From 9fdd3fff0aba6fffe8786e0a2c104b3cab1ef7a9 Mon Sep 17 00:00:00 2001 From: Alfred F Leung Date: Thu, 6 Jul 2023 12:59:33 -0700 Subject: [PATCH] IOS-XR 7.9.2 models --- .../792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang | 130 + .../8000/Cisco-IOS-XR-fpd-infra-cfg.yang.html | 179 + .../8000/Cisco-IOS-XR-invmgr-oper-sub1.yang | 705 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang.html | 962 + .../8000/Cisco-IOS-XR-invmgr-oper-sub2.yang | 347 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang.html | 735 + .../8000/Cisco-IOS-XR-invmgr-oper-sub3.yang | 541 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang.html | 1085 + .../xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang | 586 + .../8000/Cisco-IOS-XR-invmgr-oper.yang.html | 826 + ...-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang | 440 + ...XR-plat-chas-invmgr-ng-oper-sub1.yang.html | 1027 + ...Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang | 135 + ...-IOS-XR-plat-chas-invmgr-ng-oper.yang.html | 817 + vendor/cisco/xr/792/Available-Content.md | 1994 + .../xr/792/BIC/Cisco-IOS-XR-cnbng-nal-oper.MD | 34 + .../xr/792/BIC/Cisco-IOS-XR-invmgr-oper.MD | 32 + .../792/BIC/Cisco-IOS-XR-iosxrwbd-qos-oper.MD | 32 + .../xr/792/BIC/Cisco-IOS-XR-l2vpn-oper.MD | 33 + .../792/BIC/Cisco-IOS-XR-ncs5500-qos-oper.MD | 32 + .../BIC/Cisco-IOS-XR-pmengine-clear-act.MD | 33 + .../xr/792/CISCO-ENTITY-FRU-CONTROL-MIB.yang | 555 + .../Cisco-IOS-XR-8000-fib-platform-cfg.yang | 62 + .../792/Cisco-IOS-XR-8000-lpts-oper-sub1.yang | 280 + .../xr/792/Cisco-IOS-XR-8000-lpts-oper.yang | 124 + ...000-platforms-npu-resources-oper-sub1.yang | 262 + ...-XR-8000-platforms-npu-resources-oper.yang | 252 + .../792/Cisco-IOS-XR-8000-qos-oper-sub1.yang | 176 + .../792/Cisco-IOS-XR-8000-qos-oper-sub2.yang | 859 + .../xr/792/Cisco-IOS-XR-8000-qos-oper.yang | 208 + .../792/Cisco-IOS-XR-Ethernet-SPAN-act.yang | 103 + .../792/Cisco-IOS-XR-Ethernet-SPAN-cfg.yang | 1095 + .../Cisco-IOS-XR-Ethernet-SPAN-datatypes.yang | 185 + .../Cisco-IOS-XR-Ethernet-SPAN-oper-sub1.yang | 1094 + .../Cisco-IOS-XR-Ethernet-SPAN-oper-sub2.yang | 250 + .../Cisco-IOS-XR-Ethernet-SPAN-oper-sub3.yang | 563 + .../792/Cisco-IOS-XR-Ethernet-SPAN-oper.yang | 254 + ...o-IOS-XR-Ethernet-SPAN-subscriber-cfg.yang | 344 + ...S-BDplatforms-npu-resources-oper-sub1.yang | 273 + ...XR-NCS-BDplatforms-npu-resources-oper.yang | 208 + .../xr/792/Cisco-IOS-XR-Ots-Och-cfg.yang | 77 + ...S-XR-Subscriber-infra-subdb-oper-sub1.yang | 344 + ...S-XR-Subscriber-infra-subdb-oper-sub2.yang | 344 + ...co-IOS-XR-Subscriber-infra-subdb-oper.yang | 205 + .../xr/792/Cisco-IOS-XR-aaa-aaacore-cfg.yang | 707 + ...isco-IOS-XR-aaa-diameter-base-mib-cfg.yang | 84 + .../xr/792/Cisco-IOS-XR-aaa-diameter-cfg.yang | 641 + .../Cisco-IOS-XR-aaa-diameter-oper-sub1.yang | 1644 + .../792/Cisco-IOS-XR-aaa-diameter-oper.yang | 194 + .../xr/792/Cisco-IOS-XR-aaa-ldapd-cfg.yang | 216 + .../792/Cisco-IOS-XR-aaa-ldapd-oper-sub1.yang | 174 + .../xr/792/Cisco-IOS-XR-aaa-ldapd-oper.yang | 44 + .../cisco/xr/792/Cisco-IOS-XR-aaa-li-cfg.yang | 55 + .../xr/792/Cisco-IOS-XR-aaa-lib-cfg.yang | 352 + .../792/Cisco-IOS-XR-aaa-lib-datatypes.yang | 339 + .../xr/792/Cisco-IOS-XR-aaa-locald-cfg.yang | 823 + .../Cisco-IOS-XR-aaa-locald-oper-sub1.yang | 409 + .../xr/792/Cisco-IOS-XR-aaa-locald-oper.yang | 141 + .../xr/792/Cisco-IOS-XR-aaa-nacm-cfg.yang | 325 + .../792/Cisco-IOS-XR-aaa-nacm-oper-sub1.yang | 254 + .../xr/792/Cisco-IOS-XR-aaa-nacm-oper.yang | 141 + .../Cisco-IOS-XR-aaa-protocol-radius-cfg.yang | 1224 + ...-IOS-XR-aaa-protocol-radius-oper-sub1.yang | 563 + ...-IOS-XR-aaa-protocol-radius-oper-sub2.yang | 704 + ...Cisco-IOS-XR-aaa-protocol-radius-oper.yang | 271 + .../xr/792/Cisco-IOS-XR-aaa-tacacs-cfg.yang | 482 + .../Cisco-IOS-XR-aaa-tacacs-oper-sub1.yang | 529 + .../xr/792/Cisco-IOS-XR-aaa-tacacs-oper.yang | 119 + .../xr/792/Cisco-IOS-XR-accounting-cfg.yang | 97 + .../xr/792/Cisco-IOS-XR-adt-config-cfg.yang | 84 + .../xr/792/Cisco-IOS-XR-adt-oper-sub1.yang | 360 + .../xr/792/Cisco-IOS-XR-adt-oper-sub2.yang | 368 + .../cisco/xr/792/Cisco-IOS-XR-adt-oper.yang | 73 + ...IOS-XR-alarmgr-server-oper-deviations.yang | 40 + ...Cisco-IOS-XR-alarmgr-server-oper-sub1.yang | 1379 + .../792/Cisco-IOS-XR-alarmgr-server-oper.yang | 363 + .../cisco/xr/792/Cisco-IOS-XR-appmgr-act.yang | 244 + .../cisco/xr/792/Cisco-IOS-XR-appmgr-cfg.yang | 227 + .../xr/792/Cisco-IOS-XR-appmgr-oper-sub1.yang | 589 + .../xr/792/Cisco-IOS-XR-appmgr-oper.yang | 144 + .../Cisco-IOS-XR-ascii-ltrace-oper-sub1.yang | 57 + .../792/Cisco-IOS-XR-ascii-ltrace-oper.yang | 90 + .../Cisco-IOS-XR-asic-error-oper-sub1.yang | 156 + .../Cisco-IOS-XR-asic-error-oper-sub2.yang | 1141 + .../xr/792/Cisco-IOS-XR-asic-error-oper.yang | 176 + .../Cisco-IOS-XR-asic-errors-oper-sub1.yang | 195 + .../Cisco-IOS-XR-asic-errors-oper-sub2.yang | 160 + .../xr/792/Cisco-IOS-XR-asic-errors-oper.yang | 390 + .../Cisco-IOS-XR-asr9k-apm-src-flexr-cfg.yang | 112 + .../Cisco-IOS-XR-asr9k-ep-port-mode-cfg.yang | 123 + .../xr/792/Cisco-IOS-XR-asr9k-fab-cfg.yang | 77 + ...sco-IOS-XR-asr9k-fab-health-oper-sub1.yang | 363 + .../Cisco-IOS-XR-asr9k-fab-health-oper.yang | 72 + .../Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1.yang | 1143 + .../Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2.yang | 778 + .../Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3.yang | 60 + .../792/Cisco-IOS-XR-asr9k-fc-xbar-oper.yang | 124 + .../xr/792/Cisco-IOS-XR-asr9k-fia-cfg.yang | 124 + .../792/Cisco-IOS-XR-asr9k-fsi-oper-sub1.yang | 97 + .../xr/792/Cisco-IOS-XR-asr9k-fsi-oper.yang | 117 + ...sco-IOS-XR-asr9k-lc-breakout-port-cfg.yang | 153 + .../Cisco-IOS-XR-asr9k-lc-configmode-cfg.yang | 92 + ...-IOS-XR-asr9k-lc-ep-breakout-port-cfg.yang | 181 + .../Cisco-IOS-XR-asr9k-lc-ethctrl-cfg.yang | 128 + ...sco-IOS-XR-asr9k-lc-ethctrl-oper-sub1.yang | 445 + .../Cisco-IOS-XR-asr9k-lc-ethctrl-oper.yang | 133 + .../Cisco-IOS-XR-asr9k-lc-fca-oper-sub1.yang | 220 + .../Cisco-IOS-XR-asr9k-lc-fca-oper-sub2.yang | 95 + .../792/Cisco-IOS-XR-asr9k-lc-fca-oper.yang | 138 + .../Cisco-IOS-XR-asr9k-lc-pwrglide-cfg.yang | 75 + .../Cisco-IOS-XR-asr9k-lpts-oper-sub1.yang | 211 + .../xr/792/Cisco-IOS-XR-asr9k-lpts-oper.yang | 160 + .../Cisco-IOS-XR-asr9k-netflow-oper-sub1.yang | 307 + .../Cisco-IOS-XR-asr9k-netflow-oper-sub2.yang | 143 + .../792/Cisco-IOS-XR-asr9k-netflow-oper.yang | 117 + .../xr/792/Cisco-IOS-XR-asr9k-np-act.yang | 57 + .../792/Cisco-IOS-XR-asr9k-np-oper-sub1.yang | 884 + .../xr/792/Cisco-IOS-XR-asr9k-np-oper.yang | 795 + .../xr/792/Cisco-IOS-XR-asr9k-prm-cfg.yang | 878 + .../xr/792/Cisco-IOS-XR-asr9k-ptp-pd-cfg.yang | 68 + .../Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1.yang | 206 + .../792/Cisco-IOS-XR-asr9k-ptp-pd-oper.yang | 66 + .../792/Cisco-IOS-XR-asr9k-qos-oper-sub1.yang | 996 + .../792/Cisco-IOS-XR-asr9k-qos-oper-sub2.yang | 1409 + .../xr/792/Cisco-IOS-XR-asr9k-qos-oper.yang | 380 + .../xr/792/Cisco-IOS-XR-asr9k-xbar-cfg.yang | 59 + .../Cisco-IOS-XR-asr9k-xbar-oper-sub1.yang | 1147 + .../Cisco-IOS-XR-asr9k-xbar-oper-sub2.yang | 278 + .../Cisco-IOS-XR-asr9k-xbar-oper-sub3.yang | 782 + .../Cisco-IOS-XR-asr9k-xbar-oper-sub4.yang | 64 + .../xr/792/Cisco-IOS-XR-asr9k-xbar-oper.yang | 160 + .../Cisco-IOS-XR-attestation-agent-cfg.yang | 73 + ...OS-XR-attestation-agent-ima-oper-sub1.yang | 304 + ...sco-IOS-XR-attestation-agent-ima-oper.yang | 97 + ...co-IOS-XR-attestation-agent-oper-sub1.yang | 107 + .../Cisco-IOS-XR-attestation-agent-oper.yang | 123 + ...sco-IOS-XR-authenticated-variable-act.yang | 436 + .../xr/792/Cisco-IOS-XR-bundlemgr-cfg.yang | 941 + .../792/Cisco-IOS-XR-bundlemgr-oper-sub1.yang | 322 + .../792/Cisco-IOS-XR-bundlemgr-oper-sub2.yang | 3996 ++ .../xr/792/Cisco-IOS-XR-bundlemgr-oper.yang | 1201 + .../xr/792/Cisco-IOS-XR-call-home-cfg.yang | 730 + vendor/cisco/xr/792/Cisco-IOS-XR-cdp-cfg.yang | 104 + .../xr/792/Cisco-IOS-XR-cdp-oper-sub1.yang | 350 + .../cisco/xr/792/Cisco-IOS-XR-cdp-oper.yang | 157 + .../xr/792/Cisco-IOS-XR-cem-class-cfg.yang | 137 + .../cisco/xr/792/Cisco-IOS-XR-cemmib-cfg.yang | 59 + .../Cisco-IOS-XR-cfgmgr-cfs-check-act.yang | 49 + ...IOS-XR-cfgmgr-clear-inconsistency-act.yang | 49 + .../792/Cisco-IOS-XR-cfgmgr-rollback-act.yang | 132 + .../xr/792/Cisco-IOS-XR-ciscoapsmib-cfg.yang | 63 + .../792/Cisco-IOS-XR-ciscosonetmib-cfg.yang | 63 + .../792/Cisco-IOS-XR-clear-counters-act.yang | 54 + vendor/cisco/xr/792/Cisco-IOS-XR-cli-cfg.yang | 48 + .../xr/792/Cisco-IOS-XR-cli-diff-act.yang | 50 + .../xr/792/Cisco-IOS-XR-clns-isis-cfg.yang | 5374 +++ .../792/Cisco-IOS-XR-clns-isis-datatypes.yang | 200 + .../792/Cisco-IOS-XR-clns-isis-oper-sub1.yang | 10983 +++++ .../792/Cisco-IOS-XR-clns-isis-oper-sub2.yang | 298 + .../xr/792/Cisco-IOS-XR-clns-isis-oper.yang | 1372 + .../792/Cisco-IOS-XR-cmproxy-oper-sub1.yang | 102 + .../xr/792/Cisco-IOS-XR-cmproxy-oper.yang | 91 + .../xr/792/Cisco-IOS-XR-cnbng-nal-act.yang | 230 + ...OS-XR-cnbng-nal-aipc-client-oper-sub1.yang | 226 + ...sco-IOS-XR-cnbng-nal-aipc-client-oper.yang | 92 + .../792/Cisco-IOS-XR-cnbng-nal-oper-sub1.yang | 4408 ++ .../792/Cisco-IOS-XR-cnbng-nal-oper-sub2.yang | 401 + .../xr/792/Cisco-IOS-XR-cnbng-nal-oper.yang | 571 + .../Cisco-IOS-XR-coherent-node-oper-sub1.yang | 759 + .../792/Cisco-IOS-XR-coherent-node-oper.yang | 78 + .../Cisco-IOS-XR-coherent-portmode-cfg.yang | 157 + ...co-IOS-XR-coherent-portmode-oper-sub1.yang | 97 + .../Cisco-IOS-XR-coherent-portmode-oper.yang | 73 + .../Cisco-IOS-XR-common-acl-datatypes.yang | 67 + .../792/Cisco-IOS-XR-config-autosave-cfg.yang | 186 + .../792/Cisco-IOS-XR-config-cfgmgr-cfg.yang | 57 + ...-XR-config-cfgmgr-exec-augmented-oper.yang | 50 + ...o-IOS-XR-config-cfgmgr-exec-oper-sub1.yang | 417 + .../Cisco-IOS-XR-config-cfgmgr-exec-oper.yang | 135 + .../792/Cisco-IOS-XR-config-cfgmgr-oper.yang | 56 + .../xr/792/Cisco-IOS-XR-config-mda-cfg.yang | 75 + .../xr/792/Cisco-IOS-XR-config-mibs-cfg.yang | 63 + .../Cisco-IOS-XR-config-valid-ccv-cfg.yang | 193 + ...sco-IOS-XR-config-valid-ccv-oper-sub1.yang | 125 + ...sco-IOS-XR-config-valid-ccv-oper-sub2.yang | 93 + .../Cisco-IOS-XR-config-valid-ccv-oper.yang | 168 + .../792/Cisco-IOS-XR-controller-ains-act.yang | 68 + .../792/Cisco-IOS-XR-controller-cpri-cfg.yang | 139 + ...isco-IOS-XR-controller-cpri-oper-sub1.yang | 1015 + .../Cisco-IOS-XR-controller-cpri-oper.yang | 122 + .../792/Cisco-IOS-XR-controller-dfb-cfg.yang | 147 + ...Cisco-IOS-XR-controller-dfb-oper-sub1.yang | 218 + .../792/Cisco-IOS-XR-controller-dfb-oper.yang | 76 + .../792/Cisco-IOS-XR-controller-fc-cfg.yang | 361 + .../Cisco-IOS-XR-controller-fc-oper-sub1.yang | 673 + .../792/Cisco-IOS-XR-controller-fc-oper.yang | 94 + ...-controller-ncs1001-ots-och-oper-sub1.yang | 321 + ...OS-XR-controller-ncs1001-ots-och-oper.yang | 77 + ...S-XR-controller-ncs1001-ots-oper-sub1.yang | 650 + ...co-IOS-XR-controller-ncs1001-ots-oper.yang | 85 + .../792/Cisco-IOS-XR-controller-och-cfg.yang | 147 + ...Cisco-IOS-XR-controller-och-oper-sub1.yang | 301 + .../792/Cisco-IOS-XR-controller-och-oper.yang | 84 + ...Cisco-IOS-XR-controller-odg-oper-sub1.yang | 786 + ...Cisco-IOS-XR-controller-odg-oper-sub2.yang | 874 + .../792/Cisco-IOS-XR-controller-odg-oper.yang | 80 + .../792/Cisco-IOS-XR-controller-odu-cfg.yang | 1166 + ...-IOS-XR-controller-odu-clear-prbs-act.yang | 54 + ...Cisco-IOS-XR-controller-odu-datatypes.yang | 642 + ...Cisco-IOS-XR-controller-odu-oper-sub1.yang | 2722 ++ .../792/Cisco-IOS-XR-controller-odu-oper.yang | 124 + .../792/Cisco-IOS-XR-controller-oms-cfg.yang | 147 + ...Cisco-IOS-XR-controller-oms-oper-sub1.yang | 301 + .../792/Cisco-IOS-XR-controller-oms-oper.yang | 84 + .../Cisco-IOS-XR-controller-optics-cfg.yang | 960 + ...co-IOS-XR-controller-optics-oper-sub1.yang | 4697 ++ .../Cisco-IOS-XR-controller-optics-oper.yang | 234 + .../792/Cisco-IOS-XR-controller-osc-cfg.yang | 143 + ...Cisco-IOS-XR-controller-osc-oper-sub1.yang | 229 + .../792/Cisco-IOS-XR-controller-osc-oper.yang | 76 + .../792/Cisco-IOS-XR-controller-ots-cfg.yang | 634 + ...o-IOS-XR-controller-ots-och-oper-sub1.yang | 1251 + .../Cisco-IOS-XR-controller-ots-och-oper.yang | 84 + ...Cisco-IOS-XR-controller-ots-oper-sub1.yang | 1485 + .../792/Cisco-IOS-XR-controller-ots-oper.yang | 194 + .../Cisco-IOS-XR-controller-ots-otdr-act.yang | 71 + ...OS-XR-controller-ots-tone-pattern-act.yang | 69 + ...ontroller-ots-tone-pattern-detect-act.yang | 59 + .../792/Cisco-IOS-XR-controller-otu-cfg.yang | 906 + ...Cisco-IOS-XR-controller-otu-oper-sub1.yang | 1456 + .../792/Cisco-IOS-XR-controller-otu-oper.yang | 104 + .../Cisco-IOS-XR-controller-sonet-cfg.yang | 941 + ...sco-IOS-XR-controller-sonet-oper-sub1.yang | 852 + ...sco-IOS-XR-controller-sonet-oper-sub2.yang | 552 + .../Cisco-IOS-XR-controller-sonet-oper.yang | 158 + .../792/Cisco-IOS-XR-controller-t1e1-cfg.yang | 234 + ...isco-IOS-XR-controller-t1e1-oper-sub1.yang | 548 + .../Cisco-IOS-XR-controller-t1e1-oper.yang | 76 + .../cisco/xr/792/Cisco-IOS-XR-crypto-act.yang | 508 + .../xr/792/Cisco-IOS-XR-crypto-cepki-cfg.yang | 755 + ...sco-IOS-XR-crypto-cepki-new-oper-sub1.yang | 178 + .../Cisco-IOS-XR-crypto-cepki-new-oper.yang | 145 + .../792/Cisco-IOS-XR-crypto-cepki-oper.yang | 289 + .../Cisco-IOS-XR-crypto-macsec-mka-cfg.yang | 330 + ...Cisco-IOS-XR-crypto-macsec-mka-if-cfg.yang | 134 + ...co-IOS-XR-crypto-macsec-mka-oper-sub1.yang | 1299 + .../Cisco-IOS-XR-crypto-macsec-mka-oper.yang | 153 + ...sco-IOS-XR-crypto-macsec-pl-oper-sub1.yang | 5303 +++ .../Cisco-IOS-XR-crypto-macsec-pl-oper.yang | 136 + ...o-IOS-XR-crypto-macsec-secy-oper-sub1.yang | 293 + .../Cisco-IOS-XR-crypto-macsec-secy-oper.yang | 85 + ...o-IOS-XR-crypto-mibs-ipsecflowmon-cfg.yang | 85 + .../xr/792/Cisco-IOS-XR-crypto-sam-cfg.yang | 92 + .../Cisco-IOS-XR-crypto-sam-oper-sub1.yang | 382 + .../xr/792/Cisco-IOS-XR-crypto-sam-oper.yang | 161 + .../xr/792/Cisco-IOS-XR-crypto-ssh-cfg.yang | 793 + .../Cisco-IOS-XR-crypto-ssh-oper-sub1.yang | 253 + .../Cisco-IOS-XR-crypto-ssh-oper-sub2.yang | 822 + .../xr/792/Cisco-IOS-XR-crypto-ssh-oper.yang | 150 + .../792/Cisco-IOS-XR-crypto-svault-cfg.yang | 216 + .../Cisco-IOS-XR-crypto-svault-oper-sub1.yang | 73 + .../792/Cisco-IOS-XR-crypto-svault-oper.yang | 73 + .../xr/792/Cisco-IOS-XR-csd-oper-sub1.yang | 283 + .../cisco/xr/792/Cisco-IOS-XR-csd-oper.yang | 95 + ...co-IOS-XR-custom-showtech-profile-cfg.yang | 89 + .../792/Cisco-IOS-XR-daisychain-mgmt-cfg.yang | 59 + ...-XR-dnx-driver-fabric-plane-oper-sub1.yang | 234 + ...o-IOS-XR-dnx-driver-fabric-plane-oper.yang | 69 + .../Cisco-IOS-XR-dnx-driver-oper-sub1.yang | 5688 +++ .../xr/792/Cisco-IOS-XR-dnx-driver-oper.yang | 448 + .../Cisco-IOS-XR-dnx-netflow-oper-sub1.yang | 303 + .../Cisco-IOS-XR-dnx-netflow-oper-sub2.yang | 134 + .../xr/792/Cisco-IOS-XR-dnx-netflow-oper.yang | 113 + ...isco-IOS-XR-dnx-port-mapper-oper-sub1.yang | 98 + .../Cisco-IOS-XR-dnx-port-mapper-oper.yang | 90 + .../cisco/xr/792/Cisco-IOS-XR-dot1x-cfg.yang | 292 + .../xr/792/Cisco-IOS-XR-dot1x-if-cfg.yang | 69 + .../xr/792/Cisco-IOS-XR-dot1x-oper-sub1.yang | 892 + .../cisco/xr/792/Cisco-IOS-XR-dot1x-oper.yang | 145 + ...isco-IOS-XR-dpa-port-mapper-oper-sub1.yang | 98 + .../Cisco-IOS-XR-dpa-port-mapper-oper.yang | 92 + ...isco-IOS-XR-drivers-icpe-ethernet-cfg.yang | 323 + .../Cisco-IOS-XR-drivers-media-eth-act.yang | 58 + .../Cisco-IOS-XR-drivers-media-eth-cfg.yang | 430 + ...OS-XR-drivers-media-eth-gl-pfc-wd-cfg.yang | 103 + ...co-IOS-XR-drivers-media-eth-oper-sub1.yang | 5132 ++ .../Cisco-IOS-XR-drivers-media-eth-oper.yang | 173 + .../Cisco-IOS-XR-drivers-mpa-infra-cfg.yang | 80 + .../xr/792/Cisco-IOS-XR-dwdm-ui-cfg.yang | 1038 + .../792/Cisco-IOS-XR-dwdm-ui-oper-sub1.yang | 1781 + .../xr/792/Cisco-IOS-XR-dwdm-ui-oper.yang | 132 + .../xr/792/Cisco-IOS-XR-eapol-if-cfg.yang | 80 + .../cisco/xr/792/Cisco-IOS-XR-eigrp-cfg.yang | 1461 + .../xr/792/Cisco-IOS-XR-eigrp-datatypes.yang | 58 + .../xr/792/Cisco-IOS-XR-eigrp-oper-sub1.yang | 2259 + .../cisco/xr/792/Cisco-IOS-XR-eigrp-oper.yang | 239 + .../xr/792/Cisco-IOS-XR-emon-oper-sub1.yang | 136 + .../cisco/xr/792/Cisco-IOS-XR-emon-oper.yang | 84 + .../xr/792/Cisco-IOS-XR-envmon-alt-cfg.yang | 57 + .../cisco/xr/792/Cisco-IOS-XR-envmon-cfg.yang | 168 + .../xr/792/Cisco-IOS-XR-envmon-oper-sub1.yang | 299 + .../xr/792/Cisco-IOS-XR-envmon-oper-sub2.yang | 124 + .../xr/792/Cisco-IOS-XR-envmon-oper.yang | 189 + vendor/cisco/xr/792/Cisco-IOS-XR-erp-cfg.yang | 98 + .../xr/792/Cisco-IOS-XR-erp-oper-sub1.yang | 639 + .../cisco/xr/792/Cisco-IOS-XR-erp-oper.yang | 160 + .../cisco/xr/792/Cisco-IOS-XR-es-ace-cfg.yang | 236 + .../cisco/xr/792/Cisco-IOS-XR-es-acl-cfg.yang | 119 + .../xr/792/Cisco-IOS-XR-es-acl-datatypes.yang | 114 + .../xr/792/Cisco-IOS-XR-es-acl-oper-sub1.yang | 247 + .../xr/792/Cisco-IOS-XR-es-acl-oper.yang | 167 + .../xr/792/Cisco-IOS-XR-ethernet-cfm-act.yang | 1536 + .../xr/792/Cisco-IOS-XR-ethernet-cfm-cfg.yang | 1173 + .../Cisco-IOS-XR-ethernet-cfm-datatypes.yang | 200 + .../Cisco-IOS-XR-ethernet-cfm-oper-sub1.yang | 1228 + .../Cisco-IOS-XR-ethernet-cfm-oper-sub2.yang | 3207 ++ .../Cisco-IOS-XR-ethernet-cfm-oper-sub3.yang | 1169 + .../Cisco-IOS-XR-ethernet-cfm-oper-sub4.yang | 111 + .../792/Cisco-IOS-XR-ethernet-cfm-oper.yang | 850 + .../Cisco-IOS-XR-ethernet-cfm-sat-cfg.yang | 80 + .../Cisco-IOS-XR-ethernet-link-oam-cfg.yang | 835 + ...co-IOS-XR-ethernet-link-oam-oper-sub1.yang | 1509 + .../Cisco-IOS-XR-ethernet-link-oam-oper.yang | 178 + .../792/Cisco-IOS-XR-ethernet-lldp-cfg.yang | 326 + .../Cisco-IOS-XR-ethernet-lldp-oper-sub1.yang | 613 + .../Cisco-IOS-XR-ethernet-lldp-oper-sub2.yang | 108 + .../792/Cisco-IOS-XR-ethernet-lldp-oper.yang | 195 + .../Cisco-IOS-XR-ethernet-loopback-act.yang | 394 + .../Cisco-IOS-XR-ethernet-loopback-cfg.yang | 108 + ...co-IOS-XR-ethernet-loopback-oper-sub1.yang | 500 + .../Cisco-IOS-XR-ethernet-loopback-oper.yang | 107 + .../xr/792/Cisco-IOS-XR-ethernet-sat-act.yang | 170 + .../xr/792/Cisco-IOS-XR-ethernet-sat-cfg.yang | 391 + .../Cisco-IOS-XR-ethernet-sat-datatypes.yang | 178 + .../Cisco-IOS-XR-ethernet-sat-oper-sub1.yang | 670 + .../792/Cisco-IOS-XR-ethernet-sat-oper.yang | 84 + .../Cisco-IOS-XR-ethernet-udld-oper-sub1.yang | 527 + .../792/Cisco-IOS-XR-ethernet-udld-oper.yang | 98 + ...XR-event-manager-policy-map-oper-sub1.yang | 402 + ...-IOS-XR-event-manager-policy-map-oper.yang | 139 + .../xr/792/Cisco-IOS-XR-evpn-oper-sub1.yang | 3317 ++ .../cisco/xr/792/Cisco-IOS-XR-evpn-oper.yang | 963 + .../xr/792/Cisco-IOS-XR-fabhfr-mib-cfg.yang | 79 + ...S-XR-fabric-fgid-stats-8000-oper-sub1.yang | 264 + ...co-IOS-XR-fabric-fgid-stats-8000-oper.yang | 128 + ...o-IOS-XR-fabric-fsdb-server-oper-sub1.yang | 258 + .../Cisco-IOS-XR-fabric-fsdb-server-oper.yang | 171 + ...-IOS-XR-fabric-plane-health-oper-sub1.yang | 642 + ...Cisco-IOS-XR-fabric-plane-health-oper.yang | 87 + .../Cisco-IOS-XR-feature-agent-oper-sub1.yang | 288 + .../792/Cisco-IOS-XR-feature-agent-oper.yang | 76 + .../xr/792/Cisco-IOS-XR-fgid-mgr-cfg.yang | 60 + .../792/Cisco-IOS-XR-fia-hw-profile-cfg.yang | 1861 + ...co-IOS-XR-fia-internal-tcam-oper-sub1.yang | 150 + .../Cisco-IOS-XR-fia-internal-tcam-oper.yang | 126 + .../xr/792/Cisco-IOS-XR-fib-common-cfg.yang | 211 + .../Cisco-IOS-XR-fib-common-oper-sub1.yang | 519 + .../Cisco-IOS-XR-fib-common-oper-sub2.yang | 858 + .../Cisco-IOS-XR-fib-common-oper-sub3.yang | 292 + .../Cisco-IOS-XR-fib-common-oper-sub4.yang | 6802 +++ .../Cisco-IOS-XR-fib-common-oper-sub5.yang | 772 + .../Cisco-IOS-XR-fib-common-oper-sub6.yang | 362 + .../Cisco-IOS-XR-fib-common-oper-sub7.yang | 271 + .../xr/792/Cisco-IOS-XR-fib-common-oper.yang | 3601 ++ .../792/Cisco-IOS-XR-fibrechannelmib-cfg.yang | 64 + .../xr/792/Cisco-IOS-XR-filesysinv-cfg.yang | 121 + ...OS-XR-filesysinv-show-oper-deviations.yang | 36 + ...isco-IOS-XR-filesysinv-show-oper-sub1.yang | 387 + .../Cisco-IOS-XR-filesysinv-show-oper.yang | 200 + .../xr/792/Cisco-IOS-XR-flashmib-cfg.yang | 70 + .../xr/792/Cisco-IOS-XR-flow-oper-sub1.yang | 488 + .../xr/792/Cisco-IOS-XR-flow-oper-sub2.yang | 399 + .../cisco/xr/792/Cisco-IOS-XR-flow-oper.yang | 145 + .../xr/792/Cisco-IOS-XR-flowspec-cfg.yang | 258 + .../792/Cisco-IOS-XR-flowspec-oper-sub1.yang | 400 + .../xr/792/Cisco-IOS-XR-flowspec-oper.yang | 179 + .../xr/792/Cisco-IOS-XR-fpd-infra-cfg.yang | 113 + .../cisco/xr/792/Cisco-IOS-XR-fpmgr-cfg.yang | 243 + .../xr/792/Cisco-IOS-XR-fpmgr-oper-sub1.yang | 253 + .../cisco/xr/792/Cisco-IOS-XR-fpmgr-oper.yang | 170 + .../xr/792/Cisco-IOS-XR-freqsync-cfg.yang | 454 + .../792/Cisco-IOS-XR-freqsync-datatypes.yang | 348 + .../792/Cisco-IOS-XR-freqsync-oper-sub1.yang | 2038 + .../xr/792/Cisco-IOS-XR-freqsync-oper.yang | 427 + .../xr/792/Cisco-IOS-XR-freqsync-sat-cfg.yang | 73 + ...XR-fretta-bcm-dpa-npu-stats-oper-sub1.yang | 800 + ...XR-fretta-bcm-dpa-npu-stats-oper-sub2.yang | 147 + ...-IOS-XR-fretta-bcm-dpa-npu-stats-oper.yang | 207 + ...retta-bcm-dpa-qos-resources-oper-sub1.yang | 95 + ...-XR-fretta-bcm-dpa-qos-resources-oper.yang | 83 + .../xr/792/Cisco-IOS-XR-fsdbagg-cfg.yang | 88 + .../cisco/xr/792/Cisco-IOS-XR-gnss-cfg.yang | 255 + .../xr/792/Cisco-IOS-XR-gnss-oper-sub1.yang | 505 + .../cisco/xr/792/Cisco-IOS-XR-gnss-oper.yang | 96 + ...o-IOS-XR-grpc-service-stats-oper-sub1.yang | 346 + .../Cisco-IOS-XR-grpc-service-stats-oper.yang | 86 + .../cisco/xr/792/Cisco-IOS-XR-ha-eem-cfg.yang | 255 + .../Cisco-IOS-XR-ha-eem-policy-oper-sub1.yang | 152 + .../792/Cisco-IOS-XR-ha-eem-policy-oper.yang | 121 + .../xr/792/Cisco-IOS-XR-healthcheck-cfg.yang | 505 + .../Cisco-IOS-XR-healthcheck-oper-sub1.yang | 516 + .../Cisco-IOS-XR-healthcheck-oper-sub2.yang | 1758 + .../xr/792/Cisco-IOS-XR-healthcheck-oper.yang | 416 + ...Cisco-IOS-XR-hw-module-cfg-deviations.yang | 46 + .../xr/792/Cisco-IOS-XR-hw-module-cfg.yang | 123 + .../Cisco-IOS-XR-hwmod-mpa-reload-act.yang | 59 + .../xr/792/Cisco-IOS-XR-icpe-infra-cfg.yang | 444 + .../Cisco-IOS-XR-icpe-infra-oper-sub1.yang | 56 + .../Cisco-IOS-XR-icpe-infra-oper-sub10.yang | 332 + .../Cisco-IOS-XR-icpe-infra-oper-sub11.yang | 366 + .../Cisco-IOS-XR-icpe-infra-oper-sub12.yang | 76 + .../Cisco-IOS-XR-icpe-infra-oper-sub2.yang | 171 + .../Cisco-IOS-XR-icpe-infra-oper-sub3.yang | 80 + .../Cisco-IOS-XR-icpe-infra-oper-sub4.yang | 1040 + .../Cisco-IOS-XR-icpe-infra-oper-sub5.yang | 59 + .../Cisco-IOS-XR-icpe-infra-oper-sub6.yang | 56 + .../Cisco-IOS-XR-icpe-infra-oper-sub7.yang | 283 + .../Cisco-IOS-XR-icpe-infra-oper-sub8.yang | 101 + .../Cisco-IOS-XR-icpe-infra-oper-sub9.yang | 81 + .../xr/792/Cisco-IOS-XR-icpe-infra-oper.yang | 325 + .../Cisco-IOS-XR-icpe-sdacp-oper-sub1.yang | 323 + .../Cisco-IOS-XR-icpe-sdacp-oper-sub2.yang | 411 + .../Cisco-IOS-XR-icpe-sdacp-oper-sub3.yang | 171 + .../xr/792/Cisco-IOS-XR-icpe-sdacp-oper.yang | 126 + .../xr/792/Cisco-IOS-XR-iedge4710-cfg.yang | 219 + .../792/Cisco-IOS-XR-iedge4710-oper-sub1.yang | 103 + .../792/Cisco-IOS-XR-iedge4710-oper-sub2.yang | 2300 + .../xr/792/Cisco-IOS-XR-iedge4710-oper.yang | 912 + .../cisco/xr/792/Cisco-IOS-XR-ifmgr-cfg.yang | 336 + .../xr/792/Cisco-IOS-XR-ifmgr-oper-sub1.yang | 145 + .../xr/792/Cisco-IOS-XR-ifmgr-oper-sub2.yang | 248 + .../cisco/xr/792/Cisco-IOS-XR-ifmgr-oper.yang | 240 + .../xr/792/Cisco-IOS-XR-igmp-oper-sub1.yang | 1796 + .../cisco/xr/792/Cisco-IOS-XR-igmp-oper.yang | 464 + .../Cisco-IOS-XR-igp-topodb-oper-sub1.yang | 1883 + .../xr/792/Cisco-IOS-XR-igp-topodb-oper.yang | 256 + .../cisco/xr/792/Cisco-IOS-XR-ikev2-cfg.yang | 349 + .../xr/792/Cisco-IOS-XR-ikev2-oper-sub1.yang | 868 + .../cisco/xr/792/Cisco-IOS-XR-ikev2-oper.yang | 197 + .../Cisco-IOS-XR-infra-alarm-logger-cfg.yang | 120 + ...o-IOS-XR-infra-alarm-logger-datatypes.yang | 79 + ...o-IOS-XR-infra-alarm-logger-oper-sub1.yang | 211 + .../Cisco-IOS-XR-infra-alarm-logger-oper.yang | 76 + ...isco-IOS-XR-infra-ceredundancymib-cfg.yang | 70 + .../Cisco-IOS-XR-infra-confcopymib-cfg.yang | 59 + .../Cisco-IOS-XR-infra-correlator-cfg.yang | 560 + ...sco-IOS-XR-infra-correlator-oper-sub1.yang | 474 + .../Cisco-IOS-XR-infra-correlator-oper.yang | 209 + .../xr/792/Cisco-IOS-XR-infra-fti-cfg.yang | 183 + .../792/Cisco-IOS-XR-infra-fti-oper-sub1.yang | 382 + .../xr/792/Cisco-IOS-XR-infra-fti-oper.yang | 107 + .../xr/792/Cisco-IOS-XR-infra-infra-cfg.yang | 103 + ...co-IOS-XR-infra-infra-clock-linux-cfg.yang | 67 + .../Cisco-IOS-XR-infra-infra-locale-cfg.yang | 1955 + .../xr/792/Cisco-IOS-XR-infra-ltrace-cfg.yang | 134 + ...IOS-XR-infra-notification-log-mib-cfg.yang | 89 + .../xr/792/Cisco-IOS-XR-infra-nsr-cfg.yang | 60 + .../xr/792/Cisco-IOS-XR-infra-objmgr-cfg.yang | 1007 + .../Cisco-IOS-XR-infra-objmgr-oper-sub1.yang | 175 + .../792/Cisco-IOS-XR-infra-objmgr-oper.yang | 949 + .../xr/792/Cisco-IOS-XR-infra-placed-act.yang | 55 + .../792/Cisco-IOS-XR-infra-policymgr-cfg.yang | 2728 ++ .../Cisco-IOS-XR-infra-policymgr-oper.yang | 8598 ++++ .../xr/792/Cisco-IOS-XR-infra-rcmd-cfg.yang | 324 + .../Cisco-IOS-XR-infra-rcmd-oper-sub1.yang | 2824 ++ .../xr/792/Cisco-IOS-XR-infra-rcmd-oper.yang | 512 + .../792/Cisco-IOS-XR-infra-rmf-oper-sub1.yang | 139 + .../xr/792/Cisco-IOS-XR-infra-rmf-oper.yang | 73 + .../xr/792/Cisco-IOS-XR-infra-rsi-cfg.yang | 685 + .../792/Cisco-IOS-XR-infra-rsi-oper-sub1.yang | 80 + .../792/Cisco-IOS-XR-infra-rsi-oper-sub2.yang | 424 + .../xr/792/Cisco-IOS-XR-infra-rsi-oper.yang | 394 + ...Cisco-IOS-XR-infra-rsi-subscriber-cfg.yang | 83 + .../792/Cisco-IOS-XR-infra-rt-check-cfg.yang | 109 + .../Cisco-IOS-XR-infra-script-mgmt-act.yang | 568 + .../Cisco-IOS-XR-infra-script-mgmt-cfg.yang | 352 + ...co-IOS-XR-infra-script-mgmt-oper-sub1.yang | 413 + .../Cisco-IOS-XR-infra-script-mgmt-oper.yang | 1835 + .../xr/792/Cisco-IOS-XR-infra-serg-cfg.yang | 354 + .../Cisco-IOS-XR-infra-serg-oper-sub1.yang | 1821 + .../Cisco-IOS-XR-infra-serg-oper-sub2.yang | 189 + .../xr/792/Cisco-IOS-XR-infra-serg-oper.yang | 202 + .../xr/792/Cisco-IOS-XR-infra-sla-cfg.yang | 60 + .../792/Cisco-IOS-XR-infra-sla-datatypes.yang | 534 + .../xr/792/Cisco-IOS-XR-infra-sla-oper.yang | 57 + ...o-IOS-XR-infra-smartlicense-oper-sub1.yang | 1550 + .../Cisco-IOS-XR-infra-smartlicense-oper.yang | 55 + .../xr/792/Cisco-IOS-XR-infra-statsd-act.yang | 80 + .../xr/792/Cisco-IOS-XR-infra-statsd-cfg.yang | 100 + .../Cisco-IOS-XR-infra-statsd-oper-sub1.yang | 484 + .../792/Cisco-IOS-XR-infra-statsd-oper.yang | 190 + .../xr/792/Cisco-IOS-XR-infra-syslog-cfg.yang | 1501 + .../Cisco-IOS-XR-infra-syslog-oper-sub1.yang | 391 + .../792/Cisco-IOS-XR-infra-syslog-oper.yang | 171 + .../792/Cisco-IOS-XR-infra-systemmib-cfg.yang | 59 + .../xr/792/Cisco-IOS-XR-infra-tc-cfg.yang | 199 + .../792/Cisco-IOS-XR-infra-tc-oper-sub1.yang | 427 + .../xr/792/Cisco-IOS-XR-infra-tc-oper.yang | 226 + .../792/Cisco-IOS-XR-infra-xtc-agent-cfg.yang | 2649 ++ ...isco-IOS-XR-infra-xtc-agent-oper-sub1.yang | 4362 ++ ...isco-IOS-XR-infra-xtc-agent-oper-sub2.yang | 212 + ...isco-IOS-XR-infra-xtc-agent-oper-sub3.yang | 1049 + .../Cisco-IOS-XR-infra-xtc-agent-oper.yang | 581 + .../xr/792/Cisco-IOS-XR-infra-xtc-cfg.yang | 1973 + .../792/Cisco-IOS-XR-infra-xtc-oper-sub1.yang | 5070 ++ .../792/Cisco-IOS-XR-infra-xtc-oper-sub2.yang | 364 + .../xr/792/Cisco-IOS-XR-infra-xtc-oper.yang | 1269 + .../xr/792/Cisco-IOS-XR-install-act.yang | 395 + .../Cisco-IOS-XR-install-augmented-act.yang | 446 + ...co-IOS-XR-install-augmented-oper-sub1.yang | 3313 ++ ...co-IOS-XR-install-augmented-oper-sub2.yang | 126 + .../Cisco-IOS-XR-install-augmented-oper.yang | 688 + .../xr/792/Cisco-IOS-XR-install-cfg.yang | 112 + .../792/Cisco-IOS-XR-install-oper-sub1.yang | 896 + .../xr/792/Cisco-IOS-XR-install-oper.yang | 256 + .../792/Cisco-IOS-XR-install-profile-cfg.yang | 269 + .../792/Cisco-IOS-XR-install-search-act.yang | 321 + .../792/Cisco-IOS-XR-interface-cem-cfg.yang | 268 + .../Cisco-IOS-XR-interface-cem-oper-sub1.yang | 745 + .../Cisco-IOS-XR-interface-cem-oper-sub2.yang | 127 + .../792/Cisco-IOS-XR-interface-cem-oper.yang | 95 + .../cisco/xr/792/Cisco-IOS-XR-invmgr-cfg.yang | 62 + .../Cisco-IOS-XR-invmgr-diag-oper-sub1.yang | 53 + .../xr/792/Cisco-IOS-XR-invmgr-diag-oper.yang | 147 + .../xr/792/Cisco-IOS-XR-invmgr-oper-sub1.yang | 347 + .../xr/792/Cisco-IOS-XR-invmgr-oper-sub2.yang | 541 + .../xr/792/Cisco-IOS-XR-invmgr-oper-sub3.yang | 705 + .../xr/792/Cisco-IOS-XR-invmgr-oper-sub4.yang | 218 + .../xr/792/Cisco-IOS-XR-invmgr-oper.yang | 585 + .../Cisco-IOS-XR-invproxy-hwmodule-cfg.yang | 108 + .../Cisco-IOS-XR-iosxrwbd-qos-oper-sub1.yang | 1172 + .../Cisco-IOS-XR-iosxrwbd-qos-oper-sub2.yang | 156 + .../Cisco-IOS-XR-iosxrwbd-qos-oper-sub3.yang | 251 + .../792/Cisco-IOS-XR-iosxrwbd-qos-oper.yang | 314 + .../cisco/xr/792/Cisco-IOS-XR-ip-bfd-cfg.yang | 411 + .../xr/792/Cisco-IOS-XR-ip-bfd-oper-sub1.yang | 1461 + .../xr/792/Cisco-IOS-XR-ip-bfd-oper.yang | 1625 + .../xr/792/Cisco-IOS-XR-ip-daps-cfg.yang | 345 + .../xr/792/Cisco-IOS-XR-ip-daps-mib-cfg.yang | 64 + .../792/Cisco-IOS-XR-ip-daps-oper-sub1.yang | 553 + .../xr/792/Cisco-IOS-XR-ip-daps-oper.yang | 138 + .../xr/792/Cisco-IOS-XR-ip-domain-cfg.yang | 189 + .../792/Cisco-IOS-XR-ip-domain-oper-sub1.yang | 196 + .../xr/792/Cisco-IOS-XR-ip-domain-oper.yang | 96 + .../xr/792/Cisco-IOS-XR-ip-iarm-cfg.yang | 118 + .../792/Cisco-IOS-XR-ip-iarm-datatypes.yang | 45 + .../Cisco-IOS-XR-ip-iarm-v4-oper-sub1.yang | 255 + .../xr/792/Cisco-IOS-XR-ip-iarm-v4-oper.yang | 173 + .../Cisco-IOS-XR-ip-iarm-v6-oper-sub1.yang | 230 + .../xr/792/Cisco-IOS-XR-ip-iarm-v6-oper.yang | 168 + .../xr/792/Cisco-IOS-XR-ip-iarm-vrf-cfg.yang | 77 + .../xr/792/Cisco-IOS-XR-ip-icmp-cfg.yang | 118 + .../cisco/xr/792/Cisco-IOS-XR-ip-iep-cfg.yang | 250 + .../xr/792/Cisco-IOS-XR-ip-iep-oper-sub1.yang | 147 + .../xr/792/Cisco-IOS-XR-ip-iep-oper.yang | 91 + .../xr/792/Cisco-IOS-XR-ip-mobileip-cfg.yang | 1050 + .../Cisco-IOS-XR-ip-mobileip-oper-sub1.yang | 1528 + .../xr/792/Cisco-IOS-XR-ip-mobileip-oper.yang | 176 + .../Cisco-IOS-XR-ip-ntp-admin-oper-sub1.yang | 630 + .../792/Cisco-IOS-XR-ip-ntp-admin-oper.yang | 120 + .../cisco/xr/792/Cisco-IOS-XR-ip-ntp-cfg.yang | 858 + .../xr/792/Cisco-IOS-XR-ip-ntp-oper-sub1.yang | 631 + .../xr/792/Cisco-IOS-XR-ip-ntp-oper.yang | 94 + .../xr/792/Cisco-IOS-XR-ip-pfilter-cfg.yang | 349 + .../Cisco-IOS-XR-ip-pfilter-oper-sub1.yang | 48 + .../xr/792/Cisco-IOS-XR-ip-pfilter-oper.yang | 106 + ...isco-IOS-XR-ip-pfilter-subscriber-cfg.yang | 218 + .../cisco/xr/792/Cisco-IOS-XR-ip-raw-cfg.yang | 101 + .../cisco/xr/792/Cisco-IOS-XR-ip-rib-cfg.yang | 192 + .../Cisco-IOS-XR-ip-rib-gribi-oper-sub1.yang | 1706 + .../792/Cisco-IOS-XR-ip-rib-gribi-oper.yang | 126 + .../xr/792/Cisco-IOS-XR-ip-rib-iid-cfg.yang | 41 + .../Cisco-IOS-XR-ip-rib-ipv4-oper-sub1.yang | 4633 ++ .../xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper.yang | 1403 + .../Cisco-IOS-XR-ip-rib-ipv6-oper-sub1.yang | 4663 ++ .../Cisco-IOS-XR-ip-rib-ipv6-oper-sub2.yang | 726 + .../xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper.yang | 1498 + .../cisco/xr/792/Cisco-IOS-XR-ip-rip-cfg.yang | 798 + .../xr/792/Cisco-IOS-XR-ip-rip-oper-sub1.yang | 1238 + .../xr/792/Cisco-IOS-XR-ip-rip-oper.yang | 318 + .../xr/792/Cisco-IOS-XR-ip-rsvp-cfg.yang | 751 + .../792/Cisco-IOS-XR-ip-rsvp-oper-sub1.yang | 4758 ++ .../xr/792/Cisco-IOS-XR-ip-rsvp-oper.yang | 1490 + .../xr/792/Cisco-IOS-XR-ip-sbfd-cfg.yang | 177 + .../792/Cisco-IOS-XR-ip-sbfd-oper-sub1.yang | 209 + .../xr/792/Cisco-IOS-XR-ip-sbfd-oper.yang | 132 + .../xr/792/Cisco-IOS-XR-ip-static-cfg.yang | 542 + ...Cisco-IOS-XR-ip-static-ipv4-oper-sub1.yang | 897 + .../792/Cisco-IOS-XR-ip-static-ipv4-oper.yang | 685 + ...Cisco-IOS-XR-ip-static-ipv6-oper-sub1.yang | 1356 + .../792/Cisco-IOS-XR-ip-static-ipv6-oper.yang | 717 + .../792/Cisco-IOS-XR-ip-static-srv6-act.yang | 33 + .../cisco/xr/792/Cisco-IOS-XR-ip-tcp-cfg.yang | 417 + .../xr/792/Cisco-IOS-XR-ip-tcp-oper-sub1.yang | 1768 + .../xr/792/Cisco-IOS-XR-ip-tcp-oper-sub2.yang | 105 + .../xr/792/Cisco-IOS-XR-ip-tcp-oper-sub3.yang | 2221 + .../xr/792/Cisco-IOS-XR-ip-tcp-oper-sub4.yang | 800 + .../xr/792/Cisco-IOS-XR-ip-tcp-oper-sub5.yang | 112 + .../xr/792/Cisco-IOS-XR-ip-tcp-oper.yang | 484 + .../cisco/xr/792/Cisco-IOS-XR-ip-udp-cfg.yang | 238 + .../xr/792/Cisco-IOS-XR-ip-udp-oper-sub1.yang | 486 + .../xr/792/Cisco-IOS-XR-ip-udp-oper-sub2.yang | 998 + .../xr/792/Cisco-IOS-XR-ip-udp-oper-sub3.yang | 96 + .../xr/792/Cisco-IOS-XR-ip-udp-oper-sub4.yang | 94 + .../xr/792/Cisco-IOS-XR-ip-udp-oper.yang | 264 + .../792/Cisco-IOS-XR-ipsec-xr-oper-sub1.yang | 136 + .../xr/792/Cisco-IOS-XR-ipsec-xr-oper.yang | 80 + .../xr/792/Cisco-IOS-XR-ipv4-ace-cfg.yang | 659 + .../xr/792/Cisco-IOS-XR-ipv4-acl-cfg.yang | 270 + .../792/Cisco-IOS-XR-ipv4-acl-datatypes.yang | 1207 + .../792/Cisco-IOS-XR-ipv4-acl-oper-sub1.yang | 955 + .../xr/792/Cisco-IOS-XR-ipv4-acl-oper.yang | 262 + .../xr/792/Cisco-IOS-XR-ipv4-arp-act.yang | 192 + .../xr/792/Cisco-IOS-XR-ipv4-arp-cfg.yang | 507 + .../792/Cisco-IOS-XR-ipv4-arp-oper-sub1.yang | 1544 + .../792/Cisco-IOS-XR-ipv4-arp-oper-sub2.yang | 119 + .../792/Cisco-IOS-XR-ipv4-arp-oper-sub3.yang | 255 + .../xr/792/Cisco-IOS-XR-ipv4-arp-oper.yang | 423 + .../Cisco-IOS-XR-ipv4-autorp-datatypes.yang | 54 + .../Cisco-IOS-XR-ipv4-autorp-oper-sub1.yang | 200 + .../Cisco-IOS-XR-ipv4-autorp-oper-sub2.yang | 139 + .../xr/792/Cisco-IOS-XR-ipv4-autorp-oper.yang | 152 + .../xr/792/Cisco-IOS-XR-ipv4-bgp-act.yang | 15245 ++++++ ...o-IOS-XR-ipv4-bgp-cfg-8000-deviations.yang | 55 + ...IOS-XR-ipv4-bgp-cfg-ncs540-deviations.yang | 55 + ...OS-XR-ipv4-bgp-cfg-ncs540l-deviations.yang | 55 + ...OS-XR-ipv4-bgp-cfg-ncs5500-deviations.yang | 55 + .../xr/792/Cisco-IOS-XR-ipv4-bgp-cfg.yang | 7559 +++ .../792/Cisco-IOS-XR-ipv4-bgp-datatypes.yang | 638 + .../Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1.yang | 353 + .../xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper.yang | 195 + .../792/Cisco-IOS-XR-ipv4-bgp-oper-sub1.yang | 19594 ++++++++ .../xr/792/Cisco-IOS-XR-ipv4-bgp-oper.yang | 2165 + .../xr/792/Cisco-IOS-XR-ipv4-cinetd-cfg.yang | 62 + .../xr/792/Cisco-IOS-XR-ipv4-dc-cfg.yang | 193 + .../xr/792/Cisco-IOS-XR-ipv4-dhcpd-cfg.yang | 2785 ++ .../Cisco-IOS-XR-ipv4-dhcpd-oper-sub1.yang | 1914 + .../Cisco-IOS-XR-ipv4-dhcpd-oper-sub2.yang | 462 + .../xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper.yang | 585 + ...isco-IOS-XR-ipv4-dhcpd-subscriber-cfg.yang | 94 + .../Cisco-IOS-XR-ipv4-filesystems-cfg.yang | 213 + .../xr/792/Cisco-IOS-XR-ipv4-hsrp-cfg.yang | 911 + .../792/Cisco-IOS-XR-ipv4-hsrp-oper-sub1.yang | 1411 + .../xr/792/Cisco-IOS-XR-ipv4-hsrp-oper.yang | 249 + .../xr/792/Cisco-IOS-XR-ipv4-igmp-cfg.yang | 825 + .../Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg.yang | 181 + .../792/Cisco-IOS-XR-ipv4-igmp-oper-sub1.yang | 1805 + .../xr/792/Cisco-IOS-XR-ipv4-igmp-oper.yang | 489 + .../xr/792/Cisco-IOS-XR-ipv4-io-cfg.yang | 421 + .../792/Cisco-IOS-XR-ipv4-io-oper-sub1.yang | 497 + .../792/Cisco-IOS-XR-ipv4-io-oper-sub2.yang | 665 + .../xr/792/Cisco-IOS-XR-ipv4-io-oper.yang | 203 + .../xr/792/Cisco-IOS-XR-ipv4-ma-cfg.yang | 154 + .../792/Cisco-IOS-XR-ipv4-ma-oper-sub1.yang | 665 + .../xr/792/Cisco-IOS-XR-ipv4-ma-oper.yang | 119 + .../Cisco-IOS-XR-ipv4-ma-subscriber-cfg.yang | 119 + .../xr/792/Cisco-IOS-XR-ipv4-mfwd-cfg.yang | 385 + .../xr/792/Cisco-IOS-XR-ipv4-msdp-cfg.yang | 396 + .../xr/792/Cisco-IOS-XR-ipv4-ospf-act.yang | 307 + .../xr/792/Cisco-IOS-XR-ipv4-ospf-cfg.yang | 4481 ++ .../792/Cisco-IOS-XR-ipv4-ospf-oper-sub1.yang | 249 + .../792/Cisco-IOS-XR-ipv4-ospf-oper-sub2.yang | 7933 ++++ .../792/Cisco-IOS-XR-ipv4-ospf-oper-sub3.yang | 1615 + .../xr/792/Cisco-IOS-XR-ipv4-ospf-oper.yang | 1318 + .../xr/792/Cisco-IOS-XR-ipv4-pim-cfg.yang | 1858 + .../792/Cisco-IOS-XR-ipv4-pim-oper-sub1.yang | 4181 ++ .../792/Cisco-IOS-XR-ipv4-pim-oper-sub2.yang | 220 + .../xr/792/Cisco-IOS-XR-ipv4-pim-oper.yang | 1140 + .../xr/792/Cisco-IOS-XR-ipv4-ping-act.yang | 298 + .../xr/792/Cisco-IOS-XR-ipv4-smiap-cfg.yang | 94 + .../Cisco-IOS-XR-ipv4-smiap-oper-sub1.yang | 159 + .../xr/792/Cisco-IOS-XR-ipv4-smiap-oper.yang | 77 + .../xr/792/Cisco-IOS-XR-ipv4-telnet-cfg.yang | 70 + .../Cisco-IOS-XR-ipv4-telnet-mgmt-cfg.yang | 78 + .../792/Cisco-IOS-XR-ipv4-traceroute-act.yang | 214 + .../xr/792/Cisco-IOS-XR-ipv4-vrrp-cfg.yang | 805 + .../792/Cisco-IOS-XR-ipv4-vrrp-oper-sub1.yang | 1112 + .../xr/792/Cisco-IOS-XR-ipv4-vrrp-oper.yang | 230 + .../xr/792/Cisco-IOS-XR-ipv6-ace-cfg.yang | 676 + .../xr/792/Cisco-IOS-XR-ipv6-acl-cfg.yang | 274 + .../792/Cisco-IOS-XR-ipv6-acl-datatypes.yang | 1130 + .../792/Cisco-IOS-XR-ipv6-acl-oper-sub1.yang | 935 + .../xr/792/Cisco-IOS-XR-ipv6-acl-oper.yang | 243 + .../xr/792/Cisco-IOS-XR-ipv6-io-cfg.yang | 126 + .../792/Cisco-IOS-XR-ipv6-io-oper-sub1.yang | 536 + .../xr/792/Cisco-IOS-XR-ipv6-io-oper.yang | 106 + .../xr/792/Cisco-IOS-XR-ipv6-ma-cfg.yang | 426 + .../792/Cisco-IOS-XR-ipv6-ma-oper-sub1.yang | 614 + .../xr/792/Cisco-IOS-XR-ipv6-ma-oper.yang | 232 + .../Cisco-IOS-XR-ipv6-ma-subscriber-cfg.yang | 109 + .../xr/792/Cisco-IOS-XR-ipv6-nd-cfg.yang | 568 + .../792/Cisco-IOS-XR-ipv6-nd-oper-sub1.yang | 843 + .../xr/792/Cisco-IOS-XR-ipv6-nd-oper.yang | 206 + .../Cisco-IOS-XR-ipv6-nd-subscriber-cfg.yang | 263 + .../Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg.yang | 1132 + ...co-IOS-XR-ipv6-new-dhcpv6d-client-cfg.yang | 177 + ...-XR-ipv6-new-dhcpv6d-client-oper-sub1.yang | 570 + ...o-IOS-XR-ipv6-new-dhcpv6d-client-oper.yang | 130 + ...sco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1.yang | 2101 + .../Cisco-IOS-XR-ipv6-new-dhcpv6d-oper.yang | 546 + ...OS-XR-ipv6-new-dhcpv6d-subscriber-cfg.yang | 136 + .../xr/792/Cisco-IOS-XR-ipv6-ospfv3-act.yang | 265 + .../xr/792/Cisco-IOS-XR-ipv6-ospfv3-cfg.yang | 3235 ++ .../Cisco-IOS-XR-ipv6-ospfv3-oper-sub1.yang | 5510 +++ .../xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper.yang | 1001 + .../xr/792/Cisco-IOS-XR-ipv6-ping-act.yang | 203 + .../xr/792/Cisco-IOS-XR-ipv6-smiap-cfg.yang | 94 + .../Cisco-IOS-XR-ipv6-smiap-oper-sub1.yang | 158 + .../xr/792/Cisco-IOS-XR-ipv6-smiap-oper.yang | 76 + .../792/Cisco-IOS-XR-ipv6-traceroute-act.yang | 80 + .../cisco/xr/792/Cisco-IOS-XR-isis-act.yang | 231 + .../xr/792/Cisco-IOS-XR-issu-oper-sub1.yang | 844 + .../cisco/xr/792/Cisco-IOS-XR-issu-oper.yang | 115 + .../xr/792/Cisco-IOS-XR-key-package-act.yang | 77 + .../xr/792/Cisco-IOS-XR-keyring-cfg.yang | 162 + .../792/Cisco-IOS-XR-keyring-oper-sub1.yang | 92 + .../xr/792/Cisco-IOS-XR-keyring-oper.yang | 70 + .../xr/792/Cisco-IOS-XR-kim-tpa-cfg.yang | 493 + .../xr/792/Cisco-IOS-XR-l2-eth-infra-cfg.yang | 939 + .../Cisco-IOS-XR-l2-eth-infra-datatypes.yang | 258 + .../Cisco-IOS-XR-l2-eth-infra-oper-sub1.yang | 90 + .../Cisco-IOS-XR-l2-eth-infra-oper-sub2.yang | 830 + .../Cisco-IOS-XR-l2-eth-infra-oper-sub3.yang | 127 + .../792/Cisco-IOS-XR-l2-eth-infra-oper.yang | 204 + .../xr/792/Cisco-IOS-XR-l2-snoop-cfg.yang | 742 + .../792/Cisco-IOS-XR-l2-snoop-oper-sub1.yang | 4612 ++ .../xr/792/Cisco-IOS-XR-l2-snoop-oper.yang | 641 + .../cisco/xr/792/Cisco-IOS-XR-l2rib-cfg.yang | 157 + .../xr/792/Cisco-IOS-XR-l2rib-oper-sub1.yang | 1349 + .../cisco/xr/792/Cisco-IOS-XR-l2rib-oper.yang | 397 + .../cisco/xr/792/Cisco-IOS-XR-l2vpn-cfg.yang | 6536 +++ .../xr/792/Cisco-IOS-XR-l2vpn-oper-sub1.yang | 264 + .../xr/792/Cisco-IOS-XR-l2vpn-oper-sub2.yang | 185 + .../xr/792/Cisco-IOS-XR-l2vpn-oper-sub3.yang | 466 + .../xr/792/Cisco-IOS-XR-l2vpn-oper-sub4.yang | 9346 ++++ .../xr/792/Cisco-IOS-XR-l2vpn-oper-sub5.yang | 5700 +++ .../cisco/xr/792/Cisco-IOS-XR-l2vpn-oper.yang | 2862 ++ .../cisco/xr/792/Cisco-IOS-XR-lcmode-cfg.yang | 152 + .../xr/792/Cisco-IOS-XR-lcmode-oper-sub1.yang | 242 + .../xr/792/Cisco-IOS-XR-lcmode-oper.yang | 81 + .../xr/792/Cisco-IOS-XR-ledmgr-oper-sub1.yang | 63 + .../xr/792/Cisco-IOS-XR-ledmgr-oper.yang | 84 + vendor/cisco/xr/792/Cisco-IOS-XR-li-cfg.yang | 51 + .../xr/792/Cisco-IOS-XR-lib-keychain-act.yang | 82 + .../xr/792/Cisco-IOS-XR-lib-keychain-cfg.yang | 684 + .../Cisco-IOS-XR-lib-keychain-oper-sub1.yang | 242 + .../792/Cisco-IOS-XR-lib-keychain-oper.yang | 77 + .../xr/792/Cisco-IOS-XR-lib-mpp-cfg.yang | 295 + .../792/Cisco-IOS-XR-lib-mpp-oper-sub1.yang | 189 + .../xr/792/Cisco-IOS-XR-lib-mpp-oper.yang | 94 + .../xr/792/Cisco-IOS-XR-lib-type6-act.yang | 135 + .../xr/792/Cisco-IOS-XR-lib-type6-cfg.yang | 71 + ...sco-IOS-XR-lib-type6-server-oper-sub1.yang | 133 + .../Cisco-IOS-XR-lib-type6-server-oper.yang | 82 + ...OS-XR-linux-os-heap-summary-oper-sub1.yang | 78 + ...sco-IOS-XR-linux-os-heap-summary-oper.yang | 98 + ...-XR-linux-os-reboot-history-oper-sub1.yang | 88 + ...o-IOS-XR-linux-os-reboot-history-oper.yang | 74 + ...sco-IOS-XR-linux-security-diskenc-act.yang | 61 + ...security-factory-reset-act-deviations.yang | 43 + ...S-XR-linux-security-factory-reset-act.yang | 65 + ...S-XR-linux-security-showenc-oper-sub1.yang | 75 + ...co-IOS-XR-linux-security-showenc-oper.yang | 68 + .../xr/792/Cisco-IOS-XR-linux-xlnc-cfg.yang | 524 + .../Cisco-IOS-XR-linux-xlnc-oper-sub1.yang | 970 + .../xr/792/Cisco-IOS-XR-linux-xlnc-oper.yang | 172 + .../xr/792/Cisco-IOS-XR-lldp-clear-act.yang | 58 + vendor/cisco/xr/792/Cisco-IOS-XR-lmp-cfg.yang | 289 + .../xr/792/Cisco-IOS-XR-lmp-datatypes.yang | 81 + .../xr/792/Cisco-IOS-XR-lmp-oper-sub1.yang | 857 + .../cisco/xr/792/Cisco-IOS-XR-lmp-oper.yang | 125 + .../xr/792/Cisco-IOS-XR-lns-ea-oper-sub1.yang | 172 + .../xr/792/Cisco-IOS-XR-lns-ea-oper.yang | 97 + .../xr/792/Cisco-IOS-XR-lpts-ifib-act.yang | 57 + .../792/Cisco-IOS-XR-lpts-ifib-oper-sub1.yang | 181 + .../xr/792/Cisco-IOS-XR-lpts-ifib-oper.yang | 105 + .../xr/792/Cisco-IOS-XR-lpts-lib-cfg.yang | 46 + .../xr/792/Cisco-IOS-XR-lpts-pa-act.yang | 42 + .../792/Cisco-IOS-XR-lpts-pa-oper-sub1.yang | 251 + .../xr/792/Cisco-IOS-XR-lpts-pa-oper.yang | 93 + .../792/Cisco-IOS-XR-lpts-pre-ifib-act.yang | 75 + .../792/Cisco-IOS-XR-lpts-pre-ifib-cfg.yang | 1263 + .../Cisco-IOS-XR-lpts-pre-ifib-oper-sub1.yang | 815 + .../792/Cisco-IOS-XR-lpts-pre-ifib-oper.yang | 229 + .../Cisco-IOS-XR-lpts-punt-flowtrap-cfg.yang | 274 + .../xr/792/Cisco-IOS-XR-mab-oper-sub1.yang | 328 + .../cisco/xr/792/Cisco-IOS-XR-mab-oper.yang | 108 + .../Cisco-IOS-XR-macsec-ctrlr-oper-sub1.yang | 172 + .../792/Cisco-IOS-XR-macsec-ctrlr-oper.yang | 72 + .../xr/792/Cisco-IOS-XR-man-ems-cfg.yang | 508 + .../792/Cisco-IOS-XR-man-ems-oper-sub1.yang | 553 + .../xr/792/Cisco-IOS-XR-man-ems-oper.yang | 122 + ...sco-IOS-XR-man-http-lighttpd-yang-cfg.yang | 84 + .../xr/792/Cisco-IOS-XR-man-ipsla-cfg.yang | 2610 ++ .../792/Cisco-IOS-XR-man-ipsla-oper-sub1.yang | 142 + .../792/Cisco-IOS-XR-man-ipsla-oper-sub2.yang | 1655 + .../792/Cisco-IOS-XR-man-ipsla-oper-sub3.yang | 137 + .../xr/792/Cisco-IOS-XR-man-ipsla-oper.yang | 685 + .../xr/792/Cisco-IOS-XR-man-netconf-cfg.yang | 149 + .../Cisco-IOS-XR-man-netconf-oper-sub1.yang | 238 + .../xr/792/Cisco-IOS-XR-man-netconf-oper.yang | 126 + .../xr/792/Cisco-IOS-XR-man-restconf-cfg.yang | 74 + ...OS-XR-man-xml-ttyagent-cfg-deviations.yang | 54 + .../Cisco-IOS-XR-man-xml-ttyagent-cfg.yang | 287 + ...sco-IOS-XR-man-xml-ttyagent-oper-sub1.yang | 151 + .../Cisco-IOS-XR-man-xml-ttyagent-oper.yang | 134 + ...-XR-manageability-object-tracking-cfg.yang | 466 + ...nageability-object-tracking-datatypes.yang | 217 + ...nageability-object-tracking-oper-sub1.yang | 607 + ...XR-manageability-object-tracking-oper.yang | 133 + ...sco-IOS-XR-manageability-perfmgmt-cfg.yang | 5423 +++ ...S-XR-manageability-perfmgmt-datatypes.yang | 45 + ...S-XR-manageability-perfmgmt-oper-sub1.yang | 737 + ...co-IOS-XR-manageability-perfmgmt-oper.yang | 419 + .../xr/792/Cisco-IOS-XR-mdrv-lib-cfg.yang | 81 + ...Cisco-IOS-XR-mediasvr-linux-oper-sub1.yang | 83 + .../792/Cisco-IOS-XR-mediasvr-linux-oper.yang | 82 + .../xr/792/Cisco-IOS-XR-mfwd-oper-sub1.yang | 2311 + .../xr/792/Cisco-IOS-XR-mfwd-oper-sub2.yang | 69 + .../cisco/xr/792/Cisco-IOS-XR-mfwd-oper.yang | 469 + .../cisco/xr/792/Cisco-IOS-XR-mirror-cfg.yang | 61 + .../xr/792/Cisco-IOS-XR-mirror-oper-sub1.yang | 259 + .../xr/792/Cisco-IOS-XR-mirror-oper.yang | 100 + .../xr/792/Cisco-IOS-XR-mld-oper-sub1.yang | 1796 + .../cisco/xr/792/Cisco-IOS-XR-mld-oper.yang | 464 + .../xr/792/Cisco-IOS-XR-mpls-io-cfg.yang | 93 + .../792/Cisco-IOS-XR-mpls-io-oper-sub1.yang | 67 + .../xr/792/Cisco-IOS-XR-mpls-io-oper.yang | 123 + .../Cisco-IOS-XR-mpls-ldp-cfg-datatypes.yang | 157 + .../xr/792/Cisco-IOS-XR-mpls-ldp-cfg.yang | 2006 + .../Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1.yang | 1500 + .../792/Cisco-IOS-XR-mpls-ldp-mldp-oper.yang | 433 + .../Cisco-IOS-XR-mpls-ldp-oper-datatypes.yang | 59 + .../792/Cisco-IOS-XR-mpls-ldp-oper-sub1.yang | 3427 ++ .../792/Cisco-IOS-XR-mpls-ldp-oper-sub2.yang | 304 + .../792/Cisco-IOS-XR-mpls-ldp-oper-sub3.yang | 309 + .../xr/792/Cisco-IOS-XR-mpls-ldp-oper.yang | 864 + .../xr/792/Cisco-IOS-XR-mpls-lsd-cfg.yang | 297 + .../792/Cisco-IOS-XR-mpls-lsd-oper-sub1.yang | 4242 ++ .../xr/792/Cisco-IOS-XR-mpls-lsd-oper.yang | 587 + .../xr/792/Cisco-IOS-XR-mpls-oam-cfg.yang | 153 + .../792/Cisco-IOS-XR-mpls-oam-oper-sub1.yang | 797 + .../792/Cisco-IOS-XR-mpls-oam-oper-sub2.yang | 450 + .../xr/792/Cisco-IOS-XR-mpls-oam-oper.yang | 219 + .../792/Cisco-IOS-XR-mpls-over-udp-cfg.yang | 55 + .../xr/792/Cisco-IOS-XR-mpls-ping-act.yang | 1005 + .../xr/792/Cisco-IOS-XR-mpls-static-cfg.yang | 486 + .../Cisco-IOS-XR-mpls-static-oper-sub1.yang | 534 + .../xr/792/Cisco-IOS-XR-mpls-static-oper.yang | 120 + .../xr/792/Cisco-IOS-XR-mpls-te-act.yang | 117 + .../xr/792/Cisco-IOS-XR-mpls-te-cfg.yang | 7663 +++ .../792/Cisco-IOS-XR-mpls-te-datatypes.yang | 962 + .../792/Cisco-IOS-XR-mpls-te-oper-sub1.yang | 620 + .../792/Cisco-IOS-XR-mpls-te-oper-sub2.yang | 258 + .../792/Cisco-IOS-XR-mpls-te-oper-sub3.yang | 191 + .../792/Cisco-IOS-XR-mpls-te-oper-sub4.yang | 1191 + .../792/Cisco-IOS-XR-mpls-te-oper-sub5.yang | 17009 +++++++ .../792/Cisco-IOS-XR-mpls-te-oper-sub6.yang | 3475 ++ .../792/Cisco-IOS-XR-mpls-te-oper-sub7.yang | 143 + .../792/Cisco-IOS-XR-mpls-te-oper-sub8.yang | 886 + .../792/Cisco-IOS-XR-mpls-te-oper-sub9.yang | 110 + .../xr/792/Cisco-IOS-XR-mpls-te-oper.yang | 2775 ++ .../792/Cisco-IOS-XR-mpls-traceroute-act.yang | 850 + .../xr/792/Cisco-IOS-XR-mpls-vpn-cfg.yang | 115 + .../792/Cisco-IOS-XR-mpls-vpn-oper-sub1.yang | 199 + .../xr/792/Cisco-IOS-XR-mpls-vpn-oper.yang | 85 + .../xr/792/Cisco-IOS-XR-mrib-oper-sub1.yang | 3749 ++ .../cisco/xr/792/Cisco-IOS-XR-mrib-oper.yang | 767 + .../xr/792/Cisco-IOS-XR-msdp-oper-sub1.yang | 1340 + .../cisco/xr/792/Cisco-IOS-XR-msdp-oper.yang | 412 + .../xr/792/Cisco-IOS-XR-mvpn-oper-sub1.yang | 2864 ++ .../cisco/xr/792/Cisco-IOS-XR-mvpn-oper.yang | 1027 + .../Cisco-IOS-XR-ncs-grid-svr-oper-sub1.yang | 58 + .../792/Cisco-IOS-XR-ncs-grid-svr-oper.yang | 97 + .../xr/792/Cisco-IOS-XR-ncs1001-esd-cfg.yang | 135 + ...OS-XR-ncs1001-hw-module-eth-oper-sub1.yang | 373 + ...sco-IOS-XR-ncs1001-hw-module-eth-oper.yang | 140 + .../Cisco-IOS-XR-ncs1001-otdr-oper-sub1.yang | 420 + .../792/Cisco-IOS-XR-ncs1001-otdr-oper.yang | 175 + .../xr/792/Cisco-IOS-XR-ncs1001-ots-act.yang | 201 + .../xr/792/Cisco-IOS-XR-ncs1001-ots-cfg.yang | 725 + .../Cisco-IOS-XR-ncs1001-ots-oper-sub1.yang | 604 + .../xr/792/Cisco-IOS-XR-ncs1001-ots-oper.yang | 171 + ...isco-IOS-XR-ncs1001-passive-oper-sub1.yang | 98 + .../Cisco-IOS-XR-ncs1001-passive-oper.yang | 105 + ...isco-IOS-XR-ncs1k-macsec-ea-oper-sub1.yang | 180 + .../Cisco-IOS-XR-ncs1k-macsec-ea-oper.yang | 72 + .../xr/792/Cisco-IOS-XR-ncs1k-mxp-cfg.yang | 203 + ...o-IOS-XR-ncs1k-mxp-headless-oper-sub1.yang | 337 + .../Cisco-IOS-XR-ncs1k-mxp-headless-oper.yang | 90 + ...Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1.yang | 190 + .../792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper.yang | 72 + .../792/Cisco-IOS-XR-ncs1k-mxp-oper-sub1.yang | 253 + .../xr/792/Cisco-IOS-XR-ncs1k-mxp-oper.yang | 80 + .../792/Cisco-IOS-XR-ncs4k-freqsync-cfg.yang | 421 + ...Cisco-IOS-XR-ncs4k-freqsync-oper-sub1.yang | 2038 + .../792/Cisco-IOS-XR-ncs4k-freqsync-oper.yang | 393 + ...OS-XR-ncs5500-coherent-node-oper-sub1.yang | 811 + ...sco-IOS-XR-ncs5500-coherent-node-oper.yang | 78 + ...-IOS-XR-ncs5500-coherent-portmode-cfg.yang | 202 + ...R-ncs5500-coherent-portmode-oper-sub1.yang | 78 + ...IOS-XR-ncs5500-coherent-portmode-oper.yang | 68 + .../Cisco-IOS-XR-ncs5500-qos-oper-sub1.yang | 1181 + .../Cisco-IOS-XR-ncs5500-qos-oper-sub2.yang | 165 + .../Cisco-IOS-XR-ncs5500-qos-oper-sub3.yang | 260 + .../xr/792/Cisco-IOS-XR-ncs5500-qos-oper.yang | 323 + ...OS-XR-ncs5k-fea-pfilter-nonatomic-cfg.yang | 76 + ...-IOS-XR-npu-bandwidth-usage-oper-sub1.yang | 114 + ...Cisco-IOS-XR-npu-bandwidth-usage-oper.yang | 97 + ...XR-npu-cfg-macsec-fips-post-oper-sub1.yang | 67 + ...-IOS-XR-npu-cfg-macsec-fips-post-oper.yang | 76 + ...-IOS-XR-npu-cfg-macsec-mode-oper-sub1.yang | 67 + ...Cisco-IOS-XR-npu-cfg-macsec-mode-oper.yang | 76 + ...Cisco-IOS-XR-npu-fsdb-stats-oper-sub1.yang | 2027 + .../792/Cisco-IOS-XR-npu-fsdb-stats-oper.yang | 263 + .../792/Cisco-IOS-XR-npu-hw-profile-cfg.yang | 613 + ...sco-IOS-XR-npu-power-profile-sf-d-cfg.yang | 120 + ...sco-IOS-XR-npu-power-profile-sf-f-cfg.yang | 98 + .../792/Cisco-IOS-XR-nto-misc-oper-sub1.yang | 275 + .../xr/792/Cisco-IOS-XR-nto-misc-oper.yang | 83 + .../cisco/xr/792/Cisco-IOS-XR-nvgen-cfg.yang | 82 + ...isco-IOS-XR-nvgen-partition-oper-sub1.yang | 63 + .../Cisco-IOS-XR-nvgen-partition-oper.yang | 65 + .../Cisco-IOS-XR-ofa-netflow-oper-sub1.yang | 297 + .../Cisco-IOS-XR-ofa-netflow-oper-sub2.yang | 123 + .../xr/792/Cisco-IOS-XR-ofa-netflow-oper.yang | 107 + .../Cisco-IOS-XR-ofa-npu-pfc-oper-sub1.yang | 134 + .../xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper.yang | 84 + .../Cisco-IOS-XR-ofa-npu-qos-oper-sub1.yang | 123 + .../xr/792/Cisco-IOS-XR-ofa-npu-qos-oper.yang | 90 + .../Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang | 655 + .../792/Cisco-IOS-XR-ofa-npu-stats-oper.yang | 273 + vendor/cisco/xr/792/Cisco-IOS-XR-olc-act.yang | 84 + vendor/cisco/xr/792/Cisco-IOS-XR-olc-cfg.yang | 431 + .../xr/792/Cisco-IOS-XR-olc-oper-sub1.yang | 1239 + .../cisco/xr/792/Cisco-IOS-XR-olc-oper.yang | 300 + .../792/Cisco-IOS-XR-openconfig-isis-ext.yang | 78 + ...sco-IOS-XR-openconfig-mpls-static-ext.yang | 251 + ...IOS-XR-openconfig-system-terminal-ext.yang | 130 + ...IOS-XR-openconfig-terminal-device-ext.yang | 223 + .../Cisco-IOS-XR-opendns-deviceid-cfg.yang | 64 + .../xr/792/Cisco-IOS-XR-opticalmib-cfg.yang | 59 + .../792/Cisco-IOS-XR-opticalotsmib-cfg.yang | 59 + ...-XR-optics-breakout-details-oper-sub1.yang | 119 + ...o-IOS-XR-optics-breakout-details-oper.yang | 72 + .../xr/792/Cisco-IOS-XR-optics-dac-cfg.yang | 96 + .../792/Cisco-IOS-XR-optics-driver-cfg.yang | 90 + .../Cisco-IOS-XR-optics-driver-quad-cfg.yang | 114 + ...isco-IOS-XR-optics-driver-xponder-cfg.yang | 75 + .../Cisco-IOS-XR-optics-fan-control-cfg.yang | 87 + .../Cisco-IOS-XR-optics-media-type-cfg.yang | 71 + ...S-XR-optics-port-mode-centralized-cfg.yang | 104 + .../Cisco-IOS-XR-optics-port-mode-cfg.yang | 118 + .../xr/792/Cisco-IOS-XR-optics-speed-cfg.yang | 114 + .../xr/792/Cisco-IOS-XR-orrspf-oper-sub1.yang | 372 + .../xr/792/Cisco-IOS-XR-orrspf-oper.yang | 160 + vendor/cisco/xr/792/Cisco-IOS-XR-osa-cfg.yang | 543 + ...OS-XR-osa-controller-optics-oper-sub1.yang | 226 + ...sco-IOS-XR-osa-controller-optics-oper.yang | 86 + .../cisco/xr/792/Cisco-IOS-XR-osa-ct-cfg.yang | 173 + ...co-IOS-XR-osa-hwmod-linesys-oper-sub1.yang | 213 + .../Cisco-IOS-XR-osa-hwmod-linesys-oper.yang | 81 + .../792/Cisco-IOS-XR-osa-linesystem-cfg.yang | 141 + .../xr/792/Cisco-IOS-XR-osa-oper-sub1.yang | 578 + .../cisco/xr/792/Cisco-IOS-XR-osa-oper.yang | 145 + .../cisco/xr/792/Cisco-IOS-XR-osa-sp-cfg.yang | 78 + .../xr/792/Cisco-IOS-XR-otnifmib-cfg.yang | 59 + .../cisco/xr/792/Cisco-IOS-XR-otnsec-cfg.yang | 172 + .../xr/792/Cisco-IOS-XR-otnsec-oper-sub1.yang | 230 + .../xr/792/Cisco-IOS-XR-otnsec-oper.yang | 86 + .../xr/792/Cisco-IOS-XR-ownership-act.yang | 183 + .../792/Cisco-IOS-XR-ownership-oper-sub1.yang | 78 + .../xr/792/Cisco-IOS-XR-ownership-oper.yang | 60 + .../cisco/xr/792/Cisco-IOS-XR-parser-cfg.yang | 231 + .../xr/792/Cisco-IOS-XR-patch-panel-cfg.yang | 76 + .../xr/792/Cisco-IOS-XR-pbr-bng-cfg.yang | 111 + vendor/cisco/xr/792/Cisco-IOS-XR-pbr-cfg.yang | 88 + .../xr/792/Cisco-IOS-XR-pbr-datatypes.yang | 53 + .../xr/792/Cisco-IOS-XR-pbr-oper-sub1.yang | 302 + .../cisco/xr/792/Cisco-IOS-XR-pbr-oper.yang | 99 + .../792/Cisco-IOS-XR-pbr-subscriber-cfg.yang | 94 + .../792/Cisco-IOS-XR-pbr-vrf-policy-cfg.yang | 83 + ...isco-IOS-XR-pbr-vservice-ea-oper-sub1.yang | 293 + .../Cisco-IOS-XR-pbr-vservice-ea-oper.yang | 182 + ...sco-IOS-XR-pbr-vservice-mgr-oper-sub1.yang | 293 + .../Cisco-IOS-XR-pbr-vservice-mgr-oper.yang | 164 + .../xr/792/Cisco-IOS-XR-perf-meas-cfg.yang | 1389 + .../792/Cisco-IOS-XR-perf-meas-oper-sub1.yang | 306 + .../792/Cisco-IOS-XR-perf-meas-oper-sub2.yang | 5643 +++ .../xr/792/Cisco-IOS-XR-perf-meas-oper.yang | 1058 + ...sco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1.yang | 150 + .../Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper.yang | 74 + .../Cisco-IOS-XR-pfi-im-cmd-oper-sub1.yang | 6951 +++ .../Cisco-IOS-XR-pfi-im-cmd-oper-sub2.yang | 329 + .../xr/792/Cisco-IOS-XR-pfi-im-cmd-oper.yang | 240 + .../xr/792/Cisco-IOS-XR-pfm-oper-sub1.yang | 97 + .../cisco/xr/792/Cisco-IOS-XR-pfm-oper.yang | 239 + .../xr/792/Cisco-IOS-XR-pim-oper-sub1.yang | 4174 ++ .../xr/792/Cisco-IOS-XR-pim-oper-sub2.yang | 213 + .../cisco/xr/792/Cisco-IOS-XR-pim-oper.yang | 1118 + .../cisco/xr/792/Cisco-IOS-XR-ping-act.yang | 99 + ...-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang | 709 + ...-IOS-XR-plat-chas-invmgr-ng-oper-sub2.yang | 440 + ...Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang | 733 + ...S-XR-platform-event-history-oper-sub1.yang | 115 + ...co-IOS-XR-platform-event-history-oper.yang | 69 + ...o-IOS-XR-platform-inventory-oper-sub1.yang | 695 + .../Cisco-IOS-XR-platform-inventory-oper.yang | 634 + ...IOS-XR-platform-oir-history-oper-sub1.yang | 88 + ...isco-IOS-XR-platform-oir-history-oper.yang | 68 + .../792/Cisco-IOS-XR-platform-oper-sub1.yang | 436 + .../xr/792/Cisco-IOS-XR-platform-oper.yang | 132 + ...Cisco-IOS-XR-platform-pifib-oper-sub1.yang | 552 + .../792/Cisco-IOS-XR-platform-pifib-oper.yang | 128 + ...-platforms-common-dnx-infra-oper-sub1.yang | 121 + ...OS-XR-platforms-common-dnx-infra-oper.yang | 61 + ...isco-IOS-XR-platforms-common-tams-act.yang | 63 + .../792/Cisco-IOS-XR-platforms-ofa-oper.yang | 83 + ...R-platforms-ofa-table-stats-oper-sub1.yang | 351 + ...IOS-XR-platforms-ofa-table-stats-oper.yang | 1829 + .../xr/792/Cisco-IOS-XR-pmengine-cfg.yang | 6776 +++ .../792/Cisco-IOS-XR-pmengine-clear-act.yang | 88 + .../xr/792/Cisco-IOS-XR-pmengine-gl-cfg.yang | 63 + .../792/Cisco-IOS-XR-pmengine-oper-sub1.yang | 3835 ++ .../xr/792/Cisco-IOS-XR-pmengine-oper.yang | 6184 +++ .../Cisco-IOS-XR-policy-repository-cfg.yang | 458 + ...co-IOS-XR-policy-repository-oper-sub1.yang | 491 + .../Cisco-IOS-XR-policy-repository-oper.yang | 388 + .../xr/792/Cisco-IOS-XR-portmode-cfg.yang | 514 + .../792/Cisco-IOS-XR-portmode-datatypes.yang | 409 + .../792/Cisco-IOS-XR-portmode-oper-sub1.yang | 535 + .../xr/792/Cisco-IOS-XR-portmode-oper.yang | 96 + .../xr/792/Cisco-IOS-XR-ppp-ea-oper-sub1.yang | 233 + .../xr/792/Cisco-IOS-XR-ppp-ea-oper.yang | 84 + .../cisco/xr/792/Cisco-IOS-XR-ppp-ma-cfg.yang | 54 + .../xr/792/Cisco-IOS-XR-ppp-ma-fsm-cfg.yang | 94 + .../xr/792/Cisco-IOS-XR-ppp-ma-gbl-cfg.yang | 382 + .../xr/792/Cisco-IOS-XR-ppp-ma-ipcp-cfg.yang | 94 + .../792/Cisco-IOS-XR-ppp-ma-ipcpiw-cfg.yang | 67 + .../xr/792/Cisco-IOS-XR-ppp-ma-lcp-cfg.yang | 265 + .../xr/792/Cisco-IOS-XR-ppp-ma-oper-sub1.yang | 199 + .../xr/792/Cisco-IOS-XR-ppp-ma-oper-sub2.yang | 392 + .../xr/792/Cisco-IOS-XR-ppp-ma-oper-sub3.yang | 586 + .../xr/792/Cisco-IOS-XR-ppp-ma-oper-sub4.yang | 575 + .../xr/792/Cisco-IOS-XR-ppp-ma-oper.yang | 178 + .../xr/792/Cisco-IOS-XR-ppp-ma-ssrp-cfg.yang | 149 + .../792/Cisco-IOS-XR-ppp-ma-syslog-cfg.yang | 55 + .../792/Cisco-IOS-XR-pppoe-ea-oper-sub1.yang | 135 + .../xr/792/Cisco-IOS-XR-pppoe-ea-oper.yang | 97 + .../xr/792/Cisco-IOS-XR-prm-hwmod-cfg.yang | 85 + .../Cisco-IOS-XR-prm-hwmod-profile-cfg.yang | 72 + .../xr/792/Cisco-IOS-XR-prm-hwmod-sr-cfg.yang | 67 + .../Cisco-IOS-XR-prm-server-oper-sub1.yang | 224 + .../xr/792/Cisco-IOS-XR-prm-server-oper.yang | 171 + .../792/Cisco-IOS-XR-procfind-oper-sub1.yang | 82 + .../xr/792/Cisco-IOS-XR-procfind-oper.yang | 105 + .../792/Cisco-IOS-XR-procmem-oper-sub1.yang | 110 + .../xr/792/Cisco-IOS-XR-procmem-oper.yang | 106 + ...Cisco-IOS-XR-procthreadname-oper-sub1.yang | 97 + .../792/Cisco-IOS-XR-procthreadname-oper.yang | 77 + vendor/cisco/xr/792/Cisco-IOS-XR-ptp-cfg.yang | 1630 + .../xr/792/Cisco-IOS-XR-ptp-datatypes.yang | 405 + .../xr/792/Cisco-IOS-XR-ptp-oper-sub1.yang | 2901 ++ .../cisco/xr/792/Cisco-IOS-XR-ptp-oper.yang | 319 + .../cisco/xr/792/Cisco-IOS-XR-ptp-pd-cfg.yang | 78 + .../xr/792/Cisco-IOS-XR-ptp-pd-oper-sub1.yang | 465 + .../xr/792/Cisco-IOS-XR-ptp-pd-oper.yang | 93 + .../792/Cisco-IOS-XR-pwrmgmt-action-cfg.yang | 56 + .../xr/792/Cisco-IOS-XR-pwrmgmt-cfg.yang | 68 + .../xr/792/Cisco-IOS-XR-qos-ma-bng-cfg.yang | 262 + .../cisco/xr/792/Cisco-IOS-XR-qos-ma-cfg.yang | 365 + .../xr/792/Cisco-IOS-XR-qos-ma-oper.yang | 1731 + .../xr/792/Cisco-IOS-XR-qos-ma-sat-cfg.yang | 120 + .../xr/792/Cisco-IOS-XR-qos-mibs-cfg.yang | 95 + .../Cisco-IOS-XR-remote-attestation-act.yang | 869 + .../cisco/xr/792/Cisco-IOS-XR-rgmgr-cfg.yang | 201 + .../xr/792/Cisco-IOS-XR-rgmgr-oper-sub1.yang | 97 + .../cisco/xr/792/Cisco-IOS-XR-rgmgr-oper.yang | 74 + vendor/cisco/xr/792/Cisco-IOS-XR-roe-cfg.yang | 399 + .../xr/792/Cisco-IOS-XR-roe-oper-sub1.yang | 212 + .../cisco/xr/792/Cisco-IOS-XR-roe-oper.yang | 89 + .../Cisco-IOS-XR-rptiming-dti-oper-sub1.yang | 399 + .../792/Cisco-IOS-XR-rptiming-dti-oper.yang | 83 + .../792/Cisco-IOS-XR-rptiming-oper-sub1.yang | 1360 + .../xr/792/Cisco-IOS-XR-rptiming-oper.yang | 102 + .../Cisco-IOS-XR-rptiming-tmg-oper-sub1.yang | 1732 + .../792/Cisco-IOS-XR-rptiming-tmg-oper.yang | 127 + .../792/Cisco-IOS-XR-rsi-agent-oper-sub1.yang | 1290 + .../xr/792/Cisco-IOS-XR-rsi-agent-oper.yang | 480 + .../xr/792/Cisco-IOS-XR-sandbox-cfg.yang | 79 + .../792/Cisco-IOS-XR-sandbox-oper-sub1.yang | 168 + .../xr/792/Cisco-IOS-XR-sandbox-oper.yang | 69 + ...isco-IOS-XR-sdr-invmgr-diag-oper-sub1.yang | 498 + .../Cisco-IOS-XR-sdr-invmgr-diag-oper.yang | 181 + .../Cisco-IOS-XR-sdr-invmgr-oper-sub1.yang | 63 + .../xr/792/Cisco-IOS-XR-sdr-invmgr-oper.yang | 254 + .../cisco/xr/792/Cisco-IOS-XR-se-cgn-cfg.yang | 166 + .../792/Cisco-IOS-XR-segment-routing-act.yang | 60 + .../Cisco-IOS-XR-segment-routing-ms-cfg.yang | 308 + ...-IOS-XR-segment-routing-ms-common-cfg.yang | 46 + ...o-IOS-XR-segment-routing-ms-oper-sub1.yang | 67 + ...o-IOS-XR-segment-routing-ms-oper-sub2.yang | 155 + ...o-IOS-XR-segment-routing-ms-oper-sub3.yang | 211 + .../Cisco-IOS-XR-segment-routing-ms-oper.yang | 282 + ...Cisco-IOS-XR-segment-routing-srv6-cfg.yang | 331 + ...IOS-XR-segment-routing-srv6-datatypes.yang | 222 + ...IOS-XR-segment-routing-srv6-oper-sub1.yang | 2188 + ...isco-IOS-XR-segment-routing-srv6-oper.yang | 327 + vendor/cisco/xr/792/Cisco-IOS-XR-sfi-cfg.yang | 68 + .../xr/792/Cisco-IOS-XR-sfi-ma-oper-sub1.yang | 162 + .../xr/792/Cisco-IOS-XR-sfi-ma-oper.yang | 102 + .../xr/792/Cisco-IOS-XR-shellutil-cfg.yang | 55 + .../792/Cisco-IOS-XR-shellutil-copy-act.yang | 107 + .../Cisco-IOS-XR-shellutil-delete-act.yang | 76 + .../Cisco-IOS-XR-shellutil-dir-oper-sub1.yang | 153 + .../792/Cisco-IOS-XR-shellutil-dir-oper.yang | 101 + ...IOS-XR-shellutil-filesystem-oper-sub1.yang | 85 + ...isco-IOS-XR-shellutil-filesystem-oper.yang | 69 + .../792/Cisco-IOS-XR-shellutil-oper-sub1.yang | 142 + .../xr/792/Cisco-IOS-XR-shellutil-oper.yang | 60 + ...isco-IOS-XR-show-fpd-loc-ng-oper-sub1.yang | 224 + .../Cisco-IOS-XR-show-fpd-loc-ng-oper.yang | 144 + .../xr/792/Cisco-IOS-XR-sirius-ptp-cfg.yang | 70 + .../792/Cisco-IOS-XR-skp-qos-oper-sub1.yang | 888 + .../792/Cisco-IOS-XR-skp-qos-oper-sub2.yang | 993 + .../xr/792/Cisco-IOS-XR-skp-qos-oper.yang | 404 + vendor/cisco/xr/792/Cisco-IOS-XR-sks-act.yang | 137 + .../xr/792/Cisco-IOS-XR-sks-server-cfg.yang | 107 + .../Cisco-IOS-XR-sks-server-oper-sub1.yang | 599 + .../xr/792/Cisco-IOS-XR-sks-server-oper.yang | 157 + ...isco-IOS-XR-skywarp-netflow-oper-sub1.yang | 303 + ...isco-IOS-XR-skywarp-netflow-oper-sub2.yang | 94 + .../Cisco-IOS-XR-skywarp-netflow-oper.yang | 113 + .../792/Cisco-IOS-XR-smart-license-act.yang | 382 + .../792/Cisco-IOS-XR-smart-license-cfg.yang | 140 + .../Cisco-IOS-XR-smart-license-errors.yang | 983 + ...S-XR-smart-license-platform-oper-sub1.yang | 467 + ...co-IOS-XR-smart-license-platform-oper.yang | 78 + .../xr/792/Cisco-IOS-XR-snmp-agent-cfg.yang | 2425 + .../Cisco-IOS-XR-snmp-agent-oper-sub1.yang | 74 + .../Cisco-IOS-XR-snmp-agent-oper-sub2.yang | 307 + .../Cisco-IOS-XR-snmp-agent-oper-sub3.yang | 1143 + .../Cisco-IOS-XR-snmp-agent-oper-sub4.yang | 159 + .../Cisco-IOS-XR-snmp-agent-oper-sub5.yang | 90 + .../Cisco-IOS-XR-snmp-agent-oper-sub6.yang | 92 + .../Cisco-IOS-XR-snmp-agent-oper-sub7.yang | 89 + .../xr/792/Cisco-IOS-XR-snmp-agent-oper.yang | 655 + .../792/Cisco-IOS-XR-snmp-bridgemib-cfg.yang | 59 + ...sco-IOS-XR-snmp-ciscopkimib-traps-cfg.yang | 55 + .../Cisco-IOS-XR-snmp-ciscosensormib-cfg.yang | 79 + .../Cisco-IOS-XR-snmp-entityextmib-cfg.yang | 59 + .../792/Cisco-IOS-XR-snmp-entitymib-cfg.yang | 77 + ...Cisco-IOS-XR-snmp-entitymib-oper-sub1.yang | 93 + .../792/Cisco-IOS-XR-snmp-entitymib-oper.yang | 75 + .../Cisco-IOS-XR-snmp-entstatemib-cfg.yang | 69 + .../Cisco-IOS-XR-snmp-frucontrolmib-cfg.yang | 60 + .../xr/792/Cisco-IOS-XR-snmp-ifmib-cfg.yang | 179 + .../Cisco-IOS-XR-snmp-ifmib-oper-sub1.yang | 80 + .../xr/792/Cisco-IOS-XR-snmp-ifmib-oper.yang | 95 + .../792/Cisco-IOS-XR-snmp-mib-rfmib-cfg.yang | 63 + ...Cisco-IOS-XR-snmp-sensormib-oper-sub1.yang | 120 + ...Cisco-IOS-XR-snmp-sensormib-oper-sub2.yang | 76 + .../792/Cisco-IOS-XR-snmp-sensormib-oper.yang | 117 + .../792/Cisco-IOS-XR-snmp-syslogmib-cfg.yang | 63 + .../792/Cisco-IOS-XR-snmp-test-trap-act.yang | 487 + .../xr/792/Cisco-IOS-XR-spio-oper-sub1.yang | 514 + .../cisco/xr/792/Cisco-IOS-XR-spio-oper.yang | 209 + ...isco-IOS-XR-spirit-bfd-hw-offload-cfg.yang | 83 + ...co-IOS-XR-spirit-cgn-nat64-stless-cfg.yang | 523 + .../Cisco-IOS-XR-spirit-corehelper-cfg.yang | 65 + ...R-spirit-corehelper-context-oper-sub1.yang | 54 + ...IOS-XR-spirit-corehelper-context-oper.yang | 82 + ...isco-IOS-XR-spirit-ether-ea-oper-sub1.yang | 154 + .../Cisco-IOS-XR-spirit-ether-ea-oper.yang | 77 + .../792/Cisco-IOS-XR-spirit-install-act.yang | 806 + ...S-XR-spirit-install-instmgr-oper-sub1.yang | 995 + ...S-XR-spirit-install-instmgr-oper-sub2.yang | 476 + ...co-IOS-XR-spirit-install-instmgr-oper.yang | 349 + vendor/cisco/xr/792/Cisco-IOS-XR-ssh-act.yang | 68 + vendor/cisco/xr/792/Cisco-IOS-XR-ssm-cfg.yang | 51 + ...isco-IOS-XR-subscriber-accounting-cfg.yang | 316 + ...OS-XR-subscriber-accounting-oper-sub1.yang | 1139 + ...sco-IOS-XR-subscriber-accounting-oper.yang | 145 + ...o-IOS-XR-subscriber-infra-tmplmgr-cfg.yang | 91 + .../Cisco-IOS-XR-subscriber-ipsub-cfg.yang | 238 + ...sco-IOS-XR-subscriber-ipsub-oper-sub1.yang | 716 + .../Cisco-IOS-XR-subscriber-ipsub-oper.yang | 103 + .../792/Cisco-IOS-XR-subscriber-nal-cfg.yang | 626 + ...co-IOS-XR-subscriber-pppoe-ma-cmd-cfg.yang | 71 + ...co-IOS-XR-subscriber-pppoe-ma-gbl-cfg.yang | 940 + ...-IOS-XR-subscriber-pppoe-ma-oper-sub1.yang | 1702 + ...Cisco-IOS-XR-subscriber-pppoe-ma-oper.yang | 277 + ...OS-XR-subscriber-session-mon-mibs-cfg.yang | 219 + ...S-XR-subscriber-session-mon-oper-sub1.yang | 108 + ...co-IOS-XR-subscriber-session-mon-oper.yang | 93 + .../792/Cisco-IOS-XR-subscriber-srg-cfg.yang | 615 + ...Cisco-IOS-XR-subscriber-srg-oper-sub1.yang | 1355 + .../792/Cisco-IOS-XR-subscriber-srg-oper.yang | 205 + .../cisco/xr/792/Cisco-IOS-XR-switch-act.yang | 151 + .../xr/792/Cisco-IOS-XR-switch-oper-sub1.yang | 2480 + .../xr/792/Cisco-IOS-XR-switch-oper.yang | 1586 + .../Cisco-IOS-XR-syncc-controller-cfg.yang | 325 + .../xr/792/Cisco-IOS-XR-syncc-oper-sub1.yang | 785 + .../cisco/xr/792/Cisco-IOS-XR-syncc-oper.yang | 91 + .../Cisco-IOS-XR-sysadmin-aaa-aaa-show.yang | 73 + ...OS-XR-sysadmin-aaa-command-accounting.yang | 46 + ...IOS-XR-sysadmin-aaa-disaster-recovery.yang | 53 + .../792/Cisco-IOS-XR-sysadmin-alarm-mgr.yang | 648 + ...Cisco-IOS-XR-sysadmin-asic-errors-ael.yang | 329 + ...co-IOS-XR-sysadmin-asr9k-envmon-types.yang | 88 + ...Cisco-IOS-XR-sysadmin-asr9k-envmon-ui.yang | 951 + .../792/Cisco-IOS-XR-sysadmin-card-mgr.yang | 728 + ...S-XR-sysadmin-chassis-mode-ptmode-cfg.yang | 71 + .../Cisco-IOS-XR-sysadmin-clear-asr9k.yang | 63 + .../Cisco-IOS-XR-sysadmin-clear-iosxrwbd.yang | 65 + ...o-IOS-XR-sysadmin-clear-ncs5500-eyrie.yang | 58 + .../Cisco-IOS-XR-sysadmin-clear-ncs5500.yang | 78 + .../Cisco-IOS-XR-sysadmin-clear-ncs5502.yang | 78 + .../Cisco-IOS-XR-sysadmin-clear-ncs55A1.yang | 64 + .../xr/792/Cisco-IOS-XR-sysadmin-cm.yang | 531 + ...sco-IOS-XR-sysadmin-controllers-asr9k.yang | 57 + ...-IOS-XR-sysadmin-controllers-iosxrwbd.yang | 96 + ...XR-sysadmin-controllers-ncs5500-eyrie.yang | 53 + ...o-IOS-XR-sysadmin-controllers-ncs5500.yang | 78 + ...o-IOS-XR-sysadmin-controllers-ncs5501.yang | 59 + ...o-IOS-XR-sysadmin-controllers-ncs5502.yang | 78 + ...o-IOS-XR-sysadmin-controllers-ncs55A1.yang | 64 + .../Cisco-IOS-XR-sysadmin-debug-trace.yang | 74 + .../xr/792/Cisco-IOS-XR-sysadmin-ds.yang | 223 + .../xr/792/Cisco-IOS-XR-sysadmin-dumper.yang | 58 + .../792/Cisco-IOS-XR-sysadmin-entity-mib.yang | 353 + ...sco-IOS-XR-sysadmin-entity-sensor-mib.yang | 307 + ...isco-IOS-XR-sysadmin-entity-state-mib.yang | 101 + ...o-IOS-XR-sysadmin-entity-state-tc-mib.yang | 140 + .../Cisco-IOS-XR-sysadmin-eobc-iosxrwbd.yang | 0 ...OS-XR-sysadmin-ethsw-esdma-admin-exec.yang | 163 + ...-IOS-XR-sysadmin-ethsw-esdma-bcmshell.yang | 72 + ...co-IOS-XR-sysadmin-ethsw-esdma-bridge.yang | 119 + ...sco-IOS-XR-sysadmin-ethsw-esdma-clear.yang | 152 + ...IOS-XR-sysadmin-ethsw-esdma-cli-asr9k.yang | 126 + ...-XR-sysadmin-ethsw-esdma-cli-iosxrwbd.yang | 127 + ...S-XR-sysadmin-ethsw-esdma-cli-ncs5500.yang | 115 + ...sco-IOS-XR-sysadmin-ethsw-esdma-debug.yang | 169 + ...Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb.yang | 253 + ...Cisco-IOS-XR-sysadmin-ethsw-esdma-mac.yang | 95 + ...OS-XR-sysadmin-ethsw-esdma-mgmt-agent.yang | 120 + ...esdma-mlap-connectivity-info-iosxrwbd.yang | 94 + ...XR-sysadmin-ethsw-esdma-mlap-iosxrwbd.yang | 577 + ...isco-IOS-XR-sysadmin-ethsw-esdma-mlap.yang | 660 + ...IOS-XR-sysadmin-ethsw-esdma-reachable.yang | 62 + ...Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr.yang | 352 + ...co-IOS-XR-sysadmin-ethsw-esdma-serdes.yang | 104 + ...Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp.yang | 1773 + ...OS-XR-sysadmin-ethsw-esdma-statistics.yang | 470 + ...o-IOS-XR-sysadmin-ethsw-esdma-summary.yang | 173 + ...sco-IOS-XR-sysadmin-ethsw-esdma-trace.yang | 77 + ...sco-IOS-XR-sysadmin-ethsw-esdma-trunk.yang | 91 + ...sco-IOS-XR-sysadmin-ethsw-esdma-types.yang | 483 + ...isco-IOS-XR-sysadmin-ethsw-esdma-vlan.yang | 283 + .../792/Cisco-IOS-XR-sysadmin-ext-alarm.yang | 95 + .../Cisco-IOS-XR-sysadmin-external-usb.yang | 52 + ...R-sysadmin-fabric-driver-sfe-iosxrwbd.yang | 684 + ...XR-sysadmin-fabric-driver-sfe-ncs5500.yang | 685 + ...Cisco-IOS-XR-sysadmin-fabric-iosxrwbd.yang | 107 + ...-XR-sysadmin-fabric-mgr-fgid-iosxrwbd.yang | 583 + ...S-XR-sysadmin-fabric-mgr-fgid-ncs5500.yang | 583 + ...n-fabric-mgr-fsdb-aggregator-iosxrwbd.yang | 852 + ...in-fabric-mgr-fsdb-aggregator-ncs5500.yang | 747 + ...in-fabric-mgr-fsdb-aggregator-ncs5502.yang | 716 + ...admin-fabric-mgr-fsdb-server-iosxrwbd.yang | 593 + ...sadmin-fabric-mgr-fsdb-server-ncs5500.yang | 545 + ...sadmin-fabric-mgr-fsdb-server-ncs5502.yang | 549 + .../Cisco-IOS-XR-sysadmin-fabric-ncs5500.yang | 102 + .../Cisco-IOS-XR-sysadmin-fabric-ncs5501.yang | 56 + .../Cisco-IOS-XR-sysadmin-fabric-ncs5502.yang | 102 + .../Cisco-IOS-XR-sysadmin-fabric-qsfpdd.yang | 566 + .../Cisco-IOS-XR-sysadmin-fabric-types.yang | 505 + .../xr/792/Cisco-IOS-XR-sysadmin-fm.yang | 687 + ...XR-sysadmin-fpd-infra-cli-fpd-service.yang | 52 + ...sco-IOS-XR-sysadmin-fpd-infra-cli-fpd.yang | 63 + ...sysadmin-fpd-infra-cli-fpdserv-ctrace.yang | 45 + ...IOS-XR-sysadmin-fpd-infra-cli-shhwfpd.yang | 91 + .../xr/792/Cisco-IOS-XR-sysadmin-fpd.yang | 59 + ...o-IOS-XR-sysadmin-fretta-envmon-types.yang | 146 + ...isco-IOS-XR-sysadmin-fretta-envmon-ui.yang | 896 + ...Cisco-IOS-XR-sysadmin-hw-module-xrv9k.yang | 83 + .../792/Cisco-IOS-XR-sysadmin-hw-module.yang | 79 + .../xr/792/Cisco-IOS-XR-sysadmin-issu.yang | 1194 + .../792/Cisco-IOS-XR-sysadmin-led-mgr-ui.yang | 107 + ...-IOS-XR-sysadmin-ncs1001-envmon-types.yang | 68 + ...sco-IOS-XR-sysadmin-ncs1001-envmon-ui.yang | 891 + ...-IOS-XR-sysadmin-ncs1004-envmon-types.yang | 84 + ...sco-IOS-XR-sysadmin-ncs1004-envmon-ui.yang | 891 + ...co-IOS-XR-sysadmin-ncs1k-envmon-types.yang | 84 + ...Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui.yang | 891 + ...IOS-XR-sysadmin-nto-misc-set-hostname.yang | 55 + .../792/Cisco-IOS-XR-sysadmin-obfl-conf.yang | 64 + .../xr/792/Cisco-IOS-XR-sysadmin-obfl.yang | 57 + .../xr/792/Cisco-IOS-XR-sysadmin-pm.yang | 432 + .../xr/792/Cisco-IOS-XR-sysadmin-rmon.yang | 149 + .../xr/792/Cisco-IOS-XR-sysadmin-rvm-mgr.yang | 186 + .../xr/792/Cisco-IOS-XR-sysadmin-sdr-mgr.yang | 673 + .../792/Cisco-IOS-XR-sysadmin-services.yang | 55 + .../xr/792/Cisco-IOS-XR-sysadmin-ship.yang | 220 + .../792/Cisco-IOS-XR-sysadmin-show-bmc.yang | 59 + .../792/Cisco-IOS-XR-sysadmin-show-diag.yang | 179 + ...o-IOS-XR-sysadmin-show-diskenc-status.yang | 77 + .../792/Cisco-IOS-XR-sysadmin-show-inv.yang | 193 + .../792/Cisco-IOS-XR-sysadmin-show-media.yang | 92 + .../792/Cisco-IOS-XR-sysadmin-show-obfl.yang | 253 + .../Cisco-IOS-XR-sysadmin-show-trace-cm.yang | 49 + ...OS-XR-sysadmin-show-trace-debug-agent.yang | 49 + ...co-IOS-XR-sysadmin-show-trace-instagt.yang | 49 + ...co-IOS-XR-sysadmin-show-trace-instmgr.yang | 49 + .../Cisco-IOS-XR-sysadmin-show-trace-vmm.yang | 51 + .../792/Cisco-IOS-XR-sysadmin-show-trace.yang | 133 + ...-IOS-XR-sysadmin-skywarp-envmon-types.yang | 88 + ...sco-IOS-XR-sysadmin-skywarp-envmon-ui.yang | 951 + .../792/Cisco-IOS-XR-sysadmin-sm-hw-mod.yang | 260 + ...sco-IOS-XR-sysadmin-sm-system-cluster.yang | 328 + .../xr/792/Cisco-IOS-XR-sysadmin-sm.yang | 659 + .../xr/792/Cisco-IOS-XR-sysadmin-syslog.yang | 107 + .../Cisco-IOS-XR-sysadmin-system-cluster.yang | 96 + .../xr/792/Cisco-IOS-XR-sysadmin-system.yang | 162 + ...co-IOS-XR-sysadmin-tacacs-show-tacacs.yang | 95 + ...-IOS-XR-sysadmin-tacacs-tacacs-server.yang | 74 + ...co-IOS-XR-sysadmin-tacacs-test-tacacs.yang | 73 + ...-IOS-XR-sysadmin-time-of-day-timezone.yang | 68 + .../xr/792/Cisco-IOS-XR-sysadmin-types.yang | 192 + ...isco-IOS-XR-sysadmin-uea-envmon-types.yang | 68 + .../Cisco-IOS-XR-sysadmin-uea-envmon-ui.yang | 895 + .../xr/792/Cisco-IOS-XR-sysadmin-uptime.yang | 72 + .../xr/792/Cisco-IOS-XR-sysadmin-usb.yang | 61 + .../xr/792/Cisco-IOS-XR-sysadmin-vm-mgr.yang | 94 + .../xr/792/Cisco-IOS-XR-sysadmin-vm.yang | 128 + .../792/Cisco-IOS-XR-sysadmin-wd-memmon.yang | 126 + .../792/Cisco-IOS-XR-sysadmin-wd-sysmon.yang | 196 + .../xr/792/Cisco-IOS-XR-sysadmin-wdmon.yang | 176 + ...co-IOS-XR-sysadmin-xrv9k-envmon-types.yang | 88 + ...Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui.yang | 951 + .../xr/792/Cisco-IOS-XR-sysadmin-zapdisk.yang | 71 + .../cisco/xr/792/Cisco-IOS-XR-sysdb-oper.yang | 95 + .../cisco/xr/792/Cisco-IOS-XR-syslog-act.yang | 68 + .../cisco/xr/792/Cisco-IOS-XR-sysmgr-act.yang | 116 + .../cisco/xr/792/Cisco-IOS-XR-sysmgr-cfg.yang | 120 + .../xr/792/Cisco-IOS-XR-sysmgr-oper-sub1.yang | 1327 + .../xr/792/Cisco-IOS-XR-sysmgr-oper.yang | 243 + .../792/Cisco-IOS-XR-system-reboot-act.yang | 206 + .../792/Cisco-IOS-XR-system-recovery-cfg.yang | 55 + .../792/Cisco-IOS-XR-tamsvcs-oper-sub1.yang | 238 + .../xr/792/Cisco-IOS-XR-tamsvcs-oper.yang | 112 + ...sco-IOS-XR-telemetry-model-driven-cfg.yang | 723 + ...S-XR-telemetry-model-driven-oper-sub1.yang | 194 + ...S-XR-telemetry-model-driven-oper-sub2.yang | 1202 + ...co-IOS-XR-telemetry-model-driven-oper.yang | 174 + .../792/Cisco-IOS-XR-terminal-device-cfg.yang | 761 + ...isco-IOS-XR-terminal-device-oper-sub1.yang | 820 + .../Cisco-IOS-XR-terminal-device-oper.yang | 190 + .../Cisco-IOS-XR-timing-sets-hwmod-cfg.yang | 72 + .../Cisco-IOS-XR-tmgctrl-dti-oper-sub1.yang | 399 + .../xr/792/Cisco-IOS-XR-tmgctrl-dti-oper.yang | 83 + .../Cisco-IOS-XR-tmgctrl-tmg-oper-sub1.yang | 1235 + .../xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper.yang | 83 + .../xr/792/Cisco-IOS-XR-traceroute-act.yang | 93 + .../Cisco-IOS-XR-traffmon-netflow-cfg.yang | 1023 + .../792/Cisco-IOS-XR-tty-management-cfg.yang | 220 + ...o-IOS-XR-tty-management-cmd-oper-sub1.yang | 81 + .../Cisco-IOS-XR-tty-management-cmd-oper.yang | 75 + ...Cisco-IOS-XR-tty-management-datatypes.yang | 151 + ...Cisco-IOS-XR-tty-management-oper-sub1.yang | 174 + .../792/Cisco-IOS-XR-tty-management-oper.yang | 62 + .../xr/792/Cisco-IOS-XR-tty-server-cfg.yang | 231 + .../Cisco-IOS-XR-tty-server-oper-sub1.yang | 72 + .../Cisco-IOS-XR-tty-server-oper-sub2.yang | 60 + .../Cisco-IOS-XR-tty-server-oper-sub3.yang | 60 + .../Cisco-IOS-XR-tty-server-oper-sub4.yang | 113 + .../Cisco-IOS-XR-tty-server-oper-sub5.yang | 103 + .../xr/792/Cisco-IOS-XR-tty-server-oper.yang | 364 + .../Cisco-IOS-XR-tty-show-line-oper-sub1.yang | 77 + .../792/Cisco-IOS-XR-tty-show-line-oper.yang | 71 + ...co-IOS-XR-tty-show-terminal-oper-sub1.yang | 144 + .../Cisco-IOS-XR-tty-show-terminal-oper.yang | 71 + .../xr/792/Cisco-IOS-XR-tty-vty-cfg.yang | 105 + .../xr/792/Cisco-IOS-XR-tunnel-gre-cfg.yang | 318 + .../Cisco-IOS-XR-tunnel-gre-datatypes.yang | 120 + .../Cisco-IOS-XR-tunnel-ip-ea-oper-sub1.yang | 665 + .../792/Cisco-IOS-XR-tunnel-ip-ea-oper.yang | 214 + .../Cisco-IOS-XR-tunnel-ip-ma-oper-sub1.yang | 1101 + .../792/Cisco-IOS-XR-tunnel-ip-ma-oper.yang | 272 + .../xr/792/Cisco-IOS-XR-tunnel-l2tun-cfg.yang | 295 + .../Cisco-IOS-XR-tunnel-l2tun-oper-sub1.yang | 1432 + .../792/Cisco-IOS-XR-tunnel-l2tun-oper.yang | 322 + ...co-IOS-XR-tunnel-l2tun-proto-mibs-cfg.yang | 74 + .../xr/792/Cisco-IOS-XR-tunnel-nve-cfg.yang | 399 + .../Cisco-IOS-XR-tunnel-nve-oper-sub1.yang | 436 + .../xr/792/Cisco-IOS-XR-tunnel-nve-oper.yang | 144 + .../xr/792/Cisco-IOS-XR-tunnel-vpdn-cfg.yang | 446 + .../Cisco-IOS-XR-tunnel-vpdn-oper-sub1.yang | 790 + .../xr/792/Cisco-IOS-XR-tunnel-vpdn-oper.yang | 134 + vendor/cisco/xr/792/Cisco-IOS-XR-types.yang | 813 + .../Cisco-IOS-XR-uea-optics-driver-cfg.yang | 72 + ...-IOS-XR-uea-optics-driver-im-mode-cfg.yang | 69 + ...sco-IOS-XR-uea-optics-driver-quad-cfg.yang | 88 + ...-IOS-XR-um-8000-controller-fabric-cfg.yang | 80 + .../xr/792/Cisco-IOS-XR-um-8000-fpd-cfg.yang | 71 + ...-8000-hw-module-power-profile-sfd-cfg.yang | 109 + ...-8000-hw-module-power-profile-sff-cfg.yang | 62 + ...-IOS-XR-um-8000-hw-module-profile-cfg.yang | 1075 + ...um-8000-hw-module-profile-netflow-cfg.yang | 95 + .../Cisco-IOS-XR-um-8000-local-mac-cfg.yang | 53 + .../Cisco-IOS-XR-um-8000-spp-policer-cfg.yang | 90 + .../xr/792/Cisco-IOS-XR-um-8000-udf-cfg.yang | 125 + .../Cisco-IOS-XR-um-aaa-acct-mobile-cfg.yang | 379 + .../cisco/xr/792/Cisco-IOS-XR-um-aaa-cfg.yang | 4221 ++ .../792/Cisco-IOS-XR-um-aaa-diameter-cfg.yang | 882 + .../xr/792/Cisco-IOS-XR-um-aaa-nacm-cfg.yang | 404 + ...Cisco-IOS-XR-um-aaa-radius-server-cfg.yang | 1237 + .../Cisco-IOS-XR-um-aaa-subscriber-cfg.yang | 4503 ++ ...Cisco-IOS-XR-um-aaa-tacacs-server-cfg.yang | 618 + .../Cisco-IOS-XR-um-aaa-task-user-cfg.yang | 3259 ++ ...Cisco-IOS-XR-um-access-list-datatypes.yang | 1764 + .../cisco/xr/792/Cisco-IOS-XR-um-adt-cfg.yang | 77 + .../xr/792/Cisco-IOS-XR-um-appmgr-cfg.yang | 209 + .../cisco/xr/792/Cisco-IOS-XR-um-arp-cfg.yang | 296 + .../Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg.yang | 782 + .../792/Cisco-IOS-XR-um-asr9k-fabric-cfg.yang | 103 + ...um-asr9k-hw-module-bfd-hw-offload-cfg.yang | 82 + ...sco-IOS-XR-um-asr9k-hw-module-fia-cfg.yang | 125 + ...-asr9k-hw-module-mgid-mcast-scale-cfg.yang | 50 + ...co-IOS-XR-um-asr9k-hw-module-port-cfg.yang | 462 + ...sco-IOS-XR-um-asr9k-hw-module-prm-cfg.yang | 1164 + ...-asr9k-hw-module-slice-configmode-cfg.yang | 97 + ...IOS-XR-um-asr9k-hw-module-subslot-cfg.yang | 122 + ...Cisco-IOS-XR-um-asr9k-if-ethernet-cfg.yang | 166 + ...-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg.yang | 69 + .../792/Cisco-IOS-XR-um-attestation-cfg.yang | 68 + .../792/Cisco-IOS-XR-um-auto-ip-ring-cfg.yang | 95 + .../xr/792/Cisco-IOS-XR-um-banner-cfg.yang | 2010 + .../xr/792/Cisco-IOS-XR-um-bfd-sbfd-cfg.yang | 545 + .../xr/792/Cisco-IOS-XR-um-call-home-cfg.yang | 1182 + .../cisco/xr/792/Cisco-IOS-XR-um-cdp-cfg.yang | 126 + .../Cisco-IOS-XR-um-cef-accounting-cfg.yang | 292 + ...isco-IOS-XR-um-cef-load-balancing-cfg.yang | 107 + .../xr/792/Cisco-IOS-XR-um-cef-pd-cfg.yang | 54 + .../xr/792/Cisco-IOS-XR-um-cfg-mibs-cfg.yang | 55 + .../xr/792/Cisco-IOS-XR-um-cinetd-cfg.yang | 51 + .../xr/792/Cisco-IOS-XR-um-cli-alias-cfg.yang | 305 + .../xr/792/Cisco-IOS-XR-um-clock-cfg.yang | 2970 ++ .../xr/792/Cisco-IOS-XR-um-clock-exr-cfg.yang | 2945 ++ .../Cisco-IOS-XR-um-clock-interface-cfg.yang | 2154 + .../Cisco-IOS-XR-um-config-commit-cfg.yang | 175 + .../Cisco-IOS-XR-um-config-display-cfg.yang | 67 + .../Cisco-IOS-XR-um-config-hostname-cfg.yang | 69 + .../792/Cisco-IOS-XR-um-config-mode-cfg.yang | 50 + ...Cisco-IOS-XR-um-config-validation-cfg.yang | 104 + .../Cisco-IOS-XR-um-conflict-policy-cfg.yang | 159 + .../Cisco-IOS-XR-um-cont-breakout-cfg.yang | 88 + .../xr/792/Cisco-IOS-XR-um-cont-cpri-cfg.yang | 155 + .../xr/792/Cisco-IOS-XR-um-cont-dwdm-cfg.yang | 1120 + .../792/Cisco-IOS-XR-um-cont-ether-cfg.yang | 286 + ...co-IOS-XR-um-cont-ether-macsec-pm-cfg.yang | 10384 +++++ .../xr/792/Cisco-IOS-XR-um-cont-fc-cfg.yang | 301 + .../792/Cisco-IOS-XR-um-cont-oc-pm-cfg.yang | 637 + .../xr/792/Cisco-IOS-XR-um-cont-odu-cfg.yang | 1178 + ...XR-um-cont-odu-otu-dwdm-optics-pm-cfg.yang | 9323 ++++ .../792/Cisco-IOS-XR-um-cont-optics-cfg.yang | 1709 + .../Cisco-IOS-XR-um-cont-optics-mode-cfg.yang | 90 + ...Cisco-IOS-XR-um-cont-optics-speed-cfg.yang | 89 + .../xr/792/Cisco-IOS-XR-um-cont-otu-cfg.yang | 576 + .../Cisco-IOS-XR-um-cont-port-mode-cfg.yang | 1046 + .../792/Cisco-IOS-XR-um-cont-sonet-cfg.yang | 882 + .../Cisco-IOS-XR-um-cont-sonet-pm-cfg.yang | 1171 + .../xr/792/Cisco-IOS-XR-um-cont-stm-cfg.yang | 243 + .../792/Cisco-IOS-XR-um-cont-stm-pm-cfg.yang | 1017 + .../xr/792/Cisco-IOS-XR-um-cont-sts-cfg.yang | 153 + .../792/Cisco-IOS-XR-um-cont-sts-pm-cfg.yang | 257 + .../792/Cisco-IOS-XR-um-cont-vc-pm-cfg.yang | 387 + .../792/Cisco-IOS-XR-um-cont-wanphy-cfg.yang | 213 + .../Cisco-IOS-XR-um-control-plane-cfg.yang | 3043 ++ ...sco-IOS-XR-um-control-plane-local-cfg.yang | 95 + .../xr/792/Cisco-IOS-XR-um-crypto-cfg.yang | 1022 + .../xr/792/Cisco-IOS-XR-um-dac-rate-cfg.yang | 106 + ...IOS-XR-um-dci-fabric-interconnect-cfg.yang | 260 + .../xr/792/Cisco-IOS-XR-um-dhcp-ipv4-cfg.yang | 5270 +++ .../xr/792/Cisco-IOS-XR-um-dhcp-ipv6-cfg.yang | 1351 + .../792/Cisco-IOS-XR-um-display-qos-cfg.yang | 77 + .../xr/792/Cisco-IOS-XR-um-domain-cfg.yang | 353 + .../xr/792/Cisco-IOS-XR-um-dot1x-cfg.yang | 467 + .../Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg.yang | 250 + ...OS-XR-um-dyn-tmpl-monitor-session-cfg.yang | 834 + .../Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg.yang | 86 + ...IOS-XR-um-dyn-tmpl-service-policy-cfg.yang | 259 + ...-um-dynamic-template-access-group-cfg.yang | 154 + .../Cisco-IOS-XR-um-dynamic-template-cfg.yang | 105 + ...OS-XR-um-dynamic-template-dhcpv6d-cfg.yang | 99 + ...o-IOS-XR-um-dynamic-template-igmp-cfg.yang | 180 + ...o-IOS-XR-um-dynamic-template-ipv4-cfg.yang | 120 + ...o-IOS-XR-um-dynamic-template-ipv6-cfg.yang | 117 + ...co-IOS-XR-um-dynamic-template-vrf-cfg.yang | 81 + .../792/Cisco-IOS-XR-um-environment-cfg.yang | 232 + .../Cisco-IOS-XR-um-error-disable-cfg.yang | 350 + .../792/Cisco-IOS-XR-um-ethernet-cfm-cfg.yang | 1177 + .../792/Cisco-IOS-XR-um-ethernet-oam-cfg.yang | 1679 + .../Cisco-IOS-XR-um-ethernet-ring-cfg.yang | 106 + .../792/Cisco-IOS-XR-um-ethernet-sat-cfg.yang | 378 + ...-um-ethernet-services-access-list-cfg.yang | 286 + .../792/Cisco-IOS-XR-um-ethernet-sla-cfg.yang | 781 + .../Cisco-IOS-XR-um-ethernet-udld-cfg.yang | 133 + .../Cisco-IOS-XR-um-event-manager-cfg.yang | 278 + ...OS-XR-um-event-manager-policy-map-cfg.yang | 692 + .../xr/792/Cisco-IOS-XR-um-evpn-host-cfg.yang | 269 + .../xr/792/Cisco-IOS-XR-um-exception-cfg.yang | 71 + .../Cisco-IOS-XR-um-explicit-paths-cfg.yang | 513 + .../Cisco-IOS-XR-um-fault-profile-cfg.yang | 1997 + ...co-IOS-XR-um-filesystem-inventory-cfg.yang | 122 + .../xr/792/Cisco-IOS-XR-um-flow-cfg.yang | 1993 + .../xr/792/Cisco-IOS-XR-um-flowspec-cfg.yang | 221 + .../cisco/xr/792/Cisco-IOS-XR-um-fpd-cfg.yang | 73 + ...S-XR-um-frequency-synchronization-cfg.yang | 5257 +++ .../xr/792/Cisco-IOS-XR-um-ftp-tftp-cfg.yang | 636 + .../Cisco-IOS-XR-um-gnss-receiver-cfg.yang | 604 + .../xr/792/Cisco-IOS-XR-um-grpc-cfg.yang | 471 + .../xr/792/Cisco-IOS-XR-um-hostname-cfg.yang | 55 + .../792/Cisco-IOS-XR-um-http-client-cfg.yang | 191 + .../Cisco-IOS-XR-um-hw-module-acl-cfg.yang | 68 + ...R-um-hw-module-early-fast-discard-cfg.yang | 130 + .../792/Cisco-IOS-XR-um-hw-module-l3-cfg.yang | 159 + ...co-IOS-XR-um-hw-module-port-range-cfg.yang | 125 + ...Cisco-IOS-XR-um-hw-module-profile-cfg.yang | 2492 + .../Cisco-IOS-XR-um-hw-module-quad-cfg.yang | 99 + ...Cisco-IOS-XR-um-hw-module-service-cfg.yang | 85 + .../Cisco-IOS-XR-um-hw-module-shut-cfg.yang | 78 + ...Cisco-IOS-XR-um-hw-module-subslot-cfg.yang | 64 + .../Cisco-IOS-XR-um-hw-module-vrf-cfg.yang | 61 + .../xr/792/Cisco-IOS-XR-um-icmp-cfg.yang | 635 + .../Cisco-IOS-XR-um-if-access-group-cfg.yang | 452 + .../xr/792/Cisco-IOS-XR-um-if-arp-cfg.yang | 273 + .../xr/792/Cisco-IOS-XR-um-if-bundle-cfg.yang | 828 + ...-IOS-XR-um-if-dhcp-client-options-cfg.yang | 141 + ...isco-IOS-XR-um-if-encap-ambiguous-cfg.yang | 535 + .../792/Cisco-IOS-XR-um-if-ethernet-cfg.yang | 522 + .../Cisco-IOS-XR-um-if-ethernet-lmi-cfg.yang | 136 + .../Cisco-IOS-XR-um-if-ip-address-cfg.yang | 352 + .../Cisco-IOS-XR-um-if-ipsubscriber-cfg.yang | 241 + .../xr/792/Cisco-IOS-XR-um-if-ipv4-cfg.yang | 369 + .../xr/792/Cisco-IOS-XR-um-if-ipv6-cfg.yang | 311 + ...S-XR-um-if-l2trans-service-policy-cfg.yang | 372 + .../Cisco-IOS-XR-um-if-l2transport-cfg.yang | 66 + .../Cisco-IOS-XR-um-if-mac-address-cfg.yang | 75 + .../xr/792/Cisco-IOS-XR-um-if-mpls-cfg.yang | 97 + ...-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg.yang | 128 + ...sco-IOS-XR-um-if-nv-sat-freq-sync-cfg.yang | 73 + ...OS-XR-um-if-nv-sat-service-policy-cfg.yang | 133 + .../xr/792/Cisco-IOS-XR-um-if-nve-cfg.yang | 317 + .../792/Cisco-IOS-XR-um-if-packets-cfg.yang | 74 + ...o-IOS-XR-um-if-service-policy-qos-cfg.yang | 451 + .../xr/792/Cisco-IOS-XR-um-if-tunnel-cfg.yang | 560 + .../xr/792/Cisco-IOS-XR-um-if-vrf-cfg.yang | 153 + .../Cisco-IOS-XR-um-igmp-snooping-cfg.yang | 537 + .../xr/792/Cisco-IOS-XR-um-iidmgr-cfg.yang | 55 + .../xr/792/Cisco-IOS-XR-um-ikev2-cfg.yang | 500 + .../xr/792/Cisco-IOS-XR-um-install-cfg.yang | 122 + .../xr/792/Cisco-IOS-XR-um-interface-cfg.yang | 400 + .../792/Cisco-IOS-XR-um-ip-virtual-cfg.yang | 161 + .../xr/792/Cisco-IOS-XR-um-ipsec-cfg.yang | 251 + .../xr/792/Cisco-IOS-XR-um-ipsla-cfg.yang | 4462 ++ .../Cisco-IOS-XR-um-ipv4-access-list-cfg.yang | 1226 + .../xr/792/Cisco-IOS-XR-um-ipv4-cfg.yang | 138 + .../Cisco-IOS-XR-um-ipv4-prefix-list-cfg.yang | 168 + .../Cisco-IOS-XR-um-ipv6-access-list-cfg.yang | 1088 + .../xr/792/Cisco-IOS-XR-um-ipv6-cfg.yang | 156 + .../792/Cisco-IOS-XR-um-ipv6-mobile-cfg.yang | 1277 + .../xr/792/Cisco-IOS-XR-um-ipv6-nd-cfg.yang | 1160 + .../Cisco-IOS-XR-um-ipv6-prefix-list-cfg.yang | 178 + .../xr/792/Cisco-IOS-XR-um-key-chain-cfg.yang | 1095 + .../792/Cisco-IOS-XR-um-l2-ethernet-cfg.yang | 2446 + .../xr/792/Cisco-IOS-XR-um-l2snoop-cfg.yang | 89 + .../792/Cisco-IOS-XR-um-l2tp-class-cfg.yang | 330 + .../xr/792/Cisco-IOS-XR-um-l2vpn-cfg.yang | 13005 ++++++ .../xr/792/Cisco-IOS-XR-um-lacp-cfg.yang | 67 + .../Cisco-IOS-XR-um-lawful-intercept-cfg.yang | 99 + .../Cisco-IOS-XR-um-license-smart-cfg.yang | 141 + .../xr/792/Cisco-IOS-XR-um-line-cfg.yang | 673 + ...Cisco-IOS-XR-um-line-exec-timeout-cfg.yang | 141 + .../792/Cisco-IOS-XR-um-line-general-cfg.yang | 150 + .../Cisco-IOS-XR-um-line-timestamp-cfg.yang | 153 + .../Cisco-IOS-XR-um-linux-networking-cfg.yang | 1650 + .../xr/792/Cisco-IOS-XR-um-lldp-cfg.yang | 350 + .../xr/792/Cisco-IOS-XR-um-location-cfg.yang | 64 + .../xr/792/Cisco-IOS-XR-um-logging-cfg.yang | 1933 + ...isco-IOS-XR-um-logging-correlator-cfg.yang | 545 + .../Cisco-IOS-XR-um-logging-events-cfg.yang | 159 + .../792/Cisco-IOS-XR-um-lpts-pifib-cfg.yang | 13840 ++++++ ...Cisco-IOS-XR-um-lpts-pifib-domain-cfg.yang | 3209 ++ ...OS-XR-um-lpts-pifib-dynamic-flows-cfg.yang | 3078 ++ ...o-IOS-XR-um-lpts-pifib-police-acl-cfg.yang | 155 + ...co-IOS-XR-um-lpts-pifib-police-np-cfg.yang | 13744 ++++++ .../Cisco-IOS-XR-um-lpts-profiling-cfg.yang | 50 + .../xr/792/Cisco-IOS-XR-um-lpts-punt-cfg.yang | 1016 + ...sco-IOS-XR-um-lpts-punt-flow-trap-cfg.yang | 393 + .../xr/792/Cisco-IOS-XR-um-ltrace-cfg.yang | 168 + .../792/Cisco-IOS-XR-um-mac-persist-cfg.yang | 50 + .../xr/792/Cisco-IOS-XR-um-macsec-cfg.yang | 456 + .../Cisco-IOS-XR-um-mibs-cbqosmib-cfg.yang | 102 + .../Cisco-IOS-XR-um-mibs-eventmib-cfg.yang | 145 + .../792/Cisco-IOS-XR-um-mibs-fabric-cfg.yang | 73 + .../792/Cisco-IOS-XR-um-mibs-ifmib-cfg.yang | 215 + .../792/Cisco-IOS-XR-um-mibs-rfmib-cfg.yang | 69 + .../Cisco-IOS-XR-um-mibs-sensormib-cfg.yang | 69 + .../Cisco-IOS-XR-um-mibs-subscriber-cfg.yang | 337 + .../xr/792/Cisco-IOS-XR-um-mirror-cfg.yang | 51 + .../792/Cisco-IOS-XR-um-mld-snooping-cfg.yang | 524 + .../Cisco-IOS-XR-um-monitor-session-cfg.yang | 2414 + .../792/Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang | 102 + .../xr/792/Cisco-IOS-XR-um-mpls-ldp-cfg.yang | 2229 + .../xr/792/Cisco-IOS-XR-um-mpls-lsd-cfg.yang | 280 + .../xr/792/Cisco-IOS-XR-um-mpls-oam-cfg.yang | 139 + .../792/Cisco-IOS-XR-um-mpls-static-cfg.yang | 879 + .../xr/792/Cisco-IOS-XR-um-mpls-te-cfg.yang | 21886 +++++++++ ...Cisco-IOS-XR-um-multicast-routing-cfg.yang | 4173 ++ ...Cisco-IOS-XR-um-ncs-hw-module-osa-cfg.yang | 925 + ...co-IOS-XR-um-ncs-l2vpn-flood-mode-cfg.yang | 63 + ...XR-um-ncs-lindt-hw-module-profile-cfg.yang | 2323 + ...-IOS-XR-um-ncs1001-hw-module-slot-cfg.yang | 787 + .../792/Cisco-IOS-XR-um-ncs1k-driver-cfg.yang | 711 + ...co-IOS-XR-um-ncs560-cont-portmode-cfg.yang | 162 + .../Cisco-IOS-XR-um-ncs5k-hw-module-cfg.yang | 210 + .../792/Cisco-IOS-XR-um-netconf-yang-cfg.yang | 119 + .../cisco/xr/792/Cisco-IOS-XR-um-nsr-cfg.yang | 50 + .../cisco/xr/792/Cisco-IOS-XR-um-ntp-cfg.yang | 1949 + .../792/Cisco-IOS-XR-um-nv-satellite-cfg.yang | 735 + .../792/Cisco-IOS-XR-um-object-group-cfg.yang | 678 + .../xr/792/Cisco-IOS-XR-um-otnsec-cfg.yang | 176 + .../xr/792/Cisco-IOS-XR-um-password6-cfg.yang | 56 + .../cisco/xr/792/Cisco-IOS-XR-um-pbr-cfg.yang | 132 + .../792/Cisco-IOS-XR-um-pbr-policy-cfg.yang | 747 + .../cisco/xr/792/Cisco-IOS-XR-um-pce-cfg.yang | 2897 ++ ...IOS-XR-um-performance-measurement-cfg.yang | 2802 ++ .../Cisco-IOS-XR-um-performance-mgmt-cfg.yang | 38527 ++++++++++++++++ ...isco-IOS-XR-um-policymap-classmap-cfg.yang | 5226 +++ .../xr/792/Cisco-IOS-XR-um-pool-cfg.yang | 398 + .../792/Cisco-IOS-XR-um-power-mgmt-cfg.yang | 83 + .../cisco/xr/792/Cisco-IOS-XR-um-ppp-cfg.yang | 1010 + .../xr/792/Cisco-IOS-XR-um-pppoe-cfg.yang | 1362 + .../xr/792/Cisco-IOS-XR-um-process-cfg.yang | 290 + .../cisco/xr/792/Cisco-IOS-XR-um-ptp-cfg.yang | 3214 ++ .../Cisco-IOS-XR-um-ptp-log-servo-cfg.yang | 59 + .../cisco/xr/792/Cisco-IOS-XR-um-raw-cfg.yang | 121 + .../cisco/xr/792/Cisco-IOS-XR-um-rcc-cfg.yang | 137 + .../792/Cisco-IOS-XR-um-redundancy-cfg.yang | 261 + .../792/Cisco-IOS-XR-um-route-policy-cfg.yang | 520 + .../792/Cisco-IOS-XR-um-router-amt-cfg.yang | 180 + .../792/Cisco-IOS-XR-um-router-bgp-cfg.yang | 18191 ++++++++ .../792/Cisco-IOS-XR-um-router-eigrp-cfg.yang | 4214 ++ .../792/Cisco-IOS-XR-um-router-hsrp-cfg.yang | 1188 + .../792/Cisco-IOS-XR-um-router-igmp-cfg.yang | 1300 + .../792/Cisco-IOS-XR-um-router-isis-cfg.yang | 10061 ++++ .../792/Cisco-IOS-XR-um-router-mld-cfg.yang | 1211 + .../792/Cisco-IOS-XR-um-router-msdp-cfg.yang | 752 + .../792/Cisco-IOS-XR-um-router-ospf-cfg.yang | 13090 ++++++ .../Cisco-IOS-XR-um-router-ospfv3-cfg.yang | 8404 ++++ .../792/Cisco-IOS-XR-um-router-pim-cfg.yang | 6311 +++ .../792/Cisco-IOS-XR-um-router-rib-cfg.yang | 497 + .../792/Cisco-IOS-XR-um-router-rip-cfg.yang | 1846 + .../Cisco-IOS-XR-um-router-static-cfg.yang | 11921 +++++ .../792/Cisco-IOS-XR-um-router-vrrp-cfg.yang | 727 + .../xr/792/Cisco-IOS-XR-um-rsvp-cfg.yang | 1332 + .../cisco/xr/792/Cisco-IOS-XR-um-sam-cfg.yang | 63 + .../cisco/xr/792/Cisco-IOS-XR-um-sap-cfg.yang | 68 + .../xr/792/Cisco-IOS-XR-um-script-cfg.yang | 248 + .../Cisco-IOS-XR-um-segment-routing-cfg.yang | 264 + ...co-IOS-XR-um-segment-routing-srv6-cfg.yang | 230 + .../xr/792/Cisco-IOS-XR-um-service-cfg.yang | 46 + ...-um-service-sysadmin-login-banner-cfg.yang | 50 + ...isco-IOS-XR-um-service-timestamps-cfg.yang | 132 + ...isco-IOS-XR-um-session-redundancy-cfg.yang | 341 + .../792/Cisco-IOS-XR-um-sks-server-cfg.yang | 255 + .../792/Cisco-IOS-XR-um-snmp-server-cfg.yang | 4075 ++ ...o-IOS-XR-um-snmp-server-mroutemib-cfg.yang | 59 + ...-snmp-server-notification-log-mib-cfg.yang | 94 + .../Cisco-IOS-XR-um-spanning-tree-cfg.yang | 1814 + .../cisco/xr/792/Cisco-IOS-XR-um-ssh-cfg.yang | 825 + .../cisco/xr/792/Cisco-IOS-XR-um-ssm-cfg.yang | 54 + .../792/Cisco-IOS-XR-um-statistics-cfg.yang | 101 + ...o-IOS-XR-um-subscriber-accounting-cfg.yang | 368 + .../Cisco-IOS-XR-um-subscriber-arp-cfg.yang | 63 + .../792/Cisco-IOS-XR-um-subscriber-cfg.yang | 615 + .../Cisco-IOS-XR-um-subscriber-pta-cfg.yang | 67 + ...o-IOS-XR-um-subscriber-redundancy-cfg.yang | 722 + .../Cisco-IOS-XR-um-subscriber-ush-cfg.yang | 75 + .../cisco/xr/792/Cisco-IOS-XR-um-tcp-cfg.yang | 400 + ...-IOS-XR-um-telemetry-model-driven-cfg.yang | 801 + .../xr/792/Cisco-IOS-XR-um-telnet-cfg.yang | 244 + .../Cisco-IOS-XR-um-terminal-device-cfg.yang | 755 + .../cisco/xr/792/Cisco-IOS-XR-um-tpa-cfg.yang | 769 + .../xr/792/Cisco-IOS-XR-um-track-cfg.yang | 1998 + ...Cisco-IOS-XR-um-traffic-collector-cfg.yang | 225 + .../792/Cisco-IOS-XR-um-traps-alarm-cfg.yang | 55 + .../Cisco-IOS-XR-um-traps-bridgemib-cfg.yang | 55 + .../Cisco-IOS-XR-um-traps-bulkstat-cfg.yang | 64 + ...Cisco-IOS-XR-um-traps-config-copy-cfg.yang | 55 + .../792/Cisco-IOS-XR-um-traps-entity-cfg.yang | 79 + ...IOS-XR-um-traps-entity-redundancy-cfg.yang | 69 + ...isco-IOS-XR-um-traps-entity-state-cfg.yang | 64 + .../792/Cisco-IOS-XR-um-traps-flash-cfg.yang | 64 + .../Cisco-IOS-XR-um-traps-fru-ctrl-cfg.yang | 55 + .../792/Cisco-IOS-XR-um-traps-gnss-cfg.yang | 49 + .../792/Cisco-IOS-XR-um-traps-ipsec-cfg.yang | 86 + .../792/Cisco-IOS-XR-um-traps-ipsla-cfg.yang | 55 + .../792/Cisco-IOS-XR-um-traps-l2tun-cfg.yang | 78 + .../Cisco-IOS-XR-um-traps-mpls-ldp-cfg.yang | 73 + .../792/Cisco-IOS-XR-um-traps-msdp-cfg.yang | 59 + .../xr/792/Cisco-IOS-XR-um-traps-otn-cfg.yang | 55 + .../xr/792/Cisco-IOS-XR-um-traps-pim-cfg.yang | 74 + .../792/Cisco-IOS-XR-um-traps-power-cfg.yang | 55 + .../792/Cisco-IOS-XR-um-traps-rsvp-cfg.yang | 69 + ...R-um-traps-selective-vrf-download-cfg.yang | 59 + .../792/Cisco-IOS-XR-um-traps-syslog-cfg.yang | 55 + .../792/Cisco-IOS-XR-um-traps-system-cfg.yang | 55 + .../cisco/xr/792/Cisco-IOS-XR-um-udp-cfg.yang | 270 + .../xr/792/Cisco-IOS-XR-um-vpdn-cfg.yang | 407 + .../cisco/xr/792/Cisco-IOS-XR-um-vrf-cfg.yang | 787 + .../xr/792/Cisco-IOS-XR-um-vty-pool-cfg.yang | 174 + .../xr/792/Cisco-IOS-XR-um-watchd-cfg.yang | 51 + .../xr/792/Cisco-IOS-XR-um-watchdog-cfg.yang | 292 + .../xr/792/Cisco-IOS-XR-um-xml-agent-cfg.yang | 508 + .../792/Cisco-IOS-XR-um-yang-server-cfg.yang | 57 + .../792/Cisco-IOS-XR-upgrade-fpd-ng-act.yang | 70 + .../xr/792/Cisco-IOS-XR-vether-mode-cfg.yang | 37 + .../xr/792/Cisco-IOS-XR-vservice-cfg.yang | 376 + .../xr/792/Cisco-IOS-XR-wanphy-ui-cfg.yang | 179 + .../792/Cisco-IOS-XR-wanphy-ui-oper-sub1.yang | 298 + .../xr/792/Cisco-IOS-XR-wanphy-ui-oper.yang | 72 + .../cisco/xr/792/Cisco-IOS-XR-watchd-cfg.yang | 213 + ...death-notif-configured-proc-oper-sub1.yang | 70 + ...R-wd-death-notif-configured-proc-oper.yang | 73 + .../xr/792/Cisco-IOS-XR-wd-oper-sub1.yang | 225 + vendor/cisco/xr/792/Cisco-IOS-XR-wd-oper.yang | 91 + .../792/Cisco-IOS-XR-wd-proc-state-cfg.yang | 106 + .../Cisco-IOS-XR-wd-proc-state-oper-sub1.yang | 70 + .../792/Cisco-IOS-XR-wd-proc-state-oper.yang | 55 + .../Cisco-IOS-XR-wdsysmon-fd-oper-sub1.yang | 155 + .../xr/792/Cisco-IOS-XR-wdsysmon-fd-oper.yang | 77 + ...sco-IOS-XR-wdsysmon-fd-proc-oper-sub1.yang | 151 + .../Cisco-IOS-XR-wdsysmon-fd-proc-oper.yang | 95 + .../Cisco-IOS-XR-xrv9k-lpts-oper-sub1.yang | 216 + .../xr/792/Cisco-IOS-XR-xrv9k-lpts-oper.yang | 115 + .../792/Cisco-IOS-XR-yang-coverage-act.yang | 131 + .../xr/792/Cisco-IOS-XR-zapdisk-act.yang | 61 + vendor/cisco/xr/792/Cisco-IOS-XR-ztp-act.yang | 163 + vendor/cisco/xr/792/Cisco-IOS-XR-ztp-cfg.yang | 51 + .../xr/792/Cisco-IOS-XR-ztp-oper-sub1.yang | 159 + .../cisco/xr/792/Cisco-IOS-XR-ztp-oper.yang | 65 + vendor/cisco/xr/792/INET-ADDRESS-MIB.yang | 149 + vendor/cisco/xr/792/IPV6-TC.yang | 44 + vendor/cisco/xr/792/README.md | 52 + vendor/cisco/xr/792/SNMP-COMMUNITY-MIB.yang | 112 + vendor/cisco/xr/792/SNMP-FRAMEWORK-MIB.yang | 105 + vendor/cisco/xr/792/SNMP-MPD-MIB.yang | 41 + .../cisco/xr/792/SNMP-NOTIFICATION-MIB.yang | 157 + vendor/cisco/xr/792/SNMP-TARGET-MIB.yang | 238 + .../cisco/xr/792/SNMP-USER-BASED-SM-MIB.yang | 146 + .../cisco/xr/792/SNMP-VIEW-BASED-ACM-MIB.yang | 209 + vendor/cisco/xr/792/SNMPv2-MIB.yang | 193 + vendor/cisco/xr/792/SNMPv2-SMI.yang | 78 + vendor/cisco/xr/792/SNMPv2-TC.yang | 149 + vendor/cisco/xr/792/bh_cardmgr.yang | 36 + vendor/cisco/xr/792/bh_esd.yang | 36 + vendor/cisco/xr/792/canb_cli_clear.yang | 56 + vendor/cisco/xr/792/capabilities-8000.xml | 925 + .../cisco/xr/792/capabilities-asr9k-x64.xml | 1110 + vendor/cisco/xr/792/capabilities-iosxrwbd.xml | 1028 + vendor/cisco/xr/792/capabilities-ncs1001.xml | 850 + vendor/cisco/xr/792/capabilities-ncs1004.xml | 884 + vendor/cisco/xr/792/capabilities-ncs1010.xml | 827 + vendor/cisco/xr/792/capabilities-ncs1k.xml | 844 + vendor/cisco/xr/792/capabilities-ncs540.xml | 1048 + .../xr/792/capabilities-ncs540l-aarch64.xml | 901 + vendor/cisco/xr/792/capabilities-ncs540l.xml | 923 + vendor/cisco/xr/792/capabilities-ncs5500.xml | 1072 + vendor/cisco/xr/792/capabilities-ncs560.xml | 999 + vendor/cisco/xr/792/capabilities-ncs5700.xml | 910 + vendor/cisco/xr/792/capabilities-ncs5k.xml | 925 + vendor/cisco/xr/792/capabilities-xrv9k.xml | 969 + vendor/cisco/xr/792/ccc.yang | 1093 + vendor/cisco/xr/792/cisco-semver.yang | 87 + .../cisco-xr-ietf-netconf-acm-deviations.yang | 60 + ...xr-ietf-netconf-monitoring-deviations.yang | 52 + ...cisco-xr-ietf-yang-library-deviations.yang | 49 + .../cisco-xr-openconfig-acl-deviations.yang | 181 + ...cisco-xr-openconfig-alarms-deviations.yang | 52 + .../cisco-xr-openconfig-bfd-deviations.yang | 154 + ...o-xr-openconfig-bgp-policy-deviations.yang | 48 + ...-xr-openconfig-if-ethernet-deviations.yang | 66 + .../cisco-xr-openconfig-if-ip-deviations.yang | 462 + ...co-xr-openconfig-if-ip-ext-deviations.yang | 69 + ...co-xr-openconfig-if-tunnel-deviations.yang | 302 + ...o-xr-openconfig-interfaces-deviations.yang | 50 + ...-xr-openconfig-isis-policy-deviations.yang | 71 + .../cisco-xr-openconfig-lacp-deviations.yang | 55 + ...r-openconfig-local-routing-deviations.yang | 56 + ...cisco-xr-openconfig-macsec-deviations.yang | 95 + ...penconfig-network-instance-deviations.yang | 2544 + ...enconfig-optical-amplifier-deviations.yang | 385 + ...penconfig-platform-deviations-ncs1004.yang | 226 + ...xr-openconfig-platform-deviations-spi.yang | 255 + ...openconfig-platform-deviations-spirit.yang | 231 + ...r-openconfig-platform-port-deviations.yang | 54 + ...xr-openconfig-platform-psu-deviations.yang | 49 + ...atform-transceiver-deviations-routing.yang | 270 + ...onfig-platform-transceiver-deviations.yang | 245 + .../cisco-xr-openconfig-qos-deviations.yang | 799 + ...-openconfig-routing-policy-deviations.yang | 87 + ...-xr-openconfig-rsvp-sr-ext-deviations.yang | 57 + ...cisco-xr-openconfig-system-deviations.yang | 269 + ...-xr-openconfig-system-grpc-deviations.yang | 68 + ...co-xr-openconfig-telemetry-deviations.yang | 124 + ...nfig-terminal-device-deviations-ncs1k.yang | 336 + ...ig-terminal-device-deviations-routing.yang | 281 + ...nfig-transport-line-common-deviations.yang | 112 + ...-transport-line-protection-deviations.yang | 188 + .../cisco-xr-openconfig-vlan-deviations.yang | 133 + vendor/cisco/xr/792/control_driver.yang | 36 + vendor/cisco/xr/792/ctrl_driver.yang | 36 + vendor/cisco/xr/792/daisyduke_driver.yang | 36 + vendor/cisco/xr/792/dd_driver.yang | 36 + vendor/cisco/xr/792/fit.yang | 143 + vendor/cisco/xr/792/gaspp.yang | 195 + vendor/cisco/xr/792/iana-crypt-hash.yang | 120 + vendor/cisco/xr/792/iana-if-type.yang | 1547 + vendor/cisco/xr/792/ietf-datastores.yang | 117 + vendor/cisco/xr/792/ietf-inet-types.yang | 457 + vendor/cisco/xr/792/ietf-interfaces.yang | 725 + vendor/cisco/xr/792/ietf-netconf-acm.yang | 464 + .../cisco/xr/792/ietf-netconf-monitoring.yang | 558 + vendor/cisco/xr/792/ietf-netconf.yang | 934 + .../xr/792/ietf-restconf-monitoring.yang | 150 + vendor/cisco/xr/792/ietf-syslog-types.yang | 240 + vendor/cisco/xr/792/ietf-yang-library.yang | 544 + vendor/cisco/xr/792/ietf-yang-metadata.yang | 84 + vendor/cisco/xr/792/ietf-yang-smiv2.yang | 146 + vendor/cisco/xr/792/ietf-yang-types.yang | 474 + vendor/cisco/xr/792/nc-notifications.yang | 93 + .../ncs1010/Cisco-IOS-XR-fpd-infra-cfg.yang | 130 + .../Cisco-IOS-XR-fpd-infra-cfg.yang.html | 179 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang | 705 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang.html | 962 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang | 347 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang.html | 735 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang | 541 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang.html | 1085 + .../792/ncs1010/Cisco-IOS-XR-invmgr-oper.yang | 586 + .../Cisco-IOS-XR-invmgr-oper.yang.html | 826 + ...-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang | 440 + ...XR-plat-chas-invmgr-ng-oper-sub1.yang.html | 1027 + ...Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang | 135 + ...-IOS-XR-plat-chas-invmgr-ng-oper.yang.html | 817 + .../Cisco-IOS-XR-terminal-device-cfg.yang | 553 + ...Cisco-IOS-XR-terminal-device-cfg.yang.html | 886 + ...isco-IOS-XR-terminal-device-oper-sub1.yang | 527 + ...IOS-XR-terminal-device-oper-sub1.yang.html | 1050 + .../Cisco-IOS-XR-fpd-infra-cfg.yang | 130 + .../Cisco-IOS-XR-fpd-infra-cfg.yang.html | 179 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang | 705 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang.html | 962 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang | 347 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang.html | 735 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang | 541 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang.html | 1085 + .../Cisco-IOS-XR-invmgr-oper.yang | 586 + .../Cisco-IOS-XR-invmgr-oper.yang.html | 826 + ...-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang | 440 + ...XR-plat-chas-invmgr-ng-oper-sub1.yang.html | 1027 + ...Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang | 135 + ...-IOS-XR-plat-chas-invmgr-ng-oper.yang.html | 817 + .../ncs540l/Cisco-IOS-XR-fpd-infra-cfg.yang | 130 + .../Cisco-IOS-XR-fpd-infra-cfg.yang.html | 179 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang | 705 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang.html | 962 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang | 347 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang.html | 735 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang | 541 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang.html | 1085 + .../792/ncs540l/Cisco-IOS-XR-invmgr-oper.yang | 586 + .../Cisco-IOS-XR-invmgr-oper.yang.html | 826 + ...-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang | 440 + ...XR-plat-chas-invmgr-ng-oper-sub1.yang.html | 1027 + ...Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang | 135 + ...-IOS-XR-plat-chas-invmgr-ng-oper.yang.html | 817 + .../ncs5700/Cisco-IOS-XR-fpd-infra-cfg.yang | 130 + .../Cisco-IOS-XR-fpd-infra-cfg.yang.html | 179 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang | 705 + .../Cisco-IOS-XR-invmgr-oper-sub1.yang.html | 962 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang | 347 + .../Cisco-IOS-XR-invmgr-oper-sub2.yang.html | 735 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang | 541 + .../Cisco-IOS-XR-invmgr-oper-sub3.yang.html | 1085 + .../792/ncs5700/Cisco-IOS-XR-invmgr-oper.yang | 586 + .../Cisco-IOS-XR-invmgr-oper.yang.html | 826 + ...-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang | 440 + ...XR-plat-chas-invmgr-ng-oper-sub1.yang.html | 1027 + ...Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang | 135 + ...-IOS-XR-plat-chas-invmgr-ng-oper.yang.html | 817 + vendor/cisco/xr/792/notifications.yang | 81 + vendor/cisco/xr/792/ntp.yang | 156 + .../cisco/xr/792/openconfig-aaa-radius.yang | 199 + .../cisco/xr/792/openconfig-aaa-tacacs.yang | 155 + vendor/cisco/xr/792/openconfig-aaa-types.yang | 162 + vendor/cisco/xr/792/openconfig-aaa.yang | 840 + vendor/cisco/xr/792/openconfig-acl.yang | 882 + .../cisco/xr/792/openconfig-aft-common.yang | 648 + .../cisco/xr/792/openconfig-aft-ethernet.yang | 125 + vendor/cisco/xr/792/openconfig-aft-ipv4.yang | 124 + vendor/cisco/xr/792/openconfig-aft-ipv6.yang | 124 + vendor/cisco/xr/792/openconfig-aft-mpls.yang | 143 + .../792/openconfig-aft-network-instance.yang | 108 + vendor/cisco/xr/792/openconfig-aft-pf.yang | 202 + vendor/cisco/xr/792/openconfig-aft-types.yang | 81 + vendor/cisco/xr/792/openconfig-aft.yang | 193 + .../cisco/xr/792/openconfig-alarm-types.yang | 139 + vendor/cisco/xr/792/openconfig-alarms.yang | 237 + vendor/cisco/xr/792/openconfig-bfd.yang | 742 + .../openconfig-bgp-common-multiprotocol.yang | 543 + .../792/openconfig-bgp-common-structure.yang | 223 + .../cisco/xr/792/openconfig-bgp-common.yang | 691 + .../cisco/xr/792/openconfig-bgp-errors.yang | 466 + .../cisco/xr/792/openconfig-bgp-global.yang | 439 + .../cisco/xr/792/openconfig-bgp-neighbor.yang | 759 + .../xr/792/openconfig-bgp-peer-group.yang | 300 + .../cisco/xr/792/openconfig-bgp-policy.yang | 1177 + vendor/cisco/xr/792/openconfig-bgp-types.yang | 764 + vendor/cisco/xr/792/openconfig-bgp.yang | 192 + .../xr/792/openconfig-channel-monitor.yang | 340 + .../cisco/xr/792/openconfig-evpn-types.yang | 290 + vendor/cisco/xr/792/openconfig-evpn.yang | 858 + .../cisco/xr/792/openconfig-extensions.yang | 198 + vendor/cisco/xr/792/openconfig-gribi.yang | 39 + .../cisco/xr/792/openconfig-if-aggregate.yang | 245 + .../xr/792/openconfig-if-ethernet-ext.yang | 117 + .../cisco/xr/792/openconfig-if-ethernet.yang | 678 + vendor/cisco/xr/792/openconfig-if-ip-ext.yang | 179 + vendor/cisco/xr/792/openconfig-if-ip.yang | 1328 + vendor/cisco/xr/792/openconfig-if-tunnel.yang | 120 + vendor/cisco/xr/792/openconfig-if-types.yang | 98 + .../cisco/xr/792/openconfig-igmp-types.yang | 50 + vendor/cisco/xr/792/openconfig-igmp.yang | 306 + .../cisco/xr/792/openconfig-inet-types.yang | 452 + .../cisco/xr/792/openconfig-interfaces.yang | 1106 + .../xr/792/openconfig-isis-lsdb-types.yang | 703 + vendor/cisco/xr/792/openconfig-isis-lsp.yang | 3653 ++ .../cisco/xr/792/openconfig-isis-policy.yang | 212 + .../cisco/xr/792/openconfig-isis-routing.yang | 452 + .../cisco/xr/792/openconfig-isis-types.yang | 401 + vendor/cisco/xr/792/openconfig-isis.yang | 2087 + .../xr/792/openconfig-keychain-types.yang | 140 + vendor/cisco/xr/792/openconfig-keychain.yang | 299 + vendor/cisco/xr/792/openconfig-lacp.yang | 500 + vendor/cisco/xr/792/openconfig-license.yang | 177 + .../cisco/xr/792/openconfig-lldp-types.yang | 306 + vendor/cisco/xr/792/openconfig-lldp.yang | 660 + .../xr/792/openconfig-local-routing.yang | 438 + .../cisco/xr/792/openconfig-macsec-types.yang | 50 + vendor/cisco/xr/792/openconfig-macsec.yang | 834 + vendor/cisco/xr/792/openconfig-messages.yang | 221 + vendor/cisco/xr/792/openconfig-metadata.yang | 46 + vendor/cisco/xr/792/openconfig-mpls-igp.yang | 92 + vendor/cisco/xr/792/openconfig-mpls-ldp.yang | 96 + vendor/cisco/xr/792/openconfig-mpls-rsvp.yang | 1455 + vendor/cisco/xr/792/openconfig-mpls-sr.yang | 149 + .../cisco/xr/792/openconfig-mpls-static.yang | 342 + vendor/cisco/xr/792/openconfig-mpls-te.yang | 1386 + .../cisco/xr/792/openconfig-mpls-types.yang | 465 + vendor/cisco/xr/792/openconfig-mpls.yang | 769 + .../792/openconfig-network-instance-l2.yang | 284 + .../792/openconfig-network-instance-l3.yang | 245 + .../openconfig-network-instance-types.yang | 329 + .../xr/792/openconfig-network-instance.yang | 1260 + .../xr/792/openconfig-optical-amplifier.yang | 544 + .../xr/792/openconfig-optical-attenuator.yang | 213 + .../cisco/xr/792/openconfig-ospf-policy.yang | 199 + .../cisco/xr/792/openconfig-ospf-types.yang | 795 + .../792/openconfig-ospfv2-area-interface.yang | 498 + .../cisco/xr/792/openconfig-ospfv2-area.yang | 193 + .../xr/792/openconfig-ospfv2-common.yang | 115 + .../xr/792/openconfig-ospfv2-global.yang | 533 + .../cisco/xr/792/openconfig-ospfv2-lsdb.yang | 2379 + vendor/cisco/xr/792/openconfig-ospfv2.yang | 133 + vendor/cisco/xr/792/openconfig-p4rt.yang | 148 + .../xr/792/openconfig-packet-match-types.yang | 368 + .../cisco/xr/792/openconfig-packet-match.yang | 435 + .../openconfig-pf-forwarding-policies.yang | 423 + .../xr/792/openconfig-pf-interfaces.yang | 156 + .../xr/792/openconfig-pf-path-groups.yang | 145 + vendor/cisco/xr/792/openconfig-pf-srte.yang | 297 + vendor/cisco/xr/792/openconfig-pim-types.yang | 85 + vendor/cisco/xr/792/openconfig-pim.yang | 445 + .../cisco/xr/792/openconfig-platform-cpu.yang | 72 + .../cisco/xr/792/openconfig-platform-ext.yang | 83 + .../cisco/xr/792/openconfig-platform-fan.yang | 77 + .../xr/792/openconfig-platform-linecard.yang | 131 + .../xr/792/openconfig-platform-port.yang | 241 + .../cisco/xr/792/openconfig-platform-psu.yang | 146 + .../xr/792/openconfig-platform-software.yang | 101 + .../792/openconfig-platform-transceiver.yang | 610 + .../xr/792/openconfig-platform-types.yang | 422 + vendor/cisco/xr/792/openconfig-platform.yang | 1043 + .../xr/792/openconfig-policy-forwarding.yang | 143 + .../cisco/xr/792/openconfig-policy-types.yang | 256 + vendor/cisco/xr/792/openconfig-procmon.yang | 165 + .../cisco/xr/792/openconfig-qos-elements.yang | 1332 + .../xr/792/openconfig-qos-interfaces.yang | 901 + .../cisco/xr/792/openconfig-qos-mem-mgmt.yang | 414 + vendor/cisco/xr/792/openconfig-qos-types.yang | 159 + vendor/cisco/xr/792/openconfig-qos.yang | 136 + .../xr/792/openconfig-rib-bgp-attributes.yang | 939 + .../openconfig-rib-bgp-shared-attributes.yang | 203 + .../openconfig-rib-bgp-table-attributes.yang | 137 + .../xr/792/openconfig-rib-bgp-tables.yang | 916 + .../xr/792/openconfig-rib-bgp-types.yang | 269 + vendor/cisco/xr/792/openconfig-rib-bgp.yang | 239 + .../xr/792/openconfig-routing-policy.yang | 1278 + .../cisco/xr/792/openconfig-rsvp-sr-ext.yang | 390 + .../xr/792/openconfig-sampling-sflow.yang | 310 + .../792/openconfig-segment-routing-types.yang | 158 + .../xr/792/openconfig-segment-routing.yang | 780 + .../cisco/xr/792/openconfig-system-grpc.yang | 209 + .../xr/792/openconfig-system-logging.yang | 503 + .../xr/792/openconfig-system-terminal.yang | 249 + vendor/cisco/xr/792/openconfig-system.yang | 1167 + .../xr/792/openconfig-telemetry-types.yang | 124 + vendor/cisco/xr/792/openconfig-telemetry.yang | 782 + .../xr/792/openconfig-terminal-device.yang | 1489 + .../792/openconfig-transport-line-common.yang | 317 + .../openconfig-transport-line-protection.yang | 623 + .../xr/792/openconfig-transport-types.yang | 1047 + vendor/cisco/xr/792/openconfig-types.yang | 471 + .../cisco/xr/792/openconfig-vlan-types.yang | 283 + vendor/cisco/xr/792/openconfig-vlan.yang | 989 + .../cisco/xr/792/openconfig-yang-types.yang | 230 + vendor/cisco/xr/792/opertest1.yang | 203 + vendor/cisco/xr/792/platform-metadata.json | 276 + vendor/cisco/xr/792/tailf-aaa.yang | 393 + vendor/cisco/xr/792/tailf-actions.yang | 54 + vendor/cisco/xr/792/tailf-cli-extensions.yang | 3469 ++ .../cisco/xr/792/tailf-common-monitoring.yang | 863 + vendor/cisco/xr/792/tailf-common-query.yang | 279 + vendor/cisco/xr/792/tailf-common.yang | 3514 ++ .../cisco/xr/792/tailf-confd-monitoring.yang | 61 + .../cisco/xr/792/tailf-meta-extensions.yang | 153 + .../xr/792/tailf-netconf-monitoring.yang | 289 + vendor/cisco/xr/792/tailf-netconf-query.yang | 93 + vendor/cisco/xr/792/tailf-xsd-types.yang | 90 + vendor/cisco/xr/792/valtest.yang | 33 + vendor/cisco/xr/792/vplatform.yang | 105 + .../xr/792/yang_library_module_set_792.xml | 6671 +++ vendor/cisco/xr/check.sh | 2 +- 2056 files changed, 1318721 insertions(+), 1 deletion(-) create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang.html create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang.html create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang.html create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang.html create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang create mode 100644 vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html create mode 100644 vendor/cisco/xr/792/Available-Content.md create mode 100644 vendor/cisco/xr/792/BIC/Cisco-IOS-XR-cnbng-nal-oper.MD create mode 100644 vendor/cisco/xr/792/BIC/Cisco-IOS-XR-invmgr-oper.MD create mode 100644 vendor/cisco/xr/792/BIC/Cisco-IOS-XR-iosxrwbd-qos-oper.MD create mode 100644 vendor/cisco/xr/792/BIC/Cisco-IOS-XR-l2vpn-oper.MD create mode 100644 vendor/cisco/xr/792/BIC/Cisco-IOS-XR-ncs5500-qos-oper.MD create mode 100644 vendor/cisco/xr/792/BIC/Cisco-IOS-XR-pmengine-clear-act.MD create mode 100644 vendor/cisco/xr/792/CISCO-ENTITY-FRU-CONTROL-MIB.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-fib-platform-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Ots-Och-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-aaacore-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-base-mib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-li-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-accounting-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-adt-config-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-apm-src-flexr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ep-port-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fia-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-breakout-port-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-configmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-pwrglide-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-prm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-authenticated-variable-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-call-home-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cdp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cem-class-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cemmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-cfs-check-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-clear-inconsistency-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-rollback-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ciscoapsmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ciscosonetmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-clear-counters-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cli-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cli-diff-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-common-acl-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-autosave-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-mda-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-mibs-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ains-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-clear-prbs-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-otdr-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-detect-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-if-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-custom-showtech-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-daisychain-mgmt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-if-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-drivers-icpe-ethernet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-drivers-mpa-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-eapol-if-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-envmon-alt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-envmon-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-erp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-es-ace-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-sat-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fabhfr-mib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fgid-mgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fia-hw-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub5.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub6.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub7.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fibrechannelmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-flashmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fpd-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-sat-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-fsdbagg-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-gnss-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-hwmod-mpa-reload-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub10.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub11.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub12.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub5.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub6.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub7.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub8.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub9.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-ceredundancymib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-confcopymib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-clock-linux-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-locale-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-ltrace-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-notification-log-mib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-nsr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-placed-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-rt-check-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-systemmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-install-search-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-invproxy-hwmodule-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-mib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-vrf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-icmp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-raw-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-iid-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-srv6-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub5.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ace-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-8000-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-cinetd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-filesystems-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-mfwd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-msdp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ping-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-mgmt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-traceroute-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ace-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ping-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-traceroute-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-isis-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-key-package-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-keyring-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-kim-tpa-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub5.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-li-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-diskenc-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lldp-clear-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lmp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lmp-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-lib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-lpts-punt-flowtrap-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-http-lighttpd-yang-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-restconf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mdrv-lib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mirror-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-over-udp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ping-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub5.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub6.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub7.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub8.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub9.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-traceroute-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-esd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-hw-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-d-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-f-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-olc-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-olc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-isis-ext.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-mpls-static-ext.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-system-terminal-ext.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-terminal-device-ext.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-opendns-deviceid-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-opticalmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-opticalotsmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-dac-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-quad-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-xponder-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-fan-control-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-media-type-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-centralized-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-optics-speed-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-ct-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-linesystem-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-osa-sp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-otnifmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ownership-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-parser-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-patch-panel-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-bng-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vrf-policy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ping-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-tams-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-clear-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-gl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-portmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-portmode-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-fsm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-gbl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcpiw-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-lcp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ssrp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-syslog-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-sr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ptp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ptp-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-action-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-bng-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-sat-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-qos-mibs-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-remote-attestation-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-roe-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-se-cgn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-common-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sfi-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-copy-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-delete-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sirius-ptp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sks-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-errors.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub5.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub6.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub7.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-bridgemib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscosensormib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entityextmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entstatemib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-frucontrolmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-mib-rfmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-syslogmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-snmp-test-trap-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-bfd-hw-offload-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ssh-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ssm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-nal-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-mibs-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-switch-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-syncc-controller-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-aaa-show.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-command-accounting.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-disaster-recovery.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-alarm-mgr.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asic-errors-ael.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-card-mgr.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-asr9k.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5502.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs55A1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-cm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-asr9k.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5501.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5502.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs55A1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-debug-trace.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ds.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-dumper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-mib.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-sensor-mib.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-mib.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-tc-mib.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-eobc-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-clear.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-debug.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mac.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-summary.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trace.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ext-alarm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-external-usb.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5500.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5501.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5502.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-qsfpdd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module-xrv9k.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-issu.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-led-mgr-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-nto-misc-set-hostname.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl-conf.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-pm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rmon.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rvm-mgr.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sdr-mgr.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-services.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ship.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-bmc.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diag.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diskenc-status.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-inv.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-media.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-obfl.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-cm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-debug-agent.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instagt.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instmgr.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-vmm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-hw-mod.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-system-cluster.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-syslog.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system-cluster.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-show-tacacs.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-tacacs-server.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-test-tacacs.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-time-of-day-timezone.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uptime.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-usb.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm-mgr.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-memmon.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-sysmon.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wdmon.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-zapdisk.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysdb-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-syslog-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-system-reboot-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-system-recovery-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-timing-sets-hwmod-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-traceroute-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-traffmon-netflow-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub4.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub5.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tty-vty-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-types.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-im-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-quad-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-controller-fabric-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-fpd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-local-mac-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-spp-policer-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-udf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-acct-mobile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-diameter-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-nacm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-radius-server-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-tacacs-server-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-task-user-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-access-list-datatypes.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-adt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-appmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-arp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-fabric-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-port-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-if-ethernet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-attestation-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-auto-ip-ring-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-banner-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-bfd-sbfd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-call-home-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cdp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-accounting-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-load-balancing-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-pd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cfg-mibs-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cinetd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cli-alias-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-exr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-interface-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-config-commit-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-config-display-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-config-hostname-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-config-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-config-validation-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-conflict-policy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-breakout-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-cpri-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-dwdm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-fc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-oc-pm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-speed-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-otu-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-port-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-pm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-pm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-pm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-vc-pm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-wanphy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-local-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-crypto-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dac-rate-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dci-fabric-interconnect-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv4-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-display-qos-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-domain-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dot1x-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-access-group-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-igmp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv4-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-vrf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-environment-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-error-disable-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-cfm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-oam-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-ring-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sat-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-services-access-list-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sla-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-udld-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-policy-map-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-evpn-host-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-exception-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-explicit-paths-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-fault-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-filesystem-inventory-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-flow-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-flowspec-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-fpd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-frequency-synchronization-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ftp-tftp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-gnss-receiver-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-grpc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hostname-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-http-client-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-acl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-l3-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-port-range-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-quad-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-service-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-shut-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-subslot-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-vrf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-icmp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-access-group-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-arp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-bundle-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-dhcp-client-options-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-encap-ambiguous-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-lmi-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ip-address-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipsubscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv4-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2trans-service-policy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2transport-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mac-address-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mpls-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nve-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-packets-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-service-policy-qos-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-tunnel-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-if-vrf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-igmp-snooping-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-iidmgr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ikev2-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-install-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-interface-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ip-virtual-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsec-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsla-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-access-list-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-prefix-list-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-access-list-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-mobile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-nd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-prefix-list-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-key-chain-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-l2-ethernet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-l2snoop-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-l2tp-class-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-l2vpn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lacp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lawful-intercept-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-license-smart-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-line-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-line-exec-timeout-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-line-general-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-line-timestamp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-linux-networking-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lldp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-location-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-correlator-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-events-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-domain-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-np-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-profiling-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ltrace-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mac-persist-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-macsec-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-cbqosmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-eventmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-fabric-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-ifmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-rfmib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-sensormib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mirror-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mld-snooping-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-monitor-session-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-ldp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-lsd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-oam-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-static-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-te-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-multicast-routing-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-hw-module-osa-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1k-driver-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs560-cont-portmode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs5k-hw-module-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-netconf-yang-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-nsr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ntp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-nv-satellite-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-object-group-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-otnsec-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-password6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-policy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-pce-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-performance-measurement-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-performance-mgmt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-policymap-classmap-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-pool-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-power-mgmt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ppp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-pppoe-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-process-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ptp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ptp-log-servo-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-raw-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-rcc-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-redundancy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-route-policy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-amt-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-bgp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-eigrp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-hsrp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-igmp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-isis-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-mld-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-msdp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-ospf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-ospfv3-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-pim-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-rib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-rip-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-static-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-router-vrrp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-rsvp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-sam-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-sap-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-script-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-segment-routing-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-segment-routing-srv6-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-service-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-service-sysadmin-login-banner-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-service-timestamps-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-session-redundancy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-sks-server-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-snmp-server-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-snmp-server-mroutemib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-snmp-server-notification-log-mib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-spanning-tree-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ssh-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-ssm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-statistics-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-subscriber-accounting-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-subscriber-arp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-subscriber-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-subscriber-pta-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-subscriber-redundancy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-subscriber-ush-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-tcp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-telemetry-model-driven-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-telnet-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-terminal-device-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-tpa-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-track-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traffic-collector-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-alarm-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-bridgemib-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-bulkstat-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-config-copy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-entity-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-entity-redundancy-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-entity-state-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-flash-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-fru-ctrl-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-gnss-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-ipsec-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-ipsla-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-l2tun-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-mpls-ldp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-msdp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-otn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-pim-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-power-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-rsvp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-selective-vrf-download-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-syslog-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-traps-system-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-udp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-vpdn-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-vrf-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-vty-pool-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-watchd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-watchdog-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-xml-agent-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-um-yang-server-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-upgrade-fpd-ng-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-vether-mode-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-vservice-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wanphy-ui-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wanphy-ui-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wanphy-ui-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-watchd-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wd-death-notif-configured-proc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wd-death-notif-configured-proc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wd-proc-state-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wd-proc-state-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wd-proc-state-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wdsysmon-fd-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wdsysmon-fd-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wdsysmon-fd-proc-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-wdsysmon-fd-proc-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-xrv9k-lpts-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-xrv9k-lpts-oper.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-yang-coverage-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-zapdisk-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ztp-act.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ztp-cfg.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ztp-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/Cisco-IOS-XR-ztp-oper.yang create mode 100644 vendor/cisco/xr/792/INET-ADDRESS-MIB.yang create mode 100644 vendor/cisco/xr/792/IPV6-TC.yang create mode 100644 vendor/cisco/xr/792/README.md create mode 100644 vendor/cisco/xr/792/SNMP-COMMUNITY-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMP-FRAMEWORK-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMP-MPD-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMP-NOTIFICATION-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMP-TARGET-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMP-USER-BASED-SM-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMP-VIEW-BASED-ACM-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMPv2-MIB.yang create mode 100644 vendor/cisco/xr/792/SNMPv2-SMI.yang create mode 100644 vendor/cisco/xr/792/SNMPv2-TC.yang create mode 100644 vendor/cisco/xr/792/bh_cardmgr.yang create mode 100644 vendor/cisco/xr/792/bh_esd.yang create mode 100644 vendor/cisco/xr/792/canb_cli_clear.yang create mode 100644 vendor/cisco/xr/792/capabilities-8000.xml create mode 100644 vendor/cisco/xr/792/capabilities-asr9k-x64.xml create mode 100644 vendor/cisco/xr/792/capabilities-iosxrwbd.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs1001.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs1004.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs1010.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs1k.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs540.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs540l-aarch64.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs540l.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs5500.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs560.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs5700.xml create mode 100644 vendor/cisco/xr/792/capabilities-ncs5k.xml create mode 100644 vendor/cisco/xr/792/capabilities-xrv9k.xml create mode 100644 vendor/cisco/xr/792/ccc.yang create mode 100644 vendor/cisco/xr/792/cisco-semver.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-ietf-netconf-acm-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-ietf-netconf-monitoring-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-ietf-yang-library-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-acl-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-alarms-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-bfd-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-bgp-policy-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-if-ethernet-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-if-ip-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-if-ip-ext-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-if-tunnel-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-interfaces-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-isis-policy-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-lacp-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-local-routing-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-macsec-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-network-instance-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-optical-amplifier-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-platform-deviations-ncs1004.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-platform-deviations-spi.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-platform-deviations-spirit.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-platform-port-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-platform-psu-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-platform-transceiver-deviations-routing.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-platform-transceiver-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-qos-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-routing-policy-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-rsvp-sr-ext-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-system-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-system-grpc-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-telemetry-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-terminal-device-deviations-ncs1k.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-terminal-device-deviations-routing.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-transport-line-common-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-transport-line-protection-deviations.yang create mode 100644 vendor/cisco/xr/792/cisco-xr-openconfig-vlan-deviations.yang create mode 100644 vendor/cisco/xr/792/control_driver.yang create mode 100644 vendor/cisco/xr/792/ctrl_driver.yang create mode 100644 vendor/cisco/xr/792/daisyduke_driver.yang create mode 100644 vendor/cisco/xr/792/dd_driver.yang create mode 100644 vendor/cisco/xr/792/fit.yang create mode 100644 vendor/cisco/xr/792/gaspp.yang create mode 100644 vendor/cisco/xr/792/iana-crypt-hash.yang create mode 100644 vendor/cisco/xr/792/iana-if-type.yang create mode 100644 vendor/cisco/xr/792/ietf-datastores.yang create mode 100644 vendor/cisco/xr/792/ietf-inet-types.yang create mode 100644 vendor/cisco/xr/792/ietf-interfaces.yang create mode 100644 vendor/cisco/xr/792/ietf-netconf-acm.yang create mode 100644 vendor/cisco/xr/792/ietf-netconf-monitoring.yang create mode 100644 vendor/cisco/xr/792/ietf-netconf.yang create mode 100644 vendor/cisco/xr/792/ietf-restconf-monitoring.yang create mode 100644 vendor/cisco/xr/792/ietf-syslog-types.yang create mode 100644 vendor/cisco/xr/792/ietf-yang-library.yang create mode 100644 vendor/cisco/xr/792/ietf-yang-metadata.yang create mode 100644 vendor/cisco/xr/792/ietf-yang-smiv2.yang create mode 100644 vendor/cisco/xr/792/ietf-yang-types.yang create mode 100644 vendor/cisco/xr/792/nc-notifications.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-fpd-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-fpd-infra-cfg.yang.html create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper-sub2.yang.html create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper-sub3.yang.html create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-invmgr-oper.yang.html create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang create mode 100644 vendor/cisco/xr/792/ncs1010/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html create mode 100644 vendor/cisco/xr/792/ncs1k/Cisco-IOS-XR-terminal-device-cfg.yang create mode 100644 vendor/cisco/xr/792/ncs1k/Cisco-IOS-XR-terminal-device-cfg.yang.html create mode 100644 vendor/cisco/xr/792/ncs1k/Cisco-IOS-XR-terminal-device-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs1k/Cisco-IOS-XR-terminal-device-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-fpd-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-fpd-infra-cfg.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper-sub2.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper-sub3.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper.yang create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-invmgr-oper.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang create mode 100644 vendor/cisco/xr/792/ncs540l-aarch64/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-fpd-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-fpd-infra-cfg.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper-sub2.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper-sub3.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper.yang create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-invmgr-oper.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang create mode 100644 vendor/cisco/xr/792/ncs540l/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-fpd-infra-cfg.yang create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-fpd-infra-cfg.yang.html create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper-sub2.yang create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper-sub2.yang.html create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper-sub3.yang create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper-sub3.yang.html create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper.yang create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-invmgr-oper.yang.html create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang create mode 100644 vendor/cisco/xr/792/ncs5700/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html create mode 100644 vendor/cisco/xr/792/notifications.yang create mode 100644 vendor/cisco/xr/792/ntp.yang create mode 100644 vendor/cisco/xr/792/openconfig-aaa-radius.yang create mode 100644 vendor/cisco/xr/792/openconfig-aaa-tacacs.yang create mode 100644 vendor/cisco/xr/792/openconfig-aaa-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-aaa.yang create mode 100644 vendor/cisco/xr/792/openconfig-acl.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-common.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-ethernet.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-ipv4.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-ipv6.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-mpls.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-network-instance.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-pf.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-aft.yang create mode 100644 vendor/cisco/xr/792/openconfig-alarm-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-alarms.yang create mode 100644 vendor/cisco/xr/792/openconfig-bfd.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-common-multiprotocol.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-common-structure.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-common.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-errors.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-global.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-neighbor.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-peer-group.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-policy.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-bgp.yang create mode 100644 vendor/cisco/xr/792/openconfig-channel-monitor.yang create mode 100644 vendor/cisco/xr/792/openconfig-evpn-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-evpn.yang create mode 100644 vendor/cisco/xr/792/openconfig-extensions.yang create mode 100644 vendor/cisco/xr/792/openconfig-gribi.yang create mode 100644 vendor/cisco/xr/792/openconfig-if-aggregate.yang create mode 100644 vendor/cisco/xr/792/openconfig-if-ethernet-ext.yang create mode 100644 vendor/cisco/xr/792/openconfig-if-ethernet.yang create mode 100644 vendor/cisco/xr/792/openconfig-if-ip-ext.yang create mode 100644 vendor/cisco/xr/792/openconfig-if-ip.yang create mode 100644 vendor/cisco/xr/792/openconfig-if-tunnel.yang create mode 100644 vendor/cisco/xr/792/openconfig-if-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-igmp-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-igmp.yang create mode 100644 vendor/cisco/xr/792/openconfig-inet-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-interfaces.yang create mode 100644 vendor/cisco/xr/792/openconfig-isis-lsdb-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-isis-lsp.yang create mode 100644 vendor/cisco/xr/792/openconfig-isis-policy.yang create mode 100644 vendor/cisco/xr/792/openconfig-isis-routing.yang create mode 100644 vendor/cisco/xr/792/openconfig-isis-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-isis.yang create mode 100644 vendor/cisco/xr/792/openconfig-keychain-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-keychain.yang create mode 100644 vendor/cisco/xr/792/openconfig-lacp.yang create mode 100644 vendor/cisco/xr/792/openconfig-license.yang create mode 100644 vendor/cisco/xr/792/openconfig-lldp-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-lldp.yang create mode 100644 vendor/cisco/xr/792/openconfig-local-routing.yang create mode 100644 vendor/cisco/xr/792/openconfig-macsec-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-macsec.yang create mode 100644 vendor/cisco/xr/792/openconfig-messages.yang create mode 100644 vendor/cisco/xr/792/openconfig-metadata.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls-igp.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls-ldp.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls-rsvp.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls-sr.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls-static.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls-te.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-mpls.yang create mode 100644 vendor/cisco/xr/792/openconfig-network-instance-l2.yang create mode 100644 vendor/cisco/xr/792/openconfig-network-instance-l3.yang create mode 100644 vendor/cisco/xr/792/openconfig-network-instance-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-network-instance.yang create mode 100644 vendor/cisco/xr/792/openconfig-optical-amplifier.yang create mode 100644 vendor/cisco/xr/792/openconfig-optical-attenuator.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospf-policy.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospf-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospfv2-area-interface.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospfv2-area.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospfv2-common.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospfv2-global.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospfv2-lsdb.yang create mode 100644 vendor/cisco/xr/792/openconfig-ospfv2.yang create mode 100644 vendor/cisco/xr/792/openconfig-p4rt.yang create mode 100644 vendor/cisco/xr/792/openconfig-packet-match-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-packet-match.yang create mode 100644 vendor/cisco/xr/792/openconfig-pf-forwarding-policies.yang create mode 100644 vendor/cisco/xr/792/openconfig-pf-interfaces.yang create mode 100644 vendor/cisco/xr/792/openconfig-pf-path-groups.yang create mode 100644 vendor/cisco/xr/792/openconfig-pf-srte.yang create mode 100644 vendor/cisco/xr/792/openconfig-pim-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-pim.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-cpu.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-ext.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-fan.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-linecard.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-port.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-psu.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-software.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-transceiver.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-platform.yang create mode 100644 vendor/cisco/xr/792/openconfig-policy-forwarding.yang create mode 100644 vendor/cisco/xr/792/openconfig-policy-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-procmon.yang create mode 100644 vendor/cisco/xr/792/openconfig-qos-elements.yang create mode 100644 vendor/cisco/xr/792/openconfig-qos-interfaces.yang create mode 100644 vendor/cisco/xr/792/openconfig-qos-mem-mgmt.yang create mode 100644 vendor/cisco/xr/792/openconfig-qos-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-qos.yang create mode 100644 vendor/cisco/xr/792/openconfig-rib-bgp-attributes.yang create mode 100644 vendor/cisco/xr/792/openconfig-rib-bgp-shared-attributes.yang create mode 100644 vendor/cisco/xr/792/openconfig-rib-bgp-table-attributes.yang create mode 100644 vendor/cisco/xr/792/openconfig-rib-bgp-tables.yang create mode 100644 vendor/cisco/xr/792/openconfig-rib-bgp-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-rib-bgp.yang create mode 100644 vendor/cisco/xr/792/openconfig-routing-policy.yang create mode 100644 vendor/cisco/xr/792/openconfig-rsvp-sr-ext.yang create mode 100644 vendor/cisco/xr/792/openconfig-sampling-sflow.yang create mode 100644 vendor/cisco/xr/792/openconfig-segment-routing-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-segment-routing.yang create mode 100644 vendor/cisco/xr/792/openconfig-system-grpc.yang create mode 100644 vendor/cisco/xr/792/openconfig-system-logging.yang create mode 100644 vendor/cisco/xr/792/openconfig-system-terminal.yang create mode 100644 vendor/cisco/xr/792/openconfig-system.yang create mode 100644 vendor/cisco/xr/792/openconfig-telemetry-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-telemetry.yang create mode 100644 vendor/cisco/xr/792/openconfig-terminal-device.yang create mode 100644 vendor/cisco/xr/792/openconfig-transport-line-common.yang create mode 100644 vendor/cisco/xr/792/openconfig-transport-line-protection.yang create mode 100644 vendor/cisco/xr/792/openconfig-transport-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-vlan-types.yang create mode 100644 vendor/cisco/xr/792/openconfig-vlan.yang create mode 100644 vendor/cisco/xr/792/openconfig-yang-types.yang create mode 100644 vendor/cisco/xr/792/opertest1.yang create mode 100644 vendor/cisco/xr/792/platform-metadata.json create mode 100644 vendor/cisco/xr/792/tailf-aaa.yang create mode 100644 vendor/cisco/xr/792/tailf-actions.yang create mode 100644 vendor/cisco/xr/792/tailf-cli-extensions.yang create mode 100644 vendor/cisco/xr/792/tailf-common-monitoring.yang create mode 100644 vendor/cisco/xr/792/tailf-common-query.yang create mode 100644 vendor/cisco/xr/792/tailf-common.yang create mode 100644 vendor/cisco/xr/792/tailf-confd-monitoring.yang create mode 100644 vendor/cisco/xr/792/tailf-meta-extensions.yang create mode 100644 vendor/cisco/xr/792/tailf-netconf-monitoring.yang create mode 100644 vendor/cisco/xr/792/tailf-netconf-query.yang create mode 100644 vendor/cisco/xr/792/tailf-xsd-types.yang create mode 100644 vendor/cisco/xr/792/valtest.yang create mode 100644 vendor/cisco/xr/792/vplatform.yang create mode 100644 vendor/cisco/xr/792/yang_library_module_set_792.xml diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang new file mode 100644 index 000000000..22a945311 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang @@ -0,0 +1,130 @@ +module Cisco-IOS-XR-fpd-infra-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fpd-infra-cfg"; + prefix fpd-infra-cfg; + + 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 fpd-infra package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-fpd-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + fpd: FPD Configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-05 { + description + "Deprecated the native model, replaced by UM model in Exr."; + semver:module-version "1.1.0"; + } + revision 2020-07-06 { + description + "Added auto-upgrade config in display"; + semver:module-version "1.0.0"; + } + revision 2020-05-21 { + description + "Separating eXR and LNT versions for module"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Auto-reload { + type enumeration { + enum "disable" { + value 0; + description + "fpd auto-reload disable"; + } + enum "enable" { + value 1; + description + "fpd auto-reload enable"; + } + } + description + "Auto reload"; + } + + typedef Exclude { + type enumeration { + enum "pm" { + value 1; + description + "fpd auto-upgrade exclude power module"; + } + } + description + "Exclude"; + } + + typedef Auto-upgrade { + type enumeration { + enum "disable" { + value 0; + description + "fpd auto-upgrade disable"; + } + enum "enable" { + value 1; + description + "fpd auto-upgrade enable"; + } + } + description + "Auto upgrade"; + } + + container fpd { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-fpd-cfg.yang which will provide + the compatible functionalities. FPD + Configuration"; + leaf auto-reload { + type Auto-reload; + description + "Enable or disable fpd auto-reload"; + } + leaf exclude { + type Exclude; + description + "Exclude entity for fpd auto-upgrade"; + } + leaf auto-upgrade { + type Auto-upgrade; + description + "Enable or disable fpd auto-upgrade"; + } + } +} diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang.html b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang.html new file mode 100644 index 000000000..fd632d3a4 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-fpd-infra-cfg.yang.html @@ -0,0 +1,179 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
f1module Cisco-IOS-XR-fpd-infra-cfg {f1module Cisco-IOS-XR-fpd-infra-cfg {
2  namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fpd-infra-cfg";2  namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fpd-infra-cfg";
3  prefix fpd-infra-cfg;3  prefix fpd-infra-cfg;
44
5  import cisco-semver {5  import cisco-semver {
6    prefix semver;6    prefix semver;
7  }7  }
88
9  organization9  organization
10    "Cisco Systems, Inc.";10    "Cisco Systems, Inc.";
11  contact11  contact
12    "Cisco Systems, Inc.12    "Cisco Systems, Inc.
13     Customer Service13     Customer Service
14     14     
15     Postal: 170 West Tasman Drive15     Postal: 170 West Tasman Drive
16     San Jose, CA 9513416     San Jose, CA 95134
17     17     
18     Tel: +1 800 553-NETS18     Tel: +1 800 553-NETS
19     19     
20     E-mail: cs-yang@cisco.com";20     E-mail: cs-yang@cisco.com";
21  description21  description
22    "This module contains a collection of YANG definitions22    "This module contains a collection of YANG definitions
23     for Cisco IOS-XR fpd-infra package configuration.23     for Cisco IOS-XR fpd-infra package configuration.
24     24     
25     This model is deprecated and is replaced by25     This model is deprecated and is replaced by
26     Cisco-IOS-XR-um-fpd-cfg.yang which will provide the26     Cisco-IOS-XR-um-fpd-cfg.yang which will provide the
27     compatible functionalities.27     compatible functionalities.
28     28     
29     This module contains definitions29     This module contains definitions
30     for the following management objects:30     for the following management objects:
31       fpd: FPD Configuration31       fpd: FPD Configuration
32     32     
33     Copyright (c) 2013-2022 by Cisco Systems, Inc.33     Copyright (c) 2013-2022 by Cisco Systems, Inc.
34     All rights reserved.";34     All rights reserved.";
3535
36  revision 2022-01-05 {36  revision 2022-01-05 {
37    description37    description
38      "Deprecated the native model, replaced by UM model in Exr.";38      "Deprecated the native model, replaced by UM model in Exr.";
39    semver:module-version "1.1.0";39    semver:module-version "1.1.0";
40  }40  }
41  revision 2020-07-06 {41  revision 2020-07-06 {
42    description42    description
43      "Added auto-upgrade config in display";43      "Added auto-upgrade config in display";
44    semver:module-version "1.0.0";44    semver:module-version "1.0.0";
45  }45  }
46  revision 2020-05-21 {46  revision 2020-05-21 {
47    description47    description
48      "Separating eXR and LNT versions for module";48      "Separating eXR and LNT versions for module";
49    semver:module-version "1.0.0";49    semver:module-version "1.0.0";
50  }50  }
51  revision 2019-04-05 {51  revision 2019-04-05 {
52    description52    description
53      "Establish semantic version baseline.";53      "Establish semantic version baseline.";
54    semver:module-version "1.0.0";54    semver:module-version "1.0.0";
55  }55  }
56  revision 2015-11-09 {56  revision 2015-11-09 {
57    description57    description
58      "IOS XR 6.0 revision.";58      "IOS XR 6.0 revision.";
59  }59  }
6060
61  typedef Auto-reload {61  typedef Auto-reload {
62    type enumeration {62    type enumeration {
63      enum "disable" {63      enum "disable" {
64        value 0;64        value 0;
65        description65        description
66          "fpd auto-reload disable";66          "fpd auto-reload disable";
67      }67      }
68      enum "enable" {68      enum "enable" {
69        value 1;69        value 1;
70        description70        description
71          "fpd auto-reload enable";71          "fpd auto-reload enable";
72      }72      }
73    }73    }
74    description74    description
75      "Auto reload";75      "Auto reload";
76  }76  }
7777
nn78  typedef Exclude {
79    type enumeration {
80      enum "pm" {
81        value 1;
82        description
83          "fpd auto-upgrade exclude power module";
84      }
85    }
86    description
87      "Exclude";
88  }
89 
78  typedef Auto-upgrade {90  typedef Auto-upgrade {
79    type enumeration {91    type enumeration {
80      enum "disable" {92      enum "disable" {
81        value 0;93        value 0;
82        description94        description
83          "fpd auto-upgrade disable";95          "fpd auto-upgrade disable";
84      }96      }
85      enum "enable" {97      enum "enable" {
86        value 1;98        value 1;
87        description99        description
88          "fpd auto-upgrade enable";100          "fpd auto-upgrade enable";
89      }101      }
90    }102    }
91    description103    description
92      "Auto upgrade";104      "Auto upgrade";
93  }105  }
94106
95  container fpd {107  container fpd {
96    status deprecated;108    status deprecated;
97    description109    description
98      "This model is deprecated and is replaced by110      "This model is deprecated and is replaced by
99       Cisco-IOS-XR-um-fpd-cfg.yang which will provide111       Cisco-IOS-XR-um-fpd-cfg.yang which will provide
100       the compatible functionalities.  FPD112       the compatible functionalities.  FPD
101       Configuration";113       Configuration";
102    leaf auto-reload {114    leaf auto-reload {
103      type Auto-reload;115      type Auto-reload;
104      description116      description
105        "Enable or disable fpd auto-reload";117        "Enable or disable fpd auto-reload";
106    }118    }
tt119    leaf exclude {
120      type Exclude;
121      description
122        "Exclude entity for fpd auto-upgrade";
123    }
107    leaf auto-upgrade {124    leaf auto-upgrade {
108      type Auto-upgrade;125      type Auto-upgrade;
109      description126      description
110        "Enable or disable fpd auto-upgrade";127        "Enable or disable fpd auto-upgrade";
111    }128    }
112  }129  }
113}130}
+ + + + +
Legends
+ + + + +
Colors
 Added 
Changed
Deleted
+ + + + +
Links
(f)irst change
(n)ext change
(t)op
+ + + \ No newline at end of file diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang new file mode 100644 index 000000000..71bb27331 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang @@ -0,0 +1,705 @@ +submodule Cisco-IOS-XR-invmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-invmgr-oper { + prefix Cisco-IOS-XR-invmgr-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "3.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping VM-NODEID-INFO { + description + "VM Node ID Information"; + leaf vm-node-id { + type uint32; + description + "VM Node Id Tuple"; + } + } + + grouping NODEID-INFO { + description + "Node ID Information"; + leaf node-id { + type uint32; + description + "Node Id Tuple"; + } + } + + grouping SUPPORTED-INTERFACES-INFO { + description + "Interface Capability"; + leaf name { + type string { + length "0..255"; + } + description + "Name of the interface capability"; + } + } + + grouping PLUGGABLE-TYPE { + description + "Supported Interfaces for pluggable"; + leaf name { + type string { + length "0..255"; + } + description + "Name of the pluggable"; + } + leaf description { + type string { + length "0..255"; + } + description + "Description for the pluggable"; + } + list supported-interface { + description + "List of supported interfaces for the pluggable"; + uses SUPPORTED-INTERFACES-INFO; + } + } + + grouping PLUGGABLE-INFO { + description + "Bag to store the available pluggable types for a + container"; + list pluggable-type { + description + "List of the Pluggables for the container"; + uses PLUGGABLE-TYPE; + } + } + + grouping INV-PARENT-INFO { + description + "Bag to indicate the name of the parent entity"; + leaf name { + type string { + length "0..255"; + } + description + "Parent entity name"; + } + } + + grouping SUBENTITY-INFO { + description + "Subentity Information"; + leaf subentity-name { + type string { + length "0..255"; + } + description + "Describe the Subentity Name"; + } + } + + grouping RMA-DETAIL { + description + "EEPROM RMA data content"; + leaf test-history { + type string { + length "0..255"; + } + description + "RMA detail Test history innformation"; + } + leaf rma-number { + type string { + length "0..255"; + } + description + "RMA tracking number format is N-N-N"; + } + leaf rma-history { + type string { + length "0..255"; + } + description + "RMA history infromation"; + } + } + + grouping DIAG-EEPROM { + description + "Diag EEPROM data content"; + container rma { + description + "Description of Entity RMA Data"; + uses RMA-DETAIL; + } + leaf description { + type string { + length "0..255"; + } + description + "A textual description of physical entity"; + } + leaf idprom-format-rev { + type string { + length "0..255"; + } + description + "Description of Entity IDPROM Format Revision"; + } + leaf controller-family { + type string { + length "0..255"; + } + description + "Description of Entity Controller family"; + } + leaf controller-type { + type string { + length "0..255"; + } + description + "Description of Entity Controller type"; + } + leaf vid { + type string { + length "0..255"; + } + description + "Description of Entity Version ID"; + } + leaf hwid { + type string { + length "0..255"; + } + description + "Description of Entity Hardware Revision"; + } + leaf pid { + type string { + length "0..255"; + } + description + "Description of Entity Product ID"; + } + leaf udi-description { + type string { + length "0..255"; + } + description + "Description of Entity UDI"; + } + leaf udi-name { + type string { + length "0..255"; + } + description + "Description of Entity UDI name"; + } + leaf clei { + type string { + length "0..255"; + } + description + "Common Language Equipment Identifier (CLEI) code"; + } + leaf eci { + type string { + length "0..255"; + } + description + "Equipment Catalog Item (ECI) number"; + } + leaf top-assem-part-num { + type string { + length "0..255"; + } + description + "Description of Top assembly part number"; + } + leaf top-assem-vid { + type string { + length "0..255"; + } + description + "Description of Top assembly revision number"; + } + leaf pca-num { + type string { + length "0..255"; + } + description + "Description of Entity PCA number"; + } + leaf pcavid { + type string { + length "0..255"; + } + description + "Description of Entity PCA revision ID"; + } + leaf chassis-sid { + type string { + length "0..255"; + } + description + "Description of Entity Chassis serial number"; + } + leaf dev-num1 { + type string { + length "0..255"; + } + description + "Deviation Number # 1"; + } + leaf dev-num2 { + type string { + length "0..255"; + } + description + "Deviation Number # 2"; + } + leaf dev-num3 { + type string { + length "0..255"; + } + description + "Deviation Number # 3"; + } + leaf dev-num4 { + type string { + length "0..255"; + } + description + "Deviation Number # 4"; + } + leaf dev-num5 { + type string { + length "0..255"; + } + description + "Deviation Number # 5"; + } + leaf dev-num6 { + type string { + length "0..255"; + } + description + "Deviation Number # 6"; + } + leaf dev-num7 { + type string { + length "0..255"; + } + description + "Deviation Number # 7"; + } + leaf manu-test-data { + type string { + length "0..255"; + } + description + "Manufacturing Test Data"; + } + leaf asset-id { + type string { + length "0..255"; + } + description + "Description of Entity Asset ID"; + } + leaf asset-alias { + type string { + length "0..255"; + } + description + "Description of Entity Asset Alias"; + } + leaf base-mac-address1 { + type string { + length "0..255"; + } + description + "Base Mac Address #1"; + } + leaf mac-add-blk-size1 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #1"; + } + leaf base-mac-address2 { + type string { + length "0..255"; + } + description + "Base Mac Address #2"; + } + leaf mac-add-blk-size2 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #2"; + } + leaf base-mac-address3 { + type string { + length "0..255"; + } + description + "Base Mac Address #3"; + } + leaf mac-add-blk-size3 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #3"; + } + leaf base-mac-address4 { + type string { + length "0..255"; + } + description + "Base Mac Address #4"; + } + leaf mac-add-blk-size4 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #4"; + } + leaf pcb-serial-num { + type string { + length "0..255"; + } + description + "Description of Entity PCB Serial Number"; + } + leaf power-supply-type { + type string { + length "0..255"; + } + description + "Description of Entity Power Supply Type"; + } + leaf power-consumption { + type string { + length "0..255"; + } + description + "Description of Entity Power Consumption"; + } + leaf block-signature { + type string { + length "0..255"; + } + description + "Description of Entity Block Signature"; + } + leaf block-version { + type string { + length "0..255"; + } + description + "Description of Entity Block Version"; + } + leaf block-length { + type string { + length "0..255"; + } + description + "Description of Entity Block Length"; + } + leaf block-checksum { + type string { + length "0..255"; + } + description + "Description of Entity Block Checksum"; + } + leaf eeprom-size { + type string { + length "0..255"; + } + description + "Description of Entity EEPROM Size"; + } + leaf block-count { + type string { + length "0..255"; + } + description + "Description of Entity Block Count"; + } + leaf fru-major-type { + type string { + length "0..255"; + } + description + "Description of Entity FRU Major Type"; + } + leaf fru-minor-type { + type string { + length "0..255"; + } + description + "Description of Entity FRU Minor Type"; + } + leaf oem-string { + type string { + length "0..255"; + } + description + "Description of Entity OEM String"; + } + leaf product-id { + type string { + length "0..255"; + } + description + "Description of Entity Product ID"; + } + leaf serial-number { + type string { + length "0..255"; + } + description + "Description of Entity Serial Number"; + } + leaf part-number { + type string { + length "0..255"; + } + description + "Description of Entity Part Number"; + } + leaf part-revision { + type string { + length "0..255"; + } + description + "Description of Entity Part Revision"; + } + leaf mfg-deviation { + type string { + length "0..255"; + } + description + "Description of Entity MFG Deviation"; + } + leaf hw-version { + type string { + length "0..255"; + } + description + "Description of Entity Hardware Version"; + } + leaf mfg-bits { + type string { + length "0..255"; + } + description + "Description of Entity MFG Bits"; + } + leaf engineer-use { + type string { + length "0..255"; + } + description + "Description of Entity Engineer Use"; + } + leaf snmpoid { + type string { + length "0..255"; + } + description + "Description of Entity SNMP OID"; + } + leaf rma-code { + type string { + length "0..255"; + } + description + "Description of Entity RMA Code"; + } + leaf eci-alpha-number { + type string { + length "0..255"; + } + description + "AlphaNumeric Equipment Catalog Item (ECI) number"; + } + } + + grouping INVMGR-EEPROM-OPAQUE-DATA { + description + "invmgr eeprom opaque data"; + container eeprom { + description + "EEPROM data not from hex data"; + uses DIAG-EEPROM; + } + leaf inv-card-type { + type uint8; + description + "Inventory card type"; + } + leaf opaque-data { + type yang:hex-string; + description + "EEPROM hex data"; + } + leaf opaque-data-size { + type uint32; + description + "size of the EEPROM hex data"; + } + leaf has-eeprom { + type uint32; + description + "use eeprom instead of opaque data"; + } + leaf has-eeprom-format { + type uint32; + description + "has eeprom format "; + } + leaf eeprom-format { + type uint32; + description + "eeprom format"; + } + leaf name { + type string { + length "0..255"; + } + description + "A textual description of physical entity"; + } + leaf description { + type string { + length "0..255"; + } + description + "A textual description of physical entity"; + } + leaf form-factor { + type uint32; + description + "Optics form factor"; + } + leaf connector-type { + type uint32; + description + "Describes the Entity Connector type"; + } + leaf otn-application-code { + type uint32; + description + "Describes the Entity Otn Application Code"; + } + leaf sonet-application-code { + type uint32; + description + "Describes the Entity Sonet Application Code"; + } + leaf ethernet-compliance-code { + type uint32; + description + "Describes the Entity Ethernet Compliance Code"; + } + leaf date-string { + type string { + length "0..255"; + } + description + "Describes the Entity Date string in IDPROM"; + } + leaf vendor-revision { + type string { + length "0..255"; + } + description + "Vendor rev string in IDPROM"; + } + } +} diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang.html b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang.html new file mode 100644 index 000000000..c5fa33bb9 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub1.yang.html @@ -0,0 +1,962 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
f1submodule Cisco-IOS-XR-invmgr-oper-sub1 {f1submodule Cisco-IOS-XR-invmgr-oper-sub1 {
2  belongs-to Cisco-IOS-XR-invmgr-oper {2  belongs-to Cisco-IOS-XR-invmgr-oper {
3    prefix Cisco-IOS-XR-invmgr-oper;3    prefix Cisco-IOS-XR-invmgr-oper;
4  }4  }
55
nn6  import ietf-yang-types {
7    prefix yang;
8  }
6  import cisco-semver {9  import cisco-semver {
7    prefix semver;10    prefix semver;
8  }11  }
912
10  organization13  organization
11    "Cisco Systems, Inc.";14    "Cisco Systems, Inc.";
12  contact15  contact
13    "Cisco Systems, Inc.16    "Cisco Systems, Inc.
14     Customer Service17     Customer Service
15     18     
16     Postal: 170 West Tasman Drive19     Postal: 170 West Tasman Drive
17     San Jose, CA 9513420     San Jose, CA 95134
18     21     
19     Tel: +1 800 553-NETS22     Tel: +1 800 553-NETS
20     23     
21     E-mail: cs-yang@cisco.com";24     E-mail: cs-yang@cisco.com";
22  description25  description
23    "This submodule contains a collection of YANG definitions26    "This submodule contains a collection of YANG definitions
24     for Cisco IOS-XR invmgr package operational data.27     for Cisco IOS-XR invmgr package operational data.
25     28     
26     Copyright (c) 2013-2023 by Cisco Systems, Inc.29     Copyright (c) 2013-2023 by Cisco Systems, Inc.
27     All rights reserved.";30     All rights reserved.";
2831
29  revision 2023-04-16 {32  revision 2023-04-16 {
30    description33    description
31      "Fixing backward compatibility error";34      "Fixing backward compatibility error";
n32    semver:module-version "4.0.0";n35    semver:module-version "3.0.0";
33  }36  }
34  revision 2020-11-09 {37  revision 2020-11-09 {
35    description38    description
36      "Deprecated pluggable-info container39      "Deprecated pluggable-info container
37       2020-07-2440       2020-07-24
38          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR41          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR
39       2020-07-2442       2020-07-24
40          Addition of revision to match LNT.";43          Addition of revision to match LNT.";
41    semver:module-version "3.0.0";44    semver:module-version "3.0.0";
42  }45  }
43  revision 2020-05-08 {46  revision 2020-05-08 {
44    description47    description
45      "Deprecated Inventory:Rack container.48      "Deprecated Inventory:Rack container.
46       2020-03-3049       2020-03-30
47        Changed threshold-value type to int32.50        Changed threshold-value type to int32.
48       2019-10-0751       2019-10-07
49        Added pluggable-info bag.52        Added pluggable-info bag.
50       2019-10-0453       2019-10-04
51        Removed slot-info, vm-done bags.";54        Removed slot-info, vm-done bags.";
52    semver:module-version "2.0.0";55    semver:module-version "2.0.0";
53  }56  }
54  revision 2019-04-05 {57  revision 2019-04-05 {
55    description58    description
56      "Establish semantic version baseline.";59      "Establish semantic version baseline.";
57    semver:module-version "1.0.0";60    semver:module-version "1.0.0";
58  }61  }
59  revision 2019-03-21 {62  revision 2019-03-21 {
60    description63    description
61      "Resolved string constraints issue.";64      "Resolved string constraints issue.";
62  }65  }
63  revision 2018-08-03 {66  revision 2018-08-03 {
64    description67    description
65      "Added slot-info and parent-info bags.";68      "Added slot-info and parent-info bags.";
66  }69  }
67  revision 2018-04-19 {70  revision 2018-04-19 {
68    description71    description
69      "Added additional bags";72      "Added additional bags";
70  }73  }
71  revision 2017-09-07 {74  revision 2017-09-07 {
72    description75    description
73      "Fixed type translation error.";76      "Fixed type translation error.";
74  }77  }
75  revision 2017-05-01 {78  revision 2017-05-01 {
76    description79    description
77      "Fixing backward compatibility error in module.";80      "Fixing backward compatibility error in module.";
78  }81  }
79  revision 2015-11-09 {82  revision 2015-11-09 {
80    description83    description
81      "IOS XR 6.0 revision.";84      "IOS XR 6.0 revision.";
82  }85  }
8386
n84  typedef Threshold-relation {n87  grouping VM-NODEID-INFO {
85    type enumeration {
86      enum "less-than" {
87        value 1;
88        description
89          "Sensor value is less than threshold";
90      }
91      enum "less-or-equal" {
92        value 2;
93        description
94          "Sensor value is lesser than  or equal to
95           threshold";
96      }
97      enum "greater-than" {
98        value 3;
99        description
100          "Sensor value is greater than threshold";
101      }
102      enum "greater-or-equal" {
103        value 4;
104        description
105          "Sensor value is greater than or equal to
106           threshold";
107      }
108      enum "equal" {
109        value 5;
110        description
111          "Sensor value is equal to threshold";
112      }
113      enum "not-equal" {
114        value 6;
115        description
116          "Sensor value is not equal to threshold";
117      }
118    }
119    description
120      "Threshold relation";
121  }
122 
123  typedef Threshold-severity {
124    type enumeration {
125      enum "other" {
126        value 1;
127        description
128          "Other";
129      }
130      enum "minor" {
131        value 10;
132        description
133          "Minor";
134      }
135      enum "major" {
136        value 20;
137        description
138          "Major";
139      }
140      enum "critical" {
141        value 30;
142        description
143          "Critical";
144      }
145    }
146    description
147      "Threshold severity";
148  }
149 
150  typedef Sensor-status {
151    type enumeration {
152      enum "ok" {
153        value 1;
154        description
155          "State ok";
156      }
157      enum "unavailable" {
158        value 2;
159        description
160          "State Unavailable";
161      }
162      enum "non-operational" {
163        value 3;
164        description
165          "State no operational";
166      }
167    }
168    description
169      "Sensor status";
170  }
171 
172  typedef Sensor-data {
173    type enumeration {
174      enum "unknown" {
175        value 2;
176        description
177          "Datatype unknown";
178      }
179      enum "ac-volts" {
180        value 3;
181        description
182          "AC volts";
183      }
184      enum "dc-volts" {
185        value 4;
186        description
187          "DC volts";
188      }
189      enum "amperes" {
190        value 5;
191        description
192          "Amperes";
193      }
194      enum "watts" {
195        value 6;
196        description
197          "Power in watts";
198      }
199      enum "hertz" {
200        value 7;
201        description
202          "Frequency in hertz";
203      }
204      enum "celsius" {
205        value 8;
206        description
207          "Celsius";
208      }
209      enum "rpm" {
210        value 10;
211        description
212          "Rotations per minute";
213      }
214      enum "dbm" {
215        value 14;
216        description
217          "Power in dBm";
218      }
219      enum "db" {
220        value 15;
221        description
222          "Power in dB";
223      }
224    }
225    description
226      "Sensor measurement data types";
227  }
228 
229  typedef Unit {
230    type enumeration {
231      enum "celsius" {
232        description
233          "Degree in celsius";
234      }
235      enum "milli-volts" {
236        description
237          "Milli volts";
238      }
239      enum "milli-amperes" {
240        description
241          "Milli amperes";
242      }
243      enum "rpm" {
244        description
245          "Rotations per minute";
246      }
247      enum "watts" {
248        description
249          "Watts";
250      }
251      enum "dbm" {
252        description
253          "dBm";
254      }
255      enum "db" {
256        description
257          "dB";
258      }
259    }
260    description
261      "Unit information";
262  }
263 
264  grouping ENVMON-THRESHOLD-TYPE {
265    description
266      "Threshold information of a specific type";
267    leaf threshold-severity {
268      type Threshold-severity;
269      description88    description
270        "Indicates minor, major, critical severities";89      "VM Node ID Information";
271    }90    leaf vm-node-id {
272    leaf threshold-relation {
273      type Threshold-relation;
274      description
275        "Indicates relation between sensor value and
276         threshold";
277    }
278    leaf threshold-value {
279      type int32;91      type uint32;
280      description
281        "Value of the configured threshold";
282    }
283    leaf threshold-name {
284      type string {
285        length "0..50";
286      }
287      description
288        "Indicates the Threshold name";
289    }
290  }
291 
292  grouping ENVMON-THRESHOLD-INFO-XML {
293    description92      description
294      "Threshold information";93        "VM Node Id Tuple";
295    list threshold-array {94    }
95  }
96 
97  grouping NODEID-INFO {
296      description98    description
297        "Array of threshold";99      "Node ID Information";
298      uses ENVMON-THRESHOLD-TYPE;100    leaf node-id {
299    }101      type uint32;
300  }
301 
302  grouping ENVMON-SENSOR-INFO-XML {
303    description102      description
304      "Environment monitoring sensor information";103        "Node Id Tuple";
305    container threshold {104    }
105  }
106 
107  grouping SUPPORTED-INTERFACES-INFO {
306      description108    description
307        "Threshold information";109      "Interface Capability";
308      uses ENVMON-THRESHOLD-INFO-XML;110    leaf name {
111      type string {
112        length "0..255";
113      }
114      description
115        "Name of the interface capability";
116    }
117  }
118 
119  grouping PLUGGABLE-TYPE {
120    description
121      "Supported Interfaces for pluggable";
122    leaf name {
123      type string {
124        length "0..255";
125      }
126      description
127        "Name of the pluggable";
309    }128    }
310    leaf description {129    leaf description {
311      type string {130      type string {
n312        length "0..50";n131        length "0..255";
132      }
133      description
134        "Description for the pluggable";
313      }135    }
136    list supported-interface {
137      description
138        "List of supported interfaces for the pluggable";
139      uses SUPPORTED-INTERFACES-INFO;
140    }
141  }
142 
143  grouping PLUGGABLE-INFO {
314      description144    description
315        "Device Name";145      "Bag to store the available pluggable types for a
146       container";
147    list pluggable-type {
148      description
149        "List of the Pluggables for the container";
150      uses PLUGGABLE-TYPE;
151    }
316    }152  }
317    leaf units {153 
318      type Unit;154  grouping INV-PARENT-INFO {
319      description155    description
320        "Units of variable being read";156      "Bag to indicate the name of the parent entity";
321    }
322    leaf value {157    leaf name {
323      type string {158      type string {
t324        length "0..50";t159        length "0..255";
160      }
161      description
162        "Parent entity name";
325      }163    }
164  }
165 
166  grouping SUBENTITY-INFO {
326      description167    description
327        "Current reading of sensor Displays in decimal(ex168      "Subentity Information";
328         1.234) for powersupply sensor type";169    leaf subentity-name {
170      type string {
171        length "0..255";
329    }172      }
330    leaf data-type {173      description
331      type Sensor-data;174        "Describe the Subentity Name";
175    }
176  }
177 
178  grouping RMA-DETAIL {
332      description179    description
333        "Sensor data type";180      "EEPROM RMA data content";
181    leaf test-history {
182      type string {
183        length "0..255";
334    }184      }
335    leaf status {185      description
336      type Sensor-status;186        "RMA detail Test history innformation";
187    }
188    leaf rma-number {
189      type string {
190        length "0..255";
191      }
192      description
193        "RMA tracking number format is N-N-N";
194    }
195    leaf rma-history {
196      type string {
197        length "0..255";
198      }
199      description
200        "RMA history infromation";
201    }
202  }
203 
204  grouping DIAG-EEPROM {
337      description205    description
338        "Sensor operation state";206      "Diag EEPROM data content";
207    container rma {
208      description
209        "Description of Entity RMA Data";
210      uses RMA-DETAIL;
211    }
212    leaf description {
213      type string {
214        length "0..255";
339    }215      }
340    leaf update-rate {216      description
341      type uint32;217        "A textual description of physical entity";
218    }
219    leaf idprom-format-rev {
220      type string {
221        length "0..255";
222      }
223      description
224        "Description of Entity IDPROM Format Revision";
225    }
226    leaf controller-family {
227      type string {
228        length "0..255";
229      }
230      description
231        "Description of Entity Controller family";
232    }
233    leaf controller-type {
234      type string {
235        length "0..255";
236      }
237      description
238        "Description of Entity Controller type";
239    }
240    leaf vid {
241      type string {
242        length "0..255";
243      }
244      description
245        "Description of Entity Version ID";
246    }
247    leaf hwid {
248      type string {
249        length "0..255";
250      }
251      description
252        "Description of Entity Hardware Revision";
253    }
254    leaf pid {
255      type string {
256        length "0..255";
257      }
258      description
259        "Description of Entity Product ID";
260    }
261    leaf udi-description {
262      type string {
263        length "0..255";
264      }
265      description
266        "Description of Entity UDI";
267    }
268    leaf udi-name {
269      type string {
270        length "0..255";
271      }
272      description
273        "Description of Entity UDI name";
274    }
275    leaf clei {
276      type string {
277        length "0..255";
278      }
279      description
280        "Common Language Equipment Identifier (CLEI) code";
281    }
282    leaf eci {
283      type string {
284        length "0..255";
285      }
286      description
287        "Equipment Catalog Item (ECI) number";
288    }
289    leaf top-assem-part-num {
290      type string {
291        length "0..255";
292      }
293      description
294        "Description of Top assembly part number";
295    }
296    leaf top-assem-vid {
297      type string {
298        length "0..255";
299      }
300      description
301        "Description of Top assembly revision number";
302    }
303    leaf pca-num {
304      type string {
305        length "0..255";
306      }
307      description
308        "Description of Entity PCA number";
309    }
310    leaf pcavid {
311      type string {
312        length "0..255";
313      }
314      description
315        "Description of Entity PCA revision ID";
316    }
317    leaf chassis-sid {
318      type string {
319        length "0..255";
320      }
321      description
322        "Description of Entity Chassis serial number";
323    }
324    leaf dev-num1 {
325      type string {
326        length "0..255";
327      }
328      description
329        "Deviation Number # 1";
330    }
331    leaf dev-num2 {
332      type string {
333        length "0..255";
334      }
335      description
336        "Deviation Number # 2";
337    }
338    leaf dev-num3 {
339      type string {
340        length "0..255";
341      }
342      description
343        "Deviation Number # 3";
344    }
345    leaf dev-num4 {
346      type string {
347        length "0..255";
348      }
349      description
350        "Deviation Number # 4";
351    }
352    leaf dev-num5 {
353      type string {
354        length "0..255";
355      }
356      description
357        "Deviation Number # 5";
358    }
359    leaf dev-num6 {
360      type string {
361        length "0..255";
362      }
363      description
364        "Deviation Number # 6";
365    }
366    leaf dev-num7 {
367      type string {
368        length "0..255";
369      }
370      description
371        "Deviation Number # 7";
372    }
373    leaf manu-test-data {
374      type string {
375        length "0..255";
376      }
377      description
378        "Manufacturing Test Data";
379    }
380    leaf asset-id {
381      type string {
382        length "0..255";
383      }
384      description
385        "Description of Entity Asset ID";
386    }
387    leaf asset-alias {
388      type string {
389        length "0..255";
390      }
391      description
392        "Description of Entity Asset Alias";
393    }
394    leaf base-mac-address1 {
395      type string {
396        length "0..255";
397      }
398      description
399        "Base Mac Address #1";
400    }
401    leaf mac-add-blk-size1 {
402      type string {
403        length "0..255";
404      }
405      description
406        "Mac Address Block Size #1";
407    }
408    leaf base-mac-address2 {
409      type string {
410        length "0..255";
411      }
412      description
413        "Base Mac Address #2";
414    }
415    leaf mac-add-blk-size2 {
416      type string {
417        length "0..255";
418      }
419      description
420        "Mac Address Block Size #2";
421    }
422    leaf base-mac-address3 {
423      type string {
424        length "0..255";
425      }
426      description
427        "Base Mac Address #3";
428    }
429    leaf mac-add-blk-size3 {
430      type string {
431        length "0..255";
432      }
433      description
434        "Mac Address Block Size #3";
435    }
436    leaf base-mac-address4 {
437      type string {
438        length "0..255";
439      }
440      description
441        "Base Mac Address #4";
442    }
443    leaf mac-add-blk-size4 {
444      type string {
445        length "0..255";
446      }
447      description
448        "Mac Address Block Size #4";
449    }
450    leaf pcb-serial-num {
451      type string {
452        length "0..255";
453      }
454      description
455        "Description of Entity PCB Serial Number";
456    }
457    leaf power-supply-type {
458      type string {
459        length "0..255";
460      }
461      description
462        "Description of Entity Power Supply Type";
463    }
464    leaf power-consumption {
465      type string {
466        length "0..255";
467      }
468      description
469        "Description of Entity Power Consumption";
470    }
471    leaf block-signature {
472      type string {
473        length "0..255";
474      }
475      description
476        "Description of Entity Block Signature";
477    }
478    leaf block-version {
479      type string {
480        length "0..255";
481      }
482      description
483        "Description of Entity Block Version";
484    }
485    leaf block-length {
486      type string {
487        length "0..255";
488      }
489      description
490        "Description of Entity Block Length";
491    }
492    leaf block-checksum {
493      type string {
494        length "0..255";
495      }
496      description
497        "Description of Entity Block Checksum";
498    }
499    leaf eeprom-size {
500      type string {
501        length "0..255";
502      }
503      description
504        "Description of Entity EEPROM Size";
505    }
506    leaf block-count {
507      type string {
508        length "0..255";
509      }
510      description
511        "Description of Entity Block Count";
512    }
513    leaf fru-major-type {
514      type string {
515        length "0..255";
516      }
517      description
518        "Description of Entity FRU Major Type";
519    }
520    leaf fru-minor-type {
521      type string {
522        length "0..255";
523      }
524      description
525        "Description of Entity FRU Minor Type";
526    }
527    leaf oem-string {
528      type string {
529        length "0..255";
530      }
531      description
532        "Description of Entity OEM String";
533    }
534    leaf product-id {
535      type string {
536        length "0..255";
537      }
538      description
539        "Description of Entity Product ID";
540    }
541    leaf serial-number {
542      type string {
543        length "0..255";
544      }
545      description
546        "Description of Entity Serial Number";
547    }
548    leaf part-number {
549      type string {
550        length "0..255";
551      }
552      description
553        "Description of Entity Part Number";
554    }
555    leaf part-revision {
556      type string {
557        length "0..255";
558      }
559      description
560        "Description of Entity Part Revision";
561    }
562    leaf mfg-deviation {
563      type string {
564        length "0..255";
565      }
566      description
567        "Description of Entity MFG Deviation";
568    }
569    leaf hw-version {
570      type string {
571        length "0..255";
572      }
573      description
574        "Description of Entity Hardware Version";
575    }
576    leaf mfg-bits {
577      type string {
578        length "0..255";
579      }
580      description
581        "Description of Entity MFG Bits";
582    }
583    leaf engineer-use {
584      type string {
585        length "0..255";
586      }
587      description
588        "Description of Entity Engineer Use";
589    }
590    leaf snmpoid {
591      type string {
592        length "0..255";
593      }
594      description
595        "Description of Entity SNMP OID";
596    }
597    leaf rma-code {
598      type string {
599        length "0..255";
600      }
601      description
602        "Description of Entity RMA Code";
603    }
604    leaf eci-alpha-number {
605      type string {
606        length "0..255";
607      }
608      description
609        "AlphaNumeric Equipment Catalog Item (ECI) number";
610    }
611  }
612 
613  grouping INVMGR-EEPROM-OPAQUE-DATA {
342      description614    description
343        "Sensor value update rate; set to 0 if sensor615      "invmgr eeprom opaque data";
344         value is updated and evaluated immediately";616    container eeprom {
617      description
618        "EEPROM data not from hex data";
619      uses DIAG-EEPROM;
620    }
621    leaf inv-card-type {
622      type uint8;
623      description
624        "Inventory card type";
625    }
626    leaf opaque-data {
627      type yang:hex-string;
628      description
629        "EEPROM hex data";
630    }
631    leaf opaque-data-size {
632      type uint32;
633      description
634        "size of the EEPROM hex data";
635    }
636    leaf has-eeprom {
637      type uint32;
638      description
639        "use eeprom instead of opaque data";
640    }
641    leaf has-eeprom-format {
642      type uint32;
643      description
644        "has eeprom format ";
645    }
646    leaf eeprom-format {
647      type uint32;
648      description
649        "eeprom format";
650    }
651    leaf name {
652      type string {
653        length "0..255";
654      }
655      description
656        "A textual description of physical entity";
657    }
658    leaf description {
659      type string {
660        length "0..255";
661      }
662      description
663        "A textual description of physical entity";
664    }
665    leaf form-factor {
666      type uint32;
667      description
668        "Optics form factor";
669    }
670    leaf connector-type {
671      type uint32;
672      description
673        "Describes the Entity Connector type";
674    }
675    leaf otn-application-code {
676      type uint32;
677      description
678        "Describes the Entity Otn Application Code";
679    }
680    leaf sonet-application-code {
681      type uint32;
682      description
683        "Describes the Entity Sonet Application Code";
684    }
685    leaf ethernet-compliance-code {
686      type uint32;
687      description
688        "Describes the Entity Ethernet Compliance Code";
689    }
690    leaf date-string {
691      type string {
692        length "0..255";
693      }
694      description
695        "Describes the Entity Date string in IDPROM";
696    }
697    leaf vendor-revision {
698      type string {
699        length "0..255";
700      }
701      description
702        "Vendor rev string in IDPROM";
345    }703    }
346  }704  }
347}705}
+ + + + +
Legends
+ + + + +
Colors
 Added 
Changed
Deleted
+ + + + +
Links
(f)irst change
(n)ext change
(t)op
+ + + \ No newline at end of file diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang new file mode 100644 index 000000000..3071a4077 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang @@ -0,0 +1,347 @@ +submodule Cisco-IOS-XR-invmgr-oper-sub2 { + belongs-to Cisco-IOS-XR-invmgr-oper { + prefix Cisco-IOS-XR-invmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "3.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Threshold-relation { + type enumeration { + enum "less-than" { + value 1; + description + "Sensor value is less than threshold"; + } + enum "less-or-equal" { + value 2; + description + "Sensor value is lesser than or equal to + threshold"; + } + enum "greater-than" { + value 3; + description + "Sensor value is greater than threshold"; + } + enum "greater-or-equal" { + value 4; + description + "Sensor value is greater than or equal to + threshold"; + } + enum "equal" { + value 5; + description + "Sensor value is equal to threshold"; + } + enum "not-equal" { + value 6; + description + "Sensor value is not equal to threshold"; + } + } + description + "Threshold relation"; + } + + typedef Threshold-severity { + type enumeration { + enum "other" { + value 1; + description + "Other"; + } + enum "minor" { + value 10; + description + "Minor"; + } + enum "major" { + value 20; + description + "Major"; + } + enum "critical" { + value 30; + description + "Critical"; + } + } + description + "Threshold severity"; + } + + typedef Sensor-status { + type enumeration { + enum "ok" { + value 1; + description + "State ok"; + } + enum "unavailable" { + value 2; + description + "State Unavailable"; + } + enum "non-operational" { + value 3; + description + "State no operational"; + } + } + description + "Sensor status"; + } + + typedef Sensor-data { + type enumeration { + enum "unknown" { + value 2; + description + "Datatype unknown"; + } + enum "ac-volts" { + value 3; + description + "AC volts"; + } + enum "dc-volts" { + value 4; + description + "DC volts"; + } + enum "amperes" { + value 5; + description + "Amperes"; + } + enum "watts" { + value 6; + description + "Power in watts"; + } + enum "hertz" { + value 7; + description + "Frequency in hertz"; + } + enum "celsius" { + value 8; + description + "Celsius"; + } + enum "rpm" { + value 10; + description + "Rotations per minute"; + } + enum "dbm" { + value 14; + description + "Power in dBm"; + } + enum "db" { + value 15; + description + "Power in dB"; + } + } + description + "Sensor measurement data types"; + } + + typedef Unit { + type enumeration { + enum "celsius" { + description + "Degree in celsius"; + } + enum "milli-volts" { + description + "Milli volts"; + } + enum "milli-amperes" { + description + "Milli amperes"; + } + enum "rpm" { + description + "Rotations per minute"; + } + enum "watts" { + description + "Watts"; + } + enum "dbm" { + description + "dBm"; + } + enum "db" { + description + "dB"; + } + } + description + "Unit information"; + } + + grouping ENVMON-THRESHOLD-TYPE { + description + "Threshold information of a specific type"; + leaf threshold-severity { + type Threshold-severity; + description + "Indicates minor, major, critical severities"; + } + leaf threshold-relation { + type Threshold-relation; + description + "Indicates relation between sensor value and + threshold"; + } + leaf threshold-value { + type int32; + description + "Value of the configured threshold"; + } + leaf threshold-name { + type string { + length "0..50"; + } + description + "Indicates the Threshold name"; + } + } + + grouping ENVMON-THRESHOLD-INFO-XML { + description + "Threshold information"; + list threshold-array { + description + "Array of threshold"; + uses ENVMON-THRESHOLD-TYPE; + } + } + + grouping ENVMON-SENSOR-INFO-XML { + description + "Environment monitoring sensor information"; + container threshold { + description + "Threshold information"; + uses ENVMON-THRESHOLD-INFO-XML; + } + leaf description { + type string { + length "0..50"; + } + description + "Device Name"; + } + leaf units { + type Unit; + description + "Units of variable being read"; + } + leaf value { + type string { + length "0..50"; + } + description + "Current reading of sensor Displays in decimal(ex + 1.234) for powersupply sensor type"; + } + leaf data-type { + type Sensor-data; + description + "Sensor data type"; + } + leaf status { + type Sensor-status; + description + "Sensor operation state"; + } + leaf update-rate { + type uint32; + description + "Sensor value update rate; set to 0 if sensor + value is updated and evaluated immediately"; + } + } +} diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang.html b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang.html new file mode 100644 index 000000000..f31977aef --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub2.yang.html @@ -0,0 +1,735 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
f1submodule Cisco-IOS-XR-invmgr-oper-sub2 {f1submodule Cisco-IOS-XR-invmgr-oper-sub2 {
2  belongs-to Cisco-IOS-XR-invmgr-oper {2  belongs-to Cisco-IOS-XR-invmgr-oper {
3    prefix Cisco-IOS-XR-invmgr-oper;3    prefix Cisco-IOS-XR-invmgr-oper;
4  }4  }
55
6  import cisco-semver {6  import cisco-semver {
7    prefix semver;7    prefix semver;
8  }8  }
99
10  organization10  organization
11    "Cisco Systems, Inc.";11    "Cisco Systems, Inc.";
12  contact12  contact
13    "Cisco Systems, Inc.13    "Cisco Systems, Inc.
14     Customer Service14     Customer Service
15     15     
16     Postal: 170 West Tasman Drive16     Postal: 170 West Tasman Drive
17     San Jose, CA 9513417     San Jose, CA 95134
18     18     
19     Tel: +1 800 553-NETS19     Tel: +1 800 553-NETS
20     20     
21     E-mail: cs-yang@cisco.com";21     E-mail: cs-yang@cisco.com";
22  description22  description
23    "This submodule contains a collection of YANG definitions23    "This submodule contains a collection of YANG definitions
24     for Cisco IOS-XR invmgr package operational data.24     for Cisco IOS-XR invmgr package operational data.
25     25     
26     Copyright (c) 2013-2023 by Cisco Systems, Inc.26     Copyright (c) 2013-2023 by Cisco Systems, Inc.
27     All rights reserved.";27     All rights reserved.";
2828
29  revision 2023-04-16 {29  revision 2023-04-16 {
30    description30    description
31      "Fixing backward compatibility error";31      "Fixing backward compatibility error";
n32    semver:module-version "4.0.0";n32    semver:module-version "3.0.0";
33  }33  }
34  revision 2020-11-09 {34  revision 2020-11-09 {
35    description35    description
36      "Deprecated pluggable-info container36      "Deprecated pluggable-info container
37       2020-07-2437       2020-07-24
38          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR38          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR
39       2020-07-2439       2020-07-24
40          Addition of revision to match LNT.";40          Addition of revision to match LNT.";
41    semver:module-version "3.0.0";41    semver:module-version "3.0.0";
42  }42  }
43  revision 2020-05-08 {43  revision 2020-05-08 {
44    description44    description
45      "Deprecated Inventory:Rack container.45      "Deprecated Inventory:Rack container.
46       2020-03-3046       2020-03-30
47        Changed threshold-value type to int32.47        Changed threshold-value type to int32.
48       2019-10-0748       2019-10-07
49        Added pluggable-info bag.49        Added pluggable-info bag.
50       2019-10-0450       2019-10-04
51        Removed slot-info, vm-done bags.";51        Removed slot-info, vm-done bags.";
52    semver:module-version "2.0.0";52    semver:module-version "2.0.0";
53  }53  }
54  revision 2019-04-05 {54  revision 2019-04-05 {
55    description55    description
56      "Establish semantic version baseline.";56      "Establish semantic version baseline.";
57    semver:module-version "1.0.0";57    semver:module-version "1.0.0";
58  }58  }
59  revision 2019-03-21 {59  revision 2019-03-21 {
60    description60    description
61      "Resolved string constraints issue.";61      "Resolved string constraints issue.";
62  }62  }
63  revision 2018-08-03 {63  revision 2018-08-03 {
64    description64    description
65      "Added slot-info and parent-info bags.";65      "Added slot-info and parent-info bags.";
66  }66  }
67  revision 2018-04-19 {67  revision 2018-04-19 {
68    description68    description
69      "Added additional bags";69      "Added additional bags";
70  }70  }
71  revision 2017-09-07 {71  revision 2017-09-07 {
72    description72    description
73      "Fixed type translation error.";73      "Fixed type translation error.";
74  }74  }
75  revision 2017-05-01 {75  revision 2017-05-01 {
76    description76    description
77      "Fixing backward compatibility error in module.";77      "Fixing backward compatibility error in module.";
78  }78  }
79  revision 2015-11-09 {79  revision 2015-11-09 {
80    description80    description
81      "IOS XR 6.0 revision.";81      "IOS XR 6.0 revision.";
82  }82  }
8383
n84  typedef Card-reset-reason {n84  typedef Threshold-relation {
85    type enumeration {85    type enumeration {
n86      enum "reset-unknown" {n86      enum "less-than" {
87        value 1;87        value 1;
88        description88        description
n89          "reset unknown";n89          "Sensor value is less than threshold";
90      }90      }
n91      enum "power-up" {n91      enum "less-or-equal" {
92        value 2;92        value 2;
93        description93        description
n94          "power up";n94          "Sensor value is lesser than  or equal to
95           threshold";
95      }96      }
n96      enum "parity-error" {n97      enum "greater-than" {
97        value 3;98        value 3;
98        description99        description
n99          "parity error";n100          "Sensor value is greater than threshold";
100      }101      }
n101      enum "clear-config-reset" {n102      enum "greater-or-equal" {
102        value 4;103        value 4;
103        description104        description
n104          "clear config reset";n105          "Sensor value is greater than or equal to
106           threshold";
105      }107      }
n106      enum "manual-reset" {n108      enum "equal" {
107        value 5;109        value 5;
108        description110        description
n109          "manual reset";n111          "Sensor value is equal to threshold";
110      }112      }
n111      enum "watch-dog-timeout-reset" {n113      enum "not-equal" {
112        value 6;114        value 6;
113        description115        description
n114          "watch dog timeout reset";n116          "Sensor value is not equal to threshold";
117      }
115      }118    }
116      enum "resource-overflow-reset" {119    description
120      "Threshold relation";
121  }
122 
123  typedef Threshold-severity {
124    type enumeration {
125      enum "other" {
126        value 1;
127        description
128          "Other";
129      }
130      enum "minor" {
131        value 10;
132        description
133          "Minor";
134      }
135      enum "major" {
136        value 20;
137        description
138          "Major";
139      }
140      enum "critical" {
141        value 30;
142        description
143          "Critical";
144      }
145    }
146    description
147      "Threshold severity";
148  }
149 
150  typedef Sensor-status {
151    type enumeration {
152      enum "ok" {
153        value 1;
154        description
155          "State ok";
156      }
157      enum "unavailable" {
158        value 2;
159        description
160          "State Unavailable";
161      }
162      enum "non-operational" {
163        value 3;
164        description
165          "State no operational";
166      }
167    }
168    description
169      "Sensor status";
170  }
171 
172  typedef Sensor-data {
173    type enumeration {
174      enum "unknown" {
175        value 2;
176        description
177          "Datatype unknown";
178      }
179      enum "ac-volts" {
180        value 3;
181        description
182          "AC volts";
183      }
184      enum "dc-volts" {
185        value 4;
186        description
187          "DC volts";
188      }
189      enum "amperes" {
190        value 5;
191        description
192          "Amperes";
193      }
194      enum "watts" {
195        value 6;
196        description
197          "Power in watts";
198      }
199      enum "hertz" {
117        value 7;200        value 7;
118        description201        description
n119          "resource overflow reset";n202          "Frequency in hertz";
120      }203      }
n121      enum "missing-task-reset" {n204      enum "celsius" {
122        value 8;205        value 8;
123        description206        description
n124          "missing task reset";n207          "Celsius";
125      }208      }
n126      enum "low-voltage-reset" {n209      enum "rpm" {
127        value 9;
128        description
129          "low voltage reset";
130      }
131      enum "controller-reset" {
132        value 10;210        value 10;
133        description211        description
n134          "controller reset";n212          "Rotations per minute";
135      }213      }
n136      enum "system-reset" {n214      enum "dbm" {
137        value 11;
138        description
139          "system reset";
140      }
141      enum "switchover-reset" {
142        value 12;
143        description
144          "switchover reset";
145      }
146      enum "upgrade-reset" {
147        value 13;
148        description
149          "upgrade reset";
150      }
151      enum "downgrade-reset" {
152        value 14;215        value 14;
153        description216        description
n154          "downgrade reset";n217          "Power in dBm";
155      }218      }
n156      enum "cache-error-reset" {n219      enum "db" {
157        value 15;220        value 15;
158        description221        description
n159          "cache error reset";n222          "Power in dB";
223      }
160      }224    }
161      enum "device-driver-reset" {225    description
162        value 16;226      "Sensor measurement data types";
227  }
228 
229  typedef Unit {
230    type enumeration {
231      enum "celsius" {
232        description
233          "Degree in celsius";
234      }
235      enum "milli-volts" {
236        description
237          "Milli volts";
238      }
239      enum "milli-amperes" {
240        description
241          "Milli amperes";
242      }
243      enum "rpm" {
244        description
245          "Rotations per minute";
246      }
247      enum "watts" {
248        description
249          "Watts";
250      }
251      enum "dbm" {
252        description
253          "dBm";
254      }
255      enum "db" {
256        description
257          "dB";
258      }
259    }
260    description
261      "Unit information";
262  }
263 
264  grouping ENVMON-THRESHOLD-TYPE {
265    description
266      "Threshold information of a specific type";
267    leaf threshold-severity {
268      type Threshold-severity;
163        description269      description
164          "device driver reset";270        "Indicates minor, major, critical severities";
165      }271    }
166      enum "software-exception-reset" {272    leaf threshold-relation {
167        value 17;273      type Threshold-relation;
168        description274      description
169          "software exception reset";275        "Indicates relation between sensor value and
276         threshold";
170      }277    }
171      enum "restore-config-reset" {278    leaf threshold-value {
172        value 18;
173        description
174          "restore config reset";
175      }
176      enum "abort-rev-reset" {
177        value 19;
178        description
179          "abort rev reset";
180      }
181      enum "burn-boot-reset" {
182        value 20;
183        description
184          "burn boot reset";
185      }
186      enum "standby-cd-healthier-reset" {
187        value 21;
188        description
189          "standby cd healthier reset";
190      }
191      enum "non-native-config-clear-reset" {
192        value 22;
193        description
194          "non native config clear reset";
195      }
196      enum "memory-protection-error-reset" {
197        value 23;
198        description
199          "memory protection error reset";
200      }
201      enum "card-reset-reason-max" {
202        value 24;
203        description
204          "card reset reason max";
205      }
206    }
207    description
208      "Card reset reason";
209  }
210 
211  grouping INV-PWG-INFO {
212    description
213      "Power supply group bag";
214    leaf power-group-redundancy-mode {
215      type int32;279      type int32;
216      description280      description
n217        "redundancy mode";n281        "Value of the configured threshold";
218    }
219    leaf power-group-power-units {
220      type string;
221      description
222        "power units";
223    }
224    leaf power-group-available-current {
225      type int32;
226      description
227        "available current";
228    }
229    leaf power-group-drawn-current {
230      type int32;
231      description
232        "drawn current";
233    }
234  }282    }
235 283    leaf threshold-name {
236  grouping INV-PHY-ENTITY-ASSET-INFO {
237    description
238      "The physical entity detaled asset attribute bag";
239    leaf part-number {
240      type string {284      type string {
n241        length "0..255";n285        length "0..50";
242      }
243      description
244        "Describes the Entity Part Number";
245    }286      }
246    leaf manufacturer-assembly-number {
247      type string {
248        length "0..255";
249      }
250      description
251        "Describes the Entity Manufacture Assembly number
252         string";
253    }
254    leaf manufacturer-assembly-revision {
255      type string {
256        length "0..255";
257      }
258      description
259        "Describes the Entity Manufacture assembly
260         revision string";
261    }
262    leaf manufacturer-firmware-identifier {
263      type string {
264        length "0..255";
265      }
266      description
267        "Describes the Entity Manufacturer Firmware
268         Identifier string";
269    }
270    leaf manufacturer-software-identifier {
271      type string {
272        length "0..255";
273      }
274      description
275        "Describes the Entity Manufacturer Software
276         Identifier string";
277    }
278    leaf manufacturer-common-language-equipment-identifier {
279      type string {
280        length "0..255";
281      }
282      description
283        "Describes the Entity Common LanguageEquipment
284         Identifier number";
285    }
286    leaf original-equipment-manufacturer-string {
287      type string {
288        length "0..255";
289      }
290      description
291        "Describes the Entity String containingOEM
292         information if applicable";
293    }
294  }
295 
296  grouping INV-TIMESPEC {
297    description287      description
298      "Inventory FRU Info Time Spec";288        "Indicates the Threshold name";
299    leaf time-in-seconds {289    }
300      type int32;290  }
301      units "second";291 
292  grouping ENVMON-THRESHOLD-INFO-XML {
302      description293    description
303        "Time Value in Seconds";294      "Threshold information";
304    }295    list threshold-array {
305    leaf time-in-nano-seconds {
306      type int32;
307      units "nanosecond";
308      description
309        "Time Value in Nano-seconds";
310    }
311  }
312 
313  grouping INV-CARD-FRU-INFO {
314    description296      description
315      "card (FRU) operation state bag";297        "Array of threshold";
316    container last-operational-state-change {298      uses ENVMON-THRESHOLD-TYPE;
299    }
300  }
301 
302  grouping ENVMON-SENSOR-INFO-XML {
317      description303    description
318        "last card oper change state";304      "Environment monitoring sensor information";
319      uses INV-TIMESPEC;305    container threshold {
320    }
321    container card-up-time {
322      description
323        "time for which the card has remained up";
324      uses INV-TIMESPEC;
325    }
326    leaf card-administrative-state {
327      type int32;
328      description
329        "Indicates the card admin state: shutdown or not";
330    }
331    leaf power-administrative-state {
332      type int32;
333      description
334        "Indicates the power admin state: up or down";
335    }
336    leaf card-operational-state {
337      type int32;
338      description
339        "Indicates the card operation state";
340    }
341    leaf card-monitor-state {
342      type int32;
343      description
344        "Indicates the card is monitored by a manager or
345         left unmonitored";
346    }
347    leaf card-reset-reason {
348      type Card-reset-reason;
349      description
350        "Indicates the card reset reason enum";
351    }
352    leaf power-current-measurement {
353      type int32;
354      description
355        "power current: not implemented";
356    }
357    leaf power-operational-state {
358      type int32;
359      description
360        "Power operation state value";
361    }
362  }
363 
364  grouping INV-PHY-ENTITY-BASIC-INFO {
365    description306      description
366      "Bag contains all the basic inventory information307        "Threshold information";
367       for each entity";308      uses ENVMON-THRESHOLD-INFO-XML;
309    }
368    leaf description {310    leaf description {
369      type string {311      type string {
n370        length "0..255";n312        length "0..50";
371      }
372      description
373        "describes in user-readable termswhat the entity
374         in question does";
375    }313      }
376    leaf vendor-type {314      description
315        "Device Name";
316    }
317    leaf units {
318      type Unit;
319      description
320        "Units of variable being read";
321    }
322    leaf value {
377      type string {323      type string {
n378        length "0..255";n324        length "0..50";
379      }
380      description
381        "maps to the vendor OID string";
382    }325      }
383    leaf name {326      description
384      type string {327        "Current reading of sensor Displays in decimal(ex
385        length "0..255";328         1.234) for powersupply sensor type";
386      }329    }
330    leaf data-type {
331      type Sensor-data;
387      description332      description
n388        "Describes the Entity name string";n333        "Sensor data type";
389    }
390    leaf hardware-revision {
391      type string {
392        length "0..255";
393      }334    }
335    leaf status {
336      type Sensor-status;
394      description337      description
n395        "Describes the Entity hw revision string";n338        "Sensor operation state";
396    }
397    leaf firmware-revision {
398      type string {
399        length "0..255";
400      }339    }
401      description340    leaf update-rate {
402        "Describes the Entity firmware revision string";
403    }
404    leaf software-revision {
405      type string {
406        length "0..255";
407      }
408      description
409        "Describes the Entity software revision string";
410    }
411    leaf chip-hardware-revision {
412      type string {
413        length "0..255";
414      }
415      description
416        "Describes the Entity chip module hw revision
417         string";
418    }
419    leaf serial-number {
420      type string {
421        length "0..255";
422      }
423      description
424        "Describes the Entity serial number string";
425    }
426    leaf manufacturer-name {
427      type string {
428        length "0..255";
429      }
430      description
431        "Describes the Entity manufacturer's name string";
432    }
433    leaf model-name {
434      type string {
435        length "0..255";
436      }
437      description
438        "Describes the Entity model name";
439    }
440    leaf asset-id-str {
441      type string {
442        length "0..255";
443      }
444      description
445        "Describes the Entity asset Identification string";
446    }
447    leaf asset-identification {
448      type int32;341      type uint32;
449      description342      description
t450        "Describes the Entity asset Identification number";t343        "Sensor value update rate; set to 0 if sensor
451    }344         value is updated and evaluated immediately";
452    leaf is-field-replaceable-unit {
453      type boolean;
454      description
455        "1 if Field Replaceable Unit 0, if not";
456    }
457    leaf manufacturer-asset-tags {
458      type int32;
459      description
460        "Describes the Entity Manufacture Asset Tags
461         number";
462    }
463    leaf composite-class-code {
464      type int32;
465      description
466        "Major&minor class of the entity";
467    }
468    leaf memory-size {
469      type int32;
470      description
471        "Size of memory associated withthe entity where
472         applicable";
473    }
474    leaf environmental-monitor-path {
475      type string {
476        length "0..255";
477      }
478      description
479        "sysdb name of sensor in the envmon EDM";
480    }
481    leaf alias {
482      type string {
483        length "0..255";
484      }
485      description
486        "useful for storing an entity alias ";
487    }
488    leaf group-flag {
489      type boolean;
490      description
491        "indicates if this entity is groupor not";
492    }
493    leaf new-deviation-number {
494      type int32;
495      description
496        "integer value for New Deviation Number 0x88";
497    }
498    leaf physical-layer-interface-module-type {
499      type int32;
500      description
501        "integer value for plim type ifapplicable to this
502         entity";
503    }
504    leaf unrecognized-fru {
505      type boolean;
506      description
507        "1 if UnrecognizedFRU and 0 for recognizedFRU";
508    }
509    leaf redundancystate {
510      type int32;
511      description
512        "integer value for Redundancy State ifapplicable
513         to this entity";
514    }
515    leaf ceport {
516      type boolean;
517      description
518        "1 if ce port found, 0 if not";
519    }
520    leaf xr-scoped {
521      type boolean;
522      description
523        "1 if xr scoped, 0 if not";
524    }
525    leaf unique-id {
526      type int32;
527      description
528        "Unique id for an entity";
529    }
530    leaf allocated-power {
531      type int32;
532      description
533        "Allocated power for an entity";
534    }
535    leaf power-capacity {
536      type int32;
537      description
538        "Power Capacity of a Power Module";
539    }345    }
540  }346  }
541}347}
+ + + + +
Legends
+ + + + +
Colors
 Added 
Changed
Deleted
+ + + + +
Links
(f)irst change
(n)ext change
(t)op
+ + + \ No newline at end of file diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang new file mode 100644 index 000000000..c2552ae8c --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang @@ -0,0 +1,541 @@ +submodule Cisco-IOS-XR-invmgr-oper-sub3 { + belongs-to Cisco-IOS-XR-invmgr-oper { + prefix Cisco-IOS-XR-invmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "3.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Card-reset-reason { + type enumeration { + enum "reset-unknown" { + value 1; + description + "reset unknown"; + } + enum "power-up" { + value 2; + description + "power up"; + } + enum "parity-error" { + value 3; + description + "parity error"; + } + enum "clear-config-reset" { + value 4; + description + "clear config reset"; + } + enum "manual-reset" { + value 5; + description + "manual reset"; + } + enum "watch-dog-timeout-reset" { + value 6; + description + "watch dog timeout reset"; + } + enum "resource-overflow-reset" { + value 7; + description + "resource overflow reset"; + } + enum "missing-task-reset" { + value 8; + description + "missing task reset"; + } + enum "low-voltage-reset" { + value 9; + description + "low voltage reset"; + } + enum "controller-reset" { + value 10; + description + "controller reset"; + } + enum "system-reset" { + value 11; + description + "system reset"; + } + enum "switchover-reset" { + value 12; + description + "switchover reset"; + } + enum "upgrade-reset" { + value 13; + description + "upgrade reset"; + } + enum "downgrade-reset" { + value 14; + description + "downgrade reset"; + } + enum "cache-error-reset" { + value 15; + description + "cache error reset"; + } + enum "device-driver-reset" { + value 16; + description + "device driver reset"; + } + enum "software-exception-reset" { + value 17; + description + "software exception reset"; + } + enum "restore-config-reset" { + value 18; + description + "restore config reset"; + } + enum "abort-rev-reset" { + value 19; + description + "abort rev reset"; + } + enum "burn-boot-reset" { + value 20; + description + "burn boot reset"; + } + enum "standby-cd-healthier-reset" { + value 21; + description + "standby cd healthier reset"; + } + enum "non-native-config-clear-reset" { + value 22; + description + "non native config clear reset"; + } + enum "memory-protection-error-reset" { + value 23; + description + "memory protection error reset"; + } + enum "card-reset-reason-max" { + value 24; + description + "card reset reason max"; + } + } + description + "Card reset reason"; + } + + grouping INV-TIMESPEC { + description + "Inventory FRU Info Time Spec"; + leaf time-in-seconds { + type int32; + units "second"; + description + "Time Value in Seconds"; + } + leaf time-in-nano-seconds { + type int32; + units "nanosecond"; + description + "Time Value in Nano-seconds"; + } + } + + grouping INV-CARD-FRU-INFO { + description + "card (FRU) operation state bag"; + container last-operational-state-change { + description + "last card oper change state"; + uses INV-TIMESPEC; + } + container card-up-time { + description + "time for which the card has remained up"; + uses INV-TIMESPEC; + } + leaf card-administrative-state { + type int32; + description + "Indicates the card admin state: shutdown or not"; + } + leaf power-administrative-state { + type int32; + description + "Indicates the power admin state: up or down"; + } + leaf card-operational-state { + type int32; + description + "Indicates the card operation state"; + } + leaf card-monitor-state { + type int32; + description + "Indicates the card is monitored by a manager or + left unmonitored"; + } + leaf card-reset-reason { + type Card-reset-reason; + description + "Indicates the card reset reason enum"; + } + leaf power-current-measurement { + type int32; + description + "power current: not implemented"; + } + leaf power-operational-state { + type int32; + description + "Power operation state value"; + } + } + + grouping INV-PWG-INFO { + description + "Power supply group bag"; + leaf power-group-redundancy-mode { + type int32; + description + "redundancy mode"; + } + leaf power-group-power-units { + type string; + description + "power units"; + } + leaf power-group-available-current { + type int32; + description + "available current"; + } + leaf power-group-drawn-current { + type int32; + description + "drawn current"; + } + } + + grouping INV-PHY-ENTITY-BASIC-INFO { + description + "Bag contains all the basic inventory information + for each entity"; + leaf description { + type string { + length "0..255"; + } + description + "describes in user-readable termswhat the entity + in question does"; + } + leaf vendor-type { + type string { + length "0..255"; + } + description + "maps to the vendor OID string"; + } + leaf name { + type string { + length "0..255"; + } + description + "Describes the Entity name string"; + } + leaf hardware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity hw revision string"; + } + leaf firmware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity firmware revision string"; + } + leaf software-revision { + type string { + length "0..255"; + } + description + "Describes the Entity software revision string"; + } + leaf chip-hardware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity chip module hw revision + string"; + } + leaf serial-number { + type string { + length "0..255"; + } + description + "Describes the Entity serial number string"; + } + leaf manufacturer-name { + type string { + length "0..255"; + } + description + "Describes the Entity manufacturer's name string"; + } + leaf model-name { + type string { + length "0..255"; + } + description + "Describes the Entity model name"; + } + leaf asset-id-str { + type string { + length "0..255"; + } + description + "Describes the Entity asset Identification string"; + } + leaf asset-identification { + type int32; + description + "Describes the Entity asset Identification number"; + } + leaf is-field-replaceable-unit { + type boolean; + description + "1 if Field Replaceable Unit 0, if not"; + } + leaf manufacturer-asset-tags { + type int32; + description + "Describes the Entity Manufacture Asset Tags + number"; + } + leaf composite-class-code { + type int32; + description + "Major&minor class of the entity"; + } + leaf memory-size { + type int32; + description + "Size of memory associated withthe entity where + applicable"; + } + leaf environmental-monitor-path { + type string { + length "0..255"; + } + description + "sysdb name of sensor in the envmon EDM"; + } + leaf alias { + type string { + length "0..255"; + } + description + "useful for storing an entity alias "; + } + leaf group-flag { + type boolean; + description + "indicates if this entity is groupor not"; + } + leaf new-deviation-number { + type int32; + description + "integer value for New Deviation Number 0x88"; + } + leaf physical-layer-interface-module-type { + type int32; + description + "integer value for plim type ifapplicable to this + entity"; + } + leaf unrecognized-fru { + type boolean; + description + "1 if UnrecognizedFRU and 0 for recognizedFRU"; + } + leaf redundancystate { + type int32; + description + "integer value for Redundancy State ifapplicable + to this entity"; + } + leaf ceport { + type boolean; + description + "1 if ce port found, 0 if not"; + } + leaf xr-scoped { + type boolean; + description + "1 if xr scoped, 0 if not"; + } + leaf unique-id { + type int32; + description + "Unique id for an entity"; + } + leaf allocated-power { + type int32; + description + "Allocated power for an entity"; + } + leaf power-capacity { + type int32; + description + "Power Capacity of a Power Module"; + } + } + + grouping INV-PHY-ENTITY-ASSET-INFO { + description + "The physical entity detaled asset attribute bag"; + leaf part-number { + type string { + length "0..255"; + } + description + "Describes the Entity Part Number"; + } + leaf manufacturer-assembly-number { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacture Assembly number + string"; + } + leaf manufacturer-assembly-revision { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacture assembly + revision string"; + } + leaf manufacturer-firmware-identifier { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacturer Firmware + Identifier string"; + } + leaf manufacturer-software-identifier { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacturer Software + Identifier string"; + } + leaf manufacturer-common-language-equipment-identifier { + type string { + length "0..255"; + } + description + "Describes the Entity Common LanguageEquipment + Identifier number"; + } + leaf original-equipment-manufacturer-string { + type string { + length "0..255"; + } + description + "Describes the Entity String containingOEM + information if applicable"; + } + } +} diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang.html b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang.html new file mode 100644 index 000000000..a4f7326a7 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper-sub3.yang.html @@ -0,0 +1,1085 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
f1submodule Cisco-IOS-XR-invmgr-oper-sub3 {f1submodule Cisco-IOS-XR-invmgr-oper-sub3 {
2  belongs-to Cisco-IOS-XR-invmgr-oper {2  belongs-to Cisco-IOS-XR-invmgr-oper {
3    prefix Cisco-IOS-XR-invmgr-oper;3    prefix Cisco-IOS-XR-invmgr-oper;
4  }4  }
55
n6  import ietf-yang-types {n
7    prefix yang;
8  }
9  import cisco-semver {6  import cisco-semver {
10    prefix semver;7    prefix semver;
11  }8  }
129
13  organization10  organization
14    "Cisco Systems, Inc.";11    "Cisco Systems, Inc.";
15  contact12  contact
16    "Cisco Systems, Inc.13    "Cisco Systems, Inc.
17     Customer Service14     Customer Service
18     15     
19     Postal: 170 West Tasman Drive16     Postal: 170 West Tasman Drive
20     San Jose, CA 9513417     San Jose, CA 95134
21     18     
22     Tel: +1 800 553-NETS19     Tel: +1 800 553-NETS
23     20     
24     E-mail: cs-yang@cisco.com";21     E-mail: cs-yang@cisco.com";
25  description22  description
26    "This submodule contains a collection of YANG definitions23    "This submodule contains a collection of YANG definitions
27     for Cisco IOS-XR invmgr package operational data.24     for Cisco IOS-XR invmgr package operational data.
28     25     
29     Copyright (c) 2013-2023 by Cisco Systems, Inc.26     Copyright (c) 2013-2023 by Cisco Systems, Inc.
30     All rights reserved.";27     All rights reserved.";
3128
32  revision 2023-04-16 {29  revision 2023-04-16 {
33    description30    description
34      "Fixing backward compatibility error";31      "Fixing backward compatibility error";
n35    semver:module-version "4.0.0";n32    semver:module-version "3.0.0";
36  }33  }
37  revision 2020-11-09 {34  revision 2020-11-09 {
38    description35    description
39      "Deprecated pluggable-info container36      "Deprecated pluggable-info container
40       2020-07-2437       2020-07-24
41          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR38          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR
42       2020-07-2439       2020-07-24
43          Addition of revision to match LNT.";40          Addition of revision to match LNT.";
44    semver:module-version "3.0.0";41    semver:module-version "3.0.0";
45  }42  }
46  revision 2020-05-08 {43  revision 2020-05-08 {
47    description44    description
48      "Deprecated Inventory:Rack container.45      "Deprecated Inventory:Rack container.
49       2020-03-3046       2020-03-30
50        Changed threshold-value type to int32.47        Changed threshold-value type to int32.
51       2019-10-0748       2019-10-07
52        Added pluggable-info bag.49        Added pluggable-info bag.
53       2019-10-0450       2019-10-04
54        Removed slot-info, vm-done bags.";51        Removed slot-info, vm-done bags.";
55    semver:module-version "2.0.0";52    semver:module-version "2.0.0";
56  }53  }
57  revision 2019-04-05 {54  revision 2019-04-05 {
58    description55    description
59      "Establish semantic version baseline.";56      "Establish semantic version baseline.";
60    semver:module-version "1.0.0";57    semver:module-version "1.0.0";
61  }58  }
62  revision 2019-03-21 {59  revision 2019-03-21 {
63    description60    description
64      "Resolved string constraints issue.";61      "Resolved string constraints issue.";
65  }62  }
66  revision 2018-08-03 {63  revision 2018-08-03 {
67    description64    description
68      "Added slot-info and parent-info bags.";65      "Added slot-info and parent-info bags.";
69  }66  }
70  revision 2018-04-19 {67  revision 2018-04-19 {
71    description68    description
72      "Added additional bags";69      "Added additional bags";
73  }70  }
74  revision 2017-09-07 {71  revision 2017-09-07 {
75    description72    description
76      "Fixed type translation error.";73      "Fixed type translation error.";
77  }74  }
78  revision 2017-05-01 {75  revision 2017-05-01 {
79    description76    description
80      "Fixing backward compatibility error in module.";77      "Fixing backward compatibility error in module.";
81  }78  }
82  revision 2015-11-09 {79  revision 2015-11-09 {
83    description80    description
84      "IOS XR 6.0 revision.";81      "IOS XR 6.0 revision.";
85  }82  }
8683
n87  grouping RMA-DETAIL {n84  typedef Card-reset-reason {
88    description85    type enumeration {
89      "EEPROM RMA data content";86      enum "reset-unknown" {
90    leaf test-history {87        value 1;
91      type string {
92        length "0..255";
93      }
94      description88        description
95        "RMA detail Test history innformation";89          "reset unknown";
96    }90      }
97    leaf rma-number {91      enum "power-up" {
98      type string {92        value 2;
99        length "0..255";
100      }
101      description93        description
102        "RMA tracking number format is N-N-N";94          "power up";
103    }95      }
104    leaf rma-history {96      enum "parity-error" {
105      type string {97        value 3;
106        length "0..255";
107      }
108      description98        description
109        "RMA history infromation";99          "parity error";
110    }100      }
111  }101      enum "clear-config-reset" {
112 102        value 4;
113  grouping DIAG-EEPROM {
114    description
115      "Diag EEPROM data content";
116    container rma {
117      description103        description
118        "Description of Entity RMA Data";104          "clear config reset";
119      uses RMA-DETAIL;
120    }105      }
106      enum "manual-reset" {
107        value 5;
108        description
109          "manual reset";
110      }
111      enum "watch-dog-timeout-reset" {
112        value 6;
113        description
114          "watch dog timeout reset";
115      }
116      enum "resource-overflow-reset" {
117        value 7;
118        description
119          "resource overflow reset";
120      }
121      enum "missing-task-reset" {
122        value 8;
123        description
124          "missing task reset";
125      }
126      enum "low-voltage-reset" {
127        value 9;
128        description
129          "low voltage reset";
130      }
131      enum "controller-reset" {
132        value 10;
133        description
134          "controller reset";
135      }
136      enum "system-reset" {
137        value 11;
138        description
139          "system reset";
140      }
141      enum "switchover-reset" {
142        value 12;
143        description
144          "switchover reset";
145      }
146      enum "upgrade-reset" {
147        value 13;
148        description
149          "upgrade reset";
150      }
151      enum "downgrade-reset" {
152        value 14;
153        description
154          "downgrade reset";
155      }
156      enum "cache-error-reset" {
157        value 15;
158        description
159          "cache error reset";
160      }
161      enum "device-driver-reset" {
162        value 16;
163        description
164          "device driver reset";
165      }
166      enum "software-exception-reset" {
167        value 17;
168        description
169          "software exception reset";
170      }
171      enum "restore-config-reset" {
172        value 18;
173        description
174          "restore config reset";
175      }
176      enum "abort-rev-reset" {
177        value 19;
178        description
179          "abort rev reset";
180      }
181      enum "burn-boot-reset" {
182        value 20;
183        description
184          "burn boot reset";
185      }
186      enum "standby-cd-healthier-reset" {
187        value 21;
188        description
189          "standby cd healthier reset";
190      }
191      enum "non-native-config-clear-reset" {
192        value 22;
193        description
194          "non native config clear reset";
195      }
196      enum "memory-protection-error-reset" {
197        value 23;
198        description
199          "memory protection error reset";
200      }
201      enum "card-reset-reason-max" {
202        value 24;
203        description
204          "card reset reason max";
205      }
206    }
207    description
208      "Card reset reason";
209  }
210 
211  grouping INV-TIMESPEC {
212    description
213      "Inventory FRU Info Time Spec";
214    leaf time-in-seconds {
215      type int32;
216      units "second";
217      description
218        "Time Value in Seconds";
219    }
220    leaf time-in-nano-seconds {
221      type int32;
222      units "nanosecond";
223      description
224        "Time Value in Nano-seconds";
225    }
226  }
227 
228  grouping INV-CARD-FRU-INFO {
229    description
230      "card (FRU) operation state bag";
231    container last-operational-state-change {
232      description
233        "last card oper change state";
234      uses INV-TIMESPEC;
235    }
236    container card-up-time {
237      description
238        "time for which the card has remained up";
239      uses INV-TIMESPEC;
240    }
241    leaf card-administrative-state {
242      type int32;
243      description
244        "Indicates the card admin state: shutdown or not";
245    }
246    leaf power-administrative-state {
247      type int32;
248      description
249        "Indicates the power admin state: up or down";
250    }
251    leaf card-operational-state {
252      type int32;
253      description
254        "Indicates the card operation state";
255    }
256    leaf card-monitor-state {
257      type int32;
258      description
259        "Indicates the card is monitored by a manager or
260         left unmonitored";
261    }
262    leaf card-reset-reason {
263      type Card-reset-reason;
264      description
265        "Indicates the card reset reason enum";
266    }
267    leaf power-current-measurement {
268      type int32;
269      description
270        "power current: not implemented";
271    }
272    leaf power-operational-state {
273      type int32;
274      description
275        "Power operation state value";
276    }
277  }
278 
279  grouping INV-PWG-INFO {
280    description
281      "Power supply group bag";
282    leaf power-group-redundancy-mode {
283      type int32;
284      description
285        "redundancy mode";
286    }
287    leaf power-group-power-units {
288      type string;
289      description
290        "power units";
291    }
292    leaf power-group-available-current {
293      type int32;
294      description
295        "available current";
296    }
297    leaf power-group-drawn-current {
298      type int32;
299      description
300        "drawn current";
301    }
302  }
303 
304  grouping INV-PHY-ENTITY-BASIC-INFO {
305    description
306      "Bag contains all the basic inventory information
307       for each entity";
121    leaf description {308    leaf description {
122      type string {309      type string {
123        length "0..255";310        length "0..255";
124      }311      }
125      description312      description
n126        "A textual description of physical entity";n313        "describes in user-readable termswhat the entity
127    }314         in question does";
128    leaf idprom-format-rev {
129      type string {
130        length "0..255";
131      }315    }
132      description316    leaf vendor-type {
133        "Description of Entity IDPROM Format Revision";317      type string {
318        length "0..255";
134    }319      }
135    leaf controller-family {320      description
136      type string {321        "maps to the vendor OID string";
137        length "0..255";
138      }322    }
139      description
140        "Description of Entity Controller family";
141    }
142    leaf controller-type {
143      type string {
144        length "0..255";
145      }
146      description
147        "Description of Entity Controller type";
148    }
149    leaf vid {
150      type string {
151        length "0..255";
152      }
153      description
154        "Description of Entity Version ID";
155    }
156    leaf hwid {
157      type string {
158        length "0..255";
159      }
160      description
161        "Description of Entity Hardware Revision";
162    }
163    leaf pid {
164      type string {
165        length "0..255";
166      }
167      description
168        "Description of Entity Product ID";
169    }
170    leaf udi-description {
171      type string {
172        length "0..255";
173      }
174      description
175        "Description of Entity UDI";
176    }
177    leaf udi-name {323    leaf name {
178      type string {324      type string {
179        length "0..255";325        length "0..255";
n180      }n
181      description
182        "Description of Entity UDI name";
183    }326      }
184    leaf clei {327      description
185      type string {328        "Describes the Entity name string";
186        length "0..255";
187      }329    }
188      description330    leaf hardware-revision {
189        "Common Language Equipment Identifier (CLEI) code";331      type string {
332        length "0..255";
190    }333      }
191    leaf eci {334      description
192      type string {335        "Describes the Entity hw revision string";
193        length "0..255";
194      }336    }
195      description337    leaf firmware-revision {
196        "Equipment Catalog Item (ECI) number";338      type string {
339        length "0..255";
197    }340      }
198    leaf top-assem-part-num {341      description
199      type string {342        "Describes the Entity firmware revision string";
200        length "0..255";
201      }343    }
202      description344    leaf software-revision {
203        "Description of Top assembly part number";345      type string {
346        length "0..255";
204    }347      }
205    leaf top-assem-vid {348      description
206      type string {349        "Describes the Entity software revision string";
207        length "0..255";
208      }350    }
209      description351    leaf chip-hardware-revision {
210        "Description of Top assembly revision number";352      type string {
353        length "0..255";
211    }354      }
212    leaf pca-num {
213      type string {
214        length "0..255";
215      }
216      description355      description
n217        "Description of Entity PCA number";n356        "Describes the Entity chip module hw revision
218    }357         string";
219    leaf pcavid {
220      type string {
221        length "0..255";
222      }
223      description
224        "Description of Entity PCA revision ID";
225    }
226    leaf chassis-sid {
227      type string {
228        length "0..255";
229      }
230      description
231        "Description of Entity Chassis serial number";
232    }
233    leaf dev-num1 {
234      type string {
235        length "0..255";
236      }
237      description
238        "Deviation Number # 1";
239    }
240    leaf dev-num2 {
241      type string {
242        length "0..255";
243      }
244      description
245        "Deviation Number # 2";
246    }
247    leaf dev-num3 {
248      type string {
249        length "0..255";
250      }
251      description
252        "Deviation Number # 3";
253    }
254    leaf dev-num4 {
255      type string {
256        length "0..255";
257      }
258      description
259        "Deviation Number # 4";
260    }
261    leaf dev-num5 {
262      type string {
263        length "0..255";
264      }
265      description
266        "Deviation Number # 5";
267    }
268    leaf dev-num6 {
269      type string {
270        length "0..255";
271      }
272      description
273        "Deviation Number # 6";
274    }
275    leaf dev-num7 {
276      type string {
277        length "0..255";
278      }
279      description
280        "Deviation Number # 7";
281    }
282    leaf manu-test-data {
283      type string {
284        length "0..255";
285      }
286      description
287        "Manufacturing Test Data";
288    }
289    leaf asset-id {
290      type string {
291        length "0..255";
292      }
293      description
294        "Description of Entity Asset ID";
295    }
296    leaf asset-alias {
297      type string {
298        length "0..255";
299      }
300      description
301        "Description of Entity Asset Alias";
302    }
303    leaf base-mac-address1 {
304      type string {
305        length "0..255";
306      }
307      description
308        "Base Mac Address #1";
309    }
310    leaf mac-add-blk-size1 {
311      type string {
312        length "0..255";
313      }
314      description
315        "Mac Address Block Size #1";
316    }
317    leaf base-mac-address2 {
318      type string {
319        length "0..255";
320      }
321      description
322        "Base Mac Address #2";
323    }
324    leaf mac-add-blk-size2 {
325      type string {
326        length "0..255";
327      }
328      description
329        "Mac Address Block Size #2";
330    }
331    leaf base-mac-address3 {
332      type string {
333        length "0..255";
334      }
335      description
336        "Base Mac Address #3";
337    }
338    leaf mac-add-blk-size3 {
339      type string {
340        length "0..255";
341      }
342      description
343        "Mac Address Block Size #3";
344    }
345    leaf base-mac-address4 {
346      type string {
347        length "0..255";
348      }
349      description
350        "Base Mac Address #4";
351    }
352    leaf mac-add-blk-size4 {
353      type string {
354        length "0..255";
355      }
356      description
357        "Mac Address Block Size #4";
358    }
359    leaf pcb-serial-num {
360      type string {
361        length "0..255";
362      }
363      description
364        "Description of Entity PCB Serial Number";
365    }
366    leaf power-supply-type {
367      type string {
368        length "0..255";
369      }
370      description
371        "Description of Entity Power Supply Type";
372    }
373    leaf power-consumption {
374      type string {
375        length "0..255";
376      }
377      description
378        "Description of Entity Power Consumption";
379    }
380    leaf block-signature {
381      type string {
382        length "0..255";
383      }
384      description
385        "Description of Entity Block Signature";
386    }
387    leaf block-version {
388      type string {
389        length "0..255";
390      }
391      description
392        "Description of Entity Block Version";
393    }
394    leaf block-length {
395      type string {
396        length "0..255";
397      }
398      description
399        "Description of Entity Block Length";
400    }
401    leaf block-checksum {
402      type string {
403        length "0..255";
404      }
405      description
406        "Description of Entity Block Checksum";
407    }
408    leaf eeprom-size {
409      type string {
410        length "0..255";
411      }
412      description
413        "Description of Entity EEPROM Size";
414    }
415    leaf block-count {
416      type string {
417        length "0..255";
418      }
419      description
420        "Description of Entity Block Count";
421    }
422    leaf fru-major-type {
423      type string {
424        length "0..255";
425      }
426      description
427        "Description of Entity FRU Major Type";
428    }
429    leaf fru-minor-type {
430      type string {
431        length "0..255";
432      }
433      description
434        "Description of Entity FRU Minor Type";
435    }
436    leaf oem-string {
437      type string {
438        length "0..255";
439      }
440      description
441        "Description of Entity OEM String";
442    }
443    leaf product-id {
444      type string {
445        length "0..255";
446      }
447      description
448        "Description of Entity Product ID";
449    }358    }
450    leaf serial-number {359    leaf serial-number {
451      type string {360      type string {
452        length "0..255";361        length "0..255";
453      }362      }
454      description363      description
n455        "Description of Entity Serial Number";n364        "Describes the Entity serial number string";
365    }
366    leaf manufacturer-name {
367      type string {
368        length "0..255";
456    }369      }
370      description
371        "Describes the Entity manufacturer's name string";
372    }
373    leaf model-name {
374      type string {
375        length "0..255";
376      }
377      description
378        "Describes the Entity model name";
379    }
380    leaf asset-id-str {
381      type string {
382        length "0..255";
383      }
384      description
385        "Describes the Entity asset Identification string";
386    }
387    leaf asset-identification {
388      type int32;
389      description
390        "Describes the Entity asset Identification number";
391    }
392    leaf is-field-replaceable-unit {
393      type boolean;
394      description
395        "1 if Field Replaceable Unit 0, if not";
396    }
397    leaf manufacturer-asset-tags {
398      type int32;
399      description
400        "Describes the Entity Manufacture Asset Tags
401         number";
402    }
403    leaf composite-class-code {
404      type int32;
405      description
406        "Major&minor class of the entity";
407    }
408    leaf memory-size {
409      type int32;
410      description
411        "Size of memory associated withthe entity where
412         applicable";
413    }
414    leaf environmental-monitor-path {
415      type string {
416        length "0..255";
417      }
418      description
419        "sysdb name of sensor in the envmon EDM";
420    }
421    leaf alias {
422      type string {
423        length "0..255";
424      }
425      description
426        "useful for storing an entity alias ";
427    }
428    leaf group-flag {
429      type boolean;
430      description
431        "indicates if this entity is groupor not";
432    }
433    leaf new-deviation-number {
434      type int32;
435      description
436        "integer value for New Deviation Number 0x88";
437    }
438    leaf physical-layer-interface-module-type {
439      type int32;
440      description
441        "integer value for plim type ifapplicable to this
442         entity";
443    }
444    leaf unrecognized-fru {
445      type boolean;
446      description
447        "1 if UnrecognizedFRU and 0 for recognizedFRU";
448    }
449    leaf redundancystate {
450      type int32;
451      description
452        "integer value for Redundancy State ifapplicable
453         to this entity";
454    }
455    leaf ceport {
456      type boolean;
457      description
458        "1 if ce port found, 0 if not";
459    }
460    leaf xr-scoped {
461      type boolean;
462      description
463        "1 if xr scoped, 0 if not";
464    }
465    leaf unique-id {
466      type int32;
467      description
468        "Unique id for an entity";
469    }
470    leaf allocated-power {
471      type int32;
472      description
473        "Allocated power for an entity";
474    }
475    leaf power-capacity {
476      type int32;
477      description
478        "Power Capacity of a Power Module";
479    }
480  }
481 
482  grouping INV-PHY-ENTITY-ASSET-INFO {
483    description
484      "The physical entity detaled asset attribute bag";
457    leaf part-number {485    leaf part-number {
458      type string {486      type string {
459        length "0..255";487        length "0..255";
460      }488      }
461      description489      description
t462        "Description of Entity Part Number";t490        "Describes the Entity Part Number";
463    }
464    leaf part-revision {
465      type string {
466        length "0..255";
467      }491    }
468      description492    leaf manufacturer-assembly-number {
469        "Description of Entity Part Revision";493      type string {
494        length "0..255";
470    }495      }
471    leaf mfg-deviation {
472      type string {
473        length "0..255";
474      }
475      description
476        "Description of Entity MFG Deviation";
477    }
478    leaf hw-version {
479      type string {
480        length "0..255";
481      }
482      description
483        "Description of Entity Hardware Version";
484    }
485    leaf mfg-bits {
486      type string {
487        length "0..255";
488      }
489      description
490        "Description of Entity MFG Bits";
491    }
492    leaf engineer-use {
493      type string {
494        length "0..255";
495      }
496      description
497        "Description of Entity Engineer Use";
498    }
499    leaf snmpoid {
500      type string {
501        length "0..255";
502      }
503      description
504        "Description of Entity SNMP OID";
505    }
506    leaf rma-code {
507      type string {
508        length "0..255";
509      }
510      description
511        "Description of Entity RMA Code";
512    }
513    leaf eci-alpha-number {
514      type string {
515        length "0..255";
516      }
517      description
518        "AlphaNumeric Equipment Catalog Item (ECI) number";
519    }
520  }
521 
522  grouping INVMGR-EEPROM-OPAQUE-DATA {
523    description496      description
524      "invmgr eeprom opaque data";497        "Describes the Entity Manufacture Assembly number
525    container eeprom {498         string";
526      description
527        "EEPROM data not from hex data";
528      uses DIAG-EEPROM;
529    }
530    leaf inv-card-type {
531      type uint8;
532      description
533        "Inventory card type";
534    }
535    leaf opaque-data {
536      type yang:hex-string;
537      description
538        "EEPROM hex data";
539    }
540    leaf opaque-data-size {
541      type uint32;
542      description
543        "size of the EEPROM hex data";
544    }
545    leaf has-eeprom {
546      type uint32;
547      description
548        "use eeprom instead of opaque data";
549    }
550    leaf has-eeprom-format {
551      type uint32;
552      description
553        "Format of the eeprom present";
554    }
555    leaf eeprom-format {
556      type uint32;
557      description
558        "Format of the eeprom";
559    }
560    leaf name {
561      type string {
562        length "0..255";
563      }499    }
564      description500    leaf manufacturer-assembly-revision {
565        "Name of the physical entity";501      type string {
502        length "0..255";
566    }503      }
567    leaf description {
568      type string {
569        length "0..255";
570      }
571      description
572        "A textual description of physical entity";
573    }
574    leaf form-factor {
575      type uint32;
576      description
577        "Optics form factor";
578    }
579    leaf connector-type {
580      type uint32;
581      description
582        "Describes the Entity Connector type";
583    }
584    leaf otn-application-code {
585      type uint32;
586      description
587        "Describes the Entity Otn Application Code";
588    }
589    leaf sonet-application-code {
590      type uint32;
591      description
592        "Describes the Entity Sonet Application Code";
593    }
594    leaf ethernet-compliance-code {
595      type uint32;
596      description
597        "Describes the Entity Ethernet Compliance Code";
598    }
599    leaf date-string {
600      type string {
601        length "0..255";
602      }
603      description
604        "Describes the Entity Date string in IDPROM";
605    }
606    leaf vendor-revision {
607      type string {
608        length "0..255";
609      }
610      description
611        "Vendor rev string in IDPROM";
612    }
613  }
614 
615  grouping NODEID-INFO {
616    description504      description
617      "Node ID Information";505        "Describes the Entity Manufacture assembly
618    leaf node-id {506         revision string";
619      type uint32;507    }
620      description508    leaf manufacturer-firmware-identifier {
621        "Node Id Tuple";509      type string {
510        length "0..255";
622    }511      }
623  }
624 
625  grouping SUPPORTED-INTERFACES-INFO {
626    description512      description
627      "Interface Capability";513        "Describes the Entity Manufacturer Firmware
628    leaf name {514         Identifier string";
629      type string {
630        length "0..255";
631      }515    }
632      description516    leaf manufacturer-software-identifier {
633        "Name of the interface capability";517      type string {
518        length "0..255";
634    }519      }
635  }
636 
637  grouping PLUGGABLE-TYPE {
638    description520      description
639      "Supported Interfaces for pluggable";521        "Describes the Entity Manufacturer Software
640    leaf name {522         Identifier string";
641      type string {
642        length "0..255";
643      }523    }
644      description524    leaf manufacturer-common-language-equipment-identifier {
645        "Name of the pluggable";525      type string {
526        length "0..255";
646    }527      }
647    leaf description {
648      type string {
649        length "0..255";
650      }
651      description
652        "Description for the pluggable";
653    }
654    list supported-interface {
655      description
656        "List of supported interfaces for the pluggable";
657      uses SUPPORTED-INTERFACES-INFO;
658    }
659  }
660 
661  grouping PLUGGABLE-INFO {
662    description528      description
663      "Bag to store the available pluggable types for a529        "Describes the Entity Common LanguageEquipment
664       container";530         Identifier number";
665    list pluggable-type {531    }
666      description532    leaf original-equipment-manufacturer-string {
667        "List of the Pluggables for the container";533      type string {
668      uses PLUGGABLE-TYPE;534        length "0..255";
669    }535      }
670  }
671 
672  grouping VM-NODEID-INFO {
673    description536      description
674      "VM Node ID Information";537        "Describes the Entity String containingOEM
675    leaf vm-node-id {538         information if applicable";
676      type uint32;
677      description
678        "VM Node Id Tuple";
679    }
680  }
681 
682  grouping SUBENTITY-INFO {
683    description
684      "Subentity Information";
685    leaf subentity-name {
686      type string {
687        length "0..255";
688      }
689      description
690        "Describe the Subentity Name";
691    }
692  }
693 
694  grouping INV-PARENT-INFO {
695    description
696      "Bag to indicate the name of the parent entity";
697    leaf name {
698      type string {
699        length "0..255";
700      }
701      description
702        "Parent entity name";
703    }539    }
704  }540  }
705}541}
+ + + + +
Legends
+ + + + +
Colors
 Added 
Changed
Deleted
+ + + + +
Links
(f)irst change
(n)ext change
(t)op
+ + + \ No newline at end of file diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang new file mode 100644 index 000000000..1c1a621aa --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang @@ -0,0 +1,586 @@ +module Cisco-IOS-XR-invmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-invmgr-oper"; + prefix invmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-invmgr-oper-sub4 { + revision-date 2023-04-16; + } + include Cisco-IOS-XR-invmgr-oper-sub3 { + revision-date 2023-04-16; + } + include Cisco-IOS-XR-invmgr-oper-sub2 { + revision-date 2023-04-16; + } + include Cisco-IOS-XR-invmgr-oper-sub1 { + revision-date 2023-04-16; + } + + 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 invmgr package operational data. + + This module contains definitions + for the following management objects: + inventory: Inventory information + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "3.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping THRESH-BAG { + description + "Common node of minor-lo, minor-hi, major-lo, + major-hi, critical-lo, critical-hi"; + container thresh-bag { + status deprecated; + description + "Environment threshold info"; + uses ENVMON-THRESHOLD-INFO; + } + } + + grouping INVMGR-EXT1-OPER-THRESH-BAG { + description + "Common node of minor-lo, minor-hi, major-lo, + major-hi, critical-lo, critical-hiCommon node of + minor-lo, minor-hi, major-lo, major-hi, + critical-lo, critical-hi"; + container thresh-bag { + description + "Environment threshold info"; + uses ENVMON-THRESHOLD-INFO; + } + } + + grouping ATTRIBUTES { + description + "Common node of rack, slot, tsi1, tsi2, tsi3, tsi4 + , tsi5, tsi6, tsi7, tsi8, tsi9, tsi10, tsi11"; + container attributes { + status deprecated; + description + "Shows the different attributes or status of each + entity or component in inventory"; + container inv-asset-bag { + status deprecated; + description + "Inventory Asset Bag"; + uses INV-PHY-ENTITY-ASSET-INFO; + } + container inv-eeprom-info { + status deprecated; + description + "Inventory EDM EEPROM Information Bag"; + uses INVMGR-EEPROM-OPAQUE-DATA; + } + container inv-basic-bag { + status deprecated; + description + "Inventory Basic Bag"; + uses INV-PHY-ENTITY-BASIC-INFO; + } + container env-sensor-info { + status deprecated; + description + "Environment sensor info"; + uses ENVMON-SENSOR-INFO; + } + container pwg-info { + status deprecated; + description + "Inventory EDM PWG info"; + uses INV-PWG-INFO; + } + container threshold { + status deprecated; + description + "Temperature alarm data for platform components"; + container major-hi { + status deprecated; + description + "Major High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-hi { + status deprecated; + description + "Critical High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container minor-lo { + status deprecated; + description + "Minor Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container major-lo { + status deprecated; + description + "Major Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container minor-hi { + status deprecated; + description + "Minor High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-lo { + status deprecated; + description + "Critical Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + } + container fru-info { + status deprecated; + description + "Inventory EDM FRU info"; + uses INV-CARD-FRU-INFO; + } + container env-sensor-info-xml { + status deprecated; + description + "Environment sensor info XML"; + uses ENVMON-SENSOR-INFO-XML; + } + } + } + + grouping SLOT { + description + "Common node of powershelf, fantray, entity"; + list slot { + key "name"; + status deprecated; + description + "Slot number"; + container tsi1s { + status deprecated; + description + "Entity Level 1"; + list tsi1 { + key "name"; + status deprecated; + description + "TSI1"; + container tsi2s { + status deprecated; + description + "Entity Level 2"; + list tsi2 { + key "name"; + status deprecated; + description + "TSI2"; + container tsi3s { + status deprecated; + description + "Entity Level 3"; + list tsi3 { + key "name"; + status deprecated; + description + "TSI3"; + container tsi4s { + status deprecated; + description + "Entity Level 4"; + list tsi4 { + key "name"; + status deprecated; + description + "TSI4"; + container tsi5s { + status deprecated; + description + "Entity Level 5"; + list tsi5 { + key "name"; + status deprecated; + description + "TSI5"; + container tsi6s { + status deprecated; + description + "Entity Level 6"; + list tsi6 { + key "name"; + status deprecated; + description + "TSI6"; + container tsi7s { + status deprecated; + description + "Entity Level 7"; + list tsi7 { + key "name"; + status deprecated; + description + "TSI7"; + container tsi8s { + status deprecated; + description + "Entity Level 8"; + list tsi8 { + key "name"; + status deprecated; + description + "TSI8"; + container tsi9s { + status deprecated; + description + "Entity Level 9"; + list tsi9 { + key "name"; + status deprecated; + description + "TSI9"; + container tsi10s { + status deprecated; + description + "Entity Level 10"; + list tsi10 { + key "name"; + status deprecated; + description + "TSI10"; + container tsi11s { + status deprecated; + description + "Entity Level 11"; + list tsi11 { + key "name"; + status deprecated; + description + "TSI11"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI11"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI10"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI9"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI8"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI7"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI6"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI5"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI4"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI3"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI2"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI1"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses ATTRIBUTES; + } + } + + container inventory { + config false; + description + "Inventory information"; + container racks { + status deprecated; + description + "RackTable"; + list rack { + key "name"; + status deprecated; + description + "Rack name"; + container powershelf { + status deprecated; + description + "Powershelf information"; + uses SLOT; + } + container entity { + status deprecated; + description + "Entity information"; + uses SLOT; + } + container fantray { + status deprecated; + description + "Fantray information"; + uses SLOT; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + uses ATTRIBUTES; + } + } + container entities { + description + "Entities Table"; + list entity { + key "name"; + description + "Entity name"; + container subentities { + description + "SubEntities Table"; + list subentity { + key "name"; + description + "Subentity Bag"; + leaf name { + type string { + length "1..100"; + } + description + "Subentity name"; + } + uses SUBENTITY-INFO; + } + } + container parent-info { + description + "Inventory parent name info"; + uses INV-PARENT-INFO; + } + container attributes { + description + "Shows the different attributes or status of + each entity or component in inventory"; + container inv-asset-bag { + description + "Inventory Asset Bag"; + uses INV-PHY-ENTITY-ASSET-INFO; + } + container inv-basic-bag { + description + "Inventory Basic Bag"; + uses INV-PHY-ENTITY-BASIC-INFO; + } + container inv-eeprom-info { + description + "Inventory EDM EEPROM Information Bag"; + uses INVMGR-EEPROM-OPAQUE-DATA; + } + container pluggable-info { + status deprecated; + description + "Info of supported interaces for pluggable + type"; + uses PLUGGABLE-INFO; + } + container node-id { + description + "Node ID Tuple"; + uses NODEID-INFO; + } + container threshold { + description + "Temperature alarm data for platform + components"; + container minor-lo { + description + "Minor Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container major-hi { + description + "Major High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container minor-hi { + description + "Minor High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-lo { + description + "Critical Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-hi { + description + "Critical High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container major-lo { + description + "Major Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + } + container fru-info { + description + "Inventory EDM FRU info"; + uses INV-CARD-FRU-INFO; + } + container env-sensor-info { + description + "Environment sensor info"; + uses ENVMON-SENSOR-INFO; + } + container vm-node-id { + description + "VM Node ID Tuple"; + uses VM-NODEID-INFO; + } + } + leaf name { + type string { + length "1..100"; + } + description + "Entity name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang.html b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang.html new file mode 100644 index 000000000..26a42e54e --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-invmgr-oper.yang.html @@ -0,0 +1,826 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
f1module Cisco-IOS-XR-invmgr-oper {f1module Cisco-IOS-XR-invmgr-oper {
2  namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-invmgr-oper";2  namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-invmgr-oper";
3  prefix invmgr-oper;3  prefix invmgr-oper;
44
5  import Cisco-IOS-XR-types {5  import Cisco-IOS-XR-types {
6    prefix xr;6    prefix xr;
7  }7  }
8  import cisco-semver {8  import cisco-semver {
9    prefix semver;9    prefix semver;
10  }10  }
11  include Cisco-IOS-XR-invmgr-oper-sub4 {11  include Cisco-IOS-XR-invmgr-oper-sub4 {
12    revision-date 2023-04-16;12    revision-date 2023-04-16;
13  }13  }
14  include Cisco-IOS-XR-invmgr-oper-sub3 {14  include Cisco-IOS-XR-invmgr-oper-sub3 {
15    revision-date 2023-04-16;15    revision-date 2023-04-16;
16  }16  }
17  include Cisco-IOS-XR-invmgr-oper-sub2 {17  include Cisco-IOS-XR-invmgr-oper-sub2 {
18    revision-date 2023-04-16;18    revision-date 2023-04-16;
19  }19  }
20  include Cisco-IOS-XR-invmgr-oper-sub1 {20  include Cisco-IOS-XR-invmgr-oper-sub1 {
21    revision-date 2023-04-16;21    revision-date 2023-04-16;
22  }22  }
2323
24  organization24  organization
25    "Cisco Systems, Inc.";25    "Cisco Systems, Inc.";
26  contact26  contact
27    "Cisco Systems, Inc.27    "Cisco Systems, Inc.
28     Customer Service28     Customer Service
29     29     
30     Postal: 170 West Tasman Drive30     Postal: 170 West Tasman Drive
31     San Jose, CA 9513431     San Jose, CA 95134
32     32     
33     Tel: +1 800 553-NETS33     Tel: +1 800 553-NETS
34     34     
35     E-mail: cs-yang@cisco.com";35     E-mail: cs-yang@cisco.com";
36  description36  description
37    "This module contains a collection of YANG definitions37    "This module contains a collection of YANG definitions
38     for Cisco IOS-XR invmgr package operational data.38     for Cisco IOS-XR invmgr package operational data.
39     39     
40     This module contains definitions40     This module contains definitions
41     for the following management objects:41     for the following management objects:
42       inventory: Inventory information42       inventory: Inventory information
43     43     
44     Copyright (c) 2013-2023 by Cisco Systems, Inc.44     Copyright (c) 2013-2023 by Cisco Systems, Inc.
45     All rights reserved.";45     All rights reserved.";
4646
47  revision 2023-04-16 {47  revision 2023-04-16 {
48    description48    description
49      "Fixing backward compatibility error";49      "Fixing backward compatibility error";
n50    semver:module-version "4.0.0";n50    semver:module-version "3.0.0";
51  }51  }
52  revision 2020-11-09 {52  revision 2020-11-09 {
53    description53    description
54      "Deprecated pluggable-info container54      "Deprecated pluggable-info container
55       2020-07-2455       2020-07-24
56          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR56          IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR
57       2020-07-2457       2020-07-24
58          Addition of revision to match LNT.";58          Addition of revision to match LNT.";
59    semver:module-version "3.0.0";59    semver:module-version "3.0.0";
60  }60  }
61  revision 2020-05-08 {61  revision 2020-05-08 {
62    description62    description
63      "Deprecated Inventory:Rack container.63      "Deprecated Inventory:Rack container.
64       2020-03-3064       2020-03-30
65        Changed threshold-value type to int32.65        Changed threshold-value type to int32.
66       2019-10-0766       2019-10-07
67        Added pluggable-info bag.67        Added pluggable-info bag.
68       2019-10-0468       2019-10-04
69        Removed slot-info, vm-done bags.";69        Removed slot-info, vm-done bags.";
70    semver:module-version "2.0.0";70    semver:module-version "2.0.0";
71  }71  }
72  revision 2019-04-05 {72  revision 2019-04-05 {
73    description73    description
74      "Establish semantic version baseline.";74      "Establish semantic version baseline.";
75    semver:module-version "1.0.0";75    semver:module-version "1.0.0";
76  }76  }
77  revision 2019-03-21 {77  revision 2019-03-21 {
78    description78    description
79      "Resolved string constraints issue.";79      "Resolved string constraints issue.";
80  }80  }
81  revision 2018-08-03 {81  revision 2018-08-03 {
82    description82    description
83      "Added slot-info and parent-info bags.";83      "Added slot-info and parent-info bags.";
84  }84  }
85  revision 2018-04-19 {85  revision 2018-04-19 {
86    description86    description
87      "Added additional bags";87      "Added additional bags";
88  }88  }
89  revision 2017-09-07 {89  revision 2017-09-07 {
90    description90    description
91      "Fixed type translation error.";91      "Fixed type translation error.";
92  }92  }
93  revision 2017-05-01 {93  revision 2017-05-01 {
94    description94    description
95      "Fixing backward compatibility error in module.";95      "Fixing backward compatibility error in module.";
96  }96  }
97  revision 2015-11-09 {97  revision 2015-11-09 {
98    description98    description
99      "IOS XR 6.0 revision.";99      "IOS XR 6.0 revision.";
100  }100  }
101101
102  grouping THRESH-BAG {102  grouping THRESH-BAG {
103    description103    description
104      "Common node of minor-lo, minor-hi, major-lo,104      "Common node of minor-lo, minor-hi, major-lo,
105       major-hi, critical-lo, critical-hi";105       major-hi, critical-lo, critical-hi";
106    container thresh-bag {106    container thresh-bag {
107      status deprecated;107      status deprecated;
108      description108      description
109        "Environment threshold info";109        "Environment threshold info";
110      uses ENVMON-THRESHOLD-INFO;110      uses ENVMON-THRESHOLD-INFO;
111    }111    }
112  }112  }
113113
114  grouping INVMGR-EXT1-OPER-THRESH-BAG {114  grouping INVMGR-EXT1-OPER-THRESH-BAG {
115    description115    description
116      "Common node of minor-lo, minor-hi, major-lo,116      "Common node of minor-lo, minor-hi, major-lo,
117       major-hi, critical-lo, critical-hiCommon node of117       major-hi, critical-lo, critical-hiCommon node of
118       minor-lo, minor-hi, major-lo, major-hi,118       minor-lo, minor-hi, major-lo, major-hi,
119       critical-lo, critical-hi";119       critical-lo, critical-hi";
120    container thresh-bag {120    container thresh-bag {
121      description121      description
122        "Environment threshold info";122        "Environment threshold info";
123      uses ENVMON-THRESHOLD-INFO;123      uses ENVMON-THRESHOLD-INFO;
124    }124    }
125  }125  }
126126
127  grouping ATTRIBUTES {127  grouping ATTRIBUTES {
128    description128    description
129      "Common node of rack, slot, tsi1, tsi2, tsi3, tsi4129      "Common node of rack, slot, tsi1, tsi2, tsi3, tsi4
130       , tsi5, tsi6, tsi7, tsi8, tsi9, tsi10, tsi11";130       , tsi5, tsi6, tsi7, tsi8, tsi9, tsi10, tsi11";
131    container attributes {131    container attributes {
nn132      status deprecated;
132      description133      description
133        "Shows the different attributes or status of each134        "Shows the different attributes or status of each
134         entity or component in inventory";135         entity or component in inventory";
nn136      container inv-asset-bag {
137        status deprecated;
138        description
139          "Inventory Asset Bag";
140        uses INV-PHY-ENTITY-ASSET-INFO;
141      }
142      container inv-eeprom-info {
143        status deprecated;
144        description
145          "Inventory EDM EEPROM Information Bag";
146        uses INVMGR-EEPROM-OPAQUE-DATA;
147      }
148      container inv-basic-bag {
149        status deprecated;
150        description
151          "Inventory Basic Bag";
152        uses INV-PHY-ENTITY-BASIC-INFO;
153      }
135      container env-sensor-info {154      container env-sensor-info {
136        status deprecated;155        status deprecated;
137        description156        description
138          "Environment sensor info";157          "Environment sensor info";
139        uses ENVMON-SENSOR-INFO;158        uses ENVMON-SENSOR-INFO;
140      }159      }
141      container pwg-info {160      container pwg-info {
142        status deprecated;161        status deprecated;
143        description162        description
144          "Inventory EDM PWG info";163          "Inventory EDM PWG info";
145        uses INV-PWG-INFO;164        uses INV-PWG-INFO;
146      }165      }
nn166      container threshold {
167        status deprecated;
168        description
169          "Temperature alarm data for platform components";
170        container major-hi {
171          status deprecated;
172          description
173            "Major High";
174          uses INVMGR-EXT1-OPER-THRESH-BAG;
175        }
176        container critical-hi {
177          status deprecated;
178          description
179            "Critical High";
180          uses INVMGR-EXT1-OPER-THRESH-BAG;
181        }
182        container minor-lo {
183          status deprecated;
184          description
185            "Minor Low";
186          uses INVMGR-EXT1-OPER-THRESH-BAG;
187        }
188        container major-lo {
189          status deprecated;
190          description
191            "Major Low";
192          uses INVMGR-EXT1-OPER-THRESH-BAG;
193        }
194        container minor-hi {
195          status deprecated;
196          description
197            "Minor High";
198          uses INVMGR-EXT1-OPER-THRESH-BAG;
199        }
200        container critical-lo {
201          status deprecated;
202          description
203            "Critical Low";
204          uses INVMGR-EXT1-OPER-THRESH-BAG;
205        }
206      }
207      container fru-info {
208        status deprecated;
209        description
210          "Inventory EDM FRU info";
211        uses INV-CARD-FRU-INFO;
212      }
147      container env-sensor-info-xml {213      container env-sensor-info-xml {
148        status deprecated;214        status deprecated;
149        description215        description
150          "Environment sensor info XML";216          "Environment sensor info XML";
151        uses ENVMON-SENSOR-INFO-XML;217        uses ENVMON-SENSOR-INFO-XML;
n152      }n
153      container inv-asset-bag {
154        status deprecated;
155        description
156          "Inventory Asset Bag";
157        uses INV-PHY-ENTITY-ASSET-INFO;
158      }
159      container threshold {
160        status deprecated;
161        description
162          "Temperature alarm data for platform components";
163        container major-lo {
164          status deprecated;
165          description
166            "Major Low";
167          uses INVMGR-EXT1-OPER-THRESH-BAG;
168        }
169        container critical-hi {
170          status deprecated;
171          description
172            "Critical High";
173          uses INVMGR-EXT1-OPER-THRESH-BAG;
174        }
175        container minor-hi {
176          status deprecated;
177          description
178            "Minor High";
179          uses INVMGR-EXT1-OPER-THRESH-BAG;
180        }
181        container major-hi {
182          status deprecated;
183          description
184            "Major High";
185          uses INVMGR-EXT1-OPER-THRESH-BAG;
186        }
187        container critical-lo {
188          status deprecated;
189          description
190            "Critical Low";
191          uses INVMGR-EXT1-OPER-THRESH-BAG;
192        }
193        container minor-lo {
194          status deprecated;
195          description
196            "Minor Low";
197          uses INVMGR-EXT1-OPER-THRESH-BAG;
198        }
199      }
200      container fru-info {
201        status deprecated;
202        description
203          "Inventory EDM FRU info";
204        uses INV-CARD-FRU-INFO;
205      }
206      container inv-basic-bag {
207        status deprecated;
208        description
209          "Inventory Basic Bag";
210        uses INV-PHY-ENTITY-BASIC-INFO;
211      }
212      container inv-eeprom-info {
213        status deprecated;
214        description
215          "Inventory EDM EEPROM Information Bag";
216        uses INVMGR-EEPROM-OPAQUE-DATA;
217      }218      }
218    }219    }
219  }220  }
220221
221  grouping SLOT {222  grouping SLOT {
222    description223    description
223      "Common node of powershelf, fantray, entity";224      "Common node of powershelf, fantray, entity";
224    list slot {225    list slot {
225      key "name";226      key "name";
226      status deprecated;227      status deprecated;
227      description228      description
228        "Slot number";229        "Slot number";
229      container tsi1s {230      container tsi1s {
230        status deprecated;231        status deprecated;
231        description232        description
232          "Entity Level 1";233          "Entity Level 1";
233        list tsi1 {234        list tsi1 {
234          key "name";235          key "name";
235          status deprecated;236          status deprecated;
236          description237          description
237            "TSI1";238            "TSI1";
238          container tsi2s {239          container tsi2s {
239            status deprecated;240            status deprecated;
240            description241            description
241              "Entity Level 2";242              "Entity Level 2";
242            list tsi2 {243            list tsi2 {
243              key "name";244              key "name";
244              status deprecated;245              status deprecated;
245              description246              description
246                "TSI2";247                "TSI2";
247              container tsi3s {248              container tsi3s {
248                status deprecated;249                status deprecated;
249                description250                description
250                  "Entity Level 3";251                  "Entity Level 3";
251                list tsi3 {252                list tsi3 {
252                  key "name";253                  key "name";
253                  status deprecated;254                  status deprecated;
254                  description255                  description
255                    "TSI3";256                    "TSI3";
256                  container tsi4s {257                  container tsi4s {
257                    status deprecated;258                    status deprecated;
258                    description259                    description
259                      "Entity Level 4";260                      "Entity Level 4";
260                    list tsi4 {261                    list tsi4 {
261                      key "name";262                      key "name";
262                      status deprecated;263                      status deprecated;
263                      description264                      description
264                        "TSI4";265                        "TSI4";
265                      container tsi5s {266                      container tsi5s {
266                        status deprecated;267                        status deprecated;
267                        description268                        description
268                          "Entity Level 5";269                          "Entity Level 5";
269                        list tsi5 {270                        list tsi5 {
270                          key "name";271                          key "name";
271                          status deprecated;272                          status deprecated;
272                          description273                          description
273                            "TSI5";274                            "TSI5";
274                          container tsi6s {275                          container tsi6s {
275                            status deprecated;276                            status deprecated;
276                            description277                            description
277                              "Entity Level 6";278                              "Entity Level 6";
278                            list tsi6 {279                            list tsi6 {
279                              key "name";280                              key "name";
280                              status deprecated;281                              status deprecated;
281                              description282                              description
282                                "TSI6";283                                "TSI6";
283                              container tsi7s {284                              container tsi7s {
284                                status deprecated;285                                status deprecated;
285                                description286                                description
286                                  "Entity Level 7";287                                  "Entity Level 7";
287                                list tsi7 {288                                list tsi7 {
288                                  key "name";289                                  key "name";
289                                  status deprecated;290                                  status deprecated;
290                                  description291                                  description
291                                    "TSI7";292                                    "TSI7";
292                                  container tsi8s {293                                  container tsi8s {
293                                    status deprecated;294                                    status deprecated;
294                                    description295                                    description
295                                      "Entity Level 8";296                                      "Entity Level 8";
296                                    list tsi8 {297                                    list tsi8 {
297                                      key "name";298                                      key "name";
298                                      status deprecated;299                                      status deprecated;
299                                      description300                                      description
300                                        "TSI8";301                                        "TSI8";
301                                      container tsi9s {302                                      container tsi9s {
302                                        status deprecated;303                                        status deprecated;
303                                        description304                                        description
304                                          "Entity Level 9";305                                          "Entity Level 9";
305                                        list tsi9 {306                                        list tsi9 {
306                                          key "name";307                                          key "name";
307                                          status deprecated;308                                          status deprecated;
308                                          description309                                          description
309                                            "TSI9";310                                            "TSI9";
310                                          container tsi10s {311                                          container tsi10s {
311                                            status deprecated;312                                            status deprecated;
312                                            description313                                            description
313                                              "Entity Level 10";314                                              "Entity Level 10";
314                                            list tsi10 {315                                            list tsi10 {
315                                              key "name";316                                              key "name";
316                                              status deprecated;317                                              status deprecated;
317                                              description318                                              description
318                                                "TSI10";319                                                "TSI10";
319                                              container tsi11s {320                                              container tsi11s {
320                                                status deprecated;321                                                status deprecated;
321                                                description322                                                description
322                                                  "Entity Level 11";323                                                  "Entity Level 11";
323                                                list tsi11 {324                                                list tsi11 {
324                                                  key "name";325                                                  key "name";
325                                                  status deprecated;326                                                  status deprecated;
326                                                  description327                                                  description
327                                                    "TSI11";328                                                    "TSI11";
328                                                  leaf name {329                                                  leaf name {
329                                                    type xr:Cisco-ios-xr-string;330                                                    type xr:Cisco-ios-xr-string;
330                                                    description331                                                    description
331                                                      "TSI11";332                                                      "TSI11";
332                                                  }333                                                  }
333                                                  uses ATTRIBUTES;334                                                  uses ATTRIBUTES;
334                                                }335                                                }
335                                              }336                                              }
336                                              leaf name {337                                              leaf name {
337                                                type xr:Cisco-ios-xr-string;338                                                type xr:Cisco-ios-xr-string;
338                                                description339                                                description
339                                                  "TSI10";340                                                  "TSI10";
340                                              }341                                              }
341                                              uses ATTRIBUTES;342                                              uses ATTRIBUTES;
342                                            }343                                            }
343                                          }344                                          }
344                                          leaf name {345                                          leaf name {
345                                            type xr:Cisco-ios-xr-string;346                                            type xr:Cisco-ios-xr-string;
346                                            description347                                            description
347                                              "TSI9";348                                              "TSI9";
348                                          }349                                          }
349                                          uses ATTRIBUTES;350                                          uses ATTRIBUTES;
350                                        }351                                        }
351                                      }352                                      }
352                                      leaf name {353                                      leaf name {
353                                        type xr:Cisco-ios-xr-string;354                                        type xr:Cisco-ios-xr-string;
354                                        description355                                        description
355                                          "TSI8";356                                          "TSI8";
356                                      }357                                      }
357                                      uses ATTRIBUTES;358                                      uses ATTRIBUTES;
358                                    }359                                    }
359                                  }360                                  }
360                                  leaf name {361                                  leaf name {
361                                    type xr:Cisco-ios-xr-string;362                                    type xr:Cisco-ios-xr-string;
362                                    description363                                    description
363                                      "TSI7";364                                      "TSI7";
364                                  }365                                  }
365                                  uses ATTRIBUTES;366                                  uses ATTRIBUTES;
366                                }367                                }
367                              }368                              }
368                              leaf name {369                              leaf name {
369                                type xr:Cisco-ios-xr-string;370                                type xr:Cisco-ios-xr-string;
370                                description371                                description
371                                  "TSI6";372                                  "TSI6";
372                              }373                              }
373                              uses ATTRIBUTES;374                              uses ATTRIBUTES;
374                            }375                            }
375                          }376                          }
376                          leaf name {377                          leaf name {
377                            type xr:Cisco-ios-xr-string;378                            type xr:Cisco-ios-xr-string;
378                            description379                            description
379                              "TSI5";380                              "TSI5";
380                          }381                          }
381                          uses ATTRIBUTES;382                          uses ATTRIBUTES;
382                        }383                        }
383                      }384                      }
384                      leaf name {385                      leaf name {
385                        type xr:Cisco-ios-xr-string;386                        type xr:Cisco-ios-xr-string;
386                        description387                        description
387                          "TSI4";388                          "TSI4";
388                      }389                      }
389                      uses ATTRIBUTES;390                      uses ATTRIBUTES;
390                    }391                    }
391                  }392                  }
392                  leaf name {393                  leaf name {
393                    type xr:Cisco-ios-xr-string;394                    type xr:Cisco-ios-xr-string;
394                    description395                    description
395                      "TSI3";396                      "TSI3";
396                  }397                  }
397                  uses ATTRIBUTES;398                  uses ATTRIBUTES;
398                }399                }
399              }400              }
400              leaf name {401              leaf name {
401                type xr:Cisco-ios-xr-string;402                type xr:Cisco-ios-xr-string;
402                description403                description
403                  "TSI2";404                  "TSI2";
404              }405              }
405              uses ATTRIBUTES;406              uses ATTRIBUTES;
406            }407            }
407          }408          }
408          leaf name {409          leaf name {
409            type xr:Cisco-ios-xr-string;410            type xr:Cisco-ios-xr-string;
410            description411            description
411              "TSI1";412              "TSI1";
412          }413          }
413          uses ATTRIBUTES;414          uses ATTRIBUTES;
414        }415        }
415      }416      }
416      leaf name {417      leaf name {
417        type xr:Cisco-ios-xr-string;418        type xr:Cisco-ios-xr-string;
418        description419        description
419          "Slot name";420          "Slot name";
420      }421      }
421      uses ATTRIBUTES;422      uses ATTRIBUTES;
422    }423    }
423  }424  }
424425
425  container inventory {426  container inventory {
426    config false;427    config false;
427    description428    description
428      "Inventory information";429      "Inventory information";
n429    container entities {n
430      description
431        "Entities Table";
432      list entity {
433        key "name";
434        description
435          "Entity name";
436        container parent-info {
437          description
438            "Inventory parent name info";
439          uses INV-PARENT-INFO;
440        }
441        container subentities {
442          description
443            "SubEntities Table";
444          list subentity {
445            key "name";
446            description
447              "Subentity Bag";
448            leaf name {
449              type string {
450                length "1..100";
451              }
452              description
453                "Subentity name";
454            }
455            uses SUBENTITY-INFO;
456          }
457        }
458        container attributes {
459          description
460            "Shows the different attributes or status of
461             each entity or component in inventory";
462          container vm-node-id {
463            description
464              "VM Node ID Tuple";
465            uses VM-NODEID-INFO;
466          }
467          container threshold {
468            description
469              "Temperature alarm data for platform
470               components";
471            container minor-hi {
472              description
473                "Minor High";
474              uses INVMGR-EXT1-OPER-THRESH-BAG;
475            }
476            container major-hi {
477              description
478                "Major High";
479              uses INVMGR-EXT1-OPER-THRESH-BAG;
480            }
481            container minor-lo {
482              description
483                "Minor Low";
484              uses INVMGR-EXT1-OPER-THRESH-BAG;
485            }
486            container major-lo {
487              description
488                "Major Low";
489              uses INVMGR-EXT1-OPER-THRESH-BAG;
490            }
491            container critical-hi {
492              description
493                "Critical High";
494              uses INVMGR-EXT1-OPER-THRESH-BAG;
495            }
496            container critical-lo {
497              description
498                "Critical Low";
499              uses INVMGR-EXT1-OPER-THRESH-BAG;
500            }
501          }
502          container inv-basic-bag {
503            description
504              "Inventory Basic Bag";
505            uses INV-PHY-ENTITY-BASIC-INFO;
506          }
507          container fru-info {
508            description
509              "Inventory EDM FRU info";
510            uses INV-CARD-FRU-INFO;
511          }
512          container pluggable-info {
513            status deprecated;
514            description
515              "Info of supported interaces for pluggable
516               type";
517            uses PLUGGABLE-INFO;
518          }
519          container inv-asset-bag {
520            description
521              "Inventory Asset Bag";
522            uses INV-PHY-ENTITY-ASSET-INFO;
523          }
524          container env-sensor-info {
525            description
526              "Environment sensor info";
527            uses ENVMON-SENSOR-INFO;
528          }
529          container node-id {
530            description
531              "Node ID Tuple";
532            uses NODEID-INFO;
533          }
534          container inv-eeprom-info {
535            description
536              "Inventory EDM EEPROM Information Bag";
537            uses INVMGR-EEPROM-OPAQUE-DATA;
538          }
539        }
540        leaf name {
541          type string {
542            length "1..100";
543          }
544          description
545            "Entity name";
546        }
547      }
548    }
549    container racks {430    container racks {
550      status deprecated;431      status deprecated;
551      description432      description
552        "RackTable";433        "RackTable";
553      list rack {434      list rack {
554        key "name";435        key "name";
555        status deprecated;436        status deprecated;
556        description437        description
557          "Rack name";438          "Rack name";
nn439        container powershelf {
440          status deprecated;
441          description
442            "Powershelf information";
443          uses SLOT;
444        }
558        container entity {445        container entity {
559          status deprecated;446          status deprecated;
560          description447          description
561            "Entity information";448            "Entity information";
562          uses SLOT;449          uses SLOT;
563        }450        }
n564        container powershelf {n
565          status deprecated;
566          description
567            "Powershelf information";
568          uses SLOT;
569        }
570        container fantray {451        container fantray {
571          status deprecated;452          status deprecated;
572          description453          description
573            "Fantray information";454            "Fantray information";
574          uses SLOT;455          uses SLOT;
575        }456        }
576        leaf name {457        leaf name {
577          type xr:Cisco-ios-xr-string;458          type xr:Cisco-ios-xr-string;
578          description459          description
579            "Rack name";460            "Rack name";
580        }461        }
581        uses ATTRIBUTES;462        uses ATTRIBUTES;
582      }463      }
583    }464    }
tt465    container entities {
466      description
467        "Entities Table";
468      list entity {
469        key "name";
470        description
471          "Entity name";
472        container subentities {
473          description
474            "SubEntities Table";
475          list subentity {
476            key "name";
477            description
478              "Subentity Bag";
479            leaf name {
480              type string {
481                length "1..100";
482              }
483              description
484                "Subentity name";
485            }
486            uses SUBENTITY-INFO;
487          }
488        }
489        container parent-info {
490          description
491            "Inventory parent name info";
492          uses INV-PARENT-INFO;
493        }
494        container attributes {
495          description
496            "Shows the different attributes or status of
497             each entity or component in inventory";
498          container inv-asset-bag {
499            description
500              "Inventory Asset Bag";
501            uses INV-PHY-ENTITY-ASSET-INFO;
502          }
503          container inv-basic-bag {
504            description
505              "Inventory Basic Bag";
506            uses INV-PHY-ENTITY-BASIC-INFO;
507          }
508          container inv-eeprom-info {
509            description
510              "Inventory EDM EEPROM Information Bag";
511            uses INVMGR-EEPROM-OPAQUE-DATA;
512          }
513          container pluggable-info {
514            status deprecated;
515            description
516              "Info of supported interaces for pluggable
517               type";
518            uses PLUGGABLE-INFO;
519          }
520          container node-id {
521            description
522              "Node ID Tuple";
523            uses NODEID-INFO;
524          }
525          container threshold {
526            description
527              "Temperature alarm data for platform
528               components";
529            container minor-lo {
530              description
531                "Minor Low";
532              uses INVMGR-EXT1-OPER-THRESH-BAG;
533            }
534            container major-hi {
535              description
536                "Major High";
537              uses INVMGR-EXT1-OPER-THRESH-BAG;
538            }
539            container minor-hi {
540              description
541                "Minor High";
542              uses INVMGR-EXT1-OPER-THRESH-BAG;
543            }
544            container critical-lo {
545              description
546                "Critical Low";
547              uses INVMGR-EXT1-OPER-THRESH-BAG;
548            }
549            container critical-hi {
550              description
551                "Critical High";
552              uses INVMGR-EXT1-OPER-THRESH-BAG;
553            }
554            container major-lo {
555              description
556                "Major Low";
557              uses INVMGR-EXT1-OPER-THRESH-BAG;
558            }
559          }
560          container fru-info {
561            description
562              "Inventory EDM FRU info";
563            uses INV-CARD-FRU-INFO;
564          }
565          container env-sensor-info {
566            description
567              "Environment sensor info";
568            uses ENVMON-SENSOR-INFO;
569          }
570          container vm-node-id {
571            description
572              "VM Node ID Tuple";
573            uses VM-NODEID-INFO;
574          }
575        }
576        leaf name {
577          type string {
578            length "1..100";
579          }
580          description
581            "Entity name";
582        }
583      }
584    }
584  }585  }
585}586}
+ + + + +
Legends
+ + + + +
Colors
 Added 
Changed
Deleted
+ + + + +
Links
(f)irst change
(n)ext change
(t)op
+ + + \ No newline at end of file diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang new file mode 100644 index 000000000..a9c7dc6c2 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang @@ -0,0 +1,440 @@ +submodule Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 { + belongs-to Cisco-IOS-XR-plat-chas-invmgr-ng-oper { + prefix Cisco-IOS-XR-plat-chas-invmgr-ng-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR plat-chas-invmgr-ng package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-14 { + description + "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper"; + semver:module-version "3.0.0"; + } + revision 2019-10-15 { + description + "Added oper-state leaf to PLATFORM-INFO."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-22 { + description + "Fixing incorrect spelling for node-description in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Node-state { + type enumeration { + enum "not-present" { + value 0; + description + "Not present"; + } + enum "present" { + value 1; + description + "Present"; + } + enum "reset" { + value 2; + description + "Reset"; + } + enum "rommon" { + value 3; + description + "Card booting or rommon"; + } + enum "mbi-boot" { + value 4; + description + "MBI booting"; + } + enum "mbi-run" { + value 5; + description + "Running MBI"; + } + enum "xr-run" { + value 6; + description + "Running ENA"; + } + enum "bring-down" { + value 7; + description + "Bringdown"; + } + enum "xr-fail" { + value 8; + description + "ENA failure"; + } + enum "fdiag-run" { + value 9; + description + "Running FDIAG"; + } + enum "fdiag-fail" { + value 10; + description + "FDIAG failure"; + } + enum "power" { + value 11; + description + "Powered"; + } + enum "unpower" { + value 12; + description + "Unpowered"; + } + enum "mdr-warm-reload" { + value 13; + description + "MDR warm reload"; + } + enum "mdr-mbi-run" { + value 14; + description + "MDR running MBI"; + } + enum "maintenance-mode" { + value 15; + description + "Maintenance mode"; + } + enum "admin-down" { + value 16; + description + "Admin down"; + } + enum "not-monitor" { + value 17; + description + "No MON"; + } + enum "unknown-card" { + value 18; + description + "Unknown"; + } + enum "failed" { + value 19; + description + "Failed"; + } + enum "ok" { + value 20; + description + "OK"; + } + enum "missing" { + value 21; + description + "Missing"; + } + enum "diag-download" { + value 22; + description + "Field diag downloading"; + } + enum "diag-not-monitor" { + value 23; + description + "Field diag unmonitor"; + } + enum "fabric-diag-not-monitor" { + value 24; + description + "Fabric field diag unmonitor"; + } + enum "diag-rp-launch" { + value 25; + description + "Field diag RP launching"; + } + enum "diag-run" { + value 26; + description + "Field diag running"; + } + enum "diag-pass" { + value 27; + description + "Field diag pass"; + } + enum "diag-fail" { + value 28; + description + "Field diag fail"; + } + enum "diag-timeout" { + value 29; + description + "Field diag timeout"; + } + enum "disable" { + value 30; + description + "Disable"; + } + enum "spa-boot" { + value 31; + description + "SPA booting"; + } + enum "not-allowed-online" { + value 32; + description + "Not allowed online"; + } + enum "stop" { + value 33; + description + "Stopped"; + } + enum "incomp-version" { + value 34; + description + "Incompatible FW version"; + } + enum "fpd-hold" { + value 35; + description + "FPD hold"; + } + enum "xr-preparation" { + value 36; + description + "XR preparation"; + } + enum "sync-ready" { + value 37; + description + "Sync ready state"; + } + enum "xr-isolate" { + value 38; + description + "Node isolate state"; + } + enum "ready" { + value 39; + description + "Ready"; + } + enum "invalid" { + value 40; + description + "Invalid"; + } + enum "operational" { + value 41; + description + "Operational"; + } + enum "operational-lock" { + value 42; + description + "Operational lock"; + } + enum "going-down" { + value 43; + description + "Going down"; + } + enum "going-offline" { + value 44; + description + "Going offline"; + } + enum "going-online" { + value 45; + description + "Going online"; + } + enum "offline" { + value 46; + description + "Offline"; + } + enum "up" { + value 47; + description + "Up"; + } + enum "down" { + value 48; + description + "Down"; + } + enum "max" { + value 49; + description + "Max"; + } + enum "unknown" { + value 50; + description + "Unknown"; + } + enum "not-applicable" { + value 51; + description + "N/A"; + } + } + description + "Node state detail"; + } + + typedef Card-redundancy-state { + type enumeration { + enum "red-state-none" { + value 0; + description + "Not Applicable"; + } + enum "active" { + value 1; + description + "Active"; + } + enum "standby" { + value 2; + description + "Standby"; + } + } + description + "Redundancy state detail"; + } + + grouping VM-INFO { + description + "VM Info"; + leaf node-description { + type string; + description + "Node Type"; + } + leaf red-role { + type string; + description + "Node Redundency Role"; + } + leaf partner-name { + type string; + description + "Partner Name"; + } + leaf software-status { + type string; + description + "SW status"; + } + leaf node-ip { + type string; + description + "Node IP Address"; + } + leaf node-name { + type string; + description + "Node name"; + } + } + + grouping PLATFORM-INFO { + description + "Platform information"; + leaf card-type { + type string; + description + "Card type"; + } + leaf card-redundancy-state { + type Card-redundancy-state; + description + "Redundancy state"; + } + leaf plim { + type string; + description + "PLIM"; + } + leaf state { + type Node-state; + description + "State"; + } + leaf is-monitored { + type boolean; + description + "True if monitor state is active"; + } + leaf is-powered { + type boolean; + description + "True if power state is active"; + } + leaf is-shutdown { + type boolean; + description + "True if shutdown state is active"; + } + leaf admin-state { + type string; + description + "Admin state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf node-name { + type string; + description + "Node name"; + } + leaf oper-state { + type string; + description + "Operational state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } +} diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html new file mode 100644 index 000000000..f300548f4 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang.html @@ -0,0 +1,1027 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
f1submodule Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 {f1submodule Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 {
2  belongs-to Cisco-IOS-XR-plat-chas-invmgr-ng-oper {2  belongs-to Cisco-IOS-XR-plat-chas-invmgr-ng-oper {
3    prefix Cisco-IOS-XR-plat-chas-invmgr-ng-oper;3    prefix Cisco-IOS-XR-plat-chas-invmgr-ng-oper;
4  }4  }
55
nn6  import Cisco-IOS-XR-types {
7    prefix xr;
8  }
6  import cisco-semver {9  import cisco-semver {
7    prefix semver;10    prefix semver;
8  }11  }
912
10  organization13  organization
11    "Cisco Systems, Inc.";14    "Cisco Systems, Inc.";
12  contact15  contact
13    "Cisco Systems, Inc.16    "Cisco Systems, Inc.
14     Customer Service17     Customer Service
15     18     
16     Postal: 170 West Tasman Drive19     Postal: 170 West Tasman Drive
17     San Jose, CA 9513420     San Jose, CA 95134
18     21     
19     Tel: +1 800 553-NETS22     Tel: +1 800 553-NETS
20     23     
21     E-mail: cs-yang@cisco.com";24     E-mail: cs-yang@cisco.com";
22  description25  description
23    "This submodule contains a collection of YANG definitions26    "This submodule contains a collection of YANG definitions
24     for Cisco IOS-XR plat-chas-invmgr-ng package operational data.27     for Cisco IOS-XR plat-chas-invmgr-ng package operational data.
25     28     
26     This model is deprecated and is replaced by29     This model is deprecated and is replaced by
27     Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the30     Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the
28     compatible functionalities.31     compatible functionalities.
29     32     
30     Copyright (c) 2013-2020 by Cisco Systems, Inc.33     Copyright (c) 2013-2020 by Cisco Systems, Inc.
31     All rights reserved.";34     All rights reserved.";
3235
33  revision 2020-05-14 {36  revision 2020-05-14 {
34    description37    description
35      "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper";38      "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper";
n36    semver:module-version "2.1.0";n39    semver:module-version "3.0.0";
37  }40  }
38  revision 2019-10-15 {41  revision 2019-10-15 {
39    description42    description
40      "Added oper-state leaf to PLATFORM-INFO.";43      "Added oper-state leaf to PLATFORM-INFO.";
41    semver:module-version "1.1.0";44    semver:module-version "1.1.0";
42  }45  }
43  revision 2019-04-05 {46  revision 2019-04-05 {
44    description47    description
45      "Establish semantic version baseline.";48      "Establish semantic version baseline.";
46    semver:module-version "1.0.0";49    semver:module-version "1.0.0";
47  }50  }
48  revision 2018-01-22 {51  revision 2018-01-22 {
49    description52    description
50      "Fixing incorrect spelling for node-description in module.";53      "Fixing incorrect spelling for node-description in module.";
51  }54  }
52  revision 2015-11-09 {55  revision 2015-11-09 {
53    description56    description
54      "IOS XR 6.0 revision.";57      "IOS XR 6.0 revision.";
55  }58  }
5659
n57  typedef Inv-reset-reason {n60  typedef Node-state {
58    type enumeration {61    type enumeration {
n59      enum "module-reset-reason-unknown" {n62      enum "not-present" {
60        value 0;63        value 0;
61        description64        description
n62          "module reset reason unknown";n65          "Not present";
63      }66      }
n64      enum "module-reset-reason-powerup" {n67      enum "present" {
65        value 1;68        value 1;
66        description69        description
n67          "module reset reason powerup";n70          "Present";
68      }71      }
n69      enum "module-reset-reason-user-shutdown" {n72      enum "reset" {
70        value 2;73        value 2;
71        description74        description
n72          "module reset reason user shutdown";n75          "Reset";
73      }76      }
n74      enum "module-reset-reason-user-reload" {n77      enum "rommon" {
75        value 3;78        value 3;
76        description79        description
n77          "module reset reason user reload";n80          "Card booting or rommon";
78      }81      }
n79      enum "module-reset-reason-auto-reload" {n82      enum "mbi-boot" {
80        value 4;83        value 4;
81        description84        description
n82          "module reset reason auto reload";n85          "MBI booting";
83      }86      }
n84      enum "module-reset-reason-environment" {n87      enum "mbi-run" {
85        value 5;88        value 5;
86        description89        description
n87          "module reset reason environment";n90          "Running MBI";
88      }91      }
n89      enum "module-reset-reason-user-unpower" {n92      enum "xr-run" {
90        value 6;93        value 6;
91        description94        description
n92          "module reset reason user unpower";n95          "Running ENA";
93      }
94    }96      }
97      enum "bring-down" {
98        value 7;
95    description99        description
96      "Inv reset reason";100          "Bringdown";
101      }
102      enum "xr-fail" {
103        value 8;
104        description
105          "ENA failure";
106      }
107      enum "fdiag-run" {
108        value 9;
109        description
110          "Running FDIAG";
111      }
112      enum "fdiag-fail" {
113        value 10;
114        description
115          "FDIAG failure";
116      }
117      enum "power" {
118        value 11;
119        description
120          "Powered";
121      }
122      enum "unpower" {
123        value 12;
124        description
125          "Unpowered";
126      }
127      enum "mdr-warm-reload" {
128        value 13;
129        description
130          "MDR warm reload";
131      }
132      enum "mdr-mbi-run" {
133        value 14;
134        description
135          "MDR running MBI";
136      }
137      enum "maintenance-mode" {
138        value 15;
139        description
140          "Maintenance mode";
141      }
142      enum "admin-down" {
143        value 16;
144        description
145          "Admin down";
146      }
147      enum "not-monitor" {
148        value 17;
149        description
150          "No MON";
151      }
152      enum "unknown-card" {
153        value 18;
154        description
155          "Unknown";
156      }
157      enum "failed" {
158        value 19;
159        description
160          "Failed";
161      }
162      enum "ok" {
163        value 20;
164        description
165          "OK";
166      }
167      enum "missing" {
168        value 21;
169        description
170          "Missing";
171      }
172      enum "diag-download" {
173        value 22;
174        description
175          "Field diag downloading";
176      }
177      enum "diag-not-monitor" {
178        value 23;
179        description
180          "Field diag unmonitor";
181      }
182      enum "fabric-diag-not-monitor" {
183        value 24;
184        description
185          "Fabric field diag unmonitor";
186      }
187      enum "diag-rp-launch" {
188        value 25;
189        description
190          "Field diag RP launching";
191      }
192      enum "diag-run" {
193        value 26;
194        description
195          "Field diag running";
196      }
197      enum "diag-pass" {
198        value 27;
199        description
200          "Field diag pass";
201      }
202      enum "diag-fail" {
203        value 28;
204        description
205          "Field diag fail";
206      }
207      enum "diag-timeout" {
208        value 29;
209        description
210          "Field diag timeout";
211      }
212      enum "disable" {
213        value 30;
214        description
215          "Disable";
216      }
217      enum "spa-boot" {
218        value 31;
219        description
220          "SPA booting";
221      }
222      enum "not-allowed-online" {
223        value 32;
224        description
225          "Not allowed online";
226      }
227      enum "stop" {
228        value 33;
229        description
230          "Stopped";
231      }
232      enum "incomp-version" {
233        value 34;
234        description
235          "Incompatible FW version";
236      }
237      enum "fpd-hold" {
238        value 35;
239        description
240          "FPD hold";
241      }
242      enum "xr-preparation" {
243        value 36;
244        description
245          "XR preparation";
246      }
247      enum "sync-ready" {
248        value 37;
249        description
250          "Sync ready state";
251      }
252      enum "xr-isolate" {
253        value 38;
254        description
255          "Node isolate state";
256      }
257      enum "ready" {
258        value 39;
259        description
260          "Ready";
261      }
262      enum "invalid" {
263        value 40;
264        description
265          "Invalid";
266      }
267      enum "operational" {
268        value 41;
269        description
270          "Operational";
271      }
272      enum "operational-lock" {
273        value 42;
274        description
275          "Operational lock";
276      }
277      enum "going-down" {
278        value 43;
279        description
280          "Going down";
281      }
282      enum "going-offline" {
283        value 44;
284        description
285          "Going offline";
286      }
287      enum "going-online" {
288        value 45;
289        description
290          "Going online";
291      }
292      enum "offline" {
293        value 46;
294        description
295          "Offline";
296      }
297      enum "up" {
298        value 47;
299        description
300          "Up";
301      }
302      enum "down" {
303        value 48;
304        description
305          "Down";
306      }
307      enum "max" {
308        value 49;
309        description
310          "Max";
311      }
312      enum "unknown" {
313        value 50;
314        description
315          "Unknown";
316      }
317      enum "not-applicable" {
318        value 51;
319        description
320          "N/A";
321      }
97  }322    }
323    description
324      "Node state detail";
325  }
98326
n99  typedef Inv-monitor-state {n327  typedef Card-redundancy-state {
100    type enumeration {328    type enumeration {
n101      enum "unmonitored" {n329      enum "red-state-none" {
102        value 0;330        value 0;
103        description331        description
n104          "unmonitored";n332          "Not Applicable";
105      }333      }
n106      enum "monitored" {n334      enum "active" {
107        value 1;335        value 1;
108        description336        description
n109          "monitored";n337          "Active";
110      }
111    }338      }
112    description339      enum "standby" {
113      "Inv monitor state";
114  }
115 
116  typedef Inv-card-state {
117    type enumeration {
118      enum "inv-card-not-present" {
119        value 0;
120        description
121          "inv card not present";
122      }
123      enum "inv-card-present" {
124        value 1;
125        description
126          "inv card present";
127      }
128      enum "inv-card-reset" {
129        value 2;340        value 2;
130        description341        description
n131          "inv card reset";n342          "Standby";
343      }
132      }344    }
133      enum "inv-card-booting" {345    description
134        value 3;346      "Redundancy state detail";
347  }
348 
349  grouping VM-INFO {
350    description
351      "VM Info";
352    leaf node-description {
353      type string;
135        description354      description
136          "inv card booting";355        "Node Type";
137      }356    }
138      enum "inv-card-mbi-booting" {357    leaf red-role {
139        value 4;358      type string;
140        description359      description
141          "inv card mbi booting";360        "Node Redundency Role";
142      }361    }
143      enum "inv-card-running-mbi" {362    leaf partner-name {
144        value 5;363      type string;
145        description364      description
146          "inv card running mbi";365        "Partner Name";
147      }366    }
148      enum "inv-card-running-ena" {367    leaf software-status {
149        value 6;368      type string;
150        description369      description
151          "inv card running ena";370        "SW status";
152      }371    }
153      enum "inv-card-bring-down" {372    leaf node-ip {
154        value 7;373      type string;
155        description374      description
156          "inv card bring down";375        "Node IP Address";
157      }376    }
158      enum "inv-card-ena-failure" {377    leaf node-name {
159        value 8;378      type string;
160        description379      description
161          "inv card ena failure";380        "Node name";
162      }381    }
163      enum "inv-card-f-diag-run" {382  }
164        value 9;383 
384  grouping PLATFORM-INFO {
385    description
386      "Platform information";
387    leaf card-type {
388      type string;
165        description389      description
166          "inv card f diag run";390        "Card type";
167      }391    }
168      enum "inv-card-f-diag-failure" {392    leaf card-redundancy-state {
169        value 10;393      type Card-redundancy-state;
170        description394      description
171          "inv card f diag failure";395        "Redundancy state";
172      }396    }
173      enum "inv-card-powered" {397    leaf plim {
174        value 11;398      type string;
175        description399      description
176          "inv card powered";400        "PLIM";
177      }401    }
178      enum "inv-card-unpowered" {402    leaf state {
179        value 12;403      type Node-state;
180        description404      description
181          "inv card unpowered";405        "State";
182      }406    }
183      enum "inv-card-mdr" {407    leaf is-monitored {
184        value 13;
185        description
186          "inv card mdr";
187      }
188      enum "inv-card-mdr-running-mbi" {
189        value 14;
190        description
191          "inv card mdr running mbi";
192      }
193      enum "inv-card-main-t-mode" {
194        value 15;
195        description
196          "inv card main t mode";
197      }
198      enum "inv-card-admin-down" {
199        value 16;
200        description
201          "inv card admin down";
202      }
203      enum "inv-card-no-mon" {
204        value 17;
205        description
206          "inv card no mon";
207      }
208      enum "inv-card-unknown" {
209        value 18;
210        description
211          "inv card unknown";
212      }
213      enum "inv-card-failed" {
214        value 19;
215        description
216          "inv card failed";
217      }
218      enum "inv-card-ok" {
219        value 20;
220        description
221          "inv card ok";
222      }
223      enum "inv-card-missing" {
224        value 21;
225        description
226          "inv card missing";
227      }
228      enum "inv-card-field-diag-downloading" {
229        value 22;
230        description
231          "inv card field diag downloading";
232      }
233      enum "inv-card-field-diag-unmonitor" {
234        value 23;
235        description
236          "inv card field diag unmonitor";
237      }
238      enum "inv-card-fabric-field-diag-unmonitor" {
239        value 24;
240        description
241          "inv card fabric field diag unmonitor";
242      }
243      enum "inv-card-field-diag-rp-launching" {
244        value 25;
245        description
246          "inv card field diag rp launching";
247      }
248      enum "inv-card-field-diag-running" {
249        value 26;
250        description
251          "inv card field diag running";
252      }
253      enum "inv-card-field-diag-pass" {
254        value 27;
255        description
256          "inv card field diag pass";
257      }
258      enum "inv-card-field-diag-fail" {
259        value 28;
260        description
261          "inv card field diag fail";
262      }
263      enum "inv-card-field-diag-timeout" {
264        value 29;
265        description
266          "inv card field diag timeout";
267      }
268      enum "inv-card-disabled" {
269        value 30;
270        description
271          "inv card disabled";
272      }
273      enum "inv-card-spa-booting" {
274        value 31;
275        description
276          "inv card spa booting";
277      }
278      enum "inv-card-not-allowed-online" {
279        value 32;
280        description
281          "inv card not allowed online";
282      }
283      enum "inv-card-stopped" {
284        value 33;
285        description
286          "inv card stopped";
287      }
288      enum "inv-card-incompatible-fw-ver" {
289        value 34;
290        description
291          "inv card incompatible fw ver";
292      }
293      enum "inv-card-fpd-hold" {
294        value 35;
295        description
296          "inv card fpd hold";
297      }
298      enum "inv-card-node-prep" {
299        value 36;
300        description
301          "inv card node prep";
302      }
303      enum "inv-card-updating-fpd" {
304        value 37;
305        description
306          "inv card updating fpd";
307      }
308      enum "inv-card-num-states" {
309        value 38;
310        description
311          "inv card num states";
312      }
313    }
314    description
315      "Inv card state";
316  }
317 
318  typedef Inv-power-admin-state {
319    type enumeration {
320      enum "admin-power-invalid" {
321        value 0;
322        description
323          "admin power invalid";
324      }
325      enum "admin-on" {
326        value 2;
327        description
328          "admin on";
329      }
330      enum "admin-off" {
331        value 3;
332        description
333          "admin off";
334      }
335    }
336    description
337      "Inv power admin state";
338  }
339 
340  typedef Inv-admin-state {
341    type enumeration {
342      enum "admin-state-invalid" {
343        value 0;
344        description
345          "admin state invalid";
346      }
347      enum "admin-up" {
348        value 1;
349        description
350          "admin up";
351      }
352      enum "admin-down" {
353        value 2;
354        description
355          "admin down";
356      }
357    }
358    description
359      "Inv admin state";
360  }
361 
362  grouping INV-XML-DISK-ATTRIBUTE {
363    description
364      "Disk attribute";
365    leaf disk-name {
366      type string {
367        length "0..255";
368      }
369      description
370        "Disk name";
371    }
372    leaf disk-size {
373      type uint32;
374      units "megabyte";
375      description
376        "Disk size in mega-bytes";
377    }
378    leaf sector-size {
379      type uint32;
380      units "byte";
381      description
382        "Disk sector size in bytes";
383    }
384  }
385 
386  grouping INV-XML-DISK-INFO {
387    description
388      "Disk information";
389    leaf disk-name {
390      type string {
391        length "0..255";
392      }
393      description
394        "(Deprecated) Disk name";
395    }
396    leaf disk-size {
397      type uint32;
398      units "megabyte";
399      description
400        "(Deprecated) Disk size in mega-bytes";
401    }
402    leaf sector-size {
403      type uint32;
404      units "byte";
405      description
406        "(Deprecated) Disk sector size in bytes";
407    }
408    list disks {
409      description
410        "Disk attributes";
411      uses INV-XML-DISK-ATTRIBUTE;
412    }
413  }
414 
415  grouping INV-BOOTFLASH {
416    description
417      "Bootflash information";
418    leaf image-name {
419      type string {
420        length "0..255";
421      }
422      description
423        "Image name";
424    }
425    leaf platform-type {
426      type string {
427        length "0..255";
428      }
429      description
430        "Platform Type";
431    }
432    leaf major-version {
433      type uint32;
434      description
435        "Major version";
436    }
437    leaf minor-version {
438      type uint32;
439      description
440        "Minor version";
441    }
442    leaf micro-image-version {
443      type string {
444        length "0..255";
445      }
446      description
447        "Micro image version";
448    }
449    leaf platform-specific {
450      type string {
451        length "0..255";
452      }
453      description
454        "Platform specific text";
455    }
456    leaf release-type {
457      type string {
458        length "0..255";
459      }
460      description
461        "Release type";
462    }
463    leaf bootflash-type {
464      type string {
465        length "0..255";
466      }
467      description
468        "Bootflash type e.g. SIMM";
469    }
470    leaf bootflash-size {
471      type uint32;
472      units "kilobyte";
473      description
474        "Bootflash size in kilo-bytes";
475    }
476    leaf sector-size {
477      type uint32;
478      units "byte";
479      description
480        "Sector size in bytes";
481    }
482  }
483 
484  grouping INV-IMAGE {
485    description
486      "Image information";
487    leaf image-name {
488      type string {
489        length "0..255";
490      }
491      description
492        "Image name";
493    }
494    leaf major-version {
495      type uint32;
496      description
497        "Major version";
498    }
499    leaf minor-version {
500      type uint32;
501      description
502        "Minor version";
503    }
504    leaf micro-image-version {
505      type string {
506        length "0..255";
507      }
508      description
509        "Micro image version";
510    }
511    leaf platform-specific {
512      type string {
513        length "0..255";
514      }
515      description
516        "Platform specific text";
517    }
518    leaf release-type {
519      type string {
520        length "0..255";
521      }
522      description
523        "Release type";
524    }
525  }
526 
527  grouping INV-XML-MOTHERBOARD-INFO {
528    description
529      "Motherboard information";
530    container rom {
531      description
532        "ROM information";
533      uses INV-IMAGE;
534    }
535    container bootflash {
536      description
537        "Bootflash information";
538      uses INV-BOOTFLASH;
539    }
540    container processor {
541      description
542        "Processor information";
543      uses INV-PROCESSOR;
544    }
545    leaf main-memory-size {
546      type uint64;
547      units "byte";
548      description
549        "Memory size in bytes";
550    }
551    leaf nvram-size {
552      type uint64;
553      units "byte";
554      description
555        "NVRAM size in bytes";
556    }
557  }
558 
559  grouping INV-PROCESSOR {
560    description
561      "Processor information";
562    leaf processor-type {
563      type string {
564        length "0..255";
565      }
566      description
567        "Type e.g. 7457";
568    }
569    leaf speed {
570      type string {
571        length "0..255";
572      }
573      description
574        "Speed e.g. 1197Mhz";
575    }
576    leaf revision {
577      type string {
578        length "0..255";
579      }
580      description
581        "Revision. e.g 1.1";
582    }
583  }
584 
585  grouping INV-TIMESPEC {
586    description
587      "Inventory FRU Info Time Spec";
588    leaf time-in-seconds {
589      type int32;
590      units "second";
591      description
592        "Time Value in Seconds";
593    }
594    leaf time-in-nano-seconds {
595      type int32;
596      units "nanosecond";
597      description
598        "Time Value in Nano-seconds";
599    }
600  }
601 
602  grouping INV-XML-FRU-INFO {
603    description
604      "FRU Information";
605    container last-operational-state-change {
606      description
607        "Time operational state is   last changed";
608      uses INV-TIMESPEC;
609    }
610    container module-up-time {
611      description
612        "Describes the Entity Module up time";
613      uses INV-TIMESPEC;
614    }
615    leaf module-administrative-state {
616      type Inv-admin-state;
617      description
618        "Describes the Entity Administrative    state";
619    }
620    leaf module-power-administrative-state {
621      type Inv-power-admin-state;
622      description
623        "Describes the Entity Power administrative state";
624    }
625    leaf module-operational-state {
626      type Inv-card-state;
627      description
628        "Describes the Entity Operation state";
629    }
630    leaf module-monitor-state {
631      type Inv-monitor-state;
632      description
633        "Describes the Entity Monitor state";
634    }
635    leaf module-reset-reason {
636      type Inv-reset-reason;
637      description
638        "Describes the Entity Reset reason state";
639    }
640  }
641 
642  grouping INV-XML-ENTITY-BASIC-INFO {
643    description
644      "Bag contains all the basic inventory information
645       for each entity";
646    leaf name {
647      type string {
648        length "0..255";
649      }
650      description
651        "Describes the Entity name string";
652    }
653    leaf description {
654      type string {
655        length "0..255";
656      }
657      description
658        "describes in user-readable termswhat the entity
659         in question does";
660    }
661    leaf model-name {
662      type string {
663        length "0..255";
664      }
665      description
666        "Describes the Entity model name";
667    }
668    leaf hardware-revision {
669      type string {
670        length "0..255";
671      }
672      description
673        "Describes the Entity hw revision string";
674    }
675    leaf serial-number {
676      type string {
677        length "0..255";
678      }
679      description
680        "Describes the Entity serial number";
681    }
682    leaf firmware-revision {
683      type string {
684        length "0..255";
685      }
686      description
687        "Describes the Entity firmware revision string";
688    }
689    leaf software-revision {
690      type string {
691        length "0..255";
692      }
693      description
694        "Describes the Entity software revision string";
695    }
696    leaf vendor-type {
697      type string {
698        length "0..255";
699      }
700      description
701        "maps to the vendor OID string";
702    }
703    leaf is-field-replaceable-unit {
704      type boolean;408      type boolean;
705      description409      description
t706        "1 if Field Replaceable Unit 0, if not";t410        "True if monitor state is active";
411    }
412    leaf is-powered {
413      type boolean;
414      description
415        "True if power state is active";
416    }
417    leaf is-shutdown {
418      type boolean;
419      description
420        "True if shutdown state is active";
421    }
422    leaf admin-state {
423      type string;
424      description
425        "Admin state";
426      xr:event-telemetry "Subscribe Telemetry Event";
427    }
428    leaf node-name {
429      type string;
430      description
431        "Node name";
432    }
433    leaf oper-state {
434      type string;
435      description
436        "Operational state";
437      xr:event-telemetry "Subscribe Telemetry Event";
707    }438    }
708  }439  }
709}440}
+ + + + +
Legends
+ + + + +
Colors
 Added 
Changed
Deleted
+ + + + +
Links
(f)irst change
(n)ext change
(t)op
+ + + \ No newline at end of file diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang new file mode 100644 index 000000000..8e67b5ec6 --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang @@ -0,0 +1,135 @@ +module Cisco-IOS-XR-plat-chas-invmgr-ng-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-plat-chas-invmgr-ng-oper"; + prefix plat-chas-invmgr-ng-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 { + revision-date 2020-05-14; + } + + 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 plat-chas-invmgr-ng package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + platform: Platform information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-14 { + description + "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper"; + semver:module-version "3.0.0"; + } + revision 2019-10-15 { + description + "Added oper-state leaf to PLATFORM-INFO."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-22 { + description + "Fixing incorrect spelling for node-description in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping STATE { + description + "Common node of instance, slot"; + container state { + description + "State information"; + uses PLATFORM-INFO; + } + } + + container platform { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang + ,Cisco-IOS-XR-platform-inventory-oper.yang which + will provide the compatible functionalities. + Platform information"; + container racks { + description + "Table of racks"; + list rack { + key "rack-name"; + description + "Rack name"; + container slots { + description + "Table of slots"; + list slot { + key "slot-name"; + description + "Slot name"; + container instances { + description + "Table of Instances"; + list instance { + key "instance-name"; + description + "Instance name"; + leaf instance-name { + type string; + description + "Instance name"; + } + uses STATE; + } + } + container vm { + description + "VM information"; + uses VM-INFO; + } + leaf slot-name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses STATE; + } + } + leaf rack-name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html new file mode 100644 index 000000000..06e664ddc --- /dev/null +++ b/vendor/cisco/xr/792/8000/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang.html @@ -0,0 +1,817 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
f1module Cisco-IOS-XR-plat-chas-invmgr-ng-oper {f1module Cisco-IOS-XR-plat-chas-invmgr-ng-oper {
2  namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-plat-chas-invmgr-ng-oper";2  namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-plat-chas-invmgr-ng-oper";
3  prefix plat-chas-invmgr-ng-oper;3  prefix plat-chas-invmgr-ng-oper;
44
5  import Cisco-IOS-XR-types {5  import Cisco-IOS-XR-types {
6    prefix xr;6    prefix xr;
7  }7  }
8  import cisco-semver {8  import cisco-semver {
9    prefix semver;9    prefix semver;
n10  }n
11  include Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2 {
12    revision-date 2020-05-14;
13  }10  }
14  include Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 {11  include Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 {
15    revision-date 2020-05-14;12    revision-date 2020-05-14;
16  }13  }
1714
18  organization15  organization
19    "Cisco Systems, Inc.";16    "Cisco Systems, Inc.";
20  contact17  contact
21    "Cisco Systems, Inc.18    "Cisco Systems, Inc.
22     Customer Service19     Customer Service
23     20     
24     Postal: 170 West Tasman Drive21     Postal: 170 West Tasman Drive
25     San Jose, CA 9513422     San Jose, CA 95134
26     23     
27     Tel: +1 800 553-NETS24     Tel: +1 800 553-NETS
28     25     
29     E-mail: cs-yang@cisco.com";26     E-mail: cs-yang@cisco.com";
30  description27  description
31    "This module contains a collection of YANG definitions28    "This module contains a collection of YANG definitions
32     for Cisco IOS-XR plat-chas-invmgr-ng package operational data.29     for Cisco IOS-XR plat-chas-invmgr-ng package operational data.
33     30     
34     This model is deprecated and is replaced by31     This model is deprecated and is replaced by
35     Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the32     Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the
36     compatible functionalities.33     compatible functionalities.
37     34     
38     This module contains definitions35     This module contains definitions
39     for the following management objects:36     for the following management objects:
40       platform: Platform information37       platform: Platform information
n41       platform-inventory: Inventory operational datan
42     38     
43     Copyright (c) 2013-2020 by Cisco Systems, Inc.39     Copyright (c) 2013-2020 by Cisco Systems, Inc.
44     All rights reserved.";40     All rights reserved.";
4541
46  revision 2020-05-14 {42  revision 2020-05-14 {
47    description43    description
48      "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper";44      "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper";
n49    semver:module-version "2.1.0";n45    semver:module-version "3.0.0";
50  }46  }
51  revision 2019-10-15 {47  revision 2019-10-15 {
52    description48    description
53      "Added oper-state leaf to PLATFORM-INFO.";49      "Added oper-state leaf to PLATFORM-INFO.";
54    semver:module-version "1.1.0";50    semver:module-version "1.1.0";
55  }51  }
56  revision 2019-04-05 {52  revision 2019-04-05 {
57    description53    description
58      "Establish semantic version baseline.";54      "Establish semantic version baseline.";
59    semver:module-version "1.0.0";55    semver:module-version "1.0.0";
60  }56  }
61  revision 2018-01-22 {57  revision 2018-01-22 {
62    description58    description
63      "Fixing incorrect spelling for node-description in module.";59      "Fixing incorrect spelling for node-description in module.";
64  }60  }
65  revision 2015-11-09 {61  revision 2015-11-09 {
66    description62    description
67      "IOS XR 6.0 revision.";63      "IOS XR 6.0 revision.";
68  }64  }
6965
70  grouping STATE {66  grouping STATE {
71    description67    description
72      "Common node of instance, slot";68      "Common node of instance, slot";
73    container state {69    container state {
74      description70      description
75        "State information";71        "State information";
76      uses PLATFORM-INFO;72      uses PLATFORM-INFO;
77    }73    }
78  }74  }
7975
n80  grouping PORT-SLOT-TABLE {n
81    description
82      "Common node of card, module";
83    container port-slots {
84      description
85        "Table of port slots";
86      list port-slot {
87        key "name";
88        description
89          "Port slot number";
90        leaf name {
91          type xr:Cisco-ios-xr-string;
92          description
93            "Port slot name";
94        }
95        uses PORT-TABLE;
96        uses INVENTORY-COMMON-SENSOR-TABLE;
97        uses INVENTORY-COMMON-ATTRIBUTES;
98      }
99    }
100  }
101 
102  grouping SLOT-TABLE {
103    description
104      "Common node of rack, rack";
105    container slots {
106      description
107        "Table of slots";
108      list slot {
109        key "name";
110        description
111          "Slot name";
112        container cards {
113          description
114            "Table of cards";
115          list card {
116            key "name";
117            description
118              "Card number";
119            container hardware-information {
120              description
121                "HardwareInformationDir";
122              container processor-information {
123                description
124                  "ProcesorInformation";
125                uses INV-PROCESSOR;
126              }
127              container motherboard-information {
128                description
129                  "MotherboardInformation";
130                uses INV-XML-MOTHERBOARD-INFO;
131              }
132              container bootflash-information {
133                description
134                  "BootflashInformation";
135                uses INV-BOOTFLASH;
136              }
137              container disk-information {
138                description
139                  "DiskInformation";
140                uses INV-XML-DISK-INFO;
141              }
142            }
143            container sub-slots {
144              description
145                "Table of subslots";
146              list sub-slot {
147                key "name";
148                description
149                  "Subslot number";
150                container module {
151                  description
152                    "Module of a subslot";
153                  uses PORT-SLOT-TABLE;
154                  uses INVENTORY-COMMON-SENSOR-TABLE;
155                  uses INVENTORY-COMMON-ATTRIBUTES;
156                }
157                leaf name {
158                  type xr:Cisco-ios-xr-string;
159                  description
160                    "Subslot name";
161                }
162                uses INVENTORY-COMMON-ATTRIBUTES;
163              }
164            }
165            container modules {
166              description
167                "Table of modules";
168              list module {
169                key "module-name";
170                description
171                  "A module";
172                container sub-modules {
173                  description
174                    "Table of Sub Module components ";
175                  list sub-module {
176                    key "name";
177                    description
178                      "Sub Module component number";
179                    container sub-module-l2s {
180                      description
181                        "Table of Sub Module components ";
182                      list sub-module-l2 {
183                        key "name";
184                        description
185                          "Sub Module component number";
186                        container sub-module-l3s {
187                          description
188                            "Table of Sub Module components ";
189                          list sub-module-l3 {
190                            key "name";
191                            description
192                              "Sub Module component number";
193                            container sub-module-l4s {
194                              description
195                                "Table of Sub Module components ";
196                              list sub-module-l4 {
197                                key "name";
198                                description
199                                  "Sub Module component number";
200                                container sub-module-l5s {
201                                  description
202                                    "Table of Sub Module components ";
203                                  list sub-module-l5 {
204                                    key "name";
205                                    description
206                                      "Sub Module component number";
207                                    leaf name {
208                                      type xr:Cisco-ios-xr-string;
209                                      description
210                                        "HW component name";
211                                    }
212                                    uses INVENTORY-EXT2-OPER-SENSOR-TABLE;
213                                    uses INVENTORY-EXT2-OPER-ATTRIBUTES;
214                                    uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE;
215                                  }
216                                }
217                                leaf name {
218                                  type xr:Cisco-ios-xr-string;
219                                  description
220                                    "HW component name";
221                                }
222                                uses INVENTORY-EXT2-OPER-SENSOR-TABLE;
223                                uses INVENTORY-EXT2-OPER-ATTRIBUTES;
224                                uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE;
225                              }
226                            }
227                            container ports {
228                              description
229                                "Table of spirit port slots";
230                              list port {
231                                key "name";
232                                description
233                                  "Port number";
234                                leaf name {
235                                  type xr:Cisco-ios-xr-string;
236                                  description
237                                    "Port name";
238                                }
239                                uses INVENTORY-EXT2-OPER-ATTRIBUTES;
240                              }
241                            }
242                            leaf name {
243                              type xr:Cisco-ios-xr-string;
244                              description
245                                "HW component name";
246                            }
247                            uses INVENTORY-EXT2-OPER-SENSOR-TABLE;
248                            uses INVENTORY-EXT2-OPER-ATTRIBUTES;
249                            uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE;
250                          }
251                        }
252                        leaf name {
253                          type xr:Cisco-ios-xr-string;
254                          description
255                            "HW component name";
256                        }
257                        uses INVENTORY-EXT2-OPER-SENSOR-TABLE;
258                        uses INVENTORY-EXT2-OPER-ATTRIBUTES;
259                        uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE;
260                      }
261                    }
262                    container ports {
263                      description
264                        "Table of spirit port slots";
265                      list port {
266                        key "name";
267                        description
268                          "Port number";
269                        container port-modules {
270                          description
271                            "Table of Module components ";
272                          list port-module {
273                            key "name";
274                            description
275                              "POrt Module component number";
276                            leaf name {
277                              type xr:Cisco-ios-xr-string;
278                              description
279                                "module name";
280                            }
281                            uses ATTRIBUTES;
282                          }
283                        }
284                        leaf name {
285                          type xr:Cisco-ios-xr-string;
286                          description
287                            "Port name";
288                        }
289                        uses ATTRIBUTES;
290                        uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE;
291                      }
292                    }
293                    leaf name {
294                      type xr:Cisco-ios-xr-string;
295                      description
296                        "HW component name";
297                    }
298                    uses SENSOR-TABLE;
299                    uses ATTRIBUTES;
300                    uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE;
301                  }
302                }
303                leaf module-name {
304                  type xr:Cisco-ios-xr-string;
305                  description
306                    "Module name";
307                }
308                uses SENSOR-TABLE;
309                uses ATTRIBUTES;
310                uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE;
311              }
312            }
313            leaf name {
314              type xr:Cisco-ios-xr-string;
315              description
316                "Card name";
317            }
318            uses PORT-TABLE;
319            uses PORT-SLOT-TABLE;
320            uses HW-COMPONENT-TABLE;
321            uses INVENTORY-COMMON-SENSOR-TABLE;
322            uses INVENTORY-COMMON-ATTRIBUTES;
323          }
324        }
325        leaf name {
326          type xr:Cisco-ios-xr-string;
327          description
328            "Slot name";
329        }
330        uses INVENTORY-COMMON-ATTRIBUTES;
331      }
332    }
333  }
334 
335  grouping PLATFORM-COMMON-SLOT-TABLE {
336    description
337      "Common node of rack, rackCommon node of rack,
338       rack";
339    container slots {
340      description
341        "Table of slots";
342      list slot {
343        key "slot-name";
344        description
345          "Slot name";
346        container instances {
347          description
348            "Table of Instances";
349          list instance {
350            key "instance-name";
351            description
352              "Instance name";
353            leaf instance-name {
354              type string;
355              description
356                "Instance name";
357            }
358            uses STATE;
359          }
360        }
361        container vm {
362          description
363            "VM information";
364          uses VM-INFO;
365        }
366        leaf slot-name {
367          type xr:Cisco-ios-xr-string;
368          description
369            "Slot name";
370        }
371        uses STATE;
372      }
373    }
374  }
375 
376  grouping SENSOR-TABLE {
377    description
378      "Common node of module, sub-module, hw-component";
379    container sensors {
380      description
381        "Table of sensors";
382      list sensor {
383        key "name";
384        description
385          "Sensor number";
386        leaf name {
387          type xr:Cisco-ios-xr-string;
388          description
389            "Sensor name";
390        }
391        uses ATTRIBUTES;
392      }
393    }
394  }
395 
396  grouping INVENTORY-EXT2-OPER-SENSOR-TABLE {
397    description
398      "Common node of module, sub-module,
399       hw-componentCommon node of hw-component,
400       sub-module-l2, sub-module-l3, sub-module-l4,
401       sub-module-l5";
402    container sensors {
403      description
404        "Table of sensors";
405      list sensor {
406        key "name";
407        description
408          "Sensor number";
409        leaf name {
410          type xr:Cisco-ios-xr-string;
411          description
412            "Sensor name";
413        }
414        uses INVENTORY-EXT2-OPER-ATTRIBUTES;
415      }
416    }
417  }
418 
419  grouping INVENTORY-COMMON-SENSOR-TABLE {
420    description
421      "Common node of module, sub-module,
422       hw-componentCommon node of hw-component,
423       sub-module-l2, sub-module-l3, sub-module-l4,
424       sub-module-l5Common node of card, module,
425       hw-component, port-slot, ports";
426    container sensors {
427      description
428        "Table of sensors";
429      list sensor {
430        key "name";
431        description
432          "Sensor number";
433        leaf name {
434          type xr:Cisco-ios-xr-string;
435          description
436            "Sensor name";
437        }
438        uses INVENTORY-COMMON-ATTRIBUTES;
439      }
440    }
441  }
442 
443  grouping PORT-TABLE {
444    description
445      "Common node of port-slot, card";
446    container portses {
447      description
448        "Table of port slots";
449      list ports {
450        key "name";
451        description
452          "Port number";
453        leaf name {
454          type xr:Cisco-ios-xr-string;
455          description
456            "Port name";
457        }
458        uses HW-COMPONENT-TABLE;
459        uses INVENTORY-COMMON-SENSOR-TABLE;
460        uses INVENTORY-COMMON-ATTRIBUTES;
461      }
462    }
463  }
464 
465  grouping HW-COMPONENT-TABLE {
466    description
467      "Common node of card, ports";
468    container hw-components {
469      description
470        "Table of  HW components ";
471      list hw-component {
472        key "name";
473        description
474          "HW component number";
475        leaf name {
476          type xr:Cisco-ios-xr-string;
477          description
478            "HW component name";
479        }
480        uses INVENTORY-COMMON-SENSOR-TABLE;
481        uses INVENTORY-COMMON-ATTRIBUTES;
482      }
483    }
484  }
485 
486  grouping INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE {
487    description
488      "Common node of card, portsCommon node of module,
489       sub-module, port";
490    container hw-components {
491      description
492        "Table of HW components ";
493      list hw-component {
494        key "name";
495        description
496          "HW component number";
497        leaf name {
498          type xr:Cisco-ios-xr-string;
499          description
500            "HW component name";
501        }
502        uses SENSOR-TABLE;
503        uses ATTRIBUTES;
504      }
505    }
506  }
507 
508  grouping INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE {
509    description
510      "Common node of card, portsCommon node of module,
511       sub-module, portCommon node of sub-module-l2,
512       sub-module-l3, sub-module-l4, sub-module-l5";
513    container hw-components {
514      description
515        "Table of HW components ";
516      list hw-component {
517        key "name";
518        description
519          "HW component number";
520        leaf name {
521          type xr:Cisco-ios-xr-string;
522          description
523            "HW component name";
524        }
525        uses INVENTORY-EXT2-OPER-SENSOR-TABLE;
526        uses INVENTORY-EXT2-OPER-ATTRIBUTES;
527      }
528    }
529  }
530 
531  grouping INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE {
532    description
533      "Common node of card, portsCommon node of module,
534       sub-module, portCommon node of sub-module-l2,
535       sub-module-l3, sub-module-l4, sub-module-l5Common
536       node of backplane, module";
537    container hw-components {
538      description
539        "Table of  HW components ";
540      list hw-component {
541        key "name";
542        description
543          "HW component number";
544        leaf name {
545          type xr:Cisco-ios-xr-string;
546          description
547            "HW component name";
548        }
549        uses INVENTORY-EXT3-OPER-ATTRIBUTES;
550      }
551    }
552  }
553 
554  grouping ATTRIBUTES {
555    description
556      "Common node of module, sub-module, sensor,
557       hw-component, port, port-module";
558    container attributes {
559      description
560        "Attributes";
561      container basic-info {
562        description
563          "Entity attributes";
564        uses INV-XML-ENTITY-BASIC-INFO;
565      }
566      container fru-info {
567        description
568          "Field Replaceable Unit (FRU) attributes";
569        uses INV-XML-FRU-INFO;
570      }
571    }
572  }
573 
574  grouping INVENTORY-EXT2-OPER-ATTRIBUTES {
575    description
576      "Common node of module, sub-module, sensor,
577       hw-component, port, port-moduleCommon node of
578       sub-module-l2, sub-module-l3, sub-module-l4,
579       sub-module-l5, sensor, hw-component, port";
580    container attributes {
581      description
582        "Attributes";
583      container basic-info {
584        description
585          "Entity attributes";
586        uses INV-XML-ENTITY-BASIC-INFO;
587      }
588      container fru-info {
589        description
590          "Field Replaceable Unit (FRU) attributes";
591        uses INV-XML-FRU-INFO;
592      }
593    }
594  }
595 
596  grouping INVENTORY-EXT3-OPER-ATTRIBUTES {
597    description
598      "Common node of module, sub-module, sensor,
599       hw-component, port, port-moduleCommon node of
600       sub-module-l2, sub-module-l3, sub-module-l4,
601       sub-module-l5, sensor, hw-component, portCommon
602       node of backplane, module, hw-component";
603    container attributes {
604      description
605        "Attributes";
606      container basic-info {
607        description
608          "Entity attributes";
609        uses INV-XML-ENTITY-BASIC-INFO;
610      }
611      container fru-info {
612        description
613          "Field Replaceable Unit (FRU) attributes";
614        uses INV-XML-FRU-INFO;
615      }
616    }
617  }
618 
619  grouping INVENTORY-COMMON-ATTRIBUTES {
620    description
621      "Common node of module, sub-module, sensor,
622       hw-component, port, port-moduleCommon node of
623       sub-module-l2, sub-module-l3, sub-module-l4,
624       sub-module-l5, sensor, hw-component, portCommon
625       node of backplane, module, hw-componentCommon
626       node of rack, rack, slot, card, sub-slot, module,
627       port-slot, hw-component, sensor, ports";
628    container attributes {
629      description
630        "Attributes";
631      container basic-info {
632        description
633          "Entity attributes";
634        uses INV-XML-ENTITY-BASIC-INFO;
635      }
636      container fru-info {
637        description
638          "Field Replaceable Unit (FRU) attributes";
639        uses INV-XML-FRU-INFO;
640      }
641    }
642  }
643 
644  grouping BACKPLANE-TABLE {
645    description
646      "Common node of rack, rack";
647    container backplanes {
648      description
649        "Table of backplane";
650      list backplane {
651        key "name";
652        description
653          "Backplane name";
654        container modules {
655          description
656            "Table of modules";
657          list module {
658            key "module-name";
659            description
660              "A module";
661            leaf module-name {
662              type xr:Cisco-ios-xr-string;
663              description
664                "Module name";
665            }
666            uses INVENTORY-EXT3-OPER-ATTRIBUTES;
667            uses INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE;
668          }
669        }
670        leaf name {
671          type xr:Cisco-ios-xr-string;
672          description
673            "Backplane name";
674        }
675        uses INVENTORY-EXT3-OPER-ATTRIBUTES;
676        uses INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE;
677      }
678    }
679  }
680 
681  container platform {76  container platform {
682    config false;77    config false;
683    status deprecated;78    status deprecated;
684    description79    description
685      "This model is deprecated and is replaced by80      "This model is deprecated and is replaced by
686       Cisco-IOS-XR-platform-oper.yang81       Cisco-IOS-XR-platform-oper.yang
687       ,Cisco-IOS-XR-platform-inventory-oper.yang which82       ,Cisco-IOS-XR-platform-inventory-oper.yang which
688       will provide the compatible functionalities.83       will provide the compatible functionalities.
689       Platform information";84       Platform information";
690    container racks {85    container racks {
691      description86      description
692        "Table of racks";87        "Table of racks";
693      list rack {88      list rack {
694        key "rack-name";89        key "rack-name";
695        description90        description
696          "Rack name";91          "Rack name";
nn92        container slots {
93          description
94            "Table of slots";
95          list slot {
96            key "slot-name";
97            description
98              "Slot name";
99            container instances {
100              description
101                "Table of Instances";
102              list instance {
103                key "instance-name";
104                description
105                  "Instance name";
106                leaf instance-name {
107                  type string;
108                  description
109                    "Instance name";
110                }
111                uses STATE;
112              }
113            }
114            container vm {
115              description
116                "VM information";
117              uses VM-INFO;
118            }
119            leaf slot-name {
120              type xr:Cisco-ios-xr-string;
121              description
122                "Slot name";
123            }
124            uses STATE;
125          }
126        }
697        leaf rack-name {127        leaf rack-name {
698          type xr:Cisco-ios-xr-string;128          type xr:Cisco-ios-xr-string;
699          description129          description
700            "Rack name";130            "Rack name";
701        }131        }
t702        uses PLATFORM-COMMON-SLOT-TABLE;t
703      }
704    }
705  }
706  container platform-inventory {
707    config false;
708    status deprecated;
709    description
710      "This model is deprecated and is replaced by
711       Cisco-IOS-XR-platform-oper.yang
712       ,Cisco-IOS-XR-platform-inventory-oper.yang which
713       will provide the compatible functionalities.
714       Inventory operational data";
715    container racks {
716      description
717        "Table of racks";
718      list rack {
719        key "name";
720        description
721          "Rack name";
722        leaf name {
723          type xr:Cisco-ios-xr-string;
724          description
725            "Rack name";
726        }
727        uses SLOT-TABLE;
728        uses INVENTORY-COMMON-ATTRIBUTES;
729        uses BACKPLANE-TABLE;
730      }132      }
731    }133    }
732  }134  }
733}135}
+ + + + +
Legends
+ + + + +
Colors
 Added 
Changed
Deleted
+ + + + +
Links
(f)irst change
(n)ext change
(t)op
+ + + \ No newline at end of file diff --git a/vendor/cisco/xr/792/Available-Content.md b/vendor/cisco/xr/792/Available-Content.md new file mode 100644 index 000000000..5e498be2a --- /dev/null +++ b/vendor/cisco/xr/792/Available-Content.md @@ -0,0 +1,1994 @@ +# Cisco IOS XR Release 7.9.2 Models +[README.md](README.md) +## Platform Capabilities +[platform-metadata.json](platform-metadata.json) +[capabilities-8000.xml](capabilities-8000.xml) +[capabilities-asr9k-x64.xml](capabilities-asr9k-x64.xml) +[capabilities-iosxrwbd.xml](capabilities-iosxrwbd.xml) +[capabilities-ncs1001.xml](capabilities-ncs1001.xml) +[capabilities-ncs1004.xml](capabilities-ncs1004.xml) +[capabilities-ncs1010.xml](capabilities-ncs1010.xml) +[capabilities-ncs1k.xml](capabilities-ncs1k.xml) +[capabilities-ncs540.xml](capabilities-ncs540.xml) +[capabilities-ncs540l-aarch64.xml](capabilities-ncs540l-aarch64.xml) +[capabilities-ncs540l.xml](capabilities-ncs540l.xml) +[capabilities-ncs5500.xml](capabilities-ncs5500.xml) +[capabilities-ncs560.xml](capabilities-ncs560.xml) +[capabilities-ncs5700.xml](capabilities-ncs5700.xml) +[capabilities-ncs5k.xml](capabilities-ncs5k.xml) +[capabilities-xrv9k.xml](capabilities-xrv9k.xml) +## Unified Models +[Cisco-IOS-XR-um-8000-controller-fabric-cfg.yang](Cisco-IOS-XR-um-8000-controller-fabric-cfg.yang) +[Cisco-IOS-XR-um-8000-fpd-cfg.yang](Cisco-IOS-XR-um-8000-fpd-cfg.yang) +[Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg.yang](Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg.yang) +[Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg.yang](Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg.yang) +[Cisco-IOS-XR-um-8000-hw-module-profile-cfg.yang](Cisco-IOS-XR-um-8000-hw-module-profile-cfg.yang) +[Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg.yang](Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg.yang) +[Cisco-IOS-XR-um-8000-local-mac-cfg.yang](Cisco-IOS-XR-um-8000-local-mac-cfg.yang) +[Cisco-IOS-XR-um-8000-spp-policer-cfg.yang](Cisco-IOS-XR-um-8000-spp-policer-cfg.yang) +[Cisco-IOS-XR-um-8000-udf-cfg.yang](Cisco-IOS-XR-um-8000-udf-cfg.yang) +[Cisco-IOS-XR-um-aaa-acct-mobile-cfg.yang](Cisco-IOS-XR-um-aaa-acct-mobile-cfg.yang) +[Cisco-IOS-XR-um-aaa-cfg.yang](Cisco-IOS-XR-um-aaa-cfg.yang) +[Cisco-IOS-XR-um-aaa-diameter-cfg.yang](Cisco-IOS-XR-um-aaa-diameter-cfg.yang) +[Cisco-IOS-XR-um-aaa-nacm-cfg.yang](Cisco-IOS-XR-um-aaa-nacm-cfg.yang) +[Cisco-IOS-XR-um-aaa-radius-server-cfg.yang](Cisco-IOS-XR-um-aaa-radius-server-cfg.yang) +[Cisco-IOS-XR-um-aaa-subscriber-cfg.yang](Cisco-IOS-XR-um-aaa-subscriber-cfg.yang) +[Cisco-IOS-XR-um-aaa-tacacs-server-cfg.yang](Cisco-IOS-XR-um-aaa-tacacs-server-cfg.yang) +[Cisco-IOS-XR-um-aaa-task-user-cfg.yang](Cisco-IOS-XR-um-aaa-task-user-cfg.yang) +[Cisco-IOS-XR-um-access-list-datatypes.yang](Cisco-IOS-XR-um-access-list-datatypes.yang) +[Cisco-IOS-XR-um-adt-cfg.yang](Cisco-IOS-XR-um-adt-cfg.yang) +[Cisco-IOS-XR-um-appmgr-cfg.yang](Cisco-IOS-XR-um-appmgr-cfg.yang) +[Cisco-IOS-XR-um-arp-cfg.yang](Cisco-IOS-XR-um-arp-cfg.yang) +[Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg.yang](Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg.yang) +[Cisco-IOS-XR-um-asr9k-fabric-cfg.yang](Cisco-IOS-XR-um-asr9k-fabric-cfg.yang) +[Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg.yang](Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg.yang) +[Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg.yang](Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg.yang) +[Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg.yang](Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg.yang) +[Cisco-IOS-XR-um-asr9k-hw-module-port-cfg.yang](Cisco-IOS-XR-um-asr9k-hw-module-port-cfg.yang) +[Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg.yang](Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg.yang) +[Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg.yang](Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg.yang) +[Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg.yang](Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg.yang) +[Cisco-IOS-XR-um-asr9k-if-ethernet-cfg.yang](Cisco-IOS-XR-um-asr9k-if-ethernet-cfg.yang) +[Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg.yang](Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg.yang) +[Cisco-IOS-XR-um-attestation-cfg.yang](Cisco-IOS-XR-um-attestation-cfg.yang) +[Cisco-IOS-XR-um-auto-ip-ring-cfg.yang](Cisco-IOS-XR-um-auto-ip-ring-cfg.yang) +[Cisco-IOS-XR-um-banner-cfg.yang](Cisco-IOS-XR-um-banner-cfg.yang) +[Cisco-IOS-XR-um-bfd-sbfd-cfg.yang](Cisco-IOS-XR-um-bfd-sbfd-cfg.yang) +[Cisco-IOS-XR-um-call-home-cfg.yang](Cisco-IOS-XR-um-call-home-cfg.yang) +[Cisco-IOS-XR-um-cdp-cfg.yang](Cisco-IOS-XR-um-cdp-cfg.yang) +[Cisco-IOS-XR-um-cef-accounting-cfg.yang](Cisco-IOS-XR-um-cef-accounting-cfg.yang) +[Cisco-IOS-XR-um-cef-load-balancing-cfg.yang](Cisco-IOS-XR-um-cef-load-balancing-cfg.yang) +[Cisco-IOS-XR-um-cef-pd-cfg.yang](Cisco-IOS-XR-um-cef-pd-cfg.yang) +[Cisco-IOS-XR-um-cfg-mibs-cfg.yang](Cisco-IOS-XR-um-cfg-mibs-cfg.yang) +[Cisco-IOS-XR-um-cinetd-cfg.yang](Cisco-IOS-XR-um-cinetd-cfg.yang) +[Cisco-IOS-XR-um-cli-alias-cfg.yang](Cisco-IOS-XR-um-cli-alias-cfg.yang) +[Cisco-IOS-XR-um-clock-cfg.yang](Cisco-IOS-XR-um-clock-cfg.yang) +[Cisco-IOS-XR-um-clock-exr-cfg.yang](Cisco-IOS-XR-um-clock-exr-cfg.yang) +[Cisco-IOS-XR-um-clock-interface-cfg.yang](Cisco-IOS-XR-um-clock-interface-cfg.yang) +[Cisco-IOS-XR-um-config-commit-cfg.yang](Cisco-IOS-XR-um-config-commit-cfg.yang) +[Cisco-IOS-XR-um-config-display-cfg.yang](Cisco-IOS-XR-um-config-display-cfg.yang) +[Cisco-IOS-XR-um-config-hostname-cfg.yang](Cisco-IOS-XR-um-config-hostname-cfg.yang) +[Cisco-IOS-XR-um-config-mode-cfg.yang](Cisco-IOS-XR-um-config-mode-cfg.yang) +[Cisco-IOS-XR-um-config-validation-cfg.yang](Cisco-IOS-XR-um-config-validation-cfg.yang) +[Cisco-IOS-XR-um-conflict-policy-cfg.yang](Cisco-IOS-XR-um-conflict-policy-cfg.yang) +[Cisco-IOS-XR-um-cont-breakout-cfg.yang](Cisco-IOS-XR-um-cont-breakout-cfg.yang) +[Cisco-IOS-XR-um-cont-cpri-cfg.yang](Cisco-IOS-XR-um-cont-cpri-cfg.yang) +[Cisco-IOS-XR-um-cont-dwdm-cfg.yang](Cisco-IOS-XR-um-cont-dwdm-cfg.yang) +[Cisco-IOS-XR-um-cont-ether-cfg.yang](Cisco-IOS-XR-um-cont-ether-cfg.yang) +[Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg.yang](Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg.yang) +[Cisco-IOS-XR-um-cont-fc-cfg.yang](Cisco-IOS-XR-um-cont-fc-cfg.yang) +[Cisco-IOS-XR-um-cont-oc-pm-cfg.yang](Cisco-IOS-XR-um-cont-oc-pm-cfg.yang) +[Cisco-IOS-XR-um-cont-odu-cfg.yang](Cisco-IOS-XR-um-cont-odu-cfg.yang) +[Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg.yang](Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg.yang) +[Cisco-IOS-XR-um-cont-optics-cfg.yang](Cisco-IOS-XR-um-cont-optics-cfg.yang) +[Cisco-IOS-XR-um-cont-optics-mode-cfg.yang](Cisco-IOS-XR-um-cont-optics-mode-cfg.yang) +[Cisco-IOS-XR-um-cont-optics-speed-cfg.yang](Cisco-IOS-XR-um-cont-optics-speed-cfg.yang) +[Cisco-IOS-XR-um-cont-otu-cfg.yang](Cisco-IOS-XR-um-cont-otu-cfg.yang) +[Cisco-IOS-XR-um-cont-port-mode-cfg.yang](Cisco-IOS-XR-um-cont-port-mode-cfg.yang) +[Cisco-IOS-XR-um-cont-sonet-cfg.yang](Cisco-IOS-XR-um-cont-sonet-cfg.yang) +[Cisco-IOS-XR-um-cont-sonet-pm-cfg.yang](Cisco-IOS-XR-um-cont-sonet-pm-cfg.yang) +[Cisco-IOS-XR-um-cont-stm-cfg.yang](Cisco-IOS-XR-um-cont-stm-cfg.yang) +[Cisco-IOS-XR-um-cont-stm-pm-cfg.yang](Cisco-IOS-XR-um-cont-stm-pm-cfg.yang) +[Cisco-IOS-XR-um-cont-sts-cfg.yang](Cisco-IOS-XR-um-cont-sts-cfg.yang) +[Cisco-IOS-XR-um-cont-sts-pm-cfg.yang](Cisco-IOS-XR-um-cont-sts-pm-cfg.yang) +[Cisco-IOS-XR-um-cont-vc-pm-cfg.yang](Cisco-IOS-XR-um-cont-vc-pm-cfg.yang) +[Cisco-IOS-XR-um-cont-wanphy-cfg.yang](Cisco-IOS-XR-um-cont-wanphy-cfg.yang) +[Cisco-IOS-XR-um-control-plane-cfg.yang](Cisco-IOS-XR-um-control-plane-cfg.yang) +[Cisco-IOS-XR-um-control-plane-local-cfg.yang](Cisco-IOS-XR-um-control-plane-local-cfg.yang) +[Cisco-IOS-XR-um-crypto-cfg.yang](Cisco-IOS-XR-um-crypto-cfg.yang) +[Cisco-IOS-XR-um-dac-rate-cfg.yang](Cisco-IOS-XR-um-dac-rate-cfg.yang) +[Cisco-IOS-XR-um-dci-fabric-interconnect-cfg.yang](Cisco-IOS-XR-um-dci-fabric-interconnect-cfg.yang) +[Cisco-IOS-XR-um-dhcp-ipv4-cfg.yang](Cisco-IOS-XR-um-dhcp-ipv4-cfg.yang) +[Cisco-IOS-XR-um-dhcp-ipv6-cfg.yang](Cisco-IOS-XR-um-dhcp-ipv6-cfg.yang) +[Cisco-IOS-XR-um-display-qos-cfg.yang](Cisco-IOS-XR-um-display-qos-cfg.yang) +[Cisco-IOS-XR-um-domain-cfg.yang](Cisco-IOS-XR-um-domain-cfg.yang) +[Cisco-IOS-XR-um-dot1x-cfg.yang](Cisco-IOS-XR-um-dot1x-cfg.yang) +[Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg.yang](Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg.yang) +[Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg.yang](Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg.yang) +[Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg.yang](Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg.yang) +[Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg.yang](Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg.yang) +[Cisco-IOS-XR-um-dynamic-template-access-group-cfg.yang](Cisco-IOS-XR-um-dynamic-template-access-group-cfg.yang) +[Cisco-IOS-XR-um-dynamic-template-cfg.yang](Cisco-IOS-XR-um-dynamic-template-cfg.yang) +[Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg.yang](Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg.yang) +[Cisco-IOS-XR-um-dynamic-template-igmp-cfg.yang](Cisco-IOS-XR-um-dynamic-template-igmp-cfg.yang) +[Cisco-IOS-XR-um-dynamic-template-ipv4-cfg.yang](Cisco-IOS-XR-um-dynamic-template-ipv4-cfg.yang) +[Cisco-IOS-XR-um-dynamic-template-ipv6-cfg.yang](Cisco-IOS-XR-um-dynamic-template-ipv6-cfg.yang) +[Cisco-IOS-XR-um-dynamic-template-vrf-cfg.yang](Cisco-IOS-XR-um-dynamic-template-vrf-cfg.yang) +[Cisco-IOS-XR-um-environment-cfg.yang](Cisco-IOS-XR-um-environment-cfg.yang) +[Cisco-IOS-XR-um-error-disable-cfg.yang](Cisco-IOS-XR-um-error-disable-cfg.yang) +[Cisco-IOS-XR-um-ethernet-cfm-cfg.yang](Cisco-IOS-XR-um-ethernet-cfm-cfg.yang) +[Cisco-IOS-XR-um-ethernet-oam-cfg.yang](Cisco-IOS-XR-um-ethernet-oam-cfg.yang) +[Cisco-IOS-XR-um-ethernet-ring-cfg.yang](Cisco-IOS-XR-um-ethernet-ring-cfg.yang) +[Cisco-IOS-XR-um-ethernet-sat-cfg.yang](Cisco-IOS-XR-um-ethernet-sat-cfg.yang) +[Cisco-IOS-XR-um-ethernet-services-access-list-cfg.yang](Cisco-IOS-XR-um-ethernet-services-access-list-cfg.yang) +[Cisco-IOS-XR-um-ethernet-sla-cfg.yang](Cisco-IOS-XR-um-ethernet-sla-cfg.yang) +[Cisco-IOS-XR-um-ethernet-udld-cfg.yang](Cisco-IOS-XR-um-ethernet-udld-cfg.yang) +[Cisco-IOS-XR-um-event-manager-cfg.yang](Cisco-IOS-XR-um-event-manager-cfg.yang) +[Cisco-IOS-XR-um-event-manager-policy-map-cfg.yang](Cisco-IOS-XR-um-event-manager-policy-map-cfg.yang) +[Cisco-IOS-XR-um-evpn-host-cfg.yang](Cisco-IOS-XR-um-evpn-host-cfg.yang) +[Cisco-IOS-XR-um-exception-cfg.yang](Cisco-IOS-XR-um-exception-cfg.yang) +[Cisco-IOS-XR-um-explicit-paths-cfg.yang](Cisco-IOS-XR-um-explicit-paths-cfg.yang) +[Cisco-IOS-XR-um-fault-profile-cfg.yang](Cisco-IOS-XR-um-fault-profile-cfg.yang) +[Cisco-IOS-XR-um-filesystem-inventory-cfg.yang](Cisco-IOS-XR-um-filesystem-inventory-cfg.yang) +[Cisco-IOS-XR-um-flow-cfg.yang](Cisco-IOS-XR-um-flow-cfg.yang) +[Cisco-IOS-XR-um-flowspec-cfg.yang](Cisco-IOS-XR-um-flowspec-cfg.yang) +[Cisco-IOS-XR-um-fpd-cfg.yang](Cisco-IOS-XR-um-fpd-cfg.yang) +[Cisco-IOS-XR-um-frequency-synchronization-cfg.yang](Cisco-IOS-XR-um-frequency-synchronization-cfg.yang) +[Cisco-IOS-XR-um-ftp-tftp-cfg.yang](Cisco-IOS-XR-um-ftp-tftp-cfg.yang) +[Cisco-IOS-XR-um-gnss-receiver-cfg.yang](Cisco-IOS-XR-um-gnss-receiver-cfg.yang) +[Cisco-IOS-XR-um-grpc-cfg.yang](Cisco-IOS-XR-um-grpc-cfg.yang) +[Cisco-IOS-XR-um-hostname-cfg.yang](Cisco-IOS-XR-um-hostname-cfg.yang) +[Cisco-IOS-XR-um-http-client-cfg.yang](Cisco-IOS-XR-um-http-client-cfg.yang) +[Cisco-IOS-XR-um-hw-module-acl-cfg.yang](Cisco-IOS-XR-um-hw-module-acl-cfg.yang) +[Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg.yang](Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg.yang) +[Cisco-IOS-XR-um-hw-module-l3-cfg.yang](Cisco-IOS-XR-um-hw-module-l3-cfg.yang) +[Cisco-IOS-XR-um-hw-module-port-range-cfg.yang](Cisco-IOS-XR-um-hw-module-port-range-cfg.yang) +[Cisco-IOS-XR-um-hw-module-profile-cfg.yang](Cisco-IOS-XR-um-hw-module-profile-cfg.yang) +[Cisco-IOS-XR-um-hw-module-quad-cfg.yang](Cisco-IOS-XR-um-hw-module-quad-cfg.yang) +[Cisco-IOS-XR-um-hw-module-service-cfg.yang](Cisco-IOS-XR-um-hw-module-service-cfg.yang) +[Cisco-IOS-XR-um-hw-module-shut-cfg.yang](Cisco-IOS-XR-um-hw-module-shut-cfg.yang) +[Cisco-IOS-XR-um-hw-module-subslot-cfg.yang](Cisco-IOS-XR-um-hw-module-subslot-cfg.yang) +[Cisco-IOS-XR-um-hw-module-vrf-cfg.yang](Cisco-IOS-XR-um-hw-module-vrf-cfg.yang) +[Cisco-IOS-XR-um-icmp-cfg.yang](Cisco-IOS-XR-um-icmp-cfg.yang) +[Cisco-IOS-XR-um-if-access-group-cfg.yang](Cisco-IOS-XR-um-if-access-group-cfg.yang) +[Cisco-IOS-XR-um-if-arp-cfg.yang](Cisco-IOS-XR-um-if-arp-cfg.yang) +[Cisco-IOS-XR-um-if-bundle-cfg.yang](Cisco-IOS-XR-um-if-bundle-cfg.yang) +[Cisco-IOS-XR-um-if-dhcp-client-options-cfg.yang](Cisco-IOS-XR-um-if-dhcp-client-options-cfg.yang) +[Cisco-IOS-XR-um-if-encap-ambiguous-cfg.yang](Cisco-IOS-XR-um-if-encap-ambiguous-cfg.yang) +[Cisco-IOS-XR-um-if-ethernet-cfg.yang](Cisco-IOS-XR-um-if-ethernet-cfg.yang) +[Cisco-IOS-XR-um-if-ethernet-lmi-cfg.yang](Cisco-IOS-XR-um-if-ethernet-lmi-cfg.yang) +[Cisco-IOS-XR-um-if-ip-address-cfg.yang](Cisco-IOS-XR-um-if-ip-address-cfg.yang) +[Cisco-IOS-XR-um-if-ipsubscriber-cfg.yang](Cisco-IOS-XR-um-if-ipsubscriber-cfg.yang) +[Cisco-IOS-XR-um-if-ipv4-cfg.yang](Cisco-IOS-XR-um-if-ipv4-cfg.yang) +[Cisco-IOS-XR-um-if-ipv6-cfg.yang](Cisco-IOS-XR-um-if-ipv6-cfg.yang) +[Cisco-IOS-XR-um-if-l2trans-service-policy-cfg.yang](Cisco-IOS-XR-um-if-l2trans-service-policy-cfg.yang) +[Cisco-IOS-XR-um-if-l2transport-cfg.yang](Cisco-IOS-XR-um-if-l2transport-cfg.yang) +[Cisco-IOS-XR-um-if-mac-address-cfg.yang](Cisco-IOS-XR-um-if-mac-address-cfg.yang) +[Cisco-IOS-XR-um-if-mpls-cfg.yang](Cisco-IOS-XR-um-if-mpls-cfg.yang) +[Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg.yang](Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg.yang) +[Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg.yang](Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg.yang) +[Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg.yang](Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg.yang) +[Cisco-IOS-XR-um-if-nve-cfg.yang](Cisco-IOS-XR-um-if-nve-cfg.yang) +[Cisco-IOS-XR-um-if-packets-cfg.yang](Cisco-IOS-XR-um-if-packets-cfg.yang) +[Cisco-IOS-XR-um-if-service-policy-qos-cfg.yang](Cisco-IOS-XR-um-if-service-policy-qos-cfg.yang) +[Cisco-IOS-XR-um-if-tunnel-cfg.yang](Cisco-IOS-XR-um-if-tunnel-cfg.yang) +[Cisco-IOS-XR-um-if-vrf-cfg.yang](Cisco-IOS-XR-um-if-vrf-cfg.yang) +[Cisco-IOS-XR-um-igmp-snooping-cfg.yang](Cisco-IOS-XR-um-igmp-snooping-cfg.yang) +[Cisco-IOS-XR-um-iidmgr-cfg.yang](Cisco-IOS-XR-um-iidmgr-cfg.yang) +[Cisco-IOS-XR-um-ikev2-cfg.yang](Cisco-IOS-XR-um-ikev2-cfg.yang) +[Cisco-IOS-XR-um-install-cfg.yang](Cisco-IOS-XR-um-install-cfg.yang) +[Cisco-IOS-XR-um-interface-cfg.yang](Cisco-IOS-XR-um-interface-cfg.yang) +[Cisco-IOS-XR-um-ip-virtual-cfg.yang](Cisco-IOS-XR-um-ip-virtual-cfg.yang) +[Cisco-IOS-XR-um-ipsec-cfg.yang](Cisco-IOS-XR-um-ipsec-cfg.yang) +[Cisco-IOS-XR-um-ipsla-cfg.yang](Cisco-IOS-XR-um-ipsla-cfg.yang) +[Cisco-IOS-XR-um-ipv4-access-list-cfg.yang](Cisco-IOS-XR-um-ipv4-access-list-cfg.yang) +[Cisco-IOS-XR-um-ipv4-cfg.yang](Cisco-IOS-XR-um-ipv4-cfg.yang) +[Cisco-IOS-XR-um-ipv4-prefix-list-cfg.yang](Cisco-IOS-XR-um-ipv4-prefix-list-cfg.yang) +[Cisco-IOS-XR-um-ipv6-access-list-cfg.yang](Cisco-IOS-XR-um-ipv6-access-list-cfg.yang) +[Cisco-IOS-XR-um-ipv6-cfg.yang](Cisco-IOS-XR-um-ipv6-cfg.yang) +[Cisco-IOS-XR-um-ipv6-mobile-cfg.yang](Cisco-IOS-XR-um-ipv6-mobile-cfg.yang) +[Cisco-IOS-XR-um-ipv6-nd-cfg.yang](Cisco-IOS-XR-um-ipv6-nd-cfg.yang) +[Cisco-IOS-XR-um-ipv6-prefix-list-cfg.yang](Cisco-IOS-XR-um-ipv6-prefix-list-cfg.yang) +[Cisco-IOS-XR-um-key-chain-cfg.yang](Cisco-IOS-XR-um-key-chain-cfg.yang) +[Cisco-IOS-XR-um-l2-ethernet-cfg.yang](Cisco-IOS-XR-um-l2-ethernet-cfg.yang) +[Cisco-IOS-XR-um-l2snoop-cfg.yang](Cisco-IOS-XR-um-l2snoop-cfg.yang) +[Cisco-IOS-XR-um-l2tp-class-cfg.yang](Cisco-IOS-XR-um-l2tp-class-cfg.yang) +[Cisco-IOS-XR-um-l2vpn-cfg.yang](Cisco-IOS-XR-um-l2vpn-cfg.yang) +[Cisco-IOS-XR-um-lacp-cfg.yang](Cisco-IOS-XR-um-lacp-cfg.yang) +[Cisco-IOS-XR-um-lawful-intercept-cfg.yang](Cisco-IOS-XR-um-lawful-intercept-cfg.yang) +[Cisco-IOS-XR-um-license-smart-cfg.yang](Cisco-IOS-XR-um-license-smart-cfg.yang) +[Cisco-IOS-XR-um-line-cfg.yang](Cisco-IOS-XR-um-line-cfg.yang) +[Cisco-IOS-XR-um-line-exec-timeout-cfg.yang](Cisco-IOS-XR-um-line-exec-timeout-cfg.yang) +[Cisco-IOS-XR-um-line-general-cfg.yang](Cisco-IOS-XR-um-line-general-cfg.yang) +[Cisco-IOS-XR-um-line-timestamp-cfg.yang](Cisco-IOS-XR-um-line-timestamp-cfg.yang) +[Cisco-IOS-XR-um-linux-networking-cfg.yang](Cisco-IOS-XR-um-linux-networking-cfg.yang) +[Cisco-IOS-XR-um-lldp-cfg.yang](Cisco-IOS-XR-um-lldp-cfg.yang) +[Cisco-IOS-XR-um-location-cfg.yang](Cisco-IOS-XR-um-location-cfg.yang) +[Cisco-IOS-XR-um-logging-cfg.yang](Cisco-IOS-XR-um-logging-cfg.yang) +[Cisco-IOS-XR-um-logging-correlator-cfg.yang](Cisco-IOS-XR-um-logging-correlator-cfg.yang) +[Cisco-IOS-XR-um-logging-events-cfg.yang](Cisco-IOS-XR-um-logging-events-cfg.yang) +[Cisco-IOS-XR-um-lpts-pifib-cfg.yang](Cisco-IOS-XR-um-lpts-pifib-cfg.yang) +[Cisco-IOS-XR-um-lpts-pifib-domain-cfg.yang](Cisco-IOS-XR-um-lpts-pifib-domain-cfg.yang) +[Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg.yang](Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg.yang) +[Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg.yang](Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg.yang) +[Cisco-IOS-XR-um-lpts-pifib-police-np-cfg.yang](Cisco-IOS-XR-um-lpts-pifib-police-np-cfg.yang) +[Cisco-IOS-XR-um-lpts-profiling-cfg.yang](Cisco-IOS-XR-um-lpts-profiling-cfg.yang) +[Cisco-IOS-XR-um-lpts-punt-cfg.yang](Cisco-IOS-XR-um-lpts-punt-cfg.yang) +[Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg.yang](Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg.yang) +[Cisco-IOS-XR-um-ltrace-cfg.yang](Cisco-IOS-XR-um-ltrace-cfg.yang) +[Cisco-IOS-XR-um-mac-persist-cfg.yang](Cisco-IOS-XR-um-mac-persist-cfg.yang) +[Cisco-IOS-XR-um-macsec-cfg.yang](Cisco-IOS-XR-um-macsec-cfg.yang) +[Cisco-IOS-XR-um-mibs-cbqosmib-cfg.yang](Cisco-IOS-XR-um-mibs-cbqosmib-cfg.yang) +[Cisco-IOS-XR-um-mibs-eventmib-cfg.yang](Cisco-IOS-XR-um-mibs-eventmib-cfg.yang) +[Cisco-IOS-XR-um-mibs-fabric-cfg.yang](Cisco-IOS-XR-um-mibs-fabric-cfg.yang) +[Cisco-IOS-XR-um-mibs-ifmib-cfg.yang](Cisco-IOS-XR-um-mibs-ifmib-cfg.yang) +[Cisco-IOS-XR-um-mibs-rfmib-cfg.yang](Cisco-IOS-XR-um-mibs-rfmib-cfg.yang) +[Cisco-IOS-XR-um-mibs-sensormib-cfg.yang](Cisco-IOS-XR-um-mibs-sensormib-cfg.yang) +[Cisco-IOS-XR-um-mibs-subscriber-cfg.yang](Cisco-IOS-XR-um-mibs-subscriber-cfg.yang) +[Cisco-IOS-XR-um-mirror-cfg.yang](Cisco-IOS-XR-um-mirror-cfg.yang) +[Cisco-IOS-XR-um-mld-snooping-cfg.yang](Cisco-IOS-XR-um-mld-snooping-cfg.yang) +[Cisco-IOS-XR-um-monitor-session-cfg.yang](Cisco-IOS-XR-um-monitor-session-cfg.yang) +[Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang](Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang) +[Cisco-IOS-XR-um-mpls-ldp-cfg.yang](Cisco-IOS-XR-um-mpls-ldp-cfg.yang) +[Cisco-IOS-XR-um-mpls-lsd-cfg.yang](Cisco-IOS-XR-um-mpls-lsd-cfg.yang) +[Cisco-IOS-XR-um-mpls-oam-cfg.yang](Cisco-IOS-XR-um-mpls-oam-cfg.yang) +[Cisco-IOS-XR-um-mpls-static-cfg.yang](Cisco-IOS-XR-um-mpls-static-cfg.yang) +[Cisco-IOS-XR-um-mpls-te-cfg.yang](Cisco-IOS-XR-um-mpls-te-cfg.yang) +[Cisco-IOS-XR-um-multicast-routing-cfg.yang](Cisco-IOS-XR-um-multicast-routing-cfg.yang) +[Cisco-IOS-XR-um-ncs-hw-module-osa-cfg.yang](Cisco-IOS-XR-um-ncs-hw-module-osa-cfg.yang) +[Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg.yang](Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg.yang) +[Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg.yang](Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg.yang) +[Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg.yang](Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg.yang) +[Cisco-IOS-XR-um-ncs1k-driver-cfg.yang](Cisco-IOS-XR-um-ncs1k-driver-cfg.yang) +[Cisco-IOS-XR-um-ncs560-cont-portmode-cfg.yang](Cisco-IOS-XR-um-ncs560-cont-portmode-cfg.yang) +[Cisco-IOS-XR-um-ncs5k-hw-module-cfg.yang](Cisco-IOS-XR-um-ncs5k-hw-module-cfg.yang) +[Cisco-IOS-XR-um-netconf-yang-cfg.yang](Cisco-IOS-XR-um-netconf-yang-cfg.yang) +[Cisco-IOS-XR-um-nsr-cfg.yang](Cisco-IOS-XR-um-nsr-cfg.yang) +[Cisco-IOS-XR-um-ntp-cfg.yang](Cisco-IOS-XR-um-ntp-cfg.yang) +[Cisco-IOS-XR-um-nv-satellite-cfg.yang](Cisco-IOS-XR-um-nv-satellite-cfg.yang) +[Cisco-IOS-XR-um-object-group-cfg.yang](Cisco-IOS-XR-um-object-group-cfg.yang) +[Cisco-IOS-XR-um-otnsec-cfg.yang](Cisco-IOS-XR-um-otnsec-cfg.yang) +[Cisco-IOS-XR-um-password6-cfg.yang](Cisco-IOS-XR-um-password6-cfg.yang) +[Cisco-IOS-XR-um-pbr-cfg.yang](Cisco-IOS-XR-um-pbr-cfg.yang) +[Cisco-IOS-XR-um-pbr-policy-cfg.yang](Cisco-IOS-XR-um-pbr-policy-cfg.yang) +[Cisco-IOS-XR-um-pce-cfg.yang](Cisco-IOS-XR-um-pce-cfg.yang) +[Cisco-IOS-XR-um-performance-measurement-cfg.yang](Cisco-IOS-XR-um-performance-measurement-cfg.yang) +[Cisco-IOS-XR-um-performance-mgmt-cfg.yang](Cisco-IOS-XR-um-performance-mgmt-cfg.yang) +[Cisco-IOS-XR-um-policymap-classmap-cfg.yang](Cisco-IOS-XR-um-policymap-classmap-cfg.yang) +[Cisco-IOS-XR-um-pool-cfg.yang](Cisco-IOS-XR-um-pool-cfg.yang) +[Cisco-IOS-XR-um-power-mgmt-cfg.yang](Cisco-IOS-XR-um-power-mgmt-cfg.yang) +[Cisco-IOS-XR-um-ppp-cfg.yang](Cisco-IOS-XR-um-ppp-cfg.yang) +[Cisco-IOS-XR-um-pppoe-cfg.yang](Cisco-IOS-XR-um-pppoe-cfg.yang) +[Cisco-IOS-XR-um-process-cfg.yang](Cisco-IOS-XR-um-process-cfg.yang) +[Cisco-IOS-XR-um-ptp-cfg.yang](Cisco-IOS-XR-um-ptp-cfg.yang) +[Cisco-IOS-XR-um-ptp-log-servo-cfg.yang](Cisco-IOS-XR-um-ptp-log-servo-cfg.yang) +[Cisco-IOS-XR-um-raw-cfg.yang](Cisco-IOS-XR-um-raw-cfg.yang) +[Cisco-IOS-XR-um-rcc-cfg.yang](Cisco-IOS-XR-um-rcc-cfg.yang) +[Cisco-IOS-XR-um-redundancy-cfg.yang](Cisco-IOS-XR-um-redundancy-cfg.yang) +[Cisco-IOS-XR-um-route-policy-cfg.yang](Cisco-IOS-XR-um-route-policy-cfg.yang) +[Cisco-IOS-XR-um-router-amt-cfg.yang](Cisco-IOS-XR-um-router-amt-cfg.yang) +[Cisco-IOS-XR-um-router-bgp-cfg.yang](Cisco-IOS-XR-um-router-bgp-cfg.yang) +[Cisco-IOS-XR-um-router-eigrp-cfg.yang](Cisco-IOS-XR-um-router-eigrp-cfg.yang) +[Cisco-IOS-XR-um-router-hsrp-cfg.yang](Cisco-IOS-XR-um-router-hsrp-cfg.yang) +[Cisco-IOS-XR-um-router-igmp-cfg.yang](Cisco-IOS-XR-um-router-igmp-cfg.yang) +[Cisco-IOS-XR-um-router-isis-cfg.yang](Cisco-IOS-XR-um-router-isis-cfg.yang) +[Cisco-IOS-XR-um-router-mld-cfg.yang](Cisco-IOS-XR-um-router-mld-cfg.yang) +[Cisco-IOS-XR-um-router-msdp-cfg.yang](Cisco-IOS-XR-um-router-msdp-cfg.yang) +[Cisco-IOS-XR-um-router-ospf-cfg.yang](Cisco-IOS-XR-um-router-ospf-cfg.yang) +[Cisco-IOS-XR-um-router-ospfv3-cfg.yang](Cisco-IOS-XR-um-router-ospfv3-cfg.yang) +[Cisco-IOS-XR-um-router-pim-cfg.yang](Cisco-IOS-XR-um-router-pim-cfg.yang) +[Cisco-IOS-XR-um-router-rib-cfg.yang](Cisco-IOS-XR-um-router-rib-cfg.yang) +[Cisco-IOS-XR-um-router-rip-cfg.yang](Cisco-IOS-XR-um-router-rip-cfg.yang) +[Cisco-IOS-XR-um-router-static-cfg.yang](Cisco-IOS-XR-um-router-static-cfg.yang) +[Cisco-IOS-XR-um-router-vrrp-cfg.yang](Cisco-IOS-XR-um-router-vrrp-cfg.yang) +[Cisco-IOS-XR-um-rsvp-cfg.yang](Cisco-IOS-XR-um-rsvp-cfg.yang) +[Cisco-IOS-XR-um-sam-cfg.yang](Cisco-IOS-XR-um-sam-cfg.yang) +[Cisco-IOS-XR-um-sap-cfg.yang](Cisco-IOS-XR-um-sap-cfg.yang) +[Cisco-IOS-XR-um-script-cfg.yang](Cisco-IOS-XR-um-script-cfg.yang) +[Cisco-IOS-XR-um-segment-routing-cfg.yang](Cisco-IOS-XR-um-segment-routing-cfg.yang) +[Cisco-IOS-XR-um-segment-routing-srv6-cfg.yang](Cisco-IOS-XR-um-segment-routing-srv6-cfg.yang) +[Cisco-IOS-XR-um-service-cfg.yang](Cisco-IOS-XR-um-service-cfg.yang) +[Cisco-IOS-XR-um-service-sysadmin-login-banner-cfg.yang](Cisco-IOS-XR-um-service-sysadmin-login-banner-cfg.yang) +[Cisco-IOS-XR-um-service-timestamps-cfg.yang](Cisco-IOS-XR-um-service-timestamps-cfg.yang) +[Cisco-IOS-XR-um-session-redundancy-cfg.yang](Cisco-IOS-XR-um-session-redundancy-cfg.yang) +[Cisco-IOS-XR-um-sks-server-cfg.yang](Cisco-IOS-XR-um-sks-server-cfg.yang) +[Cisco-IOS-XR-um-snmp-server-cfg.yang](Cisco-IOS-XR-um-snmp-server-cfg.yang) +[Cisco-IOS-XR-um-snmp-server-mroutemib-cfg.yang](Cisco-IOS-XR-um-snmp-server-mroutemib-cfg.yang) +[Cisco-IOS-XR-um-snmp-server-notification-log-mib-cfg.yang](Cisco-IOS-XR-um-snmp-server-notification-log-mib-cfg.yang) +[Cisco-IOS-XR-um-spanning-tree-cfg.yang](Cisco-IOS-XR-um-spanning-tree-cfg.yang) +[Cisco-IOS-XR-um-ssh-cfg.yang](Cisco-IOS-XR-um-ssh-cfg.yang) +[Cisco-IOS-XR-um-ssm-cfg.yang](Cisco-IOS-XR-um-ssm-cfg.yang) +[Cisco-IOS-XR-um-statistics-cfg.yang](Cisco-IOS-XR-um-statistics-cfg.yang) +[Cisco-IOS-XR-um-subscriber-accounting-cfg.yang](Cisco-IOS-XR-um-subscriber-accounting-cfg.yang) +[Cisco-IOS-XR-um-subscriber-arp-cfg.yang](Cisco-IOS-XR-um-subscriber-arp-cfg.yang) +[Cisco-IOS-XR-um-subscriber-cfg.yang](Cisco-IOS-XR-um-subscriber-cfg.yang) +[Cisco-IOS-XR-um-subscriber-pta-cfg.yang](Cisco-IOS-XR-um-subscriber-pta-cfg.yang) +[Cisco-IOS-XR-um-subscriber-redundancy-cfg.yang](Cisco-IOS-XR-um-subscriber-redundancy-cfg.yang) +[Cisco-IOS-XR-um-subscriber-ush-cfg.yang](Cisco-IOS-XR-um-subscriber-ush-cfg.yang) +[Cisco-IOS-XR-um-tcp-cfg.yang](Cisco-IOS-XR-um-tcp-cfg.yang) +[Cisco-IOS-XR-um-telemetry-model-driven-cfg.yang](Cisco-IOS-XR-um-telemetry-model-driven-cfg.yang) +[Cisco-IOS-XR-um-telnet-cfg.yang](Cisco-IOS-XR-um-telnet-cfg.yang) +[Cisco-IOS-XR-um-terminal-device-cfg.yang](Cisco-IOS-XR-um-terminal-device-cfg.yang) +[Cisco-IOS-XR-um-tpa-cfg.yang](Cisco-IOS-XR-um-tpa-cfg.yang) +[Cisco-IOS-XR-um-track-cfg.yang](Cisco-IOS-XR-um-track-cfg.yang) +[Cisco-IOS-XR-um-traffic-collector-cfg.yang](Cisco-IOS-XR-um-traffic-collector-cfg.yang) +[Cisco-IOS-XR-um-traps-alarm-cfg.yang](Cisco-IOS-XR-um-traps-alarm-cfg.yang) +[Cisco-IOS-XR-um-traps-bridgemib-cfg.yang](Cisco-IOS-XR-um-traps-bridgemib-cfg.yang) +[Cisco-IOS-XR-um-traps-bulkstat-cfg.yang](Cisco-IOS-XR-um-traps-bulkstat-cfg.yang) +[Cisco-IOS-XR-um-traps-config-copy-cfg.yang](Cisco-IOS-XR-um-traps-config-copy-cfg.yang) +[Cisco-IOS-XR-um-traps-entity-cfg.yang](Cisco-IOS-XR-um-traps-entity-cfg.yang) +[Cisco-IOS-XR-um-traps-entity-redundancy-cfg.yang](Cisco-IOS-XR-um-traps-entity-redundancy-cfg.yang) +[Cisco-IOS-XR-um-traps-entity-state-cfg.yang](Cisco-IOS-XR-um-traps-entity-state-cfg.yang) +[Cisco-IOS-XR-um-traps-flash-cfg.yang](Cisco-IOS-XR-um-traps-flash-cfg.yang) +[Cisco-IOS-XR-um-traps-fru-ctrl-cfg.yang](Cisco-IOS-XR-um-traps-fru-ctrl-cfg.yang) +[Cisco-IOS-XR-um-traps-gnss-cfg.yang](Cisco-IOS-XR-um-traps-gnss-cfg.yang) +[Cisco-IOS-XR-um-traps-ipsec-cfg.yang](Cisco-IOS-XR-um-traps-ipsec-cfg.yang) +[Cisco-IOS-XR-um-traps-ipsla-cfg.yang](Cisco-IOS-XR-um-traps-ipsla-cfg.yang) +[Cisco-IOS-XR-um-traps-l2tun-cfg.yang](Cisco-IOS-XR-um-traps-l2tun-cfg.yang) +[Cisco-IOS-XR-um-traps-mpls-ldp-cfg.yang](Cisco-IOS-XR-um-traps-mpls-ldp-cfg.yang) +[Cisco-IOS-XR-um-traps-msdp-cfg.yang](Cisco-IOS-XR-um-traps-msdp-cfg.yang) +[Cisco-IOS-XR-um-traps-otn-cfg.yang](Cisco-IOS-XR-um-traps-otn-cfg.yang) +[Cisco-IOS-XR-um-traps-pim-cfg.yang](Cisco-IOS-XR-um-traps-pim-cfg.yang) +[Cisco-IOS-XR-um-traps-power-cfg.yang](Cisco-IOS-XR-um-traps-power-cfg.yang) +[Cisco-IOS-XR-um-traps-rsvp-cfg.yang](Cisco-IOS-XR-um-traps-rsvp-cfg.yang) +[Cisco-IOS-XR-um-traps-selective-vrf-download-cfg.yang](Cisco-IOS-XR-um-traps-selective-vrf-download-cfg.yang) +[Cisco-IOS-XR-um-traps-syslog-cfg.yang](Cisco-IOS-XR-um-traps-syslog-cfg.yang) +[Cisco-IOS-XR-um-traps-system-cfg.yang](Cisco-IOS-XR-um-traps-system-cfg.yang) +[Cisco-IOS-XR-um-udp-cfg.yang](Cisco-IOS-XR-um-udp-cfg.yang) +[Cisco-IOS-XR-um-vpdn-cfg.yang](Cisco-IOS-XR-um-vpdn-cfg.yang) +[Cisco-IOS-XR-um-vrf-cfg.yang](Cisco-IOS-XR-um-vrf-cfg.yang) +[Cisco-IOS-XR-um-vty-pool-cfg.yang](Cisco-IOS-XR-um-vty-pool-cfg.yang) +[Cisco-IOS-XR-um-watchd-cfg.yang](Cisco-IOS-XR-um-watchd-cfg.yang) +[Cisco-IOS-XR-um-watchdog-cfg.yang](Cisco-IOS-XR-um-watchdog-cfg.yang) +[Cisco-IOS-XR-um-xml-agent-cfg.yang](Cisco-IOS-XR-um-xml-agent-cfg.yang) +[Cisco-IOS-XR-um-yang-server-cfg.yang](Cisco-IOS-XR-um-yang-server-cfg.yang) +## Native Config Models +[Cisco-IOS-XR-8000-fib-platform-cfg.yang](Cisco-IOS-XR-8000-fib-platform-cfg.yang) +[Cisco-IOS-XR-Ethernet-SPAN-cfg.yang](Cisco-IOS-XR-Ethernet-SPAN-cfg.yang) +[Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg.yang](Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg.yang) +[Cisco-IOS-XR-Ots-Och-cfg.yang](Cisco-IOS-XR-Ots-Och-cfg.yang) +[Cisco-IOS-XR-aaa-aaacore-cfg.yang](Cisco-IOS-XR-aaa-aaacore-cfg.yang) +[Cisco-IOS-XR-aaa-diameter-base-mib-cfg.yang](Cisco-IOS-XR-aaa-diameter-base-mib-cfg.yang) +[Cisco-IOS-XR-aaa-diameter-cfg.yang](Cisco-IOS-XR-aaa-diameter-cfg.yang) +[Cisco-IOS-XR-aaa-ldapd-cfg.yang](Cisco-IOS-XR-aaa-ldapd-cfg.yang) +[Cisco-IOS-XR-aaa-li-cfg.yang](Cisco-IOS-XR-aaa-li-cfg.yang) +[Cisco-IOS-XR-aaa-lib-cfg.yang](Cisco-IOS-XR-aaa-lib-cfg.yang) +[Cisco-IOS-XR-aaa-locald-cfg.yang](Cisco-IOS-XR-aaa-locald-cfg.yang) +[Cisco-IOS-XR-aaa-nacm-cfg.yang](Cisco-IOS-XR-aaa-nacm-cfg.yang) +[Cisco-IOS-XR-aaa-protocol-radius-cfg.yang](Cisco-IOS-XR-aaa-protocol-radius-cfg.yang) +[Cisco-IOS-XR-aaa-tacacs-cfg.yang](Cisco-IOS-XR-aaa-tacacs-cfg.yang) +[Cisco-IOS-XR-accounting-cfg.yang](Cisco-IOS-XR-accounting-cfg.yang) +[Cisco-IOS-XR-adt-config-cfg.yang](Cisco-IOS-XR-adt-config-cfg.yang) +[Cisco-IOS-XR-appmgr-cfg.yang](Cisco-IOS-XR-appmgr-cfg.yang) +[Cisco-IOS-XR-asr9k-apm-src-flexr-cfg.yang](Cisco-IOS-XR-asr9k-apm-src-flexr-cfg.yang) +[Cisco-IOS-XR-asr9k-ep-port-mode-cfg.yang](Cisco-IOS-XR-asr9k-ep-port-mode-cfg.yang) +[Cisco-IOS-XR-asr9k-fab-cfg.yang](Cisco-IOS-XR-asr9k-fab-cfg.yang) +[Cisco-IOS-XR-asr9k-fia-cfg.yang](Cisco-IOS-XR-asr9k-fia-cfg.yang) +[Cisco-IOS-XR-asr9k-lc-breakout-port-cfg.yang](Cisco-IOS-XR-asr9k-lc-breakout-port-cfg.yang) +[Cisco-IOS-XR-asr9k-lc-configmode-cfg.yang](Cisco-IOS-XR-asr9k-lc-configmode-cfg.yang) +[Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg.yang](Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg.yang) +[Cisco-IOS-XR-asr9k-lc-ethctrl-cfg.yang](Cisco-IOS-XR-asr9k-lc-ethctrl-cfg.yang) +[Cisco-IOS-XR-asr9k-lc-pwrglide-cfg.yang](Cisco-IOS-XR-asr9k-lc-pwrglide-cfg.yang) +[Cisco-IOS-XR-asr9k-prm-cfg.yang](Cisco-IOS-XR-asr9k-prm-cfg.yang) +[Cisco-IOS-XR-asr9k-ptp-pd-cfg.yang](Cisco-IOS-XR-asr9k-ptp-pd-cfg.yang) +[Cisco-IOS-XR-asr9k-xbar-cfg.yang](Cisco-IOS-XR-asr9k-xbar-cfg.yang) +[Cisco-IOS-XR-attestation-agent-cfg.yang](Cisco-IOS-XR-attestation-agent-cfg.yang) +[Cisco-IOS-XR-bundlemgr-cfg.yang](Cisco-IOS-XR-bundlemgr-cfg.yang) +[Cisco-IOS-XR-call-home-cfg.yang](Cisco-IOS-XR-call-home-cfg.yang) +[Cisco-IOS-XR-cdp-cfg.yang](Cisco-IOS-XR-cdp-cfg.yang) +[Cisco-IOS-XR-cem-class-cfg.yang](Cisco-IOS-XR-cem-class-cfg.yang) +[Cisco-IOS-XR-cemmib-cfg.yang](Cisco-IOS-XR-cemmib-cfg.yang) +[Cisco-IOS-XR-ciscoapsmib-cfg.yang](Cisco-IOS-XR-ciscoapsmib-cfg.yang) +[Cisco-IOS-XR-ciscosonetmib-cfg.yang](Cisco-IOS-XR-ciscosonetmib-cfg.yang) +[Cisco-IOS-XR-cli-cfg.yang](Cisco-IOS-XR-cli-cfg.yang) +[Cisco-IOS-XR-clns-isis-cfg.yang](Cisco-IOS-XR-clns-isis-cfg.yang) +[Cisco-IOS-XR-coherent-portmode-cfg.yang](Cisco-IOS-XR-coherent-portmode-cfg.yang) +[Cisco-IOS-XR-config-autosave-cfg.yang](Cisco-IOS-XR-config-autosave-cfg.yang) +[Cisco-IOS-XR-config-cfgmgr-cfg.yang](Cisco-IOS-XR-config-cfgmgr-cfg.yang) +[Cisco-IOS-XR-config-mda-cfg.yang](Cisco-IOS-XR-config-mda-cfg.yang) +[Cisco-IOS-XR-config-mibs-cfg.yang](Cisco-IOS-XR-config-mibs-cfg.yang) +[Cisco-IOS-XR-config-valid-ccv-cfg.yang](Cisco-IOS-XR-config-valid-ccv-cfg.yang) +[Cisco-IOS-XR-controller-cpri-cfg.yang](Cisco-IOS-XR-controller-cpri-cfg.yang) +[Cisco-IOS-XR-controller-dfb-cfg.yang](Cisco-IOS-XR-controller-dfb-cfg.yang) +[Cisco-IOS-XR-controller-fc-cfg.yang](Cisco-IOS-XR-controller-fc-cfg.yang) +[Cisco-IOS-XR-controller-och-cfg.yang](Cisco-IOS-XR-controller-och-cfg.yang) +[Cisco-IOS-XR-controller-odu-cfg.yang](Cisco-IOS-XR-controller-odu-cfg.yang) +[Cisco-IOS-XR-controller-oms-cfg.yang](Cisco-IOS-XR-controller-oms-cfg.yang) +[Cisco-IOS-XR-controller-optics-cfg.yang](Cisco-IOS-XR-controller-optics-cfg.yang) +[Cisco-IOS-XR-controller-osc-cfg.yang](Cisco-IOS-XR-controller-osc-cfg.yang) +[Cisco-IOS-XR-controller-ots-cfg.yang](Cisco-IOS-XR-controller-ots-cfg.yang) +[Cisco-IOS-XR-controller-otu-cfg.yang](Cisco-IOS-XR-controller-otu-cfg.yang) +[Cisco-IOS-XR-controller-sonet-cfg.yang](Cisco-IOS-XR-controller-sonet-cfg.yang) +[Cisco-IOS-XR-controller-t1e1-cfg.yang](Cisco-IOS-XR-controller-t1e1-cfg.yang) +[Cisco-IOS-XR-crypto-cepki-cfg.yang](Cisco-IOS-XR-crypto-cepki-cfg.yang) +[Cisco-IOS-XR-crypto-macsec-mka-cfg.yang](Cisco-IOS-XR-crypto-macsec-mka-cfg.yang) +[Cisco-IOS-XR-crypto-macsec-mka-if-cfg.yang](Cisco-IOS-XR-crypto-macsec-mka-if-cfg.yang) +[Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg.yang](Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg.yang) +[Cisco-IOS-XR-crypto-sam-cfg.yang](Cisco-IOS-XR-crypto-sam-cfg.yang) +[Cisco-IOS-XR-crypto-ssh-cfg.yang](Cisco-IOS-XR-crypto-ssh-cfg.yang) +[Cisco-IOS-XR-crypto-svault-cfg.yang](Cisco-IOS-XR-crypto-svault-cfg.yang) +[Cisco-IOS-XR-custom-showtech-profile-cfg.yang](Cisco-IOS-XR-custom-showtech-profile-cfg.yang) +[Cisco-IOS-XR-daisychain-mgmt-cfg.yang](Cisco-IOS-XR-daisychain-mgmt-cfg.yang) +[Cisco-IOS-XR-dot1x-cfg.yang](Cisco-IOS-XR-dot1x-cfg.yang) +[Cisco-IOS-XR-dot1x-if-cfg.yang](Cisco-IOS-XR-dot1x-if-cfg.yang) +[Cisco-IOS-XR-drivers-icpe-ethernet-cfg.yang](Cisco-IOS-XR-drivers-icpe-ethernet-cfg.yang) +[Cisco-IOS-XR-drivers-media-eth-cfg.yang](Cisco-IOS-XR-drivers-media-eth-cfg.yang) +[Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg.yang](Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg.yang) +[Cisco-IOS-XR-drivers-mpa-infra-cfg.yang](Cisco-IOS-XR-drivers-mpa-infra-cfg.yang) +[Cisco-IOS-XR-dwdm-ui-cfg.yang](Cisco-IOS-XR-dwdm-ui-cfg.yang) +[Cisco-IOS-XR-eapol-if-cfg.yang](Cisco-IOS-XR-eapol-if-cfg.yang) +[Cisco-IOS-XR-eigrp-cfg.yang](Cisco-IOS-XR-eigrp-cfg.yang) +[Cisco-IOS-XR-envmon-alt-cfg.yang](Cisco-IOS-XR-envmon-alt-cfg.yang) +[Cisco-IOS-XR-envmon-cfg.yang](Cisco-IOS-XR-envmon-cfg.yang) +[Cisco-IOS-XR-erp-cfg.yang](Cisco-IOS-XR-erp-cfg.yang) +[Cisco-IOS-XR-es-ace-cfg.yang](Cisco-IOS-XR-es-ace-cfg.yang) +[Cisco-IOS-XR-es-acl-cfg.yang](Cisco-IOS-XR-es-acl-cfg.yang) +[Cisco-IOS-XR-ethernet-cfm-cfg.yang](Cisco-IOS-XR-ethernet-cfm-cfg.yang) +[Cisco-IOS-XR-ethernet-cfm-sat-cfg.yang](Cisco-IOS-XR-ethernet-cfm-sat-cfg.yang) +[Cisco-IOS-XR-ethernet-link-oam-cfg.yang](Cisco-IOS-XR-ethernet-link-oam-cfg.yang) +[Cisco-IOS-XR-ethernet-lldp-cfg.yang](Cisco-IOS-XR-ethernet-lldp-cfg.yang) +[Cisco-IOS-XR-ethernet-loopback-cfg.yang](Cisco-IOS-XR-ethernet-loopback-cfg.yang) +[Cisco-IOS-XR-ethernet-sat-cfg.yang](Cisco-IOS-XR-ethernet-sat-cfg.yang) +[Cisco-IOS-XR-fabhfr-mib-cfg.yang](Cisco-IOS-XR-fabhfr-mib-cfg.yang) +[Cisco-IOS-XR-fgid-mgr-cfg.yang](Cisco-IOS-XR-fgid-mgr-cfg.yang) +[Cisco-IOS-XR-fia-hw-profile-cfg.yang](Cisco-IOS-XR-fia-hw-profile-cfg.yang) +[Cisco-IOS-XR-fib-common-cfg.yang](Cisco-IOS-XR-fib-common-cfg.yang) +[Cisco-IOS-XR-fibrechannelmib-cfg.yang](Cisco-IOS-XR-fibrechannelmib-cfg.yang) +[Cisco-IOS-XR-filesysinv-cfg.yang](Cisco-IOS-XR-filesysinv-cfg.yang) +[Cisco-IOS-XR-flashmib-cfg.yang](Cisco-IOS-XR-flashmib-cfg.yang) +[Cisco-IOS-XR-flowspec-cfg.yang](Cisco-IOS-XR-flowspec-cfg.yang) +[Cisco-IOS-XR-fpd-infra-cfg.yang](Cisco-IOS-XR-fpd-infra-cfg.yang) +[Cisco-IOS-XR-fpmgr-cfg.yang](Cisco-IOS-XR-fpmgr-cfg.yang) +[Cisco-IOS-XR-freqsync-cfg.yang](Cisco-IOS-XR-freqsync-cfg.yang) +[Cisco-IOS-XR-freqsync-sat-cfg.yang](Cisco-IOS-XR-freqsync-sat-cfg.yang) +[Cisco-IOS-XR-fsdbagg-cfg.yang](Cisco-IOS-XR-fsdbagg-cfg.yang) +[Cisco-IOS-XR-gnss-cfg.yang](Cisco-IOS-XR-gnss-cfg.yang) +[Cisco-IOS-XR-ha-eem-cfg.yang](Cisco-IOS-XR-ha-eem-cfg.yang) +[Cisco-IOS-XR-healthcheck-cfg.yang](Cisco-IOS-XR-healthcheck-cfg.yang) +[Cisco-IOS-XR-hw-module-cfg.yang](Cisco-IOS-XR-hw-module-cfg.yang) +[Cisco-IOS-XR-icpe-infra-cfg.yang](Cisco-IOS-XR-icpe-infra-cfg.yang) +[Cisco-IOS-XR-iedge4710-cfg.yang](Cisco-IOS-XR-iedge4710-cfg.yang) +[Cisco-IOS-XR-ifmgr-cfg.yang](Cisco-IOS-XR-ifmgr-cfg.yang) +[Cisco-IOS-XR-ikev2-cfg.yang](Cisco-IOS-XR-ikev2-cfg.yang) +[Cisco-IOS-XR-infra-alarm-logger-cfg.yang](Cisco-IOS-XR-infra-alarm-logger-cfg.yang) +[Cisco-IOS-XR-infra-ceredundancymib-cfg.yang](Cisco-IOS-XR-infra-ceredundancymib-cfg.yang) +[Cisco-IOS-XR-infra-confcopymib-cfg.yang](Cisco-IOS-XR-infra-confcopymib-cfg.yang) +[Cisco-IOS-XR-infra-correlator-cfg.yang](Cisco-IOS-XR-infra-correlator-cfg.yang) +[Cisco-IOS-XR-infra-fti-cfg.yang](Cisco-IOS-XR-infra-fti-cfg.yang) +[Cisco-IOS-XR-infra-infra-cfg.yang](Cisco-IOS-XR-infra-infra-cfg.yang) +[Cisco-IOS-XR-infra-infra-clock-linux-cfg.yang](Cisco-IOS-XR-infra-infra-clock-linux-cfg.yang) +[Cisco-IOS-XR-infra-infra-locale-cfg.yang](Cisco-IOS-XR-infra-infra-locale-cfg.yang) +[Cisco-IOS-XR-infra-ltrace-cfg.yang](Cisco-IOS-XR-infra-ltrace-cfg.yang) +[Cisco-IOS-XR-infra-notification-log-mib-cfg.yang](Cisco-IOS-XR-infra-notification-log-mib-cfg.yang) +[Cisco-IOS-XR-infra-nsr-cfg.yang](Cisco-IOS-XR-infra-nsr-cfg.yang) +[Cisco-IOS-XR-infra-objmgr-cfg.yang](Cisco-IOS-XR-infra-objmgr-cfg.yang) +[Cisco-IOS-XR-infra-policymgr-cfg.yang](Cisco-IOS-XR-infra-policymgr-cfg.yang) +[Cisco-IOS-XR-infra-rcmd-cfg.yang](Cisco-IOS-XR-infra-rcmd-cfg.yang) +[Cisco-IOS-XR-infra-rsi-cfg.yang](Cisco-IOS-XR-infra-rsi-cfg.yang) +[Cisco-IOS-XR-infra-rsi-subscriber-cfg.yang](Cisco-IOS-XR-infra-rsi-subscriber-cfg.yang) +[Cisco-IOS-XR-infra-rt-check-cfg.yang](Cisco-IOS-XR-infra-rt-check-cfg.yang) +[Cisco-IOS-XR-infra-script-mgmt-cfg.yang](Cisco-IOS-XR-infra-script-mgmt-cfg.yang) +[Cisco-IOS-XR-infra-serg-cfg.yang](Cisco-IOS-XR-infra-serg-cfg.yang) +[Cisco-IOS-XR-infra-sla-cfg.yang](Cisco-IOS-XR-infra-sla-cfg.yang) +[Cisco-IOS-XR-infra-statsd-cfg.yang](Cisco-IOS-XR-infra-statsd-cfg.yang) +[Cisco-IOS-XR-infra-syslog-cfg.yang](Cisco-IOS-XR-infra-syslog-cfg.yang) +[Cisco-IOS-XR-infra-systemmib-cfg.yang](Cisco-IOS-XR-infra-systemmib-cfg.yang) +[Cisco-IOS-XR-infra-tc-cfg.yang](Cisco-IOS-XR-infra-tc-cfg.yang) +[Cisco-IOS-XR-infra-xtc-agent-cfg.yang](Cisco-IOS-XR-infra-xtc-agent-cfg.yang) +[Cisco-IOS-XR-infra-xtc-cfg.yang](Cisco-IOS-XR-infra-xtc-cfg.yang) +[Cisco-IOS-XR-install-cfg.yang](Cisco-IOS-XR-install-cfg.yang) +[Cisco-IOS-XR-install-profile-cfg.yang](Cisco-IOS-XR-install-profile-cfg.yang) +[Cisco-IOS-XR-interface-cem-cfg.yang](Cisco-IOS-XR-interface-cem-cfg.yang) +[Cisco-IOS-XR-invmgr-cfg.yang](Cisco-IOS-XR-invmgr-cfg.yang) +[Cisco-IOS-XR-invproxy-hwmodule-cfg.yang](Cisco-IOS-XR-invproxy-hwmodule-cfg.yang) +[Cisco-IOS-XR-ip-bfd-cfg.yang](Cisco-IOS-XR-ip-bfd-cfg.yang) +[Cisco-IOS-XR-ip-daps-cfg.yang](Cisco-IOS-XR-ip-daps-cfg.yang) +[Cisco-IOS-XR-ip-daps-mib-cfg.yang](Cisco-IOS-XR-ip-daps-mib-cfg.yang) +[Cisco-IOS-XR-ip-domain-cfg.yang](Cisco-IOS-XR-ip-domain-cfg.yang) +[Cisco-IOS-XR-ip-iarm-cfg.yang](Cisco-IOS-XR-ip-iarm-cfg.yang) +[Cisco-IOS-XR-ip-iarm-vrf-cfg.yang](Cisco-IOS-XR-ip-iarm-vrf-cfg.yang) +[Cisco-IOS-XR-ip-icmp-cfg.yang](Cisco-IOS-XR-ip-icmp-cfg.yang) +[Cisco-IOS-XR-ip-iep-cfg.yang](Cisco-IOS-XR-ip-iep-cfg.yang) +[Cisco-IOS-XR-ip-mobileip-cfg.yang](Cisco-IOS-XR-ip-mobileip-cfg.yang) +[Cisco-IOS-XR-ip-ntp-cfg.yang](Cisco-IOS-XR-ip-ntp-cfg.yang) +[Cisco-IOS-XR-ip-pfilter-cfg.yang](Cisco-IOS-XR-ip-pfilter-cfg.yang) +[Cisco-IOS-XR-ip-pfilter-subscriber-cfg.yang](Cisco-IOS-XR-ip-pfilter-subscriber-cfg.yang) +[Cisco-IOS-XR-ip-raw-cfg.yang](Cisco-IOS-XR-ip-raw-cfg.yang) +[Cisco-IOS-XR-ip-rib-cfg.yang](Cisco-IOS-XR-ip-rib-cfg.yang) +[Cisco-IOS-XR-ip-rib-iid-cfg.yang](Cisco-IOS-XR-ip-rib-iid-cfg.yang) +[Cisco-IOS-XR-ip-rip-cfg.yang](Cisco-IOS-XR-ip-rip-cfg.yang) +[Cisco-IOS-XR-ip-rsvp-cfg.yang](Cisco-IOS-XR-ip-rsvp-cfg.yang) +[Cisco-IOS-XR-ip-sbfd-cfg.yang](Cisco-IOS-XR-ip-sbfd-cfg.yang) +[Cisco-IOS-XR-ip-static-cfg.yang](Cisco-IOS-XR-ip-static-cfg.yang) +[Cisco-IOS-XR-ip-tcp-cfg.yang](Cisco-IOS-XR-ip-tcp-cfg.yang) +[Cisco-IOS-XR-ip-udp-cfg.yang](Cisco-IOS-XR-ip-udp-cfg.yang) +[Cisco-IOS-XR-ipv4-ace-cfg.yang](Cisco-IOS-XR-ipv4-ace-cfg.yang) +[Cisco-IOS-XR-ipv4-acl-cfg.yang](Cisco-IOS-XR-ipv4-acl-cfg.yang) +[Cisco-IOS-XR-ipv4-arp-cfg.yang](Cisco-IOS-XR-ipv4-arp-cfg.yang) +[Cisco-IOS-XR-ipv4-bgp-cfg.yang](Cisco-IOS-XR-ipv4-bgp-cfg.yang) +[Cisco-IOS-XR-ipv4-cinetd-cfg.yang](Cisco-IOS-XR-ipv4-cinetd-cfg.yang) +[Cisco-IOS-XR-ipv4-dc-cfg.yang](Cisco-IOS-XR-ipv4-dc-cfg.yang) +[Cisco-IOS-XR-ipv4-dhcpd-cfg.yang](Cisco-IOS-XR-ipv4-dhcpd-cfg.yang) +[Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg.yang](Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg.yang) +[Cisco-IOS-XR-ipv4-filesystems-cfg.yang](Cisco-IOS-XR-ipv4-filesystems-cfg.yang) +[Cisco-IOS-XR-ipv4-hsrp-cfg.yang](Cisco-IOS-XR-ipv4-hsrp-cfg.yang) +[Cisco-IOS-XR-ipv4-igmp-cfg.yang](Cisco-IOS-XR-ipv4-igmp-cfg.yang) +[Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg.yang](Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg.yang) +[Cisco-IOS-XR-ipv4-io-cfg.yang](Cisco-IOS-XR-ipv4-io-cfg.yang) +[Cisco-IOS-XR-ipv4-ma-cfg.yang](Cisco-IOS-XR-ipv4-ma-cfg.yang) +[Cisco-IOS-XR-ipv4-ma-subscriber-cfg.yang](Cisco-IOS-XR-ipv4-ma-subscriber-cfg.yang) +[Cisco-IOS-XR-ipv4-mfwd-cfg.yang](Cisco-IOS-XR-ipv4-mfwd-cfg.yang) +[Cisco-IOS-XR-ipv4-msdp-cfg.yang](Cisco-IOS-XR-ipv4-msdp-cfg.yang) +[Cisco-IOS-XR-ipv4-ospf-cfg.yang](Cisco-IOS-XR-ipv4-ospf-cfg.yang) +[Cisco-IOS-XR-ipv4-pim-cfg.yang](Cisco-IOS-XR-ipv4-pim-cfg.yang) +[Cisco-IOS-XR-ipv4-smiap-cfg.yang](Cisco-IOS-XR-ipv4-smiap-cfg.yang) +[Cisco-IOS-XR-ipv4-telnet-cfg.yang](Cisco-IOS-XR-ipv4-telnet-cfg.yang) +[Cisco-IOS-XR-ipv4-telnet-mgmt-cfg.yang](Cisco-IOS-XR-ipv4-telnet-mgmt-cfg.yang) +[Cisco-IOS-XR-ipv4-vrrp-cfg.yang](Cisco-IOS-XR-ipv4-vrrp-cfg.yang) +[Cisco-IOS-XR-ipv6-ace-cfg.yang](Cisco-IOS-XR-ipv6-ace-cfg.yang) +[Cisco-IOS-XR-ipv6-acl-cfg.yang](Cisco-IOS-XR-ipv6-acl-cfg.yang) +[Cisco-IOS-XR-ipv6-io-cfg.yang](Cisco-IOS-XR-ipv6-io-cfg.yang) +[Cisco-IOS-XR-ipv6-ma-cfg.yang](Cisco-IOS-XR-ipv6-ma-cfg.yang) +[Cisco-IOS-XR-ipv6-ma-subscriber-cfg.yang](Cisco-IOS-XR-ipv6-ma-subscriber-cfg.yang) +[Cisco-IOS-XR-ipv6-nd-cfg.yang](Cisco-IOS-XR-ipv6-nd-cfg.yang) +[Cisco-IOS-XR-ipv6-nd-subscriber-cfg.yang](Cisco-IOS-XR-ipv6-nd-subscriber-cfg.yang) +[Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg.yang](Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg.yang) +[Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg.yang](Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg.yang) +[Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg.yang](Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg.yang) +[Cisco-IOS-XR-ipv6-ospfv3-cfg.yang](Cisco-IOS-XR-ipv6-ospfv3-cfg.yang) +[Cisco-IOS-XR-ipv6-smiap-cfg.yang](Cisco-IOS-XR-ipv6-smiap-cfg.yang) +[Cisco-IOS-XR-keyring-cfg.yang](Cisco-IOS-XR-keyring-cfg.yang) +[Cisco-IOS-XR-kim-tpa-cfg.yang](Cisco-IOS-XR-kim-tpa-cfg.yang) +[Cisco-IOS-XR-l2-eth-infra-cfg.yang](Cisco-IOS-XR-l2-eth-infra-cfg.yang) +[Cisco-IOS-XR-l2-snoop-cfg.yang](Cisco-IOS-XR-l2-snoop-cfg.yang) +[Cisco-IOS-XR-l2rib-cfg.yang](Cisco-IOS-XR-l2rib-cfg.yang) +[Cisco-IOS-XR-l2vpn-cfg.yang](Cisco-IOS-XR-l2vpn-cfg.yang) +[Cisco-IOS-XR-lcmode-cfg.yang](Cisco-IOS-XR-lcmode-cfg.yang) +[Cisco-IOS-XR-li-cfg.yang](Cisco-IOS-XR-li-cfg.yang) +[Cisco-IOS-XR-lib-keychain-cfg.yang](Cisco-IOS-XR-lib-keychain-cfg.yang) +[Cisco-IOS-XR-lib-mpp-cfg.yang](Cisco-IOS-XR-lib-mpp-cfg.yang) +[Cisco-IOS-XR-lib-type6-cfg.yang](Cisco-IOS-XR-lib-type6-cfg.yang) +[Cisco-IOS-XR-linux-xlnc-cfg.yang](Cisco-IOS-XR-linux-xlnc-cfg.yang) +[Cisco-IOS-XR-lmp-cfg.yang](Cisco-IOS-XR-lmp-cfg.yang) +[Cisco-IOS-XR-lpts-lib-cfg.yang](Cisco-IOS-XR-lpts-lib-cfg.yang) +[Cisco-IOS-XR-lpts-pre-ifib-cfg.yang](Cisco-IOS-XR-lpts-pre-ifib-cfg.yang) +[Cisco-IOS-XR-lpts-punt-flowtrap-cfg.yang](Cisco-IOS-XR-lpts-punt-flowtrap-cfg.yang) +[Cisco-IOS-XR-man-ems-cfg.yang](Cisco-IOS-XR-man-ems-cfg.yang) +[Cisco-IOS-XR-man-http-lighttpd-yang-cfg.yang](Cisco-IOS-XR-man-http-lighttpd-yang-cfg.yang) +[Cisco-IOS-XR-man-ipsla-cfg.yang](Cisco-IOS-XR-man-ipsla-cfg.yang) +[Cisco-IOS-XR-man-netconf-cfg.yang](Cisco-IOS-XR-man-netconf-cfg.yang) +[Cisco-IOS-XR-man-restconf-cfg.yang](Cisco-IOS-XR-man-restconf-cfg.yang) +[Cisco-IOS-XR-man-xml-ttyagent-cfg.yang](Cisco-IOS-XR-man-xml-ttyagent-cfg.yang) +[Cisco-IOS-XR-manageability-object-tracking-cfg.yang](Cisco-IOS-XR-manageability-object-tracking-cfg.yang) +[Cisco-IOS-XR-manageability-perfmgmt-cfg.yang](Cisco-IOS-XR-manageability-perfmgmt-cfg.yang) +[Cisco-IOS-XR-mdrv-lib-cfg.yang](Cisco-IOS-XR-mdrv-lib-cfg.yang) +[Cisco-IOS-XR-mirror-cfg.yang](Cisco-IOS-XR-mirror-cfg.yang) +[Cisco-IOS-XR-mpls-io-cfg.yang](Cisco-IOS-XR-mpls-io-cfg.yang) +[Cisco-IOS-XR-mpls-ldp-cfg.yang](Cisco-IOS-XR-mpls-ldp-cfg.yang) +[Cisco-IOS-XR-mpls-lsd-cfg.yang](Cisco-IOS-XR-mpls-lsd-cfg.yang) +[Cisco-IOS-XR-mpls-oam-cfg.yang](Cisco-IOS-XR-mpls-oam-cfg.yang) +[Cisco-IOS-XR-mpls-over-udp-cfg.yang](Cisco-IOS-XR-mpls-over-udp-cfg.yang) +[Cisco-IOS-XR-mpls-static-cfg.yang](Cisco-IOS-XR-mpls-static-cfg.yang) +[Cisco-IOS-XR-mpls-te-cfg.yang](Cisco-IOS-XR-mpls-te-cfg.yang) +[Cisco-IOS-XR-mpls-vpn-cfg.yang](Cisco-IOS-XR-mpls-vpn-cfg.yang) +[Cisco-IOS-XR-ncs1001-esd-cfg.yang](Cisco-IOS-XR-ncs1001-esd-cfg.yang) +[Cisco-IOS-XR-ncs1001-ots-cfg.yang](Cisco-IOS-XR-ncs1001-ots-cfg.yang) +[Cisco-IOS-XR-ncs1k-mxp-cfg.yang](Cisco-IOS-XR-ncs1k-mxp-cfg.yang) +[Cisco-IOS-XR-ncs4k-freqsync-cfg.yang](Cisco-IOS-XR-ncs4k-freqsync-cfg.yang) +[Cisco-IOS-XR-ncs5500-coherent-portmode-cfg.yang](Cisco-IOS-XR-ncs5500-coherent-portmode-cfg.yang) +[Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg.yang](Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg.yang) +[Cisco-IOS-XR-npu-hw-profile-cfg.yang](Cisco-IOS-XR-npu-hw-profile-cfg.yang) +[Cisco-IOS-XR-npu-power-profile-sf-d-cfg.yang](Cisco-IOS-XR-npu-power-profile-sf-d-cfg.yang) +[Cisco-IOS-XR-npu-power-profile-sf-f-cfg.yang](Cisco-IOS-XR-npu-power-profile-sf-f-cfg.yang) +[Cisco-IOS-XR-nvgen-cfg.yang](Cisco-IOS-XR-nvgen-cfg.yang) +[Cisco-IOS-XR-olc-cfg.yang](Cisco-IOS-XR-olc-cfg.yang) +[Cisco-IOS-XR-opendns-deviceid-cfg.yang](Cisco-IOS-XR-opendns-deviceid-cfg.yang) +[Cisco-IOS-XR-opticalmib-cfg.yang](Cisco-IOS-XR-opticalmib-cfg.yang) +[Cisco-IOS-XR-opticalotsmib-cfg.yang](Cisco-IOS-XR-opticalotsmib-cfg.yang) +[Cisco-IOS-XR-optics-dac-cfg.yang](Cisco-IOS-XR-optics-dac-cfg.yang) +[Cisco-IOS-XR-optics-driver-cfg.yang](Cisco-IOS-XR-optics-driver-cfg.yang) +[Cisco-IOS-XR-optics-driver-quad-cfg.yang](Cisco-IOS-XR-optics-driver-quad-cfg.yang) +[Cisco-IOS-XR-optics-driver-xponder-cfg.yang](Cisco-IOS-XR-optics-driver-xponder-cfg.yang) +[Cisco-IOS-XR-optics-fan-control-cfg.yang](Cisco-IOS-XR-optics-fan-control-cfg.yang) +[Cisco-IOS-XR-optics-media-type-cfg.yang](Cisco-IOS-XR-optics-media-type-cfg.yang) +[Cisco-IOS-XR-optics-port-mode-centralized-cfg.yang](Cisco-IOS-XR-optics-port-mode-centralized-cfg.yang) +[Cisco-IOS-XR-optics-port-mode-cfg.yang](Cisco-IOS-XR-optics-port-mode-cfg.yang) +[Cisco-IOS-XR-optics-speed-cfg.yang](Cisco-IOS-XR-optics-speed-cfg.yang) +[Cisco-IOS-XR-osa-cfg.yang](Cisco-IOS-XR-osa-cfg.yang) +[Cisco-IOS-XR-osa-ct-cfg.yang](Cisco-IOS-XR-osa-ct-cfg.yang) +[Cisco-IOS-XR-osa-linesystem-cfg.yang](Cisco-IOS-XR-osa-linesystem-cfg.yang) +[Cisco-IOS-XR-osa-sp-cfg.yang](Cisco-IOS-XR-osa-sp-cfg.yang) +[Cisco-IOS-XR-otnifmib-cfg.yang](Cisco-IOS-XR-otnifmib-cfg.yang) +[Cisco-IOS-XR-otnsec-cfg.yang](Cisco-IOS-XR-otnsec-cfg.yang) +[Cisco-IOS-XR-parser-cfg.yang](Cisco-IOS-XR-parser-cfg.yang) +[Cisco-IOS-XR-patch-panel-cfg.yang](Cisco-IOS-XR-patch-panel-cfg.yang) +[Cisco-IOS-XR-pbr-bng-cfg.yang](Cisco-IOS-XR-pbr-bng-cfg.yang) +[Cisco-IOS-XR-pbr-cfg.yang](Cisco-IOS-XR-pbr-cfg.yang) +[Cisco-IOS-XR-pbr-subscriber-cfg.yang](Cisco-IOS-XR-pbr-subscriber-cfg.yang) +[Cisco-IOS-XR-pbr-vrf-policy-cfg.yang](Cisco-IOS-XR-pbr-vrf-policy-cfg.yang) +[Cisco-IOS-XR-perf-meas-cfg.yang](Cisco-IOS-XR-perf-meas-cfg.yang) +[Cisco-IOS-XR-pmengine-cfg.yang](Cisco-IOS-XR-pmengine-cfg.yang) +[Cisco-IOS-XR-pmengine-gl-cfg.yang](Cisco-IOS-XR-pmengine-gl-cfg.yang) +[Cisco-IOS-XR-policy-repository-cfg.yang](Cisco-IOS-XR-policy-repository-cfg.yang) +[Cisco-IOS-XR-portmode-cfg.yang](Cisco-IOS-XR-portmode-cfg.yang) +[Cisco-IOS-XR-ppp-ma-cfg.yang](Cisco-IOS-XR-ppp-ma-cfg.yang) +[Cisco-IOS-XR-ppp-ma-fsm-cfg.yang](Cisco-IOS-XR-ppp-ma-fsm-cfg.yang) +[Cisco-IOS-XR-ppp-ma-gbl-cfg.yang](Cisco-IOS-XR-ppp-ma-gbl-cfg.yang) +[Cisco-IOS-XR-ppp-ma-ipcp-cfg.yang](Cisco-IOS-XR-ppp-ma-ipcp-cfg.yang) +[Cisco-IOS-XR-ppp-ma-ipcpiw-cfg.yang](Cisco-IOS-XR-ppp-ma-ipcpiw-cfg.yang) +[Cisco-IOS-XR-ppp-ma-lcp-cfg.yang](Cisco-IOS-XR-ppp-ma-lcp-cfg.yang) +[Cisco-IOS-XR-ppp-ma-ssrp-cfg.yang](Cisco-IOS-XR-ppp-ma-ssrp-cfg.yang) +[Cisco-IOS-XR-ppp-ma-syslog-cfg.yang](Cisco-IOS-XR-ppp-ma-syslog-cfg.yang) +[Cisco-IOS-XR-prm-hwmod-cfg.yang](Cisco-IOS-XR-prm-hwmod-cfg.yang) +[Cisco-IOS-XR-prm-hwmod-profile-cfg.yang](Cisco-IOS-XR-prm-hwmod-profile-cfg.yang) +[Cisco-IOS-XR-prm-hwmod-sr-cfg.yang](Cisco-IOS-XR-prm-hwmod-sr-cfg.yang) +[Cisco-IOS-XR-ptp-cfg.yang](Cisco-IOS-XR-ptp-cfg.yang) +[Cisco-IOS-XR-ptp-pd-cfg.yang](Cisco-IOS-XR-ptp-pd-cfg.yang) +[Cisco-IOS-XR-pwrmgmt-action-cfg.yang](Cisco-IOS-XR-pwrmgmt-action-cfg.yang) +[Cisco-IOS-XR-pwrmgmt-cfg.yang](Cisco-IOS-XR-pwrmgmt-cfg.yang) +[Cisco-IOS-XR-qos-ma-bng-cfg.yang](Cisco-IOS-XR-qos-ma-bng-cfg.yang) +[Cisco-IOS-XR-qos-ma-cfg.yang](Cisco-IOS-XR-qos-ma-cfg.yang) +[Cisco-IOS-XR-qos-ma-sat-cfg.yang](Cisco-IOS-XR-qos-ma-sat-cfg.yang) +[Cisco-IOS-XR-qos-mibs-cfg.yang](Cisco-IOS-XR-qos-mibs-cfg.yang) +[Cisco-IOS-XR-rgmgr-cfg.yang](Cisco-IOS-XR-rgmgr-cfg.yang) +[Cisco-IOS-XR-roe-cfg.yang](Cisco-IOS-XR-roe-cfg.yang) +[Cisco-IOS-XR-sandbox-cfg.yang](Cisco-IOS-XR-sandbox-cfg.yang) +[Cisco-IOS-XR-se-cgn-cfg.yang](Cisco-IOS-XR-se-cgn-cfg.yang) +[Cisco-IOS-XR-segment-routing-ms-cfg.yang](Cisco-IOS-XR-segment-routing-ms-cfg.yang) +[Cisco-IOS-XR-segment-routing-ms-common-cfg.yang](Cisco-IOS-XR-segment-routing-ms-common-cfg.yang) +[Cisco-IOS-XR-segment-routing-srv6-cfg.yang](Cisco-IOS-XR-segment-routing-srv6-cfg.yang) +[Cisco-IOS-XR-sfi-cfg.yang](Cisco-IOS-XR-sfi-cfg.yang) +[Cisco-IOS-XR-shellutil-cfg.yang](Cisco-IOS-XR-shellutil-cfg.yang) +[Cisco-IOS-XR-sirius-ptp-cfg.yang](Cisco-IOS-XR-sirius-ptp-cfg.yang) +[Cisco-IOS-XR-sks-server-cfg.yang](Cisco-IOS-XR-sks-server-cfg.yang) +[Cisco-IOS-XR-smart-license-cfg.yang](Cisco-IOS-XR-smart-license-cfg.yang) +[Cisco-IOS-XR-snmp-agent-cfg.yang](Cisco-IOS-XR-snmp-agent-cfg.yang) +[Cisco-IOS-XR-snmp-bridgemib-cfg.yang](Cisco-IOS-XR-snmp-bridgemib-cfg.yang) +[Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg.yang](Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg.yang) +[Cisco-IOS-XR-snmp-ciscosensormib-cfg.yang](Cisco-IOS-XR-snmp-ciscosensormib-cfg.yang) +[Cisco-IOS-XR-snmp-entityextmib-cfg.yang](Cisco-IOS-XR-snmp-entityextmib-cfg.yang) +[Cisco-IOS-XR-snmp-entitymib-cfg.yang](Cisco-IOS-XR-snmp-entitymib-cfg.yang) +[Cisco-IOS-XR-snmp-entstatemib-cfg.yang](Cisco-IOS-XR-snmp-entstatemib-cfg.yang) +[Cisco-IOS-XR-snmp-frucontrolmib-cfg.yang](Cisco-IOS-XR-snmp-frucontrolmib-cfg.yang) +[Cisco-IOS-XR-snmp-ifmib-cfg.yang](Cisco-IOS-XR-snmp-ifmib-cfg.yang) +[Cisco-IOS-XR-snmp-mib-rfmib-cfg.yang](Cisco-IOS-XR-snmp-mib-rfmib-cfg.yang) +[Cisco-IOS-XR-snmp-syslogmib-cfg.yang](Cisco-IOS-XR-snmp-syslogmib-cfg.yang) +[Cisco-IOS-XR-spirit-bfd-hw-offload-cfg.yang](Cisco-IOS-XR-spirit-bfd-hw-offload-cfg.yang) +[Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg.yang](Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg.yang) +[Cisco-IOS-XR-spirit-corehelper-cfg.yang](Cisco-IOS-XR-spirit-corehelper-cfg.yang) +[Cisco-IOS-XR-ssm-cfg.yang](Cisco-IOS-XR-ssm-cfg.yang) +[Cisco-IOS-XR-subscriber-accounting-cfg.yang](Cisco-IOS-XR-subscriber-accounting-cfg.yang) +[Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg.yang](Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg.yang) +[Cisco-IOS-XR-subscriber-ipsub-cfg.yang](Cisco-IOS-XR-subscriber-ipsub-cfg.yang) +[Cisco-IOS-XR-subscriber-nal-cfg.yang](Cisco-IOS-XR-subscriber-nal-cfg.yang) +[Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg.yang](Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg.yang) +[Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg.yang](Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg.yang) +[Cisco-IOS-XR-subscriber-session-mon-mibs-cfg.yang](Cisco-IOS-XR-subscriber-session-mon-mibs-cfg.yang) +[Cisco-IOS-XR-subscriber-srg-cfg.yang](Cisco-IOS-XR-subscriber-srg-cfg.yang) +[Cisco-IOS-XR-syncc-controller-cfg.yang](Cisco-IOS-XR-syncc-controller-cfg.yang) +[Cisco-IOS-XR-sysmgr-cfg.yang](Cisco-IOS-XR-sysmgr-cfg.yang) +[Cisco-IOS-XR-system-recovery-cfg.yang](Cisco-IOS-XR-system-recovery-cfg.yang) +[Cisco-IOS-XR-telemetry-model-driven-cfg.yang](Cisco-IOS-XR-telemetry-model-driven-cfg.yang) +[Cisco-IOS-XR-terminal-device-cfg.yang](Cisco-IOS-XR-terminal-device-cfg.yang) +[Cisco-IOS-XR-timing-sets-hwmod-cfg.yang](Cisco-IOS-XR-timing-sets-hwmod-cfg.yang) +[Cisco-IOS-XR-traffmon-netflow-cfg.yang](Cisco-IOS-XR-traffmon-netflow-cfg.yang) +[Cisco-IOS-XR-tty-management-cfg.yang](Cisco-IOS-XR-tty-management-cfg.yang) +[Cisco-IOS-XR-tty-server-cfg.yang](Cisco-IOS-XR-tty-server-cfg.yang) +[Cisco-IOS-XR-tty-vty-cfg.yang](Cisco-IOS-XR-tty-vty-cfg.yang) +[Cisco-IOS-XR-tunnel-gre-cfg.yang](Cisco-IOS-XR-tunnel-gre-cfg.yang) +[Cisco-IOS-XR-tunnel-l2tun-cfg.yang](Cisco-IOS-XR-tunnel-l2tun-cfg.yang) +[Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg.yang](Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg.yang) +[Cisco-IOS-XR-tunnel-nve-cfg.yang](Cisco-IOS-XR-tunnel-nve-cfg.yang) +[Cisco-IOS-XR-tunnel-vpdn-cfg.yang](Cisco-IOS-XR-tunnel-vpdn-cfg.yang) +[Cisco-IOS-XR-uea-optics-driver-cfg.yang](Cisco-IOS-XR-uea-optics-driver-cfg.yang) +[Cisco-IOS-XR-uea-optics-driver-im-mode-cfg.yang](Cisco-IOS-XR-uea-optics-driver-im-mode-cfg.yang) +[Cisco-IOS-XR-uea-optics-driver-quad-cfg.yang](Cisco-IOS-XR-uea-optics-driver-quad-cfg.yang) +[Cisco-IOS-XR-vether-mode-cfg.yang](Cisco-IOS-XR-vether-mode-cfg.yang) +[Cisco-IOS-XR-vservice-cfg.yang](Cisco-IOS-XR-vservice-cfg.yang) +[Cisco-IOS-XR-wanphy-ui-cfg.yang](Cisco-IOS-XR-wanphy-ui-cfg.yang) +[Cisco-IOS-XR-watchd-cfg.yang](Cisco-IOS-XR-watchd-cfg.yang) +[Cisco-IOS-XR-wd-proc-state-cfg.yang](Cisco-IOS-XR-wd-proc-state-cfg.yang) +[Cisco-IOS-XR-ztp-cfg.yang](Cisco-IOS-XR-ztp-cfg.yang) +## Native Oper Models +[Cisco-IOS-XR-8000-lpts-oper-sub1.yang](Cisco-IOS-XR-8000-lpts-oper-sub1.yang) +[Cisco-IOS-XR-8000-lpts-oper.yang](Cisco-IOS-XR-8000-lpts-oper.yang) +[Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1.yang](Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1.yang) +[Cisco-IOS-XR-8000-platforms-npu-resources-oper.yang](Cisco-IOS-XR-8000-platforms-npu-resources-oper.yang) +[Cisco-IOS-XR-8000-qos-oper-sub1.yang](Cisco-IOS-XR-8000-qos-oper-sub1.yang) +[Cisco-IOS-XR-8000-qos-oper-sub2.yang](Cisco-IOS-XR-8000-qos-oper-sub2.yang) +[Cisco-IOS-XR-8000-qos-oper.yang](Cisco-IOS-XR-8000-qos-oper.yang) +[Cisco-IOS-XR-Ethernet-SPAN-oper-sub1.yang](Cisco-IOS-XR-Ethernet-SPAN-oper-sub1.yang) +[Cisco-IOS-XR-Ethernet-SPAN-oper-sub2.yang](Cisco-IOS-XR-Ethernet-SPAN-oper-sub2.yang) +[Cisco-IOS-XR-Ethernet-SPAN-oper-sub3.yang](Cisco-IOS-XR-Ethernet-SPAN-oper-sub3.yang) +[Cisco-IOS-XR-Ethernet-SPAN-oper.yang](Cisco-IOS-XR-Ethernet-SPAN-oper.yang) +[Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1.yang](Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1.yang) +[Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper.yang](Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper.yang) +[Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1.yang](Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1.yang) +[Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2.yang](Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2.yang) +[Cisco-IOS-XR-Subscriber-infra-subdb-oper.yang](Cisco-IOS-XR-Subscriber-infra-subdb-oper.yang) +[Cisco-IOS-XR-aaa-diameter-oper-sub1.yang](Cisco-IOS-XR-aaa-diameter-oper-sub1.yang) +[Cisco-IOS-XR-aaa-diameter-oper.yang](Cisco-IOS-XR-aaa-diameter-oper.yang) +[Cisco-IOS-XR-aaa-ldapd-oper-sub1.yang](Cisco-IOS-XR-aaa-ldapd-oper-sub1.yang) +[Cisco-IOS-XR-aaa-ldapd-oper.yang](Cisco-IOS-XR-aaa-ldapd-oper.yang) +[Cisco-IOS-XR-aaa-locald-oper-sub1.yang](Cisco-IOS-XR-aaa-locald-oper-sub1.yang) +[Cisco-IOS-XR-aaa-locald-oper.yang](Cisco-IOS-XR-aaa-locald-oper.yang) +[Cisco-IOS-XR-aaa-nacm-oper-sub1.yang](Cisco-IOS-XR-aaa-nacm-oper-sub1.yang) +[Cisco-IOS-XR-aaa-nacm-oper.yang](Cisco-IOS-XR-aaa-nacm-oper.yang) +[Cisco-IOS-XR-aaa-protocol-radius-oper-sub1.yang](Cisco-IOS-XR-aaa-protocol-radius-oper-sub1.yang) +[Cisco-IOS-XR-aaa-protocol-radius-oper-sub2.yang](Cisco-IOS-XR-aaa-protocol-radius-oper-sub2.yang) +[Cisco-IOS-XR-aaa-protocol-radius-oper.yang](Cisco-IOS-XR-aaa-protocol-radius-oper.yang) +[Cisco-IOS-XR-aaa-tacacs-oper-sub1.yang](Cisco-IOS-XR-aaa-tacacs-oper-sub1.yang) +[Cisco-IOS-XR-aaa-tacacs-oper.yang](Cisco-IOS-XR-aaa-tacacs-oper.yang) +[Cisco-IOS-XR-adt-oper-sub1.yang](Cisco-IOS-XR-adt-oper-sub1.yang) +[Cisco-IOS-XR-adt-oper-sub2.yang](Cisco-IOS-XR-adt-oper-sub2.yang) +[Cisco-IOS-XR-adt-oper.yang](Cisco-IOS-XR-adt-oper.yang) +[Cisco-IOS-XR-alarmgr-server-oper-sub1.yang](Cisco-IOS-XR-alarmgr-server-oper-sub1.yang) +[Cisco-IOS-XR-alarmgr-server-oper.yang](Cisco-IOS-XR-alarmgr-server-oper.yang) +[Cisco-IOS-XR-appmgr-oper-sub1.yang](Cisco-IOS-XR-appmgr-oper-sub1.yang) +[Cisco-IOS-XR-appmgr-oper.yang](Cisco-IOS-XR-appmgr-oper.yang) +[Cisco-IOS-XR-ascii-ltrace-oper-sub1.yang](Cisco-IOS-XR-ascii-ltrace-oper-sub1.yang) +[Cisco-IOS-XR-ascii-ltrace-oper.yang](Cisco-IOS-XR-ascii-ltrace-oper.yang) +[Cisco-IOS-XR-asic-error-oper-sub1.yang](Cisco-IOS-XR-asic-error-oper-sub1.yang) +[Cisco-IOS-XR-asic-error-oper-sub2.yang](Cisco-IOS-XR-asic-error-oper-sub2.yang) +[Cisco-IOS-XR-asic-error-oper.yang](Cisco-IOS-XR-asic-error-oper.yang) +[Cisco-IOS-XR-asic-errors-oper-sub1.yang](Cisco-IOS-XR-asic-errors-oper-sub1.yang) +[Cisco-IOS-XR-asic-errors-oper-sub2.yang](Cisco-IOS-XR-asic-errors-oper-sub2.yang) +[Cisco-IOS-XR-asic-errors-oper.yang](Cisco-IOS-XR-asic-errors-oper.yang) +[Cisco-IOS-XR-asr9k-fab-health-oper-sub1.yang](Cisco-IOS-XR-asr9k-fab-health-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-fab-health-oper.yang](Cisco-IOS-XR-asr9k-fab-health-oper.yang) +[Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1.yang](Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2.yang](Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2.yang) +[Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3.yang](Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3.yang) +[Cisco-IOS-XR-asr9k-fc-xbar-oper.yang](Cisco-IOS-XR-asr9k-fc-xbar-oper.yang) +[Cisco-IOS-XR-asr9k-fsi-oper-sub1.yang](Cisco-IOS-XR-asr9k-fsi-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-fsi-oper.yang](Cisco-IOS-XR-asr9k-fsi-oper.yang) +[Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1.yang](Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-lc-ethctrl-oper.yang](Cisco-IOS-XR-asr9k-lc-ethctrl-oper.yang) +[Cisco-IOS-XR-asr9k-lc-fca-oper-sub1.yang](Cisco-IOS-XR-asr9k-lc-fca-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-lc-fca-oper-sub2.yang](Cisco-IOS-XR-asr9k-lc-fca-oper-sub2.yang) +[Cisco-IOS-XR-asr9k-lc-fca-oper.yang](Cisco-IOS-XR-asr9k-lc-fca-oper.yang) +[Cisco-IOS-XR-asr9k-lpts-oper-sub1.yang](Cisco-IOS-XR-asr9k-lpts-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-lpts-oper.yang](Cisco-IOS-XR-asr9k-lpts-oper.yang) +[Cisco-IOS-XR-asr9k-netflow-oper-sub1.yang](Cisco-IOS-XR-asr9k-netflow-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-netflow-oper-sub2.yang](Cisco-IOS-XR-asr9k-netflow-oper-sub2.yang) +[Cisco-IOS-XR-asr9k-netflow-oper.yang](Cisco-IOS-XR-asr9k-netflow-oper.yang) +[Cisco-IOS-XR-asr9k-np-oper-sub1.yang](Cisco-IOS-XR-asr9k-np-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-np-oper.yang](Cisco-IOS-XR-asr9k-np-oper.yang) +[Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1.yang](Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-ptp-pd-oper.yang](Cisco-IOS-XR-asr9k-ptp-pd-oper.yang) +[Cisco-IOS-XR-asr9k-qos-oper-sub1.yang](Cisco-IOS-XR-asr9k-qos-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-qos-oper-sub2.yang](Cisco-IOS-XR-asr9k-qos-oper-sub2.yang) +[Cisco-IOS-XR-asr9k-qos-oper.yang](Cisco-IOS-XR-asr9k-qos-oper.yang) +[Cisco-IOS-XR-asr9k-xbar-oper-sub1.yang](Cisco-IOS-XR-asr9k-xbar-oper-sub1.yang) +[Cisco-IOS-XR-asr9k-xbar-oper-sub2.yang](Cisco-IOS-XR-asr9k-xbar-oper-sub2.yang) +[Cisco-IOS-XR-asr9k-xbar-oper-sub3.yang](Cisco-IOS-XR-asr9k-xbar-oper-sub3.yang) +[Cisco-IOS-XR-asr9k-xbar-oper-sub4.yang](Cisco-IOS-XR-asr9k-xbar-oper-sub4.yang) +[Cisco-IOS-XR-asr9k-xbar-oper.yang](Cisco-IOS-XR-asr9k-xbar-oper.yang) +[Cisco-IOS-XR-attestation-agent-ima-oper-sub1.yang](Cisco-IOS-XR-attestation-agent-ima-oper-sub1.yang) +[Cisco-IOS-XR-attestation-agent-ima-oper.yang](Cisco-IOS-XR-attestation-agent-ima-oper.yang) +[Cisco-IOS-XR-attestation-agent-oper-sub1.yang](Cisco-IOS-XR-attestation-agent-oper-sub1.yang) +[Cisco-IOS-XR-attestation-agent-oper.yang](Cisco-IOS-XR-attestation-agent-oper.yang) +[Cisco-IOS-XR-bundlemgr-oper-sub1.yang](Cisco-IOS-XR-bundlemgr-oper-sub1.yang) +[Cisco-IOS-XR-bundlemgr-oper-sub2.yang](Cisco-IOS-XR-bundlemgr-oper-sub2.yang) +[Cisco-IOS-XR-bundlemgr-oper.yang](Cisco-IOS-XR-bundlemgr-oper.yang) +[Cisco-IOS-XR-cdp-oper-sub1.yang](Cisco-IOS-XR-cdp-oper-sub1.yang) +[Cisco-IOS-XR-cdp-oper.yang](Cisco-IOS-XR-cdp-oper.yang) +[Cisco-IOS-XR-clns-isis-oper-sub1.yang](Cisco-IOS-XR-clns-isis-oper-sub1.yang) +[Cisco-IOS-XR-clns-isis-oper-sub2.yang](Cisco-IOS-XR-clns-isis-oper-sub2.yang) +[Cisco-IOS-XR-clns-isis-oper.yang](Cisco-IOS-XR-clns-isis-oper.yang) +[Cisco-IOS-XR-cmproxy-oper-sub1.yang](Cisco-IOS-XR-cmproxy-oper-sub1.yang) +[Cisco-IOS-XR-cmproxy-oper.yang](Cisco-IOS-XR-cmproxy-oper.yang) +[Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1.yang](Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1.yang) +[Cisco-IOS-XR-cnbng-nal-aipc-client-oper.yang](Cisco-IOS-XR-cnbng-nal-aipc-client-oper.yang) +[Cisco-IOS-XR-cnbng-nal-oper-sub1.yang](Cisco-IOS-XR-cnbng-nal-oper-sub1.yang) +[Cisco-IOS-XR-cnbng-nal-oper-sub2.yang](Cisco-IOS-XR-cnbng-nal-oper-sub2.yang) +[Cisco-IOS-XR-cnbng-nal-oper.yang](Cisco-IOS-XR-cnbng-nal-oper.yang) +[Cisco-IOS-XR-coherent-node-oper-sub1.yang](Cisco-IOS-XR-coherent-node-oper-sub1.yang) +[Cisco-IOS-XR-coherent-node-oper.yang](Cisco-IOS-XR-coherent-node-oper.yang) +[Cisco-IOS-XR-coherent-portmode-oper-sub1.yang](Cisco-IOS-XR-coherent-portmode-oper-sub1.yang) +[Cisco-IOS-XR-coherent-portmode-oper.yang](Cisco-IOS-XR-coherent-portmode-oper.yang) +[Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper.yang](Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper.yang) +[Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1.yang](Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1.yang) +[Cisco-IOS-XR-config-cfgmgr-exec-oper.yang](Cisco-IOS-XR-config-cfgmgr-exec-oper.yang) +[Cisco-IOS-XR-config-cfgmgr-oper.yang](Cisco-IOS-XR-config-cfgmgr-oper.yang) +[Cisco-IOS-XR-config-valid-ccv-oper-sub1.yang](Cisco-IOS-XR-config-valid-ccv-oper-sub1.yang) +[Cisco-IOS-XR-config-valid-ccv-oper-sub2.yang](Cisco-IOS-XR-config-valid-ccv-oper-sub2.yang) +[Cisco-IOS-XR-config-valid-ccv-oper.yang](Cisco-IOS-XR-config-valid-ccv-oper.yang) +[Cisco-IOS-XR-controller-cpri-oper-sub1.yang](Cisco-IOS-XR-controller-cpri-oper-sub1.yang) +[Cisco-IOS-XR-controller-cpri-oper.yang](Cisco-IOS-XR-controller-cpri-oper.yang) +[Cisco-IOS-XR-controller-dfb-oper-sub1.yang](Cisco-IOS-XR-controller-dfb-oper-sub1.yang) +[Cisco-IOS-XR-controller-dfb-oper.yang](Cisco-IOS-XR-controller-dfb-oper.yang) +[Cisco-IOS-XR-controller-fc-oper-sub1.yang](Cisco-IOS-XR-controller-fc-oper-sub1.yang) +[Cisco-IOS-XR-controller-fc-oper.yang](Cisco-IOS-XR-controller-fc-oper.yang) +[Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1.yang](Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1.yang) +[Cisco-IOS-XR-controller-ncs1001-ots-och-oper.yang](Cisco-IOS-XR-controller-ncs1001-ots-och-oper.yang) +[Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1.yang](Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1.yang) +[Cisco-IOS-XR-controller-ncs1001-ots-oper.yang](Cisco-IOS-XR-controller-ncs1001-ots-oper.yang) +[Cisco-IOS-XR-controller-och-oper-sub1.yang](Cisco-IOS-XR-controller-och-oper-sub1.yang) +[Cisco-IOS-XR-controller-och-oper.yang](Cisco-IOS-XR-controller-och-oper.yang) +[Cisco-IOS-XR-controller-odg-oper-sub1.yang](Cisco-IOS-XR-controller-odg-oper-sub1.yang) +[Cisco-IOS-XR-controller-odg-oper-sub2.yang](Cisco-IOS-XR-controller-odg-oper-sub2.yang) +[Cisco-IOS-XR-controller-odg-oper.yang](Cisco-IOS-XR-controller-odg-oper.yang) +[Cisco-IOS-XR-controller-odu-oper-sub1.yang](Cisco-IOS-XR-controller-odu-oper-sub1.yang) +[Cisco-IOS-XR-controller-odu-oper.yang](Cisco-IOS-XR-controller-odu-oper.yang) +[Cisco-IOS-XR-controller-oms-oper-sub1.yang](Cisco-IOS-XR-controller-oms-oper-sub1.yang) +[Cisco-IOS-XR-controller-oms-oper.yang](Cisco-IOS-XR-controller-oms-oper.yang) +[Cisco-IOS-XR-controller-optics-oper-sub1.yang](Cisco-IOS-XR-controller-optics-oper-sub1.yang) +[Cisco-IOS-XR-controller-optics-oper.yang](Cisco-IOS-XR-controller-optics-oper.yang) +[Cisco-IOS-XR-controller-osc-oper-sub1.yang](Cisco-IOS-XR-controller-osc-oper-sub1.yang) +[Cisco-IOS-XR-controller-osc-oper.yang](Cisco-IOS-XR-controller-osc-oper.yang) +[Cisco-IOS-XR-controller-ots-och-oper-sub1.yang](Cisco-IOS-XR-controller-ots-och-oper-sub1.yang) +[Cisco-IOS-XR-controller-ots-och-oper.yang](Cisco-IOS-XR-controller-ots-och-oper.yang) +[Cisco-IOS-XR-controller-ots-oper-sub1.yang](Cisco-IOS-XR-controller-ots-oper-sub1.yang) +[Cisco-IOS-XR-controller-ots-oper.yang](Cisco-IOS-XR-controller-ots-oper.yang) +[Cisco-IOS-XR-controller-otu-oper-sub1.yang](Cisco-IOS-XR-controller-otu-oper-sub1.yang) +[Cisco-IOS-XR-controller-otu-oper.yang](Cisco-IOS-XR-controller-otu-oper.yang) +[Cisco-IOS-XR-controller-sonet-oper-sub1.yang](Cisco-IOS-XR-controller-sonet-oper-sub1.yang) +[Cisco-IOS-XR-controller-sonet-oper-sub2.yang](Cisco-IOS-XR-controller-sonet-oper-sub2.yang) +[Cisco-IOS-XR-controller-sonet-oper.yang](Cisco-IOS-XR-controller-sonet-oper.yang) +[Cisco-IOS-XR-controller-t1e1-oper-sub1.yang](Cisco-IOS-XR-controller-t1e1-oper-sub1.yang) +[Cisco-IOS-XR-controller-t1e1-oper.yang](Cisco-IOS-XR-controller-t1e1-oper.yang) +[Cisco-IOS-XR-crypto-cepki-new-oper-sub1.yang](Cisco-IOS-XR-crypto-cepki-new-oper-sub1.yang) +[Cisco-IOS-XR-crypto-cepki-new-oper.yang](Cisco-IOS-XR-crypto-cepki-new-oper.yang) +[Cisco-IOS-XR-crypto-cepki-oper.yang](Cisco-IOS-XR-crypto-cepki-oper.yang) +[Cisco-IOS-XR-crypto-macsec-mka-oper-sub1.yang](Cisco-IOS-XR-crypto-macsec-mka-oper-sub1.yang) +[Cisco-IOS-XR-crypto-macsec-mka-oper.yang](Cisco-IOS-XR-crypto-macsec-mka-oper.yang) +[Cisco-IOS-XR-crypto-macsec-pl-oper-sub1.yang](Cisco-IOS-XR-crypto-macsec-pl-oper-sub1.yang) +[Cisco-IOS-XR-crypto-macsec-pl-oper.yang](Cisco-IOS-XR-crypto-macsec-pl-oper.yang) +[Cisco-IOS-XR-crypto-macsec-secy-oper-sub1.yang](Cisco-IOS-XR-crypto-macsec-secy-oper-sub1.yang) +[Cisco-IOS-XR-crypto-macsec-secy-oper.yang](Cisco-IOS-XR-crypto-macsec-secy-oper.yang) +[Cisco-IOS-XR-crypto-sam-oper-sub1.yang](Cisco-IOS-XR-crypto-sam-oper-sub1.yang) +[Cisco-IOS-XR-crypto-sam-oper.yang](Cisco-IOS-XR-crypto-sam-oper.yang) +[Cisco-IOS-XR-crypto-ssh-oper-sub1.yang](Cisco-IOS-XR-crypto-ssh-oper-sub1.yang) +[Cisco-IOS-XR-crypto-ssh-oper-sub2.yang](Cisco-IOS-XR-crypto-ssh-oper-sub2.yang) +[Cisco-IOS-XR-crypto-ssh-oper.yang](Cisco-IOS-XR-crypto-ssh-oper.yang) +[Cisco-IOS-XR-crypto-svault-oper-sub1.yang](Cisco-IOS-XR-crypto-svault-oper-sub1.yang) +[Cisco-IOS-XR-crypto-svault-oper.yang](Cisco-IOS-XR-crypto-svault-oper.yang) +[Cisco-IOS-XR-csd-oper-sub1.yang](Cisco-IOS-XR-csd-oper-sub1.yang) +[Cisco-IOS-XR-csd-oper.yang](Cisco-IOS-XR-csd-oper.yang) +[Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1.yang](Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1.yang) +[Cisco-IOS-XR-dnx-driver-fabric-plane-oper.yang](Cisco-IOS-XR-dnx-driver-fabric-plane-oper.yang) +[Cisco-IOS-XR-dnx-driver-oper-sub1.yang](Cisco-IOS-XR-dnx-driver-oper-sub1.yang) +[Cisco-IOS-XR-dnx-driver-oper.yang](Cisco-IOS-XR-dnx-driver-oper.yang) +[Cisco-IOS-XR-dnx-netflow-oper-sub1.yang](Cisco-IOS-XR-dnx-netflow-oper-sub1.yang) +[Cisco-IOS-XR-dnx-netflow-oper-sub2.yang](Cisco-IOS-XR-dnx-netflow-oper-sub2.yang) +[Cisco-IOS-XR-dnx-netflow-oper.yang](Cisco-IOS-XR-dnx-netflow-oper.yang) +[Cisco-IOS-XR-dnx-port-mapper-oper-sub1.yang](Cisco-IOS-XR-dnx-port-mapper-oper-sub1.yang) +[Cisco-IOS-XR-dnx-port-mapper-oper.yang](Cisco-IOS-XR-dnx-port-mapper-oper.yang) +[Cisco-IOS-XR-dot1x-oper-sub1.yang](Cisco-IOS-XR-dot1x-oper-sub1.yang) +[Cisco-IOS-XR-dot1x-oper.yang](Cisco-IOS-XR-dot1x-oper.yang) +[Cisco-IOS-XR-dpa-port-mapper-oper-sub1.yang](Cisco-IOS-XR-dpa-port-mapper-oper-sub1.yang) +[Cisco-IOS-XR-dpa-port-mapper-oper.yang](Cisco-IOS-XR-dpa-port-mapper-oper.yang) +[Cisco-IOS-XR-drivers-media-eth-oper-sub1.yang](Cisco-IOS-XR-drivers-media-eth-oper-sub1.yang) +[Cisco-IOS-XR-drivers-media-eth-oper.yang](Cisco-IOS-XR-drivers-media-eth-oper.yang) +[Cisco-IOS-XR-dwdm-ui-oper-sub1.yang](Cisco-IOS-XR-dwdm-ui-oper-sub1.yang) +[Cisco-IOS-XR-dwdm-ui-oper.yang](Cisco-IOS-XR-dwdm-ui-oper.yang) +[Cisco-IOS-XR-eigrp-oper-sub1.yang](Cisco-IOS-XR-eigrp-oper-sub1.yang) +[Cisco-IOS-XR-eigrp-oper.yang](Cisco-IOS-XR-eigrp-oper.yang) +[Cisco-IOS-XR-emon-oper-sub1.yang](Cisco-IOS-XR-emon-oper-sub1.yang) +[Cisco-IOS-XR-emon-oper.yang](Cisco-IOS-XR-emon-oper.yang) +[Cisco-IOS-XR-envmon-oper-sub1.yang](Cisco-IOS-XR-envmon-oper-sub1.yang) +[Cisco-IOS-XR-envmon-oper-sub2.yang](Cisco-IOS-XR-envmon-oper-sub2.yang) +[Cisco-IOS-XR-envmon-oper.yang](Cisco-IOS-XR-envmon-oper.yang) +[Cisco-IOS-XR-erp-oper-sub1.yang](Cisco-IOS-XR-erp-oper-sub1.yang) +[Cisco-IOS-XR-erp-oper.yang](Cisco-IOS-XR-erp-oper.yang) +[Cisco-IOS-XR-es-acl-oper-sub1.yang](Cisco-IOS-XR-es-acl-oper-sub1.yang) +[Cisco-IOS-XR-es-acl-oper.yang](Cisco-IOS-XR-es-acl-oper.yang) +[Cisco-IOS-XR-ethernet-cfm-oper-sub1.yang](Cisco-IOS-XR-ethernet-cfm-oper-sub1.yang) +[Cisco-IOS-XR-ethernet-cfm-oper-sub2.yang](Cisco-IOS-XR-ethernet-cfm-oper-sub2.yang) +[Cisco-IOS-XR-ethernet-cfm-oper-sub3.yang](Cisco-IOS-XR-ethernet-cfm-oper-sub3.yang) +[Cisco-IOS-XR-ethernet-cfm-oper-sub4.yang](Cisco-IOS-XR-ethernet-cfm-oper-sub4.yang) +[Cisco-IOS-XR-ethernet-cfm-oper.yang](Cisco-IOS-XR-ethernet-cfm-oper.yang) +[Cisco-IOS-XR-ethernet-link-oam-oper-sub1.yang](Cisco-IOS-XR-ethernet-link-oam-oper-sub1.yang) +[Cisco-IOS-XR-ethernet-link-oam-oper.yang](Cisco-IOS-XR-ethernet-link-oam-oper.yang) +[Cisco-IOS-XR-ethernet-lldp-oper-sub1.yang](Cisco-IOS-XR-ethernet-lldp-oper-sub1.yang) +[Cisco-IOS-XR-ethernet-lldp-oper-sub2.yang](Cisco-IOS-XR-ethernet-lldp-oper-sub2.yang) +[Cisco-IOS-XR-ethernet-lldp-oper.yang](Cisco-IOS-XR-ethernet-lldp-oper.yang) +[Cisco-IOS-XR-ethernet-loopback-oper-sub1.yang](Cisco-IOS-XR-ethernet-loopback-oper-sub1.yang) +[Cisco-IOS-XR-ethernet-loopback-oper.yang](Cisco-IOS-XR-ethernet-loopback-oper.yang) +[Cisco-IOS-XR-ethernet-sat-oper-sub1.yang](Cisco-IOS-XR-ethernet-sat-oper-sub1.yang) +[Cisco-IOS-XR-ethernet-sat-oper.yang](Cisco-IOS-XR-ethernet-sat-oper.yang) +[Cisco-IOS-XR-ethernet-udld-oper-sub1.yang](Cisco-IOS-XR-ethernet-udld-oper-sub1.yang) +[Cisco-IOS-XR-ethernet-udld-oper.yang](Cisco-IOS-XR-ethernet-udld-oper.yang) +[Cisco-IOS-XR-event-manager-policy-map-oper-sub1.yang](Cisco-IOS-XR-event-manager-policy-map-oper-sub1.yang) +[Cisco-IOS-XR-event-manager-policy-map-oper.yang](Cisco-IOS-XR-event-manager-policy-map-oper.yang) +[Cisco-IOS-XR-evpn-oper-sub1.yang](Cisco-IOS-XR-evpn-oper-sub1.yang) +[Cisco-IOS-XR-evpn-oper.yang](Cisco-IOS-XR-evpn-oper.yang) +[Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1.yang](Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1.yang) +[Cisco-IOS-XR-fabric-fgid-stats-8000-oper.yang](Cisco-IOS-XR-fabric-fgid-stats-8000-oper.yang) +[Cisco-IOS-XR-fabric-fsdb-server-oper-sub1.yang](Cisco-IOS-XR-fabric-fsdb-server-oper-sub1.yang) +[Cisco-IOS-XR-fabric-fsdb-server-oper.yang](Cisco-IOS-XR-fabric-fsdb-server-oper.yang) +[Cisco-IOS-XR-fabric-plane-health-oper-sub1.yang](Cisco-IOS-XR-fabric-plane-health-oper-sub1.yang) +[Cisco-IOS-XR-fabric-plane-health-oper.yang](Cisco-IOS-XR-fabric-plane-health-oper.yang) +[Cisco-IOS-XR-feature-agent-oper-sub1.yang](Cisco-IOS-XR-feature-agent-oper-sub1.yang) +[Cisco-IOS-XR-feature-agent-oper.yang](Cisco-IOS-XR-feature-agent-oper.yang) +[Cisco-IOS-XR-fia-internal-tcam-oper-sub1.yang](Cisco-IOS-XR-fia-internal-tcam-oper-sub1.yang) +[Cisco-IOS-XR-fia-internal-tcam-oper.yang](Cisco-IOS-XR-fia-internal-tcam-oper.yang) +[Cisco-IOS-XR-fib-common-oper-sub1.yang](Cisco-IOS-XR-fib-common-oper-sub1.yang) +[Cisco-IOS-XR-fib-common-oper-sub2.yang](Cisco-IOS-XR-fib-common-oper-sub2.yang) +[Cisco-IOS-XR-fib-common-oper-sub3.yang](Cisco-IOS-XR-fib-common-oper-sub3.yang) +[Cisco-IOS-XR-fib-common-oper-sub4.yang](Cisco-IOS-XR-fib-common-oper-sub4.yang) +[Cisco-IOS-XR-fib-common-oper-sub5.yang](Cisco-IOS-XR-fib-common-oper-sub5.yang) +[Cisco-IOS-XR-fib-common-oper-sub6.yang](Cisco-IOS-XR-fib-common-oper-sub6.yang) +[Cisco-IOS-XR-fib-common-oper-sub7.yang](Cisco-IOS-XR-fib-common-oper-sub7.yang) +[Cisco-IOS-XR-fib-common-oper.yang](Cisco-IOS-XR-fib-common-oper.yang) +[Cisco-IOS-XR-filesysinv-show-oper-sub1.yang](Cisco-IOS-XR-filesysinv-show-oper-sub1.yang) +[Cisco-IOS-XR-filesysinv-show-oper.yang](Cisco-IOS-XR-filesysinv-show-oper.yang) +[Cisco-IOS-XR-flow-oper-sub1.yang](Cisco-IOS-XR-flow-oper-sub1.yang) +[Cisco-IOS-XR-flow-oper-sub2.yang](Cisco-IOS-XR-flow-oper-sub2.yang) +[Cisco-IOS-XR-flow-oper.yang](Cisco-IOS-XR-flow-oper.yang) +[Cisco-IOS-XR-flowspec-oper-sub1.yang](Cisco-IOS-XR-flowspec-oper-sub1.yang) +[Cisco-IOS-XR-flowspec-oper.yang](Cisco-IOS-XR-flowspec-oper.yang) +[Cisco-IOS-XR-fpmgr-oper-sub1.yang](Cisco-IOS-XR-fpmgr-oper-sub1.yang) +[Cisco-IOS-XR-fpmgr-oper.yang](Cisco-IOS-XR-fpmgr-oper.yang) +[Cisco-IOS-XR-freqsync-oper-sub1.yang](Cisco-IOS-XR-freqsync-oper-sub1.yang) +[Cisco-IOS-XR-freqsync-oper.yang](Cisco-IOS-XR-freqsync-oper.yang) +[Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1.yang](Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1.yang) +[Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2.yang](Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2.yang) +[Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper.yang](Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper.yang) +[Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1.yang](Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1.yang) +[Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper.yang](Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper.yang) +[Cisco-IOS-XR-gnss-oper-sub1.yang](Cisco-IOS-XR-gnss-oper-sub1.yang) +[Cisco-IOS-XR-gnss-oper.yang](Cisco-IOS-XR-gnss-oper.yang) +[Cisco-IOS-XR-grpc-service-stats-oper-sub1.yang](Cisco-IOS-XR-grpc-service-stats-oper-sub1.yang) +[Cisco-IOS-XR-grpc-service-stats-oper.yang](Cisco-IOS-XR-grpc-service-stats-oper.yang) +[Cisco-IOS-XR-ha-eem-policy-oper-sub1.yang](Cisco-IOS-XR-ha-eem-policy-oper-sub1.yang) +[Cisco-IOS-XR-ha-eem-policy-oper.yang](Cisco-IOS-XR-ha-eem-policy-oper.yang) +[Cisco-IOS-XR-healthcheck-oper-sub1.yang](Cisco-IOS-XR-healthcheck-oper-sub1.yang) +[Cisco-IOS-XR-healthcheck-oper-sub2.yang](Cisco-IOS-XR-healthcheck-oper-sub2.yang) +[Cisco-IOS-XR-healthcheck-oper.yang](Cisco-IOS-XR-healthcheck-oper.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub1.yang](Cisco-IOS-XR-icpe-infra-oper-sub1.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub10.yang](Cisco-IOS-XR-icpe-infra-oper-sub10.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub11.yang](Cisco-IOS-XR-icpe-infra-oper-sub11.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub12.yang](Cisco-IOS-XR-icpe-infra-oper-sub12.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub2.yang](Cisco-IOS-XR-icpe-infra-oper-sub2.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub3.yang](Cisco-IOS-XR-icpe-infra-oper-sub3.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub4.yang](Cisco-IOS-XR-icpe-infra-oper-sub4.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub5.yang](Cisco-IOS-XR-icpe-infra-oper-sub5.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub6.yang](Cisco-IOS-XR-icpe-infra-oper-sub6.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub7.yang](Cisco-IOS-XR-icpe-infra-oper-sub7.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub8.yang](Cisco-IOS-XR-icpe-infra-oper-sub8.yang) +[Cisco-IOS-XR-icpe-infra-oper-sub9.yang](Cisco-IOS-XR-icpe-infra-oper-sub9.yang) +[Cisco-IOS-XR-icpe-infra-oper.yang](Cisco-IOS-XR-icpe-infra-oper.yang) +[Cisco-IOS-XR-icpe-sdacp-oper-sub1.yang](Cisco-IOS-XR-icpe-sdacp-oper-sub1.yang) +[Cisco-IOS-XR-icpe-sdacp-oper-sub2.yang](Cisco-IOS-XR-icpe-sdacp-oper-sub2.yang) +[Cisco-IOS-XR-icpe-sdacp-oper-sub3.yang](Cisco-IOS-XR-icpe-sdacp-oper-sub3.yang) +[Cisco-IOS-XR-icpe-sdacp-oper.yang](Cisco-IOS-XR-icpe-sdacp-oper.yang) +[Cisco-IOS-XR-iedge4710-oper-sub1.yang](Cisco-IOS-XR-iedge4710-oper-sub1.yang) +[Cisco-IOS-XR-iedge4710-oper-sub2.yang](Cisco-IOS-XR-iedge4710-oper-sub2.yang) +[Cisco-IOS-XR-iedge4710-oper.yang](Cisco-IOS-XR-iedge4710-oper.yang) +[Cisco-IOS-XR-ifmgr-oper-sub1.yang](Cisco-IOS-XR-ifmgr-oper-sub1.yang) +[Cisco-IOS-XR-ifmgr-oper-sub2.yang](Cisco-IOS-XR-ifmgr-oper-sub2.yang) +[Cisco-IOS-XR-ifmgr-oper.yang](Cisco-IOS-XR-ifmgr-oper.yang) +[Cisco-IOS-XR-igmp-oper-sub1.yang](Cisco-IOS-XR-igmp-oper-sub1.yang) +[Cisco-IOS-XR-igmp-oper.yang](Cisco-IOS-XR-igmp-oper.yang) +[Cisco-IOS-XR-igp-topodb-oper-sub1.yang](Cisco-IOS-XR-igp-topodb-oper-sub1.yang) +[Cisco-IOS-XR-igp-topodb-oper.yang](Cisco-IOS-XR-igp-topodb-oper.yang) +[Cisco-IOS-XR-ikev2-oper-sub1.yang](Cisco-IOS-XR-ikev2-oper-sub1.yang) +[Cisco-IOS-XR-ikev2-oper.yang](Cisco-IOS-XR-ikev2-oper.yang) +[Cisco-IOS-XR-infra-alarm-logger-oper-sub1.yang](Cisco-IOS-XR-infra-alarm-logger-oper-sub1.yang) +[Cisco-IOS-XR-infra-alarm-logger-oper.yang](Cisco-IOS-XR-infra-alarm-logger-oper.yang) +[Cisco-IOS-XR-infra-correlator-oper-sub1.yang](Cisco-IOS-XR-infra-correlator-oper-sub1.yang) +[Cisco-IOS-XR-infra-correlator-oper.yang](Cisco-IOS-XR-infra-correlator-oper.yang) +[Cisco-IOS-XR-infra-fti-oper-sub1.yang](Cisco-IOS-XR-infra-fti-oper-sub1.yang) +[Cisco-IOS-XR-infra-fti-oper.yang](Cisco-IOS-XR-infra-fti-oper.yang) +[Cisco-IOS-XR-infra-objmgr-oper-sub1.yang](Cisco-IOS-XR-infra-objmgr-oper-sub1.yang) +[Cisco-IOS-XR-infra-objmgr-oper.yang](Cisco-IOS-XR-infra-objmgr-oper.yang) +[Cisco-IOS-XR-infra-policymgr-oper.yang](Cisco-IOS-XR-infra-policymgr-oper.yang) +[Cisco-IOS-XR-infra-rcmd-oper-sub1.yang](Cisco-IOS-XR-infra-rcmd-oper-sub1.yang) +[Cisco-IOS-XR-infra-rcmd-oper.yang](Cisco-IOS-XR-infra-rcmd-oper.yang) +[Cisco-IOS-XR-infra-rmf-oper-sub1.yang](Cisco-IOS-XR-infra-rmf-oper-sub1.yang) +[Cisco-IOS-XR-infra-rmf-oper.yang](Cisco-IOS-XR-infra-rmf-oper.yang) +[Cisco-IOS-XR-infra-rsi-oper-sub1.yang](Cisco-IOS-XR-infra-rsi-oper-sub1.yang) +[Cisco-IOS-XR-infra-rsi-oper-sub2.yang](Cisco-IOS-XR-infra-rsi-oper-sub2.yang) +[Cisco-IOS-XR-infra-rsi-oper.yang](Cisco-IOS-XR-infra-rsi-oper.yang) +[Cisco-IOS-XR-infra-script-mgmt-oper-sub1.yang](Cisco-IOS-XR-infra-script-mgmt-oper-sub1.yang) +[Cisco-IOS-XR-infra-script-mgmt-oper.yang](Cisco-IOS-XR-infra-script-mgmt-oper.yang) +[Cisco-IOS-XR-infra-serg-oper-sub1.yang](Cisco-IOS-XR-infra-serg-oper-sub1.yang) +[Cisco-IOS-XR-infra-serg-oper-sub2.yang](Cisco-IOS-XR-infra-serg-oper-sub2.yang) +[Cisco-IOS-XR-infra-serg-oper.yang](Cisco-IOS-XR-infra-serg-oper.yang) +[Cisco-IOS-XR-infra-sla-oper.yang](Cisco-IOS-XR-infra-sla-oper.yang) +[Cisco-IOS-XR-infra-smartlicense-oper-sub1.yang](Cisco-IOS-XR-infra-smartlicense-oper-sub1.yang) +[Cisco-IOS-XR-infra-smartlicense-oper.yang](Cisco-IOS-XR-infra-smartlicense-oper.yang) +[Cisco-IOS-XR-infra-statsd-oper-sub1.yang](Cisco-IOS-XR-infra-statsd-oper-sub1.yang) +[Cisco-IOS-XR-infra-statsd-oper.yang](Cisco-IOS-XR-infra-statsd-oper.yang) +[Cisco-IOS-XR-infra-syslog-oper-sub1.yang](Cisco-IOS-XR-infra-syslog-oper-sub1.yang) +[Cisco-IOS-XR-infra-syslog-oper.yang](Cisco-IOS-XR-infra-syslog-oper.yang) +[Cisco-IOS-XR-infra-tc-oper-sub1.yang](Cisco-IOS-XR-infra-tc-oper-sub1.yang) +[Cisco-IOS-XR-infra-tc-oper.yang](Cisco-IOS-XR-infra-tc-oper.yang) +[Cisco-IOS-XR-infra-xtc-agent-oper-sub1.yang](Cisco-IOS-XR-infra-xtc-agent-oper-sub1.yang) +[Cisco-IOS-XR-infra-xtc-agent-oper-sub2.yang](Cisco-IOS-XR-infra-xtc-agent-oper-sub2.yang) +[Cisco-IOS-XR-infra-xtc-agent-oper-sub3.yang](Cisco-IOS-XR-infra-xtc-agent-oper-sub3.yang) +[Cisco-IOS-XR-infra-xtc-agent-oper.yang](Cisco-IOS-XR-infra-xtc-agent-oper.yang) +[Cisco-IOS-XR-infra-xtc-oper-sub1.yang](Cisco-IOS-XR-infra-xtc-oper-sub1.yang) +[Cisco-IOS-XR-infra-xtc-oper-sub2.yang](Cisco-IOS-XR-infra-xtc-oper-sub2.yang) +[Cisco-IOS-XR-infra-xtc-oper.yang](Cisco-IOS-XR-infra-xtc-oper.yang) +[Cisco-IOS-XR-install-augmented-oper-sub1.yang](Cisco-IOS-XR-install-augmented-oper-sub1.yang) +[Cisco-IOS-XR-install-augmented-oper-sub2.yang](Cisco-IOS-XR-install-augmented-oper-sub2.yang) +[Cisco-IOS-XR-install-augmented-oper.yang](Cisco-IOS-XR-install-augmented-oper.yang) +[Cisco-IOS-XR-install-oper-sub1.yang](Cisco-IOS-XR-install-oper-sub1.yang) +[Cisco-IOS-XR-install-oper.yang](Cisco-IOS-XR-install-oper.yang) +[Cisco-IOS-XR-interface-cem-oper-sub1.yang](Cisco-IOS-XR-interface-cem-oper-sub1.yang) +[Cisco-IOS-XR-interface-cem-oper-sub2.yang](Cisco-IOS-XR-interface-cem-oper-sub2.yang) +[Cisco-IOS-XR-interface-cem-oper.yang](Cisco-IOS-XR-interface-cem-oper.yang) +[Cisco-IOS-XR-invmgr-diag-oper-sub1.yang](Cisco-IOS-XR-invmgr-diag-oper-sub1.yang) +[Cisco-IOS-XR-invmgr-diag-oper.yang](Cisco-IOS-XR-invmgr-diag-oper.yang) +[Cisco-IOS-XR-invmgr-oper-sub1.yang](Cisco-IOS-XR-invmgr-oper-sub1.yang) +[Cisco-IOS-XR-invmgr-oper-sub2.yang](Cisco-IOS-XR-invmgr-oper-sub2.yang) +[Cisco-IOS-XR-invmgr-oper-sub3.yang](Cisco-IOS-XR-invmgr-oper-sub3.yang) +[Cisco-IOS-XR-invmgr-oper-sub4.yang](Cisco-IOS-XR-invmgr-oper-sub4.yang) +[Cisco-IOS-XR-invmgr-oper.yang](Cisco-IOS-XR-invmgr-oper.yang) +[Cisco-IOS-XR-iosxrwbd-qos-oper-sub1.yang](Cisco-IOS-XR-iosxrwbd-qos-oper-sub1.yang) +[Cisco-IOS-XR-iosxrwbd-qos-oper-sub2.yang](Cisco-IOS-XR-iosxrwbd-qos-oper-sub2.yang) +[Cisco-IOS-XR-iosxrwbd-qos-oper-sub3.yang](Cisco-IOS-XR-iosxrwbd-qos-oper-sub3.yang) +[Cisco-IOS-XR-iosxrwbd-qos-oper.yang](Cisco-IOS-XR-iosxrwbd-qos-oper.yang) +[Cisco-IOS-XR-ip-bfd-oper-sub1.yang](Cisco-IOS-XR-ip-bfd-oper-sub1.yang) +[Cisco-IOS-XR-ip-bfd-oper.yang](Cisco-IOS-XR-ip-bfd-oper.yang) +[Cisco-IOS-XR-ip-daps-oper-sub1.yang](Cisco-IOS-XR-ip-daps-oper-sub1.yang) +[Cisco-IOS-XR-ip-daps-oper.yang](Cisco-IOS-XR-ip-daps-oper.yang) +[Cisco-IOS-XR-ip-domain-oper-sub1.yang](Cisco-IOS-XR-ip-domain-oper-sub1.yang) +[Cisco-IOS-XR-ip-domain-oper.yang](Cisco-IOS-XR-ip-domain-oper.yang) +[Cisco-IOS-XR-ip-iarm-v4-oper-sub1.yang](Cisco-IOS-XR-ip-iarm-v4-oper-sub1.yang) +[Cisco-IOS-XR-ip-iarm-v4-oper.yang](Cisco-IOS-XR-ip-iarm-v4-oper.yang) +[Cisco-IOS-XR-ip-iarm-v6-oper-sub1.yang](Cisco-IOS-XR-ip-iarm-v6-oper-sub1.yang) +[Cisco-IOS-XR-ip-iarm-v6-oper.yang](Cisco-IOS-XR-ip-iarm-v6-oper.yang) +[Cisco-IOS-XR-ip-iep-oper-sub1.yang](Cisco-IOS-XR-ip-iep-oper-sub1.yang) +[Cisco-IOS-XR-ip-iep-oper.yang](Cisco-IOS-XR-ip-iep-oper.yang) +[Cisco-IOS-XR-ip-mobileip-oper-sub1.yang](Cisco-IOS-XR-ip-mobileip-oper-sub1.yang) +[Cisco-IOS-XR-ip-mobileip-oper.yang](Cisco-IOS-XR-ip-mobileip-oper.yang) +[Cisco-IOS-XR-ip-ntp-admin-oper-sub1.yang](Cisco-IOS-XR-ip-ntp-admin-oper-sub1.yang) +[Cisco-IOS-XR-ip-ntp-admin-oper.yang](Cisco-IOS-XR-ip-ntp-admin-oper.yang) +[Cisco-IOS-XR-ip-ntp-oper-sub1.yang](Cisco-IOS-XR-ip-ntp-oper-sub1.yang) +[Cisco-IOS-XR-ip-ntp-oper.yang](Cisco-IOS-XR-ip-ntp-oper.yang) +[Cisco-IOS-XR-ip-pfilter-oper-sub1.yang](Cisco-IOS-XR-ip-pfilter-oper-sub1.yang) +[Cisco-IOS-XR-ip-pfilter-oper.yang](Cisco-IOS-XR-ip-pfilter-oper.yang) +[Cisco-IOS-XR-ip-rib-gribi-oper-sub1.yang](Cisco-IOS-XR-ip-rib-gribi-oper-sub1.yang) +[Cisco-IOS-XR-ip-rib-gribi-oper.yang](Cisco-IOS-XR-ip-rib-gribi-oper.yang) +[Cisco-IOS-XR-ip-rib-ipv4-oper-sub1.yang](Cisco-IOS-XR-ip-rib-ipv4-oper-sub1.yang) +[Cisco-IOS-XR-ip-rib-ipv4-oper.yang](Cisco-IOS-XR-ip-rib-ipv4-oper.yang) +[Cisco-IOS-XR-ip-rib-ipv6-oper-sub1.yang](Cisco-IOS-XR-ip-rib-ipv6-oper-sub1.yang) +[Cisco-IOS-XR-ip-rib-ipv6-oper-sub2.yang](Cisco-IOS-XR-ip-rib-ipv6-oper-sub2.yang) +[Cisco-IOS-XR-ip-rib-ipv6-oper.yang](Cisco-IOS-XR-ip-rib-ipv6-oper.yang) +[Cisco-IOS-XR-ip-rip-oper-sub1.yang](Cisco-IOS-XR-ip-rip-oper-sub1.yang) +[Cisco-IOS-XR-ip-rip-oper.yang](Cisco-IOS-XR-ip-rip-oper.yang) +[Cisco-IOS-XR-ip-rsvp-oper-sub1.yang](Cisco-IOS-XR-ip-rsvp-oper-sub1.yang) +[Cisco-IOS-XR-ip-rsvp-oper.yang](Cisco-IOS-XR-ip-rsvp-oper.yang) +[Cisco-IOS-XR-ip-sbfd-oper-sub1.yang](Cisco-IOS-XR-ip-sbfd-oper-sub1.yang) +[Cisco-IOS-XR-ip-sbfd-oper.yang](Cisco-IOS-XR-ip-sbfd-oper.yang) +[Cisco-IOS-XR-ip-static-ipv4-oper-sub1.yang](Cisco-IOS-XR-ip-static-ipv4-oper-sub1.yang) +[Cisco-IOS-XR-ip-static-ipv4-oper.yang](Cisco-IOS-XR-ip-static-ipv4-oper.yang) +[Cisco-IOS-XR-ip-static-ipv6-oper-sub1.yang](Cisco-IOS-XR-ip-static-ipv6-oper-sub1.yang) +[Cisco-IOS-XR-ip-static-ipv6-oper.yang](Cisco-IOS-XR-ip-static-ipv6-oper.yang) +[Cisco-IOS-XR-ip-tcp-oper-sub1.yang](Cisco-IOS-XR-ip-tcp-oper-sub1.yang) +[Cisco-IOS-XR-ip-tcp-oper-sub2.yang](Cisco-IOS-XR-ip-tcp-oper-sub2.yang) +[Cisco-IOS-XR-ip-tcp-oper-sub3.yang](Cisco-IOS-XR-ip-tcp-oper-sub3.yang) +[Cisco-IOS-XR-ip-tcp-oper-sub4.yang](Cisco-IOS-XR-ip-tcp-oper-sub4.yang) +[Cisco-IOS-XR-ip-tcp-oper-sub5.yang](Cisco-IOS-XR-ip-tcp-oper-sub5.yang) +[Cisco-IOS-XR-ip-tcp-oper.yang](Cisco-IOS-XR-ip-tcp-oper.yang) +[Cisco-IOS-XR-ip-udp-oper-sub1.yang](Cisco-IOS-XR-ip-udp-oper-sub1.yang) +[Cisco-IOS-XR-ip-udp-oper-sub2.yang](Cisco-IOS-XR-ip-udp-oper-sub2.yang) +[Cisco-IOS-XR-ip-udp-oper-sub3.yang](Cisco-IOS-XR-ip-udp-oper-sub3.yang) +[Cisco-IOS-XR-ip-udp-oper-sub4.yang](Cisco-IOS-XR-ip-udp-oper-sub4.yang) +[Cisco-IOS-XR-ip-udp-oper.yang](Cisco-IOS-XR-ip-udp-oper.yang) +[Cisco-IOS-XR-ipsec-xr-oper-sub1.yang](Cisco-IOS-XR-ipsec-xr-oper-sub1.yang) +[Cisco-IOS-XR-ipsec-xr-oper.yang](Cisco-IOS-XR-ipsec-xr-oper.yang) +[Cisco-IOS-XR-ipv4-acl-oper-sub1.yang](Cisco-IOS-XR-ipv4-acl-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-acl-oper.yang](Cisco-IOS-XR-ipv4-acl-oper.yang) +[Cisco-IOS-XR-ipv4-arp-oper-sub1.yang](Cisco-IOS-XR-ipv4-arp-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-arp-oper-sub2.yang](Cisco-IOS-XR-ipv4-arp-oper-sub2.yang) +[Cisco-IOS-XR-ipv4-arp-oper-sub3.yang](Cisco-IOS-XR-ipv4-arp-oper-sub3.yang) +[Cisco-IOS-XR-ipv4-arp-oper.yang](Cisco-IOS-XR-ipv4-arp-oper.yang) +[Cisco-IOS-XR-ipv4-autorp-oper-sub1.yang](Cisco-IOS-XR-ipv4-autorp-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-autorp-oper-sub2.yang](Cisco-IOS-XR-ipv4-autorp-oper-sub2.yang) +[Cisco-IOS-XR-ipv4-autorp-oper.yang](Cisco-IOS-XR-ipv4-autorp-oper.yang) +[Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1.yang](Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-bgp-oc-oper.yang](Cisco-IOS-XR-ipv4-bgp-oc-oper.yang) +[Cisco-IOS-XR-ipv4-bgp-oper-sub1.yang](Cisco-IOS-XR-ipv4-bgp-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-bgp-oper.yang](Cisco-IOS-XR-ipv4-bgp-oper.yang) +[Cisco-IOS-XR-ipv4-dhcpd-oper-sub1.yang](Cisco-IOS-XR-ipv4-dhcpd-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-dhcpd-oper-sub2.yang](Cisco-IOS-XR-ipv4-dhcpd-oper-sub2.yang) +[Cisco-IOS-XR-ipv4-dhcpd-oper.yang](Cisco-IOS-XR-ipv4-dhcpd-oper.yang) +[Cisco-IOS-XR-ipv4-hsrp-oper-sub1.yang](Cisco-IOS-XR-ipv4-hsrp-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-hsrp-oper.yang](Cisco-IOS-XR-ipv4-hsrp-oper.yang) +[Cisco-IOS-XR-ipv4-igmp-oper-sub1.yang](Cisco-IOS-XR-ipv4-igmp-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-igmp-oper.yang](Cisco-IOS-XR-ipv4-igmp-oper.yang) +[Cisco-IOS-XR-ipv4-io-oper-sub1.yang](Cisco-IOS-XR-ipv4-io-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-io-oper-sub2.yang](Cisco-IOS-XR-ipv4-io-oper-sub2.yang) +[Cisco-IOS-XR-ipv4-io-oper.yang](Cisco-IOS-XR-ipv4-io-oper.yang) +[Cisco-IOS-XR-ipv4-ma-oper-sub1.yang](Cisco-IOS-XR-ipv4-ma-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-ma-oper.yang](Cisco-IOS-XR-ipv4-ma-oper.yang) +[Cisco-IOS-XR-ipv4-ospf-oper-sub1.yang](Cisco-IOS-XR-ipv4-ospf-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-ospf-oper-sub2.yang](Cisco-IOS-XR-ipv4-ospf-oper-sub2.yang) +[Cisco-IOS-XR-ipv4-ospf-oper-sub3.yang](Cisco-IOS-XR-ipv4-ospf-oper-sub3.yang) +[Cisco-IOS-XR-ipv4-ospf-oper.yang](Cisco-IOS-XR-ipv4-ospf-oper.yang) +[Cisco-IOS-XR-ipv4-pim-oper-sub1.yang](Cisco-IOS-XR-ipv4-pim-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-pim-oper-sub2.yang](Cisco-IOS-XR-ipv4-pim-oper-sub2.yang) +[Cisco-IOS-XR-ipv4-pim-oper.yang](Cisco-IOS-XR-ipv4-pim-oper.yang) +[Cisco-IOS-XR-ipv4-smiap-oper-sub1.yang](Cisco-IOS-XR-ipv4-smiap-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-smiap-oper.yang](Cisco-IOS-XR-ipv4-smiap-oper.yang) +[Cisco-IOS-XR-ipv4-vrrp-oper-sub1.yang](Cisco-IOS-XR-ipv4-vrrp-oper-sub1.yang) +[Cisco-IOS-XR-ipv4-vrrp-oper.yang](Cisco-IOS-XR-ipv4-vrrp-oper.yang) +[Cisco-IOS-XR-ipv6-acl-oper-sub1.yang](Cisco-IOS-XR-ipv6-acl-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-acl-oper.yang](Cisco-IOS-XR-ipv6-acl-oper.yang) +[Cisco-IOS-XR-ipv6-io-oper-sub1.yang](Cisco-IOS-XR-ipv6-io-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-io-oper.yang](Cisco-IOS-XR-ipv6-io-oper.yang) +[Cisco-IOS-XR-ipv6-ma-oper-sub1.yang](Cisco-IOS-XR-ipv6-ma-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-ma-oper.yang](Cisco-IOS-XR-ipv6-ma-oper.yang) +[Cisco-IOS-XR-ipv6-nd-oper-sub1.yang](Cisco-IOS-XR-ipv6-nd-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-nd-oper.yang](Cisco-IOS-XR-ipv6-nd-oper.yang) +[Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1.yang](Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper.yang](Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper.yang) +[Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1.yang](Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-new-dhcpv6d-oper.yang](Cisco-IOS-XR-ipv6-new-dhcpv6d-oper.yang) +[Cisco-IOS-XR-ipv6-ospfv3-oper-sub1.yang](Cisco-IOS-XR-ipv6-ospfv3-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-ospfv3-oper.yang](Cisco-IOS-XR-ipv6-ospfv3-oper.yang) +[Cisco-IOS-XR-ipv6-smiap-oper-sub1.yang](Cisco-IOS-XR-ipv6-smiap-oper-sub1.yang) +[Cisco-IOS-XR-ipv6-smiap-oper.yang](Cisco-IOS-XR-ipv6-smiap-oper.yang) +[Cisco-IOS-XR-issu-oper-sub1.yang](Cisco-IOS-XR-issu-oper-sub1.yang) +[Cisco-IOS-XR-issu-oper.yang](Cisco-IOS-XR-issu-oper.yang) +[Cisco-IOS-XR-keyring-oper-sub1.yang](Cisco-IOS-XR-keyring-oper-sub1.yang) +[Cisco-IOS-XR-keyring-oper.yang](Cisco-IOS-XR-keyring-oper.yang) +[Cisco-IOS-XR-l2-eth-infra-oper-sub1.yang](Cisco-IOS-XR-l2-eth-infra-oper-sub1.yang) +[Cisco-IOS-XR-l2-eth-infra-oper-sub2.yang](Cisco-IOS-XR-l2-eth-infra-oper-sub2.yang) +[Cisco-IOS-XR-l2-eth-infra-oper-sub3.yang](Cisco-IOS-XR-l2-eth-infra-oper-sub3.yang) +[Cisco-IOS-XR-l2-eth-infra-oper.yang](Cisco-IOS-XR-l2-eth-infra-oper.yang) +[Cisco-IOS-XR-l2-snoop-oper-sub1.yang](Cisco-IOS-XR-l2-snoop-oper-sub1.yang) +[Cisco-IOS-XR-l2-snoop-oper.yang](Cisco-IOS-XR-l2-snoop-oper.yang) +[Cisco-IOS-XR-l2rib-oper-sub1.yang](Cisco-IOS-XR-l2rib-oper-sub1.yang) +[Cisco-IOS-XR-l2rib-oper.yang](Cisco-IOS-XR-l2rib-oper.yang) +[Cisco-IOS-XR-l2vpn-oper-sub1.yang](Cisco-IOS-XR-l2vpn-oper-sub1.yang) +[Cisco-IOS-XR-l2vpn-oper-sub2.yang](Cisco-IOS-XR-l2vpn-oper-sub2.yang) +[Cisco-IOS-XR-l2vpn-oper-sub3.yang](Cisco-IOS-XR-l2vpn-oper-sub3.yang) +[Cisco-IOS-XR-l2vpn-oper-sub4.yang](Cisco-IOS-XR-l2vpn-oper-sub4.yang) +[Cisco-IOS-XR-l2vpn-oper-sub5.yang](Cisco-IOS-XR-l2vpn-oper-sub5.yang) +[Cisco-IOS-XR-l2vpn-oper.yang](Cisco-IOS-XR-l2vpn-oper.yang) +[Cisco-IOS-XR-lcmode-oper-sub1.yang](Cisco-IOS-XR-lcmode-oper-sub1.yang) +[Cisco-IOS-XR-lcmode-oper.yang](Cisco-IOS-XR-lcmode-oper.yang) +[Cisco-IOS-XR-ledmgr-oper-sub1.yang](Cisco-IOS-XR-ledmgr-oper-sub1.yang) +[Cisco-IOS-XR-ledmgr-oper.yang](Cisco-IOS-XR-ledmgr-oper.yang) +[Cisco-IOS-XR-lib-keychain-oper-sub1.yang](Cisco-IOS-XR-lib-keychain-oper-sub1.yang) +[Cisco-IOS-XR-lib-keychain-oper.yang](Cisco-IOS-XR-lib-keychain-oper.yang) +[Cisco-IOS-XR-lib-mpp-oper-sub1.yang](Cisco-IOS-XR-lib-mpp-oper-sub1.yang) +[Cisco-IOS-XR-lib-mpp-oper.yang](Cisco-IOS-XR-lib-mpp-oper.yang) +[Cisco-IOS-XR-lib-type6-server-oper-sub1.yang](Cisco-IOS-XR-lib-type6-server-oper-sub1.yang) +[Cisco-IOS-XR-lib-type6-server-oper.yang](Cisco-IOS-XR-lib-type6-server-oper.yang) +[Cisco-IOS-XR-linux-os-heap-summary-oper-sub1.yang](Cisco-IOS-XR-linux-os-heap-summary-oper-sub1.yang) +[Cisco-IOS-XR-linux-os-heap-summary-oper.yang](Cisco-IOS-XR-linux-os-heap-summary-oper.yang) +[Cisco-IOS-XR-linux-os-reboot-history-oper-sub1.yang](Cisco-IOS-XR-linux-os-reboot-history-oper-sub1.yang) +[Cisco-IOS-XR-linux-os-reboot-history-oper.yang](Cisco-IOS-XR-linux-os-reboot-history-oper.yang) +[Cisco-IOS-XR-linux-security-showenc-oper-sub1.yang](Cisco-IOS-XR-linux-security-showenc-oper-sub1.yang) +[Cisco-IOS-XR-linux-security-showenc-oper.yang](Cisco-IOS-XR-linux-security-showenc-oper.yang) +[Cisco-IOS-XR-linux-xlnc-oper-sub1.yang](Cisco-IOS-XR-linux-xlnc-oper-sub1.yang) +[Cisco-IOS-XR-linux-xlnc-oper.yang](Cisco-IOS-XR-linux-xlnc-oper.yang) +[Cisco-IOS-XR-lmp-oper-sub1.yang](Cisco-IOS-XR-lmp-oper-sub1.yang) +[Cisco-IOS-XR-lmp-oper.yang](Cisco-IOS-XR-lmp-oper.yang) +[Cisco-IOS-XR-lns-ea-oper-sub1.yang](Cisco-IOS-XR-lns-ea-oper-sub1.yang) +[Cisco-IOS-XR-lns-ea-oper.yang](Cisco-IOS-XR-lns-ea-oper.yang) +[Cisco-IOS-XR-lpts-ifib-oper-sub1.yang](Cisco-IOS-XR-lpts-ifib-oper-sub1.yang) +[Cisco-IOS-XR-lpts-ifib-oper.yang](Cisco-IOS-XR-lpts-ifib-oper.yang) +[Cisco-IOS-XR-lpts-pa-oper-sub1.yang](Cisco-IOS-XR-lpts-pa-oper-sub1.yang) +[Cisco-IOS-XR-lpts-pa-oper.yang](Cisco-IOS-XR-lpts-pa-oper.yang) +[Cisco-IOS-XR-lpts-pre-ifib-oper-sub1.yang](Cisco-IOS-XR-lpts-pre-ifib-oper-sub1.yang) +[Cisco-IOS-XR-lpts-pre-ifib-oper.yang](Cisco-IOS-XR-lpts-pre-ifib-oper.yang) +[Cisco-IOS-XR-mab-oper-sub1.yang](Cisco-IOS-XR-mab-oper-sub1.yang) +[Cisco-IOS-XR-mab-oper.yang](Cisco-IOS-XR-mab-oper.yang) +[Cisco-IOS-XR-macsec-ctrlr-oper-sub1.yang](Cisco-IOS-XR-macsec-ctrlr-oper-sub1.yang) +[Cisco-IOS-XR-macsec-ctrlr-oper.yang](Cisco-IOS-XR-macsec-ctrlr-oper.yang) +[Cisco-IOS-XR-man-ems-oper-sub1.yang](Cisco-IOS-XR-man-ems-oper-sub1.yang) +[Cisco-IOS-XR-man-ems-oper.yang](Cisco-IOS-XR-man-ems-oper.yang) +[Cisco-IOS-XR-man-ipsla-oper-sub1.yang](Cisco-IOS-XR-man-ipsla-oper-sub1.yang) +[Cisco-IOS-XR-man-ipsla-oper-sub2.yang](Cisco-IOS-XR-man-ipsla-oper-sub2.yang) +[Cisco-IOS-XR-man-ipsla-oper-sub3.yang](Cisco-IOS-XR-man-ipsla-oper-sub3.yang) +[Cisco-IOS-XR-man-ipsla-oper.yang](Cisco-IOS-XR-man-ipsla-oper.yang) +[Cisco-IOS-XR-man-netconf-oper-sub1.yang](Cisco-IOS-XR-man-netconf-oper-sub1.yang) +[Cisco-IOS-XR-man-netconf-oper.yang](Cisco-IOS-XR-man-netconf-oper.yang) +[Cisco-IOS-XR-man-xml-ttyagent-oper-sub1.yang](Cisco-IOS-XR-man-xml-ttyagent-oper-sub1.yang) +[Cisco-IOS-XR-man-xml-ttyagent-oper.yang](Cisco-IOS-XR-man-xml-ttyagent-oper.yang) +[Cisco-IOS-XR-manageability-object-tracking-oper-sub1.yang](Cisco-IOS-XR-manageability-object-tracking-oper-sub1.yang) +[Cisco-IOS-XR-manageability-object-tracking-oper.yang](Cisco-IOS-XR-manageability-object-tracking-oper.yang) +[Cisco-IOS-XR-manageability-perfmgmt-oper-sub1.yang](Cisco-IOS-XR-manageability-perfmgmt-oper-sub1.yang) +[Cisco-IOS-XR-manageability-perfmgmt-oper.yang](Cisco-IOS-XR-manageability-perfmgmt-oper.yang) +[Cisco-IOS-XR-mediasvr-linux-oper-sub1.yang](Cisco-IOS-XR-mediasvr-linux-oper-sub1.yang) +[Cisco-IOS-XR-mediasvr-linux-oper.yang](Cisco-IOS-XR-mediasvr-linux-oper.yang) +[Cisco-IOS-XR-mfwd-oper-sub1.yang](Cisco-IOS-XR-mfwd-oper-sub1.yang) +[Cisco-IOS-XR-mfwd-oper-sub2.yang](Cisco-IOS-XR-mfwd-oper-sub2.yang) +[Cisco-IOS-XR-mfwd-oper.yang](Cisco-IOS-XR-mfwd-oper.yang) +[Cisco-IOS-XR-mirror-oper-sub1.yang](Cisco-IOS-XR-mirror-oper-sub1.yang) +[Cisco-IOS-XR-mirror-oper.yang](Cisco-IOS-XR-mirror-oper.yang) +[Cisco-IOS-XR-mld-oper-sub1.yang](Cisco-IOS-XR-mld-oper-sub1.yang) +[Cisco-IOS-XR-mld-oper.yang](Cisco-IOS-XR-mld-oper.yang) +[Cisco-IOS-XR-mpls-io-oper-sub1.yang](Cisco-IOS-XR-mpls-io-oper-sub1.yang) +[Cisco-IOS-XR-mpls-io-oper.yang](Cisco-IOS-XR-mpls-io-oper.yang) +[Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1.yang](Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1.yang) +[Cisco-IOS-XR-mpls-ldp-mldp-oper.yang](Cisco-IOS-XR-mpls-ldp-mldp-oper.yang) +[Cisco-IOS-XR-mpls-ldp-oper-sub1.yang](Cisco-IOS-XR-mpls-ldp-oper-sub1.yang) +[Cisco-IOS-XR-mpls-ldp-oper-sub2.yang](Cisco-IOS-XR-mpls-ldp-oper-sub2.yang) +[Cisco-IOS-XR-mpls-ldp-oper-sub3.yang](Cisco-IOS-XR-mpls-ldp-oper-sub3.yang) +[Cisco-IOS-XR-mpls-ldp-oper.yang](Cisco-IOS-XR-mpls-ldp-oper.yang) +[Cisco-IOS-XR-mpls-lsd-oper-sub1.yang](Cisco-IOS-XR-mpls-lsd-oper-sub1.yang) +[Cisco-IOS-XR-mpls-lsd-oper.yang](Cisco-IOS-XR-mpls-lsd-oper.yang) +[Cisco-IOS-XR-mpls-oam-oper-sub1.yang](Cisco-IOS-XR-mpls-oam-oper-sub1.yang) +[Cisco-IOS-XR-mpls-oam-oper-sub2.yang](Cisco-IOS-XR-mpls-oam-oper-sub2.yang) +[Cisco-IOS-XR-mpls-oam-oper.yang](Cisco-IOS-XR-mpls-oam-oper.yang) +[Cisco-IOS-XR-mpls-static-oper-sub1.yang](Cisco-IOS-XR-mpls-static-oper-sub1.yang) +[Cisco-IOS-XR-mpls-static-oper.yang](Cisco-IOS-XR-mpls-static-oper.yang) +[Cisco-IOS-XR-mpls-te-oper-sub1.yang](Cisco-IOS-XR-mpls-te-oper-sub1.yang) +[Cisco-IOS-XR-mpls-te-oper-sub2.yang](Cisco-IOS-XR-mpls-te-oper-sub2.yang) +[Cisco-IOS-XR-mpls-te-oper-sub3.yang](Cisco-IOS-XR-mpls-te-oper-sub3.yang) +[Cisco-IOS-XR-mpls-te-oper-sub4.yang](Cisco-IOS-XR-mpls-te-oper-sub4.yang) +[Cisco-IOS-XR-mpls-te-oper-sub5.yang](Cisco-IOS-XR-mpls-te-oper-sub5.yang) +[Cisco-IOS-XR-mpls-te-oper-sub6.yang](Cisco-IOS-XR-mpls-te-oper-sub6.yang) +[Cisco-IOS-XR-mpls-te-oper-sub7.yang](Cisco-IOS-XR-mpls-te-oper-sub7.yang) +[Cisco-IOS-XR-mpls-te-oper-sub8.yang](Cisco-IOS-XR-mpls-te-oper-sub8.yang) +[Cisco-IOS-XR-mpls-te-oper-sub9.yang](Cisco-IOS-XR-mpls-te-oper-sub9.yang) +[Cisco-IOS-XR-mpls-te-oper.yang](Cisco-IOS-XR-mpls-te-oper.yang) +[Cisco-IOS-XR-mpls-vpn-oper-sub1.yang](Cisco-IOS-XR-mpls-vpn-oper-sub1.yang) +[Cisco-IOS-XR-mpls-vpn-oper.yang](Cisco-IOS-XR-mpls-vpn-oper.yang) +[Cisco-IOS-XR-mrib-oper-sub1.yang](Cisco-IOS-XR-mrib-oper-sub1.yang) +[Cisco-IOS-XR-mrib-oper.yang](Cisco-IOS-XR-mrib-oper.yang) +[Cisco-IOS-XR-msdp-oper-sub1.yang](Cisco-IOS-XR-msdp-oper-sub1.yang) +[Cisco-IOS-XR-msdp-oper.yang](Cisco-IOS-XR-msdp-oper.yang) +[Cisco-IOS-XR-mvpn-oper-sub1.yang](Cisco-IOS-XR-mvpn-oper-sub1.yang) +[Cisco-IOS-XR-mvpn-oper.yang](Cisco-IOS-XR-mvpn-oper.yang) +[Cisco-IOS-XR-ncs-grid-svr-oper-sub1.yang](Cisco-IOS-XR-ncs-grid-svr-oper-sub1.yang) +[Cisco-IOS-XR-ncs-grid-svr-oper.yang](Cisco-IOS-XR-ncs-grid-svr-oper.yang) +[Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1.yang](Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1.yang) +[Cisco-IOS-XR-ncs1001-hw-module-eth-oper.yang](Cisco-IOS-XR-ncs1001-hw-module-eth-oper.yang) +[Cisco-IOS-XR-ncs1001-otdr-oper-sub1.yang](Cisco-IOS-XR-ncs1001-otdr-oper-sub1.yang) +[Cisco-IOS-XR-ncs1001-otdr-oper.yang](Cisco-IOS-XR-ncs1001-otdr-oper.yang) +[Cisco-IOS-XR-ncs1001-ots-oper-sub1.yang](Cisco-IOS-XR-ncs1001-ots-oper-sub1.yang) +[Cisco-IOS-XR-ncs1001-ots-oper.yang](Cisco-IOS-XR-ncs1001-ots-oper.yang) +[Cisco-IOS-XR-ncs1001-passive-oper-sub1.yang](Cisco-IOS-XR-ncs1001-passive-oper-sub1.yang) +[Cisco-IOS-XR-ncs1001-passive-oper.yang](Cisco-IOS-XR-ncs1001-passive-oper.yang) +[Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1.yang](Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1.yang) +[Cisco-IOS-XR-ncs1k-macsec-ea-oper.yang](Cisco-IOS-XR-ncs1k-macsec-ea-oper.yang) +[Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1.yang](Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1.yang) +[Cisco-IOS-XR-ncs1k-mxp-headless-oper.yang](Cisco-IOS-XR-ncs1k-mxp-headless-oper.yang) +[Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1.yang](Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1.yang) +[Cisco-IOS-XR-ncs1k-mxp-lldp-oper.yang](Cisco-IOS-XR-ncs1k-mxp-lldp-oper.yang) +[Cisco-IOS-XR-ncs1k-mxp-oper-sub1.yang](Cisco-IOS-XR-ncs1k-mxp-oper-sub1.yang) +[Cisco-IOS-XR-ncs1k-mxp-oper.yang](Cisco-IOS-XR-ncs1k-mxp-oper.yang) +[Cisco-IOS-XR-ncs4k-freqsync-oper-sub1.yang](Cisco-IOS-XR-ncs4k-freqsync-oper-sub1.yang) +[Cisco-IOS-XR-ncs4k-freqsync-oper.yang](Cisco-IOS-XR-ncs4k-freqsync-oper.yang) +[Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1.yang](Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1.yang) +[Cisco-IOS-XR-ncs5500-coherent-node-oper.yang](Cisco-IOS-XR-ncs5500-coherent-node-oper.yang) +[Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1.yang](Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1.yang) +[Cisco-IOS-XR-ncs5500-coherent-portmode-oper.yang](Cisco-IOS-XR-ncs5500-coherent-portmode-oper.yang) +[Cisco-IOS-XR-ncs5500-qos-oper-sub1.yang](Cisco-IOS-XR-ncs5500-qos-oper-sub1.yang) +[Cisco-IOS-XR-ncs5500-qos-oper-sub2.yang](Cisco-IOS-XR-ncs5500-qos-oper-sub2.yang) +[Cisco-IOS-XR-ncs5500-qos-oper-sub3.yang](Cisco-IOS-XR-ncs5500-qos-oper-sub3.yang) +[Cisco-IOS-XR-ncs5500-qos-oper.yang](Cisco-IOS-XR-ncs5500-qos-oper.yang) +[Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1.yang](Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1.yang) +[Cisco-IOS-XR-npu-bandwidth-usage-oper.yang](Cisco-IOS-XR-npu-bandwidth-usage-oper.yang) +[Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1.yang](Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1.yang) +[Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper.yang](Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper.yang) +[Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1.yang](Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1.yang) +[Cisco-IOS-XR-npu-cfg-macsec-mode-oper.yang](Cisco-IOS-XR-npu-cfg-macsec-mode-oper.yang) +[Cisco-IOS-XR-npu-fsdb-stats-oper-sub1.yang](Cisco-IOS-XR-npu-fsdb-stats-oper-sub1.yang) +[Cisco-IOS-XR-npu-fsdb-stats-oper.yang](Cisco-IOS-XR-npu-fsdb-stats-oper.yang) +[Cisco-IOS-XR-nto-misc-oper-sub1.yang](Cisco-IOS-XR-nto-misc-oper-sub1.yang) +[Cisco-IOS-XR-nto-misc-oper.yang](Cisco-IOS-XR-nto-misc-oper.yang) +[Cisco-IOS-XR-nvgen-partition-oper-sub1.yang](Cisco-IOS-XR-nvgen-partition-oper-sub1.yang) +[Cisco-IOS-XR-nvgen-partition-oper.yang](Cisco-IOS-XR-nvgen-partition-oper.yang) +[Cisco-IOS-XR-ofa-netflow-oper-sub1.yang](Cisco-IOS-XR-ofa-netflow-oper-sub1.yang) +[Cisco-IOS-XR-ofa-netflow-oper-sub2.yang](Cisco-IOS-XR-ofa-netflow-oper-sub2.yang) +[Cisco-IOS-XR-ofa-netflow-oper.yang](Cisco-IOS-XR-ofa-netflow-oper.yang) +[Cisco-IOS-XR-ofa-npu-pfc-oper-sub1.yang](Cisco-IOS-XR-ofa-npu-pfc-oper-sub1.yang) +[Cisco-IOS-XR-ofa-npu-pfc-oper.yang](Cisco-IOS-XR-ofa-npu-pfc-oper.yang) +[Cisco-IOS-XR-ofa-npu-qos-oper-sub1.yang](Cisco-IOS-XR-ofa-npu-qos-oper-sub1.yang) +[Cisco-IOS-XR-ofa-npu-qos-oper.yang](Cisco-IOS-XR-ofa-npu-qos-oper.yang) +[Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang](Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang) +[Cisco-IOS-XR-ofa-npu-stats-oper.yang](Cisco-IOS-XR-ofa-npu-stats-oper.yang) +[Cisco-IOS-XR-olc-oper-sub1.yang](Cisco-IOS-XR-olc-oper-sub1.yang) +[Cisco-IOS-XR-olc-oper.yang](Cisco-IOS-XR-olc-oper.yang) +[Cisco-IOS-XR-optics-breakout-details-oper-sub1.yang](Cisco-IOS-XR-optics-breakout-details-oper-sub1.yang) +[Cisco-IOS-XR-optics-breakout-details-oper.yang](Cisco-IOS-XR-optics-breakout-details-oper.yang) +[Cisco-IOS-XR-orrspf-oper-sub1.yang](Cisco-IOS-XR-orrspf-oper-sub1.yang) +[Cisco-IOS-XR-orrspf-oper.yang](Cisco-IOS-XR-orrspf-oper.yang) +[Cisco-IOS-XR-osa-controller-optics-oper-sub1.yang](Cisco-IOS-XR-osa-controller-optics-oper-sub1.yang) +[Cisco-IOS-XR-osa-controller-optics-oper.yang](Cisco-IOS-XR-osa-controller-optics-oper.yang) +[Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1.yang](Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1.yang) +[Cisco-IOS-XR-osa-hwmod-linesys-oper.yang](Cisco-IOS-XR-osa-hwmod-linesys-oper.yang) +[Cisco-IOS-XR-osa-oper-sub1.yang](Cisco-IOS-XR-osa-oper-sub1.yang) +[Cisco-IOS-XR-osa-oper.yang](Cisco-IOS-XR-osa-oper.yang) +[Cisco-IOS-XR-otnsec-oper-sub1.yang](Cisco-IOS-XR-otnsec-oper-sub1.yang) +[Cisco-IOS-XR-otnsec-oper.yang](Cisco-IOS-XR-otnsec-oper.yang) +[Cisco-IOS-XR-ownership-oper-sub1.yang](Cisco-IOS-XR-ownership-oper-sub1.yang) +[Cisco-IOS-XR-ownership-oper.yang](Cisco-IOS-XR-ownership-oper.yang) +[Cisco-IOS-XR-pbr-oper-sub1.yang](Cisco-IOS-XR-pbr-oper-sub1.yang) +[Cisco-IOS-XR-pbr-oper.yang](Cisco-IOS-XR-pbr-oper.yang) +[Cisco-IOS-XR-pbr-vservice-ea-oper-sub1.yang](Cisco-IOS-XR-pbr-vservice-ea-oper-sub1.yang) +[Cisco-IOS-XR-pbr-vservice-ea-oper.yang](Cisco-IOS-XR-pbr-vservice-ea-oper.yang) +[Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1.yang](Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1.yang) +[Cisco-IOS-XR-pbr-vservice-mgr-oper.yang](Cisco-IOS-XR-pbr-vservice-mgr-oper.yang) +[Cisco-IOS-XR-perf-meas-oper-sub1.yang](Cisco-IOS-XR-perf-meas-oper-sub1.yang) +[Cisco-IOS-XR-perf-meas-oper-sub2.yang](Cisco-IOS-XR-perf-meas-oper-sub2.yang) +[Cisco-IOS-XR-perf-meas-oper.yang](Cisco-IOS-XR-perf-meas-oper.yang) +[Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1.yang](Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1.yang) +[Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper.yang](Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper.yang) +[Cisco-IOS-XR-pfi-im-cmd-oper-sub1.yang](Cisco-IOS-XR-pfi-im-cmd-oper-sub1.yang) +[Cisco-IOS-XR-pfi-im-cmd-oper-sub2.yang](Cisco-IOS-XR-pfi-im-cmd-oper-sub2.yang) +[Cisco-IOS-XR-pfi-im-cmd-oper.yang](Cisco-IOS-XR-pfi-im-cmd-oper.yang) +[Cisco-IOS-XR-pfm-oper-sub1.yang](Cisco-IOS-XR-pfm-oper-sub1.yang) +[Cisco-IOS-XR-pfm-oper.yang](Cisco-IOS-XR-pfm-oper.yang) +[Cisco-IOS-XR-pim-oper-sub1.yang](Cisco-IOS-XR-pim-oper-sub1.yang) +[Cisco-IOS-XR-pim-oper-sub2.yang](Cisco-IOS-XR-pim-oper-sub2.yang) +[Cisco-IOS-XR-pim-oper.yang](Cisco-IOS-XR-pim-oper.yang) +[Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang](Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang) +[Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2.yang](Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2.yang) +[Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang](Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang) +[Cisco-IOS-XR-platform-event-history-oper-sub1.yang](Cisco-IOS-XR-platform-event-history-oper-sub1.yang) +[Cisco-IOS-XR-platform-event-history-oper.yang](Cisco-IOS-XR-platform-event-history-oper.yang) +[Cisco-IOS-XR-platform-inventory-oper-sub1.yang](Cisco-IOS-XR-platform-inventory-oper-sub1.yang) +[Cisco-IOS-XR-platform-inventory-oper.yang](Cisco-IOS-XR-platform-inventory-oper.yang) +[Cisco-IOS-XR-platform-oir-history-oper-sub1.yang](Cisco-IOS-XR-platform-oir-history-oper-sub1.yang) +[Cisco-IOS-XR-platform-oir-history-oper.yang](Cisco-IOS-XR-platform-oir-history-oper.yang) +[Cisco-IOS-XR-platform-oper-sub1.yang](Cisco-IOS-XR-platform-oper-sub1.yang) +[Cisco-IOS-XR-platform-oper.yang](Cisco-IOS-XR-platform-oper.yang) +[Cisco-IOS-XR-platform-pifib-oper-sub1.yang](Cisco-IOS-XR-platform-pifib-oper-sub1.yang) +[Cisco-IOS-XR-platform-pifib-oper.yang](Cisco-IOS-XR-platform-pifib-oper.yang) +[Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1.yang](Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1.yang) +[Cisco-IOS-XR-platforms-common-dnx-infra-oper.yang](Cisco-IOS-XR-platforms-common-dnx-infra-oper.yang) +[Cisco-IOS-XR-platforms-ofa-oper.yang](Cisco-IOS-XR-platforms-ofa-oper.yang) +[Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1.yang](Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1.yang) +[Cisco-IOS-XR-platforms-ofa-table-stats-oper.yang](Cisco-IOS-XR-platforms-ofa-table-stats-oper.yang) +[Cisco-IOS-XR-pmengine-oper-sub1.yang](Cisco-IOS-XR-pmengine-oper-sub1.yang) +[Cisco-IOS-XR-pmengine-oper.yang](Cisco-IOS-XR-pmengine-oper.yang) +[Cisco-IOS-XR-policy-repository-oper-sub1.yang](Cisco-IOS-XR-policy-repository-oper-sub1.yang) +[Cisco-IOS-XR-policy-repository-oper.yang](Cisco-IOS-XR-policy-repository-oper.yang) +[Cisco-IOS-XR-portmode-oper-sub1.yang](Cisco-IOS-XR-portmode-oper-sub1.yang) +[Cisco-IOS-XR-portmode-oper.yang](Cisco-IOS-XR-portmode-oper.yang) +[Cisco-IOS-XR-ppp-ea-oper-sub1.yang](Cisco-IOS-XR-ppp-ea-oper-sub1.yang) +[Cisco-IOS-XR-ppp-ea-oper.yang](Cisco-IOS-XR-ppp-ea-oper.yang) +[Cisco-IOS-XR-ppp-ma-oper-sub1.yang](Cisco-IOS-XR-ppp-ma-oper-sub1.yang) +[Cisco-IOS-XR-ppp-ma-oper-sub2.yang](Cisco-IOS-XR-ppp-ma-oper-sub2.yang) +[Cisco-IOS-XR-ppp-ma-oper-sub3.yang](Cisco-IOS-XR-ppp-ma-oper-sub3.yang) +[Cisco-IOS-XR-ppp-ma-oper-sub4.yang](Cisco-IOS-XR-ppp-ma-oper-sub4.yang) +[Cisco-IOS-XR-ppp-ma-oper.yang](Cisco-IOS-XR-ppp-ma-oper.yang) +[Cisco-IOS-XR-pppoe-ea-oper-sub1.yang](Cisco-IOS-XR-pppoe-ea-oper-sub1.yang) +[Cisco-IOS-XR-pppoe-ea-oper.yang](Cisco-IOS-XR-pppoe-ea-oper.yang) +[Cisco-IOS-XR-prm-server-oper-sub1.yang](Cisco-IOS-XR-prm-server-oper-sub1.yang) +[Cisco-IOS-XR-prm-server-oper.yang](Cisco-IOS-XR-prm-server-oper.yang) +[Cisco-IOS-XR-procfind-oper-sub1.yang](Cisco-IOS-XR-procfind-oper-sub1.yang) +[Cisco-IOS-XR-procfind-oper.yang](Cisco-IOS-XR-procfind-oper.yang) +[Cisco-IOS-XR-procmem-oper-sub1.yang](Cisco-IOS-XR-procmem-oper-sub1.yang) +[Cisco-IOS-XR-procmem-oper.yang](Cisco-IOS-XR-procmem-oper.yang) +[Cisco-IOS-XR-procthreadname-oper-sub1.yang](Cisco-IOS-XR-procthreadname-oper-sub1.yang) +[Cisco-IOS-XR-procthreadname-oper.yang](Cisco-IOS-XR-procthreadname-oper.yang) +[Cisco-IOS-XR-ptp-oper-sub1.yang](Cisco-IOS-XR-ptp-oper-sub1.yang) +[Cisco-IOS-XR-ptp-oper.yang](Cisco-IOS-XR-ptp-oper.yang) +[Cisco-IOS-XR-ptp-pd-oper-sub1.yang](Cisco-IOS-XR-ptp-pd-oper-sub1.yang) +[Cisco-IOS-XR-ptp-pd-oper.yang](Cisco-IOS-XR-ptp-pd-oper.yang) +[Cisco-IOS-XR-qos-ma-oper.yang](Cisco-IOS-XR-qos-ma-oper.yang) +[Cisco-IOS-XR-rgmgr-oper-sub1.yang](Cisco-IOS-XR-rgmgr-oper-sub1.yang) +[Cisco-IOS-XR-rgmgr-oper.yang](Cisco-IOS-XR-rgmgr-oper.yang) +[Cisco-IOS-XR-roe-oper-sub1.yang](Cisco-IOS-XR-roe-oper-sub1.yang) +[Cisco-IOS-XR-roe-oper.yang](Cisco-IOS-XR-roe-oper.yang) +[Cisco-IOS-XR-rptiming-dti-oper-sub1.yang](Cisco-IOS-XR-rptiming-dti-oper-sub1.yang) +[Cisco-IOS-XR-rptiming-dti-oper.yang](Cisco-IOS-XR-rptiming-dti-oper.yang) +[Cisco-IOS-XR-rptiming-oper-sub1.yang](Cisco-IOS-XR-rptiming-oper-sub1.yang) +[Cisco-IOS-XR-rptiming-oper.yang](Cisco-IOS-XR-rptiming-oper.yang) +[Cisco-IOS-XR-rptiming-tmg-oper-sub1.yang](Cisco-IOS-XR-rptiming-tmg-oper-sub1.yang) +[Cisco-IOS-XR-rptiming-tmg-oper.yang](Cisco-IOS-XR-rptiming-tmg-oper.yang) +[Cisco-IOS-XR-rsi-agent-oper-sub1.yang](Cisco-IOS-XR-rsi-agent-oper-sub1.yang) +[Cisco-IOS-XR-rsi-agent-oper.yang](Cisco-IOS-XR-rsi-agent-oper.yang) +[Cisco-IOS-XR-sandbox-oper-sub1.yang](Cisco-IOS-XR-sandbox-oper-sub1.yang) +[Cisco-IOS-XR-sandbox-oper.yang](Cisco-IOS-XR-sandbox-oper.yang) +[Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1.yang](Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1.yang) +[Cisco-IOS-XR-sdr-invmgr-diag-oper.yang](Cisco-IOS-XR-sdr-invmgr-diag-oper.yang) +[Cisco-IOS-XR-sdr-invmgr-oper-sub1.yang](Cisco-IOS-XR-sdr-invmgr-oper-sub1.yang) +[Cisco-IOS-XR-sdr-invmgr-oper.yang](Cisco-IOS-XR-sdr-invmgr-oper.yang) +[Cisco-IOS-XR-segment-routing-ms-oper-sub1.yang](Cisco-IOS-XR-segment-routing-ms-oper-sub1.yang) +[Cisco-IOS-XR-segment-routing-ms-oper-sub2.yang](Cisco-IOS-XR-segment-routing-ms-oper-sub2.yang) +[Cisco-IOS-XR-segment-routing-ms-oper-sub3.yang](Cisco-IOS-XR-segment-routing-ms-oper-sub3.yang) +[Cisco-IOS-XR-segment-routing-ms-oper.yang](Cisco-IOS-XR-segment-routing-ms-oper.yang) +[Cisco-IOS-XR-segment-routing-srv6-oper-sub1.yang](Cisco-IOS-XR-segment-routing-srv6-oper-sub1.yang) +[Cisco-IOS-XR-segment-routing-srv6-oper.yang](Cisco-IOS-XR-segment-routing-srv6-oper.yang) +[Cisco-IOS-XR-sfi-ma-oper-sub1.yang](Cisco-IOS-XR-sfi-ma-oper-sub1.yang) +[Cisco-IOS-XR-sfi-ma-oper.yang](Cisco-IOS-XR-sfi-ma-oper.yang) +[Cisco-IOS-XR-shellutil-dir-oper-sub1.yang](Cisco-IOS-XR-shellutil-dir-oper-sub1.yang) +[Cisco-IOS-XR-shellutil-dir-oper.yang](Cisco-IOS-XR-shellutil-dir-oper.yang) +[Cisco-IOS-XR-shellutil-filesystem-oper-sub1.yang](Cisco-IOS-XR-shellutil-filesystem-oper-sub1.yang) +[Cisco-IOS-XR-shellutil-filesystem-oper.yang](Cisco-IOS-XR-shellutil-filesystem-oper.yang) +[Cisco-IOS-XR-shellutil-oper-sub1.yang](Cisco-IOS-XR-shellutil-oper-sub1.yang) +[Cisco-IOS-XR-shellutil-oper.yang](Cisco-IOS-XR-shellutil-oper.yang) +[Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1.yang](Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1.yang) +[Cisco-IOS-XR-show-fpd-loc-ng-oper.yang](Cisco-IOS-XR-show-fpd-loc-ng-oper.yang) +[Cisco-IOS-XR-skp-qos-oper-sub1.yang](Cisco-IOS-XR-skp-qos-oper-sub1.yang) +[Cisco-IOS-XR-skp-qos-oper-sub2.yang](Cisco-IOS-XR-skp-qos-oper-sub2.yang) +[Cisco-IOS-XR-skp-qos-oper.yang](Cisco-IOS-XR-skp-qos-oper.yang) +[Cisco-IOS-XR-sks-server-oper-sub1.yang](Cisco-IOS-XR-sks-server-oper-sub1.yang) +[Cisco-IOS-XR-sks-server-oper.yang](Cisco-IOS-XR-sks-server-oper.yang) +[Cisco-IOS-XR-skywarp-netflow-oper-sub1.yang](Cisco-IOS-XR-skywarp-netflow-oper-sub1.yang) +[Cisco-IOS-XR-skywarp-netflow-oper-sub2.yang](Cisco-IOS-XR-skywarp-netflow-oper-sub2.yang) +[Cisco-IOS-XR-skywarp-netflow-oper.yang](Cisco-IOS-XR-skywarp-netflow-oper.yang) +[Cisco-IOS-XR-smart-license-platform-oper-sub1.yang](Cisco-IOS-XR-smart-license-platform-oper-sub1.yang) +[Cisco-IOS-XR-smart-license-platform-oper.yang](Cisco-IOS-XR-smart-license-platform-oper.yang) +[Cisco-IOS-XR-snmp-agent-oper-sub1.yang](Cisco-IOS-XR-snmp-agent-oper-sub1.yang) +[Cisco-IOS-XR-snmp-agent-oper-sub2.yang](Cisco-IOS-XR-snmp-agent-oper-sub2.yang) +[Cisco-IOS-XR-snmp-agent-oper-sub3.yang](Cisco-IOS-XR-snmp-agent-oper-sub3.yang) +[Cisco-IOS-XR-snmp-agent-oper-sub4.yang](Cisco-IOS-XR-snmp-agent-oper-sub4.yang) +[Cisco-IOS-XR-snmp-agent-oper-sub5.yang](Cisco-IOS-XR-snmp-agent-oper-sub5.yang) +[Cisco-IOS-XR-snmp-agent-oper-sub6.yang](Cisco-IOS-XR-snmp-agent-oper-sub6.yang) +[Cisco-IOS-XR-snmp-agent-oper-sub7.yang](Cisco-IOS-XR-snmp-agent-oper-sub7.yang) +[Cisco-IOS-XR-snmp-agent-oper.yang](Cisco-IOS-XR-snmp-agent-oper.yang) +[Cisco-IOS-XR-snmp-entitymib-oper-sub1.yang](Cisco-IOS-XR-snmp-entitymib-oper-sub1.yang) +[Cisco-IOS-XR-snmp-entitymib-oper.yang](Cisco-IOS-XR-snmp-entitymib-oper.yang) +[Cisco-IOS-XR-snmp-ifmib-oper-sub1.yang](Cisco-IOS-XR-snmp-ifmib-oper-sub1.yang) +[Cisco-IOS-XR-snmp-ifmib-oper.yang](Cisco-IOS-XR-snmp-ifmib-oper.yang) +[Cisco-IOS-XR-snmp-sensormib-oper-sub1.yang](Cisco-IOS-XR-snmp-sensormib-oper-sub1.yang) +[Cisco-IOS-XR-snmp-sensormib-oper-sub2.yang](Cisco-IOS-XR-snmp-sensormib-oper-sub2.yang) +[Cisco-IOS-XR-snmp-sensormib-oper.yang](Cisco-IOS-XR-snmp-sensormib-oper.yang) +[Cisco-IOS-XR-spio-oper-sub1.yang](Cisco-IOS-XR-spio-oper-sub1.yang) +[Cisco-IOS-XR-spio-oper.yang](Cisco-IOS-XR-spio-oper.yang) +[Cisco-IOS-XR-spirit-corehelper-context-oper-sub1.yang](Cisco-IOS-XR-spirit-corehelper-context-oper-sub1.yang) +[Cisco-IOS-XR-spirit-corehelper-context-oper.yang](Cisco-IOS-XR-spirit-corehelper-context-oper.yang) +[Cisco-IOS-XR-spirit-ether-ea-oper-sub1.yang](Cisco-IOS-XR-spirit-ether-ea-oper-sub1.yang) +[Cisco-IOS-XR-spirit-ether-ea-oper.yang](Cisco-IOS-XR-spirit-ether-ea-oper.yang) +[Cisco-IOS-XR-spirit-install-instmgr-oper-sub1.yang](Cisco-IOS-XR-spirit-install-instmgr-oper-sub1.yang) +[Cisco-IOS-XR-spirit-install-instmgr-oper-sub2.yang](Cisco-IOS-XR-spirit-install-instmgr-oper-sub2.yang) +[Cisco-IOS-XR-spirit-install-instmgr-oper.yang](Cisco-IOS-XR-spirit-install-instmgr-oper.yang) +[Cisco-IOS-XR-subscriber-accounting-oper-sub1.yang](Cisco-IOS-XR-subscriber-accounting-oper-sub1.yang) +[Cisco-IOS-XR-subscriber-accounting-oper.yang](Cisco-IOS-XR-subscriber-accounting-oper.yang) +[Cisco-IOS-XR-subscriber-ipsub-oper-sub1.yang](Cisco-IOS-XR-subscriber-ipsub-oper-sub1.yang) +[Cisco-IOS-XR-subscriber-ipsub-oper.yang](Cisco-IOS-XR-subscriber-ipsub-oper.yang) +[Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1.yang](Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1.yang) +[Cisco-IOS-XR-subscriber-pppoe-ma-oper.yang](Cisco-IOS-XR-subscriber-pppoe-ma-oper.yang) +[Cisco-IOS-XR-subscriber-session-mon-oper-sub1.yang](Cisco-IOS-XR-subscriber-session-mon-oper-sub1.yang) +[Cisco-IOS-XR-subscriber-session-mon-oper.yang](Cisco-IOS-XR-subscriber-session-mon-oper.yang) +[Cisco-IOS-XR-subscriber-srg-oper-sub1.yang](Cisco-IOS-XR-subscriber-srg-oper-sub1.yang) +[Cisco-IOS-XR-subscriber-srg-oper.yang](Cisco-IOS-XR-subscriber-srg-oper.yang) +[Cisco-IOS-XR-switch-oper-sub1.yang](Cisco-IOS-XR-switch-oper-sub1.yang) +[Cisco-IOS-XR-switch-oper.yang](Cisco-IOS-XR-switch-oper.yang) +[Cisco-IOS-XR-syncc-oper-sub1.yang](Cisco-IOS-XR-syncc-oper-sub1.yang) +[Cisco-IOS-XR-syncc-oper.yang](Cisco-IOS-XR-syncc-oper.yang) +[Cisco-IOS-XR-sysdb-oper.yang](Cisco-IOS-XR-sysdb-oper.yang) +[Cisco-IOS-XR-sysmgr-oper-sub1.yang](Cisco-IOS-XR-sysmgr-oper-sub1.yang) +[Cisco-IOS-XR-sysmgr-oper.yang](Cisco-IOS-XR-sysmgr-oper.yang) +[Cisco-IOS-XR-tamsvcs-oper-sub1.yang](Cisco-IOS-XR-tamsvcs-oper-sub1.yang) +[Cisco-IOS-XR-tamsvcs-oper.yang](Cisco-IOS-XR-tamsvcs-oper.yang) +[Cisco-IOS-XR-telemetry-model-driven-oper-sub1.yang](Cisco-IOS-XR-telemetry-model-driven-oper-sub1.yang) +[Cisco-IOS-XR-telemetry-model-driven-oper-sub2.yang](Cisco-IOS-XR-telemetry-model-driven-oper-sub2.yang) +[Cisco-IOS-XR-telemetry-model-driven-oper.yang](Cisco-IOS-XR-telemetry-model-driven-oper.yang) +[Cisco-IOS-XR-terminal-device-oper-sub1.yang](Cisco-IOS-XR-terminal-device-oper-sub1.yang) +[Cisco-IOS-XR-terminal-device-oper.yang](Cisco-IOS-XR-terminal-device-oper.yang) +[Cisco-IOS-XR-tmgctrl-dti-oper-sub1.yang](Cisco-IOS-XR-tmgctrl-dti-oper-sub1.yang) +[Cisco-IOS-XR-tmgctrl-dti-oper.yang](Cisco-IOS-XR-tmgctrl-dti-oper.yang) +[Cisco-IOS-XR-tmgctrl-tmg-oper-sub1.yang](Cisco-IOS-XR-tmgctrl-tmg-oper-sub1.yang) +[Cisco-IOS-XR-tmgctrl-tmg-oper.yang](Cisco-IOS-XR-tmgctrl-tmg-oper.yang) +[Cisco-IOS-XR-tty-management-cmd-oper-sub1.yang](Cisco-IOS-XR-tty-management-cmd-oper-sub1.yang) +[Cisco-IOS-XR-tty-management-cmd-oper.yang](Cisco-IOS-XR-tty-management-cmd-oper.yang) +[Cisco-IOS-XR-tty-management-oper-sub1.yang](Cisco-IOS-XR-tty-management-oper-sub1.yang) +[Cisco-IOS-XR-tty-management-oper.yang](Cisco-IOS-XR-tty-management-oper.yang) +[Cisco-IOS-XR-tty-server-oper-sub1.yang](Cisco-IOS-XR-tty-server-oper-sub1.yang) +[Cisco-IOS-XR-tty-server-oper-sub2.yang](Cisco-IOS-XR-tty-server-oper-sub2.yang) +[Cisco-IOS-XR-tty-server-oper-sub3.yang](Cisco-IOS-XR-tty-server-oper-sub3.yang) +[Cisco-IOS-XR-tty-server-oper-sub4.yang](Cisco-IOS-XR-tty-server-oper-sub4.yang) +[Cisco-IOS-XR-tty-server-oper-sub5.yang](Cisco-IOS-XR-tty-server-oper-sub5.yang) +[Cisco-IOS-XR-tty-server-oper.yang](Cisco-IOS-XR-tty-server-oper.yang) +[Cisco-IOS-XR-tty-show-line-oper-sub1.yang](Cisco-IOS-XR-tty-show-line-oper-sub1.yang) +[Cisco-IOS-XR-tty-show-line-oper.yang](Cisco-IOS-XR-tty-show-line-oper.yang) +[Cisco-IOS-XR-tty-show-terminal-oper-sub1.yang](Cisco-IOS-XR-tty-show-terminal-oper-sub1.yang) +[Cisco-IOS-XR-tty-show-terminal-oper.yang](Cisco-IOS-XR-tty-show-terminal-oper.yang) +[Cisco-IOS-XR-tunnel-ip-ea-oper-sub1.yang](Cisco-IOS-XR-tunnel-ip-ea-oper-sub1.yang) +[Cisco-IOS-XR-tunnel-ip-ea-oper.yang](Cisco-IOS-XR-tunnel-ip-ea-oper.yang) +[Cisco-IOS-XR-tunnel-ip-ma-oper-sub1.yang](Cisco-IOS-XR-tunnel-ip-ma-oper-sub1.yang) +[Cisco-IOS-XR-tunnel-ip-ma-oper.yang](Cisco-IOS-XR-tunnel-ip-ma-oper.yang) +[Cisco-IOS-XR-tunnel-l2tun-oper-sub1.yang](Cisco-IOS-XR-tunnel-l2tun-oper-sub1.yang) +[Cisco-IOS-XR-tunnel-l2tun-oper.yang](Cisco-IOS-XR-tunnel-l2tun-oper.yang) +[Cisco-IOS-XR-tunnel-nve-oper-sub1.yang](Cisco-IOS-XR-tunnel-nve-oper-sub1.yang) +[Cisco-IOS-XR-tunnel-nve-oper.yang](Cisco-IOS-XR-tunnel-nve-oper.yang) +[Cisco-IOS-XR-tunnel-vpdn-oper-sub1.yang](Cisco-IOS-XR-tunnel-vpdn-oper-sub1.yang) +[Cisco-IOS-XR-tunnel-vpdn-oper.yang](Cisco-IOS-XR-tunnel-vpdn-oper.yang) +[Cisco-IOS-XR-wanphy-ui-oper-sub1.yang](Cisco-IOS-XR-wanphy-ui-oper-sub1.yang) +[Cisco-IOS-XR-wanphy-ui-oper.yang](Cisco-IOS-XR-wanphy-ui-oper.yang) +[Cisco-IOS-XR-wd-death-notif-configured-proc-oper-sub1.yang](Cisco-IOS-XR-wd-death-notif-configured-proc-oper-sub1.yang) +[Cisco-IOS-XR-wd-death-notif-configured-proc-oper.yang](Cisco-IOS-XR-wd-death-notif-configured-proc-oper.yang) +[Cisco-IOS-XR-wd-oper-sub1.yang](Cisco-IOS-XR-wd-oper-sub1.yang) +[Cisco-IOS-XR-wd-oper.yang](Cisco-IOS-XR-wd-oper.yang) +[Cisco-IOS-XR-wd-proc-state-oper-sub1.yang](Cisco-IOS-XR-wd-proc-state-oper-sub1.yang) +[Cisco-IOS-XR-wd-proc-state-oper.yang](Cisco-IOS-XR-wd-proc-state-oper.yang) +[Cisco-IOS-XR-wdsysmon-fd-oper-sub1.yang](Cisco-IOS-XR-wdsysmon-fd-oper-sub1.yang) +[Cisco-IOS-XR-wdsysmon-fd-oper.yang](Cisco-IOS-XR-wdsysmon-fd-oper.yang) +[Cisco-IOS-XR-wdsysmon-fd-proc-oper-sub1.yang](Cisco-IOS-XR-wdsysmon-fd-proc-oper-sub1.yang) +[Cisco-IOS-XR-wdsysmon-fd-proc-oper.yang](Cisco-IOS-XR-wdsysmon-fd-proc-oper.yang) +[Cisco-IOS-XR-xrv9k-lpts-oper-sub1.yang](Cisco-IOS-XR-xrv9k-lpts-oper-sub1.yang) +[Cisco-IOS-XR-xrv9k-lpts-oper.yang](Cisco-IOS-XR-xrv9k-lpts-oper.yang) +[Cisco-IOS-XR-ztp-oper-sub1.yang](Cisco-IOS-XR-ztp-oper-sub1.yang) +[Cisco-IOS-XR-ztp-oper.yang](Cisco-IOS-XR-ztp-oper.yang) +## Native Common Datatype Models +[Cisco-IOS-XR-types.yang](Cisco-IOS-XR-types.yang) +[Cisco-IOS-XR-Ethernet-SPAN-datatypes.yang](Cisco-IOS-XR-Ethernet-SPAN-datatypes.yang) +[Cisco-IOS-XR-aaa-lib-datatypes.yang](Cisco-IOS-XR-aaa-lib-datatypes.yang) +[Cisco-IOS-XR-clns-isis-datatypes.yang](Cisco-IOS-XR-clns-isis-datatypes.yang) +[Cisco-IOS-XR-common-acl-datatypes.yang](Cisco-IOS-XR-common-acl-datatypes.yang) +[Cisco-IOS-XR-controller-odu-datatypes.yang](Cisco-IOS-XR-controller-odu-datatypes.yang) +[Cisco-IOS-XR-eigrp-datatypes.yang](Cisco-IOS-XR-eigrp-datatypes.yang) +[Cisco-IOS-XR-es-acl-datatypes.yang](Cisco-IOS-XR-es-acl-datatypes.yang) +[Cisco-IOS-XR-ethernet-cfm-datatypes.yang](Cisco-IOS-XR-ethernet-cfm-datatypes.yang) +[Cisco-IOS-XR-ethernet-sat-datatypes.yang](Cisco-IOS-XR-ethernet-sat-datatypes.yang) +[Cisco-IOS-XR-freqsync-datatypes.yang](Cisco-IOS-XR-freqsync-datatypes.yang) +[Cisco-IOS-XR-infra-alarm-logger-datatypes.yang](Cisco-IOS-XR-infra-alarm-logger-datatypes.yang) +[Cisco-IOS-XR-infra-sla-datatypes.yang](Cisco-IOS-XR-infra-sla-datatypes.yang) +[Cisco-IOS-XR-ip-iarm-datatypes.yang](Cisco-IOS-XR-ip-iarm-datatypes.yang) +[Cisco-IOS-XR-ipv4-acl-datatypes.yang](Cisco-IOS-XR-ipv4-acl-datatypes.yang) +[Cisco-IOS-XR-ipv4-autorp-datatypes.yang](Cisco-IOS-XR-ipv4-autorp-datatypes.yang) +[Cisco-IOS-XR-ipv4-bgp-datatypes.yang](Cisco-IOS-XR-ipv4-bgp-datatypes.yang) +[Cisco-IOS-XR-ipv6-acl-datatypes.yang](Cisco-IOS-XR-ipv6-acl-datatypes.yang) +[Cisco-IOS-XR-l2-eth-infra-datatypes.yang](Cisco-IOS-XR-l2-eth-infra-datatypes.yang) +[Cisco-IOS-XR-lmp-datatypes.yang](Cisco-IOS-XR-lmp-datatypes.yang) +[Cisco-IOS-XR-manageability-object-tracking-datatypes.yang](Cisco-IOS-XR-manageability-object-tracking-datatypes.yang) +[Cisco-IOS-XR-manageability-perfmgmt-datatypes.yang](Cisco-IOS-XR-manageability-perfmgmt-datatypes.yang) +[Cisco-IOS-XR-mpls-ldp-cfg-datatypes.yang](Cisco-IOS-XR-mpls-ldp-cfg-datatypes.yang) +[Cisco-IOS-XR-mpls-ldp-oper-datatypes.yang](Cisco-IOS-XR-mpls-ldp-oper-datatypes.yang) +[Cisco-IOS-XR-mpls-te-datatypes.yang](Cisco-IOS-XR-mpls-te-datatypes.yang) +[Cisco-IOS-XR-pbr-datatypes.yang](Cisco-IOS-XR-pbr-datatypes.yang) +[Cisco-IOS-XR-portmode-datatypes.yang](Cisco-IOS-XR-portmode-datatypes.yang) +[Cisco-IOS-XR-ptp-datatypes.yang](Cisco-IOS-XR-ptp-datatypes.yang) +[Cisco-IOS-XR-segment-routing-srv6-datatypes.yang](Cisco-IOS-XR-segment-routing-srv6-datatypes.yang) +[Cisco-IOS-XR-tty-management-datatypes.yang](Cisco-IOS-XR-tty-management-datatypes.yang) +[Cisco-IOS-XR-tunnel-gre-datatypes.yang](Cisco-IOS-XR-tunnel-gre-datatypes.yang) +[cisco-semver.yang](cisco-semver.yang) +## Native Action Models +[Cisco-IOS-XR-Ethernet-SPAN-act.yang](Cisco-IOS-XR-Ethernet-SPAN-act.yang) +[Cisco-IOS-XR-appmgr-act.yang](Cisco-IOS-XR-appmgr-act.yang) +[Cisco-IOS-XR-asr9k-np-act.yang](Cisco-IOS-XR-asr9k-np-act.yang) +[Cisco-IOS-XR-authenticated-variable-act.yang](Cisco-IOS-XR-authenticated-variable-act.yang) +[Cisco-IOS-XR-cfgmgr-cfs-check-act.yang](Cisco-IOS-XR-cfgmgr-cfs-check-act.yang) +[Cisco-IOS-XR-cfgmgr-clear-inconsistency-act.yang](Cisco-IOS-XR-cfgmgr-clear-inconsistency-act.yang) +[Cisco-IOS-XR-cfgmgr-rollback-act.yang](Cisco-IOS-XR-cfgmgr-rollback-act.yang) +[Cisco-IOS-XR-clear-counters-act.yang](Cisco-IOS-XR-clear-counters-act.yang) +[Cisco-IOS-XR-cli-diff-act.yang](Cisco-IOS-XR-cli-diff-act.yang) +[Cisco-IOS-XR-cnbng-nal-act.yang](Cisco-IOS-XR-cnbng-nal-act.yang) +[Cisco-IOS-XR-controller-ains-act.yang](Cisco-IOS-XR-controller-ains-act.yang) +[Cisco-IOS-XR-controller-odu-clear-prbs-act.yang](Cisco-IOS-XR-controller-odu-clear-prbs-act.yang) +[Cisco-IOS-XR-controller-ots-otdr-act.yang](Cisco-IOS-XR-controller-ots-otdr-act.yang) +[Cisco-IOS-XR-controller-ots-tone-pattern-act.yang](Cisco-IOS-XR-controller-ots-tone-pattern-act.yang) +[Cisco-IOS-XR-controller-ots-tone-pattern-detect-act.yang](Cisco-IOS-XR-controller-ots-tone-pattern-detect-act.yang) +[Cisco-IOS-XR-crypto-act.yang](Cisco-IOS-XR-crypto-act.yang) +[Cisco-IOS-XR-drivers-media-eth-act.yang](Cisco-IOS-XR-drivers-media-eth-act.yang) +[Cisco-IOS-XR-ethernet-cfm-act.yang](Cisco-IOS-XR-ethernet-cfm-act.yang) +[Cisco-IOS-XR-ethernet-loopback-act.yang](Cisco-IOS-XR-ethernet-loopback-act.yang) +[Cisco-IOS-XR-ethernet-sat-act.yang](Cisco-IOS-XR-ethernet-sat-act.yang) +[Cisco-IOS-XR-hwmod-mpa-reload-act.yang](Cisco-IOS-XR-hwmod-mpa-reload-act.yang) +[Cisco-IOS-XR-infra-placed-act.yang](Cisco-IOS-XR-infra-placed-act.yang) +[Cisco-IOS-XR-infra-script-mgmt-act.yang](Cisco-IOS-XR-infra-script-mgmt-act.yang) +[Cisco-IOS-XR-infra-statsd-act.yang](Cisco-IOS-XR-infra-statsd-act.yang) +[Cisco-IOS-XR-install-act.yang](Cisco-IOS-XR-install-act.yang) +[Cisco-IOS-XR-install-augmented-act.yang](Cisco-IOS-XR-install-augmented-act.yang) +[Cisco-IOS-XR-install-search-act.yang](Cisco-IOS-XR-install-search-act.yang) +[Cisco-IOS-XR-ip-static-srv6-act.yang](Cisco-IOS-XR-ip-static-srv6-act.yang) +[Cisco-IOS-XR-ipv4-arp-act.yang](Cisco-IOS-XR-ipv4-arp-act.yang) +[Cisco-IOS-XR-ipv4-bgp-act.yang](Cisco-IOS-XR-ipv4-bgp-act.yang) +[Cisco-IOS-XR-ipv4-ospf-act.yang](Cisco-IOS-XR-ipv4-ospf-act.yang) +[Cisco-IOS-XR-ipv4-ping-act.yang](Cisco-IOS-XR-ipv4-ping-act.yang) +[Cisco-IOS-XR-ipv4-traceroute-act.yang](Cisco-IOS-XR-ipv4-traceroute-act.yang) +[Cisco-IOS-XR-ipv6-ospfv3-act.yang](Cisco-IOS-XR-ipv6-ospfv3-act.yang) +[Cisco-IOS-XR-ipv6-ping-act.yang](Cisco-IOS-XR-ipv6-ping-act.yang) +[Cisco-IOS-XR-ipv6-traceroute-act.yang](Cisco-IOS-XR-ipv6-traceroute-act.yang) +[Cisco-IOS-XR-isis-act.yang](Cisco-IOS-XR-isis-act.yang) +[Cisco-IOS-XR-key-package-act.yang](Cisco-IOS-XR-key-package-act.yang) +[Cisco-IOS-XR-lib-keychain-act.yang](Cisco-IOS-XR-lib-keychain-act.yang) +[Cisco-IOS-XR-lib-type6-act.yang](Cisco-IOS-XR-lib-type6-act.yang) +[Cisco-IOS-XR-linux-security-diskenc-act.yang](Cisco-IOS-XR-linux-security-diskenc-act.yang) +[Cisco-IOS-XR-linux-security-factory-reset-act.yang](Cisco-IOS-XR-linux-security-factory-reset-act.yang) +[Cisco-IOS-XR-lldp-clear-act.yang](Cisco-IOS-XR-lldp-clear-act.yang) +[Cisco-IOS-XR-lpts-ifib-act.yang](Cisco-IOS-XR-lpts-ifib-act.yang) +[Cisco-IOS-XR-lpts-pa-act.yang](Cisco-IOS-XR-lpts-pa-act.yang) +[Cisco-IOS-XR-lpts-pre-ifib-act.yang](Cisco-IOS-XR-lpts-pre-ifib-act.yang) +[Cisco-IOS-XR-mpls-ping-act.yang](Cisco-IOS-XR-mpls-ping-act.yang) +[Cisco-IOS-XR-mpls-te-act.yang](Cisco-IOS-XR-mpls-te-act.yang) +[Cisco-IOS-XR-mpls-traceroute-act.yang](Cisco-IOS-XR-mpls-traceroute-act.yang) +[Cisco-IOS-XR-ncs1001-ots-act.yang](Cisco-IOS-XR-ncs1001-ots-act.yang) +[Cisco-IOS-XR-olc-act.yang](Cisco-IOS-XR-olc-act.yang) +[Cisco-IOS-XR-ownership-act.yang](Cisco-IOS-XR-ownership-act.yang) +[Cisco-IOS-XR-ping-act.yang](Cisco-IOS-XR-ping-act.yang) +[Cisco-IOS-XR-platforms-common-tams-act.yang](Cisco-IOS-XR-platforms-common-tams-act.yang) +[Cisco-IOS-XR-pmengine-clear-act.yang](Cisco-IOS-XR-pmengine-clear-act.yang) +[Cisco-IOS-XR-remote-attestation-act.yang](Cisco-IOS-XR-remote-attestation-act.yang) +[Cisco-IOS-XR-segment-routing-act.yang](Cisco-IOS-XR-segment-routing-act.yang) +[Cisco-IOS-XR-shellutil-copy-act.yang](Cisco-IOS-XR-shellutil-copy-act.yang) +[Cisco-IOS-XR-shellutil-delete-act.yang](Cisco-IOS-XR-shellutil-delete-act.yang) +[Cisco-IOS-XR-sks-act.yang](Cisco-IOS-XR-sks-act.yang) +[Cisco-IOS-XR-smart-license-act.yang](Cisco-IOS-XR-smart-license-act.yang) +[Cisco-IOS-XR-snmp-test-trap-act.yang](Cisco-IOS-XR-snmp-test-trap-act.yang) +[Cisco-IOS-XR-spirit-install-act.yang](Cisco-IOS-XR-spirit-install-act.yang) +[Cisco-IOS-XR-ssh-act.yang](Cisco-IOS-XR-ssh-act.yang) +[Cisco-IOS-XR-switch-act.yang](Cisco-IOS-XR-switch-act.yang) +[Cisco-IOS-XR-syslog-act.yang](Cisco-IOS-XR-syslog-act.yang) +[Cisco-IOS-XR-sysmgr-act.yang](Cisco-IOS-XR-sysmgr-act.yang) +[Cisco-IOS-XR-system-reboot-act.yang](Cisco-IOS-XR-system-reboot-act.yang) +[Cisco-IOS-XR-traceroute-act.yang](Cisco-IOS-XR-traceroute-act.yang) +[Cisco-IOS-XR-upgrade-fpd-ng-act.yang](Cisco-IOS-XR-upgrade-fpd-ng-act.yang) +[Cisco-IOS-XR-yang-coverage-act.yang](Cisco-IOS-XR-yang-coverage-act.yang) +[Cisco-IOS-XR-zapdisk-act.yang](Cisco-IOS-XR-zapdisk-act.yang) +[Cisco-IOS-XR-ztp-act.yang](Cisco-IOS-XR-ztp-act.yang) +## Admin Models +[Cisco-IOS-XR-sysadmin-aaa-aaa-show.yang](Cisco-IOS-XR-sysadmin-aaa-aaa-show.yang) +[Cisco-IOS-XR-sysadmin-aaa-command-accounting.yang](Cisco-IOS-XR-sysadmin-aaa-command-accounting.yang) +[Cisco-IOS-XR-sysadmin-aaa-disaster-recovery.yang](Cisco-IOS-XR-sysadmin-aaa-disaster-recovery.yang) +[Cisco-IOS-XR-sysadmin-alarm-mgr.yang](Cisco-IOS-XR-sysadmin-alarm-mgr.yang) +[Cisco-IOS-XR-sysadmin-asic-errors-ael.yang](Cisco-IOS-XR-sysadmin-asic-errors-ael.yang) +[Cisco-IOS-XR-sysadmin-asr9k-envmon-types.yang](Cisco-IOS-XR-sysadmin-asr9k-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-asr9k-envmon-ui.yang](Cisco-IOS-XR-sysadmin-asr9k-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-card-mgr.yang](Cisco-IOS-XR-sysadmin-card-mgr.yang) +[Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg.yang](Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg.yang) +[Cisco-IOS-XR-sysadmin-clear-asr9k.yang](Cisco-IOS-XR-sysadmin-clear-asr9k.yang) +[Cisco-IOS-XR-sysadmin-clear-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-clear-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie.yang](Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie.yang) +[Cisco-IOS-XR-sysadmin-clear-ncs5500.yang](Cisco-IOS-XR-sysadmin-clear-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-clear-ncs5502.yang](Cisco-IOS-XR-sysadmin-clear-ncs5502.yang) +[Cisco-IOS-XR-sysadmin-clear-ncs55A1.yang](Cisco-IOS-XR-sysadmin-clear-ncs55A1.yang) +[Cisco-IOS-XR-sysadmin-cm.yang](Cisco-IOS-XR-sysadmin-cm.yang) +[Cisco-IOS-XR-sysadmin-controllers-asr9k.yang](Cisco-IOS-XR-sysadmin-controllers-asr9k.yang) +[Cisco-IOS-XR-sysadmin-controllers-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-controllers-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie.yang](Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie.yang) +[Cisco-IOS-XR-sysadmin-controllers-ncs5500.yang](Cisco-IOS-XR-sysadmin-controllers-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-controllers-ncs5501.yang](Cisco-IOS-XR-sysadmin-controllers-ncs5501.yang) +[Cisco-IOS-XR-sysadmin-controllers-ncs5502.yang](Cisco-IOS-XR-sysadmin-controllers-ncs5502.yang) +[Cisco-IOS-XR-sysadmin-controllers-ncs55A1.yang](Cisco-IOS-XR-sysadmin-controllers-ncs55A1.yang) +[Cisco-IOS-XR-sysadmin-debug-trace.yang](Cisco-IOS-XR-sysadmin-debug-trace.yang) +[Cisco-IOS-XR-sysadmin-ds.yang](Cisco-IOS-XR-sysadmin-ds.yang) +[Cisco-IOS-XR-sysadmin-dumper.yang](Cisco-IOS-XR-sysadmin-dumper.yang) +[Cisco-IOS-XR-sysadmin-entity-mib.yang](Cisco-IOS-XR-sysadmin-entity-mib.yang) +[Cisco-IOS-XR-sysadmin-entity-sensor-mib.yang](Cisco-IOS-XR-sysadmin-entity-sensor-mib.yang) +[Cisco-IOS-XR-sysadmin-entity-state-mib.yang](Cisco-IOS-XR-sysadmin-entity-state-mib.yang) +[Cisco-IOS-XR-sysadmin-entity-state-tc-mib.yang](Cisco-IOS-XR-sysadmin-entity-state-tc-mib.yang) +[Cisco-IOS-XR-sysadmin-eobc-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-eobc-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-clear.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-clear.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-debug.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-debug.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-mac.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-mac.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-summary.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-summary.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-trace.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-trace.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-types.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-types.yang) +[Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan.yang](Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan.yang) +[Cisco-IOS-XR-sysadmin-ext-alarm.yang](Cisco-IOS-XR-sysadmin-ext-alarm.yang) +[Cisco-IOS-XR-sysadmin-external-usb.yang](Cisco-IOS-XR-sysadmin-external-usb.yang) +[Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500.yang](Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-fabric-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-fabric-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502.yang](Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502.yang) +[Cisco-IOS-XR-sysadmin-fabric-ncs5500.yang](Cisco-IOS-XR-sysadmin-fabric-ncs5500.yang) +[Cisco-IOS-XR-sysadmin-fabric-ncs5501.yang](Cisco-IOS-XR-sysadmin-fabric-ncs5501.yang) +[Cisco-IOS-XR-sysadmin-fabric-ncs5502.yang](Cisco-IOS-XR-sysadmin-fabric-ncs5502.yang) +[Cisco-IOS-XR-sysadmin-fabric-qsfpdd.yang](Cisco-IOS-XR-sysadmin-fabric-qsfpdd.yang) +[Cisco-IOS-XR-sysadmin-fabric-types.yang](Cisco-IOS-XR-sysadmin-fabric-types.yang) +[Cisco-IOS-XR-sysadmin-fm.yang](Cisco-IOS-XR-sysadmin-fm.yang) +[Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service.yang](Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service.yang) +[Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd.yang](Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd.yang) +[Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace.yang](Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace.yang) +[Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd.yang](Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd.yang) +[Cisco-IOS-XR-sysadmin-fpd.yang](Cisco-IOS-XR-sysadmin-fpd.yang) +[Cisco-IOS-XR-sysadmin-fretta-envmon-types.yang](Cisco-IOS-XR-sysadmin-fretta-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-fretta-envmon-ui.yang](Cisco-IOS-XR-sysadmin-fretta-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-hw-module-xrv9k.yang](Cisco-IOS-XR-sysadmin-hw-module-xrv9k.yang) +[Cisco-IOS-XR-sysadmin-hw-module.yang](Cisco-IOS-XR-sysadmin-hw-module.yang) +[Cisco-IOS-XR-sysadmin-issu.yang](Cisco-IOS-XR-sysadmin-issu.yang) +[Cisco-IOS-XR-sysadmin-led-mgr-ui.yang](Cisco-IOS-XR-sysadmin-led-mgr-ui.yang) +[Cisco-IOS-XR-sysadmin-ncs1001-envmon-types.yang](Cisco-IOS-XR-sysadmin-ncs1001-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui.yang](Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-ncs1004-envmon-types.yang](Cisco-IOS-XR-sysadmin-ncs1004-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui.yang](Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-ncs1k-envmon-types.yang](Cisco-IOS-XR-sysadmin-ncs1k-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui.yang](Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-nto-misc-set-hostname.yang](Cisco-IOS-XR-sysadmin-nto-misc-set-hostname.yang) +[Cisco-IOS-XR-sysadmin-obfl-conf.yang](Cisco-IOS-XR-sysadmin-obfl-conf.yang) +[Cisco-IOS-XR-sysadmin-obfl.yang](Cisco-IOS-XR-sysadmin-obfl.yang) +[Cisco-IOS-XR-sysadmin-pm.yang](Cisco-IOS-XR-sysadmin-pm.yang) +[Cisco-IOS-XR-sysadmin-rmon.yang](Cisco-IOS-XR-sysadmin-rmon.yang) +[Cisco-IOS-XR-sysadmin-rvm-mgr.yang](Cisco-IOS-XR-sysadmin-rvm-mgr.yang) +[Cisco-IOS-XR-sysadmin-sdr-mgr.yang](Cisco-IOS-XR-sysadmin-sdr-mgr.yang) +[Cisco-IOS-XR-sysadmin-services.yang](Cisco-IOS-XR-sysadmin-services.yang) +[Cisco-IOS-XR-sysadmin-ship.yang](Cisco-IOS-XR-sysadmin-ship.yang) +[Cisco-IOS-XR-sysadmin-show-bmc.yang](Cisco-IOS-XR-sysadmin-show-bmc.yang) +[Cisco-IOS-XR-sysadmin-show-diag.yang](Cisco-IOS-XR-sysadmin-show-diag.yang) +[Cisco-IOS-XR-sysadmin-show-diskenc-status.yang](Cisco-IOS-XR-sysadmin-show-diskenc-status.yang) +[Cisco-IOS-XR-sysadmin-show-inv.yang](Cisco-IOS-XR-sysadmin-show-inv.yang) +[Cisco-IOS-XR-sysadmin-show-media.yang](Cisco-IOS-XR-sysadmin-show-media.yang) +[Cisco-IOS-XR-sysadmin-show-obfl.yang](Cisco-IOS-XR-sysadmin-show-obfl.yang) +[Cisco-IOS-XR-sysadmin-show-trace-cm.yang](Cisco-IOS-XR-sysadmin-show-trace-cm.yang) +[Cisco-IOS-XR-sysadmin-show-trace-debug-agent.yang](Cisco-IOS-XR-sysadmin-show-trace-debug-agent.yang) +[Cisco-IOS-XR-sysadmin-show-trace-instagt.yang](Cisco-IOS-XR-sysadmin-show-trace-instagt.yang) +[Cisco-IOS-XR-sysadmin-show-trace-instmgr.yang](Cisco-IOS-XR-sysadmin-show-trace-instmgr.yang) +[Cisco-IOS-XR-sysadmin-show-trace-vmm.yang](Cisco-IOS-XR-sysadmin-show-trace-vmm.yang) +[Cisco-IOS-XR-sysadmin-show-trace.yang](Cisco-IOS-XR-sysadmin-show-trace.yang) +[Cisco-IOS-XR-sysadmin-skywarp-envmon-types.yang](Cisco-IOS-XR-sysadmin-skywarp-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-skywarp-envmon-ui.yang](Cisco-IOS-XR-sysadmin-skywarp-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-sm-hw-mod.yang](Cisco-IOS-XR-sysadmin-sm-hw-mod.yang) +[Cisco-IOS-XR-sysadmin-sm-system-cluster.yang](Cisco-IOS-XR-sysadmin-sm-system-cluster.yang) +[Cisco-IOS-XR-sysadmin-sm.yang](Cisco-IOS-XR-sysadmin-sm.yang) +[Cisco-IOS-XR-sysadmin-syslog.yang](Cisco-IOS-XR-sysadmin-syslog.yang) +[Cisco-IOS-XR-sysadmin-system-cluster.yang](Cisco-IOS-XR-sysadmin-system-cluster.yang) +[Cisco-IOS-XR-sysadmin-system.yang](Cisco-IOS-XR-sysadmin-system.yang) +[Cisco-IOS-XR-sysadmin-tacacs-show-tacacs.yang](Cisco-IOS-XR-sysadmin-tacacs-show-tacacs.yang) +[Cisco-IOS-XR-sysadmin-tacacs-tacacs-server.yang](Cisco-IOS-XR-sysadmin-tacacs-tacacs-server.yang) +[Cisco-IOS-XR-sysadmin-tacacs-test-tacacs.yang](Cisco-IOS-XR-sysadmin-tacacs-test-tacacs.yang) +[Cisco-IOS-XR-sysadmin-time-of-day-timezone.yang](Cisco-IOS-XR-sysadmin-time-of-day-timezone.yang) +[Cisco-IOS-XR-sysadmin-types.yang](Cisco-IOS-XR-sysadmin-types.yang) +[Cisco-IOS-XR-sysadmin-uea-envmon-types.yang](Cisco-IOS-XR-sysadmin-uea-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-uea-envmon-ui.yang](Cisco-IOS-XR-sysadmin-uea-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-uptime.yang](Cisco-IOS-XR-sysadmin-uptime.yang) +[Cisco-IOS-XR-sysadmin-usb.yang](Cisco-IOS-XR-sysadmin-usb.yang) +[Cisco-IOS-XR-sysadmin-vm-mgr.yang](Cisco-IOS-XR-sysadmin-vm-mgr.yang) +[Cisco-IOS-XR-sysadmin-vm.yang](Cisco-IOS-XR-sysadmin-vm.yang) +[Cisco-IOS-XR-sysadmin-wd-memmon.yang](Cisco-IOS-XR-sysadmin-wd-memmon.yang) +[Cisco-IOS-XR-sysadmin-wd-sysmon.yang](Cisco-IOS-XR-sysadmin-wd-sysmon.yang) +[Cisco-IOS-XR-sysadmin-wdmon.yang](Cisco-IOS-XR-sysadmin-wdmon.yang) +[Cisco-IOS-XR-sysadmin-xrv9k-envmon-types.yang](Cisco-IOS-XR-sysadmin-xrv9k-envmon-types.yang) +[Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui.yang](Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui.yang) +[Cisco-IOS-XR-sysadmin-zapdisk.yang](Cisco-IOS-XR-sysadmin-zapdisk.yang) +## IETF Models +[ietf-datastores.yang](ietf-datastores.yang) +[ietf-inet-types.yang](ietf-inet-types.yang) +[ietf-interfaces.yang](ietf-interfaces.yang) +[ietf-netconf-acm.yang](ietf-netconf-acm.yang) +[ietf-netconf-monitoring.yang](ietf-netconf-monitoring.yang) +[ietf-netconf.yang](ietf-netconf.yang) +[ietf-restconf-monitoring.yang](ietf-restconf-monitoring.yang) +[ietf-syslog-types.yang](ietf-syslog-types.yang) +[ietf-yang-library.yang](ietf-yang-library.yang) +[ietf-yang-metadata.yang](ietf-yang-metadata.yang) +[ietf-yang-smiv2.yang](ietf-yang-smiv2.yang) +[ietf-yang-types.yang](ietf-yang-types.yang) +## openconfig Models +[openconfig-aaa-radius.yang](openconfig-aaa-radius.yang) +[openconfig-aaa-tacacs.yang](openconfig-aaa-tacacs.yang) +[openconfig-aaa-types.yang](openconfig-aaa-types.yang) +[openconfig-aaa.yang](openconfig-aaa.yang) +[openconfig-acl.yang](openconfig-acl.yang) +[openconfig-aft-common.yang](openconfig-aft-common.yang) +[openconfig-aft-ethernet.yang](openconfig-aft-ethernet.yang) +[openconfig-aft-ipv4.yang](openconfig-aft-ipv4.yang) +[openconfig-aft-ipv6.yang](openconfig-aft-ipv6.yang) +[openconfig-aft-mpls.yang](openconfig-aft-mpls.yang) +[openconfig-aft-network-instance.yang](openconfig-aft-network-instance.yang) +[openconfig-aft-pf.yang](openconfig-aft-pf.yang) +[openconfig-aft-types.yang](openconfig-aft-types.yang) +[openconfig-aft.yang](openconfig-aft.yang) +[openconfig-alarm-types.yang](openconfig-alarm-types.yang) +[openconfig-alarms.yang](openconfig-alarms.yang) +[openconfig-bfd.yang](openconfig-bfd.yang) +[openconfig-bgp-common-multiprotocol.yang](openconfig-bgp-common-multiprotocol.yang) +[openconfig-bgp-common-structure.yang](openconfig-bgp-common-structure.yang) +[openconfig-bgp-common.yang](openconfig-bgp-common.yang) +[openconfig-bgp-errors.yang](openconfig-bgp-errors.yang) +[openconfig-bgp-global.yang](openconfig-bgp-global.yang) +[openconfig-bgp-neighbor.yang](openconfig-bgp-neighbor.yang) +[openconfig-bgp-peer-group.yang](openconfig-bgp-peer-group.yang) +[openconfig-bgp-policy.yang](openconfig-bgp-policy.yang) +[openconfig-bgp-types.yang](openconfig-bgp-types.yang) +[openconfig-bgp.yang](openconfig-bgp.yang) +[openconfig-channel-monitor.yang](openconfig-channel-monitor.yang) +[openconfig-evpn-types.yang](openconfig-evpn-types.yang) +[openconfig-evpn.yang](openconfig-evpn.yang) +[openconfig-extensions.yang](openconfig-extensions.yang) +[openconfig-gribi.yang](openconfig-gribi.yang) +[openconfig-if-aggregate.yang](openconfig-if-aggregate.yang) +[openconfig-if-ethernet-ext.yang](openconfig-if-ethernet-ext.yang) +[openconfig-if-ethernet.yang](openconfig-if-ethernet.yang) +[openconfig-if-ip-ext.yang](openconfig-if-ip-ext.yang) +[openconfig-if-ip.yang](openconfig-if-ip.yang) +[openconfig-if-tunnel.yang](openconfig-if-tunnel.yang) +[openconfig-if-types.yang](openconfig-if-types.yang) +[openconfig-igmp-types.yang](openconfig-igmp-types.yang) +[openconfig-igmp.yang](openconfig-igmp.yang) +[openconfig-inet-types.yang](openconfig-inet-types.yang) +[openconfig-interfaces.yang](openconfig-interfaces.yang) +[openconfig-isis-lsdb-types.yang](openconfig-isis-lsdb-types.yang) +[openconfig-isis-lsp.yang](openconfig-isis-lsp.yang) +[openconfig-isis-policy.yang](openconfig-isis-policy.yang) +[openconfig-isis-routing.yang](openconfig-isis-routing.yang) +[openconfig-isis-types.yang](openconfig-isis-types.yang) +[openconfig-isis.yang](openconfig-isis.yang) +[openconfig-keychain-types.yang](openconfig-keychain-types.yang) +[openconfig-keychain.yang](openconfig-keychain.yang) +[openconfig-lacp.yang](openconfig-lacp.yang) +[openconfig-license.yang](openconfig-license.yang) +[openconfig-lldp-types.yang](openconfig-lldp-types.yang) +[openconfig-lldp.yang](openconfig-lldp.yang) +[openconfig-local-routing.yang](openconfig-local-routing.yang) +[openconfig-macsec-types.yang](openconfig-macsec-types.yang) +[openconfig-macsec.yang](openconfig-macsec.yang) +[openconfig-messages.yang](openconfig-messages.yang) +[openconfig-metadata.yang](openconfig-metadata.yang) +[openconfig-mpls-igp.yang](openconfig-mpls-igp.yang) +[openconfig-mpls-ldp.yang](openconfig-mpls-ldp.yang) +[openconfig-mpls-rsvp.yang](openconfig-mpls-rsvp.yang) +[openconfig-mpls-sr.yang](openconfig-mpls-sr.yang) +[openconfig-mpls-static.yang](openconfig-mpls-static.yang) +[openconfig-mpls-te.yang](openconfig-mpls-te.yang) +[openconfig-mpls-types.yang](openconfig-mpls-types.yang) +[openconfig-mpls.yang](openconfig-mpls.yang) +[openconfig-network-instance-l2.yang](openconfig-network-instance-l2.yang) +[openconfig-network-instance-l3.yang](openconfig-network-instance-l3.yang) +[openconfig-network-instance-types.yang](openconfig-network-instance-types.yang) +[openconfig-network-instance.yang](openconfig-network-instance.yang) +[openconfig-optical-amplifier.yang](openconfig-optical-amplifier.yang) +[openconfig-optical-attenuator.yang](openconfig-optical-attenuator.yang) +[openconfig-ospf-policy.yang](openconfig-ospf-policy.yang) +[openconfig-ospf-types.yang](openconfig-ospf-types.yang) +[openconfig-ospfv2-area-interface.yang](openconfig-ospfv2-area-interface.yang) +[openconfig-ospfv2-area.yang](openconfig-ospfv2-area.yang) +[openconfig-ospfv2-common.yang](openconfig-ospfv2-common.yang) +[openconfig-ospfv2-global.yang](openconfig-ospfv2-global.yang) +[openconfig-ospfv2-lsdb.yang](openconfig-ospfv2-lsdb.yang) +[openconfig-ospfv2.yang](openconfig-ospfv2.yang) +[openconfig-p4rt.yang](openconfig-p4rt.yang) +[openconfig-packet-match-types.yang](openconfig-packet-match-types.yang) +[openconfig-packet-match.yang](openconfig-packet-match.yang) +[openconfig-pf-forwarding-policies.yang](openconfig-pf-forwarding-policies.yang) +[openconfig-pf-interfaces.yang](openconfig-pf-interfaces.yang) +[openconfig-pf-path-groups.yang](openconfig-pf-path-groups.yang) +[openconfig-pf-srte.yang](openconfig-pf-srte.yang) +[openconfig-pim-types.yang](openconfig-pim-types.yang) +[openconfig-pim.yang](openconfig-pim.yang) +[openconfig-platform-cpu.yang](openconfig-platform-cpu.yang) +[openconfig-platform-ext.yang](openconfig-platform-ext.yang) +[openconfig-platform-fan.yang](openconfig-platform-fan.yang) +[openconfig-platform-linecard.yang](openconfig-platform-linecard.yang) +[openconfig-platform-port.yang](openconfig-platform-port.yang) +[openconfig-platform-psu.yang](openconfig-platform-psu.yang) +[openconfig-platform-software.yang](openconfig-platform-software.yang) +[openconfig-platform-transceiver.yang](openconfig-platform-transceiver.yang) +[openconfig-platform-types.yang](openconfig-platform-types.yang) +[openconfig-platform.yang](openconfig-platform.yang) +[openconfig-policy-forwarding.yang](openconfig-policy-forwarding.yang) +[openconfig-policy-types.yang](openconfig-policy-types.yang) +[openconfig-procmon.yang](openconfig-procmon.yang) +[openconfig-qos-elements.yang](openconfig-qos-elements.yang) +[openconfig-qos-interfaces.yang](openconfig-qos-interfaces.yang) +[openconfig-qos-mem-mgmt.yang](openconfig-qos-mem-mgmt.yang) +[openconfig-qos-types.yang](openconfig-qos-types.yang) +[openconfig-qos.yang](openconfig-qos.yang) +[openconfig-rib-bgp-attributes.yang](openconfig-rib-bgp-attributes.yang) +[openconfig-rib-bgp-shared-attributes.yang](openconfig-rib-bgp-shared-attributes.yang) +[openconfig-rib-bgp-table-attributes.yang](openconfig-rib-bgp-table-attributes.yang) +[openconfig-rib-bgp-tables.yang](openconfig-rib-bgp-tables.yang) +[openconfig-rib-bgp-types.yang](openconfig-rib-bgp-types.yang) +[openconfig-rib-bgp.yang](openconfig-rib-bgp.yang) +[openconfig-routing-policy.yang](openconfig-routing-policy.yang) +[openconfig-rsvp-sr-ext.yang](openconfig-rsvp-sr-ext.yang) +[openconfig-sampling-sflow.yang](openconfig-sampling-sflow.yang) +[openconfig-segment-routing-types.yang](openconfig-segment-routing-types.yang) +[openconfig-segment-routing.yang](openconfig-segment-routing.yang) +[openconfig-system-grpc.yang](openconfig-system-grpc.yang) +[openconfig-system-logging.yang](openconfig-system-logging.yang) +[openconfig-system-terminal.yang](openconfig-system-terminal.yang) +[openconfig-system.yang](openconfig-system.yang) +[openconfig-telemetry-types.yang](openconfig-telemetry-types.yang) +[openconfig-telemetry.yang](openconfig-telemetry.yang) +[openconfig-terminal-device.yang](openconfig-terminal-device.yang) +[openconfig-transport-line-common.yang](openconfig-transport-line-common.yang) +[openconfig-transport-line-protection.yang](openconfig-transport-line-protection.yang) +[openconfig-transport-types.yang](openconfig-transport-types.yang) +[openconfig-types.yang](openconfig-types.yang) +[openconfig-vlan-types.yang](openconfig-vlan-types.yang) +[openconfig-vlan.yang](openconfig-vlan.yang) +[openconfig-yang-types.yang](openconfig-yang-types.yang) +[cisco-xr-openconfig-acl-deviations.yang](cisco-xr-openconfig-acl-deviations.yang) +[cisco-xr-openconfig-alarms-deviations.yang](cisco-xr-openconfig-alarms-deviations.yang) +[cisco-xr-openconfig-bfd-deviations.yang](cisco-xr-openconfig-bfd-deviations.yang) +[cisco-xr-openconfig-bgp-policy-deviations.yang](cisco-xr-openconfig-bgp-policy-deviations.yang) +[cisco-xr-openconfig-if-ethernet-deviations.yang](cisco-xr-openconfig-if-ethernet-deviations.yang) +[cisco-xr-openconfig-if-ip-deviations.yang](cisco-xr-openconfig-if-ip-deviations.yang) +[cisco-xr-openconfig-if-ip-ext-deviations.yang](cisco-xr-openconfig-if-ip-ext-deviations.yang) +[cisco-xr-openconfig-if-tunnel-deviations.yang](cisco-xr-openconfig-if-tunnel-deviations.yang) +[cisco-xr-openconfig-interfaces-deviations.yang](cisco-xr-openconfig-interfaces-deviations.yang) +[cisco-xr-openconfig-isis-policy-deviations.yang](cisco-xr-openconfig-isis-policy-deviations.yang) +[cisco-xr-openconfig-lacp-deviations.yang](cisco-xr-openconfig-lacp-deviations.yang) +[cisco-xr-openconfig-local-routing-deviations.yang](cisco-xr-openconfig-local-routing-deviations.yang) +[cisco-xr-openconfig-macsec-deviations.yang](cisco-xr-openconfig-macsec-deviations.yang) +[cisco-xr-openconfig-network-instance-deviations.yang](cisco-xr-openconfig-network-instance-deviations.yang) +[cisco-xr-openconfig-optical-amplifier-deviations.yang](cisco-xr-openconfig-optical-amplifier-deviations.yang) +[cisco-xr-openconfig-platform-deviations-ncs1004.yang](cisco-xr-openconfig-platform-deviations-ncs1004.yang) +[cisco-xr-openconfig-platform-deviations-spi.yang](cisco-xr-openconfig-platform-deviations-spi.yang) +[cisco-xr-openconfig-platform-deviations-spirit.yang](cisco-xr-openconfig-platform-deviations-spirit.yang) +[cisco-xr-openconfig-platform-port-deviations.yang](cisco-xr-openconfig-platform-port-deviations.yang) +[cisco-xr-openconfig-platform-psu-deviations.yang](cisco-xr-openconfig-platform-psu-deviations.yang) +[cisco-xr-openconfig-platform-transceiver-deviations-routing.yang](cisco-xr-openconfig-platform-transceiver-deviations-routing.yang) +[cisco-xr-openconfig-platform-transceiver-deviations.yang](cisco-xr-openconfig-platform-transceiver-deviations.yang) +[cisco-xr-openconfig-qos-deviations.yang](cisco-xr-openconfig-qos-deviations.yang) +[cisco-xr-openconfig-routing-policy-deviations.yang](cisco-xr-openconfig-routing-policy-deviations.yang) +[cisco-xr-openconfig-rsvp-sr-ext-deviations.yang](cisco-xr-openconfig-rsvp-sr-ext-deviations.yang) +[cisco-xr-openconfig-system-deviations.yang](cisco-xr-openconfig-system-deviations.yang) +[cisco-xr-openconfig-system-grpc-deviations.yang](cisco-xr-openconfig-system-grpc-deviations.yang) +[cisco-xr-openconfig-telemetry-deviations.yang](cisco-xr-openconfig-telemetry-deviations.yang) +[cisco-xr-openconfig-terminal-device-deviations-ncs1k.yang](cisco-xr-openconfig-terminal-device-deviations-ncs1k.yang) +[cisco-xr-openconfig-terminal-device-deviations-routing.yang](cisco-xr-openconfig-terminal-device-deviations-routing.yang) +[cisco-xr-openconfig-transport-line-common-deviations.yang](cisco-xr-openconfig-transport-line-common-deviations.yang) +[cisco-xr-openconfig-transport-line-protection-deviations.yang](cisco-xr-openconfig-transport-line-protection-deviations.yang) +[cisco-xr-openconfig-vlan-deviations.yang](cisco-xr-openconfig-vlan-deviations.yang) +## Tail-F Models +[tailf-aaa.yang](tailf-aaa.yang) +[tailf-actions.yang](tailf-actions.yang) +[tailf-cli-extensions.yang](tailf-cli-extensions.yang) +[tailf-common-monitoring.yang](tailf-common-monitoring.yang) +[tailf-common-query.yang](tailf-common-query.yang) +[tailf-common.yang](tailf-common.yang) +[tailf-confd-monitoring.yang](tailf-confd-monitoring.yang) +[tailf-meta-extensions.yang](tailf-meta-extensions.yang) +[tailf-netconf-monitoring.yang](tailf-netconf-monitoring.yang) +[tailf-netconf-query.yang](tailf-netconf-query.yang) +[tailf-xsd-types.yang](tailf-xsd-types.yang) +## Other supporting Models +[CISCO-ENTITY-FRU-CONTROL-MIB.yang](CISCO-ENTITY-FRU-CONTROL-MIB.yang) +[Cisco-IOS-XR-alarmgr-server-oper-deviations.yang](Cisco-IOS-XR-alarmgr-server-oper-deviations.yang) +[Cisco-IOS-XR-filesysinv-show-oper-deviations.yang](Cisco-IOS-XR-filesysinv-show-oper-deviations.yang) +[Cisco-IOS-XR-hw-module-cfg-deviations.yang](Cisco-IOS-XR-hw-module-cfg-deviations.yang) +[Cisco-IOS-XR-ipv4-bgp-cfg-8000-deviations.yang](Cisco-IOS-XR-ipv4-bgp-cfg-8000-deviations.yang) +[Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations.yang](Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations.yang) +[Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations.yang](Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations.yang) +[Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations.yang](Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations.yang) +[Cisco-IOS-XR-linux-security-factory-reset-act-deviations.yang](Cisco-IOS-XR-linux-security-factory-reset-act-deviations.yang) +[Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations.yang](Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations.yang) +[Cisco-IOS-XR-openconfig-isis-ext.yang](Cisco-IOS-XR-openconfig-isis-ext.yang) +[Cisco-IOS-XR-openconfig-mpls-static-ext.yang](Cisco-IOS-XR-openconfig-mpls-static-ext.yang) +[Cisco-IOS-XR-openconfig-system-terminal-ext.yang](Cisco-IOS-XR-openconfig-system-terminal-ext.yang) +[Cisco-IOS-XR-openconfig-terminal-device-ext.yang](Cisco-IOS-XR-openconfig-terminal-device-ext.yang) +[Cisco-IOS-XR-smart-license-errors.yang](Cisco-IOS-XR-smart-license-errors.yang) +[INET-ADDRESS-MIB.yang](INET-ADDRESS-MIB.yang) +[IPV6-TC.yang](IPV6-TC.yang) +[SNMP-COMMUNITY-MIB.yang](SNMP-COMMUNITY-MIB.yang) +[SNMP-FRAMEWORK-MIB.yang](SNMP-FRAMEWORK-MIB.yang) +[SNMP-MPD-MIB.yang](SNMP-MPD-MIB.yang) +[SNMP-NOTIFICATION-MIB.yang](SNMP-NOTIFICATION-MIB.yang) +[SNMP-TARGET-MIB.yang](SNMP-TARGET-MIB.yang) +[SNMP-USER-BASED-SM-MIB.yang](SNMP-USER-BASED-SM-MIB.yang) +[SNMP-VIEW-BASED-ACM-MIB.yang](SNMP-VIEW-BASED-ACM-MIB.yang) +[SNMPv2-MIB.yang](SNMPv2-MIB.yang) +[SNMPv2-SMI.yang](SNMPv2-SMI.yang) +[SNMPv2-TC.yang](SNMPv2-TC.yang) +[bh_cardmgr.yang](bh_cardmgr.yang) +[bh_esd.yang](bh_esd.yang) +[canb_cli_clear.yang](canb_cli_clear.yang) +[ccc.yang](ccc.yang) +[cisco-xr-ietf-netconf-acm-deviations.yang](cisco-xr-ietf-netconf-acm-deviations.yang) +[cisco-xr-ietf-netconf-monitoring-deviations.yang](cisco-xr-ietf-netconf-monitoring-deviations.yang) +[cisco-xr-ietf-yang-library-deviations.yang](cisco-xr-ietf-yang-library-deviations.yang) +[control_driver.yang](control_driver.yang) +[ctrl_driver.yang](ctrl_driver.yang) +[daisyduke_driver.yang](daisyduke_driver.yang) +[dd_driver.yang](dd_driver.yang) +[fit.yang](fit.yang) +[gaspp.yang](gaspp.yang) +[iana-crypt-hash.yang](iana-crypt-hash.yang) +[iana-if-type.yang](iana-if-type.yang) +[nc-notifications.yang](nc-notifications.yang) +[notifications.yang](notifications.yang) +[ntp.yang](ntp.yang) +[opertest1.yang](opertest1.yang) +[valtest.yang](valtest.yang) +[vplatform.yang](vplatform.yang) +## Backward incompatible changes +[BIC](BIC) +## Inconsistent Models +[ncs5700](ncs5700) +[ncs540l](ncs540l) +[ncs1010](ncs1010) +[ncs1k](ncs1k) +[ncs540l-aarch64](ncs540l-aarch64) +[8000](8000) diff --git a/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-cnbng-nal-oper.MD b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-cnbng-nal-oper.MD new file mode 100644 index 000000000..c957975a6 --- /dev/null +++ b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-cnbng-nal-oper.MD @@ -0,0 +1,34 @@ +## Cisco-IOS-XR-cnbng-nal-oper.yang + +- [XPaths Obsoleted](#xpaths-obsoleted) +- [XPaths Deprecated](#xpaths-deprecated) +- [XPaths Added](#xpaths-added) +- [XPaths Removed](#xpaths-removed) +- [XPaths Modified](#xpaths-modified) + +### Description + +Removed dynamic route history query from schema. + +## XPaths Obsoleted + +N/A + +## XPaths Deprecated + +N/A + +## XPaths Added + +N/A + +## XPaths Removed + +- (L4401) {NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-DETAIL-DATA}/unique-detail[session-data_session-brief_cp-id][session-data_up-id] +- (L4406) {NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-DETAIL-DATA}/unique-detail[session-data_session-brief_cp-id][session-data_up-id]/session-data_session-brief_cp-id +- (L4411) {NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-DETAIL-DATA}/unique-detail[session-data_session-brief_cp-id][session-data_up-id]/session-data_up-id + +## XPaths Modified + +N/A + diff --git a/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-invmgr-oper.MD b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-invmgr-oper.MD new file mode 100644 index 000000000..f8e70ad27 --- /dev/null +++ b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-invmgr-oper.MD @@ -0,0 +1,32 @@ +## Cisco-IOS-XR-invmgr-oper.yang + +- [XPaths Obsoleted](#xpaths-obsoleted) +- [XPaths Deprecated](#xpaths-deprecated) +- [XPaths Added](#xpaths-added) +- [XPaths Removed](#xpaths-removed) +- [XPaths Modified](#xpaths-modified) + +### Description + +leaf threshold-value changed from uint32 to int32 in order to display negative values. + +## XPaths Obsoleted + +N/A + +## XPaths Deprecated + +- (L127) /{ATTRIBUTES}/attributes + +## XPaths Added + +N/A + +## XPaths Removed + +- (L127) /{ATTRIBUTES}/attributes + +## XPaths Modified + +N/A + diff --git a/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-iosxrwbd-qos-oper.MD b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-iosxrwbd-qos-oper.MD new file mode 100644 index 000000000..fc9d4278b --- /dev/null +++ b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-iosxrwbd-qos-oper.MD @@ -0,0 +1,32 @@ +## Cisco-IOS-XR-iosxrwbd-qos-oper.yang + +- [XPaths Obsoleted](#xpaths-obsoleted) +- [XPaths Deprecated](#xpaths-deprecated) +- [XPaths Added](#xpaths-added) +- [XPaths Removed](#xpaths-removed) +- [XPaths Modified](#xpaths-modified) + +### Description + +BVI changes. + +## XPaths Obsoleted + +N/A + +## XPaths Deprecated + +N/A + +## XPaths Added + +N/A + +## XPaths Removed + +- (L1117) {DPA-QOSEA-SHOW-IF-QOS-INFO-ST}/interface-bandwidth-kbps + +## XPaths Modified + +N/A + diff --git a/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-l2vpn-oper.MD b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-l2vpn-oper.MD new file mode 100644 index 000000000..7d3fd27e2 --- /dev/null +++ b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-l2vpn-oper.MD @@ -0,0 +1,33 @@ +## Cisco-IOS-XR-l2vpn-oper.yang + +- [XPaths Obsoleted](#xpaths-obsoleted) +- [XPaths Deprecated](#xpaths-deprecated) +- [XPaths Added](#xpaths-added) +- [XPaths Removed](#xpaths-removed) +- [XPaths Modified](#xpaths-modified) + +### Description + +Remove arp-nd-delete-pending from l2fib-evpn-ip4mac and l2fib-evpn-ip6mac. + +## XPaths Obsoleted + +N/A + +## XPaths Deprecated + +N/A + +## XPaths Added + +N/A + +## XPaths Removed + +- (L3118) {L2FIB-EVPN-IPMAC-INFO}/arp-nd-delete-pending +- (L3118) {L2FIB-EVPN-IPMAC-INFO}/arp-nd-delete-pending + +## XPaths Modified + +N/A + diff --git a/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-ncs5500-qos-oper.MD b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-ncs5500-qos-oper.MD new file mode 100644 index 000000000..721c667c8 --- /dev/null +++ b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-ncs5500-qos-oper.MD @@ -0,0 +1,32 @@ +## Cisco-IOS-XR-ncs5500-qos-oper.yang + +- [XPaths Obsoleted](#xpaths-obsoleted) +- [XPaths Deprecated](#xpaths-deprecated) +- [XPaths Added](#xpaths-added) +- [XPaths Removed](#xpaths-removed) +- [XPaths Modified](#xpaths-modified) + +### Description + +Bundle 64 bit bandwidth changes. + +## XPaths Obsoleted + +N/A + +## XPaths Deprecated + +N/A + +## XPaths Added + +N/A + +## XPaths Removed + +- (L1124) {DPA-QOSEA-SHOW-IF-QOS-INFO-ST}/interface-bandwidth-kbps + +## XPaths Modified + +N/A + diff --git a/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-pmengine-clear-act.MD b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-pmengine-clear-act.MD new file mode 100644 index 000000000..9caaf036a --- /dev/null +++ b/vendor/cisco/xr/792/BIC/Cisco-IOS-XR-pmengine-clear-act.MD @@ -0,0 +1,33 @@ +## Cisco-IOS-XR-pmengine-clear-act.yang + +- [XPaths Obsoleted](#xpaths-obsoleted) +- [XPaths Deprecated](#xpaths-deprecated) +- [XPaths Added](#xpaths-added) +- [XPaths Removed](#xpaths-removed) +- [XPaths Modified](#xpaths-modified) + +### Description + +mandatory true. + +## XPaths Obsoleted + +N/A + +## XPaths Deprecated + +N/A + +## XPaths Added + +- (L64) /controller +- (L70) /pm + +## XPaths Removed + +N/A + +## XPaths Modified + +N/A + diff --git a/vendor/cisco/xr/792/CISCO-ENTITY-FRU-CONTROL-MIB.yang b/vendor/cisco/xr/792/CISCO-ENTITY-FRU-CONTROL-MIB.yang new file mode 100644 index 000000000..f4de503b6 --- /dev/null +++ b/vendor/cisco/xr/792/CISCO-ENTITY-FRU-CONTROL-MIB.yang @@ -0,0 +1,555 @@ +module CISCO-ENTITY-FRU-CONTROL-MIB { + namespace "http://tail-f.com/ns/mibs/CISCO-ENTITY-FRU-CONTROL-MIB/200311240000Z"; + prefix CISCO_ENTITY_FRU_CONTROL_MIB; + + import ietf-yang-types { + prefix yang; + } + + import tailf-common { + prefix tailf; + } + + import SNMPv2-TC { + prefix SNMPv2-TC; + } + + import INET-ADDRESS-MIB { + prefix INET-ADDRESS-MIB; + } + + import Cisco-IOS-XR-sysadmin-entity-mib { + prefix ENTITY-MIB; + } + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision "2003-11-24" { + } + tailf:id ""; + tailf:snmp-mib-module-name "CISCO-ENTITY-FRU-CONTROL-MIB"; + container CISCO-ENTITY-FRU-CONTROL-MIB { + container cefcFRUPower { + config false; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1"; + leaf cefcMaxDefaultInLinePower { + type cefcMaxDefaultInLinePowerType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.3"; + default "12500"; + } + leaf cefcMaxDefaultHighInLinePower { + type uint32; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.5"; + } + } + container cefcMIBNotificationEnables { + config false; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.3"; + leaf cefcMIBEnableStatusNotification { + type SNMPv2-TC:TruthValue; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.3.1"; + default "false"; + } + } + container cefcFRUPowerSupplyGroupTable { + config false; + list cefcFRUPowerSupplyGroupEntry { + key "entPhysicalIndex"; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.1"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf cefcPowerRedundancyMode { + type PowerRedundancyType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.1.1.1"; + } + leaf cefcPowerUnits { + type string { + length "0 .. 255"; + } + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.1.1.2"; + config false; + } + leaf cefcTotalAvailableCurrent { + type FRUCurrentType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.1.1.3"; + config false; + } + leaf cefcTotalDrawnCurrent { + type FRUCurrentType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.1.1.4"; + config false; + } + leaf cefcPowerRedundancyOperMode { + type PowerRedundancyType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.1.1.5"; + config false; + } + } + } + container cefcFRUPowerStatusTable { + config false; + list cefcFRUPowerStatusEntry { + key "entPhysicalIndex"; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.2"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf cefcFRUPowerAdminStatus { + type PowerAdminType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.2.1.1"; + config false; + } + leaf cefcFRUPowerOperStatus { + type PowerOperType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.2.1.2"; + config false; + } + leaf cefcFRUCurrent { + type FRUCurrentType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.2.1.3"; + config false; + } + } + } + container cefcFRUPowerSupplyValueTable { + config false; + list cefcFRUPowerSupplyValueEntry { + key "entPhysicalIndex"; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.4"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf cefcFRUTotalSystemCurrent { + type FRUCurrentType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.4.1.1"; + } + leaf cefcFRUDrawnSystemCurrent { + type FRUCurrentType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.4.1.2"; + } + leaf cefcFRUTotalInlineCurrent { + type FRUCurrentType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.4.1.3"; + } + leaf cefcFRUDrawnInlineCurrent { + type FRUCurrentType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.1.4.1.4"; + } + } + } + container cefcModuleTable { + config false; + list cefcModuleEntry { + key "entPhysicalIndex"; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf cefcModuleAdminStatus { + type ModuleAdminType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.1"; + config false; + } + leaf cefcModuleOperStatus { + type ModuleOperType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.2"; + config false; + } + leaf cefcModuleResetReason { + type ModuleResetReasonType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.3"; + config false; + } + leaf cefcModuleStatusLastChangeTime { + type yang:timestamp; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.4"; + config false; + } + leaf cefcModuleLastClearConfigTime { + type yang:timestamp; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.5"; + config false; + } + leaf cefcModuleResetReasonDescription { + type string { + length "0 .. 255"; + } + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.6"; + config false; + } + leaf cefcModuleStateChangeReasonDescr { + type string { + length "0 .. 255"; + } + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.7"; + config false; + } + leaf cefcModuleUpTime { + type FRUTimeSeconds; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.1.1.8"; + config false; + } + } + } + container cefcIntelliModuleTable { + config false; + list cefcIntelliModuleEntry { + key "entPhysicalIndex"; + tailf:sort-order "snmp"; + config false; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.2"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf cefcIntelliModuleIPAddrType { + type INET-ADDRESS-MIB:InetAddressType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.2.1.1"; + config false; + } + leaf cefcIntelliModuleIPAddr { + type INET-ADDRESS-MIB:InetAddress; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.2.2.1.2"; + config false; + } + } + } + container cefcFanTrayStatusTable { + config false; + list cefcFanTrayStatusEntry { + key "entPhysicalIndex"; + tailf:sort-order "snmp"; + config false; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.4.1"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf cefcFanTrayOperStatus { + type cefcFanTrayOperStatusType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.4.1.1.1"; + config false; + } + } + } + container cefcPhysicalTable { + config false; + list cefcPhysicalEntry { + key "entPhysicalIndex"; + tailf:sort-order "snmp"; + config false; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.5.1"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf cefcPhysicalStatus { + type cefcPhysicalStatusType; + tailf:snmp-oid "1.3.6.1.4.1.9.9.117.1.5.1.1.1"; + config false; + } + } + } + } + + typedef PowerRedundancyType { + type enumeration { + enum notsupported { + value 1; + } + enum redundant { + value 2; + } + enum combined { + value 3; + } + } + } + + typedef PowerAdminType { + type enumeration { + enum on { + value 1; + } + enum off { + value 2; + } + enum inlineAuto { + value 3; + } + enum inlineOn { + value 4; + } + } + } + + typedef PowerOperType { + type enumeration { + enum offEnvOther { + value 1; + } + enum on { + value 2; + } + enum offAdmin { + value 3; + } + enum offDenied { + value 4; + } + enum offEnvPower { + value 5; + } + enum offEnvTemp { + value 6; + } + enum offEnvFan { + value 7; + } + enum failed { + value 8; + } + enum onButFanFail { + value 9; + } + } + } + + typedef FRUCurrentType { + type int32 { + range "-1000000000 .. 1000000000"; + } + } + + typedef ModuleAdminType { + type enumeration { + enum enabled { + value 1; + } + enum disabled { + value 2; + } + enum reset { + value 3; + } + enum outOfServiceAdmin { + value 4; + } + } + } + + typedef ModuleOperType { + type enumeration { + enum unknown { + value 1; + } + enum ok { + value 2; + } + enum disabled { + value 3; + } + enum okButDiagFailed { + value 4; + } + enum boot { + value 5; + } + enum selfTest { + value 6; + } + enum failed { + value 7; + } + enum missing { + value 8; + } + enum mismatchWithParent { + value 9; + } + enum mismatchConfig { + value 10; + } + enum diagFailed { + value 11; + } + enum dormant { + value 12; + } + enum outOfServiceAdmin { + value 13; + } + enum outOfServiceEnvTemp { + value 14; + } + enum poweredDown { + value 15; + } + enum poweredUp { + value 16; + } + enum powerDenied { + value 17; + } + enum powerCycled { + value 18; + } + enum okButPowerOverWarning { + value 19; + } + enum okButPowerOverCritical { + value 20; + } + enum updatingFPD { + value 21; + } + } + } + + typedef ModuleResetReasonType { + type enumeration { + enum unknown { + value 1; + } + enum powerUp { + value 2; + } + enum parityError { + value 3; + } + enum clearConfigReset { + value 4; + } + enum manualReset { + value 5; + } + enum watchDogTimeoutReset { + value 6; + } + enum resourceOverflowReset { + value 7; + } + enum missingTaskReset { + value 8; + } + enum lowVoltageReset { + value 9; + } + enum controllerReset { + value 10; + } + enum systemReset { + value 11; + } + enum switchoverReset { + value 12; + } + enum upgradeReset { + value 13; + } + enum downgradeReset { + value 14; + } + enum cacheErrorReset { + value 15; + } + enum deviceDriverReset { + value 16; + } + enum softwareExceptionReset { + value 17; + } + enum restoreConfigReset { + value 18; + } + enum abortRevReset { + value 19; + } + enum burnBootReset { + value 20; + } + enum standbyCdHealthierReset { + value 21; + } + enum nonNativeConfigClearReset { + value 22; + } + enum memoryProtectionErrorReset { + value 23; + } + } + } + + typedef FRUTimeSeconds { + type uint32 { + range "0 .. 4294967295"; + } + } + + typedef cefcMaxDefaultInLinePowerType { + type int32 { + range "0 .. 12500"; + } + } + + typedef cefcFanTrayOperStatusType { + type enumeration { + enum unknown { + value 1; + } + enum up { + value 2; + } + enum down { + value 3; + } + enum warning { + value 4; + } + } + } + + typedef cefcPhysicalStatusType { + type enumeration { + enum other { + value 1; + } + enum supported { + value 2; + } + enum unsupported { + value 3; + } + enum incompatible { + value 4; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-fib-platform-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-fib-platform-cfg.yang new file mode 100644 index 000000000..9a0986a61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-fib-platform-cfg.yang @@ -0,0 +1,62 @@ +module Cisco-IOS-XR-8000-fib-platform-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-8000-fib-platform-cfg"; + prefix xr-8000-fib-platform-cfg; + + 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 8000-fib-platform package configuration. + + This module contains definitions + for the following management objects: + cef: Establish CEF configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cef { + description + "Establish CEF configuration"; + container load-balance { + description + "Specify Load balancing algorithm"; + container hash { + description + "Specify Hash adjust"; + leaf rotate { + type uint32 { + range "1..5"; + } + description + "Router-ID is bypassed when hash rotate count + is used"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper-sub1.yang new file mode 100644 index 000000000..2217432dc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper-sub1.yang @@ -0,0 +1,280 @@ +submodule Cisco-IOS-XR-8000-lpts-oper-sub1 { + belongs-to Cisco-IOS-XR-8000-lpts-oper { + prefix Cisco-IOS-XR-8000-lpts-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR 8000-lpts package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-26 { + description + "Add policer-level leaf to grouping PL-PIFIB-POLICER-INFO + 2022-05-05 + Add is_compressed leaf to grouping PL-PIFIB-SHOW-ENTRY"; + semver:module-version "1.1.0"; + } + revision 2021-03-30 { + description + "LPTS Pre-ifib Oper Yang added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PL-PIFIB-SHOW-OG-ENTRY { + description + "LPTS TCAM Pre-IFIB OG Entry Information"; + leaf l3protocol { + type uint32; + description + "Layer 3 Protocol"; + } + leaf l4protocol { + type uint32; + description + "Layer 4 Protocol"; + } + leaf intf-handle { + type uint32; + description + "Interface Handle"; + } + leaf local-addr { + type string; + description + "Destination IP Address"; + } + leaf remote-addr { + type string; + description + "Source IP Address"; + } + leaf local-prefix-len { + type uint32; + description + "Local Prefix Length"; + } + leaf remote-prefix-len { + type uint32; + description + "Remote Prefix Length"; + } + leaf remote-port { + type uint16; + description + "Remote port"; + } + leaf policer-id { + type uint32; + description + "Policer Pointer"; + } + leaf accepted { + type uint64; + description + "Accepted Packets Counter"; + } + leaf dropped { + type uint64; + description + "Dropped Packets Counter"; + } + leaf flow-type { + type uint16; + description + "Flow type"; + } + leaf npu-id { + type uint32; + description + "npu id"; + } + leaf vrf { + type uint32; + description + "vrf"; + } + leaf queue-priority { + type uint16; + description + "punt queue priority"; + } + leaf entry-stat { + type boolean; + description + "Entry has stat or share global FT stat"; + } + leaf is-compressed { + type boolean; + description + "True if entry is compressed"; + } + leaf remote-object-group-id { + type uint16; + description + "Source object ID"; + } + } + + grouping PL-PIFIB-SHOW-ENTRY { + description + "LPTS TCAM Pre-IFIB Entry Information"; + leaf l3protocol { + type uint32; + description + "Layer 3 Protocol"; + } + leaf l4protocol { + type uint32; + description + "Layer 4 Protocol"; + } + leaf intf-handle { + type uint32; + description + "Interface Handle"; + } + leaf local-addr { + type string; + description + "Destination IP Address"; + } + leaf remote-addr { + type string; + description + "Source IP Address"; + } + leaf local-prefix-len { + type uint32; + description + "Local Prefix Length"; + } + leaf remote-prefix-len { + type uint32; + description + "Remote Prefix Length"; + } + leaf remote-port { + type uint16; + description + "Remote port"; + } + leaf policer-id { + type uint32; + description + "Policer Pointer"; + } + leaf accepted { + type uint64; + description + "Accepted Packets Counter"; + } + leaf dropped { + type uint64; + description + "Dropped Packets Counter"; + } + leaf flow-type { + type uint16; + description + "Flow type"; + } + leaf npu-id { + type uint32; + description + "npu id"; + } + leaf vrf { + type uint32; + description + "vrf"; + } + leaf queue-priority { + type uint16; + description + "punt queue priority"; + } + leaf entry-stat { + type boolean; + description + "Entry has stat or share global FT stat"; + } + leaf is-compressed { + type boolean; + description + "True if entry is compressed"; + } + } + + grouping PL-PIFIB-POLICER-INFO { + description + "PD Pre-IFIB policer information"; + leaf avgrate { + type uint32; + units "packet/s"; + description + "Average policer value in packets per second"; + } + leaf burst { + type uint32; + description + "Burst policer value in msec"; + } + leaf static-avgrate { + type uint32; + description + "Default value of average policer value"; + } + leaf avgrate-type { + type uint32; + description + "policer value type (local,global,static)"; + } + leaf hw-policer-addr { + type uint32; + description + "HW policer address - need this for display"; + } + leaf sw-police-id { + type uint16; + description + "SW policer ID - reserved"; + } + leaf npu-id { + type uint32; + description + "npu id"; + } + leaf policer-level { + type uint32; + description + "Policer level - NPU or slice"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper.yang new file mode 100644 index 000000000..71a90279c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-lpts-oper.yang @@ -0,0 +1,124 @@ +module Cisco-IOS-XR-8000-lpts-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-8000-lpts-oper"; + prefix xr-8000-lpts-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-8000-lpts-oper-sub1 { + revision-date 2022-07-26; + } + + 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 8000-lpts package operational data. + + This module contains definitions + for the following management objects: + platform-lptsp-ifib: 8000 platform ifib operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-26 { + description + "Add policer-level leaf to grouping PL-PIFIB-POLICER-INFO + 2022-05-05 + Add is_compressed leaf to grouping PL-PIFIB-SHOW-ENTRY"; + semver:module-version "1.1.0"; + } + revision 2021-03-30 { + description + "LPTS Pre-ifib Oper Yang added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container platform-lptsp-ifib { + config false; + description + "8000 platform ifib operational data "; + container nodes { + description + "List of nodes with platform specific lpts + operation data"; + list node { + key "node-name"; + description + "Node with platform specific lpts data"; + container polices { + description + "policer info for LC"; + list police { + key "entry"; + description + "Data for single policer entry"; + leaf entry { + type xr:Cisco-ios-xr-string; + description + "Single Policer entry"; + } + uses PL-PIFIB-POLICER-INFO; + } + } + container entries { + description + "stats for LC"; + list entry { + key "entry"; + description + "Data for single pre-ifib entry"; + leaf entry { + type xr:Cisco-ios-xr-string; + description + "Single Pre-ifib entry"; + } + uses PL-PIFIB-SHOW-ENTRY; + } + } + container og-entries { + description + "og entry for LC"; + list og-entry { + key "entry"; + description + "Data for single pre-ifib og entry"; + leaf entry { + type xr:Cisco-ios-xr-string; + description + "Single Pre-ifib og entry"; + } + uses PL-PIFIB-SHOW-OG-ENTRY; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1.yang new file mode 100644 index 000000000..ae8594f8d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1.yang @@ -0,0 +1,262 @@ +submodule Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1 { + belongs-to Cisco-IOS-XR-8000-platforms-npu-resources-oper { + prefix Cisco-IOS-XR-8000-platforms-npu-resources-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR 8000-platforms-npu-resources package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Updated to remove unused fields + 2022-08-16 + Added new hwdb resources."; + semver:module-version "4.0.0"; + } + revision 2020-10-07 { + description + "Updated leaf fields and container stats"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OFA-SYSDB-LT-HW-RESOURCE { + description + "Logical table accounting for that bank"; + leaf lt-id { + type uint32; + description + "lt id"; + } + leaf name { + type string; + description + "name"; + } + leaf hw-entries { + type uint32; + description + "hw entries"; + } + leaf sw-entries { + type uint32; + description + "sw entries"; + } + } + + grouping OFA-SYSDB-NPU-RESOURCE-OOR-ST { + description + "OOR info for that bank"; + leaf is-oor-valid { + type boolean; + description + "Is this OOR struct valid"; + } + leaf red-oor-threshold { + type uint32; + description + "OOR red threshold in terms of entries"; + } + leaf yellow-oor-threshold { + type uint32; + description + "OOR yellow threshold in terms of entries"; + } + leaf oor-change-count { + type uint32; + description + "Counts number of OOR transitions"; + } + leaf oor-state-change-time1 { + type string { + length "0..16"; + } + description + "OOR state change time 1"; + } + leaf oor-state-change-time2 { + type string { + length "0..16"; + } + description + "OOR state change time 2"; + } + leaf oor-state { + type string { + length "0..16"; + } + description + "OOR state string"; + } + } + + grouping OFA-SYSDB-NPU-RESOURCE-COUNTER-ST { + description + "Counter information for that bank"; + leaf is-counter-valid { + type boolean; + description + "Is this counter struct valid"; + } + leaf is-max-valid { + type boolean; + description + "Is Max valid"; + } + leaf max-entries { + type uint32; + description + "Maximum entries in hardware"; + } + leaf inuse-entries { + type uint32; + description + "In use entries for this bank from hardware"; + } + } + + grouping OFA-SYSDB-NPU-HW-BANK-RESOURCE { + description + "Per bank resource info"; + container counter { + description + "Counter values for this bank"; + uses OFA-SYSDB-NPU-RESOURCE-COUNTER-ST; + } + container oor-state { + description + "OOR state for this bank"; + uses OFA-SYSDB-NPU-RESOURCE-OOR-ST; + } + leaf is-bank-valid { + type boolean; + description + "is this bank valid/skip"; + } + leaf bank-id { + type uint32; + description + "Hierarchical bank id"; + } + leaf bank-name { + type string { + length "0..64"; + } + description + "Hierarchical bank name generated in TIDL"; + } + leaf bank-info { + type string { + length "0..64"; + } + description + "Custom bank info"; + } + leaf is-bank-info-valid { + type boolean; + description + "Is Bank info valid"; + } + leaf num-lt { + type uint32; + description + "Number of logical table array elements"; + } + list lt-hwr { + description + "Logical OFA tables for npu resource bank"; + uses OFA-SYSDB-LT-HW-RESOURCE; + } + } + + grouping OFA-SYSDB-NPU-HW-RESOURCE { + description + "Per NPU structure for a hw resource"; + leaf npu-id { + type uint32; + description + "npu id"; + } + leaf red-oor-threshold-percent { + type uint32; + description + "red oor threshold percent"; + } + leaf yellow-oor-threshold-percent { + type uint32; + description + "yellow oor threshold percent"; + } + leaf num-bank { + type int32; + description + "Bank count for hierarchical NPU resource"; + } + list bank { + description + "List of Hierarchical banks for that NPU resource"; + uses OFA-SYSDB-NPU-HW-BANK-RESOURCE; + } + } + + grouping OFA-SYSDB-HW-RESOURCE { + description + "Resource level information"; + leaf resource-id { + type uint32; + description + "resource id"; + } + leaf num-npus { + type uint32; + description + "num npus"; + } + leaf cmd-invalid { + type boolean; + description + "cmd invalid"; + } + leaf asic-name { + type string { + length "0..32"; + } + description + "asic name"; + } + list npu-hwr { + description + "npu hwr"; + uses OFA-SYSDB-NPU-HW-RESOURCE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper.yang new file mode 100644 index 000000000..aea5e38e0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-platforms-npu-resources-oper.yang @@ -0,0 +1,252 @@ +module Cisco-IOS-XR-8000-platforms-npu-resources-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-8000-platforms-npu-resources-oper"; + prefix xr-8000-platforms-npu-resources-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-platforms-ofa-oper { + prefix a1; + } + include Cisco-IOS-XR-8000-platforms-npu-resources-oper-sub1 { + revision-date 2022-09-26; + } + + 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 8000-platforms-npu-resources package operational data. + + This YANG module augments the + Cisco-IOS-XR-platforms-ofa-oper + module with state data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Updated to remove unused fields + 2022-08-16 + Added new hwdb resources."; + semver:module-version "4.0.0"; + } + revision 2020-10-07 { + description + "Updated leaf fields and container stats"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Resource { + type enumeration { + enum "counter-bank" { + value 0; + description + "counter bank"; + } + enum "l3-ac-port" { + value 1; + description + "l3 ac port"; + } + enum "native-fec-entry" { + value 2; + description + "native fec entry"; + } + enum "stage1-lb-group" { + value 3; + description + "stage1 lb group"; + } + enum "stage1-lb-member" { + value 4; + description + "stage1 lb member"; + } + enum "stage2-lb-group" { + value 5; + description + "stage2 lb group"; + } + enum "stage2-lb-member" { + value 6; + description + "stage2 lb member"; + } + enum "stage2-protection-monitor" { + value 7; + description + "stage2 protection monitor"; + } + enum "v4-lpts" { + value 8; + description + "v4 lpts"; + } + enum "v6-lpts" { + value 9; + description + "v6 lpts"; + } + enum "lpts-meters" { + value 10; + description + "lpts meters"; + } + enum "central-em" { + value 11; + description + "central em"; + } + enum "egress-acl-tcam" { + value 12; + description + "egress acl tcam"; + } + enum "ingress-acl-tcam" { + value 13; + description + "ingress acl tcam"; + } + enum "lpm-tcam" { + value 14; + description + "lpm tcam"; + } + enum "mc-emdb" { + value 15; + description + "mc emdb"; + } + enum "ipv6-compressed-sips" { + value 16; + description + "ipv6 compressed sips"; + } + enum "egress-large-encap" { + value 17; + description + "egress large encap"; + } + enum "egress-small-encap" { + value 18; + description + "egress small encap"; + } + enum "tunnel-termination" { + value 19; + description + "tunnel termination"; + } + enum "sipidxtbl" { + value 20; + description + "sipidxtbl"; + } + enum "myipv4tbl" { + value 21; + description + "myipv4tbl"; + } + enum "l2-service-port" { + value 22; + description + "l2 service port"; + } + enum "egress-l3-dlp" { + value 23; + description + "egress l3 dlp"; + } + enum "protection-group" { + value 24; + description + "protection group"; + } + enum "tunnel-termination-1" { + value 25; + description + "tunnel termination 1"; + } + enum "dip-index" { + value 26; + description + "dip index"; + } + enum "mac-service-map-ping" { + value 27; + description + "mac service mapping"; + } + enum "mac-service-map-ping-1" { + value 28; + description + "mac service mapping 1"; + } + enum "mac-termination-em-table" { + value 29; + description + "mac termination em table"; + } + enum "egress-enc-em0" { + value 30; + description + "egress enc em0"; + } + enum "egress-enc-em1" { + value 31; + description + "egress enc em1"; + } + enum "service-lp-attributes-table" { + value 32; + description + "service lp attributes table"; + } + } + description + "Resource"; + } + + augment "/a1:ofa/a1:stats/a1:nodes/a1:node" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-platforms-ofa-oper'"; + container hw-resources-datas { + description + "OFA HW resources stats "; + list hw-resources-data { + key "resource"; + description + "Hardware resources table"; + leaf resource { + type Resource; + description + "Resource type"; + } + uses OFA-SYSDB-HW-RESOURCE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub1.yang new file mode 100644 index 000000000..43402194c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub1.yang @@ -0,0 +1,176 @@ +submodule Cisco-IOS-XR-8000-qos-oper-sub1 { + belongs-to Cisco-IOS-XR-8000-qos-oper { + prefix Cisco-IOS-XR-8000-qos-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-8000-qos-oper-sub2 { + revision-date 2021-06-28; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR 8000-qos package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-28 { + description + "Configured Max probability for RED ECN"; + semver:module-version "1.0.0"; + } + revision 2021-03-11 { + description + "Fix parent policy class default display"; + } + revision 2020-09-14 { + description + "Converted Policer HW value to 64 bit."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping WRED-PROFILE { + description + "WRED PROFILE"; + leaf min-threshold { + type uint32; + description + "Minimum Threshold"; + } + leaf max-threshold { + type uint32; + description + "Maximum Threshold"; + } + leaf drop-probability { + type uint32; + description + "Drop Probability"; + } + } + + grouping REMOTE-CLASS { + description + "REMOTE CLASS"; + container config-d-queue-limit { + description + "Configured Dual queue limit"; + uses DQL-POLICY-PARAMETER; + } + leaf class-name { + type string { + length "0..64"; + } + description + "Class Name"; + } + leaf class-id { + type uint32; + description + "Class ID"; + } + leaf cos-q { + type uint32; + description + "Class of Service Queue"; + } + leaf queue-limit { + type uint32; + units "byte"; + description + "Default/Configured queue limit in bytes"; + } + leaf hardware-queue-limit { + type uint32; + units "byte"; + description + "Hardware queue limit in bytes"; + } + leaf ecn-enabled { + type boolean; + description + "ECN Enabled"; + } + leaf is-parent { + type boolean; + description + "Class belongs to parent policy"; + } + list wred { + max-elements "4"; + description + "Default/Configured WRED profiles"; + uses WRED-PROFILE; + } + list hw-wred { + max-elements "4"; + description + "Hardware WRED profiles"; + uses WRED-PROFILE; + } + } + + grouping DPA-QOSEA-SHOW-REMOTE-IF-INFO-ST { + description + "Remote Interface Info"; + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy Name"; + } + leaf virtual-output-queue-statistics-handle { + type uint64; + description + "Virtual output queue statistics handle"; + } + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf egress-queue-id { + type uint32; + description + "Egress Queue ID"; + } + leaf number-of-virtual-output-queues { + type uint32; + description + "Number of Virtual Output Queues"; + } + leaf number-of-classes { + type uint32; + description + "Number of Classes"; + } + list remote-class { + description + "Remote Class array"; + uses REMOTE-CLASS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub2.yang new file mode 100644 index 000000000..e99b16a77 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper-sub2.yang @@ -0,0 +1,859 @@ +submodule Cisco-IOS-XR-8000-qos-oper-sub2 { + belongs-to Cisco-IOS-XR-8000-qos-oper { + prefix Cisco-IOS-XR-8000-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR 8000-qos package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-28 { + description + "Configured Max probability for RED ECN"; + semver:module-version "1.0.0"; + } + revision 2021-03-11 { + description + "Fix parent policy class default display"; + } + revision 2020-09-14 { + description + "Converted Policer HW value to 64 bit."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dpa-qosea-show-wred { + type enumeration { + enum "wred-cos" { + description + "WRED based on COS"; + } + enum "wred-dscp" { + description + "WRED based on DSCP"; + } + enum "wred-precedence" { + description + "WRED based on Precedence"; + } + enum "wred-discard-class" { + description + "WRED based on discard class"; + } + enum "wred-mpls-exp" { + description + "WRED based on MPLS EXP"; + } + enum "red-with-user-min-max" { + description + "RED with user defined min and max"; + } + enum "red-with-default-min-max" { + description + "RED with default min and max"; + } + enum "wred-invalid" { + description + "Invalid"; + } + } + description + "WRED type"; + } + + typedef Dpa-qosea-show-action { + type enumeration { + enum "action-none" { + description + "None"; + } + enum "action-transmit" { + description + "Transmit"; + } + enum "action-drop" { + description + "Drop"; + } + enum "action-mark" { + description + "Mark"; + } + } + description + "Policer action type"; + } + + typedef Policy-param-unit { + type enumeration { + enum "policy-param-unit-invalid" { + description + "policy param unit invalid"; + } + enum "policy-param-unit-bytes" { + description + "policy param unit bytes"; + } + enum "policy-param-unit-kbytes" { + description + "policy param unit kbytes"; + } + enum "policy-param-unit-mbytes" { + description + "policy param unit mbytes"; + } + enum "policy-param-unit-gbytes" { + description + "policy param unit gbytes"; + } + enum "policy-param-unit-bitsps" { + description + "policy param unit bitsps"; + } + enum "policy-param-unit-kbitsps" { + description + "policy param unit kbitsps"; + } + enum "policy-param-unit-mbitsps" { + description + "policy param unit mbitsps"; + } + enum "policy-param-unit-gbitsps" { + description + "policy param unit gbitsps"; + } + enum "policy-param-unit-cells-ps" { + description + "policy param unit cells ps"; + } + enum "policy-param-unit-packets-ps" { + description + "policy param unit packets ps"; + } + enum "policy-param-unit-us" { + description + "policy param unit us"; + } + enum "policy-param-unit-ms" { + description + "policy param unit ms"; + } + enum "policy-param-unit-seconds" { + description + "policy param unit seconds"; + } + enum "policy-param-unit-packets" { + description + "policy param unit packets"; + } + enum "policy-param-unit-cells" { + description + "policy param unit cells"; + } + enum "policy-param-unit-percent" { + description + "policy param unit percent"; + } + enum "policy-param-unit-per-thousand" { + description + "policy param unit per thousand"; + } + enum "policy-param-unit-per-million" { + description + "policy param unit per million"; + } + enum "policy-param-unit-hz" { + description + "policy param unit hz"; + } + enum "policy-param-unit-khz" { + description + "policy param unit khz"; + } + enum "policy-param-unit-mhz" { + description + "policy param unit mhz"; + } + enum "policy-param-unit-ratio" { + description + "policy param unit ratio"; + } + enum "policy-param-unit-inverse-ratio" { + description + "policy param unit inverse ratio"; + } + enum "policy-param-unit-max" { + description + "policy param unit max"; + } + } + description + "Policy param unit"; + } + + typedef Dpa-qosea-show-hp-level { + type enumeration { + enum "high-priority-level1" { + description + "High priority queue level 1"; + } + enum "high-priority-level2" { + description + "High priority queue level 2"; + } + enum "high-priority-level3" { + description + "High priority queue level 3"; + } + enum "high-priority-level4" { + description + "High priority queue level 4"; + } + enum "high-priority-level5" { + description + "High priority queue level 5"; + } + enum "high-priority-level6" { + description + "High priority queue level 6"; + } + enum "high-priority-level7" { + description + "High priority queue level 7"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "Priority level"; + } + + typedef Dpa-qosea-show-queue { + type enumeration { + enum "low-priority-default-queue" { + description + "Low priority default queue"; + } + enum "low-priority-queue" { + description + "Low priority queue"; + } + enum "high-priority-queue" { + description + "High priority queue"; + } + enum "unknown-queue-type" { + description + "Queue priority unknown"; + } + } + description + "Priority Queue Type"; + } + + typedef Dpa-qosea-show-mark { + type enumeration { + enum "mark-none" { + description + "None"; + } + enum "dscp" { + description + "DSCP"; + } + enum "precedence" { + description + "Precedence"; + } + enum "mpls-topmost" { + description + "MPLS topmost"; + } + enum "mpls-imposition" { + description + "MPLS imposition"; + } + enum "qos-group" { + description + "Qos group"; + } + enum "discard-class" { + description + "Discard class"; + } + enum "cos" { + description + "COS"; + } + enum "inner-cos" { + description + "Inner COS"; + } + enum "un-supported9" { + description + "Unsupported type 9"; + } + enum "un-supported10" { + description + "Unsupported type 10"; + } + enum "un-supported11" { + description + "Unsupported type 11"; + } + enum "dscp-tunnel" { + description + "DSCP tunnel"; + } + enum "precedence-tunnel" { + description + "Precedence tunnel"; + } + enum "dei" { + description + "DEI"; + } + enum "dei-imposition" { + description + "DEI Imposition"; + } + enum "un-supported16" { + description + "Unsupported type 16"; + } + enum "un-supported17" { + description + "Unsupported type 17"; + } + enum "traffic-class" { + description + "Traffic class"; + } + } + description + "Mark type"; + } + + typedef Dpa-qosea-show-level { + type enumeration { + enum "level1" { + value 0; + description + "QoS level1 class"; + } + enum "level2" { + value 1; + description + "QoS level2 class"; + } + enum "level3" { + value 2; + description + "QoS level3 class"; + } + enum "level4" { + value 3; + description + "QoS level4 class"; + } + enum "level5" { + value 4; + description + "QoS level5 class"; + } + } + description + "Level type"; + } + + typedef Dpa-qosea-show-intf-status { + type enumeration { + enum "state-unknown" { + description + "State is unknown"; + } + enum "state-down" { + description + "State is Down"; + } + } + description + "Intf Status"; + } + + typedef Dpa-qosea-show-policy-status { + type enumeration { + enum "no-error" { + description + "No errors"; + } + enum "policy-in-reset" { + description + "QoS policy is reset"; + } + } + description + "Status"; + } + + typedef Qos-policy-account-enum { + type enumeration { + enum "qos-serv-policy-no-ac-count-pref" { + description + "qos serv policy no ac count pref"; + } + enum "qos-serv-policy-ac-count-l2" { + description + "qos serv policy ac count l2"; + } + enum "qos-serv-policy-no-ac-count-l2" { + description + "qos serv policy no ac count l2"; + } + enum "qos-serv-policy-ac-count-user-def" { + description + "qos serv policy ac count user def"; + } + enum "qos-serv-policy-ac-count-l1" { + description + "qos serv policy ac count l1"; + } + } + description + "Qos policy account enum"; + } + + grouping QOS-RANGE { + description + "QOS RANGE"; + leaf range-start { + type uint8; + description + "Start value of a range"; + } + leaf range-end { + type uint8; + description + "End value of a range"; + } + } + + grouping DPA-QOSEA-SHOW-RED-MATCH-VALUES { + description + "DPA QOSEA SHOW RED MATCH VALUES"; + list dpa-qosea-show-red-match-value { + description + "dpa qosea show red match value"; + uses QOS-RANGE; + } + } + + grouping PARAMETERS { + description + "WRED parameters"; + container wred-match-value { + description + "WRED match values"; + uses DPA-QOSEA-SHOW-RED-MATCH-VALUES; + } + container config-min-threshold { + description + "Configured minimum threshold"; + uses POLICY-PARAMETER; + } + container config-max-threshold { + description + "Configured maximum threshold"; + uses POLICY-PARAMETER; + } + leaf wred-match-type { + type Dpa-qosea-show-wred; + description + "WREDMatchType"; + } + leaf hardware-min-threshold-bytes { + type uint32; + description + "Hardware minimum threshold"; + } + leaf hardware-max-threshold-bytes { + type uint32; + description + "Hardware maximum threshold"; + } + leaf first-segment { + type uint16; + description + "First segment"; + } + leaf segment-size { + type uint32; + description + "Segment size"; + } + leaf config-max-probability { + type uint32; + description + "Configured Max Probability"; + } + leaf hardware-max-probability { + type uint32; + description + "Max Probability programmed in HW x 100"; + } + } + + grouping POLICER-ACTION { + description + "POLICER ACTION"; + leaf action-type { + type Dpa-qosea-show-action; + description + "Policer action type"; + } + list mark { + description + "Action mark"; + uses QOS-MARK; + } + } + + grouping DQL-POLICY-PARAMETER { + description + "DQL Policy parameter"; + leaf class0-policy-value { + type uint32; + description + "Discard Class0 Policy value"; + } + leaf class1-policy-value { + type uint32; + description + "Discard Class1 Policy value"; + } + leaf dql-policy-unit { + type Policy-param-unit; + description + "DQL Policy unit"; + } + } + + grouping POLICY-PARAMETER { + description + "Policy parameter"; + leaf policy-value { + type uint32; + description + "Policy value"; + } + leaf policy-unit { + type Policy-param-unit; + description + "Policy unit"; + } + } + + grouping QOS-MARK { + description + "QoS mark"; + leaf mark-type { + type Dpa-qosea-show-mark; + description + "Mark type"; + } + leaf mark-value { + type uint16; + description + "Mark value"; + } + } + + grouping DPA-QOSEA-SHOW-CLASS-ST { + description + "QoS policy"; + container config-max-rate { + description + "Configured maximum rate"; + uses POLICY-PARAMETER; + } + container config-min-rate { + description + "Configured minimum rate"; + uses POLICY-PARAMETER; + } + container config-queue-limit { + description + "Configured queue limit"; + uses POLICY-PARAMETER; + } + container config-d-queue-limit { + description + "Configured Dual queue limit"; + uses DQL-POLICY-PARAMETER; + } + container config-policer-average-rate { + description + "Configured policer average rate"; + uses POLICY-PARAMETER; + } + container config-policer-peak-rate { + description + "Config policer peak rate"; + uses POLICY-PARAMETER; + } + container config-policer-conform-burst { + description + "Configured policer conform burst"; + uses POLICY-PARAMETER; + } + container config-policer-excess-burst { + description + "Configured policer excess burst"; + uses POLICY-PARAMETER; + } + container conform-action { + description + "Conform action"; + uses POLICER-ACTION; + } + container exceed-action { + description + "Exceed action"; + uses POLICER-ACTION; + } + container violate-action { + description + "Violate action"; + uses POLICER-ACTION; + } + leaf class-level { + type Dpa-qosea-show-level; + description + "Class level"; + } + leaf egress-queue-id { + type int32; + description + "Egress Queue ID"; + } + leaf queue-type { + type Dpa-qosea-show-queue; + description + "Queue type"; + } + leaf priority-level { + type Dpa-qosea-show-hp-level; + description + "Priority level"; + } + leaf hardware-max-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware maximum rate in kbps"; + } + leaf hardware-min-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware minimum rate in kbps"; + } + leaf config-excess-bandwidth-percent { + type uint32; + units "percentage"; + description + "Configured excess bandwidth percentage"; + } + leaf config-excess-bandwidth-unit { + type uint32; + description + "Configured excess bandwidth unit"; + } + leaf hardware-excess-bandwidth-weight { + type uint32; + description + "Hardware excess bandwidth weight"; + } + leaf network-min-bandwidth-kbps { + type uint32; + description + "Network minimum Bandwith"; + } + leaf hardware-queue-limit-bytes { + type uint64; + units "byte"; + description + "Hardware queue limit in bytes"; + } + leaf hardware-queue-limit-microseconds { + type uint64; + units "microsecond"; + description + "Hardware queue limit in microseconds"; + } + leaf hardware-class1-queue-limit-bytes { + type uint64; + units "byte"; + description + "Class1 Hardware queue limit in bytes"; + } + leaf hardware-class1-queue-limit-microseconds { + type uint64; + units "microsecond"; + description + "Class1 Hardware queue limit in microseconds"; + } + leaf policer-bucket-id { + type uint32; + description + "PolicerBucketID"; + } + leaf policer-stats-handle { + type uint64; + description + "PolicerStatsHandle"; + } + leaf hardware-policer-average-rate-kbps { + type uint64; + units "kbit/s"; + description + "Hardware policer average in kbps"; + } + leaf hardware-policer-peak-rate-kbps { + type uint64; + description + "Hardware policer peak rate"; + } + leaf hardware-policer-conform-burst-bytes { + type uint32; + description + "Hardware policer conform burst"; + } + leaf hardware-policer-excess-burst-bytes { + type uint32; + description + "Hardware policer excess burst"; + } + leaf ecn-enabled { + type boolean; + description + "ECN Enabled"; + } + list ip-mark { + description + "IP mark"; + uses QOS-MARK; + } + list common-mark { + description + "Common mark"; + uses QOS-MARK; + } + list mpls-mark { + description + "MPLS mark"; + uses QOS-MARK; + } + list wred { + description + "WRED parameters"; + uses PARAMETERS; + } + } + + grouping DPA-QOSEA-SHOW-IF-QOS-INFO-ST { + description + "Policy Details"; + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf interface-handle { + type uint32; + description + "InterfaceHandle"; + } + leaf interface-bandwidth-kbps { + type uint64; + units "kbit/s"; + description + "Interface Bandwidth (in kbps)"; + } + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy name"; + } + leaf total-number-of-classes { + type uint16; + description + "Number of Classes"; + } + leaf voq-base-address { + type uint32; + description + "VOQ base address"; + } + leaf voq-stats-handle { + type uint64; + description + "VOQ stats handle"; + } + leaf stats-accounting-type { + type Qos-policy-account-enum; + description + "QoS Statistics Accounting Type"; + } + leaf policy-status { + type Dpa-qosea-show-policy-status; + description + "Policy Status"; + } + leaf interface-status { + type Dpa-qosea-show-intf-status; + description + "Interface Status"; + } + leaf voq-mode { + type uint8; + description + "VOQ Mode"; + } + leaf shared-counter-mode { + type uint8; + description + "Shared Counter Mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper.yang new file mode 100644 index 000000000..0e0cf931a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-8000-qos-oper.yang @@ -0,0 +1,208 @@ +module Cisco-IOS-XR-8000-qos-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-8000-qos-oper"; + prefix xr-8000-qos-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-8000-qos-oper-sub2 { + revision-date 2021-06-28; + } + include Cisco-IOS-XR-8000-qos-oper-sub1 { + revision-date 2021-06-28; + } + + 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 8000-qos package operational data. + + This module contains definitions + for the following management objects: + platform-qos: DPA QoS EA operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-28 { + description + "Configured Max probability for RED ECN"; + semver:module-version "1.0.0"; + } + revision 2021-03-11 { + description + "Fix parent policy class default display"; + } + revision 2020-09-14 { + description + "Converted Policer HW value to 64 bit."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping POLICY-DETAILS { + description + "Common node of interface, bundle-interface, + member-interface"; + container policy-details { + description + "QoS Policy Details"; + uses DPA-QOSEA-SHOW-IF-QOS-INFO-ST; + } + } + + grouping CLASS-TABLE { + description + "Common node of interface, bundle-interface, + member-interface"; + container classes { + description + "QoS list of class names"; + list class { + key "level-one-class-name"; + description + "QoS policy class"; + leaf level-one-class-name { + type string; + description + "QoS policy class name at level 1"; + } + leaf level-two-class-name { + type string; + description + "QoS policy child class name at level 2"; + } + uses DPA-QOSEA-SHOW-CLASS-ST; + } + } + } + + container platform-qos { + config false; + description + "DPA QoS EA operational data"; + container nodes { + description + "List of nodes with platform specific QoS + configuration"; + list node { + key "node-name"; + description + "Node with platform specific QoS configuration"; + container interfaces { + description + "QoS list of interfaces"; + list interface { + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + leaf policy-name { + type string; + description + "The QoS policy name."; + } + uses POLICY-DETAILS; + uses CLASS-TABLE; + } + } + container bundle-interfaces { + description + "QoS list of bundle interfaces"; + list bundle-interface { + description + "QoS interface names"; + container member-interfaces { + description + "QoS list of member interfaces"; + list member-interface { + key "interface-name"; + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "Member interface"; + } + uses POLICY-DETAILS; + uses CLASS-TABLE; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + leaf policy-name { + type string; + description + "The QoS policy name."; + } + uses POLICY-DETAILS; + uses CLASS-TABLE; + } + } + container remote-interfaces { + description + "QoS list of remote interfaces"; + list remote-interface { + key "interface-name"; + description + "QoS remote interface names"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the remote interface"; + } + uses DPA-QOSEA-SHOW-REMOTE-IF-INFO-ST; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-act.yang new file mode 100644 index 000000000..f208ee6f0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-act.yang @@ -0,0 +1,103 @@ +module Cisco-IOS-XR-Ethernet-SPAN-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-Ethernet-SPAN-act"; + prefix ethernet-span-act; + + 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 Ethernet-SPAN action commands. + + Copyright (c) 2020-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-22 { + description + "Remove unnecessary module imports + 2020-11-09 + First implementation of action yang for File destinations"; + semver:module-version "1.0.0"; + } + + rpc packet-collection-start { + description + "Start packet collection on this session"; + input { + leaf session { + type string { + length "1..63"; + } + mandatory true; + description + "Session name"; + } + } + xr:xr-task "ethernet-services"; + xr:cli-command "monitor-session packet-collection start"; + } + rpc packet-collection-stop-discard { + description + "Stop packet collection on this session and discard data in buffer"; + input { + leaf session { + type string { + length "1..63"; + } + mandatory true; + description + "Session name"; + } + } + xr:xr-task "ethernet-services"; + xr:cli-command "monitor-session packet-collection stop discard-data"; + } + rpc packet-collection-stop-write { + description + "Stop packet collection on this session and write contents to file"; + input { + leaf session { + type string { + length "1..63"; + } + mandatory true; + description + "Session name"; + } + leaf dirname { + type string { + length "1..63"; + } + mandatory true; + description + "Directory name"; + } + leaf filename { + type string { + length "1..63"; + } + mandatory true; + description + "File name"; + } + } + xr:xr-task "ethernet-services"; + xr:cli-command "monitor-session packet-collection stop write directory filename "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-cfg.yang new file mode 100644 index 000000000..3877a8dab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-cfg.yang @@ -0,0 +1,1095 @@ +module Cisco-IOS-XR-Ethernet-SPAN-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-Ethernet-SPAN-cfg"; + prefix ethernet-span-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-Ethernet-SPAN-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2vpn-cfg { + prefix a2; + } + + 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 Ethernet-SPAN package configuration. + + This module contains definitions + for the following management objects: + span-monitor-session: none + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-l2vpn-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-08 { + description + "Add rate-limiting support + 2022-08-19 + Add sflow destination + 2022-08-01 + Add per-session mirror interval + 2022-07-13 + Add MPLS IPv4 and MPLS IPv6 ACLs under SPAN attachments + 2022-06-29 + Change Buffer Drop references to Traffic Management + 2022-06-17 + Added support for ACL merge groups + 2022-04-13 + Added support for mirroring dropped packets + 2021-12-30 + Remove deprecated config schema + 2021-10-06 + Added support for global mirror intervals + 2021-09-15 + Added support for mirror first configured on sessions + 2021-08-20 + Added support for ERSPAN session ID under GRE destinations"; + semver:module-version "5.0.0"; + } + revision 2021-07-19 { + description + "Added extended range of values to mirror interval sampling + 2021-06-02 + Added support for non-default VRFs and router-id"; + semver:module-version "4.0.0"; + } + revision 2020-12-03 { + description + "Added support for multiple attachments per class on an interface + 2020-09-14 + Added support for mirror rx and tx traffic to separate destinations"; + semver:module-version "3.1.0"; + } + revision 2020-01-30 { + description + "Added support for L3 IPv4 and IPv6 ACLs on a L2 ethernet SPAN session + 2019-12-12 + Added support for file format and PCAP filter expressions under file"; + semver:module-version "3.0.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes. + 2019-05-12 + Added support for file destinations."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Span-protocol-capture-direction { + type enumeration { + enum "rx" { + value 16; + description + "Rx protocol-capture packet mirroring"; + } + enum "tx" { + value 32; + description + "Tx protocol-capture packet mirroring"; + } + enum "rx-tx" { + value 48; + description + "Both Rx and Tx protocol-capture packet + mirroring"; + } + } + description + "Span protocol capture direction"; + } + + typedef Spantm-drops-direction { + type enumeration { + enum "rx" { + value 4; + description + "Rx dropped packet mirroring"; + } + enum "tx" { + value 8; + description + "Tx dropped packet mirroring"; + } + enum "rx-tx" { + value 12; + description + "Both Rx and Tx dropped packet mirroring"; + } + } + description + "Spantm drops direction"; + } + + typedef Span-forward-drops-direction { + type enumeration { + enum "rx" { + value 1; + description + "Rx dropped packet mirroring"; + } + enum "tx" { + value 2; + description + "Tx dropped packet mirroring"; + } + enum "rx-tx" { + value 3; + description + "Both Rx and Tx dropped packet mirroring"; + } + } + description + "Span forward drops direction"; + } + + typedef Span-traffic-direction { + type enumeration { + enum "rx-only" { + value 1; + description + "Replicate only received (ingress) traffic"; + } + enum "tx-only" { + value 2; + description + "Replicate only transmitted (egress) traffic"; + } + } + description + "Span traffic direction"; + } + + typedef Span-destination { + type enumeration { + enum "interface" { + value 0; + description + "Destination Interface"; + } + enum "pseudowire" { + value 1; + description + "Destination Pseudowire"; + } + enum "ipv4-address" { + value 2; + description + "Destination next-hop IPv4 address"; + } + enum "ipv6-address" { + value 3; + description + "Destination next-hop IPv6 address"; + } + enum "file" { + value 5; + description + "Destination File"; + } + enum "udp" { + value 6; + description + "Destination IP address over UDP"; + } + enum "sflow" { + value 8; + description + "Destination IP address over UDP using sflow + encapsulation"; + } + } + description + "Span destination"; + } + + typedef Span-buffer { + type enumeration { + enum "circular" { + value 1; + description + "File buffer circular"; + } + enum "linear" { + value 2; + description + "File buffer linear"; + } + } + description + "Span buffer"; + } + + typedef Span-file-format { + type enumeration { + enum "pcapng" { + value 2; + description + "File format pcapng"; + } + } + description + "Span file format"; + } + + typedef Span-buffer-size { + type uint32; + description + "Span buffer size"; + } + + grouping SPAN-ATTACHMENT-TABLE { + description + "Common node of interface-configuration, + l2-transport"; + container span-attachments { + description + "Monitor Session container for this source + interface"; + list span-attachment { + key "session-name"; + description + "Configuration for a particular Monitor Session"; + container ipv4acl { + presence "Indicates a ipv4acl node is configured."; + description + "Enable IPv4 ACL matching for traffic mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + container ipv6acl { + presence "Indicates a ipv6acl node is configured."; + description + "Enable IPv6 ACL matching for traffic mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + container mplsipv4acl { + presence "Indicates a mplsipv4acl node is configured."; + description + "Enable MPLS IPv4 ACL matching for traffic + mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + container mplsipv6acl { + presence "Indicates a mplsipv6acl node is configured."; + description + "Enable MPLS IPv6 ACL matching for traffic + mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + leaf drops { + type boolean; + description + "Specify whether or not to mirror dropped + packets"; + } + leaf session-name { + type dt1:Span-session-name; + description + "Session Name"; + } + uses MIRROR-FIRST; + uses MIRROR-INTERVAL; + uses ATTACHMENT-CONFIG; + uses ACL; + } + } + } + + grouping ETHERNET-SPAN-DYN-TMPL-CFG-SPAN-ATTACHMENT-TABLE { + description + "Common node of interface-configuration, + l2-transportCommon node of ip-subscriber, ppp, + subscriber-service"; + container span-attachments { + description + "Monitor Session container for this source + interface"; + list span-attachment { + key "session-name"; + description + "Configuration for a particular Monitor Session"; + leaf session-name { + type dt1:Span-session-name; + description + "Session Name"; + } + uses MIRROR-FIRST; + uses MIRROR-INTERVAL; + uses ATTACHMENT-CONFIG; + uses ACL; + } + } + } + + grouping MIRROR-INTERVAL { + description + "Common node of span-attachment, span-attachment"; + leaf mirror-interval { + type dt1:Span-mirror-interval; + description + "Specify the mirror interval"; + } + } + + grouping MIRROR-FIRST { + description + "Common node of span-attachment, span-attachment"; + leaf mirror-first { + type uint32 { + range "1..10000"; + } + units "byte"; + description + "Mirror a specified number of bytes from start of + packet"; + } + } + + grouping ACL { + description + "Common node of span-attachment, span-attachment"; + container acl { + presence "Indicates a acl node is configured."; + description + "Enable ACL matching for traffic mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + } + + grouping ATTACHMENT-CONFIG { + description + "Common node of span-attachment, span-attachment"; + container attachment-config { + presence "Indicates a attachment-config node is configured."; + description + "Attach the interface to a Monitor Session"; + leaf session-class { + type dt1:Span-session-class; + mandatory true; + description + "Traffic class for the session"; + } + leaf direction { + type Span-traffic-direction; + description + "Specify the direction of traffic to replicate + (optional)"; + } + leaf port-level-enable { + type empty; + description + "Enable port level traffic mirroring"; + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration/a2:l2-transport" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + uses SPAN-ATTACHMENT-TABLE; + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + uses SPAN-ATTACHMENT-TABLE; + } + container span-monitor-session { + description + "none"; + container sessions { + description + "Monitor-session configuration commands"; + list session { + key "session"; + description + "Configuration for a particular Monitor Session"; + container destination-rx { + description + "Specify a destination for Rx direction traffic"; + leaf destination-type { + type Span-destination; + description + "Specify the type of destination"; + } + leaf destination-interface-name { + when "../destination-type = 'interface' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = Interface or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type xr:Interface-name; + description + "Specify the destination interface name"; + } + leaf destination-ipv4-address { + when "../destination-type = 'ipv4-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv4Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv4-address-no-zone; + description + "Specify the destination IPv4 address"; + } + leaf destination-ipv6-address { + when "../destination-type = 'ipv6-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv6Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv6-address-no-zone; + description + "Specify the destination IPv6 address"; + } + leaf destination-buffer-size { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-buffer-size; + units "kilobyte"; + description + "Specify buffer size in kilobytes for + destination file"; + } + leaf destination-buffer-type { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-buffer; + description + "Specify the buffer type for destination file"; + } + leaf destination-port { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type uint32; + description + "Specify the destination port"; + } + leaf source-ipv4-address { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv4-address-no-zone; + description + "Specify the source IPv4 address"; + } + leaf source-ipv6-address { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv6-address-no-zone; + description + "Specify the source IPv6 address"; + } + leaf source-port { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type uint32; + description + "Specify the source port"; + } + leaf vrf-name { + when "../destination-type = 'ipv4-address' or ../destination-type = 'ipv6-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv4Address or . + ./DestinationType = IPv6Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type string; + description + "Specify the VRF name"; + } + leaf destination-file-format { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-file-format; + description + "Specify the file format"; + } + leaf destination-pcap-filter { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type string; + description + "Specify a pcap filter"; + } + leaf erspan-session-id { + when "../destination-type = 'interface'" { + description + "../DestinationType = Interface"; + } + type uint32; + description + "Specify an ERSPAN Session ID"; + } + } + container forward-drops { + description + "Mirror all forwarding-dropped packets"; + leaf direction { + type Span-forward-drops-direction; + description + "Specify the direction to mirror dropped + packets"; + } + leaf pcap-filter { + type string; + description + "Specify a pcap filter"; + } + } + container rate-limit { + description + "Specify the rate limit in kbps"; + leaf rate-limit-rx-value { + type uint32; + units "kbit/s"; + description + "Specify the Rx rate limit value in kbps"; + } + leaf rate-limit-tx-value { + type uint32; + units "kbit/s"; + description + "Specify the Tx rate limit value in kbps"; + } + } + container tm-drops { + description + "Mirror all traffic management dropped packets"; + leaf direction { + type Spantm-drops-direction; + description + "Specify the direction to mirror dropped + packets"; + } + leaf pcap-filter { + type string; + description + "Specify a pcap filter"; + } + } + container cloud-span { + description + "CloudSPAN configuration options for this + session"; + leaf cloud-span-enable { + type empty; + description + "Enable CloudSPAN on this session"; + } + } + container destination-tx { + description + "Specify a destination for Tx direction traffic"; + leaf destination-type { + type Span-destination; + description + "Specify the type of destination"; + } + leaf destination-interface-name { + when "../destination-type = 'interface' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = Interface or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type xr:Interface-name; + description + "Specify the destination interface name"; + } + leaf destination-ipv4-address { + when "../destination-type = 'ipv4-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv4Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv4-address-no-zone; + description + "Specify the destination IPv4 address"; + } + leaf destination-ipv6-address { + when "../destination-type = 'ipv6-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv6Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv6-address-no-zone; + description + "Specify the destination IPv6 address"; + } + leaf destination-buffer-size { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-buffer-size; + units "kilobyte"; + description + "Specify buffer size in kilobytes for + destination file"; + } + leaf destination-buffer-type { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-buffer; + description + "Specify the buffer type for destination file"; + } + leaf destination-port { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type uint32; + description + "Specify the destination port"; + } + leaf source-ipv4-address { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv4-address-no-zone; + description + "Specify the source IPv4 address"; + } + leaf source-ipv6-address { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv6-address-no-zone; + description + "Specify the source IPv6 address"; + } + leaf source-port { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type uint32; + description + "Specify the source port"; + } + leaf vrf-name { + when "../destination-type = 'ipv4-address' or ../destination-type = 'ipv6-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv4Address or . + ./DestinationType = IPv6Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type string; + description + "Specify the VRF name"; + } + leaf destination-file-format { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-file-format; + description + "Specify the file format"; + } + leaf destination-pcap-filter { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type string; + description + "Specify a pcap filter"; + } + leaf erspan-session-id { + when "../destination-type = 'interface'" { + description + "../DestinationType = Interface"; + } + type uint32; + description + "Specify an ERSPAN Session ID"; + } + } + container protocol-capture { + description + "Mirror protocol captured packets"; + leaf direction { + type Span-protocol-capture-direction; + description + "Specify the direction to mirror + protocol-captured packets"; + } + leaf pcap-filter { + type string; + description + "Specify a pcap filter"; + } + } + container destination { + description + "Specify a destination"; + leaf destination-type { + type Span-destination; + description + "Specify the type of destination"; + } + leaf destination-interface-name { + when "../destination-type = 'interface' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = Interface or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type xr:Interface-name; + description + "Specify the destination interface name"; + } + leaf destination-ipv4-address { + when "../destination-type = 'ipv4-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv4Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv4-address-no-zone; + description + "Specify the destination IPv4 address"; + } + leaf destination-ipv6-address { + when "../destination-type = 'ipv6-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv6Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv6-address-no-zone; + description + "Specify the destination IPv6 address"; + } + leaf destination-buffer-size { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-buffer-size; + units "kilobyte"; + description + "Specify buffer size in kilobytes for + destination file"; + } + leaf destination-buffer-type { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-buffer; + description + "Specify the buffer type for destination file"; + } + leaf destination-port { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type uint32; + description + "Specify the destination port"; + } + leaf source-ipv4-address { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv4-address-no-zone; + description + "Specify the source IPv4 address"; + } + leaf source-ipv6-address { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type inet:ipv6-address-no-zone; + description + "Specify the source IPv6 address"; + } + leaf source-port { + when "../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type uint32; + description + "Specify the source port"; + } + leaf vrf-name { + when "../destination-type = 'ipv4-address' or ../destination-type = 'ipv6-address' or ../destination-type = 'udp' or ../destination-type = 's-flow'" { + description + "../DestinationType = IPv4Address or . + ./DestinationType = IPv6Address or . + ./DestinationType = UDP or . + ./DestinationType = SFLOW"; + } + type string; + description + "Specify the VRF name"; + } + leaf destination-file-format { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type Span-file-format; + description + "Specify the file format"; + } + leaf destination-pcap-filter { + when "../destination-type = 'file'" { + description + "../DestinationType = File"; + } + type string; + description + "Specify a pcap filter"; + } + leaf erspan-session-id { + when "../destination-type = 'interface'" { + description + "../DestinationType = Interface"; + } + type uint32; + description + "Specify an ERSPAN Session ID"; + } + } + leaf class { + type dt1:Span-session-class; + mandatory true; + description + "Enable a Monitor Session. Setting this item + causes the Monitor Session to be created."; + } + leaf mirror-interval { + type dt1:Span-mirror-interval; + description + "Mirror every Nth packet for this session"; + } + leaf mirror-first { + type uint32 { + range "1..10000"; + } + units "byte"; + description + "Mirror a specified number of bytes from start + of packet"; + } + leaf discard-class { + type uint32 { + range "0..7"; + } + description + "Specify the discard class value to be set on + all traffic mirrored to the destination"; + } + leaf inject-interface { + type xr:Interface-name; + description + "Specify the inject interface name"; + } + leaf traffic-class { + type uint32 { + range "0..7"; + } + description + "Specify the traffic class value to be set on + all traffic mirrored to the destination"; + } + leaf session { + type dt1:Span-session-name; + description + "Session Name"; + } + } + } + leaf router-id { + type uint32 { + range "1..255"; + } + description + "Specify the Router ID for this router"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-datatypes.yang new file mode 100644 index 000000000..ef93ba3b9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-datatypes.yang @@ -0,0 +1,185 @@ +module Cisco-IOS-XR-Ethernet-SPAN-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-Ethernet-SPAN-datatypes"; + prefix ethernet-span-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-06 { + description + "Added support for global mirror intervals"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Span-session-name { + type string { + length "1..79"; + } + description + "Span session name"; + } + + typedef Span-session-class { + type enumeration { + enum "ethernet" { + value 0; + description + "Mirror Ethernet packets"; + } + enum "ipv4" { + value 1; + description + "Mirror IPv4 packets"; + } + enum "ipv6" { + value 2; + description + "Mirror IPv6 packets"; + } + enum "mpls-ipv4" { + value 3; + description + "Mirror MPLS-encapsulated IPv4 packets"; + } + enum "mpls-ipv6" { + value 4; + description + "Mirror MPLS-encapsulated IPv6 packets"; + } + } + description + "Span session class"; + } + + typedef Span-acl-name { + type string { + length "1..80"; + } + description + "Span acl name"; + } + + typedef Span-session-id { + type uint32; + description + "Span session id"; + } + + typedef Span-mirror-interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1k" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2k" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4k" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8k" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16k" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + enum "2" { + value 7; + description + "Mirror 1 in every 2 packets"; + } + enum "4" { + value 8; + description + "Mirror 1 in every 4 packets"; + } + enum "8" { + value 9; + description + "Mirror 1 in every 8 packets"; + } + enum "16" { + value 10; + description + "Mirror 1 in every 16 packets"; + } + enum "32" { + value 11; + description + "Mirror 1 in every 32 packets"; + } + enum "64" { + value 12; + description + "Mirror 1 in every 64 packets"; + } + enum "128" { + value 13; + description + "Mirror 1 in every 128 packets"; + } + enum "256" { + value 14; + description + "Mirror 1 in every 256 packets"; + } + } + description + "Span mirror interval"; + } + + typedef Span-session-class-old { + type enumeration { + enum "true" { + value 0; + description + "Mirror Ethernet packets"; + } + } + description + "Span session class old"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub1.yang new file mode 100644 index 000000000..0db94da23 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub1.yang @@ -0,0 +1,1094 @@ +submodule Cisco-IOS-XR-Ethernet-SPAN-oper-sub1 { + belongs-to Cisco-IOS-XR-Ethernet-SPAN-oper { + prefix Cisco-IOS-XR-Ethernet-SPAN-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR Ethernet-SPAN package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-08 { + description + "Add rate-limiting support + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-08-19 + Add sflow destination + 2022-08-01 + Add per-session mirror interval + 2022-07-13 + Add MPLS IPv4 and MPLS IPv6 ACLs under SPAN attachments + 2022-06-29 + Change Buffer Drop references to Traffic Management + 2022-06-17 + Added support for ACL merge groups + 2022-05-27 + Added support for per-session statistics. + 2022-04-13 + Added support for mirroring dropped packets + 2021-09-15 + Added support for mirror first configured on sessions + 2021-08-20 + Added support for ERSPAN session ID under GRE destinations"; + semver:module-version "5.1.0"; + } + revision 2021-07-19 { + description + "Added extended range of values to mirror interval sampling + 2021-06-02 + Added support for non-default VRFs and router-id"; + semver:module-version "5.0.0"; + } + revision 2020-12-03 { + description + "Added support for multiple attachments per class on an interface + 2020-09-14 + Added support for mirror rx and tx traffic to separate destinations + 2020-04-03 + Added support for bundle destinations."; + semver:module-version "4.0.0"; + } + revision 2020-01-30 { + description + "Added support for L3 IPv4 and IPv6 ACLs on a L2 ethernet SPAN session + 2019-12-12 + Added support for file format and PCAP filter expressions under file + 2019-10-02 + Added support for UDP destinations and CloudSPAN."; + semver:module-version "3.0.0"; + } + revision 2019-05-12 { + description + "Added support for file destinations."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Traffic-direction { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid"; + } + enum "rx-only" { + value 1; + description + "Received"; + } + enum "tx-only" { + value 2; + description + "Transmitted"; + } + enum "both" { + value 3; + description + "Both"; + } + } + description + "Monitor-session traffic directions"; + } + + typedef Mirror-interval { + type enumeration { + enum "mirror-interval-all" { + value 0; + description + "Mirror all packets"; + } + enum "mirror-interval512" { + value 1; + description + "Mirror Interval 512"; + } + enum "mirror-interval1k" { + value 2; + description + "Mirror Interval 1K"; + } + enum "mirror-interval2k" { + value 3; + description + "Mirror Interval 2K"; + } + enum "mirror-interval4k" { + value 4; + description + "Mirror Interval 4K"; + } + enum "mirror-interval8k" { + value 5; + description + "Mirror Interval 8K"; + } + enum "mirror-interval16k" { + value 6; + description + "Mirror Interval 16K"; + } + enum "mirror-interval2" { + value 7; + description + "Mirror Interval 2"; + } + enum "mirror-interval4" { + value 8; + description + "Mirror Interval 4"; + } + enum "mirror-interval8" { + value 9; + description + "Mirror Interval 8"; + } + enum "mirror-interval16" { + value 10; + description + "Mirror Interval 16"; + } + enum "mirror-interval32" { + value 11; + description + "Mirror Interval 32"; + } + enum "mirror-interval64" { + value 12; + description + "Mirror Interval 64"; + } + enum "mirror-interval128" { + value 13; + description + "Mirror Interval 128"; + } + enum "mirror-interval256" { + value 14; + description + "Mirror Interval 256"; + } + } + description + "Monitor-session mirror intervals"; + } + + typedef Optional-value { + type uint32; + description + "Optional Value"; + } + + typedef Udp-address { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4 Address"; + } + enum "ipv6" { + value 1; + description + "IPv6 Address"; + } + } + description + "UDP Address Type"; + } + + typedef File-format { + type enumeration { + enum "invalid-format" { + value 0; + description + "Invalid file format"; + } + enum "pcap-format" { + value 1; + description + "PCAP file format"; + } + enum "pcapng-format" { + value 2; + description + "PCAPNG file format"; + } + } + description + "File Format"; + } + + typedef Buffer { + type enumeration { + enum "invalid-buffer" { + value 0; + description + "Invalid buffer type"; + } + enum "circular-buffer" { + value 1; + description + "Circular buffer type"; + } + enum "linear-buffer" { + value 2; + description + "Linear buffer type"; + } + } + description + "Buffer type"; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Destination-name-string { + type string; + description + "Destination name string"; + } + + typedef Destination-class { + type enumeration { + enum "interface-class" { + value 0; + description + "Destination is an interface"; + } + enum "pseudowire-class" { + value 1; + description + "Destination is a pseudowire"; + } + enum "next-hop-ipv4-class" { + value 2; + description + "Destination is a next-hop IPv4 address"; + } + enum "next-hop-ipv6-class" { + value 3; + description + "Destination is a next-hop IPv6 address"; + } + enum "gre-tunnel-class" { + value 4; + description + "Destination is a GRE Tunnel"; + } + enum "file-class" { + value 5; + description + "Destination is a file"; + } + enum "udp-class" { + value 6; + description + "Destination is over UDP"; + } + enum "bundle-class" { + value 7; + description + "Destination is a bundle"; + } + enum "sflow-class" { + value 8; + description + "Destination is over UDP with sflow encap"; + } + enum "invalid-class" { + value 255; + description + "Destination is not specified"; + } + } + description + "Destination class"; + } + + typedef Session-class { + type enumeration { + enum "ethernet-class" { + value 0; + description + "Ethernet mirroring session"; + } + enum "ipv4-class" { + value 1; + description + "IPv4 mirroring session"; + } + enum "ipv6-class" { + value 2; + description + "IPv6 mirroring session"; + } + enum "mplsipv4-class" { + value 3; + description + "MPLS-IPv4 mirroring session"; + } + enum "mplsipv6-class" { + value 4; + description + "MPLS-IPv6 mirroring session"; + } + enum "invalid-class" { + value 65535; + description + "Invalid session class"; + } + } + description + "Session class"; + } + + grouping SPAN-BAG-MBR-INFO { + description + "SPAN EA Bundle Member Information"; + leaf interface-handle { + type xr:Interface-name; + description + "InterfaceHandle"; + } + } + + grouping SPAN-BAG-BDL-INFO { + description + "SPAN EA Bundle Information"; + leaf is-bundle { + type boolean; + description + "is bundle"; + } + list mbr-info { + description + "mbr info"; + uses SPAN-BAG-MBR-INFO; + } + } + + grouping SPAN-EA-ATTACHMENT-BAG { + description + "SPAN EA Attachment Information"; + container destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + container rx-destination-id { + description + "Rx Destination ID"; + uses DESTINATION-ID; + } + container tx-destination-id { + description + "Tx Destination ID"; + uses DESTINATION-ID; + } + container traffic-mirroring-parameters { + description + "Traffic mirroring parameters"; + uses TRAFFIC-MIRRORING-PARAMETERS; + } + container bundle-info { + description + "Bundle information"; + uses SPAN-BAG-BDL-INFO; + } + leaf class { + type Session-class; + description + "Attachment class"; + } + leaf name { + type string; + description + "Attached Session Name"; + } + leaf id { + type uint32; + description + "Numerical ID of attached session"; + } + leaf separate-destinations { + type boolean; + description + "Separate Destinations"; + } + } + + grouping SPAN-EA-INTF-BAG { + description + "SPAN EA Source Interface Information"; + container destination-id { + description + "Destination ID (deprecated by Attachment)"; + uses DESTINATION-ID; + } + container traffic-mirroring-parameters { + description + "Traffic mirroring parameters (deprecated by + Attachment)"; + uses TRAFFIC-MIRRORING-PARAMETERS; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface"; + } + leaf platform-error { + type uint32; + description + "Last error observed for this interface while + programming the hardware"; + } + leaf destination-interface { + type xr:Interface-name; + description + "Destination interface (deprecated by Attachment)"; + } + leaf traffic-direction { + type Traffic-direction; + description + "Traffic mirroring direction (deprecated by + Attachment)"; + } + list attachment { + description + "Attachment information"; + uses SPAN-EA-ATTACHMENT-BAG; + } + } + + grouping SPAN-EA-SESS-BAG { + description + "SPAN EA Session Information"; + container destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + container rx-destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + container tx-destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + container file-information { + description + "Extra information relating to SPAN to file"; + uses FILE-DST-STATE-INFO; + } + leaf id { + type uint32; + description + "Assigned numerical ID for this session"; + } + leaf name { + type string; + description + "Configured Session Name"; + } + leaf session-class-xr { + type Session-class; + description + "Session class"; + } + leaf destination-interface { + type xr:Interface-name; + description + "Destination interface (deprecated by + DestinationID, invalid for pseudowires)"; + } + leaf separate-destinations { + type boolean; + description + "Separate Destinations"; + } + leaf platform-error { + type uint32; + description + "Last error observed for this session while + programming the hardware"; + } + leaf inject-interface-ifh { + type xr:Interface-name; + description + "Inject Interface ifhandle"; + } + leaf inject-interface-mac { + type Mac-address; + description + "Inject Interface MAC address"; + } + leaf inject-interface-invalid { + type boolean; + description + "An inject interface is flagged as invalid on a + particular node if the interface exists on that + node, and there is no attachment interface + config for it"; + } + } + + grouping SPAN-BAG-ACL-PARAMS-TYPE { + description + "SPAN BAG ACL PARAMS TYPE"; + leaf merge-group { + type uint32; + description + "Merge group"; + } + leaf priority { + type uint32; + description + "Priority"; + } + } + + grouping TRAFFIC-MIRRORING-PARAMETERS { + description + "Monitor-session traffic mirroring parameters"; + container acl-params { + description + "ACL params"; + uses SPAN-BAG-ACL-PARAMS-TYPE; + } + container ipv4acl-params { + description + "ACL params"; + uses SPAN-BAG-ACL-PARAMS-TYPE; + } + container ipv6acl-params { + description + "ACL params"; + uses SPAN-BAG-ACL-PARAMS-TYPE; + } + container mplsipv4acl-params { + description + "MPLS ACL params"; + uses SPAN-BAG-ACL-PARAMS-TYPE; + } + container mplsipv6acl-params { + description + "MPLS ACL params"; + uses SPAN-BAG-ACL-PARAMS-TYPE; + } + leaf traffic-direction { + type Traffic-direction; + description + "Direction"; + } + leaf port-level { + type boolean; + description + "Port level mirroring"; + } + leaf is-acl-enabled { + type boolean; + description + "ACL enabled"; + } + leaf is-ipv4acl-enabled { + type boolean; + description + "IPv4 ACL enabled"; + } + leaf is-ipv6acl-enabled { + type boolean; + description + "IPv6 ACL enabled"; + } + leaf is-mplsipv4acl-enabled { + type boolean; + description + "MPLS IPv4 ACL enabled"; + } + leaf is-mplsipv6acl-enabled { + type boolean; + description + "MPLS IPv6 ACL enabled"; + } + leaf mirror-bytes { + type Optional-value; + units "byte"; + description + "Number of bytes to mirror"; + } + leaf mirror-interval { + type Mirror-interval; + description + "Interval between mirrored packets"; + } + leaf acl-name { + type string; + description + "ACL name"; + } + leaf ipv4acl-name { + type string; + description + "IPv4 ACL name"; + } + leaf ipv6acl-name { + type string; + description + "IPv6 ACL name"; + } + leaf mplsipv4acl-name { + type string; + description + "MPLS IPv4 ACL name"; + } + leaf mplsipv6acl-name { + type string; + description + "MPLS IPv6 ACL name"; + } + leaf is-drops-enabled { + type boolean; + description + "Mirroring dropped packets"; + } + } + + grouping CLOUD-SPAN-PROPERTIES { + description + "CloudSPAN Properties"; + leaf enabled { + type boolean; + description + "enabled"; + } + leaf router-id { + type uint8; + description + "router id"; + } + } + + grouping FILE-DST-STATE-INFO { + description + "File destination state"; + leaf is-active { + type boolean; + description + "Is Packet Collection Active"; + } + leaf file-name { + type string; + description + "File Name"; + } + leaf directory-name { + type string; + description + "Directory Name"; + } + } + + grouping BNDL-DST-CFG-INFO { + description + "Bundle destination config"; + leaf bundle-handle { + type xr:Interface-name; + description + "Bundle interface handle"; + } + leaf member-count { + type uint32; + description + "Bundle member count"; + } + leaf-list member-handle { + type xr:Interface-name; + description + "Bundle member interface handles"; + } + } + + grouping UDP-DST-CFG-INFO { + description + "UDP destination config"; + container ip-addresses { + description + "IP Addresses"; + uses UDP-ADDRESSES; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf vrfid { + type string; + description + "VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } + + grouping IPV6-NEXT-HOP-DESTINATION-ID { + description + "IPv6 next-hop destination ID"; + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 address"; + } + leaf vrf-name { + type string; + description + "VRF"; + } + } + + grouping IPV4-NEXT-HOP-DESTINATION-ID { + description + "IPv4 next-hop destination ID"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf vrf-name { + type string; + description + "VRF"; + } + } + + grouping DESTINATION-ID { + description + "Destination ID"; + container ipv4-address-and-vrf { + when "../destination-class = 'next-hop-ipv4-class'" { + description + "../DestinationClass = 'NextHopIPv4Class'"; + } + description + "IPv4 address"; + uses IPV4-NEXT-HOP-DESTINATION-ID; + } + container ipv6-address-and-vrf { + when "../destination-class = 'next-hop-ipv6-class'" { + description + "../DestinationClass = 'NextHopIPv6Class'"; + } + description + "IPv6 address"; + uses IPV6-NEXT-HOP-DESTINATION-ID; + } + container file-session-id { + when "../destination-class = 'file-class'" { + description + "../DestinationClass = 'FileClass'"; + } + description + "File Session ID"; + uses FILE-DST-CFG-INFO; + } + container udp-config { + when "../destination-class = 'udp-class'" { + description + "../DestinationClass = 'UDPClass'"; + } + description + "UDP config"; + uses UDP-DST-CFG-INFO; + } + container bundle-config { + when "../destination-class = 'bundle-class'" { + description + "../DestinationClass = 'BundleClass'"; + } + description + "Bundle config"; + uses BNDL-DST-CFG-INFO; + } + container sflow-config { + when "../destination-class = 'sflow-class'" { + description + "../DestinationClass = 'SflowClass'"; + } + description + "Sflow config"; + uses UDP-DST-CFG-INFO; + } + leaf destination-class { + type Destination-class; + description + "DestinationClass"; + } + leaf interface { + when "../destination-class = 'interface-class'" { + description + "../DestinationClass = 'InterfaceClass'"; + } + type xr:Interface-name; + description + "Interface Handle"; + } + leaf pseudowire-id { + when "../destination-class = 'pseudowire-class'" { + description + "../DestinationClass = 'PseudowireClass'"; + } + type Optional-value; + description + "Pseudowire XCID"; + } + leaf gre-interface { + when "../destination-class = 'gre-tunnel-class'" { + description + "../DestinationClass = 'GRETunnelClass'"; + } + type xr:Interface-name; + description + "GRE tunnel interface"; + } + leaf invalid-value { + when "../destination-class != 'interface-class' and ../destination-class != 'pseudowire-class' and ../destination-class != 'next-hop-ipv4-class' and ../destination-class != 'next-hop-ipv6-class' and ../destination-class != 'gre-tunnel-class' and ../destination-class != 'file-class' and ../destination-class != 'udp-class' and ../destination-class != 'bundle-class' and ../destination-class != 'sflow-class'" { + description + "../DestinationClass != 'InterfaceClass' and . + ./DestinationClass != 'PseudowireClass' and . + ./DestinationClass != 'NextHopIPv4Class' and . + ./DestinationClass != 'NextHopIPv6Class' and . + ./DestinationClass != 'GRETunnelClass' and . + ./DestinationClass != 'FileClass' and . + ./DestinationClass != 'UDPClass' and . + ./DestinationClass != 'BundleClass' and . + ./DestinationClass != 'SflowClass'"; + } + type Optional-value; + description + "Invalid Parameter"; + } + } + + grouping UDPIPV6-ADDRESS { + description + "UDP IPv6 Address"; + leaf source-ipv6-address { + type inet:ipv6-address; + description + "Source IPv6 Address"; + } + leaf destination-ipv6-address { + type inet:ipv6-address; + description + "Destination IPv6 Address"; + } + } + + grouping UDPIPV4-ADDRESS { + description + "UDP IPv4 Address"; + leaf source-ipv4-address { + type inet:ipv4-address; + description + "Source IPv4 Address"; + } + leaf destination-ipv4-address { + type inet:ipv4-address; + description + "Destination IPv4 Address"; + } + } + + grouping UDP-ADDRESSES { + description + "UDP IP Addresses"; + container ipv4 { + when "../address-type = 'ipv4'" { + description + "../AddressType = 'IPv4'"; + } + description + "IPv4 Address"; + uses UDPIPV4-ADDRESS; + } + container ipv6 { + when "../address-type = 'ipv6'" { + description + "../AddressType = 'IPv6'"; + } + description + "IPv6 Address"; + uses UDPIPV6-ADDRESS; + } + leaf address-type { + type Udp-address; + description + "AddressType"; + } + } + + grouping FILE-DST-CFG-INFO { + description + "File destination config"; + leaf file-session-id { + type uint32; + description + "File Session ID"; + } + leaf buffer-size { + type uint32; + description + "Buffer Size"; + } + leaf buffer-type { + type Buffer; + description + "Buffer Type"; + } + leaf format { + type File-format; + description + "File Format"; + } + leaf filter { + type string; + description + "Pcap filter"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub2.yang new file mode 100644 index 000000000..c3bf2a390 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub2.yang @@ -0,0 +1,250 @@ +submodule Cisco-IOS-XR-Ethernet-SPAN-oper-sub2 { + belongs-to Cisco-IOS-XR-Ethernet-SPAN-oper { + prefix Cisco-IOS-XR-Ethernet-SPAN-oper; + } + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-Ethernet-SPAN-oper-sub1 { + revision-date 2022-09-08; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR Ethernet-SPAN package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-08 { + description + "Add rate-limiting support + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-08-19 + Add sflow destination + 2022-08-01 + Add per-session mirror interval + 2022-07-13 + Add MPLS IPv4 and MPLS IPv6 ACLs under SPAN attachments + 2022-06-29 + Change Buffer Drop references to Traffic Management + 2022-06-17 + Added support for ACL merge groups + 2022-05-27 + Added support for per-session statistics. + 2022-04-13 + Added support for mirroring dropped packets + 2021-09-15 + Added support for mirror first configured on sessions + 2021-08-20 + Added support for ERSPAN session ID under GRE destinations"; + semver:module-version "5.1.0"; + } + revision 2021-07-19 { + description + "Added extended range of values to mirror interval sampling + 2021-06-02 + Added support for non-default VRFs and router-id"; + semver:module-version "5.0.0"; + } + revision 2020-12-03 { + description + "Added support for multiple attachments per class on an interface + 2020-09-14 + Added support for mirror rx and tx traffic to separate destinations + 2020-04-03 + Added support for bundle destinations."; + semver:module-version "4.0.0"; + } + revision 2020-01-30 { + description + "Added support for L3 IPv4 and IPv6 ACLs on a L2 ethernet SPAN session + 2019-12-12 + Added support for file format and PCAP filter expressions under file + 2019-10-02 + Added support for UDP destinations and CloudSPAN."; + semver:module-version "3.0.0"; + } + revision 2019-05-12 { + description + "Added support for file destinations."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SPAN-MA-ATT-BAG-DEST-INFO { + description + "Attachment Destination Info"; + container destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + leaf dest-pw-type-not-supported { + type boolean; + description + "The destination PW type is not supported"; + } + } + + grouping SPAN-MA-ATTACHMENT-BAG { + description + "SPAN MA Attachment Information"; + container traffic-parameters { + description + "Traffic mirroring parameters"; + uses TRAFFIC-MIRRORING-PARAMETERS; + } + container destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + container rx-destination-info { + description + "Rx Destination Info"; + uses SPAN-MA-ATT-BAG-DEST-INFO; + } + container tx-destination-info { + description + "Tx Destination Info"; + uses SPAN-MA-ATT-BAG-DEST-INFO; + } + leaf name { + type string; + description + "Session Name"; + } + leaf local-class { + type Session-class; + description + "Local attachment class"; + } + leaf id { + type uint32; + description + "Numerical ID assigned to session"; + } + leaf separate-destinations { + type boolean; + description + "Separate Destinations"; + } + leaf global-class { + type Session-class; + description + "Global session class"; + } + leaf session-is-configured { + type boolean; + description + "The Session is configured globally"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface"; + } + leaf source-interface-state { + type Im-state-enum; + description + "Source interface state"; + } + leaf pfi-error { + type uint32; + description + "Last error returned from PFI for this interface"; + } + leaf config-error { + type uint32; + description + "Error returned when configuring global session + config"; + } + leaf dest-pw-type-not-supported { + type boolean; + description + "The destination PW type is not supported"; + } + leaf source-interface-is-a-destination { + type boolean; + description + "This source interface is a destination for + another monitor-session"; + } + leaf destination-interface { + type xr:Interface-name; + description + "Destination interface (deprecated by + DestinationID, invalid for pseudowires)"; + } + leaf traffic-direction { + type Traffic-direction; + description + "Traffic mirroring direction (deprecated by + TrafficParameters)"; + } + } + + grouping SPAN-MA-STATISTICS-BAG { + description + "SPAN MA Statistics Information"; + leaf rx-packets-mirrored { + type uint64; + description + "RX Packets Mirrored"; + } + leaf rx-octets-mirrored { + type uint64; + description + "RX Octets Mirrored"; + } + leaf tx-packets-mirrored { + type uint64; + description + "TX Packets Mirrored"; + } + leaf tx-octets-mirrored { + type uint64; + description + "TX Octets Mirrored"; + } + leaf packets-not-mirrored { + type uint64; + description + "Packets Not Mirrored"; + } + leaf octets-not-mirrored { + type uint64; + description + "Octets Not Mirrored"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub3.yang new file mode 100644 index 000000000..8c226454a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper-sub3.yang @@ -0,0 +1,563 @@ +submodule Cisco-IOS-XR-Ethernet-SPAN-oper-sub3 { + belongs-to Cisco-IOS-XR-Ethernet-SPAN-oper { + prefix Cisco-IOS-XR-Ethernet-SPAN-oper; + } + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-Ethernet-SPAN-oper-sub1 { + revision-date 2022-09-08; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR Ethernet-SPAN package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-08 { + description + "Add rate-limiting support + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-08-19 + Add sflow destination + 2022-08-01 + Add per-session mirror interval + 2022-07-13 + Add MPLS IPv4 and MPLS IPv6 ACLs under SPAN attachments + 2022-06-29 + Change Buffer Drop references to Traffic Management + 2022-06-17 + Added support for ACL merge groups + 2022-05-27 + Added support for per-session statistics. + 2022-04-13 + Added support for mirroring dropped packets + 2021-09-15 + Added support for mirror first configured on sessions + 2021-08-20 + Added support for ERSPAN session ID under GRE destinations"; + semver:module-version "5.1.0"; + } + revision 2021-07-19 { + description + "Added extended range of values to mirror interval sampling + 2021-06-02 + Added support for non-default VRFs and router-id"; + semver:module-version "5.0.0"; + } + revision 2020-12-03 { + description + "Added support for multiple attachments per class on an interface + 2020-09-14 + Added support for mirror rx and tx traffic to separate destinations + 2020-04-03 + Added support for bundle destinations."; + semver:module-version "4.0.0"; + } + revision 2020-01-30 { + description + "Added support for L3 IPv4 and IPv6 ACLs on a L2 ethernet SPAN session + 2019-12-12 + Added support for file format and PCAP filter expressions under file + 2019-10-02 + Added support for UDP destinations and CloudSPAN."; + semver:module-version "3.0.0"; + } + revision 2019-05-12 { + description + "Added support for file destinations."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SPAN-MGR-STATISTICS-BAG { + description + "SPAN MA Statistics Information"; + leaf rx-packets-mirrored { + type uint64; + description + "RX Packets Mirrored"; + } + leaf rx-octets-mirrored { + type uint64; + description + "RX Octets Mirrored"; + } + leaf tx-packets-mirrored { + type uint64; + description + "TX Packets Mirrored"; + } + leaf tx-octets-mirrored { + type uint64; + description + "TX Octets Mirrored"; + } + leaf packets-not-mirrored { + type uint64; + description + "Packets Not Mirrored"; + } + leaf octets-not-mirrored { + type uint64; + description + "Octets Not Mirrored"; + } + } + + grouping INJECT-INTERFACE-DATA { + description + "Inject interface data"; + leaf name { + type string; + description + "Interface Name"; + } + } + + grouping SPAN-MGR-BAG-SESS-DST-INFO { + description + "SPAN MGR BAG SESS DST INFO"; + container destination-data { + description + "Destination data"; + uses DESTINATION-STATE; + } + container destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + leaf destination-error { + type uint32; + description + "Last error observed for the destination "; + } + } + + grouping DESTINATION-BUNDLE-DATA { + description + "Destination Bundle Data"; + leaf bundle-name { + type Destination-name-string; + description + "Bundle Name"; + } + leaf bundle-state { + type Im-state-enum; + description + "Bundle State"; + } + } + + grouping DESTINATION-UDP-ADDRESS-DATA { + description + "Destination UDP Address Data"; + container ip-addresses { + description + "IP Addresses"; + uses UDP-ADDRESSES; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf vrfid { + type string; + description + "VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf is-reachable { + type boolean; + description + "Is reachable"; + } + } + + grouping DESTINATION-NEXT-HOP-IPV6-ADDRESS-DATA { + description + "Destination Next-hop IPv6 Address Data"; + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 address"; + } + leaf vrf-name { + type Destination-name-string; + description + "VRF name"; + } + leaf address-is-reachable { + type boolean; + description + "Address is reachable"; + } + } + + grouping DESTINATION-NEXT-HOP-IPV4-ADDRESS-DATA { + description + "Destination Next-hop IPv4 Address Data"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf vrf-name { + type Destination-name-string; + description + "VRF name"; + } + leaf address-is-reachable { + type boolean; + description + "Address is reachable"; + } + } + + grouping DESTINATION-PSEUDOWIRE-DATA { + description + "Destination Pseudowire Data"; + leaf pseudowire-name { + type Destination-name-string; + description + "Pseudowire Name"; + } + leaf pseudowire-is-up { + type boolean; + description + "Pseudowire State"; + } + } + + grouping DESTINATION-INTERFACE-DATA { + description + "Destination Interface Data"; + leaf interface-name { + type Destination-name-string; + description + "Interface Name"; + } + leaf interface-state { + type Im-state-enum; + description + "Interface State"; + } + } + + grouping DESTINATION-STATE { + description + "Destination state"; + container interface-data { + when "../destination-class = 'interface-class'" { + description + "../DestinationClass = 'InterfaceClass'"; + } + description + "Interface data"; + uses DESTINATION-INTERFACE-DATA; + } + container pseudowire-data { + when "../destination-class = 'pseudowire-class'" { + description + "../DestinationClass = 'PseudowireClass'"; + } + description + "Pseudowire data"; + uses DESTINATION-PSEUDOWIRE-DATA; + } + container next-hop-ipv4-data { + when "../destination-class = 'next-hop-ipv4-class'" { + description + "../DestinationClass = 'NextHopIPv4Class'"; + } + description + "Next-hop IPv4 data"; + uses DESTINATION-NEXT-HOP-IPV4-ADDRESS-DATA; + } + container next-hop-ipv6-data { + when "../destination-class = 'next-hop-ipv6-class'" { + description + "../DestinationClass = 'NextHopIPv6Class'"; + } + description + "Next-hop IPv6 data"; + uses DESTINATION-NEXT-HOP-IPV6-ADDRESS-DATA; + } + container gre-tunnel-data { + when "../destination-class = 'gre-tunnel-class'" { + description + "../DestinationClass = 'GRETunnelClass'"; + } + description + "GRE Tunnel data"; + uses DESTINATION-INTERFACE-DATA; + } + container file-data { + when "../destination-class = 'file-class'" { + description + "../DestinationClass = 'FileClass'"; + } + description + "File data"; + uses FILE-DST-CFG-INFO; + } + container udp-data { + when "../destination-class = 'udp-class'" { + description + "../DestinationClass = 'UDPClass'"; + } + description + "UDP data"; + uses DESTINATION-UDP-ADDRESS-DATA; + } + container sflow-data { + when "../destination-class = 'sflow-class'" { + description + "../DestinationClass = 'SflowClass'"; + } + description + "Sflow data"; + uses DESTINATION-UDP-ADDRESS-DATA; + } + container bundle-data { + when "../destination-class = 'bundle-class'" { + description + "../DestinationClass = 'BundleClass'"; + } + description + "Bundle data"; + uses DESTINATION-BUNDLE-DATA; + } + leaf destination-class { + type Destination-class; + description + "DestinationClass"; + } + leaf invalid-value { + when "../destination-class != 'interface-class' and ../destination-class != 'pseudowire-class' and ../destination-class != 'next-hop-ipv4-class' and ../destination-class != 'next-hop-ipv6-class' and ../destination-class != 'gre-tunnel-class' and ../destination-class != 'file-class' and ../destination-class != 'udp-class' and ../destination-class != 'sflow-class' and ../destination-class != 'bundle-class'" { + description + "../DestinationClass != 'InterfaceClass' and . + ./DestinationClass != 'PseudowireClass' and . + ./DestinationClass != 'NextHopIPv4Class' and . + ./DestinationClass != 'NextHopIPv6Class' and . + ./DestinationClass != 'GRETunnelClass' and . + ./DestinationClass != 'FileClass' and . + ./DestinationClass != 'UDPClass' and . + ./DestinationClass != 'SflowClass' and . + ./DestinationClass != 'BundleClass'"; + } + type Optional-value; + description + "Invalid Parameter"; + } + } + + grouping SPAN-MGR-SESSION-BAG { + description + "SPAN Manager Session Information"; + container destination-data { + description + "Destination data"; + uses DESTINATION-STATE; + } + container destination-id { + description + "Destination ID"; + uses DESTINATION-ID; + } + container rx-destination-info { + description + "Rx Destination Info"; + uses SPAN-MGR-BAG-SESS-DST-INFO; + } + container tx-destination-info { + description + "Tx Destination Info"; + uses SPAN-MGR-BAG-SESS-DST-INFO; + } + container inject-interface { + description + "Inject interface data"; + uses INJECT-INTERFACE-DATA; + } + container file-information { + description + "Extra information relating to SPAN to file"; + uses FILE-DST-STATE-INFO; + } + container cloud-span { + description + "Properties related to CloudSPAN"; + uses CLOUD-SPAN-PROPERTIES; + } + leaf name { + type string; + description + "Session Name"; + } + leaf session-class { + type Session-class; + description + "Session class"; + } + leaf id { + type uint32; + description + "Numerical ID assigned to session"; + } + leaf destination-error { + type uint32; + description + "Last error observed for the destination "; + } + leaf separate-destinations { + type boolean; + description + "Separate Destinations"; + } + leaf mirror-bytes { + type uint32; + units "byte"; + description + "Number of bytes to mirror"; + } + leaf mirror-interval { + type Mirror-interval; + description + "Interval to mirror packets at"; + } + leaf forward-rx-drop { + type boolean; + description + "TRUE if mirroring dropped forwarded packets in + the Rx direction is enabled"; + } + leaf forward-tx-drop { + type boolean; + description + "TRUE if mirroring dropped forwarded packets in + the Tx direction is enabled"; + } + leaf tm-rx-drop { + type boolean; + description + "TRUE if mirroring dropped traffic management + packets in the Rx direction is enabled"; + } + leaf tm-tx-drop { + type boolean; + description + "TRUE if mirroring dropped traffic management + packets in the Tx direction is enabled"; + } + leaf protocol-capture-rx { + type boolean; + description + "TRUE if mirroring protocol captured packets is + enabled in the Rx direction"; + } + leaf protocol-capture-tx { + type boolean; + description + "TRUE if mirroring protocol captured packets is + enabled in the Tx direction"; + } + leaf protocol-capture-filter { + type string; + description + "The pcap filter to determine which protocol + captured packets are mirrored."; + } + leaf forwarding-dropped-filter { + type string; + description + "The pcap filter to determine which forward + dropped packets are mirrored."; + } + leaf tm-dropped-filter { + type string; + description + "The pcap filter to determine which TM dropped + packets are mirrored."; + } + leaf rate-limit { + type uint32; + description + "The rate at which to mirror packets to a + destination"; + } + leaf rate-limit-rx { + type uint32; + description + "The rate at which to mirror packets to a rx + destination"; + } + leaf rate-limit-tx { + type uint32; + description + "The rate at which to mirror packets to a tx + destination"; + } + leaf destination-interface-name { + type string; + description + "Destination interface name (deprecated by + DestinationData, invalid for pseudowires)"; + } + leaf destination-interface-handle { + type xr:Interface-name; + description + "Destination interface handle (deprecated by + DestinationID, invalid for pseudowires)"; + } + leaf interface-error { + type uint32; + description + "Last error observed for the destination + interface (deprecated by DestinationError)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper.yang new file mode 100644 index 000000000..caa556c56 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-oper.yang @@ -0,0 +1,254 @@ +module Cisco-IOS-XR-Ethernet-SPAN-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-Ethernet-SPAN-oper"; + prefix ethernet-span-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-Ethernet-SPAN-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-Ethernet-SPAN-oper-sub3 { + revision-date 2022-09-08; + } + include Cisco-IOS-XR-Ethernet-SPAN-oper-sub2 { + revision-date 2022-09-08; + } + include Cisco-IOS-XR-Ethernet-SPAN-oper-sub1 { + revision-date 2022-09-08; + } + + 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 Ethernet-SPAN package operational data. + + This module contains definitions + for the following management objects: + span-monitor-session: Monitor Session operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-08 { + description + "Add rate-limiting support + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-09-05 + Operational data for GRE tunnel interfaces + 2022-08-19 + Add sflow destination + 2022-08-01 + Add per-session mirror interval + 2022-07-13 + Add MPLS IPv4 and MPLS IPv6 ACLs under SPAN attachments + 2022-06-29 + Change Buffer Drop references to Traffic Management + 2022-06-17 + Added support for ACL merge groups + 2022-05-27 + Added support for per-session statistics. + 2022-04-13 + Added support for mirroring dropped packets + 2021-09-15 + Added support for mirror first configured on sessions + 2021-08-20 + Added support for ERSPAN session ID under GRE destinations"; + semver:module-version "5.1.0"; + } + revision 2021-07-19 { + description + "Added extended range of values to mirror interval sampling + 2021-06-02 + Added support for non-default VRFs and router-id"; + semver:module-version "5.0.0"; + } + revision 2020-12-03 { + description + "Added support for multiple attachments per class on an interface + 2020-09-14 + Added support for mirror rx and tx traffic to separate destinations + 2020-04-03 + Added support for bundle destinations."; + semver:module-version "4.0.0"; + } + revision 2020-01-30 { + description + "Added support for L3 IPv4 and IPv6 ACLs on a L2 ethernet SPAN session + 2019-12-12 + Added support for file format and PCAP filter expressions under file + 2019-10-02 + Added support for UDP destinations and CloudSPAN."; + semver:module-version "3.0.0"; + } + revision 2019-05-12 { + description + "Added support for file destinations."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container span-monitor-session { + config false; + description + "Monitor Session operational data"; + container global { + description + "Global operational data"; + container statistics { + description + "Table of statistics for source interfaces"; + list statistic { + key "session interface"; + description + "Statistics for a particular source interface"; + leaf session { + type dt1:Span-session-name; + description + "Session Name"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses SPAN-MA-STATISTICS-BAG; + } + } + container global-sessions { + description + "Global Monitor Sessions table"; + list global-session { + key "session"; + description + "Information about a globally-configured + monitor session"; + leaf session { + type dt1:Span-session-name; + description + "Session Name"; + } + uses SPAN-MGR-SESSION-BAG; + } + } + container session-statistics { + description + "Table of statistics for sessions"; + list session-statistic { + key "session"; + description + "Statistics for a particular session"; + leaf session { + type dt1:Span-session-name; + description + "Session Name"; + } + uses SPAN-MGR-STATISTICS-BAG; + } + } + } + container nodes { + description + "Node table for node-specific operational data"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container attachments { + description + "Table of source interfaces configured as + attached to a session"; + list attachment { + key "session interface"; + description + "Information about a particular source + interface configured as attached to monitor + session"; + leaf session { + type dt1:Span-session-name; + description + "Session Name"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses SPAN-MA-ATTACHMENT-BAG; + } + } + container hardware-sessions { + description + "Table of sessions set up in the hardware. + When all sessions are operating correctly the + entries in this table should match those + entries in GlobalSessionTable that have a + destination configured"; + list hardware-session { + description + "Information about a particular session that + is set up in the hardware"; + leaf session-class { + type dt1:Span-session-class; + description + "Sesssion class"; + } + leaf session-id { + type dt1:Span-session-id; + description + "Session ID"; + } + uses SPAN-EA-SESS-BAG; + } + } + container interfaces { + description + "Table of source interfaces set up in the + hardware. The entries in this table should + match the entries in AttachmentTable when all + sessions are operating correctly"; + list interface { + key "interface"; + description + "Information about a particular interface that + is set up in the hardware"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses SPAN-EA-INTF-BAG; + } + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg.yang new file mode 100644 index 000000000..9ecf99e26 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg.yang @@ -0,0 +1,344 @@ +module Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-Ethernet-SPAN-subscriber-cfg"; + prefix ethernet-span-subscriber-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-Ethernet-SPAN-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 Ethernet-SPAN-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-13 { + description + "Added support for ACL merge groups + 2021-10-06 + Added support for global mirror intervals"; + semver:module-version "2.0.0"; + } + revision 2021-07-19 { + description + "Added extended range of values to mirror interval sampling"; + semver:module-version "1.1.0"; + } + revision 2020-12-03 { + description + "Added support for multiple attachments per class on an interface"; + semver:module-version "1.0.0"; + } + revision 2020-01-30 { + description + "Added support for L3 IPv4 and IPv6 ACLs on a L2 ethernet SPAN session"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Span-traffic-direction { + type enumeration { + enum "rx-only" { + value 1; + description + "Replicate only received (ingress) traffic"; + } + enum "tx-only" { + value 2; + description + "Replicate only transmitted (egress) traffic"; + } + } + description + "Span traffic direction"; + } + + grouping SPAN-ATTACHMENT-TABLE { + description + "Common node of interface-configuration, + l2-transport"; + container span-attachments { + description + "Monitor Session container for this source + interface"; + list span-attachment { + key "session-name"; + description + "Configuration for a particular Monitor Session"; + container ipv4acl { + description + "Enable IPv4 ACL matching for traffic mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + container ipv6acl { + description + "Enable IPv6 ACL matching for traffic mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + container mplsipv4acl { + description + "Enable MPLS IPv4 ACL matching for traffic + mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + container mplsipv6acl { + description + "Enable MPLS IPv6 ACL matching for traffic + mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + leaf drops { + type boolean; + description + "Specify whether or not to mirror dropped + packets"; + } + leaf session-name { + type dt1:Span-session-name; + description + "Session Name"; + } + uses MIRROR-FIRST; + uses MIRROR-INTERVAL; + uses ATTACHMENT-CONFIG; + uses ACL; + } + } + } + + grouping ETHERNET-SPAN-DYN-TMPL-CFG-SPAN-ATTACHMENT-TABLE { + description + "Common node of interface-configuration, + l2-transportCommon node of ip-subscriber, ppp, + subscriber-service"; + container span-attachments { + description + "Monitor Session container for this source + interface"; + list span-attachment { + key "session-name"; + description + "Configuration for a particular Monitor Session"; + leaf session-name { + type dt1:Span-session-name; + description + "Session Name"; + } + uses MIRROR-FIRST; + uses MIRROR-INTERVAL; + uses ATTACHMENT-CONFIG; + uses ACL; + } + } + } + + grouping MIRROR-INTERVAL { + description + "Common node of span-attachment, span-attachment"; + leaf mirror-interval { + type dt1:Span-mirror-interval; + description + "Specify the mirror interval"; + } + } + + grouping MIRROR-FIRST { + description + "Common node of span-attachment, span-attachment"; + leaf mirror-first { + type uint32 { + range "1..10000"; + } + units "byte"; + description + "Mirror a specified number of bytes from start of + packet"; + } + } + + grouping ACL { + description + "Common node of span-attachment, span-attachment"; + container acl { + presence "Indicates a acl node is configured."; + description + "Enable ACL matching for traffic mirroring"; + leaf acl-enable { + type empty; + mandatory true; + description + "Enable ACL"; + } + leaf acl-name { + type dt1:Span-acl-name; + description + "ACL Name"; + } + leaf merge-group { + type uint32; + description + "merge group"; + } + leaf priority { + type uint32; + description + "priority"; + } + } + } + + grouping ATTACHMENT-CONFIG { + description + "Common node of span-attachment, span-attachment"; + container attachment-config { + presence "Indicates a attachment-config node is configured."; + description + "Attach the interface to a Monitor Session"; + leaf session-class { + type dt1:Span-session-class; + mandatory true; + description + "Traffic class for the session"; + } + leaf direction { + type Span-traffic-direction; + description + "Specify the direction of traffic to replicate + (optional)"; + } + leaf port-level-enable { + type empty; + description + "Enable port level traffic mirroring"; + } + } + } + + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses ETHERNET-SPAN-DYN-TMPL-CFG-SPAN-ATTACHMENT-TABLE; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses ETHERNET-SPAN-DYN-TMPL-CFG-SPAN-ATTACHMENT-TABLE; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses ETHERNET-SPAN-DYN-TMPL-CFG-SPAN-ATTACHMENT-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1.yang new file mode 100644 index 000000000..6e81e4fa3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1.yang @@ -0,0 +1,273 @@ +submodule Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1 { + belongs-to Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper { + prefix Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR NCS-BDplatforms-npu-resources package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Updated to remove unused fields + 2022-08-25 + mcid ingress and egress tracking added + 2022-05-11 + encap all phases resources tracking added + 2022-05-09 + sexem2 and isem1,isem2 resource tracking added + 2022-04-01 + rif and inlif tracking added"; + semver:module-version "3.0.0"; + } + revision 2020-10-09 { + description + "Updated task id in root oper"; + semver:module-version "2.0.0"; + } + revision 2019-12-14 { + description + "Updated date for npu resources model"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OFA-SYSDB-LT-HW-RESOURCE { + description + "Logical table accounting for that bank"; + leaf lt-id { + type uint32; + description + "lt id"; + } + leaf name { + type string; + description + "name"; + } + leaf hw-entries { + type uint32; + description + "hw entries"; + } + leaf sw-entries { + type uint32; + description + "sw entries"; + } + } + + grouping OFA-SYSDB-NPU-RESOURCE-OOR-ST { + description + "OOR info for that bank"; + leaf is-oor-valid { + type boolean; + description + "Is this OOR struct valid"; + } + leaf red-oor-threshold { + type uint32; + description + "OOR red threshold in terms of entries"; + } + leaf yellow-oor-threshold { + type uint32; + description + "OOR yellow threshold in terms of entries"; + } + leaf oor-change-count { + type uint32; + description + "Counts number of OOR transitions"; + } + leaf oor-state-change-time1 { + type string { + length "0..16"; + } + description + "OOR state change time 1"; + } + leaf oor-state-change-time2 { + type string { + length "0..16"; + } + description + "OOR state change time 2"; + } + leaf oor-state { + type string { + length "0..16"; + } + description + "OOR state string"; + } + } + + grouping OFA-SYSDB-NPU-RESOURCE-COUNTER-ST { + description + "Counter information for that bank"; + leaf is-counter-valid { + type boolean; + description + "Is this counter struct valid"; + } + leaf is-max-valid { + type boolean; + description + "Is Max valid"; + } + leaf max-entries { + type uint32; + description + "Maximum entries in hardware"; + } + leaf inuse-entries { + type uint32; + description + "In use entries for this bank from hardware"; + } + } + + grouping OFA-SYSDB-NPU-HW-BANK-RESOURCE { + description + "Per bank resource info"; + container counter { + description + "Counter values for this bank"; + uses OFA-SYSDB-NPU-RESOURCE-COUNTER-ST; + } + container oor-state { + description + "OOR state for this bank"; + uses OFA-SYSDB-NPU-RESOURCE-OOR-ST; + } + leaf is-bank-valid { + type boolean; + description + "is this bank valid/skip"; + } + leaf bank-id { + type uint32; + description + "Hierarchical bank id"; + } + leaf bank-name { + type string { + length "0..64"; + } + description + "Hierarchical bank name generated in TIDL"; + } + leaf bank-info { + type string { + length "0..64"; + } + description + "Custom bank info"; + } + leaf is-bank-info-valid { + type boolean; + description + "Is Bank info valid"; + } + leaf num-lt { + type uint32; + description + "Number of logical table array elements"; + } + list lt-hwr { + description + "Logical OFA tables for npu resource bank"; + uses OFA-SYSDB-LT-HW-RESOURCE; + } + } + + grouping OFA-SYSDB-NPU-HW-RESOURCE { + description + "Per NPU structure for a hw resource"; + leaf npu-id { + type uint32; + description + "npu id"; + } + leaf red-oor-threshold-percent { + type uint32; + description + "red oor threshold percent"; + } + leaf yellow-oor-threshold-percent { + type uint32; + description + "yellow oor threshold percent"; + } + leaf num-bank { + type int32; + description + "Bank count for hierarchical NPU resource"; + } + list bank { + description + "List of Hierarchical banks for that NPU resource"; + uses OFA-SYSDB-NPU-HW-BANK-RESOURCE; + } + } + + grouping OFA-SYSDB-HW-RESOURCE { + description + "Resource level information"; + leaf resource-id { + type uint32; + description + "resource id"; + } + leaf num-npus { + type uint32; + description + "num npus"; + } + leaf cmd-invalid { + type boolean; + description + "cmd invalid"; + } + leaf asic-name { + type string { + length "0..32"; + } + description + "asic name"; + } + list npu-hwr { + description + "npu hwr"; + uses OFA-SYSDB-NPU-HW-RESOURCE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper.yang new file mode 100644 index 000000000..df4bedc0c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper.yang @@ -0,0 +1,208 @@ +module Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper"; + prefix ncs-bdplatforms-npu-resources-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-platforms-ofa-oper { + prefix a1; + } + include Cisco-IOS-XR-NCS-BDplatforms-npu-resources-oper-sub1 { + revision-date 2022-09-26; + } + + 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 NCS-BDplatforms-npu-resources package operational data. + + This YANG module augments the + Cisco-IOS-XR-platforms-ofa-oper + module with state data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Updated to remove unused fields + 2022-08-25 + mcid ingress and egress tracking added + 2022-05-11 + encap all phases resources tracking added + 2022-05-09 + sexem2 and isem1,isem2 resource tracking added + 2022-04-01 + rif and inlif tracking added"; + semver:module-version "3.0.0"; + } + revision 2020-10-09 { + description + "Updated task id in root oper"; + semver:module-version "2.0.0"; + } + revision 2019-12-14 { + description + "Updated date for npu resources model"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Resource { + type enumeration { + enum "lem" { + value 0; + description + "lem"; + } + enum "lpm" { + value 1; + description + "lpm"; + } + enum "encap" { + value 2; + description + "encap"; + } + enum "ext-tcam-ipv4" { + value 3; + description + "ext tcam ipv4"; + } + enum "ext-tcam-ipv6-short" { + value 4; + description + "ext tcam ipv6 short"; + } + enum "ext-tcam-ipv6-long" { + value 5; + description + "ext tcam ipv6 long"; + } + enum "fec" { + value 6; + description + "fec"; + } + enum "ecmp-fec" { + value 7; + description + "ecmp fec"; + } + enum "ext-tcam-ipv6" { + value 8; + description + "ext tcam ipv6"; + } + enum "rif" { + value 9; + description + "rif"; + } + enum "inlif" { + value 10; + description + "inlif"; + } + enum "inlif1" { + value 11; + description + "inlif1"; + } + enum "inlif2" { + value 12; + description + "inlif2"; + } + enum "sexem2" { + value 13; + description + "sexem2"; + } + enum "isem1" { + value 14; + description + "isem1"; + } + enum "isem2" { + value 15; + description + "isem2"; + } + enum "encap-arp" { + value 16; + description + "encap ARP"; + } + enum "encap-tunnel-s" { + value 17; + description + "encap tunnels"; + } + enum "encap-ac" { + value 18; + description + "encap AC"; + } + enum "encap-pwe" { + value 19; + description + "encap PWE"; + } + enum "mcid-ingress" { + value 20; + description + "mcid ingress"; + } + enum "mcid-egress" { + value 21; + description + "mcid egress"; + } + } + description + "Resource"; + } + + augment "/a1:ofa/a1:stats/a1:nodes/a1:node" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-platforms-ofa-oper'"; + container hw-resources-datas { + description + "OFA hw resources stats "; + list hw-resources-data { + key "resource"; + description + "Hardware resources table"; + leaf resource { + type Resource; + description + "Resource type"; + } + uses OFA-SYSDB-HW-RESOURCE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Ots-Och-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Ots-Och-cfg.yang new file mode 100644 index 000000000..f2d96ceb8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Ots-Och-cfg.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-Ots-Och-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-Ots-Och-cfg"; + prefix ots-och-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 Ots-Och package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-16 { + description + "Channel Attenuation Parameter added for Ots-Och Controller"; + semver:module-version "1.0.0"; + } + revision 2020-07-09 { + description + "New Cfg Model Added for Ots-Och Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ots-och { + description + "Ots-Och controller configuration"; + leaf channel-attenuation { + type uint32 { + range "0..250"; + } + description + "Select Channel Attenuation(in units of 0.1dB)"; + } + leaf add-drop-channel { + type xr:Interface-name; + description + "configures optical cross connect"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1.yang new file mode 100644 index 000000000..86243771d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1.yang @@ -0,0 +1,344 @@ +submodule Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1 { + belongs-to Cisco-IOS-XR-Subscriber-infra-subdb-oper { + prefix Cisco-IOS-XR-Subscriber-infra-subdb-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR Subscriber-infra-subdb package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-29 { + description + "Added new statistics to SIR flap history. + 2021-09-17 + Adding new bag for retrieving subdb sirflap history ."; + semver:module-version "2.1.0"; + } + revision 2021-02-22 { + description + "Adding yang support to retrive server connection time-stats."; + semver:module-version "2.1.0"; + } + revision 2020-04-02 { + description + "Added new bag for Subscriber database transition states and cfg object types."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-09-28 { + description + "Fixed Subscriber database Association."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Session-state { + type enumeration { + enum "init" { + value 1; + description + "Initialisation"; + } + enum "destroy" { + value 2; + description + "Destroy"; + } + enum "config-generate" { + value 3; + description + "Config generate"; + } + enum "feature-registration-wait" { + value 4; + description + "Feature registration wait"; + } + enum "config-apply" { + value 5; + description + "Config apply"; + } + enum "config-done" { + value 6; + description + "Config done"; + } + enum "config-removed" { + value 7; + description + "Config removed"; + } + enum "config-error" { + value 8; + description + "Config error"; + } + enum "error" { + value 9; + description + "Error"; + } + enum "sync" { + value 11; + description + "Sync"; + } + } + description + "Session states"; + } + + typedef Subdb-object-type-data { + type enumeration { + enum "user-profile" { + value 1; + description + "User profile"; + } + enum "service-profile" { + value 2; + description + "Service profile"; + } + enum "subscriber-service" { + value 3; + description + "Subscriber service template"; + } + enum "ppp" { + value 4; + description + "PPP template"; + } + enum "ip-subscriber" { + value 5; + description + "IP subscriber template"; + } + } + description + "Template types"; + } + + grouping SUBDB-SUBSCRIBER-OBJ { + description + "Subscriber database server information for a + session"; + leaf session-state { + type Session-state; + description + "Subscriber session state"; + } + leaf activate-request-id { + type uint32; + description + "Activate request identifier"; + } + leaf transaction-id { + type int32; + description + "Transaction identifier associated with a + particular 'produce_done' or 'produce_all_done' + request default value is 0xffffffff which + represents 'None'"; + } + leaf produce-done-request-id { + type uint32; + description + "Produce done request ID"; + } + leaf destroy-req-received { + type boolean; + description + "Flags indicating if a destroy request is + received"; + } + leaf destroy-request-id { + type uint32; + description + "Destroy request ID"; + } + leaf is-config-changed { + type boolean; + description + "Is true if configuration change due to template + change only and not due to a produce done + request"; + } + leaf is-creator-gone { + type boolean; + description + "Is true if the creator of the connection is + destroyed"; + } + leaf is-delete-notify-done { + type boolean; + description + "Is true if the deleted features have all been + notified and all 'apply done' ack messages have + been received"; + } + leaf add-modify-done { + type boolean; + description + "Is true if added/modified features have all been + notified and all 'apply done' ack messages have + been received"; + } + leaf is-rollback-needed { + type boolean; + description + "Is true if the subscriber should be rolled back + to the configuration prior to this transaction + when all the outstanding backend programming + interface requests are replied"; + } + leaf is-rollback-in-progress { + type boolean; + description + "Is true if subscriber's configuration is being + rolled back"; + } + leaf is-server-restart-apply { + type boolean; + description + "Is true if the subscriber's configuration is + being applied due to subscriber database server + restart"; + } + leaf is-rollback-performed { + type boolean; + description + "Is true if rollback has previously been + performed for this subscriber"; + } + leaf repl-pending { + type boolean; + description + "Flags indicating if there is pending replication"; + } + leaf activate-timer-running { + type boolean; + description + "Flags indicating if activate timer is running"; + } + leaf apply-timer-running { + type boolean; + description + "Flags indicating if apply timer is running"; + } + leaf event-queue-size { + type boolean; + description + "the current size of the event queue"; + } + leaf restarts { + type yang:hex-string; + description + "Restart vector to keep track of the restart + state"; + } + leaf template-interface-id { + type uint32; + description + "Template Interface Identifier"; + } + } + + grouping SUBDB-ASSOC-SESS { + description + "Subscriber database associated session"; + leaf template-type { + type Subdb-object-type-data; + description + "Template type"; + } + leaf template-name { + type string { + length "0..65"; + } + description + "Template name"; + } + leaf varlist { + type string { + length "0..1000"; + } + description + "Varlist"; + } + } + + grouping SUBDB-TEMPLATES { + description + "Subscriber database templates"; + list associated-template { + description + "Associated templates"; + uses SUBDB-ASSOC-SESS; + } + } + + grouping SUBDB-ASSOC-SESSION { + description + "Subscriber database associated session"; + container template { + description + "Subdb template"; + uses SUBDB-TEMPLATES; + } + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf associations { + type uint32; + description + "Association count which reflects number of + entries in AssociatedTemplates"; + } + leaf varlist-id { + type uint32; + description + "Varlist Id"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2.yang new file mode 100644 index 000000000..e946661e2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2.yang @@ -0,0 +1,344 @@ +submodule Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2 { + belongs-to Cisco-IOS-XR-Subscriber-infra-subdb-oper { + prefix Cisco-IOS-XR-Subscriber-infra-subdb-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR Subscriber-infra-subdb package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-29 { + description + "Added new statistics to SIR flap history. + 2021-09-17 + Adding new bag for retrieving subdb sirflap history ."; + semver:module-version "2.1.0"; + } + revision 2021-02-22 { + description + "Adding yang support to retrive server connection time-stats."; + semver:module-version "2.1.0"; + } + revision 2020-04-02 { + description + "Added new bag for Subscriber database transition states and cfg object types."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-09-28 { + description + "Fixed Subscriber database Association."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Subdb-req-time-stats-id { + type enumeration { + enum "activate-time-stats" { + description + "activate time stats"; + } + enum "config-gen-time-stats" { + description + "config gen time stats"; + } + enum "config-done-time-stats" { + description + "config done time stats"; + } + enum "apply-time-stats" { + description + "apply time stats"; + } + enum "time-stats-max" { + description + "time stats max"; + } + } + description + "Subdb req time stats id"; + } + + grouping SUBDB-REQ-TIME-STATS-BAG { + description + "SUBDB REQ TIME STATS BAG"; + leaf request-count { + type uint32; + description + "RequestCount"; + } + leaf accumulative-time-seconds { + type uint32; + units "second"; + description + "Acumulative time seconds"; + } + leaf accumulative-time-nano-seconds { + type uint32; + units "nanosecond"; + description + "Acumulative time nano-seconds"; + } + leaf average-time-seconds { + type uint32; + units "second"; + description + "Average time seconds"; + } + leaf average-time-nano-seconds { + type uint32; + units "nanosecond"; + description + "Average time nano-seconds"; + } + leaf minimum-time-seconds { + type uint32; + units "second"; + description + "Minimum time seconds"; + } + leaf minimum-time-nano-seconds { + type uint32; + units "nanosecond"; + description + "Minimum time nano-seconds"; + } + leaf maximum-time-seconds { + type uint32; + units "second"; + description + "Maximum time seconds"; + } + leaf maximum-time-nano-seconds { + type uint32; + units "nanosecond"; + description + "Maximum time nano-seconds"; + } + leaf create-timestamp-for-maximum-seconds { + type uint32; + units "second"; + description + "Create timestamp (seconds) for max time session"; + } + leaf create-timestamp-for-maximum-nano-seconds { + type uint32; + units "nanosecond"; + description + "Create timestamp (nano-seconds) for max time + session"; + } + leaf sub-label-for-maximum { + type uint32; + description + "Sub-label for max time session"; + } + } + + grouping SUBDB-SERVER-TIMESTAT-INFO { + description + "per client timestat"; + container time-statistics { + description + "Time Statistics"; + uses SUBDB-REQ-TIME-STATS-BAG; + } + leaf client-name-xr { + type string; + description + "Subdb Client name"; + } + leaf timestat-index { + type Subdb-req-time-stats-id; + description + "Type of statistics"; + } + } + + grouping SUBDB-SUBSCRIBER-IN-STATE-COUNTS { + description + "SUBDB SUBSCRIBER IN STATE COUNTS"; + leaf init-state { + type uint32; + description + "Sessions in initialized state"; + } + leaf destroying-state { + type uint32; + description + "Sessions in Destroying state"; + } + leaf config-gen-state { + type uint32; + description + "Sessions in Config gen state"; + } + leaf fat-gen-state { + type uint32; + description + "Sessions in Fat gen state"; + } + leaf config-apply-state { + type uint32; + description + "Sessions in Config apply state"; + } + leaf config-done-state { + type uint32; + description + "Sessions in Config done state"; + } + leaf config-unapply-state { + type uint32; + description + "Sessions in Config unapply state"; + } + leaf config-error-state { + type uint32; + description + "Sessions in Config error state"; + } + leaf error-state { + type uint32; + description + "Sessions in error state"; + } + leaf pre-sync-state { + type uint32; + description + "Sessions in pre sync state"; + } + leaf sync-state { + type uint32; + description + "Sessions in sync state"; + } + } + + grouping SUBDB-CFG-OBJECT-TYPE { + description + "SUBDB CFG OBJECT TYPE"; + leaf object-type-min { + type uint32; + description + "Object type min"; + } + leaf object-type-user-profile { + type uint32; + description + "Object type user profile"; + } + leaf object-type-service-profile { + type uint32; + description + "Object type service profile"; + } + leaf object-type-subsc-svc-template { + type uint32; + description + "Object type subsc svc template"; + } + leaf object-type-ppp-template { + type uint32; + description + "Object type ppp template"; + } + leaf object-type-ip-sub-template { + type uint32; + description + "Object type ipsub template"; + } + leaf object-type-sub-template { + type uint32; + description + "Object type sub template"; + } + } + + grouping SUBDB-SUMMARY-COUNTS-BAG { + description + "SUBDB SUMMARY COUNTS BAG"; + container subdb-obj-counts-by-type { + description + "The count of the various configuration objects + by type"; + uses SUBDB-CFG-OBJECT-TYPE; + } + container subscribers-in-state { + description + "Number of subscribers in the various states"; + uses SUBDB-SUBSCRIBER-IN-STATE-COUNTS; + } + container num-transitions-through-state { + description + "Cumulative number of transitions through the + various states"; + uses SUBDB-SUBSCRIBER-IN-STATE-COUNTS; + } + leaf assoc-db-entries { + type uint32; + description + "Number of Entries in Association DB"; + } + leaf assoc-db-associations { + type uint32; + description + "Number of Associations in Association DB"; + } + leaf derived-db-entries { + type uint32; + description + "Number of Entries in Derived DB"; + } + leaf config-db-entries { + type uint32; + description + "Number of Entries in Configuration DB"; + } + leaf interface-db-entries { + type uint32; + description + "Number of Entries in Interface DB"; + } + leaf num-ipsub-dhcp { + type uint32; + description + "Number of IPSUB DHCP subscribers"; + } + leaf num-ipsub-inband { + type uint32; + description + "Number of IPSUB Inband subscribers"; + } + leaf num-pppoe { + type uint32; + description + "Number of PPPOE subscribers"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper.yang new file mode 100644 index 000000000..076942ad7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-Subscriber-infra-subdb-oper.yang @@ -0,0 +1,205 @@ +module Cisco-IOS-XR-Subscriber-infra-subdb-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-Subscriber-infra-subdb-oper"; + prefix subscriber-infra-subdb-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub2 { + revision-date 2021-11-29; + } + include Cisco-IOS-XR-Subscriber-infra-subdb-oper-sub1 { + revision-date 2021-11-29; + } + + 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 Subscriber-infra-subdb package operational data. + + This module contains definitions + for the following management objects: + subscriber-database: Subscriber database operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-29 { + description + "Added new statistics to SIR flap history. + 2021-09-17 + Adding new bag for retrieving subdb sirflap history ."; + semver:module-version "2.1.0"; + } + revision 2021-02-22 { + description + "Adding yang support to retrive server connection time-stats."; + semver:module-version "2.1.0"; + } + revision 2020-04-02 { + description + "Added new bag for Subscriber database transition states and cfg object types."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-09-28 { + description + "Fixed Subscriber database Association."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sub-db-time-stat { + type enumeration { + enum "activate-time-stats" { + value 0; + description + "SUBDB time stats activate-time-stats"; + } + enum "config-gen-time-stats" { + value 1; + description + "SUBDB time stats config-gen-time-stats"; + } + enum "config-done-time-stats" { + value 2; + description + "SUBDB time stats config-done-time-stats"; + } + enum "apply-time-stats" { + value 3; + description + "SUBDB time stats apply-time-stats"; + } + } + description + "Sub db time stat"; + } + + container subscriber-database { + config false; + description + "Subscriber database operational data"; + container nodes { + description + "List of nodes for which subscriber data is + collected"; + list node { + key "node-name"; + description + "Subscriber data for a particular node"; + container subdb-assoc { + description + "Subscriber data for associated templates"; + container labels { + description + "List of associated subscriber labels"; + list label { + key "subscriber-label"; + description + "Association for a given subscriber label"; + leaf subscriber-label { + type uint32; + description + "Subscriber label"; + } + uses SUBDB-ASSOC-SESSION; + } + } + } + container association { + description + "Subscriber data for associated templates"; + container labels { + description + "List of associated subscriber labels"; + list label { + key "subscriber-label"; + description + "Association for a given subscriber label"; + leaf subscriber-label { + type xr:Hex-integer; + description + "Subscriber label"; + } + uses SUBDB-ASSOC-SESSION; + } + } + } + container summary { + description + "Subscriber data for associated templates"; + uses SUBDB-SUMMARY-COUNTS-BAG; + } + container connection { + description + "Subscriber data for a client connected"; + container server-time-stats { + description + "Subscriber data for a client connected"; + list server-time-stat { + description + "Subscriber timestats for client connected."; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client Name"; + } + leaf type-id { + type Sub-db-time-stat; + description + "Stats Type ID"; + } + uses SUBDB-SERVER-TIMESTAT-INFO; + } + } + } + container session { + description + "Subscriber management session information"; + container labels { + description + "Subscriber management list of subscriber + labels"; + list label { + key "subscriber-label"; + description + "Session information for a subscriber label"; + leaf subscriber-label { + type xr:Hex-integer; + description + "Subscriber label"; + } + uses SUBDB-SUBSCRIBER-OBJ; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-aaacore-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-aaacore-cfg.yang new file mode 100644 index 000000000..23260cc53 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-aaacore-cfg.yang @@ -0,0 +1,707 @@ +module Cisco-IOS-XR-aaa-aaacore-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-aaacore-cfg"; + prefix aaa-aaacore-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-lib-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-aaa-lib-cfg { + prefix a1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a2; + } + + 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 aaa-aaacore package configuration. + + This YANG module augments the + Cisco-IOS-XR-aaa-lib-cfg, + Cisco-IOS-XR-ifmgr-cfg + modules with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-09-04 { + description + "Added class for nas-identifier."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nas-port-value { + type enumeration { + enum "async" { + value 0; + description + "Async(0)"; + } + enum "sync" { + value 1; + description + "Sync(1)"; + } + enum "isdn" { + value 2; + description + "ISDN(2)"; + } + enum "isdn-async-v120" { + value 3; + description + "ISDN Async V120(3)"; + } + enum "isdn-async-v110" { + value 4; + description + "ISDN Async V110(4)"; + } + enum "virtual" { + value 5; + description + "Virtual(5)"; + } + enum "isdn-async-piafs" { + value 6; + description + "ISDN Async PIAFS(6)"; + } + enum "x75" { + value 9; + description + "X75(9)"; + } + enum "ethernet" { + value 15; + description + "Ethernet(15)"; + } + enum "pppoa" { + value 30; + description + "PPPoA(30)"; + } + enum "pppoeoa" { + value 31; + description + "PPPoEoA(31)"; + } + enum "pppoeoe" { + value 32; + description + "PPPoEoE(32)"; + } + enum "pppoeovlan" { + value 33; + description + "PPPoEoVLAN(33)"; + } + enum "pppoeoqinq" { + value 34; + description + "PPPoEoQinQ(34)"; + } + enum "virtual-pppoeoe" { + value 35; + description + "Virtual PPPoEoE(35)"; + } + enum "virtual-pppoeovlan" { + value 36; + description + "Virtual PPPoEoVLAN(36)"; + } + enum "virtual-pppoeoqinaq" { + value 37; + description + "Virtual PPPoEoQinQ(37)"; + } + enum "ipsec" { + value 38; + description + "IPSEC(38)"; + } + enum "ipoeoe" { + value 39; + description + "IPOEOE(39)"; + } + enum "ipoeovlan" { + value 40; + description + "IPOEOVLAN(40)"; + } + enum "ipoeoqinq" { + value 41; + description + "IPOEOQINQ(41)"; + } + enum "virtual-ipoeoe" { + value 42; + description + "VIRTUAL IPOEOE(42)"; + } + enum "virtual-ipoeovlan" { + value 43; + description + "VIRTUAL IPOEOVLAN(43)"; + } + enum "virtual-ipoeoqinq" { + value 44; + description + "VIRTUAL IPOEOQINQ(44)"; + } + } + description + "Nas port value"; + } + + typedef Aaa-list { + type string { + pattern "(subscriber)|(service)|(policy-if)|(prepaid)|(dot1x)"; + } + description + "subscriber:Set AAA lists for Subscriber, service + :Set AAA lists for Service, policy-if:Set + policy-if, prepaid:Set prepaid, dot1x:Set dot1x + method list"; + } + + typedef Aaa-service-accounting { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "extended" { + value 1; + description + "Extended"; + } + enum "brief" { + value 2; + description + "Brief"; + } + } + description + "Aaa service accounting"; + } + + grouping FORMAT-TABLE { + description + "Common node of nas-port-id, calling-station, + called-station"; + container formats { + description + "AAA nas-port-id attribute format"; + list format { + key "type"; + description + "nas-port-id attribute format"; + leaf type { + type uint32 { + range "0..45"; + } + description + "Nas-Port-Type value to apply format name on"; + } + leaf format-name { + type string; + mandatory true; + description + "AAA nas-port attribute format"; + } + } + } + } + + augment "/a2:interface-configurations/a2:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container aaa-table { + description + "AAA configuration"; + container radius { + description + "AAA radius configuration"; + container attribute { + description + "AAA radius attribute"; + leaf nas-port-type { + type Nas-port-value; + description + "AAA nas-port-type attribute"; + } + leaf nas-identifier { + type string; + description + "AAA nas-identifier attribute"; + } + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container aaa-subscriber { + description + "AAA subscriber"; + container policy-if-authors { + description + "AAA authorization policy"; + list policy-if-author { + key "type listname"; + description + "Configurations related to authorization"; + leaf type { + type Aaa-list; + description + "Set authorization lists"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named authorization list"; + } + leaf-list method { + type dt1:Aaa-method; + min-elements 1; + max-elements "4"; + description + "Method Types"; + } + leaf-list server-group-name { + type string; + max-elements "4"; + description + "Server group names"; + } + } + } + container accountings { + description + "AAA accounting"; + list accounting { + key "type listname"; + description + "Configurations related to accounting"; + leaf type { + type Aaa-list; + description + "Set accounting lists"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named accounting list"; + } + leaf broadcast { + type dt1:Aaa-accounting-broadcast; + mandatory true; + description + "Broadcast"; + } + leaf-list method { + type dt1:Aaa-method; + max-elements "4"; + description + "Method Types"; + } + leaf-list server-group-name { + type string; + max-elements "4"; + description + "Server group names"; + } + } + } + container service-accounting { + description + "Set accounting parameters for Service"; + leaf type { + type Aaa-service-accounting; + description + "Send extended/brief service accounting records"; + } + } + container prepaid-authors { + description + "AAA authorization prepaid"; + list prepaid-author { + key "type listname"; + description + "Configurations related to authorization"; + leaf type { + type Aaa-list; + description + "Set authorization lists"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named authorization list"; + } + leaf-list method { + type dt1:Aaa-method; + min-elements 1; + max-elements "4"; + description + "Method Types"; + } + leaf-list server-group-name { + type string; + max-elements "4"; + description + "Server group names"; + } + } + } + container authorizations { + description + "AAA authorization"; + list authorization { + key "type listname"; + description + "Configurations related to authorization"; + leaf type { + type Aaa-list; + description + "Set authorization lists"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named authorization list"; + } + leaf-list method { + type dt1:Aaa-method; + min-elements 1; + max-elements "4"; + description + "Method Types"; + } + leaf-list server-group-name { + type string; + max-elements "4"; + description + "Server group names"; + } + } + } + container authentications { + description + "AAA authentication"; + list authentication { + key "type listname"; + description + "Configurations related to authentication"; + leaf type { + type Aaa-list; + description + "Set authentication lists"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named authentication list"; + } + leaf-list method { + type dt1:Aaa-method; + min-elements 1; + max-elements "4"; + description + "Method Types"; + } + leaf-list server-group-name { + type string; + max-elements "4"; + description + "Server group names"; + } + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container aaa-mobile { + description + "AAA Mobile"; + container mobiles { + description + "AAA Mobile Accounting"; + list mobile { + key "listname"; + description + "Configurations related to accounting"; + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named accounting list"; + } + leaf broadcast { + type dt1:Aaa-accounting-broadcast; + mandatory true; + description + "Broadcast"; + } + leaf-list method { + type dt1:Aaa-method; + max-elements "4"; + description + "Method Types"; + } + leaf-list server-group-name { + type string; + max-elements "4"; + description + "Server group names"; + } + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container aaa-dot1x { + description + "AAA Dot1x"; + container authentications { + description + "AAA authentication"; + list authentication { + key "type listname"; + description + "Configurations related to authentication"; + leaf type { + type Aaa-list; + description + "Set authentication lists"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named authentication list"; + } + leaf-list method { + type dt1:Aaa-method; + min-elements 1; + max-elements "4"; + description + "Method Types"; + } + leaf-list server-group-name { + type string; + max-elements "4"; + description + "Server group names"; + } + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container radius-attribute { + description + "AAA RADIUS attribute configurations"; + container nas-port-id { + description + "AAA nas-port-id attribute"; + uses FORMAT-TABLE; + } + container calling-station { + description + "AAA calling station id attribute"; + uses FORMAT-TABLE; + } + container called-station { + description + "AAA called station id attribute"; + uses FORMAT-TABLE; + } + container nas-port { + description + "AAA nas-port-id attribute"; + container format-extendeds { + description + "AAA nas-port-id attribute format"; + list format-extended { + key "value type"; + description + "nas-port-id extended attribute"; + leaf format-identifier { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "A 32 character string representing the + format to be used"; + } + leaf value { + type xr:Cisco-ios-xr-string; + description + "format type"; + } + leaf type { + type uint32 { + range "0..45"; + } + description + "AAA nas-port attribute format"; + } + } + } + } + container format-others { + description + "AAA nas-port-id attribute format"; + list format-other { + key "nas-port-type-name"; + description + "Other configs"; + leaf nas-port-type-name { + type xr:Cisco-ios-xr-string; + description + "Nas-Port-Type value to apply format name on"; + } + leaf attribute-config1 { + type string; + description + "Argument1"; + } + leaf attribute-config2 { + type string; + description + "Argument2"; + } + leaf attribute-config3 { + type string; + description + "Argument3"; + } + leaf attribute-config4 { + type string; + description + "Argument4"; + } + leaf attribute-config5 { + type string; + description + "Argument5"; + } + leaf attribute-config6 { + type string; + description + "Argument6"; + } + leaf attribute-config7 { + type string; + description + "Argument7"; + } + leaf attribute-config8 { + type string; + description + "Argument8"; + } + leaf attribute-config9 { + type string; + description + "Argument9"; + } + leaf attribute-config10 { + type string; + description + "Argument10"; + } + leaf attribute-config11 { + type string; + description + "Argument11"; + } + leaf attribute-config12 { + type string; + description + "Argument12"; + } + leaf attribute-config13 { + type string; + description + "Argument13"; + } + leaf attribute-config14 { + type string; + description + "Argument14"; + } + leaf attribute-config15 { + type string; + description + "Argument15"; + } + leaf attribute-config16 { + type string; + description + "Argument16"; + } + leaf attribute-config17 { + type string; + description + "Argument17"; + } + leaf attribute-config18 { + type string; + description + "Argument18"; + } + leaf attribute-config19 { + type uint32 { + range "1..253"; + } + description + "Argument19"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-base-mib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-base-mib-cfg.yang new file mode 100644 index 000000000..482ecd119 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-base-mib-cfg.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-aaa-diameter-base-mib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-diameter-base-mib-cfg"; + prefix aaa-diameter-base-mib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 aaa-diameter-base-mib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container diametermib { + description + "Enable SNMP diameter traps"; + leaf protocolerror { + type boolean; + description + "Enable SNMP diameter protocol error + notification"; + } + leaf permanentfail { + type boolean; + description + "Enable SNMP diameter permanent failure + notification"; + } + leaf peerdown { + type boolean; + description + "Enable SNMP diameter peer connection down + notification"; + } + leaf peerup { + type boolean; + description + "Enable SNMP diameter peer connection up + notification"; + } + leaf transientfail { + type boolean; + description + "Enable SNMP diameter transient failure + notification"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-cfg.yang new file mode 100644 index 000000000..7e9e8bcbe --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-cfg.yang @@ -0,0 +1,641 @@ +module Cisco-IOS-XR-aaa-diameter-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-diameter-cfg"; + prefix aaa-diameter-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-lib-cfg { + prefix a1; + } + import Cisco-IOS-XR-aaa-locald-cfg { + prefix a2; + } + + 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 aaa-diameter package configuration. + + This YANG module augments the + Cisco-IOS-XR-aaa-lib-cfg, + Cisco-IOS-XR-aaa-locald-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-20 { + description + "Added revertive/non-revertive, high quota usage and subscription id configs in yang + 2022-01-25 + New config added for diameter peer revertive and non revertive cfg"; + semver:module-version "2.1.0"; + } + revision 2020-04-05 { + description + "New config added for quota high usage disconnect."; + semver:module-version "2.0.0"; + } + revision 2019-10-09 { + description + "Added nas leaf in yang + 2019-09-20 + Changed the datatype for AddressIpv6 to IPAddress"; + semver:module-version "2.0.0"; + } + revision 2019-07-10 { + description + "Added origin realm to peer leaf in yang"; + semver:module-version "1.0.0"; + } + revision 2019-06-17 { + description + "Added new auth session stateless to peer leaf in yang"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-03-28 { + description + "Added new service context id gy leaf in yang"; + } + revision 2019-03-05 { + description + "Fixed gx, gy leafs in yang"; + } + revision 2018-09-16 { + description + "Fixed yang gap"; + } + revision 2017-11-13 { + description + "Fixed yang gap"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Aaa-diameter-tls { + type uint32 { + range "0..1"; + } + description + "Aaa diameter tls"; + } + + typedef Aaa-diameter-timeout { + type uint32 { + range "6..1000"; + } + description + "Aaa diameter timeout"; + } + + typedef Aaa-diameter-port { + type uint32 { + range "1..65535"; + } + description + "Aaa diameter port"; + } + + typedef Aaa-diameter-attr { + type uint32 { + range "0..23"; + } + description + "Aaa diameter attr"; + } + + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container diameter { + description + "Diameter base protocol"; + container gy { + description + "Start diameter policy-if"; + leaf retransmit { + type uint32 { + range "1..10"; + } + description + "Set retransmit count"; + } + leaf enable { + type boolean; + default "true"; + description + "Enable or disable gy"; + } + leaf dest-host { + type string { + length "1..256"; + } + description + "Destination Host name in FQDN format"; + } + leaf tx-timer { + type Aaa-diameter-timeout; + description + "Transaction timer value"; + } + leaf service-context-id { + type string { + length "1..256"; + } + description + "Service Context ID in FQDN format"; + } + } + container origin { + description + "Origin sub commands"; + leaf realm { + type string { + length "1..256"; + } + description + "Origin Realm String"; + } + leaf host { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Host name in FQDN format"; + } + } + container nas { + description + "Start diameter Nas"; + leaf enable { + type boolean; + default "true"; + description + "Enable or disable nas"; + } + leaf dest-host { + type string { + length "1..256"; + } + description + "Destination Host name in FQDN format"; + } + } + container diameter-tls { + description + "TLS sub commands"; + leaf trustpoint { + type string; + description + "Trustpoint label to be used"; + } + } + container peers { + description + "List of diameter peers"; + list peer { + key "peer-name"; + description + "Diameter peer instance"; + container peer-timer { + description + "Timers used for the peer"; + leaf transaction { + type Aaa-diameter-timeout; + description + "Timer value in seconds"; + } + leaf connection { + type Aaa-diameter-timeout; + description + "Timer value in seconds"; + } + leaf watchdog { + type Aaa-diameter-timeout; + description + "Timer value in seconds"; + } + } + container peer-type { + description + "Peer Type"; + leaf server { + type boolean; + description + "Enabled or disabled"; + } + } + container origin-realms { + description + "List of origin realms"; + list origin-realm { + key "origin-realm-name"; + description + "Diameter Origin realm instance"; + container access-intf-names { + description + "List of Access Interfaces"; + list access-intf-name { + key "access-intf-name"; + description + "Diameter Origin realm Access intf instance"; + leaf access-intf-name { + type xr:Interface-name; + description + "Specify a access interface"; + } + } + } + leaf origin-realm-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Origin realm information"; + } + } + } + leaf host-destination { + type string { + length "1..256"; + } + description + "Destination host information"; + } + leaf auth-session-stateless { + type boolean; + description + "Enabled or disabled"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of diameter server"; + } + leaf realm-destination { + type string { + length "1..256"; + } + description + "Realm to which the peer belongs to"; + } + leaf tcp-transport { + type Aaa-diameter-port; + description + "Specify a Diameter transport protocol"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + DIAMETER packets"; + } + leaf ipv6-address { + type inet:ip-address-no-zone; + description + "IPv6 address of diameter server"; + } + leaf tls-transport { + type Aaa-diameter-tls; + description + "Specify a Diameter security type"; + } + leaf vrf-ip { + type string; + description + "VRF the peer belongs to"; + } + leaf peer-name { + type xr:Cisco-ios-xr-string; + description + "Name for the diameter peer configuration"; + } + } + } + container quota-high-usage { + description + "DIAMETER quota high usage configuration"; + leaf disconnect-disable { + type boolean; + default "false"; + description + "Diameter high quota usage configuration as + disconnect disable"; + } + } + container diams { + description + "Attribute list configuration for test command"; + list diam { + key "list-id"; + description + "attribute list configuration"; + container diam-attr-defs { + description + "Specify an attribute definition"; + list diam-attr-def { + key "vendor-id attribute-id"; + description + "vendor id"; + container diam-attr-value { + description + "attr subcommands"; + leaf type-string { + type string; + description + "String type"; + } + leaf type-ipv4-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address type"; + } + leaf type-binary { + type string; + description + "Binary type"; + } + leaf type-boolean { + type uint32 { + range "0..4294967295"; + } + description + "Boolean type"; + } + leaf type-enum { + type uint32 { + range "0..4294967295"; + } + description + "Enumeration type"; + } + leaf type-grouped { + type uint32 { + range "0..99"; + } + description + "Grouped attribute"; + } + leaf type-ulong { + type uint32 { + range "0..4294967295"; + } + description + "Numeric type"; + } + leaf type-identity { + type string; + description + "Diameter-identity type"; + } + leaf data-type { + type Aaa-diameter-attr; + description + "Dataypte of attribute"; + } + leaf type-ulonglong { + type uint32 { + range "0..4294967295"; + } + description + "Numeric type"; + } + leaf type-utc { + type uint32 { + range "0..4294967295"; + } + description + "Numeric type"; + } + leaf mandatory { + type uint32 { + range "0..1"; + } + description + "Is mandatory?"; + } + } + leaf vendor-id { + type uint32 { + range "0..4294967295"; + } + description + "value for vendor id"; + } + leaf attribute-id { + type uint32 { + range "1..65535"; + } + description + "enter attribute id"; + } + } + } + leaf list-id { + type uint32 { + range "0..99"; + } + description + "attribute list number"; + } + } + } + container gx { + description + "Start diameter policy-if"; + leaf retransmit { + type uint32 { + range "1..10"; + } + description + "Set retransmit count"; + } + leaf enable { + type boolean; + default "true"; + description + "Enable or disable gx"; + } + leaf dest-host { + type string { + length "1..256"; + } + description + "Destination Host name in FQDN format"; + } + leaf tx-timer { + type Aaa-diameter-timeout; + description + "Transaction timer value"; + } + } + container services { + description + "Service sub commands"; + list service { + key "service-name"; + description + "Diameter Service instance"; + leaf monitoring-key { + type string; + description + "Name for the diameter Service Monitoring + configuration"; + } + leaf service-name { + type xr:Cisco-ios-xr-string; + description + "Name for the diameter Service configuration"; + } + } + } + container subscription-id { + description + "Diameter subscription id configuration"; + leaf type { + type uint32 { + range "0..4"; + } + description + "Set subscription id type"; + } + } + container peer-mode { + description + "DIAMETER peer-mode configuration"; + leaf non-revertive { + type boolean; + default "false"; + description + "Diameter peer mode configuration non-revertive"; + } + leaf revertive { + type boolean; + default "false"; + description + "Diameter peer mode configuration revertive"; + } + } + container diameter-timer { + description + "Timers used for the peer"; + leaf transaction { + type Aaa-diameter-timeout; + description + "Timer value in seconds"; + } + leaf connection { + type Aaa-diameter-timeout; + description + "Timer value in seconds"; + } + leaf watchdog { + type Aaa-diameter-timeout; + description + "Timer value in seconds"; + } + } + container vendor { + description + "Vendor specific"; + container supported { + description + "Supported vendors"; + leaf cisco { + type boolean; + description + "Cisco attribute support"; + } + leaf threegpp { + type boolean; + description + "3GPP attribute support"; + } + leaf etsi { + type boolean; + description + "Etsi attribute support"; + } + leaf vodafone { + type boolean; + description + "Vodafone attribute support"; + } + } + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + DIAMETER packets"; + } + } + } + augment "/a1:aaa/a2:server-groups" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-locald-cfg'"; + container diameter-server-groups { + description + "DIAMETER server group definition"; + list diameter-server-group { + key "server-group-name"; + description + "DIAMETER server group name"; + container servers { + description + "List of DIAMETER servers present in the group"; + list server { + key "ordering-index peer-name"; + description + "A server to include in the server group"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf peer-name { + type xr:Cisco-ios-xr-string; + description + "Name for the diameter peer configuration"; + } + } + } + leaf server-group-name { + type xr:Cisco-ios-xr-string; + description + "DIAMETER server group name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper-sub1.yang new file mode 100644 index 000000000..f3afe9d83 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper-sub1.yang @@ -0,0 +1,1644 @@ +submodule Cisco-IOS-XR-aaa-diameter-oper-sub1 { + belongs-to Cisco-IOS-XR-aaa-diameter-oper { + prefix Cisco-IOS-XR-aaa-diameter-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR aaa-diameter package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-08 { + description + "show_diameter.bag file updated with event history update with gx and gy"; + semver:module-version "3.2.0"; + } + revision 2020-10-19 { + description + "show_diameter.bag file updated with ccr_final stale in gy stats"; + semver:module-version "3.1.0"; + } + revision 2020-04-07 { + description + "show_diameter.bag file updated with CCR Update COA Disconnect in GX Stats + 2020-02-28 + class-Name NAS was commented to avoid duplicate result in XML operational data + 2020-02-13 + show_diameter.bag file was updated to included sublabel"; + semver:module-version "3.0.0"; + } + revision 2019-10-17 { + description + "Added new container for NasSession and made NasSessionId as child + 2019-09-26 + Introduced a peer-closed-reason leaf and transaction related leaves in DIAMETER-SERVERBAG grouping. + 2019-08-25 + Fixed the string length to Bounded String."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Peer-state-value { + type enumeration { + enum "state-none" { + value 0; + description + "No Peer states"; + } + enum "closed" { + value 1; + description + "Peer closed"; + } + enum "wait-connection-ack" { + value 2; + description + "Waiting for ACK"; + } + enum "wait-cea" { + value 3; + description + "Waiting for CEA"; + } + enum "state-open" { + value 4; + description + "Peer open"; + } + enum "closing" { + value 5; + description + "Peer closed"; + } + enum "suspect" { + value 6; + description + "Peer in suspect state"; + } + } + description + "Peer State Values"; + } + + typedef Who-initiated-disconnect { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "host" { + value 1; + description + "Disconnected by host"; + } + enum "peer" { + value 2; + description + "Disconnected by peer"; + } + } + description + "Who initiated to disconnect"; + } + + typedef Disconnect-cause { + type enumeration { + enum "reboot" { + value 0; + description + "Disconnect caused by reboot"; + } + enum "busy" { + value 1; + description + "Disconnect due to server busy"; + } + enum "do-not-wait-to-talk" { + value 2; + description + "Disconnect as server does not want to talk"; + } + } + description + "Disconnect cause values"; + } + + typedef Peer { + type enumeration { + enum "undefined" { + value 0; + description + "Peer not defined"; + } + enum "server" { + value 1; + description + "Server type"; + } + } + description + " Peer type values"; + } + + typedef Security-type-value { + type enumeration { + enum "security-type-none" { + value 0; + description + "No security type"; + } + enum "type" { + value 1; + description + "TLS security"; + } + enum "ipsec" { + value 2; + description + "IPSEC security"; + } + } + description + "Security type values"; + } + + typedef Protocol-type-value { + type enumeration { + enum "protocol-none" { + value 0; + description + "No protocol used"; + } + enum "tcp" { + value 1; + description + "TCP protocol"; + } + } + description + "Protocol type values"; + } + + typedef Disconnect-history { + type enumeration { + enum "gx-disconnect-type" { + value 0; + description + "Gx disconnect type"; + } + enum "gy-disconnect-type" { + value 1; + description + "Gy disconnect type"; + } + enum "unknown-disconnect-type" { + value 2; + description + "Unknown disconnect type"; + } + } + description + "Disconnect type values"; + } + + grouping DIAMETER-GX-SESS { + description + "Gx Sess"; + container event-history { + description + "gx Event History"; + uses EVT-HIST-INFO; + } + leaf aaa-session-id { + type uint32; + description + "AAA session id"; + } + leaf diameter-session-id { + type string; + description + "Diameter session id"; + } + leaf request-number { + type uint32; + description + "Request Number"; + } + leaf session-state { + type string; + description + "Session State"; + } + leaf request-type { + type string; + description + "Request Type"; + } + leaf retry-count { + type uint32; + description + "Gx Retry count"; + } + leaf service-count { + type uint32; + description + " Gx Plus Service Count"; + } + leaf gx-plus-services { + type string; + description + "Gx Plus Services"; + } + leaf reavalidation-time { + type string; + description + "Revalidation Time"; + } + leaf mac-address { + type yang:hex-string; + description + "Mac address of the subscriber session"; + } + leaf subscriber-label { + type uint32; + description + "Subscriber Label"; + } + } + + grouping DIAMETER-GY-STATS { + description + "Gy Statistics"; + leaf ccr-init-messages { + type uint32; + description + "CCR Initial Messages"; + } + leaf ccr-init-failed-messages { + type uint32; + description + "CCR Initial Messages Failed"; + } + leaf ccr-init-timed-out-messages { + type uint32; + description + "CCR Initial Messages Timed Out"; + } + leaf ccr-init-retry-messages { + type uint32; + description + "CCR Initial Messages retry"; + } + leaf ccr-update-messages { + type uint32; + description + "CCR Update Messages"; + } + leaf ccr-update-failed-messages { + type uint32; + description + "CCR Update Messages Failed"; + } + leaf ccr-update-timed-out-messages { + type uint32; + description + "CCR Update Messages Timed Out"; + } + leaf ccr-update-retry-messages { + type uint32; + description + "CCR Update Messages retry"; + } + leaf ccr-final-messages { + type uint32; + description + "CCR Final Messages"; + } + leaf ccr-final-failed-messages { + type uint32; + description + "CCR Final Messages Failed"; + } + leaf ccr-final-timed-out-messages { + type uint32; + description + "CCR Final Messages Timed Out"; + } + leaf ccr-final-retry-messages { + type uint32; + description + "CCR Final Messages retry"; + } + leaf cca-init-messages { + type uint32; + description + "CCA Initial Messages"; + } + leaf cca-init-error-messages { + type uint32; + description + "CCA Initial Messages Error"; + } + leaf cca-update-messages { + type uint32; + description + "CCA Update Messages"; + } + leaf cca-update-error-messages { + type uint32; + description + "CCA Update Messages Error"; + } + leaf cca-final-messages { + type uint32; + description + "CCA Final Messages"; + } + leaf cca-final-error-messages { + type uint32; + description + "CCA Final Messages Error"; + } + leaf rar-received-messages { + type uint32; + description + "RAR Received Messages"; + } + leaf rar-received-error-messages { + type uint32; + description + "RAR Received Messages Error"; + } + leaf raa-sent-messages { + type uint32; + description + "RAA Sent Messages"; + } + leaf raa-sent-error-messages { + type uint32; + description + "RAA Sent Messages Error"; + } + leaf asr-received-messages { + type uint32; + description + "ASR Received Messages"; + } + leaf asr-received-error-messages { + type uint32; + description + "ASR Received Messages Error"; + } + leaf asa-sent-messages { + type uint32; + description + "ASA Sent Messages"; + } + leaf asa-sent-error-messages { + type uint32; + description + "ASA Sent Messages Error"; + } + leaf unknown-request-messages { + type uint32; + description + "Unknown Request Messages"; + } + leaf restore-sessions { + type uint32; + description + "Restore Sessions"; + } + leaf open-sessions { + type uint32; + description + "Total Opened Sessions"; + } + leaf close-sessions { + type uint32; + description + "Total Closed Sessions"; + } + leaf active-sessions { + type uint32; + description + "Total Active Sessions"; + } + leaf ccr-final-for-stale { + type uint32; + description + "CCR Final Stale"; + } + } + + grouping DIAMETER-NAS { + description + "NAS data"; + leaf aaa-session-id { + type string; + description + "AAA session id"; + } + leaf diameter-session-id { + type string; + description + "Diameter session id"; + } + leaf authentication-status { + type uint32; + description + "Diameter AAR status"; + } + leaf authorization-status { + type uint32; + description + "Diameter AAR status"; + } + leaf accounting-status { + type uint32; + description + "Diameter ACR status start"; + } + leaf accounting-status-stop { + type uint32; + description + "Diameter ACR status stop"; + } + leaf disconnect-status { + type uint32; + description + "Diameter STR status"; + } + leaf accounting-intrim-in-packets { + type uint32; + description + "Accounting intrim packet response in"; + } + leaf accounting-intrim-out-packets { + type uint32; + description + "Accounting intrim requests packets out"; + } + leaf method-list { + type string; + description + "Method list used for authentication"; + } + leaf server-used-list { + type string; + description + "Server used for authentication"; + } + leaf subscriber-label { + type uint32; + description + "Subscriber Label"; + } + } + + grouping DIAMETER-GY-SESS { + description + "Gy Sess"; + container event-history { + description + "gx Event History"; + uses EVT-HIST-INFO; + } + leaf aaa-session-id { + type uint32; + description + "AAA session id"; + } + leaf parent-aaa-session-id { + type uint32; + description + "AAA Parent session id"; + } + leaf diameter-session-id { + type string; + description + "Diameter session id"; + } + leaf request-number { + type uint32; + description + "Request Number"; + } + leaf session-state { + type string; + description + "Session State"; + } + leaf request-type { + type string; + description + "Request Type"; + } + leaf retry-count { + type uint32; + description + "Gy Retry count"; + } + leaf subscriber-label { + type uint32; + description + "Subscriber Label"; + } + } + + grouping DIAMETER-NAS-SUMMARY { + description + "NAS summary"; + leaf authen-response-in-packets { + type uint32; + description + "Authentication response pkt in"; + } + leaf authen-request-out-packets { + type uint32; + description + "Authentication request pkt out"; + } + leaf authen-request-in-packets { + type uint32; + description + "Authentication request from client"; + } + leaf authen-response-out-packets { + type uint32; + description + "Authentication response frwd to client"; + } + leaf authen-success-packets { + type uint32; + description + "Authentication response with success"; + } + leaf authen-response-fail-packets { + type uint32; + description + "Authentication response with failure"; + } + leaf authorization-in-packets { + type uint32; + description + "Authorization response packet in"; + } + leaf authorization-out-packets { + type uint32; + description + "Authorization request packet out"; + } + leaf authorization-request-in-packets { + type uint32; + description + "Authourization request from cleint"; + } + leaf authorization-response-out-packets { + type uint32; + description + "Authourization response frwd to client"; + } + leaf authorization-response-success-packets { + type uint32; + description + "Authentication response with success"; + } + leaf authorization-response-fail-packets { + type uint32; + description + "Authentication response with failure"; + } + leaf accounting-response-in-packets { + type uint32; + description + "Accounting packet response in"; + } + leaf accounting-request-out-packets { + type uint32; + description + "Accounting requests packets out"; + } + leaf accounting-start-request-packets { + type uint32; + description + "Accounting start request from cleint"; + } + leaf accounting-start-response-packets { + type uint32; + description + "Accounting start response forward to client"; + } + leaf accounting-start-success-packets { + type uint32; + description + "Accounting start response with success"; + } + leaf accounting-start-failed-packets { + type uint32; + description + "Accounting start response with failure"; + } + leaf accounting-stop-response-in-packets { + type uint32; + description + "Accounting stop packet response in"; + } + leaf accounting-stop-request-out-packets { + type uint32; + description + "Accounting stop requests packets out"; + } + leaf accounting-stop-request-in-packets { + type uint32; + description + "Acct stop request from cleint"; + } + leaf accounting-stop-response-out-packets { + type uint32; + description + "Acct stop response forward to client"; + } + leaf accounting-stop-success-response-packets { + type uint32; + description + "Accounting stop response with success"; + } + leaf accounting-stop-failed-packets { + type uint32; + description + "Accounting stop response with failure"; + } + leaf accounting-intrim-response-in-packets { + type uint32; + description + "Accounting interim packet response in"; + } + leaf accounting-interim-request-out-packets { + type uint32; + description + "Accounting interim requests packets out"; + } + leaf accounting-interim-request-in-packets { + type uint32; + description + "Accounting Interim request from cleint"; + } + leaf accounting-interim-response-out-packets { + type uint32; + description + "Accounting interim response frwd to client"; + } + leaf accounting-interim-success-packets { + type uint32; + description + "Accounting interim response with success"; + } + leaf accounting-interim-failed-packets { + type uint32; + description + "Accounting interim response with failure"; + } + leaf disconnect-response-in-packets { + type uint32; + description + "Disconnect response packets in"; + } + leaf disconnect-request-out-packets { + type uint32; + description + "Disconnect request pkt out"; + } + leaf disconnect-request-in-packets { + type uint32; + description + "Disconnect request from cleint"; + } + leaf disconnect-response-out-packets { + type uint32; + description + "Disconnect response forward to client"; + } + leaf disconnect-success-response-packets { + type uint32; + description + "Disconnect response with success"; + } + leaf disconnect-failed-response-packets { + type uint32; + description + "Disconnect response with failure"; + } + leaf coa-request-in-packets { + type uint32; + description + "COA/RAR Request packet in"; + } + leaf coa-response-out-packets { + type uint32; + description + "COA/RAR Response packet out"; + } + leaf coa-request-packets { + type uint32; + description + "COA request from client"; + } + leaf coa-response-packets { + type uint32; + description + "COA response forward to client"; + } + leaf coa-success-packets { + type uint32; + description + "COA response with success"; + } + leaf coa-failed-packets { + type uint32; + description + "COA response with failure"; + } + leaf pod-in-packets { + type uint32; + description + "POD/RAR Request packets in"; + } + leaf pod-out-packets { + type uint32; + description + "PAD/RAR Response packets out"; + } + leaf pod-request-in-packets { + type uint32; + description + "POD request from cleint"; + } + leaf pod-response-out-packets { + type uint32; + description + "POD response forward to client"; + } + leaf pod-success-packets { + type uint32; + description + "POD response with success"; + } + leaf pod-failed-packets { + type uint32; + description + "POD response with failure"; + } + } + + grouping DIAMETER-SERVERBAG { + description + "Diameter peer stats"; + leaf peer-name { + type string; + description + "Peer Name"; + } + leaf peer-index { + type uint32; + description + "Peer Index"; + } + leaf address { + type string; + description + "IPv4 or IPv6 address of DIAMETER peer"; + } + leaf port { + type uint32; + description + "Port number on which the peeris running"; + } + leaf port-connect { + type uint32; + description + "Local Connection port"; + } + leaf protocol-type { + type Protocol-type-value; + description + "Protocol Type"; + } + leaf security-type { + type Security-type-value; + description + "Security type used to transport"; + } + leaf conn-retry-timer { + type uint32; + units "second"; + description + "Connection retry timer in seconds"; + } + leaf watchdog-timer { + type uint32; + units "second"; + description + "Watch dog timer in seconds"; + } + leaf transaction-timer { + type uint32; + units "second"; + description + "Transaction timer in seconds"; + } + leaf vrf-name { + type string; + description + "Vrf Name"; + } + leaf source-interface { + type string; + description + "Source Interface"; + } + leaf destination-host { + type string; + description + "Destination host name"; + } + leaf destination-realm { + type string; + description + "Destination realm"; + } + leaf peer-type { + type Peer; + description + "Peer Type"; + } + leaf firmware-revision { + type uint32; + description + "Firmware revision"; + } + leaf state-duration { + type uint32; + units "second"; + description + "State Duration in seconds"; + } + leaf last-disconnect-cause { + type Disconnect-cause; + description + "Last Disconnect Reason"; + } + leaf who-init-disconnect { + type Who-initiated-disconnect; + description + "Who Initiated Disconnect"; + } + leaf in-as-rs { + type uint32; + description + "Incoming ASRs"; + } + leaf out-as-rs { + type uint32; + description + "Outgoing ASRs"; + } + leaf in-as-as { + type uint32; + description + "Incoming ASAs"; + } + leaf out-as-as { + type uint32; + description + "Outgoing ASAs"; + } + leaf in-ac-rs { + type uint32; + description + "Incoming ACRs"; + } + leaf out-ac-rs { + type uint32; + description + "Outgoing ACRs"; + } + leaf in-ac-as { + type uint32; + description + "Incoming ACAs"; + } + leaf out-ac-as { + type uint32; + description + "Outgoing ACAs"; + } + leaf in-ce-rs { + type uint32; + description + "Incoming CERs"; + } + leaf out-ce-rs { + type uint32; + description + "Outgoing CERs"; + } + leaf in-ce-as { + type uint32; + description + "Incoming CEAs"; + } + leaf out-ce-as { + type uint32; + description + "Outgoing CEAs"; + } + leaf in-dw-rs { + type uint32; + description + "Incoming DWRs"; + } + leaf out-dw-rs { + type uint32; + description + "Outgoing DWRs"; + } + leaf in-dw-as { + type uint32; + description + "Incoming DWAs"; + } + leaf out-dw-as { + type uint32; + description + "Outgoing DWAs"; + } + leaf in-dp-rs { + type uint32; + description + "Incoming DPRs"; + } + leaf out-dp-rs { + type uint32; + description + "Outgoing DPRs"; + } + leaf in-dp-as { + type uint32; + description + "Incoming DPAs"; + } + leaf out-dp-as { + type uint32; + description + "Outgoing DPAs"; + } + leaf in-ra-rs { + type uint32; + description + "Incoming RARs"; + } + leaf out-ra-rs { + type uint32; + description + "Outgoing RARs"; + } + leaf in-ra-as { + type uint32; + description + "Incoming RAAs"; + } + leaf out-ra-as { + type uint32; + description + "Outgoing RAAs"; + } + leaf in-st-rs { + type uint32; + description + "Incoming STRs"; + } + leaf out-st-rs { + type uint32; + description + "Outgoing STRs"; + } + leaf in-st-as { + type uint32; + description + "Incoming STAs"; + } + leaf out-st-as { + type uint32; + description + "Outgoing STAs"; + } + leaf in-cc-rs { + type uint32; + description + "Incoming CCRs"; + } + leaf out-cc-rs { + type uint32; + description + "Outgoing CCRs"; + } + leaf in-cc-as { + type uint32; + description + "Incoming CCAs"; + } + leaf out-cc-as { + type uint32; + description + "Outgoing CCAs"; + } + leaf out-aa-rs { + type uint32; + description + "Outgoing AARs"; + } + leaf in-aa-as { + type uint32; + description + "Incoming AAAs"; + } + leaf malformed-requests { + type uint32; + description + "Malformed Requests"; + } + leaf received-proto-errors { + type uint32; + description + "Protocol Error Received"; + } + leaf sent-proto-errors { + type uint32; + description + "Protocol Error Sent"; + } + leaf received-transient-fails { + type uint32; + description + "Transient failures Received"; + } + leaf sent-transient-fails { + type uint32; + description + "Transient failures Sent"; + } + leaf received-permanent-fails { + type uint32; + description + "Permanent Failures Received"; + } + leaf sent-permanent-fails { + type uint32; + description + "Permanent Failures Sent"; + } + leaf transport-down { + type uint32; + description + "Transport Down"; + } + leaf transaction-timeout-cnt { + type uint32; + description + "Transcation Timeout Counter"; + } + leaf transaction-remove-cnt { + type uint32; + description + "Transaction Remove Counter"; + } + leaf transaction-retry-cnt { + type uint32; + description + "Transaction Retry Counter"; + } + leaf transaction-normal-cnt { + type uint32; + description + "Transaction Normal Counter"; + } + leaf transaction-sent-cnt { + type uint32; + description + "Transaction transport Counter"; + } + leaf state { + type Peer-state-value; + description + "Peer Connection Status"; + } + leaf peer-closed-reason { + type string { + length "0..255"; + } + description + "Peer Closed Reason"; + } + } + + grouping DIAMETER-PEERS { + description + "Global Diameter data"; + leaf origin-host { + type string; + description + "Origin Host"; + } + leaf origin-realm { + type string; + description + "Origin Realm"; + } + leaf source-interface { + type string; + description + "Source Interface"; + } + leaf tls-trustpoint { + type string; + description + "TLS Trustpoint"; + } + leaf conn-retry-timer { + type uint32; + units "second"; + description + "Connection retry timer in seconds"; + } + leaf watchdog-timer { + type uint32; + units "second"; + description + "Watch dog timer in seconds"; + } + leaf transaction-timer { + type uint32; + units "second"; + description + "Transaction timer in seconds"; + } + leaf peer-num { + type uint32; + description + "Total no.of peers"; + } + leaf trans-total { + type uint32; + description + "Total number of transactions"; + } + leaf trans-max { + type uint32; + description + "Maximum number of transactions"; + } + list peer { + description + "Peer List"; + uses DIAMETER-SERVERBAG; + } + } + + grouping DIAMETER-GX { + description + "Diameter Gx stats"; + leaf is-enabled { + type boolean; + description + "Gx state"; + } + leaf tx-timer { + type uint32; + units "second"; + description + "Gx transaction timer in seconds"; + } + leaf retransmits { + type uint32; + description + "Gx retransmit count"; + } + } + + grouping DIAMETER-GX-STATS { + description + "Gx Statistics"; + leaf ccr-init-messages { + type uint32; + description + "CCR Initial Messages"; + } + leaf ccr-init-failed-messages { + type uint32; + description + "CCR Initial Messages Failed"; + } + leaf ccr-init-timed-out-messages { + type uint32; + description + "CCR Initial Messages Timed Out"; + } + leaf ccr-init-retry-messages { + type uint32; + description + "CCR Initial Messages retry"; + } + leaf ccr-update-messages { + type uint32; + description + "CCR Update Messages"; + } + leaf ccr-update-failed-messages { + type uint32; + description + "CCR Update Messages Failed"; + } + leaf ccr-update-timed-out-messages { + type uint32; + description + "CCR Update Messages Timed Out"; + } + leaf ccr-update-retry-messages { + type uint32; + description + "CCR Update Messages retry"; + } + leaf ccr-update-coa-disconnect-messages { + type uint32; + description + "CCR Update COA disconnect for quota high usage"; + } + leaf ccr-update-coa-disconnect-failed-message { + type uint32; + description + "CCR Update COA disconnect failed for quota high + usage"; + } + leaf ccr-final-messages { + type uint32; + description + "CCR Final Messages"; + } + leaf ccr-final-failed-messages { + type uint32; + description + "CCR Final Messages Failed"; + } + leaf ccr-final-timed-out-messages { + type uint32; + description + "CCR Final Messages Timed Out"; + } + leaf ccr-final-retry-messages { + type uint32; + description + "CCR Final Messages retry"; + } + leaf cca-init-messages { + type uint32; + description + "CCA Initial Messages"; + } + leaf cca-init-error-messages { + type uint32; + description + "CCA Initial Messages Error"; + } + leaf cca-update-messages { + type uint32; + description + "CCA Update Messages"; + } + leaf cca-update-error-messages { + type uint32; + description + "CCA Update Messages Error"; + } + leaf cca-final-messages { + type uint32; + description + "CCA Final Messages"; + } + leaf cca-final-error-messages { + type uint32; + description + "CCA Final Messages Error"; + } + leaf rar-received-messages { + type uint32; + description + "RAR Received Messages"; + } + leaf rar-received-error-messages { + type uint32; + description + "RAR Received Messages Error"; + } + leaf raa-sent-messages { + type uint32; + description + "RAA Sent Messages"; + } + leaf raa-sent-error-messages { + type uint32; + description + "RAA Sent Messages Error"; + } + leaf asr-received-messages { + type uint32; + description + "ASR Received Messages"; + } + leaf asr-received-error-messages { + type uint32; + description + "ASR Received Messages Error"; + } + leaf asa-sent-messsages { + type uint32; + description + "ASA Sent Messages"; + } + leaf asa-sent-error-messages { + type uint32; + description + "ASA Sent Messages Error"; + } + leaf session-termination-messages { + type uint32; + description + "Session Termination from server"; + } + leaf unknown-request-messages { + type uint32; + description + "Unknown Request Messages"; + } + leaf restore-sessions { + type uint32; + description + "Restore Sessions"; + } + leaf open-sessions { + type uint32; + description + "Total Opened Sessions"; + } + leaf close-sessions { + type uint32; + description + "Total Closed Sessions"; + } + leaf active-sessions { + type uint32; + description + "Total Active Sessions"; + } + } + + grouping DIAMETER-GY { + description + "Diameter Gy stats"; + leaf is-enabled { + type boolean; + description + "Gy state"; + } + leaf tx-timer { + type uint32; + units "second"; + description + "Gy transaction timer in seconds"; + } + leaf retransmits { + type uint32; + description + "Gy retransmit count"; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + leaf-list evt-data { + type uint32; + description + "Optional data"; + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping DIAMETER-DISC-HISTORY-DATA { + description + "Diameter disc history data"; + container event-history { + description + "Event History"; + uses EVT-HIST-INFO; + } + leaf index-xr { + type uint32; + description + "Disconnect history index"; + } + leaf disconnect-reason { + type string; + description + "Diameter Gx Disconnect reason"; + } + leaf time-disconnected { + type string; + description + "Time Disconnected"; + } + leaf subscriber-label { + type uint32; + description + "Subscriber Label"; + } + leaf disconnect-history-type { + type Disconnect-history; + description + "Disconnect history type"; + } + leaf gx-session-available { + type uint32; + description + "Gx session context Available"; + } + leaf gy-session-available { + type uint32; + description + "Gy session context Available"; + } + leaf access-interface-name { + type uint32; + description + "Access Inteface Ifhandle"; + } + leaf bng-session-id { + type uint32; + description + "BNG session id"; + } + leaf parent-session-id { + type uint32; + description + "Parent session id"; + } + leaf diameter-session-id { + type string; + description + "Diameter session id"; + } + leaf gy-start-time { + type string; + description + "Gy Start Time"; + } + leaf request-number { + type uint32; + description + "Request Number"; + } + leaf session-state { + type string; + description + "Session State"; + } + leaf request-type { + type string; + description + "Request Type"; + } + leaf retry-count { + type uint32; + description + "Gx Retry count"; + } + leaf quota-type { + type uint32; + description + "Quota Type"; + } + leaf service-count { + type uint32; + description + "Gx Plus Service Count"; + } + leaf gx-plus-services { + type string; + description + "Gx Plus Services"; + } + leaf revalidation-time { + type string; + description + "Revalidation Time"; + } + leaf charging-rule-name { + type string; + description + "Charging Rule Name"; + } + leaf mac-address { + type yang:hex-string; + description + "MAC address of the subscriber session"; + } + leaf event-trigger-bitmask { + type uint32; + description + "Event Trigger Bitmask"; + } + leaf srg-reconsile-in-progress { + type uint32; + description + "SRG Reconcile in Progress"; + } + leaf ccrt-before-ccri { + type boolean; + description + "CCR T before CCR I"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper.yang new file mode 100644 index 000000000..48f5b35b5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-diameter-oper.yang @@ -0,0 +1,194 @@ +module Cisco-IOS-XR-aaa-diameter-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-diameter-oper"; + prefix aaa-diameter-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-locald-oper { + prefix a1; + } + include Cisco-IOS-XR-aaa-diameter-oper-sub1 { + revision-date 2021-10-08; + } + + 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 aaa-diameter package operational data. + + This YANG module augments the + Cisco-IOS-XR-aaa-locald-oper + module with state data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-08 { + description + "show_diameter.bag file updated with event history update with gx and gy"; + semver:module-version "3.2.0"; + } + revision 2020-10-19 { + description + "show_diameter.bag file updated with ccr_final stale in gy stats"; + semver:module-version "3.1.0"; + } + revision 2020-04-07 { + description + "show_diameter.bag file updated with CCR Update COA Disconnect in GX Stats + 2020-02-28 + class-Name NAS was commented to avoid duplicate result in XML operational data + 2020-02-13 + show_diameter.bag file was updated to included sublabel"; + semver:module-version "3.0.0"; + } + revision 2019-10-17 { + description + "Added new container for NasSession and made NasSessionId as child + 2019-09-26 + Introduced a peer-closed-reason leaf and transaction related leaves in DIAMETER-SERVERBAG grouping. + 2019-08-25 + Fixed the string length to Bounded String."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:aaa" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-aaa-locald-oper'"; + container diameter { + description + "Diameter operational data"; + container gx-disconnect-history-datas { + description + "Diameter Gx Disconnect History data list"; + list gx-disconnect-history-data { + key "index"; + description + "Diameter Gx disconnect history"; + leaf index { + type uint32; + description + "Gx disconnect history entry index"; + } + uses DIAMETER-DISC-HISTORY-DATA; + } + } + container gy { + description + "Diameter global gy data"; + uses DIAMETER-GY; + } + container gx-statistics { + description + "Diameter Gx Statistics data"; + uses DIAMETER-GX-STATS; + } + container gx { + description + "Diameter global gx data"; + uses DIAMETER-GX; + } + container gy-disconnect-history-datas { + description + "Diameter Gy Disconect History data list"; + list gy-disconnect-history-data { + key "index"; + description + "Diameter Gy disconnect history"; + leaf index { + type uint32; + description + "Gy disconnect history entry index"; + } + uses DIAMETER-DISC-HISTORY-DATA; + } + } + container peers { + description + "Diameter peer global data"; + uses DIAMETER-PEERS; + } + container nas-summary { + description + "Diameter NAS summary"; + uses DIAMETER-NAS-SUMMARY; + } + container gy-session-ids { + description + "Diameter Gy Session data list"; + list gy-session-id { + key "session-id"; + description + "Diameter Gy Session data"; + leaf session-id { + type uint32; + description + "Session Id"; + } + uses DIAMETER-GY-SESS; + } + } + container nas-session-ids { + description + "Diameter Nas Session data list"; + list nas-session-id { + key "session-id"; + description + "Diameter Nas Session data"; + leaf session-id { + type uint32; + description + "Session Id"; + } + uses DIAMETER-NAS; + } + } + container gy-statistics { + description + "Diameter Gy Statistics data"; + uses DIAMETER-GY-STATS; + } + container gx-session-ids { + description + "Diameter Gx Session data list"; + list gx-session-id { + key "session-id"; + description + "Diameter Gx Session data"; + leaf session-id { + type uint32; + description + "Session Id"; + } + uses DIAMETER-GX-SESS; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-cfg.yang new file mode 100644 index 000000000..23fa95909 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-cfg.yang @@ -0,0 +1,216 @@ +module Cisco-IOS-XR-aaa-ldapd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-ldapd-cfg"; + prefix aaa-ldapd-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-lib-cfg { + prefix a1; + } + + 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 aaa-ldapd package configuration. + + This YANG module augments the + Cisco-IOS-XR-aaa-lib-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-22 { + description + "Dynamic NACM feature commit."; + semver:module-version "1.0.0"; + } + revision 2022-05-20 { + description + "Dynamic NACM feature commit."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Aaa-ldap-timeout { + type uint32 { + range "1..1000"; + } + description + "Aaa ldap timeout"; + } + + typedef Aaaldap-bind-password { + type enumeration { + enum "type7" { + value 7; + description + "Type 7 encryption"; + } + } + description + "Aaaldap bind password"; + } + + typedef Aaa-ldap-port-range { + type uint32 { + range "1..65535"; + } + description + "Aaa ldap port range"; + } + + grouping BIND-DISTINGUISHED-NAME { + description + "Common node of aaa-ldap, host"; + leaf bind-distinguished-name { + type string; + description + "Set AAA LDAP Bind Distinguished Name."; + } + } + + grouping BIND-PASSWORD { + description + "Common node of aaa-ldap, host"; + container bind-password { + description + "Set AAA LDAP Bind password"; + leaf encrypt-type { + type Aaaldap-bind-password; + description + "Encryption Type"; + } + leaf secret7 { + when "../encrypt-type = 'type7'" { + description + "../EncryptType = Type7"; + } + type xr:Proprietary-password; + description + "Type7 Encryption key"; + } + } + } + + grouping CONNECT-TIMEOUT { + description + "Common node of aaa-ldap, host"; + leaf connect-timeout { + type Aaa-ldap-timeout; + units "second"; + default "5"; + description + "Time in seconds (range 1-1000 sec) to wait for + AAA LDAP server to respond for connection + request."; + } + } + + grouping SEARCH-TIMEOUT { + description + "Common node of aaa-ldap, host"; + leaf search-timeout { + type Aaa-ldap-timeout; + units "second"; + default "5"; + description + "Time in seconds (range 1-1000 sec) to wait for + AAA LDAP server to respond for search operation"; + } + } + + grouping VRF { + description + "Common node of aaa-ldap, host"; + leaf vrf { + type string; + description + "VRF name. Specify 'default' for default VRF"; + } + } + + grouping BIND-TIMEOUT { + description + "Common node of aaa-ldap, host"; + leaf bind-timeout { + type Aaa-ldap-timeout; + units "second"; + default "5"; + description + "Time in seconds (range 1-1000 sec) to wait for + AAA LDAP to respond for bind request."; + } + } + + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container aaa-ldap { + description + "Modify AAA LDAP query parameters"; + container hosts { + description + "Specify a AAA LDAP server"; + list host { + key "ordering-index ip-address port-number"; + description + "One of the AAA LDAP servers"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the order + of precedence"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of AAA LDAP server"; + } + leaf port-number { + type Aaa-ldap-port-range; + description + "Port number (standard 389 or 636)"; + } + uses BIND-PASSWORD; + uses VRF; + uses SEARCH-TIMEOUT; + uses CONNECT-TIMEOUT; + uses BIND-TIMEOUT; + uses BIND-DISTINGUISHED-NAME; + } + } + uses BIND-PASSWORD; + uses VRF; + uses SEARCH-TIMEOUT; + uses CONNECT-TIMEOUT; + uses BIND-TIMEOUT; + uses BIND-DISTINGUISHED-NAME; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper-sub1.yang new file mode 100644 index 000000000..4488f2ab6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper-sub1.yang @@ -0,0 +1,174 @@ +submodule Cisco-IOS-XR-aaa-ldapd-oper-sub1 { + belongs-to Cisco-IOS-XR-aaa-ldapd-oper { + prefix Cisco-IOS-XR-aaa-ldapd-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR aaa-ldapd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-20 { + description + "Dynamic NACM feature commit."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping AAA-LDAPD-SERVERBAG { + description + "AAA LDAPD SERVERBAG"; + leaf addr { + type inet:ipv4-address; + description + "internet address of ldap server"; + } + leaf port { + type uint32; + description + "per server port to use"; + } + leaf bytes-in { + type uint64; + units "byte"; + description + "# of bytes read"; + } + leaf bytes-out { + type uint64; + units "byte"; + description + "# of bytes out"; + } + leaf closes { + type uint32; + description + "socket closes"; + } + leaf opens { + type uint32; + description + "socket opens"; + } + leaf errors { + type uint32; + description + "error count"; + } + leaf aborts { + type uint32; + description + "abort count"; + } + leaf paks-in { + type uint32; + description + "# of incoming packets read"; + } + leaf paks-out { + type uint32; + description + "# of outgoing packets sent"; + } + leaf replies-expected { + type uint32; + description + "# of replies expected to arrive"; + } + leaf up { + type boolean; + description + "is the server UP or down ?"; + } + leaf conn-up { + type boolean; + description + "is the server connected ?"; + } + leaf is-private { + type boolean; + description + "is this a private server ?"; + } + leaf connect-timeout { + type uint32; + description + "Connect timeout: configured range 0-1000sec"; + } + leaf bind-timeout { + type uint32; + description + "Bind timeout: configured range 0-1000sec"; + } + leaf search-timeout { + type uint32; + description + "Search timeout: configured range 0-1000sec"; + } + leaf connection-attempted { + type int64; + description + "last attempted contact time"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF in which server is reachable"; + } + leaf addr-buf { + type string { + length "0..46"; + } + description + "IP address buffer"; + } + leaf family { + type string { + length "0..5"; + } + description + "IP address Family"; + } + } + + grouping AAA-LDAPD-SERVERS { + description + "AAA LDAPD SERVERS"; + list server { + key "addr port"; + description + "server"; + uses AAA-LDAPD-SERVERBAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper.yang new file mode 100644 index 000000000..757f9bab3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-ldapd-oper.yang @@ -0,0 +1,44 @@ +module Cisco-IOS-XR-aaa-ldapd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-ldapd-oper"; + prefix aaa-ldapd-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-aaa-ldapd-oper-sub1 { + revision-date 2022-05-20; + } + + 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 aaa-ldapd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-20 { + description + "Dynamic NACM feature commit."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-li-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-li-cfg.yang new file mode 100644 index 000000000..b1ee1bef6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-li-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-aaa-li-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-li-cfg"; + prefix aaa-li-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-lib-cfg { + prefix a1; + } + + 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 aaa-li package configuration. + + This YANG module augments the + Cisco-IOS-XR-aaa-lib-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + leaf intercept { + type empty; + description + "Enable LI RADIUS Feature"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-cfg.yang new file mode 100644 index 000000000..afdb0cf2b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-cfg.yang @@ -0,0 +1,352 @@ +module Cisco-IOS-XR-aaa-lib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-lib-cfg"; + prefix aaa-lib-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-lib-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 aaa-lib package configuration. + + This module contains definitions + for the following management objects: + aaa: Authentication, Authorization and Accounting + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-22 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-14 { + description + "Modified Accounting method to support local accounting as syslog"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container aaa { + description + "Authentication, Authorization and Accounting"; + container authorization-nacms { + description + "AAA authorization NACM"; + list authorization-nacm { + key "type listname"; + description + "Configurations related to NACM authorization"; + leaf type { + type xr:Cisco-ios-xr-string; + description + "nacm: Authorize NACM operations"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "List name for AAA NACM authorization"; + } + leaf merge-type { + type dt1:Aaanacm-group-merge; + description + "MergeType"; + } + leaf method1 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method2 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method3 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method4 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf server-group-name1 { + type string; + description + "Server group name"; + } + leaf server-group-name2 { + type string; + description + "Server group name"; + } + leaf server-group-name3 { + type string; + description + "Server group name"; + } + leaf server-group-name4 { + type string; + description + "Server group name"; + } + } + } + container accountings { + description + "AAA accounting"; + list accounting { + key "type listname"; + description + "Configurations related to accounting"; + leaf type { + type xr:Cisco-ios-xr-string; + description + "exec:Account exec sessions, commands: Account + CLI commands"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "Named accounting list"; + } + leaf rp-failover { + type dt1:Aaa-accounting-rp-failover; + description + "rpfailover"; + } + leaf broadcast { + type dt1:Aaa-accounting-broadcast; + description + "Broadcast"; + } + leaf type-xr { + type dt1:Aaa-accounting; + description + "Stop only/Start Stop"; + } + leaf method1 { + type dt1:Aaa-method-accounting; + description + "Method Type"; + } + leaf method2 { + type dt1:Aaa-method-accounting; + description + "Method Type"; + } + leaf method3 { + type dt1:Aaa-method-accounting; + description + "Method Type"; + } + leaf method4 { + type dt1:Aaa-method-accounting; + description + "Method Type"; + } + leaf server-group-name1 { + type string; + description + "Server group name"; + } + leaf server-group-name2 { + type string; + description + "Server group name"; + } + leaf server-group-name3 { + type string; + description + "Server group name"; + } + leaf server-group-name4 { + type string; + description + "Server group name"; + } + } + } + container authorizations { + description + "AAA authorization"; + list authorization { + key "type listname"; + description + "Configurations related to authorization"; + leaf type { + type xr:Cisco-ios-xr-string; + description + "network: Authorize IKE requests, commands: + Authorize CLI commands"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "List name for AAA authorization"; + } + leaf method1 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method2 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method3 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method4 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf server-group-name1 { + type string; + description + "Server group name"; + } + leaf server-group-name2 { + type string; + description + "Server group name"; + } + leaf server-group-name3 { + type string; + description + "Server group name"; + } + leaf server-group-name4 { + type string; + description + "Server group name"; + } + } + } + container accounting-update { + presence "Indicates a accounting-update node is configured."; + description + "Configuration related to 'update' accounting"; + leaf type { + type dt1:Aaa-accounting-update; + mandatory true; + description + "newinfo/periodic"; + } + leaf periodic-interval { + type uint32 { + range "0..35791394"; + } + units "minute"; + description + "Periodic update interval in minutes"; + } + } + container banner { + description + "AAA banner"; + leaf login { + type string; + description + "AAA login banner"; + } + } + container authentications { + description + "AAA authentication"; + list authentication { + key "type listname"; + description + "Configurations related to authentication"; + leaf type { + type xr:Cisco-ios-xr-string; + description + "login: Authenticate login sessions, ppp: + Authenticate ppp sessions"; + } + leaf listname { + type xr:Cisco-ios-xr-string; + description + "List name for AAA authentication"; + } + leaf method1 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method2 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method3 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf method4 { + type dt1:Aaa-method; + description + "Method Type"; + } + leaf server-group-name1 { + type string; + description + "Server group name"; + } + leaf server-group-name2 { + type string; + description + "Server group name"; + } + leaf server-group-name3 { + type string; + description + "Server group name"; + } + leaf server-group-name4 { + type string; + description + "Server group name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-datatypes.yang new file mode 100644 index 000000000..61ecce0f2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-lib-datatypes.yang @@ -0,0 +1,339 @@ +module Cisco-IOS-XR-aaa-lib-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-lib-datatypes"; + prefix aaa-lib-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-22 { + description + "Fixing backward compatibility error in modulie."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-14 { + description + "Added AAAMethodAccounting"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Aaa-port-range { + type uint32 { + range "1..65535"; + } + description + "Aaa port range"; + } + + typedef Aaa-accounting { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "start-stop" { + value 1; + description + "Start Stop"; + } + enum "stop-only" { + value 2; + description + "Stop Only"; + } + } + description + "Aaa accounting"; + } + + typedef Aaa-accounting-rp-failover { + type enumeration { + enum "disable" { + value 0; + description + "Disable rpfailover"; + } + enum "enable" { + value 1; + description + "Enable rpfailover"; + } + } + description + "Aaa accounting rp failover"; + } + + typedef Aaa-accounting-broadcast { + type enumeration { + enum "disable" { + value 0; + description + "Disable Broadcast"; + } + enum "enable" { + value 1; + description + "Enable Broadcast"; + } + } + description + "Aaa accounting broadcast"; + } + + typedef Aaa-method-accounting { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "none" { + value 1; + description + "None"; + } + enum "radius" { + value 3; + description + "Radius"; + } + enum "tacacs-plus" { + value 4; + description + "TACACS+"; + } + enum "dsmd" { + value 5; + description + "DSMD"; + } + enum "sgbp" { + value 6; + description + "SGBP"; + } + enum "acct-d" { + value 7; + description + "AcctD"; + } + enum "error" { + value 8; + description + "Error"; + } + enum "if-authenticated" { + value 9; + description + "If Authenticated"; + } + enum "server-group" { + value 10; + description + "Server Group"; + } + enum "server-group-not-defined" { + value 11; + description + "Server Group Not Defined"; + } + enum "line" { + value 12; + description + "Line"; + } + enum "enable" { + value 13; + description + "Enable"; + } + enum "kerberos" { + value 14; + description + "Kerberos"; + } + enum "diameter" { + value 15; + description + "Diameter"; + } + enum "last" { + value 16; + description + "Last"; + } + enum "local" { + value 17; + description + "Local"; + } + } + description + "Aaa method accounting"; + } + + typedef Aaanacm-group-merge { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "prefer-external" { + value 1; + description + "Prefer external groups with nacm groups"; + } + enum "only-external" { + value 2; + description + "Only external groups to be used"; + } + } + description + "Aaanacm group merge"; + } + + typedef Aaa-method { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "none" { + value 1; + description + "None"; + } + enum "local" { + value 2; + description + "Local"; + } + enum "radius" { + value 3; + description + "Radius"; + } + enum "tacacs-plus" { + value 4; + description + "TACACS+"; + } + enum "dsmd" { + value 5; + description + "DSMD"; + } + enum "sgbp" { + value 6; + description + "SGBP"; + } + enum "acct-d" { + value 7; + description + "AcctD"; + } + enum "error" { + value 8; + description + "Error"; + } + enum "if-authenticated" { + value 9; + description + "If Authenticated"; + } + enum "server-group" { + value 10; + description + "Server Group"; + } + enum "server-group-not-defined" { + value 11; + description + "Server Group Not Defined"; + } + enum "line" { + value 12; + description + "Line"; + } + enum "enable" { + value 13; + description + "Enable"; + } + enum "kerberos" { + value 14; + description + "Kerberos"; + } + enum "diameter" { + value 15; + description + "Diameter"; + } + enum "last" { + value 16; + description + "Last"; + } + } + description + "Aaa method"; + } + + typedef Aaa-accounting-update { + type enumeration { + enum "none" { + value 0; + description + "Not Set"; + } + enum "newinfo" { + value 3; + description + "Update records for new accountable information + only"; + } + enum "periodic" { + value 4; + description + "Update records at periodic intervals"; + } + } + description + "Aaa accounting update"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-cfg.yang new file mode 100644 index 000000000..20368ff25 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-cfg.yang @@ -0,0 +1,823 @@ +module Cisco-IOS-XR-aaa-locald-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-locald-cfg"; + prefix aaa-locald-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-lib-cfg { + prefix a1; + } + + 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 aaa-locald package configuration. + + This YANG module augments the + Cisco-IOS-XR-aaa-lib-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added config support for certificate based authentication for TACACS+ users + 2021-11-02 + Added restrict-consecutive-character in password policy"; + semver:module-version "2.1.0"; + } + revision 2019-11-24 { + description + "Added cli for enabling/disabling admin accounting via XR."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-04 { + description + "Added Yang support for aaa password-policy."; + } + revision 2018-04-30 { + description + "Added model support for aaa shell-type, directory."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-03-11 { + description + "Added model support for aaa password-policy."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Aaa-pass-policy-lockout-seconds { + type uint32 { + range "0..59"; + } + description + "Aaa pass policy lockout seconds"; + } + + typedef Aaa-pass-policy-authen-attempts { + type uint32 { + range "1..24"; + } + description + "Aaa pass policy authen attempts"; + } + + typedef Aaa-pass-policy-days { + type uint32 { + range "0..30"; + } + description + "Aaa pass policy days"; + } + + typedef Aaa-pass-policy-restrict-consecutive-qwerty-keyboard-characters { + type uint32 { + range "2..10"; + } + description + "Aaa pass policy restrict consecutive qwerty + keyboard characters"; + } + + typedef Aaa-locald-task-id { + type string; + description + "Aaa locald task id"; + } + + typedef Aaa-pass-policy-restrict-old-count { + type uint32 { + range "0..10"; + } + description + "Aaa pass policy restrict old count"; + } + + typedef Aaa-pass-policy-years { + type uint32 { + range "0..99"; + } + description + "Aaa pass policy years"; + } + + typedef Aaa-pass-policy-hours { + type uint32 { + range "0..23"; + } + description + "Aaa pass policy hours"; + } + + typedef Aaa-pass-policy-months { + type uint32 { + range "0..11"; + } + description + "Aaa pass policy months"; + } + + typedef Aaa-password { + type enumeration { + enum "type5" { + value 5; + description + "Type 5 password"; + } + enum "type8" { + value 8; + description + "Type 8 password"; + } + enum "type9" { + value 9; + description + "Type 9 password"; + } + enum "type10" { + value 10; + description + "Type 10 password"; + } + } + description + "Aaa password"; + } + + typedef Aaa-pass-policy-lockout-days { + type uint32 { + range "0..255"; + } + description + "Aaa pass policy lockout days"; + } + + typedef Aaa-pass-policy-seconds { + type uint32 { + range "30..59"; + } + description + "Aaa pass policy seconds"; + } + + typedef Aaa-pass-policy-restrict-consecutive-english-alphabet { + type uint32 { + range "2..26"; + } + description + "Aaa pass policy restrict consecutive english + alphabet"; + } + + typedef Aaa-pass-policy-length { + type uint32 { + range "2..253"; + } + description + "Aaa pass policy length"; + } + + typedef Aaa-locald-task-class { + type enumeration { + enum "read" { + value 0; + description + "Permits read operation for a Task ID"; + } + enum "write" { + value 1; + description + "Permits write operation for a Task ID"; + } + enum "execute" { + value 2; + description + "Permits execute operation for a Task ID"; + } + enum "debug" { + value 3; + description + "Permits debug operation for a Task ID"; + } + } + description + "Aaa locald task class"; + } + + typedef Aaa-pass-policy-char-repeat-length { + type uint32 { + range "2..5"; + } + description + "Aaa pass policy char repeat length"; + } + + typedef Aaa-login-history { + type uint32 { + range "0..1"; + } + description + "Aaa login history"; + } + + typedef Aaa-pass-policy-case-length { + type uint32 { + range "0..253"; + } + description + "Aaa pass policy case length"; + } + + typedef Aaa-pass-policy-minutes { + type uint32 { + range "0..59"; + } + description + "Aaa pass policy minutes"; + } + + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container password-policies { + description + "Configure password-policy"; + list password-policy { + key "name"; + description + "Password Policy name"; + container lifetime { + description + "Liftime of the password"; + leaf years { + type Aaa-pass-policy-years; + description + "Number of years"; + } + leaf months { + type Aaa-pass-policy-months; + description + "Number of months"; + } + leaf hours { + type Aaa-pass-policy-hours; + units "hour"; + description + "Number of hours"; + } + leaf minutes { + type Aaa-pass-policy-minutes; + units "minute"; + description + "Number of minutes"; + } + leaf seconds { + type Aaa-pass-policy-seconds; + units "second"; + description + "Number of seconds"; + } + leaf days { + type Aaa-pass-policy-days; + units "day"; + description + "Number of days"; + } + } + container lockout-time { + description + "Lockout time for the maximum authentication + failures"; + leaf hours { + type Aaa-pass-policy-hours; + units "hour"; + description + "Number of hours"; + } + leaf minutes { + type Aaa-pass-policy-minutes; + units "minute"; + description + "Number of minutes"; + } + leaf seconds { + type Aaa-pass-policy-lockout-seconds; + units "second"; + description + "Number of seconds"; + } + leaf days { + type Aaa-pass-policy-lockout-days; + units "day"; + description + "Number of days"; + } + } + container restrict-old-time { + description + "Time limit for old password to be considered + for new password check"; + leaf years { + type Aaa-pass-policy-years; + description + "Number of years"; + } + leaf months { + type Aaa-pass-policy-months; + description + "Number of months"; + } + leaf days { + type Aaa-pass-policy-days; + units "day"; + description + "Number of days"; + } + } + container warninterval { + description + "Warninterval of the password"; + leaf years { + type Aaa-pass-policy-years; + description + "Number of years"; + } + leaf months { + type Aaa-pass-policy-months; + description + "Number of months"; + } + leaf hours { + type Aaa-pass-policy-hours; + units "hour"; + description + "Number of hours"; + } + leaf minutes { + type Aaa-pass-policy-minutes; + units "minute"; + description + "Number of minutes"; + } + leaf seconds { + type Aaa-pass-policy-seconds; + units "second"; + description + "Number of seconds"; + } + leaf days { + type Aaa-pass-policy-days; + units "day"; + description + "Number of days"; + } + } + container restrict-consecutive-characters { + description + "Restrict consecutive letters and decimal + numbers from English alphabet and qwerty + keyboard"; + container qwerty-keyboard { + presence "Indicates a qwerty-keyboard node is configured."; + description + "Restrict consecutive alphanumeric chracters + from qwerty keyboard, e.g. qwer"; + leaf characters { + type Aaa-pass-policy-restrict-consecutive-qwerty-keyboard-characters; + mandatory true; + description + "Number of consecutivealphanumeric characters + from qwerty keyboard that are not allowed"; + } + leaf cyclic-wrap { + type empty; + description + "Restrict alphanumeric characters on qwerty + keyboardfrom cyclic wrapping, e.g. opqw"; + } + } + container english-alphabet { + presence "Indicates a english-alphabet node is configured."; + description + "Restrict consecutive letters from English + alphabet, e.g. abcd"; + leaf characters { + type Aaa-pass-policy-restrict-consecutive-english-alphabet; + mandatory true; + description + "Number of consecutive Englishletters that + are not allowed"; + } + leaf cyclic-wrap { + type empty; + description + "Restrict English letters from cyclic + wrapping, e.g. yzab "; + } + } + } + leaf restrict-password-advanced { + type empty; + description + "Imposes advanced constraints on new password"; + } + leaf lower-case { + type Aaa-pass-policy-case-length; + description + "Number of lower-case characters"; + } + leaf restrict-password-reverse { + type empty; + description + "Restrict usage of reversed old password as new + password"; + } + leaf upper-case { + type Aaa-pass-policy-case-length; + description + "Number of upper-case characters"; + } + leaf max-length { + type Aaa-pass-policy-length; + description + "Maximum length of the password"; + } + leaf restrict-old-count { + type Aaa-pass-policy-restrict-old-count; + description + "Number of old passwords to be considered for + new password check"; + } + leaf restrict-username-reverse { + type empty; + description + "Restrict usage of reversed username as + passwordRestrict associated username to be + used as password"; + } + leaf min-char-change { + type Aaa-pass-policy-case-length; + description + "Number of characters change required between + old and new passwords"; + } + leaf special-char { + type Aaa-pass-policy-case-length; + description + "Number of special characters"; + } + leaf numeric { + type Aaa-pass-policy-case-length; + description + "Number of numeric characters"; + } + leaf restrict-username { + type empty; + description + "Restrict associated username to be used as + password"; + } + leaf max-char-repetition { + type Aaa-pass-policy-char-repeat-length; + description + "Number of times a character can repeat + consecutively in new password"; + } + leaf min-length { + type Aaa-pass-policy-length; + description + "Minimum length of the password"; + } + leaf authen-max-attempts { + type Aaa-pass-policy-authen-attempts; + description + "Number of maximum authentication attempts"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..252"; + } + description + "Password Policy name"; + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container server-groups { + description + "AAA group definitions"; + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + leaf default-taskgroup { + type string; + description + "This class is used for setting the default + taskgroup to be used for remote server + authentication"; + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + leaf admin-accounting { + type string; + description + "This class is used to enable/disable + admin-accounting"; + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container usernames { + description + "Configure local usernames"; + list username { + key "ordering-index name"; + description + "Local username"; + container password-policy { + description + "Mention Password policy for the user"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..252"; + } + description + "Password Policy name"; + } + leaf password { + type xr:Proprietary-password; + description + "The user's password"; + } + } + container secret { + description + "Specify the secret for the user"; + leaf type { + type Aaa-password; + description + "Password type"; + } + leaf secret5 { + when "../type = 'type5'" { + description + "../Type = Type5"; + } + type xr:Md5-password; + description + "The user's secret password"; + } + leaf secret8 { + when "../type = 'type8'" { + description + "../Type = Type8"; + } + type xr:Type8-password; + description + "Type 8 password"; + } + leaf secret9 { + when "../type = 'type9'" { + description + "../Type = Type9"; + } + type xr:Type9-password; + description + "Type 9 password"; + } + leaf secret10 { + when "../type = 'type10'" { + description + "../Type = Type10"; + } + type xr:Type10-password; + description + "Type 10 password"; + } + } + container usergroup-under-usernames { + description + "Specify the usergroup to which this user + belongs"; + list usergroup-under-username { + key "name"; + description + "Name of the usergroup"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Name of the usergroup"; + } + } + } + leaf login-history { + type Aaa-login-history; + description + "To display previous login details after login + is successful."; + } + leaf password { + type xr:Proprietary-password; + description + "Specify the password for the user"; + } + leaf directory { + type string { + length "1..512"; + } + description + "Specify the directory for the user"; + } + leaf shell-type { + type string { + length "1..32"; + } + description + "Specify the shell-type for the user"; + } + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..252"; + } + description + "Mention Secret policy for the user"; + } + leaf ordering-index { + type uint32; + description + "This is used to sort the users in the order of + precedence"; + } + leaf name { + type string; + description + "Username"; + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container taskgroups { + description + "Specify a taskgroup to inherit from"; + list taskgroup { + key "name"; + description + "Taskgroup name"; + container taskgroup-under-taskgroups { + description + "Specify a taskgroup to inherit from"; + list taskgroup-under-taskgroup { + key "name"; + description + "Name of the task group to include"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Name of the task group to include"; + } + } + } + container tasks { + description + "Specify task IDs to be part of this group"; + list task { + key "type task-id"; + description + "Task ID to be included"; + leaf type { + type Aaa-locald-task-class; + description + "This specifies the operation permitted for + this task eg: read/write/execute/debug"; + } + leaf task-id { + type Aaa-locald-task-id; + description + "Task ID to which permission is to be granted + (please use class AllTasks to get a list of + valid task IDs)"; + } + } + } + leaf description { + type string; + description + "Description for the task group"; + } + leaf name { + type string; + description + "Taskgroup name"; + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container usergroups { + description + "Specify a Usergroup to inherit from"; + list usergroup { + key "name"; + description + "Usergroup name"; + container taskgroup-under-usergroups { + description + "Task group associated with this group"; + list taskgroup-under-usergroup { + key "name"; + description + "Name of the task group"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Name of the task group"; + } + } + } + container usergroup-under-usergroups { + description + "User group to be inherited by this group"; + list usergroup-under-usergroup { + key "name"; + description + "Name of the user group"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Name of the user group"; + } + } + } + leaf description { + type string; + description + "Description for the user group"; + } + leaf name { + type string; + description + "Usergroup name"; + } + } + } + } + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + leaf enable-certificate-authentication { + type empty; + description + "Enable certificate based authentication for + TACACS+ users. Mandates exec authorization with + TACACS+"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper-sub1.yang new file mode 100644 index 000000000..a7e4c5fe5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper-sub1.yang @@ -0,0 +1,409 @@ +submodule Cisco-IOS-XR-aaa-locald-oper-sub1 { + belongs-to Cisco-IOS-XR-aaa-locald-oper { + prefix Cisco-IOS-XR-aaa-locald-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR aaa-locald package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-22 { + description + "Added restrict-consecutive-character password policy in oper data"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Status { + type enumeration { + enum "disabled" { + value 0; + description + "disabled"; + } + enum "enabled" { + value 1; + description + "enabled"; + } + } + description + "status enum"; + } + + typedef String1 { + type string; + description + "String1"; + } + + grouping USERGROUP-DET { + description + "Detailed information regarding a usergroup"; + container task-map { + description + "Computed task map"; + uses TASKMAP; + } + list taskgroup { + description + "Component taskgroups"; + uses TASKGROUP-DET; + } + } + + grouping PP-RESTRICT-CONSECUTIVE-CHARACTERS { + description + "Information about restrict consecutive characters"; + leaf english-alphabet-char { + type uint8; + description + "english alphabet char"; + } + leaf qwerty-keyboard-char { + type uint8; + description + "qwerty keyboard char"; + } + leaf english-alphabet-cyclic { + type uint8; + description + "english alphabet cyclic"; + } + leaf qwerty-keyboard-cyclic { + type uint8; + description + "qwerty keyboard cyclic"; + } + } + + grouping PP-DURATION-LIMITED { + description + "Information about time duration"; + leaf years { + type uint8; + description + "years"; + } + leaf months { + type uint8; + description + "months"; + } + leaf days { + type uint8; + description + "days"; + } + } + + grouping PP-DURATION { + description + "Information about time duration"; + leaf years { + type uint8; + description + "years"; + } + leaf months { + type uint8; + description + "months"; + } + leaf days { + type uint8; + description + "days"; + } + leaf hours { + type uint8; + description + "hours"; + } + leaf mins { + type uint8; + description + "mins"; + } + leaf secs { + type uint8; + description + "secs"; + } + } + + grouping PP-DET { + description + "Detailed information about a single Password + Policy"; + container life-time { + description + "Lifetime of the policy"; + uses PP-DURATION; + } + container warn-interval { + description + "Warninterval of the policy"; + uses PP-DURATION; + } + container lock-out-time { + description + "Lockout time of the policy"; + uses PP-DURATION; + } + container restrict-old-time { + description + "Password History validity time"; + uses PP-DURATION-LIMITED; + } + container restrict-consecutive-characters { + description + "Restrict consecutive alphanumeric characters + from qwerty keyboard and English Alphabet"; + uses PP-RESTRICT-CONSECUTIVE-CHARACTERS; + } + leaf min-len { + type uint8; + description + "Min Length"; + } + leaf max-len { + type uint8; + description + "Max Length"; + } + leaf spl-char { + type uint8; + description + "Special Character length"; + } + leaf upper-case { + type uint8; + description + "UpperCase Character length"; + } + leaf lower-case { + type uint8; + description + "LowerCase Character length"; + } + leaf numeric { + type uint8; + description + "Numeric Character length"; + } + leaf restrict-old-count { + type uint8; + description + "Password History Count"; + } + leaf min-char-change { + type uint8; + description + "Number of different characters"; + } + leaf num-of-users { + type uint8; + description + "Number of users with this policy"; + } + leaf max-fail-attempts { + type uint32; + description + "Maximum Failure Attempts allowed"; + } + leaf usr-count { + type uint8; + description + "Count of users"; + } + leaf err-count { + type uint8; + description + "Error Count"; + } + leaf lock-out-count { + type uint8; + description + "Lock Out Count"; + } + leaf max-char-repetition { + type uint8; + description + "Number of times a character can repeat"; + } + leaf restrict-username { + type Status; + description + "Username restriction as password"; + } + leaf restrict-username-reverse { + type Status; + description + "Reversed Username restriction as password"; + } + leaf restrict-password-reverse { + type Status; + description + "Reversed password restriction as new password"; + } + leaf restrict-password-advanced { + type Status; + description + "Advanced restriction on new password"; + } + } + + grouping USER-DET { + description + "Detailed information about a single user"; + container task-map { + description + "Computed taskmap"; + uses TASKMAP; + } + leaf admin-user { + type boolean; + description + "Is admin plane user ?"; + } + leaf first-user { + type boolean; + description + "Is first user ?"; + } + leaf-list usergroup { + type String1; + description + "Member usergroups"; + } + } + + grouping TASKID { + description + "Information about a single Task ID"; + leaf task-id { + type string; + description + "Name of the task-id"; + } + leaf read { + type boolean; + description + "Is read permitted?"; + } + leaf write { + type boolean; + description + "Is write permitted?"; + } + leaf execute { + type boolean; + description + "Is execute permitted?"; + } + leaf debug { + type boolean; + description + "Is debug permitted?"; + } + } + + grouping TASKMAP { + description + "Computed taskmap of a user/usergroup/taskgroup or + Task IDs included in a taskgroup"; + list tasks { + description + "List of permitted tasks"; + uses TASKID; + } + } + + grouping TASKGROUP-DET { + description + "Detailed information regarding a taskgroup"; + container included-task-ids { + description + "Task-ids included"; + uses TASKMAP; + } + container task-map { + description + "Computed task map"; + uses TASKMAP; + } + } + + grouping REMOTEUSR-DET { + description + "Detailed information regarding a usergroup"; + leaf name { + type string; + description + "Name of the usergroup"; + } + leaf shelltype { + type string; + description + "Shell-type of user"; + } + leaf directory { + type string; + description + "Directory of user"; + } + leaf authenmethod { + type int32; + description + "Authentication method"; + } + leaf-list usergroup { + type String1; + description + "Component usergroups"; + } + leaf-list taskmap { + type String1; + description + "Task map details"; + } + } + + grouping SYSTEM-SUPPORTED-TASKS { + description + "List of all tasks available in the system"; + leaf-list task-id { + type String1; + description + "Names of available task-ids"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper.yang new file mode 100644 index 000000000..0c66061f2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-locald-oper.yang @@ -0,0 +1,141 @@ +module Cisco-IOS-XR-aaa-locald-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-locald-oper"; + prefix aaa-locald-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-aaa-locald-oper-sub1 { + revision-date 2022-01-22; + } + + 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 aaa-locald package operational data. + + This module contains definitions + for the following management objects: + aaa: AAA operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-22 { + description + "Added restrict-consecutive-character password policy in oper data"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container aaa { + config false; + description + "AAA operational data"; + container all-tasks { + description + "All tasks supported by system"; + uses SYSTEM-SUPPORTED-TASKS; + } + container currentuser-detail { + description + "Current user specific details"; + uses REMOTEUSR-DET; + } + container task-map { + description + "Task map of current user"; + uses REMOTEUSR-DET; + } + container taskgroups { + description + "Individual taskgroups container"; + list taskgroup { + key "name"; + description + "Specific Taskgroup Information"; + leaf name { + type string; + description + "Taskgroup name"; + } + uses TASKGROUP-DET; + } + } + container users { + description + "Container for individual local user information"; + list user { + key "name"; + description + "Specific local user information"; + leaf name { + type string; + description + "Username"; + } + uses USER-DET; + } + } + container password-policies { + description + "Container for individual password policy + Information"; + list password-policy { + key "name"; + description + "Password policy details"; + leaf name { + type string; + description + "Password policy name"; + } + uses PP-DET; + } + } + container usergroups { + description + "Container for individual usergroup Information"; + list usergroup { + key "name"; + description + "Specific Usergroup Information"; + leaf name { + type string; + description + "Usergroup name"; + } + uses USERGROUP-DET; + } + } + container authen-method { + description + "Current users authentication method"; + uses REMOTEUSR-DET; + } + container current-usergroup { + description + "Specific Usergroup Information"; + uses REMOTEUSR-DET; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-cfg.yang new file mode 100644 index 000000000..ab067aa9e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-cfg.yang @@ -0,0 +1,325 @@ +module Cisco-IOS-XR-aaa-nacm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-nacm-cfg"; + prefix aaa-nacm-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 aaa-nacm package configuration. + + This module contains definitions + for the following management objects: + nacm: Parameters for NETCONF Access Control Model + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-20 { + description + "Added nacm enable-dynamic CLI. + 2021-09-20 + Added bypass-get-oper and bypass-get-config leaves."; + semver:module-version "1.2.0"; + } + revision 2020-06-01 { + description + "Change of ordering-index length equal to name length to YANG model."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nacm-action { + type enumeration { + enum "permit" { + value 0; + description + "Permit"; + } + enum "deny" { + value 1; + description + "Deny"; + } + } + description + "Nacm action"; + } + + typedef Nac-mbypass { + type enumeration { + enum "disabled" { + value 0; + description + "disabled"; + } + enum "enabled" { + value 1; + description + "enabled"; + } + } + description + "Nac mbypass"; + } + + typedef Nacm-rule { + type enumeration { + enum "protocol-operation" { + value 0; + description + "Protocoloperation"; + } + enum "data-node" { + value 1; + description + "Datanode"; + } + enum "notification" { + value 2; + description + "Notification"; + } + } + description + "Nacm rule"; + } + + container nacm { + description + "Parameters for NETCONF Access Control Model"; + container groups { + description + "NETCONF Access Control Groups"; + list group { + key "group-name"; + description + "One NACM Group Entry"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "User group name"; + } + leaf-list user-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + min-elements 1; + max-elements "16"; + description + "User name"; + } + } + } + container rulelist-classes { + description + "Contains all rule lists of NACM"; + list rulelist-class { + key "ordering-index rulelist-name"; + description + "Each rule list of NACM"; + container group-names { + description + "List of groups that will be assigned with the + rule"; + leaf-list group-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + max-elements "16"; + description + "Group name"; + } + } + container rules { + description + "Set of rules in a rulelist"; + list rule { + key "ordering-index rule-name"; + description + "Each rule in a rulelist"; + container rule-type { + description + "Rule Type associated with this rule"; + leaf type { + type Nacm-rule; + description + "Rule Type"; + } + leaf value { + type string { + length "1..511"; + } + description + "Rule Value"; + } + } + container access-operations { + description + "Access operations associated with this rule"; + leaf create { + type uint32; + description + "Enable Create"; + } + leaf read { + type uint32; + description + "Enable Read"; + } + leaf update { + type uint32; + description + "Enable Update"; + } + leaf delete { + type uint32; + description + "Enable Delete"; + } + leaf exec { + type uint32; + description + "Enable Exec"; + } + leaf all { + type uint32; + description + "Enable All permissions"; + } + } + leaf module-name { + type string { + length "1..63"; + } + description + "Name of the module associated with this rule"; + } + leaf action { + type Nacm-action; + mandatory true; + description + "The access control action associated with + the rule"; + } + leaf comment { + type string { + length "1..255"; + } + description + "Textual description of the access rule"; + } + leaf ordering-index { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "This is used to sort the rules in the order + of precedence"; + } + leaf rule-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Rule name"; + } + } + } + leaf ordering-index { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "This is used to sort the rulelists in the + order of precedence"; + } + leaf rulelist-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Rulelist key name"; + } + } + } + leaf enable-nacm { + type boolean; + description + "Enables or Disables all NETCONF access control + enforcement"; + } + leaf enable-external-policies { + type empty; + description + "Controls whether NACM uses external policies + reported by NETCONF transport layer"; + } + leaf write-default { + type Nacm-action; + description + "Controls write access if no appropriate rule is + found"; + } + leaf bypass-get-oper { + type Nac-mbypass; + description + "Bypass switch get response authorization"; + } + leaf exec-default { + type Nacm-action; + description + "Controls exec access if no appropriate rule is + found"; + } + leaf enable-external-groups { + type boolean; + description + "Controls whether the server uses the groups + reported by NETCONF transport layer"; + } + leaf read-default { + type Nacm-action; + description + "Controls read access if no appropriate rule is + found"; + } + leaf bypass-get-config { + type Nac-mbypass; + description + "Bypass switch for get-config response + authorization"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper-sub1.yang new file mode 100644 index 000000000..d623c0d31 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper-sub1.yang @@ -0,0 +1,254 @@ +submodule Cisco-IOS-XR-aaa-nacm-oper-sub1 { + belongs-to Cisco-IOS-XR-aaa-nacm-oper { + prefix Cisco-IOS-XR-aaa-nacm-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR aaa-nacm package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-20 { + description + "Added nacm enable-dynamic CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NACM-GROUP-DETAIL { + description + "Nacm Group detail"; + leaf group-name { + type string { + length "0..256"; + } + description + "Group Name"; + } + list user-name { + description + "Users Name List"; + uses LIST-NODE; + } + list rule-name { + description + "Rules Name List"; + uses LIST-NODE; + } + } + + grouping NACM-RULE-DETAIL { + description + "Nacm Rule Detail"; + leaf rule-name { + type string { + length "0..512"; + } + description + "Rule Name"; + } + leaf rule-index { + type string { + length "0..16"; + } + description + "Rule Index"; + } + leaf rulelist-index { + type string { + length "0..16"; + } + description + "Rulelist Index"; + } + leaf module-name { + type string { + length "0..512"; + } + description + "Module Name"; + } + leaf action { + type string { + length "0..256"; + } + description + "Action"; + } + leaf rule-type { + type string { + length "0..256"; + } + description + "Rule Type"; + } + leaf comment { + type string { + length "0..256"; + } + description + "Comment"; + } + leaf access-operations { + type string { + length "0..256"; + } + description + "Access Operations"; + } + leaf rule-value { + type string { + length "0..512"; + } + description + "Rule Value"; + } + leaf hit-count { + type int32; + description + "Hit Count"; + } + } + + grouping NACM-SUMMARY { + description + "Nacm Summary"; + leaf groups { + type int32; + description + "Groups"; + } + leaf users { + type int32; + description + "Users"; + } + leaf rulelist { + type int32; + description + "Rulelist"; + } + leaf rules { + type int32; + description + "Rules"; + } + leaf read-default { + type string { + length "0..16"; + } + description + "Read Default"; + } + leaf write-default { + type string { + length "0..16"; + } + description + "Write Default"; + } + leaf exec-default { + type string { + length "0..16"; + } + description + "Exec Default"; + } + leaf enable-nacm { + type string { + length "0..16"; + } + description + "Enable Nacm"; + } + leaf enable-external-groups { + type string { + length "0..16"; + } + description + "Enable External Groups"; + } + leaf enable-external-policies { + type string { + length "0..16"; + } + description + "Enable External Policies"; + } + } + + grouping LIST-NODE { + description + "List Node"; + leaf name { + type string { + length "0..256"; + } + description + "Name"; + } + } + + grouping NACM-USER-DETAIL { + description + "Nacm User detail"; + leaf user-name { + type string { + length "0..256"; + } + description + "User Name"; + } + list group-name { + description + "Group Name List"; + uses LIST-NODE; + } + } + + grouping NACM-COUNTERS { + description + "Nacm Counters"; + leaf denied-operations { + type int32; + description + "Denied Operations"; + } + leaf denied-data-writes { + type int32; + description + "Denied Data Writes"; + } + leaf denied-notifications { + type int32; + description + "Denied Notifications"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper.yang new file mode 100644 index 000000000..3fe34cc02 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-nacm-oper.yang @@ -0,0 +1,141 @@ +module Cisco-IOS-XR-aaa-nacm-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-nacm-oper"; + prefix aaa-nacm-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-aaa-nacm-oper-sub1 { + revision-date 2022-04-20; + } + + 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 aaa-nacm package operational data. + + This module contains definitions + for the following management objects: + aaa-nacm: AAA Nacm Information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-20 { + description + "Added nacm enable-dynamic CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container aaa-nacm { + config false; + description + "AAA Nacm Information"; + container counters { + description + "AAA NACM summary"; + uses NACM-COUNTERS; + } + container users { + description + "AAA NACM User summary"; + list user { + key "user"; + description + "AAA NACM User detail"; + leaf user { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "User"; + } + uses NACM-USER-DETAIL; + } + } + container summary { + description + "AAA NACM summary"; + uses NACM-SUMMARY; + } + container rules { + description + "AAA NACM Rulelist summary"; + list rule { + description + "AAA NACM Rulelist detail"; + container rulelist-rules { + description + "AAA NACM Rulelist detail"; + list rulelist-rule { + key "rule"; + description + "AAA NACM Rulelist detail"; + leaf rule { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Rule"; + } + uses NACM-RULE-DETAIL; + } + } + leaf ordering-index { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Rulelist Ordering Index"; + } + leaf rulelist-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Rulelist Name"; + } + } + } + container groups { + description + "AAA NACM Group summary"; + list group { + key "group"; + description + "AAA NACM Group detail"; + leaf group { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Group"; + } + uses NACM-GROUP-DETAIL; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-cfg.yang new file mode 100644 index 000000000..b27d79baf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-cfg.yang @@ -0,0 +1,1224 @@ +module Cisco-IOS-XR-aaa-protocol-radius-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-protocol-radius-cfg"; + prefix aaa-protocol-radius-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-locald-cfg { + prefix a1; + } + import Cisco-IOS-XR-aaa-lib-cfg { + prefix a2; + } + + 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 aaa-protocol-radius package configuration. + + This YANG module augments the + Cisco-IOS-XR-aaa-locald-cfg, + Cisco-IOS-XR-aaa-lib-cfg + modules with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-21 { + description + "Added union for radius keys to make encrypt-type field mandatory."; + semver:module-version "4.0.0"; + } + revision 2020-08-26 { + description + "Fixed key display problem in netconf request + 2020-04-20 + Added Type 6 support for Secret/Key"; + semver:module-version "3.0.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers"; + semver:module-version "2.0.0"; + } + revision 2019-05-20 { + description + "Made access and accounting to mandatory."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Aaa-radius-timeout { + type uint32 { + range "1..1000"; + } + description + "Aaa radius timeout"; + } + + typedef Aaa-dscp-value { + type union { + type enumeration { + enum "af11" { + value 10; + description + "Match packets with AF11 DSCP"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 DSCP"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 DSCP"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 DSCP"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 DSCP"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 DSCP"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 DSCP"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 DSCP"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 DSCP"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 DSCP"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 DSCP"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 DSCP"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1 DSCP"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2 DSCP"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3 DSCP"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4 DSCP"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5 DSCP"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6 DSCP"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7 DSCP"; + } + enum "default" { + value 0; + description + "Match packets with 0000 DSCP"; + } + enum "ef" { + value 46; + description + "Match packets with EF DSCP"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Aaa dscp value"; + } + + typedef Sct-encryption { + type enumeration { + enum "type6" { + value 6; + description + "Type 6 encryption"; + } + enum "type7" { + value 7; + description + "Type 7 encryption"; + } + } + description + "Sct encryption"; + } + + typedef Aaa-action { + type enumeration { + enum "accept" { + value 1; + description + "Accept"; + } + enum "reject" { + value 2; + description + "Reject"; + } + } + description + "Aaa action"; + } + + typedef Scrt-encryption { + type enumeration { + enum "type6" { + value 6; + description + "Type 6 encryption"; + } + enum "type7" { + value 7; + description + "Type 7 encryption"; + } + } + description + "Scrt encryption"; + } + + typedef Aaa-authentication { + type enumeration { + enum "all" { + value 101; + description + "All"; + } + enum "any" { + value 102; + description + "Any"; + } + enum "session-key" { + value 103; + description + "Session key"; + } + } + description + "Aaa authentication"; + } + + typedef Aaa-select-key { + type enumeration { + enum "server-key" { + value 1; + description + "Server key"; + } + enum "session-key" { + value 2; + description + "Session key"; + } + } + description + "Aaa select key"; + } + + typedef Aaa-throttle-access-timeout { + type uint32 { + range "1..10"; + } + description + "Aaa throttle access timeout"; + } + + typedef Aaa-radius-dead-detect-tries { + type uint32 { + range "1..100"; + } + description + "Aaa radius dead detect tries"; + } + + typedef Aaa-radius-dead-time { + type uint32 { + range "1..1440"; + } + description + "Aaa radius dead time"; + } + + typedef Aaa-throttle-accounting { + type uint32 { + range "0..65535"; + } + description + "Aaa throttle accounting"; + } + + typedef Aaa-radius-idle-time { + type uint32 { + range "1..60"; + } + description + "Aaa radius idle time"; + } + + typedef Aaa-direction { + type enumeration { + enum "inbound" { + value 0; + description + "Inbound"; + } + enum "outbound" { + value 1; + description + "Outbound"; + } + } + description + "Aaa direction"; + } + + typedef Aaa-radius-dead-detect-time { + type uint32 { + range "1..120"; + } + description + "Aaa radius dead detect time"; + } + + typedef Aaa-radius-retransmit { + type uint32 { + range "1..100"; + } + description + "Aaa radius retransmit"; + } + + typedef Aaa-throttle-access { + type uint32 { + range "0..65535"; + } + description + "Aaa throttle access"; + } + + typedef Aaa-config { + type enumeration { + enum "false" { + value 0; + description + "False"; + } + enum "true" { + value 1; + description + "True"; + } + } + description + "Aaa config"; + } + + typedef Aaa-radius-retransmit-with-disable { + type uint32 { + range "0..100"; + } + description + "Aaa radius retransmit with disable"; + } + + grouping IGNORE-ACCOUNTING-PORT { + description + "Common node of radius, host"; + leaf ignore-accounting-port { + type boolean; + description + "Time to wait for a RADIUS server to reply"; + } + } + + grouping IDLE-TIME { + description + "Common node of radius, host"; + leaf idle-time { + type Aaa-radius-timeout; + default "5"; + description + "Idle time for RADIUS server"; + } + } + + grouping USERNAME { + description + "Common node of radius, host"; + leaf username { + type string; + description + "Username to be tested for automated testing"; + } + } + + grouping REPLY { + description + "Common node of authorization, accounting"; + container reply { + description + "Specify a filter in server group"; + leaf action { + type Aaa-action; + description + "Specify the attribute list type accept or + reject"; + } + leaf attribute-list-name { + type string; + description + "Name of RADIUS attribute list"; + } + } + } + + grouping DSCP { + description + "Common node of ipv4, ipv6"; + leaf dscp { + type Aaa-dscp-value; + description + "Specify the DSCP value"; + } + } + + grouping SERVER-KEY { + description + "Common node of client, dynamic-authorization"; + container server-key { + description + "RADIUS CoA client encryption key"; + leaf encrypt-type { + type Sct-encryption; + description + "Encryption Type"; + } + leaf secret7 { + when "../encrypt-type = 'type7'" { + description + "../EncryptType = Type7"; + } + type xr:Proprietary-password; + description + "Type7 Encryption key"; + } + leaf secret6 { + when "../encrypt-type = 'type6'" { + description + "../EncryptType = Type6"; + } + type xr:Type6-password; + description + "Type6 Encryption key, requires a valid master + key in the system"; + } + } + } + + grouping IGNORE-AUTH-PORT { + description + "Common node of radius, host"; + leaf ignore-auth-port { + type boolean; + description + "Time to wait for a RADIUS server to reply"; + } + } + + grouping REQUEST { + description + "Common node of authorization, accounting"; + container request { + description + "Specify a filter in server group"; + leaf action { + type Aaa-action; + description + "Specify the attribute list type accept or + reject"; + } + leaf attribute-list-name { + type string; + description + "Name of RADIUS attribute list"; + } + } + } + + augment "/a2:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container radius { + description + "Remote Access Dial-In User Service"; + container hosts { + description + "List of RADIUS servers"; + list host { + key "ordering-index ip-address auth-port-number acct-port-number"; + description + "Instance of a RADIUS server"; + container host-key { + description + "RADIUS encryption key"; + leaf encrypt-type { + type Scrt-encryption; + description + "Encryption Type"; + } + leaf secret7 { + when "../encrypt-type = 'type7'" { + description + "../EncryptType = Type7"; + } + type xr:Proprietary-password; + description + "Type7 Encryption key"; + } + leaf secret6 { + when "../encrypt-type = 'type6'" { + description + "../EncryptType = Type6"; + } + type xr:Type6-password; + description + "Type6 Encryption key, requires a valid + master key in the system"; + } + } + leaf host-retransmit { + type Aaa-radius-retransmit; + default "3"; + description + "Number of times to retransmit a request to + the RADIUS server"; + } + leaf host-timeout { + type Aaa-radius-timeout; + default "5"; + description + "Time to wait for a RADIUS server to reply"; + } + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the order + of precedence"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of RADIUS server"; + } + leaf auth-port-number { + type inet:port-number; + description + "Authentication Port number (standard port + 1645)"; + } + leaf acct-port-number { + type inet:port-number; + description + "Accounting Port number (standard port 1646)"; + } + uses IGNORE-ACCOUNTING-PORT; + uses IDLE-TIME; + uses USERNAME; + uses IGNORE-AUTH-PORT; + } + } + container dead-criteria { + description + "RADIUS server dead criteria"; + leaf tries { + type Aaa-radius-dead-detect-tries; + description + "The number of consecutive timeouts the router + must experience in order to mark the server as + dead. All transmissions, including the initial + transmit and all retransmits, will be counted"; + } + leaf time { + type Aaa-radius-dead-detect-time; + description + "The minimum amount of time which must elapse + since the router last received a valid RADIUS + packet from the server prior to marking it + dead"; + } + } + container disallow { + description + "disallow null-username"; + leaf null-username { + type uint32; + description + "Disallow null-username"; + } + } + container ipv6 { + description + "IPv6 configuration"; + uses DSCP; + } + container dynamic-authorization { + description + "RADIUS dynamic authorization"; + container clients { + description + "Client data"; + + grouping CLIENT-CONTENT { + description + "CLIENT CONTENT"; + uses SERVER-KEY; + } + list client { + key "ip-address"; + description + "Client data"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of COA client"; + } + uses CLIENT-CONTENT; + } + list client-vrf-name { + key "vrf-name ip-address"; + description + "Client data"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of COA client"; + } + uses CLIENT-CONTENT; + } + } + leaf ignore { + type Aaa-select-key; + description + "Ignore option for server key or session key"; + } + leaf port { + type uint32 { + range "1000..5000"; + } + description + "Specify the COA server port to listen on"; + } + leaf authentication-type { + type Aaa-authentication; + description + "RADIUS dynamic authorization type"; + } + uses SERVER-KEY; + } + container load-balance-options { + description + "Radius load-balancing options"; + container load-balance-method { + description + "Method by which the next host will be picked"; + container batch-size { + presence "Contains mandatory nodes that used to set default values"; + description + "Batch size for selection of the server"; + leaf batch-size { + type uint32 { + range "1..1500"; + } + mandatory true; + description + "Batch size for selection of the server"; + } + leaf ignore-preferred-server { + type boolean; + mandatory true; + description + "Disable preferred server for this Server + Group"; + } + } + } + } + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "A VRF"; + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + RADIUS packets"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name. Specify 'default' for defalut VRF"; + } + } + } + container throttle { + presence "Indicates a throttle node is configured."; + description + "Radius throttling options"; + leaf access { + type Aaa-throttle-access; + mandatory true; + description + "To flow control the number of access requests + sent to a radius server"; + } + leaf accounting { + type Aaa-throttle-accounting; + mandatory true; + description + "To flow control the number of accounting + requests sent to a radius server"; + } + leaf access-timeout { + type Aaa-throttle-access-timeout; + mandatory true; + description + "Specify the number of timeouts exceeding which + a throttled access request is dropped"; + } + } + container vsa { + description + "Unknown VSA (Vendor Specific Attribute) ignore + configuration for RADIUS server"; + container attribute { + description + "Vendor Specific Attribute"; + container ignore { + description + "Ignore the VSA"; + leaf unknown { + type empty; + description + "Ignore the VSA and no prefix will reject the + unknown VSA"; + } + } + } + } + container ipv4 { + description + "IPv4 configuration"; + uses DSCP; + } + container radius-attribute { + description + "attribute"; + container filter-id-11 { + description + "Filter-Id attribute configuration"; + container defaults { + description + "Set the attribute default direction"; + leaf direction { + type Aaa-direction; + description + "Filtering is applied to + ingress(inbound)/egress(outbound) packets + only"; + } + } + } + container acct-multi-session-id { + description + "Acct-Session-Id attribute(44)"; + container include-parent-session-id { + description + "Prepend Acct-Session-Id attribute with + Nas-Port-Id"; + leaf config { + type Aaa-config; + description + "false/true"; + } + } + } + container acct-session-id { + description + "Acct-Session-Id attribute(44)"; + container prepend-nas-port-id { + description + "Prepend Acct-Session-Id attribute with + Nas-Port-Id"; + leaf config { + type Aaa-config; + description + "false/true"; + } + } + } + } + container attributes { + description + "Table of attribute list"; + list attribute { + key "attribute-list-name"; + description + "Attribute list name"; + container vendor-ids { + description + "Vendor Specific Attribute"; + list vendor-id { + key "vendor-id"; + description + "Vendor ID of vsa"; + leaf vendor-id { + type uint32; + description + "Vendor Id of vsa"; + } + list vendor-type { + key "vendor-type"; + description + "Vendor Type of vsa"; + leaf vendor-type { + type uint32; + description + "Vendor Type of vsa"; + } + list attribute-name { + key "attribute-name"; + description + "Attribute Name of vsa"; + leaf attribute-name { + type xr:Cisco-ios-xr-string; + description + "Attribute Name of vsa"; + } + list attribute-name-absent { + key "attribute-name-absent"; + description + "AttributeName of vsa is absent"; + leaf attribute-name-absent { + type uint32; + description + "AttributeName of vsa is absent"; + } + list attribute-name-present { + key "attribute-name-present"; + description + "AttributeName of vsa is present"; + leaf attribute-name-present { + type uint32; + description + "AttributeName of vsa is present"; + } + } + } + } + } + } + } + leaf attribute { + type string; + description + "Specify RADIUS attribute"; + } + leaf attribute-list-name { + type xr:Cisco-ios-xr-string; + description + "Attribute list name"; + } + } + } + container key { + description + "RADIUS encryption key"; + leaf encrypt-type { + type Scrt-encryption; + description + "Encryption Type"; + } + leaf secret7 { + when "../encrypt-type = 'type7'" { + description + "../EncryptType = Type7"; + } + type xr:Proprietary-password; + description + "Type7 Encryption key"; + } + leaf secret6 { + when "../encrypt-type = 'type6'" { + description + "../EncryptType = Type6"; + } + type xr:Type6-password; + description + "Type6 Encryption key, requires a valid master + key in the system"; + } + } + container source-port { + description + "Source port"; + leaf extended { + type empty; + description + "Enable source-port extend "; + } + } + leaf retransmit { + type Aaa-radius-retransmit-with-disable; + default "3"; + description + "Number of times to retransmit a request to the + RADIUS server(0-Disable)"; + } + leaf dead-time { + type Aaa-radius-dead-time; + units "minute"; + description + "This indicates the length of time (in minutes) + for which a RADIUS server remains marked as + dead"; + } + leaf timeout { + type Aaa-radius-timeout; + default "5"; + description + "Time to wait for a RADIUS server to reply"; + } + uses IGNORE-ACCOUNTING-PORT; + uses IDLE-TIME; + uses USERNAME; + uses IGNORE-AUTH-PORT; + } + } + augment "/a2:aaa/a1:server-groups" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-locald-cfg'"; + container radius-server-groups { + description + "RADIUS server group definition"; + list radius-server-group { + key "server-group-name"; + description + "RADIUS server group name"; + container accounting { + description + "List of filters in server group"; + uses REQUEST; + uses REPLY; + } + container servers { + description + "List of RADIUS servers present in the group"; + list server { + key "ordering-index ip-address auth-port-number acct-port-number"; + description + "A server to include in the server group"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of RADIUS server"; + } + leaf auth-port-number { + type inet:port-number; + description + "Authentication Port number (standard port + 1645)"; + } + leaf acct-port-number { + type inet:port-number; + description + "Accounting Port number (standard port 1646)"; + } + } + } + container private-servers { + description + "List of private RADIUS servers present in the + group"; + list private-server { + key "ordering-index ip-address auth-port-number acct-port-number"; + description + "A private server to include in the server + group"; + container private-key { + description + "RADIUS encryption key"; + leaf encrypt-type { + type Scrt-encryption; + description + "Encryption Type"; + } + leaf secret7 { + when "../encrypt-type = 'type7'" { + description + "../EncryptType = Type7"; + } + type xr:Proprietary-password; + description + "Type7 Encryption key"; + } + leaf secret6 { + when "../encrypt-type = 'type6'" { + description + "../EncryptType = Type6"; + } + type xr:Type6-password; + description + "Type6 Encryption key, requires a valid + master key in the system"; + } + } + leaf private-timeout { + type Aaa-radius-timeout; + default "5"; + description + "Time to wait for a RADIUS server to reply"; + } + leaf ignore-accounting-port { + type boolean; + description + "Ignore Accounting port"; + } + leaf private-retransmit { + type Aaa-radius-retransmit; + default "3"; + description + "Number of times to retransmit a request to + the RADIUS server"; + } + leaf idle-time { + type Aaa-radius-idle-time; + default "5"; + description + "Idle time for the radius Server"; + } + leaf username { + type string; + description + "Username to be tested for automated testing"; + } + leaf ignore-auth-port { + type boolean; + description + "Ignore authentication Port"; + } + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of RADIUS server"; + } + leaf auth-port-number { + type inet:port-number; + description + "Authentication Port number (standard port + 1645)"; + } + leaf acct-port-number { + type inet:port-number; + description + "Accounting Port number (standard port 1646)"; + } + } + } + container server-group-throttle { + presence "Contains mandatory nodes that used to set default values"; + description + "Radius throttling options"; + leaf access { + type Aaa-throttle-access; + mandatory true; + description + "To flow control the number of access requests + sent to a radius server"; + } + leaf accounting { + type Aaa-throttle-accounting; + mandatory true; + description + "To flow control the number of accounting + requests sent to a radius server"; + } + leaf access-timeout { + type Aaa-throttle-access-timeout; + mandatory true; + description + "Specify the number of timeouts exceeding + which a throttled access request is dropped"; + } + } + container load-balance { + description + "Radius load-balancing options"; + container method { + description + "Method by which the next host will be picked"; + container name { + presence "Contains mandatory nodes that used to set default values"; + description + "Batch size for selection of the server"; + leaf least-outstanding { + type uint32; + mandatory true; + description + "Pick the server with the least transactions + outstanding"; + } + leaf batch-size { + type uint32 { + range "1..1500"; + } + mandatory true; + description + "Batch size for selection of the server"; + } + leaf ignore-preferred-server { + type boolean; + mandatory true; + description + "Disable preferred server for this Server + Group"; + } + } + } + } + container authorization { + description + "List of filters in server group"; + uses REQUEST; + uses REPLY; + } + leaf dead-time { + type Aaa-radius-dead-time; + units "minute"; + description + "This indicates the length of time (in minutes) + for which RADIUS servers present in this group + remain marked as dead"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in RADIUS + packets"; + } + leaf vrf { + type string; + description + "Specify VRF name of RADIUS group"; + } + leaf server-group-name { + type xr:Cisco-ios-xr-string; + description + "RADIUS server group name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub1.yang new file mode 100644 index 000000000..0614a94de --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub1.yang @@ -0,0 +1,563 @@ +submodule Cisco-IOS-XR-aaa-protocol-radius-oper-sub1 { + belongs-to Cisco-IOS-XR-aaa-protocol-radius-oper { + prefix Cisco-IOS-XR-aaa-protocol-radius-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR aaa-protocol-radius package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-23 { + description + "Adding yang support for coa"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-13 { + description + "Adding yang support for new cli."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping RADIUS-CLIENTBAG { + description + "RADIUS CLIENTBAG"; + leaf unknown-authentication-response { + type uint32; + description + "Number of RADIUS Access-Response packets + received from unknown addresses"; + } + leaf authentication-nas-id { + type string; + description + "NAS-Identifier of the RADIUS authentication + client"; + } + leaf unknown-accounting-response { + type uint32; + description + "Number of RADIUS Accounting-Response packets + received from unknown addresses"; + } + leaf accounting-nas-id { + type string; + description + "NAS-Identifier of the RADIUS accounting client"; + } + } + + grouping SRC-INTF { + description + "SRC INTF"; + leaf interface-name { + type string; + description + "Name of the source interface"; + } + leaf ipaddrv4 { + type string; + description + "IP address buffer"; + } + leaf ipaddrv6 { + type string; + description + "IP address buffer"; + } + leaf vrfid { + type uint32; + description + "VRF Id"; + } + } + + grouping SOURCE-INTERFACES { + description + "SOURCE INTERFACES"; + list list-of-source-interface { + description + "List of source interfaces"; + uses SRC-INTF; + } + } + + grouping RADIUS-SERVERBAG { + description + "RADIUS SERVERBAG"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IP address of RADIUS server"; + } + leaf priority { + type uint32; + description + "A number that indicates the priority of the + server"; + } + leaf timeout-xr { + type uint32; + units "second"; + description + "Per-server timeout in seconds"; + } + leaf retransmit { + type uint32; + description + "Per-server retransmit"; + } + leaf dead-time { + type uint32; + units "minute"; + description + "Per-server deadtime in minutes"; + } + leaf dead-detect-time { + type uint32; + units "second"; + description + "Per-server dead-detect time in seconds"; + } + leaf dead-detect-tries { + type uint32; + description + "Per-server dead-detect tries"; + } + leaf authentication-port { + type uint32; + description + "Authentication port"; + } + leaf accounting-port { + type uint32; + description + "Accounting port"; + } + leaf state { + type string; + description + "State of the server UP/DOWN"; + } + leaf current-state-duration { + type uint32; + description + "Elapsed time the server has been in current + state"; + } + leaf previous-state-duration { + type uint32; + description + "Elapsed time the server was been in previous + state"; + } + leaf packets-in { + type uint32; + description + "Total number of incoming packets read"; + } + leaf packets-out { + type uint32; + description + "Total number of outgoing packets sent"; + } + leaf timeouts { + type uint32; + description + "Total number of packets timed-out"; + } + leaf aborts { + type uint32; + description + "Total number of requests aborted"; + } + leaf replies-expected { + type uint32; + description + "Number of replies expected to arrive"; + } + leaf redirected-requests { + type uint32; + description + "Number of requests redirected"; + } + leaf authentication-rtt { + type uint32; + units "millisecond"; + description + "Round-trip time for authentication in + milliseconds"; + } + leaf access-requests { + type uint32; + description + "Number of access requests"; + } + leaf access-request-retransmits { + type uint32; + description + "Number of retransmitted access requests"; + } + leaf access-accepts { + type uint32; + description + "Number of access accepts"; + } + leaf access-rejects { + type uint32; + description + "Number of access rejects"; + } + leaf access-challenges { + type uint32; + description + "Number of access challenges"; + } + leaf bad-access-responses { + type uint32; + description + "Number of bad access responses"; + } + leaf bad-access-authenticators { + type uint32; + description + "Number of bad access authenticators"; + } + leaf pending-access-requests { + type uint32; + description + "Number of pending access requests"; + } + leaf access-timeouts { + type uint32; + description + "Number of access packets timed-out"; + } + leaf unknown-access-types { + type uint32; + description + "Number of packets received with unknown type + from authentication server"; + } + leaf dropped-access-responses { + type uint32; + description + "Number of access responses dropped"; + } + leaf throttled-access-reqs { + type uint32; + description + "No of throttled access reqs stats"; + } + leaf throttled-timed-out-reqs { + type uint32; + description + "No of access reqs that is throttled is timedout"; + } + leaf throttled-dropped-reqs { + type uint32; + description + "No of discarded access reqs"; + } + leaf max-throttled-access-reqs { + type uint32; + description + "Max throttled access reqs"; + } + leaf currently-throttled-access-reqs { + type uint32; + description + "No of currently throttled access reqs"; + } + leaf authen-response-time { + type uint32; + description + "Average response time for authentication + requests"; + } + leaf authen-transaction-successess { + type uint32; + description + "Number of succeeded authentication transactions"; + } + leaf authen-transaction-failure { + type uint32; + description + "Number of failed authentication transactions"; + } + leaf authen-unexpected-responses { + type uint32; + description + "Number of unexpected authentication responses"; + } + leaf authen-server-error-responses { + type uint32; + description + "Number of server error authentication responses"; + } + leaf authen-incorrect-responses { + type uint32; + description + "Number of incorrect authentication responses"; + } + leaf author-requests { + type uint32; + description + "Number of access requests"; + } + leaf author-request-timeouts { + type uint32; + description + "Number of access packets timed out"; + } + leaf author-response-time { + type uint32; + description + "Average response time for authorization requests"; + } + leaf author-transaction-successess { + type uint32; + description + "Number of succeeded authorization transactions"; + } + leaf author-transaction-failure { + type uint32; + description + "Number of failed authorization transactions"; + } + leaf author-unexpected-responses { + type uint32; + description + "Number of unexpected authorization responses"; + } + leaf author-server-error-responses { + type uint32; + description + "Number of server error authorization responses"; + } + leaf author-incorrect-responses { + type uint32; + description + "Number of incorrect authorization responses"; + } + leaf accounting-rtt { + type uint32; + units "millisecond"; + description + "Round-trip time for accounting in milliseconds"; + } + leaf accounting-requests { + type uint32; + description + "Number of accounting requests"; + } + leaf accounting-retransmits { + type uint32; + description + "Number of retransmitted accounting requests"; + } + leaf accounting-responses { + type uint32; + description + "Number of accounting responses"; + } + leaf bad-accounting-responses { + type uint32; + description + "Number of bad accounting responses"; + } + leaf bad-accounting-authenticators { + type uint32; + description + "Number of bad accounting authenticators"; + } + leaf pending-accounting-requets { + type uint32; + description + "Number of pending accounting requests"; + } + leaf accounting-timeouts { + type uint32; + description + "Number of accounting packets timed-out"; + } + leaf unknown-accounting-types { + type uint32; + description + "Number of packets received with unknown type + from accounting server"; + } + leaf dropped-accounting-responses { + type uint32; + description + "Number of accounting responses dropped"; + } + leaf is-a-private-server { + type boolean; + description + "Is a private server"; + } + leaf total-test-auth-reqs { + type uint32; + description + "Total auth test request"; + } + leaf total-test-auth-timeouts { + type uint32; + description + "Total auth test timeouts"; + } + leaf total-test-auth-response { + type uint32; + description + "Total auth test response"; + } + leaf total-test-auth-pending { + type uint32; + description + "Total auth test pending"; + } + leaf total-test-acct-reqs { + type uint32; + description + " Total acct test req"; + } + leaf total-test-acct-timeouts { + type uint32; + description + "Total acct test timeouts"; + } + leaf total-test-acct-response { + type uint32; + description + "Total acct test response"; + } + leaf total-test-acct-pending { + type uint32; + description + "Total acct test pending"; + } + leaf throttled-acct-transactions { + type uint32; + description + "No of throttled acct transactions stats"; + } + leaf throttled-acct-timed-out-stats { + type uint32; + description + "No of acct transaction that is throttled is + timedout"; + } + leaf throttled-acct-failures-stats { + type uint32; + description + "No of acct discarded transaction"; + } + leaf max-acct-throttled { + type uint32; + description + "Max throttled acct transactions"; + } + leaf throttleda-acct-transactions { + type uint32; + description + "No of currently throttled acct transactions"; + } + leaf acct-unexpected-responses { + type uint32; + description + "Number of unexpected accounting responses"; + } + leaf acct-server-error-responses { + type uint32; + description + "Number of server error accounting responses"; + } + leaf acct-incorrect-responses { + type uint32; + description + "Number of incorrect accounting responses"; + } + leaf acct-response-time { + type uint32; + description + "Average response time for authentication + requests"; + } + leaf acct-transaction-successess { + type uint32; + description + "Number of succeeded authentication transactions"; + } + leaf acct-transaction-failure { + type uint32; + description + "Number of failed authentication transactions"; + } + leaf total-deadtime { + type uint32; + description + "Total time of Server being in DEAD state"; + } + leaf last-deadtime { + type uint32; + description + "Time of Server being in DEAD state, after last + UP"; + } + leaf is-quarantined { + type boolean; + description + "flag to indicate Server is quarantined or not + (Automated TEST in progress)"; + } + leaf group-name { + type string; + description + "Server group name for private server"; + } + leaf ip-address-xr { + type string; + description + "IP address buffer"; + } + leaf family { + type string; + description + "IP address Family"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub2.yang new file mode 100644 index 000000000..2f06d6e37 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper-sub2.yang @@ -0,0 +1,704 @@ +submodule Cisco-IOS-XR-aaa-protocol-radius-oper-sub2 { + belongs-to Cisco-IOS-XR-aaa-protocol-radius-oper { + prefix Cisco-IOS-XR-aaa-protocol-radius-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR aaa-protocol-radius package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-23 { + description + "Adding yang support for coa"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-13 { + description + "Adding yang support for new cli."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping RADIUS-DYNAMIC-SERVER { + description + "RADIUS dynamic author server"; + leaf disconnected-invalid-requests { + type uint32; + description + "Invalid disconnected requests"; + } + leaf invalid-coa-requests { + type uint32; + description + "Invalid change of authorization requests"; + } + leaf radius-context-not-found { + type uint32; + description + "Radius context not found"; + } + leaf client-context-not-found { + type uint32; + description + "Client context not found"; + } + } + + grouping RADIUS-GROUPS-SERVERS { + description + "RADIUS server groups"; + leaf groups { + type uint32; + description + "Number of groups"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf dead-time { + type uint32; + units "minute"; + description + "Dead time in minutes"; + } + leaf servers { + type uint32; + description + "Number of servers"; + } + list server-group { + description + "Server groups"; + uses RADIUS-SERVER-GROUP-DATA; + } + } + + grouping RADIUS-DYNAMIC-CLIENT { + description + "RADIUS dynamic clients"; + list dynamic-author-client { + description + "List of dynamic author clients"; + uses RADIUS-DYNAMIC-CLIENT-DATA; + } + } + + grouping RADIUS-ACCOUNTING { + description + "RADIUS accounting"; + container accounting { + description + "Accounting data"; + uses RADIUS-ACCOUNTING-DATA; + } + leaf port { + type uint32; + description + "Accounting port number"; + } + leaf ip-address { + type string; + description + "IP address buffer"; + } + leaf family { + type string; + description + "IP address Family"; + } + } + + grouping RADIUS-SERVER-ACCOUNTING { + description + "RADIUS accounting information of all servers"; + list accounting-group { + description + "List of accounting groups"; + uses RADIUS-ACCOUNTING; + } + } + + grouping RADIUS-AUTHENTICATION { + description + "RADIUS authentication"; + container authentication { + description + "Authentication data"; + uses RADIUS-AUTHENTICATION-DATA; + } + leaf port { + type uint32; + description + "Authentication port number"; + } + leaf ip-address { + type string; + description + "IP address buffer"; + } + leaf family { + type string; + description + "IP address Family"; + } + } + + grouping RADIUS-SERVER-AUTHENTICATION { + description + "RADIUS authentication data of all servers"; + list authentication-group { + description + "List of authentication groups"; + uses RADIUS-AUTHENTICATION; + } + } + + grouping RADIUS-DYNAMIC-CLIENT-DATA { + description + "RADIUS dynamic authorization client"; + leaf disc-reqs { + type uint32; + description + "Number of RADIUS Disconnect-Requestsreceived + from the client"; + } + leaf disc-acks { + type uint32; + description + "Number of RADIUS Disconnect-ACKs sent to the + client"; + } + leaf disc-naks { + type uint32; + description + "Number of RADIUS Disconnect-NAKs sent to the + client"; + } + leaf disc-bad-auth { + type uint32; + description + "Number of RADIUS Disconnect-Requests received + from the client containing an invalid + Authenticator"; + } + leaf drop-disc-reqs { + type uint32; + description + "Number of RADIUS Disconnect-Requests received + from the client that were silently discarded"; + } + leaf coa-reqs { + type uint32; + description + "Number of RADIUS CoA-Requests received from the + client"; + } + leaf coa-acks { + type uint32; + description + "Number of RADIUS CoA-ACKs sent to the client"; + } + leaf coa-naks { + type uint32; + description + "Number of RADIUS CoA-NAKs sent to the client"; + } + leaf coa-bad-auth { + type uint32; + description + "Number of RADIUS CoA-Requests received from the + client containing an invalid Authenticator"; + } + leaf drop-coa-reqs { + type uint32; + description + "Number of RADIUS CoA-Requests received from the + client that were silently discarded"; + } + leaf unknown-types { + type uint32; + description + "Number of incoming packets of unknown types that + were received from the client"; + } + leaf internal-error { + type uint32; + description + "Number of packets dropped due to internal error"; + } + leaf pak-decode-fail { + type uint32; + description + "Number of packets dropped due to failure in + radius packet decoding"; + } + leaf vrf-parse-fail-err { + type uint32; + description + "Number of requests which encountered vrf parse + fail error"; + } + leaf unknown-vsa-error { + type uint32; + description + "Number of requests which encountered unknown vsa + error"; + } + leaf send-msg-failed { + type uint32; + description + "Number of response packets which failed to be + send"; + } + leaf radius-to-ch { + type uint32; + description + "Number of requests sent to command handler"; + } + leaf ch-to-radius { + type uint32; + description + "Number of responses received from command + handler"; + } + leaf service-parse-fail { + type uint32; + description + "Number of requests which encountered service + parse fail error"; + } + leaf multi-subs-error { + type uint32; + description + "Number of requests which encountered multiple + subscribers not allowed error"; + } + leaf service-not-present { + type uint32; + description + "Number of requests which has missing service + name attribute"; + } + leaf send-to-ch-fail { + type uint32; + description + "Number of requests which failed to be sent to + command handler"; + } + leaf vrf-name { + type string; + description + "VRF of RADIUS dynamic authorization client"; + } + leaf client-address { + type string; + description + "Address Buffer"; + } + } + + grouping RADIUS-AUTHORIZATION-DATA { + description + "RADIUS authorization data"; + leaf author-requests { + type uint32; + description + "Number of access requests"; + } + leaf author-request-timeouts { + type uint32; + description + "Number of access packets timed out"; + } + leaf author-unexpected-responses { + type uint32; + description + "Number of unexpected authorization responses"; + } + leaf author-server-error-responses { + type uint32; + description + "Number of server error authorization responses"; + } + leaf author-incorrect-responses { + type uint32; + description + "Number of incorrect authorization responses"; + } + leaf author-response-time { + type uint32; + description + "Average response time for authorization requests"; + } + leaf author-transaction-successess { + type uint32; + description + "Number of succeeded authorization transactions"; + } + leaf author-transaction-failure { + type uint32; + description + "Number of failed authorization transactions"; + } + } + + grouping RADIUS-AUTHENTICATION-DATA { + description + "RADIUS authentication data"; + leaf access-requests { + type uint32; + description + "Number of access requests"; + } + leaf pending-access-requests { + type uint32; + description + "Number of pending access requests"; + } + leaf access-request-retransmits { + type uint32; + description + "Number of retransmitted access requests"; + } + leaf access-accepts { + type uint32; + description + "Number of access accepts"; + } + leaf access-rejects { + type uint32; + description + "Number of access rejects"; + } + leaf access-challenges { + type uint32; + description + "Number of access challenges"; + } + leaf access-timeouts { + type uint32; + description + "Number of access packets timed out"; + } + leaf bad-access-responses { + type uint32; + description + "Number of bad access responses"; + } + leaf bad-access-authenticators { + type uint32; + description + "Number of bad access authenticators"; + } + leaf unknown-access-types { + type uint32; + description + "Number of packets received with unknown type + from authentication server"; + } + leaf dropped-access-responses { + type uint32; + description + "Number of access responses dropped"; + } + leaf rtt { + type uint32; + units "millisecond"; + description + "Round trip time for authentication in + milliseconds"; + } + leaf authen-transaction-successess { + type uint32; + description + "Number of succeeded authentication transactions"; + } + leaf authen-transaction-failure { + type uint32; + description + "Number of failed authentication transactions"; + } + leaf authen-unexpected-responses { + type uint32; + description + "Number of unexpected authentication responses"; + } + leaf authen-server-error-responses { + type uint32; + description + "Number of server error authentication responses"; + } + leaf authen-incorrect-responses { + type uint32; + description + "Number of incorrect authentication responses"; + } + leaf auth-throttled-transactions { + type uint32; + description + "Estimated Throttled Authentication Transactions"; + } + leaf auth-max-transactions { + type uint32; + description + "Maximum Throttled Authentication Transactions"; + } + leaf total-test-auth-reqs { + type uint32; + description + "Automated Test Stats for authentication requests"; + } + leaf total-test-auth-timeouts { + type uint32; + description + "Automated Test Stats for authentication timeouts"; + } + leaf total-test-auth-response { + type uint32; + description + "Automated Test Stats for authentication response"; + } + leaf total-test-auth-pending { + type uint32; + description + "Automated Test Stats for authentication pending"; + } + } + + grouping RADIUS-ACCOUNTING-DATA { + description + "RADIUS accounting data"; + leaf requests { + type uint32; + description + "Number of accounting requests"; + } + leaf pending-requests { + type uint32; + description + "Number of pending accounting requests"; + } + leaf retransmits { + type uint32; + description + "Number of retransmitted accounting requests"; + } + leaf responses { + type uint32; + description + "Number of accounting responses"; + } + leaf timeouts { + type uint32; + description + "Number of accounting packets timed-out"; + } + leaf bad-responses { + type uint32; + description + "Number of bad accounting responses"; + } + leaf bad-authenticators { + type uint32; + description + "Number of bad accounting authenticators"; + } + leaf unknown-packet-types { + type uint32; + description + "Number of packets received with unknown type + from accounting server"; + } + leaf dropped-responses { + type uint32; + description + "Number of accounting responses dropped"; + } + leaf rtt { + type uint32; + units "millisecond"; + description + "Round trip time for accounting in milliseconds"; + } + leaf acct-unexpected-responses { + type uint32; + description + "Number of unexpected accounting responses"; + } + leaf acct-transaction-successess { + type uint32; + description + "Number of succeeded authentication transactions"; + } + leaf acct-transaction-failure { + type uint32; + description + "Number of failed authentication transactions"; + } + leaf acct-throttled-transactions { + type uint32; + description + "Estimated Throttled Accounting Transactions"; + } + leaf acct-max-throttle-trans { + type uint32; + description + "Maximum Throttled Accounting Transactions"; + } + leaf total-test-acct-reqs { + type uint32; + description + "Automated Test Stats for accounting requests"; + } + leaf total-test-acct-timeouts { + type uint32; + description + "Automated Test Stats for accounting timeouts"; + } + leaf total-test-acct-response { + type uint32; + description + "Automated Test Stats for accounting response"; + } + leaf total-test-acct-pending { + type uint32; + description + "Automated Test Stats for accounting pending"; + } + } + + grouping RADIUS-SERVER-GROUP-DATA { + description + "RADIUS server group data"; + container accounting { + description + "Accounting data"; + uses RADIUS-ACCOUNTING-DATA; + } + container authentication { + description + "Authentication data"; + uses RADIUS-AUTHENTICATION-DATA; + } + container authorization { + description + "Authorization data"; + uses RADIUS-AUTHORIZATION-DATA; + } + leaf authentication-port { + type uint32; + description + "Authentication port"; + } + leaf accounting-port { + type uint32; + description + "Accounting port"; + } + leaf is-private { + type boolean; + description + "True if private"; + } + leaf ip-address { + type string; + description + "IP address buffer"; + } + leaf family { + type string; + description + "IP address Family"; + } + leaf redirected-requests { + type uint32; + description + "Redirected Requests"; + } + } + + grouping RADIUS-TIME-TRIES-DATA { + description + "Time and tries information"; + leaf value { + type uint32; + description + "Value for time or tries"; + } + leaf is-computed { + type boolean; + description + "True if computed; false if not"; + } + } + + grouping RADIUS-DEAD-CRITERIA { + description + "Dead criteria information"; + container time { + description + "Time in seconds"; + uses RADIUS-TIME-TRIES-DATA; + } + container tries { + description + "Number of tries"; + uses RADIUS-TIME-TRIES-DATA; + } + } + + grouping RADIUS-CLIENT-XML { + description + "RADIUS client data"; + leaf unknown-authentication-responses { + type uint32; + description + "Number of RADIUS access responses packets + received from unknown addresses"; + } + leaf authentication-nas-id { + type string; + description + "NAS-Identifier of the RADIUS authentication + client"; + } + leaf unknown-accounting-responses { + type uint32; + description + "Number of RADIUS accounting responses packets + received from unknown addresses"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper.yang new file mode 100644 index 000000000..59aa7ab33 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-protocol-radius-oper.yang @@ -0,0 +1,271 @@ +module Cisco-IOS-XR-aaa-protocol-radius-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-protocol-radius-oper"; + prefix aaa-protocol-radius-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-locald-oper { + prefix a1; + } + include Cisco-IOS-XR-aaa-protocol-radius-oper-sub2 { + revision-date 2021-02-23; + } + include Cisco-IOS-XR-aaa-protocol-radius-oper-sub1 { + revision-date 2021-02-23; + } + + 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 aaa-protocol-radius package operational data. + + This module contains definitions + for the following management objects: + radius: RADIUS operational data + + This YANG module augments the + Cisco-IOS-XR-aaa-locald-oper + module with state data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-23 { + description + "Adding yang support for coa"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-13 { + description + "Adding yang support for new cli."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Radius-port-range { + type uint32 { + range "1..65535"; + } + description + "Radius port range"; + } + + typedef Aaa-radius-port-range { + type uint32 { + range "1..65535"; + } + description + "Aaa radius port range"; + } + + augment "/a1:aaa" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-aaa-locald-oper'"; + container radius { + description + "RADIUS operational data"; + container servers { + description + "List of RADIUS servers configured"; + list server { + description + "RADIUS Server"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of RADIUS server"; + } + leaf auth-port-number { + type Aaa-radius-port-range; + description + "Authentication Port number (standard port + 1645)"; + } + leaf acct-port-number { + type Aaa-radius-port-range; + description + "Accounting Port number (standard port 1646)"; + } + uses RADIUS-SERVERBAG; + } + } + container radius-source-interface { + description + "RADIUS source interfaces"; + uses SOURCE-INTERFACES; + } + container global { + description + "RADIUS Client Information"; + uses RADIUS-CLIENTBAG; + } + } + } + container radius { + config false; + description + "RADIUS operational data"; + container nodes { + description + "Contains all the nodes"; + list node { + key "node-name"; + description + "RADIUS operational data for a particular node"; + container client { + description + "RADIUS client data"; + uses RADIUS-CLIENT-XML; + } + container dead-criteria { + description + "RADIUS dead criteria information"; + container hosts { + description + "RADIUS server dead criteria host table"; + list host { + description + "RADIUS Server"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of RADIUS server"; + } + leaf auth-port-number { + type Radius-port-range; + description + "Authentication Port number (standard port + 1645)"; + } + leaf acct-port-number { + type Radius-port-range; + description + "Accounting Port number (standard port 1646)"; + } + uses RADIUS-DEAD-CRITERIA; + } + } + } + container servergroups { + description + "RADIUS server group table"; + list servergroup { + description + "RADIUS server group information"; + leaf server-group-name { + type xr:Cisco-ios-xr-string; + description + "Server group name"; + } + leaf server-ipaddress { + type xr:Cisco-ios-xr-string; + description + "IP address of RADIUS server"; + } + leaf auth-port-number { + type Radius-port-range; + description + "Authentication Port number (standard port + 1645)"; + } + leaf acct-port-number { + type Radius-port-range; + description + "Accounting Port number (standard port 1646)"; + } + uses RADIUS-SERVER-GROUP-DATA; + } + } + container dynamic-author-clients { + description + "Dynamic authorization client data"; + list dynamic-author-client { + description + "Dynamic authorization client data"; + leaf coa-client-ipaddress { + type xr:Cisco-ios-xr-string; + description + "IP address of Coa Client server"; + } + leaf vrf { + type xr:Cisco-ios-xr-string; + description + "vrf name"; + } + uses RADIUS-DYNAMIC-CLIENT-DATA; + } + } + container authentication { + description + "RADIUS authentication data"; + uses RADIUS-SERVER-AUTHENTICATION; + } + container accounting { + description + "RADIUS accounting data"; + uses RADIUS-SERVER-ACCOUNTING; + } + container dynamic-authorization-clients { + description + "Dynamic authorization client data"; + uses RADIUS-DYNAMIC-CLIENT; + } + container server-groups { + description + "RADIUS server group table"; + list server-group { + key "server-group-name"; + description + "RADIUS server group data"; + leaf server-group-name { + type xr:Cisco-ios-xr-string; + description + "Group name"; + } + uses RADIUS-GROUPS-SERVERS; + } + } + container dynamic-authorization { + description + "Dynamic authorization data"; + uses RADIUS-DYNAMIC-SERVER; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-cfg.yang new file mode 100644 index 000000000..559db05a3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-cfg.yang @@ -0,0 +1,482 @@ +module Cisco-IOS-XR-aaa-tacacs-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-tacacs-cfg"; + prefix aaa-tacacs-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-lib-cfg { + prefix a1; + } + import Cisco-IOS-XR-aaa-locald-cfg { + prefix a2; + } + + 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 aaa-tacacs package configuration. + + This YANG module augments the + Cisco-IOS-XR-aaa-lib-cfg, + Cisco-IOS-XR-aaa-locald-cfg + modules with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-21 { + description + "Added union for tacacs keys to make encrypt-type field mandatory."; + semver:module-version "3.0.0"; + } + revision 2020-11-24 { + description + "Added single connect idle timeout support config for private server. + 2020-08-19 + Added support for Holddown Time. + 2020-04-20 + Added support for Type 6."; + semver:module-version "2.0.0"; + } + revision 2020-01-28 { + description + "Added single connect support config for private server group. + 2019-08-29 + Added new config for idle timeout for single connection."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tacacs-dscp-value { + type union { + type enumeration { + enum "af11" { + value 10; + description + "Match packets with AF11 DSCP"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 DSCP"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 DSCP"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 DSCP"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 DSCP"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 DSCP"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 DSCP"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 DSCP"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 DSCP"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 DSCP"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 DSCP"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 DSCP"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1 DSCP"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2 DSCP"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3 DSCP"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4 DSCP"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5 DSCP"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6 DSCP"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7 DSCP"; + } + enum "default" { + value 0; + description + "Match packets with 0000 DSCP"; + } + enum "ef" { + value 46; + description + "Match packets with EF DSCP"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Tacacs dscp value"; + } + + typedef Aaa-tacacs-holddown-time { + type uint32 { + range "0..1200"; + } + description + "Aaa tacacs holddown time"; + } + + typedef Secret-encryption { + type enumeration { + enum "type6" { + value 6; + description + "Type 6 encryption"; + } + enum "type7" { + value 7; + description + "Type 7 encryption"; + } + } + description + "Secret encryption"; + } + + typedef Aaa-tacacs-timeout { + type uint32 { + range "1..1000"; + } + description + "Aaa tacacs timeout"; + } + + typedef Aaa-tacacs-port-range { + type uint32 { + range "1..65535"; + } + description + "Aaa tacacs port range"; + } + + grouping KEY { + description + "Common node of tacacs, host, private-server"; + container key { + description + "Set TACACS+ encryption key"; + leaf encrypt-type { + type Secret-encryption; + description + "Encryption Type"; + } + leaf secret7 { + when "../encrypt-type = 'type7'" { + description + "../EncryptType = Type7"; + } + type xr:Proprietary-password; + description + "Type7 Encryption key"; + } + leaf secret6 { + when "../encrypt-type = 'type6'" { + description + "../EncryptType = Type6"; + } + type xr:Type6-password; + description + "Type6 Encryption key, requires a valid master + key in the system"; + } + } + } + + grouping TIMEOUT { + description + "Common node of tacacs, host, private-server"; + leaf timeout { + type Aaa-tacacs-timeout; + default "5"; + description + "Time to wait for a TACACS+ server to reply"; + } + } + + grouping HOLDDOWN-TIME { + description + "Common node of tacacs, host, tacacs-server-group, + private-server"; + leaf holddown-time { + type Aaa-tacacs-holddown-time; + default "0"; + description + "Time for which a TACACS+ server remains marked + as dead"; + } + } + + grouping DSCP { + description + "Common node of ipv4, ipv6"; + leaf dscp { + type Tacacs-dscp-value; + description + "Specify the DSCP value"; + } + } + + grouping SINGLE-CONNECT { + description + "Common node of tacacs, host, private-server"; + leaf single-connect { + type boolean; + default "false"; + description + "Use a single connection for all sessions for a + given TACACS+ server"; + } + } + + grouping SINGLE-CONNECT-IDLE-TIMEOUT { + description + "Common node of tacacs, host, private-server"; + leaf single-connect-idle-timeout { + type uint32 { + range "5..7200"; + } + units "second"; + description + "Idle timeout for single connection to the + TACACS+ server"; + } + } + + augment "/a1:aaa" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-lib-cfg'"; + container tacacs { + description + "Modify TACACS+ query parameters"; + container ipv6 { + description + "IPv6 configuration"; + uses DSCP; + } + container hosts { + description + "Specify a TACACS+ server"; + list host { + key "ordering-index ip-address port-number"; + description + "One of the TACACS+ servers"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the order + of precedence"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of TACACS+ server"; + } + leaf port-number { + type Aaa-tacacs-port-range; + description + "Port number (standard 49)"; + } + uses KEY; + uses TIMEOUT; + uses SINGLE-CONNECT; + uses SINGLE-CONNECT-IDLE-TIMEOUT; + uses HOLDDOWN-TIME; + } + } + container ipv4 { + description + "IPv4 configuration"; + uses DSCP; + } + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "A VRF"; + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + TACACS+ packets"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name. Specify 'default' for default VRF"; + } + } + } + uses KEY; + uses TIMEOUT; + uses SINGLE-CONNECT; + uses SINGLE-CONNECT-IDLE-TIMEOUT; + uses HOLDDOWN-TIME; + } + } + augment "/a1:aaa/a2:server-groups" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-aaa-locald-cfg'"; + container tacacs-server-groups { + description + "TACACS+ server-group definition"; + list tacacs-server-group { + key "server-group-name"; + description + "TACACS+ Server group name"; + container servers { + description + "Specify a TACACS+ server"; + list server { + key "ordering-index ip-address"; + description + "A server to include in the server group"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of TACACS+ server"; + } + } + } + container private-servers { + description + "List of private TACACS servers present in the + group"; + list private-server { + key "ordering-index ip-address port-number"; + description + "A private server to include in the server + group"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of TACACS+ server"; + } + leaf port-number { + type Aaa-tacacs-port-range; + description + "Port number (standard 49)"; + } + uses KEY; + uses TIMEOUT; + uses SINGLE-CONNECT; + uses SINGLE-CONNECT-IDLE-TIMEOUT; + uses HOLDDOWN-TIME; + } + } + leaf vrf { + type string; + description + "Specify VRF name of TACACS group"; + } + leaf server-group-name { + type xr:Cisco-ios-xr-string; + description + "TACACS+ Server group name"; + } + uses HOLDDOWN-TIME; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper-sub1.yang new file mode 100644 index 000000000..342c282e6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper-sub1.yang @@ -0,0 +1,529 @@ +submodule Cisco-IOS-XR-aaa-tacacs-oper-sub1 { + belongs-to Cisco-IOS-XR-aaa-tacacs-oper { + prefix Cisco-IOS-XR-aaa-tacacs-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR aaa-tacacs package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-01 { + description + "Added counters for tacacs+ servers + 2022-07-27 + Added support to display tacacs-source-interfaces and complete operational data"; + semver:module-version "1.3.0"; + } + revision 2021-10-01 { + description + "Support to print IPv6 address in operational data."; + semver:module-version "1.2.0"; + } + revision 2021-01-06 { + description + "Added last-contact-attempt entry in show tacacs."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TACACS-SERVER-GROUPS { + description + "TACACS SERVER GROUPS"; + list server-group { + description + "server group"; + uses TACACS-SERVER-GROUP-BAG; + } + } + + grouping TACACS-AAA-COUNTERS { + description + "TACACS AAA COUNTERS"; + leaf ipadd-buf { + type string; + description + "Ip address buffer of server"; + } + leaf port { + type uint32; + description + "server port"; + } + leaf group-name { + type string; + description + "name of the server group"; + } + leaf vrf-name { + type string; + description + "vrf of the group"; + } + leaf is-private { + type boolean; + description + "Flag for private or global server"; + } + leaf authen-req-counter { + type uint32; + description + "Authentication counter"; + } + leaf authen-pass-counter { + type uint32; + description + "Authentication Success counter"; + } + leaf authen-fail-counter { + type uint32; + description + "Authentication Failure counter"; + } + leaf authen-error-counter { + type uint32; + description + "Authentication Error counter"; + } + leaf authen-timeout-counter { + type uint32; + description + "Authentication Timeout counter"; + } + leaf exec-author-req-counter { + type uint32; + description + "Exec Authorization counter"; + } + leaf exec-author-pass-counter { + type uint32; + description + "Exec Authorization Success counter"; + } + leaf exec-author-deny-counter { + type uint32; + description + "Exec Authorization Deny counter"; + } + leaf exec-author-error-counter { + type uint32; + description + "Exec Authorization Error counter"; + } + leaf exec-author-timeout-counter { + type uint32; + description + "Exec Authorization Timeout counter"; + } + leaf cmd-author-req-counter { + type uint32; + description + "Cmd Authorization counter"; + } + leaf cmd-author-pass-counter { + type uint32; + description + "Cmd Authorization Success counter"; + } + leaf cmd-author-deny-counter { + type uint32; + description + "Cmd Authorization Deny counter"; + } + leaf cmd-author-error-counter { + type uint32; + description + "Cmd Authorization Error counter"; + } + leaf cmd-author-timeout-counter { + type uint32; + description + "Cmd Authorization Timeout counter"; + } + leaf exec-account-req-counter { + type uint32; + description + "Exec Accounting counter"; + } + leaf exec-account-pass-counter { + type uint32; + description + "Exec Accounting Success counter"; + } + leaf exec-account-fail-counter { + type uint32; + description + "Exec Accounting Fail counter"; + } + leaf exec-account-error-counter { + type uint32; + description + "Exec Accounting Error counter"; + } + leaf exec-account-timeout-counter { + type uint32; + description + "Exec Accounting Timeout counter"; + } + leaf cmd-account-req-counter { + type uint32; + description + "Cmd Accounting counter"; + } + leaf cmd-account-pass-counter { + type uint32; + description + "Cmd Accounting Success counter"; + } + leaf cmd-account-fail-counter { + type uint32; + description + "Cmd Accounting Fail counter"; + } + leaf cmd-account-error-counter { + type uint32; + description + "Cmd Accounting Error counter"; + } + leaf cmd-account-timeout-counter { + type uint32; + description + "Cmd Accounting Timeout counter"; + } + leaf clear-counter-time { + type int64; + description + "Last time counters are cleared"; + } + } + + grouping TACACS-SERVERS { + description + "TACACS SERVERS"; + list server { + description + "server"; + uses TACACS-SERVERBAG; + } + } + + grouping TACACS-REQUESTBAG { + description + "TACACS REQUESTBAG"; + list tacacs-requestbag { + description + "address in tacascd proc space of this req"; + leaf time-remaining { + type uint32; + description + "time remaining for this request"; + } + leaf bytes-out { + type uint32; + units "byte"; + description + "bytes written"; + } + leaf out-pak-size { + type uint32; + description + "size of the packet to be sent"; + } + leaf bytes-in { + type uint32; + units "byte"; + description + "bytes read from socket"; + } + leaf in-pak-size { + type uint32; + description + "size of the packet to be received"; + } + leaf pak-type { + type string; + description + "the type of packet"; + } + leaf session-id { + type int32; + description + "same as in pkt hdr"; + } + leaf sock { + type int32; + description + "socket number"; + } + } + } + + grouping TACACS-REQUESTS { + description + "TACACS REQUESTS"; + list request { + description + "request"; + uses TACACS-REQUESTBAG; + } + } + + grouping TACACS-SERVER-GROUP-BAG { + description + "TACACS SERVER GROUP BAG"; + leaf group-name { + type string; + description + "name of the server group"; + } + leaf sg-map-num { + type uint32; + description + "server group mapped number"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "vrf of the group"; + } + list server { + description + "list of servers in this group"; + uses TACACS-SERVERBAG; + } + } + + grouping TACACS-SERVERBAG { + description + "TACACS SERVERBAG"; + leaf addr { + type inet:ipv4-address; + description + "IPv4 address of T+ server (if applicable)"; + } + leaf timeout { + type uint32; + description + "per-server timeout"; + } + leaf port { + type uint32; + description + "per server port to use"; + } + leaf bytes-in { + type uint32; + units "byte"; + description + "# of bytes read"; + } + leaf bytes-out { + type uint32; + units "byte"; + description + "# of bytes out"; + } + leaf closes { + type uint32; + description + "socket closes"; + } + leaf opens { + type uint32; + description + "socket opens"; + } + leaf errors { + type uint32; + description + "error count"; + } + leaf aborts { + type uint32; + description + "abort count"; + } + leaf paks-in { + type uint32; + description + "# of incoming packets read"; + } + leaf paks-out { + type uint32; + description + "# of outgoing packets sent"; + } + leaf replies-expected { + type uint32; + description + "# of replies expected to arrive"; + } + leaf up { + type boolean; + description + "is the server UP or down ?"; + } + leaf conn-up { + type boolean; + description + "is the server connected ?"; + } + leaf single-connect { + type boolean; + description + "is this a single connect server ?"; + } + leaf is-private { + type boolean; + description + "is this a private server ?"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF in which server is reachable"; + } + leaf addr-buf { + type string { + length "0..46"; + } + description + "internet address of T+ server"; + } + leaf family { + type string { + length "0..5"; + } + description + "IP address Family"; + } + leaf single-connect-idle-timeout { + type uint32; + description + "Single connection idle timeout"; + } + leaf connection-attempted { + type int64; + description + "last attempted contact time"; + } + leaf connection-timeout { + type uint32; + description + "Server Connection timeout counter"; + } + leaf connection-failure { + type uint32; + description + "Server Connection failed counter"; + } + leaf connection-disconnect { + type uint32; + description + "Server connection disconnect counter"; + } + leaf receive-error { + type uint32; + description + "receive error counter"; + } + leaf receive-timeout { + type uint32; + description + "receive timeout counter"; + } + leaf send-timeout { + type uint32; + description + "Send timeout coutner"; + } + } + + grouping TACACS-DETAILS { + description + "TACACS DETAILS"; + list server { + description + "server"; + uses TACACS-SERVERBAG; + } + list server-group { + description + "server group"; + uses TACACS-SERVER-GROUP-BAG; + } + list src-intf { + description + "src intf"; + uses TACACS-SRC-INTF; + } + } + + grouping TACACS-SRC-INTF { + description + "TACACS SRC INTF"; + leaf interface-name { + type string; + description + "Name of the source interface"; + } + leaf ipaddrv4 { + type string; + description + "IP address buffer"; + } + leaf ipaddrv6 { + type string; + description + "IP address buffer"; + } + leaf vrfid { + type uint32; + description + "VRF Id"; + } + } + + grouping TACACS-SOURCE-INTERFACES { + description + "TACACS SOURCE INTERFACES"; + list list-of-source-interface { + description + "List of source interfaces"; + uses TACACS-SRC-INTF; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper.yang new file mode 100644 index 000000000..a29e5e3ed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-aaa-tacacs-oper.yang @@ -0,0 +1,119 @@ +module Cisco-IOS-XR-aaa-tacacs-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-aaa-tacacs-oper"; + prefix aaa-tacacs-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-aaa-locald-oper { + prefix a1; + } + include Cisco-IOS-XR-aaa-tacacs-oper-sub1 { + revision-date 2022-11-01; + } + + 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 aaa-tacacs package operational data. + + This YANG module augments the + Cisco-IOS-XR-aaa-locald-oper + module with state data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-01 { + description + "Added counters for tacacs+ servers + 2022-07-27 + Added support to display tacacs-source-interfaces and complete operational data"; + semver:module-version "1.3.0"; + } + revision 2021-10-01 { + description + "Support to print IPv6 address in operational data."; + semver:module-version "1.2.0"; + } + revision 2021-01-06 { + description + "Added last-contact-attempt entry in show tacacs."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:aaa" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-aaa-locald-oper'"; + container tacacs { + description + "TACACS operational data"; + container interfaces { + description + "TACACS Source Interfaces List"; + uses TACACS-SOURCE-INTERFACES; + } + container details { + description + "Complete Tacacs statistics"; + uses TACACS-DETAILS; + } + container requests { + description + "TACACS Active Request List"; + uses TACACS-REQUESTS; + } + container servers { + description + "TACACS server Information"; + uses TACACS-SERVERS; + } + container counters { + description + "AAA counters for all tacacs+ servers"; + list counter { + key "server-name"; + description + "AAA counters for individual server"; + leaf server-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "ServerName"; + } + uses TACACS-AAA-COUNTERS; + } + } + container server-groups { + description + "TACACS sg Information"; + uses TACACS-SERVER-GROUPS; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-accounting-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-accounting-cfg.yang new file mode 100644 index 000000000..bb5380c77 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-accounting-cfg.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-accounting-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-accounting-cfg"; + prefix accounting-cfg; + + 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 accounting package configuration. + + This module contains definitions + for the following management objects: + accounting: Global Accounting configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-31 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container accounting { + description + "Global Accounting configuration commands"; + container interfaces { + description + "Interfaces configuration"; + container mpls { + description + "Interfaces MPLS configuration"; + leaf enable { + type empty; + description + "Enable accounting on MPLS"; + } + leaf enable-v4rsvpte { + type empty; + description + "Enable accounting on MPLS IPv4 RSVP TE"; + } + } + container segment-routing { + description + "Interfaces Segment Routing configuration"; + leaf enable { + type empty; + description + "Enable accounting on Segment Routing"; + } + leaf enable-mplsv4 { + type empty; + description + "Enable accounting on Segment Routing MPLS IPv4"; + } + leaf enable-mplsv6 { + type empty; + description + "Enable accounting on Segment Routing MPLS IPv6"; + } + } + leaf enable { + type empty; + description + "Enable accounting on Interfaces"; + } + } + leaf enable { + type empty; + description + "Enable Accounting"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-adt-config-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-config-cfg.yang new file mode 100644 index 000000000..92b6d1123 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-config-cfg.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-adt-config-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-adt-config-cfg"; + prefix adt-config-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 adt-config package configuration. + + This module contains definitions + for the following management objects: + adt-config: Container Schema adt configuration + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-05 { + description + "Modified to support deletion of all ADT config on disabling feature."; + semver:module-version "1.0.0"; + } + revision 2020-04-05 { + description + "IOS XR 7.3.1 Initial version."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container adt-config { + description + "Container Schema adt configuration"; + container enable-feature { + presence "CLI submode compatibility."; + description + "Enable adt feature"; + container input { + description + "Sources for ADT collector"; + container mdt { + description + "MDT config for collector"; + container mdt-sensor-group-ids { + description + "MDT sensor groups"; + list mdt-sensor-group-id { + key "groupname"; + description + "MDT sensor group id"; + leaf groupname { + type xr:Cisco-ios-xr-string; + description + "Mdt Sensor Group name"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub1.yang new file mode 100644 index 000000000..0d1e4f3bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub1.yang @@ -0,0 +1,360 @@ +submodule Cisco-IOS-XR-adt-oper-sub1 { + belongs-to Cisco-IOS-XR-adt-oper { + prefix Cisco-IOS-XR-adt-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR adt package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-05 { + description + "IOS XR 7.3.1 Initial version."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ADT-SENSOR-PATHS { + description + "Sensor paths"; + leaf sensor-path { + type string; + description + "Sensor path "; + } + leaf cadence { + type uint32; + units "second"; + description + "Cadence in seconds"; + } + leaf is-implicitly-added { + type uint8; + description + "Is implicity added sensor-path"; + } + leaf subscription-id { + type uint64; + description + "Subscription Id "; + } + } + + grouping ADT-SENSOR-GROUPS { + description + "Sensor groups"; + leaf sensor-group-name { + type string; + description + "Sensor group name "; + } + list sensor-path { + description + "Sensor paths"; + uses ADT-SENSOR-PATHS; + } + } + + grouping ADT-SUBSCRIPTION-INFO { + description + "ADT subscription details"; + list sensor-group { + description + "Subscribed sensor groups"; + uses ADT-SENSOR-GROUPS; + } + list missed-collection { + description + "Missed sensor group collections "; + uses ADT-SENSOR-GROUPS; + } + } + + grouping DETECTOR-STATISTICS { + description + "ADT detector statistics"; + leaf-list detector-state { + type uint32; + max-elements "4"; + description + "detector state"; + } + } + + grouping TUNER-STATISTICS { + description + "ADT tuner statistics"; + leaf tuner-state { + type uint8; + description + "Current tuner state"; + } + leaf sys-cpu-state { + type uint8; + description + "system CPU state 1:OK 0:NOK"; + } + leaf sys-mem-state { + type uint8; + description + "system memory state 1:OK 0:NOK"; + } + leaf proc-cpu-state { + type uint8; + description + "adt process CPU state 1:OK 0:NOK"; + } + leaf proc-soft-limit { + type uint32; + description + "adt proc soft limit"; + } + leaf proc-mem-state { + type uint8; + description + "adt process memory state 1:OK 0:NOK"; + } + leaf default-path-collection-total { + type uint64; + description + "total default path collections"; + } + leaf default-path-collection-status { + type uint8; + description + "status of default path collections 1:OK 0:NOK"; + } + leaf user-path-collection-total { + type uint64; + description + "total user path collections"; + } + leaf user-path-collection-status { + type uint8; + description + "status of user path collections 1:OK 0:NOK"; + } + leaf time-in-curr-state { + type uint64; + units "second"; + description + "time :seconds: spend in current state"; + } + leaf sysdb-path-count { + type uint64; + description + "count of sysdb paths collected by ADT"; + } + leaf item-count { + type uint64; + description + "item count collected by ADT"; + } + leaf-list sys-cpu-stae { + type uint32; + max-elements "4"; + description + "last 4 samples of system cpu"; + } + leaf-list sys-mem-data { + type uint32; + max-elements "4"; + description + "last 4 samples of system memory data"; + } + leaf-list proc-cpu-stae { + type uint32; + max-elements "4"; + description + "last 4 samples of adt process cpu"; + } + leaf-list proc-mem-data { + type uint32; + max-elements "4"; + description + "last 4 samples of adt process memory data"; + } + leaf-list default-path-collection-missed-data { + type uint32; + max-elements "4"; + description + "last 4 samples of missed collection for default + paths"; + } + leaf-list user-path-collection-missed-data { + type uint32; + max-elements "4"; + description + "last 4 samples of missed collection for user + paths"; + } + } + + grouping MEMORY-STATISTICS { + description + "ADT memory statistics"; + leaf current-memory-total { + type uint32; + units "byte"; + description + "Current memory usage Total in bytes"; + } + leaf current-memory-py { + type uint32; + units "byte"; + description + "Current memory usage Py in bytes"; + } + leaf peak-memory-total { + type uint32; + units "byte"; + description + "Peak memory usage Total in bytes"; + } + leaf peak-memory-py { + type uint32; + units "byte"; + description + "Peak memory usage Py in bytes"; + } + } + + grouping OUTPUT-STATISTICS { + description + "ADT output statistics"; + leaf total-output-messages { + type uint32; + description + "Total output messages from selector"; + } + leaf total-notify { + type uint32; + description + "Total ADT notifies"; + } + leaf total-hints { + type uint32; + description + "Total Hints"; + } + leaf total-pending-selector-messages { + type uint32; + description + "Total pending selector messages not pushed to + MDT"; + } + leaf total-mdt-reads { + type uint32; + description + "Total MDT reads"; + } + leaf total-edt-events { + type uint32; + description + "Total EDT events"; + } + } + + grouping INPUT-STATISTICS { + description + "ADT input statistics"; + leaf total-input-messages { + type uint32; + description + "Total input messages received by pal"; + } + leaf total-output-messages { + type uint32; + description + "Total output messages send to collector"; + } + leaf total-collection-errors { + type uint32; + description + "Total Collection errors"; + } + leaf total-decode-errors { + type uint32; + description + "Total decode errors"; + } + leaf total-bytes-received { + type uint64; + units "byte"; + description + "Total bytes received from MDT sensor"; + } + leaf total-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes sent to collector "; + } + } + + grouping ADT-STATISTICS { + description + "ADT statistics"; + container input-stats { + description + "Input statistics"; + uses INPUT-STATISTICS; + } + container output-stats { + description + "Output statistics"; + uses OUTPUT-STATISTICS; + } + container memory-stats { + description + "Memory statistics"; + uses MEMORY-STATISTICS; + } + container tuner-stats { + description + "Tuner statistics"; + uses TUNER-STATISTICS; + } + container detector-stats { + description + "Detector statistics"; + uses DETECTOR-STATISTICS; + } + leaf last-telemetry-message-timestamp { + type uint64; + description + "Timestamp of last telemetry message received"; + } + leaf last-selector-output-timestamp { + type uint64; + description + "Timestanmp of last selector output"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub2.yang new file mode 100644 index 000000000..bf8584c76 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper-sub2.yang @@ -0,0 +1,368 @@ +submodule Cisco-IOS-XR-adt-oper-sub2 { + belongs-to Cisco-IOS-XR-adt-oper { + prefix Cisco-IOS-XR-adt-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR adt package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-05 { + description + "IOS XR 7.3.1 Initial version."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ip-version { + type enumeration { + enum "unknown" { + description + "unknown"; + } + enum "ipv4" { + description + "ipv4"; + } + enum "ipv6" { + description + "ipv6"; + } + } + description + "Ip version"; + } + + grouping VAL-PREFIX { + description + "VAL PREFIX"; + container ipv4-prefix { + when "../prefix-type = '1'" { + description + "../prefix_type = '1'"; + } + description + "ipv4 prefix"; + uses VAL-STRING; + } + container ipv6-prefix { + when "../prefix-type = '2'" { + description + "../prefix_type = '2'"; + } + description + "ipv6 prefix"; + uses VAL-STRING; + } + leaf prefix-type { + type int32; + description + "prefix type"; + } + } + + grouping VAL-STRING { + description + "VAL STRING"; + leaf val-str { + type string; + description + "val str"; + } + } + + grouping COUNTER-VAL-TYPE { + description + "COUNTER VAL TYPE"; + container stringdata { + when "../value-type = '5'" { + description + "../value_type = '5'"; + } + description + "stringdata"; + uses VAL-STRING; + } + container ip-prefix { + when "../value-type = '19'" { + description + "../value_type = '19'"; + } + description + "ip prefix"; + uses VAL-PREFIX; + } + leaf value-type { + type int32; + description + "value type"; + } + leaf not-set { + when "../value-type = '0'" { + description + "../value_type = '0'"; + } + type uint32; + description + "not set"; + } + leaf val-u32 { + when "../value-type = '1'" { + description + "../value_type = '1'"; + } + type uint32; + description + "val u32"; + } + leaf val-i32 { + when "../value-type = '2'" { + description + "../value_type = '2'"; + } + type int32; + description + "val i32"; + } + leaf val-u64 { + when "../value-type = '3'" { + description + "../value_type = '3'"; + } + type uint64; + description + "val u64"; + } + leaf val-i64 { + when "../value-type = '4'" { + description + "../value_type = '4'"; + } + type int64; + description + "val i64"; + } + leaf val-counter32 { + when "../value-type = '6'" { + description + "../value_type = '6'"; + } + type uint32; + description + "val counter32"; + } + leaf val-zero-based-counter32 { + when "../value-type = '7'" { + description + "../value_type = '7'"; + } + type uint32; + description + "val zero based counter32"; + } + leaf val-counter64 { + when "../value-type = '8'" { + description + "../value_type = '8'"; + } + type uint64; + description + "val counter64"; + } + leaf val-zero-based-counter64 { + when "../value-type = '9'" { + description + "../value_type = '9'"; + } + type uint64; + description + "val zero based counter64"; + } + leaf val-guage32 { + when "../value-type = '10'" { + description + "../value_type = '10'"; + } + type uint32; + description + "val guage32"; + } + leaf val-gauge64 { + when "../value-type = '11'" { + description + "../value_type = '11'"; + } + type uint64; + description + "val gauge64"; + } + leaf val-timeticks { + when "../value-type = '12'" { + description + "../value_type = '12'"; + } + type uint64; + description + "val timeticks"; + } + leaf val-timestamp { + when "../value-type = '13'" { + description + "../value_type = '13'"; + } + type uint64; + description + "val timestamp"; + } + leaf val-ip-version { + when "../value-type = '14'" { + description + "../value_type = '14'"; + } + type Ip-version; + description + "val ip version"; + } + leaf val-dscp { + when "../value-type = '15'" { + description + "../value_type = '15'"; + } + type uint32; + description + "val dscp"; + } + leaf val-ipv6-flow-label { + when "../value-type = '16'" { + description + "../value_type = '16'"; + } + type uint32; + description + "val ipv6 flow label"; + } + leaf val-port-number { + when "../value-type = '17'" { + description + "../value_type = '17'"; + } + type uint32; + description + "val port number"; + } + leaf val-as-number { + when "../value-type = '18'" { + description + "../value_type = '18'"; + } + type uint32; + description + "val as number"; + } + } + + grouping DATA-DEF { + description + "DATA DEF"; + container value { + description + "value"; + uses COUNTER-VAL-TYPE; + } + leaf timestamp { + type uint64; + description + "timestamp"; + } + } + + grouping CHANGE-LIST-DEF { + description + "CHANGE LIST DEF"; + leaf sensor-path { + type string; + description + "sensor path"; + } + leaf sensor-path-tags { + type string; + description + "sensor path tags"; + } + leaf sensor-path-message { + type string; + description + "sensor path message"; + } + list data { + description + "data"; + uses DATA-DEF; + } + } + + grouping ADT-EVENT-DEF { + description + "ADT EVENT DEF"; + leaf event-id { + type uint32; + description + "Event id used as key"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf change-description { + type string; + description + "change description"; + } + leaf timestamp { + type uint64; + description + "timestamp"; + } + list change { + description + "change"; + uses CHANGE-LIST-DEF; + } + } + + grouping ADT-EVENTS { + description + "ADT EVENTS"; + list adt-event { + description + "adt event"; + uses ADT-EVENT-DEF; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper.yang new file mode 100644 index 000000000..8802505eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-adt-oper.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-adt-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-adt-oper"; + prefix adt-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-adt-oper-sub2 { + revision-date 2020-05-05; + } + include Cisco-IOS-XR-adt-oper-sub1 { + revision-date 2020-05-05; + } + + 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 adt package operational data. + + This module contains definitions + for the following management objects: + adt: ADT operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-05 { + description + "IOS XR 7.3.1 Initial version."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container adt { + config false; + description + "ADT operational data"; + container statistics { + description + "ADT statistics"; + uses ADT-STATISTICS; + } + container adt-output { + description + "Data associated with the event triggered from + adt"; + uses ADT-EVENTS; + } + container subscription-info { + description + "ADT subscription details"; + uses ADT-SUBSCRIPTION-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-deviations.yang new file mode 100644 index 000000000..1f518e364 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-deviations.yang @@ -0,0 +1,40 @@ +module Cisco-IOS-XR-alarmgr-server-oper-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-alarmgr-server-oper-deviations"; + prefix alarmgr-server-oper-dev; + + import Cisco-IOS-XR-alarmgr-server-oper { + prefix am-server-oper; + } + + 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 set of deviations of container rack + for spirit platform on Ciso-IOS-XR device. + + Copyright (c) 2017, 2019-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-29 { + description + "Initial revision applicable to IOS-XR 6.0 and older releases"; + reference "RFC RFC 8407: 4.8"; + } + + deviation "/am-server-oper:alarms/am-server-oper:detail/am-server-oper:detail-rack" { + deviate not-supported; + } + deviation "/am-server-oper:alarms/am-server-oper:brief/am-server-oper:brief-rack" { + deviate not-supported; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-sub1.yang new file mode 100644 index 000000000..beb9a4bbb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper-sub1.yang @@ -0,0 +1,1379 @@ +submodule Cisco-IOS-XR-alarmgr-server-oper-sub1 { + belongs-to Cisco-IOS-XR-alarmgr-server-oper { + prefix Cisco-IOS-XR-alarmgr-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR alarmgr-server package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-11 { + description + "Removed enum last in Alarm-groups. + 2021-09-27 + Added new container called conditions for lindt based platforms."; + semver:module-version "4.1.0"; + } + revision 2021-09-15 { + description + "Removed enum last in Alarm-groups. + 2021-05-17 + Alarm support for CEM interface. Added enum cem to Alarm-groups. + 2021-05-11 + PTAH support for E1 controller."; + semver:module-version "4.0.0"; + } + revision 2021-05-06 { + description + "Adding new alarm groups to alarm_mgr_edm_spi.bag + 2020-12-02 + PTAH support for Fibre Channel controller. + 2020-09-02 + SNMP Trap support added for Alarm mib"; + semver:module-version "3.0.0"; + } + revision 2020-05-29 { + description + "Addressing Yang inconsistency across platforms + 2019-06-28 + PTAH support for CPRI controller in Felidae 5G platform."; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Alarm-client { + type enumeration { + enum "unknown" { + value 1; + description + "Client type unknown"; + } + enum "producer" { + value 2; + description + "Client type producer"; + } + enum "consumer" { + value 4; + description + "Client type consumer"; + } + enum "subscriber" { + value 8; + description + "Client type subscriber"; + } + enum "client-last" { + value 16; + description + "Client type last"; + } + } + description + "Alarm client"; + } + + typedef Alarm-client-state { + type enumeration { + enum "start" { + value 0; + description + "Starting state. Should be 0"; + } + enum "init" { + value 1; + description + "Client initalized"; + } + enum "connecting" { + value 2; + description + "Sent connect request"; + } + enum "connected" { + value 3; + description + "Initial connected"; + } + enum "registered" { + value 4; + description + "Has sent registration message"; + } + enum "disconnected" { + value 5; + description + "Has been disconnected due to request of error"; + } + enum "ready" { + value 6; + description + "The client is ready"; + } + } + description + "Alarm client state"; + } + + typedef Alarm-object-mib-index { + type enumeration { + enum "hwentity" { + value 0; + description + "Object MIB index type Hardware Entity"; + } + enum "interface-entity" { + value 1; + description + "Object MIB index type Interface Entity"; + } + enum "sw-entity" { + value 2; + description + "Object MIB index type Software Entity"; + } + } + description + "Alarm object mib index"; + } + + typedef Alarm-event { + type enumeration { + enum "default" { + value 0; + description + "Default Alarm Event Type"; + } + enum "notification" { + value 1; + description + "Alarm Notifcation Event Type"; + } + enum "condition" { + value 2; + description + "Alarm Type Condition"; + } + enum "last" { + value 3; + description + "Last Event Type"; + } + } + description + "Alarm event"; + } + + typedef Timing-bucket { + type enumeration { + enum "not-specified" { + value 0; + description + "Bucket Type not applicable"; + } + enum "fifteen-min" { + value 1; + description + "Fifteen minute time bucket"; + } + enum "one-day" { + value 2; + description + "One day time bucket"; + } + enum "thirty-sec" { + value 3; + description + "Thirty second time bucket"; + } + } + description + "Timing bucket"; + } + + typedef Alarm-notification-src { + type enumeration { + enum "not-specified" { + value 0; + description + "Notification src not specified"; + } + enum "near-end" { + value 1; + description + "Notification src near end"; + } + enum "far-end" { + value 2; + description + "Notification src far end"; + } + } + description + "Alarm notification src"; + } + + typedef Alarm-direction { + type enumeration { + enum "not-specified" { + value 0; + description + "Direction Not Specified"; + } + enum "send" { + value 1; + description + "Direction Send"; + } + enum "receive" { + value 2; + description + "Direction Receive"; + } + enum "send-receive" { + value 3; + description + "Direction Send and Receive"; + } + } + description + "Alarm direction"; + } + + typedef Alarm-service-affecting { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown whether alarm severity is service + affecting"; + } + enum "not-service-affecting" { + value 1; + description + "Alarm severity is not service affecting"; + } + enum "service-affecting" { + value 2; + description + "Alarm severity is service affecting"; + } + } + description + "Alarm service affecting"; + } + + typedef Alarm-groups { + type enumeration { + enum "unknown" { + value 0; + description + "An unknown alarm group"; + } + enum "environ" { + value 1; + description + "Environomental alarm group"; + } + enum "ethernet" { + value 2; + description + "Ethernet alarm group"; + } + enum "fabric" { + value 3; + description + "Fabric related alarm group"; + } + enum "power" { + value 4; + description + "Power and PEM group of alarms"; + } + enum "software" { + value 5; + description + "Software group of alarms"; + } + enum "slice" { + value 6; + description + "Slice group of alarms"; + } + enum "cpu" { + value 7; + description + "CPU group of alarms"; + } + enum "controller" { + value 8; + description + "Controller group of alarms"; + } + enum "sonet" { + value 9; + description + "Sonet group of alarms"; + } + enum "otn" { + value 10; + description + "OTN group of alarms"; + } + enum "sdh-controller" { + value 11; + description + "SDH group of alarms"; + } + enum "asic" { + value 12; + description + "ASIC group of alarms"; + } + enum "fpd-infra" { + value 13; + description + "FPD group of alarms"; + } + enum "shelf" { + value 14; + description + "Shelf group of alarms"; + } + enum "mpa" { + value 15; + description + "MPA group of alarms"; + } + enum "ots" { + value 16; + description + "OTS group of alarms"; + } + enum "timing" { + value 17; + description + "Timing group of alarms"; + } + enum "cpri" { + value 18; + description + "CPRI group of alarms"; + } + enum "fibre-channel" { + value 19; + description + "Fibre channel group of alarms"; + } + enum "e1" { + value 20; + description + "E1 group of alarms"; + } + enum "cem" { + value 21; + description + "CEM group of alarms"; + } + } + description + "Alarm groups"; + } + + typedef Alarm-status { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown alarm status level"; + } + enum "set" { + value 1; + description + "Status of active alarm that is SET by the + controller"; + } + enum "clear" { + value 2; + description + "Status of cleared alarm that is done by the + controller"; + } + enum "suppress" { + value 3; + description + "Status of suppressed alarm that is done by the + controller"; + } + enum "last" { + value 4; + description + "Last status level"; + } + } + description + "Alarm status"; + } + + typedef Alarm-severity { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown severity level"; + } + enum "not-reported" { + value 1; + description + "Severity level not reported will not raise an + alarm"; + } + enum "not-alarmed" { + value 2; + description + "Severity level of info to cater to events such + as Performance TCAS"; + } + enum "minor" { + value 3; + description + "Severity level of minor fault not traffic + affecting"; + } + enum "major" { + value 4; + description + "Severity level of major fault leading to + service disruption"; + } + enum "critical" { + value 5; + description + "Severity level of critical leading to drops + ,route loss, loss of service etc."; + } + enum "severity-last" { + value 6; + description + "Last severity level"; + } + } + description + "Alarm severity"; + } + + grouping ALARM-MGR-SHOW-ALARM-BRIEF-SUPPR-DATA { + description + "Alarm mgr show alarm brief suppressed data"; + leaf location { + type string { + length "0..128"; + } + description + "Alarm location"; + } + leaf severity { + type Alarm-severity; + description + "Alarm severity"; + } + leaf group { + type Alarm-groups; + description + "Alarm group"; + } + leaf set-time { + type string { + length "0..64"; + } + description + "Alarm set time"; + } + leaf set-timestamp { + type uint64; + description + "Alarm set time(timestamp format)"; + } + leaf suppressed-time { + type string { + length "0..64"; + } + description + "Alarm suppressed time"; + } + leaf suppressed-timestamp { + type uint64; + description + "Alarm suppressed time(timestamp format)"; + } + leaf description { + type string { + length "0..256"; + } + description + "Alarm description"; + } + } + + grouping ALARM-MGR-SHOW-ALARM-BRIEF-SUPPR-INFO { + description + "Alarm mgr show alarm brief suppressed info"; + list suppressed-info { + description + "Suppressed Alarm List"; + uses ALARM-MGR-SHOW-ALARM-BRIEF-SUPPR-DATA; + } + } + + grouping ALARM-MGR-SHOW-ALARM-BRIEF-DATA { + description + "Alarm mgr show alarm brief data"; + leaf location { + type string { + length "0..128"; + } + description + "Alarm location"; + } + leaf severity { + type Alarm-severity; + description + "Alarm severity"; + } + leaf group { + type Alarm-groups; + description + "Alarm group"; + } + leaf set-time { + type string { + length "0..64"; + } + description + "Alarm set time"; + } + leaf set-timestamp { + type uint64; + description + "Alarm set time(timestamp format)"; + } + leaf clear-time { + type string { + length "0..64"; + } + description + "Alarm clear time"; + } + leaf clear-timestamp { + type uint64; + description + "Alarm clear time(timestamp format)"; + } + leaf description { + type string { + length "0..256"; + } + description + "Alarm description"; + } + } + + grouping ALARM-MGR-SHOW-ALARM-BRIEF-INFO { + description + "Alarm mgr show alarm brief info"; + list alarm-info { + description + "Alarm List"; + uses ALARM-MGR-SHOW-ALARM-BRIEF-DATA; + } + } + + grouping SYSTEM-ALARM { + description + "Alarm mgr show alarm brief data"; + leaf location { + type string { + length "0..128"; + } + description + "Alarm location"; + } + leaf severity { + type Alarm-severity; + description + "Alarm severity"; + } + leaf group { + type Alarm-groups; + description + "Alarm group"; + } + leaf set-time { + type string { + length "0..64"; + } + description + "Alarm set time"; + } + leaf set-timestamp { + type uint64; + description + "Alarm set time(timestamp format)"; + } + leaf clear-time { + type string { + length "0..64"; + } + description + "Alarm clear time"; + } + leaf clear-timestamp { + type uint64; + description + "Alarm clear time(timestamp format)"; + } + leaf description { + type string { + length "0..256"; + } + description + "Alarm description"; + } + } + + grouping ALARM-MGR-SHOW-ALARM-AID-BRIEF-INFO { + description + "Alarm mgr show alarm brief info"; + container alarm { + description + "Alarm Brief"; + uses SYSTEM-ALARM; + } + } + + grouping ALARM-DETAIL-TCA { + description + "Alarm Detail TCA Attributes"; + container tca-value { + description + "TCA Attributes"; + uses ALARM-TCA; + } + leaf tca-data { + type string { + length "0..5"; + } + description + "TCA Data"; + } + } + + grouping SYSTEM-ALARM-DETAIL { + description + "Alarm mgr show alarm detail info"; + container otn { + description + "OTN feature specific alarm attributes"; + uses ALARM-OTN; + } + container tca { + description + "TCA feature specific alarm attributes"; + uses ALARM-DETAIL-TCA; + } + leaf alarm-id { + type string { + length "0..256"; + } + description + "Alarm ID"; + } + leaf description { + type string { + length "0..256"; + } + description + "Alarm description"; + } + leaf location { + type string { + length "0..128"; + } + description + "Alarm location"; + } + leaf aid { + type string { + length "0..128"; + } + description + "Alarm aid"; + } + leaf tag { + type string { + length "0..128"; + } + description + "Alarm tag description"; + } + leaf module { + type string { + length "0..128"; + } + description + "Alarm module description"; + } + leaf eid { + type string { + length "0..128"; + } + description + "Alarm eid"; + } + leaf pending-sync { + type boolean; + description + "Pending async flag"; + } + leaf severity { + type Alarm-severity; + description + "Alarm severity"; + } + leaf status { + type Alarm-status; + description + "Alarm status"; + } + leaf group { + type Alarm-groups; + description + "Alarm group"; + } + leaf set-time { + type string { + length "0..64"; + } + description + "Alarm set time"; + } + leaf set-timestamp { + type uint64; + description + "Alarm set time(timestamp format)"; + } + leaf clear-time { + type string { + length "0..64"; + } + description + "Alarm clear time"; + } + leaf clear-timestamp { + type uint64; + description + "Alarm clear time(timestamp format)"; + } + leaf service-affecting { + type Alarm-service-affecting; + description + "Alarm service affecting"; + } + leaf interface { + type string { + length "0..128"; + } + description + "Alarm interface name"; + } + leaf alarm-name { + type string { + length "0..128"; + } + description + "Alarm name"; + } + leaf event-type { + type string { + length "0..128"; + } + description + "Alarm Type"; + } + } + + grouping ALARM-MGR-SHOW-ALARM-AID-DETAIL-INFO { + description + "Alarm mgr show alarm Detail info"; + container alarm { + description + "Alarm Detail"; + uses SYSTEM-ALARM-DETAIL; + } + } + + grouping ALARM-MGR-SHOW-ALARM-SUPPR-DATA { + description + "Alarm mgr show alarm suppressed data"; + container otn { + description + "OTN feature specific alarm attributes"; + uses ALARM-OTN; + } + leaf description { + type string { + length "0..256"; + } + description + "Alarm description"; + } + leaf location { + type string { + length "0..128"; + } + description + "Alarm location"; + } + leaf aid { + type string { + length "0..128"; + } + description + "Alarm aid"; + } + leaf tag { + type string { + length "0..128"; + } + description + "Alarm tag description"; + } + leaf module { + type string { + length "0..128"; + } + description + "Alarm module description"; + } + leaf eid { + type string { + length "0..128"; + } + description + "Alarm eid"; + } + leaf reporting-agent-id { + type uint32; + description + "Reporting agent id"; + } + leaf pending-sync { + type boolean; + description + "Pending async flag"; + } + leaf severity { + type Alarm-severity; + description + "Alarm severity"; + } + leaf status { + type Alarm-status; + description + "Alarm status"; + } + leaf group { + type Alarm-groups; + description + "Alarm group"; + } + leaf set-time { + type string { + length "0..64"; + } + description + "Alarm set time"; + } + leaf set-timestamp { + type uint64; + description + "Alarm set time(timestamp format)"; + } + leaf suppressed-time { + type string { + length "0..64"; + } + description + "Alarm suppressed time"; + } + leaf suppressed-timestamp { + type uint64; + description + "Alarm suppressed time(timestamp format)"; + } + leaf service-affecting { + type Alarm-service-affecting; + description + "Alarm service affecting "; + } + leaf interface { + type string { + length "0..128"; + } + description + "Alarm interface name"; + } + leaf alarm-name { + type string { + length "0..128"; + } + description + "Alarm name"; + } + leaf object-mib-index-type { + type Alarm-object-mib-index; + description + "Alarm Object MIB Index Type"; + } + leaf alarm-type { + type uint32; + description + "Alarm Type"; + } + leaf object-mib-index { + type uint32; + description + "Alarm Object MIB Index Type"; + } + leaf trap-flag { + type uint32; + description + "Trap Flag"; + } + } + + grouping ALARM-MGR-SHOW-ALARM-INFO-SUPPR-CLI { + description + "alarm mgr show alarm suppressed info for CLI"; + list suppressed-info { + description + "Suppressed Alarm List"; + uses ALARM-MGR-SHOW-ALARM-SUPPR-DATA; + } + } + + grouping ALARM-MGR-SHOW-CLIENT-DATA { + description + "Alarm mgr show client data"; + leaf name { + type string { + length "0..128"; + } + description + "Alarm client"; + } + leaf id { + type uint32; + description + "Alarms agent id of the client"; + } + leaf location { + type string { + length "0..128"; + } + description + "The location of this client"; + } + leaf handle { + type string { + length "0..128"; + } + description + "The client handle through which interface"; + } + leaf state { + type Alarm-client-state; + description + "The current state of the client"; + } + leaf type { + type Alarm-client; + description + "The type of the client"; + } + leaf filter-disp { + type boolean; + description + "The current subscription status of the client"; + } + leaf subscriber-id { + type uint32; + description + "Alarms agent subscriber id of the client"; + } + leaf filter-severity { + type Alarm-severity; + description + "The filter used for alarm severity"; + } + leaf filter-state { + type Alarm-status; + description + "The filter used for alarm bi-state state+"; + } + leaf filter-group { + type Alarm-groups; + description + "The filter used for alarm group"; + } + leaf connect-count { + type uint32; + description + "Number of times the agent connected to the alarm + mgr"; + } + leaf connect-timestamp { + type string { + length "0..64"; + } + description + "Agent connect timestamp"; + } + leaf get-count { + type uint32; + description + "Number of times the agent queried for alarms"; + } + leaf subscribe-count { + type uint32; + description + "Number of times the agent subscribed for alarms"; + } + leaf report-count { + type uint32; + description + "Number of times the agent reported alarms"; + } + } + + grouping ALARM-MGR-SHOW-CLIENT-INFO { + description + "Alarm mgr show alarm info"; + list client-info { + description + "Client List"; + uses ALARM-MGR-SHOW-CLIENT-DATA; + } + } + + grouping ALARM-MGR-SHOW-ALARM-STATS { + description + "alarm mgr show alarm stats"; + leaf reported { + type uint64; + description + "Alarms that were in all reported to this Alarm + Mgr"; + } + leaf dropped { + type uint64; + description + "Alarms that we couldn't keep track due to some + error or other"; + } + leaf active { + type uint64; + description + "Alarms that are currently in the active state"; + } + leaf history { + type uint64; + description + "Alarms that are cleared. This one is counted + over a long period of time"; + } + leaf suppressed { + type uint64; + description + "Alarms that are in suppressed state"; + } + leaf sysadmin-active { + type uint64; + description + "Alarms that are currently in the active + state(sysadmin plane)"; + } + leaf sysadmin-history { + type uint64; + description + "Alarms that are cleared in sysadmin plane. This + one is counted over a long period of time"; + } + leaf sysadmin-suppressed { + type uint64; + description + "Alarms that are suppressed in sysadmin plane."; + } + leaf dropped-invalid-aid { + type uint32; + description + "Alarms dropped due to invalid aid"; + } + leaf dropped-insuff-mem { + type uint32; + description + "Alarms dropped due to insufficient memory"; + } + leaf dropped-db-error { + type uint32; + description + "Alarms dropped due to db error"; + } + leaf dropped-clear-without-set { + type uint32; + description + "Alarms dropped clear without set"; + } + leaf dropped-duplicate { + type uint32; + description + "Alarms dropped which were duplicate"; + } + leaf cache-hit { + type uint32; + description + "Total alarms which had the cache hit"; + } + leaf cache-miss { + type uint32; + description + "Total alarms which had the cache miss"; + } + } + + grouping ALARM-TCA { + description + "Alarm TCA Attributes"; + leaf threshold-value { + type string { + length "0..20"; + } + description + "Alarm Threshold "; + } + leaf current-value { + type string { + length "0..20"; + } + description + "Alarm Threshold"; + } + leaf bucket-type { + type Timing-bucket; + description + "Timing Bucket"; + } + } + + grouping ALARM-OTN { + description + "Alarm transport attributes"; + leaf direction { + type Alarm-direction; + description + "Alarm direction "; + } + leaf notification-source { + type Alarm-notification-src; + description + "Source of Alarm"; + } + } + + grouping ALARM-MGR-SHOW-ALARM-DATA { + description + "Alarm mgr show alarm data"; + container otn { + description + "OTN feature specific alarm attributes"; + uses ALARM-OTN; + } + container tca { + description + "TCA feature specific alarm attributes"; + uses ALARM-TCA; + } + leaf description { + type string { + length "0..256"; + } + description + "Alarm description"; + } + leaf location { + type string { + length "0..128"; + } + description + "Alarm location"; + } + leaf aid { + type string { + length "0..128"; + } + description + "Alarm aid"; + } + leaf tag { + type string { + length "0..128"; + } + description + "Alarm tag description"; + } + leaf module { + type string { + length "0..128"; + } + description + "Alarm module description"; + } + leaf eid { + type string { + length "0..128"; + } + description + "Alarm eid"; + } + leaf reporting-agent-id { + type uint32; + description + "Reporting agent id"; + } + leaf pending-sync { + type boolean; + description + "Pending async flag"; + } + leaf severity { + type Alarm-severity; + description + "Alarm severity"; + } + leaf status { + type Alarm-status; + description + "Alarm status"; + } + leaf group { + type Alarm-groups; + description + "Alarm group"; + } + leaf set-time { + type string { + length "0..64"; + } + description + "Alarm set time"; + } + leaf set-timestamp { + type uint64; + description + "Alarm set time(timestamp format)"; + } + leaf clear-time { + type string { + length "0..64"; + } + description + "Alarm clear time"; + } + leaf clear-timestamp { + type uint64; + description + "Alarm clear time(timestamp format)"; + } + leaf service-affecting { + type Alarm-service-affecting; + description + "Alarm service affecting"; + } + leaf type { + type Alarm-event; + description + "alarm event type"; + } + leaf interface { + type string { + length "0..128"; + } + description + "Alarm interface name"; + } + leaf alarm-name { + type string { + length "0..128"; + } + description + "Alarm name"; + } + leaf object-mib-index-type { + type Alarm-object-mib-index; + description + "Alarm Object MIB Index Type"; + } + leaf alarm-type { + type uint32; + description + "Alarm Type"; + } + leaf object-mib-index { + type uint32; + description + "Alarm Object MIB Index Type"; + } + leaf trap-flag { + type uint32; + description + "Trap Flag"; + } + } + + grouping ALARM-MGR-SHOW-ALARM-INFO-CLI { + description + "alarm mgr show alarm info for CLI"; + list alarm-info { + description + "Alarm List"; + uses ALARM-MGR-SHOW-ALARM-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper.yang new file mode 100644 index 000000000..443ee3b76 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-alarmgr-server-oper.yang @@ -0,0 +1,363 @@ +module Cisco-IOS-XR-alarmgr-server-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-alarmgr-server-oper"; + prefix alarmgr-server-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-alarmgr-server-oper-sub1 { + revision-date 2021-10-11; + } + + 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 alarmgr-server package operational data. + + This module contains definitions + for the following management objects: + alarms: Show Alarms associated with XR + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-11 { + description + "Removed enum last in Alarm-groups. + 2021-09-27 + Added new container called conditions for lindt based platforms."; + semver:module-version "4.1.0"; + } + revision 2021-09-15 { + description + "Removed enum last in Alarm-groups. + 2021-05-17 + Alarm support for CEM interface. Added enum cem to Alarm-groups. + 2021-05-11 + PTAH support for E1 controller."; + semver:module-version "4.0.0"; + } + revision 2021-05-06 { + description + "Adding new alarm groups to alarm_mgr_edm_spi.bag + 2020-12-02 + PTAH support for Fibre Channel controller. + 2020-09-02 + SNMP Trap support added for Alarm mib"; + semver:module-version "3.0.0"; + } + revision 2020-05-29 { + description + "Addressing Yang inconsistency across platforms + 2019-06-28 + PTAH support for CPRI controller in Felidae 5G platform."; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container alarms { + config false; + description + "Show Alarms associated with XR"; + container detail { + description + "A set of detail alarm commands."; + container detail-system { + description + "show detail system scope alarm related data."; + container history { + description + "Show the history alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + container conditions { + description + "Show the Conditions present at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + container stats { + description + "Show the service statistics."; + uses ALARM-MGR-SHOW-ALARM-STATS; + } + container clients { + description + "Show the clients associated with this service."; + uses ALARM-MGR-SHOW-CLIENT-INFO; + } + container suppressed { + description + "Show the suppressed alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-SUPPR-CLI; + } + container active { + description + "Show the active alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + } + container alarm-detail { + description + "show detail system scope alarm related data."; + container active-details { + description + "Table of ActiveDetail"; + list active-detail { + key "aid"; + description + "Show the active alarms at this scope."; + leaf aid { + type string; + description + "Alarm ID"; + } + uses ALARM-MGR-SHOW-ALARM-AID-DETAIL-INFO; + } + } + } + container detail-card { + description + "Show detail card scope alarm related data."; + container detail-locations { + description + "Table of DetailLocation"; + list detail-location { + key "node-id"; + description + "Specify a card location for alarms."; + container history { + description + "Show the history alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + container conditions { + description + "Show the conditions present at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + container stats { + description + "Show the service statistics."; + uses ALARM-MGR-SHOW-ALARM-STATS; + } + container clients { + description + "Show the clients associated with this + service."; + uses ALARM-MGR-SHOW-CLIENT-INFO; + } + container suppressed { + description + "Show the suppressed alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-SUPPR-CLI; + } + container active { + description + "Show the active alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + container detail-rack { + description + "Show detail rack scope alarm related data."; + container detail-numbers { + description + "Table of DetailNumber"; + list detail-number { + key "rack-num"; + description + "Specify a rack number for alarms."; + container history { + description + "Show the history alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + container conditions { + description + "Show the Conditions present at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + container stats { + description + "Show the service statistics."; + uses ALARM-MGR-SHOW-ALARM-STATS; + } + container clients { + description + "Show the clients associated with this + service."; + uses ALARM-MGR-SHOW-CLIENT-INFO; + } + container suppressed { + description + "Show the suppressed alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-SUPPR-CLI; + } + container active { + description + "Show the active alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-INFO-CLI; + } + leaf rack-num { + type xr:Cisco-ios-xr-string; + description + "Rack Number"; + } + } + } + } + } + container brief { + description + "A set of brief alarm commands."; + container alarm-id { + description + "Show brief system scope alarm related data."; + container active-alarms { + description + "Table of ActiveAlarm"; + list active-alarm { + key "aid"; + description + "Show the active alarms at this scope."; + leaf aid { + type string; + description + "Alarm ID"; + } + uses ALARM-MGR-SHOW-ALARM-AID-BRIEF-INFO; + } + } + } + container brief-rack { + description + "Show brief rack scope alarm related data."; + container brief-numbers { + description + "Table of BriefNumber"; + list brief-number { + key "rack-num"; + description + "Specify a rack number for alarms."; + container history { + description + "Show the history alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + container conditions { + description + "Show the conditions present at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + container suppressed { + description + "Show the suppressed alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-SUPPR-INFO; + } + container active { + description + "Show the active alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + leaf rack-num { + type xr:Cisco-ios-xr-string; + description + "Rack Number"; + } + } + } + } + container brief-system { + description + "Show brief system scope alarm related data."; + container history { + description + "Show the history alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + container conditions { + description + "Show the conditions present at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + container suppressed { + description + "Show the suppressed alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-SUPPR-INFO; + } + container active { + description + "Show the active alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + } + container brief-card { + description + "Show brief card scope alarm related data."; + container brief-locations { + description + "Table of BriefLocation"; + list brief-location { + key "node-id"; + description + "Specify a card location for alarms."; + container history { + description + "Show the history alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + container conditions { + description + "Show the conditions present at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + container suppressed { + description + "Show the suppressed alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-SUPPR-INFO; + } + container active { + description + "Show the active alarms at this scope."; + uses ALARM-MGR-SHOW-ALARM-BRIEF-INFO; + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-act.yang new file mode 100644 index 000000000..d0b940e18 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-act.yang @@ -0,0 +1,244 @@ +module Cisco-IOS-XR-appmgr-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-appmgr-act"; + prefix appmgr-act; + + 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 action package configuration. + + Copyright (c) 2020-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-09 { + description + "Adding patterns and length for strings"; + semver:module-version "2.0.0"; + } + revision 2021-08-15 { + description + "Support for process script actions added."; + semver:module-version "1.1.0"; + } + revision 2021-03-01 { + description + "Adding support for uninstall by source."; + semver:module-version "1.0.0"; + } + revision 2021-02-15 { + description + "Support for process script actions added."; + } + revision 2020-07-14 { + description + "Establish semantic version baseline."; + } + + rpc appmgr-app-start { + description + "Start an application"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "App name"; + } + } + } + rpc appmgr-app-stop { + description + "Stop an application"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "App name"; + } + } + } + rpc appmgr-app-kill { + description + "Kill an application"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "App name"; + } + } + } + rpc appmgr-app-copy { + description + "Copy files/folders between an application and an XR filesystem"; + input { + leaf source { + type string; + mandatory true; + description + "SOURCE-FILESYSTEM:PATH or SOURCE-APPLICATION:PATH (eg. harddisk:foo/bar or myapp:foo/bar)"; + } + leaf destination { + type string; + mandatory true; + description + "DESTINATION-FILESYSTEM:PATH or DESTINATION-APPLICATION:PATH (eg. harddisk:foo/bar or myapp:foo/bar)"; + } + } + } + rpc appmgr-package-install { + description + "Install an rpm."; + input { + leaf rpm { + type string; + mandatory true; + description + "Path to package rpm"; + } + } + } + rpc appmgr-package-uninstall { + description + "Uninstall a package."; + input { + leaf package { + type string; + mandatory true; + description + "Package name"; + } + } + } + rpc appmgr-package-uninstall-source { + description + "Uninstall a package by source name."; + input { + leaf source { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "Source name"; + } + } + } + rpc appmgr-process-script-activate { + description + "Activate a process-script"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "Process script name"; + } + } + } + rpc appmgr-process-script-deactivate { + description + "Deactivate a process-script"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "Process script name"; + } + } + } + rpc appmgr-process-script-start { + description + "Start a process-script"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "Process script name"; + } + } + } + rpc appmgr-process-script-stop { + description + "Stop a process-script"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "Process script name"; + } + } + } + rpc appmgr-process-script-kill { + description + "Kill a process-script"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "Process script name"; + } + } + } + rpc appmgr-process-script-restart { + description + "Restart a process-script"; + input { + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + mandatory true; + description + "Process script name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-cfg.yang new file mode 100644 index 000000000..31871e4b1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-cfg.yang @@ -0,0 +1,227 @@ +module Cisco-IOS-XR-appmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-appmgr-cfg"; + prefix appmgr-cfg; + + 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 appmgr package configuration. + + This module contains definitions + for the following management objects: + appmgr: Appmgr configuration data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-01 { + description + "Adding username configuration for process scripts + 2021-09-09 + Adding expected patterns and max length for strings"; + semver:module-version "2.0.0"; + } + revision 2021-04-04 { + description + "Support for secure vault tuple."; + semver:module-version "1.1.0"; + } + revision 2021-02-15 { + description + "Support for process scripts."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef App-restart-policy { + type enumeration { + enum "never" { + value 1; + description + "Do not automatically restart the app."; + } + enum "on-failure" { + value 2; + description + "Restart the app if it exits due to an error."; + } + enum "always" { + value 3; + description + "Always restart the app if it stops. (the + default)"; + } + enum "unless-stopped" { + value 4; + description + "Similar to always, except that when the app is + stopped (manually or otherwise), it is not + restarted."; + } + enum "unless-errored" { + value 5; + description + "Similar to always, except that when the app is + in error state, it is not restarted."; + } + } + description + "App restart policy"; + } + + typedef App { + type enumeration { + enum "docker" { + value 1; + description + "Docker application"; + } + } + description + "App"; + } + + container appmgr { + description + "Appmgr configuration data"; + container process-scripts { + description + "Table of process scripts"; + list process-script { + key "name"; + description + "Process script configuration"; + container restart-policy { + description + "Application restart policy"; + leaf restart { + type App-restart-policy; + description + "Appliction restart policy"; + } + leaf max-retries { + when "../restart = 'on-failure'" { + description + "../Restart = on-failure"; + } + type uint32 { + range "1..10"; + } + description + "Maximum retries to attempt"; + } + } + leaf arguments { + type string { + length "1..1024"; + } + description + "Process script argument string"; + } + leaf username { + type string { + length "2..253"; + } + description + "Username to execute process script under"; + } + leaf executable { + type string { + length "1..255"; + pattern "[a-zA-Z0-9][a-zA-Z0-9_.-]+"; + } + description + "Process script executable name"; + } + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + description + "Application identifier"; + } + } + } + container applications { + description + "Table of applications"; + list application { + key "name"; + description + "Application configuration"; + container activate { + description + "Application activation"; + leaf type { + type App; + description + "Appliction type - type of application to be + deployed"; + } + leaf source { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_:.-]+$"; + } + description + "Appliction source - name of source"; + } + leaf command { + type string { + length "1..1024"; + } + description + "Command to be run inside the container - + Docker Only "; + } + leaf run-options { + type string { + length "1..1024"; + } + description + "Docker run options as a string - Docker Only"; + } + leaf svault-options { + type string { + length "1..255"; + pattern "^[a-zA-Z_][a-zA-Z_0-9:.-]*"; + } + description + "Secure Vault Profile as a string - Docker + Only"; + } + } + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + description + "Application identifier"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper-sub1.yang new file mode 100644 index 000000000..b9e2acc0f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper-sub1.yang @@ -0,0 +1,589 @@ +submodule Cisco-IOS-XR-appmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-appmgr-oper { + prefix Cisco-IOS-XR-appmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR appmgr package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-09 { + description + "Adding expected patterns and max length for strings"; + semver:module-version "3.0.0"; + } + revision 2021-05-15 { + description + "Unused application types removed"; + semver:module-version "2.0.0"; + } + revision 2021-03-01 { + description + "Adding information about installed packages"; + semver:module-version "1.0.0"; + } + revision 2021-02-15 { + description + "Support for process scripts."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Appmgr-app-state { + type enumeration { + enum "deactivated" { + value 1; + description + "Deactivated"; + } + enum "activated" { + value 2; + description + "Activated"; + } + enum "error" { + value 4; + description + "Error"; + } + } + description + "Appmgr application state"; + } + + typedef Appmgr-app { + type enumeration { + enum "docker" { + value 1; + description + "Docker"; + } + } + description + "Appmgr application type"; + } + + typedef Appmgr-daemon-state { + type enumeration { + enum "not-started" { + value 1; + description + "Not Started"; + } + enum "start-requested" { + value 2; + description + "Start Requested"; + } + enum "started" { + value 3; + description + "Started"; + } + enum "stop-requested" { + value 4; + description + "Stop Requested"; + } + enum "stopped" { + value 5; + description + "Stopped"; + } + enum "kill-requested" { + value 6; + description + "Kill Requested"; + } + enum "killed" { + value 7; + description + "Killed"; + } + enum "exit-success" { + value 8; + description + "Exit Success"; + } + enum "exit-failure" { + value 9; + description + "Exit Failure"; + } + } + description + "Appmgr process script state"; + } + + typedef String1 { + type string; + description + "String1"; + } + + typedef Appmgr-restart-policy { + type enumeration { + enum "never" { + value 1; + description + "Never"; + } + enum "on-failure" { + value 2; + description + "On Failure"; + } + enum "always" { + value 3; + description + "Always"; + } + enum "unless-stopped" { + value 4; + description + "Unless Stopped"; + } + enum "unless-errored" { + value 5; + description + "Unless Errored"; + } + } + description + "Appmgr restart policy"; + } + + typedef Package { + type string; + description + "Package"; + } + + grouping VRF-RELAY-INFO { + description + "VRF Forwarding Relay information."; + leaf name { + type string; + description + "Container Name"; + } + leaf status { + type string; + description + "Vrf Forwarding Relay status."; + } + leaf error-info { + type string; + description + "Vrf Forwarding Relay error information."; + } + leaf src-vrf { + type string; + description + "Source VRF."; + } + leaf src-port { + type string; + description + "Source Port."; + } + leaf dest-vrf { + type string; + description + "Destination VRF."; + } + leaf dest-port { + type string; + description + "Destination Port."; + } + leaf ip-range { + type string; + description + "IP address range"; + } + } + + grouping DOCKER-INFO { + description + "Docker container info"; + leaf id { + type string; + description + "Container ID"; + } + leaf image { + type string; + description + "Image ID"; + } + leaf command { + type string; + description + "Quoted command"; + } + leaf created-at { + type string; + description + "Time when the container was created"; + } + leaf running-for { + type string; + description + "Elapsed time since the container was started."; + } + leaf ports { + type string; + description + "Exposed ports."; + } + leaf status { + type string; + description + "Container status."; + } + leaf size { + type string; + description + "Container disk size."; + } + leaf names { + type string; + description + "Container names."; + } + leaf labels { + type string; + description + "All labels assigned to the container."; + } + leaf mounts { + type string; + description + "Names of the volumes mounted in this container."; + } + leaf networks { + type string; + description + "Names of the networks attached to this container + ."; + } + leaf local-volumes { + type string; + description + "Names of the local volumes mounted in this + container"; + } + list vrf-relay-info { + description + "VRF forwarding relay information"; + uses VRF-RELAY-INFO; + } + } + + grouping APPMGR-VAR-INFO { + description + "Appmgr App Variable Info"; + container docker-info { + when "../type = 'docker'" { + description + "../Type = 'Docker'"; + } + description + "Details of docker applications"; + uses DOCKER-INFO; + } + leaf type { + type Appmgr-app; + description + "Type"; + } + } + + grouping APPMGR-APP-INFO { + description + "Information about an Application managed by the + App Mgr"; + container var-info { + description + "App Variable Info"; + uses APPMGR-VAR-INFO; + } + leaf name { + type string; + description + "Application name"; + } + leaf type { + type Appmgr-app; + description + "Application type"; + } + leaf source { + type string; + description + "Application source"; + } + leaf config-state { + type Appmgr-app-state; + description + "Application config state"; + } + leaf error-info { + type string; + description + "App Error Info"; + } + } + + grouping BAG-DOCKER-STATS { + description + "Docker stats output"; + leaf container { + type string; + description + "Container name or ID (user input)"; + } + leaf name { + type string; + description + "Container name"; + } + leaf id { + type string; + description + "Container ID"; + } + leaf cpu-perc { + type string; + units "percentage"; + description + "CPU percentage"; + } + leaf mem-usage { + type string; + description + "Memory usage"; + } + leaf net-io { + type string; + description + "Network IO"; + } + leaf block-io { + type string; + description + "Block IO"; + } + leaf mem-perc { + type string; + units "percentage"; + description + "Memory percentage"; + } + leaf pids { + type string; + description + "Number of PIDs"; + } + } + + grouping APPMGR-VAR-STATS { + description + "Appmgr App Variable Stats"; + container docker-stats { + when "../type = 'docker'" { + description + "../Type = 'Docker'"; + } + description + "Stats for docker applications"; + uses BAG-DOCKER-STATS; + } + leaf type { + type Appmgr-app; + description + "Type"; + } + } + + grouping APPMGR-APP-STATS { + description + "Stats for an Application managed by the App Mgr"; + container var-stats { + description + "App Variable Stats"; + uses APPMGR-VAR-STATS; + } + } + + grouping APPMGR-DAEMON-CONFIG { + description + "Appmgr process script configuration"; + leaf executable { + type string; + description + "Executable Name"; + } + leaf run-args { + type string; + description + "Run Arguments"; + } + leaf restart-policy { + type Appmgr-restart-policy; + description + "Restart Policy"; + } + leaf max-retries { + type uint16 { + range "1..10"; + } + description + "Maximum Restarts"; + } + } + + grouping APPMGR-DAEMON-EXEC-INFO { + description + "Appmgr process script running information"; + leaf executable { + type string; + description + "Executable Name"; + } + leaf run-args { + type string; + description + "Run Arguments"; + } + leaf restart-policy { + type Appmgr-restart-policy; + description + "Restart Policy"; + } + leaf max-retries { + type uint16 { + range "1..10"; + } + description + "Maximum Restarts"; + } + leaf restarts { + type uint16; + description + "Restarts"; + } + leaf last-started-time { + type String1; + description + "Last Started Time"; + } + leaf checksum { + type String1; + description + "Executable's checksum"; + } + leaf log-location { + type String1; + description + "Log Location"; + } + leaf last-exit-code { + type int32; + description + "Last Exit Code"; + } + } + + grouping APPMGR-DAEMON-INFO { + description + "Information about a process script managed by the + App Mgr"; + container execution-info { + description + "Execution Info"; + uses APPMGR-DAEMON-EXEC-INFO; + } + container config { + description + "Registered Configuration"; + uses APPMGR-DAEMON-CONFIG; + } + leaf name { + type string; + description + "Application name"; + } + leaf status { + type Appmgr-daemon-state; + description + "Application status"; + } + leaf is-activated { + type boolean; + description + "Is App Activated"; + } + leaf is-cfg-pending { + type boolean; + description + "Is Configuration Pending"; + } + } + + grouping APPMGR-SOURCE { + description + "Information about an installed source."; + leaf name-xr { + type string; + description + "Source name"; + } + leaf file { + type string; + description + "Source file"; + } + leaf package { + type Package; + description + "Parent package"; + } + } + + grouping APPMGR-PACKAGES { + description + "Installed packages"; + leaf-list package { + type Package; + description + "Packages"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper.yang new file mode 100644 index 000000000..1bfe28b33 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-appmgr-oper.yang @@ -0,0 +1,144 @@ +module Cisco-IOS-XR-appmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-appmgr-oper"; + prefix appmgr-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-appmgr-oper-sub1 { + revision-date 2021-09-09; + } + + 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 appmgr package operational data. + + This module contains definitions + for the following management objects: + appmgr: Appmgr Operational data space + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-09 { + description + "Adding expected patterns and max length for strings"; + semver:module-version "3.0.0"; + } + revision 2021-05-15 { + description + "Unused application types removed"; + semver:module-version "2.0.0"; + } + revision 2021-03-01 { + description + "Adding information about installed packages"; + semver:module-version "1.0.0"; + } + revision 2021-02-15 { + description + "Support for process scripts."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container appmgr { + config false; + description + "Appmgr Operational data space"; + container packages { + description + "Packages managed by the App Mgr"; + container installed { + description + "Installed packages"; + uses APPMGR-PACKAGES; + } + } + container sources { + description + "Sources downloaded by the App Manager"; + list source { + key "name"; + description + "Information about a source"; + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_:.-]+$"; + } + description + "Source name"; + } + uses APPMGR-SOURCE; + } + } + container process-scripts { + description + "Process scripts managed by the App Mgr"; + list process-script { + key "name"; + description + "Information about individual process script"; + container info { + description + "Information about a process script"; + uses APPMGR-DAEMON-INFO; + } + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + description + "Process script name"; + } + } + } + container applications { + description + "Applications managed by the App Mgr"; + list application { + key "name"; + description + "Information about individual application"; + container stats { + description + "Information about an application"; + uses APPMGR-APP-STATS; + } + container info { + description + "Information about an application"; + uses APPMGR-APP-INFO; + } + leaf name { + type string { + length "1..255"; + pattern "^[a-zA-Z0-9][a-zA-Z0-9_.-]+$"; + } + description + "Application name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper-sub1.yang new file mode 100644 index 000000000..fd0c95ef9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper-sub1.yang @@ -0,0 +1,57 @@ +submodule Cisco-IOS-XR-ascii-ltrace-oper-sub1 { + belongs-to Cisco-IOS-XR-ascii-ltrace-oper { + prefix Cisco-IOS-XR-ascii-ltrace-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ascii-ltrace package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-01-21 { + description + "Initial feature"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ASCII-LTRACE { + description + "Information of a Ltrace Point"; + leaf timestamp { + type string; + description + "timestamp"; + } + leaf line { + type string; + description + "a single line of a trace point"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper.yang new file mode 100644 index 000000000..2171bbf55 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ascii-ltrace-oper.yang @@ -0,0 +1,90 @@ +module Cisco-IOS-XR-ascii-ltrace-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ascii-ltrace-oper"; + prefix ascii-ltrace-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ascii-ltrace-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ascii-ltrace package operational data. + + This module contains definitions + for the following management objects: + ltrace: ASCII ltrace data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-01-21 { + description + "Initial feature"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ltrace { + config false; + description + "ASCII ltrace data"; + container features { + description + "feature"; + list feature { + description + "feature"; + container traces { + description + "trace"; + list trace { + key "ltrace-id"; + description + "trace"; + leaf ltrace-id { + type uint32; + description + "Ltrace ID of ltrace"; + } + uses ASCII-LTRACE; + } + } + leaf feature-name { + type xr:Cisco-ios-xr-string; + description + "feature name"; + } + leaf trace-buf { + type xr:Cisco-ios-xr-string; + description + "trace buffer name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub1.yang new file mode 100644 index 000000000..5bfaa9364 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub1.yang @@ -0,0 +1,156 @@ +submodule Cisco-IOS-XR-asic-error-oper-sub1 { + belongs-to Cisco-IOS-XR-asic-error-oper { + prefix Cisco-IOS-XR-asic-error-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asic-error package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-10 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.1.0"; + } + revision 2019-09-27 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.0.0"; + } + revision 2019-09-24 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ASIC-SUMMARY-BG { + description + "ASIC SUMMARY BG"; + leaf legacy-client { + type boolean; + description + "boolean field for legacy client"; + } + leaf cih-client { + type boolean; + description + "boolean field for cih client"; + } + leaf pac-client { + type boolean; + description + "boolean field for pac client"; + } + list sum-data { + description + "summary data for asic error"; + uses SUMMARY-DATA-BG; + } + } + + grouping COUNT-INFO-BG { + description + "COUNT INFO BG"; + leaf name { + type string; + description + "Name of asic error"; + } + leaf count { + type uint32; + description + "Number of occurrence"; + } + } + + grouping SUMMARY-DATA-BG { + description + "SUMMARY DATA BG"; + leaf num-nodes { + type uint32; + description + "Number of nodes"; + } + leaf crc-err-count { + type uint32; + description + "CRC Error Count"; + } + leaf sbe-err-count { + type uint32; + description + "Single Bit Error Count"; + } + leaf mbe-err-count { + type uint32; + description + "Multi-Bit Error Count"; + } + leaf par-err-count { + type uint32; + description + "Parity Error Count"; + } + leaf gen-err-count { + type uint32; + description + "General Error Count"; + } + leaf reset-err-count { + type uint32; + description + "Reset Error Count"; + } + list err-count { + description + "Error Count"; + uses COUNT-INFO-BG; + } + list pcie-err-count { + description + "PCIE Error Count"; + uses COUNT-INFO-BG; + } + list pacerr-count { + description + "Pac Error Count"; + uses COUNT-INFO-BG; + } + list node-key { + description + "Keys to the node"; + leaf entry { + type uint32; + description + "Keys to the node"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub2.yang new file mode 100644 index 000000000..9bf8d956d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper-sub2.yang @@ -0,0 +1,1141 @@ +submodule Cisco-IOS-XR-asic-error-oper-sub2 { + belongs-to Cisco-IOS-XR-asic-error-oper { + prefix Cisco-IOS-XR-asic-error-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asic-error package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-10 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.1.0"; + } + revision 2019-09-27 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.0.0"; + } + revision 2019-09-24 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping GENERIC-ERROR-DATA-BG { + description + "GENERIC ERROR DATA BG"; + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf counter-val { + type uint32; + description + "counter val"; + } + leaf error-data { + type string; + description + "error data"; + } + leaf top-ec { + type uint32; + description + "top ec"; + } + leaf block-ec { + type uint32; + description + "block ec"; + } + } + + grouping GENERIC-NODE-BG { + description + "GENERIC NODE BG"; + leaf name { + type string; + description + "Name assigned to mem"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "high threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "high threshold value"; + } + leaf period-hi { + type uint32; + description + "high period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + list last-err { + description + " last Printable error information"; + uses GENERIC-ERROR-DATA-BG; + } + } + + grouping GENERIC-NODES-BG { + description + "GENERIC NODES BG"; + list error { + description + "Collection of errors"; + uses GENERIC-NODE-BG; + } + } + + grouping PARITY-DATA-BG { + description + "parity bit error"; + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf addr { + type uint16; + description + "Offset from base addr of the PARITY"; + } + leaf parity { + type uint16; + description + "parity"; + } + leaf top-ec { + type uint32; + description + "top ec"; + } + leaf block-ec { + type uint32; + description + "block ec"; + } + leaf-list value { + type uint8; + description + "value"; + } + } + + grouping PARITY-NODE-BG { + description + "PARITY NODE BG"; + leaf mem-name { + type string; + description + "Name assigned to mem"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "high threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "high threshold value"; + } + leaf period-hi { + type uint32; + description + "high period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + leaf base-address { + type uint64; + description + "Base addr of ASIC mem/reg"; + } + list last-err { + description + "Collection of last errs"; + uses PARITY-DATA-BG; + } + } + + grouping PARITY-NODES-BG { + description + "PARITY NODES BG"; + list error { + description + "Collection of errors"; + uses PARITY-NODE-BG; + } + } + + grouping CRC-DATA-BG { + description + "CRC DATA BG"; + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf counter-val { + type uint32; + description + "counter val"; + } + leaf top-ec { + type uint32; + description + "top ec"; + } + leaf block-ec { + type uint32; + description + "block ec"; + } + } + + grouping CRC-NODE-BG { + description + "CRC NODE BG"; + leaf name { + type string; + description + "name"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "high threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "high threshold value"; + } + leaf period-hi { + type uint32; + description + "high period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + list last-err { + description + "Collection of last errs"; + uses CRC-DATA-BG; + } + } + + grouping CRC-NODES-BG { + description + "CRC NODES BG"; + list error { + description + "Collection of errors"; + uses CRC-NODE-BG; + } + } + + grouping MBE-DATA-BG { + description + "Hfr multi bit error"; + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf addr { + type uint32; + description + "Offset from base addr of the MBE"; + } + leaf synd { + type uint32; + description + "The error syndrome "; + } + leaf top-ec { + type uint32; + description + "top ec"; + } + leaf block-ec { + type uint32; + description + "block ec"; + } + leaf-list value { + type uint32; + description + "Data value"; + } + } + + grouping MBE-NODE-BG { + description + "MBE NODE BG"; + leaf mem-name { + type string; + description + "Name assigned to mem"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "high threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "high threshold value"; + } + leaf period-hi { + type uint32; + description + "high period value"; + } + leaf errored-data-width { + type uint8; + description + "Width of the errored data in memory/reg"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + leaf base-address { + type uint64; + description + "Base addr of ASIC mem/reg"; + } + list last-err { + description + "Collection of last errs"; + uses MBE-DATA-BG; + } + } + + grouping MBE-NODES-BG { + description + "MBE NODES BG"; + list error { + description + "Collection of errors"; + uses MBE-NODE-BG; + } + } + + grouping RESET-DATA-BG { + description + "RESET DATA BG"; + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf top-intr-status { + type uint32; + description + "top intr status"; + } + leaf top-halt-status { + type uint32; + description + "top halt status"; + } + leaf first-error-key { + type uint32; + description + "first error key"; + } + leaf reset-desc { + type string; + description + "reset desc"; + } + leaf top-ec { + type uint32; + description + "top ec"; + } + leaf block-ec { + type uint32; + description + "block ec"; + } + } + + grouping RESET-NODE-BG { + description + "RESET NODE BG"; + leaf name { + type string; + description + "Name assigned to node"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "high threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "high threshold value"; + } + leaf period-hi { + type uint32; + description + "high period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + list last-err { + description + "Collection of last errs"; + uses RESET-DATA-BG; + } + } + + grouping RESET-NODES-BG { + description + "RESET NODES BG"; + list error { + description + "Collection of errors"; + uses RESET-NODE-BG; + } + } + + grouping SBE-DATA-BG { + description + "Hfr single bit error"; + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf addr { + type uint32; + description + "Offset from base addr of the SBE"; + } + leaf synd { + type uint32; + description + "The error syndrome "; + } + leaf bit-pos { + type uint32; + description + "The bit pos at which the error"; + } + leaf top-ec { + type uint32; + description + "top ec"; + } + leaf block-ec { + type uint32; + description + "block ec"; + } + leaf-list value { + type uint32; + description + "Data value"; + } + } + + grouping SBE-NODE-BG { + description + "SBE NODE BG"; + leaf mem-name { + type string; + description + "Name assigned to mem"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "high threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "high threshold value"; + } + leaf period-hi { + type uint32; + description + "high period value"; + } + leaf errored-data-width { + type uint8; + description + "Width of the err data in memory/reg"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + leaf base-address { + type uint64; + description + "Base addr of ASIC mem/reg"; + } + list last-err { + description + "Collection of last errs"; + uses SBE-DATA-BG; + } + } + + grouping SBE-NODES-BG { + description + "SBE NODES BG"; + list error { + description + "Collection of errors"; + uses SBE-NODE-BG; + } + } + + grouping PCIE-TLP-HEADER-DATA-BG { + description + "PCIE TLP HEADER DATA BG"; + leaf fmt-type { + type uint32; + description + "fmt type"; + } + leaf traffic-class { + type uint32; + description + "traffic class"; + } + leaf tlp-digest-field-present { + type boolean; + description + "tlp digest field present"; + } + leaf poisoned-data { + type boolean; + description + "poisoned data"; + } + leaf relaxed-ordering { + type boolean; + description + "relaxed ordering"; + } + leaf no-snoop { + type boolean; + description + "no snoop"; + } + leaf length { + type uint16; + description + "length"; + } + leaf first-dw-byte-enables { + type uint8; + description + "first dw byte enables"; + } + leaf last-dw-byte-enables { + type uint8; + description + "last dw byte enables"; + } + leaf-list transaction-descriptor { + type uint8; + description + "transaction descriptor"; + } + } + + grouping PCIE-ASIC-ERRORS-DATA-BG { + description + "PCIE ASIC ERRORS DATA BG"; + container tlp-header-data { + description + "tlp header data"; + uses PCIE-TLP-HEADER-DATA-BG; + } + leaf err-type { + type uint32; + description + "err type"; + } + leaf severity { + type uint32; + description + "severity"; + } + leaf err-attribute { + type uint32; + description + "err attribute"; + } + leaf is-tlp-header-present { + type boolean; + description + "is tlp header present"; + } + leaf-list raw-tlp-header { + type uint32; + description + "raw tlp header"; + } + } + + grouping PCIE-DATA-BG { + description + "PCIE DATA BG"; + container error-data { + description + "error data"; + uses PCIE-ASIC-ERRORS-DATA-BG; + } + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf counter-val { + type uint32; + description + "counter val"; + } + leaf top-ec { + type uint32; + description + "top ec"; + } + leaf block-ec { + type uint32; + description + "block ec"; + } + } + + grouping PCIE-NODE-BG { + description + "PCIE NODE BG"; + leaf name { + type string; + description + "Name assigned to mem"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "High threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "High threshold value"; + } + leaf period-hi { + type uint32; + description + "High period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + list last-err { + description + "Collection of last errs"; + uses PCIE-DATA-BG; + } + } + + grouping PCIE-NODES-BG { + description + "PCIE NODES BG"; + list error { + description + "Collection of errors"; + uses PCIE-NODE-BG; + } + } + + grouping CIHERR-ERROR-DATA-BG { + description + "CIHERR ERROR DATA BG"; + leaf at-time { + type uint64; + description + "Asic error time"; + } + leaf at-time-nsec { + type uint64; + description + "Asic error nsec"; + } + leaf counter-val { + type uint32; + description + "Number of occurrence"; + } + leaf error-desc { + type string; + description + "Error description"; + } + list error-regval { + description + "Error register value"; + leaf entry { + type uint8; + description + "Error register value"; + } + } + } + + grouping CSRS-INFO-BG { + description + "CSRS INFO BG"; + leaf name { + type string; + description + "Name of csrs register"; + } + leaf address { + type uint64; + description + "Address of csrs register"; + } + leaf width { + type uint32; + description + "Width of csrs register"; + } + } + + grouping CIHERR-NODE-BG { + description + "CIHERR NODE BG"; + leaf name { + type string; + description + "Name assigned to mem"; + } + leaf asic-info { + type string; + description + "Name of rack/board/asic"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "High threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "High threshold value"; + } + leaf period-hi { + type uint32; + description + "High period value"; + } + leaf thresh-lo { + type uint32; + description + "High threshold value"; + } + leaf period-lo { + type uint32; + description + "High period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf intr-type { + type uint32; + description + "Type of error"; + } + leaf leaf-id { + type uint32; + description + "Leaf ID defined in user data"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + list csrs-info { + description + "List of csrs_info"; + uses CSRS-INFO-BG; + } + list last-err { + description + "Last Printable error information"; + uses CIHERR-ERROR-DATA-BG; + } + } + + grouping CIHERR-NODES-BG { + description + "CIHERR NODES BG"; + list error { + description + "Collection of errors"; + uses CIHERR-NODE-BG; + } + } + + grouping PACERR-ERROR-DATA-BG { + description + "PACERR ERROR DATA BG"; + leaf at-time { + type uint64; + description + "at time"; + } + leaf at-time-nsec { + type uint64; + description + "at time nsec"; + } + leaf counter-val { + type uint32; + description + "counter val"; + } + leaf error-desc { + type string; + description + "error desc"; + } + } + + grouping PACERR-NODE-BG { + description + "PACERR NODE BG"; + leaf name { + type string; + description + "Name assigned to mem"; + } + leaf asic-info { + type string; + description + "Name of rack/board/asic"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "High threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "High threshold value"; + } + leaf period-hi { + type uint32; + description + "High period value"; + } + leaf thresh-lo { + type uint32; + description + "Low threshold value"; + } + leaf period-lo { + type uint32; + description + "Low period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf block-id { + type uint32; + description + "block where error occurred"; + } + leaf addr { + type uint32; + description + "addr of the error interrupt inside node"; + } + leaf leaf-id { + type uint32; + description + "leaf_id of the error occurred"; + } + leaf intr-type { + type uint32; + description + "Type of error"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + list last-err { + description + "Last Printable error information"; + uses PACERR-ERROR-DATA-BG; + } + } + + grouping PACERR-NODES-BG { + description + "PACERR NODES BG"; + list error { + description + "Collection of errors"; + uses PACERR-NODE-BG; + } + } + + grouping SCHEMA-DATA-BG { + description + "SCHEMA DATA BG"; + container pacerr-nodes { + description + "pacerr nodes"; + uses PACERR-NODES-BG; + } + container ciherr-nodes { + description + "ciherr nodes"; + uses CIHERR-NODES-BG; + } + container pcie-nodes { + description + "pcie nodes"; + uses PCIE-NODES-BG; + } + container sbe-nodes { + description + "sbe nodes"; + uses SBE-NODES-BG; + } + container reset-nodes { + description + "reset nodes"; + uses RESET-NODES-BG; + } + container mbe-nodes { + description + "mbe nodes"; + uses MBE-NODES-BG; + } + container crc-nodes { + description + "crc nodes"; + uses CRC-NODES-BG; + } + container parity-nodes { + description + "parity nodes"; + uses PARITY-NODES-BG; + } + container generic-nodes { + description + "generic nodes"; + uses GENERIC-NODES-BG; + } + } + + grouping ASIC-ERROR-INST-BG { + description + "ASIC ERROR INST BG"; + leaf err-class-name { + type string; + description + "err class name"; + } + leaf count { + type uint32; + description + "count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper.yang new file mode 100644 index 000000000..15f0ee717 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-error-oper.yang @@ -0,0 +1,176 @@ +module Cisco-IOS-XR-asic-error-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asic-error-oper"; + prefix asic-error-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asic-error-oper-sub2 { + revision-date 2021-02-10; + } + include Cisco-IOS-XR-asic-error-oper-sub1 { + revision-date 2021-02-10; + } + + 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 asic-error package operational data. + + This module contains definitions + for the following management objects: + asic-errors: Error summary of all asics + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-10 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.1.0"; + } + revision 2019-09-27 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.0.0"; + } + revision 2019-09-24 { + description + "Introduced working oper model for asic-errors."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container asic-errors { + config false; + description + "Error summary of all asics"; + container nodes { + description + "Asic errors for each available nodes"; + list node { + key "node-name"; + description + "Asic error for a particular node"; + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + list asic-information { + key "asic"; + description + "Asic on the node"; + container instances { + description + "All asic errors on the node"; + list instance { + key "asic-instance"; + description + "Particular asic instance on the node"; + container categories { + description + "Error path of the instances"; + list category { + key "category"; + description + "Error category soft/hard"; + leaf category { + type xr:Cisco-ios-xr-string; + description + "Error Category soft/hard"; + } + list error-class { + key "class"; + description + "Error Classes - supported by asic type"; + container error-info-indexes { + description + "Asic ErrorClass Info"; + list error-info-index { + key "error-info-index"; + description + "Asic Error List Per Class"; + container error-counter { + description + "Asic Error data Per Index Per class"; + uses ASIC-ERROR-INST-BG; + } + leaf error-info-index { + type uint32; + description + "Indexed Counter Key"; + } + } + } + container asic-error-info { + description + "Asic Error Info"; + uses SCHEMA-DATA-BG; + } + leaf class { + type xr:Cisco-ios-xr-string; + description + "Error Class"; + } + } + } + } + container instance-summary { + description + "Summary for a specific instance"; + uses SUMMARY-DATA-BG; + } + leaf asic-instance { + type uint32 { + range "0..256"; + } + description + "asic instance"; + } + } + } + container all-instances { + description + "All asic instance on the node"; + container all-error-path { + description + "Error path of all instances"; + container summary { + description + "Summary of all instances errors"; + uses ASIC-SUMMARY-BG; + } + } + } + leaf asic { + type xr:Cisco-ios-xr-string; + description + "Asic string"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub1.yang new file mode 100644 index 000000000..59bf0f8a1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub1.yang @@ -0,0 +1,195 @@ +submodule Cisco-IOS-XR-asic-errors-oper-sub1 { + belongs-to Cisco-IOS-XR-asic-errors-oper { + prefix Cisco-IOS-XR-asic-errors-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asic-errors package operational data. + + This model is obsolete and is replaced by + Cisco-IOS-XR-asic-error-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-11 { + description + "The model moved to obsolete list."; + semver:module-version "1.2.0"; + } + revision 2019-09-27 { + description + "Fixed type translation error."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CIHERR-ERROR-DATA-BG { + description + "CIHERR ERROR DATA BG"; + leaf at-time { + type uint64; + description + "Asic error time"; + } + leaf at-time-nsec { + type uint64; + description + "Asic error nsec"; + } + leaf counter-val { + type uint32; + description + "Number of occurrence"; + } + leaf error-desc { + type string; + description + "Error description"; + } + list error-regval { + description + "Error register value"; + leaf entry { + type uint8; + description + "Error register value"; + } + } + } + + grouping CSRS-INFO-BG { + description + "CSRS INFO BG"; + leaf name { + type string; + description + "Name of csrs register"; + } + leaf address { + type uint64; + description + "Address of csrs register"; + } + leaf width { + type uint32; + description + "Width of csrs register"; + } + } + + grouping CIHERR-NODE-BG { + description + "CIHERR NODE BG"; + leaf name { + type string; + description + "Name assigned to mem"; + } + leaf asic-info { + type string; + description + "Name of rack/board/asic"; + } + leaf node-key { + type uint32; + description + "32 bit key"; + } + leaf alarm-on { + type boolean; + description + "High threshold crossed"; + } + leaf thresh-hi { + type uint32; + description + "High threshold value"; + } + leaf period-hi { + type uint32; + description + "High period value"; + } + leaf thresh-lo { + type uint32; + description + "High threshold value"; + } + leaf period-lo { + type uint32; + description + "High period value"; + } + leaf count { + type uint32; + description + "Accumulated count"; + } + leaf intr-type { + type uint32; + description + "Type of error"; + } + leaf leaf-id { + type uint32; + description + "Leaf ID defined in user data"; + } + leaf last-cleared { + type uint64; + description + "Time cleared"; + } + list csrs-info { + description + "List of csrs_info"; + uses CSRS-INFO-BG; + } + list last-err { + description + "Last Printable error information"; + uses CIHERR-ERROR-DATA-BG; + } + } + + grouping CIHERR-NODES-BG { + description + "CIHERR NODES BG"; + list error { + description + "Collection of errors"; + uses CIHERR-NODE-BG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub2.yang new file mode 100644 index 000000000..d02ec350a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper-sub2.yang @@ -0,0 +1,160 @@ +submodule Cisco-IOS-XR-asic-errors-oper-sub2 { + belongs-to Cisco-IOS-XR-asic-errors-oper { + prefix Cisco-IOS-XR-asic-errors-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asic-errors package operational data. + + This model is obsolete and is replaced by + Cisco-IOS-XR-asic-error-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-11 { + description + "The model moved to obsolete list."; + semver:module-version "1.2.0"; + } + revision 2019-09-27 { + description + "Fixed type translation error."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping COUNT-INFO-BG { + description + "COUNT INFO BG"; + leaf name { + type string; + description + "Name of asic error"; + } + leaf count { + type uint32; + description + "Number of occurrence"; + } + } + + grouping SUMMARY-DATA-BG { + description + "SUMMARY DATA BG"; + leaf num-nodes { + type uint32; + description + "Number of nodes"; + } + leaf crc-err-count { + type uint32; + description + "CRC Error Count"; + } + leaf sbe-err-count { + type uint32; + description + "Single Bit Error Count"; + } + leaf mbe-err-count { + type uint32; + description + "Multi-Bit Error Count"; + } + leaf par-err-count { + type uint32; + description + "Parity Error Count"; + } + leaf gen-err-count { + type uint32; + description + "General Error Count"; + } + leaf reset-err-count { + type uint32; + description + "Reset Error Count"; + } + list err-count { + description + "Error Count"; + uses COUNT-INFO-BG; + } + list pcie-err-count { + description + "PCIE Error Count"; + uses COUNT-INFO-BG; + } + list pacerr-count { + description + "Pac Error Count"; + uses COUNT-INFO-BG; + } + list node-key { + description + "Keys to the node"; + leaf entry { + type uint32; + description + "Keys to the node"; + } + } + } + + grouping ASIC-SUMMARY-BG { + description + "ASIC SUMMARY BG"; + leaf legacy-client { + type boolean; + description + "boolean field for legacy client"; + } + leaf cih-client { + type boolean; + description + "boolean field for cih client"; + } + leaf pac-client { + type boolean; + description + "boolean field for pac client"; + } + list sum-data { + description + "summary data for asic error"; + uses SUMMARY-DATA-BG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper.yang new file mode 100644 index 000000000..6e6d6558f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asic-errors-oper.yang @@ -0,0 +1,390 @@ +module Cisco-IOS-XR-asic-errors-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asic-errors-oper"; + prefix asic-errors-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asic-errors-oper-sub2 { + revision-date 2020-11-11; + } + include Cisco-IOS-XR-asic-errors-oper-sub1 { + revision-date 2020-11-11; + } + + 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 asic-errors package operational data. + + This model is obsolete and is replaced by + Cisco-IOS-XR-asic-error-oper.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + asic-errors: Error summary of all asics + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-11 { + description + "The model moved to obsolete list."; + semver:module-version "1.2.0"; + } + revision 2019-09-27 { + description + "Fixed type translation error."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container asic-errors { + config false; + status obsolete; + description + "This model is obsolete and is replaced by + Cisco-IOS-XR-asic-error-oper.yang which will + provide the compatible functionalities. Error + summary of all asics"; + container nodes { + description + "Asic errors for each available nodes"; + list node { + key "node-name"; + description + "Asic error for a particular node"; + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + list asic-information { + key "asic"; + description + "Asic on the node"; + container all-instances { + description + "All asic instance on the node"; + container all-error-path { + description + "Error path of all instances"; + container summary { + description + "Summary of all instances errors"; + uses ASIC-SUMMARY-BG; + } + } + } + container instances { + description + "All asic errors on the node"; + list instance { + key "asic-instance"; + description + "Particular asic instance on the node"; + container error-path { + description + "Error path of the instances"; + container multiple-bit-soft-errors { + description + "Multiple bit soft error information"; + uses CIHERR-NODES-BG; + } + container asic-error-generic-soft { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container crc-hard-errors { + description + "CRC hard error information"; + uses CIHERR-NODES-BG; + } + container asic-error-sbe-soft { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container hardware-soft-errors { + description + "Hardware soft error information"; + uses CIHERR-NODES-BG; + } + container asic-error-crc-soft { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container asic-error-parity-soft { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container io-soft-errors { + description + "IO soft error information"; + uses CIHERR-NODES-BG; + } + container reset-soft-errors { + description + "Reset soft error information"; + uses CIHERR-NODES-BG; + } + container barrier-hard-errors { + description + "Barrier hard error information"; + uses CIHERR-NODES-BG; + } + container ucode-soft-errors { + description + "Ucode soft error information"; + uses CIHERR-NODES-BG; + } + container asic-error-reset-hard { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container single-bit-hard-errors { + description + "Single bit hard error information"; + uses CIHERR-NODES-BG; + } + container indirect-hard-errors { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container outof-resource-soft { + description + "OOR thresh information"; + uses CIHERR-NODES-BG; + } + container crc-soft-errors { + description + "CRC soft error information"; + uses CIHERR-NODES-BG; + } + container time-out-hard-errors { + description + "Time out hard error information"; + uses CIHERR-NODES-BG; + } + container barrier-soft-errors { + description + "Barrier soft error information"; + uses CIHERR-NODES-BG; + } + container asic-error-mbe-soft { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container back-pressure-hard-errors { + description + "BP hard error information"; + uses CIHERR-NODES-BG; + } + container single-bit-soft-errors { + description + "Single bit soft error information"; + uses CIHERR-NODES-BG; + } + container indirect-soft-errors { + description + "Indirect soft error information"; + uses CIHERR-NODES-BG; + } + container generic-hard-errors { + description + "Generic hard error information"; + uses CIHERR-NODES-BG; + } + container link-hard-errors { + description + "Link hard error information"; + uses CIHERR-NODES-BG; + } + container configuration-hard-errors { + description + "Configuration hard error information"; + uses CIHERR-NODES-BG; + } + container instance-summary { + description + "Summary for a specific instance"; + uses ASIC-SUMMARY-BG; + } + container unexpected-hard-errors { + description + "Unexpected hard error information"; + uses CIHERR-NODES-BG; + } + container time-out-soft-errors { + description + "Time out soft error information"; + uses CIHERR-NODES-BG; + } + container asic-error-generic-hard { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container parity-hard-errors { + description + "Parity hard error information"; + uses CIHERR-NODES-BG; + } + container descriptor-hard-errors { + description + "Descriptor hard error information"; + uses CIHERR-NODES-BG; + } + container interface-hard-errors { + description + "Interface hard error information"; + uses CIHERR-NODES-BG; + } + container asic-error-sbe-hard { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container asic-error-crc-hard { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container asic-error-parity-hard { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container asic-error-reset-soft { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + container back-pressure-soft-errors { + description + "BP soft error information"; + uses CIHERR-NODES-BG; + } + container generic-soft-errors { + description + "Generic soft error information"; + uses CIHERR-NODES-BG; + } + container link-soft-errors { + description + "Link soft error information"; + uses CIHERR-NODES-BG; + } + container configuration-soft-errors { + description + "Configuration soft error information"; + uses CIHERR-NODES-BG; + } + container multiple-bit-hard-errors { + description + "Multiple bit hard error information"; + uses CIHERR-NODES-BG; + } + container unexpected-soft-errors { + description + "Unexpected soft error information"; + uses CIHERR-NODES-BG; + } + container outof-resource-hard { + description + "OOR thresh information"; + uses CIHERR-NODES-BG; + } + container hardware-hard-errors { + description + "Hardware hard error information"; + uses CIHERR-NODES-BG; + } + container parity-soft-errors { + description + "Parity soft error information"; + uses CIHERR-NODES-BG; + } + container descriptor-soft-errors { + description + "Descriptor soft error information"; + uses CIHERR-NODES-BG; + } + container interface-soft-errors { + description + "Interface soft error information"; + uses CIHERR-NODES-BG; + } + container io-hard-errors { + description + "IO hard error information"; + uses CIHERR-NODES-BG; + } + container reset-hard-errors { + description + "Reset hard error information"; + uses CIHERR-NODES-BG; + } + container ucode-hard-errors { + description + "UCode hard error information"; + uses CIHERR-NODES-BG; + } + container asic-error-mbe-hard { + description + "Indirect hard error information"; + uses CIHERR-NODES-BG; + } + } + leaf asic-instance { + type uint32 { + range "0..256"; + } + description + "asic instance"; + } + } + } + leaf asic { + type xr:Cisco-ios-xr-string; + description + "Asic string"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-apm-src-flexr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-apm-src-flexr-cfg.yang new file mode 100644 index 000000000..9bff37939 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-apm-src-flexr-cfg.yang @@ -0,0 +1,112 @@ +module Cisco-IOS-XR-asr9k-apm-src-flexr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-apm-src-flexr-cfg"; + prefix asr9k-apm-src-flexr-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 asr9k-apm-src-flexr package configuration. + + This module contains definitions + for the following management objects: + hw-module-slice-config: Advanced power management + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-01 { + description + "IOS XR 7.4.1 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Slice-power-management-mode { + type enumeration { + enum "power-savings" { + value 1; + description + "Shutdown the slice"; + } + enum "power-down" { + value 2; + description + "Power down the slice"; + } + } + description + "Slice power management mode"; + } + + container hw-module-slice-config { + description + "Advanced power management"; + container apm { + description + "Advanced power management"; + container nodes { + description + "line-card node location"; + list node { + key "node-name"; + description + "line-card node location"; + container slices { + description + "Slice Table"; + list slice { + key "slice-number"; + description + "Slice"; + leaf power-management-mode { + type Slice-power-management-mode; + description + "Slice power management mode"; + } + leaf slice-number { + type uint32 { + range "0..9"; + } + description + "Slice number"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Fully qualified line card specification"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ep-port-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ep-port-mode-cfg.yang new file mode 100644 index 000000000..3aa3acb68 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ep-port-mode-cfg.yang @@ -0,0 +1,123 @@ +module Cisco-IOS-XR-asr9k-ep-port-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-ep-port-mode-cfg"; + prefix asr9k-ep-port-mode-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 asr9k-ep-port-mode package configuration. + + This module contains definitions + for the following management objects: + hw-module-ep-port-mode: HW Module EP port-mode configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-06 { + description + "IOS XR 6.6.2 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hw-module-ep-if-port-mode { + type enumeration { + enum "2xhundredgige-16qam" { + value 1; + description + "2xHundredGigE 16QAM mode configuration"; + } + enum "2xhundredgige-8qam" { + value 2; + description + "2xHundredGigE 8QAM mode configuration"; + } + } + description + "Hw module ep if port mode"; + } + + container hw-module-ep-port-mode { + description + "HW Module EP port-mode configuration"; + list ep-port-mode-configuration { + key "active"; + description + "active or pre configuration"; + leaf active { + type xr:Cisco-ios-xr-string; + description + "act or pre configuration"; + } + list node { + key "location"; + description + "line-card node location"; + container bays { + description + "port-mode configuration for EP bay number"; + list bay { + key "bay-number"; + description + "EP Bay number"; + container ports { + description + "port-mode configuration for port number"; + list port { + key "port-number"; + description + "Optics port number"; + leaf if-port-mode { + type Hw-module-ep-if-port-mode; + description + "port-mode type"; + } + leaf port-number { + type xr:Cisco-ios-xr-string; + description + "Optics port number"; + } + } + } + leaf bay-number { + type xr:Cisco-ios-xr-string; + description + "bay number"; + } + } + } + leaf location { + type xr:Cisco-ios-xr-string; + description + "Fully qualified line-card location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-cfg.yang new file mode 100644 index 000000000..5785d7fe1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-cfg.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-asr9k-fab-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-fab-cfg"; + prefix asr9k-fab-cfg; + + 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 asr9k-fab package configuration. + + This module contains definitions + for the following management objects: + fab-vqi-config: Configure Fabric Operation Mode + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Asr9k-fab-mode { + type enumeration { + enum "highbandwidth" { + value 1; + description + "High bandwidth mode"; + } + enum "a99-highbandwidth" { + value 2; + description + "A99 High bandwidth mode"; + } + } + description + "Asr9k fab mode"; + } + + container fab-vqi-config { + description + "Configure Fabric Operation Mode"; + container mode { + description + "Mode Type"; + leaf fab-mode-type-xr { + type Asr9k-fab-mode; + description + "Mode Type"; + } + leaf fab-mode-type { + type Asr9k-fab-mode; + description + "Mode Type"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper-sub1.yang new file mode 100644 index 000000000..15db27ded --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper-sub1.yang @@ -0,0 +1,363 @@ +submodule Cisco-IOS-XR-asr9k-fab-health-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-fab-health-oper { + prefix Cisco-IOS-XR-asr9k-fab-health-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-fab-health package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FAB-HEALTH-SPINE { + description + "FAB HEALTH SPINE"; + leaf fc-num { + type uint8; + description + "fc num"; + } + list fc-xbar-info { + max-elements "2"; + description + "fc xbar info"; + uses FAB-HEALTH-EDM-INFO; + } + } + + grouping FAB-HEALTH-FABMGR-FIA-STATUS { + description + "FAB HEALTH FABMGR FIA STATUS"; + leaf fia { + type uint8; + description + "FIA Instance"; + } + leaf fabmgr-fia-status { + type string; + description + "FIA Status"; + } + } + + grouping FAB-HEALTH-FABMGR { + description + "FAB HEALTH FABMGR"; + leaf slot { + type uint8; + description + "slot"; + } + list fia-status { + max-elements "10"; + description + "fia status"; + uses FAB-HEALTH-FABMGR-FIA-STATUS; + } + list alarm-info { + max-elements "10"; + description + "alarm info"; + uses FAB-HEALTH-ALARM-INFO; + } + } + + grouping FAB-HEALTHCREDIT-RECORD { + description + "FAB HEALTHCREDIT RECORD"; + leaf ldi { + type uint8; + description + "ldi"; + } + leaf cl { + type uint8; + description + "cl"; + } + leaf credits { + type uint8; + description + "credits"; + } + leaf vqi { + type uint32; + description + "vqi"; + } + leaf is-bel { + type boolean; + description + "is bel"; + } + } + + grouping FAB-HEALTHEDM-CREDITS { + description + "FAB HEALTHEDM CREDITS"; + leaf mode { + type boolean; + description + "mode"; + } + leaf pg { + type uint8; + description + "pg"; + } + list credit-record { + max-elements "384"; + description + "credit record"; + uses FAB-HEALTHCREDIT-RECORD; + } + } + + grouping FAB-HEALTHQDEPTH-RECORD { + description + "FAB HEALTHQDEPTH RECORD"; + leaf vqi { + type uint32; + description + "vqi"; + } + leaf cl { + type uint8; + description + "cl"; + } + leaf count { + type uint8; + description + "count"; + } + } + + grouping FAB-HEALTHEDM-QDEPTH { + description + "FAB HEALTHEDM QDEPTH"; + leaf mode { + type boolean; + description + "mode"; + } + list qdepth { + max-elements "96"; + description + "qdepth"; + uses FAB-HEALTHQDEPTH-RECORD; + } + } + + grouping FAB-HEALTH-STUCK-VQI { + description + "FAB HEALTH STUCK VQI"; + container qdepth-stats { + description + "qdepth stats"; + uses FAB-HEALTHEDM-QDEPTH; + } + container credits { + description + "credits"; + uses FAB-HEALTHEDM-CREDITS; + } + } + + grouping FAB-HEALTH-ALARM-INFO { + description + "FAB HEALTH ALARM INFO"; + leaf present { + type boolean; + description + "present"; + } + leaf alarm-name { + type string; + description + "alarm name"; + } + leaf last-ts { + type string; + description + "last ts"; + } + } + + grouping FAB-HEALTH-COUNTERS { + description + "FAB HEALTH COUNTERS"; + leaf from-counter { + type uint64; + description + "from counter"; + } + leaf to-counter { + type uint64; + description + "to counter"; + } + } + + grouping FAB-HEALTH-EDM-INFO { + description + "FAB HEALTH EDM INFO"; + container s1-counters { + description + "s1 counters"; + uses FAB-HEALTH-COUNTERS; + } + container s2-counters { + description + "s2 counters"; + uses FAB-HEALTH-COUNTERS; + } + container s3-counters { + description + "s3 counters"; + uses FAB-HEALTH-COUNTERS; + } + container drop-counters { + description + "drop counters"; + uses FAB-HEALTH-COUNTERS; + } + container s1-mc-counters { + description + "s1 mc counters"; + uses FAB-HEALTH-COUNTERS; + } + container s2-mc-counters { + description + "s2 mc counters"; + uses FAB-HEALTH-COUNTERS; + } + container s3-mc-counters { + description + "s3 mc counters"; + uses FAB-HEALTH-COUNTERS; + } + container drop-mc-counters { + description + "drop mc counters"; + uses FAB-HEALTH-COUNTERS; + } + leaf asic-inst { + type uint8; + description + "asic inst"; + } + leaf admin-state { + type string; + description + "admin state"; + } + leaf oper-state { + type string; + description + "oper state"; + } + leaf links-up { + type uint8; + description + "links up"; + } + leaf links-down { + type uint8; + description + "links down"; + } + leaf respawn-count { + type uint32; + description + "respawn count"; + } + leaf respawn-reason { + type int32; + description + "respawn reason"; + } + leaf proc-state { + type int32; + description + "proc state"; + } + leaf proc-exit-status { + type int32; + description + "proc exit status"; + } + list alarm-info { + max-elements "50"; + description + "alarm info"; + uses FAB-HEALTH-ALARM-INFO; + } + } + + grouping FAB-ALL-HEALTH-EDM-INFO { + description + "FAB ALL HEALTH EDM INFO"; + container arb-info { + description + "arb info"; + uses FAB-HEALTH-EDM-INFO; + } + container stuck-vqi-info { + description + "stuck vqi info"; + uses FAB-HEALTH-STUCK-VQI; + } + list xbar-info { + max-elements "2"; + description + "xbar info"; + uses FAB-HEALTH-EDM-INFO; + } + list fia-info { + max-elements "10"; + description + "fia info"; + uses FAB-HEALTH-EDM-INFO; + } + list fabmgr-info { + max-elements "22"; + description + "fabmgr info"; + uses FAB-HEALTH-FABMGR; + } + list fc-info { + max-elements "7"; + description + "fc info"; + uses FAB-HEALTH-SPINE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper.yang new file mode 100644 index 000000000..c307f320b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fab-health-oper.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-asr9k-fab-health-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-fab-health-oper"; + prefix asr9k-fab-health-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-fab-health-oper-sub1 { + revision-date 2019-04-05; + } + + 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 asr9k-fab-health package operational data. + + This module contains definitions + for the following management objects: + fabric-health-stats: Fabric stats operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fabric-health-stats { + config false; + description + "Fabric stats operational data"; + container nodes { + description + "Table of Nodes"; + list node { + key "node-name"; + description + "Information about a particular node"; + container fab-health-stats { + description + "Health information for fabric"; + uses FAB-ALL-HEALTH-EDM-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1.yang new file mode 100644 index 000000000..33a86856f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1.yang @@ -0,0 +1,1143 @@ +submodule Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-fc-xbar-oper { + prefix Cisco-IOS-XR-asr9k-fc-xbar-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-fc-xbar package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping XBAR-EDM-SM15-PE-CC-STATS { + description + "XBAR EDM SM15 PE CC STATS"; + leaf in-pkt-cnt { + type uint64; + description + "IN PKT CNT"; + } + leaf out-path0-pkt-cnt { + type uint64; + description + "OUT PATH0 PKT CNT"; + } + leaf out-path1-pkt-cnt { + type uint64; + description + "OUT PATH1 PKT CNT"; + } + leaf xbar-ecc-drop-pkt-cnt { + type uint64; + description + "XBAR ECC DROP PKT CNT"; + } + leaf mem0-drop-pkt-cnt { + type uint64; + description + "MEM0 DROP PKT CNT"; + } + leaf mem1-drop-pkt-cnt { + type uint64; + description + "MEM1 DROP PKT CNT"; + } + leaf congn-pkt-cnt { + type uint64; + description + "CONGN PKT CNT"; + } + leaf xbar-ecc-single-err-cnt { + type uint64; + description + "XBAR ECC SINGLE ERR CNT"; + } + leaf xbar-ecc-double-err-cnt { + type uint64; + description + "XBAR ECC DOUBLE ERR CNT"; + } + leaf mem0-ecc-single-err-cnt { + type uint64; + description + "MEM0 ECC SINGLE ERR CNT"; + } + leaf mem0-ecc-double-err-cnt { + type uint64; + description + "MEM0 ECC DOUBLE ERR CNT"; + } + leaf mem1-ecc-single-err-cnt { + type uint64; + description + "MEM1 ECC SINGLE ERR CNT"; + } + leaf mem1-ecc-double-err-cnt { + type uint64; + description + "MEM1 ECC DOUBLE ERR CNT"; + } + leaf fc-cc-0-1-trans-cnt { + type uint64; + description + "FC CC 0 1 TRANS CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Egress Control Cast Rate"; + } + } + + grouping XBAR-EDM-SM15-PE-MC-STATS { + description + "XBAR EDM SM15 PE MC STATS"; + leaf in-pkt-mc-cnt { + type uint64; + description + "IN PKT MC CNT"; + } + leaf in-full-line-mc-cnt { + type uint64; + description + "IN FULL LINE MC CNT"; + } + leaf pkt-trunc-eop-mc-cnt { + type uint64; + description + "PKT TRUNC EOP MC CNT"; + } + leaf pkt-sop-drop-mc-cnt { + type uint64; + description + "PKT SOP DROP MC CNT"; + } + leaf pkt-ecc-err-drop-mc-cnt { + type uint64; + description + "PKT ECC ERR DROP MC CNT"; + } + leaf pkt-ecc-err-trunc-cnt-mc-cnt { + type uint64; + description + "PKT ECC ERR TRUNC CNT MC CNT"; + } + leaf ecc-1bit-err-mc0-cnt { + type uint64; + description + "ECC 1BIT ERR MC0 CNT"; + } + leaf ecc-1bit-err-mc1-cnt { + type uint64; + description + "ECC 1BIT ERR MC1 CNT"; + } + leaf ecc-1bit-err-mc2-cnt { + type uint64; + description + "ECC 1BIT ERR MC2 CNT"; + } + leaf ecc-2bit-err-mc0-cnt { + type uint64; + description + "ECC 2BIT ERR MC0 CNT"; + } + leaf ecc-2bit-err-mc1-cnt { + type uint64; + description + "ECC 2BIT ERR MC1 CNT"; + } + leaf ecc-2bit-err-mc2-cnt { + type uint64; + description + "ECC 2BIT ERR MC2 CNT"; + } + leaf out-pkt-mc-cnt { + type uint64; + description + "OUT PKT MC CNT"; + } + leaf fe-mc-sop-eop-pack-cnt { + type uint64; + description + "FE MC SOP EOP PACK CNT"; + } + leaf fc-mc-0-1-trans-cnt { + type uint64; + description + "FC MC 0 1 TRANS CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Egress Multicast Rate"; + } + } + + grouping XBAR-EDM-SM15-PE-UC-STATS { + description + "XBAR EDM SM15 PE UC STATS"; + leaf in-pkt-uc0-cnt { + type uint64; + description + "IN PKT UC0 CNT"; + } + leaf in-pkt-uc1-cnt { + type uint64; + description + "IN PKT UC1 CNT"; + } + leaf in-pkt-uc2-cnt { + type uint64; + description + "IN PKT UC2 CNT"; + } + leaf in-full-line-uc0-cnt { + type uint64; + description + "IN FULL LINE UC0 CNT"; + } + leaf in-full-line-uc1-cnt { + type uint64; + description + "IN FULL LINE UC1 CNT"; + } + leaf in-full-line-uc2-cnt { + type uint64; + description + "IN FULL LINE UC2 CNT"; + } + leaf pkt-trunc-eop-uc0-cnt { + type uint64; + description + "PKT TRUNC EOP UC0 CNT"; + } + leaf pkt-trunc-eop-uc1-cnt { + type uint64; + description + "PKT TRUNC EOP UC1 CNT"; + } + leaf pkt-trunc-eop-uc2-cnt { + type uint64; + description + "PKT TRUNC EOP UC2 CNT"; + } + leaf pkt-sop-drop-uc0-cnt { + type uint64; + description + "PKT SOP DROP UC0 CNT"; + } + leaf pkt-sop-drop-uc1-cnt { + type uint64; + description + "PKT SOP DROP UC1 CNT"; + } + leaf pkt-sop-drop-uc2-cnt { + type uint64; + description + "PKT SOP DROP UC2 CNT"; + } + leaf pkt-ecc-err-drop-uc-cnt { + type uint64; + description + "PKT ECC ERR DROP UC CNT"; + } + leaf pkt-ecc-trunc-cnt-uc-cnt { + type uint64; + description + "PKT ECC TRUNC CNT UC CNT"; + } + leaf ecc-1bit-err-uc0-0-cnt { + type uint64; + description + "ECC 1BIT ERR UC0 0 CNT"; + } + leaf ecc-1bit-err-uc0-1-cnt { + type uint64; + description + "ECC 1BIT ERR UC0 1 CNT"; + } + leaf ecc-1bit-err-uc1-0-cnt { + type uint64; + description + "ECC 1BIT ERR UC1 0 CNT"; + } + leaf ecc-1bit-err-uc1-1-cnt { + type uint64; + description + "ECC 1BIT ERR UC1 1 CNT"; + } + leaf ecc-1bit-err-uc2-0-cnt { + type uint64; + description + "ECC 1BIT ERR UC2 0 CNT"; + } + leaf ecc-1bit-err-uc2-1-cnt { + type uint64; + description + "ECC 1BIT ERR UC2 1 CNT"; + } + leaf ecc-2bit-err-uc0-0-cnt { + type uint64; + description + "ECC 2BIT ERR UC0 0 CNT"; + } + leaf ecc-2bit-err-uc0-1-cnt { + type uint64; + description + "ECC 2BIT ERR UC0 1 CNT"; + } + leaf ecc-2bit-err-uc1-0-cnt { + type uint64; + description + "ECC 2BIT ERR UC1 0 CNT"; + } + leaf ecc-2bit-err-uc1-1-cnt { + type uint64; + description + "ECC 2BIT ERR UC1 1 CNT"; + } + leaf ecc-2bit-err-uc2-0-cnt { + type uint64; + description + "ECC 2BIT ERR UC2 0 CNT"; + } + leaf ecc-2bit-err-uc2-1-cnt { + type uint64; + description + "ECC 2BIT ERR UC2 1 CNT"; + } + leaf out-pkt-uc-cnt { + type uint64; + description + "OUT PKT UC CNT"; + } + leaf fe-uc-sop-eop-pack-cnt { + type uint64; + description + "FE UC SOP EOP PACK CNT"; + } + leaf fc-uc-0-1-trans-cnt { + type uint64; + description + "FC UC 0 1 TRANS CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Egress Unicast Rate"; + } + } + + grouping XBAR-EDM-SM15-PI-CC-STATS { + description + "XBAR EDM SM15 PI CC STATS"; + leaf in0-ecc-serr-cnt { + type uint64; + description + "IN0 ECC SERR CNT"; + } + leaf in0-ecc-derr-cnt { + type uint64; + description + "IN0 ECC DERR CNT"; + } + leaf in1-ecc-serr-cnt { + type uint64; + description + "IN1 ECC SERR CNT"; + } + leaf in1-ecc-derr-cnt { + type uint64; + description + "IN1 ECC DERR CNT"; + } + leaf data-mem-ecc-serr-cnt { + type uint64; + description + "DATA MEM ECC SERR CNT"; + } + leaf data-mem-ecc-derr-cnt { + type uint64; + description + "DATA MEM ECC DERR CNT"; + } + leaf data-mem-ovf0-cnt { + type uint64; + description + "DATA MEM OVF0 CNT"; + } + leaf data-mem-ovf1-cnt { + type uint64; + description + "DATA MEM OVF1 CNT"; + } + leaf fpoe-mem-ecc-serr-cnt { + type uint64; + description + "FPOE MEM ECC SERR CNT"; + } + leaf fpoe-mem-ecc-derr-cnt { + type uint64; + description + "FPOE MEM ECC DERR CNT"; + } + leaf null-poe-cnt { + type uint64; + description + "NULL POE CNT"; + } + leaf shut-ack-cnt { + type uint64; + description + "SHUT ACK CNT"; + } + leaf in0-fnc-err-cnt { + type uint64; + description + "IN0 FNC ERR CNT"; + } + leaf in1-fnc-err-cnt { + type uint64; + description + "IN1 FNC ERR CNT"; + } + leaf in0-drop-cnt { + type uint64; + description + "IN0 DROP CNT"; + } + leaf in1-drop-cnt { + type uint64; + description + "IN1 DROP CNT"; + } + leaf in0-cong-cnt { + type uint64; + description + "IN0 CONG CNT"; + } + leaf in1-cong-cnt { + type uint64; + description + "IN1 CONG CNT"; + } + leaf in0-shut-cnt { + type uint64; + description + "IN0 SHUT CNT"; + } + leaf in1-shut-cnt { + type uint64; + description + "IN1 SHUT CNT"; + } + leaf tail-drop-msg-cnt { + type uint64; + description + "TAIL DROP MSG CNT"; + } + leaf in0-pkt-cnt { + type uint64; + description + "IN0 PKT CNT"; + } + leaf in1-pkt-cnt { + type uint64; + description + "IN1 PKT CNT"; + } + leaf dmem-rd-cnt { + type uint64; + description + "DMEM RD CNT"; + } + leaf in-dmem0-cnt { + type uint64; + description + "IN DMEM0 CNT"; + } + leaf in-dmem1-cnt { + type uint64; + description + "IN DMEM1 CNT"; + } + leaf out-pkt-cnt { + type uint64; + description + "OUT PKT CNT"; + } + leaf stop-thrsh-hit-cnt { + type uint64; + description + "STOP THRSH HIT CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Ingress Control Cast Rate"; + } + } + + grouping XBAR-EDM-SM15-PI-MC-STATS { + description + "XBAR EDM SM15 PI MC STATS"; + leaf pkt-rcv-cnt { + type uint64; + description + "PKT RCV CNT"; + } + leaf pkt-seq-err-cnt { + type uint64; + description + "PKT SEQ ERR CNT"; + } + leaf in-coming-pkt-err-cnt { + type uint64; + description + "INCOMING PKT ERR CNT"; + } + leaf min-pkt-len-err-cnt { + type uint64; + description + "MIN PKT LEN ERR CNT"; + } + leaf max-pkt-len-err-cnt { + type uint64; + description + "MAX PKT LEN ERR CNT"; + } + leaf line-err-drp-pkt { + type uint64; + description + "LINE ERR DRP PKT"; + } + leaf pkt-crc-err-cnt { + type uint64; + description + "PKT CRC ERR CNT"; + } + leaf pkt-cfh-crc-err-cnt { + type uint64; + description + "PKT CFH CRC ERR CNT"; + } + leaf line-s-written-in-mem { + type uint64; + description + "LINES WRITTEN IN MEM"; + } + leaf tail-drp-pkt-cnt { + type uint64; + description + "TAIL DRP PKT CNT"; + } + leaf data-mem0-ecc-1bit-err-cnt { + type uint64; + description + "DATA MEM0 ECC 1BIT ERR CNT"; + } + leaf data-mem1-ecc-1bit-err-cnt { + type uint64; + description + "DATA MEM1 ECC 1BIT ERR CNT"; + } + leaf data-mem2-ecc-1bit-err-cnt { + type uint64; + description + "DATA MEM2 ECC 1BIT ERR CNT"; + } + leaf data-mem0-ecc-2bit-err-cnt { + type uint64; + description + "DATA MEM0 ECC 2BIT ERR CNT"; + } + leaf data-mem1-ecc-2bit-err-cnt { + type uint64; + description + "DATA MEM1 ECC 2BIT ERR CNT"; + } + leaf data-mem2-ecc-2bit-err-cnt { + type uint64; + description + "DATA MEM2 ECC 2BIT ERR CNT"; + } + leaf diag-pkt-cnt { + type uint64; + description + "DIAG PKT CNT"; + } + leaf pkt-sent-to-disabled-port { + type uint64; + description + "PKT SENT TO DISABLED PORT"; + } + leaf pkt-fpoe-match-hit-cnt { + type uint64; + description + "PKT FPOE MATCH HIT CNT"; + } + leaf pkt-null-poe-sent-cnt { + type uint64; + description + "PKT NULL POE SENT CNT"; + } + leaf pkt-fpoe-addr-rng-hit-cnt { + type uint64; + description + "PKT FPOE ADDR RNG HIT CNT"; + } + leaf di-hdr-len-err-pkt-cnt { + type uint64; + description + "DI HDR LEN ERR PKT CNT"; + } + leaf di-err-pkt-cnt { + type uint64; + description + "DI ERR PKT CNT"; + } + leaf fpoe-mem-ecc-1bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 1BIT ERR CNT"; + } + leaf fpoe-mem-ecc-2bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 2BIT ERR CNT"; + } + leaf pkts-sent-to-mx-cnt { + type uint64; + description + "PKTS SENT TO MX CNT"; + } + leaf cpp-head-drop-pkt-from-ma-cnt { + type uint64; + description + "CPP HEAD DROP PKT FROM MA CNT"; + } + leaf tr-head-drop-pkt-from-ma-cnt { + type uint64; + description + "TR HEAD DROP PKT FROM MA CNT"; + } + leaf tr-pkt-sent-to-mx { + type uint64; + description + "TR PKT SENT TO MX"; + } + leaf stop-thrsh-hit-cnt { + type uint64; + description + "STOP THRSH HIT CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Ingress Multicast Rate"; + } + leaf crc-stomp-pkt-cnt { + type uint64; + description + "CRC STOMP PKT CNT"; + } + } + + grouping XBAR-EDM-SM15-PI-UC-STATS { + description + "XBAR EDM SM15 PI UC STATS"; + leaf pkt-rcv-cnt { + type uint64; + description + "PKT RCV CNT"; + } + leaf pkt-seq-err-cnt { + type uint64; + description + "PKT SEQ ERR CNT"; + } + leaf in-coming-pkt-err-cnt { + type uint64; + description + "INCOMING PKT ERR CNT"; + } + leaf min-pkt-len-err-cnt { + type uint64; + description + "MIN PKT LEN ERR CNT"; + } + leaf max-pkt-len-err-cnt { + type uint64; + description + "MAX PKT LEN ERR CNT"; + } + leaf line-err-drp-pkt { + type uint64; + description + "LINE ERR DRP PKT"; + } + leaf pkt-crc-err-cnt { + type uint64; + description + "PKT CRC ERR CNT"; + } + leaf pkt-cfh-crc-err-cnt { + type uint64; + description + "PKT CFH CRC ERR CNT"; + } + leaf line-s-written-in-mem0 { + type uint64; + description + "LINES WRITTEN IN MEM0"; + } + leaf line-s-written-in-mem1 { + type uint64; + description + "LINES WRITTEN IN MEM1"; + } + leaf line-s-written-in-mem2 { + type uint64; + description + "LINES WRITTEN IN MEM2"; + } + leaf tail-drp-pkt-cnt { + type uint64; + description + "TAIL DRP PKT CNT"; + } + leaf uc0-data-mem-ecc-1bit-err-cnt { + type uint64; + description + "UC0 DATA MEM ECC 1BIT ERR CNT"; + } + leaf uc1-data-mem-ecc-1bit-err-cnt { + type uint64; + description + "UC1 DATA MEM ECC 1BIT ERR CNT"; + } + leaf uc2-data-mem-ecc-1bit-err-cnt { + type uint64; + description + "UC2 DATA MEM ECC 1BIT ERR CNT"; + } + leaf uc0-data-mem-ecc-2bit-err-cnt { + type uint64; + description + "UC0 DATA MEM ECC 2BIT ERR CNT"; + } + leaf uc1-data-mem-ecc-2bit-err-cnt { + type uint64; + description + "UC1 DATA MEM ECC 2BIT ERR CNT"; + } + leaf uc2-data-mem-ecc-2bit-err-cnt { + type uint64; + description + "UC2 DATA MEM ECC 2BIT ERR CNT"; + } + leaf diag-pkt-cnt { + type uint64; + description + "DIAG PKT CNT"; + } + leaf pkt-sent-to-disabled-port-cnt { + type uint64; + description + "PKT SENT TO DISABLED PORT CNT"; + } + leaf pkt-null-poe-sent-ua0-cnt { + type uint64; + description + "PKT NULL POE SENT UA0 CNT"; + } + leaf pkt-null-poe-sent-ua1-cnt { + type uint64; + description + "PKT NULL POE SENT UA1 CNT"; + } + leaf pkt-null-poe-sent-ua2-cnt { + type uint64; + description + "PKT NULL POE SENT UA2 CNT"; + } + leaf pkt-fpoe-addr-rng-hit-cnt { + type uint64; + description + "PKT FPOE ADDR RNG HIT CNT"; + } + leaf fpoe-mem-ecc-1bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 1BIT ERR CNT"; + } + leaf fpoe-mem-ecc-2bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 2BIT ERR CNT"; + } + leaf pkts-sent-to-ux0-cnt { + type uint64; + description + "PKTS SENT TO UX0 CNT"; + } + leaf pkts-sent-to-ux1-cnt { + type uint64; + description + "PKTS SENT TO UX1 CNT"; + } + leaf pkts-sent-to-ux2-cnt { + type uint64; + description + "PKTS SENT TO UX2 CNT"; + } + leaf cpp-head-drop-pkt-cnt { + type uint64; + description + "CPP HEAD DROP PKT CNT"; + } + leaf tr-head-drop-pkt-cnt { + type uint64; + description + "TR HEAD DROP PKT CNT"; + } + leaf tr-pkt-sent-to-ux { + type uint64; + description + "TR PKT SENT TO UX"; + } + leaf stop-thrsh-hit-cnt { + type uint64; + description + "STOP THRSH HIT CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Ingress Unicast Rate"; + } + leaf crc-stomp-pkt-cnt { + type uint64; + description + "CRC STOMP PKT CNT"; + } + } + + grouping XBAR-EDM-SM15-PE-STATS { + description + "XBAR EDM SM15 PE STATS"; + leaf total-rate1-cnt { + type uint64; + description + "TOTAL RATE1 CNT"; + } + leaf total-rate2-cnt { + type uint64; + description + "TOTAL RATE2 CNT"; + } + leaf total-rate3-cnt { + type uint64; + description + "TOTAL RATE3 CNT"; + } + leaf total-calc-rate { + type uint64; + description + "Egress Total Rate"; + } + leaf mc2uc-preempt-cnt { + type uint64; + description + "MC2UC PREEMPT CNT"; + } + } + + grouping XBAR-EDM-SM15-PI-STATS { + description + "XBAR EDM SM15 PI STATS"; + leaf total-rate1-cnt { + type uint64; + description + "TOTAL RATE1 CNT"; + } + leaf total-rate2-cnt { + type uint64; + description + "TOTAL RATE2 CNT"; + } + leaf total-rate3-cnt { + type uint64; + description + "TOTAL RATE3 CNT"; + } + leaf total-calc-rate { + type uint64; + description + "Ingress Total Rate"; + } + } + + grouping XBAR-EDM-SM15-CA-STATS { + description + "XBAR EDM SM15 CA STATS"; + leaf dest-drop-pkt-cnt { + type uint64; + description + "DEST DROP PKT CNT"; + } + leaf src-dest-pkt-cnt { + type uint64; + description + "SRC DEST PKT CNT"; + } + leaf dest-src-pkt-cnt { + type uint64; + description + "DEST SRC PKT CNT"; + } + leaf rcv-pkt-cnt { + type uint64; + description + "RCV PKT CNT"; + } + leaf tx-pkt-cnt { + type uint64; + description + "TX PKT CNT"; + } + leaf rx-drop-pkt-cnt { + type uint64; + description + "RX DROP PKT CNT"; + } + } + + grouping XBAR-EDM-SM15-MA-STATS { + description + "XBAR EDM SM15 MA STATS"; + leaf dest-drop-pkt-cnt { + type uint64; + description + "DEST DROP PKT CNT"; + } + leaf src-dest-pkt-cnt { + type uint64; + description + "SRC DEST PKT CNT"; + } + leaf dest-src-pkt-cnt { + type uint64; + description + "DEST SRC PKT CNT"; + } + leaf rcv-pkt-cnt { + type uint64; + description + "RCV PKT CNT"; + } + leaf tx-pkt-cnt { + type uint64; + description + "TX PKT CNT"; + } + leaf rx-drop-pkt-cnt { + type uint64; + description + "RX DROP PKT CNT"; + } + leaf rx-re-transmit-cnt { + type uint64; + description + "RX RETRANSMIT CNT"; + } + leaf rx-fabric-to-cnt { + type uint64; + description + "RX FABRIC TO CNT"; + } + leaf rx-hol-to-cnt { + type uint64; + description + "RX HOL TO CNT"; + } + } + + grouping XBAR-EDM-SM15-UA-STATS { + description + "XBAR EDM SM15 UA STATS"; + leaf dest-drop-pkt-cnt { + type uint64; + description + "DEST DROP PKT CNT"; + } + leaf src-dest-pkt-cnt { + type uint64; + description + "SRC DEST PKT CNT"; + } + leaf dest-src-pkt-cnt { + type uint64; + description + "DEST SRC PKT CNT"; + } + leaf rcv-pkt-cnt { + type uint64; + description + "RCV PKT CNT"; + } + leaf tx-pkt-cnt { + type uint64; + description + "TX PKT CNT"; + } + leaf rx-drop-pkt-cnt { + type uint64; + description + "RX DROP PKT CNT"; + } + leaf rx-fabric-to-cnt { + type uint64; + description + "RX FABRIC TO CNT"; + } + leaf ack-wait-cnt { + type uint64; + description + "ACK WAIT CNT"; + } + } + + grouping XBAR-EDM-SM15-PORT-STATS { + description + "XBAR EDM SM15 PORT STATS"; + container ua0-stats { + description + "Unicast Arbiter0 stats"; + uses XBAR-EDM-SM15-UA-STATS; + } + container ua1-stats { + description + "Unicast Arbiter1 stats"; + uses XBAR-EDM-SM15-UA-STATS; + } + container ua2-stats { + description + "Unicast Arbiter2 stats"; + uses XBAR-EDM-SM15-UA-STATS; + } + container ma-stats { + description + "Multicast Arbiter stats"; + uses XBAR-EDM-SM15-MA-STATS; + } + container ca-stats { + description + "Control Cast stats"; + uses XBAR-EDM-SM15-CA-STATS; + } + container pi-stats { + description + "Port Ingress stats"; + uses XBAR-EDM-SM15-PI-STATS; + } + container pe-stats { + description + "Port Egress stats"; + uses XBAR-EDM-SM15-PE-STATS; + } + container pi-uc-stats { + description + "Ingress Unicast stats"; + uses XBAR-EDM-SM15-PI-UC-STATS; + } + container pi-mc-stats { + description + "Ingress Multicast stats"; + uses XBAR-EDM-SM15-PI-MC-STATS; + } + container pi-cc-stats { + description + "Ingress Control Cast stats"; + uses XBAR-EDM-SM15-PI-CC-STATS; + } + container pe-uc-stats { + description + "Egress Unicast stats"; + uses XBAR-EDM-SM15-PE-UC-STATS; + } + container pe-mc-stats { + description + "Egress Multicast stats"; + uses XBAR-EDM-SM15-PE-MC-STATS; + } + container pe-cc-stats { + description + "Egress Control Cast stats"; + uses XBAR-EDM-SM15-PE-CC-STATS; + } + leaf internal-err-cnt { + type uint64; + description + "Internal Error Count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2.yang new file mode 100644 index 000000000..14db3264f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2.yang @@ -0,0 +1,778 @@ +submodule Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2 { + belongs-to Cisco-IOS-XR-asr9k-fc-xbar-oper { + prefix Cisco-IOS-XR-asr9k-fc-xbar-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-fc-xbar package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping XBAR-EDM-SKB-XPS-STATS { + description + "XBAR EDM SKB XPS STATS"; + leaf uc-timer-drop { + type uint64; + description + "UC TIMERDROP"; + } + leaf uc-timer-truncate { + type uint64; + description + "UC TIMERTRUNCATE"; + } + leaf mc-timer-drop { + type uint64; + description + "MC TIMERDROP"; + } + leaf mc-timer-truncate { + type uint64; + description + "MC TIMERTRUNCATE"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-MISC-STATS { + description + "XBAR EDM SKB CFL EG MISC STATS"; + leaf ecc-corr-err { + type uint64; + description + "ECC CORR ERR"; + } + leaf ecc-uncorr-err { + type uint64; + description + "ECC UNCORR ERR"; + } + leaf ecc-raw-corr-err { + type uint64; + description + "ECC RAW CORR ERR"; + } + leaf ecc-raw-uncorr-err { + type uint64; + description + "ECC RAW UNCORR ERR"; + } + leaf eg-total-rate { + type uint64; + description + "Egress CFL Total Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-MC-STATS { + description + "XBAR EDM SKB CFL EG MC STATS"; + leaf pkts-truncated { + type uint64; + description + "PKTS TRUNCATED"; + } + leaf pkts-from-ob-to-port { + type uint64; + description + "PKTS FROM OB TO PORT"; + } + leaf eg-mc-rate { + type uint64; + description + "Egress CFL Multicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-UC-STATS { + description + "XBAR EDM SKB CFL EG UC STATS"; + leaf pkts-truncated { + type uint64; + description + "PKTS TRUNCATED"; + } + leaf pkts-from-ob-to-port { + type uint64; + description + "PKTS FROM OB TO PORT"; + } + leaf eg-uc-rate { + type uint64; + description + "Egress CFL Unicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-STATS { + description + "XBAR EDM SKB CFL EG STATS"; + container cfl-uc-stats { + description + "Egress CFL Unicast Stats"; + uses XBAR-EDM-SKB-CFL-EG-UC-STATS; + } + container cfl-mc-stats { + description + "Egress CFL Multicast Stats"; + uses XBAR-EDM-SKB-CFL-EG-MC-STATS; + } + container cfl-misc-stats { + description + "Egress CFL Miscellaneous Stats"; + uses XBAR-EDM-SKB-CFL-EG-MISC-STATS; + } + } + + grouping XBAR-EDM-SKB-OBU-MC-STATS { + description + "XBAR EDM SKB OBU MC STATS"; + leaf pktin { + type uint64; + description + "PKTIN"; + } + leaf pktout { + type uint64; + description + "PKTOUT"; + } + leaf bytein { + type uint64; + description + "BYTEIN"; + } + leaf byteout { + type uint64; + description + "BYTEOUT"; + } + leaf pkttrunc { + type uint64; + description + "PKTTRUNC"; + } + } + + grouping XBAR-EDM-SKB-OBU-UC-STATS { + description + "XBAR EDM SKB OBU UC STATS"; + leaf pktin { + type uint64; + description + "PKTIN"; + } + leaf pktout { + type uint64; + description + "PKTOUT"; + } + leaf bytein { + type uint64; + description + "BYTEIN"; + } + leaf byteout { + type uint64; + description + "BYTEOUT"; + } + leaf pkttrunc { + type uint64; + description + "PKTTRUNC"; + } + } + + grouping XBAR-EDM-SKB-OBU-STATS { + description + "XBAR EDM SKB OBU STATS"; + list data-queque { + max-elements "24"; + description + "Output Buffer Data Queue Queue Count"; + leaf entry { + type uint32; + description + "Output Buffer Data Queue Queue Count"; + } + } + } + + grouping XBAR-EDM-SKB-EG-STATS { + description + "XBAR EDM SKB EG STATS"; + container obu-stats { + description + "Output Buffer Stats"; + uses XBAR-EDM-SKB-OBU-STATS; + } + container obu-uc-stats { + description + "Output Buffer UC Stats"; + uses XBAR-EDM-SKB-OBU-UC-STATS; + } + container obu-mc-stats { + description + "Output Buffer MC Stats"; + uses XBAR-EDM-SKB-OBU-MC-STATS; + } + container cfl-stats { + description + "Egress Common Fabric Link Stats"; + uses XBAR-EDM-SKB-CFL-EG-STATS; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-MISC-STATS { + description + "XBAR EDM SKB CFL IN MISC STATS"; + leaf crc-stomp { + type uint64; + description + "CRC STOMP"; + } + leaf crc-new-err { + type uint64; + description + "CRC NEW ERR"; + } + leaf in-total-rate { + type uint64; + description + "Ingress CFL Total Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-MC-STATS { + description + "XBAR EDM SKB CFL IN MC STATS"; + leaf crc-match-pattern { + type uint64; + description + "CRC MATCH PATTERN"; + } + leaf pkts-rcvd { + type uint64; + description + "PKTS RCVD"; + } + leaf packed-pkts-rcvd { + type uint64; + description + "PACKED PKTS RCVD"; + } + leaf pkts-flushed { + type uint64; + description + "PKTS FLUSHED"; + } + leaf runt-pkts-drop-ped { + type uint64; + description + "RUNT PKTS DROPPED"; + } + leaf small-pkts-drop-ped { + type uint64; + description + "SMALL PKTS DROPPED"; + } + leaf pkts-to-ib-from-port { + type uint64; + description + "PKTS TO IB FROM PORT"; + } + leaf in-mc-rate { + type uint64; + description + "Ingress CFL Multicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-UC-STATS { + description + "XBAR EDM SKB CFL IN UC STATS"; + leaf crc-match-pattern { + type uint64; + description + "CRC MATCH PATTERN"; + } + leaf pkts-rcvd { + type uint64; + description + "PKTS RCVD"; + } + leaf packed-pkts-rcvd { + type uint64; + description + "PACKED PKTS RCVD"; + } + leaf pkts-flushed { + type uint64; + description + "PKTS FLUSHED"; + } + leaf runt-pkts-drop-ped { + type uint64; + description + "RUNT PKTS DROPPED"; + } + leaf small-pkts-drop-ped { + type uint64; + description + "SMALL PKTS DROPPED"; + } + leaf pkts-to-ib-from-port { + type uint64; + description + "PKTS TO IB FROM PORT"; + } + leaf in-uc-rate { + type uint64; + description + "Ingress CFL Unicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-STATS { + description + "XBAR EDM SKB CFL IN STATS"; + container cfl-uc-stats { + description + "Ingress CFL Unicast Stats"; + uses XBAR-EDM-SKB-CFL-IN-UC-STATS; + } + container cfl-mc-stats { + description + "Ingress CFL Multicast Stats"; + uses XBAR-EDM-SKB-CFL-IN-MC-STATS; + } + container cfl-misc-stats { + description + "Ingress CFL Miscellaneous Stats"; + uses XBAR-EDM-SKB-CFL-IN-MISC-STATS; + } + } + + grouping XBAR-EDM-SKB-IBF-MC-STATS { + description + "XBAR EDM SKB IBF MC STATS"; + leaf pktcnt { + type uint64; + description + "PKTCNT"; + } + leaf pktoutcnt { + type uint64; + description + "PKTOUTCNT"; + } + leaf pkthi-copy-sup-event { + type uint64; + description + "PKTHICOPYSUPEVENT"; + } + leaf pktlo-copy-sup-event { + type uint64; + description + "PKTLOCOPYSUPEVENT"; + } + leaf pkt-input-err-drop { + type uint64; + description + "PKTINPUTERRDROP"; + } + leaf pktfgid-addr-err-drop { + type uint64; + description + "PKTFGIDADDRERRDROP"; + } + leaf pktfgidlkuperr-drop { + type uint64; + description + "PKTFGIDLKUPERRDROP"; + } + leaf pkt-null-poe-drop { + type uint64; + description + "PKTNULLPOEDROP"; + } + leaf pkt-copy-sup-drop { + type uint64; + description + "PKTCOPYSUPDROP"; + } + leaf pkt-disp-oe-drop { + type uint64; + description + "PKTDISPOEDROP"; + } + leaf pktto-drop-cnt { + type uint64; + description + "PKTTODROPCNT"; + } + } + + grouping XBAR-EDM-SKB-IBB-MC-STATS { + description + "XBAR EDM SKB IBB MC STATS"; + leaf ipc-data-tot { + type uint64; + description + "IPCDATATOT"; + } + leaf ipc-data-totsz { + type uint64; + description + "IPCDATATOTSZ"; + } + leaf ipcrunt { + type uint64; + description + "IPCRUNT"; + } + leaf ipcgiant { + type uint64; + description + "IPCGIANT"; + } + leaf ipc-data-err { + type uint64; + description + "IPCDATAERR"; + } + leaf ipclinkerr { + type uint64; + description + "IPCLINKERR"; + } + leaf ipcptcerr { + type uint64; + description + "IPCPTCERR"; + } + leaf ipcpkt-drop { + type uint64; + description + "IPCPKTDROP"; + } + leaf ipcdes-drop { + type uint64; + description + "IPCDESDROP"; + } + leaf dhehitail-drop { + type uint64; + description + "DHEHITAILDROP"; + } + leaf dhelotail-drop { + type uint64; + description + "DHELOTAILDROP"; + } + leaf ibmoutsop { + type uint64; + description + "IBMOUTSOP"; + } + leaf ibmouteop { + type uint64; + description + "IBMOUTEOP"; + } + leaf ibmoutbyte { + type uint64; + description + "IBMOUTBYTE"; + } + leaf icmenq { + type uint64; + description + "ICMENQ"; + } + leaf icmdeq { + type uint64; + description + "ICMDEQ"; + } + leaf icmfcxoff { + type uint64; + description + "ICMFCXOFF"; + } + leaf icmfcxon { + type uint64; + description + "ICMFCXON"; + } + } + + grouping XBAR-EDM-SKB-IBF-UC-STATS { + description + "XBAR EDM SKB IBF UC STATS"; + leaf pktcnt { + type uint64; + description + "PKTCNT"; + } + leaf pktoutp0cnt { + type uint64; + description + "PKTOUTP0CNT"; + } + leaf pktoutp1cnt { + type uint64; + description + "PKTOUTP1CNT"; + } + leaf pkt-input-err-drop { + type uint64; + description + "PKTINPUTERRDROP"; + } + leaf pkthwerr-drop { + type uint64; + description + "PKTHWERRDROP"; + } + leaf pkt-null-poe-drop { + type uint64; + description + "PKTNULLPOEDROP"; + } + leaf pkt-disp-oe-drop { + type uint64; + description + "PKTDISPOEDROP"; + } + } + + grouping XBAR-EDM-SKB-IBB-UC-STATS { + description + "XBAR EDM SKB IBB UC STATS"; + leaf ipc-data-tot { + type uint64; + description + "IPCDATATOT"; + } + leaf ipc-data-totsz { + type uint64; + description + "IPCDATATOTSZ"; + } + leaf ipcrunt { + type uint64; + description + "IPCRUNT"; + } + leaf ipcgiant { + type uint64; + description + "IPCGIANT"; + } + leaf ipc-data-err { + type uint64; + description + "IPCDATAERR"; + } + leaf ipclinkerr { + type uint64; + description + "IPCLINKERR"; + } + leaf ipcptcerr { + type uint64; + description + "IPCPTCERR"; + } + leaf ipcpkt-drop { + type uint64; + description + "IPCPKTDROP"; + } + leaf ipcdes-drop { + type uint64; + description + "IPCDESDROP"; + } + leaf dhetail-drop { + type uint64; + description + "DHETAILDROP"; + } + leaf ibmoutsop { + type uint64; + description + "IBMOUTSOP"; + } + leaf ibmouteop { + type uint64; + description + "IBMOUTEOP"; + } + leaf ibmoutbyte { + type uint64; + description + "IBMOUTBYTE"; + } + leaf icmenq { + type uint64; + description + "ICMENQ"; + } + leaf icmdeq { + type uint64; + description + "ICMDEQ"; + } + leaf icmfcxoff { + type uint64; + description + "ICMFCXOFF"; + } + leaf icmfcxon { + type uint64; + description + "ICMFCXON"; + } + } + + grouping XBAR-EDM-SKB-IBF-STATS { + description + "XBAR EDM SKB IBF STATS"; + leaf unused { + type uint64; + description + "Ingress Unused Counter"; + } + } + + grouping XBAR-EDM-SKB-IBB-STATS { + description + "XBAR EDM SKB IBB STATS"; + leaf ipcicmtail-drop { + type uint64; + description + "IPCICMTAILDROP"; + } + leaf dhe-diag-pkt { + type uint64; + description + "DHEDIAGPKT"; + } + leaf ibmdnouttot { + type uint64; + description + "IBMDNOUTTOT"; + } + leaf icmdnenq { + type uint64; + description + "ICMDNENQ"; + } + leaf icmdndeq { + type uint64; + description + "ICMDNDEQ"; + } + leaf ibmcsrccouttot { + type uint64; + description + "IBMCSRCCOUTTOT"; + } + } + + grouping XBAR-EDM-SKB-IN-STATS { + description + "XBAR EDM SKB IN STATS"; + container ibb-stats { + description + "Input Buffer Block Stats"; + uses XBAR-EDM-SKB-IBB-STATS; + } + container ibf-stats { + description + "Input Forwarding Block Stats"; + uses XBAR-EDM-SKB-IBF-STATS; + } + container ibb-uc-stats { + description + "Input Buffer Block UC Stats"; + uses XBAR-EDM-SKB-IBB-UC-STATS; + } + container ibf-uc-stats { + description + "Input Forwarding Block UC Stats"; + uses XBAR-EDM-SKB-IBF-UC-STATS; + } + container ibb-mc-stats { + description + "Input Buffer Block MC Stats"; + uses XBAR-EDM-SKB-IBB-MC-STATS; + } + container ibf-mc-stats { + description + "Input Forwarding Block MC Stats"; + uses XBAR-EDM-SKB-IBF-MC-STATS; + } + container cfl-stats { + description + "Ingress Common Fabric Link Stats"; + uses XBAR-EDM-SKB-CFL-IN-STATS; + } + } + + grouping XBAR-EDM-SKB-PORT-STATS { + description + "XBAR EDM SKB PORT STATS"; + container in-stats { + description + "Ingress Stats"; + uses XBAR-EDM-SKB-IN-STATS; + } + container eg-stats { + description + "Egress Stats"; + uses XBAR-EDM-SKB-EG-STATS; + } + container xps-stats { + description + "Crosspoint Scheduler Stats"; + uses XBAR-EDM-SKB-XPS-STATS; + } + leaf internal-err-cnt { + type uint64; + description + "Internal Error Count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3.yang new file mode 100644 index 000000000..9522a40c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3.yang @@ -0,0 +1,60 @@ +submodule Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3 { + belongs-to Cisco-IOS-XR-asr9k-fc-xbar-oper { + prefix Cisco-IOS-XR-asr9k-fc-xbar-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-fc-xbar package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping BANDWIDTH-UTILS { + description + "BANDWIDTH UTILS"; + leaf-list bandwidth-util { + type uint64; + max-elements "6"; + description + "bandwidth util"; + } + } + + grouping XBAR-EDM-BANDWIDTH-UTILS { + description + "XBAR EDM BANDWIDTH UTILS"; + list port { + max-elements "20"; + description + "port"; + uses BANDWIDTH-UTILS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper.yang new file mode 100644 index 000000000..2290ec40e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fc-xbar-oper.yang @@ -0,0 +1,124 @@ +module Cisco-IOS-XR-asr9k-fc-xbar-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-fc-xbar-oper"; + prefix asr9k-fc-xbar-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-fc-xbar-oper-sub3 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-asr9k-fc-xbar-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-asr9k-fc-xbar-oper-sub1 { + revision-date 2019-04-05; + } + + 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 asr9k-fc-xbar package operational data. + + This module contains definitions + for the following management objects: + cross-bar-spine-stats: Crossbar stats operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cross-bar-spine-stats { + config false; + description + "Crossbar stats operational data"; + list spine-table { + key "spine-num"; + description + "Table of stats information for FC cards"; + container bandwidth-utils-stats { + description + "Table of packet stats for Bandwidth Utils"; + list bandwidth-utils-stat { + key "asic-id"; + description + "Stats information for Bandwidth Utils Counter"; + leaf asic-id { + type xr:Cisco-ios-xr-string; + description + "Asic ID"; + } + uses XBAR-EDM-BANDWIDTH-UTILS; + } + } + container skb-stats { + description + "Table of packet stats for SKB"; + list skb-stat { + description + "Stats information for a particular asic type + and port"; + leaf asic-id { + type xr:Cisco-ios-xr-string; + description + "Asic ID"; + } + leaf port { + type xr:Cisco-ios-xr-string; + description + "Port"; + } + uses XBAR-EDM-SKB-PORT-STATS; + } + } + container sm15-stats { + description + "Table of packet stats for SM15"; + list sm15-stat { + description + "Stats information for a particular asic type + and port"; + leaf asic-id { + type xr:Cisco-ios-xr-string; + description + "Asic ID"; + } + leaf port { + type xr:Cisco-ios-xr-string; + description + "Port"; + } + uses XBAR-EDM-SM15-PORT-STATS; + } + } + leaf spine-num { + type xr:Cisco-ios-xr-string; + description + "Name of the Spine xbar_spX"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fia-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fia-cfg.yang new file mode 100644 index 000000000..77aaf149e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fia-cfg.yang @@ -0,0 +1,124 @@ +module Cisco-IOS-XR-asr9k-fia-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-fia-cfg"; + prefix asr9k-fia-cfg; + + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + 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 asr9k-fia package configuration. + + This module contains definitions + for the following management objects: + fabric-fia-config: Configure Global Fabric Fia Settings + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-08-17 { + description + "IOS XR 6.4.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container fia-buffer-profile-cfg { + description + "Fia Buffer Profile configuration"; + leaf xl { + type boolean; + description + "Enable to use Extra large Buffer profile"; + } + } + container fia-vqi-shaper-cfg { + description + "Fia VQI Shaper configuration"; + leaf enhance { + type boolean; + description + "Enable to use Enhanced VQI shaper limit"; + } + } + container port-queue-remaps { + description + "Remap front panel port to fabric queue for + A9K-48X10GE-1G-xx and A9K-24X10GE-1G-xx "; + list port-queue-remap { + key "port"; + description + "Front panel port number"; + leaf fabric-queue { + type uint32 { + range "0..19"; + } + description + "queue number <0-19>"; + } + leaf port { + type uint32 { + range "0..47"; + } + description + "port number <10,11,22,23 34,35,46,47>"; + } + } + } + } + + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } + container fabric-fia-config { + description + "Configure Global Fabric Fia Settings"; + container fia-intf-policer { + description + "FIA interface rate-limiter on 7-Fabric LC"; + leaf disable { + type boolean; + description + "disable FIA interface policer "; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper-sub1.yang new file mode 100644 index 000000000..2e45c97b4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper-sub1.yang @@ -0,0 +1,97 @@ +submodule Cisco-IOS-XR-asr9k-fsi-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-fsi-oper { + prefix Cisco-IOS-XR-asr9k-fsi-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-fsi package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-09 { + description + "Add support to FabricStats to query stats by the counter-name"; + semver:module-version "2.0.0"; + } + revision 2020-02-14 { + description + "Support for generic show counters"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FSI-SHOW-COUNTER-STATS { + description + "Bag containing fsi stats"; + leaf count { + type uint64; + description + "Counter"; + } + leaf counter-name { + type string; + description + "Counter Name"; + } + } + + grouping FSI-GENERIC-SHOW-COUNTER { + description + "Structure containing counter info"; + leaf count { + type uint64; + description + "Counter"; + } + leaf counter-name { + type string; + description + "Counter Name"; + } + } + + grouping FSI-SHOW-GENERIC-STATS { + description + "Bag containing fsi stats"; + leaf last-clear-time { + type uint64; + description + "Last Clear Time"; + } + leaf stat-table-name { + type string; + description + "Stat Table Name"; + } + list stats-table { + description + "Array of counters "; + uses FSI-GENERIC-SHOW-COUNTER; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper.yang new file mode 100644 index 000000000..84e8985e7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-fsi-oper.yang @@ -0,0 +1,117 @@ +module Cisco-IOS-XR-asr9k-fsi-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-fsi-oper"; + prefix asr9k-fsi-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-fsi-oper-sub1 { + revision-date 2021-07-09; + } + + 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 asr9k-fsi package operational data. + + This module contains definitions + for the following management objects: + fabric-stats: Fabric stats operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-09 { + description + "Add support to FabricStats to query stats by the counter-name"; + semver:module-version "2.0.0"; + } + revision 2020-02-14 { + description + "Support for generic show counters"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fabric-stats { + config false; + description + "Fabric stats operational data"; + container nodes { + description + "Table of Nodes"; + list node { + key "node-name"; + description + "Information about a particular node"; + container statses { + description + "Table of stats information"; + list stats { + key "type"; + description + "Stats information for a particular type"; + container stats-array { + description + "Stats information for a particular counter + type"; + uses FSI-SHOW-GENERIC-STATS; + } + container counter-names { + description + "Counter List information for a particular + Stats "; + list counter-name { + key "type"; + description + "Counter Name from the list counters"; + container counter { + description + "Counter information for a particular + counter name"; + uses FSI-SHOW-COUNTER-STATS; + } + leaf type { + type xr:Cisco-ios-xr-string; + description + "Counter asic type"; + } + } + } + leaf type { + type xr:Cisco-ios-xr-string; + description + "Fabric asic type"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-breakout-port-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-breakout-port-cfg.yang new file mode 100644 index 000000000..977134fb5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-breakout-port-cfg.yang @@ -0,0 +1,153 @@ +module Cisco-IOS-XR-asr9k-lc-breakout-port-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lc-breakout-port-cfg"; + prefix asr9k-lc-breakout-port-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 asr9k-lc-breakout-port package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-10 { + description + "Added/modified to support HundredGigE interfaces."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hw-module-breakout-if { + type enumeration { + enum "1x-hundred-gig-e" { + value 0; + description + "1xHundredGigE interfaces"; + } + enum "10x-ten-gig-e" { + value 1; + description + "TenGigE interfaces"; + } + enum "2x-forty-gig-e" { + value 2; + description + "FortyGigE interfaces"; + } + enum "1x-forty-gig-e" { + value 3; + description + "FortyGigE interfaces"; + } + enum "4x-ten-gig-e" { + value 4; + description + "TenGigE interfaces"; + } + enum "4x-twenty-five-gig-e" { + value 5; + description + "TwentyFiveGigE interfaces"; + } + enum "1x-four-hundred-gig-e" { + value 6; + description + "FourHundredGigE interfaces"; + } + enum "8x-fifty-gig-e" { + value 7; + description + "FiftyGigE interfaces"; + } + enum "4x-hundred-gig-e" { + value 8; + description + "4xHundredGigE interfaces"; + } + enum "2x-hundred-gig-e" { + value 9; + description + "2xHundredGigE interfaces"; + } + enum "3x-hundred-gig-e" { + value 11; + description + "3xHundredGigE interfaces"; + } + } + description + "Hw module breakout if"; + } + + grouping HARDWARE-MODULE-BREAKOUT { + description + "Common node of active-node, preconfigured-node"; + container hardware-module-breakout { + description + "HW module breakout config"; + container ports { + description + "Optics port configuration"; + list port { + key "port-number"; + description + "Optics port number"; + leaf iftype { + type Hw-module-breakout-if; + description + "Breakout iftype"; + } + leaf port-number { + type uint32 { + range "0..21"; + } + description + "Optics port number"; + } + } + } + } + } + + augment "/a1:preconfigured-nodes/a1:preconfigured-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HARDWARE-MODULE-BREAKOUT; + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HARDWARE-MODULE-BREAKOUT; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-configmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-configmode-cfg.yang new file mode 100644 index 000000000..b3db4bb8a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-configmode-cfg.yang @@ -0,0 +1,92 @@ +module Cisco-IOS-XR-asr9k-lc-configmode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lc-configmode-cfg"; + prefix asr9k-lc-configmode-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 asr9k-lc-configmode package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-28 { + description + "Added/modified to support port mode config through yang model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping HARDWARE-MODULE-CONFIG-MODE { + description + "Common node of active-node, preconfigured-node"; + container hardware-module-config-mode { + description + "HW module config-mode config"; + container slices { + description + "slice configuration"; + list slice { + key "slice-number"; + description + "Slice number"; + leaf if-config-mode { + type string; + description + "Linecard interface config-mode"; + } + leaf slice-number { + type xr:Cisco-ios-xr-string; + description + "Slice number"; + } + } + } + } + } + + augment "/a1:preconfigured-nodes/a1:preconfigured-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HARDWARE-MODULE-CONFIG-MODE; + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HARDWARE-MODULE-CONFIG-MODE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg.yang new file mode 100644 index 000000000..64452d996 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg.yang @@ -0,0 +1,181 @@ +module Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lc-ep-breakout-port-cfg"; + prefix asr9k-lc-ep-breakout-port-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 asr9k-lc-ep-breakout-port package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-29 { + description + "Added 5xGigE-5xTenGigE to list of interfaces. + 2021-08-25 + Added support for EP breakout bay port config through yang model."; + semver:module-version "1.2.0"; + } + revision 2021-08-18 { + description + "Added support for EP breakout bay port config through yang model."; + semver:module-version "1.1.0"; + } + revision 2020-08-25 { + description + "Added support for EP breakout bay port config through yang model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hw-module-ep-breakout-if { + type enumeration { + enum "1x-hundred-gig-e" { + value 0; + description + "HundredGigE interfaces"; + } + enum "10x-ten-gig-e" { + value 1; + description + "TenGigE interfaces"; + } + enum "2x-forty-gig-e" { + value 2; + description + "FortyGigE interfaces"; + } + enum "1x-forty-gig-e" { + value 3; + description + "FortyGigE interfaces"; + } + enum "4x-ten-gig-e" { + value 4; + description + "TenGigE interfaces"; + } + enum "4x-twenty-five-gig-e" { + value 5; + description + "TwentyFiveGigE interfaces"; + } + enum "1x-four-hundred-gig-e" { + value 6; + description + "FourHundredGigE interfaces"; + } + enum "8x-fifty-gig-e" { + value 7; + description + "FiftyGigE interfaces"; + } + enum "4x-hundred-gig-e" { + value 8; + description + "4xHundredGigE interfaces"; + } + enum "2x-hundred-gig-e" { + value 9; + description + "2xHundredGigE interfaces"; + } + enum "5x-gig-e-5x-ten-gig-e" { + value 10; + description + "5xGigE-5xTenGigE interfaces"; + } + } + description + "Hw module ep breakout if"; + } + + grouping HW-MODULE-EP-BREAKOUT { + description + "Common node of active-node, preconfigured-node"; + container hw-module-ep-breakout { + description + "HW module EP breakout config"; + container bays { + description + "configuration for EP bay number"; + list bay { + key "bay-number"; + description + "EP Bay number"; + container ports { + description + "Optics port configuration"; + list port { + key "port-number"; + description + "Optics port number"; + leaf iftype { + type Hw-module-ep-breakout-if; + description + "EP Breakout iftype"; + } + leaf port-number { + type uint32 { + range "0..19"; + } + description + "Optics port number"; + } + } + } + leaf bay-number { + type uint32 { + range "0..1"; + } + description + "bay number"; + } + } + } + } + } + + augment "/a1:preconfigured-nodes/a1:preconfigured-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HW-MODULE-EP-BREAKOUT; + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HW-MODULE-EP-BREAKOUT; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-cfg.yang new file mode 100644 index 000000000..cbfe3c4d7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-cfg.yang @@ -0,0 +1,128 @@ +module Cisco-IOS-XR-asr9k-lc-ethctrl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lc-ethctrl-cfg"; + prefix asr9k-lc-ethctrl-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 asr9k-lc-ethctrl package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ether-ctrl-transport-mode { + type enumeration { + enum "wan" { + value 1; + description + "WAN"; + } + enum "otnopu1e" { + value 2; + description + "OTNOPUle"; + } + enum "otnopu2e" { + value 3; + description + "OTNOPU2e"; + } + } + description + "Ether ctrl transport mode"; + } + + typedef Permit-pluggable-pid { + type enumeration { + enum "all" { + value 1; + description + "ALL PIDs"; + } + } + description + "Permit pluggable pid"; + } + + typedef Permit-pluggable { + type enumeration { + enum "all" { + value 1; + description + "ALL types"; + } + } + description + "Permit pluggable"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ethernet-control { + description + "EthernetControl"; + container transceiver { + description + "Transceiver"; + container permit { + description + "Permit"; + leaf type { + type Permit-pluggable; + description + "Permit pluggable type all"; + } + leaf pid { + type Permit-pluggable-pid; + description + "Permit pluggable PID (Product ID) all"; + } + } + } + leaf transport-mode { + type Ether-ctrl-transport-mode; + description + "Set the transport mode on an interface"; + } + leaf small-frame-padding { + type empty; + description + "Enable small frame padding on an interface"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1.yang new file mode 100644 index 000000000..327f1ed96 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1.yang @@ -0,0 +1,445 @@ +submodule Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-lc-ethctrl-oper { + prefix Cisco-IOS-XR-asr9k-lc-ethctrl-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-lc-ethctrl package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MLAN-ATU { + description + "MLAN ATU"; + leaf db-num { + type uint16; + description + "dbNum"; + } + leaf priority { + type uint8; + description + "priority"; + } + leaf trunk { + type boolean; + description + "trunk"; + } + leaf dpv { + type uint8; + description + "dpv"; + } + leaf es { + type uint8; + description + "es"; + } + list macaddr { + max-elements "3"; + description + "macaddr"; + leaf entry { + type uint16; + description + "macaddr"; + } + } + } + + grouping MLAN-SWITCH-ATU-DATA { + description + ""; + container atu { + description + "Switch ATU Data"; + uses MLAN-ATU; + } + leaf entry-num { + type uint32; + description + "Index of ATU Entry"; + } + } + + grouping MLAN-PORT-COUNTER { + description + "MLAN PORT COUNTER"; + leaf in-good-octets-hi { + type uint32; + description + "inGoodOctets hi"; + } + leaf in-good-octets { + type uint32; + description + "inGoodOctets"; + } + leaf in-bad-octets { + type uint32; + description + "inBadOctets"; + } + leaf in-unicast-pkt { + type uint32; + description + "inUnicastPkt"; + } + leaf in-bcast-pkt { + type uint32; + description + "inBcastPkt"; + } + leaf in-mcast-pkt { + type uint32; + description + "inMcastPkt"; + } + leaf in-pause-pkt { + type uint32; + description + "inPausePkt"; + } + leaf in-undersize-pkt { + type uint32; + description + "inUndersizePkt"; + } + leaf in-fragments { + type uint32; + description + "inFragments"; + } + leaf in-oversize { + type uint32; + description + "inOversize"; + } + leaf in-jabber { + type uint32; + description + "inJabber"; + } + leaf in-rx-err { + type uint32; + description + "inRxErr"; + } + leaf in-fcs-err { + type uint32; + description + "inFcsErr"; + } + leaf out-octets-hi { + type uint32; + description + "outOctets hi"; + } + leaf out-octets { + type uint32; + description + "outOctets"; + } + leaf out-unicast-pkt { + type uint32; + description + "outUnicastPkt"; + } + leaf out-bcast-pkt { + type uint32; + description + "outBcastPkt"; + } + leaf out-mcast-pkt { + type uint32; + description + "outMcastPkt"; + } + leaf out-pause-pkt { + type uint32; + description + "outPausePkt"; + } + leaf excessive { + type uint32; + description + "excessive"; + } + leaf collisions { + type uint32; + description + "collisions"; + } + leaf deferred { + type uint32; + description + "deferred"; + } + leaf single { + type uint32; + description + "single"; + } + leaf multiple { + type uint32; + description + "multiple"; + } + leaf out-fcs-err { + type uint32; + description + "outFcsErr"; + } + leaf late { + type uint32; + description + "late"; + } + leaf rx-tx-64-octets { + type uint32; + description + "rx tx 64 Octets"; + } + leaf rx-tx-65-127-octets { + type uint32; + description + "rx tx 65 127 Octets"; + } + leaf rx-tx-128-255-octets { + type uint32; + description + "rx tx 128 255 Octets"; + } + leaf rx-tx-256-511-octets { + type uint32; + description + "rx tx 256 511 Octets"; + } + leaf rx-tx-512-1023-octets { + type uint32; + description + "rx tx 512 1023 Octets"; + } + leaf rx-tx-1024-max-octets { + type uint32; + description + "rx tx 1024 Max Octets"; + } + leaf in-discards { + type uint32; + description + "inDiscards"; + } + leaf in-filtered { + type uint32; + description + "inFiltered"; + } + leaf out-filtered { + type uint32; + description + "outFiltered"; + } + } + + grouping MLAN-PORT-COUNTERS { + description + ""; + container mlan-stats { + description + "Switch Port Statistics"; + uses MLAN-PORT-COUNTER; + } + leaf port-num { + type uint32; + description + "Port Number"; + } + } + + grouping MLAN-SWITCH-STATUS { + description + "MLAN SWITCH STATUS"; + leaf ppu { + type uint32; + description + "ppu"; + } + leaf mtu { + type uint32; + description + "mtu"; + } + leaf mac { + type string { + length "0..6"; + } + description + "mac"; + } + leaf cpu-port { + type uint16; + description + "cpu port"; + } + leaf cpu-mac { + type uint16; + description + "cpu mac"; + } + leaf initialized { + type uint16; + description + "initialized"; + } + leaf restarted { + type uint16; + description + "restarted"; + } + } + + grouping MLAN-SWITCH-STATUS-DATA { + description + ""; + container sw-reg-1 { + description + "Switch Global Registers"; + uses MLAN-SWITCH-REG-BANK; + } + container sw-reg-2 { + description + "Switch Global Registers"; + uses MLAN-SWITCH-REG-BANK; + } + container sw-status { + description + "Switch Status Data"; + uses MLAN-SWITCH-STATUS; + } + leaf rate-limit { + type int32; + description + "CPU Interface Rate Limit"; + } + } + + grouping MLAN-SWITCH-REG-BANK { + description + "MLAN SWITCH REG BANK"; + list reg { + max-elements "32"; + description + "reg"; + leaf entry { + type uint16; + description + "reg"; + } + } + } + + grouping MLAN-PORT-CONFIG { + description + "MLAN PORT CONFIG"; + leaf speed { + type uint32; + description + "speed"; + } + leaf duplex { + type uint32; + description + "duplex"; + } + leaf pause { + type uint16; + description + "pauseEn"; + } + leaf my-pause { + type uint16; + description + "myPause"; + } + leaf loopback { + type uint32; + description + "loopback"; + } + } + + grouping MLAN-PORT-STATUS { + description + ""; + container config { + description + "Configuration Data"; + uses MLAN-PORT-CONFIG; + } + container phy { + description + "PHY Registers"; + uses MLAN-SWITCH-REG-BANK; + } + container serdes { + description + "SERDES Registers"; + uses MLAN-SWITCH-REG-BANK; + } + container mac { + description + "MAC Registers"; + uses MLAN-SWITCH-REG-BANK; + } + leaf port-num { + type uint32; + description + "Port Number"; + } + leaf phy-valid { + type uint32; + description + "PHY data valid"; + } + leaf serdes-valid { + type uint32; + description + "SERDES data valid"; + } + leaf mac-valid { + type uint32; + description + "MAC data valid"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper.yang new file mode 100644 index 000000000..587a219db --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-ethctrl-oper.yang @@ -0,0 +1,133 @@ +module Cisco-IOS-XR-asr9k-lc-ethctrl-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lc-ethctrl-oper"; + prefix asr9k-lc-ethctrl-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-lc-ethctrl-oper-sub1 { + revision-date 2019-04-05; + } + + 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 asr9k-lc-ethctrl package operational data. + + This module contains definitions + for the following management objects: + mlan: Management LAN Operational data space + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mlan { + config false; + description + "Management LAN Operational data space"; + container nodes { + description + "Table of nodes"; + list node { + key "node"; + description + "Number"; + container port-status-numbers { + description + "Table of port status"; + list port-status-number { + key "number"; + description + "Number"; + container port-status { + description + "mlan port status info"; + uses MLAN-PORT-STATUS; + } + leaf number { + type uint32; + description + "port number"; + } + } + } + container switch-status-table { + description + "Table of switch status"; + container switch-status { + description + "mlan switch status info"; + uses MLAN-SWITCH-STATUS-DATA; + } + } + container port-counters-numbers { + description + "Table of port counters"; + list port-counters-number { + key "number"; + description + "Number"; + container port-counters { + description + "mlan port counters info"; + uses MLAN-PORT-COUNTERS; + } + leaf number { + type uint32; + description + "port number"; + } + } + } + container atu-entry-numbers { + description + "Table of switch ATU"; + list atu-entry-number { + key "entry"; + description + "Entry number"; + container switch-counters { + description + "mlan switch counters info"; + uses MLAN-SWITCH-ATU-DATA; + } + leaf entry { + type uint32; + description + "entry number"; + } + } + } + leaf node { + type xr:Node-id; + description + "node number"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub1.yang new file mode 100644 index 000000000..75594697b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub1.yang @@ -0,0 +1,220 @@ +submodule Cisco-IOS-XR-asr9k-lc-fca-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-lc-fca-oper { + prefix Cisco-IOS-XR-asr9k-lc-fca-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-lc-fca package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Spa-failure-reason { + type enumeration { + enum "spa-failure-reason-unknown" { + value 1; + description + "spa failure reason unknown"; + } + enum "spa-failure-reason-spi-failure" { + value 2; + description + "spa failure reason spi failure"; + } + enum "spa-failure-reason-boot" { + value 3; + description + "spa failure reason boot"; + } + enum "spa-failure-reason-hw-failed" { + value 4; + description + "spa failure reason hw failed"; + } + enum "spa-failure-reason-sw-failed" { + value 5; + description + "spa failure reason sw failed"; + } + enum "spa-failure-reason-sw-restart" { + value 6; + description + "spa failure reason sw restart"; + } + enum "spa-failure-reason-check-fpd" { + value 7; + description + "spa failure reason check fpd"; + } + enum "spa-failure-reason-read-type" { + value 8; + description + "spa failure reason read type"; + } + } + description + "SPA failure reasons"; + } + + typedef Spa-reset-reason { + type enumeration { + enum "spa-reset-reason-unknown" { + value 1; + description + "spa reset reason unknown"; + } + enum "spa-reset-reason-manual" { + value 2; + description + "spa reset reason manual"; + } + enum "spa-reset-reason-fpd-upgrade" { + value 3; + description + "spa reset reason fpd upgrade"; + } + enum "spa-reset-reason-audit-fail" { + value 4; + description + "spa reset reason audit fail"; + } + enum "spa-reset-reason-failure" { + value 5; + description + "spa reset reason failure"; + } + } + description + "SPA reset reasons"; + } + + typedef Spa-oper-state { + type enumeration { + enum "spa-state-reset" { + value 1; + description + "spa state reset"; + } + enum "spa-state-failed" { + value 2; + description + "spa state failed"; + } + enum "spa-state-booting" { + value 3; + description + "spa state booting"; + } + enum "spa-state-ready" { + value 4; + description + "spa state ready"; + } + } + description + "SPA operational states"; + } + + grouping SPA-BAY-STATUS-INFO { + description + "SPA bay status info"; + leaf bay-number { + type uint16; + description + "BAY number"; + } + leaf is-spa-inserted { + type boolean; + description + "If SPA inserted"; + } + leaf spa-type { + type uint16; + description + "SPA type"; + } + leaf is-spa-admin-up { + type boolean; + description + "If SPA admin state is Up"; + } + leaf spa-oper-state { + type Spa-oper-state; + description + "SPA operational state"; + } + leaf is-spa-power-admin-up { + type boolean; + description + "If SPA power admin state is Up"; + } + leaf is-spa-powered { + type boolean; + description + "If SPA powered"; + } + leaf is-spa-in-reset { + type boolean; + description + "If SPA in reset"; + } + leaf last-reset-reason { + type Spa-reset-reason; + description + "Last reset reason"; + } + leaf last-failure-reason { + type Spa-failure-reason; + description + "Last Failure Reason"; + } + leaf insertion-time { + type uint32; + units "second"; + description + "Time when SPA last insertedin calendar format: + seconds since00:00:00 UTC, January 1, 1970"; + } + leaf last-ready-time { + type uint32; + units "second"; + description + "Time when SPA last reached Ready statein + calendar format: seconds since00:00:00 UTC, + January 1, 1970"; + } + leaf up-time { + type uint32; + units "second"; + description + "Uptime in seconds"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub2.yang new file mode 100644 index 000000000..a224ee681 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper-sub2.yang @@ -0,0 +1,95 @@ +submodule Cisco-IOS-XR-asr9k-lc-fca-oper-sub2 { + belongs-to Cisco-IOS-XR-asr9k-lc-fca-oper { + prefix Cisco-IOS-XR-asr9k-lc-fca-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-lc-fca package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LDA-IFSUBSYS-STATE-EDM-INFO { + description + "LDA ifsubsys state"; + leaf bay { + type uint32; + description + "bay"; + } + leaf ifsubsys { + type uint32; + description + "ifsubsys"; + } + leaf if-state { + type uint8; + description + "if state"; + } + leaf if-event { + type uint8; + description + "if event"; + } + leaf ep-type { + type uint32; + description + "ep type"; + } + leaf ep-state { + type uint8; + description + "ep state"; + } + leaf ep-presence { + type uint8; + description + "ep presence"; + } + leaf ep-idprom-major { + type uint8; + description + "ep idprom major"; + } + leaf ep-idprom-minor { + type uint8; + description + "ep idprom minor"; + } + leaf ep-idprom-data { + type string { + length "0..256"; + } + description + "ep idprom data"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper.yang new file mode 100644 index 000000000..0c34420c8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-fca-oper.yang @@ -0,0 +1,138 @@ +module Cisco-IOS-XR-asr9k-lc-fca-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lc-fca-oper"; + prefix asr9k-lc-fca-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-lc-fca-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-asr9k-lc-fca-oper-sub1 { + revision-date 2019-04-05; + } + + 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 asr9k-lc-fca package operational data. + + This module contains definitions + for the following management objects: + mpa-internal: Management LAN Operational data space + mpa: Management LAN Operational data space + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mpa-internal { + config false; + description + "Management LAN Operational data space"; + container nodes { + description + "Table of nodes"; + list node { + key "node"; + description + "Number"; + leaf node { + type xr:Node-id; + description + "node number"; + } + list bay { + key "number"; + description + "Number"; + container ifsubsies { + description + "Table of Ifsubsys"; + list ifsubsy { + key "number"; + description + "Number"; + container mpa-internal-info { + description + "mpa internal info"; + uses LDA-IFSUBSYS-STATE-EDM-INFO; + } + leaf number { + type xr:Hex-integer; + description + "ifsubsys number"; + } + } + } + leaf number { + type uint32; + description + "bay number"; + } + } + } + } + } + container mpa { + config false; + description + "Management LAN Operational data space"; + container nodes { + description + "Table of nodes"; + list node { + key "node"; + description + "Number"; + leaf node { + type xr:Node-id; + description + "node number"; + } + list bay { + key "number"; + description + "Number"; + container mpa-detail-table { + description + "Table of Mpa Detail Info"; + container mpa-detail { + description + "mpa detail status info"; + uses SPA-BAY-STATUS-INFO; + } + } + leaf number { + type uint32; + description + "bay number"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-pwrglide-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-pwrglide-cfg.yang new file mode 100644 index 000000000..7920a9104 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lc-pwrglide-cfg.yang @@ -0,0 +1,75 @@ +module Cisco-IOS-XR-asr9k-lc-pwrglide-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lc-pwrglide-cfg"; + prefix asr9k-lc-pwrglide-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 asr9k-lc-pwrglide package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-12-18 { + description + "Added/modified to support port mode config through yang model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping HARDWARE-MODULE-PORT-MODE { + description + "Common node of active-node, preconfigured-node"; + container hardware-module-port-mode { + description + "HW module port-mode config"; + leaf if-port-mode { + type string; + description + "Linecard interface port-mode"; + } + } + } + + augment "/a1:preconfigured-nodes/a1:preconfigured-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HARDWARE-MODULE-PORT-MODE; + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses HARDWARE-MODULE-PORT-MODE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper-sub1.yang new file mode 100644 index 000000000..e06ef94ba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper-sub1.yang @@ -0,0 +1,211 @@ +submodule Cisco-IOS-XR-asr9k-lpts-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-lpts-oper { + prefix Cisco-IOS-XR-asr9k-lpts-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-lpts package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PL-PIFIB-POLICE-INFO { + description + "PL PIFIB POLICE INFO"; + leaf avgrate { + type uint32; + description + "avgrate"; + } + leaf burst { + type uint32; + description + "burst"; + } + leaf static-avgrate { + type uint32; + description + "static avgrate"; + } + leaf avgrate-type { + type string { + length "0..50"; + } + description + "avgrate type"; + } + leaf flow-type { + type string { + length "0..50"; + } + description + "flow type"; + } + leaf accepted-stats { + type uint64; + description + "accepted stats"; + } + leaf dropped-stats { + type uint64; + description + "dropped stats"; + } + leaf policer { + type uint32; + description + "policer"; + } + leaf str-iptos-val { + type string { + length "0..8"; + } + description + "str iptos val"; + } + leaf change-type { + type uint8; + description + "change type"; + } + leaf acl-config { + type uint8; + description + "acl config"; + } + leaf acl-str { + type string { + length "0..50"; + } + description + "acl str"; + } + } + + grouping PL-PIFIB-SHOW-POLICE { + description + "Pre-IFIB platform specific police data structure"; + list police-info { + description + "Per flow type police info"; + uses PL-PIFIB-POLICE-INFO; + } + } + + grouping PL-PIFIB-SHOW-STATS { + description + "Pre-IFIB global statistics"; + leaf accepted { + type uint64; + description + "Deleted-entry accepted packets counter"; + } + leaf dropped { + type uint64; + description + "Deleted-entry dropped packets counter"; + } + leaf clear-ts { + type uint64; + description + "Statistics clear timestamp"; + } + leaf no-stats-mem-err { + type uint64; + description + "No statistics memory error"; + } + } + + grouping PL-PIFIB-SHOW-STATIC-POLICE-INFO { + description + "PL PIFIB SHOW STATIC POLICE INFO"; + leaf punt-reason { + type uint32; + description + "punt reason"; + } + leaf sid { + type uint32; + description + "sid"; + } + leaf flow-rate { + type uint32; + description + "flow rate"; + } + leaf burst-rate { + type uint64; + description + "burst rate"; + } + leaf accepted { + type uint64; + description + "accepted"; + } + leaf dropped { + type uint64; + description + "dropped"; + } + leaf punt-reason-string { + type string { + length "0..50"; + } + description + "punt reason string"; + } + leaf change-type { + type uint8; + description + "change type"; + } + leaf stream-name { + type string { + length "0..50"; + } + description + "stream name"; + } + } + + grouping PL-PIFIB-SHOW-STATIC-POLICE { + description + "Pre-IFIB platform specific punt reason data + structure"; + list static-info { + description + "Per punt reason info"; + uses PL-PIFIB-SHOW-STATIC-POLICE-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper.yang new file mode 100644 index 000000000..decabdc10 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-lpts-oper.yang @@ -0,0 +1,160 @@ +module Cisco-IOS-XR-asr9k-lpts-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-lpts-oper"; + prefix asr9k-lpts-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-lpts-oper-sub1 { + revision-date 2019-04-05; + } + + 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 asr9k-lpts package operational data. + + This module contains definitions + for the following management objects: + platform-lptsp-ifib-static: ASR9K platform ifib operational + data + platform-lptsp-ifib: ASR9K platform ifib operational data + platform-lptsp-ifib-np-stats: ASR9K platform ifib operational + data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Np-type-lpts { + type string { + pattern "(np0)|(np1)|(np2)|(np3)|(np4)|(np5)|(np6)|(np7)|(np8)|(np9)"; + } + description + "np0:NP0, np1:NP1, np2:NP2, np3:NP3, np4:NP4, np5 + :NP5, np6:NP6, np7:NP7, np8:NP8, np9:NP9"; + } + + container platform-lptsp-ifib-static { + config false; + description + "ASR9K platform ifib operational data "; + container node-statics { + description + "List of nodes with platform specific lpts + operation data"; + list node-static { + key "node-name"; + description + "Node with platform specific lpts data"; + container police { + description + "pl_pifib police data"; + uses PL-PIFIB-SHOW-STATIC-POLICE; + } + container stats { + description + "pl_pifib stats"; + uses PL-PIFIB-SHOW-STATS; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container platform-lptsp-ifib { + config false; + description + "ASR9K platform ifib operational data "; + container nodes { + description + "List of nodes with platform specific lpts + operation data"; + list node { + key "node-name"; + description + "Node with platform specific lpts data"; + container police { + description + "pl_pifib police data"; + uses PL-PIFIB-SHOW-POLICE; + } + container stats { + description + "pl_pifib stats"; + uses PL-PIFIB-SHOW-STATS; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container platform-lptsp-ifib-np-stats { + config false; + description + "ASR9K platform ifib operational data "; + container node-np-stats { + description + "List of nodes with platform specific lpts + operation data"; + list node-np-stat { + key "node-name"; + description + "Node with platform specific lpts data"; + container nps { + description + "List of all NP"; + list np { + key "np-name"; + description + "np0 to np9"; + container np-police { + description + "pl_pifib police data"; + uses PL-PIFIB-SHOW-POLICE; + } + leaf np-name { + type Np-type-lpts; + description + "NP name"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub1.yang new file mode 100644 index 000000000..9617923d8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub1.yang @@ -0,0 +1,307 @@ +submodule Cisco-IOS-XR-asr9k-netflow-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-netflow-oper { + prefix Cisco-IOS-XR-asr9k-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-netflow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics on a stanbdy node exporter"; + semver:module-version "1.2.0"; + } + revision 2021-08-18 { + description + "Added sFlow counters for ingress flows"; + semver:module-version "1.1.0"; + } + revision 2019-12-16 { + description + "Added map-t logging counters for ingress flows."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Flow-monitor-name { + type string; + description + "Flow monitor name"; + } + + grouping NFSVR-COLLECTOR-INFO { + description + "Per collector information"; + leaf exporter-state { + type string; + description + "Exporter state"; + } + leaf destination-address { + type string; + description + "Destination IPv4 address in AAA.BBB.CCC.DDD + format"; + } + leaf source-address { + type string; + description + "Source IPv4 address in AAA.BBB.CCC.DDD format"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf destination-port { + type uint16; + description + "Destination port number"; + } + leaf souce-port { + type uint16; + description + "Source port number"; + } + leaf transport-protocol { + type string; + description + "Transport protocol"; + } + leaf packets-sent { + type uint64; + description + "Packets sent"; + } + leaf flows-sent { + type uint64; + description + "Flows sent"; + } + leaf templates-sent { + type uint64; + description + "Templates sent"; + } + leaf option-templates-sent { + type uint64; + description + "Option templates sent"; + } + leaf option-data-sent { + type uint64; + description + "Option data sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Bytes sent"; + } + leaf flow-bytes-sent { + type uint64; + units "byte"; + description + "Flow bytes sent"; + } + leaf template-bytes-sent { + type uint64; + units "byte"; + description + "Template bytes sent"; + } + leaf option-template-bytes-sent { + type uint64; + units "byte"; + description + "Option template bytes sent"; + } + leaf option-data-bytes-sent { + type uint64; + units "byte"; + description + "Option data bytes sent"; + } + leaf packets-dropped { + type uint64; + description + "Packets dropped"; + } + leaf flows-dropped { + type uint64; + description + "Flows dropped"; + } + leaf templates-dropped { + type uint64; + description + "Templates dropped"; + } + leaf option-templates-dropped { + type uint64; + description + "Option templates dropped"; + } + leaf option-data-dropped { + type uint64; + description + "Option data dropped"; + } + leaf bytes-dropped { + type uint64; + units "byte"; + description + "Bytes dropped"; + } + leaf flow-bytes-dropped { + type uint64; + units "byte"; + description + "Flow bytes dropped"; + } + leaf template-bytes-dropped { + type uint64; + units "byte"; + description + "Template bytes dropped"; + } + leaf option-template-bytes-dropped { + type uint64; + units "byte"; + description + "Option template bytes dropped"; + } + leaf option-data-bytes-dropped { + type uint64; + description + "Option data dropped"; + } + leaf last-hour-packest-sent { + type uint64; + description + "Total packets exported over the last one hour"; + } + leaf last-hour-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one hour"; + } + leaf last-hour-flows-sent { + type uint64; + description + "Total flows exported over the of last one hour"; + } + leaf last-minute-packets { + type uint64; + description + "Total packets exported over the last one minute"; + } + leaf last-minute-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one minute"; + } + leaf last-minute-flows-sent { + type uint64; + description + "Total flows exported over the last one minute"; + } + leaf last-second-packets-sent { + type uint64; + description + "Total packets exported over the last one second"; + } + leaf last-second-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one second"; + } + leaf last-second-flows-sent { + type uint64; + description + "Total flows exported over the last one second"; + } + leaf is-standby { + type boolean; + description + "Exporter is in standby mode"; + } + leaf standby-packets-dropped { + type uint64; + description + "Total export packets dropped while beingin + standby mode"; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS { + description + "Flow exporter information"; + leaf name { + type string; + description + "Exporter name"; + } + leaf protocol { + type string; + description + "Export Protocol Name"; + } + leaf memory-usage { + type uint32; + description + "Memory usage"; + } + leaf-list used-by-flow-monitor { + type Flow-monitor-name; + description + "List of flow monitors that use the exporter"; + } + list collector { + description + "Statistics of all collectors"; + uses NFSVR-COLLECTOR-INFO; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY { + description + "Flow exporter information"; + list statistic { + description + "Array of flow exporters"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub2.yang new file mode 100644 index 000000000..5b424ad58 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper-sub2.yang @@ -0,0 +1,143 @@ +submodule Cisco-IOS-XR-asr9k-netflow-oper-sub2 { + belongs-to Cisco-IOS-XR-asr9k-netflow-oper { + prefix Cisco-IOS-XR-asr9k-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-netflow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics on a stanbdy node exporter"; + semver:module-version "1.2.0"; + } + revision 2021-08-18 { + description + "Added sFlow counters for ingress flows"; + semver:module-version "1.1.0"; + } + revision 2019-12-16 { + description + "Added map-t logging counters for ingress flows."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NF-PRODUCER-STATS { + description + "Netflow Platform Producer Process statistics"; + leaf ipv4-ingress-flows { + type uint64; + description + "IPv4 ingress flows"; + } + leaf ipv4-egress-flows { + type uint64; + description + "IPv4 egress flows"; + } + leaf ipv6-ingress-flows { + type uint64; + description + "IPv6 ingress flows"; + } + leaf ipv6-egress-flows { + type uint64; + description + "IPv6 egress flows"; + } + leaf mpls-ingress-flows { + type uint64; + description + "MPLS ingress flows"; + } + leaf mpls-egress-flows { + type uint64; + description + "MPLS egress flows"; + } + leaf section-ingress-flows { + type uint64; + description + "Section ingress flows"; + } + leaf sflow-ingress-flows { + type uint64; + description + "Sflow ingress flows"; + } + leaf mapt-logging-ingress-flows { + type uint64; + description + "MAP-T Logging ingress flows"; + } + leaf drops-no-space { + type uint64; + description + "Drops (no space)"; + } + leaf drops-others { + type uint64; + description + "Drops (others)"; + } + leaf unknown-ingress-flows { + type uint64; + description + "Unknown ingress flows"; + } + leaf unknown-egress-flows { + type uint64; + description + "Unknown egress flows"; + } + leaf waiting-servers { + type uint64; + description + "Number of waiting servers"; + } + leaf spp-rx-counts { + type uint64; + description + "Number of Rxed SPP Packets"; + } + leaf flow-packet-counts { + type uint64; + description + "Number of Rxed Flow Packets"; + } + leaf last-cleared { + type string; + description + "Last time Statistics cleared in 'Mon Jan 1 12:00 + :00 2xxx' format"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper.yang new file mode 100644 index 000000000..e251da992 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-netflow-oper.yang @@ -0,0 +1,117 @@ +module Cisco-IOS-XR-asr9k-netflow-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-netflow-oper"; + prefix asr9k-netflow-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-netflow-oper-sub2 { + revision-date 2022-01-03; + } + include Cisco-IOS-XR-asr9k-netflow-oper-sub1 { + revision-date 2022-01-03; + } + + 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 asr9k-netflow package operational data. + + This module contains definitions + for the following management objects: + net-flow: NetFlow operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics on a stanbdy node exporter"; + semver:module-version "1.2.0"; + } + revision 2021-08-18 { + description + "Added sFlow counters for ingress flows"; + semver:module-version "1.1.0"; + } + revision 2019-12-16 { + description + "Added map-t logging counters for ingress flows."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container net-flow { + config false; + description + "NetFlow operational data"; + container statistics { + description + "Node-specific NetFlow statistics information"; + list statistic { + key "node"; + description + "NetFlow statistics information for a particular + node"; + container producer { + description + "NetFlow producer statistics"; + container statistics { + description + "Statistics information"; + uses NF-PRODUCER-STATS; + } + } + container server { + description + "NetFlow server statistics"; + container flow-exporters { + description + "Flow exporter information"; + list flow-exporter { + key "exporter-name"; + description + "Exporter information"; + container exporter { + description + "Statistics information for the exporter"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY; + } + leaf exporter-name { + type xr:Cisco-ios-xr-string; + description + "Exporter name"; + } + } + } + } + leaf node { + type xr:Node-id; + description + "Node location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-act.yang new file mode 100644 index 000000000..3247a6f94 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-act.yang @@ -0,0 +1,57 @@ +module Cisco-IOS-XR-asr9k-np-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-np-act.yang"; + prefix asr9k-np-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 action package configuration. + + Copyright (c) 2016-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-08 { + description + "IOS XR 7.3.1 revision."; + semver:module-version "1.0.0"; + } + + rpc prm-np-clear-counters { + description + "Action to clear prm np debug counters"; + input { + leaf location { + type string; + mandatory true; + description + "Location string for LC to perform clear on."; + } + leaf np { + type string; + mandatory true; + description + "NP to perform clear operation on. All is accepted."; + } + } + csc:xr-task "system"; + csc:cli-command "clear controller np counters location "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper-sub1.yang new file mode 100644 index 000000000..e988be288 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper-sub1.yang @@ -0,0 +1,884 @@ +submodule Cisco-IOS-XR-asr9k-np-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-np-oper { + prefix Cisco-IOS-XR-asr9k-np-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-np package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-18 { + description + "add support for NP resources"; + semver:module-version "1.2.0"; + } + revision 2021-05-26 { + description + "add support for NP ucode counter query by index"; + semver:module-version "1.1.0"; + } + revision 2021-04-23 { + description + "add/update sh controllers np portmap for xml support"; + semver:module-version "1.0.0"; + } + revision 2020-12-21 { + description + "add/update sh controllers np valid-port-groups"; + } + revision 2019-10-29 { + description + "Add more specific descriptions to address Good description issue"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PRM-EFD { + description + "EFD cos to priority mapping"; + leaf hp-list-is-supported { + type uint32; + description + "high-priority-list CLI is supported"; + } + leaf burst-absorption { + type uint32; + description + "EFD burst-absorption enabled"; + } + leaf burst-absorb-applied { + type uint32; + description + "EFD burst-absorption applied"; + } + leaf burst-absorb-supported { + type uint32; + description + "EFD burst-absorption supported"; + } + list vlan-cos-mapping { + max-elements "8"; + description + "Array of VLAN COS Mapping"; + leaf entry { + type uint32; + description + "Array of VLAN COS Mapping"; + } + } + list mplscos-mapping { + max-elements "8"; + description + "Array of MPLS COS Mapping"; + leaf entry { + type uint32; + description + "Array of MPLS COS Mapping"; + } + } + list ipcos-mapping { + max-elements "8"; + description + "Array of IP COS Mapping"; + leaf entry { + type uint32; + description + "Array of IP COS Mapping"; + } + } + } + + grouping PRM-NP-FAST-DROP-A { + description + "NP fast drop"; + leaf interface-name { + type string; + description + "Name of the NP interface which generates fast + drop"; + } + leaf counter-value { + type uint64; + description + "The Value of the counter"; + } + } + + grouping PRM-NP-FAST-DROP { + description + "Array of NP Fast Drop Counters"; + list np-fast-drop { + description + "Array of NP Fast Drop Counters"; + uses PRM-NP-FAST-DROP-A; + } + } + + grouping PRM-RESOURCES-TCAM-FEATURE { + description + "Resources TCAM feature"; + leaf feature-id { + type string; + description + "Feature ID"; + } + leaf total-vmrids { + type uint32; + description + "Total VMR IDs for feature"; + } + leaf total-used-entries { + type uint32; + description + "Total entries used by feature"; + } + leaf total-allocated-entries { + type uint32; + description + "Total entries allocated by feature"; + } + leaf utilization-percent { + type uint32; + units "percentage"; + description + "Total utilization percentage for feature"; + } + } + + grouping PRM-NP-INDEX-COUNTER-A { + description + "NP Indexed Counter"; + leaf counter-index { + type uint32; + description + "Index of NP counter"; + } + leaf counter-value { + type uint64; + description + "The accurate value of the counter"; + } + leaf rate { + type uint32; + units "packet/s"; + description + "Rate in Packets Per Second"; + } + leaf counter-type { + type string; + description + "Counter TypeDROP: Drop counterPUNT: Punt + counterFWD: Forward or generic counterUNKNOWN: + Counter type unknown"; + } + leaf counter-name { + type string; + description + "Name of NP counter"; + } + } + + grouping PRM-NP-INDEXED-COUNTER { + description + "NP Counter by counter index"; + container np-indexed-counter { + description + "NP Indexed Counter"; + uses PRM-NP-INDEX-COUNTER-A; + } + } + + grouping PRM-NP-COUNTERS-A { + description + "NP Counters"; + leaf counter-index { + type uint32; + description + "Index of NP counter"; + } + leaf counter-value { + type uint64; + description + "The accurate value of the counter"; + } + leaf rate { + type uint32; + units "packet/s"; + description + "Rate in Packets Per Second"; + } + leaf counter-type { + type string; + description + "Counter Type: DROP: Drop counter PUNT: Punt + counter FWD: Forward or generic counter UNKNOWN + : Counter type unknown"; + } + leaf counter-name { + type string; + description + "Name of NP counter"; + } + } + + grouping PRM-NP-COUNTERS { + description + "Array of NP Counters"; + list np-counter { + description + "Array of NP Counters"; + uses PRM-NP-COUNTERS-A; + } + } + + grouping PRM-NP-PROFILE { + description + "np profile info"; + leaf scale { + type string; + description + "Scale"; + } + } + + grouping PRM-NP-L2RM-HW-RSC-TCAM-PAR { + description + "NP L2RM TCAM Par info"; + leaf tcam-par { + type uint32; + description + "Index of TCAM partition"; + } + leaf total { + type uint32; + description + "Number of total TCAM entries"; + } + leaf free { + type uint32; + description + "Number of free TCAM entries"; + } + } + + grouping PRM-NP-L2RM-HW-RSC-HASH-BLK { + description + "NP L2RM Hash Block info"; + leaf hash-blk { + type uint32; + description + "Index of the L2RM hash block"; + } + leaf total { + type uint32; + description + "Number of total L2RM hash entries"; + } + leaf free { + type uint32; + description + "Number of free L2RM hash entries"; + } + } + + grouping PRM-NP-L2RM-HW-RSC-A { + description + "NP L2RM hw_rsc detail"; + list hash-block { + description + "Hash Block hw blk"; + uses PRM-NP-L2RM-HW-RSC-HASH-BLK; + } + list tcam-partition { + description + "TCAM partition per hw blk"; + uses PRM-NP-L2RM-HW-RSC-TCAM-PAR; + } + } + + grouping PRM-NP-L2RM-HW-RSC { + description + "NP L2RM hw_rsc"; + container hw-resource { + description + "resources per hw blk"; + uses PRM-NP-L2RM-HW-RSC-A; + } + leaf ppt-alloc { + type uint64; + description + "Number of the allocated tcam partitions"; + } + leaf ppt-write { + type uint64; + description + "Number of written partitions"; + } + leaf ppt-free { + type uint64; + description + "Number of free partitions"; + } + } + + grouping TCAM-VMR-ENTRY { + description + "Application VMR entry"; + leaf num-vmr-ids { + type uint32; + description + "Vmr IDs"; + } + leaf num-active-entries { + type uint32; + description + "The number of active vmr entries"; + } + leaf num-allocated-entries { + type uint32; + description + "The number of active vmr entries"; + } + } + + grouping ACL-COMM-REGION { + description + "acl common region"; + leaf free-entries { + type uint32; + description + "Free entries in the table"; + } + leaf allocated-entries { + type uint32; + description + "The number of active vmr entries"; + } + } + + grouping TCAM-ODS-TABLE { + description + "tcam ods table"; + container acl-common { + description + "ACL common region"; + uses ACL-COMM-REGION; + } + container app-id-ifib { + description + "App IFIB entry"; + uses TCAM-VMR-ENTRY; + } + container app-id-qos { + description + "App qos entry"; + uses TCAM-VMR-ENTRY; + } + container app-id-acl { + description + "App acl entry"; + uses TCAM-VMR-ENTRY; + } + container app-id-afmon { + description + "App afmon entry"; + uses TCAM-VMR-ENTRY; + } + container app-id-li { + description + "App LI entry"; + uses TCAM-VMR-ENTRY; + } + container app-id-pbr { + description + "App PBR entry"; + uses TCAM-VMR-ENTRY; + } + container app-id-edpl { + description + "App EDPL entry"; + uses TCAM-VMR-ENTRY; + } + leaf free-entries { + type uint32; + description + "Free entries in the table"; + } + leaf reserved-entries { + type uint32; + description + "The number of active vmr entries"; + } + } + + grouping TCAM-L2-TABLE-A { + description + "tcam l2 table"; + leaf partition-id { + type uint32; + description + "PartitionID"; + } + leaf priority { + type uint32; + description + "The priority of the table"; + } + leaf valid-entries { + type uint32; + description + "Number of valid TCAM L2 entries"; + } + leaf free-entries { + type uint32; + description + "Number of free TCAM L2 entries"; + } + } + + grouping TCAM-SHOW-SUM { + description + "tcam summary"; + container tcam-lt-ods2 { + description + "TCAM ODS2 partition summary"; + uses TCAM-ODS-TABLE; + } + container tcam-lt-ods8 { + description + "TCAM ODS8 partition summary"; + uses TCAM-ODS-TABLE; + } + list tcam-lt-l2 { + description + "Array of TCAM L2 partition summaries"; + uses TCAM-L2-TABLE-A; + } + } + + grouping TCAM-VMR-ENTRY-INT { + description + "Application VMR entry internal"; + leaf num-vmr-ids { + type uint32; + description + "Vmr IDs"; + } + leaf total-used-entries { + type uint32; + description + "number of used vmr entries"; + } + leaf total-allocated-entries { + type uint32; + description + "The number of active vmr entries"; + } + } + + grouping TCAM-ODS-TABLE-INT { + description + "tcam ods table internal"; + container app-id-ifib { + description + "App IFIB entry"; + uses TCAM-VMR-ENTRY-INT; + } + container app-id-qos { + description + "App qos entry"; + uses TCAM-VMR-ENTRY-INT; + } + container app-id-acl { + description + "App acl entry"; + uses TCAM-VMR-ENTRY-INT; + } + container app-id-afmon { + description + "App afmon entry"; + uses TCAM-VMR-ENTRY-INT; + } + container app-id-li { + description + "App LI entry"; + uses TCAM-VMR-ENTRY-INT; + } + container app-id-pbr { + description + "App PBR entry"; + uses TCAM-VMR-ENTRY-INT; + } + container application-edpl-entry { + description + "App EDPL entry"; + uses TCAM-VMR-ENTRY-INT; + } + leaf max-entries { + type uint32; + description + "Max number of entries for internal tcam ods + table"; + } + leaf free-entries { + type uint32; + description + "Number of the entries which are free to use in + the table"; + } + } + + grouping TCAM-L2-TABLE-INT-A { + description + "tcam l2 table internal"; + leaf partition-id { + type uint32; + description + "PartitionID"; + } + leaf valid-entries { + type uint32; + description + "Number of valid TCAM entries"; + } + leaf free-entries { + type uint32; + description + "Number of free TCAM entries"; + } + } + + grouping TCAM-SHOW-SUM-INT { + description + "tcam summary internal"; + container tcam-lt-ods2 { + description + "TCAM LT ODS 2 summary"; + uses TCAM-ODS-TABLE-INT; + } + container tcam-lt-ods8 { + description + "TCAM LT_ODS 8 summary"; + uses TCAM-ODS-TABLE-INT; + } + list tcam-lt-l2 { + description + "Array of TCAM LT L2 partition summaries"; + uses TCAM-L2-TABLE-INT-A; + } + } + + grouping TCAM-INFO-SHOW-SUM { + description + "tcam summary info"; + container internal-tcam-info { + description + "Internal tcam summary info"; + uses TCAM-SHOW-SUM-INT; + } + container tcam-info { + description + "External tcam summary info"; + uses TCAM-SHOW-SUM; + } + } + + grouping PRM-NP-LOAD { + description + "np load info"; + leaf utilization { + type uint32; + units "percentage"; + description + "Percent load on the NP engines"; + } + leaf packet-per-second-rate { + type uint32; + description + "Packet rate load on NP engines"; + } + } + + grouping PRM-NP-CHN-LOAD-A { + description + "NP Channel load counters"; + leaf flow-ctr-counter { + type uint32; + description + "Counters of NP flow control"; + } + leaf avg-rfd-usage { + type uint32; + description + "Average RFD Usage"; + } + leaf peak-rfd-usage { + type uint32; + description + "Peak RFD Usage"; + } + leaf avg-guar-rfd-usage { + type uint32; + description + "Average of guaranteed RFD usage"; + } + leaf peak-guar-rfd-usage { + type uint32; + description + "Peak of guaranteed RFD usage"; + } + leaf interface-name { + type string; + description + "Name of the interface to show the np load + counter"; + } + } + + grouping PRM-NP-CHN-LOAD { + description + "Array of NP Channel load counters"; + list np-chn-load { + description + "Array of NP Channel load counters"; + uses PRM-NP-CHN-LOAD-A; + } + } + + grouping TCAM-VMR-ENTRY-ID { + description + "Feature VMR entry"; + leaf vmr-id { + type uint32; + description + "Vmr ID"; + } + leaf used-entries { + type uint32; + description + "The number of used vmr entries"; + } + leaf allocated-entries { + type uint32; + description + "The number of active vmr entries"; + } + } + + grouping TCAM-FEATURE-ENTRY { + description + "tcam feature info"; + leaf feature-id { + type string; + description + "Feature ID"; + } + leaf num-vmr-ids { + type uint32; + description + "Number of VRM IDs"; + } + leaf total-used-entries { + type uint32; + description + "Number of used VMR entries"; + } + leaf total-allocated-entries { + type uint32; + description + "Total number of allocated VMR entries"; + } + list vmr-entry { + description + "VMR entries"; + uses TCAM-VMR-ENTRY-ID; + } + } + + grouping TCAM-REGION-TABLE-INT { + description + "tcam table internal region"; + leaf region-name { + type string; + description + "Name of TCAM region"; + } + leaf allocated-blocks { + type uint32; + description + "Number of allocated TCAM blocks"; + } + leaf max-entries { + type uint32; + description + "Max number of TCAM entries"; + } + leaf free-entries { + type uint32; + description + "Number of free TCAM entries"; + } + list feature { + description + "Features of the TCAM region"; + uses TCAM-FEATURE-ENTRY; + } + } + + grouping TCAM-SHOW-SUM-INT-REGION { + description + "tcam summary internal region"; + leaf total-blocks { + type uint32; + description + "Total TCAM blocks"; + } + leaf free-blocks { + type uint32; + description + "Free TCAM blocks"; + } + list tcam-region { + description + "TCAM Regions"; + uses TCAM-REGION-TABLE-INT; + } + } + + grouping TCAM-INFO-SHOW-SUM-REGION { + description + "tcam info summary region"; + container internal-tcam-info { + description + "Internal tcam summary info"; + uses TCAM-SHOW-SUM-INT-REGION; + } + } + + grouping PRM-NP-PORTMAP-A { + description + "NP Port Map Entry"; + leaf np-inst { + type uint32; + description + "NP instance"; + } + leaf physical-port-num { + type uint32; + description + "physical port number"; + } + leaf interface-name { + type string; + description + "Name of the interface"; + } + leaf mapped-src-port { + type uint32; + description + "mapped source port"; + } + } + + grouping PRM-NP-PORTMAP { + description + "NP Port Map"; + list portmap-entry { + description + "Array of NP Port Map Entry"; + uses PRM-NP-PORTMAP-A; + } + } + + grouping PRM-NP-UIDB-A { + description + "NP uidb"; + leaf interface-name { + type string; + description + "Name of the interface which UIDB serves"; + } + leaf interface-handle { + type uint32; + description + "Handle of the interface which UIDB serves"; + } + leaf index { + type uint16; + description + "UIDB Index"; + } + leaf interface-type { + type string; + description + "Type of the interface which UIDB serves"; + } + } + + grouping PRM-NP-UIDB { + description + "Array of NP UIDB Index"; + list uidb-index { + description + "Array of NP UIDB Index"; + uses PRM-NP-UIDB-A; + } + } + + grouping PRM-MAC-CFGMODE-A { + description + "MAC Cfgmode Entry"; + leaf flags { + type uint32; + description + "flag for show header"; + } + leaf str-len { + type int32; + description + "actual show_str length"; + } + leaf show-str { + type string { + length "0..2000"; + } + description + "one cfgmode display string"; + } + } + + grouping PRM-MAC-CFGMODE { + description + "MAC Config Modes"; + list cfg-entry { + description + "Array of MAC CFG Entry"; + uses PRM-MAC-CFGMODE-A; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper.yang new file mode 100644 index 000000000..b4c8150ab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-np-oper.yang @@ -0,0 +1,795 @@ +module Cisco-IOS-XR-asr9k-np-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-np-oper"; + prefix asr9k-np-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-np-oper-sub1 { + revision-date 2021-12-18; + } + + 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 asr9k-np package operational data. + + This module contains definitions + for the following management objects: + hardware-module-np: Hardware NP Counters + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-18 { + description + "add support for NP resources"; + semver:module-version "1.2.0"; + } + revision 2021-05-26 { + description + "add support for NP ucode counter query by index"; + semver:module-version "1.1.0"; + } + revision 2021-04-23 { + description + "add/update sh controllers np portmap for xml support"; + semver:module-version "1.0.0"; + } + revision 2020-12-21 { + description + "add/update sh controllers np valid-port-groups"; + } + revision 2019-10-29 { + description + "Add more specific descriptions to address Good description issue"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Np { + type string { + pattern "(np0)|(np1)|(np2)|(np3)|(np4)|(np5)|(np6)|(np7)"; + } + description + "np0:NP0, np1:NP1, np2:NP2, np3:NP3, np4:NP4, np5 + :NP5, np6:NP6, np7:NP7"; + } + + container hardware-module-np { + config false; + description + "Hardware NP Counters"; + container nodes { + description + "Table of nodes"; + list node { + key "node-name"; + description + "Number"; + container nps { + description + "List of all NP"; + list np { + key "np-name"; + description + "np0 to np7"; + container mac-cfg-mode { + description + "Information of valid mac config mode"; + uses PRM-MAC-CFGMODE; + } + container np-uidb { + description + "Hardware np uidb"; + uses PRM-NP-UIDB; + } + container np-port-map { + description + "Information of NP port map"; + uses PRM-NP-PORTMAP; + } + container tcam-region-summary { + description + "Information of the TCAM region"; + uses TCAM-INFO-SHOW-SUM-REGION; + } + container chn-load { + description + "prm channel load info"; + uses PRM-NP-CHN-LOAD; + } + container load-utilization { + description + "Hardware np load or utilization"; + uses PRM-NP-LOAD; + } + container tcam-summary { + description + "prm tcam summary info"; + uses TCAM-INFO-SHOW-SUM; + } + container l2rm-hw-resource { + description + "L2rm Hardware Resources"; + uses PRM-NP-L2RM-HW-RSC; + } + container profile { + description + "Hardware Profile"; + uses PRM-NP-PROFILE; + } + container counters { + description + "prm counters info"; + uses PRM-NP-COUNTERS; + } + container indexed-counters { + description + "PRM NP counters info by index"; + list indexed-counter { + key "counter-index"; + description + "List of NP ucode Counters"; + container ucode-counter { + description + "PRM indexed counter info"; + uses PRM-NP-INDEXED-COUNTER; + } + leaf counter-index { + type uint32; + description + "Indexed Counter Key"; + } + } + } + container resources { + description + "sub-leafs for resources displays"; + container tcam { + description + "TCAM section of resources display"; + container one-sixty-ing { + description + "TCAM Region"; + container compr-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-15 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-dst-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-l2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-1 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-mpls { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv6 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container edpl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container l2-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-3 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-src-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + } + container one-sixty-egr { + description + "TCAM Region"; + container compr-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-15 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-dst-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-l2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-1 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-mpls { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv6 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container edpl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container l2-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-3 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-src-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + } + container six-forty-ing { + description + "TCAM Region"; + container compr-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-15 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-dst-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-l2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-1 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-mpls { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv6 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container edpl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container l2-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-3 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-src-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + } + container six-forty-egr { + description + "TCAM Region"; + container compr-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-15 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-dst-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-l2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-1 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-mpls { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv6 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv6-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-fmt-0 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container edpl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-2 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-src-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container l2-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-3 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-ipv4-acl-dst-ip { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container compr-acl-src-port { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container qos-fmt-4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv6-meta-acl { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container ipv4-li { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + container pbr-ipv4 { + description + "TCAM feature utilization"; + uses PRM-RESOURCES-TCAM-FEATURE; + } + } + } + } + container fast-drop { + description + "prm fast drop counters info"; + uses PRM-NP-FAST-DROP; + } + container efd { + description + "EFD COS to Priority Mapping"; + uses PRM-EFD; + } + leaf np-name { + type Np; + description + "NP name"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "node number"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-prm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-prm-cfg.yang new file mode 100644 index 000000000..32c6f5e0e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-prm-cfg.yang @@ -0,0 +1,878 @@ +module Cisco-IOS-XR-asr9k-prm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-prm-cfg"; + prefix asr9k-prm-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 asr9k-prm package configuration. + + This module contains definitions + for the following management objects: + hardware-module-buffer-carve-mode: Buffer carve mode in + hardware module port(s) + hardware-module-qos-mode: QoS mode in hardware module port(s) + hardware-module-processor: Processor configuration + hardware-module-reset: Reset configuration + hardware-module-tcp-mss-adjust: TCP MSS Adjust value in + hardware module + hardware-module-tcam: TCAM + hardware-module-profile: Memory resource configuration + hardware-module-efd: EFD (Early Fast Discard) + hardware-module-all-qos-mode: Global qos-mode in hardware + module + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-30 { + description + "Added hw-mod CLI for telemetry feature"; + semver:module-version "1.1.0"; + } + revision 2019-12-06 { + description + "Use the correct profile schema for exr and cxr"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Prm-config-scale-profile { + type enumeration { + enum "default" { + value 0; + description + "Default scale profile"; + } + enum "l2" { + value 1; + description + "L2 scale profile"; + } + enum "l3" { + value 2; + description + "L3 scale profile"; + } + enum "l3xl" { + value 3; + description + "L3XL scale profile"; + } + enum "evpnconv" { + value 5; + description + "EVPN convergence scale profile"; + } + } + description + "Prm config scale profile"; + } + + typedef Prm-config-internal-tcam-part-profile { + type enumeration { + enum "to-default" { + value 0; + description + "default internal tcam partitions (L2 1k, V4 24k + , V6 1.75k entries): Tomahawk"; + } + enum "to-profile-se1" { + value 1; + description + "Set internal tcam partitions for service edge + (L2 4k, V4 15k, V6 3.25k entries): Tomahawk"; + } + } + description + "Prm config internal tcam part profile"; + } + + typedef Asr9k-efd-burst-absorption { + type enumeration { + enum "disable" { + value 0; + description + "Use default RFD settings"; + } + enum "enable" { + value 1; + description + "Use Burst Absorption RFD settings"; + } + } + description + "Asr9k efd burst absorption"; + } + + typedef Prm-processor-config { + type enumeration { + enum "mode-default" { + value 0; + description + "Default cluster setting"; + } + enum "mode-full" { + value 1; + description + "Full cluster setting"; + } + } + description + "Prm processor config"; + } + + typedef Asr9k-efd-operation { + type enumeration { + enum "less-than" { + value 2; + description + "Less than"; + } + enum "greater-than-or-equal" { + value 3; + description + "Greater than or equal"; + } + } + description + "Asr9k efd operation"; + } + + typedef Asr9k-efd-mode { + type enumeration { + enum "only-outer-encap" { + value 0; + description + "Only check outer encap"; + } + enum "include-inner-encap" { + value 1; + description + "Check outer and inner encap"; + } + } + description + "Asr9k efd mode"; + } + + typedef Prm-tcam-profile { + type enumeration { + enum "profile0" { + value 0; + description + "Profile 0"; + } + enum "profile1" { + value 1; + description + "Profile 1"; + } + enum "profile2" { + value 2; + description + "Profile 2"; + } + } + description + "Prm tcam profile"; + } + + grouping VLAN-COS { + description + "Common node of node, node-all"; + container vlan-cos { + presence "Indicates a vlan-cos node is configured."; + description + "EFD VLAN parameters"; + leaf cos { + type uint32 { + range "0..7"; + } + mandatory true; + description + "VLAN COS threshold"; + } + leaf operation { + type Asr9k-efd-operation; + default "greater-than-or-equal"; + description + "VLAN operation"; + } + } + } + + grouping IP-PRECEDENCE { + description + "Common node of node, node-all"; + container ip-precedence { + presence "Indicates a ip-precedence node is configured."; + description + "EFD IP parameters"; + leaf precedence { + type uint32 { + range "0..7"; + } + mandatory true; + description + "IP TOS precedence threshold"; + } + leaf operation { + type Asr9k-efd-operation; + default "greater-than-or-equal"; + description + "IP operation"; + } + } + } + + grouping IP-PRIORITY-MASK { + description + "Common node of node, node-all"; + container ip-priority-mask { + presence "enable ip-priority-mask"; + description + "IP Priority Mask"; + leaf prec0 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec1 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec2 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec3 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec4 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec5 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec6 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec7 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + } + } + + grouping VLAN-PRIORITY-MASK { + description + "Common node of node, node-all"; + container vlan-priority-mask { + presence "enable vlan-priority-mask"; + description + "VLAN Priority Mask"; + leaf prec0 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec1 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec2 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec3 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec4 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec5 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec6 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec7 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + } + } + + grouping MPLS-PRIORITY-MASK { + description + "Common node of node, node-all"; + container mpls-priority-mask { + presence "enable mpls-priority-mask"; + description + "MPLS Priority Mask"; + leaf prec0 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec1 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec2 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec3 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec4 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec5 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec6 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + leaf prec7 { + type uint32 { + range "0..1"; + } + default "0"; + description + "Prec"; + } + } + } + + grouping BURST-ABSORPTION { + description + "Common node of node, node-all"; + leaf burst-absorption { + type Asr9k-efd-burst-absorption; + description + "EFD burst absorption parameter."; + } + } + + grouping ENABLE { + description + "Common node of node, node-all"; + leaf enable { + type empty; + description + "Enable EFD for this node"; + } + } + + grouping MODE { + description + "Common node of node, node-all"; + leaf mode { + type Asr9k-efd-mode; + description + "EFD mode parameter."; + } + } + + grouping MPLS-EXP { + description + "Common node of node, node-all"; + container mpls-exp { + presence "Indicates a mpls-exp node is configured."; + description + "EFD MPLS parameters"; + leaf exp { + type uint32 { + range "0..7"; + } + mandatory true; + description + "MPLS EXP threshold"; + } + leaf operation { + type Asr9k-efd-operation; + default "greater-than-or-equal"; + description + "MPLS operation"; + } + } + } + + container hardware-module-buffer-carve-mode { + description + "Buffer carve mode in hardware module port(s)"; + container nodes { + description + "Buffer carve applicable nodes"; + list node { + key "node-name"; + description + "A node"; + leaf static { + type empty; + description + "Enable Static Buffer carve mode"; + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + container hardware-module-qos-mode { + description + "QoS mode in hardware module port(s)"; + container nodes { + description + "QoS applicable nodes"; + list node { + key "node-name"; + description + "A node"; + leaf child-shaping-disable { + type empty; + description + "Disable child level/flat policy shaping"; + } + leaf lowburst-enable { + type empty; + description + "Enable low burst mode for TM entity"; + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + container hardware-module-processor { + description + "Processor configuration"; + container nodes { + description + "applicable nodeTable"; + list node { + key "node-name"; + description + "applicable node"; + leaf mode { + type Prm-processor-config; + description + "Processor mode setting"; + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + container hardware-module-reset { + description + "Reset configuration"; + container threshold { + description + "Threshold"; + container reset-infinite { + description + "Reset threshold value infinite"; + leaf disable-logging { + type uint32; + description + "Disable np datalogging"; + } + leaf enable-logging { + type uint32; + description + "Enable np datalogging"; + } + } + container reset10 { + description + "Reset threshold value 10"; + leaf reload10 { + type uint32; + description + "Reload after value of 10 reached"; + } + leaf slice10 { + type uint32; + description + "Slice down after value of 10 reached"; + } + } + container reset5 { + description + "Reset threshold value 5"; + leaf slice5 { + type uint32; + description + "Slice down after value of 5 reached"; + } + leaf reload5 { + type uint32; + description + "Reload after value of 5 reached"; + } + } + } + } + container hardware-module-tcp-mss-adjust { + description + "TCP MSS Adjust value in hardware module"; + container nodes { + description + "TCP MSS Adjust applicable nodes"; + list node { + key "node-name"; + description + "A node"; + container nps { + description + "TCP MSS Adjust NPs"; + list np { + key "np-id"; + description + "NP number"; + leaf adjust-value { + type uint32 { + range "1280..1535"; + } + units "byte"; + description + "TCP MSS Adjust value"; + } + leaf np-id { + type uint32 { + range "0..7"; + } + description + "Number between 0-7"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + container hardware-module-tcam { + description + "TCAM"; + container nodes { + description + "TCAM applicable nodes"; + list node { + key "node-name"; + description + "A TCAM applicable node"; + leaf profile { + type Prm-tcam-profile; + default "profile0"; + description + "A TCAM partition profile"; + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + leaf global-profile { + type Prm-tcam-profile; + default "profile0"; + description + "Global TCAM partition profile for all TCAM + applicable nodes"; + } + } + container hardware-module-profile { + description + "Memory resource configuration"; + container nodes { + description + "TCAM partition sizing applicable nodes"; + list node { + key "node-name"; + description + "A TCAM partition sizing applicable node"; + container lightspeed-tcam-partition { + description + "Lightspeed Tcam partition profile"; + leaf v4-ing { + type uint32 { + range "1..13"; + } + default "8"; + description + "Lightspeed Tcam Block count for 160-ingress + region"; + } + leaf v4-egr { + type uint32 { + range "1..13"; + } + default "4"; + description + "Lightspeed Tcam Block count for 160-egress + region"; + } + leaf v6-ing { + type uint32 { + range "1..13"; + } + default "3"; + description + "Lightspeed Tcam Block count for 640-ingress + region"; + } + leaf v6-egr { + type uint32 { + range "1..13"; + } + default "1"; + description + "Lightspeed Tcam Block count for 640-egress + region"; + } + } + leaf internal-tcam-partition { + type Prm-config-internal-tcam-part-profile; + default "to-default"; + description + "Internal Tcam partition profile"; + } + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + leaf scale-active { + type Prm-config-scale-profile; + default "default"; + description + "Memory resource profile scale active"; + } + leaf scale { + type Prm-config-scale-profile; + default "default"; + description + "Memory resource profile scale"; + } + } + container hardware-module-efd { + description + "EFD (Early Fast Discard)"; + container node-all { + description + "All nodes"; + uses VLAN-PRIORITY-MASK; + uses IP-PRECEDENCE; + uses VLAN-COS; + uses ENABLE; + uses IP-PRIORITY-MASK; + uses MPLS-PRIORITY-MASK; + uses MODE; + uses BURST-ABSORPTION; + uses MPLS-EXP; + } + container nodes { + description + "EFD applicable nodes"; + list node { + key "node-name"; + description + "A node"; + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + uses VLAN-PRIORITY-MASK; + uses IP-PRECEDENCE; + uses VLAN-COS; + uses ENABLE; + uses IP-PRIORITY-MASK; + uses MPLS-PRIORITY-MASK; + uses MODE; + uses BURST-ABSORPTION; + uses MPLS-EXP; + } + } + } + container hardware-module-all-qos-mode { + description + "Global qos-mode in hardware module"; + leaf per-priority-buffer-limit { + type empty; + description + "enable per-priority-buffer-limit"; + } + leaf ingress-queue { + type empty; + description + "Enable ingress queue for MOD-80 4X10G MPA or + MOD-400 20X10G MPAor MOD-200 8X10G MPA"; + } + leaf aggregate-bundle-mode { + type empty; + description + "Enable aggregate bundle mode "; + } + leaf stats-collection-enable-mode { + type empty; + description + "enable stats-collection-enable"; + } + leaf bundle-aggregate-policer-mode { + type empty; + description + "Enable bundle aggregate policer mode "; + } + leaf wred-buffer-mode { + type empty; + description + "Enable L4 wred accounting buffer mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-cfg.yang new file mode 100644 index 000000000..4ff1ba5c6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-cfg.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-asr9k-ptp-pd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-ptp-pd-cfg"; + prefix asr9k-ptp-pd-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ptp-cfg { + prefix a1; + } + + 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 asr9k-ptp-pd package configuration. + + This YANG module augments the + Cisco-IOS-XR-ptp-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-04 { + description + "IOS-XR 7.6.1 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-20 { + description + "IOS-XR 6.3.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:ptp/a1:logging" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ptp-cfg'"; + container servo { + description + "PTP PD Servo logging configuration"; + leaf events { + type empty; + description + "Enable servo events logging"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1.yang new file mode 100644 index 000000000..95bd91295 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1.yang @@ -0,0 +1,206 @@ +submodule Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-ptp-pd-oper { + prefix Cisco-IOS-XR-asr9k-ptp-pd-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-ptp-pd package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-03 { + description + "IOS-XR 7.3.1 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PTP-PD-BAG-TIMESTAMP { + description + "PTP PD timestamp"; + leaf second { + type uint32; + description + "value of second"; + } + leaf nano-second { + type uint32; + description + "value of nano second"; + } + } + + grouping PTP-PD-SERVO-INFO { + description + "PTP PD servo status"; + container last-set-time { + description + "last input of setTime"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t1 { + description + "last T1 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t2 { + description + "last T2 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t3 { + description + "last T3 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t4 { + description + "last T4 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t1 { + description + "pre T1 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t2 { + description + "pre T2 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t3 { + description + "pre T3 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t4 { + description + "pre T4 timestamp reveiced"; + uses PTP-PD-BAG-TIMESTAMP; + } + leaf lock-status { + type uint16; + description + "lock status of device"; + } + leaf running { + type boolean; + description + "running status of apr"; + } + leaf device-status { + type string { + length "0..50"; + } + description + "status of device"; + } + leaf log-level { + type uint16; + description + "log level of apr"; + } + leaf phase-accuracy-last { + type int64; + description + " last phase alignment accuracy"; + } + leaf num-sync-timestamp { + type uint32; + description + "number of sync timestamp reveiced"; + } + leaf num-delay-timestamp { + type uint32; + description + "number of delay timestamp reveiced"; + } + leaf num-set-time { + type uint32; + description + "number of setTime() been called"; + } + leaf num-step-time { + type uint32; + description + "number of stepTime() been called"; + } + leaf num-adjust-freq { + type uint32; + description + "number of adjustFreq() been called"; + } + leaf num-adjust-freq-time { + type uint32; + description + "number of adjustFreqTime() been called"; + } + leaf last-adjust-freq { + type int32; + description + "last input of adjustFreq"; + } + leaf last-step-time { + type int32; + description + "last input of stepTime"; + } + leaf num-discard-sync-timestamp { + type uint32; + description + "number of sync timestamp discarded"; + } + leaf num-discard-delay-timestamp { + type uint32; + description + "number of delay timestamp discarded"; + } + leaf flagof-last-set-time { + type boolean; + description + "last input flag of setTime"; + } + leaf offset-from-master { + type int64; + description + "Time Offset From Master"; + } + leaf mean-path-delay { + type int64; + description + "Mean Path Delay"; + } + leaf servo-mode { + type string { + length "0..50"; + } + description + "Servo Mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper.yang new file mode 100644 index 000000000..268f11cff --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-ptp-pd-oper.yang @@ -0,0 +1,66 @@ +module Cisco-IOS-XR-asr9k-ptp-pd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-ptp-pd-oper"; + prefix asr9k-ptp-pd-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ptp-oper { + prefix a1; + } + include Cisco-IOS-XR-asr9k-ptp-pd-oper-sub1 { + revision-date 2020-06-03; + } + + 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 asr9k-ptp-pd package operational data. + + This YANG module augments the + Cisco-IOS-XR-ptp-oper + module with state data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-03 { + description + "IOS-XR 7.3.1 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:ptp" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-ptp-oper'"; + container platform { + description + "PTP platform specific data"; + container servo { + description + "PTP servo related parameters"; + uses PTP-PD-SERVO-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub1.yang new file mode 100644 index 000000000..6bdffa514 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub1.yang @@ -0,0 +1,996 @@ +submodule Cisco-IOS-XR-asr9k-qos-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-qos-oper { + prefix Cisco-IOS-XR-asr9k-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-qos package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-09 { + description + "pi changes to support wred drop probability"; + semver:module-version "1.0.0"; + } + revision 2020-12-23 { + description + "Introduced an CLI to show qos performance stats"; + } + revision 2019-09-30 { + description + "YANG support for PWHE interface"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Wred1 { + type enumeration { + enum "wred-cos-cmd" { + description + "wred cos cmd"; + } + enum "wred-dscp-cmd" { + description + "wred dscp cmd"; + } + enum "wred-precedence-cmd" { + description + "wred precedence cmd"; + } + enum "wred-discard-class-cmd" { + description + "wred discard class cmd"; + } + enum "wred-mpls-exp-cmd" { + description + "wred mpls exp cmd"; + } + enum "red-with-user-min-max" { + description + "red with user min max"; + } + enum "red-with-default-min-max" { + description + "red with default min max"; + } + enum "wred-dei-cmd" { + description + "wred dei cmd"; + } + enum "wred-ecn-cmd" { + description + "wred ecn cmd"; + } + enum "wred-invalid-cmd" { + description + "wred invalid cmd"; + } + } + description + "Wred1"; + } + + typedef Policy-param-unit { + type enumeration { + enum "policy-param-unit-invalid" { + description + "policy param unit invalid"; + } + enum "policy-param-unit-bytes" { + description + "policy param unit bytes"; + } + enum "policy-param-unit-kbytes" { + description + "policy param unit kbytes"; + } + enum "policy-param-unit-mbytes" { + description + "policy param unit mbytes"; + } + enum "policy-param-unit-gbytes" { + description + "policy param unit gbytes"; + } + enum "policy-param-unit-bitsps" { + description + "policy param unit bitsps"; + } + enum "policy-param-unit-kbitsps" { + description + "policy param unit kbitsps"; + } + enum "policy-param-unit-mbitsps" { + description + "policy param unit mbitsps"; + } + enum "policy-param-unit-gbitsps" { + description + "policy param unit gbitsps"; + } + enum "policy-param-unit-cells-ps" { + description + "policy param unit cells ps"; + } + enum "policy-param-unit-packets-ps" { + description + "policy param unit packets ps"; + } + enum "policy-param-unit-us" { + description + "policy param unit us"; + } + enum "policy-param-unit-ms" { + description + "policy param unit ms"; + } + enum "policy-param-unit-seconds" { + description + "policy param unit seconds"; + } + enum "policy-param-unit-packets" { + description + "policy param unit packets"; + } + enum "policy-param-unit-cells" { + description + "policy param unit cells"; + } + enum "policy-param-unit-percent" { + description + "policy param unit percent"; + } + enum "policy-param-unit-per-thousand" { + description + "policy param unit per thousand"; + } + enum "policy-param-unit-per-million" { + description + "policy param unit per million"; + } + enum "policy-param-unit-hz" { + description + "policy param unit hz"; + } + enum "policy-param-unit-khz" { + description + "policy param unit khz"; + } + enum "policy-param-unit-mhz" { + description + "policy param unit mhz"; + } + enum "policy-param-unit-ratio" { + description + "policy param unit ratio"; + } + enum "policy-param-unit-inverse-ratio" { + description + "policy param unit inverse ratio"; + } + enum "policy-param-unit-max" { + description + "policy param unit max"; + } + } + description + "Policy param unit"; + } + + typedef Cac-state { + type enumeration { + enum "unknown" { + value 0; + description + "unknown"; + } + enum "admit" { + value 1; + description + "admit"; + } + enum "redirect" { + value 2; + description + "redirect"; + } + enum "ubrl" { + value 3; + description + "ubrl"; + } + } + description + "CAC/UBRL class states"; + } + + typedef Policy-state { + type enumeration { + enum "active" { + value 0; + description + "active"; + } + enum "suspended" { + value 1; + description + "suspended"; + } + } + description + "Different Interface states"; + } + + grouping CAC-STATS-ST { + description + "CAC statistics"; + leaf drop-packets { + type uint64; + description + "CAC dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "CAC dropped bytes"; + } + leaf drop-rates { + type uint32; + description + "CAC dropped rate"; + } + leaf admitpackets { + type uint64; + units "byte"; + description + "Admitted packets (pkts/bytes)"; + } + leaf admit-bytes { + type uint64; + units "byte"; + description + "Admitted bytes (pkts/bytes)"; + } + leaf admit-rates { + type uint32; + description + "CAC admit rate"; + } + } + + grouping IPHC-STATS-ST { + description + "IPHC Stats"; + leaf non-tcp-total-out-packets { + type uint64; + description + "TotalNum of Non tcp pkts sent"; + } + leaf non-tcp-total-out-bytes { + type uint64; + units "byte"; + description + "TotalNum of Non Tcp Bytes sent"; + } + leaf non-tcp-bytes-saved { + type uint64; + units "byte"; + description + "Non Tcp Bytes saved due to compression"; + } + leaf non-tcp-compressed-packets-out { + type uint64; + description + "Num of non tcp compressed pkts sent"; + } + leaf non-tcp-bytes-sent-rate { + type uint32; + units "byte"; + description + "Compressed Non Tcp Bytes sent rate"; + } + leaf non-tcp-full-header-packets-out { + type uint64; + description + "Num of non tcp fullheader pkts sent"; + } + leaf tcp-total-out-packets { + type uint64; + description + "Total Num of tcp pkts sent"; + } + leaf tcp-total-out-bytes { + type uint64; + units "byte"; + description + "TotalNum of Tcp Bytes sent"; + } + leaf tcp-bytes-saved { + type uint64; + units "byte"; + description + "Tcp Bytes saved due to compression"; + } + leaf tcp-compressed-packets-out { + type uint64; + description + "Num of tcp compressed pkts sent"; + } + leaf tcp-bytes-sent-rate { + type uint32; + units "byte"; + description + "Compressed Tcp Bytes sent rate"; + } + leaf tcp-full-header-packets-out { + type uint64; + description + "Num of tcp fullheader pkts sent"; + } + } + + grouping WRED-TYPE-VALUE { + description + "WRED Type Value pairs"; + leaf wred-type { + type Wred1; + description + "WRED type DSCP, EXP, PREC etc."; + } + leaf value { + type uint8; + description + "WRED value for this type."; + } + } + + grouping RED-PROFILE-STATS { + description + "Per RED profile stats"; + leaf profile-title { + type string { + length "0..300"; + } + description + "ProfileTitle"; + } + leaf red-transmit-packets { + type uint64; + description + "Transmitted packets"; + } + leaf red-transmit-bytes { + type uint64; + units "byte"; + description + "Transmitted bytes"; + } + leaf random-drop-packets { + type uint64; + description + "Probabilistically dropped packets"; + } + leaf random-drop-bytes { + type uint64; + units "byte"; + description + "Probabilisticallydropped bytes"; + } + leaf max-threshold-packets { + type uint64; + description + "Dropped packets with the average queue size at + the max-threshold"; + } + leaf max-threshold-bytes { + type uint64; + units "byte"; + description + "Dropped bytes with the average queue size at + the max-threshold"; + } + leaf red-ecn-marked-packets { + type uint64; + description + "ECN marked packets "; + } + leaf red-ecn-marked-bytes { + type uint64; + units "byte"; + description + "ECN marked bytes"; + } + list red-label { + description + "Array of WRED Typevalues as in PRP stats is + available per threshold "; + uses WRED-TYPE-VALUE; + } + } + + grouping PLC-COLOR-CLASS-STATS-ST { + description + "Color Aware Policer statistics"; + leaf conform-class-conform-packets { + type uint64; + description + "Packets with classification result conform and + policer result conform"; + } + leaf conform-class-conform-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result conform"; + } + leaf conform-class-conform-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Conform rate in kbps"; + } + leaf conform-class-exceed-packets { + type uint64; + description + "Packets with classification result conform and + policer result exceed"; + } + leaf conform-class-exceed-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result exceed"; + } + leaf conform-class-exceed-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Exceed rate in kbps"; + } + leaf conform-class-violate-packets { + type uint64; + description + "Packets with classification result conform and + policer result violate"; + } + leaf conform-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result violate"; + } + leaf conform-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Violate rate in kbps"; + } + leaf exceed-class-exceed-packets { + type uint64; + description + "Packets with classification result exceed and + policer result exceed"; + } + leaf exceed-class-exceed-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result exceed and + policer result exceed"; + } + leaf exceed-class-exceed-rate { + type uint32; + units "kbit/s"; + description + "Exceed Class Exceed rate in kbps"; + } + leaf exceed-class-violate-packets { + type uint64; + description + "Packets with classification result exceed and + policer result violate"; + } + leaf exceed-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result exceed and + policer result violate"; + } + leaf exceed-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Exceed Class Violate rate in kbps"; + } + leaf violate-class-violate-packets { + type uint64; + description + "Packets with classification result violate and + policer result violate"; + } + leaf violate-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result violate and + policer result violate"; + } + leaf violate-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Violate Class Violate rate in kbps"; + } + } + + grouping PLC-STATS-ST { + description + "Policer statistics"; + container color-class-stats { + description + "color class stats"; + uses PLC-COLOR-CLASS-STATS-ST; + } + leaf drop-packets { + type uint64; + description + "Police dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "Police dropped bytes"; + } + leaf conform-packets { + type uint64; + description + "Packets that conform to the policed rate"; + } + leaf conform-bytes { + type uint64; + units "byte"; + description + "Bytes that conform to the policed rate"; + } + leaf exceed-packets { + type uint64; + description + "Packets that exceed the policed rate"; + } + leaf exceed-bytes { + type uint64; + units "byte"; + description + "Bytes that exceed the policed rate"; + } + leaf violate-packets { + type uint64; + description + "Packets violating the policed rate"; + } + leaf violate-bytes { + type uint64; + units "byte"; + description + "Bytes that violate the policed rate"; + } + leaf parent-drop-packets { + type uint64; + description + "Dropped pkts by the parent policer"; + } + leaf parent-drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes by the parent policer"; + } + leaf conform-rate { + type uint32; + units "kbit/s"; + description + "Conform rate in kbps"; + } + leaf exceed-rate { + type uint32; + units "kbit/s"; + description + "Exceed rate in kbps"; + } + leaf violate-rate { + type uint32; + units "kbit/s"; + description + "Violate rate in kbps"; + } + } + + grouping POLICY-PARAM-UINT32-ST { + description + "POLICY PARAM UINT32 ST"; + leaf value { + type uint32; + description + "value"; + } + leaf unit { + type Policy-param-unit; + description + "unit"; + } + } + + grouping Q-STATS-ST { + description + "Queue limit statistics"; + leaf queue-id { + type uint32; + description + "Queue Id used for Fabric Stats"; + } + leaf tail-drop-packets { + type uint64; + description + "Packets tail dropped"; + } + leaf tail-drop-bytes { + type uint64; + units "byte"; + description + "Bytes tail dropped"; + } + leaf atm-clp0-drop-packets { + type uint64; + description + "ATP CLP 0 matched packets dropped"; + } + leaf atm-clp0-drop-bytes { + type uint64; + units "byte"; + description + "ATP CLP 0 matched bytes dropped"; + } + leaf atm-clp1-drop-packets { + type uint64; + description + "ATP CLP 0 matched packets dropped"; + } + leaf atm-clp1-drop-bytes { + type uint64; + units "byte"; + description + "ATP CLP 0 matched bytes dropped"; + } + leaf queue-drop-threshold { + type uint32; + units "byte"; + description + "tail drop threshold of the queue in bytes"; + } + leaf forced-wred-stats-display { + type boolean; + description + "flag to forcedisplay of WRED even when per + WredWRED profile stats is not available"; + } + leaf random-drop-packets { + type uint64; + description + "Packets probabilistically dropped"; + } + leaf random-drop-bytes { + type uint64; + units "byte"; + description + "Bytes probabilistically dropped"; + } + leaf max-threshold-packets { + type uint64; + description + "Dropped packets with the average queue size at + the max-threshold"; + } + leaf max-threshold-bytes { + type uint64; + units "byte"; + description + "Dropped bytes with the average queue size at the + max-threshold"; + } + leaf conform-packets { + type uint64; + description + "Packets that conform to the queue rate"; + } + leaf conform-bytes { + type uint64; + units "byte"; + description + "Bytes that conform to the queue rate"; + } + leaf exceed-packets { + type uint64; + description + "Packets that exceed the queue rate"; + } + leaf exceed-bytes { + type uint64; + units "byte"; + description + "Bytes that exceed the queue rate"; + } + leaf conform-rate { + type uint32; + description + "Conform rate"; + } + leaf exceed-rate { + type uint32; + description + "Exceed rate"; + } + list queue-instance-length { + description + "Queue instance length"; + uses POLICY-PARAM-UINT32-ST; + } + list queue-average-length { + description + "Queue average length"; + uses POLICY-PARAM-UINT32-ST; + } + list queue-max-length { + description + "Queue maximum length"; + uses POLICY-PARAM-UINT32-ST; + } + } + + grouping GEN-STATS-ST { + description + "Counters common to all features"; + leaf transmit-packets { + type uint64; + units "byte"; + description + "Transmitted packets (packets/bytes)"; + } + leaf transmit-bytes { + type uint64; + units "byte"; + description + "Transmitted bytes (packets/bytes)"; + } + leaf total-drop-packets { + type uint64; + units "byte"; + description + "Dropped packets (packets/bytes)"; + } + leaf total-drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes (packets/bytes)"; + } + leaf total-drop-rate { + type uint32; + units "byte"; + description + "Total drop rate (packets/bytes)"; + } + leaf match-data-rate { + type uint32; + units "kbit/s"; + description + "Incoming matched data rate in kbps"; + } + leaf total-transmit-rate { + type uint32; + units "kbit/s"; + description + "Total transmit rate in kbps"; + } + leaf pre-policy-matched-packets { + type uint64; + description + "Matched pkts before applying policy"; + } + leaf pre-policy-matched-bytes { + type uint64; + units "byte"; + description + "Matched bytes before applying policy"; + } + } + + grouping CLASS-STATS { + description + "CLASS STATS"; + container general-stats { + description + "general stats"; + uses GEN-STATS-ST; + } + container iphc-stats { + description + "IPHC stats"; + uses IPHC-STATS-ST; + } + container child-policy { + description + "child policy"; + } + container cac-stats { + description + "bag for cac stats"; + uses CAC-STATS-ST; + } + leaf counter-validity-bitmask { + type uint64; + units "megabyte"; + description + " Bitmask to indicate which counter or counters + are undetermined. Counters will be marked + undetermined when one or more classes share + queues with class-default because in such cases + the value of counters for each class is invalid. + Based on the flag(s) set, the following counters + will be marked undetermined. For example, if + value of this object returned is 0x00000101, + counters + TransmitPackets/TransmitBytes/TotalTransmitRate + and DropPackets/DropBytes are undetermined + .0x00000001 - Transmit + (TransmitPackets/TransmitBytes/TotalTransmitRate + ), 0x00000002 - Total drop + (TotalDropPackets/TotalDropBytes/TotalDropRate), + 0x00000004 - Match + (MatchDataRate/PrepolicyMatchedPackets + /PrepolicyMatchedBytes), 0x00000100 - Police + drop (DropPackets/DropBytes), 0x00000200 - + Police conform + (ConformPackets/ConformBytes/ConformRate), + 0x00000400 - Police exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00000800 - Police violate + (ViolatePackets/ViolateBytes/ViolateRate), + 0x00001000 - Parent policer drop + (ParentDropPackets/ParentDropBytes), 0x00010000 + - Queueing drop (TailDropPackets/TailDropBytes), + 0x00020000 - Red queue drop + (RandomDropPackets/RandomDropBytes), 0x00040000 + - Queue maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes), + 0x00080000 - Queue conform + (ConformPackets/ConformBytes/ConformRate), + 0x00100000 - Queue exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00200000 - CLP limit drop + (ATM_CLP0DropPackets/ATM_CLP0DropBytes + /ATM_CLP1DropPackets/ATM_CLP1DropBytes), + 0x01000000 - RED transmit + (RedTransmitPackets/RedTransmitBytes), + 0x02000000 - RED drop + (RandomDropPackets/RandomDropBytes), 0x04000000 + - RED maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes)"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "ClassName"; + } + leaf shared-queue-id { + type uint32; + description + "q-id of the shared queue for this class"; + } + leaf queue-descr { + type string { + length "0..256"; + } + description + "Description of queue for the class"; + } + leaf cac-state { + type Cac-state; + description + "CACState"; + } + list queue-stats-array { + description + "array of queue stats"; + uses Q-STATS-ST; + } + list police-stats-array { + description + "array of police stats"; + uses PLC-STATS-ST; + } + list wred-stats-array { + description + "array of red stats"; + uses RED-PROFILE-STATS; + } + } + + grouping QOS-STATS { + description + "policy map statistics"; + leaf policy-name { + type string { + length "0..65"; + } + description + "PolicyName"; + } + leaf subscriber-group { + type string { + length "0..34"; + } + description + "SubscriberGroup"; + } + leaf state { + type Policy-state; + description + "State"; + } + leaf state-description { + type string { + length "0..128"; + } + description + "StateDescription"; + } + leaf satid { + type uint32; + description + "to maintain satellite id"; + } + leaf policy-timestamp { + type uint64; + description + "per policy timestamp"; + } + list class-stat { + description + "array of classes contained in policy"; + uses CLASS-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub2.yang new file mode 100644 index 000000000..b3341a039 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper-sub2.yang @@ -0,0 +1,1409 @@ +submodule Cisco-IOS-XR-asr9k-qos-oper-sub2 { + belongs-to Cisco-IOS-XR-asr9k-qos-oper { + prefix Cisco-IOS-XR-asr9k-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-qos package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-09 { + description + "pi changes to support wred drop probability"; + semver:module-version "1.0.0"; + } + revision 2020-12-23 { + description + "Introduced an CLI to show qos performance stats"; + } + revision 2019-09-30 { + description + "YANG support for PWHE interface"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Shape-profiletype-v2 { + type enumeration { + enum "invalid" { + description + "Shape Profile Type Invalid"; + } + enum "always" { + description + "Shape Profile Type Always"; + } + enum "never" { + description + "Shape Profile Type Never"; + } + enum "explicit" { + description + "Shape Profile Type Explicit"; + } + enum "scale" { + description + "Shape Profile Type Scale"; + } + enum "grid" { + description + "Shape Profile Type Grid"; + } + } + description + "SHAPE profile type"; + } + + typedef Action { + type enumeration { + enum "police-transmit" { + description + "Police action transmit"; + } + enum "police-set-transmit" { + description + "Police action set transmit"; + } + enum "police-drop" { + description + "Police action drop"; + } + enum "police-unknown" { + description + "Police action unknown"; + } + } + description + "Action type"; + } + + typedef Action-opcode { + type enumeration { + enum "precedence" { + value 0; + description + "Precedence"; + } + enum "dscp" { + value 1; + description + "DSCP"; + } + enum "discard-class" { + value 2; + description + "Discard class"; + } + enum "qos-group" { + value 3; + description + "QoS group"; + } + enum "cos-inner" { + value 4; + description + "COS inner"; + } + enum "cos" { + value 5; + description + "COS"; + } + enum "exp-top" { + value 6; + description + "EXP top"; + } + enum "exp-imp" { + value 7; + description + "EXP IMP"; + } + enum "tunnel-precedence" { + value 8; + description + "Tunnel precedence"; + } + enum "tunnel-dscp" { + value 9; + description + "Tunnel DSCP"; + } + enum "itag-dei" { + value 10; + description + "ITAG DEI"; + } + enum "itag-cos" { + value 11; + description + "ITAG COS"; + } + enum "cos-imposition" { + value 12; + description + "COS imposition"; + } + enum "dei-imposition" { + value 13; + description + "DEI imposition"; + } + enum "dei" { + value 14; + description + "DEI"; + } + enum "no-marking" { + value 15; + description + "No marking"; + } + } + description + "Action opcode"; + } + + typedef Wred { + type enumeration { + enum "wred-cos" { + description + "WRED based on COS"; + } + enum "wred-dscp" { + description + "WRED based on DSCP"; + } + enum "wred-precedence" { + description + "WRED based on Precedence"; + } + enum "wred-discard-class" { + description + "WRED based on discard class"; + } + enum "wred-mpls-exp" { + description + "WRED based on MPLS EXP"; + } + enum "red-with-user-min-max" { + description + "RED with user defined min and max"; + } + enum "red-with-default-min-max" { + description + "RED with default min and max"; + } + enum "wred-dei" { + description + "WRED DEI"; + } + } + description + "WRED type"; + } + + typedef Tb-algorithm { + type enumeration { + enum "inactive" { + value 0; + description + "Inactive, configured but disabled"; + } + enum "single" { + value 1; + description + "Single token bucket"; + } + enum "single-rate-tcm" { + value 2; + description + "Single rate three color marker"; + } + enum "two-rate-tcm" { + value 3; + description + "Two rate three color marker"; + } + enum "mef-tcm" { + value 4; + description + "Allows coupling between CIR and PIR tb's"; + } + enum "dummy" { + value 5; + description + "Internal dummy token bucket for coupled-policer + child"; + } + } + description + "Tokenbucket type"; + } + + typedef Queue { + type enumeration { + enum "port-default" { + description + "Port default queue"; + } + enum "class-default" { + description + "The default queue in this policy"; + } + enum "priority1-queue" { + description + "Create the priority 1 queue in the level which + will be shared by other p1 classes"; + } + enum "priority2-queue" { + description + "Create the priority 2 queue in the level, which + will be shared by other p2 classes"; + } + enum "priority3-queue" { + description + "Create the priority 3 queue in the level, which + will be shared by other p3 classes"; + } + enum "priority4-queue" { + description + "Create the priority 4 queue in the level, which + will be shared by other p4 classes"; + } + enum "priority5-queue" { + description + "Create the priority 5 queue in the level, which + will be shared by other p5 classes"; + } + enum "priority6-queue" { + description + "Create the priority 6 queue in the level, which + will be shared by other p6 classes"; + } + enum "priority7-queue" { + description + "Create the priority 7 queue in the level, which + will be shared by other p7 classes"; + } + enum "first-p1-class-name" { + description + "Current level's priority 1 queue"; + } + enum "first-p2-class-name" { + description + "Current level's priority 2 queue"; + } + enum "first-p3-class-name" { + description + "Current level's priority 3 queue"; + } + enum "first-p4-class-name" { + description + "Current level's priority 4 queue"; + } + enum "first-p5-class-name" { + description + "Current level's priority 5 queue"; + } + enum "first-p6-class-name" { + description + "Current level's priority 6 queue"; + } + enum "first-p7-class-name" { + description + "Current level's priority 7 queue"; + } + enum "port-priority1" { + description + "Port priority 1 queue"; + } + enum "port-priority2" { + description + "Port priority 2 queue"; + } + enum "port-priority3" { + description + "Port priority 3 queue"; + } + enum "port-priority4" { + description + "Port priority 4 queue"; + } + enum "port-priority5" { + description + "Port priority 5 queue"; + } + enum "port-priority6" { + description + "Port priority 6 queue"; + } + enum "port-priority7" { + description + "Port priority 7 queue"; + } + enum "new" { + description + "Create a new queue for this class"; + } + enum "parent-class" { + description + "Under parent queue"; + } + enum "priority1" { + description + "Priority 1"; + } + enum "priority2" { + description + "Priority 2"; + } + enum "priority3" { + description + "Priority 3"; + } + enum "priority4" { + description + "Priority 4"; + } + enum "priority5" { + description + "Priority 5"; + } + enum "priority6" { + description + "Priority 6"; + } + enum "priority7" { + description + "Priority 7"; + } + enum "priority-ignored-normal" { + description + "Priority ignored level"; + } + enum "normal-priority" { + description + "Normal priority"; + } + enum "class-unknown" { + description + "Class unknown"; + } + enum "unknown-priority" { + description + "Unknown priority"; + } + } + description + "Queue type"; + } + + typedef Qos-unit { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid type"; + } + enum "bytes" { + value 1; + description + "Bytes"; + } + enum "kilobytes" { + value 2; + description + "Kilobytes"; + } + enum "megabytes" { + value 3; + description + "Megabytes"; + } + enum "gigabytes" { + value 4; + description + "Gigabytes"; + } + enum "bps" { + value 5; + description + "Bits per second"; + } + enum "kbps" { + value 6; + description + "Kilo bits per second"; + } + enum "mbps" { + value 7; + description + "Mega bits per second"; + } + enum "gbps" { + value 8; + description + "Giga bits per second"; + } + enum "cells-per-second" { + value 9; + description + "Cells per second"; + } + enum "packets-per-second" { + value 10; + description + "Packets per second"; + } + enum "microsecond" { + value 11; + description + "Microsecond"; + } + enum "millisecond" { + value 12; + description + "Millisecond"; + } + enum "packets" { + value 13; + description + "Number of packets"; + } + enum "cells" { + value 14; + description + "Number of cells"; + } + enum "percentage" { + value 15; + description + "Percentage"; + } + enum "ratio" { + value 16; + description + "Ratio"; + } + } + description + "QoS parameter unit"; + } + + grouping QOS-SHOW-EA-PROFILE-ST { + description + "QoS profile structure"; + leaf total-time { + type uint64; + description + "Total Time"; + } + leaf total-count { + type uint64; + description + "Total count"; + } + leaf time-highest { + type string { + length "0..11"; + } + description + "Time Highest"; + } + leaf time-lowest { + type string { + length "0..11"; + } + description + "Time Lowest"; + } + leaf total-events { + type uint64; + description + "Total Events"; + } + } + + grouping QOS-EA-PERF-STATS { + description + "QoS perf stats"; + container profile-data { + description + "Profiling Data"; + uses QOS-SHOW-EA-PROFILE-ST; + } + } + + grouping WRED-CURVE-PARAMS-V2 { + description + "Typhoon WRED curve parameters"; + container min-threshold { + description + "Minimum threshold"; + uses QOS-PARAM; + } + container min-threshold-user-config { + description + "Minimum threshold WRED context"; + uses QOS-PARAM; + } + container max-threshold { + description + "Maximum threshold"; + uses QOS-PARAM; + } + container max-threshold-user-config { + description + "Maximum threshold WRED context"; + uses QOS-PARAM; + } + leaf absolute-index { + type uint16; + description + "Absolute Index"; + } + leaf template-id { + type uint16; + description + "Template ID"; + } + leaf curve-id { + type uint16; + description + "Curve ID"; + } + leaf match { + type string; + description + "WRED match if precedence start value equals to + end value Format: , else range + Format: "; + } + leaf exp-match { + type string; + description + "WRED exp match if EXP start value equals to end + value Format: , else range Format: + "; + } + } + + grouping WRED-PARAMS-V2 { + description + "Typhoon WRED parameters"; + leaf type { + type Wred; + description + "WRED type"; + } + leaf curve-xr { + type uint16; + description + "Number of curves"; + } + list curve { + max-elements "64"; + description + "Curve details"; + uses WRED-CURVE-PARAMS-V2; + } + } + + grouping PIR-SHAPE-PARAMS-V2 { + description + "PIR Shape Params"; + container pir { + description + "PIR in kbps"; + uses QOS-PARAM; + } + container pbs { + description + "PBS in bytes"; + uses QOS-PARAM; + } + leaf chunk-id { + type uint32; + description + "Shape Chunk ID"; + } + leaf profile-id { + type uint16; + description + "Shape profile ID"; + } + leaf scale-factor { + type uint16; + description + "Scale Factor"; + } + } + + grouping CIR-SHAPE-PARAMS-V2 { + description + "CIR Shape Params"; + container cir { + description + "CIR in kbps"; + uses QOS-PARAM; + } + container config-bandwidth { + description + "Config bandwidth"; + uses SHAPE-USER-CFG-BW; + } + container cbs { + description + "CBS in bytes"; + uses QOS-PARAM; + } + leaf chunk-id { + type uint32; + description + "Shape Chunk ID"; + } + leaf profile-id { + type uint16; + description + "Shape profile ID"; + } + leaf scale-factor { + type uint16; + description + "Scale Factor"; + } + } + + grouping SHAPER-PARAMS-V2 { + description + "Shaper parameters"; + container cir-shape { + description + "CIR shaper params"; + uses CIR-SHAPE-PARAMS-V2; + } + container pir-shape { + description + "PIR shaper params"; + uses PIR-SHAPE-PARAMS-V2; + } + leaf cir-shape-type { + type Shape-profiletype-v2; + description + "CIR Shaper type"; + } + leaf pir-shape-type { + type Shape-profiletype-v2; + description + "PIR Shaper type"; + } + } + + grouping QUEUE-LIMIT-PARAMS-V2 { + description + "Queue limit parameters"; + container queue-limit { + description + "Queue limit in kbytes"; + uses QOS-PARAM; + } + container config-queue-limit { + description + "Config queue limit"; + uses QOS-PARAM; + } + leaf absolute-index { + type uint16; + description + "Absolute Index"; + } + leaf template-id { + type uint16; + description + "Template ID"; + } + leaf curve-id { + type uint16; + description + "Curve ID"; + } + } + + grouping QOS-SHOW-EA-ST-V2 { + description + "QoS policy"; + list qos-show-ea-st-v2 { + description + "qos show ea st v2"; + container queue { + description + "Queue parameters"; + uses QUEUE-PARAMS; + } + container queue-limit-parameters { + description + "Queue limit parameters"; + uses QUEUE-LIMIT-PARAMS-V2; + } + container shape { + description + "Shape parameters"; + uses SHAPER-PARAMS-V2; + } + container police { + description + "Police parameters"; + uses POLICE-PARAMS; + } + container wfq { + description + "WFQ parameters"; + uses WFQ-PARAMS; + } + container wred { + description + "WRED parameters"; + uses WRED-PARAMS-V2; + } + container mark { + description + "Mark parameters"; + uses CLASS-MARK-ACTIONS; + } + leaf class-level { + type uint8; + description + "Class level"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "Class name"; + } + leaf policy-name { + type string { + length "0..65"; + } + description + "Policy name"; + } + leaf parent-policy-name { + type string { + length "0..65"; + } + description + "Parent policy name"; + } + leaf parent-class-name { + type string { + length "0..65"; + } + description + "Parent class name"; + } + } + } + + grouping MARK-ACTION { + description + "Marking parameters"; + leaf mark-value { + type uint8; + description + "Mark value"; + } + leaf action-opcode { + type Action-opcode; + description + "Action opcode"; + } + } + + grouping MARK-ACTION-PER-CATEGORY { + description + "Marking action"; + leaf action-type { + type Action; + description + "Action type"; + } + list mark-detail { + max-elements "2"; + description + "Mark value"; + uses MARK-ACTION; + } + } + + grouping CLASS-MARK-ACTIONS { + description + "Mark parameters"; + container child-mark { + description + "Child mark only"; + uses MARK-ACTION-PER-CATEGORY; + } + container police-conform { + description + "Child police conform mark"; + uses MARK-ACTION-PER-CATEGORY; + } + container police-exceed { + description + "Child police exceed mark"; + uses MARK-ACTION-PER-CATEGORY; + } + container police-violate { + description + "Child police violate mark"; + uses MARK-ACTION-PER-CATEGORY; + } + container parent-mark { + description + "Parent mark only"; + uses MARK-ACTION-PER-CATEGORY; + } + container parent-police-conform { + description + "Parent police conform mark"; + uses MARK-ACTION-PER-CATEGORY; + } + container parent-police-exceed { + description + "Parent police exceed mark"; + uses MARK-ACTION-PER-CATEGORY; + } + container parent-police-violate { + description + "Parent police violate mark"; + uses MARK-ACTION-PER-CATEGORY; + } + } + + grouping WRED-CURVE-PARAMS-V1 { + description + "Trident WRED curve parameters"; + container min-threshold { + description + "Minimum threshold"; + uses QOS-PARAM; + } + container min-threshold-user-config { + description + "Minimum threshold WRED context"; + uses QOS-PARAM; + } + container max-threshold { + description + "Maximum threshold"; + uses QOS-PARAM; + } + container max-threshold-user-config { + description + "Maximum threshold WRED context"; + uses QOS-PARAM; + } + leaf match { + type string; + description + "WRED precedence match if precedence start value + equals to end value Format: , else + range Format: "; + } + } + + grouping WRED-PARAMS-V1 { + description + "Trident WRED parameters"; + leaf type { + type Wred; + description + "WRED type"; + } + leaf curve-xr { + type uint16; + description + "Number of curves"; + } + leaf table-id { + type uint8; + description + "Table ID"; + } + leaf profile-id { + type uint32; + description + "Profile ID"; + } + leaf scaling-profile-id { + type uint32; + description + "Scaling profile ID"; + } + list curve { + max-elements "64"; + description + "Curve details"; + uses WRED-CURVE-PARAMS-V1; + } + } + + grouping WFQ-PARAMS { + description + "WFQ parameters"; + container parent-bandwidth { + description + "Parent bandwidth"; + uses QOS-PARAM; + } + container bandwidth { + description + "CFG Bandwidth"; + uses QOS-PARAM; + } + leaf profile-id { + type uint32; + description + "WFQ profile"; + } + leaf committed-weight { + type uint32; + description + "Committed weight"; + } + leaf excess-weight { + type uint16; + description + "Excess weight"; + } + leaf excess-ratio { + type uint16; + description + "Parent Excess ratio"; + } + leaf chunk-id { + type uint32; + description + "Chunk ID"; + } + leaf level { + type uint8; + description + "Level"; + } + } + + grouping CFG-POLICE { + description + "Config police parameters"; + container average-rate { + description + "Average rate"; + uses QOS-PARAM; + } + container peak-rate { + description + "Peak rate"; + uses QOS-PARAM; + } + container conform-burst { + description + "Conform burst"; + uses QOS-PARAM; + } + container exceed-burst { + description + "Exceed burst"; + uses QOS-PARAM; + } + } + + grouping POLICE-PARAMS { + description + "Police parameters"; + container cir { + description + "CIR"; + uses QOS-PARAM; + } + container cbs { + description + "CBS"; + uses QOS-PARAM; + } + container pir { + description + "PIR"; + uses QOS-PARAM; + } + container pbs { + description + "PBS"; + uses QOS-PARAM; + } + container police-config-parameters { + description + "Police config parameters"; + uses CFG-POLICE; + } + leaf policer-type { + type Tb-algorithm; + description + "Policer type"; + } + leaf profile-id { + type uint32; + description + "Police profile ID"; + } + } + + grouping SHAPE-USER-CFG-BW { + description + "Config bandwidth parameters"; + container minimum-rate { + description + "Minimum bandwidth rate"; + uses QOS-PARAM; + } + } + + grouping SHAPER-PARAMS-V1 { + description + "Shaper parameters"; + container cir { + description + "CIR in kbps"; + uses QOS-PARAM; + } + container config-bandwidth { + description + "Config bandwidth"; + uses SHAPE-USER-CFG-BW; + } + container cbs { + description + "CBS in bytes"; + uses QOS-PARAM; + } + container pir { + description + "PIR in kbps"; + uses QOS-PARAM; + } + container pbs { + description + "PBS in bytes"; + uses QOS-PARAM; + } + leaf profile-id { + type uint16; + description + "Shape profile ID"; + } + } + + grouping QUEUE-LIMIT-PARAMS-V1 { + description + "Queue limit parameters"; + container queue-limit { + description + "Queue limit in kbytes"; + uses QOS-PARAM; + } + container config-queue-limit { + description + "Config queue limit"; + uses QOS-PARAM; + } + leaf profile-id { + type uint32; + description + "Profile ID"; + } + leaf scaling-profile-id { + type uint32; + description + "Scaling profile ID"; + } + } + + grouping QUEUE-PARAMS { + description + "Queue parameters"; + leaf queue-id { + type uint32; + description + "Queue ID"; + } + leaf queue-type { + type Queue; + description + "Queue type"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "Class name"; + } + } + + grouping QOS-SHOW-EA-ST-V1 { + description + "QoS policy"; + list qos-show-ea-st-v1 { + description + "qos show ea st v1"; + container queue { + description + "Queue parameters"; + uses QUEUE-PARAMS; + } + container queue-limit-parameters { + description + "Queue limit parameters"; + uses QUEUE-LIMIT-PARAMS-V1; + } + container shape { + description + "Shape parameters"; + uses SHAPER-PARAMS-V1; + } + container police { + description + "Police parameters"; + uses POLICE-PARAMS; + } + container wfq { + description + "WFQ parameters"; + uses WFQ-PARAMS; + } + container wred { + description + "WRED parameters"; + uses WRED-PARAMS-V1; + } + container mark { + description + "Mark parameters"; + uses CLASS-MARK-ACTIONS; + } + leaf class-level { + type uint8; + description + "Class level"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "Class name"; + } + leaf policy-name { + type string { + length "0..65"; + } + description + "Policy name"; + } + leaf parent-policy-name { + type string { + length "0..65"; + } + description + "Parent policy name"; + } + leaf parent-class-name { + type string { + length "0..65"; + } + description + "Parent class name"; + } + } + } + + grouping QOS-PARAM { + description + "Config details"; + leaf value { + type uint32; + description + "Config value"; + } + leaf unit { + type Qos-unit; + description + "Config unit"; + } + } + + grouping INTF-CONFIG-PROGRAMED { + description + "Interface configured and programmed parameters"; + container port-config-bandwidth { + description + "Bandwidth due to port speed change"; + uses QOS-PARAM; + } + container ancp-config-bandwidth { + description + "Bandwidth obtain from IM"; + uses QOS-PARAM; + } + container ancp-programmed-bandwidth { + description + "ANCP bandwidth that was programmed"; + uses QOS-PARAM; + } + container port-shaper-rate { + description + "Bandwidth that was programmed"; + uses QOS-PARAM; + } + } + + grouping QOS-SHOW-EA-HEADER-ST { + description + "QoS policy header"; + container interface-parameters { + description + "Interface config and programmed parameters"; + uses INTF-CONFIG-PROGRAMED; + } + container programmed-bandwidth { + description + "Bandwidth that was programmed"; + uses QOS-PARAM; + } + leaf classes { + type uint16; + description + "Number of classes"; + } + leaf policy-name { + type string { + length "0..65"; + } + description + "Policy name"; + } + } + + grouping QOS-SHOW-EA-POLICY { + description + "QoS policy"; + container header { + description + "QoS policy header"; + uses QOS-SHOW-EA-HEADER-ST; + } + container policy { + description + "Trident QoS policy details"; + uses QOS-SHOW-EA-ST-V1; + } + container policy-typhoon { + description + "Typhoon QoS policy details"; + uses QOS-SHOW-EA-ST-V2; + } + } + + grouping QOS-EA-CAPABILITY { + description + "QoS capability"; + leaf max-policy-maps { + type uint32; + description + "Maximum policy maps per system"; + } + leaf max-policy-hierarchy { + type uint32; + description + "Maximum policy hierarchy"; + } + leaf max-policy-name-length { + type uint32; + description + "Maximum policy name length"; + } + leaf max-classes-per-child-policy { + type uint32; + description + "Maximum classes per child policy"; + } + leaf max-classes-per-policy { + type uint32; + description + "Maximum classes per policy"; + } + leaf max-classes-per-grand-parent-policy { + type uint32; + description + "Maximum classes per parent policy"; + } + leaf max-police-actions-per-class { + type uint32; + description + "Maximum police actions per class"; + } + leaf max-marking-actions-per-class { + type uint32; + description + "Maximum marking action per class"; + } + leaf max-matches-per-class { + type uint32; + description + "Maximum matches per class"; + } + leaf max-classmap-name-length { + type uint32; + description + "Maximum classmap name length"; + } + leaf max-bundle-members { + type uint32; + description + "Maximum bundle members"; + } + leaf max-instance-name-length { + type uint32; + description + "Maximum instance name length"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper.yang new file mode 100644 index 000000000..d85d99abc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-qos-oper.yang @@ -0,0 +1,380 @@ +module Cisco-IOS-XR-asr9k-qos-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-qos-oper"; + prefix asr9k-qos-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-qos-oper-sub2 { + revision-date 2021-04-09; + } + include Cisco-IOS-XR-asr9k-qos-oper-sub1 { + revision-date 2021-04-09; + } + + 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 asr9k-qos package operational data. + + This module contains definitions + for the following management objects: + platform-qos: QoS ASR9K platform operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-09 { + description + "pi changes to support wred drop probability"; + semver:module-version "1.0.0"; + } + revision 2020-12-23 { + description + "Introduced an CLI to show qos performance stats"; + } + revision 2019-09-30 { + description + "YANG support for PWHE interface"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NV-SATELLITE-INPUT { + description + "Common node of nv-satellite-interface, + satellite-id, member-interface"; + container nv-satellite-input { + description + "A piece of Satellite QoS policy-map operational + data for input"; + uses NV-SAT-STATISTICS; + } + } + + grouping DETAILS { + description + "Common node of output, input, member-interface, + pin-interface"; + container details { + description + "QoS policy direction egress"; + uses QOS-SHOW-EA-POLICY; + } + } + + grouping STATISTICS { + description + "Common node of input, output, policy-name"; + container statistics { + description + "Policy-map statistics operational data for an + interface"; + uses QOS-STATS; + } + } + + grouping INTERFACE { + description + "Common node of interface-table, + nv-interface-table"; + list interface { + key "interface-name"; + description + "QoS policy-map operational data for a particular + interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses MEMBER-INTERFACE-TABLE; + uses SATELLITE-ID-TABLE; + uses INPUT; + uses OUTPUT; + } + } + + grouping INPUT { + description + "Common node of shared-policy-instance, + member-interface, interface"; + container input { + description + "A piece of QoS policy-map operational data for + an interface"; + uses STATISTICS; + uses POLICY-NAME-TABLE; + } + } + + grouping MEMBER-INTERFACE-TABLE { + description + "Common node of interface, nv-satellite-interface, + shared-policy-instance"; + container member-interfaces { + description + "QoS policy-map member interface table"; + list member-interface { + key "interface-name"; + description + "QoS policy-map member interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Name of member interface"; + } + uses SATELLITE-ID-TABLE; + uses INPUT; + uses NV-SATELLITE-INPUT; + uses OUTPUT; + uses NV-SATELLITE-OUTPUT; + } + } + } + + grouping QOS-ASR9K-OPER-MEMBER-INTERFACE-TABLE { + description + "Common node of interface, nv-satellite-interface, + shared-policy-instanceCommon node of + bundle-output, bundle-input"; + container member-interfaces { + description + "QoS list of member interfaces"; + list member-interface { + key "interface-name"; + description + "QoS interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Memeber interface"; + } + uses DETAILS; + } + } + } + + grouping POLICY-NAME-TABLE { + description + "Common node of input, output"; + container policy-names { + description + "Policy-map statistics operational data for an + interface"; + list policy-name { + key "service-policy-name"; + description + "Policy-map statistics operational data for an + interface"; + leaf service-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy"; + } + uses STATISTICS; + } + } + } + + grouping NV-SATELLITE-OUTPUT { + description + "Common node of nv-satellite-interface, + satellite-id, member-interface"; + container nv-satellite-output { + description + "A piece of Satellite QoS policy-map operational + data for an interface"; + uses NV-SAT-STATISTICS; + } + } + + grouping OUTPUT { + description + "Common node of shared-policy-instance, + member-interface, interface"; + container output { + description + "A piece of QoS policy-map operational data for + an interface"; + uses STATISTICS; + uses POLICY-NAME-TABLE; + } + } + + grouping NV-SAT-STATISTICS { + description + "Common node of nv-satellite-input, + nv-satellite-output"; + container nv-sat-statistics { + description + "Policy-map statistics operational data for + satellite interface"; + uses QOS-STATS; + } + } + + grouping SATELLITE-ID-TABLE { + description + "Common node of interface, member-interface"; + container satellite-ids { + description + "Satellite ID information"; + list satellite-id { + key "nv-satellite-id"; + description + "Satellite ID information"; + leaf nv-satellite-id { + type uint32; + description + "Satellite ID"; + } + uses NV-SATELLITE-INPUT; + uses NV-SATELLITE-OUTPUT; + } + } + } + + grouping PIN-INTERFACE-TABLE { + description + "Common node of pwhe-output, pwhe-input"; + container pin-interfaces { + description + "QoS list of member interfaces"; + list pin-interface { + key "interface-name"; + description + "QoS interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Memeber interface"; + } + uses DETAILS; + } + } + } + + container platform-qos { + config false; + description + "QoS ASR9K platform operational data "; + container nodes { + description + "List of nodes with platform specific QoS + configuration"; + list node { + key "node-name"; + description + "Node with platform specific QoS configuration"; + container capability { + description + "QoS system capability"; + uses QOS-EA-CAPABILITY; + } + container pwhe-interfaces { + description + "QoS list of Pwhe interfaces"; + list pwhe-interface { + key "interface-name"; + description + "QoS interface name"; + container pwhe-output { + description + "QoS policy direction output"; + uses PIN-INTERFACE-TABLE; + } + container pwhe-input { + description + "QoS policy direction output"; + uses PIN-INTERFACE-TABLE; + } + leaf interface-name { + type xr:Interface-name; + description + "Pwhe interface name"; + } + } + } + container interfaces { + description + "QoS list of interfaces"; + list interface { + key "interface-name"; + description + "QoS interface name"; + container input { + description + "QoS policy direction ingress"; + uses DETAILS; + } + container output { + description + "QoS policy direction egress"; + uses DETAILS; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + container bundle-interfaces { + description + "QoS list of bundle interfaces"; + list bundle-interface { + key "interface-name"; + description + "QoS interface name"; + container bundle-output { + description + "QoS policy direction output"; + uses QOS-ASR9K-OPER-MEMBER-INTERFACE-TABLE; + } + container bundle-input { + description + "QoS policy direction output"; + uses QOS-ASR9K-OPER-MEMBER-INTERFACE-TABLE; + } + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + } + } + container performance { + description + "QoS system performance"; + uses QOS-EA-PERF-STATS; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-cfg.yang new file mode 100644 index 000000000..88c23184a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-asr9k-xbar-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-xbar-cfg"; + prefix asr9k-xbar-cfg; + + 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 asr9k-xbar package configuration. + + This module contains definitions + for the following management objects: + fabric-mgid-config: Configure Global Fabric Mgid Settings + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-07 { + description + "IOS XR 7.3.1 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fabric-mgid-config { + description + "Configure Global Fabric Mgid Settings"; + container mgid-mcast-scale { + description + "MGID mcast scale config"; + leaf enable { + type boolean; + description + "enable MGID mcast scale"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub1.yang new file mode 100644 index 000000000..1c2246b52 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub1.yang @@ -0,0 +1,1147 @@ +submodule Cisco-IOS-XR-asr9k-xbar-oper-sub1 { + belongs-to Cisco-IOS-XR-asr9k-xbar-oper { + prefix Cisco-IOS-XR-asr9k-xbar-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-xbar package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-07-29 { + description + "Support for bandwidth-utils-stats CLI."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping XBAR-EDM-SM15-PE-CC-STATS { + description + "XBAR EDM SM15 PE CC STATS"; + leaf in-pkt-cnt { + type uint64; + description + "IN PKT CNT"; + } + leaf out-path0-pkt-cnt { + type uint64; + description + "OUT PATH0 PKT CNT"; + } + leaf out-path1-pkt-cnt { + type uint64; + description + "OUT PATH1 PKT CNT"; + } + leaf xbar-ecc-drop-pkt-cnt { + type uint64; + description + "XBAR ECC DROP PKT CNT"; + } + leaf mem0-drop-pkt-cnt { + type uint64; + description + "MEM0 DROP PKT CNT"; + } + leaf mem1-drop-pkt-cnt { + type uint64; + description + "MEM1 DROP PKT CNT"; + } + leaf congn-pkt-cnt { + type uint64; + description + "CONGN PKT CNT"; + } + leaf xbar-ecc-single-err-cnt { + type uint64; + description + "XBAR ECC SINGLE ERR CNT"; + } + leaf xbar-ecc-double-err-cnt { + type uint64; + description + "XBAR ECC DOUBLE ERR CNT"; + } + leaf mem0-ecc-single-err-cnt { + type uint64; + description + "MEM0 ECC SINGLE ERR CNT"; + } + leaf mem0-ecc-double-err-cnt { + type uint64; + description + "MEM0 ECC DOUBLE ERR CNT"; + } + leaf mem1-ecc-single-err-cnt { + type uint64; + description + "MEM1 ECC SINGLE ERR CNT"; + } + leaf mem1-ecc-double-err-cnt { + type uint64; + description + "MEM1 ECC DOUBLE ERR CNT"; + } + leaf fc-cc-0-1-trans-cnt { + type uint64; + description + "FC CC 0 1 TRANS CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Egress Control Cast Rate"; + } + } + + grouping XBAR-EDM-SM15-PE-MC-STATS { + description + "XBAR EDM SM15 PE MC STATS"; + leaf in-pkt-mc-cnt { + type uint64; + description + "IN PKT MC CNT"; + } + leaf in-full-line-mc-cnt { + type uint64; + description + "IN FULL LINE MC CNT"; + } + leaf pkt-trunc-eop-mc-cnt { + type uint64; + description + "PKT TRUNC EOP MC CNT"; + } + leaf pkt-sop-drop-mc-cnt { + type uint64; + description + "PKT SOP DROP MC CNT"; + } + leaf pkt-ecc-err-drop-mc-cnt { + type uint64; + description + "PKT ECC ERR DROP MC CNT"; + } + leaf pkt-ecc-err-trunc-cnt-mc-cnt { + type uint64; + description + "PKT ECC ERR TRUNC CNT MC CNT"; + } + leaf ecc-1bit-err-mc0-cnt { + type uint64; + description + "ECC 1BIT ERR MC0 CNT"; + } + leaf ecc-1bit-err-mc1-cnt { + type uint64; + description + "ECC 1BIT ERR MC1 CNT"; + } + leaf ecc-1bit-err-mc2-cnt { + type uint64; + description + "ECC 1BIT ERR MC2 CNT"; + } + leaf ecc-2bit-err-mc0-cnt { + type uint64; + description + "ECC 2BIT ERR MC0 CNT"; + } + leaf ecc-2bit-err-mc1-cnt { + type uint64; + description + "ECC 2BIT ERR MC1 CNT"; + } + leaf ecc-2bit-err-mc2-cnt { + type uint64; + description + "ECC 2BIT ERR MC2 CNT"; + } + leaf out-pkt-mc-cnt { + type uint64; + description + "OUT PKT MC CNT"; + } + leaf fe-mc-sop-eop-pack-cnt { + type uint64; + description + "FE MC SOP EOP PACK CNT"; + } + leaf fc-mc-0-1-trans-cnt { + type uint64; + description + "FC MC 0 1 TRANS CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Egress Multicast Rate"; + } + } + + grouping XBAR-EDM-SM15-PE-UC-STATS { + description + "XBAR EDM SM15 PE UC STATS"; + leaf in-pkt-uc0-cnt { + type uint64; + description + "IN PKT UC0 CNT"; + } + leaf in-pkt-uc1-cnt { + type uint64; + description + "IN PKT UC1 CNT"; + } + leaf in-pkt-uc2-cnt { + type uint64; + description + "IN PKT UC2 CNT"; + } + leaf in-full-line-uc0-cnt { + type uint64; + description + "IN FULL LINE UC0 CNT"; + } + leaf in-full-line-uc1-cnt { + type uint64; + description + "IN FULL LINE UC1 CNT"; + } + leaf in-full-line-uc2-cnt { + type uint64; + description + "IN FULL LINE UC2 CNT"; + } + leaf pkt-trunc-eop-uc0-cnt { + type uint64; + description + "PKT TRUNC EOP UC0 CNT"; + } + leaf pkt-trunc-eop-uc1-cnt { + type uint64; + description + "PKT TRUNC EOP UC1 CNT"; + } + leaf pkt-trunc-eop-uc2-cnt { + type uint64; + description + "PKT TRUNC EOP UC2 CNT"; + } + leaf pkt-sop-drop-uc0-cnt { + type uint64; + description + "PKT SOP DROP UC0 CNT"; + } + leaf pkt-sop-drop-uc1-cnt { + type uint64; + description + "PKT SOP DROP UC1 CNT"; + } + leaf pkt-sop-drop-uc2-cnt { + type uint64; + description + "PKT SOP DROP UC2 CNT"; + } + leaf pkt-ecc-err-drop-uc-cnt { + type uint64; + description + "PKT ECC ERR DROP UC CNT"; + } + leaf pkt-ecc-trunc-cnt-uc-cnt { + type uint64; + description + "PKT ECC TRUNC CNT UC CNT"; + } + leaf ecc-1bit-err-uc0-0-cnt { + type uint64; + description + "ECC 1BIT ERR UC0 0 CNT"; + } + leaf ecc-1bit-err-uc0-1-cnt { + type uint64; + description + "ECC 1BIT ERR UC0 1 CNT"; + } + leaf ecc-1bit-err-uc1-0-cnt { + type uint64; + description + "ECC 1BIT ERR UC1 0 CNT"; + } + leaf ecc-1bit-err-uc1-1-cnt { + type uint64; + description + "ECC 1BIT ERR UC1 1 CNT"; + } + leaf ecc-1bit-err-uc2-0-cnt { + type uint64; + description + "ECC 1BIT ERR UC2 0 CNT"; + } + leaf ecc-1bit-err-uc2-1-cnt { + type uint64; + description + "ECC 1BIT ERR UC2 1 CNT"; + } + leaf ecc-2bit-err-uc0-0-cnt { + type uint64; + description + "ECC 2BIT ERR UC0 0 CNT"; + } + leaf ecc-2bit-err-uc0-1-cnt { + type uint64; + description + "ECC 2BIT ERR UC0 1 CNT"; + } + leaf ecc-2bit-err-uc1-0-cnt { + type uint64; + description + "ECC 2BIT ERR UC1 0 CNT"; + } + leaf ecc-2bit-err-uc1-1-cnt { + type uint64; + description + "ECC 2BIT ERR UC1 1 CNT"; + } + leaf ecc-2bit-err-uc2-0-cnt { + type uint64; + description + "ECC 2BIT ERR UC2 0 CNT"; + } + leaf ecc-2bit-err-uc2-1-cnt { + type uint64; + description + "ECC 2BIT ERR UC2 1 CNT"; + } + leaf out-pkt-uc-cnt { + type uint64; + description + "OUT PKT UC CNT"; + } + leaf fe-uc-sop-eop-pack-cnt { + type uint64; + description + "FE UC SOP EOP PACK CNT"; + } + leaf fc-uc-0-1-trans-cnt { + type uint64; + description + "FC UC 0 1 TRANS CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Egress Unicast Rate"; + } + } + + grouping XBAR-EDM-SM15-PI-CC-STATS { + description + "XBAR EDM SM15 PI CC STATS"; + leaf in0-ecc-serr-cnt { + type uint64; + description + "IN0 ECC SERR CNT"; + } + leaf in0-ecc-derr-cnt { + type uint64; + description + "IN0 ECC DERR CNT"; + } + leaf in1-ecc-serr-cnt { + type uint64; + description + "IN1 ECC SERR CNT"; + } + leaf in1-ecc-derr-cnt { + type uint64; + description + "IN1 ECC DERR CNT"; + } + leaf data-mem-ecc-serr-cnt { + type uint64; + description + "DATA MEM ECC SERR CNT"; + } + leaf data-mem-ecc-derr-cnt { + type uint64; + description + "DATA MEM ECC DERR CNT"; + } + leaf data-mem-ovf0-cnt { + type uint64; + description + "DATA MEM OVF0 CNT"; + } + leaf data-mem-ovf1-cnt { + type uint64; + description + "DATA MEM OVF1 CNT"; + } + leaf fpoe-mem-ecc-serr-cnt { + type uint64; + description + "FPOE MEM ECC SERR CNT"; + } + leaf fpoe-mem-ecc-derr-cnt { + type uint64; + description + "FPOE MEM ECC DERR CNT"; + } + leaf null-poe-cnt { + type uint64; + description + "NULL POE CNT"; + } + leaf shut-ack-cnt { + type uint64; + description + "SHUT ACK CNT"; + } + leaf in0-fnc-err-cnt { + type uint64; + description + "IN0 FNC ERR CNT"; + } + leaf in1-fnc-err-cnt { + type uint64; + description + "IN1 FNC ERR CNT"; + } + leaf in0-drop-cnt { + type uint64; + description + "IN0 DROP CNT"; + } + leaf in1-drop-cnt { + type uint64; + description + "IN1 DROP CNT"; + } + leaf in0-cong-cnt { + type uint64; + description + "IN0 CONG CNT"; + } + leaf in1-cong-cnt { + type uint64; + description + "IN1 CONG CNT"; + } + leaf in0-shut-cnt { + type uint64; + description + "IN0 SHUT CNT"; + } + leaf in1-shut-cnt { + type uint64; + description + "IN1 SHUT CNT"; + } + leaf tail-drop-msg-cnt { + type uint64; + description + "TAIL DROP MSG CNT"; + } + leaf in0-pkt-cnt { + type uint64; + description + "IN0 PKT CNT"; + } + leaf in1-pkt-cnt { + type uint64; + description + "IN1 PKT CNT"; + } + leaf dmem-rd-cnt { + type uint64; + description + "DMEM RD CNT"; + } + leaf in-dmem0-cnt { + type uint64; + description + "IN DMEM0 CNT"; + } + leaf in-dmem1-cnt { + type uint64; + description + "IN DMEM1 CNT"; + } + leaf out-pkt-cnt { + type uint64; + description + "OUT PKT CNT"; + } + leaf stop-thrsh-hit-cnt { + type uint64; + description + "STOP THRSH HIT CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Ingress Control Cast Rate"; + } + } + + grouping XBAR-EDM-SM15-PI-MC-STATS { + description + "XBAR EDM SM15 PI MC STATS"; + leaf pkt-rcv-cnt { + type uint64; + description + "PKT RCV CNT"; + } + leaf pkt-seq-err-cnt { + type uint64; + description + "PKT SEQ ERR CNT"; + } + leaf in-coming-pkt-err-cnt { + type uint64; + description + "INCOMING PKT ERR CNT"; + } + leaf min-pkt-len-err-cnt { + type uint64; + description + "MIN PKT LEN ERR CNT"; + } + leaf max-pkt-len-err-cnt { + type uint64; + description + "MAX PKT LEN ERR CNT"; + } + leaf line-err-drp-pkt { + type uint64; + description + "LINE ERR DRP PKT"; + } + leaf pkt-crc-err-cnt { + type uint64; + description + "PKT CRC ERR CNT"; + } + leaf pkt-cfh-crc-err-cnt { + type uint64; + description + "PKT CFH CRC ERR CNT"; + } + leaf line-s-written-in-mem { + type uint64; + description + "LINES WRITTEN IN MEM"; + } + leaf tail-drp-pkt-cnt { + type uint64; + description + "TAIL DRP PKT CNT"; + } + leaf data-mem0-ecc-1bit-err-cnt { + type uint64; + description + "DATA MEM0 ECC 1BIT ERR CNT"; + } + leaf data-mem1-ecc-1bit-err-cnt { + type uint64; + description + "DATA MEM1 ECC 1BIT ERR CNT"; + } + leaf data-mem2-ecc-1bit-err-cnt { + type uint64; + description + "DATA MEM2 ECC 1BIT ERR CNT"; + } + leaf data-mem0-ecc-2bit-err-cnt { + type uint64; + description + "DATA MEM0 ECC 2BIT ERR CNT"; + } + leaf data-mem1-ecc-2bit-err-cnt { + type uint64; + description + "DATA MEM1 ECC 2BIT ERR CNT"; + } + leaf data-mem2-ecc-2bit-err-cnt { + type uint64; + description + "DATA MEM2 ECC 2BIT ERR CNT"; + } + leaf diag-pkt-cnt { + type uint64; + description + "DIAG PKT CNT"; + } + leaf pkt-sent-to-disabled-port { + type uint64; + description + "PKT SENT TO DISABLED PORT"; + } + leaf pkt-fpoe-match-hit-cnt { + type uint64; + description + "PKT FPOE MATCH HIT CNT"; + } + leaf pkt-null-poe-sent-cnt { + type uint64; + description + "PKT NULL POE SENT CNT"; + } + leaf pkt-fpoe-addr-rng-hit-cnt { + type uint64; + description + "PKT FPOE ADDR RNG HIT CNT"; + } + leaf di-hdr-len-err-pkt-cnt { + type uint64; + description + "DI HDR LEN ERR PKT CNT"; + } + leaf di-err-pkt-cnt { + type uint64; + description + "DI ERR PKT CNT"; + } + leaf fpoe-mem-ecc-1bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 1BIT ERR CNT"; + } + leaf fpoe-mem-ecc-2bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 2BIT ERR CNT"; + } + leaf pkts-sent-to-mx-cnt { + type uint64; + description + "PKTS SENT TO MX CNT"; + } + leaf cpp-head-drop-pkt-from-ma-cnt { + type uint64; + description + "CPP HEAD DROP PKT FROM MA CNT"; + } + leaf tr-head-drop-pkt-from-ma-cnt { + type uint64; + description + "TR HEAD DROP PKT FROM MA CNT"; + } + leaf tr-pkt-sent-to-mx { + type uint64; + description + "TR PKT SENT TO MX"; + } + leaf stop-thrsh-hit-cnt { + type uint64; + description + "STOP THRSH HIT CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Ingress Multicast Rate"; + } + leaf crc-stomp-pkt-cnt { + type uint64; + description + "CRC STOMP PKT CNT"; + } + } + + grouping XBAR-EDM-SM15-PI-UC-STATS { + description + "XBAR EDM SM15 PI UC STATS"; + leaf pkt-rcv-cnt { + type uint64; + description + "PKT RCV CNT"; + } + leaf pkt-seq-err-cnt { + type uint64; + description + "PKT SEQ ERR CNT"; + } + leaf in-coming-pkt-err-cnt { + type uint64; + description + "INCOMING PKT ERR CNT"; + } + leaf min-pkt-len-err-cnt { + type uint64; + description + "MIN PKT LEN ERR CNT"; + } + leaf max-pkt-len-err-cnt { + type uint64; + description + "MAX PKT LEN ERR CNT"; + } + leaf line-err-drp-pkt { + type uint64; + description + "LINE ERR DRP PKT"; + } + leaf pkt-crc-err-cnt { + type uint64; + description + "PKT CRC ERR CNT"; + } + leaf pkt-cfh-crc-err-cnt { + type uint64; + description + "PKT CFH CRC ERR CNT"; + } + leaf line-s-written-in-mem0 { + type uint64; + description + "LINES WRITTEN IN MEM0"; + } + leaf line-s-written-in-mem1 { + type uint64; + description + "LINES WRITTEN IN MEM1"; + } + leaf line-s-written-in-mem2 { + type uint64; + description + "LINES WRITTEN IN MEM2"; + } + leaf tail-drp-pkt-cnt { + type uint64; + description + "TAIL DRP PKT CNT"; + } + leaf uc0-data-mem-ecc-1bit-err-cnt { + type uint64; + description + "UC0 DATA MEM ECC 1BIT ERR CNT"; + } + leaf uc1-data-mem-ecc-1bit-err-cnt { + type uint64; + description + "UC1 DATA MEM ECC 1BIT ERR CNT"; + } + leaf uc2-data-mem-ecc-1bit-err-cnt { + type uint64; + description + "UC2 DATA MEM ECC 1BIT ERR CNT"; + } + leaf uc0-data-mem-ecc-2bit-err-cnt { + type uint64; + description + "UC0 DATA MEM ECC 2BIT ERR CNT"; + } + leaf uc1-data-mem-ecc-2bit-err-cnt { + type uint64; + description + "UC1 DATA MEM ECC 2BIT ERR CNT"; + } + leaf uc2-data-mem-ecc-2bit-err-cnt { + type uint64; + description + "UC2 DATA MEM ECC 2BIT ERR CNT"; + } + leaf diag-pkt-cnt { + type uint64; + description + "DIAG PKT CNT"; + } + leaf pkt-sent-to-disabled-port-cnt { + type uint64; + description + "PKT SENT TO DISABLED PORT CNT"; + } + leaf pkt-null-poe-sent-ua0-cnt { + type uint64; + description + "PKT NULL POE SENT UA0 CNT"; + } + leaf pkt-null-poe-sent-ua1-cnt { + type uint64; + description + "PKT NULL POE SENT UA1 CNT"; + } + leaf pkt-null-poe-sent-ua2-cnt { + type uint64; + description + "PKT NULL POE SENT UA2 CNT"; + } + leaf pkt-fpoe-addr-rng-hit-cnt { + type uint64; + description + "PKT FPOE ADDR RNG HIT CNT"; + } + leaf fpoe-mem-ecc-1bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 1BIT ERR CNT"; + } + leaf fpoe-mem-ecc-2bit-err-cnt { + type uint64; + description + "FPOE MEM ECC 2BIT ERR CNT"; + } + leaf pkts-sent-to-ux0-cnt { + type uint64; + description + "PKTS SENT TO UX0 CNT"; + } + leaf pkts-sent-to-ux1-cnt { + type uint64; + description + "PKTS SENT TO UX1 CNT"; + } + leaf pkts-sent-to-ux2-cnt { + type uint64; + description + "PKTS SENT TO UX2 CNT"; + } + leaf cpp-head-drop-pkt-cnt { + type uint64; + description + "CPP HEAD DROP PKT CNT"; + } + leaf tr-head-drop-pkt-cnt { + type uint64; + description + "TR HEAD DROP PKT CNT"; + } + leaf tr-pkt-sent-to-ux { + type uint64; + description + "TR PKT SENT TO UX"; + } + leaf stop-thrsh-hit-cnt { + type uint64; + description + "STOP THRSH HIT CNT"; + } + leaf rate-cnt { + type uint64; + description + "RATE CNT"; + } + leaf calc-rate { + type uint64; + description + "Ingress Unicast Rate"; + } + leaf crc-stomp-pkt-cnt { + type uint64; + description + "CRC STOMP PKT CNT"; + } + } + + grouping XBAR-EDM-SM15-PE-STATS { + description + "XBAR EDM SM15 PE STATS"; + leaf total-rate1-cnt { + type uint64; + description + "TOTAL RATE1 CNT"; + } + leaf total-rate2-cnt { + type uint64; + description + "TOTAL RATE2 CNT"; + } + leaf total-rate3-cnt { + type uint64; + description + "TOTAL RATE3 CNT"; + } + leaf total-calc-rate { + type uint64; + description + "Egress Total Rate"; + } + leaf mc2uc-preempt-cnt { + type uint64; + description + "MC2UC PREEMPT CNT"; + } + } + + grouping XBAR-EDM-SM15-PI-STATS { + description + "XBAR EDM SM15 PI STATS"; + leaf total-rate1-cnt { + type uint64; + description + "TOTAL RATE1 CNT"; + } + leaf total-rate2-cnt { + type uint64; + description + "TOTAL RATE2 CNT"; + } + leaf total-rate3-cnt { + type uint64; + description + "TOTAL RATE3 CNT"; + } + leaf total-calc-rate { + type uint64; + description + "Ingress Total Rate"; + } + } + + grouping XBAR-EDM-SM15-CA-STATS { + description + "XBAR EDM SM15 CA STATS"; + leaf dest-drop-pkt-cnt { + type uint64; + description + "DEST DROP PKT CNT"; + } + leaf src-dest-pkt-cnt { + type uint64; + description + "SRC DEST PKT CNT"; + } + leaf dest-src-pkt-cnt { + type uint64; + description + "DEST SRC PKT CNT"; + } + leaf rcv-pkt-cnt { + type uint64; + description + "RCV PKT CNT"; + } + leaf tx-pkt-cnt { + type uint64; + description + "TX PKT CNT"; + } + leaf rx-drop-pkt-cnt { + type uint64; + description + "RX DROP PKT CNT"; + } + } + + grouping XBAR-EDM-SM15-MA-STATS { + description + "XBAR EDM SM15 MA STATS"; + leaf dest-drop-pkt-cnt { + type uint64; + description + "DEST DROP PKT CNT"; + } + leaf src-dest-pkt-cnt { + type uint64; + description + "SRC DEST PKT CNT"; + } + leaf dest-src-pkt-cnt { + type uint64; + description + "DEST SRC PKT CNT"; + } + leaf rcv-pkt-cnt { + type uint64; + description + "RCV PKT CNT"; + } + leaf tx-pkt-cnt { + type uint64; + description + "TX PKT CNT"; + } + leaf rx-drop-pkt-cnt { + type uint64; + description + "RX DROP PKT CNT"; + } + leaf rx-re-transmit-cnt { + type uint64; + description + "RX RETRANSMIT CNT"; + } + leaf rx-fabric-to-cnt { + type uint64; + description + "RX FABRIC TO CNT"; + } + leaf rx-hol-to-cnt { + type uint64; + description + "RX HOL TO CNT"; + } + } + + grouping XBAR-EDM-SM15-UA-STATS { + description + "XBAR EDM SM15 UA STATS"; + leaf dest-drop-pkt-cnt { + type uint64; + description + "DEST DROP PKT CNT"; + } + leaf src-dest-pkt-cnt { + type uint64; + description + "SRC DEST PKT CNT"; + } + leaf dest-src-pkt-cnt { + type uint64; + description + "DEST SRC PKT CNT"; + } + leaf rcv-pkt-cnt { + type uint64; + description + "RCV PKT CNT"; + } + leaf tx-pkt-cnt { + type uint64; + description + "TX PKT CNT"; + } + leaf rx-drop-pkt-cnt { + type uint64; + description + "RX DROP PKT CNT"; + } + leaf rx-fabric-to-cnt { + type uint64; + description + "RX FABRIC TO CNT"; + } + leaf ack-wait-cnt { + type uint64; + description + "ACK WAIT CNT"; + } + } + + grouping XBAR-EDM-SM15-PORT-STATS { + description + "XBAR EDM SM15 PORT STATS"; + container ua0-stats { + description + "Unicast Arbiter0 stats"; + uses XBAR-EDM-SM15-UA-STATS; + } + container ua1-stats { + description + "Unicast Arbiter1 stats"; + uses XBAR-EDM-SM15-UA-STATS; + } + container ua2-stats { + description + "Unicast Arbiter2 stats"; + uses XBAR-EDM-SM15-UA-STATS; + } + container ma-stats { + description + "Multicast Arbiter stats"; + uses XBAR-EDM-SM15-MA-STATS; + } + container ca-stats { + description + "Control Cast stats"; + uses XBAR-EDM-SM15-CA-STATS; + } + container pi-stats { + description + "Port Ingress stats"; + uses XBAR-EDM-SM15-PI-STATS; + } + container pe-stats { + description + "Port Egress stats"; + uses XBAR-EDM-SM15-PE-STATS; + } + container pi-uc-stats { + description + "Ingress Unicast stats"; + uses XBAR-EDM-SM15-PI-UC-STATS; + } + container pi-mc-stats { + description + "Ingress Multicast stats"; + uses XBAR-EDM-SM15-PI-MC-STATS; + } + container pi-cc-stats { + description + "Ingress Control Cast stats"; + uses XBAR-EDM-SM15-PI-CC-STATS; + } + container pe-uc-stats { + description + "Egress Unicast stats"; + uses XBAR-EDM-SM15-PE-UC-STATS; + } + container pe-mc-stats { + description + "Egress Multicast stats"; + uses XBAR-EDM-SM15-PE-MC-STATS; + } + container pe-cc-stats { + description + "Egress Control Cast stats"; + uses XBAR-EDM-SM15-PE-CC-STATS; + } + leaf internal-err-cnt { + type uint64; + description + "Internal Error Count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub2.yang new file mode 100644 index 000000000..674e9712c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub2.yang @@ -0,0 +1,278 @@ +submodule Cisco-IOS-XR-asr9k-xbar-oper-sub2 { + belongs-to Cisco-IOS-XR-asr9k-xbar-oper { + prefix Cisco-IOS-XR-asr9k-xbar-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-xbar package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-07-29 { + description + "Support for bandwidth-utils-stats CLI."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Q-stats { + type uint64; + description + "Q stats"; + } + + grouping XBAR-XML-EDM-PORT-STATS { + description + "Bag containing xbar packet stats"; + leaf internal-error-count { + type uint64; + description + ""; + } + leaf input-buffer-queued-packet-count-high { + type Q-stats; + description + ""; + } + leaf ingress-packet-count-since-last-read-high { + type Q-stats; + description + ""; + } + leaf ingress-channel-utilization-count-high { + type Q-stats; + description + ""; + } + leaf input-buffer-back-pressure-count-high { + type Q-stats; + description + ""; + } + leaf xbar-timeout-drop-count-high { + type Q-stats; + description + ""; + } + leaf holdrop-count-high { + type Q-stats; + description + ""; + } + leaf null-fpoe-drop-count-high { + type Q-stats; + description + ""; + } + leaf diagnostic-packet-count-high { + type Q-stats; + description + ""; + } + leaf input-buffer-correctable-ecc-error-count-high { + type Q-stats; + description + ""; + } + leaf input-buffer-uncorrectable-ecc-error-count-high { + type Q-stats; + description + ""; + } + leaf header-crc-error-count-high { + type Q-stats; + description + ""; + } + leaf short-input-header-error-count-high { + type Q-stats; + description + ""; + } + leaf packet-crc-error-count-high { + type Q-stats; + description + ""; + } + leaf short-packet-error-count-high { + type Q-stats; + description + ""; + } + leaf output-buffer-queued-packet-count-high { + type Q-stats; + description + ""; + } + leaf egress-packet-count-since-last-read-high { + type Q-stats; + description + ""; + } + leaf egress-channel-utilization-count-high { + type Q-stats; + description + ""; + } + leaf output-buffer-back-pressure-count-high { + type Q-stats; + description + ""; + } + leaf output-buffer-correctable-ecc-error-count-high { + type Q-stats; + description + ""; + } + leaf output-buffer-uncorrectable-ecc-error-count-high { + type Q-stats; + description + ""; + } + leaf fpoedb-correctable-ecc-error-count-high { + type Q-stats; + description + ""; + } + leaf fpoedb-uncorrectable-ecc-error-count-high { + type Q-stats; + description + ""; + } + leaf input-buffer-queued-packet-count-low { + type Q-stats; + description + ""; + } + leaf ingress-packet-count-since-last-read-low { + type Q-stats; + description + ""; + } + leaf ingress-channel-utilization-count-low { + type Q-stats; + description + ""; + } + leaf input-buffer-back-pressure-count-low { + type Q-stats; + description + ""; + } + leaf xbar-timeout-drop-count-low { + type Q-stats; + description + ""; + } + leaf holdrop-count-low { + type Q-stats; + description + ""; + } + leaf null-fpoe-drop-count-low { + type Q-stats; + description + ""; + } + leaf diagnostic-packet-count-low { + type Q-stats; + description + ""; + } + leaf input-buffer-correctable-ecc-error-count-low { + type Q-stats; + description + ""; + } + leaf input-buffer-uncorrectable-ecc-error-count-low { + type Q-stats; + description + ""; + } + leaf header-crc-error-count-low { + type Q-stats; + description + ""; + } + leaf short-input-header-error-count-low { + type Q-stats; + description + ""; + } + leaf packet-crc-error-count-low { + type Q-stats; + description + ""; + } + leaf short-packet-error-count-low { + type Q-stats; + description + ""; + } + leaf output-buffer-queued-packet-count-low { + type Q-stats; + description + ""; + } + leaf egress-packet-count-since-last-read-low { + type Q-stats; + description + ""; + } + leaf egress-channel-utilization-count-low { + type Q-stats; + description + ""; + } + leaf output-buffer-back-pressure-count-low { + type Q-stats; + description + ""; + } + leaf output-buffer-correctable-ecc-error-count-low { + type Q-stats; + description + ""; + } + leaf output-buffer-uncorrectable-ecc-error-count-low { + type Q-stats; + description + ""; + } + leaf fpoedb-correctable-ecc-error-count-low { + type Q-stats; + description + ""; + } + leaf fpoedb-uncorrectable-ecc-error-count-low { + type Q-stats; + description + ""; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub3.yang new file mode 100644 index 000000000..194e5d62f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub3.yang @@ -0,0 +1,782 @@ +submodule Cisco-IOS-XR-asr9k-xbar-oper-sub3 { + belongs-to Cisco-IOS-XR-asr9k-xbar-oper { + prefix Cisco-IOS-XR-asr9k-xbar-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-xbar package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-07-29 { + description + "Support for bandwidth-utils-stats CLI."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping XBAR-EDM-SKB-XPS-STATS { + description + "XBAR EDM SKB XPS STATS"; + leaf uc-timer-drop { + type uint64; + description + "UC TIMERDROP"; + } + leaf uc-timer-truncate { + type uint64; + description + "UC TIMERTRUNCATE"; + } + leaf mc-timer-drop { + type uint64; + description + "MC TIMERDROP"; + } + leaf mc-timer-truncate { + type uint64; + description + "MC TIMERTRUNCATE"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-MISC-STATS { + description + "XBAR EDM SKB CFL EG MISC STATS"; + leaf ecc-corr-err { + type uint64; + description + "ECC CORR ERR"; + } + leaf ecc-uncorr-err { + type uint64; + description + "ECC UNCORR ERR"; + } + leaf ecc-raw-corr-err { + type uint64; + description + "ECC RAW CORR ERR"; + } + leaf ecc-raw-uncorr-err { + type uint64; + description + "ECC RAW UNCORR ERR"; + } + leaf eg-total-rate { + type uint64; + description + "Egress CFL Total Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-MC-STATS { + description + "XBAR EDM SKB CFL EG MC STATS"; + leaf pkts-truncated { + type uint64; + description + "PKTS TRUNCATED"; + } + leaf pkts-from-ob-to-port { + type uint64; + description + "PKTS FROM OB TO PORT"; + } + leaf eg-mc-rate { + type uint64; + description + "Egress CFL Multicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-UC-STATS { + description + "XBAR EDM SKB CFL EG UC STATS"; + leaf pkts-truncated { + type uint64; + description + "PKTS TRUNCATED"; + } + leaf pkts-from-ob-to-port { + type uint64; + description + "PKTS FROM OB TO PORT"; + } + leaf eg-uc-rate { + type uint64; + description + "Egress CFL Unicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-EG-STATS { + description + "XBAR EDM SKB CFL EG STATS"; + container cfl-uc-stats { + description + "Egress CFL Unicast Stats"; + uses XBAR-EDM-SKB-CFL-EG-UC-STATS; + } + container cfl-mc-stats { + description + "Egress CFL Multicast Stats"; + uses XBAR-EDM-SKB-CFL-EG-MC-STATS; + } + container cfl-misc-stats { + description + "Egress CFL Miscellaneous Stats"; + uses XBAR-EDM-SKB-CFL-EG-MISC-STATS; + } + } + + grouping XBAR-EDM-SKB-OBU-MC-STATS { + description + "XBAR EDM SKB OBU MC STATS"; + leaf pktin { + type uint64; + description + "PKTIN"; + } + leaf pktout { + type uint64; + description + "PKTOUT"; + } + leaf bytein { + type uint64; + description + "BYTEIN"; + } + leaf byteout { + type uint64; + description + "BYTEOUT"; + } + leaf pkttrunc { + type uint64; + description + "PKTTRUNC"; + } + } + + grouping XBAR-EDM-SKB-OBU-UC-STATS { + description + "XBAR EDM SKB OBU UC STATS"; + leaf pktin { + type uint64; + description + "PKTIN"; + } + leaf pktout { + type uint64; + description + "PKTOUT"; + } + leaf bytein { + type uint64; + description + "BYTEIN"; + } + leaf byteout { + type uint64; + description + "BYTEOUT"; + } + leaf pkttrunc { + type uint64; + description + "PKTTRUNC"; + } + } + + grouping XBAR-EDM-SKB-OBU-STATS { + description + "XBAR EDM SKB OBU STATS"; + list data-queque { + max-elements "24"; + description + "Output Buffer Data Queue Queue Count"; + leaf entry { + type uint32; + description + "Output Buffer Data Queue Queue Count"; + } + } + } + + grouping XBAR-EDM-SKB-EG-STATS { + description + "XBAR EDM SKB EG STATS"; + container obu-stats { + description + "Output Buffer Stats"; + uses XBAR-EDM-SKB-OBU-STATS; + } + container obu-uc-stats { + description + "Output Buffer UC Stats"; + uses XBAR-EDM-SKB-OBU-UC-STATS; + } + container obu-mc-stats { + description + "Output Buffer MC Stats"; + uses XBAR-EDM-SKB-OBU-MC-STATS; + } + container cfl-stats { + description + "Egress Common Fabric Link Stats"; + uses XBAR-EDM-SKB-CFL-EG-STATS; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-MISC-STATS { + description + "XBAR EDM SKB CFL IN MISC STATS"; + leaf crc-stomp { + type uint64; + description + "CRC STOMP"; + } + leaf crc-new-err { + type uint64; + description + "CRC NEW ERR"; + } + leaf in-total-rate { + type uint64; + description + "Ingress CFL Total Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-MC-STATS { + description + "XBAR EDM SKB CFL IN MC STATS"; + leaf crc-match-pattern { + type uint64; + description + "CRC MATCH PATTERN"; + } + leaf pkts-rcvd { + type uint64; + description + "PKTS RCVD"; + } + leaf packed-pkts-rcvd { + type uint64; + description + "PACKED PKTS RCVD"; + } + leaf pkts-flushed { + type uint64; + description + "PKTS FLUSHED"; + } + leaf runt-pkts-drop-ped { + type uint64; + description + "RUNT PKTS DROPPED"; + } + leaf small-pkts-drop-ped { + type uint64; + description + "SMALL PKTS DROPPED"; + } + leaf pkts-to-ib-from-port { + type uint64; + description + "PKTS TO IB FROM PORT"; + } + leaf in-mc-rate { + type uint64; + description + "Ingress CFL Multicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-UC-STATS { + description + "XBAR EDM SKB CFL IN UC STATS"; + leaf crc-match-pattern { + type uint64; + description + "CRC MATCH PATTERN"; + } + leaf pkts-rcvd { + type uint64; + description + "PKTS RCVD"; + } + leaf packed-pkts-rcvd { + type uint64; + description + "PACKED PKTS RCVD"; + } + leaf pkts-flushed { + type uint64; + description + "PKTS FLUSHED"; + } + leaf runt-pkts-drop-ped { + type uint64; + description + "RUNT PKTS DROPPED"; + } + leaf small-pkts-drop-ped { + type uint64; + description + "SMALL PKTS DROPPED"; + } + leaf pkts-to-ib-from-port { + type uint64; + description + "PKTS TO IB FROM PORT"; + } + leaf in-uc-rate { + type uint64; + description + "Ingress CFL Unicast Rate"; + } + } + + grouping XBAR-EDM-SKB-CFL-IN-STATS { + description + "XBAR EDM SKB CFL IN STATS"; + container cfl-uc-stats { + description + "Ingress CFL Unicast Stats"; + uses XBAR-EDM-SKB-CFL-IN-UC-STATS; + } + container cfl-mc-stats { + description + "Ingress CFL Multicast Stats"; + uses XBAR-EDM-SKB-CFL-IN-MC-STATS; + } + container cfl-misc-stats { + description + "Ingress CFL Miscellaneous Stats"; + uses XBAR-EDM-SKB-CFL-IN-MISC-STATS; + } + } + + grouping XBAR-EDM-SKB-IBF-MC-STATS { + description + "XBAR EDM SKB IBF MC STATS"; + leaf pktcnt { + type uint64; + description + "PKTCNT"; + } + leaf pktoutcnt { + type uint64; + description + "PKTOUTCNT"; + } + leaf pkthi-copy-sup-event { + type uint64; + description + "PKTHICOPYSUPEVENT"; + } + leaf pktlo-copy-sup-event { + type uint64; + description + "PKTLOCOPYSUPEVENT"; + } + leaf pkt-input-err-drop { + type uint64; + description + "PKTINPUTERRDROP"; + } + leaf pktfgid-addr-err-drop { + type uint64; + description + "PKTFGIDADDRERRDROP"; + } + leaf pktfgidlkuperr-drop { + type uint64; + description + "PKTFGIDLKUPERRDROP"; + } + leaf pkt-null-poe-drop { + type uint64; + description + "PKTNULLPOEDROP"; + } + leaf pkt-copy-sup-drop { + type uint64; + description + "PKTCOPYSUPDROP"; + } + leaf pkt-disp-oe-drop { + type uint64; + description + "PKTDISPOEDROP"; + } + leaf pktto-drop-cnt { + type uint64; + description + "PKTTODROPCNT"; + } + } + + grouping XBAR-EDM-SKB-IBB-MC-STATS { + description + "XBAR EDM SKB IBB MC STATS"; + leaf ipc-data-tot { + type uint64; + description + "IPCDATATOT"; + } + leaf ipc-data-totsz { + type uint64; + description + "IPCDATATOTSZ"; + } + leaf ipcrunt { + type uint64; + description + "IPCRUNT"; + } + leaf ipcgiant { + type uint64; + description + "IPCGIANT"; + } + leaf ipc-data-err { + type uint64; + description + "IPCDATAERR"; + } + leaf ipclinkerr { + type uint64; + description + "IPCLINKERR"; + } + leaf ipcptcerr { + type uint64; + description + "IPCPTCERR"; + } + leaf ipcpkt-drop { + type uint64; + description + "IPCPKTDROP"; + } + leaf ipcdes-drop { + type uint64; + description + "IPCDESDROP"; + } + leaf dhehitail-drop { + type uint64; + description + "DHEHITAILDROP"; + } + leaf dhelotail-drop { + type uint64; + description + "DHELOTAILDROP"; + } + leaf ibmoutsop { + type uint64; + description + "IBMOUTSOP"; + } + leaf ibmouteop { + type uint64; + description + "IBMOUTEOP"; + } + leaf ibmoutbyte { + type uint64; + description + "IBMOUTBYTE"; + } + leaf icmenq { + type uint64; + description + "ICMENQ"; + } + leaf icmdeq { + type uint64; + description + "ICMDEQ"; + } + leaf icmfcxoff { + type uint64; + description + "ICMFCXOFF"; + } + leaf icmfcxon { + type uint64; + description + "ICMFCXON"; + } + } + + grouping XBAR-EDM-SKB-IBF-UC-STATS { + description + "XBAR EDM SKB IBF UC STATS"; + leaf pktcnt { + type uint64; + description + "PKTCNT"; + } + leaf pktoutp0cnt { + type uint64; + description + "PKTOUTP0CNT"; + } + leaf pktoutp1cnt { + type uint64; + description + "PKTOUTP1CNT"; + } + leaf pkt-input-err-drop { + type uint64; + description + "PKTINPUTERRDROP"; + } + leaf pkthwerr-drop { + type uint64; + description + "PKTHWERRDROP"; + } + leaf pkt-null-poe-drop { + type uint64; + description + "PKTNULLPOEDROP"; + } + leaf pkt-disp-oe-drop { + type uint64; + description + "PKTDISPOEDROP"; + } + } + + grouping XBAR-EDM-SKB-IBB-UC-STATS { + description + "XBAR EDM SKB IBB UC STATS"; + leaf ipc-data-tot { + type uint64; + description + "IPCDATATOT"; + } + leaf ipc-data-totsz { + type uint64; + description + "IPCDATATOTSZ"; + } + leaf ipcrunt { + type uint64; + description + "IPCRUNT"; + } + leaf ipcgiant { + type uint64; + description + "IPCGIANT"; + } + leaf ipc-data-err { + type uint64; + description + "IPCDATAERR"; + } + leaf ipclinkerr { + type uint64; + description + "IPCLINKERR"; + } + leaf ipcptcerr { + type uint64; + description + "IPCPTCERR"; + } + leaf ipcpkt-drop { + type uint64; + description + "IPCPKTDROP"; + } + leaf ipcdes-drop { + type uint64; + description + "IPCDESDROP"; + } + leaf dhetail-drop { + type uint64; + description + "DHETAILDROP"; + } + leaf ibmoutsop { + type uint64; + description + "IBMOUTSOP"; + } + leaf ibmouteop { + type uint64; + description + "IBMOUTEOP"; + } + leaf ibmoutbyte { + type uint64; + description + "IBMOUTBYTE"; + } + leaf icmenq { + type uint64; + description + "ICMENQ"; + } + leaf icmdeq { + type uint64; + description + "ICMDEQ"; + } + leaf icmfcxoff { + type uint64; + description + "ICMFCXOFF"; + } + leaf icmfcxon { + type uint64; + description + "ICMFCXON"; + } + } + + grouping XBAR-EDM-SKB-IBF-STATS { + description + "XBAR EDM SKB IBF STATS"; + leaf unused { + type uint64; + description + "Ingress Unused Counter"; + } + } + + grouping XBAR-EDM-SKB-IBB-STATS { + description + "XBAR EDM SKB IBB STATS"; + leaf ipcicmtail-drop { + type uint64; + description + "IPCICMTAILDROP"; + } + leaf dhe-diag-pkt { + type uint64; + description + "DHEDIAGPKT"; + } + leaf ibmdnouttot { + type uint64; + description + "IBMDNOUTTOT"; + } + leaf icmdnenq { + type uint64; + description + "ICMDNENQ"; + } + leaf icmdndeq { + type uint64; + description + "ICMDNDEQ"; + } + leaf ibmcsrccouttot { + type uint64; + description + "IBMCSRCCOUTTOT"; + } + } + + grouping XBAR-EDM-SKB-IN-STATS { + description + "XBAR EDM SKB IN STATS"; + container ibb-stats { + description + "Input Buffer Block Stats"; + uses XBAR-EDM-SKB-IBB-STATS; + } + container ibf-stats { + description + "Input Forwarding Block Stats"; + uses XBAR-EDM-SKB-IBF-STATS; + } + container ibb-uc-stats { + description + "Input Buffer Block UC Stats"; + uses XBAR-EDM-SKB-IBB-UC-STATS; + } + container ibf-uc-stats { + description + "Input Forwarding Block UC Stats"; + uses XBAR-EDM-SKB-IBF-UC-STATS; + } + container ibb-mc-stats { + description + "Input Buffer Block MC Stats"; + uses XBAR-EDM-SKB-IBB-MC-STATS; + } + container ibf-mc-stats { + description + "Input Forwarding Block MC Stats"; + uses XBAR-EDM-SKB-IBF-MC-STATS; + } + container cfl-stats { + description + "Ingress Common Fabric Link Stats"; + uses XBAR-EDM-SKB-CFL-IN-STATS; + } + } + + grouping XBAR-EDM-SKB-PORT-STATS { + description + "XBAR EDM SKB PORT STATS"; + container in-stats { + description + "Ingress Stats"; + uses XBAR-EDM-SKB-IN-STATS; + } + container eg-stats { + description + "Egress Stats"; + uses XBAR-EDM-SKB-EG-STATS; + } + container xps-stats { + description + "Crosspoint Scheduler Stats"; + uses XBAR-EDM-SKB-XPS-STATS; + } + leaf internal-err-cnt { + type uint64; + description + "Internal Error Count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub4.yang new file mode 100644 index 000000000..2f45224ca --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper-sub4.yang @@ -0,0 +1,64 @@ +submodule Cisco-IOS-XR-asr9k-xbar-oper-sub4 { + belongs-to Cisco-IOS-XR-asr9k-xbar-oper { + prefix Cisco-IOS-XR-asr9k-xbar-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR asr9k-xbar package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-07-29 { + description + "Support for bandwidth-utils-stats CLI."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping BANDWIDTH-UTILS { + description + "BANDWIDTH UTILS"; + leaf-list bandwidth-util { + type uint64; + max-elements "6"; + description + "bandwidth util"; + } + } + + grouping XBAR-EDM-BANDWIDTH-UTILS { + description + "XBAR EDM BANDWIDTH UTILS"; + list port { + max-elements "20"; + description + "port"; + uses BANDWIDTH-UTILS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper.yang new file mode 100644 index 000000000..dc06c1c8f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-asr9k-xbar-oper.yang @@ -0,0 +1,160 @@ +module Cisco-IOS-XR-asr9k-xbar-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-asr9k-xbar-oper"; + prefix asr9k-xbar-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-asr9k-xbar-oper-sub4 { + revision-date 2019-07-29; + } + include Cisco-IOS-XR-asr9k-xbar-oper-sub3 { + revision-date 2019-07-29; + } + include Cisco-IOS-XR-asr9k-xbar-oper-sub2 { + revision-date 2019-07-29; + } + include Cisco-IOS-XR-asr9k-xbar-oper-sub1 { + revision-date 2019-07-29; + } + + 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 asr9k-xbar package operational data. + + This module contains definitions + for the following management objects: + cross-bar-stats: Crossbar stats operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-07-29 { + description + "Support for bandwidth-utils-stats CLI."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cross-bar-stats { + config false; + description + "Crossbar stats operational data"; + container nodes { + description + "Table of Nodes"; + list node { + key "node-name"; + description + "Information about a particular node"; + container cross-bar-table { + description + "Table of stats information"; + container bandwidth-utils-stats { + description + "Table of packet stats for Bandwidth Utils"; + list bandwidth-utils-stat { + key "asic-id"; + description + "Stats information for Bandwidth Utils + Counter"; + leaf asic-id { + type xr:Cisco-ios-xr-string; + description + "Asic ID"; + } + uses XBAR-EDM-BANDWIDTH-UTILS; + } + } + container skb-stats { + description + "Table of packet stats for SKB"; + list skb-stat { + description + "Stats information for a particular asic type + and port"; + leaf asic-id { + type xr:Cisco-ios-xr-string; + description + "Asic ID"; + } + leaf port { + type xr:Cisco-ios-xr-string; + description + "Port"; + } + uses XBAR-EDM-SKB-PORT-STATS; + } + } + container pkt-stats { + description + "Table of packet stats"; + list pkt-stat { + description + "Stats information for a particular asic type + and port"; + leaf asic-id { + type xr:Cisco-ios-xr-string; + description + "Asic ID"; + } + leaf port { + type xr:Cisco-ios-xr-string; + description + "Port"; + } + uses XBAR-XML-EDM-PORT-STATS; + } + } + container sm15-stats { + description + "Table of packet stats for SM15"; + list sm15-stat { + description + "Stats information for a particular asic type + and port"; + leaf asic-id { + type xr:Cisco-ios-xr-string; + description + "Asic ID"; + } + leaf port { + type xr:Cisco-ios-xr-string; + description + "Port"; + } + uses XBAR-EDM-SM15-PORT-STATS; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-cfg.yang new file mode 100644 index 000000000..4f24d0277 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-cfg.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-attestation-agent-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-attestation-agent-cfg"; + prefix attestation-agent-cfg; + + 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 attestation-agent package configuration. + + This module contains definitions + for the following management objects: + attestation: Attestation Agent configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container attestation { + description + "Attestation Agent configuration"; + container ima { + description + "Runtime Integrity configuration"; + container cache { + description + "IMA cache related configuration"; + container job { + description + "Cache CRON Job configuration"; + leaf disable { + type boolean; + default "false"; + description + "Disable the cache job"; + } + leaf interval { + type uint32 { + range "5..1440"; + } + default "240"; + description + "Interval for CRON Job 5-1440 mins, must be + multiple or factor of 60, default 240"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper-sub1.yang new file mode 100644 index 000000000..79b07c76f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper-sub1.yang @@ -0,0 +1,304 @@ +submodule Cisco-IOS-XR-attestation-agent-ima-oper-sub1 { + belongs-to Cisco-IOS-XR-attestation-agent-ima-oper { + prefix Cisco-IOS-XR-attestation-agent-ima-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR attestation-agent-ima package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-29 { + description + "Changed a few entries in bag from character array to string."; + semver:module-version "1.1.0"; + } + revision 2021-07-19 { + description + "Added total_count under cron job stat bag."; + semver:module-version "1.1.0"; + } + revision 2020-09-21 { + description + "Fixed bag mismatch issue for dossier stat."; + semver:module-version "1.0.0"; + } + revision 2020-09-15 { + description + "Added task for netconf support."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CACHE-BLOCK-SUMMARY { + description + "CACHE BLOCK SUMMARY"; + leaf block-start { + type uint32; + description + "block start event number"; + } + leaf block-end { + type uint32; + description + "block end event number"; + } + leaf block-size { + type uint32; + description + "block size in MB"; + } + leaf duplicate-events { + type uint32; + description + "total no. of duplicate events in block"; + } + leaf unique-events { + type uint32; + description + "total no. of unique events in block"; + } + leaf block-name { + type string; + description + "block name"; + } + leaf timestamp { + type string; + description + "last modified"; + } + leaf create-time { + type string; + description + "timestamp when block was created"; + } + leaf block-exists { + type string; + description + "TRUE if block is present FALSE if block is + deleted"; + } + } + + grouping NODE-BLOCK-SUMMARY { + description + "NODE BLOCK SUMMARY"; + leaf node-name { + type string; + description + "node name"; + } + list block { + description + "list of blocks for this node"; + uses CACHE-BLOCK-SUMMARY; + } + } + + grouping BLOCK-DET { + description + "BLOCK DET"; + list node-block { + description + "node block"; + uses NODE-BLOCK-SUMMARY; + } + } + + grouping CACHE-SUMMARY { + description + "CACHE SUMMARY"; + leaf total-blocks { + type uint32; + description + "total blocks in cache"; + } + leaf cache-size { + type uint32; + description + "total cache size in MB"; + } + leaf total-events { + type uint32; + description + "total no. of events in cache"; + } + leaf duplicate-events { + type uint32; + description + "total no. of duplicate events in cache"; + } + leaf unique-events { + type uint32; + description + "total no. of unique events in cache"; + } + leaf node-name { + type string; + description + "node name"; + } + leaf timestamp { + type string; + description + "last modified"; + } + } + + grouping CACHE-DET { + description + "CACHE DET"; + list cache { + description + "cache"; + uses CACHE-SUMMARY; + } + } + + grouping CRON-STAT { + description + "CRON STAT"; + leaf run-time { + type uint32; + units "second"; + description + "average run time in secs"; + } + leaf averag-blocks-read { + type uint32; + description + "average no of IMA signed blocks read"; + } + leaf success-count { + type uint32; + description + "successful run count"; + } + leaf failure-count { + type uint32; + description + "failure count"; + } + leaf periodicity { + type uint32; + description + "Periodicity of cron job"; + } + leaf no-update-count { + type uint32; + description + "No. of times cron-job ran without reading any + data"; + } + leaf timestamp { + type string; + description + "last instant ran"; + } + leaf node-name { + type string; + description + "node name"; + } + leaf total-count { + type uint32; + description + "Total run count"; + } + } + + grouping CRON-DET { + description + "CRON DET"; + list cron { + description + "cron"; + uses CRON-STAT; + } + } + + grouping DOSSIER-STAT { + description + "DOSSIER STAT"; + leaf success-count { + type uint32; + description + "dossier successfull execution count"; + } + leaf fail-count { + type uint32; + description + "dossier failure count"; + } + leaf avg-time { + type uint32; + description + "avg time taken for dossier execution"; + } + } + + grouping BLOCK-VALIDITY { + description + "BLOCK VALIDITY"; + leaf chunk-start-event { + type uint32; + description + "Corrupted chunk start number"; + } + leaf chunk-end-event { + type uint32; + description + "Corrupted chunk end event"; + } + } + + grouping BLOCK-VALIDITY-SUMMARY { + description + "BLOCK VALIDITY SUMMARY"; + leaf node-name { + type string; + description + "node name"; + } + list chunk { + description + "list of starting event of corrupted chunk"; + uses BLOCK-VALIDITY; + } + } + + grouping BLOCK-VALID-DET { + description + "BLOCK VALID DET"; + list node { + description + "node"; + uses BLOCK-VALIDITY-SUMMARY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper.yang new file mode 100644 index 000000000..bcb3ff3c7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-ima-oper.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-attestation-agent-ima-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-attestation-agent-ima-oper"; + prefix attestation-agent-ima-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-attestation-agent-ima-oper-sub1 { + revision-date 2022-07-29; + } + + 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 attestation-agent-ima package operational data. + + This module contains definitions + for the following management objects: + attestation: Oper data for IMA cache and Cron job statistics + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-29 { + description + "Changed a few entries in bag from character array to string."; + semver:module-version "1.1.0"; + } + revision 2021-07-19 { + description + "Added total_count under cron job stat bag."; + semver:module-version "1.1.0"; + } + revision 2020-09-21 { + description + "Fixed bag mismatch issue for dossier stat."; + semver:module-version "1.0.0"; + } + revision 2020-09-15 { + description + "Added task for netconf support."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container attestation { + config false; + description + "Oper data for IMA cache and Cron job statistics "; + container ima-cache { + description + "Oper data for IMA cache and Cron job statistics "; + container ima-corrupt-stat { + description + "Cron job running stats"; + uses BLOCK-VALID-DET; + } + container dossier-stat { + description + "Dossier running stats"; + uses DOSSIER-STAT; + } + container cron-stat { + description + "Cron job running stats"; + uses CRON-DET; + } + container node-cache-summary { + description + "Cache summary for nodes running agent"; + uses CACHE-DET; + } + container node-block-summary { + description + "Block summary for nodes running agent"; + uses BLOCK-DET; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper-sub1.yang new file mode 100644 index 000000000..06334bcb1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper-sub1.yang @@ -0,0 +1,107 @@ +submodule Cisco-IOS-XR-attestation-agent-oper-sub1 { + belongs-to Cisco-IOS-XR-attestation-agent-oper { + prefix Cisco-IOS-XR-attestation-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR attestation-agent package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-10 { + description + "Added support for AIK and SUDI certificates."; + semver:module-version "1.0.0"; + } + revision 2022-06-03 { + description + "Added new oper model for attestation entities."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SECURE-BOOT-STATUS { + description + "SECURE BOOT STATUS"; + leaf secure-boot-enable { + type boolean; + description + "Secure boot enabled or not"; + } + } + + grouping SYSTEM-CERTS-CHALLENGE { + description + "SYSTEM CERTS CHALLENGE"; + leaf root-cert { + type string; + description + "System Root Certificate"; + } + leaf subca-cert { + type string; + description + "System SubCA Certificate"; + } + leaf cert { + type string; + description + "System Certificate of the Device"; + } + leaf signature { + type string; + description + "Signature generated over complete certificate + chain along with the nonce"; + } + leaf signature-version { + type uint32; + description + "Signature version"; + } + } + + grouping SYSTEM-CERTS { + description + "SYSTEM CERTS"; + leaf root-cert { + type string; + description + "System Root Certificate"; + } + leaf subca-cert { + type string; + description + "System SubCA Certificate"; + } + leaf cert { + type string; + description + "System Certificate of the Device"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper.yang new file mode 100644 index 000000000..d44c9940d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-attestation-agent-oper.yang @@ -0,0 +1,123 @@ +module Cisco-IOS-XR-attestation-agent-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-attestation-agent-oper"; + prefix attestation-agent-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-attestation-agent-oper-sub1 { + revision-date 2022-10-10; + } + + 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 attestation-agent package operational data. + + This module contains definitions + for the following management objects: + attestation-agent: Oper data for attestation-agent + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-10 { + description + "Added support for AIK and SUDI certificates."; + semver:module-version "1.0.0"; + } + revision 2022-06-03 { + description + "Added new oper model for attestation entities."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container attestation-agent { + config false; + description + "Oper data for attestation-agent"; + container nodes { + description + "Node-specific attestation agent operational data"; + list node { + key "node-name"; + description + "attestation agent operational data for a + particular node"; + container cert-details { + description + "System certificates from nodes running + attestation-agent"; + list cert-detail { + key "certificate-identifier"; + description + "Certificate data in PEM format"; + leaf certificate-identifier { + type xr:Cisco-ios-xr-string; + description + "Certificate Identifer(CiscoSUDI or CiscoAIK + or CiscoHASUDI)"; + } + uses SYSTEM-CERTS; + } + } + container challenge-cert-details { + description + "System certificates from nodes running + attestation-agent with challenge response to + prove identity"; + list challenge-cert-detail { + key "certificate-identifier nonce"; + description + "Certificate data in PEM format with signature"; + leaf certificate-identifier { + type xr:Cisco-ios-xr-string; + description + "Certificate Identifer(CiscoSUDI or CiscoAIK + or CiscoHASUDI)"; + } + leaf nonce { + type xr:Cisco-ios-xr-string; + description + "Nonce as non-zero hex string of even length, + length range: <02-128>"; + } + uses SYSTEM-CERTS-CHALLENGE; + } + } + container node-secure-boot-status { + description + "Secure boot status from different nodes + running attestation-agent"; + uses SECURE-BOOT-STATUS; + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-authenticated-variable-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-authenticated-variable-act.yang new file mode 100644 index 000000000..7e2d99cc1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-authenticated-variable-act.yang @@ -0,0 +1,436 @@ +module Cisco-IOS-XR-authenticated-variable-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-authenticated-variable-act"; + prefix sb-av; + + 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 defines procedure to apply the + Authenticated variables to add/update the + certificates of a network platform''s secure + storage. + + Copyright (c) 2017 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with + or without modification, is permitted pursuant to, and + subject to the license terms contained in, the Simplified + BSD License set forth in Section 4.c of the IETF Trust''s + Legal Provisions Relating to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of this YANG module is part of RFC VVVV; see + the RFC itself for full legal notices."; + + revision 2020-07-10 { + description + "Added xr-task so that Limited access user should not configure + router using this model"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-07-11 { + description + "Initial revision."; + } + + typedef EFI_VARIABLE { + type enumeration { + enum "EFI_VAR_PK_CISCO" { + value 4; + description + "EFI VAR PK CISCO"; + } + enum "EFI_VAR_KEK_CISCO" { + value 5; + description + "EFI VAR KEK CISCO"; + } + enum "EFI_VAR_DB_CISCO" { + value 6; + description + "EFI VAR DB CISCO"; + } + enum "EFI_VAR_DBX_CISCO" { + value 7; + description + "EFI VAR DBX CISCO"; + } + enum "EFI_VAR_ALL" { + value 8; + description + "EFI VAR ALL"; + } + } + description + "EFI variable"; + } + + grouping LDWM-data { + description + "Signature data for LDWM key"; + leaf sig-list-num { + type uint32; + description + "Signature list Identifier"; + } + leaf guid { + type string; + description + "Signature owner Identifier"; + } + leaf extension-type { + type string; + description + "Type of the signature"; + } + leaf cert-list-num { + type uint32; + description + "Signature entry number"; + } + leaf owner-guid { + type string; + description + "Signature owner guid"; + } + leaf size { + type uint32; + description + "size of the signature"; + } + leaf key-type { + type string; + description + "type of the key"; + } + leaf key-index { + type uint32; + description + "Index of the Key"; + } + leaf key-length { + type uint32; + description + "Length of the Key"; + } + leaf key-data { + type binary; + description + "Key Data determined by Key-Length"; + } + } + + grouping X509-data { + description + "Signature data for X509 certificate"; + leaf sig-list-num { + type uint32; + description + "Signature list Identifier"; + } + leaf guid { + type string; + description + "Signature owner Identifier"; + } + leaf extension-type { + type string; + description + "Type of the signature"; + } + leaf cert-list-num { + type uint32; + description + "Signature entry number"; + } + leaf owner-guid { + type string; + description + "Signature owner guid"; + } + leaf size { + type uint32; + description + "size of the signature"; + } + leaf x509-data { + type binary; + description + "x509 Cert data"; + } + } + + grouping SHA256-data { + description + "Signature data for SHA256 hash"; + leaf sig-list-num { + type uint32; + description + "Signature list Identifier"; + } + leaf guid { + type string; + description + "Signature owner Identifier"; + } + leaf extension-type { + type string; + description + "Type of the signature"; + } + leaf cert-list-num { + type uint32; + description + "Signature entry number"; + } + leaf owner-guid { + type string; + description + "Signature owner guid"; + } + leaf size { + type uint32; + description + "size of the signature"; + } + leaf sha256-hash { + type binary; + description + "SHA256 Hash data"; + } + } + + rpc apply-av { + description + "Append or update certificates in the Aikido. + Returns whether operation is succeeded or failed. + When in error condition, error code will be populated."; + input { + leaf location { + type string; + mandatory true; + description + "In a distributed system get the data from a specific node + identified by the location. Either specified node location + or all is valid"; + } + leaf av-operation { + type enumeration { + enum "APPEND" { + value 1; + description + "Append"; + } + enum "UPDATE" { + value 2; + description + "Update"; + } + } + mandatory true; + description + "Append/Update operation"; + } + leaf efi-var { + type EFI_VARIABLE; + mandatory true; + description + "Contains value for EFI partition"; + } + leaf av-content-file { + type binary; + mandatory true; + description + "av content file"; + } + leaf on-bmc { + type boolean; + description + "on bmc"; + } + } + output { + container apply-av-response { + description + "apply av result data"; + list node-data { + key "node-location"; + description + "apply av result list of the nodes in a distributed system + identified by the location"; + leaf node-location { + type string; + description + "Location of the node in the distributed system"; + } + leaf result-string { + type string; + description + "result string"; + } + } + } + } + } + rpc dump-efi-var { + description + "Fetches the certificates from the EFI variable provided, + dumps into a file and returns the file."; + input { + leaf efi-var { + type EFI_VARIABLE; + mandatory true; + description + "EFI variable"; + } + leaf location { + type string; + mandatory true; + description + "In a distributed system get the data from a specific node + identified by the location. Either specified node location + or all is valid"; + } + leaf on-bmc { + type boolean; + description + "on bmc"; + } + } + output { + container dump-efi-var-response { + description + "dumping efi variables data"; + list node-data { + key "node-location"; + description + "Dumping EFI Variables list of the nodes in a distributed system + identified by the location"; + leaf node-location { + type string; + description + "Location of the node in the distributed system"; + } + leaf result-string { + type string; + description + "Result string of the show efi variables on the node"; + } + list efi-var-data { + key "efi-var-name"; + description + "EFI Variable Name"; + leaf efi-var-name { + type string; + description + "EFI Variable Name"; + } + leaf efi-content-file { + type binary; + description + "EFI Variables binary content"; + } + } + } + } + } + } + rpc show-efi-var { + description + "Returns the certificates from the EFI variable provided."; + input { + leaf efi-var { + type EFI_VARIABLE; + mandatory true; + description + "EFI variable"; + } + leaf location { + type string; + mandatory true; + description + "In a distributed system get the data from a specific node + identified by the location. Either specified node location + or all is valid"; + } + leaf on-bmc { + type boolean; + description + "on bmc"; + } + } + output { + container show-efi-var-response { + description + "show efi var response"; + list node-data { + key "node-location"; + description + "Signatures list of a node in a distributed system + identified by the location"; + leaf node-location { + type string; + description + "Location of the node in the distributed system"; + } + leaf result-string { + type string; + description + "Result string of the show efi variables on the node"; + } + list efi-var-data { + key "efi-var-name"; + description + "EFI Variable name"; + leaf efi-var-name { + type string; + description + "EFI Variable name"; + } + list signature-list { + description + "signature list"; + list ldwm-list { + description + "List of LDWM Keys"; + uses LDWM-data; + } + list x509-list { + description + "List of x509 certs"; + uses X509-data; + } + list sha256-list { + description + "List of sha256 Hashes"; + uses SHA256-data; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-cfg.yang new file mode 100644 index 000000000..262c68b82 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-cfg.yang @@ -0,0 +1,941 @@ +module Cisco-IOS-XR-bundlemgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-bundlemgr-cfg"; + prefix bundlemgr-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-rgmgr-cfg { + prefix a2; + } + + 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 bundlemgr package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + bundle: Bundle global commands + lacp: Link Aggregation Control Protocol commands + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-rgmgr-cfg, + modules with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-11 { + description + "Removed deprecated hidden CLI option- lacp fast-switchover."; + semver:module-version "2.0.0"; + } + revision 2020-02-05 { + description + "Lacp Period cli Long option added."; + semver:module-version "1.1.0"; + } + revision 2019-05-30 { + description + "64 bit bandwidth changes."; + semver:module-version "1.0.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-16 { + description + "Description updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bfd-mode { + type enumeration { + enum "no-cfg" { + value 0; + description + "BFD mode not configured on per-bundle basis"; + } + enum "cisco" { + value 1; + description + "BFD mode Cisco"; + } + enum "ietf" { + value 2; + description + "BFD mode IETF"; + } + } + description + "Bfd mode"; + } + + typedef Churn-logging { + type enumeration { + enum "actor" { + value 1; + description + "Logging for actor churn only"; + } + enum "partner" { + value 2; + description + "Logging for partner churn only"; + } + enum "both" { + value 3; + description + "Logging for actor and partner churn"; + } + } + description + "Churn logging"; + } + + typedef Bundle-mode { + type enumeration { + enum "on" { + value 0; + description + "On"; + } + enum "active" { + value 1; + description + "Active"; + } + enum "passive" { + value 2; + description + "Passive"; + } + } + description + "Bundle mode"; + } + + typedef Bundle-minimum-bandwidth-range { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "kbps" { + value 1; + description + "kbps"; + } + enum "mbps" { + value 2; + description + "mbps"; + } + enum "gbps" { + value 3; + description + "gbps"; + } + } + description + "Bundle minimum bandwidth range"; + } + + typedef Period-short-enum { + type union { + type enumeration { + enum "true" { + value 1; + description + "Use the standard LACP short period (1s)"; + } + } + type uint32 { + range "1..1000"; + } + } + description + "Period short enum"; + } + + typedef Bundle-cisco-ext-types { + type enumeration { + enum "lon-signaling-off" { + value 0; + description + "LON signaling disabled"; + } + enum "lon-signaling-on" { + value 1; + description + "LON signaling enabled"; + } + } + description + "Bundle cisco ext types"; + } + + typedef Bundle-cisco-ext { + type empty; + description + "Cisco extensions enabled"; + } + + typedef Bundle-maximum-active-links-mode { + type enumeration { + enum "default" { + value 0; + description + "Default"; + } + enum "hot-standby" { + value 1; + description + "Hot standby"; + } + } + description + "Bundle maximum active links mode"; + } + + typedef Mlacp-switchover { + type enumeration { + enum "brute-force" { + value 1; + description + "Brute force shutdown"; + } + enum "revertive" { + value 2; + description + "Revertive behavior"; + } + } + description + "Mlacp switchover"; + } + + typedef Bundle-load-balance { + type enumeration { + enum "default" { + value 0; + description + "Default hash function used"; + } + enum "efp-auto" { + value 1; + description + "Send all traffic for this EFP over an + automatically selected member"; + } + enum "efp-value" { + value 2; + description + "Send all traffic for this EFP over the member + corresponding to the specified hash function"; + } + enum "source-ip" { + value 3; + description + "Load balance according to source IP address"; + } + enum "destination-ip" { + value 4; + description + "Load balance according to detination IP address"; + } + } + description + "Bundle load balance"; + } + + typedef Bundle-port-activity { + type enumeration { + enum "on" { + value 1; + description + "On"; + } + enum "active" { + value 2; + description + "Active"; + } + enum "passive" { + value 3; + description + "Passive"; + } + enum "inherit" { + value 4; + description + "Inherit"; + } + } + description + "Bundle port activity"; + } + + typedef Mlacp-maximize-parameter { + type enumeration { + enum "links" { + value 1; + description + "Maximize the number of operational links"; + } + enum "bandwidth" { + value 2; + description + "Maximize the operational bandwidth"; + } + } + description + "Mlacp maximize parameter"; + } + + typedef Bundle-period { + type union { + type enumeration { + enum "true" { + value 1; + description + "Use the standard LACP short period (1s)"; + } + } + type uint32 { + range "1..30000"; + } + } + description + "Bundle period"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container bfd { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. BFD + over bundle members configuration"; + container address-family { + description + "Configuration of BFDoBM for all address + families"; + container ipv6 { + description + "Configuration of BFDoBM for IPv6 address + family"; + container ipv6-timers { + description + "Timers associated with BFDoBM"; + leaf ipv6-nbor-unconfig-timer { + type uint32 { + range "60..3600"; + } + description + "IPv6 Timer associated with aggressiveness on + BFD session peer being unconfigured"; + } + leaf ipv6-start-timer { + type uint32 { + range "60..3600"; + } + description + "IPv6 Timer associated with aggressiveness on + BFD session creation"; + } + } + leaf ipv6-destination-address { + type string; + description + "IPv6 Destination address for BFD sessions + created by bundlemgr"; + } + leaf ipv6-detection-multiplier { + type uint32 { + range "2..50"; + } + description + "IPv6 Detection multiplier for BFD sessions + created by bundlemgr"; + } + leaf ipv6-fast-detect { + type empty; + description + "Configure to enable BFD over bundle members"; + } + leaf ipv6-interval { + type uint32 { + range "3..30000"; + } + description + "IPV6 Hello interval for BFD sessions created + by bundlemgr"; + } + } + container ipv4 { + description + "Configuration of BFDoBM for IPv4 address + family"; + container echo { + description + "Container for Echo min-multiplier"; + leaf min-interval { + type uint32 { + range "15..2000"; + } + description + "Configure echo min-interval for bundle + interface"; + } + } + container timers { + description + "Timers associated with BFDoBM"; + leaf nbor-unconfig-timer { + type uint32 { + range "60..3600"; + } + description + "Timer associated with aggressiveness on BFD + session peer being unconfigured"; + } + leaf start-timer { + type uint32 { + range "60..3600"; + } + description + "Timer associated with aggressiveness on BFD + session creation"; + } + } + leaf interval { + type uint32 { + range "3..30000"; + } + description + "Hello interval for BFD sessions created by + bundlemgr"; + } + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detection multiplier for BFD sessions created + by bundlemgr"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination address for BFD sessions created + by bundlemgr"; + } + leaf fast-detect { + type empty; + description + "Configure to enable BFD over bundle members"; + } + } + } + leaf mode { + type Bfd-mode; + default "no-cfg"; + description + "Configuration of BFDoBM mode [cisco|ietf]"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container bundle { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. Generic + per-bundle configuration"; + container bundle-load-balancing { + description + "Load-balance configuration"; + container hash-function { + presence "Indicates a hash-function node is configured."; + description + "Enable loadbalancing on this Bundle / EFP"; + leaf hash-type { + type Bundle-load-balance; + mandatory true; + description + "The specified hash function to use"; + } + leaf hash-value { + type uint32 { + range "1..64"; + } + mandatory true; + description + "The loadbalance hash value selected. For + non-EFP Value methods, this value must be set + to 1."; + } + } + leaf localize-links { + type uint32 { + range "1..64"; + } + description + "Set thresholds for forwarding bundle traffic + within a rack"; + } + } + container minimum-active { + description + "Minimum criteria for a bundle to be active"; + container bandwidth { + presence "Indicates a bandwidth node is configured."; + description + "Bandwidth (in kbps) needed to bring up a + bundle"; + leaf min-bandwidth-range { + type Bundle-minimum-bandwidth-range; + mandatory true; + description + "Minimum Bandwidth Range"; + } + leaf bandwidth { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Bandwidth"; + } + } + leaf links { + type uint32 { + range "1..64"; + } + default "1"; + description + "Number of active links needed to bring up a + bundle"; + } + } + container maximum-active { + description + "Set a limit on the number of links that can be + active"; + container links { + presence "Indicates a links node is configured."; + description + "Maximum number of active links in a bundle"; + leaf links { + type uint32 { + range "1..64"; + } + mandatory true; + description + "Number of active links"; + } + leaf max-active-links-mode { + type Bundle-maximum-active-links-mode; + description + "Maximum active links mode"; + } + } + } + leaf lacp-delay { + type uint32 { + range "1000..15000"; + } + description + "Set the lacp-delay timeout for members of this + bundle"; + } + leaf lacp-fallback { + type uint32 { + range "1..120"; + } + default "5"; + description + "Set the lacp-fallback timeout for this bundle"; + } + leaf logging-oos { + type empty; + description + "Enable logging messages for OOS membership + status for bundle members"; + } + leaf shutdown { + type empty; + description + "Deactivate all member links (down to Standby + state)"; + } + leaf wait-while { + type uint32 { + range "0..2000"; + } + default "2000"; + description + "Set the wait-while timeout for members of this + bundle"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container lacp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. Link + Aggregation Control Protocol per-interface + configuration (for bundle or member)"; + container cisco-extensions { + presence "Indicates a cisco-extensions node is configured."; + description + "Enable bundle Cisco extensions"; + leaf cisco-ext { + type Bundle-cisco-ext; + mandatory true; + description + "Cisco extensions"; + } + leaf cisco-ext-type { + type Bundle-cisco-ext-types; + description + "Specific Cisco extension to enable / disable"; + } + } + container timeout { + description + "Set timeout values for LACP-related timers"; + leaf rx-default { + type uint32 { + range "0..3000"; + } + description + "Set the timeout between expired and defaulted + states"; + } + leaf actor-churn { + type uint32 { + range "0..120"; + } + description + "The time in milliseconds for which to run the + timer"; + } + leaf partner-churn { + type uint32 { + range "0..120"; + } + description + "Set the timeout to use before declaring + partner churn"; + } + } + leaf system-priority { + type uint32 { + range "1..65535"; + } + description + "System priority for this bundle. Lower value is + higher priority."; + } + leaf period { + type Bundle-period; + description + "Lacp period for the bundle."; + } + leaf collector-max-delay { + type uint32 { + range "0..65535"; + } + description + "Collector Max Delay value to signal to the LACP + partner"; + } + leaf lacp-nonrevertive { + type empty; + description + "Configure to enable lacp non-revertive mode"; + } + leaf mode { + type Bundle-mode; + description + "Lacp mode for the bundle."; + } + leaf suppress-flaps { + type uint32 { + range "100..65535"; + } + description + "Suppress flaps on switchover for the specified + period (in ms)"; + } + leaf system-mac { + type yang:mac-address; + description + "System identifier for this bundle."; + } + leaf period-short { + type Period-short-enum; + units "millisecond"; + description + "LACP period to request from the partner (LACP + standard short period, or rate in milliseconds + for use with Cisco-specific extensions). + Default is LACP standard long period (30s)."; + } + leaf churn-logging { + type Churn-logging; + description + "Log churn notifications on the specified + system(s)"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container bundle-member { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. Generic + per-member configuration"; + container id { + description + "Add the port to an aggregated interface."; + leaf bundle-id { + type uint32 { + range "1..65535"; + } + description + "Identifier of the bundle to add the port to."; + } + leaf port-activity { + type Bundle-port-activity; + description + "Port Activity"; + } + } + leaf port-priority { + type xr:Cisco-ios-xr-port-number; + default "32768"; + description + "Priority for this port. Lower value is higher + priority."; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container mlacp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. + Multi-chassis LACP configuration"; + container maximize { + presence "Indicates a maximize node is configured."; + description + "Set parameters to maximize between the mLACP + peers"; + leaf maximize-by { + type Mlacp-maximize-parameter; + mandatory true; + description + "The paramenter which should be maximized"; + } + leaf link-threshold { + type uint32 { + range "0..64"; + } + description + "The number of links below which to switch to + the peer if it has more links available. Only + applicable if maximizing by links. If 0, no + threshold is applied."; + } + leaf bandwidth-threshold { + type uint64 { + range "0..18446744073709551615"; + } + description + "The bandwidth (in kbps) below which to switch + to the peer if it has more bandwidth available + . Only applicable if maximizing by bandwidth. + If 0, no threshold is applied."; + } + } + leaf port-priority { + type xr:Cisco-ios-xr-port-number; + default "32768"; + description + "The LACP port priority (lower value is higher + priority)"; + } + leaf recovery-delay { + type uint32 { + range "0..65535"; + } + default "300"; + description + "Set the delay before the bundle becomes active + after recovery from failure"; + } + leaf switchover-type { + type Mlacp-switchover; + description + "Set the type of mLACP switchover to use for + this bundle"; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "Specify an ICCP Group in which this bundle + should operate"; + } + } + } + augment "/a2:redundancy-group-manager/a2:iccp/a2:iccp-groups/a2:iccp-group" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-rgmgr-cfg'"; + container mlacp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. + Multi-chassis Link Aggregation Control Protocol + commands"; + leaf connect-timeout { + type uint32 { + range "0..65534"; + } + description + "Number of seconds to wait before assuming mLACP + peer is down."; + } + leaf system-mac { + type yang:mac-address; + description + "Unique LACP identifier for this system."; + } + leaf node { + type uint32 { + range "0..7"; + } + description + "Unique identifier for this system in the ICCP + Group."; + } + leaf system-priority { + type uint32 { + range "1..65535"; + } + description + "Priority for this system. Lower value is higher + priority."; + } + } + } + container bundle { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. Bundle + global commands"; + leaf mac-persist { + type empty; + description + "Configure to enable MAC persistence for bundle"; + } + } + container lacp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-bundle-cfg.yang which will + provide the compatible functionalities. Link + Aggregation Control Protocol commands"; + leaf system-mac { + type yang:mac-address; + description + "Unique identifier for this system."; + } + leaf system-priority { + type uint32 { + range "1..65535"; + } + default "32768"; + description + "Priority for this system. Lower value is higher + priority."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub1.yang new file mode 100644 index 000000000..b0ed8d0bd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub1.yang @@ -0,0 +1,322 @@ +submodule Cisco-IOS-XR-bundlemgr-oper-sub1 { + belongs-to Cisco-IOS-XR-bundlemgr-oper { + prefix Cisco-IOS-XR-bundlemgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR bundlemgr package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-05 { + description + "Support added for new member state reason. + 2022-07-29 + Support added for forwarding-viable in member state reason. + 2022-02-16 + Support added for lacp timeout transitions and last lacp timeout leaves."; + semver:module-version "4.0.0"; + } + revision 2020-10-01 { + description + "64 bit bandwidth support"; + semver:module-version "3.0.0"; + } + revision 2019-05-30 { + description + "64 bit bandwidth changes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-18 { + description + "Added a new leaf"; + } + revision 2018-07-25 { + description + "Added a new leaf"; + } + revision 2018-04-30 { + description + "Description updated."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-22 { + description + "Description updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bundle-media1 { + type enumeration { + enum "ethernet" { + value 0; + description + "Ethernet"; + } + enum "pos" { + value 1; + description + "POS"; + } + } + description + "Bundle media1"; + } + + typedef Load-balance { + type enumeration { + enum "default" { + value 0; + description + "Default"; + } + enum "auto" { + value 1; + description + "Auto"; + } + enum "value" { + value 2; + description + "Value"; + } + enum "source-ip" { + value 3; + description + "Source IP"; + } + enum "destination-ip" { + value 4; + description + "Destination IP"; + } + enum "unknown" { + value 5; + description + "Unknown"; + } + } + description + "Load balance"; + } + + typedef Bundle-media { + type enumeration { + enum "bundle-media-ethernet" { + value 0; + description + "bundle media ethernet"; + } + enum "bundle-media-pos" { + value 1; + description + "bundle media pos"; + } + enum "bundle-media-count" { + value 2; + description + "bundle media count"; + } + } + description + "Bundle media"; + } + + typedef Bundle-mlacp-mode { + type enumeration { + enum "bundle-mlacp-mode-standby" { + value 0; + description + "bundle mlacp mode standby"; + } + enum "bundle-mlacp-mode-active" { + value 1; + description + "bundle mlacp mode active"; + } + enum "bundle-mlacp-mode-count" { + value 2; + description + "bundle mlacp mode count"; + } + } + description + "Bundle mlacp mode"; + } + + grouping BMA-MEMBER-ITEM { + description + "Adjacency information associated with a single + member on a node"; + leaf interface-name { + type xr:Interface-name; + description + "Member interface"; + } + leaf link-id { + type uint8; + description + "Member's link ID in database"; + } + leaf link-order-number { + type uint8; + description + "Member's link order number in database"; + } + leaf bandwidth { + type uint8; + description + "Member's relative bandwidth"; + } + } + + grouping BMA-BUNDLE-DATA { + description + "Adjacency info for a single bundle"; + container brief { + description + "Brief bundle data"; + uses BMA-BRIEF-ITEM; + } + container load-balance-data { + description + "Load Balance data of the bundle"; + uses BMA-LOAD-BALANCE-DATA; + } + leaf media { + type Bundle-media1; + description + "Media type of bundle"; + } + leaf max-member-count { + type uint32; + description + "Maximum number of members for the bundle"; + } + leaf avoid-rebalance { + type boolean; + description + "Avoid rebalancing traffic flows"; + } + list member { + description + "Members of the bundle"; + uses BMA-MEMBER-ITEM; + } + list sub-interface { + description + "Sub-interfaces of the bundle"; + uses BMA-SUBINTF-ITEM; + } + } + + grouping BMA-LOAD-BALANCE-DATA { + description + "Load balance settings on a bundle"; + leaf type { + type Load-balance; + description + "Type of load balancing to use"; + } + leaf value { + type uint32; + description + "Load balance hash value"; + } + leaf local-link-threshold { + type uint32; + description + "Threshold below which rack-local balancing is + disabled"; + } + } + + grouping BMA-SUBINTF-ITEM { + description + "Adjacency information associated with a single + sub-interface on a node"; + container load-balance-data { + description + "Sub-interface Load balance data"; + uses BMA-LOAD-BALANCE-DATA; + } + leaf interface-name { + type xr:Interface-name; + description + "Sub interface"; + } + } + + grouping BMA-BRIEF-ITEM { + description + "Brief information for a single bundle"; + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface"; + } + leaf sub-interface-count { + type uint32; + description + "Number of sub-interfaces on the bundle"; + } + leaf member-count { + type uint32; + description + "Number of members configured to the bundle"; + } + leaf total-weight { + type uint32; + description + "Total weighting (relative bandwidth) of bundle"; + } + list sub-interface { + description + "Sub-interfaces of the bundle"; + uses BMA-SUBINTF-ITEM; + } + } + + grouping BMA-BRIEF-DATA { + description + "Bag containing the brief data items for all + bundles on a node"; + list bundle-data { + description + "Data for all bundles on node"; + uses BMA-BRIEF-ITEM; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub2.yang new file mode 100644 index 000000000..269913cdc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper-sub2.yang @@ -0,0 +1,3996 @@ +submodule Cisco-IOS-XR-bundlemgr-oper-sub2 { + belongs-to Cisco-IOS-XR-bundlemgr-oper { + prefix Cisco-IOS-XR-bundlemgr-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-bundlemgr-oper-sub1 { + revision-date 2022-09-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR bundlemgr package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-05 { + description + "Support added for new member state reason. + 2022-07-29 + Support added for forwarding-viable in member state reason. + 2022-02-16 + Support added for lacp timeout transitions and last lacp timeout leaves."; + semver:module-version "4.0.0"; + } + revision 2020-10-01 { + description + "64 bit bandwidth support"; + semver:module-version "3.0.0"; + } + revision 2019-05-30 { + description + "64 bit bandwidth changes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-18 { + description + "Added a new leaf"; + } + revision 2018-07-25 { + description + "Added a new leaf"; + } + revision 2018-04-30 { + description + "Description updated."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-22 { + description + "Description updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bml-timestamp { + type uint64; + description + "Bml timestamp"; + } + + typedef Bmd-mlacp-mbr-state-enum { + type enumeration { + enum "mbr-state-nak" { + description + "Member info NAK'd"; + } + enum "mbr-state-unknown" { + description + "No member state TLV received"; + } + enum "mbr-state-up" { + description + "Member is up"; + } + enum "mbr-state-down" { + description + "Member is down"; + } + enum "mbr-state-admin-down" { + description + "Member is admin down"; + } + enum "mbr-state-test" { + description + "Member state TLV reported test"; + } + enum "mbr-state-error" { + description + "Member state TLV reported error"; + } + } + description + "State of an mLACP device"; + } + + typedef Bmd-mlacp-bdl-state-enum { + type enumeration { + enum "bdl-state-nak" { + description + "Bundle info NAK'd"; + } + enum "bdl-state-unknown" { + description + "No bundle state TLV received"; + } + enum "bdl-state-no-sync" { + description + "No bundle config TLV with sync bit set received"; + } + enum "bdl-state-rec-delay" { + description + "Revertive delay timer running"; + } + enum "bdl-state-up" { + description + "Bundle is up"; + } + enum "bdl-state-down" { + description + "Bundle is down"; + } + enum "bdl-state-admin-down" { + description + "Bundle is admin down"; + } + enum "bdl-state-test" { + description + "Bundle state TLV reported test"; + } + enum "bdl-state-error" { + description + "Bundle state TLV reported error"; + } + } + description + "State of an mLACP device"; + } + + typedef Bmd-mlacp-node-sync-enum { + type enumeration { + enum "node-sync-req" { + description + "Sync requested of device"; + } + enum "node-sync-done" { + description + "Sync performed by device"; + } + enum "node-sync-start" { + description + "Sync in progress from device"; + } + enum "node-sync-init" { + description + "Initial sync pending from device"; + } + enum "node-sync-singleton" { + description + "Sync not required for singleton groups"; + } + } + description + "Synchronization states of an mLACP device"; + } + + typedef Bmd-mlacp-node-state-enum { + type enumeration { + enum "node-state-incomplete" { + description + "Missing some mLACP IG config"; + } + enum "node-state-conn-rejected" { + description + "Connection rejected by peer"; + } + enum "node-state-connect-sent" { + description + "Connect timer running"; + } + enum "node-state-unconfigured" { + description + "Missing some ICCP IG config"; + } + enum "node-state-unreachable" { + description + "ICCP declared peer node unreachable"; + } + enum "node-state-iccp-down" { + description + "ICCP declared peer node down"; + } + enum "node-state-nak" { + description + "System info NAK'd"; + } + enum "node-state-unknown" { + description + "No system state TLV received"; + } + enum "node-state-mlacp-down" { + description + "System state TLV reported down"; + } + enum "node-state-admin-down" { + description + "System state TLV reported admin down"; + } + enum "node-state-pe-isolated" { + description + "System is isolated from core network"; + } + enum "node-state-error" { + description + "System state TLV reported error"; + } + enum "node-state-test" { + description + "System state TLV reported test"; + } + enum "node-state-up" { + description + "System is up"; + } + } + description + "State of an mLACP device"; + } + + typedef Bmd-node-ldp-id { + type Bm-in4-addr; + description + "Bmd node ldp id"; + } + + typedef Lacp-churnstates { + type enumeration { + enum "no-churn" { + value 1; + description + "The port is synchronized correctly"; + } + enum "churn" { + value 2; + description + "The port is OutOfSync and the churn timer has + expired"; + } + enum "churn-monitor" { + value 3; + description + "The port is OutOfSync but the churn timer has + not expired"; + } + } + description + "Lacp churnstates"; + } + + typedef Rxstates { + type enumeration { + enum "current-rx" { + value 1; + description + "current rx"; + } + enum "expired" { + value 2; + description + "expired"; + } + enum "defaulted" { + value 3; + description + "defaulted"; + } + enum "initialize" { + value 4; + description + "initialize"; + } + enum "lacp-disabled" { + value 5; + description + "lacp disabled"; + } + enum "port-disabled" { + value 6; + description + "port disabled"; + } + } + description + "Rxstates"; + } + + typedef Lacp-period-state { + type enumeration { + enum "period-s-low" { + description + "Packets are being sent using a long period"; + } + enum "period-fast" { + description + "Packets are being sent using a short period"; + } + enum "period-none" { + description + "Packets are not being sent"; + } + } + description + "Lacp period state"; + } + + typedef Lacp-sel-state { + type enumeration { + enum "unselected" { + description + "The link is Unselected"; + } + enum "standby" { + description + "The link is Standby"; + } + enum "selected" { + description + "The link is Selected"; + } + } + description + "Lacp sel state"; + } + + typedef Bm-link-period-value { + type uint32; + description + "Bm link period value"; + } + + typedef Bm-link-state-bits { + type uint8; + description + "Bm link state bits"; + } + + typedef Bm-link-number { + type uint16; + description + "Bm link number"; + } + + typedef Bm-bdl-id { + type uint16; + description + "Bm bdl id"; + } + + typedef Bmd-bag-event-rg-item { + type enumeration { + enum "bmd-event-rg-idb-create" { + description + "RG structure created"; + } + enum "bmd-event-rg-configured" { + description + "RG configured by user"; + } + enum "bmd-event-rg-user-config" { + description + "User changed the configuration"; + } + enum "bmd-event-rg-connect-ion" { + description + "Connection to peer"; + } + enum "bmd-event-rg-data" { + description + "Data received"; + } + enum "bmd-event-rg-sync" { + description + "Sync performed"; + } + enum "bmd-event-rg-first-retry" { + description + "First retry"; + } + enum "bmd-event-rg-error" { + description + "Last error"; + } + enum "bmd-event-rg-mlacp-tlv" { + description + "mLACP TLV received"; + } + enum "bmd-event-rg-iccp-event" { + description + "ICCP event received"; + } + enum "bmd-event-rg-count" { + description + "Number of RG events"; + } + } + description + "Description of an event for a RG"; + } + + typedef Bmd-bag-event-bdl-item { + type enumeration { + enum "bmd-event-bdl-idb-create" { + description + "Bundle structure created"; + } + enum "bmd-event-bdl-configured" { + description + "Bundle configured by user"; + } + enum "bmd-event-bdl-im-state" { + description + "Bundle's IM state changed"; + } + enum "bmd-event-bdl-mbr-added" { + description + "Member added to the bundle"; + } + enum "bmd-event-bdl-mbr-deleted" { + description + "Member removed from the bundle"; + } + enum "bmd-event-bdl-mac-addr" { + description + "Bundle's MAC address changed"; + } + enum "bmd-event-bdl-first-retry" { + description + "First retry"; + } + enum "bmd-event-bdl-user-config" { + description + "User changed the configuration"; + } + enum "bmd-event-bdl-error" { + description + "Last error"; + } + enum "bmd-event-bdl-mlacp-tlv" { + description + "mLACP TLV received"; + } + enum "bmd-event-bdl-redundancy-role" { + description + "redundancy role change"; + } + enum "bdl-bfd-state-change" { + description + "BFD state change"; + } + enum "bmd-event-bdl-icl" { + description + "Inter-chassis link mode changed"; + } + enum "bmd-event-bdl-count" { + description + "Number of bundle events"; + } + } + description + "Description of an event for a bundle"; + } + + typedef Bmd-bag-item-string { + type string; + description + "Bmd bag item string"; + } + + typedef Bmd-bag-event-data { + type enumeration { + enum "bmd-bag-evt-data-none" { + description + "No additional data"; + } + enum "bmd-bag-evt-data-error" { + description + "Additional data is an error code"; + } + enum "bmd-bag-evt-data-string" { + description + "Additional data is a string"; + } + } + description + "Type of additional info for an event"; + } + + typedef Bmd-bag-event-mbr-item { + type enumeration { + enum "bmd-event-mbr-idb-create" { + description + "Member structure created"; + } + enum "bmd-event-mbr-bdl-add" { + description + "Added to bundle"; + } + enum "bmd-event-mbr-im-state" { + description + "Member's IM state changed"; + } + enum "bmd-event-mbr-sel-logic" { + description + "Sel logic state changed"; + } + enum "bmd-event-mbr-mux" { + description + "Mux state changed"; + } + enum "bmd-event-mbr-bfd" { + description + "BFD state changed"; + } + enum "bmd-event-mbr-expired" { + description + "Expired"; + } + enum "bmd-event-mbr-defaulted" { + description + "Defaulted"; + } + enum "bmd-event-mbr-first-retry" { + description + "First retry"; + } + enum "bmd-event-mbr-msg" { + description + "Message from BML"; + } + enum "bmd-event-mbr-error" { + description + "Last error"; + } + enum "bmd-event-mbr-mlacp-tlv" { + description + "mLACP TLV received"; + } + enum "bmd-event-mbr-redundancy-role" { + description + "redundancy role change"; + } + enum "bmd-event-mbr-count" { + description + "Number of member events"; + } + } + description + "Description of an event for a member"; + } + + typedef Bmd-bag-target { + type enumeration { + enum "bm-bag-target-mbr" { + description + "Information for a member"; + } + enum "bm-bag-target-bdl" { + description + "Information for a bundle"; + } + enum "bm-bag-target-node" { + description + "Information for a node"; + } + enum "bm-bag-target-rg" { + description + "Information for an RG"; + } + } + description + "Scope of information"; + } + + typedef Bmd-switch-reason { + type enumeration { + enum "bm-switch-reason-none" { + description + "Switch is permitted"; + } + enum "bm-switch-reason-noop" { + description + "Switch has no effect"; + } + enum "bm-switch-reason-not-mlacp" { + description + "mLACP not configured"; + } + enum "bm-switch-reason-revertive" { + description + "Brute-force or revertive switchover is in + effect"; + } + enum "bm-switch-reason-bdl-down" { + description + "Would-be active bundle is not ready"; + } + enum "bm-switch-reason-recovery" { + description + "Recovery delay in effect, applications may not + be fully synced"; + } + enum "bm-switch-reason-preceding-error" { + description + "Preceding switch action not viable"; + } + enum "bm-switch-reason-wrong-order" { + description + "Switch actions are scheduled incorrectly"; + } + enum "bm-switch-reason-singleton" { + description + "The ICCP group is operating in singleton mode"; + } + } + description + "Bmd switch reason"; + } + + typedef Bmd-bag-mlacp-sch-action-item { + type enumeration { + enum "switchover" { + description + "mLACP Switchover scheduled"; + } + enum "switchback" { + description + "mLACP Switchback scheduled"; + } + } + description + "Description of scheduled actions for a bundle"; + } + + typedef Bmd-member-type-enum { + type enumeration { + enum "bmd-mbr-local" { + value 0; + description + "Member has been configured on the local device"; + } + enum "bmd-mbr-foreign" { + value 1; + description + "Member has been configured on an mLACP peer + device"; + } + enum "bmd-mbr-unknown" { + value 2; + description + "Member's type is unknown"; + } + } + description + "Bmd member type enum"; + } + + typedef Bm-muxreason { + type enumeration { + enum "bm-mux-reason-no-reason" { + value 0; + description + "Selection logic has not yet been run for the + bundle this link is a member of"; + } + enum "bm-mux-reason-link-down" { + value 1; + description + "Link is down"; + } + enum "bm-mux-reason-link-deleted" { + value 2; + description + "Link is being removed from the bundle"; + } + enum "bm-mux-reason-duplex" { + value 3; + description + "Link has wrong duplexity"; + } + enum "bm-mux-reason-bandwidth" { + value 4; + description + "Link has wrong bandwidth"; + } + enum "bm-mux-reason-loop-back" { + value 5; + description + "Link is a loopback interface"; + } + enum "bm-mux-reason-activity-type" { + value 6; + description + "Link has wrong activity type"; + } + enum "bm-mux-reason-link-limit" { + value 7; + description + "Link's bundle already has maximum number of + members allowed"; + } + enum "bm-mux-reason-shared" { + value 8; + description + "Link is attached to a shared medium"; + } + enum "bm-mux-reason-lagid" { + value 9; + description + "Link has wrong LAG ID"; + } + enum "bm-mux-reason-no-bundle" { + value 10; + description + "Link's bundle does not exist"; + } + enum "bm-mux-reason-no-primary" { + value 11; + description + "Link's bundle has no primary link"; + } + enum "bm-mux-reason-bundle-down" { + value 12; + description + "Link's bundle is shut down"; + } + enum "bm-mux-reason-individual" { + value 13; + description + "Link is marked individual by partner"; + } + enum "bm-mux-reason-defaulted" { + value 14; + description + "Link is Defaulted, suggesting it is not + receiving LACPDUs from the peer"; + } + enum "bm-mux-reason-in-sync" { + value 15; + description + "Link is in InSync state"; + } + enum "bm-mux-reason-collecting" { + value 16; + description + "Link is in Collecting state"; + } + enum "bm-mux-reason-active-link-limit" { + value 17; + description + "Link exceeds maximum active limit"; + } + enum "bm-mux-reason-distributing" { + value 18; + description + "Link is in Distributing state"; + } + enum "bm-mux-reason-plat-data" { + value 19; + description + "Link platform data is incompatible with + selected members"; + } + enum "bm-mux-reason-count" { + value 20; + description + "Enumeration maximum value"; + } + } + description + "Bm muxreason"; + } + + typedef Bmd-member-state { + type enumeration { + enum "bmd-mbr-state-configured" { + value 1; + description + "Member is configured"; + } + enum "bmd-mbr-state-standby" { + value 2; + description + "Member is standby"; + } + enum "bmd-mbr-state-hot-standby" { + value 3; + description + "Member is hot standby"; + } + enum "bmd-mbr-state-negotiating" { + value 4; + description + "Member is negotiating"; + } + enum "bmd-mbr-state-bfd-running" { + value 5; + description + "Member has a BFD session running"; + } + enum "bmd-mbr-state-active" { + value 6; + description + "Member is active"; + } + } + description + "Bmd member state"; + } + + typedef Bm-severity { + type enumeration { + enum "ok" { + value 0; + description + "OK"; + } + enum "information" { + value 1; + description + "Information"; + } + enum "misconfiguration" { + value 2; + description + "Misconfiguration"; + } + enum "warning" { + value 3; + description + "Warning"; + } + enum "error" { + value 5; + description + "Error"; + } + } + description + "Severity of the member state reason"; + } + + typedef Bm-state-reason-target { + type enumeration { + enum "member-reason" { + description + "Member applicable reason"; + } + enum "bundle-reason" { + description + "Bundle applicable reason"; + } + } + description + "Scope of the state reason"; + } + + typedef Bm-mbr-state-reason { + type enumeration { + enum "bm-mbr-state-reason-unknown" { + value 0; + description + "Reason unavailable (diagnostics error)"; + } + enum "bm-mbr-state-reason-unselectable-unknown" { + value 1; + description + "Link cannot be used (unknown reason)"; + } + enum "bm-mbr-state-reason-link-down" { + value 2; + description + "Link is down"; + } + enum "bm-mbr-state-reason-link-deleting" { + value 3; + description + "Link is being removed from the bundle"; + } + enum "bm-mbr-state-reason-creating" { + value 4; + description + "Link is in the process of being created"; + } + enum "bm-mbr-state-reason-bundle-creating" { + value 5; + description + "Bundle is in the process of being created"; + } + enum "bm-mbr-state-reason-bundle-deleting" { + value 6; + description + "Bundle is in the process of being deleted"; + } + enum "bm-mbr-state-reason-bundle-admin-down" { + value 7; + description + "Bundle has been shut down"; + } + enum "bm-mbr-state-reason-replicating" { + value 8; + description + "Bundle is in the process of being replicated to + this location"; + } + enum "bm-mbr-state-reason-bandwidth" { + value 9; + description + "Incompatible with other links in the bundle + (bandwidth out of range)"; + } + enum "bm-mbr-state-reason-loop-back" { + value 10; + description + "Loopback: Actor and Partner have the same + System ID and Key"; + } + enum "bm-mbr-state-reason-activity-type" { + value 11; + description + "Incompatible with other links in the bundle + (LACP vs non-LACP)"; + } + enum "bm-mbr-state-reason-bundle-shutdown" { + value 12; + description + "Bundle shutdown is configured for the bundle"; + } + enum "bm-mbr-state-reason-min-selected" { + value 13; + description + "Not enough links available to meet + minimum-active threshold"; + } + enum "bm-mbr-state-reason-max-selected" { + value 14; + description + "Link is Standby due to maximum-active links + configuration"; + } + enum "bm-mbr-state-reason-link-limit" { + value 15; + description + "Bundle has too many member links configured"; + } + enum "bm-mbr-state-reason-active-limit" { + value 16; + description + "Bundle has reached maximum supported number of + active links"; + } + enum "bm-mbr-state-reason-standby-unknown" { + value 17; + description + "Link is Standby (unknown reason)"; + } + enum "bm-mbr-state-reason-expired" { + value 18; + description + "Link is Expired; LACPDUs are not being received + from the partner"; + } + enum "bm-mbr-state-reason-defaulted" { + value 19; + description + "Link is Defaulted; LACPDUs are not being + received from the partner"; + } + enum "bm-mbr-state-reason-act-or-not-agg" { + value 20; + description + "Link is Not Aggregatable (unknown reason)"; + } + enum "bm-mbr-state-reason-partner-not-agg" { + value 21; + description + "Partner has marked the link as Not Aggregatable"; + } + enum "bm-mbr-state-reason-lagid" { + value 22; + description + "Partner System ID/Key do not match that of the + Selected links"; + } + enum "bm-mbr-state-reason-bundle-not-cfgd" { + value 23; + description + "Bundle interface is not present in + configuration"; + } + enum "bm-mbr-state-reason-bundle-not-ready" { + value 24; + description + "Wait-while timer is running"; + } + enum "bm-mbr-state-reason-partner-ood" { + value 25; + description + "Partner has not echoed the correct parameters + for this link"; + } + enum "bm-mbr-state-reason-partner-not-in-sync" { + value 26; + description + "Partner is not Synchronized (Waiting, Standby, + or LAG ID mismatch)"; + } + enum "bm-mbr-state-reason-foreign-partner-oos" { + value 27; + description + "Partner is not Synchronized (Waiting, not + Selected, or out-of-date)"; + } + enum "bm-mbr-state-reason-attach-unknown" { + value 28; + description + "Link is Attached and has not gone Collecting + (unknown reason)"; + } + enum "bm-mbr-state-reason-partner-not-collecting" { + value 29; + description + "Partner has not advertized that it is + Collecting"; + } + enum "bm-mbr-state-reason-collect-unknown" { + value 30; + description + "Link is Collecting and has not gone + Distributing (unknown reason)"; + } + enum "bm-mbr-state-reason-standby-foreign" { + value 31; + description + "Link is marked as Standby by mLACP peer"; + } + enum "bm-mbr-state-reason-bfd-starting" { + value 32; + description + "Link is waiting for BFD session to start"; + } + enum "bm-mbr-state-reason-bfd-down" { + value 33; + description + "BFD state of this link is Down"; + } + enum "bm-mbr-state-reason-bfd-nbr-unconfig" { + value 34; + description + "BFD session is unconfigured on the remote end"; + } + enum "bm-mbr-state-reason-mlacp" { + value 35; + description + "Link is not operational as a result of mLACP + negotiations"; + } + enum "bm-mbr-state-reason-pe-isolated" { + value 36; + description + "ICCP group is isolated from the core network"; + } + enum "bm-mbr-state-reason-forced-switchover" { + value 37; + description + "Forced switchover to the mLACP peer"; + } + enum "bm-mbr-state-reason-errdis-unknown" { + value 38; + description + "Link is error disabled (unknown reason)"; + } + enum "bm-mbr-state-reason-mlacp-no-mbr-state-info" { + value 39; + description + "Waiting for member state information from mLACP + peer"; + } + enum "bm-mbr-state-reason-active" { + value 40; + description + "Link is Active"; + } + enum "bm-mbr-state-reason-mlacp-no-bdl-state-info" { + value 41; + description + "Waiting for bundle state information from mLACP + peer"; + } + enum "bm-mbr-state-reason-mlacp-no-bdl-config-info" { + value 42; + description + "Waiting for bundle configuration information + from mLACP peer"; + } + enum "bm-mbr-state-reason-mlacp-no-bdl-sync" { + value 43; + description + "Waiting for bundle to complete initial + synchronization with mLACP peer"; + } + enum "bm-mbr-state-reason-mlacp-bdl-has-no-peer" { + value 44; + description + "mLACP bundle does not have a peer device"; + } + enum "bm-mbr-state-reason-mlacp-nak" { + value 45; + description + "Link is being ignored due to an inconsistency + with mLACP peer"; + } + enum "bm-mbr-state-reason-mlacp-transport-unavailable" { + value 46; + description + "ICCP transport is unavailable"; + } + enum "bm-mbr-state-reason-mlacp-not-configured" { + value 47; + description + "ICCP Group is not fully configured"; + } + enum "bm-mbr-state-reason-recovery-timer" { + value 48; + description + "mLACP recovery delay timer is running"; + } + enum "bm-mbr-state-reason-mlacp-standby" { + value 49; + description + "mLACP peer is active"; + } + enum "bm-mbr-state-reason-maximized-out" { + value 50; + description + "mLACP peer has more links/bandwidth available"; + } + enum "bm-mbr-state-reason-mlacp-peer-selected" { + value 51; + description + "mLACP peer has one or more links Selected"; + } + enum "bm-mbr-state-reason-mlacp-connect-timer-running" { + value 52; + description + "mLACP bundle does not have a peer device + (connect timer running)"; + } + enum "bm-mbr-state-reason-bundle-not-mlacp" { + value 53; + description + "Bundle is not configured to run mLACP"; + } + enum "bm-mbr-state-reason-no-lon" { + value 54; + description + "Bundle has too many working links configured + (more than the maximum-active limit)"; + } + enum "bm-mbr-state-reason-cumul-rel-bw-limit" { + value 55; + description + "Additional bandwidth from link would exceed + load balancing capabilities"; + } + enum "bm-mbr-state-reason-no-mac" { + value 56; + description + "No MAC address available for the bundle"; + } + enum "bm-mbr-state-reason-no-system-id" { + value 57; + description + "No system ID available for use by this bundle"; + } + enum "bm-mbr-state-reason-link-shutdown" { + value 58; + description + "Link is shutdown"; + } + enum "bm-mbr-state-reason-activity-mlacp" { + value 59; + description + "Non-LACP link in mLACP bundle"; + } + enum "bm-mbr-state-reason-activity-iccp" { + value 60; + description + "LACP link in inter-chassis bundle"; + } + enum "bm-mbr-state-reason-bundle-icpe-mlacp" { + value 61; + description + "Parent bundle is both inter-chassis and + configured for mLACP"; + } + enum "bm-mbr-state-reason-no-link-num" { + value 62; + description + "Too many bundle members in system; no link + number available"; + } + enum "bm-mbr-state-reason-standby-peer-higher-prio" { + value 63; + description + "mLACP peer has a higher priority link"; + } + enum "bm-mbr-state-reason-red-state-standby" { + value 64; + description + "Link is in standby redundancy state"; + } + enum "bm-mbr-state-reason-other-red-state-standby" { + value 65; + description + "One or more links in the bundle are in standby + redundancy state"; + } + enum "bm-mbr-state-reason-hold-ing" { + value 66; + description + "Holding down temporary to avoid churn after + restart"; + } + enum "bm-mbr-state-reason-bundle-error-disabled" { + value 67; + description + "Bundle has been error-disabled"; + } + enum "bm-mbr-state-reason-bundle-efd-disabled" { + value 68; + description + "Bundle has been disabled by EFD"; + } + enum "bm-mbr-state-reason-singleton-pe-isolated" { + value 69; + description + "Singleton ICCP group is isolated from the core + network"; + } + enum "bm-mbr-state-reason-bfd-ipv6-starting" { + value 70; + description + "Link is waiting for BFDv6 session to start"; + } + enum "bm-mbr-state-reason-bfd-ipv6-down" { + value 71; + description + "BFDv6 state of this link is Down"; + } + enum "bm-mbr-state-reason-bfd-ipv6-nbr-unconfig" { + value 72; + description + "BFDv6 session is unconfigured on the remote end"; + } + enum "bm-mbr-state-reason-timer-running" { + value 73; + description + "LACP delay timer is running"; + } + enum "bm-mbr-state-reason-client-bundle-ctrl" { + value 74; + description + "Client has configured the bundle state Down"; + } + enum "bm-mbr-state-reason-lacp-oos" { + value 75; + description + "Link is in standby due to bundle out of service + state"; + } + enum "bm-mbr-state-reason-errdis-bundle-oos" { + value 76; + description + "Link is error-disabled due to bundle out of + service state"; + } + enum "bm-mbr-state-reason-plat-data" { + value 77; + description + "Incompatible with other links platform data in + the bundle (Etm vs non ETM)"; + } + enum "bm-mbr-state-reason-fwding-unviable" { + value 78; + description + "Link is not forwarding viable and in standby + state"; + } + enum "bm-mbr-state-reason-min-act-breach-by-bfd" { + value 79; + description + "Link is in standby state due to minimum-active + link configuration (only BFD down on other + members)"; + } + enum "bm-mbr-state-reason-count" { + value 80; + description + "Enumeration maximum value"; + } + } + description + "Bm mbr state reason"; + } + + typedef Bm-muxstate { + type enumeration { + enum "detached" { + value 1; + description + "Port is not attached to a bundle"; + } + enum "waiting" { + value 2; + description + "Port has chosen bundle and is waiting to join"; + } + enum "attached" { + value 3; + description + "Port is attached to the bundle but not active"; + } + enum "collecting" { + value 4; + description + "Port is ready to receive data"; + } + enum "distributing" { + value 5; + description + "Port is distributing data"; + } + enum "collecting-distributing" { + value 6; + description + "Port is active and can send and receive data"; + } + } + description + "Bm muxstate"; + } + + typedef Bmd-lacp-mode { + type enumeration { + enum "bmd-mode-on" { + value 0; + description + "bmd mode on"; + } + enum "bmd-mode-active" { + value 1; + description + "bmd mode active"; + } + enum "bmd-mode-passive" { + value 2; + description + "bmd mode passive"; + } + enum "bmd-mode-count" { + value 3; + description + "bmd mode count"; + } + } + description + "Bmd lacp mode"; + } + + typedef Bmd-mlacp-switchover { + type enumeration { + enum "bmd-mlacp-switchover-nonrevertive" { + value 0; + description + "Non-revertive switchover type"; + } + enum "bmd-mlacp-switchover-brute-force" { + value 1; + description + "Brute force switchover type"; + } + enum "bmd-mlacp-switchover-revertive" { + value 2; + description + "Revertive switchover type"; + } + enum "bmd-mlacp-switchover-count" { + value 3; + description + "Number of switchover types"; + } + } + description + "Bmd mlacp switchover"; + } + + typedef Bm-feature-status { + type enumeration { + enum "bm-feature-not-configured" { + description + "No configuration is applied for a feature"; + } + enum "bm-feature-not-operational" { + description + "The feature is currently not operational"; + } + enum "bm-feature-operational" { + description + "The feature is currently operational"; + } + } + description + "Bm feature status"; + } + + typedef Bm-bdl-mac-source { + type enumeration { + enum "bm-bdl-mac-source-unknown" { + description + "The MAC is currently unknown"; + } + enum "bm-bdl-mac-source-chassis" { + description + "The MAC was allocated from the chassis pool"; + } + enum "bm-bdl-mac-source-configured" { + description + "The MAC was configured by the user"; + } + enum "bm-bdl-mac-source-member" { + description + "The MAC belongs to a member"; + } + enum "bm-bdl-mac-source-peer" { + description + "The MAC has come from the peer device"; + } + } + description + "Bm bdl mac source"; + } + + typedef Bm-bdl-state { + type enumeration { + enum "bm-bdl-state-admin-down" { + description + "The bundle has been configured Down"; + } + enum "bm-bdl-state-down" { + description + "The bundle is Down"; + } + enum "bm-bdl-state-client-down" { + description + "The bundle is controlled by CLIENT Down"; + } + enum "bm-bdl-state-ptnr-down" { + description + "The bundle is Down on the partner device"; + } + enum "bm-bdl-state-bundle-shutdown" { + description + "Bundle shutdown has been configured"; + } + enum "bm-bdl-state-pe-isolated" { + description + "The bundle cannot contact the core"; + } + enum "bm-bdl-state-nak" { + description + "The state is disputed by a peer device"; + } + enum "bm-bdl-state-up-active" { + description + "The bundle is Up"; + } + enum "bm-bdl-state-mlacp-hot-standby" { + description + "The bundle is Up, but is mLACP standby"; + } + enum "bm-bdl-state-mlacp-cold-standby" { + description + "The bundle is mLACP standby, but will not + eliminate traffic loss"; + } + enum "bm-bdl-state-unknown" { + description + "The bundle state has not been determined"; + } + enum "bm-bdl-state-cold-standby" { + description + "The bundle is standby, but will not eliminate + traffic loss"; + } + enum "bm-bdl-state-error-disabled" { + description + "The bundle has been error-disabled"; + } + enum "bm-bdl-state-efd-disabled" { + description + "The bundle has been disabled by EFD"; + } + enum "bm-bdl-state-lacp-oos" { + description + "The bundle has been OOS (Out of Service)"; + } + } + description + "Bm bdl state"; + } + + typedef Bm-in6-addr { + type inet:ipv6-address; + description + "Bm in6 addr"; + } + + typedef Bm-in4-addr { + type inet:ipv4-address; + description + "Bm in4 addr"; + } + + typedef Bm-af-id { + type enumeration { + enum "bm-af-id-ipv4" { + value 1136568623; + description + "IPv4 AFI"; + } + enum "bm-af-id-ipv6" { + value 1136568624; + description + "IPv6 AFI"; + } + } + description + "Bm af id"; + } + + typedef Bmd-bfd-bdl-state { + type enumeration { + enum "bmd-bfd-bdl-down" { + description + "BFD is down on the bundle"; + } + enum "bmd-bfd-bdl-unknown" { + description + "BFD has just started on a bundle, and the state + has not been determined"; + } + enum "bmd-bfd-bdl-up" { + description + "BFD is up on the bundle"; + } + enum "bmd-bfd-bdl-count" { + description + "Number of BFD states on a bundle"; + } + } + description + "Bmd bfd bdl state"; + } + + typedef Bm-which-system { + type enumeration { + enum "bm-which-system-actr" { + description + "Actor"; + } + enum "bm-which-system-ptnr" { + description + "Partner"; + } + } + description + "Bm which system"; + } + + grouping LACP-COUNTERS { + description + "Statistics for a port using using LACP"; + leaf lacpd-us-received { + type uint32; + description + "LACPDUs received"; + } + leaf lacpd-us-transmitted { + type uint32; + description + "LACPDUs transmitted"; + } + leaf marker-packets-received { + type uint32; + description + "LACP Marker packets received"; + } + leaf marker-responses-transmitted { + type uint32; + description + "LACP Marker response packets transmitted"; + } + leaf illegal-packets-received { + type uint32; + description + "Illegal and unknown packets received"; + } + leaf excess-lacpd-us-received { + type uint32; + description + "LACPDUs received that exceed the rate limit"; + } + leaf excess-marker-packets-received { + type uint32; + description + "Marker packets received that exceed the rate + limit"; + } + leaf defaulted { + type uint32; + description + "State flag set to Defaulted"; + } + leaf expired { + type uint32; + description + "State flag set to Expired"; + } + leaf time-since-last-lacpdu-received { + type Bml-timestamp; + description + "Time elapsed since last LACPDU received (nsec)"; + } + leaf time-since-cleared { + type Bml-timestamp; + description + "Time elapsed since counters last cleared (nsec)"; + } + leaf time-since-unexpected-event { + type Bml-timestamp; + description + "Time elapsed since last unexpected event (nsec)"; + } + leaf last-cleared-sec { + type uint32; + description + "Last time counters cleared (s) (deprecated)"; + } + leaf last-cleared-nsec { + type uint32; + description + "Last time counters cleared (nsec) (deprecated)"; + } + leaf last-change { + type Bml-timestamp; + units "nanosecond"; + description + "Timestamp of last LACP timeout event in nsecs"; + } + leaf lacp-timeout-transitions { + type uint64; + description + "Total number of LACP timeout transitions"; + } + } + + grouping LACP-LINK-DATA { + description + "Link properties for a port using LACP + (Deprecated)"; + leaf interface-handle { + type xr:Interface-name; + description + "Member's interface handle"; + } + leaf actor-system-priority { + type uint16; + description + "System priority of the actor system"; + } + leaf actor-system-mac-address { + type yang:mac-address; + description + "MAC Address of the actor system"; + } + leaf actor-operational-key { + type uint16; + description + "Operational key for this port"; + } + leaf partner-system-priority { + type uint16; + description + "System priority of partner system"; + } + leaf partner-system-mac-address { + type yang:mac-address; + description + "MAC Address used to identify the partner system"; + } + leaf partner-operational-key { + type uint16; + description + "Operational key for partner port"; + } + leaf selected-aggregator-id { + type uint32; + description + "MIB ifindex of selected bundle"; + } + leaf attached-aggregator-id { + type uint32; + description + "MIB ifindex of attached bundle"; + } + leaf actor-port-id { + type uint16; + description + "Port number of this port"; + } + leaf actor-port-priority { + type uint16; + description + "Priority of this port"; + } + leaf partner-port-id { + type uint16; + description + "Port number of the partner's port"; + } + leaf partner-port-priority { + type uint16; + description + "Priority of the partner's port"; + } + leaf actor-port-state { + type uint8; + description + "LACP state of this port"; + } + leaf partner-port-state { + type uint8; + description + "LACP state of the partner's port"; + } + } + + grouping LACP-DROPS { + description + "Otherwise unaccounted LACP drops for a node"; + leaf wrong-port-count { + type uint32; + description + "LACP protocol packets received on ports with + LACP inactive/off"; + } + leaf last-wrong-port { + type uint32; + description + "Last unrecognized port on which a packet was + received"; + } + leaf unknown-port-count { + type uint32; + description + "Packets received for which rx port could not be + determined"; + } + leaf undecodable-packets { + type uint32; + description + "Packets received which could not be decoded"; + } + leaf time-since-cleared { + type Bml-timestamp; + units "nanosecond"; + description + "Time elapsed since counters were last cleared + (in nanoseconds)"; + } + leaf time-since-unexpected-event { + type Bml-timestamp; + units "nanosecond"; + description + "Time elapsed since last unexpected event (in + nanoseconds)"; + } + leaf time-since-last-updated { + type Bml-timestamp; + units "nanosecond"; + description + "Time elapsed since statistics were last updated + (in nanoseconds)"; + } + } + + grouping BM-BUNDLE-APPLIED-LACP-MODE { + description + "Applied LACP Mode for bundle interface"; + leaf applied-lacp-mode { + type Bmd-lacp-mode; + description + "Applied LACP Mode"; + } + } + + grouping BMD-BAG-MBR-INFO-MLACP-COUNTERS-MBR { + description + "Per member mLACP TLV counter information"; + container mlacp-tlv-counters { + description + "Counts of mLACP TLVs sent and received"; + uses BMD-BAG-MLACP-TLV-COUNTERS; + } + leaf port-name { + type string; + description + "Port name of member"; + } + } + + grouping BMD-BAG-MBR-INFO-MLACP-COUNTERS-NODE-DATA { + description + "Peer device specific mLACP TLV counter + information"; + leaf node-id { + type uint32; + description + "Device ID"; + } + leaf iccp-group-id { + type uint32; + description + "ICCP Group ID"; + } + } + + grouping BMD-BAG-MBR-INFO-MLACP-COUNTERS-NODE { + description + "Per peer device mLACP TLV counter information"; + container node-data { + description + "Peer device mLACP TLV counter information"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-NODE-DATA; + } + container mlacp-sync-requests-on-all-foreign-ports { + description + "Counts of mLACP sync request TLVs on all ports"; + uses OPTIONAL-SYNC-REQUEST-COUNTERS; + } + list member-data { + description + "Member mLACP TLV counter information"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-MBR; + } + } + + grouping BMD-BAG-MBR-INFO-MLACP-COUNTERS-BDL-DATA { + description + "Bundle specific mLACP TLV counter information"; + container mlacp-sync-requests-on-all-local-ports { + description + "Counts of mLACP sync request TLVs on all ports"; + uses OPTIONAL-SYNC-REQUEST-COUNTERS; + } + leaf bundle-name { + type string; + description + "Name of the bundle"; + } + leaf iccp-group-id { + type uint32; + description + "ICCP Group ID"; + } + } + + grouping BMD-BAG-MBR-INFO-MLACP-COUNTERS-BDL { + description + "Per bundle mLACP TLV counter information"; + container bundle-data { + description + "Bundle mLACP TLV counter information"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-BDL-DATA; + } + list node-data { + description + "Peer device mLACP TLV counter information"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-NODE; + } + list member-data { + description + "Local member mLACP TLV counter information"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-MBR; + } + } + + grouping BMD-BAG-MBR-INFO-MLACP-COUNTERS-RG { + description + "mLACP counter information for multiple items"; + list items { + description + "mLACP counter information items"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-BDL; + } + } + + grouping LACP-SYSTEM-ID { + description + "LACP System identification information"; + container system-id { + description + "System ID"; + uses BM-SYSTEM-ID-TYPE; + } + leaf iccp-group-id { + type uint32; + description + "ICCP Group that the system ID is for"; + } + leaf system-priority { + type uint16; + description + "Priority of the system (deprecated)"; + } + leaf system-mac-address { + type yang:mac-address; + description + "MAC Address used to identify the system + (deprecated)"; + } + } + + grouping BMD-BAG-MLACP-ICCP-EVENT-COUNTERS { + description + "Counts of ICCP events"; + leaf transport-up { + type uint32; + description + "Number of transport up events"; + } + leaf transport-down { + type uint32; + description + "Number of transport down events"; + } + leaf transport-unavailable { + type uint32; + description + "Number of transport unavailable events"; + } + leaf configured-set { + type uint32; + description + "Number of configure events"; + } + leaf configured-clear { + type uint32; + description + "Number of unconfigure events"; + } + leaf reachability-set { + type uint32; + description + "Number of reachability events"; + } + leaf reachability-cleared { + type uint32; + description + "Number of reachability cleared events"; + } + leaf member-status-up { + type uint32; + description + "Number of member status up events"; + } + leaf member-status-down { + type uint32; + description + "Number of member status down events"; + } + leaf pe-isolated { + type uint32; + description + "Number of PE isolation events"; + } + leaf pe-isolated-clear { + type uint32; + description + "Number of PE isolation cleared events"; + } + } + + grouping BMD-BAG-MLACP-ICCP-MSG-COUNTERS { + description + "Counts of ICCP messages"; + leaf sent-messages { + type uint32; + description + "Number of messages sent"; + } + leaf sent-buffer-messages { + type uint32; + description + "Number of buffers sent (may be multiple per + message)"; + } + leaf received-messages { + type uint32; + description + "Number of messages received"; + } + leaf transmission-errors { + type uint32; + description + "Number of transmission errors"; + } + } + + grouping BMD-BAG-MLACP-INVALID-TLV-COUNTERS { + description + "Counts of invalid TLVs received"; + leaf incorrect-length { + type uint32; + description + "Number of messages received of an incorrect + length"; + } + leaf invalid-type { + type uint32; + description + "Number of messages received with an invalid + mLACP TLV type"; + } + leaf invalid-data { + type uint32; + description + "Number of messages received containing invalid + data"; + } + leaf unknown-bundle { + type uint32; + description + "Number of messages received for an unknown + bundle"; + } + leaf unknown-port { + type uint32; + description + "Number of messages received for an unknown port"; + } + } + + grouping BMD-BAG-MLACP-RG-TLV-COUNTERS { + description + "Counts of ICCP level TLVs"; + leaf sent-config { + type uint32; + description + "Number of config TLVs sent"; + } + leaf received-config { + type uint32; + description + "Number of config TLVs received"; + } + leaf sent-state { + type uint32; + description + "Number of state TLVs sent"; + } + leaf received-state { + type uint32; + description + "Number of state TLVs received"; + } + leaf sent-na-ks { + type uint32; + description + "Number of NAK TLVs sent"; + } + leaf received-na-ks { + type uint32; + description + "Number of NAK TLVs received"; + } + leaf sent-sync-requests { + type uint32; + description + "Number of sync request TLVs sent"; + } + leaf received-sync-requests { + type uint32; + description + "Number of sync request TLVs received"; + } + leaf sent-state-sync-requests { + type uint32; + description + "Number of state sync request TLVs sent"; + } + leaf received-state-sync-requests { + type uint32; + description + "Number of state sync request TLVs received"; + } + leaf sent-config-sync-requests { + type uint32; + description + "Number of config sync request TLVs sent"; + } + leaf received-config-sync-requests { + type uint32; + description + "Number of state config request TLVs received"; + } + leaf sent-solicited-sync-data { + type uint32; + description + "Number of solicited sync data TLVs sent"; + } + leaf received-solicited-sync-data { + type uint32; + description + "Number of solicited sync data TLVs received"; + } + leaf sent-unsolicited-sync-data { + type uint32; + description + "Number of unsolicited sync data TLVs sent"; + } + leaf received-unsolicited-sync-data { + type uint32; + description + "Number of unsolicited sync data TLVs received"; + } + } + + grouping BMD-BAG-MLACP-CONNECTION-COUNTERS { + description + "Counts of connection events"; + leaf sent-connects { + type uint32; + description + "Number of connect TLVs sent"; + } + leaf received-connects { + type uint32; + description + "Number of connect TLVs received"; + } + leaf iccp-invalid-connects { + type uint32; + description + "Number of invalid ICCP connects"; + } + leaf iccp-config-connect-errors { + type uint32; + description + "Number of ICCP connection errors due to config"; + } + leaf iccp-count-connect-errors { + type uint32; + description + "Number of ICCP connection errors due to max ICCP + group count"; + } + leaf sent-wrong-versions { + type uint32; + description + "Number of wrong version TLVs sent"; + } + leaf received-wrong-versions { + type uint32; + description + "Number of wrong version TLVs received"; + } + leaf sent-disconnects { + type uint32; + description + "Number of disconnect TLVs sent"; + } + leaf received-disconnects { + type uint32; + description + "Number of disconnect TLVs received"; + } + leaf iccp-invalid-disconnects { + type uint32; + description + "Number of invalid ICCP disconnects"; + } + } + + grouping BMD-BAG-RG-INFO-MLACP-COUNTERS { + description + "ICCP group mLACP counters"; + container connection { + description + "Number of connection events"; + uses BMD-BAG-MLACP-CONNECTION-COUNTERS; + } + container tl-vs { + description + "Number TLVs sent and received"; + uses BMD-BAG-MLACP-RG-TLV-COUNTERS; + } + container invalid-tl-vs { + description + "Number invalid TLVs received"; + uses BMD-BAG-MLACP-INVALID-TLV-COUNTERS; + } + container iccp-messages { + description + "Number ICCP messages sent and received"; + uses BMD-BAG-MLACP-ICCP-MSG-COUNTERS; + } + container iccp-events { + description + "Number of ICCP events"; + uses BMD-BAG-MLACP-ICCP-EVENT-COUNTERS; + } + leaf last-time-cleared { + type uint64; + units "nanosecond"; + description + "Time in nsecs from boot when counters were last + cleared (deprecated)"; + } + leaf time-since-cleared { + type uint64; + units "nanosecond"; + description + "Elapsed time in nsecs since counters were last + cleared"; + } + leaf last-unexpected-event { + type uint64; + units "nanosecond"; + description + "Elapsed time in nsecs since last unexpected + event"; + } + } + + grouping BMD-BAG-RG-INFO-MLACP-COUNTERS-RG { + description + "mLACP counter information for an ICCP group"; + container iccp-group-counters { + description + "ICCP Group counters"; + uses BMD-BAG-RG-INFO-MLACP-COUNTERS; + } + leaf iccp-group-id { + type uint32; + description + "ICCP Group ID"; + } + } + + grouping BMD-EVENT-BAG-MULTIPLE { + description + "Bag for returning data about events"; + list events-item { + description + "Event items corresponding to bundle or member or + RG"; + uses BMD-EVENT-BAG; + } + } + + grouping BM-MAC-ALLOC { + description + "Data on MAC address allocation"; + list mac-address { + description + "MAC addresses allocated but unused"; + uses BM-MAC-ADDR-ST; + } + } + + grouping MLACP-MBR-INFO-TYPE { + description + "Information for a member"; + leaf port-name { + type string; + description + "Port Name"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Member's interface handle (local device's + members only)"; + } + leaf mlacp-node-id { + type uint8; + description + "mLACP Device ID"; + } + leaf port-number { + type uint16; + description + "Port number of the member"; + } + leaf operational-priority { + type uint16; + description + "Operational priority of the member in the bundle"; + } + leaf configured-priority { + type uint16; + description + "Configured priority of the member in the bundle"; + } + leaf member-state { + type Bmd-mlacp-mbr-state-enum; + description + "State of the member of the bundle"; + } + } + + grouping MLACP-BDL-INFO-TYPE { + description + "Information for a bundle"; + container mac-address { + description + "Bundle MAC address"; + uses BM-MAC-ADDR-ST; + } + leaf bundle-name { + type string; + description + "Name of the bundle"; + } + leaf mlacp-node-id { + type uint8; + description + "mLACP Device ID"; + } + leaf aggregator-id { + type uint16; + description + "Bundle aggregrator ID"; + } + leaf bundle-state { + type Bmd-mlacp-bdl-state-enum; + description + "State of the bundle"; + } + leaf port-priority { + type uint16; + description + "Bundle port priority"; + } + } + + grouping BMD-BAG-MLACP-BDL { + description + "mLACP information for a bundle"; + leaf bundle-interface-key { + type uint16; + description + "Key of the bundle interface"; + } + leaf media-type { + type Bundle-media; + description + "The media type of the bundle interface"; + } + leaf redundancy-object-id { + type uint64; + description + "Redundancy Object ID of the bundle"; + } + list mlacp-bundle-data { + description + "mLACP information for the bundle"; + uses MLACP-BDL-INFO-TYPE; + } + list mlacp-member-data { + description + "mLACP information for the member"; + uses MLACP-MBR-INFO-TYPE; + } + } + + grouping MLACP-RG-NODE-INFO-TYPE { + description + "LACP information for an RG"; + container system-id { + description + "System ID for the ICCP Group"; + uses BM-SYSTEM-ID-TYPE; + } + leaf mlacp-node-id { + type uint8; + description + "mLACP Device ID"; + } + leaf ldp-id { + type Bmd-node-ldp-id; + description + "LDP ID of the device"; + } + leaf version-number { + type uint32; + description + "Version of the protocol being used"; + } + leaf node-state { + type Bmd-mlacp-node-state-enum; + description + "State of the Node"; + } + leaf iccp-group-state { + type Bmd-mlacp-node-sync-enum; + description + "Node synchronization state"; + } + } + + grouping BMD-BAG-MLACP-RG { + description + "mLACP information for an RG"; + leaf iccp-group-id { + type uint32; + description + "ICCP Group that the mLACP information is for"; + } + leaf singleton { + type boolean; + description + "Is the ICCP group in singleton mode (1 = + singleton; 0 = not singleton)"; + } + leaf connect-timer-running { + type uint64; + units "nanosecond"; + description + "Time remaining on connect timer innsecs"; + } + list node-data { + description + "Information for the IG from the local and peer + devices"; + uses MLACP-RG-NODE-INFO-TYPE; + } + } + + grouping BMD-BAG-MLACP-DATA { + description + "Combined mLACP information for bundle and ICCP + Group"; + container iccp-group-data { + description + "ICCP Group information"; + uses BMD-BAG-MLACP-RG; + } + list bundle-data { + description + "Bundle information"; + uses BMD-BAG-MLACP-BDL; + } + } + + grouping BMD-BAG-MLACP-DATA-MULTIPLE { + description + "Combined mLACP information for bundle and ICCP + Group"; + list mlacp-data { + description + "mLACP data for multiple ICCP Groups"; + uses BMD-BAG-MLACP-DATA; + } + } + + grouping BMD-BAG-PROT-MBR-INFO { + description + "Protect information for a member"; + leaf interface-handle { + type xr:Interface-name; + description + "Member's interface handle"; + } + leaf underlying-link-id { + type uint16; + description + "Member's underlying link ID"; + } + leaf link-order-number { + type uint16; + description + "Member's link order number"; + } + leaf bandwidth { + type uint64; + description + "Member's bandwidth"; + } + leaf node { + type xr:Node-id; + description + "Member's node ID"; + } + leaf active { + type boolean; + description + "Member is active within its bundle"; + } + leaf notification-received { + type boolean; + description + "Received a notification on the member"; + } + leaf slow-path-up { + type boolean; + description + "Member is up in the slow path"; + } + leaf time-stamp { + type uint64; + description + "Last event for the member"; + } + } + + grouping BMD-BAG-PROT-BDL-INFO { + description + "Protect information for a bundle"; + leaf bundle-interface-handle { + type xr:Interface-name; + description + "Handle of the bundle interface"; + } + leaf interface-up { + type boolean; + description + "Whether the bundle interface is up"; + } + leaf registered { + type boolean; + description + "Whether there is a client protect registration + on the bundle interface"; + } + leaf slow-path-up { + type boolean; + description + "Bundle is up in the slow path"; + } + leaf slow-path-trigger { + type boolean; + description + "Whether the last protect trigger originated in + the slow path"; + } + leaf minimum-active-links { + type uint32; + description + "Minimum active links threshold"; + } + leaf minimum-bandwidth { + type uint64; + description + "Minimum bandwidth threshold"; + } + leaf event-type { + type Bmd-bag-target; + description + "Scope of the last event that impacted the bundle"; + } + leaf time-stamp { + type uint64; + description + "Last event for the bundle"; + } + list member-info { + description + "Information about the members"; + uses BMD-BAG-PROT-MBR-INFO; + } + } + + grouping BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG-MULTIPLE { + description + "mLACP counter information for multiple ICCP + groups"; + list iccp-group { + description + "ICCP Group mLACP TLV counter information"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG; + } + } + + grouping BMD-BAG-BDL-INFO-MLACP-COUNTERS-NODE-DATA { + description + "Peer device specific mLACP TLV counter + information"; + container mlacp-sync-requests-on-all-foreign-ports { + description + "Counts of mLACP sync request TLVs on all ports"; + uses OPTIONAL-SYNC-REQUEST-COUNTERS; + } + container mlacp-sync-requests-on-all-foreign-bundles { + description + "Counts of mLACP sync request TLVs on all bundles"; + uses OPTIONAL-SYNC-REQUEST-COUNTERS; + } + leaf node-id { + type uint32; + description + "Device ID"; + } + } + + grouping BMD-BAG-BDL-INFO-MLACP-COUNTERS-NODE { + description + "Per peer device mLACP TLV counter information"; + container node-data { + description + "Peer device mLACP TLV counter information"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-NODE-DATA; + } + list bundle-data { + description + "Peer device bundle mLACP TLV counter information"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-BDL; + } + } + + grouping BMD-BAG-MLACP-SYNC-RQST-COUNTERS { + description + "Counts of mLACP sync request TLVs received"; + container received-sync-requests { + description + "Number of mLACP sync request TLVs received"; + uses BMD-BAG-MLACP-SYNC-RQST-TLVS-RCVD; + } + leaf last-time-cleared { + type uint64; + units "nanosecond"; + description + "Time in nsecs from boot when counters were last + cleared (deprecated)"; + } + leaf time-since-cleared { + type uint64; + units "nanosecond"; + description + "Elapsed time in nsecs since counters were last + cleared"; + } + } + + grouping OPTIONAL-SYNC-REQUEST-COUNTERS { + description + "Optional sync request counters field"; + uses BMD-BAG-MLACP-SYNC-RQST-COUNTERS; + } + + grouping BMD-BAG-MLACP-SYNC-RQST-TLVS-RCVD { + description + "Counts of mLACP sync request TLVs received"; + leaf all-syncs { + type uint32; + description + "Total number of sync requests received"; + } + leaf config-syncs { + type uint32; + description + "Number of config sync requests received"; + } + leaf state-syncs { + type uint32; + description + "Number of state sync requests received"; + } + } + + grouping BMD-BAG-MLACP-TLV-COUNTERS { + description + "Counts of mLACP TLVs sent and received"; + container received-sync-requests { + description + "Number of mLACP sync request TLVs received"; + uses BMD-BAG-MLACP-SYNC-RQST-TLVS-RCVD; + } + leaf sent-config-tl-vs { + type uint32; + description + "Number of mLACP config TLVs sent"; + } + leaf sent-state-tl-vs { + type uint32; + description + "Number of mLACP state TLVs sent"; + } + leaf sent-priority-tl-vs { + type uint32; + description + "Number of mLACP priority TLVs sent"; + } + leaf received-priority-tl-vs { + type uint32; + description + "Number of mLACP priority TLVs received"; + } + leaf received-nak-tl-vs { + type uint32; + description + "Number of mLACP NAK TLVs received"; + } + leaf last-time-cleared { + type uint64; + units "nanosecond"; + description + "Time in nsecs from boot when counters were last + cleared (deprecated)"; + } + leaf time-since-cleared { + type uint64; + units "nanosecond"; + description + "Elapsed time in nsecs since counters were last + cleared"; + } + leaf last-unexpected-event { + type uint64; + units "nanosecond"; + description + "Elapsed time in nsecs since last unexpected + event"; + } + } + + grouping BMD-BAG-BDL-INFO-MLACP-COUNTERS-BDL { + description + "Per bundle mLACP TLV counter information"; + container mlacp-tlv-counters { + description + "Counts of mLACP TLVs sent and received"; + uses BMD-BAG-MLACP-TLV-COUNTERS; + } + leaf bundle-name { + type string; + description + "Name of the bundle"; + } + } + + grouping BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG-DATA { + description + "ICCP group specific mLACP TLV counter information"; + container mlacp-sync-requests-on-all-local-ports { + description + "Counts of mLACP sync request TLVs on all ports"; + uses OPTIONAL-SYNC-REQUEST-COUNTERS; + } + container mlacp-sync-requests-on-all-local-bundles { + description + "Counts of mLACP sync request TLVs on all bundles"; + uses OPTIONAL-SYNC-REQUEST-COUNTERS; + } + leaf iccp-group-id { + type uint32; + description + "ICCP Group ID"; + } + list bundle-data { + description + "Local device bundle mLACP counter information"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-BDL; + } + } + + grouping BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG { + description + "ICCP group mLACP counter information"; + container iccp-group-data { + description + "ICCP Group mLACP TLV counter information"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG-DATA; + } + list node-data { + description + "Peer device bundle mLACP counter information"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-NODE; + } + } + + grouping LACP-LINK-ADDITIONAL-INFO-FOREIGN-TYPE { + description + "Additional information for a foreign LACP link"; + leaf peer-address { + type Bmd-node-ldp-id; + description + "The LDP address of the device that the link is + configured on"; + } + leaf member-name { + type string; + description + "Member's (short form) name"; + } + } + + grouping LACP-LINK-ADDITIONAL-INFO-LOCAL-TYPE { + description + "Additional information for a local LACP link"; + leaf interface-handle { + type xr:Interface-name; + description + "Member's interface handle"; + } + } + + grouping LACP-LINK-ADDITIONAL-INFO { + description + "Additional information for the link that is + dependent on type"; + container local { + when "../mbr-type = 'bmd-mbr-local'" { + description + "../MbrType = 'BMD_MBR_LOCAL'"; + } + description + "Information for a local port"; + uses LACP-LINK-ADDITIONAL-INFO-LOCAL-TYPE; + } + container foreign { + when "../mbr-type = 'bmd-mbr-foreign'" { + description + "../MbrType = 'BMD_MBR_FOREIGN'"; + } + description + "Information for a foreign port"; + uses LACP-LINK-ADDITIONAL-INFO-FOREIGN-TYPE; + } + leaf mbr-type { + type Bmd-member-type-enum; + description + "MbrType"; + } + } + + grouping BM-LINK-ID-TYPE { + description + "BM LINK ID TYPE"; + leaf link-priority { + type uint16; + description + "link priority"; + } + leaf link-number { + type Bm-link-number; + description + "link number"; + } + } + + grouping BM-LACP-PORT-INFO-TYPE { + description + "BM LACP PORT INFO TYPE"; + container system { + description + "system"; + uses BM-SYSTEM-ID-TYPE; + } + container port { + description + "port"; + uses BM-LINK-ID-TYPE; + } + leaf key { + type Bm-bdl-id; + description + "key"; + } + leaf state { + type Bm-link-state-bits; + description + "state"; + } + } + + grouping LACP-LINK-DEVICE-INFO-TYPE { + description + "Link properties for a port from a device"; + container port-info { + description + "LACP parameters for this device"; + uses BM-LACP-PORT-INFO-TYPE; + } + leaf tx-period { + type Bm-link-period-value; + description + "Time (in ms) between transmitting LACPDUs"; + } + } + + grouping LACP-MBR-DATA { + description + "Link properties for a port using LACP"; + container actor-info { + description + "LACP information for the port from the actor"; + uses LACP-LINK-DEVICE-INFO-TYPE; + } + container partner-info { + description + "LACP information for the port from the partner"; + uses LACP-LINK-DEVICE-INFO-TYPE; + } + container additional-info { + description + "Additional information for the link"; + uses LACP-LINK-ADDITIONAL-INFO; + } + leaf selected-aggregator-id { + type uint32; + description + "MIB ifindex of selected bundle"; + } + leaf attached-aggregator-id { + type uint32; + description + "MIB ifindex of attached bundle"; + } + leaf selection-state { + type Lacp-sel-state; + description + "State of the Selection Logic state machine"; + } + leaf period-state { + type Lacp-period-state; + description + "State of the Period state machine"; + } + leaf receive-machine-state { + type Rxstates; + description + "State of the RX state machine"; + } + leaf mux-state { + type Bm-muxstate; + description + "State of the Mux state machine"; + } + leaf actor-churn-state { + type Lacp-churnstates; + description + "State of the Churn state machine for the Actor"; + } + leaf partner-churn-state { + type Lacp-churnstates; + description + "State of the Churn state machine for the Partner"; + } + leaf iccp-group-id { + type uint32; + description + "The ID of the ICCP group that the link is + configured on"; + } + } + + grouping LACP-COMBINED-DATA { + description + "Bag containing the bundle and member data with + regard to outputting LACP data"; + container bundle-data { + description + "Bundle information"; + uses LACP-BUNDLE-DATA; + } + list member-data { + description + "Member information"; + uses LACP-MBR-DATA; + } + } + + grouping BMD-BAG-EVENT-ITEM-RG { + description + "A single event item for an RG"; + container data { + description + "Additional data for the event"; + uses BMD-BAG-EVENT-DATA; + } + leaf rg-event-type { + type Bmd-bag-event-rg-item; + description + "Type of event for RG"; + } + leaf time-stamp { + type uint64; + description + "Time stamp of the event"; + } + } + + grouping BMD-BAG-EVENT-ITEM-BDL { + description + "A single event item for a bundle"; + container data { + description + "Additional data for the event"; + uses BMD-BAG-EVENT-DATA; + } + leaf bundle-event-type { + type Bmd-bag-event-bdl-item; + description + "Type of event for bundle"; + } + leaf time-stamp { + type uint64; + description + "Time stamp of the event"; + } + } + + grouping BMD-BAG-EVENT-DATA { + description + "Additional data for an event"; + leaf data-type { + type Bmd-bag-event-data; + description + "DataType"; + } + leaf no-data { + when "../data-type = 'bmd-bag-evt-data-none'" { + description + "../DataType = 'BMD_BAG_EVT_DATA_NONE'"; + } + type uint8; + description + "NoData"; + } + leaf error { + when "../data-type = 'bmd-bag-evt-data-error'" { + description + "../DataType = 'BMD_BAG_EVT_DATA_ERROR'"; + } + type uint32; + description + "Error"; + } + leaf string-data { + when "../data-type = 'bmd-bag-evt-data-string'" { + description + "../DataType = 'BMD_BAG_EVT_DATA_STRING'"; + } + type Bmd-bag-item-string; + description + "StringData"; + } + } + + grouping BMD-BAG-EVENT-ITEM-MBR { + description + "A single event item for a member"; + container data { + description + "Additional data for the event"; + uses BMD-BAG-EVENT-DATA; + } + leaf member-event-type { + type Bmd-bag-event-mbr-item; + description + "Type of event for member"; + } + leaf time-stamp { + type uint64; + description + "Time stamp of the event"; + } + } + + grouping BMD-BAG-EVENT-ITEM { + description + "Event item"; + container member-evt-info { + when "../event-type = 'bm-bag-target-mbr'" { + description + "../EventType = 'BM_BAG_TARGET_MBR'"; + } + description + "Event information for a member"; + uses BMD-BAG-EVENT-ITEM-MBR; + } + container bundle-evt-info { + when "../event-type = 'bm-bag-target-bdl'" { + description + "../EventType = 'BM_BAG_TARGET_BDL'"; + } + description + "Event information for a bundle"; + uses BMD-BAG-EVENT-ITEM-BDL; + } + container rg-evt-info { + when "../event-type = 'bm-bag-target-rg'" { + description + "../EventType = 'BM_BAG_TARGET_RG'"; + } + description + "Event information for an RG"; + uses BMD-BAG-EVENT-ITEM-RG; + } + leaf event-type { + type Bmd-bag-target; + description + "EventType"; + } + } + + grouping BMD-EVENT-BAG { + description + "Bag for returning data about events"; + leaf item-name { + type string; + description + "Name for the current item to use"; + } + list items { + description + "Event items"; + uses BMD-BAG-EVENT-ITEM; + } + } + + grouping BM-BUNDLE-COMBINED-DATA { + description + "Combined bundle and member data bags"; + container bundle-data { + description + "Bundle information"; + uses BM-BUNDLE-DATA; + } + list member-data { + description + "Member information"; + uses BM-MEMBER-DATA; + } + } + + grouping BMD-BAG-MLACP-SCH-ACTION { + description + "Bag for returning data about scheduled actions"; + leaf mlacp-action { + type Bmd-bag-mlacp-sch-action-item; + description + "Type of mLACP scheduled action for a bundle"; + } + leaf time-remaining { + type uint64; + units "second"; + description + "Seconds left before action"; + } + leaf action-state { + type Bmd-switch-reason; + description + "Details whether the switch action is viable"; + } + } + + grouping BMD-SCH-ACTION-BAG { + description + "Bag for returning data about scheduled actions"; + leaf bundle-name { + type string; + description + "Name of the bundle"; + } + list scheduled-action { + description + "Scheduled actions for mlacp in case of switch + over"; + uses BMD-BAG-MLACP-SCH-ACTION; + } + } + + grouping BMD-BFD-COUNTER-BAG { + description + "BFD events"; + leaf member-name { + type string; + description + "Name of the member this information is for"; + } + leaf last-time-cleared { + type uint64; + description + "Timestamp when counters were last cleared + (deprecated)"; + } + leaf starting { + type uint32; + description + "Number of times member state changed to starting"; + } + leaf up { + type uint32; + description + "Number of times member state changed to up"; + } + leaf down { + type uint32; + description + "Number of times member state changed to down"; + } + leaf neighbor-unconfigured { + type uint32; + description + "Number of times member state changed to neighbor + unconfigured"; + } + leaf start-timeouts { + type uint32; + description + "Number of timeouts waiting for BFD to start"; + } + leaf neighbor-unconfigured-timeouts { + type uint32; + description + "Number of timeouts waiting for neighbor to + become unconfigured"; + } + leaf time-since-cleared { + type uint64; + units "nanosecond"; + description + "Elapsed time in nsecs since counters were last + cleared"; + } + } + + grouping BM-NAME-BAG { + description + "Item Name"; + leaf item-name { + type string; + description + "Name of item"; + } + } + + grouping BMD-BFD-COUNTER-BAG-MULTIPLE { + description + "BFD events"; + container bundle-name { + description + "Name of the bundle this information is for"; + uses BM-NAME-BAG; + } + list bfd-counter { + description + "BFD event counters"; + uses BMD-BFD-COUNTER-BAG; + } + } + + grouping BM-MBR-STATE-REASON-DATA-TYPE { + description + "Additional member state reason data"; + leaf reason-type { + type Bm-state-reason-target; + description + "The item the reason applies to"; + } + leaf severity { + type Bm-severity; + description + "The severity of the reason"; + } + } + + grouping BM-MUX-DATA { + description + "bm mux information"; + container member-mux-state-reason-data { + description + "Data regarding the reason for last Mux state + change"; + uses BM-MBR-STATE-REASON-DATA-TYPE; + } + leaf mux-state { + type Bm-muxstate; + description + "Current state of this bundle member"; + } + leaf error { + type uint32; + description + "Internal value indicating if an error occurred + trying to put a link into the desired state"; + } + leaf member-mux-state-reason { + type Bm-mbr-state-reason; + description + "Reason for last Mux state change"; + } + leaf member-state { + type Bmd-member-state; + description + "Current internal state of this bundle member"; + } + leaf mux-state-reason { + type Bm-muxreason; + description + "Reason for last Mux state change (Deprecated)"; + } + } + + grouping BM-LACP-LINK-DATA { + description + "Link properties for a port using LACP "; + leaf interface-handle { + type xr:Interface-name; + description + "Member's interface handle"; + } + leaf actor-system-priority { + type uint16; + description + "System priority of actor system"; + } + leaf actor-system-mac-address { + type yang:mac-address; + description + "MAC Address of the actor system"; + } + leaf actor-operational-key { + type uint16; + description + "Operational key for this port"; + } + leaf partner-system-priority { + type uint16; + description + "System priority of partner system"; + } + leaf partner-system-mac-address { + type yang:mac-address; + description + "MAC Address used to identify the partner system"; + } + leaf partner-operational-key { + type uint16; + description + "Operational key for partner port"; + } + leaf selected-aggregator-id { + type uint32; + description + "MIB ifindex of selected bundle"; + } + leaf attached-aggregator-id { + type uint32; + description + "MIB ifindex of attached bundle"; + } + leaf actor-port-id { + type uint16; + description + "Port number of this port"; + } + leaf actor-port-priority { + type uint16; + description + "Priority of this port"; + } + leaf partner-port-id { + type uint16; + description + "Port number of the partner's port"; + } + leaf partner-port-priority { + type uint16; + description + "Priority of the partner's port"; + } + leaf actor-port-state { + type uint8; + description + "LACP state of this port"; + } + leaf partner-port-state { + type uint8; + description + "LACP state of the partner's port"; + } + } + + grouping BM-LACP-COUNTERS { + description + "Statistics for a port using using LACP"; + leaf lacpd-us-received { + type uint32; + description + "LACPDUs received"; + } + leaf lacpd-us-transmitted { + type uint32; + description + "LACPDUs transmitted"; + } + leaf marker-packets-received { + type uint32; + description + "LACP Marker packets received"; + } + leaf marker-responses-transmitted { + type uint32; + description + "LACP Marker response packets transmitted"; + } + leaf illegal-packets-received { + type uint32; + description + "Illegal and unknown packets received"; + } + leaf excess-lacpd-us-received { + type uint32; + description + "LACPDUs received that exceed the rate limit"; + } + leaf excess-marker-packets-received { + type uint32; + description + "Marker packets received that exceed the rate + limit"; + } + leaf defaulted { + type uint32; + description + "State flag set to Defaulted"; + } + leaf expired { + type uint32; + description + "State flag set to Expired"; + } + leaf last-cleared-sec { + type uint32; + description + "Last time counters cleared (s) (deprecated)"; + } + leaf last-cleared-nsec { + type uint32; + description + "Last time counters cleared (nsec) (deprecated)"; + } + leaf last-change { + type uint64; + units "nanosecond"; + description + "Timestamp of last LACP timeout event in nsecs"; + } + leaf lacp-timeout-transitions { + type uint64; + description + "Total number of LACP timeout transitions"; + } + } + + grouping BM-MEMBER-DATA { + description + "Bundle member data for any member"; + container counters { + description + "Counters data about member link"; + uses BM-LACP-COUNTERS; + } + container link-data { + description + "Lacp data about member link"; + uses BM-LACP-LINK-DATA; + } + container member-mux-data { + description + "Mux state machine data"; + uses BM-MUX-DATA; + } + container mac-address { + description + "MAC address of this member (deprecated)"; + uses BM-MAC-ADDR-ST; + } + leaf interface-name { + type xr:Interface-name; + description + "Member's interface name"; + } + leaf port-priority { + type uint16; + description + "The priority of this member"; + } + leaf port-number { + type uint16; + description + "Member's link number"; + } + leaf underlying-link-id { + type uint16; + description + "Member's underlying link ID"; + } + leaf link-order-number { + type uint16; + description + "Member's link order number"; + } + leaf iccp-node { + type uint32; + description + "Location of member"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth of this member (kbps)"; + } + leaf lacp-enabled { + type string; + description + "Boolean indicating LACP enabled or not"; + } + leaf member-type { + type Bmd-member-type-enum; + description + "Member's type (local/foreign)"; + } + leaf member-name { + type string; + description + "Member's (short form) name"; + } + leaf replication-error { + type uint32; + description + "Error from final replication attempt"; + } + leaf bandwidth64-bit { + type uint64; + units "kbit/s"; + description + "Bandwidth of this member 64-Bit (kbps)"; + } + } + + grouping ETHER-MACADDR-TYPE { + description + "ETHER MACADDR TYPE"; + leaf macaddr { + type yang:hex-string; + description + "macaddr"; + } + } + + grouping BM-SYSTEM-ID-TYPE { + description + "BM SYSTEM ID TYPE"; + container system-mac-addr { + description + "MAC Address used to identify the system"; + uses ETHER-MACADDR-TYPE; + } + leaf system-prio { + type uint16; + description + "Priority of the system"; + } + } + + grouping BM-ADDR { + description + "Union to store the different addresses for + different address types"; + leaf af { + type Bm-af-id; + description + "AF"; + } + leaf ipv4 { + when "../af = 'bm-af-id-ipv4'" { + description + "../AF = 'BM_AF_ID_IPV4'"; + } + type Bm-in4-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../af = 'bm-af-id-ipv6'" { + description + "../AF = 'BM_AF_ID_IPV6'"; + } + type Bm-in6-addr; + description + "IPv6 address type"; + } + } + + grouping BM-BUNDLE-BFD-DATA-TYPE { + description + "BFD information of the bundle"; + container destination-address { + description + "Configured destination address for BFD session"; + uses BM-ADDR; + } + leaf bundle-status { + type Bmd-bfd-bdl-state; + description + "Status of BFD on the bundle"; + } + leaf start-timer { + type uint32; + description + "Time to wait on session start before declaring + DOWN"; + } + leaf nbr-unconfig-timer { + type uint32; + description + "Time to wait on session NBR_UNCONFIG before + declaring DOWN"; + } + leaf pref-multiplier { + type uint16; + description + "Preferred multiplier for the BFD session"; + } + leaf pref-min-interval { + type uint32; + description + "Preferred minimum interval for the BFD session + (ms)"; + } + leaf pref-echo-min-interval { + type uint32; + description + "Preferred echo minimum interval for the BFD + session (ms)"; + } + leaf fast-detect { + type boolean; + description + "Flag indicating if BFD is enabled (1 = enabled; + 0 = not enabled)"; + } + leaf mode-info { + type uint32; + description + "Standard used for per-member BFD"; + } + } + + grouping BM-MAC-ADDR-ST { + description + "Data on MAC address allocation"; + leaf address { + type yang:mac-address; + description + "MAC address"; + } + } + + grouping BM-BUNDLE-DATA { + description + "Data for a bundle interface"; + container mac-address { + description + "MAC address of this member"; + uses BM-MAC-ADDR-ST; + } + leaf bundle-interface-name { + type xr:Interface-name; + description + "Name of the Bundle Interface"; + } + leaf available-bandwidth { + type uint64; + units "kbit/s"; + description + "Bandwidth available to the bundle interface + (kbps)"; + } + leaf effective-bandwidth { + type uint64; + units "kbit/s"; + description + "Effective bandwidth on the bundle interface + (kbps)"; + } + leaf configured-bandwidth { + type uint64; + units "kbit/s"; + description + "Bandwidth configured on the bundle interface + (kbps)"; + } + leaf minimum-active-links { + type uint8; + description + "Minimum number of active links for bundle to go + up"; + } + leaf maximum-active-links { + type uint8; + description + "Maximum number of active links in the bundle"; + } + leaf maximum-active-links-source { + type Bm-which-system; + description + "Source of maximum active links value"; + } + leaf minimum-bandwidth { + type uint64; + units "kbit/s"; + description + "Minimum bundle bandwidth for bundle to go up + (kbps)"; + } + leaf primary-member { + type xr:Interface-name; + description + "Primary bundle member (no longer applicable)"; + } + leaf bundle-status { + type Bm-bdl-state; + description + "The state of the bundle"; + } + leaf active-member-count { + type uint16; + description + "The number of active local members on the bundle"; + } + leaf standby-member-count { + type uint16; + description + "The number of standby local members on the + bundle"; + } + leaf configured-member-count { + type uint16; + description + "The number of configured local members on the + bundle"; + } + leaf mac-source { + type Bm-bdl-mac-source; + description + "The source of the MAC Address"; + } + leaf mac-source-member { + type xr:Interface-name; + description + "The name of the member that supplied the MAC + address"; + } + leaf inter-chassis { + type boolean; + description + "Indicates if this bundle is operating as an + inter-chassis link (1 = I-C link, 0 = normal)"; + } + leaf is-active { + type boolean; + description + "Indicates the active/standby redundancy state of + the device for the bundle"; + } + leaf lacp-status { + type Bm-feature-status; + description + "The status of the LACP feature on the bundle"; + } + leaf mlacp-status { + type Bm-feature-status; + description + "The status of the mLACP feature on the bundle"; + } + leaf ipv4bfd-status { + type Bm-feature-status; + description + "The status of the BFD (IPv4) feature on the + bundle"; + } + leaf link-order-status { + type Bm-feature-status; + description + "The status of the link order signaling feature + on the bundle"; + } + leaf ipv6bfd-status { + type Bm-feature-status; + description + "The status of the BFD (IPv6) feature on the + bundle"; + } + leaf load-balance-hash-type { + type string; + description + "The type of hash to use for load balancing"; + } + leaf load-balance-locality-threshold { + type uint16; + description + "The number of links required per rack for + localized load balancing"; + } + leaf suppression-timer { + type uint16; + description + "Timer for suppressing bundle state flaps"; + } + leaf wait-while-timer { + type uint16; + description + "The wait while time used for member ports"; + } + leaf collector-max-delay { + type uint16; + units "microsecond"; + description + "The maximum delay (in tens of microseconds) that + the destination system can introduce between + receiving a frame from a port and either + delivering it to the MAC Client or discarding it"; + } + leaf cisco-extensions { + type boolean; + description + "The status of the Cisco Extensions feature (1 = + enabled, 0 = not enabled)"; + } + leaf lacp-nonrevertive { + type boolean; + description + "The status of the LACP nonrevertive feature (1 = + enable, 0 = not enabled)"; + } + leaf iccp-group-id { + type uint32; + description + "ICCP Group that the bundle is configured to"; + } + leaf active-foreign-member-count { + type uint16; + description + "The number of active foreign members on the + bundle"; + } + leaf configured-foreign-member-count { + type uint16; + description + "The number of configured local members on the + bundle"; + } + leaf switchover-type { + type Bmd-mlacp-switchover; + description + "How a switchover of the bundle from this device + will occur"; + } + leaf maximize-threshold-value-links { + type uint32; + description + "Attempt to maximize the bundle if links are + below this value"; + } + leaf maximize-threshold-value-band-width { + type uint64; + description + "Attempt to maximize the bundle if bandwidth is + below this value"; + } + leaf mlacp-mode { + type Bundle-mlacp-mode; + description + "Indicates the mode of the device for the bundle"; + } + leaf recovery-delay { + type uint16; + units "second"; + description + "Number of seconds to wait before becoming active + after recovering from a failure"; + } + leaf singleton { + type boolean; + description + "Is the ICCP group of the bundle in singleton + mode (1 = singleton; 0 = not singleton)"; + } + list bfd-config { + description + "Configuration values for BFD on bundle members"; + uses BM-BUNDLE-BFD-DATA-TYPE; + } + } + + grouping LACP-BUNDLE-DATA { + description + "Data for a LACP-enabled bundle interface"; + container actor-bundle-data { + description + "Basic bundle information"; + uses BM-BUNDLE-DATA; + } + container bundle-system-id { + description + "System ID for the bundle"; + uses BM-SYSTEM-ID-TYPE; + } + leaf actor-operational-key { + type uint16; + description + "Operational key of the interface"; + } + leaf partner-system-priority { + type uint16; + description + "Priority of the partner system"; + } + leaf partner-system-mac-address { + type yang:mac-address; + description + "MAC Address used to identify the partner system"; + } + leaf partner-operational-key { + type uint16; + description + "Operational key of the partner"; + } + leaf applied-lacp-mode { + type Bmd-lacp-mode; + description + "Applied LACP Mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper.yang new file mode 100644 index 000000000..0947deb20 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-bundlemgr-oper.yang @@ -0,0 +1,1201 @@ +module Cisco-IOS-XR-bundlemgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-bundlemgr-oper"; + prefix bundlemgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-bundlemgr-oper-sub2 { + revision-date 2022-09-05; + } + include Cisco-IOS-XR-bundlemgr-oper-sub1 { + revision-date 2022-09-05; + } + + 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 bundlemgr package operational data. + + This module contains definitions + for the following management objects: + lacp-bundles: LACP bundle data + bundle-information: Bundle information + lacp-data: LACP data + bundles: Bundle operational data + lacp-bundle-members: LACP Bundle Member operational data + bundles-adjacency: Bundle operational data from the adjacency + processes + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-05 { + description + "Support added for new member state reason. + 2022-07-29 + Support added for forwarding-viable in member state reason. + 2022-02-16 + Support added for lacp timeout transitions and last lacp timeout leaves."; + semver:module-version "4.0.0"; + } + revision 2020-10-01 { + description + "64 bit bandwidth support"; + semver:module-version "3.0.0"; + } + revision 2019-05-30 { + description + "64 bit bandwidth changes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-18 { + description + "Added a new leaf"; + } + revision 2018-07-25 { + description + "Added a new leaf"; + } + revision 2018-04-30 { + description + "Description updated."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-22 { + description + "Description updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lacp-bundles { + config false; + description + "LACP bundle data"; + container bundles { + description + "LACP bundle data"; + list bundle { + key "bundle-interface"; + description + "LACP Bundle interface"; + container data { + description + "Data for each Bundle"; + uses LACP-BUNDLE-DATA; + } + container members { + description + "LACP Member interface"; + list member { + key "member-interface"; + description + "Member information"; + leaf member-interface { + type xr:Interface-name; + description + "Member interface"; + } + uses BM-MEMBER-DATA; + } + } + leaf bundle-interface { + type xr:Interface-name; + description + "LACP Bundle interface"; + } + } + } + } + container bundle-information { + config false; + description + "Bundle information"; + container bfd-counters { + description + "BFD counters information for bundles and members"; + container bfd-counters-bundles { + description + "Bundle interfaces with BFD counters information"; + list bfd-counters-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container bfd-counters-bundle-descendant { + description + "Data for this item and all its members"; + uses BMD-BFD-COUNTER-BAG-MULTIPLE; + } + container bfd-counters-bundle-children-members { + description + "Children of bundle with BFD counters + information"; + list bfd-counters-bundle-children-member { + key "member-interface"; + description + "Bundle member item with BFD counters + information"; + leaf member-interface { + type string; + description + "Member interface"; + } + uses BMD-BFD-COUNTER-BAG; + } + } + container bfd-counters-bundle-item { + description + "Data for this item"; + uses BM-NAME-BAG; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container bfd-counters-members { + description + "Member interfaces with BFD counters information"; + list bfd-counters-member { + key "member-interface"; + description + "Member interface"; + container bfd-counters-member-item { + description + "Data for this item"; + uses BMD-BFD-COUNTER-BAG; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + } + container scheduled-actions { + description + "Scheduled actions on a bundle"; + container scheduled-actions-bundles { + description + "Bundles with actions scheduled"; + list scheduled-actions-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container scheduled-actions-bundle-item { + description + "Data for this item"; + uses BMD-SCH-ACTION-BAG; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + } + container bundle { + description + "Generic information for bundles and members"; + container bundle-bundles { + description + "Bundle interfaces with common bundle + information"; + list bundle-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container bundle-bundle-descendant { + description + "Data for this item and all its members"; + uses BM-BUNDLE-COMBINED-DATA; + } + container bundle-bundle-children-members { + description + "Children of bundle with common bundle + information"; + list bundle-bundle-children-member { + key "member-interface"; + description + "Bundle member item with common bundle + information"; + leaf member-interface { + type string; + description + "Member interface"; + } + uses BM-MEMBER-DATA; + } + } + container bundle-bundle-item { + description + "Data for this item"; + uses BM-BUNDLE-DATA; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container bundle-members { + description + "Member interfaces with common bundle + information"; + list bundle-member { + key "member-interface"; + description + "Member interface"; + container bundle-member-ancestor { + description + "Data for this item and its parent bundle"; + uses BM-BUNDLE-COMBINED-DATA; + } + container bundle-member-item { + description + "Data for this item"; + uses BM-MEMBER-DATA; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + } + container events-rg { + description + "Bundle ICCP events information for bundles and + members"; + container events-rg-members { + description + "Bundle Member interfaces with ICCP events + information"; + list events-rg-member { + key "member-interface"; + description + "Member interface"; + container events-rg-member-ancestor { + description + "Data for this item and its parent bundle"; + uses BMD-EVENT-BAG; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + container events-rg-iccp-groups { + description + "ICCP events for all ICCP Groups"; + list events-rg-iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container events-rg-bundle-item-iccp-group { + description + "Data for this item"; + uses BMD-EVENT-BAG; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + container events-rg-bundles { + description + "Bundle interfaces with ICCP events information"; + list events-rg-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container events-rg-bundle-ancestor { + description + "Data for this item and its parent bundle"; + uses BMD-EVENT-BAG; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + } + container lacp { + description + "LACP information for bundles and members"; + container lacp-bundles { + description + "Bundle interfaces with LACP information"; + list lacp-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container lacp-bundle-item { + description + "Data for this item"; + uses LACP-BUNDLE-DATA; + } + container lacp-bundle-descendant { + description + "Data for this item and all its members"; + uses LACP-COMBINED-DATA; + } + container lacp-bundle-children-members { + description + "Children of bundle with LACP information"; + list lacp-bundle-children-member { + key "member-interface"; + description + "Bundle member item with LACP information"; + leaf member-interface { + type string; + description + "Member interface"; + } + uses LACP-MBR-DATA; + } + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container lacp-members { + description + "Member interfaces with LACP information"; + list lacp-member { + key "member-interface"; + description + "Member interface"; + container lacp-member-ancestor { + description + "Data for this item and its parent bundle"; + uses LACP-COMBINED-DATA; + } + container lacp-member-item { + description + "Data for this item"; + uses LACP-MBR-DATA; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + } + container mlacp-bundle-counters { + description + "Bundle specific counters of mLACP events"; + container iccp-groups { + description + "ICCP Groups with counters of their bundle's + mLACP events"; + list iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container iccp-group-item { + description + "Data for this item"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + container bundles { + description + "Bundle interfaces with counters of mLACP events"; + list bundle { + key "bundle-interface"; + description + "Bundle interface"; + container bundle-item { + description + "Data for this item"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG-MULTIPLE; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container nodes { + description + "Devices with counters of their bundle's mLACP + events"; + list node { + key "node"; + description + "Node ID"; + container node-item { + description + "Data for this item"; + uses BMD-BAG-BDL-INFO-MLACP-COUNTERS-RG; + } + leaf node { + type string; + description + "For a local device the Node ID e.g. + '0_0_CPU0', for a peer device the LDP ID + followed by the ICCP Group ID e.g. '5.4.3.2 + ,4'"; + } + } + } + } + container protect { + description + "Information for bundles and members that are in + the protect database"; + container protect-bundles { + description + "Bundle interfaces with information in the + protect database"; + list protect-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container protect-bundle-item { + description + "Data for this item"; + uses BMD-BAG-PROT-BDL-INFO; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + } + container mlacp-brief { + description + "mLACP Information for Interchassis Groups and + bundles"; + container mlacp-bundle-briefs { + description + "Bundle interfaces with brief mLACP information"; + list mlacp-bundle-brief { + key "bundle-interface"; + description + "Bundle interface"; + container mlacp-bundle-item-brief { + description + "Data for this item"; + uses BMD-BAG-MLACP-DATA-MULTIPLE; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container mlacp-brief-iccp-groups { + description + "ICCP Groups with brief mLACP information"; + list mlacp-brief-iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container mlacp-brief-iccp-group-item { + description + "Data for this item"; + uses BMD-BAG-MLACP-DATA; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + } + container mlacp { + description + "mLACP Information for Interchassis Groups and + bundles"; + container mlacp-bundles { + description + "Bundle interfaces with mLACP information"; + list mlacp-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container mlacp-bundle-item { + description + "Data for this item"; + uses BMD-BAG-MLACP-DATA-MULTIPLE; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container mlacp-iccp-groups { + description + "ICCP Groups with mLACP information"; + list mlacp-iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container mlacp-iccp-group-item { + description + "Data for this item"; + uses BMD-BAG-MLACP-DATA; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + } + container mac-allocation { + description + "Information about allocated MAC addresses that + are not in use"; + container mac-allocation-global { + description + "All MAC addresses that are allocated but + currently not in use"; + container mac-allocation-global-item { + description + "Data for this item"; + uses BM-MAC-ALLOC; + } + } + } + container events { + description + "Events information for bundles and members"; + container events-members { + description + "Member interfaces with events information"; + list events-member { + key "member-interface"; + description + "Member interface"; + container events-member-item { + description + "Data for this item"; + uses BMD-EVENT-BAG; + } + container events-member-ancestor { + description + "Data for this item and its parent bundle"; + uses BMD-EVENT-BAG; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + container events-bundles { + description + "Bundle interfaces with events information"; + list events-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container events-bundle-ancestor { + description + "Data for this item and its parent bundle"; + uses BMD-EVENT-BAG; + } + container events-bundle-item { + description + "Data for this item"; + uses BMD-EVENT-BAG; + } + container events-bundle-descendant { + description + "Data for this item and all its members"; + uses BMD-EVENT-BAG-MULTIPLE; + } + container events-bundle-children-members { + description + "Children of bundle with events information"; + list events-bundle-children-member { + key "member-interface"; + description + "Bundle member item with events information"; + leaf member-interface { + type string; + description + "Member interface"; + } + uses BMD-EVENT-BAG; + } + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + } + container events-bdl { + description + "Bundle events information for bundles and + members"; + container events-bdl-members { + description + "Member interfaces with bundle events + information"; + list events-bdl-member { + key "member-interface"; + description + "Member interface"; + container events-bdl-member-ancestor { + description + "Data for this item and its parent bundle"; + uses BMD-EVENT-BAG; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + container events-bdl-bundles { + description + "Bundle interfaces with bundle events + information"; + list events-bdl-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container events-bdl-bundle-item { + description + "Data for this item"; + uses BMD-EVENT-BAG; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container events-bdl-iccp-groups { + description + "Bundle events for all ICCP Groups"; + list events-bdl-iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container events-bdl-bundle-descendant-iccp-group { + description + "Data for this item and all its members"; + uses BMD-EVENT-BAG-MULTIPLE; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + } + container bundle-briefs { + description + "Bundle interfaces with common bundle information"; + list bundle-brief { + key "bundle-interface"; + description + "Bundle interface"; + container bundle-brief-item { + description + "Data for this item"; + uses BM-BUNDLE-DATA; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container events-mbr { + description + "Bundle member events information for bundles and + members"; + container events-mbr-bundles { + description + "Bundle interfaces with member events + information"; + list events-mbr-bundle { + key "bundle-interface"; + description + "Bundle interface"; + container events-mbr-bundle-children-members { + description + "Children of bundle with member events + information"; + list events-mbr-bundle-children-member { + key "member-interface"; + description + "Bundle member item with member events + information"; + leaf member-interface { + type string; + description + "Member interface"; + } + uses BMD-EVENT-BAG; + } + } + container events-mbr-bundle-descendant { + description + "Data for this item and all its members"; + uses BMD-EVENT-BAG-MULTIPLE; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container events-mbr-members { + description + "Member interfaces with bundle member events + information"; + list events-mbr-member { + key "member-interface"; + description + "Member interface"; + container events-mbr-member-item { + description + "Data for this item"; + uses BMD-EVENT-BAG; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + container events-mbr-iccp-groups { + description + "Member events for all ICCP Groups"; + list events-mbr-iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container events-mbr-bundle-children-member-iccp-groups { + description + "Children of bundle with member events + information"; + list events-mbr-bundle-children-member-iccp-group { + key "member-interface"; + description + "Bundle member item with ICCP events + information"; + leaf member-interface { + type string; + description + "Member interface"; + } + uses BMD-EVENT-BAG; + } + } + container events-mbr-bundle-descendant-iccp-group { + description + "Data for this item and all its members"; + uses BMD-EVENT-BAG-MULTIPLE; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + } + container mlacp-iccp-group-counters { + description + "ICCP Group specific counters of mLACP events"; + container iccp-groups { + description + "ICCP Groups with counters of mLACP events"; + list iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container iccp-group-ancestor-bundle { + description + "Data for this item and its parent RG"; + uses BMD-BAG-RG-INFO-MLACP-COUNTERS-RG; + } + container iccp-group-ancestor-member { + description + "Data for this item and its parent RG"; + uses BMD-BAG-RG-INFO-MLACP-COUNTERS-RG; + } + container iccp-group-ancestor-node { + description + "Data for this item and its parent RG"; + uses BMD-BAG-RG-INFO-MLACP-COUNTERS-RG; + } + container iccp-group-item { + description + "Data for this item"; + uses BMD-BAG-RG-INFO-MLACP-COUNTERS-RG; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + } + container system-id { + description + "System Identifiers for the local system and all + ICCP Groups"; + container system-id-global { + description + "System Identifier for the local system"; + container system-id-global-item { + description + "Data for this item"; + uses LACP-SYSTEM-ID; + } + } + container system-id-iccp-groups { + description + "System Identifiers for all ICCP Groups"; + list system-id-iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container system-id-iccp-group-item { + description + "Data for this item"; + uses LACP-SYSTEM-ID; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + } + container mlacp-member-counters { + description + "Member specific counters of mLACP events"; + container iccp-groups { + description + "ICCP Groups with counters of their member's + mLACP events"; + list iccp-group { + key "iccp-group"; + description + "ICCP Group ID"; + container iccp-group-item { + description + "Data for this item and all its members"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-RG; + } + leaf iccp-group { + type uint32 { + range "1..4294967295"; + } + description + "ICCP Group ID"; + } + } + } + container members { + description + "Member interfaces with counters of mLACP events"; + list member { + key "member-interface"; + description + "Member interface"; + container member-item { + description + "Data for this item"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-RG; + } + leaf member-interface { + type string; + description + "Member interface"; + } + } + } + container bundles { + description + "Bundle interfaces with counters of their + member's mLACP events"; + list bundle { + key "bundle-interface"; + description + "Bundle interface"; + container bundle-item { + description + "Data for this item"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-BDL; + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + container nodes { + description + "Devices with counters of their member's mLACP + events"; + list node { + key "node"; + description + "Node ID"; + container node-item { + description + "Data for this item"; + uses BMD-BAG-MBR-INFO-MLACP-COUNTERS-RG; + } + leaf node { + type string; + description + "For a local device the Node ID e.g. + '0_0_CPU0', for a peer device the LDP ID + followed by the ICCP Group ID e.g. '5.4.3.2 + ,4'"; + } + } + } + } + } + container lacp-data { + config false; + description + "LACP data"; + container global { + description + "Global LACP data"; + container system-id { + description + "LACP System ID"; + uses LACP-SYSTEM-ID; + } + } + } + container bundles { + config false; + description + "Bundle operational data"; + container bundles { + description + "Per bundle operational data"; + list bundle { + key "bundle-interface"; + description + "Bundle interface"; + container applied-lacp-mode { + description + "Applied LACP Mode for each Bundle"; + uses BM-BUNDLE-APPLIED-LACP-MODE; + } + container data { + description + "Data for each Bundle"; + uses BM-BUNDLE-DATA; + } + container members { + description + "Member interface"; + list member { + key "member-interface"; + description + "Member information"; + leaf member-interface { + type xr:Interface-name; + description + "Member interface"; + } + uses BM-MEMBER-DATA; + } + } + leaf bundle-interface { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + } + container lacp-bundle-members { + config false; + description + "LACP Bundle Member operational data"; + container nodes { + description + "Table of devices with their LACP bundle member + interfaces"; + list node { + key "node"; + description + "Node ID"; + container counters { + description + "Link counters for LACP bundle members per node"; + uses LACP-DROPS; + } + leaf node { + type string; + description + "For a local device the Node ID e.g. '0_0_CPU0' + , for a peer device the LDP ID followed by the + ICCP Group ID e.g. '5.4.3.2,4'"; + } + } + } + container members { + description + "Table of LACP bundle member interfaces"; + list member { + key "member-interface"; + description + "LACP bundle member interface data"; + container data { + description + "Link data for LACP bundle members"; + uses LACP-LINK-DATA; + } + container counters { + description + "Link counters for LACP bundle members"; + uses LACP-COUNTERS; + } + leaf member-interface { + type xr:Interface-name; + description + "Member interface"; + } + } + } + } + container bundles-adjacency { + config false; + description + "Bundle operational data from the adjacency + processes"; + container nodes { + description + "Per bundle operational data"; + list node { + key "node-name"; + description + "Location"; + container brief { + description + "Brief load-balance information for the node"; + uses BMA-BRIEF-DATA; + } + container bundles { + description + "Per bundle operational data"; + list bundle { + key "bundle-name"; + description + "Bundle information"; + container bundle-info { + description + "Data for each Bundle"; + uses BMA-BUNDLE-DATA; + } + leaf bundle-name { + type xr:Interface-name; + description + "Bundle interface"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-call-home-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-call-home-cfg.yang new file mode 100644 index 000000000..80ecd9105 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-call-home-cfg.yang @@ -0,0 +1,730 @@ +module Cisco-IOS-XR-call-home-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-call-home-cfg"; + prefix call-home-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 call-home package configuration. + + This module contains definitions + for the following management objects: + call-home: Set CallHome parameters + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-07-24 { + description + "Add resolution for YANG enter-tuple issue."; + } + revision 2018-06-21 { + description + "Remove container smart-licensing."; + } + revision 2017-03-13 { + description + "Initial version."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Call-home-mail-send-interval { + type enumeration { + enum "daily" { + value 0; + description + "Daily call-home message"; + } + enum "weekly" { + value 1; + description + "Weekly call-home message"; + } + enum "monthly" { + value 2; + description + "Monthly call-home message"; + } + } + description + "Call home mail send interval"; + } + + typedef Call-home-day-of-week { + type enumeration { + enum "sunday" { + value 0; + description + "Sunday"; + } + enum "monday" { + value 1; + description + "Monday"; + } + enum "tuesday" { + value 2; + description + "Tuesday"; + } + enum "wednesday" { + value 3; + description + "Wednesday"; + } + enum "thursday" { + value 4; + description + "Thursday"; + } + enum "friday" { + value 5; + description + "Friday"; + } + enum "saturday" { + value 6; + description + "Saturday"; + } + } + description + "Call home day of week"; + } + + typedef Call-home-event-severity { + type enumeration { + enum "debugging" { + value 0; + description + "Debugging event"; + } + enum "normal" { + value 1; + description + "Normal event"; + } + enum "notification" { + value 2; + description + "Notification event"; + } + enum "warning" { + value 3; + description + "Warning event"; + } + enum "minor" { + value 4; + description + "Minor event"; + } + enum "major" { + value 5; + description + "Major event"; + } + enum "critical" { + value 6; + description + "Critical event"; + } + enum "fatal" { + value 7; + description + "Fatal event"; + } + enum "disaster" { + value 8; + description + "Disaster event"; + } + enum "catastrophic" { + value 9; + description + "Catastrophic event"; + } + } + description + "Call home event severity"; + } + + typedef Snapshot-interval { + type enumeration { + enum "daily" { + value 0; + description + "Daily call-home message"; + } + enum "weekly" { + value 1; + description + "Weekly call-home message"; + } + enum "monthly" { + value 2; + description + "Monthly call-home message"; + } + } + description + "Snapshot interval"; + } + + typedef Call-home-trans-method { + type enumeration { + enum "email" { + value 1; + description + "To add email address to lthis profile"; + } + enum "http" { + value 2; + description + "To add destination address(1-200) characters"; + } + } + description + "Call home trans method"; + } + + typedef Data-privacy-level { + type enumeration { + enum "normal" { + value 0; + description + "Normal"; + } + enum "high" { + value 1; + description + "High"; + } + enum "host-name" { + value 2; + description + "HostName"; + } + } + description + "Data privacy level"; + } + + container call-home { + description + "Set CallHome parameters"; + container mail-servers { + description + "List of call-home mail_server"; + list mail-server { + key "mail-serv-address"; + description + "Email server"; + leaf priority { + type uint32 { + range "1..100"; + } + description + "Mail server with lower # will be used first"; + } + leaf mail-serv-address { + type string; + description + "Email server"; + } + } + } + container syslog-throttling { + description + "Enable or disable call-home syslog message + throttling"; + leaf active { + type boolean; + description + "Active syslog throttling"; + } + } + container http-proxy { + description + "http proxy server address and port"; + leaf server-address { + type string; + description + "http proxy server address"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "http proxy server's port"; + } + } + container profiles { + description + "List of profiles"; + list profile { + key "profile-name"; + description + "A specific profile"; + container report-type { + description + "Choose what data to report"; + container reporting-callhome-data { + description + "Report smart call-home data"; + leaf enable { + type boolean; + description + "Enable report smart call-home data"; + } + } + container reporting-licensing-data { + description + "Report smart licensing data"; + leaf enable { + type boolean; + description + "Enable report smart licensing data"; + } + } + } + container methods { + description + "Transport method (http or email)"; + list method { + key "method"; + description + "Transport method"; + leaf enable { + type boolean; + description + "Enable this transport method"; + } + leaf method { + type Call-home-trans-method; + description + "Transport Method"; + } + } + } + container addresses { + description + "List of destination address"; + list address { + key "method destination-addr"; + description + "A specific address"; + leaf enable { + type boolean; + description + "Set the address"; + } + leaf method { + type Call-home-trans-method; + description + "Transpotation Method"; + } + leaf destination-addr { + type string { + length "1..200"; + } + description + "Destination address (1-200) characters"; + } + } + } + container subscribe-alert-group { + description + "Subscribe to alert-group"; + container environment { + description + "environmental info"; + leaf severity { + type Call-home-event-severity; + description + "Severity"; + } + } + container configuration { + description + "configuration info"; + container periodic { + description + "Periodic call-home message"; + leaf interval { + type Call-home-mail-send-interval; + description + "none"; + } + leaf day { + type uint32 { + range "0..31"; + } + description + "Day"; + } + leaf weekday { + type Call-home-day-of-week; + description + "Day of week"; + } + leaf hour { + type uint32 { + range "0..23"; + } + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59"; + } + description + "Minute"; + } + } + leaf subscribe { + type empty; + description + "Subscribe the alert-group"; + } + } + container snapshot { + description + "snapshot info"; + container periodic { + description + "Periodic call-home message"; + leaf interval { + type Snapshot-interval; + description + "none"; + } + leaf day { + type uint32 { + range "0..31"; + } + description + "Day of month"; + } + leaf weekday { + type Call-home-day-of-week; + description + "Day of week"; + } + leaf hour { + type uint32 { + range "0..23"; + } + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59"; + } + description + "Minute"; + } + } + } + container inventory { + description + "inventory info"; + container periodic { + description + "Periodic call-home message"; + leaf interval { + type Call-home-mail-send-interval; + description + "none"; + } + leaf day { + type uint32 { + range "0..31"; + } + description + "Day of month"; + } + leaf weekday { + type Call-home-day-of-week; + description + "Day of week"; + } + leaf hour { + type uint32 { + range "0..23"; + } + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59"; + } + description + "Minute"; + } + } + leaf subscribe { + type empty; + description + "Subscribe the alert-group"; + } + } + container crash { + description + "Crash info"; + leaf subscribe { + type empty; + description + "Subscribe crash group"; + } + } + container syslogs { + description + "syslog info"; + list syslog { + key "syslog-pattern"; + description + "Syslog message pattern to be matched"; + leaf severity { + type Call-home-event-severity; + description + "Severity"; + } + leaf syslog-pattern { + type string { + length "1..80"; + } + description + "Syslog message pattern to be matched"; + } + } + } + } + leaf message-format { + type string; + description + "none"; + } + leaf anonymous { + type boolean; + description + "Enable call-home anonymous reporting only"; + } + leaf message-size-limit { + type uint32 { + range "50..3145728"; + } + description + "To specify message size limit for this profile"; + } + leaf active { + type empty; + description + "Activate the current profile"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + } + } + container alert-groups { + description + "List of alert-group"; + list alert-group { + key "alert-group-name"; + description + "A specific alert-group"; + leaf enable { + type boolean; + description + "Enable the alert-group"; + } + leaf disable { + type boolean; + description + "Disable the alert-group"; + } + leaf alert-group-name { + type xr:Cisco-ios-xr-string; + description + "none"; + } + } + } + container data-privacies { + description + "Set call-home data-privacy"; + list data-privacy { + key "host-name"; + description + "level hostname"; + leaf level { + type Data-privacy-level; + description + "Set call-home data-privacy level"; + } + leaf host-name { + type string; + description + "Data privacy type (hostname or level)"; + } + } + } + container alert-group-config { + description + "alert-group config"; + container snapshot-commands { + description + "snapshot for adding CLI command"; + list snapshot-command { + key "command"; + description + "A specific CLI cmd for snapshot"; + leaf active { + type empty; + description + "enable snapshot cmd"; + } + leaf command { + type string { + length "1..127"; + } + description + "new added command"; + } + } + } + } + container authorization { + description + "Config aaa authorization, default username is + callhome"; + leaf username { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Username for authorization. default is callhome"; + } + leaf active { + type empty; + description + "Enable call-home aaa-authorization"; + } + } + leaf customer-id { + type string { + length "1..64"; + } + description + "Customer identification for Cisco Smart Call + Home"; + } + leaf phone-number { + type string { + length "1..17"; + } + description + "Phone number of the contact person."; + } + leaf contact-smart-licensing { + type boolean; + description + "System Contact is Smart Licensing"; + } + leaf contact-email-address { + type string { + length "1..194"; + } + description + "Contact person's email address"; + } + leaf rate-limit { + type uint32 { + range "1..5"; + } + description + "Call-home event trigger rate-limit threshold per + minute."; + } + leaf site-id { + type string { + length "1..200"; + } + description + "Site identification for Cisco Smart Call Home"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Vrf routing/forwarding instance name"; + } + leaf street-address { + type string { + length "1..200"; + } + description + "Street address, city, state, and zip code."; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface name to send call-home messages"; + } + leaf contract-id { + type string { + length "1..64"; + } + description + "Contract identification for Cisco Smart Call + Home"; + } + leaf reply-to { + type string; + description + "Call home msg's reply-to email address"; + } + leaf from { + type string; + description + "Call home msg's from email address"; + } + leaf active { + type empty; + description + "Enable call-home service"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-cfg.yang new file mode 100644 index 000000000..b0dffb2f8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-cfg.yang @@ -0,0 +1,104 @@ +module Cisco-IOS-XR-cdp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cdp-cfg"; + prefix cdp-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 cdp package configuration. + + This module contains definitions + for the following management objects: + cdp: Global CDP configuration data + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-08-16 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container cdp { + description + "Interface specific CDP configuration"; + leaf enable { + type empty; + description + "Enable or disable CDP on an interface"; + } + } + } + container cdp { + description + "Global CDP configuration data"; + leaf timer { + type uint32 { + range "5..254"; + } + default "60"; + description + "Specify the rate at which CDP packets are sent"; + } + leaf advertise-v1-only { + type empty; + description + "Enable CDPv1 only advertisements"; + } + leaf enable { + type boolean; + default "true"; + description + "Enable or disable CDP globally"; + } + leaf hold-time { + type uint32 { + range "10..255"; + } + default "180"; + description + "Length of time (in sec) that the receiver must + keep a CDP packet"; + } + leaf log-adjacency { + type empty; + description + "Enable logging of adjacency changes"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper-sub1.yang new file mode 100644 index 000000000..4566df0e6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper-sub1.yang @@ -0,0 +1,350 @@ +submodule Cisco-IOS-XR-cdp-oper-sub1 { + belongs-to Cisco-IOS-XR-cdp-oper { + prefix Cisco-IOS-XR-cdp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR cdp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-01-09 { + description + "Fixing yang usability issues."; + } + revision 2015-07-30 { + description + "Revison descritption string."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Im-state { + type uint32; + description + "Im state"; + } + + typedef Cdp-duplex { + type enumeration { + enum "cdp-dplx-none" { + value 0; + description + "cdp dplx none"; + } + enum "cdp-dplx-half" { + value 1; + description + "cdp dplx half"; + } + enum "cdp-dplx-full" { + value 2; + description + "cdp dplx full"; + } + } + description + "Cdp duplex"; + } + + typedef In6-addr { + type inet:ipv6-address; + description + "In6 addr"; + } + + typedef Cdp-l3-addr-protocol { + type enumeration { + enum "ipv4" { + description + "Address type is v4"; + } + enum "ipv6" { + description + "Address type is v6"; + } + } + description + "Cdp l3 addr protocol"; + } + + grouping CDP-INTERFACE { + description + "Information about an interface that CDP is + running on"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface"; + } + leaf basecaps-state { + type Im-state; + description + "Interface basecaps state"; + } + leaf cdp-protocol-state { + type Im-state; + description + "Interface CDP protocol state"; + } + leaf interface-encaps { + type string; + description + "Interface encapsulation"; + } + } + + grouping CDP-STATS { + description + "CDP statistics"; + leaf received-packets { + type uint32; + description + "CDP packets received"; + } + leaf received-packets-v1 { + type uint32; + description + "version1 CDP packets received"; + } + leaf received-packets-v2 { + type uint32; + description + "version2 CDP packets received"; + } + leaf transmitted-packets { + type uint32; + description + "CDP packets transmitted"; + } + leaf transmitted-packets-v1 { + type uint32; + description + "Version1 CDP packets transmitted"; + } + leaf transmitted-packets-v2 { + type uint32; + description + "Version2 CDP packets transmitted"; + } + leaf header-errors { + type uint32; + description + "Header syntax errors"; + } + leaf checksum-errors { + type uint32; + description + "crc errors in packets"; + } + leaf encapsulation-errors { + type uint32; + description + "Transmission errors"; + } + leaf bad-packet-errors { + type uint32; + description + "Bad packet received and dropped"; + } + leaf out-of-memory-errors { + type uint32; + description + "Out-of-memory conditions"; + } + leaf truncated-packet-errors { + type uint32; + description + "Truncated messages"; + } + leaf header-version-errors { + type uint32; + description + "Can't handle receive version"; + } + leaf open-file-errors { + type uint32; + description + "Cannot open file"; + } + } + + grouping CDP-PROTOCOL-HELLO-ENTRY { + description + "Protocol entry for hello msgexchanged by CDP"; + list cdp-prot-hello-entry { + description + "Next protocol hello entry in list"; + leaf hello-message { + type yang:hex-string; + description + "Protocol Hello msg"; + } + } + } + + grouping CDP-L3-ADDR { + description + "Information on L3 address discovered by CDP"; + leaf address-type { + type Cdp-l3-addr-protocol; + description + "AddressType"; + } + leaf ipv4-address { + when "../address-type = 'ipv4'" { + description + "../AddressType = 'IPv4'"; + } + type inet:ipv4-address; + description + "Address type is v4"; + } + leaf ipv6-address { + when "../address-type = 'ipv6'" { + description + "../AddressType = 'IPv6'"; + } + type In6-addr; + description + "Address type is v6"; + } + } + + grouping CDP-ADDRESS-ENTRY { + description + "List of network addresses discovered by CDP"; + list cdp-addr-entry { + description + "Next address entry in list"; + container address { + description + "Network layer address"; + uses CDP-L3-ADDR; + } + } + } + + grouping CDP-NEIGHBOR-ENTRY-DETAILS { + description + "Detailed neighbor info"; + container network-addresses { + description + "List of network addresses "; + uses CDP-ADDRESS-ENTRY; + } + container protocol-hello-list { + description + "List of protocol hello entries"; + uses CDP-PROTOCOL-HELLO-ENTRY; + } + leaf version { + type string; + description + "Version TLV"; + } + leaf vtp-domain { + type string; + description + "VLAN Trunk Protocol domain"; + } + leaf native-vlan { + type uint32; + description + "Native VLAN"; + } + leaf duplex { + type Cdp-duplex; + description + "Duplex setting"; + } + leaf system-name { + type string; + description + "SysName"; + } + } + + grouping CDP-NEIGHBOR { + description + "Information on neighbor discovered"; + list cdp-neighbor { + description + "Next neighbor in the list"; + container detail { + description + "Detailed neighbor info"; + uses CDP-NEIGHBOR-ENTRY-DETAILS; + } + leaf receiving-interface-name { + type xr:Interface-name; + description + "Interface the neighbor entry was received on "; + } + leaf device-id { + type string; + description + "Device identifier"; + } + leaf port-id { + type string; + description + "Outgoing port identifier"; + } + leaf header-version { + type uint8; + description + "Version number"; + } + leaf hold-time { + type uint16; + description + "Remaining hold time"; + } + leaf capabilities { + type string; + description + "Neighbor Capabilities"; + } + leaf platform { + type string; + description + "Platform type"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper.yang new file mode 100644 index 000000000..51e4dc4b9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cdp-oper.yang @@ -0,0 +1,157 @@ +module Cisco-IOS-XR-cdp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cdp-oper"; + prefix cdp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-cdp-oper-sub1 { + revision-date 2019-04-05; + } + + 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 cdp package operational data. + + This module contains definitions + for the following management objects: + cdp: CDP operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-01-09 { + description + "Fixing yang usability issues."; + } + revision 2015-07-30 { + description + "Revison descritption string."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container cdp { + config false; + description + "CDP operational data"; + container nodes { + description + "Per node CDP operational data"; + list node { + key "node-name"; + description + "The CDP operational data for a particular node"; + container neighbors { + description + "The CDP neighbor tables on this node"; + container details { + description + "The detailed CDP neighbor table"; + list detail { + description + "Detailed information about a neighbor + discovered by CDP"; + leaf interface-name { + type xr:Interface-name; + description + "CDP neighbor interface"; + } + leaf device-id { + type string; + description + "The neighboring device identifier"; + } + uses CDP-NEIGHBOR; + } + } + container devices { + description + "The detailed CDP neighbor table"; + list device { + key "device-id"; + description + "Detailed information about a neighbor + discovered by CDP"; + leaf device-id { + type string; + description + "The neighboring device identifier"; + } + uses CDP-NEIGHBOR; + } + } + container summaries { + description + "The CDP neighbor summary table"; + list summary { + description + "Brief information about a neighbor + discovered by CDP"; + leaf interface-name { + type xr:Interface-name; + description + "CDP neighbor interface"; + } + leaf device-id { + type string; + description + "The neighboring device identifier"; + } + uses CDP-NEIGHBOR; + } + } + } + container statistics { + description + "The CDP traffic statistics for this node"; + uses CDP-STATS; + } + container interfaces { + description + "The table of interfaces on which CDP is + running on this node"; + list interface { + key "interface-name"; + description + "Operational data for an interface on which + CDP is running"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses CDP-INTERFACE; + } + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cem-class-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cem-class-cfg.yang new file mode 100644 index 000000000..d325240c4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cem-class-cfg.yang @@ -0,0 +1,137 @@ +module Cisco-IOS-XR-cem-class-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cem-class-cfg"; + prefix cem-class-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 cem-class package configuration. + + This module contains definitions + for the following management objects: + cem: Configure CEM + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-18 { + description + "Replaced default option with best-match option in payload and dejitter command under cem class configuration."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cem-class-dummy-mode { + type enumeration { + enum "last-frame" { + value 0; + description + "Last frame"; + } + enum "user-defined" { + value 1; + description + "User defined"; + } + } + description + "Cem class dummy mode"; + } + + container cem { + description + "Configure CEM"; + container classes { + description + "Configure a CEM class"; + list class { + key "class-name"; + description + "CEM class name"; + container idle { + description + "Configure idle pattern"; + leaf pattern { + type xr:Hex-integer; + description + "Idle pattern from 0x0 to 0xff"; + } + } + container dummy { + description + "Configure bit-pattern for filling in lost or + corrupted frames"; + leaf pattern { + type xr:Hex-integer; + description + "User defined bit pattern from 0x0 to 0xff for + CEM frame"; + } + leaf mode { + type Cem-class-dummy-mode; + description + "Configure mode"; + } + } + container payload-dejitter { + description + "Configure payload size and dejitter buffer + length"; + leaf payload { + type uint32 { + range "0..1472"; + } + must "not(../dejitter)"; + description + "32-1472 is valid range, '0' value indicates + to choose best suitable payload value for the + given dejitter buffer length"; + } + leaf dejitter { + type uint32 { + range "0..500000"; + } + must "not(../payload)"; + description + "1-500000 is valid range, '0' value indicates + to choose best suitable dejitter buffer + length value for the given payload"; + } + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..80"; + } + description + "CEM class name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cemmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cemmib-cfg.yang new file mode 100644 index 000000000..b9e3d8c35 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cemmib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-cemmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cemmib-cfg"; + prefix cemmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 cemmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container cem { + description + "CISCO-CEM-MIB traps configuration"; + leaf enable { + type empty; + description + "Enable SNMP CISCO-CEM-MIB traps"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-cfs-check-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-cfs-check-act.yang new file mode 100644 index 000000000..a7d35c84a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-cfs-check-act.yang @@ -0,0 +1,49 @@ +module Cisco-IOS-XR-cfgmgr-cfs-check-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cfgmgr-cfs-check-act"; + prefix cfgmgr-cfs-check-act; + + 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 action package configuration. + + Copyright (c) 2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-10 { + description + "IOS XR initial revision."; + reference + "RFC VVVV: NETCONF Server and RESTCONF Server Operational + Models"; + semver:module-version "1.0.0"; + } + + rpc cfs-check { + description + "Check the configuration file system"; + input { + leaf check { + type empty; + mandatory true; + description + "Check/Fix Configuration File system"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-clear-inconsistency-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-clear-inconsistency-act.yang new file mode 100644 index 000000000..e73833fd1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-clear-inconsistency-act.yang @@ -0,0 +1,49 @@ +module Cisco-IOS-XR-cfgmgr-clear-inconsistency-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cfgmgr-clear-inconsistency-act"; + prefix cfgmgr-clear-inconsistency-act; + + 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 action package configuration. + + Copyright (c) 2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-10 { + description + "IOS XR initial revision."; + reference + "RFC VVVV: NETCONF Server and RESTCONF Server Operational + Models"; + semver:module-version "1.0.0"; + } + + rpc clear-config-inconsistency { + description + "Clear configuration inconsistency"; + input { + leaf inconsistency { + type empty; + mandatory true; + description + "Configuration inconsistencies"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-rollback-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-rollback-act.yang new file mode 100644 index 000000000..eccc42a51 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cfgmgr-rollback-act.yang @@ -0,0 +1,132 @@ +module Cisco-IOS-XR-cfgmgr-rollback-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cfgmgr-rollback-act"; + prefix rollback-act; + + 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 action package configuration. + + Copyright (c) 2016-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-04-17 { + description + "IOS XR 6.1.1 revision."; + } + + grouping ROLLBACK-ATTRIBUTES { + description + "Rollback Attributes"; + leaf force { + when "../best-effort = 'false'" { + description + "Only when best-effort is false."; + } + type boolean; + default "false"; + description + "Override commit blocks"; + } + leaf best-effort { + when "../force = 'false'" { + description + "Only when force is false."; + } + type boolean; + default "false"; + description + "Rollback via best-effort operation"; + } + leaf label { + type string; + description + "Assign a label to this rollback"; + } + leaf comment { + type string; + description + "Assign a comment to this rollback"; + } + } + + rpc roll-back-configuration-last { + description + "Rollback last commits made"; + input { + leaf count { + type int32 { + range "1..100"; + } + mandatory true; + description + "Number of commits to rollback"; + } + uses ROLLBACK-ATTRIBUTES; + } + } + rpc roll-back-configuration-to { + description + "Rollback up to (and including) a specific commit"; + input { + leaf commit-id { + type string; + mandatory true; + description + "Commit ID"; + } + uses ROLLBACK-ATTRIBUTES; + } + } + rpc roll-back-configuration-to-exclude { + description + "Rollback up to (and excluding) a specific commit"; + input { + leaf commit-id { + type string; + mandatory true; + description + "Commit ID"; + } + uses ROLLBACK-ATTRIBUTES; + } + } + rpc roll-back-configuration { + description + "Rollback a specific commit"; + input { + leaf commit-id { + type string; + mandatory true; + description + "Commit ID"; + } + uses ROLLBACK-ATTRIBUTES; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ciscoapsmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ciscoapsmib-cfg.yang new file mode 100644 index 000000000..1bbd64fc3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ciscoapsmib-cfg.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-ciscoapsmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ciscoapsmib-cfg"; + prefix ciscoapsmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 ciscoapsmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-19 { + description + "Creation of yang module for Cisco-IOS-XR-ciscoapsmib-cfg.yang."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container aps { + description + "CISCO-APS-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable ciscoAPSMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ciscosonetmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ciscosonetmib-cfg.yang new file mode 100644 index 000000000..6593303c7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ciscosonetmib-cfg.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-ciscosonetmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ciscosonetmib-cfg"; + prefix ciscosonetmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 ciscosonetmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-19 { + description + "Creation of yang module for Cisco-IOS-XR-ciscosonetmib-cfg.yang."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container sonet { + description + "CISCO-SONET-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable ciscoSonetMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-clear-counters-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-clear-counters-act.yang new file mode 100644 index 000000000..c473978c7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-clear-counters-act.yang @@ -0,0 +1,54 @@ +module Cisco-IOS-XR-clear-counters-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-clear-counters-act"; + prefix clear-counters-act; + + 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 Controller to clear alarm counters. + + Copyright (c) 2018-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-02-14 { + description + "IOS XR 6.5.1 revision."; + } + + rpc clear-counters { + description + "Execute clear counters operations"; + input { + leaf controller { + type string; + description + "Controller name in R/S/I/P format"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cli-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cli-cfg.yang new file mode 100644 index 000000000..1a85b33de --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cli-cfg.yang @@ -0,0 +1,48 @@ +module Cisco-IOS-XR-cli-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cli-cfg"; + prefix cli-cfg; + + 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 CLI package configuration. + + Copyright (c) 2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-18 { + description + "Initial draft"; + } + + leaf cli { + type string; + description + "A set of CLI config commands. Content matching is not supported for this node."; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cli-diff-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cli-diff-act.yang new file mode 100644 index 000000000..b79455185 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cli-diff-act.yang @@ -0,0 +1,50 @@ +module Cisco-IOS-XR-cli-diff-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cli-diff-act"; + prefix cli-diff-act; + + 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 CLI package configuration. + + Copyright (c) 2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-15 { + description + "Initial draft"; + semver:module-version "1.0.0"; + } + + rpc get-cli-config-diff { + description + "Return CLI config command changeset"; + output { + leaf response { + type string; + description + "The diff output of CLI config being changed"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-cfg.yang new file mode 100644 index 000000000..716ac2397 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-cfg.yang @@ -0,0 +1,5374 @@ +module Cisco-IOS-XR-clns-isis-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-clns-isis-cfg"; + prefix clns-isis-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-clns-isis-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 clns-isis package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-isis-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + isis: IS-IS configuration for all instances + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-26 { + description + "Add multi-part-tlv disable support + 2022-10-05 + Fixed connected-px-map yang model problem + 2022-08-24 + Add global hello padding support + 2022-07-30 + Add Flex-algo Reverse Affinity support + 2022-07-28 + Add ISIS UHP support + 2022-04-23 + Add ISIS UPA support + 2022-04-14 + Add interface affinity flex-algo anomaly + 2022-04-04 + Add max-paths command per flex-algo. + 2022-03-01 + Add TE and Delay options to max-metric + 2022-01-30 + Modify RFC 8405 SPF backoff config. + 2022-01-27 + Add metric and tag command support for srv6 locator. + 2021-09-24 + Add auth-check-disable CLI. + 2021-09-03 + Add IP Flex-algo CLI."; + semver:module-version "5.0.0"; + } + revision 2021-07-01 { + description + "Add log-format-brief leaf to disable adding additional information to syslog messages."; + semver:module-version "4.1.0"; + } + revision 2021-04-02 { + description + "Add TEMetric configuration. + 2021-02-07 + Deprecate UnlabeledProtection leaf under AF and add it to SegmentRouting + 2020-11-26 + Add mpls traffic-eng tunnel metric config command. + 2020-10-27 + Added a new CLI keyword te under flex-algo metric-type. + 2020-10-25 + change sspf and algorithm prefix sid attributes php, nflag-clear and explicit-null to optional. + 2020-10-20 + Replace ospf-route-type by route-type since it is now used by protocols other than ospf via CSCvu81047. Replace boolean flag with an enum type to accommodate more values via CSCvs18561. + 2020-10-18 + Added mpls traffic-eng tunnel-preferred container. + 2020-09-21 + Added attestation submodes and related commands. + 2020-07-28 + Added a new CLI command receive application flex-algo delay app-only under the router isis menu. + 2020-07-09 + Added two additional leaves to the metric fallback bandwidth container. + 2020-07-02 + Added srv6-locator-level leaf to srv6-locator + 2020-06-30 + Added DownFlagClear option to Redistribution + 2020-04-11 + Added metric callback for bundle interface"; + semver:module-version "4.0.0"; + } + revision 2019-12-21 { + description + "Added flex-algo, explicit leaf for summary prefix Added leaf prefix-metric for flex-algo list Added container prefix-attribute-anycasts"; + semver:module-version "3.0.0"; + } + revision 2019-12-20 { + description + "Added default value for max-metric mode. + 2019-10-31 + Added mandatory nodes and presence containers. + 2019-09-25 + Added configuration options for new features + 2019-05-12 + Deprecated the native model, replaced by UM model."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-15 { + description + "Removed CLI enter-tuple YANG nodes for link-group."; + } + revision 2019-02-18 { + description + "Added affinity include-any include-all configuration items."; + } + revision 2018-11-23 { + description + "Added advertise-definition configuration item."; + } + revision 2018-11-02 { + description + "Added purge-transmit strict configuration item."; + } + revision 2018-10-30 { + description + "Change max metric definition."; + } + revision 2018-09-27 { + description + "Modify the SRv6 container and add a Locator container."; + } + revision 2018-06-15 { + description + "Added flex-algo protection command. IosSetYangSchemaRev Cisco-IOS-XR-clns-isis-cfg"; + } + revision 2018-06-15 { + description + "Added flex-algo microloop command. IosSetYangSchemaRev Cisco-IOS-XR-clns-isis-cfg"; + } + revision 2018-06-14 { + description + "Added FRR InitialDelay under address-family fast-reroute submode."; + } + revision 2018-01-24 { + description + "Added SRLG TILFA related CLIs."; + } + revision 2017-12-15 { + description + "Change metric-style to include transition modes."; + } + revision 2017-11-20 { + description + "Change micro-loop-avoidance enable default to none. Add distribute-list-in and vrf-context."; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-02 { + description + "IOS XR 6.3.2 Removed must statements from key leafs."; + } + revision 2017-05-22 { + description + "IOS XR 6.3.2 revision with schema changes for opencfg support and some string boundary checking."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nflag-clear { + type enumeration { + enum "disable" { + value 0; + description + "Disable N-flag-clear"; + } + enum "enable" { + value 1; + description + "Enable N-flag-clear"; + } + } + description + "Nflag clear"; + } + + typedef Isis-adv-type-inter-level { + type enumeration { + enum "inter-level" { + value 1; + description + "InterLevel"; + } + } + description + "Isis adv type inter level"; + } + + typedef Isis-override-metrics { + type enumeration { + enum "disabled" { + value 0; + description + "Ignore reverse-metric requests"; + } + enum "high" { + value 16777214; + description + "Highest reachable metric"; + } + enum "maximum" { + value 16777215; + description + "Unreachable metric (wide metrics only)"; + } + } + description + "Isis override metrics"; + } + + typedef Isis-enable-poi { + type enumeration { + enum "enable-poi-off" { + value 0; + description + "Disable purge originator"; + } + enum "enable-poi-on" { + value 1; + description + "Enable purge originator"; + } + } + description + "Isis enable poi"; + } + + typedef Isis-interface-state { + type enumeration { + enum "shutdown" { + value 0; + description + "Shutdown"; + } + enum "suppressed" { + value 1; + description + "Suppressed"; + } + enum "passive" { + value 2; + description + "Passive"; + } + enum "enabled-active" { + value 3; + description + "EnabledActive"; + } + } + description + "Isis interface state"; + } + + typedef Isisfrr { + type enumeration { + enum "per-link" { + value 1; + description + "Prefix independent per-link computation"; + } + enum "per-prefix" { + value 2; + description + "Prefix dependent computation"; + } + } + description + "Isisfrr"; + } + + typedef Isisfrr-load-sharing { + type enumeration { + enum "disable" { + value 1; + description + "Disable load sharing of prefixes across + multiple backups"; + } + } + description + "Isisfrr load sharing"; + } + + typedef Isis-authentication-failure-mode { + type enumeration { + enum "drop" { + value 0; + description + "Drop non-authenticating PDUs"; + } + enum "send-only" { + value 1; + description + "Accept non-authenticating PDUs"; + } + } + description + "Isis authentication failure mode"; + } + + typedef Isis-apply-weight { + type enumeration { + enum "ecmp-only" { + value 1; + description + "Apply weight to ECMP prefixes"; + } + enum "ucmp-only" { + value 2; + description + "Apply weight to UCMP prefixes"; + } + enum "ecmp-only-bandwidth" { + value 3; + description + "Apply weight to ECMP prefixes"; + } + } + description + "Isis apply weight"; + } + + typedef Isis-label-preference { + type enumeration { + enum "ldp" { + value 0; + description + "Label Distribution Protocol"; + } + enum "segment-routing" { + value 1; + description + "Segment Routing"; + } + } + description + "Isis label preference"; + } + + typedef Isissid1 { + type enumeration { + enum "index" { + value 1; + description + "SID as an index"; + } + enum "absolute" { + value 2; + description + "SID as an absolute label"; + } + } + description + "Isissid1"; + } + + typedef Isis-advertise-local { + type enumeration { + enum "local" { + value 1; + description + "Local"; + } + enum "domain-wide" { + value 2; + description + "Domain Wide"; + } + } + description + "Isis advertise local"; + } + + typedef Isis-metric { + type enumeration { + enum "internal" { + value 0; + description + "Internal metric"; + } + enum "external" { + value 1; + description + "External metric"; + } + enum "rib-internal" { + value 2; + description + "RIB Internal metric"; + } + enum "rib-external" { + value 3; + description + "RIB External metric"; + } + } + description + "Isis metric"; + } + + typedef Isis-attached-bit { + type enumeration { + enum "area" { + value 0; + description + "Computed from the attached areas"; + } + enum "on" { + value 1; + description + "Forced ON"; + } + enum "off" { + value 2; + description + "Forced OFF"; + } + } + description + "Isis attached bit"; + } + + typedef Isis-configurable-levels { + type enumeration { + enum "level1" { + value 1; + description + "Level1"; + } + enum "level2" { + value 2; + description + "Level2"; + } + enum "level1-and2" { + value 3; + description + "Both Levels"; + } + } + description + "Isis configurable levels"; + } + + typedef Isis-configurable-level { + type enumeration { + enum "level-12" { + value 0; + description + "Both Levels"; + } + enum "level-1" { + value 1; + description + "level 1"; + } + enum "level-2" { + value 2; + description + "level 2"; + } + } + description + "Isis configurable level"; + } + + typedef Isissid { + type uint32 { + range "0..1048575"; + } + description + "Isissid"; + } + + typedef Isis-hello-padding { + type enumeration { + enum "never" { + value 0; + description + "Never pad Hellos"; + } + enum "sometimes" { + value 1; + description + "Pad Hellos during adjacency formation only"; + } + enum "always" { + value 2; + description + "Always pad Hellos"; + } + } + description + "Isis hello padding"; + } + + typedef Isis-backoff-algorithm { + type enumeration { + enum "exponential" { + value 0; + description + "Exponential Backoff"; + } + enum "ietf" { + value 1; + description + "RFC 8405 Backoff"; + } + } + description + "Isis backoff algorithm"; + } + + typedef Isis-snp-auth { + type enumeration { + enum "send-only" { + value 0; + description + "Authenticate SNP send only"; + } + enum "full" { + value 1; + description + "Authenticate SNP send and recv"; + } + } + description + "Isis snp auth"; + } + + typedef Isis-interface-af-state { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + } + description + "Isis interface af state"; + } + + typedef Isisexplicit-null-flag { + type enumeration { + enum "disable" { + value 0; + description + "Disable EXPLICITNULL"; + } + enum "enable" { + value 1; + description + "Enable EXPLICITNULL"; + } + } + description + "Isisexplicit null flag"; + } + + typedef Isis-application-attribute { + type enumeration { + enum "srlg" { + value 0; + description + "SRLG Attribute"; + } + } + description + "Isis application attribute"; + } + + typedef Isis-metric-fallback-metric { + type enumeration { + enum "igp" { + value 0; + description + "IGP Metric"; + } + enum "te" { + value 1; + description + "TE Metric"; + } + } + description + "Isis metric fallback metric"; + } + + typedef Isis-eag-mode { + type enumeration { + enum "cisco" { + value 0; + description + "Use the Cisco pre-standard TLV code-point (252)"; + } + enum "ietf" { + value 1; + description + "Use the IETF standard TLV code-point (14)"; + } + enum "both" { + value 2; + description + "Use both the Cisco pre-standard and IETF EAG + subTLV code-points"; + } + } + description + "Isis eag mode"; + } + + typedef Isisfrr-srlg-protection { + type enumeration { + enum "local" { + value 0; + description + "SRLG Attribute"; + } + enum "weighted-global" { + value 1; + description + "SRLG Attribute"; + } + } + description + "Isisfrr srlg protection"; + } + + typedef Isis-redist-proto { + type enumeration { + enum "connected" { + value 0; + description + "Connected"; + } + enum "static" { + value 1; + description + "Static"; + } + enum "ospf" { + value 2; + description + "OSPF"; + } + enum "bgp" { + value 3; + description + "BGP"; + } + enum "isis" { + value 4; + description + "ISIS"; + } + enum "ospfv3" { + value 5; + description + "OSPFv3"; + } + enum "rip" { + value 6; + description + "RIP"; + } + enum "eigrp" { + value 7; + description + "EIGRP"; + } + enum "subscriber" { + value 8; + description + "Subscriber"; + } + enum "application" { + value 9; + description + "Application"; + } + enum "mobile" { + value 10; + description + "Mobile"; + } + } + description + "Isis redist proto"; + } + + typedef Isis-metric-fallback-anomaly-mode { + type enumeration { + enum "delay" { + value 1; + description + "Link Delay Anomaly"; + } + enum "loss" { + value 2; + description + "Link Loss Anomaly"; + } + enum "any" { + value 3; + description + "Any Anomaly"; + } + } + description + "Isis metric fallback anomaly mode"; + } + + typedef Isis-tracing-mode { + type enumeration { + enum "off" { + value 0; + description + "No tracing"; + } + enum "basic" { + value 1; + description + "Basic tracing (less overhead)"; + } + enum "enhanced" { + value 2; + description + "Enhanced tracing (more overhead)"; + } + } + description + "Isis tracing mode"; + } + + typedef Isis-prefix-priority { + type enumeration { + enum "critical-priority" { + value 0; + description + "Critical prefix priority"; + } + enum "high-priority" { + value 1; + description + "High prefix priority"; + } + enum "medium-priority" { + value 2; + description + "Medium prefix priority"; + } + } + description + "Isis prefix priority"; + } + + typedef Isis-unlabeled-protection { + type enumeration { + enum "disable" { + value 0; + description + "Disabled"; + } + enum "prefix-list" { + value 1; + description + "Prefix List"; + } + enum "route-policy" { + value 2; + description + "Route Policy"; + } + } + description + "Isis unlabeled protection"; + } + + typedef Isis-authentication-algorithm { + type enumeration { + enum "cleartext" { + value 1; + description + "Cleartext password"; + } + enum "hmac-md5" { + value 2; + description + "HMAC-MD5 checksum"; + } + enum "keychain" { + value 3; + description + "Key Chain authentication"; + } + } + description + "Isis authentication algorithm"; + } + + typedef Isis-max-metric-mode { + type enumeration { + enum "permanently-set" { + value 1; + description + "Set always"; + } + enum "startup-period" { + value 2; + description + "Set during the startup period"; + } + enum "wait-for-bgp" { + value 3; + description + "Set until BGP comverges"; + } + } + description + "Isis max metric mode"; + } + + typedef Isisispf-state { + type enumeration { + enum "enabled" { + value 1; + description + "Enabled"; + } + } + description + "Isisispf state"; + } + + typedef Isis-application { + type enumeration { + enum "lfa" { + value 0; + description + "LFA Application"; + } + enum "flex-algo" { + value 1; + description + "Flex-Algo Application"; + } + } + description + "Isis application"; + } + + typedef Isissid-protected { + type enumeration { + enum "disable" { + value 0; + description + "Not protected"; + } + enum "enable" { + value 1; + description + "Protected"; + } + } + description + "Isissid protected"; + } + + typedef Isis-adv-type-external { + type enumeration { + enum "external" { + value 1; + description + "External"; + } + } + description + "Isis adv type external"; + } + + typedef Isisphp-flag { + type enumeration { + enum "enable" { + value 0; + description + "Enable PHP"; + } + enum "disable" { + value 1; + description + "Disable PHP"; + } + } + description + "Isisphp flag"; + } + + typedef Isis-metric-style { + type enumeration { + enum "old-metric-style" { + value 0; + description + "ISO 10589 metric style (old-style)"; + } + enum "new-metric-style" { + value 1; + description + "32-bit metric style (new-style)"; + } + enum "both-metric-style" { + value 2; + description + "Both forms of metric style"; + } + enum "old-metric-style-transition" { + value 3; + description + "Send ISO 10589 metric style but accept both"; + } + enum "new-metric-style-transition" { + value 4; + description + "Send 32-bit metric style but accept both"; + } + } + description + "Isis metric style"; + } + + typedef Isis-remote-lfa { + type enumeration { + enum "remote-lfa-none" { + value 0; + description + "No remote LFA option set"; + } + enum "remote-lfa-tunnel-ldp" { + value 1; + description + "Construct remote LFA tunnel using MPLS LDP"; + } + } + description + "Isis remote lfa"; + } + + typedef Isis-micro-loop-avoidance { + type enumeration { + enum "not-set" { + value 0; + description + "No Avoidance type set"; + } + enum "micro-loop-avoidance-all" { + value 1; + description + "Provide mirco loop avoidance for all prefixes"; + } + enum "micro-loop-avoidance-protected" { + value 2; + description + "Provide mirco loop avoidance only for protected + prefixes"; + } + enum "micro-loop-avoidance-segement-routing" { + value 3; + description + "Provide segment-routing mirco loop avoidance"; + } + } + description + "Isis micro loop avoidance"; + } + + typedef Isis-adj-check { + type enumeration { + enum "disabled" { + value 0; + description + "Disabled"; + } + } + description + "Isis adj check"; + } + + typedef Isis-interface-frr-tiebreaker { + type enumeration { + enum "lc-disjoint" { + value 1; + description + "Prefer line card disjoint backup path"; + } + enum "node-protecting" { + value 3; + description + "Prefer node protecting backup path"; + } + enum "srlg-disjoint" { + value 6; + description + "Prefer SRLG disjoint backup path"; + } + } + description + "Isis interface frr tiebreaker"; + } + + typedef Isis-overload-bit-mode { + type enumeration { + enum "permanently-set" { + value 1; + description + "Set always"; + } + enum "startup-period" { + value 2; + description + "Set during the startup period"; + } + enum "wait-for-bgp" { + value 3; + description + "Set until BGP comverges"; + } + } + description + "Isis overload bit mode"; + } + + typedef Isis-no-level { + type enumeration { + enum "not-set" { + value 0; + description + "Level not set"; + } + } + description + "Isis no level"; + } + + typedef Isis-nsf-flavor { + type enumeration { + enum "cisco-proprietary-nsf" { + value 1; + description + "Cisco proprietary NSF"; + } + enum "ietf-standard-nsf" { + value 2; + description + "IETF standard NSF"; + } + } + description + "Isis nsf flavor"; + } + + typedef Isisfrr-tiebreaker { + type enumeration { + enum "downstream" { + value 0; + description + "Prefer backup path via downstream node"; + } + enum "lc-disjoint" { + value 1; + description + "Prefer line card disjoint backup path"; + } + enum "lowest-backup-metric" { + value 2; + description + "Prefer backup path with lowest total metric"; + } + enum "node-protecting" { + value 3; + description + "Prefer node protecting backup path"; + } + enum "primary-path" { + value 4; + description + "Prefer backup path from ECMP set"; + } + enum "secondary-path" { + value 5; + description + "Prefer non-ECMP backup path"; + } + enum "srlg-disjoint" { + value 6; + description + "Prefer SRLG disjoint backup path"; + } + } + description + "Isisfrr tiebreaker"; + } + + typedef Isis-mib-manual-address-drops-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 2; + description + "Enable"; + } + } + description + "Isis mib manual address drops boolean"; + } + + typedef Isis-mib-authentication-type-failure-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 9; + description + "Enable"; + } + } + description + "Isis mib authentication type failure boolean"; + } + + typedef Isis-mib-max-area-address-mismatch-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 6; + description + "Enable"; + } + } + description + "Isis mib max area address mismatch boolean"; + } + + typedef Isis-mib-sequence-number-skip-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 8; + description + "Enable"; + } + } + description + "Isis mib sequence number skip boolean"; + } + + typedef Isis-mib-database-over-flow-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 1; + description + "Enable"; + } + } + description + "Isis mib database over flow boolean"; + } + + typedef Isis-mib-all-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 19; + description + "Enable"; + } + } + description + "Isis mib all boolean"; + } + + typedef Isis-mib-lsp-too-large-to-propagate-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 14; + description + "Enable"; + } + } + description + "Isis mib lsp too large to propagate boolean"; + } + + typedef Isis-mib-own-lsp-purge-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 7; + description + "Enable"; + } + } + description + "Isis mib own lsp purge boolean"; + } + + typedef Isis-mib-adjacency-change-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 17; + description + "Enable"; + } + } + description + "Isis mib adjacency change boolean"; + } + + typedef Isis-mib-protocols-supported-mismatch-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 16; + description + "Enable"; + } + } + description + "Isis mib protocols supported mismatch boolean"; + } + + typedef Isis-mib-attempt-to-exceed-max-sequence-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 4; + description + "Enable"; + } + } + description + "Isis mib attempt to exceed max sequence boolean"; + } + + typedef Isis-mib-id-length-mismatch-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 5; + description + "Enable"; + } + } + description + "Isis mib id length mismatch boolean"; + } + + typedef Isis-mib-originated-lsp-buffer-size-mismatch-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 15; + description + "Enable"; + } + } + description + "Isis mib originated lsp buffer size mismatch + boolean"; + } + + typedef Isis-mib-area-mismatch-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 12; + description + "Enable"; + } + } + description + "Isis mib area mismatch boolean"; + } + + typedef Isis-mib-corrupted-lsp-detected-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 3; + description + "Enable"; + } + } + description + "Isis mib corrupted lsp detected boolean"; + } + + typedef Isis-mib-lsp-error-detected-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 18; + description + "Enable"; + } + } + description + "Isis mib lsp error detected boolean"; + } + + typedef Isis-mib-rejected-adjacency-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 13; + description + "Enable"; + } + } + description + "Isis mib rejected adjacency boolean"; + } + + typedef Isis-mib-version-skew-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 11; + description + "Enable"; + } + } + description + "Isis mib version skew boolean"; + } + + typedef Isis-mib-authentication-failure-boolean { + type enumeration { + enum "false" { + value 0; + description + "Disable"; + } + enum "true" { + value 10; + description + "Enable"; + } + } + description + "Isis mib authentication failure boolean"; + } + + grouping METRIC-TABLE { + description + "Common node of interface-af, af"; + container metrics { + description + "Metric configuration"; + list metric { + key "level"; + description + "Metric configuration. Legal value depends on + the metric-style specified for the topology. If + the metric-style defined is narrow, then only a + value between <1-63> is allowed and if the + metric-style is defined as wide, then a value + between <1-16777215> is allowed as the metric + value. All routers exclude links with the + maximum wide metric (16777215) from their SPF"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf metric { + type union { + type enumeration { + enum "maximum" { + value 16777215; + description + "Maximum wide metric. All routers will + exclude this link from their SPF"; + } + } + type uint32 { + range "1..16777215"; + } + } + mandatory true; + description + "Allowed metric: <1-63> for narrow, + <1-16777215> for wide"; + } + } + } + } + + grouping TE-METRIC-TABLE { + description + "Common node of interface-af, af"; + container te-metrics { + description + "Traffic Engineering metric configuration"; + list te-metric { + key "level"; + description + "TE Metric configuration"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf te-metric { + type union { + type enumeration { + enum "maximum" { + value 16777215; + description + "Maximum wide metric. All routers will + exclude this link from their SPF"; + } + } + type uint32 { + range "1..16777215"; + } + } + mandatory true; + description + "Allowed metric <1-16777215>"; + } + } + } + } + + grouping WEIGHT-TABLE { + description + "Common node of interface-af, af"; + container weights { + description + "Weight configuration"; + list weight { + key "level"; + description + "Weight configuration under interface for load + balancing"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf weight { + type uint32 { + range "1..16777214"; + } + mandatory true; + description + "Weight to be configured under interface for + Load Balancing. Allowed weight: <1-16777215>"; + } + } + } + } + + grouping MANUAL-ADJ-SID-TABLE { + description + "Common node of interface-af, af"; + container manual-adj-sids { + description + "Manual Adjacecy SID configuration"; + list manual-adj-sid { + key "level sid-type sid"; + description + "Assign adjancency SID to an interface"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf sid-type { + type Isissid1; + description + "Sid type aboslute or index"; + } + leaf sid { + type Isissid; + description + "Sid value"; + } + leaf protected { + type Isissid-protected; + mandatory true; + description + "Enable/Disable SID protection"; + } + } + } + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container isis { + presence "Contains mandatory nodes that used to set default values"; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-isis-cfg.yang which will + provide the compatible functionalities. Enable + ISIS-MIB notifications"; + leaf database-overflow { + type Isis-mib-database-over-flow-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf manual-address-drops { + type Isis-mib-manual-address-drops-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf corrupted-lsp-detected { + type Isis-mib-corrupted-lsp-detected-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf attempt-to-exceed-max-sequence { + type Isis-mib-attempt-to-exceed-max-sequence-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf id-length-mismatch { + type Isis-mib-id-length-mismatch-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf max-area-address-mismatch { + type Isis-mib-max-area-address-mismatch-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf own-lsp-purge { + type Isis-mib-own-lsp-purge-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf sequence-number-skip { + type Isis-mib-sequence-number-skip-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf authentication-type-failure { + type Isis-mib-authentication-type-failure-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf authentication-failure { + type Isis-mib-authentication-failure-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf version-skew { + type Isis-mib-version-skew-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf area-mismatch { + type Isis-mib-area-mismatch-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf rejected-adjacency { + type Isis-mib-rejected-adjacency-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf lsp-too-large-to-propagate { + type Isis-mib-lsp-too-large-to-propagate-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf originated-lsp-buffer-size-mismatch { + type Isis-mib-originated-lsp-buffer-size-mismatch-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf protocols-supported-mismatch { + type Isis-mib-protocols-supported-mismatch-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf adjacency-change { + type Isis-mib-adjacency-change-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf lsp-error-detected { + type Isis-mib-lsp-error-detected-boolean; + mandatory true; + description + "Enable or disable"; + } + leaf all { + type Isis-mib-all-boolean; + mandatory true; + description + "Enable all isisMIB notifications"; + } + } + } + container isis { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-isis-cfg.yang which will + provide the compatible functionalities. IS-IS + configuration for all instances"; + container instances { + description + "IS-IS instance configuration"; + list instance { + key "instance-name"; + description + "Configuration for a single IS-IS instance"; + container srgb { + presence "Indicates a srgb node is configured."; + description + "Segment Routing Global Block configuration"; + leaf lower-bound { + type uint32 { + range "16000..1048574"; + } + mandatory true; + description + "The lower bound of the SRGB"; + } + leaf upper-bound { + type uint32 { + range "16001..1048575"; + } + mandatory true; + description + "The upper bound of the SRGB"; + } + } + container attestation-table { + description + "Attestation configuration"; + container attestation-apps { + description + "Attestation Application configuration"; + list attestation-app { + key "application"; + description + "Configuration for Attestation for + application"; + container trust-vector-table { + description + "Trust-Vector configuration"; + leaf boot-integrity-failed { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Configure Boot Integrity Fail Affinity"; + } + leaf failures-found { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Configure Failures Found Affinity"; + } + leaf boot-integrity-passed { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Configure Boot Integrity Pass Affinity"; + } + } + leaf application { + type uint32 { + range "0..1"; + } + description + "Application"; + } + } + } + } + container lsp-generation-intervals { + description + "LSP generation-interval configuration"; + list lsp-generation-interval { + key "level"; + description + "LSP generation scheduling parameters"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf maximum-wait { + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Maximum wait before generating local LSP in + milliseconds"; + } + leaf initial-wait { + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Initial wait before generating local LSP in + milliseconds"; + } + leaf secondary-wait { + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Secondary wait before generating local LSP + in milliseconds"; + } + leaf unused1 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf unused2 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf unused3 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf unused4 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf backoff-algorithm { + type empty; + description + "Exponential backoff algorithm"; + } + } + } + container lsp-arrival-times { + description + "LSP arrival time configuration"; + list lsp-arrival-time { + key "level"; + description + "Minimum LSP arrival time"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf maximum-wait { + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Maximum delay expected to take since last + LSPin milliseconds"; + } + leaf initial-wait { + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Initial delay expected to take since last + LSPin milliseconds"; + } + leaf secondary-wait { + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Secondary delay expected to take since last + LSPin milliseconds"; + } + leaf unused1 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf unused2 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf unused3 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf unused4 { + type uint32 { + range "0..120000"; + } + description + "Unused"; + } + leaf backoff-algorithm { + type empty; + description + "Exponential backoff algorithm"; + } + } + } + container trace-buffer-size { + description + "Trace buffer size configuration"; + leaf detailed { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for detailed traces"; + } + leaf standard { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for standard traces"; + } + leaf severe { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for severe trace"; + } + leaf hello { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for hello trace"; + } + leaf lspgen { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for lspgen trace"; + } + leaf adj { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for adjacency trace"; + } + leaf config { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for config trace"; + } + leaf startup { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for startup trace"; + } + leaf rib { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for rib trace"; + } + leaf spf { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for spf trace"; + } + leaf sr { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for segment routing trace"; + } + leaf te { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for traffic-engg trace"; + } + leaf update { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for update trace"; + } + leaf pkt { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for packet trace"; + } + leaf debug { + type uint32 { + range "1..1000000"; + } + description + "Buffer size for debug trace"; + } + } + container max-link-metrics { + description + "Max Metric configuration"; + list max-link-metric { + key "level"; + description + "Max Metric"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf max-metric-mode { + type Isis-max-metric-mode; + default "permanently-set"; + description + "Circumstances under which the max metric is + advertised in the system LSP"; + } + leaf max-metric-period { + when "../max-metric-mode = 'startup-period'" { + description + "../MaxMetricMode = StartupPeriod"; + } + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time in seconds to advertise max link metric + after process startup"; + } + leaf external { + type boolean; + description + "If TRUE, overwrite metric of prefixes + learned from another protocol with max + metric"; + } + leaf interlevel { + type boolean; + description + "If TRUE, overwrite metric of prefixes + learned from another ISIS level with max + metric"; + } + leaf deflt-rt { + type boolean; + description + "If TRUE, overwrite metric of default route + with max metric"; + } + leaf srv6-loc { + type boolean; + description + "If TRUE, overwrite metric of segment routing + IPV6 locator with max metric"; + } + leaf te { + type boolean; + description + "If TRUE, overwrite TE metric with max metric"; + } + leaf delay { + type boolean; + description + "If TRUE, overwrite Delay metrics with max + metric"; + } + } + } + container adjacency-stagger { + presence "enable adjacency-stagger"; + description + "Stagger ISIS adjacency bring up"; + leaf initial-nbr { + type uint32 { + range "2..65000"; + } + default "2"; + description + "Adjacency Stagger: Initial number of + neighbors to bring up per area"; + } + leaf max-nbr { + type uint32 { + range "2..65000"; + } + default "64"; + description + "Adjacency Stagger: Subsequent simultaneous + number of neighbors to bring up"; + } + } + container afs { + description + "Per-address-family configuration"; + list af { + key "af-name saf-name"; + description + "Configuration for an IS-IS address-family. If + a named (non-default) topology is being + created it must be multicast."; + + grouping AF-CONTENT { + description + "Content grouping."; + container segment-routing { + description + "Enable Segment Routing configuration"; + container srv6 { + description + "SRv6 configuration"; + container srv6-locators { + description + "SRv6 Locator configuration"; + list srv6-locator { + key "locator-name"; + description + "Configuration for a single SRv6 Locator"; + container srv6-locator-metric-by-levels { + description + "Srv6 Metric Configuration"; + list srv6-locator-metric-by-level { + key "level"; + description + "The Metric with which this locator + should be advertised by level."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf metric { + type uint32 { + range "1..16777214"; + } + mandatory true; + description + "Metric for srv6 Locator : <1-63> for + narrow, <1-16777214> for wide"; + } + } + } + container srv6-locator-tag-by-levels { + description + "Srv6 Tag Configuration"; + list srv6-locator-tag-by-level { + key "level"; + description + "The Tag with which this locator should + be advertised by level."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf tag { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Tag for srv6 Locator <0-4294967295>"; + } + } + } + leaf running { + type empty; + description + "The presence of this object enables a + SRv6 Locator. This must be the first + object created under the SRv6Locator + container, and the last one deleted"; + } + leaf srv6-locator-level { + type Isis-configurable-level; + default "level-12"; + description + "The level into which this locator + should be advertised."; + } + leaf locator-name { + type dt1:Isis-locator-name; + description + "Locator Name"; + } + } + } + leaf running { + type empty; + description + "The presence of this object enables SRv6. + This must be the first object created + under the SRV6 container, and the last + one deleted"; + } + } + container connected-prefix-sid-map { + description + "Connected Segment Routing prefix SID map + configuration"; + container connected-prefix-sids { + description + "Connected Segment Routing prefix SID + table"; + list connected-prefix-sid { + key "address-prefix algo"; + description + "Segment Routing prefix SID map"; + leaf address-prefix { + type inet:ip-prefix; + description + "IP address prefix"; + } + leaf algo { + type uint32 { + range "0..255"; + } + description + "Algo"; + } + leaf sid { + type Isissid; + mandatory true; + description + "SID value for the interface"; + } + leaf sid-type { + type Isissid1; + mandatory true; + description + "SID type for the interface"; + } + leaf unused { + type uint32; + description + "unused"; + } + leaf interface { + type string { + length "1..64"; + } + description + "Interface to which prefix belongs"; + } + leaf php { + type Isisphp-flag; + description + "Enable/Disable Penultimate Hop Popping"; + } + leaf explicit-null { + type Isisexplicit-null-flag; + description + "Enable/Disable Explicit-NULL flag"; + } + } + } + } + container prefix-sid-map { + description + "Enable Segment Routing prefix SID map + configuration"; + leaf advertise-local { + type Isis-advertise-local; + description + "Enable Segment Routing prefix SID map + advertise local"; + } + leaf receive { + type boolean; + description + "If TRUE, remote prefix SID map + advertisements will be used. If FALSE, + they will not be used."; + } + } + container unlabeled-protection { + presence "Indicates a unlabeled-protection node is configured."; + description + "SR-MPLS protection for prefixes without a + prefix SID"; + leaf filter-type { + type Isis-unlabeled-protection; + mandatory true; + description + "Type of prefix filtering for unlabeled + protection"; + } + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Prefix list to control unlabeled + protection"; + } + leaf route-policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Route policy to control unlabeled + protection"; + } + } + leaf bundle-member-adj-sid { + type empty; + description + "Enable per bundle member adjacency SID"; + } + leaf labeled-only { + type empty; + description + "Only install SR labeled paths"; + } + leaf mpls { + type Isis-label-preference; + description + "Prefer segment routing labels over LDP + labels"; + } + } + container metric-styles { + description + "Metric-style configuration"; + list metric-style { + key "level"; + description + "Configuration of metric style in LSPs"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf style { + type Isis-metric-style; + mandatory true; + description + "Metric Style"; + } + } + } + container frr-table { + description + "Fast-ReRoute configuration"; + container frr-load-sharings { + description + "Load share prefixes across multiple + backups"; + list frr-load-sharing { + key "level"; + description + "Disable load sharing"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf load-sharing { + type Isisfrr-load-sharing; + mandatory true; + description + "Load sharing"; + } + } + } + container frrsrlg-protection-types { + description + "SRLG protection type configuration"; + list frrsrlg-protection-type { + key "level"; + description + "FRR SRLG Protection Type"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf protection-type { + type Isisfrr-srlg-protection; + mandatory true; + description + "Protection Type"; + } + } + } + container priority-limits { + description + "FRR prefix-limit configuration"; + list priority-limit { + key "level frr-type"; + description + "Limit backup computation upto the prefix + priority"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf frr-type { + type Isisfrr; + description + "Computation Type"; + } + leaf priority { + type Isis-prefix-priority; + mandatory true; + description + "Compute for all prefixes upto the + specified priority"; + } + } + } + container frr-remote-lfa-prefixes { + description + "FRR remote LFA prefix list filter + configuration"; + list frr-remote-lfa-prefix { + key "level"; + description + "Filter remote LFA router IDs using + prefix-list"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "Name of the prefix list"; + } + } + } + container frr-tiebreakers { + description + "FRR tiebreakers configuration"; + list frr-tiebreaker { + key "level tiebreaker"; + description + "Configure tiebreaker for multiple backups"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf tiebreaker { + type Isisfrr-tiebreaker; + description + "Tiebreaker for which configuration + applies"; + } + leaf index { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Preference order among tiebreakers"; + } + } + } + container frr-use-cand-onlies { + description + "FRR use candidate only configuration"; + list frr-use-cand-only { + key "level frr-type"; + description + "Configure use candidate only to exclude + interfaces as backup"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf frr-type { + type Isisfrr; + description + "Computation Type"; + } + } + } + leaf frr-initial-delay { + type uint32 { + range "100..60000"; + } + units "millisecond"; + description + "Delay before running FRR (milliseconds)"; + } + } + container router-id { + description + "Stable IP address for system. Will only be + applied for the unicast sub-address-family."; + leaf address { + type string; + must "not(../interface-name)"; + description + "IPv4/IPv6 address to be used as a router + ID. Precisely one of Address and Interface + must be specified."; + } + leaf interface-name { + type xr:Interface-name; + must "not(../address)"; + description + "Interface with designated stable IP + address to be used as a router ID. This + must be a Loopback interface. Precisely + one of Address and Interface must be + specified."; + } + } + container spf-prefix-priorities { + description + "SPF Prefix Priority configuration"; + list spf-prefix-priority { + key "level prefix-priority-type"; + description + "Determine SPF priority for prefixes"; + leaf level { + type dt1:Isis-internal-level; + description + "SPF Level for prefix prioritization"; + } + leaf prefix-priority-type { + type Isis-prefix-priority; + description + "SPF Priority to assign matching prefixes"; + } + leaf admin-tag { + type uint32 { + range "1..4294967295"; + } + must "not(../access-list-name)"; + description + "Tag value to determine prefixes for this + priority"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + must "not(../admin-tag)"; + description + "Access List to determine prefixes for + this priority"; + } + } + } + container summary-prefixes { + description + "Summary-prefix configuration"; + list summary-prefix { + key "address-prefix"; + description + "Configure IP address prefixes to advertise"; + leaf address-prefix { + type inet:ip-prefix; + description + "IP summary address prefix"; + } + leaf tag { + type uint32 { + range "1..4294967295"; + } + description + "The tag value"; + } + leaf level { + type uint32 { + range "1..2"; + } + description + "Level in which to summarize routes"; + } + leaf flex-algo { + type uint32 { + range "128..255"; + } + description + "Flexible Algorithm number"; + } + leaf explicit { + type empty; + description + "Only consider prefixes from identical + algorithm"; + } + leaf adv-unreachable { + type empty; + description + "Advertise unreachable"; + } + leaf unreachable-tag { + type uint32 { + range "1..4294967295"; + } + description + "The unreachable tag value"; + } + } + } + container micro-loop-avoidance { + description + "Micro Loop Avoidance configuration"; + leaf enable { + type Isis-micro-loop-avoidance; + description + "MicroLoop avoidance enable configuration"; + } + leaf rib-update-delay { + type uint32 { + range "1000..65535"; + } + units "millisecond"; + default "5000"; + description + "Value of delay in msecs in updating RIB"; + } + } + container ucmp { + description + "UCMP (UnEqual Cost MultiPath) configuration"; + container enable { + presence "Contains mandatory nodes that used to set default values"; + description + "UCMP feature enable configuration"; + leaf variance { + type uint32 { + range "101..10000"; + } + mandatory true; + description + "Value of variance"; + } + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Prefix List"; + } + } + container exclude-interfaces { + description + "Interfaces excluded from UCMP path + computation"; + list exclude-interface { + key "interface-name"; + description + "Exclude this interface from UCMP path + computation"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface to be excluded"; + } + } + } + leaf delay-interval { + type uint32 { + range "100..65535"; + } + units "millisecond"; + default "100"; + description + "Delay in msecs between primary SPF and + UCMP computation"; + } + } + container max-redist-prefixes { + description + "Maximum number of redistributed + prefixesconfiguration"; + list max-redist-prefix { + key "level"; + description + "An upper limit on the number of + redistributed prefixes which may be + included in the local system's LSP"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf prefix-limit { + type uint32 { + range "1..28000"; + } + mandatory true; + description + "Max number of prefixes"; + } + } + } + container propagations { + description + "Route propagation configuration"; + list propagation { + key "source-level destination-level"; + description + "Propagate routes between IS-IS levels"; + leaf source-level { + type dt1:Isis-internal-level; + description + "Source level for routes"; + } + leaf destination-level { + type dt1:Isis-internal-level; + description + "Destination level for routes. Must + differ from SourceLevel"; + } + leaf route-policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Route policy limiting routes to be + propagated"; + } + } + } + container redistributions { + description + "Protocol redistribution configuration"; + list redistribution { + must "connected-or-static-or-rip-or-subscriber-or-mobile or ospf-or-ospfv3-or-isis-or-application or bgp or eigrp" { + description + "Connected-or-Static-or-RIP-or-Subscriber-or-Mobile or OSPF-or-OSPFv3-or-ISIS-or-Application or BGP or EIGRP must be present."; + } + key "protocol-name"; + description + "Redistribution of other protocols into + this IS-IS instance"; + + grouping REDISTRIBUTION-CONTENT { + description + "REDISTRIBUTION CONTENT"; + leaf metric { + type uint32 { + range "0..16777215"; + } + description + "Metric for redistributed routes: <0-63> + for narrow, <0-16777215> for wide"; + } + leaf levels { + type Isis-configurable-levels; + description + "Levels to redistribute routes into"; + } + leaf route-policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Route policy to control redistribution."; + } + leaf metric-type { + type Isis-metric; + description + "IS-IS metric type"; + } + leaf route-type { + type uint32; + description + "OSPF and EIGRP: route types to + redistribute."; + } + leaf down-flag-clear { + type uint32; + description + "ISIS: Redistribute with the up/down flag + set to 0."; + } + } + container connected-or-static-or-rip-or-subscriber-or-mobile { + when "../protocol-name = 'connected' or ../protocol-name = 'static' or ../protocol-name = 'rip' or ../protocol-name = 'subscriber' or ../protocol-name = 'mobile'" { + description + "../ProtocolName = Connected or . + ./ProtocolName = Static or . + ./ProtocolName = RIP or ../ProtocolName + = Subscriber or ../ProtocolName = + Mobile"; + } + presence "Indicates that this node is configured."; + description + "connected or static or rip or subscriber + or mobile"; + uses REDISTRIBUTION-CONTENT; + } + leaf protocol-name { + type Isis-redist-proto; + description + "The protocol to be redistributed. OSPFv3 + may not be specified for an IPv4 topology + and OSPF may not be specified for an IPv6 + topology."; + } + list ospf-or-ospfv3-or-isis-or-application { + when "../protocol-name = 'ospf' or ../protocol-name = 'ospfv3' or ../protocol-name = 'isis' or ../protocol-name = 'application'" { + description + "../ProtocolName = OSPF or . + ./ProtocolName = OSPFv3 or . + ./ProtocolName = ISIS or . + ./ProtocolName = Application"; + } + key "instance-name"; + description + "ospf or ospfv3 or isis or application"; + leaf instance-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Protocol Instance Identifier. Mandatory + for ISIS, OSPF and application, must not + be specified otherwise."; + } + uses REDISTRIBUTION-CONTENT; + } + list bgp { + when "../protocol-name = 'bgp'" { + description + "../ProtocolName = BGP"; + } + key "as-xx as-yy"; + description + "bgp"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "First half of BGP AS number in XX.YY + format. Mandatory if Protocol is BGP + and must not be specified otherwise. + Must be a non-zero value if second half + is zero."; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "Second half of BGP AS number in XX.YY + format. Mandatory if Protocol is BGP and + must not be specified otherwise. Must be + a non-zero value if first half is zero."; + } + uses REDISTRIBUTION-CONTENT; + } + list eigrp { + when "../protocol-name = 'eigrp'" { + description + "../ProtocolName = EIGRP"; + } + key "as-zz"; + description + "eigrp"; + leaf as-zz { + type uint32 { + range "1..65535"; + } + description + "Eigrp as number."; + } + uses REDISTRIBUTION-CONTENT; + } + } + } + container application-tables { + description + "Advertise application specific values"; + list application-table { + key "app-type"; + description + "Application Name"; + leaf app-type { + type Isis-application; + description + "Application Type"; + } + list attribute-table { + key "app-type"; + description + "Attribute Name"; + leaf app-type { + type Isis-application-attribute; + description + "Application Type"; + } + leaf enable { + type boolean; + mandatory true; + description + "If TRUE, advertise application link + attribute in our LSP"; + } + } + } + } + container spf-periodic-intervals { + description + "Peoridic SPF configuration"; + list spf-periodic-interval { + key "level"; + description + "Maximum interval between spf runs"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf periodic-interval { + type uint32 { + range "0..3600"; + } + units "second"; + mandatory true; + description + "Maximum interval in between SPF runs in + seconds"; + } + } + } + container distribute-list-in { + description + "Filter routes sent to the RIB"; + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Prefix list to control routes installed in + RIB."; + } + leaf route-policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Route policy to control routes installed + in RIB."; + } + } + container spf-intervals { + description + "SPF-interval configuration"; + list spf-interval { + key "level"; + description + "Route calculation scheduling parameters"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf maximum-wait { + when "../backoff-algorithm != 'ietf'" { + description + "../BackoffAlgorithm != IETF"; + } + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Maximum wait before running a route + calculation in milliseconds"; + } + leaf initial-wait { + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Initial wait before running a route + calculation in milliseconds"; + } + leaf secondary-wait { + when "../backoff-algorithm != 'ietf'" { + description + "../BackoffAlgorithm != IETF"; + } + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Secondary wait before running a route + calculation in milliseconds"; + } + leaf short-wait { + when "../backoff-algorithm = 'ietf'" { + description + "../BackoffAlgorithm = IETF"; + } + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Short wait before running a route + calculation in milliseconds"; + } + leaf long-wait { + when "../backoff-algorithm = 'ietf'" { + description + "../BackoffAlgorithm = IETF"; + } + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Long wait before running a route + calculation in milliseconds"; + } + leaf learn-interval { + when "../backoff-algorithm = 'ietf'" { + description + "../BackoffAlgorithm = IETF"; + } + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Time To Learn interval for running a + route calculation in milliseconds"; + } + leaf holddown-interval { + when "../backoff-algorithm = 'ietf'" { + description + "../BackoffAlgorithm = IETF"; + } + type uint32 { + range "0..120000"; + } + units "millisecond"; + description + "Holddown interval for running a route + calculation in milliseconds"; + } + leaf backoff-algorithm { + type Isis-backoff-algorithm; + description + "Backoff algorithm to use"; + } + } + } + container monitor-convergence { + description + "Enable convergence monitoring"; + leaf enable { + type empty; + description + "Enable convergence monitoring"; + } + leaf track-ip-frr { + type empty; + description + "Enable the Tracking of IP-Frr Convergence"; + } + leaf prefix-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Enable the monitoring of individual + prefixes (prefix list name)"; + } + } + container default-information { + description + "Control origination of a default route with + the option of using a policy. If no policy + is specified the default route is + advertised with zero cost in level 2 only."; + leaf use-policy { + type boolean; + description + "Flag to indicate whether default + origination is controlled using a policy"; + } + leaf policy-name { + when "../use-policy != 'false'" { + description + "../UsePolicy != false"; + } + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Policy name"; + } + leaf external { + type empty; + description + "Flag to indicate that the default prefix + should be originated as an external route"; + } + } + container admin-distances { + description + "Per-route administrative + distanceconfiguration"; + list admin-distance { + key "address-prefix"; + description + "Administrative distance configuration. The + supplied distance is applied to all routes + discovered from the specified source, or + only those that match the supplied prefix + list if this is specified"; + leaf address-prefix { + type inet:ip-prefix; + description + "IP route source prefix"; + } + leaf distance { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Administrative distance"; + } + leaf prefix-list { + type string { + length "1..32"; + } + description + "List of prefixes to which this distance + applies"; + } + } + } + container ispf { + description + "ISPF configuration"; + container states { + description + "ISPF state (enable/disable)"; + list state { + key "level"; + description + "Enable/disable ISPF"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf state { + type Isisispf-state; + mandatory true; + description + "State"; + } + } + } + } + container prefix-unreachable { + description + "Prefix Unreachable Advertisement Parameters"; + leaf prefix-unreach-adv-lifetime { + type uint32 { + range "30..65535"; + } + description + "Configure Duration of Prefix Unreachable + Advertisement"; + } + leaf prefix-unreach-max { + type uint32 { + range "1..65535"; + } + description + "Configure maximum number of Prefix + Unreachable Advertisements"; + } + leaf prefix-unreach-metric { + type uint32 { + range "4261412865..4294967294"; + } + description + "Configure Metric of Prefix Unreachable + Advertisements"; + } + leaf prefix-unreach-rx-process-enable { + type empty; + description + "Enable Processing of Prefix Unreachable + Advertisements"; + } + } + container mpls-ldp-global { + description + "MPLS LDP configuration. MPLS LDP + configuration will only be applied for the + IPv4-unicast address-family."; + leaf auto-config { + type boolean; + description + "If TRUE, LDP will be enabled onall IS-IS + interfaces enabled for this address-family"; + } + } + container mpls { + description + "MPLS Traffic Engineering configuration. + MPLS TE configuration will only be applied + for the IPv4-unicast address-family."; + container router-id { + description + "Traffic Engineering stable IP address for + system"; + leaf address { + type inet:ipv4-address-no-zone; + must "not(../interface-name)"; + description + "IPv4 address to be used as a router ID. + Precisely one of Address and Interface + must be specified."; + } + leaf interface-name { + type xr:Interface-name; + must "not(../address)"; + description + "Interface with designated stable IP + address to be used as a router ID. This + must be a Loopback interface. Precisely + one of Address and Interface must be + specified."; + } + } + container level { + description + "Enable MPLS Traffic Engineering for IS-IS + at the given levels"; + leaf level1 { + type boolean; + description + "Level 1 enabled"; + } + leaf level2 { + type boolean; + description + "Level 2 enabled"; + } + } + container metrics { + description + "FA Tunnel Metric configuration"; + list metric { + key "level"; + description + "FA Tunnel Metric configuration"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf metric { + type uint32 { + range "1..16777215"; + } + mandatory true; + description + "Default FA tunnel metric"; + } + } + } + leaf tunnel-preferred { + type empty; + description + "Prefer TE tunnels over equal-cost physical + paths"; + } + leaf igp-intact { + type empty; + description + "Install TE and non-TE nexthops in the RIB"; + } + leaf multicast-intact { + type empty; + description + "Install non-TE nexthops in the RIB for use + by multicast"; + } + leaf tunnel-prefer-igp-cost { + type empty; + description + "Prefer anycast prefix with lowest IGP cost"; + } + leaf tunnel-restricted { + type empty; + description + "Use only primary TE tunnel for destination + IP address"; + } + } + container unlabeled-protection { + presence "Indicates a unlabeled-protection node is configured."; + status deprecated; + description + "SR-MPLS protection for prefixes without a + prefix SID"; + leaf filter-type { + type Isis-unlabeled-protection; + mandatory true; + description + "Type of prefix filtering for unlabeled + protection"; + } + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Prefix list to control unlabeled + protection"; + } + leaf route-policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Route policy to control unlabeled + protection"; + } + } + leaf maximum-paths { + type uint32 { + range "1..64"; + } + description + "Maximum number of active parallel paths per + route"; + } + leaf topology-id { + type uint32 { + range "6..4095"; + } + description + "Set the topology ID for a named + (non-default) topology. This object must be + set before any other configuration is + supplied for a named (non-default) topology + , and must be the last configuration object + to be removed. This item should not be + supplied for the non-named default + topologies."; + } + leaf single-topology { + type boolean; + description + "Run IPv6 Unicast using the standard (IPv4 + Unicast) topology"; + } + leaf adjacency-check { + type Isis-adj-check; + description + "Suppress check for consistent AF support on + received IIHs"; + } + leaf advertise-link-attributes { + type boolean; + description + "If TRUE, advertise additional link + attributes in our LSP"; + } + leaf apply-weight { + type Isis-apply-weight; + description + "Apply weights to UCMP or ECMP only"; + } + leaf default-admin-distance { + type uint32 { + range "1..255"; + } + default "115"; + description + "Default IS-IS administrative distance + configuration."; + } + leaf advertise-passive-only { + type empty; + description + "If enabled, advertise prefixes of passive + interfaces only"; + } + leaf ignore-attached-bit { + type boolean; + description + "If TRUE, Ignore other routers attached bit"; + } + leaf attached-bit { + type Isis-attached-bit; + default "area"; + description + "Set the attached bit in this router's level + 1 System LSP"; + } + leaf prot-adj-sid-deletion-delay { + type uint32 { + range "30..3600"; + } + description + "Protected adjacency SID deletion delay"; + } + leaf route-source-first-hop { + type boolean; + description + "If TRUE, routes will be installed with the + IP address of the first-hop node as the + source instead of the originating node"; + } + uses MANUAL-ADJ-SID-TABLE; + uses TE-METRIC-TABLE; + uses METRIC-TABLE; + uses WEIGHT-TABLE; + } + container af-data { + presence "Indicates a af-data node is configured."; + description + "Data container."; + uses AF-CONTENT; + } + leaf af-name { + type dt1:Isis-address-family; + description + "Address family"; + } + leaf saf-name { + type dt1:Isis-sub-address-family; + description + "Sub address family"; + } + list topology-name { + key "topology-name"; + description + "keys: topology-name"; + leaf topology-name { + type dt1:Isis-topology-name; + description + "Topology Name"; + } + uses AF-CONTENT; + } + } + } + container lsp-refresh-intervals { + description + "LSP refresh-interval configuration"; + list lsp-refresh-interval { + key "level"; + description + "Interval between re-flooding of unchanged + LSPs"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf interval { + type uint32 { + range "1..65535"; + } + units "second"; + mandatory true; + description + "Seconds"; + } + } + } + container distribute { + presence "enable distribute"; + description + "Distribute link-state configuration"; + leaf dist-inst-id { + type uint32 { + range "32..4294967295"; + } + description + "Instance ID"; + } + leaf level { + type Isis-configurable-levels; + description + "Level"; + } + leaf dist-throttle { + type uint32 { + range "1..20"; + } + units "second"; + description + "Seconds"; + } + } + container flex-algos { + description + "Flex-Algo Table"; + list flex-algo { + key "flex-algo"; + description + "Configuration for an IS-IS Flex-Algo"; + container affinity-include-anies { + description + "Set the include-any affinity"; + leaf-list affinity-include-any { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + container affinity-exclude-anies { + description + "Set the exclude-any affinity"; + leaf-list affinity-exclude-any { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + container affinity-include-alls { + description + "Set the include-all affinity"; + leaf-list affinity-include-all { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + container data-plane { + description + "Set the Flex-Algo Data-Plane"; + leaf segment-routing { + type boolean; + default "true"; + description + "If TRUE, use SR data-plane"; + } + leaf ip { + type boolean; + default "false"; + description + "If TRUE, use IP data-plane"; + } + } + container srlg-exclude-anies { + description + "Set the exclude-any SRLG"; + leaf-list srlg-exclude-any { + type string; + max-elements "32"; + description + "Array of SRLG Names"; + } + } + container flex-algo-afs { + description + "Per-interface address-family configuration"; + list flex-algo-af { + key "af-name saf-name"; + description + "Configuration for an IS-IS address-family + on a single interface. If a named + (non-default) topology is being created it + must be multicast. Also the topology ID + mustbe set first and delete last in the + router configuration."; + leaf running { + type empty; + description + "The presence of this object allows an + address-family to be run over the + interface in question.This must be the + first object created under the + InterfaceAddressFamily container, and the + last one deleted"; + } + leaf maximum-paths { + type uint32 { + range "1..64"; + } + description + "Maximum number of active parallel paths + per route"; + } + leaf af-name { + type dt1:Isis-address-family; + description + "Address family"; + } + leaf saf-name { + type dt1:Isis-sub-address-family; + description + "Sub address family"; + } + } + } + container reverse-affinity-include-anies { + description + "Set the reverse include-any affinity"; + leaf-list reverse-affinity-include-any { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + container reverse-affinity-exclude-anies { + description + "Set the reverse exclude-any affinity"; + leaf-list reverse-affinity-exclude-any { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + container reverse-affinity-include-alls { + description + "Set the reverse 1include-all affinity"; + leaf-list reverse-affinity-include-all { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + leaf prefix-metric { + type empty; + description + "Use Flex-algo Prefix Metric"; + } + leaf running { + type empty; + description + "This object must be set before any other + configuration is supplied for an interface, + and must be the last per-interface + configuration object to be removed."; + } + leaf micoloop-avoidance-disable { + type boolean; + description + "If TRUE, FRR protectinn is disabled for the + Flex-Algo."; + } + leaf metric-type { + type uint32 { + range "1..2"; + } + description + "Set the Flex-Algo metric-type"; + } + leaf priority { + type uint32 { + range "0..255"; + } + description + "Set the Flex-Algo priority"; + } + leaf frr-disable { + type boolean; + description + "If TRUE, FRR protectinn is disabled for the + Flex-Algo."; + } + leaf advertise-definition { + type boolean; + description + "If TRUE, Flex-Algo definition is advertised"; + } + leaf flex-algo { + type uint32 { + range "128..255"; + } + description + "Flex Algo"; + } + } + } + container multi-part-tlv-disables { + description + "Multi-part tlv disable configuration"; + list multi-part-tlv-disable { + key "level"; + description + "Multi-part tlv disable"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf neighbor { + type boolean; + default "false"; + description + "Disable multi-part Neighbor TLVs"; + } + leaf prefix { + type boolean; + default "false"; + description + "Disable multi-part Prefix TLVs"; + } + leaf router-capability { + type boolean; + default "false"; + description + "Disable multi-part Router-capability TLVs"; + } + } + } + container affinity-mappings { + description + "Affinity Mapping Table"; + list affinity-mapping { + key "affinity-name"; + description + "Affinity Mapping configuration"; + leaf affinity-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Affinity Name"; + } + leaf value { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Bit position"; + } + } + } + container lsp-accept-passwords { + description + "LSP/SNP accept password configuration"; + list lsp-accept-password { + key "level"; + description + "LSP/SNP accept passwords. This requires the + existence of an LSPPassword of the same level + ."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf password { + type xr:Proprietary-password; + mandatory true; + description + "Password"; + } + } + } + container lsp-mtus { + description + "LSP MTU configuration"; + list lsp-mtu { + key "level"; + description + "LSP MTU"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf mtu { + type uint32 { + range "128..8979"; + } + units "byte"; + mandatory true; + description + "Bytes"; + } + } + } + container standard-algos { + description + "Standard-Algo Table"; + list standard-algo { + key "standard-algo"; + description + "Configuration for an IS-IS Standard-Algo"; + container standard-algo-afs { + description + "Per-interface address-family configuration"; + list standard-algo-af { + key "af-name saf-name"; + description + "Configuration for an IS-IS address-family + on a single interface. If a named + (non-default) topology is being created it + must be multicast. Also the topology ID + mustbe set first and delete last in the + router configuration."; + leaf running { + type empty; + description + "The presence of this object allows an + address-family to be run over the + interface in question.This must be the + first object created under the + InterfaceAddressFamily container, and the + last one deleted"; + } + leaf maximum-paths { + type uint32 { + range "1..64"; + } + description + "Maximum number of active parallel paths + per route"; + } + leaf af-name { + type dt1:Isis-address-family; + description + "Address family"; + } + leaf saf-name { + type dt1:Isis-sub-address-family; + description + "Sub address family"; + } + } + } + leaf running { + type empty; + description + "This object must be set before any other + configuration is supplied for an interface, + and must be the last per-interface + configuration object to be removed."; + } + leaf standard-algo { + type uint32 { + range "0"; + } + description + "Standard Algo"; + } + } + } + container srlg-table { + description + "SRLG configuration"; + container srlg-names { + description + "SRLG named configuration"; + list srlg-name { + key "srlg-name"; + description + "Configuration for an IS-IS SRLG"; + container from-tos { + description + "Configure Static Remote SRLG"; + list from-to { + key "local-ipv4-address remote-ipv4-address"; + description + "Local and remote addresses of a link"; + leaf local-ipv4-address { + type inet:ipv4-address-no-zone; + description + "Local IPv4 address"; + } + leaf remote-ipv4-address { + type inet:ipv4-address-no-zone; + description + "Remote IPv4 address"; + } + } + } + leaf admin-weight { + type uint32 { + range "0..16777215"; + } + description + "Configure SRLG Admin Weight"; + } + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Srlg name"; + } + } + } + leaf srlg-admin-weight-default { + type uint32 { + range "0..16777215"; + } + description + "Configure Default SRLG Admin Weight"; + } + } + container nsf { + description + "IS-IS NSF configuration"; + leaf flavor { + type Isis-nsf-flavor; + description + "NSF not configured if item is deleted"; + } + leaf interface-timer { + type uint32 { + range "1..20"; + } + units "second"; + default "1"; + description + "Per-interface time period to wait for a + restart ACK during an IETF-NSF restart. This + configuration has no effect if IETF-NSF is + not configured"; + } + leaf max-interface-timer-expiry { + type uint32 { + range "1..10"; + } + default "10"; + description + "Maximum number of times an interface timer + may expire during an IETF-NSF restart before + the NSF restart is aborted. This + configuration has no effect if IETF NSF is + not configured."; + } + leaf lifetime { + type uint32 { + range "5..300"; + } + units "second"; + default "90"; + description + "Maximum route lifetime following restart. + When this lifetime expires, old routes will + be purged from the RIB."; + } + } + container link-groups { + description + "Link Group"; + list link-group { + key "link-group-name"; + description + "Configuration for link group name"; + leaf metric-offset { + type uint32 { + range "0..16777215"; + } + description + "Metric for redistributed routes: <0-63> for + narrow, <0-16777215> for wide"; + } + leaf revert-members { + type uint32 { + range "2..64"; + } + default "2"; + description + "Revert Members"; + } + leaf minimum-members { + type uint32 { + range "2..64"; + } + default "2"; + description + "Minimum Members"; + } + leaf link-group-name { + type dt1:Isis-link-group-name; + description + "Link Group Name"; + } + } + } + container lsp-check-intervals { + description + "LSP checksum check interval configuration"; + list lsp-check-interval { + key "level"; + description + "LSP checksum check interval parameters"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf interval { + type uint32 { + range "10..65535"; + } + units "second"; + mandatory true; + description + "LSP checksum check interval time in seconds"; + } + } + } + container lsp-passwords { + description + "LSP/SNP password configuration"; + list lsp-password { + key "level"; + description + "LSP/SNP passwords. This must exist if an + LSPAcceptPassword of the same level exists."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf algorithm { + type Isis-authentication-algorithm; + mandatory true; + description + "Algorithm"; + } + leaf failure-mode { + type Isis-authentication-failure-mode; + mandatory true; + description + "Failure Mode"; + } + leaf authentication-type { + type Isis-snp-auth; + mandatory true; + description + "SNP packet authentication mode"; + } + leaf password { + type xr:Proprietary-password; + mandatory true; + description + "Password or unencrypted Key Chain name"; + } + leaf enable-poi { + type Isis-enable-poi; + description + "Enable POI"; + } + } + } + container nets { + description + "NET configuration"; + list net { + key "net-name"; + description + "Network Entity Title (NET)"; + leaf net-name { + type xr:Osi-net; + description + "Network Entity Title"; + } + } + } + container lsp-lifetimes { + description + "LSP lifetime configuration"; + list lsp-lifetime { + key "level"; + description + "Maximum LSP lifetime"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf lifetime { + type uint32 { + range "1..65535"; + } + units "second"; + mandatory true; + description + "Seconds"; + } + } + } + container overload-bits { + description + "LSP overload-bit configuration"; + list overload-bit { + key "level"; + description + "Set the overload bit in the System LSP so + that other routers avoid this one in SPF + calculations. This may be done either + unconditionally, or on startup until either a + set time has passed or IS-IS is informed that + BGP has converged. This is an Object with a + union discriminated on an integer value of + the ISISOverloadBitModeType."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf overload-bit-mode { + type Isis-overload-bit-mode; + description + "Circumstances under which the overload bit + is set in the system LSP"; + } + leaf hippity-period { + when "../overload-bit-mode = 'startup-period'" { + description + "../OverloadBitMode = StartupPeriod"; + } + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time in seconds to advertise ourself as + overloaded after process startup"; + } + leaf external-adv-type { + type Isis-adv-type-external; + description + "Advertise prefixes from other protocols"; + } + leaf inter-level-adv-type { + type Isis-adv-type-inter-level; + description + "Advertise prefixes across ISIS levels"; + } + } + } + container interfaces { + description + "Per-interface configuration"; + list interface { + key "interface-name"; + description + "Configuration for an IS-IS interface"; + container int-affinity-table { + description + "Interface Affinity Table"; + container flex-algos { + description + "Set the interface affinities used by + Flex-Algo"; + leaf-list flex-algo { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + container flex-algo-anomalies { + description + "Set the interface affinities used by + Flex-Algo when a link anomaly condition is + in effect"; + leaf-list flex-algo-anomaly { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + } + container lsp-retransmit-throttle-intervals { + description + "LSP-retransmission-throttle-interval + configuration"; + list lsp-retransmit-throttle-interval { + key "level"; + description + "Minimum interval betwen retransissions of + different LSPs"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf interval { + type uint32 { + range "0..65535"; + } + units "millisecond"; + mandatory true; + description + "Milliseconds"; + } + } + } + container lsp-retransmit-intervals { + description + "LSP-retransmission-interval configuration"; + list lsp-retransmit-interval { + key "level"; + description + "Interval between retransmissions of the + same LSP"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf interval { + type uint32 { + range "0..65535"; + } + units "second"; + mandatory true; + description + "Seconds"; + } + } + } + container bfd { + description + "BFD configuration"; + leaf enable-ipv6 { + type boolean; + description + "TRUE to enable BFD. FALSE to disable and to + prevent inheritance from a parent"; + } + leaf enable-ipv4 { + type boolean; + description + "TRUE to enable BFD. FALSE to disable and to + prevent inheritance from a parent"; + } + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval for BFD sessions created by + isis"; + } + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detection multiplier for BFD sessions + created by isis"; + } + } + container priorities { + description + "DIS-election priority configuration"; + list priority { + key "level"; + description + "DIS-election priority"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf priority-value { + type uint32 { + range "0..127"; + } + mandatory true; + description + "Priority"; + } + } + } + container hello-accept-passwords { + description + "IIH accept password configuration"; + list hello-accept-password { + key "level"; + description + "IIH accept passwords. This requires the + existence of a HelloPassword of the same + level."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf password { + type xr:Proprietary-password; + mandatory true; + description + "Password"; + } + } + } + container hello-passwords { + description + "IIH password configuration"; + list hello-password { + key "level"; + description + "IIH passwords. This must exist if a + HelloAcceptPassword of the same level + exists."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf algorithm { + type Isis-authentication-algorithm; + mandatory true; + description + "Algorithm"; + } + leaf failure-mode { + type Isis-authentication-failure-mode; + mandatory true; + description + "Failure Mode"; + } + leaf password { + type xr:Proprietary-password; + mandatory true; + description + "Password or unencrypted Key Chain name"; + } + } + } + container hello-paddings { + description + "Hello-padding configuration"; + list hello-padding { + key "level"; + description + "Pad IIHs to the interface MTU"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf padding-type { + type Isis-hello-padding; + mandatory true; + description + "Hello padding type value"; + } + } + } + container hello-multipliers { + description + "Hello-multiplier configuration"; + list hello-multiplier { + key "level"; + description + "Hello-multiplier configuration. The number + of successive IIHs that may be missed on an + adjacency before it is considered down."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf multiplier { + type uint32 { + range "3..1000"; + } + mandatory true; + description + "Hello multiplier value"; + } + } + } + container lsp-fast-flood-thresholds { + description + "LSP fast flood threshold configuration"; + list lsp-fast-flood-threshold { + key "level"; + description + "Number of LSPs to send back to back on an + interface."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf count { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Count"; + } + } + } + container prefix-attribute-n-flag-clears { + description + "Prefix attribute N flag clear configuration"; + list prefix-attribute-n-flag-clear { + key "level"; + description + "Clear the N flag in prefix attribute flags + sub-TLV"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + } + } + container prefix-attribute-anycasts { + description + "Prefix attribute A flag configuration"; + list prefix-attribute-anycast { + key "level"; + description + "Set the A flag in prefix attribute flags + sub-TLV"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + } + } + container hello-intervals { + description + "Hello-interval configuration"; + list hello-interval { + key "level"; + description + "Hello-interval configuration. The interval + at which IIH packets will be sent. This + will be three times quicker on a LAN + interface which has been electted DIS."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf interval { + type uint32 { + range "1..65535"; + } + units "second"; + mandatory true; + description + "Seconds"; + } + } + } + container delay-normalize { + presence "Indicates a delay-normalize node is configured."; + description + "Normalize Delay"; + leaf interval { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Normalization Interval"; + } + leaf offset { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Normalization Offset"; + } + } + container override-metrics { + description + "Override metrics configuration"; + list override-metric { + key "level"; + description + "Override metrics"; + leaf level { + type Isis-no-level; + description + "Level to which configuration applies"; + } + leaf metric { + type Isis-override-metrics; + mandatory true; + description + "Metric"; + } + } + } + container interface-afs { + description + "Per-interface address-family configuration"; + list interface-af { + must "interface-af-data or topology-name" { + description + "interface-af-data or topology-name must be + present."; + } + key "af-name saf-name"; + description + "Configuration for an IS-IS address-family + on a single interface. If a named + (non-default) topology is being created it + must be multicast. Also the topology ID + mustbe set first and delete last in the + router configuration."; + + grouping INTERFACE-AF-CONTENT { + description + "Content grouping."; + container prefix-sid { + presence "Indicates a prefix-sid node is configured."; + description + "Assign prefix SID to an interface, + ISISEXPLICITNULLFlag will override the + value of ISISPHPFlag"; + leaf type { + type Isissid1; + mandatory true; + description + "SID type for the interface"; + } + leaf value { + type uint32 { + range "0..1048575"; + } + mandatory true; + description + "SID value for the interface"; + } + leaf php { + type Isisphp-flag; + description + "Enable/Disable Penultimate Hop Popping"; + } + leaf explicit-null { + type Isisexplicit-null-flag; + description + "Enable/Disable Explicit-NULL flag"; + } + leaf nflag-clear { + type Nflag-clear; + description + "Clear N-flag for the prefix-SID"; + } + } + container advertise-prefixes { + description + "advertise prefix configuration"; + list advertise-prefix { + key "level"; + description + "Route-policy for advertised interface + connected routes"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf route-policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Route policy for advertising interface + connected routes"; + } + } + } + container interface-frr-table { + description + "Fast-ReRoute configuration"; + container frrlfa-candidate-interfaces { + description + "FRR LFA candidate configuration"; + list frrlfa-candidate-interface { + key "interface-name frr-type"; + description + "Include an interface to LFA candidate + in computation"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf frr-type { + type Isisfrr; + description + "Computation Type"; + } + leaf level { + type uint32 { + range "0..2"; + } + mandatory true; + description + "Level"; + } + } + } + container frr-remote-lfa-max-metrics { + description + "Remote LFA maxmimum metric"; + list frr-remote-lfa-max-metric { + key "level"; + description + "Configure the maximum metric for + selecting a remote LFA node"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf max-metric { + type uint32 { + range "1..16777215"; + } + mandatory true; + description + "Value of the metric"; + } + } + } + container frr-types { + description + "Type of FRR computation per level"; + list frr-type { + key "level"; + description + "Type of computation for prefixes + reachable via interface"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf type { + type Isisfrr; + mandatory true; + description + "Computation Type"; + } + } + } + container frr-remote-lfa-types { + description + "Remote LFA Enable"; + list frr-remote-lfa-type { + key "level"; + description + "Enable remote lfa for a particular + level"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf type { + type Isis-remote-lfa; + mandatory true; + description + "Remote LFA Type"; + } + } + } + container interface-frr-tiebreaker-defaults { + description + "Interface FRR Default tiebreaker + configuration"; + list interface-frr-tiebreaker-default { + key "level"; + description + "Configure default tiebreaker"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + } + } + container frrtilfa-types { + description + "TI LFA Enable"; + list frrtilfa-type { + key "level"; + description + "Enable TI lfa for a particular level"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + } + } + container frr-exclude-interfaces { + description + "FRR exclusion configuration"; + list frr-exclude-interface { + key "interface-name frr-type"; + description + "Exclude an interface from computation"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf frr-type { + type Isisfrr; + description + "Computation Type"; + } + leaf level { + type uint32 { + range "0..2"; + } + mandatory true; + description + "Level"; + } + } + } + container interface-frr-tiebreakers { + description + "Interface FRR tiebreakers configuration"; + list interface-frr-tiebreaker { + key "level tiebreaker"; + description + "Configure tiebreaker for multiple + backups"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf tiebreaker { + type Isis-interface-frr-tiebreaker; + description + "Tiebreaker for which configuration + applies"; + } + leaf index { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Preference order among tiebreakers"; + } + } + } + } + container metric-fallback-bandwidth { + presence "Indicates a metric-fallback-bandwidth node is configured."; + description + "metric fallback bandwidth configuration"; + leaf multiplier { + type uint32 { + range "2..100000"; + } + mandatory true; + description + "Multiplier"; + } + leaf threshold { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Threshold"; + } + leaf increment { + type uint32 { + range "0..16777214"; + } + description + "Reserved for future use"; + } + leaf maximum { + type boolean; + description + "Reserved for future use"; + } + } + container mpls-ldp { + description + "MPLS LDP configuration"; + leaf sync-level { + type uint32 { + range "0..2"; + } + default "0"; + description + "Enable MPLS LDP Synchronization for an + IS-IS level"; + } + } + container metric-fallback-anomalies { + description + "metric fallback anomaly configuration"; + list metric-fallback-anomaly { + key "metric-type level"; + description + "metric fallback anomaly configuration"; + leaf metric-type { + type Isis-metric-fallback-metric; + description + "Metric type to which configuration + applies"; + } + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf multiplier { + type uint32 { + range "2..100000"; + } + description + "Multiplier"; + } + leaf type { + type Isis-metric-fallback-anomaly-mode; + mandatory true; + description + "Type"; + } + leaf increment { + type uint32 { + range "1..16777213"; + } + description + "Increment"; + } + leaf maximum { + type boolean; + description + "Maximum"; + } + } + } + container prefix-sspfsid { + presence "Indicates a prefix-sspfsid node is configured."; + description + "Assign prefix SSPF SID to an interface, + ISISEXPLICITNULLFlag will override the + value of ISISPHPFlag"; + leaf type { + type Isissid1; + mandatory true; + description + "SID type for the interface"; + } + leaf value { + type uint32 { + range "0..1048575"; + } + mandatory true; + description + "SID value for the interface"; + } + leaf php { + type Isisphp-flag; + description + "Enable/Disable Penultimate Hop Popping"; + } + leaf explicit-null { + type Isisexplicit-null-flag; + description + "Enable/Disable Explicit-NULL flag"; + } + leaf nflag-clear { + type Nflag-clear; + description + "Clear N-flag for the prefix-SID"; + } + } + container algorithm-prefix-sids { + description + "Algorithm SID Table"; + list algorithm-prefix-sid { + key "algo"; + description + "Assign prefix SID for algorithm to an + interface, ISISEXPLICITNULLFlag will + override the value of ISISPHPFlag"; + leaf algo { + type uint32 { + range "128..255"; + } + description + "Algorithm"; + } + leaf type { + type Isissid1; + mandatory true; + description + "SID type for the interface"; + } + leaf value { + type uint32 { + range "0..1048575"; + } + mandatory true; + description + "SID value for the interface"; + } + leaf php { + type Isisphp-flag; + description + "Enable/Disable Penultimate Hop Popping"; + } + leaf explicit-null { + type Isisexplicit-null-flag; + description + "Enable/Disable Explicit-NULL flag"; + } + leaf nflag-clear { + type Nflag-clear; + description + "Clear N-flag for the prefix-SID"; + } + } + } + container auto-metrics { + description + "AutoMetric configuration"; + list auto-metric { + key "level"; + description + "AutoMetric Proactive-Protect + configuration. Legal value depends on + the metric-style specified for the + topology. If the metric-style defined is + narrow, then only a value between <1-63> + is allowed and if the metric-style is + defined as wide, then a value between + <1-16777214> is allowed as the + auto-metric value."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf proactive-protect { + type uint32 { + range "1..16777214"; + } + mandatory true; + description + "Allowed auto metric:<1-63> for narrow + ,<1-16777214> for wide"; + } + } + } + container admin-tags { + description + "admin-tag configuration"; + list admin-tag { + key "level"; + description + "Admin tag for advertised interface + connected routes"; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf admin-tag { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Tag to associate with connected routes"; + } + } + } + container interface-link-group { + presence "Indicates a interface-link-group node is configured."; + description + "Provide link group name and level"; + leaf link-group { + type dt1:Isis-link-group-name; + mandatory true; + description + "Link Group"; + } + leaf level { + type uint32 { + range "0..2"; + } + default "0"; + description + "Level in which link group will be + effective"; + } + } + leaf interface-af-state { + type Isis-interface-af-state; + description + "Interface state"; + } + leaf running { + type empty; + description + "The presence of this object allows an + address-family to be run over the + interface in question.This must be the + first object created under the + InterfaceAddressFamily container, and the + last one deleted"; + } + uses MANUAL-ADJ-SID-TABLE; + uses TE-METRIC-TABLE; + uses METRIC-TABLE; + uses WEIGHT-TABLE; + } + container interface-af-data { + description + "Data container."; + uses INTERFACE-AF-CONTENT; + } + leaf af-name { + type dt1:Isis-address-family; + description + "Address family"; + } + leaf saf-name { + type dt1:Isis-sub-address-family; + description + "Sub address family"; + } + list topology-name { + key "topology-name"; + description + "keys: topology-name"; + leaf topology-name { + type dt1:Isis-topology-name; + description + "Topology Name"; + } + uses INTERFACE-AF-CONTENT; + } + } + } + container csnp-intervals { + description + "CSNP-interval configuration"; + list csnp-interval { + key "level"; + description + "CSNP-interval configuration. No fixed + default value as this depends on the media + type of the interface."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf interval { + type uint32 { + range "0..65535"; + } + units "second"; + mandatory true; + description + "Seconds"; + } + } + } + container lsp-intervals { + description + "LSP-interval configuration"; + list lsp-interval { + key "level"; + description + "Interval between transmission of LSPs on + interface."; + leaf level { + type dt1:Isis-internal-level; + description + "Level to which configuration applies"; + } + leaf interval { + type uint32 { + range "1..4294967295"; + } + units "millisecond"; + mandatory true; + description + "Milliseconds"; + } + } + } + leaf running { + type empty; + description + "This object must be set before any other + configuration is supplied for an interface, + and must be the last per-interface + configuration object to be removed."; + } + leaf circuit-type { + type Isis-configurable-levels; + default "level1-and2"; + description + "Configure circuit type for interface"; + } + leaf point-to-point { + type empty; + description + "IS-IS will attempt to form point-to-point + over LAN adjacencies over this interface."; + } + leaf state { + type Isis-interface-state; + description + "Enable/Disable routing"; + } + leaf mesh-group { + type union { + type enumeration { + enum "blocked" { + value 0; + description + "Blocked mesh group. Changed LSPs are not + flooded over blocked interfaces"; + } + } + type uint32 { + range "0..4294967295"; + } + } + description + "Mesh-group configuration"; + } + leaf link-down-fast-detect { + type empty; + description + "Configure high priority detection of + interface down event"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + leaf running { + type empty; + description + "Flag to indicate that instance should be + running. This must be the first object + created when an IS-IS instance is configured, + and the last object deleted when it is + deconfigured. When this object is deleted, + the IS-IS instance will exit."; + } + leaf log-adjacency-changes { + type empty; + description + "Log changes in adjacency state"; + } + leaf ignore-lsp-errors { + type boolean; + description + "If TRUE, LSPs recieved with bad checksums will + result in the purging of that LSP from the LSP + DB. If FALSE or not set, the received LSP will + just be ignored."; + } + leaf is-type { + type Isis-configurable-levels; + default "level1-and2"; + description + "IS type of the IS-IS process"; + } + leaf tracing-mode { + type Isis-tracing-mode; + default "basic"; + description + "Tracing mode configuration"; + } + leaf vrf-context { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF context for ISIS process"; + } + leaf eag-mode { + type Isis-eag-mode; + default "cisco"; + description + "Extended Admin Group configuration"; + } + leaf log-format-brief { + type empty; + description + "Don't add additional information to ISIS + syslog messages"; + } + leaf instance-id { + type uint32 { + range "0..65535"; + } + default "0"; + description + "Instance ID of the IS-IS process"; + } + leaf auth-check-disable { + type boolean; + description + "If TRUE, authenticatin check is disabled for + all ISIS PDUs."; + } + leaf dynamic-host-name { + type boolean; + description + "If TRUE, dynamic hostname resolution is + disabled, and system IDs will always be + displayed by show and debug output."; + } + leaf purge-transmit-strict { + type Isis-configurable-level; + default "level-12"; + description + "Allow only authentication TLV in purge LSPs"; + } + leaf lsp-fast-flood { + type empty; + description + "LSP fast flooding configuration"; + } + leaf nsr { + type empty; + description + "IS-IS NSR configuration"; + } + leaf hello-padding { + type Isis-hello-padding; + description + "Hello padding type value"; + } + leaf receive-application-flex-algo-delay-app { + type empty; + description + "Receive Application Flex Algo Delay App + configuration"; + } + leaf log-pdu-drops { + type empty; + description + "Log PDU drops"; + } + leaf instance-name { + type dt1:Isis-instance-name; + description + "Instance identifier"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-datatypes.yang new file mode 100644 index 000000000..bedc6b77b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-datatypes.yang @@ -0,0 +1,200 @@ +module Cisco-IOS-XR-clns-isis-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-clns-isis-datatypes"; + prefix clns-isis-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-30 { + description + "add ISISVrfName datatype"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Isis-address-family { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4"; + } + enum "ipv6" { + value 1; + description + "IPv6"; + } + } + description + "Isis address family"; + } + + typedef Isis-ipv6-prefix-length { + type uint32 { + range "0..128"; + } + description + "Isis ipv6 prefix length"; + } + + typedef Isis-packet-count-direction { + type enumeration { + enum "sending" { + value 1; + description + "Packets sent"; + } + enum "receiving" { + value 2; + description + "Packets received"; + } + } + description + "Isis packet count direction"; + } + + typedef Isis-vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Isis vrf name"; + } + + typedef Isis-ipv4-prefix-length { + type uint32 { + range "0..32"; + } + description + "Isis ipv4 prefix length"; + } + + typedef Isis-locator-name { + type xr:Cisco-ios-xr-string { + length "1..60"; + } + description + "Isis locator name"; + } + + typedef Isis-instance-name { + type xr:Cisco-ios-xr-string { + length "1..36"; + } + description + "Isis instance name"; + } + + typedef Isis-circuit { + type enumeration { + enum "lanlevel1" { + value 1; + description + "Lan level 1"; + } + enum "lanlevel2" { + value 2; + description + "Lan level 2"; + } + enum "p2pcircuit" { + value 3; + description + "point to point"; + } + } + description + "Isis circuit"; + } + + typedef Isis-internal-level { + type enumeration { + enum "not-set" { + value 0; + description + "Level not set"; + } + enum "level1" { + value 1; + description + "Level1"; + } + enum "level2" { + value 2; + description + "Level2"; + } + } + description + "Isis internal level"; + } + + typedef Isis-link-group-name { + type xr:Cisco-ios-xr-string { + length "1..40"; + } + description + "Isis link group name"; + } + + typedef Isis-sub-address-family { + type enumeration { + enum "unicast" { + value 0; + description + "Unicast"; + } + enum "multicast" { + value 1; + description + "Multicast"; + } + } + description + "Isis sub address family"; + } + + typedef Isis-topology-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Isis topology name"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub1.yang new file mode 100644 index 000000000..ec460503a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub1.yang @@ -0,0 +1,10983 @@ +submodule Cisco-IOS-XR-clns-isis-oper-sub1 { + belongs-to Cisco-IOS-XR-clns-isis-oper { + prefix Cisco-IOS-XR-clns-isis-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR clns-isis package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-12 { + description + "Add show isis database unauthenticated + 2022-07-30 + Add Flex-algo Reverse Affinity support + 2022-07-28 + Add ISIS UHP support + 2022-04-23 + add ISIS UPA support + 2022-03-04 + add ISIS process and job IDs + 2022-01-30 + add per-area, per topology statistic indexed list. + 2022-01-11 + add show isis neighbor summary statistic info. IosSetYangSchemaRev Cisco-IOS-XR-clns-isis-cfg + 2021-09-03 + Show output added for IP Flex-algo."; + semver:module-version "4.2.0"; + } + revision 2021-07-07 { + description + "Add timestamp and age to isis local rib routes."; + semver:module-version "4.1.0"; + } + revision 2021-03-13 { + description + "Interface bandwidth changed from uint32_t to uint64_t + 2021-01-04 + Add private adjacency bag + 2020-11-05 + Flex-algo extension for show isis topology. + 2020-10-27 + Add a new type Isis-flex-algo-metric for flex-algo metrics and change the metric-type leaf in ISIS-SH-FLEX-ALGO-AREA to use it. + 2020-10-20 + Change in Yang tool corrected strings repair-s-rv6* to repair-srv6*, end-xsid* to end-x-sid*, and is-s-rv6 to is-srv6. Changed avg-dela-rawy to avg-delay-raw to fix misspelling via CSCvu63930. Changed SRv6 function-type to sid-behavior, uint32_t to mgmt_srv6_sid_fmt, and num-sid to num-sids for consistency and to comply with current IETF ISIS SRv6 draft via CSCvu06764."; + semver:module-version "4.0.0"; + } + revision 2020-05-12 { + description + "Added SRLG and SRLG Static + 2020-03-25 + Added operational data for new features."; + semver:module-version "3.0.0"; + } + revision 2019-09-25 { + description + "Added operational data for new features + 2019-05-14 + Conditional Advertise-prefix support + 2019-05-03 + move ocni-isis opencfg model from native model to private oper model"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-28 { + description + "Upgrade ocni-isis to opencfg model version 0.4.2"; + } + revision 2019-02-23 { + description + "Added is_srv6 flag to ISIS IPv6 route"; + } + revision 2019-02-16 { + description + "Added interface link-group name"; + } + revision 2018-10-15 { + description + "Add SRv6 configured locators"; + } + revision 2018-10-04 { + description + "Update SRv6 locator table"; + } + revision 2018-05-17 { + description + "Update opencfg isis model"; + } + revision 2018-04-07 { + description + "Update SRv6 definitions to draft-filsfils-spring-srv6-network-programming-04"; + } + revision 2018-01-24 { + description + "Added SRLG TILFA operation CLI."; + } + revision 2017-12-06 { + description + "Add segment-routing srv6"; + } + revision 2017-08-08 { + description + "Add openconfig network instance model isis telemetry EDM function support."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Isis-overload-bit-mode { + type enumeration { + enum "isis-overload-bit-unset" { + value 0; + description + "Overload bit not set"; + } + enum "isis-overload-bit-set" { + value 1; + description + "Overload bit permanently set"; + } + enum "isis-overload-bit-on-startup-period" { + value 2; + description + "overload bit is set for a timed period when an + area starts"; + } + enum "isis-overload-bit-on-startup-bgp" { + value 3; + description + "overload bit set until BGP has converged"; + } + } + description + "Isis overload bit mode"; + } + + typedef Isis-max-metric-mode { + type enumeration { + enum "isis-max-metric-unset" { + value 0; + description + "max metric not set"; + } + enum "isis-max-metric-set" { + value 1; + description + "max metric always set"; + } + enum "isis-max-metric-on-startup-period" { + value 2; + description + "max metric is set for a timed period when an + area starts"; + } + enum "isis-max-metric-on-startup-bgp" { + value 3; + description + "max metric set until BGP has converged"; + } + } + description + "Isis max metric mode"; + } + + typedef Isis-uloop-event { + type enumeration { + enum "isis-u-loop-event-none" { + description + "Undefined microloop-avoidance event"; + } + enum "isis-u-loop-event-link-down" { + description + "A link went down"; + } + enum "isis-u-loop-event-link-up" { + description + "A link went up"; + } + enum "isis-u-loop-event-ol-bit-set" { + description + "A router has set its overload-bit"; + } + enum "isis-u-loop-event-ol-bit-unset" { + description + "A router has unset its overload-bit"; + } + enum "isis-nr-of-u-loop-event-s" { + description + "Wrong microloop-avoidance event id"; + } + } + description + "Isis uloop event"; + } + + typedef Isis-uloop-avoidance { + type enumeration { + enum "isis-u-loop-avoidance-type-none" { + value 0; + description + "No MicroLoop avoidance"; + } + enum "isis-u-loop-avoidance-type-all" { + value 1; + description + "Apply MicroLoop avoidance for all prefixes"; + } + enum "isis-u-loop-avoidance-type-protected" { + value 2; + description + "Apply MicroLoop avoidance only for protected + prefixes"; + } + enum "isis-u-loop-avoidance-type-sr" { + value 3; + description + "Segment Routing MicroLoop avoidance for All + single-link changes"; + } + } + description + "Isis uloop avoidance"; + } + + typedef Isis-metric-style { + type enumeration { + enum "isis-metric-style-narrow" { + value 0; + description + "old-style (ISO 10589) metrics"; + } + enum "isis-metric-style-wide" { + value 1; + description + "new-style 32-bit metrics"; + } + enum "isis-metric-style-transition" { + value 2; + description + "send/accept both forms of metric"; + } + enum "isis-metric-style-narrow-transition" { + value 3; + description + "send old-style (ISO 10589) metrics but accept + both"; + } + enum "isis-metric-style-wide-transition" { + value 4; + description + "send new-style 32-bit metrics but accept both"; + } + } + description + "Isis metric style"; + } + + typedef Isis-startup-status { + type enumeration { + enum "isis-startup-ssm-active" { + description + "Startup-state-machine controlled restart in + progress"; + } + enum "isis-startup-ssm-complete" { + description + "Startup-state-machine controlled restart + complete"; + } + enum "isis-startup-ssm-aborted" { + description + "Startup-state-machine controlled restart + aborted"; + } + enum "isis-startup-ssm-not-run" { + description + "Startup-state-machine controlled not attempted"; + } + } + description + "Isis startup status"; + } + + typedef Isis-nsf-flavor { + type enumeration { + enum "isis-nsf-protocol-none" { + value 0; + description + "NSF not configured"; + } + enum "isis-nsf-protocol-cisco" { + value 1; + description + "Internal checkpoint NSF"; + } + enum "isis-nsf-protocol-ietf" { + value 2; + description + "IETF-standard NSF"; + } + enum "isis-nsf-protocol-nsr" { + value 3; + description + "Cisco-proprietary NSR"; + } + } + description + "Isis nsf flavor"; + } + + typedef Isis-edm-label-type-enum { + type enumeration { + enum "isis-edm-label-alloc-prefix-sid" { + value 0; + description + "isis edm label alloc prefix sid"; + } + enum "isis-edm-label-alloc-local-sid" { + value 1; + description + "isis edm label alloc local sid"; + } + enum "isis-edm-label-alloc-max" { + value 2; + description + "isis edm label alloc max"; + } + } + description + "isislabeltype"; + } + + typedef Isis-err-log-level { + type enumeration { + enum "isis-err-log-level-info" { + value 0; + description + "isis err log level info"; + } + enum "isis-err-log-level-warn" { + value 1; + description + "isis err log level warn"; + } + enum "isis-err-log-level-critical" { + value 2; + description + "isis err log level critical"; + } + } + description + "Isis err log level"; + } + + typedef Isis-prot-supp { + type uint8; + description + "Isis prot supp"; + } + + typedef Isis-flex-algo-metric { + type enumeration { + enum "isis-flex-metric-igp" { + value 0; + description + "IGP metric"; + } + enum "isis-flex-metric-min-delay" { + value 1; + description + "Minimum link delay"; + } + enum "isis-flex-metric-te" { + value 2; + description + "Traffic Engineering metric"; + } + } + description + "Isis flex algo metric"; + } + + typedef Isis-if-af-prefix-unknown-reason { + type enumeration { + enum "isis-intf-af-prefix-unknown-adv-suppressed" { + description + "isis intf af prefix unknown adv suppressed"; + } + enum "isis-intf-af-prefix-unknown-global-addr-reg-error" { + description + "isis intf af prefix unknown global addr reg + error"; + } + enum "isis-intf-af-prefix-unknown-internal-error" { + description + "isis intf af prefix unknown internal error"; + } + } + description + "Isis if af prefix unknown reason"; + } + + typedef Isis-if-af-fwd-addr-unknown-reason { + type enumeration { + enum "isis-intf-af-fwd-addr-unknown-cfg-passive" { + description + "isis intf af fwd addr unknown cfg passive"; + } + enum "isis-intf-af-fwd-addr-unknown-proto-doesnt-exist" { + description + "isis intf af fwd addr unknown proto doesnt + exist"; + } + enum "isis-intf-af-fwd-addr-unknown-next-hop-reg-error" { + description + "isis intf af fwd addr unknown next hop reg + error"; + } + enum "isis-intf-af-fwd-addr-unknown-no-link-local-add" { + description + "isis intf af fwd addr unknown no link local add"; + } + enum "isis-intf-af-fwd-addr-unknown-af-not-up" { + description + "isis intf af fwd addr unknown af not up"; + } + enum "isis-intf-af-fwd-addr-unknown-vrf-enabled" { + description + "isis intf af fwd addr unknown vrf enabled"; + } + enum "isis-intf-af-fwd-addr-unknown-internal-error" { + description + "isis intf af fwd addr unknown internal error"; + } + } + description + "Isis if af fwd addr unknown reason"; + } + + typedef Isis-if-af-proto-down-reason { + type enumeration { + enum "isis-intf-af-proto-down-imd-conn-fail" { + description + "isis intf af proto down imd conn fail"; + } + enum "isis-intf-af-proto-down-imd-node-doesnt-exist" { + description + "isis intf af proto down imd node doesnt exist"; + } + enum "isis-intf-af-proto-down-imd-exist-reg-error" { + description + "isis intf af proto down imd exist reg error"; + } + enum "isis-intf-af-proto-down-imd-state-reg-error" { + description + "isis intf af proto down imd state reg error"; + } + enum "isis-intf-af-proto-down-af-not-up" { + description + "isis intf af proto down af not up"; + } + enum "isis-intf-af-proto-down-internal-error" { + description + "isis intf af proto down internal error"; + } + } + description + "Isis if af proto down reason"; + } + + typedef Isis-if-af-disabled-reason { + type enumeration { + enum "isis-intf-af-disabled-no-topo-enabled" { + description + "isis intf af disabled no topo enabled"; + } + enum "isis-intf-af-disabled-internal-error" { + description + "isis intf af disabled internal error"; + } + } + description + "Isis if af disabled reason"; + } + + typedef Isis-frr-tiebreaker { + type enumeration { + enum "isis-frr-tiebreaker-down-stream" { + value 0; + description + "Backup path is via downstream node"; + } + enum "isis-frr-tiebreaker-lc-disjoint" { + value 1; + description + "Backup path is line card disjoint"; + } + enum "isis-frr-tiebreaker-low-est-backup-metric" { + value 2; + description + "Backup path has lowest metric"; + } + enum "isis-frr-tiebreaker-node-protecting" { + value 3; + description + "Backup path is node protecting"; + } + enum "isis-frr-tiebreaker-primary-path" { + value 4; + description + "Backup path is ECMP"; + } + enum "isis-frr-tiebreaker-secondary-path" { + value 5; + description + "Backup path is not an ECMP"; + } + enum "isis-frr-tiebreaker-srlg-disjoint" { + value 6; + description + "Backup path is SRLG disjoint"; + } + enum "isis-frr-tiebreaker-default" { + value 7; + description + "Backup path is link protecting"; + } + } + description + "Isis frr tiebreaker"; + } + + typedef Isis-frr { + type enumeration { + enum "isis-frr-type-none" { + value 0; + description + "Computation disabled"; + } + enum "isis-frr-type-per-link" { + value 1; + description + "Prefix independent per-link computation"; + } + enum "isis-frr-type-per-prefix" { + value 2; + description + "Prefix dependent computation"; + } + enum "isis-frr-type-sr-u-loop" { + value 3; + description + "Segment Routing Microloop Avoidance computation"; + } + } + description + "Isis frr"; + } + + typedef Isis-if-topo-adv-prefix-disabled-reason { + type enumeration { + enum "isis-intf-topo-adv-prefix-disabled-intf-suppressed" { + description + "isis intf topo adv prefix disabled intf + suppressed"; + } + enum "isis-intf-topo-adv-prefix-disabled-af-not-up" { + description + "isis intf topo adv prefix disabled af not up"; + } + enum "isis-intf-topo-adv-prefix-disabled-af-prefixes-unknown" { + description + "isis intf topo adv prefix disabled af prefixes + unknown"; + } + enum "isis-intf-topo-adv-prefix-disabled-internal-error" { + description + "isis intf topo adv prefix disabled internal + error"; + } + } + description + "Isis if topo adv prefix disabled reason"; + } + + typedef Isis-if-topo-adj-form-disabled-reason { + type enumeration { + enum "isis-intf-topo-adj-form-disabled-intf-passive" { + description + "isis intf topo adj form disabled intf passive"; + } + enum "isis-intf-topo-adj-form-disabled-af-not-up" { + description + "isis intf topo adj form disabled af not up"; + } + enum "isis-intf-topo-adj-form-disabled-af-fwd-addr-unknown" { + description + "isis intf topo adj form disabled af fwd addr + unknown"; + } + enum "isis-intf-topo-adj-form-disabled-topo-not-cfg" { + description + "isis intf topo adj form disabled topo not cfg"; + } + enum "isis-intf-topo-adj-form-disabled-topo-can-not-participate" { + description + "isis intf topo adj form disabled topo can not + participate"; + } + enum "isis-intf-topo-adj-form-disabled-idle" { + description + "isis intf topo adj form disabled idle"; + } + enum "isis-intf-topo-adj-form-disabled-internal-error" { + description + "isis intf topo adj form disabled internal error"; + } + enum "isis-intf-topo-adj-form-disabled-mtu" { + description + "isis intf topo adj form disabled mtu"; + } + enum "isis-intf-topo-adj-form-disabled-snpa" { + description + "isis intf topo adj form disabled snpa"; + } + enum "isis-intf-topo-adj-form-disabled-mcast" { + description + "isis intf topo adj form disabled mcast"; + } + } + description + "Isis if topo adj form disabled reason"; + } + + typedef Isis-if-topo-disabled-reason { + type enumeration { + enum "isis-intf-topo-disabled-not-cfg" { + description + "isis intf topo disabled not cfg"; + } + enum "isis-intf-topo-disabled-internal-error" { + description + "isis intf topo disabled internal error"; + } + } + description + "Isis if topo disabled reason"; + } + + typedef Isis-circuit-id { + type yang:hex-string; + description + "Isis circuit id"; + } + + typedef Isis-sh-pdu-rejection-reason { + type enumeration { + enum "isis-pdu-not-rejected" { + description + "Not Rejected"; + } + enum "isis-pdu-rejected-oom" { + description + "Out of Memory"; + } + enum "isis-pdu-rejected-internal-error" { + description + "Internal error"; + } + enum "isis-pdu-rejected-cant-get-buffer" { + description + "Can't get buffer for incoming PDU"; + } + enum "isis-pdu-rejected-cant-find-mac-head-er" { + description + "Can't find layer-2 header in frame"; + } + enum "isis-pdu-rejected-cant-read-mac-head-er" { + description + "Can't read layer-header in frame"; + } + enum "isis-pdu-rejected-nsf-prohibits" { + description + "PDU rejected during NSF switch-over"; + } + enum "isis-pdu-rejected-adj-held-down" { + description + "Interface in Adjacency Holddown state"; + } + enum "isis-pdu-rejected-intf-not-running" { + description + "IS-IS not running and active on interface"; + } + enum "isis-pdu-rejected-interface-is-passive" { + description + "Received a PDU on a passive interface"; + } + enum "isis-pdu-rejected-unknown-pdu-type" { + description + "Unrecognized PDU type"; + } + enum "isis-pdu-rejected-parse-error" { + description + "PDU has unparsable TLVs"; + } + enum "isis-pdu-rejected-invalid-dest-mac-addr" { + description + "No valid layer-2 destination address"; + } + enum "isis-pdu-rejected-invalid-version" { + description + "Invalid protocol version"; + } + enum "isis-pdu-rejected-invalid-sysid-length" { + description + "Invalid Sytem ID length"; + } + enum "isis-pdu-rejected-bad-hdr-length" { + description + "Bad header length"; + } + enum "isis-pdu-rejected-pdu-too-small" { + description + "PDU size too small to contain header"; + } + enum "isis-pdu-rejected-bad-pdu-length" { + description + "Packet is larger than header indicates"; + } + enum "isis-pdu-rejected-pdu-larger-than-buffer" { + description + "Large PDU does not fit in our buffers"; + } + enum "isis-pdu-rejected-pdu-larger-than-mtu" { + description + "Large PDU larger than our MTU"; + } + enum "isis-pdu-rejected-auth-failed" { + description + "Authentication failed"; + } + enum "isis-pdu-rejected-bad-ext-end-ed-seqnr" { + description + "Extended Sequence Number check failed"; + } + enum "isis-pdu-rejected-circuit-type-mismatch" { + description + "PDU type didn't match with interface + Circuit-type"; + } + enum "isis-lsp-rejected-too-m-any-purge-s" { + description + "Too many LSP purges received"; + } + enum "isis-iih-rejected-lan-iih-on-p2p-intf" { + description + "Received multipoint hello on P2P interface"; + } + enum "isis-iih-rejected-p2p-iih-on-lan-intf" { + description + "Received P2P hello on multipoint interface"; + } + enum "isis-iih-rejected-our-own-hello" { + description + "Received our own Hello"; + } + enum "isis-iih-rejected-bad-circuit-type" { + description + "Invalid Circuit-type in hello"; + } + enum "isis-iih-rejected-nr-of-area-addresses" { + description + "Unsupported number of area-addresses"; + } + enum "isis-iih-rejected-area-mismatch" { + description + "Received hello with Mismatching AreaAddresses"; + } + enum "isis-iih-rejected-level-or-area-mismatch" { + description + "Received hello with Mismatching Level or + AreaAddresses"; + } + enum "isis-iih-rejected-area-s-changed" { + description + "Neighbors advertised Areas changed"; + } + enum "isis-iih-rejected-missing-area-address" { + description + "Received hello without required AreaAddress"; + } + enum "isis-iih-rejected-instance-id-mismatch" { + description + "Received hello with wrong Instance ID"; + } + enum "isis-iih-rejected-bad-instance-topo-id" { + description + "Received hello with bad Instance ID"; + } + enum "isis-iih-rejected-instance-topo-id-mismatch" { + description + "Received hello with Topology ID Mismatch"; + } + enum "isis-iih-rejected-no-common-topologies" { + description + "Received hello with no common Topologies"; + } + enum "isis-iih-rejected-src-snpa-mismatch" { + description + "Received hello with wrong source MAC address"; + } + enum "isis-iih-rejected-se-cond-adj-on-p2p" { + description + "Received hello from a 2nd system on p2p + interface"; + } + enum "isis-iih-rejected-circuit-nr-changed" { + description + "Neighbor's Circuit ID changed"; + } + enum "isis-iih-rejected-3way-hand-shake-failed" { + description + "3Way Handshake failed for hello"; + } + enum "isis-nr-of-pdu-rejection-reasons" { + description + "Invalid PDU Rejection"; + } + } + description + "PDU Rejection reason"; + } + + typedef Isis-if-mcast-invalid-reason { + type enumeration { + enum "isis-intf-mcast-invalid-join-error" { + description + "Error when attempting to join this multicast + group"; + } + enum "isis-intf-mcast-invalid-internal-error" { + description + "Internal error"; + } + enum "isis-intf-mcast-invalid-not-yet-needed" { + description + "Multicast group membership not yet requested"; + } + } + description + "Isis if mcast invalid reason"; + } + + typedef Isis-if-clns-snpa-unknown-reason { + type enumeration { + enum "isis-intf-clns-snpa-unknown-access-error" { + description + "isis intf clns snpa unknown access error"; + } + enum "isis-intf-clns-snpa-unknown-not-lan" { + description + "isis intf clns snpa unknown not lan"; + } + enum "isis-intf-clns-snpa-unknown-internal-error" { + description + "isis intf clns snpa unknown internal error"; + } + } + description + "Isis if clns snpa unknown reason"; + } + + typedef Isis-known { + type enumeration { + enum "isis-unknown" { + value 0; + description + "Unknown"; + } + enum "isis-known" { + value 1; + description + "Known"; + } + } + description + "Isis known"; + } + + typedef Isis-if-clns-mtu-invalid-reason { + type enumeration { + enum "isis-intf-clns-mtu-invalid-too-small" { + description + "isis intf clns mtu invalid too small"; + } + enum "isis-intf-clns-mtu-invalid-internal-error" { + description + "isis intf clns mtu invalid internal error"; + } + } + description + "Isis if clns mtu invalid reason"; + } + + typedef Isis-if-clns-proto-down-reason { + type enumeration { + enum "isis-intf-clns-proto-down-add-to-intf-stack-fail" { + description + "isis intf clns proto down add to intf stack + fail"; + } + enum "isis-intf-clns-proto-down-no-imd-conn" { + description + "isis intf clns proto down no imd conn"; + } + enum "isis-intf-clns-proto-down-imd-node-doesnt-exist" { + description + "isis intf clns proto down imd node doesnt exist"; + } + enum "isis-intf-clns-proto-down-imd-exist-reg-error" { + description + "isis intf clns proto down imd exist reg error"; + } + enum "isis-intf-clns-proto-down-imd-state-reg-error" { + description + "isis intf clns proto down imd state reg error"; + } + enum "isis-intf-clns-proto-down-clns-not-up" { + description + "isis intf clns proto down clns not up"; + } + } + description + "Isis if clns proto down reason"; + } + + typedef Isis-up { + type enumeration { + enum "isis-down" { + value 0; + description + "Down"; + } + enum "isis-up" { + value 1; + description + "Up"; + } + } + description + "Isis up"; + } + + typedef Isis-extended-circuit-number { + type uint32; + description + "Isis extended circuit number"; + } + + typedef Isis-circuit-number { + type uint8; + description + "Isis circuit number"; + } + + typedef Isis-if-adv-prefix-disabled-reason { + type enumeration { + enum "isis-intf-adv-prefix-disabled-if-cfg-suppressed" { + description + "isis intf adv prefix disabled if cfg suppressed"; + } + enum "isis-intf-adv-prefix-disabled-no-topo-participate" { + description + "isis intf adv prefix disabled no topo + participate"; + } + enum "isis-intf-adv-prefix-disabled-internal-error" { + description + "isis intf adv prefix disabled internal error"; + } + } + description + "Isis if adv prefix disabled reason"; + } + + typedef Isis-if-adj-form-disabled-reason { + type enumeration { + enum "isis-intf-adj-form-disabled-cfg-passive" { + description + "isis intf adj form disabled cfg passive"; + } + enum "isis-intf-adj-form-disabled-no-topo-participate" { + description + "isis intf adj form disabled no topo participate"; + } + enum "isis-intf-adj-form-disabled-add-to-intf-stack-fail" { + description + "isis intf adj form disabled add to intf stack + fail"; + } + enum "isis-intf-adj-form-disabled-clns-io" { + description + "isis intf adj form disabled clns io"; + } + enum "isis-intf-adj-form-disabled-internal-error" { + description + "isis intf adj form disabled internal error"; + } + } + description + "Isis if adj form disabled reason"; + } + + typedef Isis-if-disabled-reason { + type enumeration { + enum "isis-intf-disabled-no-net-cfg" { + description + "isis intf disabled no net cfg"; + } + enum "isis-intf-disabled-area-missing" { + description + "isis intf disabled area missing"; + } + enum "isis-intf-disabled-no-area-running" { + description + "isis intf disabled no area running"; + } + enum "isis-intf-disabled-no-topos-cfg" { + description + "isis intf disabled no topos cfg"; + } + enum "isis-intf-disabled-no-imd-conn" { + description + "isis intf disabled no imd conn"; + } + enum "isis-intf-disabled-imd-reg-error" { + description + "isis intf disabled imd reg error"; + } + enum "isis-intf-disabled-level-mismatch" { + description + "isis intf disabled level mismatch"; + } + enum "isis-intf-disabled-base-caps-error" { + description + "isis intf disabled base caps error"; + } + enum "isis-intf-disabled-intf-doesnt-exist" { + description + "isis intf disabled intf doesnt exist"; + } + enum "isis-intf-disabled-intf-shutdown" { + description + "isis intf disabled intf shutdown"; + } + enum "isis-intf-disabled-internal-error" { + description + "isis intf disabled internal error"; + } + } + description + "Isis if disabled reason"; + } + + typedef Isis-enabled { + type enumeration { + enum "isis-disabled" { + value 0; + description + "Disabled"; + } + enum "isis-enabled" { + value 1; + description + "Enabled"; + } + } + description + "Isis enabled"; + } + + typedef Isis-mesh-group-number { + type uint32; + description + "Isis mesh group number"; + } + + typedef Isis-metric-mode { + type enumeration { + enum "isis-metric-mode-fixed" { + value 0; + description + "Fixed"; + } + enum "isis-metric-mode-relative" { + value 1; + description + "Relative"; + } + enum "isis-metric-mode-absolute" { + value 2; + description + "Absolute"; + } + } + description + "Isis metric mode"; + } + + typedef Isis-spf-trigger { + type enumeration { + enum "isis-spf-trig-config" { + description + "Configuration change"; + } + enum "isis-spf-trig-nsr-fo" { + description + "NSR FO is done"; + } + enum "isis-spf-trig-periodic" { + description + "Periodic SPF"; + } + enum "isis-spf-trig-clear" { + description + "Cleared route table"; + } + enum "isis-spf-trig-null0-intf" { + description + "Null0 intf up"; + } + enum "isis-spf-trig-test" { + description + "Periodic test trigger"; + } + enum "isis-spf-trig-newadj" { + description + "New adjacency"; + } + enum "isis-spf-trig-deladj" { + description + "Deleted adjacency"; + } + enum "isis-spf-trig-next-hop" { + description + "IP nexthop address change"; + } + enum "isis-spf-trig-metric" { + description + "Changed interface metric"; + } + enum "isis-spf-trig-dis" { + description + "Change to elected DIS"; + } + enum "isis-spf-trig-frr-per-link" { + description + "Change to per-link FRR config"; + } + enum "isis-spf-trig-frr-per-prefix" { + description + "Change to per-prefix FRR config"; + } + enum "isis-spf-trig-ucmp" { + description + "Change to UCMP config/calculation"; + } + enum "isis-spf-trig-bfd-up" { + description + "BFD up for link topology"; + } + enum "isis-spf-trig-bfd-down" { + description + "BFD down for link topology"; + } + enum "isis-spf-trig-new-tunnel" { + description + "New TE Autoroute Tunnel"; + } + enum "isis-spf-trig-del-tunnel" { + description + "Deleted TE Autoroute Tunnel"; + } + enum "isis-spf-trig-chg-tunnel" { + description + "Changed TE Autoroute Tunnel"; + } + enum "isis-spf-trig-new-node" { + description + "New LSP zero which participates in topology"; + } + enum "isis-spf-trig-del-node" { + description + "New LSP zero which no longer participates in + topology"; + } + enum "isis-spf-trig-newlsp" { + description + "Previously unseen LSP fragment"; + } + enum "isis-spf-trig-lsp-expiry" { + description + "LSP expired"; + } + enum "isis-spf-trig-attach-set" { + description + "Attached bit set"; + } + enum "isis-spf-trig-attach-clr" { + description + "Attached bit cleared"; + } + enum "isis-spf-trig-overload-set" { + description + "Overload bit set"; + } + enum "isis-spf-trig-overload-clr" { + description + "Overload bit cleared"; + } + enum "isis-spf-trig-link-good" { + description + "Good news link TLV content change"; + } + enum "isis-spf-trig-link-bad" { + description + "Bad news link TLV content change"; + } + enum "isis-spf-trig-prefix-good" { + description + "Good news prefix TLV content change"; + } + enum "isis-spf-trig-prefix-bad" { + description + "Bad news prefix TLV content change"; + } + enum "isis-spf-trig-prefix" { + description + "Neutral (neither good nor bad news) prefix TLV + content change"; + } + enum "isis-spf-trig-area-addr" { + description + "Area address TLV content change"; + } + enum "isis-spf-trig-ip-addr" { + description + "IP address TLV content change"; + } + enum "isis-spf-trig-rtrid" { + description + "Router id TLV content change"; + } + enum "isis-spf-trig-flex-algo" { + description + "Flex-Algo support change"; + } + enum "isis-spf-trig-srv6-cap" { + description + "SRv6 router capability change"; + } + enum "isis-spf-trig-srv6-locator" { + description + "SRv6 locator TLV change"; + } + enum "isis-spf-trig-prefix-policy" { + description + "Prefix policy change"; + } + } + description + "Isis spf trigger"; + } + + typedef Isis-spf-class { + type enumeration { + enum "isis-spf-frr-sr-u-loop" { + value 0; + description + "Remote microloop avoidance SPF"; + } + enum "isis-spf-frr-per-link" { + value 1; + description + "FRR per-link SPF"; + } + enum "isis-spf-partial" { + value 2; + description + "PRC"; + } + enum "isis-spf-frr-per-prefix" { + value 3; + description + "FRR per-prefix SPF"; + } + enum "isis-spf-ucmp-calc" { + value 4; + description + "UCMP SPF"; + } + enum "isis-spf-flex" { + value 5; + description + "Flex-Algo SPF"; + } + enum "isis-spf-next-hop" { + value 6; + description + "Next Hop"; + } + enum "isis-spf-incremental" { + value 7; + description + "Incremental SPF"; + } + enum "isis-spf-full" { + value 8; + description + "Full SPF"; + } + } + description + "Types of route calculation"; + } + + typedef Isis-sh-te-pce-flooding-scope { + type enumeration { + enum "none" { + description + "Flooding is disabled"; + } + enum "area" { + description + "Area wide flooding"; + } + enum "domain" { + description + "Domain wide flooding"; + } + } + description + "Isis sh te pce flooding scope"; + } + + typedef Isis-sh-te-link { + type enumeration { + enum "isis-sh-te-link-p2p" { + description + "Tunnel is absolute"; + } + enum "isis-sh-te-link-broadcast" { + description + "Broadcast link"; + } + } + description + "Isis sh te link"; + } + + typedef Isis-reachable { + type enumeration { + enum "isis-unreachable" { + value 0; + description + "Unreachable"; + } + enum "isis-reachable" { + value 1; + description + "Reachable"; + } + } + description + "Isis reachable"; + } + + typedef Isis-admin-tag { + type uint32; + description + "Isis admin tag"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Isis-sh-route-adv-origin { + type enumeration { + enum "isis-sh-route-adv-origin-interface" { + description + "IS-IS interface prefix"; + } + enum "isis-sh-route-adv-origin-redistributed" { + description + "Redistributed prefix"; + } + enum "isis-sh-route-adv-origin-native" { + description + "Native prefix"; + } + enum "isis-sh-route-adv-origin-summary" { + description + "Summary prefix"; + } + enum "isis-sh-route-adv-origin-default" { + description + "Explicit origination of default prefix"; + } + } + description + "Origin of a prefix advertisement"; + } + + typedef Isis-local-label-state { + type enumeration { + enum "isis-srmpls-label-none" { + description + "No label requested from LSD"; + } + enum "isis-srmpls-label-unavailable" { + description + "Label assignment failed"; + } + enum "isis-srmpls-label-request-ed" { + description + "Request to LSD pending"; + } + enum "isis-srmpls-label-assigned" { + description + "Label assigned by LSD"; + } + } + description + "Isis local label state"; + } + + typedef Isis-prefix-priority { + type enumeration { + enum "isis-prefix-priority-critical" { + value 0; + description + "Critical priority prefixes"; + } + enum "isis-prefix-priority-high" { + value 1; + description + "High priority prefixes"; + } + enum "isis-prefix-priority-med" { + value 2; + description + "Medium priority prefixes"; + } + enum "isis-prefix-priority-low" { + value 3; + description + "Low priority prefixes"; + } + } + description + "Isis prefix priority"; + } + + typedef Isis-tilfa-computation { + type enumeration { + enum "isis-tilfa-comp-none" { + description + "isis tilfa comp none"; + } + enum "isis-tilfa-comp-link" { + description + "isis tilfa comp link"; + } + enum "isis-tilfa-comp-node" { + description + "isis tilfa comp node"; + } + enum "isis-tilfa-comp-srlg" { + description + "isis tilfa comp srlg"; + } + enum "isis-tilfa-comp-node-srlg" { + description + "isis tilfa comp node srlg"; + } + enum "isis-tilfa-comp-lc" { + description + "isis tilfa comp lc"; + } + enum "isis-tilfa-comp-node-lc" { + description + "isis tilfa comp node lc"; + } + enum "isis-tilfa-comp-srlg-lc" { + description + "isis tilfa comp srlg lc"; + } + enum "isis-tilfa-comp-node-srlg-lc" { + description + "isis tilfa comp node srlg lc"; + } + } + description + "Isis tilfa computation"; + } + + typedef Isis-prefix-tag { + type uint32; + description + "Isis prefix tag"; + } + + typedef Isis-metric { + type uint32; + description + "Isis metric"; + } + + typedef Isis-prefix-origin { + type enumeration { + enum "isis-prefix-origin-l1-summary-null" { + value 0; + description + "Level 1 Summary Null Route"; + } + enum "isis-prefix-origin-l1" { + value 1; + description + "Level 1 Route"; + } + enum "isis-prefix-origin-l2-summary-null" { + value 2; + description + "Level 2 Summary Null Route"; + } + enum "isis-prefix-origin-l2" { + value 3; + description + "Level 2 Route"; + } + enum "isis-prefix-origin-inter-area-summary-null" { + value 4; + description + "Level 1 Interarea Summary Null Route"; + } + enum "isis-prefix-origin-inter-area" { + value 5; + description + "Level 1 Interarea Route"; + } + enum "isis-prefix-origin-default-nearest-attached" { + value 6; + description + "Nearest Attached Default Route"; + } + enum "isis-prefix-origin-invalid" { + value 7; + description + "Invalid Origin"; + } + } + description + "Isis prefix origin"; + } + + typedef Isis-string { + type string; + description + "Isis string"; + } + + typedef Isis-redist-proto { + type enumeration { + enum "isis-redist-connected" { + value 0; + description + "Redistributed protocol is Connected"; + } + enum "isis-redist-static" { + value 1; + description + "Redistributed protocol is Static"; + } + enum "isis-redist-ospf" { + value 2; + description + "Redistributed protocol is OSPF"; + } + enum "isis-redist-bgp" { + value 3; + description + "Redistributed protocol is BGP"; + } + enum "isis-redist-isis" { + value 4; + description + "Redistributed protocol is IS-IS"; + } + enum "isis-redist-ospfv3" { + value 5; + description + "Redistributed protocol is OSPFv3"; + } + enum "isis-redist-rip" { + value 6; + description + "Redistributed protocol is RIP"; + } + enum "isis-redist-eigrp" { + value 7; + description + "Redistributed protocol is EIGRP"; + } + enum "isis-redist-subscriber" { + value 8; + description + "Redistributed protocol is Subscriber"; + } + enum "isis-redist-application" { + value 9; + description + "Redistributed protocol is Application"; + } + enum "isis-redist-mobile" { + value 10; + description + "Redistributed protocol is Mobile"; + } + } + description + "Isis redist proto"; + } + + typedef Isis-valid { + type enumeration { + enum "isis-invalid" { + value 0; + description + "Invalid"; + } + enum "isis-valid" { + value 1; + description + "Valid"; + } + } + description + "Isis valid"; + } + + typedef Isis-lsp-db-op { + type enumeration { + enum "isis-lsp-db-clear" { + description + "Clear the LSP database"; + } + enum "isis-lsp-db-insert-new-lsp" { + description + "Insertion of new LSP"; + } + enum "isis-lsp-db-replace-lsp-with-lsp" { + description + "LSP replacing LSP"; + } + enum "isis-lsp-db-purge-lsp" { + description + "LSP purged by the local system"; + } + enum "isis-lsp-db-delete-lsp" { + description + "Removal of the LSP from the database"; + } + } + description + "Isis lsp db op"; + } + + typedef Isis-pseudo-node-number { + type uint8; + description + "Isis pseudo node number"; + } + + typedef Isis-lsp-trigger { + type enumeration { + enum "isis-lsp-trig-config" { + description + "Any configuration change"; + } + enum "isis-lsp-trig-newadj" { + description + "New adjacency came up"; + } + enum "isis-lsp-trig-deladj" { + description + "Adjacency went down"; + } + enum "isis-lsp-trig-dr-change" { + description + "DIS changed, or pseudonode changed"; + } + enum "isis-lsp-trig-area-set" { + description + "Active area set changed"; + } + enum "isis-lsp-trig-attach" { + description + "Attached bit changed state"; + } + enum "isis-lsp-trig-hippity" { + description + "LSPDB overload bit changed state"; + } + enum "isis-lsp-trig-regen" { + description + "LSP regeneration"; + } + enum "isis-lsp-trig-ip-if-up" { + description + "Directly connected IP prefix up"; + } + enum "isis-lsp-trig-ip-if-down" { + description + "Directly connected IP prefix down"; + } + enum "isis-lsp-trig-ip-inter-area" { + description + "Interarea IP route appeared or gone"; + } + enum "isis-lsp-trig-ip-external" { + description + "Redistributed IP route appeared or gone"; + } + enum "isis-lsp-trig-ip-external-full" { + description + "Full IP redistribution"; + } + enum "isis-lsp-trig-ip-def-orig" { + description + "Default information originate changed"; + } + enum "isis-lsp-trig-ip-addr-chg" { + description + "Local IP interface address changed"; + } + enum "isis-lsp-trig-te-info" { + description + "TE bandwidth resource information"; + } + enum "isis-lsp-trig-te-pce-info" { + description + "TE PCE information"; + } + enum "isis-lsp-trig-te-fa-info" { + description + "TE forwarding adjacency information"; + } + enum "isis-lsp-trig-nsr-fo" { + description + "NSR FO is done"; + } + enum "isis-lsp-trig-pn-cancel" { + description + "Pseudo-node generation canceled"; + } + enum "isis-lsp-trig-lkgp" { + description + "Link-group offset metric change"; + } + enum "isis-lsp-trig-pp" { + description + "Proactive Protection metric change"; + } + enum "isis-lsp-trig-config-force-send" { + description + "Any configuration change that requires all LSPs + to be updated"; + } + enum "isis-lsp-trig-config-force-init" { + description + "Any configuration change that requires the LBD + database re-init."; + } + enum "isis-lsp-trig-adj-sid-add" { + description + "Adjacency SID added"; + } + enum "isis-lsp-trig-adj-sid-delete" { + description + "Adjacency SID deleted"; + } + enum "isis-lsp-trig-adj-sid-change" { + description + "Adjacency SIDs added and/or deleted"; + } + enum "isis-lsp-trig-msd" { + description + "Maximum SID depth change"; + } + enum "isis-lsp-trig-adj-sid-wait-timer" { + description + "Adjacency SID wait timer expired"; + } + enum "isis-lsp-trig-direct-gen" { + description + "Direct LSP generation"; + } + enum "isis-lsp-trig-flex-algo-enable-disable" { + description + "Flex-Algo Enable/Disable"; + } + enum "isis-lsp-trig-reverse-metric" { + description + "Reverse metric"; + } + enum "isis-lsp-trig-metric-fallback" { + description + "Metric Fallback"; + } + enum "isis-lsp-trig-pm-link-anomaly" { + description + "Link Anomaly"; + } + enum "isis-lsp-trig-pm-delay-loss" { + description + "Link delay/loss changed"; + } + enum "isis-lsp-trig-pm-bw-util" { + description + "Link bandwidth utilization changed"; + } + enum "isis-lsp-trig-cs-update" { + description + "Canary Stamp data changed"; + } + enum "isis-lsp-trig-bfd-chg" { + description + "BFD useability change"; + } + enum "isis-lsp-trig-bfd-up" { + description + "BFD session up event"; + } + enum "isis-lsp-trig-bfd-down" { + description + "BFD session down event"; + } + enum "isis-lsp-trig-up-a-expiry" { + description + "UPA lifetime expired"; + } + enum "isis-lsp-trig-remote-ip-addr-chg" { + description + "Remote IP interface-address changed"; + } + enum "isis-lsp-trig-remote-link-id-chg" { + description + "Remote link-id attribute changed"; + } + } + description + "Isis lsp trigger"; + } + + typedef Isis-sh-lsp-db-install-reason { + type enumeration { + enum "isis-sh-lsp-install-reason-unknown" { + description + "Unknown reason why LSP was installed"; + } + enum "isis-sh-lsp-install-reason-recvd-from-neighbor" { + description + "A neighbor sent us a new LSP"; + } + enum "isis-sh-lsp-install-reason-own-lsp-content-changed" { + description + "Our LSP's content changed"; + } + enum "isis-sh-lsp-install-reason-own-lsp-refresh" { + description + "Time to refresh our own LSP"; + } + enum "isis-sh-lsp-install-reason-over-write-stale-lsp" { + description + "Received stale LSP from neighbor"; + } + enum "isis-sh-lsp-install-reason-own-lsp-purge" { + description + "Purging our own LSP"; + } + enum "isis-sh-lsp-install-reason-other-lsp-purge" { + description + "Purging another router's LSP"; + } + enum "isis-sh-lsp-install-reason-own-p-node-purge" { + description + "Purging our own pseudonode LSP"; + } + enum "isis-sh-lsp-install-reason-other-p-node-purge" { + description + "Purging another router's pseudonode LSP"; + } + enum "isis-sh-lsp-install-reason-dummy-from-csnp" { + description + "Dummy LSP because we received a CSNP"; + } + enum "isis-sh-lsp-install-reason-dummy-from-psnp" { + description + "Dummy LSP because we received a PSNP"; + } + enum "isis-sh-lsp-install-reason-dummy-from-nsf" { + description + "Dummy LSP learned from NSF"; + } + enum "isis-sh-lsp-install-reason-nsr-synchronize" { + description + "LSP received from Active RP"; + } + enum "isis-sh-lsp-install-reason-test" { + description + "Created a test LSP"; + } + enum "isis-sh-lsp-install-reason-delete" { + description + "Deleted LSP from own LSPDB"; + } + enum "isis-sh-lsp-install-num-reasons" { + description + "Number of reasons to install an LSP"; + } + } + description + "Origin of an installed LSP"; + } + + typedef Isis-sh-interface-name { + type string; + description + "Isis sh interface name"; + } + + typedef Isis-adj-topo-status { + type enumeration { + enum "isis-adj-topo-status-ok" { + description + "Topology is included in adjacency"; + } + enum "isis-adj-topo-status-intf-not-configured" { + description + "Topology is not configured on the interface"; + } + enum "isis-adj-topo-status-intf-not-running" { + description + "Topology is not running on the interface"; + } + enum "isis-adj-topo-status-init-state" { + description + "Adjacency is in INIT state"; + } + enum "isis-adj-topo-status-neighbor-doesnt-participate" { + description + "Neighbor doesn't participate in topology"; + } + enum "isis-adj-topo-status-ipv4-address-tlv-missing" { + description + "Neighbor IIH doesn't contain IPv4 address TLV"; + } + enum "isis-adj-topo-status-ipv4-address-tlv-empty" { + description + "Neighbor's IPv4 address TLV is empty"; + } + enum "isis-adj-topo-status-ipv6-address-tlv-missing" { + description + "Neighbor IIH doesn't contain IPv6 address TLV"; + } + enum "isis-adj-topo-status-ipv6-address-tlv-empty" { + description + "Neighbor's IPv6 address TLV is empty"; + } + enum "isis-adj-topo-status-ipv4-address-matches-ours" { + description + "Neighbor's IPv4 address matches ours"; + } + enum "isis-adj-topo-status-ipv6-address-matches-ours" { + description + "Neighbor's IPv6 address matches ours"; + } + enum "isis-adj-topo-status-ipv4-address-subnet-mismatch" { + description + "Neighbor's IPv4 address is in a different + subnet to ours"; + } + enum "isis-adj-topo-status-ipv6-address-not-link-local" { + description + "Neighbor's IPv6 address is not link local"; + } + enum "isis-adj-topo-status-bfd-down" { + description + "BFD is down"; + } + } + description + "Status of a topology in an adjacency"; + } + + typedef Isis-dr-priority { + type uint8; + description + "Isis dr priority"; + } + + typedef Isis-adj-bfd-state { + type enumeration { + enum "isis-adj-bfd-no-state" { + value 0; + description + "No BFD session created"; + } + enum "isis-adj-bfd-down-state" { + value 1; + description + "BFD session is DOWN"; + } + enum "isis-adj-bfd-init-state" { + value 2; + description + "Waiting for BFD session to come UP"; + } + enum "isis-adj-bfd-up-state" { + value 3; + description + "BFD session is UP"; + } + } + description + "Current BFD state of an adjacency"; + } + + typedef Isis-adj-topo-change { + type enumeration { + enum "isis-adj-topo-up-change" { + value 0; + description + "Topology up"; + } + enum "isis-adj-topo-next-hop-change" { + value 1; + description + "Topology next-hop changed"; + } + enum "isis-adj-topo-down-change" { + value 2; + description + "Topology down"; + } + } + description + "Per-topology change type for an adjacency"; + } + + typedef Isis-adj-state-reason { + type enumeration { + enum "isis-adj-up-nsf-restart" { + value 0; + description + "NSF Restart"; + } + enum "isis-adj-up-new-adj" { + value 1; + description + "New adjacency"; + } + enum "isis-adj-up-restarted" { + value 2; + description + "Restarted"; + } + enum "isis-adj-up-nsf-restored" { + value 3; + description + "Restored during NSF"; + } + enum "isis-adj-up-chkpt-restored" { + value 4; + description + "Restored from checkpoint"; + } + enum "isis-adj-init-reason" { + value 5; + description + "Into INIT"; + } + enum "isis-adj-init-neighbor-forgot" { + value 6; + description + "Neighbor forgot us"; + } + enum "isis-adj-down-hold-time" { + value 7; + description + "Holdtime expired"; + } + enum "isis-adj-down-if-down" { + value 8; + description + "Interface state going down"; + } + enum "isis-adj-down-cfg-mismatch" { + value 9; + description + "Area address/level mismatch"; + } + enum "isis-adj-down-circ-id" { + value 10; + description + "Circuit ID changed"; + } + enum "isis-adj-down-nsf-ack-fail" { + value 11; + description + "NSF could not CSNP Ack P2P adjacency"; + } + enum "isis-adj-down-db-clear" { + value 12; + description + "Clear of the Adjacency DB"; + } + enum "isis-adj-down-no-common-topology" { + value 13; + description + "Neighbors have no common link topology"; + } + enum "isis-adj-down-restart-tlv-missing" { + value 14; + description + "Restart TLV missing during IETF NSF restart"; + } + enum "isis-adj-down-bfd-down" { + value 15; + description + "BFD session has gone DOWN"; + } + enum "isis-adj-down-3way-down" { + value 16; + description + "3-way state down"; + } + enum "isis-adj-down-mac-address" { + value 17; + description + "MAC address change"; + } + } + description + "Isis adj state reason"; + } + + typedef Isis-level { + type enumeration { + enum "isis-level0" { + value 0; + description + "isis level0"; + } + enum "isis-level1" { + value 1; + description + "isis level1"; + } + enum "isis-level2" { + value 2; + description + "isis level2"; + } + } + description + "Isis level"; + } + + typedef Isis-srv6-endpoint-func { + type uint16; + description + "Isis srv6 endpoint func"; + } + + typedef Isis-ip-prefix-length { + type uint8; + description + "Isis ip prefix length"; + } + + typedef Isis-ipv6-address { + type inet:ipv6-address; + description + "Isis ipv6 address"; + } + + typedef Isis-nodal-sid-value { + type uint32; + description + "Isis nodal sid value"; + } + + typedef Isis-ipv4-address { + type inet:ipv4-address; + description + "Isis ipv4 address"; + } + + typedef Isis-sub-af-id { + type enumeration { + enum "unicast" { + value 0; + description + "Unicast"; + } + enum "multicast" { + value 1; + description + "Multicast"; + } + } + description + "Isis sub af id"; + } + + typedef Isis-af-id { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4"; + } + enum "ipv6" { + value 1; + description + "IPv6"; + } + } + description + "Isis af id"; + } + + typedef Isis-media-class { + type enumeration { + enum "isis-media-class-lan" { + value 0; + description + "LAN"; + } + enum "isis-media-class-p2p" { + value 1; + description + "P2P"; + } + enum "isis-media-class-loop-back" { + value 2; + description + "Loopback"; + } + } + description + "Isis media class"; + } + + typedef Isis-levels { + type enumeration { + enum "isis-levels-none" { + value 0; + description + "isis levels none"; + } + enum "isis-levels-1" { + value 1; + description + "isis levels 1"; + } + enum "isis-levels-2" { + value 2; + description + "isis levels 2"; + } + enum "isis-levels-12" { + value 3; + description + "isis levels 12"; + } + enum "isis-levels-total" { + value 4; + description + "isis levels total"; + } + } + description + "Isis levels"; + } + + typedef Isis-adj-state { + type enumeration { + enum "isis-adj-up-state" { + value 0; + description + "Adjacency up"; + } + enum "isis-adj-init-state" { + value 1; + description + "Adjacency initializing"; + } + enum "isis-adj-failed-state" { + value 2; + description + "Adjacency down/failed"; + } + } + description + "Isis adj state"; + } + + grouping ISIS-SH-CHKPT-TE-TUNNEL { + description + "Checkpointed TE tunnel"; + leaf checkpoint-te-level { + type Isis-level; + description + "TE database level"; + } + leaf checkpoint-te-system-id { + type xr:Osi-system-id; + description + "Destination system ID"; + } + leaf checkpoint-te-interface { + type xr:Interface-name; + description + "Tunnel interface"; + } + leaf checkpoint-te-flags { + type uint32; + description + "Tunnel flags"; + } + leaf checkpoint-te-nexthop { + type Isis-ipv4-address; + description + "Tunnel next-hop IP address"; + } + leaf checkpoint-te-metric { + type int32; + description + "Tunnel metric"; + } + leaf checkpoint-te-metric-mode { + type Isis-metric-mode; + description + "Tunnel metric mode"; + } + leaf checkpoint-te-bandwidth { + type uint32; + description + "Tunnel bandwidth"; + } + leaf checkpoint-te-object-id { + type uint32; + description + "Tunnel checkpoint object ID"; + } + } + + grouping NSR-STATS-GBL-TYPE { + description + "NSR STATS GBL TYPE"; + leaf no-of-l1-lsp { + type uint32; + description + "no of l1 lsp"; + } + leaf no-of-l2-lsp { + type uint32; + description + "no of l2 lsp"; + } + leaf no-of-l1-adj { + type uint16; + description + "no of l1 adj"; + } + leaf no-of-l2-adj { + type uint16; + description + "no of l2 adj"; + } + leaf no-of-live-interface { + type uint16; + description + "no of live interface"; + } + leaf no-of-ptp-interface { + type uint16; + description + "no of ptp interface"; + } + leaf no-of-lan-interface { + type uint16; + description + "no of lan interface"; + } + leaf no-of-loopback-interface { + type uint16; + description + "no of loopback interface"; + } + leaf no-of-te-tunnels { + type uint16; + description + "no of te tunnels"; + } + leaf no-of-te-links { + type uint16; + description + "no of te links"; + } + leaf no-of-ipv4-routes { + type uint32; + description + "no of ipv4 routes"; + } + leaf no-of-ipv6-routes { + type uint32; + description + "no of ipv6 routes"; + } + leaf seqnum { + type uint32; + description + "seqnum"; + } + } + + grouping NSR-STATS-GBL-ARR-TYPE { + description + "NSR STATS GBL ARR TYPE"; + container self { + description + "self"; + uses NSR-STATS-GBL-TYPE; + } + list peer { + max-elements "3"; + description + "peer"; + uses NSR-STATS-GBL-TYPE; + } + } + + grouping ISIS-SH-NSR-STATS-GLOBAL { + description + "IS-IS process NSR statistics"; + container isis-nsr-stats-data { + description + "ISIS NSR STATS Data"; + uses NSR-STATS-GBL-ARR-TYPE; + } + leaf isis-vm-state { + type uint16; + description + "ISIS VM STATE"; + } + } + + grouping ISIS-SH-MESH-ENTRY { + description + "Mesh-group informaiton for one interface"; + list isis-sh-mesh-entry { + description + "Next entry in list"; + leaf mesh-group-interface { + type xr:Interface-name; + description + "This interface"; + } + leaf mesh-group-number { + type Isis-mesh-group-number; + description + "Mesh-group number"; + } + } + } + + grouping ISIS-SH-MESH-GROUPS { + description + "IS-IS mesh-group data"; + container mesh-group-configured-interface-list { + description + "List of mesh-group-configured interfaces"; + uses ISIS-SH-MESH-ENTRY; + } + } + + grouping ISIS-SH-CHKPT-LSP { + description + "Checkpointed LSP"; + leaf checkpoint-lsp-object-id { + type uint32; + description + "LSP Checkpoint table object ID"; + } + leaf checkpoint-lsp-level { + type uint8; + description + "LSP level"; + } + leaf checkpoint-lsp-local-flag { + type boolean; + description + "TRUE if this is a local LSP"; + } + leaf checkpoint-lsp-id { + type xr:Isis-lsp-id; + description + "LSP ID"; + } + } + + grouping ISIS-SH-NBR-SUMM-LEVEL { + description + "Neighbor states for one level"; + leaf neighbor-up-count { + type uint32; + description + "Neighbors up"; + } + leaf neighbor-init-count { + type uint32; + description + "Neighbors being initialized"; + } + leaf neighbor-down-count { + type uint32; + description + "Neighbors down"; + } + } + + grouping ISIS-SH-NBR-SUMM { + description + "Neighbor summary data"; + container level1-neighbors { + description + "L1-only neighbors"; + uses ISIS-SH-NBR-SUMM-LEVEL; + } + container level2-neighbors { + description + "L2-only neighbors"; + uses ISIS-SH-NBR-SUMM-LEVEL; + } + container level12-neigbors { + description + "L12 neighbors"; + uses ISIS-SH-NBR-SUMM-LEVEL; + } + } + + grouping ISIS-SH-GLOBAL-AREA-TOPO-STATS { + description + "ISIS process traffic per area topo statistics + data"; + container statistics { + description + "Statistics"; + uses ISIS-AREA-TOPO-STATS-TYPE; + } + } + + grouping ISIS-SH-GLOBAL-AREA-STATS { + description + "ISIS process traffic per area statistics data"; + container statistics { + description + "Statistics"; + uses ISIS-AREA-STATS-TYPE; + } + } + + grouping ISIS-SH-GLOBAL-STATS { + description + "IS-IS process traffic statistics data"; + container statistics { + description + "Statistics"; + uses ISIS-TRAFFIC-GLOBAL-TYPE; + } + } + + grouping ISIS-SH-NBR-SUMM-STATS { + description + "Neighbor summary statistics data"; + leaf level-1-nbr-count { + type uint32; + description + "L1-only neighbor counter"; + } + leaf level-2-nbr-count { + type uint32; + description + "L2-only neighbor counter"; + } + leaf level12-nbr-count { + type uint32; + description + "L1L2 neighbor counter"; + } + } + + grouping ISIS-SH-DDADJ-SID { + description + "Delay Deletion Protected Adj-SID data"; + container id { + description + "Topology ID"; + uses ISIS-TOPO-ID-TYPE; + } + container neighbor-ip-address { + description + "Neighbor IP address"; + uses ISIS-IP-ADDR-TYPE; + } + leaf adj-sid-value { + type Isis-nodal-sid-value; + description + "Protected adjacency sid value"; + } + leaf is-madj-sid { + type boolean; + description + "Is manual adjacency sid"; + } + leaf interface { + type Isis-sh-interface-name; + description + "Interface"; + } + leaf level { + type Isis-level; + description + "Level this data applies to"; + } + leaf neighbor-id { + type xr:Osi-system-id; + description + "Neighbor ID"; + } + leaf remaining-time { + type uint32; + description + "Remaining time before deletion"; + } + } + + grouping ISIS-SH-AREA { + description + "Per-area IS-IS protocol data"; + leaf lsp-mtu { + type uint32; + description + "Configured LSP MTU"; + } + leaf lsp-full { + type boolean; + description + "Indicates whether LSP space is full"; + } + } + + grouping ISIS-SH-OVRLD-TOPO-INFO { + description + "BGP Timer expiry Information per Topology"; + container id { + description + "Topology ID"; + uses ISIS-TOPO-ID-TYPE; + } + container overload-bit-b-gp-expiry-time-per-topo { + description + "Timestamp for BGP Timer Expiry per Topology"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + } + + grouping ISIS-SH-OVRLD-BIT { + description + "Overload bit Configuration and Operational data"; + container overload-bit-status-change-time { + description + "Timestamp when status changes"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container overload-bit-startup-epiry-time { + description + "Timestamp for OnStartup Timer Expiry"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container overload-bit-bgp-expiry-time { + description + "Timestamp for BGP Timer Expiry"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf level { + type Isis-level; + description + "Level this data applies to"; + } + leaf currently-active { + type boolean; + description + "Overload bit Currently Active"; + } + leaf mode { + type Isis-overload-bit-mode; + description + "Overload bit mode type"; + } + leaf overload-bit-on-startup-secs { + type uint32; + description + "Time after reboot"; + } + leaf advertise-external-prefix { + type boolean; + description + "Advertise Overload bit for external prefixes"; + } + leaf advertise-inter-level-prefix { + type boolean; + description + "Advertisze Overload bit for interlevel prefixes"; + } + list overload-bit-expiry-per-topo { + description + "Timestamp for BGP Timer Expiry per Toplogy"; + uses ISIS-SH-OVRLD-TOPO-INFO; + } + } + + grouping ISIS-SH-MXM { + description + "Max Metric Operational data"; + container max-metric-status-change-time { + description + "Timestamp when status changes"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container max-metric-startup-epiry-time { + description + "Timestamp for OnStartup Timer Expiry"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container max-metric-bgp-expiry-time { + description + "Timestamp for BGP Timer Expiry"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf active { + type boolean; + description + "Maximum Metric Currently Active"; + } + leaf level { + type Isis-level; + description + "Level this data applies to"; + } + leaf max-metric-mode { + type Isis-max-metric-mode; + description + "mode of the max-metric"; + } + leaf max-metric-redist-pfx { + type boolean; + description + "Override prefix metric from another protocol"; + } + leaf max-metric-inter-level-pfx { + type boolean; + description + "Override prefix metric from another ISIS Level"; + } + leaf max-metric-default-route { + type boolean; + description + "Override default route metric"; + } + leaf max-metric-srv6-locators { + type boolean; + description + "Override Segment routing ipv6 metric"; + } + leaf max-metric-te-metric { + type boolean; + description + "Override traffic-engineering metric"; + } + leaf max-metric-delay-metric { + type boolean; + description + "Override link delay metric"; + } + leaf max-metric-trigger-expired { + type boolean; + description + "Check MaxMetric Trigger Expiry"; + } + leaf max-metric-on-startup-secs { + type uint32; + description + "Time after reboot"; + } + } + + grouping ISIS-SH-DEF-ORIG { + description + "Default Route Origination"; + container status-changed-time { + description + "Default route origination status change"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf enabled { + type boolean; + description + "Default route origination enabled"; + } + leaf active { + type boolean; + description + "Default route origination currently active"; + } + } + + grouping ISIS-SH-TOPO-LOCATOR { + description + "Configured SRv6 Locator"; + leaf locator-active { + type boolean; + description + "Locator exists in global configuration"; + } + leaf anycast-locator { + type boolean; + description + "Anycast Locator"; + } + leaf locator-out-of-resources { + type boolean; + description + "Locator has no more SIDs available"; + } + leaf locator-name { + type string; + description + "Locator name"; + } + } + + grouping ISIS-SH-TOPO-AREA { + description + "Per-topology, per-area IS-IS protocol data"; + leaf level { + type Isis-level; + description + "The level this data refers to"; + } + leaf uses-default-link-topo-flag { + type boolean; + description + "Does this topology use the default link topology"; + } + leaf generated-metric-style { + type Isis-metric-style; + description + "Generate metric style"; + } + leaf accepted-metric-style { + type Isis-metric-style; + description + "Accept metric style"; + } + leaf metric { + type Isis-metric; + description + "Metric"; + } + leaf ispf-state { + type Isis-enabled; + description + "ISPF state"; + } + leaf te-enabled { + type boolean; + description + "Indicates whether MPLS TE is enabled"; + } + leaf uloop-avoidance-type { + type Isis-uloop-avoidance; + description + "Microloop avoidance type"; + } + leaf rib-update-delay { + type uint32; + description + "Microloop RIB update delay"; + } + leaf sr-uloop-is-active { + type boolean; + description + "Explicit paths installed in the RIB"; + } + leaf duration { + type uint32; + description + "SR microloop avoidance duration"; + } + leaf sr-uloop-event { + type Isis-uloop-event; + description + "SR microloop avoidance event"; + } + leaf sr-uloop-near-node-id { + type xr:Isis-node-id; + description + "SR microloop near node"; + } + leaf sr-uloop-far-node-id { + type xr:Isis-node-id; + description + "SR microloop far node"; + } + } + + grouping ISIS-SH-REDIST-ENTRY { + description + "Redistributed protocol entry"; + list isis-sh-redist-entry { + description + "Next entry in list"; + container protocol-details { + description + "Relevant details of the redistributed protocol"; + uses ISIS-SH-REDIST-ENTRY-PROTO; + } + } + } + + grouping ISIS-SH-TOPO { + description + "Per-topology IS-IS instance data"; + container id { + description + "Topology ID"; + uses ISIS-TOPO-ID-TYPE; + } + container redist-protocols-list { + description + "List of redistributed protocols"; + uses ISIS-SH-REDIST-ENTRY; + } + container default-origination { + description + "Default Origination"; + uses ISIS-SH-DEF-ORIG; + } + leaf default-admin-distance { + type uint32; + description + "Default administrative distance"; + } + leaf advertise-passive-only { + type boolean; + description + "Advertise passive interface prefixes only"; + } + leaf wait-redist-complete { + type boolean; + description + "Waiting for redist complete RIB event"; + } + leaf rib-connected { + type boolean; + description + "Rib Connected"; + } + leaf sr-mpls-enabled { + type boolean; + description + "SR-MPLS is enabled"; + } + leaf srv6-enabled { + type boolean; + description + "SRv6 is enabled"; + } + list per-area-data { + description + "Per-area data"; + uses ISIS-SH-TOPO-AREA; + } + list srv6-configured-locator { + description + "Configured SRv6 locators"; + uses ISIS-SH-TOPO-LOCATOR; + } + } + + grouping ISIS-SH-PROTO { + description + "Information about an IS-IS instance"; + container timestamp-process-started { + description + "Timestamp process started"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container timestamp-n-ull0-ready { + description + "Timestamp Null0 interface became ready"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf vrf-context { + type Isis-string; + description + "VRF context"; + } + leaf nsap-system-id { + type xr:Osi-system-id; + description + "Local system ID"; + } + leaf valid-nsap-system-id { + type boolean; + description + "Indicates if system ID valid"; + } + leaf instance-id { + type uint16; + description + "instance id"; + } + leaf running-levels { + type Isis-levels; + description + "Levels running"; + } + leaf configured-nsf-flavor { + type Isis-nsf-flavor; + description + "Configured NSF type"; + } + leaf last-restart-nsf-flavor { + type Isis-nsf-flavor; + description + "NSF type of last restart"; + } + leaf last-restart-status { + type Isis-startup-status; + description + "Last restart status"; + } + leaf te-connection { + type Isis-up; + description + "TE connection"; + } + leaf xtc-connection { + type Isis-up; + description + "XTC connection"; + } + leaf remaining-time-for-next-nsf-restart { + type uint32; + description + "Time remaining until the next NSF restart may be + attempted"; + } + leaf adj-form-count { + type uint32; + description + "Adj Forming count"; + } + leaf adj-full-count { + type uint32; + description + "Adj Full count"; + } + leaf adj-stagger-enabled { + type boolean; + description + "Adjacency Stagger Enabled"; + } + leaf adj-stagger-init { + type uint32; + description + "Adjacency Stagger Initiall Number of Forming + Neighbors Allowed"; + } + leaf adj-stagger-max { + type uint32; + description + "Adjacency Stagger Max Number of Forming + Neighbors Allowed"; + } + leaf srgb-allocated { + type boolean; + description + "Is SRGB allocated ?"; + } + leaf srgb-start { + type uint32; + description + "First label in SRGB"; + } + leaf srgb-end { + type uint32; + description + "Last label in SRGB"; + } + leaf srlb-allocated { + type boolean; + description + "Is SRLB allocated ?"; + } + leaf srlb-start { + type uint32; + description + "First label in SRLB"; + } + leaf srlb-end { + type uint32; + description + "Last label in SRLB"; + } + leaf job-id { + type int32; + description + "Instance job-id"; + } + leaf process-id { + type int32; + description + "Instance process-id"; + } + leaf respawn-count { + type uint32; + description + "Process respawn count"; + } + leaf host-name { + type string; + description + "Local host name"; + } + list manual-area-address { + description + "Manual area addresses"; + leaf entry { + type xr:Osi-area-address; + description + "Manual area addresses"; + } + } + list active-area-address { + description + "Active area addresses"; + leaf entry { + type xr:Osi-area-address; + description + "Active area addresses"; + } + } + list per-topo-data { + description + "Per-topology data"; + uses ISIS-SH-TOPO; + } + list per-level-max-metric-data { + description + "Per-level max-metric data"; + uses ISIS-SH-MXM; + } + list per-level-overload-bit-data { + description + "Per-level overload bit data"; + uses ISIS-SH-OVRLD-BIT; + } + list per-area-data { + max-elements "2"; + description + "Per-area data"; + uses ISIS-SH-AREA; + } + list dd-adj-sid-data { + description + "Delay Deletion Protected Adj-SID data"; + uses ISIS-SH-DDADJ-SID; + } + } + + grouping ISIS-TRAFFIC-INTF-AREA-LAN-TYPE { + description + "Per-interface, per-area LAN-only statistics"; + container iih-count { + description + "IIH statistics"; + uses ISIS-TRAFFIC-PDU-COUNT-TYPE; + } + leaf memory-exhausted-iih-count { + type uint32; + description + "IIHs not sent due to memory exhaustion"; + } + leaf dis-election-count { + type uint32; + description + "DIS elections"; + } + } + + grouping ISIS-TRAFFIC-INTF-AREA-TYPE { + description + "Per-interface, per-area statistics"; + container lsp-count { + description + "LSP statistics"; + uses ISIS-TRAFFIC-PDU-COUNT-TYPE; + } + container csnp-count { + description + "CSNP statistics"; + uses ISIS-TRAFFIC-PDU-COUNT-TYPE; + } + container psnp-count { + description + "PSNP statistics"; + uses ISIS-TRAFFIC-PDU-COUNT-TYPE; + } + leaf lsp-drop-count { + type uint32; + description + "Count of LSPs dropped due to minimum arrival + time config"; + } + leaf lsp-flooding-dup-count { + type uint32; + description + "Count of LSPs already received by neighbors and + not flooded"; + } + } + + grouping ISIS-SH-TRAFFIC-INTF-AREA { + description + "Per-interface, per-area data"; + container statistics { + description + "Statistics"; + uses ISIS-TRAFFIC-INTF-AREA-TYPE; + } + container lan-data { + description + "LAN interface statistics. NULL for non-LAN + interfaces"; + uses ISIS-TRAFFIC-INTF-AREA-LAN-TYPE; + } + leaf level { + type Isis-level; + description + "Level of the area this data relates to"; + } + } + + grouping ISIS-TRAFFIC-PDU-COUNT-TYPE { + description + "Per-interface, per-PDU statistics"; + leaf pdu-receive-count { + type uint32; + description + "PDUs received"; + } + leaf pdu-send-count { + type uint32; + description + "PDUs sent"; + } + leaf pdu-dropped-count { + type uint32; + description + "PDUs dropped"; + } + } + + grouping ISIS-TRAFFIC-INTF-P2P-TYPE { + description + "Per-interface point-to-point statistics"; + container iih-count { + description + "IIH statistics"; + uses ISIS-TRAFFIC-PDU-COUNT-TYPE; + } + leaf memory-exhausted-iih-count { + type uint32; + description + "IIHs not sent due to memory exhaustion"; + } + leaf lsp-retransmit-count { + type uint32; + description + "LSP retransmissions"; + } + } + + grouping ISIS-SH-TRAFFIC-INTF { + description + "IS-IS interface traffic data"; + container p2p-statistics { + description + "P2P interface statistics. NULL for non-P2P + interfaces"; + uses ISIS-TRAFFIC-INTF-P2P-TYPE; + } + leaf traffic-interface { + type xr:Interface-name; + description + "Interface to which traffic statistics apply"; + } + leaf burst-output-lsp-rate { + type uint32; + description + "Burst output LSP rate"; + } + leaf burst-input-lsp-rate { + type uint32; + description + "Burst input LSP rate"; + } + leaf peak-output-lsp-rate { + type uint32; + description + "Peak output LSP rate"; + } + leaf peak-input-lsp-rate { + type uint32; + description + "Peak input LSP rate"; + } + leaf interface-media-type { + type Isis-media-class; + description + "Interface media class"; + } + list per-area-data { + description + "Per-area data"; + uses ISIS-SH-TRAFFIC-INTF-AREA; + } + } + + grouping ISIS-SH-LABEL { + description + "Label data"; + container label-prefix { + description + "label prefix"; + uses ISIS-IP-PREFIX-TYPE; + } + leaf label-type { + type Isis-edm-label-type-enum; + description + "label type"; + } + leaf label-flags { + type uint8; + description + "label flags"; + } + leaf label-refcount { + type uint8; + description + "label refcount"; + } + leaf label-value { + type uint32; + description + "label value"; + } + leaf label-interface { + type Isis-sh-interface-name; + description + "label interface"; + } + leaf label-ifh { + type xr:Interface-name; + description + "label ifh"; + } + leaf label-table-id { + type uint32; + description + "label table id"; + } + leaf label-af-id { + type Isis-af-id; + description + "label af id"; + } + list conflict-label-prefix { + description + "conflict label prefix"; + uses ISIS-IP-PREFIX-TYPE; + } + } + + grouping ISIS-SH-CHKPT-IDB { + description + "Checkpointed interface"; + leaf checkpoint-object-id { + type uint32; + description + "Checkpoint object ID"; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf checkpoint-interface-handle { + type xr:Interface-name; + description + "Local interface handle"; + } + leaf local-circuit-number { + type Isis-circuit-number; + description + "Local circuit number"; + } + leaf dis-areas { + type Isis-levels; + description + "Areas in which this system is DIS"; + } + leaf has-adjacency { + type boolean; + description + "TRUE if there is an adjacency on this interface"; + } + leaf local-snpa { + type xr:Isis-snpa; + description + "SNPA of this interface"; + } + leaf has-joined-mcast-group { + type boolean; + description + "TRUE if multicast group registration succeeded + on this interface"; + } + leaf has-achieved-ldp-sync { + type boolean; + description + "MPLS LDP sync status"; + } + leaf has-achieved-ld-pv6-sync { + type boolean; + description + "MPLS LDPv6 sync status"; + } + } + + grouping ISIS-SH-ERR-LOG-ENT { + description + "An error log entry"; + container generic-data { + description + "Generic entry data"; + uses ISIS-SH-GENERIC-LOG-ENT; + } + leaf error-log-level { + type Isis-err-log-level; + description + "Logging level"; + } + leaf error-code { + type uint32; + description + "Error code"; + } + leaf error-reason { + type string; + description + "Error details"; + } + } + + grouping ISIS-SH-ERR-LOG-STRUC { + description + "Error log structure"; + list log-entry { + description + "Error Log entries"; + uses ISIS-SH-ERR-LOG-ENT; + } + } + + grouping ISIS-MIB-CIRC-ENTRY { + description + "isisCircEntry"; + leaf isis-circ-index { + type uint32; + description + "isisCircIndex"; + } + leaf isis-circ-if-index { + type int32; + description + "isisCircIfIndex"; + } + leaf isis-circ-admin-state { + type int32; + description + "isisCircAdminState"; + } + leaf isis-circ-exist-state { + type int32; + description + "isisCircExistState"; + } + leaf isis-circ-type { + type int32; + description + "isisCircType"; + } + leaf isis-circ-ext-domain { + type int32; + description + "isisCircExtDomain"; + } + leaf isis-circ-level-type { + type int32; + description + "isisCircLevelType"; + } + leaf isis-circ-passive-circuit { + type int32; + description + "isisCircPassiveCircuit"; + } + leaf isis-circ-mesh-group-enabled { + type int32; + description + "isisCircMeshGroupEnabled"; + } + leaf isis-circ-mesh-group { + type uint32; + description + "isisCircMeshGroup"; + } + leaf isis-circ-small-hellos { + type int32; + description + "isisCircSmallHellos"; + } + leaf isis-circ-last-up-time { + type uint32; + description + "isisCircLastUpTime"; + } + leaf isis-circ3-way-enabled { + type int32; + description + "isisCirc3WayEnabled"; + } + leaf isis-circ-extended-circ-id { + type uint32; + description + "isisCircExtendedCircID"; + } + } + + grouping ISIS-MIB-SYS-OBJECT { + description + "isisSysObject"; + leaf isis-sys-version { + type int32; + description + "isisSysVersion"; + } + leaf isis-sys-level-type { + type int32; + description + "isisSysLevelType"; + } + leaf sys-id { + type xr:Osi-system-id; + description + "sys id"; + } + leaf isis-sys-max-path-splits { + type uint32; + description + "isisSysMaxPathSplits"; + } + leaf isis-sys-max-lsp-gen-int { + type uint32; + description + "isisSysMaxLSPGenInt"; + } + leaf isis-sys-poll-es-hello-rate { + type uint32; + description + "isisSysPollESHelloRate"; + } + leaf isis-sys-wait-time { + type uint32; + description + "isisSysWaitTime"; + } + leaf isis-sys-admin-state { + type int32; + description + "isisSysAdminState"; + } + leaf isis-sys-l2to-l1-leaking { + type int32; + description + "isisSysL2toL1Leaking"; + } + leaf isis-sys-max-age { + type uint32; + description + "isisSysMaxAge"; + } + leaf isis-sys-receive-lsp-buffer-size { + type uint32; + description + "isisSysReceiveLSPBufferSize"; + } + leaf isis-sys-notification-enable { + type int32; + description + "isisSysNotificationEnable"; + } + list sys-prot-supported { + description + "sys prot supported"; + leaf entry { + type uint8; + description + "sys prot supported"; + } + } + } + + grouping ISIS-MIB-SUMM-ADDR-ENTRY { + description + "isisSummAddrEntry"; + container ip-prefix { + description + "ip prefix"; + uses ISIS-IP-PREFIX-TYPE; + } + leaf isis-summ-addr-metric { + type uint32; + description + "isisSummAddrMetric"; + } + leaf isis-summ-addr-full-metric { + type uint32; + description + "isisSummAddrFullMetric"; + } + } + + grouping ISIS-MIB-SUMM-ADDR-TABLE { + description + "isisSummAddrTable"; + list isis-summ-addr-entry { + description + "isis summ addr entry"; + uses ISIS-MIB-SUMM-ADDR-ENTRY; + } + } + + grouping ISIS-MIB-ADJ-ENTRY { + description + "isisISAdjEntry"; + leaf isis-is-adj-index { + type uint32; + description + "isisISAdjIndex"; + } + leaf isis-is-adj-state { + type int32; + description + "isisISAdjState"; + } + leaf isis-is-adj3-way-state { + type int32; + description + "isisISAdj3WayState"; + } + leaf nbr-snpa-addr { + type xr:Isis-snpa; + description + "nbr snpa addr"; + } + leaf isis-is-adj-neigh-sys-type { + type int32; + description + "isisISAdjNeighSysType"; + } + leaf nbr-system-id { + type xr:Osi-system-id; + description + "nbr system id"; + } + leaf isis-is-adj-nbr-extended-circ-id { + type uint32; + description + "isisISAdjNbrExtendedCircID"; + } + leaf isis-is-adj-usage { + type int32; + description + "isisISAdjUsage"; + } + leaf isis-is-adj-hold-timer { + type uint32; + description + "isisISAdjHoldTimer"; + } + leaf isis-is-adj-neigh-priority { + type uint32; + description + "isisISAdjNeighPriority"; + } + leaf isis-is-adj-last-up-time { + type uint32; + description + "isisISAdjLastUpTime"; + } + leaf isis-circ-index { + type uint32; + description + "isisCircIndex"; + } + leaf prot-supp { + type Isis-prot-supp; + description + "prot supp"; + } + list area-addr { + description + "area addr"; + leaf entry { + type xr:Osi-area-address; + description + "area addr"; + } + } + list ip-addr { + description + "ip addr"; + uses ISIS-IP-ADDR-TYPE; + } + } + + grouping ISIS-MIB-CIRC-ADJ-TABLE { + description + "intermediateIsisISAdjTable"; + list circuit-adj { + description + "circuit adj"; + uses ISIS-MIB-ADJ-ENTRY; + } + } + + grouping ISIS-MIB-CIRC-LEVEL-ENTRY { + description + "isisCircLevelEntry"; + leaf isis-circ-level-index { + type int32; + description + "isisCircLevelIndex"; + } + leaf isis-circ-level-metric { + type uint32; + description + "isisCircLevelMetric"; + } + leaf isis-circ-level-wide-metric { + type uint32; + description + "isisCircLevelWideMetric"; + } + leaf isis-circ-level-is-priority { + type uint32; + description + "isisCircLevelISPriority"; + } + leaf isis-circ-level-id-octet { + type uint32; + description + "isisCircLevelIDOctet"; + } + leaf circuit-id { + type Isis-circuit-id; + description + "circuit id"; + } + leaf circuit-lan-id { + type Isis-circuit-id; + description + "circuit lan id"; + } + leaf isis-circ-level-hello-multiplier { + type uint32; + description + "isisCircLevelHelloMultiplier"; + } + leaf isis-circ-level-hello-timer { + type uint32; + description + "isisCircLevelHelloTimer"; + } + leaf isis-circ-level-dr-hello-timer { + type uint32; + description + "isisCircLevelDRHelloTimer"; + } + leaf isis-circ-level-lsp-throttle { + type uint32; + description + "isisCircLevelLSPThrottle"; + } + leaf isis-circ-level-min-lsp-retrans-int { + type uint32; + description + "isisCircLevelMinLSPRetransInt"; + } + leaf isis-circ-level-csnp-interval { + type uint32; + description + "isisCircLevelCSNPInterval"; + } + leaf isis-circ-level-part-snp-interval { + type uint32; + description + "isisCircLevelPartSNPInterval"; + } + leaf isis-circ-index { + type uint32; + description + "isisCircIndex"; + } + } + + grouping ISIS-MIB-IP-RA-ENTRY { + description + "isisIPRAEntry"; + container ip-prefix { + description + "ip prefix"; + uses ISIS-IP-PREFIX-TYPE; + } + leaf isis-ipra-next-hop-index { + type uint32; + description + "isisIPRANextHopIndex"; + } + leaf isis-ipra-metric { + type uint32; + description + "isisIPRAMetric"; + } + leaf isis-ipra-metric-type { + type int32; + description + "isisIPRAMetricType"; + } + leaf isis-ipra-full-metric { + type uint32; + description + "isisIPRAFullMetric"; + } + leaf isis-ipra-source-type { + type int32; + description + "isisIPRASourceType"; + } + leaf isis-sys-level-index { + type int32; + description + "isisSysLevelIndex"; + } + } + + grouping ISIS-MIB-IP-RA-TABLE { + description + "isisIPRATable"; + list route { + description + "route"; + uses ISIS-MIB-IP-RA-ENTRY; + } + } + + grouping ISIS-MIB-YANG-MODEL-LSP-ENTRY { + description + "isisLSPListEntry"; + leaf isis-lsp-level { + type int32; + description + "isisLSPLevel"; + } + leaf lsp-lspid { + type xr:Isis-lsp-id; + description + "lsp lspid"; + } + leaf isis-lsptlv-index { + type uint32; + description + "isisLSPTLVIndex"; + } + leaf isis-lsptlv-seq { + type uint32; + description + "isisLSPTLVSeq"; + } + leaf isis-lsptlv-checksum { + type uint16; + description + "isisLSPTLVChecksum"; + } + leaf isis-lsptlv-type { + type uint8; + description + "isisLSPTLVType"; + } + leaf isis-lsptlv-len { + type uint8; + description + "isisLSPTLVLen"; + } + leaf isis-lsptlv-value { + type yang:hex-string; + description + "isisLSPTLVValue"; + } + } + + grouping ISIS-MIB-LSP-SUMMARY-LIST-ENTRY { + description + "isisLSPSummaryListEntry"; + leaf isis-lsp-level { + type int32; + description + "isisLSPLevel"; + } + leaf summ-lspid { + type xr:Isis-lsp-id; + description + "summ lspid"; + } + leaf isis-lsp-seq { + type uint32; + description + "isisLSPSeq"; + } + leaf isis-lsp-zero-life { + type int32; + description + "isisLSPZeroLife"; + } + leaf isis-lsp-checksum { + type uint32; + description + "isisLSPChecksum"; + } + leaf isis-lsp-lifetime-remain { + type uint32; + description + "isisLSPLifetimeRemain"; + } + leaf isis-lsppdu-length { + type uint32; + description + "isisLSPPDULength"; + } + leaf isis-lsp-attributes { + type uint8; + description + "isisLSPAttributes"; + } + } + + grouping ISIS-MIB-SYS-STAT-LEVEL-ENTRY { + description + "isisSystemCounterEntry"; + leaf isis-sys-stat-level { + type int32; + description + "isisSysStatLevel"; + } + leaf isis-sys-stat-corr-ls-ps { + type uint32; + description + "isisSysStatCorrLSPs"; + } + leaf isis-sys-stat-auth-type-fails { + type uint32; + description + "isisSysStatAuthTypeFails"; + } + leaf isis-sys-stat-auth-fails { + type uint32; + description + "isisSysStatAuthFails"; + } + leaf isis-sys-stat-lsp-dbase-oloads { + type uint32; + description + "isisSysStatLSPDbaseOloads"; + } + leaf isis-sys-stat-man-addr-drop-from-areas { + type uint32; + description + "isisSysStatManAddrDropFromAreas"; + } + leaf isis-sys-stat-attmpt-to-ex-max-seq-nums { + type uint32; + description + "isisSysStatAttmptToExMaxSeqNums"; + } + leaf isis-sys-stat-seq-num-skips { + type uint32; + description + "isisSysStatSeqNumSkips"; + } + leaf isis-sys-stat-own-lsp-purges { + type uint32; + description + "isisSysStatOwnLSPPurges"; + } + leaf isis-sys-stat-id-field-len-mismatches { + type uint32; + description + "isisSysStatIDFieldLenMismatches"; + } + leaf isis-sys-stat-part-changes { + type uint32; + description + "isisSysStatPartChanges"; + } + leaf isis-sys-stat-spf-runs { + type uint32; + description + "isisSysStatSPFRuns"; + } + leaf isis-sys-stat-lsp-errors { + type uint32; + description + "isisSysStatLSPErrors"; + } + } + + grouping ISIS-MIB-SYS-LEVEL-ENTRY { + description + "isisSysLevelEntry"; + leaf isis-sys-level-index { + type int32; + description + "isisSysLevelIndex"; + } + leaf isis-sys-level-orig-lsp-buff-size { + type uint32; + description + "isisSysLevelOrigLSPBuffSize"; + } + leaf isis-sys-level-min-lsp-gen-int { + type uint32; + description + "isisSysLevelMinLSPGenInt"; + } + leaf isis-sys-level-state { + type int32; + description + "isisSysLevelState"; + } + leaf isis-sys-level-set-overload { + type int32; + description + "isisSysLevelSetOverload"; + } + leaf isis-sys-level-set-overload-until { + type uint32; + description + "isisSysLevelSetOverloadUntil"; + } + leaf isis-sys-level-metric-style { + type int32; + description + "isisSysLevelMetricStyle"; + } + leaf isis-sys-level-spf-considers { + type int32; + description + "isisSysLevelSPFConsiders"; + } + leaf isis-sys-level-te-enabled { + type int32; + description + "isisSysLevelTEEnabled"; + } + } + + grouping ISIS-MIB-PACKET-COUNTER-ENTRY { + description + "isisPacketCounterEntry"; + leaf isis-packet-count-level { + type int32; + description + "isisPacketCountLevel"; + } + leaf isis-packet-count-direction { + type int32; + description + "isisPacketCountDirection"; + } + leaf isis-packet-count-ii-hello { + type uint32; + description + "isisPacketCountIIHello"; + } + leaf isis-packet-count-is-hello { + type uint32; + description + "isisPacketCountISHello"; + } + leaf isis-packet-count-es-hello { + type uint32; + description + "isisPacketCountESHello"; + } + leaf isis-packet-count-lsp { + type uint32; + description + "isisPacketCountLSP"; + } + leaf isis-packet-count-csnp { + type uint32; + description + "isisPacketCountCSNP"; + } + leaf isis-packet-count-psnp { + type uint32; + description + "isisPacketCountPSNP"; + } + leaf isis-packet-count-unknown { + type uint32; + description + "isisPacketCountUnknown"; + } + leaf isis-circ-index { + type uint32; + description + "isisCircIndex"; + } + } + + grouping ISIS-AREA-ADDRESS-TYPE { + description + "IS-IS area address"; + leaf area-address-length { + type uint8; + units "byte"; + description + "area address length (bytes)"; + } + leaf area-address { + type yang:hex-string; + description + "Encoded area address"; + } + } + + grouping ISIS-MIB-AREA-ADDR-TABLE { + description + "isisAreaAddrTable"; + list area-addr { + description + "area addr"; + uses ISIS-AREA-ADDRESS-TYPE; + } + } + + grouping ISIS-MIB-CIRCUIT-COUNTER-ENTRY { + description + "isisCircuitCounterEntry"; + leaf isis-circuit-type { + type int32; + description + "isisCircuitType"; + } + leaf isis-circ-adj-changes { + type uint32; + description + "isisCircAdjChanges"; + } + leaf isis-circ-num-adj { + type uint32; + description + "isisCircNumAdj"; + } + leaf isis-circ-init-fails { + type uint32; + description + "isisCircInitFails"; + } + leaf isis-circ-rej-adjs { + type uint32; + description + "isisCircRejAdjs"; + } + leaf isis-circ-id-field-len-mismatches { + type uint32; + description + "isisCircIDFieldLenMismatches"; + } + leaf isis-circ-max-area-addr-mismatches { + type uint32; + description + "isisCircMaxAreaAddrMismatches"; + } + leaf isis-circ-auth-type-fails { + type uint32; + description + "isisCircAuthTypeFails"; + } + leaf isis-circ-auth-fails { + type uint32; + description + "isisCircAuthFails"; + } + leaf isis-circ-lan-des-is-changes { + type uint32; + description + "isisCircLANDesISChanges"; + } + leaf isis-circ-index { + type uint32; + description + "isisCircIndex"; + } + } + + grouping ISIS-SH-FLEX-ALGO-AREA { + description + "Flex Algo Area"; + leaf level { + type Isis-level; + description + "Level"; + } + leaf disabled { + type boolean; + description + "Flex-Algo Disabled"; + } + leaf definition-priority { + type uint32; + description + "Flex-Algo Definition Priority"; + } + leaf metric-type { + type Isis-flex-algo-metric; + description + "Flex-Algo Metric Type"; + } + leaf prefix-metric { + type boolean; + description + "Flex-Algo Prefix Metric"; + } + leaf definition-local { + type boolean; + description + "Flex-Algo Definition Is Local"; + } + leaf definition-equal-local { + type boolean; + description + "Flex-Algo Definition Is Equal To Local"; + } + leaf definition-node-id { + type xr:Isis-node-id; + description + "Flex-Algo Definition Node-ID"; + } + list excl-affinity { + description + "ExclAffinity"; + leaf entry { + type uint32; + description + "ExclAffinity"; + } + } + list incl-any-affinity { + description + "InclAnyAffinity"; + leaf entry { + type uint32; + description + "InclAnyAffinity"; + } + } + list incl-all-affinity { + description + "InclAllAffinity"; + leaf entry { + type uint32; + description + "InclAllAffinity"; + } + } + list exc-srlg { + description + "ExclSRLG"; + leaf entry { + type uint32; + description + "ExclSRLG"; + } + } + list reverse-excl-affinity { + description + "ReverseExclAffinity"; + leaf entry { + type uint32; + description + "ReverseExclAffinity"; + } + } + list reverse-incl-any-affinity { + description + "ReverseInclAnyAffinity"; + leaf entry { + type uint32; + description + "ReverseInclAnyAffinity"; + } + } + list reverse-incl-all-affinity { + description + "ReverseInclAllAffinity"; + leaf entry { + type uint32; + description + "ReverseInclAllAffinity"; + } + } + } + + grouping ISIS-SH-FLEX-ALGO { + description + "Flex Algo"; + leaf number { + type uint32; + description + "Flex-Algo Number"; + } + leaf local-priority { + type uint32; + description + "Flex_algo Local Priority"; + } + leaf frr-disabled { + type boolean; + description + "Flex-Algo FRR Disabled"; + } + leaf microloop-avoidance-disabled { + type boolean; + description + "Flex-Algo Microloop Avoidance Disabled"; + } + leaf data-plane-sr { + type boolean; + description + "Flex-Algo Data Plane Segment Routing"; + } + leaf data-plane-ip { + type boolean; + description + "Flex-Algo Data Plane IP"; + } + list area { + description + "Per Area Flex-Algo"; + uses ISIS-SH-FLEX-ALGO-AREA; + } + } + + grouping ISIS-SH-CHKPT-ADJ { + description + "Checkpointed adjacency"; + leaf checkpoint-adjacency-object-id { + type uint32; + description + "Checkpoint object ID"; + } + leaf checkpoint-adjacency-system-id { + type xr:Osi-system-id; + description + "Neighbor system ID"; + } + leaf checkpoint-adjacency-snpa { + type xr:Isis-snpa; + description + "Neighbor SNPA"; + } + leaf checkpoint-adjacency-interface { + type xr:Interface-name; + description + "Local interface"; + } + leaf checkpoint-adjacency-level { + type Isis-level; + description + "Adjacency level"; + } + leaf checkpoint-adjacency-holdtime { + type uint16; + description + "Adjacency holdtime (s)"; + } + leaf checkpoint-adjacency-lan-priority { + type Isis-dr-priority; + description + "Adjacency LAN priority"; + } + leaf checkpoint-adjacency-circuit-number { + type Isis-circuit-number; + description + "Neighbor circuit number"; + } + list checkpoint-adjacency-per-address-family-next-hop { + description + "Per address family next hops"; + uses ISIS-IP-ADDR-TYPE; + } + } + + grouping ISIS-SH-INSTANCE-SUMMARY { + description + "Very basic information about an IS-IS instance"; + leaf running-levels { + type Isis-levels; + description + "Levels running"; + } + leaf l1-routers { + type uint32; + description + "Number of level-1 routers in the area"; + } + leaf l2-routers { + type uint32; + description + "Number of level-2 routers in the domain backbone"; + } + leaf l1ls-ps { + type uint32; + description + "Number of level-1 LSPs in the area"; + } + leaf l2ls-ps { + type uint32; + description + "Number of level-2 LSPs in the domain backbone"; + } + leaf l1-adjacencies { + type uint32; + description + "Number of level-1 adjacencies"; + } + leaf l2-adjacencies { + type uint32; + description + "Number of level-2 adjacencies"; + } + leaf l1l2-adjacencies { + type uint32; + description + "Number of level-1-2 adjacencies"; + } + } + + grouping ISIS-SH-IF-AF-PREFIX-DATA { + description + "Address prefix info"; + leaf is-unnumbered { + type boolean; + description + "Is the interface unnumbered"; + } + list algo { + description + "algo"; + leaf entry { + type uint32; + description + "algo"; + } + } + list prefix { + description + "Array of global prefixes"; + uses ISIS-IP-PREFIX-TYPE; + } + } + + grouping ISIS-SH-IF-AF-PREFIX-UNKNOWN { + description + "Address prefix unknown info"; + leaf reason-code { + type Isis-if-af-prefix-unknown-reason; + description + "Reason why the global prefix(es) is(are) unknown"; + } + } + + grouping ISIS-SH-IF-AF-PREFIX-STATUS { + description + "ISIS SH IF AF PREFIX STATUS"; + container unknown { + when "../status = 'isis-unknown'" { + description + "../Status = 'ISIS_UNKNOWN'"; + } + description + "Unknown state for the global prefixes"; + uses ISIS-SH-IF-AF-PREFIX-UNKNOWN; + } + container prefix-data { + when "../status = 'isis-known'" { + description + "../Status = 'ISIS_KNOWN'"; + } + description + "Global prefix data for the Address Family"; + uses ISIS-SH-IF-AF-PREFIX-DATA; + } + leaf status { + type Isis-known; + description + "Status"; + } + } + + grouping ISIS-IP-ADDR-TYPE { + description + "ISIS IP ADDR TYPE"; + leaf af-name { + type Isis-af-id; + description + "AFName"; + } + leaf ipv4 { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type Isis-ipv4-address; + description + "IPV4 address type"; + } + leaf ipv6 { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Isis-ipv6-address; + description + "IPV6 address type"; + } + } + + grouping ISIS-SH-IF-AF-FWD-ADDR-DATA { + description + "Address-family forwarding address data"; + leaf unnumbered-interface-name { + type string; + description + "If the interface is unnumbered, then its name, + else NULL"; + } + list forwarding-address { + description + "Array of forwarding addresses"; + uses ISIS-IP-ADDR-TYPE; + } + } + + grouping ISIS-SH-IF-AF-FWD-ADDR-UNKNOWN { + description + "Forwarding address unknown data"; + leaf reason-code { + type Isis-if-af-fwd-addr-unknown-reason; + description + "Reason why the forwarding address(es) of an AF + is(are) unknown"; + } + } + + grouping ISIS-SH-IF-AF-FWD-ADDR-STATUS { + description + "ISIS SH IF AF FWD ADDR STATUS"; + container unknown { + when "../status = 'isis-unknown'" { + description + "../Status = 'ISIS_UNKNOWN'"; + } + description + "Unknown forwarding address data"; + uses ISIS-SH-IF-AF-FWD-ADDR-UNKNOWN; + } + container forwarding-address-data { + when "../status = 'isis-known'" { + description + "../Status = 'ISIS_KNOWN'"; + } + description + "Known Forwarding address data"; + uses ISIS-SH-IF-AF-FWD-ADDR-DATA; + } + leaf status { + type Isis-known; + description + "Status"; + } + } + + grouping ISIS-SH-IF-AF-PROTO-DOWN { + description + "Address family protocol down info"; + leaf reason-code { + type Isis-if-af-proto-down-reason; + description + "Reason why the Address Family protocol status is + down"; + } + } + + grouping ISIS-SH-IF-AF-PROTO-STATUS { + description + "ISIS SH IF AF PROTO STATUS"; + container disabled { + when "../status = 'isis-down'" { + description + "../Status = 'ISIS_DOWN'"; + } + description + "Disabled state of the Address Family protocol"; + uses ISIS-SH-IF-AF-PROTO-DOWN; + } + leaf status { + type Isis-up; + description + "Status"; + } + } + + grouping ISIS-SH-IF-AF-ENABLED { + description + "Enabled address-family info of an interface"; + container protocol-status { + description + "Protocol status of the AF"; + uses ISIS-SH-IF-AF-PROTO-STATUS; + } + container forwarding-address-status { + description + "Forwarding status of the AF"; + uses ISIS-SH-IF-AF-FWD-ADDR-STATUS; + } + container prefix-status { + description + "Prefix status of the AF"; + uses ISIS-SH-IF-AF-PREFIX-STATUS; + } + } + + grouping ISIS-SH-IF-AF-DISABLED { + description + "Address family disabled info"; + leaf reason-code { + type Isis-if-af-disabled-reason; + description + "Reason why the Address Family is disabled"; + } + } + + grouping ISIS-SH-IF-AF-STATUS { + description + "ISIS SH IF AF STATUS"; + container disabled { + when "../status = 'isis-disabled'" { + description + "../Status = 'ISIS_DISABLED'"; + } + description + "Disabled info for the AF of an interface"; + uses ISIS-SH-IF-AF-DISABLED; + } + container af-data { + when "../status = 'isis-enabled'" { + description + "../Status = 'ISIS_ENABLED'"; + } + description + "Enabled data for the AF of an interface"; + uses ISIS-SH-IF-AF-ENABLED; + } + leaf status { + type Isis-enabled; + description + "Status"; + } + } + + grouping ISIS-SH-IF-AF { + description + "Per Address family info"; + container af-status { + description + "Address Family status of the interface"; + uses ISIS-SH-IF-AF-STATUS; + } + leaf af-name { + type Isis-af-id; + description + "Address Family Identifier of the interface"; + } + } + + grouping ISIS-SH-MADJ-SID-IF { + description + "Manual Adjacency SID Interface Configuration and + Operation"; + leaf manual-adjacency-sid-label { + type Isis-nodal-sid-value; + description + "Manual Adjacency SID Label"; + } + leaf manual-adjacency-sid-index { + type Isis-nodal-sid-value; + description + "Manual Adjacency SID Index (if configured as + index)"; + } + leaf manual-adjacency-sid-type { + type uint8; + description + "Manual Adjacency SID Type (Absolute or Index)"; + } + leaf sid-protected { + type boolean; + description + "SID configured as protected by backup path"; + } + leaf sid-active { + type boolean; + description + "SID is in use"; + } + } + + grouping ISIS-FRR-TIEBREAKER-SORTED { + description + "FRR Tie Breaker Structure"; + leaf tie-breaker { + type Isis-frr-tiebreaker; + description + "Tie Breaker Type"; + } + leaf index { + type uint8; + description + "Tie Breaker Index"; + } + } + + grouping ISIS-SH-IF-FRR-LEVEL { + description + "Per level FRR information"; + leaf frr-type { + type Isis-frr; + description + "FRR type configured per level for this interface"; + } + leaf is-frr { + type boolean; + description + "Is FRR enabled per level on this interface"; + } + leaf is-remote-lfa { + type boolean; + description + "Is FRR Remote LFA enabled per level for this + interface"; + } + leaf is-ti-lfa { + type boolean; + description + "Is FRR TI LFA enabled per level for this + interface"; + } + leaf ti-lfa-node-tie-breaker-index { + type uint8; + description + "TI LFA node-protecting Tie breaker index"; + } + leaf ti-lfa-srlg-tie-breaker { + type uint8; + description + "TI LFA srlg Tie breaker index"; + } + leaf ti-lfa-linecard-disjoint-tie-breaker { + type uint8; + description + "TI LFA Linecard Disjoint Tie breaker index"; + } + leaf is-tie-breakers-configured { + type boolean; + description + "Is Tiebreaker configured per level for this + interface"; + } + list frr-tie-breaker { + max-elements "8"; + description + "FRR TieBreakers array per level for this + interface"; + uses ISIS-FRR-TIEBREAKER-SORTED; + } + } + + grouping ISIS-SH-IF-TOPO-ADV-PREFIX-DISABLED { + description + "Topology info when prefix advertisement is + disabled"; + leaf reason-code { + type Isis-if-topo-adv-prefix-disabled-reason; + description + "Reason why the prefix advertisement status of a + topology is disabled"; + } + } + + grouping ISIS-SH-IF-TOPO-ADV-PREFIX-STATUS { + description + "ISIS SH IF TOPO ADV PREFIX STATUS"; + container disabled { + when "../status = 'isis-disabled'" { + description + "../Status = 'ISIS_DISABLED'"; + } + description + "Disabled state for the prefix advertisement + status of a topology"; + uses ISIS-SH-IF-TOPO-ADV-PREFIX-DISABLED; + } + leaf status { + type Isis-enabled; + description + "Status"; + } + } + + grouping ISIS-SH-IF-TOPO-ADJ-FORM-DISABLED { + description + "Topology info when adjacency formation is + disabled"; + leaf reason-code { + type Isis-if-topo-adj-form-disabled-reason; + description + "Reason why the adjacency formation status of a + topology is disabled"; + } + } + + grouping ISIS-SH-IF-TOPO-ADJ-FORM-STATUS { + description + "ISIS SH IF TOPO ADJ FORM STATUS"; + container disabled { + when "../status = 'isis-disabled'" { + description + "../Status = 'ISIS_DISABLED'"; + } + description + "Disabled state for the adjacency formation + status of a topology"; + uses ISIS-SH-IF-TOPO-ADJ-FORM-DISABLED; + } + leaf status { + type Isis-enabled; + description + "Status"; + } + } + + grouping ISIS-SH-IF-TOPO-ENABLED { + description + "Enabled topology info of an interface"; + container adjacency-form-status { + description + "Adjacency formation status of a topology"; + uses ISIS-SH-IF-TOPO-ADJ-FORM-STATUS; + } + container adv-prefix-status { + description + "Prefix advertisement status of a topology"; + uses ISIS-SH-IF-TOPO-ADV-PREFIX-STATUS; + } + container level1-frr { + description + "Level1 FRR information"; + uses ISIS-SH-IF-FRR-LEVEL; + } + container level2-frr { + description + "Level2 FRR information"; + uses ISIS-SH-IF-FRR-LEVEL; + } + leaf level1-metric { + type Isis-metric; + description + "L1 metric for this topology"; + } + leaf level2-metric { + type Isis-metric; + description + "L2 metric for this topology"; + } + leaf level1-weight { + type Isis-metric; + description + "L1 metric for this topology"; + } + leaf level2-weight { + type Isis-metric; + description + "L2 metric for this topology"; + } + leaf level1-metric-fallback-bandwidth-activated { + type boolean; + description + "L1 metric fallback bandwidth activated"; + } + leaf level2-metric-fallback-bandwidth-activated { + type boolean; + description + "L2 metric fallback bandwidth activated"; + } + leaf level1-metric-fallback-anomaly-activated { + type boolean; + description + "L1 metric fallback anomaly activated"; + } + leaf level2-metric-fallback-anomaly-activated { + type boolean; + description + "L2 metric fallback anomaly activated"; + } + leaf max-label-supported { + type uint8; + description + "MPLS maximum number of pri labels supported"; + } + leaf max-bkp-label-supported { + type uint8; + description + "MPLS maximum number of backup labels supported"; + } + leaf max-srte-label-supported { + type uint8; + description + "MPLS maximum number of srte labels supported"; + } + leaf max-srat-label-supported { + type uint8; + description + "MPLS maximum number of sr auto-tunnel labels + supported"; + } + leaf level1ldp-sync-enabled { + type boolean; + description + "MPLS LDP sync enabled status for L1"; + } + leaf level2ldp-sync-enabled { + type boolean; + description + "MPLS LDP sync enabled status for L2"; + } + leaf ldp-sync-status { + type boolean; + description + "Status of MPLS LDP synchronization"; + } + leaf ld-pv6-sync-status { + type boolean; + description + "Status of MPLS LDPv6 synchronization"; + } + leaf level1-offset-metric { + type Isis-metric; + description + "L1 metric-offset for this topology"; + } + leaf level2-offset-metric { + type Isis-metric; + description + "L2 metric-offset for this topology"; + } + leaf level1-lkgp-configured { + type boolean; + description + "Link-Group configure status for L1"; + } + leaf level2-lkgp-configured { + type boolean; + description + "Link-Group configure status for L2"; + } + leaf level1pp-metric { + type Isis-metric; + description + "L1 PP-metric for this topology"; + } + leaf level2pp-metric { + type Isis-metric; + description + "L2 PP-metric for this topology"; + } + leaf level1pp-configured { + type boolean; + description + "PP configure status for L1"; + } + leaf level2pp-configured { + type boolean; + description + "PP configure status for L2"; + } + leaf link-group-name { + type string; + description + "Link-Group name"; + } + leaf l1-adv-pfx-policy { + type string; + description + "L1 Advertise Prefix Policy Name"; + } + leaf l2-adv-pfx-policy { + type string; + description + "L2 Advertise Prefix Policy Name"; + } + leaf l1-adv-pfx-pass { + type boolean; + description + "L1 Advertise Prefix Policy Pass"; + } + leaf l2-adv-pfx-pass { + type boolean; + description + "L2 Advertise Prefix Policy Pass"; + } + list manual-adj-sid { + description + "Array of Manual Adjacency SIDs"; + uses ISIS-SH-MADJ-SID-IF; + } + } + + grouping ISIS-SH-IF-TOPO-DISABLED { + description + "Disabled topology info of an interface"; + leaf reason-code { + type Isis-if-topo-disabled-reason; + description + "Reason why the topology is disabled"; + } + } + + grouping ISIS-SH-IF-TOPO-STATUS { + description + "ISIS SH IF TOPO STATUS"; + container disabled { + when "../status = 'isis-disabled'" { + description + "../Status = 'ISIS_DISABLED'"; + } + description + "Disabled information of a topology"; + uses ISIS-SH-IF-TOPO-DISABLED; + } + container enabled { + when "../status = 'isis-enabled'" { + description + "../Status = 'ISIS_ENABLED'"; + } + description + "Enabled information of a topology"; + uses ISIS-SH-IF-TOPO-ENABLED; + } + leaf status { + type Isis-enabled; + description + "Status"; + } + } + + grouping ISIS-SH-IF-TOPO { + description + "Per topology info of an interface"; + container topology-id { + description + "Topology identifier"; + uses ISIS-TOPO-ID-TYPE; + } + container status { + description + "Status of the topology"; + uses ISIS-SH-IF-TOPO-STATUS; + } + } + + grouping ISIS-SH-IF-AREA-ACTIVE-LAN { + description + "Per-interface, per-area data for active LAN + interface"; + leaf circuit-lan-id { + type Isis-circuit-id; + description + "Circuit LAN ID"; + } + leaf time-until-next-iih { + type uint32; + description + "Time (ms) until next IIH"; + } + leaf interface-priority { + type Isis-dr-priority; + description + "Interface's DIS-election priority"; + } + leaf dispriority { + type Isis-dr-priority; + description + "Priority of current DIS on this LAN"; + } + leaf are-we-dis { + type boolean; + description + "Flag indicating if this LAN circuit is the DIS"; + } + } + + grouping ISIS-SH-IF-AREA-ACTIVE { + description + "Per-area data for an interface"; + container lan-data { + description + "LAN data, NULL iff interface has non-LAN media + type"; + uses ISIS-SH-IF-AREA-ACTIVE-LAN; + } + leaf level { + type Isis-level; + description + "Level of the area"; + } + leaf adjacency-count { + type uint32; + description + "Number of adjacencies"; + } + leaf lsp-pacing-interval { + type uint32; + description + "LSP pacing time period (ms)"; + } + leaf psnp-transmit-queue-size { + type uint32; + description + "No. of SNP entries queued to be transmitted"; + } + leaf hello-interval { + type uint32; + description + "Hello interval"; + } + leaf hello-multiplier { + type uint32; + description + "Hello Multiplier"; + } + } + + grouping ISIS-SH-IF-CLNS-P2P-OVER-LAN { + description + "Point-to-point over LAN specific CLNS state"; + container multicast-status { + description + "Multicast group membership status"; + uses ISIS-SH-IF-MCAST-STATUS; + } + } + + grouping ISIS-SH-IF-CLNS-P2P { + description + "Point-to-point CLNS state"; + container p2p-over-lan-data { + description + "Point-to-point over LAN data"; + uses ISIS-SH-IF-CLNS-P2P-OVER-LAN; + } + } + + grouping ISIS-SH-IF-MCAST-INVALID { + description + "Invalid multicast info"; + leaf reason-code { + type Isis-if-mcast-invalid-reason; + description + "Reason why the multicast status is invalid"; + } + } + + grouping ISIS-SH-IF-MCAST-STATUS { + description + "ISIS SH IF MCAST STATUS"; + container invalid { + when "../status = 'isis-invalid'" { + description + "../Status = 'ISIS_INVALID'"; + } + description + "Information pertaining to the invalid multicast + status"; + uses ISIS-SH-IF-MCAST-INVALID; + } + leaf status { + type Isis-valid; + description + "Status"; + } + } + + grouping ISIS-SH-IF-AREA-CLNS { + description + "Per interface per area CLNS state"; + container multicast-status { + description + "Multicast group membership status"; + uses ISIS-SH-IF-MCAST-STATUS; + } + leaf level { + type Isis-level; + description + "Level of the area"; + } + } + + grouping ISIS-SH-IF-CLNS-LAN { + description + "LAN specific CLNS state"; + list per-area-data { + description + "Array of per area CLNS data"; + uses ISIS-SH-IF-AREA-CLNS; + } + } + + grouping ISIS-SH-IF-CLNS-MEDIA-SPECIFIC-STATUS { + description + "Media Specific CLNS state"; + container clns-lan-data { + when "../clns-media-type = 'isis-media-class-lan'" { + description + "../CLNSMediaType = 'ISIS_MEDIA_CLASS_LAN'"; + } + description + "LAN state"; + uses ISIS-SH-IF-CLNS-LAN; + } + container clns-p2p-data { + when "../clns-media-type = 'isis-media-class-p2p'" { + description + "../CLNSMediaType = 'ISIS_MEDIA_CLASS_P2P'"; + } + description + "Point-to-point state"; + uses ISIS-SH-IF-CLNS-P2P; + } + leaf clns-media-type { + type Isis-media-class; + description + "CLNSMediaType"; + } + } + + grouping ISIS-SH-IF-CLNS-SNPA-KNOWN { + description + "CLNS SNPA info"; + leaf snpa { + type xr:Isis-snpa; + description + "Valid SNPA"; + } + } + + grouping ISIS-SH-IF-CLNS-SNPA-UNKNOWN { + description + "Interface info with CLNS SNPA unknown"; + leaf reason-code { + type Isis-if-clns-snpa-unknown-reason; + description + "Reason why the SNPA is unknown"; + } + } + + grouping ISIS-SH-IF-CLNS-SNPA-STATUS { + description + "ISIS SH IF CLNS SNPA STATUS"; + container unknown { + when "../status = 'isis-unknown'" { + description + "../Status = 'ISIS_UNKNOWN'"; + } + description + "Information pertaining to the unknown SNPA state"; + uses ISIS-SH-IF-CLNS-SNPA-UNKNOWN; + } + container known { + when "../status = 'isis-known'" { + description + "../Status = 'ISIS_KNOWN'"; + } + description + "Information pertaining to the known SNPA state"; + uses ISIS-SH-IF-CLNS-SNPA-KNOWN; + } + leaf status { + type Isis-known; + description + "Status"; + } + } + + grouping ISIS-SH-IF-CLNS-MTU-INVALID { + description + "Interface info with invalid MTU"; + leaf reason-code { + type Isis-if-clns-mtu-invalid-reason; + description + "Reason why the MTU is invalid"; + } + } + + grouping ISIS-SH-IF-CLNS-MTU-STATUS { + description + "ISIS SH IF CLNS MTU STATUS"; + container invalid { + when "../status = 'isis-invalid'" { + description + "../Status = 'ISIS_INVALID'"; + } + description + "Information pertaining to the invalid CLNS MTU"; + uses ISIS-SH-IF-CLNS-MTU-INVALID; + } + leaf status { + type Isis-valid; + description + "Status"; + } + leaf mtu { + when "../status = 'isis-valid'" { + description + "../Status = 'ISIS_VALID'"; + } + type uint32; + description + "Valid MTU"; + } + } + + grouping ISIS-SH-IF-CLNS-PROTO-DOWN { + description + "Interface info when CLNS is down"; + leaf reason-code { + type Isis-if-clns-proto-down-reason; + description + "Reason why CLNS is down"; + } + } + + grouping ISIS-SH-IF-CLNS-STATUS { + description + "ISIS SH IF CLNS STATUS"; + container clns-down-info { + when "../status = 'isis-down'" { + description + "../Status = 'ISIS_DOWN'"; + } + description + "State describing why CLNS is down"; + uses ISIS-SH-IF-CLNS-PROTO-DOWN; + } + leaf status { + type Isis-up; + description + "Status"; + } + } + + grouping ISIS-SH-IF-CLNS { + description + "CLNS I/O data for an interface"; + container clns-status { + description + "Is CLNS protcol up or if not, the reason why it + is not up"; + uses ISIS-SH-IF-CLNS-STATUS; + } + container mtu-info { + description + "A valid MTU or the reason for the MTU being + invalid"; + uses ISIS-SH-IF-CLNS-MTU-STATUS; + } + container snpa-state { + description + "SNPA state"; + uses ISIS-SH-IF-CLNS-SNPA-STATUS; + } + container media-specific-state { + description + "Media Specific CLNS state"; + uses ISIS-SH-IF-CLNS-MEDIA-SPECIFIC-STATUS; + } + container timestamp-last-iih-recv { + description + "Timestamp Last IIH Received"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container timestamp-last-iih-sent { + description + "Timestamp Last IIH Sent"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container timestamp-last-rej-pdu { + description + "Timestamp Last Rejected PDU"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf time-until-next-lsp { + type uint32; + description + "Time until next LSP may be sent (ms)"; + } + leaf lsp-transmit-requested-flag { + type boolean; + description + "TRUE if an LSP transmission has been requested"; + } + leaf lsp-transmitted-flag { + type boolean; + description + "TRUE if an LSP transmission has been sent, + indicates LastLSPLevelTransmitted and + LastLSP_IDTransmitted valid"; + } + leaf lsp-txmitd-b2b-limit { + type uint32; + description + "Number of LSPs that can be sent back to back in + the current window without exceeding the pacing + limit"; + } + leaf lsp-txmt-b2b-msecs { + type uint32; + units "millisecond"; + description + "Time im msecs indicating the end of the window + in which the 'back to back lsps to be sent' + counter applies"; + } + leaf last-lsp-level-transmitted { + type Isis-level; + description + "Level of the Last LSP Transmitted"; + } + leaf last-lsp-id-transmitted { + type xr:Isis-lsp-id; + description + "Last LSP ID Transmitted"; + } + leaf time-since-last-iih-recv { + type int32; + description + "Time Since Last IIH Received in msec"; + } + leaf time-since-last-iih-sent { + type int32; + description + "Time Since Last IIH Sent in msec"; + } + leaf pdu-size-last-iih-recv { + type int32; + description + "Size of Last IIH Received in octets"; + } + leaf pdu-size-last-iih-sent { + type int32; + description + "Size of Last IIH Sent in octets"; + } + leaf reason-last-rej-pdu { + type Isis-sh-pdu-rejection-reason; + description + "Reason of Last PDU Rejection"; + } + leaf time-since-last-rej-pdu { + type int32; + description + "Time Since Last Rejected PDU in msec"; + } + leaf pdu-type-last-rej-pdu { + type uint8; + description + "PDU Code of Last Rejected PDU"; + } + } + + grouping ISIS-SH-IF-BFD-TYPE { + description + "Per-interface BFD data"; + leaf enabled { + type boolean; + description + "IPv4 BFD enabled status"; + } + leaf ipv6-enabled { + type boolean; + description + "IPv6 BFD enabled status"; + } + leaf interval { + type uint32; + units "millisecond"; + description + "BFD hello minimum interval in milliseconds"; + } + leaf multiplier { + type uint32; + description + "BFD hello multiplier"; + } + } + + grouping ISIS-SH-IF-ACTIVE-P2P { + description + "Per-interface data"; + leaf time-until-next-iih { + type uint32; + description + "Time in ms before the next IIH can be sent"; + } + leaf retransmit-lsp-queue-size { + type uint32; + description + "No. of LSPs queued to be retransmitted"; + } + leaf retransmit-lsp-interval { + type uint32; + description + "Time in ms until the next scheduled LSP is + retransmitted"; + } + leaf extended-circuit-number { + type Isis-extended-circuit-number; + description + "Extended Circuit Number valid for a P2P + interface"; + } + leaf lspfs-opt-enabled { + type boolean; + description + "Flood speed optimization enabled"; + } + leaf lspfs-opt-pacing-interval { + type uint32; + description + "Flood speed optimization pacing interval in ms"; + } + leaf lspfs-opt-current-tx-max { + type uint32; + description + "Flood speed optimization current transmit max + size"; + } + leaf lspfs-opt-current-tx-burst { + type uint32; + description + "Flood speed optimization current transmit burst + size"; + } + leaf lspfs-opt-tx-speed-average { + type uint32; + description + "Flood speed optimization transmit speed average"; + } + leaf lspfs-opt-rx-speed-average { + type uint32; + description + "Flood speed optimization receive speed average"; + } + leaf lspfs-opt-psnp-delay { + type uint32; + description + "Flood speed optimization PSNP delay"; + } + leaf lspfs-opt-hold-time-active { + type boolean; + description + "Flood speed optimization holdtime active"; + } + leaf lspfs-opt-tx-speed-increase { + type boolean; + description + "Flood speed optimization transmit speed increase"; + } + leaf lspfs-opt-hold-time { + type uint32; + description + "Flood speed optimization holdtime"; + } + leaf lspfs-opt-hold-time-count { + type uint32; + description + "Flood speed optimization holdtime count"; + } + list lspfs-opt-tx-speed-hist { + max-elements "7"; + description + "Flood speed optimization transmit speed history + + buffer"; + leaf entry { + type uint32; + description + "Flood speed optimization transmit speed history + + buffer"; + } + } + list lspfs-opt-rx-speed-hist { + max-elements "7"; + description + "Flood speed optimization receive speed history + + buffer"; + leaf entry { + type uint32; + description + "Flood speed optimization receive speed history + + buffer"; + } + } + } + + grouping ISIS-SH-IF-ADV-PREFIX-DISABLED { + description + "Interface info when prefix advertisement is + disabled"; + leaf reason-code { + type Isis-if-adv-prefix-disabled-reason; + description + "Reason why the interface is not able to + advertise prefixes"; + } + } + + grouping ISIS-SH-IF-ADV-PREFIX-STATUS { + description + "ISIS SH IF ADV PREFIX STATUS"; + container disabled { + when "../status = 'isis-disabled'" { + description + "../Status = 'ISIS_DISABLED'"; + } + description + "Disabled info for the prefix advertisement + status"; + uses ISIS-SH-IF-ADV-PREFIX-DISABLED; + } + leaf status { + type Isis-enabled; + description + "Status"; + } + } + + grouping ISIS-SH-IF-ADJ-FORM-DISABLED { + description + "Interface info when adjacency formation is + disabled"; + leaf reason-code { + type Isis-if-adj-form-disabled-reason; + description + "Reason why the interface is not able to form + adjacencies"; + } + } + + grouping ISIS-SH-IF-ADJ-FORM-STATUS { + description + "ISIS SH IF ADJ FORM STATUS"; + container disabled { + when "../status = 'isis-disabled'" { + description + "../Status = 'ISIS_DISABLED'"; + } + description + "Disabled info for the adjacency formation status"; + uses ISIS-SH-IF-ADJ-FORM-DISABLED; + } + leaf status { + type Isis-enabled; + description + "Status"; + } + } + + grouping ISIS-SH-IF-ENABLED { + description + "State of an enabled interface"; + container adjacency-form-status { + description + "Interface's Adjacency Formation status"; + uses ISIS-SH-IF-ADJ-FORM-STATUS; + } + container adv-prefix-status { + description + "Interface's Prefix Advertisement status"; + uses ISIS-SH-IF-ADV-PREFIX-STATUS; + } + container p2p-data { + description + "Data for an active P2P interface, NULL if not + active or P2P"; + uses ISIS-SH-IF-ACTIVE-P2P; + } + container bfd-data { + description + "The BFD data for the given interface"; + uses ISIS-SH-IF-BFD-TYPE; + } + container clns-data { + description + "Interface data specific to CLNS I/O services"; + uses ISIS-SH-IF-CLNS; + } + leaf interface-media-type { + type Isis-media-class; + description + "Media type of the interface"; + } + leaf enabled-circuit-type { + type Isis-levels; + description + "Enabled Circuit type of the interface"; + } + leaf local-circuit-number { + type Isis-circuit-number; + description + "Local Circuit Number of the interface"; + } + leaf rsi-srlg-registered { + type boolean; + description + "Rsi Srlg Registered"; + } + leaf bandwidth { + type uint64; + description + "Effective bandwidth of the interface"; + } + leaf is-total-bandwidth-set { + type boolean; + description + "Is total bandwidth set"; + } + leaf total-bandwidth { + type uint64; + description + "Total bandwidth of the interface"; + } + leaf delay-norm-interval { + type uint32; + description + "Delay Normalization Interval"; + } + leaf delay-norm-offset { + type uint32; + description + "Delay Normalization Offset"; + } + leaf avg-delay { + type uint32; + description + "Normalized Average Delay"; + } + leaf avg-delay-raw { + type uint32; + description + "Raw Average Delay"; + } + leaf avg-delay-abit { + type boolean; + description + "Average Delay Anomaly Flag"; + } + leaf min-delay { + type uint32; + description + "Normalized Minimum Delay"; + } + leaf max-delay { + type uint32; + description + "Normalized Maximum Delay"; + } + leaf min-delay-raw { + type uint32; + description + "Raw Minimum Delay"; + } + leaf max-delay-raw { + type uint32; + description + "Raw Maximum Delay"; + } + leaf min-max-delay-abit { + type boolean; + description + "Min/Max Delay Anomaly Flag"; + } + leaf packet-loss-percentage { + type uint32; + description + "Packet Loss"; + } + leaf packet-loss-abit { + type boolean; + description + "Packet Loss Anomaly Flag"; + } + list underlying-interface { + description + "Underlying interface list for bundle interfaces"; + uses ISIS-SH-INTF-DET; + } + list per-area-data { + description + "Array of area information for an active + interface"; + uses ISIS-SH-IF-AREA-ACTIVE; + } + list per-topology-data { + description + "Array of topology information"; + uses ISIS-SH-IF-TOPO; + } + list per-address-family-data { + description + "Array of address family information"; + uses ISIS-SH-IF-AF; + } + } + + grouping ISIS-SH-IF-DISABLED { + description + "Disabled interface info"; + leaf reason-code { + type Isis-if-disabled-reason; + description + "Reason why the interface is disabled"; + } + } + + grouping ISIS-SH-IF-STATUS { + description + "ISIS SH IF STATUS"; + container disabled { + when "../status = 'isis-disabled'" { + description + "../Status = 'ISIS_DISABLED'"; + } + description + "The interface state if disabled"; + uses ISIS-SH-IF-DISABLED; + } + container enabled { + when "../status = 'isis-enabled'" { + description + "../Status = 'ISIS_ENABLED'"; + } + description + "The interface state if enabled"; + uses ISIS-SH-IF-ENABLED; + } + leaf status { + type Isis-enabled; + description + "Status"; + } + } + + grouping ISIS-SH-IF-CFG-STATUS { + description + "Configured state of an interface"; + leaf adjacency-form-status { + type boolean; + description + "Configured adjacency formation status"; + } + leaf adv-prefix-status { + type boolean; + description + "Configured prefix advertisement status"; + } + } + + grouping ISIS-SH-IF { + description + "All the Information of an IS-IS interface"; + container configured-status { + description + "Configured interface status"; + uses ISIS-SH-IF-CFG-STATUS; + } + container interface-status-and-data { + description + "Information about the interface status and its + data"; + uses ISIS-SH-IF-STATUS; + } + leaf configured-circuit-type { + type Isis-levels; + description + "Configured circuit type for the interface"; + } + leaf mesh-group { + type Isis-mesh-group-number; + description + "Interface mesh group"; + } + leaf is-type { + type Isis-levels; + description + "IS-type of the router"; + } + leaf nsr-intf { + type boolean; + description + "ISIS NSR Interface"; + } + } + + grouping ISIS-SH-SRLG-STATIC-NAME { + description + "ISIS Static Link SRLG Name "; + leaf srlg-name { + type string; + description + "SRLGName"; + } + } + + grouping ISIS-SH-SRLG-STATIC { + description + "SRLG Static"; + leaf local-ipv4-addr { + type Isis-ipv4-address; + description + "LocalIPv4Addr"; + } + leaf remote-ipv4-addr { + type Isis-ipv4-address; + description + "RemoteIPv4Addr"; + } + list srlg-name-xr { + description + "SRLGNames"; + uses ISIS-SH-SRLG-STATIC-NAME; + } + } + + grouping NSR-STATUS-NII-INTF { + description + "NSR STATUS NII INTF"; + leaf exist { + type boolean; + description + "exist"; + } + leaf brought-up { + type boolean; + description + "brought up"; + } + leaf retry-timer { + type boolean; + description + "retry timer"; + } + leaf running { + type boolean; + description + "running"; + } + leaf has-adj { + type boolean; + description + "has adj"; + } + } + + grouping NSR-STATUS-TE { + description + "NSR STATUS TE"; + leaf enabled { + type uint8; + description + "enabled"; + } + leaf conn-up { + type uint8; + description + "conn up"; + } + leaf te-link-cb { + type uint8; + description + "te link cb"; + } + leaf te-tunnel-cb { + type uint8; + description + "te tunnel cb"; + } + leaf adv-sync-data { + type uint8; + description + "adv sync data"; + } + leaf link-purge-time-on { + type uint8; + description + "link purge time on"; + } + leaf tunnel-purge-time-on { + type uint8; + description + "tunnel purge time on"; + } + leaf has-info-from-te { + type uint8; + description + "has info from te"; + } + } + + grouping NSR-STATUS-DS { + description + "NSR STATUS DS"; + container conn-ts { + description + "conn ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container conn-cb-ts { + description + "conn cb ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container pub-ts { + description + "pub ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container pub-cb-ts { + description + "pub cb ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container reg-ts { + description + "reg ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container reg-cb-ts { + description + "reg cb ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container unreg-ts { + description + "unreg ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container unreg-cb-ts { + description + "unreg cb ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container disconn-cb-ts { + description + "disconn cb ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container notify-cb-ts { + description + "notify cb ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container del-cb-ts { + description + "del cb ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container remove-srv-ts { + description + "remove srv ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container conn-status-ts { + description + "conn status ts"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf conn { + type uint8; + description + "conn"; + } + leaf conn-cb { + type uint8; + description + "conn cb"; + } + leaf pub { + type uint8; + description + "pub"; + } + leaf pub-cb { + type uint8; + description + "pub cb"; + } + leaf reg { + type uint8; + description + "reg"; + } + leaf reg-cb { + type uint8; + description + "reg cb"; + } + leaf unreg { + type uint8; + description + "unreg"; + } + leaf unreg-cb { + type uint8; + description + "unreg cb"; + } + leaf disconn-cb { + type uint8; + description + "disconn cb"; + } + leaf notify-cb { + type uint8; + description + "notify cb"; + } + leaf notify-peer-xr { + type yang:hex-string; + description + "notify peer xr"; + } + leaf del-cb { + type uint8; + description + "del cb"; + } + leaf remove-srv { + type uint8; + description + "remove srv"; + } + leaf conn-status { + type boolean; + description + "conn status"; + } + list notify-peer { + max-elements "4"; + description + "notify peer"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + } + + grouping NSR-STATUS-PM { + description + "NSR STATUS PM"; + leaf reg { + type uint8; + description + "reg"; + } + leaf conn-cb { + type uint8; + description + "conn cb"; + } + leaf disconn-cb { + type uint8; + description + "disconn cb"; + } + leaf conn-status { + type boolean; + description + "conn status"; + } + } + + grouping NSR-STATUS-NCD { + description + "NSR STATUS NCD"; + leaf vm-idx { + type uint8; + description + "vm idx"; + } + leaf conn-up { + type boolean; + description + "conn up"; + } + leaf endp-hdl { + type uint8; + description + "endp hdl"; + } + leaf chksum { + type uint16; + description + "chksum"; + } + leaf send-seqnum { + type uint32; + description + "send seqnum"; + } + leaf recv-cnt { + type uint32; + description + "recv cnt"; + } + } + + grouping NSR-STATUS-GEN { + description + "NSR STATUS GEN"; + leaf my-nodeid { + type uint32; + description + "my nodeid"; + } + leaf my-process-id { + type uint32; + description + "my process id"; + } + leaf pm-issu-role { + type uint8; + description + "pm issu role"; + } + leaf pm-ha-role { + type uint8; + description + "pm ha role"; + } + leaf sysmgr-ha-role { + type uint8; + description + "sysmgr ha role"; + } + leaf nsr-send-ready { + type uint8; + description + "nsr send ready"; + } + leaf nsr-send-unready { + type uint8; + description + "nsr send unready"; + } + leaf nsr-send-err { + type uint32; + description + "nsr send err"; + } + leaf nsr-recv-err { + type uint32; + description + "nsr recv err"; + } + leaf retry-flag { + type uint32; + description + "retry flag"; + } + leaf nsr-enabled { + type boolean; + description + "nsr enabled"; + } + leaf nsr-configured { + type boolean; + description + "nsr configured"; + } + leaf nsf-configured { + type boolean; + description + "nsf configured"; + } + leaf failover { + type boolean; + description + "failover"; + } + leaf lanid-req-needed { + type boolean; + description + "lanid req needed"; + } + } + + grouping NSR-STATUS-INFRA-TYPE { + description + "NSR STATUS INFRA TYPE"; + container gen { + description + "gen"; + uses NSR-STATUS-GEN; + } + container pm { + description + "pm"; + uses NSR-STATUS-PM; + } + container ds { + description + "ds"; + uses NSR-STATUS-DS; + } + container te { + description + "te"; + uses NSR-STATUS-TE; + } + list ncd { + max-elements "5"; + description + "ncd"; + uses NSR-STATUS-NCD; + } + list nii-idb { + max-elements "3"; + description + "nii idb"; + uses NSR-STATUS-NII-INTF; + } + } + + grouping NSR-STATUS-GBL-TYPE { + description + "NSR STATUS GBL TYPE"; + list full-sync-achieved { + max-elements "3"; + description + "full sync achieved"; + leaf entry { + type uint32; + description + "full sync achieved"; + } + } + list man-sync-count { + max-elements "3"; + description + "man sync count"; + leaf entry { + type uint32; + description + "man sync count"; + } + } + list nsr-chg-count { + max-elements "3"; + description + "nsr chg count"; + leaf entry { + type uint32; + description + "nsr chg count"; + } + } + list uptime { + max-elements "3"; + description + "uptime"; + leaf entry { + type uint32; + description + "uptime"; + } + } + list uptime-valid { + min-elements 3; + max-elements "3"; + description + "uptime valid"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + } + + grouping ISIS-SH-NSR-STATUS-GLOBAL { + description + "IS-IS process NSR status"; + container isis-nsr-peer { + description + "ISIS NSR PEER STATUS"; + uses NSR-STATUS-GBL-TYPE; + } + container isis-nsr-infra { + description + "ISIS NSR Infra"; + uses NSR-STATUS-INFRA-TYPE; + } + leaf isis-vm-state { + type uint16; + description + "ISIS VM STATE"; + } + } + + grouping ISIS-SH-SRLG { + description + "ISIS SRLG"; + leaf srlg-name-xr { + type string; + description + "SRLG Name"; + } + leaf srlg-value { + type uint32; + description + "SRLG Value"; + } + leaf srlg-admin-weight { + type uint32; + description + "SRLG Admin Weight"; + } + leaf srlg-value-set { + type boolean; + description + "SRLG value set"; + } + leaf srlg-admin-weight-set { + type boolean; + description + "SRLG Admin Weight Set"; + } + leaf srlg-isis-cfg { + type boolean; + description + "SRLG ISIS Configuration"; + } + leaf srlg-global-cfg { + type boolean; + description + "SRLG Global Configuration"; + } + } + + grouping ISIS-SH-TE-TUNNEL { + description + "MPLS TE tunnel"; + leaf te-system-id { + type xr:Osi-system-id; + description + "Destination system ID"; + } + leaf te-interface { + type xr:Interface-name; + description + "Tunnel interface"; + } + leaf te-bandwidth { + type uint32; + description + "Tunnel bandwidth"; + } + leaf teigp-metric { + type int32; + description + "Tunnel metric"; + } + leaf te-next-hop-ip-address { + type inet:ipv4-address; + description + "Tunnel next-hop IP address"; + } + leaf te-mode-type { + type Isis-metric-mode; + description + "Tunnel metric mode"; + } + leaf teipv4fa-enabled { + type boolean; + description + "Indicates whether MPLS TE IPv4 forwarding + adjacency is enabled"; + } + leaf teipv6fa-enabled { + type boolean; + description + "Indicates whether MPLS TE IPv6 forwarding + adjacency is enabled"; + } + leaf teipv4aa-enabled { + type boolean; + description + "Indicates whether MPLS TE IPv4 autoroute + announce is enabled"; + } + leaf teipv6aa-enabled { + type boolean; + description + "Indicates whether MPLS TE IPv6 autoroute + announce is enabled"; + } + leaf te-checkpoint-object-id { + type uint32; + description + "Tunnel checkpoint object ID"; + } + leaf te-segment-routing-enabled { + type boolean; + description + "Indicates whether MPLS TE segment routing is + enabled"; + } + leaf te-segment-routing-strict-spf { + type boolean; + description + "Indicates whether MPLS TE segment routing strict + SPF is enabled"; + } + leaf te-segment-routing-exclude { + type boolean; + description + "Indicates whether Segment routing labeled + traffic exclusion is enabled"; + } + } + + grouping ISIS-SH-SPF-LOG-ROUTE-UPDATE-PREFIX-COUNTS { + description + "Prefix item counts for the route update phase"; + container unreachable { + description + "Number of unreachable prefixes in the database"; + uses ISIS-PER-PRIORITY-COUNTS; + } + container reachable { + description + "Number of reachable prefixes in the database"; + uses ISIS-PER-PRIORITY-COUNTS; + } + container added { + description + "Number of prefixes added during calculation"; + uses ISIS-PER-PRIORITY-COUNTS; + } + container deleted { + description + "Number of prefixes deleted during calculation"; + uses ISIS-PER-PRIORITY-COUNTS; + } + container modified { + description + "Number of prefixes modified, i.e. a first hop + and/or metric change"; + uses ISIS-PER-PRIORITY-COUNTS; + } + container touched { + description + "Number of prefixes considered whilst updating + the routing table"; + uses ISIS-PER-PRIORITY-COUNTS; + } + } + + grouping ISIS-SH-SPF-LOG-ROUTE-UPDATE-NODE-COUNTS { + description + "Node counts for the route update phase"; + container per-priority-touched { + description + "Per-priority count of nodes considered during + route update"; + uses ISIS-PER-PRIORITY-COUNTS; + } + leaf total-touched { + type uint32; + description + "Total number of nodes considered during route + update"; + } + } + + grouping ISIS-PER-PRIORITY-TIMINGS { + description + "Per-priority timings"; + container critical { + description + "Critical priority"; + uses ISIS-TIMINGS-TYPE; + } + container high { + description + "High priority"; + uses ISIS-TIMINGS-TYPE; + } + container medium { + description + "Medium priority"; + uses ISIS-TIMINGS-TYPE; + } + container low { + description + "Low priority"; + uses ISIS-TIMINGS-TYPE; + } + } + + grouping ISIS-SH-SPF-LOG-ROUTE-UPDATE-TIMINGS-BREAKDOWN { + description + "Breakdown of the time taken to perform the route + update"; + container local-rib-update { + description + "Time to update IS-IS's local RIB"; + uses ISIS-PER-PRIORITY-TIMINGS; + } + container global-rib-build { + description + "Time to build the update to send to the global + RIB"; + uses ISIS-PER-PRIORITY-TIMINGS; + } + container global-rib-send { + description + "Time to send the update to the global RIB"; + uses ISIS-PER-PRIORITY-TIMINGS; + } + } + + grouping ISIS-SH-SPF-LOG-ROUTE-UPDATE { + description + "Statistics for the route update phase of the + calculation"; + container duration { + description + "Duration of the routing table update"; + uses ISIS-TIMINGS-TYPE; + } + container duration-breakdown { + description + "Breakdown of the time taken by the routing table + update"; + uses ISIS-SH-SPF-LOG-ROUTE-UPDATE-TIMINGS-BREAKDOWN; + } + container node-counts { + description + "Node counts"; + uses ISIS-SH-SPF-LOG-ROUTE-UPDATE-NODE-COUNTS; + } + container item-counts { + description + "Prefix item counts"; + uses ISIS-SH-SPF-LOG-ROUTE-UPDATE-PREFIX-COUNTS; + } + container route-counts { + description + "Distinct prefix counts"; + uses ISIS-SH-SPF-LOG-ROUTE-UPDATE-PREFIX-COUNTS; + } + container rib-batch-counts { + description + "Number of RIB batches sent"; + uses ISIS-PER-PRIORITY-COUNTS; + } + } + + grouping ISIS-SH-SPF-LOG-SPT-CALC-NODE-COUNTS { + description + "Node counts for the SPT calculation phase"; + leaf unreachable { + type uint32; + description + "Number of unreachable nodes in the database"; + } + leaf reachable { + type uint32; + description + "Number of reachable nodes in the database"; + } + leaf added { + type uint32; + description + "Number of nodes added to the SPT"; + } + leaf deleted { + type uint32; + description + "Number of nodes deleted from the SPT"; + } + leaf modified { + type uint32; + description + "Number of modified nodes (first hop and/or + metric change)"; + } + leaf touched { + type uint32; + description + "Number of nodes touched whilst calculating the + SPT"; + } + } + + grouping ISIS-TIMINGS-TYPE { + description + "Duration of an event in real and CPU time"; + leaf real-duration { + type uint32; + units "millisecond"; + description + "Real time duration in milliseconds"; + } + leaf cpu-duration { + type uint32; + units "millisecond"; + description + "CPU time duration in milliseconds"; + } + } + + grouping ISIS-SH-SPF-LOG-SPT-CALC { + description + "Statistics for the SPT calculation phase"; + container duration { + description + "Duration of the SPT calculation"; + uses ISIS-TIMINGS-TYPE; + } + container node-counts { + description + "Node counts"; + uses ISIS-SH-SPF-LOG-SPT-CALC-NODE-COUNTS; + } + } + + grouping ISIS-SH-SPF-LOG-TRIGGERS { + description + "The reasons for running a calculation"; + container trigger-prefix { + description + "ID of a changed prefix in the first trigger LSP, + if any"; + uses ISIS-IP-PREFIX-TYPE; + } + leaf unique-trigger-count { + type uint32; + description + "Number of unique triggers on this run"; + } + leaf first-trigger-lsp-id { + type xr:Isis-lsp-id; + description + "ID of the first LSP to trigger the calculation, + if any"; + } + leaf trigger-link { + type xr:Isis-node-id; + description + "ID of a changed link in the first trigger LSP, + if any"; + } + leaf trigger-next-hop-id { + type xr:Osi-system-id; + description + "ID of a changed next hop, if any"; + } + leaf is-sr-uloop-calculation { + type boolean; + description + "Is this SR micro loop calculation?"; + } + leaf is-sr-uloop-link-down { + type boolean; + description + "Is this SR micro loop calculation for link down?"; + } + list trigger { + description + "Triggers applying to this log entry"; + leaf entry { + type Isis-spf-trigger; + description + "Triggers applying to this log entry"; + } + } + } + + grouping ISIS-SH-SPF-LOG-ENT { + description + "IS-IS route calculation log entry"; + container generic-data { + description + "Generic entry data."; + uses ISIS-SH-GENERIC-LOG-ENT; + } + container triggers { + description + "Trigger information"; + uses ISIS-SH-SPF-LOG-TRIGGERS; + } + container spt-calculation-statistics { + description + "Statistics for the SPT calculation phase"; + uses ISIS-SH-SPF-LOG-SPT-CALC; + } + container route-update-statistics { + description + "Statistics for the route update phase"; + uses ISIS-SH-SPF-LOG-ROUTE-UPDATE; + } + leaf class { + type Isis-spf-class; + description + "Type of calculation."; + } + leaf wait-enforced { + type uint32; + units "millisecond"; + description + "Time between the first trigger and the start of + the route calculation, in milliseconds."; + } + leaf next-wait-interval { + type uint32; + units "millisecond"; + description + "Minimum time from end of this route calculation + until the start of the next, in milliseconds"; + } + leaf updated-lsp-count { + type uint32; + description + "Number of LSPs which arrived during the route + calculation"; + } + } + + grouping ISIS-SH-SPF-LOG-STRUC { + description + "Log of IS-IS route calculations"; + list log-entry { + description + "SPF Log entries"; + uses ISIS-SH-SPF-LOG-ENT; + } + } + + grouping ISIS-SH-TE-LOG-ENT { + description + "MPLS TE log entry"; + container generic-data { + description + "Generic entry data"; + uses ISIS-SH-GENERIC-LOG-ENT; + } + leaf neighbor-ip-address { + type inet:ipv4-address; + description + "Neighbor ip address"; + } + leaf status { + type boolean; + description + "Up (TRUE) or down"; + } + leaf log-interface { + type xr:Interface-name; + description + "Interface"; + } + leaf te-log-neighbor-system-id { + type xr:Osi-system-id; + description + "Neighbor system ID"; + } + } + + grouping ISIS-SH-TE-LOG-STRUC { + description + "MPLS TE log"; + list log-entry { + description + "Log entries"; + uses ISIS-SH-TE-LOG-ENT; + } + } + + grouping ISIS-SH-TE-PCE-ADV { + description + "TE PCE advertisements for an IS-IS level"; + leaf pce-adv-data-present { + type boolean; + description + "Indicates whether any PCE advertisements are + present"; + } + leaf pce-flooding-scope { + type Isis-sh-te-pce-flooding-scope; + description + "Flooding scope for PCE advertisement"; + } + leaf pce-address-ipv4 { + type inet:ipv4-address; + description + "IPv4 PCE address"; + } + leaf pce-path-scope-bits { + type uint8; + description + "PCE path scope bits"; + } + leaf pce-path-scope-prefs { + type uint16; + description + "PCE path scope preferences"; + } + } + + grouping ISIS-SH-TE-ADV-SUB-TLV { + description + "MPLS TE advertisement sub TLV"; + leaf te-sub-tlv-type { + type uint16; + description + "Type of sub TLV"; + } + leaf te-sub-tlv-length { + type uint16; + description + "Length of sub TLV"; + } + leaf te-sub-tlv-value { + type yang:hex-string; + description + "Value of sub TLV"; + } + } + + grouping ISIS-SH-TE-ADV-ENTRY { + description + "MPLS TE advertisement"; + leaf te-neighbor-system-id { + type xr:Osi-system-id; + description + "Neighbor system ID"; + } + leaf link-type { + type Isis-sh-te-link; + description + "Link type"; + } + leaf local-ip-address { + type inet:ipv4-address; + description + "Local IP address"; + } + leaf te-neighbor-ip-address { + type inet:ipv4-address; + description + "Neighbor IP address"; + } + leaf te-metric { + type uint32; + description + "TE metric"; + } + leaf te-physical-link-bandwidth { + type uint32; + description + "Physical link bandwidth"; + } + leaf te-reserved-link-bandwidth { + type uint32; + description + "Reservable link bandwidth in global pool"; + } + leaf te-subpool-reserved-link-bandwidth { + type uint32; + description + "Reservable link bandwidth in subpool"; + } + leaf te-affinity { + type uint32; + description + "Affinity bits"; + } + leaf te-ext-admin-num { + type uint32; + description + "TE Ext Admin Number"; + } + leaf te-sub-tlv-data-present { + type boolean; + description + "Indicates whether any TE sub TLVs are present"; + } + list te-transmitted-bandwidth { + max-elements "8"; + description + "Bandwidth in use in global pool"; + leaf entry { + type uint32; + description + "Bandwidth in use in global pool"; + } + } + list te-subpool-transmitted-bandwidth { + max-elements "8"; + description + "Bandwidth in use in subpool"; + leaf entry { + type uint32; + description + "Bandwidth in use in subpool"; + } + } + list te-ext-admin-sub { + max-elements "8"; + description + "TE Extended Admin Group"; + leaf entry { + type uint32; + description + "TE Extended Admin Group"; + } + } + list te-sub-tlv { + description + "List of TE sub TLVs"; + uses ISIS-SH-TE-ADV-SUB-TLV; + } + } + + grouping ISIS-SH-TE-ADV { + description + "TE advertisements for an IS-IS level"; + container tepceadv { + description + "TE PCE advertisements"; + uses ISIS-SH-TE-PCE-ADV; + } + leaf te-adv-data-present { + type boolean; + description + "Indicates whether any TE advertisements are + present"; + } + leaf te-system-id { + type xr:Osi-system-id; + description + "Local system ID"; + } + leaf te-local-router-id { + type inet:ipv4-address; + description + "Local TE router ID"; + } + list te-adv { + description + "List of TE advertisement entries"; + uses ISIS-SH-TE-ADV-ENTRY; + } + } + + grouping ISIS-SH-IPV6-TOPO-REACHABLE-DETAILS { + description + "Status of a reachable IPv6 IS"; + leaf root-distance { + type Isis-metric; + description + "Distance to the IS"; + } + leaf multicast-root-distance { + type Isis-metric; + description + "Distance to the IS"; + } + list paths { + description + "First hops towards the IS"; + uses ISIS-SH-IPV6-PATH; + } + list multicast-path { + description + "Multicast intact first hops towards the IS"; + uses ISIS-SH-IPV6-PATH; + } + list parent { + description + "Parents of the IS within the SPT"; + uses ISIS-SH-TOPO-NEIGHBOR; + } + list children { + description + "Children of the IS within the SPT"; + uses ISIS-SH-TOPO-NEIGHBOR; + } + } + + grouping ISIS-SH-IPV6-TOPO-REACHABLE-STATUS { + description + "Reachability status of an IPv6 IS"; + container reachable-details { + when "../reachable-status = 'isis-reachable'" { + description + "../ReachableStatus = 'ISIS_REACHABLE'"; + } + description + "Status of the IS within the SPT"; + uses ISIS-SH-IPV6-TOPO-REACHABLE-DETAILS; + } + leaf reachable-status { + type Isis-reachable; + description + "ReachableStatus"; + } + } + + grouping ISIS-SH-IPV6-TOPO-ENTRY { + description + "IPv6 IS Link Topology Entry"; + container reachability-status { + description + "Is the IS reachable, and, if so, its status + within the SPT"; + uses ISIS-SH-IPV6-TOPO-REACHABLE-STATUS; + } + container advertised-prefix-item-counts { + description + "Per-priority counts of prefix items advertised + by the IS"; + uses ISIS-PER-PRIORITY-COUNTS; + } + leaf source-address { + type Isis-ipv6-address; + description + "Source Address"; + } + leaf is-participant { + type boolean; + description + "Does the IS participate in the topology?"; + } + leaf is-algo-participant { + type boolean; + description + "Does the IS participate in the Algorithm?"; + } + leaf is-overloaded { + type boolean; + description + "Is the IS overloaded?"; + } + leaf is-attached { + type boolean; + description + "Is the IS attached?"; + } + leaf is-sr-capable { + type boolean; + description + "Is SR Capable"; + } + leaf is-srv6-capable { + type boolean; + description + "Is SRv6 Capable"; + } + leaf algorithm { + type uint32; + description + "Algorithm"; + } + } + + grouping ISIS-SH-TOPO-NEIGHBOR { + description + "SPT Neighbor"; + leaf neighbor-id { + type xr:Osi-system-id; + description + "Neighbor ID"; + } + leaf intermediate-pseudonode { + type xr:Isis-node-id; + description + "Pseudonode between system and its neighbor"; + } + } + + grouping ISIS-SH-IPV4-TOPO-REACHABLE-DETAILS { + description + "Status of a reachable IPv4 IS"; + leaf root-distance { + type Isis-metric; + description + "Distance to the IS"; + } + leaf multicast-root-distance { + type Isis-metric; + description + "Distance to the IS"; + } + list paths { + description + "First hops towards the IS"; + uses ISIS-SH-IPV4-PATH; + } + list multicast-path { + description + "Multicast intact first hops towards the IS"; + uses ISIS-SH-IPV4-PATH; + } + list parent { + description + "Parents of the IS within the SPT"; + uses ISIS-SH-TOPO-NEIGHBOR; + } + list children { + description + "Children of the IS within the SPT"; + uses ISIS-SH-TOPO-NEIGHBOR; + } + } + + grouping ISIS-SH-IPV4-TOPO-REACHABLE-STATUS { + description + "Reachability status of an IPv4 IS"; + container reachable-details { + when "../reachable-status = 'isis-reachable'" { + description + "../ReachableStatus = 'ISIS_REACHABLE'"; + } + description + "Status of the IS within the SPT"; + uses ISIS-SH-IPV4-TOPO-REACHABLE-DETAILS; + } + leaf reachable-status { + type Isis-reachable; + description + "ReachableStatus"; + } + } + + grouping ISIS-SH-IPV4-TOPO-ENTRY { + description + "IPv4 IS Link Topology Entry"; + container reachability-status { + description + "Is the IS reachable, and, if so, its status + within the SPT"; + uses ISIS-SH-IPV4-TOPO-REACHABLE-STATUS; + } + container advertised-prefix-item-counts { + description + "Per-priority counts of prefix items advertised + by the IS"; + uses ISIS-PER-PRIORITY-COUNTS; + } + leaf source-address { + type Isis-ipv4-address; + description + "Source Address"; + } + leaf is-participant { + type boolean; + description + "Does the IS participate in the topology?"; + } + leaf is-algo-participant { + type boolean; + description + "Does the IS participate in the Algorithm?"; + } + leaf is-overloaded { + type boolean; + description + "Is the IS overloaded?"; + } + leaf is-attached { + type boolean; + description + "Is the IS attached?"; + } + leaf is-sr-capable { + type boolean; + description + "Is SR Capable"; + } + leaf algorithm { + type uint32; + description + "Algorithm"; + } + } + + grouping ISIS-SH-TOPO-SUMMARY-NODE-STATS { + description + "Reachability counters"; + leaf reachable-node-count { + type uint32; + description + "Number of nodes reachable in SPT"; + } + leaf unreachable-node-count { + type uint32; + description + "Number of nodes unreachable in SPT"; + } + leaf unreachable-participant-node-count { + type uint32; + description + "Number of participating nodes unreachable in SPT"; + } + } + + grouping ISIS-SH-TOPO-SUMMARY { + description + "Summary Statistics for an IS Topology"; + container router-node-count { + description + "Node Counts for System nodes"; + uses ISIS-SH-TOPO-SUMMARY-NODE-STATS; + } + container pseudonode-node-count { + description + "Node Counts for Pseudonode nodes"; + uses ISIS-SH-TOPO-SUMMARY-NODE-STATS; + } + } + + grouping ISIS-SH-LOC-DETAIL { + description + "Per-level SRv6 Locator data"; + leaf locator-metric { + type Isis-metric; + description + "Configured Locator Metric"; + } + leaf locator-administrative-tag { + type Isis-admin-tag; + description + "Configured Locator Admin Tag"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping ISIS-SRV6-RSVD-OPCODE { + description + "ISIS SRV6 RSVD OPCODE"; + container sid-behavior { + description + "SID Endpoint Behavior"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + leaf sid { + type Isis-ipv6-address; + description + "SID"; + } + leaf block-length { + type uint8; + description + "Block Length"; + } + leaf node-length { + type uint8; + description + "Node Length"; + } + leaf func-length { + type uint8; + description + "Func Length"; + } + leaf args-length { + type uint8; + description + "Args Length"; + } + } + + grouping MGMT-SRV6-SID-FMT { + description + "SRv6 SID Format Info"; + leaf type { + type Mgmt-srv6-sid-fmt; + description + "Format type"; + } + leaf description { + type string; + description + "Format description"; + } + } + + grouping ISIS-IP-PREFIX-TYPE { + description + "ISIS IP PREFIX TYPE"; + container ipv4 { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + description + "ipv4"; + uses ISIS-IPV4-PREFIX-TYPE; + } + container ipv6 { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + description + "ipv6"; + uses ISIS-IPV6-PREFIX-TYPE; + } + leaf af-name { + type Isis-af-id; + description + "AFName"; + } + } + + grouping ISIS-SH-SRV6-LOCATOR { + description + "SRv6 Locator"; + container locator-prefix { + description + "LocatorPrefix"; + uses ISIS-IP-PREFIX-TYPE; + } + container locator-format { + description + "LocatorFormat"; + uses MGMT-SRV6-SID-FMT; + } + leaf locator-name { + type string; + description + "LocatorName"; + } + leaf locator-id { + type uint32; + description + "LocatorID"; + } + leaf locator-flags { + type uint16; + description + "LocatorFlags"; + } + leaf number-of-auto-sids { + type uint8; + description + "NumberOfAutoSIDs"; + } + leaf algorithm { + type uint8; + description + "Algorithm"; + } + leaf locator-active { + type boolean; + description + "Currently active"; + } + leaf anycast-locator { + type boolean; + description + "Anycast Locator"; + } + leaf locator-out-of-resources { + type boolean; + description + "Out of resources"; + } + leaf instance-level { + type Isis-levels; + description + "Isis Instance Level"; + } + leaf locator-advertised-level { + type Isis-level; + description + "Configured Locator Level"; + } + list auto-sid { + max-elements "5"; + description + "Reserved Opcodes"; + uses ISIS-SRV6-RSVD-OPCODE; + } + list per-level-data { + max-elements "2"; + description + "Per-Level data"; + uses ISIS-SH-LOC-DETAIL; + } + } + + grouping ISIS-PER-PRIORITY-COUNTS { + description + "Per-priority counts"; + leaf critical { + type uint32; + description + "Critical priority"; + } + leaf high { + type uint32; + description + "High priority"; + } + leaf medium { + type uint32; + description + "Medium priority"; + } + leaf low { + type uint32; + description + "Low priority"; + } + } + + grouping ISIS-SH-FRR-LEVEL-SUMMARY { + description + "FRR backup statistics for one level"; + container all-paths-protected { + description + "Number of prefixes with all paths having FRR + backup"; + uses ISIS-PER-PRIORITY-COUNTS; + } + container some-paths-protected { + description + "Number of prefixes with some paths having FRR + backup"; + uses ISIS-PER-PRIORITY-COUNTS; + } + container unprotected { + description + "Number of reachable prefixes without FRR backup"; + uses ISIS-PER-PRIORITY-COUNTS; + } + } + + grouping ISIS-SH-FRR-SUMMARY { + description + "FRR summary for an ISIS topology"; + container level1-prefixes { + description + "FRR summary for prefixes reachable in L1"; + uses ISIS-SH-FRR-LEVEL-SUMMARY; + } + container level2-prefixes { + description + "FRR summary for prefixes reachable in L2"; + uses ISIS-SH-FRR-LEVEL-SUMMARY; + } + container unreachable-prefixes { + description + "Unreachable prefixes"; + uses ISIS-PER-PRIORITY-COUNTS; + } + } + + grouping ISIS-SH-IPV6-ROUTE-SUMMARIZATION-STATUS { + description + "Summarization status"; + container summary-prefix { + when "../is-valid = 'isis-valid'" { + description + "../IsValid = 'ISIS_VALID'"; + } + description + "Summarizing Prefix"; + uses ISIS-IPV6-PREFIX-TYPE; + } + leaf is-valid { + type Isis-valid; + description + "IsValid"; + } + } + + grouping ISIS-SH-IPV6-ROUTE-ADV { + description + "How a prefix is advertised in a particular level"; + container summarization-status { + description + "Status of summarization for the prefix"; + uses ISIS-SH-IPV6-ROUTE-SUMMARIZATION-STATUS; + } + leaf level { + type Isis-level; + description + "Level in which the prefix is advertised"; + } + leaf advertising-origin { + type Isis-sh-route-adv-origin; + description + "The origin of the advertisement"; + } + leaf metric { + type Isis-metric; + description + "Metric with which the prefix is advertised"; + } + leaf is-propagated { + type boolean; + description + "Has the prefix been propagated from another + level?"; + } + leaf is-external-metric { + type boolean; + description + "Is the metric an external metric?"; + } + leaf is-external-reachability { + type boolean; + description + "Is the prefix external to the IS-IS domain?"; + } + leaf is-interarea { + type boolean; + description + "Is the up/down bit set?"; + } + leaf algorithm { + type uint32; + description + "Algorithm"; + } + list tags { + description + "Tags associated with the prefix"; + leaf entry { + type Isis-prefix-tag; + description + "Tags associated with the prefix"; + } + } + list nodal-sid { + description + "Nodal SIDs with the prefix item"; + uses ISIS-NODAL-SID-TYPE; + } + list flex-sid { + description + "Flex-Algo SIDs with the prefix item"; + uses ISIS-SID-METRIC-TYPE; + } + } + + grouping ISIS-SH-IPV6-ROUTE-NATIVE-SOURCE { + description + "Source of a native route"; + leaf source-lsp-id { + type xr:Isis-lsp-id; + description + "ID of the LSP advertising the prefix"; + } + leaf source-address { + type Isis-ipv6-address; + description + "Source address of the IS advertising the prefix"; + } + list tags { + description + "Tags associated with the prefix item"; + leaf entry { + type Isis-prefix-tag; + description + "Tags associated with the prefix item"; + } + } + list nodal-sid { + description + "Nodal SIDs with the prefix item"; + uses ISIS-NODAL-SID-TYPE; + } + } + + grouping ISIS-SH-IPV6-UCMP-PATH { + description + "IPv6 path to a destination"; + container frr-backup { + description + "FRR backup for this path"; + uses ISIS-SH-IPV6-FRR-BACKUP; + } + leaf neighbor-id { + type xr:Osi-system-id; + description + "Next hop neighbor ID"; + } + leaf egress-interface { + type Isis-sh-interface-name; + description + "Interface to send the packet out of"; + } + leaf neighbor-address { + type Isis-ipv6-address; + description + "Next hop neighbor's forwarding address"; + } + leaf neighbor-snpa { + type xr:Isis-snpa; + description + "Next hop neighbor's SNPA"; + } + leaf tag { + type Isis-prefix-tag; + description + "Tag associated with the path"; + } + leaf total-ucmp-distance { + type Isis-metric; + description + "Distance to the network via this UCMP next hop"; + } + leaf segment-routing-sid-value { + type Isis-nodal-sid-value; + description + "Segment routing sid value received from first + hop"; + } + leaf weight { + type Isis-metric; + description + "Weight configured on the interface"; + } + leaf is-te-tunnel-interface { + type boolean; + description + "Is path via a TE tunnel"; + } + leaf is-sr-exclude-tunnel-interface { + type boolean; + description + "Is path via an SR-exclude TE tunnel"; + } + leaf outgoing-label { + type uint32; + description + "SR-MPLS label"; + } + } + + grouping ISIS-SH-IPV6-FRR-BACKUP { + description + "FRR backup path"; + leaf neighbor-id { + type xr:Osi-system-id; + description + "Next hop neighbor ID"; + } + leaf egress-interface { + type Isis-sh-interface-name; + description + "Interface to send the packet out of"; + } + leaf neighbor-address { + type Isis-ipv6-address; + description + "Next hop neighbor's forwarding address"; + } + leaf tunnel-egress-interface { + type Isis-sh-interface-name; + description + "Tunnel interface to send the packet out of"; + } + leaf neighbor-snpa { + type xr:Isis-snpa; + description + "Next hop neighbor's SNPA"; + } + leaf remote-lfa-system-id { + type xr:Osi-system-id; + description + "Remote LFA PQ Node's ID"; + } + leaf remote-lfa-router-id { + type Isis-ipv6-address; + description + "Remote LFA Router ID"; + } + leaf remote-lfa-system-pid { + type xr:Osi-system-id; + description + "Remote LFA PQ Node's ID"; + } + leaf remote-lfa-router-pid { + type Isis-ipv6-address; + description + "Remote LFA Router ID"; + } + leaf total-backup-distance { + type Isis-metric; + description + "Distance to the network via this backup path"; + } + leaf segment-routing-sid-value { + type Isis-nodal-sid-value; + description + "Segment routing sid value received from first + hop"; + } + leaf num-sids { + type uint32; + description + "Number of SIDs in TI-LFA/rLFA"; + } + leaf backup-repair-list-size { + type uint32; + description + "Backup Repair List Size"; + } + leaf tilfa-computation { + type Isis-tilfa-computation; + description + "Ti LFA computation which provided backup path"; + } + leaf prefix-source-node-id { + type string; + description + "PrefixSourceNodeID"; + } + leaf is-downstream { + type boolean; + description + "Is the backup path via downstream node?"; + } + leaf is-lc-disjoint { + type boolean; + description + "Is the backup path line card disjoint with + primary?"; + } + leaf is-node-protecting { + type boolean; + description + "Is the backup path node protecting?"; + } + leaf is-primary-path { + type boolean; + description + "Is the backup path an ECMP to the network?"; + } + leaf is-srlg-disjoint { + type boolean; + description + "Is the backup path SRLG disjoint with primary?"; + } + leaf is-remote-lfa { + type boolean; + description + "Is the backup path via a Remote LFA?"; + } + leaf is-epcfrr-lfa { + type boolean; + description + "Is the backup path via a TI-LFA?"; + } + leaf is-strict-spflfa { + type boolean; + description + "Is the backup path TI-LFA strict SPF?"; + } + leaf is-srv6 { + type boolean; + description + "Is the backup path SRv6?"; + } + leaf is-tunnel-requested { + type boolean; + description + "Is SR TE tunnel requested"; + } + leaf weight { + type Isis-metric; + description + "Weight configured on the interface"; + } + leaf outgoing-label { + type uint32; + description + "SR-MPLS label"; + } + list segment-routing-sid-value-entry { + max-elements "3"; + description + "Segment routing sid values for TI-LFA/rLFA"; + leaf entry { + type Isis-nodal-sid-value; + description + "Segment routing sid values for TI-LFA/rLFA"; + } + } + list backup-repair { + description + "BAckup Repair List"; + uses ISIS-SH-REP-EL; + } + } + + grouping ISIS-SH-IPV6-PATH { + description + "IPv6 path to a destination"; + container frr-backup { + description + "FRR backup for this path"; + uses ISIS-SH-IPV6-FRR-BACKUP; + } + leaf neighbor-id { + type xr:Osi-system-id; + description + "Next hop neighbor ID"; + } + leaf egress-interface { + type Isis-sh-interface-name; + description + "Interface to send the packet out of"; + } + leaf neighbor-address { + type Isis-ipv6-address; + description + "Next hop neighbor's forwarding address"; + } + leaf neighbor-snpa { + type xr:Isis-snpa; + description + "Next hop neighbor's SNPA"; + } + leaf tag { + type Isis-prefix-tag; + description + "Tag associated with the path"; + } + leaf tunnel-interface { + type Isis-sh-interface-name; + description + "Explicit path tunnel interface"; + } + leaf segment-routing-sid-value { + type Isis-nodal-sid-value; + description + "Segment routing sid value received from first + hop"; + } + leaf weight { + type Isis-metric; + description + "Weight configured on the interface"; + } + leaf is-te-tunnel-interface { + type boolean; + description + "Is path via a TE tunnel"; + } + leaf is-sr-exclude-tunnel-interface { + type boolean; + description + "Is path via an SR-exclude TE tunnel"; + } + leaf is-srv6 { + type boolean; + description + "Is the path SRv6?"; + } + leaf outgoing-label { + type uint32; + description + "SR-MPLS label"; + } + list uloop-explicit { + description + "Uloop Explicit List"; + uses ISIS-SH-REP-EL; + } + list nnh { + description + "Next next hops"; + uses ISIS-SH-NNH; + } + } + + grouping ISIS-SH-IPV6-ROUTE-NATIVE-PREFERENCE { + description + "Paths and sources for a native route at a + particular preference"; + leaf origin { + type Isis-prefix-origin; + description + "Origin of route"; + } + leaf metric { + type Isis-metric; + description + "Distance to network"; + } + leaf multicast-metric { + type Isis-metric; + description + "Multicast-intact distance to network"; + } + leaf is-external-metric { + type boolean; + description + "Is the metric an external metric?"; + } + leaf administrative-distance { + type uint16; + description + "Administrative Distance"; + } + list paths { + description + "First hops toward the prefix"; + uses ISIS-SH-IPV6-PATH; + } + list ucmp-next-hop { + description + "UCMP first hops toward the prefix"; + uses ISIS-SH-IPV6-UCMP-PATH; + } + list multicast-path { + description + "Multicast intact first hops toward the prefix"; + uses ISIS-SH-IPV6-PATH; + } + list srte-path { + description + "SR-TE native first hops toward the prefix"; + uses ISIS-SH-IPV6-PATH; + } + list explicit-path { + description + "SR microloop avoidance paths"; + uses ISIS-SH-IPV6-PATH; + } + list source { + description + "Sources advertising the prefix"; + uses ISIS-SH-IPV6-ROUTE-NATIVE-SOURCE; + } + list multicast-source { + description + "Multicast-intact sources advertising the prefix"; + uses ISIS-SH-IPV6-ROUTE-NATIVE-SOURCE; + } + } + + grouping ISIS-SH-IPV6-ROUTE-NATIVE-DETAILS { + description + "Details of a native IS-IS route to a prefix"; + container primary { + description + "Primary paths to prefix"; + uses ISIS-SH-IPV6-ROUTE-NATIVE-PREFERENCE; + } + leaf priority { + type Isis-prefix-priority; + description + "Relative importance of the prefix"; + } + leaf is-filtered-by-dl { + type boolean; + description + "Is the prefix filtered out by distribution list?"; + } + leaf local-label { + type uint32; + description + "Prefix local label for SR-MPLS"; + } + leaf local-label-state { + type Isis-local-label-state; + description + "Status of the SR-MPLS local label"; + } + list backup { + description + "Backup paths to prefix"; + uses ISIS-SH-IPV6-ROUTE-NATIVE-PREFERENCE; + } + } + + grouping ISIS-SH-IPV6-ROUTE-NATIVE-STATUS { + description + "Status of a native IS-IS route to a prefix"; + container native-details { + when "../is-valid = 'isis-valid'" { + description + "../IsValid = 'ISIS_VALID'"; + } + description + "Details of the native route"; + uses ISIS-SH-IPV6-ROUTE-NATIVE-DETAILS; + } + leaf is-valid { + type Isis-valid; + description + "IsValid"; + } + } + + grouping ISIS-SH-IPV6-ROUTE { + description + "IS-IS IPv6 route"; + container route-timestamp { + description + "Timestamp of last route update"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container connected-status { + description + "Status of IS-IS directly connected routes to the + prefix"; + uses ISIS-SH-ROUTE-CONN-STATUS; + } + container redistributed-status { + description + "Status of other protocols' routes redistributed + into IS-IS"; + uses ISIS-SH-ROUTE-REDIST-STATUS; + } + container native-status { + description + "Status of native IS-IS routes to the prefix"; + uses ISIS-SH-IPV6-ROUTE-NATIVE-STATUS; + } + leaf route-age { + type uint32; + units "second"; + description + "Seconds since last route update"; + } + list per-level-advertising-detail { + description + "Per level details of how the local system + advertises the prefix"; + uses ISIS-SH-IPV6-ROUTE-ADV; + } + } + + grouping ISIS-SID-METRIC-TYPE { + description + "ISIS SID METRIC TYPE"; + container nodal-sid { + description + "nodal sid"; + uses ISIS-NODAL-SID-TYPE; + } + leaf metric { + type uint32; + description + "metric"; + } + } + + grouping ISIS-IPV4-PREFIX-TYPE { + description + "IPv4 address and prefix length"; + leaf prefix { + type Isis-ipv4-address; + description + "prefix"; + } + leaf prefix-length { + type Isis-ip-prefix-length; + description + "prefix length"; + } + } + + grouping ISIS-SH-IPV4-ROUTE-SUMMARIZATION-STATUS { + description + "Summarization status"; + container summary-prefix { + when "../is-valid = 'isis-valid'" { + description + "../IsValid = 'ISIS_VALID'"; + } + description + "Summarizing Prefix"; + uses ISIS-IPV4-PREFIX-TYPE; + } + leaf is-valid { + type Isis-valid; + description + "IsValid"; + } + } + + grouping ISIS-SH-IPV4-ROUTE-ADV { + description + "How a prefix is advertised in a particular level"; + container summarization-status { + description + "Status of summarization for the prefix"; + uses ISIS-SH-IPV4-ROUTE-SUMMARIZATION-STATUS; + } + leaf level { + type Isis-level; + description + "Level in which the prefix is advertised"; + } + leaf advertising-origin { + type Isis-sh-route-adv-origin; + description + "The origin of the advertisement"; + } + leaf metric { + type Isis-metric; + description + "Metric with which the prefix is advertised"; + } + leaf is-propagated { + type boolean; + description + "Has the prefix been propagated from another + level?"; + } + leaf is-external-metric { + type boolean; + description + "Is the metric an external metric?"; + } + leaf is-external-reachability { + type boolean; + description + "Is the prefix external to the IS-IS domain?"; + } + leaf is-interarea { + type boolean; + description + "Is the up/down bit set?"; + } + leaf algorithm { + type uint32; + description + "Algorithm"; + } + list tags { + description + "Tags associated with the prefix"; + leaf entry { + type Isis-prefix-tag; + description + "Tags associated with the prefix"; + } + } + list nodal-sid { + description + "Nodal SIDs with the prefix item"; + uses ISIS-NODAL-SID-TYPE; + } + list flex-sid { + description + "Flex-Algo SIDs with the prefix item"; + uses ISIS-SID-METRIC-TYPE; + } + } + + grouping ISIS-NODAL-SID-TYPE { + description + "ISIS NODAL SID TYPE"; + leaf sid-value { + type Isis-nodal-sid-value; + description + "sid value"; + } + leaf rflag { + type uint8; + description + "rflag"; + } + leaf nflag { + type uint8; + description + "nflag"; + } + leaf pflag { + type uint8; + description + "pflag"; + } + leaf eflag { + type uint8; + description + "eflag"; + } + leaf vflag { + type uint8; + description + "vflag"; + } + leaf lflag { + type uint8; + description + "lflag"; + } + leaf algorithm { + type uint8; + description + "algorithm"; + } + } + + grouping ISIS-SH-IPV4-ROUTE-NATIVE-SOURCE { + description + "Source of a native route"; + leaf source-lsp-id { + type xr:Isis-lsp-id; + description + "ID of the LSP advertising the prefix"; + } + leaf source-address { + type Isis-ipv4-address; + description + "Source address of the IS advertising the prefix"; + } + list tags { + description + "Tags associated with the prefix item"; + leaf entry { + type Isis-prefix-tag; + description + "Tags associated with the prefix item"; + } + } + list nodal-sid { + description + "Nodal SIDs with the prefix item"; + uses ISIS-NODAL-SID-TYPE; + } + } + + grouping ISIS-SH-IPV4-UCMP-PATH { + description + "IPv4 path to a destination"; + container frr-backup { + description + "FRR backup for this path"; + uses ISIS-SH-IPV4-FRR-BACKUP; + } + leaf neighbor-id { + type xr:Osi-system-id; + description + "Next hop neighbor ID"; + } + leaf egress-interface { + type Isis-sh-interface-name; + description + "Interface to send the packet out of"; + } + leaf neighbor-address { + type Isis-ipv4-address; + description + "Next hop neighbor's forwarding address"; + } + leaf neighbor-snpa { + type xr:Isis-snpa; + description + "Next hop neighbor's SNPA"; + } + leaf tag { + type Isis-prefix-tag; + description + "Tag associated with the path"; + } + leaf total-ucmp-distance { + type Isis-metric; + description + "Distance to the network via this UCMP next hop"; + } + leaf segment-routing-sid-value { + type Isis-nodal-sid-value; + description + "Segment routing sid value received from first + hop"; + } + leaf weight { + type Isis-metric; + description + "Weight configured on the interface"; + } + leaf is-te-tunnel-interface { + type boolean; + description + "Is path via a TE tunnel"; + } + leaf is-sr-exclude-tunnel-interface { + type boolean; + description + "Is path via an SR-exclude TE tunnel"; + } + leaf outgoing-label { + type uint32; + description + "SR-MPLS label"; + } + } + + grouping ISIS-SH-NNH { + description + "Next next hops for a prefix"; + leaf link-id-set { + type boolean; + description + "If link_id is given"; + } + leaf ipv4-set { + type boolean; + description + "If ipv4 address is given"; + } + leaf link-id { + type uint32; + description + "link ID of the next next hop"; + } + leaf ipv4-address { + type Isis-ipv4-address; + description + "Ipv4 address of the next next hop"; + } + } + + grouping ISIS-SH-REP-EL { + description + "OSPF Repair Element"; + leaf repair-element-node-id { + type string; + description + "RepairElementNodeID"; + } + leaf repair-ipv4-addr { + type Isis-ipv4-address; + description + "RepairIPv4Addr"; + } + leaf repair-ipv6-addr { + type Isis-ipv6-address; + description + "RepairIPv6Addr"; + } + leaf repair-label { + type uint32; + description + "Repair Label"; + } + leaf repair-element-type { + type uint32; + description + "Repair Element Type"; + } + leaf repair-strict-spf-label { + type uint32; + description + "Repair Strict SPF Label"; + } + leaf repair-srv6-sid { + type Isis-ipv6-address; + description + "Repair SRv6 SID"; + } + leaf repair-srv6-end-func { + type Isis-srv6-endpoint-func; + description + "Repair SRv6 End Function"; + } + leaf repair-srv6-strict-spf-sid { + type Isis-ipv6-address; + description + "Repair SRv6 Strict SPF SID"; + } + leaf repair-srv6-strict-spf-end-func { + type Isis-srv6-endpoint-func; + description + "Repair SRv6 Strict SPF End Function"; + } + } + + grouping ISIS-SH-IPV4-FRR-BACKUP { + description + "FRR backup path"; + leaf neighbor-id { + type xr:Osi-system-id; + description + "Next hop neighbor ID"; + } + leaf egress-interface { + type Isis-sh-interface-name; + description + "Interface to send the packet out of"; + } + leaf neighbor-address { + type Isis-ipv4-address; + description + "Next hop neighbor's forwarding address"; + } + leaf tunnel-egress-interface { + type Isis-sh-interface-name; + description + "Tunnel Interface to send the packet out of"; + } + leaf neighbor-snpa { + type xr:Isis-snpa; + description + "Next hop neighbor's SNPA"; + } + leaf remote-lfa-system-id { + type xr:Osi-system-id; + description + "Remote LFA PQ Node's ID"; + } + leaf remote-lfa-router-id { + type Isis-ipv4-address; + description + "Remote LFA Router ID"; + } + leaf remote-lfa-system-pid { + type xr:Osi-system-id; + description + "Remote LFA PQ Node's ID"; + } + leaf remote-lfa-router-pid { + type Isis-ipv4-address; + description + "Remote LFA Router ID"; + } + leaf total-backup-distance { + type Isis-metric; + description + "Distance to the network via this backup path"; + } + leaf segment-routing-sid-value { + type Isis-nodal-sid-value; + description + "Segment routing sid value received from first + hop"; + } + leaf num-sids { + type uint32; + description + "Number of SIDs in TI-LFA/rLFA"; + } + leaf backup-repair-list-size { + type uint32; + description + "Backup Repair List Size"; + } + leaf tilfa-computation { + type Isis-tilfa-computation; + description + "Ti LFA computation which provided backup path"; + } + leaf prefix-source-node-id { + type string; + description + "PrefixSourceNodeID"; + } + leaf is-downstream { + type boolean; + description + "Is the backup path via downstream node?"; + } + leaf is-lc-disjoint { + type boolean; + description + "Is the backup path line card disjoint with + primary?"; + } + leaf is-node-protecting { + type boolean; + description + "Is the backup path node protecting?"; + } + leaf is-primary-path { + type boolean; + description + "Is the backup path an ECMP to the network?"; + } + leaf is-srlg-disjoint { + type boolean; + description + "Is the backup path SRLG disjoint with primary?"; + } + leaf is-remote-lfa { + type boolean; + description + "Is the backup path via a Remote LFA?"; + } + leaf is-epcfrr-lfa { + type boolean; + description + "Is the backup path via a TI-LFA?"; + } + leaf is-strict-spflfa { + type boolean; + description + "Is the backup path TI-LFA strict SPF?"; + } + leaf is-tunnel-requested { + type boolean; + description + "Is SR TE tunnel requested"; + } + leaf weight { + type Isis-metric; + description + "Weight configured on the interface"; + } + leaf outgoing-label { + type uint32; + description + "SR-MPLS label"; + } + list segment-routing-sid-value-entry { + max-elements "3"; + description + "Segment routing sid values for TI-LFA/rLFA"; + leaf entry { + type Isis-nodal-sid-value; + description + "Segment routing sid values for TI-LFA/rLFA"; + } + } + list backup-repair { + description + "Backup Repair List"; + uses ISIS-SH-REP-EL; + } + } + + grouping ISIS-SH-IPV4-PATH { + description + "IPv4 path to a destination"; + container frr-backup { + description + "FRR backup for this path"; + uses ISIS-SH-IPV4-FRR-BACKUP; + } + leaf neighbor-id { + type xr:Osi-system-id; + description + "Next hop neighbor ID"; + } + leaf egress-interface { + type Isis-sh-interface-name; + description + "Interface to send the packet out of"; + } + leaf neighbor-address { + type Isis-ipv4-address; + description + "Next hop neighbor's forwarding address"; + } + leaf neighbor-snpa { + type xr:Isis-snpa; + description + "Next hop neighbor's SNPA"; + } + leaf tag { + type Isis-prefix-tag; + description + "Tag associated with the path"; + } + leaf tunnel-interface { + type Isis-sh-interface-name; + description + "Explicit path tunnel interface"; + } + leaf segment-routing-sid-value { + type Isis-nodal-sid-value; + description + "Segment routing sid value received from first + hop"; + } + leaf weight { + type Isis-metric; + description + "Weight configured on the interface"; + } + leaf is-te-tunnel-interface { + type boolean; + description + "Is path via a TE tunnel"; + } + leaf is-sr-exclude-tunnel-interface { + type boolean; + description + "Is path via an SR-exclude TE tunnel"; + } + leaf outgoing-label { + type uint32; + description + "SR-MPLS label"; + } + list uloop-explicit { + description + "Uloop Explicit List"; + uses ISIS-SH-REP-EL; + } + list nnh { + description + "Next next hops"; + uses ISIS-SH-NNH; + } + } + + grouping ISIS-SH-IPV4-ROUTE-NATIVE-PREFERENCE { + description + "Paths and sources for a native route at a + particular preference"; + leaf origin { + type Isis-prefix-origin; + description + "Origin of route"; + } + leaf metric { + type Isis-metric; + description + "Distance to network"; + } + leaf multicast-metric { + type Isis-metric; + description + "Multicast-intact distance to network"; + } + leaf is-external-metric { + type boolean; + description + "Is the metric an external metric?"; + } + leaf administrative-distance { + type uint16; + description + "Administrative Distance"; + } + list paths { + description + "First hops toward the prefix"; + uses ISIS-SH-IPV4-PATH; + } + list ucmp-next-hop { + description + "UCMP first hops toward the prefix"; + uses ISIS-SH-IPV4-UCMP-PATH; + } + list multicast-path { + description + "Multicast intact first hops toward the prefix"; + uses ISIS-SH-IPV4-PATH; + } + list srte-path { + description + "SR-TE native first hops toward the prefix"; + uses ISIS-SH-IPV4-PATH; + } + list explicit-path { + description + "SR microloop avoidance paths"; + uses ISIS-SH-IPV4-PATH; + } + list source { + description + "Sources advertising the prefix"; + uses ISIS-SH-IPV4-ROUTE-NATIVE-SOURCE; + } + list multicast-source { + description + "Multicast-intact sources advertising the prefix"; + uses ISIS-SH-IPV4-ROUTE-NATIVE-SOURCE; + } + } + + grouping ISIS-SH-IPV4-ROUTE-NATIVE-DETAILS { + description + "Details of a native IS-IS route to a prefix"; + container primary { + description + "Primary paths to prefix"; + uses ISIS-SH-IPV4-ROUTE-NATIVE-PREFERENCE; + } + leaf priority { + type Isis-prefix-priority; + description + "Relative importance of the prefix"; + } + leaf is-filtered-by-dl { + type boolean; + description + "Is the prefix filtered out by distribution list?"; + } + leaf local-label { + type uint32; + description + "Prefix local label for SR-MPLS"; + } + leaf local-label-state { + type Isis-local-label-state; + description + "Status of the SR-MPLS local label"; + } + list backup { + description + "Backup paths to prefix"; + uses ISIS-SH-IPV4-ROUTE-NATIVE-PREFERENCE; + } + } + + grouping ISIS-SH-IPV4-ROUTE-NATIVE-STATUS { + description + "Status of a native IS-IS route to a prefix"; + container native-details { + when "../is-valid = 'isis-valid'" { + description + "../IsValid = 'ISIS_VALID'"; + } + description + "Details of the native route"; + uses ISIS-SH-IPV4-ROUTE-NATIVE-DETAILS; + } + leaf is-valid { + type Isis-valid; + description + "IsValid"; + } + } + + grouping ISIS-SH-REDIST-ENTRY-PROTO { + description + "Redistributed protocol information"; + leaf protocol { + type Isis-redist-proto; + description + "Protocol"; + } + leaf isis-instance-id { + when "../protocol = 'isis-redist-isis'" { + description + "../Protocol = 'ISIS_REDIST_ISIS'"; + } + type Isis-string; + description + "IS-IS instance identifier"; + } + leaf ospf-process-id { + when "../protocol = 'isis-redist-ospf'" { + description + "../Protocol = 'ISIS_REDIST_OSPF'"; + } + type Isis-string; + description + "OSPF process identifier"; + } + leaf ospfv3-process-id { + when "../protocol = 'isis-redist-ospfv3'" { + description + "../Protocol = 'ISIS_REDIST_OSPFV3'"; + } + type Isis-string; + description + "OSPFv3 process identifier"; + } + leaf bgp-as-number { + when "../protocol = 'isis-redist-bgp'" { + description + "../Protocol = 'ISIS_REDIST_BGP'"; + } + type Isis-string; + description + "BGP Autonomous System number"; + } + leaf eigrp-as-number { + when "../protocol = 'isis-redist-eigrp'" { + description + "../Protocol = 'ISIS_REDIST_EIGRP'"; + } + type Isis-string; + description + "EIGRP Autonomous System number"; + } + leaf application-name { + when "../protocol = 'isis-redist-application'" { + description + "../Protocol = 'ISIS_REDIST_APPLICATION'"; + } + type Isis-string; + description + "Application Name"; + } + } + + grouping ISIS-SH-ROUTE-REDIST-LEVEL-DETAILS { + description + "Details of a route redistributed into a + particular level"; + container owner { + description + "Protocol redistributing the route"; + uses ISIS-SH-REDIST-ENTRY-PROTO; + } + leaf level { + type Isis-level; + description + "Level into which the route is redistributed"; + } + } + + grouping ISIS-SH-ROUTE-REDIST-DETAILS { + description + "ISIS SH ROUTE REDIST DETAILS"; + list isis-sh-route-redist-detail { + description + "isis sh route redist detail"; + uses ISIS-SH-ROUTE-REDIST-LEVEL-DETAILS; + } + } + + grouping ISIS-SH-ROUTE-REDIST-STATUS { + description + "Status of redistributed routes to a prefix"; + container redistribution-details { + when "../is-valid = 'isis-valid'" { + description + "../IsValid = 'ISIS_VALID'"; + } + description + "Per level details of the redistributed route"; + uses ISIS-SH-ROUTE-REDIST-DETAILS; + } + leaf is-valid { + type Isis-valid; + description + "IsValid"; + } + } + + grouping ISIS-SH-ROUTE-CONN-DETAILS { + description + "Details of an IS-IS directly connected prefix"; + list interface { + description + "Interfaces"; + leaf entry { + type Isis-sh-interface-name; + description + "Interfaces"; + } + } + } + + grouping ISIS-SH-ROUTE-CONN-STATUS { + description + "Status of an IS-IS directly connected prefix"; + container connected-details { + when "../is-valid = 'isis-valid'" { + description + "../IsValid = 'ISIS_VALID'"; + } + description + "Details of the directly connected prefix"; + uses ISIS-SH-ROUTE-CONN-DETAILS; + } + leaf is-valid { + type Isis-valid; + description + "IsValid"; + } + } + + grouping ISIS-SH-IPV4-ROUTE { + description + "IS-IS IPv4 route"; + container route-timestamp { + description + "Timestamp of last route update"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container connected-status { + description + "Status of IS-IS directly connected routes to the + prefix"; + uses ISIS-SH-ROUTE-CONN-STATUS; + } + container redistributed-status { + description + "Status of other protocols' routes redistributed + into IS-IS"; + uses ISIS-SH-ROUTE-REDIST-STATUS; + } + container native-status { + description + "Status of native IS-IS routes to the prefix"; + uses ISIS-SH-IPV4-ROUTE-NATIVE-STATUS; + } + leaf route-age { + type uint32; + units "second"; + description + "Seconds since last route update"; + } + list per-level-advertising-detail { + description + "Per level details of how the local system + advertises the prefix"; + uses ISIS-SH-IPV4-ROUTE-ADV; + } + } + + grouping ISIS-SH-LSP-DB-LOG-ENT { + description + "LSP Database Log Entry"; + container generic-data { + description + "Generic entry data"; + uses ISIS-SH-GENERIC-LOG-ENT; + } + container new-lsp-entry { + description + "Entry being inserted or the updated version of + an old entry."; + uses ISIS-SH-LSP-HEADER; + } + container old-lsp-entry { + description + "Entry being replaced."; + uses ISIS-SH-LSP-HEADER; + } + leaf lspdb-operation { + type Isis-lsp-db-op; + description + "Operation applying to this entry."; + } + leaf reason-lsp-was-installed { + type Isis-sh-lsp-db-install-reason; + description + "Reason why a new (version of an) LSP was + installed in LSPDB"; + } + leaf incoming-interface { + type Isis-sh-interface-name; + description + "First interface this LSP was received on"; + } + leaf incoming-neighbor-sys-id { + type xr:Osi-system-id; + description + "Neighbor who sent us this LSP first"; + } + } + + grouping ISIS-SH-LSP-DB-LOG-STRUC { + description + "LSP Database Log"; + list log-entry { + description + "Entries"; + uses ISIS-SH-LSP-DB-LOG-ENT; + } + } + + grouping ISIS-SH-LSP-LOG-ENT { + description + "LSP-log entry"; + container generic-data { + description + "Generic entry data"; + uses ISIS-SH-GENERIC-LOG-ENT; + } + leaf trigger-count { + type uint32; + description + "Number of triggers on this run. May not be equal + to the number of trigger event types if one or + more trigger events has occurred more than once."; + } + leaf delayed-trigger-count { + type uint32; + description + "Number of delayed triggers"; + } + leaf log-interface { + type xr:Interface-name; + description + "Appropriate interface, if any"; + } + leaf pseudo-node-number { + type Isis-pseudo-node-number; + description + "Pseudo-node number"; + } + list trigger { + description + "Triggers applying to this log entry."; + leaf entry { + type Isis-lsp-trigger; + description + "Triggers applying to this log entry."; + } + } + } + + grouping ISIS-SH-LSP-LOG-STRUC { + description + "LSP log"; + list log-entry { + description + "Log entries"; + uses ISIS-SH-LSP-LOG-ENT; + } + } + + grouping ISIS-SH-LSP-FLOODING-DATA { + description + "LSP meta-data"; + container time-stamp-received { + description + "When this LSP was first received and installed + in the LSPDB"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf incoming-neighbor-id { + type xr:Osi-system-id; + description + "Neighbor who sent us this LSP first"; + } + leaf incoming-interface { + type Isis-sh-interface-name; + description + "First interface this LSP was received on"; + } + leaf reason-lsp-was-installed { + type Isis-sh-lsp-db-install-reason; + description + "Reason why a new (version of an) LSP was + installed in LSPDB"; + } + } + + grouping ISIS-SH-LSP-HEADER { + description + "Contents of an IS-IS LSP header"; + leaf lsp-id { + type xr:Isis-lsp-id; + description + "The LSP ID"; + } + leaf local-lsp-flag { + type boolean; + description + "TRUE if this is a locally generated LSP"; + } + leaf lsp-active-flag { + type boolean; + description + "TRUE if this LSP has not expired"; + } + leaf lsp-holdtime { + type uint16; + units "second"; + description + "Time, in seconds, until LSP expiry (if active) + or deletion (if expired) "; + } + leaf lsp-rcvd-holdtime { + type uint16; + units "second"; + description + "Time, in seconds, for the received LSP it will + be zero for the local LSP "; + } + leaf lsp-sequence-number { + type uint32; + description + "The LSP sequence number"; + } + leaf lsp-checksum { + type uint16; + description + "The LSP checksum"; + } + leaf lsp-partition-repair-supported-flag { + type boolean; + description + "TRUE if partition repair is supported"; + } + leaf lsp-attached-flag { + type boolean; + description + "TRUE if attached bit is set"; + } + leaf lsp-overloaded-flag { + type boolean; + description + "TRUE if the overload bit is set"; + } + leaf lsp-nonv1a-flag { + type uint16; + description + "TRUE if the LSP is non-v1a, XXX for testing"; + } + leaf lsp-level { + type Isis-levels; + description + "The type of the IS sourcing the LSP"; + } + leaf lsp-length { + type uint16; + description + "The total length of the LSP"; + } + leaf max-area-addresses { + type uint8; + description + "max area addresses"; + } + leaf id-length { + type uint8; + description + "System Id length"; + } + leaf version { + type uint8; + description + "isis version"; + } + leaf version2 { + type uint8; + description + "isis version2"; + } + leaf unauthenticated-flag { + type boolean; + description + "TRUE if the LSP does not have valid + authentication"; + } + } + + grouping ISIS-SH-LSP { + description + "An IS-IS LSP"; + container lsp-header-data { + description + "Information from the LSP header"; + uses ISIS-SH-LSP-HEADER; + } + container lsp-flooding-data { + description + "LSP flooding-data: sending neighbor, receiving + intf, install reason"; + uses ISIS-SH-LSP-FLOODING-DATA; + } + leaf lsp-body { + type yang:hex-string; + description + "LSP as received/sent over the wire, starting + from the LSP ID field"; + } + } + + grouping ISIS-SH-ADJ-BFD-ITEM { + description + "BFD TLV item"; + leaf mtid { + type uint16; + description + "Topology ID"; + } + leaf nlpid { + type uint8; + description + "Network Layer Protocol ID"; + } + } + + grouping ISIS-SH-ADJ-TOPO { + description + "Per-topology per-adjacency data"; + container id { + description + "Topology ID"; + uses ISIS-TOPO-ID-TYPE; + } + leaf topology-status { + type Isis-adj-topo-status; + description + "Status of topology in adjacency"; + } + leaf parallel-p2p-link-suppressed-flag { + type boolean; + description + "TRUE if suppressed parallel point-to-point link"; + } + list useable-flex-algo-nr { + description + "Flexible algorithms that can make use of this + + adjacency"; + leaf entry { + type uint8; + description + "Flexible algorithms that can make use of this + + adjacency"; + } + } + } + + grouping ISIS-SH-ADJ { + description + "An IS-IS adjacency"; + leaf adjacency-system-id { + type xr:Osi-system-id; + description + "Neighbor system ID"; + } + leaf adjacency-snpa { + type xr:Isis-snpa; + description + "Neighbor SNPA"; + } + leaf adjacency-interface { + type xr:Interface-name; + description + "Local interface"; + } + leaf adjacency-media-type { + type Isis-media-class; + description + "Link media type"; + } + leaf adjacency-state { + type Isis-adj-state; + description + "Adjacency state"; + } + leaf adjacency-bfd-state { + type Isis-adj-bfd-state; + description + "Adjacency IPv4 BFD state"; + } + leaf adjacency-ipv6bfd-state { + type Isis-adj-bfd-state; + description + "Adjacency IPv6 BFD state"; + } + leaf adj-ipv4bfd-retry-running { + type boolean; + description + "Is IPv4 BFD retry timer running"; + } + leaf adj-ipv6bfd-retry-running { + type boolean; + description + "Is IPv6 BFD retry timer running"; + } + leaf adj-ipv4bfd-retry-exp { + type uint32; + description + "Time to expiration of IPv4 BFD retry timer (s)"; + } + leaf adj-ipv6bfd-retry-exp { + type uint32; + description + "Time to expiration of IPv6 BFD retry timer (s)"; + } + leaf adj-ipv4bfd-retry-count { + type uint32; + description + "IPv4 BFD retry counter"; + } + leaf adj-ipv6bfd-retry-count { + type uint32; + description + "IPv6 BFD retry counter"; + } + leaf adjacency-uptime-valid-flag { + type boolean; + description + "TRUE if AdjacencyUptime is set"; + } + leaf adjacency-uptime { + type uint32; + description + "How long the adjacency has been up (s)"; + } + leaf adjacency-holdtime { + type uint32; + description + "Time (s) until adjacency declared down if no IIH + received"; + } + leaf adjacency-checkpoint-object-id { + type uint32; + description + "Adjacency checkpoint object ID"; + } + leaf adjacency-ietf-nsf-capable-flag { + type boolean; + description + "TRUE if neighbor is IETF-NSF capable"; + } + leaf adjacency-dispriority { + type Isis-dr-priority; + description + "Priority of DIS on this LAN. Valid only if + aj_media_class is ISIS_MEDIA_CLASS_LAN"; + } + leaf adjacency-neighbor-priority { + type Isis-dr-priority; + description + "Neighbor IS priority. Valid only if + aj_media_class is ISIS_MEDIA_CLASS_LAN"; + } + leaf adjacency-local-priority { + type Isis-dr-priority; + description + "Local IS priority. Valid only if aj_media_class + is ISIS_MEDIA_CLASS_LAN"; + } + leaf local-dis-flag { + type boolean; + description + "TRUE if local system is DIS. Valid only if + AdjacencyMediaType is ISIS_MEDIA_CLASS_LAN"; + } + leaf neighbor-dis-flag { + type boolean; + description + "TRUE if neighbor is DIS. Valid only if + AdjacencyMediaType is ISIS_MEDIA_CLASS_LAN"; + } + leaf nsr-standby { + type uint8; + description + "ISIS NSR STANDBY"; + } + leaf bfd-required { + type boolean; + description + "ISIS BFD Required"; + } + leaf neighbor-useable { + type boolean; + description + "ISIS Neighbor Useable"; + } + leaf bfd-change-pending { + type boolean; + description + "ISIS BFD change pending"; + } + leaf cs-boot-integrity-pass { + type boolean; + description + "CS Boot Integrity Pass"; + } + leaf cs-boot-integrity-fail { + type boolean; + description + "CS Boot Integrity Fail"; + } + leaf cs-failures-found { + type boolean; + description + "CS Failures Found"; + } + leaf estimated-neighbor-mtu { + type uint32; + description + "Estimated Neighbor MTU"; + } + leaf own-interface-mtu { + type uint32; + description + "Our own Interface MTU"; + } + list adjacency-area-address { + description + "Area addresses active over this adjacency"; + leaf entry { + type xr:Osi-area-address; + description + "Area addresses active over this adjacency"; + } + } + list adjacency-topology { + description + "Per-topology data"; + uses ISIS-SH-ADJ-TOPO; + } + list adjacency-per-address-family-data { + description + "Per-address-family data"; + uses ISIS-SH-ADJ-AF; + } + list bfdtlv { + description + "BFD TLV content"; + uses ISIS-SH-ADJ-BFD-ITEM; + } + } + + grouping ISIS-SH-LSP-DB-SUMMARY-ALL-FRAGMENTS-STATS { + description + "All fragment counters"; + container node-counters { + description + "Summary by class of node"; + uses ISIS-SH-LSP-DB-SUMMARY-NODE-CLASS-COUNTERS; + } + } + + grouping ISIS-SH-LSP-DB-SUMMARY-TOPO-CLASS-COUNTERS { + description + "Per-topology related info"; + container id { + description + "Topology ID"; + uses ISIS-TOPO-ID-TYPE; + } + container overloaded-lsp-count { + description + "Number of LSPs with their per-topology overload + bit set"; + uses ISIS-SH-LSP-DB-SUMMARY-STATUS-CLASS-COUNTERS; + } + container attached-lsp-count { + description + "Number of LSPs with their per-topology attached + bit set"; + uses ISIS-SH-LSP-DB-SUMMARY-STATUS-CLASS-COUNTERS; + } + } + + grouping ISIS-SH-LSP-DB-SUMMARY-STATUS-CLASS-COUNTERS { + description + "LSP status counters"; + leaf active-lsp-count { + type uint32; + description + "Number of active LSPs"; + } + leaf purged-lsp-count { + type uint32; + description + "Number of purged LSPs"; + } + } + + grouping ISIS-SH-LSP-DB-SUMMARY-NODE-CLASS-COUNTERS { + description + "LSP node type counters"; + container route-lsp-count { + description + "Router LSPs"; + uses ISIS-SH-LSP-DB-SUMMARY-STATUS-CLASS-COUNTERS; + } + container pseudo-node-lsp-count { + description + "Pseudonode LSPs"; + uses ISIS-SH-LSP-DB-SUMMARY-STATUS-CLASS-COUNTERS; + } + } + + grouping ISIS-SH-LSP-DB-SUMMARY-FRAGMENT-0-STATS { + description + "Fragment-0 counters"; + container node-counters { + description + "Summary by class of node"; + uses ISIS-SH-LSP-DB-SUMMARY-NODE-CLASS-COUNTERS; + } + list per-topology-counter { + description + "Per topology counters"; + uses ISIS-SH-LSP-DB-SUMMARY-TOPO-CLASS-COUNTERS; + } + } + + grouping ISIS-SH-LSP-DB-SUMMARY { + description + "Summary Statistics for an IS-IS LSP Database"; + container fragment0lsp-stats { + description + "Statistics for fragment 0 LSPs"; + uses ISIS-SH-LSP-DB-SUMMARY-FRAGMENT-0-STATS; + } + container all-fragment-lsp-stats { + description + "Statistics for all LSP fragments"; + uses ISIS-SH-LSP-DB-SUMMARY-ALL-FRAGMENTS-STATS; + } + } + + grouping ISIS-ADJ-LOG-TOPO-TYPE { + description + "Per-topology per-adjacency log data"; + container id { + description + "Topology ID"; + uses ISIS-TOPO-ID-TYPE; + } + leaf change { + type Isis-adj-topo-change; + description + "Change"; + } + } + + grouping ISIS-SH-GENERIC-LOG-ENT { + description + "Generic portion of a log entry"; + container timestamp { + description + "Time in UTC relative to Jan 1st, 1970"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + } + + grouping ISIS-SH-ADJ-LOG-ENT { + description + "An adjacency log entry"; + container generic-data { + description + "Generic entry data"; + uses ISIS-SH-GENERIC-LOG-ENT; + } + leaf adj-log-neighbor-system-id { + type xr:Osi-system-id; + description + "Neighbor system ID"; + } + leaf interface-name { + type string; + description + "Interface name"; + } + leaf prev-adj-state { + type Isis-adj-state; + description + "Previous adjacency state"; + } + leaf cur-adj-state { + type Isis-adj-state; + description + "Current adjacency state"; + } + leaf state-reason { + type Isis-adj-state-reason; + description + "Reason adjacency changed state"; + } + list adjacency-per-topology-change { + description + "Per-topology changes"; + uses ISIS-ADJ-LOG-TOPO-TYPE; + } + } + + grouping ISIS-SH-ADJ-LOG-STRUC { + description + "Adjacency log structure"; + list log-entry { + description + "Adjacency Log entries"; + uses ISIS-SH-ADJ-LOG-ENT; + } + } + + grouping ISIS-AREA-TOPO-STATS-TYPE { + description + "Per-area, per-topology traffic statistics"; + leaf spf-run-count { + type uint32; + description + "Number of full SPF calculations run"; + } + leaf ispf-run-count { + type uint32; + description + "Number of ISPF calculations run"; + } + leaf nhc-run-count { + type uint32; + description + "Number of Next Hop Calculations run"; + } + leaf prc-run-count { + type uint32; + description + "Number of PRCs run"; + } + leaf periodic-run-count { + type uint32; + description + "Number of periodic SPF calculations run"; + } + } + + grouping ISIS-SH-TRAFFIC-AREA-TOPO { + description + "Per-area, per-topology traffic data"; + container id { + description + "Topology ID"; + uses ISIS-TOPO-ID-TYPE; + } + container statistics { + description + "Statistics"; + uses ISIS-AREA-TOPO-STATS-TYPE; + } + } + + grouping ISIS-AREA-STATS-TYPE { + description + "Per-area traffic statistics"; + leaf system-lsp-build-count { + type uint32; + description + "Number of times system LSP rebuilt"; + } + leaf system-lsp-refresh-count { + type uint32; + description + "Number of times system LSP refreshed"; + } + } + + grouping ISIS-SH-TRAFFIC-AREA { + description + "Per-area traffic data"; + container statistics { + description + "Statistics"; + uses ISIS-AREA-STATS-TYPE; + } + leaf level { + type Isis-level; + description + "Level this data applies to"; + } + list per-topology-data { + description + "Per-topoogy statistics"; + uses ISIS-SH-TRAFFIC-AREA-TOPO; + } + } + + grouping ISIS-SH-TIMESTAMP-TYPE { + description + "Timestamp for an event"; + leaf seconds { + type uint32; + units "second"; + description + "Timestamp value (seconds)"; + } + leaf nano-seconds { + type uint32; + units "nanosecond"; + description + "Timestamp value (nanoseconds)"; + } + } + + grouping ISIS-TRAFFIC-GLOBAL-TYPE { + description + "IS-IS process traffic statistics"; + container avg-hello-process-time { + description + "Average hello process time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container avg-csnp-process-time { + description + "Average CSNP process time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container avg-psnp-process-time { + description + "Average PSNP process time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container avg-lsp-process-time { + description + "Average LSP process time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container avg-hello-transmit-time { + description + "Average hello transmit time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container avg-csnp-transmit-time { + description + "Average CSNP transmit time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container avg-psnp-transmit-time { + description + "Average PSNP transmit time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + container avg-lsp-transmit-time { + description + "Average LSP transmit time"; + uses ISIS-SH-TIMESTAMP-TYPE; + } + leaf fast-psnp-lookup-count { + type uint32; + description + "Fast-PSNP cache lookups"; + } + leaf fast-psnp-lookup-hit-count { + type uint32; + description + "Fast-PSNP cache hits"; + } + leaf fast-csnp-lookup-count { + type uint32; + description + "Fast-CSNP cache lookups"; + } + leaf fast-csnp-lookup-hit-count { + type uint32; + description + "Fast-CSNP cache hits"; + } + leaf fast-csnp-cache-update-count { + type uint32; + description + "Fast-CSNP cache updates"; + } + leaf zero-holdtime-lsp-count { + type uint32; + description + "LSPs received with holdtime 0"; + } + leaf invalid-checksum-lsp-count { + type uint32; + description + "LSPs received with invalid checksum"; + } + leaf iih-dropped-count { + type uint32; + description + "IIHs dropped - Not Used"; + } + leaf lsp-dropped-count { + type uint32; + description + "LSPs dropped"; + } + leaf snp-dropped-count { + type uint32; + description + "SNPs dropped"; + } + leaf maximum-iih-queue-length { + type uint32; + description + "Maximum IIH queue length - Not Used"; + } + leaf maximum-pdu-queue-length { + type uint32; + description + "Maximum update PDU queue length"; + } + leaf pdu-queue-length { + type uint32; + description + "Update PDU queue length"; + } + leaf avg-hello-recv-rate { + type uint32; + units "packet/s"; + description + "Average hello receive rate in packets per second"; + } + leaf avg-csnp-recv-rate { + type uint32; + units "packet/s"; + description + "Average csnp receive rate in packets per second"; + } + leaf avg-psnp-recv-rate { + type uint32; + units "packet/s"; + description + "Average psnp receive rate in packets per second"; + } + leaf avg-lsp-recv-rate { + type uint32; + units "packet/s"; + description + "Average LSP receive rate in packets per second"; + } + leaf avg-hello-send-rate { + type uint32; + units "packet/s"; + description + "Average hello send rate in packets per second"; + } + leaf avg-csnp-send-rate { + type uint32; + units "packet/s"; + description + "Average csnp send rate in packets per second"; + } + leaf avg-psnp-send-rate { + type uint32; + units "packet/s"; + description + "Average psnp send rate in packets per second"; + } + leaf avg-lsp-send-rate { + type uint32; + units "packet/s"; + description + "Average LSP send rate in packets per second"; + } + } + + grouping ISIS-SH-TRAFFIC-GLOBAL { + description + "IS-IS process traffic data"; + container statistics { + description + "Statistics"; + uses ISIS-TRAFFIC-GLOBAL-TYPE; + } + list per-area-data { + description + "Per-area data"; + uses ISIS-SH-TRAFFIC-AREA; + } + } + + grouping ISIS-SH-HOST { + description + "Bag representing a host (IS)"; + leaf local-is-flag { + type boolean; + description + "TRUE if this is the local IS"; + } + leaf host-levels { + type Isis-levels; + description + "Host levels"; + } + leaf host-name { + type string; + description + "Host name"; + } + } + + grouping ISIS-IPV6-ENDX-SID-BACKUP-INFO { + description + "IPv6 End.X SID backup information"; + leaf backup-stack-size { + type uint8; + description + "Number of SIDs in the backup path stack"; + } + leaf backup-node-address { + type Isis-ipv6-address; + description + "Neighbor address used as adjacency backup target"; + } + leaf backup-nexthop { + type Isis-ipv6-address; + description + "Backup path nexthop address"; + } + leaf backup-interface { + type xr:Interface-name; + description + "Backup path interface"; + } + list backup-stack { + description + "Backup path SID stack"; + uses ISIS-IPV6-PREFIX-TYPE; + } + } + + grouping ISIS-IPV6-PREFIX-TYPE { + description + "IPv4 address and prefix length"; + leaf prefix { + type Isis-ipv6-address; + description + "prefix"; + } + leaf prefix-length { + type Isis-ip-prefix-length; + description + "prefix length"; + } + } + + grouping ISIS-IPV6-ENDX-SID { + description + "IPv6 End.X SID"; + container end-x-sid { + description + "End.X SID value"; + uses ISIS-IPV6-PREFIX-TYPE; + } + container end-x-sid-backup { + description + "End.X SID Backup Info"; + uses ISIS-IPV6-ENDX-SID-BACKUP-INFO; + } + leaf end-x-sid-function { + type Isis-srv6-endpoint-func; + description + "End.X SID Function"; + } + leaf algorithm { + type uint32; + description + "End.X SID Algorithm"; + } + leaf block-length { + type uint8; + description + "Block Length"; + } + leaf node-length { + type uint8; + description + "Node Length"; + } + leaf func-length { + type uint8; + description + "Func Length"; + } + leaf args-length { + type uint8; + description + "Args Length"; + } + } + + grouping ISIS-SH-ADJ-PER-LOCATOR { + description + "IPv6 Adjacency Per-Locator Data"; + container end-x-sid { + description + "SRv6 End.X SID"; + uses ISIS-IPV6-ENDX-SID; + } + container non-frr-end-x-sid { + description + "SRv6 End.X SID not eligible for FRR protection"; + uses ISIS-IPV6-ENDX-SID; + } + leaf algorithm { + type uint32; + description + "Algorithm"; + } + } + + grouping ISIS-IPV6-ADJ-SID-BACKUP-INFO { + description + "IPv6 Adjacency SID backup information"; + leaf backup-label-stack-size { + type uint8; + description + "Number of labels in the backup path label stack"; + } + leaf backup-node-address { + type Isis-ipv6-address; + description + "Neighbor address used as adjacency backup target"; + } + leaf backup-nexthop { + type Isis-ipv6-address; + description + "Backup path nexthop address"; + } + leaf backup-interface { + type xr:Interface-name; + description + "Backup path interface"; + } + list backup-label-stack { + description + "Backup path label stack"; + leaf entry { + type uint32; + description + "Backup path label stack"; + } + } + } + + grouping ISIS-IPV6-ADJ-SID { + description + "IPv6 Adjacency SID"; + container adjacency-sid-backup { + description + "Adjacency SID Backup Info"; + uses ISIS-IPV6-ADJ-SID-BACKUP-INFO; + } + container adjacency-sid-backup-te { + description + "Adjacency SID Backup Info TE"; + uses ISIS-IPV6-ADJ-SID-BACKUP-INFO; + } + leaf adjacency-sid-value { + type Isis-nodal-sid-value; + description + "Adjacency SID value"; + } + } + + grouping ISIS-SH-ADJ-IPV6 { + description + "IPv6 Specific Per-Adjacency Data"; + container adjacency-sid { + description + "Adjacency SID"; + uses ISIS-IPV6-ADJ-SID; + } + container non-frr-adjacency-sid { + description + "Adjacency SID not eligible for FRR protection"; + uses ISIS-IPV6-ADJ-SID; + } + leaf next-hop { + type Isis-ipv6-address; + description + "Adjacency next hop"; + } + list interface-address { + description + "Adjacency interface addresses"; + leaf entry { + type Isis-ipv6-address; + description + "Adjacency interface addresses"; + } + } + list underlying-adjacency-sid { + description + "Per bundle member Adjacency sid"; + leaf entry { + type Isis-nodal-sid-value; + description + "Per bundle member Adjacency sid"; + } + } + list underlying-interface { + description + "Underlying interface list for bundle interfaces"; + uses ISIS-SH-INTF-DET; + } + list end-x-sid { + description + "Per Locator ENDX SID"; + uses ISIS-SH-ADJ-PER-LOCATOR; + } + } + + grouping ISIS-SH-INTF-DET { + description + "Interface Detail"; + leaf interface-index { + type uint32; + description + "Local interface handle"; + } + leaf interface-name { + type string; + description + "Interface name"; + } + } + + grouping ISIS-IPV4-ADJ-SID-BACKUP-INFO { + description + "IPv4 Adjacency SID backup information"; + leaf backup-label-stack-size { + type uint8; + description + "Number of labels in the backup path label stack"; + } + leaf backup-node-address { + type Isis-ipv4-address; + description + "Neighbor address used as adjacency backup target"; + } + leaf backup-nexthop { + type Isis-ipv4-address; + description + "Backup path nexthop address"; + } + leaf backup-interface { + type xr:Interface-name; + description + "Backup path interface"; + } + list backup-label-stack { + description + "Backup path label stack"; + leaf entry { + type uint32; + description + "Backup path label stack"; + } + } + } + + grouping ISIS-IPV4-ADJ-SID { + description + "IPv4 Adjacency SID"; + container adjacency-sid-backup { + description + "Adjacency SID Backup Info"; + uses ISIS-IPV4-ADJ-SID-BACKUP-INFO; + } + container adjacency-sid-backup-te { + description + "Adjacency SID Backup Info TE"; + uses ISIS-IPV4-ADJ-SID-BACKUP-INFO; + } + leaf adjacency-sid-value { + type Isis-nodal-sid-value; + description + "Adjacency SID value"; + } + } + + grouping ISIS-SH-ADJ-IPV4 { + description + "IPv4 Specific Per-Adjacency Data"; + container adjacency-sid { + description + "Adjacency SID"; + uses ISIS-IPV4-ADJ-SID; + } + container non-frr-adjacency-sid { + description + "Adjacency SID not eligible for FRR protection"; + uses ISIS-IPV4-ADJ-SID; + } + leaf next-hop { + type Isis-ipv4-address; + description + "Adjacency next hop"; + } + list interface-address { + description + "Adjacency interface addresses"; + leaf entry { + type Isis-ipv4-address; + description + "Adjacency interface addresses"; + } + } + list underlying-adjacency-sid { + description + "Per bundle member Adjacency sid"; + leaf entry { + type Isis-nodal-sid-value; + description + "Per bundle member Adjacency sid"; + } + } + list underlying-interface { + description + "Underlying interface list for bundle interfaces"; + uses ISIS-SH-INTF-DET; + } + } + + grouping ISIS-SH-ADJ-AF { + description + "ISIS SH ADJ AF"; + container ipv4 { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + description + "IPV4 neighbor info"; + uses ISIS-SH-ADJ-IPV4; + } + container ipv6 { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + description + "IPV6 neighbor info"; + uses ISIS-SH-ADJ-IPV6; + } + leaf af-name { + type Isis-af-id; + description + "AFName"; + } + } + + grouping ISIS-TOPO-ID-TYPE { + description + "Identification of an IS-IS topology"; + leaf af-name { + type Isis-af-id; + description + "AF name"; + } + leaf saf-name { + type Isis-sub-af-id; + description + "Sub-AF name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf topology-name { + type string; + description + "Topology Name"; + } + } + + grouping ISIS-SH-NBR { + description + "A neighbor IS"; + leaf neighbor-system-id { + type xr:Osi-system-id; + description + "Neighbor system ID"; + } + leaf neighbor-snpa { + type xr:Isis-snpa; + description + "Neighbor SNPA"; + } + leaf local-interface { + type xr:Interface-name; + description + "Local interface"; + } + leaf neighbor-state { + type Isis-adj-state; + description + "Neighbor (adjacency) state"; + } + leaf neighbor-circuit-type { + type Isis-levels; + description + "Circuit type"; + } + leaf neighbor-ietf-nsf-capable-flag { + type uint32; + description + "TRUE if neighbor is IETF-NSF capable"; + } + leaf neighbor-media-type { + type Isis-media-class; + description + "Link media type"; + } + leaf neighbor-holdtime { + type uint32; + description + "Time (s) until neighbor declared down if no IIH + received"; + } + leaf neighbor-uptime-valid-flag { + type boolean; + description + "TRUE if NeighborUptime is set"; + } + leaf neighbor-uptime { + type uint32; + description + "How long the neighbor has been up (s)"; + } + leaf nsr-standby { + type boolean; + description + "ISIS NSR STANDBY"; + } + list neighbor-active-area-address { + description + "Active area addresses"; + leaf entry { + type xr:Osi-area-address; + description + "Active area addresses"; + } + } + list topologies-supported { + description + "Topologies supported by both neighbor and local + system"; + uses ISIS-TOPO-ID-TYPE; + } + list neighbor-per-address-family-data { + description + "Per address-family data"; + uses ISIS-SH-ADJ-AF; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub2.yang new file mode 100644 index 000000000..0897f8339 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper-sub2.yang @@ -0,0 +1,298 @@ +submodule Cisco-IOS-XR-clns-isis-oper-sub2 { + belongs-to Cisco-IOS-XR-clns-isis-oper { + prefix Cisco-IOS-XR-clns-isis-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR clns-isis package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-12 { + description + "Add show isis database unauthenticated + 2022-07-30 + Add Flex-algo Reverse Affinity support + 2022-07-28 + Add ISIS UHP support + 2022-04-23 + add ISIS UPA support + 2022-03-04 + add ISIS process and job IDs + 2022-01-30 + add per-area, per topology statistic indexed list. + 2022-01-11 + add show isis neighbor summary statistic info. IosSetYangSchemaRev Cisco-IOS-XR-clns-isis-cfg + 2021-09-03 + Show output added for IP Flex-algo."; + semver:module-version "4.2.0"; + } + revision 2021-07-07 { + description + "Add timestamp and age to isis local rib routes."; + semver:module-version "4.1.0"; + } + revision 2021-03-13 { + description + "Interface bandwidth changed from uint32_t to uint64_t + 2021-01-04 + Add private adjacency bag + 2020-11-05 + Flex-algo extension for show isis topology. + 2020-10-27 + Add a new type Isis-flex-algo-metric for flex-algo metrics and change the metric-type leaf in ISIS-SH-FLEX-ALGO-AREA to use it. + 2020-10-20 + Change in Yang tool corrected strings repair-s-rv6* to repair-srv6*, end-xsid* to end-x-sid*, and is-s-rv6 to is-srv6. Changed avg-dela-rawy to avg-delay-raw to fix misspelling via CSCvu63930. Changed SRv6 function-type to sid-behavior, uint32_t to mgmt_srv6_sid_fmt, and num-sid to num-sids for consistency and to comply with current IETF ISIS SRv6 draft via CSCvu06764."; + semver:module-version "4.0.0"; + } + revision 2020-05-12 { + description + "Added SRLG and SRLG Static + 2020-03-25 + Added operational data for new features."; + semver:module-version "3.0.0"; + } + revision 2019-09-25 { + description + "Added operational data for new features + 2019-05-14 + Conditional Advertise-prefix support + 2019-05-03 + move ocni-isis opencfg model from native model to private oper model"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-28 { + description + "Upgrade ocni-isis to opencfg model version 0.4.2"; + } + revision 2019-02-23 { + description + "Added is_srv6 flag to ISIS IPv6 route"; + } + revision 2019-02-16 { + description + "Added interface link-group name"; + } + revision 2018-10-15 { + description + "Add SRv6 configured locators"; + } + revision 2018-10-04 { + description + "Update SRv6 locator table"; + } + revision 2018-05-17 { + description + "Update opencfg isis model"; + } + revision 2018-04-07 { + description + "Update SRv6 definitions to draft-filsfils-spring-srv6-network-programming-04"; + } + revision 2018-01-24 { + description + "Added SRLG TILFA operation CLI."; + } + revision 2017-12-06 { + description + "Add segment-routing srv6"; + } + revision 2017-08-08 { + description + "Add openconfig network instance model isis telemetry EDM function support."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Srms-mi-flag-e-b { + type enumeration { + enum "false" { + value 0; + description + "False"; + } + enum "true" { + value 1; + description + "True"; + } + } + description + "Srms mi flag e b"; + } + + typedef In6-addr-t-b { + type inet:ipv6-address; + description + "In6 addr t b"; + } + + typedef Srms-mi-af-e-b { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Srms mi af e b"; + } + + typedef Srms-mi-src-e-b { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "local" { + value 1; + description + "Local"; + } + enum "remote" { + value 2; + description + "Remote"; + } + } + description + "Srms mi src e b"; + } + + grouping ADDR { + description + "ADDR"; + leaf af { + type Srms-mi-af-e-b; + description + "AF"; + } + leaf ipv4 { + when "../af = 'ipv4'" { + description + "../AF = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4"; + } + leaf ipv6 { + when "../af = 'ipv6'" { + description + "../AF = 'IPv6'"; + } + type In6-addr-t-b; + description + "IPv6"; + } + } + + grouping SRMS-MI-T-B { + description + "SRMS show bag"; + container addr { + description + "Ipv4 address"; + uses ADDR; + } + leaf src { + type Srms-mi-src-e-b; + description + "Source of this prefix, whether local or remote"; + } + leaf router { + type string { + length "0..30"; + } + description + "Router ID"; + } + leaf area { + type string { + length "0..30"; + } + description + "Area (OSPF) or Level (ISIS)"; + } + leaf prefixlen { + type uint8; + description + "Prefix length"; + } + leaf sid-start { + type uint32; + description + "Starting SID"; + } + leaf sid-count { + type uint32; + description + "SID range"; + } + leaf last-prefix { + type string { + length "0..50"; + } + description + "Last IP Prefix"; + } + leaf last-sid-index { + type uint32; + description + "Last SID Index"; + } + leaf flag-attached { + type Srms-mi-flag-e-b; + description + "Attached flag"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper.yang new file mode 100644 index 000000000..4f0454a3a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-clns-isis-oper.yang @@ -0,0 +1,1372 @@ +module Cisco-IOS-XR-clns-isis-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-clns-isis-oper"; + prefix clns-isis-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-clns-isis-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-clns-isis-oper-sub2 { + revision-date 2022-08-12; + } + include Cisco-IOS-XR-clns-isis-oper-sub1 { + revision-date 2022-08-12; + } + + 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 clns-isis package operational data. + + This module contains definitions + for the following management objects: + isis: IS-IS operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-12 { + description + "Add show isis database unauthenticated + 2022-07-30 + Add Flex-algo Reverse Affinity support + 2022-07-28 + Add ISIS UHP support + 2022-04-23 + add ISIS UPA support + 2022-03-04 + add ISIS process and job IDs + 2022-01-30 + add per-area, per topology statistic indexed list. + 2022-01-11 + add show isis neighbor summary statistic info. IosSetYangSchemaRev Cisco-IOS-XR-clns-isis-cfg + 2021-09-03 + Show output added for IP Flex-algo."; + semver:module-version "4.2.0"; + } + revision 2021-07-07 { + description + "Add timestamp and age to isis local rib routes."; + semver:module-version "4.1.0"; + } + revision 2021-03-13 { + description + "Interface bandwidth changed from uint32_t to uint64_t + 2021-01-04 + Add private adjacency bag + 2020-11-05 + Flex-algo extension for show isis topology. + 2020-10-27 + Add a new type Isis-flex-algo-metric for flex-algo metrics and change the metric-type leaf in ISIS-SH-FLEX-ALGO-AREA to use it. + 2020-10-20 + Change in Yang tool corrected strings repair-s-rv6* to repair-srv6*, end-xsid* to end-x-sid*, and is-s-rv6 to is-srv6. Changed avg-dela-rawy to avg-delay-raw to fix misspelling via CSCvu63930. Changed SRv6 function-type to sid-behavior, uint32_t to mgmt_srv6_sid_fmt, and num-sid to num-sids for consistency and to comply with current IETF ISIS SRv6 draft via CSCvu06764."; + semver:module-version "4.0.0"; + } + revision 2020-05-12 { + description + "Added SRLG and SRLG Static + 2020-03-25 + Added operational data for new features."; + semver:module-version "3.0.0"; + } + revision 2019-09-25 { + description + "Added operational data for new features + 2019-05-14 + Conditional Advertise-prefix support + 2019-05-03 + move ocni-isis opencfg model from native model to private oper model"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-28 { + description + "Upgrade ocni-isis to opencfg model version 0.4.2"; + } + revision 2019-02-23 { + description + "Added is_srv6 flag to ISIS IPv6 route"; + } + revision 2019-02-16 { + description + "Added interface link-group name"; + } + revision 2018-10-15 { + description + "Add SRv6 configured locators"; + } + revision 2018-10-04 { + description + "Update SRv6 locator table"; + } + revision 2018-05-17 { + description + "Update opencfg isis model"; + } + revision 2018-04-07 { + description + "Update SRv6 definitions to draft-filsfils-spring-srv6-network-programming-04"; + } + revision 2018-01-24 { + description + "Added SRLG TILFA operation CLI."; + } + revision 2017-12-06 { + description + "Add segment-routing srv6"; + } + revision 2017-08-08 { + description + "Add openconfig network instance model isis telemetry EDM function support."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping POLICY-MI { + description + "Common node of policy-ipv4-active, + policy-ipv4-backup, policy-ipv6-active, + policy-ipv6-backup"; + list policy-mi { + key "mi-id"; + description + "Mapping Item"; + leaf mi-id { + type xr:Cisco-ios-xr-string; + description + "Mapping Item ID (0, 1, 2, ...)"; + } + uses SRMS-MI-T-B; + } + } + + grouping INSTANCE { + description + "Common node of instances, instances-standby"; + list instance { + key "instance-name"; + description + "IS-IS instance"; + container neighbors { + description + "Neighbor table"; + list neighbor { + description + "A single neighbor router"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-NBR; + } + } + container host-names { + description + "Hostname table"; + list host-name { + key "system-id"; + description + "Hostname table entry"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-HOST; + } + } + container statistics-global { + description + "Per-instance statistics"; + uses ISIS-SH-TRAFFIC-GLOBAL; + } + container levels { + description + "Level table"; + list level { + key "level"; + description + "Per-level operational data"; + container adjacency-log { + description + "Log of adjacency changes within a single + level"; + uses ISIS-SH-ADJ-LOG-STRUC; + } + container lsp-table-summary { + description + "Summary information for one level's LSP + database"; + uses ISIS-SH-LSP-DB-SUMMARY; + } + container adjacencies { + description + "Adjacency table"; + list adjacency { + description + "A single IS-IS adjacency"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-ADJ; + } + } + container detailed-lsps { + description + "Detailed LSP table. Use to retrieve LSPs with + TLV content."; + list detailed-lsp { + key "lsp-id"; + description + "An IS-IS LSP with detailed TLV data included"; + leaf lsp-id { + type xr:Isis-lsp-id; + description + "LSP ID"; + } + uses ISIS-SH-LSP; + } + } + container lsps { + description + "LSP table"; + list lsp { + key "lsp-id"; + description + "An IS-IS LSP (header information only)"; + leaf lsp-id { + type xr:Isis-lsp-id; + description + "LSP ID"; + } + uses ISIS-SH-LSP; + } + } + container lsp-log { + description + "LSP-log for a single level"; + uses ISIS-SH-LSP-LOG-STRUC; + } + container database-log { + description + "Database-log for a single level"; + uses ISIS-SH-LSP-DB-LOG-STRUC; + } + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + } + } + container topologies { + description + "Topology table"; + list topology { + description + "Per-topology data"; + container ipv4frr-flex-tables { + description + "IPv4 FRR Flex-Algo tables"; + list ipv4frr-flex-table { + key "flex-alg"; + description + "IPv4 FRR Flex-Algo table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + list ipv4frr-flex-backup { + description + "Flex-Algo FRR backup for an IPv4 network"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv4-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV4-ROUTE; + } + } + } + container ipv6-flex-route-tables { + description + "IPv6 Flex-Algo local route tables"; + list ipv6-flex-route-table { + key "flex-alg"; + description + "IPv6 Flex-Algo local route table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + list ipv6-flex-route { + description + "An IPv6 route known to IS-IS"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv6-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV6-ROUTE; + } + } + } + container frr-summary { + description + "FRR summary information for a particular + IS-IS topology"; + uses ISIS-SH-FRR-SUMMARY; + } + container srv6-locators { + description + "SRv6 Locator Table"; + list srv6-locator { + key "name"; + description + "An SRv6 Locator"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Locator Name"; + } + uses ISIS-SH-SRV6-LOCATOR; + } + } + container topology-levels { + description + "Per-topology level table"; + list topology-level { + key "level"; + description + "Per-level topology operational data"; + container flex-algo-topology-summary-is-tables { + description + "Flex-Algo Link Topology Summary IS Tables"; + list flex-algo-topology-summary-is-table { + key "flex-alg"; + description + "Flex-Algo Link Topology Summary IS Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + list flex-algo-topology-summary-is { + key "system-id"; + description + "Summary information for a particular IS + Topology and Flex-Algo"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-TOPO-SUMMARY; + } + } + } + container flex-algo-ipv4-link-topology-tables { + description + "Flex-Algo IPv4 IS Topology Tables"; + list flex-algo-ipv4-link-topology-table { + key "flex-alg"; + description + "Flex-Algo IPv4 IS Topology Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + list flex-algo-ipv4-link-topology { + key "system-id"; + description + "An IS in an Flex-Algo IPv4 Link Topology"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-IPV4-TOPO-ENTRY; + } + } + } + container flex-algo-data-plane-topology-summary-is-tables { + description + "Flex-Algo Data Plane Link Topology Summary + IS Tables"; + list flex-algo-data-plane-topology-summary-is-table { + description + "Flex-Algo Data-Plane Link Topology Summary + IS Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + leaf data-plane { + type uint32; + description + "Data Plane"; + } + list flex-algo-data-plane-topology-summary-is { + key "system-id"; + description + "Summary information for a particular IS, + Topology, Flex-Algo, and Data-Plane"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-TOPO-SUMMARY; + } + } + } + container flex-algo-ipv6-link-topology-tables { + description + "Flex-Algo IPv6 IS Topology Tables"; + list flex-algo-ipv6-link-topology-table { + key "flex-alg"; + description + "Flex-Algo IPv6 IS Topology Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + list flex-algo-ipv6-link-topology { + key "system-id"; + description + "An IS in an Flex-Algo IPv6Link Topology"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-IPV6-TOPO-ENTRY; + } + } + } + container flex-algo-data-plane-ipv4-link-topology-tables { + description + "Flex-Algo Data-Plane IPv4 IS Topology + Tables"; + list flex-algo-data-plane-ipv4-link-topology-table { + description + "Flex-Algo Data-Plane IPv4 IS Topology + Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + leaf data-plane { + type uint32; + description + "Data Plane"; + } + list flex-algo-data-plane-ipv4-link-topology { + key "system-id"; + description + "An IS in an Flex-Algo Data-Plane IPv4 + Link Topology"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-IPV4-TOPO-ENTRY; + } + } + } + container flex-algo-data-plane-ipv6-link-topology-tables { + description + "Flex-Algo Data-Plane IPv6 IS Topology + Tables"; + list flex-algo-data-plane-ipv6-link-topology-table { + description + "Flex-Algo Data-Plane IPv6 IS Topology + Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + leaf data-plane { + type uint32; + description + "Data Plane"; + } + list flex-algo-data-plane-ipv6-link-topology { + key "system-id"; + description + "An IS in an Flex-Algo Data-Plane IPv6 + Link Topology"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-IPV6-TOPO-ENTRY; + } + } + } + container te-advertisements { + description + "TE advertisements for a single level and + topology. Only available within the IPv4 + Unicast topology."; + uses ISIS-SH-TE-ADV; + } + container te-adjacency-log { + description + "TE adjacency-log for a single level and + topology. Only available within the IPv4 + Unicast topology."; + uses ISIS-SH-TE-LOG-STRUC; + } + container spf-log { + description + "Log of route calculations for a single + level and topology"; + uses ISIS-SH-SPF-LOG-STRUC; + } + container flex-algo-topology-summaries { + description + "Flex-Algo Link Topology Summary Tables"; + list flex-algo-topology-summary { + key "flex-alg"; + description + "Flex-Algo IPv4 IS Topology Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + uses ISIS-SH-TOPO-SUMMARY; + } + } + container flex-algo-data-plane-topology-summaries { + description + "Flex-Algo and Data-Plane Link Topology + Summary Tables"; + list flex-algo-data-plane-topology-summary { + description + "Flex-Algo Data-Plane IS Topology Table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + leaf data-plane { + type uint32; + description + "Data Plane"; + } + uses ISIS-SH-TOPO-SUMMARY; + } + } + container te-tunnels { + description + "TE tunnels table. Only available within the + IPv4 Unicast topology."; + list te-tunnel { + description + "A single TE tunnel advertized by IS-IS"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-TE-TUNNEL; + } + } + container ipv4-link-topologies { + description + "IPv4 IS Topology table"; + list ipv4-link-topology { + key "system-id"; + description + "An IS in an IPv4 Link Topology"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-IPV4-TOPO-ENTRY; + } + } + container topology-summary { + description + "Summary information for a particular IS + Topology"; + uses ISIS-SH-TOPO-SUMMARY; + } + container ipv6-link-topologies { + description + "IPv6 IS Topology table"; + list ipv6-link-topology { + key "system-id"; + description + "An IS in an IPv6 Link Topology"; + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + uses ISIS-SH-IPV6-TOPO-ENTRY; + } + } + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + } + } + container ipv6-routes { + description + "IPv6 local route"; + list ipv6-route { + description + "An IPv6 route known to IS-IS"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv6-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV6-ROUTE; + } + } + container ipv6frr-flex-tables { + description + "IPv6 FRR Flex-Algo tables"; + list ipv6frr-flex-table { + key "flex-alg"; + description + "IPv6 FRR Flex-Algo table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + list ipv6frr-flex-backup { + description + "Flex-algo FRR backup for an IPv6 network"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv6-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV6-ROUTE; + } + } + } + container ipv6frr-backups { + description + "IPv6 FRR table"; + list ipv6frr-backup { + description + "FRR backup for an IPv6 network"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv6-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV6-ROUTE; + } + } + container ipv4frr-backups { + description + "IPv4 FRR table"; + list ipv4frr-backup { + description + "FRR backup for an IPv4 network"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv4-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV4-ROUTE; + } + } + container ipv4-flex-route-tables { + description + "IPv4 Flex-Algo local route tables"; + list ipv4-flex-route-table { + key "flex-alg"; + description + "IPv4 Flex-Algo local route table"; + leaf flex-alg { + type uint32; + description + "Flex Algo"; + } + list ipv4-flex-route { + description + "An IPv4 route known to IS-IS"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv4-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV4-ROUTE; + } + } + } + container ipv4-routes { + description + "IPv4 local route table"; + list ipv4-route { + description + "An IPv4 route known to IS-IS"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type dt1:Isis-ipv4-prefix-length; + description + "Prefix Length"; + } + uses ISIS-SH-IPV4-ROUTE; + } + } + leaf af-name { + type dt1:Isis-address-family; + description + "Address family"; + } + leaf saf-name { + type dt1:Isis-sub-address-family; + description + "Sub address family"; + } + leaf topology-name { + type dt1:Isis-topology-name; + description + "Topology Name"; + } + } + } + container srlgs { + description + "SRLG Table"; + list srlg { + key "srlg-name"; + description + "SRLG Data"; + leaf srlg-name { + type xr:Cisco-ios-xr-string; + description + "srlg name"; + } + uses ISIS-SH-SRLG; + } + } + container nsr-status { + description + "NSR Status information"; + uses ISIS-SH-NSR-STATUS-GLOBAL; + } + container srlg-statics { + description + "SRLG Static Table"; + list srlg-static { + key "srlg-name"; + description + "SRLG Static Data"; + leaf srlg-name { + type xr:Cisco-ios-xr-string; + description + "srlg name"; + } + uses ISIS-SH-SRLG-STATIC; + } + } + container interfaces { + description + "Interface table"; + list interface { + key "interface-name"; + description + "Information about one IS-IS interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-IF; + } + } + container summary { + description + "Very brief summary of an IS-IS instance"; + uses ISIS-SH-INSTANCE-SUMMARY; + } + container checkpoint-adjacencies { + description + "Checkpointed adjacency table"; + list checkpoint-adjacency { + description + "A checkpointed IS-IS adjacency"; + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + leaf system-id { + type xr:Osi-system-id; + description + "System ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-CHKPT-ADJ; + } + } + container flex-algos { + description + "Flex Algo Table"; + list flex-algo { + key "flex-algo"; + description + "Flex Algo Definition Data"; + leaf flex-algo { + type uint32; + description + "Flex Algo"; + } + uses ISIS-SH-FLEX-ALGO; + } + } + container srms { + description + "Segment Routing Mapping Server operational data"; + container policy { + description + "Policy operational data"; + container policy-ipv4 { + description + "IPv4 policy operational data"; + container policy-ipv4-active { + description + "IPv4 active policy operational data"; + uses POLICY-MI; + } + container policy-ipv4-backup { + description + "IPv4 backup policy operational data"; + uses POLICY-MI; + } + } + container policy-ipv6 { + description + "IPv6 policy operational data"; + container policy-ipv6-backup { + description + "IPv6 backup policy operational data"; + uses POLICY-MI; + } + container policy-ipv6-active { + description + "IPv6 active policy operational data"; + uses POLICY-MI; + } + } + } + } + container mib { + description + "IS-IS MIB"; + container circuit-counter-table-entries { + description + "Circuit specific counters for the system"; + list circuit-counter-table-entry { + key "circ-index circuit-type"; + description + "Each circuit has a circuit counter table + entry"; + leaf circ-index { + type uint32; + description + "Circuit Index"; + } + leaf circuit-type { + type dt1:Isis-circuit; + description + "Circuit Type"; + } + uses ISIS-MIB-CIRCUIT-COUNTER-ENTRY; + } + } + container area-addr-table { + description + "area addresses table"; + uses ISIS-MIB-AREA-ADDR-TABLE; + } + container packet-counter-table-entries { + description + "Info about IS-IS protocol traffic on a circuit"; + list packet-counter-table-entry { + key "circ-index level packet-count-direction"; + description + "Info about IS-IS protocol traffic on one + level"; + leaf circ-index { + type uint32; + description + "Circuit Index"; + } + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + leaf packet-count-direction { + type dt1:Isis-packet-count-direction; + description + "Direction"; + } + uses ISIS-MIB-PACKET-COUNTER-ENTRY; + } + } + container mib-levels { + description + "MIB Level table"; + list mib-level { + key "level"; + description + "Per-level operational data"; + container sys-level-table { + description + "Level specific info about the system"; + uses ISIS-MIB-SYS-LEVEL-ENTRY; + } + container system-counter-table { + description + "Systemwide counters for this system"; + uses ISIS-MIB-SYS-STAT-LEVEL-ENTRY; + } + container lsp-summary-entries { + description + "Table of LSP headers"; + list lsp-summary-entry { + key "lsp-id"; + description + "Summary description of an LSP stored in + this system"; + leaf lsp-id { + type xr:Isis-lsp-id; + description + "LSP ID"; + } + uses ISIS-MIB-LSP-SUMMARY-LIST-ENTRY; + } + } + container lsptlv-entries { + description + "Table of LSPs in the database"; + list lsptlv-entry { + description + "Each entry describes a TLV within an LSP in + the database"; + leaf lsp-id { + type string; + description + "LSP ID"; + } + leaf tlv-index { + type uint32; + description + "TLV Index"; + } + uses ISIS-MIB-YANG-MODEL-LSP-ENTRY; + } + } + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + } + } + container redistribute-addr-table { + description + "redistributed prefix table"; + uses ISIS-MIB-IP-RA-TABLE; + } + container man-area-addr-table { + description + "Manually configured area addresses table"; + uses ISIS-MIB-AREA-ADDR-TABLE; + } + container circ-level-table-entries { + description + "Level specific info about circuits used by the + system"; + list circ-level-table-entry { + key "circ-index level"; + description + "circuit for specific level on the system"; + leaf circ-index { + type uint32; + description + "Circuit Index"; + } + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + uses ISIS-MIB-CIRC-LEVEL-ENTRY; + } + } + container is-adj-table-entries { + description + "Intermediate System adjacencies table"; + list is-adj-table-entry { + key "circ-index is-adj-index"; + description + "Each adjacency has an adjacency table entry"; + leaf circ-index { + type uint32; + description + "Circuit Index"; + } + leaf is-adj-index { + type uint32; + description + "IS Adj Index"; + } + uses ISIS-MIB-CIRC-ADJ-TABLE; + } + } + container summ-addr-table { + description + "IP summary address table"; + uses ISIS-MIB-SUMM-ADDR-TABLE; + } + container sysobjs { + description + "Mib system objects"; + uses ISIS-MIB-SYS-OBJECT; + } + container circ-table-entries { + description + "Circuit table"; + list circ-table-entry { + key "circ-index"; + description + "Circuit table entry"; + leaf circ-index { + type uint32; + description + "Circuit Index"; + } + uses ISIS-MIB-CIRC-ENTRY; + } + } + } + container error-log { + description + "Log of errors and warnings"; + uses ISIS-SH-ERR-LOG-STRUC; + } + container checkpoint-interfaces { + description + "Checkpointed interface table"; + list checkpoint-interface { + key "interface-name"; + description + "Checkpointed information about one IS-IS + interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-CHKPT-IDB; + } + } + container sr-labels { + description + "SR Label table"; + list sr-label { + key "label"; + description + "SrLabel table entry"; + leaf label { + type uint32; + description + "SR Label"; + } + uses ISIS-SH-LABEL; + } + } + container interface-statistics { + description + "Interface statistics table"; + list interface-statistic { + key "interface-name"; + description + "Statistics data for one IS-IS interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-TRAFFIC-INTF; + } + } + container protocol { + description + "Basic protocol information about an IS-IS + instance"; + uses ISIS-SH-PROTO; + } + container nbr-summ-stats { + description + "Neighbor Summary Statistics information"; + uses ISIS-SH-NBR-SUMM-STATS; + } + container statistics-global-tbl { + description + "Per-instance statistics table"; + container statistics { + description + "Global Statistics"; + uses ISIS-SH-GLOBAL-STATS; + } + container per-area-datas { + description + "Statistcis for an area"; + list per-area-data { + key "level"; + description + "Per-area Statistics data"; + container statistics { + description + "Area Statistics"; + uses ISIS-SH-GLOBAL-AREA-STATS; + } + container per-topology-datas { + description + "Statistcis for an topology"; + list per-topology-data { + description + "Per topology Statistics"; + container statistics { + description + "Statistics info for per topology"; + uses ISIS-SH-GLOBAL-AREA-TOPO-STATS; + } + leaf af-name { + type dt1:Isis-address-family; + description + "Address family"; + } + leaf saf-name { + type dt1:Isis-sub-address-family; + description + "Sub address family"; + } + leaf vrf-name { + type dt1:Isis-vrf-name; + description + "Vrf name"; + } + leaf topology-name { + type dt1:Isis-topology-name; + description + "Topology Name"; + } + } + } + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + } + } + } + container neighbor-summaries { + description + "Neighbor-summary table"; + list neighbor-summary { + key "interface-name"; + description + "Neighbor-summary data for a single interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-NBR-SUMM; + } + } + container checkpoint-lsps { + description + "Checkpointed LSP table"; + list checkpoint-lsp { + description + "A checkpointed IS-IS LSP"; + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + leaf lsp-id { + type xr:Isis-lsp-id; + description + "LSP ID"; + } + uses ISIS-SH-CHKPT-LSP; + } + } + container mesh-groups { + description + "Mesh-group information"; + uses ISIS-SH-MESH-GROUPS; + } + container nsr-statistics { + description + "NSR Statistics information"; + uses ISIS-SH-NSR-STATS-GLOBAL; + } + container checkpoint-te-tunnels { + description + "Checkpointed TE tunnel table"; + list checkpoint-te-tunnel { + description + "A checkpointed TE tunnel"; + leaf level { + type dt1:Isis-internal-level; + description + "Level"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ISIS-SH-CHKPT-TE-TUNNEL; + } + } + leaf instance-name { + type dt1:Isis-instance-name; + description + "Instance identifier"; + } + } + } + + container isis { + config false; + description + "IS-IS operational data"; + container instances { + description + "Per-instance active ISIS operational data"; + uses INSTANCE; + } + container instances-standby { + description + "Standby ISIS operational data"; + uses INSTANCE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper-sub1.yang new file mode 100644 index 000000000..7ea42871e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper-sub1.yang @@ -0,0 +1,102 @@ +submodule Cisco-IOS-XR-cmproxy-oper-sub1 { + belongs-to Cisco-IOS-XR-cmproxy-oper { + prefix Cisco-IOS-XR-cmproxy-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR cmproxy package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-03-25 { + description + "Moved few of the bag fields to private"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-03-04 { + description + "Added good description for bag fields"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CMP-INV-ST { + description + "cmp inv info"; + leaf card-type { + type string { + length "0..32"; + } + description + "Type of the card"; + } + leaf node-name { + type string { + length "0..32"; + } + description + "Node Name"; + } + leaf partner-name { + type string { + length "0..32"; + } + description + "Partner Node"; + } + leaf red-state { + type string { + length "0..32"; + } + description + "Redundancy Role"; + } + leaf node-sw-state { + type string { + length "0..32"; + } + description + "Current Software State"; + } + leaf prev-sw-state { + type string { + length "0..32"; + } + description + "Previous Software State"; + } + leaf node-address { + type inet:ipv4-address; + description + "Node IPv4 Address"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper.yang new file mode 100644 index 000000000..c155977a1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cmproxy-oper.yang @@ -0,0 +1,91 @@ +module Cisco-IOS-XR-cmproxy-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cmproxy-oper"; + prefix cmproxy-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-cmproxy-oper-sub1 { + revision-date 2020-03-25; + } + + 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 cmproxy package operational data. + + This module contains definitions + for the following management objects: + sdr-inventory-vm: Platform VM information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-03-25 { + description + "Moved few of the bag fields to private"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-03-04 { + description + "Added good description for bag fields"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sdr-inventory-vm { + config false; + description + "Platform VM information"; + container nodes { + description + "Node directory"; + list node { + key "name"; + description + "Node name"; + container node-entries { + description + "VM Information"; + list node-entry { + key "name"; + description + "VM information for a node"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Node name"; + } + uses CMP-INV-ST; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-act.yang new file mode 100644 index 000000000..d38eb352a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-act.yang @@ -0,0 +1,230 @@ +module Cisco-IOS-XR-cnbng-nal-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cnbng-nal-act"; + prefix cnbng-nal-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 action package configuration. + + Copyright (c) 2018-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-25 { + description + "IOS XR 7.7.1 revision updated clear dynamic route CLI filters + 2022-01-21 + IOS XR 7.7.1 revision added srg clear CLIs"; + semver:module-version "1.2.0"; + } + revision 2021-08-29 { + description + "IOS XR 7.6.1 revision removing cnbng-nal task"; + semver:module-version "1.1.0"; + } + revision 2021-02-11 { + description + "IOS XR 7.4.1 revision removing unused imports."; + semver:module-version "1.0.0"; + } + revision 2020-09-10 { + description + "IOS XR 7.3.1 revision."; + semver:module-version "1.0.0"; + } + + rpc clear-cnbng-nal-cp-association { + description + "Clear cnBNG NAL CP server association"; + csc:cli-command "clear cnbng-nal cp-association"; + } + rpc clear-cnbng-nal-cp-association-location { + description + "Clear cnBNG NAL CP server association for given node"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal cp-association location "; + } + rpc clear-cnbng-nal-dynamic-routes-afi { + description + "Execute clear cnBNG NAL Dynamic-routes AFI-type"; + input { + leaf afi-type { + type string; + mandatory true; + description + "Address-family"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal dynamic-routes afi "; + } + rpc clear-cnbng-nal-dynamic-routes-afi-location { + description + "Execute clear cnBNG NAL Dynamic-routes AFI for the given node"; + input { + leaf afi-type { + type string; + mandatory true; + description + "Address-family"; + csc:cli-name "*"; + } + leaf node-location { + type string; + mandatory true; + description + "Node location"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal dynamic-routes afi location "; + } + rpc clear-cnbng-nal-dynamic-routes-afi-srg-group { + description + "Execute clear cnBNG NAL Dynamic-routes AFI-type srg-group"; + input { + leaf afi-type { + type string; + mandatory true; + description + "Address-family"; + csc:cli-name "*"; + } + leaf srg-group-name { + type string; + mandatory true; + description + "SRG group name"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal dynamic-routes afi srg-group "; + } + rpc clear-cnbng-nal-dynamic-routes-afi-srg-group-location { + description + "Execute clear cnBNG NAL Dynamic-routes AFI srg-group for the given node"; + input { + leaf afi-type { + type string; + mandatory true; + description + "Address-family"; + csc:cli-name "*"; + } + leaf srg-group-name { + type string; + mandatory true; + description + "SRG group name"; + csc:cli-name "*"; + } + leaf node-location { + type string; + mandatory true; + description + "Node location"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal dynamic-routes afi srg-group location "; + } + rpc clear-cnbng-nal-dynamic-routes-history { + description + "Clear cnBNG NAL Dynamic-routes history"; + csc:cli-command "clear cnbng-nal dynamic-routes history"; + } + rpc clear-cnbng-nal-dynamic-routes-history-location { + description + "Clear cnBNG NAL Dynamic-routes history for given node"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal dynamic-routes history location "; + } + rpc clear-cnbng-nal-subscriber-disconnect-history { + description + "Clear cnBNG NAL subscriber disconnect-history entries"; + csc:cli-command "clear cnbng-nal subscriber disconnect-history"; + } + rpc clear-cnbng-nal-subscriber-disconnect-history-location { + description + "Clear cnBNG NAL subscriber disconnect-history entries for given node"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal subscriber disconnect-history location "; + } + rpc clear-cnbng-nal-cp-srg-association-srg-group { + description + "Execute clear cnBNG NAL CP SRG association srg-group"; + input { + leaf srg-group-name { + type string; + mandatory true; + description + "SRG group name"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal cp-srg-association srg-group "; + } + rpc clear-cnbng-nal-cp-srg-association-srg-group-location { + description + "Execute clear cnBNG NAL CP SRG association srg-group for the given node"; + input { + leaf srg-group-name { + type string; + mandatory true; + description + "SRG group name"; + csc:cli-name "*"; + } + leaf node-location { + type string; + mandatory true; + description + "Node location"; + csc:cli-name "*"; + } + } + csc:cli-command "clear cnbng-nal cp-srg-association srg-group location "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1.yang new file mode 100644 index 000000000..d76f28644 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1.yang @@ -0,0 +1,226 @@ +submodule Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1 { + belongs-to Cisco-IOS-XR-cnbng-nal-aipc-client-oper { + prefix Cisco-IOS-XR-cnbng-nal-aipc-client-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR cnbng-nal-aipc-client package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-19 { + description + "AIPC client stats display command updated."; + semver:module-version "1.1.0"; + } + revision 2020-08-14 { + description + "adding schema support for aipc client."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NAL-AIPC-STATS-DATA { + description + "aipc connection stats"; + leaf server-name { + type string { + length "0..256"; + } + description + "server Name"; + } + leaf service-name { + type string { + length "0..256"; + } + description + "process Name"; + } + leaf conn-present { + type boolean; + description + "connection status"; + } + leaf tx-attempt-count { + type uint32; + description + "Tx attempt count"; + } + leaf tx-count { + type uint32; + description + "tx count"; + } + leaf rx-count { + type uint32; + description + "Rx count"; + } + leaf notify-connect-count { + type uint32; + description + "Notify connect count"; + } + leaf notify-queue-high-count { + type uint32; + description + "Notify Queue High count"; + } + leaf notify-queue-low-count { + type uint32; + description + "Notify Queue low count"; + } + leaf notify-queue-full-count { + type uint32; + description + "Notify Queue full count"; + } + leaf notify-data-waiting-count { + type uint32; + description + "Notify data waiting count"; + } + leaf notify-error-count { + type uint32; + description + "Notify error count"; + } + leaf notify-close-count { + type uint32; + description + "Notify close count"; + } + leaf notify-sendstatus-count { + type uint32; + description + "Notify send status count"; + } + leaf notify-open-count { + type uint32; + description + "Notify open count"; + } + leaf pulse-data-waiting-count { + type uint32; + description + "Pulse Data waiting count"; + } + leaf queue-full { + type boolean; + description + "Queue full"; + } + leaf queue-full-drop { + type uint32; + description + "Queue full drop"; + } + leaf queue-ewouldblock-count { + type uint32; + description + "queue would block count"; + } + leaf outstanding-buffers { + type uint32; + description + "Outstanding Buffers"; + } + leaf cumulative-overflow-msgs { + type uint32; + description + "cumulative overflow message"; + } + leaf hwm-overflow-msgs { + type uint32; + description + "Hwm overflow msg"; + } + leaf get-mtu-failure { + type uint32; + description + "Get Mtu Failure"; + } + leaf get-buffer-failure { + type uint32; + description + "get Buffer Failure"; + } + leaf get-buffer-datap-failure { + type uint32; + description + "get Buffer datap Failure"; + } + leaf conn-failure { + type uint32; + description + "Conn Failure"; + } + leaf send-failure { + type uint32; + description + "Send Failure"; + } + leaf receive-failure { + type uint32; + description + "receive Failure"; + } + leaf release-buffer-failure { + type uint32; + description + "Release Buffer failure"; + } + leaf overflow-q-flush-count { + type uint32; + description + "Overflow flush count"; + } + leaf get-buffer-size-failure { + type uint32; + description + "get Buffer size Failure"; + } + leaf notify-queue-low-count-after-high { + type uint32; + description + "notify queue low count after high"; + } + leaf last-high-watermark-count-timestamp { + type uint32; + description + "High WaterMark timestamp"; + } + leaf last-low-watermark-count-timestamp { + type uint32; + description + "Low WaterMark timestamp"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper.yang new file mode 100644 index 000000000..23e733add --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-aipc-client-oper.yang @@ -0,0 +1,92 @@ +module Cisco-IOS-XR-cnbng-nal-aipc-client-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cnbng-nal-aipc-client-oper"; + prefix cnbng-nal-aipc-client-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-cnbng-nal-aipc-client-oper-sub1 { + revision-date 2021-10-19; + } + + 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 cnbng-nal-aipc-client package operational data. + + This module contains definitions + for the following management objects: + cnbng-nal-client: cnBNG NAL Client operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-19 { + description + "AIPC client stats display command updated."; + semver:module-version "1.1.0"; + } + revision 2020-08-14 { + description + "adding schema support for aipc client."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cnbng-nal-client { + config false; + description + "cnBNG NAL Client operational data"; + container nodes { + description + "List of cnBNg NAL supported nodes"; + list node { + key "node-name"; + description + "cnBNg NAL operational data for a particular + node"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + list aipc-client-table { + key "clientpath"; + description + "operational data for NAL AIPC client stats"; + container aipc-client { + description + "operational data for aipc client stats "; + uses NAL-AIPC-STATS-DATA; + } + leaf clientpath { + type xr:Cisco-ios-xr-string; + description + "client"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub1.yang new file mode 100644 index 000000000..4facbc731 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub1.yang @@ -0,0 +1,4408 @@ +submodule Cisco-IOS-XR-cnbng-nal-oper-sub1 { + belongs-to Cisco-IOS-XR-cnbng-nal-oper { + prefix Cisco-IOS-XR-cnbng-nal-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR cnbng-nal package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "Updated the data type of node feature-id to String. + 2022-11-21 + Added block size in chunk statistics and session replay response as dynamic data in bag. + 2022-11-03 + Updated binary data associated with each event in event history entry as private. + 2022-10-20 + Changed readable strings like interface/vrf names from type char to string. + 2022-09-06 + Renamed structure in bag file. + 2022-08-31 + Migrated XR library event history to internal history library. + 2022-08-30 + Added key meta-data into oper yang lists. + 2022-08-08 + Added new element outstanding_ka_expiry_cnt in bag file. + 2022-08-04 + Removed dynamic route history query from schema. + 2022-07-27 + Updated SRG group admin state datatype + 2022-07-21 + Updated nal_subscriber_session_info gateway IP format from uint32_t to in_addr_t + 2022-05-16 + added new elements in bag + 2022-03-16 + Added SRG group summary support + 2022-03-15 + Counters arrays made dynamic. + 2022-03-15 + Added counter for fast switchover timer expiry. + 2022-03-10 + Added counters for SRG group recon start and end. + 2022-03-07 + Added additional NAL disconnect types + 2022-03-04 + Added counter for zero subscribers in recon replay request. + 2022-03-02 + Added new counters for SRG stats retry enqueue. + 2022-03-02 + Added new counter for SRG group state is not ready. + 2022-02-23 + Updated SRG show command bag with reconciliation information. + 2022-02-10 + Added SRG show commands. + 2022-01-27 + Updated length of interface name string length from 64 to 72 + 2022-01-20 + Updated process info bag with in-flight configuration values + 2021-12-21 + Added access interface event history + 2021-12-01 + Updated xml tree definitions + 2021-11-11 + Dynamic Route info addition in route provision flow. + 2021-10-20 + AIPC server stats display command updated. + 2021-10-10 + Added schema support for multiple show CLIs + 2021-09-30 + Added new counter for tracking empty pulses in nal_main_edm_nal_counters lac_stats. + 2021-09-29 + Added batch counter for spio resync"; + semver:module-version "3.0.0"; + } + revision 2021-09-27 { + description + "Updated transport and association status enum in yang model. + 2021-07-22 + Updated nal_main_edm_process_info to include SPIO connection information. + 2021-07-06 + Added schema support for all address family in show dynamic route command. + 2021-07-02 + Added connection status information and interface counters. + 2021-06-30 + Added process readiness and transaction pending flags in nal_main_edm_process_readiness. + 2021-06-26 + Updated nal_main_edm_process_info bag to include features supported from platform. + 2021-06-20 + Added new path for getting subscriber summary based on VRF name. + 2021-06-14 + Added tunnel vrf for LAC/LNS subscriber bag + 2021-06-11 + Updated subscriber brief bag with subscriber interface handle. + 2021-05-31 + Added new NAL counter type client api + 2021-05-29 + Added new bag for getting subscriber count and global routes installed. + 2021-05-05 + Added tr459 mode enable flag in bag structure. + 2021-04-01 + added LNS subcriber info in bag + 2021-03-15 + added details for LAC subcriber in bag"; + semver:module-version "2.0.0"; + } + revision 2021-02-17 { + description + "Added AFI only filters"; + semver:module-version "1.0.0"; + } + revision 2021-02-10 { + description + "Removed redundant fail route index"; + } + revision 2021-02-04 { + description + "Added multi framed route support, metric and tag"; + } + revision 2021-01-23 { + description + "Added new NAL counter type thread_stats"; + } + revision 2020-12-13 { + description + "NAL SVM service final timestamp."; + } + revision 2020-12-08 { + description + "modify Disconnect History Filter keys."; + } + revision 2020-11-27 { + description + "NAL counters."; + } + revision 2020-11-10 { + description + "Update bgen path for dynamic routes and removed schema for dynamic routes history."; + } + revision 2020-10-26 { + description + "Update bag type for AIPC server stats."; + } + revision 2020-10-15 { + description + "Added schema support for cnbng-nal filter oper commands."; + } + revision 2020-10-08 { + description + "Moved counter and AIPC stats to new bag files."; + } + revision 2020-10-02 { + description + "Modified alter gen script to modify leaf list to list."; + } + revision 2020-09-18 { + description + "Added schema support for cnbng-nal access-interface oper commands."; + } + revision 2020-09-15 { + description + "adding schema support for NAL chunk statistics oper bag."; + } + revision 2020-09-10 { + description + "Updated schema for filtering subscriber summary."; + } + revision 2020-09-03 { + description + "adding schema support for NAL Counters, Dynamic routes, summary and history bag."; + } + revision 2020-07-24 { + description + "adding schema support for disconect uniuqe and modifying unique summary."; + } + revision 2020-06-06 { + description + "adding schema support for NAL Process-Info Bag"; + } + revision 2020-05-29 { + description + "adding schema support for Disconnect History Filter."; + } + revision 2020-05-15 { + description + "adding schema support for NAL CP Transport Connection Status Bag"; + } + revision 2020-04-30 { + description + "adding schema support for NAL VRF Table records"; + } + revision 2020-04-23 { + description + "added new elements in bag"; + } + revision 2020-04-09 { + description + "modified class name for FADB records"; + } + revision 2020-04-03 { + description + "adding schema support for subsriber summary and FADB records"; + } + revision 2020-04-02 { + description + "adding schema support for service profiles and process readiness"; + } + revision 2020-03-30 { + description + "adding schema support for v4 and v6 framed route"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nal-main-edm-oc-state { + type enumeration { + enum "nal-main-edm-oc-state-init" { + description + "Initial state"; + } + enum "nal-main-edm-oc-state-sent" { + description + "OC request sent to IM"; + } + enum "nal-main-edm-oc-state-complete" { + description + "OC response received"; + } + enum "nal-main-edm-oc-state-rib-req-queued" { + description + "RIB route request queued"; + } + enum "nal-main-edm-oc-state-rib-req-sent" { + description + "RIB route request sent"; + } + enum "nal-main-edm-oc-state-rib-req-complete" { + description + "RIB response received"; + } + enum "nal-main-edm-oc-state-rib-inactive" { + description + "VRF deleted"; + } + } + description + "Nal main edm oc state"; + } + + typedef Nal-cp-assoc-status { + type enumeration { + enum "nal-spa-assoc-no-init" { + value 0; + description + "Association status not initialized"; + } + enum "nal-spa-assoc-init" { + value 1; + description + "Association status init"; + } + enum "nal-spa-assoc-done" { + value 2; + description + "Association status done"; + } + enum "nal-spa-assoc-not-done" { + value 3; + description + "Association status not-done"; + } + } + description + "Nal cp assoc status"; + } + + typedef Nal-cp-connection-status { + type enumeration { + enum "nal-spa-transport-no-init" { + value 0; + description + "Transport status not initialized"; + } + enum "nal-spa-transport-init" { + value 1; + description + "Transport status Init"; + } + enum "nal-spa-transport-up" { + value 2; + description + "Transport status Up"; + } + enum "nal-spa-transport-down" { + value 3; + description + "Transport status Down"; + } + } + description + "Nal cp connection status"; + } + + typedef Nal-sir-history-event { + type enumeration { + enum "nal-sir-history-event-proc-ready" { + description + "nal sir history event proc ready"; + } + enum "nal-sir-history-event-sir-state" { + description + "nal sir history event sir state"; + } + enum "nal-sir-history-event-max" { + description + "nal sir history event max"; + } + } + description + "SIR history event types"; + } + + typedef Nal-main-edm-srg-group-upd-req-state { + type enumeration { + enum "nal-main-edm-srg-upd-req-state-send-in-progress" { + value 1; + description + "Role update requests are getting sent"; + } + enum "nal-main-edm-srg-upd-req-state-idle" { + value 2; + description + "No activities in progress"; + } + } + description + "Role update request state during role change"; + } + + typedef Nal-main-edm-srg-trans-state { + type enumeration { + enum "nal-main-edm-srg-trans-state-invalid" { + value 0; + description + "SRG FSM transaction state Invalid"; + } + enum "nal-main-edm-srg-trans-state-init" { + value 1; + description + "SRG FSM transaction state Init"; + } + enum "nal-main-edm-srg-trans-state-queued" { + value 2; + description + "SRG FSM transaction state queued"; + } + enum "nal-main-edm-srg-trans-state-role-change" { + value 3; + description + "SRG FSM transaction state role change"; + } + enum "nal-main-edm-srg-trans-state-paused" { + value 4; + description + "SRG FSM transaction state paused"; + } + enum "nal-main-edm-srg-trans-state-complete" { + value 5; + description + "SRG FSM transaction state complete"; + } + enum "nal-main-edm-srg-trans-state-max" { + value 6; + description + "SRG FSM transaction state max"; + } + } + description + "SRG FSM transaction states"; + } + + typedef Nal-main-edm-srg-group-admin-state { + type enumeration { + enum "nal-main-edm-srg-group-admin-state-unknown" { + description + "nal main edm srg group admin state unknown"; + } + enum "nal-main-edm-srg-group-admin-state-up-configured" { + description + "nal main edm srg group admin state up + configured"; + } + enum "nal-main-edm-srg-group-admin-state-cp-configured" { + description + "nal main edm srg group admin state cp + configured"; + } + enum "nal-main-edm-srg-group-admin-state-up-cp-configured" { + description + "nal main edm srg group admin state up cp + configured"; + } + } + description + "Nal main edm srg group admin state"; + } + + typedef Nal-main-edm-srg-group-state { + type enumeration { + enum "nal-main-edm-srg-group-state-invalid" { + description + "nal main edm srg group state invalid"; + } + enum "nal-main-edm-srg-group-state-up" { + description + "nal main edm srg group state up"; + } + enum "nal-main-edm-srg-group-state-down" { + description + "nal main edm srg group state down"; + } + enum "nal-main-edm-srg-group-state-not-ready" { + description + "nal main edm srg group state not ready"; + } + } + description + "SRG group states"; + } + + typedef Nal-main-edm-srg-group-stats-state { + type enumeration { + enum "nal-main-edm-srg-group-stats-state-req" { + value 1; + description + "Queued in flow control queue"; + } + enum "nal-main-edm-srg-group-stats-state-req-comp" { + value 2; + description + "Requests are complete. Waiting for responses."; + } + enum "nal-main-edm-srg-group-stats-state-idle" { + value 3; + description + "No activities in progress"; + } + } + description + "SRG stats state during role change"; + } + + typedef Svm-service-state { + type enumeration { + enum "nal-oper-svm-service-state-unknown" { + value 0; + description + "nal oper svm service state unknown"; + } + enum "nal-oper-svm-service-state-created" { + value 1; + description + "nal oper svm service state created"; + } + enum "nal-oper-svm-service-state-install-request-ed" { + value 2; + description + "nal oper svm service state install request ed"; + } + enum "nal-oper-svm-service-state-install-req-failed" { + value 3; + description + "nal oper svm service state install req failed"; + } + enum "nal-oper-svm-service-state-install-failed" { + value 4; + description + "nal oper svm service state install failed"; + } + enum "nal-oper-svm-service-state-installed" { + value 5; + description + "nal oper svm service state installed"; + } + enum "nal-oper-svm-service-state-un-install-request-ed" { + value 6; + description + "nal oper svm service state un install request + ed"; + } + enum "nal-oper-svm-service-state-un-install-req-failed" { + value 7; + description + "nal oper svm service state un install req + failed"; + } + enum "nal-oper-svm-service-state-un-install-failed" { + value 8; + description + "nal oper svm service state un install failed"; + } + enum "nal-oper-svm-service-state-un-installed" { + value 9; + description + "nal oper svm service state un installed"; + } + enum "nal-oper-svm-service-state-check-point-ed" { + value 10; + description + "nal oper svm service state check point ed"; + } + enum "nal-oper-svm-service-state-restored" { + value 11; + description + "nal oper svm service state restored"; + } + enum "nal-oper-svm-service-state-re-conc-iled" { + value 12; + description + "nal oper svm service state re conc iled"; + } + enum "nal-oper-svm-service-state-replace-request-ed" { + value 13; + description + "nal oper svm service state replace request ed"; + } + enum "nal-oper-svm-service-state-replace-req-failed" { + value 14; + description + "nal oper svm service state replace req failed"; + } + enum "nal-oper-svm-service-state-max" { + value 15; + description + "nal oper svm service state max"; + } + } + description + "NAL SVM Service profile state"; + } + + typedef Nal-trans-client-data { + type enumeration { + enum "oper-nal-trans-client-server" { + value 0; + description + "oper nal trans client server"; + } + enum "oper-nal-trans-client-edm-hand-ler" { + value 1; + description + "oper nal trans client edm hand ler"; + } + enum "oper-nal-trans-client-nal-internal" { + value 2; + description + "oper nal trans client nal internal"; + } + enum "oper-nal-trans-client-nal-db-restore" { + value 3; + description + "oper nal trans client nal db restore"; + } + enum "oper-nal-trans-client-nal-sbydb-restore" { + value 4; + description + "oper nal trans client nal sbydb restore"; + } + enum "oper-nal-trans-client-dhcpv4" { + value 5; + description + "oper nal trans client dhcpv4"; + } + enum "oper-nal-trans-client-dhcpv6" { + value 6; + description + "oper nal trans client dhcpv6"; + } + enum "oper-nal-trans-client-spio" { + value 7; + description + "oper nal trans client spio"; + } + enum "oper-nal-trans-client-bdx" { + value 8; + description + "oper nal trans client bdx"; + } + enum "oper-nal-trans-cleint-im-notify" { + value 9; + description + "oper nal trans cleint im notify"; + } + enum "oper-nal-trans-client-statd" { + value 10; + description + "oper nal trans client statd"; + } + enum "oper-nal-trans-cleint-rib-notify" { + value 11; + description + "oper nal trans cleint rib notify"; + } + enum "oper-nal-trans-cleint-vrf-notify" { + value 12; + description + "oper nal trans cleint vrf notify"; + } + enum "oper-nal-trans-cleint-statsd-notify" { + value 13; + description + "oper nal trans cleint statsd notify"; + } + enum "oper-nal-trans-client-sub-db-recon" { + value 14; + description + "oper nal trans client sub db recon"; + } + enum "oper-nal-trans-client-rib-recon" { + value 15; + description + "oper nal trans client rib recon"; + } + enum "oper-nal-trans-client-im-recon" { + value 16; + description + "oper nal trans client im recon"; + } + enum "oper-nal-trans-client-ut-test" { + value 17; + description + "oper nal trans client ut test"; + } + enum "oper-nal-trans-client-max" { + value 18; + description + "oper nal trans client max"; + } + } + description + "nal transaction client type"; + } + + typedef Nal-trans-state { + type enumeration { + enum "oper-nal-trans-state-init" { + value 0; + description + "oper nal trans state init"; + } + enum "oper-nal-trans-state-subscriber" { + value 1; + description + "oper nal trans state subscriber"; + } + enum "oper-nal-trans-state-subscriber-wait" { + value 2; + description + "oper nal trans state subscriber wait"; + } + enum "oper-nal-trans-state-invalid" { + value 3; + description + "oper nal trans state invalid"; + } + enum "oper-nal-trans-state-queued" { + value 4; + description + "oper nal trans state queued"; + } + enum "oper-nal-trans-state-subscriber-response" { + value 5; + description + "oper nal trans state subscriber response"; + } + enum "oper-nal-trans-state-check-point-wait" { + value 6; + description + "oper nal trans state check point wait"; + } + enum "oper-nal-trans-state-end" { + value 7; + description + "oper nal trans state end"; + } + } + description + "Nal transaction subscriber state"; + } + + typedef Nal-intf-oper { + type enumeration { + enum "oper-nal-ip-sub-o-per-unknown" { + value 0; + description + "oper nal ip sub o per unknown"; + } + enum "oper-nal-ip-sub-o-per-create" { + value 1; + description + "oper nal ip sub o per create"; + } + enum "oper-nal-ip-sub-o-per-update" { + value 2; + description + "oper nal ip sub o per update"; + } + enum "oper-nal-ip-sub-o-per-rollback" { + value 3; + description + "oper nal ip sub o per rollback"; + } + enum "oper-nal-ip-sub-o-per-delete" { + value 4; + description + "oper nal ip sub o per delete"; + } + } + description + "Ipsub operation types"; + } + + typedef Svm-reconcile-state { + type enumeration { + enum "oper-svm-recon-state-idle" { + value 0; + description + "oper svm recon state idle"; + } + enum "oper-svm-recon-state-created" { + value 1; + description + "oper svm recon state created"; + } + enum "oper-svm-recon-state-dt-associated" { + value 2; + description + "oper svm recon state dt associated"; + } + enum "oper-svm-recon-state-up-installed" { + value 3; + description + "oper svm recon state up installed"; + } + enum "oper-svm-recon-state-up-associated" { + value 4; + description + "oper svm recon state up associated"; + } + enum "oper-svm-recon-state-pd-request-ed" { + value 5; + description + "oper svm recon state pd request ed"; + } + enum "oper-svm-recon-state-max" { + value 6; + description + "oper svm recon state max"; + } + } + description + "SVM reconcile state"; + } + + typedef Nal-spa-oper { + type enumeration { + enum "oper-spa-o-per-type-create" { + value 1; + description + "oper spa o per type create"; + } + enum "oper-spa-o-per-type-modify" { + value 2; + description + "oper spa o per type modify"; + } + enum "oper-spa-o-per-type-delete" { + value 3; + description + "oper spa o per type delete"; + } + enum "oper-spa-o-per-type-max" { + value 4; + description + "oper spa o per type max"; + } + } + description + "SPA oper type"; + } + + typedef Svn-sub-state { + type enumeration { + enum "oper-nal-svm-state-unknown" { + value 0; + description + "oper nal svm state unknown"; + } + enum "oper-nal-svm-state-created" { + value 1; + description + "oper nal svm state created"; + } + enum "oper-nal-svm-state-install-request-ed" { + value 2; + description + "oper nal svm state install request ed"; + } + enum "oper-nal-svm-state-install-req-failed" { + value 3; + description + "oper nal svm state install req failed"; + } + enum "oper-nal-svm-state-install-failed" { + value 4; + description + "oper nal svm state install failed"; + } + enum "oper-nal-svm-state-installed" { + value 5; + description + "oper nal svm state installed"; + } + enum "oper-nal-svm-state-un-install-request-ed" { + value 6; + description + "oper nal svm state un install request ed"; + } + enum "oper-nal-svm-state-un-install-req-failed" { + value 7; + description + "oper nal svm state un install req failed"; + } + enum "oper-nal-svm-state-un-install-failed" { + value 8; + description + "oper nal svm state un install failed"; + } + enum "oper-nal-svm-state-un-installed" { + value 9; + description + "oper nal svm state un installed"; + } + enum "oper-nal-svm-state-up-assoc-request-ed" { + value 10; + description + "oper nal svm state up assoc request ed"; + } + enum "oper-nal-svm-state-up-assoc-req-failed" { + value 11; + description + "oper nal svm state up assoc req failed"; + } + enum "oper-nal-svm-state-up-assoc-failed" { + value 12; + description + "oper nal svm state up assoc failed"; + } + enum "oper-nal-svm-state-up-unassoc-request-ed" { + value 13; + description + "oper nal svm state up unassoc request ed"; + } + enum "oper-nal-svm-state-up-unassoc-req-failed" { + value 14; + description + "oper nal svm state up unassoc req failed"; + } + enum "oper-nal-svm-state-up-unassoc-failed" { + value 15; + description + "oper nal svm state up unassoc failed"; + } + enum "oper-nal-svm-state-srv-assoc-request-ed" { + value 16; + description + "oper nal svm state srv assoc request ed"; + } + enum "oper-nal-svm-state-srv-assoc-req-failed" { + value 17; + description + "oper nal svm state srv assoc req failed"; + } + enum "oper-nal-svm-state-srv-assoc-failed" { + value 18; + description + "oper nal svm state srv assoc failed"; + } + enum "oper-nal-svm-state-srv-unassoc-request-ed" { + value 19; + description + "oper nal svm state srv unassoc request ed"; + } + enum "oper-nal-svm-state-srv-unassoc-req-failed" { + value 20; + description + "oper nal svm state srv unassoc req failed"; + } + enum "oper-nal-svm-state-srv-unassoc-failed" { + value 21; + description + "oper nal svm state srv unassoc failed"; + } + enum "oper-nal-svm-state-pd-request-ed" { + value 22; + description + "oper nal svm state pd request ed"; + } + enum "oper-nal-svm-state-pd-req-failed" { + value 23; + description + "oper nal svm state pd req failed"; + } + enum "oper-nal-svm-state-rb-pd-request-ed" { + value 24; + description + "oper nal svm state rb pd request ed"; + } + enum "oper-nal-svm-state-rb-pd-req-failed" { + value 25; + description + "oper nal svm state rb pd req failed"; + } + enum "oper-nal-svm-state-pd-cfg-generated" { + value 26; + description + "oper nal svm state pd cfg generated"; + } + enum "oper-nal-svm-state-pd-cfg-gen-failed" { + value 27; + description + "oper nal svm state pd cfg gen failed"; + } + enum "oper-nal-svm-state-activate-request-ed" { + value 28; + description + "oper nal svm state activate request ed"; + } + enum "oper-nal-svm-state-activate-req-fail" { + value 29; + description + "oper nal svm state activate req fail"; + } + enum "oper-nal-svm-state-activate-fail" { + value 30; + description + "oper nal svm state activate fail"; + } + enum "oper-nal-svm-state-activated" { + value 31; + description + "oper nal svm state activated"; + } + enum "oper-nal-svm-state-pd-failed" { + value 32; + description + "oper nal svm state pd failed"; + } + enum "oper-nal-svm-state-pd-complete" { + value 33; + description + "oper nal svm state pd complete"; + } + enum "oper-nal-svm-state-destroy-request-ed" { + value 34; + description + "oper nal svm state destroy request ed"; + } + enum "oper-nal-svm-state-destroy-req-failed" { + value 35; + description + "oper nal svm state destroy req failed"; + } + enum "oper-nal-svm-state-destroy-failed" { + value 36; + description + "oper nal svm state destroy failed"; + } + enum "oper-nal-svm-state-destroyed" { + value 37; + description + "oper nal svm state destroyed"; + } + enum "oper-nal-svm-state-rollback" { + value 38; + description + "oper nal svm state rollback"; + } + enum "oper-nal-svm-state-replace-req-failed" { + value 39; + description + "oper nal svm state replace req failed"; + } + enum "oper-nal-svm-state-replace-request-ed" { + value 40; + description + "oper nal svm state replace request ed"; + } + enum "oper-nal-svm-state-max" { + value 41; + description + "oper nal svm state max"; + } + } + description + "SVM state of a subscriber"; + } + + typedef Svm-sub-oper { + type enumeration { + enum "oper-nal-svm-sub-o-per-unknown" { + value 0; + description + "oper nal svm sub o per unknown"; + } + enum "oper-nal-svm-sub-o-per-create" { + value 1; + description + "oper nal svm sub o per create"; + } + enum "oper-nal-svm-sub-o-per-update" { + value 2; + description + "oper nal svm sub o per update"; + } + enum "oper-nal-svm-sub-o-per-delete" { + value 3; + description + "oper nal svm sub o per delete"; + } + enum "oper-nal-svm-sub-o-per-rollback" { + value 4; + description + "oper nal svm sub o per rollback"; + } + enum "oper-nal-svm-sub-o-per-cleanup" { + value 5; + description + "oper nal svm sub o per cleanup"; + } + enum "oper-nal-svm-sub-o-per-save" { + value 6; + description + "oper nal svm sub o per save"; + } + enum "oper-nal-svm-sub-o-per-max" { + value 7; + description + "oper nal svm sub o per max"; + } + } + description + "Operation types from FSM to SVM"; + } + + typedef Nal-main-edm-track-obj-state { + type enumeration { + enum "nal-main-edm-track-obj-state-unknown" { + description + "nal main edm track obj state unknown"; + } + enum "nal-main-edm-track-obj-state-up" { + description + "nal main edm track obj state up"; + } + enum "nal-main-edm-track-obj-state-down" { + description + "nal main edm track obj state down"; + } + enum "nal-main-edm-track-obj-state-invalid" { + description + "nal main edm track obj state invalid"; + } + } + description + "Tracking object state"; + } + + typedef Nal-main-edm-srg-role { + type enumeration { + enum "nal-main-edm-srg-role-none" { + description + "SRG role none"; + } + enum "nal-main-edm-srg-role-active" { + description + "SRG role active"; + } + enum "nal-main-edm-srg-role-standby" { + description + "SRG role standby"; + } + enum "nal-main-edm-srg-role-max" { + description + "SRG role max"; + } + } + description + "NAL SRG role"; + } + + typedef Oper-nal-db-subscriber { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid"; + } + enum "ipoe" { + value 1; + description + "IPoE"; + } + enum "pppoe" { + value 2; + description + "PPPoE"; + } + enum "lac" { + value 3; + description + "LAC"; + } + enum "lns" { + value 4; + description + "LNS"; + } + } + description + "Nal Subscriber type"; + } + + typedef In6-addr { + type inet:ipv6-address; + description + "In6 addr"; + } + + typedef Oper-nal-db-subscriber-state { + type enumeration { + enum "init" { + value 0; + description + "Invalid"; + } + enum "connecting" { + value 1; + description + "connecting"; + } + enum "connected" { + value 2; + description + "connected"; + } + enum "activated" { + value 3; + description + "activated"; + } + enum "idle" { + value 4; + description + "idle"; + } + enum "disconnecting" { + value 5; + description + "disconnecting"; + } + enum "end" { + value 6; + description + "end"; + } + } + description + "Nal Subscriber State"; + } + + grouping NAL-MAIN-EDM-PARENT-INTF-INITIATOR-DATA { + description + "NAL MAIN EDM PARENT INTF INITIATOR DATA"; + leaf is-configured { + type boolean; + description + "Ture if the initiator is configred"; + } + } + + grouping NAL-MAIN-EDM-PARENT-INTF-INITIATORS { + description + "Initiator protocol details"; + container intiator-type { + description + "DHCP information"; + uses NAL-MAIN-EDM-PARENT-INTF-INITIATOR-DATA; + } + } + + grouping NAL-MAIN-EDM-PARENT-INTF-DATA { + description + "Parent interface data"; + container initiators { + description + "Configurational state-statistics for each + initiating protocol enabled on this parent + interface"; + uses NAL-MAIN-EDM-PARENT-INTF-INITIATORS; + } + container event-history { + description + "Parent Caps Event History"; + uses NAL-EVENT-HISTORY; + } + leaf parent-interface { + type xr:Interface-name; + description + "Ifhandle of parent interface"; + } + leaf interface-creation-time { + type string; + description + "Interface creation time in Month Date HH:MM:SS + format"; + } + leaf age { + type string; + description + "Age in HH:MM:SS format"; + } + leaf parent-intf-flags { + type uint32; + description + "Access Interface flags"; + } + leaf nal-ether-encap { + type yang:hex-string; + description + "Ether Encap Attribute"; + } + leaf effective-bandwidth { + type uint32; + description + "Effective Bandwidth"; + } + leaf max-bandwidth { + type uint32; + description + "Maximum Bandwidth"; + } + leaf link-local { + type inet:ipv6-address; + description + "link local address"; + } + leaf srg-group-name { + type string { + length "0..65"; + } + description + "SRG group name"; + } + leaf srg-role { + type Nal-main-edm-srg-role; + description + "SRG role"; + } + list counter { + max-elements "10"; + description + "Packet statistics"; + uses NAL-MAIN-EDM-COUNTER; + } + } + + grouping NAL-MAIN-EDM-OC-ENTRY { + description + "NAL owner-channel entries"; + container event-history { + description + "Routes event history"; + uses NAL-EVENT-HISTORY; + } + leaf afi { + type uint8; + description + "Address family for this route"; + } + leaf ipv6-prefix { + type inet:ipv6-address; + description + "ipv6 prefix address"; + } + leaf ipv4-prefix { + type inet:ipv4-address; + description + "ipv4 prefix address"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf primary-address { + type inet:ipv4-address; + description + "Secondary address"; + } + leaf state { + type Nal-main-edm-oc-state; + description + "Status"; + } + leaf vrf-xr { + type string { + length "0..33"; + } + description + "VRF name"; + } + leaf if-name { + type string { + length "0..64"; + } + description + "Interface name"; + } + leaf tag { + type uint32; + description + "Route tag"; + } + leaf flags { + type uint32; + description + "Checkpoint flags"; + } + leaf srg-group-name { + type string { + length "0..65"; + } + description + "SRG group name"; + } + leaf route-metric { + type uint32; + description + "Route metric"; + } + } + + grouping NAL-PLATFORM-FEATURE-CAPABILITIES { + description + "NAL feature capabilities"; + leaf ipoe-terminated { + type boolean; + description + "IPoE terminated"; + } + leaf pppoe-pta { + type boolean; + description + "PPPoE PTA support"; + } + leaf l2tp-lac { + type boolean; + description + "L2TP LAC support"; + } + leaf l2tp-lns { + type boolean; + description + "L2TP LNS"; + } + } + + grouping NAL-MAIN-EDM-PROCESS-INFO { + description + "Process information"; + container platform-capabilities { + description + "Feature capabilities on the platform"; + uses NAL-PLATFORM-FEATURE-CAPABILITIES; + } + container create-peak-timestamp { + description + "Timestamp value for max create subscriber in + transaction"; + uses NAL-TIMESPEC; + } + container delete-peak-timestamp { + description + "Timestamp value for max delete subscriber in + transaction"; + uses NAL-TIMESPEC; + } + container update-peak-timestamp { + description + "Timestamp value for max update subscriber in + transaction"; + uses NAL-TIMESPEC; + } + container total-peak-timestamp { + description + "Timestamp value for max update subscriber in + transaction"; + uses NAL-TIMESPEC; + } + container srg-stats-peak-ts { + description + "Timestamp when srg_stats_peak is updated"; + uses NAL-TIMESPEC; + } + leaf nal-process-restart-flag { + type boolean; + description + "NAL Process's restart flag"; + } + leaf nalot-connection-sts-flag { + type boolean; + description + "NAL Object-tracking connection up status flag"; + } + leaf nal-clear-session-timer-flag { + type boolean; + description + "NAL Clear-Session Timer Flag"; + } + leaf nal-clear-feature-timer-flag { + type boolean; + description + "NAL Clear-Feature Timer Flag"; + } + leaf disconnect-history-file-logg-enable-flag { + type boolean; + description + "Subscriber Disconnect-history file-logging + disable feature flag"; + } + leaf test-client-cfg-enabled-flag { + type boolean; + description + "NAL Test Client config enabled flag"; + } + leaf nal-pre-init-role { + type uint8; + description + "NAL Process's HA PreInit Role"; + } + leaf nal-role { + type uint8; + description + "NAL Process's HA Role"; + } + leaf node-id { + type uint32; + description + "NAL Process's running-instance location node-id"; + } + leaf nalrsi-ctx-file-descriptor { + type int32; + description + "NAL RSI contex file-desc value"; + } + leaf nal-pid-misc-flags { + type uint32; + description + "NAL Main context Miscellaneous flags"; + } + leaf nalsvm-subdb-conn-sts-flag { + type uint8; + description + "NAL Process's SVM context SUBDB + connection-status flag"; + } + leaf nalsvmp-done-req-id { + type uint32; + description + "NAL Process's SVM Produce-Done req-id"; + } + leaf nalsvm-recon-last-upid { + type uint32; + description + "NAL SVM Reconciliation Last UPID"; + } + leaf nalsvm-reconn-pending-req { + type uint32; + description + "NAL SVM Reconciliation Pending Requests"; + } + leaf nalsvm-reconn-max-req { + type uint32; + description + "NAL SVM Reconciliation Max Requests"; + } + leaf nal-sub-ctx-replay-in-progress { + type uint32; + description + "NAL Subscriber context stale cache-size"; + } + leaf nal-subs-ctx-cache-queue-size { + type uint32; + description + "NAL Subscriber context stale cache-size"; + } + leaf nal-subs-ctx-stale-queue-size { + type uint32; + description + "NAL Subscriber context stale queue-size"; + } + leaf disconnect-queue-size { + type uint32; + description + "NAL Subscriber disconnect queue size"; + } + leaf nal-msg-local-seq-no { + type uint32; + description + "NAL Message locally generated seq_no"; + } + leaf nal-msg-seq-no { + type uint32; + description + "NAL message seq_no towards SPA"; + } + leaf nal-bulk-disc-invoke-time { + type uint64; + description + "NAL Bulk Disconnect-session start time"; + } + leaf nal-statistics-hold-timeout-val { + type uint32; + description + "NAL Stats Hold-Timeout value"; + } + leaf nal-statistics-hold-req-count { + type uint32; + description + "NAL Stats Hold-Request Count"; + } + leaf nal-statistics-hold-req-max { + type uint32; + description + "NAL Stats Hold-Request Max-threshold"; + } + leaf nal-statistics-stop-req-count { + type uint32; + description + "NAL Stats Stop-Request counter"; + } + leaf nal-statistics-interim-req-count { + type uint32; + description + "NAL Stats Interim-Request counter"; + } + leaf nal-clear-session-stats-req-count { + type uint32; + description + "NAL Clear-Session Stats Request counter"; + } + leaf nal-clear-feature-stats-req-count { + type uint32; + description + "NAL Clear-Feature Stats Request counter"; + } + leaf nal-stats-processing-flags { + type uint32; + description + "NAL Statistics miscelleaneous flags"; + } + leaf create-in-progress { + type uint32; + description + "Number of subscriber create in progress"; + } + leaf delete-in-progress { + type uint32; + description + "Number of subscriber delete in progress"; + } + leaf update-in-progress { + type uint32; + description + "Number of subscriber update in progress"; + } + leaf cp-recon-duration { + type uint32; + description + "CP recon duration"; + } + leaf cp-recon-flags { + type uint32; + description + "CP recon flags"; + } + leaf cp-replay-reqs-in-progress { + type uint32; + description + "CP replay reqs in progress"; + } + leaf cp-replay-subs-in-progress { + type uint32; + description + "CP replay subs in progress"; + } + leaf disconnect-notification-count { + type uint32; + description + "Number of subscriber disconnect notifications in + queue"; + } + leaf lcp-timeout-notification-count { + type uint32; + description + "Number of LCP timeout notifications in queue"; + } + leaf disconnect-notification-drop-count { + type uint32; + description + "Number of subscriber disconnect notifications + dropped"; + } + leaf lcp-timeout-notification-drop-count { + type uint32; + description + "Number of LCP timeout notifications dropped"; + } + leaf notification-timer-expiry-count { + type uint32; + description + "Number of times notification flow control timer + expired"; + } + leaf notification-timer-running { + type boolean; + description + "Notification flow control timer running or not"; + } + leaf stats-message-count { + type uint32; + description + "Number of interim stats messages in queue"; + } + leaf stats-connection-sts-flag { + type boolean; + description + "Stats connection up status flag"; + } + leaf l2tpfib-connection-sts-flag { + type boolean; + description + "L2TP FIB connection up status flag"; + } + leaf l2tp-netio-connection-sts-flag { + type boolean; + description + "L2TP Netio connection up status flag"; + } + leaf spiopppoe-connection-sts-flag { + type boolean; + description + "SPIO PPPoE connection up status flag"; + } + leaf spioppp-connection-sts-flag { + type boolean; + description + "SPIO PPP connection up status flag"; + } + leaf create-peak-val { + type uint32; + description + "peak value for the create subscriber in + transaction"; + } + leaf delete-peak-val { + type uint32; + description + "peak value for the delete subscriber in + transaction"; + } + leaf update-peak-val { + type uint32; + description + "peak value for the update subscriber in + transaction"; + } + leaf total-in-progress { + type uint32; + description + "Total Number of subscriber create/update/delete + in progress"; + } + leaf total-in-progress-peak { + type uint32; + description + "Total transaction in progress"; + } + leaf max-create-in-progress { + type uint32; + description + "Maximum creates allowed in parallel"; + } + leaf max-update-in-progress { + type uint32; + description + "Maximum updates allowed in parallel"; + } + leaf max-delete-in-progress { + type uint32; + description + "Maximum deletes allowed in parallel"; + } + leaf delete-batch-timer { + type uint32; + units "millisecond"; + description + "Delete queue processing timer timeout in + milliseconds"; + } + leaf delete-batch-size { + type uint32; + description + "Delete queue outstanding requests size"; + } + leaf srg-stats-message-count { + type uint32; + description + "Number of SRG stats messages in queue"; + } + leaf outstanding-stats-message-count { + type uint32; + description + "Number of stats messages for which CP response + is pending"; + } + leaf standby-in-flight-requests { + type uint32; + description + "SRG standby SPA request cache in-flight requests + count"; + } + leaf standby-max-cache-requests { + type uint32; + description + "Maximum number of in-flight requests allowed + from SRG standby SPA request cache"; + } + leaf standby-create-queue-size { + type uint32; + description + "Total number of SPA create requests queued for + SRG standby group"; + } + leaf standby-update-queue-size { + type uint32; + description + "Total number of SPA update requests queued for + SRG standby group"; + } + leaf srg-stats-max { + type uint32; + description + "Maximum number of in-flight requests allowed for + SRG stats retrieval"; + } + leaf srg-stats-in-progress { + type uint32; + description + "Current outstanding SRG stats requests count"; + } + leaf peak-srg-stats-in-progress { + type uint32; + description + "Peak stats requests count during SRG role change"; + } + leaf interim-inflight-quota { + type uint32; + description + "Interim Inflight Quota"; + } + leaf interim-infligh-lwm { + type uint32; + description + "Interim Inflight Low Water Mark"; + } + leaf srg-stats-request-qsize { + type uint32; + description + "Number of SRG Groups in stats request queue"; + } + leaf srg-stats-retry-qsize { + type uint32; + description + "Number of stats retry messages in SRG stats + retry queue"; + } + leaf lcp-outstanding-ka-expiry-cnt { + type uint32; + description + "Number of outstanding LCP KA timeout + notifications"; + } + } + + grouping NAL-MAIN-EDM-COUNTER { + description + "NAL MAIN EDM COUNTER"; + leaf counter-name { + type string { + length "0..33"; + } + description + "Counter name"; + } + leaf counter { + type uint32; + description + "Counter value"; + } + } + + grouping NAL-MAIN-EDM-VRF-AFI-INSTANCE { + description + "NAL MAIN EDM VRF AFI INSTANCE"; + leaf vrf-address-family { + type uint8; + description + "VRF Table Address-Family"; + } + leaf vrf-info-table-flag { + type uint8; + description + "VRF Table Flags"; + } + leaf vrf-table-sync-flag { + type uint8; + description + "buffer complete sent to RIB"; + } + leaf protocol-id { + type uint16; + description + "Protocol Id"; + } + leaf vrf-table-id { + type uint32; + description + "VRF Table-Id"; + } + leaf vrf-pending-routes { + type uint32; + description + "VRF Table Pending-routes"; + } + leaf ref-count { + type uint64; + description + "No.of interfaces referencing this table"; + } + leaf max-ref-count { + type uint64; + description + "Max No. of interfaces allowed"; + } + } + + grouping NAL-MAIN-EDM-VRFTBL-INFO { + description + "NAL VRF Table Info bag"; + leaf vrf-name-xr { + type string { + length "0..33"; + } + description + "Vrf Name"; + } + list nal-vrf-afi-instance-info { + description + "NAL VRF AFI Instance table info"; + uses NAL-MAIN-EDM-VRF-AFI-INSTANCE; + } + list counter { + max-elements "10"; + description + "Packet statistics"; + uses NAL-MAIN-EDM-COUNTER; + } + } + + grouping NAL-SUBSCRIBER-DISCONNECT-HISTORY-DATA { + description + "Subscriber disconnect history bag"; + container fail-data { + description + "failed data"; + uses NAL-LAST-FAILED-DATA; + } + container session-data { + description + "subscriber session data info"; + uses NAL-SUBS-INFO; + } + container event-history { + description + "Subscriber event history"; + uses NAL-EVENT-HISTORY; + } + leaf disc-cause { + type uint32; + description + "Disconnect code"; + } + } + + grouping NAL-AIPC-SERVER-STATS-DATA { + description + "aipc server stats"; + leaf service-name { + type string { + length "0..256"; + } + description + "process Name"; + } + leaf server-name { + type string { + length "0..256"; + } + description + "server Name"; + } + leaf conn-present { + type boolean; + description + "connection status"; + } + leaf tx-attempt-count { + type uint32; + description + "Tx attempt count"; + } + leaf tx-count { + type uint32; + description + "tx count"; + } + leaf rx-count { + type uint32; + description + "Rx count"; + } + leaf notify-connect-count { + type uint32; + description + "Notify connect count"; + } + leaf notify-queue-high-count { + type uint32; + description + "Notify Queue High count"; + } + leaf notify-queue-low-count { + type uint32; + description + "Notify Queue low count"; + } + leaf notify-queue-full-count { + type uint32; + description + "Notify Queue full count"; + } + leaf notify-data-waiting-count { + type uint32; + description + "Notify data waiting count"; + } + leaf notify-error-count { + type uint32; + description + "Notify error count"; + } + leaf notify-close-count { + type uint32; + description + "Notify close count"; + } + leaf notify-sendstatus-count { + type uint32; + description + "Notify send status count"; + } + leaf notify-open-count { + type uint32; + description + "Notify open count"; + } + leaf pulse-data-waiting-count { + type uint32; + description + "Pulse Data waiting count"; + } + leaf queue-full { + type boolean; + description + "Queue full"; + } + leaf queue-full-drop { + type uint32; + description + "Queue full drop"; + } + leaf queue-ewouldblock-count { + type uint32; + description + "queue would block count"; + } + leaf outstanding-buffers { + type uint32; + description + "Outstanding Buffers"; + } + leaf cumulative-overflow-msgs { + type uint32; + description + "cumulative overflow message"; + } + leaf hwm-overflow-msgs { + type uint32; + description + "Hwm overflow msg"; + } + leaf get-mtu-failure { + type uint32; + description + "Get Mtu Failure"; + } + leaf get-buffer-failure { + type uint32; + description + "get Buffer Failure"; + } + leaf get-buffer-datap-failure { + type uint32; + description + "get Buffer datap Failure"; + } + leaf conn-failure { + type uint32; + description + "Conn Failure"; + } + leaf send-failure { + type uint32; + description + "Send Failure"; + } + leaf receive-failure { + type uint32; + description + "receive Failure"; + } + leaf release-buffer-failure { + type uint32; + description + "Release Buffer failure"; + } + leaf overflow-q-flush-count { + type uint32; + description + "Overflow flush count"; + } + leaf get-buffer-size-failure { + type uint32; + description + "get Buffer size Failure"; + } + leaf notify-queue-low-count-after-high { + type uint32; + description + "notify queue low count after high"; + } + leaf last-high-watermark-count-timestamp { + type uint32; + description + "High WaterMark timestamp"; + } + leaf last-low-watermark-count-timestamp { + type uint32; + description + "Low WaterMark timestamp"; + } + } + + grouping NAL-MAIN-EDM-OC-SUMMARY { + description + "Dynamic routes and OC entries summary"; + leaf v4-oc-entries { + type uint32; + description + "Total V4 OC entries primary/secondary"; + } + leaf v6-oc-entries { + type uint32; + description + "Total V6 OC entries"; + } + leaf v4-primary-entries { + type uint32; + description + "Total primary addresses"; + } + leaf v4-sec-entries { + type uint32; + description + "Total secondary addresses"; + } + leaf v4-rib-entries { + type uint32; + description + "Total V4 RIB entries"; + } + leaf v6-rib-entries { + type uint32; + description + "Total V6 RIB entries"; + } + leaf replayed-oc-entries { + type uint32; + description + "Total entries replayed during last reconcile"; + } + } + + grouping NAL-SUBSCRIBER-AFI-SUMMARY { + description + "Subscriber afi summary data"; + leaf none { + type uint32; + description + "No afi"; + } + leaf ipv4 { + type uint32; + description + "IPv4 count"; + } + leaf ipv6 { + type uint32; + description + "IPv6 count"; + } + leaf dual { + type uint32; + description + "Dual count"; + } + leaf lac { + type uint32; + description + "LAC count"; + } + leaf total { + type uint32; + description + "Total"; + } + } + + grouping NAL-SUBSCRIBER-STATE-SUMMARY { + description + "Subscriber state summary data"; + leaf initializing { + type uint32; + description + "Initializing"; + } + leaf connecting { + type uint32; + description + "Connecting"; + } + leaf connected { + type uint32; + description + "Connected"; + } + leaf activated { + type uint32; + description + "Activated"; + } + leaf idle { + type uint32; + description + "Idle"; + } + leaf disconnecting { + type uint32; + description + "Disconnecting"; + } + leaf total { + type uint32; + description + "Total"; + } + } + + grouping NAL-SUBSCRIBER-SUMMARY { + description + "Subscriber summary data"; + container ipoe-state-summary { + description + "IPoE State Summary"; + uses NAL-SUBSCRIBER-STATE-SUMMARY; + } + container pppoe-state-summary { + description + "PPPoE State Summary"; + uses NAL-SUBSCRIBER-STATE-SUMMARY; + } + container lac-state-summary { + description + "LAC State Summary"; + uses NAL-SUBSCRIBER-STATE-SUMMARY; + } + container ipoe-afi-summary { + description + "IPoE AFI Summary"; + uses NAL-SUBSCRIBER-AFI-SUMMARY; + } + container pppoe-afi-summary { + description + "PPPoE AFI Summary"; + uses NAL-SUBSCRIBER-AFI-SUMMARY; + } + container lac-afi-summary { + description + "LAC AFI Summary"; + uses NAL-SUBSCRIBER-AFI-SUMMARY; + } + container lns-state-summary { + description + "LNS State Summary"; + uses NAL-SUBSCRIBER-STATE-SUMMARY; + } + container lns-afi-summary { + description + "LNS AFI Summary"; + uses NAL-SUBSCRIBER-AFI-SUMMARY; + } + } + + grouping NAL-MAIN-EDM-CP-CONN-STS-INFO { + description + "NAL User & Control-plane connection status + information"; + leaf nal-transport-user-plane-src-conn-flag { + type boolean; + description + "True if NAL Transport user-plane source + connection address is configured"; + } + leaf nalcp-svr-connect-sts { + type Nal-cp-connection-status; + description + "NAL control-plane connection-status value"; + } + leaf nalcp-svr-connect-sts-time { + type uint32; + description + "NAL control-plane connection-status time stamp"; + } + leaf nalcp-svr-connect-sts-prev { + type Nal-cp-connection-status; + description + "NAL control-plane prev connection-status value"; + } + leaf nalcp-svr-connect-sts-time-prev { + type uint32; + description + "NAL control-plane prev connection-status time + stamp"; + } + leaf cp-assoc-status { + type Nal-cp-assoc-status; + description + "Control plane association status"; + } + leaf cp-assoc-status-time { + type uint32; + description + "Control plane association status time stamp"; + } + leaf nal-transport-user-plane-source-conn-addr-family { + type uint8; + description + "NAL Transport user-plane source server + connection address-family"; + } + leaf nal-transport-up-source-ipv4-address { + type inet:ipv4-address; + description + "NAL Transport user-plane server connection IPv4 + address"; + } + leaf nal-transport-up-source-ipv6-address { + type inet:ipv6-address; + description + "NAL Transport user-plane server connection IPv6 + address"; + } + leaf nal-transport-up-src-loop-back-if-name { + type string { + length "0..64"; + } + description + "NAL Transport user-plane server loopback + interface-name"; + } + leaf nal-transport-up-source-gtpu-port { + type uint32; + description + "NAL Transport user-plane server connection GTPU + port-number"; + } + leaf nal-transport-up-source-pfcp-port { + type uint32; + description + "NAL Transport user-plane server connection PFCP + port-number"; + } + leaf nal-transport-up-source-vrf-name { + type string { + length "0..33"; + } + description + "NAL Transport user-plane server connection + VRF-Name"; + } + leaf nal-transport-control-plane-primary-srv-addr-family { + type uint8; + description + "NAL transport control-plane primary-server + connection address-family"; + } + leaf nal-transport-cp-primary-ipv4-address { + type inet:ipv4-address; + description + "NAL Transport C-plane primary-server connection + IPv4 address"; + } + leaf nal-transport-cp-primary-ipv6-address { + type inet:ipv6-address; + description + "NAL Transport C-plane primary-server connection + IPv6 address"; + } + leaf nal-transport-cp-server-gtpu-port { + type uint32; + description + "NAL Transport C-plane server's GTPU port-number"; + } + leaf nal-transport-cp-server-pfcp-port { + type uint32; + description + "NAL Transport C-plane server's PFCP port-number"; + } + leaf retry-count { + type uint16; + description + "CP association request retry count"; + } + leaf tr459-enabled { + type boolean; + description + "Flag indicating TR459 is enabled"; + } + } + + grouping NAL-SIR-EVENT-INFO { + description + "SIR event notification received by NAL"; + leaf process-ready { + type boolean; + description + "Current value of process ready"; + } + leaf resync-pending-flags { + type uint32; + description + "Current value of resync_pending flags"; + } + leaf sir-event { + type uint32; + description + "SIR event received"; + } + leaf afi { + type uint32; + description + "AFI type received in SIR event"; + } + } + + grouping NAL-SIR-PROC-READY-INFO { + description + "NAL SIR PROC READY INFO"; + leaf process-ready { + type boolean; + description + "Current value of process ready"; + } + leaf resync-pending-flags { + type uint32; + description + "Current value of resync_pending flags"; + } + leaf sir-ready { + type boolean; + description + "Current SIR status"; + } + leaf sir-event { + type uint32; + description + "SIR event notified"; + } + } + + grouping NAL-SIR-EVENT-DATA { + description + "Union of data in SIR history"; + container proc-ready { + when "../type = 'nal-sir-history-event-proc-ready'" { + description + "../Type = 'NAL_SIR_HISTORY_EVENT_PROC_READY'"; + } + description + "For event type NAL_SIR_HISTORY_EVENT_PROC_READY"; + uses NAL-SIR-PROC-READY-INFO; + } + container sir-event { + when "../type = 'nal-sir-history-event-sir-state'" { + description + "../Type = 'NAL_SIR_HISTORY_EVENT_SIR_STATE'"; + } + description + "For event type NAL_SIR_HISTORY_EVENT_SIR_STATE"; + uses NAL-SIR-EVENT-INFO; + } + leaf type { + type Nal-sir-history-event; + description + "Type"; + } + } + + grouping NAL-SIR-HISTORY-NODE { + description + "SIR history node"; + container timestamp { + description + "Timestamp when the event occured"; + uses NAL-TIMESPEC; + } + container data { + description + "Data associated with each event type"; + uses NAL-SIR-EVENT-DATA; + } + } + + grouping NAL-MAIN-EDM-PROCESS-READINESS { + description + "Process readiness data"; + leaf resync-pending-flags { + type uint32; + description + "Resync operations pending for NAL process"; + } + leaf sir-ready { + type boolean; + description + "Status of SIR readiness"; + } + leaf process-ready { + type boolean; + description + "Process ready flag"; + } + leaf trans-pending { + type boolean; + description + "Transactions pending"; + } + list sir-history { + description + "SIR events history"; + uses NAL-SIR-HISTORY-NODE; + } + } + + grouping NAL-MAIN-EDM-SRG-GROUP-ACCESS-INTF { + description + "NAL MAIN EDM SRG GROUP ACCESS INTF"; + leaf interface-name { + type string; + description + "Access interface name"; + } + } + + grouping NAL-MAIN-EDM-SRG-GROUP-INFO { + description + "SRG group information"; + container access-tracking-object { + description + "SRG group access tracking object"; + uses NAL-MAIN-EDM-SRG-TRACK-OBJ; + } + container core-tracking-object { + description + "SRG group core tracking object"; + uses NAL-MAIN-EDM-SRG-TRACK-OBJ; + } + container group-update-timestamp { + description + "Group status update timestamp"; + uses NAL-TIMESPEC; + } + container srg-group-event-history { + description + "SRG Group events"; + uses NAL-EVENT-HISTORY; + } + container max-active-swo-stats-timespec { + description + "Max active switchover stats timespec"; + uses NAL-TIMESPEC; + } + container max-standby-swo-stats-timespec { + description + "Max standby switchover stats timespec"; + uses NAL-TIMESPEC; + } + leaf srg-group-name-xr { + type string; + description + "SRG group name"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "Virtual Mac address"; + } + leaf stats-state { + type Nal-main-edm-srg-group-stats-state; + description + "Stats collection state"; + } + leaf group-state { + type Nal-main-edm-srg-group-state; + description + "SRG group state"; + } + leaf srg-role { + type Nal-main-edm-srg-role; + description + "SRG role"; + } + leaf route-export-standby { + type boolean; + description + "Route export on standby flag"; + } + leaf fast-switchover-enable { + type boolean; + description + "Fast switchover enable flag"; + } + leaf srg-vrf-name { + type string; + description + "SRG backup vrf name"; + } + leaf admin-state { + type Nal-main-edm-srg-group-admin-state; + description + "SRG group admin state"; + } + leaf srg-id { + type uint32; + description + "Subscriber redundancy group id"; + } + leaf v4-table-id { + type uint32; + description + "V4 table id for SRG VRF"; + } + leaf v6-table-id { + type uint32; + description + "V6 table id for SRG VRF"; + } + leaf v4-proto-id { + type uint32; + description + "V4 proto id for SRG VRF"; + } + leaf v6-proto-id { + type uint32; + description + "V6 proto id for SRG VRF"; + } + leaf damping-timer-interval { + type uint32; + description + "Damping timer interval"; + } + leaf subscriber-count { + type uint32; + description + "Subscriber count"; + } + leaf im-total-entries { + type uint32; + description + "Total IM entries for SRG caps updates"; + } + leaf im-pending { + type uint32; + description + "Pending IM SRG updates"; + } + leaf im-on-hold { + type uint32; + description + "On-hold IM SRG updates"; + } + leaf im-total-errors { + type uint32; + description + "Errored routes"; + } + leaf rib-total-entries { + type uint32; + description + "Total routes synced"; + } + leaf rib-pending { + type uint32; + description + "Pending routes"; + } + leaf rib-total-errors { + type uint32; + description + "Errored routes"; + } + leaf stats-total-entries { + type uint32; + description + "Total Stats Req"; + } + leaf stats-pending { + type uint32; + description + "Pending Stats Response"; + } + leaf stats-total-errors { + type uint32; + description + "Stats Errored"; + } + leaf ipv4-route-count { + type uint32; + description + "IPV4 route count"; + } + leaf ipv6-route-count { + type uint32; + description + "IPV6 route count"; + } + leaf flags { + type uint32; + description + "SRG group flags"; + } + leaf chkpt-flags { + type uint32; + description + "Checkpoint flags"; + } + leaf srg-fsm-state { + type Nal-main-edm-srg-trans-state; + description + "SRG FSM transaction state"; + } + leaf update-request-state { + type Nal-main-edm-srg-group-upd-req-state; + description + "Role update request state"; + } + leaf role-change-rc { + type uint32; + description + "Status indicating if group role update can be + handled"; + } + leaf sub-disc-pending { + type uint32; + description + "Subscriber disconnect response pending count + from CP"; + } + leaf route-tag { + type uint32; + description + "Route tag configured for this group"; + } + leaf subs-in-transaction { + type uint32; + description + "Count of subscribers undergoing transactions"; + } + leaf subs-in-af-down-queue { + type uint32; + description + "Count of queued AF down transactions"; + } + leaf subs-in-disconnect-queue { + type uint32; + description + "Count of subscribers in disconnect queue"; + } + leaf cp-recon-duration { + type uint32; + units "second"; + description + "Control plane reconciliation duration in seconds"; + } + leaf cp-recon-flags { + type uint32; + description + "Control plane reconciliation flags"; + } + leaf cp-replay-reqs-in-progress { + type uint32; + description + "Control plane replay requests in progress"; + } + leaf cp-replay-subs-in-progress { + type uint32; + description + "Control plane replay subscribers in progress"; + } + leaf active-grp-swo-stats-time { + type uint32; + description + "Active group switchover stats time"; + } + leaf standby-grp-swo-stats-time { + type uint32; + description + "Standby group switchover stats time"; + } + leaf max-active-grp-swo-stats-time { + type uint32; + description + "Max active group switchover stats time"; + } + leaf max-standby-grp-swo-stats-time { + type uint32; + description + "Max standby group switchover stats time"; + } + list access-interface { + max-elements "10"; + description + "SRG group access interface list"; + uses NAL-MAIN-EDM-SRG-GROUP-ACCESS-INTF; + } + } + + grouping NAL-MAIN-EDM-CHUNK-DATA { + description + "NAL MAIN EDM CHUNK DATA"; + leaf chunk-name { + type string; + description + "Chunk Name"; + } + leaf chunk-id { + type uint32; + description + "Chunk Id"; + } + leaf chunk-total-alloc { + type uint32; + description + "Total number of chunk malloc done"; + } + leaf chunk-total-free { + type uint32; + description + "Total number of chunk free done"; + } + leaf chunk-in-use { + type uint32; + description + "total number of chunk blocks in use"; + } + leaf block-size { + type uint32; + description + "Per block size"; + } + } + + grouping NAL-MAIN-EDM-CHUNK-STATS { + description + "NAL MAIN EDM CHUNK STATS"; + list chunk-stat { + description + "Chunk Memory statistics"; + uses NAL-MAIN-EDM-CHUNK-DATA; + } + } + + grouping NAL-SUBSCRIBER-SESSION-DATA { + description + "NAL subscriber detail data information"; + container sub-info { + description + "subscriber session data info"; + uses NAL-SUBS-INFO; + } + } + + grouping NAL-SUBSCRIBER-DISCONNECT-HISTORY-LAST-SUMMARY-DATA { + description + "Subscriber disconnect history last summary Bag"; + leaf sub-if-name { + type string { + length "0..64"; + } + description + "Interface Name"; + } + leaf sub-disc-time { + type uint32; + description + "Subscriber Disconnect Time "; + } + leaf disconnect-errorcode { + type uint32; + description + "error code"; + } + } + + grouping NAL-MAIN-EDM-EVENTS { + description + "NAL Main process init information"; + container event-history { + description + "Main process boot up events"; + uses NAL-EVENT-HISTORY; + } + container im-event-history { + description + "IM module events"; + uses NAL-EVENT-HISTORY; + } + container svm-event-history { + description + "SVM module events"; + uses NAL-EVENT-HISTORY; + } + container rib-event-history { + description + "RIB module events"; + uses NAL-EVENT-HISTORY; + } + container cp-event-history { + description + "CP module events"; + uses NAL-EVENT-HISTORY; + } + container config-event-history { + description + "Config module events"; + uses NAL-EVENT-HISTORY; + } + } + + grouping NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-DATA { + description + "Subscriber unique disconnect history Bag"; + leaf disconnect-unique-session-count { + type uint32; + description + "Number of sessions disconnected with this error + code"; + } + leaf disconnect-errorcode { + type uint32; + description + "error code"; + } + leaf sub-if-name { + type string { + length "0..64"; + } + description + "Interface Name"; + } + leaf sub-disc-time { + type uint32; + description + "Subscriber Disconnect Time "; + } + leaf disc-reason { + type string { + length "0..64"; + } + description + "Disconnect reason"; + } + } + + grouping NAL-SERVICE-PROFILE-DATA { + description + "NAL service profile information"; + leaf service-name { + type string { + length "0..65"; + } + description + "Name of the service"; + } + leaf service-id { + type uint32; + description + "Service id assigned by SUBDB"; + } + leaf use-count { + type uint32; + description + "Number of subscribers using this profile"; + } + leaf state { + type Svm-service-state; + description + "State of the service"; + } + leaf fail-err { + type uint32; + description + "Installation failure rc"; + } + leaf stale-timer-remaining { + type uint32; + description + "stale timer remaining"; + } + leaf assoc-in-progress { + type uint32; + description + "No of subscribers need to use this profile"; + } + list wait-upi-dqueue { + description + "List of UPIDs waiting for this service"; + leaf entry { + type uint32; + description + "List of UPIDs waiting for this service"; + } + } + } + + grouping IPSUB-BASE-INIT { + description + "ipsub base init data"; + leaf type { + type uint8; + description + "Init data type"; + } + leaf version { + type uint8; + description + "Init data version"; + } + leaf length { + type uint16; + description + "Init data length"; + } + } + + grouping IPSUB-INTF-INIT-TYPE { + description + "Subscriber intf init data"; + container base { + description + "base"; + uses IPSUB-BASE-INIT; + } + leaf subscriber-mac { + type yang:mac-address; + description + "MAC address"; + } + leaf vlan-tag-count { + type uint16; + description + "Vlan tag count"; + } + leaf vrf-table-id { + type uint32; + description + "Vrf table id "; + } + leaf v6-vrf-table-id { + type uint32; + description + "Ipv6 Vrf table id "; + } + leaf up-link-gre-key { + type uint32; + description + "Up link gre key"; + } + leaf down-link-gre-key { + type uint32; + description + "Down link gre key"; + } + leaf subscriber-gw-mac { + type yang:mac-address; + description + "Gateway MAC address"; + } + leaf sub-attr-bits { + type uint8; + description + "Subscriber attr bits"; + } + leaf sub-info-bits { + type uint8; + description + "Subscriber info bits"; + } + leaf subscriber-ipv4 { + type uint32; + description + "Subscriber IPv4"; + } + leaf nexthop-ipv4 { + type uint32; + description + "next hop IPv4 address"; + } + leaf subscriber-ipv6 { + type inet:ipv6-address; + description + "Subscriber Ipv6 address"; + } + leaf subscriber-ipv6-prefix { + type inet:ipv6-address; + description + "Subscriber Ipv6 address"; + } + leaf nexthop-ipv6 { + type inet:ipv6-address; + description + "Nexthop Ipv6 address"; + } + leaf v6-len { + type uint8; + description + "V6 len"; + } + leaf v6-prefix-len { + type uint8; + description + "V6 prefix len"; + } + leaf template-ifh { + type uint32; + description + "Template interface handle"; + } + leaf ipv4-mtu { + type uint16; + description + "Ipv4 MTU"; + } + leaf ipv6-mtu { + type uint16; + description + "Ipv6 MTU"; + } + leaf odns-deviceid-higher { + type uint32; + description + "ODNS device id highter"; + } + leaf odns-deviceid-lower { + type uint32; + description + "ODNS device id Lower"; + } + list vlan-stack { + max-elements "2"; + description + "vlan stack type"; + uses DOT1Q-TAG-DATA-TYPE; + } + } + + grouping NAL-TRANS-CONTEXT-DATA { + description + "Nal transaction context"; + leaf state { + type Nal-trans-state; + description + "Subscriber transactio state"; + } + leaf client-type { + type Nal-trans-client-data; + description + "Client type indicate who is triggert this + transction"; + } + leaf trans-id { + type uint32; + description + "Transaction ID"; + } + leaf disconnect-ack { + type uint32; + description + "Disconnect Ack"; + } + leaf module-err { + type uint32; + description + "Error generated by sub module"; + } + leaf module-interaction-mask { + type uint64; + description + "Flag to indicate which sub-module interactions + are in progress"; + } + leaf rollback-module-mask { + type uint64; + description + "Flag to indicate which sub-module rollback needs + to be invoked"; + } + leaf pending-cb-bitmask { + type uint64; + description + "Flag indicating pending callbacks for this + transaction"; + } + leaf src-port-id { + type uint16; + description + "Source port of txn_id"; + } + } + + grouping NAL-TRANS-SUB-CONTEXT-DATA { + description + "Subscriber transaction context"; + container trans-context { + description + "trans context"; + uses NAL-TRANS-CONTEXT-DATA; + } + } + + grouping NAL-IPSUB-INFLIGHT-DATA { + description + "Nal ipsub inflight data"; + leaf opearation { + type Nal-intf-oper; + description + "Operation in progress"; + } + leaf flags { + type uint64; + description + "Flags to represent pending activities"; + } + leaf fail-rc { + type uint32; + description + "Backup of update error, internal rollback in + progresss"; + } + } + + grouping SVM-INFLIGHT-DATA { + description + "SVM inflight data"; + leaf service-name { + type string { + length "0..65"; + } + description + "Name of the service"; + } + leaf service-id { + type uint32; + description + "Service id assigned by SUBDB"; + } + leaf operation { + type Nal-spa-oper; + description + "Operation to be performed"; + } + leaf service-flags { + type uint32; + description + "Service flags"; + } + leaf params-list { + type yang:hex-string; + description + "Attribute list of service params"; + } + leaf feature-id { + type uint32; + description + "Feature ID"; + } + } + + grouping NAL-SVM-INFLIGHT-DATA { + description + "Nal SVM inflight data"; + leaf opearation { + type Svm-sub-oper; + description + "Operation in progress"; + } + leaf state { + type Svn-sub-state; + description + "State of the subscriber SVM data"; + } + leaf fail-rc { + type uint32; + description + "Fail rc"; + } + leaf up-list { + type yang:hex-string; + description + "User profile attribute list"; + } + leaf remove-list { + type yang:hex-string; + description + "User profile attribute remove list"; + } + leaf service-index { + type uint32; + description + "Service that is currently under process"; + } + leaf subdb-pd-req-id { + type uint32; + description + "SUBDB produce done req id"; + } + leaf reconcile-state { + type Svm-reconcile-state; + description + "Reconcilitation state"; + } + list service { + description + "Service list array"; + uses SVM-INFLIGHT-DATA; + } + } + + grouping DOT1Q-TAG-DATA-TYPE { + description + "dot1q tag type"; + leaf etype { + type uint16; + description + "etype"; + } + leaf ucv { + type uint16; + description + "ucv"; + } + } + + grouping NAL-SUB-INTF-DATA { + description + "subscriber interface info"; + leaf vlan-tag-count { + type uint16; + description + "Vlan tag count"; + } + leaf sub-attr-bits { + type uint8; + description + "Subscriber attr bits"; + } + leaf flags { + type uint64; + description + "flags bits"; + } + leaf vrf-id { + type uint32; + description + "vrf ID"; + } + leaf v4-table-id { + type uint32; + description + "V4 table id"; + } + leaf v6-table-id { + type uint32; + description + "V6 table id"; + } + list vlan-stack { + max-elements "2"; + description + "vlan stack type"; + uses DOT1Q-TAG-DATA-TYPE; + } + } + + grouping NAL-LAST-FAILED-DATA { + description + "NAL subscriber last failed transaction data"; + leaf data { + type string { + length "0..256"; + } + description + "Failed data"; + } + leaf msg-txn-id { + type uint32; + description + "Message Txn ID"; + } + leaf sess-txn-id { + type uint32; + description + "Session Txn ID"; + } + leaf feature-mask { + type uint32; + description + "Feature Mask"; + } + leaf svm-state { + type uint32; + description + "SVM state"; + } + leaf ip-sub-flags { + type uint64; + description + "IPSUB flags"; + } + leaf pending-callback { + type uint64; + description + "Pending Callback"; + } + leaf failure-reason { + type uint32; + description + "Failure Reason"; + } + leaf failure-timestamp { + type uint32; + description + "Failure Timestamp"; + } + leaf source-port-id { + type uint16; + description + "Source port from which msg_txn_id was generated"; + } + } + + grouping NAL-SUBSCRIBER-DEACTIVATED-SERVICE { + description + "NAL subscriber deactivated service information"; + leaf service-name { + type string { + length "0..65"; + } + description + "Name of the service"; + } + leaf deactivation-time { + type uint32; + description + "service deactivation Time"; + } + leaf bytes-in { + type uint32; + units "byte"; + description + "Bytes in"; + } + leaf bytes-out { + type uint32; + units "byte"; + description + "Bytes out"; + } + leaf bytes-ingiga { + type uint32; + units "byte"; + description + "In Bytes in Giga"; + } + leaf bytes-out-giga { + type uint32; + units "byte"; + description + "Bytes out in Giga"; + } + } + + grouping NAL-SUBSCRIBER-SESSION-DATA-INTERNAL { + description + "Subscriber context data"; + container session-data { + description + "subscriber session data info"; + uses NAL-SUBS-INFO; + } + container sub-intf { + description + "sub intf"; + uses NAL-SUB-INTF-DATA; + } + container svm-inflight { + description + "svm inflight"; + uses NAL-SVM-INFLIGHT-DATA; + } + container ipsub-inflight { + description + "ipsub inflight"; + uses NAL-IPSUB-INFLIGHT-DATA; + } + container trans-sub-context { + description + "trans sub context"; + uses NAL-TRANS-SUB-CONTEXT-DATA; + } + container last-init-data { + description + "last init data"; + uses IPSUB-INTF-INIT-TYPE; + } + leaf subscriber-flags { + type uint32; + description + "Subscriber flags"; + } + leaf ha-flags { + type uint32; + description + "Subscriber flags"; + } + leaf last-transaction-result { + type uint32; + description + "Last Transaction Result"; + } + leaf hold-stats-error { + type uint32; + description + "hold stats status"; + } + leaf clear-stats-error { + type uint32; + description + "clear stats status"; + } + leaf packets-in { + type uint32; + description + "No of packets In"; + } + leaf packets-out { + type uint32; + description + "No of packets Out"; + } + leaf ipv4-packets-in { + type uint32; + description + "No of IPv4 packets In"; + } + leaf ipv4-packets-out { + type uint32; + description + "No of IPv4 packets Out"; + } + leaf ipv4-bytes-in { + type uint32; + description + "IPv4 Bytes in"; + } + leaf ipv4-bytes-out { + type uint32; + description + "IPv4 Bytes out"; + } + leaf ipv4-bytes-in-giga { + type uint32; + description + "IPv4 Bytes in Giga"; + } + leaf ipv4-bytes-out-giga { + type uint32; + description + "IPv4 Bytes out in Giga"; + } + leaf ipv6-packets-in { + type uint32; + description + "No of IPv6 packets In"; + } + leaf ipv6-packets-out { + type uint32; + description + "No of IPv6 packets Out"; + } + leaf ipv6-bytes-in { + type uint32; + description + "IPv6 Bytes in"; + } + leaf ipv6-bytes-out { + type uint32; + description + "IPv6 Bytes out"; + } + leaf ipv6-bytes-in-giga { + type uint32; + description + "IPv6 Bytes in Giga"; + } + leaf ipv6-bytes-out-giga { + type uint32; + description + "IPv6 Bytes out in Giga"; + } + leaf transaction-id { + type uint32; + description + "Subscriber transaction id"; + } + leaf stale-feature-id-info { + type uint32; + description + "subscriber stale feature id info"; + } + leaf sus-dconnect-time { + type uint32; + description + "Subscriber disconnect Time"; + } + leaf obj-hdl { + type uint64; + description + "objext handle"; + } + leaf spi-oattched { + type boolean; + description + "Has SPIO attached"; + } + leaf old-loopback-name { + type string { + length "0..65"; + } + description + "Old Loopback Name"; + } + leaf old-subscriber-ipv4gw { + type uint32; + description + "Old Subscriber IPv4 Gateway"; + } + list deactivated-service { + description + "last deactivated services"; + uses NAL-SUBSCRIBER-DEACTIVATED-SERVICE; + } + list last-fail { + description + "last failed transaction data"; + uses NAL-LAST-FAILED-DATA; + } + } + + grouping NAL-OPER-FADB-RECORD-DATA { + description + "NAL OPER FADB RECORD DATA"; + leaf feature-id { + type uint32; + description + "Subscriber Feature-Id"; + } + leaf upid { + type uint32; + description + "User-plane ID"; + } + leaf service-id { + type uint32; + description + "Subscriber Service-Id"; + } + leaf interim-fail-count { + type uint32; + description + "Interim Fail Count"; + } + leaf stale-timestamp { + type uint32; + description + "Stale timestamp"; + } + leaf hold-rc { + type uint32; + description + "Hold RC"; + } + leaf interim-error { + type uint32; + description + "Interim Error"; + } + } + + grouping NAL-MAIN-EDM-SRG-TRACK-OBJ { + description + "NAL MAIN EDM SRG TRACK OBJ"; + container last-update-timestamp { + description + "Last update timestamp"; + uses NAL-TIMESPEC; + } + leaf tracking-objectname { + type string; + description + "Tracking object name"; + } + leaf tracking-object-state { + type Nal-main-edm-track-obj-state; + description + "Tracking object state"; + } + } + + grouping NAL-MAIN-EDM-SRG-GROUP-SUMMARY { + description + "SRG group summary"; + container access-tracking-object { + description + "SRG group access tracking object"; + uses NAL-MAIN-EDM-SRG-TRACK-OBJ; + } + container core-tracking-object { + description + "SRG group core tracking object"; + uses NAL-MAIN-EDM-SRG-TRACK-OBJ; + } + leaf srg-group-name-xr { + type string { + length "0..65"; + } + description + "SRG group name"; + } + leaf srg-role { + type Nal-main-edm-srg-role; + description + "SRG role"; + } + leaf subscriber-count { + type uint32; + description + "Subscriber count"; + } + leaf ipv4-route-count { + type uint32; + description + "IPV4 route count"; + } + leaf ipv6-route-count { + type uint32; + description + "IPV6 route count"; + } + } + + grouping NAL-TIMESPEC { + description + "Structure to replicate timespec"; + leaf tv-sec { + type uint32; + description + "Time in sec"; + } + leaf tv-nsec { + type uint32; + description + "Time in nsec"; + } + } + + grouping NAL-EVENT-HISTORY-ENTRY { + description + "Individual event history entry"; + container timestamp { + description + "Event timestamp"; + uses NAL-TIMESPEC; + } + leaf event-string { + type string { + length "0..64"; + } + description + "Event string"; + } + } + + grouping NAL-EVENT-HISTORY { + description + "Event history bag"; + leaf class-name { + type string { + length "0..64"; + } + description + "Name of event history"; + } + list event { + description + "Event history list"; + uses NAL-EVENT-HISTORY-ENTRY; + } + } + + grouping NAL-SUB-IPV6-FRAMED-ROUTE { + description + "NAL subscriber IPv6 framed route data"; + leaf next-hop { + type inet:ipv6-address; + description + "Next Hop"; + } + leaf tag { + type uint32; + description + "Tag"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf next-hop-vrf { + type string { + length "0..33"; + } + description + "Next Hop Vrf Name"; + } + } + + grouping NAL-SUB-IPV4-FRAMED-ROUTE { + description + "NAL subscriber IPv4 framed route data"; + leaf next-hop { + type inet:ipv4-address; + description + "Next Hop"; + } + leaf tag { + type uint32; + description + "Tag"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf next-hop-vrf { + type string { + length "0..33"; + } + description + "Next Hop Vrf Name"; + } + } + + grouping NAL-SUB-ACTIVATED-SERVICE { + description + "NAL subscriber activated service information"; + leaf service-name { + type string { + length "0..65"; + } + description + "Name of the service"; + } + leaf activation-time { + type uint32; + description + "service deactivation Time"; + } + leaf flags { + type uint32; + description + "flags"; + } + leaf feature-id { + type uint32; + description + "Feature ID"; + } + leaf bytes-in { + type uint32; + units "byte"; + description + "Bytes in"; + } + leaf bytes-out { + type uint32; + units "byte"; + description + "Bytes out"; + } + leaf bytes-ingiga { + type uint32; + units "byte"; + description + "In Bytes in Giga"; + } + leaf bytes-out-giga { + type uint32; + units "byte"; + description + "Bytes out in Giga"; + } + leaf final-time { + type uint32; + description + "service final stats Time"; + } + } + + grouping NAL-SUBS-BRIEF { + description + "NAL subscriber information brief"; + leaf cp-id { + type uint32; + description + "Control-plane ID"; + } + leaf ifhandle { + type xr:Interface-name; + description + "Subscriber Interface name"; + } + leaf sub-intf { + type uint32; + description + "Subscriber Interface handle"; + } + leaf subscriber-fsm-state { + type Oper-nal-db-subscriber-state; + description + "Nal Subscriber state"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "Vrf Name"; + } + leaf subscriber-ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address of the subscriber"; + } + leaf framed-ipv4-prefix-len { + type yang:hex-string; + description + "IPv4 framed prefix len"; + } + leaf ipv6-iana-address { + type inet:ipv6-address; + description + "ipv6 iana address"; + } + leaf ipv6-iapd-address { + type inet:ipv6-address; + description + "ipv6 iapd address"; + } + leaf ipv6-iapd-prefix { + type uint8; + description + "ipv6 iapd prefix"; + } + leaf framed-ipv6-prefix-len { + type yang:hex-string; + description + "IPv6 framed prefix len"; + } + list framed-ipv4-addr { + max-elements "4"; + description + "IPv4 framed addr"; + leaf entry { + type inet:ipv4-address; + description + "IPv4 framed addr"; + } + } + list framed-ipv6-addr { + max-elements "4"; + description + "IPv6 framed addr"; + leaf entry { + type In6-addr; + description + "IPv6 framed addr"; + } + } + } + + grouping NAL-SUBS-INFO { + description + "NAL subscriber information"; + container session-brief { + description + "Session info brief data"; + uses NAL-SUBS-BRIEF; + } + leaf up-id { + type uint32; + description + "User-plane ID"; + } + leaf pppoe-session-id { + type uint16; + description + "PPPoE sesison ID"; + } + leaf retry-count { + type uint32; + description + "Retry count"; + } + leaf local-magic-number { + type uint32; + description + "Local magic number"; + } + leaf peer-magic-number { + type uint32; + description + "Peer magic number"; + } + leaf keep-alive-interval { + type uint32; + description + "Keep alive interval"; + } + leaf total-ka-req-sent { + type uint32; + description + "Total KA Req Sent"; + } + leaf total-ka-resp-recv { + type uint32; + description + "Total KA Resp Recv"; + } + leaf total-ka-req-recv { + type uint32; + description + "Total KA Req Recv"; + } + leaf total-ka-resp-sent { + type uint32; + description + "Total KA Resp Sent"; + } + leaf mtu { + type uint32; + description + "Max transfer unit"; + } + leaf is-encap-string-ready { + type boolean; + description + "Flag whether encap String is ready or not"; + } + leaf ka-echo-request-counter { + type uint32; + description + "Keepalive req sent but resp not received"; + } + leaf lcp-identity { + type uint8; + description + "Identification for KA echo req"; + } + leaf pppflags { + type uint32; + description + "PPP flags"; + } + leaf subscriber-type { + type Oper-nal-db-subscriber; + description + "Nal Subacriber type"; + } + leaf parent-ifhandle { + type xr:Interface-name; + description + "Parent interface"; + } + leaf parent-interface { + type string { + length "0..64"; + } + description + "Parent interface"; + } + leaf subscriber-interface { + type string { + length "0..64"; + } + description + "Subscriber interface"; + } + leaf srg-role { + type Nal-main-edm-srg-role; + description + "SRG role"; + } + leaf srg-group-name { + type string { + length "0..65"; + } + description + "SRG group name"; + } + leaf inner-vlan { + type uint32; + description + "Inner Vlan"; + } + leaf outer-vlan { + type uint32; + description + "Outer Vlan"; + } + leaf cpe-link-local-address { + type inet:ipv6-address; + description + "CPE link local address"; + } + leaf feature-id-info { + type uint32; + description + "Subscriber feature id info"; + } + leaf subscriber-flags { + type uint32; + description + "Subscriber flags"; + } + leaf interim-interval { + type uint32; + description + "Interim Interval"; + } + leaf last-interim-time-stamp { + type uint32; + description + "Last Interim Time Stamp"; + } + leaf interim-fail-count { + type uint32; + description + "Interim Fail Count"; + } + leaf interim-error { + type uint32; + description + "Interim Error"; + } + leaf bytes-in { + type uint32; + units "byte"; + description + "Bytes in"; + } + leaf bytes-out { + type uint32; + units "byte"; + description + "Bytes out"; + } + leaf bytes-ingiga { + type uint32; + units "byte"; + description + "In Bytes in Giga"; + } + leaf bytes-out-giga { + type uint32; + units "byte"; + description + "Bytes out in Giga"; + } + leaf subscriber-create-time { + type uint32; + description + "Subscriber Create Time"; + } + leaf subscriber-ipv4-up-time { + type uint32; + description + "Subscriber IPv4 Up Time"; + } + leaf subscriber-ipv6-up-time { + type uint32; + description + "Subscriber IPv6 Up Time"; + } + leaf subscriber-ipv4-down-time { + type uint32; + description + "Subscriber IPv4 Down Time"; + } + leaf subscriber-ipv6-down-time { + type uint32; + description + "Subscriber IPv6 Down Time"; + } + leaf subscriber-af-down-reason { + type uint32; + description + "Subscriber AF Down Reason"; + } + leaf afup-flags { + type uint32; + description + "AF ipv4/ipv6 up falgs"; + } + leaf ip-sub-flags { + type uint64; + description + "IPSUB flags"; + } + leaf sub-disc-time { + type uint32; + description + "Subscriber Disconnect Time "; + } + leaf ipv4-route-count { + type uint8; + description + "IPv4 route count"; + } + leaf ipv6-route-count { + type uint8; + description + "IPv6 route count"; + } + leaf local-session-id { + type uint16; + description + "Local session id"; + } + leaf local-tunnel-id { + type uint16; + description + "Local tunnel id"; + } + leaf remote-session-id { + type uint16; + description + "Remote Session id"; + } + leaf remote-tunnel-id { + type uint16; + description + "Remote Tunnel id"; + } + leaf tunnel-vrf-name { + type string { + length "0..33"; + } + description + "Tunnel Vrf Name"; + } + leaf set-tos { + type uint8; + description + "Set Tos"; + } + leaf reflect-tos { + type boolean; + description + "reflect tos"; + } + leaf set-df { + type boolean; + description + "Set DF"; + } + leaf reflect-df { + type boolean; + description + "reflect df"; + } + leaf tcp-mss-adjust { + type uint16; + description + "tcp mss adjust"; + } + leaf dst-port { + type uint16; + description + "dst port"; + } + leaf local-endpt { + type inet:ipv4-address; + description + "local endpt"; + } + leaf remote-endpt { + type inet:ipv4-address; + description + "Remote endpt"; + } + leaf ipoe-afi-cap { + type uint32; + description + "IPOE Subscriber AFI Capability"; + } + leaf loopback-name { + type string { + length "0..65"; + } + description + "Loopback Name"; + } + leaf subscriber-ipv4gw { + type inet:ipv4-address; + description + "Subscriber IPv4 Gateway"; + } + leaf stats-report-id { + type uint16; + description + "subscriber stats report id"; + } + list active-service { + description + "activated services"; + uses NAL-SUB-ACTIVATED-SERVICE; + } + list ipv4-framed-route { + max-elements "4"; + description + "ipv4 framed route"; + uses NAL-SUB-IPV4-FRAMED-ROUTE; + } + list ipv6-framed-route { + max-elements "4"; + description + "ipv6 framed route"; + uses NAL-SUB-IPV6-FRAMED-ROUTE; + } + } + + grouping NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-INTERNAL-DATA { + description + "Subscriber unique disconnect history Bag"; + container session-data { + description + "subscriber session data info"; + uses NAL-SUBS-INFO; + } + container event-history { + description + "Subscriber events history"; + uses NAL-EVENT-HISTORY; + } + } + + grouping NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-DETAIL-DATA { + description + "Subscriber unique disconnect history detail Bag"; + leaf disconnect-unique-session-count { + type uint32; + description + "Number of sessions disconnected with this error + code"; + } + leaf disc-reason { + type string { + length "0..64"; + } + description + "Disconnect reason"; + } + leaf disconnect-errorcode { + type uint32; + description + "error code"; + } + list unique-detail { + max-elements "3"; + description + "unique detail session info for last three + disconnected sessions"; + uses NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-INTERNAL-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub2.yang new file mode 100644 index 000000000..effc2110a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper-sub2.yang @@ -0,0 +1,401 @@ +submodule Cisco-IOS-XR-cnbng-nal-oper-sub2 { + belongs-to Cisco-IOS-XR-cnbng-nal-oper { + prefix Cisco-IOS-XR-cnbng-nal-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR cnbng-nal package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "Updated the data type of node feature-id to String. + 2022-11-21 + Added block size in chunk statistics and session replay response as dynamic data in bag. + 2022-11-03 + Updated binary data associated with each event in event history entry as private. + 2022-10-20 + Changed readable strings like interface/vrf names from type char to string. + 2022-09-06 + Renamed structure in bag file. + 2022-08-31 + Migrated XR library event history to internal history library. + 2022-08-30 + Added key meta-data into oper yang lists. + 2022-08-08 + Added new element outstanding_ka_expiry_cnt in bag file. + 2022-08-04 + Removed dynamic route history query from schema. + 2022-07-27 + Updated SRG group admin state datatype + 2022-07-21 + Updated nal_subscriber_session_info gateway IP format from uint32_t to in_addr_t + 2022-05-16 + added new elements in bag + 2022-03-16 + Added SRG group summary support + 2022-03-15 + Counters arrays made dynamic. + 2022-03-15 + Added counter for fast switchover timer expiry. + 2022-03-10 + Added counters for SRG group recon start and end. + 2022-03-07 + Added additional NAL disconnect types + 2022-03-04 + Added counter for zero subscribers in recon replay request. + 2022-03-02 + Added new counters for SRG stats retry enqueue. + 2022-03-02 + Added new counter for SRG group state is not ready. + 2022-02-23 + Updated SRG show command bag with reconciliation information. + 2022-02-10 + Added SRG show commands. + 2022-01-27 + Updated length of interface name string length from 64 to 72 + 2022-01-20 + Updated process info bag with in-flight configuration values + 2021-12-21 + Added access interface event history + 2021-12-01 + Updated xml tree definitions + 2021-11-11 + Dynamic Route info addition in route provision flow. + 2021-10-20 + AIPC server stats display command updated. + 2021-10-10 + Added schema support for multiple show CLIs + 2021-09-30 + Added new counter for tracking empty pulses in nal_main_edm_nal_counters lac_stats. + 2021-09-29 + Added batch counter for spio resync"; + semver:module-version "3.0.0"; + } + revision 2021-09-27 { + description + "Updated transport and association status enum in yang model. + 2021-07-22 + Updated nal_main_edm_process_info to include SPIO connection information. + 2021-07-06 + Added schema support for all address family in show dynamic route command. + 2021-07-02 + Added connection status information and interface counters. + 2021-06-30 + Added process readiness and transaction pending flags in nal_main_edm_process_readiness. + 2021-06-26 + Updated nal_main_edm_process_info bag to include features supported from platform. + 2021-06-20 + Added new path for getting subscriber summary based on VRF name. + 2021-06-14 + Added tunnel vrf for LAC/LNS subscriber bag + 2021-06-11 + Updated subscriber brief bag with subscriber interface handle. + 2021-05-31 + Added new NAL counter type client api + 2021-05-29 + Added new bag for getting subscriber count and global routes installed. + 2021-05-05 + Added tr459 mode enable flag in bag structure. + 2021-04-01 + added LNS subcriber info in bag + 2021-03-15 + added details for LAC subcriber in bag"; + semver:module-version "2.0.0"; + } + revision 2021-02-17 { + description + "Added AFI only filters"; + semver:module-version "1.0.0"; + } + revision 2021-02-10 { + description + "Removed redundant fail route index"; + } + revision 2021-02-04 { + description + "Added multi framed route support, metric and tag"; + } + revision 2021-01-23 { + description + "Added new NAL counter type thread_stats"; + } + revision 2020-12-13 { + description + "NAL SVM service final timestamp."; + } + revision 2020-12-08 { + description + "modify Disconnect History Filter keys."; + } + revision 2020-11-27 { + description + "NAL counters."; + } + revision 2020-11-10 { + description + "Update bgen path for dynamic routes and removed schema for dynamic routes history."; + } + revision 2020-10-26 { + description + "Update bag type for AIPC server stats."; + } + revision 2020-10-15 { + description + "Added schema support for cnbng-nal filter oper commands."; + } + revision 2020-10-08 { + description + "Moved counter and AIPC stats to new bag files."; + } + revision 2020-10-02 { + description + "Modified alter gen script to modify leaf list to list."; + } + revision 2020-09-18 { + description + "Added schema support for cnbng-nal access-interface oper commands."; + } + revision 2020-09-15 { + description + "adding schema support for NAL chunk statistics oper bag."; + } + revision 2020-09-10 { + description + "Updated schema for filtering subscriber summary."; + } + revision 2020-09-03 { + description + "adding schema support for NAL Counters, Dynamic routes, summary and history bag."; + } + revision 2020-07-24 { + description + "adding schema support for disconect uniuqe and modifying unique summary."; + } + revision 2020-06-06 { + description + "adding schema support for NAL Process-Info Bag"; + } + revision 2020-05-29 { + description + "adding schema support for Disconnect History Filter."; + } + revision 2020-05-15 { + description + "adding schema support for NAL CP Transport Connection Status Bag"; + } + revision 2020-04-30 { + description + "adding schema support for NAL VRF Table records"; + } + revision 2020-04-23 { + description + "added new elements in bag"; + } + revision 2020-04-09 { + description + "modified class name for FADB records"; + } + revision 2020-04-03 { + description + "adding schema support for subsriber summary and FADB records"; + } + revision 2020-04-02 { + description + "adding schema support for service profiles and process readiness"; + } + revision 2020-03-30 { + description + "adding schema support for v4 and v6 framed route"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NAL-MAIN-EDM-HISTOGRAM-TABLE { + description + "NAL MAIN EDM HISTOGRAM TABLE"; + leaf api-name { + type string { + length "0..65"; + } + description + "API name"; + } + leaf req-count { + type uint32; + description + "Request count"; + } + leaf avg-time-sec { + type uint32; + units "second"; + description + "Average time seconds"; + } + leaf avg-time-nsec { + type uint32; + units "nanosecond"; + description + "Average time nano-seconds"; + } + leaf min-time-sec { + type uint32; + units "second"; + description + "Minimum time seconds"; + } + leaf min-time-nsec { + type uint32; + units "nanosecond"; + description + "Minimum time nano-seconds"; + } + leaf max-time-sec { + type uint32; + units "second"; + description + "Maximum time seconds"; + } + leaf max-time-nsec { + type uint32; + units "nanosecond"; + description + "Maximum time nano-seconds"; + } + leaf upid { + type uint32; + description + "UPID"; + } + leaf time-sec { + type uint32; + units "second"; + description + "timestamp seconds"; + } + leaf time-nsec { + type uint32; + units "nanosecond"; + description + "timestamp nano-seconds"; + } + leaf-list hist-array { + type uint32; + max-elements "9"; + description + "Histogram counters"; + } + } + + grouping NAL-MAIN-EDM-32B-COUNTER { + description + "NAL MAIN EDM 32B COUNTER"; + leaf counter-name { + type string { + length "0..65"; + } + description + "Counter name"; + } + leaf counter { + type uint32; + description + "Counter value"; + } + } + + grouping NAL-MAIN-EDM-NAL-COUNTERS { + description + "NAL counter statistics"; + list subscriber-stat { + description + "Subscriber statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list error-stat { + description + "Error statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list acc-stat { + description + "Accounting statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list svm-stat { + description + "SVM statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list spa-stat { + description + "SPA statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list hist-stat { + description + "Histogram statistics"; + uses NAL-MAIN-EDM-HISTOGRAM-TABLE; + } + list spa-lib-counter { + description + "SPA LIB Counters"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list cp-recon-stat { + description + "CP Recon statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list pkt-stat { + description + "Packet statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list thread-stat { + description + "Thread statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list lac-stat { + description + "LAC statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list client-api-stat { + description + "Client API statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + list srg-stat { + description + "SRG statistics"; + uses NAL-MAIN-EDM-32B-COUNTER; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper.yang new file mode 100644 index 000000000..9cbc0083e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-cnbng-nal-oper.yang @@ -0,0 +1,571 @@ +module Cisco-IOS-XR-cnbng-nal-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-cnbng-nal-oper"; + prefix cnbng-nal-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-cnbng-nal-oper-sub2 { + revision-date 2022-12-02; + } + include Cisco-IOS-XR-cnbng-nal-oper-sub1 { + revision-date 2022-12-02; + } + + 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 cnbng-nal package operational data. + + This module contains definitions + for the following management objects: + cnbng-nal: cnBNG NAL operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "Updated the data type of node feature-id to String. + 2022-11-21 + Added block size in chunk statistics and session replay response as dynamic data in bag. + 2022-11-03 + Updated binary data associated with each event in event history entry as private. + 2022-10-20 + Changed readable strings like interface/vrf names from type char to string. + 2022-09-06 + Renamed structure in bag file. + 2022-08-31 + Migrated XR library event history to internal history library. + 2022-08-30 + Added key meta-data into oper yang lists. + 2022-08-08 + Added new element outstanding_ka_expiry_cnt in bag file. + 2022-08-04 + Removed dynamic route history query from schema. + 2022-07-27 + Updated SRG group admin state datatype + 2022-07-21 + Updated nal_subscriber_session_info gateway IP format from uint32_t to in_addr_t + 2022-05-16 + added new elements in bag + 2022-03-16 + Added SRG group summary support + 2022-03-15 + Counters arrays made dynamic. + 2022-03-15 + Added counter for fast switchover timer expiry. + 2022-03-10 + Added counters for SRG group recon start and end. + 2022-03-07 + Added additional NAL disconnect types + 2022-03-04 + Added counter for zero subscribers in recon replay request. + 2022-03-02 + Added new counters for SRG stats retry enqueue. + 2022-03-02 + Added new counter for SRG group state is not ready. + 2022-02-23 + Updated SRG show command bag with reconciliation information. + 2022-02-10 + Added SRG show commands. + 2022-01-27 + Updated length of interface name string length from 64 to 72 + 2022-01-20 + Updated process info bag with in-flight configuration values + 2021-12-21 + Added access interface event history + 2021-12-01 + Updated xml tree definitions + 2021-11-11 + Dynamic Route info addition in route provision flow. + 2021-10-20 + AIPC server stats display command updated. + 2021-10-10 + Added schema support for multiple show CLIs + 2021-09-30 + Added new counter for tracking empty pulses in nal_main_edm_nal_counters lac_stats. + 2021-09-29 + Added batch counter for spio resync"; + semver:module-version "3.0.0"; + } + revision 2021-09-27 { + description + "Updated transport and association status enum in yang model. + 2021-07-22 + Updated nal_main_edm_process_info to include SPIO connection information. + 2021-07-06 + Added schema support for all address family in show dynamic route command. + 2021-07-02 + Added connection status information and interface counters. + 2021-06-30 + Added process readiness and transaction pending flags in nal_main_edm_process_readiness. + 2021-06-26 + Updated nal_main_edm_process_info bag to include features supported from platform. + 2021-06-20 + Added new path for getting subscriber summary based on VRF name. + 2021-06-14 + Added tunnel vrf for LAC/LNS subscriber bag + 2021-06-11 + Updated subscriber brief bag with subscriber interface handle. + 2021-05-31 + Added new NAL counter type client api + 2021-05-29 + Added new bag for getting subscriber count and global routes installed. + 2021-05-05 + Added tr459 mode enable flag in bag structure. + 2021-04-01 + added LNS subcriber info in bag + 2021-03-15 + added details for LAC subcriber in bag"; + semver:module-version "2.0.0"; + } + revision 2021-02-17 { + description + "Added AFI only filters"; + semver:module-version "1.0.0"; + } + revision 2021-02-10 { + description + "Removed redundant fail route index"; + } + revision 2021-02-04 { + description + "Added multi framed route support, metric and tag"; + } + revision 2021-01-23 { + description + "Added new NAL counter type thread_stats"; + } + revision 2020-12-13 { + description + "NAL SVM service final timestamp."; + } + revision 2020-12-08 { + description + "modify Disconnect History Filter keys."; + } + revision 2020-11-27 { + description + "NAL counters."; + } + revision 2020-11-10 { + description + "Update bgen path for dynamic routes and removed schema for dynamic routes history."; + } + revision 2020-10-26 { + description + "Update bag type for AIPC server stats."; + } + revision 2020-10-15 { + description + "Added schema support for cnbng-nal filter oper commands."; + } + revision 2020-10-08 { + description + "Moved counter and AIPC stats to new bag files."; + } + revision 2020-10-02 { + description + "Modified alter gen script to modify leaf list to list."; + } + revision 2020-09-18 { + description + "Added schema support for cnbng-nal access-interface oper commands."; + } + revision 2020-09-15 { + description + "adding schema support for NAL chunk statistics oper bag."; + } + revision 2020-09-10 { + description + "Updated schema for filtering subscriber summary."; + } + revision 2020-09-03 { + description + "adding schema support for NAL Counters, Dynamic routes, summary and history bag."; + } + revision 2020-07-24 { + description + "adding schema support for disconect uniuqe and modifying unique summary."; + } + revision 2020-06-06 { + description + "adding schema support for NAL Process-Info Bag"; + } + revision 2020-05-29 { + description + "adding schema support for Disconnect History Filter."; + } + revision 2020-05-15 { + description + "adding schema support for NAL CP Transport Connection Status Bag"; + } + revision 2020-04-30 { + description + "adding schema support for NAL VRF Table records"; + } + revision 2020-04-23 { + description + "added new elements in bag"; + } + revision 2020-04-09 { + description + "modified class name for FADB records"; + } + revision 2020-04-03 { + description + "adding schema support for subsriber summary and FADB records"; + } + revision 2020-04-02 { + description + "adding schema support for service profiles and process readiness"; + } + revision 2020-03-30 { + description + "adding schema support for v4 and v6 framed route"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cnbng-nal { + config false; + description + "cnBNG NAL operational data"; + container nodes { + description + "List of cnBNG NAL supported nodes"; + list node { + key "node-name"; + description + "cnBNG NAL operational data for a particular + node"; + container nal-counters-tbl { + description + "operational data for NAL counters context dump"; + uses NAL-MAIN-EDM-NAL-COUNTERS; + } + container disconnect-uniques { + description + "operational data for disconnect history unique + table"; + list disconnect-unique { + key "disconnect-error-code"; + description + "operational data for disconnect history + unique table"; + leaf disconnect-error-code { + type uint32; + description + "disconnect history unique error code"; + } + uses NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-DETAIL-DATA; + } + } + container srg-group-summaries { + description + "operational data for NAL SRG group summary"; + list srg-group-summary { + key "srg-group-name"; + description + "operational data for NAL SRG group summary"; + leaf srg-group-name { + type xr:Cisco-ios-xr-string; + description + "Srg group name"; + } + uses NAL-MAIN-EDM-SRG-GROUP-SUMMARY; + } + } + container feature-ids { + description + "operational data for NAL subscriber sessions"; + list feature-id { + key "fadb-path"; + description + "operational data for NAL subscriber sessions + FADB"; + leaf fadb-path { + type xr:Cisco-ios-xr-string; + description + "FADB"; + } + uses NAL-OPER-FADB-RECORD-DATA; + } + } + container session-detail-internal-filter-upids { + description + "operational data based on filter UPID"; + list session-detail-internal-filter-upid { + key "up-id"; + description + "Filter based on UPID"; + leaf up-id { + type uint32; + description + "user plane ID"; + } + uses NAL-SUBSCRIBER-SESSION-DATA-INTERNAL; + } + } + container services { + description + "operational data for NAL subscriber services"; + list service { + key "service"; + description + "operational data for NAL subscriber services"; + leaf service { + type xr:Cisco-ios-xr-string; + description + "service name"; + } + uses NAL-SERVICE-PROFILE-DATA; + } + } + container disconnect-unique-summaries { + description + "operational data for disconnect history unique + table"; + list disconnect-unique-summary { + key "disconnect-error-code"; + description + "operational data for disconnect history + unique"; + leaf disconnect-error-code { + type uint32; + description + "disconnect history unique"; + } + uses NAL-SUBSCRIBER-DISCONNECT-HISTORY-UNIQUE-DATA; + } + } + container main { + description + "cnBNG NAL main"; + container events { + description + "operational data for NAL main process boot up + events"; + uses NAL-MAIN-EDM-EVENTS; + } + } + container disconnect-last-summaries { + description + "operational data for disconnect history last + summary table"; + list disconnect-last-summary { + key "disconnect-error-code"; + description + "operational data for disconnect history last + summary"; + leaf disconnect-error-code { + type xr:Cisco-ios-xr-string; + description + "disconnect error code"; + } + uses NAL-SUBSCRIBER-DISCONNECT-HISTORY-LAST-SUMMARY-DATA; + } + } + container session-briefs { + description + "Brief data for subscriber sessions"; + list session-brief { + key "up-id"; + description + " Brief operational data for NAL subscriber + sessions"; + leaf up-id { + type uint32; + description + "user plane ID"; + } + uses NAL-SUBS-BRIEF; + } + } + container session-detail-filter-upids { + description + "operational data for NAL subscriber sessions"; + list session-detail-filter-upid { + key "up-id"; + description + "Subscriber details based on UPID"; + leaf up-id { + type uint32; + description + "user plane ID"; + } + uses NAL-SUBSCRIBER-SESSION-DATA; + } + } + container nal-chunks-stats-tbl { + description + "operational data for NAL chunks statistics + info"; + uses NAL-MAIN-EDM-CHUNK-STATS; + } + container srg-group-details { + description + "operational data for NAL SRG group info"; + list srg-group-detail { + key "srg-group-name"; + description + "operational data for NAL SRG group info"; + leaf srg-group-name { + type xr:Cisco-ios-xr-string; + description + "Srg group name"; + } + uses NAL-MAIN-EDM-SRG-GROUP-INFO; + } + } + container process-readiness { + description + "operational data for NAL main process + readiness"; + uses NAL-MAIN-EDM-PROCESS-READINESS; + } + container cp-server-table { + description + "operational data for NAL control-plane + transport server info"; + container cp-connection-sts-info { + description + "operational data for NAL control-plane + transport server connection status info"; + uses NAL-MAIN-EDM-CP-CONN-STS-INFO; + } + } + container summary-table { + description + "operational data for NAL subscriber summary"; + container summary-filters { + description + "operational data for NAL subscriber summary + filters"; + uses NAL-SUBSCRIBER-SUMMARY; + } + } + container dynamic-route-summary-tbl { + description + "operational data for NAL dynamic-routes + summary info"; + uses NAL-MAIN-EDM-OC-SUMMARY; + } + container aipc-server-stats { + description + "operational data for NAL AIPC Server stats"; + list aipc-server-stat { + key "aipc-path"; + description + "operational data for aipc stats "; + leaf aipc-path { + type xr:Cisco-ios-xr-string; + description + "aipc"; + } + uses NAL-AIPC-SERVER-STATS-DATA; + } + } + container disconnectlasts { + description + "operational data for Disconnected subscriber + sessions"; + list disconnectlast { + key "disconnect-last-index"; + description + "operational data for disconnect history stats"; + leaf disconnect-last-index { + type xr:Cisco-ios-xr-string; + description + "disconnect history last"; + } + uses NAL-SUBSCRIBER-DISCONNECT-HISTORY-DATA; + } + } + container vrf-names { + description + "operational data for NAL VRF-Table context"; + list vrf-name { + key "vrf-name"; + description + "operational data for NAL VRF-Table context"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses NAL-MAIN-EDM-VRFTBL-INFO; + } + } + container process-info-class { + description + "Significant operational data for NAL main + process"; + uses NAL-MAIN-EDM-PROCESS-INFO; + } + container dynamic-route-afi-tables { + description + "operational data for dynamic-route tables"; + list dynamic-route-afi-table { + key "route"; + description + "operational data for dynamic route-entries + based on AFI type"; + leaf route { + type xr:Cisco-ios-xr-string; + description + "Dynamic Route"; + } + leaf vrf { + type xr:Cisco-ios-xr-string; + description + "Dynamic Route vrf"; + } + uses NAL-MAIN-EDM-OC-ENTRY; + } + } + container access-intf-alls { + description + "cnBNG NAL access interface type"; + list access-intf-all { + key "intf-handle"; + description + "cnBNG NAL access interface "; + leaf intf-handle { + type uint32; + description + "Access interface"; + } + uses NAL-MAIN-EDM-PARENT-INTF-DATA; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper-sub1.yang new file mode 100644 index 000000000..6f48e189b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper-sub1.yang @@ -0,0 +1,759 @@ +submodule Cisco-IOS-XR-coherent-node-oper-sub1 { + belongs-to Cisco-IOS-XR-coherent-node-oper { + prefix Cisco-IOS-XR-coherent-node-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR coherent-node package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping COH-ETH-INTERFACE-DATA { + description + "Hundredgig interface data"; + leaf ifname { + type string { + length "0..64"; + } + description + "ifname"; + } + leaf intf-handle { + type string { + length "0..128"; + } + description + "intf handle"; + } + leaf admin-state { + type string { + length "0..128"; + } + description + "admin state"; + } + leaf admin-up { + type boolean; + description + "admin up"; + } + leaf is-created { + type boolean; + description + "is created"; + } + } + + grouping COH-ETH-INTERFACE-INFO { + description + "Hundredgig interface info"; + list eth-data { + description + "eth data"; + uses COH-ETH-INTERFACE-DATA; + } + } + + grouping COH-PLUGGABLE-INFO { + description + "Coherent pluggable information"; + leaf deviation { + type string { + length "0..17"; + } + description + "deviation"; + } + leaf part-number { + type string { + length "0..17"; + } + description + "part number"; + } + leaf serial-number { + type string { + length "0..12"; + } + description + "serial number"; + } + leaf date-code-number { + type string { + length "0..9"; + } + description + "date code number"; + } + leaf clei-code-number { + type string { + length "0..11"; + } + description + "CLEI code number"; + } + leaf vendorname { + type string { + length "0..17"; + } + description + "vendorname"; + } + leaf description { + type string { + length "0..65"; + } + description + "description"; + } + leaf pid { + type string { + length "0..19"; + } + description + "pid"; + } + leaf vid { + type string { + length "0..5"; + } + description + "vid"; + } + leaf module-hardware-version-number { + type string { + length "0..16"; + } + description + "module hardware version number"; + } + leaf module-firmware-running-version-number { + type string { + length "0..16"; + } + description + "module firmware running version number"; + } + leaf module-firmware-committed-version-number { + type string { + length "0..16"; + } + description + "module firmware committed version number"; + } + leaf ctp-type { + type uint32; + description + "ctp type"; + } + } + + grouping COH-PORT-DATA { + description + "Coherent front panel port data"; + container ctp-info { + description + "ctp info"; + uses COH-PLUGGABLE-INFO; + } + container interface-info { + description + "interface info"; + uses COH-ETH-INTERFACE-INFO; + } + leaf rsip { + type uint32; + description + "rsip"; + } + leaf optics-ctrl-created { + type boolean; + description + "optics ctrl created"; + } + leaf dsp-ctrl-created { + type boolean; + description + "dsp ctrl created"; + } + leaf has-pluggable { + type boolean; + description + "has pluggable"; + } + leaf optics-admin-up { + type boolean; + description + "optics admin up"; + } + leaf dsp-admin-up { + type boolean; + description + "dsp admin up"; + } + leaf end-of-config { + type boolean; + description + "end of config"; + } + leaf optics-laser-state { + type boolean; + description + "optics laser state"; + } + leaf laser-state { + type boolean; + description + "laser state"; + } + leaf laser-on-pending { + type boolean; + description + "laser on pending"; + } + leaf provisioning-needed { + type boolean; + description + "provisioning needed"; + } + leaf force-reprovision { + type boolean; + description + "force reprovision"; + } + leaf configured-frequency { + type uint32; + description + "configured frequency"; + } + leaf provisioned-frequency { + type uint32; + description + "provisioned frequency"; + } + leaf fp-port-idx { + type string { + length "0..128"; + } + description + "fp port idx"; + } + leaf configured-tx-power { + type string { + length "0..128"; + } + description + "configured tx power"; + } + leaf provisioned-tx-power { + type string { + length "0..128"; + } + description + "provisioned tx power"; + } + leaf configured-cd-min { + type string { + length "0..128"; + } + description + "configured cd min"; + } + leaf provisioned-cd-min { + type string { + length "0..128"; + } + description + "provisioned cd min"; + } + leaf configured-cd-max { + type string { + length "0..128"; + } + description + "configured cd max"; + } + leaf provisioned-cd-max { + type string { + length "0..128"; + } + description + "provisioned cd max"; + } + leaf configured-traffic-type { + type string { + length "0..128"; + } + description + "configured traffic type"; + } + leaf provisioned-traffic-type { + type string { + length "0..128"; + } + description + "provisioned traffic type"; + } + leaf configured-loopback-mode { + type string { + length "0..128"; + } + description + "configured loopback mode"; + } + leaf provisioned-loopback-mode { + type string { + length "0..128"; + } + description + "provisioned loopback mode"; + } + leaf expected-ctp2-led-state { + type string { + length "0..128"; + } + description + "expected ctp2 led state"; + } + leaf provisioned-ctp2-led-state { + type string { + length "0..128"; + } + description + "provisioned ctp2 led state"; + } + leaf led-op-rc { + type int32; + description + "led op rc"; + } + leaf laser-op-rc { + type int32; + description + "laser op rc"; + } + leaf wlen-op-rc { + type int32; + description + "wlen op rc"; + } + leaf traffic-op-rc { + type int32; + description + "traffic op rc"; + } + leaf loopback-op-rc { + type int32; + description + "loopback op rc"; + } + leaf tx-power-op-rc { + type int32; + description + "tx power op rc"; + } + leaf cd-min-op-rc { + type int32; + description + "cd min op rc"; + } + leaf cd-max-op-rc { + type int32; + description + "cd max op rc"; + } + leaf provisioning-failed { + type boolean; + description + "provisioning failed"; + } + leaf ctp2-hw-alarms { + type string { + length "0..128"; + } + description + "ctp2 hw alarms"; + } + leaf dsp-hw-alarms { + type string { + length "0..256"; + } + description + "dsp hw alarms"; + } + leaf is-pm-port-created-opt { + type boolean; + description + "is pm port created opt"; + } + leaf rc-pm-port-opt { + type int32; + description + "rc pm port opt"; + } + leaf pm-port-state-opt { + type int32; + description + "pm port state opt"; + } + leaf rc-pm-provision-opt { + type int32; + description + "rc pm provision opt"; + } + leaf is-alarm-port-created-opt { + type boolean; + description + "is alarm port created opt"; + } + leaf rc-alarm-port-opt { + type int32; + description + "rc alarm port opt"; + } + leaf is-pm-port-created-dsp { + type boolean; + description + "is pm port created dsp"; + } + leaf rc-pm-port-dsp { + type int32; + description + "rc pm port dsp"; + } + leaf pm-port-state-dsp { + type int32; + description + "pm port state dsp"; + } + leaf rc-pm-provision-dsp { + type int32; + description + "rc pm provision dsp"; + } + leaf is-alarm-port-created-dsp { + type boolean; + description + "is alarm port created dsp"; + } + leaf rc-alarm-port-dsp { + type int32; + description + "rc alarm port dsp"; + } + } + + grouping COH-HEALTH-DATA { + description + "Coherent health Data"; + leaf aipc-srvr-state { + type boolean; + description + "aipc srvr state"; + } + leaf sysdb-state { + type boolean; + description + "sysdb state"; + } + leaf pm-state { + type boolean; + description + "pm state"; + } + leaf optics-ea-conn { + type boolean; + description + "optics ea conn"; + } + leaf dsp-ea-conn { + type boolean; + description + "dsp ea conn"; + } + leaf vether-state { + type boolean; + description + "vether state"; + } + leaf morgoth-alive { + type boolean; + description + "morgoth alive"; + } + leaf prov-infra-state { + type boolean; + description + "prov infra state"; + } + leaf pending-provision { + type boolean; + description + "pending provision"; + } + leaf pulse-sent { + type boolean; + description + "pulse sent"; + } + leaf inside-prov-loop { + type boolean; + description + "inside prov loop"; + } + leaf fpd-in-progress { + type boolean; + description + "fpd in progress"; + } + leaf prov-run-count { + type uint32; + description + "prov run count"; + } + leaf sdk-version { + type string { + length "0..255"; + } + description + "sdk version"; + } + leaf dsp0-version { + type string { + length "0..255"; + } + description + "dsp0 version"; + } + leaf dsp1-version { + type string { + length "0..255"; + } + description + "dsp1 version"; + } + leaf dsp2-version { + type string { + length "0..255"; + } + description + "dsp2 version"; + } + leaf board-type { + type string { + length "0..255"; + } + description + "board type"; + } + leaf jlink-op { + type string { + length "0..6144"; + } + description + "jlink op"; + } + list port-data { + description + "port data"; + uses COH-PORT-DATA; + } + } + + grouping COH-OP-TIME-STATS { + description + "Coherent operation stats"; + leaf start { + type string { + length "0..255"; + } + description + "start"; + } + leaf end { + type string { + length "0..255"; + } + description + "end"; + } + leaf time-taken { + type string { + length "0..255"; + } + description + "time taken"; + } + leaf worst-time { + type string { + length "0..255"; + } + description + "worst time"; + } + } + + grouping COH-PORT-OP-STATS { + description + "Port specific op stats"; + container laser-on-stats { + description + "laser on stats"; + uses COH-OP-TIME-STATS; + } + container laser-off-stats { + description + "laser off stats"; + uses COH-OP-TIME-STATS; + } + container wl-op-stats { + description + "wl op stats"; + uses COH-OP-TIME-STATS; + } + container txpwr-op-stats { + description + "txpwr op stats"; + uses COH-OP-TIME-STATS; + } + container cdmin-op-stats { + description + "cdmin op stats"; + uses COH-OP-TIME-STATS; + } + container cdmax-op-stats { + description + "cdmax op stats"; + uses COH-OP-TIME-STATS; + } + container traffictype-op-stats { + description + "traffictype op stats"; + uses COH-OP-TIME-STATS; + } + leaf rsip { + type uint32; + description + "rsip"; + } + leaf fp-port-idx { + type string { + length "0..128"; + } + description + "fp port idx"; + } + leaf laser-state { + type boolean; + description + "laser state"; + } + leaf provisioned-frequency { + type uint32; + description + "provisioned frequency"; + } + leaf tx-power { + type int32; + description + "tx power"; + } + leaf cd-min { + type int32; + description + "cd min"; + } + leaf cd-max { + type int32; + description + "cd max"; + } + leaf traffic-type { + type string { + length "0..128"; + } + description + "traffic type"; + } + } + + grouping COH-TIME-STATS { + description + "Coherent driver time stats"; + leaf driver-init { + type string { + length "0..255"; + } + description + "driver init"; + } + leaf driver-operational { + type string { + length "0..255"; + } + description + "driver operational"; + } + leaf device-created { + type string { + length "0..255"; + } + description + "device created"; + } + leaf optics-controllers-created { + type string { + length "0..255"; + } + description + "optics controllers created"; + } + leaf dsp-controllers-created { + type string { + length "0..255"; + } + description + "dsp controllers created"; + } + leaf eth-intf-created { + type string { + length "0..255"; + } + description + "eth intf created"; + } + list port-stat { + description + "port stat"; + uses COH-PORT-OP-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper.yang new file mode 100644 index 000000000..f50955d21 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-node-oper.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-coherent-node-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-coherent-node-oper"; + prefix coherent-node-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-coherent-node-oper-sub1 { + revision-date 2019-04-05; + } + + 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 coherent-node package operational data. + + This module contains definitions + for the following management objects: + coherent: Coherent node operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container coherent { + config false; + description + "Coherent node operational data"; + container nodes { + description + "Coherent list of nodes"; + list node { + key "node-name"; + description + "Coherent discovery operational data for a + particular node"; + container coherent-time-stats { + description + "Coherent driver performace information"; + uses COH-TIME-STATS; + } + container coherenthealth { + description + "Coherent node data for driver health"; + uses COH-HEALTH-DATA; + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-cfg.yang new file mode 100644 index 000000000..eee989de3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-cfg.yang @@ -0,0 +1,157 @@ +module Cisco-IOS-XR-coherent-portmode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-coherent-portmode-cfg"; + prefix coherent-portmode-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 coherent-portmode package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Diff-sel { + type enumeration { + enum "disable" { + value 0; + description + "disable differential"; + } + enum "enable" { + value 1; + description + "enable differential"; + } + } + description + "Diff sel"; + } + + typedef Fec-sel { + type enumeration { + enum "15sdfec" { + value 0; + description + "15%-SD Forward Error Correction"; + } + enum "25sdfec" { + value 1; + description + "25%-SD Forward Error Correction"; + } + enum "15sdfecde" { + value 2; + description + "15%-SD Forward Error Correction with Diff"; + } + enum "otu7staircase" { + value 3; + description + "7%-STAIRCASE Forward Error Correction"; + } + } + description + "Fec sel"; + } + + typedef Speed-sel { + type enumeration { + enum "100g" { + value 100000000; + description + "Speed 100"; + } + enum "200g" { + value 200000000; + description + "Speed 200"; + } + } + description + "Speed sel"; + } + + typedef Mod-sel { + type enumeration { + enum "qpsk" { + value 1; + description + "select qpsk for modulation"; + } + enum "8qam" { + value 2; + description + "select 8qam for modulation"; + } + enum "16qam" { + value 3; + description + "select 16qam for modulation"; + } + } + description + "Mod sel"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container portmode { + description + "Configure through port-mode"; + leaf speed-sel { + type Speed-sel; + description + "Select speed"; + } + leaf fec-sel { + type Fec-sel; + description + "Select Fec"; + } + leaf diff-sel { + type Diff-sel; + description + "Select Diff"; + } + leaf mod-sel { + type Mod-sel; + description + "Select modulation"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper-sub1.yang new file mode 100644 index 000000000..db7be8a41 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper-sub1.yang @@ -0,0 +1,97 @@ +submodule Cisco-IOS-XR-coherent-portmode-oper-sub1 { + belongs-to Cisco-IOS-XR-coherent-portmode-oper { + prefix Cisco-IOS-XR-coherent-portmode-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR coherent-portmode package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-03 { + description + "for portmode oper data."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PORTMODE-INFO { + description + "portmode entry of optics controller"; + leaf intf-name { + type string { + length "0..128"; + } + description + "intf name"; + } + leaf speed { + type string { + length "0..128"; + } + description + "speed"; + } + leaf fec { + type string { + length "0..128"; + } + description + "fec"; + } + leaf diff { + type string { + length "0..128"; + } + description + "diff"; + } + leaf modulation { + type string { + length "0..128"; + } + description + "modulation"; + } + leaf client-mode { + type string { + length "0..128"; + } + description + "client mode"; + } + leaf dac-rate { + type string { + length "0..128"; + } + description + "dac rate"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper.yang new file mode 100644 index 000000000..5de572989 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-coherent-portmode-oper.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-coherent-portmode-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-coherent-portmode-oper"; + prefix coherent-portmode-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-coherent-portmode-oper-sub1 { + revision-date 2021-03-03; + } + + 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 coherent-portmode package operational data. + + This module contains definitions + for the following management objects: + controller-port-mode: Coherent PortMode operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-03 { + description + "for portmode oper data."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container controller-port-mode { + config false; + description + "Coherent PortMode operational data"; + list optics-name { + key "interface-name"; + description + "Name of optics controller"; + container port-mode-info { + description + "PortMode operational data"; + uses PORTMODE-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-common-acl-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-common-acl-datatypes.yang new file mode 100644 index 000000000..9177ea499 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-common-acl-datatypes.yang @@ -0,0 +1,67 @@ +module Cisco-IOS-XR-common-acl-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-common-acl-datatypes"; + prefix common-acl-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Acl-usage-app-id-enum { + type enumeration { + enum "pfilter" { + value 1; + description + "General Usage Statistics"; + } + enum "bgp" { + value 2; + description + "Usage staistics related to BGP Traffic"; + } + enum "ospf" { + value 3; + description + "Usage staistics related to OSPF Traffic"; + } + } + description + "Acl usage app id enum"; + } + + typedef Acl-sequence-number-range { + type uint32 { + range "1..2147483646"; + } + description + "Acl sequence number range"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-autosave-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-autosave-cfg.yang new file mode 100644 index 000000000..2aecafd3a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-autosave-cfg.yang @@ -0,0 +1,186 @@ +module Cisco-IOS-XR-config-autosave-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-autosave-cfg"; + prefix config-autosave-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 config-autosave package configuration. + + This module contains definitions + for the following management objects: + config-autosave-cfg: config_autosave config + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-09 { + description + "Updated password datatypes."; + semver:module-version "1.0.0"; + } + revision 2023-01-05 { + description + "Made filename and password fields mandatory."; + } + revision 2022-11-17 { + description + "Add ranges to wait-time fields. Change filename to store protocol and url remainder."; + } + revision 2022-10-05 { + description + "IOS XR 7.9.1 revision"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Encryption-algorithm { + type enumeration { + enum "default" { + value 1; + description + "Default 2-way encryption algorithm"; + } + enum "aes" { + value 2; + description + "AES encryption algorithm"; + } + } + description + "Encryption algorithm"; + } + + container config-autosave-cfg { + presence "CLI submode compatibility."; + description + "config_autosave config"; + container config-autosave-cfg-filename { + presence "Indicates a config-autosave-cfg-filename node is configured."; + description + "Autosaved config will be sent to this + destination"; + leaf protocol { + type string; + mandatory true; + description + "Protocol (e.g. sftp:)"; + } + leaf url-remainder { + type string; + mandatory true; + description + "Remainder of url (e.g. + //username@host/local_path)"; + } + } + container config-autosave-cfg-waittime { + presence "Indicates a config-autosave-cfg-waittime node is configured."; + description + "How long to wait after running config changes to + start next autosave"; + leaf days { + type uint32 { + range "0..365"; + } + units "day"; + mandatory true; + description + "Days to wait"; + } + leaf hours { + type uint32 { + range "0..23"; + } + units "hour"; + mandatory true; + description + "Hours to wait"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + units "minute"; + mandatory true; + description + "Minutes to wait"; + } + leaf seconds { + type uint32 { + range "0..59"; + } + units "second"; + mandatory true; + description + "Seconds to wait"; + } + } + container config-autosave-cfg-password { + description + "The ENCRYPTED password for the remote url (if + filepath is remote)"; + leaf algorithm { + type Encryption-algorithm; + description + "The encryption algorithm used for the password"; + } + leaf default-encrypted-password { + when "../algorithm = 'default'" { + description + "../Algorithm = Default"; + } + type xr:Proprietary-password; + description + "The default-encrypted authentication password + for the remote url"; + } + leaf aes-encrypted-password { + when "../algorithm = 'aes'" { + description + "../Algorithm = AES"; + } + type xr:Type6-password; + description + "The aes-encrypted authentication password for + the remote url"; + } + } + leaf config-autosave-cfg-timestamp { + type empty; + description + "Append timestamp to autosave filename"; + } + leaf config-autosave-cfg-maximum { + type uint32 { + range "1..4294967295"; + } + description + "Max number of autosaves to keep"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-cfg.yang new file mode 100644 index 000000000..0ad6db661 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-cfg.yang @@ -0,0 +1,57 @@ +module Cisco-IOS-XR-config-cfgmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-cfgmgr-cfg"; + prefix config-cfgmgr-cfg; + + 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 config-cfgmgr package configuration. + + This module contains definitions + for the following management objects: + cfgmgr: Cfgmgr configuration + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-26 { + description + "Updated schema to restrict user-access based on taskgroup."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cfgmgr { + description + "Cfgmgr configuration"; + leaf mode-exclusive { + type boolean; + default "true"; + description + "Enabled or Disabled"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper.yang new file mode 100644 index 000000000..e0cad9e8f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper.yang @@ -0,0 +1,50 @@ +module Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-cfgmgr-exec-augmented-oper"; + prefix config-cfgmgr-exec-augmented-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-cfgmgr-exec-oper { + prefix cfgmgr-exec; + } + + organization + "Cisco Systems, Inc."; + contact + " + Cisco Systems, Inc. + Customer Service + + Postal: 170 W Tasman Drive + San Jose, CA 95134 + + Tel: +1 1800 553-NETS + + E-mail: cs-yang@cisco.com"; + description + "This module contains a collection of YANG definitions + for Cisco IOS-XR config-cfgmgr-exec-oper package operational data. + + Copyright (c) 2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-02 { + description + "Initial revision to augment Cisco-IOS-XR-config-cfgmgr-exec-oper.yang model."; + semver:module-version "1.0.0"; + } + + augment "/cfgmgr-exec:config-manager/cfgmgr-exec:global/cfgmgr-exec:config-commit" { + description + "Augmenting Cisco-IOS-XR-config-cfgmgr-exec-oper model with + last-commit-id."; + leaf last-commit-id { + type string; + description + "Identifier for the last commit in devices with a system admin console. + A client can use this to detect if the config datastore is modified in + either the XR or the system admin VMs."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1.yang new file mode 100644 index 000000000..44e7c425e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1.yang @@ -0,0 +1,417 @@ +submodule Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1 { + belongs-to Cisco-IOS-XR-config-cfgmgr-exec-oper { + prefix Cisco-IOS-XR-config-cfgmgr-exec-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR config-cfgmgr-exec package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-26 { + description + "Updated schema to restrict user-access based on taskgroup."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hist-record { + type enumeration { + enum "cfghist-bag-record-all" { + description + "All history"; + } + enum "cfghist-bag-record-alarm" { + description + "Alarm history"; + } + enum "cfghist-bag-record-cfs-check" { + description + "CfgCheck history"; + } + enum "cfghist-bag-record-commit" { + description + "Commit history"; + } + enum "cfghist-bag-record-oir" { + description + "OIR history"; + } + enum "cfghist-bag-record-shutdown" { + description + "Shutdown history"; + } + enum "cfghist-bag-record-startup" { + description + "Bootup history"; + } + enum "cfghist-bag-record-backup" { + description + "Backup history"; + } + enum "cfghist-bag-record-rebase" { + description + "Rebase history"; + } + enum "cfghist-bag-record-last" { + description + "Last history"; + } + } + description + "Possible types of history"; + } + + grouping CFGSESSION-D-ENTRY { + description + "Per Session Detail Information"; + leaf session-id { + type string; + description + "Session Id"; + } + leaf client-name { + type string; + description + "Client Name"; + } + leaf user-id { + type string; + description + "UserId"; + } + leaf tty-name { + type string; + description + "TtyName"; + } + leaf timestamp { + type string; + description + "Timestamp"; + } + leaf lock-flag { + type string; + description + "Lock Flag"; + } + leaf trial-flag { + type string; + description + "Trial Flag"; + } + leaf pid { + type uint32; + description + "PID"; + } + leaf process-name { + type string; + description + "Process Name"; + } + leaf node-name { + type string; + description + "Node Name"; + } + leaf elapsed-time { + type string; + description + "Elapsed Time"; + } + } + + grouping HIST-BACKUP { + description + "HIST BACKUP"; + leaf comment { + type string; + description + "Comment"; + } + } + + grouping HIST-STARTUP { + description + "HIST STARTUP"; + leaf how-booted { + type string; + description + "How Booted"; + } + leaf boot-path { + type string; + description + "Boot Path"; + } + } + + grouping HIST-SHUTDOWN { + description + "HIST SHUTDOWN"; + leaf comment { + type string; + description + "Comment"; + } + } + + grouping HIST-OIR { + description + "HIST OIR"; + leaf config-type { + type string; + description + "Config Type"; + } + leaf operation { + type string; + description + "Operation"; + } + leaf config-name { + type string; + description + "Config Name"; + } + } + + grouping HIST-COMMIT { + description + "HIST COMMIT"; + leaf commit-id { + type string; + description + "CommitId"; + } + leaf user-id { + type string; + description + "UserId"; + } + leaf line { + type string; + description + "Line"; + } + leaf client-name { + type string; + description + "Client name"; + } + leaf label { + type string; + description + "Label"; + } + leaf comment { + type string; + description + "Comment"; + } + } + + grouping HIST-CFSCHECK { + description + "HIST CFSCHECK"; + leaf user-id { + type string; + description + "UserId"; + } + leaf line { + type string; + description + "Line"; + } + } + + grouping HIST-ALARM { + description + "HIST ALARM"; + leaf state { + type string; + description + "State"; + } + leaf where { + type string; + description + "Where"; + } + } + + grouping HIST-INFO { + description + "Configuration history record information"; + container alarm-info { + when "../type = 'cfghist-bag-record-alarm'" { + description + "../type = 'CFGHIST_BAG_RECORD_ALARM'"; + } + description + "alarm info"; + uses HIST-ALARM; + } + container cfscheck-info { + when "../type = 'cfghist-bag-record-cfs-check'" { + description + "../type = 'CFGHIST_BAG_RECORD_CFSCHECK'"; + } + description + "cfscheck info"; + uses HIST-CFSCHECK; + } + container commit-info { + when "../type = 'cfghist-bag-record-commit'" { + description + "../type = 'CFGHIST_BAG_RECORD_COMMIT'"; + } + description + "commit info"; + uses HIST-COMMIT; + } + container oir-info { + when "../type = 'cfghist-bag-record-oir'" { + description + "../type = 'CFGHIST_BAG_RECORD_OIR'"; + } + description + "oir info"; + uses HIST-OIR; + } + container shutdown-info { + when "../type = 'cfghist-bag-record-shutdown'" { + description + "../type = 'CFGHIST_BAG_RECORD_SHUTDOWN'"; + } + description + "shutdown info"; + uses HIST-SHUTDOWN; + } + container startup-info { + when "../type = 'cfghist-bag-record-startup'" { + description + "../type = 'CFGHIST_BAG_RECORD_STARTUP'"; + } + description + "startup info"; + uses HIST-STARTUP; + } + container backup-info { + when "../type = 'cfghist-bag-record-backup'" { + description + "../type = 'CFGHIST_BAG_RECORD_BACKUP'"; + } + description + "backup info"; + uses HIST-BACKUP; + } + leaf type { + type Hist-record; + description + "type"; + } + leaf a { + when "../type != 'cfghist-bag-record-alarm' and ../type != 'cfghist-bag-record-cfs-check' and ../type != 'cfghist-bag-record-commit' and ../type != 'cfghist-bag-record-oir' and ../type != 'cfghist-bag-record-shutdown' and ../type != 'cfghist-bag-record-startup' and ../type != 'cfghist-bag-record-backup'" { + description + "../type != 'CFGHIST_BAG_RECORD_ALARM' and . + ./type != 'CFGHIST_BAG_RECORD_CFSCHECK' and . + ./type != 'CFGHIST_BAG_RECORD_COMMIT' and . + ./type != 'CFGHIST_BAG_RECORD_OIR' and ../type + != 'CFGHIST_BAG_RECORD_SHUTDOWN' and ../type + != 'CFGHIST_BAG_RECORD_STARTUP' and ../type != + 'CFGHIST_BAG_RECORD_BACKUP'"; + } + type uint32; + description + "B"; + } + } + + grouping CONFIGURATIONHISTORY-ENTRY { + description + "Per History Information"; + container info { + description + "Content of the history"; + uses HIST-INFO; + } + leaf timestamp { + type string; + description + "Timestamp"; + } + } + + grouping CFGCOMMITLIST-D-ENTRY { + description + "Per Commit Information"; + leaf timestamp { + type string; + description + "Timestamp"; + } + leaf commit-id { + type string; + description + "CommitId"; + } + leaf user-id { + type string; + description + "UserId"; + } + leaf line { + type string; + description + "Line"; + } + leaf client-name { + type string; + description + "Client name"; + } + leaf label { + type string; + description + "Label"; + } + leaf comment { + type string; + description + "Comment"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper.yang new file mode 100644 index 000000000..2b56e122c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-exec-oper.yang @@ -0,0 +1,135 @@ +module Cisco-IOS-XR-config-cfgmgr-exec-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-cfgmgr-exec-oper"; + prefix config-cfgmgr-exec-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-config-cfgmgr-exec-oper-sub1 { + revision-date 2020-06-26; + } + + 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 config-cfgmgr-exec package operational data. + + This module contains definitions + for the following management objects: + config-manager: Show Configuration <*> Global path information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-26 { + description + "Updated schema to restrict user-access based on taskgroup."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container config-manager { + config false; + description + "Show Configuration <*> Global path information"; + container global { + description + "Show Configuration <*> Global path information"; + container config-commit { + description + "Show Configuration Commit <*> Global path + information"; + container commits { + description + "Show Configuration Commit List Detail"; + list commit { + key "commit"; + description + "Commit information for a specific commit + entry"; + leaf commit { + type xr:Cisco-ios-xr-string; + description + "Each Session Details"; + } + uses CFGCOMMITLIST-D-ENTRY; + } + } + } + container history-tables { + description + "Show Configuration History <*> Global path + information"; + list history-table { + key "history-type"; + description + "List of possible type of History"; + leaf history-type { + type xr:Cisco-ios-xr-string; + description + "Type of History"; + } + list history { + key "history"; + description + "History summary information for a specific + type of history"; + leaf history { + type xr:Cisco-ios-xr-string; + description + "History Record"; + } + uses CONFIGURATIONHISTORY-ENTRY; + } + } + } + container config-session { + description + "Show Configuration Session <*> Global path + information"; + container sessions { + description + "Show Configuration Session Detail"; + list session { + key "session"; + description + "Session information for a specific session + entry"; + leaf session { + type xr:Cisco-ios-xr-string; + description + "Each Session Details"; + } + uses CFGSESSION-D-ENTRY; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-oper.yang new file mode 100644 index 000000000..5a86c31f1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-cfgmgr-oper.yang @@ -0,0 +1,56 @@ +module Cisco-IOS-XR-config-cfgmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-cfgmgr-oper"; + prefix config-cfgmgr-oper; + + 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 config-cfgmgr package operational data. + + This module contains definitions + for the following management objects: + config: Configuration-related operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-26 { + description + "Updated schema to restrict user-access based on taskgroup."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container config { + config false; + description + "Configuration-related operational data"; + container global { + description + "Global operational data"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-mda-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-mda-cfg.yang new file mode 100644 index 000000000..06ea3a1f1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-mda-cfg.yang @@ -0,0 +1,75 @@ +module Cisco-IOS-XR-config-mda-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-mda-cfg"; + prefix config-mda-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 config-mda package configuration. + + This module contains definitions + for the following management objects: + active-nodes: Per-node configuration for active nodes + preconfigured-nodes: Per-node configuration for non-active + nodes + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container active-nodes { + description + "Per-node configuration for active nodes"; + list active-node { + key "node-name"; + description + "The configuration for an active node"; + leaf node-name { + type xr:Node-id; + description + "The identifier for this node"; + } + } + } + container preconfigured-nodes { + description + "Per-node configuration for non-active nodes"; + list preconfigured-node { + key "node-name"; + description + "The configuration for a non-active node"; + leaf node-name { + type xr:Node-id; + description + "The identifier for this node"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-mibs-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-mibs-cfg.yang new file mode 100644 index 000000000..20114c39d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-mibs-cfg.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-config-mibs-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-mibs-cfg"; + prefix config-mibs-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 config-mibs package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-09-29 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container config-man { + description + "CISCO-CONFIG-MAN-MIB notification configurations"; + leaf enable { + type empty; + description + "Enable ciscoConfigManMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-cfg.yang new file mode 100644 index 000000000..9b0e4c511 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-cfg.yang @@ -0,0 +1,193 @@ +module Cisco-IOS-XR-config-valid-ccv-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-valid-ccv-cfg"; + prefix config-valid-ccv-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-infra-script-mgmt-cfg { + prefix a1; + } + + 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 config-valid-ccv package configuration. + + This module contains definitions + for the following management objects: + configurationvalidation: Configuration for the Configuration + Validation feature + + This YANG module augments the + Cisco-IOS-XR-infra-script-mgmt-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-16 { + description + "Deprecate nodes specific to commit check."; + semver:module-version "2.1.0"; + } + revision 2020-07-06 { + description + "Added Config Scripts support."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Failure-action { + type enumeration { + enum "report" { + value 1; + description + "Report this failure type"; + } + } + description + "Failure action"; + } + + typedef Failure { + type enumeration { + enum "unsupported" { + value 0; + description + "Unsupported failure type"; + } + } + description + "Failure"; + } + + typedef Enable { + type enumeration { + enum "nonblocking" { + value 1; + description + "Non-blocking enable type"; + } + enum "blocking" { + value 2; + description + "Blocking enable type"; + } + } + description + "Enable"; + } + + typedef Checksum { + type enumeration { + enum "sha256" { + value 0; + description + "SHA256"; + } + } + description + "Checksum"; + } + + augment "/a1:scripts" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-script-mgmt-cfg'"; + container config { + description + "Config script activation configuration"; + container scripts { + description + "Config script list"; + list script { + key "name"; + description + "Config script activation item"; + leaf name { + type string; + description + "Script name"; + } + leaf checksum-type { + type Checksum; + mandatory true; + description + "Checksum type"; + } + leaf checksum { + type string { + length "64"; + } + mandatory true; + description + "Checksum value"; + } + leaf priority { + type uint32; + default "500"; + description + "Script priority"; + } + } + } + } + } + container configurationvalidation { + description + "Configuration for the Configuration Validation + feature"; + container failure-type-actions { + status deprecated; + description + "DEPRECATED: not to be used in new deployments"; + list failure-type-action { + key "failure"; + description + "Failure type action configuration"; + leaf action { + type Failure-action; + description + "Action configuration for this failure type"; + } + leaf failure { + type Failure; + description + "Failure type"; + } + } + } + leaf enable { + type Enable; + status deprecated; + description + "DEPRECATED: not to be used in new deployments. + Incompatible with use of ScriptsEnable."; + } + leaf scripts-enable { + type boolean; + description + "Enable configuration validation via scripts"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub1.yang new file mode 100644 index 000000000..bdb19151d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub1.yang @@ -0,0 +1,125 @@ +submodule Cisco-IOS-XR-config-valid-ccv-oper-sub1 { + belongs-to Cisco-IOS-XR-config-valid-ccv-oper { + prefix Cisco-IOS-XR-config-valid-ccv-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR config-valid-ccv package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-16 { + description + "Deprecate nodes specific to commit check."; + semver:module-version "2.1.0"; + } + revision 2020-09-14 { + description + "Added Config Scripts operational data support."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CCV-SCRIPT-EXCEPTION { + description + "Script exception"; + leaf error-message { + type string; + description + "The error message for the exception"; + } + leaf file-name { + type string; + description + "The name of the file that the exception was + raised from"; + } + leaf line { + type uint32; + description + "The line number on which the exception occurred"; + } + leaf backtrace { + type string; + description + "The full backtrace for the exception"; + } + } + + grouping CCV-SCRIPT-EXECUTION-INFO-ITEM-BAG { + description + "Script Execution Information"; + container exception-details { + description + "Details of the first exception that was raised, + if any"; + uses CCV-SCRIPT-EXCEPTION; + } + leaf currently-configured { + type boolean; + description + "TRUE if currently in running configuration, else + FALSE"; + } + leaf call-count { + type uint32; + description + "The number of times called during execution"; + } + leaf duration-milliseconds { + type uint32; + units "millisecond"; + description + "The total execution time, in milliseconds"; + } + leaf validation-errors { + type uint32; + description + "The number of error-level validation failures + raised"; + } + leaf validation-warnings { + type uint32; + description + "The number of warning-level validation failures + raised"; + } + leaf modifications { + type uint32; + description + "The number of configuration modifications made"; + } + leaf pending-modifications { + type uint32; + description + "The number of configuration modifications + pending"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub2.yang new file mode 100644 index 000000000..59fe7158a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper-sub2.yang @@ -0,0 +1,93 @@ +submodule Cisco-IOS-XR-config-valid-ccv-oper-sub2 { + belongs-to Cisco-IOS-XR-config-valid-ccv-oper { + prefix Cisco-IOS-XR-config-valid-ccv-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR config-valid-ccv package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-16 { + description + "Deprecate nodes specific to commit check."; + semver:module-version "2.1.0"; + } + revision 2020-09-14 { + description + "Added Config Scripts operational data support."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ccv-bag-optional-string { + type string; + description + "String which may be optionally present."; + } + + grouping CCV-YVE-VALIDATION-FAILURE { + description + "Validation failure"; + leaf error-app-tag { + type string; + description + "A unique string that identifies the error; + equivalent to error-app-tag in RFC 6241"; + } + leaf error-message { + type string; + description + "The error message; equivalent to error-message + in RFC 6241"; + } + leaf error-severity { + type string; + description + "The severity of the error; equivalent to + error-severity in RFC 6241"; + } + } + + grouping CCV-YVE-VALIDATION-FAILURE-ITEM-BAG { + description + "CCV YVE VALIDATION FAILURE ITEM BAG"; + leaf group-name { + type Ccv-bag-optional-string; + description + "The configuration group that this item is + inherited from, if any"; + } + list failure { + description + "Validation failures for this configuration item"; + uses CCV-YVE-VALIDATION-FAILURE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper.yang new file mode 100644 index 000000000..a53e639f6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-config-valid-ccv-oper.yang @@ -0,0 +1,168 @@ +module Cisco-IOS-XR-config-valid-ccv-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-config-valid-ccv-oper"; + prefix config-valid-ccv-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-cfgmgr-oper { + prefix a1; + } + include Cisco-IOS-XR-config-valid-ccv-oper-sub2 { + revision-date 2021-06-16; + } + include Cisco-IOS-XR-config-valid-ccv-oper-sub1 { + revision-date 2021-06-16; + } + + 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 config-valid-ccv package operational data. + + This YANG module augments the + Cisco-IOS-XR-config-cfgmgr-oper + module with state data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-16 { + description + "Deprecate nodes specific to commit check."; + semver:module-version "2.1.0"; + } + revision 2020-09-14 { + description + "Added Config Scripts operational data support."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CALLBACK-TABLE { + description + "Common node of last-validation, running-config"; + container callbacks { + description + "Execution information for callbacks registered + by config scripts"; + list callback { + key "script-name callback-name"; + description + "Information about execution of a config + script's callback"; + leaf script-name { + type string; + description + "Script name"; + } + leaf callback-name { + type string; + description + "Callback name"; + } + uses CCV-SCRIPT-EXECUTION-INFO-ITEM-BAG; + } + } + } + + grouping SCRIPT-TABLE { + description + "Common node of last-validation, running-config"; + container scripts { + description + "Execution information for configured config + scripts"; + list script { + key "script-name"; + description + "Information about execution of a config script"; + leaf script-name { + type string; + description + "Script name"; + } + uses CCV-SCRIPT-EXECUTION-INFO-ITEM-BAG; + } + } + } + + augment "/a1:config/a1:global" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-config-cfgmgr-oper'"; + container validation { + description + "Configuration validation operational data"; + container unsupported-configs { + status deprecated; + description + "DEPRECATED: not to be used in new deployments"; + list unsupported-config { + key "xpath"; + description + "Information about an unsupported warning"; + leaf xpath { + type string; + description + "XPath of the unsupported configuration"; + } + uses CCV-YVE-VALIDATION-FAILURE-ITEM-BAG; + } + } + container persistent-failures { + description + "Validation failures present in running + configuration"; + list persistent-failure { + key "xpath"; + description + "Information about a validation failure"; + leaf xpath { + type string; + description + "XPath of the failed configuration"; + } + uses CCV-YVE-VALIDATION-FAILURE-ITEM-BAG; + } + } + container script-execution { + description + "Script execution operational data"; + container last-validation { + description + "Operational data for script execution in the + last validation"; + uses SCRIPT-TABLE; + uses CALLBACK-TABLE; + } + container running-config { + description + "Operational data for script execution against + currently running config"; + uses SCRIPT-TABLE; + uses CALLBACK-TABLE; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ains-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ains-act.yang new file mode 100644 index 000000000..15333eece --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ains-act.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-controller-ains-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ains-act"; + prefix controller-ains-act; + + 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 Controller AINS configuration. + + Copyright (c) 2018-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-09 { + description + "IOS XR 6.5.1 revision."; + } + + rpc controller-ains-soak { + description + "Execute ains soak configuration operations"; + input { + leaf controller { + type string; + description + "Controller name in R/S/I/P format"; + } + leaf hours { + type uint32 { + range "0..48"; + } + description + "Hours in range of 0-48"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + description + "Minutes in range of 0-59"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-cfg.yang new file mode 100644 index 000000000..fd11ff9f3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-cfg.yang @@ -0,0 +1,139 @@ +module Cisco-IOS-XR-controller-cpri-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-cpri-cfg"; + prefix controller-cpri-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-cpri package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-03 { + description + "RoE profile attach config command and Loopback config command added."; + semver:module-version "2.1.0"; + } + revision 2019-12-06 { + description + "Few configurations removed for CPRI controller"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cpri-loopback { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "line" { + value 1; + description + "Line Loopback"; + } + enum "internal" { + value 4; + description + "Internal Loopback"; + } + } + description + "Cpri loopback"; + } + + typedef Cpri-lpbk-mode { + type enumeration { + enum "line" { + value 1; + description + "Line Loopback"; + } + enum "internal" { + value 4; + description + "Internal Loopback"; + } + } + description + "Cpri lpbk mode"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container cpri { + description + "CPRI port controller configuration"; + container extended-loopback { + description + "Configure CPRI port extended loopback level and + mode"; + leaf level { + type uint32 { + range "1..3"; + } + description + "ExtendedLoopbackLevel"; + } + leaf mode { + type Cpri-lpbk-mode; + description + "ExtendedLoopbackMode"; + } + } + leaf loopback { + type Cpri-loopback; + default "none"; + description + "Configure CPRI loopback mode "; + } + leaf l1-startup-timer { + type uint32; + default "0"; + description + "Configure L1 startup timer value"; + } + leaf roe-profile { + type uint32 { + range "1..255"; + } + description + "Attach RoE profile"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper-sub1.yang new file mode 100644 index 000000000..ed182c3f0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper-sub1.yang @@ -0,0 +1,1015 @@ +submodule Cisco-IOS-XR-controller-cpri-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-cpri-oper { + prefix Cisco-IOS-XR-controller-cpri-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-cpri package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-09 { + description + "Added RoE and datapath-internal alarms to CPRI port info and stats."; + semver:module-version "2.2.0"; + } + revision 2021-06-03 { + description + "Added leaf cpri-hfn-sync-event to container stats."; + semver:module-version "2.1.0"; + } + revision 2021-05-10 { + description + "Added leaf hfn-sync-disable to grouping CPRI-PORT-ROE-PARAMS + 2021-05-03 + Added mapper,demapper roe-profile parameters presync-match-threshold, resync-match-threshold, resync-mismatch-threshold, sync-threshold, drain-threshold, presync-match-count, resync-match-count, resync-mismatch-count. + 2021-04-30 + Added roe-pkt-len-in-use to container info. + 2020-11-04 + Added auto-neg-status, auto-neg-fail-reason, hfn-sync-time, roe-sync-time and auto-neg-completion-time to container info. Added rx-cpri-hyper-frames and tx-cpri-hyper-frames to container stats. + 2020-08-03 + Changed leaf packet-len type to uint16. Renamed leaf errored-packets to errored-length-packets. Added leaves receive-good-packets and receive-roe-lcv-count."; + semver:module-version "2.0.0"; + } + revision 2019-12-02 { + description + "Show command subtype added for CPRI controller"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Loopback-info { + type enumeration { + enum "none" { + description + "None"; + } + enum "line" { + description + "Line loopback"; + } + enum "line-level2" { + description + "Line loopback at level 2"; + } + enum "line-level3" { + description + "Line loopback at level 3"; + } + enum "internal" { + description + "Internal loopback"; + } + enum "internal-level2" { + description + "Internal loopback at level 2"; + } + enum "internal-level3" { + description + "Internal loopback at level 3"; + } + } + description + "loopback info"; + } + + typedef Cpri-sec-state-et { + type enumeration { + enum "normal" { + value 0; + description + "Normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance"; + } + enum "ains" { + value 2; + description + "Automatic In Service"; + } + } + description + "Cpri sec state et"; + } + + typedef Cpri-derived-admin-state { + type enumeration { + enum "in-service" { + description + "In Service"; + } + enum "out-of-service" { + description + "Out of Service"; + } + enum "maintenance" { + description + "Maintenance"; + } + enum "ains" { + description + "Automatic In Service"; + } + } + description + "Cpri derived admin state"; + } + + typedef Cpri-state-et { + type enumeration { + enum "not-ready" { + value 0; + description + "Not Ready"; + } + enum "admin-down" { + value 1; + description + "Admin Down"; + } + enum "down" { + value 2; + description + "Down"; + } + enum "up" { + value 3; + description + "Up"; + } + enum "shutdown" { + value 4; + description + "Shutdown"; + } + enum "error-disable" { + value 5; + description + "Error Disable"; + } + enum "down-immediate" { + value 6; + description + "Down Immediate"; + } + enum "down-immediate-admin" { + value 7; + description + "Down Immediate Admin"; + } + enum "down-graceful" { + value 8; + description + "Down Graceful"; + } + enum "begin-shutdown" { + value 9; + description + "Begin Shutdown"; + } + enum "end-shutdown" { + value 10; + description + "End Shutdown"; + } + enum "begin-error-disable" { + value 11; + description + "Begin Error Disable"; + } + enum "end-error-disable" { + value 12; + description + "End Error Disable"; + } + enum "begin-down-graceful" { + value 13; + description + "Begin Down Graceful"; + } + enum "reset" { + value 14; + description + "Reset"; + } + enum "operational" { + value 15; + description + "Operational"; + } + enum "not-operational" { + value 16; + description + "Not Operational"; + } + enum "unknown" { + value 17; + description + "Unknown"; + } + enum "last" { + value 18; + description + "Last"; + } + } + description + "Cpri state et"; + } + + typedef Cpri-sync-mode { + type enumeration { + enum "slave" { + description + "Slave"; + } + enum "master" { + description + "Master"; + } + } + description + "CPRI synchronization mode"; + } + + typedef Cpri-line-rate-et { + type enumeration { + enum "none" { + description + "None"; + } + enum "option1-614mbps" { + description + "Rate 614.4Mbps"; + } + enum "option2-1228mbps" { + description + "Rate 1228.8Mbps"; + } + enum "option3-2457mbps" { + description + "Rate 2457.6Mbps"; + } + enum "option4-3072mbps" { + description + "Rate 3072Mbps"; + } + enum "option5-4915mbps" { + description + "Rate 4915.2Mbps"; + } + enum "option6-6144mbps" { + description + "Rate 6144Mbps"; + } + enum "option7-9830mbps" { + description + "Rate 9830.4Mbps"; + } + enum "option7a-8110mbps" { + description + "Rate 8110.08Mbps"; + } + enum "option8-10137mbps" { + description + "Rate 10137.6Mbps"; + } + enum "option9-12165mbps" { + description + "Rate 12165.12Mbps"; + } + enum "option10-24330mbps" { + description + "Rate 24330.24Mbps"; + } + } + description + "cpri line rate"; + } + + grouping CPRI-PORT-ROE-PARAMS { + description + "CPRI port ROE profile parameters"; + leaf profile-id { + type uint16; + description + "ROE profile Id"; + } + leaf flow-id { + type uint8; + description + "Flow Id"; + } + leaf source-mac { + type yang:mac-address; + description + "Source Mac address"; + } + leaf destination-mac { + type yang:mac-address; + description + "Destination Mac address"; + } + leaf order-info { + type uint32; + description + "Order Info"; + } + leaf mapper-type { + type uint8; + description + "Mapper Type"; + } + leaf encrypt { + type uint8; + description + "Encryption"; + } + leaf compress { + type uint8; + description + "Compress"; + } + leaf packet-len { + type uint16; + description + "Packet length in terms of CPRI basic frames"; + } + leaf accept-time-window { + type uint32; + description + "Accept Time Window"; + } + leaf sample-width { + type uint8; + description + "Sample Width"; + } + leaf num-of-containers { + type uint8; + description + "Number of Containers"; + } + leaf num-of-control-containers { + type uint8; + description + "Number of control containers"; + } + leaf num-fft { + type uint8; + description + "Number of FFT Objects"; + } + leaf num-prach { + type uint8; + description + "Number of PRACH"; + } + leaf retimer-buffer-size { + type uint32; + description + "Retimer Buffer Size"; + } + leaf idle-frame-size { + type uint32; + description + "Idle Frame Size"; + } + leaf idle-frame-threshold { + type uint32; + description + "Idle Frame Threshold"; + } + leaf presync-match-threshold { + type uint8; + description + "Presync Match Threshold- applicable in mapper + ,demapper profile"; + } + leaf resync-match-threshold { + type uint8; + description + "Resync Match Threshold- applicable in mapper + ,demapper profile"; + } + leaf resync-mismatch-threshold { + type uint8; + description + "Resync Mismatch Threshold- applicable in mapper + ,demapper profile"; + } + leaf sync-threshold { + type uint8; + description + "Sync Threshold- applicable only in demapper + profile"; + } + leaf drain-threshold { + type uint8; + description + "Drain Threshold- applicable only in demapper + profile"; + } + leaf presync-match-count { + type uint8; + description + "Presync Match Count- applicable only in demapper + profile"; + } + leaf resync-match-count { + type uint8; + description + "Resync Match Count- applicable only in demapper + profile"; + } + leaf resync-mismatch-count { + type uint8; + description + "Resync Mismatch Count- applicable only in + demapper profile"; + } + leaf hfn-sync-disable { + type boolean; + description + "HFN Sync disabled when set. Applicable only for + type-0 mapper config in non auto-neg CPRI port"; + } + leaf-list idle-frame-data { + type uint8; + description + "Idle Frame Data"; + } + } + + grouping CPRI-PORT-ROE-PROFILE { + description + "CPRI port ROE profile Info"; + container roe-mapper-profile-params { + description + "CPRI port's ROE Mapper Profile params"; + uses CPRI-PORT-ROE-PARAMS; + } + container roe-demapper-profile-params { + description + "CPRI port's ROE Mapper Profile params"; + uses CPRI-PORT-ROE-PARAMS; + } + leaf is-roe-configured { + type boolean; + description + "Is ROE profile configured?"; + } + } + + grouping ROE-PDV-STATS { + description + "ROE packet delay variation values"; + leaf minval { + type uint64; + description + "Minimun PDV value"; + } + leaf max-val { + type uint64; + description + "Maximun PDV value"; + } + leaf avg-val { + type uint64; + description + "Average PDV value"; + } + } + + grouping CPRI-PORT-ROE-STATS { + description + "CPRI port operational RoE stats"; + container pkt-dly-var-max { + description + "Packet delay variation"; + uses ROE-PDV-STATS; + } + leaf rx-frames { + type uint64; + description + "Received Frames"; + } + leaf rx-octets { + type uint64; + description + "Received Octets"; + } + leaf lost-frames-detected { + type uint64; + description + "Lost frames detected"; + } + leaf stray-frames-detected { + type uint64; + description + "Stray frames detected"; + } + leaf duplicate-frames-detected { + type uint64; + description + "Duplicate frames detected"; + } + leaf out-of-seq-frames-detected { + type uint64; + description + "Out of Sequence frames detected"; + } + leaf out-of-seq-frames-dropped { + type uint64; + description + "Out of Sequence frames dropped"; + } + leaf retimer-buffer-overrun { + type uint64; + description + "Retimer buffer overrun"; + } + leaf retimer-buffer-underrun { + type uint64; + description + "Retimer buffer underrun"; + } + leaf tx-frames { + type uint64; + description + "Transmitted Frames"; + } + leaf tx-octets { + type uint64; + description + "Transmitted Octets"; + } + leaf idle-frames-sent { + type uint64; + description + "Idle frames transmitted"; + } + leaf idle-octets-sent { + type uint64; + description + "Idle octets transmitted"; + } + leaf errored-length-packets { + type uint64; + description + "Errored packets"; + } + leaf kbyte-mismatch { + type uint64; + description + "K byte mismatch"; + } + leaf link-td-transitions { + type uint64; + description + "Link teardown transitions"; + } + leaf idle-frame-tca { + type uint64; + description + "Idle Frame Threshold Crossing Alarm"; + } + leaf receive-roe-lcv-count { + type uint64; + description + "RoE receive side LCV count"; + } + leaf receive-good-packets { + type uint64; + description + "RoE receive side good packets"; + } + } + + grouping CPRI-PORT-STATS { + description + "CPRI port operational stats"; + container los { + description + "Loss of signal"; + uses CPRI-ALARM-INFO; + } + container lof { + description + "Loss of frame"; + uses CPRI-ALARM-INFO; + } + container rai { + description + "Remote Alarm Indication"; + uses CPRI-ALARM-INFO; + } + container sdi { + description + "SAP Defect Indication"; + uses CPRI-ALARM-INFO; + } + container remote-los { + description + "Remote Loss of signal"; + uses CPRI-ALARM-INFO; + } + container remote-lof { + description + "Remote Loss of frame"; + uses CPRI-ALARM-INFO; + } + container remote-rai { + description + "Remote side Remote Alarm Indication"; + uses CPRI-ALARM-INFO; + } + container remote-sdi { + description + "Remote SAP Defect Indication"; + uses CPRI-ALARM-INFO; + } + container roe-idle-frame-threshold-exceed { + description + "RoE Idle Frame Threshold Exceed alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-config-mismatch { + description + "RoE Config Mismatch alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-remote-link-down { + description + "RoE Remote Link Down alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-jitter-buffer-underrun { + description + "RoE Jitter Buffer Underrun alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-mapper-internal { + description + "RoE Mapper Internal alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-demapper-internal { + description + "RoE DeMapper Internal alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-mapper-sync-loss { + description + "RoE Mapper Sync Loss alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-demapper-sync-loss { + description + "RoE Demapper Sync Loss alarm info"; + uses CPRI-ALARM-INFO; + } + container datapath-internal { + description + "Datapath Internal alarm info"; + uses CPRI-ALARM-INFO; + } + leaf state-changes { + type uint64; + description + "CPRI controller state change count"; + } + leaf rx-failure { + type uint64; + description + "Received Failures"; + } + leaf tx-failure { + type uint64; + description + "Transmitted Failures"; + } + leaf lcv-count { + type uint64; + description + "Line Coding Violation count"; + } + leaf rx-cpri-hyper-frames { + type uint64; + description + "Received CPRI hyper frames"; + } + leaf tx-cpri-hyper-frames { + type uint64; + description + "Transmitted CPRI hyper frames"; + } + leaf hfn-sync-event-cpri { + type uint64; + description + "CPRI HFN Sync Event. Not applicable when Type-0 + enhancement is disabled"; + } + } + + grouping CPRI-ALARM-INFO { + description + "CPRI Alarm info"; + leaf reporting-enabled { + type boolean; + description + "Is reporting enabled?"; + } + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf is-asserted { + type boolean; + description + "Is defect delared?"; + } + leaf count { + type uint64; + description + "Alarm count"; + } + } + + grouping CPRI-PORT-INFO { + description + "CPRI port operational info"; + container los { + description + "Loss of signal"; + uses CPRI-ALARM-INFO; + } + container lof { + description + "Loss of frame"; + uses CPRI-ALARM-INFO; + } + container rai { + description + "Remote Alarm Indication"; + uses CPRI-ALARM-INFO; + } + container sdi { + description + "SAP Defect Indication"; + uses CPRI-ALARM-INFO; + } + container remote-los { + description + "Remote Loss of signal"; + uses CPRI-ALARM-INFO; + } + container remote-lof { + description + "Remote Loss of frame"; + uses CPRI-ALARM-INFO; + } + container remote-rai { + description + "Remote side Remote Alarm Indication"; + uses CPRI-ALARM-INFO; + } + container remote-sdi { + description + "Remote SAP Defect Indication"; + uses CPRI-ALARM-INFO; + } + container roe-idle-frame-threshold-exceed { + description + "RoE Idle Frame Threshold Exceed alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-config-mismatch { + description + "RoE Config Mismatch alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-remote-link-down { + description + "RoE Remote Link Down alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-jitter-buffer-underrun { + description + "RoE Jitter Buffer Underrun alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-mapper-internal { + description + "RoE Mapper Internal alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-demapper-internal { + description + "RoE DeMapper Internal alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-mapper-sync-loss { + description + "RoE Mapper Sync Loss alarm info"; + uses CPRI-ALARM-INFO; + } + container roe-demapper-sync-loss { + description + "RoE Demapper Sync Loss alarm info"; + uses CPRI-ALARM-INFO; + } + container datapath-internal { + description + "Datapath Internal alarm info"; + uses CPRI-ALARM-INFO; + } + leaf negotiated-rate { + type Cpri-line-rate-et; + description + "Negotiated CPRI rate"; + } + leaf negotiation-list-size { + type uint32; + description + "Size of negotiation rate list"; + } + leaf synchronization-mode { + type Cpri-sync-mode; + description + "Synchronization Mode"; + } + leaf l1-startup-timer { + type uint32; + description + "L1 Startup Timer"; + } + leaf operational-state { + type Cpri-state-et; + description + "Port's IM state"; + } + leaf derived-admin-state { + type Cpri-derived-admin-state; + description + "Derived Admin State"; + } + leaf config-sec-state { + type Cpri-sec-state-et; + description + "Configured Sec Admin State"; + } + leaf inherited-sec-state { + type Cpri-sec-state-et; + description + "Inherited Sec Admin State"; + } + leaf loopback { + type Loopback-info; + description + "Loopback info"; + } + leaf last-clear-time { + type uint32; + description + "Time Duration Since Last Clear"; + } + leaf auto-neg-status { + type int8; + description + "Auto negotiation status"; + } + leaf auto-neg-fail-reason { + type string { + length "0..64"; + } + description + "Auto negotiation failure reason"; + } + leaf hfn-sync-time { + type int32; + units "millisecond"; + description + "High Frame Number sync time in milli seconds. + Value -1 refers to Not Applicable"; + } + leaf roe-sync-time { + type int32; + units "millisecond"; + description + "Radio-over-Ethernet sync time in milli seconds. + Value -1 refers to Not Applicable"; + } + leaf auto-neg-completion-time { + type int32; + units "millisecond"; + description + "Auto negotiation completion time in milli + seconds. Value -1 refers to Not Applicable"; + } + leaf is-roe-configured { + type boolean; + description + "Is ROE profile is attached to CPRI"; + } + leaf idle-frame-tca { + type boolean; + description + "Idle Frame Threshold Crossing Alarm"; + } + leaf pers-str-frm-det { + type boolean; + description + "Persistent Stray Frame Detected"; + } + leaf pers-lost-frm-det { + type boolean; + description + "Persistent Lost Frame Detected"; + } + leaf retimer-buf-overrun { + type boolean; + description + "Retimer buffer overrun"; + } + leaf retimer-buf-underrun { + type boolean; + description + "Retimer buffer underrun"; + } + leaf roe-pkt-len-in-use { + type int32; + units "byte"; + description + "ROE packet length in use in bytes"; + } + leaf-list supported-line-rate { + type Cpri-line-rate-et; + description + "Hardware supported CPRI rates"; + } + leaf-list configured-negotiation-rate { + type Cpri-line-rate-et; + description + "Configured negotiation rates"; + } + } + + grouping CPRI-PORT-DETAIL { + description + "CPRI port operational detail"; + container info { + description + "cpri port basic details"; + uses CPRI-PORT-INFO; + } + container stats { + description + "cpri statistics"; + uses CPRI-PORT-STATS; + } + container roe-stats { + description + "CPRI port's ROE statistics"; + uses CPRI-PORT-ROE-STATS; + } + container roe-profile-info { + description + "CPRI port's ROE Profile Info"; + uses CPRI-PORT-ROE-PROFILE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper.yang new file mode 100644 index 000000000..445172c0c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-cpri-oper.yang @@ -0,0 +1,122 @@ +module Cisco-IOS-XR-controller-cpri-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-cpri-oper"; + prefix controller-cpri-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-cpri-oper-sub1 { + revision-date 2021-08-09; + } + + 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 controller-cpri package operational data. + + This module contains definitions + for the following management objects: + cpri: CPRI operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-09 { + description + "Added RoE and datapath-internal alarms to CPRI port info and stats."; + semver:module-version "2.2.0"; + } + revision 2021-06-03 { + description + "Added leaf cpri-hfn-sync-event to container stats."; + semver:module-version "2.1.0"; + } + revision 2021-05-10 { + description + "Added leaf hfn-sync-disable to grouping CPRI-PORT-ROE-PARAMS + 2021-05-03 + Added mapper,demapper roe-profile parameters presync-match-threshold, resync-match-threshold, resync-mismatch-threshold, sync-threshold, drain-threshold, presync-match-count, resync-match-count, resync-mismatch-count. + 2021-04-30 + Added roe-pkt-len-in-use to container info. + 2020-11-04 + Added auto-neg-status, auto-neg-fail-reason, hfn-sync-time, roe-sync-time and auto-neg-completion-time to container info. Added rx-cpri-hyper-frames and tx-cpri-hyper-frames to container stats. + 2020-08-03 + Changed leaf packet-len type to uint16. Renamed leaf errored-packets to errored-length-packets. Added leaves receive-good-packets and receive-roe-lcv-count."; + semver:module-version "2.0.0"; + } + revision 2019-12-02 { + description + "Show command subtype added for CPRI controller"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cpri { + config false; + description + "CPRI operational data"; + container controllers { + description + "All CPRI controller operational data"; + list controller { + key "controller-name"; + description + "CPRI controller operational data"; + container detail { + description + "CPRI controller detailed data including ROE + stats"; + uses CPRI-PORT-DETAIL; + } + container stats { + description + "CPRI controller operational data statistics"; + uses CPRI-PORT-STATS; + } + container info { + description + "CPRI controller operational data"; + uses CPRI-PORT-INFO; + } + container roe-stats { + description + "ROE statistics w.r.t CPRI controller"; + uses CPRI-PORT-ROE-STATS; + } + container roe-profile { + description + "ROE profile params associated with CPRI + controller"; + uses CPRI-PORT-ROE-PROFILE; + } + leaf controller-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-cfg.yang new file mode 100644 index 000000000..27c365ff3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-cfg.yang @@ -0,0 +1,147 @@ +module Cisco-IOS-XR-controller-dfb-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-dfb-cfg"; + prefix controller-dfb-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-dfb package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-28 { + description + "dfb-tx-voa-attenuation datatype is changed to signed int32"; + semver:module-version "1.0.0"; + } + revision 2022-03-21 { + description + "Name of the enum ThresholdType is changed to DfbThresholdType"; + } + revision 2020-10-16 { + description + "New Cfg Model Added for Dfb Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dfb-threshold { + type enumeration { + enum "low" { + value 1; + description + "Low Threshold"; + } + enum "high" { + value 2; + description + "High Threshold"; + } + } + description + "Dfb threshold"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container dfb { + description + "Dfb controller configuration"; + container tx-thresholds { + description + "Configure TX threshold"; + list tx-threshold { + key "tx-threshold-type"; + description + "Configure transponder transmit power threshold"; + leaf tx-threshold-type { + type Dfb-threshold; + description + "Low or high tx threshold"; + } + leaf tx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm"; + } + } + } + container rx-thresholds { + description + "Configure RX threshold"; + list rx-threshold { + key "rx-threshold-type"; + description + "Configure transponder receive power threshold"; + leaf rx-threshold-type { + type Dfb-threshold; + description + "Low or high rx threshold"; + } + leaf rx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm)"; + } + } + } + leaf dfb-tx-voa-attenuation { + type int32 { + range "0..200"; + } + description + "Select Tx Voa Attenuation Level (in units of 0 + .1dB)"; + } + leaf dfb-transmit-power { + type int32 { + range "-190..50"; + } + description + "Select Power Level (in units of 0.1dBm)"; + } + leaf dfb-transmit-shutdown { + type boolean; + description + "Configure Dfb transmit laser shutdown"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper-sub1.yang new file mode 100644 index 000000000..ca78ba101 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper-sub1.yang @@ -0,0 +1,218 @@ +submodule Cisco-IOS-XR-controller-dfb-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-dfb-oper { + prefix Cisco-IOS-XR-controller-dfb-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-dfb package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-16 { + description + "New Oper Model Added for Dfb Controller"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-tas { + type enumeration { + enum "ots-tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ots-tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ots-tas-ui-is" { + value 2; + description + "In Service"; + } + enum "ots-tas-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ots tas"; + } + + typedef Ots-controller-state { + type enumeration { + enum "ots-state-up" { + value 0; + description + "Up"; + } + enum "ots-state-down" { + value 1; + description + "Down"; + } + enum "ots-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Ots controller state"; + } + + typedef Laser-state { + type enumeration { + enum "on" { + value 0; + description + "On"; + } + enum "off" { + value 1; + description + "Off"; + } + enum "unknown" { + value 2; + description + "Unknown"; + } + enum "apr" { + value 3; + description + "Apr"; + } + enum "na" { + value 4; + description + "N/A"; + } + } + description + "Laser state"; + } + + grouping OTS-ALARM-INFO { + description + "Optics Alarm Detail"; + leaf is-detected { + type boolean; + description + "is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping DFB-EDM-INFO { + description + "DFB controller operational information"; + container rx-los-p { + description + "RC LOS P"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX POWER FAIL LOW"; + uses OTS-ALARM-INFO; + } + leaf laser-state { + type Laser-state; + description + "Showing laser state.Either ON or OFF or unknown"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf controller-state { + type Ots-controller-state; + description + "Ots controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf transport-admin-state { + type Ots-tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf total-rx-power { + type int32; + description + "Total Receive Power for DFB in units of 0.01 dBm"; + } + leaf total-tx-power { + type int32; + description + "Total Transmit Power for DFB in units of 0.01 + dBm"; + } + leaf rx-voa-attenuation { + type int32; + description + "Rx Voa Attenuation in the units of 0.1dB"; + } + leaf tx-voa-attenuation { + type int32; + description + "Tx Voa Attenuation in the units of 0.1dB"; + } + leaf central-frequncy { + type uint32; + description + "frequency read from hw in the units of 0.01THz"; + } + leaf wavelength { + type uint32; + description + "Wavelength in unit of 0.01 nm"; + } + leaf rx-voa-attenuation-config-val { + type int32; + description + "RX VOA attenuation configured value in units of + 0.1dB"; + } + leaf tx-voa-attenuation-config-val { + type int32; + description + "TX VOA attenuation configured value in units of + 0.1dB"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper.yang new file mode 100644 index 000000000..d8ab81cfe --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-dfb-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-controller-dfb-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-dfb-oper"; + prefix controller-dfb-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-dfb-oper-sub1 { + revision-date 2020-10-16; + } + + 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 controller-dfb package operational data. + + This module contains definitions + for the following management objects: + dfb-oper: Dfb operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-16 { + description + "New Oper Model Added for Dfb Controller"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dfb-oper { + config false; + description + "Dfb operational data"; + container dfb-ports { + description + "All Dfb Port operational data"; + list dfb-port { + key "name"; + description + "Dfb operational data"; + container dfb-info { + description + "Dfb operational data"; + uses DFB-EDM-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-cfg.yang new file mode 100644 index 000000000..a311db20f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-cfg.yang @@ -0,0 +1,361 @@ +module Cisco-IOS-XR-controller-fc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-fc-cfg"; + prefix controller-fc-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-fc package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-14 { + description + "Leaves prbs-framing, prbs-direction, prbs-err-inject and user-pattern made mandatory + 2022-02-07 + container extended-loopbacks added + 2021-12-15 + Added support for user-defined PRBS pattern + 2021-08-22 + Fibre Channel controller prbs configurations added"; + semver:module-version "2.0.0"; + } + revision 2021-06-20 { + description + "sf-ber-threshold and sd-ber-threshold config support added"; + semver:module-version "1.0.0"; + } + revision 2020-03-22 { + description + "Fibre Channel controller configurations added"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fibre-chan-prbs-err-inject { + type enumeration { + enum "none" { + value 0; + description + "No error-inject config"; + } + enum "single" { + value 1; + description + "PRBS single error injection"; + } + enum "continuous" { + value 2; + description + "PRBS continuous error injection"; + } + } + description + "Fibre chan prbs err inject"; + } + + typedef Fibre-chan-prbs-mode { + type enumeration { + enum "source" { + value 1; + description + "PRBS source mode"; + } + enum "sink" { + value 2; + description + "PRBS sink mode"; + } + enum "source-sink" { + value 3; + description + "PRBS source-sink mode"; + } + } + description + "Fibre chan prbs mode"; + } + + typedef Fibre-chan-prbs-framing { + type enumeration { + enum "none" { + value 0; + description + "No framing config"; + } + enum "frame-d" { + value 1; + description + "PRBS framed"; + } + enum "unframed" { + value 2; + description + "PRBS unframed"; + } + } + description + "Fibre chan prbs framing"; + } + + typedef Fibre-chan-prbs-pattern { + type enumeration { + enum "pn31" { + value 1; + description + "PRBS pattern pn31"; + } + enum "pn23" { + value 2; + description + "PRBS pattern pn23"; + } + enum "pn15" { + value 3; + description + "PRBS pattern pn15"; + } + enum "pn11" { + value 4; + description + "PRBS pattern pn11"; + } + enum "pn9" { + value 5; + description + "PRBS pattern pn9"; + } + enum "pn7" { + value 6; + description + "PRBS pattern pn7"; + } + enum "user-defined" { + value 7; + description + "user-defined pattern(64-bit hex value)"; + } + } + description + "Fibre chan prbs pattern"; + } + + typedef Fibre-chan-extended-loopback { + type enumeration { + enum "line" { + value 1; + description + "Line loopback"; + } + enum "internal" { + value 2; + description + "Internal loopback"; + } + } + description + "Fibre chan extended loopback"; + } + + typedef Fibre-channel-fec { + type enumeration { + enum "none" { + value 1; + description + "Disable any FEC enabled on the interface"; + } + enum "standard" { + value 2; + description + "Enable standard FEC"; + } + } + description + "Fibre channel fec"; + } + + typedef Fibre-chan-prbs-direction { + type enumeration { + enum "none" { + value 0; + description + "No direction config"; + } + enum "line" { + value 1; + description + "PRBS line"; + } + enum "system" { + value 2; + description + "PRBS system"; + } + } + description + "Fibre chan prbs direction"; + } + + typedef Fibre-channel-loopback { + type enumeration { + enum "line" { + value 1; + description + "Line loopback"; + } + enum "internal" { + value 2; + description + "Internal loopback"; + } + } + description + "Fibre channel loopback"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container fibre-channel { + description + "Fibre Channel specific controller configuration"; + container extended-loopbacks { + description + "Configure Extended loopback (diagnostics)"; + list extended-loopback { + key "level"; + description + "Configure extended loopback mode"; + leaf level { + type uint32 { + range "1..3"; + } + description + "Level"; + } + leaf loopback { + type Fibre-chan-extended-loopback; + mandatory true; + description + "Loopback"; + } + } + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure Pseudo Random Binary Sequence"; + leaf prbs-mode { + type Fibre-chan-prbs-mode; + mandatory true; + description + "PRBS Mode"; + } + leaf prbs-pattern { + type Fibre-chan-prbs-pattern; + mandatory true; + description + "PRBS Pattern"; + } + leaf prbs-framing { + type Fibre-chan-prbs-framing; + mandatory true; + description + "PRBS Framing"; + } + leaf prbs-direction { + type Fibre-chan-prbs-direction; + mandatory true; + description + "PRBS Direction"; + } + leaf prbs-err-inject { + type Fibre-chan-prbs-err-inject; + mandatory true; + description + "PRBS Error Injection"; + } + leaf user-pattern { + type xr:Hex-long-integer; + mandatory true; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + leaf forward-error-correction { + type Fibre-channel-fec; + description + "Forward Error Correction"; + } + leaf perf-mon-disable { + type empty; + description + "Configure Performance Monitoring "; + } + leaf holdoff-time { + type uint32 { + range "0..3000"; + } + description + "Configure Holdoff Time"; + } + leaf signal-failure-ber-threshold { + type uint32 { + range "3..9"; + } + description + "Configure Signal Failure BER threshold"; + } + leaf signal-degrade-ber-threshold { + type uint32 { + range "6..12"; + } + description + "Configure Signal Degrade BER threshold"; + } + leaf laser-squelch { + type empty; + description + "Configure Laser-Squelch"; + } + leaf loopback { + type Fibre-channel-loopback; + description + "Configure loopback mode"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper-sub1.yang new file mode 100644 index 000000000..89a732616 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper-sub1.yang @@ -0,0 +1,673 @@ +submodule Cisco-IOS-XR-controller-fc-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-fc-oper { + prefix Cisco-IOS-XR-controller-fc-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-fc package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-10 { + description + "Added LED state field and made BER threshold as optional. + 2021-10-10 + Added new container FC-CTLR-AINS-INFO under FC-CTLR-AINS-INFO. + 2021-08-22 + fc_ctrlr_prbs_framing,fc_ctrlr_prbs_dir andfc_ctrlr_prbs_err_inject"; + semver:module-version "2.0.0"; + } + revision 2021-06-30 { + description + "sf-ber-threshold and sd-ber-threshold added in fc_ctrlr_port_info bag"; + semver:module-version "1.0.0"; + } + revision 2021-04-20 { + description + "Fibre Channel controller oper model added"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fc-ctrlr-prbs-err-inject { + type enumeration { + enum "none" { + description + "None"; + } + enum "single" { + description + "Single"; + } + enum "continuous" { + description + "Continuous"; + } + } + description + "Fc ctrlr prbs err inject"; + } + + typedef Fc-ctrlr-prbs-dir { + type enumeration { + enum "none" { + description + "None"; + } + enum "line" { + description + "Line"; + } + enum "system" { + description + "System"; + } + } + description + "Fc ctrlr prbs dir"; + } + + typedef Fc-ctrlr-prbs-framing { + type enumeration { + enum "none" { + description + "Framing None"; + } + enum "framed" { + description + "Framed"; + } + enum "unframed" { + description + "Unframed"; + } + } + description + "Fc ctrlr prbs framing"; + } + + typedef Fc-ctrlr-prbs-status { + type enumeration { + enum "locked" { + value 0; + description + "Locked"; + } + enum "unlocked" { + value 1; + description + "Unlocked"; + } + enum "not-applicable" { + value 2; + description + "Not Applicable"; + } + } + description + "Fc ctrlr prbs status"; + } + + typedef Fc-ctrlr-prbs-pattern { + type enumeration { + enum "pn-none" { + value 0; + description + "PNNONE"; + } + enum "pn31" { + value 1; + description + "PN31"; + } + enum "pn23" { + value 2; + description + "PN23"; + } + enum "pn15" { + value 3; + description + "PN15"; + } + enum "pn11" { + value 4; + description + "PN11"; + } + enum "pn9" { + value 5; + description + "PN9"; + } + enum "pn7" { + value 6; + description + "PN7"; + } + enum "user-defined" { + value 7; + description + "User Defined Pattern"; + } + } + description + "Fc ctrlr prbs pattern"; + } + + typedef Fc-ctrlr-prbs-mode { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "source" { + value 1; + description + "Source"; + } + enum "sink" { + value 2; + description + "Sink"; + } + enum "source-sink" { + value 3; + description + "Source Sink"; + } + } + description + "Fc ctrlr prbs mode"; + } + + typedef Fc-ctrlr-prbs-test { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Fc ctrlr prbs test"; + } + + typedef Fc-ains-status { + type enumeration { + enum "ains-soak-status-none" { + description + "AINS Soak timer not running"; + } + enum "ains-soak-status-pending" { + description + "AINS Soak timer pending"; + } + enum "ains-soak-status-running" { + description + "AINS Soak timer running"; + } + } + description + "Fc ains status"; + } + + typedef Fc-fec { + type enumeration { + enum "none" { + description + "None"; + } + enum "not-configured" { + description + "Not Configured"; + } + enum "standard" { + description + "Standard"; + } + enum "disabled" { + description + "Disabled"; + } + } + description + "FEC Type"; + } + + typedef Fc-loopback-info { + type enumeration { + enum "none" { + description + "None"; + } + enum "line" { + description + "LoopBack Line "; + } + enum "loop-back-internal" { + description + "LoopBack Internal"; + } + } + description + "loopback info"; + } + + typedef Fc-led-state { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green On"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow On"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red On"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "not-applicable" { + value 7; + description + "Not Applicable"; + } + } + description + "Fc led state"; + } + + typedef Fc-state-et { + type enumeration { + enum "not-ready" { + value 0; + description + "Not Ready"; + } + enum "admin-down" { + value 1; + description + "Admin Down"; + } + enum "down" { + value 2; + description + "Down"; + } + enum "up" { + value 3; + description + "Up"; + } + enum "shutdown" { + value 4; + description + "Shutdown"; + } + enum "error-disable" { + value 5; + description + "Error Disable"; + } + enum "down-immediate" { + value 6; + description + "Down Immediate"; + } + enum "down-immediate-admin" { + value 7; + description + "Down Immediate Admin"; + } + enum "down-graceful" { + value 8; + description + "Down Graceful"; + } + enum "begin-shutdown" { + value 9; + description + "Begin Shutdown"; + } + enum "end-shutdown" { + value 10; + description + "End Shutdown"; + } + enum "begin-error-disable" { + value 11; + description + "Begin Error Disable"; + } + enum "end-error-disable" { + value 12; + description + "End Error Disable"; + } + enum "begin-down-graceful" { + value 13; + description + "Begin Down Graceful"; + } + enum "reset" { + value 14; + description + "Reset"; + } + enum "operational" { + value 15; + description + "Operational"; + } + enum "not-operational" { + value 16; + description + "Not Operational"; + } + enum "unknown" { + value 17; + description + "Unknown"; + } + enum "last" { + value 18; + description + "Last"; + } + } + description + "Fc state et"; + } + + typedef Fc-sa-state { + type enumeration { + enum "normal" { + description + "Normal"; + } + enum "maintenance" { + description + "Maintenance"; + } + enum "ains" { + description + "AINS"; + } + } + description + "Secondary admin state"; + } + + grouping FC-CTRLR-PRBS-INFO { + description + "PRBS"; + leaf test { + type Fc-ctrlr-prbs-test; + description + "PRBS test"; + } + leaf mode { + type Fc-ctrlr-prbs-mode; + description + "PRBS mode"; + } + leaf pattern { + type Fc-ctrlr-prbs-pattern; + description + "PRBS pattern"; + } + leaf status { + type Fc-ctrlr-prbs-status; + description + "PRBS status"; + } + leaf framing { + type Fc-ctrlr-prbs-framing; + description + "PRBS framing"; + } + leaf direction { + type Fc-ctrlr-prbs-dir; + description + "PRBS direction"; + } + leaf err-inject { + type Fc-ctrlr-prbs-err-inject; + description + "PRBS error injection"; + } + leaf user-pattern { + type uint64; + description + "PRBS user pattern configured"; + } + } + + grouping FC-EXTENDED-LOOPBACK-TYPE { + description + "FC EXTENDED LOOPBACK TYPE"; + leaf level { + type uint32; + description + "Level"; + } + leaf loopback { + type Fc-loopback-info; + description + "Port operational loopback"; + } + } + + grouping FC-CTLR-AINS-INFO { + description + "FC CTLR AINS INFO"; + leaf ains-status { + type Fc-ains-status; + description + "AINS Soak status"; + } + leaf total-duration { + type uint32; + units "minute"; + description + "Total duration (minutes) of AINS soak timer"; + } + leaf remaining-duration { + type uint32; + units "second"; + description + "Remaining duration (seconds) of AINS soak timer"; + } + } + + grouping FC-OPER-ALARMS { + description + "FC alarms structure"; + leaf los { + type boolean; + description + "Loss of signal Alarm"; + } + leaf local-fault { + type boolean; + description + "Local Fault Alarm"; + } + leaf remote-fault { + type boolean; + description + "Remote Fault Alarm"; + } + leaf pcs-error { + type boolean; + description + "PCS Error"; + } + leaf high-ber { + type boolean; + description + "High BER Error Alarm"; + } + leaf syncloss { + type boolean; + description + "Loss of synchronization Alarm"; + } + leaf nos { + type boolean; + description + "Not-Operational primitive Sequence Alarm"; + } + leaf squelch { + type boolean; + description + "Squelch Alarm"; + } + } + + grouping FC-BER-THRESHOLDS { + description + "FC BER THRESHOLDS"; + leaf signal-degrade-ber-threshold { + type uint32; + description + "Signal Degrade BER Threshold"; + } + leaf signal-failure-ber-threshold { + type uint32; + description + "Signal Failure BER Threshold"; + } + } + + grouping FC-CTRLR-PORT-INFO { + description + "FC port operational info"; + container ber-thresholds { + description + "BER thresholds"; + uses FC-BER-THRESHOLDS; + } + container current-alarms { + description + "Current Alarms info"; + uses FC-OPER-ALARMS; + } + container previous-alarms { + description + "Previous Alarms info"; + uses FC-OPER-ALARMS; + } + container ains-info { + description + "AINS information "; + uses FC-CTLR-AINS-INFO; + } + leaf secondary-admin-state { + type Fc-sa-state; + description + "Secondary Admin State"; + } + leaf operational-state { + type Fc-state-et; + description + "Port's IM state"; + } + leaf led-state { + type Fc-led-state; + description + "LED state"; + } + leaf loopback { + type Fc-loopback-info; + description + "Loopback info"; + } + leaf perf-mon-disabled { + type boolean; + description + "Perf mon disabled"; + } + leaf fec { + type Fc-fec; + description + "FEC type"; + } + leaf fec-method { + type string { + length "0..64"; + } + description + "FEC method"; + } + leaf laser-squelch-enabled { + type boolean; + description + "Laser squelch enabled"; + } + leaf holdoff-time { + type uint32; + description + "Hold off Time"; + } + list extended-loopback { + description + "Extended Loopback info"; + uses FC-EXTENDED-LOOPBACK-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper.yang new file mode 100644 index 000000000..6689d08d2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-fc-oper.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-controller-fc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-fc-oper"; + prefix controller-fc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-fc-oper-sub1 { + revision-date 2021-11-10; + } + + 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 controller-fc package operational data. + + This module contains definitions + for the following management objects: + fibre-channel: Fiber Channel Controller operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-10 { + description + "Added LED state field and made BER threshold as optional. + 2021-10-10 + Added new container FC-CTLR-AINS-INFO under FC-CTLR-AINS-INFO. + 2021-08-22 + fc_ctrlr_prbs_framing,fc_ctrlr_prbs_dir andfc_ctrlr_prbs_err_inject"; + semver:module-version "2.0.0"; + } + revision 2021-06-30 { + description + "sf-ber-threshold and sd-ber-threshold added in fc_ctrlr_port_info bag"; + semver:module-version "1.0.0"; + } + revision 2021-04-20 { + description + "Fibre Channel controller oper model added"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fibre-channel { + config false; + description + "Fiber Channel Controller operational data"; + container fc-controllers { + description + "List of FC controllers"; + list fc-controller { + key "controller-name"; + description + "Fibre Channel controller"; + container fc-controller-info { + description + "Port info of Fibre Channel controller"; + uses FC-CTRLR-PORT-INFO; + } + container prbs-info { + description + "PRBS info of Fibre Channel controller"; + uses FC-CTRLR-PRBS-INFO; + } + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1.yang new file mode 100644 index 000000000..ddf0a13e4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1.yang @@ -0,0 +1,321 @@ +submodule Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-ncs1001-ots-och-oper { + prefix Cisco-IOS-XR-controller-ncs1001-ots-och-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-ncs1001-ots-och package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-24 { + description + "leaves receive-power, transmit-power are removed and receive-power-dbm, transmit-power-dbm are modified to receive-power, transmit-power in OTS-EDM-LANE-DATA group"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ta-state { + type enumeration { + enum "ta-state-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ta-state-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ta-state-ui-is" { + value 2; + description + "In Service"; + } + enum "ta-state-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ta state"; + } + + typedef Controller-state { + type enumeration { + enum "state-up" { + value 0; + description + "Up"; + } + enum "state-down" { + value 1; + description + "Down"; + } + enum "state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Controller state"; + } + + typedef Ots-port-status { + type enumeration { + enum "active" { + value 0; + description + "Active"; + } + enum "standby" { + value 1; + description + "Standby"; + } + } + description + "Ots port status"; + } + + typedef Ots-laser-state { + type enumeration { + enum "on" { + value 0; + description + "On"; + } + enum "off" { + value 1; + description + "Off"; + } + enum "unknown" { + value 2; + description + "Unknown"; + } + enum "apr" { + value 3; + description + "Apr"; + } + enum "na" { + value 4; + description + "N/A"; + } + } + description + "Ots laser state"; + } + + typedef Ots-port { + type enumeration { + enum "com" { + value 0; + description + "Com"; + } + enum "line" { + value 1; + description + "Line"; + } + enum "osc" { + value 2; + description + "Osc"; + } + enum "com-check" { + value 3; + description + "Com Check"; + } + enum "work" { + value 4; + description + "Working"; + } + enum "prot" { + value 5; + description + "Protected"; + } + } + description + "Ots port"; + } + + grouping ALARM-DETAIL { + description + "Alarm Detail"; + leaf is-detected { + type boolean; + description + "Flag indicating if defect is detected"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OTS-OCH-EDM-ALARM-INFO { + description + "Ots-Och Alarm Information"; + container low-tx-power { + description + "Low Tx Power in units of 0.1 dBm"; + uses ALARM-DETAIL; + } + container low-rx-power { + description + "Low Rx Power in units of 0.1 dBm"; + uses ALARM-DETAIL; + } + } + + grouping OTS-EDM-LANE-DATA { + description + "Grey lane data"; + leaf laser-bias-current-milli-amps { + type uint32; + description + "Laser Bias Current in units of 0.01mA"; + } + leaf laser-bias-current-percent { + type uint32; + units "percentage"; + description + "Laser Bias Current in units of 0.01 percentage"; + } + leaf receive-power { + type int32; + description + "Transponder receive power in the units of 0 + .01dBm"; + } + leaf transmit-power { + type int32; + description + "Transmit power in the units of 0.01dBm"; + } + } + + grouping OTS-OCH-EDM-INFO { + description + "Ots-Och transponder information"; + container lane-data { + description + "Lane information"; + uses OTS-EDM-LANE-DATA; + } + container ots-och-alarm-info { + description + "Ots-Och Alarm information"; + uses OTS-OCH-EDM-ALARM-INFO; + } + leaf port-type { + type Ots-port; + description + "Port type information"; + } + leaf laser-state { + type Ots-laser-state; + description + "Laser State information"; + } + leaf port-status { + type Ots-port-status; + description + "Port status information"; + } + leaf channel-width { + type uint32; + description + "Channel Width (in units of GHz)"; + } + leaf channel-central-freq { + type uint64; + description + "Channel Central Frequency"; + } + leaf rx-psd { + type string; + description + "Received Power spectral density in microwatts + per megahertz, uW/MHz"; + } + leaf tx-psd { + type string; + description + "Transmit Power spectral density in microwatts + per megahertz, uW/MHz"; + } + leaf controller-state { + type Controller-state; + description + "Ots-Och controller state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf transport-admin-state { + type Ta-state; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-low-threshold { + type int32; + description + "Rx Low threshold value in units of 0.1dBm"; + } + leaf tx-low-threshold { + type int32; + description + "Tx Low threshold value in units of 0.1dBm"; + } + leaf rx-power-th-configurable { + type boolean; + description + "Is Rx Low Threshold Configurable"; + } + leaf tx-power-th-configurable { + type boolean; + description + "Is Tx Low Threshold Configurable"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper.yang new file mode 100644 index 000000000..eb2997180 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-och-oper.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-controller-ncs1001-ots-och-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ncs1001-ots-och-oper"; + prefix controller-ncs1001-ots-och-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-ncs1001-ots-och-oper-sub1 { + revision-date 2022-11-24; + } + + 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 controller-ncs1001-ots-och package operational data. + + This module contains definitions + for the following management objects: + ots-och-oper: OTS-OCH operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-24 { + description + "leaves receive-power, transmit-power are removed and receive-power-dbm, transmit-power-dbm are modified to receive-power, transmit-power in OTS-EDM-LANE-DATA group"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ots-och-oper { + config false; + description + "OTS-OCH operational data"; + container ots-och-ports { + description + "Port operational data for all OTS-OCH + controllers"; + list ots-och-port { + key "name"; + description + "OTS-OCH controller operational data"; + container ots-och-info { + description + "OTS-OCH operational data"; + uses OTS-OCH-EDM-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1.yang new file mode 100644 index 000000000..27541626b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1.yang @@ -0,0 +1,650 @@ +submodule Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-ncs1001-ots-oper { + prefix Cisco-IOS-XR-controller-ncs1001-ots-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-ncs1001-ots package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-24 { + description + "leaves receive-power, transmit-power are removed and receive-power-dbm, transmit-power-dbm are modified to receive-power, transmit-power in OTS-EDM-LANE-DATA group"; + semver:module-version "1.0.0"; + } + revision 2022-11-23 { + description + "enum names changed in ots_legacy_ui bag"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Amplifier-control-mode { + type enumeration { + enum "automatic" { + value 1; + description + "Automatic"; + } + enum "manual" { + value 2; + description + "Manual"; + } + } + description + "Amplifier control mode"; + } + + typedef Ta-state { + type enumeration { + enum "ta-state-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ta-state-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ta-state-ui-is" { + value 2; + description + "In Service"; + } + enum "ta-state-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ta state"; + } + + typedef Controller-state { + type enumeration { + enum "state-up" { + value 0; + description + "Up"; + } + enum "state-down" { + value 1; + description + "Down"; + } + enum "state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Controller state"; + } + + typedef Ots-laser-state { + type enumeration { + enum "on" { + value 0; + description + "On"; + } + enum "off" { + value 1; + description + "Off"; + } + enum "unknown" { + value 2; + description + "Unknown"; + } + enum "apr" { + value 3; + description + "Apr"; + } + enum "na" { + value 4; + description + "N/A"; + } + } + description + "Ots laser state"; + } + + typedef Ots-amplifier-safety-control-mode { + type enumeration { + enum "amplifier-safety-mode-invalid" { + value 0; + description + "Invalid"; + } + enum "amplifier-safety-mode-auto" { + value 1; + description + "auto"; + } + enum "amplifier-safety-mode-disabled" { + value 2; + description + "disabled"; + } + } + description + "Ots amplifier safety control mode"; + } + + typedef Ots-amplifier-gain-range { + type enumeration { + enum "amplifier-gain-range-invalid" { + value 0; + description + "Invalid"; + } + enum "amplifier-gain-range-normal" { + value 1; + description + "Normal"; + } + enum "amplifier-gain-range-ext-end-ed" { + value 2; + description + "Extended"; + } + } + description + "Ots amplifier gain range"; + } + + typedef Ots-port-status { + type enumeration { + enum "active" { + value 0; + description + "Active"; + } + enum "standby" { + value 1; + description + "Standby"; + } + } + description + "Ots port status"; + } + + typedef Ots-port { + type enumeration { + enum "com" { + value 0; + description + "Com"; + } + enum "line" { + value 1; + description + "Line"; + } + enum "osc" { + value 2; + description + "Osc"; + } + enum "com-check" { + value 3; + description + "Com Check"; + } + enum "work" { + value 4; + description + "Working"; + } + enum "prot" { + value 5; + description + "Protected"; + } + } + description + "Ots port"; + } + + grouping OTS-EDM-SPECTRUM-POWER-INFO { + description + "OTS EDM SPECTRUM POWER INFO"; + leaf slice-num { + type uint32; + description + "spectrum slice number"; + } + leaf lower-frequency { + type uint64; + description + "Lower frequency of the specified PSD (in units + of GHz)"; + } + leaf upper-frequency { + type uint64; + description + "Upper frequency of the specified PSD (in units + of GHz)"; + } + leaf rx-power { + type int32; + description + "Received Power in multiple of 100, in dBm"; + } + leaf tx-power { + type int32; + description + "Transmit Power in multiple of 100, in dBm"; + } + leaf rx-psd { + type string; + description + "Received Power spectral density in microwatts + per megahertz, uW/MHz"; + } + leaf tx-psd { + type string; + description + "Transmit Power spectral density in microwatts + per megahertz, uW/MHz"; + } + } + + grouping OTS-EDM-SPECTRUM-INFO { + description + "power information of slices in optical spectrum"; + leaf total-spectrum-slice-count { + type uint32; + description + "Total number of slices in Spectrum"; + } + leaf spectrum-slice-spacing { + type uint32; + description + "Spacing between spectrum slices (in units of + GHz)"; + } + leaf first-slice-wavelength { + type string; + description + "Wavelength of first slice (in units of nm)"; + } + list spectrum-slice-power-info { + description + "Power information of spectrum slice info"; + uses OTS-EDM-SPECTRUM-POWER-INFO; + } + } + + grouping ALARM-DETAIL { + description + "Alarm Detail"; + leaf is-detected { + type boolean; + description + "Flag indicating if defect is detected"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OTS-EDM-ALARM-INFO { + description + "Ots Alarm Information"; + container low-tx-power { + description + "Low Tx Power in units of 0.1 dBm"; + uses ALARM-DETAIL; + } + container low-rx-power { + description + "Low Rx Power in units of 0.1 dBm"; + uses ALARM-DETAIL; + } + container rx-los-p { + description + "Rx LOS_P"; + uses ALARM-DETAIL; + } + container rx-loc { + description + "Rx LOC"; + uses ALARM-DETAIL; + } + container ampli-gain-deg-low { + description + "Ampli Gain Deg Low"; + uses ALARM-DETAIL; + } + container ampli-gain-deg-high { + description + "Ampli Gain Deg High"; + uses ALARM-DETAIL; + } + container auto-laser-shut { + description + "Auto Laser Shut"; + uses ALARM-DETAIL; + } + container auto-power-red { + description + "Auto Power Red"; + uses ALARM-DETAIL; + } + container auto-ampli-ctrl-disabled { + description + "Auto Ampli Ctrl Disabled"; + uses ALARM-DETAIL; + } + container auto-ampli-ctrl-config-mismatch { + description + "Auto Ampli Ctrl Config Mismatch"; + uses ALARM-DETAIL; + } + container switch-to-protect { + description + "Switch To Protect"; + uses ALARM-DETAIL; + } + container auto-ampli-ctrl-running { + description + "Auto Ampli Ctrl Running"; + uses ALARM-DETAIL; + } + } + + grouping OTS-EDM-LANE-DATA { + description + "Grey lane data"; + leaf laser-bias-current-milli-amps { + type uint32; + description + "Laser Bias Current in units of 0.01mA"; + } + leaf laser-bias-current-percent { + type uint32; + units "percentage"; + description + "Laser Bias Current in units of 0.01 percentage"; + } + leaf receive-power { + type int32; + description + "Transponder receive power in the units of 0 + .01dBm"; + } + leaf transmit-power { + type int32; + description + "Transmit power in the units of 0.01dBm"; + } + } + + grouping OTS-EDM-INFO { + description + "Ots transponder information"; + container lane-data { + description + "Lane information"; + uses OTS-EDM-LANE-DATA; + } + container ots-alarm-info { + description + "Ots Alarm Information"; + uses OTS-EDM-ALARM-INFO; + } + leaf port-type { + type Ots-port; + description + "Port type information"; + } + leaf total-rx-power { + type int32; + description + "Total Receive Power for Multi-lane optics in + units of 0.01 dBm"; + } + leaf total-tx-power { + type int32; + description + "Total Transmit Power for Multi-Lane Optics in + units of 0.01 dBm"; + } + leaf rx-voa-attenuation { + type int32; + description + "Rx Voa Attenuation in the units of 0.01dB"; + } + leaf tx-voa-attenuation { + type int32; + description + "Tx Voa Attenuation in the units of 0.01dB"; + } + leaf rx-low-threshold-current { + type int32; + description + "Rx Low threshold actual value in units of 0.1dBm"; + } + leaf wait-to-restore { + type uint32; + units "second"; + description + "elapse time to trigger psm revert in units of + seconds"; + } + leaf ampli-tilt { + type int32; + description + "Ampli Tilt in the units of 0.01dBm"; + } + leaf ampli-gain { + type int32; + description + "Ampli Gain in the units of 0.01dBm"; + } + leaf port-status { + type Ots-port-status; + description + "Port status information"; + } + leaf tx-enable { + type boolean; + description + "TX Enable"; + } + leaf rx-enable { + type boolean; + description + "RX Enable"; + } + leaf ampli-gain-range { + type Ots-amplifier-gain-range; + description + "Ampli gain range"; + } + leaf osri { + type boolean; + description + "Optical safety remote interlock"; + } + leaf safety-control-mode { + type Ots-amplifier-safety-control-mode; + description + "Safety control mode"; + } + leaf rx-span-loss { + type int32; + description + "RX Span Loss in units of 0.01 dB"; + } + leaf tx-span-loss { + type int32; + description + "TX Span Loss in units of 0.01 dB"; + } + leaf laser-state { + type Ots-laser-state; + description + "Showing laser State."; + } + leaf back-reflection { + type int32; + description + "Back Reflected Transmit power in units of 0.1dBm"; + } + leaf controller-state { + type Controller-state; + description + "Ots controller state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf transport-admin-state { + type Ta-state; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-low-threshold { + type int32; + description + "Rx Low threshold value in units of 0.1dBm"; + } + leaf tx-low-threshold { + type int32; + description + "Tx Low threshold value in units of 0.1dBm"; + } + leaf rx-power-th-configurable { + type boolean; + description + "Is Rx Low Threshold Configurable"; + } + leaf tx-power-th-configurable { + type boolean; + description + "Is Tx Low Threshold Configurable"; + } + leaf rx-voa-attenuation-config-val { + type int32; + description + "RX VOA attenuation configured value in units of + 0.01dB"; + } + leaf tx-voa-attenuation-config-val { + type int32; + description + "TX VOA attenuation configured value in units of + 0.01dB"; + } + leaf ampli-gain-config-val { + type int32; + description + "Ampli gain configured value in units of 0.1dB"; + } + leaf ampli-tilt-config-val { + type int32; + description + "Ampli tilt configured value in units of 0.1dB"; + } + leaf ampli-channel-power-config-val { + type int32; + description + "Ampli channel power configured value in units of + 0.1dBm"; + } + leaf channel-power-max-delta-config-val { + type int32; + description + "Channel power max delta configured value in + units of 0.1 dBm"; + } + leaf ampli-channel-psd-config-val { + type int32; + description + "Ampli channel psd configured value in units of 0 + .001 nW/MHz"; + } + leaf rx-low-th-psd-config-val { + type int32; + description + "Rx Low threshold psd value in units of 0.001 + nW/MHz"; + } + leaf ampli-control-mode-config-val { + type Amplifier-control-mode; + description + "Amplifier Control Mode configured value"; + } + leaf ampli-gain-range-config-val { + type Ots-amplifier-gain-range; + description + "Amplifier Gain Range configured value"; + } + leaf safety-control-mode-config-val { + type Ots-amplifier-safety-control-mode; + description + "Amplifier Safety Control Mode configured value"; + } + leaf osri-config-val { + type boolean; + description + "Is Osri Configured Value"; + } + leaf tx-config-val { + type boolean; + description + "TX Configured Value is supported"; + } + leaf rx-config-val { + type boolean; + description + "RX Configured Value is supported"; + } + leaf rx-thr-fail-low-delta-val { + type int32; + description + "Rx Low Threshold Delta Configured value (in + units of dBm)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper.yang new file mode 100644 index 000000000..ec26b5017 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ncs1001-ots-oper.yang @@ -0,0 +1,85 @@ +module Cisco-IOS-XR-controller-ncs1001-ots-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ncs1001-ots-oper"; + prefix controller-ncs1001-ots-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-ncs1001-ots-oper-sub1 { + revision-date 2022-11-24; + } + + 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 controller-ncs1001-ots package operational data. + + This module contains definitions + for the following management objects: + ots-oper: OTS operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-24 { + description + "leaves receive-power, transmit-power are removed and receive-power-dbm, transmit-power-dbm are modified to receive-power, transmit-power in OTS-EDM-LANE-DATA group"; + semver:module-version "1.0.0"; + } + revision 2022-11-23 { + description + "enum names changed in ots_legacy_ui bag"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ots-oper { + config false; + description + "OTS operational data"; + container ots-ports { + description + "Port operational data for all OTS controllers"; + list ots-port { + key "name"; + description + "OTS controller operational data"; + container ots-info { + description + "OTS operational data"; + uses OTS-EDM-INFO; + } + container ots-spectrum-info { + description + "OTS Spectrum Operational data"; + uses OTS-EDM-SPECTRUM-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-cfg.yang new file mode 100644 index 000000000..e1dbfbd21 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-cfg.yang @@ -0,0 +1,147 @@ +module Cisco-IOS-XR-controller-och-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-och-cfg"; + prefix controller-och-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-och package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-28 { + description + "och-tone-rate datatype is changed to signed int32"; + semver:module-version "1.0.0"; + } + revision 2022-08-26 { + description + "length 8..64 is added"; + } + revision 2022-04-18 { + description + "Name of the enum ThresholdType is changed to OchThresholdType"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Och-threshold { + type enumeration { + enum "low" { + value 1; + description + "Low Threshold"; + } + enum "high" { + value 2; + description + "High Threshold"; + } + } + description + "Och threshold"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container och { + description + "Och controller configuration"; + container rx-thresholds { + description + "Configure RX threshold"; + list rx-threshold { + key "rx-threshold-type"; + description + "Configure transponder receive power threshold"; + leaf rx-threshold-type { + type Och-threshold; + description + "Low or high rx threshold"; + } + leaf rx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm)"; + } + } + } + container tx-thresholds { + description + "Configure TX threshold"; + list tx-threshold { + key "tx-threshold-type"; + description + "Configure transponder transmit power threshold"; + leaf tx-threshold-type { + type Och-threshold; + description + "Low or high tx threshold"; + } + leaf tx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm"; + } + } + } + leaf och-tone-pattern-expected { + type string { + length "8..64"; + } + description + "Enter Hex Values(Min Length 8 Bytes to Max + Length 64 Bytes)"; + } + leaf och-tone-rate { + type int32 { + range "2..25"; + } + description + "Configure Tone Rate"; + } + leaf och-tone-detect-oob { + type empty; + description + "configure tone detect oob"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper-sub1.yang new file mode 100644 index 000000000..ab428571b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper-sub1.yang @@ -0,0 +1,301 @@ +submodule Cisco-IOS-XR-controller-och-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-och-oper { + prefix Cisco-IOS-XR-controller-och-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-och package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-23 { + description + "total-rx-power leaf is changed to rx-power in och-info container"; + semver:module-version "1.0.0"; + } + revision 2022-03-25 { + description + "Added transport_admin_state for OCH controller"; + } + revision 2021-06-28 { + description + "New Oper Model Added for Och Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-tas { + type enumeration { + enum "ots-tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ots-tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ots-tas-ui-is" { + value 2; + description + "In Service"; + } + enum "ots-tas-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ots tas"; + } + + typedef Conn-verfcn-state { + type enumeration { + enum "conn-vrfcn-state-failed" { + value 0; + description + "Failed"; + } + enum "conn-vrfcn-state-inprogress" { + value 1; + description + "Inprogress"; + } + enum "conn-vrfcn-state-success" { + value 2; + description + "Success"; + } + enum "conn-vrfcn-state-not-running" { + value 3; + description + "Notrunning"; + } + } + description + "Conn verfcn state"; + } + + typedef Led-state { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "na" { + value 7; + description + "Not Applicable"; + } + } + description + "Led state"; + } + + typedef Ots-controller-state { + type enumeration { + enum "ots-state-up" { + value 0; + description + "Up"; + } + enum "ots-state-down" { + value 1; + description + "Down"; + } + enum "ots-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Ots controller state"; + } + + grouping OTS-TONE-INFO { + description + "Ots Tone information"; + leaf tone-freq { + type string; + description + "Tone Frequency"; + } + leaf tone-rate { + type uint32; + description + "Tone Rate"; + } + leaf pattern { + type string; + description + "Tone pattern"; + } + leaf pattern-expected { + type string; + description + "Tone pattern expected"; + } + leaf dectected-oob { + type uint32; + description + "Detected OOB"; + } + leaf state { + type Conn-verfcn-state; + description + "Connection verification state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pattern-received { + type string; + description + "Tone pattern received"; + } + } + + grouping OTS-ALARM-INFO { + description + "Optics Alarm Detail"; + leaf is-detected { + type boolean; + description + "is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OCH-EDM-INFO { + description + "OCH controller operational information"; + container rx-los-p { + description + "RC LOS P"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX POWER FAIL LOW"; + uses OTS-ALARM-INFO; + } + container och-tone-info { + description + "Och tone info"; + uses OTS-TONE-INFO; + } + leaf rx-power { + type int32; + description + " Receive Power for OCH in units of 0.01 dBm"; + } + leaf tx-power { + type int32; + description + " Transmit Power for OCH in units of 0.01 dBm"; + } + leaf channel-frequency { + type uint32; + description + "Frequency read from hw in the units of 0.001THz"; + } + leaf channel-width { + type uint32; + description + "Channel Width (in Unit of 0.1 GHz)"; + } + leaf channel-wavelength { + type uint32; + description + "Wavelength in unit of 0.01 nm"; + } + leaf add-drop-port { + type string; + description + "Add Drop port ots R/S/I/P"; + } + leaf controller-state { + type Ots-controller-state; + description + "Ots controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf led-state { + type Led-state; + description + "Showing Current Colour of led state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf transport-admin-state { + type Ots-tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper.yang new file mode 100644 index 000000000..2799ed37f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-och-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-controller-och-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-och-oper"; + prefix controller-och-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-och-oper-sub1 { + revision-date 2022-05-23; + } + + 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 controller-och package operational data. + + This module contains definitions + for the following management objects: + och-oper: Och operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-23 { + description + "total-rx-power leaf is changed to rx-power in och-info container"; + semver:module-version "1.0.0"; + } + revision 2022-03-25 { + description + "Added transport_admin_state for OCH controller"; + } + revision 2021-06-28 { + description + "New Oper Model Added for Och Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container och-oper { + config false; + description + "Och operational data"; + container och-ports { + description + "All Och Port operational data"; + list och-port { + key "name"; + description + "Och operational data"; + container och-info { + description + "Och operational data"; + uses OCH-EDM-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub1.yang new file mode 100644 index 000000000..9e651134a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub1.yang @@ -0,0 +1,786 @@ +submodule Cisco-IOS-XR-controller-odg-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-odg-oper { + prefix Cisco-IOS-XR-controller-odg-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-odg package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fault-types-et { + type enumeration { + enum "lockout-request" { + value 0; + description + "Lockout Request"; + } + enum "lockout-release" { + value 1; + description + "Lockout Release"; + } + enum "force-request" { + value 2; + description + "Force switch request"; + } + enum "force-release" { + value 3; + description + "Force switch release"; + } + enum "signal-fail" { + value 4; + description + "Signal fail event "; + } + enum "signal-fail-clear" { + value 5; + description + "Signal fail clear event"; + } + enum "signal-degrade" { + value 6; + description + "Signal Degrade event"; + } + enum "signal-degrade-clear" { + value 7; + description + " Signal Degrade clear event"; + } + enum "manual-request" { + value 8; + description + "Manual switch request"; + } + enum "manual-release" { + value 9; + description + "Manual switch release"; + } + enum "wait-to-restore" { + value 10; + description + "Wait to restore expire"; + } + enum "exercise-request" { + value 11; + description + " Exercise request"; + } + enum "exercise-release" { + value 12; + description + "Exercise release "; + } + enum "revert-request" { + value 13; + description + " Revert request"; + } + enum "donot-revert" { + value 14; + description + "Do not revert"; + } + enum "no-request" { + value 15; + description + "No request "; + } + enum "max-events" { + value 16; + description + "Max events"; + } + } + description + "Fault types et"; + } + + typedef Odg-aps-states-et { + type enumeration { + enum "odg-st-lo" { + value 0; + description + "Lockout for Protection Request"; + } + enum "odg-st-sfp" { + value 1; + description + "Signal Failed on Protecting"; + } + enum "odg-st-fs" { + value 2; + description + " Forced Switch"; + } + enum "odg-st-sfw" { + value 3; + description + " Signal failed on Working"; + } + enum "odg-st-sd" { + value 4; + description + "Signal Degrade"; + } + enum "odg-st-ms" { + value 5; + description + "Manual Switch"; + } + enum "odg-st-wtr" { + value 6; + description + "Wait to restore"; + } + enum "odg-st-exer" { + value 7; + description + "Exercise"; + } + enum "odg-st-rr" { + value 8; + description + "Reverse Request"; + } + enum "odg-st-dnr" { + value 9; + description + "Do Not Revert State"; + } + enum "odg-st-nr" { + value 10; + description + "No Request State"; + } + enum "odg-max-states" { + value 11; + description + "Max state"; + } + enum "odg-no-st" { + value 17; + description + "APS State Not Set"; + } + } + description + "Odg aps states et"; + } + + typedef Prot-et { + type enumeration { + enum "no-state" { + description + "Not Present"; + } + enum "active" { + description + "Active"; + } + enum "active-tx" { + description + "Active tx"; + } + enum "active-rx" { + description + "Active rx"; + } + enum "not-active" { + description + "Not Active"; + } + enum "failed" { + description + "Failed"; + } + enum "extra" { + description + "Extra"; + } + enum "unsupported" { + description + "Unsupported"; + } + } + description + "Prot et"; + } + + typedef Odg-aps-mon-lvl { + type enumeration { + enum "odg-mon-pm" { + value 0; + description + "Performance Monitoring"; + } + enum "odg-tcm-1" { + value 1; + description + "TCM 1"; + } + enum "odg-tcm-2" { + value 2; + description + "TCM 2"; + } + enum "odg-tcm-3" { + value 3; + description + "TCM 3"; + } + enum "odg-tcm-4" { + value 4; + description + "TCM 4"; + } + enum "odg-tcm-5" { + value 5; + description + "TCM 5"; + } + enum "odg-tcm-6" { + value 6; + description + "TCM 6"; + } + enum "odg-mon-sm" { + value 7; + description + "Section Monitoring"; + } + } + description + "Odg aps mon lvl"; + } + + typedef Odg-revert-et { + type enumeration { + enum "non-rev" { + value 0; + description + "Non Revertive"; + } + enum "rev" { + value 1; + description + "Revertive"; + } + } + description + "Odg revert et"; + } + + typedef Odg-direction-et { + type enumeration { + enum "uni-dir" { + value 0; + description + "Uni directional"; + } + enum "bi-dir" { + value 1; + description + "Bi directional"; + } + } + description + "Odg direction et"; + } + + typedef Odg-aps-et { + type enumeration { + enum "noaps" { + value 0; + description + "No Aps"; + } + enum "with-aps" { + value 1; + description + "With APS"; + } + } + description + "Odg aps et"; + } + + typedef Brd-et { + type enumeration { + enum "b-1-1" { + value 0; + description + "1+1"; + } + enum "b-1-n" { + value 1; + description + "1:N"; + } + } + description + "Brd et"; + } + + typedef Req-st-et { + type enumeration { + enum "aps-nr" { + value 0; + description + "No Request State"; + } + enum "aps-dnr" { + value 1; + description + "Do Not Revert State"; + } + enum "aps-rr" { + value 2; + description + "Reverse Request"; + } + enum "aps-exer" { + value 4; + description + "Exercise"; + } + enum "aps-wtr" { + value 6; + description + "Wait to Restore"; + } + enum "aps-ms" { + value 8; + description + "Manual Switch"; + } + enum "aps-sd" { + value 10; + description + "Signal Degrade"; + } + enum "aps-sf" { + value 12; + description + "Signal Failed"; + } + enum "aps-low" { + value 13; + description + "Lockout for Working"; + } + enum "aps-fs" { + value 14; + description + "Forced Switch"; + } + enum "aps-lop" { + value 15; + description + "Lockout for Protection"; + } + } + description + "Req st et"; + } + + grouping ODG-ODU-EDM-ALARM { + description + " ODG ODU Alarm"; + leaf is-alarm-detected { + type boolean; + description + "Flag to indicate if the alarm is detected"; + } + } + + grouping ODG-ODU-ALARM-INFO { + description + "ODG ODU Alarm"; + container switched-to-restore { + description + "Switched To Restore"; + uses ODG-ODU-EDM-ALARM; + } + container switched-to-protection { + description + "Switched To Protection"; + uses ODG-ODU-EDM-ALARM; + } + container lockout-switch-request { + description + "Lockout Switch Request On Controller or + Equipment or UPSR or SNC"; + uses ODG-ODU-EDM-ALARM; + } + container force-switch-request { + description + "Force Switch Request On Controller or Equipment + or UPSR or SNC"; + uses ODG-ODU-EDM-ALARM; + } + container manual-switch-request { + description + "Manual Switch Request On Controller or Equipment + or UPSR or SNC"; + uses ODG-ODU-EDM-ALARM; + } + container wait-to-restore { + description + "Wait To Restore"; + uses ODG-ODU-EDM-ALARM; + } + container failure-to-switch-to-protection { + description + "Failure To Switch To Protection"; + uses ODG-ODU-EDM-ALARM; + } + } + + grouping ODG-ODU-CHNL-ID { + description + "odg oduk chnl id"; + leaf slot { + type int32; + description + "slot"; + } + leaf port { + type int32; + description + "port"; + } + leaf id { + type int32; + description + "id"; + } + } + + grouping ODG-APS-CHNL-ID { + description + "odg aps chnl id"; + container id { + description + "channelID"; + uses ODG-ODU-CHNL-ID; + } + leaf rack { + type int32; + description + "rack"; + } + leaf slot { + type int32; + description + "slot"; + } + leaf instance { + type int32; + description + "instance"; + } + leaf port { + type int32; + description + "port"; + } + leaf dev { + type int32; + description + "dev"; + } + leaf mode { + type int32; + description + "mode"; + } + leaf x-flag { + type int32; + description + "x flag"; + } + leaf active-flag { + type int32; + description + "active flag"; + } + leaf odu-rate { + type int32; + description + "OduRate"; + } + leaf oduhandle { + type int32; + description + "OduHandle"; + } + leaf odu-name { + type string; + description + "odu name"; + } + leaf odustate { + type Prot-et; + description + "odu state"; + } + leaf local-failure { + type int32; + description + "Local Failure"; + } + leaf remote-failure { + type int32; + description + "Remote Failure"; + } + leaf wtr-left { + type uint32; + description + "Wait to Restore Left Timer"; + } + } + + grouping ODG-APS-PROV-INFO { + description + "odg aps prov info t"; + leaf aps { + type Odg-aps-et; + description + "aps"; + } + leaf bridge { + type Brd-et; + description + "bridge"; + } + leaf direction { + type Odg-direction-et; + description + "direction"; + } + leaf revertive { + type Odg-revert-et; + description + "revertive"; + } + leaf wait-to-restore { + type int32; + description + "WaitToRestore"; + } + leaf hold-off { + type int32; + description + "HoldOffTimer"; + } + leaf level { + type Odg-aps-mon-lvl; + description + "ApsLevel"; + } + } + + grouping ODG-APS-REQ-ST-PT { + description + "odg aps req st pt"; + leaf state { + type Req-st-et; + description + "state"; + } + leaf aps { + type int32; + description + "aps"; + } + leaf bridge { + type Brd-et; + description + "bridge"; + } + leaf direction { + type int32; + description + "direction"; + } + leaf revert { + type int32; + description + "revertive"; + } + } + + grouping ODG-APS-CHNL-CTX { + description + "channel contrext info"; + container request-protection { + description + "RequestProtection"; + uses ODG-APS-REQ-ST-PT; + } + leaf request-signal { + type int32; + description + "RequestSignal"; + } + leaf bridge-signal { + type int32; + description + "BridgeSignal"; + } + leaf response { + type int32; + description + "response"; + } + leaf role { + type int32; + description + "OduRole"; + } + leaf context-num { + type int32; + description + "ContextNum"; + } + leaf message-type { + type int32; + description + "MessageType"; + } + leaf event-type { + type int32; + description + "EventType"; + } + } + + grouping ODG-ODU-EDM-PORT-INFO { + description + "ODG ODU information"; + container near-channel { + description + "NearChannel"; + uses ODG-APS-CHNL-CTX; + } + container far-channel { + description + "FarChannel"; + uses ODG-APS-CHNL-CTX; + } + container provision-info { + description + "ProvisionInfo"; + uses ODG-APS-PROV-INFO; + } + container working-id { + description + "WorkingID"; + uses ODG-APS-CHNL-ID; + } + container protecting-id { + description + "ProtectingID"; + uses ODG-APS-CHNL-ID; + } + container restore-id { + description + "RestoreID"; + uses ODG-APS-CHNL-ID; + } + container fwd-id { + description + "FwdID"; + uses ODG-APS-CHNL-ID; + } + container alarm { + description + "Alarm"; + uses ODG-ODU-ALARM-INFO; + } + leaf aps-current-state { + type Odg-aps-states-et; + description + "ApsCurrentState"; + } + leaf prev-state { + type Odg-aps-states-et; + description + "PreviousState"; + } + leaf fault-type { + type Fault-types-et; + description + "FaultType"; + } + leaf node-use { + type int32; + description + "node use"; + } + leaf odg-id { + type int32; + description + "odugroup id"; + } + leaf odg-handle { + type int32; + description + "odugroup handle"; + } + leaf odg-fgid { + type int32; + description + "odu group fgid"; + } + leaf bmap-event { + type int32; + description + "bitmap event"; + } + leaf bmap-index { + type int32; + description + "bitmap index"; + } + leaf status-code { + type int32; + description + "status code"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub2.yang new file mode 100644 index 000000000..93ab431af --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper-sub2.yang @@ -0,0 +1,874 @@ +submodule Cisco-IOS-XR-controller-odg-oper-sub2 { + belongs-to Cisco-IOS-XR-controller-odg-oper { + prefix Cisco-IOS-XR-controller-odg-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-odg package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dp-programmed { + type enumeration { + enum "dp-not-programmed" { + description + "DP not programmed"; + } + enum "dp-programmed-success" { + description + "DP programmed"; + } + enum "end-pt-first-channel-ized" { + description + "ENDPT FIRST CHANNELIZED"; + } + enum "end-pt-se-cond-channel-ized" { + description + "ENDPT SECOND CHANNELIZED"; + } + enum "end-pt-first-cross-connected" { + description + "ENDPT FIRST CROSS CONNECTED"; + } + enum "end-pt-se-cond-cross-connected" { + description + "ENDPT SECOND CROSS CONNECTED"; + } + enum "end-pt-first-open-connected" { + description + "ENDPT FIRST OPEN CONNECTED"; + } + enum "end-pt-se-cond-open-connected" { + description + "ENDPT SECOND OPEN CONNECTED"; + } + enum "end-pt-first-loop-back-ed" { + description + "ENDPT FIRST LOOPBACKED"; + } + enum "end-pt-se-cond-loop-back-ed" { + description + "ENDPT SECOND LOOPBACKED"; + } + enum "end-pt-odu-type-mismatch" { + description + "ENDPT ODU TYPE MISMATCH"; + } + enum "xc-not-set" { + description + "XCONNECT NOT SET"; + } + } + description + "Dp programmed"; + } + + typedef Odg-resource-et { + type enumeration { + enum "re-source-free" { + description + "ODG Resource Free"; + } + enum "open-connect-ion" { + description + "ODG Open Connection"; + } + enum "cross-connected" { + description + "ODG Cross Connection"; + } + enum "is-channel-ized" { + description + "ODG Channelized"; + } + } + description + "Odg resource et"; + } + + typedef Odg-user-et { + type enumeration { + enum "user-mp" { + description + "MP "; + } + enum "user-gmpls" { + description + "GMPLS "; + } + enum "user-all" { + description + "ALL "; + } + } + description + "Odg user et"; + } + + typedef Odg-protection-switching-et { + type enumeration { + enum "ns" { + description + "NO SWITCHOVER"; + } + enum "ex" { + description + "EXERCISE"; + } + enum "ma" { + description + "MANUAL"; + } + enum "fo" { + description + "FORCED"; + } + enum "lo" { + description + "LOCKOUT"; + } + enum "cl" { + description + "CLEAR"; + } + } + description + "Odg protection switching et"; + } + + typedef P-type-et { + type enumeration { + enum "no" { + description + "No Protection"; + } + enum "uni" { + description + "1+1 Unidirectional Protection"; + } + enum "bi" { + description + "1+1 Bidirectional Protection"; + } + enum "no-aps" { + description + "1+1 Unidirectional Protection(without APS byte)"; + } + enum "one-n" { + description + "1:N Unidirectional Protection"; + } + enum "one-one-r" { + description + "1+1+R Bi-directional APS"; + } + } + description + "P type et"; + } + + typedef Prot-snc-et { + type enumeration { + enum "no" { + description + "NOT SET"; + } + enum "i" { + description + "SNC I"; + } + enum "n" { + description + "SNC N"; + } + enum "s" { + description + "SNC S"; + } + } + description + "Prot snc et"; + } + + typedef Prot-signal-state-et { + type enumeration { + enum "signal-state-ok" { + description + "State Ok"; + } + enum "signal-state-wtr" { + description + "Wait to Restore"; + } + enum "signal-state-degrade" { + description + "Signal Degrade"; + } + enum "signal-state-failure" { + description + "Signal Failure"; + } + enum "signal-state-not-applicable" { + description + "Not Applicable"; + } + enum "signal-state-unsupported" { + description + "Unspported"; + } + } + description + "Prot signal state et"; + } + + typedef Prot-state-et { + type enumeration { + enum "not-present" { + description + "Not present"; + } + enum "state-active" { + description + "Active"; + } + enum "state-active-tx" { + description + "Active tx"; + } + enum "state-active-rx" { + description + "Active rx"; + } + enum "state-not-active" { + description + "Not Active"; + } + enum "state-failed" { + description + "Failed"; + } + enum "state-extra" { + description + "Extra"; + } + enum "state-unsupported" { + description + "Unsupported"; + } + } + description + "Prot state et"; + } + + typedef Otm-mpls-lib-c { + type enumeration { + enum "otm-mpls-lib-c-type-null" { + value 0; + description + "NULL"; + } + enum "otm-mpls-lib-c-type-ipv4" { + value 1; + description + "IPV4"; + } + enum "otm-mpls-lib-c-type-ipv4-p2p-tunnel" { + value 7; + description + "IPV4 P2P TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv6-p2p-tunnel" { + value 8; + description + "IPV6 P2P TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv4-uni" { + value 9; + description + "IPV4 UNI"; + } + enum "otm-mpls-lib-c-type-ipv4-p2mp-tunnel" { + value 13; + description + "IPV4 P2MP TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv6-p2mp-tunnel" { + value 14; + description + "IPV6 P2MP TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv4-tp-tunnel" { + value 15; + description + "IPV4 TP TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv6-tp-tunnel" { + value 16; + description + "IPV6 TP TUNNEL"; + } + } + description + "Otm mpls lib c"; + } + + typedef Otm-te-tunnel-info { + type enumeration { + enum "otm-te-info-none" { + description + "NONE"; + } + enum "otm-te-info-s2l" { + description + "S2L"; + } + enum "otm-te-info-tunnel-id" { + description + "ID"; + } + enum "otm-te-info-passive-match" { + description + "MAT"; + } + } + description + "Otm te tunnel info"; + } + + typedef Otm-optical-rm-ctxt-rm { + type enumeration { + enum "otm-opt-rm-ctxt-rm-none" { + description + "NONE"; + } + enum "otm-opt-rm-ctxt-rm-wdm" { + description + "WDM"; + } + enum "otm-opt-rm-ctxt-rm-fsc" { + description + "FSC"; + } + enum "otm-opt-rm-ctxt-rm-tdm" { + description + "TDM"; + } + enum "otm-opt-rm-ctxt-rm-g709-otn" { + description + "G709 OTN"; + } + enum "otm-optical-rm-ctxt-rm-last" { + description + "LAST"; + } + } + description + "Otm optical rm ctxt rm"; + } + + typedef Otm-optical-rm-ctxt { + type enumeration { + enum "otm-opt-rm-ctxt-type-none" { + description + "NONE"; + } + enum "otm-opt-rm-ctxt-type-down-stream-rw-add" { + description + "DOWNSTREAM RW ADD"; + } + enum "otm-opt-rm-ctxt-type-up-stream-rw-add" { + description + "UPSTREAM RW ADD"; + } + enum "otm-opt-rm-ctxt-type-down-stream-rw-del" { + description + "DOWNSTREAM RW DEL"; + } + enum "otm-opt-rm-ctxt-type-up-stream-rw-del" { + description + "UPSTREAM RW DEL"; + } + enum "otm-opt-rm-ctxt-type-down-stream-lbl-get" { + description + "DOWNSTREAM LBL GET"; + } + enum "otm-opt-rm-ctxt-type-up-stream-lbl-get" { + description + "UPSTREAM LBL GET"; + } + enum "otm-opt-rm-ctxt-type-down-stream-lbl-rel" { + description + "DOWNSTREAM LBL REL"; + } + enum "otm-opt-rm-ctxt-type-up-stream-lbl-rel" { + description + "UPSTREAM LBL REL"; + } + enum "otm-opt-rm-ctxt-type-end-point-rw-add" { + description + "ENDPOINT RW ADD"; + } + enum "otm-opt-rm-ctxt-type-end-point-rw-del" { + description + "ENDPOINT RW DEL"; + } + enum "otm-opt-rm-ctxt-type-odu-group-add" { + description + "ODU GROUP ADD"; + } + enum "otm-opt-rm-ctxt-type-odu-group-del" { + description + "ODU GROUP DEL"; + } + enum "otm-optical-rm-ctxt-type-last" { + description + "LAST"; + } + } + description + "Otm optical rm ctxt"; + } + + typedef Role { + type enumeration { + enum "n-o" { + description + "NOT SET"; + } + enum "w" { + description + "WORKING"; + } + enum "p" { + description + "PROTECT"; + } + enum "r" { + description + "RESTORE"; + } + } + description + "Role"; + } + + grouping ODG-APS-EDM-ALARM { + description + " ODG APS Alarm"; + leaf is-detected { + type boolean; + description + "Flag to indicate if the alarm is detected"; + } + } + + grouping ODG-APS-ALARM-INFO { + description + "ODG APS Alarm"; + container switched-to-restore { + description + "Switched To Restore"; + uses ODG-APS-EDM-ALARM; + } + container switched-to-protection { + description + "Switched To Protection"; + uses ODG-APS-EDM-ALARM; + } + container lockout-switch-request { + description + "Lockout Switch Request On Controller or + Equipment or UPSR or SNC"; + uses ODG-APS-EDM-ALARM; + } + container force-switch-request { + description + "Force Switch Request On Controller or Equipment + or UPSR or SNC"; + uses ODG-APS-EDM-ALARM; + } + container manual-switch-request { + description + "Manual Switch Request On Controller or Equipment + or UPSR or SNC"; + uses ODG-APS-EDM-ALARM; + } + container wait-to-restore { + description + "Wait To Restore"; + uses ODG-APS-EDM-ALARM; + } + container failure-to-switch-to-protection { + description + "Failure To Switch To Protection"; + uses ODG-APS-EDM-ALARM; + } + } + + grouping ODG-FWD-REF-ODG-INFO { + description + "ODG FWD_REFERENCE ODU Information"; + leaf od-guser { + type Odg-user-et; + description + " ODU user Information"; + } + leaf resource-state { + type Odg-resource-et; + description + "resource state information"; + } + leaf od-ustate { + type Prot-state-et; + description + "odu state"; + } + leaf local-failure { + type boolean; + description + "Local Failure"; + } + leaf remote-failure { + type boolean; + description + "Remote Failure"; + } + } + + grouping ODG-REST-INFO { + description + "restore information"; + leaf rev { + type boolean; + description + "revertive"; + } + } + + grouping ODG-PROT-INFO { + description + "protection params"; + leaf contype { + type Prot-snc-et; + description + "connection type"; + } + leaf prtype { + type P-type-et; + description + "protection type"; + } + leaf rev { + type boolean; + description + "revertive"; + } + leaf wot { + type uint32; + description + "wait off timer"; + } + leaf hot { + type uint32; + description + "hold off timer"; + } + leaf tcmid { + type uint8; + description + "tcmid"; + } + } + + grouping OTM-MTE-VIF-PASSIVE-MATCH-INFO { + description + "MTE VIF Passive Match Information"; + leaf src-tid { + type uint16; + description + "Src TId"; + } + leaf src-rid { + type uint32; + description + "Src RId"; + } + } + + grouping OTM-S2L-FEC { + description + "S2L FEC Information"; + leaf s2l-fec-sub-group-id { + type uint16; + description + "SubGroup Id"; + } + leaf s2l-fec-lsp-id { + type uint16; + description + "Lsp Id"; + } + leaf s2l-fec-tunnel-id { + type uint16; + description + "Tunnel Id"; + } + leaf ext-tunnel-id { + type uint32; + description + "Ext Tunnel Id"; + } + leaf fec-source { + type uint32; + description + "FEC Source"; + } + leaf fec-dest { + type uint32; + description + "FEC Dest"; + } + leaf s2l-fec-p2mp-id { + type uint32; + description + "P2MP Id"; + } + leaf sub-group-origin-ator { + type uint32; + description + "SubGroup Originator"; + } + leaf fec-c-type { + type Otm-mpls-lib-c; + description + "Ctype"; + } + } + + grouping OTM-TE-TUNNEL-INFO-UNION { + description + "OTM TE TUNNEL INFO UNION"; + container lb-ctxt { + when "../info-type = 'otm-te-info-s2l'" { + description + "../INFO_TYPE = 'OTM_TE_INFO_S2l'"; + } + description + "Lbl Ctxt"; + uses OTM-S2L-FEC; + } + container passive-match { + when "../info-type = 'otm-te-info-passive-match'" { + description + "../INFO_TYPE = 'OTM_TE_INFO_PASSIVE_MATCH'"; + } + description + "Passive Match"; + uses OTM-MTE-VIF-PASSIVE-MATCH-INFO; + } + leaf info-type { + type Otm-te-tunnel-info; + description + "INFO TYPE"; + } + leaf tunnel-id { + when "../info-type = 'otm-te-info-tunnel-id'" { + description + "../INFO_TYPE = 'OTM_TE_INFO_TUNNEL_ID'"; + } + type uint32; + description + "Tunnel Id"; + } + } + + grouping OTM-OPTICAL-RM-CTXT-DATA { + description + "TE Optical RM CTXT Data Information"; + container te-tunnel-info { + description + "Tunnel Information"; + uses OTM-TE-TUNNEL-INFO-UNION; + } + leaf gmpls-req-time { + type uint32; + description + "Req Time"; + } + leaf ctxt-type { + type Otm-optical-rm-ctxt; + description + "Ctxt Type"; + } + leaf rm-type { + type Otm-optical-rm-ctxt-rm; + description + "Rm Type"; + } + } + + grouping ODU-CTRL-REFER-ST { + description + "odu info"; + container odg-rem-ctx-data { + description + "Odu Group Delete Data"; + uses OTM-OPTICAL-RM-CTXT-DATA; + } + container odg-add-ctx-data { + description + "Odu Group Add Data"; + uses OTM-OPTICAL-RM-CTXT-DATA; + } + leaf odu-name { + type string; + description + "odu name"; + } + leaf odurole { + type Role; + description + "odu role"; + } + leaf odustate { + type Prot-state-et; + description + "odu state"; + } + leaf local-failure { + type Prot-signal-state-et; + description + "Local Failure"; + } + leaf remote-failure { + type Prot-signal-state-et; + description + "Remote Failure"; + } + } + + grouping ODG-EDM-PORT-INFO { + description + "ODG information"; + container workodu { + description + "working odu"; + uses ODU-CTRL-REFER-ST; + } + container protodu { + description + "protect odu"; + uses ODU-CTRL-REFER-ST; + } + container restodu { + description + "restore odu"; + uses ODU-CTRL-REFER-ST; + } + container protinfo { + description + "protection params"; + uses ODG-PROT-INFO; + } + container restinfo { + description + "restore params"; + uses ODG-REST-INFO; + } + container odg-fwd-ref-info { + description + "ODG fwd_ref odg Information"; + uses ODG-FWD-REF-ODG-INFO; + } + container odg-xc-add-ctx-data { + description + "Odu Group Xconnect Add Data"; + uses OTM-OPTICAL-RM-CTXT-DATA; + } + container odg-xc-rem-ctx-data { + description + "Odu Group Xconnect Delete Data"; + uses OTM-OPTICAL-RM-CTXT-DATA; + } + container alarm { + description + "Alarm"; + uses ODG-APS-ALARM-INFO; + } + leaf odugroupid { + type uint32; + description + "odu group id"; + } + leaf state { + type uint32; + description + "Admin State"; + } + leaf last-user-switch-cmd { + type Odg-protection-switching-et; + description + "Last User Protection switchover cmd"; + } + leaf protect { + type boolean; + description + "is protect set"; + } + leaf fwd-ref { + type string { + length "0..64"; + } + description + "fwd_ref information"; + } + leaf xconnect-name { + type string; + description + "xconnect name information"; + } + leaf xc-id { + type uint32; + description + "xconnect id information"; + } + leaf fwd-ref-ifhandle { + type uint32; + description + "fwd_ref ifhandle information"; + } + leaf xc-resp-code { + type Dp-programmed; + description + "Odu Group Xconnect Response code"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper.yang new file mode 100644 index 000000000..73ea695a4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odg-oper.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-controller-odg-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-odg-oper"; + prefix controller-odg-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-odg-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-controller-odg-oper-sub1 { + revision-date 2019-04-05; + } + + 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 controller-odg package operational data. + + This module contains definitions + for the following management objects: + odg: ODG operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container odg { + config false; + description + "ODG operational data"; + container controllers { + description + "All ODG Port operational data"; + list controller { + key "odg-name"; + description + "ODG Port operational data"; + container info { + description + "ODG port operational data"; + uses ODG-EDM-PORT-INFO; + } + container protection-info { + description + "ODG port Protection information"; + uses ODG-ODU-EDM-PORT-INFO; + } + leaf odg-name { + type xr:Cisco-ios-xr-string; + description + "The name of the Odu-Group-MP name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-cfg.yang new file mode 100644 index 000000000..8e4fc4aef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-cfg.yang @@ -0,0 +1,1166 @@ +module Cisco-IOS-XR-controller-odu-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-odu-cfg"; + prefix controller-odu-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-odu package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-15 { + description + "Added user-defined PRBS pattern support. + 2021-08-10 + Added PRBS error-inject feature support."; + semver:module-version "2.2.0"; + } + revision 2020-12-10 { + description + "Added CEM packetization config for Private Line Emulation support"; + semver:module-version "2.1.0"; + } + revision 2019-12-09 { + description + "Removed PRBS pattern entry PRBS_PATTERN_NONE, PRBS mode entry PRBS_MODE_INVALID. + 2019-12-05 + Changes made to SAPI/DAPI to support 15 char string. + 2019-08-01 + Changes made in PRBS leaf, added pattern and mode field as mandatory."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Otn-child-controller-name { + type enumeration { + enum "odu1" { + value 1; + description + "Create lower order odu1 controller"; + } + enum "odu2" { + value 2; + description + "Create lower order odu2 controller"; + } + enum "odu3" { + value 3; + description + "Create lower order odu3 controller"; + } + enum "odu0" { + value 10; + description + "Create lower order odu0 controller"; + } + enum "odu2e" { + value 11; + description + "Create lower order odu2e controller"; + } + enum "odu1e" { + value 23; + description + "Create lower order odu1e controller"; + } + enum "odu2f" { + value 25; + description + "Create lower order odu2f controller"; + } + enum "odu3e1" { + value 26; + description + "Create lower order odu3e1 controller"; + } + enum "odu3e2" { + value 27; + description + "Create lower order odu3e2 controller"; + } + } + description + "Otn child controller name"; + } + + typedef Otn-child-flex-controller-name { + type enumeration { + enum "odu-flex" { + value 22; + description + "Create lower order odu-flex controller"; + } + } + description + "Otn child flex controller name"; + } + + typedef Otn-flex-mapping { + type enumeration { + enum "gfp-f-fixed" { + value 1; + description + "GFP-FIX Mapping"; + } + enum "gfp-resizable" { + value 2; + description + "GFP-Resizable Mapping"; + } + enum "cbr" { + value 3; + description + "CBR Mapping"; + } + } + description + "Otn flex mapping"; + } + + typedef Otn-per-mon { + type enumeration { + enum "disable" { + value 0; + description + "Performance Monitoring Disabled"; + } + enum "enable" { + value 1; + description + "Performance Monitoring Enabled"; + } + } + description + "Otn per mon"; + } + + typedef Odu-prbs-mode { + type enumeration { + enum "mode-source" { + value 1; + description + "Prbs Mode Source"; + } + enum "mode-sink" { + value 2; + description + "Prbs Mode Sink"; + } + enum "mode-source-sink" { + value 3; + description + "Prbs Mode Source_Sink"; + } + } + description + "Odu prbs mode"; + } + + typedef Odu-time-slot-granularity { + type enumeration { + enum "1.25g" { + value 0; + description + "1.25G time slot granularity"; + } + enum "2.5g" { + value 1; + description + "2.5G time slot granularity"; + } + } + description + "Odu time slot granularity"; + } + + typedef Otn-send-tti-type-os { + type enumeration { + enum "send-tti-os-ascii/os-ascii" { + value 10; + description + "Send TTI OS ASCII string"; + } + enum "send-tti-os-hex/os-hex" { + value 12; + description + "Send TTI OS HEX string"; + } + } + description + "Otn send tti type os"; + } + + typedef Otn-exp-tti-type-sapi { + type enumeration { + enum "exp-tti-sapi-ascii/sapi-ascii" { + value 15; + description + "Expected TTI SAPI ASCII string"; + } + } + description + "Otn exp tti type sapi"; + } + + typedef Otn-termination { + type enumeration { + enum "ether" { + value 1; + description + "Termination to ether"; + } + } + description + "Otn termination"; + } + + typedef Otn-send-tti-type-sapi { + type enumeration { + enum "send-tti-sapi-ascii/sapi-ascii" { + value 14; + description + "Send TTI SAPI ASCII string"; + } + } + description + "Otn send tti type sapi"; + } + + typedef Odu-prbs-error-inject { + type enumeration { + enum "error-inject-none" { + value 0; + description + "No error-inject config"; + } + enum "error-inject-single" { + value 1; + description + "Prbs Error Inject Single"; + } + enum "error-inject-continuous" { + value 2; + description + "Prbs Error Inject Continuous"; + } + } + description + "Odu prbs error inject"; + } + + typedef Ca-mode { + type enumeration { + enum "mode-laser-squelch" { + value 1; + description + "Laser Squelch Mode"; + } + enum "mode-idle-frame" { + value 2; + description + "Idle Frame Mode"; + } + } + description + "Ca mode"; + } + + typedef Otncem-client { + type enumeration { + enum "none" { + value 0; + description + "CEM packetize client none"; + } + enum "ether" { + value 1; + description + "Decap Ethernet from ODUk and CEM packetize + Ethernet payload"; + } + enum "sonet" { + value 2; + description + "Decap SONET from ODUk and CEM packetize SONET + payload"; + } + enum "sdh" { + value 3; + description + "Decap SDH from ODUk and CEM packetize SDH + payload"; + } + enum "otn" { + value 4; + description + "CEM packetize ODUk payload"; + } + } + description + "Otncem client"; + } + + typedef Otn-sec-admin-state { + type enumeration { + enum "normal" { + value 0; + description + "In normal state"; + } + enum "maintenance" { + value 1; + description + "Under maintenance"; + } + } + description + "Otn sec admin state"; + } + + typedef Otn-mapping { + type enumeration { + enum "none" { + value 0; + description + "No mapping"; + } + enum "gfp-f" { + value 1; + description + "gfp_f for mapping"; + } + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + enum "gfp-f-ext" { + value 6; + description + "gfp_f_ext for mapping"; + } + } + description + "Otn mapping"; + } + + typedef Otn-exp-tti-type-os { + type enumeration { + enum "exp-tti-os-ascii/os-ascii" { + value 11; + description + "Expected TTI OS ASCII string"; + } + enum "exp-tti-os-hex/os-hex" { + value 13; + description + "Expected TTI OS HEX string"; + } + } + description + "Otn exp tti type os"; + } + + typedef Odu-delay { + type enumeration { + enum "disable" { + value 0; + description + "Delay Disable"; + } + enum "enable" { + value 1; + description + "Delay Enable"; + } + } + description + "Odu delay"; + } + + typedef Otn-loopback { + type enumeration { + enum "line" { + value 2; + description + "Line loopback"; + } + enum "internal" { + value 4; + description + "Internal loopback"; + } + } + description + "Otn loopback"; + } + + typedef Odu-prbs-direction { + type enumeration { + enum "direction-none" { + value 0; + description + "No direction config"; + } + enum "direction-line" { + value 1; + description + "Prbs Direction Line"; + } + enum "direction-system" { + value 2; + description + "Prbs Direction System"; + } + } + description + "Odu prbs direction"; + } + + typedef Otn-exp-tti-type-full { + type enumeration { + enum "exp-tti-full-ascii/full-ascii" { + value 5; + description + "Expected TTI Full ASCII string"; + } + enum "exp-tti-hex/hex" { + value 7; + description + "Expected TTI hex string"; + } + } + description + "Otn exp tti type full"; + } + + typedef Otn-send-tti-type-full { + type enumeration { + enum "send-tti-full-ascii/full-ascii" { + value 4; + description + "Send TTI Full ASCII string"; + } + enum "send-tti-hex/hex" { + value 6; + description + "Send TTI hex string"; + } + } + description + "Otn send tti type full"; + } + + typedef Otn-exp-tti-type-dapi { + type enumeration { + enum "exp-tti-dapi-ascii/dapi-ascii" { + value 9; + description + "Expected TTI DAPI ASCII string"; + } + } + description + "Otn exp tti type dapi"; + } + + typedef Otngcc-mode { + type enumeration { + enum "disable" { + value 0; + description + "GCC Disabled"; + } + enum "enable" { + value 1; + description + "GCC Enabled"; + } + } + description + "Otngcc mode"; + } + + typedef Otn-send-tti-type-dapi { + type enumeration { + enum "send-tti-dapi-ascii/dapi-ascii" { + value 8; + description + "Send TTI DAPI ASCII string"; + } + } + description + "Otn send tti type dapi"; + } + + typedef Gcc-mode { + type enumeration { + enum "gcc2-mode" { + value 1; + description + "GCC2"; + } + } + description + "Gcc mode"; + } + + typedef Pattern { + type enumeration { + enum "pattern-pn31" { + value 1; + description + "Prbs pattern pn31"; + } + enum "pattern-pn23" { + value 2; + description + "Prbs pattern pn23"; + } + enum "pattern-pn11" { + value 4; + description + "Prbs pattern pn11"; + } + enum "pattern-inverted-pn31" { + value 8; + description + "Prbs pattern inverted pn31"; + } + enum "pattern-inverted-pn11" { + value 16; + description + "Prbs pattern inverted pn11"; + } + enum "pattern-pn15" { + value 32; + description + "Prbs pattern pn15"; + } + enum "pattern-pn7" { + value 64; + description + "Prbs pattern pn7"; + } + enum "pattern-pn9" { + value 128; + description + "Prbs pattern pn9"; + } + enum "pattern-user-defined" { + value 256; + description + "user-defined prbs pattern(64-bit hex value)"; + } + } + description + "Pattern"; + } + + typedef Otnpmtimca { + type enumeration { + enum "disable" { + value 0; + description + "Path layer PM TIM Consequent action Disabled"; + } + enum "enable" { + value 1; + description + "Path layer PM TIM Consequent action Enabled"; + } + } + description + "Otnpmtimca"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container odu { + description + "ODU port controller configuration"; + container otn-send-ttitcmdapi { + description + "Configure OTN Send TTI value for DAPI configs"; + leaf string-type { + type Otn-send-tti-type-dapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf dapi-ascii-string { + when "../string-type = 'send-tti-dapi-ascii/dapi-ascii'" { + description + "../StringType = + SEND_TTI_DAPI_ASCII/DAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "DAPI ASCII text (Max 15 characters)"; + } + } + container gcc-modes { + description + "General Communication Channel Type"; + list gcc-mode { + key "type"; + description + "Enable General Communication Channel Mode"; + leaf type { + type Gcc-mode; + description + "Type "; + } + leaf mode { + type Otngcc-mode; + mandatory true; + description + "Enable/Disable GCC"; + } + } + } + container otn-expected-ttisapi { + description + "Configure OTN Expected TTI value for SAPI + configs"; + leaf string-type { + type Otn-exp-tti-type-sapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf sapi-ascii-string { + when "../string-type = 'exp-tti-sapi-ascii/sapi-ascii'" { + description + "../StringType = EXP_TTI_SAPI_ASCII/SAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "SAPI ASCII text (Max 15 characters)"; + } + } + container laser-squelch-timers { + description + "Enable laser squelch and configure hold off + time"; + list laser-squelch-timer { + key "mode-type"; + description + "Enable laser squelch and configure hold off + time"; + leaf mode-type { + type Ca-mode; + description + "Mode Type"; + } + leaf timer { + type uint32 { + range "20..10000"; + } + mandatory true; + description + "Configure hold off timer"; + } + } + } + container network-srlgs { + description + "Configure Network srlgs"; + list network-srlg { + key "set-id"; + description + "Configure network srlg sets"; + leaf set-id { + type uint32 { + range "1..17"; + } + description + "Set index"; + } + leaf srlg1 { + type uint32 { + range "0..4294967294"; + } + description + "First value for Network SRLG"; + } + leaf srlg2 { + type uint32 { + range "0..4294967294"; + } + description + "Second value for Network SRLG"; + } + leaf srlg3 { + type uint32 { + range "0..4294967294"; + } + description + "Third value for Network SRLG"; + } + leaf srlg4 { + type uint32 { + range "0..4294967294"; + } + description + "Forth value for Network SRLG"; + } + leaf srlg5 { + type uint32 { + range "0..4294967294"; + } + description + "Fifth value for Network SRLG"; + } + leaf srlg6 { + type uint32 { + range "0..4294967294"; + } + description + "Sixth value for Network SRLG"; + } + } + } + container otn-send-tti { + description + "Configure OTN Send TTI value for Full ASCII/HEX"; + leaf string-type { + type Otn-send-tti-type-full; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf full-ascii-string { + when "../string-type = 'send-tti-full-ascii/full-ascii'" { + description + "../StringType = + SEND_TTI_FULL_ASCII/FULL_ASCII"; + } + type string { + length "1..64"; + } + description + "Full ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'send-tti-hex/hex'" { + description + "../StringType = SEND_TTI_HEX/Hex"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128 - The string length + should be an even number)"; + } + } + container otn-expected-ttitcmdapi { + description + "Configure OTN Expected TTI value for DAPI + configs"; + leaf string-type { + type Otn-exp-tti-type-dapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf dapi-ascii-string { + when "../string-type = 'exp-tti-dapi-ascii/dapi-ascii'" { + description + "../StringType = EXP_TTI_DAPI_ASCII/DAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "DAPI ASCII text (Max 15 characters)"; + } + } + container otn-send-ttisapi { + description + "Configure OTN Send TTI value for SAPI configs"; + leaf string-type { + type Otn-send-tti-type-sapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf sapi-ascii-string { + when "../string-type = 'send-tti-sapi-ascii/sapi-ascii'" { + description + "../StringType = + SEND_TTI_SAPI_ASCII/SAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "SAPI ASCII text (Max 15 characters)"; + } + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Enable Prbs And configure"; + leaf mode-value { + type Odu-prbs-mode; + mandatory true; + description + "Mode value"; + } + leaf patternvalue { + type Pattern; + mandatory true; + description + "Pattern value"; + } + leaf directionvalue { + type Odu-prbs-direction; + description + "Direction value"; + } + leaf error-inject-value { + type Odu-prbs-error-inject; + description + "Error Inject value"; + } + leaf user-pattern { + type xr:Hex-long-integer; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + container idle-frame-timers { + description + "Enable Idle Frame and configure hold off time"; + list idle-frame-timer { + key "mode-type"; + description + "Enable Idle Frame and configure hold off time"; + leaf mode-type { + type Ca-mode; + description + "Mode Type"; + } + leaf timer { + type uint32 { + range "20..10000"; + } + mandatory true; + description + "Configure hold off timer"; + } + } + } + container otn-expected-ttitcmos { + description + "Configure OTN Expected TTI value for OS config"; + leaf string-type { + type Otn-exp-tti-type-os; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf osascii-string { + when "../string-type = 'exp-tti-os-ascii/os-ascii'" { + description + "../StringType = EXP_TTI_OS_ASCII/OS_ASCII"; + } + type string { + length "1..32"; + } + description + "OS ASCII text (Max 32 characters)"; + } + leaf oshex-string { + when "../string-type = 'exp-tti-os-hex/os-hex'" { + description + "../StringType = EXP_TTI_OS_HEX/OS_HEX"; + } + type string { + length "1..64"; + } + description + "OS HEX text (Max 64 characters)"; + } + } + container cem-packetize { + description + "CEM packetize the client payload carried inside + ODUk"; + leaf cem-client { + type Otncem-client; + description + "ODU CEM Packetize client"; + } + leaf mapping { + type Otn-mapping; + description + "ODU Mapping"; + } + } + container otn-expected-tti { + description + "Configure OTN Expected TTI value for Full + ASCII/HEX"; + leaf string-type { + type Otn-exp-tti-type-full; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf full-ascii-string { + when "../string-type = 'exp-tti-full-ascii/full-ascii'" { + description + "../StringType = EXP_TTI_FULL_ASCII/FULL_ASCII"; + } + type string { + length "1..64"; + } + description + "Full ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'exp-tti-hex/hex'" { + description + "../StringType = EXP_TTI_HEX/Hex"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128 - The string length + should be an even number)"; + } + } + container controller-flexes { + description + "Channelizing to lower order controller"; + list controller-flex { + key "controller-name tpn"; + description + "Creation of lower order controllers"; + leaf controller-name { + type Otn-child-flex-controller-name; + description + "Lower order flex controller"; + } + leaf tpn { + type uint32 { + range "1..80"; + } + description + "<1 - MAX> Tributary port number as allowed in + G.709"; + } + leaf timeslots { + type string { + length "1..230"; + } + description + "Timeslots requested - string separated by (:) + or (-) from 1 to 24. (:) indicates individual + timeslot and (-) represent range"; + } + leaf bitrate { + type uint32 { + range "1..104124241"; + } + description + "Bitrate for Odu-flex in kbps"; + } + leaf mapping { + type Otn-flex-mapping; + description + "Mapping for flexible containers"; + } + } + } + container otn-send-ttitcmos { + description + "Configure OTN Send TTI value for OS config"; + leaf string-type { + type Otn-send-tti-type-os; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf osascii-string { + when "../string-type = 'send-tti-os-ascii/os-ascii'" { + description + "../StringType = SEND_TTI_OS_ASCII/OS_ASCII"; + } + type string { + length "1..32"; + } + description + "OS ASCII text (Max 32 characters)"; + } + leaf oshex-string { + when "../string-type = 'send-tti-os-hex/os-hex'" { + description + "../StringType = SEND_TTI_OS_HEX/OS_HEX"; + } + type string { + length "1..64"; + } + description + "OS HEX text (Max 64 characters)"; + } + } + container termination { + presence "enable termination"; + description + "Termination of ODU Controller"; + leaf state { + type Otn-termination; + description + "ODU Termination"; + } + leaf mapping { + type Otn-mapping; + description + "ODU Mapping"; + } + } + container controllers { + description + "Channelizing to lower order controller"; + list controller { + key "controller-name tpn"; + description + "Creation of lower order controllers"; + leaf controller-name { + type Otn-child-controller-name; + description + "Lower order controller"; + } + leaf tpn { + type uint32 { + range "1..80"; + } + description + "<1 - MAX> Tributary port number as allowed in + G.709"; + } + leaf timeslots { + type string; + mandatory true; + description + "Timeslots requested - string separated by (:) + or (-) from 1 to 24. (:) indicates individual + timeslot and (-) represent range"; + } + } + } + leaf secondary-admin-state { + type Otn-sec-admin-state; + default "normal"; + description + "Configure secondary admin state "; + } + leaf tsg { + type Odu-time-slot-granularity; + default "1.25g"; + description + "Configure Tributary Slot Granularity "; + } + leaf sd { + type uint32 { + range "5..9"; + } + description + "Signal degrade threshold"; + } + leaf pmtim-state { + type Otnpmtimca; + default "disable"; + description + "Configure Consequent Action for PM TIM"; + } + leaf performance-monitoring { + type Otn-per-mon; + default "disable"; + description + "Configure performance monitoring"; + } + leaf loopback { + type Otn-loopback; + description + "Type of Loopback"; + } + leaf delay-measurement { + type Odu-delay; + default "disable"; + description + "State of Delay Measurement"; + } + leaf gcc { + type empty; + description + "General Communication Channel configuration"; + } + leaf sf { + type uint32 { + range "5..9"; + } + description + "Signal failure threshold"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-clear-prbs-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-clear-prbs-act.yang new file mode 100644 index 000000000..b6a691c99 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-clear-prbs-act.yang @@ -0,0 +1,54 @@ +module Cisco-IOS-XR-controller-odu-clear-prbs-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-odu-clear-prbs-act"; + prefix controller-odu-clear-prbs-act; + + 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 clear prbs bit-errrs statistics for controller-odu module. + + Copyright (c) 2018-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-04 { + description + "Added task-name to restrict user-access based on taskgroup"; + semver:module-version "1.0.0"; + } + revision 2020-10-27 { + description + "Clear prbs bit-errors support for odu controllers"; + } + + rpc clear-controller-prbsdetails { + description + "Clear prbs bit-errors statistics"; + input { + leaf controller { + type string; + description + "Controller name in R/S/I/P format"; + } + leaf prbsdetails { + type empty; + description + "clear prbs bit-errors counter"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-datatypes.yang new file mode 100644 index 000000000..6eba4d98c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-datatypes.yang @@ -0,0 +1,642 @@ +module Cisco-IOS-XR-controller-odu-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-odu-datatypes"; + prefix controller-odu-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-02 { + description + "Added pattern_pn9 and pattern_user_defined in enum ODU_PRBS_PATTERN. + 2021-09-06 + typedef odu_prbs_error_inject is added in bag odu_prbs_info."; + semver:module-version "2.2.0"; + } + revision 2020-10-07 { + description + "Added two new PRBS pattern PRBS_PATTERN_PN15, PRBS_PATTERN_PN7."; + semver:module-version "2.1.0"; + } + revision 2019-12-09 { + description + "Removed PRBS pattern entry PRBS_PATTERN_NONE. + 2019-08-01 + Removed PRBS mode entry PRBS_MODE_INVALID."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Otn-child-controller-name { + type enumeration { + enum "odu1" { + value 1; + description + "Create lower order odu1 controller"; + } + enum "odu2" { + value 2; + description + "Create lower order odu2 controller"; + } + enum "odu3" { + value 3; + description + "Create lower order odu3 controller"; + } + enum "odu0" { + value 10; + description + "Create lower order odu0 controller"; + } + enum "odu2e" { + value 11; + description + "Create lower order odu2e controller"; + } + enum "odu1e" { + value 23; + description + "Create lower order odu1e controller"; + } + enum "odu2f" { + value 25; + description + "Create lower order odu2f controller"; + } + enum "odu3e1" { + value 26; + description + "Create lower order odu3e1 controller"; + } + enum "odu3e2" { + value 27; + description + "Create lower order odu3e2 controller"; + } + } + description + "Otn child controller name"; + } + + typedef Otn-child-flex-controller-name { + type enumeration { + enum "odu-flex" { + value 22; + description + "Create lower order odu-flex controller"; + } + } + description + "Otn child flex controller name"; + } + + typedef Otn-flex-mapping { + type enumeration { + enum "gfp-f-fixed" { + value 1; + description + "GFP-FIX Mapping"; + } + enum "gfp-resizable" { + value 2; + description + "GFP-Resizable Mapping"; + } + enum "cbr" { + value 3; + description + "CBR Mapping"; + } + } + description + "Otn flex mapping"; + } + + typedef Otntcm-mode { + type enumeration { + enum "transparent" { + value 0; + description + "Set TCM Mode as transparent"; + } + enum "nim" { + value 1; + description + "Set TCM Mode as NIM"; + } + enum "operational" { + value 2; + description + "Set TCM Mode as operational"; + } + } + description + "Otntcm mode"; + } + + typedef Otn-per-mon { + type enumeration { + enum "disable" { + value 0; + description + "Performance Monitoring Disabled"; + } + enum "enable" { + value 1; + description + "Performance Monitoring Enabled"; + } + } + description + "Otn per mon"; + } + + typedef Odu-prbs-mode { + type enumeration { + enum "mode-source" { + value 1; + description + "Prbs Mode Source"; + } + enum "mode-sink" { + value 2; + description + "Prbs Mode Sink"; + } + enum "mode-source-sink" { + value 3; + description + "Prbs Mode Source_Sink"; + } + } + description + "Odu prbs mode"; + } + + typedef Odu-time-slot-granularity { + type enumeration { + enum "1.25g" { + value 0; + description + "1.25G time slot granularity"; + } + enum "2.5g" { + value 1; + description + "2.5G time slot granularity"; + } + } + description + "Odu time slot granularity"; + } + + typedef Otn-send-tti-type-os { + type enumeration { + enum "send-tti-os-ascii/os-ascii" { + value 10; + description + "Send TTI OS ASCII string"; + } + enum "send-tti-os-hex/os-hex" { + value 12; + description + "Send TTI OS HEX string"; + } + } + description + "Otn send tti type os"; + } + + typedef Otn-exp-tti-type-sapi { + type enumeration { + enum "exp-tti-sapi-ascii/sapi-ascii" { + value 15; + description + "Expected TTI SAPI ASCII string"; + } + } + description + "Otn exp tti type sapi"; + } + + typedef Otn-termination { + type enumeration { + enum "ether" { + value 1; + description + "Termination to ether"; + } + } + description + "Otn termination"; + } + + typedef Otn-send-tti-type-sapi { + type enumeration { + enum "send-tti-sapi-ascii/sapi-ascii" { + value 14; + description + "Send TTI SAPI ASCII string"; + } + } + description + "Otn send tti type sapi"; + } + + typedef Odu-prbs-error-inject { + type enumeration { + enum "error-inject-none" { + value 0; + description + "No error-inject config"; + } + enum "error-inject-single" { + value 1; + description + "Prbs Error Inject Single"; + } + enum "error-inject-continuous" { + value 2; + description + "Prbs Error Inject Continuous"; + } + } + description + "Odu prbs error inject"; + } + + typedef Ca-mode { + type enumeration { + enum "mode-laser-squelch" { + value 1; + description + "Laser Squelch Mode"; + } + enum "mode-idle-frame" { + value 2; + description + "Idle Frame Mode"; + } + } + description + "Ca mode"; + } + + typedef Otncem-client { + type enumeration { + enum "none" { + value 0; + description + "CEM packetize client none"; + } + enum "ether" { + value 1; + description + "Decap Ethernet from ODUk and CEM packetize + Ethernet payload"; + } + enum "sonet" { + value 2; + description + "Decap SONET from ODUk and CEM packetize SONET + payload"; + } + enum "sdh" { + value 3; + description + "Decap SDH from ODUk and CEM packetize SDH + payload"; + } + enum "otn" { + value 4; + description + "CEM packetize ODUk payload"; + } + } + description + "Otncem client"; + } + + typedef Otn-sec-admin-state { + type enumeration { + enum "normal" { + value 0; + description + "In normal state"; + } + enum "maintenance" { + value 1; + description + "Under maintenance"; + } + } + description + "Otn sec admin state"; + } + + typedef Otn-mapping { + type enumeration { + enum "none" { + value 0; + description + "No mapping"; + } + enum "gfp-f" { + value 1; + description + "gfp_f for mapping"; + } + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + enum "gfp-f-ext" { + value 6; + description + "gfp_f_ext for mapping"; + } + } + description + "Otn mapping"; + } + + typedef Otn-exp-tti-type-os { + type enumeration { + enum "exp-tti-os-ascii/os-ascii" { + value 11; + description + "Expected TTI OS ASCII string"; + } + enum "exp-tti-os-hex/os-hex" { + value 13; + description + "Expected TTI OS HEX string"; + } + } + description + "Otn exp tti type os"; + } + + typedef Odu-delay { + type enumeration { + enum "disable" { + value 0; + description + "Delay Disable"; + } + enum "enable" { + value 1; + description + "Delay Enable"; + } + } + description + "Odu delay"; + } + + typedef Otn-loopback { + type enumeration { + enum "line" { + value 2; + description + "Line loopback"; + } + enum "internal" { + value 4; + description + "Internal loopback"; + } + } + description + "Otn loopback"; + } + + typedef Odu-prbs-direction { + type enumeration { + enum "direction-none" { + value 0; + description + "No direction config"; + } + enum "direction-line" { + value 1; + description + "Prbs Direction Line"; + } + enum "direction-system" { + value 2; + description + "Prbs Direction System"; + } + } + description + "Odu prbs direction"; + } + + typedef Otn-exp-tti-type-full { + type enumeration { + enum "exp-tti-full-ascii/full-ascii" { + value 5; + description + "Expected TTI Full ASCII string"; + } + enum "exp-tti-hex/hex" { + value 7; + description + "Expected TTI hex string"; + } + } + description + "Otn exp tti type full"; + } + + typedef Otn-send-tti-type-full { + type enumeration { + enum "send-tti-full-ascii/full-ascii" { + value 4; + description + "Send TTI Full ASCII string"; + } + enum "send-tti-hex/hex" { + value 6; + description + "Send TTI hex string"; + } + } + description + "Otn send tti type full"; + } + + typedef Otn-exp-tti-type-dapi { + type enumeration { + enum "exp-tti-dapi-ascii/dapi-ascii" { + value 9; + description + "Expected TTI DAPI ASCII string"; + } + } + description + "Otn exp tti type dapi"; + } + + typedef Otngcc-mode { + type enumeration { + enum "disable" { + value 0; + description + "GCC Disabled"; + } + enum "enable" { + value 1; + description + "GCC Enabled"; + } + } + description + "Otngcc mode"; + } + + typedef Otn-send-tti-type-dapi { + type enumeration { + enum "send-tti-dapi-ascii/dapi-ascii" { + value 8; + description + "Send TTI DAPI ASCII string"; + } + } + description + "Otn send tti type dapi"; + } + + typedef Otntcmca { + type enumeration { + enum "disable" { + value 0; + description + "Consequent(ial) action for Disabled"; + } + enum "enable" { + value 1; + description + "consequent(ial) action for Enabled"; + } + } + description + "Otntcmca"; + } + + typedef Gcc-mode { + type enumeration { + enum "gcc2-mode" { + value 1; + description + "GCC2"; + } + } + description + "Gcc mode"; + } + + typedef Pattern { + type enumeration { + enum "pattern-pn31" { + value 1; + description + "Prbs pattern pn31"; + } + enum "pattern-pn23" { + value 2; + description + "Prbs pattern pn23"; + } + enum "pattern-pn11" { + value 4; + description + "Prbs pattern pn11"; + } + enum "pattern-inverted-pn31" { + value 8; + description + "Prbs pattern inverted pn31"; + } + enum "pattern-inverted-pn11" { + value 16; + description + "Prbs pattern inverted pn11"; + } + enum "pattern-pn15" { + value 32; + description + "Prbs pattern pn15"; + } + enum "pattern-pn7" { + value 64; + description + "Prbs pattern pn7"; + } + enum "pattern-pn9" { + value 128; + description + "Prbs pattern pn9"; + } + enum "pattern-user-defined" { + value 256; + description + "user-defined prbs pattern(64-bit hex value)"; + } + } + description + "Pattern"; + } + + typedef Otnpmtimca { + type enumeration { + enum "disable" { + value 0; + description + "Path layer PM TIM Consequent action Disabled"; + } + enum "enable" { + value 1; + description + "Path layer PM TIM Consequent action Enabled"; + } + } + description + "Otnpmtimca"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper-sub1.yang new file mode 100644 index 000000000..f76eae9c4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper-sub1.yang @@ -0,0 +1,2722 @@ +submodule Cisco-IOS-XR-controller-odu-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-odu-oper { + prefix Cisco-IOS-XR-controller-odu-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-odu package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-15 { + description + "Added 3 new enums to odu pt type. + 2021-12-01 + Added LED State + 2021-08-10 + Added PRBS error-inject feature support."; + semver:module-version "1.5.0"; + } + revision 2021-05-21 { + description + "Added support for ODU PLE information."; + semver:module-version "1.4.0"; + } + revision 2021-02-21 { + description + "Added IS_CEM_PACKETIZED to odu_resource_et enum for Private Line Emulation feature. + 2020-11-11 + Added PRBS bit errors and lock time support in bag odu_prbs_info. + 2020-09-25 + Added PRBS direction feature support. + 2020-09-22 + Changed existing bag to contain one more enum value for odu pt type + 2020-09-12 + Created New Bag for ODTU Remote Info and Far End Child Info."; + semver:module-version "1.3.0"; + } + revision 2019-08-05 { + description + "Separated ODTU info variables from ODU info bag and created new bag for ODTU data."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Odtu-type-et { + type enumeration { + enum "odtuna" { + value 0; + description + "NA"; + } + enum "odtu01" { + value 1; + description + "ODTU01"; + } + enum "odtu12" { + value 2; + description + "ODTU12"; + } + enum "odtu13" { + value 3; + description + "ODTU13"; + } + enum "odtu23" { + value 4; + description + "ODTU23"; + } + enum "odtu2ts" { + value 5; + description + "ODTU2ts"; + } + enum "odtu3ts" { + value 6; + description + "ODTU3ts"; + } + } + description + "Odtu type et"; + } + + typedef Odu-map-type-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "gfp-f" { + value 1; + description + "GFP F"; + } + enum "amp" { + value 2; + description + "AMP"; + } + enum "bmp" { + value 3; + description + "BMP"; + } + enum "gmp" { + value 4; + description + "GMP"; + } + enum "wis" { + value 5; + description + "WIS"; + } + enum "gfp-ext" { + value 6; + description + "GFP w/ extension header"; + } + } + description + "Odu map type et"; + } + + typedef Odu-cem-pktize-clnt-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ethernet" { + value 1; + description + "Ethernet"; + } + enum "sonet" { + value 2; + description + "SONET"; + } + enum "sdh" { + value 3; + description + "SDH"; + } + enum "otn" { + value 4; + description + "OTN"; + } + } + description + "Odu cem pktize clnt et"; + } + + typedef Odu-ca-mode-et { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Odu ca mode et"; + } + + typedef Odu-ains-state-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "active-running" { + value 1; + description + "Running"; + } + enum "active-pending" { + value 2; + description + "Pending"; + } + } + description + "Odu ains state et"; + } + + typedef Odu-ether-map-ping-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "gfp" { + value 1; + description + "GfpF"; + } + enum "amp" { + value 2; + description + "Amp"; + } + enum "bmp" { + value 3; + description + "Bmp"; + } + enum "gmp" { + value 4; + description + "Gmp"; + } + enum "wis" { + value 5; + description + "Wis"; + } + enum "gfp-ext" { + value 6; + description + "GfpF Ext"; + } + } + description + "Odu ether map ping et"; + } + + typedef Odu-tcm-mode { + type enumeration { + enum "odu-tcm-mode-trans-parent" { + value 0; + description + "Transparent"; + } + enum "nim" { + value 1; + description + "Non-Intrusive Monitor"; + } + enum "oper" { + value 2; + description + "Operational"; + } + } + description + "Odu tcm mode"; + } + + typedef Odu-tcm-per-mon { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Odu tcm per mon"; + } + + typedef Odu-tcm-state-et { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Odu tcm state et"; + } + + typedef Gmpls-tti-mode { + type enumeration { + enum "gmpls-odu-tti-mode-none" { + description + "Not Set"; + } + enum "gmpls-odu-tti-mode-sm" { + description + "Section Monitoring"; + } + enum "gmpls-odu-tti-mode-pm" { + description + "Path Monitoring"; + } + enum "gmpls-odu-tti-mode-tcm" { + description + "Tandem Connection Monitoring"; + } + } + description + "Gmpls tti mode"; + } + + typedef Odu-pm-mode { + type enumeration { + enum "nim" { + value 0; + description + "Non-Intrusive Monitor"; + } + enum "oper" { + value 1; + description + "Operational"; + } + } + description + "Odu pm mode"; + } + + typedef Odu-pm-ca-et { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Odu pm ca et"; + } + + typedef Odu-per-mon { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Odu per mon"; + } + + typedef Dp-programmed { + type enumeration { + enum "dp-not-programmed" { + description + "DP not programmed"; + } + enum "dp-programmed-success" { + description + "DP programmed"; + } + enum "end-pt-first-channel-ized" { + description + "ENDPT FIRST CHANNELIZED"; + } + enum "end-pt-se-cond-channel-ized" { + description + "ENDPT SECOND CHANNELIZED"; + } + enum "end-pt-first-cross-connected" { + description + "ENDPT FIRST CROSS CONNECTED"; + } + enum "end-pt-se-cond-cross-connected" { + description + "ENDPT SECOND CROSS CONNECTED"; + } + enum "end-pt-first-open-connected" { + description + "ENDPT FIRST OPEN CONNECTED"; + } + enum "end-pt-se-cond-open-connected" { + description + "ENDPT SECOND OPEN CONNECTED"; + } + enum "end-pt-first-loop-back-ed" { + description + "ENDPT FIRST LOOPBACKED"; + } + enum "end-pt-se-cond-loop-back-ed" { + description + "ENDPT SECOND LOOPBACKED"; + } + enum "end-pt-odu-type-mismatch" { + description + "ENDPT ODU TYPE MISMATCH"; + } + enum "xc-not-set" { + description + "XCONNECT NOT SET"; + } + } + description + "Dp programmed"; + } + + typedef Otm-mpls-lib-c { + type enumeration { + enum "otm-mpls-lib-c-type-null" { + value 0; + description + "NULL"; + } + enum "otm-mpls-lib-c-type-ipv4" { + value 1; + description + "IPV4"; + } + enum "otm-mpls-lib-c-type-ipv4-p2p-tunnel" { + value 7; + description + "IPV4 P2P TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv6-p2p-tunnel" { + value 8; + description + "IPV6 P2P TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv4-uni" { + value 9; + description + "IPV4 UNI"; + } + enum "otm-mpls-lib-c-type-ipv4-p2mp-tunnel" { + value 13; + description + "IPV4 P2MP TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv6-p2mp-tunnel" { + value 14; + description + "IPV6 P2MP TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv4-tp-tunnel" { + value 15; + description + "IPV4 TP TUNNEL"; + } + enum "otm-mpls-lib-c-type-ipv6-tp-tunnel" { + value 16; + description + "IPV6 TP TUNNEL"; + } + } + description + "Otm mpls lib c"; + } + + typedef Otm-te-tunnel-info { + type enumeration { + enum "otm-te-info-none" { + description + "NONE"; + } + enum "otm-te-info-s2l" { + description + "S2L"; + } + enum "otm-te-info-tunnel-id" { + description + "ID"; + } + enum "otm-te-info-passive-match" { + description + "MAT"; + } + } + description + "Otm te tunnel info"; + } + + typedef Otm-optical-rm-ctxt-rm { + type enumeration { + enum "otm-opt-rm-ctxt-rm-none" { + description + "NONE"; + } + enum "otm-opt-rm-ctxt-rm-wdm" { + description + "WDM"; + } + enum "otm-opt-rm-ctxt-rm-fsc" { + description + "FSC"; + } + enum "otm-opt-rm-ctxt-rm-tdm" { + description + "TDM"; + } + enum "otm-opt-rm-ctxt-rm-g709-otn" { + description + "G709 OTN"; + } + enum "otm-optical-rm-ctxt-rm-last" { + description + "LAST"; + } + } + description + "Otm optical rm ctxt rm"; + } + + typedef Otm-optical-rm-ctxt { + type enumeration { + enum "otm-opt-rm-ctxt-type-none" { + description + "NONE"; + } + enum "otm-opt-rm-ctxt-type-down-stream-rw-add" { + description + "DOWNSTREAM RW ADD"; + } + enum "otm-opt-rm-ctxt-type-up-stream-rw-add" { + description + "UPSTREAM RW ADD"; + } + enum "otm-opt-rm-ctxt-type-down-stream-rw-del" { + description + "DOWNSTREAM RW DEL"; + } + enum "otm-opt-rm-ctxt-type-up-stream-rw-del" { + description + "UPSTREAM RW DEL"; + } + enum "otm-opt-rm-ctxt-type-down-stream-lbl-get" { + description + "DOWNSTREAM LBL GET"; + } + enum "otm-opt-rm-ctxt-type-up-stream-lbl-get" { + description + "UPSTREAM LBL GET"; + } + enum "otm-opt-rm-ctxt-type-down-stream-lbl-rel" { + description + "DOWNSTREAM LBL REL"; + } + enum "otm-opt-rm-ctxt-type-up-stream-lbl-rel" { + description + "UPSTREAM LBL REL"; + } + enum "otm-opt-rm-ctxt-type-end-point-rw-add" { + description + "ENDPOINT RW ADD"; + } + enum "otm-opt-rm-ctxt-type-end-point-rw-del" { + description + "ENDPOINT RW DEL"; + } + enum "otm-opt-rm-ctxt-type-odu-group-add" { + description + "ODU GROUP ADD"; + } + enum "otm-opt-rm-ctxt-type-odu-group-del" { + description + "ODU GROUP DEL"; + } + enum "otm-optical-rm-ctxt-type-last" { + description + "LAST"; + } + } + description + "Otm optical rm ctxt"; + } + + typedef Odu-ts-g-et { + type enumeration { + enum "one-dot-two-five-g" { + value 0; + description + "1.25G"; + } + enum "two-dot-five-g" { + value 1; + description + "2.5G"; + } + enum "tsg-not-applicable" { + value 2; + description + "NA"; + } + enum "tsg-five-g" { + value 3; + description + "5G"; + } + } + description + "Odu ts g et"; + } + + typedef Odu-flex-type-et { + type enumeration { + enum "na" { + value 0; + description + "NA"; + } + enum "cbr" { + value 1; + description + "ODU Flex Type CBR"; + } + enum "gfp-resizable" { + value 2; + description + "ODU Flex Type GFP resizable"; + } + enum "gfp-fix" { + value 3; + description + "ODU Flex Type GFP fix"; + } + } + description + "Odu flex type et"; + } + + typedef Odu-pt-type-et { + type enumeration { + enum "na" { + value 0; + description + "NA"; + } + enum "two-asynchronous-cbr-mapping" { + value 2; + description + "02 (Asynchronous CBR mapping)"; + } + enum "three-bit-synchronous-cbr-mapping" { + value 3; + description + "03 (Bit synchronous CBR mapping)"; + } + enum "five-gfp-mapping" { + value 5; + description + "05 (GFP mapping)"; + } + enum "six-virtual-concatenated-signal" { + value 6; + description + "06 (Virtual Concatenated Signal)"; + } + enum "seven-pcs-codeword-transparent-ethernet-mapping" { + value 7; + description + "07 (PCS codeword transparent Ethernet mapping)"; + } + enum "nine-gfp-mapping-into-opu2" { + value 9; + description + "09 (GFP mapping into OPU2)"; + } + enum "zero-astm1-mapping-into-opu0" { + value 10; + description + "0A (STM1 mapping into OPU0)"; + } + enum "zero-bstm4-mapping-into-opu0" { + value 11; + description + "0B (STM4 mapping into OPU0)"; + } + enum "one-cfc1600-mapping-into-op-uflex" { + value 28; + description + "1C (FC-1600 mapping into OPUflex)"; + } + enum "one-ffc3200-mapping-into-op-uflex" { + value 31; + description + "1F (FC-3200 mapping into OPUflex)"; + } + enum "twenty-odu-multiplex-structure-supporting-odt-ujk" { + value 32; + description + "20 (ODU multiplex structure supporting ODTUjk)"; + } + enum "twenty-one-odu-multiplex-structure-supporting-odt-ujk-and-odt-ukts" { + value 33; + description + "21 (ODU multiplex structure supporting ODTUjk + and ODTUk.ts)"; + } + enum "twenty-three-odu-multiplex-structure-supporting-odt-ujk-or-odt-ujk-and-odt-ukts" { + value 34; + description + "23 (ODU multiplex structure supporting ODTUjk + or ODTUjk and ODTUk.ts)"; + } + enum "twenty-two-odu-multiplex-structure-supporting-odt-ucn" { + value 35; + description + "22 (ODU multiplex structure supporting ODUCn)"; + } + enum "twenty400gbaser-mapping-into-op-uflex" { + value 50; + description + "32 (400GBASE-R mapping into OPUflex)"; + } + } + description + "Odu pt type et"; + } + + typedef Odu-resource-et { + type enumeration { + enum "resource-free" { + value 0; + description + "ODU Resource Free"; + } + enum "open-connection" { + value 1; + description + "ODU Open Connection"; + } + enum "cross-connection" { + value 2; + description + "ODU Cross Connection"; + } + enum "channelized" { + value 3; + description + "ODU Channelized"; + } + enum "loopbacked" { + value 4; + description + "ODU Loopbacked"; + } + enum "cross-connected-and-loopbacked" { + value 5; + description + "ODU Cross Connection and Loopbacked"; + } + enum "terminated" { + value 6; + description + "ODU Terminated"; + } + enum "invalid" { + value 7; + description + "ODU Invalid"; + } + enum "resource-state-na" { + value 8; + description + "Resource State Not applicable"; + } + enum "is-cem-packet-ized" { + value 9; + description + "ODU CEM packetized"; + } + } + description + "Odu resource et"; + } + + typedef Odu-user-et { + type enumeration { + enum "mp" { + value 0; + description + "MP"; + } + enum "gmpls" { + value 1; + description + "GMPLS"; + } + enum "all" { + value 2; + description + "All"; + } + enum "na" { + value 3; + description + "User State Not applicable"; + } + } + description + "Odu user et"; + } + + typedef Odu-sec-state { + type enumeration { + enum "normal" { + value 0; + description + "Normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance"; + } + enum "ains" { + value 2; + description + "Automatic In Service"; + } + } + description + "Odu sec state"; + } + + typedef Odu-der-state { + type enumeration { + enum "out-of-service" { + value 0; + description + "Out Of Service"; + } + enum "in-service" { + value 1; + description + "In Service"; + } + enum "maintenance" { + value 2; + description + "Maintenance"; + } + enum "ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Odu der state"; + } + + typedef Odu-tti-et { + type enumeration { + enum "ascii" { + value 0; + description + "ASCII"; + } + enum "hex" { + value 1; + description + "HEX"; + } + enum "full-ascii" { + value 2; + description + "FULL ASCII"; + } + enum "full-hex" { + value 3; + description + "FULL HEX"; + } + } + description + "Odu tti et"; + } + + typedef Odu-loop-back-mode { + type enumeration { + enum "none" { + value 1; + description + "None"; + } + enum "line" { + value 2; + description + "Line"; + } + enum "internal" { + value 4; + description + "Internal"; + } + } + description + "Odu loop back mode"; + } + + typedef Odu-led-state-et { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green On"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow On"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red On"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "not-applicable" { + value 7; + description + "Not Applicable"; + } + } + description + "Odu led state et"; + } + + typedef Odu-state-et { + type enumeration { + enum "not-ready" { + value 0; + description + "Not Ready"; + } + enum "admin-down" { + value 1; + description + "Admin Down"; + } + enum "down" { + value 2; + description + "Down"; + } + enum "up" { + value 3; + description + "Up"; + } + enum "shutdown" { + value 4; + description + "Shutdown"; + } + enum "error-disable" { + value 5; + description + "Error Disable"; + } + enum "down-immediate" { + value 6; + description + "Down Immediate"; + } + enum "down-immediate-admin" { + value 7; + description + "Down Immediate Admin"; + } + enum "down-graceful" { + value 8; + description + "Down Graceful"; + } + enum "begin-shutdown" { + value 9; + description + "Begin Shutdown"; + } + enum "end-shutdown" { + value 10; + description + "End Shutdown"; + } + enum "begin-error-disable" { + value 11; + description + "Begin Error Disable"; + } + enum "end-error-disable" { + value 12; + description + "End Error Disable"; + } + enum "begin-down-graceful" { + value 13; + description + "Begin Down Graceful"; + } + enum "reset" { + value 14; + description + "Reset"; + } + enum "operational" { + value 15; + description + "Operational"; + } + enum "not-operational" { + value 16; + description + "Not Operational"; + } + enum "unknown" { + value 17; + description + "Unknown"; + } + enum "last" { + value 18; + description + "Last"; + } + } + description + "Odu state et"; + } + + typedef Odu-prbs-err-inject { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "single" { + value 1; + description + "Single"; + } + enum "continuous" { + value 2; + description + "Continuous"; + } + } + description + "Odu prbs err inject"; + } + + typedef Odu-prbs-direct-ion { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "line" { + value 1; + description + "Line"; + } + enum "system" { + value 2; + description + "System"; + } + } + description + "Odu prbs direct ion"; + } + + typedef Odu-prbs-status { + type enumeration { + enum "locked" { + value 0; + description + "Locked"; + } + enum "unlocked" { + value 1; + description + "Unlocked"; + } + enum "not-applicable" { + value 2; + description + "Not Applicable"; + } + } + description + "Odu prbs status"; + } + + typedef Odu-prbs-pattern { + type enumeration { + enum "pn-none" { + value 0; + description + "PNNONE"; + } + enum "pn31" { + value 1; + description + "PN31"; + } + enum "pn23" { + value 2; + description + "PN23"; + } + enum "pn11" { + value 4; + description + "PN11"; + } + enum "inverted-pn31" { + value 8; + description + "INVERTED PN31"; + } + enum "inverted-pn11" { + value 16; + description + "INVERTED PN11"; + } + enum "pn15" { + value 32; + description + "PN15"; + } + enum "pn7" { + value 64; + description + "PN7"; + } + enum "pn9" { + value 128; + description + "PN9"; + } + enum "user-def" { + value 256; + description + "USER DEFINED"; + } + } + description + "Odu prbs pattern"; + } + + typedef Odu-prbs-mode { + type enumeration { + enum "invalid" { + value 0; + description + "invalid"; + } + enum "source" { + value 1; + description + "Source"; + } + enum "sink" { + value 2; + description + "Sink"; + } + enum "source-sink" { + value 3; + description + "Source Sink"; + } + } + description + "Odu prbs mode"; + } + + typedef Odu-prbs-test { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Odu prbs test"; + } + + grouping FAR-END-CHILD-INFO { + description + "ODU Child Ts"; + leaf odtu-type { + type Odtu-type-et; + description + "Child odtu type"; + } + leaf tpn-value { + type uint8; + description + "Tpn Bitmap"; + } + leaf ts-bitmap { + type string { + length "0..256"; + } + description + "Ts Bitmap"; + } + } + + grouping ODU-ODTU-REMOTE { + description + "ODU ODTU OPER REMOTE DATA"; + leaf ts-g { + type Odu-ts-g-et; + description + "TS Granularity"; + } + leaf num-ts { + type uint8; + description + "Number of TS"; + } + leaf ts-b { + type string { + length "0..256"; + } + description + "child ts bitmap"; + } + leaf pt-type { + type Odu-pt-type-et; + description + "PT type"; + } + leaf port-name { + type string { + length "0..64"; + } + description + "Port Name"; + } + list odu { + description + "Child Ts"; + uses FAR-END-CHILD-INFO; + } + } + + grouping ODU-ODTU-OPER-DATA { + description + "ODU ODTU OPER DATA"; + container remote-info { + description + "hw info"; + uses ODU-ODTU-REMOTE; + } + leaf ts-g { + type Odu-ts-g-et; + description + "TS Granularity"; + } + leaf tpn-value { + type uint8; + description + "TPN"; + } + leaf num-ts { + type uint8; + description + "Number of TS"; + } + leaf ts-b { + type string { + length "0..256"; + } + description + "child ts bitmap"; + } + leaf pts-b { + type string { + length "0..256"; + } + description + "ts bitmap"; + } + leaf pt-type { + type Odu-pt-type-et; + description + "PT type"; + } + list odu { + description + "Child Ts"; + uses ODU-CHILD-TS-INFO; + } + } + + grouping ODU-CEM-AC-CLIENT-INFO { + description + "CEM AC client info"; + leaf client-type { + type uint32; + description + "Client type"; + } + leaf client-rate { + type uint32; + description + "Client rate"; + } + } + + grouping ODU-CEM-PLOAD-DJB-SIZE-INFO { + description + "CEM payload dejitter size info"; + leaf max-payload-for-range { + type uint32; + description + "Maximum payload for range"; + } + leaf min-dejitter-buffer-size { + type uint32; + description + "Mininum De-jitter buffer size"; + } + leaf max-dejitter-buffer-size { + type uint32; + description + "Maximum De-jitter buffer size"; + } + leaf multiple-factor { + type uint32; + description + "Multiple factor"; + } + } + + grouping ODU-CEM-PARAM-ST { + description + "ODU CEM parameters"; + container ac-client-info { + description + "AC Client info"; + uses ODU-CEM-AC-CLIENT-INFO; + } + leaf internal-parent-interface-name { + type string; + description + "Internal parent interface name"; + } + leaf rtp-default-enabled { + type boolean; + description + "RTP default enabled"; + } + leaf default-payload-size { + type uint32; + description + "Default payload Size"; + } + leaf clock-type { + type uint32; + description + "Clock type"; + } + leaf min-payload-size { + type uint32; + description + "Minimum payload size"; + } + leaf max-payload-size { + type uint32; + description + "Maximum payload size"; + } + leaf default-dejitter-bufferlen { + type uint32; + description + "Default De-jitter buffer length"; + } + leaf min-dejitter-bufferlen { + type uint32; + description + "Minimum De-jitter buffer length"; + } + leaf max-dejitter-bufferlen { + type uint32; + description + "Maximum De-jitter buffer length"; + } + leaf default-idle-pattern { + type uint32; + description + "Default idle pattern"; + } + leaf default-dummy-pattern { + type uint32; + description + "Default dummy pattern"; + } + leaf default-dummy-mode { + type uint32; + description + "Default dummy mode"; + } + leaf payload-incr-value { + type uint32; + description + "Payload increment value"; + } + leaf internal-parent-interface-handle { + type uint32; + description + "Internal parent interface handle"; + } + list payalod-dejitter-buffer-size-info { + description + "Payload De-jitter buffer size info"; + uses ODU-CEM-PLOAD-DJB-SIZE-INFO; + } + } + + grouping ODU-SUPP-MAP-TYPES { + description + "ODU supported mapping types bit map"; + leaf ethernet-client { + type uint32; + description + "Mapping types supported for Ethernet"; + } + leaf sonet-client { + type uint32; + description + "Mapping types supported for SONET "; + } + leaf sdh-client { + type uint32; + description + "Mapping types supported for SDH"; + } + } + + grouping ODU-PLE-INFO-ST { + description + "ODU PLE info"; + container supported-mapping-types { + description + " supported mapping types"; + uses ODU-SUPP-MAP-TYPES; + } + leaf odu-is-cem-packetized { + type boolean; + description + "ODU is CEM packetized"; + } + leaf client-type { + type Odu-cem-pktize-clnt-et; + description + "CEM packetize client"; + } + leaf mapping { + type Odu-map-type-et; + description + "Client mapping type"; + } + } + + grouping ODU-IDLE-FRAME-INFO { + description + "ODU Idle Frame"; + leaf mode { + type Odu-ca-mode-et; + description + "Mode"; + } + leaf timer { + type string; + description + "Timer "; + } + } + + grouping ODU-LASER-SQUELCH-INFO { + description + "ODU Laser Squelch"; + leaf mode { + type Odu-ca-mode-et; + description + "Mode"; + } + leaf timer { + type string; + description + "Timer "; + } + } + + grouping ODU-CA-MODE-INFO { + description + "ODU CA MODE INFO"; + container laser-squelch-info { + description + "Laser Squelch Info"; + uses ODU-LASER-SQUELCH-INFO; + } + container idle-frame-info { + description + "Idle Frame Info"; + uses ODU-IDLE-FRAME-INFO; + } + leaf local-fault-mode { + type Odu-ca-mode-et; + description + "Local Fault Mode"; + } + } + + grouping ODU-AINS-HW-INFO { + description + "ODU AINS information"; + leaf ains-state { + type Odu-ains-state-et; + description + "AINS State"; + } + leaf ains-timer-minutes { + type uint32; + units "minute"; + description + "AINS Timer in Minutes"; + } + leaf ains-remaining-secs { + type uint32; + units "second"; + description + "AINS Remaining Seconds"; + } + } + + grouping ODU-TERMINATE-ETHER-INFO { + description + "ODU termination information"; + leaf vether-ifhandle { + type uint32; + description + "interface handle"; + } + leaf ethernet-mapping { + type Odu-ether-map-ping-et; + description + "ethernet mapping"; + } + leaf ethernet-interface { + type string; + description + "Ethernet interface name"; + } + } + + grouping ODU-DELAY-INFO { + description + "ODU Delay"; + leaf mode { + type uint8; + description + "Latency Mode"; + } + leaf delay { + type uint32; + description + "Delay Value"; + } + } + + grouping ODU-TCM-INFO { + description + "ODU TCM"; + container tcmtti-mode { + description + "TTI"; + uses ODU-G709-TTI; + } + leaf tcmsf { + type uint8; + description + "ODU TCM SF in the form of 1.0E - "; + } + leaf tcmsd { + type uint8; + description + "ODU TCM SD in the form of 1.0E - "; + } + leaf tcm-state { + type Odu-tcm-state-et; + description + "ODU TCM state"; + } + leaf tcmper-mon { + type Odu-tcm-per-mon; + description + "Performance Monitoring"; + } + leaf tcm-mode { + type Odu-tcm-mode; + description + "ODU TCM Mode"; + } + leaf actual-tcm-mode { + type Odu-tcm-mode; + description + "TCM Mode in H/W"; + } + leaf tcmltc-state { + type Odu-tcm-state-et; + description + "ODU TCM LTC CA state"; + } + leaf tcmtim-state { + type Odu-tcm-state-et; + description + "ODU TCM TIM CAstate"; + } + leaf tcm-delay { + type uint32; + description + "ODU TCM DELAY"; + } + } + + grouping OTM-MTE-VIF-PASSIVE-MATCH-INFO { + description + "MTE VIF Passive Match Information"; + leaf src-tid { + type uint16; + description + "Src TId"; + } + leaf src-rid { + type uint32; + description + "Src RId"; + } + } + + grouping OTM-S2L-FEC { + description + "S2L FEC Information"; + leaf s2l-fec-sub-group-id { + type uint16; + description + "SubGroup Id"; + } + leaf s2l-fec-lsp-id { + type uint16; + description + "Lsp Id"; + } + leaf s2l-fec-tunnel-id { + type uint16; + description + "Tunnel Id"; + } + leaf ext-tunnel-id { + type uint32; + description + "Ext Tunnel Id"; + } + leaf fec-source { + type uint32; + description + "FEC Source"; + } + leaf fec-dest { + type uint32; + description + "FEC Dest"; + } + leaf s2l-fec-p2mp-id { + type uint32; + description + "P2MP Id"; + } + leaf sub-group-origin-ator { + type uint32; + description + "SubGroup Originator"; + } + leaf fec-c-type { + type Otm-mpls-lib-c; + description + "Ctype"; + } + } + + grouping OTM-TE-TUNNEL-INFO-UNION { + description + "OTM TE TUNNEL INFO UNION"; + container lb-ctxt { + when "../info-type = 'otm-te-info-s2l'" { + description + "../INFO_TYPE = 'OTM_TE_INFO_S2l'"; + } + description + "Lbl Ctxt"; + uses OTM-S2L-FEC; + } + container passive-match { + when "../info-type = 'otm-te-info-passive-match'" { + description + "../INFO_TYPE = 'OTM_TE_INFO_PASSIVE_MATCH'"; + } + description + "Passive Match"; + uses OTM-MTE-VIF-PASSIVE-MATCH-INFO; + } + leaf info-type { + type Otm-te-tunnel-info; + description + "INFO TYPE"; + } + leaf tunnel-id { + when "../info-type = 'otm-te-info-tunnel-id'" { + description + "../INFO_TYPE = 'OTM_TE_INFO_TUNNEL_ID'"; + } + type uint32; + description + "Tunnel Id"; + } + } + + grouping OTM-OPTICAL-RM-CTXT-DATA { + description + "TE Optical RM CTXT Data Information"; + container te-tunnel-info { + description + "Tunnel Information"; + uses OTM-TE-TUNNEL-INFO-UNION; + } + leaf gmpls-req-time { + type uint32; + description + "Req Time"; + } + leaf ctxt-type { + type Otm-optical-rm-ctxt; + description + "Ctxt Type"; + } + leaf rm-type { + type Otm-optical-rm-ctxt-rm; + description + "Rm Type"; + } + } + + grouping ODU-EDM-ALARM { + description + " ODU Alarm"; + leaf reporting-enabled { + type boolean; + description + "Is reporting enabled?"; + } + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf is-asserted { + type boolean; + description + "Is defect delared?"; + } + leaf counter { + type uint64; + description + "Alarm counter"; + } + } + + grouping ODU-ALARM-INFO { + description + "ODU Alarm"; + container oci { + description + "Open Connection Indiction"; + uses ODU-EDM-ALARM; + } + container ais { + description + "Alarm Indication Signal"; + uses ODU-EDM-ALARM; + } + container lck { + description + "Upstream Connection Locked"; + uses ODU-EDM-ALARM; + } + container bdi { + description + "Backward Defect Indication"; + uses ODU-EDM-ALARM; + } + container eoc { + description + "GCC End of Channel"; + uses ODU-EDM-ALARM; + } + container ptim { + description + "Payload Type Identifier Mismatch"; + uses ODU-EDM-ALARM; + } + container tim { + description + "Trace Identifier Mismatch information"; + uses ODU-EDM-ALARM; + } + container iae { + description + "Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container biae { + description + "Backward Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container sf-ber { + description + "SF BER alarm"; + uses ODU-EDM-ALARM; + } + container sd-ber { + description + "SD BER alarm"; + uses ODU-EDM-ALARM; + } + container csf { + description + "Client Signal Failure"; + uses ODU-EDM-ALARM; + } + container tcm1-ais { + description + "TCM1 Alarm Indication Signal"; + uses ODU-EDM-ALARM; + } + container tcm1-ltc { + description + "TCM1 Loss of Tandem connection Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm1-oci { + description + "TCM1 Open Connection Indiction"; + uses ODU-EDM-ALARM; + } + container tcm1-lck { + description + "TCM1 Upstream Connection Locked"; + uses ODU-EDM-ALARM; + } + container tcm1-iae { + description + "TCM1 Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm1-biae { + description + "TCM1 Backward Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm1-bdi { + description + "TCM1 Backward Defect Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm1-tim { + description + "TCM1 Trail Trace Identifier Mismatch "; + uses ODU-EDM-ALARM; + } + container tcm1-sf-ber { + description + "TCM1 SF BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm1-sd-ber { + description + "TCM1 SD BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm2-ais { + description + "TCM2 Alarm Indication Signal"; + uses ODU-EDM-ALARM; + } + container tcm2-ltc { + description + "TCM2 Loss of Tandem connection Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm2-oci { + description + "TCM2 Open Connection Indiction"; + uses ODU-EDM-ALARM; + } + container tcm2-lck { + description + "TCM2 Upstream Connection Locked"; + uses ODU-EDM-ALARM; + } + container tcm2-iae { + description + "TCM2 Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm2-biae { + description + "TCM2 Backward Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm2-bdi { + description + "TCM2 Backward Defect Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm2-tim { + description + "TCM2 Trail Trace Identifier Mismatch "; + uses ODU-EDM-ALARM; + } + container tcm2-sf-ber { + description + "TCM2 SF BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm2-sd-ber { + description + "TCM2 SD BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm3-ais { + description + "TCM3 Alarm Indication Signal"; + uses ODU-EDM-ALARM; + } + container tcm3-ltc { + description + "TCM3 Loss of Tandem connection Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm3-oci { + description + "TCM3 Open Connection Indiction"; + uses ODU-EDM-ALARM; + } + container tcm3-lck { + description + "TCM3 Upstream Connection Locked"; + uses ODU-EDM-ALARM; + } + container tcm3-iae { + description + "TCM3 Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm3-biae { + description + "TCM3 Backward Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm3-bdi { + description + "TCM3 Backward Defect Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm3-tim { + description + "TCM3 Trail Trace Identifier Mismatch "; + uses ODU-EDM-ALARM; + } + container tcm3-sf-ber { + description + "TCM3 SF BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm3-sd-ber { + description + "TCM3 SD BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm4-ais { + description + "TCM4 Alarm Indication Signal"; + uses ODU-EDM-ALARM; + } + container tcm4-ltc { + description + "TCM4 Loss of Tandem connection Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm4-oci { + description + "TCM4 Open Connection Indiction"; + uses ODU-EDM-ALARM; + } + container tcm4-lck { + description + "TCM4 Upstream Connection Locked"; + uses ODU-EDM-ALARM; + } + container tcm4-iae { + description + "TCM4 Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm4-biae { + description + "TCM4 Backward Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm4-bdi { + description + "TCM4 Backward Defect Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm4-tim { + description + "TCM4 Trail Trace Identifier Mismatch "; + uses ODU-EDM-ALARM; + } + container tcm4-sf-ber { + description + "TCM4 SF BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm4-sd-ber { + description + "TCM4 SD BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm5-ais { + description + "TCM5 Alarm Indication Signal"; + uses ODU-EDM-ALARM; + } + container tcm5-ltc { + description + "TCM5 Loss of Tandem connection Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm5-oci { + description + "TCM5 Open Connection Indiction"; + uses ODU-EDM-ALARM; + } + container tcm5-lck { + description + "TCM5 Upstream Connection Locked"; + uses ODU-EDM-ALARM; + } + container tcm5-iae { + description + "TCM5 Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm5-biae { + description + "TCM5 Backward Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm5-bdi { + description + "TCM5 Backward Defect Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm5-tim { + description + "TCM5 Trail Trace Identifier Mismatch "; + uses ODU-EDM-ALARM; + } + container tcm5-sf-ber { + description + "TCM5 SF BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm5-sd-ber { + description + "TCM5 SD BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm6-ais { + description + "TCM6 Alarm Indication Signal"; + uses ODU-EDM-ALARM; + } + container tcm6-ltc { + description + "TCM6 Loss of Tandem connection Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm6-oci { + description + "TCM6 Open Connection Indiction"; + uses ODU-EDM-ALARM; + } + container tcm6-lck { + description + "TCM6 Upstream Connection Locked"; + uses ODU-EDM-ALARM; + } + container tcm6-iae { + description + "TCM6 Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm6-biae { + description + "TCM6 Backward Incoming Alignment Error"; + uses ODU-EDM-ALARM; + } + container tcm6-bdi { + description + "TCM6 Backward Defect Monitoring"; + uses ODU-EDM-ALARM; + } + container tcm6-tim { + description + "TCM6 Trail Trace Identifier Mismatch "; + uses ODU-EDM-ALARM; + } + container tcm6-sf-ber { + description + "TCM6 SF BER alarm"; + uses ODU-EDM-ALARM; + } + container tcm6-sd-ber { + description + "TCM6 SD BER alarm"; + uses ODU-EDM-ALARM; + } + container gfp-lfd { + description + "Loss Of Frame Delineation"; + uses ODU-EDM-ALARM; + } + container gfp-locs { + description + "Loss Of Client Signal"; + uses ODU-EDM-ALARM; + } + container gfp-loccs { + description + "Loss Of Character Synchronization"; + uses ODU-EDM-ALARM; + } + container gfp-upm { + description + "User Payload Mismatch"; + uses ODU-EDM-ALARM; + } + } + + grouping ODU-CHILD-TS-INFO { + description + "ODU Child Ts"; + leaf intf-name { + type string { + length "0..64"; + } + description + "Child Interface Name"; + } + leaf tpn-value { + type uint8; + description + "Tpn Bitmap"; + } + leaf ts-bitmap { + type string { + length "0..256"; + } + description + "Ts Bitmap"; + } + } + + grouping ODU-FWD-REF-ODU-INFO { + description + "ODU FWD_REFERENCE ODU"; + leaf od-uuser { + type Odu-user-et; + description + " ODU User"; + } + leaf resource-state { + type Odu-resource-et; + description + "Resource State"; + } + } + + grouping ODU-TTI-LIST-ST { + description + "TTI Sapi Dapi List"; + list sapi { + description + "tx String in list"; + leaf entry { + type uint8; + description + "tx String in list"; + } + } + list dapi { + description + "exp String in list"; + leaf entry { + type uint8; + description + "exp String in list"; + } + } + list operator-specific { + description + "rec String in list"; + leaf entry { + type uint8; + description + "rec String in list"; + } + } + } + + grouping ODU-TTI-ST { + description + "TTI Sapi Dapi"; + leaf-list sapi { + type uint8; + description + "tx String"; + } + leaf-list dapi { + type uint8; + description + "exp String"; + } + leaf-list operator-specific { + type uint8; + description + "rec String"; + } + } + + grouping ODU-G709-TTI { + description + "TTI"; + container tx { + description + "String Sent"; + uses ODU-TTI-ST; + } + container exp { + description + "String Expected"; + uses ODU-TTI-ST; + } + container rec { + description + "String Received"; + uses ODU-TTI-ST; + } + container transmit { + description + "String Sent in list"; + uses ODU-TTI-LIST-ST; + } + container expected { + description + "String Expected in list"; + uses ODU-TTI-LIST-ST; + } + container received { + description + "String Received in list"; + uses ODU-TTI-LIST-ST; + } + leaf g709tti-sent-mode { + type Odu-tti-et; + description + "G709TTI Sent"; + } + leaf g709tti-exp-mode { + type Odu-tti-et; + description + "G709TTI Expected"; + } + leaf g709tti-rec-mode { + type Odu-tti-et; + description + "G709TTI Recieved"; + } + } + + grouping OTN-ODU-REMOTE-INFO-VIA-TTI-T-RTRID-IFINDEX { + description + "otn odu remote info via tti t rtrid ifindex"; + leaf router-id { + type uint32; + description + "Router ID"; + } + leaf if-index { + type uint32; + description + "IfIndex"; + } + } + + grouping ODU-PER-PORT-INFO { + description + "ODU"; + container local { + description + "TTI"; + uses OTN-ODU-REMOTE-INFO-VIA-TTI-T-RTRID-IFINDEX; + } + container remote { + description + "Remote"; + uses OTN-ODU-REMOTE-INFO-VIA-TTI-T-RTRID-IFINDEX; + } + container tti-mode { + description + "TTI"; + uses ODU-G709-TTI; + } + container odu-fwd-ref { + description + "ODU fwd_ref "; + uses ODU-FWD-REF-ODU-INFO; + } + container alarm { + description + "Alarm"; + uses ODU-ALARM-INFO; + } + container te-ctx-data { + description + "Label Get Data"; + uses OTM-OPTICAL-RM-CTXT-DATA; + } + container xc-add-ctx-data { + description + "Xconnect Add Data"; + uses OTM-OPTICAL-RM-CTXT-DATA; + } + container xc-rem-ctx-data { + description + "Xconnect Remove Data"; + uses OTM-OPTICAL-RM-CTXT-DATA; + } + container odu-delay { + description + "ODU Delay"; + uses ODU-DELAY-INFO; + } + container odu-terminate-ether { + description + "odu terminate ether"; + uses ODU-TERMINATE-ETHER-INFO; + } + container ains-info { + description + "AINS information"; + uses ODU-AINS-HW-INFO; + } + container oduca-info { + description + "ODU CA Info"; + uses ODU-CA-MODE-INFO; + } + leaf state { + type Odu-state-et; + description + "Admin State"; + } + leaf led-state { + type Odu-led-state-et; + description + "LED State"; + } + leaf sf { + type uint8; + description + "SF in the form of 1.0E - "; + } + leaf sd { + type uint8; + description + "SD in the form of 1.0E - "; + } + leaf loopback-mode { + type Odu-loop-back-mode; + description + "Loopback"; + } + leaf derived-mode { + type Odu-der-state; + description + "Derived State"; + } + leaf inherit-sec-state { + type Odu-sec-state; + description + "Sec State "; + } + leaf config-sec-state { + type Odu-sec-state; + description + "Sec State "; + } + leaf gcc-mode { + type boolean; + description + "ODU GCC"; + } + leaf child-name { + type string { + length "0..64"; + } + description + "Child Name"; + } + leaf max-odu-child { + type uint8; + description + "ODU maximum no of children"; + } + leaf od-uuser { + type Odu-user-et; + description + " ODU User"; + } + leaf resource-state { + type Odu-resource-et; + description + "Resource State"; + } + leaf pt-type { + type Odu-pt-type-et; + description + "PT type"; + } + leaf flex-type { + type Odu-flex-type-et; + description + "FLEX type"; + } + leaf flex-bw { + type uint32; + description + "FLEX bw"; + } + leaf flex-tolerence { + type uint16; + description + "FLEX tolerence"; + } + leaf option { + type uint8; + description + "Option"; + } + leaf tpn-value { + type uint8; + description + "TPN"; + } + leaf num-ts { + type uint8; + description + "Number of TS"; + } + leaf ts-g { + type Odu-ts-g-et; + description + "TS Granuality"; + } + leaf ts-b { + type string { + length "0..256"; + } + description + "child ts bitmap"; + } + leaf tpn-b { + type string { + length "0..256"; + } + description + "tpn bitmap"; + } + leaf pts-b { + type string { + length "0..256"; + } + description + "ts bitmap"; + } + leaf fwd-ref { + type string { + length "0..64"; + } + description + "fwd ref"; + } + leaf xc-id { + type uint32; + description + "Xconnect ID"; + } + leaf xconnect-name { + type string; + description + "Xconnect Name"; + } + leaf fwd-ref-ifhandle { + type uint32; + description + "fwd_ref ifhandle"; + } + leaf no-parent-slot { + type uint32; + description + "Number of parent slot"; + } + leaf xc-resp-code { + type Dp-programmed; + description + "Odu Xconnect Response code"; + } + leaf performance-monitoring { + type Odu-per-mon; + description + "Performance Monitoring"; + } + leaf pmtimca { + type Odu-pm-ca-et; + description + "PM TIM-CA state"; + } + leaf pm-mode { + type Odu-pm-mode; + description + "ODU PM Mode"; + } + leaf nv-optical-support { + type boolean; + description + "NV Optical support"; + } + leaf gmpls-tti-mode { + type Gmpls-tti-mode; + description + "tti mode"; + } + leaf gmpls-tcm-id { + type uint8; + description + "tcm id"; + } + leaf ple-supported { + type boolean; + description + "PLE supported "; + } + leaf xc-unsupported { + type boolean; + description + "Flag indicating if cross-connect is unsupported"; + } + list odu { + description + "Child Ts"; + uses ODU-CHILD-TS-INFO; + } + list odutcm { + description + "ODU TCM"; + uses ODU-TCM-INFO; + } + } + + grouping ODU-PRBS-INFO { + description + "PRBS"; + leaf odu-prbs-test { + type Odu-prbs-test; + description + "odu prbs test"; + } + leaf odu-prbs-mode { + type Odu-prbs-mode; + description + "odu prbs mode"; + } + leaf odu-prbs-pattern { + type Odu-prbs-pattern; + description + "odu prbs pattern"; + } + leaf odu-prbs-status { + type Odu-prbs-status; + description + "odu prbs status"; + } + leaf odu-prbs-direction { + type Odu-prbs-direct-ion; + description + "odu prbs direction"; + } + leaf odu-prbs-err-inject { + type Odu-prbs-err-inject; + description + "odu prbs error inject"; + } + leaf odu-prbs-locked-time-elapsed { + type uint32; + description + "prbs locked status time elapsed"; + } + leaf odu-prbs-bit-errors { + type uint32; + description + "prbs bit errors"; + } + leaf odu-prbs-user-pattern { + type uint64; + description + "odu prbs user defined pattern"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper.yang new file mode 100644 index 000000000..0e821b256 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-odu-oper.yang @@ -0,0 +1,124 @@ +module Cisco-IOS-XR-controller-odu-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-odu-oper"; + prefix controller-odu-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-odu-oper-sub1 { + revision-date 2022-02-15; + } + + 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 controller-odu package operational data. + + This module contains definitions + for the following management objects: + odu: ODU operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-15 { + description + "Added 3 new enums to odu pt type. + 2021-12-01 + Added LED State + 2021-08-10 + Added PRBS error-inject feature support."; + semver:module-version "1.5.0"; + } + revision 2021-05-21 { + description + "Added support for ODU PLE information."; + semver:module-version "1.4.0"; + } + revision 2021-02-21 { + description + "Added IS_CEM_PACKETIZED to odu_resource_et enum for Private Line Emulation feature. + 2020-11-11 + Added PRBS bit errors and lock time support in bag odu_prbs_info. + 2020-09-25 + Added PRBS direction feature support. + 2020-09-22 + Changed existing bag to contain one more enum value for odu pt type + 2020-09-12 + Created New Bag for ODTU Remote Info and Far End Child Info."; + semver:module-version "1.3.0"; + } + revision 2019-08-05 { + description + "Separated ODTU info variables from ODU info bag and created new bag for ODTU data."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container odu { + config false; + description + "ODU operational data"; + container controllers { + description + "All ODU Port operational data"; + list controller { + key "controller-name"; + description + "ODU Port operational data"; + container prbs { + description + "ODU port operational data"; + uses ODU-PRBS-INFO; + } + container info { + description + "ODU port operational data"; + uses ODU-PER-PORT-INFO; + } + container ple-info { + description + "ODU PLE info"; + uses ODU-PLE-INFO-ST; + } + container cem-parameters { + description + "ODU CEM parameters"; + uses ODU-CEM-PARAM-ST; + } + container odtu-info { + description + "ODU port ODTU data"; + uses ODU-ODTU-OPER-DATA; + } + leaf controller-name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-cfg.yang new file mode 100644 index 000000000..31d452a17 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-cfg.yang @@ -0,0 +1,147 @@ +module Cisco-IOS-XR-controller-oms-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-oms-cfg"; + prefix controller-oms-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-oms package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-28 { + description + "oms-tone-rate datatype is changed to signed int32"; + semver:module-version "1.0.0"; + } + revision 2022-08-23 { + description + "length 8..64 is added"; + } + revision 2022-03-21 { + description + "Name of the enum ThresholdType is changed to OmsThresholdType"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Oms-threshold { + type enumeration { + enum "low" { + value 1; + description + "Low Threshold"; + } + enum "high" { + value 2; + description + "High Threshold"; + } + } + description + "Oms threshold"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container oms { + description + "Oms controller configuration"; + container rx-thresholds { + description + "Configure RX threshold"; + list rx-threshold { + key "rx-threshold-type"; + description + "Configure transponder receive power threshold"; + leaf rx-threshold-type { + type Oms-threshold; + description + "Low or high rx threshold"; + } + leaf rx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm)"; + } + } + } + container tx-thresholds { + description + "Configure TX threshold"; + list tx-threshold { + key "tx-threshold-type"; + description + "Configure transponder transmit power threshold"; + leaf tx-threshold-type { + type Oms-threshold; + description + "Low or high tx threshold"; + } + leaf tx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm"; + } + } + } + leaf oms-tone-rate { + type int32 { + range "2..25"; + } + description + "Configure Tone Rate"; + } + leaf oms-tone-pattern-expected { + type string { + length "8..64"; + } + description + "Enter Hex Values(Min Length 8 Bytes to Max + Length 64 Bytes)"; + } + leaf oms-tone-detect-oob { + type empty; + description + "configure tone detect oob"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper-sub1.yang new file mode 100644 index 000000000..2a66ae7ac --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper-sub1.yang @@ -0,0 +1,301 @@ +submodule Cisco-IOS-XR-controller-oms-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-oms-oper { + prefix Cisco-IOS-XR-controller-oms-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-oms package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-23 { + description + "total-rx-power leaf is changed to rx-power in oms-info container"; + semver:module-version "1.0.0"; + } + revision 2022-03-25 { + description + "Added transport_admin_state for OMS controller"; + } + revision 2021-06-28 { + description + "New Oper Model Added for Oms Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-tas { + type enumeration { + enum "ots-tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ots-tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ots-tas-ui-is" { + value 2; + description + "In Service"; + } + enum "ots-tas-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ots tas"; + } + + typedef Conn-verfcn-state { + type enumeration { + enum "conn-vrfcn-state-failed" { + value 0; + description + "Failed"; + } + enum "conn-vrfcn-state-inprogress" { + value 1; + description + "Inprogress"; + } + enum "conn-vrfcn-state-success" { + value 2; + description + "Success"; + } + enum "conn-vrfcn-state-not-running" { + value 3; + description + "Notrunning"; + } + } + description + "Conn verfcn state"; + } + + typedef Led-state { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "na" { + value 7; + description + "Not Applicable"; + } + } + description + "Led state"; + } + + typedef Ots-controller-state { + type enumeration { + enum "ots-state-up" { + value 0; + description + "Up"; + } + enum "ots-state-down" { + value 1; + description + "Down"; + } + enum "ots-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Ots controller state"; + } + + grouping OTS-TONE-INFO { + description + "Ots Tone information"; + leaf tone-freq { + type string; + description + "Tone Frequency"; + } + leaf tone-rate { + type uint32; + description + "Tone Rate"; + } + leaf pattern { + type string; + description + "Tone pattern"; + } + leaf pattern-expected { + type string; + description + "Tone pattern expected"; + } + leaf dectected-oob { + type uint32; + description + "Detected OOB"; + } + leaf state { + type Conn-verfcn-state; + description + "Connection verification state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pattern-received { + type string; + description + "Tone pattern received"; + } + } + + grouping OTS-ALARM-INFO { + description + "Optics Alarm Detail"; + leaf is-detected { + type boolean; + description + "is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OMS-EDM-INFO { + description + "OMS controller operational information"; + container rx-los-p { + description + "RC LOS P"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX POWER FAIL LOW"; + uses OTS-ALARM-INFO; + } + container oms-tone-info { + description + "Oms tone info"; + uses OTS-TONE-INFO; + } + leaf rx-power { + type int32; + description + " Receive Power for OMS in units of 0.01 dBm"; + } + leaf tx-power { + type int32; + description + " Transmit Power for OMS in units of 0.01 dBm"; + } + leaf channel-frequency { + type uint32; + description + "Frequency read from hw in the units of 0.01THz"; + } + leaf channel-width { + type uint32; + description + "Channel Width (in Unit of 0.1 GHz)"; + } + leaf channel-wavelength { + type uint32; + description + "Wavelength in unit of 0.01 nm"; + } + leaf add-drop-port { + type string; + description + "Add Drop port ots R/S/I/P"; + } + leaf controller-state { + type Ots-controller-state; + description + "Ots controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf led-state { + type Led-state; + description + "Showing Current Colour of led state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf transport-admin-state { + type Ots-tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper.yang new file mode 100644 index 000000000..ee8a4af04 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-oms-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-controller-oms-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-oms-oper"; + prefix controller-oms-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-oms-oper-sub1 { + revision-date 2022-05-23; + } + + 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 controller-oms package operational data. + + This module contains definitions + for the following management objects: + oms-oper: Oms operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-23 { + description + "total-rx-power leaf is changed to rx-power in oms-info container"; + semver:module-version "1.0.0"; + } + revision 2022-03-25 { + description + "Added transport_admin_state for OMS controller"; + } + revision 2021-06-28 { + description + "New Oper Model Added for Oms Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container oms-oper { + config false; + description + "Oms operational data"; + container oms-ports { + description + "All Oms Port operational data"; + list oms-port { + key "name"; + description + "Oms operational data"; + container oms-info { + description + "Oms operational data"; + uses OMS-EDM-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-cfg.yang new file mode 100644 index 000000000..d10b28c54 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-cfg.yang @@ -0,0 +1,960 @@ +module Cisco-IOS-XR-controller-optics-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-optics-cfg"; + prefix controller-optics-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-optics package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-22 { + description + "Support for nleq mode 5 + 2021-11-27 + Added Dac Rate parameter to Config Schema."; + semver:module-version "2.1.0"; + } + revision 2021-06-29 { + description + "change the optics-ots-tx-voa-attenuation type to int32 + 2021-06-29 + change the optics-ots-rx-voa-attenuation type to int32 + 2021-06-29 + change the optics-ots-rx-low-threshold-psd type to int32 + 2021-06-29 + change the optics-ots-rx-low-threshold-deltatype to int32 + 2021-06-29 + change the optics-ots-amplifier-gain-degrade-low-threshold type to int32 + 2021-06-29 + change the optics-ots-amplifier-gain-degrade-high-threshold type to int32 + 2021-06-29 + change the optics-ots-amplifier-gain type to int32 + 2021-06-29 + change the optics-ots-amplifier-channel-psd type to int32 + 2021-06-18 + Added support for signed number ranges on OTS controllers + 2021-06-14 + Range changed for 100MHZ Frequency"; + semver:module-version "2.0.0"; + } + revision 2021-01-20 { + description + "Enteries added for two new FEC types in schema. + 2020-09-18 + Transceiver disable added for OTS controller + 2020-07-24 + New Cfg Model Added for optics yang for FastPoll + 2020-05-06 + Entries added in FEC enum in bag and schema"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Range increased for Optics transmit power. IosSetYangSchemaRev Cisco-IOS-XR-controller-optics-cfg"; + semver:module-version "1.1.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Optics-fec { + type enumeration { + enum "fec-none" { + value 0; + description + "No Fec"; + } + enum "fec-h15" { + value 1; + description + "Enhanced H15"; + } + enum "fec-h25" { + value 2; + description + "Enhanced H25"; + } + enum "fec-h15-de" { + value 4; + description + "Enhanced H15 DE"; + } + enum "fec-h25-de" { + value 8; + description + "Enhanced H25 DE"; + } + enum "fec-not-set" { + value 32; + description + "Disable the FEC"; + } + enum "fec-1i7" { + value 128; + description + "Enhanced 1I7"; + } + enum "fec-1i4" { + value 256; + description + "Enhanced 1I4"; + } + enum "fec-swizzle" { + value 512; + description + "Enhanced Swizzle"; + } + enum "fec-hg20" { + value 1024; + description + "Enhanced HG20"; + } + enum "fec-hg7" { + value 2048; + description + "Enhanced HG7"; + } + enum "fec-sd20" { + value 4096; + description + "SoftDecision 20"; + } + enum "fec-sd7" { + value 8192; + description + "SoftDecision 7"; + } + enum "fec-sd15" { + value 16384; + description + "SoftDecision 15"; + } + enum "fec-sd27" { + value 32768; + description + "SoftDecision 27"; + } + enum "fec-sd15-de" { + value 65536; + description + "SoftDecision 15 with DE"; + } + enum "fec-staircase-de" { + value 131072; + description + "Enhanced Staircase FEC with DE"; + } + enum "fec-ofec" { + value 262144; + description + "OFEC"; + } + enum "fec-cfec" { + value 524288; + description + "CFEC"; + } + enum "fec-stndrd" { + value 1048576; + description + "Standard"; + } + enum "fec-cl74" { + value 2097152; + description + "CL74"; + } + enum "fec-cl108" { + value 4194304; + description + "CL108"; + } + enum "fec-all" { + value 8388608; + description + "All"; + } + } + description + "Optics fec"; + } + + typedef Optics-ots-ampli-control-mode { + type enumeration { + enum "automatic" { + value 1; + description + "Automatic Amplifier Mode"; + } + enum "manual" { + value 2; + description + "Manual Amplifier Mode"; + } + } + description + "Optics ots ampli control mode"; + } + + typedef Threshold { + type enumeration { + enum "low" { + value 1; + description + "Low Threshold"; + } + enum "high" { + value 2; + description + "High Threshold"; + } + } + description + "Threshold"; + } + + typedef Optics-dwdm-carrier-param { + type enumeration { + enum "itu-ch" { + value 0; + description + "ITU Wave Channel Number"; + } + enum "wavelength" { + value 1; + description + "Wavelength in nm"; + } + enum "frequency" { + value 2; + description + "Frequency in Hertz"; + } + } + description + "Optics dwdm carrier param"; + } + + typedef Optics-ots-safety-control-mode { + type enumeration { + enum "auto" { + value 1; + description + "Automatic Safety Control Mode"; + } + enum "disabled" { + value 2; + description + "Disable Safety Control Mode"; + } + } + description + "Optics ots safety control mode"; + } + + typedef Optics-modulation { + type enumeration { + enum "none" { + value 0; + description + "No Modulation Type"; + } + enum "bpsk" { + value 1; + description + "ModType BPSK"; + } + enum "qpsk" { + value 2; + description + "ModType QPSK"; + } + enum "8qam" { + value 3; + description + "ModType 8QAM"; + } + enum "16qam" { + value 4; + description + "ModType 16QAM"; + } + enum "32qam" { + value 5; + description + "ModType 32QAM"; + } + enum "64qam" { + value 6; + description + "ModType 64QAM"; + } + enum "bpsk-qspk" { + value 7; + description + "ModType BPSK_QPSK"; + } + enum "qpsk-8qam" { + value 8; + description + "ModType QPSK_8QAM"; + } + enum "8qam-16qam" { + value 9; + description + "ModType 8QAM_16QAM"; + } + enum "16qam-32qam" { + value 10; + description + "ModType 16QAM_32QAM"; + } + enum "32qam-64qam" { + value 11; + description + "ModType 32QAM_64QAM"; + } + } + description + "Optics modulation"; + } + + typedef Optics-ots-ampli-gain-range { + type enumeration { + enum "normal" { + value 1; + description + "Normal Amplifier Gain Range"; + } + enum "extended" { + value 2; + description + "Extended Amplifier Gain Range"; + } + } + description + "Optics ots ampli gain range"; + } + + typedef Optics-dacrate { + type enumeration { + enum "none" { + value 0; + description + "DAC Rate none"; + } + enum "1x1" { + value 1; + description + "DAC Rate 1:1 Sampling off"; + } + enum "1x1.25" { + value 2; + description + "DAC Rate 1:1.25"; + } + enum "1x1.50" { + value 3; + description + "DAC Rate 1:1.50"; + } + enum "1x1.75" { + value 4; + description + "DAC Rate 1:1.75"; + } + enum "1x2" { + value 5; + description + "DAC Rate 1:2"; + } + } + description + "Optics dacrate"; + } + + typedef Optics-dwdm-carrier-grid { + type enumeration { + enum "50g-hz-grid" { + value 0; + description + "50GHz Grid"; + } + enum "100mhz-grid" { + value 1; + description + "100MHz Grid"; + } + } + description + "Optics dwdm carrier grid"; + } + + typedef Optics-loopback { + type enumeration { + enum "none" { + value 0; + description + "No Loopback"; + } + enum "internal" { + value 1; + description + "Internal Loopback"; + } + enum "line" { + value 2; + description + "Line Loopback"; + } + } + description + "Optics loopback"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container optics { + description + "Optics controller configuration"; + container rx-thresholds { + description + "Configure Rx threshold"; + list rx-threshold { + key "rx-threshold-type"; + description + "Optics RX Low or high threshold configuration"; + leaf rx-threshold-type { + type Threshold; + description + "Low or high rx threshold"; + } + leaf rx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm)"; + } + } + } + container rx-voa { + description + "Rx-voa configuration"; + leaf target-power { + type int32 { + range "-190..30"; + } + description + "Receive Target Power in 0.1 dbm"; + } + leaf fixed-ratio { + type int32 { + range "100..1700"; + } + description + "Receive Ratio of Optical Attenuation in 0.01 + db"; + } + } + container optics-network-srlgs { + description + "Configure Network srlgs"; + list optics-network-srlg { + key "set-id"; + description + "Configure network srlg sets"; + leaf set-id { + type uint32 { + range "1..17"; + } + description + "Set index"; + } + leaf srlg1 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg2 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg3 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg4 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg5 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg6 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + } + } + container optics-dwdm-carrier { + presence "Indicates a optics-dwdm-carrier node is configured."; + description + "Configure optics DWDM Carrier"; + leaf grid-type { + type Optics-dwdm-carrier-grid; + mandatory true; + description + "DWDM Channel Grid Type"; + } + leaf param-type { + type Optics-dwdm-carrier-param; + mandatory true; + description + "DWDM Channel Parameter Type ITU-Channel or + Frequency or Wavelength"; + } + leaf param-value { + type uint32 { + range "1..1961375"; + } + mandatory true; + description + "Type ITU-Channel Range 1-100, Frequency Range + 19115-19610, Wavelength Range 1528773-1568362, + 100MHz Frequency Range 1861000-1961375"; + } + } + container optics-lanes { + description + "Optics lanes"; + list optics-lane { + key "index"; + description + "Lane"; + leaf description { + type string { + length "1..255"; + } + description + "Configure description for this Lane"; + } + leaf index { + type uint32; + description + "Lane Number"; + } + } + } + container tx-thresholds { + description + "Configure Tx threshold"; + list tx-threshold { + key "tx-threshold-type"; + description + "Optics TX Low or high threshold configuration"; + leaf tx-threshold-type { + type Threshold; + description + "Low or high tx threshold"; + } + leaf tx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm)"; + } + } + } + container transceiver { + description + "Transceiver"; + leaf disable { + type empty; + description + "Disable the transceiver module, treating it as + not inserted. When the configuration is + removed, the transceiver module on that port, + if present, would be initialized as if it is + just inserted"; + } + } + container submarine-params { + description + "Proprietary Submarine Parameters"; + list submarine-param { + key "param-type"; + description + "Proprietary Submarine Parameters"; + leaf param-type { + type uint32 { + range "1..10"; + } + description + "Proprietary submarine parameter type"; + } + leaf param-value { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "Proprietary submarine parameter value"; + } + } + } + leaf optics-transmit-power { + type int32 { + range "-190..50"; + } + description + "Select power level (in units of 0.1dBm)"; + } + leaf optics-ots-rx-enable { + type boolean; + description + "Select Rx Enable as True or False"; + } + leaf nleq-comp-mode { + type uint32 { + range "1..5"; + } + description + "Select non linear effect compenstation mode"; + } + leaf optics-ots-rx-low-threshold-psd { + type int32 { + range "0..800000"; + } + description + "Rx Low threshold Psd value in units of 0.001 + nW/MHz"; + } + leaf filter-roll-off-factor { + type string { + length "5"; + } + description + "RRC Filter Roll-Off factor in increments of 0 + .001"; + } + leaf optics-ots-channel-power-max-delta { + type int32 { + range "-500..300"; + } + description + "Configure max delta among all measured channel + powers "; + } + leaf optics-loopback { + type Optics-loopback; + default "none"; + description + "Configure optics loopback mode "; + } + leaf optics-ots-osri { + type boolean; + description + "Configure Optical safety remote interlock + (OSRI)"; + } + leaf optics-ots-amplifier-gain-degrade-high-threshold { + type int32 { + range "0..500"; + } + description + "Select Amplifier Gain Degrade High Threshold(in + units of 0.1dBm)"; + } + leaf optics-ots-rx-voa-attenuation { + type int32 { + range "0..200"; + } + description + "Select RX Voa Attenuation Setpoint(in units of + 0.1dBm)"; + } + leaf optics-fastpoll { + type boolean; + default "true"; + description + "Select Fastpoll as Enable or Disable"; + } + leaf optics-fec { + type Optics-fec; + default "fec-none"; + description + "Fec H15 , Fec H25 , Fec NOTSET , Fec 1I7 , Fec + 1I4 , Fec SWIZZLE , Fec HG20 , Fec HG7 , Fec + SD20 , Fec SD7, Fec SD15 , Fec SD27 , Fec + SD15-DE , Fec STAIRCASE-DE , Fec OFEC , Fec + CFEC , Fec STNDRD"; + } + leaf optics-dgd-high-threshold { + type uint32 { + range "0..18000"; + } + description + "Select DGD high threshold(in units of 0.1ps)"; + } + leaf optics-ots-amplifier-channel-power { + type int32 { + range "-500..300"; + } + description + "Select Amplifier Channel Power(in units of 0 + .1dBm)"; + } + leaf optics-ots-amplifier-control-mode { + type Optics-ots-ampli-control-mode; + description + "Configure amplifier working mode"; + } + leaf optics-ots-rx-low-threshold-delta { + type int32 { + range "0..300"; + } + description + "Rx Low threshold delta value in units of 0.1dB"; + } + leaf cpr-ext-win-mode { + type uint32 { + range "1..9"; + } + description + "Select carrier phase recovery extended window + mode"; + } + leaf cross-pol-weight-mode { + type uint32 { + range "1..7"; + } + description + "Select carrier phase recovery cross + polarization weight mode"; + } + leaf optics-ots-amplifier-gain { + type int32 { + range "0..500"; + } + description + "Select Amplifier Gain value(in units of 0.1dBm)"; + } + leaf optics-ots-amplifier-gain-range { + type Optics-ots-ampli-gain-range; + description + "Normal or extended Ampli Gain Range"; + } + leaf optics-ots-safety-control-mode { + type Optics-ots-safety-control-mode; + description + "Configure safety Control Mode"; + } + leaf optics-cd-min { + type int32 { + range "-350000..350000"; + } + description + "Select min chromatic dispersion (in units of + ps/nm)"; + } + leaf optics-ots-amplifier-channel-psd { + type int32 { + range "0..800000"; + } + description + "Select Amplifier Channel Psd(in units of 0.001 + nW/MHz)"; + } + leaf optics-ots-tx-voa-attenuation { + type int32 { + range "0..200"; + } + description + "Select TX Voa Attenuation Setpoint(in units of + 0.1dBm)"; + } + leaf optics-ots-tx-enable { + type boolean; + description + "Select Tx Enable as True or False"; + } + leaf optics-ots-amplifier-tilt { + type int32 { + range "-50..50"; + } + description + "Select Amplifier Tilt value(in units of 0.1dB)"; + } + leaf optics-transmit-shutdown { + type boolean; + description + "Configure optics transmit laser shutdown "; + } + leaf optics-baud-rate { + type string { + length "1..20"; + } + description + "BaudRate(Max Length 10)"; + } + leaf optics-performance-monitoring { + type boolean; + default "true"; + description + "Select Performance Monitoring as Enable or + Disable"; + } + leaf optics-cd-max { + type int32 { + range "-350000..350000"; + } + description + "Select max chromatic dispersion (in units of + ps/nm)"; + } + leaf optics-modulation { + type Optics-modulation; + description + "BPSK,QPSK,8QAM,16QAM,32QAM,64QAM,BPSK-QPSK + ,QPSK-8QAM,8QAM-16QAM,16QAM-32QAM,32QAM-64QAM"; + } + leaf cpr-win-mode { + type uint32 { + range "1..4"; + } + description + "Select carrier phase recovery window mode"; + } + leaf optics-bits-per-symbol { + type string { + length "1..20"; + } + description + "BitsPerSymbol(Max Length 9)"; + } + leaf enh-sop-tol-mode { + type uint32 { + range "1..3"; + } + description + "Select enhanced SOP tolerance mode"; + } + leaf cross-pol-gain-mode { + type uint32 { + range "1..15"; + } + description + "Select carrier phase recovery cross + polarization gain mode"; + } + leaf optics-lbc-high-threshold { + type uint32 { + range "0..100"; + } + description + "Select power level (in units of percentage)"; + } + leaf optics-cd-high-threshold { + type int32 { + range "-350000..350000"; + } + description + "Select chromatic dispersion high threshold(in + units of ps/nm)"; + } + leaf optics-dacrate { + type Optics-dacrate; + description + "Configure optics sampling rate "; + } + leaf optics-osnr-low-threshold { + type uint32 { + range "0..4000"; + } + description + "Select OSNR low threshold(in units of 0.01db)"; + } + leaf optics-ots-amplifier-gain-degrade-low-threshold { + type int32 { + range "0..500"; + } + description + "Select Amplifier Gain Degrade Low Threshold(in + units of 0.1dBm)"; + } + leaf optics-cd-low-threshold { + type int32 { + range "-350000..350000"; + } + description + "Select chromatic dispersion low threshold(in + units of ps/nm)"; + } + leaf enh-colorless-mode { + type uint32 { + range "1..3"; + } + description + "Select enhanced colorless mode"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper-sub1.yang new file mode 100644 index 000000000..53ed69a45 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper-sub1.yang @@ -0,0 +1,4697 @@ +submodule Cisco-IOS-XR-controller-optics-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-optics-oper { + prefix Cisco-IOS-XR-controller-optics-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-optics package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "enum added for new Optics Phy Type for 400G Bright ZRP module + 2022-11-04 + enum OPTICS_FORM_FACTOR_OSFP added in Form Factor list for OSFP module + 2022-10-02 + enum added for new Optics Phy Type for QSFP-DD DUAL EDFA module + 2022-09-10 + enum added for new Optics Phy Type for 2x400G LR4 module + 2022-05-10 + enum added for new Optics Phy Type for Credo 800G AEC + 2022-04-22 + enum added for new Optics Phy Type for 8x100G FR module + 2022-02-03 + Added power fields in mW unit in Grey lane data + 2022-01-28 + introducing lane0 alarm counters paramaters for those platforms which want to use lanes from 0-7 + 2022-01-27 + Added power fields for mW unit in optics transponder information + 2022-01-20 + enum added for new QSA Adapter Cazadero28 + 2022-01-07 + enum added for new Optics Phy Type for 400G SR8 module + 2022-01-06 + New Enum OPTICS_PHY_TYPE_1G_LH are added in enum OpticsPhyType + 2021-12-22 + enum added for new Optics Phy Type 100m FE FX + 2021-12-03 + enumadded for new Optics Phy Type for 200G FR4 modules + 2021-11-27 + Added Dac Rate field in optics_edm_info. + 2021-11-22 + Added threshold fields for mW unit in optics transponder information + 2021-10-08 + enum added for new Optics Phy Type for 800G ELB module + 2021-09-20 + enum added for new Optics Phy Type for 2x400G FR and 8x100 DR module"; + semver:module-version "5.1.0"; + } + revision 2021-09-17 { + description + "enumadded for new Optics Phy Type for 200G Cu, 200G AOC, 2x200G CU and 2x200G AOC modules + 2021-07-30 + New Enum OPTICS_PHY_TYPE_100G_ERL are added in enum OpticsPhyType + 2021-07-06 + enum added for new Optics Phy Type for 4x100G LR module + 2021-06-22 + New OPTICS_PHY_TYPE_16G_FC,OPTICS_PHY_TYPE_32G_FC are added in enum OpticsPhyType + 2021-06-21 + New Enums added for FibreChannel 16G and 32G Optics Phy type + 2021-06-10 + New parameters added in bag + 2021-05-27 + DAC rate and Laser temperature and laser age Added for Optics Controller"; + semver:module-version "5.0.0"; + } + revision 2021-04-14 { + description + "New Enums added for Multirate Optics Phy type + 2021-03-22 + New Enums added for Optics Phy type + 2021-02-23 + enum added for new Optics Phy Type for 400G LR4 module + 2021-02-19 + enum added for 1 new Optics Phy Type and new value added to enum EthernetPmdType + 2021-02-17 + New OPTICS_ETH_100GBASE_DR_S added to enum EthernetPmdType + 2021-01-18 + Added 2 enums for New FEC Type. + 2020-12-23 + New value added to enum EthernetPmdType + 2020-11-24 + Enum value in optics_modulation_type is changed from MODE_16QAM_32QAM to MOD_16QAM_32QAM + 2020-11-10 + enum added for 1 new Optics Phy Type for 100G DR-S optics module + 2020-09-10 + removed optics_edm_fastpoll_info and added new bag optics_edm_fastpoll_data + 2020-08-02 + New values added to enum FiberConnectorType + 2020-07-24 + New value added in optics yang for FastPollInfo + 2020-07-14 + New value added to enum EthernetPmdType"; + semver:module-version "4.0.0"; + } + revision 2020-04-26 { + description + "New value added to enum EthernetPmdType + 2020-02-24 + enum added for OTN Application code. + 2020-02-19 + enum added for 1 new Optics Phy Type + 2020-01-31 + enum added for 1 new Optics Phy Type + 2020-01-27 + Added new parameters in optics bag to display parameters which are not configurable + 2019-12-05 + enum added for 2 new OTN Application codes. + 2019-11-30 + Back Reflection data field is added in bag. + 2019-09-30 + chan_num data field is added to support L-Band frequency range."; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Optics-dac-rate { + type enumeration { + enum "dac-rate-none" { + value 0; + description + "none"; + } + enum "dac-rate-1x1" { + value 1; + description + "1x1"; + } + enum "dac-rate-1x1-25" { + value 2; + description + "1x1.25"; + } + enum "dac-rate-1x1-50" { + value 3; + description + "1x1.50"; + } + enum "dac-rate-1x1-75" { + value 4; + description + "1x1.75"; + } + enum "dac-rate-1x2" { + value 5; + description + "1x2"; + } + } + description + "Optics dac rate"; + } + + typedef Ots-back-reflection-state { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Ots back reflection state"; + } + + typedef Optics-ains-state-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "active-running" { + value 1; + description + "Running"; + } + enum "active-pending" { + value 2; + description + "Pending"; + } + } + description + "Optics ains state et"; + } + + typedef Ethernet-pmd { + type enumeration { + enum "optics-eth-not-set" { + value 0; + description + "Not set"; + } + enum "optics-eth-10gbase-lrm" { + value 1; + description + "10GBASE LRM"; + } + enum "optics-eth-10gbase-lr" { + value 2; + description + "10GBASE LR"; + } + enum "optics-eth-10gbase-zr" { + value 3; + description + "10GBASE ZR"; + } + enum "optics-eth-10gbase-er" { + value 4; + description + "10GBASE ER"; + } + enum "optics-eth-10gbase-sr" { + value 5; + description + "10GBASE SR"; + } + enum "optics-eth-10gbase" { + value 6; + description + "10GBASE T"; + } + enum "optics-eth-40gbase-cr4" { + value 7; + description + "40GBASE CR4"; + } + enum "optics-eth-40gbase-sr4" { + value 8; + description + "40GBASE SR4"; + } + enum "optics-eth-40gbase-lr4" { + value 9; + description + "40GBASE LR4"; + } + enum "optics-eth-40gbase-er4" { + value 10; + description + "40GBASE ER4"; + } + enum "optics-eth-40gbase-psm4" { + value 11; + description + "40GBASE PSM4"; + } + enum "optics-eth-40gbase-csr4" { + value 12; + description + "40GBASE CSR4"; + } + enum "optics-eth-40gbase-sr-bd" { + value 13; + description + "40GBASE SR BD"; + } + enum "optics-eth-40g-aoc" { + value 14; + description + "40G AOC"; + } + enum "optics-eth-4x10gbase-lr" { + value 15; + description + "4X10GBASE LR"; + } + enum "optics-eth-4x10gbase-sr" { + value 16; + description + "4X10GBASE SR"; + } + enum "optics-eth-100g-aoc" { + value 17; + description + "100G AOC"; + } + enum "optics-eth-100g-acc" { + value 18; + description + "100G ACC"; + } + enum "optics-eth-100gbase-sr10" { + value 19; + description + "100GBASE SR10"; + } + enum "optics-eth-100gbase-sr4" { + value 20; + description + "100GBASE SR4"; + } + enum "optics-eth-100gbase-lr4" { + value 21; + description + "100GBASE LR4"; + } + enum "optics-eth-100gbase-er4" { + value 22; + description + "100GBASE ER4"; + } + enum "optics-eth-100gbase-cwdm4" { + value 23; + description + "100GBASE CWDM4"; + } + enum "optics-eth-100gbase-clr4" { + value 24; + description + "100GBASE CLR4"; + } + enum "optics-eth-100gbase-psm4" { + value 25; + description + "100GBASE PSM4"; + } + enum "optics-eth-100gbase-cr4" { + value 26; + description + "100GBASE CR4"; + } + enum "optics-eth-100gbase-al" { + value 27; + description + "100GBASE AL"; + } + enum "optics-eth-100gbase-pl" { + value 28; + description + "100GBASE PL"; + } + enum "optics-eth-400gbase-fr4" { + value 29; + description + "400GBASE FR4"; + } + enum "optics-eth-400gbase-dr4" { + value 30; + description + "400GBASE DR4"; + } + enum "optics-eth-400gbase-cr8" { + value 31; + description + "400GBASE CR8"; + } + enum "optics-eth-100gbase-srbd" { + value 32; + description + "100GBASE SRBD"; + } + enum "optics-eth-100gbase-fr" { + value 33; + description + "100GBASE FR"; + } + enum "optics-eth-100gbase-lr" { + value 34; + description + "100GBASE LR"; + } + enum "optics-eth-400gbase-lr8" { + value 35; + description + "400GBASE LR8"; + } + enum "optics-eth-400gbase-aoc" { + value 36; + description + "400GBASE AOC"; + } + enum "optics-eth-100gbase-sm-sr" { + value 37; + description + "100GBASE SM SR"; + } + enum "optics-eth-100gbase-dr-s" { + value 38; + description + "100GBASE DR S"; + } + enum "optics-eth-40gbase-csr-s" { + value 39; + description + "40GBASE CSR S"; + } + enum "optics-eth-800gbase-cr8" { + value 40; + description + "800GBASE CR8"; + } + enum "optics-eth-undefined" { + value 41; + description + "Eth Undefined"; + } + } + description + "Ethernet Pmd Type"; + } + + typedef Sonet-application-code { + type enumeration { + enum "optics-sonet-not-set" { + value 0; + description + "Not Set"; + } + enum "optics-vsr2000-3r2" { + value 1; + description + "VSR2000 3R2"; + } + enum "optics-vsr2000-3r3" { + value 2; + description + "VSR2000 3R3"; + } + enum "optics-vsr2000-3r5" { + value 3; + description + "VSR2000 3R5"; + } + enum "optics-sonet-undefined" { + value 4; + description + "Undefined"; + } + } + description + "Sonet application code"; + } + + typedef Otn-application-code { + type enumeration { + enum "optics-not-set" { + value 0; + description + "Not Set"; + } + enum "optics-p1l1-2d1" { + value 1; + description + "P1L1 2D1"; + } + enum "optics-p1s1-2d2" { + value 2; + description + "P1S1 2D2"; + } + enum "optics-p1l1-2d2" { + value 3; + description + "P1L1 2D2"; + } + enum "optics-4i1-9d1f" { + value 4; + description + "4I1 9D1F"; + } + enum "optics-4l1-9c1f" { + value 5; + description + "4L1 9C1F"; + } + enum "optics-4i1-2d1f" { + value 6; + description + "4I1 2D1F"; + } + enum "optics-undefined" { + value 7; + description + "Undefined"; + } + } + description + "Otn application code"; + } + + typedef Fiber-connector { + type enumeration { + enum "optics-connect-or-not-set" { + value 0; + description + "Not Set"; + } + enum "optics-sc-connect-or" { + value 1; + description + "SC"; + } + enum "optics-lc-connect-or" { + value 2; + description + "LC"; + } + enum "optics-mpo-connect-or" { + value 3; + description + "MPO"; + } + enum "optics-aoc-connect-or" { + value 4; + description + "AOC"; + } + enum "optics-dac-connect-or" { + value 5; + description + "DAC"; + } + enum "optics-undefined-connect-or" { + value 6; + description + "Undefined"; + } + } + description + "Fiber connector"; + } + + typedef Optics-amplifier-safety-control-mode { + type enumeration { + enum "optics-amplifier-safety-mode-invalid" { + value 0; + description + "Invalid"; + } + enum "optics-amplifier-safety-mode-auto" { + value 1; + description + "auto"; + } + enum "optics-amplifier-safety-mode-disabled" { + value 2; + description + "disabled"; + } + } + description + "Optics amplifier safety control mode"; + } + + typedef Optics-amplifier-gain-range { + type enumeration { + enum "optics-amplifier-gain-range-invalid" { + value 0; + description + "Invalid"; + } + enum "optics-amplifier-gain-range-normal" { + value 1; + description + "Normal"; + } + enum "optics-amplifier-gain-range-ext-end-ed" { + value 2; + description + "Extended"; + } + } + description + "Optics amplifier gain range"; + } + + typedef Optics-amplifier-control-mode { + type enumeration { + enum "automatic" { + value 1; + description + "Automatic"; + } + enum "manual" { + value 2; + description + "Manual"; + } + } + description + "Optics amplifier control mode"; + } + + typedef Optics-port-status { + type enumeration { + enum "active" { + value 0; + description + "Active"; + } + enum "standby" { + value 1; + description + "Standby"; + } + } + description + "Optics port status"; + } + + typedef Optics-port { + type enumeration { + enum "com" { + value 0; + description + "Com"; + } + enum "line" { + value 1; + description + "Line"; + } + enum "osc" { + value 2; + description + "Osc"; + } + enum "com-check" { + value 3; + description + "Com Check"; + } + enum "work" { + value 4; + description + "Working"; + } + enum "prot" { + value 5; + description + "Protected"; + } + } + description + "Optics port"; + } + + typedef Optics-fec { + type enumeration { + enum "fec-none" { + value 0; + description + "FEC NONE"; + } + enum "fec-hg15" { + value 1; + description + "ENHANCED FEC H15"; + } + enum "fec-hg25" { + value 2; + description + "ENHANCED FEC H25"; + } + enum "fec-hg15-de" { + value 4; + description + "FEC HG15 DE"; + } + enum "fec-hg25-de" { + value 8; + description + "FEC HG25 DE"; + } + enum "fec-enabled" { + value 16; + description + "FEC ENABLED"; + } + enum "fec-not-set" { + value 32; + description + "FEC DISABLED"; + } + enum "fec-cl91" { + value 64; + description + "FEC CL91"; + } + enum "fec-1-i-7" { + value 128; + description + "FEC EnhancedI.7"; + } + enum "fec-1-i-4" { + value 256; + description + "FEC EnhancedI.4"; + } + enum "fec-swizzle" { + value 512; + description + "FEC Enhanced_Swizzle"; + } + enum "fec-hg20" { + value 1024; + description + "FEC EnhancedHG20"; + } + enum "fec-hg7" { + value 2048; + description + "FEC EnhancedHG7"; + } + enum "fec-sd20" { + value 4096; + description + "FEC SoftDecision 20"; + } + enum "fec-sd7" { + value 8192; + description + "FEC SoftDecision 7"; + } + enum "fec-sd15" { + value 16384; + description + "FEC SoftDecision 15"; + } + enum "fec-sd27" { + value 32768; + description + "FEC SoftDecision 27"; + } + enum "fec-sd15-de" { + value 65536; + description + "FEC SoftDecision 15 with DE"; + } + enum "fec-staircase-de" { + value 131072; + description + "FEC Enhanced Staircase FEC with DE"; + } + enum "fec-ofec" { + value 262144; + description + "FEC OFEC"; + } + enum "fec-cfec" { + value 524288; + description + "FEC CFEC"; + } + enum "fec-stndrd" { + value 1048576; + description + "FEC Standard"; + } + enum "fec-cl74" { + value 2097152; + description + "FEC CL74"; + } + enum "fec-cl108" { + value 4194304; + description + "FEC CL108"; + } + enum "fec-all" { + value 8388608; + description + "FEC ALL"; + } + } + description + "Optics fec"; + } + + typedef Optics-phy { + type enumeration { + enum "not-set" { + value 0; + description + "Not set"; + } + enum "invalid" { + value 1; + description + "Invalid"; + } + enum "long-reach-four-lanes" { + value 2; + description + "Long reach 4 lanes"; + } + enum "short-reach-ten-lanes" { + value 3; + description + "Short reach 10 lanes"; + } + enum "short-reach-one-lane" { + value 4; + description + "Short reach 1 lane"; + } + enum "long-reach-one-lane" { + value 5; + description + "Long reach 1 lane"; + } + enum "short-reach-four-lanes" { + value 6; + description + "Short reach 4 lanes"; + } + enum "copper-four-lanes" { + value 7; + description + "Copper 4 lanes"; + } + enum "active-optical-cable" { + value 8; + description + "Active optical cable"; + } + enum "fourty-gig-e-long-reach-four-lanes" { + value 9; + description + "Long reach 4 lanes"; + } + enum "fourty-gig-e-short-reach-four-lanes" { + value 10; + description + "Short reach 4 lanes"; + } + enum "cwdm-four-lanes" { + value 11; + description + "CWDM 4 lanes"; + } + enum "extended-reach-four-lanes" { + value 12; + description + "Extended reach 4 lanes"; + } + enum "psm-four-lanes" { + value 13; + description + "PSM 4 lanes"; + } + enum "active-copper-cable" { + value 14; + description + "Active copper cable"; + } + enum "fourty-gig-e-extended-reach-four-lanes" { + value 15; + description + "Extended reach 4 lanes"; + } + enum "four-x-ten-gig-e-short-reach-one-lane" { + value 16; + description + "Short reach 1 lane"; + } + enum "fourty-gig-epsm-four-lanes" { + value 17; + description + "PSM 4 lanes"; + } + enum "fourty-gig-e-copper-four-lanes" { + value 18; + description + "Copper 4 lanes"; + } + enum "long-reach-mm-one-lane" { + value 19; + description + "Long reach MM 1 lane"; + } + enum "copper-short-reach" { + value 20; + description + "Copper Short reach 4 lanes"; + } + enum "short-reach-srbd" { + value 21; + description + "Short reach BD 4 lanes"; + } + enum "copper-one-lane" { + value 22; + description + "Copper One Lane"; + } + enum "four-x-ten-gig-e-long-reach-one-lane" { + value 23; + description + "Long reach 1 lane"; + } + enum "fourty-gig-eaoc-four-lanes" { + value 24; + description + "Active optical cable"; + } + enum "extended-one-lane" { + value 25; + description + "Extended One Lane"; + } + enum "zr-one-lane" { + value 26; + description + "ZR One Lane"; + } + enum "dwdm-one-lane" { + value 27; + description + "DWDM One Lane"; + } + enum "sx-one-lane" { + value 28; + description + "SX One Lane"; + } + enum "lx-one-lane" { + value 29; + description + "LX One Lane"; + } + enum "ex-one-lane" { + value 30; + description + "EX One Lane"; + } + enum "zx-one-lane" { + value 31; + description + "ZX One Lane"; + } + enum "ba-set-one-lane" { + value 32; + description + "BASE_T One Lane"; + } + enum "aoc-one-lane" { + value 33; + description + "Active Optical 1 Lane"; + } + enum "active-copper-one-lane" { + value 34; + description + "Active Copper 1 Lane"; + } + enum "fourty-gig-eacu-four-lanes" { + value 35; + description + "Active Copper 4 Lanes"; + } + enum "four-x-ten-gig-eacu-one-lanes" { + value 36; + description + "Active Copper 1 Lane"; + } + enum "four-x-ten-gig-ecu-one-lanes" { + value 37; + description + "Copper 1 Lanes"; + } + enum "four-x-ten-gig-eaoc-one-lanes" { + value 38; + description + "Active Optics 1 Lane"; + } + enum "twenty-five-gig-short-reach-one-lane" { + value 39; + description + "Short reach 1 lane"; + } + enum "twenty-five-gig-long-reach-one-lane" { + value 40; + description + "Long reach 1 lane"; + } + enum "twenty-five-gig-extended-reach-one-lane" { + value 41; + description + "Extended reach 1 lane"; + } + enum "twenty-five-gig-copper-one-lane" { + value 42; + description + "Copper One Lane"; + } + enum "twenty-five-gig-active-optical-one-lane" { + value 43; + description + "Active Optical One Lane"; + } + enum "hundred-gig-edwdm-two" { + value 44; + description + "100GE DWDM Optics"; + } + enum "fourty-gig-plr4-four-lanes" { + value 45; + description + "PLR4 Optics"; + } + enum "fourty-gig-esr4-four-lanes" { + value 46; + description + "ESR4 Optics"; + } + enum "smsr-four-lanes" { + value 47; + description + "SMSR Optics"; + } + enum "cazadero-rqsa" { + value 48; + description + "Cazadero R"; + } + enum "trunk-port-cfp2" { + value 49; + description + "CFP2 DWDM Optics"; + } + enum "short-reach1-lane" { + value 50; + description + "Short reach 1 lane"; + } + enum "inmd-reach1lane" { + value 51; + description + "Inmd reach 1 lane"; + } + enum "long-reach1-lane" { + value 52; + description + "Long reach 1 lane"; + } + enum "twenty-five-gig-ecu-one-lanes" { + value 53; + description + "Copper 1 Lanes"; + } + enum "hundred-gig-e" { + value 54; + description + "ExtentedReach4Lane"; + } + enum "ten-gig-bx" { + value 55; + description + "10G BX optics"; + } + enum "one-geige" { + value 56; + description + "1G BX optics"; + } + enum "ten-x-ten-gig-e-long-reach-one-lane" { + value 57; + description + "Long Reach 1 Lane"; + } + enum "ten-x-ten-gig-e-extended-reach-one-lane" { + value 58; + description + "Extended Reach 1 Lane"; + } + enum "passive-copper-one-lane" { + value 59; + description + "Passive Copper One Lane"; + } + enum "ten-gig-ecwdm" { + value 60; + description + "TenGigE CWDM One Lane"; + } + enum "one-gig-ecwdm" { + value 61; + description + "One GigE CWDM One Lane"; + } + enum "one-gig-edwdm" { + value 62; + description + "One GigE DWDM One Lane"; + } + enum "fx-one-lane" { + value 63; + description + "FX One Lane"; + } + enum "ten-gig-emrdwdm" { + value 64; + description + "TenGigE Multi Rate DWDM 1 Lane"; + } + enum "ten-gig-e-edge-performance" { + value 65; + description + "TenGigE Edge Performance 1 Lane"; + } + enum "one-gig-csfp" { + value 66; + description + "OneGig CSFP optics"; + } + enum "four-hundred-gig-fr4-four-lanes" { + value 67; + description + "400G FR4"; + } + enum "four-hundred-gig-dr4-four-lanes" { + value 68; + description + "400G DR4"; + } + enum "four-x-hundred-gig-fr-four-lanes" { + value 69; + description + "4x100G FR breakout"; + } + enum "four-hundred-gig-aoc-eight-lanes" { + value 70; + description + "400G AOC"; + } + enum "four-hundred-gig-cu-eight-lanes" { + value 71; + description + "400G Copper cable"; + } + enum "eight-x-fifty-gig-cu-eight-lanes" { + value 72; + description + "8x50G Copper breakout"; + } + enum "short-reach-bd" { + value 73; + description + "Short reach Bi-Directional"; + } + enum "hundred-gig-far-reach-one-lane" { + value 74; + description + "Far reach duplex SMF"; + } + enum "four-hundred-gig-long-reach-eight-lanes" { + value 75; + description + "400G LR8"; + } + enum "two-x-hundred-short-range-eight-lanes" { + value 76; + description + "2X100 SR4"; + } + enum "two-x-hundred-psm-eight-lanes" { + value 78; + description + "2x100 PSM4"; + } + enum "two-x-hundred-cwdm-eight-lanes" { + value 79; + description + "2X100 CWDM4"; + } + enum "two-x-hundred-long-range-eight-lanes" { + value 80; + description + "2X100 LR4"; + } + enum "four-hundred-gig-passive-loopback" { + value 81; + description + "400G PASSIVE LB"; + } + enum "four-hundred-gig-active-loopback" { + value 82; + description + "400G ACTIVE LB"; + } + enum "twenty-five-gig-c-short-reach-one-lane" { + value 83; + description + "Short reach 1 lane"; + } + enum "ten-gig-c-short-reach-one-lane" { + value 84; + description + "Short reach 1 lane"; + } + enum "hundred-gig-long-reach-one-lane" { + value 85; + description + "Long reach duplex SMF"; + } + enum "four-x-ten-gig-multi-rate" { + value 86; + description + "4x10G MLR"; + } + enum "short-reach-bd-forty-gig-hundred-gig" { + value 87; + description + "Short reach Bi-Directional"; + } + enum "four-hundred-gig-zr-single-lane" { + value 88; + description + "Long reach duplex SMF"; + } + enum "four-hundred-gig-zrp-single-lane" { + value 89; + description + "Long reach duplex SMF"; + } + enum "hundred-gig-dr-single-lane" { + value 90; + description + "500m reach duplex SMF"; + } + enum "four-hundred-gig-long-reach-four-lanes" { + value 91; + description + "400G LR4"; + } + enum "forty-gig-copper-short-reach-single-lane" { + value 92; + description + "Extended Copper Short reach duplex SMF"; + } + enum "fifty-gig-cu1m" { + value 93; + description + "50G Copper cable"; + } + enum "fifty-gig-passive-loopback" { + value 94; + description + "50G PASSIVE LB"; + } + enum "ten-gig-twenty-five-gig-bx" { + value 95; + description + "10/25G BXU-I"; + } + enum "twenty-five-gig-fifty-gig-short-reach" { + value 96; + description + "25/50G Short Reach"; + } + enum "twenty-five-gige-copper" { + value 97; + description + "Passive Copper one lane"; + } + enum "hundred-gige4wdm" { + value 98; + description + "100G 4WDM"; + } + enum "gigabit-ethernet" { + value 99; + description + "Gigabit Ethernet"; + } + enum "eight-hundred-gig-cu-eight-lanes" { + value 100; + description + "800G Copper cable"; + } + enum "multi-rate-lr" { + value 101; + description + "Long reach 1 lane"; + } + enum "multi-rate-sr" { + value 102; + description + "Short reach 1 lane"; + } + enum "multi-rate-csr" { + value 103; + description + "Short reach 1 lane"; + } + enum "optics-phy-type-16g-fc" { + value 104; + description + "16G FC 4 lanes"; + } + enum "optics-phy-type-32g-fc" { + value 105; + description + "32G FC 4 lanes"; + } + enum "hundred-gig-extended-reach-one-lane" { + value 106; + description + "Extended reach duplex SMF"; + } + enum "four-x-hundred-gig-long-reach-four-lanes" { + value 107; + description + "4x100G LR breakout"; + } + enum "two-x-two-hundred-gig-active-optical-cable-eight-lanes" { + value 108; + description + "2x200G AOC"; + } + enum "two-x-two-hundred-gig-copper-eight-lanes" { + value 109; + description + "2x200G CU"; + } + enum "two-hundred-gig-active-optical-cable-four-lanes" { + value 110; + description + "200G AOC"; + } + enum "two-hundred-gig-copper-four-lanes" { + value 111; + description + "200G CU"; + } + enum "two-x-four-hundred-gig-far-range-eight-lanes" { + value 112; + description + "2x400G FR4"; + } + enum "eight-x-hundred-gig-dr-eight-lanes" { + value 113; + description + "8x100G DR breakout"; + } + enum "eight-hundred-gig-passive-loopback" { + value 114; + description + "800G PASSIVE LB"; + } + enum "one-hundred-fefx" { + value 115; + description + "100M FE FX"; + } + enum "four-hundred-gig-short-reach-eight-lanes" { + value 116; + description + "400G SR8"; + } + enum "cazadero28rqsa" { + value 117; + description + "Cazadero28 R"; + } + enum "two-hundred-gig-far-reach-four-lanes" { + value 118; + description + "200G FR4"; + } + enum "lh-one-lane" { + value 119; + description + "LH One Lane"; + } + enum "eight-x-hundred-gig-far-reach-eight-lanes" { + value 120; + description + "8x100G FR breakout"; + } + enum "hundred-gig-four-lanes" { + value 121; + description + "80Km duplex LC SMF"; + } + enum "four-hundred-gig-active-electrical-cable" { + value 122; + description + "400G AEC"; + } + enum "eight-hundred-gig-active-electrical-cable" { + value 123; + description + "800G AEC"; + } + enum "ten-gig-twenty-five-gig-bxd" { + value 124; + description + "10/25G BXD-I"; + } + enum "two-x-four-hundred-gig-long-reach-eight-lanes" { + value 125; + description + "2x400G LR4"; + } + enum "hundred-gig-zr-single-lane" { + value 126; + description + "100G ZR 80Km duplex LC SMF"; + } + enum "four-hundred-gig-bright-zrp-single-lane" { + value 127; + description + "Long reach duplex SMF"; + } + enum "ten-gig-etx" { + value 128; + description + "TenGigE Copper Lane"; + } + } + description + "Optics phy type"; + } + + typedef Optics-form-factor { + type enumeration { + enum "not-set" { + value 0; + description + "Not set"; + } + enum "invalid" { + value 1; + description + "Invalid"; + } + enum "cpak" { + value 2; + description + "CPAK"; + } + enum "cxp" { + value 3; + description + "CXP"; + } + enum "sfp-plus" { + value 4; + description + "SFP+"; + } + enum "qsfp" { + value 5; + description + "QSFP"; + } + enum "qsfp-plus" { + value 6; + description + "QSFP+"; + } + enum "qsfp28" { + value 7; + description + "QSFP28"; + } + enum "sfp" { + value 8; + description + "SFP"; + } + enum "cfp" { + value 9; + description + "CFP"; + } + enum "cfp2" { + value 10; + description + "CFP2"; + } + enum "cfp2-aco" { + value 11; + description + "CFP2 ACO"; + } + enum "cfp2-dco" { + value 12; + description + "CFP2 DCO"; + } + enum "cfp4" { + value 13; + description + "CFP4"; + } + enum "xfp" { + value 14; + description + "XFP"; + } + enum "x2" { + value 15; + description + "X2"; + } + enum "qsfpdd" { + value 16; + description + "QSFP DD"; + } + enum "non-pluggable" { + value 17; + description + "Non pluggable"; + } + enum "other" { + value 18; + description + "Other"; + } + enum "sfp28" { + value 19; + description + "SFP28"; + } + enum "osfp" { + value 20; + description + "OSFP"; + } + } + description + "Optics form factor"; + } + + typedef Optics-controller-state { + type enumeration { + enum "optics-state-up" { + value 0; + description + "Up"; + } + enum "optics-state-down" { + value 1; + description + "Down"; + } + enum "optics-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Optics controller state"; + } + + typedef Optics-led-state { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "na" { + value 7; + description + "Not Applicable"; + } + } + description + "Optics led state"; + } + + typedef Optics-modulation { + type enumeration { + enum "mod-none" { + value 0; + description + "NONE"; + } + enum "mod-bpsk" { + value 1; + description + "BPSK"; + } + enum "mod-qpsk" { + value 2; + description + "QPSK"; + } + enum "mod-8qam" { + value 3; + description + "8QAM"; + } + enum "mod-16qam" { + value 4; + description + "16QAM"; + } + enum "mod-32qam" { + value 5; + description + "32QAM"; + } + enum "mod-64qam" { + value 6; + description + "64QAM"; + } + enum "mod-bpsk-qpsk" { + value 7; + description + "BPSK QPSK"; + } + enum "mod-qpsk-8qam" { + value 8; + description + "QPSK 8QAM"; + } + enum "mod-8qam-16qam" { + value 9; + description + "8QAM 16QAM"; + } + enum "mod-16qam-32qam" { + value 10; + description + "16QAM 32QAM"; + } + enum "mod-32qam-64qam" { + value 11; + description + "32QAM 64QAM"; + } + } + description + "Optics modulation"; + } + + typedef Optics-laser-state { + type enumeration { + enum "on" { + value 0; + description + "On"; + } + enum "off" { + value 1; + description + "Off"; + } + enum "unknown" { + value 2; + description + "Unknown"; + } + enum "apr" { + value 3; + description + "Apr"; + } + enum "na" { + value 4; + description + "N/A"; + } + } + description + "Optics laser state"; + } + + typedef Optics { + type enumeration { + enum "optics-unknown" { + value 0; + description + "Unknow Optics Type"; + } + enum "optics-grey" { + value 1; + description + "Grey Optics"; + } + enum "optics-dwdm" { + value 2; + description + "DWDM Optics"; + } + enum "optics-cwdm" { + value 3; + description + "CWDM Optics"; + } + } + description + "Optics"; + } + + typedef Optics-tas { + type enumeration { + enum "tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "tas-ui-is" { + value 2; + description + "In Service"; + } + enum "tas-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Optics tas"; + } + + typedef Optics-wave-band { + type enumeration { + enum "c-band" { + value 0; + description + "C BAND"; + } + enum "l-band" { + value 1; + description + "L BAND"; + } + enum "c-band-odd" { + value 2; + description + "C ODD"; + } + enum "c-band-even" { + value 3; + description + "C EVEN"; + } + enum "invalid-band" { + value 4; + description + "Invalid"; + } + } + description + "Optics wave band"; + } + + grouping OPTICS-DB-INFO { + description + " Optics DB Info"; + container network-srlg-info { + description + "Network SRLG information"; + uses OPTICS-EDM-NETWORK-SRLG-INFO; + } + leaf transport-admin-state { + type Optics-tas; + description + "Transport Admin State"; + } + leaf controller-state { + type Optics-controller-state; + description + "Optics controller state: Up, Down or + Administratively Down"; + } + } + + grouping FASTPOLL-INFO { + description + "Optics fastpoll parameters information"; + leaf index { + type uint32; + description + "Index"; + } + leaf timestamp { + type uint64; + description + "Timestamp"; + } + leaf interval { + type uint32; + description + "sop data interval in millisec"; + } + leaf sop1 { + type string; + description + "sop 1 info"; + } + leaf sop2 { + type string; + description + "sop 2 info"; + } + leaf sop3 { + type string; + description + "sop 3 info"; + } + } + + grouping OPTICS-EDM-FASTPOLL-DATA { + description + "Optics fastpoll information"; + container fastpoll-data { + description + "fastpoll data"; + uses FASTPOLL-INFO; + } + } + + grouping OTS-EGRESS-CHANNEL-SLICE { + description + "OTS Egress Channel Slice Attenuation Information"; + leaf egress-channel-slice { + type uint32; + description + "Egress Channel Slice"; + } + leaf egress-channel-slice-attenuation { + type string; + description + "Egress Channel Slice Attenuation in units of 0.1 + dBm"; + } + } + + grouping OTS-EGRESS-CHANNEL-SLICE-PARAM { + description + "Egress Channel Slice Attenuation Params"; + list count { + description + "Egress Channel Slice Count"; + uses OTS-EGRESS-CHANNEL-SLICE; + } + } + + grouping OTS-INGRESS-CHANNEL-SLICE { + description + "OTS Ingress Channel Slice Attenuation Information"; + leaf ingress-channel-slice { + type uint32; + description + "Ingress Channel Slice"; + } + leaf ingress-channel-slice-attenuation { + type string; + description + "Ingress Channel Slice Attenuation in units of 0 + .1 dBm"; + } + } + + grouping OTS-INGRESS-CHANNEL-SLICE-PARAM { + description + "Ingress Channel Slice Attenuation Parameters"; + list count { + description + "Ingress Channel Slice Count"; + uses OTS-INGRESS-CHANNEL-SLICE; + } + } + + grouping OTS-RECEIVE-POWER { + description + "Proprietary OTS Photodiode Receive Power + Parameters"; + list count { + description + "Receive Power count"; + uses OTS-POWER-LIST; + } + } + + grouping OTS-POWER-LIST { + description + "Proprietary OTS Photodiode Transmit/Receive Power + Parameters"; + leaf instance { + type uint32; + description + "Transmit Power Parameter Type"; + } + leaf value { + type string; + description + "Transmit Power Parameter Value"; + } + } + + grouping OTS-TRANSMIT-POWER { + description + "Proprietary OTS Photodiode Transmit Power + Parameters"; + list count { + description + "Transmit Power count"; + uses OTS-POWER-LIST; + } + } + + grouping PROP-SUB-PARAM-COUNT { + description + "Proprietary Submarine Parameters"; + leaf type { + type uint32; + description + "Proprietary Parameter Type"; + } + leaf value { + type uint32; + description + "Proprietary Parameter Value"; + } + } + + grouping SUB-PARAM { + description + "Proprietary Submarine Parameters"; + list count { + description + "submarine count"; + uses PROP-SUB-PARAM-COUNT; + } + } + + grouping OPTICS-SUBMARINE-INFO { + description + "Submarine parameteres operational information"; + container prop-submarine-params { + description + "Proprietary Submarine Parameters"; + uses SUB-PARAM; + } + leaf filter-roll-off-factor { + type string; + description + "RRC Filter Roll-Off factor"; + } + leaf rx-voa-target-power { + type string; + description + "Receive Target Power"; + } + leaf rx-voa-fixed-ratio { + type string; + description + "Receive Ratio of Optical Attenuation"; + } + leaf enh-colorless-mode { + type uint32; + description + "Enhanced Colorless Mode"; + } + leaf enhsop-tolerance-mode { + type uint32; + description + "Enhanced SOP Tolerance Mode"; + } + leaf nleq-compensation { + type uint32; + description + "Non Linear Effect Compenstation"; + } + leaf cross-pol-gain-mode { + type uint32; + description + "Carrier Phase Recovery Cross Polarization Gain + Mode"; + } + leaf cross-pol-weight-mode { + type uint32; + description + "Carrier Phase Recovery Cross Polarization Weight + Mode"; + } + leaf cpr-win-mode { + type uint32; + description + "Carrier Phase Recovery Window Mode"; + } + leaf cpr-ext-win-mode { + type uint32; + description + "Carrier Phase Recovery Extended Window Mode"; + } + } + + grouping OPTICS-AINS-HW-INFO { + description + "OPTICS AINS information"; + leaf ains-state { + type Optics-ains-state-et; + description + "AINS State"; + } + leaf ains-timer-minutes { + type uint32; + units "minute"; + description + "AINS Timer in Minutes"; + } + leaf ains-remaining-secs { + type uint32; + units "second"; + description + "AINS Remaining Seconds"; + } + } + + grouping EXT-PARAM-EDM-ALARM-INFO { + description + "Extended DOM Alarm Information"; + container lo-snr { + description + "Low SNR Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container hi-snr1 { + description + "High SNR Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container lo-snr1 { + description + "Low SNR Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container hi-snr2 { + description + "High SNR Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container lo-isi1 { + description + "Low ISI Correction Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container hi-isi1 { + description + "High ISI Correction Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container lo-isi2 { + description + "Low ISI Correction Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container hi-isi2 { + description + "High ISI Correction Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container lo-pam1 { + description + "Low PAM Rate Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container hi-pam1 { + description + "High PAM Rate Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container lo-pam2 { + description + "Low PAM Rate Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container hi-pam2 { + description + "High PAM Rate Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container lo-tec1 { + description + "Low TEC Current Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container hi-tec1 { + description + "High TEC Current Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container lo-tec2 { + description + "Low TEC Current Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container hi-tec2 { + description + "High TEC Current Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container lo-laser-freq1 { + description + "Low Laser Differential Frequency Alarm for Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container hi-laser-freq1 { + description + "High Laser Differential Frequency Alarm for + Lane1"; + uses OPTICS-ALARM-DETAIL; + } + container lo-laser-freq2 { + description + "Low Laser Differential Frequency Alarm for Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container hi-laser-freq2 { + description + "High Laser Differential Frequency Alarm for + Lane2"; + uses OPTICS-ALARM-DETAIL; + } + container hi-pre-fecber-cur-acc { + description + "High Pre FEC BER Current Accumulated Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-pre-fecber-min { + description + "High Pre FEC BER Min Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-pre-fecber-max { + description + "High Pre FEC BER Max Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-pre-fecber-prior-acc { + description + "High Pre FEC BER Prior Accumulated Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-pre-fecber-cur { + description + "High Pre FEC BER Current Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-uncorrected-ber-cur-acc { + description + "High Uncorrected BER Current Accumulated Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-uncorrected-ber-min { + description + "High Uncorrected BER Min Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-uncorrected-ber-max { + description + "High Uncorrected BER Max Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-uncorrected-ber-prior-acc { + description + "High Uncorrected BER Prior Accumulated Alarm"; + uses OPTICS-ALARM-DETAIL; + } + container hi-uncorrected-ber-cur { + description + "High Uncorrected BER Current Alarm"; + uses OPTICS-ALARM-DETAIL; + } + } + + grouping OPTICS-EXT-THRESHOLD-PARAM { + description + "extended monitored parameter threshold + information"; + leaf snr-alarm-high-threshold { + type int32; + description + "High threshold alarm for SNR"; + } + leaf snr-alarm-low-threshold { + type int32; + description + "Low threshold alarm for SNR"; + } + leaf snr-warn-high-threshold { + type int32; + description + "High threshold warning for SNR"; + } + leaf snr-warn-low-threshold { + type int32; + description + "Low threshold warning for SNR"; + } + leaf isi-correction-alarm-high-threshold { + type int32; + description + "High threshold alarm for ISI Correction"; + } + leaf isi-correction-alarm-low-threshold { + type int32; + description + "Low threshold alarm for ISI Correction"; + } + leaf isi-correction-warn-high-threshold { + type int32; + description + "High threshold warning for ISI Correction"; + } + leaf isi-correction-warn-low-threshold { + type int32; + description + "Low threshold warning for ISI Correction"; + } + leaf pam-rate-alarm-high-threshold { + type int32; + description + "High threshold alarm for PAM Rate"; + } + leaf pam-rate-alarm-low-threshold { + type int32; + description + "Low threshold alarm for PAM Rate"; + } + leaf pam-rate-warn-high-threshold { + type int32; + description + "High threshold warning for PAM Rate"; + } + leaf pam-rate-warn-low-threshold { + type int32; + description + "Low threshold warning for PAM Rate"; + } + leaf pre-fec-ber-alarm-high-threshold { + type int64; + description + "High threshold alarm for Pre FEC BER"; + } + leaf pre-fec-ber-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Pre FEC BER"; + } + leaf pre-fec-ber-warn-high-threshold { + type int64; + description + "High threshold warning for Pre FEC BER"; + } + leaf pre-fec-ber-warn-low-threshold { + type int64; + description + "Low threshold warning for Pre FEC BER"; + } + leaf uncorrected-ber-alarm-high-threshold { + type int64; + description + "High threshold alarm for Uncorrected BER"; + } + leaf uncorrected-ber-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Uncorrected BER"; + } + leaf uncorrected-ber-warn-high-threshold { + type int64; + description + "High threshold warning for Uncorrected BER"; + } + leaf uncorrected-ber-warn-low-threshold { + type int64; + description + "Low threshold warning for Uncorrected BER"; + } + leaf tec-current-alarm-high-threshold { + type int32; + description + "High threshold alarm for TEC Current"; + } + leaf tec-current-alarm-low-threshold { + type int32; + description + "Low threshold alarm for TEC Current"; + } + leaf tec-current-warn-high-threshold { + type int32; + description + "High threshold warning for TEC Current"; + } + leaf tec-current-warn-low-threshold { + type int32; + description + "Low threshold warning for TEC Current"; + } + leaf laser-diff-frequency-alarm-high-threshold { + type int32; + description + "High Threshold Alarm for Differential Laser + Frequency"; + } + leaf laser-diff-frequency-alarm-low-threshold { + type int32; + description + "Low Threshold Alarm for Differential Laser + Frequency"; + } + leaf laser-diff-frequency-warn-high-threshold { + type int32; + description + "High Threshold Warning for Differential Laser + Frequency"; + } + leaf laser-diff-frequency-warn-low-threshold { + type int32; + description + "Low Threshold Warning for Differential Laser + Frequency"; + } + leaf laser-diff-temperature-alarm-high-threshold { + type int32; + description + "High Threshold Alarm for Differential Laser + Temperature"; + } + leaf laser-diff-temperature-alarm-low-threshold { + type int32; + description + "Low Threshold Alarm for Differential Laser + Temperature"; + } + leaf laser-diff-temperature-warn-high-threshold { + type int32; + description + "High Threshold Warning for Differential Laser + Temperature"; + } + leaf laser-diff-temperature-warn-low-threshold { + type int32; + description + "Low Threshold Warning for Differential Laser + Temperature"; + } + leaf pre-fec-ber-latched-min-alarm-high-threshold { + type int64; + description + "High threshold alarm for Latched Min Pre FEC BER"; + } + leaf pre-fec-ber-latched-min-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Latched Min Pre FEC BER"; + } + leaf pre-fec-ber-latched-min-warn-high-threshold { + type int64; + description + "High threshold warning for Latched Min Pre FEC + BER"; + } + leaf pre-fec-ber-latched-min-warn-low-threshold { + type int64; + description + "Low threshold warning for Latched Min Pre FEC + BER"; + } + leaf pre-fec-ber-latched-max-alarm-high-threshold { + type int64; + description + "High threshold alarm for Latched Max Pre FEC BER"; + } + leaf pre-fec-ber-latched-max-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Latched Max Pre FEC BER"; + } + leaf pre-fec-ber-latched-max-warn-high-threshold { + type int64; + description + "High threshold warning for Latched Max Pre FEC + BER"; + } + leaf pre-fec-ber-latched-max-warn-low-threshold { + type int64; + description + "Low threshold warning for Latched Max Pre FEC + BER"; + } + leaf pre-fec-ber-accumulated-alarm-high-threshold { + type int64; + description + "High threshold alarm for Accumulated Pre FEC BER"; + } + leaf pre-fec-ber-accumulated-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Accumulated Pre FEC BER"; + } + leaf pre-fec-ber-accumulated-warn-high-threshold { + type int64; + description + "High threshold warning for Accumulated Pre FEC + BER"; + } + leaf pre-fec-ber-accumulated-warn-low-threshold { + type int64; + description + "Low threshold warning for Accumulated Pre FEC + BER"; + } + leaf pre-fec-ber-instantaneous-alarm-high-threshold { + type int64; + description + "High threshold alarm for Instantaneous Pre FEC + BER"; + } + leaf pre-fec-ber-instantaneous-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Instantaneous Pre FEC + BER"; + } + leaf pre-fec-ber-instantaneous-warn-high-threshold { + type int64; + description + "High threshold warning for Instantaneous Pre FEC + BER"; + } + leaf pre-fec-ber-instantaneous-warn-low-threshold { + type int64; + description + "Low threshold warning for Instantaneous Pre FEC + BER"; + } + leaf uncorrected-ber-latched-min-alarm-high-threshold { + type int64; + description + "High threshold alarm for Latched Min + Uncorrected BER"; + } + leaf uncorrected-ber-latched-min-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Latched Min Uncorrected + BER"; + } + leaf uncorrected-ber-latched-min-warn-high-threshold { + type int64; + description + "High threshold warning for Latched Min + Uncorrected BER"; + } + leaf uncorrected-ber-latched-min-warn-low-threshold { + type int64; + description + "Low threshold alarm for Latched Min Uncorrected + BER"; + } + leaf uncorrected-ber-latched-max-alarm-high-threshold { + type int64; + description + "High threshold alarm for Latched_Max Uncorrected + BER"; + } + leaf uncorrected-ber-latched-max-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Latched_Max Uncorrected + BER"; + } + leaf uncorrected-ber-latched-max-warn-high-threshold { + type int64; + description + "High threshold warning Latched_Max for + Uncorrected BER"; + } + leaf uncorrected-ber-latched-max-warn-low-threshold { + type int64; + description + "Low threshold warning Latched_Max for + Uncorrected BER"; + } + leaf uncorrected-ber-accumulated-alarm-high-threshold { + type int64; + description + "High threshold alarm for Accumulated Uncorrected + BER"; + } + leaf uncorrected-ber-accumulated-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Accumulated Uncorrected + BER"; + } + leaf uncorrected-ber-accumulated-warn-high-threshold { + type int64; + description + "High threshold warning for Accumulated + Uncorrected BER"; + } + leaf uncorrected-ber-accumulated-warn-low-threshold { + type int64; + description + "Low threshold warning for Accumulated + Uncorrected BER"; + } + leaf uncorrected-ber-instantaneous-alarm-high-threshold { + type int64; + description + "High threshold alarm for Instantaneous + Uncorrected BER"; + } + leaf uncorrected-ber-instantaneous-alarm-low-threshold { + type int64; + description + "Low threshold alarm for Instantaneous + Uncorrected BER"; + } + leaf uncorrected-ber-instantaneous-warn-high-threshold { + type int64; + description + "High threshold warning for Instantaneous + Uncorrected BER"; + } + leaf uncorrected-ber-instantaneous-warn-low-threshold { + type int64; + description + "Low threshold warning for Instantaneous + Uncorrected BER"; + } + } + + grouping OPTICS-EXT-PARAM { + description + "extended monitored parameter information"; + leaf snr-lane1 { + type int32; + description + "Signal to Noise Ratio on Lane 1"; + } + leaf snr-lane2 { + type int32; + description + "Signal to Noise Ratio on Lane 2"; + } + leaf isi-correction-lane1 { + type int32; + description + "Inter symbol Interference correction on Lane 1"; + } + leaf isi-correction-lane2 { + type int32; + description + "Inter symbol Interference correction on Lane 2"; + } + leaf pam-rate-lane1 { + type int32; + description + "PAM Histogram parameter on Lane 1"; + } + leaf pam-rate-lane2 { + type int32; + description + "PAM Histogram parameter on Lane 2"; + } + leaf pre-fec-ber { + type int64; + description + "Pre FEC BER since last counter reset"; + } + leaf uncorrected-ber { + type int64; + description + "Uncorrected BER since last counter reset"; + } + leaf tec-current-lane1 { + type int32; + description + "Current flowing to the TEC of a cooled laser on + Lane 1"; + } + leaf tec-current-lane2 { + type int32; + description + "Current flowing to the TEC of a cooled laser on + Lane 2"; + } + leaf laser-diff-frequency-lane1 { + type int32; + description + "Difference between target and actual center + frequency on Lane 1"; + } + leaf laser-diff-frequency-lane2 { + type int32; + description + "Difference between target and actual center + frequency on Lane 2"; + } + leaf laser-diff-temperature-lane1 { + type int32; + description + "Difference between target and actual temperature + on Lane 1"; + } + leaf laser-diff-temperature-lane2 { + type int32; + description + "Difference between target and actual temperature + on Lane 2"; + } + leaf pre-fec-ber-latched-min { + type int64; + description + "Latched minimum Pre FEC BER value since last + read, line ingress"; + } + leaf pre-fec-ber-latched-max { + type int64; + description + "Latched maximum Pre FEC BER value since last + read, line ingress"; + } + leaf pre-fec-ber-accumulated { + type int64; + description + "Pre FEC BER value prior accumulation period, + line ingress"; + } + leaf pre-fec-ber-instantaneous { + type int64; + description + "Pre FEC BER value instantaneous line ingress"; + } + leaf uncorrected-ber-latched-min { + type int64; + description + "Latched minimum Uncorrected BER value since last + read, line ingress"; + } + leaf uncorrected-ber-latched-max { + type int64; + description + "Latched maximum Uncorrected BER value since last + read, line ingress"; + } + leaf uncorrected-ber-accumulated { + type int64; + description + "Uncorrected BER value prior accumulation period, + line ingress"; + } + leaf uncorrected-ber-instantaneous { + type int64; + description + "Uncorrected BER value instantaneous line line + ingress"; + } + } + + grouping OPTICS-RAMAN-TX-POWER { + description + "OPTICS Raman Transmit Power information"; + leaf raman-tx-power-instance { + type uint32; + description + "Raman Transmit Power Intance"; + } + leaf raman-tx-power-value { + type string; + description + "Raman Transmit Power Value in units of 0.01mW"; + } + leaf raman-tx-wavelength { + type string; + description + "Raman Transmit Wavelength in units of nm"; + } + } + + grouping OPTICS-RAMAN-PARAM { + description + "Proprietary Raman transmit power Parameters"; + list count { + description + "raman transmit power count"; + uses OPTICS-RAMAN-TX-POWER; + } + } + + grouping OPTICS-TRANSCEIVER-DATA { + description + "Optics Transceiver Details"; + leaf vendor-info { + type string; + description + "Vendor Information"; + } + leaf adapter-vendor-info { + type string; + description + "Adapter Vendor Information"; + } + leaf date { + type string; + description + "Date in Transceiver"; + } + leaf optics-vendor-rev { + type string; + description + "Transceiver vendors revision number"; + } + leaf optics-serial-no { + type string; + description + "Transceiver serial number"; + } + leaf optics-vendor-part { + type string; + description + "Transceiver vendors part number"; + } + leaf optics-type { + type string; + description + "Transceiver optics type"; + } + leaf vendor-name { + type string; + description + "Transceiver optics vendor name"; + } + leaf oui-no { + type string; + description + "Transceiver optics type"; + } + leaf optics-pid { + type string; + description + "Transceiver optics pid"; + } + leaf optics-vid { + type string; + description + "Transceiver optics vid"; + } + leaf connector-type { + type Fiber-connector; + description + "Connector type"; + } + leaf otn-application-code { + type Otn-application-code; + description + "Otn Application Code"; + } + leaf sonet-application-code { + type Sonet-application-code; + description + "Sonet Application Code"; + } + leaf ethernet-compliance-code { + type Ethernet-pmd; + description + "Ethernet Compliance Code"; + } + leaf internal-temperature { + type int32; + description + "Internal Temperature in units of C"; + } + } + + grouping OTS-EDM-ALARM-INFO { + description + "Ots Alarm Information"; + container low-tx-power { + description + "Low Tx Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx-power { + description + "Low Rx Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container rx-los-p { + description + "Rx LOS_P"; + uses OPTICS-ALARM-DETAIL; + } + container rx-loc { + description + "Rx LOC"; + uses OPTICS-ALARM-DETAIL; + } + container amp-gain-deg-low { + description + "Ampli Gain Deg Low"; + uses OPTICS-ALARM-DETAIL; + } + container amp-gain-deg-high { + description + "Ampli Gain Deg High"; + uses OPTICS-ALARM-DETAIL; + } + container auto-laser-shut { + description + "Auto Laser Shut"; + uses OPTICS-ALARM-DETAIL; + } + container auto-power-red { + description + "Auto Power Red"; + uses OPTICS-ALARM-DETAIL; + } + container auto-ampli-ctrl-disabled { + description + "Auto Ampli Ctrl Disabled"; + uses OPTICS-ALARM-DETAIL; + } + container auto-ampli-ctrl-config-mismatch { + description + "Auto Ampli Ctrl Config Mismatch"; + uses OPTICS-ALARM-DETAIL; + } + container switch-to-protect { + description + "Switch To Protect"; + uses OPTICS-ALARM-DETAIL; + } + container auto-ampli-ctrl-running { + description + "Auto Ampli Ctrl Running"; + uses OPTICS-ALARM-DETAIL; + } + } + + grouping OPTICS-ALARM-DETAIL { + description + " Optics Alarm Detail"; + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OPTICS-EDM-ALARM-INFO { + description + "Optics Alarm Information"; + container high-rx-power { + description + "High Rx Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx-power { + description + "Low Rx Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx-power { + description + "High Tx Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx-power { + description + "Low Tx Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-lbc { + description + "High laser bias current in units of percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-temperature { + description + "Low Temperature alarm"; + uses OPTICS-ALARM-DETAIL; + } + container high-temperature { + description + "High Temperature alarm"; + uses OPTICS-ALARM-DETAIL; + } + container low-voltage { + description + "Low Voltage alarm"; + uses OPTICS-ALARM-DETAIL; + } + container high-voltage { + description + "High Voltage alarm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx0-power { + description + "High Rx0 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx1-power { + description + "High Rx1 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx2-power { + description + "High Rx2 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx3-power { + description + "High Rx3 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx4-power { + description + "High Rx4 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx5-power { + description + "High Rx5 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx6-power { + description + "High Rx6 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx7-power { + description + "High Rx7 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-rx8-power { + description + "High Rx8 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx0-power { + description + "Low Rx0 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx1-power { + description + "Low Rx1 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx2-power { + description + "Low Rx2 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx3-power { + description + "Low Rx3 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx4-power { + description + "Low Rx4 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx5-power { + description + "Low Rx5 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx6-power { + description + "Low Rx6 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx7-power { + description + "Low Rx7 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-rx8-power { + description + "Low Rx8 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx0-power { + description + "High Tx0 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx1-power { + description + "High Tx1 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx2-power { + description + "High Tx2 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx3-power { + description + "High Tx3 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx4-power { + description + "High Tx4 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx5-power { + description + "High Tx5 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx6-power { + description + "High Tx6 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx7-power { + description + "High Tx7 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx8-power { + description + "High Tx8 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx0-power { + description + "Low Tx0 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx1-power { + description + "Low Tx1 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx2-power { + description + "Low Tx2 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx3-power { + description + "Low Tx3 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx4-power { + description + "Low Tx4 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx5-power { + description + "Low Tx5 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx6-power { + description + "Low Tx6 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx7-power { + description + "Low Tx7 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx8-power { + description + "Low Tx8 Power in units of 0.1 dBm"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx0lbc { + description + "High Tx0 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx1lbc { + description + "High Tx1 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx2lbc { + description + "High Tx2 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx3lbc { + description + "High Tx3 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx4lbc { + description + "High Tx4 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx5lbc { + description + "High Tx5 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx6lbc { + description + "High Tx6 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx7lbc { + description + "High Tx7 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container high-tx8lbc { + description + "High Tx8 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx0lbc { + description + "Low Tx0 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx1lbc { + description + "Low Tx1 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx2lbc { + description + "Low Tx2 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx3lbc { + description + "Low Tx3 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx4lbc { + description + "Low Tx4 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx5lbc { + description + "Low Tx5 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx6lbc { + description + "Low Tx6 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx7lbc { + description + "Low Tx7 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container low-tx8lbc { + description + "Low Tx8 laser bias current in units of + percentage"; + uses OPTICS-ALARM-DETAIL; + } + container rx-los { + description + "RX LOS"; + uses OPTICS-ALARM-DETAIL; + } + container tx-los { + description + "TX LOS"; + uses OPTICS-ALARM-DETAIL; + } + container rx-lol { + description + "RX LOL"; + uses OPTICS-ALARM-DETAIL; + } + container tx-lol { + description + "TX LOL"; + uses OPTICS-ALARM-DETAIL; + } + container tx-fault { + description + "TX Fault"; + uses OPTICS-ALARM-DETAIL; + } + container hidgd { + description + "HI DGD"; + uses OPTICS-ALARM-DETAIL; + } + container oorcd { + description + "OOR CD"; + uses OPTICS-ALARM-DETAIL; + } + container osnr { + description + "OSNR"; + uses OPTICS-ALARM-DETAIL; + } + container wvlool { + description + "WVL OOL"; + uses OPTICS-ALARM-DETAIL; + } + container mea { + description + "MEA"; + uses OPTICS-ALARM-DETAIL; + } + container imp-removal { + description + "IMPROPER REM"; + uses OPTICS-ALARM-DETAIL; + } + container rx-loc { + description + "Rx LOC"; + uses OPTICS-ALARM-DETAIL; + } + container amp-gain-deg-low { + description + "Ampli Gain Deg Low"; + uses OPTICS-ALARM-DETAIL; + } + container amp-gain-deg-high { + description + "Ampli Gain Deg High"; + uses OPTICS-ALARM-DETAIL; + } + container txpwr-mismatch { + description + "TX POWER PROV MISMATCH"; + uses OPTICS-ALARM-DETAIL; + } + container ingress-amp-gain-deg-low { + description + "Ingress Ampli Gain Deg Low"; + uses OPTICS-ALARM-DETAIL; + } + container ingress-amp-gain-deg-high { + description + "Ingress Ampli Gain Deg High"; + uses OPTICS-ALARM-DETAIL; + } + container egress-amp-gain-deg-low { + description + "egress Ampli Gain Deg Low"; + uses OPTICS-ALARM-DETAIL; + } + container egress-amp-gain-deg-high { + description + "egress Ampli Gain Deg High"; + uses OPTICS-ALARM-DETAIL; + } + } + + grouping LANE-ALARM-DETAIL { + description + " Lane Alarm Detail"; + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping LANE-EDM-ALARM-INFO { + description + " Lane Information Detail"; + container high-rx-power { + description + "High Rx Power"; + uses LANE-ALARM-DETAIL; + } + container low-rx-power { + description + "Low Rx Power"; + uses LANE-ALARM-DETAIL; + } + container high-tx-power { + description + "High Tx Power"; + uses LANE-ALARM-DETAIL; + } + container low-tx-power { + description + "Low Tx Power"; + uses LANE-ALARM-DETAIL; + } + container high-lbc { + description + "High laser bias current"; + uses LANE-ALARM-DETAIL; + } + } + + grouping OPTICS-EDM-LANE-DATA { + description + "Grey lane data"; + container lane-alarm-info { + description + "Lane Alarm Information"; + uses LANE-EDM-ALARM-INFO; + } + leaf lane-index { + type uint32; + description + "The index number of the lane"; + } + leaf laser-bias-current-percent { + type uint32; + units "percentage"; + description + "Laser Bias Current in units of 0.01 percentage"; + } + leaf laser-bias-current-milli-amps { + type uint32; + description + "Laser Bias Current in units of 0.01mA"; + } + leaf transmit-power { + type int32; + description + "Transmit power in the units of 0.01dBm"; + } + leaf receive-power { + type int32; + description + "Transponder receive power in the units of 0 + .01dBm"; + } + leaf receive-signal-power { + type int32; + description + "Transponder receive signal power in the units of + 0.01dBm"; + } + leaf transmit-signal-power { + type int32; + description + "Transmit Signal power in the units of 0.01dBm"; + } + leaf output-frequency { + type int32; + description + "Output frequency read from hw in the units of + 100MHz"; + } + leaf frequency-offset { + type int32; + description + "Frequency Offset read from hw in units of MHz"; + } + leaf frequency100mhz { + type uint32; + description + "Output frequency read from HW in resolution of + 100MHz"; + } + leaf laser-temperature { + type int32; + description + "Laser Temperature value in units of 0.01 C"; + } + leaf laser-age { + type uint32; + units "percentage"; + description + "Laser Age in 1percent"; + } + leaf dac-rate { + type string; + description + "DAC Rate"; + } + leaf transmit-powerm-w { + type int32; + description + "Transmit power in the units of 0.01mW"; + } + leaf receive-powerm-w { + type int32; + description + "Transmit power in the units of 0.01mW"; + } + } + + grouping OPTICS-EDM-NETWORK-SRLG-STRUCTURE { + description + "Network SRLG Information"; + leaf set-number { + type uint32; + description + "Array to maintain set number"; + } + leaf-list network-srlg { + type uint32; + description + "Network Srlg"; + } + } + + grouping OPTICS-EDM-NETWORK-SRLG-INFO { + description + "Network SRLG Information Array"; + list network-srlg-array { + description + "Network Srlg Array"; + uses OPTICS-EDM-NETWORK-SRLG-STRUCTURE; + } + } + + grouping OPTICS-EDM-INFO { + description + "optics transponder information"; + container network-srlg-info { + description + "Network SRLG information"; + uses OPTICS-EDM-NETWORK-SRLG-INFO; + } + container optics-alarm-info { + description + "Optics Alarm Information"; + uses OPTICS-EDM-ALARM-INFO; + } + container ots-alarm-info { + description + "Ots Alarm Information"; + uses OTS-EDM-ALARM-INFO; + } + container transceiver-info { + description + "Transceiver Vendor Details"; + uses OPTICS-TRANSCEIVER-DATA; + } + container raman-tx-power-config { + description + "Raman Tx Power"; + uses OPTICS-RAMAN-PARAM; + } + container ext-param-val { + description + "Extended optics parameters"; + uses OPTICS-EXT-PARAM; + } + container ext-param-threshold-val { + description + "Extended optics parameters threshold values"; + uses OPTICS-EXT-THRESHOLD-PARAM; + } + container extended-alarm-alarm-info { + description + "Extended DOM alarm Information"; + uses EXT-PARAM-EDM-ALARM-INFO; + } + container ains-info { + description + "AINS information"; + uses OPTICS-AINS-HW-INFO; + } + container submarine-info { + description + "Submarine information"; + uses OPTICS-SUBMARINE-INFO; + } + container raman-tx-power { + description + "Raman Tx Power"; + uses OPTICS-RAMAN-PARAM; + } + container transmit-n-power { + description + "Transmit N Power in the unit of 0.01dBm"; + uses OTS-TRANSMIT-POWER; + } + container receive-n-power { + description + "Receive N Power in the unit of 0.01dBm"; + uses OTS-RECEIVE-POWER; + } + container ingress-channel-slice-attenuation { + description + "Ingress Channel Slice Attenuation in units of 0 + .1 dB"; + uses OTS-INGRESS-CHANNEL-SLICE-PARAM; + } + container egress-channel-slice-attenuation { + description + "Egress Channel Slice Attenuation in units of 0.1 + dB"; + uses OTS-EGRESS-CHANNEL-SLICE-PARAM; + } + container ingress-channel-slice-attenuation-configured { + description + "Ingress Channel Slice Attenuation Configured in + units of 0.1 dB"; + uses OTS-INGRESS-CHANNEL-SLICE-PARAM; + } + container egress-channel-slice-attenuation-configured { + description + "Egress Channel Slice Attenuation Configured in + units of 0.1 dB"; + uses OTS-EGRESS-CHANNEL-SLICE-PARAM; + } + leaf transport-admin-state { + type Optics-tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf optics-present { + type boolean; + description + "Is Optics Present?"; + } + leaf optics-type { + type Optics; + description + "Old Optics type name, Use Derived Optics type"; + } + leaf derived-optics-type { + type string; + description + "Derived Optics type name"; + } + leaf optics-module { + type string; + description + "Optics module name"; + } + leaf dwdm-carrier-band { + type Optics-wave-band; + description + "DWDM Carrier Band information"; + } + leaf dwdm-carrier-channel { + type string; + description + "Current ITU DWDM Carrier channel number"; + } + leaf dwdm-carrier-frequency { + type string; + description + "DWDM Carrier frequency read from hw in the units + of 1THz"; + } + leaf dwdm-carrier-wavelength { + type string; + description + "Wavelength of color optics 0.001nm"; + } + leaf grey-wavelength { + type uint32; + description + "Wavelength of grey optics 0.01nm"; + } + leaf rx-low-threshold { + type int32; + description + "Rx Low threshold value in units of 0.1dBm"; + } + leaf rx-high-threshold { + type int32; + description + "Rx High threshold value in units of 0.1dBm"; + } + leaf lbc-high-threshold { + type int32; + units "percentage"; + description + "LBC High threshold value in units of percentage"; + } + leaf tx-low-threshold { + type int32; + description + "Tx Low threshold value in units of 0.1dBm"; + } + leaf tx-high-threshold { + type int32; + description + "Tx High threshold value in units of 0.1dBm"; + } + leaf lbc-th-high-default { + type int32; + description + "LBC high threshold default value in units of 0 + .001mA"; + } + leaf lbc-th-low-default { + type int32; + description + "LBC low threshold default value in units of 0 + .001mA"; + } + leaf temp-low-threshold { + type int32; + description + "Temp Low threshold value in the units 0.01C"; + } + leaf temp-high-threshold { + type int32; + description + "Temp High threshold value in the units of 0.01C"; + } + leaf volt-low-threshold { + type int32; + description + "Volt Low threshold value in the units of 0.01V"; + } + leaf volt-high-threshold { + type int32; + description + "Volt High threshold value in the units of 0.01V"; + } + leaf cd { + type int32; + description + "Chromatic Dispersion ps/nm"; + } + leaf cd-min { + type int32; + description + "Chromatic Dispersion Min ps/nm"; + } + leaf cd-max { + type int32; + description + "Chromatic Dispersion Max ps/nm"; + } + leaf cd-low-threshold { + type int32; + description + "Chromatic Dispersion low threshold ps/nm"; + } + leaf cd-high-threshold { + type int32; + description + "Chromatic Dispersion high threshold ps/nm"; + } + leaf osnr-low-threshold { + type string; + description + "OSNR low threshold in 0.01 dB"; + } + leaf dgd-high-threshold { + type string; + description + "DGD high threshold in 0.1 ps"; + } + leaf polarization-mode-dispersion { + type string; + description + "Polarization Mode Dispersion 0.1ps"; + } + leaf second-order-polarization-mode-dispersion { + type string; + description + "Second Order Polarization Mode Dispersion 0 + .1ps^2"; + } + leaf optical-signal-to-noise-ratio { + type string; + description + "Optical Signal to Noise Ratio dB"; + } + leaf polarization-dependent-loss { + type string; + description + "Polarization Dependent Loss dB"; + } + leaf polarization-change-rate { + type string; + description + "Polarization Change Rate rad/s"; + } + leaf differential-group-delay { + type string; + description + "Differential Group Delay ps"; + } + leaf phase-noise { + type string; + description + "Phase Noise dB"; + } + leaf pm-enable { + type uint32; + description + "PmEable or Disable"; + } + leaf laser-state { + type Optics-laser-state; + description + "Showing laser state.Either ON or OFF or unknown"; + } + leaf modulation-type { + type Optics-modulation; + description + "Available Modulation Types"; + } + leaf led-state { + type Optics-led-state; + description + "Showing Current Colour of led state"; + } + leaf controller-state { + type Optics-controller-state; + description + "Optics controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf form-factor { + type Optics-form-factor; + description + "Optics form factor"; + } + leaf phy-type { + type Optics-phy; + description + "Optics physical type"; + } + leaf cfg-tx-power { + type int32; + description + "Configured Tx power value in units of 0.1dB"; + } + leaf cfg-tx-power-configurable { + type boolean; + description + "TX Power Configuration is supported or not"; + } + leaf temperature { + type int32; + description + "Temperature value in units of 0.01 C"; + } + leaf voltage { + type int32; + description + "Voltage value in units of 0.01V"; + } + leaf display-volt-temp { + type boolean; + description + "Display Volt/Temp ?"; + } + leaf cd-configurable { + type boolean; + description + "CD Configurable is supported or not"; + } + leaf optics-fec { + type Optics-fec; + description + "Optics FEC"; + } + leaf skip-snmp-pm-table { + type int32; + description + "PM enabled or not"; + } + leaf port-type { + type Optics-port; + description + "Showing port type"; + } + leaf port-status { + type Optics-port-status; + description + "Showing port status"; + } + leaf rx-voa-attenuation { + type int32; + description + "Rx Voa Attenuation in the units of 0.01dB"; + } + leaf tx-voa-attenuation { + type int32; + description + "Tx Voa Attenuation in the units of 0.01dB"; + } + leaf ampli-gain { + type int32; + description + "Ampli Gain in the units of 0.01dBm"; + } + leaf ampli-tilt { + type int32; + description + "Ampli Tilt in the units of 0.01dBm"; + } + leaf rx-power-th-configurable { + type boolean; + description + "rx power th configurable"; + } + leaf tx-power-th-configurable { + type boolean; + description + "tx power th configurable"; + } + leaf rx-voa-attenuation-config-val { + type int32; + description + "RX VOA attenuation configured value in units of + 0.01dB"; + } + leaf tx-voa-attenuation-config-val { + type int32; + description + "TX VOA attenuation configured value in units of + 0.01dB"; + } + leaf ampli-control-mode-config-val { + type Optics-amplifier-control-mode; + description + "ampli control mode config val"; + } + leaf ampli-gain-range-config-val { + type Optics-amplifier-gain-range; + description + "ampli gain range config val"; + } + leaf ampli-gain-config-val { + type int32; + description + "Ampli gain configured value in units of 0.1dB"; + } + leaf ampli-tilt-config-val { + type int32; + description + "Ampli tilt configured value in units of 0.1dB"; + } + leaf ampli-channel-power-config-val { + type int32; + description + "Ampli channel power configured value in units of + 0.1dBm"; + } + leaf channel-power-max-delta-config-val { + type int32; + description + "Channel power max delta configured value in + units of 0.1 dBm"; + } + leaf ampli-gain-thr-deg-low-config-val { + type int32; + description + "Ampli gain low degrade threshold configured + value in units of 0.1dBm"; + } + leaf ampli-gain-thr-deg-high-config-val { + type int32; + description + "Ampli gain high degrade threshold configured + value in units of 0.1dBm"; + } + leaf ampli-channel-psd-config-val { + type int32; + description + "Ampli channel psd configured value in units of 0 + .001 nW/MHz"; + } + leaf rx-low-th-psd-config-val { + type int32; + description + "Rx Low threshold psd value in units of 0.001 + nW/MHz"; + } + leaf osri-config-val { + type boolean; + description + "osri config val"; + } + leaf tx-config-val { + type boolean; + description + "tx config val"; + } + leaf rx-config-val { + type boolean; + description + "rx config val"; + } + leaf rx-thr-fail-low-delta-val { + type int32; + description + "rx thr fail low delta val"; + } + leaf safety-control-mode-config-val { + type Optics-amplifier-safety-control-mode; + description + "safety control mode config val"; + } + leaf total-rx-power { + type int32; + description + "Total Receive Power for Multi-Lane Optics in + units of 0.01 dBm"; + } + leaf total-tx-power { + type int32; + description + "Total Transmit Power for Multi-Lane Optics in + units of 0.01 dBm"; + } + leaf is-bo-configured { + type boolean; + description + "Is BO configured ?"; + } + leaf ingress-ampli-gain-range-config-val { + type Optics-amplifier-gain-range; + description + "ingress ampli gain range config val"; + } + leaf ingress-ampli-gain-config { + type string; + description + "Ingress Ampli gain configured value in units of + 0.1dB"; + } + leaf ingress-ampli-tilt-config { + type string; + description + "Ingress Ampli tilt configured value in units of + 0.1dB"; + } + leaf ingress-ampli-thr-deg-low-config { + type string; + description + "Ingress Ampli gain low degrade threshold + configured value in units of 0.1dB"; + } + leaf ingress-ampli-thr-deg-high-config { + type string; + description + "Ingress Ampli gain high degrade threshold + configured value in units of 0.1dB"; + } + leaf egress-ampli-gain-range-config-val { + type Optics-amplifier-gain-range; + description + "egress ampli gain range config val"; + } + leaf egress-ampli-gain-config { + type string; + description + "Egress Ampli gain configured value in units of 0 + .1dB"; + } + leaf egress-ampli-tilt-config { + type string; + description + "Egress Ampli tilt configured value in units of 0 + .1dB"; + } + leaf egress-ampli-gain-thr-deg-low-config { + type string; + description + "Egress Ampli gain low degrade threshold + configured value in units of 0.1dB"; + } + leaf egress-ampli-gain-thr-deg-high-config { + type string; + description + "Egress Ampli gain high degrade threshold + configured value in units of 0.1dB"; + } + leaf is-ext-param-valid { + type boolean; + description + "Are the Extended Parameters Valid ?"; + } + leaf alarm-detected { + type boolean; + description + "Are there any alarms ?"; + } + leaf rx-low-warning-threshold { + type int32; + description + "Rx Low Warning threshold value in units of 0 + .1dBm"; + } + leaf rx-high-warning-threshold { + type int32; + description + "Rx High Warning threshold value in units of 0 + .1dBm"; + } + leaf tx-low-warning-threshold { + type int32; + description + "Tx Low Warning threshold value in units of 0 + .1dBm"; + } + leaf tx-high-warning-threshold { + type int32; + description + "Tx High Warning threshold value in units of 0 + .1dBm"; + } + leaf lbc-th-high-warning-default { + type int32; + description + "LBC high Warning threshold default value in + units of 0.001mA"; + } + leaf lbc-th-low-warning-default { + type int32; + description + "LBC low warning threshold default value in units + of 0.001mA"; + } + leaf temp-low-warning-threshold { + type int32; + description + "Temp Low warning threshold value in the units 0 + .01C"; + } + leaf temp-high-warning-threshold { + type int32; + description + "Temp High warning threshold value in the units + of 0.01C"; + } + leaf volt-low-warning-threshold { + type int32; + description + "Volt Low warning threshold value in the units of + 0.01V"; + } + leaf volt-high-warning-threshold { + type int32; + description + "Volt High warning threshold value in the units + of 0.01V"; + } + leaf description { + type string; + description + "Controller description string"; + } + leaf ampli-gain-range { + type Optics-amplifier-gain-range; + description + "Ampli gain range"; + } + leaf safety-control-mode { + type Optics-amplifier-safety-control-mode; + description + "Safety control mode"; + } + leaf osri { + type boolean; + description + "OSRI"; + } + leaf tx-enable { + type boolean; + description + "TX Enable"; + } + leaf rx-enable { + type boolean; + description + "RX Enable"; + } + leaf is-optics-type-string-valid { + type boolean; + description + "Is the Optics type string valid ?"; + } + leaf optics-type-str { + type string; + description + "optics type String"; + } + leaf rx-low-threshold-current { + type int32; + description + "Rx Low threshold actual value in units of 0.1dBm"; + } + leaf rx-span-loss { + type int32; + description + "RX Span Loss in units of 0.01 dB"; + } + leaf tx-span-loss { + type int32; + description + "TX Span Loss in units of 0.01 dB"; + } + leaf baud-rate { + type string; + description + "Baud Rate in GBd"; + } + leaf bits-per-symbol { + type string; + description + "Bits per Symbol"; + } + leaf rx-low-threshold-delta { + type int32; + description + "Rx Low threshold delta value in units of 0.1dB"; + } + leaf wait-to-restore { + type uint32; + units "second"; + description + "elapse time to trigger psm revert in units of + seconds"; + } + leaf channel-width { + type uint32; + description + "Channel Width"; + } + leaf channel-central-freq { + type uint64; + description + "Channel Central Frequency"; + } + leaf rx-psd { + type string { + length "0..16"; + } + description + "Received Power spectral density in microwatts + per megahertz, uW/MHz"; + } + leaf tx-psd { + type string { + length "0..16"; + } + description + "Transmit Power spectral density in microwatts + per megahertz, uW/MHz"; + } + leaf snr { + type string; + description + "Signal to Noise Ratio dB"; + } + leaf back-reflection { + type int32; + description + "Back Reflected Transmit Power in units of 0.1dBm"; + } + leaf cd-display { + type boolean; + description + "CD param to be displayed only"; + } + leaf cfg-tx-power-display { + type boolean; + description + "Config Tx power to be displayed only"; + } + leaf add-drop-channel { + type string; + description + "Add Drop Channel R/S/I/P/ch"; + } + leaf line-channel { + type string; + description + "Line Channel R/S/I/P/ch"; + } + leaf ingress-ampli-gain { + type string; + description + "Ingress Ampli Gain in the unit of 0.1dB"; + } + leaf ingress-ampli-tilt { + type string; + description + "Ingress Ampli Tilt in the unit of 0.1dB"; + } + leaf ingress-ampli-gain-range { + type Optics-amplifier-gain-range; + description + "Ingress Ampli gain range"; + } + leaf egress-ampli-gain { + type string; + description + "Egress Ampli Gain in the unit of 0.1dB"; + } + leaf egress-ampli-tilt { + type string; + description + "Egress Ampli Tilt in the unit of 0.1dB"; + } + leaf egress-ampli-gain-range { + type Optics-amplifier-gain-range; + description + "Egress Ampli gain range"; + } + leaf composite-raman-power { + type string; + description + "Composite Raman Power"; + } + leaf central-frequncy { + type string; + description + "frequency read from hw in the units of THz"; + } + leaf wavelength { + type string; + description + "Wavelength in unit of dB"; + } + leaf total-cl-tx-power { + type string; + description + "Total (L+C)-transmit Power in the unit of 0 + .01dBm"; + } + leaf total-cl-rx-power { + type string; + description + "Total (L+C)-receive Power in the unit of 0.01dBm"; + } + leaf ingress-ampli-osri { + type boolean; + description + "Ingress Ampli Osri"; + } + leaf egress-ampli-osri { + type boolean; + description + "Egress Ampli Osri"; + } + leaf ingress-ampli-force-apr { + type boolean; + description + "Ingress Ampli Force Apr"; + } + leaf egress-ampli-force-apr { + type boolean; + description + "Egress Ampli Force Apr"; + } + leaf egress-ampli-br { + type Ots-back-reflection-state; + description + "Egress Ampli Br"; + } + leaf ingress-ampli-safety-control-mode { + type Optics-amplifier-safety-control-mode; + description + "Ingress Ampli Safety control mode"; + } + leaf egress-ampli-safety-control-mode { + type Optics-amplifier-safety-control-mode; + description + "Egress Ampli Safety control mode"; + } + leaf ingress-ampli-safety-control-mode-configured { + type Optics-amplifier-safety-control-mode; + description + "Ingress Ampli Safety Control Mode Configured"; + } + leaf egress-ampli-safety-control-mode-configured { + type Optics-amplifier-safety-control-mode; + description + "Egress Ampli Safety Control Mode Configured"; + } + leaf egress-br-high-threshold { + type int32; + description + "Egress Br High Threshold in units of 0.1 dBm"; + } + leaf ingress-ampli-osri-configured { + type boolean; + description + "Ingress Ampli Osri Configured"; + } + leaf egress-ampli-osri-configured { + type boolean; + description + "Egress Ampli Osri Configured"; + } + leaf ingress-ampli-force-apr-configured { + type boolean; + description + "Ingress Ampli Force Apr Configured"; + } + leaf egress-ampli-force-apr-configured { + type boolean; + description + "Egress Ampli Force Apr Configured"; + } + leaf egress-ampli-br-configured { + type Ots-back-reflection-state; + description + "Egress Ampli Br Configured"; + } + leaf raman-safety-control-mode { + type Optics-amplifier-safety-control-mode; + description + "Raman Safety control mode"; + } + leaf raman-safety-control-mode-configured { + type Optics-amplifier-safety-control-mode; + description + "Raman Safety control mode Configured"; + } + leaf raman-osri { + type boolean; + description + "Raman Osri"; + } + leaf raman-force-apr { + type boolean; + description + "Raman Force Apr"; + } + leaf raman-br { + type Ots-back-reflection-state; + description + "Raman Br"; + } + leaf raman-br-high-threshold { + type int32; + description + "Raman Br High Threshold in units of 0.1 dBm"; + } + leaf raman-osri-configured { + type boolean; + description + "Raman Osri Configured"; + } + leaf raman-force-apr-configured { + type boolean; + description + "Raman Force Apr Configured"; + } + leaf raman-br-configured { + type Ots-back-reflection-state; + description + "Raman Br Configured"; + } + leaf channel-attenuation { + type int32; + description + "Channel Attenuation in units of 0.1 dB"; + } + leaf channel-attenuation-configured { + type int32; + description + "Channel Attenuation Configured in units of 0.1 + dB"; + } + leaf dac-rate-type { + type Optics-dac-rate; + description + "Available Dac Rate Types"; + } + leaf dac-rate-configured { + type Optics-dac-rate; + description + "DAC Rate"; + } + leaf lane-display-index0 { + type boolean; + description + "lane display index0"; + } + leaf rx-high-thresholdm-w { + type int32; + description + "Rx High threshold value in units of 0.1mW"; + } + leaf rx-low-thresholdm-w { + type int32; + description + "Rx low threshold value in units of 0.1mW"; + } + leaf rx-high-warning-thresholdm-w { + type int32; + description + "Rx High Warning threshold value in units of 0 + .1mW"; + } + leaf rx-low-warning-thresholdm-w { + type int32; + description + "Rx Low Warning threshold value in units of 0.1mW"; + } + leaf tx-low-thresholdm-w { + type int32; + description + "Tx Low threshold value in units of 0.1mW"; + } + leaf tx-high-thresholdm-w { + type int32; + description + "Tx High threshold value in units of 0.1mW"; + } + leaf tx-high-warning-thresholdm-w { + type int32; + description + "Tx High Warning threshold value in units of 0 + .1mW"; + } + leaf tx-low-warning-thresholdm-w { + type int32; + description + "Tx Low Warning threshold value in units of 0.1mW"; + } + leaf cfg-tx-powerm-w { + type int32; + description + "Configured Tx power value in units of 0.1mW"; + } + leaf total-rx-powerm-w { + type int32; + description + "Total Receive Power for Multi-Lane Optics in + units of 0.1 mW"; + } + leaf total-tx-powerm-w { + type int32; + description + "Total Transmit Power for Multi-Lane Optics in + units of 0.1 mW"; + } + list lane-data { + description + "Lane information"; + uses OPTICS-EDM-LANE-DATA; + } + } + + grouping OTS-EDM-SPECTRUM-POWER-INFO { + description + "OTS EDM SPECTRUM POWER INFO"; + leaf slice-num { + type uint32; + description + "spectrum slice number"; + } + leaf lower-frequency { + type uint64; + description + "Lower frequency of the specified PSD"; + } + leaf upper-frequency { + type uint64; + description + "Upper frequency of the specified PSD"; + } + leaf rx-power { + type int32; + description + "Received Power in dBm multiplied by 100"; + } + leaf tx-power { + type int32; + description + "Transmit Power in dBm multiplied by 100"; + } + leaf rx-psd { + type string { + length "0..16"; + } + description + "Received Power spectral density in microwatts + per megahertz, uW/MHz"; + } + leaf tx-psd { + type string { + length "0..16"; + } + description + "Transmit Power spectral density in microwatts + per megahertz, uW/MHz"; + } + } + + grouping OTS-EDM-SPECTRUM-INFO { + description + "power information of slices in optical spectrum"; + leaf total-spectrum-slice-count { + type uint32; + description + "Total number of slices in Spectrum"; + } + leaf spectrum-slice-spacing { + type uint32; + description + "Spacing between spectrum slices"; + } + leaf first-slice-wavelength { + type string { + length "0..32"; + } + description + "Wavelength of first slice"; + } + list spectrum-slice-power-info { + description + "Power information of spectrum slice info"; + uses OTS-EDM-SPECTRUM-POWER-INFO; + } + } + + grouping OPTICS-EDM-SPECTRUM-INFO { + description + "optics spectrum information"; + container spectrum-info { + description + "OTS Spectrum information"; + uses OTS-EDM-SPECTRUM-INFO; + } + } + + grouping OPTICS-EDM-CHANNEL-WAVELENGTH-MAP-INFO { + description + "OPTICS EDM CHANNEL WAVELENGTH MAP INFO"; + leaf itu-chan-num { + type uint32; + description + "ITU channel number"; + } + leaf chan-index { + type uint32; + description + "channel Index"; + } + leaf g694-chan-num { + type int32; + description + "G694 channel number"; + } + leaf frequency { + type string { + length "0..32"; + } + description + "Frequency"; + } + leaf wavelength { + type string { + length "0..32"; + } + description + "Wavelength"; + } + } + + grouping OPTICS-EDM-WAVE-INFO { + description + "wavelength channel mapping information"; + leaf dwdm-carrier-band { + type Optics-wave-band; + description + "DWDM carrier band"; + } + leaf dwdm-carrier-min { + type uint32; + description + "Lowest DWDM carrier supported"; + } + leaf dwdm-carrier-max { + type uint32; + description + "Highest DWDM carrier supported"; + } + list dwdm-carrier-map-info { + description + "DWDM carrier mapping info"; + uses OPTICS-EDM-CHANNEL-WAVELENGTH-MAP-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper.yang new file mode 100644 index 000000000..ff402309f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-optics-oper.yang @@ -0,0 +1,234 @@ +module Cisco-IOS-XR-controller-optics-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-optics-oper"; + prefix controller-optics-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-optics-oper-sub1 { + revision-date 2022-12-02; + } + + 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 controller-optics package operational data. + + This module contains definitions + for the following management objects: + optics-oper: Optics operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "enum added for new Optics Phy Type for 400G Bright ZRP module + 2022-11-04 + enum OPTICS_FORM_FACTOR_OSFP added in Form Factor list for OSFP module + 2022-10-02 + enum added for new Optics Phy Type for QSFP-DD DUAL EDFA module + 2022-09-10 + enum added for new Optics Phy Type for 2x400G LR4 module + 2022-05-10 + enum added for new Optics Phy Type for Credo 800G AEC + 2022-04-22 + enum added for new Optics Phy Type for 8x100G FR module + 2022-02-03 + Added power fields in mW unit in Grey lane data + 2022-01-28 + introducing lane0 alarm counters paramaters for those platforms which want to use lanes from 0-7 + 2022-01-27 + Added power fields for mW unit in optics transponder information + 2022-01-20 + enum added for new QSA Adapter Cazadero28 + 2022-01-07 + enum added for new Optics Phy Type for 400G SR8 module + 2022-01-06 + New Enum OPTICS_PHY_TYPE_1G_LH are added in enum OpticsPhyType + 2021-12-22 + enum added for new Optics Phy Type 100m FE FX + 2021-12-03 + enumadded for new Optics Phy Type for 200G FR4 modules + 2021-11-27 + Added Dac Rate field in optics_edm_info. + 2021-11-22 + Added threshold fields for mW unit in optics transponder information + 2021-10-08 + enum added for new Optics Phy Type for 800G ELB module + 2021-09-20 + enum added for new Optics Phy Type for 2x400G FR and 8x100 DR module"; + semver:module-version "5.1.0"; + } + revision 2021-09-17 { + description + "enumadded for new Optics Phy Type for 200G Cu, 200G AOC, 2x200G CU and 2x200G AOC modules + 2021-07-30 + New Enum OPTICS_PHY_TYPE_100G_ERL are added in enum OpticsPhyType + 2021-07-06 + enum added for new Optics Phy Type for 4x100G LR module + 2021-06-22 + New OPTICS_PHY_TYPE_16G_FC,OPTICS_PHY_TYPE_32G_FC are added in enum OpticsPhyType + 2021-06-21 + New Enums added for FibreChannel 16G and 32G Optics Phy type + 2021-06-10 + New parameters added in bag + 2021-05-27 + DAC rate and Laser temperature and laser age Added for Optics Controller"; + semver:module-version "5.0.0"; + } + revision 2021-04-14 { + description + "New Enums added for Multirate Optics Phy type + 2021-03-22 + New Enums added for Optics Phy type + 2021-02-23 + enum added for new Optics Phy Type for 400G LR4 module + 2021-02-19 + enum added for 1 new Optics Phy Type and new value added to enum EthernetPmdType + 2021-02-17 + New OPTICS_ETH_100GBASE_DR_S added to enum EthernetPmdType + 2021-01-18 + Added 2 enums for New FEC Type. + 2020-12-23 + New value added to enum EthernetPmdType + 2020-11-24 + Enum value in optics_modulation_type is changed from MODE_16QAM_32QAM to MOD_16QAM_32QAM + 2020-11-10 + enum added for 1 new Optics Phy Type for 100G DR-S optics module + 2020-09-10 + removed optics_edm_fastpoll_info and added new bag optics_edm_fastpoll_data + 2020-08-02 + New values added to enum FiberConnectorType + 2020-07-24 + New value added in optics yang for FastPollInfo + 2020-07-14 + New value added to enum EthernetPmdType"; + semver:module-version "4.0.0"; + } + revision 2020-04-26 { + description + "New value added to enum EthernetPmdType + 2020-02-24 + enum added for OTN Application code. + 2020-02-19 + enum added for 1 new Optics Phy Type + 2020-01-31 + enum added for 1 new Optics Phy Type + 2020-01-27 + Added new parameters in optics bag to display parameters which are not configurable + 2019-12-05 + enum added for 2 new OTN Application codes. + 2019-11-30 + Back Reflection data field is added in bag. + 2019-09-30 + chan_num data field is added to support L-Band frequency range."; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container optics-oper { + config false; + description + "Optics operational data"; + container optics-ports { + description + "All Optics Port operational data"; + list optics-port { + key "name"; + description + "Optics operational data"; + container optics-dwdm-carrier-channel-map { + description + "Optics operational data"; + uses OPTICS-EDM-WAVE-INFO; + } + container ots-spectrum-info { + description + "Ots Spectrum Operational data"; + uses OPTICS-EDM-SPECTRUM-INFO; + } + container optics-dwdm-carrier-channel-map-flexi { + description + "Optics operational data"; + uses OPTICS-EDM-WAVE-INFO; + } + container optics-info { + description + "Optics operational data"; + uses OPTICS-EDM-INFO; + } + container optics-fastpolls { + description + "All Optics Fastpoll operational data"; + list optics-fastpoll { + key "unique-id"; + description + "Fastpoll Information"; + leaf unique-id { + type uint32; + description + "Fastpoll Index"; + } + uses OPTICS-EDM-FASTPOLL-DATA; + } + } + container optics-lanes { + description + "All Optics Port operational data"; + list optics-lane { + key "number"; + description + "Lane Information"; + leaf number { + type uint32; + description + "Lane Index"; + } + uses OPTICS-EDM-LANE-DATA; + } + } + container optics-db-info { + description + "Optics operational data"; + uses OPTICS-DB-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-cfg.yang new file mode 100644 index 000000000..56a299dd2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-cfg.yang @@ -0,0 +1,143 @@ +module Cisco-IOS-XR-controller-osc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-osc-cfg"; + prefix controller-osc-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-osc package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-04 { + description + "Name of the enum ThresholdType is changed to OtsThresholdType"; + semver:module-version "1.0.0"; + } + revision 2020-10-16 { + description + "New Cfg Model Added for Osc Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-threshold { + type enumeration { + enum "low" { + value 1; + description + "Low Threshold"; + } + enum "high" { + value 2; + description + "High Threshold"; + } + } + description + "Ots threshold"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container osc { + description + "Osc controller configuration"; + container tx-thresholds { + description + "Configure TX threshold"; + list tx-threshold { + key "tx-threshold-type"; + description + "Configure transponder transmit power threshold"; + leaf tx-threshold-type { + type Ots-threshold; + description + "Low or high tx threshold"; + } + leaf tx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm"; + } + } + } + container rx-thresholds { + description + "Configure RX threshold"; + list rx-threshold { + key "rx-threshold-type"; + description + "Configure transponder receive power threshold"; + leaf rx-threshold-type { + type Ots-threshold; + description + "Low or high rx threshold"; + } + leaf rx-threshold { + type int32 { + range "-400..300"; + } + mandatory true; + description + "Select power level (in units of 0.1dBm)"; + } + } + } + leaf osc-transmit-power { + type int32 { + range "-190..50"; + } + description + "Select Power Level (in units of 0.1dBm)"; + } + leaf osc-transmit-shutdown { + type boolean; + description + "Configure Osc transmit laser shutdown"; + } + leaf osc-tx-voa-attenuation { + type uint32 { + range "0..200"; + } + description + "Select Tx Voa Attenuation Level (in units of 0 + .1dB)"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper-sub1.yang new file mode 100644 index 000000000..c4fe1a2e3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper-sub1.yang @@ -0,0 +1,229 @@ +submodule Cisco-IOS-XR-controller-osc-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-osc-oper { + prefix Cisco-IOS-XR-controller-osc-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-osc package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-16 { + description + "New Oper Model Added for Osc Controller"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-tas { + type enumeration { + enum "ots-tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ots-tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ots-tas-ui-is" { + value 2; + description + "In Service"; + } + enum "ots-tas-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ots tas"; + } + + typedef Ots-controller-state { + type enumeration { + enum "ots-state-up" { + value 0; + description + "Up"; + } + enum "ots-state-down" { + value 1; + description + "Down"; + } + enum "ots-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Ots controller state"; + } + + typedef Laser-state { + type enumeration { + enum "on" { + value 0; + description + "On"; + } + enum "off" { + value 1; + description + "Off"; + } + enum "unknown" { + value 2; + description + "Unknown"; + } + enum "apr" { + value 3; + description + "Apr"; + } + enum "na" { + value 4; + description + "N/A"; + } + } + description + "Laser state"; + } + + grouping OTS-ALARM-INFO { + description + "Optics Alarm Detail"; + leaf is-detected { + type boolean; + description + "is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OSC-EDM-INFO { + description + "OSC/DFB controller operational information"; + container rx-los-p { + description + "RX LOS P"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX POWER FAIL LOW"; + uses OTS-ALARM-INFO; + } + leaf laser-state { + type Laser-state; + description + "Showing laser state.Either ON or OFF or unknown"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf controller-state { + type Ots-controller-state; + description + "Ots controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf transport-admin-state { + type Ots-tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf total-rx-power { + type int32; + description + "Total Receive Power for OSC in units of 0.01 dBm"; + } + leaf total-tx-power { + type int32; + description + "Total Transmit Power for OSC in units of 0.01 + dBm"; + } + leaf receive-signal-power { + type int32; + description + "Transponder receive signal power in the units of + 0.01dBm"; + } + leaf transmit-signal-power { + type int32; + description + "Transmit Signal power in the units of 0.01dBm"; + } + leaf rx-voa-attenuation { + type int32; + description + "Rx Voa Attenuation in the units of 0.1dB"; + } + leaf tx-voa-attenuation { + type int32; + description + "Tx Voa Attenuation in the units of 0.1dB"; + } + leaf central-frequncy { + type uint32; + description + "frequency read from hw in the units of 0.01 THz"; + } + leaf wavelength { + type uint32; + description + "Wavelength in unit of 0.01 nm"; + } + leaf rx-voa-attenuation-config-val { + type int32; + description + "RX VOA attenuation configured value in units of + 0.1dB"; + } + leaf tx-voa-attenuation-config-val { + type int32; + description + "TX VOA attenuation configured value in units of + 0.1dB"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper.yang new file mode 100644 index 000000000..853bd84fa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-osc-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-controller-osc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-osc-oper"; + prefix controller-osc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-osc-oper-sub1 { + revision-date 2020-10-16; + } + + 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 controller-osc package operational data. + + This module contains definitions + for the following management objects: + osc-oper: Osc operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-16 { + description + "New Oper Model Added for Osc Controller"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container osc-oper { + config false; + description + "Osc operational data"; + container osc-ports { + description + "All Osc Port operational data"; + list osc-port { + key "name"; + description + "Osc operational data"; + container osc-info { + description + "Osc operational data"; + uses OSC-EDM-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-cfg.yang new file mode 100644 index 000000000..45fbe7534 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-cfg.yang @@ -0,0 +1,634 @@ +module Cisco-IOS-XR-controller-ots-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ots-cfg"; + prefix controller-ots-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-ots package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-04 { + description + "leaf raman-safety-control-mode is removed from configuration"; + semver:module-version "1.0.0"; + } + revision 2022-12-28 { + description + "datatype is changed to signed int32 for ingress-ampli, egress-ampli, tx-voa-attn"; + } + revision 2022-11-16 { + description + "Config for expected tone pattern below minimum length gets accepted on passive controllers,correction of the same"; + } + revision 2022-10-17 { + description + "egress-ampli-power config support added"; + } + revision 2022-08-22 { + description + "Removal of egress-ampli-br-high-th, egress-ampli-br and Ots-br-state"; + } + revision 2022-08-22 { + description + "Removal of egress-ampli-br-high-th, egress-ampli-br and Ots-br-state"; + } + revision 2022-06-15 { + description + "Range increased for ots ingress and egress ampli gain max value"; + } + revision 2022-05-31 { + description + "ots-rx-low-threshold and ots-tx-low-threshold leaves are added for ots info container"; + } + revision 2021-12-23 { + description + "Parameters egress_ampli_br_high_th_cfgd, egress_ampli_br_cfgd, raman_br_cfgd and raman_br_high_th_cfgd are removed from configuration"; + } + revision 2021-11-30 { + description + "raman tx power disable parameter support added"; + } + revision 2021-11-26 { + description + "excess reflection threshold parameter support added"; + } + revision 2021-06-30 { + description + "Added OTS OTDR config parameters"; + } + revision 2021-06-01 { + description + "Added OTS TX Voa Attenuation and changed range for Ingress and Egress Ampli Gain Params"; + } + revision 2021-03-28 { + description + "egress-ampli-br-high-th-cfgd, egress-ampli-br-cfgd are added to configuration"; + } + revision 2021-03-16 { + description + "Ingress/Egress Channel Attenuation config Params added for Ots Controller"; + } + revision 2021-02-17 { + description + "Raman safety config Params added"; + } + revision 2021-02-08 { + description + "Ingress/Egress safety config Params added"; + } + revision 2020-09-02 { + description + "Raman Transmit Params added for Ots Controller"; + } + revision 2020-08-21 { + description + "New Cfg Model Added for Ots Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-ingress-egress-ampli-gain-range { + type enumeration { + enum "normal" { + value 1; + description + "Normal Amplifier Gain Range"; + } + enum "extended" { + value 2; + description + "Extended Amplifier Gain Range"; + } + } + description + "Ots ingress egress ampli gain range"; + } + + typedef Ots-back-reflection-state { + type enumeration { + enum "disable" { + value 0; + description + "Back Reflection State, Disable"; + } + enum "enable" { + value 1; + description + "Back Reflection State, Enable"; + } + } + description + "Ots back reflection state"; + } + + typedef Ots-safety-control-mode { + type enumeration { + enum "auto" { + value 1; + description + "Automatic Safety Control Mode"; + } + enum "disabled" { + value 2; + description + "Disable Safety Control Mode"; + } + } + description + "Ots safety control mode"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ots { + description + "Ots controller configuration"; + container ingress-channel-slice-attns { + description + "Configure Ingress Channel Slice"; + list ingress-channel-slice-attn { + key "ingress-channel-slice-attn"; + description + "Configure Ingress Channel Slice Attenuation + Value"; + leaf ingress-channel-slice-attn { + type uint32 { + range "1..1548"; + } + description + "Ingress Channel Slice Attenuation"; + } + leaf ingress-channel-slice-attnvalue { + type uint32 { + range "0..250"; + } + mandatory true; + description + "Ingress Channel Slice Attenuation Value"; + } + } + } + container raman-tx-power-disables { + description + "Configure Raman Transmit Power Disable + Parameter"; + list raman-tx-power-disable { + key "raman-tx-power-disable-instance"; + description + "Configure RamanTxPowerDisable Value"; + leaf raman-tx-power-disable-instance { + type uint32 { + range "1..5"; + } + description + "Raman Tx Power Disable Instance"; + } + } + } + container raman-tx-powers { + description + "Configure Raman Transmit Power Parameter"; + list raman-tx-power { + key "raman-tx-power-instance"; + description + "Configure RamanTxPower Value"; + leaf raman-tx-power-instance { + type uint32 { + range "1..5"; + } + description + "Raman Tx Power Instance"; + } + leaf raman-tx-power-value { + type uint32 { + range "3500..39000"; + } + mandatory true; + description + "Raman Tx Power value"; + } + } + } + container ots-otdr { + description + "Configure OTDR parameters"; + container ots-otdr-rx { + description + "Configure OTDR RX parameters"; + container ots-otdr-rx-expert { + description + "Configure OTDR RX Expert parameters"; + leaf ots-otdr-rx-capture-start { + type uint32 { + range "0..10000000"; + } + description + "Select OTDR RX Capture Start "; + } + leaf ots-otdr-rx-scan-duration { + type uint32 { + range "0..180"; + } + description + "Select OTDR RX Scan Duration "; + } + leaf ots-otdr-rx-pulse-width { + type uint32 { + range "1..500000"; + } + description + "Select OTDR RX Pulse Width "; + } + leaf ots-otdr-rx-capture-end { + type uint32 { + range "0..15000000"; + } + description + "Select OTDR RX Capture End "; + } + } + container ots-otdr-rx-auto { + description + "Configure OTDR RX Auto parameters"; + leaf ots-otdr-rx-excess-reflection-threshold { + type int32 { + range "-50..-10"; + } + description + "Select OTDR RX Excess Reflection Threshold + "; + } + leaf ots-otdr-rx-splice-loss-threshold { + type uint32 { + range "200..5000"; + } + description + "Select OTDR RX Splice Loss Threshold (In + unit of 0.001 db)"; + } + leaf ots-otdr-rx-raman-setpoint { + type uint32 { + range "0..170"; + } + description + "Select OTDR RX Raman Setpoint "; + } + leaf ots-otdr-rx-reflectance-threshold { + type int32 { + range "-50..-10"; + } + description + "Select OTDR RX Reflectance Threshold "; + } + } + leaf ots-otdr-rx-back-scattering { + type int32 { + range "-9000..-7000"; + } + description + "Select OTDR RX Back Scattering "; + } + leaf ots-otdr-rx-refractive-index { + type uint32 { + range "1000000..2000000"; + } + description + "Select OTDR TX Refractive Index "; + } + } + container ots-otdr-scan-mode { + description + "Configure OTDR Scan Mode"; + leaf ots-otdr-scan-mode-expert { + type empty; + description + "Configure Otdr Scan Mode to expert"; + } + } + container ots-otdr-tx { + description + "Configure OTDR TX parameters"; + container ots-otdr-tx-expert { + description + "Configure OTDR TX Expert parameters"; + leaf ots-otdr-tx-capture-end { + type uint32 { + range "0..15000000"; + } + description + "Select OTDR TX Capture End "; + } + leaf ots-otdr-tx-scan-duration { + type uint32 { + range "0..180"; + } + description + "Select OTDR TX Scan Duration "; + } + leaf ots-otdr-tx-capture-start { + type uint32 { + range "0..10000000"; + } + description + "Select OTDR TX Capture Start "; + } + leaf ots-otdr-tx-pulse-width { + type uint32 { + range "1..500000"; + } + description + "Select OTDR TX Pulse Width "; + } + } + container ots-otdr-tx-auto { + description + "Configure OTDR TX Auto parameters"; + leaf ots-otdr-tx-splice-loss-threshold { + type uint32 { + range "200..5000"; + } + description + "Select OTDR TX Splice Loss Threshold (In + unit of 0.001 db)"; + } + leaf ots-otdr-tx-excess-reflection-threshold { + type int32 { + range "-50..-10"; + } + description + "Select OTDR TX Excess Reflection Threshold + "; + } + leaf ots-otdr-tx-raman-setpoint { + type uint32 { + range "0..170"; + } + description + "Select OTDR TX Raman Setpoint "; + } + leaf ots-otdr-tx-reflectance-threshold { + type int32 { + range "-50..-10"; + } + description + "Select OTDR TX Reflectance Threshold "; + } + } + leaf ots-otdr-tx-refractive-index { + type uint32 { + range "1000000..2000000"; + } + description + "Select OTDR TX Refractive Index "; + } + leaf ots-otdr-tx-back-scattering { + type int32 { + range "-9000..-7000"; + } + description + "Select OTDR TX Back Scattering "; + } + } + } + container egress-channel-slice-attns { + description + "Configure Egress Channel Slice"; + list egress-channel-slice-attn { + key "egress-channel-slice-attn"; + description + "Configure Egress Channel Slice Attenuation + Value"; + leaf egress-channel-slice-attn { + type uint32 { + range "1..1548"; + } + description + "Egress Channel Slice Attenuation"; + } + leaf egress-channel-slice-attnvalue { + type uint32 { + range "0..250"; + } + mandatory true; + description + "Egress Channel Slice Attenuation Value"; + } + } + } + leaf ots-egress-safety-control-mode { + type Ots-safety-control-mode; + description + "Configure Egress safety Control Mode"; + } + leaf ots-ingress-amplifier-gain { + type int32 { + range "80..400"; + } + description + "Select Amplifier Gain value(in units of 0.1dBm)"; + } + leaf ots-tone-pattern-expected { + type string { + length "8..64"; + } + description + "Enter HexString Values(Min Length 8 Bytes to + Max Length 64 Bytes)"; + } + leaf ots-egress-amplifier-back-reflection-high-threshold { + type int32 { + range "-500..300"; + } + description + "Select Egress Ampli Back Reflection High + Threshold(in units of 0.1dBm)"; + } + leaf ots-ingress-osri { + type boolean; + description + "Configure Ingress Optical safety remote + interlock (OSRI)"; + } + leaf ots-ingress-amplifier-gain-degrade-high-threshold { + type int32 { + range "0..500"; + } + description + "Select Ingress Amplifier Gain Degrade High + Threshold(in units of 0.1dBm)"; + } + leaf ots-tx-voa-attenuation { + type int32 { + range "0..200"; + } + description + "Select TX Voa Attenuation Setpoint(in units of + 0.1dBm)"; + } + leaf ots-ingress-safety-control-mode { + type Ots-safety-control-mode; + description + "Configure Ingress safety Control Mode"; + } + leaf ots-tone-detect-oob { + type empty; + description + "configure tone detect oob"; + } + leaf ots-ingress-force-apr { + type boolean; + description + "Configure Ingress Optical Force Automatic Power + Reduction"; + } + leaf ots-raman-force-apr { + type boolean; + description + "Configure Raman Optical Force Automatic Power + Reduction"; + } + leaf ots-egress-amplifier-gain-degrade-low-threshold { + type int32 { + range "0..500"; + } + description + "Select Egress Amplifier Gain Degrade Low + Threshold(in units of 0.1dBm)"; + } + leaf ots-ingress-amplifier-gain-degrade-low-threshold { + type int32 { + range "0..500"; + } + description + "Select Ingress Amplifier Gain Degrade Low + Threshold(in units of 0.1dBm)"; + } + leaf ots-egress-amplifier-tilt { + type int32 { + range "-50..50"; + } + description + "Select Amplifier Tilt value(in units of 0.1dB)"; + } + leaf ots-tone-frequency { + type string; + description + "Enter value between 191.175 THz and 196.175 THz + GHz in steps of 100 MHz"; + } + leaf ots-egress-amplifier-gain { + type int32 { + range "80..400"; + } + description + "Select Amplifier Gain value(in units of 0.1dBm)"; + } + leaf ots-tone-pattern { + type string; + description + "Configure Tone Pattern"; + } + leaf ots-egress-amplifier-back-reflection { + type Ots-back-reflection-state; + description + "Configure Optical Egress Ampli Back Reflection + as Enable or Disable"; + } + leaf ots-egress-amplifier-gain-degrade-high-threshold { + type int32 { + range "0..500"; + } + description + "Select Egress Amplifier Gain Degrade High + Threshold(in units of 0.1dBm)"; + } + leaf ots-raman-osri { + type boolean; + description + "Configure Optical safety remote interlock + (OSRI)"; + } + leaf ots-egress-osri { + type boolean; + description + "Configure Egress Optical safety remote + interlock (OSRI)"; + } + leaf ots-egress-amplifier-gain-range { + type Ots-ingress-egress-ampli-gain-range; + description + "Configure EGRESS AMPLIFIER GAIN Range"; + } + leaf ots-ingress-amplifier-gain-range { + type Ots-ingress-egress-ampli-gain-range; + description + "Configure INGRESS AMPLIFIER GAIN Range"; + } + leaf ots-ingress-amplifier-tilt { + type int32 { + range "-50..50"; + } + description + "Select Amplifier Tilt value(in units of 0.1dB)"; + } + leaf ots-tone-rate { + type uint32 { + range "2..25"; + } + description + "Configure Tone Rate"; + } + leaf ots-egress-force-apr { + type boolean; + description + "Configure Egress Optical Force Automatic Power + Reduction"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper-sub1.yang new file mode 100644 index 000000000..875cfc618 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper-sub1.yang @@ -0,0 +1,1251 @@ +submodule Cisco-IOS-XR-controller-ots-och-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-ots-och-oper { + prefix Cisco-IOS-XR-controller-ots-och-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-ots-och package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-19 { + description + "Removed container channel-attenuation-info and egress-amplifier-back-reflection, egress-amplifier-back-reflection-high-threshold and egress-amplifier-back-reflection-configured leaves"; + semver:module-version "1.0.0"; + } + revision 2022-03-07 { + description + "Removed Low-Tx-PWR information from ots_ui.bag"; + } + revision 2020-07-09 { + description + "New Oper Model Added for Ots-Och Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-port { + type enumeration { + enum "com" { + value 0; + description + "Com"; + } + enum "line" { + value 1; + description + "Line"; + } + enum "osc" { + value 2; + description + "Osc"; + } + enum "com-check" { + value 3; + description + "Com Check"; + } + enum "work" { + value 4; + description + "Working"; + } + enum "prot" { + value 5; + description + "Protected"; + } + enum "add-drop" { + value 6; + description + "Add Drop"; + } + } + description + "Ots port"; + } + + typedef Ots-back-reflection-state-v1 { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Ots back reflection state v1"; + } + + typedef Conn-verfcn-state { + type enumeration { + enum "conn-vrfcn-state-failed" { + value 0; + description + "Failed"; + } + enum "conn-vrfcn-state-inprogress" { + value 1; + description + "Inprogress"; + } + enum "conn-vrfcn-state-success" { + value 2; + description + "Success"; + } + enum "conn-vrfcn-state-not-running" { + value 3; + description + "Notrunning"; + } + } + description + "Conn verfcn state"; + } + + typedef Led-state { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "na" { + value 7; + description + "Not Applicable"; + } + } + description + "Led state"; + } + + typedef Otdr-scan-status { + type enumeration { + enum "otdr-scan-status-stopped" { + value 0; + description + "Stopped"; + } + enum "otdr-scan-status-measuring" { + value 1; + description + "Measuring"; + } + enum "otdr-scan-status-data-processing" { + value 2; + description + "Data Processing"; + } + enum "otdr-scan-status-data-ready" { + value 3; + description + "Data Ready"; + } + enum "otdr-scan-status-error" { + value 4; + description + "Error"; + } + enum "otdr-scan-status-invalid" { + value 5; + description + "Invalid"; + } + } + description + "Otdr scan status"; + } + + typedef Ots-amplifier-control-mode { + type enumeration { + enum "automatic" { + value 1; + description + "Automatic"; + } + enum "manual" { + value 2; + description + "Manual"; + } + } + description + "Ots amplifier control mode"; + } + + typedef Ots-amplifier-safety-control-mode { + type enumeration { + enum "ots-amplifier-safety-mode-invalid" { + value 0; + description + "Invalid"; + } + enum "ots-amplifier-safety-mode-auto" { + value 1; + description + "auto"; + } + enum "ots-amplifier-safety-mode-disabled" { + value 2; + description + "disabled"; + } + } + description + "Ots amplifier safety control mode"; + } + + typedef Ots-amplifier-gain-range { + type enumeration { + enum "ots-amplifier-gain-range-invalid" { + value 0; + description + "Invalid"; + } + enum "ots-amplifier-gain-range-normal" { + value 1; + description + "Normal"; + } + enum "ots-amplifier-gain-range-ext-end-ed" { + value 2; + description + "Extended"; + } + } + description + "Ots amplifier gain range"; + } + + typedef Ots-controller-state { + type enumeration { + enum "ots-state-up" { + value 0; + description + "Up"; + } + enum "ots-state-down" { + value 1; + description + "Down"; + } + enum "ots-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Ots controller state"; + } + + typedef Ots-tas { + type enumeration { + enum "ots-tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ots-tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ots-tas-ui-is" { + value 2; + description + "In Service"; + } + enum "ots-tas-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ots tas"; + } + + grouping OTS-TONE-INFO { + description + "Ots Tone information"; + leaf tone-freq { + type string; + description + "Tone Frequency"; + } + leaf tone-rate { + type uint32; + description + "Tone Rate"; + } + leaf pattern { + type string; + description + "Tone pattern"; + } + leaf pattern-expected { + type string; + description + "Tone pattern expected"; + } + leaf dectected-oob { + type uint32; + description + "Detected OOB"; + } + leaf state { + type Conn-verfcn-state; + description + "Connection verification state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pattern-received { + type string; + description + "Tone pattern received"; + } + } + + grouping OTS-OCH-EDM-INFO { + description + "Ots-Och Alarm information"; + container rx-los-p { + description + "RX-LOS-P for ots-och"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX-POWER-FAIL-LOW for ots-och"; + uses OTS-ALARM-INFO; + } + } + + grouping OTS-ALARM-INFO { + description + "Optics Alarm Detail"; + leaf is-detected { + type boolean; + description + "is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OTS-OTDR-EVENT-INFO-BAG { + description + "OTS OTDR EVENT INFO BAG"; + leaf event-number { + type uint32; + description + "Event Number"; + } + leaf detected-event { + type uint32; + description + "Event Detected [Non-Reflective | Reflective | + Fiber-End | Excess-Reflection]"; + } + leaf location { + type int64; + description + "Location (in unit of 0.01m)"; + } + leaf accuracy { + type int64; + description + "Accuracy (in unit of 0.01m)"; + } + leaf magnitude { + type int64; + description + "Magnitude (in unit of 0.01db"; + } + leaf attenuation { + type int64; + description + "Attenuation/km (in unit of 0.01db)"; + } + } + + grouping OTS-OTDR-INFO-BAG { + description + "OTS OTDR Info"; + leaf scan-status { + type Otdr-scan-status; + description + "Scan Status [Stopped | Measuring | Data + Processing | Data Ready | Error]"; + } + leaf tracepoint-file { + type string; + description + "Tracepoint File"; + } + leaf total-events { + type uint32; + description + "Total Events"; + } + leaf scan-timestamp { + type string; + description + "Scan Timestamp"; + } + list event-info { + description + "Event Info"; + uses OTS-OTDR-EVENT-INFO-BAG; + } + } + + grouping OTS-RAMAN-TX-POWER-CONFIG { + description + "OTS Raman Transmit Power information"; + leaf raman-tx-power-instance { + type uint32; + description + "Raman Transmit Power Instance"; + } + leaf raman-tx-power-value { + type uint32; + description + "Raman Transmit Power Value in units of 0.01mW"; + } + } + + grouping OTS-RAMAN-PARAM-CONFIG { + description + "Proprietary Raman transmit power Parameters of + config"; + list raman-tx-power { + description + "raman transmit power count of config"; + uses OTS-RAMAN-TX-POWER-CONFIG; + } + } + + grouping OTS-EGRESS-CHANNEL-SLICE-V1 { + description + "OTS Egress Channel Slice Attenuation Information"; + leaf egress-channel-slice { + type uint32; + description + "Egress Channel Slice"; + } + leaf egress-channel-slice-attenuation { + type int32; + description + "Egress Channel Slice Attenuation in units of 0.1 + dB"; + } + } + + grouping OTS-EGRESS-CHANNEL-SLICE-PARAM-V1 { + description + "Egress Channel Slice Attenuation Params"; + list egress-channel-slice { + description + "Egress Channel Slice List"; + uses OTS-EGRESS-CHANNEL-SLICE-V1; + } + } + + grouping OTS-INGRESS-CHANNEL-SLICE-V1 { + description + "OTS Ingress Channel Slice Attenuation Information"; + leaf ingress-channel-slice { + type uint32; + description + "Ingress Channel Slice"; + } + leaf ingress-channel-slice-attenuation { + type int32; + description + "Ingress Channel Slice Attenuation in units of 0 + .1 dB"; + } + } + + grouping OTS-INGRESS-CHANNEL-SLICE-PARAM-V1 { + description + "Ingress Channel Slice Attenuation Parameters"; + list ingress-channel-slice { + description + "Ingress Channel Slice List"; + uses OTS-INGRESS-CHANNEL-SLICE-V1; + } + } + + grouping OTS-RECEIVE-POWER-V1 { + description + "Proprietary OTS Receive Power Parameters"; + list receive-power { + description + "Receive Power count"; + uses OTS-POWER-LIST-V1; + } + } + + grouping OTS-POWER-LIST-V1 { + description + "Proprietary OTS Transmit/Receive Power Parameters"; + leaf instance { + type uint32; + description + "Transmit/Receive Power Parameter Type(in units + of 0.01dBm)"; + } + leaf value { + type int32; + description + "Transmit/Receive Power Parameter Value(in unit + of 0.01dBm)"; + } + } + + grouping OTS-TRANSMIT-POWER-V1 { + description + "Proprietary OTS Transmit Power Parameters"; + list transmit-power { + description + "Transmit Power count"; + uses OTS-POWER-LIST-V1; + } + } + + grouping OTS-RAMAN-TX-POWER { + description + "OTS Raman Transmit Power information"; + leaf raman-tx-power-instance { + type uint32; + description + "Raman Transmit Power Intance"; + } + leaf raman-tx-power-value { + type uint32; + description + "Raman Transmit Power Value in units of 0.01mW"; + } + leaf raman-tx-wavelength { + type uint32; + description + "Raman Transmit Wavelength in units of 0.01 nm"; + } + } + + grouping OTS-RAMAN-PARAM { + description + "Proprietary Raman transmit power Parameters"; + list raman-tx-power { + description + "raman transmit power count"; + uses OTS-RAMAN-TX-POWER; + } + } + + grouping OTS-EDM-INFO { + description + "ots transponder information"; + container raman-tx-power { + description + "Raman Tx Power"; + uses OTS-RAMAN-PARAM; + } + container transmit-n-power { + description + "Transmit N Power in the unit of 0.01dBm"; + uses OTS-TRANSMIT-POWER-V1; + } + container receive-n-power { + description + "Receive N Power in the unit of 0.01dBm"; + uses OTS-RECEIVE-POWER-V1; + } + container ingress-channel-slice-attenuation { + description + "Ingress Channel Slice Attenuation in units of 0 + .1 dB"; + uses OTS-INGRESS-CHANNEL-SLICE-PARAM-V1; + } + container egress-channel-slice-attenuation { + description + "Egress Channel Slice Attenuation in units of 0.1 + dB"; + uses OTS-EGRESS-CHANNEL-SLICE-PARAM-V1; + } + container raman-tx-power-config { + description + "Raman Tx Power"; + uses OTS-RAMAN-PARAM-CONFIG; + } + container ingress-channel-slice-attenuation-configured { + description + "Ingress Channel Slice Attenuation Configured in + units of 0.1 dB"; + uses OTS-INGRESS-CHANNEL-SLICE-PARAM-V1; + } + container egress-channel-slice-attenuation-configured { + description + "Egress Channel Slice Attenuation Configured in + units of 0.1 dB"; + uses OTS-EGRESS-CHANNEL-SLICE-PARAM-V1; + } + container otdr-info-rx { + description + "OTS OTDR Info at RX"; + uses OTS-OTDR-INFO-BAG; + } + container otdr-info-tx { + description + "OTS OTDR Info at TX"; + uses OTS-OTDR-INFO-BAG; + } + container rx-los-p { + description + "RX-LOS-P for ots"; + uses OTS-ALARM-INFO; + } + container rx-loc { + description + "RX-LOC for ots"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX-POWER-FAIL-LOW for ots"; + uses OTS-ALARM-INFO; + } + container ingress-auto-laser-shut { + description + "INGRESS AUTO LASER SHUT"; + uses OTS-ALARM-INFO; + } + container ingress-auto-pow-red { + description + "INGRESS AUTO POW RED"; + uses OTS-ALARM-INFO; + } + container ingress-ampli-gain-low { + description + "INGRESS AMPLI GAIN LOW"; + uses OTS-ALARM-INFO; + } + container ingress-ampli-gain-high { + description + "INGRESS AMPLI GAIN HIGH"; + uses OTS-ALARM-INFO; + } + container egress-auto-laser-shut { + description + "EGRESS AUTO LASER SHUT"; + uses OTS-ALARM-INFO; + } + container egress-auto-pow-red { + description + "EGRESS AUTO POW RED"; + uses OTS-ALARM-INFO; + } + container egress-ampli-gain-low { + description + "EGRESS AMPLI GAIN LOW"; + uses OTS-ALARM-INFO; + } + container egress-ampli-gain-high { + description + "EGRESS AMPLI GAIN HIGH"; + uses OTS-ALARM-INFO; + } + container high-tx-br-pwr { + description + "HIGH TX BR POWER"; + uses OTS-ALARM-INFO; + } + container high-rx-br-pwr { + description + "HIGH RX BR PWR"; + uses OTS-ALARM-INFO; + } + container span-too-short-tx { + description + "SPAN TOO SHORT TX"; + uses OTS-ALARM-INFO; + } + container span-too-short-rx { + description + "SPAN TOO SHORT RX"; + uses OTS-ALARM-INFO; + } + container raman-auto-pow-red { + description + "RAMAN AUTO POW RED"; + uses OTS-ALARM-INFO; + } + container raman1-low-pwr { + description + "RAMAN 1 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman2-low-pwr { + description + "RAMAN 2 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman3-low-pwr { + description + "RAMAN 3 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman4-low-pwr { + description + "RAMAN 4 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman5-low-pwr { + description + "RAMAN 5 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman1-high-pwr { + description + "RAMAN 1 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman2-high-pwr { + description + "RAMAN 2 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman3-high-pwr { + description + "RAMAN 3 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman4-high-pwr { + description + "RAMAN 4 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman5-high-pwr { + description + "RAMAN 5 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container ots-och-alamr-info { + description + "Ots-Och Alarm Information"; + uses OTS-OCH-EDM-INFO; + } + container ots-tone-info { + description + "Ots tone info"; + uses OTS-TONE-INFO; + } + leaf transport-admin-state { + type Ots-tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-pow-low-threshold { + type int32; + description + "Rx Low threshold value in units of 0.1dBm"; + } + leaf rx-pow-high-threshold { + type int32; + description + "Rx High threshold value in units of 0.1dBm"; + } + leaf tx-pow-low-threshold { + type int32; + description + "Tx Low threshold value in units of 0.1dBm"; + } + leaf tx-pow-high-threshold { + type int32; + description + "Tx High threshold value in units of 0.1dBm"; + } + leaf pm-enable { + type uint32; + description + "PmEable or Disable"; + } + leaf controller-state { + type Ots-controller-state; + description + "Ots controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-voa-attenuation { + type int32; + description + "Rx Voa Attenuation in the units of 0.1dB"; + } + leaf tx-voa-attenuation { + type int32; + description + "Tx Voa Attenuation in the units of 0.1dB"; + } + leaf channel-width { + type uint32; + description + "Channel Width (in Unit of 0.1 GHz)"; + } + leaf central-frequncy { + type uint32; + description + "frequency read from hw in the units of 0.01 THz"; + } + leaf add-drop-channel { + type string; + description + "Add Drop Channel R/S/I/P/ch"; + } + leaf line-channel { + type string; + description + "Line Channel R/S/I/P/ch"; + } + leaf ingress-ampli-gain { + type int32; + description + "Ingress Ampli Gain in the unit of 0.1dB"; + } + leaf ingress-ampli-tilt { + type int32; + description + "Ingress Ampli Tilt in the unit of 0.1dB"; + } + leaf ingress-amp-gain-deg-thres-low { + type uint32; + description + "IngressAmpli Gain Deg Low threshold in the unit + of 0.01dB"; + } + leaf ingress-amp-gain-deg-thres-high { + type uint32; + description + "Ingress Ampli Gain Deg High threshold in the + unit of 0.01dB"; + } + leaf ingress-ampli-gain-range { + type Ots-amplifier-gain-range; + description + "Ingress Ampli gain range"; + } + leaf egress-ampli-gain { + type int32; + description + "Egress Ampli Gain in the unit of 0.1dB"; + } + leaf egress-ampli-tilt { + type int32; + description + "Egress Ampli Tilt in the unit of 0.1dB"; + } + leaf egress-amp-gain-deg-thres-low { + type uint32; + description + "EgressAmpli Gain Deg Low Threshold in the unit + of 0.01dB"; + } + leaf egress-amp-gain-deg-thres-high { + type uint32; + description + "Egress Ampli Gain Deg High Threshold in the unit + of 0.01dB"; + } + leaf egress-ampli-gain-range { + type Ots-amplifier-gain-range; + description + "Egress Ampli gain range"; + } + leaf composite-raman-power { + type uint32; + description + "Composite Raman Power in the unit of 0.01 mW"; + } + leaf wavelength { + type uint32; + description + "Wavelength in unit of 0.01 nm"; + } + leaf transmit-power { + type int32; + description + "Transmit power in the units of 0.01dBm"; + } + leaf receive-power { + type int32; + description + "Receive power in the units of 0.01dBm"; + } + leaf total-cl-tx-power { + type int32; + description + "Total (L+C)-transmit Power in the unit of 0 + .01dBm"; + } + leaf total-cl-rx-power { + type int32; + description + "Total (L+C)-receive Power in the unit of 0.01dBm"; + } + leaf receive-signal-power { + type int32; + description + "Transponder receive signal power in the units of + 0.01dBm"; + } + leaf transmit-signal-power { + type int32; + description + "Transmit Signal power in the units of 0.01dBm"; + } + leaf ingress-ampli-osri { + type boolean; + description + "Ingress Ampli Osri"; + } + leaf egress-ampli-osri { + type boolean; + description + "Egress Ampli Osri"; + } + leaf ingress-ampli-force-apr { + type boolean; + description + "Ingress Ampli Force Apr"; + } + leaf egress-ampli-force-apr { + type boolean; + description + "Egress Ampli Force Apr"; + } + leaf ingress-ampli-safety-control-mode { + type Ots-amplifier-safety-control-mode; + description + "Ingress Ampli Safety control mode"; + } + leaf egress-ampli-safety-control-mode { + type Ots-amplifier-safety-control-mode; + description + "Egress Ampli Safety control mode"; + } + leaf ingress-ampli-safety-control-mode-configured { + type Ots-amplifier-safety-control-mode; + description + "Ingress Ampli Safety Control Mode Configured"; + } + leaf egress-ampli-safety-control-mode-configured { + type Ots-amplifier-safety-control-mode; + description + "Egress Ampli Safety Control Mode Configured"; + } + leaf ingress-ampli-osri-configured { + type boolean; + description + "Ingress Ampli Osri Configured"; + } + leaf egress-ampli-osri-configured { + type boolean; + description + "Egress Ampli Osri Configured"; + } + leaf ingress-ampli-force-apr-configured { + type boolean; + description + "Ingress Ampli Force Apr Configured"; + } + leaf egress-ampli-force-apr-configured { + type boolean; + description + "Egress Ampli Force Apr Configured"; + } + leaf raman-safety-control-mode { + type Ots-amplifier-safety-control-mode; + description + "Raman Safety control mode"; + } + leaf raman-safety-control-mode-configured { + type Ots-amplifier-safety-control-mode; + description + "Raman Safety control mode Configured"; + } + leaf raman-osri { + type boolean; + description + "Raman Osri"; + } + leaf raman-force-apr { + type boolean; + description + "Raman Force Apr"; + } + leaf raman-osri-configured { + type boolean; + description + "Raman Osri Configured"; + } + leaf raman-force-apr-configured { + type boolean; + description + "Raman Force Apr Configured"; + } + leaf rx-pow-low-warning-threshold { + type int32; + description + "Rx Low Warning threshold value in units of 0 + .1dBm"; + } + leaf rx-pow-high-warning-threshold { + type int32; + description + "Rx High Warning threshold value in units of 0 + .1dBm"; + } + leaf tx-pow-low-warning-threshold { + type int32; + description + "Tx Low Warning threshold value in units of 0 + .1dBm"; + } + leaf tx-pow-high-warning-threshold { + type int32; + description + "Tx High Warning threshold value in units of 0 + .1dBm"; + } + leaf description { + type string; + description + "Controller description string"; + } + leaf channel-attenuation { + type int32; + description + "Channel Attenuation in units of 0.1 dB"; + } + leaf rx-voa-attenuation-config-val { + type int32; + description + "RX VOA attenuation configured value in units of + 0.1dB"; + } + leaf tx-voa-attenuation-config-val { + type int32; + description + "TX VOA attenuation configured value in units of + 0.1dB"; + } + leaf ampli-control-mode-config-val { + type Ots-amplifier-control-mode; + description + "ampli control mode config val"; + } + leaf rx-low-th-psd-config-val { + type int32; + description + "Rx Low threshold psd value in units of 0.001 + nW/MHz"; + } + leaf total-rx-power { + type int32; + description + "Total Receive Power -> C/L-band power + OSC + power (in units of 0.01 dBm)"; + } + leaf total-tx-power { + type int32; + description + "Total Transmit Power -> C/L-band power + OSC + power (in units of 0.01 dBm)"; + } + leaf ingress-ampli-gain-range-config-val { + type Ots-amplifier-gain-range; + description + "ingress ampli gain range config val"; + } + leaf ingress-ampli-gain-config { + type uint32; + description + "Ingress Ampli gain configured value in units of + 0.1dB"; + } + leaf ingress-ampli-tilt-config { + type int32; + description + "Ingress Ampli tilt configured value in units of + 0.1dB"; + } + leaf ingress-ampli-thr-deg-low-config { + type uint32; + description + "Ingress Ampli gain low degrade threshold + configured value in units of 0.01dB"; + } + leaf ingress-ampli-thr-deg-high-config { + type uint32; + description + "Ingress Ampli gain high degrade threshold + configured value in units of 0.01dB"; + } + leaf egress-ampli-gain-range-config-val { + type Ots-amplifier-gain-range; + description + "egress ampli gain range config val"; + } + leaf egress-ampli-gain-config { + type uint32; + description + "Egress Ampli gain configured value in units of 0 + .1dB"; + } + leaf egress-ampli-tilt-config { + type int32; + description + "Egress Ampli tilt configured value in units of 0 + .1dB"; + } + leaf egress-ampli-gain-thr-deg-low-config { + type uint32; + description + "Egress Ampli gain low degrade threshold + configured value in units of 0.01dB"; + } + leaf egress-ampli-gain-thr-deg-high-config { + type uint32; + description + "Egress Ampli gain high degrade threshold + configured value in units of 0.01dB"; + } + leaf channel-attenuation-configured { + type int32; + description + "Channel Attenuation Configured in units of 0.1 + dB"; + } + leaf br-power { + type int32; + description + "BR Power in the units of 0.01dBm"; + } + leaf raman-br-power { + type int32; + description + "Raman BR Power in the units of 0.01dBm"; + } + leaf led-state { + type Led-state; + description + "Showing Current Colour of led state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf egress-amplifier-back-reflection { + type Ots-back-reflection-state-v1; + description + "Egress Amplifier Back Reflection"; + } + leaf egress-amplifier-back-reflection-high-threshold { + type int32; + description + "Egress Amplifier Back Reflection High Threshold + in units of 0.1 dBm"; + } + leaf egress-amplifier-back-reflection-configured { + type Ots-back-reflection-state-v1; + description + "Egress Amplifier Back Reflection Configured"; + } + leaf egress-ampli-br-ratio { + type int32; + description + "Egress Amplifier Back Reflection Ratio in the + units of 0.01 dB"; + } + leaf raman-br-ratio { + type int32; + description + "Raman Amplifier Back Reflection Ratio in the + units of 0.01 dB"; + } + leaf port-type { + type Ots-port; + description + "Port Type Details"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper.yang new file mode 100644 index 000000000..2b0dc82d8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-och-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-controller-ots-och-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ots-och-oper"; + prefix controller-ots-och-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-ots-och-oper-sub1 { + revision-date 2022-08-19; + } + + 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 controller-ots-och package operational data. + + This module contains definitions + for the following management objects: + ots-och-oper: Optics operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-19 { + description + "Removed container channel-attenuation-info and egress-amplifier-back-reflection, egress-amplifier-back-reflection-high-threshold and egress-amplifier-back-reflection-configured leaves"; + semver:module-version "1.0.0"; + } + revision 2022-03-07 { + description + "Removed Low-Tx-PWR information from ots_ui.bag"; + } + revision 2020-07-09 { + description + "New Oper Model Added for Ots-Och Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ots-och-oper { + config false; + description + "Optics operational data"; + container ots-och-ports { + description + "All Optics Port operational data"; + list ots-och-port { + key "name"; + description + "Optics operational data"; + container ots-och-info { + description + "Ots-Och operational data"; + uses OTS-EDM-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper-sub1.yang new file mode 100644 index 000000000..ae0685a0c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper-sub1.yang @@ -0,0 +1,1485 @@ +submodule Cisco-IOS-XR-controller-ots-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-ots-oper { + prefix Cisco-IOS-XR-controller-ots-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-ots package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-17 { + description + "description leaf added in container optics-lane"; + semver:module-version "1.0.0"; + } + revision 2022-10-17 { + description + "Egress Amplifier Power, OTS egress amplifier power added"; + } + revision 2022-08-30 { + description + "Egress Amplifier BR Ratio, OTS Port Type and Raman BR Ratio are added in ots-info container"; + } + revision 2022-06-13 { + description + "channel-attenuation-info container separated out from ots info container"; + } + revision 2022-04-25 { + description + "Units added for channel frequency in ots bag."; + } + revision 2022-04-18 { + description + "ots_och_alarm_info is converted to a pointer"; + } + revision 2022-03-25 { + description + "Units changed for location and accuracy leaf nodes in otdr-info-rx and otdr-info-tx containers."; + } + revision 2022-03-15 { + description + "Units added for some leaf nodes in spectrum-info, channel-attenuation-info, raman-tx-power and ots_info containers."; + } + revision 2022-03-07 { + description + "Removed Low-Tx-PWR information for ots controller"; + } + revision 2022-02-22 { + description + "Name of the enum led_state is changed to LedState"; + } + revision 2022-01-13 { + description + "raman-tx-power range extended in ots controller"; + } + revision 2021-12-23 { + description + "Parameters egress_ampli_br, egress_ampli_br_high_th_cfgd, egress_ampli_br_cfgd, raman_br, raman_br_cfgd and raman_br_high_th_cfgd are removed from ots_ui bag"; + } + revision 2021-12-10 { + description + "led_state parameter added for OTS controller"; + } + revision 2021-12-08 { + description + "Added alarms and counters for OTS, OTS-OCH, OSC, DFB, OMS, OCH controllers."; + } + revision 2021-12-01 { + description + "Parameters br_power and raman_br_power are added in ots_edm_info container"; + } + revision 2021-11-19 { + description + "led_state container and parameters controller_state, led_state are added for OCH and OMS controllers"; + } + revision 2021-11-13 { + description + "Config container added for Raman TX power in OTS controller"; + } + revision 2021-10-25 { + description + "Parameters lower_frequency, upper_frequency, rx_psd and tx_psd are removed and data type of rx_power and tx_power is changed to int16_t in ots_edm_spectrum_power_info_v1 bag and first_slice_frequency added in ots_edm_spectrum_info_v1 bag"; + } + revision 2021-09-16 { + description + "parameter chan_atten_first_slice_freq added in the ots_edm_chan_atten_info bag"; + } + revision 2021-09-01 { + description + "Changed otdr_event_type enum definition"; + } + revision 2021-08-23 { + description + "Added OTS OTDR oper support"; + } + revision 2021-06-14 { + description + "Added support for Channel Slice Attenuation Info and Spectrum Info"; + } + revision 2021-03-28 { + description + "egress-ampli-br, egress-ampli-br-high-th-cfgd, egress-ampli-br-cfgd are added in ots-info container"; + } + revision 2021-02-17 { + description + "Raman Safety Params added"; + } + revision 2021-02-08 { + description + "Ingress/Egress Safety Params added"; + } + revision 2020-11-10 { + description + "Photodiode State Params Added for Ots Controller"; + } + revision 2020-09-02 { + description + "Raman Transmit Params Added for Ots Controller"; + } + revision 2020-08-21 { + description + "New Oper Model Added for Ots Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-port { + type enumeration { + enum "com" { + value 0; + description + "Com"; + } + enum "line" { + value 1; + description + "Line"; + } + enum "osc" { + value 2; + description + "Osc"; + } + enum "com-check" { + value 3; + description + "Com Check"; + } + enum "work" { + value 4; + description + "Working"; + } + enum "prot" { + value 5; + description + "Protected"; + } + enum "add-drop" { + value 6; + description + "Add Drop"; + } + } + description + "Ots port"; + } + + typedef Ots-back-reflection-state-v1 { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Ots back reflection state v1"; + } + + typedef Conn-verfcn-state { + type enumeration { + enum "conn-vrfcn-state-failed" { + value 0; + description + "Failed"; + } + enum "conn-vrfcn-state-inprogress" { + value 1; + description + "Inprogress"; + } + enum "conn-vrfcn-state-success" { + value 2; + description + "Success"; + } + enum "conn-vrfcn-state-not-running" { + value 3; + description + "Notrunning"; + } + } + description + "Conn verfcn state"; + } + + typedef Led-state { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "na" { + value 7; + description + "Not Applicable"; + } + } + description + "Led state"; + } + + typedef Otdr-scan-status { + type enumeration { + enum "otdr-scan-status-stopped" { + value 0; + description + "Stopped"; + } + enum "otdr-scan-status-measuring" { + value 1; + description + "Measuring"; + } + enum "otdr-scan-status-data-processing" { + value 2; + description + "Data Processing"; + } + enum "otdr-scan-status-data-ready" { + value 3; + description + "Data Ready"; + } + enum "otdr-scan-status-error" { + value 4; + description + "Error"; + } + enum "otdr-scan-status-invalid" { + value 5; + description + "Invalid"; + } + } + description + "Otdr scan status"; + } + + typedef Ots-amplifier-control-mode { + type enumeration { + enum "automatic" { + value 1; + description + "Automatic"; + } + enum "manual" { + value 2; + description + "Manual"; + } + } + description + "Ots amplifier control mode"; + } + + typedef Ots-amplifier-safety-control-mode { + type enumeration { + enum "ots-amplifier-safety-mode-invalid" { + value 0; + description + "Invalid"; + } + enum "ots-amplifier-safety-mode-auto" { + value 1; + description + "auto"; + } + enum "ots-amplifier-safety-mode-disabled" { + value 2; + description + "disabled"; + } + } + description + "Ots amplifier safety control mode"; + } + + typedef Ots-amplifier-gain-range { + type enumeration { + enum "ots-amplifier-gain-range-invalid" { + value 0; + description + "Invalid"; + } + enum "ots-amplifier-gain-range-normal" { + value 1; + description + "Normal"; + } + enum "ots-amplifier-gain-range-ext-end-ed" { + value 2; + description + "Extended"; + } + } + description + "Ots amplifier gain range"; + } + + typedef Ots-controller-state { + type enumeration { + enum "ots-state-up" { + value 0; + description + "Up"; + } + enum "ots-state-down" { + value 1; + description + "Down"; + } + enum "ots-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Ots controller state"; + } + + typedef Ots-tas { + type enumeration { + enum "ots-tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "ots-tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "ots-tas-ui-is" { + value 2; + description + "In Service"; + } + enum "ots-tas-ui-ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Ots tas"; + } + + grouping OTS-EDM-SPECTRUM-POWER-INFO-V1 { + description + "OTS EDM SPECTRUM POWER INFO V1"; + leaf slice-num { + type uint32; + description + "spectrum slice number"; + } + leaf rx-power { + type int16; + description + "Received Power in 0.1 dBm multiplied by 100"; + } + leaf tx-power { + type int16; + description + "Transmit Power in dBm multiplied by 100"; + } + } + + grouping OTS-EDM-SPECTRUM-INFO-V1 { + description + "power information of slices in optical spectrum"; + leaf total-spectrum-slice-count { + type uint32; + description + "Total number of slices in Spectrum"; + } + leaf spectrum-slice-spacing { + type uint32; + description + "Spacing between spectrum slices (in unit of 0 + .001GHz)"; + } + leaf first-slice-wavelength { + type uint32; + description + "Wavelength of first slice (in unit of 0.01 nm)"; + } + leaf first-slice-frequency { + type uint32; + description + "Frequency of first Slice Frequency (in unit of + GHz)"; + } + list spectrum-slice-power-info { + description + "Power information of spectrum slice info"; + uses OTS-EDM-SPECTRUM-POWER-INFO-V1; + } + } + + grouping OTS-EDM-SPECTRUM-BAG-INFO { + description + "ots spectrum information"; + container spectrum-info { + description + "OTS Spectrum information"; + uses OTS-EDM-SPECTRUM-INFO-V1; + } + } + + grouping OTS-TONE-INFO { + description + "Ots Tone information"; + leaf tone-freq { + type string; + description + "Tone Frequency"; + } + leaf tone-rate { + type uint32; + description + "Tone Rate"; + } + leaf pattern { + type string; + description + "Tone pattern"; + } + leaf pattern-expected { + type string; + description + "Tone pattern expected"; + } + leaf dectected-oob { + type uint32; + description + "Detected OOB"; + } + leaf state { + type Conn-verfcn-state; + description + "Connection verification state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pattern-received { + type string; + description + "Tone pattern received"; + } + } + + grouping OTS-OCH-EDM-INFO { + description + "Ots-Och Alarm information"; + container rx-los-p { + description + "RX-LOS-P for ots-och"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX-POWER-FAIL-LOW for ots-och"; + uses OTS-ALARM-INFO; + } + } + + grouping OTS-ALARM-INFO { + description + "Optics Alarm Detail"; + leaf is-detected { + type boolean; + description + "is defect detected?"; + } + leaf counter { + type uint32; + description + "Alarm counter"; + } + } + + grouping OTS-OTDR-EVENT-INFO-BAG { + description + "OTS OTDR EVENT INFO BAG"; + leaf event-number { + type uint32; + description + "Event Number"; + } + leaf detected-event { + type uint32; + description + "Event Detected [Non-Reflective | Reflective | + Fiber-End | Excess-Reflection]"; + } + leaf location { + type int64; + description + "Location (in unit of 0.01m)"; + } + leaf accuracy { + type int64; + description + "Accuracy (in unit of 0.01m)"; + } + leaf magnitude { + type int64; + description + "Magnitude (in unit of 0.01db"; + } + leaf attenuation { + type int64; + description + "Attenuation/km (in unit of 0.01db)"; + } + } + + grouping OTS-OTDR-INFO-BAG { + description + "OTS OTDR Info"; + leaf scan-status { + type Otdr-scan-status; + description + "Scan Status [Stopped | Measuring | Data + Processing | Data Ready | Error]"; + } + leaf tracepoint-file { + type string; + description + "Tracepoint File"; + } + leaf total-events { + type uint32; + description + "Total Events"; + } + leaf scan-timestamp { + type string; + description + "Scan Timestamp"; + } + list event-info { + description + "Event Info"; + uses OTS-OTDR-EVENT-INFO-BAG; + } + } + + grouping OTS-RAMAN-TX-POWER-CONFIG { + description + "OTS Raman Transmit Power information"; + leaf raman-tx-power-instance { + type uint32; + description + "Raman Transmit Power Instance"; + } + leaf raman-tx-power-value { + type uint32; + description + "Raman Transmit Power Value in units of 0.01mW"; + } + } + + grouping OTS-RAMAN-PARAM-CONFIG { + description + "Proprietary Raman transmit power Parameters of + config"; + list raman-tx-power { + description + "raman transmit power count of config"; + uses OTS-RAMAN-TX-POWER-CONFIG; + } + } + + grouping OTS-EGRESS-CHANNEL-SLICE-V1 { + description + "OTS Egress Channel Slice Attenuation Information"; + leaf egress-channel-slice { + type uint32; + description + "Egress Channel Slice"; + } + leaf egress-channel-slice-attenuation { + type int32; + description + "Egress Channel Slice Attenuation in units of 0.1 + dB"; + } + } + + grouping OTS-EGRESS-CHANNEL-SLICE-PARAM-V1 { + description + "Egress Channel Slice Attenuation Params"; + list egress-channel-slice { + description + "Egress Channel Slice List"; + uses OTS-EGRESS-CHANNEL-SLICE-V1; + } + } + + grouping OTS-INGRESS-CHANNEL-SLICE-V1 { + description + "OTS Ingress Channel Slice Attenuation Information"; + leaf ingress-channel-slice { + type uint32; + description + "Ingress Channel Slice"; + } + leaf ingress-channel-slice-attenuation { + type int32; + description + "Ingress Channel Slice Attenuation in units of 0 + .1 dB"; + } + } + + grouping OTS-INGRESS-CHANNEL-SLICE-PARAM-V1 { + description + "Ingress Channel Slice Attenuation Parameters"; + list ingress-channel-slice { + description + "Ingress Channel Slice List"; + uses OTS-INGRESS-CHANNEL-SLICE-V1; + } + } + + grouping OTS-RECEIVE-POWER-V1 { + description + "Proprietary OTS Receive Power Parameters"; + list receive-power { + description + "Receive Power count"; + uses OTS-POWER-LIST-V1; + } + } + + grouping OTS-POWER-LIST-V1 { + description + "Proprietary OTS Transmit/Receive Power Parameters"; + leaf instance { + type uint32; + description + "Transmit/Receive Power Parameter Type(in units + of 0.01dBm)"; + } + leaf value { + type int32; + description + "Transmit/Receive Power Parameter Value(in unit + of 0.01dBm)"; + } + } + + grouping OTS-TRANSMIT-POWER-V1 { + description + "Proprietary OTS Transmit Power Parameters"; + list transmit-power { + description + "Transmit Power count"; + uses OTS-POWER-LIST-V1; + } + } + + grouping OTS-RAMAN-TX-POWER { + description + "OTS Raman Transmit Power information"; + leaf raman-tx-power-instance { + type uint32; + description + "Raman Transmit Power Intance"; + } + leaf raman-tx-power-value { + type uint32; + description + "Raman Transmit Power Value in units of 0.01mW"; + } + leaf raman-tx-wavelength { + type uint32; + description + "Raman Transmit Wavelength in units of 0.01 nm"; + } + } + + grouping OTS-RAMAN-PARAM { + description + "Proprietary Raman transmit power Parameters"; + list raman-tx-power { + description + "raman transmit power count"; + uses OTS-RAMAN-TX-POWER; + } + } + + grouping OTS-EDM-INFO { + description + "ots transponder information"; + container raman-tx-power { + description + "Raman Tx Power"; + uses OTS-RAMAN-PARAM; + } + container transmit-n-power { + description + "Transmit N Power in the unit of 0.01dBm"; + uses OTS-TRANSMIT-POWER-V1; + } + container receive-n-power { + description + "Receive N Power in the unit of 0.01dBm"; + uses OTS-RECEIVE-POWER-V1; + } + container ingress-channel-slice-attenuation { + description + "Ingress Channel Slice Attenuation in units of 0 + .1 dB"; + uses OTS-INGRESS-CHANNEL-SLICE-PARAM-V1; + } + container egress-channel-slice-attenuation { + description + "Egress Channel Slice Attenuation in units of 0.1 + dB"; + uses OTS-EGRESS-CHANNEL-SLICE-PARAM-V1; + } + container raman-tx-power-config { + description + "Raman Tx Power"; + uses OTS-RAMAN-PARAM-CONFIG; + } + container ingress-channel-slice-attenuation-configured { + description + "Ingress Channel Slice Attenuation Configured in + units of 0.1 dB"; + uses OTS-INGRESS-CHANNEL-SLICE-PARAM-V1; + } + container egress-channel-slice-attenuation-configured { + description + "Egress Channel Slice Attenuation Configured in + units of 0.1 dB"; + uses OTS-EGRESS-CHANNEL-SLICE-PARAM-V1; + } + container otdr-info-rx { + description + "OTS OTDR Info at RX"; + uses OTS-OTDR-INFO-BAG; + } + container otdr-info-tx { + description + "OTS OTDR Info at TX"; + uses OTS-OTDR-INFO-BAG; + } + container rx-los-p { + description + "RX-LOS-P for ots"; + uses OTS-ALARM-INFO; + } + container rx-loc { + description + "RX-LOC for ots"; + uses OTS-ALARM-INFO; + } + container tx-power-fail-low { + description + "TX-POWER-FAIL-LOW for ots"; + uses OTS-ALARM-INFO; + } + container ingress-auto-laser-shut { + description + "INGRESS AUTO LASER SHUT"; + uses OTS-ALARM-INFO; + } + container ingress-auto-pow-red { + description + "INGRESS AUTO POW RED"; + uses OTS-ALARM-INFO; + } + container ingress-ampli-gain-low { + description + "INGRESS AMPLI GAIN LOW"; + uses OTS-ALARM-INFO; + } + container ingress-ampli-gain-high { + description + "INGRESS AMPLI GAIN HIGH"; + uses OTS-ALARM-INFO; + } + container egress-auto-laser-shut { + description + "EGRESS AUTO LASER SHUT"; + uses OTS-ALARM-INFO; + } + container egress-auto-pow-red { + description + "EGRESS AUTO POW RED"; + uses OTS-ALARM-INFO; + } + container egress-ampli-gain-low { + description + "EGRESS AMPLI GAIN LOW"; + uses OTS-ALARM-INFO; + } + container egress-ampli-gain-high { + description + "EGRESS AMPLI GAIN HIGH"; + uses OTS-ALARM-INFO; + } + container high-tx-br-pwr { + description + "HIGH TX BR POWER"; + uses OTS-ALARM-INFO; + } + container high-rx-br-pwr { + description + "HIGH RX BR PWR"; + uses OTS-ALARM-INFO; + } + container span-too-short-tx { + description + "SPAN TOO SHORT TX"; + uses OTS-ALARM-INFO; + } + container span-too-short-rx { + description + "SPAN TOO SHORT RX"; + uses OTS-ALARM-INFO; + } + container raman-auto-pow-red { + description + "RAMAN AUTO POW RED"; + uses OTS-ALARM-INFO; + } + container raman1-low-pwr { + description + "RAMAN 1 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman2-low-pwr { + description + "RAMAN 2 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman3-low-pwr { + description + "RAMAN 3 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman4-low-pwr { + description + "RAMAN 4 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman5-low-pwr { + description + "RAMAN 5 LOW PWR"; + uses OTS-ALARM-INFO; + } + container raman1-high-pwr { + description + "RAMAN 1 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman2-high-pwr { + description + "RAMAN 2 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman3-high-pwr { + description + "RAMAN 3 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman4-high-pwr { + description + "RAMAN 4 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container raman5-high-pwr { + description + "RAMAN 5 HIGH PWR"; + uses OTS-ALARM-INFO; + } + container ots-och-alamr-info { + description + "Ots-Och Alarm Information"; + uses OTS-OCH-EDM-INFO; + } + container ots-tone-info { + description + "Ots tone info"; + uses OTS-TONE-INFO; + } + leaf transport-admin-state { + type Ots-tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-pow-low-threshold { + type int32; + description + "Rx Low threshold value in units of 0.1dBm"; + } + leaf rx-pow-high-threshold { + type int32; + description + "Rx High threshold value in units of 0.1dBm"; + } + leaf tx-pow-low-threshold { + type int32; + description + "Tx Low threshold value in units of 0.1dBm"; + } + leaf tx-pow-high-threshold { + type int32; + description + "Tx High threshold value in units of 0.1dBm"; + } + leaf pm-enable { + type uint32; + description + "PmEable or Disable"; + } + leaf controller-state { + type Ots-controller-state; + description + "Ots controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-voa-attenuation { + type int32; + description + "Rx Voa Attenuation in the units of 0.1dB"; + } + leaf tx-voa-attenuation { + type int32; + description + "Tx Voa Attenuation in the units of 0.1dB"; + } + leaf channel-width { + type uint32; + description + "Channel Width (in Unit of 0.1 GHz)"; + } + leaf central-frequncy { + type uint32; + description + "frequency read from hw in the units of 0.01 THz"; + } + leaf add-drop-channel { + type string; + description + "Add Drop Channel R/S/I/P/ch"; + } + leaf line-channel { + type string; + description + "Line Channel R/S/I/P/ch"; + } + leaf ingress-ampli-gain { + type int32; + description + "Ingress Ampli Gain in the unit of 0.1dB"; + } + leaf ingress-ampli-tilt { + type int32; + description + "Ingress Ampli Tilt in the unit of 0.1dB"; + } + leaf ingress-amp-gain-deg-thres-low { + type uint32; + description + "IngressAmpli Gain Deg Low threshold in the unit + of 0.01dB"; + } + leaf ingress-amp-gain-deg-thres-high { + type uint32; + description + "Ingress Ampli Gain Deg High threshold in the + unit of 0.01dB"; + } + leaf ingress-ampli-gain-range { + type Ots-amplifier-gain-range; + description + "Ingress Ampli gain range"; + } + leaf egress-ampli-gain { + type int32; + description + "Egress Ampli Gain in the unit of 0.1dB"; + } + leaf egress-ampli-tilt { + type int32; + description + "Egress Ampli Tilt in the unit of 0.1dB"; + } + leaf egress-amp-gain-deg-thres-low { + type uint32; + description + "EgressAmpli Gain Deg Low Threshold in the unit + of 0.01dB"; + } + leaf egress-amp-gain-deg-thres-high { + type uint32; + description + "Egress Ampli Gain Deg High Threshold in the unit + of 0.01dB"; + } + leaf egress-ampli-gain-range { + type Ots-amplifier-gain-range; + description + "Egress Ampli gain range"; + } + leaf composite-raman-power { + type uint32; + description + "Composite Raman Power in the unit of 0.01 mW"; + } + leaf wavelength { + type uint32; + description + "Wavelength in unit of 0.01 nm"; + } + leaf transmit-power { + type int32; + description + "Transmit power in the units of 0.01dBm"; + } + leaf receive-power { + type int32; + description + "Receive power in the units of 0.01dBm"; + } + leaf total-cl-tx-power { + type int32; + description + "Total (L+C)-transmit Power in the unit of 0 + .01dBm"; + } + leaf total-cl-rx-power { + type int32; + description + "Total (L+C)-receive Power in the unit of 0.01dBm"; + } + leaf receive-signal-power { + type int32; + description + "Transponder receive signal power in the units of + 0.01dBm"; + } + leaf transmit-signal-power { + type int32; + description + "Transmit Signal power in the units of 0.01dBm"; + } + leaf ingress-ampli-osri { + type boolean; + description + "Ingress Ampli Osri"; + } + leaf egress-ampli-osri { + type boolean; + description + "Egress Ampli Osri"; + } + leaf ingress-ampli-force-apr { + type boolean; + description + "Ingress Ampli Force Apr"; + } + leaf egress-ampli-force-apr { + type boolean; + description + "Egress Ampli Force Apr"; + } + leaf ingress-ampli-safety-control-mode { + type Ots-amplifier-safety-control-mode; + description + "Ingress Ampli Safety control mode"; + } + leaf egress-ampli-safety-control-mode { + type Ots-amplifier-safety-control-mode; + description + "Egress Ampli Safety control mode"; + } + leaf ingress-ampli-safety-control-mode-configured { + type Ots-amplifier-safety-control-mode; + description + "Ingress Ampli Safety Control Mode Configured"; + } + leaf egress-ampli-safety-control-mode-configured { + type Ots-amplifier-safety-control-mode; + description + "Egress Ampli Safety Control Mode Configured"; + } + leaf ingress-ampli-osri-configured { + type boolean; + description + "Ingress Ampli Osri Configured"; + } + leaf egress-ampli-osri-configured { + type boolean; + description + "Egress Ampli Osri Configured"; + } + leaf ingress-ampli-force-apr-configured { + type boolean; + description + "Ingress Ampli Force Apr Configured"; + } + leaf egress-ampli-force-apr-configured { + type boolean; + description + "Egress Ampli Force Apr Configured"; + } + leaf raman-safety-control-mode { + type Ots-amplifier-safety-control-mode; + description + "Raman Safety control mode"; + } + leaf raman-safety-control-mode-configured { + type Ots-amplifier-safety-control-mode; + description + "Raman Safety control mode Configured"; + } + leaf raman-osri { + type boolean; + description + "Raman Osri"; + } + leaf raman-force-apr { + type boolean; + description + "Raman Force Apr"; + } + leaf raman-osri-configured { + type boolean; + description + "Raman Osri Configured"; + } + leaf raman-force-apr-configured { + type boolean; + description + "Raman Force Apr Configured"; + } + leaf rx-pow-low-warning-threshold { + type int32; + description + "Rx Low Warning threshold value in units of 0 + .1dBm"; + } + leaf rx-pow-high-warning-threshold { + type int32; + description + "Rx High Warning threshold value in units of 0 + .1dBm"; + } + leaf tx-pow-low-warning-threshold { + type int32; + description + "Tx Low Warning threshold value in units of 0 + .1dBm"; + } + leaf tx-pow-high-warning-threshold { + type int32; + description + "Tx High Warning threshold value in units of 0 + .1dBm"; + } + leaf description { + type string; + description + "Controller description string"; + } + leaf channel-attenuation { + type int32; + description + "Channel Attenuation in units of 0.1 dB"; + } + leaf rx-voa-attenuation-config-val { + type int32; + description + "RX VOA attenuation configured value in units of + 0.1dB"; + } + leaf tx-voa-attenuation-config-val { + type int32; + description + "TX VOA attenuation configured value in units of + 0.1dB"; + } + leaf ampli-control-mode-config-val { + type Ots-amplifier-control-mode; + description + "ampli control mode config val"; + } + leaf rx-low-th-psd-config-val { + type int32; + description + "Rx Low threshold psd value in units of 0.001 + nW/MHz"; + } + leaf total-rx-power { + type int32; + description + "Total Receive Power -> C/L-band power + OSC + power (in units of 0.01 dBm)"; + } + leaf total-tx-power { + type int32; + description + "Total Transmit Power -> C/L-band power + OSC + power (in units of 0.01 dBm)"; + } + leaf ingress-ampli-gain-range-config-val { + type Ots-amplifier-gain-range; + description + "ingress ampli gain range config val"; + } + leaf ingress-ampli-gain-config { + type uint32; + description + "Ingress Ampli gain configured value in units of + 0.1dB"; + } + leaf ingress-ampli-tilt-config { + type int32; + description + "Ingress Ampli tilt configured value in units of + 0.1dB"; + } + leaf ingress-ampli-thr-deg-low-config { + type uint32; + description + "Ingress Ampli gain low degrade threshold + configured value in units of 0.01dB"; + } + leaf ingress-ampli-thr-deg-high-config { + type uint32; + description + "Ingress Ampli gain high degrade threshold + configured value in units of 0.01dB"; + } + leaf egress-ampli-gain-range-config-val { + type Ots-amplifier-gain-range; + description + "egress ampli gain range config val"; + } + leaf egress-ampli-gain-config { + type uint32; + description + "Egress Ampli gain configured value in units of 0 + .1dB"; + } + leaf egress-ampli-tilt-config { + type int32; + description + "Egress Ampli tilt configured value in units of 0 + .1dB"; + } + leaf egress-ampli-gain-thr-deg-low-config { + type uint32; + description + "Egress Ampli gain low degrade threshold + configured value in units of 0.01dB"; + } + leaf egress-ampli-gain-thr-deg-high-config { + type uint32; + description + "Egress Ampli gain high degrade threshold + configured value in units of 0.01dB"; + } + leaf channel-attenuation-configured { + type int32; + description + "Channel Attenuation Configured in units of 0.1 + dB"; + } + leaf br-power { + type int32; + description + "BR Power in the units of 0.01dBm"; + } + leaf raman-br-power { + type int32; + description + "Raman BR Power in the units of 0.01dBm"; + } + leaf led-state { + type Led-state; + description + "Showing Current Colour of led state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf egress-amplifier-back-reflection { + type Ots-back-reflection-state-v1; + description + "Egress Amplifier Back Reflection"; + } + leaf egress-amplifier-back-reflection-high-threshold { + type int32; + description + "Egress Amplifier Back Reflection High Threshold + in units of 0.1 dBm"; + } + leaf egress-amplifier-back-reflection-configured { + type Ots-back-reflection-state-v1; + description + "Egress Amplifier Back Reflection Configured"; + } + leaf egress-ampli-br-ratio { + type int32; + description + "Egress Amplifier Back Reflection Ratio in the + units of 0.01 dB"; + } + leaf raman-br-ratio { + type int32; + description + "Raman Amplifier Back Reflection Ratio in the + units of 0.01 dB"; + } + leaf port-type { + type Ots-port; + description + "Port Type Details"; + } + } + + grouping OTS-EDM-EGRESS-ATTEN-INFO { + description + "OTS EDM EGRESS ATTEN INFO"; + leaf slice-num { + type uint32; + description + "attenuation slice number"; + } + leaf egress-attenuation { + type uint32; + description + "Egress Attenuation in unit of 0.1 dB"; + } + } + + grouping OTS-EDM-INGRESS-ATTEN-INFO { + description + "OTS EDM INGRESS ATTEN INFO"; + leaf slice-num { + type uint32; + description + "attenuation slice number"; + } + leaf ingress-attenuation { + type uint32; + description + "Ingress Attenuation"; + } + } + + grouping OTS-EDM-CHAN-ATTEN-INFO { + description + "Channel Attenuation Info"; + leaf total-channel-attenuation-slice-count { + type uint32; + description + "Total Channel Attenuation Slice Count"; + } + leaf channel-attenuation-slice-spacing { + type uint32; + description + "Channel Attenuation Slice Spacing (in unit of 0 + .001 GHz)"; + } + leaf channel-attenuation-first-slice-wavelength { + type uint32; + description + "Channel Attenuation First Slice Wavelength (in + unit of 0.01 nm)"; + } + leaf channel-attenuation-first-slice-frequency { + type uint32; + description + "Channel Attenuation First Slice Frequency (in + unit of 0.01 GHz)"; + } + list ingress-channel-attenuation-info { + key "slice-num"; + description + "Ingress information of Channel Slice Attenuation + Info"; + uses OTS-EDM-INGRESS-ATTEN-INFO; + } + list egress-channel-attenuation-info { + key "slice-num"; + description + "Egress information of Channel Slice Attenuation + Info"; + uses OTS-EDM-EGRESS-ATTEN-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper.yang new file mode 100644 index 000000000..d155edca2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-oper.yang @@ -0,0 +1,194 @@ +module Cisco-IOS-XR-controller-ots-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ots-oper"; + prefix controller-ots-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-ots-oper-sub1 { + revision-date 2022-11-17; + } + + 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 controller-ots package operational data. + + This module contains definitions + for the following management objects: + ots-oper: Ots operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-17 { + description + "description leaf added in container optics-lane"; + semver:module-version "1.0.0"; + } + revision 2022-10-17 { + description + "Egress Amplifier Power, OTS egress amplifier power added"; + } + revision 2022-08-30 { + description + "Egress Amplifier BR Ratio, OTS Port Type and Raman BR Ratio are added in ots-info container"; + } + revision 2022-06-13 { + description + "channel-attenuation-info container separated out from ots info container"; + } + revision 2022-04-25 { + description + "Units added for channel frequency in ots bag."; + } + revision 2022-04-18 { + description + "ots_och_alarm_info is converted to a pointer"; + } + revision 2022-03-25 { + description + "Units changed for location and accuracy leaf nodes in otdr-info-rx and otdr-info-tx containers."; + } + revision 2022-03-15 { + description + "Units added for some leaf nodes in spectrum-info, channel-attenuation-info, raman-tx-power and ots_info containers."; + } + revision 2022-03-07 { + description + "Removed Low-Tx-PWR information for ots controller"; + } + revision 2022-02-22 { + description + "Name of the enum led_state is changed to LedState"; + } + revision 2022-01-13 { + description + "raman-tx-power range extended in ots controller"; + } + revision 2021-12-23 { + description + "Parameters egress_ampli_br, egress_ampli_br_high_th_cfgd, egress_ampli_br_cfgd, raman_br, raman_br_cfgd and raman_br_high_th_cfgd are removed from ots_ui bag"; + } + revision 2021-12-10 { + description + "led_state parameter added for OTS controller"; + } + revision 2021-12-08 { + description + "Added alarms and counters for OTS, OTS-OCH, OSC, DFB, OMS, OCH controllers."; + } + revision 2021-12-01 { + description + "Parameters br_power and raman_br_power are added in ots_edm_info container"; + } + revision 2021-11-19 { + description + "led_state container and parameters controller_state, led_state are added for OCH and OMS controllers"; + } + revision 2021-11-13 { + description + "Config container added for Raman TX power in OTS controller"; + } + revision 2021-10-25 { + description + "Parameters lower_frequency, upper_frequency, rx_psd and tx_psd are removed and data type of rx_power and tx_power is changed to int16_t in ots_edm_spectrum_power_info_v1 bag and first_slice_frequency added in ots_edm_spectrum_info_v1 bag"; + } + revision 2021-09-16 { + description + "parameter chan_atten_first_slice_freq added in the ots_edm_chan_atten_info bag"; + } + revision 2021-09-01 { + description + "Changed otdr_event_type enum definition"; + } + revision 2021-08-23 { + description + "Added OTS OTDR oper support"; + } + revision 2021-06-14 { + description + "Added support for Channel Slice Attenuation Info and Spectrum Info"; + } + revision 2021-03-28 { + description + "egress-ampli-br, egress-ampli-br-high-th-cfgd, egress-ampli-br-cfgd are added in ots-info container"; + } + revision 2021-02-17 { + description + "Raman Safety Params added"; + } + revision 2021-02-08 { + description + "Ingress/Egress Safety Params added"; + } + revision 2020-11-10 { + description + "Photodiode State Params Added for Ots Controller"; + } + revision 2020-09-02 { + description + "Raman Transmit Params Added for Ots Controller"; + } + revision 2020-08-21 { + description + "New Oper Model Added for Ots Controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ots-oper { + config false; + description + "Ots operational data"; + container ots-ports { + description + "All Ots Port operational data"; + list ots-port { + key "name"; + description + "Ots operational data"; + container ots-channel-attenuation-info { + description + "Ots Channel Slice Attenuation Operational data"; + uses OTS-EDM-CHAN-ATTEN-INFO; + } + container ots-info { + description + "Ots operational data"; + uses OTS-EDM-INFO; + } + container ots-spectrum-info { + description + "Ots Spectrum Operational data"; + uses OTS-EDM-SPECTRUM-BAG-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-otdr-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-otdr-act.yang new file mode 100644 index 000000000..330d4a9b4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-otdr-act.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-controller-ots-otdr-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ots-otdr-act"; + prefix controller-ots-otdr-act; + + 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 tone pattern for controller-ots module. + Copyright (c) 2018-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-22 { + description + "OTDR action support for ots controllers"; + semver:module-version "1.0.0"; + } + + typedef Scan-type { + type enumeration { + enum "stop" { + value 0; + description + "scan stop"; + } + enum "start" { + value 1; + description + "scan start"; + } + } + description + "Scan type"; + } + + rpc ots-controller-otdr { + description + "ots controller OTDR generation"; + input { + leaf controller { + type xr:Interface-name; + description + "Controller name in R/S/I/P format"; + } + leaf otdr-scan-rx { + type Scan-type; + description + "OTDR SCAN at RX : Select otdr-scan-rx as start or stop"; + } + leaf otdr-scan-tx { + type Scan-type; + description + "OTDR SCAN at TX : select otdr-scan-tx as start or stop"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-act.yang new file mode 100644 index 000000000..9880e4c89 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-act.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-controller-ots-tone-pattern-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ots-tone-pattern-act"; + prefix controller-ots-tone-pattern-act; + + 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 tone pattern for controller-ots module. + + Copyright (c) 2018-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-23 { + description + "Tone pattern action support for ots controllers"; + semver:module-version "1.0.0"; + } + revision 2021-02-04 { + description + "Added task-name to restrict user-access based on taskgroup"; + } + + rpc ots-controller-tonepattern { + description + "ots controller tone generation"; + input { + leaf controller { + type string; + description + "Controller name in R/S/I/P format"; + } + leaf tonepatternstart { + type empty; + description + "start tone pattern"; + } + leaf tonepatternstop { + type empty; + description + "stop tone pattern"; + } + leaf tonepatternlaseron { + type empty; + description + "laser on tone pattern"; + } + leaf tonepatternlaseroff { + type empty; + description + "laser off tone pattern"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-detect-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-detect-act.yang new file mode 100644 index 000000000..793b13e46 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-ots-tone-pattern-detect-act.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-controller-ots-tone-pattern-detect-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-ots-tone-pattern-detect-act"; + prefix controller-ots-tone-pattern-detect-act; + + 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 tone pattern for controller-ots module. + + Copyright (c) 2018-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-24 { + description + "Tone pattern detection action support for ots controllers"; + semver:module-version "1.0.0"; + } + revision 2021-02-04 { + description + "Added task-name to restrict user-access based on taskgroup"; + } + + rpc ots-controller-tonepatterndetect { + description + "ots controller tone pattern detection"; + input { + leaf controller { + type string; + description + "Controller name in R/S/I/P format"; + } + leaf tonepatterndetectstart { + type empty; + description + "start tone pattern detection"; + } + leaf tonepatterndetectstop { + type empty; + description + "stop tone pattern detection"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-cfg.yang new file mode 100644 index 000000000..2da07d8ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-cfg.yang @@ -0,0 +1,906 @@ +module Cisco-IOS-XR-controller-otu-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-otu-cfg"; + prefix controller-otu-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-otu package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-15 { + description + "Added user-defined PRBS pattern support. + 2021-09-01 + Added support for PRBS direction and error-inject"; + semver:module-version "2.2.0"; + } + revision 2020-07-23 { + description + "Added new enums to OTUForwardErrorCorrection"; + semver:module-version "2.1.0"; + } + revision 2019-12-05 { + description + "Changes made in SAPI/DAPI ASCII text to support 15 characters string. + 2019-07-31 + Changes made in PRBS leaf, added pattern and mode field as mandatory."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-03-13 { + description + "PRBS Config added"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Otu-forward-error-correction { + type enumeration { + enum "none" { + value 1; + description + "No Fec"; + } + enum "standard" { + value 2; + description + "Standard Fec"; + } + enum "enhanced-i7" { + value 4; + description + "EnhancedI7 Fec"; + } + enum "enhanced-i4" { + value 8; + description + "Enhanced I4 Fec"; + } + enum "enhanced-swizzle" { + value 16; + description + "EnhancedSwizzle Fec"; + } + enum "enhanced-hg20" { + value 32; + description + "EnhancedHG20 Fec"; + } + enum "enhanced-hg7" { + value 64; + description + "EnhancedHG7 Fec"; + } + enum "enhanced-sd15" { + value 512; + description + "EnhancedSD15 Fec"; + } + enum "enhanced-sd27" { + value 1024; + description + "EnhancedSD27 Fec"; + } + enum "enhanced-sd15de" { + value 2048; + description + "EnhancedSD27 Fec"; + } + enum "enhanced-staircase-de" { + value 4096; + description + "EnhancedStaircaseDE Fec"; + } + enum "ofec" { + value 8192; + description + "OFEC Fec"; + } + enum "cfec" { + value 16384; + description + "CFEC Fec"; + } + } + description + "Otu forward error correction"; + } + + typedef Otn-per-mon { + type enumeration { + enum "disable" { + value 0; + description + "Performance Monitoring Disabled"; + } + enum "enable" { + value 1; + description + "Performance Monitoring Enabled"; + } + } + description + "Otn per mon"; + } + + typedef Otu-direction { + type enumeration { + enum "direct-ion-none" { + value 0; + description + "No direction config"; + } + enum "direct-ion-line" { + value 1; + description + "Prbs Direction Line"; + } + enum "direct-ion-system" { + value 2; + description + "Prbs Direction System"; + } + } + description + "Otu direction"; + } + + typedef Otu-error-inject { + type enumeration { + enum "error-inject-none" { + value 0; + description + "No direction config"; + } + enum "error-inject-single" { + value 1; + description + "Prbs Error Inject Single"; + } + enum "error-inject-continuous" { + value 2; + description + "Prbs Error Inject Continuous"; + } + } + description + "Otu error inject"; + } + + typedef Otn-send-tti-type-os { + type enumeration { + enum "send-tti-os-ascii/os-ascii" { + value 10; + description + "Send TTI OS ASCII string"; + } + enum "send-tti-os-hex/os-hex" { + value 12; + description + "Send TTI OS HEX string"; + } + } + description + "Otn send tti type os"; + } + + typedef Otn-exp-tti-type-sapi { + type enumeration { + enum "exp-tti-sapi-ascii/sapi-ascii" { + value 15; + description + "Expected TTI SAPI ASCII string"; + } + } + description + "Otn exp tti type sapi"; + } + + typedef Otn-send-tti-type-sapi { + type enumeration { + enum "send-tti-sapi-ascii/sapi-ascii" { + value 14; + description + "Send TTI SAPI ASCII string"; + } + } + description + "Otn send tti type sapi"; + } + + typedef Otu-mode { + type enumeration { + enum "mode-source" { + value 1; + description + "Prbs Mode Source"; + } + enum "mode-sink" { + value 2; + description + "Prbs Mode Sink"; + } + enum "mode-source-sink" { + value 3; + description + "Prbs Mode Source_Sink"; + } + } + description + "Otu mode"; + } + + typedef Otn-sec-admin-state { + type enumeration { + enum "normal" { + value 0; + description + "In normal state"; + } + enum "maintenance" { + value 1; + description + "Under maintenance"; + } + } + description + "Otn sec admin state"; + } + + typedef Otn-exp-tti-type-os { + type enumeration { + enum "exp-tti-os-ascii/os-ascii" { + value 11; + description + "Expected TTI OS ASCII string"; + } + enum "exp-tti-os-hex/os-hex" { + value 13; + description + "Expected TTI OS HEX string"; + } + } + description + "Otn exp tti type os"; + } + + typedef Otn-loopback { + type enumeration { + enum "line" { + value 2; + description + "Line loopback"; + } + enum "internal" { + value 4; + description + "Internal loopback"; + } + } + description + "Otn loopback"; + } + + typedef Otu-pattern { + type enumeration { + enum "pattern-pn31" { + value 1; + description + "Prbs pattern pn31"; + } + enum "pattern-pn23" { + value 2; + description + "Prbs pattern pn23"; + } + enum "pattern-pn11" { + value 4; + description + "Prbs pattern pn11"; + } + enum "pattern-inverted-pn31" { + value 8; + description + "Prbs pattern inverted pn31"; + } + enum "pattern-inverted-pn11" { + value 16; + description + "Prbs pattern inverted pn11"; + } + enum "pattern-pn15" { + value 32; + description + "Prbs pattern pn15"; + } + enum "pattern-pn7" { + value 64; + description + "Prbs pattern pn7"; + } + enum "pattern-pn9" { + value 128; + description + "Prbs pattern pn9"; + } + enum "pattern-user-defined" { + value 256; + description + "user-defined prbs pattern(64-bit hex value)"; + } + } + description + "Otu pattern"; + } + + typedef Otn-exp-tti-type-full { + type enumeration { + enum "exp-tti-full-ascii/full-ascii" { + value 5; + description + "Expected TTI Full ASCII string"; + } + enum "exp-tti-hex/hex" { + value 7; + description + "Expected TTI hex string"; + } + } + description + "Otn exp tti type full"; + } + + typedef Otn-send-tti-type-full { + type enumeration { + enum "send-tti-full-ascii/full-ascii" { + value 4; + description + "Send TTI Full ASCII string"; + } + enum "send-tti-hex/hex" { + value 6; + description + "Send TTI hex string"; + } + } + description + "Otn send tti type full"; + } + + typedef Otn-exp-tti-type-dapi { + type enumeration { + enum "exp-tti-dapi-ascii/dapi-ascii" { + value 9; + description + "Expected TTI DAPI ASCII string"; + } + } + description + "Otn exp tti type dapi"; + } + + typedef Otn-send-tti-type-dapi { + type enumeration { + enum "send-tti-dapi-ascii/dapi-ascii" { + value 8; + description + "Send TTI DAPI ASCII string"; + } + } + description + "Otn send tti type dapi"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container otu { + description + "OTU port controller configuration"; + container otn-send-ttitcmos { + description + "Configure OTN Send TTI value for OS config"; + leaf string-type { + type Otn-send-tti-type-os; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf osascii-string { + when "../string-type = 'send-tti-os-ascii/os-ascii'" { + description + "../StringType = SEND_TTI_OS_ASCII/OS_ASCII"; + } + type string { + length "1..32"; + } + description + "OS ASCII text (Max 32 characters)"; + } + leaf oshex-string { + when "../string-type = 'send-tti-os-hex/os-hex'" { + description + "../StringType = SEND_TTI_OS_HEX/OS_HEX"; + } + type string { + length "1..64"; + } + description + "OS HEX text (Max 64 characters)"; + } + } + container flexo-ids { + presence "Indicates a flexo-ids node is configured."; + description + "configuring group id and iid"; + leaf gid { + type uint32 { + range "1..1048575"; + } + mandatory true; + description + "Group id number"; + } + leaf iid { + type string; + description + "iid number"; + } + } + container otn-send-ttitcmdapi { + description + "Configure OTN Send TTI value for DAPI configs"; + leaf string-type { + type Otn-send-tti-type-dapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf dapi-ascii-string { + when "../string-type = 'send-tti-dapi-ascii/dapi-ascii'" { + description + "../StringType = + SEND_TTI_DAPI_ASCII/DAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "DAPI ASCII text (Max 15 characters)"; + } + } + container otn-expected-ttisapi { + description + "Configure OTN Expected TTI value for SAPI + configs"; + leaf string-type { + type Otn-exp-tti-type-sapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf sapi-ascii-string { + when "../string-type = 'exp-tti-sapi-ascii/sapi-ascii'" { + description + "../StringType = EXP_TTI_SAPI_ASCII/SAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "SAPI ASCII text (Max 15 characters)"; + } + } + container proactive-protection { + description + "Configure Proactive Protection"; + container trigger-threshold { + description + "Proactive Protection Threshold"; + leaf coefficient { + type uint32 { + range "1..9"; + } + description + "Bit error rate coefficient"; + } + leaf power { + type uint32 { + range "3..9"; + } + description + "Bit error rate power"; + } + leaf enable { + type empty; + description + "Proactive Protection supported"; + } + } + container revert-window { + description + "Proactive Protection Window"; + leaf value { + type uint32 { + range "2000..10000"; + } + description + "Integration window for FRR trigger in MS"; + } + leaf enable { + type empty; + description + "Enable Proactive Protection"; + } + } + container trigger-window { + description + "Proactive Protection Window"; + leaf value { + type uint32 { + range "10..10000"; + } + description + "Integration window for FRR trigger in MS"; + } + leaf enable { + type empty; + description + "Enable Proactive Protection"; + } + } + container revert-threshold { + description + "Proactive Protection Threshold"; + leaf coefficient { + type uint32 { + range "1..9"; + } + description + "Bit error rate coefficient"; + } + leaf power { + type uint32 { + range "4..10"; + } + description + "Bit error rate power"; + } + leaf enable { + type empty; + description + "Proactive Protection supported"; + } + } + leaf status { + type empty; + description + "Enable Proactive Protection"; + } + } + container network-srlgs { + description + "Configure Network srlgs"; + list network-srlg { + key "set-id"; + description + "Configure network srlg sets"; + leaf set-id { + type uint32 { + range "1..17"; + } + description + "Set index"; + } + leaf srlg1 { + type uint32 { + range "0..4294967294"; + } + description + "First value for Network SRLG"; + } + leaf srlg2 { + type uint32 { + range "0..4294967294"; + } + description + "Second value for Network SRLG"; + } + leaf srlg3 { + type uint32 { + range "0..4294967294"; + } + description + "Third value for Network SRLG"; + } + leaf srlg4 { + type uint32 { + range "0..4294967294"; + } + description + "Forth value for Network SRLG"; + } + leaf srlg5 { + type uint32 { + range "0..4294967294"; + } + description + "Fifth value for Network SRLG"; + } + leaf srlg6 { + type uint32 { + range "0..4294967294"; + } + description + "Sixth value for Network SRLG"; + } + } + } + container otn-send-tti { + description + "Configure OTN Send TTI value for Full ASCII/HEX"; + leaf string-type { + type Otn-send-tti-type-full; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf full-ascii-string { + when "../string-type = 'send-tti-full-ascii/full-ascii'" { + description + "../StringType = + SEND_TTI_FULL_ASCII/FULL_ASCII"; + } + type string { + length "1..64"; + } + description + "Full ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'send-tti-hex/hex'" { + description + "../StringType = SEND_TTI_HEX/Hex"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128 - The string length + should be an even number)"; + } + } + container otn-expected-ttitcmdapi { + description + "Configure OTN Expected TTI value for DAPI + configs"; + leaf string-type { + type Otn-exp-tti-type-dapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf dapi-ascii-string { + when "../string-type = 'exp-tti-dapi-ascii/dapi-ascii'" { + description + "../StringType = EXP_TTI_DAPI_ASCII/DAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "DAPI ASCII text (Max 15 characters)"; + } + } + container otn-send-ttisapi { + description + "Configure OTN Send TTI value for SAPI configs"; + leaf string-type { + type Otn-send-tti-type-sapi; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf sapi-ascii-string { + when "../string-type = 'send-tti-sapi-ascii/sapi-ascii'" { + description + "../StringType = + SEND_TTI_SAPI_ASCII/SAPI_ASCII"; + } + type string { + length "1..15"; + } + description + "SAPI ASCII text (Max 15 characters)"; + } + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Enable Prbs And configure"; + leaf mode-value { + type Otu-mode; + mandatory true; + description + "Mode value"; + } + leaf patternvalue { + type Otu-pattern; + mandatory true; + description + "Pattern value"; + } + leaf directionvalue { + type Otu-direction; + description + "Direction value"; + } + leaf error-inject-value { + type Otu-error-inject; + description + "Error-inject value"; + } + leaf user-pattern { + type xr:Hex-long-integer; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + container otn-expected-ttitcmos { + description + "Configure OTN Expected TTI value for OS config"; + leaf string-type { + type Otn-exp-tti-type-os; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf osascii-string { + when "../string-type = 'exp-tti-os-ascii/os-ascii'" { + description + "../StringType = EXP_TTI_OS_ASCII/OS_ASCII"; + } + type string { + length "1..32"; + } + description + "OS ASCII text (Max 32 characters)"; + } + leaf oshex-string { + when "../string-type = 'exp-tti-os-hex/os-hex'" { + description + "../StringType = EXP_TTI_OS_HEX/OS_HEX"; + } + type string { + length "1..64"; + } + description + "OS HEX text (Max 64 characters)"; + } + } + container otn-expected-tti { + description + "Configure OTN Expected TTI value for Full + ASCII/HEX"; + leaf string-type { + type Otn-exp-tti-type-full; + description + "TTI string type (FULL ASCII or DAPI ASCII or + SAPI ASCII or hex format or OS ASCII or OS + HEX)"; + } + leaf full-ascii-string { + when "../string-type = 'exp-tti-full-ascii/full-ascii'" { + description + "../StringType = EXP_TTI_FULL_ASCII/FULL_ASCII"; + } + type string { + length "1..64"; + } + description + "Full ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'exp-tti-hex/hex'" { + description + "../StringType = EXP_TTI_HEX/Hex"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128 - The string length + should be an even number)"; + } + } + leaf gcc { + type empty; + description + "General Communication Channel configuration"; + } + leaf sf { + type uint32 { + range "5..9"; + } + description + "Signal failure threshold"; + } + leaf secondary-admin-state { + type Otn-sec-admin-state; + default "normal"; + description + "Configure secondary admin state "; + } + leaf sd { + type uint32 { + range "5..9"; + } + description + "Signal degrade threshold"; + } + leaf performance-monitoring { + type Otn-per-mon; + default "enable"; + description + "Configure performance monitoring"; + } + leaf loopback { + type Otn-loopback; + description + "Type of Loopback"; + } + leaf fec { + type Otu-forward-error-correction; + default "none"; + description + "Configure forward error correction"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper-sub1.yang new file mode 100644 index 000000000..ac13fefe7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper-sub1.yang @@ -0,0 +1,1456 @@ +submodule Cisco-IOS-XR-controller-otu-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-otu-oper { + prefix Cisco-IOS-XR-controller-otu-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-otu package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Added LED State + 2021-09-01 + Added support for PRBS direction and error-inject"; + semver:module-version "3.2.0"; + } + revision 2020-05-12 { + description + "Added flexo oper"; + semver:module-version "3.1.0"; + } + revision 2019-12-19 { + description + "Added new values in OTU_G709FECMode + 2019-09-18 + Added new parameters, q-margin, q-factor, bandwidth to reflect under show controller coherentdsp."; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-03-13 { + description + "PRBS Info added"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Otu-ains-state-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "active-running" { + value 1; + description + "Running"; + } + enum "active-pending" { + value 2; + description + "Pending"; + } + } + description + "Otu ains state et"; + } + + typedef Gmpls-otu-tti-mode { + type enumeration { + enum "gmpls-otu-tti-mode-none" { + description + "Not Set"; + } + enum "gmpls-otu-tti-mode-sm" { + description + "Section Monitoring"; + } + enum "gmpls-otu-tti-mode-pm" { + description + "Path Monitoring"; + } + enum "gmpls-otu-tti-mode-tcm" { + description + "Tandem Connection Monitoring"; + } + } + description + "Gmpls otu tti mode"; + } + + typedef Otu-pp-intf-state { + type enumeration { + enum "otu-pp-intf-up" { + value 0; + description + "Interface is Up"; + } + enum "otu-pp-intf-failing" { + value 1; + description + "Interface is Going Down"; + } + enum "otu-pp-intf-down" { + value 2; + description + "Interface Down"; + } + } + description + "Otu pp intf state"; + } + + typedef Otu-pp-fsm-state { + type enumeration { + enum "otu-in-active" { + value 0; + description + "In Active"; + } + enum "otu-disabled" { + value 1; + description + "Disabled"; + } + enum "otu-normal-state" { + value 2; + description + "Normal"; + } + enum "otu-local-failing" { + value 3; + description + "Local Failing"; + } + enum "otu-remote-failing" { + value 4; + description + "Remote Failing"; + } + enum "otu-main-t-failing" { + value 5; + description + "Maintance Failing"; + } + enum "otu-regen-failing" { + value 6; + description + "Regenerator Failing"; + } + enum "otu-local-failed" { + value 7; + description + "Local Failed"; + } + enum "otu-remote-failed" { + value 8; + description + "Remote Failed"; + } + enum "otu-main-t-failed" { + value 9; + description + "Maintance Failed"; + } + enum "otu-regen-failed" { + value 10; + description + "Regenerator Failed"; + } + } + description + "Otu pp fsm state"; + } + + typedef Otu-per-mon { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Otu per mon"; + } + + typedef Otu-sec-state { + type enumeration { + enum "normal" { + value 0; + description + "Normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance"; + } + enum "ains" { + value 2; + description + "Automatic In Service"; + } + } + description + "Otu sec state"; + } + + typedef Otu-der-state { + type enumeration { + enum "out-of-service" { + value 0; + description + "Out Of Service"; + } + enum "in-service" { + value 1; + description + "In Service"; + } + enum "maintenance" { + value 2; + description + "Maintenance"; + } + enum "ains" { + value 3; + description + "Automatic In Service"; + } + } + description + "Otu der state"; + } + + typedef Otu-g709fec-mode { + type enumeration { + enum "otu-bag-none-fec" { + value 1; + description + "NONE"; + } + enum "otu-bag-standard-fec" { + value 2; + description + "STANDARD"; + } + enum "otu-bag-1-i-7-fec" { + value 4; + description + "ENHANCEDI.7"; + } + enum "otu-bag-1-i-4-fec" { + value 8; + description + "ENHANCEDI.4"; + } + enum "otu-bag-swizzle-fec" { + value 16; + description + "SWIZZLE"; + } + enum "otu-bag-hg20-fec" { + value 32; + description + "HIGH GAIN20"; + } + enum "otu-bag-enhanced-hg7-fec" { + value 64; + description + "Enhanced High Gain 7"; + } + enum "otu-bag-sd20-fec" { + value 128; + description + "Soft-Decision 20"; + } + enum "otu-bag-sd7-fec" { + value 256; + description + "Soft-Decision 7"; + } + enum "otu-bag-sd15-fec" { + value 512; + description + "Soft-Decision 15"; + } + enum "otu-bag-sd27-fec" { + value 1024; + description + "Soft-Decision 27"; + } + enum "otu-bag-sd15-de-fec" { + value 2048; + description + "Soft-Decision 15 DE"; + } + enum "otu-bag-staircase-de-fec" { + value 4096; + description + "STAIRCASE DE"; + } + enum "otu-bag-o-fec" { + value 8192; + description + "O FEC"; + } + enum "otu-bag-c-fec" { + value 16384; + description + "C FEC"; + } + enum "otu-bag-all-fec" { + value 32768; + description + "ALL"; + } + } + description + "Otu g709fec mode"; + } + + typedef Otu-cn-rate { + type enumeration { + enum "otuc1" { + value 1; + description + "OTUC1"; + } + enum "otuc2" { + value 2; + description + "OTUC2"; + } + enum "otuc3" { + value 3; + description + "OTUC3"; + } + enum "otuc4" { + value 4; + description + "OTUC4"; + } + } + description + "Otu cn rate"; + } + + typedef Otu-flexo-mode { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Otu flexo mode"; + } + + typedef Otu-loop-back-mode { + type enumeration { + enum "none" { + value 1; + description + "None"; + } + enum "line" { + value 2; + description + "Line"; + } + enum "internal" { + value 4; + description + "Internal"; + } + } + description + "Otu loop back mode"; + } + + typedef Otu-tti-et { + type enumeration { + enum "ascii" { + value 0; + description + "ASCII"; + } + enum "hex" { + value 1; + description + "HEX"; + } + enum "full-ascii" { + value 2; + description + "FULL ASCII"; + } + enum "full-hex" { + value 3; + description + "FULL HEX"; + } + } + description + "Otu tti et"; + } + + typedef Otu-led-state-et { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green On"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow On"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red On"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "not-applicable" { + value 7; + description + "Not Applicable"; + } + } + description + "Otu led state et"; + } + + typedef Otu-state-et { + type enumeration { + enum "not-ready" { + value 0; + description + "Not Ready"; + } + enum "admin-down" { + value 1; + description + "Admin Down"; + } + enum "down" { + value 2; + description + "Down"; + } + enum "up" { + value 3; + description + "Up"; + } + enum "shutdown" { + value 4; + description + "Shutdown"; + } + enum "error-disable" { + value 5; + description + "Error Disable"; + } + enum "down-immediate" { + value 6; + description + "Down Immediate"; + } + enum "down-immediate-admin" { + value 7; + description + "Down Immediate Admin"; + } + enum "down-graceful" { + value 8; + description + "Down Graceful"; + } + enum "begin-shutdown" { + value 9; + description + "Begin Shutdown"; + } + enum "end-shutdown" { + value 10; + description + "End Shutdown"; + } + enum "begin-error-disable" { + value 11; + description + "Begin Error Disable"; + } + enum "end-error-disable" { + value 12; + description + "End Error Disable"; + } + enum "begin-down-graceful" { + value 13; + description + "Begin Down Graceful"; + } + enum "reset" { + value 14; + description + "Reset"; + } + enum "operational" { + value 15; + description + "Operational"; + } + enum "not-operational" { + value 16; + description + "Not Operational"; + } + enum "unknown" { + value 17; + description + "Unknown"; + } + enum "last" { + value 18; + description + "Last"; + } + } + description + "Otu state et"; + } + + typedef Otu-prbs-err-inject { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "single" { + value 1; + description + "Single"; + } + enum "continuous" { + value 2; + description + "Continuous"; + } + } + description + "Otu prbs err inject"; + } + + typedef Otu-prbs-direct-ion { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "line" { + value 1; + description + "Line"; + } + enum "system" { + value 2; + description + "System"; + } + } + description + "Otu prbs direct ion"; + } + + typedef Otu-prbs-status { + type enumeration { + enum "locked" { + value 0; + description + "Locked"; + } + enum "unlocked" { + value 1; + description + "Unlocked"; + } + enum "not-applicable" { + value 2; + description + "Not Applicable"; + } + } + description + "Otu prbs status"; + } + + typedef Otu-prbs-pattern { + type enumeration { + enum "not-applicable" { + value 0; + description + "OTU PRBS pattern not applicable"; + } + enum "pn31" { + value 1; + description + "PN31"; + } + enum "pn23" { + value 2; + description + "PN23"; + } + enum "pn11" { + value 4; + description + "PN11"; + } + enum "inverted-pn31" { + value 8; + description + "INVERTED PN31"; + } + enum "inverted-pn11" { + value 16; + description + "INVERTED PN11"; + } + enum "pn15" { + value 32; + description + "PN15"; + } + enum "pn7" { + value 64; + description + "PN7"; + } + enum "pn9" { + value 128; + description + "PN9"; + } + enum "user-def" { + value 256; + description + "USER DEFINED"; + } + } + description + "Otu prbs pattern"; + } + + typedef Otu-prbs-mode { + type enumeration { + enum "not-applicable" { + value 0; + description + "OTU PRBS mode not applicable"; + } + enum "source" { + value 1; + description + "Source"; + } + enum "sink" { + value 2; + description + "Sink"; + } + enum "source-sink" { + value 3; + description + "Source Sink"; + } + } + description + "Otu prbs mode"; + } + + typedef Otu-prbs-test { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "enable" { + value 1; + description + "Enable"; + } + } + description + "Otu prbs test"; + } + + grouping OTU-AINS-HW-INFO { + description + "OTU AINS information"; + leaf ains-state { + type Otu-ains-state-et; + description + "AINS State"; + } + leaf ains-timer-minutes { + type uint32; + units "minute"; + description + "AINS Timer in Minutes"; + } + leaf ains-remaining-secs { + type uint32; + units "second"; + description + "AINS Remaining Seconds"; + } + } + + grouping FEC-OPER-DATA { + description + "FEC Satistics"; + leaf post-fec-ber { + type string; + description + "Bit Error Rate After Forward Error Correction"; + } + leaf pre-fec-ber { + type string; + description + "Bit Error Rate Before Forward Error Correction"; + } + } + + grouping OTU-PROACTIVE-INFO { + description + "Proactive Protection"; + leaf proactive-status { + type boolean; + description + "Proactive Status"; + } + leaf inherit-sec-state { + type Otu-sec-state; + description + "Secondary Admin State"; + } + leaf config-sec-state { + type Otu-sec-state; + description + "Sec State"; + } + leaf proactive-fsm-state { + type Otu-pp-fsm-state; + description + "Proactive FSM State"; + } + leaf proactive-fsm-if-state { + type Otu-pp-intf-state; + description + "Proactive FSM IF State"; + } + leaf trig-thresh-coeff { + type uint8; + description + "Trigger threshold coefficient"; + } + leaf trig-thresh-power { + type uint8; + description + "Trigger threshold power"; + } + leaf rvrt-thresh-coeff { + type uint8; + description + "Revert threshold coefficient"; + } + leaf rvrt-thresh-power { + type uint8; + description + "Revert threshold power"; + } + leaf trigger-window { + type uint32; + description + "Trigger Integration window"; + } + leaf revert-window { + type uint32; + description + "Revert Integration Window"; + } + } + + grouping OTU-EDM-ALARM { + description + " OTU Alarm"; + leaf reporting-enabled { + type boolean; + description + "Is reporting enabled?"; + } + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf is-asserted { + type boolean; + description + "Is defect delared?"; + } + leaf counter { + type uint64; + description + "Alarm counter"; + } + } + + grouping OTU-ALARM-INFO { + description + "otu information"; + container los { + description + "Loss of Signal"; + uses OTU-EDM-ALARM; + } + container lof { + description + "Loss of Frame"; + uses OTU-EDM-ALARM; + } + container lom { + description + "Loss of MultiFrame"; + uses OTU-EDM-ALARM; + } + container oof { + description + "Out of Frame"; + uses OTU-EDM-ALARM; + } + container oom { + description + "Out of MultiFrame"; + uses OTU-EDM-ALARM; + } + container ais { + description + "Alarm Indication Signal"; + uses OTU-EDM-ALARM; + } + container iae { + description + "Incoming Alignment Error"; + uses OTU-EDM-ALARM; + } + container biae { + description + "Backward Incoming Alignment Error"; + uses OTU-EDM-ALARM; + } + container bdi { + description + "Backward Defect Indication"; + uses OTU-EDM-ALARM; + } + container tim { + description + "Trace Identifier Mismatch"; + uses OTU-EDM-ALARM; + } + container eoc { + description + "GCC End of Channel"; + uses OTU-EDM-ALARM; + } + container fec-mismatch { + description + "FEC mismatch alarm"; + uses OTU-EDM-ALARM; + } + container sf-ber { + description + "SF BER alarm"; + uses OTU-EDM-ALARM; + } + container sd-ber { + description + "SD BER alarm"; + uses OTU-EDM-ALARM; + } + container ec { + description + "EC alarm"; + uses OTU-EDM-ALARM; + } + container uc { + description + "UC alarm"; + uses OTU-EDM-ALARM; + } + container fecunc { + description + "FEC UnCorrected Word"; + uses OTU-EDM-ALARM; + } + container flexo-lom { + description + "FlexO Loss Of MultiFrame"; + uses OTU-EDM-ALARM; + } + container gidm { + description + "FlexO Group Identification Mismatch"; + uses OTU-EDM-ALARM; + } + container fmm { + description + "FlexO Map Mismatch"; + uses OTU-EDM-ALARM; + } + container flexo-lof { + description + "flexo lof alarm"; + uses OTU-EDM-ALARM; + } + container rdi { + description + "FlexO Remote Defect Indicator"; + uses OTU-EDM-ALARM; + } + } + + grouping NETWORK-SRLG-SET { + description + "Network Shared Risk Link Group information + expressed in integer format"; + leaf set-id { + type uint32; + description + "Array to maintain set id number"; + } + list srlg { + description + "Shared Risk Link Group information expressed in + + integer format"; + leaf entry { + type uint32; + description + "Shared Risk Link Group information expressed in + + integer format"; + } + } + } + + grouping NETWORK-SRLG-INFO { + description + "Array of Network Shared Risk Link Group + Information"; + list srlg-info { + description + "Array of Network Shared Risk Link Group + information"; + uses NETWORK-SRLG-SET; + } + } + + grouping FLEXO-PEERS { + description + "Flexo Peers Information Parameter"; + leaf otu-cn-rate { + type Otu-cn-rate; + description + "OTUCn rate Parameter"; + } + leaf interface-name { + type string; + description + "Interface Name Parameter"; + } + } + + grouping OTU-FLEXO-PEERS-INFO { + description + "Flexo Peers Information"; + list flexo-peer { + description + "Flexo Peers"; + uses FLEXO-PEERS; + } + } + + grouping FLEXO-IID-ARRAY { + description + "Flexo IID Information Parameter"; + leaf iid { + type uint32; + description + "IID Parameter"; + } + } + + grouping OTU-FLEXO-IID-INFO { + description + "Flexo IID Information"; + list iid-array { + description + "iid array"; + uses FLEXO-IID-ARRAY; + } + } + + grouping OTU-FLEXO-INFO { + description + "otu flexo-mode information"; + container flexo-tx-iid-information { + description + "Flexo Tx IID Information"; + uses OTU-FLEXO-IID-INFO; + } + container flexo-rx-iid-information { + description + "Flexo Rx IID Information"; + uses OTU-FLEXO-IID-INFO; + } + container flexo-peers-information { + description + "Flexo Peers Information"; + uses OTU-FLEXO-PEERS-INFO; + } + leaf flexo-mode { + type Otu-flexo-mode; + description + "Flexo"; + } + leaf txgid { + type uint32; + description + "Tx GID Value"; + } + leaf rxgid { + type uint32; + description + "Rx GID Value"; + } + } + + grouping OTU-TTI-ST { + description + "TTI SAPI DAPI"; + leaf full-tti-ascii-string { + type string; + description + "full tti ascii String "; + } + list sapi { + description + "tx String "; + leaf entry { + type uint8; + description + "tx String "; + } + } + list dapi { + description + "exp String "; + leaf entry { + type uint8; + description + "exp String "; + } + } + list operator-specific { + description + "rec String "; + leaf entry { + type uint8; + description + "rec String "; + } + } + } + + grouping OTU-G709-TTI { + description + "OTU TTI"; + container tx { + description + "String Sent"; + uses OTU-TTI-ST; + } + container exp { + description + "String Expected"; + uses OTU-TTI-ST; + } + container rec { + description + "String Received"; + uses OTU-TTI-ST; + } + leaf g709tti-sent-mode { + type Otu-tti-et; + description + "G709TTI sent"; + } + leaf g709tti-exp-mode { + type Otu-tti-et; + description + "G709TTI Expected"; + } + leaf g709tti-rec-mode { + type Otu-tti-et; + description + "G709TTI Recieved"; + } + leaf remote-interface { + type string; + description + "Remote Interface Name"; + } + leaf remote-host-name { + type string; + description + "Remote host name"; + } + leaf remote-ip-addr { + type string; + description + "Remote host ip"; + } + } + + grouping OTN-OTU-REMOTE-INFO-VIA-TTI-T-RTRID-IFINDEX { + description + "otn otu remote info via tti t rtrid ifindex"; + leaf router-id { + type uint32; + description + "Router ID"; + } + leaf if-index { + type uint32; + description + "IfIndex"; + } + } + + grouping OTU-PER-PORT-INFO { + description + "OTU"; + container local { + description + "TTI"; + uses OTN-OTU-REMOTE-INFO-VIA-TTI-T-RTRID-IFINDEX; + } + container remote { + description + "Remote"; + uses OTN-OTU-REMOTE-INFO-VIA-TTI-T-RTRID-IFINDEX; + } + container tti-mode { + description + "OTU TTI"; + uses OTU-G709-TTI; + } + container otu-flexo-data-info { + description + "OTU Flexo Data Information"; + uses OTU-FLEXO-INFO; + } + container network-srlg { + description + "Network Shared Risk Link Group information"; + uses NETWORK-SRLG-INFO; + } + container otu-alarm-info { + description + "OTU layer alarm Information"; + uses OTU-ALARM-INFO; + } + container proactive { + description + "Proactive Protection"; + uses OTU-PROACTIVE-INFO; + } + container otu-fec-satistics { + description + "OTU FEC Statistics"; + uses FEC-OPER-DATA; + } + container ains-info { + description + "AINS information"; + uses OTU-AINS-HW-INFO; + } + leaf state { + type Otu-state-et; + description + "Admin State"; + } + leaf name { + type string; + description + "Interface Name"; + } + leaf led-state { + type Otu-led-state-et; + description + "LED State"; + } + leaf sf { + type uint8; + description + "SF in the form of 1.0E - "; + } + leaf sd { + type uint8; + description + "SD in the form of 1.0E - "; + } + leaf loopback-mode { + type Otu-loop-back-mode; + description + "Loopback"; + } + leaf fec-mode { + type Otu-g709fec-mode; + description + "FEC"; + } + leaf derivedstate-mode { + type Otu-der-state; + description + "Derived State"; + } + leaf inherit-sec-state { + type Otu-sec-state; + description + "Sec State"; + } + leaf config-sec-state { + type Otu-sec-state; + description + "Sec State"; + } + leaf gcc-mode { + type boolean; + description + "OTU GCC"; + } + leaf q { + type uint64; + description + "q value calculated"; + } + leaf q-margin { + type uint64; + description + "This q margin will be deprecated"; + } + leaf performance-monitoring { + type Otu-per-mon; + description + "Performance Monitoring"; + } + leaf ec { + type uint64; + description + "Average bit errors corrected"; + } + leaf uc { + type uint64; + description + "Uncorrected word count"; + } + leaf pre-fec-val { + type int32; + description + "Pre FEC BER Value in form 0.00"; + } + leaf pre-fec-mantissa { + type int8; + description + "Pre FEC BER Mantissa in form E-"; + } + leaf ec-value { + type boolean; + description + "EC value present"; + } + leaf uc-value { + type boolean; + description + "Uc value present"; + } + leaf pre-fec-ber-value { + type boolean; + description + "Pre fec val present "; + } + leaf pre-fec-ber-mantissa { + type boolean; + description + "Pre fec val mantissa"; + } + leaf nv-optical-support { + type boolean; + description + "NV Optical support"; + } + leaf gmpls-tti-mode { + type Gmpls-otu-tti-mode; + description + "GMPLS TTI MODE"; + } + leaf gmpls-tvm-id { + type uint8; + description + "GMPLS TCM ID"; + } + leaf auto-tti-flag { + type boolean; + description + "Auto tti flag"; + } + leaf description { + type string; + description + "Controller description string"; + } + leaf qfactor { + type string; + description + "Q factor value"; + } + leaf bandwidth { + type string; + description + "OTU bandiwdth"; + } + leaf qmargin { + type string; + description + "Q Margin value"; + } + leaf inst-q-margin { + type string; + description + "Instantaneous Q Margin value"; + } + } + + grouping OTU-PRBS-INFO { + description + "PRBS"; + leaf otu-prbs-test { + type Otu-prbs-test; + description + "otu prbs test"; + } + leaf otu-prbs-mode { + type Otu-prbs-mode; + description + "otu prbs mode"; + } + leaf otu-prbs-pattern { + type Otu-prbs-pattern; + description + "otu prbs pattern"; + } + leaf otu-prbs-status { + type Otu-prbs-status; + description + "otu prbs status"; + } + leaf otu-prbs-direction { + type Otu-prbs-direct-ion; + description + "otu prbs direction"; + } + leaf otu-prbs-error-inject { + type Otu-prbs-err-inject; + description + "otu prbs error-inject"; + } + leaf otu-prbs-user-pattern { + type uint64; + description + "otu prbs user defined pattern"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper.yang new file mode 100644 index 000000000..f30577eb5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-otu-oper.yang @@ -0,0 +1,104 @@ +module Cisco-IOS-XR-controller-otu-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-otu-oper"; + prefix controller-otu-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-otu-oper-sub1 { + revision-date 2021-12-01; + } + + 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 controller-otu package operational data. + + This module contains definitions + for the following management objects: + otu: OTU operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Added LED State + 2021-09-01 + Added support for PRBS direction and error-inject"; + semver:module-version "3.2.0"; + } + revision 2020-05-12 { + description + "Added flexo oper"; + semver:module-version "3.1.0"; + } + revision 2019-12-19 { + description + "Added new values in OTU_G709FECMode + 2019-09-18 + Added new parameters, q-margin, q-factor, bandwidth to reflect under show controller coherentdsp."; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-03-13 { + description + "PRBS Info added"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container otu { + config false; + description + "OTU operational data"; + container controllers { + description + "All OTU Port operational data"; + list controller { + key "controller-name"; + description + "OTU Port operational data"; + container prbs { + description + "OTU port PRBS operational data"; + uses OTU-PRBS-INFO; + } + container info { + description + "OTU port operational data"; + uses OTU-PER-PORT-INFO; + } + leaf controller-name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-cfg.yang new file mode 100644 index 000000000..2edbc2525 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-cfg.yang @@ -0,0 +1,941 @@ +module Cisco-IOS-XR-controller-sonet-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-sonet-cfg"; + prefix controller-sonet-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-sonet package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-08 { + description + "Addition of leaf related to SFP TDM alarm propagation."; + semver:module-version "1.0.0"; + } + revision 2022-02-15 { + description + "64 byte mode added to SONETOverheadJ0Byte, maximum length of string accepted"; + } + revision 2022-02-02 { + description + "Leaves prbs-framing, prbs-direction, prbs-err-inject and user-pattern made mandatory"; + } + revision 2022-01-12 { + description + "Added cfg Schema for STM controller"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sonet-ma-clock-source { + type enumeration { + enum "internal" { + value 0; + description + "Internal"; + } + enum "line" { + value 1; + description + "Line"; + } + } + description + "Sonet ma clock source"; + } + + typedef Sonet-prbs-pattern { + type enumeration { + enum "pn31" { + value 1; + description + "PRBS pattern pn31"; + } + enum "pn23" { + value 2; + description + "PRBS pattern pn23"; + } + enum "pn15" { + value 3; + description + "PRBS pattern pn15"; + } + enum "pn11" { + value 4; + description + "PRBS pattern pn11"; + } + enum "pn9" { + value 5; + description + "PRBS pattern pn9"; + } + enum "pn7" { + value 6; + description + "PRBS pattern pn7"; + } + enum "pattern-user-defined" { + value 7; + description + "user-defined prbs pattern(64-bit hex value)"; + } + } + description + "Sonet prbs pattern"; + } + + typedef Mapping { + type enumeration { + enum "e1" { + value 5; + description + "Mapping type E1"; + } + } + description + "Mapping"; + } + + typedef Sonet-overhead-j1-byte { + type enumeration { + enum "16-byte" { + value 2; + description + "16 Byte overhead"; + } + enum "64-byte" { + value 3; + description + "64 Byte Overhead"; + } + } + description + "Sonet overhead j1 byte"; + } + + typedef Sonet-perf-mon { + type enumeration { + enum "enable" { + value 0; + description + "Enable"; + } + enum "disable" { + value 1; + description + "Disable"; + } + } + description + "Sonet perf mon"; + } + + typedef Tug3mode { + type enumeration { + enum "tug2" { + value 4; + description + "Mode TUG2 (Tributary Unit Group TUG-2"; + } + } + description + "Tug3mode"; + } + + typedef Augmodetug { + type enumeration { + enum "tug3" { + value 3; + description + "Tributary Unit Group (TUG3)"; + } + } + description + "Augmodetug"; + } + + typedef Mappingau4 { + type enumeration { + enum "au4" { + value 1; + description + "aug map AU4"; + } + } + description + "Mappingau4"; + } + + typedef Sonet-prbs-mode { + type enumeration { + enum "source" { + value 1; + description + "PRBS source mode"; + } + enum "sink" { + value 2; + description + "PRBS sink mode"; + } + enum "source-sink" { + value 3; + description + "PRBS source-sink mode"; + } + } + description + "Sonet prbs mode"; + } + + typedef Sonet-overhead-j0-byte { + type enumeration { + enum "1byte" { + value 1; + description + "1 Byte overhead"; + } + enum "16-byte" { + value 2; + description + "16 Byte Overhead"; + } + enum "64-byte" { + value 3; + description + "64 Byte Overhead"; + } + } + description + "Sonet overhead j0 byte"; + } + + typedef Sonet-prbs-framing { + type enumeration { + enum "none" { + value 0; + description + "No framing config"; + } + enum "frame-d" { + value 1; + description + "PRBS framed"; + } + enum "unframed" { + value 2; + description + "PRBS unframed"; + } + } + description + "Sonet prbs framing"; + } + + typedef Extended-sonet-loopback { + type enumeration { + enum "internal" { + value 1; + description + "Internal loopback"; + } + enum "line" { + value 2; + description + "Line loopback"; + } + } + description + "Extended sonet loopback"; + } + + typedef Payloadmode { + type enumeration { + enum "vc12" { + value 5; + description + "Payload type VC12(Virtual Container)"; + } + } + description + "Payloadmode"; + } + + typedef Sonet-prbs-direction { + type enumeration { + enum "none" { + value 0; + description + "No direction config"; + } + enum "line" { + value 1; + description + "PRBS line"; + } + enum "system" { + value 2; + description + "PRBS system"; + } + } + description + "Sonet prbs direction"; + } + + typedef Sonet-prbs-err-inject { + type enumeration { + enum "none" { + value 0; + description + "No error-inject config"; + } + enum "single" { + value 1; + description + "PRBS single error injection"; + } + enum "continuous" { + value 2; + description + "PRBS continuous error injection"; + } + } + description + "Sonet prbs err inject"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container sts { + description + "SONET path controller configuration"; + container sts-overhead { + description + "Specify Overhead value "; + container sts-overhead-j1-expected { + description + "Specify J1 Expected value "; + leaf overhead-byte { + type Sonet-overhead-j1-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Bytes + and 62 for 64 Bytes)"; + } + } + container sts-overhead-j1-send { + description + "Specify J1 Send value "; + leaf overhead-byte { + type Sonet-overhead-j1-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Bytes + and 62 for 64 Bytes)"; + } + } + } + leaf threshold-b3-ber { + type uint32 { + range "3..9"; + } + default "6"; + description + "Configure B3 BER Threshold Crossing Alert (TCA) + reporting"; + } + leaf sts-perf-mon { + type Sonet-perf-mon; + default "enable"; + description + "Enable/Disable Performance Monitoring"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container vc { + description + "SDH path controller configuration"; + container vc-overhead { + description + "Specify Overhead value "; + container vc-overhead-j1-expected { + description + "Specify J1 Expected value "; + leaf overhead-byte { + type Sonet-overhead-j1-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Bytes + and 62 for 64 Bytes)"; + } + } + container vc-overhead-j1-send { + description + "Specify J1 Send value "; + leaf overhead-byte { + type Sonet-overhead-j1-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Bytes + and 62 for 64 Bytes)"; + } + } + } + leaf threshold-b3-ber { + type uint32 { + range "3..9"; + } + default "6"; + description + "Configure B3 BER Threshold Crossing Alert (TCA) + reporting"; + } + leaf sts-perf-mon { + type Sonet-perf-mon; + default "enable"; + description + "Enable/Disable Performance Monitoring"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container stm { + description + "SDH port controller configuration"; + container stm-overhead { + description + "Specify Overhead value "; + container stm-overhead-j0-expected { + description + "Specify J0 Expected value "; + leaf overhead-byte { + type Sonet-overhead-j0-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Byte and + 62 characters for 64 Byte) pass NULL for 1 + Byte"; + } + leaf byte-value { + type uint32 { + range "0..255"; + } + description + "expected j0 byte (pass 0 for 16Bytes and + 64Bytes)"; + } + } + container stm-overhead-j0-send { + description + "Specify J0 Send value "; + leaf overhead-byte { + type Sonet-overhead-j0-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Byte and + 62 characters for 64 Byte) pass NULL for 1 + Byte"; + } + leaf byte-value { + type uint32 { + range "0..255"; + } + description + "transmit j0 byte (pass 0 for 16Byte)"; + } + } + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure Pseudo Random Binary Sequence"; + leaf prbs-mode { + type Sonet-prbs-mode; + mandatory true; + description + "PRBS Mode"; + } + leaf prbs-pattern { + type Sonet-prbs-pattern; + mandatory true; + description + "PRBS Pattern"; + } + leaf prbs-framing { + type Sonet-prbs-framing; + mandatory true; + description + "PRBS Framing"; + } + leaf prbs-direction { + type Sonet-prbs-direction; + mandatory true; + description + "PRBS Direction"; + } + leaf prbs-err-inject { + type Sonet-prbs-err-inject; + mandatory true; + description + "PRBS Error Injection"; + } + leaf user-pattern { + type xr:Hex-long-integer; + mandatory true; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + container extended-loopbacks { + description + "Configure STM Extended loopback (diagnostics)"; + list extended-loopback { + key "level"; + description + "Configure extended loopback mode"; + leaf level { + type uint32 { + range "1..3"; + } + description + "Level"; + } + leaf loopback { + type Extended-sonet-loopback; + mandatory true; + description + "Loopback"; + } + } + } + leaf threshold-sd-ber { + type uint32 { + range "5..9"; + } + default "6"; + description + "Configure Signal Degrade BER threshold"; + } + leaf threshold-b1-tca { + type uint32 { + range "3..9"; + } + default "6"; + description + "Configure B1 BER Threshold Crossing Alert (TCA) + threshold"; + } + leaf loopback { + type string; + description + "STM port loopback mode:internal - Select local + (terminal) loopback,line - Select network + (facility) loopback"; + } + leaf threshold-b2-tca { + type uint32 { + range "3..9"; + } + default "6"; + description + "Configure B2 BER Threshold Crossing Alert (TCA) + threshold"; + } + leaf threshold-sf-ber { + type uint32 { + range "3..5"; + } + default "3"; + description + "Configure Signal Fail BER threshold"; + } + leaf clock-source { + type Sonet-ma-clock-source; + default "line"; + description + "Configure SDH port Transmit clock source"; + } + leaf perf-mon { + type Sonet-perf-mon; + default "enable"; + description + "Enable/Disable Performance Monitoring"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container oc { + description + "SONET port controller configuration"; + container oc-overhead { + description + "Specify Overhead value "; + container oc-overhead-j0-expected { + description + "Specify J0 Expected value "; + leaf overhead-byte { + type Sonet-overhead-j0-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Byte and + 62 characters for 64 Byte) pass NULL for 1 + Byte"; + } + leaf byte-value { + type uint32 { + range "0..255"; + } + description + "expected j0 byte (pass 0 for 16Bytes and + 64Bytes)"; + } + } + container oc-overhead-j0-send { + description + "Specify J0 Send value "; + leaf overhead-byte { + type Sonet-overhead-j0-byte; + description + "No of Overhead Byte"; + } + leaf ascii-string { + type string { + length "1..62"; + } + description + "ASCII text (Max 15 characters for 16 Byte and + 62 characters for 64 Byte) pass NULL for 1 + Byte"; + } + leaf byte-value { + type uint32 { + range "0..255"; + } + description + "transmit j0 byte (pass 0 for 16Byte)"; + } + } + } + container extended-loopbacks { + description + "Configure OC Extended loopback (diagnostics)"; + list extended-loopback { + key "level"; + description + "Configure extended loopback mode"; + leaf level { + type uint32 { + range "1..3"; + } + description + "Level"; + } + leaf loopback { + type Extended-sonet-loopback; + mandatory true; + description + "Loopback"; + } + } + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure Pseudo Random Binary Sequence"; + leaf prbs-mode { + type Sonet-prbs-mode; + mandatory true; + description + "PRBS Mode"; + } + leaf prbs-pattern { + type Sonet-prbs-pattern; + mandatory true; + description + "PRBS Pattern"; + } + leaf prbs-framing { + type Sonet-prbs-framing; + mandatory true; + description + "PRBS Framing"; + } + leaf prbs-direction { + type Sonet-prbs-direction; + mandatory true; + description + "PRBS Direction"; + } + leaf prbs-err-inject { + type Sonet-prbs-err-inject; + mandatory true; + description + "PRBS Error Injection"; + } + leaf user-pattern { + type xr:Hex-long-integer; + mandatory true; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + leaf propagate-tdm-alarm { + type empty; + description + "Configure SFP TDM alarm propagation."; + } + leaf threshold-sd-ber { + type uint32 { + range "5..9"; + } + default "6"; + description + "Configure Signal Degrade BER threshold"; + } + leaf threshold-b1-tca { + type uint32 { + range "3..9"; + } + default "6"; + description + "Configure B1 BER Threshold Crossing Alert (TCA) + threshold"; + } + leaf loopback { + type string; + description + "OC port loopback mode:internal - Select local + (terminal) loopback,line - Select network + (facility) loopback"; + } + leaf threshold-b2-tca { + type uint32 { + range "3..9"; + } + default "6"; + description + "Configure B2 BER Threshold Crossing Alert (TCA) + threshold"; + } + leaf threshold-sf-ber { + type uint32 { + range "3..5"; + } + default "3"; + description + "Configure Signal Fail BER threshold"; + } + leaf clock-source { + type Sonet-ma-clock-source; + default "line"; + description + "Configure SONET port Transmit clock source"; + } + leaf perf-mon { + type Sonet-perf-mon; + default "enable"; + description + "Enable/Disable Performance Monitoring"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container stm-cfg { + description + "SONET port controller configuration"; + container au4s { + description + "Configure Administrative Unit Group(AUG) for + STM controller"; + list au4 { + key "augmap"; + description + "Mapping type AU4"; + leaf augmap { + type Mappingau4; + description + "mapping type AU4"; + } + list au-4 { + key "au4number"; + description + "AU4 number"; + leaf au4number { + type uint32 { + range "1"; + } + description + "select au4number"; + } + list mode { + key "aumode"; + description + "Configure mode for this Auxilary Unit 4(AU4)"; + leaf aumode { + type Augmodetug; + description + "au mode"; + } + list tug3-id { + key "tug3idnumber"; + description + "(TUG-3 id)"; + leaf tug3idnumber { + type uint32 { + range "1..3"; + } + description + "select tug3id number"; + } + list tug3-mode { + key "tug3mode"; + description + "TUG-3 mode (Tributary Unit Group (TUG-n))"; + leaf tug3mode { + type Tug3mode; + description + "tug 3 mode type"; + } + list tug2-id { + key "tug2number"; + description + "Configure TUG-2"; + leaf tug2number { + type uint32 { + range "1..7"; + } + description + "TUG2 Number"; + } + list payload { + key "payloadtype"; + description + "Configure payload type"; + leaf payloadtype { + type Payloadmode; + description + "Payload type"; + } + list vc12 { + key "vc12-number"; + description + "Configure VC12 type Virtual Container"; + leaf mapping { + type Mapping; + description + "Configure mapping for this VC(Virtual + Container)"; + } + leaf vc12-number { + type uint32 { + range "1..3"; + } + description + "Select VC12 number"; + } + } + } + } + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub1.yang new file mode 100644 index 000000000..c40515f8e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub1.yang @@ -0,0 +1,852 @@ +submodule Cisco-IOS-XR-controller-sonet-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-sonet-oper { + prefix Cisco-IOS-XR-controller-sonet-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-sonet package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-01 { + description + "Added LED state field to port common info"; + semver:module-version "1.0.0"; + } + revision 2022-02-15 { + description + "64 byte trace mode added to j0_info"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sonet-prbs-err-inject { + type enumeration { + enum "none" { + description + "None"; + } + enum "single" { + description + "Single"; + } + enum "continuous" { + description + "Continuous"; + } + } + description + "Sonet prbs err inject"; + } + + typedef Sonet-prbs-dir { + type enumeration { + enum "none" { + description + "None"; + } + enum "line" { + description + "Line"; + } + enum "system" { + description + "System"; + } + } + description + "Sonet prbs dir"; + } + + typedef Sonet-prbs-framing { + type enumeration { + enum "none" { + description + "None"; + } + enum "framed" { + description + "Framed"; + } + enum "unframed" { + description + "Unframed"; + } + } + description + "Sonet prbs framing"; + } + + typedef Sonet-prbs-status { + type enumeration { + enum "prbs-not-running" { + value 0; + description + "Not Running"; + } + enum "prbs-locked" { + value 1; + description + "Locked"; + } + enum "prbs-unlocked" { + value 2; + description + "Unlocked"; + } + enum "prbs-not-available" { + value 3; + description + "Not Applicable"; + } + } + description + "Sonet prbs status"; + } + + typedef Sonet-prbs-pattern { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "pn31" { + value 1; + description + "PN31"; + } + enum "pn23" { + value 2; + description + "PN23"; + } + enum "pn15" { + value 3; + description + "PN15"; + } + enum "pn11" { + value 4; + description + "PN11"; + } + enum "pn9" { + value 5; + description + "PN9"; + } + enum "pn7" { + value 6; + description + "PN7"; + } + enum "user-defined" { + value 7; + description + "User Defined Pattern"; + } + } + description + "Sonet prbs pattern"; + } + + typedef Sonet-prbs-mode { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "source" { + value 1; + description + "Source"; + } + enum "sink" { + value 2; + description + "Sink"; + } + enum "source-sink" { + value 3; + description + "Source Sink"; + } + } + description + "Sonet prbs mode"; + } + + typedef Ains-state-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "active-running" { + value 1; + description + "Running"; + } + enum "active-pending" { + value 2; + description + "Pending"; + } + } + description + "Ains state et"; + } + + typedef Tx-clock-info { + type enumeration { + enum "clock-src-internal" { + description + "clock src internal"; + } + enum "clock-src-line" { + description + "clock src line"; + } + enum "clock-recovered-dcr" { + description + "Differential Clock Recovery (DCR)"; + } + enum "clock-none" { + description + "clock none"; + } + } + description + "Tx clock info"; + } + + typedef Framing-info { + type enumeration { + enum "framing-sonet-ma" { + description + "framing sonet ma"; + } + enum "framing-sdh-ma" { + description + "framing sdh ma"; + } + } + description + "Framing info"; + } + + typedef Loopback-info { + type enumeration { + enum "none" { + description + "No loopback"; + } + enum "internal" { + description + "Internal loopback"; + } + enum "external" { + description + "External loopback"; + } + enum "invalid" { + description + "Invalid loopback"; + } + } + description + "loopback info"; + } + + typedef Trace-mode-enum { + type enumeration { + enum "trace-invalid" { + value 0; + description + "Trace mode invalid"; + } + enum "trace-byte" { + value 1; + description + "Trace mode 1 byte"; + } + enum "trace-16" { + value 2; + description + "Trace mode is 16"; + } + enum "trace-64" { + value 3; + description + "Trace mode is 64"; + } + } + description + "Trace mode Enum"; + } + + typedef Sonet-led-state { + type enumeration { + enum "off" { + value 0; + description + "Off"; + } + enum "green-on" { + value 1; + description + "Green On"; + } + enum "green-flashing" { + value 2; + description + "Green Flashing"; + } + enum "yellow-on" { + value 3; + description + "Yellow On"; + } + enum "yellow-flashing" { + value 4; + description + "Yellow Flashing"; + } + enum "red-on" { + value 5; + description + "Red On"; + } + enum "red-flashing" { + value 6; + description + "Red Flashing"; + } + enum "not-applicable" { + value 7; + description + "Not Applicable"; + } + } + description + "Sonet led state"; + } + + typedef Sonet-sec-state { + type enumeration { + enum "normal" { + value 0; + description + "Normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance"; + } + enum "ains" { + value 2; + description + "Automatic In Service"; + } + } + description + "Sonet sec state"; + } + + typedef Sonet-ma-derived-admin-state { + type enumeration { + enum "in-service" { + description + "In Service"; + } + enum "out-of-service" { + description + "Out of Service"; + } + enum "maintenance" { + description + "Maintenance"; + } + enum "ains" { + description + "Automatic In Service"; + } + } + description + "Sonet ma derived admin state"; + } + + typedef Sonet-state-et { + type enumeration { + enum "not-ready" { + value 0; + description + "Not Ready"; + } + enum "admin-down" { + value 1; + description + "Admin Down"; + } + enum "down" { + value 2; + description + "Down"; + } + enum "up" { + value 3; + description + "Up"; + } + enum "shutdown" { + value 4; + description + "Shutdown"; + } + enum "error-disable" { + value 5; + description + "Error Disable"; + } + enum "down-immediate" { + value 6; + description + "Down Immediate"; + } + enum "down-immediate-admin" { + value 7; + description + "Down Immediate Admin"; + } + enum "down-graceful" { + value 8; + description + "Down Graceful"; + } + enum "begin-shutdown" { + value 9; + description + "Begin Shutdown"; + } + enum "end-shutdown" { + value 10; + description + "End Shutdown"; + } + enum "begin-error-disable" { + value 11; + description + "Begin Error Disable"; + } + enum "end-error-disable" { + value 12; + description + "End Error Disable"; + } + enum "begin-down-graceful" { + value 13; + description + "Begin Down Graceful"; + } + enum "reset" { + value 14; + description + "Reset"; + } + enum "operational" { + value 15; + description + "Operational"; + } + enum "not-operational" { + value 16; + description + "Not Operational"; + } + enum "unknown" { + value 17; + description + "Unknown"; + } + enum "last" { + value 18; + description + "Last"; + } + } + description + "Sonet state et"; + } + + grouping SONET-MA-PORT-INFO { + description + "SONET MA port operational info"; + container common-info { + description + "Port's common info"; + uses PORT-COMMON-INFO; + } + container section { + description + "Section info"; + uses SECTION-INFO; + } + container line { + description + "Line info"; + uses LINE-INFO; + } + container ains-info { + description + "AINS information"; + uses AINS-HW-INFO; + } + container prbs-info { + description + "PRBS information"; + uses SONET-PRBS-INFO; + } + } + + grouping SONET-PRBS-INFO { + description + "PRBS"; + leaf mode { + type Sonet-prbs-mode; + description + "PRBS mode"; + } + leaf pattern { + type Sonet-prbs-pattern; + description + "PRBS pattern"; + } + leaf status { + type Sonet-prbs-status; + description + "PRBS status"; + } + leaf framing { + type Sonet-prbs-framing; + description + "PRBS framing"; + } + leaf direction { + type Sonet-prbs-dir; + description + "PRBS direction"; + } + leaf err-inject { + type Sonet-prbs-err-inject; + description + "PRBS error injection"; + } + leaf user-pattern { + type uint64; + description + "PRBS user pattern configured"; + } + } + + grouping AINS-HW-INFO { + description + "AINS information"; + leaf ains-state { + type Ains-state-et; + description + "AINS State"; + } + leaf ains-timer-minutes { + type uint32; + units "minute"; + description + "AINS TImer in Minutes"; + } + leaf ains-remaining-secs { + type uint32; + units "second"; + description + "AINS Remaining Seconds"; + } + } + + grouping LINE-INFO { + description + "SONET Line operational info"; + container ais { + description + "AIS info"; + uses ALARM-INFO; + } + container rdi { + description + "RDI info"; + uses ALARM-INFO; + } + container bip { + description + "BIP (B2) BER info"; + uses BER-INFO; + } + container febe { + description + "FEBE info"; + uses BER-INFO; + } + container signal-degraded { + description + "BIP (B2) Signal Degraded info"; + uses BER-INFO; + } + container signal-failed { + description + "BIP (B2) Signal Failed info"; + uses BER-INFO; + } + } + + grouping EXTENDED-LOOPBACK-TYPE { + description + "EXTENDED LOOPBACK TYPE"; + leaf level { + type uint32; + description + "Level"; + } + leaf loopback { + type Loopback-info; + description + "Port operational loopback"; + } + } + + grouping J0-INFO { + description + "J0 overhead byte info"; + leaf mode { + type Trace-mode-enum; + description + "Overhead Mode"; + } + leaf trace-buffer { + type string { + length "0..64"; + } + description + "Trace info"; + } + } + + grouping BER-INFO { + description + "error block info"; + leaf is-masked { + type boolean; + description + "Are errors masked?"; + } + leaf is-asserted { + type boolean; + description + "Is threshold crossed?"; + } + leaf threshold { + type uint8; + description + "Error threshold power"; + } + leaf count { + type uint64; + description + "Error counter"; + } + } + + grouping ALARM-INFO { + description + "defect/alarm info"; + leaf is-masked { + type boolean; + description + "Is defect masked?"; + } + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf count { + type uint64; + description + "Alarm counter"; + } + } + + grouping SECTION-INFO { + description + "SONET Section operational info"; + container los { + description + "LOS info"; + uses ALARM-INFO; + } + container lof { + description + "LOF info"; + uses ALARM-INFO; + } + container tim { + description + "TIM info"; + uses ALARM-INFO; + } + container bip { + description + "BIP (B1) BER info"; + uses BER-INFO; + } + container j0-transmit { + description + "J0 Transmit"; + uses J0-INFO; + } + container j0-receive { + description + "J0 Receive"; + uses J0-INFO; + } + container j0-expected { + description + "J0 Expected"; + uses J0-INFO; + } + leaf loopback { + type Loopback-info; + description + "Loopback info"; + } + leaf framing { + type Framing-info; + description + "Framing type"; + } + leaf clock-source { + type Tx-clock-info; + description + "Actual Transmit clock source"; + } + leaf clock-source-cfg { + type Tx-clock-info; + description + "Configured Transmit clock source"; + } + list extended-loopback { + description + "Extended Loopback info"; + uses EXTENDED-LOOPBACK-TYPE; + } + } + + grouping PORT-COMMON-INFO { + description + "SONET port common info"; + leaf operational-state { + type Sonet-state-et; + description + "Port's IM state"; + } + leaf derived-state { + type Sonet-ma-derived-admin-state; + description + "Derived State"; + } + leaf config-sec-state { + type Sonet-sec-state; + description + "Configured Sec Admin State"; + } + leaf inherited-sec-state { + type Sonet-sec-state; + description + "Inherited Sec Admin State"; + } + leaf data-rate { + type uint32; + description + "Data rate"; + } + leaf last-clear-time { + type uint32; + description + "Time Duration Since Last Clear"; + } + leaf pm { + type boolean; + description + "PM enable/Disable"; + } + leaf led-state { + type Sonet-led-state; + description + "Current State of LED of Controller"; + } + } + + grouping SDH-PORT-INFO { + description + "SDH port operational info"; + container common-info { + description + "Port's common info"; + uses PORT-COMMON-INFO; + } + container regenerator-section { + description + "Regenerator Section info"; + uses SECTION-INFO; + } + container multiplex-section { + description + "Multiplex Section info"; + uses LINE-INFO; + } + container ains-info { + description + "AINS information"; + uses AINS-HW-INFO; + } + container prbs-info { + description + "PRBS information"; + uses SONET-PRBS-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub2.yang new file mode 100644 index 000000000..8c145304d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper-sub2.yang @@ -0,0 +1,552 @@ +submodule Cisco-IOS-XR-controller-sonet-oper-sub2 { + belongs-to Cisco-IOS-XR-controller-sonet-oper { + prefix Cisco-IOS-XR-controller-sonet-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-sonet package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-01 { + description + "Added LED state field to port common info"; + semver:module-version "1.0.0"; + } + revision 2022-02-15 { + description + "64 byte trace mode added to j0_info"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sonet-path-ains-state-et { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "active-running" { + value 1; + description + "Running"; + } + enum "active-pending" { + value 2; + description + "Pending"; + } + } + description + "Sonet path ains state et"; + } + + typedef Service-type-info { + type enumeration { + enum "mde-unequip" { + value 0; + description + "mde unequip"; + } + enum "mde-equip-unspecified" { + value 1; + description + "mde equip unspecified"; + } + enum "mde-c12" { + value 2; + description + "mde c12"; + } + enum "mde-c12-e1" { + value 3; + description + "mde c12 e1"; + } + enum "mde-c11" { + value 4; + description + "mde c11"; + } + enum "mde-c11-t1" { + value 5; + description + "mde c11 t1"; + } + enum "mde-vt15" { + value 6; + description + "mde vt15"; + } + enum "mde-vt15-t1" { + value 7; + description + "mde vt15 t1"; + } + enum "mde-vt2" { + value 8; + description + "mde vt2"; + } + enum "mde-t3" { + value 9; + description + "mde t3"; + } + enum "mde-e3" { + value 10; + description + "mde e3"; + } + enum "mde-pos-scrambled" { + value 11; + description + "mde pos scrambled"; + } + enum "mde-pos-unscrambled" { + value 12; + description + "mde pos unscrambled"; + } + enum "mde-atm" { + value 13; + description + "mde atm"; + } + enum "mde-tug3" { + value 14; + description + "mde tug3"; + } + enum "mde-unknown" { + value 15; + description + "mde unknown"; + } + } + description + "Service type info"; + } + + typedef Trace-mode-info-enum { + type enumeration { + enum "trace-mode-invalid" { + description + "trace mode invalid"; + } + enum "trace-mode-16" { + description + "trace mode 16"; + } + enum "trace-mode-64" { + description + "trace mode 64"; + } + } + description + "Trace mode info enum"; + } + + typedef Sonet-path-state-et { + type enumeration { + enum "not-ready" { + value 0; + description + "Not Ready"; + } + enum "admin-down" { + value 1; + description + "Admin Down"; + } + enum "down" { + value 2; + description + "Down"; + } + enum "up" { + value 3; + description + "Up"; + } + enum "shutdown" { + value 4; + description + "Shutdown"; + } + enum "error-disable" { + value 5; + description + "Error Disable"; + } + enum "down-immediate" { + value 6; + description + "Down Immediate"; + } + enum "down-immediate-admin" { + value 7; + description + "Down Immediate Admin"; + } + enum "down-graceful" { + value 8; + description + "Down Graceful"; + } + enum "begin-shutdown" { + value 9; + description + "Begin Shutdown"; + } + enum "end-shutdown" { + value 10; + description + "End Shutdown"; + } + enum "begin-error-disable" { + value 11; + description + "Begin Error Disable"; + } + enum "end-error-disable" { + value 12; + description + "End Error Disable"; + } + enum "begin-down-graceful" { + value 13; + description + "Begin Down Graceful"; + } + enum "reset" { + value 14; + description + "Reset"; + } + enum "operational" { + value 15; + description + "Operational"; + } + enum "not-operational" { + value 16; + description + "Not Operational"; + } + enum "unknown" { + value 17; + description + "Unknown"; + } + enum "last" { + value 18; + description + "Last"; + } + } + description + "Sonet path state et"; + } + + typedef Sonet-path-sec-state { + type enumeration { + enum "normal" { + value 0; + description + "Normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance"; + } + enum "ains" { + value 2; + description + "Automatic In Service"; + } + } + description + "Sonet path sec state"; + } + + typedef Sonet-derived-admin-state { + type enumeration { + enum "in-service" { + description + "In Service"; + } + enum "out-of-service" { + description + "Out of Service"; + } + enum "maintenance" { + description + "Maintenance"; + } + } + description + "Sonet derived admin state"; + } + + grouping SONET-PATH-AINS-HW-INFO { + description + "AINS information"; + leaf ains-state { + type Sonet-path-ains-state-et; + description + "AINS State"; + } + leaf ains-timer-minutes { + type uint32; + units "minute"; + description + "AINS Timer in Minutes"; + } + leaf ains-remaining-secs { + type uint32; + units "second"; + description + "AINS Remaining Seconds"; + } + } + + grouping PTR-INFO { + description + "SPE pointer info"; + leaf new-pointer { + type uint64; + description + "New Pointer events counter"; + } + leaf pse { + type uint64; + description + "Positive Stuffing Events counter"; + } + leaf nse { + type uint64; + description + "Negative Stuffing Events counter"; + } + } + + grouping C2-INFO { + description + "C2 overhead byte (path signal label) info"; + leaf is-stable { + type boolean; + description + "If stable C2 byte"; + } + leaf receive-c2 { + type yang:hex-string; + description + "Received C2 byte"; + } + leaf transmit-c2 { + type yang:hex-string; + description + "Transmitted C2 byte"; + } + leaf source-c2 { + type int8; + description + "Source of the C2 value"; + } + } + + grouping J1-INFO { + description + "J1 overhead byte (path trace) info"; + leaf is-stable { + type boolean; + description + "If stable J1 trace"; + } + leaf mode { + type Trace-mode-info-enum; + description + "J1 Trace mode"; + } + leaf trace-buffer { + type string { + length "0..62"; + } + description + "J1 trace buffer"; + } + } + + grouping SONET-PATH-BER-INFO { + description + "error block info"; + leaf is-masked { + type boolean; + description + "Are errors masked?"; + } + leaf is-asserted { + type boolean; + description + "Is threshold crossed?"; + } + leaf threshold { + type uint8; + description + "Error threshold power"; + } + leaf count { + type uint64; + description + "Error counter"; + } + } + + grouping SONET-PATH-ALARM-INFO { + description + "defect/alarm info"; + leaf alarm-name { + type string { + length "0..10"; + } + description + "Name of alarm"; + } + leaf is-masked { + type boolean; + description + "Is defect masked?"; + } + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf count { + type uint64; + description + "Alarm counter"; + } + } + + grouping SONET-PATH-INFO { + description + "Path operational info"; + container path-bip { + description + "Path BIP (B3) BER info"; + uses SONET-PATH-BER-INFO; + } + container febe { + description + "FEBE info"; + uses SONET-PATH-BER-INFO; + } + container j1-trasmit { + description + "J1 Transmit info"; + uses J1-INFO; + } + container j1-receive { + description + "J1 Receive info"; + uses J1-INFO; + } + container j1-expected { + description + "J1 Expected info"; + uses J1-INFO; + } + container c2 { + description + "C2 byte info"; + uses C2-INFO; + } + container spe-pointer { + description + "SPE pointer info"; + uses PTR-INFO; + } + container au-pointer { + description + "AU pointer info"; + uses PTR-INFO; + } + container ains-info { + description + "AINS information"; + uses SONET-PATH-AINS-HW-INFO; + } + leaf data-rate { + type uint32; + description + "Data rate"; + } + leaf scrambling-mode { + type uint32; + description + "Scrambling mode"; + } + leaf derived-state { + type Sonet-derived-admin-state; + description + "derived state"; + } + leaf sec-admin-state { + type Sonet-path-sec-state; + description + "sec admin state"; + } + leaf operational-state { + type Sonet-path-state-et; + description + "Port's IM state"; + } + leaf service { + type Service-type-info; + description + "Service Type"; + } + leaf pm { + type boolean; + description + "PM enable/Disable"; + } + list alarm { + max-elements "6"; + description + "List of alarms"; + uses SONET-PATH-ALARM-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper.yang new file mode 100644 index 000000000..017b7e4c7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-sonet-oper.yang @@ -0,0 +1,158 @@ +module Cisco-IOS-XR-controller-sonet-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-sonet-oper"; + prefix controller-sonet-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-sonet-oper-sub2 { + revision-date 2022-03-01; + } + include Cisco-IOS-XR-controller-sonet-oper-sub1 { + revision-date 2022-03-01; + } + + 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 controller-sonet package operational data. + + This module contains definitions + for the following management objects: + stm: STM operational data + vc: VC operational data + sts: STS operational data + oc: OC operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-01 { + description + "Added LED state field to port common info"; + semver:module-version "1.0.0"; + } + revision 2022-02-15 { + description + "64 byte trace mode added to j0_info"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container stm { + config false; + description + "STM operational data"; + container stm-controllers { + description + "All STM controller operational data"; + list stm-controller { + key "controller-name"; + description + "STM controller operational data"; + container stm-info { + description + "STM controller operational data"; + uses SDH-PORT-INFO; + } + leaf controller-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + container vc { + config false; + description + "VC operational data"; + container vc-controllers { + description + "All VC controller operational data"; + list vc-controller { + key "controller-name"; + description + "VC controller operational data"; + container vc-info { + description + "VC controller operational data"; + uses SONET-PATH-INFO; + } + leaf controller-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + container sts { + config false; + description + "STS operational data"; + container sts-controllers { + description + "All STS controller operational data"; + list sts-controller { + key "controller-name"; + description + "STS controller operational data"; + container sts-info { + description + "STS controller operational data"; + uses SONET-PATH-INFO; + } + leaf controller-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + container oc { + config false; + description + "OC operational data"; + container oc-controllers { + description + "All OC controller operational data"; + list oc-controller { + key "controller-name"; + description + "OC controller operational data"; + container oc-info { + description + "OC controller operational data"; + uses SONET-MA-PORT-INFO; + } + leaf controller-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-cfg.yang new file mode 100644 index 000000000..2c64ad081 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-cfg.yang @@ -0,0 +1,234 @@ +module Cisco-IOS-XR-controller-t1e1-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-t1e1-cfg"; + prefix controller-t1e1-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 controller-t1e1 package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-12 { + description + "Added Config Schema for T1E1"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef T1e1-prbspattern { + type enumeration { + enum "pn15" { + value 1; + description + "prbs pattern pn15"; + } + } + description + "T1e1 prbspattern"; + } + + typedef T1e1-prbsdirection { + type enumeration { + enum "line" { + value 1; + description + "prbs direction line"; + } + enum "system" { + value 2; + description + "prbs direction system"; + } + } + description + "T1e1 prbsdirection"; + } + + typedef T1e1-linecode { + type enumeration { + enum "ami" { + value 1; + description + "AMI encoding(E1 default)"; + } + enum "hdb3" { + value 2; + description + "HDB3 encoding"; + } + } + description + "T1e1 linecode"; + } + + typedef T1e1n-vloopbackmode { + type enumeration { + enum "local" { + value 1; + description + "local looback mode"; + } + enum "network-line" { + value 2; + description + "network line loopback mode"; + } + } + description + "T1e1n vloopbackmode"; + } + + typedef T1e1-clock-source { + type enumeration { + enum "source-internal" { + value 1; + description + "source internal clock"; + } + enum "source-line" { + value 2; + description + "source line clock"; + } + enum "source-recovered-acr" { + value 3; + description + "source adaptive recovered clock"; + } + enum "source-recovered-dcr" { + value 4; + description + "source differential recovered clock"; + } + } + description + "T1e1 clock source"; + } + + typedef Prbsmode { + type enumeration { + enum "sink" { + value 1; + description + "sink prbs mode"; + } + enum "source" { + value 2; + description + "source prbs mode"; + } + enum "source-sink" { + value 3; + description + "source-sink prbs mode"; + } + } + description + "Prbsmode"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container t1e1nv { + description + "t1/e1 controller configuration"; + container vlan { + presence "Indicates a vlan node is configured."; + description + "Configure vlan id"; + leaf vlanid { + type uint32 { + range "1..4095"; + } + mandatory true; + description + "select vlan id"; + } + leaf ecid { + type uint32 { + range "1..1000"; + } + description + "select ecid"; + } + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure pseudorandom binary sequence"; + leaf prbsmode { + type Prbsmode; + mandatory true; + description + "Sink,source,source-sink"; + } + leaf patterntype { + type T1e1-prbspattern; + mandatory true; + description + "PN15"; + } + leaf directiontype { + type T1e1-prbsdirection; + description + "line,system"; + } + } + leaf clock { + type T1e1-clock-source; + description + "Configure port TX clock source"; + } + leaf linecoding { + type T1e1-linecode; + description + "Configure linecoding"; + } + leaf loopback { + type T1e1n-vloopbackmode; + description + "Configure t1e1 loopback mode"; + } + leaf cemclass { + type string { + length "1..32"; + } + description + "Attach CEM class(Circuit emulation) profile"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper-sub1.yang new file mode 100644 index 000000000..a0bd17c3a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper-sub1.yang @@ -0,0 +1,548 @@ +submodule Cisco-IOS-XR-controller-t1e1-oper-sub1 { + belongs-to Cisco-IOS-XR-controller-t1e1-oper { + prefix Cisco-IOS-XR-controller-t1e1-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR controller-t1e1 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-12 { + description + "Added Oper Schema for T1E1"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef T1e1-ui-clock { + type enumeration { + enum "invalid" { + value 0; + description + "Clock Not Valid"; + } + enum "internal" { + value 1; + description + "Internal"; + } + enum "line" { + value 2; + description + "Line"; + } + enum "recovered-acr" { + value 3; + description + "Adaptive Clock Recovery (ACR)"; + } + enum "recovered-dcr" { + value 4; + description + "Differential Clock Recovery (DCR)"; + } + } + description + "T1e1 ui clock"; + } + + typedef T1e1-prbs-mode { + type enumeration { + enum "t1e1-prbs-mode-source" { + value 1; + description + "Source"; + } + enum "t1e1-prbs-mode-sink" { + value 2; + description + "Sink"; + } + enum "t1e1-prbs-mode-source-sink" { + value 3; + description + "Source Sink"; + } + } + description + "T1e1 prbs mode"; + } + + typedef T1e1-prbs-sync-status { + type enumeration { + enum "t1e1-prbs-status-sync" { + value 0; + description + "Sync"; + } + enum "t1e1-prbs-status-not-sync" { + value 1; + description + "Not Sync"; + } + } + description + "T1e1 prbs sync status"; + } + + typedef T1e1-prbs-pattern { + type enumeration { + enum "t1e1-prbs-pattern-pn15" { + value 1; + description + "PN15(2^15)"; + } + } + description + "T1e1 prbs pattern"; + } + + typedef T1e1-prbs-direction { + type enumeration { + enum "t1e1-prbs-direct-ion-line" { + value 1; + description + "Line"; + } + enum "t1e1-prbs-direct-ion-system" { + value 2; + description + "System"; + } + } + description + "T1e1 prbs direction"; + } + + typedef T1e1-ui-clock-state { + type enumeration { + enum "freerun" { + value 0; + description + "Free run"; + } + enum "hold-over" { + value 1; + description + "Hold over"; + } + enum "locked" { + value 2; + description + "Locked"; + } + enum "disabled" { + value 3; + description + "Disabled"; + } + } + description + "T1e1 ui clock state"; + } + + typedef T1e1-ui-frame { + type enumeration { + enum "e1t1-crc" { + value 0; + description + "CRC"; + } + enum "e1t1-nocrc" { + value 1; + description + "NOCRC"; + } + enum "e1t1-unframed" { + value 2; + description + "Unframed"; + } + } + description + "T1e1 ui frame"; + } + + typedef T1e1-ui-loopback { + type enumeration { + enum "loop-back-none" { + value 0; + description + "None"; + } + enum "loop-back-local" { + value 1; + description + "Local loopback"; + } + enum "loop-back-line" { + value 2; + description + "Line side loopback"; + } + } + description + "T1e1 ui loopback"; + } + + typedef Linecoding { + type enumeration { + enum "line-code-none" { + value 0; + description + "None"; + } + enum "line-code-ami" { + value 1; + description + "Alternate Mark Inversion(AMI)"; + } + enum "line-code-hdb3" { + value 2; + description + "High Density Bipolar Order 3"; + } + } + description + "Linecoding"; + } + + typedef T1e1-controller-state { + type enumeration { + enum "t1e1-state-up" { + value 0; + description + "Up"; + } + enum "t1e1-state-down" { + value 1; + description + "Down"; + } + enum "t1e1-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "T1e1 controller state"; + } + + typedef T1e1tas { + type enumeration { + enum "tas-ui-oos" { + value 0; + description + "Out Of Service"; + } + enum "tas-ui-main" { + value 1; + description + "Maintenance"; + } + enum "tas-ui-is" { + value 2; + description + "In Service"; + } + } + description + "T1e1tas"; + } + + grouping T1E1-PRBS-INFO { + description + "PRBS Test results"; + leaf prbs-direct-ion { + type T1e1-prbs-direction; + description + "PRBS pattern injection direction"; + } + leaf pattern { + type T1e1-prbs-pattern; + description + "PRBS patterns"; + } + leaf sync-status { + type T1e1-prbs-sync-status; + description + " PRBS Test Sync status"; + } + leaf prbs-mode { + type T1e1-prbs-mode; + description + "PRBS test mode"; + } + leaf sync-detected-counter { + type uint64; + description + "Counter for sync event detection"; + } + leaf bit-errors { + type uint64; + description + "Counter for bit error detected"; + } + leaf bit-recieved { + type uint64; + description + "Counter for bit recieved"; + } + leaf bit-error-sync { + type uint64; + description + "Counter for bit error detected since sync"; + } + leaf bit-recieved-sync { + type uint64; + description + "Counter for bit recieved since sync"; + } + leaf prbs-start-time-units { + type uint64; + units "second"; + description + "Timeunits(in Seconds) since prbs started"; + } + leaf prbs-last-sync-time-units { + type uint64; + units "second"; + description + "Timeunits(In Seconds) since last-sync for this + prbs test"; + } + } + + grouping T1E1-CEM-STATS { + description + "E1 cem stats information"; + leaf ingress-pkts { + type uint64; + description + "Ingress packets count"; + } + leaf ingress-droped { + type uint64; + description + "Ingress droped packets count"; + } + leaf egress-pkts { + type uint64; + description + "Egress packets count"; + } + leaf egress-droped { + type uint64; + description + "Egress droped packets count"; + } + leaf input-errors { + type uint64; + description + "Counter for errors in cem packet"; + } + leaf out-put-errors { + type uint64; + description + "Counter for errors in cem packet"; + } + leaf packet-missing { + type uint64; + description + "Missing packets"; + } + leaf pkts-reordered { + type uint64; + description + "Reorder packets"; + } + leaf misordered-droped { + type uint64; + description + "Miss ordered dropped packets"; + } + leaf jitter-buffer-underrun { + type uint64; + description + "Counter for Jitter buffer underrun packets"; + } + leaf malformed-packets { + type uint64; + description + "Counter for malformed packets"; + } + leaf jitter-buffer-overun { + type uint64; + description + "Counter for jitter buffer over run packets"; + } + } + + grouping T1E1-ROOT-ALARM-INFO { + description + "T1E1 Root Alarm Information"; + container los { + description + "Loss of signal"; + uses T1E1-ALARM-DETAIL; + } + container ais { + description + "Alarm indication signal"; + uses T1E1-ALARM-DETAIL; + } + container lof { + description + "Loss of frame"; + uses T1E1-ALARM-DETAIL; + } + } + + grouping T1E1-ALARM-DETAIL { + description + " T1E1 Alarm Detail"; + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf counter { + type uint64; + description + "Alarm counter"; + } + } + + grouping T1E1-ALARM-INFO { + description + "T1E1 Alarm Information"; + container los { + description + "Loss of singnal"; + uses T1E1-ALARM-DETAIL; + } + container ais { + description + "Alarm indication signal"; + uses T1E1-ALARM-DETAIL; + } + container lof { + description + "Loss of frame"; + uses T1E1-ALARM-DETAIL; + } + container rai { + description + "Remote Alarm Indication"; + uses T1E1-ALARM-DETAIL; + } + } + + grouping T1E1-INFO { + description + "t1e1 transponder information"; + container t1e1-alarm-info { + description + "T1E1 Alarm Information"; + uses T1E1-ALARM-INFO; + } + container t1e1-root-alarm-info { + description + "T1E1 Root Alarm Information"; + uses T1E1-ROOT-ALARM-INFO; + } + container cem-stats { + description + "cem packets statatics"; + uses T1E1-CEM-STATS; + } + container prbs { + description + "pseudorandom binary sequence (PRBS) test results"; + uses T1E1-PRBS-INFO; + } + leaf transport-admin-state { + type T1e1tas; + description + "Transport Admin State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf controller-state { + type T1e1-controller-state; + description + "T1E1 controller state: Up, Down or + Administratively Down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf linecoding { + type Linecoding; + description + "Linecoding"; + } + leaf loopback { + type T1e1-ui-loopback; + description + "Loopback"; + } + leaf frame-type { + type T1e1-ui-frame; + description + "Frame Type"; + } + leaf vlan-id { + type uint16; + description + "Vlan ID"; + } + leaf channel-id { + type uint16; + description + "Channel ID"; + } + leaf description { + type string; + description + "Controller description string"; + } + leaf clock-state { + type T1e1-ui-clock-state; + description + "Current state of clock"; + } + leaf clock-type { + type T1e1-ui-clock; + description + "Configured Clock type (LINE,INTERNAL, ACR etc)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper.yang new file mode 100644 index 000000000..24fae9f05 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-controller-t1e1-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-controller-t1e1-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-controller-t1e1-oper"; + prefix controller-t1e1-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-controller-t1e1-oper-sub1 { + revision-date 2022-01-12; + } + + 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 controller-t1e1 package operational data. + + This module contains definitions + for the following management objects: + t1e1-oper: T1E1NV operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-12 { + description + "Added Oper Schema for T1E1"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container t1e1-oper { + config false; + description + "T1E1NV operational data"; + container t1e1-ports { + description + "All T1E1 Port operational data"; + list t1e1-port { + key "name"; + description + "Optics operational data"; + container t1e1-info { + description + "T1E1 operational data"; + uses T1E1-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-act.yang new file mode 100644 index 000000000..75c3f4bd2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-act.yang @@ -0,0 +1,508 @@ +module Cisco-IOS-XR-crypto-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-act"; + prefix crypto-act; + + 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 action package configuration. + + Copyright (c) 2016-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-02 { + description + "Added support to import more than one auth key for a user + 2022-03-20 + Added OpenSSH cert support + 2021-10-19 + Added key-label node to key-generate-dsa"; + semver:module-version "1.3.0"; + } + revision 2020-09-18 { + description + "Change user task for ca-crl-request from cisco-support to crypto"; + semver:module-version "1.2.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-06-18 { + description + "IOS XR 7.0.1 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2016-04-17 { + description + "IOS XR 6.1.1 revision."; + } + + grouping KEY-MODULUS { + description + "Key modulus grouping"; + leaf key-label { + type string; + description + "RSA keypair label"; + } + leaf key-modulus { + type int32 { + range "512..4096"; + } + mandatory true; + description + "Key modulus in the range of 512 to 4096 for your General Purpose Keypair. Choosing a key modulus greater than 512 may take a few minutes"; + } + } + + rpc key-generate-rsa-general-keys { + description + "Generate a general purpose RSA key pair for signing and encryption"; + input { + uses KEY-MODULUS; + } + } + rpc key-generate-rsa-usage-keys { + description + "Generate seperate RSA key pairs for signing and encryption"; + input { + uses KEY-MODULUS; + } + } + rpc key-generate-rsa { + description + "Generate seperate RSA key pairs for signing and encryption"; + input { + uses KEY-MODULUS; + } + } + rpc key-generate-dsa { + description + "Generate DSA keys"; + input { + leaf key-modulus { + type int32 { + range "512|768|1024"; + } + mandatory true; + description + "Key modulus size can be 512, 768 or 1024 bits."; + } + leaf key-label { + type string; + description + "DSA key label"; + } + } + } + rpc key-generate-ecdsa { + description + "Generate a ECDSA key of curve type nistp256 | nistp384 | nistp521"; + input { + leaf key-modulus { + type enumeration { + enum "nistp256" { + value 0; + description + "nistp256"; + } + enum "nistp384" { + value 1; + description + "nistp384"; + } + enum "nistp521" { + value 2; + description + "nistp521"; + } + } + mandatory true; + description + "Key modulus"; + } + leaf key-label { + type string; + description + "ECDSA key label"; + } + } + } + rpc key-generate-ed25519 { + description + "Generate a Ed25519 key-pair"; + input { + leaf key-label { + type string; + description + "Ed25519 key label"; + } + } + } + rpc key-zeroize-rsa { + description + "Remove RSA keys"; + input { + leaf key-label { + type string; + description + "RSA key label"; + } + } + } + rpc key-zeroize-dsa { + description + "Remove DSA keys"; + } + rpc key-zeroize-ecdsa { + description + "Remove ECDSA key of curve type nistp256 | nistp384 | nistp521"; + input { + leaf key-modulus { + type enumeration { + enum "nistp256" { + value 0; + description + "nistp256"; + } + enum "nistp384" { + value 1; + description + "nistp384"; + } + enum "nistp521" { + value 2; + description + "nistp521"; + } + } + mandatory true; + description + "Key modulus"; + } + leaf key-label { + type string; + description + "ECDSA key label"; + } + } + } + rpc key-zeroize-authentication-rsa { + description + "Remove RSA authentication key"; + input { + leaf key-num { + type enumeration { + enum "second" { + value 2; + description + "second key"; + } + enum "third" { + value 4; + description + "third key"; + } + enum "fourth" { + value 8; + description + "fourth key"; + } + } + description + "RSA pubkey number"; + } + } + } + rpc key-zeroize-authentication-rsa-username { + description + "Remove RSA authentication key"; + input { + leaf username { + type string; + mandatory true; + description + "Username"; + } + leaf key-num { + type enumeration { + enum "second" { + value 2; + description + "second key"; + } + enum "third" { + value 4; + description + "third key"; + } + enum "fourth" { + value 8; + description + "fourth key"; + } + } + description + "RSA pubkey number"; + } + } + } + rpc key-zeroize-authentication-rsa-all { + description + "Remove RSA authentication key"; + } + rpc key-zeroize-ed25519 { + description + "Remove ed25519 keys"; + input { + leaf key-label { + type string; + description + "Ed25519 key label"; + } + } + } + rpc key-import-authentication-rsa { + description + "Remove RSA authentication key"; + input { + leaf path { + type string; + mandatory true; + description + "Path to RSA pubkey file"; + } + leaf key-num { + type enumeration { + enum "second" { + value 2; + description + "second key"; + } + enum "third" { + value 4; + description + "third key"; + } + enum "fourth" { + value 8; + description + "fourth key"; + } + } + description + "RSA pubkey number"; + } + } + } + rpc key-import-authentication-rsa-username { + description + "RSA authentication key for user"; + input { + leaf path { + type string; + mandatory true; + description + "Path to RSA pubkey file"; + } + leaf username { + type string; + mandatory true; + description + "Username"; + } + leaf key-num { + type enumeration { + enum "second" { + value 2; + description + "second key"; + } + enum "third" { + value 4; + description + "third key"; + } + enum "fourth" { + value 8; + description + "fourth key"; + } + } + description + "RSA pubkey number"; + } + } + } + rpc ca-authenticate { + description + "Get the certification authority certificate"; + input { + leaf server-name { + type string; + mandatory true; + description + "CA Server Name"; + } + } + } + rpc ca-enroll { + description + "Request a certificate from a CA"; + input { + leaf server-name { + type string; + mandatory true; + description + "CA Server Name"; + } + } + } + rpc ca-import-certificate { + description + "Import a certificate from a s/tftp server or the terminal"; + input { + leaf server-name { + type string; + mandatory true; + description + "CA Server Name"; + } + } + } + rpc ca-cancel-enroll { + description + "Cancel enrollment from a CA"; + input { + leaf server-name { + type string; + mandatory true; + description + "CA Server Name"; + } + } + } + rpc ca-crl-request { + description + "Actions on certificate revocation lists"; + input { + leaf uri { + type string; + mandatory true; + description + "CRL Distribution Point in URI format"; + } + } + output { + leaf certificate { + type string; + mandatory true; + description + "Certificate returned"; + } + } + } + rpc ca-trustpool-import-url { + description + "Manual import trustpool certificates from URL"; + input { + leaf url { + type string; + description + "in URL format"; + } + } + } + rpc ca-trustpool-import-url-clean { + description + "Remove downloaded certificates in trustpool"; + input { + leaf url { + type string; + description + "in URL format"; + } + } + } + rpc ca-openssh-authenticate { + description + "Get the OpenSSH certification authority certificate"; + input { + leaf server-name { + type string; + mandatory true; + description + "Certificate Authority Server Name"; + } + leaf path { + type string; + mandatory true; + description + "Path to Certificate"; + } + } + } + rpc ca-openssh-enroll { + description + "Request hostkey from router"; + input { + leaf server-name { + type string; + mandatory true; + description + "Certificate Authority Server Name"; + } + } + } + rpc ca-openssh-import-certificate { + description + "Import certificate from a file"; + input { + leaf server-name { + type string; + mandatory true; + description + "Certificate Authority Server Name"; + } + leaf path { + type string; + mandatory true; + description + "Path to Certificate"; + } + } + } + rpc ca-openssh-revoke { + description + "Add a revoked certificate/key"; + input { + leaf path { + type string; + mandatory true; + description + "Path to Certificate"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-cfg.yang new file mode 100644 index 000000000..744723a68 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-cfg.yang @@ -0,0 +1,755 @@ +module Cisco-IOS-XR-crypto-cepki-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-cepki-cfg"; + prefix crypto-cepki-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 crypto-cepki package configuration. + + This module contains definitions + for the following management objects: + keys: Generate rsa/dsa/ecdsa/ed25519 keys + crypto-ca: Crypto CertificateAuthority + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-07 { + description + "Revision to bring renewal-message-type under trustpoint config + 2022-06-15 + Added tuple support for RSA and DSA keys generated in configuration mode + 2022-03-20 + OpenSSH certificate support. + 2022-03-15 + Change string to bounded string for RSA key label. + 2022-03-10 + Added support to config curl timeout + 2022-01-21 + Revision to bring auto-enroll under trustpoint config"; + semver:module-version "2.0.0"; + } + revision 2021-05-13 { + description + "Configuration to discard certificates having rsa key size less than or equal to 1024"; + semver:module-version "1.3.0"; + } + revision 2021-03-24 { + description + "Allowed configuration of crypto keys enhancement in IOS XR + 2020-12-10 + Fips mode enabled for aarch64 platform + 2020-11-24 + Correct the range for ca lifetime for system-trustpoint. + 2020-09-02 + Yang support ed25519 key added"; + semver:module-version "1.2.0"; + } + revision 2020-07-12 { + description + "Associated task-name added + 2020-05-25 + Yang support missing for message digest + 2020-05-10 + Yang support for all cepki features + 2020-02-05 + Yang support to fetch CRL via Source Interface."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Type-key { + type enumeration { + enum "rsa" { + value 1; + description + "Rsa key"; + } + enum "ecdsanistp256" { + value 2; + description + "ecdsa-nistp256 key"; + } + enum "ecdsanistp384" { + value 4; + description + "ecdsa-nistp384 key"; + } + enum "ecdsanistp521" { + value 8; + description + "ecdsa-nistp521 key"; + } + enum "dsa" { + value 16; + description + "Dsa key"; + } + enum "ed25519" { + value 32; + description + "Ed25519 key"; + } + } + description + "Type key"; + } + + typedef Addr { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "ipv6" { + value 20; + description + "IPv6 address family"; + } + } + description + "Addr"; + } + + typedef Digest { + type enumeration { + enum "md5" { + value 1; + description + "md5 algorithm"; + } + enum "sha1" { + value 2; + description + "sha1 algorithm"; + } + enum "sha256" { + value 3; + description + "sha256 algorithm"; + } + enum "sha384" { + value 4; + description + "sha384 algorithm"; + } + enum "sha512" { + value 5; + description + "sha512 algorithm"; + } + } + description + "Digest"; + } + + typedef Ren-msg { + type enumeration { + enum "pkcsreq" { + value 1; + description + "Use PKCSReq for certificate renewal"; + } + enum "renewalreq" { + value 2; + description + "Use RenewalReq for certificate renewal"; + } + } + description + "Ren msg"; + } + + grouping SFTP { + description + "Common node of trustpoint, system-trustpoint"; + container sftp { + description + "Secure FTP"; + leaf username { + type string; + description + "Secure FTP username"; + } + leaf password { + type xr:Proprietary-password; + description + "SFTP password in cleartext or encrypted form"; + } + } + } + + grouping VRF-TABLE { + description + "Common node of trustpoint, system-trustpoint, + trustpool"; + container vrf-table { + description + "vrf table"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name (max:32 chars)"; + } + } + } + + grouping CRL { + description + "Common node of trustpoint, system-trustpoint, + trustpool"; + container crl { + description + "CRL Parameters"; + leaf optional { + type empty; + description + "Set 'true' if CRL check is optional"; + } + } + } + + grouping QUERY { + description + "Common node of trustpoint, system-trustpoint"; + container query { + description + "Query Parameters"; + leaf url { + type string; + description + "CertificateAuthority Server Query URL"; + } + } + } + + grouping AUTO-ENROLL { + description + "Common node of trustpoint, system-trustpoint"; + leaf auto-enroll { + type uint32 { + range "1..99"; + } + units "percentage"; + description + "Percentage of certificate lifetime after which + renew will be triggered"; + } + } + + grouping RENEWAL-MESSAGE-TYPE { + description + "Common node of trustpoint, system-trustpoint"; + leaf renewal-message-type { + type Ren-msg; + description + "Configure SCEP renewal message type"; + } + } + + grouping ATTRIBUTE { + description + "Common node of trustpoint, system-trustpoint"; + container attribute { + description + "Trustpoint Attributes"; + container ip-address { + description + "Include IP-Address in certificate"; + leaf address { + type inet:ipv4-address-no-zone; + must "not(../no-address)"; + description + "IP address"; + } + leaf no-address { + type empty; + must "not(../address)"; + description + "Do not include IP address"; + } + } + leaf serial-number { + type boolean; + description + "Include serial number in certificate"; + } + leaf subject-name { + type string; + description + "Include subject name in certificate"; + } + } + } + + grouping RSA-KEY-PAIR { + description + "Common node of trustpoint, system-trustpoint, + openssh-trustpoint-name"; + leaf rsa-key-pair { + type string; + description + "RSA key Pair to use for enrolling this + Trustpoint"; + } + } + + grouping DESCRIPTION { + description + "Common node of trustpoint, system-trustpoint, + trustpool"; + leaf description { + type string { + length "1..80"; + } + description + "Description for this trustpoint"; + } + } + + grouping ENROLLMENT { + description + "Common node of trustpoint, system-trustpoint"; + container enrollment { + description + "Certificate Enrollment Parameters"; + container retry { + description + "Enrollment Retry Parameters"; + leaf period { + type uint32 { + range "1..60"; + } + units "minute"; + default "1"; + description + "How long to wait between retry requests to + CertificateAuthority for Certificate"; + } + leaf count { + type uint32 { + range "1..100"; + } + default "10"; + description + "How many times the router should poll + CertificateAuthority for Certificate"; + } + } + leaf url { + type string; + description + "CertificateAuthority Server Enrollment URL"; + } + } + } + + container keys { + description + "Generate rsa/dsa/ecdsa/ed25519 keys"; + container ecdsa-keypair-types { + description + "ECDSA keypair"; + list ecdsa-keypair-type { + key "name"; + description + "ECDSA Keypair curve type"; + container ecdsa-keypair-label { + description + "ECDSA Keypair Label"; + leaf ecdsa-key { + type boolean; + default "false"; + description + "Enables to generate default ecdsa keypair"; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Keypair type"; + } + } + } + container dsa-keypair-table { + description + "DSA keypair"; + container dsa-keypair { + description + "DSA Keypair Label"; + container dsa-key { + description + "Generate DSA keypairs"; + leaf key-modulus { + type uint32 { + range "512..2048"; + } + default "1024"; + description + "DSA key modulus"; + } + leaf key { + type string; + description + "DSA key generated"; + } + } + } + } + container rsa-keypairs { + description + "RSA keypair"; + list rsa-keypair { + key "name"; + description + "RSA Keypair Label"; + container rsa-key { + description + "Generate RSA keypairs"; + leaf key-modulus { + type uint32 { + range "512..4096"; + } + default "2048"; + description + "RSA key modulus"; + } + leaf key-type { + type string; + default "general-keys"; + description + "Type of key to generate + general-keys/usage-keys"; + } + leaf key { + type string; + description + "RSA key generated"; + } + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..127"; + } + description + "Keypair Label"; + } + } + } + container ed25519-keypair-table { + description + "ED25519 keypair"; + container ed25519-keypair { + description + "ED25519 Keypair Label"; + leaf ed25519-key { + type boolean; + default "false"; + description + "Enables to generate default ed25519 keypair"; + } + } + } + } + container crypto-ca { + description + "Crypto CertificateAuthority"; + container fips-mode { + description + "fips mode configuration"; + leaf enable { + type empty; + description + "Fips Mode Enabled"; + } + } + container certificate-authority { + description + "Certification Authority"; + container system-trustpoint { + description + "Trustpoint Name"; + container keypair { + description + "keypair label"; + leaf type-key { + type Type-key; + description + "dsa/ecdsanistp256/ecdsanistp384/ecdsanistp521/rsa/ed25519"; + } + leaf name { + type string; + description + "key-pair label"; + } + } + container ca-keypair { + description + "self-enrollment ca-keypair label"; + leaf type-key { + type Type-key; + description + "dsa/ecdsanistp256/ecdsanistp384/ecdsanistp521/rsa/ed25519"; + } + leaf name { + type string; + description + "key-pair label"; + } + } + container key-usage { + description + "key usage field for the certificate"; + leaf dataencipherment { + type uint32 { + range "0..1"; + } + description + "Key usage field as data-encipherment for + certificate"; + } + leaf digitalsignature { + type uint32 { + range "0..1"; + } + description + "Key usage field as digital-signature for + certificate"; + } + leaf keyagreement { + type uint32 { + range "0..1"; + } + description + "Key usage field as key-agreement for + certificate"; + } + leaf keyencipherment { + type uint32 { + range "0..1"; + } + description + "Key usage field as key-encipherment for + certificate"; + } + leaf nonrepudiation { + type uint32 { + range "0..1"; + } + description + "Key usage field as non-repudiation for + certificate"; + } + } + container key-usage-ca { + description + "key usage field for the CA certificate"; + leaf crlsign { + type uint32 { + range "0..1"; + } + description + "Key usage field as crl-sign for CA + certificate"; + } + leaf digitalsignature { + type uint32 { + range "0..1"; + } + description + "Key usage field as digital-signature for CA + certificate"; + } + leaf keycertsign { + type uint32 { + range "0..1"; + } + description + "Key usage field as key-certsign for CA + certificate"; + } + leaf nonrepudiation { + type uint32 { + range "0..1"; + } + description + "Key usage field as non-repudiation for CA + certificate"; + } + } + leaf subject-name-ca { + type string; + description + "Ca Certificate subject name for self + enrollment"; + } + leaf message-digest { + type Digest; + description + "Certificate message digest self enrollment"; + } + leaf lifetime-ca-cert { + type uint32 { + range "30..5475"; + } + units "day"; + default "365"; + description + "Validity of ca certficate in days"; + } + leaf lifetime-cert { + type uint32 { + range "30..5474"; + } + units "day"; + default "200"; + description + "Validity of leaf certficate in days"; + } + uses SFTP; + uses ATTRIBUTE; + uses RSA-KEY-PAIR; + uses CRL; + uses RENEWAL-MESSAGE-TYPE; + uses ENROLLMENT; + uses VRF-TABLE; + uses QUERY; + uses AUTO-ENROLL; + uses DESCRIPTION; + } + container trustpool { + description + "Trustpool Related Configuration"; + container cabundle { + description + "CA bundle download parameters"; + leaf url { + type string; + description + "CertificateAuthority bundle download + parameters"; + } + } + uses CRL; + uses VRF-TABLE; + uses DESCRIPTION; + } + container trustpoints { + description + "Trustpoint Related Configuration"; + list trustpoint { + key "name"; + description + "Trustpoint Name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Trustpoint Name"; + } + uses SFTP; + uses ATTRIBUTE; + uses RSA-KEY-PAIR; + uses CRL; + uses RENEWAL-MESSAGE-TYPE; + uses ENROLLMENT; + uses VRF-TABLE; + uses QUERY; + uses AUTO-ENROLL; + uses DESCRIPTION; + } + } + container openssh-trustpoint-names { + description + "OpenSSH Trustpoint Related Configuration"; + list openssh-trustpoint-name { + key "tp-name"; + description + "Trustpoint Name"; + leaf tp-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Enter TP name"; + } + uses RSA-KEY-PAIR; + } + } + leaf curl-timeout { + type uint32 { + range "5..50"; + } + units "second"; + description + "Value in seconds for a CURL request to timeout"; + } + leaf rsa1024 { + type empty; + description + "Specify rsa key bit 1024 or lesser size allowed + or not"; + } + } + container http-proxy { + description + "Specify proxy server and port for http request"; + leaf server { + type string; + description + "Http proxy server"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "Http proxy server port"; + } + } + container source-interface { + description + "Specify source interface for http request"; + leaf source-interface { + type xr:Interface-name; + description + "Source interface for CRL"; + } + leaf addr-type { + type Addr; + description + "IPv4 / IPv6"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper-sub1.yang new file mode 100644 index 000000000..b862bfa5f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper-sub1.yang @@ -0,0 +1,178 @@ +submodule Cisco-IOS-XR-crypto-cepki-new-oper-sub1 { + belongs-to Cisco-IOS-XR-crypto-cepki-new-oper { + prefix Cisco-IOS-XR-crypto-cepki-new-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-cepki-new package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-08 { + description + "oper support added for mypub key ECDSA."; + semver:module-version "1.0.0"; + } + revision 2022-05-04 { + description + "oper support added for mypub key DSA and RSA."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Yang2bag-string { + type string; + description + "Yang2bag string"; + } + + grouping CEPKI-MYPUBKEY-DSA { + description + "Crypto key mypubkey DSA info"; + leaf key-label { + type string { + length "0..128"; + } + description + "Crypto key mypubkey DSA key label"; + } + leaf key-type { + type string { + length "0..100"; + } + description + "Crypto key mypubkey DSA key type"; + } + leaf key-size { + type uint32; + description + "Crypto key mypubkey DSA key size mod bits"; + } + leaf key-creation-time { + type uint32; + units "second"; + description + "Key creation timestamp in Epoch seconds"; + } + leaf tam-status { + type Yang2bag-string; + description + "DSA TAM status"; + } + leaf key-data { + type string { + length "0..5000"; + } + description + "DSA key data"; + } + } + + grouping CEPKI-MYPUBKEY-ECDSA { + description + "Crypto key mypubkey ECDSA info"; + leaf key-label { + type string { + length "0..128"; + } + description + "Crypto key mypubkey ECDSA key label"; + } + leaf key-type { + type string { + length "0..100"; + } + description + "Crypto key mypubkey ECDSA key type"; + } + leaf degree { + type uint32; + description + "Crypto key mypubkey ECDSA key size mod bits"; + } + leaf key-creation-time { + type uint32; + units "second"; + description + "Key creation timestamp in Epoch seconds"; + } + leaf tam-status { + type Yang2bag-string; + description + "DSA TAM status"; + } + leaf key-data { + type string { + length "0..5000"; + } + description + "ECDSA key data"; + } + } + + grouping CEPKI-MYPUBKEY-RSA { + description + "Crypto key mypubkey RSA info"; + leaf key-label { + type string { + length "0..128"; + } + description + "Crypto key mypubkey RSA key label"; + } + leaf key-type { + type string { + length "0..100"; + } + description + "Crypto key mypubkey RSA key type"; + } + leaf key-size { + type uint32; + description + "Crypto key mypubkey RSA key size mod bits"; + } + leaf key-creation-time { + type uint32; + units "second"; + description + "Key creation timestamp in Epoch seconds"; + } + leaf tam-status { + type Yang2bag-string; + description + "DSA TAM status"; + } + leaf key-data { + type string { + length "0..5000"; + } + description + "RSA key data"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper.yang new file mode 100644 index 000000000..47de2355c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-new-oper.yang @@ -0,0 +1,145 @@ +module Cisco-IOS-XR-crypto-cepki-new-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-cepki-new-oper"; + prefix crypto-cepki-new-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-crypto-cepki-new-oper-sub1 { + revision-date 2022-06-08; + } + + 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 crypto-cepki-new package operational data. + + This module contains definitions + for the following management objects: + crypto-cepki: Public Key Infrastructure Related Information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-08 { + description + "oper support added for mypub key ECDSA."; + semver:module-version "1.0.0"; + } + revision 2022-05-04 { + description + "oper support added for mypub key DSA and RSA."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container crypto-cepki { + config false; + description + "Public Key Infrastructure Related Information"; + container mypubkey { + description + "Public Key Infrastructure Related Information"; + container rsa-keys { + description + "RSA Keys"; + list rsa-key { + key "rsa-key-name"; + description + "RSA Key Related Information"; + leaf rsa-key-name { + type xr:Cisco-ios-xr-string; + description + "RSA key name"; + } + uses CEPKI-MYPUBKEY-RSA; + } + } + container ecdsa { + description + "Public ECDSA Key Infrastructure Related + Information"; + container nistp384-keys { + description + "ECDSA NIST P-384 Keys"; + list nistp384-key { + key "key-name"; + description + "ECDSA NIST P-384 Key Information"; + leaf key-name { + type xr:Cisco-ios-xr-string; + description + "ECDSA NIST P-384 key name"; + } + uses CEPKI-MYPUBKEY-ECDSA; + } + } + container nistp521-keys { + description + "ECDSA NIST P-521 Keys"; + list nistp521-key { + key "key-name"; + description + "ECDSA NIST P-521 Key Information"; + leaf key-name { + type xr:Cisco-ios-xr-string; + description + "ECDSA NIST P-521 key name"; + } + uses CEPKI-MYPUBKEY-ECDSA; + } + } + container nistp256-keys { + description + "ECDSA NIST P-256 Keys"; + list nistp256-key { + key "key-name"; + description + "ECDSA NIST P-256 Key Information"; + leaf key-name { + type xr:Cisco-ios-xr-string; + description + "ECDSA NIST P-256 key name"; + } + uses CEPKI-MYPUBKEY-ECDSA; + } + } + } + container dsa-keys { + description + "DSA Keys"; + list dsa-key { + key "dsa-key-name"; + description + "DSA Key Related Information"; + leaf dsa-key-name { + type xr:Cisco-ios-xr-string; + description + "DSA key name"; + } + uses CEPKI-MYPUBKEY-DSA; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-oper.yang new file mode 100644 index 000000000..c743229cc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-cepki-oper.yang @@ -0,0 +1,289 @@ +module Cisco-IOS-XR-crypto-cepki-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-cepki-oper"; + prefix crypto-cepki-oper; + + 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 crypto-cepki package operational data. + + This module contains definitions + for the following management objects: + crypto-certificate-authority: Public Key Infrastructure + Related Information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-22 { + description + "added multiple rsa authentication keys support. + 2022-04-06 + Added serial number and fingerprint for ca. + 2022-03-20 + OpenSSH certificate support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CERTIFICATE-EXPIRES-ON { + description + "Common node of certificate-authority-certificate, + router-certificate, router-signature-certificate, + router-encryption-certificate"; + leaf certificate-expires-on { + type uint64; + units "second"; + description + "Valid before date of the Certificate, in seconds + since 00:00:00 UTC, January 1, 1970"; + } + } + + grouping SERIAL-NUM { + description + "Common node of certificate-authority-certificate, + router-certificate, router-signature-certificate, + router-encryption-certificate"; + leaf serial-num { + type string; + description + "Serial number of the Certificate"; + } + } + + grouping ISSUER { + description + "Common node of certificate-authority-certificate, + router-certificate, router-signature-certificate, + router-encryption-certificate"; + leaf issuer { + type string; + description + "Issuer Name of the Certificate"; + } + } + + grouping FINGER-PRINT { + description + "Common node of certificate-authority-certificate, + router-certificate, router-signature-certificate, + router-encryption-certificate"; + leaf finger-print { + type string; + description + "SHA1 Fingerprint of the Certificate"; + } + } + + grouping CRL-DISTRIBUTION-POINT-TABLE { + description + "Common node of certificate-authority-certificate, + router-certificate, router-signature-certificate, + router-encryption-certificate"; + container crl-distribution-points { + description + "Router Certificates CRLDistributionPoint Table"; + list crl-distribution-point { + key "index"; + description + "Certificate CRLDistributionPoint Instance"; + leaf index { + type uint32; + description + "CDP Entry Index"; + } + leaf cdp-content { + type string; + mandatory true; + description + "CRLDistributionPoint Content"; + } + } + } + } + + grouping CERTIFICATE-VALID-FROM { + description + "Common node of certificate-authority-certificate, + router-certificate, router-signature-certificate, + router-encryption-certificate"; + leaf certificate-valid-from { + type uint64; + units "second"; + description + "Valid from date of the Certificate, in seconds + since 00:00:00 UTC, January 1, 1970"; + } + } + + grouping SUBJECT { + description + "Common node of certificate-authority-certificate, + router-certificate, router-signature-certificate, + router-encryption-certificate"; + leaf subject { + type string; + description + "Subject Name of the Certificate"; + } + } + + container crypto-certificate-authority { + config false; + description + "Public Key Infrastructure Related Information"; + container trustpoints { + description + "CA Trustpoint Table Information"; + list trustpoint { + key "name"; + description + "Certificate Information for a particular + Trustpoint"; + container router-certificate { + description + "Router Certificate Attributes"; + uses SUBJECT; + uses CERTIFICATE-VALID-FROM; + uses CRL-DISTRIBUTION-POINT-TABLE; + uses CERTIFICATE-EXPIRES-ON; + uses SERIAL-NUM; + uses FINGER-PRINT; + uses ISSUER; + } + container router-encryption-certificate { + description + "Router Encryption Certificate Attributes"; + uses SUBJECT; + uses CERTIFICATE-VALID-FROM; + uses CRL-DISTRIBUTION-POINT-TABLE; + uses CERTIFICATE-EXPIRES-ON; + uses SERIAL-NUM; + uses FINGER-PRINT; + uses ISSUER; + } + container router-signature-certificate { + description + "Router Signature Certificate Attributes"; + uses SUBJECT; + uses CERTIFICATE-VALID-FROM; + uses CRL-DISTRIBUTION-POINT-TABLE; + uses CERTIFICATE-EXPIRES-ON; + uses SERIAL-NUM; + uses FINGER-PRINT; + uses ISSUER; + } + container certificate-authority-certificate { + description + "Certificate Authority Certificate Attributes"; + uses SUBJECT; + uses CERTIFICATE-VALID-FROM; + uses CRL-DISTRIBUTION-POINT-TABLE; + uses CERTIFICATE-EXPIRES-ON; + uses SERIAL-NUM; + uses FINGER-PRINT; + uses ISSUER; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "The Trustpoint to query"; + } + } + } + container openssh { + description + "Certificate Authority OpenSSH Trustpoint Table + Information"; + container openssh-trustpoints { + description + "Certificate Authority OpenSSH Trustpoint Table + Information"; + list openssh-trustpoint { + key "name"; + description + "Certificate Information for a particular + OpenSSH Trustpoint"; + container openssh-router-certificate { + description + "OpenSSH Router Certificate Attributes"; + leaf principal { + type string; + description + "Principal name for OpenSSH Router + Certificate "; + } + leaf pub-key-type { + type string; + description + "Pubkey type for OpenSSH Router Certificate"; + } + leaf expires-on { + type uint64; + description + "Valid before date of the Certificate"; + } + leaf comment { + type string; + description + "Comment for OpenSSH Router Certificate"; + } + leaf serial { + type uint64; + description + "Serial no. of OpenSSH Router Certificate"; + } + leaf key-id { + type string; + description + "Key Id of OpenSSH Router Certificate "; + } + leaf valid-from { + type uint64; + description + "Valid from date of the Certificate"; + } + } + leaf openssh-certificate-authority-certificate { + type string; + description + "OpenSSH Certificate Authority Certificate + Attributes"; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "OpenSSH Trustpoint name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-cfg.yang new file mode 100644 index 000000000..f49f00cd1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-cfg.yang @@ -0,0 +1,330 @@ +module Cisco-IOS-XR-crypto-macsec-mka-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-macsec-mka-cfg"; + prefix crypto-macsec-mka-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 crypto-macsec-mka package configuration. + + This module contains definitions + for the following management objects: + macsec: MACSec MKA + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-20 { + description + "Changed the sysdb path for ppk submode in policy"; + semver:module-version "1.3.0"; + } + revision 2020-04-08 { + description + "MKA Fallback + 2019-05-27 + MKA ISSU"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "MKA ISSU"; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Macsec-mka-window-size { + type uint32 { + range "0..1024"; + } + description + "Macsec mka window size"; + } + + typedef Macsec-mka-security-policy { + type enumeration { + enum "should-secure" { + value 0; + description + "should secure"; + } + enum "must-secure" { + value 1; + description + "must secure"; + } + } + description + "Macsec mka security policy"; + } + + typedef Macsec-mka-key-server-priority { + type uint32 { + range "0..255"; + } + description + "Macsec mka key server priority"; + } + + typedef Macsec-mka-policy-exception { + type enumeration { + enum "lacp-in-clear" { + value 1; + description + "lacp in clear"; + } + } + description + "Macsec mka policy exception"; + } + + typedef Macsec-mka-cipher-suite { + type enumeration { + enum "gcm-aes-128" { + value 1; + description + "GCM AES 128"; + } + enum "gcm-aes-256" { + value 2; + description + "GCM AES 256"; + } + enum "gcm-aes-xpn-128" { + value 3; + description + "GCM AES XPN 128"; + } + enum "gcm-aes-xpn-256" { + value 4; + description + "GCM AES XPN 256"; + } + } + description + "Macsec mka cipher suite"; + } + + typedef Macsec-mka-conf-offset { + type enumeration { + enum "conf-off-set-0" { + value 0; + description + "CONF OFFSET 0"; + } + enum "conf-off-set-30" { + value 30; + description + "CONF OFFSET 30"; + } + enum "conf-off-set-50" { + value 50; + description + "CONF OFFSET 50"; + } + } + description + "Macsec mka conf offset"; + } + + typedef Macsec-mka-sak-rekey-interval { + type uint32 { + range "1..43200"; + } + description + "Macsec mka sak rekey interval"; + } + + typedef Macsec-mka-sak-rekey-interval-sec { + type uint32 { + range "60..2592000"; + } + description + "Macsec mka sak rekey interval sec"; + } + + typedef Macsec-mka-vlan-tags-in-clear { + type uint32 { + range "1..2"; + } + description + "Macsec mka vlan tags in clear"; + } + + container macsec { + description + "MACSec MKA"; + container policy-names { + description + "MACSec Policy"; + list policy-name { + key "name"; + description + "MACsec Policy Name"; + container allow { + description + "To allow certains data in clear text"; + leaf lacp-in-clear { + type empty; + description + "To allow lacp packets in clear text"; + } + leaf pause-frame-in-clear { + type empty; + description + "To allow pause frames in clear text"; + } + } + container suspend-for { + description + "suspendFor timer value for mka suspension"; + leaf disable { + type empty; + description + "Disable suspend for in issu"; + } + } + container ppk { + description + "PPK mode related policy"; + leaf ppk-sub { + type empty; + description + "This indicates existance of PPK"; + } + leaf sks-profile { + type xr:Cisco-ios-xr-string { + length "1..253"; + } + description + "SKS Profile Name"; + } + } + leaf suspend-on-request-disable { + type empty; + description + "Disable suspend on request in issu"; + } + leaf delay-protection { + type empty; + description + "Enables data delay protection"; + } + leaf security-policy { + type Macsec-mka-security-policy; + description + "Security-Policy of Policy"; + } + leaf created { + type empty; + description + "This indicates the existence of Policy"; + } + leaf key-server-priority { + type Macsec-mka-key-server-priority; + description + "Key-Server-Priority of Policy"; + } + leaf conf-offset { + type Macsec-mka-conf-offset; + description + "Conf-Offset of Policy"; + } + leaf sak-rekey-interval { + type Macsec-mka-sak-rekey-interval; + units "minute"; + description + "DEPRECATED-Interval(in minutes) after which + key-server generates new SAK for a Secured + Session, Default: OFF, recommended to use + seconds option"; + } + leaf policy-exception { + type Macsec-mka-policy-exception; + description + "Macsec policy exception for packets to be in + clear"; + } + leaf window-size { + type Macsec-mka-window-size; + description + "Window-Size of Policy"; + } + leaf enable-legacy-fallback { + type empty; + description + "Enable legacy fallback functionality"; + } + leaf cipher-suite { + type Macsec-mka-cipher-suite; + description + "Cipher-suite of Policy"; + } + leaf include-icv-indicator { + type empty; + description + "Enables Include ICV Indicator paramset in + MKPDU"; + } + leaf use-eapol-pae-in-icv { + type empty; + description + "Enable use eapol pae address in icv"; + } + leaf sak-rekey-interval-sec { + type Macsec-mka-sak-rekey-interval-sec; + units "second"; + description + "Interval(in seconds) after which key-server + generates new SAK for a Secured Session, + Default: OFF"; + } + leaf vlan-tags-in-clear { + type Macsec-mka-vlan-tags-in-clear; + description + "VLAN-Tags-In-Clear of Policy"; + } + leaf enable-legacy-sak-write { + type empty; + description + "To interop with legacy ncs5500 coherent + systems"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "Name of the Policy of maximum length 16"; + } + } + } + leaf shutdown { + type empty; + description + "Disable macsec on all data ports(system wide), + has no impact on macsec configs"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-if-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-if-cfg.yang new file mode 100644 index 000000000..49e6b41e3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-if-cfg.yang @@ -0,0 +1,134 @@ +module Cisco-IOS-XR-crypto-macsec-mka-if-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-macsec-mka-if-cfg"; + prefix crypto-macsec-mka-if-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 crypto-macsec-mka-if package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eap-list { + type string { + pattern "(eap)"; + } + description + "eap: eap config"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container macsec { + description + "MACSec service for an interface"; + container macsec-service { + presence "Indicates a macsec-service node is configured."; + description + "macsec-service configuration on interface"; + leaf decrypt-port { + type xr:Interface-name; + mandatory true; + description + "macsec service decryption port"; + } + leaf key-chain { + type string { + length "1..32"; + } + mandatory true; + description + "name of keychain"; + } + leaf policy { + type string { + length "1..16"; + } + description + "name of policy"; + } + } + container eap { + description + "Enabling MACSec eap Configuration on Interface"; + leaf eap-config { + type Eap-list; + description + "Eap config"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "Name of Policy"; + } + } + container psk-key-chain { + presence "Indicates a psk-key-chain node is configured."; + description + "MACSec MKA Configuration on Interface"; + leaf key-chain-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "Name of KeyChainName"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "Name of Policy"; + } + leaf fallback-key-chain { + type string { + length "1..32"; + } + description + "name of fallback keychain"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper-sub1.yang new file mode 100644 index 000000000..0a15644e8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper-sub1.yang @@ -0,0 +1,1299 @@ +submodule Cisco-IOS-XR-crypto-macsec-mka-oper-sub1 { + belongs-to Cisco-IOS-XR-crypto-macsec-mka-oper { + prefix Cisco-IOS-XR-crypto-macsec-mka-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-macsec-mka package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-28 { + description + "Added global MKPDU validation error stat + 2022-02-08 + Added Standby Container for MKA operational info"; + semver:module-version "2.1.0"; + } + revision 2021-05-13 { + description + "Changed the latest SAK data field to last SAK + 2021-05-12 + Removed unwanted fields in CA bag for stats"; + semver:module-version "2.0.0"; + } + revision 2021-04-15 { + description + "Modified to display session stats + 2021-02-17 + Modified to display port power status + 2021-01-19 + show_mka.bag dormant entry remove + 2020-08-24 + MKA PPK"; + semver:module-version "2.0.0"; + } + revision 2019-05-27 { + description + "MKA ISSU"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "MKA ISSU"; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Macsec-cipher-suite { + type enumeration { + enum "cipher-suite-none" { + value 0; + description + "Invalid MACsec cipher"; + } + enum "cipher-suite-gcm-aes-128" { + value 1; + description + "128 bit GCM_AES MACsec cipher suite"; + } + enum "cipher-suite-gcm-aes-256" { + value 2; + description + "256 bit GCM_AES MACsec cipher suite"; + } + enum "cipher-suite-gcm-aes-128-xpn" { + value 3; + description + "128 bit GCM_AES MACsec XPN cipher suite"; + } + enum "cipher-suite-gcm-aes-256-xpn" { + value 4; + description + "256 bit GCM_AES MACsec XPN cipher suite"; + } + } + description + "Macsec cipher suite"; + } + + typedef Mka-authentication-mode { + type enumeration { + enum "auth-mode-invalid" { + value 0; + description + "Invalid authentication mode"; + } + enum "auth-mode-psk" { + value 1; + description + "Preshared Key"; + } + enum "auth-mode-eap" { + value 2; + description + "EAP"; + } + } + description + "Mka authentication mode"; + } + + typedef Macsec-service-port { + type enumeration { + enum "macsec-service-port-none" { + value 0; + description + "Macsec Service not enabled"; + } + enum "macsec-service-port-encryption" { + value 1; + description + "Macsec Service Encryption Port"; + } + enum "macsec-service-port-decryption" { + value 2; + description + "Macsec Service Decryption Port"; + } + } + description + "Macsec service port"; + } + + grouping SUSPEND-PEER-DATA { + description + "SUSPEND PEER DATA"; + leaf rx-sci { + type uint64; + description + "RX SCI"; + } + leaf rx-ssci { + type uint32; + description + "RX SSCI"; + } + } + + grouping PEER-DATA { + description + "PEER DATA"; + leaf mi { + type string; + description + "Member ID"; + } + leaf sci { + type string; + description + "Rx SCI"; + } + leaf mn { + type uint32; + description + "Message Number"; + } + leaf priority { + type uint32; + description + "KS Priority"; + } + leaf ssci { + type uint32; + description + "Peer SSCI"; + } + } + + grouping CA-DATA { + description + "CA DATA"; + container peers-status { + description + "Peers Status"; + uses PEERS-STATUS-DATA; + } + leaf is-key-server { + type boolean; + description + "Is Key Server"; + } + leaf status { + type string; + description + "Session Status [Secured/Not Secured]"; + } + leaf num-live-peers { + type uint32; + description + "Number of Live Peers"; + } + leaf first-ca { + type boolean; + description + "Is First CA"; + } + leaf peer-sci { + type string; + description + "Peer SCI(MAC)"; + } + leaf num-live-peers-responded { + type uint32; + description + "Number of Live Peers responded"; + } + leaf ckn { + type string; + description + "CKN"; + } + leaf my-mi { + type string; + description + "Member Identifier"; + } + leaf my-mn { + type uint32; + description + "Message Number"; + } + leaf authenticator { + type boolean; + description + "authenticator"; + } + leaf num-suspend-request { + type uint32; + description + "Number of Suspend Request"; + } + leaf status-description { + type string; + description + "Status Description"; + } + leaf authentication-mode { + type string; + description + "CA Authentication Mode + :PRIMARY-PSK/FALLBACK-PSK/EAP"; + } + leaf key-chain { + type string; + description + "Key Chain name"; + } + list live-peer { + description + "Live Peer List"; + uses PEER-DATA; + } + list potential-peer { + description + "Potential Peer List"; + uses PEER-DATA; + } + list suspend-peer { + description + "Suspend Peer List"; + uses SUSPEND-PEER-DATA; + } + } + + grouping PEER-STATUS-DATA-INTERNAL { + description + "PEER STATUS DATA INTERNAL"; + leaf mi { + type string { + length "0..25"; + } + description + "Member ID"; + } + leaf icv-status { + type string { + length "0..10"; + } + description + "ICV Status"; + } + leaf icv-check-timestamp { + type string { + length "0..128"; + } + description + "ICV Check Timestamp"; + } + } + + grouping PEER-STATUS-DATA { + description + "PEER STATUS DATA"; + container peer-data { + description + "Peer Status Data"; + uses PEER-STATUS-DATA-INTERNAL; + } + leaf sci { + type string { + length "0..17"; + } + description + "Rx SCI"; + } + } + + grouping PEERS-STATUS-DATA { + description + "PEERS STATUS DATA"; + leaf tx-mkpdu-timestamp { + type string { + length "0..128"; + } + description + "Tx MKPDU Timestamp"; + } + leaf peer-count { + type uint32; + description + "Peer Count"; + } + list peer { + description + "Peer List"; + uses PEER-STATUS-DATA; + } + } + + grouping FALLBACK-KEEPALIVE-DATA { + description + "FALLBACK KEEPALIVE DATA"; + container peers-status { + description + "Peers Status"; + uses PEERS-STATUS-DATA; + } + leaf ckn { + type string { + length "0..65"; + } + description + "CKN"; + } + leaf mi { + type string { + length "0..25"; + } + description + "Member Identifier"; + } + leaf mn { + type uint32; + description + "Message Number"; + } + } + + grouping VP-DATA { + description + "VP DATA"; + leaf my-sci { + type string; + description + "Local SCI(MAC)"; + } + leaf virtual-port-id { + type uint32; + description + "Virtual Port ID"; + } + leaf latest-rx { + type boolean; + description + "Latest Rx status"; + } + leaf latest-tx { + type boolean; + description + "Latest Tx status"; + } + leaf latest-an { + type uint32; + description + "Latest SAK AN"; + } + leaf latest-ki { + type string; + description + "Latest SAK KI"; + } + leaf latest-kn { + type uint32; + description + "Latest SAK KN"; + } + leaf old-rx { + type boolean; + description + "Old Rx status"; + } + leaf old-tx { + type boolean; + description + "Old Tx status"; + } + leaf old-an { + type uint32; + description + "Old SAK AN"; + } + leaf old-ki { + type string; + description + "Old SAK KI"; + } + leaf old-kn { + type uint32; + description + "Old SAK KN"; + } + leaf wait-time { + type uint32; + description + "SAK Transmit Wait Time"; + } + leaf retire-time { + type uint32; + description + "SAK Retire time"; + } + leaf macsec-cipher-suite { + type Macsec-cipher-suite; + description + "SAK Cipher Suite"; + } + leaf ssci { + type uint32; + description + "SSCI of the Local TxSC"; + } + leaf time-to-sak-rekey { + type string; + description + "Next SAK Rekey time in Sec"; + } + leaf time-to-exit-suspension { + type string; + description + "Time to exit suspension"; + } + leaf sak-gen-mode { + type string; + description + "SAK gen mode"; + } + list fallback-keepalive { + description + "Fallback Keepalive"; + uses FALLBACK-KEEPALIVE-DATA; + } + } + + grouping MKA-VLAN-TAG { + description + "MKA VLAN TAG"; + leaf ether-type { + type uint16; + description + "EtherType"; + } + leaf priority { + type uint8; + description + "Priority"; + } + leaf cfi { + type uint8; + description + "Cannonical Format Identifier"; + } + leaf vlan-id { + type uint16; + description + "Vlan Id"; + } + } + + grouping MKA-SESSION-SUMMARY { + description + "MKA SESSION SUMMARY"; + container outer-tag { + description + "VLAN Outer TAG"; + uses MKA-VLAN-TAG; + } + container inner-tag { + description + "VLAN Inner TAG"; + uses MKA-VLAN-TAG; + } + leaf interface-name { + type string; + description + "macsec configured interface"; + } + leaf inherited-policy { + type boolean; + description + "Is Inherited Policy"; + } + leaf policy { + type string; + description + "Policy Name"; + } + leaf priority { + type uint32; + description + "Key Server Priority"; + } + leaf my-mac { + type string; + description + "My MAC"; + } + leaf delay-protection { + type boolean; + description + "Delay Protect"; + } + leaf replay-protect { + type boolean; + description + "Replay Protect"; + } + leaf window-size { + type uint32; + description + "Replay Window Size"; + } + leaf include-icv-indicator { + type boolean; + description + "IncludeICVIndicator"; + } + leaf confidentiality-offset { + type uint32; + description + "Confidentiality Offset"; + } + leaf algo-agility { + type uint32; + description + "Alogorithm Agility"; + } + leaf capability { + type uint32; + description + "MACSec Capability"; + } + leaf mka-cipher-suite { + type string; + description + "MKA Cipher Suite"; + } + leaf configured-mac-sec-cipher-suite { + type string; + description + "configured cipher suite"; + } + leaf mac-sec-desired { + type boolean; + description + "MACSec Desired"; + } + } + + grouping MKA-SESSION { + description + "MKA SESSION"; + container session-summary { + description + "Session summary"; + uses MKA-SESSION-SUMMARY; + } + container vp { + description + "Virtual Pointer Info"; + uses VP-DATA; + } + list ca { + description + "CA List for a Session"; + uses CA-DATA; + } + } + + grouping MKA-INTERFACE-SUMMARY { + description + "MKA INTERFACE SUMMARY"; + leaf interface-name { + type string; + description + "macsec configured interface"; + } + leaf short-name { + type string; + description + "Short Name String"; + } + leaf key-chain { + type string; + description + "Name of the Key chain"; + } + leaf policy { + type string; + description + "Policy name"; + } + leaf macsec-svc-port { + type boolean; + description + "Is macsec-service port or not"; + } + leaf macsec-svc-port-type { + type Macsec-service-port; + description + "Macsec-service Encryption / Decryption port"; + } + leaf svcport-short-name { + type string; + description + "Macsec Service paired port Short Name String"; + } + leaf mka-mode { + type Mka-authentication-mode; + description + "MKA authentication mode"; + } + leaf fallback-keychain { + type string; + description + "fallback Keychain name"; + } + leaf macsec-shutdown { + type boolean; + description + "MacsecShutdown"; + } + } + + grouping MKA-INTERFACE-INFO { + description + "MKA INTERFACE INFO"; + container interface-summary { + description + "MKA Interface Summary"; + uses MKA-INTERFACE-SUMMARY; + } + } + + grouping MKA-CA-PPK-FAILURE { + description + "MKA CA PPK FAILURE"; + leaf ppk-id-null-recv { + type uint32; + description + "PPK ID NULL recv"; + } + leaf ppk-id-mismatch { + type uint32; + description + "PPK ID mismatch"; + } + leaf ppk-req-timeout { + type uint32; + description + "PPK Request timeout"; + } + leaf ppk-tuple-fail { + type uint32; + description + "PPK Tuple Fail"; + } + leaf ppk-retrieval-fail { + type uint32; + description + "PPK retrieval fail"; + } + leaf ppk-retry-fail { + type uint32; + description + "PPK retry fail"; + } + leaf ppk-tid-mismatch { + type uint32; + description + "PPK TID mismatch"; + } + leaf ppk-aipc-conn-down { + type uint32; + description + "PPK Aipc conn down"; + } + } + + grouping MKPDU-CA-RX-FAIL { + description + "MKPDU CA RX FAIL"; + leaf rx-icv-validation-fail { + type uint32; + description + "Rx ICV validation fail"; + } + leaf rx-pkt-validation-fail { + type uint32; + description + "Rx MKPDU packet validation fail"; + } + leaf rx-bad-peer-mn { + type uint32; + description + "Rx Bad Peer MN"; + } + leaf rx-non-recent-peerlist-mn { + type uint32; + description + "Rx non-recent peerlist MN"; + } + leaf rx-sak-use-kn-mismatch { + type uint32; + description + "Rx SAK USE KN mismatch"; + } + leaf rx-sak-use-rx-not-set { + type uint32; + description + "Rx SAK USE rx not set"; + } + leaf rx-sak-use-key-mi-mismatch { + type uint32; + description + "Rx SAK USE Key MI mismatch"; + } + leaf rx-sak-use-an-not-in-use { + type uint32; + description + "Rx SAK USE AN not in use"; + } + leaf rx-sak-use-ks-rx-tx-not-set { + type uint32; + description + "Rx SAK USE KS RX/TX not set"; + } + leaf ppk-id-nak { + type uint32; + description + "PPK ID NAK"; + } + leaf ppk-id-not-found { + type uint32; + description + "PPK id not found"; + } + } + + grouping MKPDU-CA-RX { + description + "MKPDU CA RX"; + leaf mkpdu-received { + type uint32; + description + "MKPDU Received"; + } + leaf dist-sak { + type uint32; + description + "Distributed SAK"; + } + leaf dist-ppk { + type uint32; + description + "Distributed PPK"; + } + leaf dist-cak { + type uint32; + description + "Distributed CAK"; + } + leaf ppk-capable { + type uint32; + description + "PPK Cabable"; + } + } + + grouping MKPDU-CA-TX { + description + "MKPDU CA TX"; + leaf mkpdu-transmitted { + type uint32; + description + "MKPDU Transmitted"; + } + leaf dist-sak { + type uint32; + description + "Distributed SAK"; + } + leaf dist-ppk { + type uint32; + description + "Distributed PPK"; + } + leaf dist-cak { + type uint32; + description + "Distributed CAK"; + } + leaf ppk-capable { + type uint32; + description + "PPK Cabable"; + } + } + + grouping MKA-MKPDU-CA-STATS { + description + "MKA MKPDU CA STATS"; + container ca-tx { + description + "MKPDU CA tx stats"; + uses MKPDU-CA-TX; + } + container ca-rx { + description + "MKPDU CA rx stats"; + uses MKPDU-CA-RX; + } + container ca-rx-fail { + description + "CA Rx Fail"; + uses MKPDU-CA-RX-FAIL; + } + } + + grouping MKA-KEY-DERIVATION-STATS { + description + "MKA KEY DERIVATION STATS"; + leaf sak-generated { + type uint32; + description + "SAK Generated"; + } + leaf sak-rekeyed { + type uint32; + description + "SAK Rekeyed"; + } + leaf sak-received { + type uint32; + description + "SAK Received"; + } + leaf sak-resp-rvcd { + type uint32; + description + "SAK Respone Received"; + } + leaf ppk-tuple-generated { + type uint32; + description + "PPK Tuple Generated"; + } + leaf ppk-retrieved { + type uint32; + description + "PPK Retrieved"; + } + leaf pairwise-cak-derived { + type uint32; + description + "Pairwise CAK derived"; + } + leaf pairwise-cak-rekey { + type uint32; + description + "Pairwise CAK rekey"; + } + } + + grouping MKA-INTF-CA-STATS { + description + "MKA INTF CA STATS"; + container key-derivation-stats { + description + "MKA Key derivation stats"; + uses MKA-KEY-DERIVATION-STATS; + } + container mkpdu-stats { + description + "MKA MKPDU CA stats"; + uses MKA-MKPDU-CA-STATS; + } + container ppk-failure { + description + "CA PPK Failure"; + uses MKA-CA-PPK-FAILURE; + } + leaf ckn { + type string; + description + "CKN"; + } + leaf ca-type { + type string; + description + "CA type"; + } + } + + grouping MKA-MACSEC-FAILURE { + description + "MKA MACSEC FAILURE"; + leaf rx-sc-creation { + type uint32; + description + "Rx SC creation failure"; + } + leaf tx-sc-creation { + type uint32; + description + "Tx SC creation failure"; + } + leaf rx-sa-install { + type uint32; + description + "Rx SA install failure"; + } + leaf tx-sa-install { + type uint32; + description + "Tx SA install failure"; + } + } + + grouping MKA-IDB-PPK-FAILURE { + description + "MKA IDB PPK FAILURE"; + leaf ppk-id-null-recv { + type uint32; + description + "PPK ID NULL recv"; + } + leaf ppk-id-mismatch { + type uint32; + description + "PPK ID mismatch"; + } + leaf ppk-req-timeout { + type uint32; + description + "PPK Request timeout"; + } + leaf ppk-tuple-fail { + type uint32; + description + "PPK Tuple Fail"; + } + leaf ppk-retrieval-fail { + type uint32; + description + "PPK retrieval fail"; + } + leaf ppk-retry-fail { + type uint32; + description + "PPK retry fail"; + } + leaf ppk-tid-mismatch { + type uint32; + description + "PPK TID mismatch"; + } + leaf ppk-hash-key-gen { + type uint32; + description + "PPK Hash key generation fail"; + } + leaf ppk-id-encr-wrap { + type uint32; + description + "PPK Id encryption/Wrap fail"; + } + leaf ppk-id-decr-unwrap { + type uint32; + description + "PPK id decryption/unwrap fail"; + } + leaf ppk-aipc-conn-down { + type uint32; + description + "PPK Aipc conn down"; + } + } + + grouping MKA-SAK-FAILURE { + description + "MKA SAK FAILURE"; + leaf sak-gen { + type uint32; + description + "SAK gen failure"; + } + leaf hash-key-gen { + type uint32; + description + "Hash key gen failure"; + } + leaf sak-encr-wrap { + type uint32; + description + "SAK Encryption/Wrap Failure"; + } + leaf sak-decr-unwrap { + type uint32; + description + "SAK Decryption/Unwrap Failure"; + } + } + + grouping MKA-IDB-FAILURE-STATS { + description + "MKA IDB FAILURE STATS"; + container sak-failure { + description + "MKA IDB SAK Failure"; + uses MKA-SAK-FAILURE; + } + container ppk-failure { + description + "MKA IDB PPK Failure"; + uses MKA-IDB-PPK-FAILURE; + } + container macsec-failure { + description + "MKA IDB MACsec Failure"; + uses MKA-MACSEC-FAILURE; + } + } + + grouping MKPDU-OPER-STATS { + description + "MKPDU OPER STATS"; + leaf tx-success { + type uint32; + description + "MKPDU Tx Success"; + } + leaf rx-success { + type uint32; + description + "MKPDU Rx Success"; + } + leaf tx-force-suspended { + type uint32; + description + "MKPDU Tx force suspended"; + } + leaf rx-force-suspended { + type uint32; + description + "MKPDU Rx force suspended"; + } + leaf no-tx-on-intf-down { + type uint32; + description + "No Tx on intf down"; + } + leaf no-rx-on-intf-down { + type uint32; + description + "No Rx on intf down"; + } + leaf tx-fail { + type uint32; + description + "Tx Fail"; + } + leaf tx-pkt-build-fail { + type uint32; + description + "Tx Pkt Build Fail"; + } + leaf rx-ca-not-found { + type uint32; + description + "Rx CA not found"; + } + leaf rx-error { + type uint32; + description + "Rx Error"; + } + leaf rx-invalid-length { + type uint32; + description + "Rx Invalid length"; + } + leaf rx-invalid-ckn { + type uint32; + description + "Rx invalid ckn"; + } + leaf rx-icv-validation-fail { + type uint32; + description + "Rx ICV validation fail"; + } + leaf rx-pkt-validation-fail { + type uint32; + description + "Rx MKPDU packet validation fail"; + } + leaf rx-bad-peer-mn { + type uint32; + description + "Rx Bad Peer MN"; + } + leaf rx-non-recent-peerlist-mn { + type uint32; + description + "Rx non-recent peerlist MN"; + } + leaf rx-sak-use-kn-mismatch { + type uint32; + description + "Rx SAK USE KN mismatch"; + } + leaf rx-sak-use-rx-not-set { + type uint32; + description + "Rx SAK USE rx not set"; + } + leaf rx-sak-use-key-mi-mismatch { + type uint32; + description + "Rx SAK USE Key MI mismatch"; + } + leaf rx-sak-use-an-not-in-use { + type uint32; + description + "Rx SAK USE AN not in use"; + } + leaf rx-sak-use-ks-rx-tx-not-set { + type uint32; + description + "Rx SAK USE KS RX/TX not set"; + } + leaf rx-pkt-sak-use-ethertype-mismatch { + type uint32; + description + "RX Packet ethertype mismatch"; + } + leaf rx-pkt-source-mac-null { + type uint32; + description + "Rx Packet Source mac null"; + } + leaf rx-pkt-dest-mac-null { + type uint32; + description + "Rx Packet dest mac null"; + } + leaf rx-pkt-pyld-null { + type uint32; + description + "Rx Packet Payload Null"; + } + leaf ppk-id-nak { + type uint32; + description + "PPK ID NAK"; + } + leaf ppk-id-not-found { + type uint32; + description + "PPK id not found"; + } + } + + grouping MKA-INTF-IDB-STATS { + description + "MKA INTF IDB STATS"; + container mkpdu-stats { + description + "MKPDU Stats"; + uses MKPDU-OPER-STATS; + } + container failure-stats { + description + "MKA IDB Failure Stats"; + uses MKA-IDB-FAILURE-STATS; + } + } + + grouping LAST-SAK-DATA { + description + "LAST SAK DATA"; + leaf an { + type string; + description + "AN"; + } + leaf sa-install-time { + type string; + description + "SA Install Time"; + } + } + + grouping MKA-INTF-SESSION-STATS { + description + "MKA INTF SESSION STATS"; + container sak-data { + description + "Last SAK Data"; + uses LAST-SAK-DATA; + } + leaf link-secure-up-time { + type string; + description + "Link Secure Uptime"; + } + leaf session-up-time { + type string; + description + "Session Uptime"; + } + leaf sak-rekey-count-ha { + type uint32; + description + "Number of SAK Rekeys (since link secured)"; + } + leaf sak-rekey-count { + type uint32; + description + "Number of SAK Rekeys"; + } + } + + grouping MKA-INTF-STATISTICS { + description + "MKA INTF STATISTICS"; + container session-stats { + description + "Session Stats for interface"; + uses MKA-INTF-SESSION-STATS; + } + container idb-stats { + description + "IDB stats for interface"; + uses MKA-INTF-IDB-STATS; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + list ca-stat { + description + "List of CA stats"; + uses MKA-INTF-CA-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper.yang new file mode 100644 index 000000000..8ac43e21a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-mka-oper.yang @@ -0,0 +1,153 @@ +module Cisco-IOS-XR-crypto-macsec-mka-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-macsec-mka-oper"; + prefix crypto-macsec-mka-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-crypto-macsec-mka-oper-sub1 { + revision-date 2022-04-28; + } + + 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 crypto-macsec-mka package operational data. + + This module contains definitions + for the following management objects: + macsec: Macsec operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-28 { + description + "Added global MKPDU validation error stat + 2022-02-08 + Added Standby Container for MKA operational info"; + semver:module-version "2.1.0"; + } + revision 2021-05-13 { + description + "Changed the latest SAK data field to last SAK + 2021-05-12 + Removed unwanted fields in CA bag for stats"; + semver:module-version "2.0.0"; + } + revision 2021-04-15 { + description + "Modified to display session stats + 2021-02-17 + Modified to display port power status + 2021-01-19 + show_mka.bag dormant entry remove + 2020-08-24 + MKA PPK"; + semver:module-version "2.0.0"; + } + revision 2019-05-27 { + description + "MKA ISSU"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "MKA ISSU"; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container macsec { + config false; + description + "Macsec operational data"; + container standby { + description + "MACsec Operational Data from Standby"; + container mka { + description + "MKA Operational info"; + container interfaces { + description + "MACsec enabled Interfaces"; + list interface { + key "name"; + description + "MKA Data for the Interface"; + container statistics { + description + "MKA Statistics Data"; + uses MKA-INTF-STATISTICS; + } + container info { + description + "MKA Interface Summary Data"; + uses MKA-INTERFACE-INFO; + } + container session { + description + "MKA Session Data"; + uses MKA-SESSION; + } + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } + } + container mka { + description + "MKA Data"; + container interfaces { + description + "MKA Data"; + list interface { + key "name"; + description + "MKA Data for the Interface"; + container session { + description + "MKA Session Data"; + uses MKA-SESSION; + } + container statistics { + description + "MKA Statistics Data"; + uses MKA-INTF-STATISTICS; + } + container info { + description + "MKA Interface Summary Data"; + uses MKA-INTERFACE-INFO; + } + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper-sub1.yang new file mode 100644 index 000000000..4628e3798 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper-sub1.yang @@ -0,0 +1,5303 @@ +submodule Cisco-IOS-XR-crypto-macsec-pl-oper-sub1 { + belongs-to Cisco-IOS-XR-crypto-macsec-pl-oper { + prefix Cisco-IOS-XR-crypto-macsec-pl-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-macsec-pl package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-08 { + description + "Revison Update doe macsec pl oper"; + semver:module-version "2.1.0"; + } + revision 2020-11-05 { + description + "Revison Update doe macsec pl oper"; + semver:module-version "2.0.0"; + } + revision 2019-12-05 { + description + "Revison Update doe macsec pl oper"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Macsec-phy-vendor { + type enumeration { + enum "msfpga" { + description + "msfpga"; + } + enum "xlmsfpga" { + description + "xlmsfpga"; + } + enum "apm-es200" { + description + "apm es200"; + } + enum "apm-x120" { + description + "apm x120"; + } + enum "mv88ec808" { + description + "mv88ec808"; + } + enum "vtss" { + description + "vtss"; + } + enum "meta-dx1" { + description + "meta dx1"; + } + enum "media-tek" { + description + "media tek"; + } + enum "max-card-type" { + description + "max card type"; + } + enum "unknown" { + description + "unknown"; + } + enum "invalid" { + description + "invalid"; + } + enum "un-detected" { + description + "un detected"; + } + } + description + "Macsec phy vendor"; + } + + grouping PL-METADX-FLOW-INFO { + description + "PL METADX FLOW INFO"; + leaf isflow-valid { + type boolean; + description + "is a valid flow"; + } + leaf is-pkt-type-any { + type boolean; + description + "any packet flow "; + } + leaf is-pkt-type-other { + type boolean; + description + "other packet flow "; + } + leaf is-pkt-type-mpls { + type boolean; + description + "mpls packet flow "; + } + leaf is-pkt-type-pbb { + type boolean; + description + "pbb packet flow"; + } + leaf is-drop-flow { + type boolean; + description + "is drop flow"; + } + leaf is-control-packet { + type boolean; + description + "is control pkt flow"; + } + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf no-of-tags-or-label { + type uint8; + description + "no of vlan tags"; + } + leaf sa-no { + type uint32; + description + "Sa Number"; + } + leaf flow-no { + type uint32; + description + "Flow Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf other-ether-type { + type uint32; + description + "ether type"; + } + leaf other-ether-type-mask { + type uint32; + description + "ether type mask"; + } + leaf other-vlan-tag-1 { + type uint32; + description + "first vlan tag"; + } + leaf other-vlan-tag-mask-1 { + type uint32; + description + "first vlan mask"; + } + leaf other-vlan-tag-2 { + type uint32; + description + "second vlan tag"; + } + leaf other-vlan-tag-mask-2 { + type uint32; + description + "second vlan mask"; + } + leaf pbb-vlan-tag-val { + type uint32; + description + "first vlan tag"; + } + leaf pbb-vlan-tag-mask { + type uint32; + description + "first vlan mask"; + } + leaf pbb-service-instance-id-val { + type uint32; + description + "service instances id val"; + } + leaf pbb-service-instance-id-mask { + type uint32; + description + "service instances id mask"; + } + leaf mpls-label-1 { + type uint32; + description + "first mpls lablel"; + } + leaf mpls-label-2 { + type uint32; + description + "second mpls label"; + } + leaf mpls-mask-1 { + type uint32; + description + "first mpls mask"; + } + leaf mpls-mask-2 { + type uint32; + description + "second mpls mask"; + } + leaf sci { + type uint64; + description + "SCI"; + } + leaf-list mac { + type uint8; + description + "MAC SA"; + } + leaf-list mac-mask { + type uint8; + description + "MAC MASK"; + } + } + + grouping PL-METADX-FLOW { + description + "Flow Details"; + container tx-flow { + description + "Tx Flow Details"; + uses PL-METADX-FLOW-INFO; + } + container rx-flow { + description + "Rx Flow Details"; + uses PL-METADX-FLOW-INFO; + } + } + + grouping PL-X120-FLOW-INFO { + description + "Flow Information"; + leaf flow-no { + type uint32; + description + "Flow Number"; + } + leaf is-flow-enabled { + type boolean; + description + "Is Flow Enabled"; + } + leaf ethertype { + type uint16; + description + "Parsed EtherType to match could be 0 if + Ethertype should'nt + be matched can be 0x88E5 for MACSec tag"; + } + leaf outer-vlan-id { + type uint16; + description + " VLAN ID for outer tag use this when + only one tag should be matched"; + } + leaf outer-vlan-user-pri { + type uint8; + description + "VLAN User Priority for outer tag use + this when only one tag should be matched"; + } + leaf inner-vlan-id { + type uint16; + description + "VLAN ID for inner tag used when two + VLAN Tags should be matched"; + } + leaf inner-vlan-user-pri { + type uint8; + description + " VLAN User priority for inner tag use + when matching two VLAN tags"; + } + leaf psci { + type uint64; + description + " SCI to be matched value required for + ingress only, pass NULL for egress"; + } + leaf match-priority { + type uint8; + description + "priority for match 0-15(highest) "; + } + leaf tci-v { + type uint8; + description + "value of 'v' in TCI to match (1bit) "; + } + leaf tci-e-xr { + type uint8; + description + "value of 'es' in TCI to match (1bit) "; + } + leaf tci-sc { + type uint8; + description + "value of 'sc' in TCI to match (1bit) "; + } + leaf tci-scb { + type uint8; + description + "value of 'scb' in TCI to match (1bit) "; + } + leaf tci { + type uint8; + description + "value of 'e' in TCI to match (1bit )"; + } + leaf tci-c { + type uint8; + description + "value of 'c' in TCI to match (1bit) "; + } + leaf tci-chk { + type boolean; + description + "TCI bits will be checked only when this + bit is enabled. All the values of TCI bits + are mandatory when TCI check is used"; + } + leaf pkt-type { + type string; + description + "Type of packet. See ethMscCfyEPktType_e"; + } + leaf tag-num { + type string; + description + "No. of MPLS or VLAN tags See ethMscCfyETagNum_e "; + } + leaf inner-vlan-dei { + type boolean; + description + "Dei to match for innner Vlan tag"; + } + leaf outer-vlan-dei { + type boolean; + description + "Dei to match for outer Vlan tag"; + } + leaf pbb-sid { + type uint32; + description + " Service Instance id "; + } + leaf pbb-bvid { + type uint32; + description + " Backbone Vlan id "; + } + leaf pbb-pcp { + type uint8; + description + " pcp "; + } + leaf pbb-dei { + type uint8; + description + " dei "; + } + leaf mpls1-label { + type uint32; + description + " label "; + } + leaf mpls1-exp { + type uint8; + description + " exp "; + } + leaf mpls1-bos { + type uint8; + description + " botton of stack "; + } + leaf mpls2-label { + type uint32; + description + " label "; + } + leaf mpls2-exp { + type uint8; + description + " exp "; + } + leaf mpls2-bos { + type uint8; + description + " botton of stack "; + } + leaf plain-bits { + type uint64; + units "bit"; + description + "Plain bits to compare. Max values: + untagged pkt - 40 bits after EthType + 1 VLAN tag - 24 bits after parsed EthType + 2 VLAN tags- 8 bits after parsed EthType + 1 MPLS tag - 32 bits after 1st tag + 2 MPLS tags- 8 bits following after 2nd + or atmost 5th MPLS tag + PBB - 16 bits after C-SA + PBB with VLAN tag - 16 bits of VLAN tag "; + } + leaf plain-bits-size { + type uint8; + description + "No. of bits used in plainBits"; + } + leaf force-ctrl { + type boolean; + description + "Force the pkt as control pkt irrepective + of the results of control packet detector"; + } + leaf drop { + type boolean; + description + "Drop the packet"; + } + leaf mask-da { + type uint64; + description + "DA mask"; + } + leaf mask-ethertype { + type uint32; + description + "Parsed EtherType mask"; + } + leaf mask-plain-bits { + type uint64; + description + "Plain Bits mask"; + } + leaf flow-hits { + type uint64; + description + "Pkts matching the Flow"; + } + leaf-list macda { + type uint8; + description + "MAC DA"; + } + } + + grouping PL-X120-FLOW { + description + "Flow Details"; + container tx-flow { + description + "Tx Flow Details"; + uses PL-X120-FLOW-INFO; + } + container rx-flow { + description + "Rx Flow Details"; + uses PL-X120-FLOW-INFO; + } + } + + grouping PL-MV88EC808-FLOW-INFO { + description + "PL MV88EC808 FLOW INFO"; + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf sa-no { + type uint32; + description + "Sa Number"; + } + leaf flow-no { + type uint32; + description + "Flow Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf is-flow-valid { + type boolean; + description + "Valid Flow"; + } + leaf fmacsa-in-use { + type boolean; + description + "If MAC SA in Use"; + } + leaf fmacda-in-use { + type boolean; + description + "If MAC DA in Use"; + } + leaf ether-type { + type uint16; + description + "Ether Type"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf source-port-chk { + type boolean; + description + "Source Port ChkEn"; + } + leaf fsci-in-use { + type boolean; + description + "If SCI in use"; + } + leaf sci { + type uint64; + description + "SCI"; + } + leaf match-pri { + type uint8; + description + "Match Priority"; + } + leaf is-cntl-pkt { + type boolean; + description + "Is Control Pkt"; + } + leaf ctrl-pkt-chk { + type boolean; + description + "Ctrl Pkt ChkEn"; + } + leaf match-untagged { + type boolean; + description + "MatchUntagged"; + } + leaf match-tagged { + type boolean; + description + "MatchTagged"; + } + leaf match-bad-tag { + type boolean; + description + "Match Bad Tag"; + } + leaf match-ka-y-tag { + type boolean; + description + "MatchKaYTag"; + } + leaf tci-v { + type uint8; + description + "TCI V"; + } + leaf tci-e-xr { + type uint8; + description + "TCI ES"; + } + leaf tci-sc { + type uint8; + description + "TCI SC"; + } + leaf tci-scb { + type uint8; + description + "TCI SCB"; + } + leaf tci { + type uint8; + description + "TCI E"; + } + leaf tci-c { + type uint8; + description + "TCI C"; + } + leaf tci-an { + type uint8; + description + "TCI AN"; + } + leaf tci-an-chk { + type boolean; + description + "TciAnChkEn"; + } + leaf tci-chk { + type boolean; + description + "TciChkEn"; + } + leaf-list macsa { + type uint8; + description + "MAC SA"; + } + leaf-list macda { + type uint8; + description + "MAC DA"; + } + } + + grouping PL-MV88EC808-FLOW { + description + "Flow Details"; + container tx-flow { + description + "Tx Flow Details"; + uses PL-MV88EC808-FLOW-INFO; + } + container rx-flow { + description + "Rx Flow Details"; + uses PL-MV88EC808-FLOW-INFO; + } + } + + grouping PL-ES200-FLOW-INFO { + description + "Flow Information"; + leaf flow-no { + type uint32; + description + "Flow Number"; + } + leaf is-flow-enabled { + type boolean; + description + "Is Flow Enabled"; + } + leaf ethertype { + type uint16; + description + "Parsed EtherType to match could be 0 if + Ethertype should'nt + be matched can be 0x88E5 for MACSec tag"; + } + leaf outer-vlan-id { + type uint16; + description + " VLAN ID for outer tag use this when + only one tag should be matched"; + } + leaf outer-vlan-user-pri { + type uint8; + description + "VLAN User Priority for outer tag use + this when only one tag should be matched"; + } + leaf inner-vlan-id { + type uint16; + description + "VLAN ID for inner tag used when two + VLAN Tags should be matched"; + } + leaf inner-vlan-user-pri { + type uint8; + description + " VLAN User priority for inner tag use + when matching two VLAN tags"; + } + leaf psci { + type uint64; + description + " SCI to be matched value required for + ingress only, pass NULL for egress"; + } + leaf match-priority { + type uint8; + description + "priority for match 0-15(highest) "; + } + leaf tci-v { + type uint8; + description + "value of 'v' in TCI to match (1bit) "; + } + leaf tci-e-xr { + type uint8; + description + "value of 'es' in TCI to match (1bit) "; + } + leaf tci-sc { + type uint8; + description + "value of 'sc' in TCI to match (1bit) "; + } + leaf tci-scb { + type uint8; + description + "value of 'scb' in TCI to match (1bit) "; + } + leaf tci { + type uint8; + description + "value of 'e' in TCI to match (1bit )"; + } + leaf tci-c { + type uint8; + description + "value of 'c' in TCI to match (1bit) "; + } + leaf tci-chk { + type boolean; + description + "TCI bits will be checked only when this + bit is enabled. All the values of TCI bits + are mandatory when TCI check is used"; + } + leaf pkt-type { + type string; + description + "Type of packet. See ethMscCfyEPktType_e"; + } + leaf tag-num { + type string; + description + "No. of MPLS or VLAN tags See ethMscCfyETagNum_e "; + } + leaf inner-vlan-dei { + type boolean; + description + "Dei to match for innner Vlan tag"; + } + leaf outer-vlan-dei { + type boolean; + description + "Dei to match for outer Vlan tag"; + } + leaf pbb-sid { + type uint32; + description + " Service Instance id "; + } + leaf pbb-bvid { + type uint32; + description + " Backbone Vlan id "; + } + leaf pbb-pcp { + type uint8; + description + " pcp "; + } + leaf pbb-dei { + type uint8; + description + " dei "; + } + leaf mpls1-label { + type uint32; + description + " label "; + } + leaf mpls1-exp { + type uint8; + description + " exp "; + } + leaf mpls1-bos { + type uint8; + description + " botton of stack "; + } + leaf mpls2-label { + type uint32; + description + " label "; + } + leaf mpls2-exp { + type uint8; + description + " exp "; + } + leaf mpls2-bos { + type uint8; + description + " botton of stack "; + } + leaf plain-bits { + type uint64; + units "bit"; + description + "Plain bits to compare. Max values: + untagged pkt - 40 bits after EthType + 1 VLAN tag - 24 bits after parsed EthType + 2 VLAN tags- 8 bits after parsed EthType + 1 MPLS tag - 32 bits after 1st tag + 2 MPLS tags- 8 bits following after 2nd + or atmost 5th MPLS tag + PBB - 16 bits after C-SA + PBB with VLAN tag - 16 bits of VLAN tag "; + } + leaf plain-bits-size { + type uint8; + description + "No. of bits used in plainBits"; + } + leaf force-ctrl { + type boolean; + description + "Force the pkt as control pkt irrepective + of the results of control packet detector"; + } + leaf drop { + type boolean; + description + "Drop the packet"; + } + leaf mask-da { + type uint64; + description + "DA mask"; + } + leaf mask-ethertype { + type uint32; + description + "Parsed EtherType mask"; + } + leaf mask-plain-bits { + type uint64; + description + "Plain Bits mask"; + } + leaf flow-hits { + type uint64; + description + "Pkts matching the Flow"; + } + leaf-list macda { + type uint8; + description + "MAC DA"; + } + } + + grouping PL-ES200-FLOW { + description + "Flow Details"; + container tx-flow { + description + "Tx Flow Details"; + uses PL-ES200-FLOW-INFO; + } + container rx-flow { + description + "Rx Flow Details"; + uses PL-ES200-FLOW-INFO; + } + } + + grouping PL-MACSEC-FLOW-EXT { + description + "PL MACSEC FLOW EXT"; + container es200-flow { + when "../type = 'apm-es200'" { + description + "../type = 'APM_ES200'"; + } + description + "ES200 Flow Information"; + uses PL-ES200-FLOW; + } + container mv88ec808-flow { + when "../type = 'mv88ec808'" { + description + "../type = 'MV88EC808'"; + } + description + "MV88EC808 Flow Information"; + uses PL-MV88EC808-FLOW; + } + container x120-flow { + when "../type = 'apm-x120'" { + description + "../type = 'APM_X120'"; + } + description + "X120 Flow Information"; + uses PL-X120-FLOW; + } + container metadx-flow { + when "../type = 'meta-dx1'" { + description + "../type = 'META_DX1'"; + } + description + "META_DX1 Flow Information"; + uses PL-METADX-FLOW; + } + leaf type { + type Macsec-phy-vendor; + description + "type"; + } + } + + grouping PL-MACSEC-FLOW { + description + "MACSec HW Flow Details"; + container ext { + description + "ext"; + uses PL-MACSEC-FLOW-EXT; + } + } + + grouping PL-MT3722-SA-RX-INFO { + description + "PL MT3722 SA RX INFO"; + leaf u16sc-idx { + type uint16; + description + "SCI Idx"; + } + leaf crypto-algo { + type string; + description + "Crypto Algo"; + } + leaf eseq-type { + type string; + description + "XPN flag"; + } + leaf bin-use { + type boolean; + description + "SA in use"; + } + leaf bactive { + type boolean; + description + "SA active"; + } + leaf rseq-num { + type uint64; + description + "Sequence Number"; + } + leaf u8-an { + type uint8; + description + "Association Numer"; + } + leaf u16sa-idx { + type uint16; + description + "SA identifier"; + } + leaf u16v-port-id { + type uint16; + description + "Virtual Port ID"; + } + leaf u32-replay-window { + type uint32; + description + "Replay Window"; + } + leaf rx-sci-type { + type string; + description + "RX SCI type"; + } + leaf must-secure { + type boolean; + description + "Must Secure"; + } + leaf brollover-mode { + type boolean; + description + "Roll Over Mode"; + } + } + + grouping PL-MT3722-SA-TX-INFO { + description + "PL MT3722 SA TX INFO"; + leaf u16sc-idx { + type uint16; + description + "SCI Idx"; + } + leaf crypto-algo { + type string; + description + "Crypto Algo"; + } + leaf seq-type { + type string; + description + "XPN flag"; + } + leaf bin-use { + type boolean; + description + "SA in use"; + } + leaf bactive { + type boolean; + description + "SA active"; + } + leaf rseq-num { + type uint64; + description + "Sequence Number"; + } + leaf u8-an { + type uint8; + description + "Association Number"; + } + leaf u16sa-idx { + type uint16; + description + "SA identifier"; + } + leaf u16v-port-id { + type uint16; + description + "Virtual Port ID"; + } + leaf brollover-mode { + type boolean; + description + "Roll over mode"; + } + leaf u16-port-idx { + type uint16; + description + "Port Identifier"; + } + leaf u32-app-id { + type uint32; + description + "App Identifier"; + } + leaf-list amac-addr { + type uint8; + description + "Mac Address"; + } + } + + grouping PL-MT3722-SECY-INFO-RX { + description + "PL MT3722 SECY INFO RX"; + leaf vld-frame-tagged { + type string; + description + "Valid Frame Tagged"; + } + leaf crypt-auth-type { + type string; + description + "Crypt Auth Type"; + } + leaf vld-frame-un-tagged { + type string; + description + "Valid Frame Untagged"; + } + leaf confidentiality-offset { + type uint8; + description + "Confidentiality Offset"; + } + leaf breplay-protect { + type boolean; + description + "Replay Protect"; + } + leaf ballow-tagged-data { + type boolean; + description + "Allow Tagged Data"; + } + leaf ballow-untagged-data { + type boolean; + description + "Allow Untagged Data"; + } + leaf u8-pre-sec-tag-auth-start { + type uint8; + description + "Sectag Authentication Start"; + } + leaf u8-pre-sec-tag-auth-len { + type uint8; + description + "Sectag Authentication length"; + } + } + + grouping PL-MT3722-SECY-INFO-TX { + description + "PL MT3722 SECY INFO TX"; + leaf pkt-expand { + type string; + description + "Packet Expand "; + } + leaf crypt-auth-type { + type string; + description + "Crypt Auth Type"; + } + leaf pkt-protect-mode { + type string; + description + "Packet Protect Mode"; + } + leaf u8-sec-tag-offset { + type uint8; + description + "Security Tag Offset"; + } + leaf u8-confidentiality-offset { + type uint8; + description + "Confidentiality offset"; + } + leaf buse-es { + type boolean; + description + "Use ES"; + } + leaf buse-scb { + type boolean; + description + "Use SCB"; + } + leaf u8-pre-sec-tag-auth-start { + type uint8; + description + "Sectag Authentication Start"; + } + leaf u8-pre-sec-tag-auth-len { + type uint8; + description + "Sectag Authentication Length"; + } + } + + grouping PL-MT3722-SA { + description + "PL MT3722 SA"; + container secy-info-tx { + description + "TX Secy Info"; + uses PL-MT3722-SECY-INFO-TX; + } + container secy-info-rx { + description + "RX Secy Info"; + uses PL-MT3722-SECY-INFO-RX; + } + container tx-sa { + description + "Egress SA PARAMS"; + uses PL-MT3722-SA-TX-INFO; + } + leaf u16-port-idx { + type uint16; + description + "Port Identifier"; + } + leaf u32-app-id { + type uint32; + description + "Application ID"; + } + list rx-sa { + description + "Ingress SA Params"; + uses PL-MT3722-SA-RX-INFO; + } + } + + grouping PL-VSC-RX-SA-INFO { + description + "PL VSC RX SA INFO"; + leaf an { + type uint32; + description + "an"; + } + leaf in-use { + type boolean; + description + "in use"; + } + leaf next-pn { + type uint64; + description + "next pn"; + } + leaf lowest-pn { + type uint64; + description + "lowest pn"; + } + } + + grouping PL-VSC-TX-SA-INFO { + description + "PL VSC TX SA INFO"; + leaf an { + type uint32; + description + "an"; + } + leaf is-active { + type boolean; + description + "is active"; + } + leaf confidentiality { + type boolean; + description + "confidentiality"; + } + leaf next-pn { + type uint64; + description + "next pn"; + } + } + + grouping PL-VSC-RX-SC-INFO { + description + "PL VSC RX SC INFO"; + leaf validate-frames { + type string { + length "0..40"; + } + description + "validate frames"; + } + leaf replay-protect { + type boolean; + description + "replay protect"; + } + leaf replay-window { + type uint32; + description + "replay window"; + } + leaf confidentiality-offset { + type uint32; + description + "confidentiality offset"; + } + leaf receiving { + type boolean; + description + "receiving"; + } + } + + grouping PL-VSC-TX-SC-INFO { + description + "PL VSC TX SC INFO"; + leaf protect-frames { + type boolean; + description + "protect frames"; + } + leaf always-include-sci { + type boolean; + description + "always include sci"; + } + leaf use-es { + type boolean; + description + "use es"; + } + leaf use-scb { + type boolean; + description + "use scb"; + } + leaf confidentiality-offset { + type uint32; + description + "confidentiality offset"; + } + leaf transmitting { + type boolean; + description + "transmitting"; + } + leaf tx-sci { + type string { + length "0..24"; + } + description + "tx sci"; + } + leaf encoding-sa { + type uint32; + description + "encoding sa"; + } + leaf enciphering-sa { + type uint32; + description + "enciphering sa"; + } + } + + grouping PL-VSC-SA { + description + "PL VSC SA"; + container tx-sc { + description + "Tx SC Status"; + uses PL-VSC-TX-SC-INFO; + } + container rx-sc { + description + "Rx SC Status"; + uses PL-VSC-RX-SC-INFO; + } + container tx-sa { + description + "Egress SA PARAMS"; + uses PL-VSC-TX-SA-INFO; + } + leaf port-no { + type uint32; + description + "Port No"; + } + leaf channel { + type uint32; + description + "VSC Phy Channel"; + } + leaf macsec-enable { + type boolean; + description + "macsec enable"; + } + leaf dis-ing-nm-macsec { + type boolean; + description + "dis ing nm macsec"; + } + leaf line-mac-dis-length-validate { + type boolean; + description + "line mac dis length validate"; + } + leaf host-mac-dis-length-validate { + type boolean; + description + "host mac dis length validate"; + } + leaf is-controlled-port-enabled { + type boolean; + description + "is controlled port enabled"; + } + leaf mac-addr { + type string { + length "0..30"; + } + description + "mac addr"; + } + leaf current-cipher-suite { + type string { + length "0..50"; + } + description + "current cipher suite"; + } + list rx-sa { + description + "Ingress SA Params"; + uses PL-VSC-RX-SA-INFO; + } + } + + grouping PL-METADX-RX-SA-INFO { + description + "PL METADX RX SA INFO"; + container xform-params { + description + "Xform Params"; + uses PL-METADX-XFORM-PARAM-INFO; + } + leaf must-secure { + type boolean; + description + "MustSecure"; + } + leaf xform-in-use { + type boolean; + description + "In use flag"; + } + leaf replay-protect { + type boolean; + description + "Replay Protect"; + } + leaf sa-in-use { + type boolean; + description + "SA In Use"; + } + leaf is-egress { + type boolean; + description + "Direction"; + } + leaf active-an { + type uint8; + description + "Active an"; + } + leaf window-size { + type uint32; + description + "replay windowsize"; + } + } + + grouping PL-METADX-XFORM-PARAM-INFO { + description + "PL METADX XFORM PARAM INFO"; + leaf xpn-flag { + type boolean; + description + "XPN flag"; + } + leaf sci { + type string { + length "0..24"; + } + description + "SCI"; + } + leaf crypto-algo { + type string; + description + "Crypto Algo"; + } + leaf key-len { + type string; + description + "Key Len"; + } + leaf an { + type uint8; + description + "AN"; + } + leaf auth-start { + type uint8; + description + "Auth Start"; + } + leaf auth-length { + type uint8; + description + "Auth Length"; + } + leaf conf-offset { + type uint32; + description + "ConfOffset"; + } + leaf sa-id { + type uint32; + description + "sa id"; + } + leaf seq-num { + type uint64; + description + "Seq Num"; + } + } + + grouping PL-METADX-TX-SA-INFO { + description + "PL METADX TX SA INFO"; + container xform-params { + description + "Xform Params"; + uses PL-METADX-XFORM-PARAM-INFO; + } + leaf xform-in-use { + type boolean; + description + "In use flag"; + } + leaf protect-frame { + type boolean; + description + "Ingtegrity"; + } + leaf include-sci { + type boolean; + description + "Include SCI"; + } + leaf use-es { + type boolean; + description + "Use ES"; + } + leaf use-scb { + type boolean; + description + "Use SCB"; + } + leaf conf-protect { + type boolean; + description + "Encryption"; + } + leaf is-egress { + type boolean; + description + "Direction"; + } + leaf sa-in-use { + type boolean; + description + "SA In Use"; + } + } + + grouping PL-METADX-SA { + description + "PL METADX SA"; + container tx-sa { + description + "Egress SA PARAMS"; + uses PL-METADX-TX-SA-INFO; + } + leaf port-no { + type uint32; + description + "Port No"; + } + list rx-sa { + description + "Ingress SA Params"; + uses PL-METADX-RX-SA-INFO; + } + } + + grouping PL-MV88EC808-RX-SA-INFO { + description + "PL MV88EC808 RX SA INFO"; + container xform-params { + description + "Xform Params"; + uses PL-MV88EC808-XFORM-PARAM-INFO; + } + leaf xform-in-use { + type boolean; + description + "In use flag"; + } + leaf replay-protect { + type boolean; + description + "Replay Protect"; + } + leaf action-type { + type string; + description + "Action for SA"; + } + leaf drop-type { + type uint8; + description + "Droptype "; + } + leaf is-egress { + type boolean; + description + "Direction"; + } + leaf conf-offset { + type uint32; + description + "ConfOffset"; + } + leaf sa-in-use { + type boolean; + description + "SA In Use"; + } + leaf validate-frame { + type string; + description + "Frame validation type"; + } + leaf low-pn { + type uint64; + description + "lowPN"; + } + leaf nxt-pn { + type uint64; + description + "nxtPN"; + } + } + + grouping PL-MV88EC808-XFORM-PARAM-INFO { + description + "PL MV88EC808 XFORM PARAM INFO"; + leaf sci { + type string { + length "0..24"; + } + description + "SCI"; + } + leaf crypto-algo { + type string; + description + "Crypto Algo"; + } + leaf seq-num { + type uint64; + description + "Seq Num"; + } + leaf rwin { + type uint32; + description + "Replay window"; + } + leaf is-egress { + type boolean; + description + "Egress Flag"; + } + leaf key-len { + type string; + description + "Key Len"; + } + leaf an { + type uint8; + description + "AN"; + } + leaf xpn-flag { + type boolean; + description + "XPN flag"; + } + } + + grouping PL-MV88EC808-TX-SA-INFO { + description + "PL MV88EC808 TX SA INFO"; + container xform-params { + description + "Xform Params"; + uses PL-MV88EC808-XFORM-PARAM-INFO; + } + leaf xform-in-use { + type boolean; + description + "In use flag"; + } + leaf protect-frame { + type boolean; + description + "Ingtegrity"; + } + leaf include-sci { + type boolean; + description + "Include SCI"; + } + leaf use-es { + type boolean; + description + "Use ES"; + } + leaf use-scb { + type boolean; + description + "Use SCB"; + } + leaf conf-protect { + type boolean; + description + "Encryption"; + } + leaf action-type { + type string; + description + "Action for SA"; + } + leaf drop-type { + type uint8; + description + "Droptype "; + } + leaf is-egress { + type boolean; + description + "Direction"; + } + leaf conf-offset { + type uint32; + description + "ConfOffset"; + } + leaf sa-in-use { + type boolean; + description + "SA In Use"; + } + } + + grouping PL-MV88EC808-SA { + description + "PL MV88EC808 SA"; + container tx-sa { + description + "Egress SA PARAMS"; + uses PL-MV88EC808-TX-SA-INFO; + } + list rx-sa { + description + "Ingress SA Params"; + uses PL-MV88EC808-RX-SA-INFO; + } + } + + grouping PL-X120-RX-SA-INFO { + description + "RX SA specific information"; + container xform-params { + description + " Xform Params"; + uses PL-X120-XFORM-PARAMS; + } + leaf is-valid { + type boolean; + description + "Is structure valid"; + } + leaf sa-id { + type uint8; + description + "SA Index"; + } + leaf confidentiality-offset { + type uint8; + units "byte"; + description + "bytes that are authenticated but not encrypted + following + the SecTAG in the encrypted packet."; + } + leaf is-egress { + type boolean; + description + "true if SA is in egress direction"; + } + leaf fdrop-non-reserved { + type uint8; + description + "Perform drop action if + packet is not from the reserved port"; + } + leaf macsec-sa-action { + type string; + description + "SA action type"; + } + leaf drop-type { + type string; + description + "SA packet drop type"; + } + leaf dest-port-type { + type string; + description + "destination port type"; + } + leaf replay-protect { + type boolean; + description + "replay protection enabled"; + } + leaf frame-validation-type { + type string; + description + "frame validation type"; + } + leaf in-pkts-unchecked { + type uint8; + description + "frame not valid & validateFrames disabled"; + } + leaf in-pkts-delayed { + type uint8; + description + "PN of packet outside replay window & + validateFrames !strict"; + } + leaf in-pkts-late { + type uint8; + description + "PN of packet outside replay window & + validateFrames strict"; + } + leaf in-pkts-ok { + type uint8; + description + "packets with no error"; + } + leaf in-pkts-invalid { + type uint8; + description + "packet not valid & validateFrames !strict"; + } + leaf in-pkts-not-valid { + type uint8; + description + "packet not valid & validateFrames strict"; + } + leaf in-pkts-not-using-sa { + type uint8; + description + "packet assigned to SA not in use & + validateFrames strict"; + } + leaf in-pkts-unused-sa { + type uint8; + description + "packet assigned to SA not in use& validateFrames + !strict"; + } + leaf in-pkts-untagged-hit { + type uint8; + description + "packet assigned to SA but not tagged + (non-standard)"; + } + leaf in-octets-decrypted-validated1 { + type uint8; + description + "octets1 decrypted/validated"; + } + leaf in-octets-decrypted-validated2 { + type uint8; + description + "octets2 decrypted/validated"; + } + } + + grouping PL-X120-XFORM-PARAMS { + description + "SA Xform specific information"; + leaf replay-win-size { + type uint32; + description + "range of pkt nos considered valid"; + } + leaf crypt-algo { + type string; + description + "Cryptographic algo used"; + } + leaf is-egress-tr { + type boolean; + description + "APM_TRUE if this is Egress Transform record, + APM_FALSE otherwise"; + } + leaf aes-key-len { + type string; + description + "AES Key length"; + } + leaf assoc-num { + type uint8; + description + "Association Number for egress"; + } + leaf is-seq-num64-bit { + type boolean; + description + "TRUE if Seq Num is 64-bit, FALSE if it is 32-bit"; + } + } + + grouping PL-X120-TX-SA-INFO { + description + "TX SA specific information"; + container xform-params { + description + " Xform Params"; + uses PL-X120-XFORM-PARAMS; + } + leaf is-valid { + type boolean; + description + "Is structure valid"; + } + leaf sa-id { + type uint8; + description + "SA Index"; + } + leaf out-pkts-too-long { + type uint8; + description + "packets exceeding egress MTU"; + } + leaf out-pkts-encrypted-protected { + type uint8; + description + "packets encrypted/protected"; + } + leaf out-octets-encrypted-protected1 { + type uint8; + description + "octets1 encrypted/protected"; + } + leaf initial-pkt-number { + type uint8; + description + "Initial Packet Number"; + } + leaf current-pkt-number { + type uint64; + description + "Current packet Number"; + } + leaf max-pkt-number { + type uint64; + description + "Maximum packet Number"; + } + leaf confidentiality-offset { + type uint8; + units "byte"; + description + "bytes that are authenticated but not encrypted + following + the SecTAG in the encrypted packet."; + } + leaf is-egress { + type boolean; + description + "true if SA is in egress direction"; + } + leaf macsec-sa-action { + type string; + description + "SA action type"; + } + leaf drop-type { + type string; + description + "SA packet drop type"; + } + leaf dest-port-type { + type string; + description + "destination port type"; + } + leaf is-protect-frame { + type boolean; + description + "is frame protection enabled"; + } + leaf is-include-sci { + type boolean; + description + "true to insert explicit SCI in pkt false to use + implicit SCI"; + } + leaf is-use-es { + type boolean; + description + "set ES bit in generated SecTAG"; + } + leaf is-use-scb { + type boolean; + description + "set SCB bit in generated SecTAG"; + } + leaf is-f-conf-protect { + type boolean; + description + "enable confidentiality protection"; + } + } + + grouping PL-X120-SA { + description + "SA details"; + container tx-sa { + description + "Tx SA Details"; + uses PL-X120-TX-SA-INFO; + } + list rx-sa { + description + "Rx SA Details"; + uses PL-X120-RX-SA-INFO; + } + } + + grouping PL-ES200-RX-SA-INFO { + description + "RX SA specific information"; + container xform-params { + description + " Xform Params"; + uses PL-ES200-XFORM-PARAMS; + } + leaf is-valid { + type boolean; + description + "Is structure valid"; + } + leaf sa-id { + type uint8; + description + "SA Index"; + } + leaf sc-no { + type uint32; + description + "SC Number"; + } + leaf in-pkts-unchecked { + type uint8; + description + "frame not valid & validateFrames disabled"; + } + leaf in-pkts-delayed { + type uint8; + description + "PN of packet outside replay window & + validateFrames !strict"; + } + leaf in-pkts-late { + type uint8; + description + "PN of packet outside replay window & + validateFrames strict"; + } + leaf in-pkts-ok { + type uint8; + description + "packets with no error"; + } + leaf in-pkts-invalid { + type uint8; + description + "packet not valid & validateFrames !strict"; + } + leaf in-pkts-not-valid { + type uint8; + description + "packet not valid & validateFrames strict"; + } + leaf in-pkts-not-using-sa { + type uint8; + description + "packet assigned to SA not in use & + validateFrames strict"; + } + leaf in-pkts-unused-sa { + type uint8; + description + "packet assigned to SA not in use& validateFrames + !strict"; + } + leaf in-octets-decrypted-validated1 { + type uint8; + description + "octets1 decrypted/validated"; + } + leaf in-octets-validated { + type uint8; + description + "octets validated"; + } + leaf conf-offset { + type uint16; + description + "Confidentiality Offset"; + } + } + + grouping PL-ES200-XFORM-PARAMS { + description + "SA Xform specific information"; + leaf replay-win-size { + type uint32; + description + "range of pkt nos considered valid"; + } + leaf crypt-algo { + type string; + description + "Cryptographic algo used"; + } + leaf is-egress-tr { + type boolean; + description + "APM_TRUE if this is Egress Transform record, + APM_FALSE otherwise"; + } + leaf aes-key-len { + type string; + description + "AES Key length"; + } + leaf assoc-num { + type uint8; + description + "Association Number for egress"; + } + leaf is-seq-num64-bit { + type boolean; + description + "TRUE if Seq Num is 64-bit, FALSE if it is 32-bit"; + } + leaf bgen-auth-key { + type boolean; + description + "TRUE to generate the authKey, so authKey in this + struct not used + APM_FALSE to use provided authKey"; + } + } + + grouping PL-ES200-TX-SA-INFO { + description + "TX SA specific information"; + container xform-params { + description + " Xform Params"; + uses PL-ES200-XFORM-PARAMS; + } + leaf is-valid { + type boolean; + description + "Is structure valid"; + } + leaf sa-id { + type uint8; + description + "SA Index"; + } + leaf sc-no { + type uint32; + description + "SC Number"; + } + leaf out-pkts-too-long { + type uint8; + description + "packets exceeding egress MTU"; + } + leaf out-pkts-encrypted-protected { + type uint8; + description + "packets encrypted/protected"; + } + leaf out-octets-encrypted-protected1 { + type uint8; + description + "octets1 encrypted/protected"; + } + leaf initial-pkt-number { + type uint8; + description + "Initial Packet Number"; + } + leaf current-pkt-number { + type uint64; + description + "Current packet Number"; + } + leaf max-pkt-number { + type uint64; + description + "Maximum packet Number"; + } + leaf conf-offset { + type uint16; + description + "Confidentiality Offset"; + } + } + + grouping PL-ES200-SA { + description + "SA details"; + container tx-sa { + description + "Tx SA Details"; + uses PL-ES200-TX-SA-INFO; + } + list rx-sa { + description + "Rx SA Details"; + uses PL-ES200-RX-SA-INFO; + } + } + + grouping PL-XLFPGA-RX-SA-INFO { + description + "Rx SA specific information"; + leaf protection-enable { + type boolean; + description + "Protection Enabled"; + } + leaf secure-mode { + type uint32; + description + "Secure Mode - Must/Should"; + } + leaf replay-protect-mode { + type boolean; + description + "Replay Protect Mode"; + } + leaf validation-mode { + type uint32; + description + "Validation Mode"; + } + leaf replay-window { + type uint32; + description + "Replay Window "; + } + leaf secure-channel-id { + type string { + length "0..24"; + } + description + "Secure Channel ID"; + } + leaf cipher-suite { + type uint32; + description + "Cipher Suite Used"; + } + leaf confidentiality-offset { + type uint8; + description + "Confidentiality Offset"; + } + leaf fcs-err-cfg { + type uint32; + description + "FCS Error Config"; + } + leaf auth-err-cfg { + type uint32; + description + "Auth Error Config"; + } + leaf max-packet-num { + type uint64; + description + "Max Packet Number"; + } + leaf num-an-in-use { + type uint32; + description + "Num of AN's in Use"; + } + leaf an { + type yang:hex-string; + description + "Association Number"; + } + leaf recent-an { + type uint8; + description + "Recent Association Num"; + } + leaf pkt-untagged-detected { + type boolean; + description + "Untagged Pkts Detected"; + } + leaf pkt-tagged-detected { + type boolean; + description + "Tagged Pkts Detected"; + } + leaf pkt-tagged-validated { + type boolean; + description + "Tagged Pkts Validated"; + } + leaf current-packet-num { + type uint64; + description + "Current Packet Number"; + } + leaf-list ssci { + type uint32; + max-elements "4"; + description + "Short Secure Channel ID"; + } + leaf-list lowest-acceptable-packet-num { + type uint64; + max-elements "4"; + description + "Lowest Acceptable Packet Number"; + } + leaf-list next-expected-packet-num { + type uint64; + max-elements "4"; + description + "Next expected Packet Number"; + } + leaf-list crc-value { + type uint32; + max-elements "4"; + description + "CRC Value"; + } + } + + grouping PL-XLFPGA-TX-SA-INFO { + description + "Tx SA specific information"; + leaf protection-enable { + type boolean; + description + "Protection Enabled"; + } + leaf secure-mode { + type uint8; + description + "Secure Mode - Must/Should"; + } + leaf secure-channel-id { + type string { + length "0..24"; + } + description + "Secure Channel ID"; + } + leaf sectag-length { + type uint32; + units "byte"; + description + "Sec Tag Length(bytes) "; + } + leaf cipher-suite { + type uint32; + description + "Cipher Suite Used"; + } + leaf confidentiality-offset { + type uint8; + description + "Confidentiality Offset"; + } + leaf fcs-err-cfg { + type uint8; + description + "FCS Error Config"; + } + leaf max-packet-num { + type uint64; + description + "Max Packet Number"; + } + leaf an { + type uint8; + description + "Association Number"; + } + leaf initial-packet-number { + type uint64; + description + "Initial Packet Number"; + } + leaf ssci { + type uint32; + description + "Short Secure Channel ID"; + } + leaf current-packet-num { + type uint64; + description + "Current Packet Number"; + } + leaf crc-value { + type uint32; + description + "CRC Value"; + } + } + + grouping PL-XLFPGA-SA { + description + "Xilinx FPGA SA Detail"; + container tx-sa { + description + "Tx SA Details"; + uses PL-XLFPGA-TX-SA-INFO; + } + container rx-sa { + description + "Rx SA Details"; + uses PL-XLFPGA-RX-SA-INFO; + } + } + + grouping PL-MACSEC-SA-EXT { + description + "PL MACSEC SA EXT"; + container xlfpga-sa { + when "../type = 'xlmsfpga'" { + description + "../type = 'XLMSFPGA'"; + } + description + "XLFPGA SA Information"; + uses PL-XLFPGA-SA; + } + container es200-sa { + when "../type = 'apm-es200'" { + description + "../type = 'APM_ES200'"; + } + description + "ES200 SA Information"; + uses PL-ES200-SA; + } + container x120-sa { + when "../type = 'apm-x120'" { + description + "../type = 'APM_X120'"; + } + description + "X120 SA Information"; + uses PL-X120-SA; + } + container mv88ec808-sa { + when "../type = 'mv88ec808'" { + description + "../type = 'MV88EC808'"; + } + description + "MV88EC808 SA Information"; + uses PL-MV88EC808-SA; + } + container metadx-sa { + when "../type = 'meta-dx1'" { + description + "../type = 'META_DX1'"; + } + description + "META_DX1 SA Information"; + uses PL-METADX-SA; + } + container vsc-sa { + when "../type = 'vtss'" { + description + "../type = 'VTSS'"; + } + description + "VTSS SA Information"; + uses PL-VSC-SA; + } + container mt3722-sa { + when "../type = 'media-tek'" { + description + "../type = 'MEDIA_TEK'"; + } + description + "MEDIA_TEK SA Information"; + uses PL-MT3722-SA; + } + leaf type { + type Macsec-phy-vendor; + description + "type"; + } + } + + grouping PL-MACSEC-SA { + description + "MACSec HW SA Details"; + container ext { + description + "ext"; + uses PL-MACSEC-SA-EXT; + } + } + + grouping PL-MT3722-IFC-RX-STATS { + description + "PL MT3722 IFC RX STATS"; + leaf rin-octets-uncontrolled { + type uint64; + description + "In Octets Uncontrolled"; + } + leaf rin-octets-controlled { + type uint64; + description + "In Octets Controlled"; + } + leaf rin-pkts-unicast-uncontrolled { + type uint64; + description + "In Packets Unicast Uncontrolled"; + } + leaf rin-pkts-multicast-uncontrolled { + type uint64; + description + "In Packets Multicast Uncontrolled"; + } + leaf rin-pkts-broadcast-uncontrolled { + type uint64; + description + "In Packets Broadcast Uncontrolled"; + } + leaf rin-pkts-unicast-controlled { + type uint64; + description + "In Packets Unicast controlled"; + } + leaf rin-pkts-multicast-controlled { + type uint64; + description + "In Packets Multicast controlled"; + } + leaf rin-pkts-broadcast-controlled { + type uint64; + description + "In Packets Broadcast controlled"; + } + } + + grouping PL-MT3722-IFC-TX-STATS { + description + "PL MT3722 IFC TX STATS"; + leaf rout-octets-uncontrolled { + type uint64; + description + "Out Octets Uncontrolled"; + } + leaf rout-octets-controlled { + type uint64; + description + "Out Octets Controlled"; + } + leaf rout-octets-common { + type uint64; + description + "Out Octets Common"; + } + leaf rout-pkts-unicast-uncontrolled { + type uint64; + description + "Out Packets Unicast Uncontrolled"; + } + leaf rout-pkts-multicast-uncontrolled { + type uint64; + description + "Out Packets Multicast Uncontrolled"; + } + leaf rout-pkts-broadcast-uncontrolled { + type uint64; + description + "Out Packets Broadcast Uncontrolled"; + } + leaf rout-pkts-unicast-controlled { + type uint64; + description + "Out Packets Unicast controlled"; + } + leaf rout-pkts-multicast-controlled { + type uint64; + description + "Out Packets Multicast controlled"; + } + leaf rout-pkts-broadcast-controlled { + type uint64; + description + "Out Packets Broadcast controlled"; + } + } + + grouping PL-MT3722-PORT-STATS { + description + "PL MT3722 PORT STATS"; + leaf rheader-parser-dropped-pkts { + type uint64; + description + "Header Parser Dropped Packets"; + } + leaf rrule-miss { + type uint64; + description + "Rule Miss"; + } + leaf rpkts-ctrl { + type uint64; + description + "Control Packets"; + } + leaf rpkts-data { + type uint64; + description + "Data Packets"; + } + leaf rpkts-dropped { + type uint64; + description + "Dropped Packets"; + } + leaf rpkts-err-in { + type uint64; + description + "In Error Packets"; + } + } + + grouping PL-MT3722-SECY-RX-STATS { + description + "PL MT3722 SECY RX STATS"; + leaf rin-pkts-transform-error { + type uint64; + description + "In Packets Transform Error"; + } + leaf rin-pkts-control { + type uint64; + description + "In Packets Control"; + } + leaf rin-pkts-untagged { + type uint64; + description + "In Packets Untagged"; + } + leaf rin-pkts-no-tag { + type uint64; + description + "In Packets No Tag"; + } + leaf rin-pkts-bad-tag { + type uint64; + description + "In Packets Bad Tag"; + } + leaf rin-pkts-no-sci { + type uint64; + description + "In Packets No SCI"; + } + leaf rin-pkts-unknown-sci { + type uint64; + description + "In Packets Unknown SCI"; + } + leaf rin-pkts-tagged-ctrl { + type uint64; + description + "In Packets Tagged Control"; + } + leaf rin-pkts-sa-not-in-use { + type uint64; + description + "In Packets SA not in use"; + } + } + + grouping PL-MT3722-SECY-TX-STATS { + description + "PL MT3722 SECY TX STATS"; + leaf rout-pkts-transform-error { + type uint64; + description + "Out Packets Transform Error"; + } + leaf rout-pkts-control { + type uint64; + description + "Out Packets Control"; + } + leaf rout-pkts-untagged { + type uint64; + description + "Out Packets Untagged"; + } + leaf rout-pkts-sa-not-in-use { + type uint64; + description + "Out Packets SA not in use"; + } + } + + grouping PL-MT3722-SA-STATS-RX { + description + "PL MT3722 SA STATS RX"; + leaf rin-octets-decrypted { + type uint64; + description + "In OCtets Decreyopted"; + } + leaf rin-octets-validated { + type uint64; + description + "In Octets Validated"; + } + leaf rin-pkts-unchecked { + type uint64; + description + "In Packets unchecked"; + } + leaf rin-pkts-delayed { + type uint64; + description + "In Packets delayed"; + } + leaf rin-pkts-late { + type uint64; + description + "In Packets late"; + } + leaf rin-pkts-ok { + type uint64; + description + "In Packets OK"; + } + leaf rin-pkts-invalid { + type uint64; + description + "In Packets Invalid"; + } + leaf rin-pkts-not-valid { + type uint64; + description + "In Packets Not Valid"; + } + leaf rin-pkts-not-using-sa { + type uint64; + description + "In Packets Not using SA"; + } + leaf rin-pkts-unused-sa { + type uint64; + description + "In Packets Unused SA"; + } + } + + grouping PL-MT3722-SA-STATS-TX { + description + "PL MT3722 SA STATS TX"; + leaf rout-octets-encrypted-protected { + type uint64; + description + "Out Octets Encrypted protected"; + } + leaf rout-pkts-encrypted-protected { + type uint64; + description + "Out Packets Encrypted Protected"; + } + leaf rout-pkts-too-long { + type uint64; + description + "Out Packets too Long"; + } + leaf rout-pkts-sa-not-in-use { + type uint64; + description + "Out Packets SA not in use"; + } + } + + grouping PL-MT3722-STATS { + description + "PL MT3722 STATS"; + container sa-stats-tx { + description + "Egress current SA Stats"; + uses PL-MT3722-SA-STATS-TX; + } + container secy-tx-stats { + description + "Egress MACsec SECY Counter"; + uses PL-MT3722-SECY-TX-STATS; + } + container secy-rx-stats { + description + "Ingress MACsec SECY Counter"; + uses PL-MT3722-SECY-RX-STATS; + } + container tx-port-stats { + description + "TX Port Stats"; + uses PL-MT3722-PORT-STATS; + } + container rx-port-stats { + description + "RX Port Stats"; + uses PL-MT3722-PORT-STATS; + } + container ifc-tx-stats { + description + "IFC TX Stats"; + uses PL-MT3722-IFC-TX-STATS; + } + container ifc-rx-stats { + description + "IFC RX Stats"; + uses PL-MT3722-IFC-RX-STATS; + } + list sa-stats-rx { + description + "Ingress current SA Stats"; + uses PL-MT3722-SA-STATS-RX; + } + } + + grouping PL-VSC-SECY-COUNTERS { + description + "PL VSC SECY COUNTERS"; + leaf port-no { + type uint32; + description + "front pannel PORT Number"; + } + leaf in-pkts-untagged { + type uint64; + description + "in pkts untagged"; + } + leaf in-pkts-no-tag { + type uint64; + description + "in pkts no tag"; + } + leaf in-pkts-bad-tag { + type uint64; + description + "in pkts bad tag"; + } + leaf in-pkts-unknown-sci { + type uint64; + description + "in pkts unknown sci"; + } + leaf in-pkts-no-sci { + type uint64; + description + "in pkts no sci"; + } + leaf in-pkts-overrun { + type uint64; + description + "in pkts overrun"; + } + leaf in-octets-validated { + type uint64; + description + "in octets validated"; + } + leaf in-octets-decrypted { + type uint64; + description + "in octets decrypted"; + } + leaf out-pkts-untagged { + type uint64; + description + "out pkts untagged"; + } + leaf out-pkts-too-long { + type uint64; + description + "out pkts too long"; + } + leaf out-octets-protected { + type uint64; + description + "out octets protected"; + } + leaf out-octets-encrypted { + type uint64; + description + "out octets encrypted"; + } + } + + grouping PL-VSC-INTF-UNCONTROLLED { + description + "PL VSC INTF UNCONTROLLED"; + leaf port-no { + type uint32; + description + "front pannel PORT Number"; + } + leaf if-in-octets { + type uint64; + description + "if in octets"; + } + leaf if-in-ucast-pkts { + type uint64; + description + "if in ucast pkts"; + } + leaf if-in-multicast-pkts { + type uint64; + description + "if in multicast pkts"; + } + leaf if-in-broadcast-pkts { + type uint64; + description + "if in broadcast pkts"; + } + leaf if-in-discards { + type uint64; + description + "if in discards"; + } + leaf if-in-errors { + type uint64; + description + "if in errors"; + } + leaf if-out-octets { + type uint64; + description + "if out octets"; + } + leaf if-out-ucast-pkts { + type uint64; + description + "if out ucast pkts"; + } + leaf if-out-multicast-pkts { + type uint64; + description + "if out multicast pkts"; + } + leaf if-out-broadcast-pkts { + type uint64; + description + "if out broadcast pkts"; + } + leaf if-out-errors { + type uint64; + description + "if out errors"; + } + } + + grouping PL-VSC-INTF-CONTROLLED { + description + "PL VSC INTF CONTROLLED"; + leaf port-no { + type uint32; + description + "front pannel PORT Number"; + } + leaf if-in-octets { + type uint64; + description + "if in octets"; + } + leaf if-in-pkts { + type uint64; + description + "if in pkts"; + } + leaf if-in-ucast-pkts { + type uint64; + description + "if in ucast pkts"; + } + leaf if-in-multicast-pkts { + type uint64; + description + "if in multicast pkts"; + } + leaf if-in-broadcast-pkts { + type uint64; + description + "if in broadcast pkts"; + } + leaf if-in-discards { + type uint64; + description + "if in discards"; + } + leaf if-in-errors { + type uint64; + description + "if in errors"; + } + leaf if-out-octets { + type uint64; + description + "if out octets"; + } + leaf if-out-pkts { + type uint64; + description + "if out pkts"; + } + leaf if-out-errors { + type uint64; + description + "if out errors"; + } + leaf if-out-ucast-pkts { + type uint64; + description + "if out ucast pkts"; + } + leaf if-out-multicast-pkts { + type uint64; + description + "if out multicast pkts"; + } + leaf if-out-broadcast-pkts { + type uint64; + description + "if out broadcast pkts"; + } + } + + grouping PL-VSC-RMON-CNTRS { + description + "PL VSC RMON CNTRS"; + leaf if-rx-octets { + type uint64; + description + "if rx octets"; + } + leaf if-rx-in-bytes { + type uint64; + description + "if rx in bytes"; + } + leaf if-rx-pause-pkts { + type uint32; + description + "if rx pause pkts"; + } + leaf if-rx-ucast-pkts { + type uint32; + description + "if rx ucast pkts"; + } + leaf if-rx-multicast-pkts { + type uint32; + description + "if rx multicast pkts"; + } + leaf if-rx-broadcast-pkts { + type uint32; + description + "if rx broadcast pkts"; + } + leaf if-rx-discards { + type uint32; + description + "if rx discards"; + } + leaf if-rx-errors { + type uint32; + description + "if rx errors"; + } + leaf if-rx-stats-pkts { + type uint64; + description + "if rx StatsPkts"; + } + leaf if-rx-crc-align-errors { + type uint32; + description + "if rx CRCAlignErrors"; + } + leaf if-rx-undersize-pkts { + type uint32; + description + "if rx UndersizePkts"; + } + leaf if-rx-oversize-pkts { + type uint32; + description + "if rx OversizePkts"; + } + leaf if-rx-fragments { + type uint32; + description + "if rx Fragments"; + } + leaf if-rx-jabbers { + type uint32; + description + "if rx Jabbers"; + } + leaf if-rx-pkts64-octets { + type uint32; + description + "if rx Pkts64Octets"; + } + leaf if-rx-pkts65to127-octets { + type uint32; + description + "if rx Pkts65to127Octets"; + } + leaf if-rx-pkts128to255-octets { + type uint32; + description + "if rx Pkts128to255Octets"; + } + leaf if-rx-pkts256to511-octets { + type uint32; + description + "if rx Pkts256to511Octets"; + } + leaf if-rx-pkts512to1023-octets { + type uint32; + description + "if rx Pkts512to1023Octets"; + } + leaf if-rx-pkts1024to1518-octets { + type uint32; + description + "if rx Pkts1024to1518Octets"; + } + leaf if-rx-pkts1519to-max-octets { + type uint32; + description + "if rx Pkts1519toMaxOctets"; + } + leaf if-tx-octets { + type uint64; + description + "if tx octets"; + } + leaf if-tx-pause-pkts { + type uint32; + description + "if tx pause pkts"; + } + leaf if-tx-ucast-pkts { + type uint32; + description + "if tx ucast pkts"; + } + leaf if-tx-multicast-pkts { + type uint32; + description + "if tx multicast pkts"; + } + leaf if-tx-broadcast-pkts { + type uint32; + description + "if tx broadcast pkts"; + } + leaf if-tx-errors { + type uint32; + description + "if tx errors"; + } + leaf if-tx-drop-events { + type uint32; + description + "if tx DropEvents"; + } + leaf if-tx-stats-pkts { + type uint64; + description + "if tx StatsPkts"; + } + leaf if-tx-collisions { + type uint32; + description + "if tx Collisions"; + } + leaf if-tx-pkts64-octets { + type uint32; + description + "if tx Pkts64Octets"; + } + leaf if-tx-pkts65to127-octets { + type uint32; + description + "if tx Pkts65to127Octets"; + } + leaf if-tx-pkts128to255-octets { + type uint32; + description + "if tx Pkts128to255Octets"; + } + leaf if-tx-pkts256to511-octets { + type uint32; + description + "if tx Pkts256to511Octets"; + } + leaf if-tx-pkts512to1023-octets { + type uint32; + description + "if tx Pkts512to1023Octets"; + } + leaf if-tx-pkts1024to1518-octets { + type uint32; + description + "if tx Pkts1024to1518Octets"; + } + leaf if-tx-pkts1519to-max-octets { + type uint32; + description + "if tx Pkts1519toMaxOctets"; + } + } + + grouping PL-VSC-INTF-RMON { + description + "PL VSC INTF RMON"; + container lmac-counters { + description + "lmac counters"; + uses PL-VSC-RMON-CNTRS; + } + container hmac-counters { + description + "hmac counters"; + uses PL-VSC-RMON-CNTRS; + } + leaf port-no { + type uint32; + description + "front pannel PORT Number"; + } + } + + grouping PL-VSC-INTF-COMMON { + description + "PL VSC INTF COMMON"; + leaf port-no { + type uint32; + description + "front pannel PORT Number"; + } + leaf if-in-octets { + type uint64; + description + "if in octets"; + } + leaf if-in-ucast-pkts { + type uint64; + description + "if in ucast pkts"; + } + leaf if-in-multicast-pkts { + type uint64; + description + "if in multicast pkts"; + } + leaf if-in-broadcast-pkts { + type uint64; + description + "if in broadcast pkts"; + } + leaf if-in-discards { + type uint64; + description + "if in discards"; + } + leaf if-in-errors { + type uint64; + description + "if in errors"; + } + leaf if-out-octets { + type uint64; + description + "if out octets"; + } + leaf if-out-ucast-pkts { + type uint64; + description + "if out ucast pkts"; + } + leaf if-out-multicast-pkts { + type uint64; + description + "if out multicast pkts"; + } + leaf if-out-broadcast-pkts { + type uint64; + description + "if out broadcast pkts"; + } + leaf if-out-errors { + type uint64; + description + "if out errors"; + } + } + + grouping PL-VSC-SC-STAT-I { + description + "PL VSC SC STAT I"; + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf in-pkts-unchecked { + type uint64; + description + "in pkts unchecked"; + } + leaf in-pkts-delayed { + type uint64; + description + "in pkts delayed"; + } + leaf in-pkts-late { + type uint64; + description + "in pkts late"; + } + leaf in-pkts-ok { + type uint64; + description + "in pkts ok"; + } + leaf in-pkts-invalid { + type uint64; + description + "in pkts invalid"; + } + leaf in-pkts-not-valid { + type uint64; + description + "in pkts not valid"; + } + leaf in-pkts-not-using-sa { + type uint64; + description + "in pkts not using sa"; + } + leaf in-pkts-unused-sa { + type uint64; + description + "in pkts unused sa"; + } + leaf in-octets-validated { + type uint64; + description + "in octets validated"; + } + leaf in-octets-decrypted { + type uint64; + description + "in octets decrypted"; + } + } + + grouping PL-VSC-SC-STAT-E { + description + "PL VSC SC STAT E"; + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf out-pkts-protected { + type uint64; + description + "out pkts protected"; + } + leaf out-pkts-encrypted { + type uint64; + description + "out pkts encrypted"; + } + leaf out-octets-protected { + type uint64; + description + "out octets protected"; + } + leaf out-octets-encrypted { + type uint64; + description + "out octets encrypted"; + } + } + + grouping PL-VSC-SA-STAT-I { + description + "PL VSC SA STAT I"; + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf in-pkts-ok { + type uint64; + description + "in pkts ok"; + } + leaf in-pkts-invalid { + type uint64; + description + "in pkts invalid"; + } + leaf in-pkts-not-valid { + type uint64; + description + "in pkts not valid"; + } + leaf in-pkts-not-using-sa { + type uint64; + description + "in pkts not using sa"; + } + leaf in-pkts-unused-sa { + type uint64; + description + "in pkts unused sa"; + } + leaf in-pkts-unchecked { + type uint64; + description + "in pkts unchecked"; + } + leaf in-pkts-delayed { + type uint64; + description + "in pkts delayed"; + } + leaf in-pkts-late { + type uint64; + description + "in pkts late"; + } + } + + grouping PL-VSC-SA-STAT-E { + description + "PL VSC SA STAT E"; + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf out-pkts-protected { + type uint64; + description + "out pkts protected"; + } + leaf out-pkts-encrypted { + type uint64; + description + "out pkts encrypted"; + } + } + + grouping PL-VSC-STATS { + description + "PL VSC STATS"; + container eg-sa-stat { + description + "Egress current SA Stats"; + uses PL-VSC-SA-STAT-E; + } + container eg-sc-stat { + description + "Egress SC Stats "; + uses PL-VSC-SC-STAT-E; + } + container ig-sc-stat { + description + "Igress SC Stats "; + uses PL-VSC-SC-STAT-I; + } + container common-int-stat { + description + "Common Interface Counters"; + uses PL-VSC-INTF-COMMON; + } + container rmon-int-stat { + description + "Interface RMON Counters"; + uses PL-VSC-INTF-RMON; + } + container controlled-int-stat { + description + "Controlled Interface Counters"; + uses PL-VSC-INTF-CONTROLLED; + } + container un-controlled-int-stat { + description + "UnControlled Interface Counters"; + uses PL-VSC-INTF-UNCONTROLLED; + } + container secy-stat { + description + "Secy Counter Stats"; + uses PL-VSC-SECY-COUNTERS; + } + list ig-sa-stat { + description + "Ingress current SA Stats"; + uses PL-VSC-SA-STAT-I; + } + } + + grouping PL-METADX-GLBL-COMMON-STAT { + description + "PL METADX GLBL COMMON STAT"; + leaf vport-no { + type uint32; + description + "VPORT Number"; + } + leaf uc-pkts-uncontrolled { + type uint64; + description + "No of Unicast pkts over uncontrolled port"; + } + leaf mc-pkts-uncontrolled { + type uint64; + description + "No of Multicast pkts over uncontrolled port"; + } + leaf bc-pkts-uncontrolled { + type uint64; + description + "No of Broadcast pkts over uncontrolled port"; + } + leaf rx-drop-pkts-uncontrolled { + type uint64; + description + "No of rx_drop pkts over uncontrolled port"; + } + leaf rx-err-pkts-uncontrolled { + type uint64; + description + "No of rx_err pkts over uncontrolled port"; + } + leaf uc-pkts-controlled { + type uint64; + description + "No of Unicast pkts over controlled port"; + } + leaf mc-pkts-controlled { + type uint64; + description + "No of Multicast pkts over controlled port"; + } + leaf bc-pkts-controlled { + type uint64; + description + "No of Broadcast pkts over controlled port"; + } + leaf rx-drop-pkts-controlled { + type uint64; + description + "No of rx_drop pkts over controlled port"; + } + leaf rx-err-pkts-controlled { + type uint64; + description + "No of rx_err pkts over controlled port"; + } + leaf total-bytes-uncontrolled { + type uint64; + description + "Sum of all the octets of MSDUs delivered to + uncontrolled port"; + } + leaf total-bytes-controlled { + type uint64; + description + "Sum of all the octets of MSDUs delivered to + controlled port"; + } + } + + grouping PL-METADX-INTF-I { + description + "PL METADX INTF I"; + leaf port-no { + type uint32; + description + "front pannel PORT Number"; + } + leaf vport-no { + type uint32; + description + "VPORT Number"; + } + leaf rule-no { + type uint32; + description + " Rule Number"; + } + leaf pkts-xform-err { + type uint64; + description + "No of pkts that encountered transform engine + errors"; + } + leaf ctrl-pkts { + type uint64; + description + "No of pkts processed as control pkts"; + } + leaf untagged-pkts { + type uint64; + description + "No of pkts processed as untagged"; + } + leaf no-tag-pkts { + type uint64; + description + "No of pkts processed as no tag"; + } + leaf bad-tag-pkts { + type uint64; + description + "No of pkts processed as bad tagged pkts"; + } + leaf no-sci-match-pkts { + type uint64; + description + "No of uncontrolled port pkts dropped as No + Matching SCI"; + } + leaf unknwn-sci-match-pkts { + type uint64; + description + "No of controlled port pkts processed as Unknown + Matching SCI"; + } + leaf tagged-ctrl-pkts { + type uint64; + description + "No of pkts processed as control packet and + tagged (KaY pkts)"; + } + leaf multiple-rule-match { + type uint64; + description + "No of pkts received with multiple matching + classification rules"; + } + leaf header-parser-drop { + type uint64; + description + "No of pkts dropped by the header parser as + invalid"; + } + leaf rule-mis-match { + type uint64; + description + "No of pkts that did not match any classification + rules"; + } + leaf ctrl-pkt-match { + type uint64; + description + "No of pkts forwarded as control pkts"; + } + leaf data-pkt-match { + type uint64; + description + "No of pkts forwarded as data pkts"; + } + leaf dropped-pkts { + type uint64; + description + "No of pkts dropped due to classification"; + } + leaf in-error-pkts { + type uint64; + description + "No of pkts marked with error packet indication + before classification"; + } + leaf rule-match { + type uint64; + description + "Count of hits matching TCAM"; + } + } + + grouping PL-METADX-INTF-E { + description + "PL METADX INTF E"; + leaf port-no { + type uint32; + description + "front pannel PORT Number"; + } + leaf vport-no { + type uint32; + description + "VPORT ID or Number"; + } + leaf rule-no { + type uint32; + description + "Rule ID or Number"; + } + leaf pkts-xform-err { + type uint64; + description + "No of pkts that encountered transform engine + errors"; + } + leaf ctrl-pkts { + type uint64; + description + "No of pkts processed as control pkts"; + } + leaf untagged-pkts { + type uint64; + description + "No of pkts processed as untagged"; + } + leaf multiple-rule-match { + type uint64; + description + "No of pkts received with multiple matching + classification rules"; + } + leaf header-parser-drop { + type uint64; + description + "No of pkts dropped by the header parser as + invalid"; + } + leaf rule-mis-match { + type uint64; + description + "No of pkts that did not match any classification + rules"; + } + leaf ctrl-pkt-match { + type uint64; + description + "No of pkts forwarded as control pkts"; + } + leaf data-pkt-match { + type uint64; + description + "No of pkts forwarded as data pkts"; + } + leaf dropped-pkts { + type uint64; + description + "No of pkts dropped due to classification"; + } + leaf in-error-pkts { + type uint64; + description + "No of pkts marked with error packet indication + before classification"; + } + leaf rule-match { + type uint64; + description + "Count of hits matching TCAM"; + } + } + + grouping PL-METADX-SC-STAT-I { + description + "PL METADX SC STAT I"; + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf pkts-unchecked { + type uint64; + description + "No of pkts with invalid frame indication"; + } + leaf pkts-delayed { + type uint64; + description + "No of pkts with PN below lowest PN"; + } + leaf pkts-late { + type uint64; + description + "No of pkts with PN below lowest PN and + replayProtect enabled"; + } + leaf pkts-ok { + type uint64; + description + "No of valid pkts processed"; + } + leaf pkts-invalid { + type uint64; + description + "No of pkts that were invalid frames for + controlled port"; + } + leaf pkts-not-valid { + type uint64; + description + "No of controlled port pkts received at + uncontrolled port"; + } + leaf pkts-not-using-sa { + type uint64; + description + "No of uncontrolled port pkts that reached not in + use SA"; + } + leaf pkts-unused-sa { + type uint64; + description + "No of controlled port pkts that reached upto SA"; + } + leaf octets-decrypted { + type uint64; + description + "No of octets of User Data recovered from rx + frames that were only encrypted or both + integrity protected and encrypted"; + } + leaf octets-validated { + type uint64; + description + "No of octets of User Data recovered from rx + frames that were integrity protected but not + encrypted"; + } + } + + grouping PL-METADX-SC-STAT-E { + description + "PL METADX SC STAT E"; + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf pkts-encrypted-protected { + type uint64; + description + "No of packets encrypted by the SA"; + } + leaf pkts-too-long { + type uint64; + description + "No of packets with packet length larger than max + length configured"; + } + leaf pkts-sa-not-in-use { + type uint64; + description + "No of packets that reached an unused SA"; + } + leaf octets-encrypted-protected { + type uint64; + description + "No of octets of User Data encrypted"; + } + } + + grouping PL-METADX-SA-STAT-I { + description + "PL METADX SA STAT I"; + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf sa-no { + type uint32; + description + "Sa Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf pkts-unchecked { + type uint64; + description + "No of pkts with invalid frame indication"; + } + leaf pkts-delayed { + type uint64; + description + "No of pkts with PN below lowest PN"; + } + leaf pkts-late { + type uint64; + description + "No of pkts with PN below lowest PN and + replayProtect enabled"; + } + leaf pkts-ok { + type uint64; + description + "No of valid pkts processed"; + } + leaf pkts-invalid { + type uint64; + description + "No of pkts that were invalid frames for + controlled port"; + } + leaf pkts-not-valid { + type uint64; + description + "No of controlled port pkts received at + uncontrolled port"; + } + leaf pkts-not-using-sa { + type uint64; + description + "No of uncontrolled port pkts that reached not in + use SA"; + } + leaf pkts-unused-sa { + type uint64; + description + "No of controlled port pkts that reached upto SA"; + } + leaf octets-decrypted { + type uint64; + description + "No of octets of User Data recovered from rx + frames that were only encrypted or both + integrity protected and encrypted"; + } + leaf octets-validated { + type uint64; + description + "No of octets of User Data recovered from rx + frames that were integrity protected but not + encrypted"; + } + } + + grouping PL-METADX-SA-STAT-E { + description + "PL METADX SA STAT E"; + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf sa-no { + type uint32; + description + "Sa Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf pkts-encrypted-protected { + type uint64; + description + "No of packets encrypted by the SA"; + } + leaf pkts-too-long { + type uint64; + description + "No of packets with packet length larger than max + length configured"; + } + leaf pkts-sa-not-in-use { + type uint64; + description + "No of packets that reached an unused SA"; + } + leaf octets-encrypted-protected { + type uint64; + description + "No of octets of User Data encrypted"; + } + } + + grouping PL-METADX-STATS { + description + "PL METADX STATS"; + container eg-sa-stat { + description + "Egress current SA Stats"; + uses PL-METADX-SA-STAT-E; + } + container eg-sc-stat { + description + "Egress SC Stats "; + uses PL-METADX-SC-STAT-E; + } + container ig-sc-stat { + description + "Igress SC Stats "; + uses PL-METADX-SC-STAT-I; + } + container eg-int-stat { + description + "Egress Vport, channel and rule stats of SC"; + uses PL-METADX-INTF-E; + } + container ig-int-stat { + description + "Ingress Vport, channel and rule stats of SC"; + uses PL-METADX-INTF-I; + } + container eg-glb-stat { + description + "Egress Global common Stats"; + uses PL-METADX-GLBL-COMMON-STAT; + } + container ig-glb-stat { + description + "Ingress Global common Stats"; + uses PL-METADX-GLBL-COMMON-STAT; + } + list ig-sa-stat { + description + "Ingress current SA Stats"; + uses PL-METADX-SA-STAT-I; + } + } + + grouping PL-X120-RX-INTERFACE-MACSEC-STATS { + description + "Per Interface Macsec Ingress Stats"; + leaf transform-error-pkts { + type uint64; + description + "counter to count internal errors in the MACSec + core"; + } + leaf in-pkt-ctrl { + type uint64; + description + "ingress packet that is classified as control + packet"; + } + leaf in-pkt-no-tag { + type uint64; + description + "ingress packet untagged & validateFrames is + strict"; + } + leaf in-pkts-untagged { + type uint64; + description + "ingress packet untagged & validateFrames is + !strict"; + } + leaf in-pkt-bad-tag { + type uint64; + description + "ingress frames received with an invalid MACSec + tag or ICV + added with next one gives InPktsSCIMiss"; + } + leaf in-pkt-no-sci { + type uint64; + description + "correctly tagged ingress frames for which no + valid SC found & + validateFrames is strict"; + } + leaf in-pkts-unknown-sci { + type uint64; + description + "correctly tagged ingress frames for which no + valid SC found & + validateFrames is !strict"; + } + leaf in-pkts-tagged { + type uint64; + description + "ingress frames received with a valid MACSec tag + - non Std"; + } + leaf in-pkts-untagged-miss { + type uint64; + description + "untagged ingress frame that did not match any SA"; + } + leaf in-over-sized-pkts { + type uint64; + description + "ingress packet with size greater than configured + MTU"; + } + } + + grouping PL-X120-TX-INTERFACE-MACSEC-STATS { + description + "Per Interface Macsec Egress Stats"; + leaf transform-error-pkts { + type uint64; + description + "counter to count internal errors in the MACSec + core"; + } + leaf out-pkt-ctrl { + type uint64; + description + "egress packet that is classified as control + packet"; + } + leaf out-pkts-untagged { + type uint64; + description + "egress packet to go out untagged when + protectFrames not set"; + } + leaf out-pkts-unknown-sa { + type uint64; + description + "egress packet not matching any SA"; + } + leaf out-over-sized-pkts { + type uint64; + description + "egress packet with size greater than the + configured MTU"; + } + } + + grouping PL-X120-RX-SA-STATS { + description + "Per SA Ingress Stats"; + leaf in-pkts-unchecked { + type uint64; + description + "frame not valid & validateFrames disabled"; + } + leaf in-pkts-delayed { + type uint64; + description + "PN of packet outside replay window & + validateFrames !strict"; + } + leaf in-pkts-late { + type uint64; + description + "PN of packet outside replay window & + validateFrames strict"; + } + leaf in-pkts-ok { + type uint64; + description + "packets with no error"; + } + leaf in-pkts-invalid { + type uint64; + description + "packet not valid & validateFrames !strict"; + } + leaf in-pkts-not-valid { + type uint64; + description + "packet not valid & validateFrames strict"; + } + leaf in-pkts-not-using-sa { + type uint64; + description + "packet assigned to SA not in use & + validateFrames strict"; + } + leaf in-pkts-unused-sa { + type uint64; + description + "packet assigned to SA not in use & + validateFrames !strict"; + } + leaf in-octets-decrypted-validated1 { + type uint64; + description + "octets1 decrypted/validated"; + } + leaf in-octets-validated { + type uint64; + description + "octets validated"; + } + leaf in-pkts-untagged-hit { + type uint64; + description + "packet assigned to SA but not tagged + (non-standard)"; + } + } + + grouping PL-X120-TX-SA-STATS { + description + "Per SA Egress Stats"; + leaf out-pkts-too-long { + type uint64; + description + "packets exceeding egress MTU"; + } + leaf out-pkts-encrypted-protected { + type uint64; + description + "packets encrypted/protected"; + } + leaf out-octets-encrypted-protected1 { + type uint64; + description + "octets1 encrypted/protected ?"; + } + } + + grouping PL-X120-STATS { + description + "Stats Details"; + container tx-sa-stats { + description + "Tx SA Stats"; + uses PL-X120-TX-SA-STATS; + } + container rx-sa-stats { + description + "Rx SA Stats"; + uses PL-X120-RX-SA-STATS; + } + container tx-interface-macsec-stats { + description + "Tx interface Macsec Stats"; + uses PL-X120-TX-INTERFACE-MACSEC-STATS; + } + container rx-interface-macsec-stats { + description + "Rx interface Macsec Stats"; + uses PL-X120-RX-INTERFACE-MACSEC-STATS; + } + } + + grouping PL-MV88EC808-GLOBAL-STAT-E { + description + "PL MV88EC808 GLOBAL STAT E"; + leaf transform-error-pkts { + type uint64; + description + "internal errors in the MACSec core"; + } + leaf out-pkt-ctrl { + type uint64; + description + "control packet"; + } + leaf out-pkts-unknown-sa { + type uint64; + description + "not matching any SA"; + } + leaf out-pkts-untagged { + type uint64; + description + "untagged when protectFrames not set"; + } + leaf out-over-sized-pkts { + type uint64; + description + "packet greater than the configured MTU"; + } + } + + grouping PL-MV88EC808-GLOBAL-STAT-I { + description + "PL MV88EC808 GLOBAL STAT I"; + leaf transform-error-pkts { + type uint64; + description + "internal errors in the MACSec core "; + } + leaf in-pkt-ctrl { + type uint64; + description + "ingress control packet"; + } + leaf in-pkt-no-tag { + type uint64; + description + "untagged & validateFrames is strict"; + } + leaf in-pkts-untagged { + type uint64; + description + "untagged & validateFrames is !strict"; + } + leaf in-pkts-tagged { + type uint64; + description + "valid MACSec tag - non Std"; + } + leaf in-pkt-bad-tag { + type uint64; + description + "invalid MACSec tag or ICV"; + } + leaf in-pkts-untagged-miss { + type uint64; + description + "untagged did not match any SA"; + } + leaf in-pkt-no-sci { + type uint64; + description + "no valid SC & validateFrames is strict"; + } + leaf in-pkts-unknown-sci { + type uint64; + description + "no valid SC found & validateFrames is !strict"; + } + leaf in-consist-check-controlled-not-pass { + type uint64; + description + "ccfailed destined to controlled port"; + } + leaf in-consist-check-uncontrolled-not-pass { + type uint64; + description + "ccfailed destined to uncontrolled port"; + } + leaf in-consist-check-controlled-pass { + type uint64; + description + "ccpassed destined to controlled port"; + } + leaf in-consist-check-uncontrolled-pass { + type uint64; + description + "ccpassed destined to uncontrolled port"; + } + leaf in-over-sized-pkts { + type uint64; + description + " greater than configured MTU"; + } + } + + grouping PL-MV88EC808-SC-STAT-I { + description + "PL MV88EC808 SC STAT I"; + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf sa-no { + type uint32; + description + "Sa Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf in-pkts-unchecked { + type uint64; + description + "frame not valid & validateFrames disabled"; + } + leaf in-pkts-delayed { + type uint64; + description + "PN of packet outside replay window & + validateFrames !strict"; + } + leaf in-pkts-late { + type uint64; + description + "PN of packet outside replay window & + validateFrames strict"; + } + leaf in-pkts-ok { + type uint64; + description + "packets with no error"; + } + leaf in-pkts-invalid { + type uint64; + description + "packet not valid & validateFrames !strict"; + } + leaf in-pkts-not-valid { + type uint64; + description + "packet not valid & validateFrames strict "; + } + leaf in-pkts-not-using-sa { + type uint64; + description + "packet assigned to SA not in use & + validateFrames strict"; + } + leaf in-pkts-unused-sa { + type uint64; + description + "packet assigned to SA not in use & + validateFrames !strict"; + } + leaf in-pkts-untagged-hit { + type uint64; + description + "packet assigned to SA but not tagged + (non-standard)"; + } + leaf in-octets-decrypted-validated1 { + type uint64; + description + "octets1 decrypted/validated"; + } + leaf in-octets-decrypted-validated2 { + type uint64; + description + "octets2 decrypted/validated"; + } + } + + grouping PL-MV88EC808-SC-STAT-E { + description + "PL MV88EC808 SC STAT E"; + leaf an-no { + type uint8; + description + "AN Number"; + } + leaf sa-no { + type uint32; + description + "Sa Number"; + } + leaf port-no { + type uint32; + description + "Port Number"; + } + leaf out-pkts-too-long { + type uint64; + description + "exceeding egress MTU"; + } + leaf out-pkts-encrypted-protected { + type uint64; + description + "encrypted/protected"; + } + leaf out-octets-encrypted-protected1 { + type uint64; + description + "octets1 encrypted/protected"; + } + leaf out-octets-encrypted-protected2 { + type uint64; + description + "octets2 encrypted/protected"; + } + } + + grouping PL-MV88EC808-STATS { + description + "PL MV88EC808 STATS"; + container eg-stat { + description + "Egress SA Stats of active SA"; + uses PL-MV88EC808-SC-STAT-E; + } + container glb-stat-i { + description + "Igress Global Stats"; + uses PL-MV88EC808-GLOBAL-STAT-I; + } + container glb-stat-e { + description + "Egress Global Stats"; + uses PL-MV88EC808-GLOBAL-STAT-E; + } + list ig-stat { + description + "Igress SA Stats of active SA"; + uses PL-MV88EC808-SC-STAT-I; + } + } + + grouping PL-ES200-PORT-LEVEL-STATS { + description + "Port Level Stats"; + leaf multi-flow-match { + type uint64; + description + "Pkts matching multiple flow entries"; + } + leaf parser-dropped { + type uint64; + description + "Pkts dropped by header parser as invalid"; + } + leaf flow-miss { + type uint64; + description + "Pkts matching none of flow entries"; + } + leaf pkts-ctrl { + type uint64; + description + "Control pkts forwarded"; + } + leaf pkts-data { + type uint64; + description + "Data pkts forwarded"; + } + leaf pkts-dropped { + type uint64; + description + "Pkts dropped by classifier"; + } + leaf pkts-err-in { + type uint64; + description + "Pkts received with an error indication"; + } + } + + grouping PL-ES200-RX-INTERFACE-MACSEC-STATS { + description + "Per Interface Macsec Ingress Stats"; + leaf transform-error-pkts { + type uint64; + description + "counter to count internal errors in the MACSec + core"; + } + leaf in-pkt-ctrl { + type uint64; + description + "ingress packet that is classified as control + packet"; + } + leaf in-pkt-no-tag { + type uint64; + description + "ingress packet untagged & validateFrames is + strict"; + } + leaf in-pkts-untagged { + type uint64; + description + "ingress packet untagged & validateFrames is + !strict"; + } + leaf in-pkt-bad-tag { + type uint64; + description + "ingress frames received with an invalid MACSec + tag or ICV + added with next one gives InPktsSCIMiss"; + } + leaf in-pkt-no-sci { + type uint64; + description + "correctly tagged ingress frames for which no + valid SC found & + validateFrames is strict"; + } + leaf in-pkts-unknown-sci { + type uint64; + description + "correctly tagged ingress frames for which no + valid SC found & + validateFrames is !strict"; + } + leaf in-pkts-tagged-ctrl { + type uint64; + description + "ingress packets that are control or KaY packets"; + } + leaf in-octets-unctrl { + type uint64; + description + "Octets rx on uncontrolled port"; + } + leaf in-octets-ctrl { + type uint64; + description + "Octets rx on controlled port"; + } + leaf in-ucast-pkts-unctrl { + type uint64; + description + "Unicast pkts rx on uncontrolled port"; + } + leaf in-ucast-pkts-ctrl { + type uint64; + description + "Unicast pkts rx on controlled port"; + } + leaf in-mcast-pkts-unctrl { + type uint64; + description + "Multicast pkts rx on uncontrolled port"; + } + leaf in-mcast-pkts-ctrl { + type uint64; + description + "Multicast pkts rx on controlled port"; + } + leaf in-bcast-pkts-unctrl { + type uint64; + description + "Broadcast pkts rx on uncontrolled port"; + } + leaf in-bcast-pkts-ctrl { + type uint64; + description + "Broadcast pkts rx on controlled port"; + } + leaf in-rx-drop-pkts-unctrl { + type uint64; + description + "Control pkts dropped due to overrun"; + } + leaf in-rx-drop-pkts-ctrl { + type uint64; + description + "Data pkts dropped due to overrun"; + } + leaf in-rx-error-pkts-unctrl { + type uint64; + description + "Control pkts error-terminated due to overrun"; + } + leaf in-rx-error-pkts-ctrl { + type uint64; + description + "Data pkts error-terminated due to overrun"; + } + leaf in-drop-pkts-class { + type uint64; + description + "Packets dropped due to overflow in + classification pipeline"; + } + leaf in-drop-pkts-data { + type uint64; + description + "Packets dropped due to overflow in processing + pipeline"; + } + } + + grouping PL-ES200-TX-INTERFACE-MACSEC-STATS { + description + "Per Interface Macsec Egress Stats"; + leaf transform-error-pkts { + type uint64; + description + "counter to count internal errors in the MACSec + core"; + } + leaf out-pkt-ctrl { + type uint64; + description + "egress packet that is classified as control + packet"; + } + leaf out-pkts-untagged { + type uint64; + description + "egress packet to go out untagged when + protectFrames not set"; + } + leaf out-octets-unctrl { + type uint64; + description + "Octets tx on uncontrolled port"; + } + leaf out-octets-ctrl { + type uint64; + description + "Octets tx on controlled port"; + } + leaf out-octets-common { + type uint64; + description + "Octets tx on common port"; + } + leaf out-ucast-pkts-unctrl { + type uint64; + description + "Unicast pkts tx on uncontrolled port"; + } + leaf out-ucast-pkts-ctrl { + type uint64; + description + "Unicast pkts tx on controlled port"; + } + leaf out-mcast-pkts-unctrl { + type uint64; + description + "Multicast pkts tx on uncontrolled port"; + } + leaf out-mcast-pkts-ctrl { + type uint64; + description + "Multicast pkts tx on controlled port"; + } + leaf out-bcast-pkts-unctrl { + type uint64; + description + "Broadcast pkts tx on uncontrolled port"; + } + leaf out-bcast-pkts-ctrl { + type uint64; + description + "Broadcast pkts tx on controlled port"; + } + leaf out-rx-drop-pkts-unctrl { + type uint64; + description + "Control pkts dropped due to overrun"; + } + leaf out-rx-drop-pkts-ctrl { + type uint64; + description + "Data pkts dropped due to overrun"; + } + leaf out-rx-err-pkts-unctrl { + type uint64; + description + "Control pkts error-terminated due to overrun"; + } + leaf out-rx-err-pkts-ctrl { + type uint64; + description + "Data pkts error-terminated due to overrun"; + } + leaf out-drop-pkts-class { + type uint64; + description + "Packets dropped due to overflow in + classification pipeline"; + } + leaf out-drop-pkts-data { + type uint64; + description + "Packets dropped due to overflow in processing + pipeline"; + } + } + + grouping PL-ES200-RX-SC-MACSEC-STATS { + description + "RX SC Stats"; + leaf in-pkts-sa-not-in-use { + type uint64; + description + "Packets received with SA not in use"; + } + } + + grouping PL-ES200-TX-SC-MACSEC-STATS { + description + "TX SC Stats"; + leaf out-pkts-sa-not-in-use { + type uint64; + description + "Packets received with SA not in use"; + } + } + + grouping PL-ES200-RX-SA-STATS { + description + "Per SA Ingress Stats"; + leaf in-pkts-unchecked { + type uint64; + description + "frame not valid & validateFrames disabled"; + } + leaf in-pkts-delayed { + type uint64; + description + "PN of packet outside replay window & + validateFrames !strict"; + } + leaf in-pkts-late { + type uint64; + description + "PN of packet outside replay window & + validateFrames strict"; + } + leaf in-pkts-ok { + type uint64; + description + "packets with no error"; + } + leaf in-pkts-invalid { + type uint64; + description + "packet not valid & validateFrames !strict"; + } + leaf in-pkts-not-valid { + type uint64; + description + "packet not valid & validateFrames strict"; + } + leaf in-pkts-not-using-sa { + type uint64; + description + "packet assigned to SA not in use & + validateFrames strict"; + } + leaf in-pkts-unused-sa { + type uint64; + description + "packet assigned to SA not in use & + validateFrames !strict"; + } + leaf in-octets-decrypted-validated1 { + type uint64; + description + "octets1 decrypted/validated"; + } + leaf in-octets-validated { + type uint64; + description + "octets validated"; + } + } + + grouping PL-ES200-TX-SA-STATS { + description + "Per SA Egress Stats"; + leaf out-pkts-too-long { + type uint64; + description + "packets exceeding egress MTU"; + } + leaf out-pkts-encrypted-protected { + type uint64; + description + "packets encrypted/protected"; + } + leaf out-octets-encrypted-protected1 { + type uint64; + description + "octets1 encrypted/protected ?"; + } + } + + grouping PL-ES200-STATS { + description + "Stats Details"; + container tx-sa-stats { + description + "Tx SA Stats"; + uses PL-ES200-TX-SA-STATS; + } + container rx-sa-stats { + description + "Rx SA Stats"; + uses PL-ES200-RX-SA-STATS; + } + container tx-sc-macsec-stats { + description + "Tx SC Macsec Stats"; + uses PL-ES200-TX-SC-MACSEC-STATS; + } + container rx-sc-macsec-stats { + description + "Rx SC Macsec Stats"; + uses PL-ES200-RX-SC-MACSEC-STATS; + } + container tx-interface-macsec-stats { + description + "Tx interface Macsec Stats"; + uses PL-ES200-TX-INTERFACE-MACSEC-STATS; + } + container rx-interface-macsec-stats { + description + "Rx interface Macsec Stats"; + uses PL-ES200-RX-INTERFACE-MACSEC-STATS; + } + container tx-port-stats { + description + "Port level TX Stats"; + uses PL-ES200-PORT-LEVEL-STATS; + } + container rx-port-stats { + description + "Port level RX Stats"; + uses PL-ES200-PORT-LEVEL-STATS; + } + } + + grouping PL-XLFPGA-MACSEC-RX-SA-STATS { + description + "Rx SA Level Stats"; + leaf an { + type uint64; + description + "Current Rx AN"; + } + leaf sa-ok-pkts { + type uint64; + description + "Rx Ok Pkts for Current AN"; + } + leaf sa-not-using-pkts { + type uint64; + description + "Rx Pkts not using SA for Current AN"; + } + leaf sa-unused-pkts { + type uint64; + description + "Rx Pkts Unused Pkts for Current AN"; + } + leaf sa-not-valid-pkts { + type uint64; + description + "Rx Not Valid Pkts for Current AN"; + } + leaf sa-invalid-pkts { + type uint64; + description + "Rx Invalid Pkts for current AN"; + } + } + + grouping PL-XLFPGA-MACSEC-RX-STATS { + description + "Per SC and SA Level Rx Stats"; + leaf sc-decrypted-octets { + type uint64; + description + "Rx Octets Decrypted"; + } + leaf sc-no-tag-pkts { + type uint64; + description + "Rx No Tag Packets"; + } + leaf sc-untagged-pkts { + type uint64; + description + "Rx Untagged Packets"; + } + leaf sc-bad-tag-pkts { + type uint64; + description + "Rx Bad Tag Packets"; + } + leaf sc-late-pkts { + type uint64; + description + "Rx Late Pkts"; + } + leaf sc-delayed-pkts { + type uint64; + description + "Rx Delayed Pkts"; + } + leaf sc-unchecked-pkts { + type uint64; + description + "Rx Unchecked Pkts"; + } + leaf sc-no-sci-pkts { + type uint64; + description + "Rx No SCI Pkts"; + } + leaf sc-unknown-sci-pkts { + type uint64; + description + "Rx Unknown SCI Pkts"; + } + leaf sc-ok-pkts { + type uint64; + description + "Rx Pkts Ok"; + } + leaf sc-not-using-pkts { + type uint64; + description + "Rx Pkts Not Using SA"; + } + leaf sc-unused-pkts { + type uint64; + description + "Rx Pkts Unused SA"; + } + leaf sc-not-valid-pkts { + type uint64; + description + "Rx Not Valid Pkts"; + } + leaf sc-invalid-pkts { + type uint64; + description + "Rx Pkts Invalid"; + } + leaf sc-overrun-pkts { + type uint64; + description + "Rx Overrun Pkts"; + } + leaf sc-bypass-pkts { + type uint64; + description + "Rx Bypass Packets"; + } + leaf sc-eapol-pkts { + type uint64; + description + "Rx Eapol Packets"; + } + leaf sc-dropped-pkts { + type uint64; + description + "Rx Dropped Packets"; + } + list rx-sa-stat { + description + "Rx SA Level Stats"; + uses PL-XLFPGA-MACSEC-RX-SA-STATS; + } + } + + grouping PL-XLFPGA-MACSEC-TX-STATS { + description + "Per SC and SA Level Tx Stats"; + leaf sc-encrypted-octets { + type uint64; + description + "Tx Octets Encrypted"; + } + leaf sc-toolong-pkts { + type uint64; + description + "Tx Pkts Too Long"; + } + leaf sc-encrypted-pkts { + type uint64; + description + "Tx packets Encrypted"; + } + leaf sc-untagged-pkts { + type uint64; + description + "Tx Untagged Packets"; + } + leaf sc-overrun-pkts { + type uint64; + description + "Tx Overrun Packets"; + } + leaf sc-bypass-pkts { + type uint64; + description + "Tx Bypass Packets"; + } + leaf sc-eapol-pkts { + type uint64; + description + "Tx Eapol Packets"; + } + leaf sc-dropped-pkts { + type uint64; + description + "Tx Dropped Packets"; + } + leaf current-an { + type uint64; + description + "Current Tx AN"; + } + leaf sa-encrypted-pkts { + type uint64; + description + "Current Tx SA Encrypted Packets"; + } + } + + grouping PL-XLFPGA-STATS { + description + "XLFPGA Stats Details"; + container macsec-tx-stats { + description + "Tx SC and SA Level Stats"; + uses PL-XLFPGA-MACSEC-TX-STATS; + } + container macsec-rx-stats { + description + "Rx SC and SA Level Stats"; + uses PL-XLFPGA-MACSEC-RX-STATS; + } + } + + grouping PL-MACSEC-STATS-T-EXT { + description + "PL MACSEC STATS T EXT"; + container xlfpga-stats { + when "../type = 'xlmsfpga'" { + description + "../type = 'XLMSFPGA'"; + } + description + "XLFPGA Stats"; + uses PL-XLFPGA-STATS; + } + container es200-stats { + when "../type = 'apm-es200'" { + description + "../type = 'APM_ES200'"; + } + description + "ES200 Stats"; + uses PL-ES200-STATS; + } + container mv88ec808-stats { + when "../type = 'mv88ec808'" { + description + "../type = 'MV88EC808'"; + } + description + "MV88EC808 Stats"; + uses PL-MV88EC808-STATS; + } + container x120-stats { + when "../type = 'apm-x120'" { + description + "../type = 'APM_X120'"; + } + description + "X120 Stats"; + uses PL-X120-STATS; + } + container metadx-stats { + when "../type = 'meta-dx1'" { + description + "../type = 'META_DX1'"; + } + description + "META_DX1 Stats"; + uses PL-METADX-STATS; + } + container vsc-stats { + when "../type = 'vtss'" { + description + "../type = 'VTSS'"; + } + description + "VTSS Stats"; + uses PL-VSC-STATS; + } + container mt3722-stats { + when "../type = 'media-tek'" { + description + "../type = 'MEDIA_TEK'"; + } + description + "MEDIA_TEK Stats"; + uses PL-MT3722-STATS; + } + leaf type { + type Macsec-phy-vendor; + description + "type"; + } + } + + grouping PL-MACSEC-STATS { + description + "Per SA Stats Counters"; + container ext { + description + "ext"; + uses PL-MACSEC-STATS-T-EXT; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper.yang new file mode 100644 index 000000000..d91adcf2f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-pl-oper.yang @@ -0,0 +1,136 @@ +module Cisco-IOS-XR-crypto-macsec-pl-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-macsec-pl-oper"; + prefix crypto-macsec-pl-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-crypto-macsec-pl-oper-sub1 { + revision-date 2022-04-08; + } + + 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 crypto-macsec-pl package operational data. + + This module contains definitions + for the following management objects: + macsec-platform: MACSec operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-08 { + description + "Revison Update doe macsec pl oper"; + semver:module-version "2.1.0"; + } + revision 2020-11-05 { + description + "Revison Update doe macsec pl oper"; + semver:module-version "2.0.0"; + } + revision 2019-12-05 { + description + "Revison Update doe macsec pl oper"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container macsec-platform { + config false; + description + "MACSec operational data"; + container nodes { + description + "NodeTable for all the nodes"; + list node { + key "node-name"; + description + "Node where macsec interfaces exist"; + container interfaces { + description + "Table of Interfaces"; + list interface { + key "name"; + description + "Interface Where Macsec is configured"; + container hw-statistics { + description + "The Hardware Statistics"; + uses PL-MACSEC-STATS; + } + container hw-sas { + description + "Table of Hardware SAs"; + list hw-sa { + key "sa-id"; + description + "Hardware Security Association"; + leaf sa-id { + type uint32; + description + "SA ID"; + } + uses PL-MACSEC-SA; + } + } + container hw-flow-s { + description + "Table of Hardware Flows"; + list hw-flow { + key "flow-id"; + description + "Hardware Flow"; + leaf flow-id { + type uint32; + description + "FLOW ID"; + } + uses PL-MACSEC-FLOW; + } + } + container sw-statistics { + description + "The Software Statistics"; + uses PL-MACSEC-STATS; + } + leaf name { + type xr:Interface-name; + description + "Value"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper-sub1.yang new file mode 100644 index 000000000..33bdc7b25 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper-sub1.yang @@ -0,0 +1,293 @@ +submodule Cisco-IOS-XR-crypto-macsec-secy-oper-sub1 { + belongs-to Cisco-IOS-XR-crypto-macsec-secy-oper { + prefix Cisco-IOS-XR-crypto-macsec-secy-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-macsec-secy package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-08 { + description + "Added Standby Container for MKA operational info"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MACSEC-RX-SA-STATS { + description + "MACSEC RX SA STATS"; + leaf in-pkts-ok { + type uint64; + description + "InPktsOK"; + } + leaf in-pkts-invalid { + type uint64; + description + "InPktsInvalid"; + } + leaf in-pkts-not-valid { + type uint64; + description + "InPktsNotValid"; + } + leaf in-pkts-not-using-sa { + type uint64; + description + "InPktsNotUsingSA"; + } + leaf in-pkts-unused-sa { + type uint64; + description + "InPktsUnusedSA"; + } + leaf next-pn { + type uint64; + description + "NextPN"; + } + } + + grouping MACSEC-RX-SC-STATS { + description + "MACSEC RX SC STATS"; + leaf rx-sci { + type uint64; + description + "Rx SCI"; + } + leaf in-pkts-unchecked { + type uint64; + description + "InPktsUnchecked"; + } + leaf in-pkts-delayed { + type uint64; + description + "InPktsDelayed"; + } + leaf in-pkts-late { + type uint64; + description + "InPktsLate"; + } + leaf in-pkts-ok { + type uint64; + description + "InPktsOK"; + } + leaf in-pkts-invalid { + type uint64; + description + "InPktsInvalid"; + } + leaf in-pkts-not-valid { + type uint64; + description + "InPktsNotValid"; + } + leaf in-pkts-not-using-sa { + type uint64; + description + "InPktsNotUsingSA"; + } + leaf in-pkts-unused-sa { + type uint64; + description + "InPktsUnusedSA"; + } + leaf in-pkts-untagged-hit { + type uint64; + description + "InPktsUntaggedHit"; + } + leaf in-octets-validated { + type uint64; + description + "InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint64; + description + "InOctetsDecrypted"; + } + list rxsa-stat { + description + "rxsa stats"; + uses MACSEC-RX-SA-STATS; + } + } + + grouping MACSEC-TX-SA-STATS { + description + "MACSEC TX SA STATS"; + leaf out-pkts-protected { + type uint64; + description + "OutPktsProtected"; + } + leaf out-pkts-encrypted { + type uint64; + description + "OutPktsEncrypted"; + } + leaf next-pn { + type uint64; + description + "NextPN"; + } + } + + grouping MACSEC-TX-SC-STATS { + description + "MACSEC TX SC STATS"; + leaf tx-sci { + type uint64; + description + "Tx SCI"; + } + leaf out-pkts-protected { + type uint64; + description + "OutPktsProtected"; + } + leaf out-pkts-encrypted { + type uint64; + description + "OutPktsEncrypted"; + } + leaf out-octets-protected { + type uint64; + description + "OutOctetsProtected"; + } + leaf out-octets-encrypted { + type uint64; + description + "OutOctetsEncrypted"; + } + leaf out-pkts-too-long { + type uint64; + description + "OutPktsTooLong"; + } + list txsa-stat { + description + "tx sa stats"; + uses MACSEC-TX-SA-STATS; + } + } + + grouping MACSEC-IF-STATS { + description + "MACSEC IF STATS"; + leaf in-pkts-untagged { + type uint64; + description + "InPktsUntagged"; + } + leaf in-pkts-no-tag { + type uint64; + description + "InPktsNoTag"; + } + leaf in-pkts-bad-tag { + type uint64; + description + "InPktsBadTag"; + } + leaf in-pkts-unknown-sci { + type uint64; + description + "InPktsUnknownSCI"; + } + leaf in-pkts-no-sci { + type uint64; + description + "InPktsNoSCI"; + } + leaf in-pkts-overrun { + type uint64; + description + "InPktsOverrun"; + } + leaf in-octets-validated { + type uint64; + description + "InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint64; + description + "InOctetsDecrypted"; + } + leaf out-pkts-untagged { + type uint64; + description + "OutPktsUntagged"; + } + leaf out-pkts-too-long { + type uint64; + description + "OutPktsTooLong"; + } + leaf out-octets-protected { + type uint64; + description + "OutOctetsProtected"; + } + leaf out-octets-encrypted { + type uint64; + description + "OutOctetsEncrypted"; + } + } + + grouping MACSEC-SECY-STATS { + description + "MACSEC SECY STATS"; + container intf-stats { + description + "Interface stats"; + uses MACSEC-IF-STATS; + } + container tx-sc-stats { + description + "Tx SC Stats"; + uses MACSEC-TX-SC-STATS; + } + list rx-sc-stats { + description + "RX SC Stats List"; + uses MACSEC-RX-SC-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper.yang new file mode 100644 index 000000000..74b9194a7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-macsec-secy-oper.yang @@ -0,0 +1,85 @@ +module Cisco-IOS-XR-crypto-macsec-secy-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-macsec-secy-oper"; + prefix crypto-macsec-secy-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-crypto-macsec-secy-oper-sub1 { + revision-date 2022-02-08; + } + + 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 crypto-macsec-secy package operational data. + + This module contains definitions + for the following management objects: + macsec: Macsec operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-08 { + description + "Added Standby Container for MKA operational info"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container macsec { + config false; + description + "Macsec operational data"; + container standby { + description + "MACsec Operational Data from Standby"; + } + container secy { + description + "MAC Security Entity"; + container interfaces { + description + "MAC Security Data"; + list interface { + key "name"; + description + "MAC Security Data for the Interface"; + container stats { + description + "MACsec Stats"; + uses MACSEC-SECY-STATS; + } + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg.yang new file mode 100644 index 000000000..58e137403 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg.yang @@ -0,0 +1,85 @@ +module Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-mibs-ipsecflowmon-cfg"; + prefix crypto-mibs-ipsecflowmon-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 crypto-mibs-ipsecflowmon package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container ip-sec { + description + "Enable CISCO-IPSEC-FLOW-MONITOR-MIB + notifications"; + leaf tunnel-stop { + type empty; + description + "Enable cipSecTunnelStop notification"; + } + leaf tunnel-start { + type empty; + description + "Enable cipSecTunnelStart notification"; + } + } + } + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container isakmp { + description + "Enable CISCO-IPSEC-FLOW-MONITOR-MIB + notifications"; + leaf tunnel-stop { + type empty; + description + "Enable cikeTunnelStop notification"; + } + leaf tunnel-start { + type empty; + description + "Enable cikeTunnelStart notification"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-cfg.yang new file mode 100644 index 000000000..24248dcef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-cfg.yang @@ -0,0 +1,92 @@ +module Cisco-IOS-XR-crypto-sam-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-sam-cfg"; + prefix crypto-sam-cfg; + + 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 crypto-sam package configuration. + + This module contains definitions + for the following management objects: + sam: Software Authentication Manager (SAM) Config + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-12 { + description + "Associated task-name added"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-21 { + description + "Resolving dependency issue with SAM"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Crypto-sam-action { + type enumeration { + enum "proceed" { + value 1; + description + "To respond YES to the SAM prompt"; + } + enum "terminate" { + value 2; + description + "To respond NO to the SAM prompt"; + } + } + description + "Crypto sam action"; + } + + container sam { + description + "Software Authentication Manager (SAM) Config"; + container prompt-interval { + presence "Indicates a prompt-interval node is configured."; + description + "Set prompt interval at reboot time"; + leaf action { + type Crypto-sam-action; + mandatory true; + description + "Respond to SAM prompt either Proceed/Terminate"; + } + leaf prompt-time { + type uint32 { + range "0..300"; + } + units "second"; + mandatory true; + description + "Prompt time from 0 - 300 seconds"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper-sub1.yang new file mode 100644 index 000000000..cc14ff243 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper-sub1.yang @@ -0,0 +1,382 @@ +submodule Cisco-IOS-XR-crypto-sam-oper-sub1 { + belongs-to Cisco-IOS-XR-crypto-sam-oper { + prefix Cisco-IOS-XR-crypto-sam-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-sam package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Log-tables { + type enumeration { + enum "unkown" { + description + "Table is not known"; + } + enum "memory-digest-table" { + description + "Table is memory digest table"; + } + enum "system-database-digest" { + description + "Table is system database digest table"; + } + enum "sam-tables" { + description + "Table is SAM table"; + } + } + description + "Log tables"; + } + + typedef Certificate-issuer { + type enumeration { + enum "unknown" { + description + "Issuer is not known"; + } + enum "code-signing-server-certificate-authority" { + description + "Issuer is code signing server certificate + authority"; + } + } + description + "Certificate issuers"; + } + + typedef Log-error { + type enumeration { + enum "unknown" { + description + "Log error is not known"; + } + enum "log-message-error" { + description + "Log error is message error"; + } + enum "get-issuer-name-failed" { + description + "Log error is get issuer name failed"; + } + } + description + "Log errors"; + } + + typedef Log-code { + type enumeration { + enum "unknown" { + description + "Log code is not known"; + } + enum "sam-server-restared-router-reboot" { + description + "Log code is SAM server restarted through router + reboot"; + } + enum "sam-server-restared" { + description + "Log code is SAM server restarted"; + } + enum "added-certificate-in-table" { + description + "Log code is Added certificate in table"; + } + enum "copied-certificate-in-table" { + description + "Log code is Copied certificate in table"; + } + enum "certificate-flag-changed" { + description + "Log code is Certificate flag changed"; + } + enum "validated-certificate" { + description + "Log code is validated ceritificate"; + } + enum "certificate-expired-detected" { + description + "Log code is Ceritificate expired detected"; + } + enum "certificate-revoked-detected" { + description + "Log code is Ceritificate revoked detected"; + } + enum "ca-certificate-expired-detected" { + description + "Log code is CA Ceritificate expired detected"; + } + enum "ca-certificate-revoked-detected" { + description + "Log code is CA Ceritificate revoked detected"; + } + enum "deleted-certificate-from-table" { + description + "Log code is Deleted certificate from table"; + } + enum "crl-added-updated-in-table" { + description + "Log code is CRL added/updated in table"; + } + enum "checked-memory-digest" { + description + "Log code is Checked memory digest"; + } + enum "nvram-digest-mismatch-detected" { + description + "Log code is NVRAM digest Mistmatch detected"; + } + enum "insecure-backup-file-detected" { + description + "Log code is Insecure backup file detected"; + } + enum "error-restore-operation" { + description + "Log code is Error during restore operation, + backup file might have not been intact"; + } + enum "backup-file-on-nvram-deleted" { + description + "Log code is Found backup file on NVRAM for SAM + log had been deleted"; + } + enum "sam-log-file-recovered-from-system-database" { + description + "Log code is SAM log backup file recovered from + system database"; + } + enum "validated-elf" { + description + "Log code is validated ELF"; + } + enum "namespace-deleted-recovered-by-sam" { + description + "Log code is SAM system database name space + deleted/recovered by SAM"; + } + } + description + "Log code types"; + } + + grouping ISSUER-INFO { + description + "CRL issuer information"; + leaf common-name { + type string; + description + "Common name"; + } + leaf organization { + type string; + description + "Organization"; + } + leaf country { + type string; + description + "Country"; + } + } + + grouping CRYPTO-SAM-CRL-INFO { + description + "CRL table entry information"; + container issuer { + description + "Issuer name"; + uses ISSUER-INFO; + } + leaf crl-index { + type uint16; + description + " CRL index"; + } + leaf updates { + type string; + description + "Updated time of CRL is displayed"; + } + } + + grouping FLAGS { + description + "Certificate flags"; + leaf is-trusted { + type boolean; + description + "Trusted flag"; + } + leaf is-revoked { + type boolean; + description + "Revoked flag"; + } + leaf is-expired { + type boolean; + description + "Expired flag"; + } + leaf is-validated { + type boolean; + description + "Validated flag"; + } + } + + grouping CRYPTO-SAM-CERTIFICATE-COMMON { + description + "Certificate table common information"; + container certificate-flags { + description + "Certificate flags"; + uses FLAGS; + } + leaf location { + type string; + description + "Certificate location"; + } + leaf certificate-index { + type uint16; + description + "Certificate index"; + } + } + + grouping LOG-SAM-INFO { + description + "SAM log information"; + leaf time { + type string; + description + "Log time"; + } + leaf code { + type Log-code; + description + "Log code"; + } + leaf target-device { + type string; + description + "Target device"; + } + leaf index { + type uint32; + description + "Device index"; + } + leaf error { + type Log-error; + description + "Log error message"; + } + leaf issuer { + type Certificate-issuer; + description + "Issuer of the certificate"; + } + leaf serial-no { + type string; + description + "Serial number"; + } + leaf sam-table-index { + type uint32; + description + "SAM table index"; + } + leaf update-time { + type string; + description + "Last update time of the certificate"; + } + leaf source-device { + type string; + description + "source device name"; + } + leaf table { + type Log-tables; + description + "Log table information"; + } + } + + grouping CRYPTO-LOG { + description + "SAM logs data"; + leaf total-entries { + type uint32; + description + "Total log entries available"; + } + leaf entries-shown { + type uint32; + description + "Total entries shown"; + } + list logs { + description + "SAM logs"; + uses LOG-SAM-INFO; + } + } + + grouping CRYPTO-SAM-SYSINFO { + description + "SAM system information"; + leaf is-running { + type boolean; + description + "True if SAM status information runs"; + } + leaf prompt-interval { + type uint32; + units "second"; + description + "Prompt interval atreboot time in seconds"; + } + leaf is-default-response { + type boolean; + description + "True if promptdefault response is true"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper.yang new file mode 100644 index 000000000..2c04c8174 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-sam-oper.yang @@ -0,0 +1,161 @@ +module Cisco-IOS-XR-crypto-sam-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-sam-oper"; + prefix crypto-sam-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-crypto-sam-oper-sub1 { + revision-date 2019-04-05; + } + + 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 crypto-sam package operational data. + + This module contains definitions + for the following management objects: + sam: Software authentication manager certificate information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container sam { + config false; + description + "Software authentication manager certificate + information"; + container system-information { + description + "SAM system information"; + uses CRYPTO-SAM-SYSINFO; + } + container log-contents { + description + "SAM log content table information"; + list log-content { + key "number-of-lines"; + description + "Number of lines for SAM log message"; + leaf number-of-lines { + type uint32; + description + "Number of lines"; + } + uses CRYPTO-LOG; + } + } + container devices { + description + "Certificate device table information"; + list device { + key "device-name"; + description + "Certificate table device information"; + container certificate { + description + "Certificate table information"; + container brief { + description + "Certificate table brief information"; + uses CRYPTO-SAM-CERTIFICATE-COMMON; + } + container certificate-indexes { + description + "Certificate detail index table information"; + list certificate-index { + key "index"; + description + "Certificate detail index information"; + container detail { + description + "Certificate table detail information"; + uses CRYPTO-SAM-CERTIFICATE-COMMON; + } + leaf index { + type uint32; + description + "Specify certificate index"; + } + } + } + } + leaf device-name { + type xr:Cisco-ios-xr-string; + description + "Specify device name"; + } + } + } + container packages { + description + "SAM certificate information package"; + list package { + key "package-name"; + description + "SAM certificate information for a specific + package"; + leaf package-name { + type string; + description + "Specify package name"; + } + uses CRYPTO-SAM-CERTIFICATE-COMMON; + } + } + container certificate-revocations { + description + "Certificate revocation list index table + information"; + list certificate-revocation { + key "crl-index"; + description + "Certificate revocation list index information"; + container certificate-revocation-list-detail { + description + "Certificate revocation list detail information"; + uses CRYPTO-SAM-CRL-INFO; + } + leaf crl-index { + type uint32; + description + "CRL index"; + } + } + } + container certificate-revocation-list-summary { + description + "Certificate revocation list summary information "; + uses CRYPTO-SAM-CRL-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-cfg.yang new file mode 100644 index 000000000..8b0fb82f0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-cfg.yang @@ -0,0 +1,793 @@ +module Cisco-IOS-XR-crypto-ssh-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-ssh-cfg"; + prefix crypto-ssh-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 crypto-ssh package configuration. + + This module contains definitions + for the following management objects: + ssh: Secure Shell configuration + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-05-05 { + description + "Added support for client authentication methods order. + 2023-02-22 + Fixing inconsistencies between platforms. + 2022-09-26 + Added value ssh-rsa-cert-v01 to the leaf host-key + 2022-09-05 + Authorized principals command support. + 2022-09-02 + rate-limit max value changed + 2022-06-02 + config to import more auth keys for a user + 2022-03-20 + OpenSSH certificate support. + 2022-02-02 + Disable authentication methods + 2021-11-15 + user-configurable non default port"; + semver:module-version "3.0.0"; + } + revision 2021-08-15 { + description + "Max-Auth-limit min value changed"; + semver:module-version "2.1.0"; + } + revision 2021-05-27 { + description + "Ciphers and key exchange algorithms added. + 2021-05-10 + RSA keys allowed in FIPS mode + 2021-01-20 + SSH v1 support CLI added + 2020-11-18 + Port forwarding cli added. + 2020-08-14 + ED25519 support for XR SSH."; + semver:module-version "2.0.0"; + } + revision 2020-04-30 { + description + "Added CLI to disable hmac-sha2-256 in server and client"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-28 { + description + "Added CLI to disable hmac-sha1"; + } + revision 2019-03-13 { + description + "Added CLI to enable needed ciphers."; + } + revision 2018-09-11 { + description + "Added backup ssh server schema"; + } + revision 2018-05-24 { + description + "Changes in enable cipher aes-cbc schema and added enable cipher 3des-cbc support"; + } + revision 2018-04-04 { + description + "Changes in ssh kexchange algorithms schema"; + } + revision 2017-11-21 { + description + "Resolving dependency issue with SAM"; + } + revision 2017-07-15 { + description + "Fixing client rekey support."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-07-13 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping VRF { + description + "Common node of vrf-table, netconf-vrf-table"; + list vrf { + key "vrf-name"; + description + "Enter VRF name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Enter VRF name"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable to use VRF"; + } + leaf ipv4-access-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "SSH v4 access-list name"; + } + leaf ipv6-access-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "SSH v6 access-list name"; + } + } + } + + grouping KEY-EXCHANGE { + description + "Common node of client-algo, server-algo"; + container key-exchanges { + description + "Key exchange algorithm"; + leaf-list key-exchange { + type string { + length "1..32"; + } + max-elements "9"; + description + "key exchange algorithm"; + } + } + } + + grouping CIPHER { + description + "Common node of client-algo, server-algo"; + container ciphers { + description + "cipher algorithm"; + leaf-list cipher { + type string { + length "1..32"; + } + max-elements "10"; + description + "Cipher algorithm"; + } + } + } + + container ssh { + description + "Secure Shell configuration"; + container client { + description + "Provide SSH client service"; + container client-disable { + description + "disable"; + container client-hmac { + description + "hmac"; + leaf client-hmac-sha512 { + type boolean; + default "false"; + description + "Disable Hmac-sha2-512 negotiation"; + } + leaf client-hmac-sha256 { + type boolean; + default "false"; + description + "Disable Hmac-sha2-256 negotiation"; + } + leaf client-hmac-sha1 { + type boolean; + default "false"; + description + "Disable Hmac-sha1 negotiation"; + } + } + } + container client-algo { + description + "Cisco ssh algorithms"; + uses KEY-EXCHANGE; + uses CIPHER; + } + container client-enable { + description + "clientenable"; + container client-cipher { + description + "Enable AES-CBC and 3DES_CBC for ssh client"; + leaf aes-cbc { + type boolean; + default "false"; + description + "Enable AES-CBC ciphers"; + } + leaf tripledes-cbc { + type boolean; + default "false"; + description + "Enable 3DES-CBC cipher"; + } + } + } + container auth-methods { + presence "Indicates a auth-methods node is configured."; + description + "Set the order of Authentication methods + supported by Client"; + leaf first { + type string { + length "1..50"; + } + mandatory true; + description + "publickey or keyboard or password"; + } + leaf second { + type string { + length "1..50"; + } + mandatory true; + description + "publickey or keyboard or password"; + } + leaf third { + type string { + length "1..50"; + } + mandatory true; + description + "publickey or keyboard or password"; + } + } + leaf rekey-volume { + type uint32 { + range "1024..4095"; + } + default "1024"; + description + "Configure client volume-based rekey for SSH"; + } + leaf host-public-key { + type string; + description + "Filename - where to store known host file"; + } + leaf client-vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Source interface VRF for ssh client sessions"; + } + leaf v2 { + type empty; + description + "Cisco ssh client force protocol version 2 only"; + } + leaf tcp-window-scale { + type uint32 { + range "1..14"; + } + default "1"; + description + "Set SSH Client Tcp Window Scale factor"; + } + leaf rekey-time { + type uint32 { + range "30..1440"; + } + units "minute"; + default "60"; + description + "Configure client time-based rekey for SSH"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface for ssh client sessions"; + } + leaf v1 { + type empty; + description + "Cisco ssh client protocol version 2 and 1"; + } + leaf dscp { + type uint32 { + range "0..63"; + } + description + "Cisco sshd DSCP value"; + } + } + container server { + description + "Provide SSH server service"; + container openssh-enable { + description + "Enable extended feature for OpenSSH + certificates"; + leaf authorized-principal-cmd { + type empty; + description + "Enable AuthorizedPrincipalCommand config"; + } + } + container disable { + description + "disable"; + container hmac { + description + "hmac"; + leaf hmac-sha512 { + type boolean; + default "false"; + description + "Disable Hmac-sha2-512 negotiation"; + } + leaf hmac-sha256 { + type boolean; + default "false"; + description + "Disable Hmac-sha2-256 negotiation"; + } + leaf hmac-sha1 { + type boolean; + default "false"; + description + "Disable Hmac-sha1 negotiation"; + } + } + container auth-methods { + description + "disable authentication method"; + leaf keyboard-interactive { + type empty; + description + "Disable keyboard-interactive authentication"; + } + leaf password { + type empty; + description + "Disable password authentication"; + } + leaf public-key { + type empty; + description + "Disable public-key authentication"; + } + } + } + container enable { + description + "enable"; + container cipher { + description + "Enable AES-CBC and 3DES-CBC ciphers"; + leaf aes-cbc { + type boolean; + default "false"; + description + "Enable aes-cbc ciphers"; + } + leaf tripledes-cbc { + type boolean; + default "false"; + description + "Enable 3des-cbc cipher"; + } + } + } + container vrf-table { + description + "Cisco sshd VRF name"; + uses VRF; + } + container usernames { + description + "Username related Configuration"; + list username { + key "name"; + description + "User Name"; + leaf keystring-second { + type string; + description + "Second Public key for user"; + } + leaf keystring-third { + type string; + description + "Third Public key for user"; + } + leaf keystring { + type string; + description + "Public key for user"; + } + leaf keystring-fourth { + type string; + description + "Fourth Public key for user"; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "User Name"; + } + } + } + container server-algo { + description + "Cisco ssh algorithms"; + container host-key { + presence "Indicates a host-key node is configured."; + description + "Host key algorithm"; + leaf ecdsa-nistp256 { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable ecdsa-nistp256"; + } + leaf ecdsa-nistp384 { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable ecdsa-nistp384"; + } + leaf ecdsa-nistp521 { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable ecdsa-nistp521"; + } + leaf rsa { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable rsa(ssh-rsa,rsa-sha2-256,rsa-sha2-512)"; + } + leaf dsa { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable dsa"; + } + leaf x509v3-ssh-rsa { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable x509-ssh-rsa"; + } + leaf ed25519 { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable ed25519"; + } + leaf rsa-sha512 { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable rsa-sha512"; + } + leaf rsa-sha256 { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable rsa-sha256"; + } + leaf ssh-rsa { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable ssh-rsa"; + } + leaf ssh-rsa-cert-v01 { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Enable ssh-rsa-cert-v01"; + } + } + uses KEY-EXCHANGE; + uses CIPHER; + } + container capability { + description + "Capability"; + leaf netconf-xml { + type boolean; + default "false"; + description + "Enable Netconf-XML stack on port 22"; + } + } + container openssh { + description + "OpenSSH certificates"; + container user-tps { + description + "Cisco ssh server user trustpoints"; + list user-tp { + key "tp-name"; + description + "Openssh trustpoints used for user certificate + validation"; + leaf tp-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Enter User TP name"; + } + } + } + leaf host { + type string { + length "1..128"; + } + description + "Openssh trustpoint from where server will take + its certificate"; + } + } + container netconf-vrf-table { + description + "Cisco sshd Netconf VRF name"; + uses VRF; + } + container certificate { + description + "Cisco ssh server certificate"; + container username { + presence "Indicates a username node is configured."; + description + "field in certificate to be matched with + username"; + leaf common-name { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Use Common-name"; + } + leaf user-principle-name { + type uint32 { + range "0..1"; + } + mandatory true; + description + "use user-principle-name"; + } + } + } + container trustpoint { + description + "Cisco ssh server trustpoints"; + container usertps { + description + "Cisco ssh server user trustpoints"; + list usertp { + key "tp-name"; + description + "trustpoints used for user certificate + validation"; + leaf tp-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Enter User TP name"; + } + } + } + leaf host { + type string { + length "1..128"; + } + description + "trustpoint from where server will take its + certificate"; + } + } + leaf rekey-volume { + type uint32 { + range "1024..4095"; + } + default "1024"; + description + "Configure volume-based rekey for SSH"; + } + leaf session-limit { + type uint32 { + range "1..110"; + } + description + "Cisco sshd session-limit of service requests"; + } + leaf port { + type uint32 { + range "5520..5529"; + } + description + "User configurable non default port number"; + } + leaf port-forwarding { + type uint32 { + range "0..1"; + } + default "0"; + description + "Enable SSH Server port forwarding"; + } + leaf netconf { + type uint32 { + range "1..65535"; + } + default "830"; + description + "port number on which ssh service to be started + for netconf"; + } + leaf v2 { + type empty; + description + "Cisco sshd force protocol version 2 "; + } + leaf tcp-window-scale { + type uint32 { + range "1..14"; + } + default "1"; + description + "Set SSH Server Tcp Window Scale factor"; + } + leaf rekey-time { + type uint32 { + range "30..1440"; + } + units "minute"; + default "60"; + description + "Time Period in minutes, defalut 60"; + } + leaf max-auth-limit { + type uint32 { + range "3..20"; + } + default "20"; + description + "User Configurable max authentication limit"; + } + leaf logging { + type empty; + description + "Enable ssh server logging"; + } + leaf rate-limit { + type uint32 { + range "1..6000"; + } + default "60"; + description + "Cisco sshd rate-limit of service requests"; + } + leaf timeout { + type uint32 { + range "5..120"; + } + units "second"; + default "30"; + description + "Timeout value between 5-120 seconds defalut 30"; + } + leaf v1 { + type empty; + description + "Cisco sshd protocol version 1"; + } + leaf dscp { + type uint32 { + range "0..63"; + } + description + "Cisco sshd DSCP value"; + } + } + container backup-server { + description + "Provide SSH server service"; + container backup-port-vrf { + presence "Indicates a backup-port-vrf node is configured."; + description + "backup server config"; + leaf port { + type uint32 { + range "11000..15000"; + } + mandatory true; + description + "Port number"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "VRF name (max:32 chars)"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub1.yang new file mode 100644 index 000000000..3b238b6e3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub1.yang @@ -0,0 +1,253 @@ +submodule Cisco-IOS-XR-crypto-ssh-oper-sub1 { + belongs-to Cisco-IOS-XR-crypto-ssh-oper { + prefix Cisco-IOS-XR-crypto-ssh-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-ssh package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-14 { + description + "Fixing inconsistencies between platforms. + 2022-09-05 + Authorized principals command support. + 2022-03-20 + OpenSSH certificate support."; + semver:module-version "2.1.0"; + } + revision 2021-06-04 { + description + "Default option for authentication."; + semver:module-version "2.0.0"; + } + revision 2020-01-21 { + description + "Yang support to import pubkey for user in config mode"; + semver:module-version "1.1.0"; + } + revision 2019-07-08 { + description + "Introducing show ssh server CLI."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-08-25 { + description + "Introducing show ssh history CLI."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-06-02 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping SSH-SERVER-PARAMS { + description + "Information about ssh server running parameters"; + leaf version { + type string { + length "0..10"; + } + description + "Version"; + } + leaf port { + type uint32; + description + "SSH Port"; + } + leaf vrf { + type string { + length "0..2000"; + } + description + "Vrfs and acls"; + } + leaf netconfport { + type uint32; + description + "Netconf Port"; + } + leaf netconfvrf { + type string { + length "0..2000"; + } + description + "Netconf vrfs and acls"; + } + leaf netconfver { + type string { + length "0..10"; + } + description + "Netconf Version"; + } + leaf hostkeyalgo { + type string { + length "0..230"; + } + description + "Hostkey algorithms"; + } + leaf kexalgo { + type string { + length "0..230"; + } + description + "Key exchange algorithms"; + } + leaf cipheralgo { + type string { + length "0..230"; + } + description + "Encryption algorithms"; + } + leaf macalgo { + type string { + length "0..230"; + } + description + "Mac algorithms"; + } + leaf backupserver { + type string { + length "0..100"; + } + description + "Backup SSH server"; + } + leaf trustpointhost { + type string { + length "0..128"; + } + description + "Trustpoint for host"; + } + leaf trustpointuser { + type string { + length "0..1289"; + } + description + "Trustpoint for user"; + } + leaf dscp { + type uint32; + description + "Dscp"; + } + leaf ratelimit { + type uint32; + description + "ratelimit"; + } + leaf sessionlimit { + type uint32; + description + "session limit"; + } + leaf rekeytime { + type uint32; + description + "Rekey Time"; + } + leaf rekeyvolume { + type uint32; + description + "Rekey Volume"; + } + leaf windowscalefactor { + type uint32; + description + "Window scale factor"; + } + leaf passwordauthen { + type boolean; + description + "Password Authentication support"; + } + leaf keyboardinteractiveauthen { + type boolean; + description + "Pubkey Authentication support"; + } + leaf pubkeyauthen { + type boolean; + description + "Pubkey Authentication support"; + } + leaf certificateauthen { + type boolean; + description + "Certificate based Authentication support"; + } + leaf portforwarding { + type string { + length "0..10"; + } + description + "port forwarding for ssh server"; + } + leaf maxauthlimit { + type uint32; + description + "Max Auth limit"; + } + leaf certificate-username { + type string { + length "0..50"; + } + description + "SSHD certificate username"; + } + leaf openssh-trustpointhost { + type string { + length "0..128"; + } + description + "Openssh Trustpoint for host"; + } + leaf openssh-trustpointuser { + type string { + length "0..33023"; + } + description + "OpensshTrustpoint for user"; + } + leaf authorized-principals-cmd { + type boolean; + description + "Enable openssh Authorized principals cmd"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub2.yang new file mode 100644 index 000000000..c7989525a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper-sub2.yang @@ -0,0 +1,822 @@ +submodule Cisco-IOS-XR-crypto-ssh-oper-sub2 { + belongs-to Cisco-IOS-XR-crypto-ssh-oper { + prefix Cisco-IOS-XR-crypto-ssh-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-ssh package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-14 { + description + "Fixing inconsistencies between platforms. + 2022-09-05 + Authorized principals command support. + 2022-03-20 + OpenSSH certificate support."; + semver:module-version "2.1.0"; + } + revision 2021-06-04 { + description + "Default option for authentication."; + semver:module-version "2.0.0"; + } + revision 2020-01-21 { + description + "Yang support to import pubkey for user in config mode"; + semver:module-version "1.1.0"; + } + revision 2019-07-08 { + description + "Introducing show ssh server CLI."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-08-25 { + description + "Introducing show ssh history CLI."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-06-02 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Connection { + type enumeration { + enum "undefined" { + value 0; + description + "connection type not yet known"; + } + enum "shell" { + value 1; + description + "Interactive Shell"; + } + enum "exec" { + value 2; + description + "Remote Command Execution"; + } + enum "scp" { + value 3; + description + "Secure Copy"; + } + enum "sftp-subsystem" { + value 4; + description + "Secure File Transfer"; + } + enum "netconf-subsystem" { + value 5; + description + "Netconf Subsystem"; + } + enum "tl1-subsystem" { + value 6; + description + "TL1 Subsystem"; + } + enum "netconf-xml-subsystem" { + value 7; + description + "Netconf XML Subsystem"; + } + enum "port-forwarded-local" { + value 8; + description + "Local Port Forwarded"; + } + } + description + "SSH channel connection types"; + } + + typedef Authen { + type enumeration { + enum "undefined" { + value -1; + description + "Authentication type unknown"; + } + enum "password" { + value 0; + description + "Password"; + } + enum "rsa-public-key" { + value 1; + description + "RSA public key encryption type"; + } + enum "keyboard-interactive" { + value 2; + description + "Keyboard interactive"; + } + enum "x509-rsa-pubkey" { + value 3; + description + "X509 RSA public key "; + } + enum "x509-dsa-pubkey" { + value 4; + description + "X509 DSA public key"; + } + enum "x509-ecdsa521-pubkey" { + value 5; + description + "X509 ECDSA 521 pubkey"; + } + enum "x509-ecdsa384-pubkey" { + value 6; + description + "X509 ECDSA 384 pubkey"; + } + enum "x509-ecdsa256-pubkey" { + value 7; + description + "X509 ECDSA 256 pubkey"; + } + enum "rsa-cert" { + value 8; + description + "OpenSSH RSA cert"; + } + enum "dsa-cert" { + value 9; + description + "OpenSSH DSA cert"; + } + enum "ecdsa-nistp256-cert" { + value 10; + description + "OpenSSH ECDSA256 cert"; + } + enum "ecdsa-nistp384-cert" { + value 11; + description + "OpenSSH ECDSA384 cert"; + } + enum "ecdsa-nistp521-cert" { + value 12; + description + "OpenSSH ECDSA521 cert"; + } + enum "ed25519-cert" { + value 13; + description + "OpenSSH ED25519 cert"; + } + } + description + "SSH session authentication types"; + } + + typedef Version { + type enumeration { + enum "v2" { + value 0; + description + "Version V2"; + } + enum "v1" { + value 1; + description + "Version V1"; + } + } + description + "SSH state versions"; + } + + typedef States { + type enumeration { + enum "open" { + value 1; + description + "SSH Open"; + } + enum "version-ok" { + value 2; + description + "SSH version OK"; + } + enum "key-exchange-initialize" { + value 3; + description + "Key exchange(KEX) init message exchanged"; + } + enum "key-exchange-dh" { + value 4; + description + "Diffie-Hellman(DH) secret is generated"; + } + enum "new-keys" { + value 5; + description + "New keys are received"; + } + enum "authenticate-information" { + value 6; + description + "Need more information to authenticate"; + } + enum "authenticated" { + value 7; + description + "The client successfully authenticated"; + } + enum "channel-open" { + value 8; + description + "Channel has been successfully opened"; + } + enum "pty-open" { + value 9; + description + "Allocated PTY"; + } + enum "session-open" { + value 10; + description + "Opened an exec shell"; + } + enum "rekey" { + value 11; + description + "Received rekey request"; + } + enum "suspended" { + value 12; + description + "Session is suspended"; + } + enum "session-closed" { + value 13; + description + "Session has been closed"; + } + } + description + "SSH session states"; + } + + typedef Mac { + type enumeration { + enum "mac-not-applicable" { + value -1; + description + "unknown"; + } + enum "hmac-md5" { + value 0; + description + "Hash-based Message Authentication Code(HMAC) + MD5 algorithm"; + } + enum "hmac-sha1" { + value 1; + description + "Hash-based Message Authentication Code(HMAC) + SHA1 algorithm"; + } + enum "hmac-sha2-256" { + value 2; + description + "Hash-based Message Authentication Code(HMAC) + SHA2-256 algorithm"; + } + enum "hmac-sha2-512" { + value 3; + description + "Hash-based Message Authentication Code(HMAC) + SHA2-512 algorithm"; + } + enum "aes-gcm" { + value 4; + description + "AES GCM based Authentication Tag as MAC + algorithm"; + } + } + description + "Different Message Authentication Code(MAC) + functions"; + } + + typedef Cipher { + type enumeration { + enum "cipher-not-applicable" { + value -1; + description + "unknown"; + } + enum "aes128-cbc" { + value 0; + description + "Advanced Encryption Standard(AES) 128 bits + cipher block chaining(CBC)"; + } + enum "aes192-cbc" { + value 1; + description + "Advanced Encryption Standard(AES) 192 bits + cipher block chaining(CBC)"; + } + enum "aes256-cbc" { + value 2; + description + "Advanced Encryption Standard(AES) 256 bits + cipher block chaining(CBC)"; + } + enum "triple-des-cbc" { + value 3; + description + "Triple Data Encryption Standard(DES) cipher + block chaining(CBC)"; + } + enum "aes128-ctr" { + value 4; + description + "Advanced Encryption Standard(AES) 128 bits + counter mode (CTR)"; + } + enum "aes192-ctr" { + value 5; + description + "Advanced Encryption Standard(AES) 192 bits + counter mode (CTR)"; + } + enum "aes256-ctr" { + value 6; + description + "Advanced Encryption Standard(AES) 256 bits + counter mode (CTR)"; + } + enum "aes128-gcm" { + value 7; + description + "Advanced Encryption Standard(AES) 128 bits GCM + mode (GCM)"; + } + enum "aes256-gcm" { + value 8; + description + "Advanced Encryption Standard(AES) 256 bits GCM + mode (GCM)"; + } + enum "chacha20-poly1305" { + value 9; + description + "Chacha20 stream cipher with Poly1305-AES + encryption"; + } + } + description + "SSH session in and out cipher standards"; + } + + typedef Hostkey { + type enumeration { + enum "host-key-not-applicable" { + value -1; + description + "unknown"; + } + enum "ssh-dss" { + value 0; + description + "Algorithm type DSS"; + } + enum "ssh-rsa" { + value 1; + description + "Algorithm type RSA"; + } + enum "ecdsa-sha2-nistp521" { + value 2; + description + "Algorithm type ECDSA NISTP521"; + } + enum "ecdsa-sha2-nistp384" { + value 3; + description + "Algorithm type ECDSA NISTP384"; + } + enum "ecdsa-sha2-nistp256" { + value 4; + description + "Algorithm type ECDSA NISTP256"; + } + enum "ssh-ed25519" { + value 5; + description + "Algorithm type ED25519"; + } + enum "ssh-x509v3-rsa" { + value 6; + description + "Algorithm type X509V3 SSH RSA"; + } + enum "ssh-rsa-sha512" { + value 7; + description + "Algorithm type RSA SHA512"; + } + enum "ssh-rsa-sha256" { + value 8; + description + "Algorithm type RSA SHA256"; + } + enum "ssh-rsa-cert" { + value 9; + description + "Algorithm type RSA CERT"; + } + } + description + "SSH session authentication types"; + } + + typedef Kex-name { + type enumeration { + enum "kex-not-applicable" { + value -1; + description + "unknown"; + } + enum "diffie-hellman-group1" { + value 0; + description + "Diffie-Hellman group 1 key exchange algorithm"; + } + enum "diffie-hellman-group14" { + value 1; + description + "Diffie-Hellman group 14 key exchange algorithm"; + } + enum "diffie-hellman-group15" { + value 2; + description + "Diffie-Hellman group 15 key exchange algorithm"; + } + enum "diffie-hellman-group16" { + value 3; + description + "Diffie-Hellman group 16 key exchange algorithm"; + } + enum "diffie-hellman-group17" { + value 4; + description + "Diffie-Hellman group 17 key exchange algorithm"; + } + enum "diffie-hellman-group18" { + value 5; + description + "Diffie-Hellman key group 18 exchange algorithm"; + } + enum "ecdh-nistp256" { + value 6; + description + "Elliptical curve Diffie-Hellman prime 256 key + exchange algorithm"; + } + enum "ecdh-nistp384" { + value 7; + description + "Elliptical curve Diffie-Hellman prime 384 key + exchange algorithm"; + } + enum "ecdh-nistp521" { + value 8; + description + "Elliptical curve Diffie-Hellman prime 521 + exchange algorithm"; + } + enum "curve25519" { + value 9; + description + "Curve25519 based on Elliptical curve + Diffie-Hellman"; + } + enum "diffie-hellman-group14-sha256" { + value 10; + description + "Diffie-Hellman group 14 with SHA-256 key + exchange algorithm"; + } + enum "diffie-hellman-group16-sha512" { + value 11; + description + "Diffie-Hellman group 16 with SHA-512 key + exchange algorithm"; + } + enum "curve25519-libssh" { + value 12; + description + "Curve25519 based on Elliptical curve + Diffie-Hellman"; + } + enum "password-authenticated" { + value 13; + description + "Password authenticated key agreement algorithm"; + } + } + description + "Different key-exchange(kex) algorithms"; + } + + grouping SESSION-HISTORY-INFO { + description + "Information for a particular session/channel"; + list session-history-info { + description + "session history info"; + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + leaf user-id { + type string; + description + "User ID"; + } + leaf host-address { + type string; + description + "Host address"; + } + leaf version { + type Version; + description + "SSH state version"; + } + leaf authentication-type { + type Authen; + description + "Authentication method"; + } + list mc-info { + description + "List of channel info"; + uses SSH-MCINFO; + } + } + } + + grouping SSH-SESSION-HISTORY { + description + "Incoming ssh session history information"; + container incoming-sessions { + description + "List of incoming sessions"; + uses SESSION-HISTORY-INFO; + } + } + + grouping SSH-MCINFO { + description + " Channel info store in bag"; + leaf channel-id { + type uint32; + description + "Channel ID"; + } + leaf connection-type { + type Connection; + description + "Channel Connection Type"; + } + leaf vty-line-number { + type uint32; + description + "VTY line number"; + } + leaf vty-assigned { + type boolean; + description + "Boolean indicating whether line VTY line number + is valid"; + } + } + + grouping SESSION-BRIEF-INFO { + description + "Information for a particular session/channel"; + list session-brief-info { + description + "session brief info"; + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + leaf session-state { + type States; + description + "SSH session state"; + } + leaf user-id { + type string; + description + "User ID"; + } + leaf host-address { + type string; + description + "Host address"; + } + leaf version { + type Version; + description + "SSH state version"; + } + leaf authentication-type { + type Authen; + description + "Authentication method"; + } + list mc-info { + description + "List of channel info"; + uses SSH-MCINFO; + } + } + } + + grouping SSH-SESSION-BRIEF { + description + "Incoming and outgoing session information"; + container incoming-sessions { + description + "List of incoming sessions"; + uses SESSION-BRIEF-INFO; + } + container outgoing-sessions { + description + "List of outgoing sessions"; + uses SESSION-BRIEF-INFO; + } + } + + grouping SESSION-REKEY-INFO { + description + "Session rekey info"; + list session-rekey-info { + description + "session rekey info"; + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf session-rekey-count { + type uint32; + description + "Session Rekey Count"; + } + leaf time-to-rekey { + type string; + description + "Time To Rekey"; + } + leaf volume-to-rekey { + type string; + description + "Volume To Rekey"; + } + } + } + + grouping SSH-SESSION-REKEY { + description + "Incoming and outgoing session rekey details"; + container incoming-sessions { + description + "List of incoming sessions"; + uses SESSION-REKEY-INFO; + } + container outgoing-connections { + description + "List of outgoing connections"; + uses SESSION-REKEY-INFO; + } + } + + grouping SESSION-DETAIL-INFO { + description + "Particular session details"; + list session-detail-info { + description + "session detail info"; + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf key-exchange { + type Kex-name; + description + "Key exchange name"; + } + leaf public-key { + type Hostkey; + description + "Host key algorithm"; + } + leaf in-cipher { + type Cipher; + description + "In cipher algorithm"; + } + leaf out-cipher { + type Cipher; + description + "Out cipher algorithm"; + } + leaf in-mac { + type Mac; + description + "In MAC"; + } + leaf out-mac { + type Mac; + description + "Out MAC"; + } + leaf start-time { + type string; + description + "session start time"; + } + leaf end-time { + type string; + description + "session end time"; + } + } + } + + grouping SSH-SESSION-DETAIL { + description + "Incoming and outgoing session details"; + container incoming-sessions { + description + "List of incoming sessions"; + uses SESSION-DETAIL-INFO; + } + container outgoing-connections { + description + "List of outgoing connections"; + uses SESSION-DETAIL-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper.yang new file mode 100644 index 000000000..347a55539 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-ssh-oper.yang @@ -0,0 +1,150 @@ +module Cisco-IOS-XR-crypto-ssh-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-ssh-oper"; + prefix crypto-ssh-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-crypto-ssh-oper-sub2 { + revision-date 2022-11-14; + } + include Cisco-IOS-XR-crypto-ssh-oper-sub1 { + revision-date 2022-11-14; + } + + 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 crypto-ssh package operational data. + + This module contains definitions + for the following management objects: + ssh1: Crypto Secure Shell(SSH) data + ssh: Crypto Secure Shell(SSH) data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-14 { + description + "Fixing inconsistencies between platforms. + 2022-09-05 + Authorized principals command support. + 2022-03-20 + OpenSSH certificate support."; + semver:module-version "2.1.0"; + } + revision 2021-06-04 { + description + "Default option for authentication."; + semver:module-version "2.0.0"; + } + revision 2020-01-21 { + description + "Yang support to import pubkey for user in config mode"; + semver:module-version "1.1.0"; + } + revision 2019-07-08 { + description + "Introducing show ssh server CLI."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-08-25 { + description + "Introducing show ssh history CLI."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-06-02 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container ssh1 { + config false; + description + "Crypto Secure Shell(SSH) data"; + container kex { + description + "key exchange method data"; + container nodes { + description + "Node-specific ssh session details"; + list node { + key "node-name"; + description + "SSH session details for a particular node"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses SSH-SESSION-DETAIL; + } + } + } + } + container ssh { + config false; + description + "Crypto Secure Shell(SSH) data"; + container session { + description + "Crypto SSH session"; + container rekey { + description + "SSH session rekey information"; + uses SSH-SESSION-REKEY; + } + container history-detail { + description + "SSH session history detail information"; + uses SSH-SESSION-DETAIL; + } + container brief { + description + "SSH session brief information"; + uses SSH-SESSION-BRIEF; + } + container history { + description + "SSH session history information"; + uses SSH-SESSION-HISTORY; + } + container detail { + description + "SSH session detail information"; + uses SSH-SESSION-DETAIL; + } + } + container server { + description + "SSH server parameters"; + uses SSH-SERVER-PARAMS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-cfg.yang new file mode 100644 index 000000000..5f4505788 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-cfg.yang @@ -0,0 +1,216 @@ +module Cisco-IOS-XR-crypto-svault-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-svault-cfg"; + prefix crypto-svault-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 crypto-svault package configuration. + + This module contains definitions + for the following management objects: + svault: Secure Vault configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container svault { + description + "Secure Vault configuration"; + container svault-server { + description + "Secure Vault Server configuration"; + container svault-server-address { + description + "Secure Vault server address configuration"; + leaf svault-server-address-port { + type uint32 { + range "1024..49151"; + } + default "8200"; + description + "Secure Vault server port configuration"; + } + leaf svault-server-address-ipv4 { + type inet:ip-address-no-zone; + description + "Secure Vault server IPv4 address configuration"; + } + } + leaf svault-server-enable { + type boolean; + default "false"; + description + "If set, secure vault server is enabled and + started"; + } + } + container svault-profile-names { + description + "Secure Vault profile configuration"; + list svault-profile-name { + key "svault-profile-name-str"; + description + "Secure Vault profile name configuration"; + container svault-profile-global { + description + "Secure Vault profile global configuration"; + leaf svault-profile-global-path-env { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Secure Vault path environment variable tag"; + } + leaf svault-profile-global-addr-env { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Secure Vault address environment variable tag"; + } + leaf svault-profile-global-token-env { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Secure Vault Token environment variable tag"; + } + } + container svault-profile-policy-names { + description + "Secure Vault Profile Policy tag"; + list svault-profile-policy-name { + key "svault-policy-name-str"; + description + "Secure Vault Profile Policy config tag"; + container svault-profile-policy-path-names { + description + "Secure Vault Profile Policy Path tag"; + list svault-profile-policy-path-name { + key "svault-policy-path-name-str"; + description + "Secure Vault Profile Policy Path tag"; + container svault-profile-policy-path-cap { + presence "enable svault-profile-policy-path-cap"; + description + "Secure Vault Policy Path Capabilities tag"; + leaf svault-read-cap { + type uint32 { + range "0..1"; + } + description + "Secure Vault Read Capability"; + } + leaf svault-write-cap { + type uint32 { + range "0..1"; + } + description + "Secure Vault Write Capability"; + } + leaf svault-update-cap { + type uint32 { + range "0..1"; + } + description + "Secure Vault Update Capability"; + } + leaf svault-delete-cap { + type uint32 { + range "0..1"; + } + description + "Secure Vault Delete Capability"; + } + } + leaf svault-policy-path-name-str { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Policy Path Name"; + } + } + } + leaf svault-pro-pol-preserve-data { + type boolean; + default "false"; + description + "If set, path and data will be preserved + after policy deletion"; + } + leaf svault-policy-name-str { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Policy Name"; + } + } + } + container svault-profile-auth-method { + description + "Secure Vault auth method type"; + container svault-profile-auth-method-token { + presence "Indicates a svault-profile-auth-method-token node is configured."; + description + "Secure Vault auth method token tag"; + leaf svault-profile-auth-method-token-ttl { + type uint32 { + range "1..768"; + } + description + "Secure Vault auth method token ttl tag"; + } + leaf svault-profile-auth-method-token-enter { + type empty; + mandatory true; + description + "This indicates token auth method has been + chosen"; + } + } + } + leaf svault-profile-name-str { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Profile Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper-sub1.yang new file mode 100644 index 000000000..d0a483501 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper-sub1.yang @@ -0,0 +1,73 @@ +submodule Cisco-IOS-XR-crypto-svault-oper-sub1 { + belongs-to Cisco-IOS-XR-crypto-svault-oper { + prefix Cisco-IOS-XR-crypto-svault-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR crypto-svault package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SVAULT-EDM-STATUS-RESULT { + description + "Show Svault status result"; + leaf vault-enable { + type boolean; + description + "VaultEnable"; + } + leaf vault-redundancy { + type boolean; + description + "VaultRedundancy"; + } + leaf host { + type string; + description + "Host"; + } + leaf port { + type string; + description + "Port"; + } + leaf https-enable { + type boolean; + description + "HttpsEnable"; + } + leaf auth-support-list { + type string; + description + "AuthSupportList"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper.yang new file mode 100644 index 000000000..2eb8b6d2f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-crypto-svault-oper.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-crypto-svault-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-crypto-svault-oper"; + prefix crypto-svault-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-crypto-svault-oper-sub1 { + revision-date 2019-04-05; + } + + 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 crypto-svault package operational data. + + This module contains definitions + for the following management objects: + svault: Secure Vault operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container svault { + config false; + description + "Secure Vault operational data"; + container nodes { + description + "Node-specific Secure Vault operational data"; + list node { + key "node"; + description + "Secure Vault operational data for a particular + node"; + container status { + description + "Status of Secure Vault server"; + uses SVAULT-EDM-STATUS-RESULT; + } + leaf node { + type xr:Node-id; + description + "The node identifier"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper-sub1.yang new file mode 100644 index 000000000..80290c950 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper-sub1.yang @@ -0,0 +1,283 @@ +submodule Cisco-IOS-XR-csd-oper-sub1 { + belongs-to Cisco-IOS-XR-csd-oper { + prefix Cisco-IOS-XR-csd-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR csd package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-23 { + description + "Removed the trusted_peers endpoint."; + semver:module-version "1.0.0"; + } + revision 2021-04-19 { + description + "Oper yang for CSD."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tpm { + type enumeration { + enum "tpm-20" { + description + "tpm 20"; + } + enum "tpm-12" { + description + "tpm 12"; + } + } + description + "Tpm"; + } + + typedef String-array { + type string; + description + "String array"; + } + + grouping ENCODED-ATT-RESULTS-DATA { + description + "ENCODED ATT RESULTS DATA"; + leaf encoded-att-results-data { + type string; + description + "Attestation Results in CBOR-Encoded format"; + } + } + + grouping PUB-KEY-GROUPING { + description + "PUB KEY GROUPING"; + leaf public-key-format { + type string; + description + "Key Format Eg: DER, PEM"; + } + leaf public-key { + type string; + description + "Attester's public key"; + } + } + + grouping PCRVALUE { + description + "PCRVALUE"; + leaf value { + type string; + description + "PCR Value"; + } + } + + grouping TPM12-INTERNALS { + description + "TPM1.2 Details"; + leaf timestamp { + type string; + description + "The timestamp of the Verifier's appraisal"; + } + leaf-list pcr-indice { + type uint32; + description + "Indices of the desired PCRs"; + } + list pcr-value { + description + "Values of desired PCRs"; + uses PCRVALUE; + } + } + + grouping TPM20-PCR-BANK-ENTRY { + description + "Information about one pcr bank"; + leaf hash-algorithm { + type uint32; + description + "Hash algorithm used in numerical format as + specified by TCG docs"; + } + leaf-list pcr-indice { + type uint32; + description + "Mentiones what PCRs are used to calculate the + tpm2b digest"; + } + } + + grouping TPM20-INTERNALS { + description + "Unmarshaled TPM2.0 Quote"; + leaf tpm2b-digest { + type string; + description + "Hash/Digest of the string obtained by + concatenating desired PCRs"; + } + leaf clock { + type uint64; + description + "Clock is a monotonically increasing counter that + advances whenever power is applied to a TPM2. It + is incremented every millisecond"; + } + leaf reset-counter { + type uint32; + description + "The counter increments on each TPM reset"; + } + leaf restart-counter { + type uint32; + description + "This counter shall increment by one for each TPM + restart or resume"; + } + leaf safe { + type boolean; + description + "This parameter is set to YES when the value + reported in Clock is guaranteed to be unique for + the current owner"; + } + list tpm20-pcr-bank { + description + "List of all PCR banks"; + uses TPM20-PCR-BANK-ENTRY; + } + } + + grouping TPM-DATA { + description + "TPM DATA"; + container tpm20-quote { + when "../t = 'tpm-20'" { + description + "../t = 'TPM_20'"; + } + description + "tpm20 quote"; + uses TPM20-INTERNALS; + } + container tpm12-quote { + when "../t = 'tpm-12'" { + description + "../t = 'TPM_12'"; + } + description + "tpm12 quote"; + uses TPM12-INTERNALS; + } + leaf t { + type Tpm; + description + "t"; + } + } + + grouping ATT-RESULTS-DATA { + description + "Unverified attestation results"; + container tpm-data { + description + "Based on tpm type, this data is evaluated"; + uses TPM-DATA; + } + container pubkey-grouping { + description + "Public Key Grouping"; + uses PUB-KEY-GROUPING; + } + leaf public-key-algorithm-type { + type string; + description + "Public Key Algorithm type"; + } + leaf verifier-sig-key-name { + type string; + description + "A hint to identify the Verifier Key"; + } + leaf verifier-key-algo-type { + type string; + description + "Verifier Key Algorithm type"; + } + leaf-list trustworthiness-vector { + type String-array; + description + "Verifier evaluation of the Evidence"; + } + } + + grouping MAC-PEER { + description + "MAC PEER"; + leaf peer-name { + type string; + description + "Peer's name/MAC Address"; + } + leaf-list trust-vector { + type String-array; + description + "Trust vector for the peer"; + } + } + + grouping CANARYSTAMP-INTERFACE { + description + "CANARYSTAMP INTERFACE"; + leaf if-name { + type string; + description + "Interface Name"; + } + list peers { + description + "List of all peers"; + uses MAC-PEER; + } + } + + grouping CANARYSTAMP-PEERS { + description + "CANARYSTAMP PEERS"; + list interface { + description + "Interface list"; + uses CANARYSTAMP-INTERFACE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper.yang new file mode 100644 index 000000000..720e63f57 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-csd-oper.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-csd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-csd-oper"; + prefix csd-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-csd-oper-sub1 { + revision-date 2021-07-23; + } + + 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 csd package operational data. + + This module contains definitions + for the following management objects: + security: All Stamped Passport related data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-23 { + description + "Removed the trusted_peers endpoint."; + semver:module-version "1.0.0"; + } + revision 2021-04-19 { + description + "Oper yang for CSD."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container security { + config false; + description + "All Stamped Passport related data"; + container passport { + description + "Stamped passport Peers and Attestation results + data"; + container nodes { + description + "Node specific Stamped Passport data"; + list node { + key "node-name"; + description + "Per node peers and results data"; + container peers { + description + "All Peers Data"; + uses CANARYSTAMP-PEERS; + } + container result { + description + "Attestation results data"; + uses ATT-RESULTS-DATA; + } + container encoded-result { + description + "Encoded Attestation results data"; + uses ENCODED-ATT-RESULTS-DATA; + } + leaf node-name { + type xr:Node-id; + description + "The node"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-custom-showtech-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-custom-showtech-profile-cfg.yang new file mode 100644 index 000000000..a51e7c565 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-custom-showtech-profile-cfg.yang @@ -0,0 +1,89 @@ +module Cisco-IOS-XR-custom-showtech-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-custom-showtech-profile-cfg"; + prefix custom-showtech-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 custom-showtech-profile package configuration. + + This module contains definitions + for the following management objects: + custom-show-tech: Custom ShowTech Configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container custom-show-tech { + description + "Custom ShowTech Configuration"; + list profile-name { + key "profile-name"; + description + "Profile name"; + container command-strs { + description + "Custom commands"; + list command-str { + key "command-str"; + description + "Custom command string"; + leaf command-str { + type string; + description + "Command String"; + } + } + } + container admin-command-strs { + description + "Custom Admin commands"; + list admin-command-str { + key "admin-command-str"; + description + "Custom Admin command string"; + leaf admin-command-str { + type string; + description + "Admin Command String"; + } + } + } + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..257"; + } + description + "Profile name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-daisychain-mgmt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-daisychain-mgmt-cfg.yang new file mode 100644 index 000000000..c30faccdd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-daisychain-mgmt-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-daisychain-mgmt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-daisychain-mgmt-cfg"; + prefix daisychain-mgmt-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 daisychain-mgmt package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-31 { + description + "Daisy chain mgmt interface cfg"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf bridge-port-interface { + type string; + description + "Enable bridge-port routed-interface"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1.yang new file mode 100644 index 000000000..e34746954 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1.yang @@ -0,0 +1,234 @@ +submodule Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1 { + belongs-to Cisco-IOS-XR-dnx-driver-fabric-plane-oper { + prefix Cisco-IOS-XR-dnx-driver-fabric-plane-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dnx-driver-fabric-plane package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-02 { + description + "added Ucast_lost_cells,Mcast_lost_cells and Asic_internal_drops for fsdb_plane_stats_info bag."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsdb-plane-mode { + type enumeration { + enum "plane-mode-unknown" { + value 0; + description + "plane mode unknown"; + } + enum "plane-mode-sc" { + value 1; + description + "plane mode sc"; + } + enum "plane-mode-b2b" { + value 2; + description + "plane mode b2b"; + } + enum "plane-mode-mc" { + value 3; + description + "plane mode mc"; + } + enum "plane-mode-folded" { + value 4; + description + "plane mode folded"; + } + } + description + "FSDB plane mode enum"; + } + + typedef Fsdb-plane-admin-state { + type enumeration { + enum "plane-state-admin-up" { + value 0; + description + "plane state admin up"; + } + enum "plane-state-admin-down" { + value 1; + description + "plane state admin down"; + } + } + description + "FSDB Plane admin state enum"; + } + + typedef Fsdb-plane-oper-state { + type enumeration { + enum "plane-state-oper-up" { + value 0; + description + "plane state oper up"; + } + enum "plane-state-oper-down" { + value 1; + description + "plane state oper down"; + } + enum "plane-state-oper-mcast-down" { + value 2; + description + "plane state oper mcast down"; + } + } + description + "FSDB plane oper state enum"; + } + + grouping FABRIC-PLANE-INFO-DETAIL { + description + "Plane information in Detail"; + leaf plane-id { + type uint32; + description + "Unique Identifier for Plane"; + } + leaf plane-oper-status { + type Fsdb-plane-oper-state; + description + "PlaneOperStatus"; + } + leaf plane-admin-status { + type Fsdb-plane-admin-state; + description + "PlaneAdminStatus"; + } + leaf plane-mode { + type Fsdb-plane-mode; + description + "Plane Mode Configuration"; + } + leaf bundles { + type uint16; + description + "Total number of bundles"; + } + leaf down-bundles { + type uint16; + description + "Total down bundles"; + } + leaf plane-up-down-count { + type uint32; + description + "counter of UP<->DOWN plane state transition"; + } + leaf up-multicast-count { + type uint32; + description + "counter of UP<->MCAST plane state transition"; + } + leaf ppu-state { + type string; + description + "Plane PPU State"; + } + } + + grouping FSDBB-PLANE-INFO-XML { + description + "Fabric Plane Information for XML"; + list detail-plane-info { + description + "list of all elements in plane bag"; + uses FABRIC-PLANE-INFO-DETAIL; + } + } + + grouping FABRIC-PLANE-STATS-INFO { + description + "FABRIC PLANE STATS INFO"; + leaf plane-id { + type uint32; + description + "Unique Identifier for Plane"; + } + leaf rx-data-cells { + type uint64; + description + "RxDataCells"; + } + leaf tx-data-cells { + type uint64; + description + "TxDataCells"; + } + leaf rx-correctable-error-cells { + type uint32; + description + "RxCorrectableErrorCells"; + } + leaf rx-un-correctable-error-cells { + type uint32; + description + "RxUnCorrectableErrorCells"; + } + leaf rx-parity-error-cells { + type uint32; + description + "RxParityErrorCells"; + } + leaf ucast-lost-cells { + type uint32; + description + "Ucast lost cells"; + } + leaf mcast-lost-cells { + type uint32; + description + "Mcast lost cells"; + } + leaf asic-internal-drops { + type uint32; + description + "Asic internal drops"; + } + } + + grouping FSDBB-PLANE-STATS-INFO-XML { + description + "Fabric Plane Statistics Information for XML"; + list plane-stats-info { + description + "Statistics data of plane"; + uses FABRIC-PLANE-STATS-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper.yang new file mode 100644 index 000000000..36962822d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-fabric-plane-oper.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-dnx-driver-fabric-plane-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dnx-driver-fabric-plane-oper"; + prefix dnx-driver-fabric-plane-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-dnx-driver-fabric-plane-oper-sub1 { + revision-date 2020-12-02; + } + + 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 dnx-driver-fabric-plane package operational data. + + This module contains definitions + for the following management objects: + fabric: Admin fabric oper data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-02 { + description + "added Ucast_lost_cells,Mcast_lost_cells and Asic_internal_drops for fsdb_plane_stats_info bag."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fabric { + config false; + description + "Admin fabric oper data"; + container plane-table { + description + "Plane state table for Fabric "; + container statistics { + description + "Show Calvados Plane Statistics"; + uses FSDBB-PLANE-STATS-INFO-XML; + } + container plane { + description + "Show Calvados Plane State"; + uses FSDBB-PLANE-INFO-XML; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper-sub1.yang new file mode 100644 index 000000000..68fda71ed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper-sub1.yang @@ -0,0 +1,5688 @@ +submodule Cisco-IOS-XR-dnx-driver-oper-sub1 { + belongs-to Cisco-IOS-XR-dnx-driver-oper { + prefix Cisco-IOS-XR-dnx-driver-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dnx-driver package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-29 { + description + "added bundle_id and lane_id to get bundle port information."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2017-08-29 { + description + "Changed blk and field info to be dynamic."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Asic-init-method { + type enumeration { + enum "asic-init-method-unset" { + value -1; + description + "asic init method unset"; + } + enum "asic-init-method-no-reset" { + value 0; + description + "asic init method no reset"; + } + enum "asic-init-method-pon-reset" { + value 1; + description + "asic init method pon reset"; + } + enum "asic-init-method-pon-reset-on-intr" { + value 2; + description + "asic init method pon reset on intr"; + } + enum "asic-init-method-hard-reset" { + value 3; + description + "asic init method hard reset"; + } + enum "asic-init-method-warmboot" { + value 4; + description + "asic init method warmboot"; + } + enum "asic-init-method-issu-wb" { + value 5; + description + "asic init method issu wb"; + } + enum "asic-init-method-pci-shutdown" { + value 6; + description + "asic init method pci shutdown"; + } + enum "asic-init-method-quiesce" { + value 7; + description + "asic init method quiesce"; + } + enum "asic-init-method-issu-started" { + value 8; + description + "asic init method issu started"; + } + enum "asic-init-method-issu-rollback" { + value 9; + description + "asic init method issu rollback"; + } + enum "asic-init-method-issu-abort" { + value 10; + description + "asic init method issu abort"; + } + enum "asic-init-method-slice-cleanup" { + value 11; + description + "asic init method slice cleanup"; + } + enum "asic-init-method-lc-remove" { + value 12; + description + "asic init method lc remove"; + } + enum "asic-init-method-node-down" { + value 13; + description + "asic init method node down"; + } + enum "asic-init-method-intr" { + value 14; + description + "asic init method intr"; + } + enum "asic-init-method-board-reload" { + value 15; + description + "asic init method board reload"; + } + enum "asic-init-method-max" { + value 16; + description + "asic init method max"; + } + } + description + "Asic init method"; + } + + typedef Asic-access-state { + type enumeration { + enum "asic-state-unset" { + value -1; + description + "asic state unset"; + } + enum "asic-state-none" { + value 0; + description + "asic state none"; + } + enum "asic-state-device-off-line" { + value 1; + description + "asic state device off line"; + } + enum "asic-state-device-created" { + value 2; + description + "asic state device created"; + } + enum "asic-state-device-online" { + value 3; + description + "asic state device online"; + } + enum "asic-state-warmboot" { + value 4; + description + "asic state warmboot"; + } + enum "asic-state-de-init-start" { + value 5; + description + "asic state de init start"; + } + enum "asic-state-intr-de-init" { + value 6; + description + "asic state intr de init"; + } + enum "asic-state-bcm-detach" { + value 7; + description + "asic state bcm detach"; + } + enum "asic-state-soc-de-init" { + value 8; + description + "asic state soc de init"; + } + enum "asic-state-de-init-done" { + value 9; + description + "asic state de init done"; + } + enum "asic-state-soc-init" { + value 10; + description + "asic state soc init"; + } + enum "asic-state-bcm-init" { + value 11; + description + "asic state bcm init"; + } + enum "asic-state-intr-init" { + value 12; + description + "asic state intr init"; + } + enum "asic-state-soc-init-start" { + value 13; + description + "asic state soc init start"; + } + enum "asic-state-bcm-init-start" { + value 14; + description + "asic state bcm init start"; + } + enum "asic-state-intr-init-start" { + value 15; + description + "asic state intr init start"; + } + enum "asic-state-hard-reset" { + value 16; + description + "asic state hard reset"; + } + enum "asic-state-normal" { + value 17; + description + "asic state normal"; + } + enum "asic-state-exception" { + value 18; + description + "asic state exception"; + } + enum "asic-state-hp-attached" { + value 19; + description + "asic state hp attached"; + } + enum "asic-state-quiesce" { + value 20; + description + "asic state quiesce"; + } + enum "asic-state-issu-started" { + value 21; + description + "asic state issu started"; + } + enum "asic-state-issu-started-nn" { + value 22; + description + "asic state issu started nn"; + } + enum "asic-state-issu-abort" { + value 23; + description + "asic state issu abort"; + } + enum "asic-state-max" { + value 24; + description + "asic state max"; + } + } + description + "Asic access state"; + } + + typedef Asic-oper-state { + type enumeration { + enum "asic-oper-unset" { + value -1; + description + "asic oper unset"; + } + enum "asic-oper-unknown" { + value 0; + description + "asic oper unknown"; + } + enum "asic-oper-up" { + value 1; + description + "asic oper up"; + } + enum "asic-oper-down" { + value 2; + description + "asic oper down"; + } + enum "asic-card-down" { + value 3; + description + "asic card down"; + } + } + description + "Asic oper state"; + } + + typedef Slice-state { + type enumeration { + enum "slice-oper-unset" { + value -1; + description + "slice oper unset"; + } + enum "slice-oper-down" { + value 0; + description + "slice oper down"; + } + enum "slice-oper-up" { + value 1; + description + "slice oper up"; + } + enum "slice-oper-na" { + value 2; + description + "slice oper na"; + } + } + description + "Slice state"; + } + + typedef Fc-mode { + type enumeration { + enum "fc-mode-unset" { + value -1; + description + "fc mode unset"; + } + enum "fc-mode-unavail" { + value 0; + description + "fc mode unavail"; + } + enum "fc-mode-inband" { + value 1; + description + "fc mode inband"; + } + enum "fc-mode-oob" { + value 2; + description + "fc mode oob"; + } + } + description + "Fc mode"; + } + + typedef Link-error-state { + type enumeration { + enum "link-error-unset" { + value -1; + description + "link error unset"; + } + enum "link-error-none" { + value 0; + description + "link error none"; + } + enum "link-error-shut" { + value 1; + description + "link error shut"; + } + enum "link-error-max" { + value 2; + description + "link error max"; + } + } + description + "Link error state"; + } + + typedef Oper-state { + type enumeration { + enum "oper-unset" { + value -1; + description + "oper unset"; + } + enum "oper-unknown" { + value 0; + description + "oper unknown"; + } + enum "oper-up" { + value 1; + description + "oper up"; + } + enum "oper-down" { + value 2; + description + "oper down"; + } + enum "card-down" { + value 3; + description + "card down"; + } + } + description + "Oper state"; + } + + typedef Admin-state { + type enumeration { + enum "admin-unset" { + value -1; + description + "admin unset"; + } + enum "admin-up" { + value 0; + description + "admin up"; + } + enum "admin-down" { + value 1; + description + "admin down"; + } + } + description + "Admin state"; + } + + typedef Link-stage { + type enumeration { + enum "link-stage-unset" { + value -1; + description + "link stage unset"; + } + enum "link-stage-unused" { + value 0; + description + "link stage unused"; + } + enum "link-stage-fia" { + value 1; + description + "link stage fia"; + } + enum "link-stage-s1" { + value 2; + description + "link stage s1"; + } + enum "link-stage-s2" { + value 3; + description + "link stage s2"; + } + enum "link-stage-s3" { + value 4; + description + "link stage s3"; + } + enum "link-stage-unknown" { + value 5; + description + "link stage unknown"; + } + } + description + "Link stage"; + } + + typedef Link { + type enumeration { + enum "link-type-unset" { + value -1; + description + "link type unset"; + } + enum "link-type-unavail" { + value 0; + description + "link type unavail"; + } + enum "link-type-tx" { + value 1; + description + "link type tx"; + } + enum "link-type-rx" { + value 2; + description + "link type rx"; + } + } + description + "Link"; + } + + typedef Asic { + type enumeration { + enum "asic-unset" { + value -1; + description + "asic unset"; + } + enum "asic-unavail" { + value 0; + description + "asic unavail"; + } + enum "asic-fia" { + value 1; + description + "asic fia"; + } + enum "asic-s123" { + value 2; + description + "asic s123"; + } + enum "asic-s13" { + value 3; + description + "asic s13"; + } + enum "asic-s2" { + value 4; + description + "asic s2"; + } + enum "asic-b2b" { + value 5; + description + "asic b2b"; + } + enum "asic-type-unknown" { + value 6; + description + "asic type unknown"; + } + } + description + "Asic"; + } + + typedef Rack { + type enumeration { + enum "rack-type-unset" { + value -1; + description + "rack type unset"; + } + enum "rack-type-lcc" { + value 0; + description + "rack type lcc"; + } + enum "rack-type-fcc" { + value 1; + description + "rack type fcc"; + } + } + description + "Rack"; + } + + grouping FIA-EDM-LINK-OVF-COUNTERS { + description + "FIA EDM LINK OVF COUNTERS"; + leaf tx-control-cells-counter { + type string { + length "0..6"; + } + description + "TX Control Cells Counter"; + } + leaf tx-data-cell-counter { + type string { + length "0..6"; + } + description + "TX Data Cell Counter"; + } + leaf tx-data-byte-counter { + type string { + length "0..6"; + } + units "byte"; + description + "TX Data Byte Counter"; + } + leaf rx-crc-errors-counter { + type string { + length "0..6"; + } + description + "RX CRC errors counter"; + } + leaf rx-lfec-fec-correctable-error { + type string { + length "0..6"; + } + description + "RX LFEC FEC correctable error"; + } + leaf rx-8b-10b-disparity-errors { + type string { + length "0..6"; + } + description + "RX 8B 10B Disparity Errors"; + } + leaf rx-control-cells-counter { + type string { + length "0..6"; + } + description + "RX Control Cells Counter"; + } + leaf rx-data-cell-counter { + type string { + length "0..6"; + } + description + "RX Data Cell Counter"; + } + leaf rx-data-byte-counter { + type string { + length "0..6"; + } + units "byte"; + description + "RX Data Byte Counter"; + } + leaf rx-dropped-retransmitted-control { + type string { + length "0..6"; + } + description + "RX Dropped Retransmitted Control Counter"; + } + leaf tx-asyn-fifo-rate { + type string { + length "0..6"; + } + description + "TX Asynchronous FIFO Rate"; + } + leaf rx-asyn-fifo-rate { + type string { + length "0..6"; + } + description + "RX Asynchronous FIFO Rate"; + } + leaf rx-lfec-fec-uncorrectable-errors { + type string { + length "0..6"; + } + description + "RX LFEC FEC uncorrectable errors"; + } + leaf rx-8b-10b-code-errors { + type string { + length "0..6"; + } + description + "RX 8B 10B Code Errors"; + } + } + + grouping FIA-EDM-LINK-COUNTERS { + description + "FIA EDM LINK COUNTERS"; + leaf tx-control-cells-counter { + type uint64; + description + "TX Control Cells Counter"; + } + leaf tx-data-cell-counter { + type uint64; + description + "TX Data Cell Counter"; + } + leaf tx-data-byte-counter { + type uint64; + units "byte"; + description + "TX Data Byte Counter"; + } + leaf rx-crc-errors-counter { + type uint64; + description + "RX CRC Errors Counter"; + } + leaf rx-lfec-fec-correctable-error { + type uint64; + description + "RX LFEC FEC correctable error"; + } + leaf rx-8b-10b-disparity-errors { + type uint64; + description + " RX 8B 10B Disparity Errors"; + } + leaf rx-control-cells-counter { + type uint64; + description + "RX Control Cells Counter"; + } + leaf rx-data-cell-counter { + type uint64; + description + "RX Data Cell Counter"; + } + leaf rx-data-byte-counter { + type uint64; + units "byte"; + description + "RX Data Byte Counter"; + } + leaf rx-dropped-retransmitted-control { + type uint64; + description + "RX Dropped Retransmitted Control Counter"; + } + leaf tx-asyn-fifo-rate { + type uint64; + description + "TX Asynchronous FIFO Rate"; + } + leaf rx-asyn-fifo-rate { + type uint64; + description + "RX Asynchronous FIFO Rate"; + } + leaf rx-lfec-fec-uncorrectable-errors { + type uint64; + description + "RX LFEC FEC uncorrectable errors"; + } + leaf rx-8b-10b-code-errors { + type uint64; + description + "RX 8B 10B Code Errors"; + } + } + + grouping FIA-EDM-LINK-ERROR-STATUS { + description + "FIA EDM LINK ERROR STATUS"; + leaf link-crc-error { + type uint32; + description + "Link CRC Error"; + } + leaf link-size-error { + type uint32; + description + "Link Size Error"; + } + leaf link-mis-align-error { + type uint32; + description + "Link Misalignment Error"; + } + leaf link-code-group-error { + type uint32; + description + "Code Group Error On This Link"; + } + leaf link-no-sig-lock-error { + type uint32; + description + "Link No Signal Lock Error"; + } + leaf link-no-sig-accept-error { + type uint32; + description + "Link No Signal Accept Error"; + } + leaf link-tokens-error { + type uint32; + description + "Tokens Error On This Link"; + } + leaf error-token-count { + type uint32; + description + "Token Count On This Link"; + } + } + + grouping FIA-EDM-STATS-ASIC-FMAC { + description + "FIA EDM STATS ASIC FMAC"; + container link-error-status { + description + "Error Status Of The Link"; + uses FIA-EDM-LINK-ERROR-STATUS; + } + container link-counters { + description + "Counters For This Link"; + uses FIA-EDM-LINK-COUNTERS; + } + container ovf-status { + description + "OVF Status"; + uses FIA-EDM-LINK-OVF-COUNTERS; + } + } + + grouping FIA-EDM-STATS-ASIC-FMAC-INFO { + description + "FIA EDM STATS ASIC FMAC INFO"; + container aggr-stats { + description + "Aggregate Statistics"; + uses FIA-EDM-STATS-ASIC-FMAC; + } + container incr-stats { + description + "Incremental Statistics"; + uses FIA-EDM-STATS-ASIC-FMAC; + } + leaf valid { + type boolean; + description + "Valid"; + } + leaf rack-no { + type uint32; + description + "Rack Number"; + } + leaf slot-no { + type uint32; + description + "Slot Number"; + } + leaf asic-instance { + type uint32; + description + "Asic Instance Of The Card"; + } + leaf link-no { + type uint32; + description + "Link Number"; + } + leaf link-valid { + type boolean; + description + "Link Valid"; + } + } + + grouping FIA-EDM-DEVICE-STATS-OVF-PBC { + description + "FIA EDM DEVICE STATS OVF PBC"; + leaf cmic-cmc0-pkt-count-tx-pkt { + type string { + length "0..6"; + } + description + "CMIC Cmc0PktCountTxPkt"; + } + leaf cmic-cmc0-pkt-count-rx-pkt { + type string { + length "0..6"; + } + description + "CMIC Cmc0PktCountRxPkt"; + } + leaf nbi-stat-rx-bursts-err-cnt { + type string { + length "0..6"; + } + description + "NBI StatRxBurstsErrCnt"; + } + leaf nbi-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "NBI Ecc 1bErrCnt"; + } + leaf nbi-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "NBI Ecc 2bErrCnt"; + } + leaf nbi-parity-err-cnt { + type string { + length "0..6"; + } + description + "NBI ParityErrCnt"; + } + leaf nbi-rx-ilkn-crc32-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlknCrc32ErrCnt"; + } + leaf nbi-rx-ilkn0-crc24-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0Crc24ErrCnt"; + } + leaf nbi-rx-ilkn0-burst-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0BurstErrCnt"; + } + leaf nbi-rx-ilkn0-miss-sop-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0MissSopErrCnt"; + } + leaf nbi-rx-ilkn0-miss-eop-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0MissEopErrCnt"; + } + leaf nbi-rx-ilkn0-misaligned-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0MisalignedCnt"; + } + leaf nbi-rx-ilkn1-crc24-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1Crc24ErrCnt"; + } + leaf nbi-rx-ilkn1-burst-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1BurstErrCnt"; + } + leaf nbi-rx-ilkn1-miss-sop-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1MissSopErrCnt"; + } + leaf nbi-rx-ilkn1-miss-eop-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1MissEopErrCnt"; + } + leaf nbi-rx-ilkn1-misaligned-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1MisalignedCnt"; + } + leaf nbi-tx-ilkn1-flushed-bursts-cnt { + type string { + length "0..6"; + } + description + "NBI TxIlkn1FlushedBurstsCnt"; + } + leaf nbi-rx-ilkn0-retrans-crc24-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0RetransCRC24ErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-retry-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0RetransRetryErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-wdog-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0RetransWdogErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-wrap-after-disc-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0RetransWrapAfterDiscErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-wrap-b4-disc-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0RetransWrapB4DiscErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-reached-timeout-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn0RetransReachedTimeoutErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-crc24-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1RetransCRC24ErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-retry-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1RetransRetryErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-wdog-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1RetransWdogErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-wrap-after-disc-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1RetransWrapAfterDiscErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-wrap-b4-disc-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1RetransWrapB4DiscErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-reached-timeout-err-cnt { + type string { + length "0..6"; + } + description + "NBI RxIlkn1RetransReachedTimeoutErrCnt"; + } + leaf nbi-stat-rx-frame-err-cnt { + type string { + length "0..6"; + } + description + "NBI StatRxFrameErrCnt"; + } + leaf nbi-stat-tx-frame-err-cnt { + type string { + length "0..6"; + } + description + "NBI StatTxFrameErrCnt"; + } + leaf nbi-rx-elk-err-bursts-cnt { + type string { + length "0..6"; + } + description + "NBI RxElkErrBurstsCnt"; + } + leaf nbi-rx-num-thrown-eops { + type string { + length "0..6"; + } + description + "NBI RxNumThrownEops"; + } + leaf nbi-rx-num-runts { + type string { + length "0..6"; + } + description + "NBI RxNumRunts"; + } + leaf nbi-bist-tx-crc-err-bursts-cnt { + type string { + length "0..6"; + } + description + "NBI BistTxCrcErrBurstsCnt"; + } + leaf nbi-bist-rx-err-length-bursts-cnt { + type string { + length "0..6"; + } + description + "NBI BistRxErrLengthBurstsCnt"; + } + leaf nbi-bist-rx-err-burst-index-cnt { + type string { + length "0..6"; + } + description + "NBI BistRxErrBurstIndexCnt"; + } + leaf nbi-bist-rx-err-bct-cnt { + type string { + length "0..6"; + } + description + "NBI BistRxErrBctCnt"; + } + leaf nbi-bist-rx-err-data-cnt { + type string { + length "0..6"; + } + description + "NBI BistRxErrDataCnt"; + } + leaf nbi-bist-rx-err-in-crc-err-cnt { + type string { + length "0..6"; + } + description + "NBI BistRxErrInCrcErrCnt"; + } + leaf nbi-bist-rx-err-sob-cnt { + type string { + length "0..6"; + } + description + "NBI BistRxErrSobCnt"; + } + leaf nbi-stat-tx-bursts-cnt { + type string { + length "0..6"; + } + description + "NBI StatTxBurstsCnt"; + } + leaf nbi-stat-tx-total-leng-cnt { + type string { + length "0..6"; + } + description + "NBI StatTxTotalLengCnt"; + } + leaf rxaui-total-tx-pkt-count { + type string { + length "0..6"; + } + description + "RXAUI TotalTxPktCount"; + } + leaf rxaui-total-rx-pkt-count { + type string { + length "0..6"; + } + description + "RXAUI TotalRxPktCount"; + } + leaf rxaui-rx-pkt-count-bcast-pkt { + type string { + length "0..6"; + } + description + "RXAUI RxPktCountBcastPkt"; + } + leaf rxaui-tx-pkt-count-bcast-pkt { + type string { + length "0..6"; + } + description + "RXAUI TxPktCountBcastPkt"; + } + leaf rxaui-rx-pkt-count-mcast-pkt { + type string { + length "0..6"; + } + description + "RXAUI RxPktCountMcastPkt"; + } + leaf rxaui-tx-pkt-count-mcast-pkt { + type string { + length "0..6"; + } + description + "RXAUI TxPktCountMcastPkt"; + } + leaf rxaui-rx-pkt-count-ucast-pkt { + type string { + length "0..6"; + } + description + "RXAUI RxPktCountUcastPkt"; + } + leaf rxaui-tx-pkt-count-ucast-pkt { + type string { + length "0..6"; + } + description + "RXAUI TxPktCountUcastPkt"; + } + leaf rxaui-rx-err-drop-pkt-cnt { + type string { + length "0..6"; + } + description + "RXAUI RxErrDropPktCnt"; + } + leaf rxaui-tx-err-drop-pkt-cnt { + type string { + length "0..6"; + } + description + "RXAUI TxErrDropPktCnt"; + } + leaf rxaui-byte-count-tx-pkt { + type string { + length "0..6"; + } + description + "RXAUI ByteCountTxPkt"; + } + leaf rxaui-byte-count-rx-pkt { + type string { + length "0..6"; + } + description + "RXAUI ByteCountRxPkt"; + } + leaf rxaui-rx-dscrd-pkt-cnt { + type string { + length "0..6"; + } + description + "RXAUI RxDscrdPktCnt"; + } + leaf rxaui-tx-dscrd-pkt-cnt { + type string { + length "0..6"; + } + description + "RXAUI TxDscrdPktCnt"; + } + leaf ire-nif-packet-counter { + type string { + length "0..6"; + } + description + "IRE NifPacketCounter"; + } + leaf il-total-rx-pkt-count { + type string { + length "0..6"; + } + description + "IL TotalRxPktCount"; + } + leaf il-total-tx-pkt-count { + type string { + length "0..6"; + } + description + "IL TotalTxPktCount"; + } + leaf il-rx-err-drop-pkt-cnt { + type string { + length "0..6"; + } + description + "IL RxErrDropPktCnt"; + } + leaf il-tx-err-drop-pkt-cnt { + type string { + length "0..6"; + } + description + "IL TxErrDropPktCnt"; + } + leaf il-byte-count-tx-pkt { + type string { + length "0..6"; + } + description + "IL ByteCountTxPkt"; + } + leaf il-byte-count-rx-pkt { + type string { + length "0..6"; + } + description + "IL ByteCountRxPkt"; + } + leaf il-rx-dscrd-pkt-cnt { + type string { + length "0..6"; + } + description + "IL RxDscrdPktCnt"; + } + leaf il-tx-dscrd-pkt-cnt { + type string { + length "0..6"; + } + description + "IL TxDscrdPktCnt"; + } + leaf il-rx-pkt-count-bcast-pkt { + type string { + length "0..6"; + } + description + "IL RxPktCountBcastPkt"; + } + leaf il-tx-pkt-count-bcast-pkt { + type string { + length "0..6"; + } + description + "IL TxPktCountBcastPkt"; + } + leaf il-rx-pkt-count-mcast-pkt { + type string { + length "0..6"; + } + description + "IL RxPktCountMcastPkt"; + } + leaf il-tx-pkt-count-mcast-pkt { + type string { + length "0..6"; + } + description + "IL TxPktCountMcastPkt"; + } + leaf il-rx-pkt-count-ucast-pkt { + type string { + length "0..6"; + } + description + "IL RxPktCountUcastPkt"; + } + leaf il-tx-pkt-count-ucast-pkt { + type string { + length "0..6"; + } + description + "IL TxPktCountUcastPkt"; + } + leaf iqm-enq-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM EnqPktCnt"; + } + leaf iqm-enq-byte-cnt { + type string { + length "0..6"; + } + description + "IQM EnqByteCnt"; + } + leaf iqm-deq-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM DeqPktCnt"; + } + leaf iqm-deq-byte-cnt { + type string { + length "0..6"; + } + description + "IQM DeqByteCnt"; + } + leaf iqm-tot-dscrd-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM TotDscrdPktCnt"; + } + leaf iqm-tot-dscrd-byte-cnt { + type string { + length "0..6"; + } + description + "IQM TotDscrdByteCnt"; + } + leaf iqm-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "IQM Ecc 1bErrCnt"; + } + leaf iqm-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "IQM Ecc 2bErrCnt"; + } + leaf iqm-parity-err-cnt { + type string { + length "0..6"; + } + description + "IQM ParityErrCnt"; + } + leaf iqm-deq-delete-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM DeqDeletePktCnt"; + } + leaf iqm-ecn-dscrd-msk-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM EcnDscrdMskPktCnt"; + } + leaf iqm-q-tot-dscrd-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM QTotDscrdPktCnt"; + } + leaf iqm-q-deq-delete-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM QDeqDeletePktCnt"; + } + leaf iqm-rjct-db-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctDbPktCnt"; + } + leaf iqm-rjct-bdb-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctBdbPktCnt"; + } + leaf iqm-rjct-bdb-protct-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctBdbProtctPktCnt"; + } + leaf iqm-rjct-oc-bd-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctOcBdPktCnt"; + } + leaf iqm-rjct-sn-err-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctSnErrPktCnt"; + } + leaf iqm-rjct-mc-err-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctMcErrPktCnt"; + } + leaf iqm-rjct-rsrc-err-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctRsrcErrPktCnt"; + } + leaf iqm-rjct-qnvalid-err-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctQnvalidErrPktCnt"; + } + leaf iqm-rjct-cnm-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctCnmPktCnt"; + } + leaf iqm-rjct-dyn-space-pkt-cnt { + type string { + length "0..6"; + } + description + "IQM RjctDynSpacePktCnt"; + } + leaf ipt-fdt-pkt-cnt { + type string { + length "0..6"; + } + description + "IPT FdtPktCnt"; + } + leaf ipt-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "IPT Ecc 1bErrCnt"; + } + leaf ipt-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "IPT Ecc 2bErrCnt"; + } + leaf ipt-parity-err-cnt { + type string { + length "0..6"; + } + description + "IPT ParityErrCnt"; + } + leaf ipt-crc-err-cnt { + type string { + length "0..6"; + } + description + "IPT CrcErrCnt"; + } + leaf ipt-crc-err-del-buff-cnt { + type string { + length "0..6"; + } + description + "IPT CrcErrDelBuffCnt"; + } + leaf ipt-cpu-del-buff-cnt { + type string { + length "0..6"; + } + description + "IPT CpuDelBuffCnt"; + } + leaf ipt-cpu-rel-buff-cnt { + type string { + length "0..6"; + } + description + "IPT CpuRelBuffCnt"; + } + leaf ipt-crc-err-buff-fifo-full-cnt { + type string { + length "0..6"; + } + description + "IPT CrcErrBuffFifoFullCnt"; + } + leaf fdt-data-cell-cnt { + type string { + length "0..6"; + } + description + "FDT DataCellCnt"; + } + leaf fdt-data-byte-cnt { + type string { + length "0..6"; + } + description + "FDT DataByteCnt"; + } + leaf fdt-crc-dropped-pck-cnt { + type string { + length "0..6"; + } + description + "FDT CrcDroppedPckCnt"; + } + leaf fdt-invalid-destq-drop-cell-cnt { + type string { + length "0..6"; + } + description + "FDT Invalid Destination Drop Cell Count"; + } + leaf fdt-indirect-command-count { + type string { + length "0..6"; + } + description + "FDT IndirectCommandCount"; + } + leaf fdt-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FDT Ecc 1bErrCnt"; + } + leaf fdt-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FDT Ecc 2bErrCnt"; + } + leaf fdt-parity-err-cnt { + type string { + length "0..6"; + } + description + "FDT ParityErrCnt"; + } + leaf fdt-crc-dropped-cell-cnt { + type string { + length "0..6"; + } + description + "FDT CrcDroppedCellCnt"; + } + leaf fcr-control-cell-cnt { + type string { + length "0..6"; + } + description + "FCR ControlCellCnt"; + } + leaf fcr-cell-drop-cnt { + type string { + length "0..6"; + } + description + "FCR CellDropCnt"; + } + leaf fcr-credit-cell-drop-cnt { + type string { + length "0..6"; + } + description + "FCR CreditCellDropCnt"; + } + leaf fcr-fs-cell-drop-cnt { + type string { + length "0..6"; + } + description + "FCR FSCellDropCnt"; + } + leaf fcr-rt-cell-drop-cnt { + type string { + length "0..6"; + } + description + "FCR RTCellDropCnt"; + } + leaf fcr-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FCR Ecc 1bErrCnt"; + } + leaf fcr-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FCR Ecc 2bErrCnt"; + } + leaf fdr-data-cell-cnt { + type string { + length "0..6"; + } + description + "FDR DataCellCnt"; + } + leaf fdr-data-byte-cnt { + type string { + length "0..6"; + } + description + "FDR DataByteCnt"; + } + leaf fdr-crc-dropped-pck-cnt { + type string { + length "0..6"; + } + description + "FDR CrcDroppedPckCnt"; + } + leaf fdr-p-pkt-cnt { + type string { + length "0..6"; + } + description + "FDR PPktCnt"; + } + leaf fdr-prm-error-filter-cnt { + type string { + length "0..6"; + } + description + "FDR PrmErrorFilterCnt"; + } + leaf fdr-sec-error-filter-cnt { + type string { + length "0..6"; + } + description + "FDR SecErrorFilterCnt"; + } + leaf fdr-prm-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FDR PrmEcc 1bErrCnt"; + } + leaf fdr-prm-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FDR PrmEcc 2bErrCnt"; + } + leaf fdr-sec-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FDR SecEcc 1bErrCnt"; + } + leaf fdr-sec-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FDR SecEcc 2bErrCnt"; + } + leaf egq-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "EGQ Ecc 1bErrCnt"; + } + leaf egq-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "EGQ Ecc 2bErrCnt"; + } + leaf egq-parity-err-cnt { + type string { + length "0..6"; + } + description + "EGQ ParityErrCnt"; + } + leaf egq-dbf-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "EGQ DbfEcc 1bErrCnt"; + } + leaf egq-dbf-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "EGQ DbfEcc 2bErrCnt"; + } + leaf egq-empty-mcid-counter { + type string { + length "0..6"; + } + description + "EGQ EmptyMcidCounter"; + } + leaf egq-rqp-discard-packet-counter { + type string { + length "0..6"; + } + description + "EGQ RqpDiscardPacketCounter"; + } + leaf egq-ehp-discard-packet-counter { + type string { + length "0..6"; + } + description + "EGQ EhpDiscardPacketCounter"; + } + leaf egq-ipt-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ IptPktCnt"; + } + leaf epni-epe-pkt-cnt { + type string { + length "0..6"; + } + description + "EPNI EpePktCnt"; + } + leaf epni-epe-byte-cnt { + type string { + length "0..6"; + } + description + "EPNI EpeByteCnt"; + } + leaf epni-epe-discard-pkt-cnt { + type string { + length "0..6"; + } + description + "EPNI EpeDiscardPktCnt"; + } + leaf epni-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "EPNI Ecc 1bErrCnt"; + } + leaf epni-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "EPNI Ecc 2bErrCnt"; + } + leaf epni-parity-err-cnt { + type string { + length "0..6"; + } + description + "EPNI ParityErrCnt"; + } + leaf egq-pqp-ucast-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpUcastPktCnt"; + } + leaf egq-pqp-ucast-h-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpUcastHPktCnt"; + } + leaf egq-pqp-ucast-l-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpUcastLPktCnt"; + } + leaf egq-pqp-ucast-bytes-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpUcastBytesCnt"; + } + leaf egq-pqp-ucast-discard-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpUcastDiscardPktCnt"; + } + leaf egq-pqp-mcast-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpMcastPktCnt"; + } + leaf egq-pqp-mcast-h-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpMcastHPktCnt"; + } + leaf egq-pqp-mcast-l-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpMcastLPktCnt"; + } + leaf egq-pqp-mcast-bytes-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpMcastBytesCnt"; + } + leaf egq-pqp-mcast-discard-pkt-cnt { + type string { + length "0..6"; + } + description + "EGQ PqpMcastDiscardPktCnt"; + } + leaf fct-control-cell-cnt { + type string { + length "0..6"; + } + description + "FCT ControlCellCnt"; + } + leaf fct-unrch-crdt-cnt { + type string { + length "0..6"; + } + description + "FCT UnrchCrdtCnt"; + } + leaf idr-reassembly-errors { + type string { + length "0..6"; + } + description + "IDR ReassemblyErrors"; + } + leaf idr-mmu-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "IDR MmuEcc 1bErrCnt"; + } + leaf idr-mmu-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "IDR MmuEcc 2bErrCnt"; + } + leaf idr-discarded-packets0-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedPackets0Cnt"; + } + leaf idr-discarded-packets1-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedPackets1Cnt"; + } + leaf idr-discarded-packets2-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedPackets2Cnt"; + } + leaf idr-discarded-packets3-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedPackets3Cnt"; + } + leaf idr-discarded-octets0-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedOctets0Cnt"; + } + leaf idr-discarded-octets1-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedOctets1Cnt"; + } + leaf idr-discarded-octets2-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedOctets2Cnt"; + } + leaf idr-discarded-octets3-cnt { + type string { + length "0..6"; + } + description + "IDR DiscardedOctets3Cnt"; + } + leaf mmu-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "MMU Ecc 1bErrCnt"; + } + leaf mmu-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "MMU Ecc 2bErrCnt"; + } + leaf oamp-parity-err-cnt { + type string { + length "0..6"; + } + description + "OAMP ParityErrCnt"; + } + leaf oamp-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "OAMP Ecc 1bErrCnt"; + } + leaf oamp-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "OAMP Ecc 2bErrCnt"; + } + leaf crps-parity-err-cnt { + type string { + length "0..6"; + } + description + "CRPS ParityErrCnt"; + } + leaf fmac0-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Kpcs0TstRxErrCnt"; + } + leaf fmac1-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Kpcs0TstRxErrCnt"; + } + leaf fmac2-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Kpcs0TstRxErrCnt"; + } + leaf fmac3-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Kpcs0TstRxErrCnt"; + } + leaf fmac4-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Kpcs0TstRxErrCnt"; + } + leaf fmac5-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Kpcs0TstRxErrCnt"; + } + leaf fmac6-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Kpcs0TstRxErrCnt"; + } + leaf fmac7-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Kpcs0TstRxErrCnt"; + } + leaf fmac8-kpcs0-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Kpcs0TstRxErrCnt"; + } + leaf fmac0-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Kpcs1TstRxErrCnt"; + } + leaf fmac1-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Kpcs1TstRxErrCnt"; + } + leaf fmac2-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Kpcs1TstRxErrCnt"; + } + leaf fmac3-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Kpcs1TstRxErrCnt"; + } + leaf fmac4-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Kpcs1TstRxErrCnt"; + } + leaf fmac5-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Kpcs1TstRxErrCnt"; + } + leaf fmac6-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Kpcs1TstRxErrCnt"; + } + leaf fmac7-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Kpcs1TstRxErrCnt"; + } + leaf fmac8-kpcs1-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Kpcs1TstRxErrCnt"; + } + leaf fmac0-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Kpcs2TstRxErrCnt"; + } + leaf fmac1-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Kpcs2TstRxErrCnt"; + } + leaf fmac2-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Kpcs2TstRxErrCnt"; + } + leaf fmac3-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Kpcs2TstRxErrCnt"; + } + leaf fmac4-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Kpcs2TstRxErrCnt"; + } + leaf fmac5-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Kpcs2TstRxErrCnt"; + } + leaf fmac6-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Kpcs2TstRxErrCnt"; + } + leaf fmac7-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Kpcs2TstRxErrCnt"; + } + leaf fmac8-kpcs2-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Kpcs2TstRxErrCnt"; + } + leaf fmac0-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Kpcs3TstRxErrCnt"; + } + leaf fmac1-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Kpcs3TstRxErrCnt"; + } + leaf fmac2-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Kpcs3TstRxErrCnt"; + } + leaf fmac3-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Kpcs3TstRxErrCnt"; + } + leaf fmac4-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Kpcs3TstRxErrCnt"; + } + leaf fmac5-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Kpcs3TstRxErrCnt"; + } + leaf fmac6-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Kpcs3TstRxErrCnt"; + } + leaf fmac7-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Kpcs3TstRxErrCnt"; + } + leaf fmac8-kpcs3-tst-rx-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Kpcs3TstRxErrCnt"; + } + leaf fmac0-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Tst0ErrCnt"; + } + leaf fmac1-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Tst0ErrCnt"; + } + leaf fmac2-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Tst0ErrCnt"; + } + leaf fmac3-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Tst0ErrCnt"; + } + leaf fmac4-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Tst0ErrCnt"; + } + leaf fmac5-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Tst0ErrCnt"; + } + leaf fmac6-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Tst0ErrCnt"; + } + leaf fmac7-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Tst0ErrCnt"; + } + leaf fmac8-tst0-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Tst0ErrCnt"; + } + leaf fmac0-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Tst1ErrCnt"; + } + leaf fmac1-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Tst1ErrCnt"; + } + leaf fmac2-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Tst1ErrCnt"; + } + leaf fmac3-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Tst1ErrCnt"; + } + leaf fmac4-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Tst1ErrCnt"; + } + leaf fmac5-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Tst1ErrCnt"; + } + leaf fmac6-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Tst1ErrCnt"; + } + leaf fmac7-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Tst1ErrCnt"; + } + leaf fmac8-tst1-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Tst1ErrCnt"; + } + leaf fmac0-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Tst2ErrCnt"; + } + leaf fmac1-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Tst2ErrCnt"; + } + leaf fmac2-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Tst2ErrCnt"; + } + leaf fmac3-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Tst2ErrCnt"; + } + leaf fmac4-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Tst2ErrCnt"; + } + leaf fmac5-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Tst2ErrCnt"; + } + leaf fmac6-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Tst2ErrCnt"; + } + leaf fmac7-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Tst2ErrCnt"; + } + leaf fmac8-tst2-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Tst2ErrCnt"; + } + leaf fmac0-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Tst3ErrCnt"; + } + leaf fmac1-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Tst3ErrCnt"; + } + leaf fmac2-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Tst3ErrCnt"; + } + leaf fmac3-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Tst3ErrCnt"; + } + leaf fmac4-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Tst3ErrCnt"; + } + leaf fmac5-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Tst3ErrCnt"; + } + leaf fmac6-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Tst3ErrCnt"; + } + leaf fmac7-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Tst3ErrCnt"; + } + leaf fmac8-tst3-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Tst3ErrCnt"; + } + leaf fmac0-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Ecc 1bErrCnt"; + } + leaf fmac1-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Ecc 1bErrCnt"; + } + leaf fmac2-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Ecc 1bErrCnt"; + } + leaf fmac3-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Ecc 1bErrCnt"; + } + leaf fmac4-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Ecc 1bErrCnt"; + } + leaf fmac5-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Ecc 1bErrCnt"; + } + leaf fmac6-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Ecc 1bErrCnt"; + } + leaf fmac7-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Ecc 1bErrCnt"; + } + leaf fmac8-ecc-1b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Ecc 1bErrCnt"; + } + leaf fmac0-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC0 Ecc 2bErrCnt"; + } + leaf fmac1-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC1 Ecc 2bErrCnt"; + } + leaf fmac2-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC2 Ecc 2bErrCnt"; + } + leaf fmac3-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC3 Ecc 2bErrCnt"; + } + leaf fmac4-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC4 Ecc 2bErrCnt"; + } + leaf fmac5-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC5 Ecc 2bErrCnt"; + } + leaf fmac6-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC6 Ecc 2bErrCnt"; + } + leaf fmac7-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC7 Ecc 2bErrCnt"; + } + leaf fmac8-ecc-2b-err-cnt { + type string { + length "0..6"; + } + description + "FMAC8 Ecc 2bErrCnt"; + } + leaf olp-incoming-bad-identifier-counter { + type string { + length "0..6"; + } + description + "OLP IncomingBadIdentifierCounter"; + } + leaf olp-incoming-bad-reassembly-counter { + type string { + length "0..6"; + } + description + "OLP IncomingBadReassemblyCounter"; + } + leaf cfc-parity-err-cnt { + type string { + length "0..6"; + } + description + "CFC ParityErrCnt"; + } + leaf cfc-ilkn0-oob-rx-crc-err-cntr { + type string { + length "0..6"; + } + description + "CFC Ilkn0OobRxCrcErrCntr"; + } + leaf cfc-ilkn1-oob-rx-crc-err-cntr { + type string { + length "0..6"; + } + description + "CFC Ilkn1OobRxCrcErrCntr"; + } + leaf cfc-spi-oob-rx0-frm-err-cnt { + type string { + length "0..6"; + } + description + "CFC SpiOobRx0FrmErrCnt"; + } + leaf cfc-spi-oob-rx0-dip2-err-cnt { + type string { + length "0..6"; + } + description + "CFC SpiOobRx0Dip2ErrCnt"; + } + leaf cfc-spi-oob-rx1-frm-err-cnt { + type string { + length "0..6"; + } + description + "CFC SpiOobRx1FrmErrCnt"; + } + leaf cfc-spi-oob-rx1-dip2-err-cnt { + type string { + length "0..6"; + } + description + "CFC SpiOobRx1Dip2ErrCnt"; + } + leaf cgm-cgm-uc-pd-dropped-cnt { + type string { + length "0..6"; + } + description + "CGM CgmUcPdDroppedCnt"; + } + leaf cgm-cgm-mc-rep-pd-dropped-cnt { + type string { + length "0..6"; + } + description + "CGM CgmMcRepPdDroppedCnt"; + } + leaf cgm-cgm-uc-db-dropped-by-rqp-cnt { + type string { + length "0..6"; + } + description + "CGM CgmUcDbDroppedByRqpCnt"; + } + leaf cgm-cgm-uc-db-dropped-by-pqp-cnt { + type string { + length "0..6"; + } + description + "CGM CgmUcDbDroppedByPqpCnt"; + } + leaf cgm-cgm-mc-rep-db-dropped-cnt { + type string { + length "0..6"; + } + description + "CGM CgmMcRepDbDroppedCnt"; + } + leaf cgm-cgm-mc-db-dropped-cnt { + type string { + length "0..6"; + } + description + "CGM CgmMcDbDroppedCnt"; + } + leaf drca-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCA FullErrCnt"; + } + leaf drca-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCA SingleErrCnt"; + } + leaf drca-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCA CalibBistFullErrCnt"; + } + leaf drca-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCA LoopbackFullErrCnt"; + } + leaf drcb-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCB FullErrCnt"; + } + leaf drcb-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCB SingleErrCnt"; + } + leaf drcb-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCB CalibBistFullErrCnt"; + } + leaf drcb-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCB LoopbackFullErrCnt"; + } + leaf drcc-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCC FullErrCnt"; + } + leaf drcc-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCC SingleErrCnt"; + } + leaf drcc-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCC CalibBistFullErrCnt"; + } + leaf drcc-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCC LoopbackFullErrCnt"; + } + leaf drcd-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCD FullErrCnt"; + } + leaf drcd-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCD SingleErrCnt"; + } + leaf drcd-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCD CalibBistFullErrCnt"; + } + leaf drcd-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCD LoopbackFullErrCnt"; + } + leaf drce-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCE FullErrCnt"; + } + leaf drce-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCE SingleErrCnt"; + } + leaf drce-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCE CalibBistFullErrCnt"; + } + leaf drce-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCE LoopbackFullErrCnt"; + } + leaf drcf-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCF FullErrCnt"; + } + leaf drcf-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCF SingleErrCnt"; + } + leaf drcf-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCF CalibBistFullErrCnt"; + } + leaf drcf-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCF LoopbackFullErrCnt"; + } + leaf drcg-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCG FullErrCnt"; + } + leaf drcg-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCG SingleErrCnt"; + } + leaf drcg-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCG CalibBistFullErrCnt"; + } + leaf drcg-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCG LoopbackFullErrCnt"; + } + leaf drch-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCH FullErrCnt"; + } + leaf drch-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCH SingleErrCnt"; + } + leaf drch-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCH CalibBistFullErrCnt"; + } + leaf drch-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCH LoopbackFullErrCnt"; + } + leaf drcbroadcast-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCBROADCAST FullErrCnt"; + } + leaf drcbroadcast-single-err-cnt { + type string { + length "0..6"; + } + description + "DRCBROADCAST SingleErrCnt"; + } + leaf drcbroadcast-calib-bist-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCBROADCAST CalibBistFullErrCnt"; + } + leaf drcbroadcast-loopback-full-err-cnt { + type string { + length "0..6"; + } + description + "DRCBROADCAST LoopbackFullErrCnt"; + } + } + + grouping FIA-EDM-DEVICE-STATS-PBC-OTN { + description + "FIA EDM DEVICE STATS PBC OTN"; + leaf il-total-rx-pkt-count { + type uint64; + description + "IL TotalRxPktCount"; + } + leaf il-total-tx-pkt-count { + type uint64; + description + "IL TotalTxPktCount"; + } + } + + grouping FIA-EDM-DEVICE-STATS-PBC { + description + "FIA EDM DEVICE STATS PBC"; + leaf rx-internal-error { + type uint64; + description + "RxInternalError"; + } + leaf rx-internal-drop { + type uint64; + description + "RxInternalDrop"; + } + leaf tx-internal-error { + type uint64; + description + "TxInternalError"; + } + leaf tx-internal-drop { + type uint64; + description + "TxInternalDrop"; + } + leaf cmic-cmc0-pkt-count-tx-pkt { + type uint64; + description + "CMIC Cmc0PktCountTxPkt"; + } + leaf cmic-cmc0-pkt-count-rx-pkt { + type uint64; + description + "CMIC Cmc0PktCountRxPkt"; + } + leaf nbi-stat-rx-bursts-err-cnt { + type uint64; + description + "NBI StatRxBurstsErrCnt"; + } + leaf nbi-ecc-1b-err-cnt { + type uint64; + description + "NBI Ecc 1bErrCnt"; + } + leaf nbi-ecc-2b-err-cnt { + type uint64; + description + "NBI Ecc 2bErrCnt"; + } + leaf nbi-parity-err-cnt { + type uint64; + description + "NBI ParityErrCnt"; + } + leaf nbi-rx-ilkn-crc32-err-cnt { + type uint64; + description + "NBI RxIlknCrc32ErrCnt"; + } + leaf nbi-rx-ilkn0-crc24-err-cnt { + type uint64; + description + "NBI RxIlkn0Crc24ErrCnt"; + } + leaf nbi-rx-ilkn0-burst-err-cnt { + type uint64; + description + "NBI RxIlkn0BurstErrCnt"; + } + leaf nbi-rx-ilkn0-miss-sop-err-cnt { + type uint64; + description + "NBI RxIlkn0MissSopErrCnt"; + } + leaf nbi-rx-ilkn0-miss-eop-err-cnt { + type uint64; + description + "NBI RxIlkn0MissEopErrCnt"; + } + leaf nbi-rx-ilkn0-misaligned-cnt { + type uint64; + description + "NBI RxIlkn0MisalignedCnt"; + } + leaf nbi-rx-ilkn1-crc24-err-cnt { + type uint64; + description + "NBI RxIlkn1Crc24ErrCnt"; + } + leaf nbi-rx-ilkn1-burst-err-cnt { + type uint64; + description + "NBI RxIlkn1BurstErrCnt"; + } + leaf nbi-rx-ilkn1-miss-sop-err-cnt { + type uint64; + description + "NBI RxIlkn1MissSopErrCnt"; + } + leaf nbi-rx-ilkn1-miss-eop-err-cnt { + type uint64; + description + "NBI RxIlkn1MissEopErrCnt"; + } + leaf nbi-rx-ilkn1-misaligned-cnt { + type uint64; + description + "NBI RxIlkn1MisalignedCnt"; + } + leaf nbi-tx-ilkn1-flushed-bursts-cnt { + type uint64; + description + "NBI TxIlkn1FlushedBurstsCnt"; + } + leaf nbi-rx-ilkn0-retrans-crc24-err-cnt { + type uint64; + description + "NBI RxIlkn0RetransCRC24ErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-retry-err-cnt { + type uint64; + description + "NBI RxIlkn0RetransRetryErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-wdog-err-cnt { + type uint64; + description + "NBI RxIlkn0RetransWdogErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-wrap-after-disc-err-cnt { + type uint64; + description + "NBI RxIlkn0RetransWrapAfterDiscErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-wrap-b4-disc-err-cnt { + type uint64; + description + "NBI RxIlkn0RetransWrapB4DiscErrCnt"; + } + leaf nbi-rx-ilkn0-retrans-reached-timeout-err-cnt { + type uint64; + description + "NBI RxIlkn0RetransReachedTimeoutErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-crc24-err-cnt { + type uint64; + description + "NBI RxIlkn1RetransCRC24ErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-retry-err-cnt { + type uint64; + description + "NBI RxIlkn1RetransRetryErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-wdog-err-cnt { + type uint64; + description + "NBI RxIlkn1RetransWdogErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-wrap-after-disc-err-cnt { + type uint64; + description + "NBI RxIlkn1RetransWrapAfterDiscErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-wrap-b4-disc-err-cnt { + type uint64; + description + "NBI RxIlkn1RetransWrapB4DiscErrCnt"; + } + leaf nbi-rx-ilkn1-retrans-reached-timeout-err-cnt { + type uint64; + description + "NBI RxIlkn1RetransReachedTimeoutErrCnt"; + } + leaf nbi-stat-rx-frame-err-cnt { + type uint64; + description + "NBI StatRxFrameErrCnt"; + } + leaf nbi-stat-tx-frame-err-cnt { + type uint64; + description + "NBI StatTxFrameErrCnt"; + } + leaf nbi-rx-elk-err-bursts-cnt { + type uint64; + description + "NBI RxElkErrBurstsCnt"; + } + leaf nbi-rx-num-thrown-eops { + type uint64; + description + "NBI RxNumThrownEops"; + } + leaf nbi-rx-num-runts { + type uint64; + description + "NBI RxNumRunts"; + } + leaf nbi-bist-tx-crc-err-bursts-cnt { + type uint64; + description + "NBI BistTxCrcErrBurstsCnt"; + } + leaf nbi-bist-rx-err-length-bursts-cnt { + type uint64; + description + "NBI BistRxErrLengthBurstsCnt"; + } + leaf nbi-bist-rx-err-burst-index-cnt { + type uint64; + description + "NBI BistRxErrBurstIndexCnt"; + } + leaf nbi-bist-rx-err-bct-cnt { + type uint64; + description + "NBI BistRxErrBctCnt"; + } + leaf nbi-bist-rx-err-data-cnt { + type uint64; + description + "NBI BistRxErrDataCnt"; + } + leaf nbi-bist-rx-err-in-crc-err-cnt { + type uint64; + description + "NBI BistRxErrInCrcErrCnt"; + } + leaf nbi-bist-rx-err-sob-cnt { + type uint64; + description + "NBI BistRxErrSobCnt"; + } + leaf nbi-stat-tx-bursts-cnt { + type uint64; + description + "NBI StatTxBurstsCnt"; + } + leaf nbi-stat-tx-total-leng-cnt { + type uint64; + description + "NBI StatTxTotalLengCnt"; + } + leaf rxaui-total-tx-pkt-count { + type uint64; + description + "RXAUI TotalTxPktCount"; + } + leaf rxaui-total-rx-pkt-count { + type uint64; + description + "RXAUI TotalRxPktCount"; + } + leaf rxaui-rx-pkt-count-bcast-pkt { + type uint64; + description + "RXAUI RxPktCountBcastPkt"; + } + leaf rxaui-tx-pkt-count-bcast-pkt { + type uint64; + description + "RXAUI TxPktCountBcastPkt"; + } + leaf rxaui-rx-pkt-count-mcast-pkt { + type uint64; + description + "RXAUI RxPktCountMcastPkt"; + } + leaf rxaui-tx-pkt-count-mcast-pkt { + type uint64; + description + "RXAUI TxPktCountMcastPkt"; + } + leaf rxaui-rx-pkt-count-ucast-pkt { + type uint64; + description + "RXAUI RxPktCountUcastPkt"; + } + leaf rxaui-tx-pkt-count-ucast-pkt { + type uint64; + description + "RXAUI TxPktCountUcastPkt"; + } + leaf rxaui-rx-err-drop-pkt-cnt { + type uint64; + description + "RXAUI RxErrDropPktCnt"; + } + leaf rxaui-tx-err-drop-pkt-cnt { + type uint64; + description + "RXAUI TxErrDropPktCnt"; + } + leaf rxaui-byte-count-tx-pkt { + type uint64; + description + "RXAUI ByteCountTxPkt"; + } + leaf rxaui-byte-count-rx-pkt { + type uint64; + description + "RXAUI ByteCountRxPkt"; + } + leaf rxaui-rx-dscrd-pkt-cnt { + type uint64; + description + "RXAUI RxDscrdPktCnt"; + } + leaf rxaui-tx-dscrd-pkt-cnt { + type uint64; + description + "RXAUI TxDscrdPktCnt"; + } + leaf ire-nif-packet-counter { + type uint64; + description + "IRE NifPacketCounter"; + } + leaf il-total-rx-pkt-count { + type uint64; + description + "IL TotalRxPktCount"; + } + leaf il-total-tx-pkt-count { + type uint64; + description + "IL TotalTxPktCount"; + } + leaf il-rx-err-drop-pkt-cnt { + type uint64; + description + "IL RxErrDropPktCnt"; + } + leaf il-tx-err-drop-pkt-cnt { + type uint64; + description + "IL TxErrDropPktCnt"; + } + leaf il-byte-count-tx-pkt { + type uint64; + description + "IL ByteCountTxPkt"; + } + leaf il-byte-count-rx-pkt { + type uint64; + description + "IL ByteCountRxPkt"; + } + leaf il-rx-dscrd-pkt-cnt { + type uint64; + description + "IL RxDscrdPktCnt"; + } + leaf il-tx-dscrd-pkt-cnt { + type uint64; + description + "IL TxDscrdPktCnt"; + } + leaf il-rx-pkt-count-bcast-pkt { + type uint64; + description + "IL RxPktCountBcastPkt"; + } + leaf il-tx-pkt-count-bcast-pkt { + type uint64; + description + "IL TxPktCountBcastPkt"; + } + leaf il-rx-pkt-count-mcast-pkt { + type uint64; + description + "IL RxPktCountMcastPkt"; + } + leaf il-tx-pkt-count-mcast-pkt { + type uint64; + description + "IL TxPktCountMcastPkt"; + } + leaf il-rx-pkt-count-ucast-pkt { + type uint64; + description + "IL RxPktCountUcastPkt"; + } + leaf il-tx-pkt-count-ucast-pkt { + type uint64; + description + "IL TxPktCountUcastPkt"; + } + leaf iqm-enq-pkt-cnt { + type uint64; + description + "IQM EnqPktCnt"; + } + leaf iqm-enq-byte-cnt { + type uint64; + description + "IQM EnqByteCnt"; + } + leaf iqm-deq-pkt-cnt { + type uint64; + description + "IQM DeqPktCnt"; + } + leaf iqm-deq-byte-cnt { + type uint64; + description + "IQM DeqByteCnt"; + } + leaf iqm-tot-dscrd-pkt-cnt { + type uint64; + description + "IQM TotDscrdPktCnt"; + } + leaf iqm-tot-dscrd-byte-cnt { + type uint64; + description + "IQM TotDscrdByteCnt"; + } + leaf iqm-ecc-1b-err-cnt { + type uint64; + description + "IQM Ecc 1bErrCnt"; + } + leaf iqm-ecc-2b-err-cnt { + type uint64; + description + "IQM Ecc 2bErrCnt"; + } + leaf iqm-parity-err-cnt { + type uint64; + description + "IQM ParityErrCnt"; + } + leaf iqm-deq-delete-pkt-cnt { + type uint64; + description + "IQM DeqDeletePktCnt"; + } + leaf iqm-ecn-dscrd-msk-pkt-cnt { + type uint64; + description + "IQM EcnDscrdMskPktCnt"; + } + leaf iqm-q-tot-dscrd-pkt-cnt { + type uint64; + description + "IQM QTotDscrdPktCnt"; + } + leaf iqm-q-deq-delete-pkt-cnt { + type uint64; + description + "IQM QDeqDeletePktCnt"; + } + leaf iqm-rjct-db-pkt-cnt { + type uint64; + description + "IQM RjctDbPktCnt"; + } + leaf iqm-rjct-bdb-pkt-cnt { + type uint64; + description + "IQM RjctBdbPktCnt"; + } + leaf iqm-rjct-bdb-protct-pkt-cnt { + type uint64; + description + "IQM RjctBdbProtctPktCnt"; + } + leaf iqm-rjct-oc-bd-pkt-cnt { + type uint64; + description + "IQM RjctOcBdPktCnt"; + } + leaf iqm-rjct-sn-err-pkt-cnt { + type uint64; + description + "IQM RjctSnErrPktCnt"; + } + leaf iqm-rjct-mc-err-pkt-cnt { + type uint64; + description + "IQM RjctMcErrPktCnt"; + } + leaf iqm-rjct-rsrc-err-pkt-cnt { + type uint64; + description + "IQM RjctRsrcErrPktCnt"; + } + leaf iqm-rjct-qnvalid-err-pkt-cnt { + type uint64; + description + "IQM RjctQnvalidErrPktCnt"; + } + leaf iqm-rjct-cnm-pkt-cnt { + type uint64; + description + "IQM RjctCnmPktCnt"; + } + leaf iqm-rjct-dyn-space-pkt-cnt { + type uint64; + description + "IQM RjctDynSpacePktCnt"; + } + leaf ipt-fdt-pkt-cnt { + type uint64; + description + "IPT FdtPktCnt"; + } + leaf ipt-ecc-1b-err-cnt { + type uint64; + description + "IPT Ecc 1bErrCnt"; + } + leaf ipt-ecc-2b-err-cnt { + type uint64; + description + "IPT Ecc 2bErrCnt"; + } + leaf ipt-parity-err-cnt { + type uint64; + description + "IPT ParityErrCnt"; + } + leaf ipt-crc-err-cnt { + type uint64; + description + "IPT CrcErrCnt"; + } + leaf ipt-crc-err-del-buff-cnt { + type uint64; + description + "IPT CrcErrDelBuffCnt"; + } + leaf ipt-cpu-del-buff-cnt { + type uint64; + description + "IPT CpuDelBuffCnt"; + } + leaf ipt-cpu-rel-buff-cnt { + type uint64; + description + "IPT CpuRelBuffCnt"; + } + leaf ipt-crc-err-buff-fifo-full-cnt { + type uint64; + description + "IPT CrcErrBuffFifoFullCnt"; + } + leaf fdt-data-cell-cnt { + type uint64; + description + "FDT DataCellCnt"; + } + leaf fdt-data-byte-cnt { + type uint64; + description + "FDT DataByteCnt"; + } + leaf fdt-crc-dropped-pck-cnt { + type uint64; + description + "FDT CrcDroppedPckCnt"; + } + leaf fdt-invalid-destq-drop-cell-cnt { + type uint64; + description + "FDT Invalide Destination Drop Cell Count"; + } + leaf fdt-indirect-command-count { + type uint64; + description + "FDT IndirectCommandCount"; + } + leaf fdt-ecc-1b-err-cnt { + type uint64; + description + "FDT Ecc 1bErrCnt"; + } + leaf fdt-ecc-2b-err-cnt { + type uint64; + description + "FDT Ecc 2bErrCnt"; + } + leaf fdt-parity-err-cnt { + type uint64; + description + "FDT ParityErrCnt"; + } + leaf fdt-crc-dropped-cell-cnt { + type uint64; + description + "FDT CrcDroppedCellCnt"; + } + leaf fcr-control-cell-cnt { + type uint64; + description + "FCR ControlCellCnt"; + } + leaf fcr-cell-drop-cnt { + type uint64; + description + "FCR CellDropCnt"; + } + leaf fcr-credit-cell-drop-cnt { + type uint64; + description + "FCR CreditCellDropCnt"; + } + leaf fcr-fs-cell-drop-cnt { + type uint64; + description + "FCR FSCellDropCnt"; + } + leaf fcr-rt-cell-drop-cnt { + type uint64; + description + "FCR RTCellDropCnt"; + } + leaf fcr-ecc-1b-err-cnt { + type uint64; + description + "FCR Ecc 1bErrCnt"; + } + leaf fcr-ecc-2b-err-cnt { + type uint64; + description + "FCR Ecc 2bErrCnt"; + } + leaf fdr-data-cell-cnt { + type uint64; + description + "FDR DataCellCnt"; + } + leaf fdr-data-byte-cnt { + type uint64; + description + "FDR DataByteCnt"; + } + leaf fdr-crc-dropped-pck-cnt { + type uint64; + description + "FDR CrcDroppedPckCnt"; + } + leaf fdr-p-pkt-cnt { + type uint64; + description + "FDR PPktCnt"; + } + leaf fdr-prm-error-filter-cnt { + type uint64; + description + "FDR PrmErrorFilterCnt"; + } + leaf fdr-sec-error-filter-cnt { + type uint64; + description + "FDR SecErrorFilterCnt"; + } + leaf fdr-prm-ecc-1b-err-cnt { + type uint64; + description + "FDR PrmEcc 1bErrCnt"; + } + leaf fdr-prm-ecc-2b-err-cnt { + type uint64; + description + "FDR PrmEcc 2bErrCnt"; + } + leaf fdr-sec-ecc-1b-err-cnt { + type uint64; + description + "FDR SecEcc 1bErrCnt"; + } + leaf fdr-sec-ecc-2b-err-cnt { + type uint64; + description + "FDR SecEcc 2bErrCnt"; + } + leaf egq-ecc-1b-err-cnt { + type uint64; + description + "EGQ Ecc 1bErrCnt"; + } + leaf egq-ecc-2b-err-cnt { + type uint64; + description + "EGQ Ecc 2bErrCnt"; + } + leaf egq-parity-err-cnt { + type uint64; + description + "EGQ ParityErrCnt"; + } + leaf egq-dbf-ecc-1b-err-cnt { + type uint64; + description + "EGQ DbfEcc 1bErrCnt"; + } + leaf egq-dbf-ecc-2b-err-cnt { + type uint64; + description + "EGQ DbfEcc 2bErrCnt"; + } + leaf egq-empty-mcid-counter { + type uint64; + description + "EGQ EmptyMcidCounter"; + } + leaf egq-rqp-discard-packet-counter { + type uint64; + description + "EGQ RqpDiscardPacketCounter"; + } + leaf egq-ehp-discard-packet-counter { + type uint64; + description + "EGQ EhpDiscardPacketCounter"; + } + leaf egq-ipt-pkt-cnt { + type uint64; + description + "EGQ IptPktCnt"; + } + leaf epni-epe-pkt-cnt { + type uint64; + description + "EPNI EpePktCnt"; + } + leaf epni-epe-byte-cnt { + type uint64; + description + "EPNI EpeByteCnt"; + } + leaf epni-epe-discard-pkt-cnt { + type uint64; + description + "EPNI EpeDiscardPktCnt"; + } + leaf epni-ecc-1b-err-cnt { + type uint64; + description + "EPNI Ecc 1bErrCnt"; + } + leaf epni-ecc-2b-err-cnt { + type uint64; + description + "EPNI Ecc 2bErrCnt"; + } + leaf epni-parity-err-cnt { + type uint64; + description + "EPNI ParityErrCnt"; + } + leaf egq-pqp-ucast-pkt-cnt { + type uint64; + description + "EGQ PqpUcastPktCnt"; + } + leaf egq-pqp-ucast-h-pkt-cnt { + type uint64; + description + "EGQ PqpUcastHPktCnt"; + } + leaf egq-pqp-ucast-l-pkt-cnt { + type uint64; + description + "EGQ PqpUcastLPktCnt"; + } + leaf egq-pqp-ucast-bytes-cnt { + type uint64; + description + "EGQ PqpUcastBytesCnt"; + } + leaf egq-pqp-ucast-discard-pkt-cnt { + type uint64; + description + "EGQ PqpUcastDiscardPktCnt"; + } + leaf egq-pqp-mcast-pkt-cnt { + type uint64; + description + "EGQ PqpMcastPktCnt"; + } + leaf egq-pqp-mcast-h-pkt-cnt { + type uint64; + description + "EGQ PqpMcastHPktCnt"; + } + leaf egq-pqp-mcast-l-pkt-cnt { + type uint64; + description + "EGQ PqpMcastLPktCnt"; + } + leaf egq-pqp-mcast-bytes-cnt { + type uint64; + description + "EGQ PqpMcastBytesCnt"; + } + leaf egq-pqp-mcast-discard-pkt-cnt { + type uint64; + description + "EGQ PqpMcastDiscardPktCnt"; + } + leaf fct-control-cell-cnt { + type uint64; + description + "FCT ControlCellCnt"; + } + leaf fct-unrch-crdt-cnt { + type uint64; + description + "FCT UnrchCrdtCnt"; + } + leaf idr-reassembly-errors { + type uint64; + description + "IDR ReassemblyErrors"; + } + leaf idr-mmu-ecc-1b-err-cnt { + type uint64; + description + "IDR MmuEcc 1bErrCnt"; + } + leaf idr-mmu-ecc-2b-err-cnt { + type uint64; + description + "IDR MmuEcc 2bErrCnt"; + } + leaf idr-discarded-packets0-cnt { + type uint64; + description + "IDR DiscardedPackets0Cnt"; + } + leaf idr-discarded-packets1-cnt { + type uint64; + description + "IDR DiscardedPackets1Cnt"; + } + leaf idr-discarded-packets2-cnt { + type uint64; + description + "IDR DiscardedPackets2Cnt"; + } + leaf idr-discarded-packets3-cnt { + type uint64; + description + "IDR DiscardedPackets3Cnt"; + } + leaf idr-discarded-octets0-cnt { + type uint64; + description + "IDR DiscardedOctets0Cnt"; + } + leaf idr-discarded-octets1-cnt { + type uint64; + description + "IDR DiscardedOctets1Cnt"; + } + leaf idr-discarded-octets2-cnt { + type uint64; + description + "IDR DiscardedOctets2Cnt"; + } + leaf idr-discarded-octets3-cnt { + type uint64; + description + "IDR DiscardedOctets3Cnt"; + } + leaf mmu-ecc-1b-err-cnt { + type uint64; + description + "MMU Ecc 1bErrCnt"; + } + leaf mmu-ecc-2b-err-cnt { + type uint64; + description + "MMU Ecc 2bErrCnt"; + } + leaf oamp-parity-err-cnt { + type uint64; + description + "OAMP ParityErrCnt"; + } + leaf oamp-ecc-1b-err-cnt { + type uint64; + description + "OAMP Ecc 1bErrCnt"; + } + leaf oamp-ecc-2b-err-cnt { + type uint64; + description + "OAMP Ecc 2bErrCnt"; + } + leaf crps-parity-err-cnt { + type uint64; + description + "CRPS ParityErrCnt"; + } + leaf fmac0-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC0 Kpcs0TstRxErrCnt"; + } + leaf fmac1-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC1 Kpcs0TstRxErrCnt"; + } + leaf fmac2-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC2 Kpcs0TstRxErrCnt"; + } + leaf fmac3-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC3 Kpcs0TstRxErrCnt"; + } + leaf fmac4-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC4 Kpcs0TstRxErrCnt"; + } + leaf fmac5-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC5 Kpcs0TstRxErrCnt"; + } + leaf fmac6-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC6 Kpcs0TstRxErrCnt"; + } + leaf fmac7-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC7 Kpcs0TstRxErrCnt"; + } + leaf fmac8-kpcs0-tst-rx-err-cnt { + type uint64; + description + "FMAC8 Kpcs0TstRxErrCnt"; + } + leaf fmac0-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC0 Kpcs1TstRxErrCnt"; + } + leaf fmac1-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC1 Kpcs1TstRxErrCnt"; + } + leaf fmac2-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC2 Kpcs1TstRxErrCnt"; + } + leaf fmac3-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC3 Kpcs1TstRxErrCnt"; + } + leaf fmac4-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC4 Kpcs1TstRxErrCnt"; + } + leaf fmac5-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC5 Kpcs1TstRxErrCnt"; + } + leaf fmac6-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC6 Kpcs1TstRxErrCnt"; + } + leaf fmac7-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC7 Kpcs1TstRxErrCnt"; + } + leaf fmac8-kpcs1-tst-rx-err-cnt { + type uint64; + description + "FMAC8 Kpcs1TstRxErrCnt"; + } + leaf fmac0-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC0 Kpcs2TstRxErrCnt"; + } + leaf fmac1-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC1 Kpcs2TstRxErrCnt"; + } + leaf fmac2-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC2 Kpcs2TstRxErrCnt"; + } + leaf fmac3-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC3 Kpcs2TstRxErrCnt"; + } + leaf fmac4-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC4 Kpcs2TstRxErrCnt"; + } + leaf fmac5-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC5 Kpcs2TstRxErrCnt"; + } + leaf fmac6-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC6 Kpcs2TstRxErrCnt"; + } + leaf fmac7-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC7 Kpcs2TstRxErrCnt"; + } + leaf fmac8-kpcs2-tst-rx-err-cnt { + type uint64; + description + "FMAC8 Kpcs2TstRxErrCnt"; + } + leaf fmac0-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC0 Kpcs3TstRxErrCnt"; + } + leaf fmac1-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC1 Kpcs3TstRxErrCnt"; + } + leaf fmac2-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC2 Kpcs3TstRxErrCnt"; + } + leaf fmac3-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC3 Kpcs3TstRxErrCnt"; + } + leaf fmac4-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC4 Kpcs3TstRxErrCnt"; + } + leaf fmac5-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC5 Kpcs3TstRxErrCnt"; + } + leaf fmac6-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC6 Kpcs3TstRxErrCnt"; + } + leaf fmac7-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC7 Kpcs3TstRxErrCnt"; + } + leaf fmac8-kpcs3-tst-rx-err-cnt { + type uint64; + description + "FMAC8 Kpcs3TstRxErrCnt"; + } + leaf fmac0-tst0-err-cnt { + type uint64; + description + "FMAC0 Tst0ErrCnt"; + } + leaf fmac1-tst0-err-cnt { + type uint64; + description + "FMAC1 Tst0ErrCnt"; + } + leaf fmac2-tst0-err-cnt { + type uint64; + description + "FMAC2 Tst0ErrCnt"; + } + leaf fmac3-tst0-err-cnt { + type uint64; + description + "FMAC3 Tst0ErrCnt"; + } + leaf fmac4-tst0-err-cnt { + type uint64; + description + "FMAC4 Tst0ErrCnt"; + } + leaf fmac5-tst0-err-cnt { + type uint64; + description + "FMAC5 Tst0ErrCnt"; + } + leaf fmac6-tst0-err-cnt { + type uint64; + description + "FMAC6 Tst0ErrCnt"; + } + leaf fmac7-tst0-err-cnt { + type uint64; + description + "FMAC7 Tst0ErrCnt"; + } + leaf fmac8-tst0-err-cnt { + type uint64; + description + "FMAC8 Tst0ErrCnt"; + } + leaf fmac0-tst1-err-cnt { + type uint64; + description + "FMAC0 Tst1ErrCnt"; + } + leaf fmac1-tst1-err-cnt { + type uint64; + description + "FMAC1 Tst1ErrCnt"; + } + leaf fmac2-tst1-err-cnt { + type uint64; + description + "FMAC2 Tst1ErrCnt"; + } + leaf fmac3-tst1-err-cnt { + type uint64; + description + "FMAC3 Tst1ErrCnt"; + } + leaf fmac4-tst1-err-cnt { + type uint64; + description + "FMAC4 Tst1ErrCnt"; + } + leaf fmac5-tst1-err-cnt { + type uint64; + description + "FMAC5 Tst1ErrCnt"; + } + leaf fmac6-tst1-err-cnt { + type uint64; + description + "FMAC6 Tst1ErrCnt"; + } + leaf fmac7-tst1-err-cnt { + type uint64; + description + "FMAC7 Tst1ErrCnt"; + } + leaf fmac8-tst1-err-cnt { + type uint64; + description + "FMAC8 Tst1ErrCnt"; + } + leaf fmac0-tst2-err-cnt { + type uint64; + description + "FMAC0 Tst2ErrCnt"; + } + leaf fmac1-tst2-err-cnt { + type uint64; + description + "FMAC1 Tst2ErrCnt"; + } + leaf fmac2-tst2-err-cnt { + type uint64; + description + "FMAC2 Tst2ErrCnt"; + } + leaf fmac3-tst2-err-cnt { + type uint64; + description + "FMAC3 Tst2ErrCnt"; + } + leaf fmac4-tst2-err-cnt { + type uint64; + description + "FMAC4 Tst2ErrCnt"; + } + leaf fmac5-tst2-err-cnt { + type uint64; + description + "FMAC5 Tst2ErrCnt"; + } + leaf fmac6-tst2-err-cnt { + type uint64; + description + "FMAC6 Tst2ErrCnt"; + } + leaf fmac7-tst2-err-cnt { + type uint64; + description + "FMAC7 Tst2ErrCnt"; + } + leaf fmac8-tst2-err-cnt { + type uint64; + description + "FMAC8 Tst2ErrCnt"; + } + leaf fmac0-tst3-err-cnt { + type uint64; + description + "FMAC0 Tst3ErrCnt"; + } + leaf fmac1-tst3-err-cnt { + type uint64; + description + "FMAC1 Tst3ErrCnt"; + } + leaf fmac2-tst3-err-cnt { + type uint64; + description + "FMAC2 Tst3ErrCnt"; + } + leaf fmac3-tst3-err-cnt { + type uint64; + description + "FMAC3 Tst3ErrCnt"; + } + leaf fmac4-tst3-err-cnt { + type uint64; + description + "FMAC4 Tst3ErrCnt"; + } + leaf fmac5-tst3-err-cnt { + type uint64; + description + "FMAC5 Tst3ErrCnt"; + } + leaf fmac6-tst3-err-cnt { + type uint64; + description + "FMAC6 Tst3ErrCnt"; + } + leaf fmac7-tst3-err-cnt { + type uint64; + description + "FMAC7 Tst3ErrCnt"; + } + leaf fmac8-tst3-err-cnt { + type uint64; + description + "FMAC8 Tst3ErrCnt"; + } + leaf fmac0-ecc-1b-err-cnt { + type uint64; + description + "FMAC0 Ecc 1bErrCnt"; + } + leaf fmac1-ecc-1b-err-cnt { + type uint64; + description + "FMAC1 Ecc 1bErrCnt"; + } + leaf fmac2-ecc-1b-err-cnt { + type uint64; + description + "FMAC2 Ecc 1bErrCnt"; + } + leaf fmac3-ecc-1b-err-cnt { + type uint64; + description + "FMAC3 Ecc 1bErrCnt"; + } + leaf fmac4-ecc-1b-err-cnt { + type uint64; + description + "FMAC4 Ecc 1bErrCnt"; + } + leaf fmac5-ecc-1b-err-cnt { + type uint64; + description + "FMAC5 Ecc 1bErrCnt"; + } + leaf fmac6-ecc-1b-err-cnt { + type uint64; + description + "FMAC6 Ecc 1bErrCnt"; + } + leaf fmac7-ecc-1b-err-cnt { + type uint64; + description + "FMAC7 Ecc 1bErrCnt"; + } + leaf fmac8-ecc-1b-err-cnt { + type uint64; + description + "FMAC8 Ecc 1bErrCnt"; + } + leaf fmac0-ecc-2b-err-cnt { + type uint64; + description + "FMAC0 Ecc 2bErrCnt"; + } + leaf fmac1-ecc-2b-err-cnt { + type uint64; + description + "FMAC1 Ecc 2bErrCnt"; + } + leaf fmac2-ecc-2b-err-cnt { + type uint64; + description + "FMAC2 Ecc 2bErrCnt"; + } + leaf fmac3-ecc-2b-err-cnt { + type uint64; + description + "FMAC3 Ecc 2bErrCnt"; + } + leaf fmac4-ecc-2b-err-cnt { + type uint64; + description + "FMAC4 Ecc 2bErrCnt"; + } + leaf fmac5-ecc-2b-err-cnt { + type uint64; + description + "FMAC5 Ecc 2bErrCnt"; + } + leaf fmac6-ecc-2b-err-cnt { + type uint64; + description + "FMAC6 Ecc 2bErrCnt"; + } + leaf fmac7-ecc-2b-err-cnt { + type uint64; + description + "FMAC7 Ecc 2bErrCnt"; + } + leaf fmac8-ecc-2b-err-cnt { + type uint64; + description + "FMAC8 Ecc 2bErrCnt"; + } + leaf olp-incoming-bad-identifier-counter { + type uint64; + description + "OLP IncomingBadIdentifierCounter"; + } + leaf olp-incoming-bad-reassembly-counter { + type uint64; + description + "OLP IncomingBadReassemblyCounter"; + } + leaf cfc-parity-err-cnt { + type uint64; + description + "CFC ParityErrCnt"; + } + leaf cfc-ilkn0-oob-rx-crc-err-cntr { + type uint64; + description + "CFC Ilkn0OobRxCrcErrCntr"; + } + leaf cfc-ilkn1-oob-rx-crc-err-cntr { + type uint64; + description + "CFC Ilkn1OobRxCrcErrCntr"; + } + leaf cfc-spi-oob-rx0-frm-err-cnt { + type uint64; + description + "CFC SpiOobRx0FrmErrCnt"; + } + leaf cfc-spi-oob-rx0-dip2-err-cnt { + type uint64; + description + "CFC SpiOobRx0Dip2ErrCnt"; + } + leaf cfc-spi-oob-rx1-frm-err-cnt { + type uint64; + description + "CFC SpiOobRx1FrmErrCnt"; + } + leaf cfc-spi-oob-rx1-dip2-err-cnt { + type uint64; + description + "CFC SpiOobRx1Dip2ErrCnt"; + } + leaf cgm-cgm-uc-pd-dropped-cnt { + type uint64; + description + "CGM CgmUcPdDroppedCnt"; + } + leaf cgm-cgm-mc-rep-pd-dropped-cnt { + type uint64; + description + "CGM CgmMcRepPdDroppedCnt"; + } + leaf cgm-cgm-uc-db-dropped-by-rqp-cnt { + type uint64; + description + "CGM CgmUcDbDroppedByRqpCnt"; + } + leaf cgm-cgm-uc-db-dropped-by-pqp-cnt { + type uint64; + description + "CGM CgmUcDbDroppedByPqpCnt"; + } + leaf cgm-cgm-mc-rep-db-dropped-cnt { + type uint64; + description + "CGM CgmMcRepDbDroppedCnt"; + } + leaf cgm-cgm-mc-db-dropped-cnt { + type uint64; + description + "CGM CgmMcDbDroppedCnt"; + } + leaf drca-full-err-cnt { + type uint64; + description + "DRCA FullErrCnt"; + } + leaf drca-single-err-cnt { + type uint64; + description + "DRCA SingleErrCnt"; + } + leaf drca-calib-bist-full-err-cnt { + type uint64; + description + "DRCA CalibBistFullErrCnt"; + } + leaf drca-loopback-full-err-cnt { + type uint64; + description + "DRCA LoopbackFullErrCnt"; + } + leaf drcb-full-err-cnt { + type uint64; + description + "DRCB FullErrCnt"; + } + leaf drcb-single-err-cnt { + type uint64; + description + "DRCB SingleErrCnt"; + } + leaf drcb-calib-bist-full-err-cnt { + type uint64; + description + "DRCB CalibBistFullErrCnt"; + } + leaf drcb-loopback-full-err-cnt { + type uint64; + description + "DRCB LoopbackFullErrCnt"; + } + leaf drcc-full-err-cnt { + type uint64; + description + "DRCC FullErrCnt"; + } + leaf drcc-single-err-cnt { + type uint64; + description + "DRCC SingleErrCnt"; + } + leaf drcc-calib-bist-full-err-cnt { + type uint64; + description + "DRCC CalibBistFullErrCnt"; + } + leaf drcc-loopback-full-err-cnt { + type uint64; + description + "DRCC LoopbackFullErrCnt"; + } + leaf drcd-full-err-cnt { + type uint64; + description + "DRCD FullErrCnt"; + } + leaf drcd-single-err-cnt { + type uint64; + description + "DRCD SingleErrCnt"; + } + leaf drcd-calib-bist-full-err-cnt { + type uint64; + description + "DRCD CalibBistFullErrCnt"; + } + leaf drcd-loopback-full-err-cnt { + type uint64; + description + "DRCD LoopbackFullErrCnt"; + } + leaf drce-full-err-cnt { + type uint64; + description + "DRCE FullErrCnt"; + } + leaf drce-single-err-cnt { + type uint64; + description + "DRCE SingleErrCnt"; + } + leaf drce-calib-bist-full-err-cnt { + type uint64; + description + "DRCE CalibBistFullErrCnt"; + } + leaf drce-loopback-full-err-cnt { + type uint64; + description + "DRCE LoopbackFullErrCnt"; + } + leaf drcf-full-err-cnt { + type uint64; + description + "DRCF FullErrCnt"; + } + leaf drcf-single-err-cnt { + type uint64; + description + "DRCF SingleErrCnt"; + } + leaf drcf-calib-bist-full-err-cnt { + type uint64; + description + "DRCF CalibBistFullErrCnt"; + } + leaf drcf-loopback-full-err-cnt { + type uint64; + description + "DRCF LoopbackFullErrCnt"; + } + leaf drcg-full-err-cnt { + type uint64; + description + "DRCG FullErrCnt"; + } + leaf drcg-single-err-cnt { + type uint64; + description + "DRCG SingleErrCnt"; + } + leaf drcg-calib-bist-full-err-cnt { + type uint64; + description + "DRCG CalibBistFullErrCnt"; + } + leaf drcg-loopback-full-err-cnt { + type uint64; + description + "DRCG LoopbackFullErrCnt"; + } + leaf drch-full-err-cnt { + type uint64; + description + "DRCH FullErrCnt"; + } + leaf drch-single-err-cnt { + type uint64; + description + "DRCH SingleErrCnt"; + } + leaf drch-calib-bist-full-err-cnt { + type uint64; + description + "DRCH CalibBistFullErrCnt"; + } + leaf drch-loopback-full-err-cnt { + type uint64; + description + "DRCH LoopbackFullErrCnt"; + } + leaf drcbroadcast-full-err-cnt { + type uint64; + description + "DRCBROADCAST FullErrCnt"; + } + leaf drcbroadcast-single-err-cnt { + type uint64; + description + "DRCBROADCAST SingleErrCnt"; + } + leaf drcbroadcast-calib-bist-full-err-cnt { + type uint64; + description + "DRCBROADCAST CalibBistFullErrCnt"; + } + leaf drcbroadcast-loopback-full-err-cnt { + type uint64; + description + "DRCBROADCAST LoopbackFullErrCnt"; + } + leaf otn-mode { + type uint32; + description + "OTN Mode"; + } + leaf num-ports { + type uint32; + description + "Number Of Ports"; + } + list aggr-stats-otn { + max-elements "160"; + description + "Aggregate OTN Statistics"; + uses FIA-EDM-DEVICE-STATS-PBC-OTN; + } + } + + grouping FIA-EDM-STATS-ASIC-PBC-INFO { + description + "FIA EDM STATS ASIC PBC INFO"; + container aggr-stats { + description + "Aggregate statistics"; + uses FIA-EDM-DEVICE-STATS-PBC; + } + container ovf-status { + description + "OVF Status"; + uses FIA-EDM-DEVICE-STATS-OVF-PBC; + } + leaf valid { + type boolean; + description + "Valid"; + } + leaf rack-no { + type uint32; + description + "Rack Number"; + } + leaf slot-no { + type uint32; + description + "Slot Number"; + } + leaf asic-instance { + type uint32; + description + "Asic Instance Of The Card"; + } + leaf chip-ver { + type uint16; + description + "Chip Version"; + } + } + + grouping FIA-EDM-DIAG-SHELL-OUTPUT { + description + "FIA EDM DIAG SHELL OUTPUT"; + leaf output-xr { + type string; + description + "Output"; + } + } + + grouping FIA-EDM-TXLINK-STATS { + description + "FIA EDM TXLINK STATS"; + leaf dummy { + type uint32; + description + "Dummy"; + } + } + + grouping FIA-EDM-TXLINK { + description + "FIA EDM TXLINK"; + container this-link { + description + "This Link"; + uses FIA-EDM-LINK-IDENTITY; + } + container far-end-link { + description + "Far End Link"; + uses FIA-EDM-LINK-IDENTITY; + } + container stats { + description + "Stats"; + uses FIA-EDM-TXLINK-STATS; + } + container history { + description + "History Of The Link"; + uses FIA-EDM-HISTORY; + } + leaf speed { + type uint32; + description + "Speed"; + } + leaf stage { + type uint8; + description + "Stage"; + } + leaf is-link-valid { + type boolean; + description + "Is Link Valid"; + } + leaf is-conf-pending { + type boolean; + description + "Is Configuration Pending"; + } + leaf is-power-enabled { + type boolean; + description + "Is Power Enabled For This Link"; + } + leaf coeff1 { + type uint32; + description + "Co-efficient 1"; + } + leaf coeff2 { + type uint32; + description + "Co-efficient 2"; + } + leaf admin-state { + type Admin-state; + description + "Admin State Of The Link"; + } + leaf oper-state { + type Oper-state; + description + "Oper State"; + } + leaf error-state { + type Link-error-state; + description + "Error State Of The Link"; + } + leaf num-admin-shuts { + type uint32; + description + "Number Of Admin Shuts"; + } + } + + grouping FIA-EDM-DEVICE-MAC { + description + "FIA EDM DEVICE MAC"; + leaf fia-mac { + type string; + description + "mac address of fia"; + } + leaf is-valid { + type boolean; + description + "is valid"; + } + } + + grouping FIA-EDM-DEVICE-MAC-INFO { + description + "FIA EDM DEVICE MAC INFO"; + leaf total-asics { + type uint8; + description + "total asics"; + } + list device-mac { + max-elements "40"; + description + "device mac"; + uses FIA-EDM-DEVICE-MAC; + } + } + + grouping FIA-EDM-EVENT-LOG { + description + "FIA EDM EVENT LOG"; + leaf event { + type uint32; + description + "Event"; + } + leaf timestamp { + type string; + description + "Timestamp Of The Events"; + } + } + + grouping FIA-EDM-EVENT-HISTORY { + description + "FIA EDM EVENT HISTORY"; + leaf event-log-count { + type uint32; + description + "Event Log Count"; + } + leaf event-log-start { + type uint32; + description + "Event Log Start"; + } + leaf rack-num { + type uint32; + description + "Rack Number"; + } + leaf slot-num { + type uint32; + description + "Slot Number"; + } + leaf asic-instance { + type uint32; + description + "Asic Instance Of The Card"; + } + leaf is-valid { + type boolean; + description + "Is Valid"; + } + list event-log { + max-elements "100"; + description + "Event Log"; + uses FIA-EDM-EVENT-LOG; + } + } + + grouping FIA-EDM-EVENT-HISTORY-INFO { + description + "FIA EDM EVENT HISTORY INFO"; + leaf total-asics { + type uint8; + description + "Total Number Of Asics"; + } + list event-history { + max-elements "40"; + description + "History Of Events"; + uses FIA-EDM-EVENT-HISTORY; + } + } + + grouping FIA-EDM-OIR-HISTORY { + description + "FIA EDM OIR HISTORY"; + leaf card-flag { + type int32; + description + "Card Flag"; + } + leaf card-type { + type int32; + description + "Card Type"; + } + leaf reg-flag { + type int32; + description + "Reg Flag"; + } + leaf evt-flag { + type int32; + description + "Event Flag"; + } + leaf rack-num { + type int32; + description + "Rack Number"; + } + leaf instance { + type int32; + description + "Instance Of The Card"; + } + leaf cur-card-state { + type int32; + description + "Current Card State"; + } + } + + grouping FIA-EDM-OIR-RECORD-CIRCULAR-BUFFER { + description + "FIA EDM OIR RECORD CIRCULAR BUFFER"; + leaf count { + type int32; + description + "Count"; + } + leaf start { + type int32; + description + "Start"; + } + leaf end { + type int32; + description + "End"; + } + list fia-oir-info { + max-elements "10"; + description + "FIA IOR Info"; + uses FIA-EDM-OIR-HISTORY; + } + } + + grouping FIA-EDM-CARD-INFO { + description + "FIA EDM CARD INFO"; + container oir-circular-buffer { + description + "OIR Circular Buffer"; + uses FIA-EDM-OIR-RECORD-CIRCULAR-BUFFER; + } + leaf card-type { + type int32; + description + "Card Type"; + } + leaf card-name { + type string; + description + "Card Name"; + } + leaf slot-no { + type int32; + description + "Slot Number"; + } + leaf card-flag { + type int32; + description + "Card Flag"; + } + leaf evt-flag { + type int32; + description + "Event Flag"; + } + leaf reg-flag { + type int32; + description + "Reg Flag"; + } + leaf instance { + type int32; + description + "Instance Of The Card"; + } + leaf card-state { + type uint8; + description + "Card State"; + } + leaf exp-num-asics { + type uint32; + description + "Expected Number Of Asics"; + } + leaf exp-num-asics-per-fsdb { + type uint32; + description + "Expected Number Of Asic Per FSDB"; + } + leaf is-powered { + type boolean; + description + "Is Powered"; + } + leaf cxp-avail-bitmap { + type uint64; + description + "CXP Available Bitmap"; + } + leaf num-ilkns-per-asic { + type uint32; + description + "Number of Ilkns Per Asic"; + } + leaf num-local-ports-per-ilkn { + type uint32; + description + "Number Of Local Ports Per Ilkn"; + } + leaf num-cos-per-port { + type uint8; + description + "Number Of COS Per Port"; + } + } + + grouping FIA-EDM-DEVICE { + description + "FIA EDM DEVICE"; + container asic-id { + description + "Asic ID"; + uses FIA-EDM-ASIC-IDENTITY; + } + leaf is-valid { + type boolean; + description + "Is Valid"; + } + leaf fapid { + type uint32; + description + "FAP ID"; + } + leaf hotplug-event { + type uint32; + description + "Hotplug Event For This Device"; + } + leaf slice-state { + type Slice-state; + description + "Slice State Of This Device"; + } + leaf admin-state { + type Admin-state; + description + "Admin State Of This Device"; + } + leaf oper-state { + type Asic-oper-state; + description + "Oper State"; + } + leaf asic-state { + type Asic-access-state; + description + "Asic State"; + } + leaf last-init-cause { + type Asic-init-method; + description + "Last Init Cause"; + } + leaf num-pon-resets { + type uint32; + description + "Num Of PON Resets"; + } + leaf num-hard-resets { + type uint32; + description + "Num Of Hard Resets"; + } + leaf local-switch-state { + type boolean; + description + "Local Switch State Of This Device"; + } + leaf startup-wb-mtime-str { + type string; + description + "Startup WB Mtime String"; + } + leaf startup-wb-outof-sync { + type boolean; + description + "Startup WB Out Of Sync"; + } + leaf local-wb-sync-end-str { + type string; + description + "Local WB Sync End String"; + } + leaf remote-wb-sync-end-str { + type string; + description + "Remore WB Sync End String"; + } + leaf local-wb-sync-pending { + type boolean; + description + "Local WB Sync Pending"; + } + leaf sdk-delay-msec { + type uint32; + description + "SDK Delay Msec"; + } + } + + grouping FIA-EDM-DRIVER-INFO { + description + "FIA EDM DRIVER INFO"; + leaf drv-version { + type uint32; + description + "Driver Version"; + } + leaf coeff-major-rev { + type uint32; + description + "Coefficient Major Revision"; + } + leaf coeff-minor-rev { + type uint32; + description + "Coefficient Minor Revision"; + } + leaf functional-role { + type uint8; + description + "Functional Role Of The Driver"; + } + leaf issu-role { + type uint8; + description + "ISSU Role"; + } + leaf node-id { + type string; + description + "Node ID Of the Driver"; + } + leaf rack-type { + type int32; + description + "Rack Type"; + } + leaf rack-num { + type uint8; + description + "Rack Num"; + } + leaf is-driver-ready { + type boolean; + description + "Is Driver Ready"; + } + leaf card-avail-mask { + type uint32; + description + "Card Available Mask"; + } + leaf asic-avail-mask { + type uint64; + description + "Asic Available Mask"; + } + leaf exp-asic-avail-mask { + type uint64; + description + "Expected Asic Avail Mask"; + } + leaf ucmc-ratio { + type uint32; + description + "UCMC Ratio"; + } + leaf asic-oper-notify-to-fsdb-pending-bmap { + type uint64; + description + "Asic Oper Notify To FSDB Pending Bitmap"; + } + leaf is-full-fgid-download-req { + type boolean; + description + "Is Full Fgid Download Request"; + } + leaf is-fgid-download-in-progress { + type boolean; + description + "Is Fgid Download In Progress For This Driver"; + } + leaf is-fgid-download-completed { + type boolean; + description + "Is Fgid Download Completed For This Driver"; + } + leaf fsdb-conn-active { + type boolean; + description + "FSDB Connection Active"; + } + leaf fgid-conn-active { + type boolean; + description + "Fgid Connection Active"; + } + leaf issu-mgr-conn-active { + type boolean; + description + "ISSU Manager Connection Active"; + } + leaf fsdb-reg-active { + type boolean; + description + "FSDB Registration Active"; + } + leaf fgid-reg-active { + type boolean; + description + "Fgid Registration Active"; + } + leaf issu-mgr-reg-active { + type boolean; + description + "ISSU Manager Registration Active"; + } + leaf num-pm-conn-reqs { + type uint8; + description + "Number Of PM Connection Requests"; + } + leaf num-fsdb-conn-reqs { + type uint8; + description + "Number Of FSDB Connection Requests"; + } + leaf num-fgid-conn-reqs { + type uint8; + description + "Number Of Fgid Connection Requests"; + } + leaf num-fstats-conn-reqs { + type uint8; + description + "Number Of FSTATS Connection Requests"; + } + leaf num-cm-conn-reqs { + type uint8; + description + "Number Of CM Connection Requests"; + } + leaf num-issu-mgr-conn-reqs { + type uint8; + description + "Number Of ISSU MGR Connection Requests"; + } + leaf num-peer-fia-conn-reqs { + type uint8; + description + "Number Of Peer FIA Connection Requests"; + } + leaf is-gaspp-registered { + type boolean; + description + "Is GASPP Registered"; + } + leaf is-cih-registered { + type boolean; + description + "Is CIH Registered"; + } + leaf drvr-initial-startup-timestamp { + type string; + description + "Initial Startup Timestamp For This Driver"; + } + leaf drvr-current-startup-timestamp { + type string; + description + "Current Startup Timestamp For This Driver"; + } + leaf num-intf-ports { + type uint32; + description + "Number of Interface Ports"; + } + leaf uc-weight { + type uint8; + description + "UC Weight"; + } + leaf respawn-count { + type uint8; + description + "Respawn Count Of This Driver"; + } + leaf total-asics { + type uint8; + description + "Total Number Of Asics"; + } + leaf issu-ready-ntfy-pending { + type boolean; + description + "ISSU Ready Notify Pending"; + } + leaf issu-abort-sent { + type boolean; + description + "ISSU Abort Sent"; + } + leaf issu-abort-rcvd { + type boolean; + description + "ISSU Abort Received"; + } + leaf fabric-mode { + type uint8; + description + "Fabric Mode For This Driver"; + } + leaf fc-mode { + type Fc-mode; + description + "FC Mode"; + } + leaf board-rev-id { + type uint32; + description + "Board Revision ID"; + } + leaf all-wb-insync { + type boolean; + description + "All WB Insync"; + } + leaf all-wb-insync-since { + type uint32; + description + "All WB Insync Since"; + } + leaf all-startup-wb-insync { + type boolean; + description + "All Startup WB Insync"; + } + leaf plane-a-bitmap { + type uint32; + description + "PlaneA Bitmap"; + } + leaf plane-b-bitmap { + type uint32; + description + "PlaneB Bitmap"; + } + list device-info { + max-elements "40"; + description + "Device Information"; + uses FIA-EDM-DEVICE; + } + list card-info { + max-elements "16"; + description + "Card Information"; + uses FIA-EDM-CARD-INFO; + } + } + + grouping FIA-EDM-STATE-CHANGE { + description + "FIA EDM STATE CHANGE"; + leaf admin-state { + type Admin-state; + description + "Admin State Of The Link"; + } + leaf oper-state { + type Oper-state; + description + "Oper State Of The Link"; + } + leaf error-state { + type Link-error-state; + description + "Error State Of the Link"; + } + leaf timestamp { + type uint64; + description + "Timestamp Of the Link"; + } + leaf reasons { + type string; + description + "Reasons For State Change"; + } + } + + grouping FIA-EDM-HISTORY { + description + "FIA EDM HISTORY"; + leaf histnum { + type uint8; + description + "History Num"; + } + leaf start-index { + type uint8; + description + "Starting Index"; + } + list hist { + max-elements "5"; + description + "History"; + uses FIA-EDM-STATE-CHANGE; + } + } + + grouping FIA-EDM-ASIC-IDENTITY { + description + "FIA EDM ASIC IDENTITY"; + leaf rack-type { + type Rack; + description + "Rack Type"; + } + leaf asic-type { + type Asic; + description + "Asic Type"; + } + leaf rack-num { + type uint32; + description + "Rack Num"; + } + leaf slot-num { + type uint32; + description + "Slot Num"; + } + leaf asic-instance { + type uint32; + description + "Instance Of the Asic"; + } + } + + grouping FIA-EDM-LINK-IDENTITY { + description + "FIA EDM LINK IDENTITY"; + container asic-id { + description + "Asic Id"; + uses FIA-EDM-ASIC-IDENTITY; + } + leaf link-type { + type Link; + description + "Link Type"; + } + leaf link-stage { + type Link-stage; + description + "Link Stage"; + } + leaf link-num { + type uint32; + description + "Link Num"; + } + leaf phy-link-num { + type uint32; + description + "Phy Link Num"; + } + } + + grouping FIA-EDM-RXLINK { + description + "FIA EDM RXLINK"; + container this-link { + description + "This Link"; + uses FIA-EDM-LINK-IDENTITY; + } + container far-end-link { + description + "Far End Link"; + uses FIA-EDM-LINK-IDENTITY; + } + container far-end-link-in-hw { + description + "Far End Link In HW"; + uses FIA-EDM-LINK-IDENTITY; + } + container history { + description + "Histrory"; + uses FIA-EDM-HISTORY; + } + leaf speed { + type uint32; + description + "Speed"; + } + leaf stage { + type Link-stage; + description + "Stage"; + } + leaf is-link-valid { + type boolean; + description + "Is Link Valid"; + } + leaf is-conf-pending { + type boolean; + description + "Is Configuration Pending"; + } + leaf admin-state { + type Admin-state; + description + "Admin State Of The Link"; + } + leaf oper-state { + type Oper-state; + description + "Oper State Of The Link"; + } + leaf error-state { + type Link-error-state; + description + "Error State Of The Link"; + } + leaf flags { + type string; + description + "Flags"; + } + leaf flag-cnt { + type uint32; + description + "Flag Count"; + } + leaf num-admin-shuts { + type uint32; + description + "Num Admin Shuts"; + } + leaf correctable-errors { + type uint64; + description + "Correctable Errors Encountered"; + } + leaf uncorrectable-errors { + type uint64; + description + "Uncorrectable Errors Encountered"; + } + leaf bundle-id { + type uint8; + description + "BundleId"; + } + leaf lane-id { + type uint8; + description + "LaneId"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper.yang new file mode 100644 index 000000000..80d936823 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-driver-oper.yang @@ -0,0 +1,448 @@ +module Cisco-IOS-XR-dnx-driver-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dnx-driver-oper"; + prefix dnx-driver-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-dnx-driver-oper-sub1 { + revision-date 2020-04-29; + } + + 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 dnx-driver package operational data. + + This module contains definitions + for the following management objects: + fia: FIA driver operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-29 { + description + "added bundle_id and lane_id to get bundle port information."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2017-08-29 { + description + "Changed blk and field info to be dynamic."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Link-option-string { + type string { + pattern "(flap)|(topo)"; + } + description + "flap:Display link flap info, topo:Display link + topo info"; + } + + typedef Fia-has-phy-location { + type uint32 { + range "0..1"; + } + description + "Fia has phy location"; + } + + typedef Fia-max-lc-slot { + type uint32 { + range "0..16"; + } + description + "Fia max lc slot"; + } + + typedef Fia-max-asic-instances { + type uint32 { + range "0..255"; + } + description + "Fia max asic instances"; + } + + typedef Link-info-max-number { + type uint32 { + range "0..111"; + } + description + "Link info max number"; + } + + typedef Diag-shell-unit-number { + type uint32 { + range "0..63"; + } + description + "Diag shell unit number"; + } + + container fia { + config false; + description + "FIA driver operational data"; + container nodes { + description + "FIA driver operational data for available nodes"; + list node { + key "node-name"; + description + "FIA operational data for a particular node"; + container rx-link-information { + description + "FIA RX link related information"; + container link-options { + description + "Option table for link rx information"; + list link-option { + key "option"; + description + "Option : topo , flag , stats"; + container rx-asic-instances { + description + "Instance table for rx information"; + list rx-asic-instance { + key "instance"; + description + "Instance number for rx link information"; + container rx-links { + description + "Link table class for rx information"; + list rx-link { + description + "Link number for rx link information"; + leaf start-number { + type Link-info-max-number; + description + "Link Starting number"; + } + leaf end-number { + type Link-info-max-number; + description + "Link Ending number"; + } + leaf status-option { + type xr:Cisco-ios-xr-string; + description + "RX link status option"; + } + list rx-link { + key "link"; + description + "Single link information"; + leaf link { + type Link-info-max-number; + description + "Single link"; + } + uses FIA-EDM-RXLINK; + } + } + } + leaf instance { + type Fia-max-asic-instances; + description + "Receive instance"; + } + } + } + leaf option { + type Link-option-string; + description + "Link option"; + } + } + } + } + container driver-information { + description + "FIA Driver Related Information"; + uses FIA-EDM-DRIVER-INFO; + } + container clear-statistics { + description + "Clear statistics information"; + container asic-instances { + description + "Instance table for clear statistics + information"; + list asic-instance { + key "asic-instance"; + description + "Asic instance to be cleared"; + leaf asic-instance { + type Fia-max-asic-instances; + description + "Asic instance"; + } + leaf instance { + type Fia-max-asic-instances; + mandatory true; + description + "Clear value"; + } + } + } + } + container event-history { + description + "FIA event history information"; + container event-history-asic-instances { + description + "Instance table for event history"; + list event-history-asic-instance { + key "instance"; + description + "Asic instance to be displayed"; + leaf instance { + type Fia-max-asic-instances; + description + "Asic instance"; + } + uses FIA-EDM-EVENT-HISTORY-INFO; + } + } + } + container mac-add { + description + "FIA mac address information"; + container mac-add-asic-instances { + description + "Instance table for mac address"; + list mac-add-asic-instance { + key "instance"; + description + "Asic instance to be displayed"; + leaf instance { + type Fia-max-asic-instances; + description + "Asic instance"; + } + uses FIA-EDM-DEVICE-MAC-INFO; + } + } + } + container tx-link-information { + description + "FIA TX link related information"; + container tx-status-option-table { + description + "Link table for tx information"; + container tx-status-option { + description + "Option: data, ctrl, all- for now none"; + container tx-asic-instances { + description + "Instance table for tx information"; + list tx-asic-instance { + key "instance"; + description + "Instance number for tx link information"; + container tx-links { + description + "Link table for tx information"; + list tx-link { + description + "Link number for tx link information"; + leaf start-number { + type Link-info-max-number; + description + "Link Starting Number"; + } + leaf end-number { + type Link-info-max-number; + description + "Link Ending Number"; + } + list tx-link { + key "link"; + description + "Single link information"; + leaf link { + type Link-info-max-number; + description + "Single Link"; + } + uses FIA-EDM-TXLINK; + } + } + } + leaf instance { + type Fia-max-asic-instances; + description + "Transmit instance"; + } + } + } + } + } + } + container diag-shell { + description + "FIA diag shell information"; + container diag-shell-units { + description + "Unit table for diag shell"; + list diag-shell-unit { + key "unit"; + description + "Unit number for diag shell statistics"; + container commands { + description + "Command table for diag shell"; + list command { + key "cmd"; + description + "Command for diag shell statistics"; + leaf cmd { + type string { + length "1..256"; + } + description + "Shell command"; + } + list output { + key "output"; + description + "Added to support datalist"; + leaf output { + type xr:Cisco-ios-xr-string; + description + "First line"; + } + uses FIA-EDM-DIAG-SHELL-OUTPUT; + } + } + } + leaf unit { + type Diag-shell-unit-number; + description + "Unit number"; + } + } + } + } + container oir-history { + description + "FIA operational data of oir history"; + container flags { + description + "Flag table for history"; + list flag { + key "flag"; + description + "Flag value for physical location"; + container slots { + description + "Slot table for history"; + list slot { + key "slot"; + description + "Slot number for getting history"; + leaf slot { + type Fia-max-lc-slot; + description + "Slot number"; + } + uses FIA-EDM-DRIVER-INFO; + } + } + leaf flag { + type Fia-has-phy-location; + description + "Flag value"; + } + } + } + } + container asic-statistics { + description + "FIA asic statistics information"; + container statistics-asic-instances { + description + "Instance table for statistics"; + list statistics-asic-instance { + key "instance"; + description + "Asic instance for statistics"; + container pbc-statistics { + description + "Packet Byte Counter for a Asic"; + container pbc-stats { + description + "PBC stats bag"; + uses FIA-EDM-STATS-ASIC-PBC-INFO; + } + } + container fmac-statistics { + description + "Statistics of FMAC"; + container fmac-links { + description + "Link table for statistics"; + list fmac-link { + key "link"; + description + "Link number for statistics"; + leaf link { + type Link-info-max-number; + description + "Link number"; + } + list fmac-asic { + key "asic"; + description + "Single aisc information"; + leaf asic { + type Fia-max-asic-instances; + description + "Single asic"; + } + uses FIA-EDM-STATS-ASIC-FMAC-INFO; + } + } + } + } + leaf instance { + type Fia-max-asic-instances; + description + "Asic instance"; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub1.yang new file mode 100644 index 000000000..dc4299c0d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub1.yang @@ -0,0 +1,303 @@ +submodule Cisco-IOS-XR-dnx-netflow-oper-sub1 { + belongs-to Cisco-IOS-XR-dnx-netflow-oper { + prefix Cisco-IOS-XR-dnx-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dnx-netflow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics on a stanbdy node exporter"; + semver:module-version "1.3.0"; + } + revision 2020-07-18 { + description + "Added sflow placeholders"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Flow-monitor-name { + type string; + description + "Flow monitor name"; + } + + grouping NFSVR-COLLECTOR-INFO { + description + "Per collector information"; + leaf exporter-state { + type string; + description + "Exporter state"; + } + leaf destination-address { + type string; + description + "Destination IPv4 address in AAA.BBB.CCC.DDD + format"; + } + leaf source-address { + type string; + description + "Source IPv4 address in AAA.BBB.CCC.DDD format"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf destination-port { + type uint16; + description + "Destination port number"; + } + leaf souce-port { + type uint16; + description + "Source port number"; + } + leaf transport-protocol { + type string; + description + "Transport protocol"; + } + leaf packets-sent { + type uint64; + description + "Packets sent"; + } + leaf flows-sent { + type uint64; + description + "Flows sent"; + } + leaf templates-sent { + type uint64; + description + "Templates sent"; + } + leaf option-templates-sent { + type uint64; + description + "Option templates sent"; + } + leaf option-data-sent { + type uint64; + description + "Option data sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Bytes sent"; + } + leaf flow-bytes-sent { + type uint64; + units "byte"; + description + "Flow bytes sent"; + } + leaf template-bytes-sent { + type uint64; + units "byte"; + description + "Template bytes sent"; + } + leaf option-template-bytes-sent { + type uint64; + units "byte"; + description + "Option template bytes sent"; + } + leaf option-data-bytes-sent { + type uint64; + units "byte"; + description + "Option data bytes sent"; + } + leaf packets-dropped { + type uint64; + description + "Packets dropped"; + } + leaf flows-dropped { + type uint64; + description + "Flows dropped"; + } + leaf templates-dropped { + type uint64; + description + "Templates dropped"; + } + leaf option-templates-dropped { + type uint64; + description + "Option templates dropped"; + } + leaf option-data-dropped { + type uint64; + description + "Option data dropped"; + } + leaf bytes-dropped { + type uint64; + units "byte"; + description + "Bytes dropped"; + } + leaf flow-bytes-dropped { + type uint64; + units "byte"; + description + "Flow bytes dropped"; + } + leaf template-bytes-dropped { + type uint64; + units "byte"; + description + "Template bytes dropped"; + } + leaf option-template-bytes-dropped { + type uint64; + units "byte"; + description + "Option template bytes dropped"; + } + leaf option-data-bytes-dropped { + type uint64; + description + "Option data dropped"; + } + leaf last-hour-packest-sent { + type uint64; + description + "Total packets exported over the last one hour"; + } + leaf last-hour-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one hour"; + } + leaf last-hour-flows-sent { + type uint64; + description + "Total flows exported over the of last one hour"; + } + leaf last-minute-packets { + type uint64; + description + "Total packets exported over the last one minute"; + } + leaf last-minute-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one minute"; + } + leaf last-minute-flows-sent { + type uint64; + description + "Total flows exported over the last one minute"; + } + leaf last-second-packets-sent { + type uint64; + description + "Total packets exported over the last one second"; + } + leaf last-second-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one second"; + } + leaf last-second-flows-sent { + type uint64; + description + "Total flows exported over the last one second"; + } + leaf is-standby { + type boolean; + description + "Exporter is in standby mode"; + } + leaf standby-packets-dropped { + type uint64; + description + "Total export packets dropped while beingin + standby mode"; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS { + description + "Flow exporter information"; + leaf name { + type string; + description + "Exporter name"; + } + leaf protocol { + type string; + description + "Export Protocol Name"; + } + leaf memory-usage { + type uint32; + description + "Memory usage"; + } + leaf-list used-by-flow-monitor { + type Flow-monitor-name; + description + "List of flow monitors that use the exporter"; + } + list collector { + description + "Statistics of all collectors"; + uses NFSVR-COLLECTOR-INFO; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY { + description + "Flow exporter information"; + list statistic { + description + "Array of flow exporters"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub2.yang new file mode 100644 index 000000000..e231b9745 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper-sub2.yang @@ -0,0 +1,134 @@ +submodule Cisco-IOS-XR-dnx-netflow-oper-sub2 { + belongs-to Cisco-IOS-XR-dnx-netflow-oper { + prefix Cisco-IOS-XR-dnx-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dnx-netflow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics on a stanbdy node exporter"; + semver:module-version "1.3.0"; + } + revision 2020-07-18 { + description + "Added sflow placeholders"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NF-PRODUCER-STATS { + description + "Netflow Platform Producer Process statistics"; + leaf ipv4-ingress-flows { + type uint64; + description + "IPv4 ingress flows"; + } + leaf ipv4-egress-flows { + type uint64; + description + "IPv4 egress flows"; + } + leaf ipv6-ingress-flows { + type uint64; + description + "IPv6 ingress flows"; + } + leaf ipv6-egress-flows { + type uint64; + description + "IPv6 egress flows"; + } + leaf mpls-ingress-flows { + type uint64; + description + "MPLS ingress flows"; + } + leaf mpls-egress-flows { + type uint64; + description + "MPLS egress flows"; + } + leaf ipfix315-ingress-flows { + type uint64; + description + "IPFIX315 ingress flows"; + } + leaf ipfix315-egress-flows { + type uint64; + description + "IPFIX315 egress flows"; + } + leaf ingress-sflow { + type uint64; + description + "Ingress sflow"; + } + leaf egress-sflow { + type uint64; + description + "Egress sflow"; + } + leaf drops-no-space { + type uint64; + description + "Drops (no space)"; + } + leaf drops-others { + type uint64; + description + "Drops (others)"; + } + leaf unknown-ingress-flows { + type uint64; + description + "Unknown ingress flows"; + } + leaf unknown-egress-flows { + type uint64; + description + "Unknown egress flows"; + } + leaf waiting-servers { + type uint64; + description + "Number of waiting servers"; + } + leaf last-cleared { + type string; + description + "Last time Statistics cleared in 'Mon Jan 1 12:00 + :00 2xxx' format"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper.yang new file mode 100644 index 000000000..4fabccdb6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-netflow-oper.yang @@ -0,0 +1,113 @@ +module Cisco-IOS-XR-dnx-netflow-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dnx-netflow-oper"; + prefix dnx-netflow-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-dnx-netflow-oper-sub2 { + revision-date 2022-01-03; + } + include Cisco-IOS-XR-dnx-netflow-oper-sub1 { + revision-date 2022-01-03; + } + + 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 dnx-netflow package operational data. + + This module contains definitions + for the following management objects: + net-flow: NetFlow operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics on a stanbdy node exporter"; + semver:module-version "1.3.0"; + } + revision 2020-07-18 { + description + "Added sflow placeholders"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container net-flow { + config false; + description + "NetFlow operational data"; + container statistics { + description + "Node-specific NetFlow statistics information"; + list statistic { + key "node"; + description + "NetFlow statistics information for a particular + node"; + container producer { + description + "NetFlow producer statistics"; + container statistics { + description + "Statistics information"; + uses NF-PRODUCER-STATS; + } + } + container server { + description + "NetFlow server statistics"; + container flow-exporters { + description + "Flow exporter information"; + list flow-exporter { + key "exporter-name"; + description + "Exporter information"; + container exporter { + description + "Statistics information for the exporter"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY; + } + leaf exporter-name { + type xr:Cisco-ios-xr-string; + description + "Exporter name"; + } + } + } + } + leaf node { + type xr:Node-id; + description + "Node location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper-sub1.yang new file mode 100644 index 000000000..5b1b9ebaa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper-sub1.yang @@ -0,0 +1,98 @@ +submodule Cisco-IOS-XR-dnx-port-mapper-oper-sub1 { + belongs-to Cisco-IOS-XR-dnx-port-mapper-oper { + prefix Cisco-IOS-XR-dnx-port-mapper-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dnx-port-mapper package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OOR-INTERFACE-DETAIL { + description + "OOR specific details for the interface"; + leaf interface-name { + type string; + description + "Name of the interface"; + } + leaf interface-status { + type string; + description + "The current state of the interface"; + } + leaf time-stamp { + type string; + description + "Timestamp"; + } + leaf npu-id { + type string; + description + "Npuid of the interface"; + } + leaf hardware-resource { + type string; + description + "Type of harware resoruce"; + } + } + + grouping OOR-INTERFACE-INFO { + description + "OOR specific details for the bundle interface"; + list interface { + description + "Interface details"; + uses OOR-INTERFACE-DETAIL; + } + } + + grouping OOR-SUMMARY { + description + "Lists interfaces in each of the three states"; + leaf red { + type uint32; + description + "interfaces in red state"; + } + leaf green { + type uint32; + description + "interfaces in green state"; + } + leaf yel-low { + type uint32; + description + "interfaces in yellow state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper.yang new file mode 100644 index 000000000..61fd53561 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dnx-port-mapper-oper.yang @@ -0,0 +1,90 @@ +module Cisco-IOS-XR-dnx-port-mapper-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dnx-port-mapper-oper"; + prefix dnx-port-mapper-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-dnx-port-mapper-oper-sub1 { + revision-date 2019-04-05; + } + + 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 dnx-port-mapper package operational data. + + This module contains definitions + for the following management objects: + oor: Out of Resource Data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container oor { + config false; + status deprecated; + description + "Out of Resource Data. This model is being deprecated and is + being replaced by Cisco-IOS-XR-dpa-port-mapper-oper.yang, which will + retain the functionality of this model."; + container nodes { + description + "OOR data for available nodes"; + list node { + key "node-name"; + description + "DPA operational data for a particular node"; + container summary { + description + "Summary"; + uses OOR-SUMMARY; + } + container interface-names { + description + "OOR Interface Information"; + list interface-name { + key "interface-name"; + description + "OOR Data for particular interface"; + leaf interface-name { + type xr:Cisco-ios-xr-string; + description + "The name of the interface"; + } + uses OOR-INTERFACE-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-cfg.yang new file mode 100644 index 000000000..ef250f9d9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-cfg.yang @@ -0,0 +1,292 @@ +module Cisco-IOS-XR-dot1x-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dot1x-cfg"; + prefix dot1x-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 dot1x package configuration. + + This module contains definitions + for the following management objects: + dot1x: Global Dot1x Configuration + eap: Global EAP Configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-14 { + description + "Added Retry time for MAC Authentication Bypass feature + 2021-10-26 + Added field to enable MAC Authentication Bypass feature"; + semver:module-version "1.3.0"; + } + revision 2021-08-20 { + description + "EAP TTLS/EAP Attestation Model consistency across platforms"; + semver:module-version "1.2.0"; + } + revision 2020-10-08 { + description + "EAP TTLS/EAP Attestation"; + semver:module-version "1.1.0"; + } + revision 2019-08-23 { + description + "Host Mode"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dot1xpae { + type string { + pattern "(supplicant)|(authenticator)|(both)"; + } + description + "supplicant:PAE Type as Supplicant, authenticator: + PAE type as Authenticator, both: PAE type as + Supplicant & Authenticator"; + } + + typedef Dot1x-reauth-local-interval { + type uint32 { + range "60..5184000"; + } + description + "Dot1x reauth local interval"; + } + + typedef Mab-auth-retry-interval { + type uint32 { + range "60..300"; + } + description + "Mab auth retry interval"; + } + + typedef Dot1x-host-mode { + type enumeration { + enum "single-host" { + value 1; + description + "single host"; + } + enum "multi-host" { + value 2; + description + "multiple host mode"; + } + enum "multi-auth" { + value 3; + description + "multiple authentication mode"; + } + } + description + "Dot1x host mode"; + } + + typedef Dot1x-server-dead-action { + type enumeration { + enum "auth-fail" { + value 0; + description + "server dead action auth-fail"; + } + enum "auth-retry" { + value 1; + description + "server dead action auth-retry"; + } + } + description + "Dot1x server dead action"; + } + + container dot1x { + description + "Global Dot1x Configuration"; + list dot1x-profile { + key "profile-name"; + description + "Global Dot1x Profile Name"; + container supplicant { + description + "Dot1x Supplicant Related Configuration"; + leaf eap-profile { + type string { + length "1..63"; + } + description + "EAP Profile for Supplicant"; + } + } + container authenticator { + description + "Dot1x Authenticator Related Configuration"; + container timers { + description + "Timers for Authenticator"; + container reauth-time { + description + "After this time ReAuthentication will be + trigerred"; + leaf server { + type boolean; + description + "Reauth will be triggerred based on the EAP + server configuration"; + } + leaf local { + type Dot1x-reauth-local-interval; + units "second"; + description + "Reauth will be triggerred based on the + configuration in box"; + } + } + leaf mab-retry-time { + type Mab-auth-retry-interval; + units "second"; + description + "Interval after which an auth attempt will be + initiated for auth failed or server + unreachable MAB clients"; + } + } + leaf eap-profile { + type string { + length "1..63"; + } + description + "EAP Profile for Local EAP Server"; + } + leaf host-mode { + type Dot1x-host-mode; + description + "set the host mode for authentication"; + } + leaf server-dead { + type Dot1x-server-dead-action; + description + "dot1x authenticator action on AAA server + unreachability"; + } + } + leaf pae { + type Dot1xpae; + description + "Dot1x PAE (Port Access Entity) Role"; + } + leaf mab { + type empty; + description + "Enable MAC Authentication Bypass feature"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Name of the Dot1x Profile"; + } + } + } + container eap { + description + "Global EAP Configuration"; + list eap-profile { + key "profile-name"; + description + "Global EAP Profile Configuration"; + container eapttls { + description + "EAP TTLS Configuration"; + container eap-attestation { + description + "Inner Method"; + container verifier { + description + "Configure verifier attributes"; + leaf rsa-key-label { + type string { + length "1..63"; + } + description + "Configure RSA public key label"; + } + } + leaf secure-topology { + type empty; + description + "Enable Secure Topology feature"; + } + } + leaf pki-trustpoint { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Configure PKI Trustpoint"; + } + } + container eaptls { + description + "EAP TLS Configuration"; + leaf pki-trustpoint { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Configure PKI Trustpoint"; + } + } + leaf allow-eap-tls1-0 { + type empty; + description + "Configure backward compatibility for TLS 1.0"; + } + leaf identity { + type string { + length "1..63"; + } + description + "Configure EAP Identity/UserName"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Name of the EAP Profile"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-if-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-if-cfg.yang new file mode 100644 index 000000000..bfcf3e1e8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-if-cfg.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-dot1x-if-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dot1x-if-cfg"; + prefix dot1x-if-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 dot1x-if package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-18 { + description + "Eapol Ethertype"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container dot1x-interface { + description + "Interface Specific Dot1x Configuration"; + leaf dot1x-profile { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Name of Dot1x profile"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper-sub1.yang new file mode 100644 index 000000000..483d51459 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper-sub1.yang @@ -0,0 +1,892 @@ +submodule Cisco-IOS-XR-dot1x-oper-sub1 { + belongs-to Cisco-IOS-XR-dot1x-oper { + prefix Cisco-IOS-XR-dot1x-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dot1x package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-31 { + description + "EAP TTLS/EAP Attestation"; + semver:module-version "2.2.0"; + } + revision 2020-04-23 { + description + "Dot1x Port Status"; + semver:module-version "2.1.0"; + } + revision 2019-08-23 { + description + "Host Mode"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eap-inner-method { + type enumeration { + enum "none" { + value 0; + description + "Inner Method not set"; + } + enum "eap-attestation" { + value 56; + description + "Inner Method EAP Attestation"; + } + } + description + "Eap inner method"; + } + + grouping DOT1X-INTERFACE-MKA { + description + "DOT1X INTERFACE MKA"; + leaf tie-break-role { + type string; + description + "Dot1x Tie breaker role chosen for mka when PAE + type is BOTH"; + } + leaf eap-based-macsec { + type string; + description + "EAP Mode status for MKA"; + } + leaf mka-start-time { + type string; + description + "Time stamp when Dot1x posting a message to MKA + to start session."; + } + leaf mka-stop-time { + type string; + description + "Time stamp when Dot1x posting a message to MKA + to stop session."; + } + leaf mka-response-time { + type string; + description + "Time Stamp of MKA acknowledgement to Dot1x"; + } + } + + grouping DOT1X-INTERFACE-DETAIL { + description + "DOT1X INTERFACE DETAIL"; + container intf-info { + description + "Dot1x interface Info"; + uses DOT1X-INTERFACE-INFO; + } + container mka-status-info { + description + "MKA session secure status"; + uses DOT1X-INTERFACE-MKA; + } + leaf interface-name { + type string; + description + "Interface Display name "; + } + leaf interface-sname { + type string; + description + "Interface Display short_name "; + } + leaf if-handle { + type string; + description + "Interface handle"; + } + leaf mac { + type string; + description + "formatted MAC Address"; + } + leaf ethertype { + type string; + description + "EAPOL Ethertype"; + } + leaf eapol-addr { + type string; + description + "EAPOL Destination Address"; + } + } + + grouping DOT1X-GLOBAL-PORT-CONTROL-STATISTICS { + description + "DOT1X GLOBAL PORT CONTROL STATISTICS"; + leaf enable-succ { + type uint32; + description + "EnableSucc"; + } + leaf enable-fail { + type uint32; + description + "EnableFail"; + } + leaf disable-succ { + type uint32; + description + "DisableSucc"; + } + leaf disable-fail { + type uint32; + description + "DisableFail"; + } + leaf add-client-succ { + type uint32; + description + "AddClientSucc"; + } + leaf add-client-fail { + type uint32; + description + "AddClientFail"; + } + leaf remove-client-succ { + type uint32; + description + "RemoveClientSucc"; + } + leaf remove-client-fail { + type uint32; + description + "RemoveClientFail"; + } + leaf update-succ { + type uint32; + description + "UpdateSucc"; + } + leaf update-fail { + type uint32; + description + "UpdateFail"; + } + } + + grouping DOT1X-GLOBAL-STATISTICS { + description + "DOT1X GLOBAL STATISTICS"; + container port-control { + description + "PortControl"; + uses DOT1X-GLOBAL-PORT-CONTROL-STATISTICS; + } + leaf tx-total { + type uint32; + description + "TxTotal"; + } + leaf rx-total { + type uint32; + description + "RxTotal"; + } + leaf rx-no-idb { + type uint32; + description + "RxNoIDB"; + } + leaf packet-drop-no-config-received { + type uint32; + description + "PacketDrop"; + } + } + + grouping DOT1X-STATISTICS { + description + "DOT1X STATISTICS"; + container gl-stats { + description + "Global statistics"; + uses DOT1X-GLOBAL-STATISTICS; + } + list if-stats { + description + "dot1x interface statistics list"; + uses DOT1X-IF-STATISTICS; + } + } + + grouping DOT1X-SUPP-TIMERS { + description + "DOT1X SUPP TIMERS"; + leaf auth-period { + type uint32; + units "second"; + description + "in Seconds, supplicant waits for a response from + an authenticator except for EAPOL-START before + timing out"; + } + leaf held-period { + type uint32; + units "second"; + description + "in Seconds, supplicant will stay in the HELD + state (that is, the length of time it will wait + before trying to send the credentials again + after a failed attempt)"; + } + leaf start-period { + type uint32; + units "second"; + description + "Configures the interval, in seconds, between two + successive EAPOL-Start frames when they are + being retransmitted"; + } + leaf max-start { + type uint32; + description + "Max No. of EAPOL-Start frames supplicant can + send to the authenticator"; + } + } + + grouping DOT1X-AUTH-TIMERS { + description + "DOT1X AUTH TIMERS"; + leaf quiet-period { + type uint32; + units "second"; + description + "in Seconds, authenticator remains quiet (in the + HELD state) following a failed authentication + exchange before trying to reauthenticate the + client"; + } + leaf tx-period { + type uint32; + units "second"; + description + "in Seconds, Timeout for supplicant reply, + authenticator-to-supplicant retransmission time + for EAP-request-ID packets (assuming that no + response is received) from the client"; + } + leaf max-reauth-req { + type uint32; + description + "Max No. of Reauthentication Attempts (or) + retransmits an EAP-request-ID frame to the + client before restarting the authentication + process"; + } + leaf supp-timeout { + type uint32; + units "second"; + description + "in Seconds, Timeout for supplicant reply, + authenticator-to-supplicant retransmission time + for all EAP messages except for EAP Request ID + packets"; + } + leaf max-req { + type uint32; + description + "Max No. of EAP-Req (except for EAP-Request-ID) + retransmits (authenticator-to-supplicant) before + sending EAP-Failure"; + } + leaf reauth-period { + type uint32; + units "second"; + description + "in Seconds, after which an automatic + reauthentication should be initiated"; + } + } + + grouping DOT1X-DEFAULT { + description + "DOT1X DEFAULT"; + container auth-timers { + description + "Dot1x Authenticator default Timer values"; + uses DOT1X-AUTH-TIMERS; + } + container supp-timers { + description + "Dot1x Supllicant default Timer values"; + uses DOT1X-SUPP-TIMERS; + } + leaf version { + type uint32; + description + "Dot1x Protocol Version"; + } + } + + grouping EAP-SUPP-INNER-METHOD { + description + "EAP SUPP INNER METHOD"; + leaf type { + type Eap-inner-method; + description + "Type"; + } + } + + grouping EAP-SUPP-INNER-METHOD-DATA { + description + "EAP SUPP INNER METHOD DATA"; + list method { + description + "EAP Inner Method"; + uses EAP-SUPP-INNER-METHOD; + } + } + + grouping DOT1X-SUPP-CLIENT-INFO { + description + "DOT1X SUPP CLIENT INFO"; + container inner-method { + description + "Inner Methods if any"; + uses EAP-SUPP-INNER-METHOD-DATA; + } + leaf mac { + type string; + description + "formatted MAC Address"; + } + leaf eap-method { + type string; + description + "EAP Method"; + } + leaf last-auth-time { + type string; + description + "Last Authenticated Timestamp (formatted)"; + } + leaf auth-sm-state { + type string; + description + "supp SM State"; + } + leaf auth-bend-sm-state { + type string; + description + "supp back end SM State"; + } + leaf port-status { + type string; + description + "Supp port status"; + } + } + + grouping DOT1X-SUPP-INFO { + description + "DOT1X SUPP INFO"; + leaf eap-profile { + type string; + description + "EAP profile"; + } + leaf config-dependency { + type string; + description + "Configuration Dependency "; + } + list client { + description + "Supp Client info"; + uses DOT1X-SUPP-CLIENT-INFO; + } + } + + grouping EAP-AUTH-ATTESTATION { + description + "EAP AUTH ATTESTATION"; + leaf stamped-passport-appraisal { + type string; + description + "Stamped Passport Appraisal"; + } + } + + grouping EAP-AUTH-INNER-METHOD { + description + "EAP AUTH INNER METHOD"; + container attestation { + when "../type = 'eap-attestation'" { + description + "../Type = 'EAPAttestation'"; + } + description + "EAP Attestation Data"; + uses EAP-AUTH-ATTESTATION; + } + leaf type { + type Eap-inner-method; + description + "Type"; + } + } + + grouping EAP-AUTH-INNER-METHOD-DATA { + description + "EAP AUTH INNER METHOD DATA"; + list method { + description + "EAP Inner Method"; + uses EAP-AUTH-INNER-METHOD; + } + } + + grouping EAP-AUTH-DATA { + description + "EAP AUTH DATA"; + container inner-method { + description + "Inner Methods if any"; + uses EAP-AUTH-INNER-METHOD-DATA; + } + leaf eap-method { + type string; + description + "EAP method name"; + } + } + + grouping DOT1X-AUTH-CLIENT-INFO { + description + "DOT1X AUTH CLIENT INFO"; + container local-eap { + description + "Local EAP data "; + uses EAP-AUTH-DATA; + } + leaf mac { + type string; + description + "formatted MAC Address"; + } + leaf auth-sm-state { + type string; + description + "Auth SM State"; + } + leaf auth-bend-sm-state { + type string; + description + "Auth back end SM State"; + } + leaf time-to-next-reauth { + type string; + description + "remaining time for next reauthentication"; + } + leaf last-auth-time { + type string; + description + "Last Authenticated Timestamp (formatted)"; + } + leaf last-auth-server { + type string; + description + "Last Authenticated Server"; + } + leaf port-control { + type string; + description + "Auth Client Port Control Status"; + } + leaf port-status { + type string; + description + "Auth Client Port Status"; + } + } + + grouping DOT1X-AUTH-INFO { + description + "DOT1X AUTH INFO"; + leaf port-control { + type string; + description + "Port Control Feature"; + } + leaf reauth { + type string; + description + "Re-Authentication enabled status"; + } + leaf config-dependency { + type string; + description + "Configuration Dependency "; + } + leaf eap-profile { + type string; + description + "EAP profile"; + } + leaf host-mode { + type string; + description + "Host Mode"; + } + list client { + description + "Authenticator client list"; + uses DOT1X-AUTH-CLIENT-INFO; + } + } + + grouping DOT1X-INTERFACE-INFO { + description + "DOT1X INTERFACE INFO"; + container auth-info { + description + "Dot1x Authenticator info"; + uses DOT1X-AUTH-INFO; + } + container supp-info { + description + "Dot1x Supplicant info"; + uses DOT1X-SUPP-INFO; + } + leaf pae { + type string; + description + "PAE type on interface"; + } + leaf dot1x-port-status { + type string; + description + "Dot1x Port Status"; + } + leaf dot1x-profile { + type string; + description + "Dot1x Profile"; + } + leaf l2-transport { + type boolean; + description + "L2 Transport Info"; + } + } + + grouping DOT1X-INTERFACE { + description + "DOT1X INTERFACE"; + container intf-info { + description + "Dot1x interface Info"; + uses DOT1X-INTERFACE-INFO; + } + leaf interface-name { + type string; + description + "Interface Display name "; + } + leaf interface-sname { + type string; + description + "Interface Display short_name "; + } + } + + grouping DOT1X-IF-LOCAL-EAP-STATISTICS { + description + "DOT1X IF LOCAL EAP STATISTICS"; + leaf requests { + type uint32; + description + "Requests"; + } + leaf replies { + type uint32; + description + "Replies"; + } + leaf timeout { + type uint32; + description + "Timeout"; + } + leaf dropped-no-eap { + type uint32; + description + "DroppedNoEAP"; + } + leaf dropped { + type uint32; + description + "Dropped"; + } + leaf success { + type uint32; + description + "Success"; + } + leaf failed { + type uint32; + description + "Failed"; + } + } + + grouping DOT1X-IF-SUPP-STATISTICS { + description + "DOT1X IF SUPP STATISTICS"; + leaf rx-req { + type uint32; + description + "RxReq"; + } + leaf rx-invalid { + type uint32; + description + "RxInvalid"; + } + leaf rx-len-err { + type uint32; + description + "RxLenErr"; + } + leaf rx-my-mac-err { + type uint32; + description + "RxMyMacErr"; + } + leaf rx-total { + type uint32; + description + "RxTotal"; + } + leaf tx-start { + type uint32; + description + "TxStart"; + } + leaf tx-logoff { + type uint32; + description + "TxLogoff"; + } + leaf tx-resp { + type uint32; + description + "TxResp"; + } + leaf tx-total { + type uint32; + description + "TxTotal"; + } + } + + grouping DOT1X-IF-PORT-CONTROL-STATISTICS { + description + "DOT1X IF PORT CONTROL STATISTICS"; + leaf enable-succ { + type uint32; + description + "EnableSucc"; + } + leaf enable-fail { + type uint32; + description + "EnableFail"; + } + leaf add-client-succ { + type uint32; + description + "AddClientSucc"; + } + leaf add-client-fail { + type uint32; + description + "AddClientFail"; + } + leaf remove-client-succ { + type uint32; + description + "RemoveClientSucc"; + } + leaf remove-client-fail { + type uint32; + description + "RemoveClientFail"; + } + leaf update-succ { + type uint32; + description + "UpdateSucc"; + } + leaf update-fail { + type uint32; + description + "UpdateFail"; + } + } + + grouping DOT1X-IF-AUTH-STATISTICS { + description + "DOT1X IF AUTH STATISTICS"; + container port-control { + description + "PortControl"; + uses DOT1X-IF-PORT-CONTROL-STATISTICS; + } + leaf rx-start { + type uint32; + description + "RxStart"; + } + leaf rx-logoff { + type uint32; + description + "RxLogoff"; + } + leaf rx-resp { + type uint32; + description + "RxResp"; + } + leaf rx-resp-id { + type uint32; + description + "RxRespID"; + } + leaf rx-invalid { + type uint32; + description + "RxInvalid"; + } + leaf rx-len-err { + type uint32; + description + "RxLenErr"; + } + leaf rx-my-mac-err { + type uint32; + description + "RxMyMacErr"; + } + leaf rx-total { + type uint32; + description + "RxTotal"; + } + leaf tx-req { + type uint32; + description + "TxReq"; + } + leaf tx-reqid { + type uint32; + description + "TxReqID"; + } + leaf tx-total { + type uint32; + description + "TxTotal"; + } + leaf packet-drop-no-config-received { + type uint32; + description + "PacketDrop"; + } + } + + grouping DOT1X-IDB-STATISTICS { + description + "DOT1X IDB STATISTICS"; + leaf rx-total { + type uint32; + description + "RxTotal"; + } + leaf tx-total { + type uint32; + description + "TxTotal"; + } + leaf no-rx-on-intf-down { + type uint32; + description + "NoRxOnIntfDown"; + } + } + + grouping DOT1X-IF-STATISTICS { + description + "DOT1X IF STATISTICS"; + container idb { + description + "Dot1x interface database Statistics"; + uses DOT1X-IDB-STATISTICS; + } + container auth { + description + "Dot1x Authenticator Port Statistics"; + uses DOT1X-IF-AUTH-STATISTICS; + } + container supp { + description + "Dot1x Supplicant Port Statistics"; + uses DOT1X-IF-SUPP-STATISTICS; + } + container local-eap { + description + "Dot1x Local EAP Port Statistics"; + uses DOT1X-IF-LOCAL-EAP-STATISTICS; + } + leaf interface-name { + type string; + description + "Interface Display name "; + } + leaf pae { + type string; + description + "PAE type on interface"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper.yang new file mode 100644 index 000000000..0d5e18ecf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dot1x-oper.yang @@ -0,0 +1,145 @@ +module Cisco-IOS-XR-dot1x-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dot1x-oper"; + prefix dot1x-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-dot1x-oper-sub1 { + revision-date 2021-03-31; + } + + 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 dot1x package operational data. + + This module contains definitions + for the following management objects: + dot1x: Dot1x operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-31 { + description + "EAP TTLS/EAP Attestation"; + semver:module-version "2.2.0"; + } + revision 2020-04-23 { + description + "Dot1x Port Status"; + semver:module-version "2.1.0"; + } + revision 2019-08-23 { + description + "Host Mode"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dot1x { + config false; + description + "Dot1x operational data"; + container statistics { + description + "Dot1x operational data"; + container interface-statistics { + description + "Interfaces with Dot1x"; + list interface-statistic { + key "name"; + description + "Dot1x Data for that Interface"; + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + uses DOT1X-IF-STATISTICS; + } + } + } + container nodes { + description + "Node-specific Dot1x operational data"; + list node { + key "node-name"; + description + "Dot1x operational data for a particular node"; + container interface-summaries { + description + "Dot1x Summary"; + list interface-summary { + key "name"; + description + "Dot1x Summary for that Interface"; + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + uses DOT1X-INTERFACE; + } + } + container dot1x-defaults { + description + "Dot1x Default Values"; + uses DOT1X-DEFAULT; + } + container statistics { + description + "Dot1x Default Values"; + uses DOT1X-STATISTICS; + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + container session { + description + "Dot1x operational data"; + container interface-sessions { + description + "Interfaces with Dot1x"; + list interface-session { + key "name"; + description + "Dot1x Data for that Interface"; + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + uses DOT1X-INTERFACE-DETAIL; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper-sub1.yang new file mode 100644 index 000000000..53ed52b48 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper-sub1.yang @@ -0,0 +1,98 @@ +submodule Cisco-IOS-XR-dpa-port-mapper-oper-sub1 { + belongs-to Cisco-IOS-XR-dpa-port-mapper-oper { + prefix Cisco-IOS-XR-dpa-port-mapper-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dpa-port-mapper package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-12 { + description + "Remove the redundant interface name in oor_interface_detail"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OOR-SUMMARY { + description + "Lists interfaces in each of the three states"; + leaf red { + type uint32; + description + "interfaces in red state"; + } + leaf green { + type uint32; + description + "interfaces in green state"; + } + leaf yel-low { + type uint32; + description + "interfaces in yellow state"; + } + } + + grouping OOR-INTERFACE-DETAIL { + description + "OOR specific details for the interface"; + leaf interface-status { + type string; + description + "The current state of the interface"; + } + leaf time-stamp { + type string; + description + "Timestamp"; + } + leaf npu-id { + type string; + description + "Npuid of the interface"; + } + leaf hardware-resource { + type string; + description + "Type of harware resoruce"; + } + } + + grouping OOR-INTERFACE-INFO { + description + "OOR specific details for the bundle interface"; + list interface { + description + "Interface details"; + uses OOR-INTERFACE-DETAIL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper.yang new file mode 100644 index 000000000..ba91925fe --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dpa-port-mapper-oper.yang @@ -0,0 +1,92 @@ +module Cisco-IOS-XR-dpa-port-mapper-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dpa-port-mapper-oper"; + prefix dpa-port-mapper-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-dpa-port-mapper-oper-sub1 { + revision-date 2021-06-12; + } + + 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 dpa-port-mapper package operational data. + + This module contains definitions + for the following management objects: + oor: Out of Resource Data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-12 { + description + "Remove the redundant interface name in oor_interface_detail"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container oor { + config false; + description + "Out of Resource Data"; + container nodes { + description + "OOR data for available nodes"; + list node { + key "node-name"; + description + "DPA operational data for a particular node"; + container interface-names { + description + "OOR Interface Information"; + list interface-name { + key "interface-name"; + description + "OOR Data for particular interface"; + leaf interface-name { + type xr:Cisco-ios-xr-string; + description + "The name of the interface"; + } + uses OOR-INTERFACE-INFO; + } + } + container summary { + description + "Summary"; + uses OOR-SUMMARY; + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-icpe-ethernet-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-icpe-ethernet-cfg.yang new file mode 100644 index 000000000..72523f72e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-icpe-ethernet-cfg.yang @@ -0,0 +1,323 @@ +module Cisco-IOS-XR-drivers-icpe-ethernet-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-drivers-icpe-ethernet-cfg"; + prefix drivers-icpe-ethernet-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 drivers-icpe-ethernet package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-15 { + description + "PRBS configuration added + 2021-10-07 + Insert Idle support added for ethernet controllers."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eth-ctrlr-prbs-mode { + type enumeration { + enum "source" { + value 1; + description + "source mode"; + } + enum "sink" { + value 2; + description + "sink mode"; + } + enum "source-sink" { + value 3; + description + "source-sink mode"; + } + } + description + "Eth ctrlr prbs mode"; + } + + typedef Eth-ctrlr-prbs-framing { + type enumeration { + enum "none" { + value 0; + description + "No framing config"; + } + enum "unframed" { + value 1; + description + "unframed PRBS"; + } + enum "framed" { + value 2; + description + "framed PRBS"; + } + } + description + "Eth ctrlr prbs framing"; + } + + typedef Eth-ctrlr-prbs-error { + type enumeration { + enum "none" { + value 0; + description + "No error-inject config"; + } + enum "single" { + value 1; + description + "Inject error once"; + } + enum "continuous" { + value 2; + description + "Inject error continuously"; + } + } + description + "Eth ctrlr prbs error"; + } + + typedef Extended-ethernet-loopback { + type enumeration { + enum "internal" { + value 1; + description + "Internal loopback"; + } + enum "line" { + value 2; + description + "Line loopback"; + } + } + description + "Extended ethernet loopback"; + } + + typedef Eth-ctrlr-prbs-direction { + type enumeration { + enum "none" { + value 0; + description + "No direction config"; + } + enum "line" { + value 1; + description + "PRBS towards line side"; + } + enum "system" { + value 2; + description + "PRBS towards system side"; + } + } + description + "Eth ctrlr prbs direction"; + } + + typedef Eth-ctrlr-prbs-pattern { + type enumeration { + enum "pn7" { + value 1; + description + "pattern pn7"; + } + enum "pn9" { + value 2; + description + "pattern pn9"; + } + enum "pn11" { + value 3; + description + "pattern pn11"; + } + enum "pn15" { + value 4; + description + "pattern pn15"; + } + enum "pn23" { + value 5; + description + "pattern pn23"; + } + enum "pn31" { + value 6; + description + "pattern pn31"; + } + enum "user-defined" { + value 7; + description + "user-defined pattern(64-bit hex value)"; + } + } + description + "Eth ctrlr prbs pattern"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf laser-squelch { + type empty; + description + "Configure Laser-Squelch"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf holdoff-time { + type uint32 { + range "0..3000"; + } + description + "Configure Holdoff Time"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf insert-idle-egress { + type empty; + description + "Configure insert idle egress support"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container loopbacks { + description + "Configure Extended loopback (diagnostics)"; + list loopback { + key "level"; + description + "Configure extended loopback mode"; + leaf level { + type uint32 { + range "1..3"; + } + description + "Level"; + } + leaf loopback { + type Extended-ethernet-loopback; + mandatory true; + description + "Loopback"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf insert-idle-ingress { + type empty; + description + "Configure insert idle ingress support"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf perf-mon-disable { + type empty; + description + "Configure Performance Monitoring "; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure Pseudo Random Binary Sequence Test"; + leaf mode { + type Eth-ctrlr-prbs-mode; + mandatory true; + description + "PRBS Mode"; + } + leaf pattern { + type Eth-ctrlr-prbs-pattern; + mandatory true; + description + "PRBS pattern"; + } + leaf direction { + type Eth-ctrlr-prbs-direction; + description + "PRBS direction"; + } + leaf error { + type Eth-ctrlr-prbs-error; + description + "PRBS error inject type"; + } + leaf framing { + type Eth-ctrlr-prbs-framing; + description + "PRBS framing type"; + } + leaf user-pattern { + type xr:Hex-long-integer; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-act.yang new file mode 100644 index 000000000..070084a53 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-act.yang @@ -0,0 +1,58 @@ +module Cisco-IOS-XR-drivers-media-eth-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-drivers-media-eth-act"; + prefix eth-drvr-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 action package configuration. + + Copyright (c) 2018-2019, 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-22 { + description + "Moved task and cli details to private model"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-02-12 { + description + "IOS XR 6.5.1 revision."; + } + + rpc clear-controller-counters { + description + "Clear controller stats for Ethernet controllers and interfaces"; + input { + leaf controller-name { + type csc:Interface-name; + mandatory true; + description + "Ethernet Controller or Interface name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-cfg.yang new file mode 100644 index 000000000..0b2d6a1a9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-cfg.yang @@ -0,0 +1,430 @@ +module Cisco-IOS-XR-drivers-media-eth-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-drivers-media-eth-cfg"; + prefix drivers-media-eth-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 drivers-media-eth package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-ethernet-cfg.yang which will provide the + compatible functionalities. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-12 { + description + "Support added for forwarding unviable configuration. + 2022-04-04 + Addition of base-r fec mode configuration. IosSetYangSchemaRev Cisco-IOS-XR-drivers-media-eth-oper"; + semver:module-version "2.1.0"; + } + revision 2019-12-03 { + description + "Adding priority flow-control mode configuration."; + semver:module-version "2.0.0"; + } + revision 2019-05-21 { + description + "Added new leaf for frame preemption configuration."; + semver:module-version "1.1.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-01-18 { + description + "Makig carrier delay tuple items optional."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Ethernet-auto-negotiation { + type enumeration { + enum "true" { + value 1; + description + "IEEE Standard auto-negotiation"; + } + enum "override" { + value 2; + description + "Auto-negotiation with configuration override"; + } + } + description + "Ethernet auto negotiation"; + } + + typedef Ethernet-fec { + type enumeration { + enum "none" { + value 0; + description + "Disable any FEC enabled on the interface"; + } + enum "standard" { + value 1; + description + "Enable standard (Reed-Solomon) FEC"; + } + enum "base-r" { + value 2; + description + "Enable Base-R (Fire code) FEC"; + } + } + description + "Ethernet fec"; + } + + typedef Ethernet-flow-ctrl { + type enumeration { + enum "ingress" { + value 0; + description + "Ingress flow control (sending pause frames)"; + } + enum "egress" { + value 1; + description + "Egress flow control (received pause frames)"; + } + enum "bidirectional" { + value 2; + description + "Bi-direction flow control"; + } + } + description + "Ethernet flow ctrl"; + } + + typedef Ethernet-duplex { + type enumeration { + enum "full" { + value 0; + description + "Full duplex"; + } + enum "half" { + value 1; + description + "Half duplex"; + } + } + description + "Ethernet duplex"; + } + + typedef Ethernet-pfcwd { + type enumeration { + enum "off" { + value 0; + description + "Disable priority flow control watchdog"; + } + enum "on" { + value 1; + description + "Enable priority flow control 1atchdog"; + } + } + description + "Ethernet pfcwd"; + } + + typedef Ethernet-loopback { + type enumeration { + enum "external" { + value 0; + description + "External loopback (using loopback connector)"; + } + enum "internal" { + value 1; + description + "Internal loopback"; + } + enum "line" { + value 2; + description + "Line loopback"; + } + } + description + "Ethernet loopback"; + } + + typedef Ethernet-speed { + type enumeration { + enum "10" { + value 10; + description + "10Mbits/s"; + } + enum "100" { + value 100; + description + "100Mbits/s"; + } + enum "1000" { + value 1000; + description + "1Gbits/s"; + } + } + description + "Ethernet speed"; + } + + typedef Ethernet-ipg { + type enumeration { + enum "non-standard" { + value 16; + description + "Non standard IPG"; + } + } + description + "Ethernet ipg"; + } + + typedef Ethernet-pfc { + type enumeration { + enum "off" { + value 0; + description + "Disable priority flow control"; + } + enum "on" { + value 1; + description + "Enable priority flow control"; + } + } + description + "Ethernet pfc"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ethernet { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-ethernet-cfg.yang which will + provide the compatible functionalities. Ether + specific interface configuration"; + container priority-flow-control-watchdog { + description + "Priority Flow Control Watchdog options"; + leaf shutdown-multiplier { + type uint32 { + range "1..10"; + } + description + "Configure priority flow-control watchdog + interval multiplier"; + } + leaf mode { + type Ethernet-pfcwd; + description + "Configure priority flow-control watchdog mode"; + } + leaf auto-restore-multiplier { + type uint32 { + range "0..100"; + } + description + "Configure priority flow-control watchdog Auto + Restore Multiplier"; + } + leaf interval { + type uint32 { + range "100..1000"; + } + description + "Configure priority flow-control watchdog + interval"; + } + } + container signal-fail-bit-error-rate { + description + "Signal Fail Bit Error Rate handling options"; + leaf signal-remote-fault { + type empty; + description + "Signal a remote fault to the peer device + whenever the link is taken down due to + crossing the SF-BER threshold"; + } + leaf signal-fail-threshold { + type uint32 { + range "4..15"; + } + default "4"; + description + "Set the Signal Fail bit error rate threshold + on an interface to a value of 10e-x, where x + is the value passed in here"; + } + leaf signal-fail-report-disable { + type empty; + description + "Disable generation of an alarm whenever the + SF-BER threshold is crossed for this interface"; + } + } + container optical-power-degrade { + description + "Optical power degrade handling options"; + leaf rx-alarm-threshold { + type int32 { + range "-300..50"; + } + description + "Set the value of the received optical power + degrade alarm threshold on an interface"; + } + } + container signal-degrade-bit-error-rate { + description + "Signal Degrade Bit Error Rate handling options"; + leaf signal-degrade-threshold { + type uint32 { + range "3..15"; + } + default "6"; + description + "Set the Signal Degrade bit error rate + threshold on an interface to a value of 10e-x, + where x is the value passed in here"; + } + leaf signal-degrade-report { + type empty; + description + "Generate an alarm whenever the SD-BER + threshold is crossed for this interface"; + } + } + container priority-flow-control { + description + "Priority Flow Control options"; + leaf mode { + type Ethernet-pfc; + description + "Configure priority flow-control mode"; + } + } + container carrier-delay { + description + "Set the carrier transition delay on an + interface in msecs"; + leaf carrier-delay-up { + type uint32 { + range "0..2147483647"; + } + description + "Carrier Delay (up) in msecs"; + } + leaf carrier-delay-down { + type uint32 { + range "0..2147483647"; + } + description + "Carrier Delay (down) in msecs"; + } + } + leaf frame-preemption { + type empty; + description + "Enable frame preemption"; + } + leaf duplex { + type Ethernet-duplex; + description + "Configure duplex operational mode"; + } + leaf forwarding-unviable { + type empty; + description + "Disable traffic forwarding on the ethernet port + . This port is already part of a Link + Aggregation(LAG) or can be part of one."; + } + leaf auto-negotiation { + type Ethernet-auto-negotiation; + description + "Link auto-negotiation"; + } + leaf flow-control { + type Ethernet-flow-ctrl; + description + "Configure flow-control mode"; + } + leaf forward-error-correction { + type Ethernet-fec; + description + "Forward Error Correction"; + } + leaf loopback { + type Ethernet-loopback; + description + "Configure loopback mode"; + } + leaf speed { + type Ethernet-speed; + description + "Set the ethernet speed on an interface"; + } + leaf inter-packet-gap { + type Ethernet-ipg; + description + "Inter-packet gap"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg.yang new file mode 100644 index 000000000..f23922e2e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg.yang @@ -0,0 +1,103 @@ +module Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-drivers-media-eth-gl-pfc-wd-cfg"; + prefix drivers-media-eth-gl-pfc-wd-cfg; + + 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 drivers-media-eth-gl-pfc-wd package configuration. + + This module contains definitions + for the following management objects: + priority-flow-control-watchdog: Global Priority Flow Control + Watchdog options + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-13 { + description + "Support for displaying configured data for Global pfc watchdog."; + semver:module-version "1.0.0"; + } + revision 2019-08-15 { + description + "Global pfc watchdog configuration."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ethernet-pfcgwd { + type enumeration { + enum "off" { + value 0; + description + "Disable priority flow control watchdog"; + } + enum "on" { + value 1; + description + "Enable priority flow control watchdog"; + } + } + description + "Ethernet pfcgwd"; + } + + container priority-flow-control-watchdog { + description + "Global Priority Flow Control Watchdog options"; + leaf auto-restore-multiplier { + type uint32 { + range "0..100"; + } + description + "Configure global priority flow-control watchdog + Auto Restore Multiplier"; + } + leaf interval { + type uint32 { + range "100..1000"; + } + description + "Configure global priority flow-control watchdog + interval"; + } + leaf shutdown-multiplier { + type uint32 { + range "1..10"; + } + description + "Configure global priority flow-control watchdog + interval multiplier"; + } + leaf mode { + type Ethernet-pfcgwd; + description + "Configure global priority flow-control watchdog + mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper-sub1.yang new file mode 100644 index 000000000..ed76ea54d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper-sub1.yang @@ -0,0 +1,5132 @@ +submodule Cisco-IOS-XR-drivers-media-eth-oper-sub1 { + belongs-to Cisco-IOS-XR-drivers-media-eth-oper { + prefix Cisco-IOS-XR-drivers-media-eth-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR drivers-media-eth package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-20 { + description + "Added new Ethernet media type definition + 2022-12-02 + Added new Ethernet media type definition for 400G Bright ZRP + 2022-09-10 + Added new Ethernet media type definition for 2x400G LR4 optics + 2022-08-26 + Added new Ethernet media type definition for 100GE ZR optics + 2022-06-08 + Added new Ethernet media type definition for 1G LH optics + 2022-05-10 + Added new Ethernet media type definition for Credo 800G AEC + 2022-04-25 + Added new Ethernet media type definition for 100GE ZR4S optics + 2022-04-22 + Start timestamp and validity support added for ethernet ports. + 2022-04-22 + Added new Ethernet media type definition for 8x100G FR + 2022-03-14 + Updated media type string + 2021-11-19 + Added new Ethernet media type definition for 24GE ER-I optics + 2021-11-04 + Enums added for new module 800G Passive Loopback + 2021-10-07 + Enums added for new module 2x400G FR4 and 8x100G DR. + 2021-09-30 + Added new Ethernet media type definition."; + semver:module-version "3.0.0"; + } + revision 2021-09-29 { + description + "Removed list rx_drop_data_frames_per_tc and added leaf total_rx_drop_data_frames. + 2021-08-24 + Support added for last data time for generic stats. + 2021-08-16 + Added new Ethernet media type definition. + 2021-07-19 + Removed leaf total_rx_drop_data_frames and added list rx_drop_data_frames_per_tc to maintain backward compatibility. + 2021-07-01 + Support added for hardware timestamp for generic stats."; + semver:module-version "2.1.0"; + } + revision 2021-02-12 { + description + "Added support for PFC per TC Rx drop Data Frames. + 2020-11-04 + Added support for SER alarms. + 2020-09-08 + Added new ethernet speed values."; + semver:module-version "2.0.0"; + } + revision 2020-02-19 { + description + "Description updated. + 2019-11-27 + Adding operational value for power m-factor. + 2019-08-15 + Adding PFC watchdog support."; + semver:module-version "1.2.0"; + } + revision 2019-05-21 { + description + "Added new leaf for frame preemption configuration."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-04-04 { + description + "Added new fields to phy data."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Ethernet-dev-if { + type enumeration { + enum "no-interface" { + description + "no interface"; + } + enum "xgmii" { + description + "xgmii"; + } + enum "xaui" { + description + "xaui"; + } + enum "ethernet-num-dev-if" { + description + "ethernet num dev if"; + } + } + description + "Ethernet dev if"; + } + + typedef Ethernet-dev { + type enumeration { + enum "no-device" { + description + "no device"; + } + enum "pma-pmd" { + description + "pma pmd"; + } + enum "wis" { + description + "wis"; + } + enum "pcs" { + description + "pcs"; + } + enum "phy-xs" { + description + "phy xs"; + } + enum "dte-xs" { + description + "dte xs"; + } + enum "ethernet-num-dev" { + description + "ethernet num dev"; + } + } + description + "Ethernet dev"; + } + + typedef Ethernet-bert-pattern { + type enumeration { + enum "no-test-pattern" { + description + "no test pattern"; + } + enum "high-frequency" { + description + "high frequency"; + } + enum "low-frequency" { + description + "low frequency"; + } + enum "mixed-frequency" { + description + "mixed frequency"; + } + enum "continuous-random" { + description + "continuous random"; + } + enum "continuous-jitter" { + description + "continuous jitter"; + } + enum "long-continuous-random" { + description + "long continuous random"; + } + enum "short-continuous-random" { + description + "short continuous random"; + } + enum "pseudorandom-seed-a" { + description + "pseudorandom seed a"; + } + enum "pseudorandom-seed-b" { + description + "pseudorandom seed b"; + } + enum "prbs31" { + description + "prbs31"; + } + enum "square-wave" { + description + "square wave"; + } + enum "pseudorandom" { + description + "pseudorandom"; + } + enum "ethernet-bert-pattern-types" { + description + "ethernet bert pattern types"; + } + } + description + "Ethernet test patterns (IEEE spec 36A/48A)"; + } + + typedef Ethernet-bert-err-cnt { + type enumeration { + enum "no-count-type" { + description + "no count type"; + } + enum "bit-error-count" { + description + "bit error count"; + } + enum "frame-error-count" { + description + "frame error count"; + } + enum "block-error-count" { + description + "block error count"; + } + enum "ethernet-bert-err-cnt-types" { + description + "ethernet bert err cnt types"; + } + } + description + "Ethernet bert err cnt"; + } + + typedef Ethernet-bert-mask { + type uint32; + description + "Ethernet bert mask"; + } + + typedef Ether-prbs-status { + type enumeration { + enum "prbs-status-not-running" { + description + "PRBS Status Not running"; + } + enum "prbs-status-unlocked" { + description + "PRBS Status unlocked"; + } + enum "prbs-status-locked" { + description + "PRBS Status locked"; + } + enum "prbs-status-not-available" { + description + "PRBS Status not available"; + } + } + description + "Ether prbs status"; + } + + typedef Ether-prbs-framing { + type enumeration { + enum "prbs-framing-not-configured" { + description + "PRBS Framing not configured"; + } + enum "prbs-framing-unframed" { + description + "PRBS Unframed mode"; + } + enum "prbs-framing-framed" { + description + "PRBS framed mode"; + } + } + description + "Ether prbs framing"; + } + + typedef Ether-prbs-error-inject { + type enumeration { + enum "prbs-error-inject-none" { + description + "PRBS Error inject none"; + } + enum "prbs-error-inject-single" { + description + "PRBS Error inject single"; + } + enum "prbs-error-inject-continuous" { + description + "PRBS Error inject continuous"; + } + } + description + "Ether prbs error inject"; + } + + typedef Ether-prbs-direction { + type enumeration { + enum "prbs-direction-not-configured" { + description + "PRBS Direction not configured"; + } + enum "prbs-direction-line" { + description + "PRBS Direction towards line side"; + } + enum "prbs-direction-system" { + description + "PRBS Direction towards system side"; + } + } + description + "Ether prbs direction"; + } + + typedef Ether-prbs-pattern { + type enumeration { + enum "prbs-pattern-none" { + description + "PRBS Pattern None"; + } + enum "prbs-pattern-pn7" { + description + "PRBS Polynomial pattern PN7"; + } + enum "prbs-pattern-pn9" { + description + "PRBS Polynomial pattern PN9"; + } + enum "prbs-pattern-pn11" { + description + "PRBS Polynomial pattern PN11"; + } + enum "prbs-pattern-pn15" { + description + "PRBS Polynomial pattern PN15"; + } + enum "prbs-pattern-pn23" { + description + "PRBS Polynomial pattern PN23"; + } + enum "prbs-pattern-pn31" { + description + "PRBS Polynomial pattern PN31"; + } + enum "prbs-pattern-user-defined" { + description + "PRBS user defined pattern"; + } + } + description + "Ether prbs pattern"; + } + + typedef Ether-prbs-mode { + type enumeration { + enum "prbs-mode-none" { + description + "PRBS Mode none"; + } + enum "prbs-mode-source" { + description + "PRBS Mode source"; + } + enum "prbs-mode-sink" { + description + "PRBS Mode sink"; + } + enum "prbs-mode-source-sink" { + description + "PRBS Mode source-sink"; + } + } + description + "Ether prbs mode"; + } + + typedef Ether-ains-status { + type enumeration { + enum "ains-soak-status-none" { + description + "AINS Soak timer not running"; + } + enum "ains-soak-status-pending" { + description + "AINS Soak timer pending"; + } + enum "ains-soak-status-running" { + description + "AINS Soak timer running"; + } + } + description + "Ether ains status"; + } + + typedef Mac-addr { + type yang:mac-address; + description + "Mac addr"; + } + + typedef Ether-pfc-wd { + type enumeration { + enum "ether-pfc-wd-not-cfg" { + description + "Not Configured"; + } + enum "off" { + description + "No priority flow control watchdog (disabled)"; + } + enum "on" { + description + "Priority flow control watchdog enabled"; + } + } + description + "Priority flowcontrol watchdog type"; + } + + typedef Ether-pfc { + type enumeration { + enum "no-pfc" { + description + "No priority flow control (disabled)"; + } + enum "on" { + description + "Priority flow control enabled"; + } + } + description + "Priority flowcontrol type"; + } + + typedef Eth-ctrlr-alarm-state { + type enumeration { + enum "alarm-not-supported" { + value 0; + description + "Not supported on this interface"; + } + enum "alarm-set" { + value 1; + description + "Alarm set"; + } + enum "alarm-not-set" { + value 2; + description + "Alarm not set"; + } + } + description + "Ethernet alarm state"; + } + + typedef Ethernet-ipg { + type enumeration { + enum "standard" { + description + "IEEE standard value of 12"; + } + enum "non-standard" { + description + "Non-standard value of 16"; + } + } + description + "Inter packet gap"; + } + + typedef Ether-flowcontrol { + type enumeration { + enum "no-flowcontrol" { + description + "No flow control (disabled)"; + } + enum "egress" { + description + "Traffic egress (pause frames ingress)"; + } + enum "ingress" { + description + "Traffic ingress (pause frames egress)"; + } + enum "bidirectional" { + description + "On both ingress and egress"; + } + } + description + "Flowcontrol type"; + } + + typedef Ethernet-duplex { + type enumeration { + enum "ethernet-duplex-invalid" { + description + "ethernet duplex invalid"; + } + enum "half-duplex" { + description + "half duplex"; + } + enum "full-duplex" { + description + "full duplex"; + } + } + description + "Duplexity"; + } + + typedef Ethernet-speed { + type enumeration { + enum "ethernet-speed-invalid" { + value 0; + description + "ethernet speed invalid"; + } + enum "ten-mbps" { + value 1; + description + "ten mbps"; + } + enum "hundred-mbps" { + value 2; + description + "hundred mbps"; + } + enum "one-gbps" { + value 3; + description + "one gbps"; + } + enum "ten-gbps" { + value 4; + description + "ten gbps"; + } + enum "twenty-five-gbps" { + value 5; + description + "twenty five gbps"; + } + enum "forty-gbps" { + value 6; + description + "forty gbps"; + } + enum "fifty-gbps" { + value 7; + description + "fifty gbps"; + } + enum "hundred-gbps" { + value 8; + description + "hundred gbps"; + } + enum "two-hundred-gbps" { + value 9; + description + "two hundred gbps"; + } + enum "four-hundred-gbps" { + value 10; + description + "four hundred gbps"; + } + enum "six-hundred-gbps" { + value 11; + description + "six hundred gbps"; + } + enum "eight-hundred-gbps" { + value 12; + description + "eight hundred gbps"; + } + enum "ethernet-speed-types-count" { + value 13; + description + "ethernet speed types count"; + } + } + description + "Speed"; + } + + typedef Ether-autoneg-mask { + type uint32; + description + "Ether autoneg mask"; + } + + typedef Ether-led-state { + type enumeration { + enum "led-state-unknown" { + description + "LED state is unknown"; + } + enum "led-off" { + description + "LED is off"; + } + enum "green-on" { + description + "LED is green"; + } + enum "green-flashing" { + description + "LED is flashing green"; + } + enum "yellow-on" { + description + "LED is yellow"; + } + enum "yellow-flashing" { + description + "LED is flashing yellow"; + } + enum "red-on" { + description + "LED is red"; + } + enum "red-flashing" { + description + "LED is flashing red"; + } + enum "na" { + description + "LED is Not Applicable"; + } + } + description + "Ether led state"; + } + + typedef Ether-link-state { + type enumeration { + enum "state-undefined" { + description + "State undefined"; + } + enum "unknown-state" { + description + "Initializing, true state not yet known"; + } + enum "available" { + description + "Link or light normal, loopback normal"; + } + enum "not-available" { + description + "Link loss or low light, no loopback"; + } + enum "remote-fault" { + description + "Remote fault with no detail"; + } + enum "invalid-signal" { + description + "Invalid signal, applies only to 10BASE-FB"; + } + enum "remote-jabber" { + description + "Remote fault, reason known to be jabber"; + } + enum "link-loss" { + description + "Remote fault, reason known to be far-end link + loss"; + } + enum "remote-test" { + description + "Remote fault, reason known to be test"; + } + enum "offline" { + description + "Offline (applies to auto-negotiation)"; + } + enum "auto-neg-error" { + description + "Auto-Negotiation Error"; + } + enum "pmd-link-fault" { + description + "PMD/PMA receive link fault"; + } + enum "frame-loss" { + description + "WIS loss of frames"; + } + enum "signal-loss" { + description + "WIS loss of signal"; + } + enum "link-fault" { + description + "PCS receive link fault"; + } + enum "excessive-ber" { + description + "PCS Bit Error Rate monitor reporting excessive + error rate"; + } + enum "dxs-link-fault" { + description + "DTE XGXS receive link fault"; + } + enum "pxs-link-fault" { + description + "PHY XGXS transmit link fault"; + } + enum "security" { + description + "Security failure (not a valid part)"; + } + enum "phy-not-present" { + description + "The optics for the port are not present"; + } + enum "no-optic-license" { + description + "License error (No advanced optical license)"; + } + enum "unsupported-module" { + description + "Module is not supported"; + } + enum "dwdm-laser-shut" { + description + "DWDM Laser shutdown"; + } + enum "wanphy-laser-shut" { + description + "WANPHY Laser shutdown"; + } + enum "incompatible-config" { + description + "Incompatible configuration"; + } + enum "system-error" { + description + "System error"; + } + enum "wan-framing-error" { + description + "WAN Framing Error"; + } + enum "otn-framing-error" { + description + "OTN Framing Error"; + } + enum "shutdown" { + description + "Link is shutdown"; + } + } + description + "Ethernet link state: IEEE 802.3/802.3ae clause 30 + .5.1.1.4"; + } + + typedef Ethernet-fec { + type enumeration { + enum "not-configured" { + description + "FEC not configured"; + } + enum "standard" { + description + "Reed-Solomon encoding"; + } + enum "disabled" { + description + "FEC explicitly disabled"; + } + enum "base-r" { + description + "BASE-R encoding"; + } + } + description + "FEC type"; + } + + typedef Ethernet-loopback { + type enumeration { + enum "no-loopback" { + description + "Disabled"; + } + enum "internal" { + description + "Loopback in the framer"; + } + enum "line" { + description + "Loops peer's packets back to them"; + } + enum "external" { + description + "tx externally connected to rx"; + } + } + description + "Loopback type"; + } + + typedef Ether-dom-alarm { + type enumeration { + enum "no-information" { + description + "DOM Alarm information is not available"; + } + enum "alarm-high" { + description + "Alarm high"; + } + enum "warning-high" { + description + "Warning high"; + } + enum "normal" { + description + "Within normal parameters"; + } + enum "warning-low" { + description + "Warning low"; + } + enum "alarm-low" { + description + "Alarm low"; + } + } + description + "Ether dom alarm"; + } + + typedef Ether-phy-present { + type enumeration { + enum "phy-not-present" { + description + "No PHY present"; + } + enum "phy-present" { + description + "PHY is present"; + } + enum "no-information" { + description + "State is unknown"; + } + } + description + "Ether phy present"; + } + + typedef Ethernet-media { + type enumeration { + enum "ethernet-other" { + description + "IEEE 802.3/802.3ae clause 30.2.5"; + } + enum "ethernet-unknown" { + description + "Initializing, true state or type not yet known"; + } + enum "ethernet-aui" { + description + "No internal MAU, view from AUI"; + } + enum "ethernet-10base5" { + description + "Thick coax MAU"; + } + enum "ethernet-foirl" { + description + "FOIRL MAU as specified in 9.9"; + } + enum "ethernet-10base2" { + description + "Thin coax MAU"; + } + enum "ethernet-10broad36" { + description + "Broadband DTE MAU"; + } + enum "ethernet-10base" { + description + "UTP MAU, duplexity unknown"; + } + enum "ethernet-10base-thd" { + description + "UTP MAU, half duplex"; + } + enum "ethernet-10base-tfd" { + description + "UTP MAU, full duplex"; + } + enum "ethernet-10base-fp" { + description + "Passive fiber MAU"; + } + enum "ethernet-10base-fb" { + description + "Synchronous fiber MAU"; + } + enum "ethernet-10base-fl" { + description + "Asynchronous fiber MAU, duplexity unknown"; + } + enum "ethernet-10base-flhd" { + description + "Asynchronous fiber MAU, half duplex"; + } + enum "ethernet-10base-flfd" { + description + "Asynchronous fiber MAU, full duplex"; + } + enum "ethernet-100base-t4" { + description + "Four-pair Category 3 UTP"; + } + enum "ethernet-100base-tx" { + description + "Two-pair Category 5 UTP, duplexity unknown"; + } + enum "ethernet-100base-txhd" { + description + "Two-pair Category 5 UTP, half duplex"; + } + enum "ethernet-100base-txfd" { + description + "Two-pair Category 5 UTP, full duplex"; + } + enum "ethernet-100base-fx" { + description + "X fiber over PMD, duplexity unknown"; + } + enum "ethernet-100base-fxhd" { + description + "X fiber over PMD, half duplex"; + } + enum "ethernet-100base-fxfd" { + description + "X fiber over PMD, full duplex"; + } + enum "ethernet-100base-ex" { + description + "X fiber over PMD (40km), duplexity unknown"; + } + enum "ethernet-100base-exhd" { + description + "X fiber over PMD (40km), half duplex"; + } + enum "ethernet-100base-exfd" { + description + "X fiber over PMD (40km), full duplex"; + } + enum "ethernet-100base-t2" { + description + "Two-pair Category 3 UTP, duplexity unknown"; + } + enum "ethernet-100base-t2hd" { + description + "Two-pair Category 3 UTP, half duplex"; + } + enum "ethernet-100base-t2fd" { + description + "Two-pair Category 3 UTP, full duplex"; + } + enum "ethernet-1000base-x" { + description + "X PCS/PMA, duplexity unknown"; + } + enum "ethernet-1000base-xhd" { + description + "X 1000BASE-XHDX PCS/PMA, half duplex"; + } + enum "ethernet-1000base-xfd" { + description + "X PCS/PMA, full duplex"; + } + enum "ethernet-1000base-lx" { + description + "X fiber over long-wl laser PMD, duplexity + unknown"; + } + enum "ethernet-1000base-lxhd" { + description + "X fiber over long-wl laser PMD, half duplex"; + } + enum "ethernet-1000base-lxfd" { + description + "X fiber over long-wl laser PMD, full duplex"; + } + enum "ethernet-1000base-sx" { + description + "X fiber over short-wl laser PMD, duplexity + unknown"; + } + enum "ethernet-1000base-sxhd" { + description + "X fiber over short-wl laser PMD, half duplex"; + } + enum "ethernet-1000base-sxfd" { + description + "X fiber over short-wl laser PMD, full duplex"; + } + enum "ethernet-1000base-cx" { + description + "X copper over 150-Ohm balanced PMD, duplexity + unknown"; + } + enum "ethernet-1000base-cxhd" { + description + "X copper over 150-Ohm balancedPMD, half duplex"; + } + enum "ethernet-1000base-cxfd" { + description + "X copper over 150-Ohm balancedPMD, full duplex"; + } + enum "ethernet-1000base" { + description + "Four-pair Category 5 UTP PHY, duplexity unknown"; + } + enum "ethernet-1000base-thd" { + description + "Four-pair Category 5 UTP PHY, half duplex"; + } + enum "ethernet-1000base-tfd" { + description + "Four-pair Category 5 UTP PHY, full duplex"; + } + enum "ethernet-10gbase-x" { + description + "X PCS/PMA "; + } + enum "ethernet-10gbase-lx4" { + description + "X fiber over 4 lane 1310nm optics"; + } + enum "ethernet-10gbase-r" { + description + "R PCS/PMA"; + } + enum "ethernet-10gbase-er" { + description + "R fiber over 1550nm optics"; + } + enum "ethernet-10gbase-lr" { + description + "R fiber over 1310nm optics"; + } + enum "ethernet-10gbase-sr" { + description + "R fiber over 850nm optics"; + } + enum "ethernet-10gbase-csr" { + description + "R fiber over 850nm optics"; + } + enum "ethernet-10gbase-w" { + description + "W PCS/PMA"; + } + enum "ethernet-10gbase-ew" { + description + "W fiber over 1550nm optics"; + } + enum "ethernet-10gbase-lw" { + description + "W fiber over 1310nm optics"; + } + enum "ethernet-10gbase-sw" { + description + "W fiber over 850nm optics"; + } + enum "ethernet-1000base-zx" { + description + "Single-mode fiber over 1550nm optics (Cisco)"; + } + enum "ethernet-1000base-cwdm" { + description + "CWDM with unknown wavelength optics"; + } + enum "ethernet-1000base-cwdm-1470" { + description + "CWDM with 1470nm optics"; + } + enum "ethernet-1000base-cwdm-1490" { + description + "CWDM with 1490nm optics"; + } + enum "ethernet-1000base-cwdm-1510" { + description + "CWDM with 1510nm optics"; + } + enum "ethernet-1000base-cwdm-1530" { + description + "CWDM with 1530nm optics"; + } + enum "ethernet-1000base-cwdm-1550" { + description + "CWDM with 1550nm optics"; + } + enum "ethernet-1000base-cwdm-1570" { + description + "CWDM with 1570nm optics"; + } + enum "ethernet-1000base-cwdm-1590" { + description + "CWDM with 1590nm optics"; + } + enum "ethernet-1000base-cwdm-1610" { + description + "CWDM with 1610nm optics"; + } + enum "ethernet-10gbase-zr" { + description + "Cisco-defined, over 1550nm optics"; + } + enum "ethernet-10gbase-dwdm" { + description + "DWDM optics"; + } + enum "ethernet-100gbase-lr4" { + description + "fiber over 4 lane optics (long reach)"; + } + enum "ethernet-1000base-dwdm" { + description + "DWDM optics"; + } + enum "ethernet-1000base-dwdm-1533" { + description + "DWDM with 1533nm optics"; + } + enum "ethernet-1000base-dwdm-1537" { + description + "DWDM with 1537nm optics"; + } + enum "ethernet-1000base-dwdm-1541" { + description + "DWDM with 1541nm optics"; + } + enum "ethernet-1000base-dwdm-1545" { + description + "DWDM with 1545nm optics"; + } + enum "ethernet-1000base-dwdm-1549" { + description + "DWDM with 1549nm optics"; + } + enum "ethernet-1000base-dwdm-1553" { + description + "DWDM with 1553nm optics"; + } + enum "ethernet-1000base-dwdm-1557" { + description + "DWDM with 1557nm optics"; + } + enum "ethernet-1000base-dwdm-1561" { + description + "DWDM with 1561nm optics"; + } + enum "ethernet-40gbase-lr4" { + description + "fiber over 4 lane optics (long reach)"; + } + enum "ethernet-40gbase-er4" { + description + "fiber over 4 lane optics (extended reach)"; + } + enum "ethernet-100gbase-er4" { + description + "fiber over 4 lane optics (extended reach)"; + } + enum "ethernet-1000base-ex" { + description + "X fiber over 1310nm optics"; + } + enum "ethernet-1000base-bx10-d" { + description + "X fiber (D, 10km)"; + } + enum "ethernet-1000base-bx10-u" { + description + "X fiber (U, 10km)"; + } + enum "ethernet-1000base-dwdm-1561-42" { + description + "DWDM with 1561.42nm optics"; + } + enum "ethernet-1000base-dwdm-1560-61" { + description + "DWDM with 1560.61nm optics"; + } + enum "ethernet-1000base-dwdm-1559-79" { + description + "DWDM with 1559.79nm optics"; + } + enum "ethernet-1000base-dwdm-1558-98" { + description + "DWDM with 1558.98nm optics"; + } + enum "ethernet-1000base-dwdm-1558-17" { + description + "DWDM with 1558.17nm optics"; + } + enum "ethernet-1000base-dwdm-1557-36" { + description + "DWDM with 1557.36nm optics"; + } + enum "ethernet-1000base-dwdm-1556-55" { + description + "DWDM with 1556.55nm optics"; + } + enum "ethernet-1000base-dwdm-1555-75" { + description + "DWDM with 1555.75nm optics"; + } + enum "ethernet-1000base-dwdm-1554-94" { + description + "DWDM with 1554.94nm optics"; + } + enum "ethernet-1000base-dwdm-1554-13" { + description + "DWDM with 1554.13nm optics"; + } + enum "ethernet-1000base-dwdm-1553-33" { + description + "DWDM with 1553.33nm optics"; + } + enum "ethernet-1000base-dwdm-1552-52" { + description + "DWDM with 1552.52nm optics"; + } + enum "ethernet-1000base-dwdm-1551-72" { + description + "DWDM with 1551.72nm optics"; + } + enum "ethernet-1000base-dwdm-1550-92" { + description + "DWDM with 1550.92nm optics"; + } + enum "ethernet-1000base-dwdm-1550-12" { + description + "DWDM with 1550.12nm optics"; + } + enum "ethernet-1000base-dwdm-1549-32" { + description + "DWDM with 1549.32nm optics"; + } + enum "ethernet-1000base-dwdm-1548-51" { + description + "DWDM with 1548.51nm optics"; + } + enum "ethernet-1000base-dwdm-1547-72" { + description + "DWDM with 1547.72nm optics"; + } + enum "ethernet-1000base-dwdm-1546-92" { + description + "DWDM with 1546.92nm optics"; + } + enum "ethernet-1000base-dwdm-1546-12" { + description + "DWDM with 1546.12nm optics"; + } + enum "ethernet-1000base-dwdm-1545-32" { + description + "DWDM with 1545.32nm optics"; + } + enum "ethernet-1000base-dwdm-1544-53" { + description + "DWDM with 1544.53nm optics"; + } + enum "ethernet-1000base-dwdm-1543-73" { + description + "DWDM with 1543.73nm optics"; + } + enum "ethernet-1000base-dwdm-1542-94" { + description + "DWDM with 1542.94nm optics"; + } + enum "ethernet-1000base-dwdm-1542-14" { + description + "DWDM with 1542.14nm optics"; + } + enum "ethernet-1000base-dwdm-1541-35" { + description + "DWDM with 1541.35nm optics"; + } + enum "ethernet-1000base-dwdm-1540-56" { + description + "DWDM with 1540.56nm optics"; + } + enum "ethernet-1000base-dwdm-1539-77" { + description + "DWDM with 1539.77nm optics"; + } + enum "ethernet-1000base-dwdm-1538-98" { + description + "DWDM with 1538.98nm optics"; + } + enum "ethernet-1000base-dwdm-1538-19" { + description + "DWDM with 1538.19nm optics"; + } + enum "ethernet-1000base-dwdm-1537-40" { + description + "DWDM with 1537.40nm optics"; + } + enum "ethernet-1000base-dwdm-1536-61" { + description + "DWDM with 1536.61nm optics"; + } + enum "ethernet-1000base-dwdm-1535-82" { + description + "DWDM with 1535.82nm optics"; + } + enum "ethernet-1000base-dwdm-1535-04" { + description + "DWDM with 1535.04nm optics"; + } + enum "ethernet-1000base-dwdm-1534-25" { + description + "DWDM with 1534.25nm optics"; + } + enum "ethernet-1000base-dwdm-1533-47" { + description + "DWDM with 1533.47nm optics"; + } + enum "ethernet-1000base-dwdm-1532-68" { + description + "DWDM with 1532.68nm optics"; + } + enum "ethernet-1000base-dwdm-1531-90" { + description + "DWDM with 1531.90nm optics"; + } + enum "ethernet-1000base-dwdm-1531-12" { + description + "DWDM with 1531.12nm optics"; + } + enum "ethernet-1000base-dwdm-1530-33" { + description + "DWDM with 1530.33nm optics"; + } + enum "ethernet-1000base-dwdm-tunable" { + description + "DWDM with tunable optics"; + } + enum "ethernet-10gbase-dwdm-1561-42" { + description + "DWDM with 1561.42nm optics"; + } + enum "ethernet-10gbase-dwdm-1560-61" { + description + "DWDM with 1560.61nm optics"; + } + enum "ethernet-10gbase-dwdm-1559-79" { + description + "DWDM with 1559.79nm optics"; + } + enum "ethernet-10gbase-dwdm-1558-98" { + description + "DWDM with 1558.98nm optics"; + } + enum "ethernet-10gbase-dwdm-1558-17" { + description + "DWDM with 1558.17nm optics"; + } + enum "ethernet-10gbase-dwdm-1557-36" { + description + "DWDM with 1557.36nm optics"; + } + enum "ethernet-10gbase-dwdm-1556-55" { + description + "DWDM with 1556.55nm optics"; + } + enum "ethernet-10gbase-dwdm-1555-75" { + description + "DWDM with 1555.75nm optics"; + } + enum "ethernet-10gbase-dwdm-1554-94" { + description + "DWDM with 1554.94nm optics"; + } + enum "ethernet-10gbase-dwdm-1554-13" { + description + "DWDM with 1554.13nm optics"; + } + enum "ethernet-10gbase-dwdm-1553-33" { + description + "DWDM with 1553.33nm optics"; + } + enum "ethernet-10gbase-dwdm-1552-52" { + description + "DWDM with 1552.52nm optics"; + } + enum "ethernet-10gbase-dwdm-1551-72" { + description + "DWDM with 1551.72nm optics"; + } + enum "ethernet-10gbase-dwdm-1550-92" { + description + "DWDM with 1550.92nm optics"; + } + enum "ethernet-10gbase-dwdm-1550-12" { + description + "DWDM with 1550.12nm optics"; + } + enum "ethernet-10gbase-dwdm-1549-32" { + description + "DWDM with 1549.32nm optics"; + } + enum "ethernet-10gbase-dwdm-1548-51" { + description + "DWDM with 1548.51nm optics"; + } + enum "ethernet-10gbase-dwdm-1547-72" { + description + "DWDM with 1547.72nm optics"; + } + enum "ethernet-10gbase-dwdm-1546-92" { + description + "DWDM with 1546.92nm optics"; + } + enum "ethernet-10gbase-dwdm-1546-12" { + description + "DWDM with 1546.12nm optics"; + } + enum "ethernet-10gbase-dwdm-1545-32" { + description + "DWDM with 1545.32nm optics"; + } + enum "ethernet-10gbase-dwdm-1544-53" { + description + "DWDM with 1544.53nm optics"; + } + enum "ethernet-10gbase-dwdm-1543-73" { + description + "DWDM with 1543.73nm optics"; + } + enum "ethernet-10gbase-dwdm-1542-94" { + description + "DWDM with 1542.94nm optics"; + } + enum "ethernet-10gbase-dwdm-1542-14" { + description + "DWDM with 1542.14nm optics"; + } + enum "ethernet-10gbase-dwdm-1541-35" { + description + "DWDM with 1541.35nm optics"; + } + enum "ethernet-10gbase-dwdm-1540-56" { + description + "DWDM with 1540.56nm optics"; + } + enum "ethernet-10gbase-dwdm-1539-77" { + description + "DWDM with 1539.77nm optics"; + } + enum "ethernet-10gbase-dwdm-1538-98" { + description + "DWDM with 1538.98nm optics"; + } + enum "ethernet-10gbase-dwdm-1538-19" { + description + "DWDM with 1538.19nm optics"; + } + enum "ethernet-10gbase-dwdm-1537-40" { + description + "DWDM with 1537.40nm optics"; + } + enum "ethernet-10gbase-dwdm-1536-61" { + description + "DWDM with 1536.61nm optics"; + } + enum "ethernet-10gbase-dwdm-1535-82" { + description + "DWDM with 1535.82nm optics"; + } + enum "ethernet-10gbase-dwdm-1535-04" { + description + "DWDM with 1535.04nm optics"; + } + enum "ethernet-10gbase-dwdm-1534-25" { + description + "DWDM with 1534.25nm optics"; + } + enum "ethernet-10gbase-dwdm-1533-47" { + description + "DWDM with 1533.47nm optics"; + } + enum "ethernet-10gbase-dwdm-1532-68" { + description + "DWDM with 1532.68nm optics"; + } + enum "ethernet-10gbase-dwdm-1531-90" { + description + "DWDM with 1531.90nm optics"; + } + enum "ethernet-10gbase-dwdm-1531-12" { + description + "DWDM with 1531.12nm optics"; + } + enum "ethernet-10gbase-dwdm-1530-33" { + description + "DWDM with 1530.33nm optics"; + } + enum "ethernet-10gbase-dwdm-tunable" { + description + "DWDM with tunable optics"; + } + enum "ethernet-40gbase-dwdm-1561-42" { + description + "DWDM with 1561.42nm optics"; + } + enum "ethernet-40gbase-dwdm-1560-61" { + description + "DWDM with 1560.61nm optics"; + } + enum "ethernet-40gbase-dwdm-1559-79" { + description + "DWDM with 1559.79nm optics"; + } + enum "ethernet-40gbase-dwdm-1558-98" { + description + "DWDM with 1558.98nm optics"; + } + enum "ethernet-40gbase-dwdm-1558-17" { + description + "DWDM with 1558.17nm optics"; + } + enum "ethernet-40gbase-dwdm-1557-36" { + description + "DWDM with 1557.36nm optics"; + } + enum "ethernet-40gbase-dwdm-1556-55" { + description + "DWDM with 1556.55nm optics"; + } + enum "ethernet-40gbase-dwdm-1555-75" { + description + "DWDM with 1555.75nm optics"; + } + enum "ethernet-40gbase-dwdm-1554-94" { + description + "DWDM with 1554.94nm optics"; + } + enum "ethernet-40gbase-dwdm-1554-13" { + description + "DWDM with 1554.13nm optics"; + } + enum "ethernet-40gbase-dwdm-1553-33" { + description + "DWDM with 1553.33nm optics"; + } + enum "ethernet-40gbase-dwdm-1552-52" { + description + "DWDM with 1552.52nm optics"; + } + enum "ethernet-40gbase-dwdm-1551-72" { + description + "DWDM with 1551.72nm optics"; + } + enum "ethernet-40gbase-dwdm-1550-92" { + description + "DWDM with 1550.92nm optics"; + } + enum "ethernet-40gbase-dwdm-1550-12" { + description + "DWDM with 1550.12nm optics"; + } + enum "ethernet-40gbase-dwdm-1549-32" { + description + "DWDM with 1549.32nm optics"; + } + enum "ethernet-40gbase-dwdm-1548-51" { + description + "DWDM with 1548.51nm optics"; + } + enum "ethernet-40gbase-dwdm-1547-72" { + description + "DWDM with 1547.72nm optics"; + } + enum "ethernet-40gbase-dwdm-1546-92" { + description + "DWDM with 1546.92nm optics"; + } + enum "ethernet-40gbase-dwdm-1546-12" { + description + "DWDM with 1546.12nm optics"; + } + enum "ethernet-40gbase-dwdm-1545-32" { + description + "DWDM with 1545.32nm optics"; + } + enum "ethernet-40gbase-dwdm-1544-53" { + description + "DWDM with 1544.53nm optics"; + } + enum "ethernet-40gbase-dwdm-1543-73" { + description + "DWDM with 1543.73nm optics"; + } + enum "ethernet-40gbase-dwdm-1542-94" { + description + "DWDM with 1542.94nm optics"; + } + enum "ethernet-40gbase-dwdm-1542-14" { + description + "DWDM with 1542.14nm optics"; + } + enum "ethernet-40gbase-dwdm-1541-35" { + description + "DWDM with 1541.35nm optics"; + } + enum "ethernet-40gbase-dwdm-1540-56" { + description + "DWDM with 1540.56nm optics"; + } + enum "ethernet-40gbase-dwdm-1539-77" { + description + "DWDM with 1539.77nm optics"; + } + enum "ethernet-40gbase-dwdm-1538-98" { + description + "DWDM with 1538.98nm optics"; + } + enum "ethernet-40gbase-dwdm-1538-19" { + description + "DWDM with 1538.19nm optics"; + } + enum "ethernet-40gbase-dwdm-1537-40" { + description + "DWDM with 1537.40nm optics"; + } + enum "ethernet-40gbase-dwdm-1536-61" { + description + "DWDM with 1536.61nm optics"; + } + enum "ethernet-40gbase-dwdm-1535-82" { + description + "DWDM with 1535.82nm optics"; + } + enum "ethernet-40gbase-dwdm-1535-04" { + description + "DWDM with 1535.04nm optics"; + } + enum "ethernet-40gbase-dwdm-1534-25" { + description + "DWDM with 1534.25nm optics"; + } + enum "ethernet-40gbase-dwdm-1533-47" { + description + "DWDM with 1533.47nm optics"; + } + enum "ethernet-40gbase-dwdm-1532-68" { + description + "DWDM with 1532.68nm optics"; + } + enum "ethernet-40gbase-dwdm-1531-90" { + description + "DWDM with 1531.90nm optics"; + } + enum "ethernet-40gbase-dwdm-1531-12" { + description + "DWDM with 1531.12nm optics"; + } + enum "ethernet-40gbase-dwdm-1530-33" { + description + "DWDM with 1530.33nm optics"; + } + enum "ethernet-40gbase-dwdm-tunable" { + description + "DWDM with tunable optics"; + } + enum "ethernet-100gbase-dwdm-1561-42" { + description + "DWDM with 1561.42nm optics"; + } + enum "ethernet-100gbase-dwdm-1560-61" { + description + "DWDM with 1560.61nm optics"; + } + enum "ethernet-100gbase-dwdm-1559-79" { + description + "DWDM with 1559.79nm optics"; + } + enum "ethernet-100gbase-dwdm-1558-98" { + description + "DWDM with 1558.98nm optics"; + } + enum "ethernet-100gbase-dwdm-1558-17" { + description + "DWDM with 1558.17nm optics"; + } + enum "ethernet-100gbase-dwdm-1557-36" { + description + "DWDM with 1557.36nm optics"; + } + enum "ethernet-100gbase-dwdm-1556-55" { + description + "DWDM with 1556.55nm optics"; + } + enum "ethernet-100gbase-dwdm-1555-75" { + description + "DWDM with 1555.75nm optics"; + } + enum "ethernet-100gbase-dwdm-1554-94" { + description + "DWDM with 1554.94nm optics"; + } + enum "ethernet-100gbase-dwdm-1554-13" { + description + "DWDM with 1554.13nm optics"; + } + enum "ethernet-100gbase-dwdm-1553-33" { + description + "DWDM with 1553.33nm optics"; + } + enum "ethernet-100gbase-dwdm-1552-52" { + description + "DWDM with 1552.52nm optics"; + } + enum "ethernet-100gbase-dwdm-1551-72" { + description + "DWDM with 1551.72nm optics"; + } + enum "ethernet-100gbase-dwdm-1550-92" { + description + "DWDM with 1550.92nm optics"; + } + enum "ethernet-100gbase-dwdm-1550-12" { + description + "DWDM with 1550.12nm optics"; + } + enum "ethernet-100gbase-dwdm-1549-32" { + description + "DWDM with 1549.32nm optics"; + } + enum "ethernet-100gbase-dwdm-1548-51" { + description + "DWDM with 1548.51nm optics"; + } + enum "ethernet-100gbase-dwdm-1547-72" { + description + "DWDM with 1547.72nm optics"; + } + enum "ethernet-100gbase-dwdm-1546-92" { + description + "DWDM with 1546.92nm optics"; + } + enum "ethernet-100gbase-dwdm-1546-12" { + description + "DWDM with 1546.12nm optics"; + } + enum "ethernet-100gbase-dwdm-1545-32" { + description + "DWDM with 1545.32nm optics"; + } + enum "ethernet-100gbase-dwdm-1544-53" { + description + "DWDM with 1544.53nm optics"; + } + enum "ethernet-100gbase-dwdm-1543-73" { + description + "DWDM with 1543.73nm optics"; + } + enum "ethernet-100gbase-dwdm-1542-94" { + description + "DWDM with 1542.94nm optics"; + } + enum "ethernet-100gbase-dwdm-1542-14" { + description + "DWDM with 1542.14nm optics"; + } + enum "ethernet-100gbase-dwdm-1541-35" { + description + "DWDM with 1541.35nm optics"; + } + enum "ethernet-100gbase-dwdm-1540-56" { + description + "DWDM with 1540.56nm optics"; + } + enum "ethernet-100gbase-dwdm-1539-77" { + description + "DWDM with 1539.77nm optics"; + } + enum "ethernet-100gbase-dwdm-1538-98" { + description + "DWDM with 1538.98nm optics"; + } + enum "ethernet-100gbase-dwdm-1538-19" { + description + "DWDM with 1538.19nm optics"; + } + enum "ethernet-100gbase-dwdm-1537-40" { + description + "DWDM with 1537.40nm optics"; + } + enum "ethernet-100gbase-dwdm-1536-61" { + description + "DWDM with 1536.61nm optics"; + } + enum "ethernet-100gbase-dwdm-1535-82" { + description + "DWDM with 1535.82nm optics"; + } + enum "ethernet-100gbase-dwdm-1535-04" { + description + "DWDM with 1535.04nm optics"; + } + enum "ethernet-100gbase-dwdm-1534-25" { + description + "DWDM with 1534.25nm optics"; + } + enum "ethernet-100gbase-dwdm-1533-47" { + description + "DWDM with 1533.47nm optics"; + } + enum "ethernet-100gbase-dwdm-1532-68" { + description + "DWDM with 1532.68nm optics"; + } + enum "ethernet-100gbase-dwdm-1531-90" { + description + "DWDM with 1531.90nm optics"; + } + enum "ethernet-100gbase-dwdm-1531-12" { + description + "DWDM with 1531.12nm optics"; + } + enum "ethernet-100gbase-dwdm-1530-33" { + description + "DWDM with 1530.33nm optics"; + } + enum "ethernet-100gbase-dwdm-tunable" { + description + "DWDM with tunable optics"; + } + enum "ethernet-40gbase-kr4" { + description + "4 lane copper (backplane)"; + } + enum "ethernet-40gbase-cr4" { + description + "4 lane copper (very short reach)"; + } + enum "ethernet-40gbase-sr4" { + description + "fiber over 4 lane optics (short reach)"; + } + enum "ethernet-40gbase-fr" { + description + "serial fiber (2+ km)"; + } + enum "ethernet-100gbase-cr10" { + description + "10 lane copper (very short reach)"; + } + enum "ethernet-100gbase-sr10" { + description + "MMF fiber over 10 lane optics (short reach)"; + } + enum "ethernet-40gbase-csr4" { + description + "fiber over 4 lane optics (extended short reach)"; + } + enum "ethernet-10gbase-cwdm" { + description + "CWDM optics"; + } + enum "ethernet-10gbase-cwdm-tunable" { + description + "CWDM with tunable optics"; + } + enum "ethernet-10gbase-cwdm-1470" { + description + "CWDM with 1470nm optics"; + } + enum "ethernet-10gbase-cwdm-1490" { + description + "CWDM with 1490nm optics"; + } + enum "ethernet-10gbase-cwdm-1510" { + description + "CWDM with 1510nm optics"; + } + enum "ethernet-10gbase-cwdm-1530" { + description + "CWDM with 1530nm optics"; + } + enum "ethernet-10gbase-cwdm-1550" { + description + "CWDM with 1550nm optics"; + } + enum "ethernet-10gbase-cwdm-1570" { + description + "CWDM with 1570nm optics"; + } + enum "ethernet-10gbase-cwdm-1590" { + description + "CWDM with 1590nm optics"; + } + enum "ethernet-10gbase-cwdm-1610" { + description + "CWDM with 1610nm optics"; + } + enum "ethernet-40gbase-cwdm" { + description + "CWDM optics"; + } + enum "ethernet-40gbase-cwdm-tunable" { + description + "CWDM with tunable optics"; + } + enum "ethernet-40gbase-cwdm-1470" { + description + "CWDM with 1470nm optics"; + } + enum "ethernet-40gbase-cwdm-1490" { + description + "CWDM with 1490nm optics"; + } + enum "ethernet-40gbase-cwdm-1510" { + description + "CWDM with 1510nm optics"; + } + enum "ethernet-40gbase-cwdm-1530" { + description + "CWDM with 1530nm optics"; + } + enum "ethernet-40gbase-cwdm-1550" { + description + "CWDM with 1550nm optics"; + } + enum "ethernet-40gbase-cwdm-1570" { + description + "CWDM with 1570nm optics"; + } + enum "ethernet-40gbase-cwdm-1590" { + description + "CWDM with 1590nm optics"; + } + enum "ethernet-40gbase-cwdm-1610" { + description + "CWDM with 1610nm optics"; + } + enum "ethernet-100gbase-cwdm" { + description + "CWDM optics"; + } + enum "ethernet-100gbase-cwdm-tunable" { + description + "CWDM with tunable optics"; + } + enum "ethernet-100gbase-cwdm-1470" { + description + "CWDM with 1470nm optics"; + } + enum "ethernet-100gbase-cwdm-1490" { + description + "CWDM with 1490nm optics"; + } + enum "ethernet-100gbase-cwdm-1510" { + description + "CWDM with 1510nm optics"; + } + enum "ethernet-100gbase-cwdm-1530" { + description + "CWDM with 1530nm optics"; + } + enum "ethernet-100gbase-cwdm-1550" { + description + "CWDM with 1550nm optics"; + } + enum "ethernet-100gbase-cwdm-1570" { + description + "CWDM with 1570nm optics"; + } + enum "ethernet-100gbase-cwdm-1590" { + description + "CWDM with 1590nm optics"; + } + enum "ethernet-100gbase-cwdm-1610" { + description + "CWDM with 1610nm optics"; + } + enum "ethernet-40gbase-elpb" { + description + "Electrical loopback"; + } + enum "ethernet-100gbase-elpb" { + description + "Electrical loopback"; + } + enum "ethernet-100gbase-lr10" { + description + "Fiber over 10 lane optics (long reach)"; + } + enum "ethernet-40gbase" { + description + "Four-pair Category 8 STP"; + } + enum "ethernet-100gbase-kp4" { + description + "4 lane copper (backplane)"; + } + enum "ethernet-100gbase-kr4" { + description + "Improved 4 lane copper (backplane)"; + } + enum "ethernet-10gbase-lrm" { + description + "Multimode fiber with 1310nm optics (long reach)"; + } + enum "ethernet-10gbase-cx4" { + description + "4 lane X copper"; + } + enum "ethernet-10gbase" { + description + "Four-pair Category 6+ UTP"; + } + enum "ethernet-10gbase-kx4" { + description + "4 lane X copper (backplane)"; + } + enum "ethernet-10gbase-kr" { + description + "Copper (backplane)"; + } + enum "ethernet-10gbase-pr" { + description + "Passive optical network"; + } + enum "ethernet-100base-lx" { + description + "X fiber over 4 lane 1310nm optics"; + } + enum "ethernet-100base-zx" { + description + "Single-mode fiber over 1550nm optics (Cisco)"; + } + enum "ethernet-1000base-bx-d" { + description + "X fiber (D)"; + } + enum "ethernet-1000base-bx-u" { + description + "X fiber (U)"; + } + enum "ethernet-1000base-bx20-d" { + description + "X fiber (D, 20km)"; + } + enum "ethernet-1000base-bx20-u" { + description + "X fiber (U, 20km)"; + } + enum "ethernet-1000base-bx40-d" { + description + "X fiber (D, 40km)"; + } + enum "ethernet-1000base-bx40-da" { + description + "X fiber (D, 40km)"; + } + enum "ethernet-1000base-bx40-u" { + description + "X fiber (U, 40km)"; + } + enum "ethernet-1000base-bx80-d" { + description + "X fiber (D, 80km)"; + } + enum "ethernet-1000base-bx80-u" { + description + "X fiber (U, 80km)"; + } + enum "ethernet-1000base-bx120-d" { + description + "X fiber (D, 120km)"; + } + enum "ethernet-1000base-bx120-u" { + description + "X fiber (U, 120km)"; + } + enum "ethernet-10gbase-bx-d" { + description + "X fiber (D)"; + } + enum "ethernet-10gbase-bx-u" { + description + "X fiber (U)"; + } + enum "ethernet-10gbase-bx10-d" { + description + "X fiber (D, 10km)"; + } + enum "ethernet-10gbase-bx10-u" { + description + "X fiber (U, 10km)"; + } + enum "ethernet-10gbase-bx20-d" { + description + "X fiber (D, 20km)"; + } + enum "ethernet-10gbase-bx20-u" { + description + "X fiber (U, 20km)"; + } + enum "ethernet-10gbase-bx40-d" { + description + "X fiber (D, 40km)"; + } + enum "ethernet-10gbase-bx40-u" { + description + "X fiber (U, 40km)"; + } + enum "ethernet-10gbase-bx80-d" { + description + "X fiber (D, 80km)"; + } + enum "ethernet-10gbase-bx80-u" { + description + "X fiber (U, 80km)"; + } + enum "ethernet-10gbase-bx120-d" { + description + "X fiber (D, 120km)"; + } + enum "ethernet-10gbase-bx120-u" { + description + "X fiber (U, 120km)"; + } + enum "ethernet-1000base-dr-lx" { + description + "X fiber over long-wl laser PMD, duplexity + unknown, dual rate"; + } + enum "ethernet-100gbase-er4l" { + description + "fiber over 4 lane optics (25km reach) (lite)"; + } + enum "ethernet-100gbase-sr4" { + description + "fiber over 4 lane optics (short reach)"; + } + enum "ethernet-40gbase-sr-bd" { + description + "Bi-directional fiber over 2 lane optics (short + reach)"; + } + enum "ethernet-25gbase-cr" { + description + "Twinaxial copper cabling"; + } + enum "ethernet-25gbase-cr-s" { + description + "Twinaxial copper cabling (no RS-FEC)"; + } + enum "ethernet-25gbase-kr" { + description + "One lane electrical backplane"; + } + enum "ethernet-25gbase-kr-s" { + description + "One lane electrical backplane (no RS-FEC)"; + } + enum "ethernet-25gbase-r" { + description + "One lane fiber"; + } + enum "ethernet-25gbase-sr" { + description + "Multimode fiber"; + } + enum "ethernet-25gbase-csr" { + description + "Multimode fiber"; + } + enum "ethernet-25gbase-dwdm" { + description + "DWDM optics"; + } + enum "ethernet-25gbase-dwdm-tunable" { + description + "DWDM with tunable optics"; + } + enum "ethernet-25gbase-cwdm" { + description + "CWDM optics"; + } + enum "ethernet-25gbase-cwdm-tunable" { + description + "CWDM with tunable optics"; + } + enum "ethernet-100gbase-psm4" { + description + "4 parallel single mode fibers"; + } + enum "ethernet-100gbase-er10" { + description + "Fiber over 10 lane optics (extended reach)"; + } + enum "ethernet-100gbase-er10l" { + description + "Fiber over 10 lane optics (extended reach) + (lite)"; + } + enum "ethernet-100gbase-acc" { + description + "Active copper cable"; + } + enum "ethernet-100gbase-aoc" { + description + "Active optical cable"; + } + enum "ethernet-100gbase-cwdm4" { + description + "4 lane CWDM cable"; + } + enum "ethernet-40gbase-psm4" { + description + "4 parallel single mode fibers"; + } + enum "ethernet-100gbase-cr4" { + description + "4 lane copper (very short reach)"; + } + enum "ethernet-100gbase-act-loop" { + description + "Active loopback"; + } + enum "ethernet-100gbase-pas-loop" { + description + "Passive loopback"; + } + enum "ethernet-50gbase-cr2" { + description + "2 lane copper (very short reach)"; + } + enum "ethernet-50gbase-sr2" { + description + "fiber over 2 lane optics (short reach)"; + } + enum "ethernet-50gbase-psm2" { + description + "2 parallel single mode fibers"; + } + enum "ethernet-200gbase-cr4" { + description + "4 lanes Passive Copper"; + } + enum "ethernet-400gbase-fr4" { + description + "Duplex SMF LC Connector 2km"; + } + enum "ethernet-400gbase-dr4" { + description + "SMF with MPO-12 connector"; + } + enum "ethernet-10gbase-cu1m" { + description + "Passive Twinax cable assembly 1m"; + } + enum "ethernet-10gbase-cu1-5m" { + description + "Passive Twinax cable assembly 1.5m"; + } + enum "ethernet-10gbase-cu2m" { + description + "Passive Twinax cable assembly 2m"; + } + enum "ethernet-10gbase-cu2-5m" { + description + "Passive Twinax cable assembly 2.5m"; + } + enum "ethernet-10gbase-cu3m" { + description + "Passive Twinax cable assembly 3m"; + } + enum "ethernet-10gbase-cu5m" { + description + "Passive Twinax cable assembly 5m"; + } + enum "ethernet-10gbase-acu7m" { + description + "Active Twinax cable assembly 7m"; + } + enum "ethernet-10gbase-acu10m" { + description + "Active Twinax cable assembly 10m"; + } + enum "ethernet-10gbase-aoc1m" { + description + "Active optical cable 1m"; + } + enum "ethernet-10gbase-aoc2m" { + description + "Active optical cable 2m"; + } + enum "ethernet-10gbase-aoc3m" { + description + "Active optical cable 3m"; + } + enum "ethernet-10gbase-aoc5m" { + description + "Active optical cable 5m"; + } + enum "ethernet-10gbase-aoc7m" { + description + "Active optical cable 7m"; + } + enum "ethernet-10gbase-aoc10m" { + description + "Active optical cable 10m"; + } + enum "ethernet-40gbase-aoc" { + description + "Active optical cable"; + } + enum "ethernet-4x10g-base-lr" { + description + "fiber over 4 lane optics (long reach)"; + } + enum "ethernet-40gbase-acu1m" { + description + "Active Twinax cable assembly 1m"; + } + enum "ethernet-40gbase-acu3m" { + description + "Active Twinax cable assembly 3m"; + } + enum "ethernet-40gbase-acu5m" { + description + "Active Twinax cable assembly 5m"; + } + enum "ethernet-40gbase-acu7m" { + description + "Active Twinax cable assembly 7m"; + } + enum "ethernet-40gbase-acu10m" { + description + "Active Twinax cable assembly 10m"; + } + enum "ethernet-25gbase-cu1m" { + description + "Twinaxial copper cabling (1m)"; + } + enum "ethernet-25gbase-cu2m" { + description + "Twinaxial copper cabling (2m)"; + } + enum "ethernet-25gbase-cu3m" { + description + "Twinaxial copper cabling (3m)"; + } + enum "ethernet-25gbase-cu4m" { + description + "Twinaxial copper cabling (4m)"; + } + enum "ethernet-25gbase-cu5m" { + description + "Twinaxial copper cabling (5m)"; + } + enum "ethernet-25gbase-cu1dot5m" { + description + "Twinaxial copper cabling (1.5m)"; + } + enum "ethernet-25gbase-cu2dot5m" { + description + "Twinaxial copper cabling (2.5m)"; + } + enum "ethernet-100gbase-sm-sr" { + description + "4 lane CWDM Lite cable"; + } + enum "ethernet-25gbase-aoc1m" { + description + "Active optical cable 1m"; + } + enum "ethernet-25gbase-aoc2m" { + description + "Active optical cable 2m"; + } + enum "ethernet-25gbase-aoc3m" { + description + "Active optical cable 3m"; + } + enum "ethernet-25gbase-aoc4m" { + description + "Active optical cable 4m"; + } + enum "ethernet-25gbase-aoc5m" { + description + "Active optical cable 5m"; + } + enum "ethernet-25gbase-aoc7m" { + description + "Active optical cable 7m"; + } + enum "ethernet-25gbase-aoc10m" { + description + "Active optical cable 10m"; + } + enum "ethernet-1000base-2bx-d" { + description + "2 channel X fibre (D)"; + } + enum "ethernet-1000base-2bx-d-i" { + description + "2 channel X fibre (D/I)"; + } + enum "ethernet-1000base-2bx-u" { + description + "2 channel X fibre (U)"; + } + enum "ethernet-1000base-2bx-u-i" { + description + "2 channel X fibre (U/I)"; + } + enum "ethernet-400gbase-cr8" { + description + "8 lane copper (very short reach)"; + } + enum "ethernet-100gbase-sr-bd" { + description + "Bi-directional fiber over 2 lane optics (short + reach)"; + } + enum "ethernet-400gbase-lr8" { + description + "fiber over 8 lane optics (long reach)"; + } + enum "ethernet-400gbase-aoc" { + description + "Active optical cable"; + } + enum "ethernet-400gbase-acc" { + description + "Active copper cable"; + } + enum "ethernet-400gbase-act-loop" { + description + "Active loopback"; + } + enum "ethernet-400gbase-pas-loop" { + description + "Passive loopback"; + } + enum "ethernet-8x-sfp50gbase-cu" { + description + "8x50G Copper cable"; + } + enum "ethernet-2x100gbase-lr8-s" { + description + "2x100G over 8 lane optics (long reach)"; + } + enum "ethernet-2x100gbase-sr4" { + description + "2x100G over 4 lane optics (short reach)"; + } + enum "ethernet-2x100gbase-psm4" { + description + "2x100G over 4 parallel single mode fibers"; + } + enum "ethernet-2x100gbase-cwdm4" { + description + "2x100G over 4 lane CWDM cable"; + } + enum "ethernet-2x100gbase-lr4" { + description + "2x100G over 4 lane optics (long reach)"; + } + enum "ethernet-100gbase-fr" { + description + "duplex single mode fiber (Far Reach/2 km)"; + } + enum "ethernet-100gbase-dwdm2" { + description + "100G DWDM optics using 2 wavelengths on 1550nm + DWDM grid with 80km reach"; + } + enum "ethernet-100gbase-er4f" { + description + "fiber over 4 lane optics (40km reach)"; + } + enum "ethernet-100gbase-er4l-s" { + description + "fiber over 4 lane optics (25km reach) (lite)"; + } + enum "ethernet-100gbase-lr" { + description + "duplex single mode fiber (Long Reach/10 km)"; + } + enum "ethernet-400gbase-aec" { + description + "Active electrical cable"; + } + enum "ethernet-4x100gbase-fr" { + description + "Parallel SMF (Far Reach/2 km)"; + } + enum "ethernet-400gbase-zr-s" { + description + "Duplex SMF LC Connector 80km"; + } + enum "ethernet-400gbase-zr-plus-s" { + description + "Duplex SMF LC Connector 80km"; + } + enum "ethernet-100gbase-dr-s" { + description + "Duplex SMF LC Connector 500m)"; + } + enum "ethernet-400gbase-lr4" { + description + "Duplex SMF over 4 lane (long reach/10 km)"; + } + enum "ethernet-25gbase-lr" { + description + "SFP28 Module for SMF"; + } + enum "ethernet-25gbase-pas-loop" { + description + "Passive loopback"; + } + enum "ethernet-50gbase-sr" { + description + "Multimode fiber"; + } + enum "ethernet-50gbase-cu1m" { + description + "Twinaxial copper cabling (1m)"; + } + enum "ethernet-50gbase-pas-loop" { + description + "Passive loopback"; + } + enum "ethernet-25g-50g-sr-s" { + description + "Multimode fiber"; + } + enum "ethernet-800gbase-cr8" { + description + "8 lane copper (very short reach)"; + } + enum "ethernet-qsa" { + description + "No Media Type (Empty QSA)"; + } + enum "ethernet-100gbase-erl" { + description + "duplex single mode fiber (Extended Reach 25km)"; + } + enum "ethernet-50gbase-cu1-5m" { + description + "Twinaxial copper cabling (1.5m)"; + } + enum "ethernet-50gbase-cu2m" { + description + "Twinaxial copper cabling (2m)"; + } + enum "ethernet-50gbase-cu2-5m" { + description + "Twinaxial copper cabling (2.5m)"; + } + enum "ethernet-50gbase-cu3m" { + description + "Twinaxial copper cabling (3m)"; + } + enum "ethernet-50gbase-cu5m" { + description + "Twinaxial copper cabling (5m)"; + } + enum "ethernet-4x100gbase-lr" { + description + "Parallel SMF (Long Reach/10 km)"; + } + enum "ethernet-100gbase-zr-plus-s" { + description + "Duplex SMF LC Connector 80km"; + } + enum "ethernet-2x400gbase-fr4" { + description + "Dual Duplex SMF CS 2km"; + } + enum "ethernet-8x100gbase-dr" { + description + "SMF With Angled MPO-16 Connector 500m"; + } + enum "ethernet-10gbase-pas-loop" { + description + "Passive loopback 10G ELB"; + } + enum "ethernet-gebase-pas-loop" { + description + "Passive loopback 1GE ELB"; + } + enum "ethernet-2x200gbase-cu" { + description + "2x200G over 8 lane passive copper"; + } + enum "ethernet-800gbase-pas-loop" { + description + "Passive loopback for 800G ELB"; + } + enum "ethernet-25gbase-er" { + description + "Duplex Single mode fibre (30/40km)"; + } + enum "ethernet-400gbase-sr8" { + description + "MMF over 8 lane (short reach)"; + } + enum "ethernet-qsa-28" { + description + "No Media Type (Empty QSA_28)"; + } + enum "ethernet-200gbase-fr4" { + description + "Duplex single mode fiber (Far Reach/2km)"; + } + enum "ethernet-8x100gbase-fr" { + description + "SMF With Angled MPO-16 Connector 500m"; + } + enum "ethernet-800gbase-aec" { + description + "800G Active electrical cable"; + } + enum "ethernet-100gbase-zr4s" { + description + "80Km duplex LC SMF"; + } + enum "ethernet-1000base-lh" { + description + "H fiber over long-wl laser PMD, duplexity + unknown"; + } + enum "ethernet-1000base-lhhd" { + description + "H fiber over long-wl laser PMD, half duplex"; + } + enum "ethernet-1000base-lhfd" { + description + "H fiber over long-wl laser PMD, full duplex"; + } + enum "ethernet-25gbase-bx25-d" { + description + "X fiber (D, 10km)"; + } + enum "ethernet-25gbase-bx25-u" { + description + "X fiber (U, 10km)"; + } + enum "ethernet-2x400gbase-lr4" { + description + "Dual Duplex SMF CS 10km"; + } + enum "ethernet-100gbase-zr-s" { + description + "Duplex SMF LC Connector 80km"; + } + enum "ethernet-400gbase-bright-zr-plus-s" { + description + "400G BRIGHT ZRP Duplex SMF LC Connector 80km"; + } + enum "ethernet-10gbase-t-x" { + description + "10GBASE SFP+ Copper lane"; + } + enum "ethernet-base-max" { + description + "ethernet base max"; + } + } + description + "Ethernet media types: IEEE 802.3/802.3ae clause + 30.5.1.1.2"; + } + + typedef Ethernet-port-enable { + type enumeration { + enum "disabled" { + description + "Port disabled, both directions"; + } + enum "rx-enabled" { + description + "Port enabled rx direction only"; + } + enum "tx-enabled" { + description + "Port enabled tx direction only"; + } + enum "enabled" { + description + "Port enabled, both directions"; + } + } + description + "Port admin state"; + } + + grouping ETHERNET-BERT-STATUS-TYPE { + description + "ETHERNET BERT STATUS TYPE"; + leaf bert-state-enabled { + type boolean; + description + "State"; + } + leaf data-availability { + type Ethernet-bert-mask; + description + "Flag indicating available data"; + } + leaf receive-count { + type uint64; + description + "Receive count (if 0x1 set in flag)"; + } + leaf transmit-count { + type uint64; + description + "Transmit count (if 0x2 set in flag)"; + } + leaf receive-errors { + type uint64; + description + "Received errors (if 0x4 set in flag)"; + } + leaf error-type { + type Ethernet-bert-err-cnt; + description + "Bit, block or frame error"; + } + leaf test-pattern { + type Ethernet-bert-pattern; + description + "Bert Test pattern as per IEEE"; + } + leaf device-under-test { + type Ethernet-dev; + description + "Device being tested"; + } + leaf interface-device { + type Ethernet-dev-if; + description + "Interface being tested"; + } + } + + grouping ETH-SHOWCTRL-BERT { + description + "Per port BERT test status information"; + container bert-status { + description + "Current test status"; + uses ETHERNET-BERT-STATUS-TYPE; + } + leaf time-left { + type uint32; + units "second"; + description + "Remaining time for this test in seconds"; + } + leaf port-bert-interval { + type uint32; + description + "Port BERT interval"; + } + } + + grouping ETH-CTLR-PRBS-INFO { + description + "ETH CTLR PRBS INFO"; + leaf mode { + type Ether-prbs-mode; + description + "PRBS mode configured"; + } + leaf pattern { + type Ether-prbs-pattern; + description + "PRBS pattern configured"; + } + leaf direction { + type Ether-prbs-direction; + description + "PRBS direction configured"; + } + leaf error-inject { + type Ether-prbs-error-inject; + description + "PRBS Error inject type configured"; + } + leaf framing { + type Ether-prbs-framing; + description + "PRBS framing mode configured"; + } + leaf status { + type Ether-prbs-status; + description + "PRBS Status"; + } + leaf user-pattern { + type uint64; + description + "PRBS user pattern configured"; + } + } + + grouping ETH-CTLR-TRANSPORT-INFO { + description + "ETH CTLR TRANSPORT INFO"; + leaf maintenance-mode-enabled { + type boolean; + description + "Maintenance Mode - TRUE if enabled"; + } + leaf ains-status { + type Ether-ains-status; + description + "AINS Soak status"; + } + leaf total-duration { + type uint32; + units "minute"; + description + "Total duration (minutes) of AINS soak timer"; + } + leaf remaining-duration { + type uint32; + units "second"; + description + "Remaining duration (seconds) of AINS soak timer"; + } + } + + grouping ETHER-MCAST-MAC-TYPE { + description + "Multicast MAC address"; + leaf mac-address { + type Mac-addr; + description + "MAC address"; + } + leaf mask { + type Mac-addr; + description + "Mask for this MAC address"; + } + } + + grouping ETH-CTRLR-MCAST-MAC-FILTER { + description + "ETH CTRLR MCAST MAC FILTER"; + leaf multicast-promiscuous { + type boolean; + description + "Whether the port is in multicast promiscuous + mode"; + } + list multicast-mac-address { + description + "MAC addresses in the multicast ingress + destination MAC filter"; + uses ETHER-MCAST-MAC-TYPE; + } + } + + grouping ETH-CTRLR-UCAST-MAC-FILTER { + description + "ETH CTRLR UCAST MAC FILTER"; + leaf-list unicast-mac-address { + type Mac-addr; + description + "MAC addresses in the unicast ingress destination + MAC filter"; + } + } + + grouping ETH-CTRLR-MAC-INFO { + description + "ETH CTRLR MAC INFO"; + container unicast-mac-filters { + description + "Port unicast MAC filter information"; + uses ETH-CTRLR-UCAST-MAC-FILTER; + } + container multicast-mac-filters { + description + "Port multicast MAC filter information"; + uses ETH-CTRLR-MCAST-MAC-FILTER; + } + leaf mtu { + type uint32; + description + "Port operational MTU"; + } + leaf mru { + type uint32; + description + "Port operational MRU"; + } + leaf burned-in-mac-address { + type Mac-addr; + description + "Port Burned-In MAC address"; + } + leaf operational-mac-address { + type Mac-addr; + description + "Port operational MAC address"; + } + } + + grouping ETHER-PFC-WD-DETAILS-TYPE { + description + "ETHER PFC WD DETAILS TYPE"; + leaf watchdog-state { + type string { + length "0..8"; + } + description + "Watchdog State"; + } + leaf watchdog-traffic-class-enable-mask { + type uint8; + description + "WSTCMask"; + } + list mode { + max-elements "3"; + description + "PFC Watchdog configured mode"; + leaf entry { + type Ether-pfc-wd; + description + "PFC Watchdog configured mode"; + } + } + list interval { + max-elements "3"; + description + "PFC Watchdog Interval configured"; + leaf entry { + type uint32; + description + "PFC Watchdog Interval configured"; + } + } + list shutdown-multiplier { + max-elements "3"; + description + "PFC Watchdog Shutdown Multiplier configured"; + leaf entry { + type uint32; + description + "PFC Watchdog Shutdown Multiplier configured"; + } + } + list auto-restore-multiplier { + max-elements "3"; + description + "PFC Watchdog Auto Restore Multiplier configured"; + leaf entry { + type uint32; + description + "PFC Watchdog Auto Restore Multiplier configured"; + } + } + list fixed-restore-multiplier { + max-elements "3"; + description + "PFC Watchdog Fixed Restore Multiplier configured"; + leaf entry { + type uint32; + description + "PFC Watchdog Fixed Restore Multiplier + configured"; + } + } + list qos-q-num { + max-elements "8"; + description + "Qos Q Number"; + leaf entry { + type uint32; + description + "Qos Q Number"; + } + } + list watchdog-event { + max-elements "8"; + description + "WD events"; + leaf entry { + type uint64; + description + "WD events"; + } + } + list shutdown-event { + max-elements "8"; + description + "Shutdown Events"; + leaf entry { + type uint64; + description + "Shutdown Events"; + } + } + list auto-restore-event { + max-elements "8"; + description + "Restore Events"; + leaf entry { + type uint64; + description + "Restore Events"; + } + } + list auto-restore-and-stuck-event { + max-elements "8"; + description + "Restore And Stuck Events"; + leaf entry { + type uint64; + description + "Restore And Stuck Events"; + } + } + list auto-restore-and-stuck-instantaneous-event { + max-elements "8"; + description + "Restore And Stuck instatneous Events"; + leaf entry { + type uint64; + description + "Restore And Stuck instatneous Events"; + } + } + list fixed-restore-event { + max-elements "8"; + description + "Restore Events"; + leaf entry { + type uint64; + description + "Restore Events"; + } + } + list total-dropped-packet { + max-elements "8"; + description + "Total dropped Packets"; + leaf entry { + type uint64; + description + "Total dropped Packets"; + } + } + list dropped-packet { + max-elements "8"; + description + "Dropped Packets"; + leaf entry { + type uint64; + description + "Dropped Packets"; + } + } + } + + grouping ETHER-PFC-DETAILS-TYPE { + description + "ETHER PFC DETAILS TYPE"; + leaf priority-flowcontrol { + type Ether-pfc; + description + "Port operational priority flow control"; + } + leaf priority-enabled-bitmap { + type uint8; + description + "Priority bitmap"; + } + leaf total-rx-frames { + type uint64; + description + "Total RX Frame counts"; + } + leaf total-tx-frames { + type uint64; + description + "Total TX Frame counts"; + } + leaf total-rx-drop-data-frames { + type uint64; + description + "Total RX Dropped Data Frames"; + } + leaf per-tc-rx-drop-supported { + type uint8; + description + "Indicates support for per TC RX drop Data frames"; + } + leaf per-tc-tx-frames-not-supported { + type uint8; + description + "Indicates support for per TC tx frames"; + } + list rx-frame { + max-elements "8"; + description + "RX Frame counts"; + leaf entry { + type uint64; + description + "RX Frame counts"; + } + } + list tx-frame { + max-elements "8"; + description + "TX Frame counts"; + leaf entry { + type uint64; + description + "TX Frame counts"; + } + } + list rx-drop-data-frame { + max-elements "8"; + description + "RX Dropped Data Frames"; + leaf entry { + type uint64; + description + "RX Dropped Data Frames"; + } + } + } + + grouping ETHER-OPD-SETTINGS { + description + "ETHER OPD SETTINGS"; + leaf received-optical-power-degrade-threshold-set { + type int32; + description + "Rx-OPD alarm threshold set?"; + } + leaf received-optical-power-degrade-threshold { + type int32; + description + "Rx-OPD alarm threshold value"; + } + } + + grouping ETH-OPD-MONITORING { + description + "ETH OPD MONITORING"; + container settings { + description + "The OPD monitoring settings to be applied"; + uses ETHER-OPD-SETTINGS; + } + leaf supported { + type int32; + description + "Whether or not OPD monitoring is supported"; + } + } + + grouping ETHER-BER-STATE { + description + "ETHER BER STATE"; + leaf sd-current-ber { + type uint32; + description + "Current SD-BER"; + } + leaf sf-current-ber { + type uint32; + description + "Current SF-BER"; + } + } + + grouping ETHER-BER-SETTINGS { + description + "ETHER BER SETTINGS"; + leaf signal-degrade-threshold { + type uint32; + description + "BER threshold for signal to degrade"; + } + leaf signal-degrade-alarm { + type int32; + description + "Report alarm to indicate signal degrade"; + } + leaf signal-fail-threshold { + type uint32; + description + "BER threshold for signal to fail"; + } + leaf signal-fail-alarm { + type int32; + description + "Report alarm to indicate signal failure"; + } + leaf signal-remote-fault { + type int32; + description + "Whether drivers should signal remote faults"; + } + } + + grouping ETH-BER-MONITORING { + description + "ETH BER MONITORING"; + container settings { + description + "The BER monitoring settings to be applied"; + uses ETHER-BER-SETTINGS; + } + container state { + description + "The BER state"; + uses ETHER-BER-STATE; + } + leaf supported { + type int32; + description + "Whether or not BER monitoring is supported"; + } + } + + grouping ETH-CTRLR-ERROR-COUNTERS { + description + "ETH CTRLR ERROR COUNTERS"; + leaf sync-header-errors { + type uint64; + description + "Sync-header error count"; + } + leaf pcsbip-errors { + type uint64; + description + "PCS BIP error count"; + } + } + + grouping ETH-CTRLR-ALARMS { + description + "ETH CTRLR ALARMS"; + leaf received-loss-of-signal-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of Received Loss of Signal"; + } + leaf pcs-loss-of-block-lock-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of PCS Loss of Block Lock"; + } + leaf local-fault-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of Local Fault"; + } + leaf remote-fault-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of Remote Fault"; + } + leaf sd-ber-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of SD-BER"; + } + leaf sf-ber-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of SF-BER"; + } + leaf loss-of-synchronization-data-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of Loss of Synchronization Data + Alarm"; + } + leaf hi-ber-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of Hi-BER"; + } + leaf squelch-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of Squelch"; + } + leaf rx-opd-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state of Rx OPD Alarm"; + } + leaf hi-ser-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state for Hi-SER"; + } + leaf deg-ser-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state for degraded SER"; + } + leaf local-deg-ser-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state for Local degrade SER"; + } + leaf remote-deg-ser-alarm { + type Eth-ctrlr-alarm-state; + description + "Alarm state for Remote degrade SER"; + } + } + + grouping ETHER-AUTONEG-TYPE { + description + "Autonegotiation settings"; + leaf autoneg-enabled { + type int32; + description + "TRUE if autonegotiation is enabled"; + } + leaf mask { + type Ether-autoneg-mask; + description + "Validity mask: 0x1 speed, 0x2 duplex, 0x4 + flowcontrol, 0x8 fec"; + } + leaf speed { + type Ethernet-speed; + description + "Restricted speed (if relevant bit is set in + mask)"; + } + leaf duplex { + type Ethernet-duplex; + description + "Restricted duplex (if relevant bit is set in + mask)"; + } + leaf flowcontrol { + type Ether-flowcontrol; + description + "Restricted flowcontrol (if relevant bit is set + in mask)"; + } + leaf config-override { + type int32; + description + "If true, configuration overrides negotiated + settings. If false, negotiated settings in + effect"; + } + leaf fec { + type Ethernet-fec; + description + "Restricted FEC (if revelevant bit is set in + mask)"; + } + } + + grouping ETH-CTRLR-L1-INFO { + description + "ETH CTRLR L1 INFO"; + container autoneg { + description + "Port autonegotiation configuration settings"; + uses ETHER-AUTONEG-TYPE; + } + container current-alarms { + description + "List of l1 Current alarms generated"; + uses ETH-CTRLR-ALARMS; + } + container previous-alarms { + description + "List of Previous alarms generated"; + uses ETH-CTRLR-ALARMS; + } + container error-counts { + description + "Statistics for detected errors"; + uses ETH-CTRLR-ERROR-COUNTERS; + } + container ber-monitoring { + description + "BER monitoring details"; + uses ETH-BER-MONITORING; + } + container opd-monitoring { + description + "OPD monitoring details"; + uses ETH-OPD-MONITORING; + } + container pfc-info { + description + "Priority flow control information"; + uses ETHER-PFC-DETAILS-TYPE; + } + container pfcwd-info { + description + "Priority flow control watchdog information"; + uses ETHER-PFC-WD-DETAILS-TYPE; + } + leaf link-state { + type Ether-link-state; + description + "Link state information of ethernet port"; + } + leaf led-state { + type Ether-led-state; + description + "State of the LED"; + } + leaf speed { + type Ethernet-speed; + description + "Port operational speed"; + } + leaf duplex { + type Ethernet-duplex; + description + "Port operational duplexity"; + } + leaf flowcontrol { + type Ether-flowcontrol; + description + "Port operational flow control"; + } + leaf ipg { + type Ethernet-ipg; + description + "Port operational inter-packet-gap"; + } + leaf laser-squelch-enabled { + type boolean; + description + "Laser Squelch - TRUE if enabled"; + } + leaf insert-idle-ingress-enabled { + type boolean; + description + "Insert Idle Ingress - TRUE if enabled"; + } + leaf insert-idle-egress-enabled { + type boolean; + description + "Insert Idle Egress - TRUE if enabled"; + } + leaf bandwidth-utilization { + type uint32; + units "percentage"; + description + "Bandwidth utilization (hundredths of a percent)"; + } + leaf bandwidth { + type uint64; + description + "Port operational bandwidth"; + } + leaf frame-preemption { + type int32; + description + "Indicates whether Frame preemption is enabled"; + } + leaf neighbor-mac-address { + type Mac-addr; + description + "MAC addresses of the peer connection "; + } + } + + grouping ETHER-CTRL-STATS-PCS-VALIDITY-ST { + description + "ETHER CTRL STATS PCS VALIDITY ST"; + leaf validity-total-bip { + type boolean; + description + "Flag indicating if Total BIP counter is valid"; + } + leaf validity-total-frame-err { + type boolean; + description + "Flag indicating if Total Frame Error counter is + valid"; + } + leaf validity-total-bad-sync-hdrs { + type boolean; + description + "Flag indicating if Total Bad Sync Headers count + is valid"; + } + } + + grouping ETHER-CTRL-STATS-PCS-ST-TS { + description + "ETHER CTRL STATS PCS ST TS"; + leaf start-timestamp-total-bip { + type uint64; + units "millisecond"; + description + "Start Timestamp for Total BIP counter (in msecs)"; + } + leaf start-timestamp-total-frame-error { + type uint64; + units "millisecond"; + description + "Start Timestamp for Total Frame error counter + (in msecs)"; + } + leaf start-timestamp-total-bad-sync-hdrs { + type uint64; + units "millisecond"; + description + "Start Timestamp for Total Bad Sync Headers + counter (in msecs)"; + } + } + + grouping ETHER-PCS-DETAILS-TYPE { + description + "ETHER PCS DETAILS TYPE"; + container controller-stats-start-timestamp { + description + "Timestamp when PCS counters were created,last + cleared or overrun(most recent event)"; + uses ETHER-CTRL-STATS-PCS-ST-TS; + } + container controller-stats-validity { + description + "Validity information for PCS counters, if PCS is + supported"; + uses ETHER-CTRL-STATS-PCS-VALIDITY-ST; + } + leaf total-bip { + type uint64; + description + "Total BIP errors for all lanes, if PCS is + supported"; + } + leaf total-frame-error { + type uint64; + description + "Total Frame Errors for all lanes, if PCS is + supported"; + } + leaf total-bad-sync-hdrs { + type uint64; + description + "Total Bad Sync Headers for all lanes, if PCS is + supported"; + } + } + + grouping EXTENDED-LOOPBACK-TYPE { + description + "EXTENDED LOOPBACK TYPE"; + leaf level { + type uint32; + description + "Level"; + } + leaf loopback { + type Ethernet-loopback; + description + "Port operational loopback"; + } + } + + grouping ETHER-CTRL-STATS-FEC-VALIDITY-ST { + description + "ETHER CTRL STATS FEC VALIDITY ST"; + leaf validity-corrected-codeword-count { + type boolean; + description + "Flag indicating if Corrected codeword count is + valid"; + } + leaf validity-uncorrected-codeword-count { + type boolean; + description + "Flag indicating if Uncorrected codeword count is + valid"; + } + } + + grouping ETHER-CTRL-STATS-FEC-ST-TS { + description + "ETHER CTRL STATS FEC ST TS"; + leaf start-timestamp-corrected-codeword-count { + type uint64; + units "millisecond"; + description + "Start Timestamp for Corrected codeword count (in + msecs)"; + } + leaf start-timestamp-uncorrected-codeword-count { + type uint64; + units "millisecond"; + description + "Start Timestamp for Uncorrected codeword count + (in msecs)"; + } + } + + grouping ETHER-FEC-DETAILS-TYPE { + description + "ETHER FEC DETAILS TYPE"; + container controller-stats-start-timestamp { + description + "Timestamp when FEC stats were created,last + cleared or overrun(most recent event)"; + uses ETHER-CTRL-STATS-FEC-ST-TS; + } + container controller-stats-validity { + description + "Validity information for FEC stats, if supported + on platform"; + uses ETHER-CTRL-STATS-FEC-VALIDITY-ST; + } + leaf fec { + type Ethernet-fec; + description + "Port operational FEC type"; + } + leaf corrected-codeword-count { + type uint64; + description + "Corrected codeword error count, if FEC is + supported"; + } + leaf uncorrected-codeword-count { + type uint64; + description + "Uncorrected codeword error count, if FEC is + supported"; + } + } + + grouping ETH-CTRLR-PHY-DOM-ALARMS { + description + "ETH CTRLR PHY DOM ALARMS"; + leaf transceiver-temperature { + type Ether-dom-alarm; + description + "Transceiver Optics Temperature Alarm State"; + } + leaf transceiver-voltage { + type Ether-dom-alarm; + description + "Transceiver Voltage Alarm State"; + } + leaf transmit-laser-power { + type Ether-dom-alarm; + description + "Transmit Laser Power Alarm State"; + } + leaf received-laser-power { + type Ether-dom-alarm; + description + "Received Optical Power Alarm State"; + } + leaf laser-bias-current { + type Ether-dom-alarm; + description + "Laser Bias Current Alarm State"; + } + } + + grouping ETH-CTRLR-PHY-DOM-THRESHOLD-VALIDITY { + description + "ETH CTRLR PHY DOM THRESHOLD VALIDITY"; + leaf temperature-valid { + type int32; + description + "The temperature fields are valid"; + } + leaf voltage-valid { + type int32; + description + "The voltage fields are valid"; + } + leaf laser-bias-valid { + type int32; + description + "The laser bias fields are valid"; + } + leaf transmit-power-valid { + type int32; + description + "The transmit power fields are valid"; + } + leaf receive-power-valid { + type int32; + description + "The receive power fields are valid"; + } + } + + grouping ETH-CTRLR-PHY-DOM-THRESHOLDS { + description + "ETH CTRLR PHY DOM THRESHOLDS"; + container field-validity { + description + "Indicates which of the DOM threshold fields are + valid"; + uses ETH-CTRLR-PHY-DOM-THRESHOLD-VALIDITY; + } + leaf transceiver-temperature-alarm-high { + type int32; + description + "Transceiver high temperature alarm threshold + (mDegrees C)"; + } + leaf transceiver-temperature-warning-high { + type int32; + description + "Transceiver high temperature warning threshold + (mDegrees C)"; + } + leaf transceiver-temperature-warning-low { + type int32; + description + "Transceiver low temperature warning threshold + (mDegrees C)"; + } + leaf transceiver-temperature-alarm-low { + type int32; + description + "Transceiver low temperature alarm threshold + (mDegrees C)"; + } + leaf transceiver-voltage-alarm-high { + type uint32; + description + "Transceiver high voltage alarm threshold (mV)"; + } + leaf transceiver-voltage-warning-high { + type uint32; + description + "Transceiver high voltage warning threshold (mV)"; + } + leaf transceiver-voltage-warning-low { + type uint32; + description + "Transceiver low voltage warning threshold (mV)"; + } + leaf transceiver-voltage-alarm-low { + type uint32; + description + "Transceiver low voltage alarm threshold (mV)"; + } + leaf laser-bias-alarm-high { + type uint32; + description + "Laser bias high alarm threshold (uA)"; + } + leaf laser-bias-warning-high { + type uint32; + description + "Laser bias high warning threshold (uA)"; + } + leaf laser-bias-warning-low { + type uint32; + description + "Laser bias low warning threshold (uA)"; + } + leaf laser-bias-alarm-low { + type uint32; + description + "Laser bias low alarm threshold (uA)"; + } + leaf optical-transmit-power-alarm-high { + type uint32; + description + "High optical transmit power alarm threshold (uW)"; + } + leaf optical-transmit-power-warning-high { + type uint32; + description + "High optical transmit power warning threshold + (uW)"; + } + leaf optical-transmit-power-warning-low { + type uint32; + description + "Low optical transmit power warning threshold + (uW)"; + } + leaf optical-transmit-power-alarm-low { + type uint32; + description + "Low optical transmit power alarm threshold (uW)"; + } + leaf optical-receive-power-alarm-high { + type uint32; + description + "High optical receive power alarm threshold (uW)"; + } + leaf optical-receive-power-warning-high { + type uint32; + description + "High optical receive power warning threshold + (uW)"; + } + leaf optical-receive-power-warning-low { + type uint32; + description + "Low optical receive power warning threshold (uW)"; + } + leaf optical-receive-power-alarm-low { + type uint32; + description + "Low optical receive power alarm threshold (uW)"; + } + leaf power-m-factor { + type uint32; + description + "Power multipication factor for tx/rx + alarm/warning"; + } + leaf multipication-factor { + type uint32; + description + "Multipication factor applicable for certain + Platforms"; + } + } + + grouping ETH-CTRLR-PHY-LANE-OPT-MON-VALIDITY { + description + "ETH CTRLR PHY LANE OPT MON VALIDITY"; + leaf wavelength-valid { + type int32; + description + "The wavelength 'per lane' field is valid"; + } + leaf transmit-power-valid { + type int32; + description + "The transmit power 'per lane' field is valid"; + } + leaf receive-power-valid { + type int32; + description + "The receive power 'per lane' field is valid"; + } + leaf laser-bias-valid { + type int32; + description + "The laser bias 'per lane' field is valid"; + } + } + + grouping ETH-CTRLR-PHY-DOM-LANE-ALARMS { + description + "ETH CTRLR PHY DOM LANE ALARMS"; + leaf transmit-laser-power { + type Ether-dom-alarm; + description + "Transmit Laser Power Alarm"; + } + leaf received-laser-power { + type Ether-dom-alarm; + description + "Received Optical Power Alarm"; + } + leaf laser-bias-current { + type Ether-dom-alarm; + description + "Laser Bias Current Alarm"; + } + } + + grouping ETH-CTRLR-PHY-LANE-OPT-MON { + description + "ETH CTRLR PHY LANE OPT MON"; + container dig-opt-mon-alarm { + description + "Digital Optical Monitoring alarms"; + uses ETH-CTRLR-PHY-DOM-LANE-ALARMS; + } + leaf center-wavelength { + type uint32; + description + "Center Wavelength (nm*1000)"; + } + leaf transmit-laser-power { + type int32; + description + "Transmit Laser Power (dBm*1000)"; + } + leaf received-laser-power { + type int32; + description + "Received Optical Power (dBm*1000)"; + } + leaf laser-bias-current { + type uint32; + description + "Laser Bias Current (uAmps)"; + } + leaf lane-id { + type uint32; + description + "Numerical identifier for this lane"; + } + } + + grouping ETHER-PHY-DETAILS-TYPE { + description + "ETHER PHY DETAILS TYPE"; + container lane-field-validity { + description + "Digital Optical Monitoring (per lane + information) validity"; + uses ETH-CTRLR-PHY-LANE-OPT-MON-VALIDITY; + } + container dig-opt-mon-alarm-thresholds { + description + "Digital Optical Monitoring alarm thresholds"; + uses ETH-CTRLR-PHY-DOM-THRESHOLDS; + } + container dig-opt-mon-alarms { + description + "Digital Optical Monitoring alarms"; + uses ETH-CTRLR-PHY-DOM-ALARMS; + } + leaf vendor { + type string; + description + "Name of the port optics manufacturer"; + } + leaf vendor-part-number { + type string; + description + "Part number for the port optics"; + } + leaf vendor-serial-number { + type string; + description + "Serial number for the port optics"; + } + leaf transceiver-temperature { + type int32; + description + "The temperature of the transceiver (mDegrees C)"; + } + leaf transceiver-voltage { + type int32; + description + "The input voltage to the transceiver (mV)"; + } + leaf transceiver-tx-power { + type int32; + description + "The transceiver transmit laser power (uW)"; + } + leaf transceiver-rx-power { + type int32; + description + "The transceiver receive optical power (uW)"; + } + leaf transceiver-tx-bias { + type int32; + description + "The laser bias of the transceiver (uA)"; + } + leaf optics-wavelength { + type uint32; + description + "Wavelength of the optics being used in nm * 1000"; + } + leaf optics-type { + type string; + description + "Optics module type"; + } + leaf revision-number { + type string; + description + "Module revision number"; + } + list lane { + description + "Digital Optical Monitoring (per lane + information)"; + uses ETH-CTRLR-PHY-LANE-OPT-MON; + } + } + + grouping ETH-CTRLR-PHY-INFO { + description + "ETH CTRLR PHY INFO"; + container phy-details { + description + "Details about the PHY"; + uses ETHER-PHY-DETAILS-TYPE; + } + container fec-details { + description + "Forward Error Correction information"; + uses ETHER-FEC-DETAILS-TYPE; + } + container pcs-details { + description + "Physical Coding Sub-layer counter information"; + uses ETHER-PCS-DETAILS-TYPE; + } + leaf media-type { + type Ethernet-media; + description + "Port media type"; + } + leaf phy-present { + type Ether-phy-present; + description + "Presence of PHY"; + } + leaf loopback { + type Ethernet-loopback; + description + "Port operational loopback"; + } + leaf holdoff-time { + type uint32; + description + "Ethernet port Holdoff Time"; + } + list extended-loopback { + description + "Port operational extended loopback"; + uses EXTENDED-LOOPBACK-TYPE; + } + } + + grouping ETHERNET-CONTROLLER-DRIVER-BAG-V2-TYPE { + description + "Ethernet bag for driver state for the show + controllers command"; + container phy-info { + description + "PHY information"; + uses ETH-CTRLR-PHY-INFO; + } + container layer1-info { + description + "Layer 1 information"; + uses ETH-CTRLR-L1-INFO; + } + container mac-info { + description + "MAC Layer information"; + uses ETH-CTRLR-MAC-INFO; + } + container transport-info { + description + "Transport state information"; + uses ETH-CTLR-TRANSPORT-INFO; + } + container prbs-info { + description + "Pseudo Random Binary Sequence test information"; + uses ETH-CTLR-PRBS-INFO; + } + leaf admin-state { + type Ethernet-port-enable; + description + "Port Administrative State"; + } + leaf oper-state-up { + type boolean; + description + "Port Operational state - TRUE if up"; + } + } + + grouping ETHER-CTRL-L2-VALIDITY-ST { + description + "ETHER CTRL L2 VALIDITY ST"; + leaf validity-received-total-bytes { + type boolean; + description + "Validity of total octets of all frames recieved"; + } + leaf validity-received-good-bytes { + type boolean; + description + "Validity of total octets of all good frames + recieved"; + } + leaf validity-received-total-frames { + type boolean; + description + "Validity of all frames, good or bad recieved"; + } + leaf validity-received8021q-frames { + type boolean; + description + "Validity of all 802.1Q frames recieved"; + } + leaf validity-received-pause-frames { + type boolean; + description + "Validity of all pause frames recieved"; + } + leaf validity-received-unknown-opcodes { + type boolean; + description + "Validity of unsupported MAC Control frames + recieved"; + } + leaf validity-received-total64-octet-frames { + type boolean; + description + "Validity of all 64 Octet Frame Count recieved"; + } + leaf validity-received-total-octet-frames-from65-to127 { + type boolean; + description + "Validity of all 65-127 Octet Frame Count + recieved"; + } + leaf validity-received-total-octet-frames-from128-to255 { + type boolean; + description + "Validity of all 128-255 Octet Frame Count + recieved"; + } + leaf validity-received-total-octet-frames-from256-to511 { + type boolean; + description + "Validity of all 256-511 Octet Frame Count + recieved"; + } + leaf validity-received-total-octet-frames-from512-to1023 { + type boolean; + description + "Validity of all 512-1023 Octet Frame Count + recieved"; + } + leaf validity-received-total-octet-frames-from1024-to1518 { + type boolean; + description + "Validity of all 1024-1518 Octet Frame Count + recieved"; + } + leaf validity-received-total-octet-frames-from1519-to-max { + type boolean; + description + "Validity of all > 1518 Octet Frame Count + recieved"; + } + leaf validity-received-good-frames { + type boolean; + description + "Validity of number of well formed packets + recieved"; + } + leaf validity-received-unicast-frames { + type boolean; + description + "Validity of number of unicast packets recieved"; + } + leaf validity-received-multicast-frames { + type boolean; + description + "Validity of number of multicast packets recieved"; + } + leaf validity-received-broadcast-frames { + type boolean; + description + "Validity of number of broadcast packets recieved"; + } + leaf validity-number-of-buffer-overrun-packets-dropped { + type boolean; + description + "Validity of input drops due to buffer overrun"; + } + leaf validity-number-of-aborted-packets-dropped { + type boolean; + description + "Validity of input drops due to packet abort"; + } + leaf validity-numberof-invalid-vlan-id-packets-dropped { + type boolean; + description + "Validity of input drops due to invalid VLAN id"; + } + leaf validity-invalid-dest-mac-drop-packets { + type boolean; + description + "Validity of input drops due to the destination + MAC not matching"; + } + leaf validity-invalid-encap-drop-packets { + type boolean; + description + "Validity of input drops due to the encapsulation + or ether type not matching"; + } + leaf validity-number-of-miscellaneous-packets-dropped { + type boolean; + description + "Validity of any other input drops not counted"; + } + leaf validity-dropped-giant-packets-greaterthan-mru { + type boolean; + description + "Validity of input Good frames > MRU, dropped"; + } + leaf validity-dropped-ether-stats-undersize-pkts { + type boolean; + description + "Validity of input Good frames < 64 Octet, + dropped"; + } + leaf validity-dropped-jabbers-packets-greaterthan-mru { + type boolean; + description + "Validity of Bad input Frames > MRU, dropped"; + } + leaf validity-dropped-ether-stats-fragments { + type boolean; + description + "Validity of Bad input Frames < 64 Octet, dropped"; + } + leaf validity-dropped-packets-with-crc-align-errors { + type boolean; + description + "Validity of input Frames 64 - MRU with CRC error"; + } + leaf validity-ether-stats-collisions { + type boolean; + description + "Validity of all input collision events"; + } + leaf validity-symbol-errors { + type boolean; + description + "Validity of number of input symbol errors + detected"; + } + leaf validity-dropped-miscellaneous-error-packets { + type boolean; + description + "Validity of Any other input errors not counted"; + } + leaf validity-rfc2819-ether-stats-oversized-pkts { + type boolean; + description + "Validity of input RFC2819 + etherStatsOversizedPkts"; + } + leaf validity-rfc2819-ether-stats-jabbers { + type boolean; + description + "Validity of input RFC2819 etherStatsJabbers"; + } + leaf validity-rfc2819-ether-stats-crc-align-errors { + type boolean; + description + "Validity of input RFC2819 + etherStatsCRCAlignErrors"; + } + leaf validity-rfc3635dot3-stats-alignment-errors { + type boolean; + description + "Validity of input RFC3635 + dot3StatsAlignmentErrors"; + } + leaf validity-total-bytes-transmitted { + type boolean; + description + "Validity of total octets of all frames sent"; + } + leaf validity-total-good-bytes-transmitted { + type boolean; + description + "Validity of total octets of all good frames sent"; + } + leaf validity-total-frames-transmitted { + type boolean; + description + "Validity of all frames, good or bad sent"; + } + leaf validity-transmitted8021q-frames { + type boolean; + description + "Validity of all 802.1Q frames sent"; + } + leaf validity-transmitted-total-pause-frames { + type boolean; + description + "Validity of all pause frames sent"; + } + leaf validity-transmitted-total64-octet-frames { + type boolean; + description + "Validity of all 64 Octet Frame Count sent"; + } + leaf validity-transmitted-total-octet-frames-from65-to127 { + type boolean; + description + "Validity of all 65-127 Octet Frame Count sent"; + } + leaf validity-transmitted-total-octet-frames-from128-to255 { + type boolean; + description + "Validity of all 128-255 Octet Frame Count sent"; + } + leaf validity-transmitted-total-octet-frames-from256-to511 { + type boolean; + description + "Validity of all 256-511 Octet Frame Count sent"; + } + leaf validity-transmitted-total-octet-frames-from512-to1023 { + type boolean; + description + "Validity of all 512-1023 Octet Frame Count sent"; + } + leaf validity-transmitted-total-octet-frames-from1024-to1518 { + type boolean; + description + "Validity of all 1024-1518 Octet Frame Count sent"; + } + leaf validity-transmitted-total-octet-frames-from1518-to-max { + type boolean; + description + "Validity of all > 1518 Octet Frame Count sent"; + } + leaf validity-transmitted-good-frames { + type boolean; + description + "Validity of number of well formed packets + transmitted"; + } + leaf validity-transmitted-unicast-frames { + type boolean; + description + "Validity of number of unicast packets + transmitted"; + } + leaf validity-transmitted-multicast-frames { + type boolean; + description + "Validity of number of multicast packets + transmitted"; + } + leaf validity-transmitted-broadcast-frames { + type boolean; + description + "Validity of number of broadcast packets + transmitted"; + } + leaf validity-buffer-underrun-packet-drops { + type boolean; + description + "Validity of output drops due to buffer underrun"; + } + leaf validity-aborted-packet-drops { + type boolean; + description + "Validity of output drops due to packet abort"; + } + leaf validity-uncounted-dropped-frames { + type boolean; + description + "Validity of any output drop not counted"; + } + leaf validity-miscellaneous-output-errors { + type boolean; + description + "Validity of any outputs error not counted"; + } + } + + grouping ETHER-CTRL-L2-STATS-ST-TS { + description + "ETHER CTRL L2 STATS ST TS"; + leaf start-timestamp-received-total-bytes { + type uint64; + units "millisecond"; + description + "Start Timestamp for Total octets of all frames + recieved (in msecs)"; + } + leaf start-timestamp-received-good-bytes { + type uint64; + units "millisecond"; + description + "Start Timestamp for Total octets of all good + frames recieved (in msecs)"; + } + leaf start-timestamp-received-total-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for All frames, good or bad + recieved (in msecs)"; + } + leaf start-timestamp-received8021q-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 802.1Q frames recieved + (in msecs)"; + } + leaf start-timestamp-received-pause-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for All pause frames recieved + (in msecs)"; + } + leaf start-timestamp-received-unknown-opcodes { + type uint64; + units "millisecond"; + description + "Start Timestamp for Unsupported MAC Control + frames recieved (in msecs)"; + } + leaf start-timestamp-received-total64-octet-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 64 Octet Frame Count + recieved (in msecs)"; + } + leaf start-timestamp-received-total-octet-frames-from65-to127 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 65-127 Octet Frame Count + recieved (in msecs)"; + } + leaf start-timestamp-received-total-octet-frames-from128-to255 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 128-255 Octet Frame + Count recieved (in msecs)"; + } + leaf start-timestamp-received-total-octet-frames-from256-to511 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 256-511 Octet Frame + Count recieved (in msecs)"; + } + leaf start-timestamp-received-total-octet-frames-from512-to1023 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 512-1023 Octet Frame + Count recieved (in msecs)"; + } + leaf start-timestamp-received-total-octet-frames-from1024-to1518 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 1024-1518 Octet Frame + Count recieved (in msecs)"; + } + leaf start-timestamp-received-total-octet-frames-from1519-to-max { + type uint64; + units "millisecond"; + description + "Start Timestamp for All > 1518 Octet Frame Count + recieved (in msecs)"; + } + leaf start-timestamp-received-good-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of well formed + packets recieved (in msecs)"; + } + leaf start-timestamp-received-unicast-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of unicast packets + recieved (in msecs)"; + } + leaf start-timestamp-received-multicast-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of multicast packets + recieved (in msecs)"; + } + leaf start-timestamp-received-broadcast-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of broadcast packets + recieved (in msecs)"; + } + leaf start-timestamp-number-of-buffer-overrun-packets-dropped { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Drops due to buffer + overrun (in msecs)"; + } + leaf start-timestamp-number-of-aborted-packets-dropped { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Drops due to packet + abort (in msecs)"; + } + leaf start-timestamp-numberof-invalid-vlan-id-packets-dropped { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Drops due to invalid + VLAN id (in msecs)"; + } + leaf start-timestamp-invalid-dest-mac-drop-packets { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Drops due to the + destination MAC not matching (in msecs)"; + } + leaf start-timestamp-invalid-encap-drop-packets { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Drops due to the + encapsulation or ether type not matching (in + msecs)"; + } + leaf start-timestamp-number-of-miscellaneous-packets-dropped { + type uint64; + units "millisecond"; + description + "Start Timestamp for Any other input drops not + counted (in msecs)"; + } + leaf start-timestamp-dropped-giant-packets-greaterthan-mru { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Good frames > MRU, + dropped (in msecs)"; + } + leaf start-timestamp-dropped-ether-stats-undersize-pkts { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Good frames < 64 Octet + , dropped (in msecs)"; + } + leaf start-timestamp-dropped-jabbers-packets-greaterthan-mru { + type uint64; + units "millisecond"; + description + "Start Timestamp for Bad input Frames > MRU, + dropped (in msecs)"; + } + leaf start-timestamp-dropped-ether-stats-fragments { + type uint64; + units "millisecond"; + description + "Start Timestamp for Bad input Frames < 64 Octet, + dropped (in msecs)"; + } + leaf start-timestamp-dropped-packets-with-crc-align-errors { + type uint64; + units "millisecond"; + description + "Start Timestamp for input Frames 64 - MRU with + CRC error (in msecs)"; + } + leaf start-timestamp-ether-stats-collisions { + type uint64; + units "millisecond"; + description + "Start Timestamp for all input collision events + (in msecs)"; + } + leaf start-timestamp-symbol-errors { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of input symbol + errors detected (in msecs)"; + } + leaf start-timestamp-dropped-miscellaneous-error-packets { + type uint64; + units "millisecond"; + description + "Start Timestamp for Any other input errors not + counted (in msecs)"; + } + leaf start-timestamp-rfc2819-ether-stats-oversized-pkts { + type uint64; + units "millisecond"; + description + "Start Timestamp for input RFC2819 + etherStatsOversizedPkts (in msecs)"; + } + leaf start-timestamp-rfc2819-ether-stats-jabbers { + type uint64; + units "millisecond"; + description + "Start Timestamp for input RFC2819 + etherStatsJabbers (in msecs)"; + } + leaf start-timestamp-rfc2819-ether-stats-crc-align-errors { + type uint64; + units "millisecond"; + description + "Start Timestamp for input RFC2819 + etherStatsCRCAlignErrors (in msecs)"; + } + leaf start-timestamp-rfc3635dot3-stats-alignment-errors { + type uint64; + units "millisecond"; + description + "Start Timestamp for input RFC3635 + dot3StatsAlignmentErrors (in msecs)"; + } + leaf start-timestamp-total-bytes-transmitted { + type uint64; + units "millisecond"; + description + "Start Timestamp for Total octets of all frames + sent (in msecs)"; + } + leaf start-timestamp-total-good-bytes-transmitted { + type uint64; + units "millisecond"; + description + "Start Timestamp for Total octets of all good + frames sent (in msecs)"; + } + leaf start-timestamp-total-frames-transmitted { + type uint64; + units "millisecond"; + description + "Start Timestamp for All frames, good or bad sent + (in msecs)"; + } + leaf start-timestamp-transmitted8021q-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 802.1Q frames sent (in + msecs)"; + } + leaf start-timestamp-transmitted-total-pause-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for All pause frames sent (in + msecs)"; + } + leaf start-timestamp-transmitted-total64-octet-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 64 Octet Frame Count + sent (in msecs)"; + } + leaf start-timestamp-transmitted-total-octet-frames-from65-to127 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 65-127 Octet Frame Count + sent (in msecs)"; + } + leaf start-timestamp-transmitted-total-octet-frames-from128-to255 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 128-255 Octet Frame + Count sent (in msecs)"; + } + leaf start-timestamp-transmitted-total-octet-frames-from256-to511 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 256-511 Octet Frame + Count sent (in msecs)"; + } + leaf start-timestamp-transmitted-total-octet-frames-from512-to1023 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 512-1023 Octet Frame + Count sent (in msecs)"; + } + leaf start-timestamp-transmitted-total-octet-frames-from1024-to1518 { + type uint64; + units "millisecond"; + description + "Start Timestamp for All 1024-1518 Octet Frame + Count sent (in msecs)"; + } + leaf start-timestamp-transmitted-total-octet-frames-from1518-to-max { + type uint64; + units "millisecond"; + description + "Start Timestamp for All > 1518 Octet Frame Count + sent (in msecs)"; + } + leaf start-timestamp-transmitted-good-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of well formed + packets transmitted (in msecs)"; + } + leaf start-timestamp-transmitted-unicast-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of unicast packets + transmitted (in msecs)"; + } + leaf start-timestamp-transmitted-multicast-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of multicast packets + transmitted (in msecs)"; + } + leaf start-timestamp-transmitted-broadcast-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for Number of broadcast packets + transmitted (in msecs)"; + } + leaf start-timestamp-buffer-underrun-packet-drops { + type uint64; + units "millisecond"; + description + "Start Timestamp for output drops due to buffer + underrun (in msecs)"; + } + leaf start-timestamp-aborted-packet-drops { + type uint64; + units "millisecond"; + description + "Start Timestamp for output drops due to packet + abort (in msecs)"; + } + leaf start-timestamp-uncounted-dropped-frames { + type uint64; + units "millisecond"; + description + "Start Timestamp for any output drop not counted + (in msecs)"; + } + leaf start-timestamp-miscellaneous-output-errors { + type uint64; + units "millisecond"; + description + "Start Timestamp for any outputs error not + counted (in msecs)"; + } + } + + grouping ETHERNET-L2-CONTROLLER-STATS { + description + "Layer 2 Controller Stats"; + container controller-stats-start-timestamp { + description + "Timestamp when layer 2 controller stats were + created,last cleared or overrun(most recent + event)"; + uses ETHER-CTRL-L2-STATS-ST-TS; + } + container controller-stats-validity { + description + "Validity information for controller stats per + counter for the port"; + uses ETHER-CTRL-L2-VALIDITY-ST; + } + leaf received-total-bytes { + type uint64; + description + "Total octets of all frames"; + } + leaf received-good-bytes { + type uint64; + description + "Total octets of all good frames"; + } + leaf received-total-frames { + type uint64; + description + "All frames, good or bad"; + } + leaf received8021q-frames { + type uint64; + description + "All 802.1Q frames"; + } + leaf received-pause-frames { + type uint64; + description + "All pause frames"; + } + leaf received-unknown-opcodes { + type uint64; + description + "Unsupported MAC Control frames"; + } + leaf received-total64-octet-frames { + type uint64; + description + "All 64 Octet Frame Count"; + } + leaf received-total-octet-frames-from65-to127 { + type uint64; + description + "All 65-127 Octet Frame Count"; + } + leaf received-total-octet-frames-from128-to255 { + type uint64; + description + "All 128-255 Octet Frame Count"; + } + leaf received-total-octet-frames-from256-to511 { + type uint64; + description + "All 256-511 Octet Frame Count"; + } + leaf received-total-octet-frames-from512-to1023 { + type uint64; + description + "All 512-1023 Octet Frame Count"; + } + leaf received-total-octet-frames-from1024-to1518 { + type uint64; + description + "All 1024-1518 Octet Frame Count"; + } + leaf received-total-octet-frames-from1519-to-max { + type uint64; + description + "All > 1518 Octet Frame Count"; + } + leaf received-good-frames { + type uint64; + description + "Number of well formed packets received"; + } + leaf received-unicast-frames { + type uint64; + description + "Number of unicast packets received "; + } + leaf received-multicast-frames { + type uint64; + description + "Number of multicast packets received"; + } + leaf received-broadcast-frames { + type uint64; + description + "Number of broadcast packets received"; + } + leaf number-of-buffer-overrun-packets-dropped { + type uint64; + description + "Drops due to buffer overrun"; + } + leaf number-of-aborted-packets-dropped { + type uint64; + description + "Drops due to packet abort"; + } + leaf numberof-invalid-vlan-id-packets-dropped { + type uint64; + description + "Drops due to invalid VLAN id"; + } + leaf invalid-dest-mac-drop-packets { + type uint64; + description + "Drops due to the destination MAC not matching"; + } + leaf invalid-encap-drop-packets { + type uint64; + description + "Drops due to the encapsulation or ether type not + matching"; + } + leaf number-of-miscellaneous-packets-dropped { + type uint64; + description + "Any other drops not counted"; + } + leaf dropped-giant-packets-greaterthan-mru { + type uint64; + description + "Good frames > MRU, dropped"; + } + leaf dropped-ether-stats-undersize-pkts { + type uint64; + description + "Good frames < 64 Octet, dropped"; + } + leaf dropped-jabbers-packets-greaterthan-mru { + type uint64; + description + "Bad Frames > MRU, dropped"; + } + leaf dropped-ether-stats-fragments { + type uint64; + description + "Bad Frames < 64 Octet, dropped"; + } + leaf dropped-packets-with-crc-align-errors { + type uint64; + description + "Frames 64 - MRU with CRC error"; + } + leaf ether-stats-collisions { + type uint64; + description + "All collision events"; + } + leaf symbol-errors { + type uint64; + description + "Number of symbol errors detected"; + } + leaf dropped-miscellaneous-error-packets { + type uint64; + description + "Any other errors not counted"; + } + leaf rfc2819-ether-stats-oversized-pkts { + type uint64; + description + "RFC2819 etherStatsOversizedPkts"; + } + leaf rfc2819-ether-stats-jabbers { + type uint64; + description + "RFC2819 etherStatsJabbers"; + } + leaf rfc2819-ether-stats-crc-align-errors { + type uint64; + description + "RFC2819 etherStatsCRCAlignErrors"; + } + leaf rfc3635dot3-stats-alignment-errors { + type uint64; + description + "RFC3635 dot3StatsAlignmentErrors"; + } + leaf total-bytes-transmitted { + type uint64; + description + "Total octets of all frames"; + } + leaf total-good-bytes-transmitted { + type uint64; + description + "Total octets of all good frames"; + } + leaf total-frames-transmitted { + type uint64; + description + "All frames, good or bad"; + } + leaf transmitted8021q-frames { + type uint64; + description + "All 802.1Q frames"; + } + leaf transmitted-total-pause-frames { + type uint64; + description + "All pause frames"; + } + leaf transmitted-total64-octet-frames { + type uint64; + description + "All 64 Octet Frame Count"; + } + leaf transmitted-total-octet-frames-from65-to127 { + type uint64; + description + "All 65-127 Octet Frame Count"; + } + leaf transmitted-total-octet-frames-from128-to255 { + type uint64; + description + "All 128-255 Octet Frame Count"; + } + leaf transmitted-total-octet-frames-from256-to511 { + type uint64; + description + "All 256-511 Octet Frame Count"; + } + leaf transmitted-total-octet-frames-from512-to1023 { + type uint64; + description + "All 512-1023 Octet Frame Count"; + } + leaf transmitted-total-octet-frames-from1024-to1518 { + type uint64; + description + "All 1024-1518 Octet Frame Count"; + } + leaf transmitted-total-octet-frames-from1518-to-max { + type uint64; + description + "All > 1518 Octet Frame Count"; + } + leaf transmitted-good-frames { + type uint64; + description + "Number of well formed packets transmitted"; + } + leaf transmitted-unicast-frames { + type uint64; + description + "Number of unicast packets transmitted"; + } + leaf transmitted-multicast-frames { + type uint64; + description + "Number of multicast packets transmitted"; + } + leaf transmitted-broadcast-frames { + type uint64; + description + "Number of broadcast packets transmitted"; + } + leaf buffer-underrun-packet-drops { + type uint64; + description + "Drops due to buffer underrun"; + } + leaf aborted-packet-drops { + type uint64; + description + "Drops due to packet abort"; + } + leaf uncounted-dropped-frames { + type uint64; + description + "Any other drops not counted"; + } + leaf miscellaneous-output-errors { + type uint64; + description + "Any other errors not counted"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper.yang new file mode 100644 index 000000000..aace3c99d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-media-eth-oper.yang @@ -0,0 +1,173 @@ +module Cisco-IOS-XR-drivers-media-eth-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-drivers-media-eth-oper"; + prefix drivers-media-eth-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-drivers-media-eth-oper-sub1 { + revision-date 2022-12-20; + } + + 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 drivers-media-eth package operational data. + + This module contains definitions + for the following management objects: + ethernet-interface: Ethernet operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-20 { + description + "Added new Ethernet media type definition + 2022-12-02 + Added new Ethernet media type definition for 400G Bright ZRP + 2022-09-10 + Added new Ethernet media type definition for 2x400G LR4 optics + 2022-08-26 + Added new Ethernet media type definition for 100GE ZR optics + 2022-06-08 + Added new Ethernet media type definition for 1G LH optics + 2022-05-10 + Added new Ethernet media type definition for Credo 800G AEC + 2022-04-25 + Added new Ethernet media type definition for 100GE ZR4S optics + 2022-04-22 + Start timestamp and validity support added for ethernet ports. + 2022-04-22 + Added new Ethernet media type definition for 8x100G FR + 2022-03-14 + Updated media type string + 2021-11-19 + Added new Ethernet media type definition for 24GE ER-I optics + 2021-11-04 + Enums added for new module 800G Passive Loopback + 2021-10-07 + Enums added for new module 2x400G FR4 and 8x100G DR. + 2021-09-30 + Added new Ethernet media type definition."; + semver:module-version "3.0.0"; + } + revision 2021-09-29 { + description + "Removed list rx_drop_data_frames_per_tc and added leaf total_rx_drop_data_frames. + 2021-08-24 + Support added for last data time for generic stats. + 2021-08-16 + Added new Ethernet media type definition. + 2021-07-19 + Removed leaf total_rx_drop_data_frames and added list rx_drop_data_frames_per_tc to maintain backward compatibility. + 2021-07-01 + Support added for hardware timestamp for generic stats."; + semver:module-version "2.1.0"; + } + revision 2021-02-12 { + description + "Added support for PFC per TC Rx drop Data Frames. + 2020-11-04 + Added support for SER alarms. + 2020-09-08 + Added new ethernet speed values."; + semver:module-version "2.0.0"; + } + revision 2020-02-19 { + description + "Description updated. + 2019-11-27 + Adding operational value for power m-factor. + 2019-08-15 + Adding PFC watchdog support."; + semver:module-version "1.2.0"; + } + revision 2019-05-21 { + description + "Added new leaf for frame preemption configuration."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-04-04 { + description + "Added new fields to phy data."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container ethernet-interface { + config false; + description + "Ethernet operational data"; + container statistics { + description + "Ethernet controller statistics table"; + list statistic { + key "interface-name"; + description + "Ethernet statistics information"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses ETHERNET-L2-CONTROLLER-STATS; + } + } + container interfaces { + description + "Ethernet controller info table"; + list interface { + key "interface-name"; + description + "Ethernet controller information"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses ETHERNET-CONTROLLER-DRIVER-BAG-V2-TYPE; + } + } + container berts { + description + "Ethernet controller BERT table"; + list bert { + key "interface-name"; + description + "Ethernet BERT information"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses ETH-SHOWCTRL-BERT; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-mpa-infra-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-mpa-infra-cfg.yang new file mode 100644 index 000000000..a8a2248e6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-drivers-mpa-infra-cfg.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-drivers-mpa-infra-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-drivers-mpa-infra-cfg"; + prefix drivers-mpa-infra-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 drivers-mpa-infra package configuration. + + This module contains definitions + for the following management objects: + hardware-module: Configure subslot h/w module + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hw-module-shutdown-power-mode { + type enumeration { + enum "powered" { + value 2; + description + "Keep the showdown module powered (default)"; + } + } + description + "Hw module shutdown power mode"; + } + + container hardware-module { + description + "Configure subslot h/w module"; + container nodes { + description + " subslot h/w module"; + list node { + key "node-name"; + description + "The identifier for a SPA node"; + leaf shutdown { + type Hw-module-shutdown-power-mode; + description + "Shutdown a subslot h/w module"; + } + leaf node-name { + type xr:Node-id; + description + "A SPA node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-cfg.yang new file mode 100644 index 000000000..2d8348a26 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-cfg.yang @@ -0,0 +1,1038 @@ +module Cisco-IOS-XR-dwdm-ui-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dwdm-ui-cfg"; + prefix dwdm-ui-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 dwdm-ui package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-02-04 { + description + "Enhanced FEC is not mandatory anymore."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-12-16 { + description + "Adding additional In Service Transport Admin State to allow configuration while dwdm controller is in service"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Prbs-pattern { + type enumeration { + enum "none" { + value 0; + description + "None Pattern"; + } + enum "null" { + value 1; + description + "Null Pattern"; + } + enum "pn11" { + value 2; + description + "PN11 Pattern"; + } + enum "pn23" { + value 3; + description + "PN23 Pattern"; + } + enum "pn31" { + value 4; + description + "PN31 Pattern"; + } + } + description + "Prbs pattern"; + } + + typedef Proactive { + type enumeration { + enum "default" { + value 1; + description + "Proactive Protection Default Mode"; + } + enum "graceful" { + value 2; + description + "Proactive Protection Graceful Mode"; + } + } + description + "Proactive"; + } + + typedef Expected-tti { + type enumeration { + enum "expected-tti-ascii" { + value 3; + description + "Expected TTI ascii string"; + } + enum "expected-tti-hex" { + value 4; + description + "Expected TTI hex string"; + } + } + description + "Expected tti"; + } + + typedef Fec { + type enumeration { + enum "none" { + value 0; + description + "No FEC"; + } + enum "standard" { + value 1; + description + "Standard FEC"; + } + enum "enhanced" { + value 2; + description + "Enhanced FEC"; + } + enum "high-gain-hd" { + value 3; + description + "High-Gain Hard Decision"; + } + enum "long-haul-hd" { + value 4; + description + "Long-Haul Hard Decision"; + } + enum "high-gain-sd" { + value 5; + description + "High-Gain Soft Decision"; + } + enum "long-haul-sd" { + value 6; + description + "Long-Haul Soft Decision"; + } + enum "ci-bch" { + value 7; + description + "Ci BCH"; + } + enum "high-gain-multivendor-hd" { + value 8; + description + "High-Gain Multivendor Interoperable Hard + Decision"; + } + enum "15sd-fec-de" { + value 9; + description + "15SDFecDe"; + } + enum "15sd-fec" { + value 10; + description + "15SDFec"; + } + } + description + "Fec"; + } + + typedef Framing { + type enumeration { + enum "opu1e" { + value 1; + description + "opu1e Framing"; + } + enum "opu2e" { + value 2; + description + "opu2e Framing"; + } + } + description + "Framing"; + } + + typedef Otu-threshold { + type enumeration { + enum "prefec-sd" { + value 0; + description + "PREFEC SD BER THRESHOLD"; + } + enum "prefec-sf" { + value 1; + description + "PREFEC SF BER THRESHOLD"; + } + enum "otu-sd" { + value 4; + description + "OTU SD BER threshold"; + } + enum "otu-sf" { + value 5; + description + "OTU SF BER threshold"; + } + } + description + "Otu threshold"; + } + + typedef Dwdm-loopback { + type enumeration { + enum "none" { + value 0; + description + "No Loopback"; + } + enum "line" { + value 1; + description + "Line Loopback"; + } + enum "internal" { + value 2; + description + "Internal Loopback"; + } + } + description + "Dwdm loopback"; + } + + typedef Efec { + type enumeration { + enum "none" { + value 0; + description + "default submode to handle backward + compatibility"; + } + enum "i.4" { + value 1; + description + "efec i.4"; + } + enum "i.7" { + value 2; + description + "efec i.7"; + } + } + description + "Efec"; + } + + typedef Odu-alarm { + type enumeration { + enum "oci" { + value 14; + description + "ODU OCI"; + } + enum "odu-ais" { + value 15; + description + "ODU AIS"; + } + enum "lck" { + value 16; + description + "ODU LCK"; + } + enum "odu-bdi" { + value 17; + description + "ODU BDI"; + } + enum "odu-sf" { + value 20; + description + "ODU SF BER"; + } + enum "odu-sd" { + value 21; + description + "ODU SD BER"; + } + enum "plm" { + value 22; + description + "ODU PTIM"; + } + enum "odu-tim" { + value 23; + description + "ODU TIM"; + } + } + description + "Odu alarm"; + } + + typedef Prbs-mode { + type enumeration { + enum "source" { + value 0; + description + "Source Mode"; + } + enum "sink" { + value 1; + description + "Sink Mode"; + } + enum "source-sink" { + value 2; + description + "Source-Sink Mode"; + } + enum "invalid" { + value 3; + description + "Invalid Mode"; + } + } + description + "Prbs mode"; + } + + typedef Tx-tti { + type enumeration { + enum "tx-tti-ascii" { + value 0; + description + "TX TTI ascii string"; + } + enum "tx-tti-hex" { + value 1; + description + "TX TTI hex string"; + } + } + description + "Tx tti"; + } + + typedef Otu-alarm { + type enumeration { + enum "los" { + value 0; + description + "LOS"; + } + enum "lof" { + value 1; + description + "LOF"; + } + enum "lom" { + value 2; + description + "LOM"; + } + enum "iae" { + value 6; + description + "OTU IAE"; + } + enum "otu-bdi" { + value 7; + description + "OTU BDI"; + } + enum "otu-tim" { + value 8; + description + "OTU TIM"; + } + enum "otu-sf" { + value 10; + description + "OTU SF BER"; + } + enum "otu-sd" { + value 11; + description + "OTU SD BER"; + } + enum "fec-mismatch" { + value 24; + description + "FEC mismatch"; + } + enum "prefec-sd-ber" { + value 31; + description + "PREFEC SD BER"; + } + enum "prefec-sf-ber" { + value 32; + description + "PREFEC SF BER"; + } + } + description + "Otu alarm"; + } + + typedef Dwdm-admin-state { + type enumeration { + enum "out-of-service" { + value 0; + description + "Out of service"; + } + enum "in-service" { + value 1; + description + "In service"; + } + enum "maintenance" { + value 2; + description + "Out of service maintenance"; + } + enum "in-service-config-allowed" { + value 3; + description + "In service Config allowed"; + } + } + description + "Dwdm admin state"; + } + + typedef Odu-threshold { + type enumeration { + enum "odu-sd" { + value 8; + description + "ODU SD BER threshold"; + } + enum "odu-sf" { + value 9; + description + "ODU SF BER threshold"; + } + } + description + "Odu threshold"; + } + + typedef Wave-channel-num { + type enumeration { + enum "default" { + value 0; + description + "Default Wave Channel Number"; + } + enum "channel-wavelength" { + value 1; + description + "Wavelength Wave Channel Number"; + } + enum "channel-frequency" { + value 2; + description + "Frequency Wave Channel Number"; + } + enum "100mhz-frequency" { + value 4; + description + "Frequency in Steps of 100MHz"; + } + } + description + "Wave channel num"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf maintenance-embargo { + type boolean; + description + "configure maintenance embargo flag on the given + interface"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container dwdm { + description + "DWDM port controller configuration"; + container network-srlgs { + description + "Configure Network srlgs"; + list network-srlg { + key "set-id"; + description + "Configure network srlg sets"; + leaf set-id { + type uint32 { + range "1..17"; + } + description + "Set index"; + } + leaf srlg1 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg2 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg3 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg4 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg5 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + leaf srlg6 { + type uint32 { + range "0..4294967294"; + } + description + "none"; + } + } + } + container g709 { + description + "Configure G709 parameters"; + container odu { + description + "Configure ODU parameters"; + container odu-reports { + description + "Configure ODU alarm reporting"; + list odu-report { + key "alarm"; + description + "none"; + leaf alarm { + type Odu-alarm; + description + "ODU alarm type"; + } + } + } + container odu-thresholds { + description + "Configure ODU threshold value"; + list odu-threshold { + key "threshold"; + description + "none"; + leaf threshold { + type Odu-threshold; + description + "ODU Threshold type"; + } + leaf threshold-value { + type uint32 { + range "1..9"; + } + mandatory true; + description + "Bit error rate (10 to the minus n)"; + } + } + } + container odu-expected-tti { + description + "Configure ODU Expected TTI value"; + leaf string-type { + type Expected-tti; + description + "TTI string type (ascii or hex format)"; + } + leaf ascii-string { + when "../string-type = 'expected-tti-ascii'" { + description + "../StringType = EXPECTED_TTI_ASCII"; + } + type string { + length "1..64"; + } + description + "ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'expected-tti-hex'" { + description + "../StringType = EXPECTED_TTI_HEX"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128- The string length + should be an even number)"; + } + } + container odu-tx-tti { + description + "Configure ODU TTI value"; + leaf string-type { + type Tx-tti; + description + "TTI string type (ascii or hex format)"; + } + leaf ascii-string { + when "../string-type = 'tx-tti-ascii'" { + description + "../StringType = TX_TTI_ASCII"; + } + type string { + length "1..64"; + } + description + "ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'tx-tti-hex'" { + description + "../StringType = TX_TTI_HEX"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128- The string length + should be an even number)"; + } + } + } + container otu { + description + "Configure OTU parameters"; + container otu-expected-tti { + description + "Configure OTU Expected TTI value"; + leaf string-type { + type Expected-tti; + description + "TTI string type (ascii or hex format)"; + } + leaf ascii-string { + when "../string-type = 'expected-tti-ascii'" { + description + "../StringType = EXPECTED_TTI_ASCII"; + } + type string { + length "1..64"; + } + description + "ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'expected-tti-hex'" { + description + "../StringType = EXPECTED_TTI_HEX"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128- The string length + should be an even number)"; + } + } + container otu-thresholds { + description + "Configure OTU threshold value"; + list otu-threshold { + key "threshold"; + description + "none"; + leaf threshold { + type Otu-threshold; + description + "OTU Threshold type"; + } + leaf threshold-value { + type uint32 { + range "1..9"; + } + mandatory true; + description + "Bit error rate (10 to the minus n)"; + } + } + } + container frr { + description + "Configure FRR thresholds and Window for + trigger and revert"; + container trigger-window { + presence "Indicates a trigger-window node is configured."; + description + "Configure FRR trigger window"; + leaf window { + type uint32 { + range "10..10000"; + } + mandatory true; + description + "Integration window for FRR trigger in MS"; + } + leaf dummy { + type uint32 { + range "0..2"; + } + description + "Just a Dummy for window for FRR revert in + MS"; + } + } + container revert-threshold { + presence "Indicates a revert-threshold node is configured."; + description + "Configure proactive protection revert + threshold"; + leaf ber-base { + type uint32 { + range "1..9"; + } + mandatory true; + description + "Bit error rate base (x of xE-y)"; + } + leaf ber-power { + type uint32 { + range "3..10"; + } + mandatory true; + description + "Bit error rate power (y of xE-y)"; + } + } + container trigger-threshold { + presence "Indicates a trigger-threshold node is configured."; + description + "Configure proactive protection trigger + threshold"; + leaf ber-base { + type uint32 { + range "1..9"; + } + mandatory true; + description + "Bit error rate base (x of xE-y)"; + } + leaf ber-power { + type uint32 { + range "2..9"; + } + mandatory true; + description + "Bit error rate power (y of xE-y)"; + } + } + container revert-window { + presence "Indicates a revert-window node is configured."; + description + "Configure FRR revert window"; + leaf window { + type uint32 { + range "500..100000"; + } + mandatory true; + description + "Integration window for FRR revert in MS"; + } + leaf dummy { + type uint32 { + range "0..2"; + } + description + "Just a Dummy for window for FRR revert in + MS"; + } + } + } + container otu-reports { + description + "Configure OTU alarm reporting"; + list otu-report { + key "alarm"; + description + "none"; + leaf alarm { + type Otu-alarm; + description + "OTU alarm type"; + } + } + } + container otu-tx-tti { + description + "Configure OTU TTI value"; + leaf string-type { + type Tx-tti; + description + "TTI string type (ascii or hex format)"; + } + leaf ascii-string { + when "../string-type = 'tx-tti-ascii'" { + description + "../StringType = TX_TTI_ASCII"; + } + type string { + length "1..64"; + } + description + "ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'tx-tti-hex'" { + description + "../StringType = TX_TTI_HEX"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (Max 128- The string length + should be an even number)"; + } + } + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure PRBS mode and pattern"; + leaf prbs-mode { + type Prbs-mode; + mandatory true; + description + "Enable PRBS with mode"; + } + leaf prbs-pattern { + type Prbs-pattern; + mandatory true; + description + "Enable prbs test with pattern"; + } + } + container fec { + presence "Indicates a fec node is configured."; + description + "Configure FEC mode"; + leaf fec-mode { + type Fec; + mandatory true; + description + "None, Standard, Enhanced, High-Gain, + Long-Haul, Ci-BCH, 15SDFecDe, 15SDFec"; + } + leaf efec-mode { + type Efec; + default "none"; + description + "Enhanced FECMode to use i.4, i.7, Other + FECMode to use None"; + } + } + leaf proactive { + type Proactive; + description + "Enable proactive protectioni Graceful or + Default mode"; + } + leaf bdi-to-gais { + type empty; + description + "Enable GAIS insertion"; + } + leaf tim-to-gais { + type empty; + description + "Configure Trace Identifier Mismatch alarm + consequence"; + } + leaf proactive-logging-file { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Configure proactive protection log file"; + } + leaf tti-processing { + type empty; + description + "Configure Trail Trace Identifier processing"; + } + leaf enable { + type boolean; + description + "Disable or Enable g709 framing"; + } + leaf framing { + type Framing; + description + "Over clocking mode for client signal bw + compatibility"; + } + } + container wavelength { + presence "Indicates a wavelength node is configured."; + description + "Configure transponder wavelength"; + leaf wave-channel { + type uint32 { + range "1..1568362"; + } + mandatory true; + description + "Select a ITU channel number,channel range for + C-band: 1~82,L-band:106~185,spacing:50GHZ or + 100MHz"; + } + leaf wave-channel-number { + type Wave-channel-num; + mandatory true; + description + "Wave Channel Number"; + } + leaf prog-frequency { + type string { + length "1..128"; + } + description + "Enter Frequency Data in THz"; + } + } + leaf enable-vtxp { + type boolean; + description + "Disable or Enable VTXP configuration"; + } + leaf network-port-id { + type string { + length "1..64"; + } + description + "Configure network port id"; + } + leaf transport-admin-state { + type Dwdm-admin-state; + default "out-of-service"; + description + "Configure transport admin state"; + } + leaf laser { + type empty; + description + "Configure laser off/on"; + } + leaf transmit-power { + type int32 { + range "-190..10"; + } + description + "Select power level (in units of 0.1dBm)"; + } + leaf rx-threshold { + type int32 { + range "-350..50"; + } + description + "Select power level (in units of 0.1dBm)"; + } + leaf network-connection-id { + type string { + length "1..64"; + } + description + "Configure network connection id"; + } + leaf loopback { + type Dwdm-loopback; + default "none"; + description + "Configure loopback mode "; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper-sub1.yang new file mode 100644 index 000000000..73de01a00 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper-sub1.yang @@ -0,0 +1,1781 @@ +submodule Cisco-IOS-XR-dwdm-ui-oper-sub1 { + belongs-to Cisco-IOS-XR-dwdm-ui-oper { + prefix Cisco-IOS-XR-dwdm-ui-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR dwdm-ui package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef G709aps-byte { + type enumeration { + enum "pp-no-protect" { + value 0; + description + "No Protection"; + } + enum "pp-no-request" { + value 15; + description + "No Request"; + } + enum "pp-regen-degrade" { + value 63; + description + "Regenerator Degrade"; + } + enum "pp-sig-degrade" { + value 175; + description + "Signal Degrade"; + } + enum "pp-remote-main" { + value 239; + description + "Maintenance Request"; + } + enum "pp-aps-unknown" { + value 255; + description + "Unknown"; + } + } + description + "G709aps byte"; + } + + typedef G709ppintf-state { + type enumeration { + enum "pp-intf-up" { + value 0; + description + "Interface is Up"; + } + enum "pp-intf-failing" { + value 1; + description + "Interface is Going Down"; + } + enum "pp-intf-down" { + value 2; + description + "Interface Down"; + } + } + description + "G709ppintf state"; + } + + typedef G709ppfsm-state { + type enumeration { + enum "in-active" { + value 0; + description + "In Active"; + } + enum "disabled" { + value 1; + description + "Disabled"; + } + enum "normal-state" { + value 2; + description + "Normal"; + } + enum "local-failing" { + value 3; + description + "Local Failing"; + } + enum "remote-failing" { + value 4; + description + "Remote Failing"; + } + enum "main-t-failing" { + value 5; + description + "Maintance Failing"; + } + enum "regen-failing" { + value 6; + description + "Regenerator Failing"; + } + enum "local-failed" { + value 7; + description + "Local Failed"; + } + enum "remote-failed" { + value 8; + description + "Remote Failed"; + } + enum "main-t-failed" { + value 9; + description + "Maintance Failed"; + } + enum "regen-failed" { + value 10; + description + "Regenerator Failed"; + } + } + description + "G709ppfsm state"; + } + + typedef G709ppfsm-mode { + type enumeration { + enum "pp-disable" { + value 0; + description + "OFF"; + } + enum "pp-default-mode" { + value 1; + description + "ON (Default Mode)"; + } + enum "pp-graceful-mode" { + value 2; + description + "ON (Graceful Mode)"; + } + } + description + "G709ppfsm mode"; + } + + typedef Dwdm-wave-channel-owner { + type enumeration { + enum "default" { + value 0; + description + "Hardware Default"; + } + enum "configuration" { + value 1; + description + "Configuration"; + } + enum "gmpls" { + value 2; + description + "GMPLS Signaled"; + } + } + description + "Dwdm wave channel owner"; + } + + typedef G709efec-mode { + type enumeration { + enum "g975-none" { + value 0; + description + ""; + } + enum "g975-1-i4" { + value 1; + description + "G975.1 I.4"; + } + enum "g975-1-i7" { + value 2; + description + "G975.1 I.7"; + } + } + description + "G709efec mode"; + } + + typedef Dwdmtas-state { + type enumeration { + enum "tas-oos" { + value 0; + description + "Out of Service"; + } + enum "tas-is" { + value 1; + description + "In Service"; + } + enum "tas-oos-mt" { + value 2; + description + "Out of Service Maintenance"; + } + enum "tas-is-cfg" { + value 3; + description + "In Service Config allowed"; + } + } + description + "Dwdmtas state"; + } + + typedef Dwdm-controller-state { + type enumeration { + enum "dwdm-ui-state-up" { + value 0; + description + "Up"; + } + enum "dwdm-ui-state-down" { + value 1; + description + "Down"; + } + enum "dwdm-ui-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Dwdm controller state"; + } + + typedef G709prbs-mode { + type enumeration { + enum "mode-source" { + value 0; + description + "mode source"; + } + enum "mode-sink" { + value 1; + description + "mode sink"; + } + enum "mode-source-sink" { + value 2; + description + "mode source sink"; + } + enum "mode-invalid" { + value 3; + description + "mode invalid"; + } + } + description + "G709prbs mode"; + } + + typedef G709prbs-pattern { + type enumeration { + enum "pattern-none" { + value 0; + description + "pattern none"; + } + enum "pattern-null" { + value 1; + description + "pattern null"; + } + enum "pattern-pn11" { + value 2; + description + "pattern pn11"; + } + enum "pattern-pn23" { + value 3; + description + "pattern pn23"; + } + enum "pattern-pn31" { + value 4; + description + "pattern pn31"; + } + } + description + "G709prbs pattern"; + } + + typedef G709prbs-interval { + type enumeration { + enum "current-interval" { + value 0; + description + "Current interval"; + } + enum "previous-interval" { + value 1; + description + "Previous interval"; + } + enum "previous-interval2" { + value 2; + description + "Previous interval 2"; + } + enum "previous-interval3" { + value 3; + description + "Previous interval 3"; + } + enum "previous-interval4" { + value 4; + description + "Previous interval 4"; + } + enum "previous-interval5" { + value 5; + description + "Previous interval 5"; + } + enum "previous-interval6" { + value 6; + description + "Previous interval 6"; + } + enum "previous-interval7" { + value 7; + description + "Previous interval 7"; + } + enum "previous-interval8" { + value 8; + description + "Previous interval 8"; + } + enum "previous-interval9" { + value 9; + description + "Previous interval 9"; + } + enum "previous-interval10" { + value 10; + description + "Previous interval 10"; + } + enum "previous-interval11" { + value 11; + description + "Previous interval 11"; + } + enum "previous-interval12" { + value 12; + description + "Previous interval 12"; + } + enum "previous-interval13" { + value 13; + description + "Previous interval 13"; + } + enum "previous-interval14" { + value 14; + description + "Previous interval 14"; + } + enum "previous-interval15" { + value 15; + description + "Previous interval 15"; + } + enum "previous-interval16" { + value 16; + description + "Previous interval 16"; + } + enum "previous-interval17" { + value 17; + description + "Previous interval 17"; + } + enum "previous-interval18" { + value 18; + description + "Previous interval 18"; + } + enum "previous-interval19" { + value 19; + description + "Previous interval 19"; + } + enum "previous-interval20" { + value 20; + description + "Previous interval 20"; + } + enum "previous-interval21" { + value 21; + description + "Previous interval 21"; + } + enum "previous-interval22" { + value 22; + description + "Previous interval 22"; + } + enum "previous-interval23" { + value 23; + description + "Previous interval 23"; + } + enum "previous-interval24" { + value 24; + description + "Previous interval 24"; + } + enum "previous-interval25" { + value 25; + description + "Previous interval 25"; + } + enum "previous-interval26" { + value 26; + description + "Previous interval 26"; + } + enum "previous-interval27" { + value 27; + description + "Previous interval 27"; + } + enum "previous-interval28" { + value 28; + description + "Previous interval 28"; + } + enum "previous-interval29" { + value 29; + description + "Previous interval 29"; + } + enum "previous-interval30" { + value 30; + description + "Previous interval 30"; + } + enum "previous-interval31" { + value 31; + description + "Previous interval 31"; + } + enum "previous-interval32" { + value 32; + description + "Previous interval 32"; + } + } + description + "PRBS test interval information"; + } + + grouping DWDM-EDM-VTXP-INFO { + description + "VTXP Information"; + leaf vtxp-enable { + type boolean; + description + "Is VTXP attribute enabled"; + } + } + + grouping DWDM-EDM-SIGNAL-LOG-INFO { + description + "Signal log information"; + leaf is-log-enabled { + type boolean; + description + "'true' if signal log is enabled 'false' + otherwise"; + } + leaf log-filename { + type string { + length "0..64"; + } + description + "Log file name "; + } + } + + grouping DWDM-EDM-PROACTIVE-INFO { + description + "Proactive Information"; + leaf proactive-feature { + type boolean; + description + "Feature Support"; + } + leaf proactive-mode { + type G709ppfsm-mode; + description + "Proactive Mode"; + } + leaf proactive-fsm-state { + type G709ppfsm-state; + description + "Proactive FSM State"; + } + leaf proactive-fsm-if-state { + type G709ppintf-state; + description + "Proactive FSM IF State"; + } + leaf tas-state { + type Dwdmtas-state; + description + "TAS State"; + } + leaf trig-thresh-coeff { + type uint8; + description + "Trigger threshold coefficient"; + } + leaf trig-thresh-power { + type uint8; + description + "Trigger threshold power"; + } + leaf rvrt-thresh-coeff { + type uint8; + description + "Revert threshold coefficient"; + } + leaf rvrt-thresh-power { + type uint8; + description + "Revert threshold power"; + } + leaf default-trig-thresh-coeff { + type uint8; + description + "Default Trigger threshold coefficient"; + } + leaf default-trig-thresh-power { + type uint8; + description + "Default Trigger threshold power"; + } + leaf default-rvrt-thresh-coeff { + type uint8; + description + "Default Revert threshold coefficient"; + } + leaf default-rvrt-thresh-power { + type uint8; + description + "Default Revert threshold power"; + } + leaf trig-samples { + type uint8; + description + "Required Trigger Samples"; + } + leaf rvrt-samples { + type uint8; + description + "Required Revert Samples"; + } + leaf trigger-window { + type uint32; + description + "Trigger Integration window"; + } + leaf revert-window { + type uint32; + description + "Revert Integration Window"; + } + leaf protection-trigger { + type boolean; + description + "Protection Trigger State"; + } + leaf interface-trigger { + type boolean; + description + "Proactive Interface Triffer"; + } + leaf tx-aps { + type uint8; + description + "Transmitted APS Byte"; + } + leaf tx-aps-descr { + type G709aps-byte; + description + "Tx APS Description"; + } + leaf rx-aps { + type uint8; + description + "Received APS byte"; + } + leaf rx-aps-descr { + type G709aps-byte; + description + "Rx APS Description"; + } + leaf alarm-state { + type boolean; + description + "AlarmState"; + } + leaf trig-ec-cnt { + type uint32; + description + "Trigger EC Cnt"; + } + leaf rvrt-ec-cnt { + type uint32; + description + "Revert EC Cnt"; + } + leaf prefec-thresh-crossed { + type boolean; + description + "Prefec Trigger Thresh Crossed"; + } + } + + grouping DWDM-EDM-NETWORK-SRLG-INFO { + description + "Network SRLG Information"; + list network-srlg { + max-elements "102"; + description + "Network Srlg"; + leaf entry { + type uint32; + description + "Network Srlg"; + } + } + } + + grouping DWDM-EDM-TDC-INFO { + description + "TDC information"; + leaf tdc-valid { + type boolean; + description + "TRUE for Valid else Invalid"; + } + leaf major-alarm { + type boolean; + description + "TRUE for Alarm condition else FALSE"; + } + leaf operation-mode { + type boolean; + description + "TRUE for MANUAL else AUTO"; + } + leaf tdc-status { + type boolean; + description + "TRUE if TDC Aquiring else Locked"; + } + leaf dispersion-offset { + type int32; + description + "TDC Dispersion Offset"; + } + leaf reroute-ber { + type int32; + description + "Reroute BER"; + } + leaf is-reroute-control-enabled { + type boolean; + description + "TRUE for ENABLED else DISABLED"; + } + } + + grouping DWDM-EDM-OPTICS-INFO { + description + "optics transponder information"; + leaf optics-type { + type string { + length "0..64"; + } + description + "Optics type name"; + } + leaf clock-source { + type uint8; + description + "Actual transmit clock source"; + } + leaf wave-frequency-progressive-string { + type string { + length "0..64"; + } + description + "Wave Frequency Information for Progressive + Frequencies"; + } + leaf wavelength-progressive-string { + type string { + length "0..64"; + } + description + "Wavelength Information for Progressive + Frequencies"; + } + leaf is-wave-frequency-progressive-valid { + type boolean; + description + "True if Progressive Frequency is supported by hw"; + } + leaf wavelength-progressive { + type uint32; + description + "Wavelength Information for Progressive + Frequencies"; + } + leaf wave-band { + type uint32; + description + "Wavelength band information"; + } + leaf wave-channel { + type uint32; + description + "Current ITU wavelength channel number"; + } + leaf wave-frequency { + type uint32; + description + " wavelenght frequency read from hw in the uint 0 + .01nm"; + } + leaf is-wave-frequency-valid { + type boolean; + description + "True if hw supported wavelength frequency + readback"; + } + leaf wave-channel-owner { + type Dwdm-wave-channel-owner; + description + "Owner of current wavelength"; + } + leaf gmpls-set-wave-channel { + type uint16; + description + "Wavelength channel set by GMPLS"; + } + leaf configured-wave-channel { + type uint16; + description + "Wavelength channel set from configuration"; + } + leaf default-wave-channel { + type uint16; + description + "Wavelength channel default from hardware"; + } + leaf transmit-power { + type int32; + description + "Transmit power in the unit of 0.01dbm"; + } + leaf transmit-power-threshold { + type int32; + description + "Transmit power threshold value"; + } + leaf laser-current-bias { + type int32; + description + "Laser current bias value"; + } + leaf laser-current-bias-threshold { + type int32; + description + " Laser Current Bias threshold value"; + } + leaf receive-power { + type int32; + description + "Transponder receive power"; + } + leaf is-rx-los-threshold-supported { + type boolean; + description + "TRUE if Rx LOS thresold configurable"; + } + leaf rx-los-threshold { + type int32; + description + "Rx LOS threshold value"; + } + leaf transmit-power-min { + type int32; + description + "Transmit power mininum value in the interval + time"; + } + leaf transmit-power-max { + type int32; + description + "Transmit power maximum value in the interval + time"; + } + leaf transmit-power-avg { + type int32; + description + "Transmit optical average value in the interval + time"; + } + leaf receive-power-min { + type int32; + description + "Recieve power mininum value in the interval time"; + } + leaf receive-power-max { + type int32; + description + "Receive power maximum value in the interval time"; + } + leaf receive-power-avg { + type int32; + description + "Recieve power average value in the interval time"; + } + leaf laser-bias-current-min { + type int32; + description + "Laser bias current minimum value in the interval + time"; + } + leaf laser-bias-current-max { + type int32; + description + "Laser bias current maxinum value in the interval + time"; + } + leaf laser-bias-current-avg { + type int32; + description + "Laser bias current average value in the interval + time"; + } + leaf chromatic-dispersion { + type int32; + description + "Current chromatic dispersion"; + } + leaf differential-group-delay { + type int32; + description + "Current differential group Delay"; + } + leaf polarization-mode-dispersion { + type int32; + description + "Current polarization mode dispersion"; + } + leaf signal-to-noise-ratio { + type int32; + description + "Current optical signal to noise ratio"; + } + leaf polarization-dependent-loss { + type int32; + description + "Current Polarization Dependent loss"; + } + leaf polarization-change-rate { + type uint32; + description + "Current Polarization change rate"; + } + leaf phase-noise { + type uint32; + description + "Current Phase Noise"; + } + leaf output-power-fail { + type uint32; + description + "Transmit power failure(above/belowe a threshold) + count"; + } + leaf input-power-fail { + type uint32; + description + "Receive power failure(above/belowe a threshold) + count"; + } + } + + grouping DWDM-EDM-G709-ODU { + description + "dwdm odu information"; + container oci { + description + "Open Connection Indiction information"; + uses DWDM-EDM-G709-ALARM; + } + container ais { + description + "Alarm Indication Signal information"; + uses DWDM-EDM-G709-ALARM; + } + container lck { + description + "Upstream Connection Locked information"; + uses DWDM-EDM-G709-ALARM; + } + container bdi { + description + "Backward Defect Indication information"; + uses DWDM-EDM-G709-ALARM; + } + container eoc { + description + "GCC End of Channel information"; + uses DWDM-EDM-G709-ALARM; + } + container ptim { + description + "Payload Type Identifier Mismatch information"; + uses DWDM-EDM-G709-ALARM; + } + container tim { + description + "Trace Identifier Mismatch information"; + uses DWDM-EDM-G709-ALARM; + } + container sf-ber { + description + "Signal Fail BER information"; + uses DWDM-EDM-G709-ALERT; + } + container sd-ber { + description + "Signal Degrade BER information"; + uses DWDM-EDM-G709-ALERT; + } + container bbe-tca { + description + "Background Block Error TCA information"; + uses DWDM-EDM-G709-ALERT; + } + container es-tca { + description + "Errored Seconds TCA information"; + uses DWDM-EDM-G709-ALERT; + } + container bbe { + description + "Background Block Error information"; + uses DWDM-EDM-G709-PM; + } + container es { + description + "Errored Seconds information"; + uses DWDM-EDM-G709-PM; + } + container ses { + description + "Severly Errored Seconds information"; + uses DWDM-EDM-G709-PM; + } + container uas { + description + "Unavailability Seconds information"; + uses DWDM-EDM-G709-PM; + } + container fc { + description + "Failure count information"; + uses DWDM-EDM-G709-PM; + } + container bber { + description + "Background Block Error Rate count information"; + uses DWDM-EDM-G709-PM; + } + container esr { + description + "Errored Seconds Rate information"; + uses DWDM-EDM-G709-PM; + } + container sesr { + description + "Severly Errored Seconds Rate information"; + uses DWDM-EDM-G709-PM; + } + container tti { + description + "Trail Trace Identifier information"; + uses DWDM-EDM-G709-TTI; + } + leaf bip { + type uint64; + description + "Bit Interleave Parity(BIP) counter"; + } + leaf bei { + type uint64; + description + "Backward Error Indication counter"; + } + } + + grouping DWDM-EDM-G709-TTI { + description + "G709 TTI information"; + leaf tx-string-type { + type uint32; + description + "Type of String"; + } + leaf expected-string-type { + type uint32; + description + "Type of String"; + } + leaf rx-string-type { + type uint32; + description + "Type of String"; + } + leaf tx-tti { + type string { + length "0..129"; + } + description + "Tx TTI String "; + } + leaf tx-sapi0 { + type string { + length "0..5"; + } + description + "Tx SAPI[0] Field"; + } + leaf tx-sapi { + type string { + length "0..16"; + } + description + "Tx SAPI[1-15] Field"; + } + leaf tx-sapi-range { + type string { + length "0..6"; + } + description + " Tx SAPI Range String"; + } + leaf tx-dapi0 { + type string { + length "0..5"; + } + description + "Tx DAPI[0] Field"; + } + leaf tx-dapi { + type string { + length "0..16"; + } + description + "Tx DAPI[1-15] Field"; + } + leaf tx-dapi-range { + type string { + length "0..6"; + } + description + " Tx DAPI Range String"; + } + leaf tx-oper-spec { + type string { + length "0..33"; + } + description + "Tx Operator Specific Field"; + } + leaf tx-oper-spec-range { + type string { + length "0..6"; + } + description + " Tx Operator Specific Field Range String"; + } + leaf rx-tti { + type string { + length "0..129"; + } + description + "Rx TTI String "; + } + leaf rx-sapi0 { + type string { + length "0..5"; + } + description + "Rx SAPI[0] Field"; + } + leaf rx-sapi { + type string { + length "0..16"; + } + description + "Rx SAPI[1-15] Field"; + } + leaf rx-sapi-range { + type string { + length "0..6"; + } + description + " Rx SAPI Range String"; + } + leaf rx-dapi0 { + type string { + length "0..5"; + } + description + "Rx DAPI[0] Field"; + } + leaf rx-dapi { + type string { + length "0..16"; + } + description + "Rx DAPI[1-15] Field"; + } + leaf rx-dapi-range { + type string { + length "0..6"; + } + description + " Rx DAPI Range String"; + } + leaf rx-oper-spec-range { + type string { + length "0..6"; + } + description + " Rx Operator Specific Field Range String"; + } + leaf rx-oper-spec { + type string { + length "0..33"; + } + description + "Rx Operator Specific Field"; + } + leaf expected-tti { + type string { + length "0..129"; + } + description + "Expected TTI String"; + } + leaf expected-sapi0 { + type string { + length "0..5"; + } + description + "Expected SAPI[0] Field"; + } + leaf expected-sapi { + type string { + length "0..16"; + } + description + "Expected SAPI[1-15] Field"; + } + leaf exp-sapi-range { + type string { + length "0..6"; + } + description + " Expected SAPI Range String"; + } + leaf expected-dapi0 { + type string { + length "0..5"; + } + description + "Expected DAPI[0] Field"; + } + leaf expected-dapi { + type string { + length "0..16"; + } + description + "Expected DAPI[1-15] Field"; + } + leaf exp-dapi-range { + type string { + length "0..6"; + } + description + " Expected DAPI Range String"; + } + leaf expected-oper-spec { + type string { + length "0..33"; + } + description + "Expected Operator Specific Field"; + } + leaf exp-oper-spec-range { + type string { + length "0..6"; + } + description + " Expected Operator Specific Field Range String"; + } + } + + grouping DWDM-EDM-G709-PM { + description + "G709 PM information"; + leaf counter { + type uint64; + description + "Performance Monitoring counter"; + } + } + + grouping DWDM-EDM-G709-OTU { + description + "DWDM OTU information"; + container los { + description + "Loss of Signal information"; + uses DWDM-EDM-G709-ALARM; + } + container lof { + description + "Loss of Frame information"; + uses DWDM-EDM-G709-ALARM; + } + container lom { + description + "Loss of MultiFrame information"; + uses DWDM-EDM-G709-ALARM; + } + container oof { + description + "Out of Frame information"; + uses DWDM-EDM-G709-ALARM; + } + container oom { + description + "Out of MultiFrame information"; + uses DWDM-EDM-G709-ALARM; + } + container ais { + description + "Alarm Indication Signal information"; + uses DWDM-EDM-G709-ALARM; + } + container iae { + description + "Incoming Alignment Error information"; + uses DWDM-EDM-G709-ALARM; + } + container bdi { + description + "Backward Defect Indication information"; + uses DWDM-EDM-G709-ALARM; + } + container tim { + description + "Trace Identifier Mismatch information"; + uses DWDM-EDM-G709-ALARM; + } + container eoc { + description + "GCC End of Channel information"; + uses DWDM-EDM-G709-ALARM; + } + container sf-ber { + description + "Signal Fail BER information"; + uses DWDM-EDM-G709-ALERT; + } + container sd-ber { + description + "Signal Degrade BER information"; + uses DWDM-EDM-G709-ALERT; + } + container prefec-sf-ber { + description + "Prefec Signal Fail BER information"; + uses DWDM-EDM-G709-ALERT; + } + container prefec-sd-ber { + description + "Prefec Signal Degrade BER information"; + uses DWDM-EDM-G709-ALERT; + } + container bbe-tca { + description + " Backgound Block Error TCA information"; + uses DWDM-EDM-G709-ALERT; + } + container es-tca { + description + "Errored Seconds TCA information"; + uses DWDM-EDM-G709-ALERT; + } + container bbe { + description + "Backgound Block Error information"; + uses DWDM-EDM-G709-PM; + } + container es { + description + "Errored Seconds information "; + uses DWDM-EDM-G709-PM; + } + container ses { + description + "Severly Errored Seconds information"; + uses DWDM-EDM-G709-PM; + } + container uas { + description + "Unavailability Seconds information"; + uses DWDM-EDM-G709-PM; + } + container fc { + description + "Failure Count information"; + uses DWDM-EDM-G709-PM; + } + container bber { + description + "Backgound Block Error Rate information"; + uses DWDM-EDM-G709-PM; + } + container esr { + description + "Errored Seconds Rate information"; + uses DWDM-EDM-G709-PM; + } + container sesr { + description + "Severly Errored Seconds Rate information"; + uses DWDM-EDM-G709-PM; + } + container tti { + description + "Trail Trace Identifier information"; + uses DWDM-EDM-G709-TTI; + } + leaf bei { + type uint64; + description + "Backward Error Indication counter"; + } + leaf bip { + type uint64; + description + "Bit Interleave Parity(BIP) counter"; + } + } + + grouping DWDM-EDM-G709-ALERT { + description + "G709 Alert Information"; + leaf reporting-enabled { + type boolean; + description + "Is reporting enabled?"; + } + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf is-asserted { + type boolean; + description + "Is defect delared?"; + } + leaf threshold { + type int32; + description + "Error threshold power"; + } + leaf counter { + type uint64; + description + "Error counter"; + } + } + + grouping DWDM-EDM-G709-ALARM { + description + " G709 Alarm information"; + leaf reporting-enabled { + type boolean; + description + "Is reporting enabled?"; + } + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf is-asserted { + type boolean; + description + "Is defect delared?"; + } + leaf counter { + type uint64; + description + "Alarm counter"; + } + } + + grouping DWDM-EDM-G709-INFO { + description + "g709 information"; + container fec-mismatch { + description + "FEC mismatch alarm"; + uses DWDM-EDM-G709-ALARM; + } + container ec-tca { + description + "FEC Corrected bits TCA information"; + uses DWDM-EDM-G709-ALERT; + } + container uc-tca { + description + "FEC uncorrected words TCA information"; + uses DWDM-EDM-G709-ALERT; + } + container otu-info { + description + "OTU layer information"; + uses DWDM-EDM-G709-OTU; + } + container odu-info { + description + "ODU layer Information"; + uses DWDM-EDM-G709-ODU; + } + leaf is-g709-enabled { + type boolean; + description + " Is G709 framing enabled"; + } + leaf is-fec-mode-default { + type boolean; + description + " Is Operating FEC Mode Default"; + } + leaf fec-mode { + type int32; + description + "FEC information"; + } + leaf remote-fec-mode { + type int32; + description + "Remote FEC information"; + } + leaf efec-mode { + type G709efec-mode; + description + "EFEC information"; + } + leaf loopback-mode { + type int32; + description + "Loopback information"; + } + leaf ec { + type uint64; + description + "Corrected bit error counter "; + } + leaf ec-accum { + type uint64; + description + "FEC Corrected bit error accumulated counter"; + } + leaf uc { + type uint64; + description + "FEC Uncorrected words counter"; + } + leaf fec-ber { + type uint64; + description + "pre fec ber calculated"; + } + leaf fec-ber-man { + type int32; + description + "pre fec ber calculated"; + } + leaf q { + type uint64; + description + "q value calculated"; + } + leaf q-margin { + type uint64; + description + "q margin calculated"; + } + leaf fe-cstr { + type string { + length "0..64"; + } + description + "FEC BER String "; + } + leaf qstr { + type string { + length "0..64"; + } + description + "Q String "; + } + leaf qmargin-str { + type string { + length "0..64"; + } + description + "QMargin String"; + } + leaf network-port-id { + type string { + length "0..65"; + } + description + "Network port ID"; + } + leaf network-conn-id { + type string { + length "0..65"; + } + description + "Network connection ID"; + } + leaf is-prbs-enabled { + type boolean; + description + "'true' if Prbs is enabled 'false' otherwise"; + } + leaf g709-prbs-mode { + type G709prbs-mode; + description + "Configured mode of PRBS Test"; + } + leaf g709-prbs-pattern { + type G709prbs-pattern; + description + "Pattern of PRBS Test"; + } + leaf prbs-time-stamp { + type uint64; + description + "Time stamp for prbs configuration"; + } + } + + grouping DWDM-EDM-PORT-INFO { + description + "dwdm port operational information"; + container g709-info { + description + "G709 operational information"; + uses DWDM-EDM-G709-INFO; + } + container optics-info { + description + "Optics operational information"; + uses DWDM-EDM-OPTICS-INFO; + } + container tdc-info { + description + "TDC operational information"; + uses DWDM-EDM-TDC-INFO; + } + container network-srlg-info { + description + "Network SRLG information"; + uses DWDM-EDM-NETWORK-SRLG-INFO; + } + container proactive { + description + "Proactive protection information"; + uses DWDM-EDM-PROACTIVE-INFO; + } + container signal-log { + description + "Signal log information"; + uses DWDM-EDM-SIGNAL-LOG-INFO; + } + leaf controller-state { + type Dwdm-controller-state; + description + "DWDM controller state: Up, Down or + Administratively Down"; + } + leaf transport-admin-state { + type Dwdmtas-state; + description + "DWDM controller TAS state: IS, OOS, OOS-MT or + IS-CFG"; + } + leaf slice-state { + type boolean; + description + "DWDM port slice state Up/Down"; + } + } + + grouping DWDM-EDM-WAVE-INFO { + description + "wavelength information"; + leaf wave-band { + type uint32; + description + "Wavelength band"; + } + leaf wave-channel-min { + type uint32; + description + "Lowest ITU wavelength channel number supported"; + } + leaf wave-channel-max { + type uint32; + description + "Highest ITU wavelength channel number supported"; + } + } + + grouping PRBS-INTERVAL { + description + "PRBS Interval Information"; + leaf interval-index { + type G709prbs-interval; + description + "Index of bucket, current and previous"; + } + leaf configured-pattern { + type G709prbs-pattern; + description + "Configured pattern of PRBS test"; + } + leaf start-at { + type string { + length "0..64"; + } + description + "Interval start timestamp"; + } + leaf stop-at { + type string { + length "0..64"; + } + description + "Interval stop timestamp"; + } + leaf received-pattern { + type G709prbs-pattern; + description + "Received Pattern of PRBS Test"; + } + leaf bit-error-count { + type uint64; + description + "Bit Error Count"; + } + leaf found-count { + type uint64; + description + "Count of pattern found in interval"; + } + leaf lost-count { + type uint64; + description + "Count of pattern lost in interval"; + } + leaf found-at { + type string { + length "0..64"; + } + description + "Pattern first found at timestamp"; + } + leaf lost-at { + type string { + length "0..64"; + } + description + "Pattern first lost at timestamp"; + } + } + + grouping DWDM-EDM-PRBS-INFO { + description + "PRBS information"; + leaf is-prbs-enabled { + type boolean; + description + "'True' if PRBS is enabled 'False' otherwise"; + } + leaf prbs-config-mode { + type G709prbs-mode; + description + "Configured mode of PRBS test"; + } + list prbs-entry { + description + "History consists of 15-minute/24-hour intervals"; + uses PRBS-INTERVAL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper.yang new file mode 100644 index 000000000..99ab83c70 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-dwdm-ui-oper.yang @@ -0,0 +1,132 @@ +module Cisco-IOS-XR-dwdm-ui-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-dwdm-ui-oper"; + prefix dwdm-ui-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-dwdm-ui-oper-sub1 { + revision-date 2019-04-05; + } + + 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 dwdm-ui package operational data. + + This module contains definitions + for the following management objects: + dwdm: DWDM operational data + vtxp: VTXP specific operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dwdm { + config false; + description + "DWDM operational data"; + container ports { + description + "All DWDM Port operational data"; + list port { + key "name"; + description + "DWDM Port operational data"; + container prbs { + description + "DWDM Port PRBS related data"; + container twenty-four-hours-bucket { + description + "Port 24-hour PRBS statistics table"; + container twenty-four-hours-statistics { + description + "Port 24-hour PRBS statistics data"; + uses DWDM-EDM-PRBS-INFO; + } + } + container fifteen-minutes-bucket { + description + "Port 15-minute PRBS statistics table"; + container fifteen-minutes-statistics { + description + "Port 15-minute PRBS statistics data"; + uses DWDM-EDM-PRBS-INFO; + } + } + } + container optics { + description + "DWDM Port optics operational data"; + container wave-info { + description + "DWDM port wavelength information data"; + uses DWDM-EDM-WAVE-INFO; + } + } + container info { + description + "DWDM port operational data"; + uses DWDM-EDM-PORT-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container vtxp { + config false; + description + "VTXP specific operational data"; + container dwdm-vtxp { + description + "DWDM operational data"; + container port-vtxps { + description + "All DWDM Port operational data"; + list port-vtxp { + key "name"; + description + "DWDM Port operational data"; + container info { + description + "DWDM port operational data"; + uses DWDM-EDM-VTXP-INFO; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-eapol-if-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-eapol-if-cfg.yang new file mode 100644 index 000000000..4b6b38fba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-eapol-if-cfg.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-eapol-if-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-eapol-if-cfg"; + prefix eapol-if-cfg; + + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 eapol-if package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eapol-ether { + type enumeration { + enum "eapol-ether-type-876f" { + value 34671; + description + "EAPOL ETHER TYPE 876F"; + } + } + description + "Eapol ether"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container eapol { + description + "Interface Specific Dot1x Configuration"; + leaf eapol-ether-type { + type Eapol-ether; + description + "EAPoL ethertype for EAPoL frames transmission"; + } + leaf eapol-dest-addr { + type yang:mac-address; + description + "Destination address for EAPoL frames + transmission"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-cfg.yang new file mode 100644 index 000000000..05d61c644 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-cfg.yang @@ -0,0 +1,1461 @@ +module Cisco-IOS-XR-eigrp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-eigrp-cfg"; + prefix eigrp-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-eigrp-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 eigrp package configuration. + + This module contains definitions + for the following management objects: + eigrp: Configure Neighbor + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2018-04-05 { + description + "Yang support provided for config."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eigrp-metric-version { + type enumeration { + enum "64bit" { + value 0; + description + "64-bit metrics"; + } + enum "32bit" { + value 1; + description + "32-bit metrics"; + } + } + description + "Eigrp metric version"; + } + + typedef Eigrp-soo { + type enumeration { + enum "as" { + value 1; + description + "AS:nn format"; + } + enum "ipv4-address" { + value 2; + description + "IPV4Address:nn format"; + } + enum "four-byte-as" { + value 3; + description + "AS2.AS:nn format"; + } + } + description + "Eigrp soo"; + } + + typedef Eigrp-redist-proto { + type enumeration { + enum "bgp" { + value 1; + description + "BGP routes"; + } + enum "connected" { + value 2; + description + "Connected routes"; + } + enum "eigrp" { + value 3; + description + "EIGRP routes"; + } + enum "isis" { + value 4; + description + "ISIS routes"; + } + enum "ospf" { + value 5; + description + "OSPF routes"; + } + enum "rip" { + value 6; + description + "RIP routes"; + } + enum "static" { + value 7; + description + "Static routes"; + } + enum "ospfv3" { + value 8; + description + "OSPFv3 routes"; + } + enum "subscriber" { + value 9; + description + "Subscriber routes"; + } + enum "application" { + value 10; + description + "Application routes"; + } + enum "mobile" { + value 11; + description + "Mobile routes"; + } + } + description + "Eigrp redist proto"; + } + + typedef Eigrp-stub { + type enumeration { + enum "receive-only" { + value 1; + description + "receive only"; + } + enum "filtered" { + value 2; + description + "filter some routes"; + } + } + description + "Eigrp stub"; + } + + typedef Eigrp-delay-unit { + type enumeration { + enum "ten-microsecond" { + value 0; + description + "Delay in 10's of microsecond"; + } + enum "picosecond" { + value 1; + description + "Delay in picosecond"; + } + } + description + "Eigrp delay unit"; + } + + typedef Eigrp-met { + type enumeration { + enum "maximum-hops" { + value 1; + description + "Metric maxhops"; + } + enum "weights" { + value 2; + description + "Metric weights"; + } + enum "rib-scale" { + value 3; + description + "Metric ribscale"; + } + enum "version" { + value 4; + description + "Metric version"; + } + } + description + "Eigrp met"; + } + + typedef Eigrp-dir { + type enumeration { + enum "in" { + value 1; + description + "inbound direction"; + } + enum "out" { + value 2; + description + "outbound direction"; + } + } + description + "Eigrp dir"; + } + + typedef Eigrp-timer { + type enumeration { + enum "active" { + value 1; + description + "Active time"; + } + enum "route-hold" { + value 2; + description + "Route-hold time"; + } + enum "signal" { + value 3; + description + "Signal time"; + } + enum "converge" { + value 4; + description + "Converge time"; + } + } + description + "Eigrp timer"; + } + + grouping VARIANCE { + description + "Common node of default-af, af"; + leaf variance { + type uint32 { + range "1..128"; + } + description + "Control load balancing variance"; + } + } + + grouping REDISTRIBUTE-TABLE { + description + "Common node of default-af, af"; + container redistributes { + presence "Indicates a redistributes node is configured."; + description + "List of redistributed protocols"; + + grouping REDISTRIBUTE-CONTENT { + description + "REDISTRIBUTE CONTENT"; + leaf policy-name { + type string; + description + "Policy name"; + } + leaf policy-specified { + type boolean; + mandatory true; + description + "TRUE if Policy has been specified"; + } + } + list redistribute { + key "protocol-name"; + description + "Redistribute another protocol"; + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + list redistribute-as-xx { + key "as-xx protocol-name"; + description + "Redistribute another protocol"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "Higher sixteen bits of 4-byte BGP AS number"; + } + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + list redistribute-as-yy { + key "as-yy protocol-name"; + description + "Redistribute another protocol"; + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "2-byte or 4-byte BGP AS Number"; + } + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + list redistribute-as-xx-as-yy { + key "as-xx as-yy protocol-name"; + description + "Redistribute another protocol"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "Higher sixteen bits of 4-byte BGP AS number"; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "2-byte or 4-byte BGP AS Number"; + } + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + list redistribute-tag-name { + key "tag-name protocol-name"; + description + "Redistribute another protocol"; + leaf tag-name { + type xr:Cisco-ios-xr-string; + description + "OSPF/OSPFv3/ISIS/OnePK Application tag name"; + } + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + list redistribute-as-xx-tag-name { + key "as-xx tag-name protocol-name"; + description + "Redistribute another protocol"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "Higher sixteen bits of 4-byte BGP AS number"; + } + leaf tag-name { + type xr:Cisco-ios-xr-string; + description + "OSPF/OSPFv3/ISIS/OnePK Application tag name"; + } + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + list redistribute-as-yy-tag-name { + key "as-yy tag-name protocol-name"; + description + "Redistribute another protocol"; + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "2-byte or 4-byte BGP AS Number"; + } + leaf tag-name { + type xr:Cisco-ios-xr-string; + description + "OSPF/OSPFv3/ISIS/OnePK Application tag name"; + } + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + list redistribute-as-xx-as-yy-tag-name { + key "as-xx as-yy tag-name protocol-name"; + description + "Redistribute another protocol"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "Higher sixteen bits of 4-byte BGP AS number"; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "2-byte or 4-byte BGP AS Number"; + } + leaf tag-name { + type xr:Cisco-ios-xr-string; + description + "OSPF/OSPFv3/ISIS/OnePK Application tag name"; + } + leaf protocol-name { + type Eigrp-redist-proto; + description + "Redistributed protocol"; + } + uses REDISTRIBUTE-CONTENT; + } + } + } + + grouping PASSIVE-INTERFACE-DEFAULT { + description + "Common node of default-af, af"; + leaf passive-interface-default { + type empty; + description + "Suppress routing updates on all interfaces"; + } + } + + grouping DISTANCE { + description + "Common node of default-af, af"; + container distance { + description + "Set distance for EIGRP routes"; + leaf internal-distance { + type uint32 { + range "1..255"; + } + description + "Internal routes' distance"; + } + leaf external-distance { + type uint32 { + range "1..255"; + } + description + "External routes' distance"; + } + } + } + + grouping DEFAULT-ACCEPT-TABLE { + description + "Common node of default-af, af"; + container default-accepts { + description + "Candidate default policy table"; + list default-accept { + key "direction"; + description + "Candidate default behaviour"; + leaf direction { + type Eigrp-dir; + description + "Direction (in or out)"; + } + leaf policy-name { + type string; + description + "Policy name"; + } + leaf policy-specified { + type boolean; + mandatory true; + description + "TRUE if Policy has been specified"; + } + } + } + } + + grouping AUTO-SUMMARY { + description + "Common node of default-af, af"; + leaf auto-summary { + type empty; + description + "Enable Auto Summarization"; + } + } + + grouping FILTER-POLICY-TABLE { + description + "Common node of default-af, af"; + container filter-policies { + description + "Inbound and outbound filter policies"; + list filter-policy { + key "direction"; + description + "Inbound/outbound policies"; + leaf direction { + type Eigrp-dir; + description + "Direction (in or out)"; + } + leaf policy-name { + type string; + mandatory true; + description + "Policy name"; + } + } + } + } + + grouping LOG-NEIGHBOR-WARNINGS { + description + "Common node of default-af, af"; + leaf log-neighbor-warnings { + type empty; + description + "Enable/Disable neighbor state change warnings "; + } + } + + grouping METRIC-TABLE { + description + "Common node of default-af, af"; + container metrics { + description + "List of metric change behaviours"; + list metric { + key "metric-name"; + description + "Modify EIGRP routing metrics and parameters"; + leaf metric-name { + type Eigrp-met; + description + "Type of metric change"; + } + leaf max-hops { + type uint32 { + range "1..255"; + } + description + "Hop count"; + } + leaf tos { + type uint32 { + range "0"; + } + description + "Type of Service (Only TOS 0 supported)"; + } + leaf k1 { + type uint32 { + range "0..255"; + } + description + "K1"; + } + leaf k2 { + type uint32 { + range "0..255"; + } + description + "K2"; + } + leaf k3 { + type uint32 { + range "0..255"; + } + description + "K3"; + } + leaf k4 { + type uint32 { + range "0..255"; + } + description + "K4"; + } + leaf k5 { + type uint32 { + range "0..255"; + } + description + "K5"; + } + leaf k6 { + type uint32 { + range "0..255"; + } + description + "K6"; + } + leaf rib-scale { + type uint32 { + range "1..4294967295"; + } + description + "RIB scale"; + } + leaf metric-version { + type Eigrp-metric-version; + description + "Metric version"; + } + } + } + } + + grouping AUTONOMOUS-SYSTEM { + description + "Common node of default-af, af"; + leaf autonomous-system { + type uint32 { + range "1..65535"; + } + description + "Set the autonomous system of a VRF"; + } + } + + grouping NSF-DISABLE { + description + "Common node of default-af, af"; + leaf nsf-disable { + type empty; + description + "Disable NSF for this address family under this + VRF"; + } + } + + grouping MAXIMUM-PATHS { + description + "Common node of default-af, af"; + leaf maximum-paths { + type uint32 { + range "1..32"; + } + description + "number of paths"; + } + } + + grouping LOG-NEIGHBOR-CHANGES { + description + "Common node of default-af, af"; + leaf log-neighbor-changes { + type empty; + description + "Enable/Disable logginf of neighbor state changes"; + } + } + + grouping INTERFACE-TABLE { + description + "Common node of default-af, af"; + container interfaces { + description + "List of interfaces"; + list interface { + key "interface-name"; + description + "Configuration for an Interface.Deletion of this + object also causes deletion of all objectsunder + 'Interface' associated with this interface + instance."; + container interface-metric { + description + "Metric"; + leaf bandwidth { + type uint32 { + range "1..4294967295"; + } + units "kbit/s"; + description + "Bandwidth in Kbits per second"; + } + leaf delay { + type uint32 { + range "1..4294967295"; + } + description + "Delay metric, in 10 microsecond units + (default) or picosecond units"; + } + leaf delay-unit { + type Eigrp-delay-unit; + description + "Delay unit"; + } + leaf reliability { + type uint32 { + range "0..255"; + } + description + "Reliability metric where 255 is 100% reliable"; + } + leaf load { + type uint32 { + range "1..255"; + } + description + "Effective bandwidth metric (Loading) where + 255 is 100% loaded"; + } + } + container remote-neighbor { + presence "Indicates a remote-neighbor node is configured."; + description + "Remote-Neighbors enabled, default is 65535"; + leaf enable { + type boolean; + mandatory true; + description + "Enable Remote neighbor unicast-listen"; + } + leaf allow-list { + type string; + description + "Policy name"; + } + leaf max-neighbors { + type uint32 { + range "1..65535"; + } + description + "Neighbor count"; + } + } + container bfd { + description + "Configure BFD parameters"; + leaf fast-detect { + type boolean; + description + "Enable BFD fast detection"; + } + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detect multiplier"; + } + leaf interval { + type uint32 { + range "15..3000"; + } + units "millisecond"; + description + "Hello interval in milli-seconds"; + } + } + container site-of-origin { + description + "Configure Site-of-origin"; + leaf type { + type Eigrp-soo; + description + "SoO type"; + } + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "Higher sixteen bits of 4-byte BGP AS Number"; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "2-byte or 4-byte BGP AS Number"; + } + leaf index { + type uint32 { + range "0..4294967295"; + } + description + "AS Number Index"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + leaf address-index { + type uint32 { + range "0..65535"; + } + description + "IPv4 address index"; + } + } + container authentication { + description + "Authentication configuration"; + leaf keychain { + type string; + description + "Authentication keychain configuration"; + } + } + container summary-addresses { + description + "List of summary addresses under this interface"; + list summary-address { + key "summary-address-addr summary-address-prefix"; + description + "Summary address"; + leaf summary-address-addr { + type inet:ip-address; + description + "Summary Prefix (address part)"; + } + leaf summary-address-prefix { + type uint16 { + range "0..128"; + } + description + "Summary Prefix (prefix part)"; + } + leaf distance { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Administrative distance"; + } + } + } + container interface-filter-policies { + description + "List of filter policies"; + list interface-filter-policy { + key "direction"; + description + "none"; + leaf direction { + type Eigrp-dir; + description + "Direction (in or out)"; + } + leaf policy-name { + type string; + mandatory true; + description + "Policy name"; + } + } + } + container interface-static-neighbors { + description + "List of Neighbors"; + list interface-static-neighbor { + key "neighbor-address"; + description + "Configure Neighbor"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor IP address"; + } + leaf max-hops { + type uint32 { + range "2..100"; + } + mandatory true; + description + "Number of hops"; + } + } + } + leaf hold-time { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Neighbor hold time (in seconds)"; + } + leaf bandwidth-percent { + type uint32 { + range "1..999999"; + } + units "percentage"; + description + "Bandwidth limit"; + } + leaf passive-interface { + type boolean; + description + "Suppress routing updates on an interface"; + } + leaf hello-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval (in seconds)"; + } + leaf next-hop-self { + type empty; + description + "Disable next-hop-self"; + } + leaf enable { + type empty; + description + "Enable Interface configuration"; + } + leaf split-horizon { + type empty; + description + "Configure split horizon behaviour"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + + grouping TIMERS-TABLE { + description + "Common node of default-af, af"; + container timers { + description + "List of timer configurations"; + list timer { + key "timer-type"; + description + "Configure EIGRP timers"; + leaf timer-type { + type Eigrp-timer; + description + "Type of timer"; + } + leaf active-time { + type uint32; + units "second"; + description + "Active Time (in seconds)"; + } + leaf hold-time { + type uint32 { + range "20..6000"; + } + units "second"; + description + "Hold time (in seconds)"; + } + leaf signal-time { + type uint32 { + range "10..30"; + } + units "second"; + description + "Signal time (in seconds)"; + } + leaf converge-time { + type uint32 { + range "60..5000"; + } + units "second"; + description + "Converge time (in seconds)"; + } + } + } + } + + grouping ROUTER-ID { + description + "Common node of default-af, af"; + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Set router ID"; + } + } + + grouping DEFAULT-METRIC { + description + "Common node of default-af, af"; + container default-metric { + description + "Set metric of redistributed routes"; + leaf bandwidth { + type uint32 { + range "1..4294967295"; + } + units "kbit/s"; + description + "Bandwidth in Kbits per second"; + } + leaf delay { + type uint32 { + range "1..4294967295"; + } + description + "Delay metric, in 10 microsecond units"; + } + leaf reliability { + type uint32 { + range "0..255"; + } + description + "Reliability metric where 255 is 100% reliable"; + } + leaf load { + type uint32 { + range "1..255"; + } + description + "Effective bandwidth metric (Loading) where 255 + is 100% loaded"; + } + leaf mtu { + type uint32 { + range "1..65535"; + } + description + "Maximum Transmission Unit metric of the path"; + } + } + } + + grouping STUB { + description + "Common node of default-af, af"; + container stub { + presence "enable stub"; + description + "EIGRP stub configuration"; + leaf type { + type Eigrp-stub; + description + "Stub config type"; + } + leaf connected { + type boolean; + description + "Do advertise connected routes"; + } + leaf redistributed { + type boolean; + description + "Do advertise redistributed routes"; + } + leaf static { + type boolean; + description + "Do advertise static routes"; + } + leaf summary { + type boolean; + description + "Do advertise summary routes"; + } + } + } + + container eigrp { + description + "Configure Neighbor"; + container processes { + description + "Process related configuration"; + list process { + key "process-id"; + description + "Configuration for a particular EIGRP process."; + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "Non-default VRF configuration.Deletion of + this object also causes deletion of all + objectsunder 'VRF' associated with this VRF + instance."; + container afs { + description + "Address family list in a VRF"; + list af { + key "af-name"; + description + "Configuration under an AF in a non-default + VRF context.Deletion of this object also + causes deletion of all objectsunder 'AF' + associated with this AF instance."; + container all-neighbors-maximum-prefix { + description + "Maximum number of IP prefixes acceptable + in aggregate, from neighbors"; + leaf max-prefix { + type uint32 { + range "1..4294967295"; + } + description + "Number of IP prefixes for maximum-prefix + limit"; + } + leaf threshold { + type uint32 { + range "1..100"; + } + units "percentage"; + description + "Configure threshold percentage for + warnings"; + } + leaf dampened { + type boolean; + description + "Enable decay penalty to be applied to + time period"; + } + leaf reset-time { + type uint32; + description + "Time to reset restart count"; + } + leaf restart { + type uint32; + description + "Shutdown time after hitting max-prefix + limit"; + } + leaf restart-count { + type uint32; + description + "Restart count after hitting max-prefix + limit"; + } + leaf warning-only { + type boolean; + description + "Only a warning is logged when prefix + limit is reached"; + } + } + container redist-maximum-prefix { + description + "Maximum number of prefixes redistributed + to protocol"; + leaf max-prefix { + type uint32 { + range "1..4294967295"; + } + description + "Number of IP prefixes for maximum-prefix + limit"; + } + leaf threshold { + type uint32 { + range "1..100"; + } + units "percentage"; + description + "Configure threshold percentage for + warnings"; + } + leaf dampened { + type uint32; + description + "Enable decay penalty to be applied to + time period"; + } + leaf reset-time { + type uint32; + description + "Time to reset restart count"; + } + leaf restart { + type uint32; + description + "Shutdown time after hitting max-prefix + limit"; + } + leaf restart-count { + type uint32; + description + "Restart count after hitting max-prefix + limit"; + } + leaf warning-only { + type boolean; + description + "Only a warning is logged when prefix + limit is reached"; + } + } + container neighbor-maximum-prefixes { + description + "List of neighbors with prefix limits"; + list neighbor-maximum-prefix { + key "neighbor-address"; + description + "Neighbor prefix limits configuration"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor IP address"; + } + leaf max-prefix { + type uint32 { + range "1..4294967295"; + } + description + "Number of IP prefixes for maximum-prefix + limit"; + } + leaf threshold { + type uint32 { + range "1..100"; + } + units "percentage"; + description + "Configure threshold percentage for + warnings"; + } + leaf warning-only { + type boolean; + description + "Only a warning is logged when prefix + limit is reached"; + } + } + } + container maximum-prefix { + description + "Maximum number of IP prefixes acceptable + in aggregate"; + leaf max-prefix { + type uint32 { + range "1..4294967295"; + } + description + "Number of IP prefixes for maximum-prefix + limit"; + } + leaf threshold { + type uint32 { + range "1..100"; + } + units "percentage"; + description + "Configure threshold percentage for + warnings"; + } + leaf dampened { + type boolean; + description + "Enable decay penalty to be applied to + time period"; + } + leaf reset-time { + type uint32; + description + "Time to reset restart count"; + } + leaf restart { + type uint32; + description + "Shutdown time after hitting max-prefix + limit"; + } + leaf restart-count { + type uint32; + description + "Restart count after hitting max-prefix + limit"; + } + leaf warning-only { + type boolean; + description + "Only a warning is logged when prefix + limit is reached"; + } + } + leaf enable { + type empty; + description + "Enable an Address Family under a + non-default VRF"; + } + leaf af-name { + type dt1:Eigrp-af; + description + "Address Family"; + } + uses AUTO-SUMMARY; + uses STUB; + uses MAXIMUM-PATHS; + uses REDISTRIBUTE-TABLE; + uses ROUTER-ID; + uses LOG-NEIGHBOR-WARNINGS; + uses FILTER-POLICY-TABLE; + uses DEFAULT-METRIC; + uses AUTONOMOUS-SYSTEM; + uses VARIANCE; + uses METRIC-TABLE; + uses TIMERS-TABLE; + uses NSF-DISABLE; + uses DEFAULT-ACCEPT-TABLE; + uses PASSIVE-INTERFACE-DEFAULT; + uses INTERFACE-TABLE; + uses DISTANCE; + uses LOG-NEIGHBOR-CHANGES; + } + } + leaf enable { + type empty; + description + "Enable a non-default VRF under the EIGRP + process"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container default-vrf { + description + "Default VRF configuration.Deletion of this + object also causes deletion of all + objectsunder 'Process' associated with this + process instance."; + container default-afs { + description + "Address family list in the default context"; + list default-af { + key "af-name"; + description + "Configuration under an AF in the default + context.Deletion of this object also causes + deletion of all objectsunder 'DefaultAF' + associated with this AF instance."; + leaf enable { + type empty; + description + "Enable an Address Family under a default + VRF"; + } + leaf af-name { + type dt1:Eigrp-af; + description + "Address Family"; + } + uses AUTO-SUMMARY; + uses STUB; + uses MAXIMUM-PATHS; + uses REDISTRIBUTE-TABLE; + uses ROUTER-ID; + uses LOG-NEIGHBOR-WARNINGS; + uses FILTER-POLICY-TABLE; + uses DEFAULT-METRIC; + uses AUTONOMOUS-SYSTEM; + uses VARIANCE; + uses METRIC-TABLE; + uses TIMERS-TABLE; + uses NSF-DISABLE; + uses DEFAULT-ACCEPT-TABLE; + uses PASSIVE-INTERFACE-DEFAULT; + uses INTERFACE-TABLE; + uses DISTANCE; + uses LOG-NEIGHBOR-CHANGES; + } + } + leaf enable { + type empty; + description + "Enable EIGRP Default VRF + configurationDeletion of this object also + causes deletion of all objectsunder 'Process' + associated with this process instance."; + } + } + leaf nsf-disable { + type empty; + description + "Disable NSF for all address families under all + VRF's. It takes precedence over the NSF + related configuration in the address family + submode"; + } + leaf process-id { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "AS number (1 - 65535) or Virutual instance + name of the EIGRP process"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-datatypes.yang new file mode 100644 index 000000000..a63602a58 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-datatypes.yang @@ -0,0 +1,58 @@ +module Cisco-IOS-XR-eigrp-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-eigrp-datatypes"; + prefix eigrp-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-05 { + description + "Common datatype for both config and oper changes."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eigrp-af { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "ipv6" { + value 2; + description + "IPv6 address family"; + } + } + description + "Eigrp af"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper-sub1.yang new file mode 100644 index 000000000..f1e57c763 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper-sub1.yang @@ -0,0 +1,2259 @@ +submodule Cisco-IOS-XR-eigrp-oper-sub1 { + belongs-to Cisco-IOS-XR-eigrp-oper { + prefix Cisco-IOS-XR-eigrp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR eigrp package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-14 { + description + "Changed Internal tag value to 32-bit."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-04-05 { + description + "Oper supported provided for oper data."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eigrp-bd-soo { + type enumeration { + enum "none" { + value 0; + description + "No SoO configured"; + } + enum "as" { + value 1; + description + "AS:nn format"; + } + enum "ipv4-address" { + value 2; + description + "IPV4Address:nn format"; + } + enum "four-byte-as" { + value 3; + description + "AS2.AS:nn format"; + } + } + description + "EIGRP SoO types"; + } + + typedef Eigrp-bd-path-rib-state { + type enumeration { + enum "active-path" { + value 0; + description + "Active path"; + } + enum "backup-path" { + value 1; + description + "Backup path"; + } + enum "path-sent-to-rib" { + value 2; + description + "Path sent to RIB"; + } + enum "path-not-selected" { + value 3; + description + "Path not selected for installation in RIB"; + } + enum "error-state" { + value 4; + description + "Path in error state"; + } + } + description + "Eigrp bd path rib state"; + } + + typedef Eigrp-bd-delay-unit { + type enumeration { + enum "none" { + value 0; + description + "No Delay configured"; + } + enum "ten-microsecond" { + value 1; + description + "Delay in 10's of Microseconds"; + } + enum "picosecond" { + value 2; + description + "Delay in Picoseconds"; + } + enum "microsecond" { + value 3; + description + "Delay in Microseconds"; + } + } + description + "EIGRP delay unit"; + } + + typedef Eigrp-bd-path-origin { + type enumeration { + enum "connected" { + value 0; + description + "connected destination"; + } + enum "static-redistributed" { + value 1; + description + "static redistribution"; + } + enum "connected-redistributed" { + value 2; + description + "connected redistribution"; + } + enum "subscriber-redistributed" { + value 3; + description + "subscriber redistribution"; + } + enum "redistributed" { + value 4; + description + "redistributed destination"; + } + enum "vpnv4-sourced" { + value 5; + description + "vpnv4 destination"; + } + enum "vpnv6-sourced" { + value 6; + description + "vpnv6 destination"; + } + enum "summary" { + value 7; + description + "summary destination"; + } + enum "dummy" { + value 8; + description + "bogus drdb used for sia transmission"; + } + enum "eigrp-destination" { + value 9; + description + "igrp2 destination"; + } + enum "origin-count" { + value 10; + description + "Number of org types"; + } + } + description + "EIGRP path origin"; + } + + typedef Eigrp-bd-path-send-flag { + type enumeration { + enum "no-send-pending" { + value 0; + description + "No packet send pending"; + } + enum "multicast-update-pending" { + value 1; + description + "Multicast update pending"; + } + enum "multicast-query-pending" { + value 2; + description + "Multicast query pending"; + } + enum "reply-pending" { + value 3; + description + "Reply pending"; + } + enum "sia-query-pending" { + value 4; + description + "SIA Query pending"; + } + enum "sia-reply-pending" { + value 5; + description + "SIA Reply pending"; + } + } + description + "EIGRP path send flag"; + } + + typedef Eigrp-bd-metric-version { + type enumeration { + enum "metric-version32-bit" { + value 0; + description + "Metric version is 32 bit"; + } + enum "metric-version64-bit" { + value 1; + description + "Metric version is 64 bit"; + } + } + description + "EIGRP metric version"; + } + + grouping EIGRP-SHOW-AF-STATS-BD { + description + "EIGRP AF statistics"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf configured-interface-count { + type uint32; + description + "Configured interfaces"; + } + leaf active-interfaces-count { + type uint32; + description + "Active interfaces"; + } + leaf activate-count { + type uint64; + description + "Activate address family success count"; + } + leaf activate-error { + type uint64; + description + "Activate address family failure count"; + } + leaf activate-last-error { + type int32; + description + "Activate address family last error"; + } + leaf deactivate-count { + type uint64; + description + "Deactivate address family success count"; + } + leaf deactivate-error { + type uint64; + description + "Deactivate address family failure count"; + } + leaf deactivate-last-error { + type int32; + description + "Deactivate address family last error"; + } + leaf socket-set { + type uint64; + description + "Socket setup success count"; + } + leaf socket-set-error { + type uint64; + description + "Socket setup failure count"; + } + leaf sock-set-last-error { + type int32; + description + "Socket setup last error"; + } + leaf raw-packet-in { + type uint64; + description + "Succeeded RAW packets in"; + } + leaf raw-packet-in-error { + type uint64; + description + "Failed RAW packets ln"; + } + leaf raw-packet-in-last-error { + type int32; + description + "RAW packets in last error"; + } + leaf raw-packet-out { + type uint64; + description + "Succeeded RAW packets out"; + } + leaf raw-packet-out-error { + type uint64; + description + "Failed RAW packets out"; + } + leaf raw-packet-out-last-error { + type int32; + description + "RAW Packets out last error"; + } + } + + grouping EIGRP-SHOW-NBR-Q-BD { + description + "EIGRP Neighbor queue"; + leaf operation-code { + type uint32; + description + "Operation Code"; + } + leaf ack-sequnce-number { + type uint32; + description + "ACK sequence number"; + } + leaf start-serial-number { + type uint64; + description + "Starting serial number"; + } + leaf end-serial-number { + type uint64; + description + "Ending serial number"; + } + leaf pregenerated { + type boolean; + description + "Pregenerated pak"; + } + leaf packet-length { + type uint32; + description + "pak len"; + } + leaf time-sent-flag { + type boolean; + description + "Has a pak been sent"; + } + leaf time-sent { + type uint32; + description + "Time sent"; + } + leaf init-bit-set { + type boolean; + description + "Is the init bit set"; + } + leaf sequenced { + type boolean; + description + "Is it sequenced"; + } + } + + grouping EIGRP-SHOW-NEIGHBORS-BD { + description + "EIGRP neighbor"; + container source { + description + "Peer address"; + uses EIGRP-ADDR-BD; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf peer-suspended { + type boolean; + description + "Is it a suspended peer"; + } + leaf peer-handle { + type uint32; + description + "Peer handle"; + } + leaf interface-list { + type string; + description + "Interface name"; + } + leaf holdtime { + type uint32; + description + "Hold time"; + } + leaf uptime { + type uint32; + units "second"; + description + "UP time (seconds)"; + } + leaf srtt { + type uint32; + description + "Round trip time"; + } + leaf rto { + type uint32; + description + "RTO"; + } + leaf bfd-enabled { + type boolean; + description + "BFD enabled"; + } + leaf queue-count { + type uint32; + description + "Q counts"; + } + leaf last-sequence-number { + type uint32; + description + "Last sequence number"; + } + leaf static-neighbor { + type boolean; + description + "Is it a static neighbor"; + } + leaf remote-neighbor { + type boolean; + description + "Is it a remote ucast neighbor"; + } + leaf hop-count { + type uint8; + description + "Hop count of the static peer"; + } + leaf restart-configured { + type boolean; + description + "Is Restart time configured"; + } + leaf restart-time { + type uint32; + units "second"; + description + "Restart time (seconds)"; + } + leaf last-startup-serial-number { + type uint64; + description + "Last startup serial number"; + } + leaf ios-major-version { + type uint8; + description + "IOS Major version"; + } + leaf ios-minor-version { + type uint8; + description + "IOS Minor version"; + } + leaf eigrp-major-version { + type uint8; + description + "EIGRP Major version"; + } + leaf eigrp-minor-version { + type uint8; + description + "EIGRP Major version"; + } + leaf retransmission-count { + type uint32; + description + "Retransmission count"; + } + leaf retry-count { + type uint32; + description + "Retry count"; + } + leaf need-init { + type boolean; + description + "Need EIGRP Init message"; + } + leaf need-init-ack { + type boolean; + description + "Need EIGRP InitAck message"; + } + leaf reinitialization-needed { + type boolean; + description + "Reinitialization needed"; + } + leaf reinit-start { + type uint32; + description + "Reinit period"; + } + leaf peer-prefix-count { + type uint32; + description + "Prefix count"; + } + leaf stubbed { + type boolean; + description + "Is it stubbed"; + } + leaf allow-connected { + type boolean; + description + "Connected routes accepted"; + } + leaf allow-static { + type boolean; + description + "Static routes accepted"; + } + leaf allow-summaries { + type boolean; + description + "Summary routes accepted"; + } + leaf allow-redistributed { + type boolean; + description + "Redist'ed routes accepted"; + } + leaf test-handle { + type boolean; + description + "Test handle flag"; + } + leaf stubbed-interface { + type boolean; + description + "Is it stubbed"; + } + leaf suspended-reset { + type boolean; + description + "Suspension manually reset"; + } + leaf suspended-time-left { + type uint32; + description + "Suspended time left"; + } + list neighbor-queue { + description + "Neighbor Queue"; + uses EIGRP-SHOW-NBR-Q-BD; + } + } + + grouping EIGRP-SHOW-EVENTS-BD { + description + "EIGRP DUAL events"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf current-event-index { + type uint32; + description + "Current event"; + } + leaf eigrp-start-absolute-seconds { + type uint32; + units "second"; + description + "Seconds since EIGRP started (absolute)"; + } + leaf eigrp-start-absolute-nanoseconds { + type uint32; + units "second"; + description + "Seconds since EIGRP started (absolute)"; + } + leaf eigrp-start-relative-seconds { + type uint32; + units "second"; + description + "Seconds since EIGRP started (relative)"; + } + leaf eigrp-start-relative-nanoseconds { + type uint32; + units "second"; + description + "Seconds since EIGRP started (relative)"; + } + } + + grouping EIGRP-SHOW-INTERFACES-BD { + description + "An EIGRP interface"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf peer-count { + type uint32; + description + "Peer Count"; + } + leaf classic-peer-count { + type uint32; + description + "Classic Peer Count"; + } + leaf wide-peer-count { + type uint32; + description + "Wide Peer Count"; + } + leaf unreliable-transmits { + type uint32; + description + "Unreliable transmissions"; + } + leaf reliable-transmits { + type uint32; + description + "Reliable transmissions"; + } + leaf total-srtt { + type uint32; + description + "Total SRTT"; + } + leaf unreliable-send-interval { + type uint32; + description + "Send interval for Unreliable transmissions"; + } + leaf reliable-send-interval { + type uint32; + description + "Send interval for Reliable transmissions"; + } + leaf last-mc-flow-delay { + type uint32; + description + "Last multicast flow delay"; + } + leaf pending-routes { + type uint32; + description + "Number of pending routes"; + } + leaf hello-interval { + type uint32; + description + "Hello interval"; + } + leaf holdtime { + type uint32; + description + "Hold time"; + } + leaf bfd-enabled { + type boolean; + description + "BFD enabled"; + } + leaf bfd-interval { + type uint32; + description + "BFD interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + leaf serial-number-present { + type boolean; + description + "Is serno present"; + } + leaf transmit-serial-number { + type uint64; + description + "Thread serial number"; + } + leaf packetize-pending { + type boolean; + description + "Packetize Timer pending"; + } + leaf unreliable-multicast-sent { + type uint32; + description + "Unreliable multicasts sent"; + } + leaf reliable-multicast-sent { + type uint32; + description + "Reliable multicasts sent"; + } + leaf unreliable-unicast-sent { + type uint32; + description + "Unreliable unicasts sent"; + } + leaf reliable-unicast-sent { + type uint32; + description + "Reliable unicasts sent"; + } + leaf multicast-exceptions-sent { + type uint32; + description + "Multicast Exceptions sent"; + } + leaf cr-packets-sent { + type uint32; + description + "CR packets sent"; + } + leaf acks-suppressed { + type uint32; + description + "Suppressed Acks"; + } + leaf retransmissions-sent { + type uint32; + description + "Retransmissions sent"; + } + leaf out-of-sequence-received { + type uint32; + description + "Out-of-sequence received"; + } + leaf stub-interface { + type boolean; + description + "All stub peers"; + } + leaf next-hop-self-enabled { + type boolean; + description + "Next-hop-self enabled"; + } + leaf split-horizon-enabled { + type boolean; + description + "SplitHorizon enabled"; + } + leaf passive-interface { + type boolean; + description + "Interface is passive"; + } + leaf bandwidth-percent { + type uint32; + units "percentage"; + description + "Bandwidth percent"; + } + leaf site-of-origin-type { + type Eigrp-bd-soo; + description + "Site of Origin Type"; + } + leaf site-of-origin { + type string; + description + "Site of Origin"; + } + leaf auth-mode { + type uint32; + description + "Authentication Mode"; + } + leaf auth-keychain { + type string; + description + "Authentication Keychain Name"; + } + leaf auth-key-exists { + type boolean; + description + "Authentication key exists"; + } + leaf auth-key-md5 { + type boolean; + description + "Authentication key programmed with MD5 algorithm"; + } + leaf auth-key-id { + type uint64; + description + "Current active Authentication Key Id"; + } + leaf total-pkt-recvd { + type uint32; + description + "Total packets received"; + } + leaf pkt-drop-wrong-kc { + type uint32; + description + "Packets dropped due to wrong keychain configured"; + } + leaf pkt-drop-no-auth { + type uint32; + description + "Packets dropped due to missing authentication + data"; + } + leaf pkt-drop-invalid-auth { + type uint32; + description + "Packets dropped due to invalid authentication + data"; + } + leaf pkt-accepted-valid-auth { + type uint32; + description + "Packets accepted with valid authentication data"; + } + leaf bandwidth { + type uint32; + description + "Deprecated. Please migrate to use Bandwidth64."; + } + leaf bandwidth64 { + type uint64; + description + "Bandwidth"; + } + leaf delay { + type uint32; + description + "Deprecated. Please migrate to use Delay64. The + value of this object might wrap if it is in + picosecond units"; + } + leaf delay64 { + type uint64; + description + "Delay"; + } + leaf delay-unit { + type Eigrp-bd-delay-unit; + description + "Delay unit"; + } + leaf reliability { + type uint32; + description + "Reliability"; + } + leaf load { + type uint32; + description + "Load"; + } + leaf mtu { + type uint32; + description + "MTU"; + } + leaf configured-bandwidth { + type uint32; + description + "Deprecated. Please migrate to use + ConfiguredBandwidth64."; + } + leaf configured-bandwidth64 { + type uint64; + description + "Configured bandwidth"; + } + leaf configured-delay { + type uint32; + description + "Deprecated. Please migrate to use + ConfiguredDelay64. The value of this object + might wrap if it is in picosecond units"; + } + leaf configured-delay64 { + type uint64; + description + "Configured delay"; + } + leaf configured-delay-unit { + type Eigrp-bd-delay-unit; + description + "Configured delay unit"; + } + leaf configured-reliability { + type uint32; + description + "Configured reliability"; + } + leaf configured-load { + type uint32; + description + "Configured load"; + } + leaf configured-bandwidth-flag { + type boolean; + description + "Bandwidth configured"; + } + leaf configured-delay-flag { + type boolean; + description + "Delay configured"; + } + leaf configured-reliability-flag { + type boolean; + description + "Reliability configured"; + } + leaf configured-load-flag { + type boolean; + description + "Load configured"; + } + leaf up { + type boolean; + description + "Interface is UP"; + } + leaf type-supported { + type boolean; + description + "Interface type is supported"; + } + leaf ital-record-found { + type boolean; + description + "ITAL Record valid"; + } + leaf configured { + type boolean; + description + "Interface config exists"; + } + leaf multicast-enabled { + type boolean; + description + "Requested socket state"; + } + leaf socket-setup { + type boolean; + description + "Setup socket state"; + } + leaf lpts-socket-setup { + type boolean; + description + "Setup LPTS socket state"; + } + leaf primary-ipv4-address { + type inet:ipv4-address; + description + "Primary IPv4 Address"; + } + leaf ipv6-link-local-addr { + type inet:ipv6-address; + description + "IPv6 LL Address"; + } + leaf primary-prefix-length { + type uint32; + description + "Primary prefix length"; + } + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf interface-type { + type uint32; + description + "IM Interface Type"; + } + leaf configured-items { + type uint32; + description + "Interface Configured Items"; + } + leaf is-passive-enabled { + type boolean; + description + "Passive-Interface configured"; + } + leaf is-passive-disabled { + type boolean; + description + "Passive-Interface disabled"; + } + list static-neighbor { + description + "Static Neighbors"; + uses EIGRP-ADDR-BD; + } + } + + grouping EIGRP-SHOW-QUIESCENT-IF-BD { + description + "EIGRP Quiescent Interface"; + leaf quiescent-interface-list { + type string; + description + "Interface Name"; + } + } + + grouping EIGRP-SHOW-TOP-SUMMARY-BD { + description + "EIGRP Topology summary"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf thread-present { + type boolean; + description + "Is thread present ?"; + } + leaf transmit-serial-number { + type uint64; + description + "Thread serial number"; + } + leaf next-serial-number { + type uint64; + description + "Next serial number"; + } + leaf route-count { + type uint32; + description + "Number of routes"; + } + leaf path-count { + type uint32; + description + "Number of paths"; + } + leaf dummy-count { + type uint32; + description + "Dummy count"; + } + leaf ddb-name { + type string; + description + "DDB Name"; + } + leaf interface-count { + type uint32; + description + "Number of interfaces"; + } + leaf handles-used { + type uint32; + description + "Number of handles used"; + } + leaf active-interface-count { + type uint32; + description + "Number of active interfaces"; + } + list quiescent { + description + "Quiescent interfaces"; + uses EIGRP-SHOW-QUIESCENT-IF-BD; + } + } + + grouping EIGRP-SHOW-TRAFFIC-BD { + description + "EIGRP Traffic Statistics"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf hellos-sent { + type uint32; + description + "Hellos sent"; + } + leaf hellos-received { + type uint32; + description + "Hellos received"; + } + leaf updates-sent { + type uint32; + description + "Updates sent"; + } + leaf updates-received { + type uint32; + description + "Updates received"; + } + leaf queries-sent { + type uint32; + description + "Queries sent"; + } + leaf queries-received { + type uint32; + description + "Queries received"; + } + leaf replies-sent { + type uint32; + description + "Replies sent"; + } + leaf replies-received { + type uint32; + description + "Replies received"; + } + leaf acks-sent { + type uint32; + description + "Acks sent"; + } + leaf acks-received { + type uint32; + description + "Acks received"; + } + leaf sia-queries-sent { + type uint32; + description + "SIA Queries sent"; + } + leaf sia-queries-received { + type uint32; + description + "SIA Queries received"; + } + leaf sia-replies-sent { + type uint32; + description + "SIA Replies sent"; + } + leaf sia-replies-received { + type uint32; + description + "SIA Replies received"; + } + leaf max-queue-depth { + type uint32; + description + "Maximum queue depth"; + } + leaf queue-drops { + type uint32; + description + "Queue drops"; + } + } + + grouping EIGRP-PEER-STATS-BD { + description + "EIGRP peer prefix statistics"; + container source { + description + "Source address"; + uses EIGRP-ADDR-BD; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf state { + type int8; + description + "State"; + } + leaf interface-list { + type string; + description + "Interface name"; + } + leaf peer-prefix-count { + type uint32; + description + "Peer prefix count"; + } + leaf restart-count { + type uint32; + description + "Restart count"; + } + leaf time-left { + type uint32; + description + "Time left"; + } + } + + grouping EIGRP-SHOW-ACCOUNTING-BD { + description + "EIGRP Accounting"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf aggregate-count { + type uint32; + description + "Number of aggregates"; + } + leaf state { + type int8; + description + "Redist state"; + } + leaf redist-prefix-count { + type uint32; + description + "Redist prefix count"; + } + leaf restart-count { + type uint32; + description + "Restart count"; + } + leaf time-left { + type uint32; + description + "Time left"; + } + leaf redist-prefix-present { + type boolean; + description + "Are there redist'ed prefixes ?"; + } + list peer-statistics { + description + "Peers and their status"; + uses EIGRP-PEER-STATS-BD; + } + } + + grouping EIGRP-SHOW-ACT-BD { + description + "EIGRP route's active peer information"; + container source { + description + "Peer Address"; + uses EIGRP-ADDR-BD; + } + leaf peer-available { + type boolean; + description + "Peer available"; + } + leaf interface-list { + type string; + description + "Interface name"; + } + leaf handle-number { + type uint32; + description + "Handle number"; + } + } + + grouping EIGRP-SHOW-PATH-BD { + description + "An EIGRP path"; + container next-hop-address { + description + "Nexthop address"; + uses EIGRP-ADDR-BD; + } + container infosource { + description + "Source of route"; + uses EIGRP-ADDR-BD; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf next-hop-present { + type boolean; + description + "NH flag"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf interface-name { + type string; + description + "Interface name"; + } + leaf origin { + type Eigrp-bd-path-origin; + description + "Origin of route"; + } + leaf send-flag { + type Eigrp-bd-path-send-flag; + description + "Send flag"; + } + leaf reply-outstanding { + type boolean; + description + "Outstanding reply"; + } + leaf metric { + type uint32; + description + "Deprecated. Please migrate to use Metric64. The + value of this object might wrap since the metric + value can go up to (2^48 - 1) in 64-bit metric + mode"; + } + leaf metric64 { + type uint64; + description + "Metric"; + } + leaf successor-metric { + type uint32; + description + "Deprecated. Please migrate to use + SuccessorMetric64. The value of this object + might wrap since the metric value can go up to + (2^48 - 1) in 64-bit metric mode"; + } + leaf successor-metric64 { + type uint64; + description + "Successor metric"; + } + leaf reply-status { + type boolean; + description + "Reply status"; + } + leaf sia-status { + type boolean; + description + "SIA status"; + } + leaf transmit-serial-number { + type uint64; + description + "Transmit thread serial number"; + } + leaf anchored { + type boolean; + description + "Is Transmit thread anchored"; + } + leaf external-path { + type boolean; + description + "External"; + } + leaf bandwidth { + type uint32; + description + "Deprecated. Please migrate to use Bandwidth64."; + } + leaf bandwidth64 { + type uint64; + description + "Bandwidth"; + } + leaf delay { + type uint32; + description + "Deprecated. Please migrate to use Delay64. The + value of this object might wrap if it is in + picosecond units "; + } + leaf delay64 { + type uint64; + description + "Delay"; + } + leaf delay-unit { + type Eigrp-bd-delay-unit; + description + "Delay units"; + } + leaf mtu { + type uint32; + description + "MTU"; + } + leaf hop-count { + type uint32; + description + "Hopcount"; + } + leaf reliability { + type uint8; + description + "Reliability"; + } + leaf load { + type uint8; + description + "Load"; + } + leaf internal-router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf internal-tag { + type uint32; + description + "Internal Tag"; + } + leaf extended-communities-present { + type boolean; + description + "Extended communities present"; + } + leaf extended-communities-length { + type uint32; + description + "Length of extended communities"; + } + leaf extended-communities { + type yang:hex-string; + description + "Extended communities"; + } + leaf external-information-present { + type boolean; + description + "External information present"; + } + leaf external-router-id { + type uint32; + description + "Router ID"; + } + leaf external-this-system { + type boolean; + description + "Is it this system"; + } + leaf external-as { + type uint32; + description + "AS Number"; + } + leaf external-protocol { + type string; + description + "Protocol ID"; + } + leaf external-metric { + type uint32; + description + "Metric"; + } + leaf external-tag { + type uint32; + description + "Tag"; + } + leaf conditional-default-path { + type boolean; + description + "Conditional Default flag"; + } + leaf rib-state { + type Eigrp-bd-path-rib-state; + description + "State of path in RIB"; + } + } + + grouping EIGRP-PREFIX-BD { + description + "EIGRP IP v4/v6 Prefix"; + leaf ipv4-prefix { + type inet:ipv4-address; + description + "IPv4 Prefix"; + } + leaf ipv6-prefix { + type inet:ipv6-address; + description + "IPv6 Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + } + + grouping EIGRP-SHOW-ROUTE-BD { + description + "EIGRP Route"; + container prefix-xr { + description + "IP Prefix/length"; + uses EIGRP-PREFIX-BD; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf active { + type boolean; + description + "Active route"; + } + leaf successors { + type uint32; + description + "Successors"; + } + leaf successors-present { + type boolean; + description + "Are there successors"; + } + leaf old-metric { + type uint32; + description + "Deprecated. Please migrate to use OldMetric64. + The value of this object might wrap since the + metric value can go up to (2^48 - 1) in 64-bit + metric mode"; + } + leaf old-metric64 { + type uint64; + description + "Old metric"; + } + leaf metric { + type uint32; + description + "Deprecated. Please migrate to use Metric64. The + value of this object might wrap since the metric + value can go up to (2^48 - 1) in 64-bit metric + mode"; + } + leaf metric64 { + type uint64; + description + "Metric"; + } + leaf rib-metric { + type uint32; + description + "Metric downloaded to RIB"; + } + leaf tag { + type uint32; + description + "Tag"; + } + leaf send-flag { + type Eigrp-bd-path-send-flag; + description + "Send flag"; + } + leaf transmit-serial-number { + type uint64; + description + "Transmit thread Serial Number"; + } + leaf transmit-refcount { + type uint32; + description + "Transmit thread refcount"; + } + leaf transmit-anchored { + type boolean; + description + "Is Transmit thread anchored"; + } + leaf reply-handles { + type uint32; + description + "Reply handles used"; + } + leaf active-time-secs { + type uint32; + units "second"; + description + "Active time seconds"; + } + leaf active-time-nsecs { + type uint32; + units "nanosecond"; + description + "Active time nanoseconds"; + } + leaf origin { + type uint32; + description + "Origin"; + } + leaf retry-count { + type uint32; + description + "Retry count"; + } + leaf active-stats { + type boolean; + description + "Active stats flag"; + } + leaf min-time { + type uint32; + description + "Active stats min time"; + } + leaf max-time { + type uint32; + description + "Active stats max time"; + } + leaf average-time { + type uint32; + description + "Active stats average time"; + } + leaf ack-count { + type uint32; + description + "Active stats active count"; + } + leaf replies { + type uint32; + description + "Number of replies outstanding"; + } + leaf route-in-sia { + type boolean; + description + "Route is SIA"; + } + leaf sia-reply-handles { + type uint32; + description + "Reply handles used"; + } + list paths { + description + "Paths for this route"; + uses EIGRP-SHOW-PATH-BD; + } + list active-peer { + description + "Peers yet to respond"; + uses EIGRP-SHOW-ACT-BD; + } + list sia-peer { + description + "SIA Peers yet to respond"; + uses EIGRP-SHOW-ACT-BD; + } + } + + grouping EIGRP-ADDR-BD { + description + "EIGRP IP v4/v6 Address"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 Address"; + } + } + + grouping EIGRP-SHOW-STATIC-NEIGHBORS-BD { + description + "EIGRP Static neighbor"; + container source { + description + "Neighbor address"; + uses EIGRP-ADDR-BD; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf interface-list { + type string; + description + "Interface Name"; + } + } + + grouping EIGRP-SHOW-PROT-INT-BD { + description + "EIGRP Protocol Interface information"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf interface { + type string; + description + "Interface"; + } + leaf outbound-filter-policy { + type string; + description + "Outbound Filter Policy"; + } + leaf inbound-filter-policy { + type string; + description + "Inbound Filter Policy"; + } + leaf inactive { + type boolean; + description + "Interface is DOWN"; + } + leaf passive-interface { + type boolean; + description + "Interface is passive"; + } + } + + grouping EIGRP-SHOW-REDIST-BD { + description + "EIGRP Redist Protocol information"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf redistributed-protocol { + type string; + description + "Redistributed Protocol"; + } + leaf redistributed-protocol-tag { + type string; + description + "Redistributed Protocol tag"; + } + leaf redristribute-policy { + type string; + description + "Redistribute Filter policy"; + } + leaf redistribute-protocol-id { + type uint32; + description + "Redistributed Protocol ID"; + } + leaf rib-handle { + type uint32; + description + "Redistributed Protocol handle"; + } + } + + grouping EIGRP-SHOW-PROT-VRF-BD { + description + "EIGRP VRF protocol information"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf auto-summarization { + type boolean; + description + "Auto Summarization"; + } + leaf log-neighbor-changes { + type boolean; + description + "Neighbor changes logged"; + } + leaf log-neighbor-warnings { + type boolean; + description + "Neighbor warnings logged"; + } + leaf rib-table-limit-reached { + type boolean; + description + "RIB Table limit has been reached"; + } + leaf outbound-filter-policy { + type string; + description + "Outbound Filter Policy"; + } + leaf inbound-filter-policy { + type string; + description + "Inbound Filter Policy"; + } + leaf outgoing-candidate-default-flagged { + type boolean; + description + "Default Allowed Out"; + } + leaf outgoing-candidate-default-policy { + type string; + description + "Default Allowed Out Policy"; + } + leaf incoming-candidate-default-flagged { + type boolean; + description + "Default Allowed In"; + } + leaf incoming-candidate-default-policy { + type string; + description + "Default Allowed In Policy"; + } + leaf internal-distance { + type uint8; + description + "Internal Distance"; + } + leaf external-distance { + type uint8; + description + "External Distance"; + } + leaf maximum-paths { + type uint8; + description + "Maximum paths"; + } + leaf variance { + type uint8; + description + "Variance"; + } + leaf metric-weight-k1 { + type uint32; + description + "K1 value"; + } + leaf metric-weight-k2 { + type uint32; + description + "K2 value"; + } + leaf metric-weight-k3 { + type uint32; + description + "K3 value"; + } + leaf metric-weight-k4 { + type uint32; + description + "K4 value"; + } + leaf metric-weight-k5 { + type uint32; + description + "K5 value"; + } + leaf metric-weight-k6 { + type uint32; + description + "K6 value"; + } + leaf rib-scale { + type uint32; + description + "RIB Scale"; + } + leaf metric-version { + type Eigrp-bd-metric-version; + description + "Metric Version"; + } + leaf metric-maximum-hopcount { + type uint32; + description + "Metric MaxHops configured"; + } + leaf default-metric-configured { + type boolean; + description + "Default Metric Configured"; + } + leaf default-bandwidth { + type uint32; + description + "Default Bandwidth"; + } + leaf default-delay { + type uint32; + description + "Default Delay"; + } + leaf default-reliability { + type uint32; + description + "Default Reliability"; + } + leaf default-load { + type uint32; + description + "Default Load"; + } + leaf default-mtu { + type uint32; + description + "Default MTU"; + } + leaf stub-configured { + type boolean; + description + "Stub Configured"; + } + leaf stub-receive-only { + type boolean; + description + "Stub Receive-only configured"; + } + leaf stub-allow-connected-routes { + type boolean; + description + "ConnectedRoutes allowed"; + } + leaf stub-allow-static-routes { + type boolean; + description + "Static Routes allowed"; + } + leaf stub-allow-summary-routes { + type boolean; + description + "Summary Routes allowed"; + } + leaf stub-allow-redistributed-routes { + type boolean; + description + "Redistributed Routes allowed"; + } + leaf nsf-enabled { + type boolean; + description + "NSF Enabled"; + } + leaf nsf-route-hold-time { + type uint32; + description + "NSF Route Hold Time"; + } + leaf nsf-signal-time { + type uint32; + description + "NSF Signal Time"; + } + leaf nsf-converge-time { + type uint32; + description + "NSF Converge Time"; + } + leaf restart-configured { + type boolean; + description + "Is Restart time configured"; + } + leaf restart-time { + type uint32; + units "second"; + description + "Restart time (seconds)"; + } + leaf sia-active-time { + type uint32; + description + "SIA Active Time"; + } + leaf rib-protocol-id { + type uint32; + description + "RIB Protocol ID"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf ital-activation-received { + type boolean; + description + "VRF activated by ITAL"; + } + leaf vrf-activated { + type boolean; + description + "VRF activated by EIGRP"; + } + leaf up { + type boolean; + description + "VRF information available"; + } + leaf rib-initialized { + type boolean; + description + "RIB initialization for VRF"; + } + leaf rib-converged { + type boolean; + description + "RIB convergence for VRF"; + } + leaf rib-converged-reload { + type boolean; + description + "Reload following RIB Convergence"; + } + leaf socket-request { + type boolean; + description + "Requested Socket Option for VRF"; + } + leaf socket-setup { + type boolean; + description + "Setup socket state for VRF"; + } + leaf default-vrf { + type boolean; + description + "VRF represents default-context"; + } + leaf af-enabled { + type boolean; + description + "AF Enabled"; + } + leaf is-passive-default { + type boolean; + description + "Passive-Interface default configured"; + } + leaf configured-items { + type uint32; + description + "VRF Configured Items"; + } + leaf af-configured-items { + type uint32; + description + "AF Configured Items"; + } + leaf ip-arm-router-id { + type uint32; + description + "IP ARM Router ID"; + } + leaf first-interface-up-address { + type uint32; + description + "IP Address of first UP interface"; + } + leaf nsf-in-progress { + type uint32; + description + "DDB NSF in progress indication"; + } + leaf rib-table-converged { + type uint32; + description + "RIB Table convergence indication"; + } + list redistributed-protocol { + description + "Redistributed Protocols"; + uses EIGRP-SHOW-REDIST-BD; + } + list interface { + description + "Interfaces"; + uses EIGRP-SHOW-PROT-INT-BD; + } + } + + grouping EIGRP-VRFS-BD { + description + "EIGRP VRF Name"; + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper.yang new file mode 100644 index 000000000..1ddde3e7d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-eigrp-oper.yang @@ -0,0 +1,239 @@ +module Cisco-IOS-XR-eigrp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-eigrp-oper"; + prefix eigrp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-eigrp-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-eigrp-oper-sub1 { + revision-date 2020-09-14; + } + + 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 eigrp package operational data. + + This module contains definitions + for the following management objects: + eigrp: EIGRP operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-14 { + description + "Changed Internal tag value to 32-bit."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-04-05 { + description + "Oper supported provided for oper data."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container eigrp { + config false; + description + "EIGRP operational data"; + container processes { + description + "Operational data for an EIGRP process"; + list process { + key "process-id"; + description + "Operational data for an EIGRP process"; + container vrfs-xr { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "A VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses EIGRP-VRFS-BD; + } + } + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "Operational data for a VRF"; + container afs { + description + "List of Address Families"; + list af { + key "af-name"; + description + "Operational data for one AF"; + container protocol { + description + "Address family specific protocol + information"; + uses EIGRP-SHOW-PROT-VRF-BD; + } + container ases { + description + "List of Autonomous Systems"; + list as { + key "asn"; + description + "Operational data for one AS"; + container static-neighbors { + description + "EIGRP static neighbors"; + list static-neighbor { + key "neighbor-address"; + description + "Information on one static EIGRP + neighbor"; + leaf neighbor-address { + type xr:Cisco-ios-xr-string; + description + "Neighbor Address"; + } + uses EIGRP-SHOW-STATIC-NEIGHBORS-BD; + } + } + container topology-routes { + description + "EIGRP topology table"; + list topology-route { + description + "Information about one EIGRP route"; + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "IP Prefix"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "IP Prefix length"; + } + uses EIGRP-SHOW-ROUTE-BD; + } + } + container eigrp-accounting { + description + "Accounting info for one VRF AF"; + uses EIGRP-SHOW-ACCOUNTING-BD; + } + container eigrp-traffic { + description + "Traffic info for one VRF AF"; + uses EIGRP-SHOW-TRAFFIC-BD; + } + container eigrp-topology-summary { + description + "Topology summary info for one VRF AF"; + uses EIGRP-SHOW-TOP-SUMMARY-BD; + } + container interfaces { + description + "EIGRP interfaces"; + list interface { + key "interface-name"; + description + "Information for an EIGRP interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses EIGRP-SHOW-INTERFACES-BD; + } + } + container eigrp-events { + description + "Events for a specific VRF AF"; + uses EIGRP-SHOW-EVENTS-BD; + } + container neighbors { + description + "EIGRP neighbors"; + list neighbor { + key "neighbor-address"; + description + "Information on one EIGRP neighbor"; + leaf neighbor-address { + type xr:Cisco-ios-xr-string; + description + "Neighbor Address"; + } + uses EIGRP-SHOW-NEIGHBORS-BD; + } + } + container eigrp-statistics { + description + "Statistics for a specific VRF AF"; + uses EIGRP-SHOW-AF-STATS-BD; + } + leaf asn { + type uint32 { + range "1..65535"; + } + description + "AS number"; + } + } + } + leaf af-name { + type dt1:Eigrp-af; + description + "Address Family"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + } + } + leaf process-id { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "AS number or Virtual instance name of the + EIGRP process"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper-sub1.yang new file mode 100644 index 000000000..a602e4854 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper-sub1.yang @@ -0,0 +1,136 @@ +submodule Cisco-IOS-XR-emon-oper-sub1 { + belongs-to Cisco-IOS-XR-emon-oper { + prefix Cisco-IOS-XR-emon-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR emon package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-08 { + description + "and entry for show controller switch bridge"; + } + revision 2019-03-01 { + description + "Rename esdma-oper to switch-oper, esdma-emon-oper to emon-oper"; + } + revision 2019-02-07 { + description + "Rework clear and set operations."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ESDMA-SHOW-EMON-PATH-ENTRY { + description + "show ethernet EMON path entry"; + leaf path-name { + type string { + length "0..64"; + } + description + "Path name"; + } + leaf tx-hb-packets { + type uint64; + description + "Tx heartbeat packets"; + } + leaf tx-hb-resp-packets { + type uint64; + description + "Tx heartbeat response packets"; + } + leaf rx-hb-packets { + type uint64; + description + "Rx heartbeat packets"; + } + leaf rx-hb-resp-packets { + type uint64; + description + "Rx heartbeat response packets"; + } + leaf rx-hb-resp-packet-misses { + type uint64; + description + "Rx heartbeat response packet misses"; + } + leaf rx-emon-stop-packets { + type uint64; + description + "Rx EMON stop packets"; + } + leaf rx-emon-fdb-flush-packets { + type uint64; + description + "Rx EMON FDB flush packets"; + } + leaf tx-emon-fdb-flush-packets { + type uint64; + description + "Tx EMON FDB flush packets"; + } + } + + grouping ESDMA-SHOW-EMON-CARD-ENTRY { + description + "show ethernet EMON card entry"; + leaf remote-card { + type string { + length "0..16"; + } + description + "Remote card name"; + } + list emon-path-entry { + description + "EMON path entry"; + uses ESDMA-SHOW-EMON-PATH-ENTRY; + } + } + + grouping ESDMA-SHOW-EMON-STATS-INFO { + description + "show ethernet EMON statistics info"; + leaf local-card { + type string { + length "0..16"; + } + description + "Local card name"; + } + list emon-card-entry { + description + "EMON card entry"; + uses ESDMA-SHOW-EMON-CARD-ENTRY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper.yang new file mode 100644 index 000000000..d14430764 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-emon-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-emon-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-emon-oper"; + prefix emon-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-emon-oper-sub1 { + revision-date 2019-04-05; + } + + 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 emon package operational data. + + This module contains definitions + for the following management objects: + show-emon: EMON statistics + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-08 { + description + "and entry for show controller switch bridge"; + } + revision 2019-03-01 { + description + "Rename esdma-oper to switch-oper, esdma-emon-oper to emon-oper"; + } + revision 2019-02-07 { + description + "Rework clear and set operations."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-emon { + config false; + description + "EMON statistics"; + container emon-statistics { + description + "EMON TX and RX statistics"; + container emon-statistics-instances { + description + "Table of EmonStatisticsLocation"; + list emon-statistics-instance { + key "node-id"; + description + "Location information for EMON statistics"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-EMON-STATS-INFO; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-alt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-alt-cfg.yang new file mode 100644 index 000000000..e06dfc85b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-alt-cfg.yang @@ -0,0 +1,57 @@ +module Cisco-IOS-XR-envmon-alt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-envmon-alt-cfg"; + prefix envmon-alt-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-envmon-cfg { + prefix a1; + } + + 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 envmon-alt package configuration. + + This YANG module augments the + Cisco-IOS-XR-envmon-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:environmental-monitoring" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-envmon-cfg'"; + leaf altitude { + type uint32 { + range "0..4000"; + } + description + "Altitude value in meters"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-cfg.yang new file mode 100644 index 000000000..012ee396d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-cfg.yang @@ -0,0 +1,168 @@ +module Cisco-IOS-XR-envmon-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-envmon-cfg"; + prefix envmon-cfg; + + 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 envmon package configuration. + + This module contains definitions + for the following management objects: + environmental-monitoring: Environmental Monitoring Operational + data space + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-10 { + description + "IOS XR 7.6.1 revision. Changed alarm port description length.."; + semver:module-version "2.0.0"; + } + revision 2020-09-08 { + description + "IOS XR 7.3.1 revision. Added Alarm port config."; + semver:module-version "1.2.0"; + } + revision 2019-10-15 { + description + "IOS XR 7.0.12 revision. Added chassis door alarm."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Description-str { + type string { + length "1..40"; + } + description + "Description str"; + } + + typedef Trigger-state { + type enumeration { + enum "open" { + value 0; + description + "Trigger on Open"; + } + enum "closed" { + value 1; + description + "Trigger is Closed"; + } + } + description + "Trigger state"; + } + + typedef Severity { + type string { + pattern "(minor)|(major)|(critical)"; + } + description + "minor: minor alarm, major: major alarm, critical: + critical alarm"; + } + + container environmental-monitoring { + description + "Environmental Monitoring Operational data space"; + container fan-ctrl-optics { + status deprecated; + description + "Control chassis fan status"; + leaf enable { + type boolean; + default "false"; + status deprecated; + description + "Enable or disable higher fan speed"; + } + } + container air-filter { + description + "Chassis air-filter status"; + container replaced { + description + "air-filter replaced date"; + leaf date { + type string; + description + "CCYY-MM-DD format"; + } + } + } + container chassis-door-alarm { + description + "Control chassis door alarm"; + leaf enable { + type boolean; + default "false"; + description + "Enable or disable chassis door alarm"; + } + } + container alarm-contacts { + description + "Control alarm port behavior"; + list alarm-contact { + key "name"; + description + "Alarm port number"; + leaf severity { + type Severity; + description + "Trigger on open or close"; + } + leaf description { + type Description-str; + description + "Description of the alarm"; + } + leaf trigger { + type Trigger-state; + default "open"; + description + "Trigger alarm on pin open or closed"; + } + leaf name { + type uint32; + description + "Alarm contact number"; + } + } + } + leaf min-fan-speed { + type uint32 { + range "0..100"; + } + description + "Min default fan speed in PWM"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub1.yang new file mode 100644 index 000000000..e0d9994a8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub1.yang @@ -0,0 +1,299 @@ +submodule Cisco-IOS-XR-envmon-oper-sub1 { + belongs-to Cisco-IOS-XR-envmon-oper { + prefix Cisco-IOS-XR-envmon-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR envmon package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-04 { + description + "IOS XR 7.9.1 revision. Changed power used and allocated names."; + semver:module-version "2.0.0"; + } + revision 2021-06-10 { + description + "IOS XR 7.5.1 revision. Decoupled chassis sensors from being reported as part of RP card"; + semver:module-version "1.2.0"; + } + revision 2020-09-25 { + description + "IOS XR 7.3.1 revision. Added alarm port oper commands."; + semver:module-version "1.1.0"; + } + revision 2020-04-07 { + description + "IOS XR 7.2.1 revision. Added extra description to interpret Threshold Value -32768."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DPB-CLIENT-PORTS-DATA-B { + description + "DPB Client Ports Data"; + leaf port { + type uint32; + description + "Port Number"; + } + leaf power { + type uint32; + description + "Power Alloc"; + } + leaf location { + type string; + description + "Port location"; + } + } + + grouping DPB-CLIENTS-PWR-INFO-B { + description + "Consumer DPB Clients Power Info"; + leaf client-name { + type string; + description + "Client Name"; + } + leaf bulk-power { + type uint32; + description + "Bulk Power"; + } + leaf ports-allocated-power { + type uint32; + description + "Ports Allocated Power"; + } + leaf ports-data-count { + type uint32; + description + "Ports Data Count"; + } + list dpb-client-ports-data { + description + "DPB Client Ports Data Array"; + uses DPB-CLIENT-PORTS-DATA-B; + } + } + + grouping CONSUMER-PWR-INFO-B { + description + "Power Consumer Info"; + leaf node-name { + type string; + description + "Name of the Node"; + } + leaf node-type { + type string; + description + "PID of the Entity"; + } + leaf power-allocated { + type uint32; + description + "Power Allocated"; + } + leaf power-used { + type uint32; + description + "Power Used"; + } + leaf node-status { + type string; + description + "Node Status"; + } + leaf slot { + type uint32; + description + "Slot number"; + } + list dpb-clients-power-info-array { + description + "DPB Clients Power Info Array"; + uses DPB-CLIENTS-PWR-INFO-B; + } + } + + grouping CHASSIS-PWR-GRP-INFO-B { + description + "Group Level Power Info"; + leaf total-pwr-in { + type uint64; + description + "Total Power Input in watts"; + } + leaf total-pwr-out { + type uint64; + description + "Total Power Output in watts"; + } + leaf total-current-in-a { + type string; + description + "Total Current Input A in amps"; + } + leaf total-current-in-b { + type string; + description + "Total Current Input B in amps"; + } + leaf total-current-out { + type string; + description + "Total Current Output in amps"; + } + leaf total-output-capacity { + type uint64; + description + "Total Output capacity in watts"; + } + } + + grouping CHASSIS-PWR-INFO-B { + description + "Chassis Level Power Info"; + leaf total-pwr-required { + type uint32; + description + "Total Power required"; + } + leaf red-mode { + type uint32; + description + "Redundancy Mode"; + } + leaf total-pe-ms { + type uint32; + description + "Total Number of PEMs"; + } + leaf red-num-pe-ms { + type uint32; + description + "Redundant Number of PEMs"; + } + leaf psu-non-fruable { + type uint8; + description + "PSU Fixed Hardware"; + } + leaf total-out-capacity { + type uint32; + description + "Total out capacity"; + } + leaf total-pwr-output { + type uint32; + description + "Total Power output"; + } + leaf total-pwr-input { + type uint32; + description + "Total Power input"; + } + list grp-info { + max-elements "3"; + description + "Total Info Group Wise"; + uses CHASSIS-PWR-GRP-INFO-B; + } + } + + grouping PRODUCER-PWR-PEM-INFO-B { + description + "Power Producer PEM Info"; + leaf node-name { + type string; + description + "Name of the Node"; + } + leaf node-type { + type string; + description + "PID of the PEM"; + } + leaf num-feed { + type uint32; + description + "Number of Feeds"; + } + leaf voltage-in-a { + type uint32; + description + "Input Voltage A"; + } + leaf voltage-in-b { + type uint32; + description + "Input Voltage B"; + } + leaf voltage-out { + type uint32; + description + "Output Voltage"; + } + leaf current-in-a { + type uint32; + description + "Input Current A"; + } + leaf current-in-b { + type uint32; + description + "Input Current B"; + } + leaf current-out { + type uint32; + description + "Output Current"; + } + leaf node-status { + type string; + description + "Node Status"; + } + } + + grouping PRODUCER-PWR-PT-INFO-B { + description + "Power Producer PT Info"; + list pem-info-array { + description + "PEM Info Array"; + uses PRODUCER-PWR-PEM-INFO-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub2.yang new file mode 100644 index 000000000..5790db5ff --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper-sub2.yang @@ -0,0 +1,124 @@ +submodule Cisco-IOS-XR-envmon-oper-sub2 { + belongs-to Cisco-IOS-XR-envmon-oper { + prefix Cisco-IOS-XR-envmon-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR envmon package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-04 { + description + "IOS XR 7.9.1 revision. Changed power used and allocated names."; + semver:module-version "2.0.0"; + } + revision 2021-06-10 { + description + "IOS XR 7.5.1 revision. Decoupled chassis sensors from being reported as part of RP card"; + semver:module-version "1.2.0"; + } + revision 2020-09-25 { + description + "IOS XR 7.3.1 revision. Added alarm port oper commands."; + semver:module-version "1.1.0"; + } + revision 2020-04-07 { + description + "IOS XR 7.2.1 revision. Added extra description to interpret Threshold Value -32768."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SPI-ENVMON-SENSOR-DATA-B { + description + "Sensor Data structure"; + leaf sensor-value { + type int32; + description + "Value of Sensor"; + } + leaf critical-low-threshold { + type int32; + description + "Critical Low Threshold Value, interpret -32768 + value as N/A"; + } + leaf critical-high-threshold { + type int32; + description + "Critical High Threshold Value, interpret -32768 + value as N/A"; + } + leaf major-low-threshold { + type int32; + description + "Major Low Threshold Value, interpret -32768 + value as N/A"; + } + leaf major-high-threshold { + type int32; + description + "Major High Threshold Value, interpret -32768 + value as N/A"; + } + leaf minor-low-threshold { + type int32; + description + "Minor Low Threshold Value, interpret -32768 + value as N/A"; + } + leaf minor-high-threshold { + type int32; + description + "Minor High Threshold Value, interpret -32768 + value as N/A"; + } + leaf name-xr { + type string; + description + "Name of Sensor"; + } + leaf location { + type string; + description + "Location of Sensor"; + } + leaf fru-type { + type string; + description + "FRU Type"; + } + leaf status { + type uint32; + description + "Sensor Operational Status"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper.yang new file mode 100644 index 000000000..3d7e75573 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-envmon-oper.yang @@ -0,0 +1,189 @@ +module Cisco-IOS-XR-envmon-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-envmon-oper"; + prefix envmon-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-envmon-oper-sub2 { + revision-date 2022-11-04; + } + include Cisco-IOS-XR-envmon-oper-sub1 { + revision-date 2022-11-04; + } + + 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 envmon package operational data. + + This module contains definitions + for the following management objects: + environmental-monitoring: Environmental Monitoring Operational + data space + power-management: Power tray and power module management + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-04 { + description + "IOS XR 7.9.1 revision. Changed power used and allocated names."; + semver:module-version "2.0.0"; + } + revision 2021-06-10 { + description + "IOS XR 7.5.1 revision. Decoupled chassis sensors from being reported as part of RP card"; + semver:module-version "1.2.0"; + } + revision 2020-09-25 { + description + "IOS XR 7.3.1 revision. Added alarm port oper commands."; + semver:module-version "1.1.0"; + } + revision 2020-04-07 { + description + "IOS XR 7.2.1 revision. Added extra description to interpret Threshold Value -32768."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container environmental-monitoring { + config false; + description + "Environmental Monitoring Operational data space"; + list rack { + key "name"; + description + "Rack Number"; + container nodes { + description + "Table of nodes"; + list node { + key "node"; + description + "Node Number"; + container sensor-types { + description + "Table of all sensor types"; + list sensor-type { + key "type"; + description + "Sensor Type"; + container sensor-names { + description + "Table of sensors"; + list sensor-name { + key "name"; + description + "Name of sensor"; + leaf name { + type string; + description + "Sensor name"; + } + uses SPI-ENVMON-SENSOR-DATA-B; + } + } + leaf type { + type xr:Cisco-ios-xr-string; + description + "Sensor Type"; + } + } + } + leaf node { + type xr:Node-id; + description + "Node ID"; + } + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + } + } + container power-management { + config false; + description + "Power tray and power module management"; + list rack { + key "name"; + description + "Rack identifier"; + container producers { + description + "Power producers information"; + container producer-nodes { + description + "Table of power producer nodes"; + list producer-node { + key "node"; + description + "Power producer node identifier"; + leaf node { + type xr:Node-id; + description + "Node ID"; + } + uses PRODUCER-PWR-PT-INFO-B; + } + } + } + container chassis { + description + "Chassis level information"; + uses CHASSIS-PWR-INFO-B; + } + container consumers { + description + "Power consumers info"; + container consumer-nodes { + description + "Table of power consumer nodes"; + list consumer-node { + key "node"; + description + "Consumer node identifier"; + leaf node { + type xr:Node-id; + description + "Node ID"; + } + uses CONSUMER-PWR-INFO-B; + } + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-erp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-erp-cfg.yang new file mode 100644 index 000000000..5ef60db6a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-erp-cfg.yang @@ -0,0 +1,98 @@ +module Cisco-IOS-XR-erp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-erp-cfg"; + prefix erp-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 erp package configuration. + + This module contains definitions + for the following management objects: + erp: Ethernet Ring Protection + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container erp { + description + "Ethernet Ring Protection"; + container profiles { + description + "G.8032 Ethernet Ring Protection"; + list profile { + key "profile-name"; + description + "G.8032 ring profile configuration"; + container timer { + description + "G.8032 timer"; + leaf guard-timer { + type uint32 { + range "10..2000"; + } + units "millisecond"; + description + "milliseconds"; + } + leaf hold-off-timer { + type uint32 { + range "0..10"; + } + units "second"; + description + "Hold off timer"; + } + leaf wtr-timer { + type uint32 { + range "1..12"; + } + units "minute"; + description + "Wait-to-Restore timer"; + } + } + leaf non-revertive { + type empty; + description + "Non-revertive ring instance"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "ERP profile name string"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper-sub1.yang new file mode 100644 index 000000000..1bd8b6875 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper-sub1.yang @@ -0,0 +1,639 @@ +submodule Cisco-IOS-XR-erp-oper-sub1 { + belongs-to Cisco-IOS-XR-erp-oper { + prefix Cisco-IOS-XR-erp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR erp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Erp-ring-mode { + type enumeration { + enum "closed-ring" { + description + "Closed R-APS Channel Topology"; + } + enum "open-ring" { + description + "Open R-APS Channel Topology"; + } + } + description + "Ethernet Ring G.8032 R-APS Channel Topology Mode"; + } + + typedef Erp-revertive-mode { + type enumeration { + enum "non-revertive" { + description + "Non-revertive Mode"; + } + enum "revertive" { + description + "Revertive Mode"; + } + } + description + "Ethernet Ring G.8032 Revertive Mode"; + } + + typedef Erp-port-status { + type enumeration { + enum "unblocked" { + description + "Unblocked"; + } + enum "blocked" { + description + "Blocked"; + } + } + description + "Ethernet Ring G.8032 Port Status Information"; + } + + typedef Erp-fault-status { + type enumeration { + enum "no-fault" { + description + "No Fault Detected"; + } + enum "faulty" { + description + "Fault Detected"; + } + } + description + "Ethernet Ring G.8032 Port Fault Status"; + } + + typedef Erp-link { + type enumeration { + enum "non-rpl" { + description + "Non-RPL link"; + } + enum "rpl" { + description + "RPL link"; + } + } + description + "Ethernet Ring G.8032 Link Type"; + } + + typedef Erp-sm-state { + type enumeration { + enum "init" { + description + "Init State"; + } + enum "idle" { + description + "Idle State"; + } + enum "protection" { + description + "Protection State"; + } + enum "manual-switch" { + description + "Manual Switch State"; + } + enum "forced-switch" { + description + "Forced Switch State"; + } + enum "pending" { + description + "Pending State"; + } + } + description + "Ethernet Ring G.8032 State Machine State"; + } + + typedef Erp-bag-node { + type enumeration { + enum "normal" { + description + "Normal Node"; + } + enum "rpl-owner" { + description + "RPL Owner"; + } + enum "rpl-neighbor" { + description + "RPL Neighbor"; + } + enum "rpl-next-neighbor" { + description + "RPL Next Neighbor"; + } + } + description + "Ethernet Ring G.8032 Node Type"; + } + + grouping ERP-BRIEF-INFO { + description + "Ethernet Ring G.8032 Brief Information"; + leaf node-type { + type Erp-bag-node; + description + "Node Type"; + } + leaf ring-state { + type Erp-sm-state; + description + "Ring State"; + } + list ports { + max-elements "2"; + description + "Port Information"; + uses ERP-PORT-INFO; + } + } + + grouping ERP-SUMMARY-INFO { + description + "Ethernet Ring G.8032 Summary Information"; + leaf node { + type string; + description + "Device Node ID"; + } + leaf init-state { + type uint16; + description + "Count of instances in Init state"; + } + leaf idle-state { + type uint16; + description + "Count of instances in Idle state"; + } + leaf manual-switch-state { + type uint16; + description + "Count of instances in Manual Switch state"; + } + leaf forced-switch-state { + type uint16; + description + "Count of instances in Forced Switch state"; + } + leaf protection-state { + type uint16; + description + "Count of instances in Protection state"; + } + leaf pending-state { + type uint16; + description + "Count of instances in Pending state"; + } + } + + grouping ERP-INSTANCE-STATS-INFO { + description + "Ethernet Ring G.8032 Instance Statistics info"; + leaf init-time { + type string; + units "millisecond"; + description + "Time the ring instance is last in Initialization + state. The time format is: Thu Jan 01 HH:MM:SS + .000 ZZZ, where 000 is milliseconds and ZZZ is + the timezone"; + } + leaf idle-time { + type string; + units "millisecond"; + description + "Time the ring instance is last in Idle state. + The time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf manual-switch-time { + type string; + units "millisecond"; + description + "Time the ring instance is last in Manual Switch + state. The time format is: Thu Jan 01 HH:MM:SS + .000 ZZZ, where 000 is milliseconds and ZZZ is + the timezone"; + } + leaf forced-switch-time { + type string; + units "millisecond"; + description + "Time the ring instance is last in Forced Switch + state. The time format is: Thu Jan 01 HH:MM:SS + .000 ZZZ, where 000 is milliseconds and ZZZ is + the timezone"; + } + leaf protection-time { + type string; + units "millisecond"; + description + "Time the ring instance is last in Protection + state. The time format is: Thu Jan 01 HH:MM:SS + .000 ZZZ, where 000 is milliseconds and ZZZ is + the timezone"; + } + leaf pending-time { + type string; + units "millisecond"; + description + "Time the ring instance is last in Pending state. + The time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + } + + grouping ERP-PORT-STATS-INFO { + description + "Ethernet Ring G.8032 Port Statistics info"; + leaf local-sf { + type uint32; + description + "Count of local Signal Fail detected"; + } + leaf nr-tx-count { + type uint32; + description + "Count of R-APS(NR) transmitted"; + } + leaf nr-rb-tx-count { + type uint32; + description + "Count of R-APS(NR,RB) transmitted"; + } + leaf sf-tx-count { + type uint32; + description + "Count of R-APS(SF) transmitted"; + } + leaf ms-tx-count { + type uint32; + description + "Count of R-APS(MS) transmitted"; + } + leaf fs-tx-count { + type uint32; + description + "Count of R-APS(FS) transmitted"; + } + leaf ev-tx-count { + type uint32; + description + "Count of R-APS(EVENT) transmitted"; + } + leaf nr-rx-count { + type uint32; + description + "Count of R-APS(NR) received"; + } + leaf nr-rb-rx-count { + type uint32; + description + "Count of R-APS(NR,RB) received"; + } + leaf sf-rx-count { + type uint32; + description + "Count of R-APS(SF) received"; + } + leaf ms-rx-count { + type uint32; + description + "Count of R-APS(MS) received"; + } + leaf fs-rx-count { + type uint32; + description + "Count of R-APS(FS) received"; + } + leaf ev-rx-count { + type uint32; + description + "Count of R-APS(EVENT) received"; + } + leaf last-nr-tx { + type string; + units "millisecond"; + description + "Time the last R-APS(NR) was transmitted. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf last-nr-rb-tx { + type string; + units "millisecond"; + description + "Time the last R-APS(NR,RB) was transmitted. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf last-sf-tx { + type string; + units "millisecond"; + description + "Time the last R-APS(SF) was transmitted. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf last-ms-tx { + type string; + units "millisecond"; + description + "Time the last R-APS(MS) was transmitted. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf last-fs-tx { + type string; + units "millisecond"; + description + "Time the last R-APS(FS) was transmitted. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf last-ev-tx { + type string; + units "millisecond"; + description + "Time the last R-APS(EVENT) was transmitted. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf last-nr-rx { + type string; + units "millisecond"; + description + "Time the last R-APS(NR) was received. The time + format is: Thu Jan 01 HH:MM:SS.000 ZZZ, where + 000 is milliseconds and ZZZ is the timezone"; + } + leaf last-nr-rb-rx { + type string; + units "millisecond"; + description + "Time the last R-APS(NR,RB) was received. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + leaf last-sf-rx { + type string; + units "millisecond"; + description + "Time the last R-APS(SF) was received. The time + format is: Thu Jan 01 HH:MM:SS.000 ZZZ, where + 000 is milliseconds and ZZZ is the timezone"; + } + leaf last-ms-rx { + type string; + units "millisecond"; + description + "Time the last R-APS(MS) was received. The time + format is: Thu Jan 01 HH:MM:SS.000 ZZZ, where + 000 is milliseconds and ZZZ is the timezone"; + } + leaf last-fs-rx { + type string; + units "millisecond"; + description + "Time the last R-APS(FS) was received. The time + format is: Thu Jan 01 HH:MM:SS.000 ZZZ, where + 000 is milliseconds and ZZZ is the timezone"; + } + leaf last-ev-rx { + type string; + units "millisecond"; + description + "Time the last R-APS(EVENT) was received. The + time format is: Thu Jan 01 HH:MM:SS.000 ZZZ, + where 000 is milliseconds and ZZZ is the + timezone"; + } + } + + grouping ERP-STATS-INFO { + description + "Ethernet Ring G.8032 Statistics Information"; + container instance-statistics { + description + "Ring instance statistics information"; + uses ERP-INSTANCE-STATS-INFO; + } + list port-statistic { + max-elements "2"; + description + "Port statistics information"; + uses ERP-PORT-STATS-INFO; + } + } + + grouping ERP-PROFILE-INFO { + description + "Ethernet Ring G.8032 Profile Information"; + leaf wtr-timer { + type uint16; + units "minute"; + description + "WTR Timer Value in minutes"; + } + leaf hold-off-timer { + type uint16; + units "millisecond"; + description + "Hold-off Timer Value in milliseconds"; + } + leaf guard-timer { + type uint16; + units "second"; + description + "Guard Timer Value in seconds"; + } + leaf revertive-mode { + type Erp-revertive-mode; + description + "Revertive/Non-revertive Mode"; + } + } + + grouping ERP-PORT-INFO { + description + "Ethernet Ring G.8032 Port Information"; + leaf interface-name { + type string; + description + "Physical Interface Name"; + } + leaf monitor-interface-name { + type string; + description + "Monitoring Interface Name"; + } + leaf aps-channel { + type string; + description + "APS Channel"; + } + leaf link-type { + type Erp-link; + description + "RPL or Non-RPL"; + } + leaf fault-detected { + type Erp-fault-status; + description + "Fault detected on interface"; + } + leaf present { + type boolean; + description + "Interface is present"; + } + leaf ring-port-status { + type Erp-port-status; + description + "Status of ring port"; + } + leaf local-fs { + type boolean; + description + "Local forced switch of port"; + } + leaf local-ms { + type boolean; + description + "Local manual switch of port"; + } + leaf node { + type string; + description + "Remote R-APS Node ID"; + } + leaf blocked-port-reference { + type uint8; + description + "Blocked Port Reference"; + } + leaf interface-handle { + type uint64; + description + "Physical Interface Handle"; + } + leaf monitor-interface-handle { + type uint64; + description + "Monitoring Interface Handle"; + } + leaf aps-interface-handle { + type uint64; + description + "APS Interface Handle"; + } + } + + grouping ERP-STATUS-INFO { + description + "Ethernet Ring G8032 Status Information"; + leaf node-type { + type Erp-bag-node; + description + "Node Type"; + } + leaf ring-state { + type Erp-sm-state; + description + "Ring State"; + } + leaf aps-level { + type uint8; + description + "APS Level"; + } + leaf profile-name { + type string; + description + "Profile Name"; + } + leaf wtr-timer { + type uint16; + units "minute"; + description + "WTR Timer Value in minutes"; + } + leaf hold-off-timer { + type uint16; + units "millisecond"; + description + "Hold-off Timer Value in milliseconds"; + } + leaf guard-timer { + type uint16; + units "second"; + description + "Guard Timer Value in seconds"; + } + leaf revertive-mode { + type Erp-revertive-mode; + description + "Revertive or Non-revertive Mode"; + } + leaf aps-channel-topology { + type Erp-ring-mode; + description + "Open or Closed R-APS Topology"; + } + list ports { + max-elements "2"; + description + "Port Information"; + uses ERP-PORT-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper.yang new file mode 100644 index 000000000..08592fa67 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-erp-oper.yang @@ -0,0 +1,160 @@ +module Cisco-IOS-XR-erp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-erp-oper"; + prefix erp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-erp-oper-sub1 { + revision-date 2019-04-05; + } + + 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 erp package operational data. + + This module contains definitions + for the following management objects: + ethernet-ring: Ethernet Ring Protection operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ethernet-ring { + config false; + description + "Ethernet Ring Protection operational data"; + container global { + description + "G.8032 Ethernet Ring Protection global + operational data"; + container g8032 { + description + "G.8032 Ethernet Ring Protection operational + data"; + container statuses { + description + "Detailed status information for Ethernet ring"; + list status { + description + "Detailed status information on a particular + ring instance"; + leaf ring-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Ring name"; + } + leaf instance-id { + type uint32 { + range "1..2"; + } + description + "Ring instance ID"; + } + uses ERP-STATUS-INFO; + } + } + container profiles { + description + "G.8032 Ethernet ring profile table"; + list profile { + key "profile-name"; + description + "Ethernet ring profile information for a + specified profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Profile name"; + } + uses ERP-PROFILE-INFO; + } + } + container statistics { + description + "Ethernet ring statistics for events and + messages received"; + list statistic { + description + "Statistics for a particular ring instance"; + leaf ring-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Ring Name"; + } + leaf instance-id { + type uint32 { + range "1..2"; + } + description + "Ring instance ID"; + } + uses ERP-STATS-INFO; + } + } + container summary { + description + "Summary count of Ethernet ring instances in + each state"; + uses ERP-SUMMARY-INFO; + } + container briefs { + description + "Brief functional state of Ethernet ring + instances"; + list brief { + description + "Brief functional state on a particular ring + instance"; + leaf ring-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Ring Name"; + } + leaf instance-id { + type uint32 { + range "1..2"; + } + description + "Ring instance ID"; + } + uses ERP-BRIEF-INFO; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-es-ace-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-es-ace-cfg.yang new file mode 100644 index 000000000..747a5232d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-es-ace-cfg.yang @@ -0,0 +1,236 @@ +submodule Cisco-IOS-XR-es-ace-cfg { + belongs-to Cisco-IOS-XR-es-acl-cfg { + prefix es-acl-cfg; + } + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-es-acl-datatypes { + prefix es-acl-dt; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 ES ACL entry configuration. + + Copyright (c) 2015-2019, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Deprecated the native model, replaced by UM model."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-02-26 { + description + "6.5.1 revision. + Fixed datatypes for below leaves: + - vlan1, vlan2 + - inner-vlan1, inner-vlan2 + - cos, inner-cos + - dei, inner-dei + - log-option"; + } + revision 2018-02-21 { + description + "Changed ether-type-number to type Hex-integer-16."; + } + revision 2018-01-03 { + description + "6.4.1 revision. + Fixed a few typos in the description."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "Initial revision."; + } + + typedef es-acl-grant-enum { + type enumeration { + enum "deny" { + value 0; + description + "Deny"; + } + enum "permit" { + value 1; + description + "Permit"; + } + } + description + "ES ACL forwarding action."; + } + + typedef es-acl-address { + type string { + pattern "([0-9a-fA-F]{1,4}(\\.[0-9a-fA-F]{1,4}){2})"; + } + } + + grouping ES-ACL-CONFIG-ACE { + description + "ES ACE entry."; + leaf grant { + type es-acl-grant-enum; + description + "Forwarding action for the packet. This is required + for any non-remark ACE. Leave unspecified otherwise."; + } + container source-network { + description + "Source network settings."; + leaf source-address { + type es-acl-address; + description + "Source address to match, leave unspecified + for any."; + } + leaf source-wild-card-bits { + type es-acl-address; + description + "Wildcard bits to apply to source address + (if specified), leave unspecified for no + wildcarding."; + } + } + container destination-network { + description + "Destination network settings."; + leaf destination-address { + type es-acl-address; + description + "Destination address to match (if a protocol + was specified), leave unspecified for any."; + } + leaf destination-wild-card-bits { + type es-acl-address; + description + "Wildcard bits to apply to destination address + (if specified), leave unspecified for no + wildcarding."; + } + } + leaf vlan1 { + type es-acl-dt:Es-acl-vlan-range; + description + "This 12-bit VLAN-ID in the VLAN Tag header uniquely + identifies the VLAN. It can be used for the lower bound + (in range) or single value. Any value not in the + permissible range will be rejected."; + reference "IEEE 802.1Q"; + } + leaf vlan2 { + type es-acl-dt:Es-acl-vlan-range; + description + "This 12 bit VLAN-ID in the VLAN Tag header uniquely + identifies the VLAN. It is used in the upper bound + (in range). Any value not in the permissible range + will be rejected."; + reference "IEEE 802.1Q"; + } + leaf cos { + type es-acl-dt:Es-acl-cos-range; + description + "Class of Service value. Any value not in the + permissible range will be rejected."; + reference "IEEE 802.1p"; + } + leaf dei { + type es-acl-dt:Es-acl-dei-range; + description + "Discard Eligibility Indication bit. User can specify + 1 to indicate the bit is set. Leave unspecified + otherwise."; + reference "RFC 7180 Section 7"; + } + leaf inner-vlan1 { + type es-acl-dt:Es-acl-vlan-range; + description + "This represents the QinQ vlan identifier. It can be used for + the lower bound (in range) or single value. Any value not + in the permissible range will be rejected."; + reference "IEEE 802.1Q"; + } + leaf inner-vlan2 { + type es-acl-dt:Es-acl-vlan-range; + description + "This represents the QinQ vlan identifier. It is used in + the upper bound (in range). Any value not in the permissible + range will be rejected."; + reference "IEEE 802.1Q"; + } + leaf inner-cos { + type es-acl-dt:Es-acl-cos-range; + description + "Class of Service of Inner Header. Any value not in the + permissible range will be rejected."; + reference "IEEE 802.1p"; + } + leaf inner-dei { + type es-acl-dt:Es-acl-dei-range; + description + "Discard Eligibility Indication for Inner Header. User + can specify 1 to indicate the bit is set. Leave + unspecified otherwise."; + reference "RFC 7180 Section 7"; + } + leaf remark { + type string { + length "0..255"; + } + description + "Description for the access-list-entry/rule."; + } + leaf ether-type-number { + type xr:Hex-integer-16; + description + "Ethernet type Number in Hex. Any value not in the + permissible range will be rejected."; + reference "IEEE 802 Ether types"; + } + leaf capture { + type boolean; + description + "Enable capture if set to TRUE."; + } + leaf log-option { + type es-acl-dt:Es-acl-log-range; + description + "Log the packet on this access-list-entry/rule. + User can specify 1 to enable logging + the match, leave unspecified otherwise."; + } + leaf sequence-str { + type string { + length "1..64"; + } + description + "Sequence String for the ace."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-cfg.yang new file mode 100644 index 000000000..101ee3517 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-cfg.yang @@ -0,0 +1,119 @@ +module Cisco-IOS-XR-es-acl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-es-acl-cfg"; + prefix es-acl-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-common-acl-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-es-ace-cfg { + revision-date 2022-08-16; + } + + 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 es-acl package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-ethernet-services-access-list-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + es-acl: Layer 2 ACL configuration data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.1"; + } + revision 2018-02-26 { + description + "6.5.1 revision. Fixed datatypes for below leaves: - vlan1, vlan2 - inner-vlan1, inner-vlan2 - cos, inner-cos - dei, inner-dei - log-option."; + } + revision 2018-02-21 { + description + "Changed ether-type-number to type Hex-integer-16."; + } + revision 2018-01-03 { + description + "6.4.1 revision. Fixed a few typos in the description."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Es-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Es acl name"; + } + + container es-acl { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-ethernet-services-access-list-cfg + .yang which will provide the compatible + functionalities. Layer 2 ACL configuration data"; + container accesses { + description + "Table of access lists"; + list access { + key "name"; + description + "An ACL"; + container access-list-entries { + description + "ACL entry table; contains list of access list + entries"; + list access-list-entry { + key "sequence-number"; + description + "An ACL entry; either a description (remark) + or anAccess List Entry to match against"; + leaf sequence-number { + type dt1:Acl-sequence-number-range; + description + "Sequence number of access list entry"; + } + uses ES-ACL-CONFIG-ACE; + } + } + leaf name { + type Es-acl-name; + description + "Name of the access list"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-datatypes.yang new file mode 100644 index 000000000..ee814370d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-datatypes.yang @@ -0,0 +1,114 @@ +module Cisco-IOS-XR-es-acl-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-es-acl-datatypes"; + prefix es-acl-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Es-acl-dei-range { + type uint32 { + range "0..1"; + } + description + "Es acl dei range"; + } + + typedef Es-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Es acl name"; + } + + typedef Es-acl-vlan-range { + type uint32 { + range "0..4095"; + } + description + "Es acl vlan range"; + } + + typedef Acl-usage-app-id-enum { + type enumeration { + enum "pfilter" { + value 1; + description + "General Usage Statistics"; + } + enum "bgp" { + value 2; + description + "Usage staistics related to BGP Traffic"; + } + enum "ospf" { + value 3; + description + "Usage staistics related to OSPF Traffic"; + } + } + description + "Acl usage app id enum"; + } + + typedef Es-acl-cos-range { + type uint32 { + range "0..7"; + } + description + "Es acl cos range"; + } + + typedef Acl-sequence-number-range { + type uint32 { + range "1..2147483646"; + } + description + "Acl sequence number range"; + } + + typedef Es-acl-log-range { + type uint32 { + range "0..1"; + } + description + "Es acl log range"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper-sub1.yang new file mode 100644 index 000000000..eaee15e1d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper-sub1.yang @@ -0,0 +1,247 @@ +submodule Cisco-IOS-XR-es-acl-oper-sub1 { + belongs-to Cisco-IOS-XR-es-acl-oper { + prefix Cisco-IOS-XR-es-acl-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR es-acl package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Acl-action { + type enumeration { + enum "deny" { + value 0; + description + "Deny"; + } + enum "permit" { + value 1; + description + "Permit"; + } + enum "encrypt" { + value 2; + description + "Encrypt"; + } + enum "bypass" { + value 3; + description + "Bypass"; + } + enum "fallthrough" { + value 4; + description + "Fallthrough"; + } + enum "invalid" { + value 5; + description + "Invalid"; + } + } + description + "Acl action"; + } + + typedef Acl-ace1 { + type enumeration { + enum "normal" { + description + "This is Normal ACE"; + } + enum "remark" { + description + "This is Remark ACE"; + } + enum "abf" { + description + "This is ABF ACE"; + } + } + description + "ACE Types"; + } + + typedef Acl-ace { + type Acl-ace1; + description + "ACE Types"; + } + + grouping ES-ACL-EDM-ACE { + description + "ACLE bag"; + leaf ace-type { + type Acl-ace; + description + "ACE type (acl, remark)"; + } + leaf ace-sequence-number { + type uint32; + description + "ACE sequence number"; + } + leaf hits { + type uint64; + description + "ACE hit number"; + } + leaf grant { + type Acl-action; + description + "Grant value permit/deny "; + } + leaf source-address { + type xr:Osi-system-id; + description + "Source MAC address"; + } + leaf source-wild-card-bits { + type xr:Osi-system-id; + description + "Source wild card bits"; + } + leaf destination-address { + type xr:Osi-system-id; + description + "Destination MAC address"; + } + leaf destination-wild-card-bits { + type xr:Osi-system-id; + description + "Destination wild card bits"; + } + leaf ether-type-number { + type uint16; + description + "Ethernet type Number"; + } + leaf vlan1 { + type uint16; + description + "VLAN ID/range lower limit"; + } + leaf vlan2 { + type uint16; + description + "VLAN ID range higher limit"; + } + leaf cos { + type uint8; + description + "COS value"; + } + leaf dei { + type uint8; + description + "DEI bit"; + } + leaf inner-header-vlan1 { + type uint16; + description + "Inner header VLAN ID/range lower limit"; + } + leaf inner-header-vlan2 { + type uint16; + description + "Inner header VLAN ID range higher limit"; + } + leaf inner-header-cos { + type uint8; + description + "Inner header COS value"; + } + leaf inner-header-dei { + type uint8; + description + "Inner header DEI bit"; + } + leaf capture { + type boolean; + description + "Capture option, TRUE if enabled"; + } + leaf log-option { + type uint8; + description + "Log option"; + } + leaf remark { + type string; + description + "Remark string"; + } + leaf acl-name { + type string; + description + "Acl Name"; + } + leaf sequence-string { + type string; + description + "Sequence Sring"; + } + } + + grouping ES-ACL-EDM-OOR-DETAIL { + description + "Oor deatil config BAG"; + leaf current-configured-ac-ls { + type uint32; + description + "Current configured acls"; + } + leaf current-configured-ac-es { + type uint32; + description + "Current configured aces"; + } + leaf maximum-configurable-ac-ls { + type uint32; + description + "max configurable acls"; + } + leaf maximum-configurable-ac-es { + type uint32; + description + "max configurable aces"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper.yang new file mode 100644 index 000000000..3cc07efbe --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-es-acl-oper.yang @@ -0,0 +1,167 @@ +module Cisco-IOS-XR-es-acl-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-es-acl-oper"; + prefix es-acl-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-common-acl-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-es-acl-oper-sub1 { + revision-date 2019-04-05; + } + + 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 es-acl package operational data. + + This module contains definitions + for the following management objects: + es-acl: Root class of ES ACL Oper schema tree + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Es-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Es acl name"; + } + + container es-acl { + config false; + description + "Root class of ES ACL Oper schema tree"; + container active { + description + "Out Of Resources, Limits to the resources + allocatable"; + container oor { + description + "Out Of Resources, Limits to the resources + allocatable"; + container acl-summary { + description + "Resource Limits pertaining to ACLs only"; + container details { + description + "Details containing the resource limits of the + ACLs"; + uses ES-ACL-EDM-OOR-DETAIL; + } + } + container oor-acls { + description + "Resource occupation details for ACLs"; + list oor-acl { + key "name"; + description + "Resource occupation details for a particular + ACL"; + leaf name { + type Es-acl-name; + description + "Name of the Access List"; + } + uses ES-ACL-EDM-OOR-DETAIL; + } + } + } + container list { + description + "List containing ACLs"; + container acls { + description + "ACL class displaying Usage and Entries"; + list acl { + key "name"; + description + "Name of the Access List"; + container acl-sequence-numbers { + description + "Table of all the SequenceNumbers per ACL"; + list acl-sequence-number { + key "sequence-number"; + description + "Sequence Number of an ACL entry"; + leaf sequence-number { + type dt1:Acl-sequence-number-range; + description + "ACLEntry Sequence Number"; + } + uses ES-ACL-EDM-ACE; + } + } + leaf name { + type Es-acl-name; + description + "Name of the Access List"; + } + } + } + } + container usages { + description + "Table of Usage statistics of ACLs at different + nodes"; + list usage { + description + "Usage statistics of an ACL at a node"; + leaf location { + type xr:Node-id; + description + "Node where ACL is applied"; + } + leaf application-id { + type dt1:Acl-usage-app-id-enum; + description + "Application ID"; + } + leaf name { + type Es-acl-name; + description + "Name of the ACL"; + } + leaf usage-details { + type string; + mandatory true; + description + "Usage Statistics Details"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-act.yang new file mode 100644 index 000000000..0f598e90b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-act.yang @@ -0,0 +1,1536 @@ +module Cisco-IOS-XR-ethernet-cfm-act { + yang-version 1.1; + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-cfm-act"; + prefix ethernet-cfm-act; + + import ietf-yang-types { + prefix yang; + } + 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 ethernet ping and traceroute actions. + + Copyright (c) 2020-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-19 { + description + "IOS XR 7.4.1 revision."; + semver:module-version "1.0.0"; + } + + typedef cfm-version-type { + type uint8 { + range "0..31"; + } + description + "CFM protocol version"; + } + + typedef cfm-cos-type { + type uint8 { + range "0..7"; + } + description + "Class of Service value"; + } + + typedef cfm-exploratory-traceroute-reply-filter-type { + type enumeration { + enum "default" { + description + "Default Reply Filtering"; + } + enum "all-ports" { + description + "Request Replies from all ports"; + } + } + description + "Reply Filter for exploratory linktrace replies"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Cfm-pm-lt-mode { + type enumeration { + enum "cfm-pm-lt-mode-basic" { + value 1; + description + "Basic IEEE 802.1ag Linktrace"; + } + enum "cfm-pm-lt-mode-exploratory" { + value 2; + description + "Cisco Exploratory Linktrace"; + } + } + description + "Type of Linktrace operation"; + } + + typedef Cfm-bag-optional-hex-data { + type yang:hex-string; + description + "Hex binary data which may be optionally present."; + } + + typedef Cfm-bag-optional-string { + type string; + description + "String which may be optionally present."; + } + + typedef Cfm-bag-md-level { + type enumeration { + enum "level0" { + value 0; + description + "CFM level 0"; + } + enum "level1" { + value 1; + description + "CFM level 1"; + } + enum "level2" { + value 2; + description + "CFM level 2"; + } + enum "level3" { + value 3; + description + "CFM level 3"; + } + enum "level4" { + value 4; + description + "CFM level 4"; + } + enum "level5" { + value 5; + description + "CFM level 5"; + } + enum "level6" { + value 6; + description + "CFM level 6"; + } + enum "level7" { + value 7; + description + "CFM level 7"; + } + } + description + "CFM level"; + } + + typedef Cfm-pm-elr-egress-action { + type enumeration { + enum "elr-egress-ok" { + value 1; + description + "Egress port is OK"; + } + enum "elr-egress-down" { + value 2; + description + "Egress port is down"; + } + enum "elr-egress-blocked" { + value 3; + description + "Egress port is STP Blocked"; + } + enum "elr-egress-vid" { + value 4; + description + "Egress port is VID Blocked"; + } + enum "elr-egress-mac" { + value 255; + description + "Egress port is MAC Pruned"; + } + } + description + "Egress actions used in the Reply Egress TLV"; + } + + typedef Cfm-pm-elr-ingress-action { + type enumeration { + enum "elr-ingress-ok" { + value 1; + description + "Ingress port is OK"; + } + enum "elr-ingress-down" { + value 2; + description + "Ingress port is down"; + } + enum "elr-ingress-blocked" { + value 3; + description + "Ingress port is STP Blocked"; + } + enum "elr-ingress-vid" { + value 4; + description + "Ingress port is VID Blocked"; + } + } + description + "Ingress actions used in the Reply Ingress TLV"; + } + + typedef Cfm-pm-elr-relay-action { + type enumeration { + enum "elr-relay-hit" { + value 1; + description + "ELR target Hit"; + } + enum "elr-relay-fdb" { + value 2; + description + "ELR forwarded by filtering database"; + } + enum "elr-relay-flood" { + value 3; + description + "ELR has been flood forwarded"; + } + enum "elr-relay-drop" { + value 4; + description + "ELR has been ropped"; + } + } + description + "ELR Relay actions, used in ELRs"; + } + + typedef Cfm-pm-last-hop-fmt { + type enumeration { + enum "last-hop-none" { + description + "No last hop identifier"; + } + enum "last-hop-host-name" { + description + "Last hop identifier is a hostname"; + } + enum "last-hop-egress-id" { + description + "Last hop identifier is an egress ID"; + } + } + description + "Last hop identifier format"; + } + + typedef Cfm-pm-egress-action { + type enumeration { + enum "egress-ok" { + value 1; + description + "Egress port is OK"; + } + enum "egress-down" { + value 2; + description + "Egress port is down"; + } + enum "egress-blocked" { + value 3; + description + "Egress port is STP Blocked"; + } + enum "egress-vid" { + value 4; + description + "Egress port is VID Blocked"; + } + } + description + "Egress action"; + } + + typedef Cfm-pm-port-id-fmt { + type enumeration { + enum "port-id-interface-alias" { + value 1; + description + "Port ID is an interface alias"; + } + enum "port-id-port-component" { + value 2; + description + "Port ID is a component name"; + } + enum "port-id-mac-address" { + value 3; + description + "Port ID is a MAC address"; + } + enum "port-id-network-address" { + value 4; + description + "Port ID is a network address"; + } + enum "port-id-interface-name" { + value 5; + description + "Port ID is an interface name"; + } + enum "port-id-agent-circuit-id" { + value 6; + description + "Port ID is an agent name"; + } + enum "port-id-local" { + value 7; + description + "Port ID is a local name"; + } + enum "port-id-unknown" { + value 8; + description + "Port ID format unknown"; + } + } + description + "Port ID format"; + } + + typedef Cfm-pm-ingress-action { + type enumeration { + enum "ingress-ok" { + value 1; + description + "Ingress port is OK"; + } + enum "ingress-down" { + value 2; + description + "Ingress port is down"; + } + enum "ingress-blocked" { + value 3; + description + "Ingress port is STP Blocked"; + } + enum "ingress-vid" { + value 4; + description + "Ingress port is VID Blocked"; + } + } + description + "Ingress actions used in the Reply Ingress TLV"; + } + + typedef Cfm-pm-id-fmt { + type enumeration { + enum "id-format-is-string" { + value 0; + description + "ID format is a string"; + } + enum "id-format-is-mac-address" { + value 1; + description + "ID format is a MAC address"; + } + enum "id-format-is-raw-hex" { + value 2; + description + "ID format is raw hex"; + } + } + description + "Port or chassis ID format"; + } + + typedef Cfm-pm-chassis-id-fmt { + type enumeration { + enum "chassis-id-chassis-component" { + value 1; + description + "Chassis ID is a component name"; + } + enum "chassis-id-interface-alias" { + value 2; + description + "Chassis ID is an interface alias"; + } + enum "chassis-id-port-component" { + value 3; + description + "Chassis ID is a port component name"; + } + enum "chassis-id-mac-address" { + value 4; + description + "Chassis ID is a MAC address"; + } + enum "chassis-id-network-address" { + value 5; + description + "Chassis ID is a network address"; + } + enum "chassis-id-interface-name" { + value 6; + description + "Chassis ID is an interface name"; + } + enum "chassis-id-local" { + value 7; + description + "Chassis ID is a local name"; + } + enum "chassis-id-unknown-type" { + value 8; + description + "Unknown Chassis ID type"; + } + } + description + "Chassis ID type"; + } + + typedef Cfm-pm-relay-action { + type enumeration { + enum "relay-hit" { + value 1; + description + "LTR target Hit"; + } + enum "relay-fdb" { + value 2; + description + "LTR forwarded by filtering database"; + } + enum "relay-mpdb" { + value 3; + description + "LTR forwarded by CCM Learning database"; + } + } + description + "LTR relay action"; + } + + typedef Cfm-pm-elm-reply-filter { + type enumeration { + enum "reply-filter-not-present" { + value 0; + description + "Reply Filter not present"; + } + enum "reply-filter-default" { + value 1; + description + "Reply from ports which are not MAC-pruned, + VID-pruned, or STP-blocked"; + } + enum "reply-filter-vlan-topology" { + value 2; + description + "Reply from ports which are not VID-pruned or + STP-blocked"; + } + enum "reply-filter-spanning-tree" { + value 3; + description + "Reply from ports which are not STP-blocked"; + } + enum "reply-filter-all-ports" { + value 4; + description + "Reply from all ports"; + } + } + description + "Reply filter used for Exploratory Linktrace + operations. Most of these values can't be returned alias + cfm-exploratory-traceroute-reply-filter-type is used as input"; + } + + typedef Cfm-pm-elt-delay-model { + type enumeration { + enum "delay-model-invalid" { + value 0; + description + "Not a valid delay model"; + } + enum "delay-model-logarithmic" { + value 1; + description + "Reply using logarithmic delay model"; + } + enum "delay-model-constant" { + value 2; + description + "Reply using constant delay model"; + } + } + description + "Delay model used for Exploratory Linktrace + operations"; + } + + grouping CFM-PM-EGRESS-ID-TYPE { + description + "Egress ID"; + leaf unique-id { + type uint16; + mandatory true; + description + "Egress port unique ID"; + } + leaf mac-address { + type Mac-address; + mandatory true; + description + "Egress port MAC address"; + } + } + + grouping CFM-PM-PORT-ID-VAL { + description + "Port ID Value"; + leaf port-id-format { + type Cfm-pm-id-fmt; + mandatory true; + description + "Format that the port ID takes: string, MAC or raw"; + } + leaf port-id-string { + when "../port-id-format = 'id-format-is-string'" { + description + "Identify port by string"; + } + type Cfm-bag-optional-string; + mandatory true; + description + "Port ID String"; + } + leaf port-id-mac { + when "../port-id-format = 'id-format-is-mac-address'" { + description + "Identify port by MAC address"; + } + type Mac-address; + mandatory true; + description + "Port ID MAC Address"; + } + leaf port-id-raw { + when "../port-id-format != 'id-format-is-string' and ../port-id-format != 'id-format-is-mac-address'" { + description + "Identify port"; + } + type Cfm-bag-optional-hex-data; + mandatory true; + description + "Undecoded Port ID"; + } + } + + grouping CFM-PM-PORT-ID { + description + "The type of port ID and its format and value"; + container port-id-value { + description + "Port ID (Current)"; + uses CFM-PM-PORT-ID-VAL; + } + leaf port-id-type { + type Cfm-pm-port-id-fmt; + mandatory true; + description + "Port ID type"; + } + leaf port-id-type-value { + type uint8; + mandatory true; + description + "Port ID type numerical value"; + } + leaf port-id { + type yang:hex-string; + status deprecated; + description + "Port ID (Deprecated)"; + } + } + + grouping CFM-PM-ELR-REPLY-EGRESS { + description + "ELR Reply egress TLV"; + container last-egress-id { + description + "Last Egress ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.3"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container next-egress-id { + description + "Next Egress ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.4"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container port-id { + presence "true"; + description + "ELR egress port ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.13"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-elr-egress-action; + mandatory true; + description + "Reply egress action"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.10"; + } + leaf mac-address { + type Mac-address; + mandatory true; + description + "MAC address of egress interface"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.11"; + } + } + + grouping CFM-PM-ELR-REPLY-INGRESS { + description + "ELR Reply ingress TLV"; + container last-egress-id { + description + "Last egress ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.3"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container next-egress-id { + description + "Next egress ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.4"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container port-id { + presence "true"; + description + "ELR reply ingress port ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.9"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-elr-ingress-action; + mandatory true; + description + "ELR Reply ingress action"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.6"; + } + leaf mac-address { + type Mac-address; + mandatory true; + description + "MAC address"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.7"; + } + } + + grouping CFM-PM-ELR-HDR { + description + "ELR frame header"; + leaf level { + type Cfm-bag-md-level; + mandatory true; + description + "MD level"; + } + leaf version { + type cfm-version-type; + mandatory true; + description + "CFM protocol version"; + } + leaf forwarded { + type boolean; + mandatory true; + description + "ELR was forwarded"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.1"; + } + leaf terminal-mep { + type boolean; + mandatory true; + description + "Terminal MEP reached"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.1"; + } + leaf reply-filter-unknown { + type boolean; + mandatory true; + description + "Reply Filter unrecognized"; + } + leaf transaction-id { + type uint32; + mandatory true; + description + "ELR transaction ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.1"; + } + leaf ttl { + type uint8; + mandatory true; + description + "Time to Live"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.2"; + } + leaf relay-action { + type Cfm-pm-elr-relay-action; + mandatory true; + description + "Relay action"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.5"; + } + leaf next-hop-timeout { + type uint32; + units "second"; + mandatory true; + description + "Next Hop Timeout, in seconds"; + } + leaf delay-model { + type Cfm-pm-elt-delay-model; + mandatory true; + description + "Delay model for delay calculations"; + reference "IEEE 802.1Q-2018 Fig N-2"; + } + } + + grouping CFM-PM-CHASSIS-ID-VAL { + description + "Chassis ID Value"; + leaf chassis-id-format { + type Cfm-pm-id-fmt; + mandatory true; + description + "ChassisIDFormat"; + } + leaf chassis-id-string { + when "../chassis-id-format = 'id-format-is-string'" { + description + "Identify chassis by string"; + } + type Cfm-bag-optional-string; + mandatory true; + description + "Chassis ID String"; + } + leaf chassis-id-mac { + when "../chassis-id-format = 'id-format-is-mac-address'" { + description + "Identify chassis by MAC address"; + } + type Mac-address; + mandatory true; + description + "Chassis ID MAC Address"; + } + leaf chassis-id-raw { + when "../chassis-id-format != 'id-format-is-string' and ../chassis-id-format != 'id-format-is-mac-address'" { + description + "Identify chassis"; + } + type Cfm-bag-optional-hex-data; + mandatory true; + description + "Undecoded Chassis ID"; + } + } + + grouping CFM-PM-CHASSIS-ID { + description + "Chassis ID type, format and value"; + container chassis-id-value { + description + "Chassis ID (Current)"; + uses CFM-PM-CHASSIS-ID-VAL; + } + leaf chassis-id-type { + type Cfm-pm-chassis-id-fmt; + mandatory true; + description + "Chassis ID Type"; + } + leaf chassis-id-type-value { + type uint8; + mandatory true; + description + "Chassis ID numerical value Type"; + } + leaf chassis-id { + type yang:hex-string; + status deprecated; + description + "Chassis ID (Deprecated)"; + } + } + + grouping CFM-PM-SENDER-ID { + description + "Sender ID TLV"; + container chassis-id { + presence "true"; + description + "Sender chassis ID"; + reference "IEEE 802.1Q-2018 Sn 21.5.3.3"; + uses CFM-PM-CHASSIS-ID; + } + leaf management-address-domain { + type yang:hex-string; + description + "Management address domain"; + reference "IEEE 802.1Q-2018 Sn 21.5.3.5"; + } + leaf management-address { + type yang:hex-string; + must "../management-address-domain"; + description + "Management address"; + reference "IEEE 802.1Q-2018 Sn 21.5.3.7"; + } + } + + grouping CFM-PM-LAST-HOP { + description + "Last hop type"; + container egress-id { + when "../last-hop-format = 'last-hop-egress-id'" { + description + "Identify last hop by egress id"; + } + description + "Egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + leaf last-hop-format { + type Cfm-pm-last-hop-fmt; + mandatory true; + description + "Format last hop identifier takes"; + } + leaf host-name { + when "../last-hop-format = 'last-hop-host-name'" { + description + "Identify last hop by hostname"; + } + type Cfm-bag-optional-string; + mandatory true; + description + "Identify last hop by hostname"; + } + } + + grouping CFM-PM-UNKNOWN-TLV { + description + "Unknown TLV"; + leaf typecode { + type uint8; + mandatory true; + description + "Type code of TLV"; + } + leaf value { + type yang:hex-string; + description + "Binary data in TLV"; + } + } + + grouping CFM-PM-ORG-SPEC-TLV { + description + "Organizational-specific TLV"; + leaf oui { + type yang:hex-string; + mandatory true; + description + "Organizationally-unique ID"; + } + leaf subtype { + type uint8; + mandatory true; + description + "Subtype of TLV"; + } + leaf value { + type yang:hex-string; + description + "Binary data in TLV"; + } + } + + grouping CFM-PM-ELR { + description + "Exploratory Linktrace Reply (ELR) message "; + container header { + description + "ELR frame header"; + uses CFM-PM-ELR-HDR; + } + container sender-id { + presence "ELR contained a sender-id TLV"; + description + "Sender ID TLV"; + uses CFM-PM-SENDER-ID; + } + container reply-ingress { + presence "Indicates existence of reply ingress TLV"; + description + "Reply ingress TLV"; + uses CFM-PM-ELR-REPLY-INGRESS; + } + container reply-egress { + presence "Indicates existence of reply egress TLV"; + description + "Reply egress TLV"; + uses CFM-PM-ELR-REPLY-EGRESS; + } + container last-hop { + description + "Last hop ID"; + uses CFM-PM-LAST-HOP; + } + leaf raw-data { + type yang:hex-string; + mandatory true; + description + "Undecoded frame"; + } + list organization-specific-tlv { + description + "Organizational-specific TLVs"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.15"; + uses CFM-PM-ORG-SPEC-TLV; + } + list unknown-tlv { + description + "Unknown TLVs"; + uses CFM-PM-UNKNOWN-TLV; + } + } + + grouping CFM-PM-REPLY-EGRESS { + description + "Reply egress TLV"; + container port-id { + description + "Port ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.13"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-egress-action; + mandatory true; + description + "Reply egress action"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.10"; + } + leaf mac-address { + type Mac-address; + mandatory true; + description + "Reply egress MAC address"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.11"; + } + } + + grouping CFM-PM-REPLY-INGRESS { + description + "Reply ingress TLV"; + container port-id { + description + "Port ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.9"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-ingress-action; + mandatory true; + description + "Reply ingress action"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.6"; + } + leaf mac-address { + type Mac-address; + mandatory true; + description + "Reply ingress MAC address"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.7"; + } + } + + grouping CFM-PM-LTR-EGRESS-ID { + description + "LTR Egress ID TLV"; + container last-egress-id { + description + "Last egress ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.3"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container next-egress-id { + description + "Next egress ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.4"; + uses CFM-PM-EGRESS-ID-TYPE; + } + } + + grouping CFM-PM-LTR-HDR { + description + "LTR frame header"; + leaf level { + type Cfm-bag-md-level; + mandatory true; + description + "LTR MD level"; + } + leaf version { + type cfm-version-type; + mandatory true; + description + "CFM protocol version"; + } + leaf use-fdb-only { + type boolean; + mandatory true; + description + "Use filtering DB only"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.1"; + } + leaf forwarded { + type boolean; + mandatory true; + description + "LTR was forwarded"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.1"; + } + leaf terminal-mep { + type boolean; + mandatory true; + description + "Terminal MEP reached"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.1"; + } + leaf transaction-id { + type uint32; + mandatory true; + description + "Transaction ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.1"; + } + leaf ttl { + type uint8; + mandatory true; + description + "Time to live"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.2"; + } + leaf relay-action { + type Cfm-pm-relay-action; + mandatory true; + description + "Relay action for the LTR"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.5"; + } + } + + grouping CFM-PM-LTR { + description + "Linktrace reply (LTR) message "; + container header { + description + "LTR frame header"; + uses CFM-PM-LTR-HDR; + } + container sender-id { + presence "Indicates LTR contained a sender-id TLV"; + description + "Sender ID TLV"; + uses CFM-PM-SENDER-ID; + } + container egress-id { + presence "Indicates LTR contains an egress ID TLV"; + description + "Egress ID TLV"; + uses CFM-PM-LTR-EGRESS-ID; + } + container reply-ingress { + presence "Indicates existence of reply ingress TLV"; + description + "Reply ingress TLV"; + uses CFM-PM-REPLY-INGRESS; + } + container reply-egress { + presence "Indicates existence of reply egress TLV"; + description + "Reply egress TLV"; + uses CFM-PM-REPLY-EGRESS; + } + container last-hop { + description + "Last hop ID"; + uses CFM-PM-LAST-HOP; + } + leaf raw-data { + type yang:hex-string; + mandatory true; + description + "Undecoded frame"; + } + list organization-specific-tlv { + description + "Organizational-specific TLVs"; + reference "IEEE 802.1Q-2018 Sn 20.41.2.15"; + uses CFM-PM-ORG-SPEC-TLV; + } + list unknown-tlv { + description + "Unknown TLVs"; + uses CFM-PM-UNKNOWN-TLV; + } + } + + grouping CFM-PM-LT-OPTS-EXPLORATORY { + description + "options for an Exploratory Linktrace"; + leaf delay-model { + type Cfm-pm-elt-delay-model; + mandatory true; + description + "Delay model for delay calculations"; + } + leaf delay-constant-factor { + type uint32; + mandatory true; + description + "Constant Factor for delay calculations"; + } + leaf reply-filter { + type Cfm-pm-elm-reply-filter; + mandatory true; + description + "Reply Filtering mode used by responders"; + } + } + + grouping CFM-PM-LT-OPTS-BASIC { + description + "Options for a basic IEEE 802.1ag Linktrace used in response"; + leaf is-auto { + type boolean; + mandatory true; + description + "Traceroute was initiated automatically"; + } + leaf fdb-only { + type boolean; + mandatory true; + description + "Only use the Filtering Database for forwarding + lookups"; + } + } + + grouping CFM-PM-LT-OPTS { + description + "Options affecting the behavior of the traceroute"; + container basic-options { + when "../mode = 'cfm-pm-lt-mode-basic'" { + description + "Use basic options"; + } + description + "Options for a basic IEEE 802.1ag Linktrace"; + uses CFM-PM-LT-OPTS-BASIC; + } + container exploratory-options { + when "../mode = 'cfm-pm-lt-mode-exploratory'" { + description + "Use exploratory options"; + } + description + "Options for an Exploratory Linktrace"; + uses CFM-PM-LT-OPTS-EXPLORATORY; + } + leaf mode { + type Cfm-pm-lt-mode; + mandatory true; + description + "Which linktrace mode to use: exploratory or basic"; + } + } + + grouping CFM-PM-LT-INFO { + description + "Information about a traceroute request used in response"; + container options { + description + "Options affecting traceroute behavior"; + uses CFM-PM-LT-OPTS; + } + leaf domain { + type string; + mandatory true; + description + "Maintenance domain name"; + } + leaf service { + type string; + mandatory true; + description + "Service name"; + } + leaf level { + type Cfm-bag-md-level; + mandatory true; + description + "Maintenance level"; + } + leaf source-mep-id { + type uint16 { + range "1..8191"; + } + mandatory true; + description + "Source MEP ID"; + } + leaf source-interface { + type xr:Interface-name; + mandatory true; + description + "Source interface"; + } + leaf source-mac-address { + type Mac-address; + mandatory true; + description + "Source MAC address"; + } + leaf target-mac-address { + type Mac-address; + mandatory true; + description + "Target MAC address"; + } + leaf directed-mac-address { + type Mac-address; + description + "Directed MAC address"; + } + leaf target-mep-id { + type uint16 { + range "1..8191"; + } + mandatory true; + description + "Target MEP ID"; + } + leaf timestamp { + type uint64; + units "second"; + mandatory true; + description + "Timestamp when linktrace initiated (seconds since epoch))"; + } + leaf ttl { + type uint8; + mandatory true; + description + "Time to live"; + } + leaf transaction-id { + type uint32; + mandatory true; + description + "Transaction ID"; + reference "IEEE 802.1Q-2018 Sn 20.41.1"; + } + } + + grouping CFM-PM-MEP-TR-CACHE-BAG { + description + "Traceroute result output"; + container traceroute-information { + description + "Information about the traceroute operation"; + uses CFM-PM-LT-INFO; + } + leaf replies-dropped { + type uint32; + mandatory true; + description + "Count of ignored replies for this request"; + } + list linktrace-reply { + description + "Received linktrace replies"; + uses CFM-PM-LTR; + } + list exploratory-linktrace-reply { + description + "Received exploratory linktrace replies"; + uses CFM-PM-ELR; + } + } + + grouping TRACEROUTE-PING-CFM-INFO-TYPE { + description + "CFM domain and service specification"; + leaf domain { + type string; + mandatory true; + description + "Specify name of domain"; + } + leaf service { + type string; + mandatory true; + description + "Specify name of service"; + } + } + + grouping TRACEROUTE-PING-REMOTE-TARGET-TYPE { + description + "Information on remote session target"; + leaf mac { + type yang:mac-address; + description + "Target MAC address"; + } + leaf target-mep-id { + type uint16 { + range "1..8191"; + } + description + "Target MEP ID"; + } + } + + grouping TRACEROUTE-PING-SOURCE-TYPE { + description + "Specify ping or traceroute source"; + leaf source-mep-id { + type uint16 { + range "1..8191"; + } + description + "Specify source MEP"; + } + leaf source-interface-name { + type string; + mandatory true; + description + "Specify source interface"; + } + } + + rpc traceroute-ethernet-cfm { + description + "Send a linktrace message"; + input { + must "target-mep-id or mac"; + uses TRACEROUTE-PING-CFM-INFO-TYPE; + uses TRACEROUTE-PING-REMOTE-TARGET-TYPE; + uses TRACEROUTE-PING-SOURCE-TYPE; + leaf explore { + type boolean; + description + "Perform an exploratory traceroute"; + } + leaf from { + type yang:mac-address; + must "../explore and ../explore = 'true'"; + description + "MAC address to explore beyond"; + } + leaf reply_filter { + type cfm-exploratory-traceroute-reply-filter-type; + must "not(../explore) or ../explore = 'false'"; + description + "Replay filtering on all ports.Only specify if Explore is FALSE"; + } + leaf cos { + type cfm-cos-type; + description + "Class of Service"; + } + leaf timeout { + type uint32 { + range "1..31535999"; + } + units "seconds"; + default "5"; + description + "Seconds to wait for each response"; + } + leaf fdb_only { + type boolean; + must "not(../explore) or ../explore = 'false'"; + description + "Replies based on Filtering DB. Only specify if Explore is FALSE"; + } + leaf ttl { + type uint16 { + range "1..255"; + } + default "64"; + description + "Specify the initial TTL"; + } + } + output { + uses CFM-PM-MEP-TR-CACHE-BAG; + } + xr:xr-task "ethernet-services"; + } + rpc ping-ethernet-cfm { + description + "Initiate a ping operation"; + input { + must "target-mep-id or mac"; + uses TRACEROUTE-PING-CFM-INFO-TYPE; + uses TRACEROUTE-PING-REMOTE-TARGET-TYPE; + uses TRACEROUTE-PING-SOURCE-TYPE; + leaf interval { + type uint32 { + range "1..4294967295"; + } + units "seconds"; + default "1"; + description + "Interval between ping messages (seconds)"; + } + leaf timeout { + type uint32 { + range "1..2147483647"; + } + units "seconds"; + default "5"; + description + "Timeout for each ping response (seconds)"; + } + leaf count { + type uint32 { + range "1..1000000"; + } + default "5"; + description + "Number of ping messages to send"; + } + leaf data-length { + type uint16 { + range "22..10000"; + } + units "bytes"; + description + "Minimum size to pad ping frame to, in bytes"; + } + leaf data-pattern { + type yang:hex-string; + description + "Pattern of hexadecimal data to include."; + } + leaf cos { + type cfm-cos-type; + description + "Class of Service"; + } + } + output { + leaf lbrs-rcvd { + type uint32; + mandatory true; + description + "Number of loopback replies received"; + reference "IEEE 802.1Q-2018 Sn 20.30.7"; + } + leaf lbrs-out-of-sequence { + type uint32; + mandatory true; + description + "Number of loopback replies received out-of-sequence"; + } + leaf lbrs-bad-data { + type uint32; + mandatory true; + description + "Number of loopback rpls rcvd with non-matching user-specified data"; + } + leaf rtt-min { + type uint32; + units "milliseconds"; + mandatory true; + description + "Minimum round-trip time (in milliseconds)"; + } + leaf rtt-avg { + type uint32; + units "milliseconds"; + mandatory true; + description + "Average round-trip time (in milliseconds)"; + } + leaf rtt-max { + type uint32; + units "milliseconds"; + mandatory true; + description + "Maximum round-trip time (in milliseconds)"; + } + leaf rcvd-duration { + type uint32; + units "milliseconds"; + mandatory true; + description + "Time between first and last loopback replies received (in ms)"; + } + } + xr:xr-task "ethernet-services"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-cfg.yang new file mode 100644 index 000000000..b7a7f69c6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-cfg.yang @@ -0,0 +1,1173 @@ +module Cisco-IOS-XR-ethernet-cfm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-cfm-cfg"; + prefix ethernet-cfm-cfg; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ethernet-cfm-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-infra-sla-datatypes { + prefix dt2; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2-eth-infra-cfg { + prefix a2; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a3; + } + import Cisco-IOS-XR-infra-sla-cfg { + prefix a4; + } + + 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 ethernet-cfm package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-l2-eth-infra-cfg, + Cisco-IOS-XR-snmp-agent-cfg, + Cisco-IOS-XR-infra-sla-cfg + modules with configuration data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-23 { + description + "Reorganisation of config paths.."; + semver:module-version "2.2.0"; + } + revision 2021-09-03 { + description + "Added log-csf config option."; + semver:module-version "2.1.0"; + } + revision 2020-10-07 { + description + "Added the Link Loss Forwarding feature."; + semver:module-version "2.1.0"; + } + revision 2019-10-02 { + description + "Add config support for bandwidth notifications"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-07-27 { + description + "Made bins-width mandatory"; + } + revision 2017-10-06 { + description + "SLA thresholds and actions schema/yang added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cfm-mip-policy { + type enumeration { + enum "all" { + value 2; + description + "Create MIPs on all ports in the Bridge Domain + or Cross-connect"; + } + enum "lower-mep-only" { + value 3; + description + "Create MIPs on ports which have a MEP at a + lower level"; + } + } + description + "Cfm mip policy"; + } + + typedef Cfm-service { + type enumeration { + enum "bridge-domain" { + value 1; + description + "Use a Bridge Domain - all MEPs will be Up MEPs + and MIPs are permitted"; + } + enum "p2p-cross-connect" { + value 2; + description + "Use a P2P Cross Connect - all MEPs will be Up + MEPs and MIPs are permitted"; + } + enum "mp2mp-cross-connect" { + value 3; + description + "Use a MP2MP Cross Connect - all MEPs will be Up + MEPs and MIPs are permitted"; + } + enum "vlan-aware-flexible-cross-connect" { + value 4; + description + "Use a VLAN-aware Flexible Cross Connect - all + MEPs will be Up MEPs and MIPs are permitted"; + } + enum "vlan-unaware-flexible-cross-connect" { + value 5; + description + "Use a VLAN-unaware Flexible Cross Connect - all + MEPs will be Up MEPs and MIPs are permitted"; + } + enum "down-meps" { + value 6; + description + "Down MEPs - no MIPs permitted"; + } + } + description + "Cfm service"; + } + + typedef Cfm-short-ma-name-format { + type enumeration { + enum "vlan-id" { + value 1; + description + "VLAN ID"; + } + enum "string" { + value 2; + description + "String Short MA Name"; + } + enum "number" { + value 3; + description + "Numeric Short MA Name"; + } + enum "vpn-id" { + value 4; + description + "RFC 2685 VPN ID"; + } + enum "icc-based" { + value 32; + description + "ICC-based format"; + } + } + description + "Cfm short ma name format"; + } + + typedef Cfm-lm-counters-cfg { + type enumeration { + enum "aggregate" { + value 1; + description + "Aggregate Counters"; + } + enum "list" { + value 2; + description + "List of per-CoS counters"; + } + enum "range" { + value 3; + description + "Range of per-CoS counters"; + } + } + description + "Cfm lm counters cfg"; + } + + typedef Cfm-mdid-format { + type enumeration { + enum "null" { + value 1; + description + "Null MDID"; + } + enum "dns-like" { + value 2; + description + "DNS-like MDID"; + } + enum "mac-address" { + value 3; + description + "MDID Comprising MAC Address and 16-bit integer"; + } + enum "string" { + value 4; + description + "String MDID"; + } + } + description + "Cfm mdid format"; + } + + augment "/a4:sla/a4:protocols" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-sla-cfg'"; + container ethernet { + description + "The Ethernet SLA protocol"; + container profiles { + description + "Table of SLA profiles on the protocol"; + list profile { + key "profile-name"; + description + "Name of the profile"; + container statistics { + description + "Statistics configuration for the SLA profile"; + list statistic { + key "statistic-name"; + description + "Type of statistic"; + container buckets-size { + presence "Indicates a buckets-size node is configured."; + description + "Size of the buckets into which statistics + are collected"; + leaf buckets-size { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Size of each bucket"; + } + leaf buckets-size-unit { + type dt2:Sla-buckets-size-units-enum; + mandatory true; + description + "Unit associated with the BucketsSize"; + } + } + container actions { + description + "Thresholds and associated actions for the + given statistics type"; + list action { + key "threshold-type action-type condition"; + description + "Action to perform when the threshold is + crossed"; + leaf threshold-type { + type dt2:Sla-threshold-type-enum; + description + "Threshold type"; + } + leaf action-type { + type dt1:Sla-action-type-enum; + description + "Action to take when the threshold is + crossed"; + } + leaf condition { + type dt2:Sla-threshold-condition-enum; + description + "Condition to be met to consider the + threshold crossed"; + } + leaf threshold-value { + type uint32 { + range "1..2147483647"; + } + mandatory true; + description + "Threshold Value"; + } + leaf bin-number { + type uint32 { + range "2..100"; + } + description + "Bin number in-and-above which samples + contribute towards a sample-count + threshold (required only when Condition + is SampleCount)"; + } + } + } + container aggregation { + description + "Aggregation to apply to results for the + statistic"; + leaf bins-count { + type uint32 { + range "0..100"; + } + description + "Number of bins to aggregate results into + (0 for no aggregation)"; + } + leaf bins-width { + when "../bins-count != 0" { + description + "../BinsCount != 0"; + } + type uint32 { + range "1..10000000"; + } + description + "Width of each bin"; + } + leaf bins-width-tenths { + type uint32 { + range "0..9"; + } + description + "The portion of the bin width in tenths of + a percent"; + } + leaf microseconds { + type boolean; + description + "Interpret the bin width in microseconds if + true"; + } + } + leaf enable { + type empty; + description + "Enable statistic gathering of the metric"; + } + leaf buckets-archive { + type uint32 { + range "1..100"; + } + description + "Number of buckets to archive in memory"; + } + leaf statistic-name { + type dt2:Sla-statistic-type-enum; + description + "The type of statistic to measure"; + } + } + } + container schedule { + presence "Indicates a schedule node is configured."; + description + "Schedule to use for probes within an + operation"; + leaf probe-interval { + type uint32 { + range "1..90"; + } + description + "Interval between probes. This must be + specified if, and only if, ProbeIntervalUnit + is not 'Week' or 'Day'."; + } + leaf probe-interval-day { + type dt2:Sla-probe-interval-day-enum; + description + "Day of week on which to schedule probes. + This must be specified if, and only if, + ProbeIntervalUnit is 'Week'."; + } + leaf probe-interval-unit { + type dt2:Sla-probe-interval-units-enum; + mandatory true; + description + "Time unit associated with the ProbeInterval. + The value must not be 'Once'. If 'Week' or + 'Day' is specified, probes are scheduled + weekly or daily respectively."; + } + leaf start-time-hour { + type uint32 { + range "0..23"; + } + description + "Time after midnight (in UTC) to send the + first packet each day."; + } + leaf start-time-minute { + type uint32 { + range "0..59"; + } + description + "Time after midnight (in UTC) to send the + first packet each day. This must be + specified if, and only if, StartTimeHour is + specified."; + } + leaf start-time-second { + type uint32 { + range "0..59"; + } + description + "Time after midnight (in UTC) to send the + first packet each day. This must only be + specified if StartTimeHour is specified, and + must not be specified if ProbeIntervalUnit + is 'Week' or 'Day'."; + } + leaf probe-duration { + type uint32 { + range "1..3600"; + } + description + "Duration of each probe. This must be + specified if, and only if, ProbeDurationUnit + is specified."; + } + leaf probe-duration-unit { + type dt2:Sla-probe-duration-units-enum; + description + "Time unit associated with the ProbeDuration. + The value must not be 'Once'."; + } + } + container probe { + description + "Probe configuration for the SLA profile"; + container send { + presence "Indicates a send node is configured."; + description + "Schedule to use for packets within a burst. + The default value is to send a single packet + once."; + leaf burst-interval { + type uint32 { + range "1..3600"; + } + description + "Interval between bursts. This must be + specified if, and only if, the SendType is + 'Burst' and the 'BurstIntervalUnit' is not + 'Once'."; + } + leaf burst-interval-unit { + type dt2:Sla-burst-interval-units-enum; + description + "Time unit associated with the BurstInterval + . This must be specified if, and only if, + SendType is 'Burst'."; + } + leaf packet-interval { + type uint32 { + range "1..30000"; + } + description + "Interval between packets. This must be + specified if, and only if, + PacketIntervalUnit is not 'Once'."; + } + leaf packet-interval-unit { + type dt2:Sla-packet-interval-units-enum; + mandatory true; + description + "Time unit associated with the + PacketInterval"; + } + leaf packet-count { + type uint32 { + range "2..1200"; + } + description + "The number of packets in each burst. This + must be specified if, and only if, the + SendType is 'Burst'."; + } + leaf send-type { + type dt2:Sla-send; + mandatory true; + description + "The packet distribution: single packets or + bursts of packets. If 'Burst' is specified + , PacketCount and BurstInterval must be + specified."; + } + } + container packet-size-and-padding { + presence "Indicates a packet-size-and-padding node is configured."; + description + "Minimum size to pad outgoing packet to"; + leaf size { + type uint32 { + range "1..9000"; + } + mandatory true; + description + "Minimum size to pad outgoing packet to"; + } + leaf padding-type { + type dt2:Sla-padding-pattern; + description + "Type of padding to be used for the packet"; + } + leaf padding-value { + type xr:Hex-integer; + description + "Pattern to be used for hex padding. This + can be specified if, and only if, the + PaddingType is 'Hex'."; + } + } + leaf priority { + type uint32 { + range "0..7"; + } + description + "Priority class to assign to outgoing SLA + packets"; + } + leaf synthetic-loss-calculation-packets { + type uint32 { + range "10..12096000"; + } + description + "Number of packets to use in each FLR + calculation"; + } + } + leaf packet-type { + type string; + mandatory true; + description + "The possible packet types are cfm-loopback, + cfm-delay-measurement, + cfm-delay-measurement-version-0, + cfm-loss-measurement and + cfm-synthetic-loss-measurement"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration/a2:ethernet-features" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2-eth-infra-cfg'"; + container cfm { + description + "CFM interface configuration"; + container domains { + description + "Domain-specific interface configuration"; + list domain { + key "domain"; + description + "Configuration for a particular Maintenance + Domain"; + container mep { + description + "MEP Configuration"; + container sla-profile-target-mep-ids { + description + "SLA specific configuration"; + list sla-profile-target-mep-id { + key "profile target-mep-id"; + description + "Configuration for a particular SLA + operation"; + leaf profile { + type xr:Cisco-ios-xr-string; + description + "SLA profile name"; + } + leaf target-mep-id { + type dt1:Cfm-mep-id; + description + "Target MEP-ID"; + } + } + list sla-profile-target-mac-address { + key "profile target-mac-address"; + description + "Configuration for a particular SLA + operation"; + leaf profile { + type xr:Cisco-ios-xr-string; + description + "SLA profile name"; + } + leaf target-mac-address { + type yang:mac-address; + description + "Target MAC address"; + } + } + } + container mep-properties { + presence "Indicates a mep-properties node is configured."; + description + "Properties for this MEP"; + leaf service { + type string { + length "1..127"; + } + mandatory true; + description + "Service (Maintenance Association)"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + mandatory true; + description + "MEP ID"; + } + } + container loss-measurement-counters { + presence "Indicates a loss-measurement-counters node is configured."; + description + "Loss-measurement specific configuration"; + leaf cfg-type { + type Cfm-lm-counters-cfg; + mandatory true; + description + "Aggregate, List, or Range"; + } + leaf cos0 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - start of + range or list item"; + } + leaf cos1 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - end of + range or list item"; + } + leaf cos2 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - list item"; + } + leaf cos3 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - list item"; + } + leaf cos4 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - list item"; + } + leaf cos5 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - list item"; + } + leaf cos6 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - list item"; + } + leaf cos7 { + type dt1:Cfm-cos-bits; + description + "CoS bits for per-CoS counters - list item"; + } + } + leaf llf { + type empty; + description + "Enable interface TX-disable on remote fault + detection for this MEP"; + } + leaf cos { + type dt1:Cfm-cos-bits; + description + "The Class of Service bits for this MEP"; + } + } + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + } + } + container ais-up { + description + "Interface specific AIS configuration"; + container transmission { + presence "enable transmission"; + description + "AIS transmission configuration"; + leaf ais-interval { + type dt1:Cfm-ais-interval; + description + "AIS Interval"; + } + leaf cos { + type dt1:Cfm-cos-bits; + description + "Class of Service bits"; + } + } + } + container bandwidth-notifications { + description + "Bandwidth Notification configuration"; + leaf wait-to-restore { + type dt1:Cfm-bnm-wtr; + default "10"; + description + "Wait-to-restore time (in seconds)"; + } + leaf log-changes { + type empty; + description + "Enable logging of bandwidth changes"; + } + leaf hold-off { + type dt1:Cfm-bnm-hold-off; + default "0"; + description + "Hold-off time (in seconds)"; + } + leaf loss-threshold { + type dt1:Cfm-bnm-loss-threshold; + default "3"; + description + "Loss Threshold (in number of BNMs)"; + } + } + } + } + augment "/a2:ethernet-features" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2-eth-infra-cfg'"; + container cfm { + description + "CFM global configuration"; + container traceroute-cache { + description + "Traceroute Cache Configuration"; + leaf hold-time { + type uint32 { + range "1..525600"; + } + default "100"; + description + "Hold Time in minutes"; + } + leaf cache-size { + type uint32 { + range "1..4294967295"; + } + default "100"; + description + "Cache Size limit (number of replies)"; + } + } + container domains { + description + "Domain-specific global configuration"; + list domain { + key "domain"; + description + "Configuration for a particular Maintenance + Domain"; + container services { + description + "Service-specific global configuration"; + list service { + key "service"; + description + "Configuration for a particular Service + (Maintenance Association)"; + container efd2 { + presence "Indicates a efd2 node is configured."; + description + "Enable EFD to bring down ports when MEPs + detect errors"; + leaf enable { + type empty; + mandatory true; + description + "Enable EFD"; + } + leaf protection-switching-enable { + type empty; + description + "Enable protection switching notifications"; + } + } + container continuity-check-interval { + presence "Indicates a continuity-check-interval node is configured."; + description + "Continuity Check Interval and Loss + Threshold. Configuring the interval + enables Continuity Check."; + leaf ccm-interval { + type dt1:Cfm-ccm-interval; + mandatory true; + description + "CCM Interval"; + } + leaf loss-threshold { + type uint32 { + range "2..255"; + } + description + "Loss Threshold (default 3)"; + } + } + container mip-auto-creation { + presence "Indicates a mip-auto-creation node is configured."; + description + "MIP Auto-creation Policy"; + leaf mip-policy { + type Cfm-mip-policy; + mandatory true; + description + "MIP Auto-creation Policy"; + } + leaf ccm-learning-enable { + type empty; + description + "Enable CCM Learning at MIPs in this + service"; + } + } + container ais { + description + "Service specific AIS configuration"; + container transmission { + presence "enable transmission"; + description + "AIS transmission configuration"; + leaf ais-interval { + type dt1:Cfm-ais-interval; + description + "AIS Interval"; + } + leaf cos { + type dt1:Cfm-cos-bits; + description + "Class of Service bits"; + } + } + } + container cross-check { + description + "Cross-check configuration"; + container cross-check-meps { + description + "Cross-check MEPs"; + list cross-check-mep { + key "mep-id"; + description + "MEP ID and optional MAC Address for + Cross-check"; + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID"; + } + leaf enable-mac-address { + type empty; + description + "MAC Address is specified"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + } + } + leaf auto { + type empty; + description + "Enable automatic MEP cross-check"; + } + } + container service-properties { + presence "Indicates a service-properties node is configured."; + description + "Fundamental properties of the service + (maintenance association)"; + leaf service-type { + type Cfm-service; + mandatory true; + description + "Type of Service"; + } + leaf group-name { + type string; + description + "Bridge Group or Cross-connect Group, if + Service Type is BridgeDomain or + CrossConnect"; + } + leaf switching-name { + type string; + description + "Bridge Domain or Cross-connect name, if + Service Type is BridgeDomain or + CrossConnect"; + } + leaf ce-id { + type uint32 { + range "1..16384"; + } + description + "Local Customer Edge Identifier"; + } + leaf remote-ce-id { + type uint32 { + range "1..16384"; + } + description + "Remote Customer Edge Identifier"; + } + leaf evi { + type uint32 { + range "1..65534"; + } + description + "EVPN ID"; + } + leaf short-ma-name-format { + type Cfm-short-ma-name-format; + description + "Short MA Name Format"; + } + leaf short-ma-name-string { + type xr:Cisco-ios-xr-string { + length "1..45"; + } + description + "String Short MA Name, if format is String"; + } + leaf short-ma-name-number { + type uint32 { + range "0..65535"; + } + description + "Numeric Short MA Name, if format is VlanID + or Number"; + } + leaf short-ma-name-oui { + type uint32 { + range "0..16777215"; + } + description + "VPN OUI, if Short MA Name format is VPN_ID"; + } + leaf short-ma-name-vpn-index { + type uint32; + description + "VPN Index, if Short MA Name format is + VPN_ID"; + } + leaf short-ma-name-icc { + type xr:Cisco-ios-xr-string { + length "1..6"; + } + description + "ITU Carrier Code (ICC), if format is + ICCBased"; + } + leaf short-ma-name-umc { + type xr:Cisco-ios-xr-string { + length "1..12"; + } + description + "Unique MEG ID Code (UMC), if format is + ICCBased"; + } + } + leaf maximum-meps { + type uint32 { + range "2..8190"; + } + default "100"; + description + "Limit on the number of MEPs in the service"; + } + leaf log-cross-check-errors { + type empty; + description + "Log Cross-check Errors detected for peer + MEPs"; + } + leaf continuity-check-archive-hold-time { + type uint32 { + range "1..65535"; + } + default "100"; + description + "How long to store information for peer MEPs + that have timed out"; + } + leaf tags { + type uint32 { + range "1"; + } + description + "The number of tags to use when sending CFM + packets from up MEPs in this Service"; + } + leaf log-csf { + type empty; + description + "Log receipt of CSF packets"; + } + leaf log-continuity-check-state-changes { + type empty; + description + "Log peer MEPs state changes"; + } + leaf log-efd { + type empty; + description + "Enable logging"; + } + leaf continuity-check-auto-traceroute { + type empty; + description + "Automatically trigger a traceroute when a + peer MEP times out"; + } + leaf log-continuity-check-errors { + type empty; + description + "Log CCM Errors detected for peer MEPs"; + } + leaf log-ais { + type empty; + description + "Log receipt of AIS and LCK messages"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + } + } + container domain-properties { + description + "Fundamental properties of the domain"; + leaf level { + type dt1:Cfm-level; + description + "Maintenance Domain Level"; + } + leaf mdid-format { + type Cfm-mdid-format; + description + "Maintenance Domain ID Format"; + } + leaf mdid-mac-address { + when "../mdid-format = 'mac-address'" { + description + "../MDIDFormat = MACAddress"; + } + type yang:mac-address; + description + "MAC Address, if MDID Format is MACAddress"; + } + leaf mdid-number { + when "../mdid-format = 'mac-address'" { + description + "../MDIDFormat = MACAddress"; + } + type uint32 { + range "0..65535"; + } + description + "Unsigned 16-bit Interger, if MDID Format is + MACAddress"; + } + leaf mdid-string { + when "../mdid-format = 'dns-like' or ../mdid-format = 'string'" { + description + "../MDIDFormat = DNSLike or ../MDIDFormat = + String"; + } + type string { + length "1..43"; + } + description + "String MDID, if MDID format is String or + DNSLike"; + } + } + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + } + } + leaf nv-satellite-sla-processing-disable { + type empty; + description + "Disable processing of Ethernet SLA packets on + nV Satellite devices"; + } + } + } + augment "/a3:snmp/a3:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container cfm { + description + "802.1ag Connectivity Fault Management MIB + notification configuration"; + leaf enable { + type empty; + description + "Enable 802.1ag Connectivity Fault Management + MIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-datatypes.yang new file mode 100644 index 000000000..a384b7bf5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-datatypes.yang @@ -0,0 +1,200 @@ +module Cisco-IOS-XR-ethernet-cfm-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-cfm-datatypes"; + prefix ethernet-cfm-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-09 { + description + "Add SLA Action type enumeration definition"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cfm-bandwidth-notification-state { + type enumeration { + enum "ok" { + value 1; + description + "Link is not degraded"; + } + enum "degraded" { + value 2; + description + "Link is in degraded state"; + } + } + description + "Cfm bandwidth notification state"; + } + + typedef Sla-action-type-enum { + type enumeration { + enum "log" { + value 0; + description + "Emit a syslog when the threshold is crossed"; + } + enum "efd" { + value 267434903; + description + "EFD action. Stateful thresholds only"; + } + } + description + "Sla action type enum"; + } + + typedef Cfm-bnm-wtr { + type uint32 { + range "0..600"; + } + description + "Cfm bnm wtr"; + } + + typedef Cfm-ccm-interval { + type enumeration { + enum "3.3ms" { + value 1; + description + "3.3ms"; + } + enum "10ms" { + value 2; + description + "10ms"; + } + enum "100ms" { + value 3; + description + "100ms"; + } + enum "1s" { + value 4; + description + "1s"; + } + enum "10s" { + value 5; + description + "10s"; + } + enum "1m" { + value 6; + description + "1m"; + } + enum "10m" { + value 7; + description + "10m"; + } + } + description + "Cfm ccm interval"; + } + + typedef Cfm-mep-id { + type uint32 { + range "1..8191"; + } + description + "Cfm mep id"; + } + + typedef Cfm-bnm-hold-off { + type uint32 { + range "0..600"; + } + description + "Cfm bnm hold off"; + } + + typedef Cfm-level { + type uint32 { + range "0..7"; + } + description + "Cfm level"; + } + + typedef Cfm-cos-bits { + type uint32 { + range "0..7"; + } + description + "Cfm cos bits"; + } + + typedef Cfm-bnm-loss-threshold { + type uint32 { + range "2..255"; + } + description + "Cfm bnm loss threshold"; + } + + typedef Cfm-ais-interval { + type enumeration { + enum "1s" { + value 4; + description + "1s"; + } + enum "1m" { + value 6; + description + "1m"; + } + } + description + "Cfm ais interval"; + } + + typedef Cfm-mep-dir { + type enumeration { + enum "up" { + value 0; + description + "Up MEP"; + } + enum "down" { + value 1; + description + "Down MEP"; + } + } + description + "Cfm mep dir"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub1.yang new file mode 100644 index 000000000..31568b4a4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub1.yang @@ -0,0 +1,1228 @@ +submodule Cisco-IOS-XR-ethernet-cfm-oper-sub1 { + belongs-to Cisco-IOS-XR-ethernet-cfm-oper { + prefix Cisco-IOS-XR-ethernet-cfm-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-cfm package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-19 { + description + "Add CCM and AIS encapsulation conflict errors. + 2022-01-18 + Added CSF packet counters. + 2021-10-22 + Added counters for missing MEP offload intervals. + 2021-09-02 + Added support for LTM statistics."; + semver:module-version "2.0.0"; + } + revision 2020-10-07 { + description + "Added the Link Loss Forwarding feature."; + semver:module-version "1.3.0"; + } + revision 2020-07-07 { + description + "Added SLA summary information."; + semver:module-version "1.2.0"; + } + revision 2019-10-02 { + description + "Bandwidth notification addition"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-20 { + description + "Bandwidth notification class and type name update."; + } + revision 2017-10-06 { + description + "Traceroute transaction ID changed from int to uint."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sla-error-string { + type string; + description + "Sla error string"; + } + + typedef Sla-oper-packet-priority { + type enumeration { + enum "priority-none" { + value 0; + description + "Packet does not use any specified priority."; + } + enum "priority-cos" { + value 1; + description + "Packet uses a specified 3-bit COS priority + value."; + } + } + description + "Priority scheme for packet priority"; + } + + typedef Sla-oper-test-pattern-scheme { + type enumeration { + enum "hex" { + value 0; + description + "Packet is padded with a user-specified string"; + } + enum "pseudo-random" { + value 1; + description + "Packet is padded with a pseudo-random bit + sequence"; + } + } + description + "Test pattern scheme for packet padding"; + } + + typedef Sla-oper-bucket { + type enumeration { + enum "bucket-type-bins" { + value 0; + description + "SLA metric bin"; + } + enum "bucket-type-samples" { + value 1; + description + "SLA metric sample"; + } + } + description + "Type of SLA metric bucket"; + } + + typedef Sla-metric-threshold-state { + type enumeration { + enum "threshold-not-breached" { + description + "Threshold is not breached"; + } + enum "threshold-breached-last" { + description + "Threshold was breached in the last bucket"; + } + enum "threshold-breached-current" { + description + "Threshold is breached in the current bucket"; + } + } + description + "Sla metric threshold state"; + } + + typedef Sla-cfg-thresh-condition { + type enumeration { + enum "condition-maximum" { + value 0; + description + "Breach on maximum value"; + } + enum "condition-mean" { + value 1; + description + "Breach on mean value"; + } + enum "condition-bin-count" { + value 2; + description + "Breach on sample count in bins"; + } + enum "condition-type-count" { + value 3; + description + "Number of threshold conditions"; + } + } + description + "Sla cfg thresh condition"; + } + + typedef Sla-cfg-threshold { + type enumeration { + enum "stateful-threshold" { + value 0; + description + "Stateful threshold"; + } + enum "stateless-threshold" { + value 1; + description + "Stateless threshold"; + } + enum "threshold-type-count" { + value 2; + description + "Number of threshold types"; + } + } + description + "Sla cfg threshold"; + } + + typedef Sla-bucket-size { + type enumeration { + enum "buckets-per-probe" { + value 0; + description + "Bucket size is configured as buckets per probe"; + } + enum "probes-per-bucket" { + value 1; + description + "Bucket size is configured as probes per bucket"; + } + } + description + "Type of configuration of a bucket size"; + } + + typedef Sla-recordable-metric { + type enumeration { + enum "metric-invalid" { + value 0; + description + "Not a valid metric type"; + } + enum "metric-round-trip-delay" { + value 1; + description + "Round-trip Delay"; + } + enum "metric-one-way-delay-sd" { + value 2; + description + "One-way Delay (Source->Destination)"; + } + enum "metric-one-way-delay-ds" { + value 3; + description + "One-way Delay (Destination->Source)"; + } + enum "metric-round-trip-jitter" { + value 4; + description + "Round-trip Jitter"; + } + enum "metric-one-way-jitter-sd" { + value 5; + description + "One-way Jitter (Source->Destination)"; + } + enum "metric-one-way-jitter-ds" { + value 6; + description + "One-way Jitter (Destination->Source)"; + } + enum "metric-one-way-flr-sd" { + value 7; + description + "One-way Frame Loss Ratio (Source->Destination)"; + } + enum "metric-one-way-flr-ds" { + value 8; + description + "One-way Frame Loss Ratio (Destination->Source)"; + } + } + description + "Types of metrics that can be recorded by probes"; + } + + typedef Sla-oper-operation { + type enumeration { + enum "operation-type-configured" { + value 0; + description + "Configured SLA operation"; + } + enum "operation-type-ondemand" { + value 1; + description + "On-demand SLA operation"; + } + } + description + "Type of SLA operation"; + } + + grouping SLA-OPER-CONFIG-ERRORS { + description + "Most recent configuration error information for + an SLA operation"; + leaf profile-name-xr { + type string; + description + "The name of the operation profile."; + } + leaf display-short { + type string; + description + "Short display name used by the operation"; + } + leaf rt-delay-inconsistent { + type boolean; + description + "Is the profile configured to collect RT Delay + but the packet type doesn't support it?"; + } + leaf ow-delay-sd-inconsistent { + type boolean; + description + "Is the profile configured to collect OW Delay + (SD) but the packet type doesn't support it?"; + } + leaf ow-delay-ds-inconsistent { + type boolean; + description + "Is the profile configured to collect OW Delay + (DS) but the packet type doesn't support it?"; + } + leaf rt-jitter-inconsistent { + type boolean; + description + "Is the profile configured to collect RT Jitter + but the packet type doesn't support it?"; + } + leaf ow-jitter-sd-inconsistent { + type boolean; + description + "Is the profile configured to collect OW Jitter + (SD) but the packet type doesn't support it?"; + } + leaf ow-jitter-ds-inconsistent { + type boolean; + description + "Is the profile configured to collect OW Delay + (DS) but the packet type doesn't support it?"; + } + leaf ow-loss-sd-inconsistent { + type boolean; + description + "Is the profile configured to collect OW Frame + Loss (SD) but the packet type doesn't support it + ?"; + } + leaf ow-loss-ds-inconsistent { + type boolean; + description + "Is the profile configured to collect OW Frame + Loss (DS) but the packet type doesn't support it + ?"; + } + leaf packet-pad-inconsistent { + type boolean; + description + "Is the profile configured to pad packets but the + packet type doesn't support it?"; + } + leaf packet-rand-pad-inconsistent { + type boolean; + description + "Is the profile configured to pad packets with a + pseudo-random string but the packet type doesn't + support it?"; + } + leaf min-packet-interval-inconsistent { + type boolean; + description + "Is the profile configured to send packets more + frequently than the protocol allows?"; + } + leaf priority-inconsistent { + type boolean; + description + "Is the profile configured to use a packet + priority scheme that the protocol does not + support?"; + } + leaf packet-type-inconsistent { + type boolean; + description + "Is the profile configured to use a packet type + that isn't supported by any protocols?"; + } + leaf profile-doesnt-exist { + type boolean; + description + "Is the operation configured to use a profile + that is not currently defined for the protocol?"; + } + leaf synthetic-loss-not-supported { + type boolean; + description + "The profile is configured to use a packet type + which doesn't support synthetic loss measurement + and the number of packets per FLR calculation + has been configured"; + } + leaf probe-too-big { + type boolean; + description + "The profile is configured to use a packet type + which does not allow more than 72000 packets per + probe and greater than 72000 packets per probe + have been configured"; + } + leaf no-statistics-configured { + type boolean; + description + "Is the profile configured without any statistics + collection?"; + } + list error-string { + description + "Displays other issues not indicated from the + flags above, for example MIB incompatibility + issues."; + leaf entry { + type Sla-error-string; + description + "Displays other issues not indicated from the + flags above, for example MIB incompatibility + issues."; + } + } + } + + grouping SLA-OPER-OPERATION-THRESHOLD { + description + "Status for an individual threshold on an + operation"; + container configuration { + description + "Configuration of the threshold"; + uses SLA-CFG-METRIC-THRESH-TYPE; + } + leaf action-name { + type string; + description + "Name of the threshold action"; + } + } + + grouping SLA-OPER-OPERATION-METRIC { + description + "Status for an individual metric on an operation"; + container metric-config { + description + "Configuration of the metric"; + uses SLA-CFG-METRIC-TYPE; + } + leaf current-buckets-archive { + type uint32; + description + "Number of valid buckets currently in the buckets + archive"; + } + list threshold { + description + "Thresholds configured on the metric"; + uses SLA-OPER-OPERATION-THRESHOLD; + } + } + + grouping SLA-OPER-PACKET-PRIORITY { + description + "Union of available types of packet priority"; + leaf priority-type { + type Sla-oper-packet-priority; + description + "PriorityType"; + } + leaf cos { + when "../priority-type = 'priority-cos'" { + description + "../PriorityType = 'PriorityCOS'"; + } + type uint8; + description + "3-bit COS priority value applied to packets"; + } + } + + grouping SLA-OPER-PACKET-PADDING { + description + "Parameters of a probe that are only valid if + packet padding is configured"; + leaf packet-pad-size { + type uint16; + description + "Size that packets are being padded to"; + } + leaf test-pattern-pad-scheme { + type Sla-oper-test-pattern-scheme; + description + "Test pattern scheme that is used in the packet + padding"; + } + leaf test-pattern-pad-hex-string { + type uint32; + description + "Hex string that is used in the packet padding"; + } + } + + grouping SLA-OPER-OPERATION-PROFILE { + description + "Parameters of an operation that are only valid if + it has a profile"; + container packet-padding { + description + "Configuration of the packet padding"; + uses SLA-OPER-PACKET-PADDING; + } + container priority { + description + "Priority at which to send the packet, if + configured"; + uses SLA-OPER-PACKET-PRIORITY; + } + container operation-schedule { + description + "Operation schedule"; + uses SLA-OPER-OPERATION-SCHEDULE; + } + leaf probe-type { + type string; + description + "Type of probe used by the operation"; + } + leaf packets-per-burst { + type uint16; + description + "Number of packets sent per burst"; + } + leaf inter-packet-interval { + type uint16; + units "millisecond"; + description + "Interval between packets within a burst in + milliseconds"; + } + leaf bursts-per-probe { + type uint32; + description + "Number of bursts sent per probe"; + } + leaf inter-burst-interval { + type uint32; + units "millisecond"; + description + "Interval between bursts within a probe in + milliseconds"; + } + leaf flr-calculation-interval { + type uint32; + units "millisecond"; + description + "Interval between FLR calculations for SLM, in + milliseconds"; + } + list operation-metric { + description + "Array of the metrics that are measured by the + operation"; + uses SLA-OPER-OPERATION-METRIC; + } + } + + grouping SLA-OPER-OPERATION { + description + "The state of an SLA operation"; + container profile-options { + description + "Options that are only valid if the operation has + a profile"; + uses SLA-OPER-OPERATION-PROFILE; + } + container specific-options { + description + "Options specific to the type of operation"; + uses SLA-OPER-OPERATION-SPECIFIC-OPTS; + } + leaf display-short { + type string; + description + "Short display name used by the operation"; + } + leaf display-long { + type string; + description + "Long display name used by the operation"; + } + leaf last-run { + type uint32; + description + "Time that the last probe for the operation was + run, NULL if never run."; + } + } + + grouping SLA-OPER-SAMPLE { + description + "Contents of an SLA metric sample"; + leaf sent-at { + type uint32; + units "millisecond"; + description + "The time (in milliseconds relative to the start + time of the bucket) that the sample was sent at"; + } + leaf sent { + type boolean; + description + "Whether the sample packet was sucessfully sent"; + } + leaf timed-out { + type boolean; + description + "Whether the sample packet timed out"; + } + leaf corrupt { + type boolean; + description + "Whether the sample packet was corrupt"; + } + leaf out-of-order { + type boolean; + description + "Whether the sample packet was received + out-of-order"; + } + leaf no-data-packets { + type boolean; + description + "Whether a measurement could not be made because + no data packets were sent in the sample period. + Only applicable for LMM measurements"; + } + leaf result { + type int32; + description + "The result (in microseconds or millionths of a + percent) of the sample, if available"; + } + leaf frames-sent { + type uint32; + description + "For FLR measurements, the number of frames sent, + if available"; + } + leaf frames-lost { + type uint32; + description + "For FLR measurements, the number of frames lost, + if available"; + } + } + + grouping SLA-OPER-BUCKET-UNAGGREGATED { + description + "Result samples in an SLA metric bucket"; + list sample { + description + "The samples of an SLA metric bucket"; + uses SLA-OPER-SAMPLE; + } + } + + grouping SLA-OPER-BIN { + description + "Contents of an SLA metric bin"; + leaf lower-bound { + type int32; + description + "Lower bound (inclusive) of the bin, in + milliseconds or single units of percent. This + field is not used for LMM measurements"; + } + leaf upper-bound { + type int32; + description + "Upper bound (exclusive) of the bin, in + milliseconds or single units of percent. This + field is not used for LMM measurements"; + } + leaf lower-bound-tenths { + type int32; + units "percentage"; + description + "Lower bound (inclusive) of the bin, in tenths of + percent. This field is only used for LMM + measurements"; + } + leaf upper-bound-tenths { + type int32; + units "percentage"; + description + "Upper bound (exclusive) of the bin, in tenths of + percent. This field is only used for LMM + measurements"; + } + leaf sum { + type int64; + description + "The sum of the results in the bin, in + microseconds or millionths of a percent"; + } + leaf count { + type uint32; + description + "The total number of results in the bin"; + } + } + + grouping SLA-OPER-BUCKET-AGGREGATED { + description + "Result bins in an SLA metric bucket"; + list bins { + description + "The bins of an SLA metric bucket"; + uses SLA-OPER-BIN; + } + } + + grouping BUCKET-CONTENTS { + description + "Contents of an SLA bucket; bins or samples"; + container aggregated { + when "../bucket-type = 'bucket-type-bins'" { + description + "../BucketType = 'BucketTypeBins'"; + } + description + "Result bins in an SLA metric bucket"; + uses SLA-OPER-BUCKET-AGGREGATED; + } + container unaggregated { + when "../bucket-type = 'bucket-type-samples'" { + description + "../BucketType = 'BucketTypeSamples'"; + } + description + "Result samples in an SLA metric bucket"; + uses SLA-OPER-BUCKET-UNAGGREGATED; + } + leaf bucket-type { + type Sla-oper-bucket; + description + "BucketType"; + } + } + + grouping SLA-OPER-BUCKET { + description + "The contents of an SLA bucket"; + container contents { + description + "The contents of the bucket; bins or samples"; + uses BUCKET-CONTENTS; + } + leaf start-at { + type uint32; + description + "Absolute time that the bucket started being + filled at"; + } + leaf duration { + type uint32; + units "second"; + description + "Length of time for which the bucket is being + filled in seconds"; + } + leaf sent { + type uint32; + description + "Number of packets sent in the probe"; + } + leaf lost { + type uint32; + description + "Number of lost packets in the probe"; + } + leaf corrupt { + type uint32; + description + "Number of corrupt packets in the probe"; + } + leaf out-of-order { + type uint32; + description + "Number of packets recieved out-of-order in the + probe"; + } + leaf duplicates { + type uint32; + description + "Number of duplicate packets received in the + probe"; + } + leaf minimum { + type int32; + description + "Overall minimum result in the probe, in + microseconds or millionths of a percent"; + } + leaf maximum { + type int32; + description + "Overall minimum result in the probe, in + microseconds or millionths of a percent"; + } + leaf time-of-minimum { + type uint32; + description + "Absolute time that the minimum value was + recorded"; + } + leaf time-of-maximum { + type uint32; + description + "Absolute time that the maximum value was + recorded"; + } + leaf average { + type int32; + description + "Mean of the results in the probe, in + microseconds or millionths of a percent"; + } + leaf standard-deviation { + type int32; + description + "Standard deviation of the results in the probe, + in microseconds or millionths of a percent"; + } + leaf result-count { + type uint32; + description + "The count of samples collected in the bucket."; + } + leaf data-sent-count { + type uint32; + description + "The number of data packets sent across the + bucket, used in the calculation of overall FLR."; + } + leaf data-lost-count { + type uint32; + description + "The number of data packets lost across the + bucket, used in the calculation of overall FLR."; + } + leaf overall-flr { + type int32; + units "percentage"; + description + "Frame Loss Ratio across the whole bucket, in + millionths of a percent"; + } + leaf suspect-start-mid-bucket { + type boolean; + description + "Results suspect due to a probe starting mid-way + through a bucket"; + } + leaf suspect-schedule-latency { + type boolean; + description + "Results suspect due to scheduling latency + causing one or more packets to not be sent"; + } + leaf suspect-send-fail { + type boolean; + description + "Results suspect due to failure to send one or + more packets"; + } + leaf suspect-premature-end { + type boolean; + description + "Results suspect due to a probe ending + prematurely"; + } + leaf suspect-clock-drift { + type boolean; + description + "Results suspect as more than 10 seconds time + drift detected"; + } + leaf suspect-memory-allocation-failed { + type boolean; + description + "Results suspect due to a memory allocation + failure"; + } + leaf suspect-cleared-mid-bucket { + type boolean; + description + "Results suspect as bucket was cleared mid-way + through being filled"; + } + leaf suspect-probe-restarted { + type boolean; + description + "Results suspect as probe restarted mid-way + through the bucket"; + } + leaf suspect-management-latency { + type boolean; + description + "Results suspect as processing of results has + been delayed"; + } + leaf suspect-multiple-buckets { + type boolean; + description + "Results suspect as the probe has been configured + across multiple buckets"; + } + leaf suspect-misordering { + type boolean; + description + "Results suspect as misordering has been detected + , affecting results"; + } + leaf suspect-flr-low-packet-count { + type boolean; + description + "Results suspect as FLR calculated based on a low + packet count"; + } + leaf premature-reason { + type uint32; + description + "If the probe ended prematurely, the error that + caused a probe to end"; + } + leaf premature-reason-string { + type string; + description + "Description of the error code that caused the + probe to end prematurely. For informational + purposes only"; + } + } + + grouping SLA-CFG-METRIC-THRESH-TYPE { + description + "Threshold configuration for an individual + threshold"; + leaf threshold-type { + type Sla-cfg-threshold; + description + "Type of the threshold"; + } + leaf threshold-condition { + type Sla-cfg-thresh-condition; + description + "Condition required for the threshold to be + breached"; + } + leaf threshold-value { + type int32; + description + "Configured threshold value, above which the + threshold is breached"; + } + leaf bin-threshold { + type uint32; + description + "For bin condition thresholds, this gives the bin + number in and above which samples count towards + the threshold breach value"; + } + } + + grouping SLA-OPER-THRESHOLD-STATISTICS { + description + "The results gathered for a threshold on a metric"; + container configuration { + description + "Configuration of the threshold"; + uses SLA-CFG-METRIC-THRESH-TYPE; + } + leaf state { + type Sla-metric-threshold-state; + description + "State of the threshold"; + } + leaf breaching-value { + type int32; + description + "The breaching value of the threshold, if + applicable"; + } + leaf action-name { + type string; + description + "Name of the threshold action"; + } + } + + grouping SLA-CFG-METRIC-TYPE { + description + "Aggregation configuration for an individual + metric"; + leaf metric-type { + type Sla-recordable-metric; + description + "Type of metric to which this configuration + applies"; + } + leaf bins-count { + type uint16; + description + "Total number of bins into which to aggregate. 0 + if no aggregation."; + } + leaf bins-width { + type uint32; + description + "Width of each bin into which to aggregate. 0 if + no aggregation. For SLM, the units of this value + are in single units of percent; for LMM they are + in tenths of percent; for other measurements + they are in microseconds."; + } + leaf bucket-size { + type uint8; + description + "Size of buckets into which measurements are + collected"; + } + leaf bucket-size-unit { + type Sla-bucket-size; + description + "Whether bucket size is 'per-probe' or 'probes'"; + } + leaf buckets-archive { + type uint32; + description + "Maximum number of buckets to store in memory"; + } + } + + grouping SLA-OPER-METRIC-STATISTICS { + description + "The results gathered for an individual metric"; + container config { + description + "Configuration of the metric"; + uses SLA-CFG-METRIC-TYPE; + } + list threshold { + description + "Thresholds on the metric"; + uses SLA-OPER-THRESHOLD-STATISTICS; + } + list bucket { + description + "Buckets stored for the metric"; + uses SLA-OPER-BUCKET; + } + } + + grouping SLA-OPER-OPERATION-SCHEDULE { + description + "Schedule of an operation"; + leaf start-time { + type uint32; + units "second"; + description + "Start time of the first probe, in seconds since + the Unix Epoch"; + } + leaf start-time-configured { + type boolean; + description + "Whether or not the operation start time was + explicitly configured"; + } + leaf schedule-duration { + type uint32; + units "second"; + description + "Duration of a probe for the operation in seconds"; + } + leaf schedule-interval { + type uint32; + units "second"; + description + "Interval between the start times of consecutive + probes, in seconds."; + } + } + + grouping SLA-OPER-OD-OPERATION-SPECIFIC { + description + "Parameters specific to the state of an ondemand + operation"; + leaf ondemand-operation-id { + type uint32; + description + "ID of the ondemand operation"; + } + leaf probe-count { + type uint8; + description + "Total number of probes sent during the operation"; + } + } + + grouping SLA-OPER-CFG-OPERATION-SPECIFIC { + description + "Parameters specific to the state of a configured + operation"; + leaf profile-name { + type string; + description + "Name of the profile used by the operation"; + } + } + + grouping SLA-OPER-OPERATION-SPECIFIC-OPTS { + description + "Parameters specific to the type of SLA operation"; + container configured-operation-options { + when "../oper-type = 'operation-type-configured'" { + description + "../OperType = 'OperationTypeConfigured'"; + } + description + "Parameters for a configured operation"; + uses SLA-OPER-CFG-OPERATION-SPECIFIC; + } + container ondemand-operation-options { + when "../oper-type = 'operation-type-ondemand'" { + description + "../OperType = 'OperationTypeOndemand'"; + } + description + "Parameters for an ondemand operation"; + uses SLA-OPER-OD-OPERATION-SPECIFIC; + } + leaf oper-type { + type Sla-oper-operation; + description + "OperType"; + } + } + + grouping SLA-OPER-OPERATION-STATISTICS { + description + "The statistics of an SLA operation"; + container specific-options { + description + "Options specific to the type of operation"; + uses SLA-OPER-OPERATION-SPECIFIC-OPTS; + } + container operation-schedule { + description + "Operation schedule"; + uses SLA-OPER-OPERATION-SCHEDULE; + } + leaf probe-type { + type string; + description + "Type of probe used by the operation"; + } + leaf display-short { + type string; + description + "Short display name used by the operation"; + } + leaf display-long { + type string; + description + "Long display name used by the operation"; + } + leaf flr-calculation-interval { + type uint32; + units "millisecond"; + description + "Interval between FLR calculations for SLM, in + milliseconds"; + } + list operation-metric { + description + "Metrics gathered for the operation"; + uses SLA-OPER-METRIC-STATISTICS; + } + } + + grouping SLA-OPER-SUM-INFORMATION { + description + "The summary information of SLA operations"; + leaf packet-name { + type string; + description + "The name of the packet type"; + } + leaf operation-count { + type uint32; + description + "Number of operations"; + } + leaf memory-usage { + type uint64; + description + "Total memory usage"; + } + } + + grouping SLA-OPER-SUMMARY { + description + "Summary of SLA operations"; + leaf packets-per-second { + type uint32; + description + "Average packets sent per second across all + operations"; + } + list packet-type { + description + "Summary of operations information"; + uses SLA-OPER-SUM-INFORMATION; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub2.yang new file mode 100644 index 000000000..3bb6474e0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub2.yang @@ -0,0 +1,3207 @@ +submodule Cisco-IOS-XR-ethernet-cfm-oper-sub2 { + belongs-to Cisco-IOS-XR-ethernet-cfm-oper { + prefix Cisco-IOS-XR-ethernet-cfm-oper; + } + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ethernet-cfm-oper-sub3 { + revision-date 2022-01-19; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-cfm package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-19 { + description + "Add CCM and AIS encapsulation conflict errors. + 2022-01-18 + Added CSF packet counters. + 2021-10-22 + Added counters for missing MEP offload intervals. + 2021-09-02 + Added support for LTM statistics."; + semver:module-version "2.0.0"; + } + revision 2020-10-07 { + description + "Added the Link Loss Forwarding feature."; + semver:module-version "1.3.0"; + } + revision 2020-07-07 { + description + "Added SLA summary information."; + semver:module-version "1.2.0"; + } + revision 2019-10-02 { + description + "Bandwidth notification addition"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-20 { + description + "Bandwidth notification class and type name update."; + } + revision 2017-10-06 { + description + "Traceroute transaction ID changed from int to uint."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cfm-pm-addl-intf-status { + type enumeration { + enum "unknown" { + value 0; + description + "Additional interface status unknown"; + } + enum "administratively-down" { + value 1; + description + "Interface is explicitly shutdown in + configuration"; + } + enum "remote-excessive-errors" { + value 2; + description + "Remote interface has exceeded its 802.3 Link + OAM error threshold"; + } + enum "local-excessive-errors" { + value 3; + description + "Local interface has exceeded its 802.3 Link OAM + error threshold"; + } + } + description + "Additional interface status"; + } + + typedef Cfm-pm-intf-status { + type enumeration { + enum "interface-status-up" { + value 1; + description + "Interface is up"; + } + enum "interface-status-down" { + value 2; + description + "Interface is down"; + } + enum "interface-status-testing" { + value 3; + description + "Interface is in testing mode"; + } + enum "interface-status-unknown" { + value 4; + description + "Unknown interface status"; + } + enum "interface-status-dormant" { + value 5; + description + "Interface is dormant"; + } + enum "interface-status-not-present" { + value 6; + description + "Interface status not found"; + } + enum "interface-status-lower-layer-down" { + value 7; + description + "Lower layer is down"; + } + } + description + "Interface status"; + } + + typedef Cfm-pm-port-status { + type enumeration { + enum "port-status-blocked" { + value 1; + description + "Port is STP blocked"; + } + enum "port-status-up" { + value 2; + description + "Port is up"; + } + enum "port-status-unknown" { + value 3; + description + "Unknown port status"; + } + } + description + "Port status"; + } + + typedef Cfm-pm-rmep-state { + type enumeration { + enum "peer-mep-idle" { + value 1; + description + "Momentary state during reset"; + } + enum "peer-mep-start" { + value 2; + description + "Loss timer not expired since reset, but no + valid CCM received"; + } + enum "peer-mep-failed" { + value 3; + description + "Loss timer has expired"; + } + enum "peer-mep-ok" { + value 4; + description + "Loss timer has not expired since last valid CCM"; + } + } + description + "State of the Peer MEP state machine"; + } + + typedef Cfm-pm-rmep-xc-state { + type enumeration { + enum "cross-check-ok" { + value 0; + description + "Cross-check OK"; + } + enum "cross-check-missing" { + value 1; + description + "No CCMs received within loss time from peer MEP"; + } + enum "cross-check-extra" { + value 2; + description + "CCMs received from peer MEP not marked for + cross-check"; + } + } + description + "Cross-check state of a peer MEP"; + } + + typedef Cfm-pm-ais-receive { + type enumeration { + enum "receive-none" { + value 0; + description + "No signal received"; + } + enum "receive-ais" { + value 1; + description + "Receiving AIS messages"; + } + enum "receive-lck" { + value 2; + description + "Receiving LCK messages"; + } + enum "receive-direct" { + value 3; + description + "Receiving AIS directly from another MEP on the + same interface"; + } + } + description + "Enumeration of how the MEP is receiving the + signal, directly or via AIS or LCK messages."; + } + + typedef Cfm-pm-ais-transmit { + type enumeration { + enum "transmit-none" { + value 0; + description + "AIS not transmitted"; + } + enum "transmit-ais" { + value 1; + description + "AIS transmitted via MIP"; + } + enum "transmit-ais-direct" { + value 2; + description + "AIS signal passed directly to a higher MEP"; + } + } + description + "Enumeration of how the MEP is transmitting AIS, + via a MIP or directly to a higher MEP"; + } + + typedef Cfm-pm-mep-defect { + type enumeration { + enum "defect-none" { + value 0; + description + "No defect reported"; + } + enum "defect-rdi-ccm" { + value 1; + description + "Some Peer MEP's CCM has the RDI bit set"; + } + enum "defect-ma-cstatus" { + value 2; + description + "A Peer MEP port or interface status error has + been reported"; + } + enum "defect-remote-ccm" { + value 3; + description + "Not receiving valid CCMs from at least one Peer + MEP"; + } + enum "defect-error-ccm" { + value 4; + description + "Currently receiving invalid CCMs from at least + one Peer MEP"; + } + enum "defect-cross-connect-ccm" { + value 5; + description + "Currently receiving CCMs from an incorrect + service (MA)"; + } + } + description + "Defects that can be reported by a MEP"; + } + + typedef Cfm-pm-mep-fng-state { + type enumeration { + enum "fng-reset" { + value 1; + description + "FNG in reset state"; + } + enum "fng-defect" { + value 2; + description + "FNG has detected but not yet reported a defect"; + } + enum "fng-report-defect" { + value 3; + description + "FNG is in the process of reporting a defect"; + } + enum "fng-defect-reported" { + value 4; + description + "FNG has reported a defect"; + } + enum "fng-defect-clearing" { + value 5; + description + "No defect present, but the reset timer has not + yet expired"; + } + } + description + "Fault Notification Generation state machine + states"; + } + + typedef Cfm-pm-elr-egress-action { + type enumeration { + enum "elr-egress-ok" { + value 1; + description + "OK"; + } + enum "elr-egress-down" { + value 2; + description + "Down"; + } + enum "elr-egress-blocked" { + value 3; + description + "STP Blocked"; + } + enum "elr-egress-vid" { + value 4; + description + "VID Blocked"; + } + enum "elr-egress-mac" { + value 255; + description + "MAC Pruned"; + } + } + description + "ELR Egress action"; + } + + typedef Cfm-pm-elr-ingress-action { + type enumeration { + enum "elr-ingress-ok" { + value 1; + description + "OK"; + } + enum "elr-ingress-down" { + value 2; + description + "Down"; + } + enum "elr-ingress-blocked" { + value 3; + description + "STP Blocked"; + } + enum "elr-ingress-vid" { + value 4; + description + "VID Blocked"; + } + } + description + "ELR Ingress action"; + } + + typedef Cfm-pm-elr-relay-action { + type enumeration { + enum "elr-relay-hit" { + value 1; + description + "Target Hit"; + } + enum "elr-relay-fdb" { + value 2; + description + "Filtering database"; + } + enum "elr-relay-flood" { + value 3; + description + "Flood forwarded"; + } + enum "elr-relay-drop" { + value 4; + description + "Dropped"; + } + } + description + "ELR relay action"; + } + + typedef Cfm-pm-last-hop-fmt { + type enumeration { + enum "last-hop-none" { + description + "No last hop identifier"; + } + enum "last-hop-host-name" { + description + "Last hop identifier is a hostname"; + } + enum "last-hop-egress-id" { + description + "Last hop identifier is an egress ID"; + } + } + description + "Last hop identifier format"; + } + + typedef Cfm-pm-egress-action { + type enumeration { + enum "egress-ok" { + value 1; + description + "OK"; + } + enum "egress-down" { + value 2; + description + "Down"; + } + enum "egress-blocked" { + value 3; + description + "STP Blocked"; + } + enum "egress-vid" { + value 4; + description + "VID Blocked"; + } + } + description + "Egress action"; + } + + typedef Cfm-pm-port-id-fmt { + type enumeration { + enum "port-id-interface-alias" { + value 1; + description + "Port ID is an interface alias"; + } + enum "port-id-port-component" { + value 2; + description + "Port ID is a component name"; + } + enum "port-id-mac-address" { + value 3; + description + "Port ID is a MAC address"; + } + enum "port-id-network-address" { + value 4; + description + "Port ID is a network address"; + } + enum "port-id-interface-name" { + value 5; + description + "Port ID is an interface name"; + } + enum "port-id-agent-circuit-id" { + value 6; + description + "Port ID is an agent name"; + } + enum "port-id-local" { + value 7; + description + "Port ID is a local name"; + } + enum "port-id-unknown" { + value 8; + description + "Port ID format unknown"; + } + } + description + "Port ID format"; + } + + typedef Cfm-pm-ingress-action { + type enumeration { + enum "ingress-ok" { + value 1; + description + "OK"; + } + enum "ingress-down" { + value 2; + description + "Down"; + } + enum "ingress-blocked" { + value 3; + description + "STP Blocked"; + } + enum "ingress-vid" { + value 4; + description + "VID Blocked"; + } + } + description + "Ingress action"; + } + + typedef Cfm-pm-id-fmt { + type enumeration { + enum "id-format-is-string" { + value 0; + description + "ID format is a string"; + } + enum "id-format-is-mac-address" { + value 1; + description + "ID format is a MAC address"; + } + enum "id-format-is-raw-hex" { + value 2; + description + "ID format is raw hex"; + } + } + description + "ID format"; + } + + typedef Cfm-pm-chassis-id-fmt { + type enumeration { + enum "chassis-id-chassis-component" { + value 1; + description + "Chassis ID is a component name"; + } + enum "chassis-id-interface-alias" { + value 2; + description + "Chassis ID is an interface alias"; + } + enum "chassis-id-port-component" { + value 3; + description + "Chassis ID is a port component name"; + } + enum "chassis-id-mac-address" { + value 4; + description + "Chassis ID is a MAC address"; + } + enum "chassis-id-network-address" { + value 5; + description + "Chassis ID is a network address"; + } + enum "chassis-id-interface-name" { + value 6; + description + "Chassis ID is an interface name"; + } + enum "chassis-id-local" { + value 7; + description + "Chassis ID is a local name"; + } + enum "chassis-id-unknown-type" { + value 8; + description + "Unknown Chassis ID type"; + } + } + description + "Chassis ID type"; + } + + typedef Cfm-pm-relay-action { + type enumeration { + enum "relay-hit" { + value 1; + description + "Target Hit"; + } + enum "relay-fdb" { + value 2; + description + "Filtering database"; + } + enum "relay-mpdb" { + value 3; + description + "CCM Learning database"; + } + } + description + "LTR relay action"; + } + + typedef Cfm-pm-elm-reply-filter { + type enumeration { + enum "reply-filter-not-present" { + value 0; + description + "Reply Filter not present"; + } + enum "reply-filter-default" { + value 1; + description + "Reply from ports which are not MAC-pruned, + VID-pruned, or STP-blocked"; + } + enum "reply-filter-vlan-topology" { + value 2; + description + "Reply from ports which are not VID-pruned or + STP-blocked"; + } + enum "reply-filter-spanning-tree" { + value 3; + description + "Reply from ports which are not STP-blocked"; + } + enum "reply-filter-all-ports" { + value 4; + description + "Reply from all ports"; + } + } + description + "Reply filter used for Exploratory Linktrace + operations"; + } + + typedef Cfm-pm-elt-delay-model { + type enumeration { + enum "delay-model-invalid" { + value 0; + description + "Not a valid delay model"; + } + enum "delay-model-logarithmic" { + value 1; + description + "Reply using logarithmic delay model"; + } + enum "delay-model-constant" { + value 2; + description + "Reply using constant delay model"; + } + } + description + "Delay model used for Exploratory Linktrace + operations"; + } + + typedef Cfm-pm-lt-mode { + type enumeration { + enum "cfm-pm-lt-mode-basic" { + value 1; + description + "Basic IEEE 802.1ag Linktrace"; + } + enum "cfm-pm-lt-mode-exploratory" { + value 2; + description + "Cisco Exploratory Linktrace"; + } + } + description + "Type of Linktrace operation"; + } + + typedef Cfm-pm-pkt-action { + type enumeration { + enum "packet-processed" { + value 0; + description + "Packet processed successfully"; + } + enum "packet-forwarded" { + value 1; + description + "Packet forwarded"; + } + enum "unknown-opcode" { + value 2; + description + "Packet dropped at a MEP due to unknown opcode"; + } + enum "filter-level" { + value 3; + description + "Packet dropped due to level/opcode filtering at + a MEP"; + } + enum "filter-blocked" { + value 4; + description + "Packet dropped because interface is STP blocked"; + } + enum "filter-local-mac" { + value 5; + description + "Packet dropped due to local destination MAC"; + } + enum "malformed-ccm-size" { + value 6; + description + "CCM too short or too long"; + } + enum "malformed-ccm-mep-id" { + value 7; + description + "Invalid MEP-ID"; + } + enum "malformed-too-short" { + value 8; + description + "Packet too short"; + } + enum "malformed-destination-mac-unicast" { + value 9; + description + "Destination MAC address does not match + interface"; + } + enum "malformed-destination-mac-multicast" { + value 10; + description + "Invalid multicast destination MAC address"; + } + enum "malformed-tlv-offset" { + value 11; + description + "TLV offset too short or beyond the end of the + packet"; + } + enum "malformed-lbm-source-mac" { + value 12; + description + "Invalid source MAC address for LBM"; + } + enum "malformed-ltr-relay-action" { + value 13; + description + "Unknown LTR relay action"; + } + enum "malformed-ltr-reply-tlv" { + value 14; + description + "LTR has neither reply-ingress or reply-egress"; + } + enum "malformed-lt-origin" { + value 15; + description + "Invalid Linktrace Message origin MAC address"; + } + enum "malformed-ltm-target" { + value 16; + description + "Invalid LTM target MAC address"; + } + enum "malformed-source-mac" { + value 17; + description + "Invalid source MAC address"; + } + enum "malformed-header-too-short" { + value 18; + description + "Packet too short for CFM header"; + } + enum "malformed-tlv-header-overrun" { + value 19; + description + "TLV header extends beyond the end of the packet"; + } + enum "malformed-tlv-overrun" { + value 20; + description + "TLV extends beyond the end of the packet"; + } + enum "malformed-duplicate-sender-id" { + value 21; + description + "Multiple Sender-ID TLVs found"; + } + enum "malformed-duplicate-port-status" { + value 22; + description + "Multiple Port-status TLVs found"; + } + enum "malformed-duplicate-interface-status" { + value 23; + description + "Multiple Interface-state TLVs found"; + } + enum "malformed-wrong-tlv" { + value 24; + description + "Invalid TLV for this type of packet found"; + } + enum "malformed-duplicate-data" { + value 25; + description + "Multiple Data TLVs found"; + } + enum "malformed-duplicate-ltr-egress-id" { + value 26; + description + "Multiple LTR-Egress-ID TLVs found"; + } + enum "malformed-duplicate-reply-ingress" { + value 27; + description + "Multiple Reply-ingress TLVs found"; + } + enum "malformed-duplicate-reply-egress" { + value 28; + description + "Multiple Reply-egress TLVs found"; + } + enum "malformed-duplicate-ltm-egress-id" { + value 29; + description + "Multiple LTM-Egress-ID TLVs found"; + } + enum "malformed-sender-id-size" { + value 30; + description + "Sender-ID TLV is too short"; + } + enum "malformed-chassis-id-size" { + value 31; + description + "Sender-ID TLV is too short to contain the + Chassis ID"; + } + enum "malformed-mgmt-address-domain-size" { + value 32; + description + "Sender-ID TLV is too short to contain the + management address domain"; + } + enum "malformed-mgmt-address-size" { + value 33; + description + "Sender-ID TLV is too short to contain the + management address"; + } + enum "malformed-port-status-size" { + value 34; + description + "Port-status TLV is too short"; + } + enum "malformed-port-status" { + value 35; + description + "Invalid Port status value"; + } + enum "malformed-interface-status-size" { + value 36; + description + "Interface-status TLV is too short"; + } + enum "malformed-interface-status" { + value 37; + description + "Invalid Interface status value"; + } + enum "malformed-organization-specific-tlv-size" { + value 38; + description + "Organization-specific TLV is too short"; + } + enum "malformed-duplicate-mep-name" { + value 39; + description + "Multiple MEP-name TLVs found"; + } + enum "malformed-duplicate-additional-interface-status" { + value 40; + description + "Multiple additional-interface-status TLVs found"; + } + enum "malformed-ltr-egress-id-size" { + value 41; + description + "LTR-Egress-ID TLV is too short"; + } + enum "malformed-reply-ingress-size" { + value 42; + description + "Reply-ingress TLV is too short"; + } + enum "malformed-ingress-action" { + value 43; + description + "Invalid ingress-action value"; + } + enum "malformed-reply-ingress-mac" { + value 44; + description + "Reply-ingress TLV has invalid MAC address"; + } + enum "malformed-ingress-port-length-size" { + value 45; + description + "Reply-ingress TLV is too short to contain the + Port ID type"; + } + enum "malformed-ingress-port-id-length" { + value 46; + description + "Reply-ingress TLV has a zero Port ID length"; + } + enum "malformed-ingress-port-id-size" { + value 47; + description + "Reply-ingress TLV is too short to contain the + Port ID"; + } + enum "malformed-reply-egress-size" { + value 48; + description + "Reply-egress TLV is too short"; + } + enum "malformed-egress-action" { + value 49; + description + "Invalid egress-action value"; + } + enum "malformed-reply-egress-mac" { + value 50; + description + "Reply-egress TLV has invalid MAC address"; + } + enum "malformed-egress-port-length-size" { + value 51; + description + "Reply-egress TLV is too short to contain the + Port ID type"; + } + enum "malformed-egress-port-id-length" { + value 52; + description + "Reply-egress TLV has a zero Port ID length"; + } + enum "malformed-egress-port-id-size" { + value 53; + description + "Reply-egress TLV is too short to contain the + Port ID"; + } + enum "malformed-ltm-egress-id-size" { + value 54; + description + "LTM-Egress_ID TLV is too short"; + } + enum "malformed-mep-name-size" { + value 55; + description + "MEP-name TLV is too short"; + } + enum "malformed-mep-name-name-length" { + value 56; + description + "MEP-name TLV is too short to contain a MEP name"; + } + enum "malformed-additional-interface-status-size" { + value 57; + description + "Additional-interface-status is too short"; + } + enum "malformed-additional-interface-status" { + value 58; + description + "Invalid additional interface status"; + } + enum "malformed-ccm-interval" { + value 59; + description + "CCM has a zero CCM interval"; + } + enum "malformed-mdid-mac-address-length" { + value 60; + description + "CCM has a MAC-address MDID but the MDID is the + wrong length"; + } + enum "malformed-mdid-length" { + value 61; + description + "CCM has an invalid MDID length"; + } + enum "malformed-sman-length" { + value 62; + description + "CCM has an invalid Short MA Name length"; + } + enum "malformed-sman2-byte-length" { + value 63; + description + "CCM has a VID or 16-bit Short MA Name but a + mismatched length"; + } + enum "malformed-sman-vpn-id-length" { + value 64; + description + "CCM has a VPNID Short MA Name but a mismatched + length"; + } + enum "malformed-elr-no-reply-tlv" { + value 65; + description + "ELR has no ELR Reply TLVs"; + } + enum "malformed-separate-elr-reply-egress" { + value 66; + description + "ELR Reply Egress TLVs not all adjacent"; + } + enum "malformed-dcm-destination-multicast" { + value 67; + description + "DCM has a multicast destination MAC"; + } + enum "malformed-dcm-embed-length" { + value 68; + description + "DCM is too short to contain an Embedded PDU"; + } + enum "malformed-dcm-embed-level" { + value 69; + description + "DCM Embedded PDU level does not match DCM level"; + } + enum "malformed-dcm-embed-version" { + value 70; + description + "DCM Embedded PDU version does not match DCM + version"; + } + enum "malformed-elr-relay-action" { + value 71; + description + "Unknown ELR relay action"; + } + enum "malformed-elr-tt-ls" { + value 73; + description + "Reply Ingress TTL is not one greater than Reply + Egress TTL"; + } + enum "malformed-elr-ttl-ingress" { + value 74; + description + "Reply Ingress TTL present without ELR Reply + Ingress TLV"; + } + enum "malformed-elr-ttl-egress" { + value 75; + description + "Reply Egress TTL present without ELR Reply + Egress TLV"; + } + enum "malformed-elm-destination-unicast" { + value 76; + description + "ELM Destination MAC must not be unicast"; + } + enum "malformed-elm-egress-id" { + value 77; + description + "ELM has no LTM Egress ID TLV"; + } + enum "malformed-dcm-embed-oui" { + value 78; + description + "Embedded DCM OUI unrecognized"; + } + enum "malformed-dcm-embed-opcode" { + value 79; + description + "Embedded DCM Opcode is not ELM"; + } + enum "malformed-elm-constant-zero" { + value 80; + description + "ELM Constant Factor is zero"; + } + enum "malformed-elr-timeout-zero" { + value 81; + description + "ELR Next-Hop Timeout is zero"; + } + enum "malformed-duplicate-test" { + value 82; + description + "Multiple Test TLVs found"; + } + enum "malformed-dmm-source-mac" { + value 83; + description + "Invalid source MAC address for DMM"; + } + enum "malformed-test-size" { + value 84; + description + "Test TLV is too short"; + } + enum "malformed-dmr-time-stamps" { + value 85; + description + "DMR has exactly one of its Rxf and Txb + timestamps unspecified"; + } + enum "malformed-dm-time-stamp-fmt" { + value 86; + description + "The format of one or more timestamps is invalid"; + } + enum "malformed-ais-interval" { + value 87; + description + "AIS/LCK has invalid interval value (not 1 + second or 1 minute)"; + } + enum "filter-interface-down" { + value 88; + description + "Packet dropped due to interface being down"; + } + enum "filter-forward-standby" { + value 89; + description + "Packet dropped - not forwarded because + interface is in standby mode"; + } + enum "malformed-sman-icc-based-length" { + value 90; + description + "CCM has an ICC-based format Short MA Name but a + mismatched length"; + } + enum "filter-foward-issu-secondary" { + value 120; + description + "Packet dropped - not forwarded in secondary HA + role"; + } + enum "filter-response-standby" { + value 121; + description + "Packet dropped - not responded to because + interface is in standby mode"; + } + enum "filter-response-issu-secondary" { + value 122; + description + "Packet dropped - not responded to in secondary + HA role"; + } + } + description + "Action taken for received packet"; + } + + typedef Cfm-pm-bnm-packet { + type enumeration { + enum "bnm-packet-type-bnm" { + description + "BNM"; + } + enum "bnm-packet-type-bwvsm" { + description + "Cisco BW-VSM"; + } + } + description + "BNM packet types"; + } + + typedef Cfm-pm-bnm-link-state { + type enumeration { + enum "bnm-link-state-ok" { + value 1; + description + "Link state OK"; + } + enum "bnm-link-state-degraded" { + value 2; + description + "Link state degraded"; + } + } + description + "Enumeration of BNM link states"; + } + + grouping CFM-PM-REMOTE-MEP-STATS { + description + "Peer MEP statistics"; + container last-ccm-received-time { + description + "Elapsed time since last CCM received"; + uses CFM-PM-TIMESTAMP; + } + leaf ccms-received { + type uint64; + description + "Number of CCMs received"; + } + leaf ccms-wrong-level { + type uint64; + description + "Number of CCMs received with an invalid level"; + } + leaf ccms-invalid-maid { + type uint64; + description + "Number of CCMs received with an invalid MAID"; + } + leaf ccms-invalid-interval { + type uint64; + description + "Number of CCMs received with an invalid interval"; + } + leaf ccms-invalid-source-mac-address { + type uint64; + description + "Number of CCMs received with an invalid source + MAC address"; + } + leaf ccms-our-mep-id { + type uint64; + description + "Number of CCMs received with our MEP ID"; + } + leaf ccms-rdi { + type uint64; + description + "Number of CCMs received with the Remote Defect + Indication bit set"; + } + leaf ccms-out-of-sequence { + type uint64; + description + "Number of CCMs received out-of-sequence"; + } + leaf last-ccm-sequence-number { + type uint32; + description + "Sequence number of last CCM received"; + } + } + + grouping CFM-PM-MEP-NAME { + description + "MEP name"; + leaf name { + type string; + description + "MEP name"; + } + } + + grouping CFM-PM-CCM-HDR-V2 { + description + "CCM frame header"; + container mdid { + description + "MDID"; + uses CFM-BAG-MDID-V2; + } + container short-ma-name { + description + "Short MA Name"; + uses CFM-BAG-SMAN-V2; + } + leaf level { + type Cfm-bag-md-level; + description + "MD level"; + } + leaf version { + type uint8; + description + "Version"; + } + leaf interval { + type Cfm-bag-ccm-interval; + description + "CCM interval"; + } + leaf rdi { + type boolean; + description + "Remote defect indicated"; + } + leaf sequence-number { + type uint32; + description + "CCM sequence number"; + } + leaf mep-id { + type uint16; + description + "MEP ID"; + } + leaf mdid-format { + type uint8; + description + "MDID Format"; + } + leaf short-ma-name-format { + type uint8; + description + "Short MA Name format"; + } + } + + grouping CFM-PM-CCM-V2 { + description + "Continuity check message (CCM)"; + container header { + description + "Frame header"; + uses CFM-PM-CCM-HDR-V2; + } + container sender-id { + description + "Sender ID TLV"; + uses CFM-PM-SENDER-ID; + } + container mep-name { + description + "MEP name"; + uses CFM-PM-MEP-NAME; + } + leaf port-status { + type Cfm-pm-port-status; + description + "Port status"; + } + leaf interface-status { + type Cfm-pm-intf-status; + description + "Interface status"; + } + leaf additional-interface-status { + type Cfm-pm-addl-intf-status; + description + "Additional interface status"; + } + leaf raw-data { + type yang:hex-string; + description + "Undecoded frame"; + } + list organization-specific-tlv { + description + "Organizational-specific TLVs"; + uses CFM-PM-ORG-SPEC-TLV; + } + list unknown-tlv { + description + "Unknown TLVs"; + uses CFM-PM-UNKNOWN-TLV; + } + } + + grouping CFM-PM-REMOTE-MEP-V2 { + description + "Peer maintenance endpoint (MEP)"; + container error-state { + description + "Error state"; + uses CFM-PM-RMEP-ERR-STATE; + } + container last-up-down-time { + description + "Elapsed time since peer MEP became active or + timed out"; + uses CFM-PM-TIMESTAMP; + } + container last-ccm-received { + description + "Last CCM received from the peer MEP"; + uses CFM-PM-CCM-V2; + } + container statistics { + description + "Peer MEP statistics"; + uses CFM-PM-REMOTE-MEP-STATS; + } + leaf mep-id { + type uint16; + description + "MEP ID"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + leaf cross-check-state { + type Cfm-pm-rmep-xc-state; + description + "Cross-check state"; + } + leaf peer-mep-state { + type Cfm-pm-rmep-state; + description + "State of the peer MEP state machine"; + } + leaf ccm-offload { + type Cfm-bag-ccm-offload; + description + "Offload status of received CCM handling"; + } + } + + grouping CFM-PM-REMOTE-MEPS-V2-BAG { + description + "Peer MEPs table entry"; + container peer-mep { + description + "Peer MEP"; + uses CFM-PM-REMOTE-MEP-V2; + } + leaf domain-xr { + type string; + description + "Maintenance domain name"; + } + leaf service-xr { + type string; + description + "Service name"; + } + leaf level { + type Cfm-bag-md-level; + description + "Maintenance level"; + } + leaf mep-id { + type uint16; + description + "MEP ID"; + } + leaf interface-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf mep-direction { + type Cfm-bag-direction; + description + "MEP facing direction"; + } + leaf standby { + type boolean; + description + "The local MEP is on an interface in standby mode"; + } + } + + grouping CFM-PM-MEP-AIS-STATS { + description + "Local MEP AIS information"; + container sending-start { + description + "Time elapsed since AIS sending started"; + uses CFM-PM-TIMESTAMP; + } + container receiving-start { + description + "Time elapsed since AIS receiving started"; + uses CFM-PM-TIMESTAMP; + } + leaf level { + type Cfm-bag-md-level; + description + "AIS transmission level"; + } + leaf interval { + type Cfm-bag-ais-interval; + description + "AIS transmission interval"; + } + leaf sending-ais { + type Cfm-pm-ais-transmit; + description + "Details of how AIS is being transmitted"; + } + leaf receiving-ais { + type Cfm-pm-ais-receive; + description + "Details of how the signal is being received"; + } + leaf last-interval { + type Cfm-bag-ais-interval; + description + "The interval of the last received AIS packet"; + } + leaf last-mac-address { + type Mac-address; + description + "Source MAC address of the last received AIS + packet"; + } + } + + grouping CFM-PM-MEP-STATS { + description + "Local MEP statistics"; + leaf ccms-sent { + type uint64; + description + "Number of CCMs sent"; + } + leaf ccms-received { + type uint64; + description + "Number of CCMs received"; + } + leaf ccms-out-of-sequence { + type uint64; + description + "Number of CCMs received out-of-sequence"; + } + leaf ccms-discarded { + type uint64; + description + "Number of CCMs discarded because maximum MEPs + limit was reached"; + } + leaf lb-ms-sent { + type uint64; + description + "Number of LBMs sent"; + } + leaf lb-rs-sent { + type uint64; + description + "Number of LBRs sent"; + } + leaf lb-rs-received { + type uint64; + description + "Number of LBRs received"; + } + leaf lb-rs-out-of-sequence { + type uint64; + description + "Number of LBRs received out-of-sequence"; + } + leaf lb-rs-bad-data { + type uint64; + description + "Number of LBRs received with non-matching + user-specified data"; + } + leaf lb-ms-received { + type uint64; + description + "Number of LBMs received"; + } + leaf lt-rs-received-unexpected { + type uint64; + description + "Number of unexpected LTRs received"; + } + leaf lt-rs-received { + type uint64; + description + "Number of LTRs received"; + } + leaf lt-rs-sent { + type uint64; + description + "Number of LTRs sent"; + } + leaf lt-ms-received { + type uint64; + description + "Number of LTMs received"; + } + leaf lt-ms-sent { + type uint64; + description + "Number of LTMs sent"; + } + leaf ai-ss-sent { + type uint64; + description + "Number of AIS messages sent"; + } + leaf ai-ss-received { + type uint64; + description + "Number of AIS messages received"; + } + leaf lc-ks-received { + type uint64; + description + "Number of LCK messages received"; + } + leaf dm-ms-sent { + type uint64; + description + "Number of DMM messages sent"; + } + leaf dm-ms-received { + type uint64; + description + "Number of DMM messages received"; + } + leaf dm-rs-sent { + type uint64; + description + "Number of DMR messages sent"; + } + leaf dm-rs-received { + type uint64; + description + "Number of DMR messages received"; + } + leaf sl-ms-sent { + type uint64; + description + "Number of SLM messages sent"; + } + leaf sl-ms-received { + type uint64; + description + "Number of SLM messages received"; + } + leaf sl-rs-sent { + type uint64; + description + "Number of SLR messages sent"; + } + leaf sl-rs-received { + type uint64; + description + "Number of SLR messages received"; + } + leaf lm-ms-sent { + type uint64; + description + "Number of LMM messages sent"; + } + leaf lm-ms-received { + type uint64; + description + "Number of LMM messages received"; + } + leaf lm-rs-sent { + type uint64; + description + "Number of LMR messages sent"; + } + leaf lm-rs-received { + type uint64; + description + "Number of LMR messages received"; + } + leaf bn-ms-received { + type uint64; + description + "Number of BNM messages received"; + } + leaf bn-ms-discarded { + type uint64; + description + "Number of BNM messages discarded"; + } + leaf ll-ms-sent { + type uint64; + description + "Number of LLM messages sent"; + } + leaf ll-ms-received { + type uint64; + description + "Number of LLM messages received"; + } + leaf ll-rs-sent { + type uint64; + description + "Number of LLR messages sent"; + } + leaf ll-rs-received { + type uint64; + description + "Number of LLR messages received"; + } + leaf los-csfs-received { + type uint64; + description + "Number of LOS CSF messages received"; + } + leaf rdi-csfs-received { + type uint64; + description + "Number of RDI CSF messages received"; + } + leaf fdi-csfs-received { + type uint64; + description + "Number of FDI CSF messages received"; + } + leaf dci-csfs-received { + type uint64; + description + "Number of DCI CSF messages received"; + } + leaf los-csfs-sent { + type uint64; + description + "Number of LOS CSF messages sent"; + } + leaf dci-csfs-sent { + type uint64; + description + "Number of DCI CSF messages sent"; + } + } + + grouping CFM-PM-MEP-STATS-BAG { + description + "Local MEP table entry"; + container statistics { + description + "MEP statistics"; + uses CFM-PM-MEP-STATS; + } + container ais-statistics { + description + "MEP AIS statistics"; + uses CFM-PM-MEP-AIS-STATS; + } + container defects { + description + "Defects detected from peer MEPs"; + uses CFM-PM-DEFECTS; + } + leaf domain-xr { + type string; + description + "Maintenance domain name"; + } + leaf service-xr { + type string; + description + "Service name"; + } + leaf level { + type Cfm-bag-md-level; + description + "Maintenance level"; + } + leaf mep-id-xr { + type uint16; + description + "MEP ID"; + } + leaf interface-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf interface-state { + type string; + description + "IM Interface state"; + } + leaf interworking-state { + type Cfm-bag-iw-state; + description + "Interface interworking state"; + } + leaf stp-state { + type Cfm-bag-stp-state; + description + "STP state"; + } + leaf mep-direction { + type Cfm-bag-direction; + description + "MEP facing direction"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + leaf peer-meps-detected { + type uint32; + description + "Number of peer MEPs detected"; + } + leaf peer-meps-with-errors-detected { + type uint32; + description + "Number of peer MEPs detected with errors"; + } + leaf remote-defect { + type boolean; + description + "Remote defect indicated"; + } + leaf fault-notification-state { + type Cfm-pm-mep-fng-state; + description + "Fault Notification Generation state"; + } + leaf ccm-generation-enabled { + type boolean; + description + "CCM generation enabled"; + } + leaf ccm-interval { + type Cfm-bag-ccm-interval; + description + "The interval between CCMs"; + } + leaf ccm-offload { + type Cfm-bag-ccm-offload; + description + "Offload status of CCM processing"; + } + leaf highest-defect { + type Cfm-pm-mep-defect; + description + "Highest-priority defect present since last FNG + reset"; + } + leaf rdi-defect { + type boolean; + description + "A peer MEP RDI defect has been reported"; + } + leaf mac-status-defect { + type boolean; + description + "A peer MEP port or interface status error has + been reported"; + } + leaf peer-mep-ccm-defect { + type boolean; + description + "A peer MEP CCM error has been reported"; + } + leaf error-ccm-defect { + type boolean; + description + "A CCM error has been reported"; + } + leaf cross-connect-ccm-defect { + type boolean; + description + "A cross-connect CCM error has been reported"; + } + leaf next-lbm-id { + type uint32; + description + "Next Transaction ID to be sent in a Loopback + Message"; + } + leaf next-ltm-id { + type uint32; + description + "Next Transaction ID to be sent in a Linktrace + Message"; + } + leaf cos { + type uint8; + description + "CoS bits the MEP will use for sent packets, if + configured"; + } + leaf efd-triggered { + type boolean; + description + "EFD triggered on the interface"; + } + leaf standby { + type boolean; + description + "The local MEP is on an interface in standby mode"; + } + leaf hairpin { + type boolean; + description + "MEP is on a sub-interface in the same + bridge-domain and on the same trunk interface as + another sub-interface"; + } + leaf defects-ignored { + type boolean; + description + "Defects present but ignored due to 'report + defects' configuration"; + } + leaf tx-disable-triggered { + type boolean; + description + "TX disable triggered"; + } + leaf restore-timer { + type uint32; + description + "Restore timer"; + } + leaf receiving-csf { + type boolean; + description + "Receiving CSF"; + } + leaf sending-csf { + type boolean; + description + "Sending CSF"; + } + leaf csf-interval { + type uint32; + description + "CSF packet interval"; + } + leaf cos-bits { + type uint32; + description + "CoS bits"; + } + leaf csf-started { + type uint32; + description + "Time when CSF packets were first sent"; + } + leaf received-csf-interval { + type Cfm-bag-ccm-interval; + description + "Time at which we are receiving CSF packets"; + } + leaf csf-received { + type uint32; + description + "Time when CSF packets were first received"; + } + } + + grouping CFM-PM-ELR-REPLY-EGRESS { + description + "ELR Reply egress TLV"; + container last-egress-id { + description + "Last Egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container next-egress-id { + description + "Next Egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container port-id { + description + "Port ID"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-elr-egress-action; + description + "Reply egress action"; + } + leaf mac-address { + type Mac-address; + description + "MAC address of egress interface"; + } + } + + grouping CFM-PM-ELR-REPLY-INGRESS { + description + "ELR Reply ingress TLV"; + container last-egress-id { + description + "Last egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container next-egress-id { + description + "Next egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container port-id { + description + "Port ID"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-elr-ingress-action; + description + "ELR Reply ingress action"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + } + + grouping CFM-PM-ELR-HDR { + description + "ELR frame header"; + leaf level { + type Cfm-bag-md-level; + description + "MD level"; + } + leaf version { + type uint8; + description + "Version"; + } + leaf forwarded { + type boolean; + description + "ELR was forwarded"; + } + leaf terminal-mep { + type boolean; + description + "Terminal MEP reached"; + } + leaf reply-filter-unknown { + type boolean; + description + "Reply Filter unrecognized"; + } + leaf transaction-id { + type uint32; + description + "Transaction ID"; + } + leaf ttl { + type uint8; + description + "TTL"; + } + leaf relay-action { + type Cfm-pm-elr-relay-action; + description + "Relay action"; + } + leaf next-hop-timeout { + type uint32; + units "second"; + description + "Next Hop Timeout, in seconds"; + } + leaf delay-model { + type Cfm-pm-elt-delay-model; + description + "Delay Model"; + } + } + + grouping CFM-PM-ELR { + description + "Exploratory Linktrace Reply (ELR) message "; + container header { + description + "Frame header"; + uses CFM-PM-ELR-HDR; + } + container sender-id { + description + "Sender ID TLV"; + uses CFM-PM-SENDER-ID; + } + container reply-ingress { + description + "Reply ingress TLV"; + uses CFM-PM-ELR-REPLY-INGRESS; + } + container reply-egress { + description + "Reply egress TLV"; + uses CFM-PM-ELR-REPLY-EGRESS; + } + container last-hop { + description + "Last hop ID"; + uses CFM-PM-LAST-HOP; + } + leaf raw-data { + type yang:hex-string; + description + "Undecoded frame"; + } + list organization-specific-tlv { + description + "Organizational-specific TLVs"; + uses CFM-PM-ORG-SPEC-TLV; + } + list unknown-tlv { + description + "Unknown TLVs"; + uses CFM-PM-UNKNOWN-TLV; + } + } + + grouping CFM-PM-LAST-HOP { + description + "Last hop type"; + container egress-id { + when "../last-hop-format = 'last-hop-egress-id'" { + description + "../LastHopFormat = 'LastHopEgressID'"; + } + description + "Egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + leaf last-hop-format { + type Cfm-pm-last-hop-fmt; + description + "LastHopFormat"; + } + leaf host-name { + when "../last-hop-format = 'last-hop-host-name'" { + description + "../LastHopFormat = 'LastHopHostname'"; + } + type Cfm-bag-optional-string; + description + "Hostname"; + } + } + + grouping CFM-PM-UNKNOWN-TLV { + description + "Unknown TLV"; + leaf typecode { + type uint8; + description + "Type code of TLV"; + } + leaf value { + type yang:hex-string; + description + "Binary data in TLV"; + } + } + + grouping CFM-PM-ORG-SPEC-TLV { + description + "Organizational-specific TLV"; + leaf oui { + type yang:hex-string; + description + "Organizationally-unique ID"; + } + leaf subtype { + type uint8; + description + "Subtype of TLV"; + } + leaf value { + type yang:hex-string; + description + "Binary data in TLV"; + } + } + + grouping CFM-PM-REPLY-EGRESS { + description + "Reply egress TLV"; + container port-id { + description + "Port ID"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-egress-action; + description + "Reply egress action"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + } + + grouping CFM-PM-PORT-ID-VAL { + description + "Port ID Value"; + leaf port-id-format { + type Cfm-pm-id-fmt; + description + "PortIDFormat"; + } + leaf port-id-string { + when "../port-id-format = 'id-format-is-string'" { + description + "../PortIDFormat = 'IDFormatIsString'"; + } + type Cfm-bag-optional-string; + description + "Port ID String"; + } + leaf port-id-mac { + when "../port-id-format = 'id-format-is-mac-address'" { + description + "../PortIDFormat = 'IDFormatIsMACAddress'"; + } + type Mac-address; + description + "Port ID MAC Address"; + } + leaf port-id-raw { + when "../port-id-format != 'id-format-is-string' and ../port-id-format != 'id-format-is-mac-address'" { + description + "../PortIDFormat != 'IDFormatIsString' and . + ./PortIDFormat != 'IDFormatIsMACAddress'"; + } + type Cfm-bag-optional-hex-data; + description + "Raw Port ID"; + } + } + + grouping CFM-PM-PORT-ID { + description + "Port ID"; + container port-id-value { + description + "Port ID (Current)"; + uses CFM-PM-PORT-ID-VAL; + } + leaf port-id-type { + type Cfm-pm-port-id-fmt; + description + "Port ID type"; + } + leaf port-id-type-value { + type uint8; + description + "Port ID type value"; + } + leaf port-id { + type yang:hex-string; + description + "Port ID (Deprecated)"; + } + } + + grouping CFM-PM-REPLY-INGRESS { + description + "Reply ingress TLV"; + container port-id { + description + "Port ID"; + uses CFM-PM-PORT-ID; + } + leaf action { + type Cfm-pm-ingress-action; + description + "Reply ingress action"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + } + + grouping CFM-PM-EGRESS-ID-TYPE { + description + "Egress ID"; + leaf unique-id { + type uint16; + description + "Unique ID"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + } + + grouping CFM-PM-LTR-EGRESS-ID { + description + "LTR Egress ID TLV"; + container last-egress-id { + description + "Last egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + container next-egress-id { + description + "Next egress ID"; + uses CFM-PM-EGRESS-ID-TYPE; + } + } + + grouping CFM-PM-CHASSIS-ID-VAL { + description + "Chassis ID Value"; + leaf chassis-id-format { + type Cfm-pm-id-fmt; + description + "ChassisIDFormat"; + } + leaf chassis-id-string { + when "../chassis-id-format = 'id-format-is-string'" { + description + "../ChassisIDFormat = 'IDFormatIsString'"; + } + type Cfm-bag-optional-string; + description + "Chassis ID String"; + } + leaf chassis-id-mac { + when "../chassis-id-format = 'id-format-is-mac-address'" { + description + "../ChassisIDFormat = 'IDFormatIsMACAddress'"; + } + type Mac-address; + description + "Chassis ID MAC Address"; + } + leaf chassis-id-raw { + when "../chassis-id-format != 'id-format-is-string' and ../chassis-id-format != 'id-format-is-mac-address'" { + description + "../ChassisIDFormat != 'IDFormatIsString' and . + ./ChassisIDFormat != 'IDFormatIsMACAddress'"; + } + type Cfm-bag-optional-hex-data; + description + "Raw Chassis ID"; + } + } + + grouping CFM-PM-CHASSIS-ID { + description + "Chassis ID"; + container chassis-id-value { + description + "Chassis ID (Current)"; + uses CFM-PM-CHASSIS-ID-VAL; + } + leaf chassis-id-type { + type Cfm-pm-chassis-id-fmt; + description + "Chassis ID Type"; + } + leaf chassis-id-type-value { + type uint8; + description + "Chassis ID Type"; + } + leaf chassis-id { + type yang:hex-string; + description + "Chassis ID (Deprecated)"; + } + } + + grouping CFM-PM-SENDER-ID { + description + "Sender ID TLV"; + container chassis-id { + description + "Chassis ID"; + uses CFM-PM-CHASSIS-ID; + } + leaf management-address-domain { + type yang:hex-string; + description + "Management address domain"; + } + leaf management-address { + type yang:hex-string; + description + "Management address"; + } + } + + grouping CFM-PM-LTR-HDR { + description + "LTR frame header"; + leaf level { + type Cfm-bag-md-level; + description + "MD level"; + } + leaf version { + type uint8; + description + "Version"; + } + leaf use-fdb-only { + type boolean; + description + "Use filtering DB only"; + } + leaf forwarded { + type boolean; + description + "LTR was forwarded"; + } + leaf terminal-mep { + type boolean; + description + "Terminal MEP reached"; + } + leaf transaction-id { + type uint32; + description + "Transaction ID"; + } + leaf ttl { + type uint8; + description + "TTL"; + } + leaf relay-action { + type Cfm-pm-relay-action; + description + "Relay action"; + } + } + + grouping CFM-PM-LTR { + description + "Linktrace reply (LTR) message "; + container header { + description + "Frame header"; + uses CFM-PM-LTR-HDR; + } + container sender-id { + description + "Sender ID TLV"; + uses CFM-PM-SENDER-ID; + } + container egress-id { + description + "Egress ID TLV"; + uses CFM-PM-LTR-EGRESS-ID; + } + container reply-ingress { + description + "Reply ingress TLV"; + uses CFM-PM-REPLY-INGRESS; + } + container reply-egress { + description + "Reply egress TLV"; + uses CFM-PM-REPLY-EGRESS; + } + container last-hop { + description + "Last hop ID"; + uses CFM-PM-LAST-HOP; + } + leaf raw-data { + type yang:hex-string; + description + "Undecoded frame"; + } + list organization-specific-tlv { + description + "Organizational-specific TLVs"; + uses CFM-PM-ORG-SPEC-TLV; + } + list unknown-tlv { + description + "Unknown TLVs"; + uses CFM-PM-UNKNOWN-TLV; + } + } + + grouping CFM-PM-MEP-TR-CACHE-BAG { + description + "Traceroute cache table entry"; + container traceroute-information { + description + "Information about the traceroute operation"; + uses CFM-PM-LT-INFO; + } + leaf replies-dropped { + type uint32; + description + "Count of ignored replies for this request"; + } + list linktrace-reply { + description + "Received linktrace replies"; + uses CFM-PM-LTR; + } + list exploratory-linktrace-reply { + description + "Received exploratory linktrace replies"; + uses CFM-PM-ELR; + } + } + + grouping CFM-PM-LT-OPTS-EXPLORATORY { + description + "options for an Exploratory Linktrace"; + leaf delay-model { + type Cfm-pm-elt-delay-model; + description + "Delay model for delay calculations"; + } + leaf delay-constant-factor { + type uint32; + description + "Constant Factor for delay calculations"; + } + leaf reply-filter { + type Cfm-pm-elm-reply-filter; + description + "Reply Filtering mode used by responders"; + } + } + + grouping CFM-PM-LT-OPTS-BASIC { + description + "Options for a basic IEEE 802.1ag Linktrace"; + leaf is-auto { + type boolean; + description + "Traceroute was initiated automatically"; + } + leaf fdb-only { + type boolean; + description + "Only use the Filtering Database for forwarding + lookups"; + } + } + + grouping CFM-PM-LT-OPTS { + description + "Options affecting the behavior of the traceroute"; + container basic-options { + when "../mode = 'cfm-pm-lt-mode-basic'" { + description + "../Mode = 'CFM_PM_LT_MODE_BASIC'"; + } + description + "Options for a basic IEEE 802.1ag Linktrace"; + uses CFM-PM-LT-OPTS-BASIC; + } + container exploratory-options { + when "../mode = 'cfm-pm-lt-mode-exploratory'" { + description + "../Mode = 'CFM_PM_LT_MODE_EXPLORATORY'"; + } + description + "Options for an Exploratory Linktrace"; + uses CFM-PM-LT-OPTS-EXPLORATORY; + } + leaf mode { + type Cfm-pm-lt-mode; + description + "Mode"; + } + } + + grouping CFM-PM-LT-INFO { + description + "Information about a traceroute request"; + container options { + description + "Options affecting traceroute behavior"; + uses CFM-PM-LT-OPTS; + } + leaf domain { + type string; + description + "Maintenance domain name"; + } + leaf service { + type string; + description + "Service name"; + } + leaf level { + type Cfm-bag-md-level; + description + "Maintenance level"; + } + leaf source-mep-id { + type uint16; + description + "Source MEP ID"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface"; + } + leaf source-mac-address { + type Mac-address; + description + "Source MAC address"; + } + leaf target-mac-address { + type Mac-address; + description + "Target MAC address"; + } + leaf directed-mac-address { + type Mac-address; + description + "Directed MAC address"; + } + leaf target-mep-id { + type uint16; + description + "Target MEP ID"; + } + leaf timestamp { + type uint64; + units "second"; + description + "Timestamp of initiation time (seconds)"; + } + leaf ttl { + type uint8; + description + "Time to live"; + } + leaf transaction-id { + type uint32; + description + "Transaction ID"; + } + } + + grouping CFM-PM-MEP-INCOMPLETE-TR-BAG { + description + "Local MEP incomplete traceroute table entry"; + container traceroute-information { + description + "Information about the traceroute operation"; + uses CFM-PM-LT-INFO; + } + leaf time-left { + type uint64; + units "second"; + description + "Time (in seconds) before the traceroute + completes"; + } + } + + grouping CFM-PM-CLDB-BAG { + description + "Continuity check message learning database table + entry"; + leaf domain-xr { + type string; + description + "Maintenance domain name"; + } + leaf level { + type Cfm-bag-md-level; + description + "Maintenance level"; + } + leaf service-xr { + type string; + description + "Maintenance association name"; + } + leaf source-mac-address { + type Mac-address; + description + "Source MAC address"; + } + leaf ingress-interface { + type uint32; + description + "The XID of the ingress interface for the CCM"; + } + leaf stale { + type boolean; + description + "The XID is stale and may have been reused for a + different interface"; + } + leaf ingress-interface-string { + type string; + description + "String representation of the Bridge Domain or + Cross-Connect associated with the ingress XID"; + } + } + + grouping CFM-PM-MALF-PKT-DATA { + description + "Structure to hold information about one packet"; + leaf reason { + type Cfm-pm-pkt-action; + description + "Reason for being malformed"; + } + leaf direction { + type Cfm-bag-pkt-direction; + description + "Direction the packet was travelling in"; + } + leaf source-mac-address { + type Mac-address; + description + "Source MAC address"; + } + leaf dest-mac-address { + type Mac-address; + description + "Destination MAC address"; + } + leaf timestamp { + type uint32; + units "second"; + description + "Timestamp for the packet in seconds"; + } + leaf timestamp-msec { + type uint32; + description + "Millisecond resolution for the timestamp"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf packet-content { + type yang:hex-string; + description + "Raw packet content"; + } + } + + grouping CFM-PM-MALF-PKT-IFH-BAG { + description + "Array of malformed packets for one interface"; + list malformed-packet-array { + description + "Malformed Packet Array"; + uses CFM-PM-MALF-PKT-DATA; + } + } + + grouping CFM-PM-EFP-LLF-MEP { + description + "Bag for a single MEP on an interface for the LLF + table"; + container defects { + description + "Defects detected"; + uses CFM-PM-DEFECTS; + } + leaf mep-id { + type uint16; + description + "MEP ID"; + } + leaf restore-timer { + type uint32; + description + "Restore timer"; + } + } + + grouping CFM-PM-EFP-LLF-BAG { + description + "Local interface LLF table entry"; + leaf interface-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf interface-state { + type string; + description + "IM Interface state"; + } + leaf interworking-state { + type Cfm-bag-iw-state; + description + "Interface interworking state"; + } + leaf stp-state { + type Cfm-bag-stp-state; + description + "STP state"; + } + list meps { + description + "List of MEPs on interface"; + uses CFM-PM-EFP-LLF-MEP; + } + } + + grouping CFM-PM-EFP-STATS { + description + "EFP statistics"; + leaf malformed-packets { + type uint64; + description + "Number of malformed packets received at this EFP"; + } + leaf dropped-packets { + type uint64; + description + "Number of packets dropped at this EFP"; + } + leaf last-malformed-opcode { + type Cfm-bag-opcode; + description + "Opcode for last malformed packet"; + } + leaf last-malformed-reason { + type Cfm-pm-pkt-action; + description + "Reason last malformed packet was malformed"; + } + } + + grouping CFM-PM-EFP-STATS-BAG { + description + "Local interface statistics table entry"; + container statistics { + description + "EFP statistics"; + uses CFM-PM-EFP-STATS; + } + leaf interface-xr { + type xr:Interface-name; + description + "Interface"; + } + } + + grouping CFM-PM-BNM { + description + "Last BNM Received details"; + container time-received { + description + "Time elapsed since BNM received"; + uses CFM-PM-TIMESTAMP; + } + leaf nominal-bandwidth { + type uint32; + description + "Nominal bandwidth"; + } + leaf current-bandwidth { + type uint32; + description + "Current bandwidth"; + } + leaf interval { + type Cfm-bag-bnm-interval; + description + "Interval"; + } + leaf packet-type { + type Cfm-pm-bnm-packet; + description + "Packet type"; + } + } + + grouping CFM-PM-BNM-LINK { + description + "BNM Enabled Link"; + container time-in-state { + description + "Elapsed time in this state"; + uses CFM-PM-TIMESTAMP; + } + container last-bnm-received { + description + "Last BNM received"; + uses CFM-PM-BNM; + } + leaf port-id { + type uint32; + description + "Port ID"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + leaf bnm-link-state { + type Cfm-pm-bnm-link-state; + description + "State of the BNM Enabled Link state machine"; + } + leaf nominal-bandwidth { + type uint32; + description + "Nominal Bandwidth"; + } + leaf reported-bandwidth { + type uint32; + description + "Reported Bandwidth"; + } + leaf transitions-to-degraded { + type uint32; + description + "Number of transitions into degraded state"; + } + leaf holdoff-remaining { + type uint32; + description + "Time remaining on hold-off timer"; + } + leaf wait-to-restore-remaining { + type uint32; + description + "Time remaining on wait-to-restore timer"; + } + leaf bn-ms-received { + type uint32; + description + "Number of BNMs received"; + } + } + + grouping CFM-PM-BNM-LINK-BAG { + description + "BNM Enabled Link table entry"; + container bnm-enabled-link { + description + "BNM Enabled Link"; + uses CFM-PM-BNM-LINK; + } + leaf level { + type Cfm-bag-md-level; + description + "Maintenance level"; + } + leaf interface-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf mep-direction-xr { + type Cfm-bag-direction; + description + "MEP facing direction"; + } + } + + grouping CFM-PM-TIMESTAMP { + description + "Timestamp"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } + + grouping CFM-PM-RMEP-ERR-STATE { + description + "Error state of a Peer MEP"; + leaf loss-threshold-exceeded { + type boolean; + description + "Timed out (loss threshold exceeded)"; + } + leaf invalid-level { + type boolean; + description + "Invalid level"; + } + leaf invalid-maid { + type boolean; + description + "Invalid MAID"; + } + leaf invalid-ccm-interval { + type boolean; + description + "Invalid CCM interval"; + } + leaf received-our-mac { + type boolean; + description + "Loop detected (our MAC address received)"; + } + leaf received-our-mep-id { + type boolean; + description + "Configuration Error (our MEP ID received)"; + } + leaf received-rdi { + type boolean; + description + "Remote defection indication received"; + } + } + + grouping CFM-PM-DEFECTS { + description + "Defects detected from peer MEPs"; + container remote-meps-defects { + description + "Defects detected from remote MEPs"; + uses CFM-PM-RMEP-ERR-STATE; + } + leaf ais-received { + type boolean; + description + "AIS or LCK received"; + } + leaf csf-received { + type boolean; + description + "CSF packet received indicating a defect"; + } + leaf peer-meps-that-timed-out { + type uint32; + description + "Number of peer MEPs that have timed out"; + } + leaf missing { + type uint32; + description + "Number of missing peer MEPs"; + } + leaf auto-missing { + type uint32; + description + "Number of missing auto cross-check MEPs"; + } + leaf unexpected { + type uint32; + description + "Number of unexpected peer MEPs"; + } + leaf local-port-status { + type boolean; + description + "The local port or interface is down"; + } + leaf peer-port-status { + type boolean; + description + "A peer port or interface is down"; + } + } + + grouping CFM-PM-AIS-STATS { + description + "AIS statistics"; + container defects { + description + "Defects detected"; + uses CFM-PM-DEFECTS; + } + container last-started { + description + "Time elapsed since sending last started"; + uses CFM-PM-TIMESTAMP; + } + leaf direction { + type Cfm-bag-direction; + description + "Direction of AIS packets"; + } + leaf lowest-level { + type Cfm-bag-md-level; + description + "Level of the lowest MEP transmitting AIS"; + } + leaf transmission-level { + type Cfm-bag-md-level; + description + "Level that AIS packets are transmitted on"; + } + leaf transmission-interval { + type Cfm-bag-ais-interval; + description + "Interval at which AIS packets are transmitted"; + } + leaf sent-packets { + type uint32; + description + "Total number of packets sent by the transmitting + MEP"; + } + leaf-list via-level { + type Cfm-bag-md-level; + description + "Levels of other MEPs receiving AIS"; + } + } + + grouping CFM-PM-EFP-AIS-BAG { + description + "Local interface AIS table entry"; + container statistics { + description + "AIS statistics"; + uses CFM-PM-AIS-STATS; + } + leaf interface-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf interface-state { + type string; + description + "IM Interface state"; + } + leaf interworking-state { + type Cfm-bag-iw-state; + description + "Interface interworking state"; + } + leaf stp-state { + type Cfm-bag-stp-state; + description + "STP state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub3.yang new file mode 100644 index 000000000..1dd777175 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub3.yang @@ -0,0 +1,1169 @@ +submodule Cisco-IOS-XR-ethernet-cfm-oper-sub3 { + belongs-to Cisco-IOS-XR-ethernet-cfm-oper { + prefix Cisco-IOS-XR-ethernet-cfm-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-cfm package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-19 { + description + "Add CCM and AIS encapsulation conflict errors. + 2022-01-18 + Added CSF packet counters. + 2021-10-22 + Added counters for missing MEP offload intervals. + 2021-09-02 + Added support for LTM statistics."; + semver:module-version "2.0.0"; + } + revision 2020-10-07 { + description + "Added the Link Loss Forwarding feature."; + semver:module-version "1.3.0"; + } + revision 2020-07-07 { + description + "Added SLA summary information."; + semver:module-version "1.2.0"; + } + revision 2019-10-02 { + description + "Bandwidth notification addition"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-20 { + description + "Bandwidth notification class and type name update."; + } + revision 2017-10-06 { + description + "Traceroute transaction ID changed from int to uint."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cfm-bag-sman-fmt { + type enumeration { + enum "sman-vlan-id" { + value 1; + description + "Short MA Name is a 12-bit VLAN-ID"; + } + enum "sman-string" { + value 2; + description + "Short MA Name is a character string"; + } + enum "sman-uint16" { + value 3; + description + "Short MA Name is a 16-bit unsigned integer"; + } + enum "sman-vpn-id" { + value 4; + description + "Short MA Name is a global VPN identifier"; + } + enum "sman-icc" { + value 32; + description + "Short MA Name uses the ICC-based format"; + } + enum "sman-unknown" { + value 33; + description + "Unknown Short MA Name format"; + } + } + description + "Short MA Name format"; + } + + typedef Cfm-bag-mdid-fmt { + type enumeration { + enum "mdid-null" { + value 1; + description + "MDID is explicity NULL"; + } + enum "mdid-dns-like" { + value 2; + description + "MDID is based on a DNS name"; + } + enum "mdid-mac-address" { + value 3; + description + "MDID is a (MAC address, integer) pair"; + } + enum "mdid-string" { + value 4; + description + "MDID is a character string"; + } + enum "mdid-unknown" { + value 5; + description + "Unknown MDID format"; + } + } + description + "CFM MDID format"; + } + + typedef Cfm-bag-ccm-offload { + type enumeration { + enum "offload-none" { + description + "CCM processing has not been offloaded"; + } + enum "offload-software" { + description + "CCM processing has been offloaded to software"; + } + enum "offload-hardware" { + description + "CCM processing has been offloaded to hardware"; + } + } + description + "Offload status of CCM processing"; + } + + typedef Cfm-bag-optional-hex-data { + type yang:hex-string; + description + "Hex binary data which may be optionally present."; + } + + typedef Cfm-bag-optional-string { + type string; + description + "String which may be optionally present."; + } + + typedef Cfm-bag-ccm-interval { + type enumeration { + enum "interval-none" { + value 0; + description + "Invalid CCM interval"; + } + enum "interval3-3ms" { + value 1; + description + "Interval of 3.3ms"; + } + enum "interval10ms" { + value 2; + description + "Interval of 10ms"; + } + enum "interval100ms" { + value 3; + description + "Interval of 100ms"; + } + enum "interval1s" { + value 4; + description + "Interval of 1s"; + } + enum "interval10s" { + value 5; + description + "Interval of 10s"; + } + enum "interval1m" { + value 6; + description + "Interval of 1 min"; + } + enum "interval10m" { + value 7; + description + "Interval of 10 mins"; + } + } + description + "CFM CCM intervals"; + } + + typedef Cfm-bag-bdid-fmt { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid BDID identifier format"; + } + enum "bd-id" { + value 1; + description + "Identifier is a bridge domain ID"; + } + enum "xc-p2p-id" { + value 2; + description + "Identifier is a P2P cross-connect ID"; + } + enum "xc-mp2mp-id" { + value 3; + description + "Identifier is a MP2MP cross-connect ID"; + } + enum "fxc-vlan-aware-id" { + value 4; + description + "Identifier is a VLAN-aware flexible + cross-connect ID"; + } + enum "fxc-vlan-unaware-id" { + value 5; + description + "Identifier is a VLAN-unaware flexible + cross-connect ID"; + } + enum "down-only" { + value 6; + description + "Identifier is a maintenance association name"; + } + } + description + "Bridge domain identifier format"; + } + + typedef Cfm-ma-mp-variety { + type enumeration { + enum "mip" { + description + "MIP"; + } + enum "up-mep" { + description + "Up MEP"; + } + enum "down-mep" { + description + "Down MEP"; + } + enum "unknown-mep" { + description + "Unknown MEP"; + } + } + description + "CFM MA Maintenance Point varieties"; + } + + typedef Cfm-bag-issu-role { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown"; + } + enum "primary" { + value 1; + description + "Primary"; + } + enum "secondary" { + value 2; + description + "Secondary"; + } + } + description + "CFM ISSU role"; + } + + typedef Cfm-bag-pkt-direction { + type enumeration { + enum "direction-ingress" { + value 0; + description + "Ingress"; + } + enum "direction-egress" { + value 1; + description + "Egress"; + } + } + description + "Packet direction"; + } + + typedef Cfm-bag-opcode { + type enumeration { + enum "reserved" { + value 0; + description + "Reserved"; + } + enum "ccm" { + value 1; + description + "Continuity Check"; + } + enum "lbr" { + value 2; + description + "Loopback Reply"; + } + enum "lbm" { + value 3; + description + "Loopback Message"; + } + enum "ltr" { + value 4; + description + "Linktrace Reply"; + } + enum "ltm" { + value 5; + description + "Linktrace Message"; + } + } + description + "CFM Opcode"; + } + + typedef Cfm-bag-bnm-interval { + type enumeration { + enum "bnm-interval-none" { + value 0; + description + "Invalid BNM interval"; + } + enum "bnm-interval1s" { + value 4; + description + "Interval of 1s"; + } + enum "bnm-interval10s" { + value 5; + description + "Interval of 10s"; + } + enum "bnm-interval1m" { + value 6; + description + "Interval of 1 min"; + } + } + description + "CFM BNM intervals"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Cfm-bag-ais-interval { + type enumeration { + enum "ais-interval-none" { + value 0; + description + "Invalid AIS interval"; + } + enum "ais-interval1s" { + value 4; + description + "Interval of 1s"; + } + enum "ais-interval1m" { + value 6; + description + "Interval of 1 min"; + } + } + description + "CFM AIS intervals"; + } + + typedef Cfm-bag-md-level { + type enumeration { + enum "level0" { + value 0; + description + "CFM level 0"; + } + enum "level1" { + value 1; + description + "CFM level 1"; + } + enum "level2" { + value 2; + description + "CFM level 2"; + } + enum "level3" { + value 3; + description + "CFM level 3"; + } + enum "level4" { + value 4; + description + "CFM level 4"; + } + enum "level5" { + value 5; + description + "CFM level 5"; + } + enum "level6" { + value 6; + description + "CFM level 6"; + } + enum "level7" { + value 7; + description + "CFM level 7"; + } + enum "level-invalid" { + value 8; + description + "Invalid CFM level"; + } + } + description + "CFM level"; + } + + typedef Cfm-bag-direction { + type enumeration { + enum "direction-up" { + value 0; + description + "Up"; + } + enum "direction-down" { + value 1; + description + "Down"; + } + enum "direction-invalid" { + value 2; + description + "Invalid direction"; + } + } + description + "MEP direction"; + } + + typedef Cfm-bag-stp-state { + type enumeration { + enum "stp-up" { + description + "Interface is UP"; + } + enum "stp-blocked" { + description + "Interface is STP-blocked"; + } + enum "stp-unknown" { + description + "Unknown Interface STP state"; + } + } + description + "CFM STP state"; + } + + typedef Cfm-bag-iw-state { + type enumeration { + enum "interworking-up" { + description + "Interface is UP"; + } + enum "interworking-test" { + description + "Interface is in TEST mode"; + } + } + description + "CFM Interworking state"; + } + + grouping CFM-BAG-SMAN-VPNID-NAME { + description + "Short MA Name VPN ID name"; + leaf oui { + type uint32; + description + "VPN authority organizationally-unique ID"; + } + leaf index { + type uint32; + description + "VPN index"; + } + } + + grouping CFM-BAG-SMAN-V2 { + description + "Short MA Name types"; + container vpn-id-name { + when "../short-ma-name-format-value = 'sman-vpn-id'" { + description + "../ShortMANameFormatValue = 'SMAN_VPN_ID'"; + } + description + "VPN ID name"; + uses CFM-BAG-SMAN-VPNID-NAME; + } + leaf short-ma-name-format-value { + type Cfm-bag-sman-fmt; + description + "ShortMANameFormatValue"; + } + leaf vlan-id-name { + when "../short-ma-name-format-value = 'sman-vlan-id'" { + description + "../ShortMANameFormatValue = 'SMAN_VLAN_ID'"; + } + type uint16; + description + "VLAN ID name"; + } + leaf string-name { + when "../short-ma-name-format-value = 'sman-string'" { + description + "../ShortMANameFormatValue = 'SMANString'"; + } + type Cfm-bag-optional-string; + description + "String name"; + } + leaf integer-name { + when "../short-ma-name-format-value = 'sman-uint16'" { + description + "../ShortMANameFormatValue = 'SMAN_UINT16'"; + } + type uint16; + description + "Unsigned integer name"; + } + leaf icc-based { + when "../short-ma-name-format-value = 'sman-icc'" { + description + "../ShortMANameFormatValue = 'SMAN_ICC'"; + } + type Cfm-bag-optional-string; + description + "ICC-based format"; + } + leaf short-ma-name-data { + when "../short-ma-name-format-value = 'sman-unknown'" { + description + "../ShortMANameFormatValue = 'SMANUnknown'"; + } + type Cfm-bag-optional-hex-data; + description + "Hex data"; + } + } + + grouping CFM-BAG-MDID-MAC-NAME { + description + "MDID MAC name"; + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + leaf integer { + type uint16; + description + "Integer"; + } + } + + grouping CFM-BAG-MDID-V2 { + description + "MDID types"; + container mac-name { + when "../mdid-format-value = 'mdid-mac-address'" { + description + "../MDIDFormatValue = 'MDID_MACAddress'"; + } + description + "MAC address name"; + uses CFM-BAG-MDID-MAC-NAME; + } + leaf mdid-format-value { + type Cfm-bag-mdid-fmt; + description + "MDIDFormatValue"; + } + leaf dns-like-name { + when "../mdid-format-value = 'mdid-dns-like'" { + description + "../MDIDFormatValue = 'MDID_DNSLike'"; + } + type Cfm-bag-optional-string; + description + "DNS-like name"; + } + leaf string-name { + when "../mdid-format-value = 'mdid-string'" { + description + "../MDIDFormatValue = 'MDIDString'"; + } + type Cfm-bag-optional-string; + description + "String name"; + } + leaf mdid-data { + when "../mdid-format-value = 'mdid-unknown'" { + description + "../MDIDFormatValue = 'MDIDUnknown'"; + } + type Cfm-bag-optional-hex-data; + description + "Hex data"; + } + } + + grouping CFM-BAG-SAT-PDU-CAPS { + description + "Satellite PDU Capabilities"; + leaf responder { + type boolean; + description + "Responder"; + } + leaf controller { + type boolean; + description + "Controller"; + } + } + + grouping CFM-BAG-SAT-ACCESS-PORT-CAPS { + description + "Satellite access port capabilities"; + container loopback { + description + "Loopback"; + uses CFM-BAG-SAT-PDU-CAPS; + } + container delay-measurement { + description + "Delay Measurement"; + uses CFM-BAG-SAT-PDU-CAPS; + } + container synthetic-loss-measurement { + description + "Synthetic Loss Measurement"; + uses CFM-BAG-SAT-PDU-CAPS; + } + } + + grouping CFM-MA-MEP-ERRORS { + description + "CFM MA MEP Errors"; + container mep { + description + "The MEP that has errors"; + uses CFM-MA-MP; + } + container service-bridge-domain { + description + "BD/XC ID for the MEP's Service, or Service name + if the Service is 'down-only'"; + uses CFM-BAG-BDID; + } + container interface-bridge-domain { + description + "ID of the BD/XC that the MEP's EFP is in, if any"; + uses CFM-BAG-BDID; + } + container satellite-capabilities { + description + "Satellite Capabilities"; + uses CFM-BAG-SAT-ACCESS-PORT-CAPS; + } + leaf ccm-interval { + type Cfm-bag-ccm-interval; + description + "Interval between CCMs sent on this MEP."; + } + leaf no-domain { + type boolean; + description + "The MEP's Domain is not configured"; + } + leaf no-service { + type boolean; + description + "The MEP's Service is not configured"; + } + leaf bridge-domain-mismatch { + type boolean; + description + "The MEP's EFP is not in the Service's Bridge + Domain"; + } + leaf level-conflict { + type boolean; + description + "Another MEP facing in the same direction is at + the same Maintenance Level"; + } + leaf ccm-interval-not-supported { + type boolean; + description + "CCM Interval is less than minimum interval + supported by hardware"; + } + leaf offload-out-of-resources { + type boolean; + description + "Offload resource limits have been exceeded"; + } + leaf offload-multiple-local-mep { + type boolean; + description + "Multiple offloaded MEPs on the same interface + are not supported."; + } + leaf offload-no-cross-check { + type boolean; + description + "The MEP should be offloaded but crosscheck has + not been configured."; + } + leaf offload-multiple-peer-meps { + type boolean; + description + "The MEP should be offloaded but multiple + crosscheck MEPs have been configured, and this + is not supported."; + } + leaf offload-mep-direction-not-supported { + type boolean; + description + "The MEP direction does not support offload."; + } + leaf ais-configured { + type boolean; + description + "AIS is configured on the same interface as the + down MEP"; + } + leaf bundle-level0 { + type boolean; + description + "The MEP is configured in a domain at level 0, on + a bundle interface or sub-interface. This is + not supported"; + } + leaf bridge-domain-not-in-bd-infra { + type boolean; + description + "A BD/XC specified in the MEG config, but it does + not exist globally."; + } + leaf maid-format-not-supported { + type boolean; + description + "The configured MAID format is not supported for + hardware offload."; + } + leaf sman-format-not-supported { + type boolean; + description + "The configured SMAN format is not supported for + hardware offload."; + } + leaf mdid-format-not-supported { + type boolean; + description + "The configured MDID format is not supported for + hardware offload."; + } + leaf fatal-offload-error { + type boolean; + description + "The platform returned a fatal error when passed + the offload session."; + } + leaf satellite-limitation { + type boolean; + description + "A satellite limitation is preventing MEP being + offloaded to satellite."; + } + leaf sla-loopback-operations-disabled { + type boolean; + description + "In-progress Ethernet SLA loopback operations are + disabled due to satellite having loopback + responder-only capabilities."; + } + leaf sla-synthetic-loss-operations-disabled { + type boolean; + description + "In-progress Ethernet SLA synthetic loss + measurement operations are disabled due to + satellite having synthetic loss measurement + responder-only capabilities."; + } + leaf sla-delay-measurement-operations-disabled { + type boolean; + description + "In-progress Ethernet SLA delay measurement + operations are disabled due to satellite having + delay measurement responder-only capabilities."; + } + leaf sla-threshold-efd-invalid { + type boolean; + description + "One or more SLA thresholds with the EFD action + are configured on a MEP that does not support + EFD"; + } + leaf sla-threshold-efd-disabled { + type boolean; + description + "One or more SLA thresholds with the EFD action + are configured on a MEP that does not have EFD + enabled"; + } + leaf no-valid-mac-address { + type boolean; + description + "The EFP doesn't have a valid MAC address yet. + This will also get set if the MAC address we + have is a multicast address."; + } + leaf no-interface-type { + type boolean; + description + "We haven't yet been able to look up the + interface type to find whether the interface is + a bundle."; + } + leaf not-in-im { + type boolean; + description + "The EFP has been deleted from IM."; + } + leaf no-mlacp { + type boolean; + description + "The EFP is a bundle and the mLACP mode is not + yet known."; + } + leaf satellite-error-string { + type string; + description + "Error string returned from satellite"; + } + leaf satellite-id { + type uint16; + description + "ID of the satellite"; + } + leaf llf-on-down-mep { + type boolean; + description + "LLF configured on a down MEP"; + } + leaf ccm-encap-conflict { + type boolean; + description + "Conflict with encapsulation so CCMs cannot be + sent"; + } + leaf ais-encap-conflict { + type boolean; + description + "Conflict with encapsulation so AIS packets + cannot be sent"; + } + } + + grouping CFM-BAG-BDID { + description + "Bridge domain identifier"; + leaf bridge-domain-id-format { + type Cfm-bag-bdid-fmt; + description + "Bridge domain identifier format"; + } + leaf group { + type string; + description + "Name of the Bridge/XConnect Group"; + } + leaf name { + type string; + description + "Name of the Bridge Domain/XConnect"; + } + leaf ce-id { + type uint16; + description + "Local Customer Edge Identifier (CE-ID)"; + } + leaf remote-ce-id { + type uint16; + description + "Remote Customer Edge Identifier (CE-ID)"; + } + leaf evi { + type uint32; + description + "EVPN ID for VLAN-aware flexible cross-connects"; + } + } + + grouping CFM-MA-MP { + description + "CFM MA Maintenance Point"; + leaf domain-name { + type string; + description + "Domain name"; + } + leaf level { + type Cfm-bag-md-level; + description + "Domain level"; + } + leaf service-name { + type string; + description + "Service name"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf maintenance-point-type { + type Cfm-ma-mp-variety; + description + "Type of Maintenance Point"; + } + leaf mep-id { + type uint16; + description + "MEP ID"; + } + } + + grouping CFM-MA-MP-BRIEF { + description + "CFM MA Maintenance Point Information"; + container maintenance-point { + description + "Maintenance Point"; + uses CFM-MA-MP; + } + leaf mep-has-error { + type boolean; + description + "MEP error flag"; + } + leaf mac-address { + type Mac-address; + description + "MAC Address"; + } + } + + grouping CFM-MA-SUMMARY { + description + "CFM MA Summary Information"; + leaf domains { + type uint32; + description + "The number of domains in the CFM database."; + } + leaf services { + type uint32; + description + "The number of services in the CFM database."; + } + leaf ccm-rate { + type uint32; + description + "The combined rate of CCMs on this card."; + } + leaf local-meps { + type uint32; + description + "The number of local MEPs in the CFM database."; + } + leaf operational-local-meps { + type uint32; + description + "The number of operational local MEPs."; + } + leaf down-meps { + type uint32; + description + "The number of down-MEPs."; + } + leaf up-meps { + type uint32; + description + "The number of up-MEPs."; + } + leaf offloaded { + type uint32; + description + "The number of MEPs for which CCM processing has + been offloaded."; + } + leaf offloaded-at3-3ms { + type uint32; + description + "The number of MEPs offloaded with CCMs at 3.3ms + intervals."; + } + leaf offloaded-at10ms { + type uint32; + description + "The number of MEPs offloaded with CCMs at 10ms + intervals."; + } + leaf offloaded-at100ms-or-greater { + type uint32; + description + "The number of MEPs offloaded with CCMs at 100ms + or greater intervals."; + } + leaf disabled-misconfigured { + type uint32; + description + "The number of local MEPs disabled due to + configuration errors."; + } + leaf disabled-out-of-resources { + type uint32; + description + "The number of local MEPs disabled due to lack of + resources."; + } + leaf disabled-operational-error { + type uint32; + description + "The number of local MEPs disabled due to + operational errors."; + } + leaf peer-meps { + type uint32; + description + "The number of peer MEPs."; + } + leaf operational-peer-meps { + type uint32; + description + "The number of operational peer MEPs recorded in + the CFM database."; + } + leaf peer-meps-with-defects { + type uint32; + description + "The number of peer MEPs with defects."; + } + leaf peer-meps-without-defects { + type uint32; + description + "The number of peer MEPs without defects."; + } + leaf peer-meps-timed-out { + type uint32; + description + "The number of peer MEPs that have timed out."; + } + leaf mips { + type uint32; + description + "The number of MIPs"; + } + leaf interfaces { + type uint32; + description + "The number of interfaces running CFM."; + } + leaf bridge-domains-and-xconnects { + type uint32; + description + "Number or bridge domains and crossconnects."; + } + leaf traceroute-cache-entries { + type uint32; + description + "Number of traceroute cache entries."; + } + leaf traceroute-cache-replies { + type uint32; + description + "Number of traceroute cache replies."; + } + leaf ccm-learning-db-entries { + type uint32; + description + "Number of entries in the CCM learning database."; + } + leaf issu-role { + type Cfm-bag-issu-role; + description + "ISSU Role of CFM-D, if any."; + } + leaf bnm-enabled-links { + type uint32; + description + "Number of BNM Enabled Links"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub4.yang new file mode 100644 index 000000000..f320ad744 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper-sub4.yang @@ -0,0 +1,111 @@ +submodule Cisco-IOS-XR-ethernet-cfm-oper-sub4 { + belongs-to Cisco-IOS-XR-ethernet-cfm-oper { + prefix Cisco-IOS-XR-ethernet-cfm-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ethernet-cfm-oper-sub3 { + revision-date 2022-01-19; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-cfm package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-19 { + description + "Add CCM and AIS encapsulation conflict errors. + 2022-01-18 + Added CSF packet counters. + 2021-10-22 + Added counters for missing MEP offload intervals. + 2021-09-02 + Added support for LTM statistics."; + semver:module-version "2.0.0"; + } + revision 2020-10-07 { + description + "Added the Link Loss Forwarding feature."; + semver:module-version "1.3.0"; + } + revision 2020-07-07 { + description + "Added SLA summary information."; + semver:module-version "1.2.0"; + } + revision 2019-10-02 { + description + "Bandwidth notification addition"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-20 { + description + "Bandwidth notification class and type name update."; + } + revision 2017-10-06 { + description + "Traceroute transaction ID changed from int to uint."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CGM-CFG-ERRORS { + description + "CFM Global Manager Service Error Information"; + container bridge-domain-id { + description + "BD/XC ID, or Service name if the Service is + 'down-only'"; + uses CFM-BAG-BDID; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf level { + type Cfm-bag-md-level; + description + "Level"; + } + leaf service-name { + type string; + description + "Service name"; + } + leaf bridge-domain-is-configured { + type boolean; + description + "The BD/XC is configured globally"; + } + leaf l2-fib-download-error { + type boolean; + description + "The BD/XC could not be downloaded to L2FIB"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper.yang new file mode 100644 index 000000000..49fd8d294 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-oper.yang @@ -0,0 +1,850 @@ +module Cisco-IOS-XR-ethernet-cfm-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-cfm-oper"; + prefix ethernet-cfm-oper; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ethernet-cfm-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-infra-sla-oper { + prefix a1; + } + include Cisco-IOS-XR-ethernet-cfm-oper-sub4 { + revision-date 2022-01-19; + } + include Cisco-IOS-XR-ethernet-cfm-oper-sub3 { + revision-date 2022-01-19; + } + include Cisco-IOS-XR-ethernet-cfm-oper-sub2 { + revision-date 2022-01-19; + } + include Cisco-IOS-XR-ethernet-cfm-oper-sub1 { + revision-date 2022-01-19; + } + + 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 ethernet-cfm package operational data. + + This module contains definitions + for the following management objects: + cfm: CFM operational data + + This YANG module augments the + Cisco-IOS-XR-infra-sla-oper + module with state data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-19 { + description + "Add CCM and AIS encapsulation conflict errors. + 2022-01-18 + Added CSF packet counters. + 2021-10-22 + Added counters for missing MEP offload intervals. + 2021-09-02 + Added support for LTM statistics."; + semver:module-version "2.0.0"; + } + revision 2020-10-07 { + description + "Added the Link Loss Forwarding feature."; + semver:module-version "1.3.0"; + } + revision 2020-07-07 { + description + "Added SLA summary information."; + semver:module-version "1.2.0"; + } + revision 2019-10-02 { + description + "Bandwidth notification addition"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-20 { + description + "Bandwidth notification class and type name update."; + } + revision 2017-10-06 { + description + "Traceroute transaction ID changed from int to uint."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cfm-ais-dir { + type enumeration { + enum "up" { + value 0; + description + "Packets sent inward"; + } + enum "down" { + value 1; + description + "Packets sent outward"; + } + } + description + "Cfm ais dir"; + } + + augment "/a1:sla-nodes" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-infra-sla-oper'"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container protocols { + description + "Table of all SLA protocols"; + container ethernet { + description + "The Ethernet SLA protocol"; + container summary { + description + "SLA summary configured data"; + uses SLA-OPER-SUMMARY; + } + container on-demand-summary { + description + "SLA summary on-demand data"; + uses SLA-OPER-SUMMARY; + } + } + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + augment "/a1:sla/a1:protocols" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-infra-sla-oper'"; + container ethernet { + description + "The Ethernet SLA protocol"; + container statistics-on-demand-currents { + description + "Table of current statistics for SLA on-demand + operations"; + list statistics-on-demand-current { + description + "Current statistics data for an SLA on-demand + operation"; + leaf operation-id { + type uint32 { + range "1..4294967295"; + } + description + "Operation ID"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID in the range 1 to 8191. Either MEP ID + or MAC address must be specified."; + } + leaf mac-address { + type yang:mac-address; + description + "Unicast MAC Address in xxxx.xxxx.xxxx format. + Either MEP ID or MAC address must be + specified."; + } + uses SLA-OPER-OPERATION-STATISTICS; + } + } + container operations { + description + "Table of SLA operations"; + list operation { + description + "SLA operation to get operation data for"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile Name"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID in the range 1 to 8191. Either MEP ID + or MAC address must be specified."; + } + leaf mac-address { + type yang:mac-address; + description + "Unicast MAC Address in xxxx.xxxx.xxxx format. + Either MEP ID or MAC address must be + specified."; + } + uses SLA-OPER-OPERATION; + } + } + container statistics-historicals { + description + "Table of historical statistics for SLA + operations"; + list statistics-historical { + description + "Historical statistics data for an SLA + configured operation"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile Name"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID in the range 1 to 8191. Either MEP ID + or MAC address must be specified."; + } + leaf mac-address { + type yang:mac-address; + description + "Unicast MAC Address in xxxx.xxxx.xxxx format. + Either MEP ID or MAC address must be + specified."; + } + uses SLA-OPER-OPERATION-STATISTICS; + } + } + container statistics-on-demand-historicals { + description + "Table of historical statistics for SLA + on-demand operations"; + list statistics-on-demand-historical { + description + "Historical statistics data for an SLA + on-demand operation"; + leaf operation-id { + type uint32 { + range "1..4294967295"; + } + description + "Operation ID"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID in the range 1 to 8191. Either MEP ID + or MAC address must be specified."; + } + leaf mac-address { + type yang:mac-address; + description + "Unicast MAC Address in xxxx.xxxx.xxxx format. + Either MEP ID or MAC address must be + specified."; + } + uses SLA-OPER-OPERATION-STATISTICS; + } + } + container config-errors { + description + "Table of SLA configuration errors on configured + operations"; + list config-error { + description + "SLA operation to get configuration errors data + for"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile Name"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID in the range 1 to 8191"; + } + leaf mac-address { + type yang:mac-address; + description + "Unicast MAC Address in xxxx.xxxx.xxxx format"; + } + uses SLA-OPER-CONFIG-ERRORS; + } + } + container on-demand-operations { + description + "Table of SLA on-demand operations"; + list on-demand-operation { + description + "SLA on-demand operation to get operation data + for"; + leaf operation-id { + type uint32 { + range "1..4294967295"; + } + description + "Operation ID"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID in the range 1 to 8191. Either MEP ID + or MAC address must be specified."; + } + leaf mac-address { + type yang:mac-address; + description + "Unicast MAC Address in xxxx.xxxx.xxxx format. + Either MEP ID or MAC address must be + specified."; + } + uses SLA-OPER-OPERATION; + } + } + container statistics-currents { + description + "Table of current statistics for SLA operations"; + list statistics-current { + description + "Current statistics data for an SLA configured + operation"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile Name"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID in the range 1 to 8191. Either MEP ID + or MAC address must be specified."; + } + leaf mac-address { + type yang:mac-address; + description + "Unicast MAC Address in xxxx.xxxx.xxxx format. + Either MEP ID or MAC address must be + specified."; + } + uses SLA-OPER-OPERATION-STATISTICS; + } + } + } + } + container cfm { + config false; + description + "CFM operational data"; + container nodes { + description + "Node table for node-specific operational data"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container interface-aises { + description + "Interface AIS table"; + list interface-ais { + key "interface direction"; + description + "AIS statistics for a particular interface"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf direction { + type Cfm-ais-dir; + description + "AIS Direction"; + } + uses CFM-PM-EFP-AIS-BAG; + } + } + container bandwidth-notifications { + description + "Bandwidth Notifications Table"; + list bandwidth-notification { + key "interface md-level mep-direction port-id mac-address"; + description + "Bandwidth Notification"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf md-level { + type uint32; + description + "MDLevel"; + } + leaf mep-direction { + type dt1:Cfm-mep-dir; + description + "MepDirection"; + } + leaf port-id { + type uint32; + description + "PortID"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + uses CFM-PM-BNM-LINK-BAG; + } + } + container interface-statistics { + description + "Interface Statistics table"; + list interface-statistic { + key "interface"; + description + "Counters for a particular interface"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses CFM-PM-EFP-STATS-BAG; + } + } + container interface-llfs { + description + "Interface LLF table"; + list interface-llf { + key "interface"; + description + "LLF statistics for a particular interface"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses CFM-PM-EFP-LLF-BAG; + } + } + container malformed-packets-table { + description + "Malformed Packets Table"; + container malformed-packets-interfaces { + description + "Table of interfaces which have received + malformed packets"; + list malformed-packets-interface { + key "interface"; + description + "Malformed packets received on a specific + interface"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses CFM-PM-MALF-PKT-IFH-BAG; + } + } + container malformed-packets-unknown-interface { + description + "Malformed packets received on unknown + interfaces"; + uses CFM-PM-MALF-PKT-IFH-BAG; + } + } + container summary { + description + "Summary CFM information on MEPs, traceroute, + and more"; + uses CFM-MA-SUMMARY; + } + container ccm-learning-databases { + description + "CCMLearningDatabase table"; + list ccm-learning-database { + key "domain service mac-address"; + description + "CCM Learning Database entry"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + uses CFM-PM-CLDB-BAG; + } + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + container global { + description + "Global operational data"; + container incomplete-traceroutes { + description + "Incomplete Traceroute table"; + list incomplete-traceroute { + key "domain service mep-id interface transaction-id"; + description + "Information about a traceroute operation that + has not yet timed out"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf transaction-id { + type uint32; + description + "Transaction ID"; + } + uses CFM-PM-MEP-INCOMPLETE-TR-BAG; + } + } + container maintenance-points { + description + "Maintenance Points table"; + list maintenance-point { + key "domain service interface"; + description + "Information about a particular Maintenance + Point"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses CFM-MA-MP-BRIEF; + } + } + container global-configuration-errors { + description + "CFM Global Manager Configuration Error + Information"; + list global-configuration-error { + key "domain service"; + description + "Information about a particular configuration + error"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + uses CGM-CFG-ERRORS; + } + } + container mep-configuration-errors { + description + "MEP configuration errors table"; + list mep-configuration-error { + key "domain service interface"; + description + "Information about a particular configuration + error"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses CFM-MA-MEP-ERRORS; + } + } + container traceroute-caches { + description + "Traceroute Cache table"; + list traceroute-cache { + key "domain service mep-id interface transaction-id"; + description + "Information about a particular traceroute + operation"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf transaction-id { + type uint32; + description + "Transaction ID"; + } + uses CFM-PM-MEP-TR-CACHE-BAG; + } + } + container local-meps { + description + "Local MEPs table"; + list local-mep { + key "domain service mep-id interface"; + description + "Information about a particular local MEP"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + leaf mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses CFM-PM-MEP-STATS-BAG; + } + } + container peer-me-pv2s { + description + "Peer MEPs table Version 2"; + list peer-me-pv2 { + key "domain service local-mep-id interface peer-mep-id peer-mac-address"; + description + "Information about a peer MEP for a particular + local MEP"; + leaf domain { + type string { + length "1..127"; + } + description + "Maintenance Domain"; + } + leaf service { + type string { + length "1..127"; + } + description + "Service (Maintenance Association)"; + } + leaf local-mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID of Local MEP"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf peer-mep-id { + type dt1:Cfm-mep-id; + description + "MEP ID of Peer MEP"; + } + leaf peer-mac-address { + type yang:mac-address; + description + "Peer MAC address"; + } + uses CFM-PM-REMOTE-MEPS-V2-BAG; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-sat-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-sat-cfg.yang new file mode 100644 index 000000000..173edcd0c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-cfm-sat-cfg.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-ethernet-cfm-sat-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-cfm-sat-cfg"; + prefix ethernet-cfm-sat-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ethernet-cfm-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-icpe-infra-cfg { + prefix a2; + } + + 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 ethernet-cfm-sat package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-icpe-infra-cfg + modules with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration/a2:nv-satellite-fabric-link" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-icpe-infra-cfg'"; + container ethernet-features { + description + "Ethernet Satellite configuration"; + container cfm { + description + "CFM Satellite configuration"; + leaf continuity-check-interval { + type dt1:Cfm-ccm-interval; + description + "Continuity-Check Interval"; + } + leaf level { + type dt1:Cfm-level; + description + "Maintenance Domain Level"; + } + leaf enable { + type empty; + description + "Enable CFM on Satellite"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-cfg.yang new file mode 100644 index 000000000..d3ffa602d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-cfg.yang @@ -0,0 +1,835 @@ +module Cisco-IOS-XR-ethernet-link-oam-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-link-oam-cfg"; + prefix ethernet-link-oam-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2-eth-infra-cfg { + prefix a2; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a3; + } + + 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 ethernet-link-oam package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg, + Cisco-IOS-XR-l2-eth-infra-cfg, + Cisco-IOS-XR-ifmgr-cfg + modules with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-15 { + description + "Fixed must conditions bug."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ether-link-oam-threshold-window-multiplier-enum { + type enumeration { + enum "none" { + value 0; + description + "Do not use a multiplier"; + } + enum "thousand" { + value 1; + description + "Use multiplier of 1000"; + } + enum "million" { + value 2; + description + "Use multiplier of 1,000,000"; + } + enum "billion" { + value 3; + description + "Use multiplier of 1,000,000,000"; + } + } + description + "Ether link oam threshold window multiplier enum"; + } + + typedef Ether-link-oam-threshold-units-frames-enum { + type enumeration { + enum "frames" { + value 3; + description + "Define threshold in frames"; + } + enum "ppm" { + value 4; + description + "Define threshold in parts per million"; + } + } + description + "Ether link oam threshold units frames enum"; + } + + typedef Ether-link-oam-threshold-units-symbols-enum { + type enumeration { + enum "symbols" { + value 2; + description + "Define threshold in symbols"; + } + enum "ppm" { + value 4; + description + "Define threshold in parts per million"; + } + } + description + "Ether link oam threshold units symbols enum"; + } + + typedef Ether-link-oam-window-units-symbols-enum { + type enumeration { + enum "milliseconds" { + value 1; + description + "Define window in milliseconds"; + } + enum "symbols" { + value 2; + description + "Define window in symbols"; + } + } + description + "Ether link oam window units symbols enum"; + } + + typedef Ether-link-oam-window-units-frames-enum { + type enumeration { + enum "milliseconds" { + value 1; + description + "Define window in milliseconds"; + } + enum "frames" { + value 3; + description + "Define window in frames"; + } + } + description + "Ether link oam window units frames enum"; + } + + typedef Ether-link-oam-require-mode-enum { + type enumeration { + enum "passive" { + value 0; + description + "Ethernet Link OAM Passive mode"; + } + enum "active" { + value 1; + description + "Ethernet Link OAM Active mode"; + } + enum "dont-care" { + value 2; + description + "Ethernet Link OAM mode not required"; + } + } + description + "Ether link oam require mode enum"; + } + + typedef Ether-link-oam-event-action-enum-efd { + type enumeration { + enum "disable" { + value 1; + description + "Perform no action"; + } + enum "error-disable" { + value 2; + description + "Disable the interface"; + } + enum "log" { + value 3; + description + "Log the event"; + } + enum "efd" { + value 4; + description + "EFD the interface"; + } + } + description + "Ether link oam event action enum efd"; + } + + typedef Ether-link-oam-event-action-prim-enum { + type enumeration { + enum "disable" { + value 1; + description + "Perform no action"; + } + enum "log" { + value 3; + description + "Log the event"; + } + } + description + "Ether link oam event action prim enum"; + } + + typedef Ether-link-oam-mode-enum { + type enumeration { + enum "passive" { + value 0; + description + "Ethernet Link OAM Passive mode"; + } + enum "active" { + value 1; + description + "Ethernet Link OAM Active mode"; + } + } + description + "Ether link oam mode enum"; + } + + typedef Ether-link-oam-event-action-enum { + type enumeration { + enum "disable" { + value 1; + description + "Perform no action"; + } + enum "error-disable" { + value 2; + description + "Disable the interface"; + } + enum "log" { + value 3; + description + "Log the event"; + } + } + description + "Ether link oam event action enum"; + } + + typedef Ether-link-oam-hello-interval-enum { + type enumeration { + enum "1s" { + value 0; + description + "1 s OAM hello interval"; + } + enum "100ms" { + value 1; + description + "100 ms OAM hello interval"; + } + } + description + "Ether link oam hello interval enum"; + } + + grouping LINK-MONITORING { + description + "Common node of profile, ether-link-oam"; + container link-monitoring { + description + "Configure link monitor parameters"; + container symbol-period { + description + "Symbol-period event configuration"; + container window { + presence "Indicates a window node is configured."; + description + "Window size configuration for symbol-period + events"; + leaf window { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Size of the symbol-period window"; + } + leaf units { + type Ether-link-oam-window-units-symbols-enum; + mandatory true; + description + "Units to use for this window"; + } + leaf multiplier { + type Ether-link-oam-threshold-window-multiplier-enum; + default "none"; + description + "The multiplier to use for this window (only + valid if 'Units' is Symbols and treated as 1 + if unspecified)"; + } + } + container threshold { + description + "Threshold configuration for symbol-period + events"; + leaf threshold-low { + type uint32 { + range "1..4294967295"; + } + must "../units"; + default "1"; + description + "The low threshold for symbol-period"; + } + leaf threshold-high { + type uint32 { + range "1..4294967295"; + } + must "../units"; + description + "The high threshold for symbol-period"; + } + leaf units { + type Ether-link-oam-threshold-units-symbols-enum; + must "../threshold-low or (../threshold-low and ../multiplier-low) or ../threshold-high or (../threshold-high and ../multiplier-high) or (../threshold-low and ../threshold-high) or (../threshold-low and ../threshold-high and ../multiplier-low) or (../threshold-low and ../threshold-high and ../multiplier-high) or (../threshold-low and ../threshold-high and ../multiplier-low and ../multiplier-high)"; + default "symbols"; + description + "The units to use for these thresholds"; + } + leaf multiplier-low { + type Ether-link-oam-threshold-window-multiplier-enum; + must "../threshold-low and ../units"; + default "none"; + description + "The multiplier to use for the low threshold + (only valid if 'Units' is Symbols and treated + as 1 if unspecified)"; + } + leaf multiplier-high { + type Ether-link-oam-threshold-window-multiplier-enum; + must "../threshold-high and ../units"; + description + "The multiplier to use for the high threshold + (only valid if 'Units' is Symbols and treated + as 1 if unspecified)"; + } + } + } + container frame-period { + description + "Frame-period event configuration"; + container window { + presence "Indicates a window node is configured."; + description + "Window size configuration for frame-period + events"; + leaf window { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Size of the frame-period window"; + } + leaf units { + type Ether-link-oam-window-units-frames-enum; + mandatory true; + description + "The units to use for this window"; + } + leaf multiplier { + type Ether-link-oam-threshold-window-multiplier-enum; + default "none"; + description + "The multiplier to use for this window (only + valid if 'Units' is Frames and treated as 1 + if unspecified)"; + } + } + container threshold { + description + "Threshold configuration for frame-period + events"; + leaf threshold-low { + type uint32 { + range "1..4294967295"; + } + must "../units"; + default "1"; + description + "The low threshold for frame-period events"; + } + leaf threshold-high { + type uint32 { + range "1..4294967295"; + } + must "../units"; + description + "The high threshold for frame-period events"; + } + leaf units { + type Ether-link-oam-threshold-units-frames-enum; + must "../threshold-low or (../threshold-low and ../multiplier-low) or ../threshold-high or (../threshold-high and ../multiplier-high) or (../threshold-low and ../threshold-high) or (../threshold-low and ../threshold-high and ../multiplier-low) or (../threshold-low and ../threshold-high and ../multiplier-high) or (../threshold-low and ../threshold-high and ../multiplier-low and ../multiplier-high)"; + default "ppm"; + description + "The units to use for these thresholds"; + } + leaf multiplier-low { + type Ether-link-oam-threshold-window-multiplier-enum; + must "../threshold-low and ../units"; + default "none"; + description + "The multiplier to use for the low threshold + (only valid if 'Units' is Frames and treated + as 1 if unspecified)"; + } + leaf multiplier-high { + type Ether-link-oam-threshold-window-multiplier-enum; + must "../threshold-high and ../units"; + description + "The multiplier to use for the high threshold + (only valid if 'Units' is Frames and treated + as 1 if unspecified)"; + } + } + } + container frame-seconds { + description + "Frame-seconds event configuration"; + container threshold { + description + "Threshold configuration for frame-seconds + events"; + leaf threshold-low { + type uint32 { + range "1..900"; + } + units "second"; + default "1"; + description + "The low threshold for frame-seconds events"; + } + leaf threshold-high { + type uint32 { + range "1..900"; + } + units "second"; + description + "The high threshold for frame-seconds events"; + } + } + leaf window { + type uint32 { + range "10000..900000"; + } + units "millisecond"; + default "60000"; + description + "Window size configuration for frame-seconds + events"; + } + } + container frame { + description + "Frame event configuration"; + container threshold { + description + "Threshold configuration for frame events"; + leaf threshold-low { + type uint32 { + range "1..4294967295"; + } + default "1"; + description + "The low threshold for frame events"; + } + leaf threshold-high { + type uint32 { + range "1..4294967295"; + } + description + "The high threshold for frame events"; + } + leaf multiplier-low { + type Ether-link-oam-threshold-window-multiplier-enum; + must "../threshold-low"; + default "none"; + description + "The multiplier to use for the low threshold + (treated as 1 if unspecified)"; + } + leaf multiplier-high { + type Ether-link-oam-threshold-window-multiplier-enum; + must "../threshold-high"; + description + "The multiplier to use for the high threshold + (treated as 1 if unspecified)"; + } + } + leaf window { + type uint32 { + range "1000..60000"; + } + units "millisecond"; + default "1000"; + description + "Window size configuration for frame events"; + } + } + leaf monitoring { + type boolean; + description + "Enable or disable monitoring"; + } + } + } + + augment "/a3:interface-configurations/a3:interface-configuration/a2:ethernet-features" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2-eth-infra-cfg'"; + leaf ether-link-oam-enable { + type empty; + description + "Enable Ethernet Link OAM on the interface"; + } + } + augment "/a3:interface-configurations/a3:interface-configuration/a2:ethernet-features" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2-eth-infra-cfg'"; + container ether-link-oam { + description + "Ethernet Link OAM Interface Configuration"; + container action { + description + "Configure action parameters"; + leaf dying-gasp { + type Ether-link-oam-event-action-enum; + description + "Action to perform when a dying gasp occurs"; + } + leaf link-fault { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a link fault occurs"; + } + leaf capabilities-conflict { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a capabilities conflict + occurs"; + } + leaf session-up { + type Ether-link-oam-event-action-prim-enum; + description + "Action to perform when a session comes up"; + } + leaf critical-event { + type Ether-link-oam-event-action-enum; + description + "Action to perform when a critical event occurs"; + } + leaf remote-loopback { + type Ether-link-oam-event-action-prim-enum; + description + "Action to perform when remote loopback is + entered or exited"; + } + leaf wiring-conflict { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a wiring conflict + occurs"; + } + leaf high-threshold { + type Ether-link-oam-event-action-enum; + description + "Action to perform when a high-threshold event + occurs"; + } + leaf discovery-timeout { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when discovery timeout + occurs"; + } + leaf session-down { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a session comes down"; + } + } + container require-remote { + description + "Configure remote requirement parameters"; + leaf mode { + type Ether-link-oam-require-mode-enum; + description + "Possible required peer modes"; + } + leaf mib-retrieval { + type boolean; + description + "Enable or disable MIB retrieval peer + requirement"; + } + leaf remote-loopback { + type boolean; + description + "Enable or disable remote loopback peer + requirement"; + } + leaf link-monitoring { + type boolean; + description + "Enable or disable link monitoring peer + requirement"; + } + } + leaf timeout { + type uint32 { + range "2..30"; + } + description + "Connection timeout period in number of lost + heartbeats"; + } + leaf mode { + type Ether-link-oam-mode-enum; + description + "Possible Ethernet Link OAM modes"; + } + leaf mib-retrieval { + type boolean; + description + "Enable or disable MIB retrieval"; + } + leaf profile-name { + type string; + description + "Set the profile to use on the interface"; + } + leaf remote-loopback { + type boolean; + description + "Enable or disable remote loopback"; + } + leaf hello-interval { + type Ether-link-oam-hello-interval-enum; + description + "Possible Ethernet Link OAM hello intervals"; + } + leaf udlf { + type boolean; + description + "Enable or disable uni-directional link-fault + detection"; + } + uses LINK-MONITORING; + } + } + augment "/a2:ethernet-features" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2-eth-infra-cfg'"; + container ether-link-oam { + description + "Ethernet Link OAM Global Configuration"; + container profiles { + description + "Table of Ethernet Link OAM profiles"; + list profile { + key "profile"; + description + "Name of the profile"; + container action { + description + "Configure action parameters"; + leaf dying-gasp { + type Ether-link-oam-event-action-enum; + description + "Action to perform when a dying gasp occurs"; + } + leaf session-up { + type Ether-link-oam-event-action-prim-enum; + description + "Action to perform when a session comes up"; + } + leaf critical-event { + type Ether-link-oam-event-action-enum; + description + "Action to perform when a critical event + occurs"; + } + leaf session-down { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a session goes down"; + } + leaf discovery-timeout { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when discovery timeout + occurs"; + } + leaf high-threshold { + type Ether-link-oam-event-action-enum; + description + "Action to perform when a high-threshold + event occurs"; + } + leaf capabilities-conflict { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a capabilities + conflict occurs"; + } + leaf remote-loopback { + type Ether-link-oam-event-action-prim-enum; + description + "Action to perform when remote loopback is + entered or exited"; + } + leaf link-fault { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a link fault message + is received"; + } + leaf wiring-conflict { + type Ether-link-oam-event-action-enum-efd; + description + "Action to perform when a wiring conflict + occurs"; + } + } + container require-remote { + description + "Configure remote requirement parameters"; + leaf mib-retrieval { + type boolean; + description + "Enable or disable MIB retrieval requirement"; + } + leaf mode { + type Ether-link-oam-require-mode-enum; + description + "Possible required OAM modes"; + } + leaf remote-loopback { + type boolean; + description + "Enable or disable remote loopback + requirement"; + } + leaf link-monitoring { + type boolean; + description + "Enable or disable link monitoring + requirement"; + } + } + leaf mib-retrieval { + type boolean; + description + "Enable or disable MIB retrieval support"; + } + leaf udlf { + type boolean; + description + "Enable or disable uni-directional link-fault + detection support"; + } + leaf hello-interval { + type Ether-link-oam-hello-interval-enum; + description + "Possible Ethernet Link OAM hello intervals"; + } + leaf mode { + type Ether-link-oam-mode-enum; + description + "Set the OAM mode to passive"; + } + leaf remote-loopback { + type boolean; + description + "Enable or disable remote loopback support"; + } + leaf timeout { + type uint32 { + range "2..30"; + } + description + "Connection timeout period in number of lost + heartbeats"; + } + leaf profile { + type xr:Cisco-ios-xr-string; + description + "none"; + } + uses LINK-MONITORING; + } + } + } + } + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container oam { + description + "802.3 OAM MIB notification configuration"; + leaf enable { + type empty; + description + "Enable 802.3 OAM MIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper-sub1.yang new file mode 100644 index 000000000..c8b63c523 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper-sub1.yang @@ -0,0 +1,1509 @@ +submodule Cisco-IOS-XR-ethernet-link-oam-oper-sub1 { + belongs-to Cisco-IOS-XR-ethernet-link-oam-oper { + prefix Cisco-IOS-XR-ethernet-link-oam-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-link-oam package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-14 { + description + "Added feature capability fields to config info bag."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Log-location { + type enumeration { + enum "log-location-local" { + value 1; + description + "A local event"; + } + enum "log-location-remote" { + value 2; + description + "A remote event"; + } + } + description + "The location of the event that caused a log entry"; + } + + typedef Log { + type enumeration { + enum "log-type-symbol-event" { + value 1; + description + "Log entry for an errored symbol event"; + } + enum "log-type-period-event" { + value 2; + description + "Log entry for an errored frame period event"; + } + enum "log-type-frame-event" { + value 3; + description + "Log entry for an errored frame event"; + } + enum "log-type-secs-event" { + value 4; + description + "Log entry for an errored frame seconds summary + event"; + } + enum "log-type-link-fault" { + value 256; + description + "Log entry for a link fault"; + } + enum "log-type-dying-gasp" { + value 257; + description + "Log entry for a dying gasp"; + } + enum "log-type-critical-event" { + value 258; + description + "Log entry for a critical event"; + } + } + description + "The type of a log entry"; + } + + typedef Action { + type enumeration { + enum "no-action" { + value 1; + description + "Disabled (do nothing)"; + } + enum "disable-interface" { + value 2; + description + "Disable the interface"; + } + enum "log" { + value 3; + description + "Log the event and do nothing else"; + } + enum "efd" { + value 4; + description + "EFD the interface"; + } + } + description + "Actions supported by an OAM interface"; + } + + typedef Protocol-state { + type enumeration { + enum "protocol-state-inactive" { + value 0; + description + "The protocol is in the INACTIVE state"; + } + enum "protocol-state-fault" { + value 1; + description + "The protocol is in the FAULT state"; + } + enum "protocol-state-active-send-local" { + value 2; + description + "The protocol is in the ACTIVE_SEND_LOCAL state"; + } + enum "protocol-state-passive-wait" { + value 3; + description + "The protocol is in the SEND_LOCAL_REMOTE state"; + } + enum "protocol-state-send-local-remote" { + value 4; + description + "The protocol is in the LOCAL_REMOTE state"; + } + enum "protocol-state-send-local-remote-ok" { + value 5; + description + "The protocol is in the LOCAL_REMOTE_OK state"; + } + enum "protocol-state-send-any" { + value 6; + description + "The protocol is in the SEND_ANY state"; + } + } + description + "The state the protocol is in"; + } + + typedef Mode { + type enumeration { + enum "passive" { + value 0; + description + "Passive mode"; + } + enum "active" { + value 1; + description + "Active mode"; + } + enum "dont-care" { + value 2; + description + "Don't care what the mode is"; + } + } + description + "Mode of an OAM interface"; + } + + typedef Loopback-status { + type enumeration { + enum "none" { + value 1; + description + "Loopback is not being performed"; + } + enum "initiating" { + value 2; + description + "Initiating master loopback"; + } + enum "master-loopback" { + value 3; + description + "In master loopback mode"; + } + enum "terminating" { + value 4; + description + "Terminating master loopback mode"; + } + enum "local-loopback" { + value 5; + description + "In slave loopback mode"; + } + enum "unknown" { + value 6; + description + "Parser and multiplexer combination unexpected"; + } + } + description + "The loopback mode of an OAM interface"; + } + + typedef Operational-state { + type enumeration { + enum "disabled" { + value 1; + description + "802.3 OAM is disabled"; + } + enum "link-fault" { + value 2; + description + "802.3 OAM has encountered a link fault"; + } + enum "passive-wait" { + value 3; + description + "Passive OAM entity waiting to see if peer is + OAM capable"; + } + enum "active-send-local" { + value 4; + description + "Active OAM entity trying to determine if peer + is OAM capable"; + } + enum "send-local-and-remote" { + value 5; + description + "OAM discovered peer but still to accept or + reject peer config"; + } + enum "send-local-and-remote-ok" { + value 6; + description + "OAM peering is allowed by local device"; + } + enum "peering-locally-rejected" { + value 7; + description + "OAM peering rejected by local device"; + } + enum "peering-remotely-rejected" { + value 8; + description + "OAM peering rejected by remote device"; + } + enum "operational" { + value 9; + description + "802.3 OAM is operational"; + } + enum "operational-half-duplex" { + value 10; + description + "802.3 OAM is operating in half-duplex mode"; + } + } + description + "Operational state of an interface"; + } + + grouping ELOD-STATS { + description + "Statistics for an 802.3 OAM interface"; + leaf information-tx { + type uint32; + description + "Number of information OAMPDUs transmitted"; + } + leaf information-rx { + type uint32; + description + "Number of information OAMPDUs received"; + } + leaf unique-event-notification-tx { + type uint32; + description + "Number of unique event notification OAMPDUs + transmitted"; + } + leaf unique-event-notification-rx { + type uint32; + description + "Number of unique event notification OAMPDUs + received"; + } + leaf duplicate-event-notification-tx { + type uint32; + description + "Number of duplicate event notification OAMPDUs + transmitted"; + } + leaf duplicate-event-notification-rx { + type uint32; + description + "Number of duplicate event notification OAMPDUs + received"; + } + leaf loopback-control-tx { + type uint32; + description + "Number of loopback control OAMPDUs transmitted"; + } + leaf loopback-control-rx { + type uint32; + description + "Number of loopback control OAMPDUs received"; + } + leaf variable-request-tx { + type uint32; + description + "Number of variable request OAMPDUs transmitted"; + } + leaf variable-request-rx { + type uint32; + description + "Number of variable request OAMPDUs received"; + } + leaf variable-response-tx { + type uint32; + description + "Number of variable response OAMPDUs transmitted"; + } + leaf variable-response-rx { + type uint32; + description + "Number of variable response OAMPDUs received"; + } + leaf org-specific-tx { + type uint32; + description + "Number of organization specific OAMPDUs + transmitted"; + } + leaf org-specific-rx { + type uint32; + description + "Number of organization specific OAMPDUs received"; + } + leaf unsupported-codes-tx { + type uint32; + description + "Number of OAMPDUs with unsupported codes + transmitted"; + } + leaf unsupported-codes-rx { + type uint32; + description + "Number of OAMPDUs with unsupported codes + received"; + } + leaf frames-lost-due-to-oam { + type uint32; + description + "Number of frames lost due to OAM"; + } + leaf fixed-frames-rx { + type uint32; + description + "Number of RX frames 'fixed' by OAM"; + } + leaf local-error-symbol-period-records { + type uint32; + description + "Number of local error symbol period records"; + } + leaf local-error-frame-records { + type uint32; + description + "Number of local error frame records"; + } + leaf local-error-frame-period-records { + type uint32; + description + "Number of local error frame period records"; + } + leaf local-error-frame-second-records { + type uint32; + description + "Number of local error frame second records"; + } + leaf remote-error-symbol-period-records { + type uint32; + description + "Number of remote error symbol period records"; + } + leaf remote-error-frame-records { + type uint32; + description + "Number of remote error frame records"; + } + leaf remote-error-frame-period-records { + type uint32; + description + "Number of remote error frame period records"; + } + leaf remote-error-frame-second-records { + type uint32; + description + "Number of remote error frame second records"; + } + } + + grouping ELOD-LOG-ENTRY { + description + "A single log entry"; + leaf index { + type uint32; + description + "Index in the log entries table"; + } + leaf handle { + type xr:Interface-name; + description + "Interface handle for this log entry"; + } + leaf oui { + type yang:hex-string; + description + "OUI for the log entry"; + } + leaf timestamp { + type uint64; + description + "Timestamp in hundredths of a second since unix + epoch for when the event occurred"; + } + leaf type { + type Log; + description + "Type of event that this entry describes"; + } + leaf location { + type Log-location; + description + "Where the event occurred"; + } + leaf event-total { + type uint32; + description + "Total number of times event has occurred"; + } + leaf action-taken { + type Action; + description + "Local action taken (If applicable)"; + } + leaf window { + type uint64; + description + "Size of the window (If applicable)"; + } + leaf threshold { + type uint64; + description + "Size of the threshold (If applicable)"; + } + leaf local-high-threshold { + type uint64; + description + "Size of the local high threshold (If applicable) + . For remote threshold events this is scaled for + comparison with the Breaching Value. This is to + account for different local and remote window + sizes."; + } + leaf value { + type uint64; + description + "Breaching value (If applicable)"; + } + leaf running-total { + type uint64; + description + "The running total number of errors seen since + OAM was enabled on the interface(If applicable)"; + } + leaf window-config-units { + type uint64; + description + "The window in the units that are currently + configured"; + } + leaf window-units { + type uint8; + description + "The units in which the window size is configured + ."; + } + leaf threshold-config-units { + type uint64; + description + "The threshold in the units that are currently + configured"; + } + leaf threshold-units { + type uint8; + description + "The units in which the threshold size is + configured."; + } + leaf local-high-threshold-config-units { + type uint64; + description + "The local high threshold in the units that are + currently configured"; + } + leaf value-config-units { + type uint64; + description + "The breaching value in the units that are + currently configured"; + } + } + + grouping ELOD-SUMMARY-INFO { + description + "Summary information for all 802.3 OAM sessions on + a node"; + leaf interfaces { + type uint32; + description + "The number of interfaces with 802.3 OAM + configured"; + } + leaf port-down { + type uint32; + description + "The number of interfaces in 'Port Down' state"; + } + leaf passive-wait { + type uint32; + description + "The number of interfaces in 'Passive Wait' state"; + } + leaf active-send { + type uint32; + description + "The number of interfaces in 'Active Send' state"; + } + leaf evaluating { + type uint32; + description + "The number of interfaces in 'Evaluating' state"; + } + leaf local-accept { + type uint32; + description + "The number of interfaces in 'Local Accept' state"; + } + leaf local-reject { + type uint32; + description + "The number of interfaces in 'Local Reject' state"; + } + leaf remote-reject { + type uint32; + description + "The number of interfaces in 'Remote Reject' + state"; + } + leaf operational { + type uint32; + description + "The number of interfaces in 'Operational' state"; + } + leaf loopback-mode { + type uint32; + description + "The number of interfaces in loopback mode"; + } + leaf miswired-connections { + type uint32; + description + "The number of miswired connections"; + } + leaf events { + type uint64; + description + "The number of events recorded"; + } + leaf local-events { + type uint64; + description + "The number of local events recorded"; + } + leaf local-symbol-period { + type uint64; + description + "The number of local symbol period events + recorded"; + } + leaf local-frame { + type uint64; + description + "The mumber of local frame error events recorded"; + } + leaf local-frame-period { + type uint64; + description + "The number of local frame period events recorded"; + } + leaf local-frame-seconds { + type uint64; + description + "The number of local frame second events recorded"; + } + leaf remote-events { + type uint64; + description + "The number of remote events recorded"; + } + leaf remote-symbol-period { + type uint64; + description + "The number of remote symbol period events + recorded"; + } + leaf remote-frame { + type uint64; + description + "The mumber of remote frame error events recorded"; + } + leaf remote-frame-period { + type uint64; + description + "The number of remote frame period events + recorded"; + } + leaf remote-frame-seconds { + type uint64; + description + "The number of remote frame second events + recorded"; + } + } + + grouping ELOD-RUNNING-CONFIG { + description + "The configuration currently running on an + interface"; + leaf fast-hello-interval-enabled { + type boolean; + description + "Is 100ms hello interval time enabled?"; + } + leaf link-monitor-enabled { + type boolean; + description + "Is link monitoring enabled?"; + } + leaf remote-loopback-enabled { + type boolean; + description + "Is remote loopback enabled?"; + } + leaf mib-retrieval-enabled { + type boolean; + description + "Is MIB retrieval enabled?"; + } + leaf udlf-enabled { + type boolean; + description + "Is uni-directional link-fault detection enabled?"; + } + leaf mode { + type Mode; + description + "Configured mode"; + } + leaf connection-timeout { + type uint8; + description + "Connection timeout"; + } + leaf symbol-period-window { + type uint32; + description + "Symbol period event window size"; + } + leaf symbol-period-window-units { + type uint8; + description + "Symbol period event window units"; + } + leaf symbol-period-window-multiplier { + type uint8; + description + "Symbol period event window multiplier"; + } + leaf symbol-period-threshold-low { + type uint64; + description + "Symbol period event low threshold"; + } + leaf symbol-period-threshold-high { + type uint64; + description + "Symbol period event high threshold"; + } + leaf symbol-period-threshold-units { + type uint8; + description + "Symbol period event threshold units"; + } + leaf symbol-period-threshold-low-multiplier { + type uint8; + description + "Symbol period event threshold low multiplier"; + } + leaf symbol-period-threshold-high-multiplier { + type uint8; + description + "Symbol period event threshold high multiplier"; + } + leaf frame-window { + type uint32; + description + "Frame event window size"; + } + leaf frame-threshold-low { + type uint64; + description + "Frame event low threshold"; + } + leaf frame-threshold-high { + type uint64; + description + "Frame event high threshold"; + } + leaf frame-threshold-low-multiplier { + type uint8; + description + "Frame period event threshold low multiplier"; + } + leaf frame-threshold-high-multiplier { + type uint8; + description + "Frame event threshold high multiplier"; + } + leaf frame-period-window { + type uint32; + description + "Frame period event window size"; + } + leaf frame-period-window-units { + type uint8; + description + "Frame period event window units"; + } + leaf frame-period-window-multiplier { + type uint8; + description + "Frame period event window multiplier"; + } + leaf frame-period-threshold-low { + type uint64; + description + "Frame period event low threshold"; + } + leaf frame-period-threshold-high { + type uint64; + description + "Frame period event high threshold"; + } + leaf frame-period-threshold-units { + type uint8; + description + "Frame period event threshold units"; + } + leaf frame-period-threshold-low-multiplier { + type uint8; + description + "Frame period event threshold low multiplier"; + } + leaf frame-period-threshold-high-multiplier { + type uint8; + description + "Frame period event threshold high multiplier"; + } + leaf frame-seconds-window { + type uint32; + units "second"; + description + "Frame seconds event high threshold"; + } + leaf frame-seconds-threshold-low { + type uint64; + units "second"; + description + "Frame seconds event high threshold"; + } + leaf frame-seconds-threshold-high { + type uint64; + units "second"; + description + "Frame seconds event high threshold"; + } + leaf high-threshold-action { + type Action; + description + "Action to perform when a high threshold is + breached"; + } + leaf link-fault-action { + type Action; + description + "Action to perform when a link fault occurs"; + } + leaf dying-gasp-action { + type Action; + description + "Action to perform when a dying gasp occurs"; + } + leaf critical-event-action { + type Action; + description + "Action to perform when a critical event occurs"; + } + leaf discovery-timeout-action { + type Action; + description + "Action to perform when a discovery timeout + occurs"; + } + leaf capabilities-conflict-action { + type Action; + description + "Action to perform when a capabilities conflict + occurs"; + } + leaf wiring-conflict-action { + type Action; + description + "Action to perform when a wiring conflict occurs"; + } + leaf session-up-action { + type Action; + description + "Action to perform when a session comes up"; + } + leaf session-down-action { + type Action; + description + "Action to perform when a session comes down"; + } + leaf remote-loopback-action { + type Action; + description + "Action to perform when a session enters or exits + remote loopback"; + } + leaf require-remote-mode { + type Mode; + description + "The mode that is required of the remote peer"; + } + leaf require-remote-mib-retrieval { + type boolean; + description + "Require the remote peer to support MIB retrieval"; + } + leaf require-loopback { + type boolean; + description + "Require the remote peer to support loopback mode"; + } + leaf require-link-monitoring { + type boolean; + description + "Require the remote peer to support link + monitoring"; + } + leaf fast-hello-interval-enabled-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf link-monitoring-enabled-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf remote-loopback-enabled-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf mib-retrieval-enabled-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf udlf-enabled-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf mode-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf connection-timeout-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf symbol-period-window-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf symbol-period-threshold-low-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf symbol-period-threshold-high-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-window-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-threshold-low-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-threshold-high-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-period-window-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-period-threshold-low-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-period-threshold-high-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-seconds-window-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-seconds-threshold-low-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf frame-seconds-threshold-high-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf high-threshold-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf link-fault-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf dying-gasp-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf critical-event-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf discovery-timeout-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf capabilities-conflict-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf wiring-conflict-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf session-down-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf session-up-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf remote-loopback-action-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf require-mode-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf require-mib-retrieval-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf require-loopback-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf require-link-monitoring-overridden { + type boolean; + description + "Is this configuration information an interface + override?"; + } + leaf udlf-supported { + type boolean; + description + "Is uni-directional link-fault detection + supported?"; + } + leaf fast-hello-interval-supported { + type boolean; + description + "Is 100ms hello interval supported?"; + } + leaf remote-loopback-supported { + type boolean; + description + "Is remote loopback supported?"; + } + } + + grouping EFD-TRIGGERS { + description + "Triggers currently causing the interface to be + brought down using EFD"; + leaf link-fault-received { + type boolean; + description + "Link-fault messages being received"; + } + leaf discovery-timed-out { + type boolean; + description + "The discovery process has timed out"; + } + leaf capabilities-conflict { + type boolean; + description + "A capabilities conflict has been detected"; + } + leaf wiring-conflict { + type boolean; + description + "A wiring conflict has been detected"; + } + leaf session-down { + type boolean; + description + "The 802.3 OAM session is down"; + } + } + + grouping ELOD-ERRORS { + description + "Most recent error information for an 802.3 OAM + interface"; + leaf pfi-reason { + type string; + description + "Reason for the Interface Management error (if + applicable)"; + } + leaf pfi-error-code { + type uint32; + description + "The Interface Management error/success code"; + } + leaf platform-reason { + type string; + description + "Reason for the platform error (if applicable)"; + } + leaf platform-error-code { + type uint32; + description + "The platform error/success code"; + } + leaf spio-reason { + type string; + description + "Reason for the Packet I/O error (if applicable)"; + } + leaf spio-error-code { + type uint32; + description + "The Packet I/O error/success code"; + } + leaf epi-reason { + type string; + description + "Reason for the Packet error (if applicable)"; + } + leaf epi-error-code { + type uint32; + description + "The Packet error/success code"; + } + leaf caps-add-reason { + type string; + description + "Reason for the caps add error (if applicable)"; + } + leaf caps-add-error-code { + type uint32; + description + "The caps add error/success code"; + } + } + + grouping ELOD-INTERFACE-STATE { + description + "The state of an 802.3 OAM interface"; + container errors { + description + "The errors that have occurred on this interface"; + uses ELOD-ERRORS; + } + container efd-triggers { + description + "Any present EFD triggers"; + uses EFD-TRIGGERS; + } + leaf protocol-code { + type Protocol-state; + description + "The state the protocol is in"; + } + leaf rx-fault { + type boolean; + description + "Has a uni-directional link-fault been detected?"; + } + leaf local-mwd-key { + type uint32; + description + "The local MWD key"; + } + leaf remote-mwd-key-present { + type boolean; + description + "Does the remote side have an MWD key?"; + } + leaf remote-mwd-key { + type uint32; + description + "The remote MWD key"; + } + } + + grouping ELOD-DISCOVERY-INFO { + description + "The results of a 'get discovery info' query"; + leaf name { + type string; + description + "Interface Name"; + } + leaf operational-status { + type Operational-state; + description + "Operational status"; + } + leaf loopback-mode { + type Loopback-status; + description + "The loopback mode the interface is in"; + } + leaf local-mode { + type Mode; + description + "Local Mode (passive/active)"; + } + leaf miswired { + type boolean; + description + "Has the interface mis-wired?"; + } + leaf local-mwd-key { + type uint32; + description + "Local Mis-wiring Detection key"; + } + leaf local-function-unidirectional { + type boolean; + description + "Local Unidirectional support"; + } + leaf local-function-loopback { + type boolean; + description + "Local loopback support"; + } + leaf local-function-event { + type boolean; + description + "Local event support"; + } + leaf local-functionvariable { + type boolean; + description + "Local variable retreival support"; + } + leaf local-revision { + type uint32; + description + "Local revision"; + } + leaf local-mtu { + type uint32; + description + "Local MTU"; + } + leaf local-operational { + type boolean; + description + "Is the local OAM session operational?"; + } + leaf local-evaluating { + type boolean; + description + "Is the local OAM session evaluating?"; + } + leaf remote-mode { + type Mode; + description + "Remote Mode (passive/active)"; + } + leaf remote-unidirectional { + type boolean; + description + "Remote unidirectional support"; + } + leaf remote-loopback { + type boolean; + description + "Remote loopback support"; + } + leaf remote-event { + type boolean; + description + "Remote event support"; + } + leaf remote-variable { + type boolean; + description + "Remote variable retreival support"; + } + leaf remote-mtu { + type uint32; + description + "Remote MTU"; + } + leaf remote-mac-address { + type yang:mac-address; + description + "Remote MAC address"; + } + leaf remote-vendor-oui { + type yang:hex-string; + description + "Remote vendor OUI"; + } + leaf remote-revision { + type uint16; + description + "Remote revision"; + } + leaf remote-vendor-info { + type uint32; + description + "Remote vendor info"; + } + leaf remote-mwd-key { + type uint32; + description + "Remote Mis-wiring Detection key"; + } + leaf operational-status-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf loopback-mode-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-mode-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf miswired-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-mwd-key-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-function-unidirectional-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-function-loopback-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-function-event-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-functionvariable-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-revisionvalid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf local-mtu-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-mode-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-unidirectional-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-loopback-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-event-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-variable-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-mtu-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-mac-address-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-vendor-oui-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-revisionvalid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-vendor-info-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf remote-mwd-key-valid { + type boolean; + description + "Has this value been received successfully?"; + } + leaf received-at-risk-notification-timestamp { + type uint64; + units "second"; + description + "Timestamp of when the last At Risk notification + was received (in seconds since the UNIX epoch), + or 0 if the peer is not currently at risk"; + } + leaf received-at-risk-notification-time-remaining { + type uint16; + units "second"; + description + "Number of seconds remaining that the peer has + indicated it will be At Risk"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper.yang new file mode 100644 index 000000000..c11fa8bef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-link-oam-oper.yang @@ -0,0 +1,178 @@ +module Cisco-IOS-XR-ethernet-link-oam-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-link-oam-oper"; + prefix ethernet-link-oam-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ethernet-link-oam-oper-sub1 { + revision-date 2021-01-14; + } + + 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 ethernet-link-oam package operational data. + + This module contains definitions + for the following management objects: + ether-link-oam: Ethernet Link OAM operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-14 { + description + "Added feature capability fields to config info bag."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ether-link-oam { + config false; + description + "Ethernet Link OAM operational data"; + container discovery-info-interfaces { + description + "Table of Ethernet Link OAM enabled interfaces + within Discovery Info container"; + list discovery-info-interface { + key "member-interface"; + description + "Ethernet Link OAM interface to get Discovery + Info for"; + leaf member-interface { + type xr:Interface-name; + description + "Member Interface"; + } + uses ELOD-DISCOVERY-INFO; + } + } + container interface-state-interfaces { + description + "Table of Ethernet Link OAM enabled interfaces + within Interface State container"; + list interface-state-interface { + key "member-interface"; + description + "Ethernet Link OAM interface to get Interface + State for"; + leaf member-interface { + type xr:Interface-name; + description + "Member Interface"; + } + uses ELOD-INTERFACE-STATE; + } + } + container running-config-interfaces { + description + "Table of Ethernet Link OAM enabled interfaces + within Running Config container"; + list running-config-interface { + key "member-interface"; + description + "Ethernet Link OAM interface to get Running + Config for"; + leaf member-interface { + type xr:Interface-name; + description + "Member Interface"; + } + uses ELOD-RUNNING-CONFIG; + } + } + container nodes { + description + "Node table for node-specific operational data"; + list node { + key "node-name"; + description + "Node-specific data for a particular node"; + container summary { + description + "Ethernet Link OAM Summary information for the + entire node"; + uses ELOD-SUMMARY-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + } + } + container event-log-entry-interfaces { + description + "Table of Ethernet Link OAM enabled interfaces + within Event Log Entry container"; + list event-log-entry-interface { + key "member-interface"; + description + "Ethernet Link OAM enabled interface to get + Event Log Entry for"; + container event-log-entry-indexes { + description + "Table of Ethernet Link OAM Event Log entries + on the interface"; + list event-log-entry-index { + key "event-log-entry-index"; + description + "Ethernet Link OAM Event Log Entry Index to + get data for"; + leaf event-log-entry-index { + type xr:Cisco-ios-xr-string; + description + "Event Log Entry index"; + } + uses ELOD-LOG-ENTRY; + } + } + leaf member-interface { + type xr:Interface-name; + description + "Member Interface"; + } + } + } + container stats-interfaces { + description + "Table of Ethernet Link OAM enabled interfaces + within Stats container"; + list stats-interface { + key "member-interface"; + description + "Ethernet Link OAM interface to get Stats for"; + leaf member-interface { + type xr:Interface-name; + description + "Member Interface"; + } + uses ELOD-STATS; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-cfg.yang new file mode 100644 index 000000000..090e029eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-cfg.yang @@ -0,0 +1,326 @@ +module Cisco-IOS-XR-ethernet-lldp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-lldp-cfg"; + prefix ethernet-lldp-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ethernet-lldp package configuration. + + This module contains definitions + for the following management objects: + lldp: Enable LLDP, or configure global LLDP subcommands + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-07 { + description + "Updated leaf tx-tagged to tagged and added enable-gl-subif-tagged + 2022-11-25 + Corrected chassis-id-type values and order item numbers + 2022-11-08 + Added tx-tagged field + 2022-04-01 + Local LLDP system parameters configuration addition."; + semver:module-version "1.1.0"; + } + revision 2020-09-01 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Chassis-id-sub { + type enumeration { + enum "chassis-component" { + value 0; + description + "Value of entPhysicalAlias object defined in + IETF RFC 2737"; + } + enum "interface-alias" { + value 1; + description + "Value of ifAlias object defined in IETF RFC + 2863"; + } + enum "port-component" { + value 2; + description + "Value of entPhysicalAlias object defined in + IETF RFC 2737"; + } + enum "mac-address" { + value 3; + description + "Value of a unicast source address"; + } + enum "network-address" { + value 4; + description + "Network address associated with a particular + chassis"; + } + enum "interface-name" { + value 5; + description + "Value of ifName object defined in IETF RFC 2863"; + } + enum "local" { + value 6; + description + "Chassis identifier based on a locally defined + value"; + } + } + description + "Chassis id sub"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container lldp { + presence "Indicates a lldp node is configured."; + description + "Disable LLDP TX or RX"; + container transmit { + description + "Disable LLDP TX"; + leaf disable { + type boolean; + default "false"; + description + "disable LLDP TX"; + } + } + container receive { + description + "Disable LLDP RX"; + leaf disable { + type boolean; + default "false"; + description + "disable LLDP RX"; + } + } + leaf lldp-intf-enter { + type boolean; + mandatory true; + description + "enter LLDP interface submode"; + } + leaf tagged { + type boolean; + default "false"; + description + "Enable VLAN tagged LLDP PDU support on + interface"; + } + leaf enable { + type boolean; + default "false"; + description + "Enable both LLDP TX and RX"; + } + } + } + container lldp { + description + "Enable LLDP, or configure global LLDP subcommands"; + container tlv-select { + presence "Indicates a tlv-select node is configured."; + description + "Selection of LLDP TLVs to disable"; + container system-name { + description + "System Name TLV"; + leaf disable { + type boolean; + default "false"; + description + "disable System Name TLV"; + } + } + container port-description { + description + "Port Description TLV"; + leaf disable { + type boolean; + default "false"; + description + "disable Port Description TLV"; + } + } + container system-description { + description + "System Description TLV"; + leaf disable { + type boolean; + default "false"; + description + "disable System Description TLV"; + } + } + container system-capabilities { + description + "System Capabilities TLV"; + leaf disable { + type boolean; + default "false"; + description + "disable System Capabilities TLV"; + } + } + container management-address { + description + "Management Address TLV"; + leaf disable { + type boolean; + default "false"; + description + "disable Management Address TLV"; + } + } + leaf tlv-select-enter { + type boolean; + mandatory true; + description + "enter lldp tlv-select submode"; + } + } + leaf chassis-id { + type string { + length "1..256"; + } + description + "LLDP local chassis ID"; + } + leaf holdtime { + type uint32 { + range "0..65535"; + } + description + "Length of time (in sec) that receiver must + keep this packet"; + } + leaf enable-priority-addr { + type boolean; + default "false"; + description + "Enable or disable Priority to advertise + Mgmt-interface Addr First"; + } + leaf extended-show-width { + type boolean; + default "false"; + description + "Enable or disable LLDP Show LLDP Neighbor + Extended Width"; + } + leaf enable-subintf { + type boolean; + default "false"; + description + "Enable or disable LLDP on Sub-interfaces as well + globally"; + } + leaf enable-mgmtintf { + type boolean; + default "false"; + description + "Enable or disable LLDP on Mgmt interfaces as + well globally"; + } + leaf timer { + type uint32 { + range "5..65534"; + } + default "30"; + description + "Specify the rate at which LLDP packets are sent + (in sec)"; + } + leaf reinit { + type uint32 { + range "2..5"; + } + default "2"; + description + "Delay (in sec) for LLDP initialization on any + interface"; + } + leaf system-description { + type string { + length "1..256"; + } + description + "LLDP local system description"; + } + leaf enable { + type boolean; + default "false"; + description + "Enable or disable LLDP globally"; + } + leaf enable-global-subif-tagged { + type boolean; + default "false"; + description + "Enable or disable VLAN tagging for LLDP PDU on + Sub-interfaces globally"; + } + leaf system-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "LLDP local system name"; + } + leaf chassis-id-type { + type Chassis-id-sub; + description + "LLDP local chassis ID type"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub1.yang new file mode 100644 index 000000000..9e1a585da --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub1.yang @@ -0,0 +1,613 @@ +submodule Cisco-IOS-XR-ethernet-lldp-oper-sub1 { + belongs-to Cisco-IOS-XR-ethernet-lldp-oper { + prefix Cisco-IOS-XR-ethernet-lldp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-lldp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-08 { + description + "Added system-description field + 2022-04-01 + Added last clear time and transmit failure fields + 2022-03-01 + Added interface stats fields"; + semver:module-version "1.2.0"; + } + revision 2020-09-01 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-13 { + description + "Added a new notification."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef In6-addr { + type inet:ipv6-address; + description + "In6 addr"; + } + + typedef Lldp-l3-addr-protocol { + type enumeration { + enum "ipv4" { + description + "IPv4"; + } + enum "ipv6" { + description + "IPv6"; + } + } + description + "Lldp l3 addr protocol"; + } + + grouping LLDP-STATS { + description + "LLDP statistics"; + leaf transmitted-packets { + type uint32; + description + "Transmitted packets"; + } + leaf aged-out-entries { + type uint32; + description + "Aged out entries"; + } + leaf discarded-packets { + type uint32; + description + "Discarded packets"; + } + leaf bad-packets { + type uint32; + description + "Bad packet received and dropped"; + } + leaf received-packets { + type uint32; + description + "Received packets"; + } + leaf discarded-tl-vs { + type uint32; + description + "Discarded TLVs"; + } + leaf unrecognized-tl-vs { + type uint32; + description + "Unrecognized TLVs"; + } + leaf out-of-memory-errors { + type uint32; + description + "Out-of-memory conditions"; + } + leaf encapsulation-errors { + type uint32; + description + "Transmission errors"; + } + leaf queue-overflow-errors { + type uint32; + description + "Queue overflows"; + } + leaf table-overflow-errors { + type uint32; + description + "Table overflows"; + } + leaf accepted-tl-vs { + type uint32; + description + "Accepted TLVs"; + } + leaf last-clear { + type uint64; + units "second"; + description + "Time elapsed since last clear in seconds"; + } + } + + grouping INTERFACE-STATISTICS { + description + "LLDP Interface Stats"; + leaf transmitted-packets { + type uint64; + description + "Transmitted packets"; + } + leaf discarded-packets { + type uint64; + description + "Discarded packets"; + } + leaf bad-packets { + type uint64; + description + "Bad packet received and dropped"; + } + leaf received-packets { + type uint64; + description + "Received packets"; + } + leaf discarded-tl-vs { + type uint64; + description + "Discarded TLVs"; + } + leaf unrecognized-tl-vs { + type uint64; + description + "Unrecognized TLVs"; + } + leaf transmit-failures { + type uint64; + description + "LLDP Packets failed in transmission"; + } + leaf last-clear { + type uint64; + units "second"; + description + "Time elapsed since last clear in seconds"; + } + } + + grouping LLDP-INTERFACE { + description + "Information about an interface that LLDP is + running on"; + container local-network-addresses { + description + "Local Management Addresses"; + uses LLDP-ADDRESS-ENTRY; + } + container interface-stats { + description + "Interface Statistics"; + uses INTERFACE-STATISTICS; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tx-enabled { + type uint8; + description + "TX Enabled"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-enabled { + type uint8; + description + "RX Enabled"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tx-state { + type string; + description + "TX State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rx-state { + type string; + description + "RX State"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf if-index { + type uint32; + description + "ifIndex"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-id { + type string; + description + "Outgoing port identifier"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-id-sub-type { + type uint8; + description + "Port ID sub type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-description { + type string; + description + "Port Description"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tagged { + type uint8; + description + "Interface supports tagging"; + } + } + + grouping LLDP-ORG-DEF-TLV-ENTRY { + description + "LLDP Org Def TLV entry"; + list lldp-org-def-tlv-entry { + description + "Next Org Def TLV entry in list"; + leaf oui { + type uint32; + description + "Organizationally Unique Identifier"; + } + leaf tlv-subtype { + type uint8; + description + "Org Def TLV subtype"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tlv-info-indes { + type uint32; + description + "lldpRemOrgDefInfoIndex"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tlv-value { + type yang:hex-string; + description + "Org Def TLV payload"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + } + + grouping LLDP-UNKNOWN-TLV-ENTRY { + description + "LLDP Unknown TLV entry"; + list lldp-unknown-tlv-entry { + description + "Next unknown TLV entry in list"; + leaf tlv-type { + type uint8; + description + "Unknown TLV type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tlv-value { + type yang:hex-string; + description + "Unknown TLV payload"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + } + + grouping LLDP-NEIGHBOR-ENTRY-MIB-DETAILS { + description + "MIB neighbor info"; + container unknown-tlv-list { + description + "Unknown TLV list"; + uses LLDP-UNKNOWN-TLV-ENTRY; + } + container org-def-tlv-list { + description + "Org Def TLV list"; + uses LLDP-ORG-DEF-TLV-ENTRY; + } + leaf rem-time-mark { + type uint32; + description + "TimeFilter"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rem-local-port-num { + type uint32; + description + "LldpPortNumber"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rem-index { + type uint32; + description + "lldpRemIndex"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf chassis-id-sub-type { + type uint8; + description + "Chassis ID sub type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf chassis-id-len { + type uint16; + description + "Chassis ID length"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-id-sub-type { + type uint8; + description + "Port ID sub type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-id-len { + type uint16; + description + "Port ID length"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf combined-capabilities { + type uint32; + description + "Supported and combined cpabilities"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping LLDP-L3-ADDR { + description + "LLDP L3 ADDR"; + leaf address-type { + type Lldp-l3-addr-protocol; + description + "AddressType"; + } + leaf ipv4-address { + when "../address-type = 'ipv4'" { + description + "../AddressType = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf ipv6-address { + when "../address-type = 'ipv6'" { + description + "../AddressType = 'IPv6'"; + } + type In6-addr; + description + "IPv6 address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping LLDP-ADDRESS-ENTRY { + description + "LLDP Address entry"; + list lldp-addr-entry { + description + "Next address entry in list"; + container address { + description + "Network layer address"; + uses LLDP-L3-ADDR; + } + leaf ma-subtype { + type uint8; + description + "MA sub type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf if-num { + type uint32; + description + "Interface num"; + } + } + } + + grouping LLDP-NEIGHBOR-ENTRY-DETAILS { + description + "Detailed neighbor info"; + container network-addresses { + description + "Management Addresses"; + uses LLDP-ADDRESS-ENTRY; + } + leaf peer-mac-address { + type yang:mac-address; + description + "Peer Mac Address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-description { + type string; + description + "Port Description"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf system-name { + type string; + description + "System Name"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf system-description { + type string; + description + "System Description"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf time-remaining { + type uint32; + description + "Time remaining"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf system-capabilities { + type string; + description + "System Capabilities"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf enabled-capabilities { + type string; + description + "Enabled Capabilities"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf auto-negotiation { + type string; + description + "Auto Negotiation"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf physical-media-capabilities { + type string; + description + "Physical media capabilities"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf media-attachment-unit-type { + type uint32; + description + "Media Attachment Unit type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-vlan-id { + type uint32; + description + "Vlan ID"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf last-update { + type uint64; + units "second"; + description + "Last Update Time in seconds"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf age { + type uint64; + units "second"; + description + "Age since discovery in seconds"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping LLDP-NEIGHBOR { + description + "LLDP neighbor info"; + list lldp-neighbor { + description + "Next neighbor in the list"; + container detail { + description + "Detailed neighbor info"; + uses LLDP-NEIGHBOR-ENTRY-DETAILS; + } + container mib { + description + "MIB nieghbor info"; + uses LLDP-NEIGHBOR-ENTRY-MIB-DETAILS; + } + leaf receiving-interface-name { + type xr:Interface-name; + description + "Interface the neighbor entry was received on "; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf receiving-parent-interface-name { + type xr:Interface-name; + description + "Parent Interface the neighbor entry was + received on "; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf device-id { + type string; + description + "Device identifier"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf chassis-id { + type string; + description + "Chassis id"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf port-id-detail { + type string; + description + "Outgoing port identifier"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf header-version { + type uint8; + description + "Version number"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf hold-time { + type uint16; + description + "Remaining hold time"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf enabled-capabilities { + type string; + description + "Enabled Capabilities"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf platform { + type string; + description + "Platform type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub2.yang new file mode 100644 index 000000000..a4b510588 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper-sub2.yang @@ -0,0 +1,108 @@ +submodule Cisco-IOS-XR-ethernet-lldp-oper-sub2 { + belongs-to Cisco-IOS-XR-ethernet-lldp-oper { + prefix Cisco-IOS-XR-ethernet-lldp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-lldp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-08 { + description + "Added system-description field + 2022-04-01 + Added last clear time and transmit failure fields + 2022-03-01 + Added interface stats fields"; + semver:module-version "1.2.0"; + } + revision 2020-09-01 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-13 { + description + "Added a new notification."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LLDP-MGR-GLOBAL-INFO { + description + "LLDP global info"; + leaf chassis-id { + type string; + description + "Chassis identifier"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf chassis-id-sub-type { + type uint8; + description + "Chassis ID sub type"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf system-name { + type string; + description + "System Name"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf timer { + type uint32; + description + "Rate at which LLDP packets re sent (in sec)"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf hold-time { + type uint32; + description + "Length of time (in sec)that receiver must keep + thispacket"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf re-init { + type uint32; + description + "Delay (in sec) for LLDPinitialization on + anyinterface"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf system-description { + type string; + description + "System Description"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper.yang new file mode 100644 index 000000000..405a7f5a1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-lldp-oper.yang @@ -0,0 +1,195 @@ +module Cisco-IOS-XR-ethernet-lldp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-lldp-oper"; + prefix ethernet-lldp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ethernet-lldp-oper-sub2 { + revision-date 2022-11-08; + } + include Cisco-IOS-XR-ethernet-lldp-oper-sub1 { + revision-date 2022-11-08; + } + + 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 ethernet-lldp package operational data. + + This module contains definitions + for the following management objects: + lldp: Link Layer Discovery Protocol operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-08 { + description + "Added system-description field + 2022-04-01 + Added last clear time and transmit failure fields + 2022-03-01 + Added interface stats fields"; + semver:module-version "1.2.0"; + } + revision 2020-09-01 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-13 { + description + "Added a new notification."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LLDP-BODY { + description + "LLDP protocol state information"; + container global-lldp { + description + "Global LLDP data"; + container lldp-info { + description + "The LLDP Global Information of this box"; + uses LLDP-MGR-GLOBAL-INFO; + } + } + container nodes { + description + "Per node LLDP operational data"; + list node { + key "node-name"; + description + "The LLDP operational data for a particular node"; + container neighbors { + description + "The LLDP neighbor tables on this node"; + container devices { + description + "The detailed LLDP neighbor table on this + device"; + list device { + description + "Detailed information about a LLDP neighbor + entry"; + leaf device-id { + type string; + description + "The neighboring device identifier"; + } + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses LLDP-NEIGHBOR; + } + } + container details { + description + "The detailed LLDP neighbor table"; + list detail { + description + "Detailed information about a LLDP neighbor + entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + leaf device-id { + type string; + description + "The neighboring device identifier"; + } + uses LLDP-NEIGHBOR; + } + } + container summaries { + description + "The LLDP neighbor summary table"; + list summary { + description + "Brief information about a LLDP neighbor + entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + leaf device-id { + type string; + description + "The neighboring device identifier"; + } + uses LLDP-NEIGHBOR; + } + } + } + container interfaces { + description + "The table of interfaces on which LLDP is + running on this node"; + list interface { + key "interface-name"; + description + "Operational data for an interface on which + LLDP is running"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses LLDP-INTERFACE; + } + } + container statistics { + description + "The LLDP traffic statistics for this node"; + uses LLDP-STATS; + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } + + notification lldp-event { + description + "Notification event for lldp"; + uses LLDP-BODY; + } + container lldp { + config false; + description + "Link Layer Discovery Protocol operational data"; + uses LLDP-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-act.yang new file mode 100644 index 000000000..464dfd12f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-act.yang @@ -0,0 +1,394 @@ +module Cisco-IOS-XR-ethernet-loopback-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-loopback-act"; + prefix ethernet-loopback-act; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 ethernet loopback actions. + + Copyright (c) 2020-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-15 { + description + "Add ethernet-services task name to the RPCs."; + } + revision 2020-03-06 { + description + "IOS XR 7.4.1 revision."; + } + + typedef loopback-direction { + type enumeration { + enum "external" { + description + "External loopback (wire loopback)"; + } + enum "internal" { + description + "Internal loopback (bridge loopback)"; + } + } + description + "Direction of loopback"; + } + + typedef loopback-status { + type enumeration { + enum "inactive" { + description + "Loopback is not active"; + } + enum "active" { + description + "Loopback is active"; + } + } + description + "Status of loopback session"; + } + + typedef vlan-type { + type enumeration { + enum "dot1q" { + description + "Dot1q outer VLAN type"; + } + enum "dot1ad" { + description + "Dot1ad outer VLAN type"; + } + } + description + "Type of the outer VLAN ID"; + } + + grouping EDPL-REMOTE-VLAN-TYPE { + description + "Encapsulation specification for remote loopback commands"; + leaf outer-type { + type vlan-type; + description + "Type of outer VLAN ID"; + } + leaf outer-vlan-ids { + type string; + description + "Outer VLAN ID"; + } + leaf inner-vlan-ids { + type string; + description + "Inner VLAN ID"; + } + leaf all-vlans { + type boolean; + description + "Include the all-vlans flag in the remote request"; + } + } + + grouping EDPL-CFM-INFO-TYPE { + description + "CFM domain and service specification"; + leaf domain { + type string; + mandatory true; + description + "CFM domain name"; + } + leaf service { + type string; + mandatory true; + description + "CFM service name"; + } + } + + grouping EDPL-REMOTE-TARGET-TYPE { + description + "Information on remote session target"; + leaf mac { + type yang:mac-address; + description + "Target remote mac address"; + } + leaf mep { + type uint16; + description + "ID of target remote MEP"; + } + } + + grouping EDPL-REMOTE-SESSION-LIST-TYPE { + description + "List of remote sessions"; + list session { + description + "List of remote sessions"; + leaf mac { + type yang:mac-address; + description + "Remote mac address"; + } + leaf direction { + type loopback-direction; + description + "Loopback session direction"; + } + leaf timer { + type uint32; + description + "Remaining session time, in seconds"; + } + leaf status { + type loopback-status; + description + "Loopback session status"; + } + } + } + + rpc ethernet-loopback-start-local { + description + "Start a local ethernet loopback session"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which to start the loopback"; + } + leaf direction { + type loopback-direction; + mandatory true; + description + "Loopback direction"; + } + leaf source-mac { + type yang:mac-address; + description + "Source mac to filter on"; + } + leaf dest-mac { + type yang:mac-address; + description + "Destination mac to filter on"; + } + leaf outer-type { + type vlan-type; + description + "Type of outer VLAN ID to filter on"; + } + leaf outer-vlan-ids { + type string; + description + "Outer VLAN ID or IDs to filter on"; + } + leaf inner-vlan-ids { + type string; + description + "Inner VLAN ID or IDs to filter on"; + } + leaf ether-type { + type uint16; + description + "Ether-type to filter"; + } + leaf cos { + type uint8 { + range "0..7"; + } + description + "Class of service to filter on"; + } + leaf llc-oui { + type uint32 { + range "0..16777215"; + } + description + "LLC-OUI to filter on"; + } + leaf timeout { + type uint32 { + range "0..604800"; + } + description + "Loopback duration in seconds"; + } + } + output { + leaf id { + type uint32; + description + "Session ID"; + } + } + xr:xr-task "ethernet-services"; + } + rpc ethernet-loopback-stop-local { + description + "Stop a local ethernet loopback session"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which the loopback session is running"; + } + leaf id { + type uint32; + mandatory true; + description + "ID of session to stop"; + } + } + xr:xr-task "ethernet-services"; + } + rpc ethernet-loopback-extend-local { + description + "Extend a local ethernet loopback session"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which the loopback session is running"; + } + leaf id { + type uint32; + mandatory true; + description + "ID of session to extend"; + } + leaf timeout { + type uint32 { + range "0..604800"; + } + description + "Loopback duration in seconds"; + } + } + xr:xr-task "ethernet-services"; + } + rpc ethernet-loopback-start-remote { + description + "Start a remote ethernet loopback session"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which to send the request"; + } + uses EDPL-REMOTE-TARGET-TYPE; + uses EDPL-CFM-INFO-TYPE; + uses EDPL-REMOTE-VLAN-TYPE; + leaf timeout { + type uint32 { + range "1..604800"; + } + mandatory true; + description + "Loopback duration in seconds"; + } + } + xr:xr-task "ethernet-services"; + } + rpc ethernet-loopback-stop-remote { + description + "Stop a remote ethernet loopback session"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which to send the request"; + } + uses EDPL-REMOTE-TARGET-TYPE; + uses EDPL-CFM-INFO-TYPE; + uses EDPL-REMOTE-VLAN-TYPE; + } + xr:xr-task "ethernet-services"; + } + rpc ethernet-loopback-extend-remote { + description + "Extend a remote ethernet loopback session"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which to send the request"; + } + uses EDPL-REMOTE-TARGET-TYPE; + uses EDPL-CFM-INFO-TYPE; + uses EDPL-REMOTE-VLAN-TYPE; + leaf timeout { + type uint32 { + range "1..604800"; + } + mandatory true; + description + "Loopback duration in seconds"; + } + } + xr:xr-task "ethernet-services"; + } + rpc ethernet-loopback-get-state-remote { + description + "Retrieve the state of a remote ethernet loopback session"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which to send the request"; + } + uses EDPL-REMOTE-TARGET-TYPE; + uses EDPL-CFM-INFO-TYPE; + uses EDPL-REMOTE-VLAN-TYPE; + } + output { + uses EDPL-REMOTE-SESSION-LIST-TYPE; + } + xr:xr-task "ethernet-services"; + } + rpc ethernet-loopback-discover-remote { + description + "Send a discovery request to retrieve information on remote loopback sessions"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface on which to send the request"; + } + uses EDPL-CFM-INFO-TYPE; + uses EDPL-REMOTE-VLAN-TYPE; + } + output { + uses EDPL-REMOTE-SESSION-LIST-TYPE; + } + xr:xr-task "ethernet-services"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-cfg.yang new file mode 100644 index 000000000..9518dfd40 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-cfg.yang @@ -0,0 +1,108 @@ +module Cisco-IOS-XR-ethernet-loopback-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-loopback-cfg"; + prefix ethernet-loopback-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2-eth-infra-cfg { + prefix a2; + } + + 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 ethernet-loopback package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-l2-eth-infra-cfg + modules with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration/a2:ethernet-features" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2-eth-infra-cfg'"; + container ethernet-loopback { + description + "Ethernet Loopback configuration data"; + container remote { + description + "This object acts as a container for the + permission of remote-initiated external and + internal loopback on a local interface."; + leaf internal { + type empty; + description + "Allow remote controllers to initiate latching + loopback operations (internal loopback) on + this interface."; + } + leaf external { + type empty; + description + "Allow remote controllers to initiate latching + loopback operations (external loopback) on + this interface."; + } + leaf log-changes { + type empty; + description + "Triggers a syslog on latching loopback + activation and deactivation."; + } + } + container permit { + description + "This object acts as a container for the + permission of external and internal loopback on + an interface."; + leaf internal { + type empty; + description + "Allow internal loopback to be enabled on this + interface."; + } + leaf external { + type empty; + description + "Allow external loopback to be enabled on this + interface."; + } + } + leaf latching-loopback-controller { + type empty; + description + "Allow latching loopback sessions on remote + devices to be managed from this interface."; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper-sub1.yang new file mode 100644 index 000000000..acd5a8f09 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper-sub1.yang @@ -0,0 +1,500 @@ +submodule Cisco-IOS-XR-ethernet-loopback-oper-sub1 { + belongs-to Cisco-IOS-XR-ethernet-loopback-oper { + prefix Cisco-IOS-XR-ethernet-loopback-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-loopback package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-27 { + description + "Add COS filter support flag to active sessions"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Edpl-bag-status { + type enumeration { + enum "invalid" { + value 958450333; + description + "Invalid loopback session status"; + } + enum "starting" { + value 958450334; + description + "Loopback starting"; + } + enum "active" { + value 958450335; + description + "Loopback active"; + } + enum "stopping" { + value 958450336; + description + "Loopback stopping"; + } + } + description + "Loopback status"; + } + + typedef Edpl-bag-session { + type enumeration { + enum "local" { + value 0; + description + "Local Session"; + } + enum "latching" { + value 1; + description + "Remote-initiated session"; + } + } + description + "EDPL session type"; + } + + typedef Edpl-bag-direction { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid direction"; + } + enum "external" { + value 1; + description + "External direction"; + } + enum "internal" { + value 2; + description + "Internal direction"; + } + } + description + "EDPL direction"; + } + + typedef Edpl-bag-remote-session-status { + type enumeration { + enum "inactive" { + value 0; + description + "Inactive remote session"; + } + enum "active" { + value 1; + description + "Active remote session"; + } + } + description + "Remote session status"; + } + + typedef Edpl-bag-vlan { + type enumeration { + enum "unspecified" { + value 0; + description + "Unspecified VLAN type"; + } + enum "dot1q" { + value 1; + description + "Dot1Q VLAN type"; + } + enum "dot1ad" { + value 2; + description + "Dot1ad VLAN type"; + } + } + description + "EDPL VLAN type"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Cfm-bag-ll { + type enumeration { + enum "activate" { + value 0; + description + "Loopback activate request"; + } + enum "deactivate" { + value 1; + description + "Loopback deactivate request"; + } + enum "state-request" { + value 2; + description + "Loopback state request"; + } + enum "activate-response" { + value 3; + description + "Loopback activate response"; + } + enum "deactivate-response" { + value 4; + description + "Loopback deactivate response"; + } + enum "state-response" { + value 5; + description + "Loopback state response"; + } + } + description + "Cfm bag ll"; + } + + typedef Edpl-bag-message-dir { + type enumeration { + enum "incoming" { + value 0; + description + "Incoming message"; + } + enum "outgoing" { + value 1; + description + "Outgoing message"; + } + } + description + "Edpl bag message dir"; + } + + grouping EDPL-BAG-VLAN-RANGE { + description + "EDPL VLAN range"; + leaf min { + type uint16; + description + "Lowest value"; + } + leaf max { + type uint16; + description + "Highest value"; + } + } + + grouping EDPL-BAG-VLAN-RANGE-ARRAY { + description + "EDPL VLAN range array structure"; + list vlan-range { + max-elements "10"; + description + "VLAN range"; + uses EDPL-BAG-VLAN-RANGE; + } + } + + grouping EDPL-BAG-SESSION { + description + "EDPL session details"; + container outer-vlan-range { + description + "Outer VLAN range"; + uses EDPL-BAG-VLAN-RANGE-ARRAY; + } + container inner-vlan-range { + description + "Inner VLAN range"; + uses EDPL-BAG-VLAN-RANGE-ARRAY; + } + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf direction { + type Edpl-bag-direction; + description + "Loopback direction"; + } + leaf session-type { + type Edpl-bag-session; + description + "Loopback session type"; + } + leaf meg-level { + type uint16; + description + "MEG level"; + } + leaf status { + type Edpl-bag-status; + description + "Loopback status"; + } + leaf outer-vlan-type { + type Edpl-bag-vlan; + description + "Outer VLAN type"; + } + leaf source-mac-address { + type Mac-address; + description + "Source MAC address"; + } + leaf destination-mac-address { + type Mac-address; + description + "Destination MAC address"; + } + leaf ether-type { + type uint16; + description + "Ether type"; + } + leaf cos { + type uint8; + description + "Class of Service"; + } + leaf llc-oui { + type uint32; + description + "LLC OUI"; + } + leaf timeout { + type uint32; + description + "Timeout period (s)"; + } + leaf time-left { + type uint32; + description + "Time left (s)"; + } + leaf cos-filter-supported { + type boolean; + description + "Is filtering by COS supported?"; + } + } + + grouping EDPL-ACTIVE-BAG { + description + "Details of active loopback sessions for an + interface"; + list session { + description + "Session information"; + uses EDPL-BAG-SESSION; + } + } + + grouping EDPL-PERMITTED-BAG { + description + "Details of whether EDPL is permitted on an + interface"; + leaf external { + type boolean; + description + "TRUE if external loopback is permitted"; + } + leaf internal { + type boolean; + description + "TRUE if internal loopback is permitted"; + } + leaf external-latching { + type boolean; + description + "TRUE if external latching-loopback is permitted"; + } + leaf internal-latching { + type boolean; + description + "TRUE if internal latching-loopback is permitted"; + } + leaf log-changes { + type boolean; + description + "TRUE if log-changes are to be recorded"; + } + leaf latching-loopback-controller { + type boolean; + description + "TRUE if the latching loopback ctrlr is enabled"; + } + } + + grouping EDPL-MESSAGE-BAG { + description + "Contents of a single loopback message"; + leaf message-id { + type uint32; + description + "The message ID"; + } + leaf time { + type uint32; + description + "Time the message was sent"; + } + leaf direction { + type Edpl-bag-message-dir; + description + "Was the message sent or received?"; + } + leaf type { + type Cfm-bag-ll; + description + "Loopback message type"; + } + leaf interface { + type string; + description + "Interface name"; + } + leaf mac { + type Mac-address; + description + "target/source mac for outgoing/incoming messages"; + } + leaf mep { + type uint16; + description + "target/source mep for outgoing/incoming messages"; + } + leaf mep-specified { + type boolean; + description + "MEP ID is specified"; + } + leaf domain { + type string; + description + "CFM domain on which the message was sent"; + } + leaf service { + type string; + description + "CFM service on which the message was sent"; + } + leaf oam-level { + type uint16; + description + "Indicates level of CFM domain"; + } + leaf outer-type { + type Edpl-bag-vlan; + description + "type of outer VLAN tag (dot1ad or dot1Q)"; + } + leaf outer-vlanid { + type uint16; + description + "Outer VLAN ID"; + } + leaf outer-vlan-specified { + type boolean; + description + "Outer VLAN ID specified"; + } + leaf inner-vlanid { + type uint16; + description + "Inner VLAN ID"; + } + leaf inner-vlan-specified { + type boolean; + description + "Inner VLAN ID specified"; + } + leaf multicast { + type boolean; + description + "Was the message sent multicast?"; + } + leaf capabilities { + type uint8; + description + "Flags specifying capabilities of sender"; + } + leaf all-vlans { + type boolean; + description + "Was all_vlans flag specified?"; + } + leaf response-code { + type uint8; + description + "Error code specified"; + } + leaf status { + type Edpl-bag-remote-session-status; + description + "Status of the loopback session"; + } + leaf session-direction { + type Edpl-bag-direction; + description + "Direction of the loopback session"; + } + leaf timer { + type uint32; + units "second"; + description + "Length of the expiration timer, in seconds"; + } + } + + grouping EDPL-MESSAGES-BAG { + description + "Bag containing loopback messages"; + list message { + description + "Loopback messages information"; + uses EDPL-MESSAGE-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper.yang new file mode 100644 index 000000000..652f0572e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-loopback-oper.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-ethernet-loopback-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-loopback-oper"; + prefix ethernet-loopback-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ethernet-loopback-oper-sub1 { + revision-date 2021-04-27; + } + + 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 ethernet-loopback package operational data. + + This module contains definitions + for the following management objects: + ethernet-loopback: Ethernet Loopback operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-27 { + description + "Add COS filter support flag to active sessions"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ethernet-loopback { + config false; + description + "Ethernet Loopback operational data."; + container messages-interfaces { + description + "Container for loopback messages"; + list messages-interface { + key "interface-name"; + description + "Loopback messages"; + leaf interface-name { + type xr:Interface-name; + description + "InterfaceName"; + } + uses EDPL-MESSAGES-BAG; + } + } + container permitted-interfaces { + description + "Container for interfaces on which Ethernet + Loopback is permitted."; + list permitted-interface { + key "interface-name"; + description + "Data for an interface permitted to use Ethernet + Loopback."; + leaf interface-name { + type xr:Interface-name; + description + "InterfaceName"; + } + uses EDPL-PERMITTED-BAG; + } + } + container active-interfaces { + description + "Container for interfaces with active Ethernet + Loopback sessions."; + list active-interface { + key "interface-name"; + description + "Data for an interface with active Ethernet + Loopback sessions."; + leaf interface-name { + type xr:Interface-name; + description + "InterfaceName"; + } + uses EDPL-ACTIVE-BAG; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-act.yang new file mode 100644 index 000000000..1c6ae288f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-act.yang @@ -0,0 +1,170 @@ +module Cisco-IOS-XR-ethernet-sat-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-sat-act"; + prefix ethernet-sat-act; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-ethernet-sat-datatypes { + prefix dt1; + } + 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 ethernet service activation test actions. + + Copyright (c) 2013-2018, 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-21 { + description + "Add support for optional source MAC addresses when starting tests"; + semver:module-version "1.2.0"; + } + revision 2021-04-23 { + description + "Add the import semver module"; + semver:module-version "1.1.0"; + } + revision 2018-07-10 { + description + "IOS XR 7.1.1 revision."; + } + + typedef sat-mac-address-type { + type string { + pattern "[0-9a-fA-F]{4}(\\.[0-9a-fA-F]{4}){2}"; + } + description + "MAC address"; + } + + rpc service-activation-test-start { + description + "Start a SAT on the specified interface"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface name"; + } + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + mandatory true; + description + "Profile name"; + } + leaf destination { + type sat-mac-address-type; + mandatory true; + description + "Destination MAC address"; + } + leaf direction { + type dt1:Sat-direction; + mandatory true; + description + "Test direction"; + } + } + xr:xr-task "ethernet-services"; + xr:cli-command "ethernet service-activation-test start interface profile destination direction "; + } + rpc service-activation-test-start-source { + description + "Start a SAT on the specified interface specifying a source MAC address"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface name"; + } + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + mandatory true; + description + "Profile name"; + } + leaf destination { + type sat-mac-address-type; + mandatory true; + description + "Destination MAC address"; + } + leaf source { + type sat-mac-address-type; + description + "Source MAC address"; + } + leaf direction { + type dt1:Sat-direction; + mandatory true; + description + "Test direction"; + } + } + xr:xr-task "ethernet-services"; + xr:cli-command "ethernet service-activation-test start interface profile destination source direction "; + } + rpc service-activation-test-stop { + description + "Stop running SAT on the specified interface"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface name"; + } + } + xr:xr-task "ethernet-services"; + xr:cli-command "ethernet service-activation-test stop interface "; + } + rpc service-activation-test-stop-all { + description + "Stop running SAT on all interfaces"; + xr:xr-task "ethernet-services"; + xr:cli-command "ethernet service-activation-test stop all"; + } + rpc service-activation-test-clear { + description + "Clear stored SAT results on the specified interface"; + input { + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Interface name"; + } + } + xr:xr-task "ethernet-services"; + xr:cli-command "clear ethernet service-activation-test results interface "; + } + rpc service-activation-test-clear-all { + description + "Clear stored SAT results on all interfaces"; + xr:xr-task "ethernet-services"; + xr:cli-command "clear ethernet service-activation-test results all"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-cfg.yang new file mode 100644 index 000000000..6a29576ab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-cfg.yang @@ -0,0 +1,391 @@ +module Cisco-IOS-XR-ethernet-sat-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-sat-cfg"; + prefix ethernet-sat-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ethernet-sat-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ethernet-sat package configuration. + + This module contains definitions + for the following management objects: + service-activation-test: Service Activation Testing global + configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-03 { + description + "Add minimum-delay config item + 2021-12-03 + Add combined loss-delay measurement option + 2021-12-01 + Add packet-format + 2021-10-24 + Add support for starting a SAT with optional source MAC addresses + 2021-10-01 + Add microsecond frame-delay bin widths"; + semver:module-version "3.1.0"; + } + revision 2021-09-10 { + description + "Fix frame delay range decimal handling and increase to four decimal places + 2021-03-29 + Add support for reporting frame delay statistics"; + semver:module-version "3.0.0"; + } + revision 2020-04-15 { + description + "Fixed must conditions bug."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container service-activation-test { + description + "Service Activation Testing interface + configuration"; + leaf permit { + type dt1:Sat-permit; + description + "Set SAT permission on the interface"; + } + } + } + container service-activation-test { + description + "Service Activation Testing global configuration"; + container profiles { + description + "Table for profile configuration"; + list profile { + key "profile-name"; + description + "Profile configuration"; + container frame-delay { + description + "Set the frame delay reporting config"; + leaf bins { + type uint32 { + range "2..100"; + } + must "../width or (../width and ../range-percentile) or (../width and ../range-percentile-millionths) or (../width and ../minimum-delay) or (../width and ../minimum-delay and ../range-percentile) or (../width and ../minimum-delay and ../range-percentile-millionths and ../width and ../minimum-delay and ../microseconds) or (../width and ../minimum-delay and ../range-percentile and ../microseconds) or (../width and ../minimum-delay and ../range-percentile-millionths and ../microseconds)"; + description + "Number of delay aggregation bins"; + } + leaf width { + type uint32 { + range "1..10000000"; + } + units "millisecond"; + must "../bins or (../bins and ../range-percentile) or (../bins and ../range-percentile-millionths) or (../bins and ../minimum-delay) or (../bins and ../minimum-delay and ../range-percentile) or (../bins and ../minimum-delay and ../range-percentile-millionths and ../bins and ../minimum-delay and ../microseconds) or (../bins and ../minimum-delay and ../range-percentile and ../microseconds) or (../bins and ../minimum-delay and ../range-percentile-millionths and ../microseconds)"; + description + "Width of each delay aggregation bin in + milliseconds (or microseconds if Microseconds + is True"; + } + leaf range-percentile { + type uint32 { + range "0..99"; + } + units "percentage"; + must "../bins and ../width and not(../range-percentile-millionths)"; + description + "Frame delay range percentile as an integer"; + } + leaf range-percentile-millionths { + type uint32 { + range "0..999999"; + } + units "percentage"; + must "../bins and ../width and not(../range-percentile)"; + description + "PFrame delay range percentile in parts per + million"; + } + leaf microseconds { + type boolean; + must "(../bins and ../width and ../minimum-delay and ../range-percentile) or (../bins and ../width and ../minimum-delay and ../range-percentile-millionths)"; + description + "Interpret the bin width in microseconds if + true"; + } + leaf minimum-delay { + type uint32 { + range "1..10000000"; + } + units "millisecond"; + must "../bins and ../width"; + description + "The width of the first aggregation bin in + milliseconds (or microseconds if Microseconds + is True"; + } + } + container color-aware { + description + "Set the SAT color aware config"; + leaf cir-value { + type uint32 { + range "1..4294967295"; + } + must "(../cir-units and ../set-dei) or (../cir-units and ../eir-cos) or (../cir-units and ../set-dei and ../eir-cos)"; + description + "CIR value"; + } + leaf cir-units { + type dt1:Sat-inf-rate-units; + must "(../cir-value and ../set-dei) or (../cir-value and ../eir-cos) or (../cir-value and ../set-dei and ../eir-cos)"; + description + "CIR units"; + } + leaf set-dei { + type boolean; + must "../cir-value and ../cir-units"; + description + "Set DEI in EIR packets"; + } + leaf eir-cos { + type uint32 { + range "0..7"; + } + must "../cir-value and ../cir-units"; + description + "CoS value in EIR packets"; + } + } + container cos { + presence "Indicates a cos node is configured."; + description + "Set the SAT CoS config"; + leaf outer-cos { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Outer CoS value"; + } + leaf inner-cos { + type uint32 { + range "0..7"; + } + description + "Inner CoS value"; + } + } + container duration { + presence "Indicates a duration node is configured."; + description + "Set the SAT duration config"; + leaf value { + type uint32 { + range "1..1440"; + } + mandatory true; + description + "Duration value"; + } + leaf units { + type dt1:Sat-duration-units; + mandatory true; + description + "Duration units"; + } + leaf per-step { + type boolean; + mandatory true; + description + "Per-step flag"; + } + } + container information-rate { + description + "Set the SAT information rate config"; + leaf fixed-value { + type uint32 { + range "1..4294967295"; + } + must "../units and not(../minimum or ../step or ../maximum or ../cbs or ../cbs-units or ../cir)"; + description + "Fixed information rate value"; + } + leaf minimum { + type uint32 { + range "1..4294967295"; + } + must "../step and ../maximum and ../units and not(../fixed-value or ../cbs or ../cbs-units or ../cir)"; + description + "Minimum information rate"; + } + leaf step { + type uint32 { + range "1..4294967295"; + } + must "../minimum and ../maximum and ../units and not(../fixed-value or ../cbs or ../cbs-units or ../cir)"; + description + "Information rate step"; + } + leaf maximum { + type uint32 { + range "1..4294967295"; + } + must "../minimum and ../step and ../units and not(../fixed-value or ../cbs or ../cbs-units or ../cir)"; + description + "Maximum information rate"; + } + leaf units { + type dt1:Sat-inf-rate-units; + must "../fixed-value or (../minimum and ../step and ../maximum) or (../cbs and ../cbs-units and ../cir)"; + description + "Information rate units"; + } + leaf cbs { + type uint32 { + range "1..1024"; + } + must "../cbs-units and ../cir and ../units and not(../fixed-value or ../minimum or ../step or ../maximum)"; + description + "Committed Burst Size"; + } + leaf cbs-units { + type dt1:Sat-cbs-unites; + must "../cbs and ../cir and ../units and not(../fixed-value or ../minimum or ../step or ../maximum)"; + description + "Units for the CBS"; + } + leaf cir { + type uint32 { + range "1..4294967295"; + } + must "../cbs and ../cbs-units and ../units and not(../fixed-value or ../minimum or ../step or ../maximum)"; + description + "Fixed Committed information rate value"; + } + } + container packet-size { + description + "Set the SAT packet size config"; + leaf emix { + type empty; + must "not(../size)"; + description + "Use EMIX profile flag"; + } + leaf sequence { + type string; + must "../emix and not(../size)"; + description + "EMIX Sequence"; + } + leaf user-defined-frame-size { + type uint32 { + range "64..10236"; + } + must "../emix and ../sequence and not(../size)"; + description + "User Defined Frame Size"; + } + leaf size { + type uint32 { + range "1..10236"; + } + units "byte"; + must "not(../emix or ../sequence or ../user-defined-frame-size)"; + description + "Packet size in bytes"; + } + leaf pseudo-random { + type empty; + must "../emix or ../size and not(../hex-pattern)"; + description + "Use pseudo-random data for packet contents"; + } + leaf hex-pattern { + type uint32 { + range "0..255"; + } + must "../emix or ../size and not(../pseudo-random)"; + description + "Hex pattern used as packet contents"; + } + } + leaf measurement { + type dt1:Measurement-option; + description + "Set the measurement options configuration"; + } + leaf enable { + type empty; + description + "Enable the profile"; + } + leaf description { + type string { + length "1..63"; + } + description + "Set the SAT description config"; + } + leaf packet-format { + type dt1:Packet-format; + description + "Send LBMs instead of SAT packets"; + } + leaf mode { + type dt1:Sat-mode; + description + "Set the SAT mode config"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "Profile"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-datatypes.yang new file mode 100644 index 000000000..0331284a2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-datatypes.yang @@ -0,0 +1,178 @@ +module Cisco-IOS-XR-ethernet-sat-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-sat-datatypes"; + prefix ethernet-sat-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-05 { + description + "Add burst profile config."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sat-direction { + type enumeration { + enum "external" { + value 1; + description + "External direction"; + } + enum "internal" { + value 2; + description + "Internal direction"; + } + } + description + "Sat direction"; + } + + typedef Sat-inf-rate-units { + type enumeration { + enum "kbps" { + value 1; + description + "Kb/s"; + } + enum "mbps" { + value 2; + description + "Mb/s"; + } + enum "gbps" { + value 3; + description + "Gb/s"; + } + } + description + "Sat inf rate units"; + } + + typedef Measurement-option { + type enumeration { + enum "combined" { + value 1; + description + "Combined"; + } + } + description + "Measurement option"; + } + + typedef Sat-cbs-unites { + type enumeration { + enum "kb" { + value 1; + description + "KB"; + } + enum "mb" { + value 2; + description + "MB"; + } + enum "gb" { + value 3; + description + "GB"; + } + } + description + "Sat cbs unites"; + } + + typedef Sat-mode { + type enumeration { + enum "two-way" { + value 2; + description + "Two way"; + } + } + description + "Sat mode"; + } + + typedef Packet-format { + type enumeration { + enum "lbm" { + value 1; + description + "LBMs"; + } + } + description + "Packet format"; + } + + typedef Sat-duration-units { + type enumeration { + enum "minutes" { + value 1; + description + "Duration in minutes"; + } + enum "hours" { + value 2; + description + "Duration in hours"; + } + } + description + "Sat duration units"; + } + + typedef Sat-permit { + type enumeration { + enum "internal-only" { + value 1; + description + "Only internal permitted"; + } + enum "external-only" { + value 2; + description + "Only external permitted"; + } + enum "all-permitted" { + value 3; + description + "Internal and external permitted"; + } + } + description + "Sat permit"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper-sub1.yang new file mode 100644 index 000000000..eddcb9ec2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper-sub1.yang @@ -0,0 +1,670 @@ +submodule Cisco-IOS-XR-ethernet-sat-oper-sub1 { + belongs-to Cisco-IOS-XR-ethernet-sat-oper { + prefix Cisco-IOS-XR-ethernet-sat-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-sat package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-24 { + description + "Add support for starting a SAT with optional source MAC addresses + 2022-07-20 + Add minimum-delay config item + 2021-12-10 + Add support for reporting packet-format + 2021-12-10 + Add burst config option"; + semver:module-version "1.2.0"; + } + revision 2021-03-29 { + description + "Add support for reporting frame delay statistics"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sat-pkt-fmt { + type enumeration { + enum "sat-prf-fmt-mef-48" { + description + "sat prf fmt mef 48"; + } + enum "sat-prf-fmt-lbm" { + description + "sat prf fmt lbm"; + } + } + description + "Sat pkt fmt"; + } + + typedef Sat-mode { + type enumeration { + enum "sat-mode-invalid" { + value 0; + description + "sat mode invalid"; + } + enum "sat-mode-one-way" { + value 248836892; + description + "sat mode one way"; + } + enum "sat-mode-two-way" { + value 248836893; + description + "sat mode two way"; + } + } + description + "Sat mode"; + } + + typedef Sat-direction { + type enumeration { + enum "sat-direct-ion-invalid" { + value 0; + description + "sat direct ion invalid"; + } + enum "sat-direct-ion-external" { + value 1578901335; + description + "sat direct ion external"; + } + enum "sat-direct-ion-internal" { + value 1578901336; + description + "sat direct ion internal"; + } + } + description + "Sat direction"; + } + + typedef Sat-ma-permit { + type enumeration { + enum "sat-ma-permit-none" { + value 0; + description + "sat ma permit none"; + } + enum "sat-ma-permit-internal" { + value 1; + description + "sat ma permit internal"; + } + enum "sat-ma-permit-external" { + value 2; + description + "sat ma permit external"; + } + enum "sat-ma-permit-all" { + value 3; + description + "sat ma permit all"; + } + enum "sat-ma-permit-count" { + value 4; + description + "sat ma permit count"; + } + } + description + "Sat ma permit"; + } + + typedef Sat-ir-units { + type enumeration { + enum "sat-ir-units-kbps" { + value 1197769489; + description + "sat ir units kbps"; + } + enum "sat-ir-units-mbps" { + value 1197769490; + description + "sat ir units mbps"; + } + enum "sat-ir-units-gbps" { + value 1197769491; + description + "sat ir units gbps"; + } + } + description + "Sat ir units"; + } + + typedef Sat-ma-state { + type enumeration { + enum "sat-ma-state-invalid" { + value 0; + description + "sat ma state invalid"; + } + enum "sat-ma-state-enabled" { + value 782787904; + description + "sat ma state enabled"; + } + enum "sat-ma-state-running" { + value 782787905; + description + "sat ma state running"; + } + enum "sat-ma-state-completed" { + value 782787906; + description + "sat ma state completed"; + } + enum "sat-ma-state-aborted" { + value 782787907; + description + "sat ma state aborted"; + } + } + description + "Sat ma state"; + } + + grouping SAT-FRAME-DELAY-PARAMS-TYPE { + description + "SAT FRAME DELAY PARAMS TYPE"; + leaf frame-delay-collection-enabled { + type int32; + description + "frame delay collection enabled"; + } + leaf bin-count { + type uint32; + description + "bin count"; + } + leaf bin-width { + type uint32; + description + "bin width"; + } + leaf percentile { + type uint32; + description + "percentile"; + } + leaf minimum-delay { + type uint32; + description + "minimum delay"; + } + } + + grouping SAT-PACKET-CONTENTS-TYPE { + description + "SAT PACKET CONTENTS TYPE"; + leaf emix { + type int32; + description + "emix"; + } + leaf sequence { + type string { + length "0..33"; + } + description + "sequence"; + } + leaf u-value { + type uint32; + description + "u value"; + } + leaf size { + type uint32; + description + "size"; + } + leaf pseudo-random { + type int32; + description + "pseudo random"; + } + leaf hex-pattern { + type uint8; + description + "hex pattern"; + } + } + + grouping SAT-COS-TYPE { + description + "SAT COS TYPE"; + leaf is-set { + type int32; + description + "is set"; + } + leaf value { + type uint8; + description + "value"; + } + } + + grouping SAT-COLOR-AWARE-TYPE { + description + "SAT COLOR AWARE TYPE"; + container eir-cos { + description + "eir cos"; + uses SAT-COS-TYPE; + } + leaf is-color-aware { + type int32; + description + "is color aware"; + } + leaf cir-units { + type Sat-ir-units; + description + "cir units"; + } + leaf cir-value { + type uint32; + description + "cir value"; + } + leaf eir-dei { + type int32; + description + "eir dei"; + } + } + + grouping SAT-IR-RANGE-TYPE { + description + "SAT IR RANGE TYPE"; + leaf units { + type Sat-ir-units; + description + "units"; + } + leaf min-value { + type uint32; + description + "min value"; + } + leaf max-value { + type uint32; + description + "max value"; + } + leaf step-size { + type uint32; + description + "step size"; + } + leaf cbs { + type uint32; + description + "cbs"; + } + } + + grouping SAT-DURATION-TYPE { + description + "SAT DURATION TYPE"; + leaf is-per-step { + type int32; + description + "is per step"; + } + leaf seconds { + type uint32; + description + "seconds"; + } + } + + grouping ETHER-MACADDR-TYPE { + description + "ETHER MACADDR TYPE"; + leaf macaddr { + type yang:hex-string; + description + "macaddr"; + } + } + + grouping SAT-MA-PROFILE-BAG-TYPE { + description + "SAT MA PROFILE BAG TYPE"; + container destination { + description + "destination"; + uses ETHER-MACADDR-TYPE; + } + container source { + description + "source"; + uses ETHER-MACADDR-TYPE; + } + container duration { + description + "duration"; + uses SAT-DURATION-TYPE; + } + container ir-range { + description + "ir range"; + uses SAT-IR-RANGE-TYPE; + } + container color-aware { + description + "color aware"; + uses SAT-COLOR-AWARE-TYPE; + } + container packet-contents { + description + "packet contents"; + uses SAT-PACKET-CONTENTS-TYPE; + } + container outer-cos { + description + "outer cos"; + uses SAT-COS-TYPE; + } + container inner-cos { + description + "inner cos"; + uses SAT-COS-TYPE; + } + container frame-delay { + description + "frame delay"; + uses SAT-FRAME-DELAY-PARAMS-TYPE; + } + leaf name { + type string; + description + "name"; + } + leaf desc { + type string; + description + "desc"; + } + leaf direction { + type Sat-direction; + description + "direction"; + } + leaf mode { + type Sat-mode; + description + "mode"; + } + leaf packet-format { + type Sat-pkt-fmt; + description + "packet format"; + } + leaf combined-delay-loss { + type int32; + description + "combined delay loss"; + } + } + + grouping SAT-MA-OPER-FDR-BIN-TYPE { + description + "SAT MA OPER FDR BIN TYPE"; + leaf bin-min-fd { + type uint32; + description + "bin min fd"; + } + leaf bin-max-fd { + type uint32; + description + "bin max fd"; + } + leaf count { + type uint64; + description + "count"; + } + } + + grouping SAT-MA-OPER-FDR-RESULTS-TYPE { + description + "SAT MA OPER FDR RESULTS TYPE"; + leaf fdr { + type uint32; + description + "fdr"; + } + leaf percentile { + type uint32; + description + "percentile"; + } + leaf minimum-delay { + type uint32; + description + "minimum delay"; + } + list bins { + description + "bins"; + uses SAT-MA-OPER-FDR-BIN-TYPE; + } + } + + grouping SAT-XIR-RESULTS-TYPE { + description + "SAT XIR RESULTS TYPE"; + container fdr { + description + "fdr"; + uses SAT-MA-OPER-FDR-RESULTS-TYPE; + } + leaf tx-packets { + type uint64; + description + "tx packets"; + } + leaf rx-packets { + type uint64; + description + "rx packets"; + } + leaf tx-bytes { + type uint64; + description + "tx bytes"; + } + leaf rx-bytes { + type uint64; + description + "rx bytes"; + } + leaf frames-lost { + type uint64; + description + "frames lost"; + } + leaf fd-min { + type uint64; + description + "fd min"; + } + leaf fd-max { + type uint64; + description + "fd max"; + } + leaf fd-mean { + type uint64; + description + "fd mean"; + } + leaf fdv-min { + type uint64; + description + "fdv min"; + } + leaf fdv-max { + type uint64; + description + "fdv max"; + } + leaf fdv-avg { + type uint64; + description + "fdv avg"; + } + leaf fdv-not-supported { + type int32; + description + "fdv not supported"; + } + leaf out-of-order-pkt-cnt { + type uint64; + description + "out of order pkt cnt"; + } + leaf err-pkt-cnt { + type uint64; + description + "err pkt cnt"; + } + } + + grouping SAT-MA-OPER-RESULTS-TYPE { + description + "SAT MA OPER RESULTS TYPE"; + container cir { + description + "cir"; + uses SAT-XIR-RESULTS-TYPE; + } + container eir { + description + "eir"; + uses SAT-XIR-RESULTS-TYPE; + } + } + + grouping SAT-MA-OPER-PHASE-TYPE { + description + "SAT MA OPER PHASE TYPE"; + container results { + description + "Results for this phase"; + uses SAT-MA-OPER-RESULTS-TYPE; + } + leaf ir-units { + type Sat-ir-units; + description + "Information rate units"; + } + leaf ir-value { + type uint32; + description + "Information rate value"; + } + } + + grouping SAT-MA-OPER-TEST-STATUS { + description + "Sat MA Test Status"; + container profile { + description + "Test profile"; + uses SAT-MA-PROFILE-BAG-TYPE; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf state { + type Sat-ma-state; + description + "Test state"; + } + leaf permissions { + type Sat-ma-permit; + description + "Permissions"; + } + leaf abort-reason { + type string; + description + "Abort reason for aborted SAT"; + } + leaf seconds-remaining { + type uint32; + units "second"; + description + "Seconds remaining on a running SAT"; + } + leaf current-phase-number { + type uint32; + description + "During a SAT, the current phase number (starting + from 1)"; + } + leaf has-results-mid-phase { + type int32; + description + "Shows if the platform provide results during a + SAT phase"; + } + list phase { + description + "Test phases"; + uses SAT-MA-OPER-PHASE-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper.yang new file mode 100644 index 000000000..9c46ca74e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-sat-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-ethernet-sat-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-sat-oper"; + prefix ethernet-sat-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ethernet-sat-oper-sub1 { + revision-date 2022-10-24; + } + + 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 ethernet-sat package operational data. + + This module contains definitions + for the following management objects: + service-activation-test: SAT operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-24 { + description + "Add support for starting a SAT with optional source MAC addresses + 2022-07-20 + Add minimum-delay config item + 2021-12-10 + Add support for reporting packet-format + 2021-12-10 + Add burst config option"; + semver:module-version "1.2.0"; + } + revision 2021-03-29 { + description + "Add support for reporting frame delay statistics"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container service-activation-test { + config false; + description + "SAT operational data"; + container test-statuses { + description + "Table for interfaces with SAT permissions"; + list test-status { + key "interface-name"; + description + "SAT status on the interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses SAT-MA-OPER-TEST-STATUS; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper-sub1.yang new file mode 100644 index 000000000..653178d16 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper-sub1.yang @@ -0,0 +1,527 @@ +submodule Cisco-IOS-XR-ethernet-udld-oper-sub1 { + belongs-to Cisco-IOS-XR-ethernet-udld-oper { + prefix Cisco-IOS-XR-ethernet-udld-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ethernet-udld package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Udld-bag-item-string { + type string; + description + "Udld bag item string"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Udld-detect-state { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "unidirectional" { + description + "Unidirectional"; + } + enum "bidirectional" { + description + "Bidirectional"; + } + enum "loopback" { + description + "Loopback"; + } + enum "neighbor-mismatch" { + description + "Neighbor mismatch"; + } + enum "empty-echo" { + description + "Empty echo"; + } + enum "invalid" { + description + "Invalid"; + } + } + description + "Detection FSM state of a port"; + } + + typedef Udld-main-state { + type enumeration { + enum "init" { + value 0; + description + "Initializing"; + } + enum "up" { + value 1; + description + "Link Up"; + } + enum "detection" { + value 2; + description + "Detection"; + } + enum "advertise" { + value 3; + description + "Advertise"; + } + enum "udld-inactive" { + value 4; + description + "UDLD inactive"; + } + enum "port-shutdown" { + value 5; + description + "Port shutdown"; + } + enum "invalid" { + value 6; + description + "Invalid"; + } + } + description + "Main FSM state of a port"; + } + + typedef Udld-port-brief-state-enum { + type enumeration { + enum "admin-down" { + description + "Port is admin down"; + } + enum "error-disabled" { + description + "Port is error-disabled"; + } + enum "down" { + description + "Port is down"; + } + enum "initializing" { + description + "Port is initializing"; + } + enum "detecting" { + description + "Port is detecting"; + } + enum "loopback" { + description + "Port is a loopback"; + } + enum "unidirectional" { + description + "Port is unidirectional"; + } + enum "neighbor-mismatch" { + description + "Port has mismatched neighbors"; + } + enum "no-neighbors" { + description + "Port doesn't have any neighbors"; + } + enum "bidirectional" { + description + "Port is bidirectional"; + } + enum "unkown" { + description + "Port state unknown"; + } + } + description + "Brief description of port state"; + } + + typedef Udld-errdis-reason { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "none" { + description + "None: Port is not error disabled"; + } + enum "not-udld" { + description + "Reason unrelated to UDLD"; + } + enum "aggressive-timeout" { + description + "Time out (UDLD in aggressive mode)"; + } + enum "unidirectional" { + description + "Unidirectional port"; + } + enum "neighbor-mismatch" { + description + "Neighbor mismatch"; + } + enum "loopback" { + description + "Tx/Rx loopback detected"; + } + enum "across-issu" { + description + "Across ISSU"; + } + } + description + "Reason for port being error disabled"; + } + + typedef Udld-port-state-enum { + type enumeration { + enum "up" { + description + "Port is up"; + } + enum "down" { + description + "Port is down"; + } + enum "error-disabled" { + description + "Port is error-disabled"; + } + enum "admin-down" { + description + "Port is admin down"; + } + } + description + "State of a port"; + } + + grouping UDLD-PKT-COUNTS-TYPE { + description + "Packet counters"; + leaf probe { + type uint32; + description + "Probe"; + } + leaf echo { + type uint32; + description + "Echo"; + } + leaf flush { + type uint32; + description + "Flush"; + } + leaf dropped { + type uint32; + description + "Dropped"; + } + } + + grouping UDLD-DETECTION-FSM-STATS-TYPE { + description + "Number of detection FSM transitions (to each + state)"; + leaf unknown { + type uint32; + description + "Unknown"; + } + leaf bidirectional { + type uint32; + description + "Bidirectional"; + } + leaf unidirectional { + type uint32; + description + "Unidirectional"; + } + leaf neighbor-mismatch { + type uint32; + description + "Neighbor mismatch"; + } + leaf loopback { + type uint32; + description + "Loopback"; + } + } + + grouping UDLD-MAIN-FSM-STATS-TYPE { + description + "Number of main FSM transitions (to each state)"; + leaf link-up { + type uint32; + description + "Link up"; + } + leaf detection { + type uint32; + description + "Detection"; + } + leaf advertise { + type uint32; + description + "Advertise"; + } + leaf port-shutdown { + type uint32; + description + "Port shutdown"; + } + leaf udld-inactive { + type uint32; + description + "UDLD inactive"; + } + } + + grouping UDLD-BAG-STATS-PORT-DATA { + description + "Counters for UDLD per port events"; + container main-fsm-transitions { + description + "Main FSM transitions"; + uses UDLD-MAIN-FSM-STATS-TYPE; + } + container detection-fsm-transitions { + description + "Detection FSM transitions"; + uses UDLD-DETECTION-FSM-STATS-TYPE; + } + container receive-packets { + description + "Receive packet counters"; + uses UDLD-PKT-COUNTS-TYPE; + } + container transmit-packets { + description + "Transmit packet counters"; + uses UDLD-PKT-COUNTS-TYPE; + } + leaf last-cleared { + type uint64; + units "nanosecond"; + description + "Time in nanoseconds since counters were last + cleared"; + } + } + + grouping UDLD-ECHO-DATA-TYPE { + description + "UDLD Echo data"; + leaf device-id { + type string; + description + "Device ID"; + } + leaf port { + type string; + description + "Port"; + } + } + + grouping UDLD-DEVICE-TYPE { + description + "Information identifying a UDLD device"; + leaf id { + type string; + description + "ID"; + } + leaf name { + type string; + description + "Name"; + } + } + + grouping UDLD-NBOR-DATA-TYPE { + description + "Information for a UDLD port's neighbor"; + container device { + description + "Device"; + uses UDLD-DEVICE-TYPE; + } + container udld-parameters { + description + "UDLD parameters"; + uses UDLD-PARAM-TYPE; + } + leaf port { + type string; + description + "Port"; + } + list echo-data { + description + "Echo Data"; + uses UDLD-ECHO-DATA-TYPE; + } + } + + grouping UDLD-PARAM-TYPE { + description + "UDLD parameters"; + leaf message-interval { + type uint8; + units "second"; + description + "Message interval (seconds)"; + } + leaf timeout-interval { + type uint8; + units "second"; + description + "Timeout interval (seconds)"; + } + } + + grouping UDLD-PORT-STATE-DATA-TYPE { + description + "Information about the UDLD state of a port"; + leaf state { + type Udld-port-state-enum; + description + "State of the port"; + } + leaf error-disable-reason { + type Udld-errdis-reason; + description + "Reason why port is error disabled"; + } + } + + grouping UDLD-BAG-PORT-DATA { + description + "Information for a UDLD port"; + container state { + description + "State"; + uses UDLD-PORT-STATE-DATA-TYPE; + } + container udld-parameters { + description + "UDLD port parameters"; + uses UDLD-PARAM-TYPE; + } + leaf port-id { + type string; + description + "Port ID"; + } + leaf brief-state { + type Udld-port-brief-state-enum; + description + "Brief description of port's state"; + } + leaf main-fsm-state { + type Udld-main-state; + description + "Main FSM state"; + } + leaf detect-fsm-state { + type Udld-detect-state; + description + "Detect FSM state"; + } + leaf destination-mac-address { + type Mac-address; + description + "Destination MAC address in use"; + } + leaf device-id { + type Udld-bag-item-string; + description + "Device ID override"; + } + list neighbor-data { + description + "Information about a port's neighbors"; + uses UDLD-NBOR-DATA-TYPE; + } + } + + grouping UDLD-BAG-STATS-NODE-DATA { + description + "Counters for UDLD per node events"; + leaf last-cleared { + type uint64; + units "nanosecond"; + description + "Time in nanoseconds since counters were last + cleared"; + } + leaf non-udld-port-packets { + type uint32; + description + "Number of packets received on a non UDLD + configured port"; + } + leaf last-non-udld-port { + type string; + description + "Last port (non UDLD configured) for which a + packet was received"; + } + leaf unknown-receive-port-packets { + type uint32; + description + "Number of packets received for an unknown port"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper.yang new file mode 100644 index 000000000..5642393ef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ethernet-udld-oper.yang @@ -0,0 +1,98 @@ +module Cisco-IOS-XR-ethernet-udld-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ethernet-udld-oper"; + prefix ethernet-udld-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ethernet-udld-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ethernet-udld package operational data. + + This module contains definitions + for the following management objects: + udld: UDLD operational information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container udld { + config false; + description + "UDLD operational information"; + container statistics-nodes { + description + "Per node operational statistics"; + list statistics-node { + key "node"; + description + "UDLD statistics for the node"; + leaf node { + type xr:Node-id; + description + "Node"; + } + uses UDLD-BAG-STATS-NODE-DATA; + } + } + container data-interfaces { + description + "Per interface UDLD operational data"; + list data-interface { + key "udld-interface"; + description + "UDLD data for the interface"; + leaf udld-interface { + type xr:Interface-name; + description + "UDLD interface"; + } + uses UDLD-BAG-PORT-DATA; + } + } + container statistics-interfaces { + description + "Per UDLD interface operational statistics"; + list statistics-interface { + key "udld-interface"; + description + "UDLD statistics for the interface"; + leaf udld-interface { + type xr:Interface-name; + description + "UDLD interface"; + } + uses UDLD-BAG-STATS-PORT-DATA; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper-sub1.yang new file mode 100644 index 000000000..592147151 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper-sub1.yang @@ -0,0 +1,402 @@ +submodule Cisco-IOS-XR-event-manager-policy-map-oper-sub1 { + belongs-to Cisco-IOS-XR-event-manager-policy-map-oper { + prefix Cisco-IOS-XR-event-manager-policy-map-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR event-manager-policy-map package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-16 { + description + "Added new options under policy-map and removed event reset time."; + semver:module-version "1.0.0"; + } + revision 2022-01-11 { + description + "IOS XR 7.7.1 revision."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping EEM-EVENT-MAPPING-INFO { + description + "Policy-Event map detail info"; + leaf event-name { + type string; + description + "Event Name"; + } + leaf event-status { + type string { + length "0..15"; + } + description + "Event Status"; + } + leaf corr-status { + type boolean; + description + "Event Correlation Status"; + } + } + + grouping EEM-POLICY-DETAIL-BAG { + description + "Policy detail info"; + leaf policy-name-xr { + type string; + description + "Policy Name"; + } + leaf policy-status { + type string; + description + "Policy Status"; + } + leaf policy-occurrence { + type string; + description + "Policy Occurs"; + } + leaf policy-period { + type string; + description + "Policy Period"; + } + leaf policy-triggered-count { + type uint32; + description + "Trigger Count"; + } + leaf event-count { + type uint32; + description + "Event Count"; + } + leaf action-count { + type uint32; + description + "Action Count"; + } + leaf multi-event-policy { + type boolean; + description + "Multi-event Policy"; + } + leaf multi-event-string { + type string; + description + "Multi Event String"; + } + leaf event-occurrence-count { + type uint32; + description + "Correlation occurrence count"; + } + leaf event-occurrence-reset-time { + type uint32; + description + "Policy Event Occurence Reset Time"; + } + list policy-event-map { + description + "Policy-Event Mapping"; + uses EEM-EVENT-MAPPING-INFO; + } + list policy-action-map { + description + "Policy-Action Mapping"; + uses EEM-ACTION-MAPPING-INFO; + } + } + + grouping EEM-EVENT-TELEMETRY-DETAIL-BAG { + description + "Event Telemetry detail info"; + leaf sensor-path { + type string; + description + "Sensor Path"; + } + leaf sample-interval { + type uint64; + description + "Sample Interval"; + } + } + + grouping EEM-EVENT-TRACK-DETAIL-BAG { + description + "Event Timer detail info"; + leaf track-name { + type string; + description + "Track Name"; + } + leaf track-state { + type string; + description + "Track State"; + } + } + + grouping EEM-EVENT-TIMER-WD-DETAIL-BAG { + description + "Event Timer watchdog detail info"; + leaf timer-value { + type uint64; + description + "Timer Value"; + } + } + + grouping EEM-EVENT-TIMER-CRON-DETAIL-BAG { + description + "Event Timer cron detail info"; + leaf cron-entry { + type string; + description + "Cron Entry"; + } + } + + grouping EEM-EVENT-TIMER-DETAIL-BAG { + description + "Event Timer detail info"; + container cron-info { + description + "cron info"; + uses EEM-EVENT-TIMER-CRON-DETAIL-BAG; + } + container wd-info { + description + "wd info"; + uses EEM-EVENT-TIMER-WD-DETAIL-BAG; + } + leaf timer-type { + type string; + description + "Timer Type"; + } + } + + grouping EEM-EVENT-SYSLOG-DETAIL-BAG { + description + "Event Syslog detail info"; + leaf pattern { + type string; + description + "Event Syslog Pattern"; + } + leaf severity { + type string; + description + "Event Severity info"; + } + } + + grouping EEM-EVENT-DETAIL-BAG { + description + "Event policy detail info"; + container event-syslog-info { + description + "Event Syslog Info"; + uses EEM-EVENT-SYSLOG-DETAIL-BAG; + } + container event-timer-info { + description + "Event Timer Info"; + uses EEM-EVENT-TIMER-DETAIL-BAG; + } + container event-track-info { + description + "Event Track Info"; + uses EEM-EVENT-TRACK-DETAIL-BAG; + } + container event-telemetry-info { + description + "Event Telemetry Info"; + uses EEM-EVENT-TELEMETRY-DETAIL-BAG; + } + leaf event-name-xr { + type string; + description + "Event Name"; + } + leaf event-status { + type string; + description + "Event Status"; + } + leaf event-type { + type string; + description + "Event type"; + } + leaf eventesid { + type uint32; + description + "Event Spec ID"; + } + leaf event-occurrence { + type string; + description + "Event Occurrence"; + } + leaf event-period { + type string; + description + "Event Period"; + } + leaf rate-limit { + type uint32; + description + "Rate limit"; + } + leaf event-triggered-count { + type uint32; + description + "Event Trigger Count"; + } + leaf event-policy-reg-count { + type uint32; + description + "Event Policy Registration Count"; + } + list event-policy-map { + description + "Event Policy Mapping"; + uses EEM-POLICY-MAPPING-INFO; + } + } + + grouping EEM-POLICY-MAPPING-INFO { + description + "Event policy mapping info"; + leaf policy-name { + type string; + description + "Policy Name"; + } + } + + grouping EEM-ACTION-DETAIL-BAG { + description + "Action policy detail info"; + leaf action-name-xr { + type string; + description + "Action Name"; + } + leaf script-name { + type string; + description + "Script Name"; + } + leaf action-type { + type string; + description + "Action Type"; + } + leaf triggered-count { + type uint32; + description + "Triggered Count"; + } + leaf policy-count { + type uint32; + description + "Policy Count"; + } + leaf max-run { + type uint32; + description + "Max Run"; + } + leaf checksum-enabled { + type string { + length "0..15"; + } + description + "Checksum enabled"; + } + leaf last-run-status { + type string; + description + "Script last run status"; + } + leaf user-name { + type string; + description + "User Name"; + } + leaf checksum-string { + type string; + description + "Checksum String"; + } + list action-policy-map { + description + "Action Policy Mapping"; + uses EEM-POLICY-MAPPING-INFO; + } + } + + grouping EEM-ACTION-MAPPING-INFO { + description + "Policy-Action map detail info"; + leaf action-name { + type string; + description + "Action Name"; + } + leaf checksum-enabled { + type string { + length "0..15"; + } + description + "Checksum Enabled"; + } + } + + grouping EEM-SCRIPT-BAG { + description + "Script action mapping"; + leaf script-name-xr { + type string; + description + "Script Name"; + } + list policy-action-map { + description + "Script-Action Mapping"; + uses EEM-ACTION-MAPPING-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper.yang new file mode 100644 index 000000000..19333aeed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-event-manager-policy-map-oper.yang @@ -0,0 +1,139 @@ +module Cisco-IOS-XR-event-manager-policy-map-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-event-manager-policy-map-oper"; + prefix event-manager-policy-map-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ha-eem-policy-oper { + prefix a1; + } + include Cisco-IOS-XR-event-manager-policy-map-oper-sub1 { + revision-date 2022-06-16; + } + + 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 event-manager-policy-map package operational data. + + This YANG module augments the + Cisco-IOS-XR-ha-eem-policy-oper + module with state data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-16 { + description + "Added new options under policy-map and removed event reset time."; + semver:module-version "1.0.0"; + } + revision 2022-01-11 { + description + "IOS XR 7.7.1 revision."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:eem" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-ha-eem-policy-oper'"; + container script-action-names { + description + "Event Manager script-action mapping parameters"; + list script-action-name { + key "script-name"; + description + "Name of the script-action mapping"; + leaf script-name { + type xr:Cisco-ios-xr-string; + description + "Name of script"; + } + uses EEM-SCRIPT-BAG; + } + } + } + augment "/a1:eem" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-ha-eem-policy-oper'"; + container action-names { + description + "Event Manager Action parameters"; + list action-name { + key "action-name"; + description + "Name of the action"; + leaf action-name { + type xr:Cisco-ios-xr-string; + description + "Name of Action"; + } + uses EEM-ACTION-DETAIL-BAG; + } + } + } + augment "/a1:eem" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-ha-eem-policy-oper'"; + container event-trigger-names { + description + "EEM Event-trigger parameters"; + list event-trigger-name { + key "event-name"; + description + "Name of the event trigger"; + leaf event-name { + type xr:Cisco-ios-xr-string; + description + "Name of event-trigger"; + } + uses EEM-EVENT-DETAIL-BAG; + } + } + } + augment "/a1:eem" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-ha-eem-policy-oper'"; + container policy-map-names { + description + "Event Manager policy-map parameters"; + list policy-map-name { + key "policy-name"; + description + "Name of the policy-map"; + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of Policy-Map"; + } + uses EEM-POLICY-DETAIL-BAG; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper-sub1.yang new file mode 100644 index 000000000..50557294f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper-sub1.yang @@ -0,0 +1,3317 @@ +submodule Cisco-IOS-XR-evpn-oper-sub1 { + belongs-to Cisco-IOS-XR-evpn-oper { + prefix Cisco-IOS-XR-evpn-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR evpn package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-28 { + description + "- Add ip-tunnel-path-buffer to internal-label + 2022-10-21 + Added hot-standby ES access signal mode. + 2022-08-29 + - Modifying key field of L2VPN-LABEL-PATH-BUFFER to support subelements fetch. + 2022-07-25 + - Added Label Type and IP to internal-label and internal-id schema. + 2022-06-27 + - Change keys to evpn-label-key and evpn-type in internal-label and internal-id + 2022-06-25 + - Add CAC info to policy info display + 2022-05-11 + - Changed ESI type from uint array to string + 2022-02-08 + - Removed vES pending up refcount + 2022-01-24 + - Added keys for multiple lists under evi-detail, added interface-name as a key in core-interface. + 2021-12-03 + - Added SRv6 locator flags + 2021-12-03 + - Added SRV6 SIDs to EVPN MACs. + 2021-12-01 + - Added originating-PE output on EAD, I-L. + 2021-09-27 + - Added keys for ethernet-segments/ethernet-segment list. + 2021-09-17 + - Added SRv6 ELAN list support in l2vpn_evpn_es bag. + 2021-09-14 + Display PLE-CEM attributes in xconnect info"; + semver:module-version "6.0.0"; + } + revision 2021-08-13 { + description + "Added multicast SID information for SRv6 ELAN + 2021-07-07 + Updated main port gES-MAC field in bag for clarity + 2021-05-06 + Added union-path-buffer to l2vpn evpn label. + 2021-04-30 + Added vES nexthop list to EVPN Ethernet Segment + 2021-03-16 + Added support to retrieve multiple EVPN clients under ClientTable"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang + 2020-04-02 + EVPN DF Election Synchronization with NTP related changes"; + semver:module-version "4.0.0"; + } + revision 2019-12-20 { + description + "EVPN SRv6 related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-09-26 { + description + "Duplicate detection parameters config moved from l2vpn to l2rib."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2vpn-evpn-es-access-signal-mode { + type enumeration { + enum "unsupported" { + description + "Unsupported interface type"; + } + enum "oos" { + description + "Out of Sync"; + } + enum "down" { + description + "Down"; + } + enum "hot-standby" { + description + "Hot Standby"; + } + } + description + "L2vpn evpn es access signal mode"; + } + + typedef L2vpn-evpn-sc-mcast-mode { + type enumeration { + enum "disabled" { + description + "multicast service carving is disabled"; + } + enum "hrw-s-g" { + description + "Multicast HRW S,G"; + } + enum "hrw-g" { + description + "Multicast HRW *,G"; + } + } + description + "EVPN Ethernet-Segment service multicast carving + mode"; + } + + typedef L2vpn-evpn-sc-synchronization-mode { + type enumeration { + enum "none" { + description + "No service carving synchronization"; + } + enum "ntp" { + description + "NTP SCT based service carving synchronization"; + } + enum "handshake" { + description + "Handshake messaging based service carving + synchronization"; + } + enum "invalid" { + description + "Invalid or unknown service carving + synchronization mode"; + } + } + description + "EVPN Ethernet-Segment service carving + synchronization mode"; + } + + typedef L2vpn-evpn-sc-mode { + type enumeration { + enum "invalid" { + description + "Invalid service carving mode"; + } + enum "auto" { + description + "Auto service carving mode"; + } + enum "manual" { + description + "Manual service carving"; + } + enum "manual-list" { + description + "Manual List service carving"; + } + enum "hrw" { + description + "HRW service carving"; + } + enum "pref" { + description + "Preferential service carving"; + } + } + description + "EVPN Ethernet-Segment service carving mode"; + } + + typedef L2vpn-evpn-smac-src { + type enumeration { + enum "invalid" { + description + "Incomplete Configuration"; + } + enum "not-applicable" { + description + "Source MAC Not Applicable (EVPN)"; + } + enum "local" { + description + "Local"; + } + enum "pbb-bsa" { + description + "PBB BSA"; + } + enum "esi" { + description + "From ESI"; + } + enum "esi-invalid" { + description + "From ESI, Error"; + } + enum "pbb-bsa-overrride" { + description + "PBB BSA, no ESI"; + } + } + description + "L2vpn evpn smac src"; + } + + typedef L2vpn-evpn-lb-mode { + type enumeration { + enum "invalid-load-balancing" { + description + "Invalid load balancing"; + } + enum "single-homed" { + description + "Single-homed site or network"; + } + enum "multi-homed-aa-per-flow" { + description + "Multi-homed access network active/active per + flow"; + } + enum "multi-homed-aa-per-service" { + description + "Multi-homed access network active/active per + service"; + } + enum "multi-homed-single-flow-active" { + description + "Multi-homed access network single-flow-active"; + } + enum "multi-homed-port-active" { + description + "Multi-homed access network port-active"; + } + } + description + "L2VPN EVPN load balancing mode"; + } + + typedef L2vpn-evpn-mf-mode { + type enumeration { + enum "invalid" { + description + "Invalid MAC Flushing mode"; + } + enum "tcn-stp" { + description + "TCN STP MAC Flushing mode"; + } + enum "mvrp" { + description + "MVRP MAC Flushing mode"; + } + } + description + "L2VPN EVPN MAC flushing mode"; + } + + typedef Evpn-es-warning { + type enumeration { + enum "ves-conflict" { + description + "VES conflict on ES detected"; + } + enum "none" { + description + "None"; + } + } + description + "Evpn es warning"; + } + + typedef L2vpn-evpn-rt-origin { + type enumeration { + enum "invalid" { + description + "Incomplete Configuration"; + } + enum "extracted" { + description + "From ESI"; + } + enum "configured" { + description + "Locally configured"; + } + } + description + "L2vpn evpn rt origin"; + } + + typedef L2vpn-rg-role { + type enumeration { + enum "l2vpn-rg-role-not-defined" { + description + "l2vpn rg role not defined"; + } + enum "l2vpn-rg-role-active" { + description + "l2vpn rg role active"; + } + enum "l2vpn-rg-role-standby" { + description + "l2vpn rg role standby"; + } + enum "l2vpn-rg-role-max" { + description + "l2vpn rg role max"; + } + } + description + "L2vpn rg role"; + } + + typedef L2vpn-evpn-es-state { + type enumeration { + enum "not-ready" { + description + "Not Ready"; + } + enum "peering" { + description + "Peering"; + } + enum "up" { + description + "Up"; + } + enum "down" { + description + "Down"; + } + enum "standby" { + description + "Standby"; + } + } + description + "L2vpn evpn es state"; + } + + typedef L2vpn-evpn-esi { + type enumeration { + enum "esi-type0" { + value 0; + description + "ESI type zero"; + } + enum "esi-type1" { + value 1; + description + "ESI type one"; + } + enum "esi-type2" { + value 2; + description + "ESI type two"; + } + enum "esi-type3" { + value 3; + description + "ESI type three"; + } + enum "esi-type4" { + value 4; + description + "ESI type four"; + } + enum "esi-type5" { + value 5; + description + "ESI type five"; + } + enum "esi-type-invalid" { + value 255; + description + "ESI type invalid"; + } + } + description + "EVPN ESI types"; + } + + typedef Evpn-bag-label-unresolved-reason { + type enumeration { + enum "none" { + description + "No reasons"; + } + enum "no-evi-paths" { + description + "No valid per-EVI EAD paths"; + } + enum "no-es-ead" { + description + "No per-ES EAD"; + } + enum "local-not-ready" { + description + "Local service not ready, or multiple matching + remote EADs"; + } + enum "no-mac-paths" { + description + "No valid MAC paths"; + } + } + description + "EVPN label entry unresolved reasons"; + } + + typedef Evpn-bag-label-key { + type enumeration { + enum "evpn-esi" { + description + "EVPN ESI"; + } + enum "evpn-ip-nh" { + description + "EVPN IP Nexthop"; + } + enum "ip-tunnel" { + description + "IPTunnel"; + } + } + description + "EVPN Label Type"; + } + + typedef L2vpn-ad-rt-role { + type enumeration { + enum "both" { + value 0; + description + "Both"; + } + enum "import" { + value 1; + description + "Import"; + } + enum "export" { + value 2; + description + "Export"; + } + } + description + "L2vpn ad rt role"; + } + + typedef Evpn-bag-path-issues { + type enumeration { + enum "unknown" { + description + "Unknown Issue"; + } + enum "invalid-transport-id" { + description + "Invalid Transport ID"; + } + enum "sid-format-mismatch" { + description + "SIDs Do Not Match Local Format"; + } + enum "control-word-mismatch" { + description + "Control Word Mismatch"; + } + enum "mtu-mismatch" { + description + "MTU Mismatch"; + } + enum "nhafi-not-supported" { + description + "NH AFI Not Supported"; + } + } + description + "Evpn bag path issues"; + } + + typedef Evpn-bag-l2-attr-cw { + type enumeration { + enum "unspecified" { + description + "Control Word Not Specified"; + } + enum "disabled" { + description + "Control Word Disabled"; + } + enum "enabled" { + description + "Control Word Enabled"; + } + } + description + "Evpn bag l2 attr cw"; + } + + typedef Evpn-bag-df-role { + type enumeration { + enum "invalid" { + description + "Designated Forwarder Role Not Specified"; + } + enum "primary" { + description + "Designated Forwarder Role Primary"; + } + enum "backup" { + description + "Designated Forwarder Role Backup"; + } + enum "not-designated-forwarder" { + description + "No Designated Forwarder Role"; + } + } + description + "Evpn bag df role"; + } + + typedef Evpn-pref-ecmp-nh-mode { + type enumeration { + enum "invalid" { + description + "Invalid"; + } + enum "pref-nh-lowest-ip" { + description + "Preferred ECMP Nexthop Lowest IP"; + } + enum "pref-nh-highest-ip" { + description + "Preferred ECMP Nexthop Highest IP"; + } + enum "pref-nh-modulo" { + description + "Preferred ECMP Nexthop Modulo"; + } + enum "ecmp-disable" { + description + "ECMP Disable"; + } + } + description + "Evpn pref ecmp nh mode"; + } + + typedef L2vpn-ad-rt { + type enumeration { + enum "l2vpn-ad-rt-none" { + value 0; + description + "Route target not set"; + } + enum "l2vpn-ad-rt-as" { + value 1; + description + "Route Target with 2 Byte AS number"; + } + enum "l2vpn-ad-rt-4byte-as" { + value 2; + description + "Route Target with 4 Byte AS number"; + } + enum "l2vpn-ad-rt-v4-addr" { + value 3; + description + "Route Target with IPv4 Address"; + } + enum "es-import" { + value 1538; + description + "Ethernet Segment Route Target from BGP"; + } + } + description + "L2vpn ad rt"; + } + + typedef L2vpn-ad-rd { + type enumeration { + enum "l2vpn-ad-rd-none" { + value 0; + description + "Route Distinguisher not set"; + } + enum "l2vpn-ad-rd-auto" { + value 1; + description + "Route Distinguisher auto-generated"; + } + enum "l2vpn-ad-rd-as" { + value 2; + description + "Route Distinguisher with 2 Byte AS number"; + } + enum "l2vpn-ad-rd-4byte-as" { + value 3; + description + "Route Distinguisher with 4 Byte AS number"; + } + enum "l2vpn-ad-rd-v4-addr" { + value 4; + description + "Route Distinguisher with IPv4 Address"; + } + } + description + "L2vpn ad rd"; + } + + typedef L2vpn-evpn { + type enumeration { + enum "evpn-type-invalid" { + description + "Unspecify type for that EVI entry"; + } + enum "evpn-type-evpn" { + description + "EVPN service type"; + } + enum "evpn-type-pbb-evpn" { + description + "PBB EVPN service type"; + } + enum "evpn-type-evpn-vpws-vlan-unaware" { + description + "EVPN VPWS vlan-unaware service type"; + } + enum "evpn-type-evpn-vpws-vlan-aware" { + description + "EVPN VPWS vlan-aware service type"; + } + enum "evpn-type-max" { + description + "Max EVPN type"; + } + } + description + "L2vpn evpn"; + } + + typedef L2vpn-evpn-encap { + type enumeration { + enum "l2vpn-bag-evpn-encap-unknown" { + value 0; + description + "Unknown encapsulation"; + } + enum "l2vpn-bag-evpn-encap-vxlan" { + value 8; + description + "VxLAN Encapsulation"; + } + enum "l2vpn-bag-evpn-encap-mpls" { + value 10; + description + "MPLS Encapsulation"; + } + enum "l2vpn-bag-evpn-encap-es-global" { + value 253; + description + "ES Global"; + } + enum "l2vpn-bag-evpn-encap-route-sync" { + value 254; + description + "EVPN Route Sync"; + } + enum "l2vpn-bag-evpn-encap-srv6" { + value 255; + description + "SRv6 Encapsulation"; + } + } + description + "EVPN Encapsulation Type"; + } + + typedef Evpn-child { + type enumeration { + enum "l2-fwd" { + description + "L2 FWD"; + } + enum "l3-sub-if" { + description + "L3 SUBIF"; + } + } + description + "Evpn child"; + } + + typedef Evpn-igmp-grp { + type enumeration { + enum "include" { + description + "Include"; + } + enum "exclude" { + description + "Exclude"; + } + } + description + "Evpn igmp grp"; + } + + typedef Evpn-igmp-version { + type enumeration { + enum "v1" { + description + "Version 1"; + } + enum "v2" { + description + "Version 2"; + } + enum "v3" { + description + "Version 3"; + } + } + description + "Evpn igmp version"; + } + + typedef L2vpn-bag-in6-addr { + type inet:ipv6-address; + description + "L2vpn bag in6 addr"; + } + + typedef Evpn-igmp-source { + type enumeration { + enum "local" { + description + "Local"; + } + enum "remote" { + description + "Remote"; + } + } + description + "Evpn igmp source"; + } + + typedef Evpn-igmp-msg { + type enumeration { + enum "join" { + description + "Join"; + } + enum "leave" { + description + "Leave"; + } + enum "proxy-join" { + description + "Proxy Join"; + } + } + description + "Evpn igmp msg"; + } + + typedef Evpn-client1 { + type enumeration { + enum "igmpsn" { + description + "IGMPSN"; + } + enum "igmp" { + description + "IGMP"; + } + enum "mrib" { + description + "MRIB"; + } + enum "mld" { + description + "MLD"; + } + enum "mldsn" { + description + "MLDSN"; + } + enum "invalid" { + description + "Invalid"; + } + } + description + "Evpn client1"; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Evpn-grp { + type enumeration { + enum "deisolating" { + description + "Deisolating"; + } + enum "isolated" { + description + "Isolated"; + } + enum "ready" { + description + "Ready"; + } + enum "incomplete" { + description + "Incomplete"; + } + } + description + "EVPN Group State"; + } + + grouping L2VPN-ATOM-ACID { + description + "L2VPN ATOM ACID"; + leaf source-ac-id { + type uint32; + description + "Source AC ID"; + } + leaf target-ac-id { + type uint32; + description + "Target AC ID"; + } + leaf vpn-id { + type uint32; + description + "VPN ID"; + } + leaf taii-global-id { + type uint32; + description + "TAII Global ID"; + } + leaf taii-ac-id { + type uint32; + description + "TAII AC ID"; + } + leaf taii-prefix { + type inet:ipv6-address; + description + "TAII Prefix"; + } + } + + grouping L2VPN-EVPN-SERVICE-INFO { + description + "L2VPN EVPN Service Info"; + leaf vpn-id { + type uint32; + description + "VPN ID"; + } + } + + grouping L2VPN-EVPN-VPWS-SERVICE-INFO { + description + "L2VPN EVPN VPWS Service Info"; + leaf vpn-id { + type uint32; + description + "VPN ID"; + } + leaf type { + type L2vpn-evpn; + description + "Service Type"; + } + leaf ethernet-tag { + type uint32; + description + "Ethernet Tag"; + } + } + + grouping L2VPN-BAG-TIMESPEC { + description + "L2VPN Timespec Data Structure"; + leaf tv-sec { + type uint32; + description + "tv sec"; + } + leaf tv-nsec { + type uint32; + description + "tv nsec"; + } + } + + grouping L2VPN-STAT-ITEM { + description + "L2VPN EVPN Ethernet Segment (ES) private stats + item"; + container last-time { + description + "last time"; + uses L2VPN-BAG-TIMESPEC; + } + leaf count { + type uint32; + description + "count"; + } + leaf last-arg { + type uint32; + description + "last arg"; + } + } + + grouping L2VPN-EVPN-ES-NH-BUFFER { + description + "L2VPN EVPN Ethernet Segment (ES) nexthops + information"; + leaf next-hop { + type inet:ipv6-address; + description + "Next-hop IP address (v6 format)"; + } + leaf ges-mac { + type yang:mac-address; + description + "Grouping ES MAC Address"; + } + leaf df-dont-preempt { + type boolean; + description + "DF Dont Preemption"; + } + leaf df-type { + type uint8; + description + "DF Election Mode Configured"; + } + leaf df-pref { + type uint16; + description + "DF Election Preference Set"; + } + leaf df-ntp-enabled { + type boolean; + description + "NTP based DF Election Synchronization"; + } + leaf ntp-sct-microseconds { + type uint64; + units "microsecond"; + description + "NTP based SCT: represented in microseconds + relative to Unix epoch: 1st Jan 1970"; + } + } + + grouping L2VPN-EVPN-ES { + description + "EVPN Ethernet Segment (ES) database information"; + container msti-flush-count { + description + "Statistics for Host-mobility driven flush + operations"; + uses L2VPN-STAT-ITEM; + } + leaf ethernet-segment-identifier { + type string; + description + "Ethernet Segment id"; + } + leaf esi-type { + type L2vpn-evpn-esi; + description + "ESI Type"; + } + leaf esi-system-identifier { + type string; + description + "ESI System Identifier"; + } + leaf esi-port-key { + type uint32; + description + "ESI Port Key"; + } + leaf esi-system-priority { + type uint32; + description + "ESI System Priority"; + } + leaf ethernet-segment-name { + type string; + description + "Ethernet Segment Name"; + } + leaf ethernet-segment-state { + type L2vpn-evpn-es-state; + description + "State of the ethernet segment"; + } + leaf in-staggered-bringup { + type boolean; + description + "Is this ES in the staggered bring-up queue?"; + } + leaf if-handle { + type xr:Interface-name; + description + "Main port ifhandle"; + } + leaf main-port-role { + type L2vpn-rg-role; + description + "Main port redundancy group role"; + } + leaf main-port-mac { + type yang:mac-address; + description + "Main Port MAC Address"; + } + leaf num-up-p-ws { + type uint32; + description + "Number of PWs in Up state"; + } + leaf route-target { + type yang:mac-address; + description + "ES-Import Route Target"; + } + leaf rt-origin { + type L2vpn-evpn-rt-origin; + description + "Origin of operational ES-Import RT"; + } + leaf es-bgp-gates { + type string; + description + "ES BGP Gates"; + } + leaf es-l2fib-gates { + type string; + description + "ES L2FIB Gates"; + } + leaf mac-flushing-mode-config { + type L2vpn-evpn-mf-mode; + description + "Configured MAC Flushing mode"; + } + leaf load-balance-mode-config { + type L2vpn-evpn-lb-mode; + description + "Configured load balancing mode"; + } + leaf load-balance-mode-is-default { + type boolean; + description + "Load balancing mode is default"; + } + leaf load-balance-mode-oper { + type L2vpn-evpn-lb-mode; + description + "Operational load balancing mode"; + } + leaf force-single-home { + type boolean; + description + "Ethernet-Segment forced to single home"; + } + leaf convergence-mac-mobility { + type boolean; + description + "Fast convergence mode based on MAC-mobility."; + } + leaf convergence-reroute { + type boolean; + description + "Fast convergence mode based on reroute to backup + peer."; + } + leaf convergence-nh-tracking { + type boolean; + description + "Fast DF-Election based on tracking peer BGP + Nexthop reachability"; + } + leaf mp-ges-mac { + type yang:mac-address; + description + "Main-port Grouping-ES MAC"; + } + leaf source-mac-oper { + type yang:mac-address; + description + "Operational Source MAC address"; + } + leaf source-mac-origin { + type L2vpn-evpn-smac-src; + description + "Origin of operational source MAC address"; + } + leaf ves-sub-interface-count { + type uint32; + description + "Number of Sub interface VES' in this main port + grouping"; + } + leaf peering-timer { + type uint32; + units "second"; + description + "Configured timer for triggering DF election + (seconds)"; + } + leaf peering-timer-left { + type uint32; + units "millisecond"; + description + "Milliseconds left on DF election timer"; + } + leaf recovery-timer { + type uint32; + units "second"; + description + "Configured timer for (STP) recovery (seconds)"; + } + leaf recovery-timer-left { + type uint32; + units "millisecond"; + description + "Milliseconds left on (STP) recovery timer"; + } + leaf carving-timer { + type uint32; + units "second"; + description + "Configured timer for delaying DF election + (seconds)"; + } + leaf carving-timer-left { + type uint32; + units "millisecond"; + description + "Milliseconds left on carving timer"; + } + leaf hrw-reset-timer { + type uint32; + units "second"; + description + "Configured timer for HRW reset (seconds)"; + } + leaf hrw-reset-timer-left { + type uint32; + units "millisecond"; + description + "Milliseconds left on HRW reset timer"; + } + leaf service-carving-mode { + type L2vpn-evpn-sc-mode; + description + "Service carving mode"; + } + leaf service-carving-synchronization-mode { + type L2vpn-evpn-sc-synchronization-mode; + description + "Service carving synchronization mode"; + } + leaf service-carving-mcast-mode { + type L2vpn-evpn-sc-mcast-mode; + description + "Service carving multicast mode"; + } + leaf primary-services-input { + type string; + description + "Input string of Primary services ESI/I-SIDs"; + } + leaf secondary-services-input { + type string; + description + "Input string of Secondary services ESI/I-SIDs"; + } + leaf preferential-df-configured-weight { + type uint16; + description + "Configured Weight for Preferential DF Election"; + } + leaf preferential-df-operational-weight { + type uint16; + description + "Operational Weight for Preferential DF Election"; + } + leaf access-driven-df-election { + type boolean; + description + "Access Driven DF Election is active"; + } + leaf forwarder-ports { + type uint32; + description + "Count of Forwarders (AC, AC PW, VFI PW)"; + } + leaf permanent-forwarder-ports { + type uint32; + description + "Count of Forwarders with permanent service"; + } + leaf elected-forwarder-ports { + type uint32; + description + "Count of Forwarders with elected service"; + } + leaf not-elected-forwarder-ports { + type uint32; + description + "Count of Forwarders with not elected service"; + } + leaf not-config-forwarder-ports { + type uint32; + description + "Count of forwarders with missing config detected"; + } + leaf mp-protected { + type boolean; + description + "MP is protected and not under EVPN control"; + } + leaf nve-anycast-vtep { + type boolean; + description + "Anycast VTEP mode on NVE main-interface"; + } + leaf nve-ingress-replication { + type boolean; + description + "Ingress-Replication is configured on NVE + main-interface"; + } + leaf msti-flush-debounce { + type uint32; + description + "Value of scale-dependant debouncing"; + } + leaf tracked-bgp-nexthop { + type inet:ipv6-address; + description + "Reachability-tracked BGP Nexthop"; + } + leaf local-split-horizon-group-label-valid { + type boolean; + description + "Local split horizon group label is valid"; + } + leaf local-split-horizon-group-label { + type uint32; + description + "Local split horizon group label"; + } + leaf access-signal-mode { + type L2vpn-evpn-es-access-signal-mode; + description + "Operational access signal mode"; + } + list es-warning { + description + "EVPN ES warnings"; + leaf entry { + type Evpn-es-warning; + description + "EVPN ES warnings"; + } + } + list primary-service { + description + "List of Primary services ESI/I-SIDs"; + leaf entry { + type uint32; + description + "List of Primary services ESI/I-SIDs"; + } + } + list secondary-service { + description + "List of Secondary services ESI/I-SIDs"; + leaf entry { + type uint32; + description + "List of Secondary services ESI/I-SIDs"; + } + } + list service-carving-i-sidelected-result { + description + "Elected ISID service carving results"; + leaf entry { + type uint32; + description + "Elected ISID service carving results"; + } + } + list service-carving-isid-not-elected-result { + description + "Not elected ISID service carving results"; + leaf entry { + type uint32; + description + "Not elected ISID service carving results"; + } + } + list next-hop { + description + "List of nexthop IPv6 addresses"; + uses L2VPN-EVPN-ES-NH-BUFFER; + } + list mp-ves-next-hop { + description + "List of nexthop IPv6 addresses for child vES"; + uses L2VPN-EVPN-ES-NH-BUFFER; + } + list service-carving-evpn-vpws-primary-result { + description + "EVPN VPWS service carving primary results"; + uses L2VPN-EVPN-VPWS-SERVICE-INFO; + } + list service-carving-evpn-vpws-backup-result { + description + "EVPN VPWS service carving backup results"; + uses L2VPN-EVPN-VPWS-SERVICE-INFO; + } + list service-carving-evpn-vpws-ndf-result { + description + "EVPN VPWS service carving non-DF results"; + uses L2VPN-EVPN-VPWS-SERVICE-INFO; + } + list service-carving-evi-elected-result { + description + "Elected EVI service carving results"; + uses L2VPN-EVPN-SERVICE-INFO; + } + list service-carving-evi-not-elected-result { + description + "Not elected EVI service carving results"; + uses L2VPN-EVPN-SERVICE-INFO; + } + list service-carving-vni-elected-result { + description + "Elected VNI service carving results"; + uses L2VPN-EVPN-SERVICE-INFO; + } + list service-carving-vni-not-elected-result { + description + "Not elected VNI service carving results"; + uses L2VPN-EVPN-SERVICE-INFO; + } + list remote-split-horizon-group-label { + description + "Remote split horizon group labels"; + uses L2VPN-EVPN-REMOTE-SHG-INFO; + } + list service-carving-srv6-elan-elected-result { + description + "Elected SRv6 ELAN service carving results"; + uses L2VPN-EVPN-SERVICE-INFO; + } + list service-carving-srv6-elan-not-elected-result { + description + "Not elected SRv6 ELAN service carving results"; + uses L2VPN-EVPN-SERVICE-INFO; + } + } + + grouping EVPN-SRV6-LOCATOR-INFO { + description + "EVPN SRv6 Locator information"; + leaf locator-name { + type string; + description + "SRv6 Locator name"; + } + leaf locator-prefix { + type inet:ipv6-address; + description + "SRv6 Locator prefix"; + } + leaf locator-length { + type uint8; + description + "SRv6 Locator length"; + } + leaf oor-state { + type boolean; + description + "Out of Resources state"; + } + leaf in-use { + type boolean; + description + "In use by services"; + } + leaf flags { + type uint16; + description + "SRv6 Locator flags"; + } + leaf service-count { + type uint32; + description + "Number of services using this locator implicitly + and explicitly"; + } + leaf sid-count { + type uint32; + description + "Number of SIDs allocated by services for this + locator"; + } + leaf is-default { + type boolean; + description + "Configured default locator"; + } + list evi { + description + "List of EVIs with this locator explicitly + + configured"; + leaf entry { + type uint32; + description + "List of EVIs with this locator explicitly + + configured"; + } + } + list srv6 { + description + "List of ELAN based SRv6 with locator explicitly + + configured"; + leaf entry { + type uint32; + description + "List of ELAN based SRv6 with locator explicitly + + configured"; + } + } + list pw { + description + "List of VPWS services with this locator + explicitly configured"; + uses EVPN-SRV6-VPWS-KEY; + } + } + + grouping EVPN-SRV6-VPWS-KEY { + description + "EVPN SRv6 VPWS service key"; + leaf evi { + type uint32; + description + "EVI for the VPWS service"; + } + leaf acid { + type uint32; + description + "Attachment circuit ID for the VPWS service"; + } + } + + grouping L2VPN-EVPN-SRV6 { + description + "EVPN SRv6 info object"; + leaf enabled { + type boolean; + description + "SRv6 Enabled"; + } + leaf configured-default-locator { + type string; + description + "Configured default SRv6 locator"; + } + list unknown-locator-evi { + description + "List of EVIs with unknown locator names + + configured"; + leaf entry { + type uint32; + description + "List of EVIs with unknown locator names + + configured"; + } + } + list unknown-locator-vpws { + description + "List of VPWS services with unknown locator names + configured"; + uses EVPN-SRV6-VPWS-KEY; + } + list locator { + key "locator-name"; + description + "List of locators from L3RIB"; + uses EVPN-SRV6-LOCATOR-INFO; + } + } + + grouping EVPN-BAG-LABEL-IP-TUNNEL-KEY { + description + "IP Tunnel Based Label Key"; + leaf nexthop-ip { + type inet:ipv6-address; + description + "Nexthop IP"; + } + leaf nve-id { + type uint32; + description + "NVE ID"; + } + } + + grouping EVPN-BAG-LABEL-IP-NH-KEY { + description + "EVPN IP NH Based Label Key"; + leaf nexthop-ip { + type inet:ipv6-address; + description + "Nexthop IP"; + } + leaf ethernet-tag { + type uint32; + description + "Ethernet Tag"; + } + } + + grouping EVPN-BAG-LABEL-ESI-KEY { + description + "EVPN ESI Based Label Key"; + leaf esi { + type string; + description + "Ethernet Segment id"; + } + leaf ethernet-tag { + type uint32; + description + "Ethernet Tag"; + } + } + + grouping EVPN-BAG-LABEL-KEY-INFO { + description + "EVPN BAG LABEL KEY INFO"; + container esi-key { + when "../type = 'evpn-esi'" { + description + "../Type = 'EVPN_ESI'"; + } + description + "esi key"; + uses EVPN-BAG-LABEL-ESI-KEY; + } + container ipnh-key { + when "../type = 'evpn-ip-nh'" { + description + "../Type = 'EVPN_IP_NH'"; + } + description + "ipnh key"; + uses EVPN-BAG-LABEL-IP-NH-KEY; + } + container ip-tunnel-key { + when "../type = 'ip-tunnel'" { + description + "../Type = 'IPTunnel'"; + } + description + "ip tunnel key"; + uses EVPN-BAG-LABEL-IP-TUNNEL-KEY; + } + leaf type { + type Evpn-bag-label-key; + description + "Type"; + } + } + + grouping EVPN-BAG-LABEL-KEY { + description + "EVPN Label Key"; + container evpn-label-key-info { + description + "EVPN Label Key"; + uses EVPN-BAG-LABEL-KEY-INFO; + } + leaf key-type { + type Evpn-bag-label-key; + description + "EVPN Label Key Type"; + } + leaf ethernet-vpn-id { + type uint32; + description + "Ethernet VPN id"; + } + leaf encapsulation { + type L2vpn-evpn-encap; + description + "EVPN Instance transport encapsulation"; + } + } + + grouping L2VPN-EVPN-LABEL { + description + "EVPN Internal Label database information"; + container evpn-label-key { + description + "EVPN Label Key"; + uses EVPN-BAG-LABEL-KEY; + } + leaf evpn-type { + type L2vpn-evpn; + description + "Service Type"; + } + leaf internal-label { + type uint32; + description + "MPLS Internal Label"; + } + leaf alternate-internal-label { + type uint32; + description + "Alternate MPLS Internal Label"; + } + leaf internal-id { + type uint32; + description + "SRv6 Internal ID"; + } + leaf resolved { + type boolean; + description + "Internal Label has resolved per-ES EAD and + per-EVI EAD or MAC routes"; + } + leaf unresolved-reason { + type Evpn-bag-label-unresolved-reason; + description + "Optional reason why the label entry has not been + resolved"; + } + leaf preferred-nh-mode { + type Evpn-pref-ecmp-nh-mode; + description + "Preferred ECMP Nexthop Mode"; + } + leaf redundancy-single-active { + type boolean; + description + "Single-active redundancy configured at remote ES"; + } + leaf redundancy-single-flow-active { + type boolean; + description + "Single-flow-active redundancy at remote ES + (MST-AG)"; + } + list mac-path-buffer { + key "next-hop"; + description + "MAC Path list buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + list ead-path-buffer { + key "next-hop"; + description + "EAD/ES Path list buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + list evi-path-buffer { + key "next-hop"; + description + "EAD/EVI Path list buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + list union-path-buffer { + key "next-hop"; + description + "Union Path list buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + list ip-tunnel-path-buffer { + key "next-hop"; + description + "Static IP Tunnel Path list buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + list summary-path-buffer { + key "next-hop"; + description + "Summary Path list buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + list alternate-summary-path-buffer { + key "next-hop"; + description + "Alternate Summary Path list buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + } + + grouping L2VPN-EVPN-TEP-INFO { + description + "L2VPN EVPN TEP INFO"; + leaf ethernet-vpn-id { + type uint32; + description + "Ethernet VPN id"; + } + leaf encapsulation { + type uint8; + description + "EVPN Tunnel encapsulation"; + } + leaf ip { + type inet:ipv6-address; + description + "IP address (v6 format)"; + } + } + + grouping L2VPN-EVPN-TEP { + description + "EVPN Tunnel Endpoint database information"; + container local-info { + description + "Local TEP Information"; + uses L2VPN-EVPN-TEP-INFO; + } + container remote-info { + description + "Remote TEP Information"; + uses L2VPN-EVPN-TEP-INFO; + } + leaf tunnel-endpoint-id { + type uint32; + description + "Tunnel Endpoint id"; + } + leaf type { + type uint8; + description + "EVPN Tunnel Endpoint Type"; + } + leaf use-count { + type uint32; + description + "in-use counter"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vrf-table-id { + type uint32; + description + "VRF Table Id in RIB"; + } + leaf udp-port { + type uint16; + description + "UDP port"; + } + } + + grouping L2VPN-EVPN-TEP-NOTIFICATION-ENTRY { + description + "EVPN Tunnel Endpoint notification entry + information"; + leaf entry-name { + type string; + description + "Entry Name"; + } + } + + grouping L2VPN-EVPN-CLIENT { + description + "EVPN Client Information"; + leaf client-type-xr { + type Evpn-client1; + description + "Client Type"; + } + } + + grouping L2VPN-EVPN-MAC { + description + "L2VPN EVPN MAC database information"; + container evpn-instance { + description + "EVPN Instance summary information"; + uses L2VPN-EVPN-EVI-SUMMARY; + } + leaf ethernet-tag-xr { + type uint32; + description + "Ethernet Tag"; + } + leaf mac-address-xr { + type yang:mac-address; + description + "MAC address"; + } + leaf ip-address-xr { + type inet:ipv6-address; + description + "IP address (v6 format)"; + } + leaf local-label { + type uint32; + description + "Associated local label"; + } + leaf is-local-mac { + type boolean; + description + "Indication of MAC being locally generated"; + } + leaf is-proxy-entry { + type boolean; + description + "Proxy entry"; + } + leaf is-remote-mac { + type boolean; + description + "Indication of MAC being remotely generated"; + } + leaf soo-nexthop { + type inet:ipv6-address; + description + "SOO nexthop (v6 format)"; + } + leaf ipnh-address { + type inet:ipv6-address; + description + "IP nexthop address (v6 format)"; + } + leaf local-ethernet-segment-identifier { + type string; + description + "Local Ethernet Segment id"; + } + leaf remote-ethernet-segment-identifier { + type string; + description + "Remote Ethernet Segment id"; + } + leaf esi-port-key { + type uint16; + description + "ESI port key"; + } + leaf local-encap-type { + type uint8; + description + "Encap type of local MAC"; + } + leaf remote-encap-type { + type uint8; + description + "Encap type of remote MAC"; + } + leaf learned-bridge-port-name { + type string; + description + "Port the MAC was learned on"; + } + leaf local-seq-id { + type uint32; + description + "local seq id"; + } + leaf remote-seq-id { + type uint32; + description + "remote seq id"; + } + leaf local-l3-label { + type uint32; + description + "local l3 label"; + } + leaf router-mac-address { + type yang:mac-address; + description + "Router MAC address"; + } + leaf mac-flush-requested { + type uint16; + description + "Number of flushes requested "; + } + leaf mac-flush-received { + type uint16; + description + "Number of flushes received "; + } + leaf internal-label { + type uint32; + description + "MPLS Internal Label"; + } + leaf resolved { + type boolean; + description + "Internal Label has resolved per-ES EAD and + per-EVI EAD or MAC routes"; + } + leaf local-is-static { + type boolean; + description + "Indication if Local MAC is statically configured"; + } + leaf remote-is-static { + type boolean; + description + "Indication if Remote MAC is statically + configured"; + } + leaf local-etree-leaf { + type boolean; + description + "Local E-Tree Leaf Indication"; + } + leaf remote-etree-leaf { + type boolean; + description + "Remote E-Tree Leaf Indication"; + } + leaf remote-etree-rt-leaf { + type boolean; + description + "Remote MAC matching E-Tree Route-Target Leaf"; + } + leaf local-attachment-circuit-id { + type uint32; + description + "Local Attachement Circuit ID used in + ac-aware-vlan-bundling"; + } + leaf remote-attachment-circuit-id { + type uint32; + description + "Remote Attachement Circuit ID used in + ac-aware-vlan-bundling"; + } + list local-sid-array { + description + "Associated local SIDs"; + uses L2VPN-EVPN-SRV6-SID-INFO; + } + list path-buffer { + key "next-hop"; + description + "Path List Buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + } + + grouping L2VPN-EVPN-EVI-BGP-RT { + description + "EVPN Instance Route Target information"; + container evpn-instance { + description + "EVPN Instance summary information"; + uses L2VPN-EVPN-EVI-SUMMARY; + } + container route-target { + description + "Route Target"; + uses L2VPN-RT; + } + leaf route-target-role { + type L2vpn-ad-rt-role; + description + "RT Role"; + } + leaf route-target-stitching { + type boolean; + description + "RT Stitching"; + } + } + + grouping L2VPN-EVPN-IMCAST { + description + "L2VPN EVPN Inclusive Multicast database + information"; + container evpn-instance { + description + "EVPN Instance summary information"; + uses L2VPN-EVPN-EVI-SUMMARY; + } + container sr-te-info { + description + "SR(v6)-TE Policy info from ODN"; + uses L2VPN-EVPN-SRTE-INFO; + } + leaf ethernet-tag-xr { + type uint32; + description + "Ethernet Tag"; + } + leaf originating-ip-xr { + type inet:ipv6-address; + description + "Originating IP"; + } + leaf tunnel-endpoint-id { + type uint32; + description + "Tunnel Endpoint ID"; + } + leaf pmsi-tunnel-type { + type uint32; + description + "PMSI Tunnel Type"; + } + leaf next-hop { + type inet:ipv6-address; + description + "IP of nexthop"; + } + leaf output-label { + type uint32; + description + "Output label"; + } + leaf is-local-entry { + type boolean; + description + "Local entry"; + } + leaf is-proxy-entry { + type boolean; + description + "Proxy entry"; + } + leaf is-igmp-snooping-proxy-entry { + type boolean; + description + "IGMP Proxy enabled"; + } + leaf is-mld-snooping-proxy-entry { + type boolean; + description + "MLD Proxy enabled"; + } + leaf num-resolved-proxy-joins { + type uint32; + description + "Number of Proxy Joins resolving against this + entry"; + } + leaf etree-leaf { + type boolean; + description + "E-Tree Leaf Indication"; + } + list output-sid { + description + "Output SID"; + uses L2VPN-EVPN-SRV6-SID-INFO; + } + } + + grouping L2VPN-EVPN-L2-ATTRS { + description + "L2VPN EVPN L2 ATTRS"; + leaf mtu { + type uint16; + description + "Maximum Transmission Unit"; + } + leaf designated-forwarder-role { + type Evpn-bag-df-role; + description + "Designated Forwarder Role"; + } + leaf control-word { + type Evpn-bag-l2-attr-cw; + description + "Control Word"; + } + } + + grouping L2VPN-EVPN-SRTE-INFO { + description + "L2VPN EVPN SRTE INFO"; + leaf sr-te-type { + type uint8; + description + "Type of SR-TE Policy path from ODN"; + } + leaf sr-te-interface-name { + type xr:Interface-name; + description + "SR Traffic Engineering Interface Name"; + } + leaf sr-te-bsid { + type uint32; + description + "SR Traffic Engineering Binding-SID (Label)"; + } + leaf srv6-te-bsid { + type inet:ipv6-address; + description + "SRv6 Traffic Engineering Binding-SID"; + } + } + + grouping L2VPN-LABEL-PATH-BUFFER { + description + "L2VPN LABEL PATH BUFFER"; + container sr-te-info { + description + "SR(v6)-TE Policy info from ODN"; + uses L2VPN-EVPN-SRTE-INFO; + } + container layer2-attributes { + description + "Layer 2 Attributes"; + uses L2VPN-EVPN-L2-ATTRS; + } + leaf next-hop { + type inet:ipv6-address; + description + "Next-hop IP address (v6 format)"; + } + leaf tunnel-endpoint-id { + type uint32; + description + "Tunnel Endpoint Identifier"; + } + leaf output-label { + type uint32; + description + "Output Label"; + } + leaf reroute-label { + type uint32; + description + "Reroute Label"; + } + leaf ges-mac-address { + type yang:mac-address; + description + "Grouping ES MAC address"; + } + leaf originating-pe { + type inet:ipv6-address; + description + "OriginatingPE IP address (v6 format)"; + } + list issue { + description + "Issues with this path item"; + leaf entry { + type Evpn-bag-path-issues; + description + "Issues with this path item"; + } + } + list srv6-sid-info { + description + "Array of SRv6 SID information"; + uses L2VPN-EVPN-SRV6-SID-INFO; + } + } + + grouping L2VPN-EVPN-SRV6-SID-INFO { + description + "SRv6 SID information for EVPN services"; + leaf srv6-sid { + type inet:ipv6-address; + description + "SRv6 SID"; + } + } + + grouping L2VPN-EVPN-EAD { + description + "L2VPN EVPN EAD database information"; + container evpn-instance { + description + "EVPN Instance summary information"; + uses L2VPN-EVPN-EVI-SUMMARY; + } + container layer2-attributes { + description + "Layer 2 Attributes"; + uses L2VPN-EVPN-L2-ATTRS; + } + leaf ethernet-segment-identifier { + type string; + description + "Ethernet Segment id"; + } + leaf ethernet-tag-xr { + type uint32; + description + "Ethernet Tag"; + } + leaf local-next-hop { + type inet:ipv6-address; + description + "Local nexthop IP"; + } + leaf local-label { + type uint32; + description + "Associated local label"; + } + leaf is-local-ead { + type boolean; + description + "Indication of EthernetAutoDiscovery Route is + local"; + } + leaf redundancy-single-active { + type boolean; + description + "Single-active redundancy configured at remote + EAD"; + } + leaf redundancy-single-flow-active { + type boolean; + description + "Single-flow-active redundancy configured at + remote EAD"; + } + list local-sid-array { + description + "Associated local SIDs"; + uses L2VPN-EVPN-SRV6-SID-INFO; + } + list path-buffer { + key "next-hop"; + description + "Path List Buffer"; + uses L2VPN-LABEL-PATH-BUFFER; + } + } + + grouping L2VPN-EVPN-NEIGHBOR { + description + "L2VPN EVPN Neighbor database information"; + container evpn-instance { + description + "EVPN Instance summary information"; + uses L2VPN-EVPN-EVI-SUMMARY; + } + leaf neighbor { + type inet:ipv6-address; + description + "Neighbor IP"; + } + list leaf-evis { + description + "Leaf EVIs"; + leaf entry { + type uint32; + description + "Leaf EVIs"; + } + } + } + + grouping L2VPN-RT-ES-IMPORT { + description + "L2VPN RT ES IMPORT"; + leaf high-bytes { + type uint32; + description + "Top 4 bytes of ES Import"; + } + leaf low-bytes { + type uint16; + description + "Low 2 bytes of ES Import"; + } + } + + grouping L2VPN-RT-V4ADDR { + description + "L2VPN RT V4ADDR"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RT-4BYTE-AS { + description + "L2VPN RT 4BYTE AS"; + leaf four-byte-as { + type uint32; + description + "4 Byte AS Number"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RT-2BYTE-AS { + description + "L2VPN RT 2BYTE AS"; + leaf two-byte-as { + type uint16; + description + "2 Byte AS Number"; + } + leaf four-byte-index { + type uint32; + description + "4 Byte Index"; + } + } + + grouping L2VPN-RT { + description + "L2VPN RT"; + container two-byte-as { + when "../rt = 'l2vpn-ad-rt-as'" { + description + "../RT = 'L2VPN_AD_RT_AS'"; + } + description + "two byte as"; + uses L2VPN-RT-2BYTE-AS; + } + container four-byte-as { + when "../rt = 'l2vpn-ad-rt-4byte-as'" { + description + "../RT = 'L2VPN_AD_RT_4BYTE_AS'"; + } + description + "four byte as"; + uses L2VPN-RT-4BYTE-AS; + } + container v4-addr { + when "../rt = 'l2vpn-ad-rt-v4-addr'" { + description + "../RT = 'L2VPN_AD_RT_V4ADDR'"; + } + description + "v4 addr"; + uses L2VPN-RT-V4ADDR; + } + container es-import { + when "../rt = 'es-import'" { + description + "../RT = 'ES_Import'"; + } + description + "es import"; + uses L2VPN-RT-ES-IMPORT; + } + leaf rt { + type L2vpn-ad-rt; + description + "RT"; + } + } + + grouping L2VPN-RD-V4ADDR { + description + "L2VPN RD V4ADDR"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RD-4BYTE-AS { + description + "L2VPN RD 4BYTE AS"; + leaf four-byte-as { + type uint32; + description + "4 Byte AS Number"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RD-2BYTE-AS { + description + "L2VPN RD 2BYTE AS"; + leaf two-byte-as { + type uint16; + description + "2 Byte AS Number"; + } + leaf four-byte-index { + type uint32; + description + "4 Byte Index"; + } + } + + grouping L2VPN-RD-AUTO { + description + "L2VPN RD AUTO"; + leaf router-id { + type inet:ipv4-address; + description + "BGP Router ID"; + } + leaf auto-index { + type uint16; + description + "Auto-generated Index"; + } + } + + grouping L2VPN-RD { + description + "L2VPN RD"; + container auto { + when "../rd = 'l2vpn-ad-rd-auto'" { + description + "../RD = 'L2VPN_AD_RD_AUTO'"; + } + description + "auto"; + uses L2VPN-RD-AUTO; + } + container two-byte-as { + when "../rd = 'l2vpn-ad-rd-as'" { + description + "../RD = 'L2VPN_AD_RD_AS'"; + } + description + "two byte as"; + uses L2VPN-RD-2BYTE-AS; + } + container four-byte-as { + when "../rd = 'l2vpn-ad-rd-4byte-as'" { + description + "../RD = 'L2VPN_AD_RD_4BYTE_AS'"; + } + description + "four byte as"; + uses L2VPN-RD-4BYTE-AS; + } + container v4-addr { + when "../rd = 'l2vpn-ad-rd-v4-addr'" { + description + "../RD = 'L2VPN_AD_RD_V4ADDR'"; + } + description + "v4 addr"; + uses L2VPN-RD-V4ADDR; + } + leaf rd { + type L2vpn-ad-rd; + description + "RD"; + } + } + + grouping L2VPN-EVPN-FLOW-LABEL { + description + "L2VPN EVPN FLOW LABEL"; + leaf static-flow-label { + type boolean; + description + "Static flow label"; + } + leaf global-flow-label { + type boolean; + description + "Globally configured flow label"; + } + } + + grouping L2VPN-EVPN-EVI-DETAIL { + description + "EVPN E-VPN ID database detail information"; + container evpn-instance { + description + "EVPN Instance summary information"; + uses L2VPN-EVPN-EVI-SUMMARY; + } + container flow-label { + description + "Flow Label Information"; + uses L2VPN-EVPN-FLOW-LABEL; + } + container rd-auto { + description + "Automatic Route Distingtuisher"; + uses L2VPN-RD; + } + container rd-configured { + description + "Configured Route Distinguisher"; + uses L2VPN-RD; + } + container rt-auto { + description + "Automatic Route Target"; + uses L2VPN-RT; + } + leaf evi-xr { + type uint32; + description + "E-VPN id"; + } + leaf encapsulation-xr { + type uint8; + description + "EVPN Instance encapsulation"; + } + leaf bd-name { + type string; + description + "Bridge domain name"; + } + leaf type { + type L2vpn-evpn; + description + "Service Type"; + } + leaf description { + type string; + description + "EVI description"; + } + leaf unicast-label { + type uint32; + description + "Unicast Label"; + } + leaf multicast-label { + type uint32; + description + "Multicast Label"; + } + leaf reroute-label { + type uint32; + description + "Reroute Label"; + } + leaf cw-disable { + type boolean; + description + "Control-Word Disable"; + } + leaf mtu-mismatch-ignore { + type boolean; + description + "Ignore MTU Mismatch"; + } + leaf mtu-zero-transmit { + type boolean; + description + "Transmit MTU Zero"; + } + leaf table-policy-name { + type string; + description + "Table-policy Name"; + } + leaf export-route-policy { + type string; + description + "Export Route Policy"; + } + leaf import-route-policy { + type string; + description + "Import Route Policy"; + } + leaf forward-class { + type uint8; + description + "Forward Class attribute"; + } + leaf rt-import-block-set { + type boolean; + description + "Is Import RT None set"; + } + leaf rt-export-block-set { + type boolean; + description + "Is Export RT None set"; + } + leaf advertise-mac { + type boolean; + description + "Advertise MAC-only routes on this EVI"; + } + leaf etree-leaf { + type boolean; + description + "E-Tree Leaf Indication"; + } + leaf etree-rt-leaf { + type boolean; + description + "E-Tree Route-Target Leaf Indication"; + } + leaf advertise-bvi-mac { + type boolean; + description + "Advertise BVI MACs routes on this EVI"; + } + leaf aliasing-disabled { + type boolean; + description + "Route Aliasing is disabled"; + } + leaf unknown-unicast-flooding-disabled { + type boolean; + description + "Unknown-unicast flooding is disabled"; + } + leaf reoriginate-disabled { + type boolean; + description + "Route Re-origination is disabled"; + } + leaf stitching { + type boolean; + description + "EVPN Instance is Regular/Stitching side"; + } + leaf multicast-source-connected { + type boolean; + description + "EVI is connected to multicast source"; + } + leaf multicast-igmp-snooping-proxy { + type boolean; + description + "IGMP-Snooping Proxy is enabled + (Selective-Multicast)"; + } + leaf multicast-mld-snooping-proxy { + type boolean; + description + "MLD-Snooping Proxy is enabled + (Selective-Multicast)"; + } + leaf bgp-implicit-import-disabled { + type boolean; + description + "BGP implicit import is disabled"; + } + leaf vrf-name { + type string; + description + "L3 VRF name from BVI"; + } + leaf preferred-nh-mode { + type Evpn-pref-ecmp-nh-mode; + description + "Preferred Nexthop Mode"; + } + leaf srv6-locator-name { + type string; + description + "SRv6 Locator Name"; + } + } + + grouping L2VPN-EVPN-SUMMARY { + description + "EVPN Information Summary"; + leaf router-id { + type inet:ipv6-address; + description + "EVPN Router ID"; + } + leaf as { + type uint32; + description + "BGP AS number"; + } + leaf ev-is { + type uint32; + description + "Number of EVI DB Entries"; + } + leaf tunnel-endpoints { + type uint32; + description + "Number of Tunnel Endpoint DB Entries"; + } + leaf local-mac-routes { + type uint32; + description + "Number of Local MAC Routes"; + } + leaf local-ipv4-mac-routes { + type uint32; + description + "Number of Local IPv4 MAC-IP Routes"; + } + leaf local-ipv6-mac-routes { + type uint32; + description + "Number of Local IPv6 MAC-IP Routes"; + } + leaf es-global-mac-routes { + type uint32; + description + "Number of ES:Global MAC Routes"; + } + leaf remote-mac-routes { + type uint32; + description + "Number of Remote MAC Routes"; + } + leaf remote-sync-mac-routes { + type uint32; + description + "Number of Remote SYNC MAC Routes"; + } + leaf remote-ipv4-mac-routes { + type uint32; + description + "Number of Remote IPv4 MAC-IP Routes"; + } + leaf remote-ipv6-mac-routes { + type uint32; + description + "Number of Remote IPv6 MAC-IP Routes"; + } + leaf local-imcast-routes { + type uint32; + description + "Number of Local IMCAST Routes"; + } + leaf remote-imcast-routes { + type uint32; + description + "Number of Remote IMCAST Routes"; + } + leaf labels { + type uint32; + description + "Number of Internal Labels"; + } + leaf sh-internal-ids { + type uint32; + description + "Number of single-homed Internal IDs"; + } + leaf mh-internal-ids { + type uint32; + description + "Number of multi-homed Internal IDs"; + } + leaf es-entries { + type uint32; + description + "Number of ES Entries in DB"; + } + leaf neighbor-entries { + type uint32; + description + "Number of neighbor Entries in DB"; + } + leaf local-ead-routes { + type uint32; + description + "Number of Local EAD Entries in DB"; + } + leaf remote-ead-routes { + type uint32; + description + "Number of Remote EAD Entries in DB"; + } + leaf global-source-mac { + type yang:mac-address; + description + "Global Source MAC Address"; + } + leaf peering-time { + type uint32; + units "second"; + description + "EVPN ES Peering Time (seconds)"; + } + leaf recovery-time { + type uint32; + units "second"; + description + "EVPN ES Recovery Time (seconds)"; + } + leaf carving-time { + type uint32; + units "second"; + description + "EVPN ES Carving Time (seconds)"; + } + leaf cost-out-configured { + type boolean; + description + "EVPN node cost out via manual configuration"; + } + leaf bundle-convergence-in-progress { + type boolean; + description + "Bundle convergence in progress"; + } + leaf node-costed-out { + type boolean; + description + "EVPN Services costed out on node and holding + Bundle interfaces down"; + } + leaf startup-cost-in-time { + type uint32; + units "second"; + description + "EVPN Node startup cost-in Time (seconds)"; + } + leaf startup-cost-in-time-left { + type uint32; + units "millisecond"; + description + "Milliseconds left on EVPN Node startup cost-in"; + } + leaf mac-postpone-timer { + type uint32; + units "second"; + description + "Configured timer for postponing MAC withdraws + (seconds)"; + } + leaf mac-postpone-timer-left { + type uint32; + units "millisecond"; + description + "Milliseconds left on MAC withdraw postpone timer"; + } + leaf l2rib-throttle { + type boolean; + description + "Send to L2RIB Throttled"; + } + leaf logging-df-election-enabled { + type boolean; + description + "Logging EVPN Designated Forwarder changes + enabled"; + } + } + + grouping L2VPN-EVPN-EVI-SUMMARY { + description + "EVPN Instance summary information"; + leaf ethernet-vpn-id { + type uint32; + description + "Ethernet VPN id"; + } + leaf encapsulation-xr { + type L2vpn-evpn-encap; + description + "EVPN Instance transport encapsulation"; + } + leaf bd-name { + type string; + description + "Bridge domain name"; + } + leaf type { + type L2vpn-evpn; + description + "Service Type"; + } + } + + grouping L2VPN-EVPN-IGMP-SUBIF-INFO { + description + "L2VPN EVPN IGMP SUBIF INFO"; + leaf vrf-id { + type uint32; + description + "VRF id"; + } + } + + grouping L2VPN-EVPN-IGMP-FWD-INFO { + description + "L2VPN EVPN IGMP FWD INFO"; + leaf bd-id { + type uint32; + description + "BD id"; + } + } + + grouping EVPN-IGMP-CHILD-INFO { + description + "EVPN IGMP CHILD INFO"; + container fwd-info { + when "../child-type = 'l2-fwd'" { + description + "../ChildType = 'L2_FWD'"; + } + description + "fwd info"; + uses L2VPN-EVPN-IGMP-FWD-INFO; + } + container subif-info { + when "../child-type = 'l3-sub-if'" { + description + "../ChildType = 'L3_SUBIF'"; + } + description + "subif info"; + uses L2VPN-EVPN-IGMP-SUBIF-INFO; + } + leaf child-type { + type Evpn-child; + description + "ChildType"; + } + } + + grouping L2VPN-EVPN-IGMP-LOCAL-INFO { + description + "L2VPN EVPN IGMP LOCAL INFO"; + leaf if-name { + type string { + length "0..65"; + } + description + "Interface name internal format"; + } + } + + grouping EVPN-IGMP-SRC-INFO { + description + "EVPN IGMP SRC INFO"; + container local-info { + when "../type = 'local'" { + description + "../Type = 'Local'"; + } + description + "local info"; + uses L2VPN-EVPN-IGMP-LOCAL-INFO; + } + leaf type { + type Evpn-igmp-source; + description + "Type"; + } + leaf remote-info { + when "../type = 'remote'" { + description + "../Type = 'Remote'"; + } + type L2vpn-bag-in6-addr; + description + "remote info"; + } + } + + grouping L2VPN-EVPN-IGMP { + description + "EVPN IGMP database information"; + container source-info { + description + "Source Info"; + uses EVPN-IGMP-SRC-INFO; + } + container child-info { + description + "Child Info"; + uses EVPN-IGMP-CHILD-INFO; + } + leaf evpn-client-type { + type Evpn-client1; + description + "EVPN Client Type"; + } + leaf ethernet-segment-identifier { + type string; + description + "Ethernet Segment id"; + } + leaf ethernet-segment-name { + type string; + description + "Ethernet Segment Name"; + } + leaf evi-xr { + type uint32; + description + "E-VPN id"; + } + leaf route-type { + type Evpn-igmp-msg; + description + "Route Type"; + } + leaf source-addr { + type inet:ipv6-address; + description + "Source IP Address"; + } + leaf group-addr { + type inet:ipv6-address; + description + "Group IP Address"; + } + leaf originating-ip-xr { + type inet:ipv6-address; + description + "Originating IP Address (remotes)"; + } + leaf ethernet-tag-id { + type uint32; + description + "Ethernet Tag id"; + } + leaf igmp-version { + type Evpn-igmp-version; + description + "IGMP Version"; + } + leaf igmp-group-type { + type Evpn-igmp-grp; + description + "IGMP Group Type"; + } + leaf max-response-time { + type uint8; + description + "Max Response Time"; + } + leaf resolved { + type boolean; + description + "Resolved"; + } + } + + grouping L2VPN-EVPN-REMOTE-SHG-INFO { + description + "L2VPN EVPN remote split horizon group labels"; + leaf next-hop { + type inet:ipv6-address; + description + "Next-hop IP address (v6 format)"; + } + leaf label { + type uint32; + description + "Split horizon label associated with next-hop + address"; + } + leaf srv6-esi-id { + type uint32; + description + "ESI ID for SRv6 encapsulation"; + } + } + + grouping L2VPN-EVPN-REMOTE-SHG { + description + "EVPN Remote SHG object"; + leaf ethernet-segment-identifier { + type string; + description + "Ethernet Segment id"; + } + leaf ethernet-vpn-id { + type uint32; + description + "Ethernet VPN id"; + } + leaf encapsulation { + type uint8; + description + "EVPN Instance transport encapsulation"; + } + list remote-split-horizon-group-label { + description + "Remote split horizon group labels"; + uses L2VPN-EVPN-REMOTE-SHG-INFO; + } + } + + grouping EVPN-GRP-INTF-INFO { + description + "EVPN Group Interface Information"; + leaf interface-name { + type string; + description + "Interface name"; + } + leaf state { + type Im-state-enum; + description + "Interface State"; + } + } + + grouping EVPN-GRP-INFO { + description + "EVPN Group Information"; + leaf group-id { + type uint32; + description + "EVPN Group ID"; + } + leaf state { + type Evpn-grp; + description + "EVPN Group State"; + } + list core-interface { + key "interface-name"; + description + "EVPN Group Core Interface table"; + uses EVPN-GRP-INTF-INFO; + } + list access-interface { + key "interface-name"; + description + "EVPN Access Core Interface table"; + uses EVPN-GRP-INTF-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper.yang new file mode 100644 index 000000000..4acdbf6ad --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-evpn-oper.yang @@ -0,0 +1,963 @@ +module Cisco-IOS-XR-evpn-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-evpn-oper"; + prefix evpn-oper; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-evpn-oper-sub1 { + revision-date 2022-10-28; + } + + 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 evpn package operational data. + + This module contains definitions + for the following management objects: + evpn: EVPN Operational Table + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-28 { + description + "- Add ip-tunnel-path-buffer to internal-label + 2022-10-21 + Added hot-standby ES access signal mode. + 2022-08-29 + - Modifying key field of L2VPN-LABEL-PATH-BUFFER to support subelements fetch. + 2022-07-25 + - Added Label Type and IP to internal-label and internal-id schema. + 2022-06-27 + - Change keys to evpn-label-key and evpn-type in internal-label and internal-id + 2022-06-25 + - Add CAC info to policy info display + 2022-05-11 + - Changed ESI type from uint array to string + 2022-02-08 + - Removed vES pending up refcount + 2022-01-24 + - Added keys for multiple lists under evi-detail, added interface-name as a key in core-interface. + 2021-12-03 + - Added SRv6 locator flags + 2021-12-03 + - Added SRV6 SIDs to EVPN MACs. + 2021-12-01 + - Added originating-PE output on EAD, I-L. + 2021-09-27 + - Added keys for ethernet-segments/ethernet-segment list. + 2021-09-17 + - Added SRv6 ELAN list support in l2vpn_evpn_es bag. + 2021-09-14 + Display PLE-CEM attributes in xconnect info"; + semver:module-version "6.0.0"; + } + revision 2021-08-13 { + description + "Added multicast SID information for SRv6 ELAN + 2021-07-07 + Updated main port gES-MAC field in bag for clarity + 2021-05-06 + Added union-path-buffer to l2vpn evpn label. + 2021-04-30 + Added vES nexthop list to EVPN Ethernet Segment + 2021-03-16 + Added support to retrieve multiple EVPN clients under ClientTable"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang + 2020-04-02 + EVPN DF Election Synchronization with NTP related changes"; + semver:module-version "4.0.0"; + } + revision 2019-12-20 { + description + "EVPN SRv6 related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-09-26 { + description + "Duplicate detection parameters config moved from l2vpn to l2rib."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rd-addr-index { + type uint32 { + range "0..65535"; + } + description + "Rd addr index"; + } + + typedef Bgp-route-target-role { + type enumeration { + enum "both" { + value 0; + description + "Both Import and export roles"; + } + enum "import" { + value 1; + description + "Import role"; + } + enum "export" { + value 2; + description + "Export role"; + } + } + description + "Bgp route target role"; + } + + typedef Evpn-bgp-encap { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Encapsulation"; + } + enum "vx-lan" { + value 8; + description + "VxLAN Encapsulation"; + } + enum "mpls" { + value 10; + description + "MPLS Encapsulation"; + } + enum "es-global" { + value 253; + description + "ES GLOBAL Encapsulation"; + } + enum "route-sync" { + value 254; + description + "ROUTE SYNC Encapsulation"; + } + enum "srv6" { + value 255; + description + "SRv6 Encapsulation"; + } + } + description + "Evpn bgp encap"; + } + + typedef Evpn-client-source { + type enumeration { + enum "local" { + value 0; + description + "Source Local"; + } + enum "remote" { + value 1; + description + "Source Remote"; + } + } + description + "Evpn client source"; + } + + typedef Evpn-client { + type enumeration { + enum "igmpsn" { + value 0; + description + "IGMPSN client"; + } + enum "igmp" { + value 1; + description + "IGMP client"; + } + } + description + "Evpn client"; + } + + typedef Evpnrdas-display-range { + type uint32 { + range "0..4294967295"; + } + description + "Evpnrdas display range"; + } + + typedef Rdas-index { + type uint32 { + range "0..4294967295"; + } + description + "Rdas index"; + } + + typedef Evpn-internal-label { + type enumeration { + enum "evpn-esi" { + value 0; + description + "ESI based EVPN Label"; + } + enum "evpn-ip-nh" { + value 1; + description + "IP Nexthop based EVPN Label"; + } + enum "ip-tunnel" { + value 2; + description + "IP Tunnel based EVPN Label"; + } + } + description + "Evpn internal label"; + } + + typedef Bgp-route-target-format { + type enumeration { + enum "none" { + value 0; + description + "No route target"; + } + enum "two-byte-as" { + value 1; + description + "2 Byte AS:nn format"; + } + enum "four-byte-as" { + value 2; + description + "4 byte AS:nn format"; + } + enum "ipv4-address" { + value 3; + description + "IP:nn format"; + } + enum "es-import" { + value 1538; + description + "a.a.i format"; + } + } + description + "Bgp route target format"; + } + + typedef Evpn-multicast-entry { + type enumeration { + enum "join" { + value 0; + description + "Sync join entry"; + } + enum "leave" { + value 1; + description + "Sync leave entry"; + } + enum "proxy" { + value 2; + description + "Proxy join entry"; + } + } + description + "Evpn multicast entry"; + } + + grouping EVI-TABLE { + description + "Common node of active, standby, node"; + container evis { + description + "L2VPN EVPN EVI Table"; + list evi { + description + "L2VPN EVPN EVI Entry"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type uint32; + description + "Encap"; + } + uses L2VPN-EVPN-EVI-SUMMARY; + } + } + } + + grouping SEGMENT-ROUTING-SRV6 { + description + "Common node of active, standby, node"; + container segment-routing-srv6 { + description + "L2VPN EVPN Segment Routing SRv6"; + uses L2VPN-EVPN-SRV6; + } + } + + grouping AC-ID-TABLE { + description + "Common node of active, standby, node"; + container ac-ids { + description + "EVPN AC ID table"; + list ac-id { + description + "EVPN AC ID table"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf ac-id { + type uint32; + description + "AC ID"; + } + uses L2VPN-ATOM-ACID; + } + } + } + + grouping EVI-DETAIL { + description + "Common node of active, standby, node"; + container evi-detail { + description + "L2VPN EVI Detail Table"; + container elements { + description + "EVI BGP RT Detail Info Elements"; + list element { + key "evi encapsulation"; + description + "EVI BGP RT Detail Info"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type uint32; + description + "Encap"; + } + uses L2VPN-EVPN-EVI-DETAIL; + } + } + container evi-children { + description + "Container for all EVI detail info"; + container neighbors { + description + "EVPN Neighbor table"; + list neighbor { + key "evi encapsulation neighbor-ip"; + description + "EVPN Neighbor table"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type uint32; + description + "Encap"; + } + leaf neighbor-ip { + type inet:ip-address-no-zone; + description + "Neighbor IP"; + } + uses L2VPN-EVPN-NEIGHBOR; + } + } + container ethernet-auto-discoveries { + description + "EVPN Ethernet Auto-Discovery table"; + list ethernet-auto-discovery { + key "evi encapsulation esi ethernet-tag"; + description + "EVPN Ethernet Auto-Discovery Entry"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type uint32; + description + "Encap"; + } + leaf esi { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "ES id"; + } + leaf ethernet-tag { + type uint32; + description + "Ethernet Tag ID"; + } + uses L2VPN-EVPN-EAD; + } + } + container inclusive-multicasts { + description + "L2VPN EVPN IMCAST table"; + list inclusive-multicast { + key "evi encapsulation ethernet-tag originating-ip"; + description + "L2VPN EVPN IMCAST table"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type uint32; + description + "Encap"; + } + leaf ethernet-tag { + type uint32; + description + "Ethernet Tag"; + } + leaf originating-ip { + type inet:ip-address-no-zone; + description + "Originating IP"; + } + uses L2VPN-EVPN-IMCAST; + } + } + container route-targets { + description + "L2VPN EVPN EVI RT Child Table"; + list route-target { + description + "L2VPN EVPN EVI RT Table"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type uint32; + description + "Encap"; + } + leaf role { + type Bgp-route-target-role; + description + "Role of the route target"; + } + leaf format { + type Bgp-route-target-format; + description + "Format of the route target"; + } + leaf as { + type Evpnrdas-display-range; + description + "Two or Four byte AS Number"; + } + leaf as-index { + type Rdas-index; + description + "RT AS Index"; + } + leaf addr-index { + type Rd-addr-index; + description + "RT IP Index"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "RT IPv4 Address"; + } + uses L2VPN-EVPN-EVI-BGP-RT; + } + } + container macs { + description + "L2VPN EVPN EVI MAC table"; + list mac { + description + "L2VPN EVPN MAC table"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type uint32; + description + "Encap"; + } + leaf ethernet-tag { + type uint32; + description + "Ethernet Tag ID"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP Address"; + } + uses L2VPN-EVPN-MAC; + } + } + } + } + } + + grouping IGMP-TABLE { + description + "Common node of active, standby, node"; + container igmps { + description + "EVPN IGMP table"; + list igmp { + description + "IGMP Route"; + leaf client-type { + type Evpn-client; + description + "Client type"; + } + leaf source-type { + type Evpn-client-source; + description + "Source type"; + } + leaf entry-type { + type Evpn-multicast-entry; + description + "Join, Leave or Proxy entry"; + } + leaf evi { + type uint32; + description + "EVI"; + } + leaf esi { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "ES id"; + } + leaf ethernet-tag { + type uint32; + description + "Ethernet Tag ID"; + } + leaf src-ip { + type inet:ip-address-no-zone; + description + "Source IP Address"; + } + leaf grp-ip { + type inet:ip-address-no-zone; + description + "Group IP Address"; + } + leaf originating-ip { + type inet:ip-address-no-zone; + description + "Originating IP Address"; + } + leaf bd-id { + type uint32; + description + "BD ID"; + } + leaf bp-xcid { + type uint32; + description + "BP XCID"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf sub-interface-name { + type xr:Interface-name; + description + "Sub-interface name"; + } + uses L2VPN-EVPN-IGMP; + } + } + } + + grouping INTERNAL-ID-TABLE { + description + "Common node of active, standby, node"; + container internal-ids { + description + "EVPN Internal ID Table"; + list internal-id { + description + "L2VPN EVPN Internal ID"; + leaf label-type { + type Evpn-internal-label; + description + "EVPN Label Type"; + } + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type Evpn-bgp-encap; + description + "Encap"; + } + leaf esi { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "ES id"; + } + leaf ip { + type inet:ip-address-no-zone; + description + "IP Nexthop"; + } + leaf tag { + type uint32; + description + "Ethernet Tag ID or NVE ID"; + } + uses L2VPN-EVPN-LABEL; + } + } + } + + grouping ETHERNET-SEGMENT-TABLE { + description + "Common node of active, standby, node"; + container ethernet-segments { + description + "EVPN Ethernet-Segment Table"; + list ethernet-segment { + key "interface-name esi"; + description + "EVPN Ethernet-Segment Entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf esi { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "ES id"; + } + uses L2VPN-EVPN-ES; + } + } + } + + grouping CLIENT-TABLE { + description + "Common node of active, standby, node"; + container clients { + description + "L2VPN EVPN Client"; + list client { + key "client-type"; + description + "L2VPN EVPN Client"; + leaf client-type { + type Evpn-client; + description + "Client type"; + } + uses L2VPN-EVPN-CLIENT; + } + } + } + + grouping REMOTE-SHG-TABLE { + description + "Common node of active, standby, node"; + container remote-shgs { + description + "EVPN Remote SHG table"; + list remote-shg { + key "evi esi"; + description + "EVPN Remote SHG"; + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf esi { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "ES id"; + } + uses L2VPN-EVPN-REMOTE-SHG; + } + } + } + + grouping TEP-TABLE { + description + "Common node of active, standby, node"; + container teps { + description + "L2VPN EVPN TEP Table"; + list tep { + key "tep-id"; + description + "L2VPN EVPN TEP Entry"; + container tep-notification-entries { + description + "L2VPN EVPN TEP Notification Table"; + list tep-notification-entry { + key "index"; + description + "L2VPN EVPN TEP Notification Entry"; + leaf index { + type uint32; + description + "TEP notification index"; + } + uses L2VPN-EVPN-TEP-NOTIFICATION-ENTRY; + } + } + container tep-info { + description + "L2VPN EVPN TEP Entry"; + uses L2VPN-EVPN-TEP; + } + leaf tep-id { + type uint32; + description + "TEP id"; + } + } + } + } + + grouping SUMMARY { + description + "Common node of active, standby, node"; + container summary { + description + "L2VPN EVPN Summary"; + uses L2VPN-EVPN-SUMMARY; + } + } + + grouping EVPN-GROUP-TABLE { + description + "Common node of active, standby, node"; + container evpn-groups { + description + "EVPN Group Table"; + list evpn-group { + key "group-number"; + description + "EVPN Group information"; + leaf group-number { + type uint32 { + range "1..4294967295"; + } + description + "EVPN group number"; + } + uses EVPN-GRP-INFO; + } + } + } + + grouping INTERNAL-LABEL-TABLE { + description + "Common node of active, standby, node"; + container internal-labels { + description + "EVPN Internal Label Table"; + list internal-label { + description + "L2VPN EVPN Internal Label"; + leaf label-type { + type Evpn-internal-label; + description + "EVPN Label Type"; + } + leaf evi { + type uint32; + description + "EVPN id"; + } + leaf encapsulation { + type Evpn-bgp-encap; + description + "Encap"; + } + leaf esi { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "ES id"; + } + leaf ip { + type inet:ip-address-no-zone; + description + "IP Nexthop"; + } + leaf tag { + type uint32; + description + "Ethernet Tag ID or NVE ID"; + } + uses L2VPN-EVPN-LABEL; + } + } + } + + container evpn { + config false; + description + "EVPN Operational Table"; + container nodes { + description + "Table of EVPN operational data for a particular + node"; + list node { + key "node-id"; + description + "EVPN operational data for a particular node"; + leaf node-id { + type xr:Node-id; + description + "Location"; + } + uses EVPN-GROUP-TABLE; + uses REMOTE-SHG-TABLE; + uses IGMP-TABLE; + uses EVI-TABLE; + uses SUMMARY; + uses EVI-DETAIL; + uses CLIENT-TABLE; + uses TEP-TABLE; + uses INTERNAL-LABEL-TABLE; + uses INTERNAL-ID-TABLE; + uses SEGMENT-ROUTING-SRV6; + uses ETHERNET-SEGMENT-TABLE; + uses AC-ID-TABLE; + } + } + container active { + description + "Active EVPN operational data"; + uses EVPN-GROUP-TABLE; + uses REMOTE-SHG-TABLE; + uses IGMP-TABLE; + uses EVI-TABLE; + uses SUMMARY; + uses EVI-DETAIL; + uses CLIENT-TABLE; + uses TEP-TABLE; + uses INTERNAL-LABEL-TABLE; + uses INTERNAL-ID-TABLE; + uses SEGMENT-ROUTING-SRV6; + uses ETHERNET-SEGMENT-TABLE; + uses AC-ID-TABLE; + } + container standby { + description + "Standby EVPN operational data"; + uses EVPN-GROUP-TABLE; + uses REMOTE-SHG-TABLE; + uses IGMP-TABLE; + uses EVI-TABLE; + uses SUMMARY; + uses EVI-DETAIL; + uses CLIENT-TABLE; + uses TEP-TABLE; + uses INTERNAL-LABEL-TABLE; + uses INTERNAL-ID-TABLE; + uses SEGMENT-ROUTING-SRV6; + uses ETHERNET-SEGMENT-TABLE; + uses AC-ID-TABLE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fabhfr-mib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fabhfr-mib-cfg.yang new file mode 100644 index 000000000..4996d1df1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fabhfr-mib-cfg.yang @@ -0,0 +1,79 @@ +module Cisco-IOS-XR-fabhfr-mib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fabhfr-mib-cfg"; + prefix fabhfr-mib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 fabhfr-mib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-26 { + description + "task-name field added."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-31 { + description + "Yang Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container fabric-crs { + description + "CISCO-FABRIC-HFR-MIB notification configuration"; + leaf bundle-state { + type empty; + description + "Enable cfhBundleStateNotification notification"; + } + leaf plane-state { + type empty; + description + "Enable cfhPlaneStateNotification notification"; + } + leaf bundle-downed-link { + type empty; + description + "Enable cfhBundleDownedLinkNotification + notification"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1.yang new file mode 100644 index 000000000..603c078d0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1.yang @@ -0,0 +1,264 @@ +submodule Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1 { + belongs-to Cisco-IOS-XR-fabric-fgid-stats-8000-oper { + prefix Cisco-IOS-XR-fabric-fgid-stats-8000-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fabric-fgid-stats-8000 package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FE-HW-FGID-BITMAP { + description + "Fgid bitmap on FE Asic HW"; + leaf asic-name { + type string { + length "0..16"; + } + description + "FE Asic"; + } + leaf asic-type { + type string { + length "0..8"; + } + description + "FE Asic type"; + } + leaf status { + type string { + length "0..4"; + } + description + "SW/HW fgid bitmap match"; + } + list bitmap { + max-elements "2"; + description + "FGID Bitmap"; + leaf entry { + type uint64; + description + "FGID Bitmap"; + } + } + } + + grouping FGID-DIAG-INFO { + description + "Fgid bitmap on rack FE asics"; + leaf rack-num { + type uint32; + description + "Rack num"; + } + list fe-asic { + description + "FGID bitmaps info on FE HW"; + uses FE-HW-FGID-BITMAP; + } + } + + grouping RACK-FGID-BITMAP { + description + "Rack Fgid Bitmaps"; + leaf rack { + type uint32; + description + "Rack"; + } + list bitmap { + max-elements "2"; + description + "Fgid bitmap"; + leaf entry { + type uint64; + description + "Fgid bitmap"; + } + } + } + + grouping FAPID-INFO { + description + "Fabid information"; + leaf fapid { + type uint32; + description + "Fapid"; + } + leaf rack { + type uint32; + description + "Rack"; + } + leaf slot { + type uint32; + description + "Slot"; + } + leaf asic { + type uint32; + description + "Asic"; + } + } + + grouping FGID-INFO { + description + "Per FGID ID information"; + leaf fgid-id-xr { + type uint32; + description + "FGID ID"; + } + leaf num-fapids { + type uint32; + description + "Number of assoicated fapids"; + } + leaf client-id { + type uint32; + description + "Client ID"; + } + leaf client-name { + type string; + description + "Client name"; + } + leaf sdr-name { + type string; + description + "SDR Name"; + } + leaf num-up-racks { + type uint32; + description + "Number of UP Racks"; + } + leaf max-lcc-racks { + type uint32; + description + "Maximum LCC Racks"; + } + list fapid { + description + "Associated fapids"; + uses FAPID-INFO; + } + list fgid-bitmap { + description + "Racks FGID Bitmaps"; + uses RACK-FGID-BITMAP; + } + list rack-fgid-diag-info { + description + "FGID Diag per rack"; + uses FGID-DIAG-INFO; + } + } + + grouping FGID-APPL-STATS-INFO { + description + "Per application basis fabric multicast resource + statistics information - no LR info"; + leaf appl-name { + type string; + description + "multicast resource application name"; + } + leaf inuse-fgids { + type uint32; + description + "the number of inuse FGIDs by the appl"; + } + leaf hwm-inuse-fgids { + type uint32; + description + "the high water mark of inused FGIDs"; + } + leaf inuse-fgids-act { + type uint32; + description + "inuse FGIDs by the appl at appl registration + time"; + } + leaf alloc-fgids-act { + type uint32; + description + "number allocated FGIDs by the appl after appl + registration"; + } + leaf free-fgids-act { + type uint32; + description + "number free FGIDs by the appl after appl + registration"; + } + } + + grouping FGID-SYS-STATS-INFO { + description + "Per HFR basis fabric multicast resource + statistics information"; + leaf total-fgids { + type uint32; + description + "the total number of FGIDs"; + } + leaf inuse-fgids { + type uint32; + description + "the number of inuse FGIDs"; + } + leaf hwm-inuse-fgids { + type uint32; + description + "the high water mark of inuse FGIDs"; + } + } + + grouping FGID-ALL-STATS-INFO { + description + "Fgid statistics information"; + container sys-stats { + description + "FGID system statistics"; + uses FGID-SYS-STATS-INFO; + } + list appl-stat { + description + "Application statistics"; + uses FGID-APPL-STATS-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper.yang new file mode 100644 index 000000000..557ccbc03 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fgid-stats-8000-oper.yang @@ -0,0 +1,128 @@ +module Cisco-IOS-XR-fabric-fgid-stats-8000-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fabric-fgid-stats-8000-oper"; + prefix fabric-fgid-stats-8000-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fabric-fgid-stats-8000-oper-sub1 { + revision-date 2019-04-05; + } + + 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 fabric-fgid-stats-8000 package operational data. + + This module contains definitions + for the following management objects: + fabric-fgid: Fabric Fgid Data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fgid-info-elem-max { + type uint32 { + range "1..262144"; + } + description + "Fgid info elem max"; + } + + typedef Fgid-info-start-max { + type uint32 { + range "0..262143"; + } + description + "Fgid info start max"; + } + + container fabric-fgid { + config false; + description + "Fabric Fgid Data"; + container statistics { + description + "Fabric Fgid Statistics"; + container all { + description + "Statistics Data"; + uses FGID-ALL-STATS-INFO; + } + container system { + description + "Statistics Data"; + uses FGID-SYS-STATS-INFO; + } + } + container display-opts { + description + "Fabric Fgid System"; + list display-opt { + key "displayopt"; + description + "Display Option"; + leaf displayopt { + type xr:Cisco-ios-xr-string; + description + "brief/detail/diag"; + } + list start-fgid-id { + key "fgid-id"; + description + "Start FGID Number"; + leaf fgid-id { + type Fgid-info-start-max; + description + "Fabric FGID"; + } + list element { + key "num-fgids"; + description + "Number of Fgids"; + leaf num-fgids { + type Fgid-info-elem-max; + description + "Number of Fabric FGIDs"; + } + list fgid-id { + key "fgid-id"; + description + "Single Fgid information"; + leaf fgid-id { + type Fgid-info-start-max; + description + "Single Fgid"; + } + uses FGID-INFO; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper-sub1.yang new file mode 100644 index 000000000..cfca9deaf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper-sub1.yang @@ -0,0 +1,258 @@ +submodule Cisco-IOS-XR-fabric-fsdb-server-oper-sub1 { + belongs-to Cisco-IOS-XR-fabric-fsdb-server-oper { + prefix Cisco-IOS-XR-fabric-fsdb-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fabric-fsdb-server package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-26 { + description + "task-name field added."; + semver:module-version "1.0.0"; + } + revision 2019-07-17 { + description + "Yang Schema fixed for fabric link port Information."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FSDB-SERVER-EDM-PLA-FAB { + description + "FSDB SERVER EDM PLA FAB"; + leaf rack-num-str { + type string { + length "0..128"; + } + description + "rack num str"; + } + leaf stage-name { + type string { + length "0..128"; + } + description + "stage name"; + } + leaf fabid-address { + type string { + length "0..128"; + } + description + "fabid address"; + } + leaf fabid-status { + type string; + description + "fabid status"; + } + leaf num-planes { + type int32; + description + "num planes"; + } + leaf plane-0-mask { + type string { + length "0..128"; + } + description + "plane 0 mask"; + } + leaf plane-1-mask { + type string { + length "0..128"; + } + description + "plane 1 mask"; + } + leaf plane-2-mask { + type string { + length "0..128"; + } + description + "plane 2 mask"; + } + leaf plane-3-mask { + type string { + length "0..128"; + } + description + "plane 3 mask"; + } + leaf plane-4-mask { + type string { + length "0..128"; + } + description + "plane 4 mask"; + } + leaf plane-5-mask { + type string { + length "0..128"; + } + description + "plane 5 mask"; + } + leaf plane-6-mask { + type string { + length "0..128"; + } + description + "plane 6 mask"; + } + leaf plane-7-mask { + type string { + length "0..128"; + } + description + "plane 7 mask"; + } + leaf total-links { + type int32; + description + "total links"; + } + leaf total-up-links { + type int32; + description + "total up links"; + } + leaf min-links-per-asic { + type int32; + description + "min links per asic"; + } + leaf max-links-per-asic { + type int32; + description + "max links per asic"; + } + leaf min-up-links-per-asic { + type int32; + description + "min up links per asic"; + } + leaf max-up-links-per-asic { + type int32; + description + "max up links per asic"; + } + } + + grouping FSDB-LINK-HIST { + description + "FSDB LINK HIST"; + leaf timestamp-str { + type string { + length "0..128"; + } + description + "timestamp str"; + } + leaf admin-state { + type string; + description + "admin state"; + } + leaf oper-state { + type string; + description + "oper state"; + } + leaf error-state { + type string; + description + "error state"; + } + } + + grouping FSDB-SERVER-EDM-LPORT { + description + "FSDB SERVER EDM LPORT"; + leaf link-str { + type string { + length "0..128"; + } + description + "link str"; + } + leaf neib-link-str { + type string { + length "0..128"; + } + description + "neib link str"; + } + leaf admin-state { + type string; + description + "admin state"; + } + leaf oper-state { + type string; + description + "oper state"; + } + leaf retimer-rx-str { + type string { + length "0..128"; + } + description + "retimer rx str"; + } + leaf retimer-tx-str { + type string { + length "0..128"; + } + description + "retimer tx str"; + } + leaf mux-rx-str { + type string { + length "0..128"; + } + description + "mux rx str"; + } + leaf mux-tx-str { + type string { + length "0..128"; + } + description + "mux tx str"; + } + list history { + max-elements "5"; + description + "history"; + uses FSDB-LINK-HIST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper.yang new file mode 100644 index 000000000..8d62f31e6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-fsdb-server-oper.yang @@ -0,0 +1,171 @@ +module Cisco-IOS-XR-fabric-fsdb-server-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fabric-fsdb-server-oper"; + prefix fabric-fsdb-server-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fabric-fsdb-server-oper-sub1 { + revision-date 2020-06-26; + } + + 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 fabric-fsdb-server package operational data. + + This module contains definitions + for the following management objects: + fabric-server: Fabric Data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-26 { + description + "task-name field added."; + semver:module-version "1.0.0"; + } + revision 2019-07-17 { + description + "Yang Schema fixed for fabric link port Information."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fabric-server { + config false; + description + "Fabric Data"; + list rack-number { + key "rack-num"; + description + "Fabric Fsdb Rack Number"; + container stages { + description + "Fsdb Server Link Port"; + list stage { + key "stage"; + description + "Fsdb Server Link-Port Stage FIA=1;S1=2;S2=3 + ;S3=4;"; + leaf stage { + type uint32; + description + "Stage Option fia/s1/s2/s3"; + } + list rx-tx { + key "rx-tx"; + description + "Link Direction rx/tx - RX=0;TX=1;"; + leaf rx-tx { + type uint32; + description + "Direction rx/tx"; + } + list filter-option { + key "foption"; + description + "FE Port state - UP=0;DOWN=1;MISMATCH=2;ALL=3 + ;"; + leaf foption { + type uint32; + description + "Filter option"; + } + list links-info { + key "log-slot-no"; + description + "Links Information - logical slot"; + leaf log-slot-no { + type uint32; + description + "Logical Slot Num"; + } + list asics { + key "asic-inst"; + description + "Links Information - asic instances"; + leaf asic-inst { + type uint32; + description + "Asic Instance"; + } + list links { + key "link-num"; + description + "Links Information - link number"; + container link { + description + "Single Link Information R/S/A/L"; + uses FSDB-SERVER-EDM-LPORT; + } + leaf link-num { + type uint32; + description + "Link Number"; + } + } + } + } + } + } + } + } + container fsdb-stages { + description + "Fabric Fsdb Pla Data"; + list fsdb-stage { + key "option"; + description + "Option : s1 , s2 , s3 , s123"; + leaf option { + type xr:Cisco-ios-xr-string; + description + "Stage option"; + } + list fabid { + key "fabid"; + description + "Destination fabid"; + container fabid-xr { + description + "PLA info for fabid"; + uses FSDB-SERVER-EDM-PLA-FAB; + } + leaf fabid { + type uint32; + description + "fabid"; + } + } + } + } + leaf rack-num { + type uint32; + description + "Rack Number"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper-sub1.yang new file mode 100644 index 000000000..ba864695b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper-sub1.yang @@ -0,0 +1,642 @@ +submodule Cisco-IOS-XR-fabric-plane-health-oper-sub1 { + belongs-to Cisco-IOS-XR-fabric-plane-health-oper { + prefix Cisco-IOS-XR-fabric-plane-health-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fabric-plane-health package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-10 { + description + "Yang Schema some leaf nodes type changed to prevent memory leak."; + semver:module-version "1.0.0"; + } + revision 2020-06-26 { + description + "Yang Schema added with task-name."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FSDB-PLA-HEALTH-INFO { + description + "FSDB PLA HEALTH INFO"; + leaf fabid-address { + type string { + length "0..128"; + } + description + "fabid address"; + } + leaf fabid-status { + type string { + length "0..32"; + } + description + "fabid status"; + } + leaf show-fabid-unreachable { + type boolean; + description + "show fabid unreachable"; + } + leaf plane-0-mask { + type string { + length "0..32"; + } + description + "plane 0 mask"; + } + leaf plane-1-mask { + type string { + length "0..32"; + } + description + "plane 1 mask"; + } + leaf plane-2-mask { + type string { + length "0..32"; + } + description + "plane 2 mask"; + } + leaf plane-3-mask { + type string { + length "0..32"; + } + description + "plane 3 mask"; + } + leaf plane-4-mask { + type string { + length "0..32"; + } + description + "plane 4 mask"; + } + leaf plane-5-mask { + type string { + length "0..32"; + } + description + "plane 5 mask"; + } + leaf plane-6-mask { + type string { + length "0..32"; + } + description + "plane 6 mask"; + } + leaf plane-7-mask { + type string { + length "0..32"; + } + description + "plane 7 mask"; + } + leaf total-links { + type int32; + description + "total links"; + } + leaf total-up-links { + type int32; + description + "total up links"; + } + leaf min-links-per-asic { + type int32; + description + "min links per asic"; + } + leaf max-links-per-asic { + type int32; + description + "max links per asic"; + } + leaf min-up-links-per-asic { + type int32; + description + "min up links per asic"; + } + leaf max-up-links-per-asic { + type int32; + description + "max up links per asic"; + } + } + + grouping NPU-FABRIC-HEALTH-EDM-ASIC { + description + "NPU FABRIC HEALTH EDM ASIC"; + leaf rack-num { + type uint32; + description + "rack num"; + } + leaf slot-num { + type uint32; + description + "slot num"; + } + leaf asic-instance { + type uint32; + description + "asic instance"; + } + leaf asic-state-str { + type string { + length "0..32"; + } + description + "asic state str"; + } + leaf asic-state { + type uint32; + description + "asic state"; + } + leaf fab-reach { + type boolean; + description + "fab reach"; + } + leaf asic-valid { + type boolean; + description + "asic valid"; + } + leaf is-below { + type boolean; + description + "is below"; + } + leaf total-bw { + type uint32; + description + "total bw"; + } + leaf total-availbw { + type uint32; + description + "total availbw"; + } + leaf total-reqdbw { + type uint32; + description + "total reqdbw"; + } + } + + grouping NPU-FABRIC-HEALTH-INFO { + description + "NPU FABRIC HEALTH INFO"; + leaf fe-status { + type boolean; + description + "fe status"; + } + leaf total-asics { + type uint32; + description + "total asics"; + } + list asic-list-ptr { + description + "asic list ptr"; + uses NPU-FABRIC-HEALTH-EDM-ASIC; + } + } + + grouping FSDB-EDM-RACK-PLANE-INFO { + description + "FSDB EDM RACK PLANE INFO"; + leaf plane-id { + type uint32; + description + "plane id"; + } + leaf plane-state { + type string { + length "0..32"; + } + description + "plane state"; + } + leaf asics-total { + type int32; + description + "asics total"; + } + leaf asics-up { + type int32; + description + "asics up"; + } + leaf asics-dn { + type int32; + description + "asics dn"; + } + leaf num-reachable-fabids { + type int32; + description + "num reachable fabids"; + } + } + + grouping FSDB-EDM-RACK-INFO { + description + "FSDB EDM RACK INFO"; + container activerp-card-npu-info { + description + "activerp card npu info"; + uses NPU-FABRIC-HEALTH-INFO; + } + leaf is-valid { + type boolean; + description + "is valid"; + } + leaf fsdb-status { + type string { + length "0..32"; + } + description + "fsdb status"; + } + leaf npu-fe-status { + type string { + length "0..32"; + } + description + "npu fe status"; + } + leaf rack-num { + type string { + length "0..32"; + } + description + "rack num"; + } + leaf rack-type { + type string { + length "0..32"; + } + description + "rack type"; + } + leaf sfe-asics-total { + type int32; + description + "sfe asics total"; + } + leaf sfe-asics-up { + type int32; + description + "sfe asics up"; + } + leaf sfe-asics-dn { + type int32; + description + "sfe asics dn"; + } + leaf fia-asics-total { + type int32; + description + "fia asics total"; + } + leaf fia-asics-up { + type int32; + description + "fia asics up"; + } + leaf fia-asics-dn { + type int32; + description + "fia asics dn"; + } + leaf num-valid-fabids { + type int32; + description + "num valid fabids"; + } + leaf show-rack-plane-detail { + type boolean; + description + "show rack plane detail"; + } + list rack-plane-info { + max-elements "8"; + description + "rack plane info"; + uses FSDB-EDM-RACK-PLANE-INFO; + } + list lc-card-npu-info { + max-elements "18"; + description + "lc card npu info"; + uses NPU-FABRIC-HEALTH-INFO; + } + list fsdb-pla-ptr { + description + "fsdb pla ptr"; + uses FSDB-PLA-HEALTH-INFO; + } + } + + grouping FSDBAGG-EDM-SYS-PLANE-INFO { + description + "FSDBAGG EDM SYS PLANE INFO"; + leaf plane-id { + type uint32; + description + "plane id"; + } + leaf admin-state { + type string; + description + "admin state"; + } + leaf plane-state { + type string; + description + "plane state"; + } + leaf racks-w-plane-fault { + type int32; + description + "racks w plane fault"; + } + leaf is-data-drop { + type boolean; + description + "is data drop"; + } + } + + grouping FSDBAGG-EDM-FABRIC-HEALTH { + description + "FSDBAGG EDM FABRIC HEALTH"; + leaf aggr-status { + type string; + description + "aggr status"; + } + leaf rack-total { + type int32; + description + "rack total"; + } + leaf rack-lcc { + type int32; + description + "rack lcc"; + } + leaf rack-fcc { + type int32; + description + "rack fcc"; + } + leaf plane-up { + type int32; + description + "plane up"; + } + leaf plane-dn { + type int32; + description + "plane dn"; + } + leaf plane-mcast-dn { + type int32; + description + "plane mcast dn"; + } + leaf plane-admin-dn { + type int32; + description + "plane admin dn"; + } + leaf sfe-asics-total { + type int32; + description + "sfe asics total"; + } + leaf sfe-asics-up { + type int32; + description + "sfe asics up"; + } + leaf sfe-asics-dn { + type int32; + description + "sfe asics dn"; + } + leaf fia-asics-total { + type int32; + description + "fia asics total"; + } + leaf fia-asics-up { + type int32; + description + "fia asics up"; + } + leaf fia-asics-dn { + type int32; + description + "fia asics dn"; + } + leaf show-sys-plane-detail { + type boolean; + description + "show sys plane detail"; + } + list sys-plane-info { + max-elements "8"; + description + "sys plane info"; + uses FSDBAGG-EDM-SYS-PLANE-INFO; + } + list rack-health-bag { + description + "rack health bag"; + uses FSDB-EDM-RACK-INFO; + } + } + + grouping FSDBAGG-EDM-PLANE-STATS { + description + "FSDBAGG EDM PLANE STATS"; + leaf planeid { + type uint32; + description + "planeid"; + } + leaf rx-data-cells { + type uint64; + description + "rx data cells"; + } + leaf tx-data-cells { + type uint64; + description + "tx data cells"; + } + leaf rx-ce-cells { + type uint64; + description + "rx ce cells"; + } + leaf rx-ce-cells-is-overflow { + type boolean; + description + "rx ce cells is overflow"; + } + leaf rx-uce-cells { + type uint64; + description + "rx uce cells"; + } + leaf rx-uce-cells-is-overflow { + type boolean; + description + "rx uce cells is overflow"; + } + leaf rx-pe-cells { + type uint64; + description + "rx pe cells"; + } + leaf rx-pe-cells-is-overflow { + type boolean; + description + "rx pe cells is overflow"; + } + leaf ucast-lost-cells { + type uint32; + description + "ucast lost cells"; + } + leaf mcast-lost-cells { + type uint32; + description + "mcast lost cells"; + } + leaf asic-internal-drops { + type uint32; + description + "asic internal drops"; + } + leaf last-clear-elapsed { + type uint32; + description + "last clear elapsed"; + } + leaf is-asic-internal-error { + type boolean; + description + "is asic internal error"; + } + leaf last-clear-ts { + type string { + length "0..128"; + } + description + "last clear ts"; + } + leaf last-clear-reason { + type string; + description + "last clear reason"; + } + leaf last-clear-req-ts { + type string { + length "0..128"; + } + description + "last clear req ts"; + } + leaf last-clear-status { + type string; + description + "last clear status"; + } + } + + grouping FSDBAGG-EDM-PLANE-INFO { + description + "FSDBAGG EDM PLANE INFO"; + leaf planeid { + type int32; + description + "planeid"; + } + leaf admin-state { + type string; + description + "admin state"; + } + leaf ucast-oper-state { + type string; + description + "ucast oper state"; + } + leaf ucast-cnt-dn { + type int32; + description + "ucast cnt dn"; + } + leaf ucast-cnt-some-up { + type int32; + description + "ucast cnt some up"; + } + leaf total-bundles { + type int32; + description + "total bundles"; + } + leaf down-bundles { + type int32; + description + "down bundles"; + } + leaf ppu-state { + type string { + length "0..128"; + } + description + "ppu state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper.yang new file mode 100644 index 000000000..953a9ebd5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fabric-plane-health-oper.yang @@ -0,0 +1,87 @@ +module Cisco-IOS-XR-fabric-plane-health-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fabric-plane-health-oper"; + prefix fabric-plane-health-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fabric-plane-health-oper-sub1 { + revision-date 2020-10-10; + } + + 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 fabric-plane-health package operational data. + + This module contains definitions + for the following management objects: + fabric: Fabric Data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-10 { + description + "Yang Schema some leaf nodes type changed to prevent memory leak."; + semver:module-version "1.0.0"; + } + revision 2020-06-26 { + description + "Yang Schema added with task-name."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fabric { + config false; + description + "Fabric Data"; + container fabric-plane-ids { + description + "Fabric Plane data for available planes"; + list fabric-plane-id { + key "fabric-plane-key"; + description + "Filter Fabric Plane data for specific plane"; + container fabric-plane-info { + description + "Fabric Plane info for specific plane"; + uses FSDBAGG-EDM-PLANE-INFO; + } + container fabric-plane-stats { + description + "Fabric Plane statistics for specific plane"; + uses FSDBAGG-EDM-PLANE-STATS; + } + leaf fabric-plane-key { + type uint32; + description + "Plane Number"; + } + } + } + container fabric-health { + description + "Fabric Health Data"; + uses FSDBAGG-EDM-FABRIC-HEALTH; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper-sub1.yang new file mode 100644 index 000000000..9cd56f5b1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper-sub1.yang @@ -0,0 +1,288 @@ +submodule Cisco-IOS-XR-feature-agent-oper-sub1 { + belongs-to Cisco-IOS-XR-feature-agent-oper { + prefix Cisco-IOS-XR-feature-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR feature-agent package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-16 { + description + "Fixed user permission"; + semver:module-version "1.0.0"; + } + revision 2021-03-25 { + description + "IOS XR 7.05.01 version"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Feature-capability-vc { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "supported" { + description + "Boolean feature supported"; + } + enum "unsupported" { + description + "Boolean feature unsupported"; + } + enum "uint32" { + description + "Integer feature with uint32 support value"; + } + enum "not-packaged" { + description + "Feature not packaged"; + } + enum "no-data" { + description + "No data on feature support"; + } + enum "no-data-for-optional-feature" { + description + "No feature support value data for the optional + feature"; + } + enum "unexpected-type" { + description + "Feature support value type mismatch with the + definition"; + } + enum "unexpected-value" { + description + "Feature support value from an unpackaged + feature"; + } + enum "unexpected-runtime-value" { + description + "Feature support value at runtime for a compile + time feature"; + } + enum "no-card" { + description + "Node scope feature with value on card not in + inventory"; + } + enum "unexpected" { + description + "Feature support value unexpected on card in its + card class"; + } + enum "unexpected-use" { + description + "Feature use value unexpected on card in its + card class"; + } + enum "not-relevant" { + description + "Feature support value not relevant on card"; + } + enum "inconsistent" { + description + "Support value inconsistent"; + } + } + description + "Feature capability vc"; + } + + typedef Feature { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "boolean" { + description + "Boolean"; + } + enum "integer" { + description + "Integer"; + } + } + description + "Feature"; + } + + typedef Feature-scope { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "system" { + description + "System"; + } + enum "node" { + description + "Node"; + } + } + description + "Feature scope"; + } + + grouping FEATURE-NODE { + description + "Per node feature information"; + container node-capability { + description + "Support value"; + uses FEATURE-CAPABILITY-SV; + } + leaf node-name { + type string; + description + "Node name"; + } + } + + grouping FEATURE-NS-CAPABILITY { + description + "Node scope capability"; + list nodes { + description + "Nodes"; + uses FEATURE-NODE; + } + } + + grouping FEATURE-INTEGER-SV { + description + "Integer feature support value"; + leaf classification { + type Feature-capability-vc; + description + "Classification"; + } + leaf value { + when "../classification = 'uint32'" { + description + "../Classification = 'Uint32'"; + } + type uint32; + description + "Integer Support Value"; + } + } + + grouping FEATURE-CAPABILITY-SV { + description + "Feature support value"; + container integer-value { + when "../type = 'integer'" { + description + "../Type = 'Integer'"; + } + description + "Integer Support value"; + uses FEATURE-INTEGER-SV; + } + leaf type { + type Feature; + description + "Type"; + } + leaf classification { + when "../type = 'boolean'" { + description + "../Type = 'Boolean'"; + } + type Feature-capability-vc; + description + "Classification"; + } + } + + grouping FEATURE-CAPABILITY { + description + "Feature Capability"; + container system-capability { + when "../scope = 'system'" { + description + "../Scope = 'System'"; + } + description + "Capability if system scope"; + uses FEATURE-CAPABILITY-SV; + } + container nodes-capability { + when "../scope = 'node'" { + description + "../Scope = 'Node'"; + } + description + "Capability if node scope"; + uses FEATURE-NS-CAPABILITY; + } + leaf scope { + type Feature-scope; + description + "Scope"; + } + } + + grouping FEATURE { + description + "Feature"; + container capability { + description + "Feature Capability"; + uses FEATURE-CAPABILITY; + } + leaf name { + type string; + description + "Feature name"; + } + leaf description { + type string; + description + "Feature description"; + } + leaf parent-id { + type string; + description + "ID of feature's parent"; + } + leaf in-use { + type boolean; + description + "Feature In Use"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper.yang new file mode 100644 index 000000000..ede14a4da --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-feature-agent-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-feature-agent-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-feature-agent-oper"; + prefix feature-agent-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-feature-agent-oper-sub1 { + revision-date 2021-06-16; + } + + 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 feature-agent package operational data. + + This module contains definitions + for the following management objects: + feature-capabilities: XR Features + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-16 { + description + "Fixed user permission"; + semver:module-version "1.0.0"; + } + revision 2021-03-25 { + description + "IOS XR 7.05.01 version"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container feature-capabilities { + config false; + description + "XR Features"; + container features { + description + "XR Features"; + list feature { + key "feature-id"; + description + "Data for Feature"; + leaf feature-id { + type xr:Cisco-ios-xr-string; + description + "Feature ID"; + } + uses FEATURE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fgid-mgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fgid-mgr-cfg.yang new file mode 100644 index 000000000..3e61f5301 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fgid-mgr-cfg.yang @@ -0,0 +1,60 @@ +module Cisco-IOS-XR-fgid-mgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fgid-mgr-cfg"; + prefix fgid-mgr-cfg; + + 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 fgid-mgr package configuration. + + This module contains definitions + for the following management objects: + fgid-mgr-config: none + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-21 { + description + "Yang Schema added with task-name."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fgid-mgr-config { + description + "none"; + container fabric-fgid { + description + "Configure FGID consistency checker"; + leaf consistency-checker-timeout { + type uint32; + description + "configure timeout 1 min=1, 10 mins=10, 60 + mins=60; off=0"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fia-hw-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fia-hw-profile-cfg.yang new file mode 100644 index 000000000..8da308942 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fia-hw-profile-cfg.yang @@ -0,0 +1,1861 @@ +module Cisco-IOS-XR-fia-hw-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fia-hw-profile-cfg"; + prefix fia-hw-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 fia-hw-profile package configuration. + + This module contains definitions + for the following management objects: + hw-module-profile-config: none + hw-module-profile-config-npu: none + hw-module-profile-config-oversubscription: none + hw-module-profile-config-tcam: none + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-03-08 { + description + "Added new CLI to enable multipath auto protection + 2023-02-08 + Schema added for Egress Compensation CLI + 2022-10-12 + Data type updated for bgppa stats-mode leaf + 2022-10-07 + Added PFC native support + 2022-09-06 + Removed sat-enable hw-module CLI IosSetYangSchemaRev Cisco-IOS-XR-fia-hw-profile-cfg + 2022-08-10 + Added new profile under hw-module profile load-balance algorithm + 2022-07-28 + Schema updated for IRB Recycle port bandwidth. + 2022-07-26 + Schema added for BGPPA feature CLI + 2022-07-18 + Data type updated for qos-policer leaf + 2022-07-08 + Added functionality for L2PT extended protocol set + 2022-06-17 + Yang models updated for ecn-marking-stats, shared-policer-per-class-stats, ipv6-short-l2qos-enable, qos-stats-collection + 2022-05-17 + Added new profile under hw-module profile load-balance algorithm + 2022-05-08 + Schema added. + 2022-04-20 + Added span filter support for tx + 2022-04-05 + Schema change to have a single leaf for acl compression + 2022-04-01 + Add SRv6 l3-traffic option traffic-class-with-hoplimit + 2022-03-21 + Schema udpated for span l2 filter CLI + 2022-03-17 + Added Qos multicast Egress queue threshold and buffer parameters. + 2022-02-28 + Schema updated for qos policer scale CLI. + 2022-01-15 + Schema updated for qos free buffer int threshold configuration CLI. + 2022-01-10 + Schema updated for qos nif prd allocation CLI. + 2021-12-16 + Schema updated for egress compression CLI + 2021-11-09 + Add SRv6 L2/L3 config separation to encapsulation config. Add policy-map option to l3-traffic. + 2021-10-28 + Schema updated for qos stats push model CLI."; + semver:module-version "5.0.0"; + } + revision 2021-10-19 { + description + "Added functionality for L2PT extended protocol set + 2021-08-26 + Schema updated for support for match on ipv4/ipv6 destination address in L2 QOS database. + 2021-07-27 + Added functionality to disable Urpf + 2021-07-22 + Schema updated for Enabling and Disabling eTCAM LPTS profile CLI. + 2021-07-19 + Schema updated LoadBalanceProfile datatype changed to enum. + 2021-06-24 + Schema updated for QoS physical hqos profile CLI. + 2021-06-01 + Schema updated for ISIS/ARP priority"; + semver:module-version "4.0.0"; + } + revision 2021-05-12 { + description + "Schema updated for sync between sysdb and schema for all platforms. + 2021-05-07 + Schema updated for QoS IPv6 short ETM profile CLI. + 2021-02-04 + Schema updated for native mode CLI. + 2020-09-18 + New leaf to specify routing profile as core + 2020-08-14 + SRV6 leaf deprecated and replaced by SRv6 Mode leaf + 2020-07-27 + Schema updated. + 2020-07-16 + Schema added."; + semver:module-version "3.0.0"; + } + revision 2020-04-30 { + description + "ACL UDK config changes: Added Common-ACL, replaced ProtType with NextHdr and Precedence with TraffClass + 2020-04-22 + SRV6 leaf deprecated and replaced by SRv6 Mode leaf + 2020-01-07 + Schema added. + 2020-01-05 + MGBL Sync config missmatch."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2016-06-22 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Data-plane { + type enumeration { + enum "all-dp" { + value 0; + description + "All dataplanes"; + } + } + description + "Data plane"; + } + + typedef Load-balance-profile { + type enumeration { + enum "layer2" { + value 1; + description + "Layer 2 optimized"; + } + enum "ip-tunnel" { + value 2; + description + "IP tunnel optimized"; + } + enum "mpls-safe-speculative-parsing" { + value 3; + description + "MPLS safe Speculative parsing"; + } + enum "gtp" { + value 4; + description + "GTP optimized"; + } + enum "l3-only" { + value 5; + description + "L3 Header only Hash"; + } + enum "gtp-mpls" { + value 6; + description + "GTP over MPLS optimized hash"; + } + enum "pppoe" { + value 7; + description + "PPPoE session based optimized hash and Reload + is required for this option"; + } + enum "mpls-lsr-ler" { + value 8; + description + "MPLS lsr ler LB profile"; + } + enum "inner-l2-field" { + value 9; + description + "Inner MAC based optimised hashing"; + } + } + description + "Load balance profile"; + } + + typedef Srv6-traffic-class-l2 { + type enumeration { + enum "propagate" { + value 2; + description + "Propagate traffic-class from incoming + packet/frame"; + } + enum "value" { + value 3; + description + "Set traffic-class value"; + } + } + description + "Srv6 traffic class l2"; + } + + typedef Bgppa-stats-mode { + type enumeration { + enum "main-intf" { + value 1; + description + "BGP-PA stats for main interface"; + } + enum "sub-intf" { + value 2; + description + "BGP-PA stats for sub interface"; + } + } + description + "Bgppa stats mode"; + } + + typedef Srv6-mode { + type enumeration { + enum "base" { + value 3; + description + "SRv6 base mode"; + } + enum "base-and-micro-segment-f3216" { + value 5; + description + "SRv6 dual mode with base and micro-segment + f3216"; + } + enum "micro-segment-f3216" { + value 12; + description + "SRv6 32-bit block and 16-bit IDs"; + } + } + description + "Srv6 mode"; + } + + typedef Plane-rack { + type uint32 { + range "0..15"; + } + description + "Plane rack"; + } + + typedef Router-role { + type enumeration { + enum "core" { + value 3; + description + "Core router"; + } + } + description + "Router role"; + } + + typedef Qos-policer-scale { + type enumeration { + enum "max-policer-scale-48000" { + value 48000; + description + "QOS policer scale 48000"; + } + enum "max-policer-scale-64000" { + value 64000; + description + "QOS policer scale 64000"; + } + } + description + "Qos policer scale"; + } + + typedef Srv6-traffic-class-value { + type uint32 { + range "0..255"; + } + description + "Srv6 traffic class value"; + } + + typedef Qos-classmap-size { + type enumeration { + enum "max-classmap-size-2" { + value 2; + description + "QOS classmap size 2"; + } + enum "max-classmap-size-4" { + value 4; + description + "QOS classmap size 4"; + } + enum "max-classmap-size-8" { + value 8; + description + "QOS classmap size 8"; + } + enum "max-classmap-size-16" { + value 16; + description + "QOS classmap size 16"; + } + enum "base" { + value 32; + description + "QOS default classmap size 32"; + } + } + description + "Qos classmap size"; + } + + typedef Srv6-traffic-class-l3 { + type enumeration { + enum "propagate" { + value 2; + description + "Propagate traffic-class from incoming packet"; + } + enum "value" { + value 3; + description + "Set traffic-class value"; + } + enum "policy-map" { + value 4; + description + "Set traffic-class by policy-map"; + } + enum "propagate-with-ttl" { + value 5; + description + "Propagate traffic-class and TTL from incoming + packet"; + } + } + description + "Srv6 traffic class l3"; + } + + container hw-module-profile-config { + description + "none"; + container irb { + description + "Configure irb mod."; + leaf mode-l3l2 { + type uint32; + description + "irb mode L3-L2"; + } + leaf mode-l2l3 { + type uint32; + description + "irb mode L2-L3"; + } + } + container profile { + description + "Configure profile."; + container routing { + description + "Configure the node's routing profile"; + container data-planes { + description + "Configure the routing profile for a specific + dataplane"; + list data-plane { + key "dataplane"; + description + "Configure the dataplane type"; + leaf role { + type Router-role; + description + "Configure the node's routing role"; + } + leaf dataplane { + type Data-plane; + description + "Dataplane type"; + } + } + } + } + container netflow { + description + "Configure Netflow profile."; + container sflow-netflow-locations { + description + "none"; + list sflow-netflow-location { + key "location-string"; + description + "none"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of NETFLOW config"; + } + list sflow-netflow-location-leaf { + key "location-id"; + description + "none"; + leaf location-id { + type uint32; + description + "Location ID"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 65535"; + } + } + } + } + container ipfix-location-all { + description + "IPFIX315 Location All"; + leaf ipfix-location-all-leaf { + type uint32; + description + "If Enabled set value to 65535"; + } + } + container sflow-location-all { + description + "SFLOW Location All"; + leaf sflow-location-all-leaf { + type uint32; + description + "If Enabled set value to 65535"; + } + } + container fpc-netflow-locations { + description + "none"; + list fpc-netflow-location { + key "location-string"; + description + "none"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of NETFLOW config"; + } + list fpc-netflow-location-leaf { + key "location-id"; + description + "none"; + leaf location-id { + type uint32; + description + "Location ID"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 65535"; + } + } + } + } + container ipfix-netflow-locations { + description + "none"; + list ipfix-netflow-location { + key "location-string"; + description + "none"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of NETFLOW config"; + } + list ipfix-netflow-location-leaf { + key "location-id"; + description + "none"; + leaf location-id { + type uint32; + description + "Location ID"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 65535"; + } + } + } + } + container fpc-location-all { + description + "FPC Location All"; + leaf fpc-location-all-leaf { + type uint32; + description + "If Enabled set value to 65535"; + } + } + } + container flowspec-table { + description + "Configure Flowspec profile."; + container flowspecs { + description + "Configure v6 enable on Flowspec profile."; + list flowspec { + key "location-string location-id"; + description + "none"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of FLOWSPEC config"; + } + leaf location-id { + type uint32; + description + "Location ID hex to Decimal 65535"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 1"; + } + } + } + } + container md-bprofile { + description + "Configure MDB profile."; + leaf md-bprofile-type { + type uint32; + description + "Configure MDB profile type"; + } + } + container span-filter { + description + "Configure span filter profile for DNS, HTTP, + HTTPS and TLS packet mirror filtering"; + leaf l2l3-tx-span-filter-enable { + type boolean; + description + "enable the l2 l3 traffic tx span filtering + profile"; + } + leaf l2-rx-span-filter-enable { + type boolean; + description + "enable the l2 traffic rx span filtering + profile"; + } + } + container bundle-hash { + description + "Configure Bundle Hash related parameters"; + container hash-index-locations { + description + "Bundle hash polynomial config"; + list hash-index-location { + key "node-name"; + description + "Bundle hash polynomial config location"; + leaf node-name { + type xr:Cisco-ios-xr-string; + description + "NodeName"; + } + list hash-index-location-leaf { + key "location"; + description + "Bundle hash polynomial config location leaf"; + leaf hash-index-location-leaf { + type uint32; + mandatory true; + description + "Hash Index Location Leaf"; + } + leaf location { + type uint32; + description + "Location"; + } + } + } + } + leaf per-pkt-round-robin { + type boolean; + description + "bundlehash global per_pkt_round_robin mode"; + } + leaf ignore-ing-port { + type boolean; + description + "bundlehash ignore_ingress_port flag"; + } + } + container bgp-mp-pic { + description + "Configure bgp-mp-pic"; + leaf enable { + type boolean; + description + "Enabled or disabled"; + } + } + container load-balance { + description + "Configure load balance parameters"; + leaf load-balance-profile { + type Load-balance-profile; + description + "Configure load balance parameters"; + } + } + container priority-flow-control-nodes { + description + "PriorityFlowControl config"; + list priority-flow-control-node { + key "node-name"; + description + "Configure PriorityFlowControl"; + leaf node-name { + type xr:Cisco-ios-xr-string; + description + "NodeName"; + } + list priority-flow-control-traffic-class { + key "tcvalue"; + description + "PriorityFlowControlTrafficClass"; + leaf tcvalue { + type uint32; + description + "tcValue"; + } + list priority-flow-control-threshold { + key "location"; + description + "PriorityFlowControl Threshold"; + container priority-flow-control-threshold-values { + description + "PriorityFlowControl Threshold values"; + leaf pause-threshold { + type uint32 { + range "1..4294967295"; + } + description + "PFC PauseThreshold"; + } + leaf resume-threshold { + type uint32 { + range "1..4294967295"; + } + description + "PFC ResumeThreshold"; + } + leaf headroom { + type uint32 { + range "1..4294967295"; + } + description + "PFC Headroom"; + } + } + leaf location { + type uint32; + description + "Location"; + } + } + } + } + } + container stats { + description + "Configure stats"; + container stats-profile-modes { + description + "Configure stats for qos-enhanced, acl-permit + and ingress-sr"; + list stats-profile-mode { + key "counter-profile"; + description + "Stats mode"; + leaf mode { + type uint32; + mandatory true; + description + "Stats Mode"; + } + leaf counter-profile { + type uint32; + description + "none"; + } + } + } + } + container bgp-multipath-path-auto-protection { + description + "Configure bgp-mp-auto-protect"; + leaf enable { + type boolean; + description + "Enable BGP MP Auto Protection feature"; + } + } + container mpls-dscp { + description + "Configure to preserve dscp with large label + stack"; + leaf enable { + type boolean; + description + "Enable to preseve dscp for ipv4 unicast + traffic"; + } + } + container segment-routing { + description + "Configure Segment Routing profile."; + container srv6 { + description + "Configure SRv6 profile."; + container encapsulation { + description + "Configure encapsulation related parameters"; + container traffic-l3 { + description + "Configure encapsulation related parameters + for l3-traffic type"; + container traffic-class-l3 { + presence "Contains mandatory nodes that used to set default values"; + description + "Configure traffic-class field of SRv6 IPv6 + header"; + leaf type { + type Srv6-traffic-class-l3; + description + "Traffic-class type"; + } + leaf value { + type Srv6-traffic-class-value; + mandatory true; + description + "Traffic-class value"; + } + } + } + container traffic-l2 { + description + "Configure encapsulation related parameters + for l2-traffic type"; + container traffic-class-l2 { + presence "Contains mandatory nodes that used to set default values"; + description + "Configure traffic-class field of SRv6 IPv6 + header"; + leaf type { + type Srv6-traffic-class-l2; + description + "Traffic-class type"; + } + leaf value { + type Srv6-traffic-class-value; + mandatory true; + description + "Traffic-class value"; + } + } + } + } + leaf mode { + type Srv6-mode; + description + "Enable SRv6 mode/profile"; + } + } + } + container profile-acl { + description + "Configure acl profile"; + container acl-ingress-compress-enable-locations { + description + "ingress compress enable"; + list acl-ingress-compress-enable-location { + key "location-string"; + description + "ingress compress enable location"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of ACL config"; + } + } + } + container acl-egress-compress-enable-locations { + description + "egress compress enable"; + list acl-egress-compress-enable-location { + key "location-string"; + description + "egress compress enable location"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of ACL config"; + } + } + } + leaf egress { + type boolean; + description + "Enabled or disabled"; + } + leaf acl-egress-compress-enable-location-all { + type empty; + description + "Enable ACL egress compression on all locations"; + } + leaf acl-ingress-compress-enable-location-all { + type empty; + description + "Enable ACL ingress compression on all + locations"; + } + leaf ipv6-ext-hdr { + type boolean; + description + "IPv6 Extension Hdr Permit"; + } + } + container sr-policies { + description + "Configure IPV6 NULL label autopush for SR + policy."; + list sr-policy { + key "null-label-autopush"; + description + "none"; + leaf null-label-autopush { + type xr:Cisco-ios-xr-string; + description + "none"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 1"; + } + } + } + container bundle-scale { + description + "Configure Bundle profile."; + leaf trunk-size { + type uint32; + description + "Configure Max Trunk Size"; + } + } + container offload { + description + "Configure offload profile for NCS5501-SE"; + leaf offload-profile { + type uint32; + description + "Configure offload profile for NCS5501-SE"; + } + } + container igp-dlb { + description + "configure igp_dlb"; + leaf enable { + type boolean; + description + "fib dlb level-1 value"; + } + } + container qos { + description + "Configure profile."; + container qos-policer-all { + description + "Configure qos policer scale"; + leaf qos-policer { + type Qos-policer-scale; + description + "Qos policer scale value"; + } + } + container hqos-enable-all { + description + "Configure Hqos profile"; + leaf hqos-enable { + type uint32; + description + " Hqos profile value"; + } + } + container ingress-model-root-def { + description + "Configure Ingress Model Default"; + leaf ingress-model-leaf-def { + type uint32; + description + "Ingress Model Default"; + } + } + container multicast-egr-rsrc { + description + "Configure Multicast Egress Resources"; + container multicast-egr-rsrc-thrld { + description + "Multicast Egress Resource Queue Threshold and + Buffer"; + leaf multicast-egr-rsrc-thrld { + type uint32; + description + "MulticastEgrRsrcThrld"; + } + leaf multicast-egr-rsrc-queue { + type uint32; + description + "MulticastEgrRsrcQueue"; + } + leaf multicast-egr-rsrc-buffer { + type uint32; + description + "MulticastEgrRsrcBuffer"; + } + } + } + container ipv6-short-etm-profile { + description + "Configure IPv6 short ETM profile"; + leaf ipv6-short-etm-profile-leaf { + type boolean; + description + "IPv6 short ETM profile value"; + } + } + container ingress-models { + description + "Configure Ingress Model Root"; + list ingress-model { + key "node-name"; + description + "Configure Ingress Model"; + leaf node-name { + type xr:Cisco-ios-xr-string; + description + "NodeName"; + } + list ingress-model-leaf { + key "location"; + description + "Configure Ingress Model Leaf"; + leaf ingress-model-leaf { + type uint32; + mandatory true; + description + "IngressModelLeaf"; + } + leaf location { + type uint32; + description + "Location"; + } + } + } + } + container irb-recycle-root { + description + "Configure IRB Recycle Bandwidth"; + leaf irb-recycle-all { + type uint32; + description + "IRB Recycle Bandwidth value"; + } + } + container class-maps-root-def { + description + "Configure Class Maps Default"; + leaf class-map-size-def { + type uint32; + description + "Class Map Size Default"; + } + } + container free-buf-interrupt-thresh { + description + "Configure Free Buffer Interrupt Threshold + Values"; + container free-buf-interrupt-thresh-set-clear { + description + "Configure Free Buffer Interrupt Threshold set + and clear values"; + leaf set-value { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "set value in percent (must be less than + clear value)"; + } + leaf clear-value { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "clear value in percent (must be more than + set value)"; + } + } + } + container physical-hqos-enable-all { + description + "Configure physical intf Hqos profile"; + leaf physical-hqos-enable { + type uint32; + description + " Physical Hqos profile value (enable:1)"; + } + } + container class-maps { + description + "Configure Class Map Root"; + list class-map { + key "node-name"; + description + "Configure Class Maps"; + leaf node-name { + type xr:Cisco-ios-xr-string; + description + "NodeName"; + } + list class-map-size { + key "location"; + description + "Class Map Size"; + leaf class-map-size { + type Qos-classmap-size; + mandatory true; + description + "ClassMapSize"; + } + leaf location { + type uint32; + description + "Location"; + } + } + } + } + container wred-stats-enable-all { + description + "wred stats enable"; + leaf wred-stats-enable { + type uint32; + description + "WredStatsEnable"; + } + } + container irb-recycle-nodes { + description + "Configure IRB Recycle Bandwidth for Node"; + list irb-recycle-node { + key "node-name"; + description + "IRB Recycle Bandwidth value"; + leaf irb-recycle-node { + type uint32; + mandatory true; + description + "IrbRecycleNode"; + } + leaf node-name { + type xr:Cisco-ios-xr-string; + description + "NodeName"; + } + } + } + leaf qos-stats-push-model-enable { + type uint32; + description + " Qos stats push model profile value"; + } + leaf qos-nif-high-prio-fifo-reserve-percent { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "Percentage to reserve NIF FIFO for High + Priority packets"; + } + } + container oam { + description + "Configure oam sat profile."; + leaf cfm-maid-enable { + type boolean; + description + "Oam CFM Maid enable value"; + } + } + } + container storm-control-combine-policer-bw { + description + "Configure strorm control profile."; + leaf enable { + type boolean; + description + "Enabled or disabled"; + } + } + container fib-scale { + description + "Configure Fib for Scale for noTcam LC."; + container ipv4-unicast-scale-no-tcam { + description + "IPv4 table for NOTCAM LC Scale."; + container scale-ipv4-no-tcam { + description + "Scale for IPv4 table for NoTCAM LC."; + leaf optimized-ipv4-no-tcam { + type string; + description + "Optimized Scale for IPv4 table for NoTCAM LC."; + } + } + } + } + container fib-table { + description + "Configure FIB profile."; + container mpls-table { + description + "Configure mpls protocol"; + container propagate-exceptions { + description + "Configure TTL propagation behaviour"; + list propagate-exception { + key "propagate-exception"; + description + "Propagate TTL on disposition in mixed paths + use case"; + leaf propagate-exception { + type xr:Cisco-ios-xr-string; + description + "none"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 1"; + } + } + } + } + container bgppa { + description + "Configure bgppa enable"; + leaf bgppa-stats-mode { + type Bgppa-stats-mode; + description + "stats mode"; + } + } + container service-over-rsvptes { + description + "Recycle traffic for BGP services going over + RSVP TE transport"; + list service-over-rsvpte { + key "service-over-rsvpte"; + description + "none"; + leaf service-over-rsvpte { + type xr:Cisco-ios-xr-string; + description + "none"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 1"; + } + } + } + container urpf { + description + "Configure Urpf disable"; + leaf urpf-disable { + type boolean; + description + "Enabled or disabled"; + } + } + } + container orchestrated-linecard-reload { + description + "Configure OLR."; + container plane-table-entries { + description + "Plane type"; + list plane-table-entry { + key "plane-name"; + description + "Plane : A or B"; + container rack-table-entries { + description + "Rack Information"; + list rack-table-entry { + key "rack-num"; + description + "Rack Number"; + leaf nodes-list { + type string; + description + "Please enter linecards separated via comma + eg 0,3,6,11,13"; + } + leaf rack-num { + type Plane-rack; + description + "Rack Number"; + } + } + } + leaf plane-name { + type xr:Cisco-ios-xr-string; + description + "Plane Name"; + } + } + } + } + container vrrp-scale { + description + "Configure vrrpscale profile."; + leaf enable { + type boolean; + description + "vrrpscale profile value"; + } + } + container multicast { + description + "Configure multicast properties."; + leaf mode-multicast-l3l2 { + type uint32; + description + "access pw enable with irb mode Mcast L3-L2"; + } + } + container qosqppb { + description + "Configure profile."; + container ipv6-scale { + description + "Configure IPv6 destination short profile"; + leaf ipv6-short { + type boolean; + description + "ipv6 short profile value"; + } + } + container ecn-marking-stats-all { + description + "ecn marking stats value"; + leaf ecn-marking-stats { + type boolean; + description + "Enabled or disabled"; + } + } + leaf qos-stats-collection { + type boolean; + description + "QoS stats push model profile value"; + } + leaf conform-aware-policer { + type boolean; + description + "Configure Conform Aware Policer mode"; + } + leaf gre-exp-cls { + type boolean; + description + "Enable EXP classification for MPLSoGRE"; + } + leaf shared-policer-per-class-stats { + type boolean; + description + "Shared policer (per class stats) mode profile + value"; + } + leaf l2-match-destination-address-ipv4-ipv6 { + type boolean; + description + "Enable L2 match dest address feature"; + } + leaf arp-isis-priority { + type boolean; + description + "Enable ARP/ISIS priority"; + } + leaf ipv6-short-l2-qos-enable { + type boolean; + description + "L2qos short profile value"; + } + } + container gue { + description + "Configure gue udp port"; + container udp { + description + "Configure udp port number"; + leaf ipv4 { + type uint32 { + range "0..64000"; + } + description + "Configure udp dest port for ipv4, 0 will set + to default"; + } + leaf mpls { + type uint32 { + range "0..64000"; + } + description + "Configure udp dest port for mpls, , 0 will set + to default"; + } + leaf ipv6 { + type uint32 { + range "0..64000"; + } + description + "Configure udp dest port for ipv6, 0 will set + to default"; + } + } + } + container qos-cfg { + description + "Configure profile."; + leaf egr-comp-force-set-enable { + type boolean; + description + "Forcefully allows to configure non-unique + egress compensation values ignoring ASIC + limitation (not recommended)."; + } + } + } + container hw-module-profile-config-npu { + description + "none"; + container profile-npu { + description + "Configure profile."; + container npu-native-mode-enable { + description + "Configure NPU to work in Native Mode."; + leaf enable { + type boolean; + description + "NPU Native Mode Enable value"; + } + } + } + } + container hw-module-profile-config-oversubscription { + description + "none"; + container oversub-interfaces { + description + "Configure Oversubscription."; + list oversub-interface { + key "interface-name"; + description + "Oversubscription Interface."; + leaf interface-name { + type xr:Cisco-ios-xr-string; + description + "InterfaceName"; + } + list cos-value { + key "cosvalue"; + description + "Configured cos"; + leaf enable { + type uint32; + description + "Enabled/Disabled"; + } + leaf cosvalue { + type uint32; + description + "cosvalue"; + } + } + } + } + } + container hw-module-profile-config-tcam { + description + "none"; + container tcam { + description + "Configure Tcam."; + container fib-tcam-scale { + description + "Configure Fib scale for Tcam."; + container ipv4-unicast-scale { + description + "IPv4 table for TCAM LC Scale."; + leaf ipv4-scale { + type boolean; + description + "Scale for IPv4 table for TCAM LC."; + } + } + } + } + container profile-tcam { + description + "Configure Tcam profile."; + container tcam-table { + description + "Configure profile for TCAM LC cards"; + container fib-table { + description + "FIB table for TCAM LC cards"; + container ipv4-address { + description + "IPv4 table for TCAM LC cards"; + container ipv4-unicast { + description + "Unicast table for TCAM LC cards"; + container ipv4-unicast-prefix-lengths { + description + "IPv4 Unicast prefix "; + list ipv4-unicast-prefix-length { + key "prefix-length"; + description + "IPv4 Unicast prefix length"; + leaf ipv4-unicast-prefix-percent { + type string; + units "percentage"; + description + "curve out percentage of TCAM table + entries"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "prefix length"; + } + } + } + leaf ipv4-unicast-percent { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "curve out percentage of TCAM table entries"; + } + } + } + container ipv6-address { + description + "IPv6 table for TCAM LC cards"; + container ipv6-unicast { + description + "Unicast table for TCAM LC cards"; + container ipv6-unicast-prefix-lengths { + description + "IPv6 Unicast prefix "; + list ipv6-unicast-prefix-length { + key "prefix-length"; + description + "IPv6 Unicast prefix length"; + leaf ipv6-unicast-prefix-percent { + type string; + units "percentage"; + description + "curve out percentage of TCAM table + entries"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "prefix length"; + } + } + } + leaf ipv6-unicast-percent { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "curve out percentage of TCAM table entries"; + } + } + } + } + container acl-prefix { + description + "ACL table to configure"; + leaf acl-prefix-percent { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "Percent to configure"; + } + } + leaf lpts-internal { + type boolean; + description + "Switch to internal TCAM"; + } + } + container profile-tcam-key { + description + "Configure Tcam Profile"; + container key-format { + description + "none"; + container key-format-acl-table { + description + "Configure acl profile"; + container ipv6-acl-tables { + description + "Configure ipv6 acl profile"; + list ipv6-acl-table { + key "location-string location-id"; + description + "Configure format for ipv6 acl profile"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location string (all) if for all LCs"; + } + leaf location-id { + type uint32; + description + "Location ID hex to Decimal 0xffff for all"; + } + leaf source-addr { + type uint32; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf destination-addr { + type uint32; + description + "Destination Address"; + } + leaf dest-port { + type uint32; + description + "Destination Port"; + } + leaf next-hdr { + type uint32; + description + "Next Header Type"; + } + leaf tcp-flag { + type uint32; + description + "TCP Flags"; + } + leaf payload-len { + type uint32; + description + "Payload Length"; + } + leaf traff-class { + type uint32; + description + "Traffic Class"; + } + leaf frag-bit { + type uint32; + description + "Fragment Bit"; + } + leaf udf1 { + type string; + description + "UDF name"; + } + leaf udf2 { + type string; + description + "UDF name"; + } + leaf udf3 { + type string; + description + "UDF name"; + } + leaf udf4 { + type string; + description + "UDF name"; + } + leaf udf5 { + type string; + description + "UDF name"; + } + leaf udf6 { + type string; + description + "UDF name"; + } + leaf udf7 { + type string; + description + "UDF name"; + } + leaf udf8 { + type string; + description + "UDF name"; + } + leaf en-capture { + type uint32; + description + "Enable Capture"; + } + leaf en-ttl { + type uint32; + description + "Enable Setting TTL"; + } + leaf en-match { + type uint32; + description + "Enable Matching TTL"; + } + leaf en-share-acl { + type uint32; + description + "Enable Non Shared Interface ACL"; + } + leaf common-acl { + type uint32; + description + "Enable Common-ACL"; + } + } + } + container ipv4-acl-tables { + description + "Configure ipv4 acl profile"; + list ipv4-acl-table { + key "location-string location-id"; + description + "Configure format for ipv4 acl profile"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location string (all) if for all LCs"; + } + leaf location-id { + type uint32; + description + "Location ID hex to Decimal 0xffff for all"; + } + leaf source-addr { + type uint32; + description + "Source Address"; + } + leaf destination-addr { + type uint32; + description + "Destination Address"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf dest-port { + type uint32; + description + "Destination Port"; + } + leaf prot-type { + type uint32; + description + "Protocol Type"; + } + leaf tcp-flag { + type uint32; + description + "TCP Flags"; + } + leaf pack-len { + type uint32; + description + "Packet Length"; + } + leaf frag-bit { + type uint32; + description + "Fragment Bit"; + } + leaf precedence { + type uint32; + description + "Precedence"; + } + leaf port-range { + type uint32; + description + "PortRange"; + } + leaf udf1 { + type string; + description + "UDF name"; + } + leaf udf2 { + type string; + description + "UDF name"; + } + leaf udf3 { + type string; + description + "UDF name"; + } + leaf udf4 { + type string; + description + "UDF name"; + } + leaf udf5 { + type string; + description + "UDF name"; + } + leaf udf6 { + type string; + description + "UDF name"; + } + leaf udf7 { + type string; + description + "UDF name"; + } + leaf udf8 { + type string; + description + "UDF name"; + } + leaf en-capture { + type uint32; + description + "Enable Capture"; + } + leaf en-ttl { + type uint32; + description + "Enable Setting TTL"; + } + leaf en-match { + type uint32; + description + "Enable Matching TTL"; + } + leaf en-share-acl { + type uint32; + description + "Enable Non Shared Interface ACL"; + } + leaf common-acl { + type uint32; + description + "Enable Common-ACL"; + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper-sub1.yang new file mode 100644 index 000000000..0e2b6136a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper-sub1.yang @@ -0,0 +1,150 @@ +submodule Cisco-IOS-XR-fia-internal-tcam-oper-sub1 { + belongs-to Cisco-IOS-XR-fia-internal-tcam-oper { + prefix Cisco-IOS-XR-fia-internal-tcam-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fia-internal-tcam package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-09 { + description + "Updated type fia-max-asic-instances to fia-max-npu-instances + 2022-04-28 + Added TCAM utilization support + 2022-02-16 + Added key for db-id, bank-id, npu-id. Updated internal-tcam-resources/external-tcam-resources container and added container for maintaining NPU lists. Updated task-id"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FIA-TCAM-DB { + description + "FIA TCAM DB"; + leaf db-id { + type uint32; + description + "Unique Identifier for database"; + } + leaf db-inuse-entries { + type uint32; + description + "Number of elements having valid values"; + } + leaf db-prefix { + type string; + description + "Prefix for database categories"; + } + } + + grouping FIA-TCAM-BANK { + description + "FIA TCAM BANK"; + leaf bank-id { + type string; + description + "Unique Identifier for Bank"; + } + leaf bank-key-size { + type string; + description + "Size of Bank Key"; + } + leaf bank-free-entries { + type uint32; + description + "No of Entries not having bank data"; + } + leaf bank-inuse-entries { + type uint32; + description + "No of Entries having bank data"; + } + leaf owner { + type string; + description + "Name of Owner for this tcam bank"; + } + leaf nof-dbs { + type uint32; + description + "Count of database entries of fia tcam bank"; + } + list bank-db { + key "db-id"; + description + "Database info of fia tcam bank"; + uses FIA-TCAM-DB; + } + } + + grouping FIA-TCAM-USAGE { + description + "FIA TCAM USAGE"; + leaf comp-name { + type string; + description + "component using the NPU TCAM"; + } + leaf tcam-entries-free { + type uint32; + description + "Number of Free entries in npu tcam"; + } + leaf tcam-entries-used { + type uint32; + description + "Number of entries used by the component"; + } + } + + grouping FIA-NPU-TCAM { + description + "FIA NPU TCAM"; + leaf npu-id { + type uint32; + description + "Unique Identifier for npu tcam"; + } + list tcam-usage { + key "comp-name"; + description + "Details of fia tcam resource"; + uses FIA-TCAM-USAGE; + } + list tcam-bank { + key "bank-id"; + description + "Details of fia tcam bank"; + uses FIA-TCAM-BANK; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper.yang new file mode 100644 index 000000000..d4a9236ba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fia-internal-tcam-oper.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-fia-internal-tcam-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fia-internal-tcam-oper"; + prefix fia-internal-tcam-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fia-internal-tcam-oper-sub1 { + revision-date 2022-07-09; + } + + 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 fia-internal-tcam package operational data. + + This module contains definitions + for the following management objects: + controller: Controller Resources + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-09 { + description + "Updated type fia-max-asic-instances to fia-max-npu-instances + 2022-04-28 + Added TCAM utilization support + 2022-02-16 + Added key for db-id, bank-id, npu-id. Updated internal-tcam-resources/external-tcam-resources container and added container for maintaining NPU lists. Updated task-id"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fia-max-npu-instances { + type uint32 { + range "0..255"; + } + description + "Fia max npu instances"; + } + + container controller { + config false; + description + "Controller Resources"; + container dpa { + description + "Controller DPA operational data"; + container nodes { + description + "DPA data for available nodes"; + list node { + key "node-name"; + description + "DPA operational data for a particular node"; + container external-tcam-resources { + description + "External TCAM Resource Information"; + container npu-instance-exts { + description + "instance table for tcam resources"; + list npu-instance-ext { + key "instance"; + description + "Instance number for tcam resources"; + leaf instance { + type Fia-max-npu-instances; + description + "Asic instance"; + } + uses FIA-NPU-TCAM; + } + } + } + container internal-tcam-resources { + description + "Internal TCAM Resource Information"; + container npu-instance-ints { + description + "instance table for tcam resources"; + list npu-instance-int { + key "instance"; + description + "Instance number for tcam resources"; + leaf instance { + type Fia-max-npu-instances; + description + "Asic instance"; + } + uses FIA-NPU-TCAM; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-cfg.yang new file mode 100644 index 000000000..a6eb82f5f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-cfg.yang @@ -0,0 +1,211 @@ +module Cisco-IOS-XR-fib-common-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fib-common-cfg"; + prefix fib-common-cfg; + + 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 fib-common package configuration. + + This module contains definitions + for the following management objects: + fib: CEF configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-28 { + description + "Added cef hierarchical-load-balancing configuration + 2021-09-14 + Leaf frr-follow-bgp is removed due to deprecation"; + semver:module-version "2.0.0"; + } + revision 2021-07-09 { + description + "Added PI FIB Telemetry Hopeless Retry and OOR"; + semver:module-version "1.1.0"; + } + revision 2020-07-23 { + description + "obsolete frr-follow-bgp-pic + 2020-07-21 + Added Support for Proactive ARP and ND"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fib-hlb-mode { + type enumeration { + enum "ecmp" { + value 1; + description + "HLB Mode ECMP"; + } + enum "ucmp" { + value 2; + description + "HLB Mode UCMP"; + } + } + description + "Fib hlb mode"; + } + + typedef Fib-pbts-forward-class { + type union { + type enumeration { + enum "any" { + value 8; + description + "Any class"; + } + } + type uint32 { + range "0..8"; + } + } + description + "Fib pbts forward class"; + } + + typedef Fib-pbts-fallback { + type enumeration { + enum "list" { + value 1; + description + "Fallback to class number list"; + } + enum "any" { + value 2; + description + "Fallback to any class"; + } + enum "drop" { + value 3; + description + "Fallback to drop"; + } + } + description + "Fib pbts fallback"; + } + + container fib { + description + "CEF configuration"; + container pbts-forward-class-fallbacks { + description + "PBTS class configuration"; + list pbts-forward-class-fallback { + key "forward-class-number"; + description + "Set PBTS class for fallback"; + leaf forward-class-number { + type Fib-pbts-forward-class; + description + "PBTS forward class number"; + } + leaf fallback-type { + type Fib-pbts-fallback; + mandatory true; + description + "Set PBTS fallback type"; + } + leaf-list fallback-class-number-array { + type uint32 { + range "0..7"; + } + max-elements "7"; + description + "Set PBTS fallback class number array"; + } + } + } + container platform { + description + "FIB platform parameters"; + container label-switched-multicast { + description + "Options for label-switched-multicast parameters"; + leaf frr-holdtime { + type uint32 { + range "3..180"; + } + units "second"; + description + "Set time to keep FRR slots programmed post FRR"; + } + } + } + container hierarchical-loadbalancing { + description + "Hierarchical Load Balancing"; + leaf hlb-mode { + type Fib-hlb-mode; + description + "HLB Mode"; + } + leaf hlb-num-paths { + type uint32 { + range "1..128"; + } + description + "HLB NumPaths"; + } + } + leaf auto-hash-recover { + type boolean; + description + "Set option for automatcially recovering + consistent-hashing state on interface up"; + } + leaf prefer-aib-routes { + type boolean; + description + "Set options for adjacency routes overriding RIB + routes"; + } + leaf proactive-arp-nd { + type empty; + description + "Enable Proactive ARP and ND"; + } + leaf encap-sharing-disable { + type boolean; + description + "Set true to disable encapsulation sharing"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub1.yang new file mode 100644 index 000000000..9f7cb06d8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub1.yang @@ -0,0 +1,519 @@ +submodule Cisco-IOS-XR-fib-common-oper-sub1 { + belongs-to Cisco-IOS-XR-fib-common-oper { + prefix Cisco-IOS-XR-fib-common-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fib-common package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mgmt-fib-mpls-frr-state { + type enumeration { + enum "partial" { + value 0; + description + "Partial"; + } + enum "active" { + value 1; + description + "Active"; + } + enum "ready" { + value 2; + description + "Ready"; + } + enum "complete" { + value 3; + description + "Complete"; + } + enum "any" { + value 4; + description + "Any"; + } + } + description + "MPLS FRR entry state"; + } + + typedef Mgmt-fib-mpls-lsp-role { + type enumeration { + enum "head" { + value 0; + description + "Head"; + } + enum "midpoint" { + value 1; + description + "Midpoint"; + } + } + description + "MPLS FRR entry role"; + } + + grouping FIB-MPLS-FRR-DB-MCAST-LEGS { + description + "FIB MPLS FRR DB MCAST LEGS"; + container frr-entry-id { + description + "FRR entry ID"; + uses FIB-MPLS-FRR-DB-ENTRY-GEN-ID; + } + leaf tunnel-interface-name { + type xr:Interface-name; + description + "Tunnel interface"; + } + leaf input-label { + type uint32; + description + "Input label"; + } + leaf outgoing-interface { + type xr:Interface-name; + description + "Outgoing interface"; + } + leaf outgoing-label { + type uint32; + description + "Outgoing label"; + } + leaf frr-interface-name { + type xr:Interface-name; + description + "FRR interface"; + } + leaf frr-label { + type uint32; + description + "FRR output label"; + } + leaf entry-frr-state { + type Mgmt-fib-mpls-frr-state; + description + "MPLS FRR entry state"; + } + leaf frr-next-hop-ipv4-address { + type inet:ipv4-address; + description + "Next hop IPv4 address"; + } + leaf is-mldp-lsp { + type boolean; + description + "MLDP or P2MP-TE"; + } + } + + grouping FIB-MPLS-FRR-DB-ENTRY-MID-ID { + description + "FIB MPLS FRR DB ENTRY MID ID"; + leaf source-address { + type inet:ipv4-address; + description + "Source IPv4 address"; + } + leaf lspid { + type uint32; + description + "LSP ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + } + + grouping FIB-MPLS-FRR-DB-ENTRY-HEAD-ID { + description + "FIB MPLS FRR DB ENTRY HEAD ID"; + leaf destination-prefix { + type inet:ipv4-address; + description + "Destination prefix"; + } + leaf destination-prefix-length { + type uint32; + description + "Destination prefix length"; + } + } + + grouping FIB-MPLS-FRR-DB-ENTRY-GEN-ID { + description + "FIB MPLS FRR DB ENTRY GEN ID"; + container head { + when "../role = 'head'" { + description + "../Role = 'Head'"; + } + description + "head"; + uses FIB-MPLS-FRR-DB-ENTRY-HEAD-ID; + } + container midpoint { + when "../role = 'midpoint'" { + description + "../Role = 'Midpoint'"; + } + description + "midpoint"; + uses FIB-MPLS-FRR-DB-ENTRY-MID-ID; + } + leaf role { + type Mgmt-fib-mpls-lsp-role; + description + "Role"; + } + } + + grouping FIB-MPLS-FRR-DB-ENTRY { + description + "FIB MPLS FRR DB ENTRY"; + container frr-entry-id { + description + "FRR entry ID"; + uses FIB-MPLS-FRR-DB-ENTRY-GEN-ID; + } + leaf tunnel-interface-name { + type xr:Interface-name; + description + "Tunnel interface"; + } + leaf input-label { + type uint32; + description + "Input label"; + } + leaf outgoing-interface { + type xr:Interface-name; + description + "Outgoing interface"; + } + leaf outgoing-label { + type uint32; + description + "Outgoing label"; + } + leaf frr-interface-name { + type xr:Interface-name; + description + "FRR interface"; + } + leaf frr-label { + type uint32; + description + "FRR output label"; + } + leaf entry-frr-state { + type Mgmt-fib-mpls-frr-state; + description + "MPLS FRR entry state"; + } + leaf frr-next-hop-ipv4-address { + type inet:ipv4-address; + description + "Next hop IPv4 address"; + } + leaf is-mldp-lsp { + type boolean; + description + "MLDP or P2MP-TE"; + } + leaf is-multicast-tunnel { + type boolean; + description + "Multicast tunnel"; + } + leaf multicast-tunnel-legs { + type uint32; + description + "Number of legs in MCAST tunnel"; + } + list multicast-leg { + description + "MCAST legs"; + uses FIB-MPLS-FRR-DB-MCAST-LEGS; + } + } + + grouping FIB-MPLS-FRR-DB-SUM { + description + "FIB MPLS FRR DB SUM"; + leaf active { + type uint32; + description + "Number of FRR rewrites in Active state"; + } + leaf ready { + type uint32; + description + "Number of FRR rewrites in Ready state"; + } + leaf partial { + type uint32; + description + "Number of FRR rewrites in Partial state"; + } + leaf other { + type uint32; + description + "Number of FRR rewrites in an unrecognized state"; + } + } + + grouping FIB-MPLS-SH-TUN-INFO { + description + "Information about TE-head tunnel LI"; + leaf tunnel-interface-name { + type xr:Interface-name; + description + "Tunnel interface"; + } + leaf tunnel-local-label { + type uint32; + description + "Tunnel Local label"; + } + leaf tunnel-fwd-class { + type uint8; + description + "Tunnel Forward Class"; + } + leaf tunnel-load-metric { + type uint8; + description + " Tunnel Load Metric"; + } + leaf tunnel-is-srte { + type boolean; + description + "Is Tunnel SRTE"; + } + leaf tunnel-resolution-incomplete { + type boolean; + description + "Tunnel head resolution is incomplete"; + } + leaf tunnel-resolution-inconsistent { + type boolean; + description + "Tunnel head resolition is inconsitent b/w TEhead + and Local label"; + } + leaf tunnel-is-programmed-to-drop { + type boolean; + description + "Is Tunnel programmed as drop"; + } + } + + grouping FIB-MPLS-TIMESPEC { + description + "FIB MPLS TIMESPEC"; + leaf seconds { + type int32; + units "second"; + description + "Seconds part of time valueiin UTC"; + } + leaf nanoseconds { + type int32; + units "nanosecond"; + description + "Nanoseconds part of time value"; + } + } + + grouping FIB-MPLS-FRR-EVENT { + description + "FIB MPLS FRR EVENT"; + container start-time { + description + "Time of FRR event processing start, Seconds in + UTC, and Nano Seconds"; + uses FIB-MPLS-TIMESPEC; + } + leaf protected-frr-interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf next-hop { + type uint32; + description + "Next Hop"; + } + leaf number-of-rewrites-affected { + type uint32; + description + "Number of rewrites affected"; + } + leaf switching-time-nsecs { + type uint32; + units "nanosecond"; + description + "Time to switch rewrites [nsecs]"; + } + leaf main-processing { + type uint32; + description + "Main Processing for FRR"; + } + leaf fast-bundle-member-down-interface { + type uint32; + description + "Fast Bundle Member Down Interface"; + } + leaf frr-event-node-id { + type xr:Node-id; + description + "Node on which the FRR event happened"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub2.yang new file mode 100644 index 000000000..61770edcf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub2.yang @@ -0,0 +1,858 @@ +submodule Cisco-IOS-XR-fib-common-oper-sub2 { + belongs-to Cisco-IOS-XR-fib-common-oper { + prefix Cisco-IOS-XR-fib-common-oper; + } + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fib-common-oper-sub1 { + revision-date 2022-10-17; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fib-common package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Next-hop { + type enumeration { + enum "tx" { + value 0; + description + "TX"; + } + enum "rx" { + value 1; + description + "RX"; + } + enum "special" { + value 2; + description + "Special"; + } + } + description + "MPLS Forwarding Next Hop Type"; + } + + typedef Proto { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4"; + } + enum "ipv6" { + value 1; + description + "IPv6"; + } + enum "mpls" { + value 2; + description + "MPLS"; + } + } + description + "MPLS Forwarding Protocol Type"; + } + + grouping MPLS-FRR-DB-ENTRY { + description + "MPLS FRR DB ENTRY"; + container frr-db { + description + "FRR DB"; + uses FIB-MPLS-FRR-DB-ENTRY; + } + leaf outgoing-lable-string { + type string; + description + "Output label in string format"; + } + leaf frr-lable-string { + type string; + description + "FRR label in string format"; + } + } + + grouping MPLS-SH-TEHEAD { + description + "Information about TE tunnel head"; + container tunnel-info { + description + "Tunnel head information"; + uses FIB-MPLS-SH-TUN-INFO; + } + container fwdg { + description + "Tunnel forwarding information"; + uses MPLS-SH-LEAF; + } + } + + grouping MPLS-LABEL-SECURITY-SUMMARY { + description + "MPLS LABEL SECURITY SUMMARY"; + leaf rpf-drops { + type uint64; + description + "RPF drops"; + } + leaf multi-label-drops { + type uint64; + description + "Multi-label drops"; + } + } + + grouping MPLS-LABEL-SECURITY-INTF { + description + "MPLS LABEL SECURITY INTF"; + leaf rpf-enabled { + type boolean; + description + "RPF is enabled on interface"; + } + leaf rpf-supported { + type boolean; + description + "RPF stats supported per interface"; + } + leaf mld-enabled { + type boolean; + description + "Multi-label drop is enabled on interface"; + } + leaf mld-supported { + type boolean; + description + "Multi-label drop counters are supported per + interface"; + } + leaf rpf-drops { + type uint64; + description + "RPF drops"; + } + leaf multi-label-drops { + type uint64; + description + "Multi-label drops"; + } + leaf rpfifh { + type xr:Interface-name; + description + "RPF interface handle"; + } + } + + grouping MPLS-MCAST-INFO { + description + "Information for mpls multicast entries"; + leaf multicast-mol-base-flags { + type uint32; + description + "MOL base flags"; + } + leaf multicast-mol-flags { + type uint16; + description + "MOL flags"; + } + leaf multicast-mol-referance-count { + type uint16; + description + "MOL refcount"; + } + leaf multicast-tunnel-interface-handler { + type xr:Interface-name; + description + "multicast mpls tunnel"; + } + leaf multicast-tunnel-id { + type uint32; + description + "multicast mpls P2MP-TE tunnel id or MLDP Tunnel + LSMID on all nodes"; + } + leaf multicast-tunnel-next-hop-information { + type uint32; + description + "multicast nhinfo for p2mp TE Head"; + } + leaf multicast-tunnel-lspvif { + type uint32; + description + "multicast LSPVIF for MLDP Tunnels"; + } + leaf multicast-mpls-output-paths { + type uint16; + description + "num multicast mpls output paths "; + } + leaf multicast-mpls-protocol-output-paths { + type uint16; + description + "num multicast mpls prot output paths "; + } + leaf multicast-mpls-local-output-paths { + type uint16; + description + "num multicast mpls local output paths"; + } + leaf multicast-rpf-id { + type uint32; + description + "The multicast RPF-ID "; + } + leaf multicast-encap-id { + type uint32; + description + "The multicast ENCAP-ID "; + } + leaf multicast-platform-data-length { + type uint8; + description + "The multicast platform data len"; + } + leaf multicast-platform-data { + type yang:hex-string; + description + "The multicast platform data"; + } + } + + grouping MPLS-LDI-INFO { + description + "Detailed load sharing information for mpls table + entries"; + leaf ldi-hardware-information { + type yang:hex-string; + description + "Hardware info"; + } + } + + grouping MPLS-ADJ-EXACT-ROUTE-HASH-INFO { + description + "MPLS Adj Exact-Route Hash info"; + leaf hash-index-is-valid { + type boolean; + description + "Is Hash Index valid?"; + } + leaf hash-index { + type uint8; + description + "Hash Index value"; + } + } + + grouping MPLS-FWD-INFO { + description + "MPLS FWD INFO"; + leaf l3-mtu { + type uint32; + description + "L3 MTU"; + } + leaf total-encapsulation-size { + type uint32; + description + "Total encapsulation size: L2 + MPLS"; + } + leaf mac-size { + type uint32; + description + "Length of L2 encapsulation"; + } + leaf transmit-number-of-packets-switched { + type uint64; + description + "Number of packets switched"; + } + leaf transmit-number-of-bytes-switched { + type uint64; + units "byte"; + description + "Number of Bytes switched"; + } + leaf status { + type int32; + description + "Status"; + } + leaf next-hop-interface { + type xr:Interface-name; + description + "Next hop interface"; + } + leaf next-hop-protocol { + type Proto; + description + "The address family (V4/V6) "; + } + leaf next-hop-string { + type string; + description + "Next hop address in string format"; + } + list label-stack { + description + "Label stack"; + leaf entry { + type uint32; + description + "Label stack"; + } + } + } + + grouping MPLS-ADJ-INFO { + description + "MPLS ADJ INFO"; + container label-information-detail { + description + "Detail label info"; + uses MPLS-FWD-INFO; + } + container exact-route-hash-info { + description + "Path's Hash info in case of exact-route command"; + uses MPLS-ADJ-EXACT-ROUTE-HASH-INFO; + } + leaf label-information-type { + type uint32; + description + "Label-Info type"; + } + leaf local-label { + type uint32; + description + "Local label"; + } + leaf outgoing-label { + type uint32; + description + "Outgoing label"; + } + leaf mpls-adjacency-flags { + type uint32; + description + "MPLS Adjacency flags"; + } + leaf tunnel-id-present { + type boolean; + description + "Tunnel id present?"; + } + leaf label-information-path-index { + type uint32; + description + "LabelInformationPathIndex"; + } + leaf label-information-next-hop-type { + type Next-hop; + description + "NHinfo Type"; + } + leaf label-information-next-hop-protocol { + type Proto; + description + "The address family (v4/v6) "; + } + leaf tx-bytes { + type uint64; + units "byte"; + description + "Bytes transmitted per LSP"; + } + leaf tx-packets { + type uint64; + description + "Packets transmitted per LSP"; + } + leaf outgoing-interface { + type string; + description + "Output Interface in string format"; + } + leaf outgoing-physical-interface { + type string; + description + "Output Physical Interface in string format"; + } + leaf outgoing-parent-interface { + type string; + description + "Output Parent Interface in string format"; + } + leaf tunnel-interface { + type string; + description + "Tunnel Interface in string format"; + } + leaf outgoing-label-string { + type string; + description + "Output Label in string format"; + } + leaf prefix-or-id { + type string; + description + "Prefix Or ID"; + } + leaf label-information-next-hop-string { + type string; + description + "Next hop address in string format"; + } + leaf label-information-route-version { + type uint64; + description + "The version of the route"; + } + leaf label-information-time-in-milli-seconds { + type uint64; + description + "The time of last update in msec"; + } + } + + grouping MPLS-SH-LEAF { + description + "Information about label leaf"; + container ldi-information { + description + "LDI-info in FIB leaf"; + uses MPLS-LDI-INFO; + } + container multicast-information { + description + "The multicast info"; + uses MPLS-MCAST-INFO; + } + leaf leaf-local-label { + type uint32; + description + "Local label"; + } + leaf eos-bit { + type uint32; + description + "EOS bit"; + } + leaf hardware-information { + type yang:hex-string; + description + "Hardware info"; + } + leaf leaf-referance-count { + type uint32; + description + "Number of references to the leaf"; + } + leaf leaf-flags { + type uint32; + description + "The leaf flags"; + } + leaf path-list-referance-count { + type uint32; + description + "Number of references to the pathlist"; + } + leaf path-list-flags { + type uint32; + description + "The pathlist flags"; + } + leaf ldi-referance-count { + type uint32; + description + "Number of references to the LDI"; + } + leaf ldi-flags { + type uint32; + description + "The LDI flags"; + } + leaf ldi-type { + type uint32; + description + "The LDI type"; + } + leaf ldi-pointer { + type uint32; + description + "The pointer to the LDI"; + } + leaf lw-ldi-type { + type uint32; + description + "The LW-LDI type"; + } + leaf lw-ldi-pointer { + type uint32; + description + "The pointer to the LW-LDI"; + } + leaf lw-ldi-refernace-count { + type uint32; + description + "The LW-LDI refcounter"; + } + leaf lw-shared-ldi-pointer { + type uint32; + description + "The pointer to the shared LDI in LW-LDI"; + } + leaf lspa-flags { + type uint32; + description + "The LSPA flags"; + } + leaf afi-table-id { + type uint32; + description + "The AFI table ID"; + } + leaf multicast-label { + type boolean; + description + "The unicast or multicast label"; + } + leaf leaf-time-in-milli-seconds { + type uint64; + description + "The time of last update in msec"; + } + leaf total-number-of-packets-switched { + type uint64; + description + "The total number of packets switched on all + paths"; + } + leaf total-number-of-bytes-switched { + type uint64; + units "byte"; + description + "The total number of bytes switched on all paths"; + } + list label-information { + description + "Label-infos in FIB leaf"; + uses MPLS-ADJ-INFO; + } + } + + grouping MPLS-FWDING-SUMMARY { + description + "MPLS FWDING SUMMARY"; + leaf ipv4-imposition-entries { + type uint32; + description + "Number of IPv4 imposition entries"; + } + leaf reserved-label-entries { + type uint32; + description + "Number of reserved label entries"; + } + leaf label-switched-entries { + type uint32; + description + "Number of label swap/disposition entries"; + } + leaf protected-label-switched-entries { + type uint32; + description + "Number of FRR protected label swap/disposition + entries"; + } + leaf frr-ready-label-switched-entries { + type uint32; + description + "Number of FRR Ready label swap/disposition + entries"; + } + leaf frr-active-label-switched-entries { + type uint32; + description + "Number of FRR Active label swap/disposition + entries"; + } + leaf deleted-stale-entries { + type uint32; + description + "Number of delete stale label entries"; + } + leaf te-head-entries { + type uint32; + description + "Number of TE tunnel head imposition entries"; + } + leaf te-frr-head-entries { + type uint32; + description + "Number of TE FRR tunnel head imposition entries"; + } + leaf te-frr-interface-entries { + type uint32; + description + "Number of TE FRR protected interface entries"; + } + leaf te-frr-next-hop-entries { + type uint32; + description + "Number of TE FRR protected next-hop entries"; + } + leaf te-mid-points-entries { + type uint32; + description + "Number of TE MidPoints forwarding entries"; + } + leaf te-frr-mid-points-entries { + type uint32; + description + "Number of TE FRR MidPoints forwarding entries"; + } + leaf te-internal-entries { + type uint32; + description + "Number of TE internal forwarding entries"; + } + leaf te-frr-internal-entries { + type uint32; + description + "Number of TE internal forwarding entries"; + } + leaf total-forwarding-updates { + type uint32; + description + "Total forwarding updates from LSD to LFDs"; + } + leaf total-forwarding-update-messages { + type uint32; + description + "Total forwarding update messages from LSD to + LFDs"; + } + leaf total-p2mp-forwarding-updates { + type uint32; + description + "Total forwarding updates from MRIB to LFDs"; + } + leaf total-p2mp-forwarding-added-or-modify-messages { + type uint32; + description + "Total p2mp forwarding add/modify messages from + MRIB to LFDs"; + } + leaf total-p2mp-forwarding-delete-messages { + type uint32; + description + "Total p2mp forwarding del messages from MRIB to + LFDs"; + } + leaf total-p2mp-forwarding-drop-messages { + type uint32; + description + "Total p2mp forwarding messages dropped from MRIB + to LFDs"; + } + leaf total-p2mp-iir-forwarding-drop-messages { + type uint32; + description + "Total IIR triggered p2mp forwarding MRIB + messages dropped"; + } + leaf lowest-label { + type uint32; + description + "Lowest label in use"; + } + leaf highest-label { + type uint32; + description + "Highest Label in use"; + } + leaf ignore-protect { + type uint32; + description + "Number of TE tunnels treated as non-protected"; + } + leaf mte-head-entries { + type uint32; + description + "Number of MTE tunnel head entries"; + } + leaf mte-ll-entries { + type uint32; + description + "Number of MTE local entries"; + } + leaf mte-midpoint-entries { + type uint32; + description + "Number of MTE midpoint entries"; + } + leaf global-dropped-packets { + type uint64; + description + "Number of global FIB packets dropped"; + } + leaf global-fragmented-packets { + type uint64; + description + "Number of global FIB packets fragmented"; + } + leaf global-failed-lookups { + type uint64; + description + "Number of global failed lookups"; + } + leaf lrpf-entries { + type uint32; + description + "Number of labels with RPF"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub3.yang new file mode 100644 index 000000000..ec1f77086 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub3.yang @@ -0,0 +1,292 @@ +submodule Cisco-IOS-XR-fib-common-oper-sub3 { + belongs-to Cisco-IOS-XR-fib-common-oper { + prefix Cisco-IOS-XR-fib-common-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fib-common package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Oc-encapsulation-header { + type enumeration { + enum "oc-encap-type-gre" { + value 0; + description + "oc encap type gre"; + } + enum "oc-encap-type-ipv4" { + value 1; + description + "oc encap type ipv4"; + } + enum "oc-encap-type-ipv6" { + value 2; + description + "oc encap type ipv6"; + } + enum "oc-encap-type-mpls" { + value 3; + description + "oc encap type mpls"; + } + enum "oc-encap-type-vxlan" { + value 4; + description + "oc encap type vxlan"; + } + } + description + "Oc encapsulation header"; + } + + grouping FIB-OC-AFT-ERROR-STATE { + description + "FIB OC AFT ERROR STATE"; + leaf is-in-error-state { + type boolean; + description + "Error State"; + } + } + + grouping FIB-OC-AFT-OOR-STATE { + description + "FIB OC AFT OOR STATE"; + leaf is-in-oor-state { + type boolean; + description + "OOR State"; + } + } + + grouping FIB-OC-AFT-NEXTHOP-V2 { + description + "FIB OC AFT NEXTHOP V2"; + leaf pfx { + type string; + description + "IP prefix or MPLS label"; + } + leaf encap-type { + type Oc-encapsulation-header; + description + "Encapsulation type"; + } + leaf if-hdl { + type xr:Interface-name; + description + "Interface handle"; + } + leaf pid { + type uint64; + description + "Next-hop Program ID"; + } + leaf dip { + type string; + description + "Destination IP address for the encap packet"; + } + leaf sip { + type string; + description + "Source IP address for the encap packet"; + } + leaf-list pushed-label-stack { + type uint32; + description + "Pushed MPLS label stack"; + } + } + + grouping FIB-OC-AFT-NH-GROUP-STATE-V2 { + description + "FIB OC AFT NH GROUP STATE V2"; + leaf bckup-grp-id { + type uint64; + description + "Backup group ID"; + } + leaf pid { + type uint64; + description + "Next-hop Group Program ID"; + } + leaf-list nhid { + type uint64; + description + "List of next-hop IDs"; + } + leaf-list wt-of-nh { + type uint64; + description + "List of next-hop Weights"; + } + leaf-list fwd-class { + type uint8; + description + "List of active forward classes"; + } + } + + grouping FIB-OC-AFT-COND-GRP-STATE-V2 { + description + "FIB OC AFT COND GRP STATE V2"; + leaf nhg-id { + type uint64; + description + "Nexthop Group ID of subset of nh's for this fwd + class"; + } + leaf-list interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + + grouping FIB-OC-AFT-PRFX-STATE-V2 { + description + "FIB OC AFT PRFX STATE V2"; + leaf grp-id { + type uint64; + description + "Next-hop Group ID"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub4.yang new file mode 100644 index 000000000..431dd543d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub4.yang @@ -0,0 +1,6802 @@ +submodule Cisco-IOS-XR-fib-common-oper-sub4 { + belongs-to Cisco-IOS-XR-fib-common-oper { + prefix Cisco-IOS-XR-fib-common-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fib-common package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fib-mpls-llc-entry-bag { + type enumeration { + enum "fib-mpls-llc-bag-type-xc" { + value 1; + description + "fib mpls llc bag type xc"; + } + enum "fib-mpls-llc-bag-type-pfx" { + value 2; + description + "fib mpls llc bag type pfx"; + } + enum "fib-mpls-llc-bag-type-lsm" { + value 3; + description + "fib mpls llc bag type lsm"; + } + enum "fib-mpls-llc-bag-type-max" { + value 4; + description + "fib mpls llc bag type max"; + } + } + description + "Fib mpls llc entry bag"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address "; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Srv6-op-mode { + type enumeration { + enum "none" { + description + "No mode"; + } + enum "srv6-base" { + description + "SRv6 base"; + } + enum "srv6-micro-segment" { + description + "SRv6 micro-segment"; + } + } + description + "SRv6 operational mode"; + } + + typedef Fib-sh-policy-bag { + type enumeration { + enum "none" { + description + "None type"; + } + enum "saf" { + description + "Source Address Filtering type"; + } + } + description + "FIB Policy Bag Type"; + } + + typedef Fib-sh-rec-nh-state { + type enumeration { + enum "resolved" { + value 0; + description + "REC NH is resolved"; + } + enum "unresolved" { + value 1; + description + "REC NH is unresolved"; + } + enum "drop" { + value 2; + description + "REC NH is pointing drop"; + } + } + description + "Fib sh rec nh state"; + } + + typedef Fib-nhinfo-ext-bag { + type enumeration { + enum "replicated-nh-info" { + description + "Replicated NHINFO"; + } + enum "shared-nh-info" { + description + "Shared NHINFO"; + } + enum "tunnel-endpoint" { + description + "Tunnel Endpoint"; + } + } + description + "FIB NHINFO extension type"; + } + + typedef Fib-bag-adj-pref { + type enumeration { + enum "unspecified" { + description + "Preference is unspecified"; + } + enum "low" { + description + "Preference is low"; + } + enum "high" { + description + "Preference is high"; + } + } + description + "FIB adjacency preference"; + } + + typedef Fib-rpf-mode { + type enumeration { + enum "fib-rpf-mode-strict" { + description + "RPF mode strict"; + } + enum "fib-rpf-mode-loose" { + description + "RPF mode loose"; + } + enum "fib-rpf-mode-unknown" { + description + "RPF mode unknown"; + } + } + description + "RPF mode types"; + } + + typedef Fibidb-oper { + type enumeration { + enum "fibidb-none" { + value 0; + description + "fibidb none"; + } + enum "fibidb-create" { + value 1; + description + "fibidb create"; + } + enum "fibidb-delete" { + value 2; + description + "fibidb delete"; + } + enum "fibidb-modify" { + value 3; + description + "fibidb modify"; + } + enum "fibidb-max" { + value 4; + description + "fibidb max"; + } + } + description + "Fibidb oper"; + } + + typedef Fib-sh-tbl-fib-ext-bag { + type enumeration { + enum "leaf-extension" { + value 1; + description + "Leaf Extension"; + } + } + description + "Fib sh tbl fib ext bag"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Fib-update-path-lfa-protection { + type enumeration { + enum "not-lfa-protected" { + description + "Not LFA-protected"; + } + enum "protected" { + description + "Protected"; + } + enum "local-lfa-backup" { + description + "Local-LFA backup"; + } + enum "remote-lfa-backup" { + description + "Remote-LFA backup"; + } + enum "ti-lfa-backup" { + description + "TI-LFA backup"; + } + } + description + "LFA protection type"; + } + + typedef Fib-sh-ipencap-hdr { + type enumeration { + enum "fib-sh-ip-encap-none" { + description + "No Header"; + } + enum "fib-sh-ip-encap-ip4" { + description + "IPv4 Header"; + } + enum "fib-sh-ip-encap-ip6" { + description + "IPv6 Header"; + } + enum "fib-sh-ip-encap-udp" { + description + "UDP Header"; + } + enum "fib-sh-ip-encap-lisp" { + description + "Lisp Header"; + } + } + description + "IP Encap Header Type"; + } + + typedef Fib-neh-special { + type enumeration { + enum "nh-not-found" { + description + "nh not found"; + } + enum "nh-null0" { + description + "nh null0"; + } + enum "nh-punt" { + description + "nh punt"; + } + enum "nh-drop" { + description + "nh drop"; + } + enum "nh-glean" { + description + "nh glean"; + } + enum "nh-receive" { + description + "nh receive"; + } + enum "nh-broadcast" { + description + "nh broadcast"; + } + enum "nh-external" { + description + "nh external"; + } + enum "nh-lisp" { + description + "nh lisp"; + } + enum "nh-lookup" { + description + "nh lookup"; + } + enum "nh-max-type" { + description + "nh max type"; + } + } + description + "Fib neh special"; + } + + typedef Fib-neh { + type enumeration { + enum "nh-local" { + description + "nh local"; + } + enum "nh-remote" { + description + "nh remote"; + } + enum "nh-special" { + description + "nh special"; + } + } + description + "Fib neh"; + } + + typedef Fib-adjacency-show { + type enumeration { + enum "fib-adjacency-normal" { + description + "Normal adjacency"; + } + enum "fib-adjacency-null" { + description + "Null adjacency"; + } + enum "fib-adjacency-punt" { + description + "Punt adjacency"; + } + enum "fib-adjacency-drop" { + description + "Drop adjacency"; + } + enum "fib-adjacency-glean" { + description + "Glean adjacency"; + } + enum "fib-adjacency-discard" { + description + "Discard adjacency"; + } + enum "fib-adjacency-broadcast" { + description + "Broadcast adjacency"; + } + enum "fib-adjacency-external" { + description + "external adjacency"; + } + enum "fib-adjacency-lisp" { + description + "LISP adjacency"; + } + enum "fib-adjacency-unknown" { + description + "Unknown adjacency"; + } + } + description + "Adjacency types"; + } + + typedef Fib-loadshare-show { + type enumeration { + enum "fib-load-share-none" { + description + "No loadsharing"; + } + enum "fib-load-share-per-packet" { + description + "Per packet loadsharing"; + } + enum "fib-load-share-dest-sharing" { + description + "Destination loadsharing"; + } + } + description + "Loadsharing type"; + } + + typedef Ss-lba-state { + type enumeration { + enum "l3" { + description + "L3 Load Balance config"; + } + enum "l4" { + description + "L4 Load Balance config"; + } + } + description + "Load Balance config"; + } + + typedef Fib-aib-adjacency { + type enumeration { + enum "tx-adjacency" { + description + "TX Adjacency"; + } + enum "tx-vxlan-adjacency" { + description + "TX Vxlan Adjacency"; + } + enum "tx-mpls-mcast-adjacency" { + description + "TX MPLS Mcast Adjacency"; + } + enum "tx-subscriber-adjacency" { + description + "TX Subscriber Adjacency"; + } + enum "rx-adjacency" { + description + "RX Adjacency"; + } + } + description + "FIB AIB Adjacency type"; + } + + typedef Fib-bag-protocol { + type enumeration { + enum "ipv4" { + description + "IPv4 Protocol"; + } + enum "ipv6" { + description + "IPv6 Protocol"; + } + enum "mpls" { + description + "MPLS Protocol"; + } + } + description + "Protocol definitions for FIB Bags"; + } + + typedef Fib-rsrc-mode-bag { + type enumeration { + enum "green" { + description + "Resource is in Green mode"; + } + enum "yellow" { + description + "Resource is in Yellow mode"; + } + enum "red" { + description + "Resource is in Red mode"; + } + } + description + "FIB Resource Mode"; + } + + typedef Fib-bag-shmwin { + type enumeration { + enum "ipv4" { + description + "IPv4 Shared Memory Window"; + } + enum "ipv6" { + description + "IPv6 Shared Memory Window"; + } + enum "mpls" { + description + "MPLS Shared Memory Window"; + } + enum "common" { + description + "Common Shared Memory Window"; + } + } + description + "Shared Memory Window Type"; + } + + typedef Fib-retry-entry-bag-sched-class { + type enumeration { + enum "slow" { + description + "Slow Scheduling Class"; + } + enum "regular" { + description + "Regular Scheduling Class"; + } + enum "fast" { + description + "Fast Scheduling Class"; + } + } + description + "Fib retry entry bag sched class"; + } + + typedef Fib-vni-info-type-in-bag { + type enumeration { + enum "unspecified" { + value 0; + description + "unspecified"; + } + enum "evni" { + value 1; + description + "evni"; + } + } + description + "Fib vni info type in bag"; + } + + typedef Fib-ack-status { + type enumeration { + enum "unspecified" { + description + "Status unspecified"; + } + enum "ack" { + description + "Positively acknowledged"; + } + enum "nack" { + description + "Negatively acknowledged"; + } + } + description + "Hardware acknowledgement status"; + } + + typedef Fib-common-in6-addr { + type inet:ipv6-address; + description + "Fib common in6 addr"; + } + + typedef Fib-common-in-addr { + type inet:ipv4-address; + description + "Fib common in addr"; + } + + typedef Fib-common-af-id { + type enumeration { + enum "none" { + value 0; + description + "No address family"; + } + enum "ipv4" { + value 2; + description + "IPv4 AFI"; + } + enum "ipv6" { + value 10; + description + "IPv6 AFI"; + } + } + description + "Fib common af id"; + } + + typedef Fib-common-ipvpn-tunnel { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid encap type"; + } + enum "l2tp" { + value 1; + description + "L2TP encap type"; + } + enum "mgre" { + value 2; + description + "mGRE encap type"; + } + enum "vxlan-l2" { + value 3; + description + "VxLAN L2 encap type"; + } + enum "gre" { + value 4; + description + "GRE encap type"; + } + enum "ip" { + value 5; + description + "IP-in-IP encap type"; + } + enum "te" { + value 6; + description + "TE encap type"; + } + enum "vxlan-l3" { + value 7; + description + "VxLAN L3 encap type"; + } + enum "vxlan-l3-sfi" { + value 8; + description + "VxLAN L3 over SFI encap type"; + } + enum "mpls-udp" { + value 9; + description + "MPLS over UDP encap type"; + } + enum "ipvpn-ip-nh" { + value 10; + description + "IP NH Tunnel Type"; + } + enum "ipvpn-ip-nh-tbl" { + value 11; + description + "IP NH TBL Tunnel Type"; + } + enum "vxlan" { + value 12; + description + "VxLAN encap type"; + } + enum "ipvpn-per-interface" { + value 13; + description + "Per-Interface Tunnel Type"; + } + } + description + "Fib common ipvpn tunnel"; + } + + typedef Fib-bag-object { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "pathlist" { + value 7; + description + "Pathlist"; + } + enum "adjacency" { + value 8; + description + "NHINFO"; + } + enum "all" { + value 23; + description + "ALL"; + } + enum "tep" { + value 65; + description + "TEP"; + } + enum "ltep" { + value 66; + description + "LTEP"; + } + } + description + "Object type definitions for FIB Bags"; + } + + typedef Fib-common-aft-nh { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid AFT type"; + } + enum "aft-nh" { + value 1; + description + "AFT nexthops type"; + } + enum "aft-nhg" { + value 2; + description + "AFT nexthop group type"; + } + enum "aft-max" { + value 3; + description + "AFT max type"; + } + enum "vxlan-l3-if-less" { + value 4; + description + "VxLAN L3 Interfaceless encap type"; + } + } + description + "Fib common aft nh"; + } + + grouping FIB-MPLS-LLC-LSM { + description + "FIB MPLS LLC LSM"; + leaf nh { + type string { + length "0..52"; + } + description + "nh"; + } + leaf mcast-id { + type uint32; + description + "mcast id"; + } + } + + grouping FIB-MPLS-LLC-PFX { + description + "FIB MPLS LLC PFX"; + leaf pfx { + type string { + length "0..52"; + } + description + "pfx"; + } + leaf tbl-id { + type uint32; + description + "tbl id"; + } + } + + grouping FIB-MPLS-LLC-TYPE-EXT { + description + "FIB MPLS LLC TYPE EXT"; + container pfx { + when "../type = 'fib-mpls-llc-bag-type-pfx'" { + description + "../type = 'FIB_MPLS_LLC_BAG_TYPE_PFX'"; + } + description + "pfx"; + uses FIB-MPLS-LLC-PFX; + } + container lsm { + when "../type = 'fib-mpls-llc-bag-type-lsm'" { + description + "../type = 'FIB_MPLS_LLC_BAG_TYPE_LSM'"; + } + description + "lsm"; + uses FIB-MPLS-LLC-LSM; + } + leaf type { + type Fib-mpls-llc-entry-bag; + description + "type"; + } + } + + grouping FIB-MPLS-LLC { + description + "FIB MPLS LLC"; + container ext { + description + "ext"; + uses FIB-MPLS-LLC-TYPE-EXT; + } + leaf local-label { + type uint32; + description + "local label"; + } + leaf source-xr { + type uint32; + description + "source xr"; + } + leaf update-ts { + type uint64; + description + "update ts"; + } + leaf retry-ts { + type uint64; + description + "retry ts"; + } + leaf num-retries { + type uint32; + description + "num retries"; + } + } + + grouping FIB-OBJECT-QUEUE-ITEM-INFO { + description + "FIB Object Queue Information"; + container object-base { + description + "Object Base"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf key-string { + type string; + description + "Object String Key"; + } + } + + grouping FIB-SH-PLAT-CAPABILITIES { + description + "FIB platform capabilities"; + leaf fpc-num-l3-lbl-levels { + type uint8; + description + "L3 LBL levels"; + } + leaf fpc-num-l3-lbl-paths { + type uint8; + description + "L3 Hash buckets"; + } + leaf fpc-num-l3-lbl-rec-paths { + type uint8; + description + "L3 Recursive Hash buckets"; + } + leaf fpc-num-l3-ucmp-paths { + type uint8; + description + "L3 Unequal cost hash buckets"; + } + leaf fpc-num-fwding-stages { + type uint8; + description + "Forwarding stages"; + } + leaf fpc-local-label-split { + type uint32; + description + "Label split"; + } + leaf fpc-stats-support { + type boolean; + description + "Statistics support"; + } + leaf fpc-platf-ready-cb-wait { + type boolean; + description + "Plat ready cb register"; + } + leaf fpc-num-paths-per-pbts-class { + type uint8; + description + "Path per tunnel class"; + } + leaf fpc-platf-v4-upd-disable { + type boolean; + description + "V4 update disable"; + } + leaf fpc-platf-v6-upd-disable { + type boolean; + description + "V6 update disable"; + } + leaf fpc-lba-tuples-default { + type uint32; + description + "LBA tuples"; + } + leaf fpc-mraps-support { + type boolean; + description + "MRAPS support"; + } + leaf fpc-pbts-defclass-support { + type boolean; + description + "PBTS default class support"; + } + leaf fpc-loadinfo-filter-support { + type boolean; + description + "loadinfo filter support"; + } + leaf fpc-nhid { + type boolean; + description + "NHID support"; + } + leaf fpc-platf-temp-back-walk-reqd { + type boolean; + description + "Backwalk dependents is required"; + } + leaf fpc-link-mpls-nhinfo-in-ipv6-thread-support { + type boolean; + description + "Link MPLS IPv6 NH support"; + } + leaf fpc-exclude-deag-bkup { + type boolean; + description + "Exclude Deag backup Paths"; + } + leaf fpc-dlb-support { + type boolean; + description + "Per-destination load-balancing support"; + } + leaf fpc-prefix-filter-support { + type uint8; + description + "Prefix filter level of support"; + } + leaf fpc-slowpath-ingress-inject-reqd { + type boolean; + description + "Slowpath ingress inject required"; + } + leaf fpc-cofo-support { + type boolean; + description + "COFO supported"; + } + leaf fpc-srv6-support { + type boolean; + description + "SRv6 supported"; + } + leaf fpc-srv6-replicated-lwldi-required { + type boolean; + description + "SRv6 replicated LW-LDI required"; + } + leaf fpc-v4v6-ldi-collapse-support { + type boolean; + description + "IPv4 over IPV6 Collapse LDI support"; + } + leaf fpc-1-pass-gre-support { + type boolean; + description + "1-pass GRE support"; + } + leaf fpc-srte-collapse-support { + type boolean; + description + "SR-TE collapse support"; + } + leaf fpc-eint-support { + type boolean; + description + "EINT interface support"; + } + leaf no-collapse-ip-over-mpls { + type boolean; + description + "Disable collapse for IP routes over MPLS"; + } + leaf encap-id-conflict { + type boolean; + description + "Encap ID conflict Check"; + } + leaf via-label-ignore-next-hop { + type boolean; + description + "Ignore nexthop address and interface in case of + via-label routes"; + } + leaf platform-nsr-ready-required { + type boolean; + description + "Platform NSR readiness is required"; + } + leaf adjacency-replication-support { + type boolean; + description + "Support Adjacency Replication in PI and + allocation Encap ID for ADJ"; + } + leaf async-ack-support { + type boolean; + description + "Support async acknowledgement of hardware + programming"; + } + list fpc-lisp-decap-over-v4 { + min-elements 3; + max-elements "3"; + description + "LISP Decap over 4"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list fpc-lisp-decap-over-v6 { + min-elements 3; + max-elements "3"; + description + "LISP Decap over 6"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list fpc-lisp-ucmp { + min-elements 3; + max-elements "3"; + description + "LISP UCMP support"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list fpc-resolve-via-table { + min-elements 3; + max-elements "3"; + description + "Fallback VRF support"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + } + + grouping FIB-SH-PROTO-FRR-STATS { + description + "FIB per protocol frr counters"; + leaf mi-num-intf-frr { + type uint32; + description + "number of FRR events sent on nh interface down"; + } + leaf mi-num-parent-intf-frr { + type uint32; + description + "number of FRR events sent on nh parent interface + down"; + } + leaf mi-num-pfi-intf-down { + type uint32; + description + "number of interface down FRR events from PFI"; + } + leaf mi-num-bfd-down { + type uint32; + description + "number of NH down FRR events frm BFD"; + } + leaf mi-num-prot-frr-objects { + type uint32; + description + "total number of prot FRR objects"; + } + leaf mi-num-bkup-frr-objects { + type uint32; + description + "total number of backup FRR objects"; + } + leaf mi-num-tunid-allocs { + type uint32; + description + "total number of successful FRR tunnel ID + allocations"; + } + leaf mi-num-tunid-alloc-failures { + type uint32; + description + "total number of FRR tunnel ID allocation + failures"; + } + leaf mi-num-tunid-frees { + type uint32; + description + "total number of successful FRR tunnel ID frees"; + } + leaf mi-num-tunid-free-failures { + type uint32; + description + "total number of FRR tunnel ID free failures"; + } + leaf mi-num-frr-reset-queue-adds { + type uint32; + description + "number of FRR reset queue adds"; + } + leaf mi-num-frr-reset-queue-remove { + type uint32; + description + "number of FRR reset queue deletes"; + } + leaf mi-num-frr-reset { + type uint32; + description + "number of FRR resets"; + } + leaf mi-num-frr-proto-events { + type uint32; + description + "number of frr events received in proto thread"; + } + leaf mi-num-frr-logs { + type uint32; + description + "frr log size"; + } + leaf mi-num-pm-session-down { + type uint32; + description + "number of session down FRR events from PM"; + } + } + + grouping ADDR-TYPE { + description + "Union for IPv4/Ipv6 addr"; + leaf afi { + type int32; + description + "AFI"; + } + leaf ipv4-address { + when "../afi = '2'" { + description + "../AFI = '2'"; + } + type inet:ipv4-address; + description + "IPV4 Address"; + } + leaf ipv6-address { + when "../afi = '10'" { + description + "../AFI = '10'"; + } + type Ipv6-address; + description + "IPV6 Address"; + } + } + + grouping FIB-SH-ROUTE-DEL-TS { + description + "FIB SH ROUTE DEL TS"; + container prfx { + description + "prfx"; + uses ADDR-TYPE; + } + leaf tableid { + type uint32; + description + "tableid"; + } + leaf prfx-len { + type uint16; + description + "prfx len"; + } + leaf prfx-proto { + type uint16; + description + "prfx proto"; + } + leaf msec-time { + type uint64; + description + "msec time"; + } + } + + grouping FIB-SH-PROTO-PURGE-STATS { + description + "FIB per protocol purge counters"; + list fpp-cntr { + max-elements "3"; + description + "the number of frees for this proto"; + leaf entry { + type uint32; + description + "the number of frees for this proto"; + } + } + } + + grouping FIB-SH-GTRIE-FN-TIMING { + description + "FIB timing statistics for individual gtrie + functions"; + leaf fgft-fn { + type string { + length "0..64"; + } + description + "Gtrie operation"; + } + leaf fgft-tot-updates { + type uint64; + description + "Total number of updates"; + } + leaf fgft-tot-updates-zero { + type uint64; + description + "Total number of updates with zero timing (due to + timestamp granularity)"; + } + leaf fgft-tot-upd-time { + type uint64; + description + "Total time for updates"; + } + leaf fgft-max-time { + type uint64; + description + "Time for the update"; + } + leaf fgft-max-tstamp { + type uint64; + description + "Time stamp of max update"; + } + } + + grouping FIB-SH-GTRIE-TIMING { + description + "FIB platform update statistics"; + leaf fgt-num-success { + type uint64; + description + "Number of successful updates"; + } + leaf fgt-num-failure { + type uint64; + description + "Number of unsuccessful updates"; + } + leaf fgt-upd-total-time { + type uint64; + description + "Total time for all pd updates"; + } + list fgt-gtrie-fn-timing { + description + "Array of max time info indexed by gtrie function"; + uses FIB-SH-GTRIE-FN-TIMING; + } + } + + grouping FIB-SH-OBJ-ACTION-STATS { + description + "FIB Max time statistics for each action types of + an object"; + leaf foas-tot-updates { + type uint64; + description + "Total number of updates"; + } + leaf foas-tot-upd-time { + type uint64; + description + "Total time for updates"; + } + leaf foas-tot-updates-zero { + type uint64; + description + "Total number of updates that took zero time"; + } + leaf foas-num-success { + type uint64; + description + "Total number of successful updates"; + } + leaf foas-num-failure { + type uint64; + description + "Total number of failed updates"; + } + leaf object-per-action-oor { + type uint64; + description + "Total number of out of resource updates"; + } + leaf foas-max-time { + type uint64; + description + "Time for the update"; + } + leaf foas-max-tstamp { + type uint64; + description + "Time stamp of max update"; + } + } + + grouping FIB-SH-OBJ-STATS { + description + "FIB Max time statistics for each FIB object"; + leaf fos-tot-updates { + type uint64; + description + "Total number of updates"; + } + leaf fos-tot-upd-time { + type uint64; + description + "Total time for updates"; + } + leaf number-async-update-oor { + type uint64; + description + "Number of asynchronous platform update out of + resource"; + } + leaf number-async-update-error { + type uint64; + description + "Number of asynchronous platform update errors"; + } + leaf number-async-oor-notify { + type uint64; + description + "Number of asynchronous out of resource notify"; + } + list fos-obj-act-stat { + description + "Array of max time info indexed by action type"; + uses FIB-SH-OBJ-ACTION-STATS; + } + } + + grouping FIB-SH-PLATF-UPD-STATS { + description + "FIB platform update statistics"; + leaf fpus-num-success { + type uint64; + description + "Number of successful updates"; + } + leaf fpus-num-failure { + type uint64; + description + "Number of unsuccessful updates"; + } + leaf number-sync-update-oor { + type uint64; + description + "Number of synchronous out of resources updates"; + } + leaf number-async-update-oor { + type uint64; + description + "Number of asynchronous out of resources updates"; + } + leaf number-async-update-error { + type uint64; + description + "Number of asynchronous update errors"; + } + leaf number-async-oor-notify { + type uint64; + description + "Number of asynchronous out of resources notify"; + } + leaf fpus-upd-total-time { + type uint64; + description + "Total time for all pd updates"; + } + leaf number-async-eod-done { + type uint64; + description + "Number of asynchronous end of download done"; + } + leaf number-async-eod-done-forwarded { + type uint64; + description + "Number of asynchronous end of download done + forwarded"; + } + list fpus-obj-stat { + description + "Array of max time info indexed by object type"; + uses FIB-SH-OBJ-STATS; + } + } + + grouping FIB-SH-PROTO-DEBUG-STATS { + description + "FIB per protocol debug information"; + container fpd-platf-upd-stats { + description + "platform update statistics"; + uses FIB-SH-PLATF-UPD-STATS; + } + container fpd-gtrie-timing { + description + "Gtrie timing statistics"; + uses FIB-SH-GTRIE-TIMING; + } + leaf fpd-gbltbl-entries { + type uint64; + description + "the number of fib entries in global tbl"; + } + leaf fpd-gbltbl-rej-entries { + type uint64; + description + "the number of fib entries in global retry tbl"; + } + leaf fpd-vrftbl-entries { + type uint64; + description + "the number of fib entries in vrf tbls"; + } + leaf fpd-vrftbl-rej-entries { + type uint64; + description + "the number of fib entries in vrf retry tbls"; + } + leaf fpd-num-tbls { + type uint32; + description + "the number of tables in table set"; + } + leaf fpd-bcdl-msgs { + type uint64; + description + "the number of bcdl msgs"; + } + leaf fpd-route-upd { + type uint64; + description + "the number of route updates"; + } + leaf fpd-route-del { + type uint64; + description + "the number of route deletes"; + } + leaf fpd-route-rcv { + type uint64; + description + "the number of routes received"; + } + leaf fpd-route-drops { + type uint64; + description + "the number of routes dropped"; + } + leaf fpd-lbl-recycled { + type uint64; + description + "the number of routes handled with recycled label"; + } + leaf fpd-version-mismatch-drops { + type uint64; + description + "the number of routes dropped because of version + mismatch"; + } + leaf fpd-adj-upd { + type uint64; + description + "the number of adjacency updates"; + } + leaf fpd-adj-del { + type uint64; + description + "the number of adjacency deletes"; + } + leaf fpd-adj-upd-tx { + type uint64; + description + "number of TX adjacency updates from AIB"; + } + leaf fpd-adj-upd-tx-nh-found { + type uint64; + description + "number of TX adjacency updates that found or + created NH"; + } + leaf fpd-adj-upd-tx-retry-created { + type uint64; + description + "number of TX adjacency updates that went to + retry"; + } + leaf fpd-adj-tx-retry-nh-found { + type uint64; + description + "number of TX adj retries that found or created + NH"; + } + leaf fpd-adj-tx-retry-obj-reinit { + type uint64; + description + "number of times TX NH retry objects updated"; + } + leaf fpd-adj-drops { + type uint64; + description + " number of adj updates dropped because of OOR"; + } + leaf fpd-adj-msg { + type uint64; + description + "number of AIB messages"; + } + leaf fpd-te-rcv { + type uint64; + description + "the number of TE upds received"; + } + leaf fpd-te-version-mismatch-drops { + type uint64; + description + "the number of TE upds dropped because of version + mismatch"; + } + leaf fpd-num-retry-touts { + type uint64; + description + "the number of retry timeouts"; + } + leaf fpd-ldi-num-fixedup { + type uint64; + description + "the number of fixup LDIs"; + } + leaf fpd-ldi-num-correct-fixup { + type uint64; + description + "the number of corrected fixup LDIs"; + } + leaf fpd-pl-num-queued-fixedup { + type uint64; + description + "the number of PL queued for fixup"; + } + leaf fpd-pl-num-correct-fixup { + type uint64; + description + "the number of corrected fixup PLs"; + } + leaf fpd-pl-retry-add-exist { + type uint64; + description + "the number PLs added to retry while already in + retry"; + } + leaf fpd-pl-inline-res-q { + type uint64; + description + "the number of PLs linked to resolving tables for + inline res"; + } + leaf fpd-pl-with-backup-create-count { + type uint64; + description + "number of pl creates with backu path"; + } + leaf fpd-pl-with-backup-del-count { + type uint64; + description + "number of pl deletes with backup path"; + } + leaf fpd-pl-backup-enable-count { + type uint64; + description + "number of PLs marked to include backup path"; + } + leaf fpd-pl-backup-disable-count { + type uint64; + description + " number of PLs unmarked to include backup path"; + } + leaf fpd-pl-fast-nfn-count { + type uint64; + description + "number of PLs visited on fast notification"; + } + leaf fpd-ldi-backup-activate-count { + type uint64; + description + "number of ldi backup path activications"; + } + leaf fpd-ldi-last-backup-activate-time { + type uint64; + description + "ldi mod time for last backup activation"; + } + leaf fpd-ldi-max-backup-activate-time { + type uint64; + description + "max ldi mod time for backup activation"; + } + leaf fpd-ldi-min-backup-activate-time { + type uint64; + description + "min ldi mod time for backup activation"; + } + leaf fpd-ldi-total-backup-activate-time { + type uint64; + description + "total ldi mod time for backup activation"; + } + leaf fpd-ldi-avg-backup-activate-time { + type uint64; + description + "avg ldi mod time for backup activation"; + } + leaf fpd-recursion-constraint-count { + type uint64; + description + "number of resolution failures because of + recursion constraint"; + } + leaf fpd-ldi-num-del-refcnt { + type uint64; + description + "the number of deleted with non-zero refcount"; + } + leaf fpd-retryq-size { + type uint32; + description + "the number of elements in retryq"; + } + leaf fpd-num-allocs { + type uint64; + description + "the number of allocs for this proto"; + } + leaf fpd-num-frees { + type uint64; + description + "the number of frees for this proto"; + } + leaf fpd-retryq-timeout { + type uint32; + description + "timeout value in msec"; + } + leaf fpd-retryq-sched-time { + type uint32; + description + "Scheduler time period in msec"; + } + list fpd-gbltbl-src-entry { + max-elements "15"; + description + "Number of global routes from + + each route source"; + leaf entry { + type uint64; + description + "Number of global routes from + + each route source"; + } + } + list fpd-vrftbl-src-entry { + max-elements "15"; + description + "Number of vrf routes from + + each route source"; + leaf entry { + type uint64; + description + "Number of vrf routes from + + each route source"; + } + } + list fpd-num-retry { + description + "the number of retries of each type"; + leaf entry { + type uint64; + description + "the number of retries of each type"; + } + } + } + + grouping FIB-SH-MISC { + description + "FIB miscellaneous info"; + container mi-issu-state { + description + "FIB ISSU state"; + uses FIB-ISSU-STATE; + } + container mi-plat-capabilities { + description + "FIB platform capabilities"; + uses FIB-SH-PLAT-CAPABILITIES; + } + leaf mi-pfi-ifh-upd { + type uint64; + description + "number of pfi ifh create notif"; + } + leaf mi-pfi-ifh-del { + type uint64; + description + "number of pfi ifh delete notif"; + } + leaf mi-pfi-ifh-stale { + type uint64; + description + "number of stale ifh removed"; + } + leaf mi-tot-plat-upd-time { + type uint64; + description + "total platform update time"; + } + leaf mi-tot-gtrie-time { + type uint64; + description + "total time spent in gtrie operations"; + } + leaf mi-tot-dnld-time { + type uint64; + description + "total download time"; + } + leaf mi-clock-time { + type uint64; + description + "clock download time"; + } + leaf mi-cpu-time { + type uint64; + description + "CPU download time"; + } + leaf mi-shm-reset-ts { + type uint64; + description + "Last FIB shared memory reset time stamp"; + } + leaf mi-idb-recycle-count { + type uint32; + description + "Number of idbs that hit ifh recycle"; + } + leaf mi-idb-recycle-cleanup-count { + type uint32; + description + "Number of idb cleaned up after hitting ifh + recycle"; + } + leaf mi-num-mgmt-list { + type uint32; + description + "Number of management interfaces"; + } + leaf mi-num-virtual-ll-addresses-added { + type uint32; + description + "mi num virtual ll addresses added"; + } + leaf mi-num-virtual-ll-addresses-deleted { + type uint32; + description + "mi num virtual ll addresses deleted"; + } + leaf mi-num-virtual-ll-addresses-dropped { + type uint32; + description + "mi num virtual ll addresses dropped"; + } + leaf mi-num-virtual-ll-addresses-cached { + type uint32; + description + "mi num virtual ll addresses cached"; + } + leaf mi-cpuless-init { + type boolean; + description + "cpuless node list init"; + } + leaf mi-cpuless-count { + type uint32; + description + "count of cpuless line cards"; + } + leaf mi-prefer-aib-routes-over-rib-oper { + type boolean; + description + "Prefer AIB routes over RIB/LSD operational state"; + } + leaf mi-prefer-aib-routes-over-rib-cfg { + type boolean; + description + "Prefer AIB routes over RIB/LSD configured state"; + } + leaf mi-proactive-arp-nd-enabled { + type boolean; + description + "Proactive-ARP-ND feature"; + } + leaf mi-xpl-ldi-enabled { + type boolean; + description + "XPL loadinfo is enabled"; + } + leaf mi-frr-follow-bgp-pic { + type boolean; + description + "fast-reroute follow BGP-PIC configured"; + } + leaf mi-encap-sharing-disable { + type boolean; + description + "MPLS encapsulation sharing disabled"; + } + leaf mi-lba-hash-recover { + type boolean; + description + "Consistent-hashing auto-recovery"; + } + leaf mi-ltrace-multiplier { + type uint32; + description + "The value of trace buffer multiplier"; + } + leaf mi-retry-syslog-timer { + type uint32; + description + "The value of the retry syslog timer"; + } + leaf mi-hlb-mode { + type uint32; + description + "BGP hierarchical load balancing mode"; + } + leaf mi-hlb-num-paths { + type uint32; + description + "number of paths for hierarchical load balancing"; + } + list mi-idb-ext-cleanup-failed-count { + max-elements "3"; + description + "Number of recycled idb extensions that failed + + cleanup"; + leaf entry { + type uint32; + description + "Number of recycled idb extensions that failed + + cleanup"; + } + } + list mi-lrpf-stats-fail { + max-elements "9"; + description + "Per protocol Failure stats for label RPF"; + leaf entry { + type uint32; + description + "Per protocol Failure stats for label RPF"; + } + } + list mi-lrpf-stats-act { + max-elements "24"; + description + "Per protocol actions stats for label RPF"; + leaf entry { + type uint32; + description + "Per protocol actions stats for label RPF"; + } + } + list mi-lrpf-num { + max-elements "3"; + description + "Per protocol number of label RPFs"; + leaf entry { + type uint32; + description + "Per protocol number of label RPFs"; + } + } + list mi-idb-lsec-enabled-num { + max-elements "3"; + description + "Number of interfaces having label security + + enabled"; + leaf entry { + type uint32; + description + "Number of interfaces having label security + + enabled"; + } + } + list mi-num-lisp-eid { + max-elements "3"; + description + "number of LISP EID prefixes"; + leaf entry { + type uint32; + description + "number of LISP EID prefixes"; + } + } + list mi-num-lisp-valid-eid { + max-elements "3"; + description + "number of LISP EID prefixes eligible for + + forwarding"; + leaf entry { + type uint32; + description + "number of LISP EID prefixes eligible for + + forwarding"; + } + } + list mi-cpuless-node { + max-elements "20"; + description + "list of cpuless line cards"; + leaf entry { + type uint32; + description + "list of cpuless line cards"; + } + } + list mi-retry-backoff-timer { + max-elements "4"; + description + "The value of the retry backoff timer"; + leaf entry { + type uint32; + description + "The value of the retry backoff timer"; + } + } + list mi-proto-dbg-stat { + description + "Per protocol debug stats"; + uses FIB-SH-PROTO-DEBUG-STATS; + } + list mi-idb-purge-cntr { + max-elements "3"; + description + "the number of counters used for purge counter + stats"; + uses FIB-SH-PROTO-PURGE-STATS; + } + list mi-del { + description + "Timestamps of deleted routes"; + uses FIB-SH-ROUTE-DEL-TS; + } + list mi-frr-stat { + max-elements "3"; + description + "FRR statistics"; + uses FIB-SH-PROTO-FRR-STATS; + } + list mi-retry-syslog-timer-running { + min-elements 4; + max-elements "4"; + description + "is retry syslog/backoff timer running"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + } + + grouping FIB-SH-TBL-EXT-CLIENT-SUM { + description + "FIB external client summary information"; + container ses-pl-sum { + description + "ECD pathlist summary"; + uses FIB-SH-TBL-EXT-PL-SUM; + } + leaf ses-client-name { + type string; + description + "External client name"; + } + leaf ses-feci-fib-proto { + type uint32; + description + "Registration proto"; + } + leaf ses-num-regs { + type uint32; + description + "Number of registrations"; + } + leaf ses-num-pending { + type uint32; + description + "Number of pending notifs"; + } + leaf ses-client-pulsed-time { + type uint64; + description + "Client pulsed timestamp"; + } + leaf ses-comp-id { + type uint32; + description + "component-id of the client"; + } + leaf ses-ecd-version { + type uint32; + description + "ECD version"; + } + } + + grouping FIB-SH-FRR-NHINFO { + description + "FIB per nhinfo information"; + leaf si-frrtype { + type uint32; + description + "FRR-NHinfo Type"; + } + leaf si-refcount { + type uint32; + description + "Next Hop Reference Count"; + } + leaf si-flags { + type uint32; + description + "FRR nhinfo flags"; + } + leaf si-tbl-id { + type uint32; + description + "VRF table ID"; + } + leaf si-ifh { + type uint32; + description + "ifh assoc w FRR nh"; + } + leaf si-main-ifh { + type uint32; + description + "main ifh assoc w prot-frr nh"; + } + leaf si-linktype { + type uint32; + description + "Linktype using this FRR object"; + } + leaf si-nh-pfx-proto { + type uint32; + description + "Protocol for next-hop prefix"; + } + leaf si-nh-pfx { + type yang:hex-string; + description + "nh prefix"; + } + leaf si-nh-pfx-len { + type uint32; + description + "prefix len"; + } + leaf si-tunid { + type uint32; + description + "tunnel id for c12k"; + } + leaf si-frr-ptr { + type uint64; + description + "frr-nhinfo pointer"; + } + leaf si-prot-frr-ptr { + type uint64; + description + "prot-frr-nhinfo pointer for a bkup-frr"; + } + leaf si-parent-nh-ptr { + type uint64; + description + "parent nhinfo pointer"; + } + leaf si-partner-nh-ptr { + type uint64; + description + "partner nhinfo pointer"; + } + leaf si-repl-parent-type { + type uint8; + description + "replicated parent nhinfo type"; + } + leaf si-upd-ts { + type uint64; + description + "update timestamp"; + } + leaf si-frr-nhid { + type uint32; + description + "frr nhid"; + } + } + + grouping FIB-SH-NHID-ENTRY { + description + "FIB per NHID entry information"; + leaf nh-interface-name-xr { + type xr:Interface-name; + description + "Next-hop interface"; + } + leaf nh-address-xr { + type string; + description + "Next-hop address"; + } + leaf nh-protocol { + type uint8; + description + "Next-hop address protocol, IPv4/IPv6"; + } + leaf nh-link-type { + type uint8; + description + "Payload linktype"; + } + leaf nh-table-id { + type uint32; + description + "Table-ID entry notified for"; + } + leaf nh-id-xr { + type uint32; + description + "NHID value"; + } + leaf nh-id-application { + type uint8; + description + "NHID application type"; + } + leaf version { + type uint64; + description + "RIB version"; + } + leaf time-of-last-update-in-msec { + type uint64; + description + "The time of last update in msec"; + } + leaf encap-id { + type uint64; + description + "ENCAP ID value"; + } + } + + grouping MGMT-SRV6-SID-FMT { + description + "SRv6 SID Format Info"; + leaf type { + type Mgmt-srv6-sid-fmt; + description + "Format type"; + } + leaf description { + type string; + description + "Format description"; + } + } + + grouping MGMT-SRV6-OP-MODE { + description + "SRv6 operational mode Info"; + leaf type { + type Srv6-op-mode; + description + "Mode type"; + } + leaf description { + type string; + description + "Mode description"; + } + } + + grouping FIB-SRV6-GBL-MODE-INFO { + description + "FIB SRv6 global mode info"; + container mode { + description + "Mode (type and desc)"; + uses MGMT-SRV6-OP-MODE; + } + container sid-format { + description + "SID Format"; + uses MGMT-SRV6-SID-FMT; + } + leaf block-srv6-space { + type string; + description + "Block SRv6 space"; + } + } + + grouping FIB-SRV6-GBL-UPD-SET-OR-PROP { + description + "FIB SRv6 global param set or propagate value"; + leaf use-default { + type boolean; + description + "Use default value"; + } + leaf do-propagate { + type boolean; + description + "Propagate from incoming packet/frame"; + } + leaf value { + type uint8; + description + "Specific value"; + } + } + + grouping FIB-SRV6-GBL-UPD { + description + "FIB SRv6 global update"; + container encap-hop-limit { + description + "Encap Hop-limit info"; + uses FIB-SRV6-GBL-UPD-SET-OR-PROP; + } + container encap-traffic-class { + description + "Encap Traffic-class info"; + uses FIB-SRV6-GBL-UPD-SET-OR-PROP; + } + leaf srv6-enabled { + type boolean; + description + "Is SRv6 enabled?"; + } + leaf encap-source-address { + type inet:ipv6-address; + description + "Encap Source Address"; + } + list mode-info { + description + "Info per SRv6 Mode"; + uses FIB-SRV6-GBL-MODE-INFO; + } + } + + grouping FIB-SH-POLICY-SAF-ENTRY { + description + "FIB Policy Source-Address-Filtering entry"; + list saf-ip-address { + description + "SAF Policy IP address list"; + uses FIB-IP-ADDR-T-UNION; + } + } + + grouping FIB-SH-POLICY-TYPE-ENTRY { + description + "FIB SH POLICY TYPE ENTRY"; + container saf-policy { + when "../type = 'saf'" { + description + "../type = 'SAF'"; + } + description + "SAF Policy"; + uses FIB-SH-POLICY-SAF-ENTRY; + } + leaf type { + type Fib-sh-policy-bag; + description + "type"; + } + } + + grouping FIB-SH-POLICY-ENTRY { + description + "FIB Policy"; + container object-base { + description + "Object Base"; + uses FIB-SH-FIB-OBJ-BASE; + } + container policy-entry { + description + "Policy Entry"; + uses FIB-SH-POLICY-TYPE-ENTRY; + } + leaf policy-name-xr { + type string; + description + "Policy Name"; + } + leaf hardware { + type yang:hex-string; + description + "Policy HW info"; + } + } + + grouping FIB-ATTRIBUTE-SUMMARY { + description + "Summary of downloaded fib route attributes"; + } + + grouping FIB-SH-REC-NH-INT { + description + "FIB RNH's Internal information"; + container fib-rec-nh-hist { + description + "Event History for Recursive nexthop"; + uses EVT-HIST-INFO; + } + leaf string-rep { + type string; + description + "String Representation of a RNH"; + } + } + + grouping FIB-SH-REC-NH-DEP-INT { + description + "RNH Dependent's Internal Info"; + container fib-rtep-hist { + description + "FIB Rtep History"; + uses EVT-HIST-INFO; + } + container fib-ecd-hist { + description + "FIB Ecd History"; + uses EVT-HIST-INFO; + } + } + + grouping FIB-SH-NHINFO-EXT-TEP-DET { + description + "NHINFO entry extension object information"; + leaf nh-info-tep-type { + type uint8; + description + "TEP type"; + } + leaf is-tep-single-pass { + type boolean; + description + "Is TEP is Single Pass"; + } + } + + grouping FIB-SH-NHINFO-EXT-REP-DET { + description + "NHINFO entry extension object information"; + leaf nh-info-replicated-type { + type uint8; + description + "Replicated NHINFO type"; + } + leaf nh-info-replicated-nh-id { + type uint32; + description + "NHID of the replicated NHINFO"; + } + leaf nh-info-replicated-encap-id { + type uint64; + description + "ENCAP ID of the replicated NHINFO"; + } + leaf nh-info-replicated-interface { + type xr:Interface-name; + description + "Interface of the replicated NHINFO"; + } + } + + grouping FIB-SH-NHINFO-EXT-CMN-DET { + description + "FIB SH NHINFO EXT CMN DET"; + container snecd-nhr { + when "../type = 'replicated-nh-info'" { + description + "../type = 'ReplicatedNHINFO'"; + } + description + "snecd nhr"; + uses FIB-SH-NHINFO-EXT-REP-DET; + } + container snecd-tep { + when "../type = 'tunnel-endpoint'" { + description + "../type = 'TunnelEndpoint'"; + } + description + "snecd tep"; + uses FIB-SH-NHINFO-EXT-TEP-DET; + } + leaf type { + type Fib-nhinfo-ext-bag; + description + "type"; + } + } + + grouping FIB-SH-EXT-BASE { + description + "FIB object extension base information"; + container object-base { + description + "FIB Object Base information"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf parent-object-pointer { + type uint64; + description + "FIB Extension Object's parent pointer"; + } + leaf back-object-pointer { + type uint64; + description + "FIB Extension Object's back pointer"; + } + } + + grouping FIB-SH-NHINFO-EXT-DET { + description + "NHINFO entry extension internal information"; + container nh-info-extension-base { + description + "NHINFO Extension object base information"; + uses FIB-SH-EXT-BASE; + } + container nh-info-extension-detail { + description + "NHINFO Extension Detail Information"; + uses FIB-SH-NHINFO-EXT-CMN-DET; + } + } + + grouping FIB-SH-NHINFO-EXT { + description + "FIB per nhinfo info"; + list nh-info-extension-detail { + description + "NHINFO Extension Detail"; + uses FIB-SH-NHINFO-EXT-DET; + } + } + + grouping FIB-SH-NHINFO-PWHE-EXT { + description + "FIB PW-HE specific info"; + leaf pwhe-adjacency-client-data { + type uint32; + description + "PW-HE specific client data in adjacency"; + } + leaf vctype { + type uint32; + description + "VC type"; + } + leaf vc-internal-label { + type uint32; + description + "VC Internal Label"; + } + leaf cw-enabled { + type boolean; + description + "Is CW enabled?"; + } + leaf l2-overhead-bytes { + type uint16; + units "byte"; + description + "L2 overhead bytes for interface stats accounting"; + } + leaf dot1q-vlan-tag { + type uint32; + description + "VLAN tag"; + } + leaf internal-id { + type inet:ipv6-address; + description + "Internal ID"; + } + } + + grouping FIB-SH-NHINFO { + description + "FIB per nhinfo information"; + container si-pwhe { + description + "PW-HE interface extension"; + uses FIB-SH-NHINFO-PWHE-EXT; + } + container nh-info-extension { + description + "NHinfo Extensions"; + uses FIB-SH-NHINFO-EXT; + } + leaf si-link-proto { + type uint32; + description + "FIB Protocol Type for NHINFO linktype"; + } + leaf si-nhtype { + type uint32; + description + "NHinfo Type"; + } + leaf si-ifh { + type uint32; + description + "Ifhndl assoc w nhinfo"; + } + leaf si-pfi-interface-type { + type uint32; + description + "Pamna Interface Type"; + } + leaf si-adj-ptr { + type uint32; + description + "Adj Ptr"; + } + leaf si-adj-present { + type boolean; + description + "nhinfo point to adj"; + } + leaf si-special-type { + type uint32; + description + "nature of special nhinfo"; + } + leaf si-refcount { + type uint32; + description + "Next Hop Reference Count"; + } + leaf si-flags { + type uint32; + description + "nhinfo flags"; + } + leaf nh-info-base-extended-flags { + type uint16; + description + "NHInfo Base Extended Flags"; + } + leaf si-adj-if { + type uint32; + description + "ADJ Interface"; + } + leaf si-ext-pfx { + type yang:hex-string; + description + "Extension Prefix"; + } + leaf si-ext-pfx-len { + type uint32; + description + "Extension Prefix Len"; + } + leaf si-ext-pfx-proto { + type uint32; + description + "Extension Prefix Protocol"; + } + leaf si-adj-address { + type yang:hex-string; + description + "AIB L3 Address"; + } + leaf si-adj-addrlen { + type uint32; + description + "ADJ L3 address length"; + } + leaf si-adj-addr-proto { + type uint32; + description + "ADJ L3 address Protocol"; + } + leaf si-adj-rw-len { + type uint32; + description + "Length of Macstring"; + } + leaf si-adj-rw { + type yang:hex-string; + description + "Macstring for Adjacency"; + } + leaf adjacency-route-preference { + type Fib-bag-adj-pref; + description + "Adjacency route preference"; + } + leaf si-dep-nhinfo-type { + type uint32; + description + "Depenedent nhinfo type"; + } + leaf si-dep-nhinfo { + type uint32; + description + "Dependent nhinfo"; + } + leaf si-dep-nhinfo-ifh { + type uint32; + description + "Dependent nhinfo ifhndl"; + } + leaf si-bkup-frr { + type uint32; + description + "pointer to Backup FRR obj"; + } + leaf si-protect-frr { + type uint32; + description + "pointer to protect FRR object"; + } + leaf si-bkup-nhinfo { + type uint32; + description + "Bacckup NHINFO obj"; + } + leaf si-bkup-ifh { + type uint32; + description + "Bacckup IFH"; + } + leaf si-bkup-addr { + type yang:hex-string; + description + "Bkup L3 Address"; + } + leaf si-bkup-addrlen { + type uint32; + description + "BKup L3 address length"; + } + leaf si-bkup-addr-proto { + type uint32; + description + "BKup L3 address Protocol"; + } + leaf si-frr-active { + type boolean; + description + "is FRR currently active"; + } + leaf si-attr-is-ext-mgd { + type boolean; + description + "NH is externally managed"; + } + leaf si-attr-is-incomp { + type boolean; + description + "NH is incomplete"; + } + leaf si-attr-is-tunnel { + type boolean; + description + "NH is assoc w a TE tunnel"; + } + leaf si-attr-is-tunnel-srte { + type boolean; + description + "NH is assoc w a SRTE tunnel"; + } + leaf si-attr-is-gre-tunnel { + type boolean; + description + "NH is assoc w a GRE tunnel"; + } + leaf si-gre-ti { + type uint64; + description + "GRE tunnel info"; + } + leaf si-gre-ti-flags { + type uint32; + description + "Flags on GRE tunnel info"; + } + leaf si-gre-ti-refcnt { + type uint32; + description + "Refcount on GRE tunnel info"; + } + leaf si-gre-tos-propagate { + type boolean; + description + "Is GRE TOS propagate set"; + } + leaf si-hardware { + type yang:hex-string; + description + "Platform Hardware info"; + } + leaf si-nhinfo-ptr { + type uint32; + description + "nhinfo pointer"; + } + leaf si-fnb-idb-ptr { + type uint32; + description + "pointer to idb"; + } + leaf si-anc-ifh { + type uint32; + description + "Ancestor IFH"; + } + leaf si-gre-ti-resolving-leafp { + type uint64; + description + "GRE resolving ip-leaf"; + } + leaf si-gre-dest-addr { + type yang:hex-string; + description + "GRE dest address"; + } + leaf si-nhid { + type uint32; + description + "NHID value in the TX NH"; + } + leaf si-upd-ts { + type uint64; + description + "NH update timestamp"; + } + leaf nh-is-in-oor-state { + type boolean; + description + "is NH in OOR"; + } + } + + grouping FIB-SH-REC-NH-DEP { + description + "FIB recursive nexthop dependant information"; + list fib-sh-rec-nh-dep { + description + "Next dependant"; + container rnd-shadow-nh { + description + "VXLAN shadow NH"; + uses FIB-SH-NHINFO; + } + container rnd-int { + description + "RNH dependent's Internal Info"; + uses FIB-SH-REC-NH-DEP-INT; + } + leaf rnd-type { + type uint32; + description + "Dependant type"; + } + leaf rnd-tunnel-id { + type uint32; + description + "Tunnel endpoint id"; + } + leaf rnd-ifh { + type xr:Interface-name; + description + "Interface handle"; + } + leaf rnd-ref-count { + type uint32; + description + "Ref count"; + } + leaf rnd-resolved { + type boolean; + description + "Dependant resolved"; + } + leaf rnd-flags { + type uint32; + description + "Dependant flags"; + } + leaf rnd-loc-tun-up { + type uint32; + description + "Local tunnel status"; + } + leaf rnd-data { + type yang:hex-string; + description + "TEP encapsulation details"; + } + leaf rnd-src-size { + type uint32; + description + "Source addr pool size"; + } + leaf rnd-stale { + type boolean; + description + "Stale flag"; + } + leaf rnd-retry { + type boolean; + description + "Retry flag"; + } + leaf rnd-gti-ptr { + type uint64; + description + "GRE tunnel info ptr"; + } + leaf rnd-nh-ptr { + type uint64; + description + "GRE/VXLAN NH-info ptr"; + } + leaf rnd-parent-nh-ptr { + type uint64; + description + "VXLAN parent NH-info ptr"; + } + leaf rnd-nh-proto { + type Fib-bag-protocol; + description + "NH proto"; + } + leaf rnd-vxlan-rtep-ptr { + type uint32; + description + "VXLAN rTEP info ptr"; + } + leaf rnd-vxlan-evni { + type uint32; + description + "VXLAN egress VNI"; + } + leaf rnd-vxlan-ol-tblid { + type uint32; + description + "VXLAN overlay tbl id"; + } + leaf rnd-hw-info { + type yang:hex-string; + description + "Opaque hardware info"; + } + } + } + + grouping FIB-SH-REC-NH { + description + "FIB recursive nexthop information"; + container rn-first-dep { + description + "First dependant"; + uses FIB-SH-REC-NH-DEP; + } + container rn-int { + description + "Internal representation of an RNH"; + uses FIB-SH-REC-NH-INT; + } + leaf rn-prefix { + type yang:hex-string; + description + "Recursive nexthop prefix"; + } + leaf rn-prefix-len { + type uint32; + description + "Prefix length"; + } + leaf rn-resolved { + type boolean; + description + "Recursive nexthop resolved"; + } + leaf rn-resolve-prefix { + type yang:hex-string; + description + "Resolving prefix"; + } + leaf rn-resolve-prefix-len { + type uint32; + description + "Resolving prefix length"; + } + leaf rn-v4mappedv6 { + type boolean; + description + "Address is v4-mapped-v6"; + } + leaf rn-hw-info-incl { + type boolean; + description + "Hardware info included"; + } + leaf rn-state { + type Fib-sh-rec-nh-state; + description + "Current state of RNH"; + } + } + + grouping FIB-SH-INT-PWHE-IDB-ATTR { + description + "FIB IDB attribute PWHE information"; + leaf pwhe-int-label { + type uint32; + description + "PWHE internal label"; + } + leaf pwhe-iid { + type inet:ipv6-address; + description + "IID for PWHE"; + } + } + + grouping FIB-SH-INT-NPU-IDB-ATTR { + description + "FIB IDB attribute NPU Mask information"; + leaf npu-node-id { + type uint32; + description + "The node ID for the NPU_MASK attribute"; + } + leaf npu-mask-type { + type uint32; + description + "The NPU mask type for this NPU_MASK"; + } + } + + grouping FIB-SH-INT-IDB-ATTR { + description + "FIB per interface IDB attribute information"; + container pwhe-information { + description + "Information about PWHE attribute"; + uses FIB-SH-INT-PWHE-IDB-ATTR; + } + list npu-information { + description + "Array to hold information for NPU Mask attribute"; + uses FIB-SH-INT-NPU-IDB-ATTR; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + list evt-data { + description + "Optional data"; + leaf entry { + type uint32; + description + "Optional data"; + } + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping FIB-SH-INT-INTERNAL { + description + "FIB per interface internal information"; + container fib-idb-hist { + description + "Event History for IDB"; + uses EVT-HIST-INFO; + } + container fib-srte-head-hist { + description + "Event History for Srtehead"; + uses EVT-HIST-INFO; + } + } + + grouping FIB-SH-INT-DET { + description + "FIB per interface detail information"; + leaf interface-mtu { + type uint16; + description + "Interface Protocol MTU"; + } + leaf forwarding-flag { + type boolean; + description + "Forwarding enabled/disabled flag"; + } + leaf rpf-configured-flag { + type boolean; + description + "RPF configured flag"; + } + leaf rpf-mode { + type Fib-rpf-mode; + description + "RPF mode"; + } + leaf default-route-with-rpf { + type boolean; + description + "Allow default route with RPF"; + } + leaf self-ping-with-rpf { + type boolean; + description + "Allow selfping with RPF"; + } + leaf bgp-pa-input-configured-flag { + type boolean; + description + "BGP PA configured flag"; + } + leaf source-bgp-pa-input-configured-flag { + type boolean; + description + "src BGP PA configured flag"; + } + leaf destination-bgp-pa-input-configured-flag { + type boolean; + description + "dst BGP PA configured flag"; + } + leaf bgp-pa-output-configured-flag { + type boolean; + description + "BGP PA configured flag"; + } + leaf source-bgp-pa-output-configured-flag { + type boolean; + description + "src BGP PA configured flag"; + } + leaf destination-bgp-pa-output-configured-flag { + type boolean; + description + "dst BGP PA configured flag"; + } + leaf icmp-flag { + type uint32; + description + "ICMP configured flag"; + } + leaf multi-label-drop-flag { + type boolean; + description + "Drop packets with multiple-label-stack if set"; + } + } + + grouping FIB-SH-INT-PT { + description + "FIB per interface path tracing information"; + leaf ifid { + type uint32; + description + "PT Interface ID"; + } + leaf if-load-in { + type uint32; + description + "PT Interface Load (inbound)"; + } + leaf if-load-out { + type uint32; + description + "PT Interface Load (outbound)"; + } + leaf tts { + type uint32; + description + "PT Timestamp template"; + } + } + + grouping FIB-SH-INT { + description + "FIB per interface information"; + container path-tracing { + description + "Interface path tracing information"; + uses FIB-SH-INT-PT; + } + container detail-fib-int-information { + description + "Detailed FIB interface information"; + uses FIB-SH-INT-DET; + } + container si-internal { + description + "Internal Information"; + uses FIB-SH-INT-INTERNAL; + } + container si-idb-attr { + description + "IDB attribute information"; + uses FIB-SH-INT-IDB-ATTR; + } + leaf per-interface { + type xr:Interface-name; + description + "Interface handle"; + } + leaf fib-interface-type { + type uint32; + description + "FIB Interface type"; + } + leaf fib-id-pointer { + type uint32; + description + "Pointer to fibidb"; + } + leaf fib-id-flags { + type uint32; + description + "Flags on fibidb"; + } + leaf fib-id-extension-pointer { + type uint32; + description + "Pointer to fibidb extension"; + } + leaf fib-id-extension-flags { + type uint32; + description + "Flags on fibidb extension"; + } + leaf number-of-dependent-next-hop-information { + type uint32; + description + "Number of dependent nhinfo's"; + } + leaf vrf-local-cef-information-pointer { + type uint32; + description + "Vrf local cef info ptr"; + } + leaf reference-count { + type uint16; + description + "Reference count"; + } + leaf last-modified-time { + type uint32; + description + "Time last modified"; + } + leaf last-operation { + type Fibidb-oper; + description + "Last Oper"; + } + leaf protocol-enabled { + type boolean; + description + "Is the protocol configured?"; + } + leaf referance-count-for-protocol { + type uint32; + description + "Reference count for the protocol"; + } + leaf number-of-input-packets { + type uint64; + description + "Number of input packets"; + } + leaf number-of-input-bytes { + type uint64; + units "byte"; + description + "Number of input bytes"; + } + leaf number-of-output-packets { + type uint64; + description + "Number of output packets"; + } + leaf number-of-output-bytes { + type uint64; + units "byte"; + description + "Number of output bytes"; + } + leaf interface-up-flag { + type boolean; + description + "Interface up flag"; + } + leaf per-packet-load-balancing-flag { + type boolean; + description + "Per packet loadbalancing flag"; + } + leaf p2p-interface-flag { + type boolean; + description + "P2P interface flag"; + } + leaf loopback-interface-flag { + type boolean; + description + "Loopback interface flag"; + } + leaf null-interface-flag { + type boolean; + description + "Null interface flag"; + } + leaf tunnel-interface-flag { + type boolean; + description + "Tunnel interface flag"; + } + leaf gre-tunnel-interface-flag { + type boolean; + description + "GRE Tunnel interface flag"; + } + leaf punt-packets-from-fib-switching-flag { + type boolean; + description + "Punt packets from FIB switching flag"; + } + leaf drop-packets-while-fib-switching-flag { + type boolean; + description + "Drop packets while FIB switching flag"; + } + leaf punt-packets-from-linecard-flag { + type boolean; + description + "Punt packets from linecard flag"; + } + leaf primary-ipv4-address { + type string { + length "0..52"; + } + description + "Pimary local v4 address for the interface"; + } + leaf primary-ipv6-address { + type string { + length "0..52"; + } + description + "Pimary local v6 address for the interface"; + } + } + + grouping FIB-SH-TBL-FIB-DVAR-VRF-DET { + description + "FIB table destination VRF information"; + container vrf-leak-timestamp { + description + "Destination Vrf Leak Timestamp"; + uses FIB-SH-TIMESPEC; + } + leaf destinationvrf-name { + type string; + description + "Destination Vrf Name"; + } + leaf destinationvrf-table-id { + type uint32; + description + "Destination Vrf Table ID"; + } + leaf destinationvrf-table-pointer { + type uint64; + description + "Destination Vrf Table Ptr"; + } + } + + grouping FIB-SH-TBL-FIB-DVARS { + description + "FIB table destination information"; + leaf protocol { + type Fib-bag-protocol; + description + "Src Vrf Protocol"; + } + leaf prefix-length-xr { + type uint32; + description + "Src Prefix Length"; + } + leaf source-vrf { + type uint32; + description + "Src VRF"; + } + leaf destination-count { + type uint32; + description + "Count of Number of Destination Vrfs this prefix + is leaked in"; + } + leaf flags { + type uint32; + description + "Flags"; + } + list destinationvrf-detail { + description + "Destination Vrf Detail"; + uses FIB-SH-TBL-FIB-DVAR-VRF-DET; + } + } + + grouping FIB-ATTRIBUTE-DET { + description + "Detailed info for downloaded fib route attributes"; + leaf sfa-attribute-id { + type uint32; + description + "BGP attribute id"; + } + leaf sfa-lcl-attribute-id { + type uint32; + description + "BGP local attribute id"; + } + leaf sfa-local-pref { + type uint32; + description + "BGP attribute local preference of the path"; + } + leaf sfa-origin-as { + type uint32; + description + "BGP attribute origin as"; + } + leaf sfa-next-hop-as { + type uint32; + description + "BGP attribute next hop as"; + } + leaf sfa-aspath-string { + type yang:hex-string; + description + "As path string"; + } + leaf sfa-extended-community-string { + type yang:hex-string; + description + "extcom st"; + } + leaf sfa-community-string { + type yang:hex-string; + description + "com st"; + } + leaf sfa-extended-community { + type uint32; + description + "extended community"; + } + } + + grouping FIB-GRIBI-ENTRY-INFO { + description + "FIB GRIBI ENTRY INFO"; + leaf entry-transaction-id { + type uint64; + description + "Next-Hop-Group transaction ID"; + } + leaf nhg-id { + type uint64; + description + "Next-Hop-Group object ID"; + } + leaf nhg-vrf-id { + type uint32; + description + "Next-Hop-Group VRF table ID"; + } + leaf ack-status { + type Fib-ack-status; + description + "Next-Hop-Group hardware acknowledgement status"; + } + leaf ack-latency { + type uint32; + units "millisecond"; + description + "Next-Hop-Group hardware acknowledgement latency + in milliseconds"; + } + } + + grouping FIB-SH-TBL-FIB-EXT-DET { + description + "FIB entry extension list information"; + leaf context-label-flag { + type boolean; + description + "Context Label Exist"; + } + leaf context-label { + type uint32; + description + "Context Label"; + } + } + + grouping FIB-SH-TBL-FIB-EXT-CMN-DET { + description + "FIB SH TBL FIB EXT CMN DET"; + container sfecd-le { + when "../type = 'leaf-extension'" { + description + "../type = 'LeafExtension'"; + } + description + "sfecd le"; + uses FIB-SH-TBL-FIB-EXT-DET; + } + leaf type { + type Fib-sh-tbl-fib-ext-bag; + description + "type"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping FIB-SH-TBL-SRV6-NEXT-LVL { + description + "SRv6 information for the next recursion level"; + list fib-sh-tbl-srv6-next-lvl { + description + "The SRv6 encapsulation information of the next + recursion level or path"; + leaf srv6-encapsulation-behavior { + type string; + description + "SRv6 Per-path Encapsulation Behavior"; + } + leaf srv6-sid-list { + type string; + description + "SRv6 SID list"; + } + leaf srv6-packet-recycling-requested { + type boolean; + description + "SRv6 Packet recycling is requested"; + } + } + } + + grouping FIB-SH-TBL-SRV6-RECYCLE { + description + "SRv6 packet recycle information for large SID + stacks"; + list fib-sh-tbl-srv6-recycle { + description + "SRv6 packet recycling information"; + leaf internal-id { + type string { + length "0..52"; + } + description + "The internal ID containing more SID for packet + reycling"; + } + leaf srv6-sid-list-subset { + type string; + description + "The subset of the SRv6 SID list of the current + prefix"; + } + } + } + + grouping FIB-SH-TBL-PATH-SRV6-INFO { + description + "SRv6 path information for FIB table entries"; + container srv6-packet-recycling-information { + description + "SRv6 Packet recycling information"; + uses FIB-SH-TBL-SRV6-RECYCLE; + } + container next-recursion-level-srv6-information { + description + "SRv6 information of the next recursion level"; + uses FIB-SH-TBL-SRV6-NEXT-LVL; + } + leaf srv6-encapsulation-behavior { + type string; + description + "SRv6 Per-path Encapsulation Behavior"; + } + leaf srv6-sid-list { + type string; + description + "SRv6 SID list"; + } + leaf is-exact-route-requested { + type boolean; + description + "Is show cef exact-route used?"; + } + leaf srv6-evpn-ac-interface { + type xr:Interface-name; + description + "SRv6 EVPN attached circuit interface"; + } + leaf srv6-evpn-xconnect-id { + type uint32; + description + "SRv6 EVPN xconnect ID"; + } + leaf srv6-evpn-bridge-id { + type uint32; + description + "SRv6 EVPN bridge ID"; + } + leaf srv6-evpn-shg-id { + type uint32; + description + "SRv6 EVPN shg ID"; + } + } + + grouping FIB-SH-TBL-MPLS-LABEL-STACK { + description + "mpls label stack information for FIB table + entries"; + leaf number-of-labels { + type uint32; + description + "Total number of labels"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing Interface"; + } + leaf nh-address { + type string { + length "0..52"; + } + description + "Next Hop address"; + } + list lstack { + max-elements "23"; + description + "Label Stack"; + leaf entry { + type uint32; + description + "Label Stack"; + } + } + } + + grouping FIB-SH-TBL-PATH-MPLS-INFO { + description + "mpls path information for FIB table entries"; + leaf local-lable { + type uint32; + description + "LocalLable"; + } + leaf recursive-fwd-chain { + type boolean; + description + "RecursiveFwdChain"; + } + leaf number-of-igp-paths { + type uint32; + description + "NumberOfIGPPaths"; + } + leaf remote-backup { + type boolean; + description + "RemoteBackupPath"; + } + list recursive-lbl-stack { + description + "Recursive Label(s)"; + leaf entry { + type uint32; + description + "Recursive Label(s)"; + } + } + list igp-label-stack-array { + description + "igp label stack array"; + uses FIB-SH-TBL-MPLS-LABEL-STACK; + } + } + + grouping FIB-GRIBI-PATH-INFO { + description + "FIB GRIBI PATH INFO"; + leaf next-hop-id { + type uint64; + description + "Next Hop Object ID"; + } + leaf aft-object-type { + type Fib-common-aft-nh; + description + "AFT Object type"; + } + leaf aft-vrf-id { + type uint32; + description + "AFT VRF table ID"; + } + } + + grouping FIB-SH-TBL-NNH-PATH { + description + "Detailed Next Next Hop Information"; + leaf next-next-hop-index { + type uint8; + description + "Next next hop index"; + } + leaf next-next-hop-prefix { + type string { + length "0..52"; + } + description + "Next next hop prefix"; + } + leaf next-next-hop-interface { + type uint32; + description + "Next next hop interface index"; + } + } + + grouping FIB-SH-IPENCAP-HDR-DET { + description + "Detailed IP Encap Header Description"; + leaf ip-encap-hdr-type { + type Fib-sh-ipencap-hdr; + description + "Header Type"; + } + leaf ip-encap-hdrp { + type yang:hex-string; + description + "Static Header"; + } + leaf ip-encap-hdr-dyn { + type uint32; + description + "Dynamic Header Fields"; + } + } + + grouping FIB-SH-IPENCAP-DET { + description + "Detailed IP Encap Description"; + leaf ip-encap-hdr-count { + type uint8; + description + "Header Count"; + } + leaf ip-encap-locks { + type uint32; + description + "IPEncap Object Locks"; + } + leaf ip-encap-transport-tbl { + type uint32; + description + "Transport Table"; + } + leaf ipe-transport-vrf-name { + type string; + description + "Transport VRF name"; + } + leaf ip-encap-transport-af { + type uint32; + description + "Transport AF"; + } + leaf ip-encap-payload-af { + type uint32; + description + "Payload AF"; + } + leaf ip-encap-payload-mtu { + type uint16; + description + "Payload MTU"; + } + leaf ip-encap-parent { + type uint32; + description + "Pointer to parent"; + } + leaf ip-encap-parent-type { + type uint32; + description + "Parent type enumeration"; + } + list ip-encap-hdr { + description + "Headers"; + uses FIB-SH-IPENCAP-HDR-DET; + } + } + + grouping FIB-SH-TBL-PATH-DET { + description + "Detailed path information for FIB table entries"; + container gribi-path-info { + description + "GRIBI path info"; + uses FIB-GRIBI-PATH-INFO; + } + leaf ip-address-to-recurse { + type string { + length "0..52"; + } + description + "IP address to recurse to"; + } + leaf label-to-recurse { + type uint32; + description + "Local label to recurse over"; + } + leaf srv6-sid-to-recurse { + type inet:ipv6-address; + description + "SRv6 SID to recurse over"; + } + leaf detail-next-hop-prefix { + type string { + length "0..52"; + } + description + "Next hop prefix"; + } + leaf next-hop-mask-length { + type uint8; + description + "Next hop mask length"; + } + leaf interface-associated-path { + type xr:Interface-name; + description + "Interface associated with this path"; + } + leaf next-hop-interface { + type xr:Interface-name; + description + "Next hop interface"; + } + leaf next-hop-vrf { + type string; + description + "Next hop VRF"; + } + leaf tunnle-endpoint-id { + type uint32; + description + "Tunnel endpoint id"; + } + leaf lisprlocid { + type uint32; + description + "LISP RLOC ID"; + } + leaf number-of-dependencies-this-path { + type uint32; + description + "No. of dependents for this path"; + } + leaf robin-reset-value { + type uint8; + description + "Round robin reset value"; + } + leaf recurse-prefix-object { + type boolean; + description + "Is recursion object a leaf?"; + } + leaf next-prefix-recursion { + type string; + description + "Next prefix recursion in the path"; + } + leaf next-prefix-length { + type uint8; + description + "Next prefix length"; + } + leaf recurse-prefix-object2 { + type boolean; + description + "Recursion has two leaves (e.g. implicit-null + path)"; + } + leaf next-prefix-recursion2 { + type string; + description + "Next prefix2 recursion in the path"; + } + leaf next-prefix-length2 { + type uint8; + description + "Next prefix2 length"; + } + leaf detail-fib-adjacency-type { + type Fib-adjacency-show; + description + "FIB entry adjacency type"; + } + leaf current-path-flag { + type boolean; + description + "Current path flag"; + } + leaf recursive-path-information { + type boolean; + description + "Recursive path information is available"; + } + leaf external-adjacency { + type boolean; + description + "Path is an external adjacency"; + } + leaf fib-path-nh-information-type { + type Fib-neh; + description + "FIB Nhinfo type"; + } + leaf fib-path-nh-information-type-special { + type Fib-neh-special; + description + "FIB Nhinfo type special"; + } + leaf weight-of-path { + type uint32; + description + "Path's Weight"; + } + leaf tunnel-class { + type uint8; + description + "Tunnel class of the path"; + } + leaf tunnel-is-forward-class { + type boolean; + description + "Flag to indicate if the Tunnel is forward class"; + } + list spd-ipencap { + description + "IP Encap"; + uses FIB-SH-IPENCAP-DET; + } + list next-next-hop { + description + "Next Next hop sets"; + uses FIB-SH-TBL-NNH-PATH; + } + } + + grouping FIB-SH-TBL-PATH { + description + "Brief path information for FIB table entries"; + list fib-sh-tbl-path { + description + "Next entry in the path"; + container more-detail-about-path { + description + "More detail about this path entry"; + uses FIB-SH-TBL-PATH-DET; + } + container mpls-information-for-path { + description + "mpls info for this path entry"; + uses FIB-SH-TBL-PATH-MPLS-INFO; + } + container srv6-information-for-path { + description + "SRv6 info for this path entry"; + uses FIB-SH-TBL-PATH-SRV6-INFO; + } + leaf hardware-information { + type yang:hex-string; + description + "Hardware info"; + } + leaf brief-interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf brief-next-hop-prefix { + type string { + length "0..52"; + } + description + "Next hop prefix"; + } + leaf via-label-to-recurse { + type uint32; + description + "Local label to recurse over"; + } + leaf via-srv6-sid-to-recurse { + type inet:ipv6-address; + description + "SRv6 SID to recurse over"; + } + leaf brief-pnode-address { + type string { + length "0..52"; + } + description + "P-node address"; + } + leaf brief-qnode-address { + type string { + length "0..52"; + } + description + "Q-node address"; + } + leaf brief-lfa-protection-type { + type Fib-update-path-lfa-protection; + description + "LFA protection type"; + } + leaf resolved-path { + type boolean; + description + "Resolved path"; + } + leaf recursive-path { + type boolean; + description + "Recursive path"; + } + leaf packets-received-path { + type boolean; + description + "Packets received on this path"; + } + leaf attached-path { + type boolean; + description + "Attached path"; + } + leaf backup-path { + type boolean; + description + "Backup path"; + } + leaf best-external-path { + type boolean; + description + "Best external path"; + } + leaf protect-ignore { + type boolean; + description + "Is protection ignored"; + } + leaf path-dlb { + type boolean; + description + "Is this the path used for DLB"; + } + leaf path-flags { + type uint32; + description + "Path flags"; + } + leaf path-info-flags { + type uint16; + description + "Path Info flags"; + } + leaf path-index { + type uint8; + description + "Path index"; + } + leaf backup-index { + type uint8; + description + "Backup path index"; + } + leaf next-hop-index { + type uint32; + description + "Next Hop Index"; + } + leaf parent-interface-handle { + type xr:Interface-name; + description + "Parent Interface Handle"; + } + leaf recursionvia-len { + type uint8; + description + "recursion via /N constraint"; + } + } + } + + grouping FIB-ADDR-STR { + description + "FIB address"; + leaf address { + type string { + length "0..60"; + } + description + "address"; + } + } + + grouping FIB-SH-TBL-LOADINFO-INT { + description + "Internal load sharing information arrays for FIB + table entries"; + leaf level-ofldis { + type uint8; + description + "level of ldis"; + } + leaf number-of-ldis { + type uint8; + description + "no. of ldis"; + } + leaf maximum-index-arrays { + type uint32; + description + "Maximum index of the load sharing information + arrays"; + } + leaf maximum-slots { + type uint32; + description + "Maximum slots"; + } + leaf normalized-weights { + type yang:hex-string; + description + "Normalized weights"; + } + leaf tunnel-class-value { + type yang:hex-string; + description + "Tunnel class value"; + } + leaf is-pbts-info-valid { + type boolean; + description + "PBTS info valid flag"; + } + leaf pbts-class-offset { + type yang:hex-string; + description + "PBTS class offset"; + } + leaf pbts-class-num-paths { + type yang:hex-string; + description + "PBTS class num paths"; + } + leaf pbts-fallback-mapped-class { + type yang:hex-string; + description + "PBTS class falls back to class"; + } + leaf round-robin-disable { + type boolean; + description + "Flag to indicate if the Round Robin is Disabled + or not"; + } + leaf ldi-next-hop-buckets { + type uint8; + description + "Number of LDI next hop buckets"; + } + leaf platform-hardware-information { + type yang:hex-string; + description + "Platform Hardware info"; + } + list path-indice { + description + "Path indices"; + leaf entry { + type uint8; + description + "Path indices"; + } + } + list path-ldi-number { + description + "Path indices"; + leaf entry { + type uint8; + description + "Path indices"; + } + } + list sanity-flag { + description + "Sanity flag"; + leaf entry { + type boolean; + description + "Sanity flag"; + } + } + list interface-handle { + description + "Interface handle"; + leaf entry { + type xr:Interface-name; + description + "Interface handle"; + } + } + list weights-of-path { + description + "Paths Weights"; + leaf entry { + type uint32; + description + "Paths Weights"; + } + } + list adjacency-address { + description + "Adjacency address"; + uses FIB-ADDR-STR; + } + list pbts-class-is-fallback-mapped { + min-elements 9; + max-elements "9"; + description + "Does PBTS class fall back to drop or any class"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list pbts-fallback-to-drop { + min-elements 9; + max-elements "9"; + description + "PBTS class falls back to drop"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list tunnel-is-forward-class { + min-elements 256; + max-elements "256"; + description + "Flag to indicate if the Tunnel is forward class"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + } + + grouping FIB-SH-TBL-LOADINFO-DET { + description + "Detailed load sharing information for FIB table + entries"; + container load-informtion-internal-data { + description + "Loadinfo internal data"; + uses FIB-SH-TBL-LOADINFO-INT; + } + leaf packets-through-load-information { + type uint64; + description + "Packets through this loadinfo"; + } + leaf bytes-through-load-information { + type uint64; + units "byte"; + description + "Bytes through this loadinfo"; + } + leaf total-packets-through-load-information { + type uint64; + description + "Total packets through this loadinfo"; + } + leaf total-bytes-through-load-information { + type uint64; + units "byte"; + description + "Total bytes through this loadinfo"; + } + leaf prefix-of-owner { + type uint32; + description + "Owner's Prefix"; + } + leaf mask-length-of-owner { + type uint32; + description + "Owner Prefix Mask length"; + } + leaf load-information-reference-count { + type uint16; + description + "Loadinfo reference count"; + } + leaf per-dest-load-sharing-flag { + type boolean; + description + "Flag to indicate if the Per destination load + sharing flag is enabled"; + } + leaf load-information-owner-deleted-flag { + type boolean; + description + "Flag to indicate if the Loadinfo owner deleted + flag is enabled "; + } + leaf loadinfo-sanity-flag { + type boolean; + description + "Flag to indicate if the Loadinfo sanity flag is + enabled"; + } + leaf is-owner { + type boolean; + description + "Owner flag"; + } + } + + grouping FIB-SH-TBL-FIB-DET { + description + "Detailed FIB table entry information"; + container loadshare-information { + description + "Detailed Loadshare info"; + uses FIB-SH-TBL-LOADINFO-DET; + } + leaf fib-entry-version { + type uint32; + description + "FIB entry version number"; + } + leaf per-prefix-accounting { + type uint8; + description + "Per Prefix Accounting"; + } + leaf load-sharing-type { + type Fib-loadshare-show; + description + "Load sharing type"; + } + leaf fib-entry-adjacency-type { + type Fib-adjacency-show; + description + "FIB entry adjacency type"; + } + leaf fib-protocol-type { + type uint32; + description + "FIB Protocol type"; + } + leaf afi-fib-protocol-type { + type uint32; + description + "AFI FIB protocol type"; + } + leaf aib-l3-address { + type yang:hex-string; + description + "AIB L3 Address"; + } + leaf adjacency-address-length { + type uint32; + description + "ADJ ADDR LEN"; + } + leaf adjacency-interface { + type uint32; + description + "ADJ IFH"; + } + leaf fib-special-nh-information-type { + type uint32; + description + "FIB Special NHINFO Type"; + } + leaf fib-entry-adjacency-address { + type yang:hex-string; + description + "FIB entry adj address"; + } + leaf fib-entry-adjacency-interface { + type uint32; + description + "FIB entry adjacency interface"; + } + leaf packets-through-fib-entry { + type uint64; + description + "Packets through this FIB entry"; + } + leaf bytes-through-fib-entry { + type uint64; + units "byte"; + description + "Bytes through this FIB entry"; + } + leaf detailed-prefix-length { + type uint32; + description + "Prefix length"; + } + leaf prefix-protocol { + type uint32; + description + "Prefix protocol"; + } + leaf precedence-forpackets { + type uint8; + description + "Precedence for packets to this entry"; + } + leaf traffic-index-for-packets { + type uint8; + description + "Traffic index for packets to this entry"; + } + leaf switch-compontent-id { + type uint32; + description + "Switch function compontent ID"; + } + leaf fast-adjacency-flag { + type boolean; + description + "Fast adjacency flag"; + } + leaf illegal-fast-adjacency-flag { + type boolean; + description + "Illegal fast adjacency flag"; + } + leaf remote-adjacency-flag { + type boolean; + description + "Remote adjacency flag"; + } + leaf bgp-attribute-id { + type uint32; + description + "BGP attribute id"; + } + leaf bgp-local-attribute-id { + type uint32; + description + "BGP local attribute id"; + } + leaf bgp-attribute-local-preference { + type uint32; + description + "BGP attribute local preference of the path"; + } + leaf bgp-attribute-origin-as { + type uint32; + description + "BGP attribute origin as"; + } + leaf bgp-attribute-next-hop-as { + type uint32; + description + "BGP attribute next hop as"; + } + leaf path-string { + type string; + description + "As path string"; + } + leaf extcom-string { + type yang:hex-string; + description + "extcom st"; + } + leaf com-string { + type yang:hex-string; + description + "com st"; + } + leaf extended-community { + type uint32; + description + "extended community"; + } + leaf qos-group { + type uint32; + description + "Quality of Service Group"; + } + leaf mpls-fec { + type uint32; + description + "MPLS forwarding equivalence class"; + } + leaf qppb-qos-group-and-ip-precedence { + type uint32; + description + "QPPB quality of service group and IP precedence"; + } + leaf flow-tag { + type uint8; + description + "PBR flow-tag"; + } + leaf forward-class { + type uint8; + description + "SPP forwarding class ID"; + } + leaf pl-time-of-last-update-in-msec { + type uint64; + description + "The time of last update for PL in msec"; + } + leaf ldi-time-of-last-update-in-msec { + type uint64; + description + "The time of last update for LDI in msec"; + } + leaf lwldi-time-of-last-update-in-msec { + type uint64; + description + "The time of last update for LW-LDI in msec"; + } + leaf encap-id { + type uint64; + description + "Prefix EncapID"; + } + leaf pl-time-stamp-type { + type uint32; + description + "The type of time-stamp on PL"; + } + } + + grouping FIB-SH-TBL-FIB { + description + "Basic FIB table information"; + container detail-fib-entry-information { + description + "Detailed FIB entry information"; + uses FIB-SH-TBL-FIB-DET; + } + container fib-entry-path { + description + "FIB entry path details"; + uses FIB-SH-TBL-PATH; + } + container srv6-endpoint { + description + "SRv6 Endpoint behavior (if applicable)"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container gribi { + description + "GRIBI Next-Hop-Group info"; + uses FIB-GRIBI-ENTRY-INFO; + } + leaf protocol-type-fib-entry { + type uint32; + description + "Proto type for this entry"; + } + leaf label-type { + type string { + length "0..16"; + } + description + "Local Label type"; + } + leaf platform-hardware { + type yang:hex-string; + description + "Platform Hardware info"; + } + leaf number-of-referances-to-path-list { + type uint32; + description + "Number of references to the pathlist"; + } + leaf path-list-flags { + type uint32; + description + "The pathlist flags"; + } + leaf path-list-source { + type uint32; + description + "The pathlist source"; + } + leaf number-of-referances-to-ldi { + type uint32; + description + "Number of references to the LDI"; + } + leaf ldi-flags { + type uint32; + description + "The LDI flags"; + } + leaf flags-external-ldi { + type uint32; + description + "The flags of ext assocaited with LDI "; + } + leaf pointer-external-ldi { + type uint32; + description + "The pointer to the ext assocaited with LDI"; + } + leaf exact-path-interface-handle { + type uint32; + description + "exact-path interface handle"; + } + leaf exact-path-gre-interface-handle { + type uint32; + description + "exact-path GRE physical interface handle"; + } + leaf exact-route-gre-phys-ifh-avail { + type boolean; + description + "exact-route GRE phy ifh available"; + } + leaf exact-route-result { + type boolean; + description + "exact-route result"; + } + leaf prefix-is-static-or-connected { + type boolean; + description + "Prefix is static or connected"; + } + leaf packet-should-recieve { + type boolean; + description + "Packet should always be received"; + } + leaf prefix-connected { + type boolean; + description + "Prefix is connected"; + } + leaf prefix-for-adjancency { + type boolean; + description + "Prefix is for an adjacency"; + } + leaf prefix-for-pic-next-hop { + type boolean; + description + "Prefix is for a PIC nexthop"; + } + leaf purgable-after-purge-interval { + type boolean; + description + "Purgable after the purge interval"; + } + leaf broadcast-recive-flag { + type boolean; + description + "Broadcast receive flag"; + } + leaf broadcast-forward-flag { + type boolean; + description + "Broadcast forward flag"; + } + leaf zero-by-zero-route-as-default { + type boolean; + description + "0/0 route added as default route"; + } + leaf external-switch-triggered { + type boolean; + description + "External switch function triggered"; + } + leaf route-attribute-flag { + type boolean; + description + "Route attributes summary flag"; + } + leaf dummy-real-zero-route { + type boolean; + description + "Dummy real zero route"; + } + leaf ldi-lw-flag { + type uint32; + description + "The LDI LW flags"; + } + leaf ref-counter-of-ldi-lw-ldi { + type uint32; + description + "The refcounter of LDI LW LDI"; + } + leaf type-of-ldi-lw-ldi { + type uint32; + description + "The type of LDI LW LDI"; + } + leaf lspa-flags { + type uint32; + description + "The LSPA flags"; + } + leaf version-of-route { + type uint64; + description + "The version of the route"; + } + leaf fib-route-download-priority { + type uint32; + description + "Priority at which the route was downloaded"; + } + leaf time-of-last-update-in-msec { + type uint64; + description + "The time of last update in msec"; + } + leaf l2-subscriber-route { + type boolean; + description + "Is L2 Subscriber route"; + } + leaf l2-subscriber-xconnect-id { + type uint32; + description + "XConnect-id associated with L2 subscriber"; + } + leaf l2-subscriber-flags { + type uint32; + description + "Flags associated with L2 subscriber"; + } + leaf l2-subscriber-ip-protocol { + type uint32; + description + "IP protocol associated with L2 subscriber"; + } + leaf l2tpv3-cookie-length-bits { + type uint32; + description + "L2TPv3 cookie length for L2 subscriber"; + } + leaf route-for-external-reach-linecard-flag { + type boolean; + description + "Route destined for Line Card that support + External Reach only"; + } + leaf route-source-not-preferred { + type boolean; + description + "The source of this route is not preferred over + other sources with the same prefix"; + } + leaf route-is-sr-flag { + type boolean; + description + "Route is a MPLS Segment-Routing prefix"; + } + leaf route-is-srv6-headend { + type boolean; + description + "This route is an SRv6 Head-end"; + } + leaf route-is-srv6-endpoint { + type boolean; + description + "This route is an SRv6 Endpoint"; + } + leaf internal-i-droute { + type boolean; + description + "Internal ID route"; + } + leaf internal-id-route-type { + type string; + description + "Internal ID route type"; + } + leaf prefix-is-in-oor-state { + type boolean; + description + "prefix is not installed in HW as platform + out-of-resource"; + } + leaf ldi-base-extended-flags { + type uint16; + description + "LDI Base Extended Flags"; + } + leaf lwldi-base-extended-flags { + type uint16; + description + "LWLDI Base Extended Flags"; + } + leaf transaction-id { + type uint64; + description + "Route transaction ID"; + } + leaf ack-status { + type Fib-ack-status; + description + "Route hardware acknowledgement status"; + } + leaf ack-latency { + type uint32; + units "millisecond"; + description + "Route hardware acknowledgement latency in + milliseconds"; + } + list extension-object { + description + "Leaf Extension Object List"; + uses FIB-SH-TBL-FIB-EXT-CMN-DET; + } + } + + grouping FIB-COMMON-RTEP-TBL-STATS { + description + "FIB RTEP table stats bag"; + container common-table-stats { + description + "Common FIB subtype table stats bag"; + uses FIB-COMMON-TBL-STATS-BAG; + } + } + + grouping FIB-COMMON-LTEP-TBL-STATS { + description + "FIB LTEP table stats bag"; + container common-table-stats { + description + "Common FIB subtype table stats bag"; + uses FIB-COMMON-TBL-STATS-BAG; + } + } + + grouping FIB-SH-TIMESPEC { + description + "FIB SH TIMESPEC"; + leaf seconds { + type int32; + description + "Seconds"; + } + leaf nano-seconds { + type int32; + description + "NanoSeconds"; + } + } + + grouping FIB-SH-FRR-LOG { + description + "FIB frr log information"; + container rrr-timestamp { + description + "FIB fast reroute timestamp"; + uses FIB-SH-TIMESPEC; + } + leaf frr-protocol-type { + type Fib-bag-protocol; + description + "FIB Protocol Type"; + } + leaf frr-interface-name { + type xr:Interface-name; + description + "Interface assoc w FRR nh"; + } + leaf frr-prefix { + type string { + length "0..52"; + } + description + "nh prefix"; + } + leaf frr-switching-time { + type uint32; + description + "FIB fast reroute switching time"; + } + leaf bundle-member-interface-name { + type xr:Interface-name; + description + "bundle member"; + } + } + + grouping FIB-SH-TBL-EXT-PL-SUM { + description + "FIB external client pathlist summary"; + leaf sep-num-ecd-pathlist { + type uint32; + description + "Number of ECD pathlists"; + } + leaf sep-num-ecd-pl-unresolved { + type uint32; + description + "Number of ECD pathlists unresolved"; + } + list sep-num-ecd-pl-per-interest { + max-elements "17"; + description + "Number of ECD pathlists per interest"; + leaf entry { + type uint32; + description + "Number of ECD pathlists per interest"; + } + } + } + + grouping FIB-SH-TBL-EXT-SUM-ALL { + description + "FIB external brief summary information across all + clients"; + container sesa-pl-sum { + description + "External pathlist summary"; + uses FIB-SH-TBL-EXT-PL-SUM; + } + leaf sesa-num-client { + type uint32; + description + "Client information"; + } + } + + grouping FIB-OBJECT-MARKER-INFO { + description + "FIB Object Marker Information"; + container object-base { + description + "Object Base"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf name { + type string; + description + "Marker Name"; + } + leaf active { + type boolean; + description + "Enabled"; + } + leaf need-timer { + type boolean; + description + "Need Timer Support"; + } + leaf need-wrap { + type boolean; + description + "Need Wrap Support"; + } + } + + grouping FIB-OBJECT-QUEUE-INFO { + description + "FIB Object Queue Information"; + container object-base { + description + "Object Base"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf name { + type string; + description + "Object Queue Name"; + } + leaf queue-id { + type uint32; + description + "Queue ID"; + } + leaf number-of-nodes { + type uint32; + description + "Number of Nodes"; + } + leaf number-of-special-nodes { + type uint32; + description + "Number of Special Nodes"; + } + list marker { + description + "Object Markers"; + uses FIB-OBJECT-MARKER-INFO; + } + } + + grouping FIB-RSRC-BAG { + description + "Hardware object resource availability"; + leaf resource-name { + type string; + description + "Resource Name"; + } + leaf resource-mode { + type Fib-rsrc-mode-bag; + description + "OOR mode for resource"; + } + } + + grouping FIB-SH-RSRC-AVAIL-STATE { + description + "FIB resource availability state"; + leaf resource-mode { + type Fib-rsrc-mode-bag; + description + "Current overall OOR mode"; + } + leaf hardware-resource-info { + type yang:hex-string; + description + "Opaque hardware resource state info"; + } + leaf shared-memory-oor-counter { + type uint8; + description + "Shared memory OOR count"; + } + leaf hardware-oor-counter { + type uint8; + description + "Hardware OOR count"; + } + leaf incoming-oor-timestamp { + type uint64; + description + "Incoming OOR timestamp"; + } + leaf outgoing-oor-timestamp { + type uint64; + description + "Outgoing OOR timestamp"; + } + list shared-memory-status { + description + "Current status of shared memory windows"; + uses FIB-SH-RSRC-SHM; + } + list hardware-resource-mode { + description + "Hardware object resource mode"; + uses FIB-RSRC-BAG; + } + } + + grouping FIB-GENERIC-INTF-LIST-DATA { + description + "Data related to generic interface list"; + leaf ild-name { + type string { + length "0..33"; + } + description + "Interface_list name"; + } + leaf ild-id { + type uint32; + description + "Interface_list id"; + } + leaf ild-ptr { + type uint32; + description + "Address of struct"; + } + leaf ild-flag { + type uint32; + description + "Flags"; + } + leaf ild-refcount { + type uint32; + description + "Ref count"; + } + leaf ild-ts { + type uint64; + description + "Last updated time stamp"; + } + leaf ild-interface-count { + type uint32; + description + "Total interfaces in the list"; + } + list ild-ifh { + description + "Array of members' IFhandle"; + leaf entry { + type xr:Interface-name; + description + "Array of members' IFhandle"; + } + } + } + + grouping FIB-SH-PFX-MASKLEN-CNT { + description + "FIB Prefix Masklength counts"; + leaf mask-length { + type uint8; + description + "FIB Prefix Mask length"; + } + leaf number-of-prefixes { + type uint32; + description + "Number of prefixes with given mask length"; + } + } + + grouping FIB-SH-PFX-MASKLEN-DISTRIB { + description + "FIB Prefix Masklengths distribution"; + list unicast-prefix { + description + "Masklength counts for unicast prefixes"; + uses FIB-SH-PFX-MASKLEN-CNT; + } + list broadcast-prefix { + description + "Masklength counts for broadcast prefixes"; + uses FIB-SH-PFX-MASKLEN-CNT; + } + list multicast-prefix { + description + "Masklength counts for multicast prefixes"; + uses FIB-SH-PFX-MASKLEN-CNT; + } + } + + grouping FIB-PL-LDI-COUNT { + description + "FIB Pathlist and Loadinfo summary"; + leaf total-load-sharing-element-bytes { + type uint32; + units "byte"; + description + "Total memory used by load sharing elements in + bytes"; + } + leaf total-load-sharing-element-references { + type uint64; + description + "Total count of references to load sharing + elements"; + } + leaf total-path-list-elements { + type uint32; + description + "Total count of Pathlist elements"; + } + leaf recursive-path-list-elements { + type uint32; + description + "Count of recursive Pathlist elements"; + } + leaf platform-shared-path-list-elements { + type uint32; + description + "Count of platform shared Pathlist elements"; + } + leaf retry-path-list-elements { + type uint32; + description + "Count of Pathlist elements in retry"; + } + leaf total-load-info-elements { + type uint32; + description + "Total count of Loadinfo elements"; + } + leaf recursive-load-info-elements { + type uint32; + description + "Count of recursive Loadinfo elements"; + } + leaf platform-shared-load-info-elements { + type uint32; + description + "Count of platform shared Loadinfo elements"; + } + leaf xpl-load-info-elements { + type uint32; + description + "Count of XPL Loadinfo elements"; + } + } + + grouping FIB-SH-SUM { + description + "FIB summary statistics"; + container exclusive-load-sharing-element { + description + "Exclusive load sharing element"; + uses FIB-PL-LDI-COUNT; + } + container shared-load-sharing-element { + description + "Shared load sharing element"; + uses FIB-PL-LDI-COUNT; + } + container cross-shared-load-sharing-element { + description + "Cross-table shared load sharing element"; + uses FIB-PL-LDI-COUNT; + } + container encap-shared-load-sharing-element { + description + "Encap-shared load sharing element"; + uses FIB-PL-LDI-COUNT; + } + container prefix-masklen-distribution { + description + "Distribution of prefix mask lengths"; + uses FIB-SH-PFX-MASKLEN-DISTRIB; + } + leaf prefix { + type yang:hex-string; + description + "The router-id"; + } + leaf ss-tbl-id { + type uint32; + description + "Table Id"; + } + leaf ss-tbl-id-ptr { + type uint32; + description + "Table Id Ptr"; + } + leaf ss-vrf-id { + type uint32; + description + "Virtual routing forwarding instance Id"; + } + leaf ss-vr-id { + type uint32; + description + "Virtual router instance Id"; + } + leaf load-balancing { + type Ss-lba-state; + description + "LBA configuration state"; + } + leaf forwarding-elements { + type uint32; + description + "Number of forwarding elements linked to the + table"; + } + leaf routes { + type uint32; + description + "Number of routes"; + } + leaf prefix-in-place-modifications { + type uint32; + description + "Number of inplace modifications"; + } + leaf stale-prefix-deletes { + type uint32; + description + "Number of deleted stale leafs"; + } + leaf load-sharing-elements { + type uint32; + description + "Count of load sharing elements"; + } + leaf load-sharing-references { + type uint64; + description + "Count of load sharing references"; + } + leaf total-load-share-element-bytes { + type uint32; + description + "Total memory used by load sharing elements"; + } + leaf leaves-used-bytes { + type uint32; + description + "Total memory used by leaves"; + } + leaf reresolve-entries { + type uint32; + description + "Number of reresolved entries"; + } + leaf old-unresolved-entries { + type uint32; + description + "Number of old unresolved entries"; + } + leaf new-unresolved-entries { + type uint32; + description + "Number of new unresolved entries"; + } + leaf unresolved-entries { + type uint32; + description + "Number of total unresolved entries"; + } + leaf cef-route-drops { + type uint32; + description + "Number of routes dropped by CEF"; + } + leaf cef-version-mismatch-route-drops { + type uint64; + description + "the number of routes dropped due to version + mismatch"; + } + leaf delete-cache-num-entries { + type uint32; + description + "Number of entries in the route delete cache"; + } + leaf existing-leaves-revisions { + type uint32; + description + "Number of entries present on addition"; + } + leaf fib-default-prefix { + type uint32; + description + "Default prefix"; + } + leaf fib-default-prefix-mask-length { + type uint32; + description + "Default prefix mask length"; + } + leaf next-hops { + type uint32; + description + "Number of NHINFOS"; + } + leaf incomplete-next-hops { + type uint32; + description + "Number of incomplete NHINFOS"; + } + leaf resolution-timer { + type uint32; + units "second"; + description + "IP CEF resolution timer in seconds"; + } + leaf slow-process-timer { + type uint32; + units "second"; + description + "IP CEF slow processing time in seconds"; + } + leaf max-resolution-timer { + type uint32; + units "second"; + description + "IP CEF max resolution time in seconds"; + } + leaf imposition-prefixes { + type uint32; + description + "Number of prefixes with imposition LDI"; + } + leaf extended-prefixes { + type uint32; + description + "Number of prefixes with extended path-list"; + } + leaf cefl-bl-recycled-routes { + type uint32; + description + "Number of routes updates with recycled label + handled"; + } + leaf ldi-backwalks { + type uint32; + description + "pd backwalks on LDI modify with backup path"; + } + leaf ss-prot-route-count { + type uint32; + description + "Number of routes with FRR protection"; + } + leaf lisp-eid-prefixes { + type uint32; + description + "Number of lisp eid prefixes associated with + table"; + } + leaf lisp-eid-valid-prefixes { + type uint32; + description + "Number of lisp eid prefixes eligible for + forwarding"; + } + leaf lisp-rloc-objects { + type uint32; + description + "Number of lisp rloc objects associated with + table"; + } + leaf number-routes-srv6-headend { + type uint32; + description + "Number of SRv6 headend routes"; + } + leaf number-routes-srv6-endpoint { + type uint32; + description + "Number of SRv6 endpoint routes"; + } + leaf number-of-sr-labels { + type uint32; + description + "Number of SR labels"; + } + leaf ss-drop-pl-count { + type uint32; + description + "Number of dropped pathlists"; + } + } + + grouping FIB-AIB-EOD-RECVD-TS { + description + "FIB AIB EOD received timestamp"; + leaf aib-type { + type Fib-aib-adjacency; + description + "AIB requested type"; + } + leaf aib-adjacency-flags { + type uint32; + description + "AIB adjacency request flags"; + } + leaf aibeod-timestamp { + type string; + description + "AIB EOD Timestamp"; + } + leaf aib-register-timestamp { + type string; + description + "AIB Register Timestamp"; + } + } + + grouping FIB-AIB-EOD-RECVD-TS-AFI { + description + "FIB AIB EOD timestamp per AFI"; + leaf aibeodafi { + type Fib-bag-protocol; + description + "FIB AIB EOD Address Family"; + } + list aibeodtx-timestamp { + description + "FIB AIB Tx EODs"; + uses FIB-AIB-EOD-RECVD-TS; + } + list aibeodrx-timestamp { + description + "FIB AIB Rx EODs"; + uses FIB-AIB-EOD-RECVD-TS; + } + } + + grouping FIB-ISSU-PROTO-STATE { + description + "FIB ISSU protocol state"; + leaf protocol-name { + type string { + length "0..6"; + } + description + "FIB ISSU Protocol name"; + } + leaf rsi-eod-valid { + type boolean; + description + "RSI EOD expected/valid"; + } + leaf rsi-eod-time-stamp { + type string { + length "0..33"; + } + description + "RSI EOD received timestamp"; + } + leaf lsd-eod-valid { + type boolean; + description + "LSD EOD expected/valid"; + } + leaf lsd-eod-time-stamp { + type string { + length "0..33"; + } + description + "LSD EOD received timestamp"; + } + leaf lmrib-eod-valid { + type boolean; + description + "LMRIB EOD expected/valid"; + } + leaf lmrib-eod-time-stamp { + type string { + length "0..33"; + } + description + "LMRIB EOD received timestamp"; + } + leaf rib-info-valid { + type boolean; + description + "RIB table info valid"; + } + leaf bcdl-tables { + type uint32; + description + "Number of BCDL tables"; + } + leaf converged-tables { + type uint32; + description + "Number of tables converged"; + } + leaf rib-tables-converged-time-stamp { + type string { + length "0..33"; + } + description + "The converged timestamp for all rib tables"; + } + leaf protocol-eod-valid { + type boolean; + description + "Protocol EOD expected/valid"; + } + leaf protocol-eod-time-stamp { + type string { + length "0..33"; + } + description + "Protocol EOD sent timestamp"; + } + list aibeodafi-timestamp { + description + "FIB AIB EODs"; + uses FIB-AIB-EOD-RECVD-TS-AFI; + } + } + + grouping FIB-ISSU-STATE { + description + "FIB ISSU state"; + leaf imdr-support { + type boolean; + description + "IMDR supported"; + } + leaf slc-support { + type boolean; + description + "SLC supported"; + } + leaf fis-issu-restart { + type boolean; + description + "ISSU restart"; + } + leaf imdr-eoc-implicit { + type boolean; + description + "IMDR End-of-config implicit"; + } + leaf slc-eoc-implicit { + type boolean; + description + "SLC End-of-config implicit"; + } + leaf eoc-received-imdr-time-stamp { + type string { + length "0..33"; + } + description + "End-of-config received from IMDR timestamp"; + } + leaf eoc-received-slc-time-stamp { + type string { + length "0..33"; + } + description + "End-of-config received from SLC timestamp"; + } + leaf eod-received-im-time-stamp { + type string { + length "0..33"; + } + description + "End-of-download received from IM timestamp"; + } + leaf eod-sent-imdr-time-stamp { + type string { + length "0..33"; + } + description + "End-of-download send to IMDR timestamp"; + } + leaf eod-sent-slc-time-stamp { + type string { + length "0..33"; + } + description + "End-of-download send to SLC timestamp"; + } + leaf fis-issu-error-ts { + type uint64; + description + "ISSU error sent to ISSUMGR timetstamp"; + } + list fis-proto-state { + max-elements "3"; + description + "IMDR state for the protocols"; + uses FIB-ISSU-PROTO-STATE; + } + } + + grouping FIB-RSRC-OOR-BAG { + description + "Hardware object resource out of resource"; + leaf oor-resource-name { + type string; + description + "OOR resource name"; + } + leaf oor-resource-mode { + type Fib-rsrc-mode-bag; + description + "OOR mode for resource"; + } + leaf oor-resource-counter { + type uint32; + description + "Object OOR counters"; + } + } + + grouping FIB-SH-RSRC-SHM { + description + "Shared memory availability"; + leaf shared-memory-window { + type Fib-bag-shmwin; + description + "Shared Memory Window Type"; + } + leaf resource-mode { + type Fib-rsrc-mode-bag; + description + "OOR mode for this shared memory window"; + } + leaf average-bytes-available { + type uint64; + units "byte"; + description + "Average number of bytes available"; + } + leaf maximum-bytes-available { + type uint64; + units "byte"; + description + "Maximum bytes available"; + } + } + + grouping FIB-SH-RSRC-AVAIL-OOR-STATE { + description + "FIB resource availability state"; + list shared-memory-status { + description + "Shared memory out of resource"; + uses FIB-SH-RSRC-SHM; + } + list hardware-resource-mode { + description + "Hardware objects resource out of resource"; + uses FIB-RSRC-OOR-BAG; + } + } + + grouping FIB-RETRY-DB-INFO { + description + "FIB Retry DB information"; + leaf retry-flags { + type uint32; + description + "FIB Retry flags"; + } + leaf retry-count { + type uint32; + description + "FIB Retry count"; + } + leaf error-code { + type uint32; + description + "Error Code"; + } + leaf retry-object-info { + type string; + description + "FIB Object String"; + } + leaf retry-fib-object-type { + type string; + description + "FIB Object type"; + } + leaf retry-timestamp { + type string; + description + "FIB Retry timestamp"; + } + leaf retry-sched-class { + type Fib-retry-entry-bag-sched-class; + description + "FIB Retry scheduling class"; + } + } + + grouping FIB-COMMON-LTEP-NVE-TBL-STATS { + description + "FIB LTEP NVE table stats bag"; + container common-table-stats { + description + "Common FIB subtype table stats bag"; + uses FIB-COMMON-TBL-STATS-BAG; + } + } + + grouping FIB-VNI-INFO-ENTRY { + description + "FIB VNI_INFO entry"; + container destination-address { + description + "Destination address"; + uses FIB-IP-ADDR-T-UNION; + } + leaf vni-info-key-type-xr { + type uint32; + description + "VNI_Info Key Type"; + } + leaf table-id { + type uint32; + description + "EVNI Table Id"; + } + leaf vni-id-xr { + type uint32; + description + "VNI_Info Id"; + } + leaf vni-info-type { + type Fib-vni-info-type-in-bag; + description + "VNI_Info Type"; + } + leaf encap-id { + type uint64; + description + "VNI_Info Encap Id"; + } + leaf underlay-table-id { + type uint32; + description + "Underlay Table Id"; + } + leaf tunnel-type-xr { + type Fib-common-ipvpn-tunnel; + description + "Tunnel type"; + } + leaf rtep-id-xr { + type uint64; + description + "RTEP Id"; + } + leaf stat-id { + type uint64; + description + "Stat Id"; + } + leaf vni-interface { + type xr:Interface-name; + description + "VNI Interface"; + } + } + + grouping FIB-COMMON-RTEP-ENTRY { + description + "FIB rtep entry"; + container destination-address-xr { + description + "Destination address to forward the packet"; + uses FIB-IP-ADDR-T-UNION; + } + container tunnel-destination-address { + description + "Destination address of IP tunnel header"; + uses FIB-IP-ADDR-T-UNION; + } + container ltep { + description + "LTEP"; + uses FIB-COMMON-LTEP-ENTRY; + } + leaf tunnel-type-xr { + type Fib-common-ipvpn-tunnel; + description + "Tunnel type"; + } + leaf destination-prefix-length { + type uint8; + description + "Prefix length of Destination address"; + } + leaf tunnel-destination-prefix-length { + type uint8; + description + "Prefix length of Tunnel Destination"; + } + leaf underlay-table-id-xr { + type uint32; + description + "Underlay Table Id"; + } + leaf vxlan-overlay-table-id-xr { + type uint32; + description + "VxLAN Overlay Table Id"; + } + leaf vxlan-e-vni-id-xr { + type uint32; + description + "VxLAN E-VNI Id"; + } + leaf hardware-info { + type yang:hex-string; + description + "Hardware Info"; + } + leaf rtep-internal { + type string; + description + "Internal representation of an RTEP Object"; + } + leaf stat-id { + type uint64; + description + "Stats ID"; + } + } + + grouping FIB-IP-ADDR-T-UNION { + description + "FIB IP ADDR T UNION"; + leaf afi { + type Fib-common-af-id; + description + "AFI"; + } + leaf none { + when "../afi = 'none'" { + description + "../AFI = 'None'"; + } + type uint8; + description + "No address family"; + } + leaf ipv4 { + when "../afi = 'ipv4'" { + description + "../AFI = 'IPv4'"; + } + type Fib-common-in-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../afi = 'ipv6'" { + description + "../AFI = 'IPv6'"; + } + type Fib-common-in6-addr; + description + "IPv6 address type"; + } + } + + grouping FIB-COMMON-LTEP-ENTRY { + description + "FIB LTEP Entry Info"; + container source-address-xr { + description + "Source address"; + uses FIB-IP-ADDR-T-UNION; + } + container destination-address { + description + "Destination address"; + uses FIB-IP-ADDR-T-UNION; + } + leaf tunnel-type-xr { + type Fib-common-ipvpn-tunnel; + description + "Tunnel type"; + } + leaf source-prefix-length { + type uint8; + description + "Prefix length of Sounce address"; + } + leaf destination-prefix-length { + type uint8; + description + "Prefix length of Destination address"; + } + leaf underlay-table-id-xr { + type uint32; + description + "Underlay table Id"; + } + leaf hardware-info { + type yang:hex-string; + description + "Hardware Info"; + } + leaf ltep-internal { + type string; + description + "Internal representation of an LTEP Object"; + } + leaf stat-id { + type uint64; + description + "Stats ID"; + } + leaf vxlan-vni-id-xr { + type uint32; + description + "VXLAN VNI Id"; + } + } + + grouping FIB-COMMON-TBL-SUBTYPE-STATS-BAG { + description + "FIB subtype table stats bag"; + leaf alloc-objects { + type uint64; + description + "Number of allocated objects"; + } + leaf freed-objects { + type uint64; + description + "Number of freed objects"; + } + leaf alloc-size { + type uint64; + description + "Size of allocated objects"; + } + leaf freed-size { + type uint64; + description + "Size of freed objects"; + } + leaf table-counters-flag { + type uint32; + description + "Mask for counters array"; + } + list table-counter { + description + "Array of table counters"; + leaf entry { + type uint64; + description + "Array of table counters"; + } + } + } + + grouping FIB-COMMON-TBL-STATS-BAG { + description + "FIB table stats bag"; + list table-subtype-stat { + description + "Array to hold different subtype table stats"; + uses FIB-COMMON-TBL-SUBTYPE-STATS-BAG; + } + } + + grouping FIB-COMMON-GRIBI-TBL-STATS { + description + "FIB GRIBI table stats bag"; + container common-table-stats { + description + "Common FIB subtype table stats bag"; + uses FIB-COMMON-TBL-STATS-BAG; + } + } + + grouping FIB-OBJECT-ENCAP-ID-CHILD { + description + "FIB Encap ID Object Child Information"; + container object-base { + description + "Object Base"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf key-string { + type string; + description + "Object String Key"; + } + } + + grouping FIB-OBJECT-ENCAP-ID-INFO { + description + "FIB Encap ID Object Information"; + container object-base { + description + "Object Base"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf encap-id-xr { + type uint64; + description + "Encap ID"; + } + leaf key-string { + type string; + description + "Encap Object Key"; + } + leaf meta-data { + type uint64; + description + "PD Meta Data"; + } + list conflict-children { + description + "Conflict Children"; + uses FIB-OBJECT-ENCAP-ID-CHILD; + } + list non-conflict-children { + description + "NonConflict Children"; + uses FIB-OBJECT-ENCAP-ID-CHILD; + } + } + + grouping FIB-ENCAP-ID-SUMMARY { + description + "FIB Encap ID Summary"; + leaf number-of-encap-id { + type uint32; + description + "Number of Encap ID"; + } + leaf number-of-encap-id-conflict { + type uint32; + description + "Number of Encap IDs have conflicts"; + } + leaf number-of-conflict-child { + type uint32; + description + "Number of Conflict Children"; + } + leaf number-of-non-conflict-child { + type uint32; + description + "Number of NonConflict Children"; + } + leaf number-of-incomplete { + type uint32; + description + "Number of incomplete Encap ID objects"; + } + } + + grouping FIB-SH-FIB-OBJ-BASE { + description + "FIB object base information"; + leaf object-reference-count { + type uint32; + description + "FIB Object Reference Count"; + } + leaf object-flags { + type uint32; + description + "FIB Object flags"; + } + leaf object-type { + type uint8; + description + "FIB Object type"; + } + leaf object-time-stamp { + type uint64; + description + "FIB Object TimeStamp in msec"; + } + leaf object-pointer { + type uint64; + description + "FIB Object pointer"; + } + leaf object-id { + type uint64; + description + "FIB Object ID"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub5.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub5.yang new file mode 100644 index 000000000..60f76867d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub5.yang @@ -0,0 +1,772 @@ +submodule Cisco-IOS-XR-fib-common-oper-sub5 { + belongs-to Cisco-IOS-XR-fib-common-oper { + prefix Cisco-IOS-XR-fib-common-oper; + } + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fib-common-oper-sub4 { + revision-date 2022-10-17; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fib-common package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fib-bag-adjacency { + type enumeration { + enum "none" { + description + "Invalid adjacency type"; + } + enum "tx-nh" { + description + "TX Nhinfo"; + } + enum "tx-interface" { + description + "TX Interface"; + } + } + description + "Type of Adjacency"; + } + + typedef Fib-bag-adjaceny-app { + type enumeration { + enum "none" { + description + "None type"; + } + enum "rsvp-te" { + description + "RSVP-TE type"; + } + enum "sr-mpls" { + description + "SR-MPLS type"; + } + enum "bundle-member" { + description + "Bundle-Member type"; + } + } + description + "Application type of Adjacency"; + } + + typedef Fib-global-aggregation-bag { + type enumeration { + enum "aggregation-type-state" { + description + "Aggregation OOR and ERROR State"; + } + enum "aggregation-type-adj" { + description + "Aggregation Adj Replication"; + } + } + description + "FIB Aggregation bag type"; + } + + typedef Fib-bag-ao-attribute { + type enumeration { + enum "none" { + description + "Invalid attribute type"; + } + enum "error" { + description + "Error type attribute"; + } + enum "out-of-resource" { + description + "Out-of-Resource type attribute"; + } + enum "adjacency" { + description + "Adjacency type attribute"; + } + enum "attribute-count" { + description + "Number of attributes"; + } + } + description + "Attribute types for the Aggregation Object (AO)"; + } + + typedef Fib-glbl-bag-protocol { + type enumeration { + enum "ipv4" { + description + "IPv4 Protocol"; + } + enum "ipv6" { + description + "IPv6 Protocol"; + } + enum "mpls" { + description + "MPLS Protocol"; + } + } + description + "Global Protocol definitions for FIB Bags"; + } + + grouping FIB-GLOBAL-CLIENT { + description + "FIB GLOBAL CLIENT"; + leaf client-id-xr { + type uint32; + description + "Client ID"; + } + leaf node-id { + type uint32; + description + "Location of the client"; + } + leaf client-name { + type string; + description + "Client name"; + } + leaf create-time { + type uint64; + description + "Time of creation"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-SUMMARY { + description + "FIB Aggregation Summary"; + leaf total { + type uint32; + description + "Total number of Aggregations"; + } + leaf total-ipv4 { + type uint32; + description + "Total number of Aggregations of V4"; + } + leaf total-ipv6 { + type uint32; + description + "Total number of Aggregations of V6"; + } + leaf total-adj-ipv4 { + type uint32; + description + "Total number of V4 Adjacency Replications"; + } + leaf total-adj-ipv6 { + type uint32; + description + "Total number of V6 Adjacency Replications"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-ADJ-REPL-ATTR-EXT { + description + "FIB Aggregation Data of Adjacency Replication"; + leaf bit-mask-string { + type string; + description + "Adjacency bit mask"; + } + leaf mac-length { + type uint32; + description + "Adjacency MAC length"; + } + leaf mac-string { + type string; + description + "Adjacency MAC string"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-ATTR-EXT { + description + "FIB GLOBAL AGGREGATION ATTR EXT"; + container adjacency-attribute-extension { + when "../type = 'aggregation-type-adj'" { + description + "../type = 'AggregationTypeAdj'"; + } + description + "adjacency attribute extension"; + uses FIB-GLOBAL-AGGREGATION-ADJ-REPL-ATTR-EXT; + } + leaf type { + type Fib-global-aggregation-bag; + description + "type"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-ATTR { + description + "FIB Aggregation Attribute"; + leaf node-id { + type uint32; + description + "NodeID of Aggregation Info from"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-ADJ-REPL-KEY-EXT { + description + "FIB Aggregation Key-Ext of Adjacency Replication"; + leaf interface-name { + type xr:Interface-name; + description + "Adjacency Replication Interface"; + } + leaf is-mpls { + type boolean; + description + "Adjacency Replication Is MPLS"; + } + leaf nh-address { + type string; + description + "Next-hop address"; + } + leaf application-type { + type Fib-bag-adjaceny-app; + description + "NH Replication type"; + } + leaf adjacency-type { + type Fib-bag-adjacency; + description + "Adjacency type"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-KEY-EXT { + description + "FIB GLOBAL AGGREGATION KEY EXT"; + container adjacency-key-extension { + when "../type = 'aggregation-type-adj'" { + description + "../type = 'AggregationTypeAdj'"; + } + description + "adjacency key extension"; + uses FIB-GLOBAL-AGGREGATION-ADJ-REPL-KEY-EXT; + } + leaf type { + type Fib-global-aggregation-bag; + description + "type"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-KEY { + description + "FIB Aggregation Key"; + leaf protocol { + type Fib-glbl-bag-protocol; + description + "Aggregation AFI Protocol"; + } + leaf object-type { + type Fib-bag-object; + description + "Aggregation Object Type"; + } + leaf attribute-type { + type Fib-bag-ao-attribute; + description + "Aggregation Attribute Type"; + } + } + + grouping FIB-GLOBAL-AGGREGATION-ENTRY { + description + "FIB Aggregation Entry Info"; + container key { + description + "Aggregation Key"; + uses FIB-GLOBAL-AGGREGATION-KEY; + } + container key-extension { + description + "Aggregation Key Extension"; + uses FIB-GLOBAL-AGGREGATION-KEY-EXT; + } + list attribute { + description + "Aggregation Attributes"; + uses FIB-GLOBAL-AGGREGATION-ATTR; + } + list attribute-extension { + description + "Aggregation Attributes Ext"; + uses FIB-GLOBAL-AGGREGATION-ATTR-EXT; + } + } + + grouping FIB-GLOBAL-LTEP-NVE-ENTRY { + description + "FIB LTEP NVE Entry Info"; + container dest-address { + description + "Destination address"; + uses FIB-IP-ADDR-T-UNION; + } + container ltep { + description + "LTEP"; + uses FIB-COMMON-LTEP-ENTRY; + } + leaf table-id-xr { + type uint32; + description + "Table Id"; + } + leaf nve-interface-id-xr { + type uint32; + description + "NVE interface ID"; + } + leaf vni-id-xr { + type uint32; + description + "VNI Id"; + } + leaf destination-prefix-length { + type uint8; + description + "Prefix length of Destination address"; + } + leaf underlay-table-id { + type uint32; + description + "Underlay table Id"; + } + } + + grouping FIB-GLOBAL-GRIBI-NH-UNION { + description + "FIB GLOBAL GRIBI NH UNION"; + container ltep { + when "../object-type = 'ltep'" { + description + "../ObjectType = 'LTEP'"; + } + description + "ltep"; + uses FIB-COMMON-LTEP-ENTRY; + } + container rtep { + when "../object-type = 'tep'" { + description + "../ObjectType = 'TEP'"; + } + description + "rtep"; + uses FIB-COMMON-RTEP-ENTRY; + } + leaf object-type { + type Fib-bag-object; + description + "ObjectType"; + } + } + + grouping FIB-GLOBAL-GRIBI-ENTRY { + description + "FIB GRIBI Entry Info"; + container aft-next-hop { + description + "AFT next hop"; + uses FIB-GLOBAL-GRIBI-NH-UNION; + } + leaf vrf-id-xr { + type uint32; + description + "Vrf ID"; + } + leaf object-id { + type uint64; + description + "Object ID"; + } + leaf entry-transaction-id { + type uint64; + description + "GRIBI entry transaction ID"; + } + leaf aft-object-type-xr { + type Fib-common-aft-nh; + description + "AFT object type"; + } + leaf ack-status { + type Fib-ack-status; + description + "Hardware acknowledgement status"; + } + leaf ack-latency { + type uint32; + units "millisecond"; + description + "Hardware acknowledgement latency in milliseconds"; + } + } + + grouping FIB-GLOBAL-SUMMARY-OBJ-HISTORY { + description + "FIB Global summary object history"; + leaf count { + type uint32; + description + "Placeholder for obj history counts"; + } + } + + grouping FIB-GLOBAL-SUMMARY-OBJ-HISTORY-PROTO { + description + "FIB GLOBAL SUMMARY OBJ HISTORY PROTO"; + container base-object { + description + "Base object"; + uses FIB-GLOBAL-BASE-ST; + } + container object-history { + description + "Obj History"; + uses FIB-GLOBAL-SUMMARY-OBJ-HISTORY; + } + } + + grouping FIB-GLOBAL-SUMMARY-HEALTH { + description + "FIB Global summary health"; + leaf is-retry-db-empty { + type boolean; + description + "Boolean to indicate if the retry database is + empty or not"; + } + } + + grouping FIB-GLOBAL-BASE-ST { + description + "FIB Global Base st"; + leaf protocol { + type uint32; + description + "Fib Global base protocol"; + } + } + + grouping FIB-GLOBAL-SUMMARY { + description + "FIB Global summary"; + container base-object { + description + "Base object"; + uses FIB-GLOBAL-BASE-ST; + } + container summary-counts { + description + "Global Summary counts"; + uses FIB-GLOBAL-SUMMARY-COUNTS; + } + container health { + description + "Global summary health"; + uses FIB-GLOBAL-SUMMARY-HEALTH; + } + } + + grouping FIB-GLOBAL-SUMMARY-PROTO { + description + "FIB GLOBAL SUMMARY PROTO"; + container common-info { + description + "Common Info"; + uses FIB-GLOBAL-SUMMARY-COMMON-INFO; + } + container summary { + description + "Global summary"; + uses FIB-GLOBAL-SUMMARY; + } + } + + grouping FIB-BAG-SUM-OBJ { + description + "Object summary"; + container object-attributes { + description + "Object's attributes"; + uses FIB-BAG-SUM-OBJ-ATTR; + } + leaf object-type { + type uint32; + description + "Object type"; + } + leaf object-name { + type string; + description + "Object name"; + } + } + + grouping FIB-BAG-SUM-OBJ-ATTR { + description + "Object summary attributes"; + list fsum-attr-cnt { + max-elements "5"; + description + "fsum attr cnt"; + leaf entry { + type uint32; + description + "fsum attr cnt"; + } + } + } + + grouping FIB-BAG-GLBL-SUM { + description + "FIB BAG GLBL SUM"; + container obj-attr { + description + "Aggregate Summary across protocols"; + uses FIB-BAG-SUM-OBJ-ATTR; + } + } + + grouping FIB-GLOBAL-NUM-OBJECTS-ST { + description + "FIB Global summary num retries"; + leaf object-type { + type string { + length "0..30"; + } + description + "object"; + } + leaf num-objects { + type uint32; + description + "number of elements for this obj type"; + } + } + + grouping FIB-GLOBAL-NUM-RETRIES-ST { + description + "FIB Global summary num retries"; + leaf retry-object-type { + type string { + length "0..30"; + } + description + "retry object"; + } + leaf num-retries { + type uint64; + description + "number of elements for this obj type in retry db"; + } + } + + grouping FIB-GLOBAL-SUMMARY-COUNTS { + description + "FIB Global summary counts"; + leaf num-retry-timeouts { + type uint64; + description + "number of retry timeouts"; + } + leaf num-retry-objects { + type uint32; + description + "number of elements in retry db"; + } + list array-number-of-retry { + description + "number of objects in retry db"; + uses FIB-GLOBAL-NUM-RETRIES-ST; + } + list array-number-of-object { + description + "total number of objects"; + uses FIB-GLOBAL-NUM-OBJECTS-ST; + } + } + + grouping FIB-GLOBAL-SUMMARY-COMMON-INFO { + description + "FIB Global summary common"; + leaf count { + type uint32; + description + "Placeholder for common info counts"; + } + } + + grouping FIB-GLOBAL-SUMMARY-TOTAL { + description + "FIB GLOBAL SUMMARY TOTAL"; + container common-info { + description + "FIB global Summary Common info"; + uses FIB-GLOBAL-SUMMARY-COMMON-INFO; + } + container total-counters { + description + "Aggregate counters of all protocols"; + uses FIB-GLOBAL-SUMMARY-COUNTS; + } + container global-summary { + description + "Global Summary"; + uses FIB-BAG-GLBL-SUM; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub6.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub6.yang new file mode 100644 index 000000000..329bef36d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub6.yang @@ -0,0 +1,362 @@ +submodule Cisco-IOS-XR-fib-common-oper-sub6 { + belongs-to Cisco-IOS-XR-fib-common-oper { + prefix Cisco-IOS-XR-fib-common-oper; + } + + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fib-common-oper-sub4 { + revision-date 2022-10-17; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fib-common package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FIB-SH-COFO-TBL-ID-PER-SDR { + description + "FIB SH COFO TBL ID PER SDR"; + leaf sdrid { + type uint32; + description + "SDR ID"; + } + leaf num-ofipv4-tables { + type uint16; + description + "Number of Tables for IPv4"; + } + leaf num-ofipv6-tables { + type uint16; + description + "Number of Tables for IPv6"; + } + leaf num-ofmpls-tables { + type uint16; + description + "Number of Tables for MPLS"; + } + } + + grouping FIB-SH-COFO-TBL-ID-DB-SUM { + description + "FIB cofo table id summary information"; + leaf number-of-tbl-id-allocated { + type uint32; + description + "Number of Table Id Allocated"; + } + leaf tbl-id-minimum { + type uint32; + description + "Minimum Table Id in Range"; + } + leaf tbl-id-maximum { + type uint32; + description + "Maximum Table Id in Range"; + } + leaf tbl-id-last-allocated { + type uint32; + description + "Last Table Id Allocated"; + } + leaf tbl-id-default-v4 { + type uint32; + description + "COFO default V4 Table Id"; + } + leaf tbl-id-default-v6 { + type uint32; + description + "COFO default V6 Table Id"; + } + leaf number-of-tbl-id-in-gc { + type uint32; + description + "Number of Table Id in Garbage Collection List"; + } + list per-sdr-stat { + description + "Per SDR statistics"; + uses FIB-SH-COFO-TBL-ID-PER-SDR; + } + } + + grouping FIB-SH-COFO-TBL-ID-ENTRY-INFO { + description + "FIB cofo table id information"; + container object-base { + description + "FIB Object Base information"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf sdrid { + type uint32; + description + "SDR ID"; + } + leaf protocol-type { + type uint32; + description + "FIB Cofo Protocol"; + } + leaf route-distinguisher { + type yang:hex-string; + description + "Route Distinguisher"; + } + leaf table-id-xr { + type uint32; + description + "Table ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-pointer { + type uint64; + description + "Table Pointer"; + } + } + + grouping FIB-SH-COFO-IDB-BUNDLE-MEMBER-INFO { + description + "FIB SH COFO IDB BUNDLE MEMBER INFO"; + leaf intf-index { + type uint32; + description + "Interface Index"; + } + leaf unique-id { + type uint8; + description + "Unique Identifier"; + } + leaf order-num { + type uint8; + description + "Link Order Number"; + } + leaf weight { + type uint8; + description + "Member Weight"; + } + leaf pic { + type uint64; + description + "Port Information Context"; + } + } + + grouping FIB-SH-COFO-IDB-TBL-ENTRY-INFO { + description + "FIB cofo idb entry information"; + container object-base { + description + "FIB Object Base information"; + uses FIB-SH-FIB-OBJ-BASE; + } + leaf sdrid { + type uint32; + description + "SDR ID"; + } + leaf intf-type { + type uint32; + description + "Interface Type"; + } + leaf intf-index { + type uint32; + description + "Interface Index"; + } + leaf intf-state { + type uint32; + description + "Interface State"; + } + leaf parent-intf-index { + type uint32; + description + "Parent Interface Index"; + } + leaf parent-intf-type { + type uint32; + description + "Parent Interface Type"; + } + leaf bundle-member-total-weight { + type uint16; + description + "Bundle Member Interface Total Weight"; + } + leaf main-pointer { + type uint64; + description + "Main Interface Pointer"; + } + leaf table-pointer { + type uint64; + description + "Table Pointer"; + } + leaf hardware-handle { + type uint64; + description + "FIB Cofo Hardware Handle"; + } + leaf intf-name { + type string; + description + "Interface Name"; + } + leaf-list pic { + type uint64; + description + "Port Information Context"; + } + list bundle-member-info { + description + "Bundle Member Info"; + uses FIB-SH-COFO-IDB-BUNDLE-MEMBER-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub7.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub7.yang new file mode 100644 index 000000000..179716dee --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper-sub7.yang @@ -0,0 +1,271 @@ +submodule Cisco-IOS-XR-fib-common-oper-sub7 { + belongs-to Cisco-IOS-XR-fib-common-oper { + prefix Cisco-IOS-XR-fib-common-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fib-common package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FIB-STATISTICS-BAG-DROPS { + description + "FIB drop statistics"; + leaf no-route-packets { + type uint64; + description + "Fib stats for no route pkts"; + } + leaf punt-unreachable-packets { + type uint64; + description + "Punt generate unreach pkt"; + } + leaf df-unreachable-packets { + type uint64; + description + "DF unreachable pkt"; + } + leaf encapsulation-failure-packets { + type uint64; + description + "Fib stats for encapsulation failure pkts"; + } + leaf incomplete-adjacency-packets { + type uint64; + description + "Fib stats for incomplete adjacency pkts"; + } + leaf unresolved-prefix-packets { + type uint64; + description + "Fib stats for unresolved prefix pkts"; + } + leaf unsupported-feature-packets { + type uint64; + description + "Fib stats for unsupported feature pkt"; + } + leaf discard-packets { + type uint64; + description + "Fib stats for discarded pkts"; + } + leaf checksum-error-packets { + type uint64; + description + "Fib stats for checksum error pkts"; + } + leaf fragmenation-consumed-packets { + type uint64; + description + "frag consumed packet pkt"; + } + leaf fragmenation-failure-packets { + type uint64; + description + "Fib stats for fragmenation failure pkt"; + } + leaf null-packets { + type uint64; + description + "null0 pkt"; + } + leaf rpf-check-failure-packets { + type uint64; + description + "RPF check failures pkt"; + } + leaf acl-in-rpf-packets { + type uint64; + description + "ACL in RPF pkt"; + } + leaf rp-destination-drop-packets { + type uint64; + description + "rp dest drop pkt"; + } + leaf total-number-of-drop-packets { + type uint64; + description + "Fib stats for the total number of dropped pkts"; + } + leaf mpls-disabled-interface { + type uint64; + description + "Fib number of drops for mpls disabled interfaces"; + } + leaf gre-lookup-failed-drop { + type uint64; + description + "GRE tunnel lookup failed drop pkt"; + } + leaf gre-error-drop { + type uint64; + description + "GRE processing errors"; + } + leaf lisp-punt-drops { + type uint64; + description + "LISP Punt drops"; + } + leaf lisp-encap-error-drops { + type uint64; + description + "Fib stats for Lisp encap error drops"; + } + leaf lisp-decap-error-drops { + type uint64; + description + "Fib stats for Lisp decap error drops"; + } + leaf multi-label-drops { + type uint64; + description + "Drops for the packets with multi[le labels"; + } + leaf unreachable-sr-label-drops { + type uint64; + description + "No route or unresolved route of MPLS SR labels"; + } + leaf ttl-expired-sr-label-drops { + type uint64; + description + "TTL expired drops of MPLS SR labels"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper.yang new file mode 100644 index 000000000..9b44daf61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fib-common-oper.yang @@ -0,0 +1,3601 @@ +module Cisco-IOS-XR-fib-common-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fib-common-oper"; + prefix fib-common-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fib-common-oper-sub7 { + revision-date 2022-10-17; + } + include Cisco-IOS-XR-fib-common-oper-sub6 { + revision-date 2022-10-17; + } + include Cisco-IOS-XR-fib-common-oper-sub5 { + revision-date 2022-10-17; + } + include Cisco-IOS-XR-fib-common-oper-sub4 { + revision-date 2022-10-17; + } + include Cisco-IOS-XR-fib-common-oper-sub3 { + revision-date 2022-10-17; + } + include Cisco-IOS-XR-fib-common-oper-sub2 { + revision-date 2022-10-17; + } + include Cisco-IOS-XR-fib-common-oper-sub1 { + revision-date 2022-10-17; + } + + 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 fib-common package operational data. + + This module contains definitions + for the following management objects: + fib-statistics: cef interface drops operational data + fib: FIB operational data + oc-aft-l3: Openconfig L3 abstract forwarding table data + mpls-forwarding: MPLS forwarding operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "CNHG changes + 2022-10-05 + Added PWHE and NPU mask for interface details + 2022-10-04 + Tunnel Encap/Decap: Added Prefix Length to the source and destination addresses + 2022-09-22 + Rate limiter statistics: Added drop stats + 2022-09-15 + Added Internal ID in PW-HE extension + 2022-08-29 + Summary statistics: Added udp-port information + 2022-07-19 + Added async-ack-support to FIB-SH-PLAT-CAPABILITIES, and ack-status, ack-latency, to FIB-GRIBI-ENTRY-INFO and FIB-GLOBAL-GRIBI-ENTRY. + 2022-07-07 + Added VRF base filtering for MPLS label stats + 2022-06-14 + Added program id, dst_ip and src_ip in next-hop and nhg fib.bag + 2022-06-13 + Added destination address to nve-ltep bag + 2022-05-13 + Added aft vrf-id to gribi bags + 2022-04-27 + Added vxlan-vni-id to ltep-tunnel + 2022-04-25 + Added RNH state + 2022-04-08 + Added table statistics + 2022-03-31 + Added sr-frr-nhid to frr-nhinfo-pending + 2022-03-24 + Added retry counts to object summary attributes + 2022-03-15 + Added vxlan-tunnels + 2022-03-01 + Added policy and hardware ingress and egress paths + 2022-02-16 + Added some SRv6 SIDs data + 2021-12-14 + Added gribi-table and hardware ingress and egress paths + 2021-11-26 + Added ltep-tunnels and hardware ingress and egress paths + 2021-11-05 + Added rtep-tunnels and hardware ingress and egress paths + 2021-11-03 + Added ltep-nve-tunnels hardware ingress and egress paths + 2021-10-23 + Added ltep-nve-tunnels and added object-id to object-base"; + semver:module-version "5.0.0"; + } + revision 2021-10-17 { + description + "Modify the type of list fsum-attr-cnt + 2021-09-17 + Rename lists unicast-prefix, broadcast-prefix and leafs num-retry-objects, old-unresolved-entries, new-unresolved-entries, unresolved-entries + 2021-07-30 + Added evpn bridge ID and SHG ID to srv6-information-for-path bag + 2021-07-06 + Added global-main subtree and support show CLIs for FIB IPC infra + 2021-05-25 + Migrate NHINFO to TI infra"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "Adding per-object accounting. + 2020-10-20 + NBC documentation of CSCvu06764, CSCvv14573,CSCvv76648 + 2020-05-26 + Update SRv6 Block Space naming convention + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "3.0.0"; + } + revision 2020-01-16 { + description + "NBC documentation of CSCvs27272,CSCvs22018,CSCvs45512 + 2019-10-29 + Updated srv6 global bag"; + semver:module-version "2.0.0"; + } + revision 2019-09-27 { + description + "IOS XR 7.0.x revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Fixed schema descriptions."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-20 { + description + "IOS XR 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fib-route-source { + type enumeration { + enum "lsd" { + value 5; + description + "LSD"; + } + enum "rib" { + value 7; + description + "RIB"; + } + enum "mrib" { + value 14; + description + "MRIB"; + } + } + description + "Fib route source"; + } + + typedef Fib-protocol { + type enumeration { + enum "ipv4" { + value 0; + description + "ipv4 protocol"; + } + enum "ipv6" { + value 1; + description + "ipv6 protocol"; + } + enum "mpls" { + value 2; + description + "MPLS protocol"; + } + } + description + "Fib protocol"; + } + + typedef Fib-adjacency { + type enumeration { + enum "none" { + value 0; + description + "Invalid type of adjacency"; + } + enum "tx-nh" { + value 1; + description + "Tx Nhinfo type of adjacency"; + } + enum "tx-interface" { + value 2; + description + "Tx Interface type of adjacency"; + } + } + description + "Fib adjacency"; + } + + typedef Fib-object { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "adjacency" { + value 8; + description + "NHINFO"; + } + enum "all" { + value 23; + description + "ALL"; + } + } + description + "Fib object"; + } + + typedef Fibipv6-flow-label { + type uint32 { + range "0..1048575"; + } + description + "Fibipv6 flow label"; + } + + typedef Ipvpn-tunnel { + type enumeration { + enum "ipvpn-tunnel-type-invalid" { + value 0; + description + "Invalid"; + } + enum "ipvpn-tunnel-type-l2tp" { + value 1; + description + "l2tpv3"; + } + enum "ipvpn-tunnel-type-mgre" { + value 2; + description + "merge"; + } + enum "ipvpn-tunnel-type-vxlan-l2" { + value 3; + description + "vxlan l2"; + } + enum "ipvpn-tunnel-type-gre" { + value 4; + description + "gre"; + } + enum "ipvpn-tunnel-type-ip" { + value 5; + description + "ip"; + } + enum "ipvpn-tunnel-type-te" { + value 6; + description + "te"; + } + enum "ipvpn-tunnel-type-vxlan-l3" { + value 7; + description + "vxlan l3"; + } + enum "ipvpn-tunnel-type-vxlan-l3-sfi" { + value 8; + description + "vxlan l3 sfi"; + } + enum "ipvpn-tunnel-type-mpl-so-udp" { + value 9; + description + "mpls udp"; + } + enum "ipvpn-tunnel-type-nh" { + value 10; + description + "ip nh"; + } + enum "ipvpn-tunnel-type-nh-tbl" { + value 11; + description + "ip nh tbl"; + } + enum "ipvpn-tunnel-type-vxlan" { + value 12; + description + "vxlan"; + } + enum "ipvpn-tunnel-type-per-interface" { + value 13; + description + "per intf"; + } + enum "ipvpn-tunnel-type-max" { + value 14; + description + "max"; + } + } + description + "Ipvpn tunnel"; + } + + typedef Fib-object-attribute { + type enumeration { + enum "none" { + value 0; + description + "Invalid type of attribute"; + } + enum "error" { + value 1; + description + "Error type of attribute"; + } + enum "out-of-resource" { + value 2; + description + "Out-of-Resource type of attribute"; + } + enum "adjacency" { + value 3; + description + "Adjacency type of attribute"; + } + } + description + "Fib object attribute"; + } + + typedef Fibafi-proto { + type enumeration { + enum "ipv4" { + value 0; + description + "ipv4 protocol"; + } + enum "ipv4-mpls" { + value 1; + description + "ipv4 mpls protocol"; + } + enum "ipv6" { + value 2; + description + "ipv6 protocol"; + } + enum "ipv6-mpls" { + value 3; + description + "ipv6 mpls protocol"; + } + } + description + "Fibafi proto"; + } + + typedef Fib-label { + type uint32 { + range "16..1048575"; + } + description + "Fib label"; + } + + typedef Fibllc-entry { + type enumeration { + enum "xc" { + value 1; + description + "LabelXconnect"; + } + enum "pfx" { + value 2; + description + "IPPrefix"; + } + } + description + "Fibllc entry"; + } + + typedef Fibnh-info-repl { + type enumeration { + enum "fib-nh-repl-none" { + value 0; + description + "None Replicated NHINFO"; + } + enum "fib-nh-repl-rsvpte" { + value 1; + description + "Replicated NHINFO for TE Accounting"; + } + enum "fib-nh-repl-sr-mpls" { + value 2; + description + "Replicated NHINFO for SR MPLS Accounting"; + } + enum "fib-nh-repl-bm" { + value 3; + description + "Replicated NHINFO for Bundle member"; + } + } + description + "Fibnh info repl"; + } + + typedef Fibfrr { + type enumeration { + enum "fib-te-frr-node" { + value 0; + description + "TE FRR"; + } + enum "fib-te-frr-intf" { + value 1; + description + "TE Interface FRR"; + } + enum "fib-te-frr-protected-nh" { + value 2; + description + "TE Protected FRR"; + } + enum "fib-te-frr-backup-nh" { + value 3; + description + "TE Backup FRR"; + } + enum "fib-per-link-frr-protected-nh" { + value 4; + description + "Per Link Protected FRR"; + } + enum "fib-per-link-frr-backup-nh" { + value 5; + description + "Per Link Backup FRR"; + } + enum "fib-prefix-frr-protected-nh" { + value 6; + description + "Per Prefix Protected FRR"; + } + enum "fib-prefix-frr-backup-nh" { + value 7; + description + "Per Prefix Backup FRR"; + } + enum "fib-pic-frr-protected-nh" { + value 8; + description + "BGP PIC Protected FRR"; + } + enum "fib-pic-frr-backup-nh" { + value 9; + description + "BGP PIC Backup FRR"; + } + } + description + "Fibfrr"; + } + + typedef Fib-link { + type enumeration { + enum "link-ipv4" { + value 0; + description + "IPv4 link protocol"; + } + enum "link-ipv6" { + value 1; + description + "IPv6 link protocol"; + } + enum "link-mpls" { + value 2; + description + "MPLS link protocol"; + } + } + description + "Fib link"; + } + + typedef Fibnh-remote { + type enumeration { + enum "fib-nh-rx" { + value 1; + description + "NHINFO Remote Type"; + } + } + description + "Fibnh remote"; + } + + typedef Mpls-label { + type uint32 { + range "16..1048575"; + } + description + "Mpls label"; + } + + typedef Mplseos { + type enumeration { + enum "eos0" { + value 0; + description + "EOS Disable"; + } + enum "eos1" { + value 1; + description + "EOS Enable"; + } + } + description + "Mplseos"; + } + + typedef Prefix-len-range { + type uint32 { + range "0..128"; + } + description + "Prefix len range"; + } + + typedef Aft-object { + type enumeration { + enum "fib-aft-invalid" { + value 0; + description + "Invalid"; + } + enum "fib-aft-next-hop" { + value 1; + description + "nh"; + } + enum "fib-aft-next-hop-group" { + value 2; + description + "nhg"; + } + enum "fib-aft-max" { + value 5; + description + "max"; + } + } + description + "Aft object"; + } + + typedef Fibnh-local { + type enumeration { + enum "fib-nh-tx" { + value 0; + description + "NHINFO Local Type"; + } + enum "fib-nh-special" { + value 2; + description + "NHINFO Special Type"; + } + } + description + "Fibnh local"; + } + + typedef Fibevni-key { + type enumeration { + enum "rtep-id-key" { + value 0; + description + "RTEP ID Key"; + } + enum "bgp-key" { + value 1; + description + "BGP Key"; + } + } + description + "Fibevni key"; + } + + typedef Generic-index { + type uint32 { + range "0..4294967295"; + } + description + "Generic index"; + } + + grouping STATE { + description + "Common node of prefix, label"; + container state { + description + "Operational data"; + uses FIB-OC-AFT-PRFX-STATE-V2; + } + } + + grouping NH-INFO-SPECIAL-PUNT-DETAIL-HARDWARE-INGRESS { + description + "Common node of + nh-info-special-detail-hardware-ingress, + nh-info-special-mpls-detail-hardware-ingress"; + container nh-info-special-punt-detail-hardware-ingress { + description + "Detail hardware ingress info for special-punt + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-PUNT-DETAIL { + description + "Common node of nh-info-special-detail, + nh-info-special-mpls-detail"; + container nh-info-special-punt-detail { + description + "Detail special NHInfo punt entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-DISCARD-DETAIL { + description + "Common node of nh-info-special-detail, + nh-info-special-mpls-detail"; + container nh-info-special-discard-detail { + description + "Detail special NHInfo discard entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-DROP-DETAIL { + description + "Common node of nh-info-special-detail, + nh-info-special-mpls-detail"; + container nh-info-special-drop-detail { + description + "Detail special NHInfo punt entry"; + uses FIB-SH-NHINFO; + } + } + + grouping OBJECT-TABLE { + description + "Common node of summary-protocol, total"; + container objects { + description + "Object Table"; + list object { + key "object-id"; + description + "Object Table entry"; + leaf object-id { + type uint32; + description + "Object ID"; + } + uses FIB-BAG-SUM-OBJ; + } + } + } + + grouping NH-INFO-SPECIAL-DROP-BRIEF { + description + "Common node of nh-info-special-brief, + nh-info-special-mpls-brief"; + container nh-info-special-drop-brief { + description + "Brief special NHInfo drop entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-DISCARD-BRIEF { + description + "Common node of nh-info-special-brief, + nh-info-special-mpls-brief"; + container nh-info-special-discard-brief { + description + "Brief special NHInfo discard entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-PUNT-BRIEF { + description + "Common node of nh-info-special-brief, + nh-info-special-mpls-brief"; + container nh-info-special-punt-brief { + description + "Brief special NHInfo punt entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-DROP-DETAIL-HARDWARE-EGRESS { + description + "Common node of + nh-info-special-detail-hardware-egress, + nh-info-special-mpls-detail-hardware-egress"; + container nh-info-special-drop-detail-hardware-egress { + description + "Detail hardware egress info for special-drop + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + grouping ERROR { + description + "Common node of ipv4, ipv6"; + container error { + description + "Error data"; + container state { + description + "Error data"; + uses FIB-OC-AFT-ERROR-STATE; + } + } + } + + grouping INFORMATION { + description + "Common node of vrf, forwarding"; + list information { + description + "MPLS forwarding information"; + leaf label-value { + type Mpls-label; + description + "Local label value"; + } + leaf eos { + type Mplseos; + description + "End of stack flag"; + } + uses MPLS-SH-LEAF; + } + } + + grouping PREFIX-TABLE { + description + "Common node of ipv6-unicast, ipv4-unicast"; + container prefixes { + description + "Table of IP prefixes"; + list prefix { + key "prefix"; + description + "Prefix data"; + leaf prefix { + type string; + description + "Prefix"; + } + uses STATE; + } + } + } + + grouping NH-INFO-SPECIAL-NULL-DETAIL-HARDWARE-INGRESS { + description + "Common node of + nh-info-special-detail-hardware-ingress, + nh-info-special-mpls-detail-hardware-ingress"; + container nh-info-special-null-detail-hardware-ingress { + description + "Detail hardware ingress info for special-null + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-DISCARD-DETAIL-HARDWARE-EGRESS { + description + "Common node of + nh-info-special-detail-hardware-egress, + nh-info-special-mpls-detail-hardware-egress"; + container nh-info-special-discard-detail-hardware-egress { + description + "Detail hardware egress info for special-discard + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-NULL-BRIEF { + description + "Common node of nh-info-special-brief, + nh-info-special-mpls-brief"; + container nh-info-special-null-brief { + description + "Brief special NHInfo null entry"; + uses FIB-SH-NHINFO; + } + } + + grouping OOR { + description + "Common node of ipv4, ipv6"; + container oor { + description + "OOR data"; + container state { + description + "OOR data"; + uses FIB-OC-AFT-OOR-STATE; + } + } + } + + grouping NH-INFO-SPECIAL-DISCARD-DETAIL-HARDWARE-INGRESS { + description + "Common node of + nh-info-special-detail-hardware-ingress, + nh-info-special-mpls-detail-hardware-ingress"; + container nh-info-special-discard-detail-hardware-ingress { + description + "Detail hardware ingress info for special-discard + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-NULL-DETAIL { + description + "Common node of nh-info-special-detail, + nh-info-special-mpls-detail"; + container nh-info-special-null-detail { + description + "Detail special NHInfo null entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-NULL-DETAIL-HARDWARE-EGRESS { + description + "Common node of + nh-info-special-detail-hardware-egress, + nh-info-special-mpls-detail-hardware-egress"; + container nh-info-special-null-detail-hardware-egress { + description + "Detail hardware egress info for special-null + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-PUNT-DETAIL-HARDWARE-EGRESS { + description + "Common node of + nh-info-special-detail-hardware-egress, + nh-info-special-mpls-detail-hardware-egress"; + container nh-info-special-punt-detail-hardware-egress { + description + "Detail hardware egress info for special-punt + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + grouping NH-INFO-SPECIAL-DROP-DETAIL-HARDWARE-INGRESS { + description + "Common node of + nh-info-special-detail-hardware-ingress, + nh-info-special-mpls-detail-hardware-ingress"; + container nh-info-special-drop-detail-hardware-ingress { + description + "Detail hardware ingress info for special-drop + NHInfo entry"; + uses FIB-SH-NHINFO; + } + } + + container fib-statistics { + config false; + description + "cef interface drops operational data"; + container nodes { + description + "List of nodes"; + list node { + key "node-name"; + description + "Specific node operational data"; + container drops { + description + "Specific node drops"; + uses FIB-STATISTICS-BAG-DROPS; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container fib { + config false; + description + "FIB operational data"; + container nodes { + description + "Table of nodes"; + list node { + key "node-name"; + description + "Operational data for a specific Node"; + container global { + description + "FIB Global info"; + container fib-cofo { + description + "Collapsed Forwarding"; + container fib-cofo-idb { + description + "Collapsed Forwarding IDB Table"; + container fib-cofo-idb-table-entries { + description + "Collapsed Forwarding Idb Table Entries"; + list fib-cofo-idb-table-entry { + description + "Collapsed Forwarding Idb Table Entries"; + leaf sdr-id { + type uint32; + description + "SDR ID value"; + } + leaf if-index { + type uint32; + description + "Interface Index"; + } + uses FIB-SH-COFO-IDB-TBL-ENTRY-INFO; + } + } + } + container fib-cofo-table-id { + description + "Collapsed Forwarding Table Id Table"; + container fib-cofo-table-id-entries { + description + "Collapsed Forwarding Table Id Entries"; + list fib-cofo-table-id-entry { + description + "Collapsed Forwarding Idb Table Entries"; + leaf sdr-id { + type uint32; + description + "SDR ID value"; + } + leaf protocol { + type Fib-protocol; + description + "Protocol"; + } + leaf rd { + type xr:Cisco-ios-xr-string; + description + "Route Distinguisher"; + } + leaf table-id { + type uint32; + description + "Table Id"; + } + uses FIB-SH-COFO-TBL-ID-ENTRY-INFO; + } + } + container fib-cofo-table-id-summary { + description + "Collapsed Forwarding Table Id Entries"; + uses FIB-SH-COFO-TBL-ID-DB-SUM; + } + } + } + container summary { + description + "Global Summary"; + container total { + description + "Display total"; + container counters { + description + "Display total counters and common info"; + uses FIB-GLOBAL-SUMMARY-TOTAL; + } + uses OBJECT-TABLE; + } + container summary-protocols { + description + "Summary Protocol Table"; + list summary-protocol { + key "protocol-name"; + description + "Summary Protocol Table entry"; + container proto-counters { + description + "Display protocol counters"; + uses FIB-GLOBAL-SUMMARY-PROTO; + } + leaf protocol-name { + type Fibafi-proto; + description + "Protocol Name"; + } + uses OBJECT-TABLE; + } + } + } + container encap-id-database { + description + "Encap ID database"; + container summary { + description + "Encap ID DB summary"; + uses FIB-ENCAP-ID-SUMMARY; + } + container encap-id-incompletes { + description + "Incomplete Encap ID entry table"; + list encap-id-incomplete { + key "object-id"; + description + "Incomplete Encap ID entry"; + leaf object-id { + type xr:Cisco-ios-xr-string; + description + "Object ID"; + } + uses FIB-OBJECT-ENCAP-ID-INFO; + } + } + container encap-ids { + description + "Encap ID table"; + list encap-id { + key "encap-id"; + description + "Encap ID entry"; + leaf encap-id { + type xr:Cisco-ios-xr-string; + description + "Encap ID"; + } + uses FIB-OBJECT-ENCAP-ID-INFO; + } + } + } + container object-history { + description + "FIB Global Object History"; + container obj-history-protos { + description + "Proto Table"; + list obj-history-proto { + key "protocol-name"; + description + "Protocol Table entry"; + leaf protocol-name { + type Fibafi-proto; + description + "Protocol Name"; + } + uses FIB-GLOBAL-SUMMARY-OBJ-HISTORY-PROTO; + } + } + } + container gribi-database { + description + "GRIBI table database"; + container gribi-table-summary { + description + "GRIBI table summary"; + uses FIB-COMMON-GRIBI-TBL-STATS; + } + container gribi-hardware-ingresses { + description + "GRIBI table"; + list gribi-hardware-ingress { + description + "GRIBI table entry"; + leaf vrf-id { + type xr:Hex-integer; + description + "VRF ID"; + } + leaf fib-object-id { + type xr:Cisco-ios-xr-string; + description + "FIB object ID"; + } + leaf aft-object-type { + type Aft-object; + description + "AFT object type"; + } + uses FIB-GLOBAL-GRIBI-ENTRY; + } + } + container gribi-hardware-egresses { + description + "GRIBI table"; + list gribi-hardware-egress { + description + "GRIBI table entry"; + leaf vrf-id { + type xr:Hex-integer; + description + "VRF ID"; + } + leaf fib-object-id { + type xr:Cisco-ios-xr-string; + description + "FIB object ID"; + } + leaf aft-object-type { + type Aft-object; + description + "AFT object type"; + } + uses FIB-GLOBAL-GRIBI-ENTRY; + } + } + container gribis { + description + "GRIBI table"; + list gribi { + description + "GRIBI table entry"; + leaf vrf-id { + type xr:Hex-integer; + description + "VRF ID"; + } + leaf fib-object-id { + type xr:Cisco-ios-xr-string; + description + "FIB object ID"; + } + leaf aft-object-type { + type Aft-object; + description + "AFT object type"; + } + uses FIB-GLOBAL-GRIBI-ENTRY; + } + } + } + container tunnel-database { + description + "TunnelTable database"; + container evni-tunnel-internal-rteps { + description + "EVNI internal tunnel database for RTEP ID + based key"; + list evni-tunnel-internal-rtep { + description + "EVNI internal table entry for RTEP ID based + key"; + leaf vni-info-key-type { + type Fibevni-key; + description + "VXLAN EVNI Table key type"; + } + leaf rtep-id { + type uint32; + description + "RTEP ID"; + } + uses FIB-VNI-INFO-ENTRY; + } + } + container evni-tunnel-internal-bgps { + description + "EVNI internal tunnel database for BGP based + key"; + list evni-tunnel-internal-bgp { + description + "EVNI internal table entry for BGP based key"; + leaf vni-info-key-type { + type Fibevni-key; + description + "VXLAN EVNI Table key type"; + } + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf vrf-name { + type string; + description + "VXLAN EVNI Table vrf name"; + } + leaf vni-id { + type uint32; + description + "VNI ID"; + } + uses FIB-VNI-INFO-ENTRY; + } + } + container ltep-nve-tunnel-hardware-egresses { + description + "Ltep NVE Tunnel table"; + list ltep-nve-tunnel-hardware-egress { + description + "LTEP NVE table entry"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + leaf nve-interface-id { + type uint32; + description + "NVE interface ID"; + } + leaf vni-id { + type uint32; + description + "VNI ID"; + } + uses FIB-GLOBAL-LTEP-NVE-ENTRY; + } + } + container evni-tunnel-rteps { + description + "EVNI tunnel database for RTEP ID based key"; + list evni-tunnel-rtep { + description + "EVNI table entry for RTEP ID based key"; + leaf vni-info-key-type { + type Fibevni-key; + description + "VXLAN EVNI Table key type"; + } + leaf rtep-id { + type uint32; + description + "RTEP ID"; + } + uses FIB-VNI-INFO-ENTRY; + } + } + container ltep-nve-tunnel-table-summary { + description + "Ltep NVE Tunnel table summary"; + uses FIB-COMMON-LTEP-NVE-TBL-STATS; + } + container ltep-nve-tunnels { + description + "Ltep NVE Tunnel table"; + list ltep-nve-tunnel { + description + "LTEP NVE table entry"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + leaf nve-interface-id { + type uint32; + description + "NVE interface ID"; + } + leaf vni-id { + type uint32; + description + "VNI ID"; + } + uses FIB-GLOBAL-LTEP-NVE-ENTRY; + } + } + container evni-tunnel-bgps { + description + "EVNI tunnel database for BGP based key"; + list evni-tunnel-bgp { + description + "EVNI table entry for BGP based key"; + leaf vni-info-key-type { + type Fibevni-key; + description + "VXLAN EVNI Table key type"; + } + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf vrf-name { + type string; + description + "VXLAN EVNI Table vrf name"; + } + leaf vni-id { + type uint32; + description + "VNI ID"; + } + uses FIB-VNI-INFO-ENTRY; + } + } + container ltep-nve-tunnel-hardware-ingresses { + description + "Ltep NVE Tunnel table"; + list ltep-nve-tunnel-hardware-ingress { + description + "LTEP NVE table entry"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + leaf nve-interface-id { + type uint32; + description + "NVE interface ID"; + } + leaf vni-id { + type uint32; + description + "VNI ID"; + } + uses FIB-GLOBAL-LTEP-NVE-ENTRY; + } + } + } + container aggregation-db { + description + "Aggregation database"; + container aggregation-entries { + description + "Aggregation table"; + list aggregation-entry { + description + "Aggregation table entry"; + leaf protocol { + type Fib-protocol; + description + "Protocol type"; + } + leaf object-type { + type Fib-object; + description + "Object Type"; + } + leaf attribute-type { + type Fib-object-attribute; + description + "Attribute Type"; + } + leaf is-mpls { + type boolean; + description + "Is MPLS flag?"; + } + leaf adjacency-interface { + type xr:Interface-name; + description + "Adjacency interface name"; + } + leaf adjacency-next-hop { + type xr:Cisco-ios-xr-string; + description + "Adjacency next hop address"; + } + leaf adjacency-application-type { + type Fibnh-info-repl; + description + "Adjacency application type"; + } + leaf adjacency-type { + type Fib-adjacency; + description + "Adjacency type"; + } + uses FIB-GLOBAL-AGGREGATION-ENTRY; + } + } + container aggregation-summary { + description + "Aggregation table summary"; + uses FIB-GLOBAL-AGGREGATION-SUMMARY; + } + } + } + container global-main { + description + "FIB Global info from the Main thread"; + container global-retry-db-entries { + description + "Details for retry db"; + list global-retry-db-entry { + description + "Details for retry_db corresponding to index"; + leaf index { + type Generic-index; + description + "Index"; + } + leaf frsc { + type Generic-index; + description + "Frsc"; + } + leaf queue-id { + type Generic-index; + description + "Queue Id"; + } + uses FIB-RETRY-DB-INFO; + } + } + container clients { + description + "Client table"; + list client { + key "client-id"; + description + "FIB Client"; + leaf client-id { + type uint32; + description + "Client ID"; + } + uses FIB-GLOBAL-CLIENT; + } + } + } + container protocols { + description + "Protocol table"; + list protocol { + key "protocol-name"; + description + "Protocol table entry"; + container resource-oor { + description + "Resource out of resource information"; + uses FIB-SH-RSRC-AVAIL-OOR-STATE; + } + container issu-state { + description + "CEF ISSU State"; + uses FIB-ISSU-STATE; + } + container cef-tables { + description + "Details for cef tables db"; + list cef-table { + description + "Details for cef_db corresponding to + table_id"; + leaf table-id { + type xr:Hex-integer; + description + "Table Id"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + uses FIB-SH-SUM; + } + } + container interfaces { + description + "Interface list data details"; + list interface { + description + "Details for interface list data"; + leaf protocol-id { + type Fib-protocol; + description + "Protocol ID"; + } + leaf interface-list-id { + type uint32 { + range "0..4294967295"; + } + description + "Interface List ID"; + } + leaf interface-list-name { + type xr:Cisco-ios-xr-string; + description + "Interface List Name"; + } + uses FIB-GENERIC-INTF-LIST-DATA; + } + } + container resource { + description + "Resource information"; + container resource-detail-info { + description + "Detailed info"; + uses FIB-SH-RSRC-AVAIL-STATE; + } + container resource-hardware-ingress-info { + description + "Detailed info with ingress hardware info"; + uses FIB-SH-RSRC-AVAIL-STATE; + } + container resource-hardware-egress-info { + description + "Detailed info with egress hardware info"; + uses FIB-SH-RSRC-AVAIL-STATE; + } + container resource-summary-info { + description + "Summary info"; + uses FIB-SH-RSRC-AVAIL-STATE; + } + } + container fib-summaries { + description + "Summary for FIB tables"; + list fib-summary { + description + "Summary for the requested fib table"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type xr:Hex-integer; + description + "FIB table id"; + } + uses FIB-SH-SUM; + } + } + container object-queues { + description + "Object queue details"; + list object-queue { + key "object-queue-id"; + description + "Details for corresponding object queue id"; + leaf object-queue-id { + type uint32 { + range "0..255"; + } + description + "Object Queue ID"; + } + uses FIB-OBJECT-QUEUE-INFO; + } + } + container external-summary-all { + description + "Summary for all external clients"; + uses FIB-SH-TBL-EXT-SUM-ALL; + } + container frr-log { + description + "Table of Fast Reroute activation logs"; + container frr-interfaces { + description + "FRR Interface Table"; + list frr-interface { + key "frr-interface-name"; + description + "Specify FRR Interface Name"; + container logs { + description + "FRR log table"; + list log { + key "log-index"; + description + "Specify index into frr log table"; + leaf log-index { + type uint32; + description + "FRR Log Index"; + } + uses FIB-SH-FRR-LOG; + } + } + leaf frr-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } + container retry-db-entries { + description + "Details for retry db"; + list retry-db-entry { + description + "Details for retry_db corresponding to index"; + leaf index { + type Generic-index; + description + "Index"; + } + leaf frsc { + type Generic-index; + description + "Frsc"; + } + leaf queue-id { + type Generic-index; + description + "Queue Id"; + } + uses FIB-RETRY-DB-INFO; + } + } + container protocol-tunnel-database { + description + "Protocol tunnel database"; + container ltep-tunnel-table-summary { + description + "LTEP table summary"; + uses FIB-COMMON-LTEP-TBL-STATS; + } + container rtep-tunnel-table-summary { + description + "RTEP table summary"; + uses FIB-COMMON-RTEP-TBL-STATS; + } + container ltep-tunnel-hardware-egresses { + description + "Ltep Tunnel database, HW Egress"; + list ltep-tunnel-hardware-egress { + description + "LTEP table entry, HW Egress"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf source-address { + type xr:Cisco-ios-xr-string; + description + "Source address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-vni-id { + type uint32; + description + "VxLAN VNI ID"; + } + uses FIB-COMMON-LTEP-ENTRY; + } + } + container rtep-tunnel-hardware-egresses { + description + "Rtep Tunnel database, HW Egress"; + list rtep-tunnel-hardware-egress { + description + "RTEP table entry, HW Egress"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf destination-address { + type xr:Cisco-ios-xr-string; + description + "Destination address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-overlay-table-id { + type xr:Hex-integer; + description + "VxLAN Overlay Table Id"; + } + leaf vxlan-e-vni-id { + type uint32; + description + "VxLAN E-VNI ID"; + } + leaf is-default { + type boolean; + description + "Is Default LTEP NVE"; + } + leaf table-id { + type xr:Hex-integer; + description + "LTEP_NVE Table ID"; + } + leaf nve-interface-id { + type uint32; + description + "LTEP_NVE NVE ID"; + } + leaf vni-id { + type uint32; + description + "LTEP_NVE VNI ID"; + } + uses FIB-COMMON-RTEP-ENTRY; + } + } + container rtep-tunnel-internals { + description + "Rtep tunnel database"; + list rtep-tunnel-internal { + description + "RTEP table entry"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf destination-address { + type xr:Cisco-ios-xr-string; + description + "Destination address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-overlay-table-id { + type xr:Hex-integer; + description + "VxLAN Overlay Table Id"; + } + leaf vxlan-e-vni-id { + type uint32; + description + "VxLAN E-VNI ID"; + } + leaf is-default { + type boolean; + description + "Is Default LTEP NVE"; + } + leaf table-id { + type xr:Hex-integer; + description + "LTEP_NVE Table ID"; + } + leaf nve-interface-id { + type uint32; + description + "LTEP_NVE NVE ID"; + } + leaf vni-id { + type uint32; + description + "LTEP_NVE VNI ID"; + } + uses FIB-COMMON-RTEP-ENTRY; + } + } + container rtep-tunnels { + description + "Rtep tunnel database"; + list rtep-tunnel { + description + "RTEP table entry"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf destination-address { + type xr:Cisco-ios-xr-string; + description + "Destination address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-overlay-table-id { + type xr:Hex-integer; + description + "VxLAN Overlay Table Id"; + } + leaf vxlan-e-vni-id { + type uint32; + description + "VxLAN E-VNI ID"; + } + leaf is-default { + type boolean; + description + "Is Default LTEP NVE"; + } + leaf table-id { + type xr:Hex-integer; + description + "LTEP_NVE Table ID"; + } + leaf nve-interface-id { + type uint32; + description + "LTEP_NVE NVE ID"; + } + leaf vni-id { + type uint32; + description + "LTEP_NVE VNI ID"; + } + uses FIB-COMMON-RTEP-ENTRY; + } + } + container ltep-tunnel-hardware-ingresses { + description + "Ltep Tunnel database, HW Ingress"; + list ltep-tunnel-hardware-ingress { + description + "LTEP table entry, HW Ingress"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf source-address { + type xr:Cisco-ios-xr-string; + description + "Source address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-vni-id { + type uint32; + description + "VxLAN VNI ID"; + } + uses FIB-COMMON-LTEP-ENTRY; + } + } + container ltep-tunnel-internals { + description + "Ltep tunnel database"; + list ltep-tunnel-internal { + description + "LTEP table entry"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf source-address { + type xr:Cisco-ios-xr-string; + description + "Source address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-vni-id { + type uint32; + description + "VxLAN VNI ID"; + } + uses FIB-COMMON-LTEP-ENTRY; + } + } + container rtep-tunnel-hardware-ingresses { + description + "Rtep Tunnel database, HW Ingress"; + list rtep-tunnel-hardware-ingress { + description + "RTEP table entry, HW Ingress"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf destination-address { + type xr:Cisco-ios-xr-string; + description + "Destination address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-overlay-table-id { + type xr:Hex-integer; + description + "VxLAN Overlay Table Id"; + } + leaf vxlan-e-vni-id { + type uint32; + description + "VxLAN E-VNI ID"; + } + leaf is-default { + type boolean; + description + "Is Default LTEP NVE"; + } + leaf table-id { + type xr:Hex-integer; + description + "LTEP_NVE Table ID"; + } + leaf nve-interface-id { + type uint32; + description + "LTEP_NVE NVE ID"; + } + leaf vni-id { + type uint32; + description + "LTEP_NVE VNI ID"; + } + uses FIB-COMMON-RTEP-ENTRY; + } + } + container ltep-tunnels { + description + "Ltep tunnel database"; + list ltep-tunnel { + description + "LTEP table entry"; + leaf tunnel-type { + type Ipvpn-tunnel; + description + "Tunnel type"; + } + leaf source-address { + type xr:Cisco-ios-xr-string; + description + "Source address"; + } + leaf underlay-table-id { + type xr:Hex-integer; + description + "Underlay Table Id"; + } + leaf vxlan-vni-id { + type uint32; + description + "VxLAN VNI ID"; + } + uses FIB-COMMON-LTEP-ENTRY; + } + } + } + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "VRF table entry"; + container ip-prefix-details { + description + "IP FIB prefix detail table"; + list ip-prefix-detail { + description + "IP FIB prefix detail table entry"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Destination IP address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "IP FIB prefix length"; + } + uses FIB-SH-TBL-FIB; + } + } + container summary { + description + "Operational data for FIB Tablee"; + uses FIB-SH-SUM; + } + container attributes { + description + "Information on attribute data"; + list attribute { + description + "Attribute Data"; + leaf attribute-index { + type uint32 { + range "0..4294967295"; + } + description + "Attribute Index"; + } + leaf attribute-local-index { + type uint32 { + range "0..4294967295"; + } + description + "Attribute Local Index"; + } + uses FIB-ATTRIBUTE-DET; + } + } + container ipv6-d-var-details { + description + "IPv6 FIB prefix DVAR table"; + list ipv6-d-var-detail { + description + "IPv6 FIB prefix dvar entry"; + leaf table-id { + type xr:Hex-integer; + description + "Table Id"; + } + leaf prefix { + type inet:ip-address-no-zone; + description + "IPv6 address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "IPv6 prefix length"; + } + uses FIB-SH-TBL-FIB-DVARS; + } + } + container interface-infos { + description + "Table of InterfaceInfo"; + list interface-info { + key "link-type"; + description + "Specify link type"; + container interfaces { + description + "Table of interfaces"; + list interface { + key "interface-name"; + description + "Specify Interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses FIB-SH-INT; + } + } + leaf link-type { + type Fib-link; + description + "Link type"; + } + } + } + container recursive-nexthops { + description + "Information on Recursive Nexthop"; + list recursive-nexthop { + description + "Route address, Prefix length"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Route Address "; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix Length"; + } + uses FIB-SH-REC-NH; + } + } + container ip-prefix-briefs { + description + "IP FIB prefix brief table"; + list ip-prefix-brief { + description + "IP FIB prefix brief table entry"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Destination IP address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "IP FIB prefix length"; + } + uses FIB-SH-TBL-FIB; + } + } + container ipv4-d-var-details { + description + "IPv4 FIB prefix DVAR table"; + list ipv4-d-var-detail { + description + "IPv4 FIB prefix dvar entry"; + leaf table-id { + type xr:Hex-integer; + description + "Table Id"; + } + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "IPv4 prefix length"; + } + uses FIB-SH-TBL-FIB-DVARS; + } + } + container attribute-summary { + description + "Information on attribute summary"; + uses FIB-ATTRIBUTE-SUMMARY; + } + container ipv6-recursive-nexthops { + description + "Information on IPv6 Recursive Nexthop"; + list ipv6-recursive-nexthop { + description + "IPv6 Route address, IPv6 Prefix length"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv6 Route Address "; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "IPv6 Prefix Length"; + } + uses FIB-SH-REC-NH; + } + } + container policy-database { + description + "Database of Policies"; + container policy-hardware-egresses { + description + "Policy Table"; + list policy-hardware-egress { + key "policy-name"; + description + "Policy Entry"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Policy Name"; + } + uses FIB-SH-POLICY-ENTRY; + } + } + container policies { + description + "Policy Table"; + list policy { + key "policy-name"; + description + "Policy Entry"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Policy Name"; + } + uses FIB-SH-POLICY-ENTRY; + } + } + container policy-hardware-ingresses { + description + "Policy Table"; + list policy-hardware-ingress { + key "policy-name"; + description + "Policy Entry"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Policy Name"; + } + uses FIB-SH-POLICY-ENTRY; + } + } + } + container nh-info { + description + "FIB NHInfo table"; + container nh-info-detail-hardware-egress { + description + "NHInfoTable is accessed by two keys; + {NHInterface,NHAddress}"; + container nh-info-local-mpls-detail-hardware-egresses { + description + "Local (non-remote) nhinfo"; + list nh-info-local-mpls-detail-hardware-egress { + description + "MPLS Detail-Hardware-Egress NHinfo + entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-special-detail-hardware-egress { + description + "Detail hardware egress info for Special + nhinfo"; + uses NH-INFO-SPECIAL-NULL-DETAIL-HARDWARE-EGRESS; + uses NH-INFO-SPECIAL-PUNT-DETAIL-HARDWARE-EGRESS; + uses NH-INFO-SPECIAL-DISCARD-DETAIL-HARDWARE-EGRESS; + uses NH-INFO-SPECIAL-DROP-DETAIL-HARDWARE-EGRESS; + } + container nh-info-local-detail-hardware-egresses { + description + "Local (non-remote) nhinfo"; + list nh-info-local-detail-hardware-egress { + description + "Detail-Hardware-Egress NHinfo entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-remote-mpls-detail-hardware-egresses { + description + "Detail hardware egress info for remote + NHInfo table"; + list nh-info-remote-mpls-detail-hardware-egress { + description + "MPLS Detail-Hardware-Egress NHinfo + entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-special-mpls-detail-hardware-egress { + description + "Detail hardware egress info for Special + nhinfo"; + uses NH-INFO-SPECIAL-NULL-DETAIL-HARDWARE-EGRESS; + uses NH-INFO-SPECIAL-PUNT-DETAIL-HARDWARE-EGRESS; + uses NH-INFO-SPECIAL-DISCARD-DETAIL-HARDWARE-EGRESS; + uses NH-INFO-SPECIAL-DROP-DETAIL-HARDWARE-EGRESS; + } + container nh-info-remote-detail-hardware-egresses { + description + "Detail hardware egress info for remote + NHInfo table"; + list nh-info-remote-detail-hardware-egress { + description + "Detail-Hardware-Egress NHinfo entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + } + container nh-info-detail { + description + "NHInfoTable is accessed by two keys; + {NHInterface,NHAddress}"; + container nh-info-local-details { + description + "Local (non-remote) nhinfo"; + list nh-info-local-detail { + description + "Detail NHinfo entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-remote-mpls-details { + description + "Detailed Remote NHInfo table"; + list nh-info-remote-mpls-detail { + description + "MPLS Detail NHinfo entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-local-mpls-details { + description + "Local (non-remote) nhinfo"; + list nh-info-local-mpls-detail { + description + "MPLS Detail NHinfo entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-special-detail { + description + "Special nhinfo"; + uses NH-INFO-SPECIAL-PUNT-DETAIL; + uses NH-INFO-SPECIAL-DROP-DETAIL; + uses NH-INFO-SPECIAL-NULL-DETAIL; + uses NH-INFO-SPECIAL-DISCARD-DETAIL; + } + container nh-info-special-mpls-detail { + description + "Special nhinfo"; + uses NH-INFO-SPECIAL-PUNT-DETAIL; + uses NH-INFO-SPECIAL-DROP-DETAIL; + uses NH-INFO-SPECIAL-NULL-DETAIL; + uses NH-INFO-SPECIAL-DISCARD-DETAIL; + } + container nh-info-remote-details { + description + "Detailed Remote NHInfo table"; + list nh-info-remote-detail { + description + "Detail NHinfo entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + } + container nh-info-detail-hardware-ingress { + description + "NHInfoTable is accessed by two keys; + {NHInterface,NHAddress}"; + container nh-info-special-mpls-detail-hardware-ingress { + description + "Special nhinfo"; + uses NH-INFO-SPECIAL-PUNT-DETAIL-HARDWARE-INGRESS; + uses NH-INFO-SPECIAL-NULL-DETAIL-HARDWARE-INGRESS; + uses NH-INFO-SPECIAL-DROP-DETAIL-HARDWARE-INGRESS; + uses NH-INFO-SPECIAL-DISCARD-DETAIL-HARDWARE-INGRESS; + } + container nh-info-remote-detail-hardware-ingresses { + description + "Detailed hardware ingress info for + remote NHInfo table"; + list nh-info-remote-detail-hardware-ingress { + description + "Detail-Hardware-Ingress NHinfo entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-remote-mpls-detail-hardware-ingresses { + description + "Detailed hardware ingress info for + remote NHInfo table"; + list nh-info-remote-mpls-detail-hardware-ingress { + description + "MPLS Detail-Hardware-Ingress NHinfo + entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-local-detail-hardware-ingresses { + description + "Local (non-remote) nhinfo"; + list nh-info-local-detail-hardware-ingress { + description + "Detail-Hardware-Ingress NHinfo entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-special-detail-hardware-ingress { + description + "Special nhinfo"; + uses NH-INFO-SPECIAL-PUNT-DETAIL-HARDWARE-INGRESS; + uses NH-INFO-SPECIAL-NULL-DETAIL-HARDWARE-INGRESS; + uses NH-INFO-SPECIAL-DROP-DETAIL-HARDWARE-INGRESS; + uses NH-INFO-SPECIAL-DISCARD-DETAIL-HARDWARE-INGRESS; + } + container nh-info-local-mpls-detail-hardware-ingresses { + description + "Local (non-remote) nhinfo"; + list nh-info-local-mpls-detail-hardware-ingress { + description + "MPLS Detail-Hardware-Ingress NHinfo + entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + } + container nh-info-brief { + description + "NHInfoTable is accessed by two keys; + {NHInterface,NHAddress}"; + container nh-info-special-mpls-brief { + description + "Special nhinfo"; + uses NH-INFO-SPECIAL-DISCARD-BRIEF; + uses NH-INFO-SPECIAL-NULL-BRIEF; + uses NH-INFO-SPECIAL-PUNT-BRIEF; + uses NH-INFO-SPECIAL-DROP-BRIEF; + } + container nh-info-special-brief { + description + "Special nhinfo"; + uses NH-INFO-SPECIAL-DISCARD-BRIEF; + uses NH-INFO-SPECIAL-NULL-BRIEF; + uses NH-INFO-SPECIAL-PUNT-BRIEF; + uses NH-INFO-SPECIAL-DROP-BRIEF; + } + container nh-info-local-mpls-briefs { + description + "Local (non-remote) nhinfo"; + list nh-info-local-mpls-brief { + description + "MPLS Brief NHinfo entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-remote-briefs { + description + "remote nhinfo"; + list nh-info-remote-brief { + description + "Brief NHinfo entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-local-briefs { + description + "Local (non-remote) nhinfo"; + list nh-info-local-brief { + description + "Brief NHinfo entry"; + leaf nh-local-type { + type Fibnh-local; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + container nh-info-remote-mpls-briefs { + description + "remote nhinfo"; + list nh-info-remote-mpls-brief { + description + "MPLS Brief NHinfo entry"; + leaf nh-remote-type { + type Fibnh-remote; + description + "Next-hop Type"; + } + leaf parent-nh-interface-name { + type xr:Interface-name; + description + "Parent Interface Name"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-proto { + type Fib-protocol; + description + "Next-hop proto"; + } + leaf nh-pfx-length { + type uint32; + description + "Next-hop prefix length"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format"; + } + uses FIB-SH-NHINFO; + } + } + } + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } + } + container exact-routes { + description + "Exact Route Table"; + list exact-route { + description + "Exact route for the given source and + destination addresses"; + leaf protocol-name { + type Fib-protocol; + description + "Fib Protocol Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf source { + type xr:Cisco-ios-xr-string; + description + "Source address"; + } + leaf destination { + type xr:Cisco-ios-xr-string; + description + "Destination address"; + } + leaf ipv6-flow-label { + type Fibipv6-flow-label; + description + "IPv6 flow label (applies only to and used + only for IPv6)"; + } + uses FIB-SH-TBL-FIB; + } + } + container protocol-global { + description + "FIB SRV6 global information"; + container segment-routing { + description + "FIB SRV6 global segment routing information"; + container srv6 { + description + "FIB ipv6 global segment routing srv6 + information"; + uses FIB-SRV6-GBL-UPD; + } + } + } + container nh-ids { + description + "NHIdTable is accessed by two keys; {NHId} + and/or {NHInterface,NHAddress"; + list nh-id { + description + "NextHopId table entry"; + leaf nh-id { + type uint32; + description + "NexthopId Value"; + } + leaf nh-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf nh-address { + type xr:Cisco-ios-xr-string; + description + "Next-hop address in string format (e.g., 1 + .2.3.4)"; + } + uses FIB-SH-NHID-ENTRY; + } + } + container frr-nhinfo-pendings { + description + "FIB FRR NHINFO pending information"; + list frr-nhinfo-pending { + description + "FIB FRR Nhinfo pending information"; + leaf queue-index { + type Generic-index; + description + "FIB FRR Queue Index"; + } + leaf frr-type { + type Fibfrr; + description + "FRR Type"; + } + leaf link-type { + type Fib-link; + description + "Link Type"; + } + leaf prefix-length { + type Prefix-len-range; + description + "Prefix Length"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf main-interface-name { + type xr:Interface-name; + description + "Main Interface Name"; + } + leaf next-hop-prefix { + type inet:ip-address-no-zone; + description + "NextHop Address"; + } + leaf replicated-nh-type { + type Fibnh-info-repl; + description + "Replicated NextHop Type"; + } + uses FIB-SH-FRR-NHINFO; + } + } + container external-client-summaries { + description + "External Client Summary Table"; + list external-client-summary { + description + "Summary of the external clients"; + leaf ecd-ver { + type uint32; + description + "Ecd Version"; + } + leaf id { + type uint32; + description + "ID of the client: ECDv1 is component id, + ECDv2 is client id"; + } + uses FIB-SH-TBL-EXT-CLIENT-SUM; + } + } + container misc { + description + "CEF misc hidden data"; + uses FIB-SH-MISC; + } + container object-queue-entries { + description + "Object queue entry details"; + list object-queue-entry { + key "object-queue-id"; + description + "Object queue id"; + container object-queue-entry-infos { + description + "Details for corresponding object queue + entry"; + list object-queue-entry-info { + key "item-index"; + description + "Details for corresponding object queue + entry"; + leaf item-index { + type uint32 { + range "0..4294967295"; + } + description + "Item Index"; + } + uses FIB-OBJECT-QUEUE-ITEM-INFO; + } + } + leaf object-queue-id { + type uint32 { + range "0..255"; + } + description + "Object Queue ID"; + } + } + } + container local-label { + description + "Fib Local label"; + container conflicts { + description + "FIB Local-label conflicts database"; + list conflict { + description + "CEF Local-label conflicts entry"; + leaf label { + type Fib-label; + description + "Local label"; + } + leaf source { + type Fib-route-source; + description + "Route source"; + } + leaf ll-ctype { + type Fibllc-entry; + description + "Type of entry"; + } + leaf pfx-tbl-id { + type uint32; + description + "Table ID of IP prefix"; + } + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "IP Prefix"; + } + leaf prefix-len { + type uint32; + description + "Length of IP Prefix"; + } + uses FIB-MPLS-LLC; + } + } + } + leaf protocol-name { + type Fib-protocol; + description + "Protocol Name "; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container oc-aft-l3 { + config false; + description + "Openconfig L3 abstract forwarding table data"; + container vrfs { + description + "Table VRFs - openconfig network-instances"; + list vrf { + key "vrf-name"; + description + "VRF/network-instace table"; + container abstract-forwarding-tables { + description + "Abstract forwarding table per FIB protocol"; + container mpls { + description + "MPLS abstract forwarding table"; + container labels { + description + "Table of MPLS labels"; + list label { + key "label"; + description + "Label data"; + leaf label { + type string; + description + "Label"; + } + uses STATE; + } + } + } + container next-hop-groups { + description + "Next-hop groups associated with the + forwarding instance"; + list next-hop-group { + key "nh-grp-id"; + description + "A next-hop group associated with the + forwarding instance"; + container condition-groups { + description + "A condition group associated with the + forwarding instance"; + list condition-group { + key "cond-id"; + description + "A condition group associated with the + forwarding instance"; + container state { + description + "A condition group associated with the + forwarding instance"; + uses FIB-OC-AFT-COND-GRP-STATE-V2; + } + leaf cond-id { + type uint32; + description + "A unique ID identifying the condition + group entry for the AFT entry"; + } + } + } + container state { + description + "A next-hop group associated with the + forwarding instance"; + uses FIB-OC-AFT-NH-GROUP-STATE-V2; + } + leaf nh-grp-id { + type uint32; + description + "A unique ID identifying the next-hop group + entry for the AFT entry"; + } + } + } + container next-hops { + description + "A next-hop associated with the forwarding + instance"; + list next-hop { + key "nh-id"; + description + "Prefix data"; + container state { + description + "A unique index identifying the next-hop + entry for the AFT nexthop entry"; + uses FIB-OC-AFT-NEXTHOP-V2; + } + leaf nh-id { + type uint32; + description + "A unique ID identifying the next-hop entry + for the AFT nexthop entry"; + } + } + } + container ipv6-unicast { + description + "IPv6 abstract forwarding table"; + uses PREFIX-TABLE; + } + container ipv4-unicast { + description + "IPv4 abstract forwarding table"; + uses PREFIX-TABLE; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Network Instance Name"; + } + } + } + container protocol { + description + "Abstract forwarding table per FIB protocol"; + container ipv6 { + description + "IPv6 abstract forwarding table"; + uses OOR; + uses ERROR; + } + container ipv4 { + description + "IPv4 abstract forwarding table"; + uses OOR; + uses ERROR; + } + } + } + container mpls-forwarding { + config false; + description + "MPLS forwarding operational data"; + container nodes { + description + "Table of Nodes"; + list node { + key "node-name"; + description + "Operational data for a specific Node"; + container forwarding-summary { + description + "MPLS forwarding summary"; + uses MPLS-FWDING-SUMMARY; + } + container frr-logs { + description + "FRR Log Table"; + list frr-log { + key "event-id"; + description + "FRR Log information"; + leaf event-id { + type uint32; + description + "Event ID"; + } + uses FIB-MPLS-FRR-EVENT; + } + } + container label-fib { + description + "Labels For FIB"; + container vrfs { + description + "Table of VRFs"; + list vrf { + key "vrf-name"; + description + "VRF table"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses INFORMATION; + } + } + container forwarding-details { + description + "MPLS Forwarding Detail table"; + list forwarding-detail { + description + "MPLS forwarding details"; + leaf label-value { + type Mpls-label; + description + "Local label value"; + } + leaf eos { + type Mplseos; + description + "End of stack flag"; + } + uses MPLS-SH-LEAF; + } + } + container forwarding { + description + "Forwarding filtering details"; + uses INFORMATION; + } + container label-security { + description + "MPLS label security"; + container interfaces { + description + "MPLS label security interface table"; + list interface { + key "interface-name"; + description + "Specify interface Name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MPLS-LABEL-SECURITY-INTF; + } + } + container summary { + description + "MPLS label security summary"; + uses MPLS-LABEL-SECURITY-SUMMARY; + } + } + } + container tunnel { + description + "TE Tunnel information"; + container forwarding-tunnels { + description + "Forwarding details for TE tunnels"; + list forwarding-tunnel { + key "interface-name"; + description + "Forwarding information for the TE tunnel"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MPLS-SH-TEHEAD; + } + } + } + container frr-database { + description + "MPLS forwarding FRR Database"; + container frrdb-summary { + description + "MPLS forwarding FRR Database Summary"; + uses FIB-MPLS-FRR-DB-SUM; + } + container frrdb-protected-interface-table-summaries { + description + "MPLS forwarding FRR Database Protected + Interface Summary Table"; + list frrdb-protected-interface-table-summary { + key "interface-name"; + description + "MPLS forwarding FRR Database Protected + Interface Summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses FIB-MPLS-FRR-DB-SUM; + } + } + container frrdb-tunnel-midpoint-summary { + description + "MPLS forwarding FRR Database Tunnel Midpoint + Summary"; + uses FIB-MPLS-FRR-DB-SUM; + } + container frrdb-tunnel-midpoints { + description + "MPLS forwarding FRR Database Tunnel Midpoint + Table"; + list frrdb-tunnel-midpoint { + key "local-label"; + description + "MPLS forwarding FRR Database Tunnel Midpoint + Entry"; + leaf local-label { + type Mpls-label; + description + "Local label value"; + } + uses MPLS-FRR-DB-ENTRY; + } + } + container frrdb-tunnel-heads { + description + "MPLS forwarding FRR Database Tunnel Head + Table"; + list frrdb-tunnel-head { + key "interface-name"; + description + "MPLS forwarding FRR Database Tunnel Head + Entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MPLS-FRR-DB-ENTRY; + } + } + container frrdb-tunnel-head-summary { + description + "MPLS forwarding FRR Database Tunnel Head + Summary"; + uses FIB-MPLS-FRR-DB-SUM; + } + container frrdb-backup-interface-summaries { + description + "MPLS forwarding FRR Database Backup Interface + Summary Table"; + list frrdb-backup-interface-summary { + key "interface-name"; + description + "MPLS forwarding FRR Database Backup + Interface Summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses FIB-MPLS-FRR-DB-SUM; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fibrechannelmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fibrechannelmib-cfg.yang new file mode 100644 index 000000000..157b9da7a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fibrechannelmib-cfg.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-fibrechannelmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fibrechannelmib-cfg"; + prefix fibrechannelmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 fibrechannelmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-17 { + description + "Fibre Channel controller mib configurations added"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container fibre-channel { + description + "CISCO-FIBRECHANNEL-MIB notification + configuration"; + leaf enable { + type empty; + description + "Enable ciscoFibreChannelMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-cfg.yang new file mode 100644 index 000000000..95c1fe264 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-cfg.yang @@ -0,0 +1,121 @@ +module Cisco-IOS-XR-filesysinv-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-filesysinv-cfg"; + prefix filesysinv-cfg; + + 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 filesysinv package configuration. + + This module contains definitions + for the following management objects: + filesystem-inventory: Filesystem inventory config + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-13 { + description + "Support for OnDemand DirSet and SkipList."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Filesysinv-snapshot { + type enumeration { + enum "incremental" { + value 0; + description + "Incremental"; + } + enum "full" { + value 1; + description + "Full"; + } + } + description + "Filesysinv snapshot"; + } + + container filesystem-inventory { + description + "Filesystem inventory config"; + container dir-sets { + description + "OnDemand config"; + list dir-set { + key "dir-set"; + description + "OnDemand config"; + leaf value { + type string; + description + "List of directories seperated by + space(enclosed in quotes)"; + } + leaf dir-set { + type uint32 { + range "1..5"; + } + description + "Dir Set"; + } + } + } + leaf skip-files { + type string; + description + "Space seperated list of files to be + skipped(enclosed in quotes)"; + } + leaf skip-list { + type string; + description + "Space seperated list of directories to be + skipped(enclosed in quotes)"; + } + leaf enable { + type empty; + description + "Enable Filesystem inventory"; + } + leaf snapshot-type { + type Filesysinv-snapshot; + description + "Type of snapshot to be taken at periodic + intervals. Default is incremental"; + } + leaf snapshot-interval { + type uint32 { + range "1..720"; + } + description + "Snapshot Time interval in 1 hour blocks eg 2 is + 120 minutes"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-deviations.yang new file mode 100644 index 000000000..c450fef43 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-deviations.yang @@ -0,0 +1,36 @@ +module Cisco-IOS-XR-filesysinv-show-oper-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-filesysinv-show-oper-deviations"; + prefix filesysinv-show-oper-dev; + + import Cisco-IOS-XR-filesysinv-show-oper { + prefix fsinv; + } + + organization + "Cisco Systems, Inc."; + contact + "Cisco Systems, Inc. + Customer Service + E-mail: cs-yang@cisco.com"; + description + "This module contains a set of deviations for + on Cisco IOS-XR devices. + Copyright (c) 2016-2017, 2019, 2021 by Cisco Systems, Inc. + All rights reserved."; + + deviation "/fsinv:file-system-inventory/fsinv:rack-slots" { + deviate not-supported; + } + deviation "/fsinv:file-system-inventory/fsinv:nodes/fsinv:node/fsinv:snapshot/fsinv:current/fsinv:admin" { + deviate not-supported; + } + deviation "/fsinv:file-system-inventory/fsinv:nodes/fsinv:node/fsinv:snapshot/fsinv:on-demand-all/fsinv:admin" { + deviate not-supported; + } + deviation "/fsinv:file-system-inventory/fsinv:nodes/fsinv:node/fsinv:snapshot/fsinv:all/fsinv:admin" { + deviate not-supported; + } + deviation "/fsinv:file-system-inventory/fsinv:nodes/fsinv:node/fsinv:snapshot/fsinv:all/fsinv:admin/fsinv:snapshot-id" { + deviate not-supported; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-sub1.yang new file mode 100644 index 000000000..c7ee7a1e2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper-sub1.yang @@ -0,0 +1,387 @@ +submodule Cisco-IOS-XR-filesysinv-show-oper-sub1 { + belongs-to Cisco-IOS-XR-filesysinv-show-oper { + prefix Cisco-IOS-XR-filesysinv-show-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR filesysinv-show package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Filesysinv-classification { + type enumeration { + enum "unclassified" { + value 0; + description + "Unclassified file type"; + } + enum "executable" { + value 1; + description + "Executable type of file"; + } + enum "direct-ory" { + value 2; + description + "Directory"; + } + enum "config" { + value 3; + description + "Config type of file"; + } + enum "volatile" { + value 4; + description + "Volatile type of file"; + } + enum "library" { + value 5; + description + "Library type of file"; + } + } + description + "File Classification"; + } + + typedef Filesys-inv-digest-algorithm { + type enumeration { + enum "digest-invalid" { + value 0; + description + "DIGEST INVALID"; + } + enum "md5" { + value 1; + description + "MD5"; + } + enum "sha1" { + value 2; + description + "SHA1"; + } + enum "sha256" { + value 3; + description + "SHA256"; + } + enum "sha384" { + value 4; + description + "SHA384"; + } + enum "sha512" { + value 5; + description + "SHA512"; + } + } + description + "Digest Algorithm"; + } + + typedef Filesys-inv-change-kind { + type enumeration { + enum "change-kind-invalid" { + value 0; + description + "Change Kind Invalid"; + } + enum "change-kind-created" { + value 1; + description + "Change Kind Created"; + } + enum "change-kind-contents-modified" { + value 2; + description + "Change Kind Modified"; + } + enum "change-kind-deleted" { + value 3; + description + "Change Kind Deleted"; + } + enum "change-kind-meta-data-modified" { + value 4; + description + "Change Kind Metadata Modified"; + } + } + description + "Change Kind"; + } + + typedef Filesys-inv-package-kind { + type enumeration { + enum "package-invalid" { + value 0; + description + "Package Invalid"; + } + enum "package-rpm" { + value 1; + description + "Package RPM"; + } + enum "package-anonymous" { + value 2; + description + "Package Anonymous"; + } + } + description + "Package Kind"; + } + + typedef Filesys-inv-container { + type enumeration { + enum "container-invalid" { + value 0; + description + "CONTAINER INVALID"; + } + enum "container-host" { + value 1; + description + "CONTAINER HOST"; + } + enum "container-sys-admin" { + value 2; + description + "CONTAINER SYSADMIN"; + } + enum "container-xr" { + value 3; + description + "CONTAINER XR"; + } + } + description + "Container Kind"; + } + + typedef Filesys-inv-signature { + type enumeration { + enum "signature-invalid" { + value 0; + description + "Signature Invalid"; + } + enum "rsa" { + value 1; + description + "RSA"; + } + enum "ecdsa" { + value 2; + description + "ECDSA"; + } + } + description + "Signature Type"; + } + + grouping FILESYS-INV-DIGEST { + description + "Digest"; + leaf algorithm { + type Filesys-inv-digest-algorithm; + description + "Algorithm for this digest"; + } + leaf digest-value { + type string; + description + "Hash of the event data, base64 encoded"; + } + } + + grouping FILESYS-INV-FILE-META-DATA { + description + "File Meta Data"; + leaf uid { + type uint32; + description + "user id"; + } + leaf gid { + type uint32; + description + "group id"; + } + leaf devid { + type uint64; + description + "Device ID on which this file resides"; + } + leaf inode { + type uint64; + description + "Inode number"; + } + leaf blocks { + type uint64; + description + "No of blocks of the file"; + } + leaf size { + type uint64; + units "byte"; + description + "Size of the file in bytes"; + } + leaf atime { + type int64; + description + "Last access time of the file"; + } + leaf mtime { + type int64; + description + "Last Modification time of the file"; + } + leaf ctime { + type int64; + description + "Creation time of the file"; + } + leaf mode { + type uint32; + description + "File type and mode"; + } + } + + grouping FILESYS-INV-FILE { + description + "File"; + container meta { + description + "Metadata of the file"; + uses FILESYS-INV-FILE-META-DATA; + } + container digest { + description + "Digest"; + uses FILESYS-INV-DIGEST; + } + leaf name { + type string; + description + "Complete path of the file"; + } + leaf package-kind { + type Filesys-inv-package-kind; + description + "Package Kind"; + } + leaf change-kind { + type Filesys-inv-change-kind; + description + "Change Kind"; + } + leaf package-name { + type string; + description + "Package Name"; + } + leaf parent-package-name { + type string; + description + "Package Name"; + } + leaf package-version { + type string; + description + "Package version"; + } + leaf classification { + type Filesysinv-classification; + description + "File Classification"; + } + } + + grouping FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT { + description + "FileSystemSignedSnapshot"; + leaf signature { + type uint8; + description + "Signature version designates the format of the + signed data"; + } + leaf signature-version { + type uint32; + description + "Signature Version"; + } + leaf signature-type { + type Filesys-inv-signature; + description + "Signature Type"; + } + leaf snapshot-block-no { + type uint32; + description + "Block No"; + } + leaf snap-time { + type string; + description + "Time when the snapshot was taken"; + } + leaf container { + type Filesys-inv-container; + description + "Container type"; + } + leaf release-version { + type string; + description + "Release Version"; + } + leaf chassis-serial-number { + type string; + description + "Chassis serial number"; + } + list files { + description + "List of entities in snapshot"; + uses FILESYS-INV-FILE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper.yang new file mode 100644 index 000000000..81d0d4376 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-filesysinv-show-oper.yang @@ -0,0 +1,200 @@ +module Cisco-IOS-XR-filesysinv-show-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-filesysinv-show-oper"; + prefix filesysinv-show-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-filesysinv-show-oper-sub1 { + revision-date 2019-04-05; + } + + 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 filesysinv-show package operational data. + + This module contains definitions + for the following management objects: + file-system-inventory: File System Snapshot operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SNAPSHOT-ID { + description + "Common node of xr, admin"; + list snapshot-id { + key "snapshot-id"; + description + "Snapshot date and time and number"; + container snapshot-info { + description + "Current file system inventory snapshot"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + leaf snapshot-id { + type xr:Cisco-ios-xr-string; + description + "Snapshot id"; + } + } + } + + container file-system-inventory { + config false; + description + "File System Snapshot operational data"; + container rack-slots { + description + "List of nodes (having admin only) with filesys + inv operation data"; + list rack-slot { + key "card-id"; + description + "Card"; + container snapshot { + description + "File SystemInventory Snapshot"; + container on-demand-all { + description + "On Demand Snapshot for Root Directory"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + container current { + description + "Current File SystemInventory Snapshot"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + container snapshot-ids { + description + "File SystemInventory Snapshot"; + list snapshot-id { + key "snapshot-id"; + description + "Snapshot date and time and number"; + container snapshot-info { + description + "Current file system inventory snapshot"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + leaf snapshot-id { + type xr:Cisco-ios-xr-string; + description + "Snapshot id"; + } + } + } + } + leaf card-id { + type xr:Cisco-ios-xr-string; + description + "Card id"; + } + } + } + container nodes { + description + "List of nodes with filesys inv operation data"; + list node { + key "node-name"; + description + "Node with filesys inv operational data"; + container snapshot { + description + "File SystemInventory Snapshot"; + container directory-sets { + description + "OnDemand Configured Snapshot. Only supported + for Full Snapshot type"; + list directory-set { + key "on-demand-dir-set"; + description + "On Demand Snapshot for Configured Directory + Set"; + leaf on-demand-dir-set { + type xr:Cisco-ios-xr-string; + description + "Set id"; + } + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + } + container current { + description + "Current File SystemInventory Snapshot"; + container admin { + description + "Current File SystemInventory Snapshot"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + container xr { + description + "Current File SystemInventory Snapshot"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + } + container all { + description + "List of all available File SystemInventory + Snapshots"; + container admin { + description + "File SystemInventory Snapshot"; + uses SNAPSHOT-ID; + } + container xr { + description + "File SystemInventory Snapshot"; + uses SNAPSHOT-ID; + } + } + container on-demand-all { + description + "On Demand Snapshot for Root Directory. Only + supported for Full Snapshot type"; + container admin { + description + "On Demand Snapshot for Root Directory"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + container xr { + description + "On Demand Snapshot for Root Directory"; + uses FILESYS-INV-FILE-SYSTEM-SIGNED-SNAPSHOT; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-flashmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-flashmib-cfg.yang new file mode 100644 index 000000000..4f4eb9c75 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-flashmib-cfg.yang @@ -0,0 +1,70 @@ +module Cisco-IOS-XR-flashmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-flashmib-cfg"; + prefix flashmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 flashmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-12-15 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container flash { + description + "CISCO-FLASH-MIB notification configuration"; + leaf insertion { + type empty; + description + "Enable ciscoFlashDeviceInsertedNotif + notification"; + } + leaf removal { + type empty; + description + "Enable ciscoFlashDeviceRemovedNotif + notification"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub1.yang new file mode 100644 index 000000000..0b5779833 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub1.yang @@ -0,0 +1,488 @@ +submodule Cisco-IOS-XR-flow-oper-sub1 { + belongs-to Cisco-IOS-XR-flow-oper { + prefix Cisco-IOS-XR-flow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR flow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-25 { + description + "Added source-port related field in the exporter information + 2022-05-16 + Added more fields in the data template information + 2021-12-16 + Added new fields in collector node to indicate standby mode information. + 2021-08-16 + Added a new field for cache flow record size in cache information"; + semver:module-version "2.0.0"; + } + revision 2021-06-16 { + description + "Added tunnel egress related options for sflow + 2021-04-23 + Added new node for data-template info"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NFSVR-BAG-TEMPLATE-IE-ITEM-ST { + description + "NFSVR BAG TEMPLATE IE ITEM ST"; + leaf ie-name { + type string; + description + "Name of the Information Element"; + } + leaf ie-id { + type uint16; + description + "Integer identifier of the Information Element"; + } + leaf ie-length { + type uint16; + units "byte"; + description + "Length of the Information Element item in bytes"; + } + } + + grouping NFSVR-BAG-TEMPLATE-INFO-ST { + description + "NFSVR BAG TEMPLATE INFO ST"; + leaf protocol { + type string; + description + "Export Protocol Name"; + } + leaf template-id { + type uint16; + description + "Number denoting Template Id"; + } + leaf template-length { + type uint16; + description + "Length of the Template"; + } + leaf variable-length-ie-count { + type uint16; + description + "Number of variable length Information Elements"; + } + leaf data-record-length { + type uint16; + description + "Length of the corresponding Data Record + excluding variable length Information Elements"; + } + list ie-array { + description + "Array of Information Elements"; + uses NFSVR-BAG-TEMPLATE-IE-ITEM-ST; + } + } + + grouping NFSVR-SHOW-FLOW-DATA-TEMPLATE { + description + "Data Template Info"; + leaf fm-name { + type string; + description + "Name of the flow monitor"; + } + leaf frec-name { + type string; + description + "Name of flow record"; + } + leaf template-description { + type string; + description + "Name of template description"; + } + list template { + description + "List of templates"; + uses NFSVR-BAG-TEMPLATE-INFO-ST; + } + } + + grouping NFSVR-HASH-BUCKET-STATS-RESP { + description + "Bucket stats"; + leaf depth-min { + type uint16; + description + "Minimum depth"; + } + leaf depth-max { + type uint16; + description + "Maximum depth"; + } + leaf curr-depth { + type uint32; + description + "Buckets with current depth in range"; + } + leaf max-depth { + type uint32; + description + "Buckets with maximum depth in range"; + } + } + + grouping NFSVR-SHOW-FLOW-CACHE-RESP-INTERNAL { + description + "Flow cache internal details"; + leaf cache-hits { + type uint64; + description + "Hits"; + } + leaf cache-misses { + type uint64; + description + "Misses"; + } + leaf cache-overflows { + type uint64; + description + "Overflows"; + } + leaf cache-above-hi-water { + type uint64; + description + "Exceed Hi water mark"; + } + leaf flows-dropped-by-ager { + type uint64; + description + "flows dropped by ager"; + } + leaf flows-not-exported-by-clear-cache { + type uint64; + description + "flows not exported by clear cache"; + } + leaf flows-not-aged-export-ring-full { + type uint64; + description + "flows not exported due to exporter ring full"; + } + leaf flows-periodic-export-failure { + type uint64; + description + "flows not exported by updated timeout"; + } + leaf cache-state { + type uint32; + description + "Cache state"; + } + leaf total-memory { + type uint32; + description + "Total memory usage by this monitor"; + } + leaf num-hash-buckets { + type uint64; + description + "Total number of hash buckets"; + } + leaf max-hash-depth { + type uint64; + description + "Summary data"; + } + leaf record-size { + type uint32; + units "byte"; + description + "Memory size of a single cache flow record in + bytes"; + } + list bucket-stat { + description + "Hash bucket Statistics"; + uses NFSVR-HASH-BUCKET-STATS-RESP; + } + } + + grouping NFSVR-SHOW-FLOW-CACHE-RESP-SUMMARY { + description + "Flow cache summary"; + leaf cache-name { + type string; + description + "Cache name"; + } + leaf frec-name { + type string; + description + "Typename of flow record"; + } + leaf cache-size { + type uint32; + description + "Cache size"; + } + leaf current-entries { + type uint32; + description + "Current number of entries"; + } + leaf match-entries { + type uint32; + description + "Entries that match this search criteria"; + } + leaf display-entries { + type uint32; + description + "Number of cache entries returned"; + } + leaf high-watermark { + type uint32; + description + "Cache high watermark"; + } + leaf fl-added { + type uint64; + description + "Number of flows added"; + } + leaf fl-dropped { + type uint64; + description + "Number of flows dropped because of cache full"; + } + leaf ager-polls { + type uint64; + description + "Total number of ager polls"; + } + leaf fl-age-active-tout { + type uint64; + description + "Flows aged on active timeout"; + } + leaf fl-age-inactive-tout { + type uint64; + description + "Flows aged on inactive timeout"; + } + leaf fl-age-immediate { + type uint64; + description + "Flows aged immediately"; + } + leaf fl-age-watermark { + type uint64; + description + "Flows aged due to exceeding high water mark"; + } + leaf fl-age-ememrgency { + type uint64; + description + "Flows aged due to emergency aging"; + } + leaf fl-age-tcp-fin { + type uint64; + description + "Flows aged due to TCP FIN"; + } + leaf fl-age-counter-wrap { + type uint64; + description + "Flows aged due to counter wrap"; + } + leaf fl-tcp-fin { + type uint64; + description + "Flows exported with TCP FIN"; + } + leaf fl-counter-wrap { + type uint64; + description + "Flows exported with counter wrap"; + } + leaf fl-exported { + type uint64; + description + "Total flows given to the exporter"; + } + leaf sflow-flow-samples { + type uint64; + description + "sFlow flow samples which came in"; + } + leaf sflow-counter-samples { + type uint64; + description + "sFlow counter samples which came in"; + } + } + + grouping NFSVR-SHOW-FLOW-CACHE-RESP-SINGLE-MONITOR-MAP { + description + "Response to a show cache internal cmd for a + single monitor"; + container summary { + description + "Summary of the flow cache"; + uses NFSVR-SHOW-FLOW-CACHE-RESP-SUMMARY; + } + container internal { + description + "Internal info of the flow cache"; + uses NFSVR-SHOW-FLOW-CACHE-RESP-INTERNAL; + } + } + + grouping NFSVR-TRING-BAG { + description + "NFSVR TRING BAG"; + leaf exist-flag { + type uint8; + description + "Flag where name exists or not"; + } + leaf name { + type string; + description + "Name of flow exporter"; + } + } + + grouping NFSVR-SHOW-FLOW-MONITOR-BASIC { + description + "Basic flow monitor information"; + leaf fm-name { + type string; + description + "Name of the flow monitor"; + } + leaf frec-name { + type string; + description + "Name of flow record"; + } + leaf num-labels { + type uint32; + description + "Number of labels"; + } + leaf aging-mode { + type uint32; + description + "Type of cache"; + } + leaf num-entries { + type uint32; + description + "Total number of cache entries"; + } + leaf inactive-timeout { + type uint32; + description + "Cache inactive timeout"; + } + leaf active-timeout { + type uint32; + description + "Cache active timeout"; + } + leaf update-timeout { + type uint32; + description + "Cache update timeout"; + } + leaf rate-limit { + type uint32; + description + "Cache timeout rate-limit"; + } + leaf options { + type uint32; + description + "flow monitor options"; + } + leaf sflow-ext-router { + type uint8; + description + "sFlow extended router enabled"; + } + leaf sflow-ext-gateway { + type uint8; + description + "sFlow extended gateway enabled"; + } + leaf sflow-input-ifindex-physical { + type uint8; + description + "sFlow Using input physical interface ifindex"; + } + leaf sflow-output-ifindex-physical { + type uint8; + description + "sFlow Using output physical interface ifindex"; + } + leaf sflow-sample-header-max { + type uint32; + description + "sFlow Maximum size of packet header to be + exported"; + } + leaf sflow-if-stats-interval { + type uint32; + description + "sFlow if_stats counter sampling interval"; + } + leaf sflow-ext-ipv4-tun-egress { + type uint8; + description + "sFlow extended ipv4 tunnel egress enabled"; + } + leaf sflow-ext-ipv6-tun-egress { + type uint8; + description + "sFlow extended ipv6 tunnel egress enabled"; + } + list fe-name { + max-elements "8"; + description + "Name of flow exporter"; + uses NFSVR-TRING-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub2.yang new file mode 100644 index 000000000..c9a91990f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper-sub2.yang @@ -0,0 +1,399 @@ +submodule Cisco-IOS-XR-flow-oper-sub2 { + belongs-to Cisco-IOS-XR-flow-oper { + prefix Cisco-IOS-XR-flow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR flow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-25 { + description + "Added source-port related field in the exporter information + 2022-05-16 + Added more fields in the data template information + 2021-12-16 + Added new fields in collector node to indicate standby mode information. + 2021-08-16 + Added a new field for cache flow record size in cache information"; + semver:module-version "2.0.0"; + } + revision 2021-06-16 { + description + "Added tunnel egress related options for sflow + 2021-04-23 + Added new node for data-template info"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Flow-monitor-name { + type string; + description + "Flow monitor name"; + } + + grouping NFSVR-COLLECTOR-INFO { + description + "Per collector information"; + leaf exporter-state { + type string; + description + "Exporter state"; + } + leaf destination-address { + type string; + description + "Destination IPv4 address in AAA.BBB.CCC.DDD + format"; + } + leaf source-address { + type string; + description + "Source IPv4 address in AAA.BBB.CCC.DDD format"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf destination-port { + type uint16; + description + "Destination port number"; + } + leaf souce-port { + type uint16; + description + "Source port number"; + } + leaf transport-protocol { + type string; + description + "Transport protocol"; + } + leaf packets-sent { + type uint64; + description + "Packets sent"; + } + leaf flows-sent { + type uint64; + description + "Flows sent"; + } + leaf templates-sent { + type uint64; + description + "Templates sent"; + } + leaf option-templates-sent { + type uint64; + description + "Option templates sent"; + } + leaf option-data-sent { + type uint64; + description + "Option data sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Bytes sent"; + } + leaf flow-bytes-sent { + type uint64; + units "byte"; + description + "Flow bytes sent"; + } + leaf template-bytes-sent { + type uint64; + units "byte"; + description + "Template bytes sent"; + } + leaf option-template-bytes-sent { + type uint64; + units "byte"; + description + "Option template bytes sent"; + } + leaf option-data-bytes-sent { + type uint64; + units "byte"; + description + "Option data bytes sent"; + } + leaf packets-dropped { + type uint64; + description + "Packets dropped"; + } + leaf flows-dropped { + type uint64; + description + "Flows dropped"; + } + leaf templates-dropped { + type uint64; + description + "Templates dropped"; + } + leaf option-templates-dropped { + type uint64; + description + "Option templates dropped"; + } + leaf option-data-dropped { + type uint64; + description + "Option data dropped"; + } + leaf bytes-dropped { + type uint64; + units "byte"; + description + "Bytes dropped"; + } + leaf flow-bytes-dropped { + type uint64; + units "byte"; + description + "Flow bytes dropped"; + } + leaf template-bytes-dropped { + type uint64; + units "byte"; + description + "Template bytes dropped"; + } + leaf option-template-bytes-dropped { + type uint64; + units "byte"; + description + "Option template bytes dropped"; + } + leaf option-data-bytes-dropped { + type uint64; + description + "Option data dropped"; + } + leaf last-hour-packest-sent { + type uint64; + description + "Total packets exported over the last one hour"; + } + leaf last-hour-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one hour"; + } + leaf last-hour-flows-sent { + type uint64; + description + "Total flows exported over the of last one hour"; + } + leaf last-minute-packets { + type uint64; + description + "Total packets exported over the last one minute"; + } + leaf last-minute-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one minute"; + } + leaf last-minute-flows-sent { + type uint64; + description + "Total flows exported over the last one minute"; + } + leaf last-second-packets-sent { + type uint64; + description + "Total packets exported over the last one second"; + } + leaf last-second-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one second"; + } + leaf last-second-flows-sent { + type uint64; + description + "Total flows exported over the last one second"; + } + leaf is-standby { + type boolean; + description + "Exporter is in standby mode"; + } + leaf standby-packets-dropped { + type uint64; + description + "Total export packets dropped while beingin + standby mode"; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS { + description + "Flow exporter information"; + leaf name { + type string; + description + "Exporter name"; + } + leaf protocol { + type string; + description + "Export Protocol Name"; + } + leaf memory-usage { + type uint32; + description + "Memory usage"; + } + leaf-list used-by-flow-monitor { + type Flow-monitor-name; + description + "List of flow monitors that use the exporter"; + } + list collector { + description + "Statistics of all collectors"; + uses NFSVR-COLLECTOR-INFO; + } + } + + grouping NFSVR-EXPORT-SERVER-OPER-CONFIG { + description + "Exporter operational config"; + leaf exporter-map-name { + type string; + description + "Exporter-map Name"; + } + leaf protocol { + type string; + description + "Export Protocol Name"; + } + leaf destination-address { + type string; + description + "Destination IPv4 address in AAA.BBB.CCC.DDD + format"; + } + leaf source-address { + type string; + description + "Source IPv4 address in AAA.BBB.CCC.DDD format"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf destination-port { + type uint16; + description + "Destination port number"; + } + leaf source-port { + type uint16; + description + "Source port number"; + } + leaf transport-protocol { + type string; + description + "Transport protocol"; + } + leaf df-bit-set { + type uint8; + description + "Do Not Fragment option is set"; + } + leaf dscp-value { + type uint8; + description + "IPv4 DSCP or IPv6 Traffic class value"; + } + leaf packet-length { + type uint32; + description + "Maximum length of export packet excluding L2 + header"; + } + leaf common-template-export-timeout { + type uint32; + units "second"; + description + "Common template export timeout in seconds"; + } + leaf data-template-export-timeout { + type uint32; + units "second"; + description + "Data template export timeout in seconds"; + } + leaf options-template-export-timeout { + type uint32; + units "second"; + description + "Options template export timeout in seconds"; + } + leaf sampler-table-export-timeout { + type uint32; + units "second"; + description + "Sampler table export timeout in seconds"; + } + leaf interface-table-export-timeout { + type uint32; + units "second"; + description + "Interface table export timeout in seconds"; + } + leaf vrf-table-export-timeout { + type uint32; + units "second"; + description + "VRF table export timeout in seconds"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper.yang new file mode 100644 index 000000000..03859007c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-flow-oper.yang @@ -0,0 +1,145 @@ +module Cisco-IOS-XR-flow-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-flow-oper"; + prefix flow-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-flow-oper-sub2 { + revision-date 2022-09-25; + } + include Cisco-IOS-XR-flow-oper-sub1 { + revision-date 2022-09-25; + } + + 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 flow package operational data. + + This module contains definitions + for the following management objects: + flow: Flow operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-25 { + description + "Added source-port related field in the exporter information + 2022-05-16 + Added more fields in the data template information + 2021-12-16 + Added new fields in collector node to indicate standby mode information. + 2021-08-16 + Added a new field for cache flow record size in cache information"; + semver:module-version "2.0.0"; + } + revision 2021-06-16 { + description + "Added tunnel egress related options for sflow + 2021-04-23 + Added new node for data-template info"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container flow { + config false; + description + "Flow operational data"; + container nodes { + description + "Node table for node-specific operational data"; + list node { + key "node-name"; + description + "Node-specific data for a particular node"; + container flow-server { + description + "Flow server related"; + container exporter-map-names { + description + "Exporter-map related"; + list exporter-map-name { + key "exporter-map-name"; + description + "Exporter-map name"; + container operational-config { + description + "Exporter-map operational configuration"; + uses NFSVR-EXPORT-SERVER-OPER-CONFIG; + } + container operational-data { + description + "Exporter-map operational data"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS; + } + leaf exporter-map-name { + type xr:Cisco-ios-xr-string; + description + "The name of the exporter-map"; + } + } + } + container monitor-map-names { + description + "Monitor-map related"; + list monitor-map-name { + key "monitor-map-name"; + description + "Monitor-map name"; + container operational-config { + description + "Monitor-map operational configuration"; + uses NFSVR-SHOW-FLOW-MONITOR-BASIC; + } + container operational-data { + description + "Monitor-map operational data"; + uses NFSVR-SHOW-FLOW-CACHE-RESP-SINGLE-MONITOR-MAP; + } + container data-template { + description + "Monitor-map data template information"; + uses NFSVR-SHOW-FLOW-DATA-TEMPLATE; + } + leaf monitor-map-name { + type xr:Cisco-ios-xr-string; + description + "The name of the monitor-map"; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-cfg.yang new file mode 100644 index 000000000..39b0357dd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-cfg.yang @@ -0,0 +1,258 @@ +module Cisco-IOS-XR-flowspec-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-flowspec-cfg"; + prefix flowspec-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 flowspec package configuration. + + This module contains definitions + for the following management objects: + flow-spec: FlowSpec configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fs-vrf-af { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 FlowSpec"; + } + enum "ipv6" { + value 2; + description + "IPv6 FlowSpec"; + } + } + description + "Fs vrf af"; + } + + typedef Fs-af-p { + type enumeration { + enum "pbr" { + value 2; + description + "PBR policy type"; + } + } + description + "Fs af p"; + } + + typedef Fs-addf { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 FlowSpec"; + } + enum "ipv6" { + value 2; + description + "IPv6 FlowSpec"; + } + } + description + "Fs addf"; + } + + typedef Fs-vrf-af-p { + type enumeration { + enum "pbr" { + value 2; + description + "PBR policy type"; + } + } + description + "Fs vrf af p"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv4-flow-spec { + description + "Flowspec on IPv4 interface"; + leaf enabled { + type empty; + description + "Disable FlowSpec on this interface"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv6-flow-spec { + description + "Flowspec on IPv6 interface"; + leaf enabled { + type empty; + description + "Disable flowspec on interface"; + } + } + } + container flow-spec { + description + "FlowSpec configuration"; + container afs { + description + "Table of AF"; + list af { + key "af-name"; + description + "Address Family Identifier Type (IPv4/IPv6)"; + container service-policies { + description + "Table of ServicePolicy"; + list service-policy { + key "policy-type policy-name"; + description + "Service Policy configuration"; + leaf policy-type { + type Fs-af-p; + description + "Choose the Policy type"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Policy map name"; + } + leaf local { + type boolean; + mandatory true; + description + "Set constant integer"; + } + } + } + leaf interface-all { + type empty; + description + "Install FlowSpec policy on all interfaces"; + } + leaf af-name { + type Fs-addf; + description + "AFI type"; + } + } + } + container vrfs { + description + "Table of VRF"; + list vrf { + key "vrf-name"; + description + "VRF configuration"; + container afs { + description + "Table of AF"; + list af { + key "af-name"; + description + "Address Family Identifier Type (IPv4/IPv6)"; + container service-policies { + description + "Table of ServicePolicy"; + list service-policy { + key "policy-type policy-name"; + description + "Service Policy configuration"; + leaf policy-type { + type Fs-af-p; + description + "Choose the Policy type"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Policy map name"; + } + leaf local { + type boolean; + mandatory true; + description + "Set constant integer"; + } + } + } + leaf interface-all { + type empty; + description + "Install FlowSpec policy on all interfaces"; + } + leaf af-name { + type Fs-vrf-af; + description + "AFI type"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + } + } + leaf enable { + type empty; + description + "Enable FlowSpec configuration. Deletion of this + object also causes deletion of all associated + objects under FlowSpec."; + } + leaf interface-all { + type empty; + description + "Install FlowSpec policy on all interfaces"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper-sub1.yang new file mode 100644 index 000000000..6c7ed8fa6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper-sub1.yang @@ -0,0 +1,400 @@ +submodule Cisco-IOS-XR-flowspec-oper-sub1 { + belongs-to Cisco-IOS-XR-flowspec-oper { + prefix Cisco-IOS-XR-flowspec-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR flowspec package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-21 { + description + "Finddata support. Added match bag. Make actions visible and readable via telemetry."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fs-mgr-client-state { + type enumeration { + enum "dormant" { + description + "Dormant"; + } + enum "connected" { + description + "Connected"; + } + enum "replay" { + description + "Replay"; + } + enum "unconfigured" { + description + "Unconfigured"; + } + } + description + "FlowSpec manager client state"; + } + + grouping TCP-FLAG-ST { + description + "TCP FLAG ST"; + leaf value { + type uint16; + description + "Value of TCP flag"; + } + leaf match-any { + type boolean; + description + "Match any TCP flag bit"; + } + } + + grouping UINT16-RNG-ST { + description + "UINT16 RNG ST"; + leaf min { + type uint16; + description + "Lower limit of the range"; + } + leaf max { + type uint16; + description + "Upper limit of the range"; + } + } + + grouping UINT16-RNG-ARRAY { + description + "UINT16 RNG ARRAY"; + list uint16_rng_array { + description + "uint16 rng array"; + uses UINT16-RNG-ST; + } + } + + grouping UINT8-RNG-ST { + description + "UINT8 RNG ST"; + leaf min { + type uint8; + description + "Lower limit of the range"; + } + leaf max { + type uint8; + description + "Upper limit of the range"; + } + } + + grouping UINT8-RNG-ARRAY { + description + "UINT8 RNG ARRAY"; + list uint8_rng_array { + description + "uint8 rng array"; + uses UINT8-RNG-ST; + } + } + + grouping PROTO-ICMP-ST { + description + "PROTO ICMP ST"; + leaf type { + type uint8; + description + "Protocol type"; + } + leaf code { + type uint8; + description + "Protocol code"; + } + } + + grouping MATCH-IPV6-ST { + description + "MATCH IPV6 ST"; + leaf prefix { + type inet:ipv6-address; + description + "IPV6 prefix"; + } + leaf mask { + type uint32; + description + "IPV6 mask"; + } + } + + grouping MATCH-IPV4-ST { + description + "Source Address IPv4"; + leaf prefix { + type inet:ipv4-address; + description + "prefix"; + } + leaf mask { + type inet:ipv4-address; + description + "mask"; + } + } + + grouping FS-MGR-FLOW-MATCH { + description + "Flowspec client match."; + container destination-prefix-ipv4 { + description + "IPv4 Destination Prefix"; + uses MATCH-IPV4-ST; + } + container destination-prefix-ipv6 { + description + "IPv6 Destination Prefix"; + uses MATCH-IPV6-ST; + } + container source-prefix-ipv4 { + description + "IPv4 Source Prefix"; + uses MATCH-IPV4-ST; + } + container source-prefix-ipv6 { + description + "IPv6 Source Prefix"; + uses MATCH-IPV6-ST; + } + container icmp { + description + "Icmp Type/Code"; + uses PROTO-ICMP-ST; + } + container dscp { + description + "Dscp"; + uses UINT8-RNG-ARRAY; + } + container packet-length { + description + "Packet Length"; + uses UINT16-RNG-ARRAY; + } + container ip-protocol { + description + "IP Protocol"; + uses UINT16-RNG-ARRAY; + } + container tcp-flag { + description + "Tcp Flag"; + uses TCP-FLAG-ST; + } + container source-port { + description + "Source Port"; + uses UINT16-RNG-ARRAY; + } + container destination-port { + description + "Destination Port"; + uses UINT16-RNG-ARRAY; + } + leaf fragment-type { + type string; + description + "fragment type"; + } + } + + grouping FS-MGR-FLOW-STATS-CTRS { + description + "Flowspec class stats counters."; + leaf packets { + type uint64; + description + "Number of packets"; + } + leaf bytes { + type uint64; + units "byte"; + description + "Number of bytes"; + } + } + + grouping FS-MGR-FLOW-STATS { + description + "Flowspec class classified and drop stats."; + container classified { + description + "Classified statistics"; + uses FS-MGR-FLOW-STATS-CTRS; + } + container dropped { + description + "Drop statistics"; + uses FS-MGR-FLOW-STATS-CTRS; + } + } + + grouping FS-MGR-FLOW-ACTION { + description + "FlowSpec client action."; + leaf rate { + type uint64; + description + "rate"; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf dscp { + type uint8; + description + "dscp"; + } + leaf ipv4-nh { + type inet:ipv4-address; + description + "ipv4 nh"; + } + leaf ipv6-nh { + type inet:ipv6-address; + description + "ipv6 nh"; + } + leaf route-target { + type string; + description + "route target"; + } + } + + grouping FS-MGR-FLOW-CLIENT { + description + "FlowSpec client flow."; + list action { + description + "action"; + uses FS-MGR-FLOW-ACTION; + } + } + + grouping FS-MGR-NLRI { + description + "FlowSpec manager NLRI information"; + container synced-flow-client { + description + "synced flow client"; + uses FS-MGR-FLOW-CLIENT; + } + container active-flow-client { + description + "active flow client"; + uses FS-MGR-FLOW-CLIENT; + } + container flow-statistics { + description + "Flowspec classification and drop statistics"; + uses FS-MGR-FLOW-STATS; + } + container matches { + description + "Match"; + uses FS-MGR-FLOW-MATCH; + } + list inactive-flow-client { + description + "inactive flow client"; + uses FS-MGR-FLOW-CLIENT; + } + } + + grouping FS-MGR-TBL-SUMMARY { + description + "FlowSpec manager table summary information"; + leaf total-flows { + type uint32; + description + "Total number of flows"; + } + leaf service-policies { + type uint32; + description + "Total number of attached service policies"; + } + leaf local-install-enabled { + type boolean; + description + "Local installation of flowspec rules"; + } + } + + grouping FS-MGR-SUMMARY { + description + "FlowSpec manager summary information"; + leaf vrfafi-tables { + type uint32; + description + "Total VRF+AFI tables"; + } + leaf flows { + type uint32; + description + "Total flows"; + } + } + + grouping FS-MGR-CLIENT { + description + "FlowSpec manager client information"; + leaf client-state { + type Fs-mgr-client-state; + description + "State of FS client"; + } + leaf client-flows { + type uint32; + description + "Number of client flows"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper.yang new file mode 100644 index 000000000..725734fb2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-flowspec-oper.yang @@ -0,0 +1,179 @@ +module Cisco-IOS-XR-flowspec-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-flowspec-oper"; + prefix flowspec-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-flowspec-oper-sub1 { + revision-date 2022-07-21; + } + + 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 flowspec package operational data. + + This module contains definitions + for the following management objects: + flow-spec: FlowSpec information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-21 { + description + "Finddata support. Added match bag. Make actions visible and readable via telemetry."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fs-client { + type enumeration { + enum "bgp" { + value 0; + description + "FlowSpec BGP Client"; + } + enum "one-pk" { + value 1; + description + "FlowSpec OneP Client"; + } + enum "policy" { + value 2; + description + "FlowSpec Policy Client"; + } + enum "ha" { + value 3; + description + "FlowSpec HA Client"; + } + enum "test" { + value 4; + description + "FlowSpec Test Client"; + } + } + description + "Fs client"; + } + + container flow-spec { + config false; + description + "FlowSpec information"; + container clients { + description + "Table of Client"; + list client { + description + "FlowSpec client information"; + leaf client-type { + type Fs-client; + description + "FlowSpec Client Type"; + } + leaf client-id { + type uint32; + description + "FlowSpec client ID"; + } + uses FS-MGR-CLIENT; + } + } + container summary { + description + "FlowSpec summary"; + uses FS-MGR-SUMMARY; + } + container vrfs { + description + "Table of VRF"; + list vrf { + key "vrf-name"; + description + "VRF information"; + container afs { + description + "Table of AF"; + list af { + key "af-name"; + description + "AFI Type (IPv4/IPv6)"; + container table-summary { + description + "FlowSpec summary for VRF+AFI tables"; + uses FS-MGR-TBL-SUMMARY; + } + container nlris { + description + "Table of NLRI"; + list nlri { + key "nlri-bytes"; + description + "NLRI information (hexdump)"; + leaf nlri-bytes { + type xr:Cisco-ios-xr-string; + description + "Enter NLRI hex string"; + } + uses FS-MGR-NLRI; + } + } + container flows { + description + "Table of Flow"; + list flow { + key "flow-notation"; + description + "Flow notation string"; + leaf flow-notation { + type string; + description + "Enter the Flow notation string"; + } + uses FS-MGR-NLRI; + } + } + leaf af-name { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fpd-infra-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fpd-infra-cfg.yang new file mode 100644 index 000000000..d7af87111 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fpd-infra-cfg.yang @@ -0,0 +1,113 @@ +module Cisco-IOS-XR-fpd-infra-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fpd-infra-cfg"; + prefix fpd-infra-cfg; + + 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 fpd-infra package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-fpd-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + fpd: FPD Configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-05 { + description + "Deprecated the native model, replaced by UM model in Exr."; + semver:module-version "1.1.0"; + } + revision 2020-07-06 { + description + "Added auto-upgrade config in display"; + semver:module-version "1.0.0"; + } + revision 2020-05-21 { + description + "Separating eXR and LNT versions for module"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Auto-reload { + type enumeration { + enum "disable" { + value 0; + description + "fpd auto-reload disable"; + } + enum "enable" { + value 1; + description + "fpd auto-reload enable"; + } + } + description + "Auto reload"; + } + + typedef Auto-upgrade { + type enumeration { + enum "disable" { + value 0; + description + "fpd auto-upgrade disable"; + } + enum "enable" { + value 1; + description + "fpd auto-upgrade enable"; + } + } + description + "Auto upgrade"; + } + + container fpd { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-fpd-cfg.yang which will provide + the compatible functionalities. FPD + Configuration"; + leaf auto-reload { + type Auto-reload; + description + "Enable or disable fpd auto-reload"; + } + leaf auto-upgrade { + type Auto-upgrade; + description + "Enable or disable fpd auto-upgrade"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-cfg.yang new file mode 100644 index 000000000..e4ec6025f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-cfg.yang @@ -0,0 +1,243 @@ +module Cisco-IOS-XR-fpmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fpmgr-cfg"; + prefix fpmgr-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 fpmgr package configuration. + + This module contains definitions + for the following management objects: + fault-manager: Fault mgr + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nsas { + type enumeration { + enum "unknown" { + value 0; + description + "Unkown severity"; + } + enum "nonreported" { + value 1; + description + "Non reported severity"; + } + enum "nonfaulted" { + value 2; + description + "Non faulted severity"; + } + enum "minor" { + value 3; + description + "Minor severity"; + } + enum "major" { + value 4; + description + "Major severity"; + } + enum "critical" { + value 5; + description + "Critical severity"; + } + } + description + "Nsas"; + } + + typedef Sas { + type enumeration { + enum "unknown" { + value 0; + description + "Unkown severity"; + } + enum "nonreported" { + value 1; + description + "Non reported severity"; + } + enum "nonfaulted" { + value 2; + description + "Non faulted severity"; + } + enum "minor" { + value 3; + description + "Minor severity"; + } + enum "major" { + value 4; + description + "Major severity"; + } + enum "critical" { + value 5; + description + "Critical severity"; + } + } + description + "Sas"; + } + + container fault-manager { + description + "Fault mgr"; + list fault-profile { + key "fault-profile-name"; + description + "Fault profile name"; + container racks { + description + "Apply fault profile"; + list rack { + key "rack"; + description + "rack numnber"; + leaf rack { + type xr:Cisco-ios-xr-string; + description + " "; + } + list slot { + key "slot"; + description + "None"; + container ports { + description + "Configure a port"; + list port { + key "port"; + description + "None"; + leaf propagate { + type uint32; + description + "Propagate fault profile on child entities + of port"; + } + leaf port { + type xr:Cisco-ios-xr-string; + description + " "; + } + } + } + leaf propagate { + type uint32; + description + "Apply fault profile on child entities of + card"; + } + leaf slot { + type xr:Cisco-ios-xr-string; + description + " "; + } + } + } + } + container subsystems { + description + "Fault identifier"; + list subsystem { + key "subsystem"; + description + "Subsystem name"; + leaf subsystem { + type xr:Cisco-ios-xr-string; + description + " "; + } + list fault-type { + key "fault-type"; + description + "Fault type name"; + leaf fault-type { + type xr:Cisco-ios-xr-string; + description + " "; + } + list fault-tag { + key "fault-tag"; + description + "Fault tag name"; + leaf fault-tag { + type xr:Cisco-ios-xr-string; + description + " "; + } + leaf sas { + type Sas; + description + "Fault severity selection"; + } + leaf nsas { + type Nsas; + description + "Fault severity selection"; + } + } + } + } + } + leaf description { + type string { + length "1..128"; + } + description + "Fault profile description"; + } + leaf enable { + type empty; + description + "Enable Fault profile name. Deletion of this + object also causes deletion of all associated + objects under FaultProfile."; + } + leaf fault-profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Fault profile"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper-sub1.yang new file mode 100644 index 000000000..9d1ba1eb6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper-sub1.yang @@ -0,0 +1,253 @@ +submodule Cisco-IOS-XR-fpmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-fpmgr-oper { + prefix Cisco-IOS-XR-fpmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fpmgr package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FP-SHOW-DEFAULT-PROFILE { + description + "fp show default profile"; + leaf fault-tag { + type string; + description + "fault tag"; + } + leaf sas-severity { + type string; + description + "default SAS Severity"; + } + leaf nsas-severity { + type string; + description + "default NSAS Severity "; + } + } + + grouping FP-SHOW-DEFAULT-PROFILE-LIST { + description + "fp show default profile"; + list fault-tag { + description + "default profile list"; + uses FP-SHOW-DEFAULT-PROFILE; + } + } + + grouping FP-SHOW-FP-FAULT-TAG { + description + "fp show fault tag"; + leaf fault-tag { + type string; + description + "fault tag"; + } + } + + grouping FP-SHOW-FP-FAULT-TAG-LIST { + description + "fp show fault tags"; + list fault-tag { + description + "fault tag list"; + uses FP-SHOW-FP-FAULT-TAG; + } + } + + grouping FP-SHOW-FP-DETAIL-DATA { + description + "fp show fault profile detail data"; + leaf profile-id { + type int32; + description + "fault profile id"; + } + leaf profile-name { + type string; + description + "profile name"; + } + leaf profile-type { + type string; + description + "profile type"; + } + leaf location { + type string; + description + "location name"; + } + leaf status { + type string; + description + "fault profile status"; + } + leaf root-entity { + type string; + description + "root entity name"; + } + leaf entity-count { + type int32; + description + "number of entities"; + } + } + + grouping FP-SHOW-FP-DETAIL { + description + "fp show fault profile detail info "; + list detail-info { + description + "fault profile detail info"; + uses FP-SHOW-FP-DETAIL-DATA; + } + } + + grouping FP-SHOW-FP-STATISTIC-DATA { + description + "fp show fault profile statistic data"; + leaf profile-id { + type int32; + description + "fault profile id"; + } + leaf root-entity { + type string; + description + "root entity name"; + } + leaf entity-count { + type int32; + description + "number of entities"; + } + } + + grouping FP-SHOW-FP-LOCATION-NAME { + description + "fp show line card location name string"; + leaf location-name { + type string; + description + "line card name"; + } + } + + grouping FP-SHOW-FP-LOCATION-NAME-LIST { + description + "fp show line card location name string list"; + list location-name { + description + "line card name list"; + uses FP-SHOW-FP-LOCATION-NAME; + } + } + + grouping FP-SHOW-FP-INTERNAL-DATA { + description + "fp show fault profile internal data"; + leaf profile-id { + type int32; + description + "fault profile id"; + } + leaf profile-name-xr { + type string; + description + "fault profile name"; + } + leaf profile-type { + type string; + description + "profile type"; + } + leaf location { + type string; + description + "location name"; + } + leaf status { + type string; + description + "fault profile status"; + } + leaf root-entity { + type string; + description + "root entity name"; + } + leaf entity-count { + type int32; + description + "number of entities"; + } + leaf subsystem { + type string; + description + "sub system"; + } + } + + grouping FP-SHOW-FP-BRIEF-DATA { + description + "fp show fault profile brief data"; + leaf profile-id { + type int32; + description + "fault prfoile id"; + } + leaf profile-name { + type string; + description + "fault profile name"; + } + leaf description { + type string; + description + "fault profile description"; + } + } + + grouping FP-SHOW-FP-BRIEF { + description + "fp show fault profile brief info"; + list brief-info { + description + "fault profile brief info"; + uses FP-SHOW-FP-BRIEF-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper.yang new file mode 100644 index 000000000..8c0b4da6c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fpmgr-oper.yang @@ -0,0 +1,170 @@ +module Cisco-IOS-XR-fpmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fpmgr-oper"; + prefix fpmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fpmgr-oper-sub1 { + revision-date 2019-04-05; + } + + 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 fpmgr package operational data. + + This module contains definitions + for the following management objects: + fault-profile: Show fault profile + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fault-profile { + config false; + description + "Show fault profile"; + container brief { + description + "Display brief fault profile info"; + uses FP-SHOW-FP-BRIEF; + } + container internals { + description + "Table of Internal"; + list internal { + key "profile-name"; + description + "Display fault profile details"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Fault profile name"; + } + uses FP-SHOW-FP-INTERNAL-DATA; + } + } + container location-lc-names { + description + "Get rack numbers"; + list location-lc-name { + key "location-rack-name"; + description + "Get line card names"; + container location-lc-name-str { + description + "Get line card names"; + uses FP-SHOW-FP-LOCATION-NAME-LIST; + } + leaf location-rack-name { + type xr:Cisco-ios-xr-string; + description + "Rack number"; + } + } + } + container statistics { + description + "Table of Statistics"; + list statistic { + key "profile-name"; + description + "Display fault profile statistics"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Fault profile name"; + } + uses FP-SHOW-FP-STATISTIC-DATA; + } + } + container detail { + description + "Display detailed fault profile info"; + uses FP-SHOW-FP-DETAIL; + } + container fault-id-fault-types { + description + "Get subsystem ids"; + list fault-id-fault-type { + key "fault-id-subsystem-name"; + description + "Get fault types"; + leaf fault-id-subsystem-name { + type xr:Cisco-ios-xr-string; + description + "Subsystem name"; + } + list fault-id-fault-tag { + key "fault-id-fault-type-name"; + description + "Get fault tags"; + container fault-id-fault-tag-names { + description + "Get fault tags"; + uses FP-SHOW-FP-FAULT-TAG-LIST; + } + leaf fault-id-fault-type-name { + type xr:Cisco-ios-xr-string; + description + "Fault type name"; + } + } + } + } + container default-profile-fault-types { + description + "Get default subsystem profiles"; + list default-profile-fault-type { + key "fault-id-subsystem-name"; + description + "Get fault types"; + leaf fault-id-subsystem-name { + type xr:Cisco-ios-xr-string; + description + "Subsystem name"; + } + list default-profile-fault-tag { + key "fault-id-fault-type-name"; + description + "Get fault tags"; + container default-profile-fault-value-names { + description + "Get fault tags"; + uses FP-SHOW-DEFAULT-PROFILE-LIST; + } + leaf fault-id-fault-type-name { + type xr:Cisco-ios-xr-string; + description + "Fault type name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-cfg.yang new file mode 100644 index 000000000..385183dba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-cfg.yang @@ -0,0 +1,454 @@ +module Cisco-IOS-XR-freqsync-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-freqsync-cfg"; + prefix freqsync-cfg; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-freqsync-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a2; + } + + 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 freqsync package configuration. + + This module contains definitions + for the following management objects: + frequency-synchronization: Frequency Synchronization global + configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg, + Cisco-IOS-XR-ifmgr-cfg + Cisco-IOS-XR-config-mda-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "Added clock-interface submode enter item."; + semver:module-version "2.0.0"; + } + revision 2020-04-15 { + description + "Fixed must conditions bug."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsync-system-timing-mode { + type enumeration { + enum "line-only" { + value 2; + description + "Line-interfaces only"; + } + enum "clock-only" { + value 3; + description + "Clock-interfaces only"; + } + } + description + "Fsync system timing mode"; + } + + typedef Fsync-clock-source { + type enumeration { + enum "system" { + value 1; + description + "System"; + } + enum "independent" { + value 3; + description + "Independent"; + } + } + description + "Fsync clock source"; + } + + typedef Fsync-source-selection-logging { + type enumeration { + enum "changes" { + value 1; + description + "Log both selection changes and errors"; + } + enum "errors" { + value 2; + description + "Log selection errors"; + } + } + description + "Fsync source selection logging"; + } + + typedef Freq-sync-quality-level { + type enumeration { + enum "dnu" { + value 1; + description + "DNU"; + } + enum "prc" { + value 2; + description + "PRC"; + } + enum "sec" { + value 3; + description + "SEC"; + } + enum "ssua" { + value 4; + description + "SSU A"; + } + enum "ssub" { + value 5; + description + "SSU B"; + } + } + description + "Freq sync quality level"; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container clock-interface { + description + "Configuration for a clock interface"; + container clocks { + description + "Configuration for a clock interface"; + list clock { + key "clock-type port"; + description + "Configuration for a clock interface"; + container frequency-synchronization { + description + "Frequency Synchronization clock configuraiton"; + container output-quality-level { + description + "Set the output quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + container input-quality-level { + description + "Set the input quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + leaf wait-to-restore-time { + type uint32 { + range "0..12"; + } + default "5"; + description + "Set the wait-to-restore time for this source"; + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the priority of this source"; + } + leaf selection-input { + type empty; + description + "Assign this source as a selection input"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the time-of-day priority of this source"; + } + leaf ssm-disable { + type empty; + description + "Disable SSM on this source"; + } + } + leaf clock-type { + type dt1:Fsync-clock; + description + "Clock type"; + } + leaf port { + type uint32; + description + "Clock port"; + } + } + } + } + } + + augment "/a2:interface-configurations/a2:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container frequency-synchronization { + presence "CLI submode compatibility."; + description + "Frequency Synchronization interface + configuration"; + container input-quality-level { + description + "Set the input quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + container output-quality-level { + description + "Set the output quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + leaf ssm-disable { + type empty; + description + "Disable SSM on this source"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the time-of-day priority of this source"; + } + leaf selection-input { + type empty; + description + "Assign this source as a selection input"; + } + leaf enable { + type empty; + description + "Enable Frequency Synchronization"; + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the priority of this source"; + } + leaf wait-to-restore-time { + type uint32 { + range "0..12"; + } + default "5"; + description + "Set the wait-to-restore time for this source"; + } + } + } + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container frequency-synchronization { + description + "Frequency Synchronization trap configuration"; + leaf enable { + type empty; + description + "Enable Frequency Synchronization traps"; + } + leaf qlt { + type Freq-sync-quality-level; + description + "Enable Frequency Synchronization QLT trap"; + } + } + } + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } + container frequency-synchronization { + presence "CLI submode compatibility."; + description + "Frequency Synchronization global configuration"; + leaf clock-identity { + type yang:mac-address; + description + "Local clock ID"; + } + leaf quality-level-option { + type dt1:Fsync-ql-option; + default "option-1"; + description + "Quality level option"; + } + leaf source-selection-logging { + type Fsync-source-selection-logging; + description + "Source selection logging option"; + } + leaf clock-interface-source-type { + type Fsync-clock-source; + description + "Clock interface source type"; + } + leaf system-timing-mode { + type Fsync-system-timing-mode; + description + "System timing mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-datatypes.yang new file mode 100644 index 000000000..7f81ddd63 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-datatypes.yang @@ -0,0 +1,348 @@ +module Cisco-IOS-XR-freqsync-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-freqsync-datatypes"; + prefix freqsync-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-13 { + description + "Added ePRC QL code."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsync-ql-option { + type enumeration { + enum "option-1" { + value 1; + description + "ITU-T Option 1"; + } + enum "option-2,-generation-1" { + value 2; + description + "ITU-T Option 2, Generation 1"; + } + enum "option-2,-generation-2" { + value 3; + description + "ITU-T Option 2, Generation 2"; + } + } + description + "Fsync ql option"; + } + + typedef Gnss1pps-polarity { + type enumeration { + enum "positive" { + value 0; + description + "Positive 1PPS polarity"; + } + enum "negative" { + value 1; + description + "Negative 1PPS polarity"; + } + } + description + "Gnss1pps polarity"; + } + + typedef Gnss-constellation { + type enumeration { + enum "auto" { + value 0; + description + "Unicast communication"; + } + enum "gps" { + value 1; + description + "GPS constellation"; + } + enum "galileo" { + value 2; + description + "Galileo constellation"; + } + enum "bei-dou" { + value 3; + description + "BeiDou constellation"; + } + enum "qzss" { + value 4; + description + "QZSS constellation"; + } + enum "glonass" { + value 5; + description + "GLONASS constellation"; + } + enum "sbas" { + value 6; + description + "SBAS constellation"; + } + enum "irnss" { + value 7; + description + "IRNSS constellation"; + } + } + description + "Gnss constellation"; + } + + typedef Fsync-clock { + type enumeration { + enum "sync" { + value 3; + description + "Synchronous clock"; + } + enum "internal" { + value 4; + description + "Internal clock"; + } + enum "gnss" { + value 8; + description + "GNSS receiver"; + } + } + description + "Fsync clock"; + } + + typedef Fsync-ql-value { + type enumeration { + enum "dnu" { + value 1; + description + "This signal should not be used for + synchronization"; + } + enum "o1-e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference + timing clock"; + } + enum "o1-prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "o1-prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "o1-ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V slave clock"; + } + enum "o1-ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV slave clock"; + } + enum "o1-e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment + clock"; + } + enum "o1-eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "o1-sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "o1-e-prc" { + value 28; + description + "ITU-T Option 1: Enhanced primary reference + clock"; + } + enum "o2-g1-e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary + reference timing clock"; + } + enum "o2-g1-prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference + timing clock"; + } + enum "o2-g1-prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference + source"; + } + enum "o2-g1-stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - + traceability unknown"; + } + enum "o2-g1-st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "o2-g1-st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "o2-g1-e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Enhanced ethernet + equipment clock"; + } + enum "o2-g1-eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet + equipment clock"; + } + enum "o2-g1-smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self + timed"; + } + enum "o2-g1-st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "o2-g1-e-prc" { + value 51; + description + "ITU-T Option 2, Generation 1: Enhanced primary + reference clock"; + } + enum "o2-g2-e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary + reference timing clock"; + } + enum "o2-g2-prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference + timing clock"; + } + enum "o2-g2-prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference + source"; + } + enum "o2-g2-stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - + traceability unknown"; + } + enum "o2-g2-st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "o2-g2-tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node + clock"; + } + enum "o2-g2-st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "o2-g2-st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "o2-g2-e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Enhanced ethernet + equipment clock"; + } + enum "o2-g2-eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet + equipment clock"; + } + enum "o2-g2-smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self + timed"; + } + enum "o2-g2-st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "o2-g2-e-prc" { + value 73; + description + "ITU-T Option 2, Generation 2: Enhanced primary + reference clock"; + } + } + description + "Fsync ql value"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper-sub1.yang new file mode 100644 index 000000000..d8a195bc0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper-sub1.yang @@ -0,0 +1,2038 @@ +submodule Cisco-IOS-XR-freqsync-oper-sub1 { + belongs-to Cisco-IOS-XR-freqsync-oper { + prefix Cisco-IOS-XR-freqsync-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR freqsync package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "1.2.0"; + } + revision 2021-01-13 { + description + "Added ePRC QL code."; + semver:module-version "1.2.0"; + } + revision 2019-12-18 { + description + "Added selection point input information, source information, SSM and satellite counters to line interfaces, and information about selection points."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-20 { + description + "Combined selection point info from FSYNC-SP-INFO in FSYNC-SP-INFO-V2"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsync-bag-stream-state { + type enumeration { + enum "stream-invalid" { + value 0; + description + "Invalid stream"; + } + enum "stream-unqualified" { + value 1; + description + "Unqualified stream"; + } + enum "stream-available" { + value 2; + description + "Stream available"; + } + enum "stream-acquiring" { + value 3; + description + "Stream acquiring"; + } + enum "stream-locked" { + value 4; + description + "Stream locked"; + } + enum "stream-holdover" { + value 5; + description + "Stream in holdover"; + } + enum "stream-freerun" { + value 6; + description + "Stream free running"; + } + enum "stream-failed" { + value 7; + description + "Stream failed"; + } + enum "stream-unmonitored" { + value 8; + description + "Unmonitored stream"; + } + enum "stream-error" { + value 9; + description + "Stream error"; + } + } + description + "Platform stream status"; + } + + typedef Fsync-bag-clock-intf-class { + type enumeration { + enum "clock-class-bitst1" { + value 0; + description + "BITS T1"; + } + enum "clock-class-bitse1" { + value 1; + description + "BITS E1"; + } + enum "clock-class-bits2m" { + value 2; + description + "BITS 2M"; + } + enum "clock-class-bits6m" { + value 3; + description + "BITS 6M"; + } + enum "clock-class-bits64k" { + value 4; + description + "BITS 64K"; + } + enum "clock-class-dti" { + value 5; + description + "DTI"; + } + enum "clock-class-gps" { + value 6; + description + "GPS"; + } + enum "clock-class-chassis-sync" { + value 7; + description + "Inter-Chassis Sync"; + } + enum "clock-class-bitsj1" { + value 8; + description + "Bits J1"; + } + enum "clock-class-unknown" { + value 255; + description + "Unknown"; + } + } + description + "Clock-interface class"; + } + + typedef Fsync-bag-esmc-peer-state { + type enumeration { + enum "peer-down" { + value 1808240398; + description + "Peer state down"; + } + enum "peer-up" { + value 1808240399; + description + "Peer state up"; + } + enum "peer-timed-out" { + value 1808240400; + description + "Peer state timed out"; + } + enum "peer-unknown" { + value 1808240401; + description + "Peer state unknown"; + } + } + description + "ESMC peer state"; + } + + typedef Fsync-clock-id { + type uint64; + description + "Fsync clock id"; + } + + typedef Fsync-bag-ql-o2-g2-value { + type enumeration { + enum "option2-generation2-invalid" { + value 0; + description + "Invalid"; + } + enum "option2-generation2-do-not-use" { + value 1; + description + "Do not use"; + } + enum "option2-generation2-failed" { + value 2; + description + "Failed"; + } + enum "option2-generation2-none" { + value 3; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option2e-prtc" { + value 60; + description + "Enhanced primary reference timing clock"; + } + enum "option2prtc" { + value 61; + description + "Primary reference timing clock"; + } + enum "option2-generation2prs" { + value 62; + description + "Primary reference source"; + } + enum "option2-generation2stu" { + value 63; + description + "Synchronized - traceability unknown"; + } + enum "option2-generation2-stratum2" { + value 64; + description + "Stratum 2"; + } + enum "option2-generation2tnc" { + value 65; + description + "Transit node clock"; + } + enum "option2-generation2-stratum3e" { + value 66; + description + "Stratum 3E"; + } + enum "option2-generation2-stratum3" { + value 67; + description + "Stratum 3"; + } + enum "option2e-eec" { + value 68; + description + "Enhanced ethernet equipment clock"; + } + enum "option2eec2" { + value 69; + description + "Ethernet equipment clock"; + } + enum "option2-generation2smc" { + value 70; + description + "SONET clock self timed"; + } + enum "option2-generation2-stratum4" { + value 71; + description + "Stratum 4 freerun"; + } + enum "option2e-prc" { + value 73; + description + "Enhanced primary reference clock"; + } + } + description + "Quality level option 2, generation 2 values"; + } + + typedef Fsync-bag-ql-o2-g1-value { + type enumeration { + enum "option2-generation1-invalid" { + value 0; + description + "Invalid"; + } + enum "option2-generation1-do-not-use" { + value 1; + description + "Do not use"; + } + enum "option2-generation1-failed" { + value 2; + description + "Failed"; + } + enum "option2-generation1-none" { + value 3; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option2e-prtc" { + value 40; + description + "Enhanced primary reference timing clock"; + } + enum "option2prtc" { + value 41; + description + "Primary reference timing clock"; + } + enum "option2-generation1prs" { + value 42; + description + "Primary reference source"; + } + enum "option2-generation1stu" { + value 43; + description + "Synchronized - traceability unknown"; + } + enum "option2-generation1-stratum2" { + value 44; + description + "Stratum 2"; + } + enum "option2-generation1-stratum3" { + value 45; + description + "Stratum 3"; + } + enum "option2e-eec" { + value 46; + description + "Enhanced ethernet equipment clock"; + } + enum "option2eec2" { + value 47; + description + "Ethernet equipment clock"; + } + enum "option2-generation1smc" { + value 48; + description + "SONET clock self timed"; + } + enum "option2-generation1-stratum4" { + value 49; + description + "Stratum 4 freerun"; + } + enum "option2e-prc" { + value 51; + description + "Enhanced primary reference clock"; + } + } + description + "Quality level option 2, generation 1 values"; + } + + typedef Fsync-bag-ql-o1-value { + type enumeration { + enum "option1-invalid" { + value 0; + description + "Invalid"; + } + enum "option1-do-not-use" { + value 1; + description + "Do not use"; + } + enum "option1-failed" { + value 2; + description + "Failed"; + } + enum "option1-none" { + value 3; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option1e-prtc" { + value 20; + description + "Enhanced primary reference timing clock"; + } + enum "option1prtc" { + value 21; + description + "Primary reference timing clock"; + } + enum "option1prc" { + value 22; + description + "Primary reference clock"; + } + enum "option1ssu-a" { + value 23; + description + "Type I or V slave clock"; + } + enum "option1ssu-b" { + value 24; + description + "Type VI slave clock"; + } + enum "option1e-eec" { + value 25; + description + "Enhanced ethernet equipment clock"; + } + enum "option1eec1" { + value 26; + description + "Ethernet equipment clock"; + } + enum "option1sec" { + value 27; + description + "SONET equipment clock"; + } + enum "option1e-prc" { + value 28; + description + "Enhanced primary reference clock"; + } + } + description + "Quality level option 1 values"; + } + + typedef Fsync-bag-ql-option { + type enumeration { + enum "no-quality-level-option" { + value 0; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option1" { + value 1; + description + "ITU-T Quality level option 1"; + } + enum "option2-generation1" { + value 2; + description + "ITU-T Quality level option 2, generation 1"; + } + enum "option2-generation2" { + value 3; + description + "ITU-T Quality level option 2, generation 2"; + } + enum "invalid-quality-level-option" { + value 4; + description + "Invalid quality level option"; + } + } + description + "Quality level option"; + } + + typedef Fsync-bag-optional-string { + type string; + description + "Fsync bag optional string"; + } + + typedef Fsync-bag-source-state { + type enumeration { + enum "source-state-unknown" { + value 0; + description + "Unknown"; + } + enum "source-state-up" { + value 1; + description + "Up"; + } + enum "source-state-down" { + value 2; + description + "Down"; + } + enum "source-state-unavailable" { + value 3; + description + "Unvailable"; + } + } + description + "Source state"; + } + + typedef Fsync-output-id { + type uint8; + description + "Fsync output id"; + } + + typedef Fsync-bag-stream-input { + type enumeration { + enum "invalid-input" { + value 0; + description + "Invalid stream input"; + } + enum "source-input" { + value 1; + description + "Source stream input"; + } + enum "selection-point-input" { + value 2; + description + "Selection point stream input"; + } + } + description + "Stream input type"; + } + + typedef Fsync-bag-damping-state { + type enumeration { + enum "damping-state-down" { + value 0; + description + "Down"; + } + enum "damping-state-coming-up" { + value 1; + description + "Coming up"; + } + enum "damping-state-up" { + value 2; + description + "Up"; + } + enum "damping-state-going-down" { + value 3; + description + "Going down"; + } + } + description + "Damping state"; + } + + typedef Fsync-time-pri { + type uint8; + description + "Fsync time pri"; + } + + typedef Fsync-pri { + type uint8; + description + "Fsync pri"; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Fsync-bag-forwardtrace-node { + type enumeration { + enum "forward-trace-node-selection-point" { + description + "A selection point forwardtrace node"; + } + enum "forward-trace-node-source" { + description + "A timing source forwardtrace node"; + } + } + description + "Selection forwardtrace node information"; + } + + typedef Fsync-bag-selection-point-desc { + type string; + description + "Fsync bag selection point desc"; + } + + typedef Fsync-selection-point-type { + type uint8; + description + "Fsync selection point type"; + } + + typedef Fsync-bag-source-class { + type enumeration { + enum "invalid-source" { + value 0; + description + "Invalid source class"; + } + enum "ethernet-interface-source" { + value 1; + description + "Ethernet interface"; + } + enum "sonet-interface-source" { + value 2; + description + "SONET interface"; + } + enum "clock-interface-source" { + value 3; + description + "Clock interface"; + } + enum "internal-clock-source" { + value 4; + description + "Internal clock"; + } + enum "ptp-source" { + value 5; + description + "PTP clock"; + } + enum "satellite-access-interface-source" { + value 6; + description + "Satellite Access Interface"; + } + enum "ntp-source" { + value 7; + description + "NTP clock"; + } + enum "gnss-receiver" { + value 8; + description + "GNSS Receiver"; + } + } + description + "Source class"; + } + + grouping FSYNC-SP-INPUT-INFO { + description + "Selection point input information"; + container input-selection-point { + description + "The selection point the input is for"; + uses FSYNC-BAG-SP-ID; + } + container stream { + description + "Stream"; + uses FSYNC-BAG-STREAM-ID; + } + container original-source { + description + "Original source"; + uses FSYNC-BAG-SOURCE-ID; + } + container quality-level { + description + "Quality Level"; + uses FSYNC-BAG-QL; + } + leaf supports-frequency { + type boolean; + description + "The selection point input supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The selection point input supports time-of-day"; + } + leaf priority { + type Fsync-pri; + description + "Priority"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "Time-of-day priority"; + } + leaf selected { + type boolean; + description + "The selection point input is selected"; + } + leaf output-id-xr { + type Fsync-output-id; + description + "Platform output ID, if the input is selected"; + } + leaf platform-status { + type Fsync-bag-stream-state; + description + "Platform status"; + } + leaf platform-failed-reason { + type Fsync-bag-optional-string; + description + "Why the stream has failed"; + } + leaf source { + type string { + length "0..144"; + } + description + "Description of the source that this stream + represents (if any)"; + } + leaf stale { + type boolean; + description + "The stream is stale"; + } + leaf removed { + type boolean; + description + "Stream has been removed as input to this SP but + is still selected"; + } + leaf pd-update { + type boolean; + description + "Stream has update that has yet to be processed"; + } + } + + grouping FSYNC-CLOCK-INFO-V2 { + description + "Clock interface information"; + container source { + description + "The source ID for the clock"; + uses FSYNC-BAG-SOURCE-ID; + } + container selected-source { + description + "Timing source selected for clock output"; + uses FSYNC-BAG-SOURCE-ID; + } + container quality-level-received { + description + "Received quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-damped { + description + "Quality level after damping has been applied"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-output { + description + "The effective output quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-selected-source { + description + "The quality level of the source driving this + interface"; + uses FSYNC-BAG-QL; + } + leaf state { + type Fsync-bag-source-state; + description + "Clock state"; + } + leaf down-reason { + type Fsync-bag-optional-string; + description + "Why the clock is down"; + } + leaf description { + type string; + description + "Clock description"; + } + leaf priority { + type Fsync-pri; + description + "Priority"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "Time-of-day priority"; + } + leaf ssm-support { + type boolean; + description + "The clock supports SSMs"; + } + leaf ssm-enabled { + type boolean; + description + "The clock output is squelched"; + } + leaf loopback { + type boolean; + description + "The clock is looped back"; + } + leaf selection-input { + type boolean; + description + "The clock is an input for selection"; + } + leaf squelched { + type boolean; + description + "The clock output is squelched"; + } + leaf damping-state { + type Fsync-bag-damping-state; + description + "Damping state"; + } + leaf damping-time { + type uint32; + description + "Time until damping state changes in ms"; + } + leaf input-disabled { + type boolean; + description + "Timing input is disabled"; + } + leaf output-disabled { + type boolean; + description + "Timing output is disabled"; + } + leaf wait-to-restore-time { + type uint16; + description + "Wait-to-restore time for the clock"; + } + leaf clock-type-xr { + type Fsync-bag-clock-intf-class; + description + "The type of clock"; + } + leaf supports-frequency { + type boolean; + description + "The PTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The PTP clock supports time"; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-SSM-INFO { + description + "SSM summary information"; + leaf ethernet-sources { + type uint32; + description + "Number of ethernet interfaces in synchronous + mode"; + } + leaf ethernet-sources-select { + type uint32; + description + "Number of ethernet interfaces assigned for + selection"; + } + leaf ethernet-sources-enabled { + type uint32; + description + "Number of ethernet interfaces with SSM enabled"; + } + leaf sonet-sources { + type uint32; + description + "Number of SONET interfaces in synchronous mode"; + } + leaf sonet-sources-select { + type uint32; + description + "Number of SONET interfaces assigned for + selection"; + } + leaf sonet-sources-enabled { + type uint32; + description + "Number of SONET interfaces with SSM enabled"; + } + leaf events-sent { + type uint32; + description + "Total event SSMs sent"; + } + leaf events-received { + type uint32; + description + "Total event SSMs received"; + } + leaf infos-sent { + type uint32; + description + "Total information SSMs sent"; + } + leaf infos-received { + type uint32; + description + "Total information SSMs received"; + } + leaf dn-us-sent { + type uint32; + description + "Total DNU SSMs sent"; + } + leaf dn-us-received { + type uint32; + description + "Total DNU SSMs received"; + } + } + + grouping FSYNC-PTP-INFO-V2 { + description + "Frequency Synchronization PTP information"; + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + leaf state { + type Fsync-bag-source-state; + description + "PTP state"; + } + leaf supports-frequency { + type boolean; + description + "The PTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The PTP clock supports time"; + } + leaf frequency-priority { + type Fsync-pri; + description + "The priority of the PTP clock when selected + between frequency sources"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "The priority of the PTP clock when selecting + between time-of-day sources"; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-BAG-ERROR { + description + "Source QL config error information"; + container source { + description + "Source"; + uses FSYNC-BAG-SOURCE-ID; + } + container input-min-ql { + description + "Configured minimum input QL"; + uses FSYNC-BAG-QL; + } + container input-exact-ql { + description + "Configured exact input QL"; + uses FSYNC-BAG-QL; + } + container input-max-ql { + description + "Configured maximum input QL"; + uses FSYNC-BAG-QL; + } + container output-min-ql { + description + "Configured mininum output QL"; + uses FSYNC-BAG-QL; + } + container output-exact-ql { + description + "Configured exact output QL"; + uses FSYNC-BAG-QL; + } + container output-max-ql { + description + "Configured exact maximum QL"; + uses FSYNC-BAG-QL; + } + leaf enable-error { + type boolean; + description + "Frequency Synchronization enable error"; + } + leaf input-min-error { + type boolean; + description + "Minimum input QL option config error"; + } + leaf input-exact-error { + type boolean; + description + "Exact input QL config error"; + } + leaf input-max-error { + type boolean; + description + "Maximum input QL option config error"; + } + leaf ouput-min-error { + type boolean; + description + "Minimum output QL option config error"; + } + leaf output-exact-error { + type boolean; + description + "Exact output QL option config error"; + } + leaf output-max-error { + type boolean; + description + "Maximum output QL option config error"; + } + leaf ext-ql-input-min-error { + type boolean; + description + "Minimum input extended QL config error"; + } + leaf ext-ql-input-exact-error { + type boolean; + description + "Exact input extended QL config error"; + } + leaf ext-ql-input-max-error { + type boolean; + description + "Maximum input extended Ql config error"; + } + leaf ext-ql-ouput-min-error { + type boolean; + description + "Minimum output extended QL config error"; + } + leaf ext-ql-output-exact-error { + type boolean; + description + "Exact output extended QL config error"; + } + leaf ext-ql-output-max-error { + type boolean; + description + "Maximum output extended QL config error"; + } + leaf input-output-mismatch { + type boolean; + description + "Input/Output mismatch error"; + } + } + + grouping FSYNC-CONFIG-ERRORS-INFO { + description + "Configuration error information"; + list error-source { + description + "Configuration errors"; + uses FSYNC-BAG-ERROR; + } + } + + grouping FSYNC-BAG-SP-OUTPUT-DEF-V2 { + description + "Output information for a selection point or + interface"; + leaf local-clock-ouput { + type boolean; + description + "Used for local clock output"; + } + leaf local-line-output { + type boolean; + description + "Used for local line interface output"; + } + leaf local-time-of-day-output { + type boolean; + description + "Used for local time-of-day output"; + } + list spa-selection-point { + description + "SPA selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + list chassis-selection-point { + description + "Chassis selection points"; + uses FSYNC-BAG-SP-INFO; + } + list router-selection-point { + description + "Router selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-SP-INFO-V2 { + description + "Selection point information"; + container output { + description + "Information about the output of the selection + point"; + uses FSYNC-BAG-SP-OUTPUT-DEF-V2; + } + container last-programmed { + description + "Time the SP was last programmed"; + uses FSYNC-BAG-TIMESTAMP; + } + container last-selection { + description + "Time the last selection was made"; + uses FSYNC-BAG-TIMESTAMP; + } + leaf selection-point-type { + type Fsync-selection-point-type; + description + "Selection Point Type"; + } + leaf description { + type string; + description + "Description"; + } + leaf inputs { + type uint32; + description + "Number of inputs"; + } + leaf inputs-selected { + type uint32; + description + "Number of inputs that are selected"; + } + leaf time-of-day-selection { + type boolean; + description + "The selection point is a time-of-day selection + point"; + } + leaf pending-s-ps { + type uint32; + description + "Flags indicating which SPs must be programmed + before this SP"; + } + leaf sp-flags { + type uint8; + description + "Flags for the SP structure"; + } + list stream { + description + "A list of stream IDs which are valid inputs to + this SP"; + uses FSYNC-BAG-STREAM-ID; + } + } + + grouping FSYNC-NTP-INFO-V2 { + description + "Frequency Synchronization NTP information"; + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + leaf state { + type Fsync-bag-source-state; + description + "NTP state"; + } + leaf supports-frequency { + type boolean; + description + "The NTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The NTP clock supports time"; + } + leaf frequency-priority { + type Fsync-pri; + description + "The priority of the NTP clock when selected + between frequency sources"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "The priority of the NTP clock when selecting + between time-of-day sources"; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-BAG-TIMESTAMP { + description + "Timestamp"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } + + grouping FSYNC-BAG-ETH-PEER-INFO { + description + "Ethernet peer information"; + container peer-state-time { + description + "Time of last peer state transition"; + uses FSYNC-BAG-TIMESTAMP; + } + container last-ssm { + description + "Time of last SSM received"; + uses FSYNC-BAG-TIMESTAMP; + } + leaf peer-state { + type Fsync-bag-esmc-peer-state; + description + "Peer state"; + } + leaf peer-up-count { + type uint16; + description + "Number of times the peer has come up"; + } + leaf peer-timeout-count { + type uint16; + description + "Number of times the peer has timed out"; + } + } + + grouping FSYNC-BAG-SP-INFO { + description + "Selection point information"; + leaf selection-point { + type Fsync-selection-point-type; + description + "Selection point ID"; + } + leaf selection-point-description { + type Fsync-bag-selection-point-desc; + description + "Selection point description"; + } + } + + grouping FSYNC-BAG-QL-DATA { + description + "Quality level data"; + leaf originator-clock-id { + type Fsync-clock-id; + description + "Originator clock ID"; + } + leaf sync-e-steps { + type uint8; + description + "SyncE steps"; + } + leaf esync-e-steps { + type uint8; + description + "Enhanced SyncE steps"; + } + leaf all-steps-e-sync-e { + type boolean; + description + "Whether all steps are running enhanced SyncE"; + } + leaf chain-complete { + type boolean; + description + "Whether the chain of extended QL TLVs is + complete"; + } + } + + grouping FSYNC-BAG-QL { + description + "Quality level"; + leaf quality-level-option { + type Fsync-bag-ql-option; + description + "QualityLevelOption"; + } + leaf option1-value { + when "../quality-level-option = 'option1'" { + description + "../QualityLevelOption = 'Option1'"; + } + type Fsync-bag-ql-o1-value; + description + "ITU-T Option 1 QL value"; + } + leaf option2-generation1-value { + when "../quality-level-option = 'option2-generation1'" { + description + "../QualityLevelOption = 'Option2Generation1'"; + } + type Fsync-bag-ql-o2-g1-value; + description + "ITU-T Option 2, generation 1 value"; + } + leaf option2-generation2-value { + when "../quality-level-option = 'option2-generation2'" { + description + "../QualityLevelOption = 'Option2Generation2'"; + } + type Fsync-bag-ql-o2-g2-value; + description + "ITU-T Option 2, generation 2 value"; + } + } + + grouping FSYNC-BAG-SAT-INFO-TYPE { + description + "Satellite info type"; + leaf satellite-id { + type uint16; + description + "The satellite ID"; + } + leaf sdac-key-length { + type uint16; + description + "The length of the SDAC key"; + } + leaf-list sdac-key { + type uint8; + description + "The SDAC key"; + } + } + + grouping FSYNC-BAG-ETH-ESMC-STATS { + description + "ESMC Statistics"; + leaf esmc-events-sent { + type uint16; + description + "Number of event SSMs sent"; + } + leaf esmc-events-received { + type uint16; + description + "Number of event SSMs received"; + } + leaf esmc-infos-sent { + type uint32; + description + "Number of info SSMs sent"; + } + leaf esmc-infos-received { + type uint32; + description + "Number of info SSms received"; + } + leaf esmc-dn-us-sent { + type uint32; + description + "Number of SSMs with DNU QL sent"; + } + leaf esmc-dn-us-received { + type uint32; + description + "Number of SSMs with DNU QL received"; + } + leaf esmc-malformed-received { + type uint16; + description + "Number of malformed packets received"; + } + leaf esmc-received-error { + type uint16; + description + "Number of received packets that failed to be + handled"; + } + } + + grouping FSYNC-BAG-LAST-SP-ID { + description + "Last selection point ID"; + container selection-point { + description + "Last selection point"; + uses FSYNC-BAG-SP-ID; + } + leaf output-id { + type Fsync-output-id; + description + "Output ID"; + } + } + + grouping FSYNC-BAG-STREAM-ID { + description + "Stream ID"; + container source-id { + when "../stream-input = 'source-input'" { + description + "../StreamInput = 'SourceInput'"; + } + description + "Source ID"; + uses FSYNC-BAG-SOURCE-ID; + } + container selection-point-id { + when "../stream-input = 'selection-point-input'" { + description + "../StreamInput = 'SelectionPointInput'"; + } + description + "Selection point ID"; + uses FSYNC-BAG-LAST-SP-ID; + } + leaf stream-input { + type Fsync-bag-stream-input; + description + "StreamInput"; + } + } + + grouping FSYNC-IF-INFO-V2 { + description + "Line interface information"; + container source { + description + "The source ID for the interface"; + uses FSYNC-BAG-SOURCE-ID; + } + container selected-source { + description + "Timing source selected for interface output"; + uses FSYNC-BAG-SOURCE-ID; + } + container ssm-counters { + description + "Counters for sent and received SSMs on ESMC + enabled interfaces"; + uses FSYNC-BAG-ETH-ESMC-STATS; + } + container sat-info { + description + "Sat info for the source if source is a sat + access interface"; + uses FSYNC-BAG-SAT-INFO-TYPE; + } + container quality-level-received { + description + "Received quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-damped { + description + "Quality level after damping has been applied"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-output { + description + "The effective output quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-selected-source { + description + "The quality level of the source driving this + interface"; + uses FSYNC-BAG-QL; + } + container ql-data-received { + description + "Received quality level data"; + uses FSYNC-BAG-QL-DATA; + } + container ql-data-to-send { + description + "Quality level data to be sent"; + uses FSYNC-BAG-QL-DATA; + } + container ethernet-peer-information { + description + "Ethernet peer information"; + uses FSYNC-BAG-ETH-PEER-INFO; + } + container esmc-statistics { + description + "ESMC Statistics"; + uses FSYNC-BAG-ETH-ESMC-STATS; + } + leaf name { + type string; + description + "Interface name"; + } + leaf state { + type Im-state-enum; + description + "Interface state"; + } + leaf ssm-enabled { + type boolean; + description + "SSM is enabled on the interface"; + } + leaf squelched { + type boolean; + description + "The interface output is squelched"; + } + leaf selection-input { + type boolean; + description + "The interface is an input for selection"; + } + leaf priority { + type Fsync-pri; + description + "Priority"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "Time-of-day priority"; + } + leaf damping-state { + type Fsync-bag-damping-state; + description + "Damping state"; + } + leaf damping-time { + type uint32; + description + "Time until damping state changes in ms"; + } + leaf wait-to-restore-time { + type uint16; + description + "Wait-to-restore time for the interface"; + } + leaf supports-frequency { + type boolean; + description + "The PTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The PTP clock supports time"; + } + leaf source-flags { + type uint32; + description + "The source flags"; + } + leaf mac-address { + type string { + length "0..6"; + } + description + "The MAC address of the source"; + } + leaf source-config-flags { + type uint8; + description + "The source configuration flags"; + } + leaf last-up-down { + type uint32; + description + "Time the interface last went up or down"; + } + leaf platform-state { + type Fsync-bag-source-state; + description + "Platform state for the source"; + } + leaf pd-down-reason { + type Fsync-bag-optional-string; + description + "Why the stream is down"; + } + list local-stream { + description + "The local streams"; + uses FSYNC-BAG-STREAM-ID; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-BAG-SUMMARY-TOD-INFO { + description + "Time-of-day summary information"; + container source { + description + "The source associated with this summary + information"; + uses FSYNC-BAG-SOURCE-ID; + } + leaf node-count { + type uint32; + description + "The number of cards having their time-of-day set + by the source"; + } + } + + grouping FSYNC-BAG-SUMMARY-FREQ-INFO { + description + "Frequency summary information"; + container source { + description + "The source associated with this summary + information"; + uses FSYNC-BAG-SOURCE-ID; + } + leaf clock-count { + type uint32; + description + "The number of clock-interfaces being driven by + the source"; + } + leaf ethernet-count { + type uint32; + description + "The number of Ethernet interfaces being driven + by the source"; + } + leaf sonet-count { + type uint32; + description + "The number of SONET/SDH interfaces being driven + by the source"; + } + } + + grouping FSYNC-SUMMARY-INFO { + description + "Frequency Synchronization summary information"; + list frequency-summary { + description + "Summary of sources selected for frequency"; + uses FSYNC-BAG-SUMMARY-FREQ-INFO; + } + list time-of-day-summary { + description + "Summary of sources selected for time-of-day"; + uses FSYNC-BAG-SUMMARY-TOD-INFO; + } + } + + grouping FSYNC-BAG-FORWARDTRACE-NODE { + description + "Selection forwardtrace node"; + container selection-point { + when "../node-type = 'forward-trace-node-selection-point'" { + description + "../NodeType = 'ForwardTraceNodeSelectionPoint'"; + } + description + "Selection Point"; + uses FSYNC-BAG-SP-ID; + } + container source { + when "../node-type = 'forward-trace-node-source'" { + description + "../NodeType = 'ForwardTraceNodeSource'"; + } + description + "Timing Source"; + uses FSYNC-BAG-SOURCE-ID; + } + leaf node-type { + type Fsync-bag-forwardtrace-node; + description + "NodeType"; + } + } + + grouping FSYNC-BAG-FORWARDTRACE { + description + "Selection forwardtrace"; + container forward-trace-node { + description + "The source or selection point at this point in + the forwardtrace"; + uses FSYNC-BAG-FORWARDTRACE-NODE; + } + } + + grouping FSYNC-SELECTION-FORWARDTRACE-INFO { + description + "Selection forwardtrace information"; + list forward-trace { + description + "Selection ForwardTrace"; + uses FSYNC-BAG-FORWARDTRACE; + } + } + + grouping FSYNC-BAG-SP-ID { + description + "Selection point ID"; + leaf selection-point-type { + type Fsync-selection-point-type; + description + "Selection point type"; + } + leaf selection-point-description { + type Fsync-bag-selection-point-desc; + description + "Selection point descrption"; + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + + grouping FSYNC-BAG-CLOCK-ID { + description + "Clock ID"; + leaf node { + type xr:Node-id; + description + "Node"; + } + leaf id { + type uint32; + description + "ID (port number for clock interface, receiver + number for GNSS receiver)"; + } + leaf clock-name { + type string { + length "0..144"; + } + description + "Name"; + } + } + + grouping FSYNC-BAG-SOURCE-ID { + description + "Source ID"; + container clock-id { + when "../source-class = 'clock-interface-source'" { + description + "../SourceClass = 'ClockInterfaceSource'"; + } + description + "Clock ID"; + uses FSYNC-BAG-CLOCK-ID; + } + container internal-clock-id { + when "../source-class = 'internal-clock-source'" { + description + "../SourceClass = 'InternalClockSource'"; + } + description + "Internal Clock ID"; + uses FSYNC-BAG-CLOCK-ID; + } + container gnss-receiver-id { + when "../source-class = 'gnss-receiver'" { + description + "../SourceClass = 'GNSSReceiver'"; + } + description + "GNSS Receiver ID"; + uses FSYNC-BAG-CLOCK-ID; + } + leaf source-class { + type Fsync-bag-source-class; + description + "SourceClass"; + } + leaf ethernet-interface { + when "../source-class = 'ethernet-interface-source'" { + description + "../SourceClass = 'EthernetInterfaceSource'"; + } + type xr:Interface-name; + description + "Ethernet interface"; + } + leaf sonet-interface { + when "../source-class = 'sonet-interface-source'" { + description + "../SourceClass = 'SONETInterfaceSource'"; + } + type xr:Interface-name; + description + "SONET interfaces"; + } + leaf ptp-node { + when "../source-class = 'ptp-source'" { + description + "../SourceClass = 'PTPSource'"; + } + type xr:Node-id; + description + "PTP Clock Node"; + } + leaf satellite-access-interface { + when "../source-class = 'satellite-access-interface-source'" { + description + "../SourceClass = + 'SatelliteAccessInterfaceSource'"; + } + type xr:Interface-name; + description + "Satellite Access Interface"; + } + leaf ntp-node { + when "../source-class = 'ntp-source'" { + description + "../SourceClass = 'NTPSource'"; + } + type xr:Node-id; + description + "NTP Clock Node"; + } + } + + grouping FSYNC-SELECTION-BACKTRACE-INFO { + description + "Selection backtrace information"; + container selected-source { + description + "Source which has been selected for output"; + uses FSYNC-BAG-SOURCE-ID; + } + list selection-point { + description + "List of selection points in the backtrace"; + uses FSYNC-BAG-SP-ID; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper.yang new file mode 100644 index 000000000..273914ce2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-oper.yang @@ -0,0 +1,427 @@ +module Cisco-IOS-XR-freqsync-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-freqsync-oper"; + prefix freqsync-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-freqsync-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-freqsync-oper-sub1 { + revision-date 2021-12-01; + } + + 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 freqsync package operational data. + + This module contains definitions + for the following management objects: + frequency-synchronization: Frequency Synchronization + operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "1.2.0"; + } + revision 2021-01-13 { + description + "Added ePRC QL code."; + semver:module-version "1.2.0"; + } + revision 2019-12-18 { + description + "Added selection point input information, source information, SSM and satellite counters to line interfaces, and information about selection points."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-20 { + description + "Combined selection point info from FSYNC-SP-INFO in FSYNC-SP-INFO-V2"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsync-stream { + type enumeration { + enum "local" { + value 1; + description + "Stream input from a local source"; + } + enum "selection-point" { + value 2; + description + "Stream input from a selection point on a remote + node"; + } + } + description + "Fsync stream"; + } + + typedef Fsync-source { + type enumeration { + enum "ethernet" { + value 1; + description + "An ethernet interface"; + } + enum "sonet" { + value 2; + description + "A SONET interface"; + } + enum "clock" { + value 3; + description + "A clock interface"; + } + enum "internal" { + value 4; + description + "An internal clock"; + } + enum "ptp" { + value 5; + description + "A PTP clock"; + } + enum "satellite-access" { + value 6; + description + "A satellite access interface clock"; + } + enum "ntp" { + value 7; + description + "An NTP clock"; + } + enum "gnss" { + value 8; + description + "A GNSS receiver"; + } + } + description + "Fsync source"; + } + + container frequency-synchronization { + config false; + description + "Frequency Synchronization operational data"; + container global-nodes { + description + "Table for global node-specific operational data"; + list global-node { + key "node"; + description + "Global node-specific data for a particular node"; + container clock-interface-selection-back-traces { + description + "Selection backtrace operational data for + clock-interfaces"; + list clock-interface-selection-back-trace { + key "clock-type id"; + description + "Selection backtrace operational data for a + particular clock-interface or GNSS receiver"; + leaf clock-type { + type dt1:Fsync-clock; + description + "Clock type"; + } + leaf id { + type uint32 { + range "0..4294967295"; + } + description + "Clock ID (port number for clock interfaces, + receiver number for GNSS receivers"; + } + uses FSYNC-SELECTION-BACKTRACE-INFO; + } + } + container clock-interface-selection-forward-traces { + description + "Selection forwardtrace operational data for + clock-interfaces"; + list clock-interface-selection-forward-trace { + key "clock-type port"; + description + "Selection forwardtrace operational data for a + particular clock-interface"; + leaf clock-type { + type dt1:Fsync-clock; + description + "Clock type"; + } + leaf port { + type uint32 { + range "0..4294967295"; + } + description + "Clock port"; + } + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + } + container time-of-day-back-trace { + description + "Selection backtrace operational data for + time-of-day on a particular node"; + uses FSYNC-SELECTION-BACKTRACE-INFO; + } + container ntp-selection-forward-trace { + description + "Selection forwardtrace operational data for a + NTP clock"; + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + container ptp-selection-forward-trace { + description + "Selection forwardtrace operational data for a + PTP clock"; + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + container global-interfaces { + description + "Table for global interface operational data"; + list global-interface { + key "interface-name"; + description + "Global interface information for a particular + interface"; + container interface-selection-forward-trace { + description + "Selection forwardtrace operational data for a + particular interface"; + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + container interface-selection-back-trace { + description + "Selection backtrace operational data for a + particular interface"; + uses FSYNC-SELECTION-BACKTRACE-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container summary { + description + "Summary operational data"; + uses FSYNC-SUMMARY-INFO; + } + container interface-datas { + description + "Table for interface operational data"; + list interface-data { + key "interface-name"; + description + "Operational data for a particular interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses FSYNC-IF-INFO-V2; + } + } + container nodes { + description + "Table for node-specific operational data"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container ntp-data { + description + "NTP operational data"; + uses FSYNC-NTP-INFO-V2; + } + container selection-point-datas { + description + "Selection point data table"; + list selection-point-data { + key "selection-point"; + description + "Operational data for a given selection point"; + leaf selection-point { + type uint32 { + range "0..4294967295"; + } + description + "Selection point ID"; + } + uses FSYNC-SP-INFO-V2; + } + } + container configuration-errors { + description + "Configuration error operational data"; + uses FSYNC-CONFIG-ERRORS-INFO; + } + container ptp-data { + description + "PTP operational data"; + uses FSYNC-PTP-INFO-V2; + } + container ssm-summary { + description + "SSM operational data"; + uses FSYNC-SSM-INFO; + } + container detailed-clock-datas { + description + "Table for detailed clock operational data"; + list detailed-clock-data { + key "clock-type id"; + description + "Detailed operational data for a particular + clock"; + leaf clock-type { + type dt1:Fsync-clock; + description + "Clock type"; + } + leaf id { + type uint32 { + range "0..4294967295"; + } + description + "Clock ID (port number for clock interfaces, + receiver number for GNSS receivers"; + } + uses FSYNC-CLOCK-INFO-V2; + } + } + container clock-datas { + description + "Table for clock operational data"; + list clock-data { + key "clock-type id"; + description + "Operational data for a particular clock"; + leaf clock-type { + type dt1:Fsync-clock; + description + "Clock type"; + } + leaf id { + type uint32 { + range "0..4294967295"; + } + description + "Clock ID (port number for clock interfaces, + receiver number for GNSS receivers"; + } + uses FSYNC-CLOCK-INFO-V2; + } + } + container selection-point-inputs { + description + "Table for selection point input operational + data"; + list selection-point-input { + description + "Operational data for a particular selection + point input"; + leaf selection-point { + type uint32 { + range "0..4294967295"; + } + description + "Selection point ID"; + } + leaf stream-type { + type Fsync-stream; + description + "Type of stream"; + } + leaf source-type { + type Fsync-source; + description + "Type of source"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf clock-port { + type uint32 { + range "0..4294967295"; + } + description + "Clock port"; + } + leaf last-node { + type xr:Node-id; + description + "Last node for a selection point stream"; + } + leaf last-selection-point { + type uint32 { + range "0..4294967295"; + } + description + "Last selection point for a selection point + stream"; + } + leaf output-id { + type uint32 { + range "0..4294967295"; + } + description + "Output ID for a selection point stream"; + } + uses FSYNC-SP-INPUT-INFO; + } + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-sat-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-sat-cfg.yang new file mode 100644 index 000000000..c39c9f2ca --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-freqsync-sat-cfg.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-freqsync-sat-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-freqsync-sat-cfg"; + prefix freqsync-sat-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2-eth-infra-cfg { + prefix a2; + } + import Cisco-IOS-XR-icpe-infra-cfg { + prefix a3; + } + + 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 freqsync-sat package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-l2-eth-infra-cfg, + Cisco-IOS-XR-icpe-infra-cfg + modules with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-31 { + description + "Added submode-enter Enable handling."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration/a3:nv-satellite-fabric-link" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-icpe-infra-cfg'"; + container frequency-synchronization { + presence "CLI submode compatibility."; + description + "Frequency Synchronization satellite + configuration"; + leaf enable { + type empty; + description + "Enable Frequency Synchronization"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1.yang new file mode 100644 index 000000000..9a6709061 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1.yang @@ -0,0 +1,800 @@ +submodule Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1 { + belongs-to Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper { + prefix Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fretta-bcm-dpa-npu-stats package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-12 { + description + "Modified data types for num-fields and num-blocks"; + semver:module-version "2.2.0"; + } + revision 2021-08-13 { + description + "Added num_cores and voq_stats_core1"; + semver:module-version "2.1.0"; + } + revision 2020-10-09 { + description + "Added task-id"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.2.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dpa-voq-ingress-stats-tc { + type enumeration { + enum "dpa-voq-stats-traffic-class-0" { + value 0; + description + "Traffic class 0 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-1" { + value 1; + description + "Traffic class 1 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-2" { + value 2; + description + "Traffic class 2 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-3" { + value 3; + description + "Traffic class 3 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-4" { + value 4; + description + "Traffic class 4 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-5" { + value 5; + description + "Traffic class 5 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-6" { + value 6; + description + "Traffic class 6 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-7" { + value 7; + description + "Traffic class 7 of the VoQ"; + } + enum "dpa-voq-stats-traffic-class-max" { + value 8; + description + "Traffic class Max of the VoQ"; + } + } + description + "Traffic class of the VoQ"; + } + + grouping DPA-VOQ-INGRESS-PACKET-STATISTICS { + description + "DPA VOQ INGRESS PACKET STATISTICS"; + leaf traffic-class { + type Dpa-voq-ingress-stats-tc; + description + "Traffic class of the VoQ"; + } + leaf received-bytes { + type uint64; + units "byte"; + description + "Bytes Received on the port"; + } + leaf received-packets { + type uint64; + description + "Packets Received on the port"; + } + leaf dropped-bytes { + type uint64; + units "byte"; + description + "Bytes Dropped on the port"; + } + leaf dropped-packets { + type uint64; + description + "Packets Dropeed on the port"; + } + leaf yellow-received-bytes { + type uint64; + units "byte"; + description + "YBytes Received on the port"; + } + leaf yellow-received-packets { + type uint64; + description + "YPackets Received on the port"; + } + leaf yellow-dropped-bytes { + type uint64; + units "byte"; + description + "YBytes Dropped on the port"; + } + leaf yellow-dropped-packets { + type uint64; + description + "YPackets Dropeed on the port"; + } + leaf red-received-bytes { + type uint64; + units "byte"; + description + "RBytes Received on the port"; + } + leaf red-received-packets { + type uint64; + description + "RPackets Received on the port"; + } + leaf red-dropped-bytes { + type uint64; + units "byte"; + description + "RBytes Dropped on the port"; + } + leaf red-dropped-packets { + type uint64; + description + "RPackets Dropeed on the port"; + } + } + + grouping DPA-VOQ-INTF-PORT { + description + "DPA VOQ INTF PORT"; + leaf in-use { + type boolean; + description + "Flag to indicate if port is in use"; + } + leaf rack-num { + type uint8; + description + "Rack of port"; + } + leaf slot-num { + type uint8; + description + "Slot of port"; + } + leaf npu-num { + type uint8; + description + "NPU of port"; + } + leaf npu-core { + type uint8; + description + "NPU core of port"; + } + leaf port-num { + type uint8; + description + "Port Number of port"; + } + leaf if-handle { + type uint32; + description + "IfHandle of port"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Interface Name of port"; + } + leaf sys-port { + type uint32; + description + "System port of port"; + } + leaf pp-port { + type uint32; + description + "PP Port number of port"; + } + leaf port-speed { + type uint32; + description + "Port speed of port"; + } + leaf voq-base { + type uint32; + description + "Voq Base number of port"; + } + leaf connector-id { + type uint32; + description + "Connector id of port"; + } + leaf is-local-port { + type boolean; + description + "Flag to indicate if port is local to the node"; + } + leaf counter-grp-size { + type uint8; + description + "Number of VoQ sharing counter"; + } + leaf voq-mode { + type uint8; + description + "4 or 8 VoQ Mode"; + } + leaf internal-intf { + type boolean; + description + "Internal interfaces"; + } + leaf num-cores { + type uint8; + description + "Number of cores supported"; + } + list voq-stat { + max-elements "8"; + description + "Core-0 & Core-both -> Keeps a record of the + received and dropped packets and bytes on the + port"; + uses DPA-VOQ-INGRESS-PACKET-STATISTICS; + } + list voq-stats-core1 { + max-elements "8"; + description + "Core-1 -> Keeps a record of the received and + dropped packets and bytes on the port"; + uses DPA-VOQ-INGRESS-PACKET-STATISTICS; + } + } + + grouping DPA-TRAP-STATS { + description + "DPA TRAP STATS"; + leaf trap-strength { + type uint32; + description + "Trap Strength of the trap"; + } + leaf priority { + type uint32; + description + "Priority of the trap"; + } + leaf trap-id-xr { + type uint32; + description + "Id of the trap"; + } + leaf gport { + type uint32; + description + "Gport of the trap"; + } + leaf fec-id { + type uint32; + description + "Fec id of the trap"; + } + leaf policer-id { + type uint32; + description + "Id of the policer on the trap"; + } + leaf stats-id { + type uint32; + description + "Stats Id of the trap"; + } + leaf encap-id { + type uint32; + description + "Encap Id of the trap"; + } + leaf mc-group { + type uint32; + description + "McGroup of the trap"; + } + leaf trap-string { + type string; + description + "Name String of the trap"; + } + leaf id { + type uint32; + description + "Id for internal use"; + } + leaf offset { + type uint64; + description + "Offset for internal use"; + } + leaf npu-id { + type uint64; + description + "NpuId on which trap is enabled"; + } + leaf packet-dropped { + type uint64; + description + "Number of packets dropped after hitting the trap"; + } + leaf packet-accepted { + type uint64; + description + "Number of packets accepted after hitting the + trap"; + } + } + + grouping NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELD-INFO { + description + "NPU statistics field information"; + leaf is-overflow { + type boolean; + description + "Flag to indicate overflow"; + } + leaf field-name { + type string { + length "0..81"; + } + description + "Field name"; + } + leaf field-value { + type uint64; + description + "Field value"; + } + } + + grouping NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELDS { + description + "NPU statistics fields"; + leaf block-name { + type string { + length "0..41"; + } + description + "Block name"; + } + leaf num-fields { + type uint16; + description + "Number of fields"; + } + list field-info { + description + "Field information"; + uses NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELD-INFO; + } + } + + grouping NPU-EDM-DEVICE-STATS-ASIC-BRIEF-INFO { + description + "NPU Brief statistics information"; + leaf num-blocks { + type uint16; + description + "Number of blocks"; + } + list block-info { + description + "Block information"; + uses NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELDS; + } + } + + grouping FIA-EDM-DEVICE-STATS-ASIC-BRIEF-INFO { + description + "ASIC statistics"; + leaf nbi-rx-total-byte-cnt { + type uint64; + units "byte"; + description + "Total bytes sent from NIF to IRE"; + } + leaf nbi-rx-total-pkt-cnt { + type uint64; + description + "Total packets sent from NIF to IRE"; + } + leaf ire-cpu-pkt-cnt { + type uint64; + description + "CPU ingress received packet counter"; + } + leaf ire-nif-pkt-cnt { + type uint64; + description + "NIF received packet counter"; + } + leaf ire-oamp-pkt-cnt { + type uint64; + description + "OAMP ingress received packet counter"; + } + leaf ire-olp-pkt-cnt { + type uint64; + description + "OLP ingress received packet counter"; + } + leaf ire-rcy-pkt-cnt { + type uint64; + description + "Recycling ingress received packet counter"; + } + leaf ire-fdt-if-cnt { + type uint64; + description + "Performance counter of the FDT interface"; + } + leaf idr-mmu-if-cnt { + type uint64; + description + "Performance counter of the MMU interface"; + } + leaf idr-ocb-if-cnt { + type uint64; + description + "Performance counter of the OCB interface"; + } + leaf iqm-enqueue-pkt-cnt { + type uint64; + description + "Counts enqueued packets"; + } + leaf iqm-dequeue-pkt-cnt { + type uint64; + description + "Counts dequeued packets"; + } + leaf iqm-deleted-pkt-cnt { + type uint64; + description + "Counts matched packets discarded in the DEQ + process"; + } + leaf iqm-enq-discarded-pkt-cnt { + type uint64; + description + "Counts all packets discarded at the ENQ pipe"; + } + leaf ipt-egq-pkt-cnt { + type uint64; + description + "EGQ packet counter"; + } + leaf ipt-enq-pkt-cnt { + type uint64; + description + "ENQ packet counter"; + } + leaf ipt-fdt-pkt-cnt { + type uint64; + description + "FDT packet counter"; + } + leaf ipt-cfg-event-cnt { + type uint64; + description + "Configurable event counter"; + } + leaf ipt-cfg-byte-cnt { + type uint64; + units "byte"; + description + "Configurable bytes counter"; + } + leaf fdt-ipt-desc-cell-cnt { + type uint64; + description + "Descriptor cell counter"; + } + leaf fdt-ire-desc-cell-cnt { + type uint64; + description + "IRE internal descriptor cell counter"; + } + leaf fdt-transmitted-data-cells-cnt { + type uint64; + description + "Counts all transmitted data cells"; + } + leaf fdr-p1-cell-in-cnt { + type uint64; + description + "FDR total incoming cell counter at pipe 1"; + } + leaf fdr-p2-cell-in-cnt { + type uint64; + description + "FDR total incoming cell counter at pipe 2"; + } + leaf fdr-p3-cell-in-cnt { + type uint64; + description + "FDR total incoming cell counter at pipe 3"; + } + leaf fdr-cell-in-cnt-total { + type uint64; + description + "FDR total incoming cell counter"; + } + leaf fda-cells-in-cnt-p1 { + type uint64; + description + "FDA input cell counter P1"; + } + leaf fda-cells-in-cnt-p2 { + type uint64; + description + "FDA input cell counter P2"; + } + leaf fda-cells-in-cnt-p3 { + type uint64; + description + "FDA input cell counter P3"; + } + leaf fda-cells-in-tdm-cnt { + type uint64; + description + "FDA input cell counter TDM"; + } + leaf fda-cells-in-meshmc-cnt { + type uint64; + description + "FDA input cell counter MESHMC"; + } + leaf fda-cells-in-ipt-cnt { + type uint64; + description + "FDA input cell counter IPT"; + } + leaf fda-cells-out-cnt-p1 { + type uint64; + description + "FDA output cell counter P1"; + } + leaf fda-cells-out-cnt-p2 { + type uint64; + description + "FDA output cell counter P2"; + } + leaf fda-cells-out-cnt-p3 { + type uint64; + description + "FDA output cell counter P3"; + } + leaf fda-cells-out-tdm-cnt { + type uint64; + description + "FDA output cell counter TDM"; + } + leaf fda-cells-out-meshmc-cnt { + type uint64; + description + "FDA output cell counter MESHMC"; + } + leaf fda-cells-out-ipt-cnt { + type uint64; + description + "FDA output cell counter IPT"; + } + leaf fda-egq-drop-cnt { + type uint64; + description + "FDA EGQ drop counter"; + } + leaf fda-egq-meshmc-drop-cnt { + type uint64; + description + "FDA EGQ MESHMC drop counter"; + } + leaf egq-fqp-pkt-cnt { + type uint64; + description + "FQP2EPE packet counter"; + } + leaf egq-pqp-uc-pkt-cnt { + type uint64; + description + "PQP2FQP unicast packet counter"; + } + leaf egq-pqp-discard-uc-pkt-cnt { + type uint64; + description + "PQP discarded unicast packet counter"; + } + leaf egq-pqp-uc-bytes-cnt { + type uint64; + units "byte"; + description + "PQP2FQP unicast bytes counter"; + } + leaf egq-pqp-mc-pkt-cnt { + type uint64; + description + "PQP2FQP multicast packet counter"; + } + leaf egq-pqp-discard-mc-pkt-cnt { + type uint64; + description + "PQP discarded multicast packet counter"; + } + leaf egq-pqp-mc-bytes-cnt { + type uint64; + units "byte"; + description + "PQP2FQP multicast bytes counter"; + } + leaf egq-ehp-uc-pkt-cnt { + type uint64; + description + "EHP2PQP unicast packet counter"; + } + leaf egq-ehp-mc-high-pkt-cnt { + type uint64; + description + "EHP2PQP multicast high packet counter"; + } + leaf egq-ehp-mc-low-pkt-cnt { + type uint64; + description + "EHP2PQP multicast low packet counter"; + } + leaf egq-deleted-pkt-cnt { + type uint64; + description + "EHP2PQP discarded packet counter"; + } + leaf egq-ehp-mc-high-discard-cnt { + type uint64; + description + "Number of multicast high packets discarded + because multicast FIFO is full"; + } + leaf egq-ehp-mc-low-discard-cnt { + type uint64; + description + "Number of multicast low packets discarded + because multicast FIFO is full"; + } + leaf egq-erpp-lag-pruning-discard-cnt { + type uint64; + description + "Number of packet descriptors discarded due to + LAG multicast pruning"; + } + leaf egq-erpp-pmf-discard-cnt { + type uint64; + description + "Number of packet descriptors discarded due to + ERPP PMF"; + } + leaf egq-erpp-vlan-mbr-discard-cnt { + type uint64; + description + "Number of packet descriptors discarded because + of egress VLAN membership"; + } + leaf epni-epe-byte-cnt { + type uint64; + units "byte"; + description + "EPE2PNI bytes counter"; + } + leaf epni-epe-pkt-cnt { + type uint64; + description + "EPE2PNI packet counter"; + } + leaf epni-epe-discard-cnt { + type uint64; + description + "EPE discarded packet counter"; + } + leaf nbi-tx-total-byte-cnt { + type uint64; + units "byte"; + description + "Total bytes sent from EGQ to NIF"; + } + leaf nbi-tx-total-pkt-cnt { + type uint64; + description + "Total packets sent from EGQ to NIF"; + } + } + + grouping FIA-EDM-STATS-BRIEF-INFO { + description + "ASIC statistics information"; + container statistics { + status deprecated; + description + "Statistics. This model is being deprecated and is being + replaced by Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang, which will + retain the functionality of this model."; + uses FIA-EDM-DEVICE-STATS-ASIC-BRIEF-INFO; + } + container npu-statistics { + description + "NPU Statistics. This model is being deprecated and is being + replaced by Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang, which will + retain the functionality of this model."; + uses NPU-EDM-DEVICE-STATS-ASIC-BRIEF-INFO; + } + leaf valid { + type boolean; + description + "Flag to indicate if data is valid"; + } + leaf rack-number { + type uint32; + description + "Rack number"; + } + leaf slot-number { + type uint32; + description + "Slot number"; + } + leaf asic-instance { + type uint32; + description + "ASIC instance"; + } + leaf chip-version { + type uint16; + description + "Chip version"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2.yang new file mode 100644 index 000000000..acc70f7f1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2.yang @@ -0,0 +1,147 @@ +submodule Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2 { + belongs-to Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper { + prefix Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fretta-bcm-dpa-npu-stats package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-12 { + description + "Modified data types for num-fields and num-blocks"; + semver:module-version "2.2.0"; + } + revision 2021-08-13 { + description + "Added num_cores and voq_stats_core1"; + semver:module-version "2.1.0"; + } + revision 2020-10-09 { + description + "Added task-id"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.2.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FIA-EDM-DEVICE-STATS-FIELD-INFO { + description + "FIA EDM DEVICE STATS FIELD INFO"; + leaf field-name { + type string { + length "0..80"; + } + description + "Field Name"; + } + leaf field-value { + type uint64; + description + "Field Value"; + } + leaf is-ovf { + type boolean; + description + "Is Ovf"; + } + } + + grouping FIA-EDM-DEVICE-STATS-BLK-INFO { + description + "FIA EDM DEVICE STATS BLK INFO"; + leaf block-name { + type string { + length "0..10"; + } + description + "Block Name"; + } + leaf num-fields { + type uint16; + description + "Num Fields"; + } + list field-info { + description + "field info"; + uses FIA-EDM-DEVICE-STATS-FIELD-INFO; + } + } + + grouping FIA-EDM-DEVICE-STATS-ASIC-INFO { + description + "FIA EDM DEVICE STATS ASIC INFO"; + leaf num-blocks { + type uint16; + description + "Num Blocks"; + } + list block-info { + description + "block info"; + uses FIA-EDM-DEVICE-STATS-BLK-INFO; + } + } + + grouping FIA-EDM-STATS-INFO { + description + "FIA EDM STATS INFO"; + container stats-info { + description + "stats info"; + uses FIA-EDM-DEVICE-STATS-ASIC-INFO; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf rack-no { + type uint32; + description + "rack no"; + } + leaf slot-no { + type uint32; + description + "slot no"; + } + leaf asic-instance { + type uint32; + description + "asic instance"; + } + leaf chip-ver { + type uint16; + description + "chip ver"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper.yang new file mode 100644 index 000000000..8ac139578 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper.yang @@ -0,0 +1,207 @@ +module Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper"; + prefix fretta-bcm-dpa-npu-stats-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub2 { + revision-date 2022-04-12; + } + include Cisco-IOS-XR-fretta-bcm-dpa-npu-stats-oper-sub1 { + revision-date 2022-04-12; + } + + 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 fretta-bcm-dpa-npu-stats package operational data. + + This module contains definitions + for the following management objects: + dpa: Stats Data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-12 { + description + "Modified data types for num-fields and num-blocks"; + semver:module-version "2.2.0"; + } + revision 2021-08-13 { + description + "Added num_cores and voq_stats_core1"; + semver:module-version "2.1.0"; + } + revision 2020-10-09 { + description + "Added task-id"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.2.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Max-trap-s { + type uint32 { + range "0..4294967295"; + } + description + "Max trap s"; + } + + typedef Max-lc-intf-hand-les { + type uint32 { + range "0..4294967295"; + } + description + "Max lc intf hand les"; + } + + container dpa { + config false; + status deprecated; + description + "Stats Data. This model is being deprecated and is being + replaced by Cisco-IOS-XR-ofa-npu-stats-oper.yang, which will retain the + functionality of this model."; + container stats { + description + "Voq or Trap Data"; + container nodes { + description + "DPA data for available nodes"; + list node { + key "node-name"; + description + "DPA operational data for a particular node"; + container asic-statistics { + description + "ASIC statistics table"; + container asic-statistics-detail-for-npu-ids { + description + "Detailed ASIC statistics"; + list asic-statistics-detail-for-npu-id { + key "npu-id"; + description + "Detailed ASIC statistics for a particular + NPU"; + leaf npu-id { + type uint32; + description + "NPU number"; + } + uses FIA-EDM-STATS-INFO; + } + } + container asic-statistics-for-npu-ids { + description + "ASIC statistics"; + list asic-statistics-for-npu-id { + key "npu-id"; + description + "ASIC statistics for a particular NPU"; + leaf npu-id { + type uint32; + description + "NPU number"; + } + uses FIA-EDM-STATS-BRIEF-INFO; + } + } + } + container npu-numbers { + description + "Ingress Stats"; + list npu-number { + key "npu-id"; + description + "Stats for a particular npu"; + container display { + description + "show npu specific voq or trap stats"; + container trap-ids { + description + "Trap stats for a particular npu"; + list trap-id { + key "trap-id"; + description + "Filter by specific trap id"; + leaf trap-id { + type Max-trap-s; + description + "Trap ID"; + } + uses DPA-TRAP-STATS; + } + } + container interface-handles { + description + "Voq stats grouped by interface handle"; + list interface-handle { + key "interface-handle"; + description + "Voq stats for a particular interface + handle"; + leaf interface-handle { + type Max-lc-intf-hand-les; + description + "Interface Handle"; + } + uses DPA-VOQ-INTF-PORT; + } + } + container base-numbers { + description + "Voq stats grouped by voq base numbers"; + list base-number { + key "base-number"; + description + "Voq Base Number for a particular voq"; + leaf base-number { + type Max-lc-intf-hand-les; + description + "Interface handle"; + } + uses DPA-VOQ-INTF-PORT; + } + } + } + leaf npu-id { + type uint32; + description + "Npu number"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1.yang new file mode 100644 index 000000000..477fd4397 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1.yang @@ -0,0 +1,95 @@ +submodule Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1 { + belongs-to Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper { + prefix Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR fretta-bcm-dpa-qos-resources package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping BCMDPA-QOS-CONNECTORS-INFO-PER-CORE { + description + "QoS connectors info per core"; + leaf core-id { + type uint16; + description + "Core ID"; + } + leaf total-count { + type uint32; + description + "Total connectors count"; + } + leaf used-count { + type uint32; + description + "Number of connectors used"; + } + leaf free-count { + type uint32; + description + "Number of free connectors"; + } + leaf lowrate-total-count { + type uint32; + description + "Total low-rate connectors count"; + } + leaf lowrate-used-count { + type uint32; + description + "Number of low-rate connectors used"; + } + leaf lowrate-free-count { + type uint32; + description + "Number of free low-rate connectors"; + } + } + + grouping BCMDPA-QOS-CONNECTORS-INFO { + description + "QoS connectors info"; + leaf num-cores { + type uint16; + description + "Number of cores supporetd"; + } + list core { + key "core-id"; + max-elements "2"; + description + "bag to store per core info"; + uses BCMDPA-QOS-CONNECTORS-INFO-PER-CORE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper.yang new file mode 100644 index 000000000..4fb47bfb8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper"; + prefix fretta-bcm-dpa-qos-resources-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-fretta-bcm-dpa-qos-resources-oper-sub1 { + revision-date 2019-04-05; + } + + 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 fretta-bcm-dpa-qos-resources package operational data. + + This module contains definitions + for the following management objects: + dpa-qos: QOS hw resources data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dpa-qos { + config false; + description + "QOS hw resources data"; + container nodes { + description + "QOS hw resources data for available nodes"; + list node { + key "node-name"; + description + "QOS hw resources data for a particular node"; + container qos-conn-res-datas { + description + "QOS connector Resources"; + list qos-conn-res-data { + key "npu-id"; + description + "Detailed QOS hw resources data for a + particular NPU"; + leaf npu-id { + type uint32; + description + "NPU number"; + } + uses BCMDPA-QOS-CONNECTORS-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-fsdbagg-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-fsdbagg-cfg.yang new file mode 100644 index 000000000..7f380f4d7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-fsdbagg-cfg.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-fsdbagg-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-fsdbagg-cfg"; + prefix fsdbagg-cfg; + + 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 fsdbagg package configuration. + + This module contains definitions + for the following management objects: + fsdb-agg-config: none + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-30 { + description + "Yang Schema update to remove support of Oversubscribed FC mode."; + semver:module-version "1.0.0"; + } + revision 2020-10-27 { + description + "Yang Schema update to support new 5fc config."; + semver:module-version "1.0.0"; + } + revision 2020-06-26 { + description + "Yang Schema added with 5fc config support and task-name."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container fsdb-agg-config { + description + "none"; + container fabric-mode { + description + "Configure Fabric Mode as either 8FC or 5FC"; + leaf five-fc { + type uint32; + description + "enable 5FC(slot:1-2-3-4-5)=1; enable 5FC(slot + :0-2-4-5-6)=2"; + } + } + container planes { + description + "Configure fabric."; + list plane { + key "plane"; + description + "Configure fabric planes"; + leaf plane-shutdown { + type uint32; + description + "Shutdown fabric planes"; + } + leaf plane { + type uint32; + description + "Plane"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-cfg.yang new file mode 100644 index 000000000..dbf30bb08 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-cfg.yang @@ -0,0 +1,255 @@ +module Cisco-IOS-XR-gnss-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-gnss-cfg"; + prefix gnss-cfg; + + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-freqsync-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 gnss package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-15 { + description + "Fixed must conditions bug."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container gnss-receivers { + description + "Configuration for a GNSS receiver"; + list gnss-receiver { + key "number"; + description + "Configuration for a GNSS receiver"; + container frequency-synchronization { + description + "Frequency Synchronization clock configuraiton"; + container output-quality-level { + description + "Set the output quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + container input-quality-level { + description + "Set the input quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + leaf ssm-disable { + type empty; + description + "Disable SSM on this source"; + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the priority of this source"; + } + leaf selection-input { + type empty; + description + "Assign this source as a selection input"; + } + leaf wait-to-restore-time { + type uint32 { + range "0..12"; + } + default "5"; + description + "Set the wait-to-restore time for this source"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the time-of-day priority of this source"; + } + } + leaf enable { + type empty; + description + "Enable the GNSS receiver"; + } + leaf snr-threshold { + type uint32 { + range "0..40"; + } + default "0"; + description + "Set the satellite SNR threshold, in dB-Hz"; + } + leaf traim-threshold { + type uint32 { + range "0..2"; + } + units "microsecond"; + default "0"; + description + "Set the satellite TRAIM threshold, in + microseconds"; + } + leaf polarity1pps { + type dt1:Gnss1pps-polarity; + default "positive"; + description + "Set the GNSS receiver 1PPS polarity"; + } + leaf cable-delay-compensation { + type int32 { + range "-1000000..1000000"; + } + units "nanosecond"; + default "0"; + description + "Set the cable-delay compensation, in + nanoseconds"; + } + leaf anti-jam-disable { + type empty; + description + "Stop running the GNSS receiver in anti-jam + mode"; + } + leaf pdop-threshold { + type uint32 { + range "0..10"; + } + default "0"; + description + "Set the satellite PDOP threshold"; + } + leaf elevation-threshold { + type uint32 { + range "0..40"; + } + default "0"; + description + "Set the satellite elevation threshold, in + degrees"; + } + leaf shutdown { + type empty; + description + "Shutdown the GNSS receiver"; + } + leaf constellation { + type dt1:Gnss-constellation; + default "auto"; + description + "Set the constellation to be used by the GNSS + receiver"; + } + leaf number { + type uint32; + description + "Receiver number"; + } + } + } + } + + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper-sub1.yang new file mode 100644 index 000000000..30b0e39f7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper-sub1.yang @@ -0,0 +1,505 @@ +submodule Cisco-IOS-XR-gnss-oper-sub1 { + belongs-to Cisco-IOS-XR-gnss-oper { + prefix Cisco-IOS-XR-gnss-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR gnss package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-20 { + description + "Add optional serial number field"; + semver:module-version "2.1.0"; + } + revision 2019-09-30 { + description + "Removed enum usage from alarms, added elevation, azimuth and time locked by gnss receiver"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Gnssmgr-bag-sat-sv { + type enumeration { + enum "gps" { + value 0; + description + "GPS"; + } + enum "glonass" { + value 1; + description + "GLONASS"; + } + enum "sbas" { + value 2; + description + "SBAS (WAAS)"; + } + enum "qzss" { + value 3; + description + "QZSS"; + } + enum "bei-dou" { + value 4; + description + "BeiDou"; + } + enum "galileo" { + value 5; + description + "Galileo"; + } + enum "irnss" { + value 6; + description + "IRNSS"; + } + enum "gnss" { + value 7; + description + "GNSS"; + } + enum "unknown" { + value 8; + description + "Unknown"; + } + enum "reserved" { + value 9; + description + "Reserved"; + } + } + description + "Space vehicle (SV) type"; + } + + typedef Gnssmgr-bag-optional-string { + type string; + description + "Gnssmgr bag optional string"; + } + + typedef Gnssmgr-bag-rx-mode { + type enumeration { + enum "no-fix" { + value 0; + description + "No fix"; + } + enum "dead-reckoning-only" { + value 1; + description + "Dead Reckoning only"; + } + enum "fix-2d" { + value 2; + description + "2D fix"; + } + enum "fix-3d" { + value 3; + description + "3D fix"; + } + enum "gnss-and-dead-reckoning" { + value 4; + description + "GNSS and Dead Reckoning"; + } + enum "time-fix-only" { + value 5; + description + "Time fix only"; + } + enum "a-gnss" { + value 6; + description + "A GNSS"; + } + enum "gnss-and-sbas" { + value 7; + description + "GNSS and SBAS"; + } + enum "gnss-and-gbas" { + value 8; + description + "GNSS and GBAS"; + } + enum "reserved" { + value 9; + description + "Reserved"; + } + } + description + "Receiver mode"; + } + + typedef Gnssmgr-bag-lock-status { + type enumeration { + enum "phase-locked" { + value 0; + description + "Phase locked"; + } + enum "frequency-locked" { + value 1; + description + "Frequency locked"; + } + enum "initializing" { + value 2; + description + "Initializing"; + } + enum "auto-holdover" { + value 3; + description + "Auto holdover"; + } + enum "manual-holdover" { + value 4; + description + "Manual holdover"; + } + enum "recovery" { + value 5; + description + "Recovery"; + } + enum "inactive" { + value 6; + description + "Inactive"; + } + } + description + "Lock status"; + } + + typedef Gnssmgr-bag-1pps-polarity { + type enumeration { + enum "positive" { + value 0; + description + "Positive"; + } + enum "negative" { + value 1; + description + "Negative"; + } + } + description + "1PPS polarity"; + } + + typedef Gnssmgr-bag-constellation { + type enumeration { + enum "auto" { + value 0; + description + "Auto choose constellation"; + } + enum "gps" { + value 1; + description + "GPS"; + } + enum "galileo" { + value 2; + description + "Galileo"; + } + enum "bei-dou" { + value 3; + description + "BeiDou"; + } + enum "qzss" { + value 4; + description + "QZSS"; + } + enum "glonass" { + value 5; + description + "GLONASS"; + } + enum "sbas" { + value 6; + description + "SBAS (WAAS)"; + } + enum "irnss" { + value 7; + description + "IRNSS"; + } + } + description + "Consetellation"; + } + + grouping GNSSMGR-BAG-SATELLITE { + description + "Satellite information"; + leaf prn-number { + type uint8; + description + "PRN number"; + } + leaf channel-number { + type uint8; + description + "Channel number"; + } + leaf acquisition-flag { + type boolean; + description + "Acquisition flag"; + } + leaf ephemeris-flag { + type boolean; + description + "Ephemeris flag"; + } + leaf sv-type { + type Gnssmgr-bag-sat-sv; + description + "Space vehicle (SV) type"; + } + leaf signal-strength { + type uint32; + description + "Signal strength (0.001 dB-Hz)"; + } + leaf elevation { + type uint32; + description + "Elevation (0.001 degrees)"; + } + leaf azimuth { + type uint32; + description + "Azimuth (0.001 degrees)"; + } + } + + grouping GNSSMGR-RX-INFO { + description + "GNSS receiver information"; + leaf receiver-number { + type uint32; + description + "Receiver number"; + } + leaf node { + type xr:Node-id; + description + "Node the receiver is on"; + } + leaf enabled { + type boolean; + description + "Whether the receiver is enabled"; + } + leaf shutdown { + type boolean; + description + "Whether the receiver is shutdown"; + } + leaf anti-jam-disable { + type boolean; + description + "Whether anti-jam mode is disabled"; + } + leaf constellation { + type Gnssmgr-bag-constellation; + description + "Constellation used by the receiver"; + } + leaf snr-threshold { + type uint32; + description + "Satellite SNR threshold"; + } + leaf elevation-threshold { + type uint32; + description + "Satellite elevation threshold"; + } + leaf pdop-threshold { + type uint32; + description + "Satellite position (3D) dilution of precision + (PDOP) threshold"; + } + leaf traim-threshold { + type uint32; + description + "Satellite TRAIM threshold"; + } + leaf cable-delay-compensation { + type int32; + description + "Cable delay compensation"; + } + leaf polarity1pps { + type Gnssmgr-bag-1pps-polarity; + description + "1PPS polarity"; + } + leaf available { + type boolean; + description + "Whether the receiver is available"; + } + leaf lock-status { + type Gnssmgr-bag-lock-status; + description + "The lock status of the receiver"; + } + leaf receiver-mode { + type Gnssmgr-bag-rx-mode; + description + "The receiver mode of the receiver"; + } + leaf survey-progress { + type uint32; + description + "The survey progress of the receiver"; + } + leaf holdover-duration { + type uint32; + description + "The holdover duration of the receier"; + } + leaf major-alarm { + type uint32; + description + "The status of the receiver's major alarm"; + } + leaf minor-alarm { + type uint32; + description + "The status of the receiver's minor alarm"; + } + leaf pdop { + type uint32; + description + "Position (3D) dilution of precision (in + thousandths)"; + } + leaf hdop { + type uint32; + description + "Horizontal dilution of precision (in + thousandths)"; + } + leaf vdop { + type uint32; + description + "Vertical dilution of precision (in thousandths)"; + } + leaf tdop { + type uint32; + description + "Time dilution of precision (in thousandths)"; + } + leaf latitude { + type int32; + units "centisecond"; + description + "Latitude of the receiver (arcseconds)"; + } + leaf longitude { + type int32; + units "centisecond"; + description + "Longitude of the receiver (arcseconds)"; + } + leaf altitude { + type int64; + description + "Altitude of the receiver (m)"; + } + leaf time { + type uint32; + units "second"; + description + "Current time recovered by the receiver (secs + since epoch)"; + } + leaf utc-offset { + type int16; + description + "UTC offset of the receiver"; + } + leaf firmware-version { + type Gnssmgr-bag-optional-string; + description + "Firmware version of the receiver"; + } + leaf locked-time { + type uint32; + units "second"; + description + "Locked time recovered by the receiver (secs + since epoch)"; + } + leaf serial-number { + type Gnssmgr-bag-optional-string; + description + "Serial number of the receiver"; + } + leaf satellite-data-known { + type boolean; + description + "Is the satellite data known?"; + } + list satellite { + description + "Satellites visible to the receiver"; + uses GNSSMGR-BAG-SATELLITE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper.yang new file mode 100644 index 000000000..66aee96aa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-gnss-oper.yang @@ -0,0 +1,96 @@ +module Cisco-IOS-XR-gnss-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-gnss-oper"; + prefix gnss-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-gnss-oper-sub1 { + revision-date 2020-10-20; + } + + 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 gnss package operational data. + + This module contains definitions + for the following management objects: + gnss-receiver: GNSS receiver operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-20 { + description + "Add optional serial number field"; + semver:module-version "2.1.0"; + } + revision 2019-09-30 { + description + "Removed enum usage from alarms, added elevation, azimuth and time locked by gnss receiver"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container gnss-receiver { + config false; + description + "GNSS receiver operational data"; + container nodes { + description + "Table for node-specific operational data"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container receivers { + description + "Table for node-specific operational data"; + list receiver { + key "number"; + description + "Operational data for a GNSS receiver"; + leaf number { + type uint32; + description + "Number"; + } + uses GNSSMGR-RX-INFO; + } + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper-sub1.yang new file mode 100644 index 000000000..45f890334 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper-sub1.yang @@ -0,0 +1,346 @@ +submodule Cisco-IOS-XR-grpc-service-stats-oper-sub1 { + belongs-to Cisco-IOS-XR-grpc-service-stats-oper { + prefix Cisco-IOS-XR-grpc-service-stats-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR grpc-service-stats package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Added new service stats oper model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Service-rpc-type-enum { + type enumeration { + enum "gnmi-get" { + description + "GNMI Get stats"; + } + enum "gnmi-set" { + description + "GNMI Set stats"; + } + enum "gnmi-capability" { + description + "GNMI Capability stats"; + } + } + description + "Service RPC types"; + } + + typedef Ems-in6-addr { + type inet:ipv6-address; + description + "Ems in6 addr"; + } + + typedef Ip-type-enum { + type enumeration { + enum "ipv4" { + description + "IPV4"; + } + enum "ipv6" { + description + "IPV6"; + } + } + description + "IP types"; + } + + grouping GNMI-SET-STATS { + description + "gNMI set statistics information"; + leaf set-update-paths { + type uint64; + description + "Number of update paths request in Set"; + } + leaf set-delete-paths { + type uint64; + description + "Number of delete paths request in Set"; + } + leaf set-replace-paths { + type uint64; + description + "Number of replace paths request in Set"; + } + } + + grouping GNMI-GET-STATS { + description + "gNMI get statistics information"; + leaf config-requests { + type uint64; + description + "Number of config requests"; + } + leaf operational-requests { + type uint64; + description + "Number of opereational requests"; + } + leaf state-requests { + type uint64; + description + "Number of state requests"; + } + leaf config-responses { + type uint64; + description + "Number of config responses"; + } + leaf operational-responses { + type uint64; + description + "Number of opereational responses"; + } + leaf state-responses { + type uint64; + description + "Number of state responses"; + } + } + + grouping HEALTH-STATS { + description + "HEALTH STATS"; + container gnmi-get-stats { + when "../service-rpc-type = 'gnmi-get'" { + description + "../service_rpc_type = 'GNMIGet'"; + } + description + "gnmi get stats"; + uses GNMI-GET-STATS; + } + container gnmi-set-stats { + when "../service-rpc-type = 'gnmi-set'" { + description + "../service_rpc_type = 'GNMISet'"; + } + description + "gnmi set stats"; + uses GNMI-SET-STATS; + } + leaf service-rpc-type { + type Service-rpc-type-enum; + description + "service rpc type"; + } + } + + grouping USER-IP-ADDRESS { + description + "USER IP ADDRESS"; + leaf ip-type { + type Ip-type-enum; + description + "ip type"; + } + leaf ipv4-address { + when "../ip-type = 'ipv4'" { + description + "../ip_type = 'IPV4'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6-address { + when "../ip-type = 'ipv6'" { + description + "../ip_type = 'IPV6'"; + } + type Ems-in6-addr; + description + "IPv6 Address"; + } + } + + grouping USER-INFO { + description + "User detail statistics information"; + container client-ip-address { + description + "Client IP Address"; + uses USER-IP-ADDRESS; + } + leaf username { + type string; + description + "RPC for each service"; + } + leaf port-number { + type int32; + description + "Port number for client"; + } + leaf authenticated { + type boolean; + description + "User is authenticated"; + } + } + + grouping AUDIT-STATS { + description + "Audit statistics information"; + list user-info { + description + "User list"; + uses USER-INFO; + } + } + + grouping COMMON-STATS { + description + "common statistics information"; + leaf requests { + type uint64; + description + "Number of general requests"; + } + leaf responses { + type uint64; + description + "Number of responses"; + } + leaf unauthenticated { + type uint64; + description + "Number of status code unauthenticated"; + } + leaf permission-denied { + type uint64; + description + "Number of status code permission-denied"; + } + leaf resource-exhausted { + type uint64; + description + "Number of status code resource-exhausted"; + } + leaf unavailable { + type uint64; + description + "Number of status code unavailable"; + } + leaf unimplemented { + type uint64; + description + "Number of status code unimplemented"; + } + leaf invalid-argument { + type uint64; + description + "Number of status code invalid-argument"; + } + leaf internal { + type uint64; + description + "Number of status code internal"; + } + leaf aborted { + type uint64; + description + "Number of status code aborted"; + } + leaf cancelled { + type uint64; + description + "Number of status code cancelled"; + } + leaf unknown { + type uint64; + description + "Number of status code unknown"; + } + leaf not-found { + type uint64; + description + "Number of status code not found"; + } + leaf already-exists { + type uint64; + description + "Number of status code already exists"; + } + leaf failed-precondition { + type uint64; + description + "Number of status code falied precondition"; + } + leaf data-loss { + type uint64; + description + "Number of status code data loss"; + } + leaf out-of-range { + type uint64; + description + "Number of status code out of range"; + } + leaf deadline-exceeded { + type uint64; + description + "Number of status code deadline exceeded"; + } + } + + grouping STATISTICS { + description + "Per RPC for Service information"; + container common-stats { + description + "Common Stats"; + uses COMMON-STATS; + } + container audit-stats { + description + "Audit Stats"; + uses AUDIT-STATS; + } + container health-stats { + description + "Health Stats"; + uses HEALTH-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper.yang new file mode 100644 index 000000000..239af50f0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-grpc-service-stats-oper.yang @@ -0,0 +1,86 @@ +module Cisco-IOS-XR-grpc-service-stats-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-grpc-service-stats-oper"; + prefix grpc-service-stats-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-grpc-service-stats-oper-sub1 { + revision-date 2022-09-26; + } + + 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 grpc-service-stats package operational data. + + This module contains definitions + for the following management objects: + service-stats: Stats for services like gRPC/gNMI/gRIBI + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Added new service stats oper model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container service-stats { + config false; + description + "Stats for services like gRPC/gNMI/gRIBI"; + container services { + description + "Services list"; + list service { + key "service-name"; + description + "Service name"; + container rpcs { + description + "RPC list"; + list rpc { + key "rpc-name"; + description + "RPC name"; + leaf rpc-name { + type xr:Cisco-ios-xr-string; + description + "RPC name"; + } + uses STATISTICS; + } + } + leaf service-name { + type xr:Cisco-ios-xr-string; + description + "Service name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-cfg.yang new file mode 100644 index 000000000..26afb60e9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-cfg.yang @@ -0,0 +1,255 @@ +module Cisco-IOS-XR-ha-eem-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ha-eem-cfg"; + prefix ha-eem-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 ha-eem package configuration. + + This module contains definitions + for the following management objects: + event-manager: Event manager configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Event-manager-persist-time { + type uint32 { + range "0..4294967295"; + } + description + "Event manager persist time"; + } + + typedef Event-manager-checksum { + type enumeration { + enum "sha-1" { + value 1; + description + "Use SHA-1 checksum"; + } + enum "md5" { + value 2; + description + "Use MD5 checksum"; + } + } + description + "Event manager checksum"; + } + + typedef Event-manager-policy-sec { + type enumeration { + enum "rsa-2048" { + value 2; + description + "Cisco Signature"; + } + enum "trust" { + value 3; + description + "Trust Signature"; + } + } + description + "Event manager policy sec"; + } + + typedef Event-manager-policy-mode { + type enumeration { + enum "cisco" { + value 1; + description + "Cisco Signature"; + } + enum "trust" { + value 2; + description + "Trust Signature"; + } + } + description + "Event manager policy mode"; + } + + typedef Event-manager-policy { + type enumeration { + enum "system" { + value 0; + description + "Event manager system policy"; + } + enum "user" { + value 1; + description + "Event manager user policy"; + } + } + description + "Event manager policy"; + } + + container event-manager { + description + "Event manager configuration"; + container policies { + description + "Register an event manager policy"; + list policy { + key "policy-name"; + description + "Name of the policy file"; + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy file"; + } + leaf username { + type string; + mandatory true; + description + "A configured username"; + } + leaf persist-time { + type Event-manager-persist-time; + units "second"; + mandatory true; + description + "Time of validity (in seconds) for cached AAA + taskmap of username (default is 3600)"; + } + leaf policy-type { + type Event-manager-policy; + description + "Event manager type of this policy"; + } + leaf checksum-type { + type Event-manager-checksum; + description + "Specify Embedded Event Manager policy checksum"; + } + leaf check-sum-value { + type string; + description + "CheckSum Value"; + } + leaf policy-security-mode { + type Event-manager-policy-mode; + description + "Specify Embedded Event Manager policy security + mode"; + } + leaf policy-security-level { + type Event-manager-policy-sec; + description + "Event Manager policy security Level"; + } + } + } + container scheduler-script { + description + "scheduler classs type"; + container thread-classes { + description + "scheduler thread classs "; + list thread-class { + key "thread-class-name"; + description + "scheduler classs type argument"; + leaf thread-class-name { + type xr:Cisco-ios-xr-string; + description + "Name of the global variable"; + } + leaf num-threads { + type uint32 { + range "1..5"; + } + mandatory true; + description + "number of scheduler threads"; + } + } + } + } + container environments { + description + "Set an event manager global variable for event + manager policies"; + list environment { + key "environment-name"; + description + "Name of the global variable"; + leaf environment-name { + type xr:Cisco-ios-xr-string; + description + "Name of the global variable"; + } + leaf environment-value { + type string; + mandatory true; + description + "Value of the global variable"; + } + } + } + leaf refresh-time { + type uint32 { + range "10..4294967295"; + } + units "second"; + default "1800"; + description + "Set refresh time (in seconds) for policy + username's AAA taskmap"; + } + leaf schedule-suspend { + type boolean; + description + "Enable suspend policy scheduling"; + } + leaf directory-user-policy { + type string; + description + "Set event manager user policy directory"; + } + leaf directory-user-library { + type string; + description + "Path of the user policy library directory"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper-sub1.yang new file mode 100644 index 000000000..33870dd51 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper-sub1.yang @@ -0,0 +1,152 @@ +submodule Cisco-IOS-XR-ha-eem-policy-oper-sub1 { + belongs-to Cisco-IOS-XR-ha-eem-policy-oper { + prefix Cisco-IOS-XR-ha-eem-policy-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ha-eem-policy package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-02-05 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping EEM-POLICY { + description + "Event manager policy availabe"; + leaf type { + type string; + description + "policy type"; + } + leaf time-created { + type string; + description + "time created"; + } + leaf policy-name { + type string; + description + "policy name"; + } + } + + grouping EEM-POLICY-REG { + description + "Event manager policy Registered"; + leaf type { + type string; + description + "policy type"; + } + leaf time-created { + type string; + description + "time created"; + } + leaf policy-name { + type string; + description + "policy name"; + } + leaf class { + type string; + description + "class"; + } + leaf event-type { + type string; + description + "event type"; + } + leaf trap { + type string; + description + "trap"; + } + leaf persist-time { + type uint32; + description + "PersistTime "; + } + leaf username { + type string; + description + "username"; + } + leaf description { + type string; + description + "description"; + } + } + + grouping EEM-REFRESH-TIME { + description + "Event manager refresh-time"; + leaf refreshtime { + type uint32; + description + "Event manager refresh-time "; + } + } + + grouping EEM-ENV { + description + "Event manager environmental"; + leaf name-xr { + type string; + description + "variable name"; + } + leaf value { + type string; + description + "value"; + } + } + + grouping EEM-DIR-USR { + description + "Event manager directory user"; + leaf policy { + type string; + description + "policy"; + } + leaf library { + type string; + description + "library"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper.yang new file mode 100644 index 000000000..02a2acf8d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ha-eem-policy-oper.yang @@ -0,0 +1,121 @@ +module Cisco-IOS-XR-ha-eem-policy-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ha-eem-policy-oper"; + prefix ha-eem-policy-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ha-eem-policy-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ha-eem-policy package operational data. + + This module contains definitions + for the following management objects: + eem: EEM operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-02-05 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container eem { + config false; + description + "EEM operational data"; + container dir-user { + description + "directory user"; + container library { + description + "directory user library"; + uses EEM-DIR-USR; + } + container policy { + description + "directory user policy"; + uses EEM-DIR-USR; + } + } + container env-variables { + description + "list of environmental variables"; + list env-variable { + key "name"; + description + "environmental variables name and value "; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Environmental variable name"; + } + uses EEM-ENV; + } + } + container refresh-time { + description + "Refresh time"; + uses EEM-REFRESH-TIME; + } + container reg-policies { + description + "list the registered policies"; + list reg-policy { + key "name"; + description + "policy name and create time "; + leaf name { + type xr:Cisco-ios-xr-string; + description + "policy name"; + } + uses EEM-POLICY-REG; + } + } + container avl-policies { + description + "list the available policies"; + list avl-policy { + key "name"; + description + "policy name and create time "; + leaf name { + type xr:Cisco-ios-xr-string; + description + "System policy name"; + } + uses EEM-POLICY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-cfg.yang new file mode 100644 index 000000000..e02c91b4e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-cfg.yang @@ -0,0 +1,505 @@ +module Cisco-IOS-XR-healthcheck-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-healthcheck-cfg"; + prefix healthcheck-cfg; + + 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 healthcheck package configuration. + + This module contains definitions + for the following management objects: + health-check: System Health Check operational data space + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-18 { + description + "Updated Metric Threshold Ranges"; + semver:module-version "1.1.0"; + } + revision 2022-05-25 { + description + "Changed the counter-size start value"; + } + revision 2022-04-07 { + description + "Migrate NBC and rev build control to mgbl-yangref component"; + } + revision 2020-07-14 { + description + "Platform Stats metrics and Custom Metrics configurations added"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hcmgr-avgutil-enum { + type enumeration { + enum "minute1" { + value 1; + description + "1 minute utilization"; + } + enum "minute5" { + value 5; + description + "5 minutes utilization"; + } + enum "minute15" { + value 15; + description + "15 minutes utilization"; + } + } + description + "Hcmgr avgutil enum"; + } + + grouping DROP-TOLERANCE { + description + "Common node of asic-reset, packet-drop"; + leaf drop-tolerance { + type uint32 { + range "0..100"; + } + units "percentage"; + default "10"; + description + "Drop tolerance as a percentage of total incoming + bytes/packets"; + } + } + + container health-check { + description + "System Health Check operational data space"; + container ord-z { + description + "Healthcheck config"; + leaf enable { + type empty; + description + "Enable or disable health check"; + } + } + container use-case { + description + "Use case to monitor"; + container asic-reset { + description + "Use case Asic reset"; + leaf disable { + type empty; + description + "Enable or disable Asic reset use case + monitoring"; + } + uses DROP-TOLERANCE; + } + container packet-drop { + description + "Use case Packet drop"; + leaf disable { + type empty; + description + "Enable or disable Packet drop use case + monitoring"; + } + uses DROP-TOLERANCE; + } + } + container ord-a { + description + "Healthcheck config"; + leaf cadence { + type uint32 { + range "30..1800"; + } + default "60"; + description + "health check cadence"; + } + } + container ord-b { + description + "Healthcheck config"; + container metric { + description + "System metric to monitor"; + container fabric-health { + description + "Metric Fabric Health"; + leaf disable { + type empty; + description + "Enable or disable Fabric health monitoring"; + } + } + container system-clock { + description + "Systemclock timezone"; + leaf disable { + type empty; + description + "Disable Systemclock monitoring"; + } + } + container lc-monitoring { + description + "LC monitoring"; + leaf disable { + type empty; + description + "Disable LC monitoring"; + } + } + container cpu { + description + "Metric CPU"; + container threshold { + presence "Indicates a threshold node is configured."; + description + "CPU thresholds"; + leaf minor { + type uint32 { + range "1..98"; + } + mandatory true; + description + "Minor threshold, Range(1, 98)"; + } + leaf severe { + type uint32 { + range "1..99"; + } + mandatory true; + description + "Severe threshold, Range(minor, 99)"; + } + leaf critical { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Critical threshold, Range(severe, 100)"; + } + } + leaf avg-util { + type Hcmgr-avgutil-enum; + default "minute15"; + description + "Average CPU utilization"; + } + leaf disable { + type empty; + description + "Enable or disable CPU monitoring"; + } + } + container config-inconsistency { + description + "Config Inconsistency monitoring"; + leaf disable { + type empty; + description + "Disable Config Inconsistency monitoring"; + } + } + container intf-counters { + description + "Metric Interface counters"; + container interfaces { + description + "List of interface to monitor"; + leaf-list interface { + type string; + max-elements "5"; + description + "Interface Name"; + } + } + leaf counter-size { + type uint32 { + range "2..15"; + } + default "5"; + description + "Number of runs for Interface counters + monitoring"; + } + leaf disable { + type empty; + description + "Enable or disable Interface counters + monitoring"; + } + } + container pci-monitoring { + description + "PCI Monitoring"; + leaf disable { + type empty; + description + "Disable PCI tree monitoring"; + } + } + container hw-monitoring { + description + "Hardware monitoring"; + leaf disable { + type empty; + description + "Disable Hardware monitoring"; + } + } + container process-resource { + description + "Process rlimit value monitoring"; + leaf disable { + type empty; + description + "Disable Process Resource monitoring"; + } + } + container communication-timeout { + description + "Process communication timeout"; + leaf disable { + type empty; + description + "Disable Process communication timeout"; + } + } + container redundancy { + description + "Metric Redundancy"; + leaf disable { + type empty; + description + "Enable or disable Redundancy monitoring"; + } + } + container free-memory { + description + "Metric Free Memory"; + container threshold { + presence "Indicates a threshold node is configured."; + description + "Free Memory thresholds"; + leaf minor { + type uint32 { + range "3..100"; + } + mandatory true; + description + "Minor threshold, Range(3, 100)"; + } + leaf severe { + type uint32 { + range "2..100"; + } + mandatory true; + description + "Severe threshold, Range(2, minor)"; + } + leaf critical { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Critical threshold, Range(1, severe)"; + } + } + leaf disable { + type empty; + description + "Enable or disable Free Memory monitoring"; + } + } + container platform { + description + "Metric Platform"; + leaf disable { + type empty; + description + "Enable or disable Platform monitoring"; + } + } + container custom-metrics { + description + "List of custom metrics to monitor"; + leaf-list custom-metric { + type string { + length "1..64"; + } + max-elements "10"; + description + "Custom Metric Name"; + } + } + container fabric-stats { + description + "Metric Fabric stats"; + leaf counter-size { + type uint32 { + range "2..15"; + } + default "5"; + description + "Number of runs for Fabric stats monitoring"; + } + leaf disable { + type empty; + description + "Enable or disable Fabric stats monitoring"; + } + } + container wd-monitoring { + description + "Watchdog monitoring"; + leaf disable { + type empty; + description + "Disable Watchdog monitoring"; + } + } + container fpd { + description + "Metric FPD"; + leaf disable { + type empty; + description + "Enable or disable FPD monitoring"; + } + } + container asic-errors { + description + "Metric Asic errors"; + leaf counter-size { + type uint32 { + range "2..15"; + } + default "5"; + description + "Number of runs for Asic errors monitoring"; + } + leaf disable { + type empty; + description + "Enable or disable Asic errors monitoring"; + } + } + container filesystem { + description + "Metric Filesystem Usage"; + container threshold { + presence "Indicates a threshold node is configured."; + description + "Filesystem Usage thresholds"; + leaf minor { + type uint32 { + range "1..98"; + } + mandatory true; + description + "Minor threshold, Range(1, 98)"; + } + leaf severe { + type uint32 { + range "1..99"; + } + mandatory true; + description + "Severe threshold, Range(minor, 99)"; + } + leaf critical { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Critical threshold, Range(severe, 100)"; + } + } + leaf disable { + type empty; + description + "Enable or disable Filesystem Usage monitoring"; + } + } + container process-state { + description + "Process state monitoring"; + leaf disable { + type empty; + description + "Disable Process State monitoring"; + } + } + container shared-memory { + description + "Metric Shared Memory"; + container threshold { + presence "Indicates a threshold node is configured."; + description + "Shared Memory thresholds"; + leaf minor { + type uint32 { + range "1..98"; + } + mandatory true; + description + "Minor threshold, Range(1, 98)"; + } + leaf severe { + type uint32 { + range "1..99"; + } + mandatory true; + description + "Severe threshold, Range(minor, 99)"; + } + leaf critical { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Critical threshold, Range(severe, 100)"; + } + } + leaf disable { + type empty; + description + "Enable or disable Shared Memory monitoring"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub1.yang new file mode 100644 index 000000000..b2b198db7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub1.yang @@ -0,0 +1,516 @@ +submodule Cisco-IOS-XR-healthcheck-oper-sub1 { + belongs-to Cisco-IOS-XR-healthcheck-oper { + prefix Cisco-IOS-XR-healthcheck-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR healthcheck package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-07 { + description + "Updated Install Metric + 2021-10-19 + Updated Custom Metric + 2021-07-22 + ASIC reset and packet drops use case updated + 2021-05-25 + ASIC reset and packet drops usecases added"; + semver:module-version "1.1.0"; + } + revision 2020-09-18 { + description + "Fabric health metric updated."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Metric-state { + type enumeration { + enum "normal" { + value 0; + description + "Health check metric state normal"; + } + enum "minor" { + value 1; + description + "Health check metric state minor"; + } + enum "severe" { + value 2; + description + "Health check metric state severe"; + } + enum "critical" { + value 3; + description + "Health check metric state critical"; + } + enum "warning" { + value 4; + description + "Health check metric state warning"; + } + enum "unknown" { + value 5; + description + "Health check metric state unknown"; + } + } + description + "Metric state"; + } + + typedef Stage-status { + type enumeration { + enum "running" { + value 0; + description + "NOSI stage is in running state"; + } + enum "stopped" { + value 1; + description + "NOSI stage is in stopped state"; + } + enum "exited" { + value 2; + description + "NOSI stage is in exited state"; + } + enum "fatal" { + value 3; + description + "NOSI stage is in fatal state"; + } + enum "error" { + value 4; + description + "NOSI stage is in error state"; + } + enum "unknown" { + value 5; + description + "NOSI stage is in unknown state"; + } + enum "not-running" { + value 6; + description + "NOSI stage is in not running state"; + } + } + description + "Stage status"; + } + + typedef Config-state { + type enumeration { + enum "enabled" { + value 0; + description + "Use case configuration state enabled"; + } + enum "disabled" { + value 1; + description + "Use case configuration state disabled"; + } + enum "unknown" { + value 2; + description + "Use case configuration state unknown"; + } + } + description + "Config state"; + } + + typedef Nosi-state { + type enumeration { + enum "normal" { + value 1; + description + "Use case health state normal"; + } + enum "warning" { + value 2; + description + "Use case health state warning"; + } + enum "error" { + value 3; + description + "Health check service state error"; + } + } + description + "Nosi state"; + } + + grouping HCMGR-METRIC-DATA-REPORT { + description + "Health check report metric data"; + leaf service-message { + type string; + description + "Metric service message"; + } + leaf state { + type Metric-state; + description + "Metric state"; + } + leaf reason { + type string; + description + "Metric not healthy reason"; + } + leaf timestamp { + type uint64; + units "nanosecond"; + description + "Timestamp in nanoseconds since the Unix epoch + (January 1st 1970 00:00:00 UTC)"; + } + } + + grouping HCMGR-STATUS-USECASE-DATA-LEGACY { + description + "Health check status information of a use case"; + leaf use-case-name { + type string; + description + "Use case name associated with its state and + tolerence"; + } + leaf state { + type Config-state; + description + "Configuration state of use case"; + } + leaf drop-tolerance { + type uint8; + description + "Drop tolerance as a percentage of incoming + packets/bytes"; + } + } + + grouping HCMGR-USE-CASE { + description + "Healthcheck use-case description"; + leaf pipeline-state { + type Stage-status; + description + "Running state of NOSI container"; + } + list use-case { + description + "Collection of different use cases"; + uses HCMGR-STATUS-USECASE-DATA-LEGACY; + } + } + + grouping HCMGR-INSTALL-CUSTOM-METRIC { + description + "Healthcheck install custom metrics"; + leaf metric-name { + type string; + description + "Metric Name"; + } + } + + grouping HCMGR-CUSTOM-METRIC { + description + "Healthcheck custom metrics"; + leaf metric-name { + type string; + description + "Metric Name"; + } + } + + grouping HCMGR-STATUS-DATA { + description + "Health check status data"; + container use-case-status { + description + "Use-case details"; + uses HCMGR-USE-CASE; + } + leaf collector-pid { + type int32; + description + "Healthcheck collector pid"; + } + leaf plat-collector-pid { + type int32; + description + "Healthcheck Plat collector pid"; + } + leaf collector-cadence { + type string; + description + "Healthcheck collector cadence"; + } + leaf service-status { + type string; + description + "Healthcheck service status"; + } + leaf time-started { + type string; + description + "Healthcheck enabled time"; + } + leaf time-stopped { + type string; + description + "Healthcheck disabled time"; + } + leaf cpu-avg-util { + type string; + description + "CPU average utilization"; + } + leaf reason { + type string; + description + "Healthcheck reason for error"; + } + list sys-resource { + description + "System resource metrics"; + uses HCMGR-SYS-RES; + } + list infra-service { + description + "Infra service metrics"; + uses HCMGR-INFRA-SRV; + } + list platform-stat { + description + "platform stats metric"; + uses HCMGR-PFM-STATS; + } + list custom-metric { + description + "Custom metrics"; + uses HCMGR-CUSTOM-METRIC; + } + list install-custom-metric { + description + "Install Custom metrics"; + uses HCMGR-INSTALL-CUSTOM-METRIC; + } + } + + grouping HCMGR-STATUS-USECASE-DATA { + description + "Health check status information of use case"; + leaf state { + type Config-state; + description + "Configuration state of use case"; + } + leaf drop-tolerance { + type uint8; + description + "Drop tolerance as a percentage of incoming + packets/bytes"; + } + } + + grouping HCMGR-PFM-STATS { + description + "Healthcheck platform stats metrics"; + leaf metric-name { + type string; + description + "Metric name"; + } + leaf countersize { + type uint32; + description + "counter size"; + } + leaf interface-list { + type string; + description + "Interface list"; + } + } + + grouping HCMGR-INFRA-SRV { + description + "Healthcheck infra service metrics"; + leaf metric-name { + type string; + description + "Metric Name"; + } + } + + grouping HCMGR-METRIC-THLD { + description + "Metric thresholds"; + leaf minor { + type uint32; + description + "Minor threshold"; + } + leaf severe { + type uint32; + description + "Severe threshold"; + } + leaf critical { + type uint32; + description + "Critical threshold"; + } + } + + grouping HCMGR-SYS-RES { + description + "Healthcheck system resource metrics"; + container threshold { + description + "Metric threshold"; + uses HCMGR-METRIC-THLD; + } + leaf metric-name { + type string; + description + "Metric name"; + } + } + + grouping HCMGR-METRIC-DATA { + description + "Healthcheck metric data"; + leaf cpu-avg-util { + type string; + description + "CPU average utilization"; + } + list sys-resource { + description + "System resource metrics"; + uses HCMGR-SYS-RES; + } + list infra-service { + description + "Infra service metrics"; + uses HCMGR-INFRA-SRV; + } + list platform-stat { + description + "platform stats metric"; + uses HCMGR-PFM-STATS; + } + } + + grouping HCMGR-USE-CASE-REPORT-DATA { + description + "Health check use case report data"; + leaf alert { + type string; + description + "Alert message. For display only"; + } + leaf state { + type Nosi-state; + description + "NOSI state"; + } + } + + grouping HCMGR-USE-CASE-SUMMARY { + description + "Health check use case summary data"; + container use-case-info { + description + "Use case report data"; + uses HCMGR-USE-CASE-REPORT-DATA; + } + leaf use-case { + type string; + description + "Enabled use case"; + } + } + + grouping HCMGR-REPORT-METRIC-DATA { + description + "Health check report metric data"; + leaf name { + type string; + description + "Metric name"; + } + leaf service-msg { + type string; + description + "Metric service msg"; + } + leaf state { + type string; + description + "Metric state"; + } + leaf reason { + type string; + description + "Metric not healthy reason"; + } + } + + grouping HCMGR-REPORT-DATA { + description + "Healthcheck Report data"; + leaf time-stamp { + type string; + description + "Last updated timestamp for metrics"; + } + list metric { + description + "Metric info"; + uses HCMGR-REPORT-METRIC-DATA; + } + list summary { + description + "Usecase summary report information"; + uses HCMGR-USE-CASE-SUMMARY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub2.yang new file mode 100644 index 000000000..faccd986c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper-sub2.yang @@ -0,0 +1,1758 @@ +submodule Cisco-IOS-XR-healthcheck-oper-sub2 { + belongs-to Cisco-IOS-XR-healthcheck-oper { + prefix Cisco-IOS-XR-healthcheck-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR healthcheck package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-07 { + description + "Updated Install Metric + 2021-10-19 + Updated Custom Metric + 2021-07-22 + ASIC reset and packet drops use case updated + 2021-05-25 + ASIC reset and packet drops usecases added"; + semver:module-version "1.1.0"; + } + revision 2020-09-18 { + description + "Fabric health metric updated."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef String1 { + type string; + description + "String1"; + } + + typedef Hcmgr-metric-health-state { + type enumeration { + enum "normal" { + value 0; + description + "Healtchcheck metric in normal state"; + } + enum "minor" { + value 1; + description + "Healthcheck metric in minor state"; + } + enum "severe" { + value 2; + description + "Healthcheck metric in severe state"; + } + enum "critical" { + value 3; + description + "Healthcheck metric in critical state"; + } + enum "warning" { + value 4; + description + "Healthcheck metric in warning state"; + } + enum "unknown" { + value 5; + description + "Healthcheck metric in Unknown state"; + } + } + description + "Healthcheck metric health state"; + } + + typedef Hcmgr-metric-service-state { + type enumeration { + enum "reset" { + value 0; + description + "Healthcheck metric service in reset state"; + } + enum "disabled" { + value 1; + description + "Healthcheck metric service in disabled state"; + } + enum "init-done" { + value 2; + description + "Healthcheck metric service in init done state"; + } + enum "enabled" { + value 3; + description + "Healthcheck metric service in enabled state"; + } + enum "configured" { + value 4; + description + "Healthcheck metric service in configured state"; + } + enum "error" { + value 5; + description + "Healthcheck metric service in error state"; + } + enum "unsupported" { + value 6; + description + "Healtchcheck metric service in unsupported + state"; + } + enum "unknown" { + value 7; + description + "Healthcheck metric service unknown"; + } + } + description + "Healthcheck metric service state"; + } + + grouping HCMGR-USE-CASE-SUMMARY-DATA { + description + "Use case summary"; + leaf use-case { + type string; + description + "Use case name"; + } + leaf timestamp { + type uint64; + units "nanosecond"; + description + "Timestamp in nanoseconds since the UNIX epoch + (January 1st 1970 00:00:00 UTC)"; + } + leaf alert { + type string; + description + "Alert message. For display only"; + } + leaf state { + type string; + description + "NOSI state"; + } + } + + grouping HCMGR-USE-CASE-DETAIL-DATA { + description + "Detail use case data for given NPU"; + leaf timestamp { + type uint64; + units "nanosecond"; + description + "Timestamp in nanoseconds since the UNIX epoch + (January 1st 1970 00:00:00 UTC)"; + } + leaf-list alert { + type String1; + description + "Alert message. For display only"; + } + } + + grouping HCMGR-CPU-METRIC-MDATA { + description + "CPU Metric Mdata"; + leaf one-min { + type uint8; + description + "One Minute Utilization"; + } + leaf five-min { + type uint8; + description + "Five Minute Utilization"; + } + leaf fifteen-min { + type uint8; + description + "Fifteen Minute Utilization"; + } + leaf node-name { + type string; + description + "Node Name"; + } + } + + grouping HCMGR-CPU-METRIC-DATA { + description + "CPU Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf active-node-count { + type uint8; + description + "Number of Active Nodes"; + } + leaf srv-state { + type string; + description + "Service State"; + } + leaf cp-util-sel { + type uint32; + description + "CPU Utilization Selection"; + } + leaf minor-threshold { + type uint32; + description + "Minor Threshold"; + } + leaf severe-threshold { + type uint32; + description + "Severe Threshold"; + } + leaf critical-threshold { + type uint32; + description + "Critical Threshold"; + } + list mdata { + description + "Metric Mdata Array"; + uses HCMGR-CPU-METRIC-MDATA; + } + } + + grouping INST-TIMEZONE-INFO { + description + "Timezone type info"; + leaf node-name { + type string; + description + "Node name"; + } + leaf time { + type string; + description + "Timezone"; + } + leaf vm { + type string; + description + "VM type"; + } + } + + grouping HCMGR-SYSTEMCLOCK-METRIC-DATA { + description + "Systemclock metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list timezone { + key "node-name"; + description + "Timezone info "; + uses INST-TIMEZONE-INFO; + } + } + + grouping INST-PROCESS-INFO { + description + "Process status detail"; + leaf name { + type string; + description + "Process name"; + } + leaf location { + type string; + description + "Node location"; + } + leaf signal { + type string; + description + "Signal type"; + } + leaf vm { + type string; + description + "VM type"; + } + } + + grouping HCMGR-PROCESS-STATE-METRIC-DATA { + description + "Process state Metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Metric Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list process { + description + "Process info detail"; + uses INST-PROCESS-INFO; + } + } + + grouping WATCHDOG-STATUS-INFO { + description + "Watchdog status"; + leaf wdog-started { + type string; + description + "Wdog started"; + } + leaf wdog-running { + type string; + description + "Wdog running"; + } + leaf wdog-interval { + type string; + description + "Wdog interval"; + } + leaf last-feed { + type string; + description + "Wdog Last feed"; + } + } + + grouping HCMGR-WDMON-METRIC-DATA { + description + "Watchdog status Metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list watchdog-status { + description + "Watchdog status"; + uses WATCHDOG-STATUS-INFO; + } + } + + grouping HCMGR-SHARED-MEM-METRIC-MDATA { + description + "Shared Memory Metric Mdata"; + leaf shared-memory-usage { + type uint64; + description + "Shared Memory Usage"; + } + leaf shared-mem-util { + type uint32; + description + "Shared Memory Utilization"; + } + leaf node-name { + type string; + description + "Node Name"; + } + } + + grouping HCMGR-SHARED-MEM-METRIC-DATA { + description + "Shared Memory Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf active-node-count { + type uint8; + description + "Number of Active Nodes"; + } + leaf srv-state { + type string; + description + "Service State"; + } + leaf shared-mem-alloc { + type uint64; + description + "Shared Memory Allocation"; + } + leaf minor-threshold { + type uint32; + description + "Minor Threshold"; + } + leaf severe-threshold { + type uint32; + description + "Severe Threshold"; + } + leaf critical-threshold { + type uint32; + description + "Critical Threshold"; + } + list mdata { + description + "Metric Mdata array"; + uses HCMGR-SHARED-MEM-METRIC-MDATA; + } + } + + grouping HCMGR-CONFIG-INCONSISTENCY-METRIC-DATA { + description + "Config inconsistency Metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Metric Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf metric-info { + type string; + description + "Config inconsistency info"; + } + } + + grouping HCMGR-FILESYSTEM-PARTITION { + description + "Filesystem Partition Data"; + leaf flags { + type string; + description + "Partition Access Attribute"; + } + leaf prefixes { + type string; + description + "Partition Name"; + } + leaf type { + type string; + description + "Partition Type"; + } + leaf size { + type uint64; + description + "Partition Size"; + } + leaf free { + type uint64; + units "byte"; + description + "Free Bytes"; + } + leaf avl-free { + type uint8; + description + "Free Space in %"; + } + } + + grouping HCMGR-FILESYSTEM-METRIC-MDATA { + description + "Filesystem Metric Mdata"; + leaf node-name { + type string; + description + "Node Name"; + } + leaf partition-count { + type uint8; + description + "Partition Count"; + } + list fs-mdata { + description + "Partition Data"; + uses HCMGR-FILESYSTEM-PARTITION; + } + } + + grouping HCMGR-FILESYSTEM-METRIC-DATA { + description + "Filesystem Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf active-node-count { + type uint8; + description + "Number of Active Nodes"; + } + leaf srv-state { + type string; + description + "Service State"; + } + leaf minor-threshold { + type uint32; + description + "Minor Threshold"; + } + leaf severe-threshold { + type uint32; + description + "Severe Threshold"; + } + leaf critical-threshold { + type uint32; + description + "Critical Threshold"; + } + list mdata { + description + "Metric Mdata Array"; + uses HCMGR-FILESYSTEM-METRIC-MDATA; + } + } + + grouping LCMON-TREE-INFO { + description + "LC Monitoring details"; + leaf lc-location { + type string; + description + "LC location"; + } + leaf status { + type string; + description + "LC status"; + } + leaf app-status { + type string; + description + "App status"; + } + leaf used-memory { + type string; + description + "Used memory"; + } + } + + grouping HCMGR-LCMON-METRIC-DATA { + description + "LC Monitoring Metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "healthcheck metric service state"; + } + leaf name { + type string; + description + "Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list lcmon-status { + key "lc-location"; + description + "LC Monitoring detail"; + uses LCMON-TREE-INFO; + } + } + + grouping HCMGR-FABRIC-STATS-METRIC-DETAIL-MDATA { + description + "Fabric Stats Metric Detail Mdata Structure"; + leaf fabric-plane-key { + type uint32; + description + "Fabric Plane Key"; + } + leaf planeid { + type uint32; + description + "PlaneID"; + } + leaf ucast-oper-state { + type string; + description + "Ucast Oper State"; + } + list counter-mdata { + description + "Fabric Stats Metric Counter Mdata"; + uses HCMGR-PFM-STATS-METRICS-DETAIL-COUNTER-MDATA; + } + } + + grouping HCMGR-FABRIC-STATS-METRIC-DETAIL-DATA { + description + "Fabric Stats Metric Detail Data structure"; + leaf last-update { + type string; + description + "Last Update Time"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-FABRIC-STATS-METRIC-DETAIL-MDATA; + } + } + + grouping HCMGR-FABRIC-STATS-METRIC-MDATA { + description + "Fabric Stats Metric Mdata Structure"; + leaf fabric-plane-key { + type uint32; + description + "Fabric Plane Key"; + } + leaf planeid { + type uint32; + description + "PlaneID"; + } + leaf ucast-oper-state { + type string; + description + "Ucast Oper State"; + } + list counter-mdata { + description + "Fabric Stats Metric Counters Mdata"; + uses HCMGR-PFM-STATS-METRICS-COUNTER-MDATA; + } + } + + grouping HCMGR-FABRIC-STATS-METRIC-DATA { + description + "Fabric Stats Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf srv-state { + type string; + description + "Service State"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-FABRIC-STATS-METRIC-MDATA; + } + } + + grouping HCMGR-CUSTOM-METRIC-DATA { + description + "Custom Metric Data Structure"; + leaf srv-state { + type string; + description + "Service State"; + } + leaf name { + type string; + description + "Metric Name"; + } + leaf health-state { + type string; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf metric-info { + type string; + description + "Vendor Proprietary Metric Info"; + } + } + + grouping INST-PROCESS-RESOURCE-INFO { + description + "Process with rlimit value details"; + leaf process-name { + type string; + description + "Process name"; + } + leaf node-name { + type string; + description + "Node name"; + } + leaf rlimit { + type uint32; + description + "Rlimit"; + } + leaf vm { + type string; + description + "VM type"; + } + } + + grouping HCMGR-PROCESS-RESOURCE-METRIC-DATA { + description + "Process resource metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list process-resource { + description + "Process info detail"; + uses INST-PROCESS-RESOURCE-INFO; + } + } + + grouping HCMGR-FREE-MEM-METRIC-MDATA { + description + "Free Memory Metric Mdata"; + leaf free-mem { + type uint64; + description + "Total Free Memory"; + } + leaf system-mem { + type uint64; + description + "Total System Memory"; + } + leaf avl-free-mem { + type uint8; + description + "Free Memory Utilization"; + } + leaf node-name { + type string; + description + "Node Name"; + } + } + + grouping HCMGR-FREE-MEM-METRIC-DATA { + description + "Free Memory Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf active-node-count { + type uint8; + description + "Number of Active Nodes"; + } + leaf srv-state { + type string; + description + "Service State"; + } + leaf minor-threshold { + type uint32; + description + "Minor Threshold"; + } + leaf severe-threshold { + type uint32; + description + "Severe Threshold"; + } + leaf critical-threshold { + type uint32; + description + "Critical Threshold"; + } + list mdata { + description + "Metric Mdata Array"; + uses HCMGR-FREE-MEM-METRIC-MDATA; + } + } + + grouping COMMUNICATION-TIMEOUT-STATUS-INFO { + description + "Communication timeout status info"; + leaf process-name { + type string; + description + "Process name"; + } + leaf location { + type string; + description + "Location"; + } + } + + grouping HCMGR-COMMUNICATION-TIMEOUT-METRIC-DATA { + description + "Communication timeout Metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list communication-timeout-status { + description + "Communication timeout status Info"; + uses COMMUNICATION-TIMEOUT-STATUS-INFO; + } + } + + grouping HCMGR-ASIC-ERRORS-METRIC-INSTANCE-MDATA { + description + "Asic Errors Metric Instance Mdata Structure"; + leaf instance-number { + type uint8; + description + "Instance Number"; + } + list counter-mdata { + description + "Asic Errors Metric Counters Mdata"; + uses HCMGR-PFM-STATS-METRICS-COUNTER-MDATA; + } + } + + grouping HCMGR-ASIC-ERRORS-METRIC-MDATA { + description + "Asic Errors Metric Mdata Structure"; + leaf node-name { + type string; + description + "Node Name"; + } + list instance-mdata { + description + "Asic Errors Metric Mdata"; + uses HCMGR-ASIC-ERRORS-METRIC-INSTANCE-MDATA; + } + } + + grouping HCMGR-ASIC-ERRORS-METRIC-DATA { + description + "Asic Errors Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf srv-state { + type string; + description + "Service State"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-ASIC-ERRORS-METRIC-MDATA; + } + } + + grouping HCMGR-ASIC-ERRORS-METRIC-DETAIL-INSTANCE-MDATA { + description + "Asic Errors Metric Instance Mdata Structure"; + leaf instance-number { + type uint8; + description + "Instance Number"; + } + list counter-mdata { + description + "Asic Errors Metric Mdata"; + uses HCMGR-PFM-STATS-METRICS-DETAIL-COUNTER-MDATA; + } + } + + grouping HCMGR-ASIC-ERRORS-METRIC-DETAIL-MDATA { + description + "Asic Errors Metric Detail Mdata Structure"; + leaf node-name { + type string; + description + "Node Name"; + } + list instance-mdata { + description + "Asic Errors Metric Mdata"; + uses HCMGR-ASIC-ERRORS-METRIC-DETAIL-INSTANCE-MDATA; + } + } + + grouping HCMGR-ASIC-ERRORS-METRIC-DETAIL-DATA { + description + "Asic Errors Metric Detail Data structure"; + leaf last-update { + type string; + description + "Last Update Time"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-ASIC-ERRORS-METRIC-DETAIL-MDATA; + } + } + + grouping HCMGR-PFM-STATS-METRICS-COUNTER-MDATA { + description + "Platform Stats Metrics Counter Mdata Structure"; + leaf counter-name { + type string; + description + "Counter Name"; + } + leaf counter-value { + type uint64; + description + "Counter Value"; + } + leaf average { + type uint64; + description + "Counter Average Value"; + } + leaf is-consistently-increasing { + type boolean; + description + "Is Counter Increasing Consistently"; + } + } + + grouping HCMGR-INTF-COUNTERS-METRIC-MDATA { + description + "Interface Counters Metric Mdata Structure"; + leaf interface-name { + type string; + description + "Interface Name Monitored"; + } + list counter-mdata { + description + "Interface Counters Metric Mdata"; + uses HCMGR-PFM-STATS-METRICS-COUNTER-MDATA; + } + } + + grouping HCMGR-INTF-COUNTERS-METRIC-DATA { + description + "Interface Counters Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf srv-state { + type string; + description + "Service State"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-INTF-COUNTERS-METRIC-MDATA; + } + } + + grouping HCMGR-PFM-STATS-METRICS-DETAIL-COUNTER-MDATA { + description + "Platform Stats Metrics Detail Counter Mdata + Structure"; + leaf counter-name { + type string; + description + "Counter Name"; + } + list counter-value { + description + "Counter Value"; + leaf entry { + type uint64; + description + "Counter Value"; + } + } + } + + grouping HCMGR-INTF-COUNTERS-METRIC-DETAIL-MDATA { + description + "Interface Counters Metric Detail Mdata Structure"; + leaf interface-name { + type string; + description + "Interface Name Monitored"; + } + list counter-mdata { + description + "Interface Counters Metric Mdata"; + uses HCMGR-PFM-STATS-METRICS-DETAIL-COUNTER-MDATA; + } + } + + grouping HCMGR-INTF-COUNTERS-METRIC-DETAIL-DATA { + description + "Interface Counters Metric Detail Data structure"; + leaf last-update { + type string; + description + "Last Update Time"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-INTF-COUNTERS-METRIC-DETAIL-MDATA; + } + } + + grouping HCMGR-PLATFORM-METRIC-INFO { + description + "Platform Metric Info Structure"; + leaf node-name { + type string; + description + "Node Name"; + } + leaf card-type { + type string; + description + "Card Type"; + } + leaf card-redundancy-state { + type string; + description + "Card Redundancy State"; + } + leaf admin-state { + type string; + description + "Admin State"; + } + leaf oper-state { + type string; + description + "Oper State"; + } + } + + grouping HCMGR-PLATFORM-INSTANCE-MDATA { + description + "Platform Metric Instance Mdata Structure"; + container platform-info { + description + "Platform Info"; + uses HCMGR-PLATFORM-METRIC-INFO; + } + leaf instance-name { + type string; + description + "Instance Name"; + } + } + + grouping HCMGR-PLATFORM-SLOT-MDATA { + description + "Platform Metric Slot Mdata Structure"; + leaf slot-name { + type string; + description + "Slot Name"; + } + leaf instance-count { + type uint8; + description + "Instance Count"; + } + list instance-mdata { + description + "Instance Mdata"; + uses HCMGR-PLATFORM-INSTANCE-MDATA; + } + list platform-info { + description + "Platform Info"; + uses HCMGR-PLATFORM-METRIC-INFO; + } + } + + grouping HCMGR-PLATFORM-METRIC-RACK-MDATA { + description + "Platform Metric Mdata Structure"; + leaf rack-name { + type string; + description + "Rack Name"; + } + leaf slot-count { + type uint8; + description + "Slot Count"; + } + list slot-mdata { + description + "Slot Mdata"; + uses HCMGR-PLATFORM-SLOT-MDATA; + } + } + + grouping HCMGR-PLATFORM-METRIC-DATA { + description + "Platform Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf rack-count { + type uint8; + description + "Rack Count"; + } + leaf srv-state { + type string; + description + "Service State"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-PLATFORM-METRIC-RACK-MDATA; + } + } + + grouping HWMON-TREE-INFO { + description + "HW Monitoring Info"; + leaf device-name { + type string; + description + "Device name"; + } + leaf status { + type string; + description + "Device Status"; + } + } + + grouping HCMGR-HWMON-METRIC-DATA { + description + "HW Monitoring Metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Metric Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list hwmon-tree-status { + key "device-name"; + description + "HW Monitoring Info"; + uses HWMON-TREE-INFO; + } + } + + grouping HCMGR-FABRIC-HEALTH-METRIC-SYS-PLANE-MDATA { + description + "Fabric Health Metric Mdata structure"; + leaf admin-state { + type string; + description + "Admin State"; + } + leaf plane-state { + type string; + description + "Plane State"; + } + leaf racks-w-plane-fault { + type uint8; + description + "Racks With Plane Fault"; + } + leaf is-data-drop { + type boolean; + description + "Is Data Drop"; + } + } + + grouping HCMGR-FABRIC-HEALTH-METRIC-RACK-MDATA { + description + "Fabric Health Metric Mdata structure"; + leaf rack-num { + type uint8; + description + "Rack Number"; + } + leaf rack-type { + type string; + description + "Rack Type"; + } + leaf sfe-asics-total { + type uint8; + description + "SFE Asics Total"; + } + leaf sfe-asics-up { + type uint8; + description + "SFE Asics Up"; + } + leaf sfe-asics-dn { + type uint8; + description + "SFE Asics Down"; + } + leaf fia-asics-total { + type uint8; + description + "FIA Asics Total"; + } + leaf fia-asics-up { + type uint8; + description + "FIA Asics Up"; + } + leaf fia-asics-dn { + type uint8; + description + "FIA Asics Down"; + } + leaf num-valid-fabids { + type uint8; + description + "Number of Valid Fabids"; + } + } + + grouping HCMGR-FABRIC-HEALTH-METRIC-MSG { + description + "Fabric Health Metric Message structure"; + leaf rack-total { + type uint8; + description + "Rack Total"; + } + leaf rack-fcc { + type uint8; + description + "Rack FCC"; + } + leaf rack-lcc { + type uint8; + description + "Rack LCC"; + } + leaf plane-up { + type uint8; + description + "Plane Up"; + } + leaf plane-dn { + type uint8; + description + "Plane Down"; + } + leaf plane-mcast-dn { + type uint8; + description + "Plane Mcast Down"; + } + leaf plane-admin-dn { + type uint8; + description + "Plane Admin Down"; + } + leaf sfe-asics-total { + type uint8; + description + "SFE Asics Total"; + } + leaf sfe-asics-up { + type uint8; + description + "SFE Asics Up"; + } + leaf sfe-asics-dn { + type uint8; + description + "SFE Asics Down"; + } + leaf fia-asics-total { + type uint8; + description + "FIA Asics Total"; + } + leaf fia-asics-up { + type uint8; + description + "FIA Asics Up"; + } + leaf fia-asics-dn { + type uint8; + description + "FIA Asics Down"; + } + list rack-mdata { + description + "Rack Mdata"; + uses HCMGR-FABRIC-HEALTH-METRIC-RACK-MDATA; + } + list sys-plane-mdata { + description + "Plane Mdata"; + uses HCMGR-FABRIC-HEALTH-METRIC-SYS-PLANE-MDATA; + } + } + + grouping HCMGR-FABRIC-HEALTH-METRIC-DATA { + description + "Fabric Health Metric Data structure"; + container mdata { + description + "Metric Message"; + uses HCMGR-FABRIC-HEALTH-METRIC-MSG; + } + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf err-rack-count { + type uint32; + description + "Error Rack count"; + } + leaf err-sys-plane-count { + type uint32; + description + "Error System Plane count"; + } + leaf srv-state { + type string; + description + "Service State"; + } + } + + grouping HCMGR-REDUNDANCY-METRIC-MDATA { + description + "Redundancy Metric Mdata Structure"; + leaf active { + type string; + description + "Active"; + } + leaf standby { + type string; + description + "Standby"; + } + leaf ha-state { + type string; + description + "HA State"; + } + leaf nsr-state { + type string; + description + "NSR State"; + } + } + + grouping HCMGR-REDUNDANCY-METRIC-DATA { + description + "Redundancy Metric Data structure"; + container mdata { + description + "Metric Mdata"; + uses HCMGR-REDUNDANCY-METRIC-MDATA; + } + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf srv-state { + type string; + description + "Service State"; + } + } + + grouping PCIMON-TREE-INFO { + description + "PCI Monitoring Info"; + leaf device-name { + type string; + description + "Device name"; + } + leaf status { + type string; + description + "Device Status"; + } + } + + grouping HCMGR-PCIMON-METRIC-DATA { + description + "PCI Monitoring Metric Data Structure"; + leaf srv-state { + type Hcmgr-metric-service-state; + description + "Healthcheck metric service state"; + } + leaf name { + type string; + description + "Metric Name"; + } + leaf health-state { + type Hcmgr-metric-health-state; + description + "Metric Health State"; + } + leaf health-msg { + type string; + description + "Metric Health Message"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + list pci-tree-status { + key "device-name"; + description + "PCI Monitoring Info"; + uses PCIMON-TREE-INFO; + } + } + + grouping HCMGR-FPD-METRIC-MDATA { + description + "FPD Metric Mdata Structure"; + leaf card-name { + type string; + description + "Card Name"; + } + leaf fpd-name { + type string; + description + "FPD Name"; + } + leaf hw-version { + type string; + description + "Hardware Version"; + } + leaf status { + type string; + description + "Status"; + } + leaf runversion { + type string; + description + "Run Version"; + } + leaf prgmd-version { + type string; + description + "Programmed Version"; + } + leaf node-name { + type string; + description + "Node Name"; + } + } + + grouping HCMGR-FPD-METRIC-DATA { + description + "FPD Metric Data structure"; + leaf state { + type string; + description + "Metric Current State"; + } + leaf last-update { + type string; + description + "Last Update Time"; + } + leaf active-node-count { + type uint32; + description + "FPD count"; + } + leaf srv-state { + type string; + description + "Service State"; + } + list mdata { + description + "Metric Mdata"; + uses HCMGR-FPD-METRIC-MDATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper.yang new file mode 100644 index 000000000..cbcd1009a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-healthcheck-oper.yang @@ -0,0 +1,416 @@ +module Cisco-IOS-XR-healthcheck-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-healthcheck-oper"; + prefix healthcheck-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-healthcheck-oper-sub2 { + revision-date 2022-04-07; + } + include Cisco-IOS-XR-healthcheck-oper-sub1 { + revision-date 2022-04-07; + } + + 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 healthcheck package operational data. + + This module contains definitions + for the following management objects: + health-check: Health check operational data space + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-07 { + description + "Updated Install Metric + 2021-10-19 + Updated Custom Metric + 2021-07-22 + ASIC reset and packet drops use case updated + 2021-05-25 + ASIC reset and packet drops usecases added"; + semver:module-version "1.1.0"; + } + revision 2020-09-18 { + description + "Fabric health metric updated."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SUMMARY { + description + "Common node of asic-reset, packet-drop"; + container summary { + description + "ASIC reset and packet drop summary"; + uses HCMGR-USE-CASE-SUMMARY-DATA; + } + } + + grouping NODE-TABLE { + description + "Common node of asic-reset, packet-drop"; + container node-entries { + description + "Node"; + list node-entry { + key "node-name"; + description + "Node name"; + container npus { + description + "NPU ID"; + list npu { + key "npu-id"; + description + "NPU ID"; + leaf npu-id { + type uint32; + description + "NPU ID"; + } + uses HCMGR-USE-CASE-DETAIL-DATA; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + + container health-check { + config false; + description + "Health check operational data space"; + container metric-info { + description + "Metric"; + container fpd { + description + "FPD metric"; + uses HCMGR-FPD-METRIC-DATA; + } + container pci-monitoring { + description + "PCI monitoring info"; + uses HCMGR-PCIMON-METRIC-DATA; + } + container redundancy { + description + "Redundancy metric"; + uses HCMGR-REDUNDANCY-METRIC-DATA; + } + container fabric-health { + description + "Fabric health metric"; + uses HCMGR-FABRIC-HEALTH-METRIC-DATA; + } + container hw-monitoring { + description + "Hardware monitoring"; + uses HCMGR-HWMON-METRIC-DATA; + } + container platform { + description + "Platform metric"; + uses HCMGR-PLATFORM-METRIC-DATA; + } + container interface-counters { + description + "Interface counter metric"; + container interface-counters-details { + description + "Interface name"; + list interface-counters-detail { + key "intf-name"; + description + "Interface name"; + container interface-counters-detail-data { + description + "Interface counters metric detail"; + uses HCMGR-INTF-COUNTERS-METRIC-DETAIL-DATA; + } + leaf intf-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container interface-counters-info { + description + "Interface counter metric"; + uses HCMGR-INTF-COUNTERS-METRIC-DATA; + } + } + container asic-errors { + description + "ASIC errors metric"; + container asic-errors-details { + description + "Node name"; + list asic-errors-detail { + key "node-name"; + description + "Node name"; + container asic-errors-detail-data { + description + "ASIC errors metric detail"; + uses HCMGR-ASIC-ERRORS-METRIC-DETAIL-DATA; + } + leaf node-name { + type xr:Cisco-ios-xr-string; + description + "Node name"; + } + } + } + container asic-errors-info { + description + "ASIC errors metric"; + uses HCMGR-ASIC-ERRORS-METRIC-DATA; + } + } + container communication-timeout { + description + "Process communication timeout metric"; + uses HCMGR-COMMUNICATION-TIMEOUT-METRIC-DATA; + } + container free-memory { + description + "Free memory metric"; + uses HCMGR-FREE-MEM-METRIC-DATA; + } + container process-resource { + description + "Process resource metric"; + uses HCMGR-PROCESS-RESOURCE-METRIC-DATA; + } + container custom-metric { + description + "Custom metric oper data"; + container custom-metric-infos { + description + "Name"; + list custom-metric-info { + key "metric-name"; + description + "Metric name"; + container custom-metric-info-data { + description + "Custom metric oper data"; + uses HCMGR-CUSTOM-METRIC-DATA; + } + leaf metric-name { + type xr:Cisco-ios-xr-string; + description + "Metric name"; + } + } + } + container infos { + description + "A list of custom metrics and user defined + information"; + list info { + key "metric-name"; + description + "Custom metric user defined information"; + leaf metric-name { + type xr:Cisco-ios-xr-string; + description + "Metric name"; + } + uses HCMGR-CUSTOM-METRIC-DATA; + } + } + } + container fabric-stats { + description + "ASIC errors metric"; + container fabric-stats-info { + description + "Fabric statistics metric"; + uses HCMGR-FABRIC-STATS-METRIC-DATA; + } + container fabric-stats-details { + description + "Plane ID"; + list fabric-stats-detail { + key "plane-id"; + description + "Plane ID"; + container fabric-stats-detail-data { + description + "Fabric statistics metric detail"; + uses HCMGR-FABRIC-STATS-METRIC-DETAIL-DATA; + } + leaf plane-id { + type uint32; + description + "Plane ID"; + } + } + } + } + container lc-monitoring { + description + "LC monitoring"; + uses HCMGR-LCMON-METRIC-DATA; + } + container filesystem { + description + "Filesystem metric"; + uses HCMGR-FILESYSTEM-METRIC-DATA; + } + container config-inconsistency { + description + "Config inconsistency Alarm metric"; + uses HCMGR-CONFIG-INCONSISTENCY-METRIC-DATA; + } + container shared-memory { + description + "Shared memory metric"; + uses HCMGR-SHARED-MEM-METRIC-DATA; + } + container wd-monitoring { + description + "Watchdog monitoring"; + uses HCMGR-WDMON-METRIC-DATA; + } + container process-status { + description + "Process state metric"; + uses HCMGR-PROCESS-STATE-METRIC-DATA; + } + container system-clock { + description + "Systemclock timezone info"; + uses HCMGR-SYSTEMCLOCK-METRIC-DATA; + } + container cpu { + description + "CPU metric"; + uses HCMGR-CPU-METRIC-DATA; + } + } + container report-info { + description + "Report data"; + uses HCMGR-REPORT-DATA; + } + container use-case { + description + "Use case"; + container asic-reset { + description + "ASIC reset use case"; + uses NODE-TABLE; + uses SUMMARY; + } + container packet-drop { + description + "Packet drop use case"; + uses NODE-TABLE; + uses SUMMARY; + } + } + container status { + description + "Health check status data"; + container metric { + description + "Holds specific metric information from list of + different metrics"; + uses HCMGR-METRIC-DATA; + } + container status-use-cases { + description + "Enabled use cases information"; + list status-use-case { + key "use-case"; + description + "Specific use case information from list of + different use cases"; + leaf use-case { + type xr:Cisco-ios-xr-string; + description + "Use case"; + } + uses HCMGR-STATUS-USECASE-DATA; + } + } + } + container status-info { + description + "Status"; + uses HCMGR-STATUS-DATA; + } + container report { + description + "Report data"; + container metrics { + description + "Holds information associated with different + metrics"; + list metric { + key "metric"; + description + "Holds specific metric information from list of + different metrics"; + leaf metric { + type xr:Cisco-ios-xr-string; + description + "Metric name"; + } + uses HCMGR-METRIC-DATA-REPORT; + } + } + container use-cases { + description + "Enabled use cases information"; + list use-case { + key "use-case"; + description + "Specific use case information from list of + different use cases"; + leaf use-case { + type xr:Cisco-ios-xr-string; + description + "Use case"; + } + uses HCMGR-USE-CASE-REPORT-DATA; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg-deviations.yang new file mode 100644 index 000000000..abd5ce851 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg-deviations.yang @@ -0,0 +1,46 @@ +module Cisco-IOS-XR-hw-module-cfg-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-hw-module-cfg-deviations"; + prefix cisco-ios-xr-hw-module-cfg-dev; + + import Cisco-IOS-XR-hw-module-cfg { + prefix hw-module-cfg; + } + + 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 set of deviations of HW-module cfg data + model set for Cisco IOS-XR. + + Copyright (c) 2013-2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-24 { + description + "Added deviation for ejector close"; + } + revision 2020-05-27 { + description + "Initial revision applicable to IOS-XR 7. 3. 1 and older releases"; + } + + deviation "/hw-module-cfg:hw-module/hw-module-cfg:nodes/hw-module-cfg:node/hw-module-cfg:config/hw-module-cfg:auto-reset-disable" { + deviate not-supported; + } + deviation "/hw-module-cfg:hw-module/hw-module-cfg:nodes/hw-module-cfg:node/hw-module-cfg:config/hw-module-cfg:attention-led" { + deviate not-supported; + } + deviation "/hw-module-cfg:hw-module/hw-module-cfg:nodes/hw-module-cfg:node/hw-module-cfg:config/hw-module-cfg:wait-ejector-close" { + deviate not-supported; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg.yang new file mode 100644 index 000000000..600108669 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-hw-module-cfg.yang @@ -0,0 +1,123 @@ +module Cisco-IOS-XR-hw-module-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-hw-module-cfg"; + prefix hw-module-cfg; + + 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 package configuration. + + This module contains definitions + for the following management objects: + hw-module: Hardware module information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-24 { + description + "Addition of wait ejector close leaf."; + semver:module-version "3.1.0"; + } + revision 2020-05-27 { + description + "Addition of attention-led and auto-reset-disable leaves to eXR model."; + semver:module-version "3.0.0"; + } + revision 2019-10-15 { + description + "IOS XR 7.0.12 revision."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Admin-state { + type enumeration { + enum "unshut" { + value 0; + description + "Power On"; + } + enum "shut" { + value 1; + description + "Power Off"; + } + } + description + "Admin state"; + } + + container hw-module { + description + "Hardware module information"; + container nodes { + description + "List of nodes"; + list node { + key "location"; + description + "Node object"; + container config { + must "attention-led or admin-state or auto-reset-disable or wait-ejector-close" { + error-message "Hw-module config containers cannot be empty"; + description + "At least one configuration parameter must be set"; + } + description + "Configuration data for hw-module"; + leaf auto-reset-disable { + type boolean; + description + "Do not automatically reset the hw-module on + failure"; + } + leaf wait-ejector-close { + type boolean; + default "true"; + description + "Enable waiting for ejector close on all cards"; + } + leaf attention-led { + type boolean; + description + "Enable hw-module attention LED (Blue)"; + } + leaf admin-state { + type Admin-state; + description + "Set the admin state of the hw-module"; + } + } + leaf location { + type string; + description + "Location string"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-hwmod-mpa-reload-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-hwmod-mpa-reload-act.yang new file mode 100644 index 000000000..9614211fa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-hwmod-mpa-reload-act.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-hwmod-mpa-reload-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-hwmod-mpa-reload-act"; + prefix hwmod-mpa-reload-act; + + 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 MPA reload action package configuration. + + Copyright (c) 2016-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-06-30 { + description + "IOS XR 6.2.1 revision."; + } + + rpc hw-module-subslot { + description + "Execute subslot h/w module operations"; + input { + leaf subslot { + type string; + description + "Fully qualified location specification"; + } + leaf reload { + type empty; + description + "Cycle subslot h/w reset"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-cfg.yang new file mode 100644 index 000000000..6d4b47822 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-cfg.yang @@ -0,0 +1,444 @@ +module Cisco-IOS-XR-icpe-infra-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-icpe-infra-cfg"; + prefix icpe-infra-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-rgmgr-cfg { + prefix a2; + } + + 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 icpe-infra package configuration. + + This module contains definitions + for the following management objects: + nv-satellite-global: nV Satellite Global configuration + nv-satellites: Satellite Configuration table + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-rgmgr-cfg, + modules with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-sat-id { + type uint32 { + range "100..65534"; + } + description + "Icpe sat id"; + } + + typedef Icpe-slot { + type uint32 { + range "0..8"; + } + description + "Icpe slot"; + } + + typedef Icpe-min-links { + type uint32 { + range "1..64"; + } + description + "Icpe min links"; + } + + typedef Icpe-subslot { + type uint32 { + range "0..8"; + } + description + "Icpe subslot"; + } + + grouping ENABLE { + description + "Common node of nv-satellite-fabric-network, + satellites"; + leaf enable { + type empty; + mandatory true; + description + "Enable"; + } + } + + grouping REMOTE-PORTS-TABLE { + description + "Common node of nv-satellite-fabric-link, + satellites"; + container remote-ports { + description + "Remote Ports table"; + list remote-port { + key "port-type slot sub-slot"; + description + "Remote Ports"; + leaf port-type { + type xr:Cisco-ios-xr-string; + description + "Port type"; + } + leaf slot { + type Icpe-slot; + description + "Slot"; + } + leaf sub-slot { + type Icpe-subslot; + description + "Sub slot"; + } + leaf port-range { + type string; + mandatory true; + description + "Port range"; + } + } + } + } + + grouping REDUNDANCY { + description + "Common node of nv-satellite-fabric-link, + nv-satellite-fabric-network"; + container redundancy { + description + "Redundancy submode"; + leaf iccp-group { + type uint32 { + range "0..4294967295"; + } + description + "Links the satellite fabric to the given ICCP + group"; + } + leaf minimum-preferred-links { + type Icpe-min-links; + description + "Mininum number of active links preferred"; + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container nv-satellite-access { + description + "nV Satellite Access Link Configuration"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container nv-satellite-fabric-link { + presence "Indicates a nv-satellite-fabric-link node is configured."; + description + "nV Satellite Fabric Link Configuration"; + leaf satellite { + type Icpe-sat-id; + mandatory true; + description + "Hub & Spoke connection to a single Satellite"; + } + leaf minimum-required-links { + type Icpe-min-links; + description + "Mininum number of active links required"; + } + uses REDUNDANCY; + uses REMOTE-PORTS-TABLE; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container nv-satellite-fabric-network { + presence "Indicates a nv-satellite-fabric-network node is configured."; + description + "Complex Network connection to one or more + Satellites"; + container satellites { + description + "Connected Satellite table"; + list satellite { + key "satellite-id"; + description + "Connected Satellite"; + leaf satellite-id { + type Icpe-sat-id; + description + "Satellite ID"; + } + uses REMOTE-PORTS-TABLE; + uses ENABLE; + } + } + uses REDUNDANCY; + uses ENABLE; + } + } + augment "/a2:redundancy-group-manager/a2:iccp/a2:iccp-groups/a2:iccp-group" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-rgmgr-cfg'"; + container nv-satellite { + description + "nV Satellite configuration"; + leaf system-mac { + type yang:mac-address; + description + "Optional identifier for this system"; + } + } + } + container nv-satellite-global { + description + "nV Satellite Global configuration"; + container chassis-mac { + description + "Chassis MAC address"; + leaf mac1 { + type uint32 { + range "0..2147483647"; + } + units "byte"; + description + "First two bytes of MAC address"; + } + leaf mac2 { + type uint32 { + range "0..2147483647"; + } + units "byte"; + description + "Second two bytes of MAC address"; + } + leaf mac3 { + type uint32 { + range "0..2147483647"; + } + units "byte"; + description + "Third two bytes of MAC address"; + } + } + } + container nv-satellites { + description + "Satellite Configuration table"; + list nv-satellite { + key "satellite-id"; + description + "Satellite Configuration"; + container upgrade-on-connect { + description + "Satellite auto-upgrade capability"; + leaf connect-type { + type enumeration { + enum "on-connection" { + value 1; + description + "Satellite Upgrade on Connection"; + } + enum "on-first-connection" { + value 2; + description + "Satellite Upgrade on First Connection after + configuration or host boot"; + } + } + description + "When to upgrade the satellite"; + } + leaf reference { + type string; + description + "Reference name"; + } + leaf image-reference { + type string; + description + "Image Reference name"; + } + } + container candidate-fabric-ports { + description + "Enable interfaces on the satellite to be used + as fabric ports table"; + list candidate-fabric-port { + key "port-type slot sub-slot"; + description + "Enable interfaces on the satellite to be used + as fabric ports"; + leaf port-type { + type xr:Cisco-ios-xr-string; + description + "Port type"; + } + leaf slot { + type Icpe-slot; + description + "Slot"; + } + leaf sub-slot { + type Icpe-subslot; + description + "Sub slot"; + } + leaf port-range { + type string; + mandatory true; + description + "Port range"; + } + } + } + container connection-info { + description + "Satellite User"; + leaf username { + type string; + description + "Satellite Username"; + } + leaf password { + type xr:Md5-password; + description + "Encrypted password for the user"; + } + } + container redundancy { + description + "Redundancy submode"; + leaf host-priority { + type uint32 { + range "0..255"; + } + description + "Priority for this host for the given satellite"; + } + } + leaf vrf { + type string; + description + "VRF for Satellite IP Address"; + } + leaf timeout-warning { + type uint32 { + range "0..4294967295"; + } + description + "Discovery timeout warning for the satellite"; + } + leaf device-name { + type string; + description + "Satellite Name"; + } + leaf description { + type string; + description + "Satellite Description"; + } + leaf type { + type string; + mandatory true; + description + "Satellite Type"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable"; + } + leaf disc-timeout { + type uint32 { + range "0..4294967295"; + } + description + "Discovery timeout for the satellite"; + } + leaf delayed-switchback { + type uint32 { + range "0..4294967295"; + } + units "second"; + description + "Timer (in seconds) for delaying switchback in a + dual home setup"; + } + leaf serial-number { + type string; + description + "Satellite Serial Number"; + } + leaf secret { + type xr:Md5-password; + description + "Encrypted password for the Satellite"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "Satellite IP Address"; + } + leaf satellite-id { + type Icpe-sat-id; + description + "Satellite ID"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub1.yang new file mode 100644 index 000000000..a848e2b3f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub1.yang @@ -0,0 +1,56 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub1 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-OPER-INSTALL-IMAGE-REF-INFO-TYPE { + description + "Install Reference Information"; + leaf reference-name-xr { + type Xr-yang-string; + description + "Reference name"; + } + leaf-list reference-file { + type Xr-yang-string; + description + "Reference files"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub10.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub10.yang new file mode 100644 index 000000000..9a7aa2b5f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub10.yang @@ -0,0 +1,332 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub10 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-install-sat-state { + type enumeration { + enum "icpe-install-sat-state-unknown" { + description + "Unknown"; + } + enum "icpe-install-sat-state-not-initiat-ed" { + description + "Not initiated"; + } + enum "icpe-install-sat-state-transferring" { + description + "Transferring"; + } + enum "icpe-install-sat-state-activating" { + description + "Activating"; + } + enum "icpe-install-sat-state-updating" { + description + "Updating"; + } + enum "icpe-install-sat-state-replacing" { + description + "Replacing"; + } + enum "icpe-install-sat-state-deactivating" { + description + "Deactivating"; + } + enum "icpe-install-sat-state-removing" { + description + "Removing"; + } + enum "icpe-install-sat-state-success" { + description + "Success"; + } + enum "icpe-install-sat-state-failure" { + description + "Failure"; + } + enum "icpe-install-sat-state-multiple-ops" { + description + "Multiple ops"; + } + enum "icpe-install-sat-state-aborted" { + description + "Aborted"; + } + enum "icpe-install-sat-state-protocol-version" { + description + "Protocol version"; + } + enum "icpe-install-sat-state-pkg-not-present" { + description + "Pkg not present"; + } + enum "icpe-install-sat-state-no-image" { + description + "No image"; + } + enum "icpe-install-sat-state-no-such-file" { + description + "No such file"; + } + enum "icpe-install-sat-state-sat-uncfgd" { + description + "Sat uncfgd"; + } + enum "icpe-install-sat-state-processing" { + description + "Processing"; + } + } + description + "Icpe install sat state"; + } + + grouping ICPE-INSTALL-SHOW-DETAIL-SATELLITE-TYPE { + description + "ICPE INSTALL SHOW DETAIL SATELLITE TYPE"; + leaf satellite-id { + type uint16; + description + "Satellite ID"; + } + leaf state { + type Icpe-install-sat-state; + description + "State"; + } + leaf percentage { + type uint16; + units "percentage"; + description + "Percentage"; + } + leaf retries { + type uint16; + description + "Retries"; + } + leaf start-time { + type uint32; + description + "Start time"; + } + leaf end-time { + type uint32; + description + "End time"; + } + leaf info { + type Xr-yang-string; + description + "Info"; + } + } + + grouping ICPE-INSTALL-SHOW-DETAIL-TYPE { + description + "Detailed breakdown of install status"; + leaf operation-id-xr { + type uint32; + description + "Operation ID"; + } + leaf satellite-range { + type Xr-yang-string; + description + "Satellite range"; + } + leaf operation-type { + type uint16; + description + "Operation type"; + } + leaf progress-percentage { + type uint16; + units "percentage"; + description + "Progress percentage"; + } + leaf start-time { + type uint32; + description + "Start time"; + } + leaf end-time { + type uint32; + description + "End time"; + } + leaf reference-op { + type boolean; + description + "Reference op"; + } + leaf ref-type { + type Icpe-oper-ref-type; + description + "Ref type"; + } + leaf ref-name { + type Xr-yang-string; + description + "Ref name"; + } + leaf ref-state { + type Icpe-install-sat-state; + description + "Ref state"; + } + leaf-list sats-not-initiated { + type uint16; + description + "Sats not initiated"; + } + leaf-list sats-transferring { + type uint16; + description + "Sats transferring"; + } + leaf-list sats-activating { + type uint16; + description + "Sats activating"; + } + leaf-list sats-updating { + type uint16; + description + "Sats updating"; + } + leaf-list sats-replacing { + type uint16; + description + "Sats replacing"; + } + leaf-list sats-deactivating { + type uint16; + description + "Sats deactivating"; + } + leaf-list sats-removing { + type uint16; + description + "Sats removing"; + } + leaf-list sats-transfer-failed { + type uint16; + description + "Sats transfer failed"; + } + leaf-list sats-activate-failed { + type uint16; + description + "Sats activate failed"; + } + leaf-list sats-update-failed { + type uint16; + description + "Sats update failed"; + } + leaf-list sats-replace-failed { + type uint16; + description + "Sats replace failed"; + } + leaf-list sats-deactivate-failed { + type uint16; + description + "Sats deactivate failed"; + } + leaf-list sats-remove-failed { + type uint16; + description + "Sats remove failed"; + } + leaf-list sats-transfer-aborted { + type uint16; + description + "Sats transfer aborted"; + } + leaf-list sats-activate-aborted { + type uint16; + description + "Sats activate aborted"; + } + leaf-list sats-update-aborted { + type uint16; + description + "Sats update aborted"; + } + leaf-list sats-replace-aborted { + type uint16; + description + "Sats replace aborted"; + } + leaf-list sats-deactivate-aborted { + type uint16; + description + "Sats deactivate aborted"; + } + leaf-list sats-remove-aborted { + type uint16; + description + "Sats remove aborted"; + } + leaf-list sats-no-operation { + type uint16; + description + "Sats no operation"; + } + leaf-list sats-completed { + type uint16; + description + "Sats completed"; + } + leaf-list name-string { + type Xr-yang-string; + description + "Name strings"; + } + list satellite { + description + "Breakdown per satellite table"; + uses ICPE-INSTALL-SHOW-DETAIL-SATELLITE-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub11.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub11.yang new file mode 100644 index 000000000..cf3f75cae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub11.yang @@ -0,0 +1,366 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub11 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-opm-resync-fsm-state { + type enumeration { + enum "icpe-opm-resync-fsm-state-not-open" { + description + "Not open"; + } + enum "icpe-opm-resync-fsm-state-stable" { + description + "Stable"; + } + enum "icpe-opm-resync-fsm-state-in-resync" { + description + "In resync"; + } + enum "icpe-opm-resync-fsm-state-queued" { + description + "Queued"; + } + enum "icpe-opm-resync-fsm-state-resync-req" { + description + "Resync req"; + } + } + description + "Icpe opm resync fsm state"; + } + + typedef Icpe-opm-chan-fsm-state { + type enumeration { + enum "icpe-opm-chan-fsm-state-down" { + description + "Down"; + } + enum "icpe-opm-chan-fsm-state-closed" { + description + "Closed"; + } + enum "icpe-opm-chan-fsm-state-opening" { + description + "Opening"; + } + enum "icpe-opm-chan-fsm-state-opened" { + description + "Opened"; + } + enum "icpe-opm-chan-fsm-state-open" { + description + "Open"; + } + } + description + "Icpe opm chan fsm state"; + } + + typedef Icpe-opm-controller { + type enumeration { + enum "icpe-opm-controller-unknown" { + description + "Unknown"; + } + enum "icpe-opm-controller-primary" { + description + "Primary"; + } + enum "icpe-opm-controller-secondary" { + description + "Secondary"; + } + } + description + "Icpe opm controller"; + } + + typedef Icpe-opm-sync-fsm-state { + type enumeration { + enum "icpe-opm-sync-fsm-state-split-brain" { + description + "Split brain"; + } + enum "icpe-opm-sync-fsm-state-waiting" { + description + "Waiting"; + } + enum "icpe-opm-sync-fsm-state-whole-brain" { + description + "Whole brain"; + } + } + description + "Icpe opm sync fsm state"; + } + + typedef Icpe-opm-arbitration-fsm-state { + type enumeration { + enum "icpe-opm-arbitration-fsm-state-unarbitrated" { + description + "Unarbitrated"; + } + enum "icpe-opm-arbitration-fsm-state-waiting" { + description + "Waiting"; + } + enum "icpe-opm-arbitration-fsm-state-arbitrating" { + description + "Arbitrating"; + } + enum "icpe-opm-arbitration-fsm-state-arbitrated" { + description + "Arbitrated"; + } + } + description + "Icpe opm arbitration fsm state"; + } + + typedef Icpe-opm-auth-fsm-state { + type enumeration { + enum "icpe-opm-auth-fsm-state-unauth" { + description + "Unauth"; + } + enum "icpe-opm-auth-fsm-state-waiting" { + description + "Waiting"; + } + enum "icpe-opm-auth-fsm-state-waiting-for-auth" { + description + "Waiting for auth"; + } + enum "icpe-opm-auth-fsm-state-waiting-for-reply" { + description + "Waiting for reply"; + } + enum "icpe-opm-auth-fsm-state-authed" { + description + "Authed"; + } + } + description + "Icpe opm auth fsm state"; + } + + typedef Icpe-opm-transport-state { + type enumeration { + enum "icpe-opm-transport-state-disconnected" { + description + "Disconnected"; + } + enum "icpe-opm-transport-state-iccp-unavailable" { + description + "ICCP unavailable"; + } + enum "icpe-opm-transport-state-no-member-present" { + description + "No member present"; + } + enum "icpe-opm-transport-state-member-down" { + description + "Member down"; + } + enum "icpe-opm-transport-state-member-not-reachable" { + description + "Member not reachable"; + } + enum "icpe-opm-transport-state-waiting-for-app-connect" { + description + "Waiting for app connect"; + } + enum "icpe-opm-transport-state-waiting-for-app-connect-response" { + description + "Waiting for app connect response"; + } + enum "icpe-opm-transport-state-connected" { + description + "Connected"; + } + } + description + "Icpe opm transport state"; + } + + typedef Icpe-opm-sess-state { + type enumeration { + enum "icpe-opm-sess-state-disconnected" { + description + "Disconnected"; + } + enum "icpe-opm-sess-state-connecting" { + description + "Connecting"; + } + enum "icpe-opm-sess-state-authenticating" { + description + "Authenticating"; + } + enum "icpe-opm-sess-state-arbitrating" { + description + "Arbitrating"; + } + enum "icpe-opm-sess-state-waiting-for-resyncs" { + description + "Waiting for resyncs"; + } + enum "icpe-opm-sess-state-connected" { + description + "Connected"; + } + } + description + "Icpe opm sess state"; + } + + grouping ICPE-REDUNDANCY-CHAN-TYPE { + description + "ICPE REDUNDANCY CHAN TYPE"; + container channel-state-timestamp { + description + "Timestamp"; + uses ICPE-TIMESTAMP-TYPE; + } + container resync-state-timestamp { + description + "Timestamp"; + uses ICPE-TIMESTAMP-TYPE; + } + leaf channel-id { + type uint32; + description + "Channel ID"; + } + leaf chan-state { + type Icpe-opm-chan-fsm-state; + description + "Chan state"; + } + leaf resync-state { + type Icpe-opm-resync-fsm-state; + description + "Resync state"; + } + leaf control-messages-sent { + type uint64; + description + "Control messages sent"; + } + leaf normal-messages-sent { + type uint64; + description + "Normal messages sent"; + } + leaf control-messages-received { + type uint64; + description + "Control messages received"; + } + leaf normal-messages-received { + type uint64; + description + "Normal messages received"; + } + } + + grouping ICPE-REDUNDANCY-SESSION { + description + "nV Satellite Redundancy Protocol Information"; + container protocol-state-timestamp { + description + "Timestamp"; + uses ICPE-TIMESTAMP-TYPE; + } + leaf iccp-group-xr { + type uint32; + description + "ICCP group"; + } + leaf protocol-state { + type Icpe-opm-sess-state; + description + "Protocol state"; + } + leaf transport-state { + type Icpe-opm-transport-state; + description + "Transport state"; + } + leaf authentication-state { + type Icpe-opm-auth-fsm-state; + description + "Authentication state"; + } + leaf arbitration-state { + type Icpe-opm-arbitration-fsm-state; + description + "Arbitration state"; + } + leaf synchronization-state { + type Icpe-opm-sync-fsm-state; + description + "Synchronization state"; + } + leaf primacy { + type Icpe-opm-controller; + description + "Primacy"; + } + leaf system-mac { + type yang:mac-address; + description + "System MAC"; + } + leaf isolated { + type boolean; + description + "Isolated"; + } + list channel { + description + "Channels on this session table"; + uses ICPE-REDUNDANCY-CHAN-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub12.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub12.yang new file mode 100644 index 000000000..d6b3c6d1c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub12.yang @@ -0,0 +1,76 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub12 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-RELOAD-OP-STATUS-DETAIL { + description + "Detailed breakdown of reload status"; + leaf operation-id-xr { + type uint32; + description + "Operation ID"; + } + leaf satellite-range { + type Xr-yang-string; + description + "Satellite range"; + } + leaf-list sats-not-initiated { + type uint16; + description + "Sats not initiated"; + } + leaf-list sats-reloading { + type uint16; + description + "Sats reloading"; + } + leaf-list sats-reloaded { + type uint16; + description + "Sats reloaded"; + } + leaf-list sats-reload-failed { + type uint16; + description + "Sats reload failed"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub2.yang new file mode 100644 index 000000000..6b42accf3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub2.yang @@ -0,0 +1,171 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub2 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-INSTALL-OP-STATUS-DETAIL { + description + "Detailed breakdown of install status"; + leaf operation-id-xr { + type uint32; + description + "Operation ID"; + } + leaf satellite-range { + type Xr-yang-string; + description + "Satellite range"; + } + leaf arg-is-reference { + type boolean; + description + "Arg is reference"; + } + leaf reference-op { + type boolean; + description + "Reference op"; + } + leaf-list sats-not-initiated { + type uint16; + description + "Sats not initiated"; + } + leaf-list sats-transferring { + type uint16; + description + "Sats transferring"; + } + leaf-list sats-activating { + type uint16; + description + "Sats activating"; + } + leaf-list sats-updating { + type uint16; + description + "Sats updating"; + } + leaf-list sats-replacing { + type uint16; + description + "Sats replacing"; + } + leaf-list sats-deactivating { + type uint16; + description + "Sats deactivating"; + } + leaf-list sats-removing { + type uint16; + description + "Sats removing"; + } + leaf-list sats-transfer-failed { + type uint16; + description + "Sats transfer failed"; + } + leaf-list sats-activate-failed { + type uint16; + description + "Sats activate failed"; + } + leaf-list sats-update-failed { + type uint16; + description + "Sats update failed"; + } + leaf-list sats-replace-failed { + type uint16; + description + "Sats replace failed"; + } + leaf-list sats-deactivate-failed { + type uint16; + description + "Sats deactivate failed"; + } + leaf-list sats-remove-failed { + type uint16; + description + "Sats remove failed"; + } + leaf-list sats-transfer-aborted { + type uint16; + description + "Sats transfer aborted"; + } + leaf-list sats-activate-aborted { + type uint16; + description + "Sats activate aborted"; + } + leaf-list sats-update-aborted { + type uint16; + description + "Sats update aborted"; + } + leaf-list sats-replace-aborted { + type uint16; + description + "Sats replace aborted"; + } + leaf-list sats-deactivate-aborted { + type uint16; + description + "Sats deactivate aborted"; + } + leaf-list sats-remove-aborted { + type uint16; + description + "Sats remove aborted"; + } + leaf-list sats-no-operation { + type uint16; + description + "Sats no operation"; + } + leaf-list sats-completed { + type uint16; + description + "Sats completed"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub3.yang new file mode 100644 index 000000000..1a61d2467 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub3.yang @@ -0,0 +1,80 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub3 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-install-pkg-supp { + type enumeration { + enum "icpe-install-pkg-supp-unknown" { + description + "Unknown"; + } + enum "icpe-install-pkg-supp-not-supported" { + description + "Not supported"; + } + enum "icpe-install-pkg-supp-supported" { + description + "Supported"; + } + } + description + "Icpe install pkg supp"; + } + + grouping ICPE-OPER-SAT-PACKAGE-INFORMATION-TYPE { + description + "Satellite Software Package Information"; + container install-package-info { + description + "Package Data on this Satellite"; + uses ICPE-OPER-PACKAGE-INFO-TYPE; + } + leaf satellite-id-xr { + type uint16; + description + "Satellite ID"; + } + leaf package-support { + type Icpe-install-pkg-supp; + description + "Package support"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub4.yang new file mode 100644 index 000000000..70ac33899 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub4.yang @@ -0,0 +1,1040 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub4 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-oper-multichassis-redundancy { + type enumeration { + enum "icpe-oper-multi-chassis-redundancy-not-redundant" { + description + "Not redundant"; + } + enum "icpe-oper-multi-chassis-redundancy-active" { + description + "Active"; + } + enum "icpe-oper-multi-chassis-redundancy-standby" { + description + "Standby"; + } + } + description + "Icpe oper multichassis redundancy"; + } + + typedef Icpe-oper-discd-link-state { + type enumeration { + enum "icpe-oper-discd-link-state-stopped" { + description + "Stopped"; + } + enum "icpe-oper-discd-link-state-probing" { + description + "Probing"; + } + enum "icpe-oper-discd-link-state-configuring" { + description + "Configuring"; + } + enum "icpe-oper-discd-link-state-ready" { + description + "Ready"; + } + } + description + "Icpe oper discd link state"; + } + + typedef Icpe-oper-port { + type enumeration { + enum "icpe-oper-port-unknown" { + description + "Unknown"; + } + enum "icpe-oper-port-gigabit-ethernet" { + description + "Gigabit ethernet"; + } + enum "icpe-oper-port-ten-gig-e" { + description + "Ten gig e"; + } + } + description + "Icpe oper port"; + } + + typedef Icpe-oper-install-state { + type enumeration { + enum "icpe-oper-install-state-stable" { + description + "Stable"; + } + enum "icpe-oper-install-state-transferring" { + description + "Transferring"; + } + enum "icpe-oper-install-state-transferred" { + description + "Transferred"; + } + enum "icpe-oper-install-state-installing" { + description + "Installing"; + } + enum "icpe-oper-install-state-in-progress" { + description + "In progress"; + } + } + description + "Icpe oper install state"; + } + + typedef Icpe-gco-oper-control-reason { + type enumeration { + enum "icpe-gco-oper-control-reason-unknown-error" { + description + "Unknown error"; + } + enum "icpe-gco-oper-control-reason-wrong-chassis-type" { + description + "Wrong chassis type"; + } + enum "icpe-gco-oper-control-reason-wrong-chassis-serial" { + description + "Wrong chassis serial"; + } + enum "icpe-gco-oper-control-reason-needs-to-upgrade" { + description + "Needs to upgrade"; + } + enum "icpe-gco-oper-control-reason-none" { + description + "None"; + } + } + description + "Icpe gco oper control reason"; + } + + typedef Icpe-oper-sdacp-sess-state { + type enumeration { + enum "icpe-oper-sdacp-sess-state-not-created" { + description + "Not created"; + } + enum "icpe-oper-sdacp-sess-state-created" { + description + "Created"; + } + enum "icpe-oper-sdacp-sess-state-authentication-not-ok" { + description + "Authentication not OK"; + } + enum "icpe-oper-sdacp-sess-state-authentication-ok" { + description + "Authentication OK"; + } + enum "icpe-oper-sdacp-sess-state-version-not-ok" { + description + "Version not OK"; + } + enum "icpe-oper-sdacp-sess-state-up" { + description + "Up"; + } + enum "icpe-oper-sdacp-sess-state-issu" { + description + "ISSU"; + } + } + description + "Icpe oper sdacp sess state"; + } + + typedef Icpe-oper-conflict { + type enumeration { + enum "icpe-oper-conflict-not-calculated" { + description + "Not calculated"; + } + enum "icpe-oper-conflict-no-conflict" { + description + "No conflict"; + } + enum "icpe-oper-conflict-satellite-not-configured" { + description + "Satellite not configured"; + } + enum "icpe-oper-conflict-satellite-no-type" { + description + "Satellite no type"; + } + enum "icpe-oper-conflict-satellite-id-invalid" { + description + "Satellite id invalid"; + } + enum "icpe-oper-conflict-satellite-no-ipv4-addr" { + description + "Satellite no ipv4 addr"; + } + enum "icpe-oper-conflict-satellite-conflicting-ipv4-addr" { + description + "Satellite conflicting ipv4 addr"; + } + enum "icpe-oper-conflict-no-configured-links" { + description + "No configured links"; + } + enum "icpe-oper-conflict-no-discovered-links" { + description + "No discovered links"; + } + enum "icpe-oper-conflict-invalid-ports" { + description + "Invalid ports"; + } + enum "icpe-oper-conflict-ports-overlap" { + description + "Ports overlap"; + } + enum "icpe-oper-conflict-waiting-for-ipv4-addr" { + description + "Waiting for ipv4 addr"; + } + enum "icpe-oper-conflict-waiting-for-vrf" { + description + "Waiting for VRF"; + } + enum "icpe-oper-conflict-different-ipv4-addr" { + description + "Different ipv4 addr"; + } + enum "icpe-oper-conflict-different-vrf" { + description + "Different VRF"; + } + enum "icpe-oper-conflict-satellite-link-ipv4-overlap" { + description + "Satellite link ipv4 overlap"; + } + enum "icpe-oper-conflict-waiting-for-ident" { + description + "Waiting for ident"; + } + enum "icpe-oper-conflict-multiple-ids" { + description + "Multiple ids"; + } + enum "icpe-oper-conflict-multiple-satellites" { + description + "Multiple satellites"; + } + enum "icpe-oper-conflict-ident-rejected" { + description + "Ident rejected"; + } + enum "icpe-oper-conflict-interface-down" { + description + "Interface down"; + } + enum "icpe-oper-conflict-auto-ip-unavailable" { + description + "Auto IP unavailable"; + } + enum "icpe-oper-conflict-satellite-auto-ip-link-manual-ip" { + description + "Satellite auto IP link manual IP"; + } + enum "icpe-oper-conflict-link-auto-ip-satellite-manual-ip" { + description + "Link auto IP satellite manual IP"; + } + enum "icpe-oper-conflict-serial-num-mismatch" { + description + "Serial num mismatch"; + } + enum "icpe-oper-conflict-satellite-not-identified" { + description + "Satellite not identified"; + } + enum "icpe-oper-conflict-satellite-unsupported-type" { + description + "Satellite unsupported type"; + } + enum "icpe-oper-conflict-satellite-partition-unsupported" { + description + "Satellite partition unsupported"; + } + enum "icpe-oper-conflict-satellite-no-serial-number" { + description + "Satellite no serial number"; + } + enum "icpe-oper-conflict-satellite-conflicting-serial-number" { + description + "Satellite conflicting serial number"; + } + enum "icpe-oper-conflict-satellite-link-waiting-for-arp" { + description + "Satellite link waiting for arp"; + } + enum "icpe-oper-conflict-host-pe-isolated-split-brain" { + description + "Host PE isolated split brain"; + } + enum "icpe-oper-conflict-fabric-iccp-group-inconsistent" { + description + "Fabric ICCP group inconsistent"; + } + enum "icpe-oper-conflict-invalid-iccp-group" { + description + "Invalid ICCP group"; + } + enum "icpe-oper-conflict-port-rejected" { + description + "Port rejected"; + } + enum "icpe-oper-conflict-satellite-icl-not-supported" { + description + "Satellite ICL not supported"; + } + enum "icpe-oper-conflict-multiple-serial-number" { + description + "Multiple serial number"; + } + enum "icpe-oper-conflict-multiple-mac-address" { + description + "Multiple MAC address"; + } + } + description + "Icpe oper conflict"; + } + + typedef Icpe-oper-reload-level { + type enumeration { + enum "icpe-oper-reload-level-unknown" { + description + "Unknown"; + } + enum "icpe-oper-reload-level-system" { + description + "System"; + } + enum "icpe-oper-reload-level-container" { + description + "Container"; + } + } + description + "Icpe oper reload level"; + } + + typedef Icpe-optical-sync-state { + type enumeration { + enum "icpe-optical-sync-state-unknown" { + description + "Unknown"; + } + enum "icpe-optical-sync-state-syncing" { + description + "Syncing"; + } + enum "icpe-optical-sync-state-synced" { + description + "Synced"; + } + enum "icpe-optical-sync-state-not-connected" { + description + "Not connected"; + } + } + description + "Icpe optical sync state"; + } + + typedef Icpe-oper-ver-check-state { + type enumeration { + enum "icpe-oper-ver-check-state-unknown" { + description + "Unknown"; + } + enum "icpe-oper-ver-check-state-not-compatible" { + description + "Not compatible"; + } + enum "icpe-oper-ver-check-state-current-version" { + description + "Current version"; + } + enum "icpe-oper-ver-check-state-compatible-older" { + description + "Compatible older"; + } + enum "icpe-oper-ver-check-state-compatible-newer" { + description + "Compatible newer"; + } + } + description + "Icpe oper ver check state"; + } + + typedef Icpe-oper-fabric-port { + type enumeration { + enum "icpe-oper-fabric-port-unknown" { + description + "Unknown"; + } + enum "icpe-oper-fabric-port-n-v-fabric-gig-e" { + description + "n v fabric- gig e"; + } + enum "icpe-oper-fabric-port-n-v-fabric-ten-gig-e" { + description + "n v fabric- ten gig e"; + } + enum "icpe-oper-fabric-port-n-v-fabric-forty-gig-e" { + description + "n v fabric- forty gig e"; + } + enum "icpe-oper-fabric-port-n-v-fabric-hundred-gig-e" { + description + "n v fabric- hundred gig e"; + } + } + description + "Icpe oper fabric port"; + } + + typedef Icpe-oper-ref-type { + type enumeration { + enum "icpe-oper-ref-type-invalid" { + description + "Invalid"; + } + enum "icpe-oper-ref-type-smu" { + description + "SMU"; + } + enum "icpe-oper-ref-type-base-image" { + description + "Base image"; + } + } + description + "Icpe oper ref type"; + } + + typedef Xr-yang-string { + type string; + description + "Xr yang string"; + } + + grouping ICPE-OPER-PACKAGE-ITEM-TYPE { + description + "ICPE OPER PACKAGE ITEM TYPE"; + leaf name { + type Xr-yang-string; + description + "Name"; + } + leaf version { + type Xr-yang-string; + description + "Version of this package on the Satellite"; + } + leaf is-base-image { + type boolean; + description + "Is base image"; + } + } + + grouping ICPE-OPER-PACKAGE-LIST-TYPE { + description + "ICPE OPER PACKAGE LIST TYPE"; + list package { + description + "A package on this Satellite table"; + uses ICPE-OPER-PACKAGE-ITEM-TYPE; + } + } + + grouping ICPE-OPER-PACKAGE-INFO-TYPE { + description + "ICPE OPER PACKAGE INFO TYPE"; + container active-packages { + description + "Active Packages running on this Satellite"; + uses ICPE-OPER-PACKAGE-LIST-TYPE; + } + container inactive-packages { + description + "Inactive Packages on this Satellite"; + uses ICPE-OPER-PACKAGE-LIST-TYPE; + } + container committed-packages { + description + "Committed Packages running on this Satellite"; + uses ICPE-OPER-PACKAGE-LIST-TYPE; + } + } + + grouping ICPE-OPER-DISCD-LINK-TYPE { + description + "ICPE OPER DISCD LINK TYPE"; + leaf interface-handle { + type xr:Interface-name; + description + "Handle for the Discovered Link on this Satellite"; + } + leaf state { + type Icpe-oper-discd-link-state; + description + "State"; + } + leaf conflict-reason { + type Icpe-oper-conflict; + description + "Conflict reason"; + } + leaf conflict-context { + type Xr-yang-string; + description + "Conflict context"; + } + } + + grouping ICPE-OPER-PORT-RANGE-TYPE { + description + "ICPE OPER PORT RANGE TYPE"; + leaf slot { + type uint32; + description + "Slot"; + } + leaf subslot { + type uint32; + description + "Subslot"; + } + leaf low-port { + type uint32; + description + "Low port"; + } + leaf high-port { + type uint32; + description + "High port"; + } + leaf port-type { + type Icpe-oper-port; + description + "Port type"; + } + leaf conflict-reason { + type Icpe-oper-conflict; + description + "Conflict reason"; + } + leaf conflict-context { + type Xr-yang-string; + description + "Conflict context"; + } + } + + grouping ICPE-OPER-CFGD-LINK-TYPE { + description + "ICPE OPER CFGD LINK TYPE"; + leaf interface-handle { + type xr:Interface-name; + description + "Handle for the Configured Link on this Satellite"; + } + leaf ip-address { + type inet:ipv4-address; + description + "IP address"; + } + leaf ip-address-auto { + type boolean; + description + "IP address auto"; + } + leaf vrf-id-present { + type boolean; + description + "VRF ID present"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf minimum-preferred-links { + type uint32; + description + "Minimum preferred links"; + } + leaf number-active-links { + type uint32; + description + "Number active links"; + } + leaf min-links-satisfied { + type boolean; + description + "Min links satisfied"; + } + leaf minimum-required-links { + type uint32; + description + "Minimum required links"; + } + leaf required-min-links-satisfied { + type boolean; + description + "Required min links satisfied"; + } + leaf conflict-reason { + type Icpe-oper-conflict; + description + "Conflict reason"; + } + leaf conflict-context { + type Xr-yang-string; + description + "Conflict context"; + } + list port-range { + description + "Port ranges table"; + uses ICPE-OPER-PORT-RANGE-TYPE; + } + list discovered-link { + description + "Discovered Links table"; + uses ICPE-OPER-DISCD-LINK-TYPE; + } + } + + grouping ICPE-OPER-RELOAD-DATA-TYPE { + description + "ICPE OPER RELOAD DATA TYPE"; + leaf level { + type Icpe-oper-reload-level; + description + "Level"; + } + leaf time { + type uint64; + description + "Time"; + } + leaf info { + type Xr-yang-string; + description + "Info"; + } + } + + grouping ICPE-OPTICAL-APPLICATION-STATE-TYPE { + description + "ICPE OPTICAL APPLICATION STATE TYPE"; + leaf name { + type Xr-yang-string; + description + "Name"; + } + leaf sync-state { + type Icpe-optical-sync-state; + description + "Sync state"; + } + } + + grouping ICPE-OPTICAL-STATUS-TYPE { + description + "ICPE OPTICAL STATUS TYPE"; + leaf chassis-sync-state { + type Icpe-optical-sync-state; + description + "Chassis sync state"; + } + list application { + description + "Application State table"; + uses ICPE-OPTICAL-APPLICATION-STATE-TYPE; + } + } + + grouping ICPE-OPER-CAND-FAB-PORTS-CURR-TYPE { + description + "ICPE OPER CAND FAB PORTS CURR TYPE"; + leaf port-type { + type Icpe-oper-fabric-port; + description + "Port type"; + } + leaf slot { + type uint16; + description + "Slot"; + } + leaf subslot { + type uint16; + description + "Subslot"; + } + leaf port { + type uint16; + description + "Port"; + } + leaf permanent { + type boolean; + description + "Permanent"; + } + leaf requested { + type boolean; + description + "Requested"; + } + } + + grouping ICPE-OPER-CAND-FAB-PORTS-CFGD-TYPE { + description + "ICPE OPER CAND FAB PORTS CFGD TYPE"; + leaf port-type { + type Icpe-oper-fabric-port; + description + "Port type"; + } + leaf slot { + type uint16; + description + "Slot"; + } + leaf subslot { + type uint16; + description + "Subslot"; + } + leaf port { + type uint16; + description + "Port"; + } + leaf valid { + type boolean; + description + "Valid"; + } + } + + grouping ICPE-OPER-CAND-FAB-PORTS-TYPE { + description + "ICPE OPER CAND FAB PORTS TYPE"; + leaf channel-up { + type boolean; + description + "Channel up"; + } + leaf out-of-sync { + type boolean; + description + "Out of sync"; + } + leaf error-string { + type Xr-yang-string; + description + "Error string"; + } + list configured-port { + description + "Configured Candidate Fabric Ports table"; + uses ICPE-OPER-CAND-FAB-PORTS-CFGD-TYPE; + } + list current-port { + description + "Current Candidate Fabric Ports on this Satellite + table"; + uses ICPE-OPER-CAND-FAB-PORTS-CURR-TYPE; + } + } + + grouping ICPE-OPER-SAT-STATUS { + description + "Satellite status information"; + container candidate-fabric-ports { + description + "Candidate Fabric Ports on this Satellite"; + uses ICPE-OPER-CAND-FAB-PORTS-TYPE; + } + container optical-status { + description + "Optical Satellite Status"; + uses ICPE-OPTICAL-STATUS-TYPE; + } + container redundancy-out-of-sync-timestamp { + description + "Timestamp"; + uses ICPE-TIMESTAMP-TYPE; + } + leaf satellite-id-xr { + type uint16; + description + "Satellite ID"; + } + leaf version-check-state { + type Icpe-oper-ver-check-state; + description + "Version check state"; + } + leaf remote-version-present { + type boolean; + description + "Remote version present"; + } + leaf type { + type Xr-yang-string; + description + "Type"; + } + leaf ethernet-fabric-supported { + type boolean; + description + "Ethernet fabric supported"; + } + leaf optical-supported { + type boolean; + description + "Optical supported"; + } + leaf ip-address { + type inet:ipv4-address; + description + "IP address"; + } + leaf ip-address-present { + type boolean; + description + "IP address present"; + } + leaf ip-address-auto { + type boolean; + description + "IP address auto"; + } + leaf ipv6-address { + type inet:ipv6-address; + description + "IPV6 address"; + } + leaf ipv6-address-present { + type boolean; + description + "IPV6 address present"; + } + leaf vrf-name { + type Xr-yang-string; + description + "VRF name"; + } + leaf vrfid { + type uint32; + description + "VRFID"; + } + leaf description { + type Xr-yang-string; + description + "Description"; + } + leaf description-present { + type boolean; + description + "Description present"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf mac-address-present { + type boolean; + description + "MAC address present"; + } + leaf configured-serial-number { + type Xr-yang-string; + description + "Configured serial number"; + } + leaf configured-serial-number-present { + type boolean; + description + "Configured serial number present"; + } + leaf received-serial-number { + type Xr-yang-string; + description + "Received serial number"; + } + leaf received-serial-number-present { + type boolean; + description + "Received serial number present"; + } + leaf password { + type Xr-yang-string; + description + "Password"; + } + leaf password-error { + type Xr-yang-string; + description + "Password error"; + } + leaf received-host-name { + type Xr-yang-string; + description + "Received hostname"; + } + leaf cfgd-timeout { + type uint32; + description + "Cfgd timeout"; + } + leaf timeout-warning { + type uint32; + description + "Timeout warning"; + } + leaf conflict-reason { + type Icpe-oper-conflict; + description + "Conflict reason"; + } + leaf conflict-context { + type Xr-yang-string; + description + "Conflict context"; + } + leaf redundancy-iccp-group { + type uint32; + description + "Redundancy ICCP group"; + } + leaf recovery-delay-time-left { + type uint16; + description + "Recovery delay time left"; + } + leaf host-treating-as-active { + type boolean; + description + "Host treating as active"; + } + leaf satellite-treating-as-active { + type boolean; + description + "Satellite treating as active"; + } + leaf sdacp-session-state { + type Icpe-oper-sdacp-sess-state; + description + "SDACP session state"; + } + leaf sdacp-session-failure-reason { + type Icpe-gco-oper-control-reason; + description + "SDACP session failure reason"; + } + leaf install-state { + type Icpe-oper-install-state; + description + "Install state"; + } + leaf-list remote-version { + type Xr-yang-string; + description + "Remote version"; + } + list reload-data { + description + "Reload Information table"; + uses ICPE-OPER-RELOAD-DATA-TYPE; + } + list configured-link { + description + "Configured Links on this Satellite table"; + uses ICPE-OPER-CFGD-LINK-TYPE; + } + } + + grouping ICPE-TIMESTAMP-TYPE { + description + "ICPE TIMESTAMP TYPE"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub5.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub5.yang new file mode 100644 index 000000000..2d6cdde47 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub5.yang @@ -0,0 +1,59 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub5 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-INSTALL-PROGRESS { + description + "Current percentage of install"; + leaf operation-id-xr { + type uint32; + description + "Operation ID"; + } + leaf progress-percentage { + type uint16; + units "percentage"; + description + "Progress percentage"; + } + leaf satellite-count { + type uint32; + description + "Satellite count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub6.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub6.yang new file mode 100644 index 000000000..385ccf739 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub6.yang @@ -0,0 +1,56 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub6 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-OPER-INSTALL-REF-INFO-TYPE { + description + "Install Reference Information"; + leaf reference-name-xr { + type Xr-yang-string; + description + "Reference name"; + } + leaf-list reference-file { + type Xr-yang-string; + description + "Reference files"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub7.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub7.yang new file mode 100644 index 000000000..66daa9292 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub7.yang @@ -0,0 +1,283 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub7 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-oper-topo-remote-source { + type enumeration { + enum "icpe-oper-topo-remote-source-unknown" { + description + "Unknown"; + } + enum "icpe-oper-topo-remote-source-remote-icl-id" { + description + "Remote ICL ID"; + } + enum "icpe-oper-topo-remote-source-remote-satellite-mac" { + description + "Remote satellite MAC"; + } + enum "icpe-oper-topo-remote-source-remote-host-mac" { + description + "Remote host MAC"; + } + enum "icpe-oper-topo-remote-source-direct-satellite" { + description + "Direct satellite"; + } + enum "icpe-oper-topo-remote-source-direct-host" { + description + "Direct host"; + } + } + description + "Icpe oper topo remote source"; + } + + grouping ICPE-OPER-TOPO-REMOTE-SFL-TYPE { + description + "ICPE OPER TOPO REMOTE SFL TYPE"; + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf source { + type Icpe-oper-topo-remote-source; + description + "Source"; + } + leaf remote-is-satellite { + type boolean; + description + "Remote is satellite"; + } + leaf remote-is-local-host { + type boolean; + description + "Remote is local host"; + } + leaf icl-id { + type uint32; + description + "ICL ID"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Handle of the Remote Satellite Fabric Link"; + } + leaf interface-name { + type Xr-yang-string; + description + "Name of the Remote Satellite Fabric Link"; + } + } + + grouping ICPE-OPER-TOPO-LOCAL-SFL-TYPE { + description + "ICPE OPER TOPO LOCAL SFL TYPE"; + leaf icl-id { + type uint32; + description + "ICL ID"; + } + leaf interface-name { + type Xr-yang-string; + description + "Name of the Local Satellite Fabric Link"; + } + leaf display-name { + type Xr-yang-string; + description + "Display name"; + } + leaf redundant { + type boolean; + description + "Redundant"; + } + leaf active { + type boolean; + description + "Active"; + } + leaf obsolete { + type boolean; + description + "Obsolete"; + } + list remote-device { + description + "Remote Device table"; + uses ICPE-OPER-TOPO-REMOTE-SFL-TYPE; + } + } + + grouping ICPE-OPER-TOPO-SATTUN-TYPE { + description + "ICPE OPER TOPO SATTUN TYPE"; + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf configured { + type boolean; + description + "Configured"; + } + leaf num-hops { + type uint16; + description + "Num hops"; + } + leaf type { + type Xr-yang-string; + description + "Type"; + } + leaf satellite-id { + type uint16; + description + "Satellite ID"; + } + leaf received-serial-number { + type Xr-yang-string; + description + "Received serial number"; + } + leaf received-serial-number-present { + type boolean; + description + "Received serial number present"; + } + leaf vlan-id { + type uint16; + description + "VLAN ID"; + } + leaf display-name { + type Xr-yang-string; + description + "Display name"; + } + leaf conflict-reason { + type Icpe-oper-conflict; + description + "Conflict reason"; + } + leaf conflict-context { + type Xr-yang-string; + description + "Conflict context"; + } + list fabric-link { + description + "Local Satellite Fabric Link table"; + uses ICPE-OPER-TOPO-LOCAL-SFL-TYPE; + } + } + + grouping ICPE-OPER-TOPO-DSFL-TYPE { + description + "ICPE OPER TOPO DSFL TYPE"; + leaf interface-name { + type Xr-yang-string; + description + "Name of the Discovered Satellite Fabric Link"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Handle of the Discovered Satellite Fabric Link"; + } + leaf discovery-running { + type boolean; + description + "Discovery running"; + } + } + + grouping ICPE-OPER-TOPO-CSFL-TYPE { + description + "Satellite Topology Information"; + leaf interface-name-xr { + type Xr-yang-string; + description + "Name of the Configured Satellite Fabric Link"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Handle of the Configured Satellite Fabric Link"; + } + leaf redundancy-iccp-group { + type uint32; + description + "Redundancy ICCP group"; + } + leaf is-physical { + type boolean; + description + "Is physical"; + } + leaf ring-whole { + type boolean; + description + "Ring whole"; + } + list discovered-link { + description + "Discovered Links table"; + uses ICPE-OPER-TOPO-DSFL-TYPE; + } + list satellite { + description + "Satellite table"; + uses ICPE-OPER-TOPO-SATTUN-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub8.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub8.yang new file mode 100644 index 000000000..7ac9987c5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub8.yang @@ -0,0 +1,101 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub8 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-OPER-SAT-VERSION-TYPE { + description + "ICPE OPER SAT VERSION TYPE"; + leaf version-check-state { + type Icpe-oper-ver-check-state; + description + "Version check state"; + } + leaf remote-version-present { + type boolean; + description + "Remote version present"; + } + leaf-list remote-version { + type Xr-yang-string; + description + "Remote version"; + } + } + + grouping ICPE-OPER-SAT-REMOTE-VERSION-TYPE { + description + "Satellite remote version information"; + container active-version { + description + "Satellite active version information"; + uses ICPE-OPER-SAT-VERSION-TYPE; + } + container transferred-version { + description + "Satellite transferred version information"; + uses ICPE-OPER-SAT-VERSION-TYPE; + } + container committed-version { + description + "Satellite committed version information"; + uses ICPE-OPER-SAT-VERSION-TYPE; + } + leaf satellite-id-xr { + type uint16; + description + "Satellite ID"; + } + leaf version-check-state { + type Icpe-oper-ver-check-state; + description + "Version check state"; + } + leaf remote-version-present { + type boolean; + description + "Remote version present"; + } + leaf-list remote-version { + type Xr-yang-string; + description + "Remote version"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub9.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub9.yang new file mode 100644 index 000000000..0136252a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper-sub9.yang @@ -0,0 +1,81 @@ +submodule Cisco-IOS-XR-icpe-infra-oper-sub9 { + belongs-to Cisco-IOS-XR-icpe-infra-oper { + prefix Cisco-IOS-XR-icpe-infra-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-GCO-PRIORITY-OPER-TYPE { + description + "Satellite priority information"; + leaf satellite-id-xr { + type uint16; + description + "Satellite ID"; + } + leaf rgid { + type uint32; + description + "RG ID"; + } + leaf best-path-hops { + type uint32; + description + "Best path hops"; + } + leaf configured-priority { + type uint8; + description + "Configured priority"; + } + leaf host-priority { + type uint64; + description + "Host priority"; + } + leaf partner-priority { + type uint64; + description + "Partner priority"; + } + leaf multichassis-redundancy { + type Icpe-oper-multichassis-redundancy; + description + "Multichassis redundancy"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper.yang new file mode 100644 index 000000000..aa530da28 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-infra-oper.yang @@ -0,0 +1,325 @@ +module Cisco-IOS-XR-icpe-infra-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-icpe-infra-oper"; + prefix icpe-infra-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-infra-oper-sub12 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub11 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub10 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub9 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub8 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub7 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub6 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub5 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub4 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub3 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-infra-oper-sub1 { + revision-date 2019-04-05; + } + + 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 icpe-infra package operational data. + + This module contains definitions + for the following management objects: + nv-satellite: Satellite operational information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-sat-id { + type uint32 { + range "100..65534"; + } + description + "Icpe sat id"; + } + + container nv-satellite { + config false; + description + "Satellite operational information"; + container reload-op-statuses { + description + "Detailed breakdown of reload status table"; + list reload-op-status { + key "operation-id"; + description + "Detailed breakdown of reload status"; + leaf operation-id { + type uint32 { + range "0..4294967295"; + } + description + "Operation ID"; + } + uses ICPE-RELOAD-OP-STATUS-DETAIL; + } + } + container sdacp-redundancies { + description + "nV Satellite Redundancy Protocol Information + table"; + list sdacp-redundancy { + key "iccp-group"; + description + "nV Satellite Redundancy Protocol Information"; + leaf iccp-group { + type uint32 { + range "0..4294967295"; + } + description + "ICCP group"; + } + uses ICPE-REDUNDANCY-SESSION; + } + } + container install-shows { + description + "Detailed breakdown of install status table"; + list install-show { + key "operation-id"; + description + "Detailed breakdown of install status"; + leaf operation-id { + type uint32 { + range "0..4294967295"; + } + description + "Operation ID"; + } + uses ICPE-INSTALL-SHOW-DETAIL-TYPE; + } + } + container satellite-statuses { + description + "Satellite status information table"; + list satellite-status { + key "satellite-id"; + description + "Satellite status information"; + leaf satellite-id { + type Icpe-sat-id; + description + "Satellite ID"; + } + uses ICPE-OPER-SAT-STATUS; + } + } + container satellite-priorities { + description + "Satellite priority information table"; + list satellite-priority { + key "satellite-id"; + description + "Satellite priority information"; + leaf satellite-id { + type Icpe-sat-id; + description + "Satellite ID"; + } + uses ICPE-GCO-PRIORITY-OPER-TYPE; + } + } + container satellite-versions { + description + "Satellite remote version information table"; + list satellite-version { + key "satellite-id"; + description + "Satellite remote version information"; + leaf satellite-id { + type Icpe-sat-id; + description + "Satellite ID"; + } + uses ICPE-OPER-SAT-REMOTE-VERSION-TYPE; + } + } + container satellite-topologies { + description + "Satellite Topology Information table"; + list satellite-topology { + key "interface-name"; + description + "Satellite Topology Information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Configured Satellite Fabric Link"; + } + uses ICPE-OPER-TOPO-CSFL-TYPE; + } + } + container install-reference-info { + description + "Satellite Install Reference Information"; + container references { + description + "Install Reference Information table"; + list reference { + key "reference-name"; + description + "Install Reference Information"; + leaf reference-name { + type xr:Cisco-ios-xr-string; + description + "Reference name"; + } + uses ICPE-OPER-INSTALL-REF-INFO-TYPE; + } + } + } + container install-op-progresses { + description + "Current percentage of install table"; + list install-op-progress { + key "operation-id"; + description + "Current percentage of install"; + leaf operation-id { + type uint32 { + range "0..4294967295"; + } + description + "Operation ID"; + } + uses ICPE-INSTALL-PROGRESS; + } + } + container install { + description + "Satellite Install Information"; + container satellite-software-versions { + description + "Satellite Software Package Information table"; + list satellite-software-version { + key "satellite-id"; + description + "Satellite Software Package Information"; + leaf satellite-id { + type Icpe-sat-id; + description + "Satellite ID"; + } + uses ICPE-OPER-SAT-PACKAGE-INFORMATION-TYPE; + } + } + } + container install-op-statuses { + description + "Detailed breakdown of install status table"; + list install-op-status { + key "operation-id"; + description + "Detailed breakdown of install status"; + leaf operation-id { + type uint32 { + range "0..4294967295"; + } + description + "Operation ID"; + } + uses ICPE-INSTALL-OP-STATUS-DETAIL; + } + } + container install-image-reference-info { + description + "Satellite Install Image Reference Information"; + container references { + description + "Install Reference Information table"; + list reference { + key "reference-name"; + description + "Install Reference Information"; + leaf reference-name { + type xr:Cisco-ios-xr-string; + description + "Reference name"; + } + uses ICPE-OPER-INSTALL-IMAGE-REF-INFO-TYPE; + } + } + } + container satellite-properties { + description + "ICPE GCO operational information"; + container id-ranges { + description + "Satellite ID range table"; + list id-range { + key "sat-id-range"; + description + "Satellite ID range"; + leaf sat-id-range { + type xr:Cisco-ios-xr-string; + description + "Sat ID range"; + } + leaf min { + type Icpe-sat-id; + description + "Min"; + } + leaf max { + type Icpe-sat-id; + description + "Max"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub1.yang new file mode 100644 index 000000000..4354b9635 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub1.yang @@ -0,0 +1,323 @@ +submodule Cisco-IOS-XR-icpe-sdacp-oper-sub1 { + belongs-to Cisco-IOS-XR-icpe-sdacp-oper { + prefix Cisco-IOS-XR-icpe-sdacp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-sdacp-oper-sub2 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-sdacp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-cpm-chan-fsm-state { + type enumeration { + enum "icpe-cpm-chan-fsm-state-down" { + description + "Down"; + } + enum "icpe-cpm-chan-fsm-state-not-supported" { + description + "Not supported"; + } + enum "icpe-cpm-chan-fsm-state-closed" { + description + "Closed"; + } + enum "icpe-cpm-chan-fsm-state-opening" { + description + "Opening"; + } + enum "icpe-cpm-chan-fsm-state-opened" { + description + "Opened"; + } + enum "icpe-cpm-chan-fsm-state-open" { + description + "Open"; + } + } + description + "Icpe cpm chan fsm state"; + } + + typedef Icpe-cpm-channel-resync-state { + type enumeration { + enum "icpe-cpm-channel-resync-state-unknown" { + description + "Unknown"; + } + enum "icpe-cpm-channel-resync-state-not-in-resync" { + description + "Not in resync"; + } + enum "icpe-cpm-channel-resync-state-in-client-resync" { + description + "In client resync"; + } + enum "icpe-cpm-channel-resync-state-in-satellite-resync" { + description + "In satellite resync"; + } + } + description + "Icpe cpm channel resync state"; + } + + typedef Icpe-cpm-control-fsm-state { + type enumeration { + enum "icpe-cpm-control-fsm-state-disconnected" { + description + "Disconnected"; + } + enum "icpe-cpm-control-fsm-state-connecting" { + description + "Connecting"; + } + enum "icpe-cpm-control-fsm-state-authenticating" { + description + "Authenticating"; + } + enum "icpe-cpm-control-fsm-state-check-ing-ver" { + description + "Checking Version"; + } + enum "icpe-cpm-control-fsm-state-connected" { + description + "Connected"; + } + enum "icpe-cpm-control-fsm-state-issu" { + description + "ISSU In Progress"; + } + } + description + "Icpe cpm control fsm state"; + } + + grouping ICPE-YANG-CAPABILITIES-TLV-TYPE { + description + "ICPE YANG CAPABILITIES TLV TYPE"; + leaf type { + type uint32; + description + "Type"; + } + leaf debug { + type Xr-yang-string; + description + "Debug"; + } + list value { + description + "Value"; + leaf entry { + type uint8; + description + "Value"; + } + } + } + + grouping ICPE-YANG-CAPABILITIES-TYPE { + description + "ICPE YANG CAPABILITIES TYPE"; + list tl-vs { + description + "Capability TLVs table"; + uses ICPE-YANG-CAPABILITIES-TLV-TYPE; + } + } + + grouping ICPE-CPM-OPER-CHAN-TYPE { + description + "ICPE CPM OPER CHAN TYPE"; + container capabilities { + description + "Capabilities"; + uses ICPE-YANG-CAPABILITIES-TYPE; + } + container resync-state-timestamp { + description + "Timestamp"; + uses ICPE-TIMESTAMP-TYPE; + } + container channel-state-timestamp { + description + "Timestamp"; + uses ICPE-TIMESTAMP-TYPE; + } + leaf channel-id { + type uint16; + description + "Channel ID"; + } + leaf resync-state { + type Icpe-cpm-channel-resync-state; + description + "Resync state"; + } + leaf channel-state { + type Icpe-cpm-chan-fsm-state; + description + "Channel state"; + } + leaf control-messages-sent { + type uint64; + description + "Control messages sent"; + } + leaf normal-messages-sent { + type uint64; + description + "Normal messages sent"; + } + leaf control-messages-received { + type uint64; + description + "Control messages received"; + } + leaf normal-messages-received { + type uint64; + description + "Normal messages received"; + } + leaf control-messages-dropped { + type uint64; + description + "Control messages dropped"; + } + leaf normal-messages-dropped { + type uint64; + description + "Normal messages dropped"; + } + leaf secs-since-last-cleared { + type uint64; + units "second"; + description + "Secs since last cleared"; + } + leaf version { + type uint16; + description + "Version of the channel, sent by the satellite"; + } + } + + grouping ICPE-CPM-TIMESTAMP-TYPE { + description + "ICPE CPM TIMESTAMP TYPE"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } + + grouping ICPE-TIMESTAMP-TYPE { + description + "ICPE TIMESTAMP TYPE"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } + + grouping ICPE-CPM-OPER-SAT { + description + "SDAC Protocol Discovery information"; + container protocol-state-timestamp { + description + "Timestamp"; + uses ICPE-TIMESTAMP-TYPE; + } + container transport-error-timestamp { + description + "Timestamp"; + uses ICPE-CPM-TIMESTAMP-TYPE; + } + leaf satellite-id-xr { + type uint16; + description + "Satellite ID"; + } + leaf satellite-ip-address { + type inet:ipv4-address; + description + "Satellite IP address"; + } + leaf ip-address-auto { + type boolean; + description + "IP address auto"; + } + leaf vrf-name { + type Xr-yang-string; + description + "VRF name"; + } + leaf control-protocol-state { + type Icpe-cpm-control-fsm-state; + description + "Control protocol state"; + } + leaf transport-error { + type uint32; + description + "Transport error"; + } + list channel { + description + "Channels on satellite table"; + uses ICPE-CPM-OPER-CHAN-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub2.yang new file mode 100644 index 000000000..3f06dc6f2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub2.yang @@ -0,0 +1,411 @@ +submodule Cisco-IOS-XR-icpe-sdacp-oper-sub2 { + belongs-to Cisco-IOS-XR-icpe-sdacp-oper { + prefix Cisco-IOS-XR-icpe-sdacp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-sdacp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dpm-proto-host-state { + type enumeration { + enum "dpm-proto-host-state-idle" { + description + "Idle"; + } + enum "dpm-proto-host-state-discovered" { + description + "Discovered"; + } + enum "dpm-proto-host-state-rejecting" { + description + "Rejecting"; + } + } + description + "Dpm proto host state"; + } + + typedef Dpm-proto-state { + type enumeration { + enum "dpm-proto-state-idle" { + description + "Idle"; + } + enum "dpm-proto-state-probing" { + description + "Probing"; + } + enum "dpm-proto-state-legacy" { + description + "Legacy"; + } + enum "dpm-proto-state-configuring" { + description + "Configuring"; + } + enum "dpm-proto-state-discovered" { + description + "Discovered"; + } + enum "dpm-proto-state-rejecting" { + description + "Rejecting"; + } + enum "dpm-proto-state-seen" { + description + "Seen"; + } + } + description + "Dpm proto state"; + } + + typedef Xr-yang-string { + type string; + description + "Xr yang string"; + } + + grouping DPM-OPER-HOST-TYPE { + description + "DPM OPER HOST TYPE"; + leaf host-chassis-mac { + type yang:mac-address; + description + "Host chassis MAC"; + } + leaf host-interface-mac { + type yang:mac-address; + description + "Host interface MAC"; + } + leaf discovery-protocol-state { + type Dpm-proto-host-state; + description + "Discovery protocol state"; + } + leaf route-length { + type uint32; + description + "Route length"; + } + leaf current-timeout { + type uint32; + description + "Current timeout"; + } + leaf host-ack-packets-received { + type uint64; + description + "Host ack packets received"; + } + leaf host-ack-packets-sent { + type uint64; + description + "Host ack packets sent"; + } + leaf secs-since-pkts-cleaned { + type uint64; + units "second"; + description + "Secs since pkts cleaned"; + } + } + + grouping DPM-OPER-SAT-TYPE { + description + "DPM OPER SAT TYPE"; + leaf satellite-id { + type uint16; + description + "Satellite ID"; + } + leaf satellite-interface-id { + type uint32; + description + "Satellite interface ID"; + } + leaf satellite-interface-mac { + type yang:mac-address; + description + "Satellite interface MAC"; + } + leaf satellite-ip-address { + type inet:ipv4-address; + description + "Satellite IP address"; + } + leaf host-ip-address { + type inet:ipv4-address; + description + "Host IP address"; + } + leaf satellite-chassis-type { + type Xr-yang-string; + description + "Satellite chassis type"; + } + leaf satellite-chassis-vendor { + type Xr-yang-string; + description + "Satellite chassis vendor"; + } + leaf satellite-chassis-mac { + type yang:mac-address; + description + "Satellite chassis MAC"; + } + leaf satellite-serial-id { + type Xr-yang-string; + description + "Satellite serial id"; + } + leaf satellite-module-type { + type Xr-yang-string; + description + "Satellite module type"; + } + leaf satellite-module-vendor { + type Xr-yang-string; + description + "Satellite module vendor"; + } + leaf satellite-module-mac { + type yang:mac-address; + description + "Satellite module MAC"; + } + leaf conflict-reason { + type uint32; + description + "Conflict reason"; + } + leaf received-sys-mac { + type yang:mac-address; + description + "Received sys MAC"; + } + leaf host-chassis-type { + type Xr-yang-string; + description + "Host chassis type"; + } + leaf host-chassis-vendor { + type Xr-yang-string; + description + "Host chassis vendor"; + } + leaf host-chassis-mac { + type yang:mac-address; + description + "Host chassis MAC"; + } + leaf discovery-protocol-state { + type Dpm-proto-state; + description + "Discovery protocol state"; + } + leaf last-imdr-state { + type uint32; + description + "Last IMDR state"; + } + leaf current-timeout { + type uint32; + description + "Current timeout"; + } + leaf is-queued-for-efd { + type boolean; + description + "Is queued for EFD"; + } + leaf is-queued-for-oc { + type boolean; + description + "Is queued for OC"; + } + leaf ifmgr-state { + type boolean; + description + "Ifmgr state"; + } + leaf legacy { + type boolean; + description + "Legacy"; + } + leaf deleting { + type boolean; + description + "Deleting"; + } + leaf ident-packets-received { + type uint64; + description + "Ident packets received"; + } + leaf ready-packets-received { + type uint64; + description + "Ready packets received"; + } + leaf los-packets-received { + type uint64; + description + "Los packets received"; + } + leaf invalid-packets-received { + type uint64; + description + "Invalid packets received"; + } + leaf configuration-packets-sent { + type uint64; + description + "Configuration packets sent"; + } + leaf ack-packets-sent { + type uint64; + description + "Ack packets sent"; + } + leaf reject-packets-sent { + type uint64; + description + "Reject packets sent"; + } + leaf secs-since-pkts-cleaned { + type uint64; + units "second"; + description + "Secs since pkts cleaned"; + } + } + + grouping DPM-OPER-IF { + description + "ICPE DPM operational information"; + leaf discovery-interface-xr { + type Xr-yang-string; + description + "Discovery interface"; + } + leaf discovery-interface-handle { + type xr:Interface-name; + description + "Discovery interface handle"; + } + leaf discovery-interface-status { + type Dpm-proto-state; + description + "Discovery interface status"; + } + leaf ident-packets-received { + type uint64; + description + "Ident packets received"; + } + leaf ready-packets-received { + type uint64; + description + "Ready packets received"; + } + leaf los-packets-received { + type uint64; + description + "Los packets received"; + } + leaf invalid-packets-received { + type uint64; + description + "Invalid packets received"; + } + leaf configuration-packets-sent { + type uint64; + description + "Configuration packets sent"; + } + leaf ack-packets-sent { + type uint64; + description + "Ack packets sent"; + } + leaf reject-packets-sent { + type uint64; + description + "Reject packets sent"; + } + leaf probe-packets-sent { + type uint64; + description + "Probe packets sent"; + } + leaf host-ack-packets-received { + type uint64; + description + "Host ack packets received"; + } + leaf host-ack-packets-sent { + type uint64; + description + "Host ack packets sent"; + } + leaf secs-since-pkts-cleaned { + type uint64; + units "second"; + description + "Secs since pkts cleaned"; + } + list satellite { + description + "ICPE DPM satellite operational information table"; + uses DPM-OPER-SAT-TYPE; + } + list remote-host { + description + "ICPE DPM remote host operational information + table"; + uses DPM-OPER-HOST-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub3.yang new file mode 100644 index 000000000..7d548932e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper-sub3.yang @@ -0,0 +1,171 @@ +submodule Cisco-IOS-XR-icpe-sdacp-oper-sub3 { + belongs-to Cisco-IOS-XR-icpe-sdacp-oper { + prefix Cisco-IOS-XR-icpe-sdacp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-icpe-sdacp-oper-sub2 { + revision-date 2019-04-05; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR icpe-sdacp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ICPE-SDACP-DISC-SAT-LINK-TYPE { + description + "ICPE SDACP DISC SAT LINK TYPE"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf satellite-status { + type Dpm-proto-state; + description + "Satellite status"; + } + leaf conflict-reason { + type uint32; + description + "Conflict reason"; + } + leaf satellite-chassis-vendor { + type Xr-yang-string; + description + "Satellite chassis vendor"; + } + leaf satellite-interface-id { + type uint32; + description + "Satellite interface ID"; + } + leaf satellite-interface-mac { + type yang:mac-address; + description + "Satellite interface MAC"; + } + leaf satellite-chassis-mac { + type yang:mac-address; + description + "Satellite chassis MAC"; + } + leaf satellite-serial-id { + type Xr-yang-string; + description + "Satellite serial id"; + } + leaf satellite-module-vendor { + type Xr-yang-string; + description + "Satellite module vendor"; + } + } + + grouping ICPE-SDACP-SAT-TYPE { + description + "ICPE SDACP SAT TYPE"; + leaf satellite-id { + type uint16; + description + "Satellite ID"; + } + leaf satellite-status { + type Dpm-proto-state; + description + "Satellite status"; + } + leaf conflict-reason { + type uint32; + description + "Conflict reason"; + } + leaf satellite-ip-address { + type inet:ipv4-address; + description + "Satellite IP address"; + } + leaf host-ip-address { + type inet:ipv4-address; + description + "Host IP address"; + } + list interface { + description + "ICPE Discovered satellite state information + table"; + uses ICPE-SDACP-DISC-SAT-LINK-TYPE; + } + } + + grouping ICPE-SDACP-DISC-SFL-TYPE { + description + "ICPE SDACP DISC SFL TYPE"; + leaf interface-name { + type Xr-yang-string; + description + "Interface name"; + } + leaf interface-status { + type Dpm-proto-state; + description + "Interface status"; + } + } + + grouping ICPE-SDACP-CFG-SFL { + description + "ICPE Configured interface state information"; + leaf interface-name-xr { + type Xr-yang-string; + description + "Interface name"; + } + list interface { + description + "ICPE Discovery interface state information table"; + uses ICPE-SDACP-DISC-SFL-TYPE; + } + list satellite { + description + "ICPE Satellite state information table"; + uses ICPE-SDACP-SAT-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper.yang new file mode 100644 index 000000000..b7cfe9b44 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-icpe-sdacp-oper.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-icpe-sdacp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-icpe-sdacp-oper"; + prefix icpe-sdacp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-icpe-infra-oper { + prefix a1; + } + include Cisco-IOS-XR-icpe-sdacp-oper-sub3 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-sdacp-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-icpe-sdacp-oper-sub1 { + revision-date 2019-04-05; + } + + 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 icpe-sdacp package operational data. + + This YANG module augments the + Cisco-IOS-XR-icpe-infra-oper + module with state data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Icpe-sat-id { + type uint32 { + range "100..65534"; + } + description + "Icpe sat id"; + } + + augment "/a1:nv-satellite" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-icpe-infra-oper'"; + container sdacp-discovery2s { + description + "ICPE Configured interface state information + table"; + list sdacp-discovery2 { + key "interface-name"; + description + "ICPE Configured interface state information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ICPE-SDACP-CFG-SFL; + } + } + } + augment "/a1:nv-satellite" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-icpe-infra-oper'"; + container icpe-dpms { + description + "ICPE DPM operational information table"; + list icpe-dpm { + key "discovery-interface"; + description + "ICPE DPM operational information"; + leaf discovery-interface { + type xr:Interface-name; + description + "Discovery interface"; + } + uses DPM-OPER-IF; + } + } + } + augment "/a1:nv-satellite" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-icpe-infra-oper'"; + container sdacp-controls { + description + "SDAC Protocol Discovery information table"; + list sdacp-control { + key "satellite-id"; + description + "SDAC Protocol Discovery information"; + leaf satellite-id { + type Icpe-sat-id; + description + "Satellite ID"; + } + uses ICPE-CPM-OPER-SAT; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-cfg.yang new file mode 100644 index 000000000..dcb0d7d5c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-cfg.yang @@ -0,0 +1,219 @@ +module Cisco-IOS-XR-iedge4710-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-iedge4710-cfg"; + prefix iedge4710-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 iedge4710 package configuration. + + This module contains definitions + for the following management objects: + subscriber-manager: iEdge subscriber manager configuration + subscriber-featurette: iEdge subscriber featurette + configuration + iedge-license-manager: Session License Manager Configuration + sub-manager: iEdge subscriber manager configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-05 { + description + "Added leaf related to clear service stats response status. + 2022-04-20 + added dynamic template session acct config in Yang + 2021-01-16 + added dynamic template in session acct."; + semver:module-version "1.2.0"; + } + revision 2020-10-14 { + description + "added srg acct start time."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container service-policies { + description + "Interface control subscriber policy + configuration"; + list service-policy { + key "service-policy-name"; + description + "Service policy to be applied to access + interface for subscribers"; + leaf service-policy-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + } + } + } + container subscriber-manager { + description + "iEdge subscriber manager configuration"; + container accounting { + description + "iEdge accounting feature"; + container send-stop { + description + "Accounting send stop feature"; + container setup-failure { + description + "Setup failure feature"; + leaf method-list-name { + type string; + description + "AAA List name either default or preconfigured"; + } + } + } + container dyn-tmpl-sess-acct { + description + "dynamic template in session accounting configs"; + leaf enable { + type boolean; + default "false"; + description + "allow dynamic template in session accounting"; + } + } + container interim { + description + "interim accounting related"; + container variation { + description + "variation of first session or service interim + record from configured timeout"; + leaf maximum-percentage-variation { + type uint32 { + range "0..50"; + } + units "percentage"; + description + "maximum percentage variation (maximum + absolute variation is 15 minutes)"; + } + } + } + } + container srg { + description + "SRG specific config"; + leaf account-start-time { + type empty; + description + "acct start time ref to srg role change slave to + master"; + } + leaf sync-account-session-id { + type empty; + description + "sync account session id from master to slave"; + } + } + } + container subscriber-featurette { + description + "iEdge subscriber featurette configuration"; + list featurette-name { + key "featurette"; + description + "enable featurette processing"; + leaf enable { + type uint32; + description + "instance of featurette"; + } + leaf featurette { + type xr:Cisco-ios-xr-string; + description + "subscriber feature"; + } + } + } + container iedge-license-manager { + description + "Session License Manager Configuration"; + leaf session-limit { + type uint32 { + range "1..200000"; + } + description + "Session limit configured on linecard"; + } + } + container sub-manager { + description + "iEdge subscriber manager configuration"; + list location { + key "location1"; + description + "Select location"; + container trace { + description + "Subscriber manager trace"; + leaf trace-level { + type uint32; + description + "Subscriber manager trace level"; + } + } + leaf history { + type empty; + description + "Disable history for subscriber manager"; + } + leaf location1 { + type xr:Cisco-ios-xr-string; + description + "Specify location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub1.yang new file mode 100644 index 000000000..28b004e69 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub1.yang @@ -0,0 +1,103 @@ +submodule Cisco-IOS-XR-iedge4710-oper-sub1 { + belongs-to Cisco-IOS-XR-iedge4710-oper { + prefix Cisco-IOS-XR-iedge4710-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR iedge4710 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-12 { + description + "Added new leaf related to subscriber performance stats + 2022-08-17 + Added srg peer EOMS status in detail internal and disconnect history. + 2021-09-27 + New CLI added to display session summary counters"; + semver:module-version "4.1.0"; + } + revision 2021-09-03 { + description + "Disconnect last sensor path get the chunk of 200 items so enhance this path to per entry to avoid tcp connection flaps between telemetry server and BNG."; + semver:module-version "4.0.0"; + } + revision 2020-12-24 { + description + "Updated acct stop internal stats. + 2020-11-21 + Added statsd event to session export. + 2020-11-02 + Added yang paths to support ADT + 2020-10-23 + Added disc queue statistics. + 2020-10-09 + Added acct stop statistics. + 2020-08-24 + Added Feature ID to session export."; + semver:module-version "3.0.0"; + } + revision 2020-02-20 { + description + "Added FADB statistics. + 2020-01-04 + Added disconnect history support."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-09-20 { + description + "Fixed yang gaps."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ISLM-SUMMARY-DATA { + description + "ISLM SUMMARY DATA"; + leaf session-limit { + type uint32; + description + "configured session limit"; + } + leaf session-threshold { + type uint32; + description + "configured session threshold"; + } + leaf session-license-count { + type uint32; + description + "number of license"; + } + leaf session-count { + type uint32; + description + "number of sessions"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub2.yang new file mode 100644 index 000000000..5ef4cd78f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper-sub2.yang @@ -0,0 +1,2300 @@ +submodule Cisco-IOS-XR-iedge4710-oper-sub2 { + belongs-to Cisco-IOS-XR-iedge4710-oper { + prefix Cisco-IOS-XR-iedge4710-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR iedge4710 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-12 { + description + "Added new leaf related to subscriber performance stats + 2022-08-17 + Added srg peer EOMS status in detail internal and disconnect history. + 2021-09-27 + New CLI added to display session summary counters"; + semver:module-version "4.1.0"; + } + revision 2021-09-03 { + description + "Disconnect last sensor path get the chunk of 200 items so enhance this path to per entry to avoid tcp connection flaps between telemetry server and BNG."; + semver:module-version "4.0.0"; + } + revision 2020-12-24 { + description + "Updated acct stop internal stats. + 2020-11-21 + Added statsd event to session export. + 2020-11-02 + Added yang paths to support ADT + 2020-10-23 + Added disc queue statistics. + 2020-10-09 + Added acct stop statistics. + 2020-08-24 + Added Feature ID to session export."; + semver:module-version "3.0.0"; + } + revision 2020-02-20 { + description + "Added FADB statistics. + 2020-01-04 + Added disconnect history support."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-09-20 { + description + "Fixed yang gaps."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Iedge-oper-service-status { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "error" { + description + "Error"; + } + enum "new" { + description + "New"; + } + enum "loading" { + description + "Loading"; + } + enum "req-association" { + description + "Request Association"; + } + enum "associated" { + description + "Associated"; + } + enum "req-pd-association" { + description + "Request PD Association"; + } + enum "applied" { + description + "Applied"; + } + enum "req-unassociation" { + description + "Request Unassociation"; + } + enum "req-pd-unassociation" { + description + "Request PD Unassociation"; + } + enum "unapplied" { + description + "Unapplied"; + } + enum "max" { + description + "Max"; + } + } + description + "Subscriber service status"; + } + + typedef Iedge-oper-service { + type enumeration { + enum "unknown" { + description + "Unknown Service"; + } + enum "profile" { + description + "Profile"; + } + enum "template" { + description + "Template"; + } + enum "grp-template" { + description + "GRP Template"; + } + enum "ppp-template" { + description + "PPP Template"; + } + enum "eth-template" { + description + "ETH Template"; + } + enum "ip-sub-template" { + description + "IPSub Template"; + } + enum "multi-template" { + description + "Multi Template"; + } + enum "max-templae" { + description + "MAX Template"; + } + } + description + "Service types"; + } + + typedef Iedge-oper-session-state { + type enumeration { + enum "initialize" { + description + "Initialize"; + } + enum "connecting" { + description + "Connecting"; + } + enum "connected" { + description + "Connected"; + } + enum "activated" { + description + "Activated"; + } + enum "idle" { + description + "Idle"; + } + enum "disconnecting" { + description + "Disconnecting"; + } + enum "end" { + description + "End"; + } + } + description + "Subscriber session states"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Hex-binary { + type yang:hex-string; + description + "Hex binary data"; + } + + typedef Ipv4-address { + type inet:ipv4-address; + description + "IP address type"; + } + + typedef Iedge-ppp-sub { + type enumeration { + enum "pta" { + description + "PPP termination and aggregation"; + } + enum "lac" { + description + "L2TP access controller"; + } + } + description + "PPPoE sub types"; + } + + typedef Iedge-oper-session { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "pppoe" { + description + "PPPoE/PPP client"; + } + enum "ppp" { + description + "PPP serial client"; + } + enum "ip-packet-trigger" { + description + "IP subscriber - packet trigger"; + } + enum "ip-packet-dhcp-trigger" { + description + "IP subscriber - DHCP trigger"; + } + } + description + "Subscriber session types"; + } + + grouping SUBSCRIBER-SESSION-AF-COUNTS { + description + "Subscriber address family session counts"; + leaf in-progress-sessions { + type uint32; + description + "Sessions with undecided address family"; + } + leaf ipv4-only-sessions { + type uint32; + description + "IPv4 only sessions "; + } + leaf ipv6-only-sessions { + type uint32; + description + "IPv6 only sessions "; + } + leaf dual-part-up-sessions { + type uint32; + description + "Dual stack partially up sessions"; + } + leaf dual-up-sessions { + type uint32; + description + "Dual stack up sessions"; + } + leaf lac-sessions { + type uint32; + description + "LAC sessions"; + } + } + + grouping SUBSCRIBER-SESSION-AF-SUMMARY { + description + "Subscriber session address family summary + information"; + container pppoe { + description + "PPPoE summary"; + uses SUBSCRIBER-SESSION-AF-COUNTS; + } + container ip-subscriber-dhcp { + description + "IP subscriber DHCP summary"; + uses SUBSCRIBER-SESSION-AF-COUNTS; + } + container ip-subscriber-packet { + description + "IP subscriber packet summary"; + uses SUBSCRIBER-SESSION-AF-COUNTS; + } + } + + grouping SUBSCRIBER-SESSION-STATE-COUNTS { + description + "Subscriber state session counts"; + leaf initialized-sessions { + type uint32; + description + "Sessions in initialized state"; + } + leaf connecting-sessions { + type uint32; + description + "Sessions in connecting state"; + } + leaf connected-sessions { + type uint32; + description + "Sessions in connected state"; + } + leaf activated-sessions { + type uint32; + description + "Sessions in activated state"; + } + leaf idle-sessions { + type uint32; + description + "Sessions in idle state"; + } + leaf disconnecting-sessions { + type uint32; + description + "Sessions in disconnecting state"; + } + leaf end-sessions { + type uint32; + description + "Sessions in end state"; + } + } + + grouping SUBSCRIBER-SESSION-STATE-SUMMARY { + description + "Subscriber session state summary information"; + container pppoe { + description + "PPPoE summary"; + uses SUBSCRIBER-SESSION-STATE-COUNTS; + } + container ip-subscriber-dhcp { + description + "IP subscriber DHCP summary"; + uses SUBSCRIBER-SESSION-STATE-COUNTS; + } + container ip-subscriber-packet { + description + "IP subscriber packet summary"; + uses SUBSCRIBER-SESSION-STATE-COUNTS; + } + } + + grouping SUBSCRIBER-SESSION-SUMMARY { + description + "Subscriber session summary information"; + container state-xr { + description + "State summary"; + uses SUBSCRIBER-SESSION-STATE-SUMMARY; + } + container address-family-xr { + description + "Address family summary"; + uses SUBSCRIBER-SESSION-AF-SUMMARY; + } + } + + grouping IEDGE-STATS-SRG-DATA { + description + "Geo Redundancy statistics"; + leaf txlist-send-triggered { + type uint32; + description + "Txlist Send Triggered"; + } + leaf txlist-send-failed { + type uint32; + description + "Txlist Send Failed"; + } + leaf txlist-send-failed-notactive { + type uint32; + description + "Txlist send failed due to not active"; + } + leaf actual-txlist-sent { + type uint32; + description + "Txlist Send Success"; + } + leaf alreadyin-txlist { + type uint32; + description + "Element already in Txlist"; + } + leaf txlist-encode { + type uint32; + description + "Txlist Encode"; + } + leaf txlist-encode-fail { + type uint32; + description + "Txlist encode Failed"; + } + leaf create-update-encode { + type uint32; + description + "Txlist Create Update Encode"; + } + leaf delete-encode { + type uint32; + description + "Txlist Delete Encode"; + } + leaf create-upd-clean-callback { + type uint32; + description + "Txlist Create/update clean callback"; + } + leaf delete-clean-callback { + type uint32; + description + "Txlist Delete clean callback"; + } + leaf slave-recv-entry { + type uint32; + description + "Slave Recieved Sync"; + } + leaf slave-decode-fail { + type uint32; + description + "Decode failed on Slave"; + } + leaf slave-create-update { + type uint32; + description + "Create Update received on slave"; + } + leaf slave-delete { + type uint32; + description + "Delete received on slave"; + } + leaf srg-context-malloc { + type uint32; + description + "SRG context allocated"; + } + leaf srg-context-free { + type uint32; + description + "SRG context freed"; + } + leaf sod-count { + type uint32; + description + "Number of SODs Received"; + } + leaf eod-count { + type uint32; + description + "Number of EODs Received"; + } + leaf sod-eod-replay-req-count { + type uint32; + description + "Number of Replay Requests Within SOD EOD Window"; + } + leaf sod-eod-dirty-mark-count { + type uint32; + description + "Number of Sessions Marked as Invalid Within SOD + EOD Window"; + } + leaf sod-eod-dirty-delete-count { + type uint32; + description + "Number of Sessions Invalid Deletes Within SOD + EOD Window"; + } + leaf ack-to-srg { + type uint32; + description + "Number of ACKs sent to Srg"; + } + leaf nack-to-srg { + type uint32; + description + "Number of NACKs sent to Srg"; + } + leaf nack-to-srg-fail-cnt { + type uint32; + description + "Number of NACKs Failed to send to Srg"; + } + leaf txlist-remove-all { + type uint32; + description + "Number of Txlist remove all calls"; + } + leaf txlist-del-sync { + type uint32; + description + "Number for Txlist delete for sync msg"; + } + leaf txlist-del-sync-notlinked { + type uint32; + description + "Number of Txlist delete for sync which are not + linked"; + } + leaf txlist-del-app { + type uint32; + description + "Number of Txlist delete for App msg"; + } + leaf txlist-del-app-notlinked { + type uint32; + description + "Number of Txlist delete for App which are not + linked"; + } + leaf txlist-clean-invalid-state { + type uint32; + description + "Number of Txlist Cleanup called on Invalid + subscriber srg state"; + } + leaf txlist-remove-all-internal-error { + type uint32; + description + "Number of Internal errors upon Master Txlist + remove all call"; + } + leaf is-srg-flow-control-enabled { + type boolean; + description + "Flag indicating SRG Flow control enabled or not"; + } + leaf max-inflight-sessoin-count { + type uint32; + description + "Maximum no.of inflight sessions allowed"; + } + leaf flow-control-resume-threshold { + type uint32; + description + "Threshold Limit to resume the flow control"; + } + leaf inflight-session-count { + type uint32; + description + "No.of Sessions inflight at given time"; + } + leaf inflight-add-count { + type uint32; + description + "No.of inflight sessions added"; + } + leaf inflight-under-run-count { + type uint32; + description + "Inflight Underrun Counter"; + } + leaf inflight-alloc-fails { + type uint32; + description + "Memory Alloc Failures for Inflight Entry"; + } + leaf inflight-insert-failures { + type uint32; + description + "Inflight Entry Insert Failures"; + } + leaf inflight-deletes { + type uint32; + description + "Inflight Deletes Count"; + } + leaf inflight-not-found { + type uint32; + description + "Inflight Entries not found during delete"; + } + leaf inflight-delete-failures { + type uint32; + description + "Inflight Entry Delete Failures"; + } + leaf total-pause-count { + type uint32; + description + "Total No.of times Pause is Enabled"; + } + leaf total-resume-count { + type uint32; + description + "Total No.of times Resume is triggered"; + } + leaf total-dont-send-to-txlist { + type uint32; + description + "Total No of times Dont send to Txlist"; + } + leaf total-srg-txlist-no-add-restore-flag-set { + type uint32; + description + "Total No of times restore flag found set"; + } + leaf total-srg-not-master { + type uint32; + description + "Total No of times SRG Not Master"; + } + leaf total-master-eoms-pending { + type uint32; + description + "Total No of times Master EOMS Pending"; + } + leaf total-master-eoms-pending-cleared { + type uint32; + description + "Total No of times Master EOMS Pending Cleared"; + } + leaf last-pause-period { + type uint64; + description + "Amount of time paused during last flow control + window"; + } + leaf total-pause-time { + type uint64; + description + "Total Amount of time paused during all flow + control windows"; + } + leaf last-pause-time { + type uint64; + description + "Timestamp of recent Pause Event"; + } + leaf last-resume-time { + type uint64; + description + "Timestamp of recent Resume Event"; + } + } + + grouping IEDGE-STATS-FADB-DATA { + description + "FADB statistics"; + leaf fadb-cleanup-sub-count { + type uint32; + description + "Total num of times FADB cleanup by sublable"; + } + leaf fadb-cleanup-ha-count { + type uint32; + description + "Total num of times FADB delete records during HA + that are invalid"; + } + leaf fadb-cleanup-by-ifh-count { + type uint32; + description + "Total num of times FADB delete records by ifh"; + } + leaf fadb-cleanup-by-ifh-serv-count { + type uint32; + description + "Total num of times FADB delete records by ifh + and service"; + } + leaf fadb-cleanup-by-ifh-ha-count { + type uint32; + description + "Total num of times FADB delete records by ifh + during HA that are invalid"; + } + } + + grouping IEDGE-STATS-DISC-QUEUE-DATA { + description + "Disc queue statistics"; + leaf sess-disc-inflight-req { + type uint32; + description + "Total num of times disc inflight req sent to + subscriber fsm"; + } + leaf sess-disc-inflight-res { + type uint32; + description + "Total num of times disc inflight res received + from subscriber fsm"; + } + leaf disc-queue-count { + type uint32; + description + "Num of session disconnects are in queue"; + } + leaf disc-quota-remaining { + type uint32; + description + "Session disconnect queue quota remaining"; + } + leaf disc-quota { + type uint32; + description + "Session Disconnect Quota"; + } + leaf ppsm-fsm-is-congestion { + type boolean; + description + "PPSM FSM is congestion"; + } + leaf ppsm-trans-fsm-congestion-count { + type uint32; + description + "PPSM trans FSM congestion count"; + } + leaf txn-cnt-per-sec { + type uint32; + description + "PPSM Transition per sec"; + } + leaf creates-per-sec { + type uint32; + description + "Session creation per sec"; + } + leaf congest-per-sec { + type uint32; + description + "Congestion per sec"; + } + leaf discont-per-sec { + type uint32; + description + "Disconnects per sec"; + } + leaf avg-discont-per-sec { + type uint32; + description + "Avg disconnects per sec"; + } + leaf last-congestion-set-time { + type uint64; + description + "Timestamp of recent congestion set"; + } + leaf last-congestion-clr-time { + type uint64; + description + "Timestamp of recent congestion clear"; + } + leaf-list congestion-set-time-info { + type uint64; + units "second"; + description + "List Timestamp(epoch, in seconds) of recent + congestion set"; + } + } + + grouping IEDGE-DEBUG-TRACEPOINT-DATA { + description + "Iedge tracepoint debug stats"; + leaf trace-info { + type uint32; + description + "Tracepoint information "; + } + leaf text { + type string; + description + "Tracepoint text"; + } + leaf traceindex-xr { + type uint32; + description + "Tracepoint index"; + } + } + + grouping IEDGE-STATS-SUMMARY-DATA { + description + "Summary statistics"; + leaf no-subscriber-control-policy-on-interface { + type uint64; + description + "Subscriber control policy not applied on + interface"; + } + leaf no-class-match-in-start-request { + type uint64; + description + "No control policy class match during subscriber + start"; + } + leaf nas-port-attribute-format-warnings { + type uint64; + description + "NAS port attribute format warnings"; + } + leaf nas-port-id-attribute-format-warnings { + type uint64; + description + "NAS port ID attribute format warnings"; + } + leaf destination-station-id-attribute-format-warnings { + type uint64; + description + "Destination station ID attribute format warnings"; + } + leaf calling-station-id-attribute-format-warnings { + type uint64; + description + "Calling station ID attribute format warnings"; + } + leaf username-attribute-format-warnings { + type uint64; + description + "Username attribute format warnings"; + } + leaf install-user-profiles { + type uint64; + description + "User profiles installed"; + } + leaf user-profile-install-errors { + type uint64; + description + "User profile install errors"; + } + leaf user-profile-removals { + type uint64; + description + "User profile removals"; + } + leaf user-profile-errors { + type uint64; + description + "User profile errors"; + } + leaf sess-disc-quota-exhausts { + type uint64; + description + "Session Disconnect Quota Exhausts"; + } + leaf sess-disc-no-quota { + type uint64; + description + "Session Disconnect Request Queued, no quota"; + } + leaf sess-disc-quota-avail { + type uint64; + description + "Session Disconnect Request Accepted, quota + available"; + } + leaf sess-disc-recon-ip { + type uint64; + description + "Session Disconnect Requests not Dequeued, + reconciliation in progress"; + } + leaf sess-disc-none-started { + type uint64; + description + "Session Disconnect Requests not Dequeued, no + quota"; + } + leaf sess-disc-quota { + type uint32; + description + "Session Disconnect Quota"; + } + leaf sess-disc-quota-remaining { + type uint32; + description + "Session Disconnect Quota Remaining"; + } + leaf sess-disc-q-count { + type uint32; + description + "Session Disconnect Requests Queued"; + } + } + + grouping IEDGE-OPER-COA-DATA { + description + "IEDGE OPER COA DATA"; + leaf request-acked { + type boolean; + description + "Coa Request Acked"; + } + leaf request-time-epoch { + type uint64; + units "second"; + description + "Request time in epoch seconds"; + } + leaf reply-time-epoch { + type uint64; + units "second"; + description + "Reply time in epoch seconds"; + } + } + + grouping IEDGE-OPER-SERVICE-DATA { + description + "Subscriber service information"; + leaf service-name { + type string; + description + "ServiceName"; + } + leaf service-params { + type string; + description + "ServiceParams"; + } + leaf service-type { + type Iedge-oper-service; + description + "ServiceType"; + } + leaf service-status { + type Iedge-oper-service-status; + description + "ServiceStatus"; + } + leaf service-id { + type uint32; + description + "ServiceIdentifier"; + } + leaf service-prepaid { + type boolean; + description + "ServicePrepaid"; + } + } + + grouping IEDGE-POLICY-DATA { + description + "Subscriber policy information"; + leaf policy-epoch { + type string; + description + "Matching event, condition and executed actions"; + } + } + + grouping ACCT-LAST-STATS-DATA { + description + "Subscriber accounting last stats"; + leaf bytes-in { + type uint32; + units "byte"; + description + "Bytes received from a port"; + } + leaf input-giga-words { + type uint32; + description + "Number of times that Acct-Input-Octets has + wrapped"; + } + leaf bytes-out { + type uint32; + units "byte"; + description + "Bytes sent to a port"; + } + leaf output-giga-words { + type uint32; + description + "Number of times that Acct-Output-Octets has + wrapped"; + } + } + + grouping IEDGE-OPER-ACCOUNTING-DATA { + description + "Session/Service accounting information"; + container last-stats { + description + "Stats sent in last accounting request"; + uses ACCT-LAST-STATS-DATA; + } + leaf feature-id { + type uint32; + description + "Feature id for FADB Record data"; + } + leaf accounting-state-rc { + type uint32; + description + "Accounting State Error Code for Accounting + Session"; + } + leaf accounting-stop-state { + type uint32; + description + "Accounting Stop State"; + } + leaf record-context-name { + type string; + description + "Accounting record context name"; + } + leaf method-list-name { + type string; + description + "AAA method list name used to perform accounting"; + } + leaf account-session-id { + type string; + description + "Accounting session ID"; + } + leaf accounting-start-time-epoch { + type uint64; + units "second"; + description + "Accounting start time in epoch-seconds"; + } + leaf is-interim-accounting-enabled { + type boolean; + description + "True if interim accounting is enabled"; + } + leaf interim-interval { + type uint32; + units "minute"; + description + "Interim accounting interval (in minutes)"; + } + leaf last-successful-interim-update-time-epoch { + type uint64; + units "second"; + description + "Time of last successful interim update in + epoch-seconds "; + } + leaf last-unsuccessful-interim-update-time-epoch { + type uint64; + units "second"; + description + "Time of last unsuccessful interim update in + epoch-seconds "; + } + leaf next-interim-update-attempt-time { + type uint32; + units "second"; + description + "Time of next interim update attempt (in seconds)"; + } + leaf last-interim-update-attempt-time-epoch { + type uint64; + units "second"; + description + "Time of last interim update attempt in + epoch-seconds"; + } + leaf sent-interim-updates { + type uint32; + description + "Number of interim updates sent"; + } + leaf accepted-interim-updates { + type uint32; + description + "Number of interim updates accepted"; + } + leaf rejected-interim-updates { + type uint32; + description + "Number of interim updates rejected"; + } + leaf sent-interim-update-failures { + type uint32; + description + "Number of interim update send failures"; + } + leaf clear-stats-response-rcvd { + type boolean; + description + "True if clear stats response rcvd"; + } + } + + grouping IEDGE-ACCNT-DATA { + description + "Accounting information"; + list accounting-session { + description + "Accounting information"; + uses IEDGE-OPER-ACCOUNTING-DATA; + } + } + + grouping SUBSCRIBER-SESSION-DATA { + description + "Subscriber session information"; + container accounting { + description + "Accounting information"; + uses IEDGE-ACCNT-DATA; + } + leaf session-type { + type Iedge-oper-session; + description + "Subscriber session type"; + } + leaf pppoe-sub-type { + type Iedge-ppp-sub; + description + "PPPoE sub type"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf circuit-id { + type string; + description + "Circuit ID"; + } + leaf remote-id { + type string; + description + "Remote ID"; + } + leaf lns-address { + type Ipv4-address; + description + "PPPoE LNS address"; + } + leaf lac-address { + type Ipv4-address; + description + "PPPoE LAC address"; + } + leaf tunnel-client-authentication-id { + type string; + description + "PPPoE LAC tunnel client authentication ID"; + } + leaf tunnel-server-authentication-id { + type string; + description + "PPPoE LAC tunnel server authentication ID"; + } + leaf session-ip-address { + type Ipv4-address; + description + "Session ip address"; + } + leaf session-ipv6-address { + type string; + description + "Session IPv6 address"; + } + leaf session-ipv6-prefix { + type string; + description + "Session IPv6 prefix"; + } + leaf delegated-ipv6-prefix { + type string; + description + "Session delegated IPv6 prefix"; + } + leaf ipv6-interface-id { + type Hex-binary; + description + "IPv6 Interface ID"; + } + leaf mac-address { + type Mac-address; + description + "MAC address"; + } + leaf account-session-id { + type string; + description + "Accounting session ID"; + } + leaf nas-port { + type string; + description + "NAS port"; + } + leaf username { + type string; + description + "Username"; + } + leaf clientname { + type string; + description + "Client Username"; + } + leaf formattedname { + type string; + description + "Formatted Username"; + } + leaf is-session-authentic { + type boolean; + description + "If true, session is authentic"; + } + leaf is-session-author { + type boolean; + description + "If true, session is authorized"; + } + leaf session-state { + type Iedge-oper-session-state; + description + "Session state"; + } + leaf session-creation-time-epoch { + type uint64; + units "second"; + description + "Session creation time in epoch seconds"; + } + leaf idle-state-change-time { + type string; + description + "Time when idle state change occurred in DDD MMM + DD HH:MM:SS YYYY format eg: Tue Apr 11 21:30:47 + 2011"; + } + leaf total-session-idle-time { + type uint32; + units "second"; + description + "Total session idle time (in seconds)"; + } + leaf access-interface-name { + type xr:Interface-name; + description + "Access interface name associated with the + session"; + } + leaf accounting-stop-fail-rc { + type uint32; + description + "Accounting Stop Error Code for Accounting + Session"; + } + list sub-policy-data { + description + "Subscriber control policy applied to this + session"; + uses IEDGE-POLICY-DATA; + } + list session-service-info { + description + "List of subscriber services associated to this + session"; + uses IEDGE-OPER-SERVICE-DATA; + } + list session-change-of-authorization { + description + "Subscriber change of authorization information"; + uses IEDGE-OPER-COA-DATA; + } + } + + grouping IEDGE-DISCONNECT-DATA { + description + "IEDGE DISCONNECT DATA"; + container session-data { + description + "Session data"; + uses SUBSCRIBER-SESSION-DATA; + } + leaf disc-reason-xr { + type string; + description + "Disconnect reason"; + } + leaf session-count { + type uint32; + description + "Number of sessions that disconnected this way"; + } + leaf latest-activity { + type uint32; + description + "Latest activity"; + } + leaf if-name { + type string; + description + "Interface name"; + } + } + + grouping IEDGE-STATS-DISCONNECT-DATA { + description + "Disconnect data"; + list history-data { + description + "List of disconnect history items"; + uses IEDGE-DISCONNECT-DATA; + } + } + + grouping IEDGE-STATS-CH-REQ-STATS { + description + "Change of authorization request statistics"; + leaf received-requests { + type uint64; + description + "Received requests"; + } + leaf acknowledged-requests { + type uint64; + description + "Acknowledged requests"; + } + leaf non-acknowledged-requests { + type uint64; + description + "Non acknowledged requests"; + } + } + + grouping IEDGE-STATS-CH-DATA { + description + "Change of authorization statistics"; + container account-logon { + description + "Account logon request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + container account-logoff { + description + "Account logoff request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + container account-update { + description + "Account update request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + container session-disconnect { + description + "Session disconnect request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + container single-service-logon { + description + "Service logon request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + container single-service-logoff { + description + "Single Service logoff request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + container single-service-modify { + description + "Single Service Modify request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + container service-multi { + description + "MA-CoA Service request statistics"; + uses IEDGE-STATS-CH-REQ-STATS; + } + leaf unknown-account-cmd-resps { + type uint64; + description + "Responses to unknown account command"; + } + leaf unknown-service-cmd-resps { + type uint64; + description + "Responses to unknown service command"; + } + leaf unknown-cmd-resps { + type uint64; + description + "Responses to unknown command"; + } + leaf attr-list-retrieve-failure-resps { + type uint64; + description + "Responses to attribute list failure errors"; + } + leaf resp-send-failure { + type uint64; + description + "Response send failures"; + } + leaf internal-err-resps { + type uint64; + description + "Responses to internal error"; + } + leaf service-profile-push-failure-resps { + type uint64; + description + "Responses to service profile push failures"; + } + leaf no-cmd-resps { + type uint64; + description + "Responses empty (no command) COA request"; + } + leaf no-session-found-resps { + type uint64; + description + "Responses to COA with unknown session identifier"; + } + leaf no-session-peer-resps { + type uint64; + description + "Responses to session peer not found error"; + } + } + + grouping IEDGE-STATS-COORD-ALL-DATA { + description + "IEDGE STATS COORD ALL DATA"; + container accounting-statistics { + description + "List of stats for accounting"; + uses IEDGE-STATS-COORD-ACCT-DATA; + } + container authentication-statistics { + description + "List of stats for authentication"; + uses IEDGE-STATS-COORD-AUTH-DATA; + } + container authorization-statistics { + description + "List of stats for authorization"; + uses IEDGE-STATS-COORD-AUTH-DATA; + } + container change-of-authorization-statistics { + description + "List of stats for COA"; + uses IEDGE-STATS-CH-DATA; + } + container mobility-statistics { + description + "List of stats for Mobility"; + uses IEDGE-STATS-MOB-DATA; + } + } + + grouping IEDGE-COORD-STOP-STORAGE-ACCT-STATS-DATA { + description + "AAA acct stop record acct stats bag info"; + leaf rec-sess-stop-req { + type uint64; + description + "Acct record sess stop req stats"; + } + leaf rec-sess-stop-err { + type uint64; + description + "Acct record sess stop req error stats"; + } + leaf rec-sess-stop-snt { + type uint64; + description + "Acct record sess stop req sent stats"; + } + leaf rec-sess-stop-succ { + type uint64; + description + "Acct record sess stop response success"; + } + leaf rec-sess-stop-fail { + type uint64; + description + "Acct record sess stop response fail"; + } + leaf rec-serv-stop-req { + type uint64; + description + "Acct record serv stop req stats"; + } + leaf rec-serv-stop-err { + type uint64; + description + "Acct record serv stop req error stats"; + } + leaf rec-serv-stop-snt { + type uint64; + description + "Acct record serv stop req sent stats"; + } + leaf rec-serv-stop-succ { + type uint64; + description + "Acct record serv stop response success"; + } + leaf rec-serv-stop-fail { + type uint64; + description + "Acct record serv stop response fail"; + } + leaf rec-srg-stop-retry-req { + type uint64; + description + "Acct record srg stop retry req"; + } + leaf rec-srg-stop-retry-req-err { + type uint64; + description + "Acct record srg stop retry req error"; + } + leaf rec-srg-stop-retry-req-snt { + type uint64; + description + "Acct record srg stop retry req sent"; + } + leaf rec-srg-stop-start-req { + type uint64; + description + "Acct record srg stop start req"; + } + leaf rec-srg-stop-start-req-err { + type uint64; + description + "Acct record srg stop start req error"; + } + leaf rec-srg-stop-start-req-snt { + type uint64; + description + "Acct record srg stop start req sent"; + } + } + + grouping IEDGE-COORD-STOP-STORAGE-INT-DATA { + description + "AAA accounting stop storage internal bag info"; + leaf get-free-index { + type uint64; + description + "Num of Free Index Requests Received"; + } + leaf get-free-index-err { + type uint64; + description + "Num of Free Index Requests Errored"; + } + leaf offset-q-init { + type uint64; + description + "Num of times OffsetQ initialized"; + } + leaf stop-rec-data-init { + type uint64; + description + "Num of times Stop Rec Data initialized"; + } + leaf alloc-free-list-fail { + type uint64; + description + "Alloc free list creation failed"; + } + leaf alloc-free-list-succ { + type uint64; + description + "Alloc free list creation succ"; + } + leaf rec-chkpt-init-fail { + type uint64; + description + "Rec chkpt init failed"; + } + leaf rec-chkpt-init-succ { + type uint64; + description + "Rec chkpt init Success"; + } + leaf rec-chkpt-restore-succ { + type uint64; + description + "Rec chkpt restore succ"; + } + leaf rec-chkpt-restore-fail { + type uint64; + description + "Rec chkpt restore Fail"; + } + leaf rec-wavl-init-succ { + type uint64; + description + "Rec wavl init succ"; + } + leaf rec-wavl-init-fail { + type uint64; + description + "Rec wavl init fail"; + } + leaf mlist-retrive-cb { + type uint64; + description + "Num of Mlist Retrived Callback called"; + } + leaf mlist-retrive-enq { + type uint64; + description + "Num of Mlist Retrived Enqueue called"; + } + leaf mlist-retrive-notif { + type uint64; + description + "Num of Mlist Retrived Notified"; + } + leaf sub-ctx-upd-restart { + type uint64; + description + "Num of Subs Context Updated on restart"; + } + leaf sub-ctx-upd-restart-fail { + type uint64; + description + "Num of Subs Context Updated on restart failed"; + } + leaf free-index-over { + type uint64; + description + "Num of times Free list got over"; + } + leaf free-index-over-err { + type uint64; + description + "Num of times Free list got over errored"; + } + leaf mlist-used-offset-enq { + type uint64; + description + "Mlist Used OffsetQ Enqueue"; + } + leaf mem-alloc-fail { + type uint64; + description + "Memory Alloc Failed"; + } + leaf alloc-free-list { + type uint64; + description + "Alloc Free List "; + } + leaf mlist-enq { + type uint64; + description + "Mlist Enqueue"; + } + leaf mark-mlist-down { + type uint64; + description + "Mlist Mark Down"; + } + leaf used-offset-enq { + type uint64; + description + "Used OffsetQ Enqueue"; + } + leaf free-offset-enq { + type uint64; + description + "Free OffsetQ Enqueue"; + } + leaf free-mlist { + type uint64; + description + "Free Method List"; + } + leaf free-used-list { + type uint64; + description + "Free Used List"; + } + leaf free-free-list { + type uint64; + description + "Free FreeList"; + } + leaf chkpt-delete { + type uint64; + description + "Delete Checkpoint Data"; + } + leaf chkpt-delete-err { + type uint64; + description + "Delete Checkpoint Data Error"; + } + leaf del-mlist-used-offset { + type uint64; + description + "Delete MList used offset pointer"; + } + leaf chkpt-save { + type uint64; + description + "Save Checkpoint Data"; + } + leaf chkpt-save-err { + type uint64; + description + "Save Checkpoint Data Error"; + } + leaf del-used-offset { + type uint64; + description + "Delete Used Offset"; + } + leaf rec-to-thread { + type uint64; + description + "Enqueue and Send signal"; + } + leaf rec-to-thread-sig { + type uint64; + description + "Signal to new thread"; + } + leaf thread-handler { + type uint64; + description + "No of times thread handler called"; + } + leaf thread-handler-wait { + type uint64; + description + "No of times thread handler wait called"; + } + leaf del-used-offset-expiry { + type uint64; + description + "Delete used offset if aged out"; + } + leaf start-short-timer { + type uint64; + description + "Start Short Timer"; + } + leaf start-retry-timer { + type uint64; + description + "Start Retry Timer"; + } + leaf retry-used-offset { + type uint64; + description + "Retry Used Offset Count"; + } + leaf rec-msg-sent { + type uint64; + description + "Record msg sent"; + } + leaf rec-msg-retry { + type uint64; + description + "Record msg retry"; + } + leaf rec-msg-rtrv-mlist { + type uint64; + description + "Record msg retrieve method list"; + } + leaf rec-msg-srg-retry-stop { + type uint64; + description + "Record msg srg retry stop"; + } + leaf rec-msg-default { + type uint64; + description + "Record msg default"; + } + leaf rec-open-file-succ { + type uint32; + description + "Record open file success"; + } + leaf rec-open-file-fail { + type uint32; + description + "Record open file fail"; + } + leaf rec-close-file { + type uint32; + description + "Record close file"; + } + leaf rec-unlink-file { + type uint32; + description + "Record unlink file"; + } + leaf rec-wrt-file-succ { + type uint64; + description + "Record write file succ"; + } + leaf rec-wrt-file-fail { + type uint64; + description + "Record write file fail"; + } + leaf rec-read-file-succ { + type uint64; + description + "Record read file succ "; + } + leaf rec-read-file-fail { + type uint64; + description + "Record read file fail"; + } + leaf rec-eor-not-found { + type uint64; + description + "Acct record EOR not found"; + } + leaf rec-crt-tm-mismatch { + type uint64; + description + "Acct record creation time mismatch found"; + } + leaf rec-aaa-req-dropped { + type uint64; + description + "Acct record aaa request dropped"; + } + leaf rec-retry-file-open { + type uint64; + description + "Acct record retry file open"; + } + leaf rec-rpl-to-rec-fail { + type uint64; + description + "Acct record rpl to record Failed"; + } + leaf rec-rpl-to-rec-succ { + type uint64; + description + "Acct record rpl to record Success"; + } + leaf rec-rpl-updt-fail { + type uint64; + description + "Acct record rpl update failed"; + } + leaf rec-rpl-updt-succ { + type uint64; + description + "Acct record rpl update success"; + } + leaf rec-rpl-standby-up-fail { + type uint64; + description + "Acct record rpl stand by up failed"; + } + leaf rec-rpl-standby-up-succ { + type uint64; + description + "Acct record rpl stand by up Success"; + } + leaf rec-rpl-snd-msg-fail { + type uint64; + description + "Acct record rpl send msg failed"; + } + leaf rec-rpl-snd-msg-succ { + type uint64; + description + "Acct record rpl send msg success"; + } + leaf rec-rpl-init-fail { + type uint8; + description + "Acct record rpl init failed"; + } + leaf rec-rpl-init-succ { + type uint8; + description + "Acct record rpl init success"; + } + leaf rec-rpl-getdh-fail { + type uint8; + description + "Acct record rpl get data handle failed"; + } + leaf rec-rpl-getdh-succ { + type uint8; + description + "Acct record rpl get data handle success"; + } + leaf rec-rpl-standby-up-offset-cnt { + type uint64; + description + "Acct record rpl standby up offset count"; + } + leaf rec-sync-standby-offset-cnt { + type uint64; + description + "Acct record sync standby offset count"; + } + leaf rec-rpl-batch-timer-expire-cnt { + type uint64; + description + "Acct record rpl batch timer expire count"; + } + leaf rec-rpl-batch-timer-start-cnt { + type uint64; + description + "Acct record rpl batch timer start count"; + } + leaf rec-rpl-updt-done-fail { + type uint64; + description + "Acct record rpl updt done cb fail cnt"; + } + leaf rec-msg-batch-timer { + type uint64; + description + "Record msg batch timer count"; + } + leaf rec-msg-sync-standby { + type uint64; + description + "Record msg sync standby"; + } + leaf retry-skipped { + type uint64; + description + "Retry Used offset skipped"; + } + } + + grouping IEDGE-COORD-STOP-STORAGE-SUM-DATA { + description + "AAA accounting stop storage sum bag info"; + leaf method-list-name { + type string; + description + "AAA method list name used to perform accounting"; + } + leaf method-list-status { + type boolean; + description + "AAA method list status"; + } + leaf usedlist-count { + type uint32; + description + "Num of acct stop response yet to receive from + AAA base"; + } + leaf num-of-record { + type uint32; + description + "Max number of records conf on the box"; + } + leaf max-time { + type uint32; + units "second"; + description + "max life time of record in harddisk (in seconds)"; + } + leaf msg-count { + type uint32; + description + "Num of msg yet to write into file"; + } + leaf retry-timer-start { + type uint32; + description + "Retry timer start"; + } + leaf retry-timer-timeout { + type uint32; + units "second"; + description + "Retry timer timeout (in seconds)"; + } + } + + grouping IEDGE-COORD-STOP-STORAGE-DETAIL-DATA { + description + "AAA accounting stop storage detail bag info"; + leaf method-list-name { + type string; + description + "AAA method list name used to perform accounting"; + } + leaf method-list-status { + type boolean; + description + "AAA method list status"; + } + leaf account-session-id { + type string; + description + "Accounting session ID"; + } + leaf session-acct-type { + type uint8; + description + "Accounting session ID type"; + } + leaf file-offset-index { + type uint32; + description + "File offset index"; + } + leaf session-label { + type uint32; + description + "Unique subscriber ID"; + } + leaf offset-index-timeout { + type uint32; + units "second"; + description + "Offset index timeout (in seconds)"; + } + leaf elapsed-time { + type uint32; + units "second"; + description + "Offset entry elapsed time (in seconds)"; + } + leaf rad-response-pending-state { + type boolean; + description + "Radius response pending state"; + } + } + + grouping IEDGE-STATS-MOB-DATA { + description + "Mobility statistics"; + leaf send-request-successes { + type uint64; + description + "Request send success"; + } + leaf send-request-failures { + type uint64; + description + "Request send failures"; + } + leaf receive-response-successes { + type uint64; + description + "Response receive success"; + } + leaf receive-response-failures { + type uint64; + description + "Response receive failures"; + } + } + + grouping IEDGE-STATS-COORD-AUTH-DATA { + description + "Authorization & authentication statistics"; + leaf sent-requests { + type uint64; + description + "Requests sent to radius server"; + } + leaf accepted-requests { + type uint64; + description + "Request accepted by Radius server"; + } + leaf successful-requests { + type uint64; + description + "Requests which are successful"; + } + leaf rejected-requests { + type uint64; + description + "Requests rejected by radius server"; + } + leaf unreachable-requests { + type uint64; + description + "Radius server not available"; + } + leaf errored-requests { + type uint64; + description + "Unexpected errors"; + } + leaf terminated-requests { + type uint64; + description + "Requests terminated by disconnect"; + } + } + + grouping IEDGE-INTERIM-INFLIGHT-COORD-DATA { + description + "Interim inflight information"; + leaf quota-exhausts { + type uint32; + description + "Quota exhausts"; + } + leaf denied-requests { + type uint32; + description + "Denied requests"; + } + leaf accepted-requests { + type uint32; + description + "Accepted requests"; + } + leaf total-quota-of-requests { + type uint32; + description + "Total quota of requests"; + } + leaf remaining-quota-of-requests { + type uint32; + description + "Remaining quota of requests"; + } + leaf low-water-mark-quota-of-requests { + type uint32; + description + "Low water mark quota of requests"; + } + } + + grouping IEDGE-STATS-COORD-ACCT-REQ-STATS { + description + "AAA accounting request-response statistics"; + leaf received-requests { + type uint64; + description + "Received requests"; + } + leaf errored-requests { + type uint64; + description + "Errored requests"; + } + leaf aaa-errored-requests { + type uint64; + description + "AAA errored requests"; + } + leaf aaa-sent-requests { + type uint64; + description + "AAA requests sent"; + } + leaf aaa-succeeded-responses { + type uint64; + description + "AAA succeeded responses"; + } + leaf aaa-failed-responses { + type uint64; + description + "AAA failed responses"; + } + } + + grouping IEDGE-STATS-COORD-ACCT-DATA { + description + "AAA accounting statistics"; + container start { + description + "Start statistics"; + uses IEDGE-STATS-COORD-ACCT-REQ-STATS; + } + container stop { + description + "Stop statistics"; + uses IEDGE-STATS-COORD-ACCT-REQ-STATS; + } + container interim { + description + "Interim statistics"; + uses IEDGE-STATS-COORD-ACCT-REQ-STATS; + } + container pass-through { + description + "Pass-through statistics"; + uses IEDGE-STATS-COORD-ACCT-REQ-STATS; + } + container update { + description + "Update statistics"; + uses IEDGE-STATS-COORD-ACCT-REQ-STATS; + } + container interim-inflight { + description + "Interim inflight details"; + uses IEDGE-INTERIM-INFLIGHT-COORD-DATA; + } + leaf active-sessions { + type uint32; + description + "Active sessions"; + } + leaf started-sessions { + type uint64; + description + "Started sessions"; + } + leaf stopped-sessions { + type uint64; + description + "Stopped sessions"; + } + leaf policy-plane-errored-requests { + type uint64; + description + "Policy plane errored requests"; + } + leaf policy-plane-unknown-requests { + type uint64; + description + "Policy plane unknown requests"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper.yang new file mode 100644 index 000000000..968c879ef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iedge4710-oper.yang @@ -0,0 +1,912 @@ +module Cisco-IOS-XR-iedge4710-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-iedge4710-oper"; + prefix iedge4710-oper; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-iedge4710-oper-sub2 { + revision-date 2022-09-12; + } + include Cisco-IOS-XR-iedge4710-oper-sub1 { + revision-date 2022-09-12; + } + + 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 iedge4710 package operational data. + + This module contains definitions + for the following management objects: + subscriber: Subscriber operational data + iedge-license-manager: Session License Manager Configuration + data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-12 { + description + "Added new leaf related to subscriber performance stats + 2022-08-17 + Added srg peer EOMS status in detail internal and disconnect history. + 2021-09-27 + New CLI added to display session summary counters"; + semver:module-version "4.1.0"; + } + revision 2021-09-03 { + description + "Disconnect last sensor path get the chunk of 200 items so enhance this path to per entry to avoid tcp connection flaps between telemetry server and BNG."; + semver:module-version "4.0.0"; + } + revision 2020-12-24 { + description + "Updated acct stop internal stats. + 2020-11-21 + Added statsd event to session export. + 2020-11-02 + Added yang paths to support ADT + 2020-10-23 + Added disc queue statistics. + 2020-10-09 + Added acct stop statistics. + 2020-08-24 + Added Feature ID to session export."; + semver:module-version "3.0.0"; + } + revision 2020-02-20 { + description + "Added FADB statistics. + 2020-01-04 + Added disconnect history support."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-09-20 { + description + "Fixed yang gaps."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Subscriber-author-state-filter-flag { + type enumeration { + enum "un-authorized" { + value 0; + description + "UnAuthorized"; + } + enum "authorized" { + value 1; + description + "Authorized"; + } + } + description + "Subscriber author state filter flag"; + } + + typedef Subscriber-srg-oper-filter-flag { + type enumeration { + enum "srg-none" { + value 0; + description + "SRG Role None"; + } + enum "srg-master" { + value 16384; + description + "SRG Role Master"; + } + enum "srg-slave" { + value 65536; + description + "SRG Role Slave"; + } + enum "srg-both" { + value 81920; + description + "SRG Role Master Slave"; + } + } + description + "Subscriber srg oper filter flag"; + } + + typedef Subscriber-address-family-filter-flag { + type enumeration { + enum "ipv4-only" { + value 0; + description + "IPv4 only"; + } + enum "ipv6-only" { + value 1; + description + "IPv6 only"; + } + enum "ipv4-all" { + value 2; + description + "IPv4 all"; + } + enum "ipv6-all" { + value 3; + description + "IPv6 all"; + } + enum "dual-all" { + value 4; + description + "Dual all"; + } + enum "dual-part-up" { + value 5; + description + "Dual part up"; + } + enum "dual-up" { + value 6; + description + "Dual up"; + } + enum "lac" { + value 7; + description + "LAC"; + } + } + description + "Subscriber address family filter flag"; + } + + typedef Subscriber-state-filter-flag { + type enumeration { + enum "initializing" { + value 0; + description + "Initializing"; + } + enum "connecting" { + value 1; + description + "Connecting"; + } + enum "connected" { + value 2; + description + "Connected"; + } + enum "activated" { + value 3; + description + "Activated"; + } + enum "idle" { + value 4; + description + "Idle"; + } + enum "disconnecting" { + value 5; + description + "Disconnecting"; + } + enum "end" { + value 6; + description + "End"; + } + } + description + "Subscriber state filter flag"; + } + + typedef Subscriber-authen-state-filter-flag { + type enumeration { + enum "un-authenticated" { + value 0; + description + "UnAuthenticated"; + } + enum "authenticated" { + value 1; + description + "Authenticated"; + } + } + description + "Subscriber authen state filter flag"; + } + + container subscriber { + config false; + description + "Subscriber operational data"; + container manager { + description + "Subscriber manager operational data"; + container nodes { + description + "Subscriber manager list of nodes"; + list node { + key "node-name"; + description + "Subscriber manager operational data for a + particular node"; + container statistics { + description + "Subscriber manager statistics"; + container aaa { + description + "AAA statistics"; + container aggregate-accounting { + description + "Aggregate accounting statistics"; + uses IEDGE-STATS-COORD-ACCT-DATA; + } + container authentication { + description + "Authentication statistics"; + uses IEDGE-STATS-COORD-AUTH-DATA; + } + container aggregate-mobility { + description + "Aggregate mobility statistics"; + uses IEDGE-STATS-MOB-DATA; + } + container accounting-stop-storage { + description + "Accounting stop storage statistics"; + container stop-details { + description + "Accounting stop detail statistics"; + list stop-detail { + key "offset-idx"; + description + "Accounting stop detail per record + statistics"; + leaf offset-idx { + type xr:Hex-integer; + description + "Offset index"; + } + uses IEDGE-COORD-STOP-STORAGE-DETAIL-DATA; + } + } + container stop-summaries { + description + "Accounting stop summary table statistics"; + list stop-summary { + key "mlist"; + description + "Accounting stop summary per method list + statistics"; + leaf mlist { + type xr:Cisco-ios-xr-string; + description + "method list name"; + } + uses IEDGE-COORD-STOP-STORAGE-SUM-DATA; + } + } + container stop-internal { + description + "Accounting stop internal statistics"; + uses IEDGE-COORD-STOP-STORAGE-INT-DATA; + } + container stop-accounting { + description + "Accounting stop accounting statistics"; + uses IEDGE-COORD-STOP-STORAGE-ACCT-STATS-DATA; + } + } + container aggregate-authentication { + description + "Aggregate authentication statistics"; + uses IEDGE-STATS-COORD-AUTH-DATA; + } + container accounting-stats-all { + description + "Display all subscriber management + statistics"; + uses IEDGE-STATS-COORD-ALL-DATA; + } + container change-of-authorization { + description + "Change of authorization (COA) statistics"; + uses IEDGE-STATS-CH-DATA; + } + container authorization { + description + "Authorization statistics"; + uses IEDGE-STATS-COORD-AUTH-DATA; + } + container aggregate-authorization { + description + "Aggregate authorization statistics"; + uses IEDGE-STATS-COORD-AUTH-DATA; + } + container aggregate-accounting-stats-all { + description + "Display all subscriber management total + statistics"; + uses IEDGE-STATS-COORD-ALL-DATA; + } + container accounting { + description + "Accounting statistics"; + uses IEDGE-STATS-COORD-ACCT-DATA; + } + container mobility { + description + "Mobility statistics"; + uses IEDGE-STATS-MOB-DATA; + } + container aggregate-change-of-authorization { + description + "Aggregate change of authorization (COA) + statistics"; + uses IEDGE-STATS-CH-DATA; + } + } + container disconn-last-entries { + description + "Disconnect Last Detail"; + list disconn-last-entry { + key "arrayindex"; + description + "Disconnect Last Detail per entry"; + leaf arrayindex { + type uint32; + description + "disconnect array index"; + } + uses IEDGE-STATS-DISCONNECT-DATA; + } + } + container aggregate-summary { + description + "Aggregate summary of statistics"; + uses IEDGE-STATS-SUMMARY-DATA; + } + container disconn-unique { + description + "Disconnect Unique Summary statistics"; + uses IEDGE-STATS-DISCONNECT-DATA; + } + container tracepoints { + description + "iedge trace point details"; + list tracepoint { + key "traceindex"; + description + "Specific Taskgroup Information"; + leaf traceindex { + type uint32; + description + "Trace index"; + } + uses IEDGE-DEBUG-TRACEPOINT-DATA; + } + } + container disc-queue { + description + "Disconnect queue statistics"; + uses IEDGE-STATS-DISC-QUEUE-DATA; + } + container disconnect-reasons { + description + "Disconnect Unique Summary statistics"; + list disconnect-reason { + key "disc-reason"; + description + "Disconnect Unique info"; + leaf disc-reason { + type xr:Cisco-ios-xr-string; + description + "disconnect unique reason details"; + } + uses IEDGE-DISCONNECT-DATA; + } + } + container fadb { + description + "FADB statistics"; + uses IEDGE-STATS-FADB-DATA; + } + container srg { + description + "Geo Redundancy statistics"; + uses IEDGE-STATS-SRG-DATA; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container session { + description + "Subscriber session operational data"; + container nodes { + description + "List of subscriber session supported nodes"; + list node { + key "node-name"; + description + "Subscriber session operational data for a + particular node"; + container srg-roles { + description + "List of subscriber session supported srg + roles"; + list srg-role { + key "srg"; + description + "Subscriber session operational data based on + srg role"; + container author-summaries { + description + "Summary information filtered by + authorization state"; + list author-summary { + key "author-state"; + description + "authorization summary"; + leaf author-state { + type Subscriber-author-state-filter-flag; + description + "Authorization state"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container username-summaries { + description + "Summary information filtered by username"; + list username-summary { + key "username"; + description + "Username summary"; + leaf username { + type xr:Cisco-ios-xr-string; + description + "Subscriber username"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container mac-summaries { + description + "Summary information filtered by MAC address"; + list mac-summary { + key "mac-address"; + description + "MAC address summary"; + leaf mac-address { + type yang:mac-address; + description + "Subscriber MAC address"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container interface-summaries { + description + "Summary information filtered by interface"; + list interface-summary { + key "interface-name"; + description + "Interface summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container state-summaries { + description + "Summary information filtered by session + state"; + list state-summary { + key "state"; + description + "State summary"; + leaf state { + type Subscriber-state-filter-flag; + description + "Subscriber state"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container authentication-summaries { + description + "Summary information filtered by + authentication state"; + list authentication-summary { + key "authentication-state"; + description + "authentication summary"; + leaf authentication-state { + type Subscriber-authen-state-filter-flag; + description + "Authentication state"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container subscriber-sessions { + description + "IP subscriber sessions"; + list subscriber-session { + key "session-id"; + description + "Subscriber session information"; + leaf session-id { + type xr:Hex-integer; + description + "Session ID"; + } + uses SUBSCRIBER-SESSION-DATA; + } + } + container ipv4-address-vrf-summaries { + description + "Summary information filtered by IPv4 + address and VRF"; + list ipv4-address-vrf-summary { + description + "IPv4 address and VRF summary"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Subscriber IPv4 address"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container srg-summary { + description + "Subscriber session summary information"; + uses SUBSCRIBER-SESSION-SUMMARY; + } + container access-interface-summaries { + description + "Summary information filtered by access + interface"; + list access-interface-summary { + key "interface-name"; + description + "Access interface summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container address-family-summaries { + description + "Summary information filtered by address + family"; + list address-family-summary { + key "address-family"; + description + "Address family summary"; + leaf address-family { + type Subscriber-address-family-filter-flag; + description + "Address family"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container ipv4-address-summaries { + description + "Summary information filtered by subscriber + IPv4 address"; + list ipv4-address-summary { + key "address"; + description + "IPv4 address summary"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Subscriber IPv4 address"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container vrf-summaries { + description + "Summary information filtered by VRF"; + list vrf-summary { + key "vrf-name"; + description + "VRF summary"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + leaf srg { + type Subscriber-srg-oper-filter-flag; + description + "Subscriber srg role"; + } + } + } + container author-summaries { + description + "Summary information filtered by authorization + state"; + list author-summary { + key "author-state"; + description + "authorization summary"; + leaf author-state { + type Subscriber-author-state-filter-flag; + description + "Authorization state"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container summary { + description + "Subscriber session summary information"; + uses SUBSCRIBER-SESSION-SUMMARY; + } + container mac-summaries { + description + "Summary information filtered by MAC address"; + list mac-summary { + key "mac-address"; + description + "MAC address summary"; + leaf mac-address { + type yang:mac-address; + description + "Subscriber MAC address"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container interface-summaries { + description + "Summary information filtered by interface"; + list interface-summary { + key "interface-name"; + description + "Interface summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container authentication-summaries { + description + "Summary information filtered by + authentication state"; + list authentication-summary { + key "authentication-state"; + description + "authentication summary"; + leaf authentication-state { + type Subscriber-authen-state-filter-flag; + description + "Authentication state"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container state-summaries { + description + "Summary information filtered by session state"; + list state-summary { + key "state"; + description + "State summary"; + leaf state { + type Subscriber-state-filter-flag; + description + "Subscriber state"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container ipv4-address-vrf-summaries { + description + "Summary information filtered by IPv4 address + and VRF"; + list ipv4-address-vrf-summary { + description + "IPv4 address and VRF summary"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Subscriber IPv4 address"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container address-family-summaries { + description + "Summary information filtered by address + family"; + list address-family-summary { + key "address-family"; + description + "Address family summary"; + leaf address-family { + type Subscriber-address-family-filter-flag; + description + "Address family"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container username-summaries { + description + "Summary information filtered by username"; + list username-summary { + key "username"; + description + "Username summary"; + leaf username { + type xr:Cisco-ios-xr-string; + description + "Subscriber username"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container access-interface-summaries { + description + "Summary information filtered by access + interface"; + list access-interface-summary { + key "interface-name"; + description + "Access interface summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container ipv4-address-summaries { + description + "Summary information filtered by subscriber + IPv4 address"; + list ipv4-address-summary { + key "address"; + description + "IPv4 address summary"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Subscriber IPv4 address"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container vrf-summaries { + description + "Summary information filtered by VRF"; + list vrf-summary { + key "vrf-name"; + description + "VRF summary"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses SUBSCRIBER-SESSION-SUMMARY; + } + } + container sessions { + description + "IP subscriber sessions"; + list session { + key "session-id"; + description + "Subscriber session information"; + leaf session-id { + type xr:Hex-integer; + description + "Session ID"; + } + uses SUBSCRIBER-SESSION-DATA; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + } + container iedge-license-manager { + config false; + description + "Session License Manager Configuration data"; + container nodes { + description + "Session License Manager operational data for a + location"; + list node { + key "nodeid"; + description + "Location. For example, 0/1/CPU0"; + container iedge-license-manager-summary { + description + "Display Session License Manager summary data"; + uses ISLM-SUMMARY-DATA; + } + leaf nodeid { + type xr:Node-id; + description + "The node id to filter on. For example, + 0/1/CPU0"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-cfg.yang new file mode 100644 index 000000000..6153878f5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-cfg.yang @@ -0,0 +1,336 @@ +module Cisco-IOS-XR-ifmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ifmgr-cfg"; + prefix ifmgr-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 ifmgr package configuration. + + This module contains definitions + for the following management objects: + global-interface-configuration: Global scoped configuration + for interfaces + interface-configurations: Configuration for all interfaces + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-01 { + description + "Updated path for description configuration"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Interface-mode-enum { + type enumeration { + enum "default" { + value 0; + description + "Default Interface Mode"; + } + enum "point-to-point" { + value 1; + description + "Point-to-Point Interface Mode"; + } + enum "multipoint" { + value 2; + description + "Multipoint Interface Mode"; + } + enum "l2-transport" { + value 3; + description + "L2 Transport Interface Mode"; + } + } + description + "Interface mode enum"; + } + + typedef Interface-active { + type string { + pattern "(act)|(pre)"; + } + description + "act:The interface is active, pre:Preconfiguration"; + } + + typedef Secondary-admin-state-enum { + type enumeration { + enum "normal" { + value 0; + description + "Normal Mode"; + } + enum "maintenance" { + value 1; + description + "Maintenance Mode"; + } + } + description + "Secondary admin state enum"; + } + + typedef Link-status-enum { + type enumeration { + enum "default" { + value 0; + description + "Display link status messages for physical links"; + } + enum "disable" { + value 1; + description + "Disable link status messages"; + } + enum "software-interfaces" { + value 2; + description + "Display link status messages for all interfaces"; + } + } + description + "Link status enum"; + } + + container global-interface-configuration { + description + "Global scoped configuration for interfaces"; + leaf link-status { + type Link-status-enum; + default "default"; + description + "Enable or disable link-status messages"; + } + } + container interface-configurations { + description + "Configuration for all interfaces"; + list interface-configuration { + key "active interface-name"; + description + "The configuration for an interface"; + container dampening { + description + "Whether this interface's state changes are + dampened or not"; + leaf args { + type enumeration { + enum "default-values" { + value 0; + description + "Default values"; + } + enum "specify-half-life" { + value 1; + description + "Half Life Specified"; + } + enum "specify-all" { + value 4; + description + "All Arguments except Restart Penalty + Specified"; + } + enum "specify-rp" { + value 5; + description + "All Arguments Specified"; + } + } + description + "Dampening Arguments"; + } + leaf half-life { + when "../args = 'specify-half-life' or ../args = 'specify-all' or ../args = 'specify-rp'" { + description + "../Args = SpecifyHalfLife or ../Args = + SpecifyAll or ../Args = SpecifyRP"; + } + type uint32 { + range "1..45"; + } + units "minute"; + description + "Decay half life (in minutes)"; + } + leaf reuse-threshold { + when "../args = 'specify-all' or ../args = 'specify-rp'" { + description + "../Args = SpecifyAll or ../Args = SpecifyRP"; + } + type uint32 { + range "1..20000"; + } + description + "Reuse threshold"; + } + leaf suppress-threshold { + when "../args = 'specify-all' or ../args = 'specify-rp'" { + description + "../Args = SpecifyAll or ../Args = SpecifyRP"; + } + type uint32 { + range "1..20000"; + } + description + "Suppress threshold"; + } + leaf suppress-time { + when "../args = 'specify-all' or ../args = 'specify-rp'" { + description + "../Args = SpecifyAll or ../Args = SpecifyRP"; + } + type uint32 { + range "1..255"; + } + units "minute"; + description + "Max suppress time (in minutes)"; + } + leaf restart-penalty { + when "../args = 'specify-rp'" { + description + "../Args = SpecifyRP"; + } + type uint32 { + range "0..20000"; + } + description + "Restart penalty"; + } + } + container mtus { + description + "The MTU configuration for the interface"; + list mtu { + key "owner"; + description + "The MTU for the interface"; + leaf owner { + type xr:Cisco-ios-xr-string; + description + "The Owner of the interface - eg. for + 'LoopbackX' main interface this is 'loopback'"; + } + leaf mtu { + type uint32 { + range "64..65535"; + } + mandatory true; + description + "The MTU value"; + } + } + } + container encapsulation { + description + "The encapsulation on the interface"; + leaf encapsulation { + type string; + description + "The encapsulation - e.g. hdlc, ppp"; + } + leaf capsulation-options { + type uint32; + description + "The options for this capsulation, usually '0'"; + } + } + leaf shutdown { + type empty; + description + "The existence of this configuration indicates + the interface is shut down"; + } + leaf interface-virtual { + type empty; + description + "The mode in which an interface is running. The + existence of this object causes the creation of + the software virtual/subinterface."; + } + leaf secondary-admin-state { + type Secondary-admin-state-enum; + description + "The secondary admin state of the interface"; + } + leaf interface-mode-non-physical { + type Interface-mode-enum; + default "default"; + description + "The mode in which an interface is running. The + existence of this object causes the creation of + the software subinterface."; + } + leaf bandwidth { + type uint64 { + range "0..18446744073709551615"; + } + units "kbit/s"; + description + "The bandwidth of the interface in kbps"; + } + leaf link-status { + type empty; + description + "Enable interface and line-protocol state change + alarms"; + } + leaf description { + type string; + description + "The description of this interface"; + } + leaf active { + type Interface-active; + description + "Whether the interface is active or + preconfigured"; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub1.yang new file mode 100644 index 000000000..b5583b2eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub1.yang @@ -0,0 +1,145 @@ +submodule Cisco-IOS-XR-ifmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-ifmgr-oper { + prefix Cisco-IOS-XR-ifmgr-oper; + } + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ifmgr-oper-sub2 { + revision-date 2020-10-01; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ifmgr package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-01 { + description + "64-bit bandwidth changes"; + semver:module-version "2.0.0"; + } + revision 2019-12-03 { + description + "Updated description."; + semver:module-version "2.0.0"; + } + revision 2019-07-23 { + description + "IosApi version change + 2019-05-30 + 64 bit bandwidth changes."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-07-30 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping IMDS-IFATTR-BASE-INFO { + description + "Basic interface information"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf parent-interface { + type xr:Interface-name; + description + "Parent Interface"; + } + leaf type { + type string; + description + "Interface type"; + } + leaf state { + type Im-state-enum; + description + "Operational state"; + } + leaf actual-state { + type Im-state-enum; + description + "Operational state with no translation of error + disable or shutdown"; + } + leaf line-state { + type Im-state-enum; + description + "Line protocol state"; + } + leaf actual-line-state { + type Im-state-enum; + description + "Line protocol state with no translation of error + disable or shutdown"; + } + leaf encapsulation { + type string; + description + "Interface encapsulation"; + } + leaf encapsulation-type-string { + type string { + length "0..32"; + } + description + "Interface encapsulation description string"; + } + leaf mtu { + type uint32; + units "byte"; + description + "MTU in bytes"; + } + leaf sub-interface-mtu-overhead { + type uint32; + description + "Subif MTU overhead"; + } + leaf l2-transport { + type boolean; + description + "L2 transport"; + } + leaf bandwidth { + type uint32; + description + "Interface bandwidth (Kb/s)"; + } + leaf bandwidth64-bit { + type uint64; + description + "Interface bandwidth 64-bit (Kb/s)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub2.yang new file mode 100644 index 000000000..ec986df11 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper-sub2.yang @@ -0,0 +1,248 @@ +submodule Cisco-IOS-XR-ifmgr-oper-sub2 { + belongs-to Cisco-IOS-XR-ifmgr-oper { + prefix Cisco-IOS-XR-ifmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ifmgr package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-01 { + description + "64-bit bandwidth changes"; + semver:module-version "2.0.0"; + } + revision 2019-12-03 { + description + "Updated description."; + semver:module-version "2.0.0"; + } + revision 2019-07-23 { + description + "IosApi version change + 2019-05-30 + 64 bit bandwidth changes."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-07-30 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + grouping IM-SHOW-DAMP-NODE { + description + "Contains dampening information of capsulation and + capsulation number of interface"; + container capsulation-dampening { + description + "Dampening information of capsulation"; + uses IM-SHOW-DAMP-NODE-INFO; + } + leaf capsulation-number { + type string; + description + "Capsulation number of the Interface"; + } + } + + grouping IM-SHOW-DAMP-NODE-INFO { + description + "Dampening information of interface "; + leaf penalty { + type uint32; + description + "Dampening penalty of the interface"; + } + leaf is-suppressed-enabled { + type boolean; + description + "Flag showing if state is suppressed"; + } + leaf seconds-remaining { + type uint32; + units "second"; + description + "Remaining period of suppression in secs"; + } + leaf flaps { + type uint32; + description + "Number of underlying state flaps"; + } + leaf state { + type Im-state-enum; + description + "Underlying state of the node"; + } + } + + grouping IM-SHOW-DAMP-INFO { + description + "Dampening information of interface"; + container interface-dampening { + description + "Interface dampening configuration for an + interface"; + uses IM-SHOW-DAMP-NODE-INFO; + } + leaf state-transition-count { + type uint32; + description + "The number of times the state has changed"; + } + leaf last-state-transition-time { + type uint64; + description + "The absolute time of last state change of the + interface"; + } + leaf is-dampening-enabled { + type boolean; + description + "Flag showing if dampening is enabled"; + } + leaf half-life { + type uint32; + units "minute"; + description + "Configured decay half life in mins"; + } + leaf reuse-threshold { + type uint32; + description + "Configured reuse threshold"; + } + leaf suppress-threshold { + type uint32; + description + "Value of suppress threshold"; + } + leaf maximum-suppress-time { + type uint32; + units "minute"; + description + "Maximum suppress time in mins"; + } + leaf restart-penalty { + type uint32; + description + "Configured restart penalty"; + } + list capsulation { + description + "Dampening information for capsulations"; + uses IM-SHOW-DAMP-NODE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper.yang new file mode 100644 index 000000000..24e7f90a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ifmgr-oper.yang @@ -0,0 +1,240 @@ +module Cisco-IOS-XR-ifmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ifmgr-oper"; + prefix ifmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ifmgr-oper-sub2 { + revision-date 2020-10-01; + } + include Cisco-IOS-XR-ifmgr-oper-sub1 { + revision-date 2020-10-01; + } + + 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 ifmgr package operational data. + + This module contains definitions + for the following management objects: + interface-dampening: Interface dampening configuration for an + interface + interface-properties: Non feature-specific interface + operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-01 { + description + "64-bit bandwidth changes"; + semver:module-version "2.0.0"; + } + revision 2019-12-03 { + description + "Updated description."; + semver:module-version "2.0.0"; + } + revision 2019-07-23 { + description + "IosApi version change + 2019-05-30 + 64 bit bandwidth changes."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-07-30 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping INTERFACE-TABLE { + description + "Common node of system-view, locationview, + pq-node-location"; + container interfaces { + description + "Operational data for all interfaces and + controllers"; + list interface { + key "interface-name"; + description + "The operational attributes for a particular + interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IMDS-IFATTR-BASE-INFO; + } + } + } + + container interface-dampening { + config false; + description + "Interface dampening configuration for an + interface"; + container interfaces { + description + "The interface list for which dampening info is + available"; + list interface { + key "interface-name"; + description + "The interface for which dampening info is being + queried"; + container if-dampening { + description + "Dampening info for the interface"; + uses IM-SHOW-DAMP-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the"; + } + } + } + container nodes { + description + "The location of the interface(s) being queried"; + list node { + key "node-name"; + description + "The location of the interface(s) being queried"; + container show { + description + "Show details for the interfaces"; + container dampening { + description + "Dampening information of the interface(s) + being queried"; + container if-handles { + description + "Interface handle for which dampening info + queried"; + list if-handle { + key "interface-handle-name"; + description + "Dampening info for the interface handle"; + leaf interface-handle-name { + type xr:Cisco-ios-xr-string; + description + "The interface handle"; + } + uses IM-SHOW-DAMP-INFO; + } + } + container interfaces { + description + "Table of interfaces for which dampening info + can be queried"; + list interface { + key "interface-name"; + description + "Dampening info for the interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the"; + } + uses IM-SHOW-DAMP-INFO; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "The location of the interface(s)"; + } + } + } + } + container interface-properties { + config false; + description + "Non feature-specific interface operational data"; + container data-nodes { + description + "Operational data for interfaces"; + list data-node { + key "data-node-name"; + description + "The location of a (D)RP in the same LR as the + interface being queried"; + container locationviews { + description + "Location-specific view of interface + operational data"; + list locationview { + key "locationview-name"; + description + "Operational data for all interfaces and + controllers on a particular node"; + leaf locationview-name { + type xr:Node-id; + description + "The location to filter on"; + } + uses INTERFACE-TABLE; + } + } + container pq-node-locations { + description + "Partially qualified Location-specific view of + interface operational data"; + list pq-node-location { + key "pq-node-name"; + description + "Operational data for all interfaces and + controllers on a particular pq_node"; + leaf pq-node-name { + type xr:Pq-node-id; + description + "The partially qualified location to filter + on"; + } + uses INTERFACE-TABLE; + } + } + container system-view { + description + "System-wide view of interface operational data"; + uses INTERFACE-TABLE; + } + leaf data-node-name { + type xr:Node-id; + description + "The location of the (D)RP"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper-sub1.yang new file mode 100644 index 000000000..9fed07601 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper-sub1.yang @@ -0,0 +1,1796 @@ +submodule Cisco-IOS-XR-igmp-oper-sub1 { + belongs-to Cisco-IOS-XR-igmp-oper { + prefix Cisco-IOS-XR-igmp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR igmp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-21 { + description + "event-history ipv4_igmp.bag/ipv4_igmp_common_oper.sch show igmp missed-packet + 2022-08-23 + ts at scale show igmp commands + 2022-04-20 + Getting rid of default context path + 2021-12-01 + Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2021-02-03 { + description + "Added DVMRP packet counter tracking for malloc and free."; + semver:module-version "1.1.0"; + } + revision 2019-08-27 { + description + "Initial IOS-XR IGMP native model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmp-edm-protocol { + type enumeration { + enum "no-route" { + value 0; + description + "no route"; + } + enum "sm" { + value 1; + description + "sm"; + } + enum "dm" { + value 2; + description + "dm"; + } + enum "bidir" { + value 3; + description + "bidir"; + } + enum "ssm" { + value 4; + description + "ssm"; + } + enum "any" { + value 6; + description + "any"; + } + } + description + "IGMP Protocol"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Igmp-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + typedef Im-state { + type uint32; + description + "Im state"; + } + + grouping IGMP-EDM-NSF-BAG { + description + "IGMP NSF state"; + leaf is-multicast-nsf-active { + type boolean; + description + "Is Multicast NSF active"; + } + leaf multicast-nsf-timeout { + type uint32; + units "second"; + description + "Multicast NSF timeout in secs"; + } + leaf multicast-nsf-time-left { + type uint32; + units "second"; + description + "Multicast NSF time remaining in secs"; + } + leaf respawn-count { + type uint32; + description + "Respawn Count"; + } + leaf last-nsf-on { + type int64; + description + "Last NSF time ON"; + } + leaf last-nsf-off { + type int64; + description + "Last NSF time off"; + } + leaf last-nsf-on-min { + type int32; + units "second"; + description + "Last NSF time ON in Seconds"; + } + leaf last-nsf-off-min { + type int32; + units "second"; + description + "Last NSF time OFF in Seconds"; + } + leaf last-icd-notif-recv { + type int64; + description + "Last ICD Notif Recv"; + } + leaf last-icd-notif-recv-min { + type int32; + units "second"; + description + "Last ICD Notif Recv in Seconds"; + } + } + + grouping IGMP-MISSED-PACKET-BAG { + description + "IGMP Missed Packet"; + leaf message-type { + type uint32; + description + "Message Type"; + } + leaf message-string { + type string { + length "0..80"; + } + description + "Message String"; + } + leaf message-time { + type string { + length "0..40"; + } + description + "Message Time"; + } + } + + grouping IGMP-MISSED-PACKETS-LIST-BAG { + description + "IGMP Missed Packets list information"; + list missed-packets { + description + "List of Missed Packets"; + uses IGMP-MISSED-PACKET-BAG; + } + } + + grouping IGMP-EDM-BVI-STATS-BAG { + description + "IGMP EDM BVI STATS BAG"; + leaf receive-buffers { + type uint32; + description + "Number of AIPC buffers received"; + } + leaf release-buffers { + type uint32; + description + "Number of AIPC buffers released"; + } + leaf send-blocks { + type uint32; + description + "Number of AIPC buffers send blocked"; + } + leaf release-fail-buffers { + type uint32; + description + "Number of AIPC buffers release failed"; + } + leaf null-buffer-handles { + type uint32; + description + "Number of AIPC NULL buffer handles"; + } + leaf rx-ipc-open-notif { + type uint32; + description + "Number of AIPC open notifications received"; + } + leaf rx-ipc-close-notif { + type uint32; + description + "Number of AIPC close notifications received"; + } + leaf rx-ipc-error-notif { + type uint32; + description + "Number of AIPC error notifications received"; + } + leaf rx-ipc-lwm-notif { + type uint32; + description + "Number of AIPC LWM notifications received"; + } + leaf rx-ipc-hwm-notif { + type uint32; + description + "Number of AIPC HWM notifications received"; + } + leaf rx-ipc-input-wait-notif { + type uint32; + description + "Number of AIPC input waiting notifications + received"; + } + leaf rx-ipc-send-status-notif { + type uint32; + description + "Number of AIPC send status notifications + received"; + } + leaf rx-ipc-publish-notif { + type uint32; + description + "Number of AIPC publish notifications received"; + } + leaf rx-ipc-q-full-notif { + type uint32; + description + "Number of AIPC queue full notifications received"; + } + leaf rx-ipc-output-notif { + type uint32; + description + "Number of AIPC output notifications received"; + } + leaf rx-ipc-connect-notif { + type uint32; + description + "Number of AIPC connect notifications received"; + } + leaf rx-igmp-packet-success { + type uint32; + description + "Number of IGMP protocol messages received"; + } + leaf rx-add-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Add messages received"; + } + leaf rx-delete-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Delete messages received"; + } + leaf rx-sweep-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Sweep messages received"; + } + leaf tx-add-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Add messages transmitted"; + } + leaf tx-delete-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Delete messages + transmitted"; + } + leaf tx-sweep-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Sweep messages received"; + } + leaf rx-unknown-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Unknown messages received"; + } + leaf tx-unknown-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Unknown messages + transmitted"; + } + leaf tx-buffer-errors { + type uint32; + description + "Number of AIPC transmission errors"; + } + leaf tx-buffers { + type uint32; + description + "Number of AIPC buffers transmited"; + } + leaf tx-protocol-buffers { + type uint32; + description + "Number of IGMP protocol buffers transmitted"; + } + leaf tx-mrouter-buffers { + type uint32; + description + "Number of IGMP Mrouter buffers transmitted"; + } + leaf tx-unknown-buffers { + type uint32; + description + "Number of IGMP Unknown buffers transmited"; + } + leaf wtx-msg-recvd { + type uint32; + description + "Number of WTX messages received"; + } + leaf wtx-msg-sent { + type uint32; + description + "Number of WTX messages sent"; + } + leaf wtx-msg-proto-sent { + type uint32; + description + "Number of WTX messages sent to Protocol"; + } + leaf wtx-msg-drop-dc { + type uint32; + description + "Number of WTX messages dropped due to disconnect"; + } + leaf wtx-msg-drop-nomem { + type uint32; + description + "Number of WTX messages dropped to memory"; + } + leaf wtx-msg-freed { + type uint32; + description + "Number of WTX messages freed"; + } + } + + grouping IGMP-EDM-I2Q-STATS-BAG { + description + "IGMP Rate Adjust Stats"; + leaf queues { + type uint16; + description + "I2Q Queue count"; + } + leaf batches { + type uint16; + description + "I2Q Rate Batch count"; + } + leaf add-to-batches { + type uint32; + description + "Add to batch count"; + } + leaf delete-to-batches { + type uint32; + description + "Delete to batch count"; + } + leaf send-success { + type uint32; + description + "Send Success count"; + } + leaf send-errors { + type uint32; + description + "Number of Send errors in batch"; + } + leaf send-comm-errors { + type uint32; + description + "Send Error due to comms count"; + } + leaf send-partial-errors { + type uint32; + description + "Send Error due to partial issue count"; + } + leaf received-resync-requests { + type uint32; + description + "Number of Resync request received"; + } + leaf sent-resync-bulks { + type uint32; + description + "Number of bulks sent for last resync received"; + } + leaf is-resync-received { + type boolean; + description + "Is Resync request received"; + } + leaf is-resync-required { + type boolean; + description + "Is Resync required"; + } + leaf is-resync-start-sent { + type boolean; + description + "Is Resync Start message sent"; + } + leaf is-qos-s-sweeped { + type boolean; + description + "Is QOS Sweeped once "; + } + leaf last-sweep-time { + type uint64; + units "second"; + description + "Time elapsed since Last mark and sweep in + seconds"; + } + leaf last-download-time { + type uint64; + units "second"; + description + "Time elapsed since Last download to QOS in + seconds"; + } + } + + grouping AMT-GW-BAG { + description + "AMT GW info"; + leaf amtgw { + type inet:ipv4-address; + description + "GW"; + } + leaf amt-port { + type uint32; + description + "Port"; + } + leaf key-len { + type uint32; + description + "Len"; + } + leaf amtnh { + type uint32; + description + "AMT NH"; + } + leaf amt-nonce { + type uint32; + description + "Nonce"; + } + leaf idb { + type uint64; + description + "IDB"; + } + leaf mem-upd-in { + type uint32; + description + "UpdIn"; + } + leaf mem-upd-out { + type uint32; + description + "UpdOut"; + } + } + + grouping IGMP-EDM-NSR-BAG { + description + "IGMP NSR state"; + leaf state { + type uint8; + description + "NSR state"; + } + leaf partner-proc-connected { + type boolean; + description + "Partner process connected"; + } + leaf collab-conv-done { + type boolean; + description + "Collaborators convergence done"; + } + leaf rmf-notification-done { + type boolean; + description + "RMF Notification done"; + } + leaf last-proc { + type uint64; + description + "Time when process came up"; + } + leaf last-proc-connection-up { + type uint64; + description + "Time when process connection went up"; + } + leaf last-proc-connection-dn { + type uint64; + description + "Time when process connection went down"; + } + leaf last-rmf-ready { + type uint64; + description + "Time when RMF Rdy notif was sent"; + } + leaf last-rmf-not-ready { + type uint64; + description + "Time when RMF Not-Rdy notif was sent"; + } + leaf count-proc-connection-up { + type uint32; + description + "No. of times process connection went up"; + } + leaf count-proc-connection-dn { + type uint32; + description + "No. of times process connection went down"; + } + leaf count-rmf-ready { + type uint32; + description + "No. of times RMF Ready notif was sent"; + } + leaf count-rmf-not-ready { + type uint32; + description + "No. of times RMF Not Ready notif was sent"; + } + } + + grouping AMT-SUMMARY-BAG { + description + "AMT summary info"; + leaf anycast-prefix { + type inet:ipv4-address; + description + "Robustness variable"; + } + leaf prefix-length { + type uint32; + description + "Advertize AMT prefix length"; + } + leaf relay-address { + type inet:ipv4-address; + description + "Advertaisment for AMT Relay address"; + } + leaf mtu { + type uint32; + description + "AMT Tunnel MTU"; + } + leaf tos { + type uint32; + description + "Type Of Service value in AMT header"; + } + leaf ttl { + type uint32; + description + "Time To Live value in AMT header"; + } + leaf query-interval { + type uint32; + description + "AMT Query interval"; + } + leaf gateway-count { + type uint32; + description + "Number of AMT Gateway"; + } + leaf max-gateway { + type uint32; + description + "Maximum Gateway allowed"; + } + leaf tunnel-count { + type uint32; + description + "AMT Tunnel Count"; + } + leaf tunnel-configured-maximum { + type uint32; + description + "AMT Tunnel configured Maximum"; + } + leaf is-acl-configured { + type boolean; + description + "ACL configured under AMT"; + } + leaf is-gateway-simulation { + type boolean; + description + "AMT Gateway Simulation"; + } + leaf is-ou-of-resource { + type boolean; + description + "AMT Out Of Resource"; + } + } + + grouping IGMP-EDM-SSM-MAP-DETAIL-BAG { + description + "IGMP SSM Map Detail List"; + container map-info { + description + "Basic Map Info"; + uses IGMP-EDM-SSM-MAP-BAG; + } + leaf expiration-time { + type uint32; + units "second"; + description + "Expiration Time in Seconds"; + } + leaf response-pending { + type boolean; + description + "Response Pending"; + } + leaf query-interval { + type uint32; + description + "Query interval"; + } + leaf elapsed-time { + type uint64; + description + "Elapsed time"; + } + list sources { + description + "List of sources"; + uses IGMP-ADDRTYPE; + } + } + + grouping IGMP-EDM-IDB-SUMM-BAG { + description + "IGMP Interface DB summary"; + leaf interface-count { + type uint32; + description + "Interface Count"; + } + leaf configuration-count { + type uint32; + description + "Configuration count"; + } + } + + grouping IGMP-EDM-GROUPS-SUMMARY-BAG { + description + "IGMP group summary entry"; + leaf groutes { + type uint32; + description + "No. of (*,G) routes"; + } + leaf sg-routes { + type uint32; + description + "No. of (S,G) routes"; + } + leaf group-count { + type uint32; + description + "Current groups accepted"; + } + leaf is-low-memory { + type boolean; + description + "Node is running low on memory"; + } + } + + grouping IGMP-EDM-TRAFFIC-BAG { + description + "IGMP Traffic Counters bag"; + leaf elapsed-time { + type uint32; + description + "Running time for counters"; + } + leaf packets-in { + type uint32; + description + "Packets in"; + } + leaf packets-out { + type uint32; + description + "Packets out"; + } + leaf format-errors { + type uint32; + description + "Malformed packets in"; + } + leaf packet-manager-input-errors { + type uint32; + description + "Incoming Packet Manager packets dropped"; + } + leaf packet-manager-output-errors { + type uint32; + description + "Outgoing Packet Manager packets dropped"; + } + leaf checksum-errors { + type uint32; + description + "Checksum errors"; + } + leaf receive-socket-errors { + type uint32; + description + "Socket errors on reception"; + } + leaf socket-errors { + type uint32; + description + "Socket errors on send"; + } + leaf bad-scope-errors { + type uint32; + description + "BadScope errors"; + } + leaf auxillary-data-length-errors { + type uint32; + description + "AuxDataLen errors"; + } + leaf invalid-source-address-errors { + type uint32; + description + "Invalid Source Address errors"; + } + leaf no-socket-connection { + type uint32; + description + "Packets dropped since no socket connection"; + } + leaf miscellaneous-errors { + type uint32; + description + "Packets dropped for other reasons"; + } + leaf input-queries { + type uint32; + description + "Query packets in"; + } + leaf input-reports { + type uint32; + description + "Reports in"; + } + leaf input-leaves { + type uint32; + description + "Leaves in"; + } + leaf input-mtrace { + type uint32; + description + "Mtrace packets in"; + } + leaf input-dvmrp { + type uint32; + description + "DVMRP packets in"; + } + leaf dvmrp-alloc { + type uint32; + description + "DVMRP buffer allocations"; + } + leaf dvmrp-free { + type uint32; + description + "DVMRP freed buffers"; + } + leaf dvmrp-drop { + type uint32; + description + "DVMRP packets dropped"; + } + leaf input-pim { + type uint32; + description + "PIM packets in"; + } + leaf output-queries { + type uint32; + description + "Query packets out"; + } + leaf output-reports { + type uint32; + description + "Reports out"; + } + leaf output-leaves { + type uint32; + description + "Leaves out"; + } + leaf output-mtrace { + type uint32; + description + "Mtrace packets out"; + } + leaf output-dvmrp { + type uint32; + description + "DVMRP packets out"; + } + leaf output-pim { + type uint32; + description + "PIM packets out"; + } + leaf get-packet-failure { + type uint32; + description + "Packet get failed"; + } + leaf output-no-parent-interface-handle { + type uint32; + description + "Failures setting 2nd ifhandle"; + } + leaf input-no-idb { + type uint32; + description + "Packets received without idb"; + } + leaf input-no-vrf-in-idb { + type uint32; + description + "Packets received on idb without VRF"; + } + leaf input-disabled-idb { + type uint32; + description + "Packet received on disabled idb"; + } + leaf input-martian-address { + type uint32; + description + "Packets received with Martian Address"; + } + leaf input-no-assigned-vrf-id { + type uint32; + description + "Packets received with no assigned vrf id"; + } + leaf input-no-vrf-mtrace { + type uint32; + description + "mtrace packets with no vrf associated"; + } + leaf input-no-platform-support-mtrace { + type uint32; + description + "mtrace packets without platform support"; + } + leaf packet-allocated { + type uint32; + description + "Number of pak allocated by IGMP"; + } + leaf packet-freed { + type uint32; + description + "Number of pak freed by IGMP"; + } + } + + grouping IGMP-EDM-IDB-IFRS-BAG { + description + "IGMP IFRS interface entry"; + container igmp-interface-entry { + description + "IGMP interface entry"; + uses IGMP-EDM-IDB-BAG; + } + leaf join-group-count { + type uint32; + description + "Join group count"; + } + } + + grouping IGMP-GROUP-RANGE { + description + "IGMP Group-Map Range"; + container group-address-xr { + description + "Group address"; + uses IGMP-ADDRTYPE; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf protocol { + type Igmp-edm-protocol; + description + "Protocol"; + } + leaf is-stale { + type boolean; + description + "Is the entry stale"; + } + } + + grouping IGMP-EDM-I2Q-INTF-RATE-BAG { + description + "IGMP-QOS Interface Rate"; + container source-address { + description + "Source address"; + uses IGMP-ADDRTYPE; + } + container group-address { + description + "Group address"; + uses IGMP-ADDRTYPE; + } + leaf is-add { + type boolean; + description + "Is this a rate increment"; + } + leaf weight { + type uint32; + description + "Weight from policy"; + } + leaf received-time { + type uint64; + description + "Time this update is received"; + } + } + + grouping IGMP-EDM-I2Q-INTF-STATS-BAG { + description + "IGMP-QOS Interface Stats"; + leaf is-virtual-access { + type boolean; + description + "Is VirtualAccess Interface"; + } + leaf rate { + type uint32; + units "kbit/s"; + description + "Overall rate in Kbps"; + } + leaf rate-increments { + type uint32; + description + "Count of rate increments"; + } + leaf rate-decrements { + type uint32; + description + "Count of rate decrements"; + } + list update { + max-elements "5"; + description + "List of updates"; + uses IGMP-EDM-I2Q-INTF-RATE-BAG; + } + } + + grouping IGMP-EDM-GROUPS-HOST-BAG { + description + "IGMP Groups host entry"; + container address { + description + "Host Address"; + uses IGMP-ADDRTYPE; + } + leaf uptime { + type uint32; + units "second"; + description + "Uptime in seconds"; + } + leaf is-exclude { + type boolean; + description + "Exclude flag set"; + } + leaf expiration-time { + type uint32; + units "second"; + description + "Expiration time in seconds"; + } + leaf source-count { + type uint32; + description + "No. of sources in entry"; + } + list source-address { + max-elements "3"; + description + "First 3 source addresses"; + uses IGMP-ADDRTYPE; + } + } + + grouping IGMP-EDM-GROUPS-ET-BAG { + description + "IGMP group explicit-tracking entry"; + container group-info { + description + "Basic Group information"; + uses IGMP-EDM-GROUPS-BAG; + } + leaf include-hosts { + type uint32; + description + "No. of hosts who are included"; + } + leaf exclude-hosts { + type uint32; + description + "No. of hosts who are excluded"; + } + list host { + description + "List of hosts"; + uses IGMP-EDM-GROUPS-HOST-BAG; + } + } + + grouping IGMP-EDM-SSM-MAP-BAG { + description + "IGMP SSM Map List"; + container group-address-xr { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + leaf map-type { + type uint32; + description + "Map Type of group"; + } + leaf source-counts { + type uint32; + description + "Count of Sources"; + } + } + + grouping IGMP-EDM-NOT-ACTIVE-GROUP-BAG { + description + "IGMP Non active group"; + container group-address { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf interface { + type string { + length "0..65"; + } + description + "Interface Name"; + } + leaf reason-for-non-activity { + type string { + length "0..257"; + } + description + "Reason for group join not being processed"; + } + } + + grouping IGMP-EDM-NOT-ACTIVE-ALLGROUPS-BAG { + description + "IGMP Non active groups list"; + list non-active-groups { + description + "List of non-active groups"; + uses IGMP-EDM-NOT-ACTIVE-GROUP-BAG; + } + } + + grouping IGMP-EDM-GROUPS-SOURCE-BAG { + description + "IGMP Groups source entry"; + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiration-time { + type int32; + units "second"; + description + "Expiration time in seconds"; + } + leaf is-local { + type boolean; + description + "Is this a local source"; + } + leaf is-remote { + type boolean; + description + "Is this a remote source"; + } + leaf is-forward { + type boolean; + description + "Should we forward on this entry"; + } + leaf is-we-report { + type boolean; + description + "Should we report the source"; + } + leaf flags { + type int32; + description + "Source flags"; + } + leaf is-added { + type boolean; + description + "Joined"; + } + leaf is-evpn-remote { + type boolean; + description + "Route learnt through EVPN"; + } + } + + grouping IGMP-EDM-GROUPS-BAG { + description + "IGMP group entry"; + container group-address-xr { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + container last-reporter { + description + "Last reporter address"; + uses IGMP-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiration-time { + type int32; + units "second"; + description + "Expiration time in seconds"; + } + leaf explicit-tracking-enabled { + type boolean; + description + "Is explicit tracking enabled"; + } + leaf is-self-join { + type boolean; + description + "If local system is member of this group on this + interface"; + } + leaf row-status { + type string { + length "0..16"; + } + description + "interface on or off for the group"; + } + leaf is-low-memory { + type boolean; + description + "Node is running low on memory"; + } + leaf router-filter-mode { + type uint8; + description + "Filter mode"; + } + leaf older-host-version1-timer { + type uint32; + description + "IGMP Hostversion1timer"; + } + leaf older-host-version2-timer { + type uint32; + description + "IGMP Hostversion2timer"; + } + leaf is-added { + type boolean; + description + "Joined"; + } + leaf is-suppressed { + type boolean; + description + "Suppressed"; + } + leaf is-evpn-remote { + type boolean; + description + "EVPN remote flag"; + } + leaf is-evpn-stale { + type boolean; + description + "EVPN stale flag"; + } + } + + grouping IGMP-EDM-GROUPS-DETAIL-BAG { + description + "IGMP group detail entry"; + container group-info { + description + "Basic Group information"; + uses IGMP-EDM-GROUPS-BAG; + } + leaf is-router-exclude-mode { + type boolean; + description + "Group router filter mode"; + } + leaf is-host-exclude-mode { + type boolean; + description + "Group host filter mode"; + } + list source { + description + "List of sources"; + uses IGMP-EDM-GROUPS-SOURCE-BAG; + } + } + + grouping IGMP-ADDRTYPE { + description + "IGMP ADDRTYPE"; + leaf af-name { + type Igmp-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + } + + grouping IGMP-EDM-IDB-BAG { + description + "IGMP interface entry"; + container address { + description + "IP address"; + uses IGMP-ADDRTYPE; + } + container querier-address { + description + "Address of the Querier"; + uses IGMP-ADDRTYPE; + } + container subscriber-address { + description + "Address of subscriber"; + uses IGMP-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf state { + type Im-state; + description + "Interface state"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf is-interface-up { + type boolean; + description + "Is interface up"; + } + leaf is-ip-enabled { + type boolean; + description + "Is IP enabled"; + } + leaf is-router-enabled { + type boolean; + description + "Is Router functionality enabled"; + } + leaf is-multi-homing-enabled { + type boolean; + description + "Is Multihoming enabled"; + } + leaf is-multi-homing-stale { + type boolean; + description + "Is Multihoming Update stale"; + } + leaf igmp-version { + type uint8; + description + "IGMP Router version"; + } + leaf host-version { + type uint8; + description + "IGMP Host version"; + } + leaf query-interval { + type uint16; + units "second"; + description + "Query Interval value in seconds"; + } + leaf query-timeout { + type uint16; + description + "Query Timeout value"; + } + leaf query-maximum-response-time { + type uint16; + description + "Max Response Timeout value"; + } + leaf last-member-query-interval { + type uint16; + description + "Last Member Query Interval"; + } + leaf group-joins { + type uint32; + description + "No. of group joins"; + } + leaf group-leaves { + type uint32; + description + "No. of group leaves"; + } + leaf is-querier { + type boolean; + description + "Are we querier"; + } + leaf total-active-groups { + type uint32; + description + "Actual number of groups on interface"; + } + leaf robustness { + type uint32; + description + "Robustness Variable value"; + } + leaf proxy-interface { + type xr:Interface-name; + description + "Proxy interface index"; + } + leaf querier-uptime { + type uint16; + description + "Time since the last querier took over"; + } + leaf las-ll-registration-count { + type uint32; + description + "LAS reg count"; + } + leaf las-get-address-count { + type uint32; + description + "LAS get addr count"; + } + leaf las-update-count { + type uint32; + description + "LAS Update count"; + } + leaf las-ll-remove-update-count { + type uint32; + description + "LAS LL remove update count"; + } + leaf las-ll-add-update-count { + type uint32; + description + "LAS LL add update count"; + } + leaf las-null-update-count { + type uint32; + description + "LAS Null update count"; + } + leaf las-unregistration-count { + type uint32; + description + "LAS unreg count"; + } + leaf is-las-request { + type boolean; + description + "LAS req"; + } + leaf is-las-registered { + type boolean; + description + "LAS registered"; + } + leaf vrf-id { + type uint32; + description + "VRF id"; + } + leaf mte-vrf-id { + type uint32; + description + "MTE VRF id"; + } + leaf location { + type uint32; + description + "Location"; + } + leaf mtu { + type uint32; + description + "MTU"; + } + leaf vrf-state { + type uint32; + description + "Vrf State"; + } + leaf is-configurationverify { + type boolean; + description + "CFG verify"; + } + leaf configurationvrf-set { + type boolean; + description + "CFG vrf set"; + } + leaf configurationvrf-error { + type boolean; + description + "CFG vrf error"; + } + leaf configuration-mcast-vrf-set { + type boolean; + description + "Is mcast set"; + } + leaf configuration-mcast-vrf-error { + type boolean; + description + "Is mcast error"; + } + leaf is-im-state-registered { + type boolean; + description + "Im state registered"; + } + leaf is-subscriber { + type boolean; + description + "Subscriber interface"; + } + leaf subscriber-mode { + type uint32; + description + "Subscriber mode"; + } + leaf is-identity-present { + type boolean; + description + "Subscriber ID or Address available from AAA"; + } + leaf subscriber-id { + type string { + length "0..257"; + } + description + "ID string of subscriber"; + } + leaf parent-ifhandle { + type xr:Interface-name; + description + "Parent If Handle"; + } + leaf time-since-last-query-in-seconds { + type uint32; + description + "Time elapsed since last query"; + } + leaf time-since-last-report-in-seconds { + type uint32; + description + "Time elapsed since last report"; + } + leaf router-uptime-in-seconds { + type uint32; + description + "Uptime since router enabled event"; + } + leaf mte-tuple-count { + type uint32; + description + "MTE Tuple count"; + } + } + + grouping IGMP-EDM-INTF-SUMMARY-BAG { + description + "IGMP interface summary info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf group-limit { + type uint32; + description + "Maximum groups accepted per interface"; + } + leaf group-count { + type uint32; + description + "Current groups accepted per interface"; + } + leaf parent-ifhandle { + type xr:Interface-name; + description + "Parent if handle"; + } + leaf on-off { + type boolean; + description + "Enabled/Disabled"; + } + leaf time-since-last-query-in-seconds { + type uint32; + description + "Time elapsed since last query"; + } + leaf time-since-last-report-in-seconds { + type uint32; + description + "Time elapsed since last report"; + } + leaf router-uptime-in-seconds { + type uint32; + description + "Time elapsed since router enabled event"; + } + } + + grouping IGMP-EDM-SUMMARY-BAG { + description + "IGMP summary info"; + leaf robustness { + type uint32; + description + "Robustness variable"; + } + leaf group-limit { + type uint32; + description + "Maximum groups accepted"; + } + leaf group-count { + type uint32; + description + "Current groups accepted"; + } + leaf is-disabled { + type boolean; + description + "Is maximum enforcement disabled"; + } + leaf is-evpn-connection-up { + type boolean; + description + "Is EVPN connection up"; + } + leaf supported-interfaces { + type uint32; + description + "No. of supported interfaces"; + } + leaf unsupported-interfaces { + type uint32; + description + "No. of unsupported interfaces"; + } + leaf enabled-interface-count { + type uint32; + description + "No. of enabled interfaces"; + } + leaf disabled-interface-count { + type uint32; + description + "No. of disabled interfaces"; + } + leaf multi-homing-enabled-interfaces { + type uint32; + description + "No. of EVPN MH enabled interfaces"; + } + leaf tunnel-mte-config-count { + type uint32; + description + "No. of static group commands"; + } + leaf node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + leaf querier-number { + type uint32; + description + "Number of querier interfaces"; + } + list interface { + description + "Maximum and current groups accepted for each + interface"; + uses IGMP-EDM-INTF-SUMMARY-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper.yang new file mode 100644 index 000000000..947ee3a2b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-igmp-oper.yang @@ -0,0 +1,464 @@ +module Cisco-IOS-XR-igmp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-igmp-oper"; + prefix igmp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-igmp-oper-sub1 { + revision-date 2022-09-21; + } + + 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 igmp package operational data. + + This module contains definitions + for the following management objects: + igmp: IGMP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-21 { + description + "event-history ipv4_igmp.bag/ipv4_igmp_common_oper.sch show igmp missed-packet + 2022-08-23 + ts at scale show igmp commands + 2022-04-20 + Getting rid of default context path + 2021-12-01 + Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2021-02-03 { + description + "Added DVMRP packet counter tracking for malloc and free."; + semver:module-version "1.1.0"; + } + revision 2019-08-27 { + description + "Initial IOS-XR IGMP native model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmpssm-map { + type enumeration { + enum "static" { + value 0; + description + "Static"; + } + enum "dns" { + value 1; + description + "Dns"; + } + enum "all" { + value 2; + description + "All"; + } + } + description + "Igmpssm map"; + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF table Names"; + container summary { + description + "IGMP Summary Information"; + uses IGMP-EDM-SUMMARY-BAG; + } + container interface-state-ons { + description + "IGMP Interface state on"; + list interface-state-on { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + container detail-groups { + description + "IGMP Detail Group Database"; + list detail-group { + key "group-address interface-name source-address"; + description + "IGMP Detail Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source/Host Address"; + } + uses IGMP-EDM-GROUPS-DETAIL-BAG; + } + } + container non-active-groups { + description + "IGMP Non-Active Groups Information"; + uses IGMP-EDM-NOT-ACTIVE-ALLGROUPS-BAG; + } + container ssm-maps { + description + "SSM Map Table"; + list ssm-map { + key "ssm-map-type group-address"; + description + "SSM Map information"; + leaf ssm-map-type { + type Igmpssm-map; + description + "SSM Map Type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses IGMP-EDM-SSM-MAP-BAG; + } + } + container explicit-groups { + description + "IGMP Explicit Group Database"; + list explicit-group { + key "group-address interface-name source-address"; + description + "IGMP Explicit Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source/Host Address"; + } + uses IGMP-EDM-GROUPS-ET-BAG; + } + } + container interface-table { + description + "IGMP Interface specific Table"; + uses INTERFACE; + } + container interface-unicast-qos-adjusts { + description + "IGMP Interface Unicast-Qos-Adjust"; + list interface-unicast-qos-adjust { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-I2Q-INTF-STATS-BAG; + } + } + container ranges { + description + "Range table"; + list range { + key "group-address group-mask"; + description + "Range information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + leaf group-mask { + type uint32; + description + "Group Mask"; + } + uses IGMP-GROUP-RANGE; + } + } + container ifrs-interfaces { + description + "IGMP Interface specific"; + list ifrs-interface { + key "interface-name"; + description + "IGMP IFRS Interface"; + leaf interface-name { + type xr:Interface-name; + description + "IFRS Interface Name"; + } + uses IGMP-EDM-IDB-IFRS-BAG; + } + } + container traffic-counters { + description + "IGMP Message Traffic Counters"; + uses IGMP-EDM-TRAFFIC-BAG; + } + container groups { + description + "IGMP Group Database Table"; + list group { + key "group-address interface-name"; + description + "IGMP Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-GROUPS-BAG; + } + } + container group-summary { + description + "IGMP Groups Summary"; + uses IGMP-EDM-GROUPS-SUMMARY-BAG; + } + container ifrs-interface-summary { + description + "IGMP IFRS Interface summary"; + uses IGMP-EDM-IDB-SUMM-BAG; + } + container global-interface-table { + description + "IGMP Global Interface "; + uses INTERFACE; + } + container ssm-map-details { + description + "SSM Map Detail"; + list ssm-map-detail { + key "ssm-map-type group-address"; + description + "SSM Map Detail Table information"; + leaf ssm-map-type { + type Igmpssm-map; + description + "SSM Map Type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses IGMP-EDM-SSM-MAP-DETAIL-BAG; + } + } + container interface-state-offs { + description + "IGMP Interface state off"; + list interface-state-off { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + } + + grouping INTERFACE { + description + "Common node of interface-table, + global-interface-table"; + list interface { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container amt-summary { + description + "MRIB RouteDB Expiry Information"; + uses AMT-SUMMARY-BAG; + } + container nsr { + description + "NSR Information"; + uses IGMP-EDM-NSR-BAG; + } + container amt-gateways { + description + "Table containing AMT Gateway DataBase + information"; + list amt-gateway { + key "gateway-address port"; + description + "AMT Gateway DataBase information"; + leaf gateway-address { + type inet:ipv4-address-no-zone; + description + "Gateway Address"; + } + leaf port { + type uint32; + description + "Port"; + } + uses AMT-GW-BAG; + } + } + container unicast-qos-adjust-stats { + description + "IGMP Unicast-Qos-Adjust Statistics"; + uses IGMP-EDM-I2Q-STATS-BAG; + } + container bvi-statistics { + description + "IGMP BVI Stats"; + uses IGMP-EDM-BVI-STATS-BAG; + } + container missed-packets-table { + description + "Missed packets information"; + container missed-packets-membership-table { + description + "Missed packets membership information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-ssm-query-table { + description + "Missed packets ssm query information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-general-query-table { + description + "Missed packets general query information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-group-specific-table { + description + "Missed packets group specific information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + } + container nsf { + description + "NSF Information"; + uses IGMP-EDM-NSF-BAG; + } + } + } + + grouping ACTIVE { + description + "Common node of igmp, mld"; + container active { + description + "Active Process"; + uses VRF-TABLE; + uses PROCESS; + } + } + + grouping STANDBY { + description + "Common node of igmp, mld"; + container standby { + description + "Standby Process"; + uses VRF-TABLE; + uses PROCESS; + } + } + + container igmp { + config false; + description + "IGMP operational data"; + uses STANDBY; + uses ACTIVE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper-sub1.yang new file mode 100644 index 000000000..1725bb90b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper-sub1.yang @@ -0,0 +1,1883 @@ +submodule Cisco-IOS-XR-igp-topodb-oper-sub1 { + belongs-to Cisco-IOS-XR-igp-topodb-oper { + prefix Cisco-IOS-XR-igp-topodb-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR igp-topodb package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-06 { + description + "Renamed Node Flex Algo Topology Entry i.e. NFTE to Node Algo Topology Entryi.e. NATE. + 2022-02-02 + Modified for Flex algo firsthop gateway. + 2021-10-22 + Modified for Flex algo srlg exclude-any and Flex algo External features."; + semver:module-version "4.0.0"; + } + revision 2021-05-12 { + description + "Modified for Flex algo Inter-area support."; + semver:module-version "3.0.0"; + } + revision 2020-01-02 { + description + "Added topodb operational data support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Otlib-repair-el { + type enumeration { + enum "mgmt-otlib-repair-el-invalid" { + value 0; + description + "Unknown LFA"; + } + enum "mgmt-otlib-repair-el-p-node" { + value 1; + description + "Direct LFA"; + } + enum "mgmt-otlib-repair-el-q-node" { + value 2; + description + "TI LFA"; + } + } + description + "Otlib repair el"; + } + + typedef Otlib-lfa { + type enumeration { + enum "mgmt-otlib-unknown-lfa" { + value 0; + description + "Unknown LFA"; + } + enum "mgmt-otlib-direct-lfa" { + value 1; + description + "Direct LFA"; + } + enum "mgmt-otlib-ti-lfa" { + value 2; + description + "TI LFA"; + } + } + description + "Otlib lfa"; + } + + grouping OTLIB-SH-AREA-ALGO-SUMMARY { + description + "OTLIB Area Algo Summary"; + leaf algo-number { + type uint8; + description + "Algo Number"; + } + leaf spf-trigger-flags { + type uint8; + description + "SPF Trigger Flags"; + } + leaf spf-schedule-flags { + type uint8; + description + "SPF Schedule Flags"; + } + leaf spf-count { + type uint8; + description + "SPF Count"; + } + leaf fad-adv-router-id { + type inet:ipv4-address; + description + "FAD Adv Router ID"; + } + leaf fad-area-id-string { + type string { + length "0..16"; + } + description + "FAD Adv Router's Area ID"; + } + leaf metric-type { + type uint8; + description + "Metric Type"; + } + leaf algo-type { + type uint8; + description + "Algo Type"; + } + leaf is-uloop-active { + type boolean; + description + "Whether microloop avoidance is active"; + } + leaf is-fad-unsupported { + type boolean; + description + "Whether selected FAD contains parameters not + supported by this node"; + } + leaf is-fapm-supported { + type boolean; + description + "Whether FAPM/FAAM support is enabled"; + } + leaf uloop-near-end-node { + type uint32; + description + "Near end node in the active microloop + calculation"; + } + leaf uloop-far-end-node { + type uint32; + description + "Far end node in the active microloop calculation"; + } + leaf uloop-cost-in-out-node { + type uint32; + description + "Node that had a cost in or cost out in the + active microloop calculation"; + } + leaf uloop-news { + type uint8; + description + "Action that triggered the active microloop + calculation"; + } + leaf uloop-last-successful-near-end-node { + type uint32; + description + "Near end node in the last successful microloop + calculation"; + } + leaf uloop-last-successful-far-end-node { + type uint32; + description + "Far end node in the last successful microloop + calculation"; + } + leaf uloop-last-successful-cost-in-out-node { + type uint32; + description + "Node that had a cost in or cost out in the last + successful microloop calculation"; + } + leaf uloop-last-successful-news { + type uint8; + description + "Action that triggered the last successful + microloop calculation"; + } + leaf uloop-last-success-begin { + type string { + length "0..50"; + } + description + "Time at which last successful microloop + calculation began"; + } + leaf uloop-last-success-end { + type string { + length "0..50"; + } + description + "Time at which last successful microloop + calculation was completed"; + } + leaf-list exclude-affinity { + type uint32; + description + "Exclude Affinity"; + } + leaf-list include-any-affinity { + type uint32; + description + "Include Any Affinity"; + } + leaf-list include-all-affinity { + type uint32; + description + "Include All Affinity"; + } + leaf-list exclude-srlg { + type uint32; + description + "Exclude SRLG"; + } + } + + grouping OTLIB-SH-AREA-SUMMARY { + description + "OTLIB Area Summary"; + leaf area-id-string { + type string { + length "0..16"; + } + description + "Area ID"; + } + leaf num-nodes { + type uint16; + description + "No. of Nodes"; + } + leaf ulooptime-remaining { + type uint32; + description + "Time remaining for the active Microloop + avoidance paths"; + } + list algo { + description + "List of Algos"; + uses OTLIB-SH-AREA-ALGO-SUMMARY; + } + } + + grouping OTLIB-SH-INST-SUMMARY { + description + "OTLIB Instance Summary"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf num-areas { + type uint16; + description + "No. of Areas"; + } + leaf spf-trigger-flags { + type uint8; + description + "SPF Trigger Flags"; + } + leaf spf-schedule-flags { + type uint8; + description + "SPF Schedule Flags"; + } + leaf num-algos { + type uint8; + description + "No. of Algos supported"; + } + leaf algo-status { + type yang:hex-string; + description + "Algo Status"; + } + leaf max-paths { + type uint16; + description + "Max Paths"; + } + leaf num-routes { + type uint32; + description + "No. of Routes"; + } + leaf-list route-work-queue-size { + type uint32; + max-elements "4"; + description + "Route Work Queue Sizes"; + } + list srgb { + description + "SRGB List"; + uses OTLIB-SHOW-SR-RANGE; + } + list area { + description + "List of Areas"; + uses OTLIB-SH-AREA-SUMMARY; + } + } + + grouping OTLIB-SHOW-ROUTE-ULOOP-PATH { + description + "OTLIB Route Microloop Avoidance Path"; + leaf repair-list-size { + type uint32; + description + "Repair List Size"; + } + leaf tunnel-interface-name { + type uint32; + description + "Microloop Avoidance Tunnel Interface"; + } + list repair { + max-elements "12"; + description + "Microloop Avoidance Repair List"; + uses OTLIB-SH-REP-EL; + } + } + + grouping OTLIB-SH-REP-EL { + description + "OSPF Repair Element"; + leaf repair-element-id { + type inet:ipv4-address; + description + "ID of the Repair Element"; + } + leaf repair-label { + type uint32; + description + "Label of Repair Element"; + } + leaf repair-element-type { + type Otlib-repair-el; + description + "Type of the Repair Element"; + } + } + + grouping OTLIB-SHOW-ROUTE-BACKUP-PATH { + description + "OTLIB Route Backup Path"; + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "NextHop IP Address"; + } + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf backup-route-source { + type inet:ipv4-address; + description + "IP address of source of route"; + } + leaf backup-metric { + type uint64; + description + "Backup Metric"; + } + leaf label { + type uint32; + description + "Label"; + } + leaf primary-path { + type boolean; + description + "Whether this is also a Primary Path"; + } + leaf interface-disjoint { + type boolean; + description + "Wheher this is a Interface Disjoint path"; + } + leaf line-card-disjoint { + type boolean; + description + "Whether this is a Line Card Disjoint path"; + } + leaf downstream { + type boolean; + description + "Whether this is a downstream path"; + } + leaf node-protect { + type boolean; + description + "Whether this is a Node Protect path"; + } + leaf srlg-disjoint { + type boolean; + description + "Whether this is a SRLG Disjoint path"; + } + leaf weighted-srlg { + type boolean; + description + "Whether this is a Weighted SRLG path"; + } + leaf lfa-type { + type Otlib-lfa; + description + "LFA type"; + } + leaf backup-repair-list-size { + type uint32; + description + "Repair List Size"; + } + leaf backup-tunnel-interface-name { + type uint32; + description + "Backup Tunnel Interface"; + } + list backup-repair { + max-elements "12"; + description + "Backup Repair List"; + uses OTLIB-SH-REP-EL; + } + } + + grouping OTLIB-SHOW-ROUTE-PATH { + description + "OTLIB Route Path"; + container backup-path { + description + "Backup path details"; + uses OTLIB-SHOW-ROUTE-BACKUP-PATH; + } + container uloop-path { + description + "Microloop Avoidance Path"; + uses OTLIB-SHOW-ROUTE-ULOOP-PATH; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "NextHop IP Address"; + } + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf info-src { + type inet:ipv4-address; + description + "Source of Path"; + } + leaf path-weight { + type uint32; + description + "Path Weight"; + } + leaf path-label { + type uint32; + description + "Path Label"; + } + leaf area-id { + type uint32; + description + "Area ID"; + } + } + + grouping OTLIB-SHOW-ROUTE-ALGO { + description + "OTLIB Route Algo"; + leaf algo-number { + type uint8; + description + "Algo Number"; + } + leaf route-metric { + type uint64; + description + "Route Metric"; + } + leaf forward-distance { + type uint64; + description + "Forward Distance"; + } + leaf route-update-time { + type string { + length "0..50"; + } + description + "Time at which this route was updated"; + } + leaf route-algo-flags { + type uint8; + description + "Route algo flags"; + } + leaf route-type { + type uint8; + description + "Route Type"; + } + leaf route-sid { + type uint32; + description + "Route SID"; + } + leaf route-label { + type uint32; + description + "Route label"; + } + leaf path-count { + type uint32; + description + "Route path count"; + } + leaf ext-e-bit { + type boolean; + description + "External E bit"; + } + list path { + description + "Algo Path List"; + uses OTLIB-SHOW-ROUTE-PATH; + } + list route-contributor { + description + "Route prefix contributors"; + uses OTLIB-SHOW-PREFIX-CONTRIB; + } + } + + grouping OTLIB-SHOW-ROUTE { + description + "OTLIB Route"; + leaf route-prefix { + type inet:ipv4-address; + description + "Route Prefix Address"; + } + leaf route-prefix-length { + type uint8; + description + "Route Prefix Length"; + } + leaf route-priority { + type uint8; + description + "Route priority"; + } + leaf route-flags { + type uint16; + description + "Route flags"; + } + list algo { + description + "Route Algo list"; + uses OTLIB-SHOW-ROUTE-ALGO; + } + } + + grouping OTLIB-SHOW-ROUTE-INSTANCE { + description + "OTLIB Route Instance"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf num-routes { + type uint32; + description + "No. of routes"; + } + list route { + description + "List of Routes"; + uses OTLIB-SHOW-ROUTE; + } + } + + grouping OTLIB-SHOW-ASBR-CONTRIB-ALGO { + description + "OTLIB Flex algo specific ASBR contributor"; + leaf algo { + type uint8; + description + "Algo number"; + } + leaf igp-metric { + type uint32; + description + "Base IGP metric of the asbr by the node"; + } + leaf faam-metric { + type uint32; + description + "FAAM metric of the asbr by the node"; + } + leaf total-metric { + type uint64; + description + "Total metric to reach the asbr"; + } + leaf contrib-flags { + type uint8; + description + "ASBR contributor flags"; + } + } + + grouping OTLIB-SHOW-ASBR { + description + "OTLIB ASBR"; + leaf asbrid { + type inet:ipv4-address; + description + "ASBR ID"; + } + leaf asbr-metric { + type uint32; + description + "ASBR metric"; + } + list asbr-contributor { + description + "ASBR Contributors"; + uses OTLIB-SHOW-ASBR-CONTRIB-ALGO; + } + } + + grouping OTLIB-SHOW-ASBR-REACHABILITY-NODE { + description + "OTLIB ASBR Reachability Node"; + container node-id { + description + "Node ID"; + uses OTLIB-SHOW-NODE-ID; + } + leaf num-asb-rs { + type uint32; + description + "Number of ASBRs"; + } + list asbr { + description + "List of ASBRs advertised by the node"; + uses OTLIB-SHOW-ASBR; + } + } + + grouping OTLIB-SHOW-ASBR-REACHABILITY-AREA { + description + "OTLIB ASBR Reachability Area"; + leaf area-id-string { + type string { + length "0..16"; + } + description + "Area ID string"; + } + list node { + description + "List of Nodes"; + uses OTLIB-SHOW-ASBR-REACHABILITY-NODE; + } + } + + grouping OTLIB-SHOW-ASBR-REACHABILITY-INSTANCE { + description + "OTLIB ASBR Reachability Instance"; + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + list area { + description + "List of Areas"; + uses OTLIB-SHOW-ASBR-REACHABILITY-AREA; + } + } + + grouping OTLIB-SHOW-NATE-NODE-SRLG { + description + "OTLIB Nate Srlg"; + leaf srlg-interface-topo-intf { + type uint32; + description + "Srlg Interface Topo Interface"; + } + leaf sit-pcspt-node-srlg-dist { + type uint64; + description + "Srlg Pcspt Node Srlg Dist"; + } + list nate-path { + description + "Nate Path List"; + uses OTLIB-SHOW-NATE-PATH; + } + } + + grouping OTLIB-SHOW-NATE-SRLG { + description + "OTLIB Nate Srlg"; + leaf srlg-interface-topo-intf { + type uint32; + description + "Srlg Interface Topo Interface"; + } + leaf sit-pcspt-srlg-dist { + type uint64; + description + "Srlg Pcspt Srlg Dist"; + } + list nate-path { + description + "Nate Path List"; + uses OTLIB-SHOW-NATE-PATH; + } + } + + grouping OTLIB-SHOW-NATE-NODE { + description + "OTLIB Nate Node"; + leaf nate-pcspt-node-dist { + type uint64; + description + "Nate Post Convergence Node Distance"; + } + list nate-path { + description + "Nate Path List"; + uses OTLIB-SHOW-NATE-PATH; + } + } + + grouping OTLIB-SHOW-NATE-PATH { + description + "OTLIB Nate Path"; + leaf nate-path-nexthop { + type inet:ipv4-address; + description + "Nate Path Nexthop"; + } + leaf nate-path-ifhandle { + type uint32; + description + "Nate Path Intf Handle"; + } + leaf nate-path-nbr-id { + type inet:ipv4-address; + description + "Nate Path Nbr Id"; + } + leaf nate-parent-node-id { + type inet:ipv4-address; + description + "Nate Parent Node Id"; + } + leaf nate-path-is-repair { + type boolean; + description + "Nate Path Node Id"; + } + list repair-node { + description + "Repair Node List"; + uses OTLIB-SHOW-REPAIR-NODE; + } + } + + grouping OTLIB-SHOW-NATE-LINK { + description + "OTLIB Nate Link"; + leaf nate-pcspt-dist { + type uint64; + description + "Nate Post Convergence Distance"; + } + list nate-path { + description + "Nate Path List"; + uses OTLIB-SHOW-NATE-PATH; + } + } + + grouping OTLIB-SHOW-NATE { + description + "OTLIB Nate"; + container nate-link { + description + "Nate Link Protection"; + uses OTLIB-SHOW-NATE-LINK; + } + container nate-node { + description + "Nate Node Protection"; + uses OTLIB-SHOW-NATE-NODE; + } + leaf nate-node-id { + type inet:ipv4-address; + description + "Nate Node Id"; + } + leaf nate-dist { + type uint64; + description + "Nate Distance"; + } + leaf nate-rspt-dist { + type uint64; + description + "Nate Reverse SPT Distance"; + } + leaf nate-in-pspace { + type boolean; + description + "Nate In P Space"; + } + leaf nate-in-qspace { + type boolean; + description + "Nate In Q Space"; + } + leaf nate-in-ext-pspace { + type boolean; + description + "Nate In Ext P Space"; + } + list nate-srlg { + description + "Nate Srlg Protection list"; + uses OTLIB-SHOW-NATE-SRLG; + } + list nate-node-srlg { + description + "Nate Node Srlg Protection list"; + uses OTLIB-SHOW-NATE-NODE-SRLG; + } + } + + grouping OTLIB-SHOW-IPFRR-NBR-ALGO { + description + "OTLIB Ipfrr Nbr Algo"; + leaf algo-number { + type uint8; + description + "Algo Number"; + } + leaf lfa-rev-num { + type uint32; + description + "Lfa Revision Number"; + } + list nate { + description + "Node Algo Topo Entries List"; + uses OTLIB-SHOW-NATE; + } + } + + grouping OTLIB-SHOW-IPFRR-NBR { + description + "OTLIB Ipfrr Nbr"; + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + list ipfrr-nbr-algo { + description + "Ipfrr Nbr Algo List"; + uses OTLIB-SHOW-IPFRR-NBR-ALGO; + } + } + + grouping OTLIB-SHOW-IPFRR-AREA { + description + "OTLIB SHOW IPFRR AREA"; + leaf area-id-str { + type string; + description + "Area Id Str"; + } + list ipfrr-nbr { + description + "Ipfrr Nbr List"; + uses OTLIB-SHOW-IPFRR-NBR; + } + } + + grouping OTLIB-SHOW-IPFRR-INSTANCE { + description + "OTLIB SHOW IPFRR INSTANCE"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + list ipfrr-area { + description + "Ipfrr Area List"; + uses OTLIB-SHOW-IPFRR-AREA; + } + } + + grouping OTLIB-SHOW-FHGW { + description + "OTLIB Firsthop Gateway"; + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "NextHop IP Address"; + } + leaf refcount { + type uint32; + description + "Reference Count"; + } + } + + grouping OTLIB-SHOW-FHGW-INSTANCE { + description + "OTLIB Firsthop Gateway Instance"; + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + list firsthop-gateway { + description + "List of firsthop gateways"; + uses OTLIB-SHOW-FHGW; + } + } + + grouping OTLIB-SHOW-FORW-ADDR { + description + "OTLIB Forwarding Address"; + leaf forw-addr { + type inet:ipv4-address; + description + "Forw Addr"; + } + leaf route-prefix { + type inet:ipv4-address; + description + "Route Prefix"; + } + leaf route-prefix-len { + type uint8; + description + "Route Prefix Len"; + } + leaf forw-addr-flags { + type uint8; + description + "Forwarding Address flags"; + } + } + + grouping OTLIB-SHOW-FORW-ADDR-INSTANCE { + description + "OTLIB Forwarding Address Instance"; + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + list forw-addr { + description + "List of forwarding addresses"; + uses OTLIB-SHOW-FORW-ADDR; + } + } + + grouping OTLIB-SHOW-REPAIR-NODE { + description + "OTLIB Repair Node"; + leaf re-label { + type uint32; + description + "Repair element Label"; + } + leaf re-address { + type inet:ipv4-address; + description + "Repair Address"; + } + leaf re-identifier { + type inet:ipv4-address; + description + "Repair Identifier"; + } + leaf re-is-node-sid { + type boolean; + description + "Repair Is Node Sid"; + } + } + + grouping OTLIB-SHOW-ULOOP-NODE-PATH { + description + "OTLIB Microloop Avoidance Node Path"; + leaf path-nexthop { + type inet:ipv4-address; + description + "Path Nexthop"; + } + leaf path-ifhandle { + type uint32; + description + "Path Intf Handle"; + } + leaf path-nbr-id { + type uint32; + description + "Path Nbr Id"; + } + leaf parent-node-id { + type inet:ipv4-address; + description + "Parent Node Id"; + } + leaf path-is-repair { + type boolean; + description + "Path Node Id"; + } + list repair-node { + description + "Reapir Node List"; + uses OTLIB-SHOW-REPAIR-NODE; + } + } + + grouping OTLIB-SHOW-ULOOP-NODE { + description + "OTLIB Microloop Avoidance Node"; + leaf node-id { + type inet:ipv4-address; + description + "Node Id"; + } + leaf rspt-dist { + type uint64; + description + "Rspt Distance"; + } + leaf in-pspace { + type boolean; + description + "In P Space"; + } + leaf in-qspace { + type boolean; + description + "In Q Space"; + } + leaf in-ext-pspace { + type boolean; + description + "In Ext P Space"; + } + list path { + description + "Path List"; + uses OTLIB-SHOW-ULOOP-NODE-PATH; + } + } + + grouping OTLIB-SHOW-ULOOP-ALGO { + description + "OTLIB Microloop Avoidance Algo"; + leaf algo-number { + type uint8; + description + "Algo Number"; + } + list node { + description + "Node List"; + uses OTLIB-SHOW-ULOOP-NODE; + } + } + + grouping OTLIB-SHOW-ULOOP-AREA { + description + "OTLIB Microloop Avoidance Area"; + leaf area-id-str { + type string; + description + "Area Id Str"; + } + list algo { + description + "Algo List"; + uses OTLIB-SHOW-ULOOP-ALGO; + } + } + + grouping OTLIB-SHOW-ULOOP-INSTANCE { + description + "OTLIB Microloop Avoidance Instance"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + list area { + description + "Area List"; + uses OTLIB-SHOW-ULOOP-AREA; + } + } + + grouping OTLIB-SHOW-ASBR-CONTRIB { + description + "OTLIB ASBR contributor"; + leaf igp-metric { + type uint32; + description + "Base IGP metric of the asbr by the node"; + } + leaf faam-metric { + type uint32; + description + "FAAM metric of the asbr by the node"; + } + leaf total-metric { + type uint64; + description + "Total metric to reach the asbr"; + } + leaf contrib-flags { + type uint8; + description + "ASBR contributor flags"; + } + leaf adv-router-id { + type inet:ipv4-address; + description + "Advertising Router ID"; + } + leaf area-id { + type uint32; + description + "Area ID of the contributor"; + } + } + + grouping OTLIB-SHOW-TOPO-PATH { + description + "OTLIB Topo Path"; + leaf next-hop-address { + type inet:ipv4-address; + description + "NextHop IP Address"; + } + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf path-weight { + type uint32; + description + "Path Weight"; + } + leaf area-id { + type uint32; + description + "Area ID"; + } + } + + grouping OTLIB-SHOW-NODE-ALGO { + description + "OTLIB Node Algo"; + leaf algo-number { + type uint8; + description + "Algo Number"; + } + leaf node-distance { + type uint64; + description + "Node Distance"; + } + leaf is-node-reachable { + type boolean; + description + "Node reachable"; + } + leaf is-direct-node { + type boolean; + description + "Direct Node"; + } + leaf is-node-dirty { + type boolean; + description + "Node is dirty"; + } + leaf is-abr-dirty { + type boolean; + description + "ABR Node is dirty"; + } + leaf is-asbr-dirty { + type boolean; + description + "ASBR Node is dirty"; + } + list path { + description + "Algo Path List"; + uses OTLIB-SHOW-TOPO-PATH; + } + list asbr-contributor { + description + "ASBR Contributors"; + uses OTLIB-SHOW-ASBR-CONTRIB; + } + } + + grouping OTLIB-SHOW-PATH-NODE { + description + "OTLIB Path Node"; + container node-id { + description + "Node ID"; + uses OTLIB-SHOW-NODE-ID; + } + leaf is-root-node { + type boolean; + description + "Is root node"; + } + leaf is-area-border-router { + type boolean; + description + "Node is ABR"; + } + leaf is-as-border-router { + type boolean; + description + "Node is ASBR"; + } + list algo { + description + "List of node Algos"; + uses OTLIB-SHOW-NODE-ALGO; + } + } + + grouping OTLIB-SHOW-PATH-AREA { + description + "OTLIB Path Area"; + leaf area-id-string { + type string { + length "0..16"; + } + description + "Area ID string. Valid only if it is not ASBR + paths"; + } + leaf is-asbr-paths { + type boolean; + description + "Is the paths to ASBRs"; + } + list node { + description + "List of Nodes"; + uses OTLIB-SHOW-PATH-NODE; + } + } + + grouping OTLIB-SHOW-PATH-INSTANCE { + description + "OTLIB Path Instance"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + list area { + description + "List of Areas"; + uses OTLIB-SHOW-PATH-AREA; + } + } + + grouping OTLIB-SHOW-FAD-DEFN { + description + "OTLIB FAD Definition"; + leaf algo-number { + type uint8; + description + "Algo Number"; + } + leaf metric-type { + type uint8; + description + "Metric Type"; + } + leaf algo-type { + type uint8; + description + "Algo Type"; + } + leaf priority { + type uint8; + description + "Algo Priority"; + } + leaf fad-oper-flags { + type uint16; + description + "FAD Operational Flags"; + } + leaf fad-has-unsupported-params { + type boolean; + description + "The FAD defintion contains TLVs or Flags that + are not supported by this node"; + } + leaf-list exclude-affinity { + type uint32; + description + "Exclude Affinity"; + } + leaf-list include-any-affinity { + type uint32; + description + "Include Any Affinity"; + } + leaf-list include-all-affinity { + type uint32; + description + "Include All Affinity"; + } + leaf-list exclude-srlg { + type uint32; + description + "Exclude-any SRLG"; + } + } + + grouping OTLIB-SHOW-SR-RANGE { + description + "OTLIB SR Range"; + leaf range-start { + type uint32; + description + "Range Start"; + } + leaf range-size { + type uint32; + description + "Range Size"; + } + } + + grouping OTLIB-SHOW-PREFIX-CONTRIB { + description + "OTLIB Prefix contributor"; + leaf algo { + type uint8; + description + "Algo number"; + } + leaf sid { + type uint32; + description + "SID"; + } + leaf igp-metric { + type uint32; + description + "Base IGP metric of the prefix by the node"; + } + leaf fapm-metric { + type uint32; + description + "FAPM metric of the prefix by the node"; + } + leaf total-metric { + type uint64; + description + "Total metric to reach the prefix"; + } + leaf contrib-flags { + type uint8; + description + "Prefix contributor flags"; + } + leaf sid-flags { + type uint8; + description + "SID flags"; + } + leaf route-type { + type uint8; + description + "Route Type of this contributor"; + } + leaf adv-router-id { + type inet:ipv4-address; + description + "Advertising Router ID"; + } + leaf area-id { + type uint32; + description + "Area ID of the contributor"; + } + } + + grouping OTLIB-SHOW-PREFIX { + description + "OTLIB Prefix"; + leaf prefix-address { + type inet:ipv4-address; + description + "Prefix Address"; + } + leaf prefix-length { + type uint8; + description + "Prefix Length"; + } + leaf prefix-metric { + type uint32; + description + "Prefix metric"; + } + leaf route-type { + type uint32; + description + "Route Type"; + } + leaf ext-e-bit { + type boolean; + description + "External E Bit. Valid when route type is + external"; + } + leaf forwarding-address { + type inet:ipv4-address; + description + "Forwarding Address applicable only for external + prefixes"; + } + leaf external-tag { + type uint32; + description + "Tag applicable only for external prefixes"; + } + leaf prefix-flags { + type uint16; + description + "Prefix Flags"; + } + list prefix-contributor { + description + "Prefix Contributors"; + uses OTLIB-SHOW-PREFIX-CONTRIB; + } + } + + grouping OTLIB-SHOW-ADJ-SID { + description + "OTLIB Adj Sid"; + leaf lan-nbr-id { + type uint32; + description + "Neighbor ID in LAN"; + } + leaf sid { + type uint32; + description + "SID value advertised"; + } + leaf type { + type uint8; + description + "Type specifying if this is Normal Adj SID or LAN + Adj SID"; + } + leaf flags { + type uint8; + description + "Adj SID Flags as per RFC"; + } + leaf mtid { + type uint8; + description + "Multi-Topology ID as per RFC"; + } + leaf weight { + type uint8; + description + "Weight used in load balancing"; + } + } + + grouping OTLIB-SHOW-LINK-ASLA-ATTR { + description + "OTLIB ASLA Link Attrs"; + leaf srte-metric { + type uint32; + description + "SR-TE Metric"; + } + leaf min-delay { + type uint32; + description + "Min Delay"; + } + leaf-list ext-admin-group { + type uint32; + units "bit"; + description + "Ext. Admin Group bits"; + } + leaf-list srlg { + type uint32; + description + "SRLG values"; + } + } + + grouping OTLIB-SHOW-LINK-ATTR { + description + "OTLIB Link Attrs"; + container flex-algo-asla-attrs { + description + "Flex Algo ASLA Attributes"; + uses OTLIB-SHOW-LINK-ASLA-ATTR; + } + leaf lsid { + type inet:ipv4-address; + description + "Ext Link LSA ID"; + } + leaf local-interface-id { + type uint32; + description + "Local Interface ID"; + } + leaf remote-interface-id { + type uint32; + description + "Remote Interface ID"; + } + leaf remote-ipv4-address { + type inet:ipv4-address; + description + "Remote IPv4 Address"; + } + leaf max-bandwidth { + type uint32; + description + "Max Bandwidth"; + } + list adj-sid { + description + "Adjacency Sid"; + uses OTLIB-SHOW-ADJ-SID; + } + } + + grouping OTLIB-SHOW-LINK-ID { + description + "OTLIB Link ID"; + leaf link-id { + type inet:ipv4-address; + description + "Link ID"; + } + leaf link-data { + type inet:ipv4-address; + description + "Link Data"; + } + leaf link-type { + type uint8; + description + "Link Type"; + } + } + + grouping OTLIB-SHOW-LINK { + description + "OTLIB Link"; + container link-id { + description + "Link ID"; + uses OTLIB-SHOW-LINK-ID; + } + container remote-link-id { + description + "Remote Link ID"; + uses OTLIB-SHOW-LINK-ID; + } + container link-attrs { + description + "Link Attributes"; + uses OTLIB-SHOW-LINK-ATTR; + } + leaf link-metric { + type uint16; + description + "Link Metric"; + } + leaf link-subnet-mask { + type inet:ipv4-address; + description + "Link Subnet Mask"; + } + leaf link-oper-flags { + type uint16; + description + "Link Operational flags"; + } + leaf is-router-lsa-contrib { + type boolean; + description + "Is Router LSA Contributing"; + } + leaf is-network-lsa-contrib { + type boolean; + description + "Is Network LSA Contributing"; + } + leaf is-ext-link-lsa-contrib { + type boolean; + description + "Is Ext Link LSA Contributing"; + } + } + + grouping OTLIB-SHOW-NODE-ID { + description + "OTLIB Node ID"; + leaf adv-router-id { + type inet:ipv4-address; + description + "Advertising Router ID"; + } + leaf dr-identifier { + type inet:ipv4-address; + description + "Node DR Identifier"; + } + } + + grouping OTLIB-SHOW-NODE { + description + "OTLIB Node"; + container node-id { + description + "Node ID"; + uses OTLIB-SHOW-NODE-ID; + } + leaf num-links { + type uint16; + description + "Number of Links"; + } + leaf num-prefixes { + type uint32; + description + "Number of prefixes"; + } + leaf is-root-node { + type boolean; + description + "Is root node"; + } + leaf is-area-border-router { + type boolean; + description + "Node is ABR"; + } + leaf is-as-border-router { + type boolean; + description + "Node is ASBR"; + } + leaf node-oper-flags { + type uint16; + description + "Node Operational flags"; + } + leaf is-router-lsa-contrib { + type boolean; + description + "Is Router LSA Contributing"; + } + leaf is-network-lsa-contrib { + type boolean; + description + "Is Network LSA Contributing"; + } + leaf is-router-info-lsa-contrib { + type boolean; + description + "Is Router Info LSA Contributing"; + } + leaf-list node-algo { + type uint8; + description + "Node algo support list"; + } + list link { + description + "List of Links"; + uses OTLIB-SHOW-LINK; + } + list prefix { + description + "List of prefixes"; + uses OTLIB-SHOW-PREFIX; + } + list srgb { + description + "Node SRGB List"; + uses OTLIB-SHOW-SR-RANGE; + } + list fad { + description + "Flex Algo Definition List"; + uses OTLIB-SHOW-FAD-DEFN; + } + } + + grouping OTLIB-SHOW-AREA { + description + "OTLIB Area"; + leaf area-id-string { + type string { + length "0..16"; + } + description + "Area ID string. Valid only if not AS scoped"; + } + leaf is-as-scoped { + type boolean; + description + "Is the prefixes AS scoped"; + } + leaf num-nodes { + type uint16; + description + "No. of nodes under area"; + } + list node { + description + "List of Nodes"; + uses OTLIB-SHOW-NODE; + } + } + + grouping OTLIB-SHOW-INSTANCE { + description + "OTLIB Instance"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + list area { + description + "List of Areas"; + uses OTLIB-SHOW-AREA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper.yang new file mode 100644 index 000000000..61e399cc2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-igp-topodb-oper.yang @@ -0,0 +1,256 @@ +module Cisco-IOS-XR-igp-topodb-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-igp-topodb-oper"; + prefix igp-topodb-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-igp-topodb-oper-sub1 { + revision-date 2022-04-06; + } + + 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 igp-topodb package operational data. + + This module contains definitions + for the following management objects: + topo-db: Open Topology Database library operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-06 { + description + "Renamed Node Flex Algo Topology Entry i.e. NFTE to Node Algo Topology Entryi.e. NATE. + 2022-02-02 + Modified for Flex algo firsthop gateway. + 2021-10-22 + Modified for Flex algo srlg exclude-any and Flex algo External features."; + semver:module-version "4.0.0"; + } + revision 2021-05-12 { + description + "Modified for Flex algo Inter-area support."; + semver:module-version "3.0.0"; + } + revision 2020-01-02 { + description + "Added topodb operational data support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container topo-db { + config false; + description + "Open Topology Database library operational data"; + container topo-db-processes { + description + "Table for each process using topology library"; + list topo-db-process { + key "process-name"; + description + "Operational data for a particular process"; + container topology-prefixes { + description + "Container for Topology prefix information"; + list topology-prefix { + key "topo-vrf-name"; + description + "Topology prefix information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-INSTANCE; + } + } + container topology-paths { + description + "Container for Topology path information"; + list topology-path { + key "topo-vrf-name"; + description + "Topology path information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-PATH-INSTANCE; + } + } + container topology-microloop-avoidances { + description + "Container for Topology Microloop Avoidance + information"; + list topology-microloop-avoidance { + key "topo-vrf-name"; + description + "Topology Microloop Avoidance information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-ULOOP-INSTANCE; + } + } + container topology-forwarding-addresses { + description + "Container for Topology Forwarding Address + information"; + list topology-forwarding-address { + key "topo-vrf-name"; + description + "Topology Forwarding Address information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-FORW-ADDR-INSTANCE; + } + } + container topology-firsthop-gateways { + description + "Container for Topology Firsthop Gateway + information"; + list topology-firsthop-gateway { + key "topo-vrf-name"; + description + "Topology Firsthop Gateway information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-FHGW-INSTANCE; + } + } + container topology-fast-reroutes { + description + "Container for Topology Fast Reroute + information"; + list topology-fast-reroute { + key "topo-vrf-name"; + description + "Topology Fast Reroute information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-IPFRR-INSTANCE; + } + } + container topology-asbr-reachabilities { + description + "Container for Topology ASBR Reachability + information"; + list topology-asbr-reachability { + key "topo-vrf-name"; + description + "Topology ASBR Reachability information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-ASBR-REACHABILITY-INSTANCE; + } + } + container topology-routes { + description + "Container for Topology route information"; + list topology-route { + key "topo-vrf-name"; + description + "Topology Route Information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-ROUTE-INSTANCE; + } + } + container topology-asbr-paths { + description + "Container for Topology ASBR path information"; + list topology-asbr-path { + key "topo-vrf-name"; + description + "Topology ASBR path information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-PATH-INSTANCE; + } + } + container topology-summaries { + description + "Container for Topology summary information"; + list topology-summary { + key "topo-vrf-name"; + description + "Topology summary information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SH-INST-SUMMARY; + } + } + container topologies { + description + "Container for Topology information"; + list topology { + key "topo-vrf-name"; + description + "Topology information"; + leaf topo-vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses OTLIB-SHOW-INSTANCE; + } + } + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "Process name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-cfg.yang new file mode 100644 index 000000000..9be862bbb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-cfg.yang @@ -0,0 +1,349 @@ +module Cisco-IOS-XR-ikev2-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ikev2-cfg"; + prefix ikev2-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ikev2 package configuration. + + This module contains definitions + for the following management objects: + ikev2: Internet key exchange(IKEv2) config commands + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-22 { + description + "Vrf Support"; + semver:module-version "1.2.0"; + } + revision 2019-09-27 { + description + "Certificate Support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-12-11 { + description + "Encryption Type Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ikev2-auth-method { + type enumeration { + enum "rsa-signature" { + value 1; + description + "RSA SIGNATURE"; + } + enum "pre-shared-key" { + value 2; + description + "PRESHARED KEY"; + } + } + description + "Ikev2 auth method"; + } + + container ikev2 { + description + "Internet key exchange(IKEv2) config commands"; + container profile-names { + description + "IKEv2 profile config commands"; + list profile-name { + key "name"; + description + "IKEv2 profile name"; + container match-identity { + description + "Match a profile based on remote identity"; + container address-subs { + description + "Match a profile based on remote identity + address"; + list address-sub { + key "address mask"; + description + "Remote ip address for matching identity"; + leaf address-mask { + type empty; + description + "This indicates existence of remote ip + address"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Address"; + } + leaf mask { + type inet:ipv4-address-no-zone; + description + "Mask"; + } + } + } + leaf any { + type empty; + description + "Match any peer identity"; + } + } + container authentication { + description + "Authentication method for IKEv2"; + container remote-auth-methods { + description + "Remote authentication"; + list remote-auth-method { + key "method"; + description + "Remote auth method"; + leaf method { + type Ikev2-auth-method; + description + "Remote auth Method name"; + } + } + } + container local-auth { + description + "Local authentication method"; + leaf local-auth-method { + type Ikev2-auth-method; + description + "Local auth method"; + } + } + } + container trustpoint-names { + description + "IKEv2 trustpoints"; + list trustpoint-name { + key "tpname"; + description + "IKEv2 trustpoint name"; + leaf trustpoint-val { + type empty; + mandatory true; + description + "This indicates existence of trustpoint"; + } + leaf tpname { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Trustpoint name"; + } + } + } + leaf profile-sub { + type empty; + mandatory true; + description + "This indicates existence of profile"; + } + leaf match-fvrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "fvrf to use"; + } + leaf lifetime { + type uint32 { + range "120..86400"; + } + description + "Lifetime(in sec) for IKEv2 SA"; + } + leaf keyring-in-profile { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Keyring to use with local/remote + authentication method"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the profile"; + } + } + } + container policy-names { + description + "Configure IKEv2 policies"; + list policy-name { + key "name"; + description + "IKEv2 policy name"; + container address-vals { + description + "Match a policy based on address"; + list address-val { + key "address"; + description + "local address used to match policy"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Address"; + } + } + } + container fvrfs { + description + "Matching fvrfs for the policy"; + list fvrf { + key "vrf-name"; + description + "VRF to use with configured policy"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Vrf name"; + } + } + } + container proposals { + description + "proposal for the given policy"; + list proposal { + key "proposal-name"; + description + "Proposal to use with configured policy"; + leaf proposal-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Proposal name"; + } + } + } + leaf policy-sub { + type empty; + mandatory true; + description + "This indicates existence of policy"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Policy name"; + } + } + } + container proposal-names { + description + "Configure IKEv2 proposals"; + list proposal-name { + key "name"; + description + "IKEv2 proposal name"; + container prfses { + description + "Specify one or more transforms of prf"; + leaf-list prfs { + type string { + length "1..8"; + } + max-elements "4"; + description + "PRF Algorithm"; + } + } + container groups { + description + "Specify one or more transforms of group"; + leaf-list group { + type string { + length "1..3"; + } + max-elements "8"; + description + "Encryption Algorithm"; + } + } + container integrities { + description + "Specify one or more transforms of integrity"; + leaf-list integrity { + type string { + length "1..8"; + } + max-elements "4"; + description + "Integrity Algorithm"; + } + } + container encryptions { + description + "Specify one or more transforms of encryption"; + leaf-list encryption { + type string { + length "1..12"; + } + max-elements "5"; + description + "Encryption Algorithm"; + } + } + leaf proposal-sub { + type empty; + mandatory true; + description + "This indicates existence of proposal"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Proposal name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper-sub1.yang new file mode 100644 index 000000000..fca61bd5e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper-sub1.yang @@ -0,0 +1,868 @@ +submodule Cisco-IOS-XR-ikev2-oper-sub1 { + belongs-to Cisco-IOS-XR-ikev2-oper { + prefix Cisco-IOS-XR-ikev2-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ikev2 package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-22 { + description + "Vrf Support"; + semver:module-version "1.2.0"; + } + revision 2019-09-27 { + description + "Certificate Authentication Support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-12-20 { + description + "Operational Yang Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ikev2-authentication-method { + type enumeration { + enum "ikev2-edm-auth-no-method" { + value 0; + description + "No authentication method"; + } + enum "ikev2-edm-auth-rsa-sig" { + value 1; + description + "RSA authentication method"; + } + enum "ikev2-edm-auth-pre-shared" { + value 2; + description + "PSK authentication method"; + } + enum "ikev2-edm-auth-dss-sig" { + value 3; + description + "DSS SIG authentication method"; + } + enum "ikev2-edm-auth-ecdsa-256-sig" { + value 9; + description + "ECDSA 256 SIG authentication method"; + } + enum "ikev2-edm-auth-ecdsa-384-sig" { + value 10; + description + "ECDSA 384 SIG authentication method"; + } + enum "ikev2-edm-auth-any-connect-eap" { + value 254; + description + "ANYCONNECT EAP authentication method"; + } + enum "ikev2-edm-auth-eap" { + value 256; + description + "EAP authentication method"; + } + } + description + "Ikev2 authentication method"; + } + + typedef String1 { + type string; + description + "String1"; + } + + grouping IKEV2-EDM-PROFILE { + description + "IKEV2 EDM PROFILE"; + leaf profile-name { + type string; + description + "Name of the Profile"; + } + leaf keyring-name { + type string; + description + "Name of the keyring"; + } + leaf fvrf-name { + type string; + description + "Name of the Fvrf"; + } + leaf match-any { + type boolean; + description + "Match Any Criteria"; + } + leaf total-match-remote-peers { + type uint32; + description + "Total match remote peers"; + } + leaf lifetime-in-sec { + type uint32; + description + "Lifetime"; + } + leaf dpd-interval-in-sec { + type uint32; + description + "DPD Interval"; + } + leaf dpd-retry-in-sec { + type uint32; + description + "DPD Retry"; + } + leaf local-auth { + type Ikev2-authentication-method; + description + "local authentication method"; + } + leaf-list addr { + type inet:ipv4-address; + description + "Match address of peer"; + } + leaf-list mask { + type inet:ipv4-address; + description + "Mask of peer"; + } + leaf-list trustpoint { + type String1; + description + "trustpoints"; + } + leaf-list remote-auth { + type Ikev2-authentication-method; + description + "remote authentication method"; + } + } + + grouping IKEV2-EDM-PROPOSAL { + description + "IKEV2 EDM PROPOSAL"; + leaf proposal-name { + type string; + description + "Name of the proposal"; + } + leaf total-enc-alg { + type uint32; + description + "Total encryption algo"; + } + leaf total-hash-alg { + type uint32; + description + "Total hash algo"; + } + leaf total-prf-alg { + type uint32; + description + "Total prf algo"; + } + leaf total-group-alg { + type uint32; + description + "Total group algo"; + } + leaf status { + type string; + description + "Status of roposal"; + } + leaf-list encryption-alg { + type String1; + description + "Encryption Algorithm"; + } + leaf-list hash-alg { + type String1; + description + "Integrity Algorithm"; + } + leaf-list prf-alg { + type String1; + description + "PRF Algorithm"; + } + leaf-list group-alg { + type String1; + description + "Group Algorithm"; + } + } + + grouping IKEV2-EDM-POLICY { + description + "IKEV2 EDM POLICY"; + leaf policy-name { + type string; + description + "Name of the policy"; + } + leaf total-local-addr { + type uint32; + description + "Total match local addr"; + } + leaf total-proposal { + type uint32; + description + "Total proposal"; + } + leaf total-fvrf { + type uint32; + description + "Fvrf count"; + } + leaf-list addr { + type inet:ipv4-address; + description + "Match address of peer"; + } + leaf-list proposal { + type String1; + description + "List of proposals"; + } + leaf-list fvrf { + type String1; + description + "List of Fvrf"; + } + } + + grouping IKEV2-EDM-SUMMARY { + description + "IKEV2 EDM SUMMARY"; + leaf total-sa { + type uint32; + description + "Total SA count"; + } + leaf total-sa-active { + type uint32; + description + "Total SA active count"; + } + leaf total-sa-negotiating { + type uint32; + description + "Total SA in-negotiation count"; + } + leaf total-outgoing-sa { + type uint32; + description + "Total Outgoing SA count"; + } + leaf outgoing-sa-active { + type uint32; + description + "Outgoing SA active count"; + } + leaf outgoing-sa-negotiating { + type uint32; + description + "Outgoing SA in-negotiation count"; + } + leaf total-incoming-sa { + type uint32; + description + "Total Incoming Sa count"; + } + leaf incoming-sa-active { + type uint32; + description + "Incoming SA active count"; + } + leaf incoming-sa-negotiating { + type uint32; + description + "Incoming SA in-negotiation count"; + } + } + + grouping IKEV2-EDM-SA-DB { + description + "IKEV2 EDM SA DB"; + list sa { + description + "SA list"; + uses IKEV2-EDM-SA; + } + } + + grouping IKEV2-MSG { + description + "IKEV2 MSG"; + leaf tx-req { + type uint32; + description + "TX(REQ)"; + } + leaf rx-res { + type uint32; + description + "RX(RES)"; + } + leaf tx-res { + type uint32; + description + "TX(RES)"; + } + leaf rx-req { + type uint32; + description + "RX(REQ)"; + } + } + + grouping IKEV2-EDM-STATS { + description + "IKEV2 EDM STATS"; + container ike-sa-init-cnt { + description + "IKE SA INIT COUNT"; + uses IKEV2-MSG; + } + container ike-auth-cnt { + description + "IKE AUTH COUNT"; + uses IKEV2-MSG; + } + container create-child-sa-cnt { + description + "Create Child SA Count"; + uses IKEV2-MSG; + } + container create-child-sa-ipsec-cnt { + description + "Create Child SA IPSEC Count"; + uses IKEV2-MSG; + } + container create-child-sa-ipsec-rekey-cnt { + description + "Create Child SA IPSEC Rekey Count"; + uses IKEV2-MSG; + } + container create-child-sa-ike-rekey-cnt { + description + "Create Child SA IKE Rekey Count"; + uses IKEV2-MSG; + } + container gsk-auth-cnt { + description + "GSK Auth Count"; + uses IKEV2-MSG; + } + container gsk-reg-cnt { + description + "GSK Reg Count"; + uses IKEV2-MSG; + } + container gsk-rekey-cnt { + description + "GSK Rekey Count"; + uses IKEV2-MSG; + } + container gsk-rekey-ack-cnt { + description + "GSK Rekey Ack Count"; + uses IKEV2-MSG; + } + container informational-cnt { + description + "Informational Count"; + uses IKEV2-MSG; + } + container unsupported-critical-cnt { + description + "Unsupported Critical Count"; + uses IKEV2-MSG; + } + container invalid-ike-spi-cnt { + description + "Invalid IKE SPI COUNT"; + uses IKEV2-MSG; + } + container invalid-major-version-ikev2-cnt { + description + "Invalid Major Version IKEv2 Count"; + uses IKEV2-MSG; + } + container invalid-syntax-cnt { + description + "Invalid Syntax Count"; + uses IKEV2-MSG; + } + container invalid-msg-id-ikev2-cnt { + description + "Invalid Message ID IKEv2 Count"; + uses IKEV2-MSG; + } + container invalid-spi-ikev2-cnt { + description + "Invalid SPI IKEv2 Count"; + uses IKEV2-MSG; + } + container no-proposal-chosen-ikev2-cnt { + description + "No Proposal Chosen IKEv2 Count"; + uses IKEV2-MSG; + } + container invalid-ke-pyld-cnt { + description + "Invalid KE Payload Count"; + uses IKEV2-MSG; + } + container auth-failed-cnt { + description + "Auth Failed Count"; + uses IKEV2-MSG; + } + container single-pair-required-cnt { + description + "Single Pair Required Count"; + uses IKEV2-MSG; + } + container no-additional-sas-cnt { + description + "No Additional SAs Count"; + uses IKEV2-MSG; + } + container internal-addr-failure-cnt { + description + "Internal Addr Failure Count"; + uses IKEV2-MSG; + } + container failed-cp-required-cnt { + description + "Failed CP Required Count"; + uses IKEV2-MSG; + } + container ts-unacceptable-cnt { + description + "TS Unacceptable Count"; + uses IKEV2-MSG; + } + container invalid-selectors-cnt { + description + "Invalid Selectors Count"; + uses IKEV2-MSG; + } + container initial-contact-ikev2-cnt { + description + "Initial Contact IKEv2 Count"; + uses IKEV2-MSG; + } + container set-window-size-cnt { + description + "Set Window Size Count"; + uses IKEV2-MSG; + } + container additional-ts-poss-cnt { + description + "Additional TS Poss Count"; + uses IKEV2-MSG; + } + container ipcomp-supported-cnt { + description + "IPCOMP Supported Cnt"; + uses IKEV2-MSG; + } + container nat-detection-src-cnt { + description + "Nat Detection Src Count"; + uses IKEV2-MSG; + } + container nat-detection-dst-cnt { + description + "Nat Detection Dst Count"; + uses IKEV2-MSG; + } + container cookie-cnt { + description + "Cookie Count"; + uses IKEV2-MSG; + } + container use-transport-mode-cnt { + description + "Use Transport Mode Count"; + uses IKEV2-MSG; + } + container http-cert-lookup-cnt { + description + "HTTP Cert Lookup Cnt"; + uses IKEV2-MSG; + } + container rekey-sa-cnt { + description + "Rekey SA Count"; + uses IKEV2-MSG; + } + container esp-tfc-padding-not-supported-cnt { + description + "ESP TFC Padding Not Supported Count"; + uses IKEV2-MSG; + } + container delete-reason-cnt { + description + "Delete Reason Count"; + uses IKEV2-MSG; + } + container custom-cnt { + description + "Custom Count"; + uses IKEV2-MSG; + } + container redirect-supported-cnt { + description + "Redirected Supported Count"; + uses IKEV2-MSG; + } + container redirect-cnt { + description + "Redirect Count"; + uses IKEV2-MSG; + } + container redirected-from-cnt { + description + "Redirected From Count"; + uses IKEV2-MSG; + } + container ikev2-dpd-cnt { + description + "IKEv2 DPD Count"; + uses IKEV2-MSG; + } + container cfg-request-cnt { + description + "Config Request Count"; + uses IKEV2-MSG; + } + container cfg-reply-cnt { + description + "Config Reply Count"; + uses IKEV2-MSG; + } + container cfg-set-cnt { + description + "Config Set Count"; + uses IKEV2-MSG; + } + container cfg-ack-cnt { + description + "Config Ack Count"; + uses IKEV2-MSG; + } + container nat-inside-cnt { + description + "Nat Inside Count"; + uses IKEV2-MSG; + } + container nat-outside-cnt { + description + "Nat Outside Count"; + uses IKEV2-MSG; + } + container no-nat-cnt { + description + "No Nat Count"; + uses IKEV2-MSG; + } + leaf tx-succ { + type uint32; + description + "IKEv2 TX Success"; + } + leaf rx-succ { + type uint32; + description + "IKEv2 RX Success"; + } + leaf tx-write-fail { + type uint32; + description + "TX Write Fail"; + } + leaf tx-send-fail { + type uint32; + description + "TX Send Fail"; + } + leaf tx-set-qos-fail { + type uint32; + description + "TX Set Qos Fail"; + } + leaf tx-socket-not-conn { + type uint32; + description + "Tx Socket Not Conn"; + } + leaf tx-unknown-src-port { + type uint32; + description + "Tx Unknown Src Port"; + } + leaf rx-get-if-fail { + type uint32; + description + "Rx Get IF Failed"; + } + leaf rx-null-ifhndl { + type uint32; + description + "Rx NULL IFHNDL"; + } + leaf rx-get-ntwrk-offset { + type uint32; + description + "Rx Get Network Offset"; + } + leaf rx-read-ip-head { + type uint32; + description + "Rx read Ip header"; + } + leaf rx-get-transport-offset { + type uint32; + description + "Rx Get transport offset"; + } + leaf rx-read-upd-head { + type uint32; + description + "Rx read udp head"; + } + leaf rx-unexpected-marker { + type uint32; + description + "Rx Unexpected marker"; + } + leaf rx-get-vrf-id { + type uint32; + description + "Rx get Vrf Id"; + } + leaf rx-read-pyld { + type uint32; + description + "Rx Read Pyld"; + } + } + + grouping IKEV2-EDM-CHILD-SA { + description + "IKEV2 EDM CHILD SA"; + leaf local-selector { + type string; + description + "Local Selector"; + } + leaf remote-selector { + type string; + description + "Remote Selector"; + } + leaf esp-spi-in-out { + type string; + description + "ESP SPI In Out"; + } + leaf encr { + type string; + description + "Encryption"; + } + leaf keysize { + type uint32; + description + "Keysize"; + } + leaf hmac { + type string; + description + "ESP HMAC"; + } + } + + grouping IKEV2-EDM-SA { + description + "IKEV2 EDM SA"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf local-addr-port { + type string; + description + "Local Addr Port"; + } + leaf remote-addr-port { + type string; + description + "Remote Addr Port"; + } + leaf fvrf { + type string; + description + "Fvrf"; + } + leaf state { + type string; + description + "State"; + } + leaf encr { + type string; + description + "Encryption"; + } + leaf keysize { + type uint32; + description + "Keysize"; + } + leaf prf { + type string; + description + "PRF"; + } + leaf hash { + type string; + description + "Hash"; + } + leaf dh-group { + type uint32; + description + "DH Group"; + } + leaf auth-sign { + type string; + description + "Auth Sign"; + } + leaf auth-verify { + type string; + description + "Auth Verify"; + } + leaf life-active { + type string; + description + "Life-Active Time"; + } + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf status-desc { + type string; + description + "Status Description"; + } + leaf local-spi { + type string; + description + "Local SPI"; + } + leaf remote-spi { + type string; + description + "Remote SPI"; + } + leaf local-id { + type string; + description + "Local ID"; + } + leaf remote-id { + type string; + description + "Remote ID"; + } + leaf sa-initiator { + type boolean; + description + "Sa Initiator"; + } + } + + grouping IKEV2-EDM-SESSION { + description + "IKEV2 EDM SESSION"; + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf session-status { + type string; + description + "Session Status"; + } + leaf ike-cnt { + type uint32; + description + "IKE Count"; + } + leaf child-cnt { + type uint32; + description + "Child Count"; + } + list sa { + description + "SA List"; + uses IKEV2-EDM-SA; + } + list child-sa { + description + "Child SA List"; + uses IKEV2-EDM-CHILD-SA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper.yang new file mode 100644 index 000000000..2586500ec --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ikev2-oper.yang @@ -0,0 +1,197 @@ +module Cisco-IOS-XR-ikev2-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ikev2-oper"; + prefix ikev2-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ikev2-oper-sub1 { + revision-date 2021-10-22; + } + + 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 ikev2 package operational data. + + This module contains definitions + for the following management objects: + ikev2: IKEv2 operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-22 { + description + "Vrf Support"; + semver:module-version "1.2.0"; + } + revision 2019-09-27 { + description + "Certificate Authentication Support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-12-20 { + description + "Operational Yang Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IP { + description + "Common node of local-v4, remote-v4"; + list ip { + key "address"; + description + "IKEv2 SA data based on address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Address"; + } + uses IKEV2-EDM-SA-DB; + } + } + + container ikev2 { + config false; + description + "IKEv2 operational data"; + container nodes { + description + "Per node IKEv2 operational data"; + list node { + key "node-name"; + description + "IKEv2 operational data for a particular node"; + container session-ids { + description + "IKEv2 Session data"; + list session-id { + key "id"; + description + "IKEv2 Session data"; + leaf id { + type uint32 { + range "1..65535"; + } + description + "Session Id"; + } + uses IKEV2-EDM-SESSION; + } + } + container stats { + description + "IKEv2 Stats data"; + uses IKEV2-EDM-STATS; + } + container sa { + description + "IKEv2 SA data"; + container local-v4 { + description + "IKEv2 SA lookup on local IP"; + uses IP; + } + container remote-v4 { + description + "IKEv2 SA lookup on remote IP"; + uses IP; + } + container all { + description + "IKEv2 SA all data"; + uses IKEV2-EDM-SA-DB; + } + } + container summary { + description + "IKEv2 Summary data"; + uses IKEV2-EDM-SUMMARY; + } + container policies { + description + "IKEv2 policies on this node"; + list policy { + key "name"; + description + "IKEv2 policy data"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the IKEv2 policy"; + } + uses IKEV2-EDM-POLICY; + } + } + container proposals { + description + "IKEv2 proposals on this node"; + list proposal { + key "name"; + description + "IKEv2 proposal data"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the IKEv2 proposal"; + } + uses IKEV2-EDM-PROPOSAL; + } + } + container profiles { + description + "IKEv2 profiles on this node"; + list profile { + key "name"; + description + "IKEv2 profile data"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the IKEv2 profile"; + } + uses IKEV2-EDM-PROFILE; + } + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-cfg.yang new file mode 100644 index 000000000..7b8dc8ada --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-cfg.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-infra-alarm-logger-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-alarm-logger-cfg"; + prefix infra-alarm-logger-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-infra-alarm-logger-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-infra-syslog-cfg { + prefix a1; + } + + 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 infra-alarm-logger package configuration. + + This YANG module augments the + Cisco-IOS-XR-infra-syslog-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-02-23 { + description + "Added pre-config suppression feature"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:syslog" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-syslog-cfg'"; + container alarm-logger { + description + "Alarm Logger Properties"; + container alarm-filter-strings { + description + "List of filter strings"; + list alarm-filter-string { + key "filter-string"; + description + "Match string to filter alarms"; + leaf filter-string { + type xr:Cisco-ios-xr-string; + description + "Filter String"; + } + } + } + leaf pre-config-suppression { + type empty; + description + "Suppress events from a card/VM till its + configuration is complete"; + } + leaf severity-level { + type dt1:Alarm-logger-severity-level; + description + "Log all events with equal or higher (lower + level) severity than this"; + } + leaf pre-config-suppression-timeout { + type uint32 { + range "1..60"; + } + units "minute"; + default "15"; + description + "Timeout (in minutes) for pre-config events + suppression (default 15)"; + } + leaf buffer-size { + type uint32 { + range "1024..1024000"; + } + description + "Set size of the local event buffer"; + } + leaf source-location { + type empty; + description + "Enable alarm source location in message text"; + } + leaf threshold { + type uint32 { + range "10..100"; + } + default "90"; + description + "Configure threshold (%) for capacity alarm"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-datatypes.yang new file mode 100644 index 000000000..9b9336b54 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-datatypes.yang @@ -0,0 +1,79 @@ +module Cisco-IOS-XR-infra-alarm-logger-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-alarm-logger-datatypes"; + prefix infra-alarm-logger-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Alarm-logger-severity-level { + type enumeration { + enum "emergency" { + value 0; + description + "Emergency"; + } + enum "alert" { + value 1; + description + "Alert"; + } + enum "critical" { + value 2; + description + "Critical"; + } + enum "error" { + value 3; + description + "Error"; + } + enum "warning" { + value 4; + description + "Warning"; + } + enum "notice" { + value 5; + description + "Notice"; + } + enum "informational" { + value 6; + description + "Informational"; + } + } + description + "Alarm logger severity level"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper-sub1.yang new file mode 100644 index 000000000..fa62fae7b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper-sub1.yang @@ -0,0 +1,211 @@ +submodule Cisco-IOS-XR-infra-alarm-logger-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-alarm-logger-oper { + prefix Cisco-IOS-XR-infra-alarm-logger-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-alarm-logger package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Al-alarm-bistate { + type enumeration { + enum "not-available" { + value 0; + description + "not available"; + } + enum "active" { + value 1; + description + "active"; + } + enum "clear" { + value 2; + description + "clear"; + } + } + description + "Al alarm bistate"; + } + + typedef Al-alarm-severity { + type enumeration { + enum "unknown" { + value -1; + description + "unknown"; + } + enum "emergency" { + value 0; + description + "emergency"; + } + enum "alert" { + value 1; + description + "alert"; + } + enum "critical" { + value 2; + description + "critical"; + } + enum "error" { + value 3; + description + "error"; + } + enum "warning" { + value 4; + description + "warning"; + } + enum "notice" { + value 5; + description + "notice"; + } + enum "informational" { + value 6; + description + "informational"; + } + enum "debugging" { + value 7; + description + "debugging"; + } + } + description + "Al alarm severity"; + } + + grouping AL-ALDEMS-ALARM-BAG { + description + "Alarm-Logger alarm"; + leaf source-id { + type string; + description + "Source Identifier(Location).Indicates the node + in which the alarm was generated"; + } + leaf timestamp { + type uint64; + units "millisecond"; + description + "Time when the alarm was generated. It is + expressed in number of milliseconds since 00:00 + :00 UTC, January 1, 1970"; + } + leaf category { + type string; + description + "Category of the alarm"; + } + leaf group { + type string; + description + "Group of messages to which this alarm belongs to"; + } + leaf code { + type string; + description + "Alarm code which further qualifies the alarm + within a message group"; + } + leaf severity { + type Al-alarm-severity; + description + "Severity of the alarm"; + } + leaf state { + type Al-alarm-bistate; + description + "State of the alarm (bistate alarms only)"; + } + leaf correlation-id { + type uint32; + description + "Correlation Identifier"; + } + leaf is-admin { + type boolean; + description + "Indicates the event id admin-level"; + } + leaf additional-text { + type string; + description + "Full text of the Alarm"; + } + } + + grouping AL-LOGGING-INFO-BAG { + description + "Logging information"; + leaf log-buffer-size { + type uint32; + units "byte"; + description + "Current Logging Buffer Size (Bytes)"; + } + leaf max-log-buffer-size { + type uint32; + units "byte"; + description + "Maximum Logging Buffer Size (Bytes) "; + } + leaf record-count { + type uint32; + description + "Number of Records in the Buffer"; + } + leaf capacity-threshold { + type uint32; + units "percentage"; + description + "Percentage of the buffer utilization which, when + exceeded, triggers the generation of a + notification for the clients of the XML agent"; + } + leaf severity-filter { + type Al-alarm-severity; + description + "Severity Filter"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper.yang new file mode 100644 index 000000000..d25301fe2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-alarm-logger-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-infra-alarm-logger-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-alarm-logger-oper"; + prefix infra-alarm-logger-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-alarm-logger-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-alarm-logger package operational data. + + This module contains definitions + for the following management objects: + alarm-logger: Alarm Logger operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container alarm-logger { + config false; + description + "Alarm Logger operational data"; + container buffer-status { + description + "Describes buffer utilization and parameters + configured"; + uses AL-LOGGING-INFO-BAG; + } + container alarms { + description + "Table that contains the database of logged + alarms"; + list alarm { + key "event-id"; + description + "One of the logged alarms"; + leaf event-id { + type uint32; + description + "Event ID"; + } + uses AL-ALDEMS-ALARM-BAG; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-ceredundancymib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-ceredundancymib-cfg.yang new file mode 100644 index 000000000..e5f03945d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-ceredundancymib-cfg.yang @@ -0,0 +1,70 @@ +module Cisco-IOS-XR-infra-ceredundancymib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-ceredundancymib-cfg"; + prefix infra-ceredundancymib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 infra-ceredundancymib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container entity-redundancy { + description + "CISCO-ENTITY-REDUNDANCY-MIB notification + configuration"; + leaf switchover { + type empty; + description + "Enable switchover notification"; + } + leaf enable { + type empty; + description + "Enable CISCO-ENTITY-REDUNDANCY-MIB notification"; + } + leaf status { + type empty; + description + "Enable status change notification"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-confcopymib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-confcopymib-cfg.yang new file mode 100644 index 000000000..cc3cc24d5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-confcopymib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-infra-confcopymib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-confcopymib-cfg"; + prefix infra-confcopymib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 infra-confcopymib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container config-copy { + description + "CISCO-CONFIG-COPY-MIB notification configuration"; + leaf completion { + type empty; + description + "Enable ccCopyCompletion notification"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-cfg.yang new file mode 100644 index 000000000..b973ce2b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-cfg.yang @@ -0,0 +1,560 @@ +module Cisco-IOS-XR-infra-correlator-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-correlator-cfg"; + prefix infra-correlator-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-infra-syslog-cfg { + prefix a1; + } + + 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 infra-correlator package configuration. + + This YANG module augments the + Cisco-IOS-XR-infra-syslog-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CONTEXT-CORRELATION { + description + "Common node of non-stateful, stateful"; + leaf context-correlation { + type empty; + description + "Enable correlation on alarm context"; + } + } + + grouping NON-ROOT-CAUSE-TABLE { + description + "Common node of non-stateful, stateful"; + container non-root-causes { + description + "Table of configured non-rootcause"; + list non-root-cause { + key "category group message-code"; + description + "A non-rootcause"; + leaf category { + type string; + description + "Correlated message category"; + } + leaf group { + type string; + description + "Correlated message group"; + } + leaf message-code { + type string; + description + "Correlated message code"; + } + } + } + } + + grouping TIMEOUT-ROOT-CAUSE { + description + "Common node of non-stateful, stateful"; + leaf timeout-root-cause { + type uint32 { + range "1..7200000"; + } + units "millisecond"; + description + "Rootcause Timeout (time to wait for rootcause) + in milliseconds"; + } + } + + grouping APPLIED-TO { + description + "Common node of rule, rule-set"; + container applied-to { + description + "Applied to the Rule or Ruleset"; + container contexts { + description + "Table of configured contexts to apply"; + list context { + key "context"; + description + "A context"; + leaf context { + type string { + length "1..32"; + } + description + "Context"; + } + } + } + container locations { + description + "Table of configured locations to apply"; + list location { + key "location"; + description + "A location"; + leaf location { + type xr:Node-id; + description + "Location"; + } + } + } + leaf all { + type empty; + description + "Apply to all of the router"; + } + } + } + + grouping TIMEOUT { + description + "Common node of non-stateful, stateful"; + leaf timeout { + type uint32 { + range "1..7200000"; + } + units "millisecond"; + description + "Timeout (time to wait for active correlation) in + milliseconds"; + } + } + + grouping ROOT-CAUSE { + description + "Common node of non-stateful, stateful"; + container root-cause { + description + "The root cause"; + leaf category { + type string; + description + "Root message category"; + } + leaf group { + type string; + description + "Root message group"; + } + leaf message-code { + type string; + description + "Root message code"; + } + } + } + + augment "/a1:syslog" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-syslog-cfg'"; + container correlator { + description + "Configure properties of the event correlator"; + container rules { + description + "Table of configured rules"; + list rule { + key "name"; + description + "Rule name"; + container definition { + description + "Configure a specified correlation rule"; + leaf timeout { + type uint32 { + range "1..7200000"; + } + description + "Timeout (time the rule is to be active) in + milliseconds"; + } + leaf category-name-entry1 { + type string; + description + "Root message category name"; + } + leaf group-name-entry1 { + type string; + description + "Root message group name"; + } + leaf message-code-entry1 { + type string; + description + "Root message code"; + } + leaf category-name-entry2 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry2 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry2 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry3 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry3 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry3 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry4 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry4 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry4 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry5 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry5 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry5 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry6 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry6 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry6 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry7 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry7 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry7 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry8 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry8 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry8 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry9 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry9 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry9 { + type string; + description + "Correlated message code"; + } + leaf category-name-entry10 { + type string; + description + "Correlated message category name"; + } + leaf group-name-entry10 { + type string; + description + "Correlated message group name"; + } + leaf message-code-entry10 { + type string; + description + "Correlated message code"; + } + } + container non-stateful { + description + "The Non-Stateful Rule Type"; + uses CONTEXT-CORRELATION; + uses TIMEOUT-ROOT-CAUSE; + uses NON-ROOT-CAUSE-TABLE; + uses ROOT-CAUSE; + uses TIMEOUT; + } + container stateful { + description + "The Stateful Rule Type"; + leaf reparent { + type empty; + description + "Enable reparent of alarm on rootcause alarm + clear"; + } + leaf reissue { + type empty; + description + "Enable reissue of non-bistate alarms on + rootcause alarm clear"; + } + uses CONTEXT-CORRELATION; + uses TIMEOUT-ROOT-CAUSE; + uses NON-ROOT-CAUSE-TABLE; + uses ROOT-CAUSE; + uses TIMEOUT; + } + container apply-to { + description + "Apply the Rules"; + container contexts { + description + "Apply rule to a specified list of contexts, + e.g. interfaces"; + leaf-list context { + type string; + max-elements "32"; + description + "One or more context names"; + } + } + container locations { + description + "Apply rule to a specified list of Locations"; + leaf-list location { + type xr:Node-id; + max-elements "32"; + description + "One or more Locations"; + } + } + leaf all-of-router { + type empty; + description + "Apply the rule to all of the router"; + } + } + leaf name { + type string { + length "1..32"; + } + description + "Rule name"; + } + uses APPLIED-TO; + } + } + container rule-sets { + description + "Table of configured rulesets"; + list rule-set { + key "name"; + description + "Ruleset name"; + container rulenames { + description + "Table of configured rulenames"; + list rulename { + key "rulename"; + description + "A rulename"; + leaf rulename { + type string { + length "1..32"; + } + description + "Rule name"; + } + } + } + leaf name { + type string { + length "1..32"; + } + description + "Ruleset name"; + } + uses APPLIED-TO; + } + } + leaf buffer-size { + type uint32 { + range "1024..52428800"; + } + description + "Configure size of the correlator buffer"; + } + } + } + augment "/a1:syslog" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-syslog-cfg'"; + container suppression { + description + "Configure properties of the syslog/alarm + suppression"; + container rules { + description + "Table of configured rules"; + list rule { + key "name"; + description + "Rule name"; + container applied-to { + description + "Applied to the Rule"; + container sources { + description + "Table of configured sources to apply"; + list source { + key "source"; + description + "An alarm source"; + leaf source { + type xr:Node-id; + description + "Source"; + } + } + } + leaf all { + type empty; + description + "Apply to all of the router"; + } + } + container alarm-causes { + description + "Causes of alarms to be suppressed"; + list alarm-cause { + key "category group code"; + description + "Category, Group and Code of alarm/syslog to + be suppressed"; + leaf category { + type string { + length "1..32"; + } + description + "Category"; + } + leaf group { + type string { + length "1..32"; + } + description + "Group"; + } + leaf code { + type string { + length "1..32"; + } + description + "Code"; + } + } + } + leaf all-alarms { + type empty; + description + "Suppress all alarms"; + } + leaf name { + type string { + length "1..32"; + } + description + "Rule name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper-sub1.yang new file mode 100644 index 000000000..9a49abe16 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper-sub1.yang @@ -0,0 +1,474 @@ +submodule Cisco-IOS-XR-infra-correlator-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-correlator-oper { + prefix Cisco-IOS-XR-infra-correlator-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-correlator package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Al-alarm-bistate { + type enumeration { + enum "not-available" { + value 0; + description + "not available"; + } + enum "active" { + value 1; + description + "active"; + } + enum "clear" { + value 2; + description + "clear"; + } + } + description + "Al alarm bistate"; + } + + typedef Context { + type string { + length "0..33"; + } + description + "Context"; + } + + typedef Al-alarm-severity { + type enumeration { + enum "unknown" { + value -1; + description + "unknown"; + } + enum "emergency" { + value 0; + description + "emergency"; + } + enum "alert" { + value 1; + description + "alert"; + } + enum "critical" { + value 2; + description + "critical"; + } + enum "error" { + value 3; + description + "error"; + } + enum "warning" { + value 4; + description + "warning"; + } + enum "notice" { + value 5; + description + "notice"; + } + enum "informational" { + value 6; + description + "informational"; + } + enum "debugging" { + value 7; + description + "debugging"; + } + } + description + "Al alarm severity"; + } + + typedef Ac-rule-state { + type enumeration { + enum "rule-unapplied" { + value 0; + description + "Rule is in Unapplied state"; + } + enum "rule-applied" { + value 1; + description + "Rule is Applied to specified RacksSlots, + Contexts and Sources"; + } + enum "rule-applied-all" { + value 2; + description + "Rule is Applied to all of router"; + } + } + description + "Ac rule state"; + } + + grouping AC-RULE-DETAIL-BAG { + description + "Correlation Rule detail information"; + container rule-summary { + description + "Rule summary, name, etc"; + uses AC-RULE-SUMMARY-BAG; + } + leaf timeout { + type uint32; + description + "Time window (in ms) for which root/all messages + are kept in correlater before sending them to + the logger"; + } + leaf root-cause-timeout { + type uint32; + description + "Timeout before root cause alarm"; + } + leaf internal { + type boolean; + description + "True if the rule is internal"; + } + leaf reissue-non-bistate { + type boolean; + description + "Whether to reissue non-bistate alarms"; + } + leaf reparent { + type boolean; + description + "Reparent"; + } + leaf context-correlation { + type boolean; + description + "Whether context correlation is enabled"; + } + leaf-list apply-location { + type xr:Node-id; + description + "Locations (R/S/M) to which the rule is applied"; + } + leaf-list apply-context { + type Context; + description + "Contexts (Interfaces) to which the rule is + applied"; + } + list codes { + description + "Message codes defining the rule."; + uses AC-MSG-CODE; + } + } + + grouping AC-RULE-SUMMARY-BAG { + description + "Correlation Rule summary information"; + leaf rule-name-xr { + type string; + description + "Correlation Rule Name"; + } + leaf stateful { + type boolean; + description + "Whether the rule is stateful"; + } + leaf rule-state { + type Ac-rule-state; + description + "Applied state of the rule It could be not + applied, applied or applied to all"; + } + leaf buffered-alarms-count { + type uint32; + description + "Number of buffered alarms correlated to this + rule"; + } + } + + grouping AC-RULESET-DETAIL-BAG { + description + "Correlation Ruleset detail information"; + leaf rule-set-name-xr { + type string; + description + "Ruleset Name"; + } + list rules { + description + "Rules contained in a ruleset"; + uses AC-RULE-SUMMARY-BAG; + } + } + + grouping AC-RULESET-SUMMARY-BAG { + description + "Correlation Ruleset summary information"; + leaf rule-set-name-xr { + type string; + description + "Ruleset Name"; + } + } + + grouping AL-ALDEMS-ALARM-BAG { + description + "Alarm-Logger alarm"; + leaf source-id { + type string; + description + "Source Identifier(Location).Indicates the node + in which the alarm was generated"; + } + leaf timestamp { + type uint64; + units "millisecond"; + description + "Time when the alarm was generated. It is + expressed in number of milliseconds since 00:00 + :00 UTC, January 1, 1970"; + } + leaf category { + type string; + description + "Category of the alarm"; + } + leaf group { + type string; + description + "Group of messages to which this alarm belongs to"; + } + leaf code { + type string; + description + "Alarm code which further qualifies the alarm + within a message group"; + } + leaf severity { + type Al-alarm-severity; + description + "Severity of the alarm"; + } + leaf state { + type Al-alarm-bistate; + description + "State of the alarm (bistate alarms only)"; + } + leaf correlation-id { + type uint32; + description + "Correlation Identifier"; + } + leaf is-admin { + type boolean; + description + "Indicates the event id admin-level"; + } + leaf additional-text { + type string; + description + "Full text of the Alarm"; + } + } + + grouping AC-ALDEMS-ALARM-BAG { + description + "Correlator Alarm"; + container alarm-info { + description + "Correlated alarm information"; + uses AL-ALDEMS-ALARM-BAG; + } + leaf rule-name { + type string; + description + "Correlation rule name"; + } + leaf context { + type string; + description + "Context string for the alarm"; + } + } + + grouping AC-BUFFER-INFO-BAG { + description + "Correlator buffer usage information"; + leaf current-size { + type uint32; + description + "Current buffer usage"; + } + leaf configured-size { + type uint32; + description + "Configured buffer size"; + } + } + + grouping AC-RULE-INFO-BAG { + description + "Deprecated bag for correlation rule information"; + leaf rule-name-xr { + type string; + description + "Correlation Rule Name"; + } + leaf timeout { + type uint32; + description + "Time window (in ms) for which root/all messages + are kept in correlater before sending them to + the logger"; + } + leaf rule-state { + type Ac-rule-state; + description + "Applied state of the rule It could be not + applied, applied or applied to all"; + } + leaf-list apply-location { + type xr:Node-id; + max-elements "32"; + description + "Locations (R/S/M) to which the rule is applied"; + } + leaf-list apply-context { + type Context; + max-elements "32"; + description + "Contexts (Interfaces) to which the rule is + applied"; + } + list codes { + max-elements "10"; + description + "Message codes defining the rule."; + uses AC-MSG-CODE; + } + } + + grouping AC-MSG-CODE { + description + "MSG group code pair"; + leaf category { + type string; + description + "Category of messages to which this alarm belongs"; + } + leaf group { + type string; + description + "Group of messages to which this alarm belongs"; + } + leaf code { + type string; + description + "Alarm code which further qualifies the alarm + within a message group"; + } + } + + grouping AC-SUPPR-RULE-DETAIL-BAG { + description + "Suppress Rule detail information"; + container rule-summary { + description + "Rule summary, name, etc"; + uses AC-SUPPR-RULE-SUMMARY-BAG; + } + leaf all-alarms { + type boolean; + description + "Match any alarm"; + } + leaf alarm-severity { + type Al-alarm-severity; + description + "Severity level to suppress"; + } + leaf-list apply-source { + type xr:Node-id; + description + "Sources (R/S/M) to which the rule is applied"; + } + list codes { + description + "Message codes defining the rule."; + uses AC-MSG-CODE; + } + } + + grouping AC-SUPPR-RULE-SUMMARY-BAG { + description + "Suppress Rule summary information"; + leaf rule-name-xr { + type string; + description + "Suppress Rule Name"; + } + leaf rule-state { + type Ac-rule-state; + description + "Applied state of the rule It could be not + applied, applied or applied to all"; + } + leaf suppressed-alarms-count { + type uint32; + description + "Number of suppressed alarms associated with this + rule"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper.yang new file mode 100644 index 000000000..3ac9c6ead --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-correlator-oper.yang @@ -0,0 +1,209 @@ +module Cisco-IOS-XR-infra-correlator-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-correlator-oper"; + prefix infra-correlator-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-correlator-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-correlator package operational data. + + This module contains definitions + for the following management objects: + suppression: Suppression operational data + correlator: Correlator operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container suppression { + config false; + description + "Suppression operational data"; + container rule-summaries { + description + "Table that contains the database of suppression + rule summary"; + list rule-summary { + key "rule-name"; + description + "One of the suppression rules"; + leaf rule-name { + type string { + length "1..32"; + } + description + "Suppression Rule Name"; + } + uses AC-SUPPR-RULE-SUMMARY-BAG; + } + } + container rule-details { + description + "Table that contains the database of suppression + rule details"; + list rule-detail { + key "rule-name"; + description + "Details of one of the suppression rules"; + leaf rule-name { + type string { + length "1..32"; + } + description + "Suppression Rule Name"; + } + uses AC-SUPPR-RULE-DETAIL-BAG; + } + } + } + container correlator { + config false; + description + "Correlator operational data"; + container rules { + description + "Table that contains the database of correlation + rules"; + list rule { + key "rule-name"; + description + "One of the correlation rules"; + leaf rule-name { + type string { + length "1..32"; + } + description + "Correlation Rule Name"; + } + uses AC-RULE-INFO-BAG; + } + } + container buffer-status { + description + "Describes buffer utilization and parameters + configured"; + uses AC-BUFFER-INFO-BAG; + } + container alarms { + description + "Correlated alarms Table"; + list alarm { + key "alarm-id"; + description + "One of the correlated alarms"; + leaf alarm-id { + type uint32; + description + "Alarm ID"; + } + uses AC-ALDEMS-ALARM-BAG; + } + } + container rule-set-summaries { + description + "Table that contains the ruleset summary info"; + list rule-set-summary { + key "rule-set-name"; + description + "Summary of one of the correlation rulesets"; + leaf rule-set-name { + type string { + length "1..32"; + } + description + "Ruleset Name"; + } + uses AC-RULESET-SUMMARY-BAG; + } + } + container rule-set-details { + description + "Table that contains the ruleset detail info"; + list rule-set-detail { + key "rule-set-name"; + description + "Detail of one of the correlation rulesets"; + leaf rule-set-name { + type string { + length "1..32"; + } + description + "Ruleset Name"; + } + uses AC-RULESET-DETAIL-BAG; + } + } + container rule-details { + description + "Table that contains the database of correlation + rule details"; + list rule-detail { + key "rule-name"; + description + "Details of one of the correlation rules"; + leaf rule-name { + type string { + length "1..32"; + } + description + "Correlation Rule Name"; + } + uses AC-RULE-DETAIL-BAG; + } + } + container rule-summaries { + description + "Table that contains the database of correlation + rule summary"; + list rule-summary { + key "rule-name"; + description + "One of the correlation rules"; + leaf rule-name { + type string { + length "1..32"; + } + description + "Correlation Rule Name"; + } + uses AC-RULE-SUMMARY-BAG; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-cfg.yang new file mode 100644 index 000000000..846700c4e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-cfg.yang @@ -0,0 +1,183 @@ +module Cisco-IOS-XR-infra-fti-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-fti-cfg"; + prefix infra-fti-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 infra-fti package configuration. + + This module contains definitions + for the following management objects: + dci-fabric-interconnect: Configure FTI + parameters/sub-parameters + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-13 { + description + "Initial Revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dci-fabric-interconnect { + description + "Configure FTI parameters/sub-parameters"; + container fabrics { + description + "Configure fabric parameters"; + list fabric { + key "id1"; + description + "Enter fabric identifier"; + container controllers { + description + "Enter Opflex peer info"; + list controller { + key "ip1"; + description + "Enter Spine IP address"; + leaf ip1 { + type inet:ipv4-address-no-zone; + description + "Enter Spine IP address"; + } + } + } + leaf ssl { + type string; + description + "Disabled or Path to certificate"; + } + leaf id1 { + type uint32 { + range "1000..9999"; + } + description + "fabric identifier"; + } + } + } + container acp { + description + "Configure Auto Config Pool parameters"; + container bd-range { + description + "Specify BD pool range"; + leaf bd-min { + type uint32 { + range "1..4000"; + } + description + "BD Range:min value"; + } + leaf bd-max { + type uint32; + description + "BD Range:max value"; + } + } + container vni-range { + description + "Specify VNI pool range"; + leaf vni-min { + type uint32 { + range "1..4000"; + } + description + "VNI Range:min value"; + } + leaf vni-max { + type uint32; + description + "VNI Range:max value"; + } + } + container bvi-range { + description + "Specify BVI pool range"; + leaf bvi-min { + type uint32 { + range "1..4000"; + } + description + "BVI Range:min value"; + } + leaf bvi-max { + type uint32; + description + "BVI Range:max value"; + } + } + container vrfs { + description + "Configure local VRF parameters"; + list vrf { + key "vrf-name"; + description + "vrf name"; + leaf bvi-vrf-ip { + type inet:ipv4-address-no-zone; + description + "BVI override IP address"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "vrf name"; + } + } + } + leaf nve-id { + type uint32; + description + "Specify NVE interface id"; + } + leaf bgp-as { + type uint32; + description + "Specify BGP AS number"; + } + leaf bg-name { + type string; + description + "Specify Bridge-group name"; + } + } + leaf identity { + type inet:ipv4-address-no-zone; + description + "Identity (Loopback IP address)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper-sub1.yang new file mode 100644 index 000000000..6c20f0987 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper-sub1.yang @@ -0,0 +1,382 @@ +submodule Cisco-IOS-XR-infra-fti-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-fti-oper { + prefix Cisco-IOS-XR-infra-fti-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-fti package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fti-bag-fabric-peer-state { + type enumeration { + enum "fti-bag-fabric-peer-status-disconnected" { + value 0; + description + "Disconnected"; + } + enum "fti-bag-fabric-peer-status-connecting" { + value 1; + description + "Connecting"; + } + enum "fti-bag-fabric-peer-status-connected" { + value 2; + description + "Connected"; + } + enum "fti-bag-fabric-peer-status-ready" { + value 3; + description + "Ready"; + } + enum "fti-bag-fabric-peer-status-closing" { + value 4; + description + "Closing"; + } + } + description + "FTI Fabric Peer States"; + } + + typedef Fti-bag-fabric-state { + type enumeration { + enum "fti-bag-fabric-state-active-down" { + value 0; + description + "Active (Down)"; + } + enum "fti-bag-fabric-state-active-degraded" { + value 1; + description + "Active (Degraded)"; + } + enum "fti-bag-fabric-state-active-healthy" { + value 2; + description + "Active (Healthy)"; + } + enum "fti-bag-fabric-state-inactive" { + value 3; + description + "Inactive"; + } + } + description + "FTI Fabric States"; + } + + typedef Fti-bag-fabric-config-state { + type enumeration { + enum "fti-bag-config-complete" { + value 0; + description + "Config Complete"; + } + enum "fti-bag-config-incomplete" { + value 1; + description + "Config Incomplete"; + } + } + description + "FTI Fabric Config States"; + } + + grouping FTI-ACP { + description + "FTI ACP"; + leaf vni-min { + type uint32; + description + "VNI MIN VALUE"; + } + leaf vni-max { + type uint32; + description + "VNI MAX VALUE"; + } + leaf vni-bits { + type uint32; + description + "Num of VNI used bits"; + } + leaf bvi-min { + type uint32; + description + "BVI MIN VALUE"; + } + leaf bvi-max { + type uint32; + description + "BVI MAX VALUE"; + } + leaf bvi-bits { + type uint32; + description + "Num of BVI used bits"; + } + leaf bd-min { + type uint32; + description + "BD MIN VALUE"; + } + leaf bd-max { + type uint32; + description + "BD MAX VALUE"; + } + leaf bd-bits { + type uint32; + description + "Num of BD used bits"; + } + leaf vniused-range { + type string; + description + "Used VNI Range"; + } + leaf bviused-range { + type string; + description + "Used BVI Range"; + } + leaf bdused-range { + type string; + description + "Used BD Range"; + } + } + + grouping FTI-DCI-VRF-INFO { + description + "FTI DCI VRF INFO"; + leaf dci-vrf { + type string; + description + "DCI VRF"; + } + leaf num-fabric-vrf { + type uint32; + description + "Number of Fabric VRFs"; + } + leaf faric-vrfs-id-name { + type string; + description + "Associated Fabric Vrfs Info"; + } + leaf vni-id { + type uint32; + description + "VNI Id"; + } + leaf bd-name { + type string; + description + "BD Name"; + } + leaf bvi-id { + type uint32; + description + "BVI Id"; + } + leaf bvi-ip { + type string; + description + "BVI Override IP"; + } + leaf bvi-ip-v6 { + type boolean; + description + "BVI IPV6. False is disabled, True is enabled"; + } + leaf dci-vrf-flags { + type string; + description + "DCI VRF Flags"; + } + list v4-import-rt { + description + "V4 Import Route Targets"; + uses VRF-RT; + } + list v4-export-rt { + description + "V4 Export Route Targets"; + uses VRF-RT; + } + list v6-import-rt { + description + "V6 Import Route Targets"; + uses VRF-RT; + } + list v6-export-rt { + description + "V6 Export Route Targets"; + uses VRF-RT; + } + } + + grouping VRF-RT { + description + "VRF RT"; + leaf rt-value { + type string; + description + "RT Value"; + } + leaf rt-flags { + type string; + description + "RT Flags"; + } + } + + grouping FABRIC-VRF { + description + "FABRIC VRF"; + leaf fabric-vrf { + type string; + description + "Fabric VRF"; + } + leaf dci-vrf { + type string; + description + "Dci VRF"; + } + leaf fabric-vrf-flags { + type string; + description + "Fabric VRF Flags"; + } + list v4-import-rt { + description + "V4 Import Route Targets"; + uses VRF-RT; + } + list v4-export-rt { + description + "V4 Export Route Targets"; + uses VRF-RT; + } + list v6-import-rt { + description + "V6 Import Route Targets"; + uses VRF-RT; + } + list v6-export-rt { + description + "V6 Export Route Targets"; + uses VRF-RT; + } + } + + grouping FTI-FABRIC-VRF-INFO { + description + "FTI FABRIC VRF INFO"; + leaf fabric-id { + type uint32; + description + "Fabric Id"; + } + list fabric-vrf { + description + "Fabric VRFs"; + uses FABRIC-VRF; + } + } + + grouping FTI-FABRIC-PEER-INFO { + description + "FTI FABRIC PEER INFO"; + leaf peer-ip { + type inet:ipv4-address; + description + "Peer IP"; + } + leaf peer-port { + type uint32; + description + "Peer Port"; + } + leaf peer-state { + type Fti-bag-fabric-peer-state; + description + "Peer State"; + } + leaf last-upd-ts-peer-status { + type uint64; + description + "Peer Status Last Update Timestamp"; + } + } + + grouping FTI-FABRIC-SESSION-INFO { + description + "FTI FABRIC SESSION INFO"; + leaf fabric-id { + type uint32; + description + "Fabric Id"; + } + leaf config-state { + type Fti-bag-fabric-config-state; + description + "Config State"; + } + leaf last-upd-ts-config { + type uint64; + description + "Config Last Update Timestamp"; + } + leaf fabric-state { + type Fti-bag-fabric-state; + description + "Fabric State"; + } + leaf last-upd-ts-fabric { + type uint64; + description + "Fabric Last Update Timestamp"; + } + list peer-info { + description + "Fabric Per Peer Info"; + uses FTI-FABRIC-PEER-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper.yang new file mode 100644 index 000000000..f5a07b002 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-fti-oper.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-infra-fti-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-fti-oper"; + prefix infra-fti-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-fti-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-fti package operational data. + + This module contains definitions + for the following management objects: + dci-fabric-interconnect: Display FTI operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dci-fabric-interconnect { + config false; + description + "Display FTI operational data"; + container opflex-session-infos { + description + "FTI Opflex Session Info for all fabrics"; + list opflex-session-info { + key "id1"; + description + "FTI Opflex Session Info for a particular fabric"; + leaf id1 { + type uint32 { + range "1000..9999"; + } + description + "fabric identifier"; + } + uses FTI-FABRIC-SESSION-INFO; + } + } + container fabric-vrf-dbs { + description + "FTI Fabric-VRF DB for all fabrics"; + list fabric-vrf-db { + key "id1"; + description + "FTI Fabric-VRF DB for a particular fabric"; + leaf id1 { + type uint32 { + range "1000..9999"; + } + description + "fabric identifier"; + } + uses FTI-FABRIC-VRF-INFO; + } + } + container dci-vrfs { + description + "FTI DCI-VRF DB for all VRFs"; + list dci-vrf { + key "vrf1"; + description + "FTI DCI-VRF Info for a particular VRF"; + leaf vrf1 { + type xr:Cisco-ios-xr-string; + description + "vrf name"; + } + uses FTI-DCI-VRF-INFO; + } + } + container acp { + description + "Auto Config Pool Info"; + uses FTI-ACP; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-cfg.yang new file mode 100644 index 000000000..438dd5ec7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-cfg.yang @@ -0,0 +1,103 @@ +module Cisco-IOS-XR-infra-infra-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-infra-cfg"; + prefix infra-infra-cfg; + + 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 infra-infra package configuration. + + This module contains definitions + for the following management objects: + banners: Schema for Banner configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-06-16 { + description + "Initial Rev 1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Banner { + type enumeration { + enum "exec" { + value 0; + description + "Set EXEC process creation banner"; + } + enum "incoming" { + value 1; + description + "Set incoming terminal line banner"; + } + enum "motd" { + value 2; + description + "Set Message of the Day banner"; + } + enum "login" { + value 3; + description + "Set login banner"; + } + enum "slip-ppp" { + value 4; + description + "Set Message for SLIP/PPP"; + } + enum "prompt-timeout" { + value 5; + description + "Set Message for login authentication timeout"; + } + } + description + "Banner"; + } + + container banners { + description + "Schema for Banner configuration commands"; + list banner { + key "banner-name"; + description + "Select a Banner Type"; + leaf banner-name { + type Banner; + description + "Banner Type"; + } + leaf banner-text { + type string; + mandatory true; + description + "Banner text message"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-clock-linux-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-clock-linux-cfg.yang new file mode 100644 index 000000000..97c3c087a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-clock-linux-cfg.yang @@ -0,0 +1,67 @@ +module Cisco-IOS-XR-infra-infra-clock-linux-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-infra-clock-linux-cfg"; + prefix infra-infra-clock-linux-cfg; + + 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 infra-infra-clock-linux package configuration. + + This module contains definitions + for the following management objects: + clock: Configure time-of-day clock + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-25 { + description + "removed timezone as mandatory node."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container clock { + description + "Configure time-of-day clock"; + container time-zone { + presence "Indicates a time-zone node is configured."; + description + "Configure time zone"; + leaf time-zone-name { + type string; + description + "Name of time zone"; + } + leaf area-name { + type string; + mandatory true; + description + "Area File in zoneinfo package"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-locale-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-locale-cfg.yang new file mode 100644 index 000000000..9b07160d6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-infra-locale-cfg.yang @@ -0,0 +1,1955 @@ +module Cisco-IOS-XR-infra-infra-locale-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-infra-locale-cfg"; + prefix infra-infra-locale-cfg; + + 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 infra-infra-locale package configuration. + + This module contains definitions + for the following management objects: + locale: Define the geographical locale + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Locale-country { + type enumeration { + enum "ad" { + value 1; + description + "Andorra"; + } + enum "ae" { + value 2; + description + "United Arab Emirates"; + } + enum "af" { + value 3; + description + "Afghanistan"; + } + enum "ag" { + value 4; + description + "Antigua and Barbuda"; + } + enum "ai" { + value 5; + description + "Anguilla"; + } + enum "al" { + value 6; + description + "Albania"; + } + enum "am" { + value 7; + description + "Armenia"; + } + enum "an" { + value 8; + description + "Netherlands Antilles"; + } + enum "ao" { + value 9; + description + "Angola"; + } + enum "aq" { + value 10; + description + "Antarctica"; + } + enum "ar" { + value 11; + description + "Argentina"; + } + enum "as" { + value 12; + description + "American Samoa"; + } + enum "at" { + value 13; + description + "Austria"; + } + enum "au" { + value 14; + description + "Australia"; + } + enum "aw" { + value 15; + description + "Aruba"; + } + enum "az" { + value 16; + description + "Azerbaijan"; + } + enum "ba" { + value 17; + description + "Bosnia and Herzegovina"; + } + enum "bb" { + value 18; + description + "Barbados"; + } + enum "bd" { + value 19; + description + "Bangladesh"; + } + enum "be" { + value 20; + description + "Belgium"; + } + enum "bf" { + value 21; + description + "Burkina Faso"; + } + enum "bg" { + value 22; + description + "Bulgaria"; + } + enum "bh" { + value 23; + description + "Bahrain"; + } + enum "bi" { + value 24; + description + "Burundi"; + } + enum "bj" { + value 25; + description + "Benin"; + } + enum "bm" { + value 26; + description + "Bermuda"; + } + enum "bn" { + value 27; + description + "Brunei Darussalam"; + } + enum "bo" { + value 28; + description + "Bolivia"; + } + enum "br" { + value 29; + description + "Brazil"; + } + enum "bs" { + value 30; + description + "Bahamas"; + } + enum "bt" { + value 31; + description + "Bhutan"; + } + enum "bv" { + value 32; + description + "Bouvet Island"; + } + enum "bw" { + value 33; + description + "Botswana"; + } + enum "by" { + value 34; + description + "Belarus"; + } + enum "bz" { + value 35; + description + "Belize"; + } + enum "ca" { + value 36; + description + "Canada"; + } + enum "cc" { + value 37; + description + "Cocos (Keeling) Islands"; + } + enum "cd" { + value 38; + description + "Congo, The Democratic Republic of the (Zaire)"; + } + enum "cf" { + value 39; + description + "Central African Republic"; + } + enum "cg" { + value 40; + description + "Congo"; + } + enum "ch" { + value 41; + description + "Switzerland"; + } + enum "ci" { + value 42; + description + "Cote D'Ivoire"; + } + enum "ck" { + value 43; + description + "Cook Islands"; + } + enum "cl" { + value 44; + description + "Chile"; + } + enum "cm" { + value 45; + description + "Cameroon"; + } + enum "cn" { + value 46; + description + "China"; + } + enum "co" { + value 47; + description + "Colombia"; + } + enum "cr" { + value 48; + description + "Costa Rica"; + } + enum "cu" { + value 49; + description + "Cuba"; + } + enum "cv" { + value 50; + description + "Cape Verde"; + } + enum "cx" { + value 51; + description + "Christmas Island"; + } + enum "cy" { + value 52; + description + "Cyprus"; + } + enum "cz" { + value 53; + description + "Czech Republic"; + } + enum "de" { + value 54; + description + "Germany"; + } + enum "dj" { + value 55; + description + "Djibouti"; + } + enum "dk" { + value 56; + description + "Denmark"; + } + enum "dm" { + value 57; + description + "Dominica"; + } + enum "do" { + value 58; + description + "Dominican Republic"; + } + enum "dz" { + value 59; + description + "Algeria"; + } + enum "ec" { + value 60; + description + "Ecuador"; + } + enum "ee" { + value 61; + description + "Estonia"; + } + enum "eg" { + value 62; + description + "Egypt"; + } + enum "eh" { + value 63; + description + "Western Sahara"; + } + enum "er" { + value 64; + description + "Eritrea"; + } + enum "es" { + value 65; + description + "Spain"; + } + enum "et" { + value 66; + description + "Ethiopia"; + } + enum "fi" { + value 67; + description + "Finland"; + } + enum "fj" { + value 68; + description + "Fiji"; + } + enum "fk" { + value 69; + description + "Falkland Islands (Malvinas)"; + } + enum "fm" { + value 70; + description + "Micronesia, Federated States of"; + } + enum "fo" { + value 71; + description + "Faroe Islands"; + } + enum "fr" { + value 72; + description + "France"; + } + enum "ga" { + value 73; + description + "Gabon"; + } + enum "gb" { + value 74; + description + "United Kingdom"; + } + enum "gd" { + value 75; + description + "Grenada"; + } + enum "ge" { + value 76; + description + "Georgia"; + } + enum "gf" { + value 77; + description + "French Guiana"; + } + enum "gh" { + value 78; + description + "Ghana"; + } + enum "gi" { + value 79; + description + "Gibraltar"; + } + enum "gl" { + value 80; + description + "Greenland"; + } + enum "gm" { + value 81; + description + "Gambia"; + } + enum "gn" { + value 82; + description + "Guinea"; + } + enum "gp" { + value 83; + description + "Guadeloupe"; + } + enum "gq" { + value 84; + description + "Equatorial Guinea"; + } + enum "gr" { + value 85; + description + "Greece"; + } + enum "gs" { + value 86; + description + "South Georgia and the South Sandwich Islands"; + } + enum "gt" { + value 87; + description + "Guatemala"; + } + enum "gu" { + value 88; + description + "Guam"; + } + enum "gw" { + value 89; + description + "Guinea Bissau"; + } + enum "gy" { + value 90; + description + "Guyana"; + } + enum "hk" { + value 91; + description + "Hong Kong"; + } + enum "hm" { + value 92; + description + "Heard Island and McDonald Islands"; + } + enum "hn" { + value 93; + description + "Honduras"; + } + enum "hr" { + value 94; + description + "Croatia"; + } + enum "ht" { + value 95; + description + "Haiti"; + } + enum "hu" { + value 96; + description + "Hungary"; + } + enum "id" { + value 97; + description + "Indonesia"; + } + enum "ie" { + value 98; + description + "Ireland"; + } + enum "il" { + value 99; + description + "Israel"; + } + enum "in" { + value 100; + description + "India"; + } + enum "io" { + value 101; + description + "British Indian Ocean Territory"; + } + enum "iq" { + value 102; + description + "Iraq"; + } + enum "ir" { + value 103; + description + "Iran, Islamic Republic of"; + } + enum "is" { + value 104; + description + "Iceland"; + } + enum "it" { + value 105; + description + "Italy"; + } + enum "jm" { + value 106; + description + "Jamaica"; + } + enum "jo" { + value 107; + description + "Jordan"; + } + enum "jp" { + value 108; + description + "Japan"; + } + enum "ke" { + value 109; + description + "Kenya"; + } + enum "kg" { + value 110; + description + "Kyrgyzstan"; + } + enum "kh" { + value 111; + description + "Cambodia"; + } + enum "ki" { + value 112; + description + "Kiribati"; + } + enum "km" { + value 113; + description + "Comoros"; + } + enum "kn" { + value 114; + description + "Saint Kitts and Nevis"; + } + enum "kp" { + value 115; + description + "Korea, Democratic People's Republic of"; + } + enum "kr" { + value 116; + description + "Korea, Republic of"; + } + enum "kw" { + value 117; + description + "Kuwait"; + } + enum "ky" { + value 118; + description + "Cayman Islands"; + } + enum "kz" { + value 119; + description + "Kazakstan"; + } + enum "la" { + value 120; + description + "Lao People's Democratic Republic"; + } + enum "lb" { + value 121; + description + "Lebanon"; + } + enum "lc" { + value 122; + description + "Saint Lucia"; + } + enum "li" { + value 123; + description + "Liechtenstein"; + } + enum "lk" { + value 124; + description + "Sri Lanka"; + } + enum "lr" { + value 125; + description + "Liberia"; + } + enum "ls" { + value 126; + description + "Lesotho"; + } + enum "lt" { + value 127; + description + "Lithuania"; + } + enum "lu" { + value 128; + description + "Luxembourg"; + } + enum "lv" { + value 129; + description + "Latvia"; + } + enum "ly" { + value 130; + description + "Libyan Arab Jamahiriya"; + } + enum "ma" { + value 131; + description + "Morocco"; + } + enum "mc" { + value 132; + description + "Monaco"; + } + enum "md" { + value 133; + description + "Moldova, Republic of"; + } + enum "mg" { + value 134; + description + "Madagascar"; + } + enum "mh" { + value 135; + description + "Marshall Islands"; + } + enum "mk" { + value 136; + description + "Macedonia, The Former Yugoslav Republic of"; + } + enum "ml" { + value 137; + description + "Mali"; + } + enum "mm" { + value 138; + description + "Myanmar"; + } + enum "mn" { + value 139; + description + "Mongolia"; + } + enum "mo" { + value 140; + description + "Macau"; + } + enum "mp" { + value 141; + description + "Northern Mariana Islands"; + } + enum "mq" { + value 142; + description + "Martinique"; + } + enum "mr" { + value 143; + description + "Mauritania"; + } + enum "ms" { + value 144; + description + "Montserrat"; + } + enum "mt" { + value 145; + description + "Malta"; + } + enum "mu" { + value 146; + description + "Mauritius"; + } + enum "mv" { + value 147; + description + "Maldives"; + } + enum "mw" { + value 148; + description + "Malawi"; + } + enum "mx" { + value 149; + description + "Mexico"; + } + enum "my" { + value 150; + description + "Malaysia"; + } + enum "mz" { + value 151; + description + "Mozambique"; + } + enum "na" { + value 152; + description + "Namibia"; + } + enum "nc" { + value 153; + description + "New Caledonia"; + } + enum "ne" { + value 154; + description + "Niger"; + } + enum "nf" { + value 155; + description + "Norfolk Island"; + } + enum "ng" { + value 156; + description + "Nigeria"; + } + enum "ni" { + value 157; + description + "Nicaragua"; + } + enum "nl" { + value 158; + description + "Netherlands"; + } + enum "no" { + value 159; + description + "Norway"; + } + enum "np" { + value 160; + description + "Nepal"; + } + enum "nr" { + value 161; + description + "Nauru"; + } + enum "nu" { + value 162; + description + "Niue"; + } + enum "nz" { + value 163; + description + "New Zealand"; + } + enum "om" { + value 164; + description + "Oman"; + } + enum "pa" { + value 165; + description + "Panama"; + } + enum "pe" { + value 166; + description + "Peru"; + } + enum "pf" { + value 167; + description + "French Polynesia"; + } + enum "pg" { + value 168; + description + "Papua New Guinea"; + } + enum "ph" { + value 169; + description + "Philippines"; + } + enum "pk" { + value 170; + description + "Pakistan"; + } + enum "pl" { + value 171; + description + "Poland"; + } + enum "pm" { + value 172; + description + "Saint Pierre and Miquelon"; + } + enum "pn" { + value 173; + description + "Pitcairn"; + } + enum "pr" { + value 174; + description + "Puerto Rico"; + } + enum "pt" { + value 175; + description + "Portugal"; + } + enum "pw" { + value 176; + description + "Palau"; + } + enum "py" { + value 177; + description + "Paraguay"; + } + enum "qa" { + value 178; + description + "Qatar"; + } + enum "re" { + value 179; + description + "Reunion"; + } + enum "ro" { + value 180; + description + "Romania"; + } + enum "ru" { + value 181; + description + "Russian Federation"; + } + enum "rw" { + value 182; + description + "Rwanda"; + } + enum "sa" { + value 183; + description + "Saudi Arabia"; + } + enum "sb" { + value 184; + description + "Solomon Islands"; + } + enum "sc" { + value 185; + description + "Seychelles"; + } + enum "sd" { + value 186; + description + "Sudan"; + } + enum "se" { + value 187; + description + "Sweden"; + } + enum "sg" { + value 188; + description + "Singapore"; + } + enum "sh" { + value 189; + description + "Saint Helena"; + } + enum "si" { + value 190; + description + "Slovenia"; + } + enum "sj" { + value 191; + description + "Svalbard and Jan Mayen"; + } + enum "sk" { + value 192; + description + "Slovakia"; + } + enum "sl" { + value 193; + description + "Sierra Leone"; + } + enum "sm" { + value 194; + description + "San Marino"; + } + enum "sn" { + value 195; + description + "Senegal"; + } + enum "so" { + value 196; + description + "Somalia"; + } + enum "sr" { + value 197; + description + "Suriname"; + } + enum "st" { + value 198; + description + "Sao Tome and Principe"; + } + enum "sv" { + value 199; + description + "El Salvador"; + } + enum "sy" { + value 200; + description + "Syrian Arab Republic"; + } + enum "sz" { + value 201; + description + "Swaziland"; + } + enum "tc" { + value 202; + description + "Turks and Caicos Islands"; + } + enum "td" { + value 203; + description + "Chad"; + } + enum "tf" { + value 204; + description + "French Southern Territories"; + } + enum "tg" { + value 205; + description + "Togo"; + } + enum "th" { + value 206; + description + "Thailand"; + } + enum "tj" { + value 207; + description + "Tajikistan"; + } + enum "tk" { + value 208; + description + "Tokelau"; + } + enum "tm" { + value 209; + description + "Turkmenistan"; + } + enum "tn" { + value 210; + description + "Tunisia"; + } + enum "to" { + value 211; + description + "Tonga"; + } + enum "tp" { + value 212; + description + "East Timor"; + } + enum "tr" { + value 213; + description + "Turkey"; + } + enum "tt" { + value 214; + description + "Trinidad and Tobago"; + } + enum "tv" { + value 215; + description + "Tuvalu"; + } + enum "tw" { + value 216; + description + "Taiwan, Province of China"; + } + enum "tz" { + value 217; + description + "Tanzania, United Republic of"; + } + enum "ua" { + value 218; + description + "Ukraine"; + } + enum "ug" { + value 219; + description + "Uganda"; + } + enum "um" { + value 220; + description + "United States Minor Outlying Islands"; + } + enum "us" { + value 221; + description + "United States"; + } + enum "uy" { + value 222; + description + "Uruguay"; + } + enum "uz" { + value 223; + description + "Uzbekistan"; + } + enum "va" { + value 224; + description + "Holy See (Vatican City State)"; + } + enum "vc" { + value 225; + description + "Saint Vincent and The Grenadines"; + } + enum "ve" { + value 226; + description + "Venezuela"; + } + enum "vg" { + value 227; + description + "Virgin Islands, British"; + } + enum "vi" { + value 228; + description + "Virgin Islands, U.S."; + } + enum "vn" { + value 229; + description + "Vietnam"; + } + enum "vu" { + value 230; + description + "Vanuatu"; + } + enum "wf" { + value 231; + description + "Wallis and Futuna"; + } + enum "ws" { + value 232; + description + "Samoa"; + } + enum "ye" { + value 233; + description + "Yemen"; + } + enum "yt" { + value 234; + description + "Mayotte"; + } + enum "yu" { + value 235; + description + "Yugoslavia"; + } + enum "za" { + value 236; + description + "South Africa"; + } + enum "zm" { + value 237; + description + "Zambia"; + } + enum "zw" { + value 238; + description + "Zimbabwe"; + } + } + description + "Locale country"; + } + + typedef Locale-language { + type enumeration { + enum "aa" { + value 1; + description + "Afar"; + } + enum "ab" { + value 2; + description + "Abkhazian"; + } + enum "af" { + value 3; + description + "Afrikaans"; + } + enum "am" { + value 4; + description + "Amharic"; + } + enum "ar" { + value 5; + description + "Arabic"; + } + enum "as" { + value 6; + description + "Assamese"; + } + enum "ay" { + value 7; + description + "Aymara"; + } + enum "az" { + value 8; + description + "Azerbaijani"; + } + enum "ba" { + value 9; + description + "Bashkir"; + } + enum "be" { + value 10; + description + "Byelorussian"; + } + enum "bg" { + value 11; + description + "Bulgarian"; + } + enum "bh" { + value 12; + description + "Bihari"; + } + enum "bi" { + value 13; + description + "Bislama"; + } + enum "bn" { + value 14; + description + "Bengali"; + } + enum "bo" { + value 15; + description + "Tibetan"; + } + enum "br" { + value 16; + description + "Breton"; + } + enum "ca" { + value 17; + description + "Catalan"; + } + enum "co" { + value 18; + description + "Corsican"; + } + enum "cs" { + value 19; + description + "Czech"; + } + enum "cy" { + value 20; + description + "Welsh"; + } + enum "da" { + value 21; + description + "Danish"; + } + enum "de" { + value 22; + description + "German"; + } + enum "dz" { + value 23; + description + "Bhutani"; + } + enum "el" { + value 24; + description + "Greek"; + } + enum "en" { + value 25; + description + "English"; + } + enum "eo" { + value 26; + description + "Esperanto"; + } + enum "es" { + value 27; + description + "Spanish"; + } + enum "et" { + value 28; + description + "Estonian"; + } + enum "eu" { + value 29; + description + "Basque"; + } + enum "fa" { + value 30; + description + "Persian"; + } + enum "fi" { + value 31; + description + "Finnish"; + } + enum "fj" { + value 32; + description + "Fiji"; + } + enum "fo" { + value 33; + description + "Faroese"; + } + enum "fr" { + value 34; + description + "French"; + } + enum "fy" { + value 35; + description + "Frisian"; + } + enum "ga" { + value 36; + description + "Irish"; + } + enum "gd" { + value 37; + description + "Scots Gaelic"; + } + enum "gl" { + value 38; + description + "Galician"; + } + enum "gn" { + value 39; + description + "Guarani"; + } + enum "gu" { + value 40; + description + "Gujarati"; + } + enum "ha" { + value 41; + description + "Hausa"; + } + enum "he" { + value 42; + description + "Hebrew"; + } + enum "hi" { + value 43; + description + "Hindi"; + } + enum "hr" { + value 44; + description + "Croatian"; + } + enum "hu" { + value 45; + description + "Hungarian"; + } + enum "hy" { + value 46; + description + "Armenian"; + } + enum "ia" { + value 47; + description + "Interlingua"; + } + enum "id" { + value 48; + description + "Indonesian"; + } + enum "ie" { + value 49; + description + "Interlingue"; + } + enum "ik" { + value 50; + description + "Inupiak"; + } + enum "is" { + value 51; + description + "Icelandic"; + } + enum "it" { + value 52; + description + "Italian"; + } + enum "iu" { + value 53; + description + "Inuktitut"; + } + enum "ja" { + value 54; + description + "Japanese"; + } + enum "jw" { + value 55; + description + "Javanese"; + } + enum "ka" { + value 56; + description + "Georgian"; + } + enum "kk" { + value 57; + description + "Kazakh"; + } + enum "kl" { + value 58; + description + "Greenlandic"; + } + enum "km" { + value 59; + description + "Cambodian"; + } + enum "kn" { + value 60; + description + "Kannada"; + } + enum "ko" { + value 61; + description + "Korean"; + } + enum "ks" { + value 62; + description + "Kashmiri"; + } + enum "ku" { + value 63; + description + "Kurdish"; + } + enum "ky" { + value 64; + description + "Kirghiz"; + } + enum "la" { + value 65; + description + "Latin"; + } + enum "ln" { + value 66; + description + "Lingala"; + } + enum "lo" { + value 67; + description + "Laothian"; + } + enum "lt" { + value 68; + description + "Lithuanian"; + } + enum "lv" { + value 69; + description + "Latvian, Lettish"; + } + enum "mg" { + value 70; + description + "Malagasy"; + } + enum "mi" { + value 71; + description + "Maori"; + } + enum "mk" { + value 72; + description + "Macedonian"; + } + enum "ml" { + value 73; + description + "Malayalam"; + } + enum "mn" { + value 74; + description + "Mongolian"; + } + enum "mo" { + value 75; + description + "Moldavian"; + } + enum "mr" { + value 76; + description + "Marathi"; + } + enum "ms" { + value 77; + description + "Malay"; + } + enum "mt" { + value 78; + description + "Maltese"; + } + enum "my" { + value 79; + description + "Burmese"; + } + enum "na" { + value 80; + description + "Nauru"; + } + enum "ne" { + value 81; + description + "Nepali"; + } + enum "nl" { + value 82; + description + "Dutch"; + } + enum "no" { + value 83; + description + "Norwegian"; + } + enum "oc" { + value 84; + description + "Occitan"; + } + enum "om" { + value 85; + description + "(Afan) Oromo"; + } + enum "or" { + value 86; + description + "Oriya"; + } + enum "pa" { + value 87; + description + "Punjabi"; + } + enum "pl" { + value 88; + description + "Polish"; + } + enum "ps" { + value 89; + description + "Pashto, Pushto"; + } + enum "pt" { + value 90; + description + "Portuguese"; + } + enum "qu" { + value 91; + description + "Quechua"; + } + enum "rm" { + value 92; + description + "Rhaeto Romance"; + } + enum "rn" { + value 93; + description + "Kirundi"; + } + enum "ro" { + value 94; + description + "Romanian"; + } + enum "ru" { + value 95; + description + "Russian"; + } + enum "rw" { + value 96; + description + "Kinyarwanda"; + } + enum "sa" { + value 97; + description + "Sanskrit"; + } + enum "sd" { + value 98; + description + "Sindhi"; + } + enum "sg" { + value 99; + description + "Sangho"; + } + enum "sh" { + value 100; + description + "Serbo Croatian"; + } + enum "si" { + value 101; + description + "Sinhalese"; + } + enum "sk" { + value 102; + description + "Slovak"; + } + enum "sl" { + value 103; + description + "Slovenian"; + } + enum "sm" { + value 104; + description + "Samoan"; + } + enum "sn" { + value 105; + description + "Shona"; + } + enum "so" { + value 106; + description + "Somali"; + } + enum "sq" { + value 107; + description + "Albanian"; + } + enum "sr" { + value 108; + description + "Serbian"; + } + enum "ss" { + value 109; + description + "Siswati"; + } + enum "st" { + value 110; + description + "Sesotho"; + } + enum "su" { + value 111; + description + "Sundanese"; + } + enum "sv" { + value 112; + description + "Swedish"; + } + enum "sw" { + value 113; + description + "Swahili"; + } + enum "ta" { + value 114; + description + "Tamil"; + } + enum "te" { + value 115; + description + "Telugu"; + } + enum "tg" { + value 116; + description + "Tajik"; + } + enum "th" { + value 117; + description + "Thai"; + } + enum "ti" { + value 118; + description + "Tigrinya"; + } + enum "tk" { + value 119; + description + "Turkmen"; + } + enum "tl" { + value 120; + description + "Tagalog"; + } + enum "tn" { + value 121; + description + "Setswana"; + } + enum "to" { + value 122; + description + "Tonga"; + } + enum "tr" { + value 123; + description + "Turkish"; + } + enum "ts" { + value 124; + description + "Tsonga"; + } + enum "tt" { + value 125; + description + "Tatar"; + } + enum "tw" { + value 126; + description + "Twi"; + } + enum "ug" { + value 127; + description + "Uighur"; + } + enum "uk" { + value 128; + description + "Ukrainian"; + } + enum "ur" { + value 129; + description + "Urdu"; + } + enum "uz" { + value 130; + description + "Uzbek"; + } + enum "vi" { + value 131; + description + "Vietnamese"; + } + enum "vo" { + value 132; + description + "Volapuk"; + } + enum "wo" { + value 133; + description + "Wolof"; + } + enum "xh" { + value 134; + description + "Xhosa"; + } + enum "yi" { + value 135; + description + "Yiddish"; + } + enum "yo" { + value 136; + description + "Yoruba"; + } + enum "za" { + value 137; + description + "Zhuang"; + } + enum "zh" { + value 138; + description + "Chinese"; + } + enum "zu" { + value 139; + description + "Zulu"; + } + } + description + "Locale language"; + } + + container locale { + description + "Define the geographical locale"; + leaf country { + type Locale-country; + description + "Name of country locale"; + } + leaf language { + type Locale-language; + description + "Name of language locale"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-ltrace-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-ltrace-cfg.yang new file mode 100644 index 000000000..1d9ff8a89 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-ltrace-cfg.yang @@ -0,0 +1,134 @@ +module Cisco-IOS-XR-infra-ltrace-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-ltrace-cfg"; + prefix infra-ltrace-cfg; + + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + 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 infra-ltrace package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Infra-ltrace-mode { + type enumeration { + enum "static" { + value 1; + description + "Set ltrace memory allocation to static mode"; + } + enum "dynamic" { + value 2; + description + "Set ltrace memory allocation to dynamic mode"; + } + } + description + "Infra ltrace mode"; + } + + typedef Infra-ltrace-scale { + type enumeration { + enum "0" { + value 0; + description + "Use platform-defined scale-factor"; + } + enum "1" { + value 1; + description + "Do not scale down ltrace memory request"; + } + enum "2" { + value 2; + description + "Scale down ltrace memory request by 2"; + } + enum "4" { + value 4; + description + "Scale down ltrace memory request by 4"; + } + enum "8" { + value 8; + description + "Scale down ltrace memory request by 8"; + } + enum "16" { + value 16; + description + "Scale down ltrace memory request by 16"; + } + } + description + "Infra ltrace scale"; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container ltrace { + description + "Ltrace Memory configuration"; + container allocation-params { + description + "Select Ltrace mode and scale-factor"; + leaf mode { + type Infra-ltrace-mode; + description + "Select an allocation mode (static:1, dynamic + :2)"; + } + leaf scale-factor { + type Infra-ltrace-scale; + description + "Select a scaling down factor"; + } + } + } + } + + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-notification-log-mib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-notification-log-mib-cfg.yang new file mode 100644 index 000000000..dbcd35c3d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-notification-log-mib-cfg.yang @@ -0,0 +1,89 @@ +module Cisco-IOS-XR-infra-notification-log-mib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-notification-log-mib-cfg"; + prefix infra-notification-log-mib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 infra-notification-log-mib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container notification-log-mib { + description + "Notification log MIB configuration"; + leaf global-age-out { + type uint32 { + range "1..4294967295"; + } + units "minute"; + description + "GlobalAgeOut is the minutes associated with the + mib"; + } + leaf disable { + type empty; + description + "Disable, to disable the logging in default log"; + } + leaf default { + type empty; + description + "To create a default log"; + } + leaf global-size { + type uint32 { + range "1..15000"; + } + description + "GlobalSize, max number of notifications that + can be logged in all logs"; + } + leaf default-size { + type uint32 { + range "1..15000"; + } + description + "The max number of notifications that this log + (default) can hold"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-nsr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-nsr-cfg.yang new file mode 100644 index 000000000..fcdd5add0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-nsr-cfg.yang @@ -0,0 +1,60 @@ +module Cisco-IOS-XR-infra-nsr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-nsr-cfg"; + prefix infra-nsr-cfg; + + 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 infra-nsr package configuration. + + This module contains definitions + for the following management objects: + nsr: NSR global configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-06-27 { + description + "IOS XR 6.4.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container nsr { + description + "NSR global configuration"; + container process-failure { + description + "Recovery action for process failures on active + RP/DRP"; + leaf switchover { + type empty; + description + "Enable RP/DRP switchover on process failures"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-cfg.yang new file mode 100644 index 000000000..732c9a084 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-cfg.yang @@ -0,0 +1,1007 @@ +module Cisco-IOS-XR-infra-objmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-objmgr-cfg"; + prefix infra-objmgr-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 infra-objmgr package configuration. + + This module contains definitions + for the following management objects: + udf: UDF configuration + object-group: Object-group configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-16 { + description + "Adding udf in the module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Start-port { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Echo (7)"; + } + enum "discard" { + value 9; + description + "Discard (9)"; + } + enum "daytime" { + value 13; + description + "Daytime (13)"; + } + enum "chargen" { + value 19; + description + "Character generator (19)"; + } + enum "ftp-data" { + value 20; + description + "FTP data connections (used infrequently, 20)"; + } + enum "ftp" { + value 21; + description + "File Transfer Protocol (21)"; + } + enum "ssh" { + value 22; + description + "Secure Shell (22)"; + } + enum "telnet" { + value 23; + description + "Telnet (23)"; + } + enum "smtp" { + value 25; + description + "Simple Mail Transport Protocol (25)"; + } + enum "time" { + value 37; + description + "Time (37)"; + } + enum "nicname" { + value 43; + description + "Nicname (43)"; + } + enum "tacacs" { + value 49; + description + "TAC Access Control System (49)"; + } + enum "domain" { + value 53; + description + "Domain Name Service (53)"; + } + enum "gopher" { + value 70; + description + "Gopher (70)"; + } + enum "finger" { + value 79; + description + "Finger (79)"; + } + enum "www" { + value 80; + description + "World Wide Web (HTTP, 80)"; + } + enum "host-name" { + value 101; + description + "NIC hostname server (101)"; + } + enum "pop2" { + value 109; + description + "Post Office Protocol v2 (109)"; + } + enum "pop3" { + value 110; + description + "Post Office Protocol v3 (110)"; + } + enum "sun-rpc" { + value 111; + description + "Sun Remote Procedure Call (111)"; + } + enum "ident" { + value 113; + description + "Ident Protocol (113)"; + } + enum "nntp" { + value 119; + description + "Network News Transport Protocol (119)"; + } + enum "bgp" { + value 179; + description + "Border Gateway Protocol (179)"; + } + enum "irc" { + value 194; + description + "Internet Relay Chat (194)"; + } + enum "pim-auto-rp" { + value 496; + description + "PIM Auto-RP (496)"; + } + enum "exec" { + value 512; + description + "Exec (rsh, 512)"; + } + enum "login" { + value 513; + description + "Login (rlogin, 513)"; + } + enum "cmd" { + value 514; + description + "Remote commands (rcmd, 514)"; + } + enum "lpd" { + value 515; + description + "Printer service (515)"; + } + enum "uucp" { + value 540; + description + "Unix-to-Unix Copy Program (540)"; + } + enum "klogin" { + value 543; + description + "Kerberos login (543)"; + } + enum "kshell" { + value 544; + description + "Kerberos shell (544)"; + } + enum "talk" { + value 517; + description + "Talk (517)"; + } + enum "ldp" { + value 646; + description + "LDP session connection attempts (MPLS, 646)"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "Start port"; + } + + typedef Port-operator { + type enumeration { + enum "equal" { + value 0; + description + "Match packets on ports equal to entered port + number"; + } + enum "not-equal" { + value 1; + description + "Match packets on ports not equal to entered + port number"; + } + enum "greater-than" { + value 2; + description + "Match packets on ports greater than entered + port number"; + } + enum "less-than" { + value 3; + description + "Match packets on ports less than entered port + number"; + } + } + description + "Port operator"; + } + + typedef Udf-encapsulation { + type enumeration { + enum "inner" { + value 0; + description + "Inner header for UDF"; + } + enum "outer" { + value 1; + description + "Outer header for UDF"; + } + } + description + "Udf encapsulation"; + } + + typedef Port { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Echo (7)"; + } + enum "discard" { + value 9; + description + "Discard (9)"; + } + enum "daytime" { + value 13; + description + "Daytime (13)"; + } + enum "chargen" { + value 19; + description + "Character generator (19)"; + } + enum "ftp-data" { + value 20; + description + "FTP data connections (used infrequently, 20)"; + } + enum "ftp" { + value 21; + description + "File Transfer Protocol (21)"; + } + enum "ssh" { + value 22; + description + "Secure Shell (22)"; + } + enum "telnet" { + value 23; + description + "Telnet (23)"; + } + enum "smtp" { + value 25; + description + "Simple Mail Transport Protocol (25)"; + } + enum "time" { + value 37; + description + "Time (37)"; + } + enum "nicname" { + value 43; + description + "Nicname (43)"; + } + enum "tacacs" { + value 49; + description + "TAC Access Control System (49)"; + } + enum "domain" { + value 53; + description + "Domain Name Service (53)"; + } + enum "gopher" { + value 70; + description + "Gopher (70)"; + } + enum "finger" { + value 79; + description + "Finger (79)"; + } + enum "www" { + value 80; + description + "World Wide Web (HTTP, 80)"; + } + enum "host-name" { + value 101; + description + "NIC hostname server (101)"; + } + enum "pop2" { + value 109; + description + "Post Office Protocol v2 (109)"; + } + enum "pop3" { + value 110; + description + "Post Office Protocol v3 (110)"; + } + enum "sun-rpc" { + value 111; + description + "Sun Remote Procedure Call (111)"; + } + enum "ident" { + value 113; + description + "Ident Protocol (113)"; + } + enum "nntp" { + value 119; + description + "Network News Transport Protocol (119)"; + } + enum "bgp" { + value 179; + description + "Border Gateway Protocol (179)"; + } + enum "irc" { + value 194; + description + "Internet Relay Chat (194)"; + } + enum "pim-auto-rp" { + value 496; + description + "PIM Auto-RP (496)"; + } + enum "exec" { + value 512; + description + "Exec (rsh, 512)"; + } + enum "login" { + value 513; + description + "Login (rlogin, 513)"; + } + enum "cmd" { + value 514; + description + "Remote commands (rcmd, 514)"; + } + enum "lpd" { + value 515; + description + "Printer service (515)"; + } + enum "uucp" { + value 540; + description + "Unix-to-Unix Copy Program (540)"; + } + enum "klogin" { + value 543; + description + "Kerberos login (543)"; + } + enum "kshell" { + value 544; + description + "Kerberos shell (544)"; + } + enum "talk" { + value 517; + description + "Talk (517)"; + } + enum "ldp" { + value 646; + description + "LDP session connection attempts (MPLS, 646)"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "Port"; + } + + typedef End-port { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Echo (7)"; + } + enum "discard" { + value 9; + description + "Discard (9)"; + } + enum "daytime" { + value 13; + description + "Daytime (13)"; + } + enum "chargen" { + value 19; + description + "Character generator (19)"; + } + enum "ftp-data" { + value 20; + description + "FTP data connections (used infrequently, 20)"; + } + enum "ftp" { + value 21; + description + "File Transfer Protocol (21)"; + } + enum "ssh" { + value 22; + description + "Secure Shell (22)"; + } + enum "telnet" { + value 23; + description + "Telnet (23)"; + } + enum "smtp" { + value 25; + description + "Simple Mail Transport Protocol (25)"; + } + enum "time" { + value 37; + description + "Time (37)"; + } + enum "nicname" { + value 43; + description + "Nicname (43)"; + } + enum "tacacs" { + value 49; + description + "TAC Access Control System (49)"; + } + enum "domain" { + value 53; + description + "Domain Name Service (53)"; + } + enum "gopher" { + value 70; + description + "Gopher (70)"; + } + enum "finger" { + value 79; + description + "Finger (79)"; + } + enum "www" { + value 80; + description + "World Wide Web (HTTP, 80)"; + } + enum "host-name" { + value 101; + description + "NIC hostname server (101)"; + } + enum "pop2" { + value 109; + description + "Post Office Protocol v2 (109)"; + } + enum "pop3" { + value 110; + description + "Post Office Protocol v3 (110)"; + } + enum "sun-rpc" { + value 111; + description + "Sun Remote Procedure Call (111)"; + } + enum "ident" { + value 113; + description + "Ident Protocol (113)"; + } + enum "nntp" { + value 119; + description + "Network News Transport Protocol (119)"; + } + enum "bgp" { + value 179; + description + "Border Gateway Protocol (179)"; + } + enum "irc" { + value 194; + description + "Internet Relay Chat (194)"; + } + enum "pim-auto-rp" { + value 496; + description + "PIM Auto-RP (496)"; + } + enum "exec" { + value 512; + description + "Exec (rsh, 512)"; + } + enum "login" { + value 513; + description + "Login (rlogin, 513)"; + } + enum "cmd" { + value 514; + description + "Remote commands (rcmd, 514)"; + } + enum "lpd" { + value 515; + description + "Printer service (515)"; + } + enum "uucp" { + value 540; + description + "Unix-to-Unix Copy Program (540)"; + } + enum "klogin" { + value 543; + description + "Kerberos login (543)"; + } + enum "kshell" { + value 544; + description + "Kerberos shell (544)"; + } + enum "talk" { + value 517; + description + "Talk (517)"; + } + enum "ldp" { + value 646; + description + "LDP session connection attempts (MPLS, 646)"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "End port"; + } + + typedef Layer { + type enumeration { + enum "l2" { + value 0; + description + "L2 layer for UDF"; + } + enum "l3" { + value 1; + description + "L3 layer for UDF"; + } + enum "l4" { + value 2; + description + "L4 layer for UDF"; + } + } + description + "Layer"; + } + + container udf { + description + "UDF configuration"; + container udf-objects { + description + "Table of Udf objects"; + list udf-object { + key "object-name"; + description + "UDF object group"; + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "UDF name - maximum 16 characters"; + } + leaf header { + type uint32; + description + "Set constant integer"; + } + leaf udf-encapsulation { + type Udf-encapsulation; + description + "Encapsulation options"; + } + leaf layer { + type Layer; + description + "Layer options"; + } + leaf offset { + type uint32 { + range "0..65535"; + } + units "byte"; + description + "Configure the offset value (bytes)"; + } + leaf length { + type uint32 { + range "0..65535"; + } + units "byte"; + description + "Configure the length (bytes)"; + } + } + } + } + container object-group { + description + "Object-group configuration"; + container port { + description + "Port object group"; + container udf-objects { + description + "Table of port objects groups"; + list udf-object { + key "object-name"; + description + "Port object group"; + container operators { + description + "Table of port operators"; + list operator { + key "operator-type port"; + description + "op class"; + leaf operator-type { + type Port-operator; + description + "operation for ports"; + } + leaf port { + type Port; + description + "Port number"; + } + } + } + container nested-groups { + description + "Table of nested port object groups"; + list nested-group { + key "nested-group-name"; + description + "nested object group"; + leaf nested-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of a nested object group"; + } + } + } + container port-ranges { + description + "Table of port range addresses"; + list port-range { + key "start-port end-port"; + description + "Match only packets on a given port range"; + leaf start-port { + type Start-port; + description + "Port number"; + } + leaf end-port { + type End-port; + description + "Port number"; + } + } + } + leaf description { + type string { + length "1..100"; + } + description + "Up to 100 characters describing this object"; + } + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Port object group name - maximum 64 + characters"; + } + } + } + } + container network { + description + "Network object group"; + container ipv6 { + description + "IPv6 object group"; + container udf-objects { + description + "Table of ipv6 object groups"; + list udf-object { + key "object-name"; + description + "IPv6 object group"; + container nested-groups { + description + "Table of nested ipv6 object groups"; + list nested-group { + key "nested-group-name"; + description + "nested object group"; + leaf nested-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter the name of a nested object group"; + } + } + } + container address-ranges { + description + "Table of ipv6 address ranges"; + list address-range { + key "start-address end-address"; + description + "Range of host addresses"; + leaf start-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + leaf end-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + } + } + container addresses { + description + "Table of ipv6 addresses"; + list address { + key "prefix prefix-length"; + description + "IPv6 address"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "IPv6 prefix x:x::x/y"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix of the IP Address"; + } + } + } + container hosts { + description + "Table of ipv6 host addresses"; + list host { + key "host-address"; + description + "A single host address"; + leaf host-address { + type inet:ipv6-address-no-zone; + description + "host ipv6 address"; + } + } + } + leaf description { + type string { + length "1..100"; + } + description + "Up to 100 characters describing this object"; + } + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv6 object group name - maximum 64 + characters"; + } + } + } + } + container ipv4 { + description + "IPv4 object group"; + container udf-objects { + description + "Table of ipv4 object groups"; + list udf-object { + key "object-name"; + description + "IPv4 object group"; + container nested-groups { + description + "Table of nested ipv4 object groups"; + list nested-group { + key "nested-group-name"; + description + "Nested object group"; + leaf nested-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Nested object group"; + } + } + } + container address-ranges { + description + "Table of ipv4 host address ranges"; + list address-range { + key "start-address end-address"; + description + "Range of host addresses"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + leaf end-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + } + container addresses { + description + "Table of addresses"; + list address { + key "prefix prefix-length"; + description + "IPv4 address"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 address/prefix"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix of the IP Address"; + } + } + } + container hosts { + description + "Table of host addresses"; + list host { + key "host-address"; + description + "A single host address"; + leaf host-address { + type inet:ipv4-address-no-zone; + description + "Host ipv4 address"; + } + } + } + leaf description { + type string { + length "1..100"; + } + description + "Up to 100 characters describing this object"; + } + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv4 object group name - maximum 64 + characters"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper-sub1.yang new file mode 100644 index 000000000..98b22a50f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper-sub1.yang @@ -0,0 +1,175 @@ +submodule Cisco-IOS-XR-infra-objmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-objmgr-oper { + prefix Cisco-IOS-XR-infra-objmgr-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-objmgr package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OBJ-GROUP-IPV4-MEMBER-HOST { + description + "Member host address bag"; + leaf host-address-xr { + type inet:ipv4-address; + description + "Host address"; + } + } + + grouping OBJ-GROUP-IPV4-MEMBER-RANGE { + description + "Member range bag"; + leaf start-address-xr { + type inet:ipv4-address; + description + "Range start address"; + } + leaf end-address-xr { + type inet:ipv4-address; + description + "Range end address"; + } + } + + grouping OBJ-GROUP-IPV4-MEMBER-ADDRESS { + description + "Member address bag"; + leaf prefix-xr { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf prefix-length-xr { + type uint32; + description + "Prefix length"; + } + } + + grouping OBJ-GROUP-IPV6-MEMBER-HOST { + description + "Member host address bag"; + leaf host-address-xr { + type inet:ipv6-address; + description + "Host address"; + } + } + + grouping OBJ-GROUP-IPV6-MEMBER-RANGE { + description + "Member range bag"; + leaf start-address-xr { + type inet:ipv6-address; + description + "Range start address"; + } + leaf end-address-xr { + type inet:ipv6-address; + description + "Range end address"; + } + } + + grouping OBJ-GROUP-IPV6-MEMBER-ADDRESS { + description + "Member address bag"; + leaf prefix-xr { + type inet:ipv6-address; + description + "IPv4 Address"; + } + leaf prefix-length-xr { + type uint32; + description + "Prefix length"; + } + } + + grouping OBJ-GROUP-PARENT { + description + "Group parent bag"; + leaf parent-name { + type string; + description + "Parent node"; + } + } + + grouping OBJ-GROUP-PORT-MEMBER-RANGE { + description + "Member port range bag"; + leaf start-port-xr { + type uint32; + description + "Port start address"; + } + leaf end-port-xr { + type uint32; + description + "Port end address"; + } + } + + grouping OBJ-GROUP-PORT-MEMBER-PORT { + description + "Member port operator port bag"; + leaf operator-type-xr { + type uint32; + description + "Operator"; + } + leaf port-xr { + type uint32; + description + "Port"; + } + } + + grouping OBJ-GROUP-MEMBER-NESTED { + description + "Member nested bag"; + leaf nested-group-name-xr { + type string; + description + "Nested group"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper.yang new file mode 100644 index 000000000..f374a715c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-objmgr-oper.yang @@ -0,0 +1,949 @@ +module Cisco-IOS-XR-infra-objmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-objmgr-oper"; + prefix infra-objmgr-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-objmgr-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-objmgr package operational data. + + This module contains definitions + for the following management objects: + object-group: Object-group operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Start-port { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Echo (7)"; + } + enum "discard" { + value 9; + description + "Discard (9)"; + } + enum "daytime" { + value 13; + description + "Daytime (13)"; + } + enum "chargen" { + value 19; + description + "Character generator (19)"; + } + enum "ftp-data" { + value 20; + description + "FTP data connections (used infrequently, 20)"; + } + enum "ftp" { + value 21; + description + "File Transfer Protocol (21)"; + } + enum "ssh" { + value 22; + description + "Secure Shell (22)"; + } + enum "telnet" { + value 23; + description + "Telnet (23)"; + } + enum "smtp" { + value 25; + description + "Simple Mail Transport Protocol (25)"; + } + enum "time" { + value 37; + description + "Time (37)"; + } + enum "nicname" { + value 43; + description + "Nicname (43)"; + } + enum "tacacs" { + value 49; + description + "TAC Access Control System (49)"; + } + enum "domain" { + value 53; + description + "Domain Name Service (53)"; + } + enum "gopher" { + value 70; + description + "Gopher (70)"; + } + enum "finger" { + value 79; + description + "Finger (79)"; + } + enum "www" { + value 80; + description + "World Wide Web (HTTP, 80)"; + } + enum "host-name" { + value 101; + description + "NIC hostname server (101)"; + } + enum "pop2" { + value 109; + description + "Post Office Protocol v2 (109)"; + } + enum "pop3" { + value 110; + description + "Post Office Protocol v3 (110)"; + } + enum "sun-rpc" { + value 111; + description + "Sun Remote Procedure Call (111)"; + } + enum "ident" { + value 113; + description + "Ident Protocol (113)"; + } + enum "nntp" { + value 119; + description + "Network News Transport Protocol (119)"; + } + enum "bgp" { + value 179; + description + "Border Gateway Protocol (179)"; + } + enum "irc" { + value 194; + description + "Internet Relay Chat (194)"; + } + enum "pim-auto-rp" { + value 496; + description + "PIM Auto-RP (496)"; + } + enum "exec" { + value 512; + description + "Exec (rsh, 512)"; + } + enum "login" { + value 513; + description + "Login (rlogin, 513)"; + } + enum "cmd" { + value 514; + description + "Remote commands (rcmd, 514)"; + } + enum "lpd" { + value 515; + description + "Printer service (515)"; + } + enum "uucp" { + value 540; + description + "Unix-to-Unix Copy Program (540)"; + } + enum "klogin" { + value 543; + description + "Kerberos login (543)"; + } + enum "kshell" { + value 544; + description + "Kerberos shell (544)"; + } + enum "talk" { + value 517; + description + "Talk (517)"; + } + enum "ldp" { + value 646; + description + "LDP session connection attempts (MPLS, 646)"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "Start port"; + } + + typedef Port-operator { + type enumeration { + enum "equal" { + value 0; + description + "Match packets on ports equal to entered port + number"; + } + enum "not-equal" { + value 1; + description + "Match packets on ports not equal to entered + port number"; + } + enum "greater-than" { + value 2; + description + "Match packets on ports greater than entered + port number"; + } + enum "less-than" { + value 3; + description + "Match packets on ports less than entered port + number"; + } + } + description + "Port operator"; + } + + typedef Port { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Echo (7)"; + } + enum "discard" { + value 9; + description + "Discard (9)"; + } + enum "daytime" { + value 13; + description + "Daytime (13)"; + } + enum "chargen" { + value 19; + description + "Character generator (19)"; + } + enum "ftp-data" { + value 20; + description + "FTP data connections (used infrequently, 20)"; + } + enum "ftp" { + value 21; + description + "File Transfer Protocol (21)"; + } + enum "ssh" { + value 22; + description + "Secure Shell (22)"; + } + enum "telnet" { + value 23; + description + "Telnet (23)"; + } + enum "smtp" { + value 25; + description + "Simple Mail Transport Protocol (25)"; + } + enum "time" { + value 37; + description + "Time (37)"; + } + enum "nicname" { + value 43; + description + "Nicname (43)"; + } + enum "tacacs" { + value 49; + description + "TAC Access Control System (49)"; + } + enum "domain" { + value 53; + description + "Domain Name Service (53)"; + } + enum "gopher" { + value 70; + description + "Gopher (70)"; + } + enum "finger" { + value 79; + description + "Finger (79)"; + } + enum "www" { + value 80; + description + "World Wide Web (HTTP, 80)"; + } + enum "host-name" { + value 101; + description + "NIC hostname server (101)"; + } + enum "pop2" { + value 109; + description + "Post Office Protocol v2 (109)"; + } + enum "pop3" { + value 110; + description + "Post Office Protocol v3 (110)"; + } + enum "sun-rpc" { + value 111; + description + "Sun Remote Procedure Call (111)"; + } + enum "ident" { + value 113; + description + "Ident Protocol (113)"; + } + enum "nntp" { + value 119; + description + "Network News Transport Protocol (119)"; + } + enum "bgp" { + value 179; + description + "Border Gateway Protocol (179)"; + } + enum "irc" { + value 194; + description + "Internet Relay Chat (194)"; + } + enum "pim-auto-rp" { + value 496; + description + "PIM Auto-RP (496)"; + } + enum "exec" { + value 512; + description + "Exec (rsh, 512)"; + } + enum "login" { + value 513; + description + "Login (rlogin, 513)"; + } + enum "cmd" { + value 514; + description + "Remote commands (rcmd, 514)"; + } + enum "lpd" { + value 515; + description + "Printer service (515)"; + } + enum "uucp" { + value 540; + description + "Unix-to-Unix Copy Program (540)"; + } + enum "klogin" { + value 543; + description + "Kerberos login (543)"; + } + enum "kshell" { + value 544; + description + "Kerberos shell (544)"; + } + enum "talk" { + value 517; + description + "Talk (517)"; + } + enum "ldp" { + value 646; + description + "LDP session connection attempts (MPLS, 646)"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "Port"; + } + + typedef End-port { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Echo (7)"; + } + enum "discard" { + value 9; + description + "Discard (9)"; + } + enum "daytime" { + value 13; + description + "Daytime (13)"; + } + enum "chargen" { + value 19; + description + "Character generator (19)"; + } + enum "ftp-data" { + value 20; + description + "FTP data connections (used infrequently, 20)"; + } + enum "ftp" { + value 21; + description + "File Transfer Protocol (21)"; + } + enum "ssh" { + value 22; + description + "Secure Shell (22)"; + } + enum "telnet" { + value 23; + description + "Telnet (23)"; + } + enum "smtp" { + value 25; + description + "Simple Mail Transport Protocol (25)"; + } + enum "time" { + value 37; + description + "Time (37)"; + } + enum "nicname" { + value 43; + description + "Nicname (43)"; + } + enum "tacacs" { + value 49; + description + "TAC Access Control System (49)"; + } + enum "domain" { + value 53; + description + "Domain Name Service (53)"; + } + enum "gopher" { + value 70; + description + "Gopher (70)"; + } + enum "finger" { + value 79; + description + "Finger (79)"; + } + enum "www" { + value 80; + description + "World Wide Web (HTTP, 80)"; + } + enum "host-name" { + value 101; + description + "NIC hostname server (101)"; + } + enum "pop2" { + value 109; + description + "Post Office Protocol v2 (109)"; + } + enum "pop3" { + value 110; + description + "Post Office Protocol v3 (110)"; + } + enum "sun-rpc" { + value 111; + description + "Sun Remote Procedure Call (111)"; + } + enum "ident" { + value 113; + description + "Ident Protocol (113)"; + } + enum "nntp" { + value 119; + description + "Network News Transport Protocol (119)"; + } + enum "bgp" { + value 179; + description + "Border Gateway Protocol (179)"; + } + enum "irc" { + value 194; + description + "Internet Relay Chat (194)"; + } + enum "pim-auto-rp" { + value 496; + description + "PIM Auto-RP (496)"; + } + enum "exec" { + value 512; + description + "Exec (rsh, 512)"; + } + enum "login" { + value 513; + description + "Login (rlogin, 513)"; + } + enum "cmd" { + value 514; + description + "Remote commands (rcmd, 514)"; + } + enum "lpd" { + value 515; + description + "Printer service (515)"; + } + enum "uucp" { + value 540; + description + "Unix-to-Unix Copy Program (540)"; + } + enum "klogin" { + value 543; + description + "Kerberos login (543)"; + } + enum "kshell" { + value 544; + description + "Kerberos shell (544)"; + } + enum "talk" { + value 517; + description + "Talk (517)"; + } + enum "ldp" { + value 646; + description + "LDP session connection attempts (MPLS, 646)"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "End port"; + } + + container object-group { + config false; + description + "Object-group operational data"; + container port { + description + "Port object group"; + container objects { + description + "Table of Object"; + list object { + key "object-name"; + description + "Port object group"; + container nested-groups { + description + "Table of NestedGroup"; + list nested-group { + key "nested-group-name"; + description + "nested object group"; + leaf nested-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Nested object group"; + } + uses OBJ-GROUP-MEMBER-NESTED; + } + } + container operators { + description + "Table of Operator"; + list operator { + description + "op class"; + leaf operator-type { + type Port-operator; + description + "operation for ports"; + } + leaf port { + type Port; + description + "Port number"; + } + uses OBJ-GROUP-PORT-MEMBER-PORT; + } + } + container port-ranges { + description + "Table of PortRange"; + list port-range { + description + "Match only packets on a given port range"; + leaf start-port { + type Start-port; + description + "Start port number"; + } + leaf end-port { + type End-port; + description + "End port number"; + } + uses OBJ-GROUP-PORT-MEMBER-RANGE; + } + } + container parent-groups { + description + "Table of ParentGroup"; + list parent-group { + key "parent-group-name"; + description + "Parent object group"; + leaf parent-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Nested object group"; + } + uses OBJ-GROUP-PARENT; + } + } + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Port object group name"; + } + } + } + } + container network { + description + "Network object group"; + container ipv6 { + description + "IPv6 object group"; + container objects { + description + "Table of Object"; + list object { + key "object-name"; + description + "IPv6 object group"; + container nested-groups { + description + "Table of NestedGroup"; + list nested-group { + key "nested-group-name"; + description + "nested object group"; + leaf nested-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter the name of a nested object group"; + } + uses OBJ-GROUP-MEMBER-NESTED; + } + } + container addresses { + description + "Table of Address"; + list address { + description + "IPv6 address"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "IPv6 prefix x:x::x/y"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix of the IP Address"; + } + uses OBJ-GROUP-IPV6-MEMBER-ADDRESS; + } + } + container address-ranges { + description + "Table of AddressRange"; + list address-range { + description + "Range of host addresses"; + leaf start-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + leaf end-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + uses OBJ-GROUP-IPV6-MEMBER-RANGE; + } + } + container parent-groups { + description + "Table of parent object group"; + list parent-group { + key "parent-group-name"; + description + "Parent object group"; + leaf parent-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Nested object group"; + } + uses OBJ-GROUP-PARENT; + } + } + container hosts { + description + "Table of Host"; + list host { + key "host-address"; + description + "A single host address"; + leaf host-address { + type inet:ipv6-address-no-zone; + description + "host ipv6 address"; + } + uses OBJ-GROUP-IPV6-MEMBER-HOST; + } + } + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv6 object group name - maximum 64 + characters"; + } + } + } + } + container ipv4 { + description + "IPv4 object group"; + container objects { + description + "Table of Object"; + list object { + key "object-name"; + description + "IPv4 object group"; + container nested-groups { + description + "Table of NestedGroup"; + list nested-group { + key "nested-group-name"; + description + "Nested object group"; + leaf nested-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Nested object group"; + } + uses OBJ-GROUP-MEMBER-NESTED; + } + } + container addresses { + description + "Table of Address"; + list address { + description + "IPv4 address"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 address/prefix"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix of the IP Address"; + } + uses OBJ-GROUP-IPV4-MEMBER-ADDRESS; + } + } + container address-ranges { + description + "Table of AddressRange"; + list address-range { + description + "Range of host addresses"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + leaf end-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + uses OBJ-GROUP-IPV4-MEMBER-RANGE; + } + } + container parent-groups { + description + "Table of parent object group"; + list parent-group { + key "parent-group-name"; + description + "Parent object group"; + leaf parent-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Nested object group"; + } + uses OBJ-GROUP-PARENT; + } + } + container hosts { + description + "Table of Host"; + list host { + key "host-address"; + description + "A single host address"; + leaf host-address { + type inet:ipv4-address-no-zone; + description + "Host ipv4 address"; + } + uses OBJ-GROUP-IPV4-MEMBER-HOST; + } + } + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv4 object group name - maximum 64 + characters"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-placed-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-placed-act.yang new file mode 100644 index 000000000..eab765eff --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-placed-act.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-infra-placed-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-placed-act"; + prefix placed-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 action package configuration. + + Copyright (c) 2018-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-22 { + description + "Added root access for placement-reoptimize."; + } + revision 2020-03-09 { + description + "Changed cli command."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-10 { + description + "IOS XR 6.4.1 revision."; + } + + rpc placement-reoptimize { + description + "Migrate the processes, if placement is not optimal.\n"; + csc:xr-task "cisco-support | root-lr"; + csc:cli-command "placement reoptimize force"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-cfg.yang new file mode 100644 index 000000000..75544fcc5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-cfg.yang @@ -0,0 +1,2728 @@ +module Cisco-IOS-XR-infra-policymgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-policymgr-cfg"; + prefix infra-policymgr-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix ietf; + } + 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 ASR9k policy manager configuration. + + Copyright (c) 2013, 2015-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Deprecated the native model, replaced by UM model. + 2022-05-24 + Remove range restriction on police rate and peak-rate configs (0 should be supported) + 2021-11-25 + Added ordered-by statements for policy class list + 2021-08-13 + Added changes for low latency config. + 2021-07-28 + Added support for WRED probability percent."; + semver:module-version "5.0.0"; + } + revision 2021-02-15 { + description + "IOS XR 7.3.2 revision."; + semver:module-version "4.0.0"; + } + revision 2020-06-05 { + description + "IOS XR 7.2.1 revision. + 2020-05-17 + IOS XR 7.2.1 revision. + 2020-04-29 + IOS XR 7.2.1 revision. + 2020-04-06 + IOS XR 7.2.1 revision. + 2020-01-30 + IOS XR 7.2.1 revision. + 2019-12-18 + IOS XR 7.2.1 revision."; + semver:module-version "3.0.0"; + } + revision 2019-11-21 { + description + "IOS XR 7.1.1 revision. + 2019-11-03 + IOS XR 7.1.1 revision. + 2019-10-04 + IOS XR 7.1.1 revision."; + semver:module-version "2.0.0"; + } + revision 2019-07-31 { + description + "IOS XR 7.0.1 revision."; + } + revision 2019-07-23 { + description + "IOS XR 7.0.1 revision."; + } + revision 2019-07-15 { + description + "IOS XR 7.0.1 revision."; + } + revision 2019-07-11 { + description + "IOS XR 7.0.1 revision."; + } + revision 2019-07-02 { + description + "IOS XR 7.1.1 revision."; + } + revision 2018-11-22 { + description + "IOS XR 7.0.1 revision."; + } + revision 2018-11-02 { + description + "IOS XR 7.1.1 revision."; + } + revision 2018-09-10 { + description + "IOS XR 7.0.1 revision."; + } + revision 2018-06-29 { + description + "IOS XR 7.0.1 revision."; + } + revision 2018-03-02 { + description + "IOS XR 6.5.1 revision."; + } + revision 2017-12-11 { + description + "IOS XR 6.4.1 revision."; + } + revision 2017-06-27 { + description + "IOS XR 6.4.1 revision."; + } + revision 2017-05-15 { + description + "IOS XR 6.3.1 revision."; + } + revision 2017-04-03 { + description + "IOS XR 6.3.1 revision."; + } + revision 2017-03-03 { + description + "IOS XR 6.3.1 revision."; + } + revision 2017-02-15 { + description + "IOS XR 6.2.1 revision."; + } + revision 2017-02-08 { + description + "IOS XR 6.2.1 revision."; + } + revision 2016-12-15 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-05-18 { + description + "IOS XR 5.3.2 revision."; + } + revision 2013-07-22 { + description + "Initial revision."; + } + + typedef Class-map-type { + type enumeration { + enum "qos" { + value 1; + description + "QoS Classmap."; + } + enum "traffic" { + value 3; + description + "TRAFFIC Classmap."; + } + enum "subscriber-control" { + value 4; + description + "Control Subscriber Classmap."; + } + } + description + "Policy manager class-map type."; + } + + typedef Alarm-severity { + type string { + pattern "(informational)|(notification)|(warning)|(error)|(critical)|(alert)|(emergency)"; + } + description + "Alaram severity types."; + } + + typedef Policy-map-type { + type enumeration { + enum "qos" { + value 1; + description + "QoS Policymap"; + } + enum "pbr" { + value 2; + description + "PBR Policymap"; + } + enum "traffic" { + value 3; + description + "TRAFFIC Policymap"; + } + enum "subscriber-control" { + value 4; + description + "SUBSCRIBER-CONTROL Policymap"; + } + enum "accounting" { + value 5; + description + "Accounting Policymap"; + } + enum "redirect" { + value 6; + description + "REDIRECT Policy map"; + } + enum "flow-monitor" { + value 7; + description + "FLOWMONITOR Policy map"; + } + } + description + "Policy manager policy-map type."; + } + + typedef Service-policy-type { + type string { + pattern "(PBR)|(QOS)|(REDIRECT)|(TRAFFIC)|(pbr)|(qos)|(redirect)|(traffic)"; + } + description + "Policy manager service-policy type."; + } + + typedef Bandwidth-units { + type string { + pattern "(bps)|(kbps)|(mbps)|(gbps)|(percent)|(per-million)|(per-thousand)"; + } + description + "Supported units for bandwidth. + bps - units in Bits/Sec + kbps - units in KiloBits/Sec + mbps - units in MegaBits/Sec + gbps - units in GigaBits/Sec + percent - units in Percentage + per-million - parts per-million bandwidth value + per-thousand - Parts per-thousand bandwidth value"; + } + + typedef Bandwidth-remaining-units { + type string { + pattern "(percent)|(ratio)"; + } + description + "Supported units for bandwidth remaining. + percent - units in Percentage + ratio - units in Ratio"; + } + + typedef Probability-units { + type string { + pattern "(percent)|(inverse-ratio)"; + } + description + "Supported units for WRED probability. + percent - units in Percentage + inverse-ratio - units in Inverse Ratio"; + } + + typedef Rate-units { + type string { + pattern "(bps)|(kbps)|(mbps)|(gbps)|(pps)|(percent)|(cellsps)"; + } + description + "Supported units for police rate or peak-rate. + bps - units in Bits/Sec + kbps - units in KiloBits/Sec + mbps - units in MegaBits/Sec + gbps - units in GigaBits/Sec + pps - units in Packets/Sec + percent - units in Percentage + cellsps - units in Cells/Sec"; + } + + typedef Police-Rate-units { + type string { + pattern "(bps)|(kbps)|(mbps)|(gbps)|(pps)|(percent)|(cellsps)|(per-thousand)|(per-million)"; + } + description + "Supported units for police rate or peak-rate. + bps - units in Bits/Sec + kbps - units in KiloBits/Sec + mbps - units in MegaBits/Sec + gbps - units in GigaBits/Sec + pps - units in Packets/Sec + percent - units in Percentage + cellsps - units in Cells/Sec + per-million - parts per-million bandwidth value + per-thousand - Parts per-thousand bandwidth value"; + } + + typedef Cac-rate-units { + type string { + pattern "(bps)|(kbps)|(mbps)|(gbps)|(cellsps)"; + } + description + "Supported units for CAC rate or flow-rate. + bps - units in Bits/Sec + kbps - units in KiloBits/Sec + mbps - units in MegaBits/Sec + gbps - units in GigaBits/Sec + cellsps - units in Cells/Sec"; + } + + typedef Queue-units { + type string { + pattern "(bytes)|(kbytes)|(mbytes)|(gbytes)|(us)|(ms)|(packets)|(cells)|(percent)"; + } + description + "Supported units for queue. + bytes - units in Bytes + kbytes - units in KiloBytes + mbytes - units in MegaBytes + gbytes - units in Gigabytes + us - units in Microseconds + ms - units in Milliseconds + packets - units in Packets + cells - units in Cells + percent - units in Percent"; + } + + typedef Threshold-units { + type string { + pattern "(bytes)|(kbytes)|(mbytes)|(gbytes)|(us)|(ms)|(packets)|(cells)"; + } + description + "Supported units for RED threshold. + bytes - units in Bytes + kbytes - units in KiloBytes + mbytes - units in MegaBytes + gbytes - units in GigaBytes + us - units in Microseconds + ms - units in Milliseconds + packets - units in Packets + cells - units in Cells"; + } + + typedef Pfc-units { + type string { + pattern "(bytes)|(kbytes)|(mbytes)|(gbytes)|(us)|(ms)|(packets)|(cells)"; + } + description + "Supported units for pfc. + bytes - units in Bytes + kbytes - units in KiloBytes + mbytes - units in MegaBytes + gbytes - units in Gigabytes + us - units in Microseconds + ms - units in Milliseconds + packets - units in Packets + cells - units in Cells"; + } + + typedef Float-str { + type string { + pattern "[0-9]+(\\.[0-9]+)?"; + } + description + "Floating point number string representation."; + } + + typedef Dscp { + type string { + pattern "([0-9]|[1-5][0-9]|6[0-3])|(af11)|(af12)|(af13)|(af21)|(af22)|(af23)|(af31)|(af32)|(af33)|(af41)|(af42)|(af43)|(ef)|(default)|(cs1)|(cs2)|(cs3)|(cs4)|(cs5)|(cs6)|(cs7)"; + } + description + "DSCP value string representation. + Should be single value 0..63 or predefined string."; + } + + typedef Dscp-range { + type string { + pattern "([0-9]|[1-5][0-9]|6[0-3])|(([0-9]|[1-5][0-9]|6[0-3])-([0-9]|[1-5][0-9]|6[0-3]))|(af11)|(af12)|(af13)|(af21)|(af22)|(af23)|(af31)|(af32)|(af33)|(af41)|(af42)|(af43)|(ef)|(default)|(cs1)|(cs2)|(cs3)|(cs4)|(cs5)|(cs6)|(cs7)"; + } + description + "DSCP value or range string representation. + Should be single value 0..63 or predefined string + or range -."; + } + + typedef Num-range { + type string { + pattern "(\\d+)|(\\d+\\-\\d+)"; + } + description + "Numeric value or range string representation. + Should be single value or range -."; + } + + typedef Protocol { + type string { + pattern "([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])|(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\-([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]))|((ahp)|(dhcpv4)|(dhcpv6)|(eigrp)|(esp)|(gre)|(icmp)|(igmp)|(igrp)|(ipinip)|(ipv4)|(ipv6)|(ipv6icmp)|(mpls)|(nos)|(ospf)|(pcp)|(pim)|(ppp)|(sctp)|(tcp)|(udp))"; + } + description + "Numeric value or range or string representation. + Should be single value or range 0..255."; + } + + typedef Subs-Protocol { + type string { + pattern "(dhcpv4)|(dhcpv6)|(ppp)"; + } + description + "Should be one of the 3 values."; + } + + typedef Ethertype { + type string { + pattern "((153[6-9]|15[4-9][0-9]|1[6-9][0-9][0-9]|[2-9][0-9][0-9][0-9])|([1-5][0-9][0-9][0-9][0-9]|6[0-4][0-9][0-9][0-9])|(65[0-4][0-9][0-9]|655[0-2][0-9]|6553[0-5]))|((arp)|(ipv4)|(ipv6))"; + } + description + "Numeric value or string representation. + Should be single value 1536..65535 or predefined string."; + } + + typedef shape-value { + type union { + type string { + pattern "[$][a-zA-Z0-9][a-zA-Z0-9\\._@%+:\\-]{0,32}[ ][=][ ]\\d{1,10}"; + } + type uint32 { + range "1..4294967295"; + } + } + description + "The shape can be either given as $var= or + . The range is from 1..4294967295"; + } + + typedef Precedence { + type union { + type uint8 { + range "0..7"; + } + type string { + pattern "(critical)|(flash)|(flash-override)|(immediate)|(internet)|(network)|(priority)|(routine)"; + } + } + description + "Precedence value. + critical Critical precedence (5) + flash Flash precedence (3) + flash-override Flash override precedence (4) + immediate Immediate precedence (2) + internet Internetwork control precedence (6) + network Network control precedence (7) + priority Priority precedence (1) + routine Routine precedence (0)"; + } + + typedef Cos { + type uint8 { + range "0..7"; + } + description + "Cos value."; + } + + typedef vrf-name-length { + type string { + length "1..32"; + } + description + "length of the vrf name."; + } + + typedef Idle-timeout-number { + type uint16 { + range "10..2550"; + } + units "seconds"; + description + "String that idle-timeout can take."; + } + + typedef Idle-timeout-string { + type string { + pattern "(None)|(none)"; + } + description + "This flow does not expire."; + } + + typedef Idle-timeout { + type union { + type Idle-timeout-number; + type Idle-timeout-string; + } + description + "Idle timeout after which flow expires"; + } + + typedef Encap-Seq-number { + type uint16 { + range "1..15"; + } + description + "Encap seq number"; + } + + typedef Encap-Seq-string { + type string { + pattern "(None)|(none)"; + } + description + "No encap sequence."; + } + + typedef Encap-sequence-type { + type union { + type Encap-Seq-number; + type Encap-Seq-string; + } + description + "Encap sequence for the policy-map"; + } + + typedef Event-type { + type enumeration { + enum "account-logoff" { + description + "Account logoff event."; + } + enum "account-logon" { + description + "Account logon event."; + } + enum "authentication-failure" { + description + "Denotes Authentication failure event."; + } + enum "authentication-no-response" { + description + "Denotes Authentication no response event."; + } + enum "authorization-failure" { + description + "Denotes Authorization failure event."; + } + enum "authorization-no-response" { + description + "Denotes Authorization no response event."; + } + enum "credit-exhausted" { + description + "Credit exhaustion event."; + } + enum "exception" { + description + "Exception event."; + } + enum "idle-timeout" { + description + "Idle timeout event."; + } + enum "quota-depleted" { + description + "Quota depletion event."; + } + enum "service-start" { + description + "Service start event."; + } + enum "service-stop" { + description + "Service stop event."; + } + enum "session-activate" { + description + "Session activate event."; + } + enum "session-start" { + description + "Session start event."; + } + enum "session-stop" { + description + "Session stop event."; + } + enum "timer-expiry" { + description + "Timer expiry event."; + } + enum "session-identity-change" { + description + "Session identity change event."; + } + enum "authorize-dhcp-renew" { + description + "Authorize dhcp renew packet event."; + } + enum "session-umi-report" { + description + "Session UMI report event."; + } + enum "session-established" { + description + "Session established event."; + } + enum "prepaid-quota-rejected" { + description + "Prepaid quota rejected."; + } + enum "prepaid-start-failed" { + description + "prepaid start request failed for the session."; + } + } + description + "Service Policy Event type."; + } + + typedef Execution-strategy { + type enumeration { + enum "do-all" { + description + "Do all actions."; + } + enum "do-until-failure" { + description + "Do all actions until failure."; + } + enum "do-until-success" { + description + "Do all actions until success."; + } + } + description + "Strategy to execute the Policy action."; + } + + typedef Authorize-identifier { + type enumeration { + enum "circuit-id" { + description + "Authorize circuit ID."; + } + enum "dhcp-client-id" { + description + "Authorize dhcp client ID."; + } + enum "remote-id" { + description + "Authorize remote ID."; + } + enum "source-address-ipv4" { + description + "Authorize source IPv4 address."; + } + enum "source-address-ipv6" { + description + "Authorize source IPv6 address."; + } + enum "source-address-mac" { + description + "Authorize source MAC address."; + } + enum "username" { + description + "Authorize username."; + } + } + description + "Different parameters for Authorization"; + } + + typedef dhcp-client-id-options { + type string { + pattern "(none)|(ascii)|(hex)"; + } + description + "DHCP client Id Flag option."; + } + + grouping MATCH { + description + "Supported 'match' or 'match-not' actions."; + leaf-list ipv4-dscp { + type Dscp-range; + ordered-by user; + description + "Match IPv4 DSCP."; + } + leaf-list ipv6-dscp { + type Dscp-range; + ordered-by user; + description + "Match IPv6 DSCP."; + } + leaf-list dscp { + type Dscp-range; + ordered-by user; + description + "Match DSCP."; + } + leaf-list ipv4-precedence { + type Precedence; + ordered-by user; + description + "Match IPv4 precedence."; + } + leaf-list ipv6-precedence { + type Precedence; + ordered-by user; + description + "Match IPv6 precedence."; + } + leaf-list precedence { + type Precedence; + ordered-by user; + description + "Match precedence."; + } + leaf-list qos-group { + type Num-range; + ordered-by user; + description + "Match QoS group. + Should be value 0..512 or range."; + } + leaf-list traffic-class { + type Num-range; + ordered-by user; + description + "Match Traffic Class. + Should be value 0..63 or range."; + } + leaf-list cos { + type Cos; + ordered-by user; + description + "Match CoS."; + } + leaf-list inner-cos { + type Cos; + ordered-by user; + description + "Match inner CoS."; + } + leaf dei { + type uint8 { + range "0..1"; + } + description + "Match DEI bit."; + } + leaf dei-inner { + type uint8 { + range "0..1"; + } + description + "Match DEI INNER bit."; + } + leaf-list protocol { + type Protocol; + ordered-by user; + description + "Match protocol."; + } + leaf-list subs-protocol { + type Subs-Protocol; + ordered-by user; + description + "Match subs protocol."; + } + leaf-list ipv4-acl { + type string { + length "1..64"; + } + ordered-by user; + description + "Match IPv4 ACL."; + } + leaf-list ipv6-acl { + type string { + length "1..64"; + } + ordered-by user; + description + "Match IPv6 ACL."; + } + leaf-list ethernet-services-acl { + type string { + length "1..64"; + } + ordered-by user; + description + "Match Ethernet Services"; + } + leaf-list mpls-experimental-topmost { + type Cos; + ordered-by user; + description + "Match MPLS experimental topmost label."; + } + leaf-list mpls-experimental-imposition { + type Cos; + ordered-by user; + description + "Match MPLS experimental imposition label."; + } + leaf-list discard-class { + type Cos; + ordered-by user; + description + "Match discard class."; + } + leaf-list ipv4-packet-length { + type Num-range; + ordered-by user; + description + "Match IPv4 packet length. + Should be value 0..65535 or range."; + } + leaf-list ipv6-packet-length { + type Num-range; + ordered-by user; + description + "Match IPv6 packet length. + Should be value 0..65535 or range."; + } + leaf-list packet-length { + type Num-range; + ordered-by user; + description + "Match packet length. + Should be value 0..65535 or range."; + } + leaf-list mpls-disposition-ipv4-access-list { + type string { + length "1..32"; + } + ordered-by user; + description + "Match MPLS Label Disposition IPv4 access list."; + } + leaf-list mpls-disposition-ipv6-access-list { + type string { + length "1..32"; + } + ordered-by user; + description + "Match MPLS Label Disposition IPv6 access list."; + } + leaf-list mpls-disp-class-map { + type string { + length "1..32"; + pattern "[a-zA-Z0-9][a-zA-Z0-9\\._@$%+#:=<>\\-]*"; + } + ordered-by user; + description + "Match MPLS Label Disposition class-map"; + } + leaf-list vlan { + type Num-range; + ordered-by user; + description + "Match VLAN ID."; + } + leaf-list inner-vlan { + type Num-range; + ordered-by user; + description + "Match inner VLAN ID."; + } + leaf-list flow-tag { + type Num-range; + ordered-by user; + description + "Match flow-tag. Should be value 1..63 or range."; + } + leaf-list ethertype { + type Ethertype; + ordered-by user; + description + "Match Ethertype."; + } + list destination-address-ipv4 { + key "address netmask"; + description + "Match destination IPv4 address."; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address."; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "IPv4 netmask."; + } + } + list destination-address-ipv6 { + key "address prefix-length"; + description + "Match destination IPv6 address."; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 address."; + } + leaf prefix-length { + type uint8 { + range "0..128"; + } + description + "Length of the IPv6 prefix"; + } + } + leaf-list destination-port { + type Num-range; + ordered-by user; + description + "Match destination port. + Should be value 0..65535 or range."; + } + leaf-list fragment-type { + type string { + pattern "(dont-fragment)|(first-fragment)|(is-fragment)|(last-fragment)"; + } + max-elements "4"; + ordered-by user; + description + "Match fragment type for a packet."; + } + leaf-list frame-relay-dlci { + type Num-range; + ordered-by user; + description + "Match frame-relay DLCI value. + Should be value 16..1007 or range."; + } + leaf-list fr-de { + type uint8 { + range "0..1"; + } + description + "Match FrameRelay DE bit."; + } + leaf-list icmpv4-code { + type Num-range; + ordered-by user; + description + "Match IPv4 ICMP code. + Should be value 0..255 or range."; + } + leaf-list icmpv4-type { + type Num-range; + ordered-by user; + description + "Match IPv4 ICMP type. + Should be value 0..255 or range."; + } + leaf-list icmpv6-code { + type Num-range; + ordered-by user; + description + "Match IPv6 ICMP code. + Should be value 0..255 or range."; + } + leaf-list icmpv6-type { + type Num-range; + ordered-by user; + description + "Match IPv6 ICMP type. + Should be value 0..255 or range."; + } + list source-address-ipv4 { + key "address netmask"; + description + "Match source IPv4 address."; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address."; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "IPv4 netmask."; + } + } + list source-address-ipv6 { + key "address prefix-length"; + description + "Match source IPv6 address."; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 address."; + } + leaf prefix-length { + type uint8 { + range "0..128"; + } + description + "Length of the IPv6 prefix"; + } + } + leaf-list source-port { + type Num-range; + ordered-by user; + description + "Match source port. + Should be value 0..65535 or range."; + } + leaf tcp-flag { + type uint16 { + range "0..4095"; + } + description + "Match TCP flags."; + } + leaf authen-status { + type string { + pattern "(authenticated)|(unauthenticated)"; + } + description + "Match authentication status."; + } + leaf-list circuit-id { + type string { + length "1..32"; + } + ordered-by user; + description + "Match Circuit ID."; + } + leaf-list circuit-id-regex { + type string { + length "1..32"; + } + ordered-by user; + description + "Match Circuit id regular expression"; + } + list dhcp-client-id { + key "client-id flag"; + description + "Match dhcp client ID."; + leaf client-id { + type string { + length "1..32"; + } + description + "Dhcp client Id."; + } + leaf flag { + type dhcp-client-id-options; + description + "Dhcp client id Ascii/Hex"; + } + } + list dhcp-client-id-regex { + key "client-id flag"; + description + "Match dhcp client id regular expression"; + leaf client-id { + type string { + length "1..32"; + } + description + "Dhcp client id regular expression."; + } + leaf flag { + type dhcp-client-id-options; + description + "Dhcp client Id regex Ascii/Hex."; + } + } + list domain-name { + key "name format"; + description + "Match domain name."; + leaf name { + type string { + length "1..32"; + } + description + "Domain name or regular expression."; + } + leaf format { + type string { + length "1..32"; + } + description + "Domain-format name."; + } + } + list domain-name-regex { + key "regex format"; + description + "Match domain name."; + leaf regex { + type string { + length "1..32"; + } + description + "Domain name or regular expression."; + } + leaf format { + type string { + length "1..32"; + } + description + "Domain-format name."; + } + } + leaf-list remote-id { + type string { + length "1..32"; + } + ordered-by user; + description + "Match remote ID."; + } + leaf-list remote-id-regex { + type string { + length "1..32"; + } + ordered-by user; + description + "Match remote id regular expression"; + } + leaf-list service-name { + type string { + length "1..32"; + } + ordered-by user; + description + "Match servicve name."; + } + leaf-list service-name-regex { + type string { + length "1..32"; + } + ordered-by user; + description + "Match servicve name regular expression."; + } + leaf-list timer { + type string { + length "1..32"; + } + ordered-by user; + description + "Match timer."; + } + leaf-list timer-regex { + type string { + length "1..32"; + } + ordered-by user; + description + "Match timer regular expression."; + } + leaf-list user-name { + type string { + length "1..32"; + } + ordered-by user; + description + "Match user name."; + } + leaf-list user-name-regex { + type string { + length "1..32"; + } + ordered-by user; + description + "Match user name regular expression."; + } + leaf source-mac { + type ietf:mac-address; + description + "Match source MAC address. Format is e.g. ff:a6:8e:00:01:02."; + } + leaf destination-mac { + type ietf:mac-address; + description + "Match destination MAC address. Format is e.g. ff:a6:8e:00:01:02."; + } + leaf vpls-control { + type empty; + description + "Match VPLS control"; + } + leaf vpls-broadcast { + type empty; + description + "Match VPLS Broadcast"; + } + leaf vpls-multicast { + type empty; + description + "Match VPLS Multicast"; + } + leaf vpls-known { + type empty; + description + "Match VPLS Known"; + } + leaf vpls-unknown { + type empty; + description + "Match VPLS Unknown"; + } + } + + grouping MATCH-MATCHNOT { + description + "match or match-not containers."; + container match { + description + "Match rules."; + uses MATCH; + leaf-list atm-clp { + type uint8 { + range "0..1"; + } + ordered-by user; + description + "Match ATM CLP bit."; + } + leaf atm-oam { + type empty; + description + "Match ATM OAM."; + } + leaf cac-admit { + type empty; + description + "Match CAC admitted."; + } + leaf cac-unadmit { + type empty; + description + "Match CAC unadmitted."; + } + container flow { + description + "Match flow."; + leaf-list flow-key { + type string { + pattern "(SourceIP)|(DestinationIP)|(5Tuple)"; + } + ordered-by user; + description + "Configure the flow-key parameters."; + } + container flow-cache { + description + "Configure the flow-cache parameters"; + leaf idle-timeout { + type Idle-timeout; + description + "Maximum time of inactivity for a flow."; + } + leaf max-count { + type uint16 { + range "1..65535"; + } + description + "Configure the max-count for the flow-key"; + } + } + } + } + container match-not { + description + "Match not rules."; + uses MATCH; + } + } + + grouping CLASS-MAP-RULE { + description + "Class-map rule"; + choice class-map-mode-match { + default "class-map-mode-match-any"; + case class-map-mode-match-any { + leaf class-map-mode-match-any { + type empty; + description + "Match any match criteria"; + } + } + case class-map-mode-match-all { + leaf class-map-mode-match-all { + type empty; + description + "Match all match criteria."; + } + } + } + uses MATCH-MATCHNOT; + leaf description { + type string; + description + "Description for this policy-map."; + } + } + + grouping POLICY-MARK { + description + "Policy packet marking actions."; + leaf dscp { + type Dscp; + description + "Marks a packet by setting the DSCP in the ToS byte."; + } + leaf qos-group { + type uint16 { + range "0..512"; + } + description + "Sets the QoS group identifiers on IPv4 or MPLS packets. + The set qos-group is supported only on an ingress policy."; + } + leaf traffic-class { + type uint8 { + range "0..63"; + } + description + "Sets the Traffic class identifiers on IPv4 or MPLS packets."; + } + leaf discard-class { + type Cos; + description + "Sets the discard class on IPv4 or MPLS packets. + The discard-class can be used only in service policies + that are attached in the ingress policy."; + } + leaf forward-class { + type uint8 { + range "0..7"; + } + description + "Sets the forward class."; + } + leaf df { + type uint8 { + range "0..1"; + } + description + "Set DF bit."; + } + leaf cos { + type Cos; + description + "Sets the specific IEEE 802.1Q Layer 2 CoS value of an + outgoing packet. + This command should be used by a router if a user wants + to mark a packet that is being sent to a switch. + Switches can leverage Layer 2 header information, + including a CoS value marking. Packets entering an + interface cannot be set with a CoS value."; + } + leaf inner-cos { + type Cos; + description + "Set inner cos."; + } + leaf precedence { + type Precedence; + description + "Sets the precedence value in the IP header."; + } + leaf precedence-tunnel { + type Precedence; + description + "Sets the precedence tunnel value for ipsec."; + } + leaf mpls-experimental-top-most { + type uint8 { + range "0..7"; + } + description + "Sets the experimental value of the MPLS packet top-most + labels."; + } + leaf mpls-experimental-imposition { + type Cos; + description + "Sets the experimental value of the MPLS packet + imposition labels. + Imposition can be used only in service policies that + are attached in the ingress policy"; + } + leaf srp-priority { + type uint8 { + range "0..7"; + } + description + "Sets the spatial reuse protocol priority value of an + outgoing packet."; + } + leaf fr-de { + type uint8 { + range "0..1"; + } + description + "Set FrameRelay DE bit."; + } + leaf dei { + type uint8 { + range "0..1"; + } + description + "Set DEI bit."; + } + leaf dei-imposition { + type uint8 { + range "0..1"; + } + description + "Set DEI imposition bit."; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Set the Source IPv4 address."; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Set the Destination IPv4 address."; + } + leaf atm-clp { + type empty; + description + "Set atm cell-loss-priority bit."; + } + leaf dscp-tunnel { + type Dscp; + description + "Marks a packet by setting DSCP in the tunnel header. + This is specific to ipsec tunnels"; + } + } + + grouping CAC-RATE-VALUE { + description + "CAC rate value."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../units" { + description + "units must be set."; + } + description + "Rate value."; + } + leaf units { + type Cac-rate-units; + description + "Rate units."; + } + } + + grouping POLICE-ACTION { + description + "Police action."; + leaf Transmit { + type empty; + description + "Police action transmit."; + } + leaf drop { + type empty; + description + "Police action drop."; + } + container set { + description + "Police action packet marking."; + uses POLICY-MARK; + } + } + + grouping POLICY-MAP-RULE { + description + "Class-map rule."; + list event { + key "event-type"; + ordered-by user; + description + "Policy event."; + leaf event-type { + type Event-type; + description + "Service Policy Event type."; + } + leaf event-mode-match-all { + when "count(../event-mode-match-first) = 0" { + description + "Event MUST have only one mode."; + } + type empty; + description + "Execute all the matched classes."; + } + leaf event-mode-match-first { + when "count(../event-mode-match-all) = 0" { + description + "Event MUST have only one mode."; + } + type empty; + description + "Execute only the first matched class."; + } + list class { + key "class-name class-type"; + ordered-by user; + description + "Class-map rule."; + leaf class-name { + type string { + pattern "[a-zA-Z0-9][a-zA-Z0-9\\._@$%+#:=<>\\-]{0,62}"; + } + description + "Name of class."; + } + leaf class-type { + type Class-map-type; + description + "Type of class."; + } + leaf class-execution-strategy { + type Execution-strategy; + description + "Strategy to execute Class-map"; + } + list action-rule { + key "action-sequence-number"; + description + "Action rule parameters"; + leaf action-sequence-number { + type uint16 { + range "1..65535"; + } + description + "Sequence number for this action."; + } + container activate-dynamic-template { + presence + "This container is present only if actions is + related to dynamic templates."; + description + "Activate dynamically created templates."; + leaf name { + type string; + mandatory true; + description + "Dynamic template name."; + } + leaf aaa-list { + type string; + description + "Name of the AAA method list."; + } + } + container authenticate { + description + "Authentication related configuration."; + leaf aaa-list { + type string; + description + "Name of the AAA method list."; + } + } + container authorize { + must "format or identifier" { + description + "format or identifier must be set."; + } + presence + "This container is present only if actions is + related to authorization."; + description + "Authorize using format or identifier or password"; + leaf aaa-list { + type string; + mandatory true; + description + "Name of the AAA method list."; + } + leaf format { + type string; + description + "Specify an Authorize format name."; + } + leaf identifier { + type Authorize-identifier; + description + "Specify an Authorize format name."; + } + leaf password { + type string; + mandatory true; + description + "Specify a password to be used for AAA + request."; + } + } + container deactivate-dynamic-template { + presence + "This container is present only if actions is + related to dynamic templates."; + description + "Deactivate dynamically created templates."; + leaf name { + type string; + mandatory true; + description + "Dynamic template name."; + } + leaf aaa-list { + type string; + description + "Name of the AAA method list."; + } + } + leaf disconnect { + type empty; + description + "Disconnect session."; + } + leaf monitor { + type empty; + description + "Monitor session."; + } + leaf service-deactivate { + type empty; + description + "deactivate service on prepaid start failure."; + } + container set-timer { + presence + "This container is present only if actions is + related to timer."; + description + "Set a timer to execute a rule on its + expiry"; + leaf timer-name { + type string; + mandatory true; + description + "Name of the timer."; + } + leaf timer-value { + type uint32 { + range "1..4294967295"; + } + units "minutes"; + mandatory true; + description + "Timer value in minutes."; + } + } + container stop-timer { + description + "Disable timer before it expires."; + leaf timer-name { + type string; + description + "Name of the timer."; + } + } + } + } + } + list policy-map-rule { + key "class-name class-type"; + ordered-by user; + description + "Class-map rule."; + leaf class-name { + type string { + pattern "[a-zA-Z0-9][a-zA-Z0-9\\._@$%+#:=<>\\-]{0,62}"; + } + description + "Name of class-map."; + } + leaf class-type { + type Class-map-type; + description + "Type of class-map."; + } + container shape { + must "rate" { + description + "rate container must be present."; + } + description + "Policy action shape."; + container rate { + description + "Rate configuration."; + leaf value { + type shape-value; + must "../unit" { + description + "unit must be set."; + } + description + "Shape bandwidth value."; + } + leaf unit { + type Bandwidth-units; + description + "Shape bandwidth units."; + } + } + container burst { + description + "Burst size configuration."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../units" { + description + "units must be set."; + } + description + "Burst size value."; + } + leaf units { + type Threshold-units; + description + "Burst size units."; + } + } + } + container min-bandwidth { + description + "Policy action minimum bandwidth queue."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../unit" { + description + "unit must be set."; + } + description + "Minimum bandwidth value."; + } + leaf unit { + type Bandwidth-units; + description + "Minimum bandwidth units."; + } + } + container bandwidth-remaining { + description + "Policy action bandwidth remaining queue."; + leaf value { + type uint32 { + range "0..4294967295"; + } + must "../unit" { + description + "unit must be set."; + } + description + "Remaining bandwidth value."; + } + leaf unit { + type Bandwidth-remaining-units; + description + "Remaining bandwidth units."; + } + } + list queue-limit { + key "value unit"; + description + "Policy action queue limit."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../unit" { + description + "unit must be set."; + } + description + "Remaining bandwidth value."; + } + leaf unit { + type Queue-units; + description + "Remaining bandwidth units."; + } + leaf-list discard-class { + type Cos; + description + "queue-limit discard-class value."; + } + } + container pfc { + description + "Policy action pfc."; + leaf pfc-pause-set { + type empty; + description + "Pfc Pause set value."; + } + container pfc-buffer-size { + description + "PFC Buffer Size."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../unit" { + description + "unit must be set."; + } + description + "Pfc buffer size value."; + } + leaf unit { + type Pfc-units; + description + "Pfc buffer size units."; + } + } + container pfc-pause-threshold { + description + "PFC Pause Threshold."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../unit" { + description + "unit must be set."; + } + description + "Pfc pause threshold value."; + } + leaf unit { + type Pfc-units; + description + "Pfc pause threshold units."; + } + } + container pfc-resume-threshold { + description + "PFC Resume Threshold."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../unit" { + description + "unit must be set."; + } + description + "Pfc resume threshold value."; + } + leaf unit { + type Pfc-units; + description + "Pfc resume threshold units."; + } + } + } + leaf priority-level { + type uint8 { + range "1..7"; + } + description + "Priority level of the policy-map rule"; + } + leaf default-red { + type empty; + description + "Default random early detection"; + } + leaf ecn-red { + type empty; + description + "ECN based random early detection"; + } + list random-detect { + key "threshold-min-value threshold-min-units threshold-max-value threshold-max-units"; + description + "Random early detection. + All RED profiles in a class must be based + on the same field."; + leaf threshold-min-value { + type uint32 { + range "0..1073741823"; + } + description + "Minimum RED threshold value."; + } + leaf threshold-min-units { + type Threshold-units; + description + "Minimum RED threshold units."; + } + leaf threshold-max-value { + type uint32 { + range "0..1073741823"; + } + description + "Maximum RED threshold value."; + } + leaf threshold-max-units { + type Threshold-units; + description + "Maximum RED threshold units."; + } + leaf probability { + type uint32 { + range "0..4294967295"; + } + must "../probability-unit" { + description + "unit must be set."; + } + description + "Drop probability of RED"; + } + leaf probability-unit { + type Probability-units; + description + "Drop probability units."; + } + leaf-list cos { + type Cos; + ordered-by user; + description + "WRED based on CoS."; + } + leaf-list discard-class { + type Cos; + ordered-by user; + description + "WRED based on discard class."; + } + leaf-list dscp { + type Dscp-range; + ordered-by user; + description + "WRED based on DSCP."; + } + leaf-list mpls-exp { + type Cos; + ordered-by user; + description + "MPLS Experimental value based WRED."; + } + leaf-list precedence { + type Precedence; + ordered-by user; + description + "WRED based on precedence."; + } + leaf-list dei { + type uint8 { + range "0..1"; + } + ordered-by user; + description + "DEI based WRED. + Should be value 0..1."; + } + } + container set { + description + "Policy action packet marking."; + uses POLICY-MARK; + } + leaf encap-sequence { + type Encap-sequence-type; + description + "Configure encap sequence for the policy-map."; + } + container police { + description + "Configures traffic policing action."; + container bucket { + description + "Bucket related configuration."; + container shared { + description + "Shared bucket configuration."; + leaf name { + type string; + description + "Shared Bucket name."; + } + container rate { + description + "Rate configuration."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../units" { + description + "units must be set."; + } + description + "Rate value."; + } + leaf units { + type Police-Rate-units; + description + "Rate units."; + } + } + container peak-rate { + description + "Peak rate configuration."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../units" { + description + "units must be set."; + } + description + "Peak rate value."; + } + leaf units { + type Rate-units; + description + "Peak rate units."; + } + } + container burst { + description + "Burst configuration."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../units" { + description + "units must be set."; + } + description + "Burst value."; + } + leaf units { + type Threshold-units; + description + "Burst units."; + } + } + container peak-burst { + description + "Peak burst configuration."; + leaf value { + type uint32; + must "../units" { + description + "units must be set."; + } + description + "Peak burst value."; + } + leaf units { + type Threshold-units; + description + "Peak burst units."; + } + } + } + container referred { + description + "Referred bucket related configuration"; + leaf name { + type string; + description + "Referred bucket name"; + } + } + } + container rate { + description + "Rate configuration."; + leaf value { + type uint32; + must "../units" { + description + "units must be set."; + } + description + "Rate value."; + } + leaf units { + type Police-Rate-units; + description + "Rate units."; + } + } + container peak-rate { + description + "Peak rate configuration."; + leaf value { + type uint32; + must "../units" { + description + "units must be set."; + } + description + "Peak rate value."; + } + leaf units { + type Rate-units; + description + "Peak rate units."; + } + } + container burst { + description + "Burst configuration."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../units" { + description + "units must be set."; + } + description + "Burst value."; + } + leaf units { + type Threshold-units; + description + "Burst units."; + } + } + container peak-burst { + description + "Peak burst configuration."; + leaf value { + type uint32 { + range "1..4294967295"; + } + must "../units" { + description + "units must be set."; + } + description + "Peak burst value."; + } + leaf units { + type Threshold-units; + description + "Peak burst units."; + } + } + container conform-action { + description + "Configures the action to take on packets that conform + to the rate limit."; + uses POLICE-ACTION; + } + leaf conform-color { + type string; + description + "Configures the class that classifies the packets that conform"; + } + leaf exceed-color { + type string; + description + "Configures the class that classifies the packets that conform"; + } + container exceed-action { + description + "Configures the action to take on packets that exceed + the rate limit."; + uses POLICE-ACTION; + } + container violate-action { + description + "Configures the action to take on packets that violate + the rate limit."; + uses POLICE-ACTION; + } + } + container compress { + description + "IP header compression"; + container header { + container ip { + presence "IP header compression"; + } + } + } + container service-policy { + description + "Configure a child service policy."; + leaf policy-name { + type string { + pattern "[a-zA-Z0-9][a-zA-Z0-9\\._@$%+#:=<>\\-]{0,62}"; + } + description + "Name of service-policy."; + } + leaf type { + type Service-policy-type; + description + "Type of service-policy."; + } + } + container cac-local { + description + "Policy action CAC."; + container rate { + description + "The rate allocated for all flows."; + uses CAC-RATE-VALUE; + } + container flow-rate { + description + "The rate allocated per flow."; + uses CAC-RATE-VALUE; + } + leaf flow-idle-timeout { + type Idle-timeout; + description + "The interval after which a flow is removed, + if there is no activity. + If timeout is 0 this flow does not expire."; + } + } + container flow-params { + description + "Policy flow monitoring action."; + leaf max-flow { + type uint16 { + range "0..4096"; + } + description + "Max simultaneous flows monitored per policy class"; + } + leaf interval-duration { + type uint32 { + range "10..600"; + } + units "seconds"; + description + "Monitored interval duration."; + } + leaf history { + type uint32 { + range "1..60"; + } + description + "Keep stats/metrics on box for so many intervals."; + } + leaf timeout { + type uint32 { + range "2..60"; + } + units "seconds"; + description + "Declare a flow dead if no packets received in + so much time"; + } + } + container metrics-ipcbr { + description + "Policy IP-CBR metric action."; + container rate { + description + "Nominal per-flow data rate."; + leaf layer3 { + type uint32; + units "bps"; + description + "Nominal rate specified at the L3 (IP)."; + } + leaf packet { + type uint32 { + range "1..4294967294"; + } + units "pps"; + description + "Nominal IP layer packet rate (in pps)."; + } + leaf media { + type uint32 { + range "1..3000000000"; + } + units "bps"; + description + "Nominal data rate of the media flow (ip payload)."; + } + } + container media-packet { + description + "Media-packet structure."; + leaf size { + type uint16 { + range "1..65535"; + } + units "bytes"; + description + "Nominal size of the media-packet."; + } + leaf count-in-layer3 { + type uint8 { + range "1..64"; + } + units "packets"; + description + "Nominal number of media packets in an IP payload."; + } + } + } + container react { + description + "Policy action react."; + leaf descrition { + type string; + description + "String describing the react statement."; + } + container action { + description + "Action on alert."; + leaf syslog { + type empty; + description + "Syslog."; + } + leaf snmp { + type empty; + description + "SNMP."; + } + } + container alarm { + description + "Alaram settings."; + container type { + description + "Alarm type."; + leaf discrete { + type empty; + description + "Discrete alarm type."; + } + leaf group-count { + type uint16 { + range "1..65535"; + } + units "number of flows"; + description + "Number of flows to reach before + triggering alarm"; + } + leaf group-percent { + type uint16 { + range "1..100"; + } + units "percentage"; + description + "Percent to reach before triggering alarm"; + } + } + leaf severity { + type Alarm-severity; + description + "Severity of the alarm."; + } + } + container threshold { + description + "Alarm threshold settings."; + container trigger-value { + description + "Alarm trigger value settings."; + leaf greater-than { + type string; + description + "trigger only if metric is Greater than given value"; + } + leaf greater-than-equal { + type string; + description + "trigger only if metric is Greater than equal to given value"; + } + leaf less-than { + type string; + description + "trigger only if metric is Less than given value"; + } + leaf less-than-equal { + type string; + description + "trigger only if metric is Less than equal given value"; + } + leaf range { + type string; + description + "Range"; + } + } + container trigger-type { + description + "Alarm trigger type settings."; + leaf immediate { + type empty; + description + "Immediate trigger."; + } + leaf average { + type uint32 { + range "1..60"; + } + description + "Trigger averaged over N intervals."; + } + } + } + leaf criterion-delay-factor { + type empty; + description + "React criterion Delay factor of the policy-map action"; + } + leaf criterion-media-stop { + type empty; + description + "React criterion media stop of policy-map action."; + } + leaf criterion-mrv { + type empty; + description + "React criterion mrv of policy-map action."; + } + leaf criterion-flow-count { + type empty; + description + "React criterion flow count of policy-map action."; + } + leaf criterion-packet-rate { + type empty; + description + "React criterion packet rate of policy-map action."; + } + } + leaf http-redirect { + type string; + description + "Policy action http redirect. + Redirect to this url."; + } + leaf pbr-transmit { + type empty; + description + "Policy action PBR transmit."; + } + leaf drop { + type empty; + description + "Policy action drop."; + } + leaf decap-gre { + type empty; + description + "Policy action DECAP GRE."; + } + leaf decap-gue-v1 { + type empty; + description + "Policy action DECAP GRE."; + } + container pbr-redirect { + description + "Policy action redirect"; + container ipv4 { + description + "Policy action redirect IPv4"; + leaf ipv4-next-hop { + type inet:ipv4-address-no-zone; + description + "IPv4 address."; + } + leaf vrf { + type vrf-name-length; + description + "IPv4 VRF."; + } + } + container ipv6 { + description + "Policy action redirect IPv6"; + leaf ipv6-next-hop { + type inet:ipv6-address-no-zone; + description + "IPv6 address."; + } + leaf vrf { + type vrf-name-length; + description + "IPv6 VRF."; + } + } + container next-hop { + description + "Next hop address."; + container route-target { + description + "Destination address of the route"; + container ipv4-address { + description + "IPv4 address."; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address."; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "IPv4 netmask."; + } + } + leaf as-number { + type uint32 { + range "1..4294967295"; + } + description + "2-byte/4-byte AS number"; + } + leaf index { + type uint32 { + range "0..4294967295"; + } + description + "ASN2:index 2/4 byte (hex or decimal format)"; + } + } + } + } + container pbr-forward { + description + "Policy action PBR forward."; + leaf default { + type empty; + description + "Use system default routing table."; + } + container next-hop { + description + "Use specific next-hop. + Here we present 5 different combination + for the pbf next-hop. + 1. vrf with v6 address + 2. vrf with v4 address + 3. vrf + 4. v4 address + 5. v6 address"; + leaf vrf { + type vrf-name-length; + description + "VRF name."; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 address."; + } + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 address."; + } + } + } + leaf service-fragment { + type string { + length "1..64"; + } + description + "Policy action service fragment. + Service fragment name"; + } + leaf fragment { + type string { + length "1..64"; + } + description + "Policy action fragment. Fragment name"; + } + container service-function-path { + presence + "This container is present for service- + function-path configuration"; + description + "Policy action service function path."; + leaf path-id { + type uint32 { + range "1..16777215"; + } + mandatory true; + description + "Service function path id."; + } + leaf index { + type uint8 { + range "1..255"; + } + mandatory true; + description + "Service function path index."; + } + leaf metadata { + type string; + description + "Service function path metadata name."; + } + } + container http-enrichment { + description + "HTTP Enrichment action"; + leaf subscribermac { + type empty; + description + "Subscriber Mac of the host"; + } + leaf subscriberip { + type empty; + description + "Subscriber IP"; + } + leaf hostname { + type empty; + description + "Name of the host"; + } + leaf bngidentifierinterface { + type empty; + description + "BNG Identifier Interface"; + } + } + leaf low-latency-profile { + type empty; + description + "low-latency profile"; + } + } + leaf description { + type string; + description + "Description for this policy-map."; + } + } + + container policy-manager { + status deprecated; + description + "Global Policy Manager configuration."; + container class-maps { + description + "Class-maps configuration."; + list class-map { + key "type name"; + description + "Class-map configuration."; + leaf type { + type Class-map-type; + description + "Type of class-map."; + } + leaf name { + type string { + pattern "[a-zA-Z0-9][a-zA-Z0-9\\._@$%+#:=<>\\-]{0,62}"; + } + description + "Name of class-map."; + } + uses CLASS-MAP-RULE; + } + } + container policy-maps { + description + "Policy-maps configuration."; + list policy-map { + key "type name"; + description + "Policy-map configuration."; + leaf type { + type Policy-map-type; + description + "Type of policy-map."; + } + leaf name { + type string { + pattern "[a-zA-Z0-9][a-zA-Z0-9\\._@$%+#:=<>\\-]{0,62}"; + } + description + "Name of policy-map."; + } + uses POLICY-MAP-RULE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-oper.yang new file mode 100644 index 000000000..71ae6d411 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-policymgr-oper.yang @@ -0,0 +1,8598 @@ +module Cisco-IOS-XR-infra-policymgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-policymgr-oper"; + prefix infra-policymgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + + 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 infra-policymgr package operational data. + + This module contains definitions + for the following management objects: + policy-manager: Policy-map operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-13 { + description + "Added changes for low latency config."; + } + revision 2021-07-28 { + description + "Added support for WRED probability percent."; + } + revision 2020-09-24 { + description + "IOS XR 7.3.1 revision."; + } + revision 2020-05-19 { + description + "IOS XR 7.3.1 revision."; + } + revision 2020-04-29 { + description + "IOS XR 7.3.1 revision."; + } + revision 2019-10-29 { + description + "IOS XR 7.2.1 revision."; + } + revision 2019-09-11 { + description + "IOS XR 7.1.1 revision."; + } + revision 2019-09-09 { + description + "IOS XR 7.1.1 revision."; + } + revision 2019-09-05 { + description + "IOS XR 7.1.1 revision."; + } + revision 2019-08-31 { + description + "IOS XR 7.1.1 revision."; + } + revision 2019-08-16 { + description + "IOS XR 7.1.1 revision."; + } + revision 2019-08-12 { + description + "IOS XR 7.1.1 revision."; + } + revision 2019-07-30 { + description + "IOS XR 7.1.1 revision."; + } + revision 2019-05-27 { + description + "IOS XR 7.0.1 revision."; + } + revision 2019-03-27 { + description + "IOS XR 7.0.1 revision."; + } + revision 2019-02-28 { + description + "IOS XR 7.0.1 revision."; + } + revision 2018-09-20 { + description + "IOS XR 7.1.1 revision."; + } + revision 2018-01-17 { + description + "IOS XR 6.4.1 revision."; + } + revision 2017-05-27 { + description + "IOS XR 6.3.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef afi-enum { + type enumeration { + enum "ipv4" { + value 1; + description + "Address family IPv4"; + } + enum "ipv6" { + value 2; + description + "Address family IPv6"; + } + } + } + + typedef Policymgr-policy-map { + type enumeration { + enum "qos" { + value 1; + description + "QoS Policymap"; + } + enum "pbr" { + value 2; + description + "PBR Policymap"; + } + enum "traffic" { + value 3; + description + "TRAFFIC Policymap"; + } + enum "subscriber-control" { + value 4; + description + "SUBSCONTROL Policymap"; + } + enum "accounting" { + value 5; + description + "ACCOUNTING Policymap"; + } + enum "redirect" { + value 6; + description + "REDIRECT Policy map"; + } + enum "flow-monitor" { + value 7; + description + "FlOWMONITOR Policy map"; + } + } + description + "Policymgr policy map"; + } + + typedef Policymgr-class-map { + type enumeration { + enum "qos" { + value 1; + description + "QoS Classmap"; + } + enum "pbr" { + value 2; + description + "PBR Classmap"; + } + enum "traffic" { + value 3; + description + "TRAFFIC Classmap"; + } + enum "subscriber-control" { + value 4; + description + "SUBSCONTROL Classmap"; + } + } + description + "Policymgr class map"; + } + + typedef Pclass-exec-strat-en { + type enumeration { + enum "pclass-exe-strat-unspecified" { + description + "Unspecified"; + } + enum "pclass-exe-strat-do-all" { + description + "Exec all actions"; + } + enum "pclass-exe-strat-do-until-success" { + description + "Exec until one of actions succeeds"; + } + enum "pclass-exe-strat-do-until-failure" { + description + "Exec until there is a failure"; + } + enum "pclass-exe-strat-max" { + description + "Invalid"; + } + } + description + "Policy class execution strategy"; + } + + typedef Match-available-id-en { + type enumeration { + enum "match-avail-ident-unspecified" { + value 0; + description + "match avail ident unspecified"; + } + enum "match-avail-ident-dnis" { + value 1; + description + "match avail ident dnis"; + } + enum "match-avail-ident-domain" { + value 2; + description + "match avail ident domain"; + } + enum "match-avail-ident-circuit-id" { + value 3; + description + "match avail ident circuit id"; + } + enum "match-avail-ident-remote-id" { + value 4; + description + "match avail ident remote id"; + } + enum "match-avail-ident-media" { + value 5; + description + "match avail ident media"; + } + enum "match-avail-ident-nas-port" { + value 6; + description + "match avail ident nas port"; + } + enum "match-avail-ident-protocol" { + value 7; + description + "match avail ident protocol"; + } + enum "match-avail-ident-source-address-ipv4" { + value 8; + description + "match avail ident source address ipv4"; + } + enum "match-avail-ident-source-address-ipv6" { + value 9; + description + "match avail ident source address ipv6"; + } + enum "match-avail-ident-source-address-mac" { + value 10; + description + "match avail ident source address mac"; + } + enum "match-avail-ident-tunnel-name" { + value 11; + description + "match avail ident tunnel name"; + } + enum "match-avail-ident-user-name" { + value 12; + description + "match avail ident user name"; + } + enum "match-avail-ident-vendor-id" { + value 13; + description + "match avail ident vendor id"; + } + enum "match-avail-ident-dhcp-client-id" { + value 14; + description + "match avail ident dhcp client id"; + } + enum "match-avail-ident-max" { + value 15; + description + "match avail ident max"; + } + } + description + "Match available id en"; + } + + typedef Afmon-alarm-type-en { + type enumeration { + enum "afmon-alm-type-invalid" { + value 0; + description + "afmon alm type invalid"; + } + enum "afmon-alm-discrete" { + value 1; + description + "afmon alm discrete"; + } + enum "afmon-alm-grp-cnt" { + value 2; + description + "afmon alm grp cnt"; + } + enum "afmon-alm-grp-pct" { + value 3; + description + "afmon alm grp pct"; + } + enum "afmon-alm-type-max" { + value 4; + description + "afmon alm type max"; + } + } + description + "Afmon alarm type en"; + } + + typedef Decode-identifier-en { + type enumeration { + enum "policy-decid-unspecified" { + value 0; + description + "policy decid unspecified"; + } + enum "policy-decid-remote-id" { + value 1; + description + "policy decid remote id"; + } + enum "policy-decid-circuit-id" { + value 2; + description + "policy decid circuit id"; + } + enum "policy-decid-user-name" { + value 3; + description + "policy decid user name"; + } + enum "policy-decid-max" { + value 4; + description + "policy decid max"; + } + } + description + "Decode identifier en"; + } + + typedef Class-map-name { + type string { + length "0..65"; + } + description + "Class map name"; + } + + typedef Policy-chk-sum { + type string { + length "0..16"; + } + description + "Policy chk sum"; + } + + typedef Policy-action-en { + type enumeration { + enum "policy-action-none" { + description + "Policy Action None"; + } + enum "policy-action-unspecified" { + description + "Policy Action is not specified"; + } + enum "policy-action-mark" { + description + "Policy Action Mark"; + } + enum "policy-action-mark2" { + description + "Policy Action Mark2"; + } + enum "policy-action-wred" { + description + "Policy Action WRED"; + } + enum "policy-action-encap-seq" { + description + "Policy action encap-sequence number"; + } + enum "policy-action-priority" { + description + "Policy Action Priority Queue"; + } + enum "policy-action-iphc" { + description + "Policy Action IP Header Compression"; + } + enum "policy-action-bw-remaining" { + description + "Policy Action Bandwidth Remaining Queue"; + } + enum "policy-action-min-bw" { + description + "Policy Action Minimum Bandwidth Queue"; + } + enum "policy-action-authenticate-aaa" { + description + "Policy Action authenticate"; + } + enum "policy-action-collect-id" { + description + "Policy Action collect identifier"; + } + enum "policy-action-disconnect" { + description + "Policy Action disconnect session"; + } + enum "policy-action-set-timer" { + description + "Policy Action set timer"; + } + enum "policy-action-stop-timer" { + description + "Policy Action stop timer"; + } + enum "policy-action-query-ancp" { + description + "Policy Action query ancp"; + } + enum "policy-action-accounting-aaa-list" { + description + "Policy Action accounting aaa"; + } + enum "policy-action-prepaid-config" { + description + "Policy Action prepaid config"; + } + enum "policy-action-timeout-idle" { + description + "Policy Action timeout idle"; + } + enum "policy-action-proxy-aaa" { + description + "Policy Action proxy aaa"; + } + enum "policy-action-template-activate" { + description + "Policy Action activate template"; + } + enum "policy-action-template-deactivate" { + description + "Policy Action deactivate template"; + } + enum "policy-action-decode-identifier" { + description + "Policy Action decode identifier"; + } + enum "policy-action-q-limit" { + description + "Policy Action Queue Limit"; + } + enum "policy-action-authorize-id" { + description + "Policy Action authorize idetifier"; + } + enum "policy-action-accounting-event-aaa-list" { + description + "Policy Action accounting event"; + } + enum "policy-action-afmon-react" { + description + "Policy Action React (afmon)"; + } + enum "policy-action-httpr" { + description + "Policy Action httpr (pbr)"; + } + enum "policy-action-pbr-transmit" { + description + "Policy Action pbr transmit"; + } + enum "policy-action-pbr-drop" { + description + "Policy Action pbr drop"; + } + enum "policy-action-punt" { + description + "Policy Action pbr punt"; + } + enum "policy-action-copy" { + description + "Policy Action pbr copy"; + } + enum "policy-action-sfrag" { + description + "Policy Action Service fragment"; + } + enum "policy-action-monitor" { + description + "Policy Action Monitor"; + } + enum "policy-action-redirect" { + description + "Policy Action redirect"; + } + enum "policy-action-ipv4-nh" { + description + "Policy Action ipv4 next hop"; + } + enum "policy-action-ipv6-nh" { + description + "Policy Action ipv6 next hop"; + } + enum "policy-action-vlan-pop" { + description + "Policy Action pop"; + } + enum "policy-action-pbr-next-hop" { + description + "Policy Action PBR Forward"; + } + enum "policy-action-decap-gre" { + description + "Policy Action decapsule GRE"; + } + enum "policy-action-output-interface" { + description + "Policy Action PBR redirect interface"; + } + enum "policy-action-service-function-path" { + description + "Policy Action PBR service chaining"; + } + enum "policy-action-http-enrich" { + description + "Policy Action FTTP Enrich"; + } + enum "policy-action-decap-gue-v1" { + description + "Policy Action decapsule GUE v1"; + } + enum "policy-action-low-latency-profile" { + description + "Policy Action low latency profile"; + } + enum "policy-action-ptrs" { + description + "Dummy action for internal use"; + } + enum "policy-action-police" { + description + "Policy Action Police"; + } + enum "policy-action-shape" { + description + "Policy Action Shape"; + } + enum "policy-action-serv-pol" { + description + "Policy Action Service Policy"; + } + enum "policy-action-cac" { + description + "Policy Action CAC"; + } + enum "policy-action-afmon-flow-parm" { + description + "Policy Action Flow params (afmon)"; + } + enum "policy-action-afmon-ipcbr-metric" { + description + "Policy Action IP-CBR Metric (afmon)"; + } + enum "policy-action-afmon-rtp-metric" { + description + "Policy Action RTP-Custom Metric (afmon)"; + } + enum "policy-action-afmon-rtp-mmr-metric" { + description + "Policy Action RTP-MMR Metric (afmon)"; + } + enum "policy-action-afmon-rtp-j2k-metric" { + description + "Policy Action RTP-J2K Metric (afmon)"; + } + enum "policy-action-afmon-rtp-voice-metric" { + description + "Policy Action RTP-Voice Metric (afmon)"; + } + enum "policy-action-afmon-mdi-metric" { + description + "Policy Action MDI Metric (afmon)"; + } + enum "policy-action-afmon-mdi-rtp-metric" { + description + "Policy Action MDI RTP Metric (afmon)"; + } + enum "policy-action-afmon-fmm" { + description + "Policy Action flow monitor (afmon)"; + } + enum "policy-action-pfc" { + description + "Policy Action PFC"; + } + enum "policy-action-max" { + description + "Policy Action Max (Invalid)"; + } + } + description + "Policy Actions Enumeration"; + } + + typedef Cac-flow-actn-type-e { + type uint8; + description + "Cac flow actn type e"; + } + + typedef Authorize-id-en { + type enumeration { + enum "policy-authorize-ident-unspecified" { + value 0; + description + "policy authorize ident unspecified"; + } + enum "policy-authorize-ident-dnis" { + value 1; + description + "policy authorize ident dnis"; + } + enum "policy-authorize-ident-domain" { + value 2; + description + "policy authorize ident domain"; + } + enum "policy-authorize-ident-user-name" { + value 3; + description + "policy authorize ident user name"; + } + enum "policy-authorize-ident-nas-port" { + value 4; + description + "policy authorize ident nas port"; + } + enum "policy-authorize-ident-source-address-ipv4" { + value 5; + description + "policy authorize ident source address ipv4"; + } + enum "policy-authorize-ident-source-address-ipv6" { + value 6; + description + "policy authorize ident source address ipv6"; + } + enum "policy-authorize-ident-source-address-mac" { + value 7; + description + "policy authorize ident source address mac"; + } + enum "policy-authorize-ident-auto-detect" { + value 8; + description + "policy authorize ident auto detect"; + } + enum "policy-authorize-ident-tunnel-name" { + value 9; + description + "policy authorize ident tunnel name"; + } + enum "policy-authorize-ident-dhcp-client-id" { + value 10; + description + "policy authorize ident dhcp client id"; + } + enum "policy-authorize-ident-circuit-id" { + value 11; + description + "policy authorize ident circuit id"; + } + enum "policy-authorize-ident-remote-id" { + value 12; + description + "policy authorize ident remote id"; + } + enum "policy-authorize-ident-vendor-id" { + value 13; + description + "policy authorize ident vendor id"; + } + enum "policy-authorize-ident-service-name" { + value 14; + description + "policy authorize ident service name"; + } + enum "policy-authorize-ident-max" { + value 15; + description + "policy authorize ident max"; + } + } + description + "Authorize id en"; + } + + typedef Afmon-ipcbr-parm-type-en { + type enumeration { + enum "afmon-ipcbr-parm-invalid" { + value 0; + description + "afmon ipcbr parm invalid"; + } + enum "afmon-ipcbr-parm-ip-pkt-rate" { + value 1; + description + "afmon ipcbr parm ip pkt rate"; + } + enum "afmon-ipcbr-parm-ip-bit-rate" { + value 2; + description + "afmon ipcbr parm ip bit rate"; + } + enum "afmon-ipcbr-parm-media-bit-rate" { + value 3; + description + "afmon ipcbr parm media bit rate"; + } + enum "afmon-ipcbr-parm-media-pkt-size" { + value 4; + description + "afmon ipcbr parm media pkt size"; + } + enum "afmon-ipcbr-parm-media-pkts-per-ip" { + value 5; + description + "afmon ipcbr parm media pkts per ip"; + } + enum "afmon-ipcbr-parm-max" { + value 6; + description + "afmon ipcbr parm max"; + } + } + description + "Afmon ipcbr parm type en"; + } + + typedef Match-media-type-en { + type enumeration { + enum "match-media-type-unspecified" { + value 0; + description + "match media type unspecified"; + } + enum "match-media-type-async" { + value 1; + description + "match media type async"; + } + enum "match-media-type-atm" { + value 2; + description + "match media type atm"; + } + enum "match-media-type-ether" { + value 3; + description + "match media type ether"; + } + enum "match-media-type-ip" { + value 4; + description + "match media type ip"; + } + enum "match-media-type-isdn" { + value 5; + description + "match media type isdn"; + } + enum "match-media-type-mpls" { + value 6; + description + "match media type mpls"; + } + enum "match-media-type-sync" { + value 7; + description + "match media type sync"; + } + enum "match-media-type-max" { + value 8; + description + "match media type max"; + } + } + description + "Match media type en"; + } + + typedef Plmgr-appln-type-en { + type enumeration { + enum "qos" { + value 1; + description + "Application type QOS"; + } + enum "pbr" { + value 2; + description + "Application type PBR"; + } + enum "subscriber-control" { + value 3; + description + "Application type subscriber control"; + } + enum "accounting" { + value 4; + description + "Application type accounting"; + } + enum "traffic" { + value 5; + description + "Application type traffic"; + } + enum "performance-traffic" { + value 6; + description + "Application type performance traffic"; + } + } + description + "Different Application types"; + } + + typedef Policy-route-target-en { + type enumeration { + enum "policy-rt-type-none" { + value 0; + description + "policy rt type none"; + } + enum "policy-rt-type-asn2" { + value 1; + description + "policy rt type asn2"; + } + enum "policy-rt-type-ipv4" { + value 2; + description + "policy rt type ipv4"; + } + enum "policy-rt-type-asn4" { + value 3; + description + "policy rt type asn4"; + } + enum "policy-rt-type-max" { + value 4; + description + "policy rt type max"; + } + } + description + "Policy route target en"; + } + + typedef Identifier-en { + type enumeration { + enum "policy-ident-unspecified" { + value 0; + description + "policy ident unspecified"; + } + enum "policy-ident-authen-status" { + value 1; + description + "policy ident authen status"; + } + enum "policy-ident-dnis" { + value 2; + description + "policy ident dnis"; + } + enum "policy-ident-media" { + value 3; + description + "policy ident media"; + } + enum "policy-ident-mlp-negotiated" { + value 4; + description + "policy ident mlp negotiated"; + } + enum "policy-ident-nas-port" { + value 5; + description + "policy ident nas port"; + } + enum "policy-ident-no-user-name" { + value 6; + description + "policy ident no user name"; + } + enum "policy-ident-protocol" { + value 7; + description + "policy ident protocol"; + } + enum "policy-ident-service-name" { + value 8; + description + "policy ident service name"; + } + enum "policy-ident-source-address-ipv4" { + value 9; + description + "policy ident source address ipv4"; + } + enum "policy-ident-source-address-ipv6" { + value 10; + description + "policy ident source address ipv6"; + } + enum "policy-ident-source-address-mac" { + value 11; + description + "policy ident source address mac"; + } + enum "policy-ident-timer" { + value 12; + description + "policy ident timer"; + } + enum "policy-ident-tunnel-name" { + value 13; + description + "policy ident tunnel name"; + } + enum "policy-ident-auth-domain" { + value 14; + description + "policy ident auth domain"; + } + enum "policy-ident-auth-user-name" { + value 15; + description + "policy ident auth user name"; + } + enum "policy-ident-unauth-domain" { + value 16; + description + "policy ident unauth domain"; + } + enum "policy-ident-unauth-user-name" { + value 17; + description + "policy ident unauth user name"; + } + enum "policy-ident-max" { + value 18; + description + "policy ident max"; + } + } + description + "Identifier en"; + } + + typedef Mark-type-en { + type enumeration { + enum "mark-type-none" { + value 0; + description + "Mark None"; + } + enum "mark-type-dscp" { + value 1; + description + "Mark DSCP"; + } + enum "mark-type-prec" { + value 2; + description + "Mark Precedence"; + } + enum "mark-type-mpls-exp-topmost" { + value 3; + description + "Mark MPLS EXP on topmost header"; + } + enum "mark-type-mpls-exp-imposition" { + value 4; + description + "Mark MPLS EXP on imposition header"; + } + enum "mark-type-qos-group" { + value 5; + description + "Mark QoS Group"; + } + enum "mark-type-discard-class" { + value 6; + description + "Mark Discard Class"; + } + enum "mark-type-cos" { + value 7; + description + "Mark CoS"; + } + enum "mark-type-cos-inner" { + value 8; + description + "Mark COS Inner"; + } + enum "mark-type-srp-priority" { + value 9; + description + "Mark Priority"; + } + enum "mark-type-atm-clp" { + value 10; + description + "Mark ATM CLP"; + } + enum "mark-type-fr-de" { + value 11; + description + "Mark FR DE"; + } + enum "mark-type-dscp-tunnel" { + value 12; + description + "Mark DSCP in Tunnel Header"; + } + enum "mark-type-prec-tunnel" { + value 13; + description + "Mark Precedence in Tunnel Header"; + } + enum "mark-type-dei" { + value 14; + description + "Mark DEI"; + } + enum "mark-type-dei-imposition" { + value 15; + description + "Mark DEI on imposition header"; + } + enum "mark-type-forward-class" { + value 16; + description + "Mark forward class"; + } + enum "mark-type-df" { + value 17; + description + "Mark DF bit"; + } + enum "mark-type-traffic-class" { + value 18; + description + "Mark Traffic Class"; + } + enum "mark-type-src-mac" { + value 19; + description + "Mark source mac"; + } + enum "mark-type-dst-mac" { + value 20; + description + "Mark destination mac"; + } + enum "mark-type-ipv4-src-addr" { + value 21; + description + "Mark ipv4 source address"; + } + enum "mark-type-ipv4-dst-addr" { + value 22; + description + "Mark ipv4 destination address"; + } + enum "mark-type-vlan-id" { + value 23; + description + "Mark vlan id"; + } + enum "mark-type-udp-src-port" { + value 24; + description + "Mark type udp source port"; + } + enum "mark-type-udp-dst-port" { + value 25; + description + "Mark type udp destination port"; + } + enum "mark-type-tcp-src-port" { + value 26; + description + "Mark type tcp source port"; + } + enum "mark-type-tcp-dst-port" { + value 27; + description + "Mark type tcp destination port"; + } + enum "mark-type-sctp-src-port" { + value 28; + description + "Mark type sctp source port"; + } + enum "mark-type-sctp-dst-port" { + value 29; + description + "Mark type sctp destination port"; + } + enum "mark-type-max" { + value 30; + description + "Mark Type Max (Invalid)"; + } + } + description + "Mark Type Enumeration"; + } + + typedef Qlimit-type-en { + type enumeration { + enum "qlimit-cmd" { + value 0; + description + "Queue Limit"; + } + enum "qlimit-discard-class" { + value 1; + description + "Queue Limit based on Discard Class"; + } + enum "qlimit-qos-group" { + value 2; + description + "Queue Limit based on Qos Group"; + } + enum "qlimit-precedence" { + value 3; + description + "Queue Limit based on Precedence"; + } + enum "qlimit-mpls-exp" { + value 4; + description + "Queue Limit based on Mpls Exp"; + } + enum "qlimit-dscp" { + value 5; + description + "Queue Limit based on Dscp"; + } + enum "qlimit-max" { + value 6; + description + "Queue Limit Max (Invalid)"; + } + } + description + "Queue Limit Types"; + } + + typedef Afmon-react-criterion-en { + type enumeration { + enum "afmon-react-crit-invalid" { + value 0; + description + "afmon react crit invalid"; + } + enum "afmon-react-mrv" { + value 1; + description + "afmon react mrv"; + } + enum "afmon-react-df" { + value 2; + description + "afmon react df"; + } + enum "afmon-react-mse" { + value 3; + description + "afmon react mse"; + } + enum "afmon-react-pkt-rate" { + value 4; + description + "afmon react pkt rate"; + } + enum "afmon-react-flow-cnt" { + value 5; + description + "afmon react flow cnt"; + } + enum "afmon-react-rtp-loss-fraction" { + value 6; + description + "afmon react rtp loss fraction"; + } + enum "afmon-react-rtp-jitter" { + value 7; + description + "afmon react rtp jitter"; + } + enum "afmon-react-rtp-max-jitter" { + value 8; + description + "afmon react rtp max jitter"; + } + enum "afmon-react-rtp-out-of-order" { + value 9; + description + "afmon react rtp out of order"; + } + enum "afmon-react-rtp-loss-pkts" { + value 10; + description + "afmon react rtp loss pkts"; + } + enum "afmon-react-rtp-ta" { + value 11; + description + "afmon react rtp ta"; + } + enum "afmon-react-rtp-es" { + value 12; + description + "afmon react rtp es"; + } + enum "afmon-react-mdi-mlr" { + value 13; + description + "afmon react mdi mlr"; + } + enum "afmon-react-mdi-mdc" { + value 14; + description + "afmon react mdi mdc"; + } + enum "afmon-react-mdi-jitter" { + value 15; + description + "afmon react mdi jitter"; + } + enum "afmon-react-mdi-loss-pkts" { + value 16; + description + "afmon react mdi loss pkts"; + } + enum "afmon-react-mdi-ta" { + value 17; + description + "afmon react mdi ta"; + } + enum "afmon-react-mdi-es" { + value 18; + description + "afmon react mdi es"; + } + enum "afmon-react-crit-max" { + value 19; + description + "afmon react crit max"; + } + } + description + "Afmon react criterion en"; + } + + typedef Pfc-pause-type { + type enumeration { + enum "pfc-buffer-size-defined" { + description + "pfc buffer size defined"; + } + enum "pfc-pause-threshold-defined" { + description + "pfc pause threshold defined"; + } + enum "pfc-resume-threshold-defined" { + description + "pfc resume threshold defined"; + } + enum "pfc-buffer-size-value" { + description + "pfc buffer size value"; + } + enum "pfc-pause-threshold-value" { + description + "pfc pause threshold value"; + } + enum "pfc-resume-threshold-value" { + description + "pfc resume threshold value"; + } + } + description + "Pfc pause type"; + } + + typedef Police-actn-category-en { + type enumeration { + enum "police-actn-category-conform" { + value 0; + description + "Conform action"; + } + enum "police-actn-category-exceed" { + value 1; + description + "Exceed action"; + } + enum "police-actn-category-violate" { + value 2; + description + "Violate action"; + } + enum "police-actn-category-max" { + value 3; + description + "Maximum police action categories"; + } + } + description + "Police Action Categories"; + } + + typedef Redirect-type-e { + type uint8; + description + "Redirect type e"; + } + + typedef Match-nas-port-sub-id-en { + type enumeration { + enum "match-nas-port-sub-id-unspecified" { + value 0; + description + "match nas port sub id unspecified"; + } + enum "match-nas-port-sub-id-adapter" { + value 1; + description + "match nas port sub id adapter"; + } + enum "match-nas-port-sub-id-channel" { + value 2; + description + "match nas port sub id channel"; + } + enum "match-nas-port-sub-id-ip-addr" { + value 3; + description + "match nas port sub id ip addr"; + } + enum "match-nas-port-sub-id-port" { + value 4; + description + "match nas port sub id port"; + } + enum "match-nas-port-sub-id-shelf" { + value 5; + description + "match nas port sub id shelf"; + } + enum "match-nas-port-sub-id-slot" { + value 6; + description + "match nas port sub id slot"; + } + enum "match-nas-port-sub-id-sub-interface" { + value 7; + description + "match nas port sub id sub interface"; + } + enum "match-nas-port-sub-id-type" { + value 8; + description + "match nas port sub id type"; + } + enum "match-nas-port-sub-id-vci" { + value 9; + description + "match nas port sub id vci"; + } + enum "match-nas-port-sub-id-vlan" { + value 10; + description + "match nas port sub id vlan"; + } + enum "match-nas-port-sub-id-vpi" { + value 11; + description + "match nas port sub id vpi"; + } + enum "match-nas-port-sub-id-max" { + value 12; + description + "match nas port sub id max"; + } + } + description + "Match nas port sub id en"; + } + + typedef Mark-type-e { + type uint8; + description + "Mark type e"; + } + + typedef Object-name { + type string { + length "0..65"; + } + description + "Object name"; + } + + typedef Cac-flow-actn-type-en { + type enumeration { + enum "cac-flow-actn-type-local" { + value 0; + description + "CAC flow local"; + } + enum "cac-flow-actn-type-max" { + value 1; + description + "Max CAC flow types"; + } + } + description + "CAC flow types"; + } + + typedef Policy-map-table-type-e { + type uint8; + description + "Policy map table type e"; + } + + typedef Enum-val-t { + type uint16; + description + "Enum val t"; + } + + typedef Afmon-react-actn-en { + type enumeration { + enum "afmon-react-actn-none" { + value 0; + description + "afmon react actn none"; + } + enum "afmon-react-syslog" { + value 1; + description + "afmon react syslog"; + } + enum "afmon-react-snmp" { + value 2; + description + "afmon react snmp"; + } + enum "afmon-react-clone" { + value 3; + description + "afmon react clone"; + } + } + description + "Afmon react actn en"; + } + + typedef Pevent-cond-eval-en { + type enumeration { + enum "pevent-cond-eval-unspecified" { + description + "Unspecified execution strategy"; + } + enum "pevent-cond-eval-match-first" { + description + "Match-first execution strategy"; + } + enum "pevent-cond-eval-match-all" { + description + "Match-all execution strategy"; + } + enum "pevent-cond-eval-max" { + description + "Internal use only"; + } + } + description + "Policy event execution strategy enumeration"; + } + + typedef Dpss-snid-type-en { + type enumeration { + enum "dpss-snid-invalid" { + value 0; + description + "dpss snid invalid"; + } + enum "dpss-snid-index" { + value 1; + description + "dpss snid index"; + } + enum "dpss-snid-name" { + value 2; + description + "dpss snid name"; + } + enum "dpss-snid-type-max" { + value 3; + description + "dpss snid type max"; + } + } + description + "Dpss snid type en"; + } + + typedef Pclass-data-avl-inbag { + type uint64; + description + "Pclass data avl inbag"; + } + + typedef Match-type-en { + type enumeration { + enum "match-type-none" { + description + "Match Type None"; + } + enum "match-type-ipv4-dscp" { + description + "Match Type IPv4 DSCP"; + } + enum "match-type-ipv4-prec" { + description + "Match Type IPv4 Precedence"; + } + enum "match-type-ipv6-dscp" { + description + "Match Type IPv6 DSCP"; + } + enum "match-type-packet-length" { + description + "Match Type Packet length"; + } + enum "match-type-ipv4-packet-length" { + description + "Match Type IPv4 Packet length"; + } + enum "match-type-ipv6-packet-length" { + description + "Match Type IPv6 Packet length"; + } + enum "match-type-flow-tag" { + description + "Match Type Flow Tag"; + } + enum "match-type-icmpv4-type" { + description + "Match Type IPv4 icmp-type"; + } + enum "match-type-icmpv4-code" { + description + "Match Type IPv4 icmp-code"; + } + enum "match-type-icmpv6-type" { + description + "Match Type IPv6 icmp-type"; + } + enum "match-type-icmpv6-code" { + description + "Match Type IPv6 icmp-code"; + } + enum "match-type-ipv6-prec" { + description + "Match Type IPv6 Precedence"; + } + enum "match-type-fragment-type" { + description + "Match type fragment-type"; + } + enum "match-type-tcp-flag" { + description + "Match type TCP flag"; + } + enum "match-type-dscp" { + description + "Match Type DSCP"; + } + enum "match-type-prec" { + description + "Match Type Precedence"; + } + enum "match-type-proto" { + description + "Match Type Protocol"; + } + enum "match-type-proto-icmpv4" { + description + "Match Type protocol ICMPv4"; + } + enum "match-type-proto-icmpv6" { + description + "Match Type protocol ICMPv6"; + } + enum "match-type-mpls-exp-top" { + description + "Match Type MPLS EXP Topmost"; + } + enum "match-type-mpls-exp-imp" { + description + "Match Type MPLS EXP Imposition"; + } + enum "match-type-mpls-disp-ipv4-acl" { + description + "Match Type MPLS DISP IPv4 ACL"; + } + enum "match-type-mpls-disp-ipv6-acl" { + description + "Match Type MPLS DISP IPv6 ACL"; + } + enum "match-type-mpls-disp-cl-map" { + description + "Match Type MPLS DISP Class Map"; + } + enum "match-type-mpls-topmost-eos" { + description + "Match Type MPLS TOPMOST EOS"; + } + enum "match-type-mpls-topmost-label" { + description + "Match Type MPLS TOPMOST LABEL"; + } + enum "match-type-cos" { + description + "Match Type COS"; + } + enum "match-type-cos-inner" { + description + "Match Type inner COS"; + } + enum "match-type-dei" { + description + "Match Type DEI"; + } + enum "match-type-dei-inner" { + description + "Match Type inner DEI"; + } + enum "match-type-vlan" { + description + "Match Type VLAN"; + } + enum "match-type-vlan-inner" { + description + "Match Type inner VLAN"; + } + enum "match-type-fr-dlci" { + description + "Match Type FR DLCI"; + } + enum "match-type-src-mac" { + description + "Match Type Source MAC Address"; + } + enum "match-type-dst-mac" { + description + "Match Type Destination MAC Address"; + } + enum "match-type-atm-oam" { + description + "Match Type ATM OAM"; + } + enum "match-type-atm-clp" { + description + "Match Type ATM CLP"; + } + enum "match-type-fr-de" { + description + "Match Type FR DE"; + } + enum "match-type-qos-grp" { + description + "Match Type QoS Group"; + } + enum "match-type-traffic-class" { + description + "Match Type Traffic Class"; + } + enum "match-type-disc-cls" { + description + "Match Type Discard Class"; + } + enum "match-type-vpls-known" { + description + "Match Type VPLS Known"; + } + enum "match-type-vpls-unknown" { + description + "Match Type VPLS Unknown"; + } + enum "match-type-vpls-mcast" { + description + "Match Type VPLS Multicast"; + } + enum "match-type-vpls-bcast" { + description + "Match Type VPLS Broadcast"; + } + enum "match-type-vpls-control" { + description + "Match Type VPLS Control"; + } + enum "match-type-ipv4-acl" { + description + "Match Type IPv4 ACL"; + } + enum "match-type-ipv6-acl" { + description + "Match Type IPv6 ACL"; + } + enum "match-type-flow-key" { + description + "Match Type Flow Key"; + } + enum "match-type-avail-id" { + description + "Match Type Available Identifier"; + } + enum "match-type-authen-status" { + description + "Match Type Authentication Status"; + } + enum "match-type-media" { + description + "Match Type Media"; + } + enum "match-type-mlp-negotiated" { + description + "Match Type MLP Negotiated"; + } + enum "match-type-subs-protocol" { + description + "Match Type Protocol"; + } + enum "match-type-dnis" { + description + "Match Type DNIS"; + } + enum "match-type-dnis-regexp" { + description + "Match Type DNIS Regular Exp"; + } + enum "match-type-domain" { + description + "Match Type Domain"; + } + enum "match-type-domain-regexp" { + description + "Match Type Domain Regular Exp"; + } + enum "match-type-nas-port" { + description + "Match Type NAS Port"; + } + enum "match-type-service-name" { + description + "Match Type Service Name"; + } + enum "match-type-service-name-regexp" { + description + "Match Type Service Name Regular Exp"; + } + enum "match-type-src-addr-ipv4" { + description + "Match Type Source Address IPV4"; + } + enum "match-type-dst-addr-ipv4" { + description + "Match Type Source Address IPV4"; + } + enum "match-type-src-addr-ipv6" { + description + "Match Type Source Address IPV6"; + } + enum "match-type-dst-addr-ipv6" { + description + "Match Type Source Address IPV6"; + } + enum "match-type-src-addr-mac" { + description + "Match Type Source Address Mac"; + } + enum "match-type-src-port" { + description + "Match Type Source Port"; + } + enum "match-type-dst-port" { + description + "Match Type Source Port"; + } + enum "match-type-timer" { + description + "Match Type Timer"; + } + enum "match-type-timer-regexp" { + description + "Match Type Timer Regular Exp"; + } + enum "match-type-tunnel-name" { + description + "Match Type Tunnel Name"; + } + enum "match-type-tunnel-name-regexp" { + description + "Match Type Tunnel Name Regular Exp"; + } + enum "match-type-user-name" { + description + "Match Type User Name"; + } + enum "match-type-user-name-regexp" { + description + "Match Type User Name Regular Exp"; + } + enum "match-type-auth-user-name" { + description + "Match Type Authenticated User Name"; + } + enum "match-type-auth-user-name-regexp" { + description + "Match Type Authenticated Userame Reg Exp"; + } + enum "match-type-unauth-user-name" { + description + "Match Type Unauthenticated Username"; + } + enum "match-type-unauth-user-name-regexp" { + description + "Match Type Unauthenicated Username RegEx"; + } + enum "match-type-no-user-name" { + description + "Match Type No Username"; + } + enum "match-type-auth-domain" { + description + "Match Type Authenticated Domain"; + } + enum "match-type-auth-domain-regexp" { + description + "Match Type Authenticated Domain RegEx"; + } + enum "match-type-unauth-domain" { + description + "Match Type Unauthenticated Domain"; + } + enum "match-type-unauth-domain-regexp" { + description + "Match Type Unauthenticated Domain RegEx"; + } + enum "match-type-vendor-id" { + description + "Match Type Vendor ID"; + } + enum "match-type-vendor-id-regexp" { + description + "Match Type Vendor ID RegEx"; + } + enum "match-type-access-interface" { + description + "Match Type Access Interface"; + } + enum "match-type-input-interface" { + description + "Match Type Input Interface"; + } + enum "match-type-input-interface-hdl" { + description + "Match Type Input Interface handle"; + } + enum "match-type-ether-type" { + description + "Match Type Ethernet Type"; + } + enum "match-type-dhcp-client-id" { + description + "Match DHCP Client ID"; + } + enum "match-type-dhcp-client-id-regexp" { + description + "Match DHCP Client ID RegEx"; + } + enum "match-type-circuit-id" { + description + "Match Type Circuit ID"; + } + enum "match-type-circuit-id-regexp" { + description + "Match Type Circuit ID RegEx"; + } + enum "match-type-remote-id" { + description + "Match Type Remote ID"; + } + enum "match-type-remote-id-regexp" { + description + "Match Type Remote ID RegEx"; + } + enum "match-type-cac-admit-local" { + description + "Match Type CAC admitted"; + } + enum "match-type-cac-unadmit-local" { + description + "Match Type CAC unadmitted"; + } + enum "match-type-any-internal" { + description + "Match Type Any (Used only for class-default)"; + } + enum "match-type-ethernet-service-s-acl" { + description + "Match Type Ethernet-Services ACL"; + } + enum "match-type-ptrs" { + description + "Dummy match type for internal use"; + } + enum "match-type-max" { + description + "Match Type Max (Invalid)"; + } + } + description + "Match Type"; + } + + typedef Flow-key-en { + type enumeration { + enum "flow-key-invalid" { + value 0; + description + "Flow key invalid"; + } + enum "flow-key-src-ip" { + value 1; + description + "Flow key source ip"; + } + enum "flow-key-dst-ip" { + value 2; + description + "Flow key destination ip"; + } + enum "flow-key-five-tuple" { + value 3; + description + "Flow key five tuple"; + } + enum "flow-key-max" { + value 4; + description + "Flow key max"; + } + } + description + "Flow key en"; + } + + typedef Match-attr-e { + type enumeration { + enum "value" { + value 0; + description + "Match attribute value"; + } + enum "range" { + value 1; + description + "Match attribute range"; + } + enum "mask" { + value 2; + description + "Match attribute mask"; + } + } + description + "Match attribute type"; + } + + typedef Afmon-alarm-sev-en { + type enumeration { + enum "afmon-alm-none" { + value 0; + description + "afmon alm none"; + } + enum "afmon-alm-info" { + value 1; + description + "afmon alm info"; + } + enum "afmon-alm-notif" { + value 2; + description + "afmon alm notif"; + } + enum "afmon-alm-warn" { + value 3; + description + "afmon alm warn"; + } + enum "afmon-alm-error" { + value 4; + description + "afmon alm error"; + } + enum "afmon-alm-crit" { + value 5; + description + "afmon alm crit"; + } + enum "afmon-alm-alert" { + value 6; + description + "afmon alm alert"; + } + enum "afmon-alm-emerg" { + value 7; + description + "afmon alm emerg"; + } + enum "afmon-alm-sev-max" { + value 8; + description + "afmon alm sev max"; + } + } + description + "AFMon Alarm Severities"; + } + + typedef Acct-en { + type enumeration { + enum "policy-acct-evt-unspecified" { + value 0; + description + "policy acct evt unspecified"; + } + enum "policy-acct-evt-start" { + value 1; + description + "policy acct evt start"; + } + enum "policy-acct-evt-stop" { + value 2; + description + "policy acct evt stop"; + } + enum "policy-acct-evt-update" { + value 3; + description + "policy acct evt update"; + } + } + description + "Acct en"; + } + + typedef Match-logical-operator-en { + type enumeration { + enum "match-operator-unspecified" { + value 0; + description + "match operator unspecified"; + } + enum "match-equal-to" { + value 1; + description + "match equal to"; + } + enum "match-greater-than" { + value 2; + description + "match greater than"; + } + enum "match-greater-than-or-equal" { + value 3; + description + "match greater than or equal"; + } + enum "match-less-than" { + value 4; + description + "match less than"; + } + enum "match-less-than-or-equal" { + value 5; + description + "match less than or equal"; + } + enum "match-operator-max" { + value 6; + description + "match operator max"; + } + } + description + "Logical Operators"; + } + + typedef Pclass-diff-inbag { + type uint64; + description + "Pclass diff inbag"; + } + + typedef Shared-bucket-name { + type string { + length "0..65"; + } + description + "Shared bucket name"; + } + + typedef Policy-param-unit-type { + type enumeration { + enum "policy-param-unit-invalid" { + description + "policy param unit invalid"; + } + enum "policy-param-unit-bytes" { + description + "policy param unit bytes"; + } + enum "policy-param-unit-kbytes" { + description + "policy param unit kbytes"; + } + enum "policy-param-unit-mbytes" { + description + "policy param unit mbytes"; + } + enum "policy-param-unit-gbytes" { + description + "policy param unit gbytes"; + } + enum "policy-param-unit-bitsps" { + description + "policy param unit bitsps"; + } + enum "policy-param-unit-kbitsps" { + description + "policy param unit kbitsps"; + } + enum "policy-param-unit-mbitsps" { + description + "policy param unit mbitsps"; + } + enum "policy-param-unit-gbitsps" { + description + "policy param unit gbitsps"; + } + enum "policy-param-unit-cells-ps" { + description + "policy param unit cells ps"; + } + enum "policy-param-unit-packets-ps" { + description + "policy param unit packets ps"; + } + enum "policy-param-unit-us" { + description + "policy param unit us"; + } + enum "policy-param-unit-ms" { + description + "policy param unit ms"; + } + enum "policy-param-unit-seconds" { + description + "policy param unit seconds"; + } + enum "policy-param-unit-packets" { + description + "policy param unit packets"; + } + enum "policy-param-unit-cells" { + description + "policy param unit cells"; + } + enum "policy-param-unit-percent" { + description + "policy param unit percent"; + } + enum "policy-param-unit-per-thousand" { + description + "policy param unit per thousand"; + } + enum "policy-param-unit-per-million" { + description + "policy param unit per million"; + } + enum "policy-param-unit-hz" { + description + "policy param unit hz"; + } + enum "policy-param-unit-khz" { + description + "policy param unit khz"; + } + enum "policy-param-unit-mhz" { + description + "policy param unit mhz"; + } + enum "policy-param-unit-ratio" { + description + "policy param unit ratio"; + } + enum "policy-param-unit-inverse-ratio" { + description + "policy param unit inverse-ratio"; + } + enum "policy-param-unit-max" { + description + "policy param unit max"; + } + } + description + "Policy param unit type"; + } + + typedef Pevent-type-en { + type enumeration { + enum "pevent-type-unspecified" { + description + "Unspecified event"; + } + enum "pevent-type-acct-logon" { + description + "Log on event"; + } + enum "pevent-type-acct-logoff" { + description + "Log off event"; + } + enum "pevent-type-credit-exhausted" { + description + "Credit exhausted event"; + } + enum "pevent-type-idle-timeout" { + description + "Idle timeout event"; + } + enum "pevent-type-absolute-timeout" { + description + "Absolute timeout event"; + } + enum "pevent-type-quota-depleted" { + description + "Quota depletion event"; + } + enum "pevent-type-service-start" { + description + "Service start event"; + } + enum "pevent-type-service-stop" { + description + "Service stop event"; + } + enum "pevent-type-session-start" { + description + "Session start event"; + } + enum "pevent-type-session-activate" { + description + "Session activate event"; + } + enum "pevent-type-session-restart" { + description + "Session restart event"; + } + enum "pevent-type-session-stop" { + description + "Session stop event"; + } + enum "pevent-type-session-disconnect" { + description + "Session disconnect event"; + } + enum "pevent-type-session-update" { + description + "Session update event"; + } + enum "pevent-type-flow-start" { + description + "Flow start event"; + } + enum "pevent-type-flow-stop" { + description + "Flow stop event"; + } + enum "pevent-type-accouting-start" { + description + "Accounting start event"; + } + enum "pevent-type-acountng-g-stop" { + description + "Accounting stop event"; + } + enum "pevent-type-acountng-g-update" { + description + "Accounting update event"; + } + enum "pevent-type-timer-expiry" { + description + "Timer expierd event"; + } + enum "pevent-type-threshold-reached" { + description + "Threshold reached event"; + } + enum "pevent-type-ka-success" { + description + "Keep alive success event"; + } + enum "pevent-type-ka-failure" { + description + "Keep alive failure event"; + } + enum "pevent-type-link-up" { + description + "Link up event"; + } + enum "pevent-type-link-down" { + description + "Link down event"; + } + enum "pevent-type-authorization-failure" { + description + "Authorization failure event"; + } + enum "pevent-type-authorization-no-response" { + description + "Authorization no response event"; + } + enum "pevent-type-authentication-failure" { + description + "Authentication failure event"; + } + enum "pevent-type-authentication-no-response" { + description + "Authentication no response event"; + } + enum "pevent-type-exception" { + description + "Exception event"; + } + enum "pevent-type-session-ident-chg" { + description + "Session identity change event"; + } + enum "pevent-type-max" { + description + "Internal use only"; + } + } + description + "Policy event enumeration"; + } + + typedef Afmon-react-parm-type-en { + type enumeration { + enum "afmon-react-parm-invalid" { + value 0; + description + "invalid"; + } + enum "afmon-react-parm-oper-id" { + value 1; + description + "Operation ID"; + } + enum "afmon-react-parm-crit-erion" { + value 2; + description + "Criterion"; + } + enum "afmon-react-parm-desc" { + value 3; + description + "Description"; + } + enum "afmon-react-parm-trig-value" { + value 4; + description + "Trigger value"; + } + enum "afmon-react-parm-trig-type" { + value 5; + description + "Trigger Type"; + } + enum "afmon-react-parm-action" { + value 6; + description + "Action"; + } + enum "afmon-react-parm-alm-type" { + value 7; + description + "Alarm type"; + } + enum "afmon-react-parm-alm-severity" { + value 8; + description + "Alarm Severity"; + } + enum "afmon-react-parm-max" { + value 9; + description + "Maximum react parm type"; + } + } + description + "(afmon) React submode param types"; + } + + typedef Plmgr-var-type-en { + type enumeration { + enum "plmgr-var-type-class-name" { + description + "plmgr var type class name"; + } + enum "plmgr-var-type-uint8" { + description + "plmgr var type uint8"; + } + enum "plmgr-var-type-uint16" { + description + "plmgr var type uint16"; + } + enum "plmgr-var-type-uint32" { + description + "plmgr var type uint32"; + } + enum "plmgr-var-type-param-uint32" { + description + "plmgr var type param uint32"; + } + enum "plmgr-var-type-dscp" { + description + "plmgr var type dscp"; + } + enum "plmgr-var-type-prec" { + description + "plmgr var type prec"; + } + enum "plmgr-var-type-max" { + description + "plmgr var type max"; + } + } + description + "Type of default variable values"; + } + + typedef Policy-map-name { + type string { + length "0..65"; + } + description + "Policy map name"; + } + + typedef Policy-action-attr-en { + type enumeration { + enum "action-attribute" { + value 1; + description + "action attribute"; + } + enum "sub-action-attribute" { + value 2; + description + "sub action attribute"; + } + } + description + "Policy action attribute enum"; + } + + typedef Policy-obj-enc-en { + type enumeration { + enum "policy-obj-enc-name" { + description + "Name of the Policy"; + } + enum "policy-obj-enc-hdl" { + description + "Policy Handle"; + } + enum "policy-obj-enc-var-idx" { + description + "Policy Variable Index"; + } + enum "policy-obj-enc-in-line" { + description + "Inline Class"; + } + } + description + "Child policy related encoding information"; + } + + typedef Plmgr-app-fwding-type-e { + type enumeration { + enum "layer2" { + value 0; + description + " Forwarding type layer2"; + } + enum "layer3" { + value 1; + description + " Forwarding type layer3"; + } + enum "any" { + value 2; + description + "Forwarding type any"; + } + } + description + "Forwarding types"; + } + + typedef Class-map-type-en { + type enumeration { + enum "class-map-type-none" { + description + "class map type none"; + } + enum "class-map-type-qos" { + description + "class map type qos"; + } + enum "class-map-type-pbr" { + description + "class map type pbr"; + } + enum "class-map-type-traffic" { + description + "class map type traffic"; + } + enum "class-map-type-subs-control" { + description + "class map type subs control"; + } + enum "class-map-type-max" { + description + "class map type max"; + } + } + description + "Class map type en"; + } + + typedef Wred-type-en { + type enumeration { + enum "wred-cos-cmd" { + description + "wred cos cmd"; + } + enum "wred-dscp-cmd" { + description + "wred dscp cmd"; + } + enum "wred-precedence-cmd" { + description + "wred precedence cmd"; + } + enum "wred-discard-class-cmd" { + description + "wred discard class cmd"; + } + enum "wred-mpls-exp-cmd" { + description + "wred mpls exp cmd"; + } + enum "red-with-user-min-max" { + description + "red with user min max"; + } + enum "red-with-default-min-max" { + description + "red with default min max"; + } + enum "wred-dei-cmd" { + description + "wred dei cmd"; + } + enum "wred-ecn-cmd" { + description + "wred ecn cmd"; + } + enum "wred-invalid-cmd" { + description + "wred invalid cmd"; + } + } + description + "Wred type en"; + } + + typedef Policy-map-table-type-en { + type enumeration { + enum "policy-map-table-type-none" { + description + "policy map table type none"; + } + enum "policy-map-table-type-l2-any" { + description + "policy map table type l2 any"; + } + enum "policy-map-table-type-l2-l3" { + description + "policy map table type l2 l3"; + } + enum "policy-map-table-type-l3-ipv4" { + description + "policy map table type l3 ipv4"; + } + enum "policy-map-table-type-l3-ds" { + description + "policy map table type l3 ds"; + } + enum "policy-map-table-type-traffic-ingress" { + description + "policy map table type traffic ingress"; + } + enum "policy-map-table-type-qos-ingress" { + description + "policy map table type qos ingress"; + } + enum "policy-map-table-type-qos-egress" { + description + "policy map table type qos egress"; + } + enum "policy-map-table-type-max" { + description + "policy map table type max"; + } + } + description + "Policy-Map Table Type"; + } + + typedef Shared-bucket-type { + type enumeration { + enum "shared-bucket-type-not-specified" { + description + "shared bucket type not specified"; + } + enum "shared-bucket-referred" { + description + "shared bucket referred"; + } + enum "shared-bucket-defined" { + description + "shared bucket defined"; + } + } + description + "Shared bucket type"; + } + + typedef Afmon-rtp-clock-rate-type-en { + type enumeration { + enum "afmon-rtp-cr-invalid" { + value 0; + description + "afmon rtp cr invalid"; + } + enum "afmon-rtp-cr-8k" { + value 1; + description + "afmon rtp cr 8k"; + } + enum "afmon-rtp-cr-16k" { + value 2; + description + "afmon rtp cr 16k"; + } + enum "afmon-rtp-cr-11025" { + value 3; + description + "afmon rtp cr 11025"; + } + enum "afmon-rtp-cr-22050" { + value 4; + description + "afmon rtp cr 22050"; + } + enum "afmon-rtp-cr-44100" { + value 5; + description + "afmon rtp cr 44100"; + } + enum "afmon-rtp-cr-48k" { + value 6; + description + "afmon rtp cr 48k"; + } + enum "afmon-rtp-cr-90k" { + value 7; + description + "afmon rtp cr 90k"; + } + enum "afmon-rtp-cr-27m" { + value 8; + description + "afmon rtp cr 27m"; + } + enum "afmon-rtp-cr-148500k" { + value 9; + description + "afmon rtp cr 148500k"; + } + enum "afmon-rtp-cr-148351k" { + value 10; + description + "afmon rtp cr 148351k"; + } + enum "afmon-rtp-cr-max" { + value 11; + description + "afmon rtp cr max"; + } + } + description + "Afmon rtp clock rate type en"; + } + + typedef Afmon-trig-relop-en { + type enumeration { + enum "afmon-trig-relop-invalid" { + value 0; + description + "afmon trig relop invalid"; + } + enum "afmon-trig-lt" { + value 1; + description + "afmon trig lt"; + } + enum "afmon-trig-le" { + value 2; + description + "afmon trig le"; + } + enum "afmon-trig-gt" { + value 3; + description + "afmon trig gt"; + } + enum "afmon-trig-ge" { + value 4; + description + "afmon trig ge"; + } + enum "afmon-trig-range" { + value 5; + description + "afmon trig range"; + } + enum "afmon-trig-relop-max" { + value 6; + description + "afmon trig relop max"; + } + } + description + "Afmon trig relop en"; + } + + typedef Match-no-username-en { + type enumeration { + enum "match-no-user-name-unspecified" { + value 0; + description + "match no user name unspecified"; + } + enum "match-no-user-name" { + value 1; + description + "match no user name"; + } + enum "match-user-name" { + value 2; + description + "match user name"; + } + enum "match-no-user-name-max" { + value 3; + description + "match no user name max"; + } + } + description + "Match no username en"; + } + + typedef Afmon-rtp-parm-type-en { + type enumeration { + enum "afmon-rtp-parm-invalid" { + value 0; + description + "afmon rtp parm invalid"; + } + enum "afmon-rtp-parm-min-seq" { + value 1; + description + "afmon rtp parm min seq"; + } + enum "afmon-rtp-parm-max-drop" { + value 2; + description + "afmon rtp parm max drop"; + } + enum "afmon-rtp-parm-max-mis-order" { + value 3; + description + "afmon rtp parm max mis order"; + } + enum "afmon-rtp-parm-seq-ext-cop4" { + value 4; + description + "afmon rtp parm seq ext cop4"; + } + enum "afmon-rtp-parm-clock-rate" { + value 5; + description + "afmon rtp parm clock rate"; + } + enum "afmon-rtp-parm-max" { + value 6; + description + "afmon rtp parm max"; + } + } + description + "Afmon rtp parm type en"; + } + + typedef Policy-map-type-en { + type enumeration { + enum "policy-map-type-none" { + description + "policy map type none"; + } + enum "policy-map-type-qos" { + description + "policy map type qos"; + } + enum "policy-map-type-pbr" { + description + "policy map type pbr"; + } + enum "policy-map-type-traffic" { + description + "policy map type traffic"; + } + enum "policy-map-type-subs-control" { + description + "policy map type subs control"; + } + enum "policy-map-type-accounting" { + description + "policy map type accounting"; + } + enum "policy-map-type-redirect" { + description + "policy map type redirect"; + } + enum "policy-map-type-afmon" { + description + "policy map type afmon"; + } + enum "policy-map-type-merge" { + description + "policy map type merge"; + } + enum "policy-map-type-max" { + description + "policy map type max"; + } + } + description + "Policy map type en"; + } + + typedef Redirect-type-en { + type enumeration { + enum "redirect-type-none" { + value 0; + description + "Redirect None"; + } + enum "redirect-type-output-interface" { + value 1; + description + "Redirect to output intreface"; + } + enum "redirect-type-max" { + value 2; + description + "Redirect Max (Invalid)"; + } + } + description + "Redirect types Enumeration"; + } + + typedef Policy-action-exec-type-e { + type enumeration { + enum "execution-immediate" { + value 1; + description + "execution immediate"; + } + enum "execution-deferred" { + value 2; + description + "execution deferred"; + } + } + description + "Policy action execution type enum"; + } + + typedef Class-map-mode-en { + type enumeration { + enum "class-map-mode-match-any" { + value 0; + description + "Type Match-Any"; + } + enum "class-map-mode-match-all" { + value 1; + description + "Type Match-All"; + } + enum "class-map-mode-max" { + value 2; + description + "Not a valid mode"; + } + enum "class-map-mode-usr-def" { + value 1073741824; + description + "User defined match type"; + } + } + description + "Class-Map Mode"; + } + + typedef Match-subs-protocol-en { + type enumeration { + enum "match-subs-protocol-unspecified" { + value 0; + description + "match subs protocol unspecified"; + } + enum "match-subs-protocol-ipv4" { + value 1; + description + "match subs protocol ipv4"; + } + enum "match-subs-protocol-ppp" { + value 2; + description + "match subs protocol ppp"; + } + enum "match-subs-protocol-dhcpv4" { + value 3; + description + "match subs protocol dhcpv4"; + } + enum "match-subs-protocol-dhcpv6" { + value 4; + description + "match subs protocol dhcpv6"; + } + enum "match-subs-protocol-max" { + value 5; + description + "match subs protocol max"; + } + } + description + "Match subs protocol en"; + } + + typedef Vsvc-service-type-t { + type enumeration { + enum "vsvc-service-invalid" { + value 0; + description + "vsvc service invalid"; + } + enum "vsvc-service-v-path" { + value 1; + description + "vsvc service v path"; + } + enum "vsvc-service-ipsec" { + value 2; + description + "vsvc service ipsec"; + } + enum "vsvc-service-cgn" { + value 3; + description + "vsvc service cgn"; + } + enum "vsvc-service-o-flow" { + value 4; + description + "vsvc service o flow"; + } + enum "vsvc-service-output" { + value 5; + description + "vsvc service output"; + } + enum "vsvc-service-cfg-v-path" { + value 6; + description + "vsvc service cfg v path"; + } + enum "vsvc-service-sfp" { + value 7; + description + "vsvc service sfp"; + } + enum "vsvc-service-sfl" { + value 8; + description + "vsvc service sfl"; + } + enum "vsvc-service-sffl" { + value 9; + description + "vsvc service sffl"; + } + enum "vsvc-service-max" { + value 10; + description + "vsvc service max"; + } + } + description + "Vsvc service type t"; + } + + typedef Afmon-flow-parm-type-en { + type enumeration { + enum "afmon-flow-parm-invalid" { + value 0; + description + "invalid"; + } + enum "afmon-flow-parm-max-mon-flow-s" { + value 1; + description + "Max monitored flows"; + } + enum "afmon-flow-parm-mon-interval" { + value 2; + description + "Monitoring interval"; + } + enum "afmon-flow-parm-intvl-hist" { + value 3; + description + "Interval History"; + } + enum "afmon-flow-parm-flow-timeout" { + value 4; + description + "Flow Timeout"; + } + enum "afmon-flow-parm-max" { + value 5; + description + "Maximum flow parm type"; + } + } + description + "(afmon) Flow submode param types"; + } + + typedef Afmon-trig-type-en { + type enumeration { + enum "afmon-trig-type-invalid" { + value 0; + description + "afmon trig type invalid"; + } + enum "afmon-trig-immed" { + value 1; + description + "afmon trig immed"; + } + enum "afmon-trig-avg" { + value 2; + description + "afmon trig avg"; + } + enum "afmon-trig-type-max" { + value 3; + description + "afmon trig type max"; + } + } + description + "Afmon trig type en"; + } + + typedef Match-authen-status-en { + type enumeration { + enum "match-authen-status-unspecified" { + value 0; + description + "match authen status unspecified"; + } + enum "match-authen-status-authenticated" { + value 1; + description + "match authen status authenticated"; + } + enum "match-authen-status-unauthenticated" { + value 2; + description + "match authen status unauthenticated"; + } + enum "match-authen-status-max" { + value 3; + description + "match authen status max"; + } + } + description + "Match authen status en"; + } + + typedef Policy-class-info-en { + type enumeration { + enum "policy-class-info-key-type" { + description + "Policy Class Info Key"; + } + enum "policy-class-info-mod-type" { + description + "Policy Class Info Modify Bag"; + } + } + description + "Policy class info en"; + } + + typedef Afmon-mdi-parm-type-en { + type enumeration { + enum "afmon-mdi-parm-invalid" { + value 0; + description + "afmon mdi parm invalid"; + } + enum "afmon-mdi-parm-pids" { + value 1; + description + "afmon mdi parm pids"; + } + enum "afmon-mdi-parm-pkt-rate" { + value 2; + description + "afmon mdi parm pkt rate"; + } + enum "afmon-mdi-parm-ip-pkt-rate" { + value 3; + description + "afmon mdi parm ip pkt rate"; + } + enum "afmon-mdi-parm-ip-bit-rate" { + value 4; + description + "afmon mdi parm ip bit rate"; + } + enum "afmon-mdi-parm-max" { + value 5; + description + "afmon mdi parm max"; + } + } + description + "Afmon mdi parm type en"; + } + + typedef Police-action-type-en { + type enumeration { + enum "police-action-none" { + value 0; + description + "Policer Action None"; + } + enum "police-action-transmit" { + value 1; + description + "Policer Action Transmit"; + } + enum "police-action-drop" { + value 2; + description + "Policer Action Drop"; + } + enum "police-action-mark" { + value 3; + description + "Policer Action Mark"; + } + enum "police-action-max" { + value 4; + description + "Policer Action Max"; + } + } + description + "Policer Action Type"; + } + + typedef Match-mlp-negotiated-en { + type enumeration { + enum "match-mlp-negotiated-unspecified" { + value 0; + description + "match mlp negotiated unspecified"; + } + enum "match-mlp-negotiated" { + value 1; + description + "match mlp negotiated"; + } + enum "match-mlp-not-negotiated" { + value 2; + description + "match mlp not negotiated"; + } + enum "match-mlp-max" { + value 3; + description + "match mlp max"; + } + } + description + "Match mlp negotiated en"; + } + + typedef Match-cap-e { + type uint8; + description + "Match cap e"; + } + + typedef Policy-action-e { + type uint8; + description + "Policy action e"; + } + + typedef Match-nas-port-intf-type-en { + type enumeration { + enum "match-nas-port-intf-type-unspecified" { + value 0; + description + "match nas port intf type unspecified"; + } + enum "match-nas-port-intf-type-async" { + value 1; + description + "match nas port intf type async"; + } + enum "match-nas-port-intf-type-atm" { + value 2; + description + "match nas port intf type atm"; + } + enum "match-nas-port-intf-type-bri" { + value 3; + description + "match nas port intf type bri"; + } + enum "match-nas-port-intf-type-ether" { + value 4; + description + "match nas port intf type ether"; + } + enum "match-nas-port-intf-type-ipsec" { + value 5; + description + "match nas port intf type ipsec"; + } + enum "match-nas-port-intf-type-none" { + value 6; + description + "match nas port intf type none"; + } + enum "match-nas-port-intf-type-piafs" { + value 7; + description + "match nas port intf type piafs"; + } + enum "match-nas-port-intf-type-pppatm" { + value 8; + description + "match nas port intf type pppatm"; + } + enum "match-nas-port-intf-type-ppp-ether" { + value 9; + description + "match nas port intf type ppp ether"; + } + enum "match-nas-port-intf-type-pppoeatm" { + value 10; + description + "match nas port intf type pppoeatm"; + } + enum "match-nas-port-intf-type-pppqinq" { + value 11; + description + "match nas port intf type pppqinq"; + } + enum "match-nas-port-intf-type-pppvlan" { + value 12; + description + "match nas port intf type pppvlan"; + } + enum "match-nas-port-intf-type-pri" { + value 13; + description + "match nas port intf type pri"; + } + enum "match-nas-port-intf-type-sync" { + value 14; + description + "match nas port intf type sync"; + } + enum "match-nas-port-intf-type-v110" { + value 15; + description + "match nas port intf type v110"; + } + enum "match-nas-port-intf-type-v120" { + value 16; + description + "match nas port intf type v120"; + } + enum "match-nas-port-intf-type-vty" { + value 17; + description + "match nas port intf type vty"; + } + enum "match-nas-port-intf-type-x75" { + value 18; + description + "match nas port intf type x75"; + } + enum "match-nas-port-intf-type-max" { + value 19; + description + "match nas port intf type max"; + } + } + description + "Match nas port intf type en"; + } + + grouping DEI-BIT { + description + "DEI BIT"; + uses DEI-BIT-ST; + } + + grouping UINT64-ARRAY { + description + "UINT64 ARRAY"; + leaf-list uint64_array { + type uint64; + description + "uint64 array"; + } + } + + grouping DEI-BIT-ST { + description + "DEI BIT ST"; + leaf bit-value { + type uint32; + description + "Value of the DEI bit"; + } + } + + grouping ACTION-PBF-INFO-ST { + description + "action pbr pbf"; + leaf addr { + type inet:ipv6-address; + description + "v4 or v6 address"; + } + leaf vrf { + type string; + description + "vrf name"; + } + leaf rt-type { + type uint8; + description + "route target type"; + } + leaf rt { + type yang:hex-string; + description + "route target"; + } + } + + grouping MAC-ADDR-ARRAY { + description + "MAC ADDR ARRAY"; + list mac-addr-array { + description + "mac addr array"; + uses MAC-ADDR-ST; + } + } + + grouping ACTION-SERVICE-FUNCTION-PATH-ST { + description + "service function path"; + leaf path-id { + type uint32; + description + "service path id"; + } + leaf service-index { + type uint8; + description + "service path index"; + } + leaf meta-name { + type string; + description + "metadata name"; + } + leaf vs-index { + type uint32; + description + "vservice index"; + } + } + + grouping ACTION-AFMON-FMM-INFO-P { + description + "ACTION AFMON FMM INFO P"; + uses ACTION-AFMON-FMM-INFO-ST; + } + + grouping ACTION-MARK2-INFO { + description + "ACTION MARK2 INFO"; + list action-mark2-info { + description + "action mark2 info"; + uses ACTION-MARK2-INFO-ST; + } + } + + grouping ACTION-AUTHEN-AAA-INFO-P { + description + "ACTION AUTHEN AAA INFO P"; + uses ACTION-AUTHEN-AAA-ST; + } + + grouping ACTION-IPV4-NH-INFO-ST { + description + "ipv4 next hop action"; + leaf ipv4-nh-addr { + type inet:ipv4-address; + description + "nh addr"; + } + leaf vrf-name { + type string; + description + "Vrf name"; + } + } + + grouping ACTION-AFMON-REACT-ST { + description + "AFMon React Configuration"; + leaf oper-id { + type uint32; + description + "React Operation ID"; + } + leaf description { + type string; + description + "Describing the oper"; + } + leaf trig-num-intvls { + type uint32; + description + "Averaged over N intvls"; + } + leaf clone-ifh { + type uint32; + description + "Clone interface handle"; + } + leaf notif-actns { + type uint8; + description + "Bitmap of actions on alert"; + } + leaf criterion { + type uint8; + description + "React Criterion"; + } + leaf trig-type { + type uint8; + description + "Immediate or averaged thresh trigger"; + } + leaf trig-relop { + type uint8; + description + "Trigger LT|LE|GT|GE|Range"; + } + leaf trig-level-1 { + type string; + description + "Trigger threshold 1/lower"; + } + leaf trig-level-2 { + type string; + description + "Trigger upper threshold for range"; + } + leaf alm-grp-thresh { + type uint16; + units "percentage"; + description + "Num/percent in grp"; + } + leaf alm-type { + type uint8; + description + "Discrete | grouped alarm"; + } + leaf alm-severity { + type uint8; + description + "Major|Minor|... alarm"; + } + } + + grouping ACTION-STOP-TIMER-INFO-P { + description + "ACTION STOP TIMER INFO P"; + uses ACTION-STOP-TIMER-ST; + } + + grouping PMAP-VAR-LIST-ST { + description + "PMAP VAR LIST ST"; + list pmap-var-list-arr { + description + "pmap var list arr"; + uses PMAP-VAR-INFO-ST; + } + } + + grouping ACTION-AFMON-MDI-INFO-ST { + description + "AFMon MDI Configuration"; + container ip-bit-rate { + description + "data rate in bps"; + uses POLICY-PARAM-UINT32-ST; + } + leaf action-metric-type { + type Policy-action-en; + description + "metric type"; + } + leaf filtered-pkt-rate { + type uint32; + description + "filtered packet rate"; + } + leaf ip-pkt-rate { + type uint32; + description + "packet rate in pps"; + } + leaf-list pids { + type uint32; + description + "array of monitoredcd pids"; + } + } + + grouping INLINE-CLASS-MAP-BG { + description + "Inline Class-map bag"; + container match-infop { + description + "Pointer to the first Match info"; + uses CLASS-MATCH-INFO-ST; + } + leaf mode { + type Class-map-mode-en; + description + "Inline Class-Map Mode Match any/all"; + } + leaf flags { + type uint32; + description + "Inline Class-Map flags"; + } + leaf match-count { + type uint32; + description + "Number of Match infos"; + } + } + + grouping ACTION-AFMON-FLOW-PARM-INFO-ST { + description + "(afmon) flow-parm submode action"; + leaf max-mon-flows { + type uint32; + description + "max simult flows monitored per policy class"; + } + leaf mon-interval { + type uint32; + units "second"; + description + "monitored interval duration in secs"; + } + leaf intvl-hist { + type uint32; + description + "num intervals of data stored on rtr"; + } + leaf flow-timeout { + type uint32; + units "second"; + description + "timeout in secs"; + } + } + + grouping ACTION-TIMEOUT-IDLE-INFO-P { + description + "ACTION TIMEOUT IDLE INFO P"; + uses ACTION-TIMEOUT-IDLE-ST; + } + + grouping ACTION-ACCOUNTING-EVENT-ST { + description + "ACTION ACCOUNTING EVENT ST"; + leaf action { + type Acct-en; + description + "action"; + } + leaf aaa-list-name { + type string; + description + "aaa list name"; + } + } + + grouping PLMGR-VRF-STATS-BG { + description + "List of Stats of all class type"; + leaf pmap-name { + type string; + description + "pmap name"; + } + list cmap-stats-arr { + description + "cmap stats arr"; + uses PLMGR-CMAP-STATS-ARR-ST; + } + } + + grouping POLICY-MAP-BG { + description + "Policy-map Bag"; + list policy-map-bg { + description + "policy map bg"; + container pmap-var-list { + description + "contains variable argument data"; + uses PMAP-VAR-LIST-ST; + } + container event-infop { + description + "event infop"; + uses POLICY-EVENT-INFO-BG; + } + leaf name { + type Policy-map-name; + description + "name"; + } + leaf type { + type Policy-map-type-en; + description + "type"; + } + leaf description { + type string; + description + "description"; + } + } + } + + grouping MATCH-IPV4-ST { + description + "Source Address IPv4"; + leaf prefix { + type inet:ipv4-address; + description + "prefix"; + } + leaf mask { + type inet:ipv4-address; + description + "mask"; + } + } + + grouping ACTION-IPV4-NH-INFO-P { + description + "ACTION IPV4 NH INFO P"; + uses ACTION-IPV4-NH-INFO-ARRAY; + } + + grouping ACTION-QLIMIT-INFO-ST { + description + "Queue Limit structure"; + container qlim { + description + "qlim"; + uses POLICY-PARAM-UINT32-ST; + } + container atmclp-qlim { + description + "atmclp qlim"; + uses POLICY-PARAM-UINT32-ST; + } + container match-values { + description + "match values"; + uses UINT8-RNG-ARRAY; + } + leaf type { + type Qlimit-type-en; + description + "type"; + } + leaf qlimit-flags { + type uint32; + description + "qlimit flags"; + } + } + + grouping POLICY-MAP-APPLIED-SHOW-BG { + description + "Policy-map applied show bag"; + leaf parent-pmap-name { + type Policy-map-name; + description + "parent pmap name"; + } + leaf pmap-type { + type Policy-map-type-en; + description + "pmap type"; + } + leaf-list subscriber-grp { + type Object-name; + description + "subscriber grp"; + } + list pmaps { + description + "pmaps"; + uses POLICY-MAP-BG; + } + list pmap-var-list { + description + "pmap var list"; + uses PLMGR-APPLIED-VARLIST-BG; + } + } + + grouping POLICY-PARAM-UINT32-ST { + description + "POLICY PARAM UINT32 ST"; + leaf value { + type uint32; + description + "value"; + } + leaf unit { + type Policy-param-unit-type; + description + "unit"; + } + } + + grouping ACTION-PFC-INFO-P { + description + "ACTION PFC INFO P"; + uses ACTION-PFC-INFO-ST; + } + + grouping VALUE-ATTR-T { + description + " Value attribute for a match type"; + leaf minimum { + type uint32; + description + "Minimum value for a match type"; + } + leaf maximum { + type uint32; + description + "Maximum value for a match type"; + } + } + + grouping POLICY-MAP-APPLIED-DATA-BG { + description + "Policy-map applied data bag"; + leaf applied-pmap-name { + type Policy-map-name; + description + "applied pmap name"; + } + leaf pmap-type { + type Policy-map-type-en; + description + "pmap type"; + } + leaf-list merged-pmap-name-arr { + type Policy-map-name; + description + "merged pmap name arr"; + } + leaf-list subscriber-grp { + type Object-name; + description + "subscriber grp"; + } + list pmap-var-list { + description + "pmap var list"; + uses PLMGR-APPLIED-VARLIST-BG; + } + } + + grouping PACTION-DATA-HD { + description + "PACTION DATA HD"; + uses POLICY-ACTION-INFO-ST; + } + + grouping PLMGR-CMAP-DIFF-BG { + description + "Class-map diff Bag"; + container del { + description + "del"; + uses CLASS-MAP-BG; + } + container add { + description + "add"; + uses CLASS-MAP-BG; + } + } + + grouping ACTION-MARK-INFO { + description + "ACTION MARK INFO"; + list action-mark-info { + description + "action mark info"; + uses ACTION-MARK-INFO-ST; + } + } + + grouping POLICY-CLASS-INFO-MOD-BG { + description + "Policy-class modify Bag"; + list policy-class-info-mod-bg { + description + "policy class info mod bg"; + container new-value { + description + "new value"; + uses POLICY-CLASS-INFO-BG; + } + container old-value { + description + "old value"; + uses POLICY-CLASS-INFO-BG; + } + } + } + + grouping POLICY-ACTION-INFO-ST { + description + "Per class action structure"; + list policy-action-info-st { + description + "policy action info st"; + container actp { + description + "actp"; + uses POLICY-ACTION-DATAP-UN; + } + leaf seq { + type uint16; + description + "seq"; + } + leaf flags { + type uint16; + description + "flags"; + } + } + } + + grouping CMATCH-DATA-HD { + description + "CMATCH DATA HD"; + uses CLASS-MATCH-INFO-ST; + } + + grouping ACTION-QLIMIT-INFO-P { + description + "ACTION QLIMIT INFO P"; + uses ACTION-QLIMIT-INFO-ARRAY; + } + + grouping PLMGR-APP-TB-ACTION-CAP-T { + description + "Policy action capability"; + container policy-action-attribute { + description + "Policy Action attribute info"; + uses PLMGR-ACTION-ATTR-UN; + } + leaf policy-action { + type Policy-action-e; + description + "Policy action "; + } + } + + grouping PLMGR-CMAP-STATS-ARR-ST { + description + "Statistics per ClassMap"; + leaf cmap-name { + type string { + length "0..65"; + } + description + "cmap name"; + } + leaf matched-bytes { + type uint64; + description + "matched bytes"; + } + leaf matched-packets { + type uint64; + description + "matched packets"; + } + leaf transmit-bytes { + type uint64; + description + "transmit bytes"; + } + leaf transmit-packets { + type uint64; + description + "transmit packets"; + } + } + + grouping POL-CLASS-ENC-UN { + description + "Union of object name and app object ptr"; + container inline-cmap { + when "../enc = 'policy-obj-enc-in-line'" { + description + "../enc = 'POLICY_OBJ_ENC_INLINE'"; + } + description + "inline cmap"; + uses INLINE-CLASS-MAP-BG; + } + leaf enc { + type Policy-obj-enc-en; + description + "enc"; + } + leaf class-name { + when "../enc = 'policy-obj-enc-name'" { + description + "../enc = 'POLICY_OBJ_ENC_NAME'"; + } + type Class-map-name; + description + "class name"; + } + leaf hd { + when "../enc = 'policy-obj-enc-hdl'" { + description + "../enc = 'POLICY_OBJ_ENC_HDL'"; + } + type uint64; + description + "hd"; + } + leaf idx { + when "../enc = 'policy-obj-enc-var-idx'" { + description + "../enc = 'POLICY_OBJ_ENC_VAR_IDX'"; + } + type uint8; + description + "idx"; + } + } + + grouping ACTION-SERVICE-FUNCTION-PATH-P { + description + "ACTION SERVICE FUNCTION PATH P"; + uses ACTION-SERVICE-FUNCTION-PATH-ST; + } + + grouping ACTION-SHAPE-INFO-STR { + description + "ACTION POLICE INFO ARRAY"; + list action-shape-info-st { + description + "action police info array"; + uses ACTION-SHAPE-INFO-ST; + } + } + + grouping ACTION-SHAPE-INFO-ST { + description + "Shape info bag"; + container bw { + description + "bw"; + uses POLICY-PARAM-UINT32-ST; + } + container be { + description + "be"; + uses POLICY-PARAM-UINT32-ST; + } + } + + grouping ACTION-SERVICE-POLICY-INFO-P { + description + "ACTION SERVICE POLICY INFO P"; + uses CHLD-POL-ENC-UN; + } + + grouping ACTION-PFC-INFO { + description + "ACTION PFC INFO"; + list action-pfc-info-st { + description + "action pfc info st"; + uses ACTION-PFC-INFO-ST; + } + } + + grouping ACTION-PFC-INFO-ST { + description + "Pfc info bag"; + container buffer-size { + description + "buffer size"; + uses POLICY-PARAM-UINT32-ST; + } + container pause-threshold { + description + "pause threshold"; + uses POLICY-PARAM-UINT32-ST; + } + container resume-threshold { + description + "resume threshold"; + uses POLICY-PARAM-UINT32-ST; + } + leaf pfc-pause-set { + type uint32; + description + "pfc pause set"; + } + leaf buffer-size-flag { + type uint32; + description + "buffer size flag"; + } + } + + grouping MATCH-NAS-PORT-ST { + description + "NAS Port"; + leaf sub-id { + type Match-nas-port-sub-id-en; + description + "sub id"; + } + leaf operator { + type Match-logical-operator-en; + description + "operator"; + } + leaf value { + type uint32; + description + "value"; + } + } + + grouping PLMGR-APP-GL-COOKIE-CAP-T { + description + "Cookie capability of a network element"; + leaf policy-map-cookie { + type boolean; + description + "Specifies policy-map cookie supported or not"; + } + leaf inline-class-cookie { + type boolean; + description + "Specifies class cookie supported or not"; + } + } + + grouping CMAP-DATA-HD { + description + "CMAP DATA HD"; + uses CLASS-MAP-BG; + } + + grouping ACTION-AUTHEN-AAA-ST { + description + "Authenticate AAA list info"; + leaf aaa-list-name { + type string; + description + "aaa list name"; + } + leaf authen-password { + type string; + description + "authen password"; + } + } + + grouping ACTION-SET-TIMER-INFO-P { + description + "ACTION SET TIMER INFO P"; + uses ACTION-SET-TIMER-ST; + } + + grouping MAC-ADDR-ST { + description + "MAC ADDR ST"; + list mac-addr { + max-elements "3"; + description + "MAC address list"; + leaf mac { + type uint16; + description + "MAC address"; + } + } + list mac-mask { + max-elements "3"; + description + "MAC mask list"; + leaf mask { + type uint16; + description + "MAC mask"; + } + } + } + + grouping PLMGR-ACTION-ATTR-UN { + description + "Union of default values corrosponding to variable + type"; + container sub-action { + when "../action-type = 'sub-action-attribute'" { + description + "../action_type = 'SubActionAttribute'"; + } + description + "sub action"; + uses POLICY-SUB-ACTIONS-T; + } + container action-attr { + when "../action-type = 'action-attribute'" { + description + "../action_type = 'ActionAttribute'"; + } + description + "action attr"; + uses POLICY-ACTION-ATTR-T; + } + leaf action-type { + type Policy-action-attr-en; + description + "action type"; + } + } + + grouping PLMGR-APP-GL-SYSTEM-CAP-T { + description + "System level capability of a network element"; + leaf maximum-inline-classes-per-system { + type uint32; + description + "Maximum number of inline classes supported on a + network element"; + } + leaf maximum-policy-maps-per-system { + type uint32; + description + "Maximum number of unique policy-map supported on + a network element"; + } + } + + grouping ACTION-PRIO-INFO-ST { + description + "Priority action"; + leaf prio-lvl { + type uint32; + description + "prio lvl"; + } + } + + grouping ACTION-AFMON-RTP-INFO-P { + description + "ACTION AFMON RTP INFO P"; + uses ACTION-AFMON-RTP-INFO-ST; + } + + grouping PLMGR-MATCH-ATTR-UN { + description + "Union of default values corrosponding to variable + type"; + container val-attr { + when "../match-attr-type = 'value'" { + description + "../match_attr_type = 'Value'"; + } + description + "val attr"; + uses VALUE-ATTR-T; + } + container rng-attr { + when "../match-attr-type = 'range'" { + description + "../match_attr_type = 'Range'"; + } + description + "rng attr"; + uses VALUE-ATTR-T; + } + container mask-attr { + when "../match-attr-type = 'mask'" { + description + "../match_attr_type = 'Mask'"; + } + description + "mask attr"; + uses MASK-ATTR-T; + } + leaf match-attr-type { + type Match-attr-e; + description + "match attr type"; + } + } + + grouping UINT16-RNG-ARRAY { + description + "UINT16 RNG ARRAY"; + list uint16_rng_array { + description + "uint16 rng array"; + uses UINT16-RNG-ST; + } + } + + grouping PLMGR-PMAP-TARGETS-SUMMARY-BG { + description + "Policymap targets summary info. returned to show + client(from policymgr)"; + leaf total-policy-maps-input-direction { + type uint32; + description + "Total policymapsin the input direction"; + } + leaf total-policy-maps-output-direction { + type uint32; + description + "Total policymapsin the output direction"; + } + leaf total-child-policy-maps-input-direction { + type uint32; + description + "Totalpolicymaps applied as child policy in the + input direction"; + } + leaf total-child-policy-maps-output-direction { + type uint32; + description + "Totalpolicymaps applied as child policy in the + output direction"; + } + leaf total-interfaces-input-direction { + type uint32; + description + "Totalinterfaces with service-policy in the input + direction"; + } + leaf total-interfaces-output-direction { + type uint32; + description + "Totalinterfaces with service-policy in the + output direction"; + } + } + + grouping POLICY-MAP-DETAILED-SHOW-BG { + description + "Policy-map detail show bag"; + container pmap { + description + "Policy map info"; + uses POLICY-MAP-BG; + } + container ipv4-acl { + description + "IPv4 Access-list"; + uses STRING-ARRAY; + } + container ipv6-acl { + description + "IPv6 Access-list"; + uses STRING-ARRAY; + } + container ether-service-acl { + description + "Ethernet-Services Access-list"; + uses STRING-ARRAY; + } + } + + grouping PLMGR-SUMMARY-BG { + description + "The policymgr database"; + leaf total-class-maps { + type uint32; + description + "Total number of Classmaps configured"; + } + leaf total-class-map-types { + type uint32; + description + "Total number of Classmap types configured"; + } + leaf total-policy-maps { + type uint32; + description + "Total number of Policymaps configured"; + } + leaf total-policy-map-types { + type uint32; + description + "Total number of Policymap types configured"; + } + list class-maps { + description + "Summary of Classmap database"; + uses PLMGR-APP-DB-BG; + } + list policy-maps { + description + "Summary of Policymap database"; + uses PLMGR-APP-DB-BG; + } + } + + grouping ACTION-IPV6-NH-INFO-ARRAY { + description + "ACTION IPV6 NH INFO ARRAY"; + list action-ipv6-nh-info-array { + description + "action ipv6 nh info array"; + uses ACTION-IPV6-NH-INFO-ST; + } + } + + grouping ACTION-PREPAID-CONFIG-INFO-P { + description + "ACTION PREPAID CONFIG INFO P"; + uses ACTION-PREPAID-CFG-ST; + } + + grouping PCLASS-KEY-HD { + description + "PCLASS KEY HD"; + uses POLICY-CLASS-INFO-KEY-BG; + } + + grouping CLASS-MATCH-INFO-ST { + description + "Class-map match info"; + list class-match-info-st { + description + "class match info st"; + container match-data { + description + "Match criteria"; + uses CLASS-MATCH-DATA-UN; + } + leaf flags { + type uint32; + description + "Flags"; + } + } + } + + grouping ACTION-CAC-INFO { + description + "ACTION CAC INFO"; + list action-cac-info-st { + description + "action cac info st"; + uses ACTION-CAC-INFO-ST; + } + } + + grouping ACTION-CAC-INFO-ST { + description + "CAC action info bag"; + container flow-rate { + description + "flow rate"; + uses POLICY-PARAM-UINT32-ST; + } + container rate { + description + "rate"; + uses POLICY-PARAM-UINT32-ST; + } + leaf cac-type { + type Cac-flow-actn-type-e; + description + "cac type"; + } + leaf idle-timeout { + type uint16; + description + "idle timeout"; + } + } + + grouping AFMON-RTP-CLOCK-RATE-ST { + description + "AFMon RTP clock rate params"; + leaf pt { + type uint32; + description + "pt"; + } + leaf frequency { + type uint32; + description + "frequency"; + } + } + + grouping ACTION-ACCT-AAA-LIST-INFO-P { + description + "ACTION ACCT AAA LIST INFO P"; + uses ACTION-ACCT-AAA-LIST-ST; + } + + grouping PLMGR-APP-TB-PERSISTENT-CAP-T { + description + "Table persistent capability"; + leaf persistent { + type boolean; + description + "Table persistent support"; + } + } + + grouping ACTION-BWREM-INFO-P { + description + "ACTION BWREM INFO P"; + uses ACTION-BWREM-INFO-ST; + } + + grouping PLMGR-APP-TB-TRANSIENT-CAP-T { + description + "Table transient support capability"; + leaf transient { + type boolean; + description + "Table transient support"; + } + } + + grouping PCLASS-DATA-HD { + description + "PCLASS DATA HD"; + uses POLICY-CLASS-INFO-BG; + } + + grouping PLMGR-OBJ-REF-PMAP-BG { + description + "Object detail."; + leaf total-internal-reference-objects { + type uint32; + description + "Total number of internal reference objects"; + } + leaf total-class-maps { + type uint32; + description + "Total number of Classmaps in a Policymap"; + } + leaf total-flows { + type uint32; + description + "Total flows in a Policymap"; + } + } + + grouping PLMGR-VAR-VAL-UN { + description + "Union of default values corrosponding to variable + type"; + leaf type { + type Plmgr-var-type-en; + description + "type"; + } + leaf class-name { + when "../type = 'plmgr-var-type-class-name'" { + description + "../type = 'PLMGR_VAR_TYPE_CLASS_NAME'"; + } + type Class-map-name; + description + "class name"; + } + leaf uint8_val { + when "../type = 'plmgr-var-type-uint8'" { + description + "../type = 'PLMGR_VAR_TYPE_UINT8'"; + } + type uint8; + description + "uint8 val"; + } + leaf uint16_val { + when "../type = 'plmgr-var-type-uint16'" { + description + "../type = 'PLMGR_VAR_TYPE_UINT16'"; + } + type uint16; + description + "uint16 val"; + } + leaf uint32_val { + when "../type = 'plmgr-var-type-uint32'" { + description + "../type = 'PLMGR_VAR_TYPE_UINT32'"; + } + type uint32; + description + "uint32 val"; + } + leaf param-uint32-val { + when "../type = 'plmgr-var-type-param-uint32'" { + description + "../type = 'PLMGR_VAR_TYPE_PARAM_UINT32'"; + } + type uint32; + description + "param uint32 val"; + } + leaf dscp-val { + when "../type = 'plmgr-var-type-dscp'" { + description + "../type = 'PLMGR_VAR_TYPE_DSCP'"; + } + type uint8; + description + "dscp val"; + } + leaf prec-val { + when "../type = 'plmgr-var-type-prec'" { + description + "../type = 'PLMGR_VAR_TYPE_PREC'"; + } + type uint8; + description + "prec val"; + } + } + + grouping ACTION-AUTHORIZE-ID-ST { + description + "authorize identifiers"; + leaf id { + type uint8; + description + "id"; + } + leaf aaa-list-name { + type string; + description + "aaa list name"; + } + leaf format-name { + type string; + description + "format name"; + } + leaf password { + type string; + description + "password"; + } + } + + grouping ACTION-ENCAP-INFO-ST { + description + "Encapsulation sequence action"; + leaf seq { + type uint8; + description + "seq"; + } + } + + grouping IPV4-ADDR-ARRAY { + description + "IPV4 ADDR ARRAY"; + list ipv4-addr-array { + description + "ipv4 addr array"; + uses MATCH-IPV4-ST; + } + } + + grouping NAS-PORT-ARRAY { + description + "NAS PORT ARRAY"; + list nas-port-array { + description + "nas port array"; + uses MATCH-NAS-PORT-ST; + } + } + + grouping ACTION-AFMON-IPCBR-INFO-ST { + description + "AFMon IP-CBR Configuration"; + container ip-bit-rate { + description + "data rate in bps"; + uses POLICY-PARAM-UINT32-ST; + } + container media-bit-rate { + description + "media data rate in bps"; + uses POLICY-PARAM-UINT32-ST; + } + leaf action-metric-type { + type Policy-action-en; + description + "metric type"; + } + leaf ip-pkt-rate { + type uint32; + description + "packet rate in pps"; + } + leaf media-pkt-size { + type uint32; + units "byte"; + description + "media packet size in bytes"; + } + leaf media-pkts-per-ip { + type uint32; + description + "media packets per ip pkt"; + } + } + + grouping ACTION-AFMON-IPCBR-INFO-P { + description + "ACTION AFMON IPCBR INFO P"; + uses ACTION-AFMON-IPCBR-INFO-ST; + } + + grouping ACTION-IPV4-NH-INFO-ARRAY { + description + "ACTION IPV4 NH INFO ARRAY"; + list action-ipv4-nh-info-array { + description + "action ipv4 nh info array"; + uses ACTION-IPV4-NH-INFO-ST; + } + } + + grouping PEVENT-DATA-HD { + description + "PEVENT DATA HD"; + uses POLICY-EVENT-INFO-BG; + } + + grouping ACTION-REDIRECT-INFO-ST { + description + "redirect action"; + leaf value { + type uint32; + description + "value"; + } + leaf type { + type Redirect-type-e; + description + "type"; + } + } + + grouping CLASS-MAP-BG { + description + "Class-map bag"; + list class-map-bg { + description + "class map bg"; + container match-infop { + description + "Pointer to the first Match info"; + uses CLASS-MATCH-INFO-ST; + } + leaf name { + type Class-map-name; + description + "Name of the class-map"; + } + leaf type { + type Class-map-type-en; + description + "Class-Map Type QoS/PBR/Netflow/..."; + } + leaf mode { + type Class-map-mode-en; + description + "Class-Map Mode Match any/Match all"; + } + leaf description { + type string; + description + "description"; + } + } + } + + grouping MATCH-IPV6-ST { + description + "MATCH IPV6 ST"; + leaf prefix { + type inet:ipv6-address; + description + "IPV6 prefix"; + } + leaf mask { + type uint32; + description + "IPV6 mask"; + } + } + + grouping ACTION-SERVICE-POLICY-INFO-ST { + description + "ACTION SERVICE POLICY INFO ST"; + uses CHLD-POL-ENC-UN; + } + + grouping ACTION-ENCAP-INFO-P { + description + "ACTION ENCAP INFO P"; + uses ACTION-ENCAP-INFO-ST; + } + + grouping ACTION-PBF-INFO-ARRAY { + description + "ACTION PBF INFO ARRAY"; + list action-pbf-info-array { + description + "action pbf info array"; + uses ACTION-PBF-INFO-ST; + } + } + + grouping ACTION-HTTPR-INFO-ST { + description + "httpr action"; + leaf redirect-url { + type string; + description + "redirect url"; + } + } + + grouping POLICY-ACTION-DATAP-UN { + description + "Pointers to the action data of different type"; + container mark { + when "../type = 'policy-action-mark'" { + description + "../type = 'POLICY_ACTION_MARK'"; + } + description + "mark"; + uses ACTION-MARK-INFO; + } + container mark2 { + when "../type = 'policy-action-mark2'" { + description + "../type = 'POLICY_ACTION_MARK2'"; + } + description + "mark2"; + uses ACTION-MARK2-INFO; + } + container wred { + when "../type = 'policy-action-wred'" { + description + "../type = 'POLICY_ACTION_WRED'"; + } + description + "wred"; + uses ACTION-WRED-INFO; + } + container encap { + when "../type = 'policy-action-encap-seq'" { + description + "../type = 'POLICY_ACTION_ENCAP_SEQ'"; + } + description + "encap"; + uses ACTION-ENCAP-INFO-ST; + } + container prio { + when "../type = 'policy-action-priority'" { + description + "../type = 'POLICY_ACTION_PRIORITY'"; + } + description + "prio"; + uses ACTION-PRIO-INFO-ST; + } + container bwrem { + when "../type = 'policy-action-bw-remaining'" { + description + "../type = 'POLICY_ACTION_BW_REMAINING'"; + } + description + "bwrem"; + uses ACTION-BWREM-INFO-ST; + } + container min-bw { + when "../type = 'policy-action-min-bw'" { + description + "../type = 'POLICY_ACTION_MIN_BW'"; + } + description + "min bw"; + uses ACTION-MINBW-INFO-ST; + } + container authen-aaa { + when "../type = 'policy-action-authenticate-aaa'" { + description + "../type = 'POLICY_ACTION_AUTHENTICATE_AAA'"; + } + description + "authen aaa"; + uses ACTION-AUTHEN-AAA-ST; + } + container collect-id { + when "../type = 'policy-action-collect-id'" { + description + "../type = 'POLICY_ACTION_COLLECT_ID'"; + } + description + "collect id"; + uses ACTION-COLLECT-ID-ST; + } + container decode-id { + when "../type = 'policy-action-decode-identifier'" { + description + "../type = 'POLICY_ACTION_DECODE_IDENTIFIER'"; + } + description + "decode id"; + uses ACTION-DECODE-IDENTIFIER-ST; + } + container set-timer { + when "../type = 'policy-action-set-timer'" { + description + "../type = 'POLICY_ACTION_SET_TIMER'"; + } + description + "set timer"; + uses ACTION-SET-TIMER-ST; + } + container stop-timer { + when "../type = 'policy-action-stop-timer'" { + description + "../type = 'POLICY_ACTION_STOP_TIMER'"; + } + description + "stop timer"; + uses ACTION-STOP-TIMER-ST; + } + container acct-aaa-list { + when "../type = 'policy-action-accounting-aaa-list'" { + description + "../type = 'POLICY_ACTION_ACCOUNTING_AAA_LIST'"; + } + description + "acct aaa list"; + uses ACTION-ACCT-AAA-LIST-ST; + } + container query-ancp { + when "../type = 'policy-action-query-ancp'" { + description + "../type = 'POLICY_ACTION_QUERY_ANCP'"; + } + description + "query ancp"; + uses ACTION-QUERY-ANCP-SESSION-ST; + } + container prepaid-cfg { + when "../type = 'policy-action-prepaid-config'" { + description + "../type = 'POLICY_ACTION_PREPAID_CONFIG'"; + } + description + "prepaid cfg"; + uses ACTION-PREPAID-CFG-ST; + } + container timeout-idle { + when "../type = 'policy-action-timeout-idle'" { + description + "../type = 'POLICY_ACTION_TIMEOUT_IDLE'"; + } + description + "timeout idle"; + uses ACTION-TIMEOUT-IDLE-ST; + } + container proxy-aaa { + when "../type = 'policy-action-proxy-aaa'" { + description + "../type = 'POLICY_ACTION_PROXY_AAA'"; + } + description + "proxy aaa"; + uses ACTION-PROXY-AAA-ST; + } + container act-template { + when "../type = 'policy-action-template-activate'" { + description + "../type = 'POLICY_ACTION_TEMPLATE_ACTIVATE'"; + } + description + "act template"; + uses ACTION-TEMPLATE-ST; + } + container deact-template { + when "../type = 'policy-action-template-deactivate'" { + description + "../type = 'POLICY_ACTION_TEMPLATE_DEACTIVATE'"; + } + description + "deact template"; + uses ACTION-TEMPLATE-ST; + } + container qlimit { + when "../type = 'policy-action-q-limit'" { + description + "../type = 'POLICY_ACTION_Q_LIMIT'"; + } + description + "qlimit"; + uses ACTION-QLIMIT-INFO-ARRAY; + } + container accounting-event-aaa { + when "../type = 'policy-action-accounting-event-aaa-list'" { + description + "../type = + 'POLICY_ACTION_ACCOUNTING_EVENT_AAA_LIST'"; + } + description + "accounting event aaa"; + uses ACTION-ACCOUNTING-EVENT-ST; + } + container authorize-id { + when "../type = 'policy-action-authorize-id'" { + description + "../type = 'POLICY_ACTION_AUTHORIZE_ID'"; + } + description + "authorize id"; + uses ACTION-AUTHORIZE-ID-ST; + } + container afm-react { + when "../type = 'policy-action-afmon-react'" { + description + "../type = 'POLICY_ACTION_AFMON_REACT'"; + } + description + "afm react"; + uses ACTION-AFMON-REACT-INFO; + } + container httpr { + when "../type = 'policy-action-httpr'" { + description + "../type = 'POLICY_ACTION_HTTPR'"; + } + description + "httpr"; + uses ACTION-HTTPR-INFO-ST; + } + container punt { + when "../type = 'policy-action-punt'" { + description + "../type = 'POLICY_ACTION_PUNT'"; + } + description + "punt"; + uses ACTION-PUNT-INFO-ST; + } + container copy { + when "../type = 'policy-action-copy'" { + description + "../type = 'POLICY_ACTION_COPY'"; + } + description + "copy"; + uses ACTION-COPY-INFO-ST; + } + container sfrag { + when "../type = 'policy-action-sfrag'" { + description + "../type = 'POLICY_ACTION_SFRAG'"; + } + description + "sfrag"; + uses ACTION-SFRAG-INFO-ST; + } + container redirect { + when "../type = 'policy-action-redirect'" { + description + "../type = 'POLICY_ACTION_REDIRECT'"; + } + description + "redirect"; + uses ACTION-REDIRECT-INFO-ST; + } + container out-intf { + when "../type = 'policy-action-output-interface'" { + description + "../type = 'POLICY_ACTION_OUTPUT_INTERFACE'"; + } + description + "out intf"; + uses ACTION-OUTPUT-INTERFACE-INFO-ST; + } + container serv-func { + when "../type = 'policy-action-service-function-path'" { + description + "../type = 'POLICY_ACTION_SERVICE_FUNCTION_PATH'"; + } + description + "serv func"; + uses ACTION-SERVICE-FUNCTION-PATH-ST; + } + container http-enrich { + when "../type = 'policy-action-http-enrich'" { + description + "../type = 'POLICY_ACTION_HTTP_ENRICH'"; + } + description + "http enrich"; + } + container police { + when "../type = 'policy-action-police'" { + description + "../type = 'POLICY_ACTION_POLICE'"; + } + description + "police"; + uses ACTION-POLICE-INFO-STR; + } + container shape { + when "../type = 'policy-action-shape'" { + description + "../type = 'POLICY_ACTION_SHAPE'"; + } + description + "shape"; + uses ACTION-SHAPE-INFO-STR; + } + container child-policy { + when "../type = 'policy-action-serv-pol'" { + description + "../type = 'POLICY_ACTION_SERV_POL'"; + } + description + "child policy"; + uses CHLD-POL-ENC-UNION; + } + container cac { + when "../type = 'policy-action-cac'" { + description + "../type = 'POLICY_ACTION_CAC'"; + } + description + "cac"; + uses ACTION-CAC-INFO; + } + container pfc { + when "../type = 'policy-action-pfc'" { + description + "../type = 'POLICY_ACTION_PFC'"; + } + description + "pfc"; + uses ACTION-PFC-INFO; + } + container flow-parm { + when "../type = 'policy-action-afmon-flow-parm'" { + description + "../type = 'POLICY_ACTION_AFMON_FLOW_PARM'"; + } + description + "flow parm"; + uses ACTION-AFMON-FLOW-PARM-INFO-ST; + } + container ipcbr { + when "../type = 'policy-action-afmon-ipcbr-metric'" { + description + "../type = 'POLICY_ACTION_AFMON_IPCBR_METRIC'"; + } + description + "ipcbr"; + uses ACTION-AFMON-IPCBR-INFO-ST; + } + container rtp { + when "../type = 'policy-action-afmon-rtp-metric'" { + description + "../type = 'POLICY_ACTION_AFMON_RTP_METRIC'"; + } + description + "rtp"; + uses ACTION-AFMON-RTP-INFO-ST; + } + container rtp-mmr { + when "../type = 'policy-action-afmon-rtp-mmr-metric'" { + description + "../type = 'POLICY_ACTION_AFMON_RTP_MMR_METRIC'"; + } + description + "rtp mmr"; + uses ACTION-AFMON-RTP-INFO-ST; + } + container rtp-j2k { + when "../type = 'policy-action-afmon-rtp-j2k-metric'" { + description + "../type = 'POLICY_ACTION_AFMON_RTP_J2K_METRIC'"; + } + description + "rtp j2k"; + uses ACTION-AFMON-RTP-INFO-ST; + } + container rtp-voice { + when "../type = 'policy-action-afmon-rtp-voice-metric'" { + description + "../type = + 'POLICY_ACTION_AFMON_RTP_VOICE_METRIC'"; + } + description + "rtp voice"; + uses ACTION-AFMON-RTP-INFO-ST; + } + container mdi { + when "../type = 'policy-action-afmon-mdi-metric'" { + description + "../type = 'POLICY_ACTION_AFMON_MDI_METRIC'"; + } + description + "mdi"; + uses ACTION-AFMON-MDI-INFO-ST; + } + container mdi-rtp { + when "../type = 'policy-action-afmon-mdi-rtp-metric'" { + description + "../type = 'POLICY_ACTION_AFMON_MDI_RTP_METRIC'"; + } + description + "mdi rtp"; + uses ACTION-AFMON-MDI-INFO-ST; + } + container fmm { + when "../type = 'policy-action-afmon-fmm'" { + description + "../type = 'POLICY_ACTION_AFMON_FMM'"; + } + description + "fmm"; + uses ACTION-AFMON-FMM-INFO-ST; + } + container pbf { + when "../type = 'policy-action-pbr-next-hop'" { + description + "../type = 'POLICY_ACTION_PBR_NEXTHOP'"; + } + description + "pbf"; + uses ACTION-PBF-INFO-ARRAY; + } + container ipv4-nh { + when "../type = 'policy-action-ipv4-nh'" { + description + "../type = 'POLICY_ACTION_IPV4_NH'"; + } + description + "ipv4 nh"; + uses ACTION-IPV4-NH-INFO-ARRAY; + } + container ipv6-nh { + when "../type = 'policy-action-ipv6-nh'" { + description + "../type = 'POLICY_ACTION_IPV6_NH'"; + } + description + "ipv6 nh"; + uses ACTION-IPV6-NH-INFO-ARRAY; + } + leaf type { + type Policy-action-en; + description + "type"; + } + leaf data-p { + when "../type != 'policy-action-mark' and ../type != 'policy-action-mark2' and ../type != 'policy-action-wred' and ../type != 'policy-action-encap-seq' and ../type != 'policy-action-priority' and ../type != 'policy-action-bw-remaining' and ../type != 'policy-action-min-bw' and ../type != 'policy-action-authenticate-aaa' and ../type != 'policy-action-collect-id' and ../type != 'policy-action-decode-identifier' and ../type != 'policy-action-set-timer' and ../type != 'policy-action-stop-timer' and ../type != 'policy-action-accounting-aaa-list' and ../type != 'policy-action-query-ancp' and ../type != 'policy-action-prepaid-config' and ../type != 'policy-action-timeout-idle' and ../type != 'policy-action-proxy-aaa' and ../type != 'policy-action-template-activate' and ../type != 'policy-action-template-deactivate' and ../type != 'policy-action-q-limit' and ../type != 'policy-action-accounting-event-aaa-list' and ../type != 'policy-action-authorize-id' and ../type != 'policy-action-afmon-react' and ../type != 'policy-action-httpr' and ../type != 'policy-action-punt' and ../type != 'policy-action-copy' and ../type != 'policy-action-sfrag' and ../type != 'policy-action-redirect' and ../type != 'policy-action-output-interface' and ../type != 'policy-action-service-function-path' and ../type != 'policy-action-police' and ../type != 'policy-action-shape' and ../type != 'policy-action-serv-pol' and ../type != 'policy-action-cac' and ../type != 'policy-action-pfc' and ../type != 'policy-action-afmon-flow-parm' and ../type != 'policy-action-afmon-ipcbr-metric' and ../type != 'policy-action-afmon-rtp-metric' and ../type != 'policy-action-afmon-rtp-mmr-metric' and ../type != 'policy-action-afmon-rtp-j2k-metric' and ../type != 'policy-action-afmon-rtp-voice-metric' and ../type != 'policy-action-afmon-mdi-metric' and ../type != 'policy-action-afmon-mdi-rtp-metric' and ../type != 'policy-action-afmon-fmm' and ../type != 'policy-action-pbr-next-hop' and ../type != 'policy-action-ipv4-nh' and ../type != 'policy-action-ipv6-nh'" { + description + "../type != 'POLICY_ACTION_MARK' and ../type != + 'POLICY_ACTION_MARK2' and ../type != + 'POLICY_ACTION_WRED' and ../type != + 'POLICY_ACTION_ENCAP_SEQ' and ../type != + 'POLICY_ACTION_PRIORITY' and ../type != + 'POLICY_ACTION_BW_REMAINING' and ../type != + 'POLICY_ACTION_MIN_BW' and ../type != + 'POLICY_ACTION_AUTHENTICATE_AAA' and ../type + != 'POLICY_ACTION_COLLECT_ID' and ../type != + 'POLICY_ACTION_DECODE_IDENTIFIER' and ../type + != 'POLICY_ACTION_SET_TIMER' and ../type != + 'POLICY_ACTION_STOP_TIMER' and ../type != + 'POLICY_ACTION_ACCOUNTING_AAA_LIST' and . + ./type != 'POLICY_ACTION_QUERY_ANCP' and . + ./type != 'POLICY_ACTION_PREPAID_CONFIG' and . + ./type != 'POLICY_ACTION_TIMEOUT_IDLE' and . + ./type != 'POLICY_ACTION_PROXY_AAA' and . + ./type != 'POLICY_ACTION_TEMPLATE_ACTIVATE' + and ../type != + 'POLICY_ACTION_TEMPLATE_DEACTIVATE' and . + ./type != 'POLICY_ACTION_Q_LIMIT' and ../type + != 'POLICY_ACTION_ACCOUNTING_EVENT_AAA_LIST' + and ../type != 'POLICY_ACTION_AUTHORIZE_ID' + and ../type != 'POLICY_ACTION_AFMON_REACT' and + ../type != 'POLICY_ACTION_HTTPR' and ../type + != 'POLICY_ACTION_PUNT' and ../type != + 'POLICY_ACTION_COPY' and ../type != + 'POLICY_ACTION_SFRAG' and ../type != + 'POLICY_ACTION_REDIRECT' and ../type != + 'POLICY_ACTION_OUTPUT_INTERFACE' and ../type + != 'POLICY_ACTION_SERVICE_FUNCTION_PATH' and . + ./type != 'POLICY_ACTION_POLICE' and ../type + != 'POLICY_ACTION_SHAPE' and ../type != + 'POLICY_ACTION_SERV_POL' and ../type != + 'POLICY_ACTION_CAC' and ../type != + 'POLICY_ACTION_PFC' and ../type != + 'POLICY_ACTION_AFMON_FLOW_PARM' and ../type != + 'POLICY_ACTION_AFMON_IPCBR_METRIC' and ../type + != 'POLICY_ACTION_AFMON_RTP_METRIC' and . + ./type != 'POLICY_ACTION_AFMON_RTP_MMR_METRIC' + and ../type != + 'POLICY_ACTION_AFMON_RTP_J2K_METRIC' and . + ./type != + 'POLICY_ACTION_AFMON_RTP_VOICE_METRIC' and . + ./type != 'POLICY_ACTION_AFMON_MDI_METRIC' and + ../type != + 'POLICY_ACTION_AFMON_MDI_RTP_METRIC' and . + ./type != 'POLICY_ACTION_AFMON_FMM' and . + ./type != 'POLICY_ACTION_PBR_NEXTHOP' and . + ./type != 'POLICY_ACTION_IPV4_NH' and ../type + != 'POLICY_ACTION_IPV6_NH'"; + } + type uint32; + description + "data p"; + } + } + + grouping ACTION-DECODE-IDENTIFIER-ST { + description + "ACTION DECODE IDENTIFIER ST"; + leaf id { + type Decode-identifier-en; + description + "id"; + } + leaf format-name { + type string; + description + "format name"; + } + } + + grouping ACTION-POLICE-INFO-STR { + description + "ACTION POLICE INFO ARRAY"; + list action-police-info-st { + description + "action police info array"; + uses ACTION-POLICE-INFO-ST; + } + } + + grouping ACTION-POLICE-INFO-ST { + description + "Police action info bag"; + container rate { + description + "rate"; + uses POLICY-PARAM-UINT32-ST; + } + container burst { + description + "burst"; + uses POLICY-PARAM-UINT32-ST; + } + container peak-rate { + description + "peak rate"; + uses POLICY-PARAM-UINT32-ST; + } + container peak-burst { + description + "peak burst"; + uses POLICY-PARAM-UINT32-ST; + } + container cdvt { + description + "cdvt"; + uses POLICY-PARAM-UINT32-ST; + } + container conform-actns { + description + "conform actns"; + uses POLICE-ACTION-ARRAY; + } + container exceed-actns { + description + "exceed actns"; + uses POLICE-ACTION-ARRAY; + } + container violate-actns { + description + "violate actns"; + uses POLICE-ACTION-ARRAY; + } + container confclass-p { + description + "confclass p"; + uses CLASS-MAP-BG; + } + container excdclass-p { + description + "excdclass p"; + uses CLASS-MAP-BG; + } + leaf flags { + type uint32; + description + "flags"; + } + leaf police-flags { + type uint32; + description + "police flags"; + } + leaf sbuck-name { + type Shared-bucket-name; + description + "sbuck name"; + } + leaf sbuck-type { + type Shared-bucket-type; + description + "sbuck type"; + } + } + + grouping PLMGR-APP-GL-BULK-BEST-EFFORT-CAP-T { + description + " Best effort capability of a network element"; + leaf best-effort-per-bulk-instance { + type boolean; + description + "Specifies policymgr supports bulk configuration + best effort behavior or not"; + } + } + + grouping POLICY-CLASS-INFO-KEY-BG { + description + "Policy-class key Bag"; + list policy-class-info-key-bg { + description + "policy class info key bg"; + leaf policy-class-hd { + type uint32; + description + "policy class hd"; + } + leaf seq { + type uint32; + description + "seq"; + } + } + } + + grouping ACTION-COLLECT-ID-INFO-P { + description + "ACTION COLLECT ID INFO P"; + uses ACTION-COLLECT-ID-ST; + } + + grouping POLICY-CLASS-INFO-UN { + description + "POLICY CLASS INFO UN"; + container key { + when "../type = 'policy-class-info-key-type'" { + description + "../type = 'POLICY_CLASS_INFO_KEY_TYPE'"; + } + description + "key"; + uses POLICY-CLASS-INFO-KEY-BG; + } + container mod-data { + when "../type = 'policy-class-info-mod-type'" { + description + "../type = 'POLICY_CLASS_INFO_MOD_TYPE'"; + } + description + "mod data"; + uses POLICY-CLASS-INFO-MOD-BG; + } + leaf type { + type Policy-class-info-en; + description + "type"; + } + } + + grouping ACTION-PRIO-INFO-P { + description + "ACTION PRIO INFO P"; + uses ACTION-PRIO-INFO-ST; + } + + grouping ACTION-QUERY-ANCP-SESSION-P { + description + "ACTION QUERY ANCP SESSION P"; + uses ACTION-QUERY-ANCP-SESSION-ST; + } + + grouping PLMGR-TABLE-CAP-BG { + description + "Table Capability details "; + list table-capabilty { + description + "Table capability"; + uses PLMGR-APP-TB-CAPS-T; + } + } + + grouping POLICE-ACTION-UN { + description + "Police action bag"; + container mark { + when "../type = 'police-action-mark'" { + description + "../type = 'POLICE_ACTION_MARK'"; + } + description + "mark"; + uses ACTION-MARK-INFO-ST; + } + leaf type { + type Police-action-type-en; + description + "type"; + } + } + + grouping UINT32-RNG-ST { + description + "UINT32 RNG ST"; + leaf min { + type uint32; + description + "Lower limit of the range"; + } + leaf max { + type uint32; + description + "Upper limit of the range"; + } + } + + grouping ACTION-COLLECT-ID-ST { + description + "Collect identifiers"; + leaf id { + type Identifier-en; + description + "id"; + } + leaf aaa-list-name { + type string; + description + "aaa list name"; + } + } + + grouping ACTION-SHAPE-INFO-P { + description + "ACTION SHAPE INFO P"; + uses ACTION-SHAPE-INFO-ST; + } + + grouping PLMGR-PMAP-DIFF-BG { + description + "Policy-map diff Bag"; + container del { + description + "del"; + uses POLICY-MAP-BG; + } + container add { + description + "add"; + uses POLICY-MAP-BG; + } + } + + grouping ACTION-WRED-INFO-P { + description + "ACTION WRED INFO P"; + uses ACTION-WRED-INFO; + } + + grouping PLMGR-APP-GL-STATS-CAP-T { + description + "Stats capability of a network element"; + leaf maximum-class-stats-polling-rate { + type uint32; + description + "Maximum statistics polling rate supported by a + network in terms of class stats per sec"; + } + } + + grouping UINT32-ARRAY { + description + "UINT32 ARRAY"; + leaf-list uint32_array { + type uint32; + description + "uint32 array"; + } + } + + grouping PLMGR-OBJ-REF-SUMMARY-BG { + description + "Object detail."; + leaf object-name { + type string { + length "0..64"; + } + description + "Name of object (Policymap/Classmap)"; + } + } + + grouping ACTION-COPY-INFO-ST { + description + "copy action"; + leaf num-byte { + type uint32; + units "byte"; + description + "number of bytes"; + } + leaf sn-type { + type Dpss-snid-type-en; + description + "service node ID type"; + } + leaf sn-index { + type uint32; + description + "service node index"; + } + leaf sn-name { + type string; + description + "service node url"; + } + leaf app-id { + type uint32; + description + "application ID"; + } + leaf local-id { + type uint32; + description + "local ID"; + } + leaf vsnode-type { + type Vsvc-service-type-t; + description + "vservice node type"; + } + } + + grouping ACTION-SFRAG-INFO-P { + description + "ACTION SFRAG INFO P"; + uses ACTION-SFRAG-INFO-ST; + } + + grouping PLMGR-APP-TB-CLASS-CAP-T { + description + " Table class capability"; + leaf classmap-class-support { + type boolean; + description + "ClassmapClassSupport"; + } + leaf class-sequence-number-support { + type boolean; + description + "ClassSequenceNumberSupport"; + } + leaf class-ordering-support { + type boolean; + description + "ClassOrderingSupport"; + } + leaf class-idel-timeout-support { + type boolean; + description + "ClassIdelTimeoutSupport"; + } + leaf inline-c-lass-support { + type boolean; + description + "InlineCLassSupport"; + } + leaf maximum-inline-class-provision-rate { + type uint32; + description + "MaximumInlineClassProvisionRate"; + } + leaf maximum-inline-class-per-table { + type uint32; + description + "MaximumInlineClassPerTable"; + } + } + + grouping PLMGR-PMAP-TARGETS-ARR-BG { + description + "The array bag"; + list plmgr-pmap-targets { + description + "plmgr pmap targets"; + uses PLMGR-PMAP-TARGETS-BG; + } + } + + grouping CLASS-MATCH-DATA-UN { + description + "Union of pointers to the supported match criteria"; + container ipv4-dscp { + when "../type = 'match-type-ipv4-dscp'" { + description + "../type = 'MATCH_TYPE_IPV4_DSCP'"; + } + description + "IPv4 DSCP"; + uses UINT8-RNG-ARRAY; + } + container ipv6-dscp { + when "../type = 'match-type-ipv6-dscp'" { + description + "../type = 'MATCH_TYPE_IPV6_DSCP'"; + } + description + "IPv6 DSCP"; + uses UINT8-RNG-ARRAY; + } + container dscp { + when "../type = 'match-type-dscp'" { + description + "../type = 'MATCH_TYPE_DSCP'"; + } + description + "Match DSCP range array"; + uses UINT8-RNG-ARRAY; + } + container ipv4-prec { + when "../type = 'match-type-ipv4-prec'" { + description + "../type = 'MATCH_TYPE_IPV4_PREC'"; + } + description + "IPv4 Precedence"; + uses UINT8-ARRAY; + } + container ipv6-prec { + when "../type = 'match-type-ipv6-prec'" { + description + "../type = 'MATCH_TYPE_IPV6_PREC'"; + } + description + "IPv6 Precedence"; + uses UINT8-ARRAY; + } + container prec { + when "../type = 'match-type-prec'" { + description + "../type = 'MATCH_TYPE_PREC'"; + } + description + "Match Precedence array"; + uses UINT8-ARRAY; + } + container discard-class { + when "../type = 'match-type-disc-cls'" { + description + "../type = 'MATCH_TYPE_DISC_CLS'"; + } + description + "Match Discard Class array"; + uses UINT8-ARRAY; + } + container qos-group { + when "../type = 'match-type-qos-grp'" { + description + "../type = 'MATCH_TYPE_QOS_GRP'"; + } + description + "Match QoS group array"; + uses UINT16-RNG-ARRAY; + } + container traffic-class { + when "../type = 'match-type-traffic-class'" { + description + "../type = 'MATCH_TYPE_TRAFFIC_CLASS'"; + } + description + "Match Traffic class array"; + uses UINT8-RNG-ARRAY; + } + container proto { + when "../type = 'match-type-proto'" { + description + "../type = 'MATCH_TYPE_PROTO'"; + } + description + "Match Protocol array"; + uses UINT16-RNG-ARRAY; + } + container ipv4-packet-len { + when "../type = 'match-type-ipv4-packet-length'" { + description + "../type = 'MATCH_TYPE_IPV4_PACKET_LENGTH'"; + } + description + "IPv4 packet length array"; + uses UINT16-RNG-ARRAY; + } + container ipv6-packet-len { + when "../type = 'match-type-ipv6-packet-length'" { + description + "../type = 'MATCH_TYPE_IPV6_PACKET_LENGTH'"; + } + description + "IPv6 packet length array"; + uses UINT16-RNG-ARRAY; + } + container packet-len { + when "../type = 'match-type-packet-length'" { + description + "../type = 'MATCH_TYPE_PACKET_LENGTH'"; + } + description + "Match packet length array"; + uses UINT16-RNG-ARRAY; + } + container flow-tag { + when "../type = 'match-type-flow-tag'" { + description + "../type = 'MATCH_TYPE_FLOW_TAG'"; + } + description + "Match flow-tag array"; + uses UINT8-RNG-ARRAY; + } + container tcp-flag { + when "../type = 'match-type-tcp-flag'" { + description + "../type = 'MATCH_TYPE_TCP_FLAG'"; + } + description + "Match tcp flag value"; + uses TCP-FLAG-ST; + } + container icmpv4-type { + when "../type = 'match-type-icmpv4-type'" { + description + "../type = 'MATCH_TYPE_ICMPV4_TYPE'"; + } + description + "Match ipv4 icmp type"; + uses UINT8-RNG-ARRAY; + } + container icmpv4-code { + when "../type = 'match-type-icmpv4-code'" { + description + "../type = 'MATCH_TYPE_ICMPV4_CODE'"; + } + description + "Match ipv4 icmp code"; + uses UINT8-RNG-ARRAY; + } + container icmpv6-type { + when "../type = 'match-type-icmpv6-type'" { + description + "../type = 'MATCH_TYPE_ICMPV6_TYPE'"; + } + description + "Match ipv6 icmp type"; + uses UINT8-RNG-ARRAY; + } + container icmpv6-code { + when "../type = 'match-type-icmpv6-code'" { + description + "../type = 'MATCH_TYPE_ICMPV6_CODE'"; + } + description + "Match ipv6 icmp code"; + uses UINT8-RNG-ARRAY; + } + container mpls-exp { + when "../type = 'match-type-mpls-exp-top'" { + description + "../type = 'MATCH_TYPE_MPLS_EXP_TOP'"; + } + description + "Match MPLS experimental topmost array"; + uses UINT8-ARRAY; + } + container mpls-exp-imp { + when "../type = 'match-type-mpls-exp-imp'" { + description + "../type = 'MATCH_TYPE_MPLS_EXP_IMP'"; + } + description + "Match MPLS experimental imposition array"; + uses UINT8-ARRAY; + } + container mpls-disp-ipv4-acl { + when "../type = 'match-type-mpls-disp-ipv4-acl'" { + description + "../type = 'MATCH_TYPE_MPLS_DISP_IPV4_ACL'"; + } + description + "MPLS Disposition IPv4 Access-list"; + uses STRING-ARRAY; + } + container mpls-disp-ipv6-acl { + when "../type = 'match-type-mpls-disp-ipv6-acl'" { + description + "../type = 'MATCH_TYPE_MPLS_DISP_IPV6_ACL'"; + } + description + "MPLS Disposition IPv6 Access-list"; + uses STRING-ARRAY; + } + container mpls-disp-cl-map { + when "../type = 'match-type-mpls-disp-cl-map'" { + description + "../type = 'MATCH_TYPE_MPLS_DISP_CMAP'"; + } + description + "MPLS Disposition Class Map"; + uses STRING-ARRAY; + } + container mpls-top-label { + when "../type = 'match-type-mpls-topmost-label'" { + description + "../type = 'MATCH_TYPE_MPLS_TOPMOST_LABEL'"; + } + description + "MPLS Topmost LABEL"; + uses UINT32-RNG-ARRAY; + } + container cos { + when "../type = 'match-type-cos'" { + description + "../type = 'MATCH_TYPE_COS'"; + } + description + "Match CoS array"; + uses UINT8-ARRAY; + } + container cos-inr { + when "../type = 'match-type-cos-inner'" { + description + "../type = 'MATCH_TYPE_COS_INNER'"; + } + description + "Match inner header CoS"; + uses UINT8-ARRAY; + } + container dei { + when "../type = 'match-type-dei'" { + description + "../type = 'MATCH_TYPE_DEI'"; + } + description + "Match DEI Bit"; + uses DEI-BIT-ST; + } + container dei-inr { + when "../type = 'match-type-dei-inner'" { + description + "../type = 'MATCH_TYPE_DEI_INNER'"; + } + description + "Match inner DEI Bit"; + uses DEI-BIT-ST; + } + container vlan { + when "../type = 'match-type-vlan'" { + description + "../type = 'MATCH_TYPE_VLAN'"; + } + description + "Match VLAN array"; + uses VLAN-ID-ARRAY; + } + container vlan-inr { + when "../type = 'match-type-vlan-inner'" { + description + "../type = 'MATCH_TYPE_VLAN_INNER'"; + } + description + "Match inner header VLAN range array"; + uses UINT16-RNG-ARRAY; + } + container fr-dlci { + when "../type = 'match-type-fr-dlci'" { + description + "../type = 'MATCH_TYPE_FR_DLCI'"; + } + description + "Match FR DLCI range array"; + uses UINT16-RNG-ARRAY; + } + container src-mac { + when "../type = 'match-type-src-mac'" { + description + "../type = 'MATCH_TYPE_SRC_MAC'"; + } + description + "Match Source MAC address"; + uses MAC-ADDR-ST; + } + container dst-mac { + when "../type = 'match-type-dst-mac'" { + description + "../type = 'MATCH_TYPE_DST_MAC'"; + } + description + "Match Destination MAC address"; + uses MAC-ADDR-ST; + } + container atm-clp { + when "../type = 'match-type-atm-clp'" { + description + "../type = 'MATCH_TYPE_ATM_CLP'"; + } + description + "Match ATM CLP level"; + uses UINT8-ARRAY; + } + container fr-de { + when "../type = 'match-type-fr-de'" { + description + "../type = 'MATCH_TYPE_FR_DE'"; + } + description + "Match FR DE value"; + uses UINT8-ARRAY; + } + container ipv4-acl { + when "../type = 'match-type-ipv4-acl'" { + description + "../type = 'MATCH_TYPE_IPV4_ACL'"; + } + description + "IPv4 Access-list"; + uses STRING-ARRAY; + } + container ipv6-acl { + when "../type = 'match-type-ipv6-acl'" { + description + "../type = 'MATCH_TYPE_IPV6_ACL'"; + } + description + "IPv6 Access-list"; + uses STRING-ARRAY; + } + container ether-service-acl { + when "../type = 'match-type-ethernet-service-s-acl'" { + description + "../type = 'MATCH_TYPE_ETHERNET_SERVICES_ACL'"; + } + description + "Ethernet-Services Access-list"; + uses STRING-ARRAY; + } + container avail-id { + when "../type = 'match-type-avail-id'" { + description + "../type = 'MATCH_TYPE_AVAIL_ID'"; + } + description + "Available Identifiers"; + uses UINT8-ARRAY; + } + container media-type { + when "../type = 'match-type-media'" { + description + "../type = 'MATCH_TYPE_MEDIA'"; + } + description + "Media Type"; + uses UINT8-ARRAY; + } + container subs-protocol { + when "../type = 'match-type-subs-protocol'" { + description + "../type = 'MATCH_TYPE_SUBS_PROTOCOL'"; + } + description + "Protocol"; + uses UINT8-ARRAY; + } + container dnis { + when "../type = 'match-type-dnis'" { + description + "../type = 'MATCH_TYPE_DNIS'"; + } + description + "DNIS"; + uses STRING-ARRAY; + } + container dnis-regex { + when "../type = 'match-type-dnis-regexp'" { + description + "../type = 'MATCH_TYPE_DNIS_REGEXP'"; + } + description + "DNIS Regular Expression"; + uses STRING-ARRAY; + } + container domain { + when "../type = 'match-type-domain'" { + description + "../type = 'MATCH_TYPE_DOMAIN'"; + } + description + "Domain Name"; + uses DOMAIN-ARRAY; + } + container domain-regex { + when "../type = 'match-type-domain-regexp'" { + description + "../type = 'MATCH_TYPE_DOMAIN_REGEXP'"; + } + description + "Domain Regular Expression"; + uses DOMAIN-ARRAY; + } + container nas-port { + when "../type = 'match-type-nas-port'" { + description + "../type = 'MATCH_TYPE_NAS_PORT'"; + } + description + "NAS Port"; + uses NAS-PORT-ARRAY; + } + container service-name { + when "../type = 'match-type-service-name'" { + description + "../type = 'MATCH_TYPE_SERVICE_NAME'"; + } + description + "Service Name"; + uses STRING-ARRAY; + } + container service-name-regex { + when "../type = 'match-type-service-name-regexp'" { + description + "../type = 'MATCH_TYPE_SERVICE_NAME_REGEXP'"; + } + description + "Service Name Regular Exp"; + uses STRING-ARRAY; + } + container src-addr-ipv4 { + when "../type = 'match-type-src-addr-ipv4'" { + description + "../type = 'MATCH_TYPE_SRC_ADDR_IPV4'"; + } + description + "Source Address IPV4"; + uses IPV4-ADDR-ARRAY; + } + container dst-addr-ipv4 { + when "../type = 'match-type-dst-addr-ipv4'" { + description + "../type = 'MATCH_TYPE_DST_ADDR_IPV4'"; + } + description + "Destination Address IPV4"; + uses IPV4-ADDR-ARRAY; + } + container src-addr-ipv6 { + when "../type = 'match-type-src-addr-ipv6'" { + description + "../type = 'MATCH_TYPE_SRC_ADDR_IPV6'"; + } + description + "Source Address IPV6"; + uses IPV6-ADDR-ARRAY; + } + container dst-addr-ipv6 { + when "../type = 'match-type-dst-addr-ipv6'" { + description + "../type = 'MATCH_TYPE_DST_ADDR_IPV6'"; + } + description + "Destination Address IPV6"; + uses IPV6-ADDR-ARRAY; + } + container src-addr-mac { + when "../type = 'match-type-src-addr-mac'" { + description + "../type = 'MATCH_TYPE_SRC_ADDR_MAC'"; + } + description + "Source Address MAC"; + uses MAC-ADDR-ARRAY; + } + container timer { + when "../type = 'match-type-timer'" { + description + "../type = 'MATCH_TYPE_TIMER'"; + } + description + "Timer"; + uses STRING-ARRAY; + } + container timer-regexp { + when "../type = 'match-type-timer-regexp'" { + description + "../type = 'MATCH_TYPE_TIMER_REGEXP'"; + } + description + "Timer Regular Expression"; + uses STRING-ARRAY; + } + container tunnel-name { + when "../type = 'match-type-tunnel-name'" { + description + "../type = 'MATCH_TYPE_TUNNEL_NAME'"; + } + description + "Tunnel Name"; + uses STRING-ARRAY; + } + container tunnel-name-regex { + when "../type = 'match-type-tunnel-name-regexp'" { + description + "../type = 'MATCH_TYPE_TUNNEL_NAME_REGEXP'"; + } + description + "Tunnel Name Regular Expression"; + uses STRING-ARRAY; + } + container user-name { + when "../type = 'match-type-user-name'" { + description + "../type = 'MATCH_TYPE_USERNAME'"; + } + description + "User Name"; + uses STRING-ARRAY; + } + container user-name-regex { + when "../type = 'match-type-user-name-regexp'" { + description + "../type = 'MATCH_TYPE_USERNAME_REGEXP'"; + } + description + "User Name Regular Expression"; + uses STRING-ARRAY; + } + container auth-username { + when "../type = 'match-type-auth-user-name'" { + description + "../type = 'MATCH_TYPE_AUTH_USERNAME'"; + } + description + "Authenticated User Name"; + uses STRING-ARRAY; + } + container auth-username-regex { + when "../type = 'match-type-auth-user-name-regexp'" { + description + "../type = 'MATCH_TYPE_AUTH_USERNAME_REGEXP'"; + } + description + "Authenticated User Name RegEx"; + uses STRING-ARRAY; + } + container unauth-username { + when "../type = 'match-type-unauth-user-name'" { + description + "../type = 'MATCH_TYPE_UNAUTH_USERNAME'"; + } + description + "Unauthenticated User Name"; + uses STRING-ARRAY; + } + container unauth-username-regex { + when "../type = 'match-type-unauth-user-name-regexp'" { + description + "../type = 'MATCH_TYPE_UNAUTH_USERNAME_REGEXP'"; + } + description + "Unauthenticated User Name RegEx"; + uses STRING-ARRAY; + } + container auth-domain { + when "../type = 'match-type-auth-domain'" { + description + "../type = 'MATCH_TYPE_AUTH_DOMAIN'"; + } + description + "Authenticated domain name"; + uses STRING-ARRAY; + } + container auth-domain-regex { + when "../type = 'match-type-auth-domain-regexp'" { + description + "../type = 'MATCH_TYPE_AUTH_DOMAIN_REGEXP'"; + } + description + "Authenticated Domain Name RegEx"; + uses STRING-ARRAY; + } + container unauth-domain { + when "../type = 'match-type-unauth-domain'" { + description + "../type = 'MATCH_TYPE_UNAUTH_DOMAIN'"; + } + description + "Unauthenticated Domain Name"; + uses STRING-ARRAY; + } + container unauth-domain-regex { + when "../type = 'match-type-unauth-domain-regexp'" { + description + "../type = 'MATCH_TYPE_UNAUTH_DOMAIN_REGEXP'"; + } + description + "Unauthenticated Domain Name RegEx"; + uses STRING-ARRAY; + } + container vendor-id { + when "../type = 'match-type-vendor-id'" { + description + "../type = 'MATCH_TYPE_VENDOR_ID'"; + } + description + "Vendor ID"; + uses STRING-ARRAY; + } + container vendor-id-regex { + when "../type = 'match-type-vendor-id-regexp'" { + description + "../type = 'MATCH_TYPE_VENDOR_ID_REGEXP'"; + } + description + "Vendor ID RegEx"; + uses STRING-ARRAY; + } + container access-interface { + when "../type = 'match-type-access-interface'" { + description + "../type = 'MATCH_TYPE_ACCESS_INTERFACE'"; + } + description + "Access interface"; + uses STRING-ARRAY; + } + container input-interface { + when "../type = 'match-type-input-interface'" { + description + "../type = 'MATCH_TYPE_INPUT_INTERFACE'"; + } + description + "Input interface"; + uses STRING-ARRAY; + } + container ethertype { + when "../type = 'match-type-ether-type'" { + description + "../type = 'MATCH_TYPE_ETHERTYPE'"; + } + description + "Ethernet type"; + uses UINT16-RNG-ARRAY; + } + container flow-key-data { + when "../type = 'match-type-flow-key'" { + description + "../type = 'MATCH_TYPE_FLOW_KEY'"; + } + description + "Flow key structure"; + uses FLOW-KEY-ST; + } + container dhcp-client-id { + when "../type = 'match-type-dhcp-client-id'" { + description + "../type = 'MATCH_TYPE_DHCP_CLIENT_ID'"; + } + description + "Dhcp Client ID"; + uses STRING-ARRAY; + } + container dhcp-client-id-regex { + when "../type = 'match-type-dhcp-client-id-regexp'" { + description + "../type = 'MATCH_TYPE_DHCP_CLIENT_ID_REGEXP'"; + } + description + "Dhcp Client ID RegEx"; + uses STRING-ARRAY; + } + container circuit-id { + when "../type = 'match-type-circuit-id'" { + description + "../type = 'MATCH_TYPE_CIRCUIT_ID'"; + } + description + "Circuit ID"; + uses STRING-ARRAY; + } + container circuit-id-regex { + when "../type = 'match-type-circuit-id-regexp'" { + description + "../type = 'MATCH_TYPE_CIRCUIT_ID_REGEXP'"; + } + description + "Circuit ID RegEx"; + uses STRING-ARRAY; + } + container remote-id { + when "../type = 'match-type-remote-id'" { + description + "../type = 'MATCH_TYPE_REMOTE_ID'"; + } + description + "Remote ID"; + uses STRING-ARRAY; + } + container remote-id-regex { + when "../type = 'match-type-remote-id-regexp'" { + description + "../type = 'MATCH_TYPE_REMOTE_ID_REGEXP'"; + } + description + "Remote ID RegEx"; + uses STRING-ARRAY; + } + container src-port { + when "../type = 'match-type-src-port'" { + description + "../type = 'MATCH_TYPE_SRC_PORT'"; + } + description + "Source port"; + uses UINT16-RNG-ARRAY; + } + container dst-port { + when "../type = 'match-type-dst-port'" { + description + "../type = 'MATCH_TYPE_DST_PORT'"; + } + description + "Destination port"; + uses UINT16-RNG-ARRAY; + } + leaf type { + type Match-type-en; + description + "type"; + } + leaf mpls-top-eos { + when "../type = 'match-type-mpls-topmost-eos'" { + description + "../type = 'MATCH_TYPE_MPLS_TOPMOST_EOS'"; + } + type uint8; + description + "MPLS Topmost EOS"; + } + leaf fragment-type { + when "../type = 'match-type-fragment-type'" { + description + "../type = 'MATCH_TYPE_FRAGMENT_TYPE'"; + } + type uint8; + description + "Fragment type"; + } + leaf authen-status { + when "../type = 'match-type-authen-status'" { + description + "../type = 'MATCH_TYPE_AUTHEN_STATUS'"; + } + type Match-authen-status-en; + description + "Authentication Status"; + } + leaf mlp-negotiated { + when "../type = 'match-type-mlp-negotiated'" { + description + "../type = 'MATCH_TYPE_MLP_NEGOTIATED'"; + } + type Match-mlp-negotiated-en; + description + "MLP Negotiated"; + } + } + + grouping ACTION-OUTPUT-INTERFACE-INFO-P { + description + "ACTION OUTPUT INTERFACE INFO P"; + uses ACTION-OUTPUT-INTERFACE-INFO-ST; + } + + grouping UINT32-RNG-ARRAY { + description + "UINT32 RNG ARRAY"; + list uint32_rng_array { + description + "uint32 rng array"; + uses UINT32-RNG-ST; + } + } + + grouping TCP-FLAG-ST { + description + "TCP FLAG ST"; + leaf value { + type uint16; + description + "Value of TCP flag"; + } + leaf match-any { + type boolean; + description + "Match any TCP flag bit"; + } + } + + grouping ACTION-AUTHORIZE-ID-INFO-P { + description + "ACTION AUTHORIZE ID INFO P"; + uses ACTION-AUTHORIZE-ID-ST; + } + + grouping PLMGR-APPLIED-VARLIST-BG { + description + "Policy-map applied variable list"; + list var-list { + description + "var list"; + uses PLMGR-VAR-VAL-UN; + } + } + + grouping ACTION-IPV6-NH-INFO-P { + description + "ACTION IPV6 NH INFO P"; + uses ACTION-IPV6-NH-INFO-ARRAY; + } + + grouping ACTION-PROXY-AAA-ST { + description + "ACTION PROXY AAA ST"; + leaf aaa-list-name { + type string; + description + "aaa list name"; + } + } + + grouping ACTION-PROXY-AAA-INFO-P { + description + "ACTION PROXY AAA INFO P"; + uses ACTION-PROXY-AAA-ST; + } + + grouping ACTION-SFRAG-INFO-ST { + description + "service fragment action"; + leaf name { + type string; + description + "Service Fragment Name"; + } + } + + grouping ACTION-MINBW-INFO-P { + description + "ACTION MINBW INFO P"; + uses ACTION-MINBW-INFO-ST; + } + + grouping ACTION-PUNT-INFO-P { + description + "ACTION PUNT INFO P"; + uses ACTION-PUNT-INFO-ST; + } + + grouping ACTION-COPY-INFO-P { + description + "ACTION COPY INFO P"; + uses ACTION-COPY-INFO-ST; + } + + grouping ACTION-DECODE-IDENTIFIER-INFO-P { + description + "ACTION DECODE IDENTIFIER INFO P"; + uses ACTION-DECODE-IDENTIFIER-ST; + } + + grouping ACTION-CAC-INFO-P { + description + "ACTION CAC INFO P"; + uses ACTION-CAC-INFO-ST; + } + + grouping PLMGR-OBJ-CMAP-DETAIL-BG { + description + "Object detail."; + leaf total-reference-objects { + type uint32; + description + "Total number of Policymaps referencing a + Classmap"; + } + list policy-map-reference { + description + "List of Policymaps referencing a Classmap"; + uses PLMGR-PMAP-LIST; + } + } + + grouping ACTION-BWREM-INFO-ST { + description + "BW remaining action"; + container bwrem { + description + "bwrem"; + uses POLICY-PARAM-UINT32-ST; + } + } + + grouping PMAP-DATA-HD { + description + "PMAP DATA HD"; + uses POLICY-MAP-BG; + } + + grouping ACTION-AFMON-REACT-INFO-P { + description + "ACTION AFMON REACT INFO P"; + uses ACTION-AFMON-REACT-INFO; + } + + grouping POLICY-SUB-ACTIONS-T { + description + ""; + list sub-action-attribute { + description + ""; + uses POLICY-SUB-ACTION-ATTR-T; + } + } + + grouping PLMGR-PIPELINE-CAP-BG { + description + " Pipeline capabilities details"; + list pipeline-capability { + description + "Pipelinecapability"; + uses PLMGR-APP-PLN-CAPS-T; + } + } + + grouping ACTION-MARK-INFO-ST { + description + "Mark action"; + leaf type { + type Mark-type-en; + description + "type"; + } + leaf mark-flags { + type uint32; + description + "mark flags"; + } + leaf value { + type uint16; + description + "value"; + } + } + + grouping ACTION-TIMEOUT-IDLE-ST { + description + "ACTION TIMEOUT IDLE ST"; + leaf secs { + type uint32; + description + "secs"; + } + } + + grouping ACTION-AFMON-MDI-INFO-P { + description + "ACTION AFMON MDI INFO P"; + uses ACTION-AFMON-MDI-INFO-ST; + } + + grouping ACTION-MINBW-INFO-ST { + description + "Min BW action"; + container bw { + description + "bw"; + uses POLICY-PARAM-UINT32-ST; + } + } + + grouping POLICY-MAP-NAME-TYPE { + description + "Policy-map name type info"; + list policy-map-name-type { + description + "policy map type and name"; + uses POLICY-MAP-TYPE-N-NAME-ST; + } + } + + grouping POLICY-MAP-HD-ST { + description + "POLICY MAP HD ST"; + container data-hd { + description + "data hd"; + uses POLICY-MAP-NAME-TYPE; + } + } + + grouping MATCH-DOMAIN-ST { + description + "Domain Format"; + leaf domain-name { + type string; + description + "domain name"; + } + leaf format-name { + type string; + description + "format name"; + } + } + + grouping STRING-ARRAY { + description + "STRING ARRAY"; + leaf-list string-array { + type string; + description + "string array"; + } + } + + grouping ACTION-ACCT-AAA-LIST-ST { + description + "ACTION ACCT AAA LIST ST"; + leaf aaa-list-name { + type string; + description + "aaa list name"; + } + leaf secs { + type uint32; + description + "secs"; + } + } + + grouping PMAP-VAR-INFO-ST { + description + "contains the name of the + variable argument and the value configured"; + container val { + description + "val"; + uses PLMGR-VAR-VAL-UN; + } + leaf name { + type string { + length "0..32"; + } + description + "name"; + } + leaf id { + type uint32; + description + "id"; + } + } + + grouping PLMGR-PMAP-STR-TARGETS-BG { + description + "Policymap and target info returned to the show + client"; + leaf-list targets { + type string; + description + "targets"; + } + leaf-list parent-targets { + type string; + description + "parent targets"; + } + } + + grouping IPV6-ADDR-ARRAY { + description + "IPV6 ADDR ARRAY"; + list ipv6-addr-array { + description + "ipv6 addr array"; + uses MATCH-IPV6-ST; + } + } + + grouping PLMGR-APP-PLN-CAPS-T { + description + " Pipe line capabilty info"; + leaf pipeline-id { + type uint32; + description + "Pipe line id"; + } + leaf description { + type string; + description + "Description"; + } + leaf-list table-type { + type Policy-map-table-type-e; + description + "List of table types in the pipeline in the + order"; + } + } + + grouping PLMGR-APP-GL-STATUS-CAP-T { + description + "Status capabilty of a network element"; + leaf status-per-match { + type boolean; + description + "Filter operation status capability"; + } + leaf status-per-action { + type boolean; + description + "Action operation status capability"; + } + leaf status-per-inline-class { + type boolean; + description + "Inline class operation status capability"; + } + leaf status-per-class-map { + type boolean; + description + "Class map operation status capability"; + } + leaf status-per-policy-map { + type boolean; + description + "Policy map operation status capability"; + } + leaf status-per-bulk { + type boolean; + description + "Bulk operation status capability"; + } + } + + grouping POLICY-SUB-ACTION-ATTR-T { + description + ""; + container action-attribute { + description + ""; + uses POLICY-ACTION-ATTR-T; + } + leaf sub-action { + type uint32; + description + ""; + } + } + + grouping ACTION-AFMON-FMM-INFO-ST { + description + "AFMon flow monitor configuration"; + leaf fmm-name { + type string { + length "0..33"; + } + description + "flow monitor name"; + } + } + + grouping ACTION-WRED-INFO-ST { + description + "WRED parameters info structure"; + container match-ranges { + description + "match ranges"; + uses UINT8-RNG-ARRAY; + } + container min-threshold { + description + "min threshold"; + uses POLICY-PARAM-UINT32-ST; + } + container max-threshold { + description + "max threshold"; + uses POLICY-PARAM-UINT32-ST; + } + leaf type { + type Wred-type-en; + description + "cos/prec/dscp/ based WRED"; + } + leaf wred-flags { + type uint32; + description + "wred flags"; + } + container probability { + description + "probability"; + uses POLICY-PARAM-UINT32-ST; + } + } + + grouping ACTION-AFMON-FLOW-PARM-INFO-P { + description + "ACTION AFMON FLOW PARM INFO P"; + uses ACTION-AFMON-FLOW-PARM-INFO-ST; + } + + grouping ACTION-MARK-INFO-P { + description + "ACTION MARK INFO P"; + uses ACTION-MARK-INFO; + } + + grouping ACTION-PUNT-INFO-ST { + description + "punt action"; + leaf sn-type { + type Dpss-snid-type-en; + description + "service node ID type"; + } + leaf sn-index { + type uint32; + description + "service node index"; + } + leaf sn-name { + type string; + description + "service node name"; + } + leaf app-id { + type uint32; + description + "application ID"; + } + leaf local-id { + type uint32; + description + "local ID"; + } + leaf vsnode-type { + type Vsvc-service-type-t; + description + "vservice node type"; + } + } + + grouping PLMGR-VRF-STATS-ARR-BG { + description + "The array bag"; + leaf pmap-name { + type string; + description + "pmap name"; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf appln-type { + type uint32; + description + "appln type"; + } + leaf addr-family { + type uint32; + description + "addr family"; + } + leaf rc { + type int32; + description + "rc"; + } + list plmgr-vrf-stats { + description + "plmgr vrf stats"; + uses PLMGR-VRF-STATS-BG; + } + } + + grouping UINT8-RNG-ARRAY { + description + "UINT8 RNG ARRAY"; + list uint8_rng_array { + description + "uint8 rng array"; + uses UINT8-RNG-ST; + } + } + + grouping POLICE-ACTION-ARRAY { + description + "POLICE ACTION ARRAY"; + list police-action-array { + description + "police action array"; + uses POLICE-ACTION-UN; + } + } + + grouping POLICY-MAP-TYPE-N-NAME-ST { + description + "POLICY MAP TYPE N NAME ST"; + leaf name { + type Policy-map-name; + description + "name"; + } + leaf type { + type Policy-map-type-en; + description + "type"; + } + } + + grouping ACTION-PBF-INFO-P { + description + "ACTION PBF INFO P"; + uses ACTION-PBF-INFO-ARRAY; + } + + grouping ACTION-ACCT-EVENT-INFO-P { + description + "ACTION ACCT EVENT INFO P"; + uses ACTION-ACCOUNTING-EVENT-ST; + } + + grouping ACTION-SET-TIMER-ST { + description + "ACTION SET TIMER ST"; + leaf timer-name { + type string; + description + "timer name"; + } + leaf duration { + type uint32; + description + "duration"; + } + leaf absolute-time { + type string; + description + "absolute time"; + } + } + + grouping ACTION-AFMON-RTP-INFO-ST { + description + "AFMon RTP Configuration"; + leaf action-metric-type { + type Policy-action-en; + description + "metric type"; + } + leaf min-sequential { + type uint32; + description + "min sequential"; + } + leaf max-dropout { + type uint32; + description + "max dropout"; + } + leaf max-misorder { + type uint32; + description + "max misorder"; + } + leaf seq-ext-cop4 { + type uint32; + description + "enable seq extension cop4"; + } + list clock-rate { + description + "clock rate"; + uses AFMON-RTP-CLOCK-RATE-ST; + } + } + + grouping PCLASS-MOD-DATA-HD { + description + "PCLASS MOD DATA HD"; + uses POLICY-CLASS-INFO-MOD-BG; + } + + grouping PLMGR-PCLASS-DIFF-BG { + description + "Policy-class diff Bag"; + container del { + description + "del"; + uses POLICY-CLASS-INFO-UN; + } + container mod { + description + "mod"; + uses POLICY-CLASS-INFO-UN; + } + container add { + description + "add"; + uses POLICY-CLASS-INFO-UN; + } + } + + grouping ACTION-MARK2-INFO-P { + description + "ACTION MARK2 INFO P"; + uses ACTION-MARK2-INFO; + } + + grouping ACTION-IPV6-NH-INFO-ST { + description + "ipv6 next hop action"; + leaf ipv6-nh-addr { + type inet:ipv6-address; + description + "IPV6 Address"; + } + leaf vrf-name { + type string; + description + "Vrf name"; + } + } + + grouping PLMGR-APP-GL-ATOMICITY-CAP-T { + description + " Atomicity capability of network element "; + leaf atomicity-per-bulk { + type boolean; + description + "Specifies policymgr bulk configuration atomicity + supported or not"; + } + leaf atomicity-per-inline-class { + type boolean; + description + "Specifies policymgr inline class configuration + atomicity supported or not"; + } + leaf atomicity-per-policy-map { + type boolean; + description + "Specifies policymgr policy-map configuration + atomicity supported or not"; + } + } + + grouping PLMGR-APP-TB-MATCH-CAP-T { + description + "Match capability"; + leaf match-capability-type { + type Match-cap-e; + description + "Match type"; + } + list match-attribute { + description + "Match attribute"; + uses PLMGR-MATCH-ATTR-UN; + } + } + + grouping ACTION-STOP-TIMER-ST { + description + "ACTION STOP TIMER ST"; + leaf timer-name { + type string; + description + "timer name"; + } + } + + grouping CHLD-POL-ENC-UNION { + description + "ACTION SERVICE POLICY INFO ARRAY"; + list action-policy-info-st { + description + "child policy info"; + uses CHLD-POL-ENC-UN; + } + } + + grouping CHLD-POL-ENC-UN { + description + "Union of object name and app object ptr"; + container info { + when "../enc = 'policy-obj-enc-name'" { + description + "../enc = 'POLICY_OBJ_ENC_NAME'"; + } + description + "info"; + uses POLICY-MAP-TYPE-N-NAME-ST; + } + container hd-info { + when "../enc = 'policy-obj-enc-hdl'" { + description + "../enc = 'POLICY_OBJ_ENC_HDL'"; + } + description + "hd info"; + uses POLICY-MAP-HD-ST; + } + leaf enc { + type Policy-obj-enc-en; + description + "enc"; + } + } + + grouping POLICY-CLASS-INFO-BG { + description + "Class per policy info"; + list policy-class-info-bg { + description + "policy class info bg"; + container clmp-p { + description + "clmp p"; + uses CLASS-MAP-BG; + } + container act-infop { + description + "act infop"; + uses POLICY-ACTION-INFO-ST; + } + container nlri-infop { + description + "nlri info pointer"; + uses PCLASS-NLRI-INFO-ST; + } + leaf policy-class-hd { + type uint32; + description + "policy class hd"; + } + leaf seq { + type uint32; + description + "seq"; + } + leaf flags { + type uint32; + description + "flags"; + } + leaf ctype { + type Class-map-type-en; + description + "ctype"; + } + leaf num-actions { + type uint16; + description + "num actions"; + } + leaf version { + type uint8; + description + "version"; + } + leaf exe-strat { + type Pclass-exec-strat-en; + description + "exe strat"; + } + } + } + + grouping ACTION-TEMPLATE-ST { + description + "ACTION TEMPLATE ST"; + leaf template-name { + type string; + description + "template name"; + } + leaf aaa-list-name { + type string; + description + "aaa list name"; + } + leaf flags { + type uint32; + description + "flags"; + } + } + + grouping ACTION-QLIMIT-INFO-ARRAY { + description + "ACTION QLIMIT INFO ARRAY"; + list action-qlimit-info-array { + description + "action qlimit info array"; + uses ACTION-QLIMIT-INFO-ST; + } + } + + grouping UINT16-ARRAY { + description + "UINT16 ARRAY"; + leaf-list uint16_array { + type uint16; + description + "uint16 array"; + } + } + + grouping ACTION-MARK2-INFO-ST { + description + "Mark action"; + leaf value { + type uint32; + description + "value"; + } + leaf value-overflow { + type uint16; + description + "value overflow"; + } + leaf type { + type Mark-type-e; + description + "type"; + } + leaf mark-flags { + type uint8; + description + "mark flags"; + } + } + + grouping ACTION-AFMON-REACT-INFO { + description + "ACTION AFMON REACT INFO"; + list action-afmon-react-info { + description + "action afmon react info"; + uses ACTION-AFMON-REACT-ST; + } + } + + grouping PLMGR-APP-TB-STATS-CAP-T { + description + " Table stats capability"; + leaf class-aggregate-targetaggregate-stats { + type boolean; + description + "Specifies if complete table stats is supported + or not"; + } + leaf class-target-aggregate { + type boolean; + description + "Specifies if class statistics aggregated for + all targets is supporte dor not"; + } + leaf class-target-stats { + type boolean; + description + "Specifies if class statistics for each target + supported or not"; + } + leaf table-target-stats { + type boolean; + description + "Specifies if per targets statistics retrieval is + supporte dor not"; + } + leaf action-taget-stats { + type boolean; + description + "Specifies per action per target statistics + supoorted or not"; + } + } + + grouping PROTO-ICMP-ST { + description + "PROTO ICMP ST"; + leaf type { + type uint8; + description + "Protocol type"; + } + leaf code { + type uint8; + description + "Protocol code"; + } + } + + grouping ACTION-OUTPUT-INTERFACE-INFO-ST { + description + "output_interface action"; + leaf out-ifname { + type string; + description + "output interface name"; + } + } + + grouping VLAN-ID-ARRAY { + description + "VLAN ID ARRAY"; + list vlan-id-array { + description + "vlan id array"; + uses VLAN-ID-ST; + } + } + + grouping PLMGR-PMAP-TARGETS-BG { + description + "Policymap and targets info. returned to Policymgr + (from policy client)"; + leaf policy-map-name { + type string { + length "0..64"; + } + description + "PolicyMapName"; + } + leaf num-targets { + type uint32; + description + "NumTargets"; + } + leaf num-parent-targets { + type uint32; + description + "NumParentTargets"; + } + leaf-list pmap-targets { + type uint8; + description + "pmap targets"; + } + leaf-list pmap-parent-targets { + type uint8; + description + "pmap parent targets"; + } + } + + grouping PLMGR-PMAP-LIST { + description + "policy-map list"; + leaf object-type { + type Plmgr-appln-type-en; + description + "Application type configured"; + } + leaf policy-map-name { + type string { + length "0..64"; + } + description + "Name of Policymap referencing a Classmap"; + } + } + + grouping ACTION-REDIRECT-INFO-P { + description + "ACTION REDIRECT INFO P"; + uses ACTION-REDIRECT-INFO-ST; + } + + grouping POLICY-EVENT-INFO-BG { + description + "Event info bag"; + list policy-event-info-bg { + description + "policy event info bg"; + container class-infop { + description + "class infop"; + uses POLICY-CLASS-INFO-BG; + } + leaf event-type { + type Pevent-type-en; + description + "event type"; + } + leaf cond-eval { + type Pevent-cond-eval-en; + description + "cond eval"; + } + } + } + + grouping INLINE-CMAP-DATA-HD { + description + "INLINE CMAP DATA HD"; + uses INLINE-CLASS-MAP-BG; + } + + grouping UINT8-RNG-ST { + description + "UINT8 RNG ST"; + leaf min { + type uint8; + description + "Lower limit of the range"; + } + leaf max { + type uint8; + description + "Upper limit of the range"; + } + } + + grouping PLMGR-APP-TB-CAPS-T { + description + "Policymgr application table capabilty info"; + container stats-capabilty { + description + "Stats capabaility"; + uses PLMGR-APP-TB-STATS-CAP-T; + } + container transient-capability { + description + "Transient capability"; + uses PLMGR-APP-TB-TRANSIENT-CAP-T; + } + container persistent-capability { + description + "Persistent capability"; + uses PLMGR-APP-TB-PERSISTENT-CAP-T; + } + container class-capability { + description + "Class capabaility"; + uses PLMGR-APP-TB-CLASS-CAP-T; + } + leaf table-type { + type Policy-map-table-type-e; + description + " Table type"; + } + leaf-list forwarding-type { + type Plmgr-app-fwding-type-e; + description + "Forwarding type supported "; + } + list match-capability { + description + "Match capability "; + uses PLMGR-APP-TB-MATCH-CAP-T; + } + list action-capability { + description + "Action capability"; + uses PLMGR-APP-TB-ACTION-CAP-T; + } + } + + grouping DOMAIN-ARRAY { + description + "DOMAIN ARRAY"; + list domain-array { + description + "domain array"; + uses MATCH-DOMAIN-ST; + } + } + + grouping FLOW-KEY-ST { + description + "FLOW KEY ST"; + container flow-keys { + description + "flow keys"; + uses FLOW-KEY-ARRAY; + } + leaf max-count { + type uint16; + description + "Maximum count of flows"; + } + leaf idle-timeout { + type uint16; + units "second"; + description + "Idle timeout of flows (in seconds)"; + } + } + + grouping POLICY-MAP-HDR-BG { + description + "Policy-map Header Bag"; + leaf name { + type Policy-map-name; + description + "name"; + } + leaf type { + type Policy-map-type-en; + description + "type"; + } + leaf table-id { + type uint32; + description + "table id"; + } + leaf flags { + type uint32; + description + "flags"; + } + } + + grouping ACTION-TEMPLATE-INFO-P { + description + "ACTION TEMPLATE INFO P"; + uses ACTION-TEMPLATE-ST; + } + + grouping ACTION-HTTPR-INFO-P { + description + "ACTION HTTPR INFO P"; + uses ACTION-HTTPR-INFO-ST; + } + + grouping ACTION-POLICE-INFO-P { + description + "ACTION POLICE INFO P"; + uses ACTION-POLICE-INFO-ST; + } + + grouping VLAN-ID-ST { + description + "VLAN ID ST"; + leaf min { + type uint16; + description + "Lower limit of the range"; + } + leaf max { + type uint16; + description + "Upper limit of the range"; + } + leaf mask { + type uint16; + description + "VLAN mask"; + } + } + + grouping PLMGR-APP-GL-CAP-T { + description + "Global capability of network element"; + container system-capability { + description + "system capability"; + uses PLMGR-APP-GL-SYSTEM-CAP-T; + } + container atomicity-capability { + description + "atomicity capability"; + uses PLMGR-APP-GL-ATOMICITY-CAP-T; + } + container stats-capability { + description + "stats capability"; + uses PLMGR-APP-GL-STATS-CAP-T; + } + container cookie-capability { + description + "cookie capability"; + uses PLMGR-APP-GL-COOKIE-CAP-T; + } + container status-capability { + description + "status capability"; + uses PLMGR-APP-GL-STATUS-CAP-T; + } + container bulk-best-effort-capability { + description + "bulk best effort capability"; + uses PLMGR-APP-GL-BULK-BEST-EFFORT-CAP-T; + } + } + + grouping ACTION-WRED-INFO { + description + "ACTION WRED INFO"; + list action-wred-info { + description + "action wred info"; + uses ACTION-WRED-INFO-ST; + } + } + + grouping FLOW-KEY-ARRAY { + description + "FLOW KEY ARRAY"; + leaf keys { + type yang:hex-string; + description + "keys"; + } + leaf num { + type uint8; + description + "num"; + } + } + + grouping UINT8-ARRAY { + description + "UINT8 ARRAY"; + leaf-list uint8_array { + type uint8; + description + "uint8 array"; + } + } + + grouping PCLASS-NLRI-INFO-ST { + description + "nlri info structure"; + container nlri { + description + "nlri value"; + uses UINT8-ARRAY; + } + } + + grouping POLICY-ACTION-ATTR-T { + description + " Policy action attribute"; + leaf policy-action-exec-type { + type Policy-action-exec-type-e; + description + "policy action exec type"; + } + leaf num-instances { + type uint32; + description + "num instances"; + } + } + + grouping ACTION-QUERY-ANCP-SESSION-ST { + description + "ACTION QUERY ANCP SESSION ST"; + leaf enable { + type boolean; + description + "enable"; + } + } + + grouping MASK-ATTR-T { + description + "Mask attributes for a match type"; + leaf subnet { + type boolean; + description + "Subnet mask support for a match type"; + } + leaf arbitrary { + type boolean; + description + "Arbitrary mask support for a match type"; + } + leaf wild-card { + type boolean; + description + "Wild card mask support for a match type"; + } + } + + grouping PLMGR-GLOBAL-CAP-BG { + description + "Global Capabaility details "; + list global-capability { + description + "Global capability"; + uses PLMGR-APP-GL-CAP-T; + } + } + + grouping UINT16-RNG-ST { + description + "UINT16 RNG ST"; + leaf min { + type uint16; + description + "Lower limit of the range"; + } + leaf max { + type uint16; + description + "Upper limit of the range"; + } + } + + grouping ACTION-PREPAID-CFG-ST { + description + "ACTION PREPAID CFG ST"; + leaf prepaid-config-profile-name { + type string; + description + "prepaid config profile name"; + } + } + + grouping PLMGR-APP-DB-BG { + description + "Per application Classmap/Policymap database"; + leaf object-type { + type Plmgr-appln-type-en; + description + "Application type configured"; + } + leaf total-objects { + type uint32; + description + "Total number of objects configured for a + specific object type"; + } + leaf transient { + type boolean; + description + "Transient object"; + } + list reference { + description + "Each Policymap details"; + uses PLMGR-OBJ-REF-PMAP-BG; + } + list objects { + description + "Each object details"; + uses PLMGR-OBJ-REF-SUMMARY-BG; + } + list class-map-reference { + description + "Each Classmapdetails"; + uses PLMGR-OBJ-CMAP-DETAIL-BG; + } + } + + grouping TARGETS { + description + "Common node of node, global"; + container target-policy-map-types { + description + "Targets of a policymap"; + list target-policy-map-type { + key "type"; + description + "Policymgr application type"; + container policy-map-targets { + description + "Policy-map table"; + list policy-map-target { + key "policy-map-name"; + description + "Policy-map targets"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses PLMGR-PMAP-STR-TARGETS-BG; + } + } + container policy-map-target-summary { + description + "Policy-map table"; + uses PLMGR-PMAP-TARGETS-SUMMARY-BG; + } + container target-summary-per-policy-maps { + description + "Policy-map table per Policy-map"; + list target-summary-per-policy-map { + key "policy-map-name"; + description + "Policy-map targets summary"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses PLMGR-PMAP-TARGETS-SUMMARY-BG; + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + } + + grouping CLASS-MAP { + description + "Common node of node, global"; + container class-map { + description + "List of classmap details"; + container class-map-types { + description + "Application type of a classmap"; + list class-map-type { + key "type"; + description + "Policymgr application type"; + container class-map-details { + description + "Class-map detail table"; + list class-map-detail { + key "class-map-name"; + description + "Class-map detail information"; + leaf class-map-name { + type string { + length "1..63"; + } + description + "Name of class-map"; + } + uses PLMGR-APP-DB-BG; + } + } + container class-maps { + description + "Class-map definition table"; + list class-map { + key "class-map-name"; + description + "Class-map configuration"; + leaf class-map-name { + type string { + length "1..63"; + } + description + "Name of class-map"; + } + uses CLASS-MAP-BG; + } + } + container class-map-briefs { + description + "Class-map brief table"; + list class-map-brief { + key "class-map-name"; + description + "Class-map brief information"; + leaf class-map-name { + type string { + length "1..63"; + } + description + "Name of class-map"; + } + uses PLMGR-APP-DB-BG; + } + } + leaf type { + type Policymgr-class-map; + description + "The application type"; + } + } + } + } + } + + grouping SUMMARY { + description + "Common node of node, global"; + container summary { + description + "Summary of policy-maps and class-maps configured"; + uses PLMGR-SUMMARY-BG; + } + } + + grouping POLICY-MAP { + description + "Common node of node, global"; + container policy-map { + description + "List of policymap details"; + container transient-policy-map-type-xr { + description + "Application type of transient policy-map"; + list transient-policy-map-type { + key "type"; + description + "Transient policy-map type"; + container transient-policy-map-names { + description + "Transient policy-map definition table"; + list transient-policy-map-name { + key "policy-map-name"; + description + "Transient policy-map definition table"; + container class-handles { + description + "Transient policy-map class handle table"; + list class-handle { + key "inline-classhandle"; + description + "Transient policy-map class handle"; + leaf inline-classhandle { + type uint32 { + range "0..4294967295"; + } + description + "inline class handle"; + } + uses POLICY-MAP-BG; + } + } + container class-seq-nums { + description + "Transient policy-map sequence number table"; + list class-seq-num { + key "sequence-num"; + description + "Transient policy-map sequence number"; + leaf sequence-num { + type uint32 { + range "1..4294967295"; + } + description + "sequence number"; + } + uses POLICY-MAP-BG; + } + } + container definition { + description + "Transient Policy-map type name"; + uses POLICY-MAP-BG; + } + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + container policy-map-unused-types { + description + "Policy-map unused table"; + list policy-map-unused-type { + key "type"; + description + "Policy-map unused"; + container unuseds { + description + "Policy-map unused"; + list unused { + key "policy-map-name"; + description + "Policy-map unused information"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses PLMGR-APP-DB-BG; + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + container policy-map-types { + description + "Application type of a policymap"; + list policy-map-type { + key "type"; + description + "Policymgr application type"; + container policy-maps { + description + "Policy-map definition table"; + list policy-map { + key "policy-map-name"; + description + "Policy-map configuration"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses POLICY-MAP-BG; + } + } + container policy-map-details { + description + "Policy-map table"; + list policy-map-detail { + key "policy-map-name"; + description + "Policy-map detail information"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses PLMGR-APP-DB-BG; + } + } + container vrf-table { + description + "VRF table"; + xr:xr-xml-map "policymgr_oper:VRFTable"; + list vrf { + key "vrf-name"; + description + "VRF configuration"; + xr:xr-xml-map "policymgr_oper:VRF"; + leaf vrf-name { + type string { + length "1..63"; + } + description + "Name of Vrf"; + xr:xr-xml-map "policymgr_oper:VRFName"; + } + container afi-table { + description + "AFI table"; + xr:xr-xml-map "policymgr_oper:AfITable"; + list afi { + key "afi-type"; + description + "Address family config"; + xr:xr-xml-map "policymgr_oper:AfI"; + leaf afi-type { + type afi-enum; + description + "Name of AFI"; + xr:xr-xml-map "policymgr_oper:Type"; + } + container stats { + xr:xr-xml-map "policymgr_oper:VrfStats"; + uses PLMGR-VRF-STATS-ARR-BG; + } + } + } + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + container transient-policy-map-types { + description + "Application type of transient policy-map list"; + list transient-policy-map-type { + key "type"; + description + "Transient policy-map type"; + container transient-list-unuseds { + description + "Transient policy-map list unused table"; + list transient-list-unused { + key "policy-map-name"; + description + "Policy-map list unused"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses PLMGR-APP-DB-BG; + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + } + } + + grouping DETAIL { + description + "Common node of transient-input, transient-output"; + container detail { + description + "Policy map"; + uses POLICY-MAP-APPLIED-SHOW-BG; + } + } + + grouping POLICYMGR-OPER-DETAIL { + description + "Common node of transient-input, + transient-outputCommon node of output, input"; + container detail { + description + "WORD interface name"; + uses POLICY-MAP-APPLIED-SHOW-BG; + } + } + + container policy-manager { + config false; + description + "Policy-map operational data"; + container global { + description + "Global QOS operational data"; + container policy-map-global-cap { + description + "Policy Global Capability"; + uses PLMGR-GLOBAL-CAP-BG; + } + container policy-map-table-cap { + description + "Policy Table Capability"; + xr:xr-xml-map "policymgr_oper:TableCapabilty"; + container policy-table-cap-types { + description + "Table Capability Types"; + xr:xr-xml-map "policymgr_oper:TableType"; + container l2any { + description + "Tablecap for l2any"; + uses PLMGR-TABLE-CAP-BG; + } + container l2l3 { + description + "Tablecap for l2l3"; + uses PLMGR-TABLE-CAP-BG; + } + container l3ds { + description + "Tablecap for l3ds"; + uses PLMGR-TABLE-CAP-BG; + } + container l3ipv4 { + description + "Tablecap for l3ipv4"; + uses PLMGR-TABLE-CAP-BG; + } + container qos-in { + description + "Tablecap for qos-in"; + uses PLMGR-TABLE-CAP-BG; + } + container qos-out { + description + "Tablecap for qos-out"; + uses PLMGR-TABLE-CAP-BG; + } + container traffic-in { + description + "Tablecap for traffic-in"; + uses PLMGR-TABLE-CAP-BG; + } + } + } + container policy-map-applied-types { + description + "List of Applied policymap details"; + list policy-map-applied-type { + key "type"; + description + "Policymgr application type"; + container if-names { + description + "Interface table"; + list if-name { + key "interface-name"; + description + "WORD interface name"; + container input { + description + "Input direction table"; + uses POLICYMGR-OPER-DETAIL; + } + container output { + description + "Output direction table"; + uses POLICYMGR-OPER-DETAIL; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + container transient-policy-map-targets-types { + description + "Transient policy-map target table"; + list transient-policy-map-targets-type { + key "type"; + description + "Transient Policymgr application type"; + container transient-target-summary-per-policy-maps { + description + "Transient Policy-map table per Policy-map"; + list transient-target-summary-per-policy-map { + key "policy-map-name"; + description + "Policy-map targets summary"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses PLMGR-PMAP-TARGETS-SUMMARY-BG; + } + } + container transient-policy-map-target-summary { + description + "Transient Policy-map table"; + uses PLMGR-PMAP-TARGETS-SUMMARY-BG; + } + container transient-policy-map-targets { + description + "Transient Policy-map table"; + list transient-policy-map-target { + key "policy-map-name"; + description + "Transient Policy-map targets"; + leaf policy-map-name { + type string { + length "1..63"; + } + description + "Name of policy-map"; + } + uses PLMGR-PMAP-STR-TARGETS-BG; + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + container transient-policy-map-applied-types { + description + "Transient policy-map applied type"; + list transient-policy-map-applied-type { + key "type"; + description + "Transient policy-map applied type"; + container transient-interface-names { + description + "Interface table"; + list transient-interface-name { + key "interface-name"; + description + "WORD interface name"; + container transient-output { + description + "Output direction table"; + uses DETAIL; + } + container transient-input { + description + "Input direction table"; + uses DETAIL; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + } + } + leaf type { + type Policymgr-policy-map; + description + "The application type"; + } + } + } + uses TARGETS; + uses CLASS-MAP; + uses POLICY-MAP; + uses SUMMARY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-cfg.yang new file mode 100644 index 000000000..ea0272d90 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-cfg.yang @@ -0,0 +1,324 @@ +module Cisco-IOS-XR-infra-rcmd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-rcmd-cfg"; + prefix infra-rcmd-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 infra-rcmd package configuration. + + This module contains definitions + for the following management objects: + router-convergence: Configure Router Convergence Monitoring + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rcmd-priority { + type enumeration { + enum "critical" { + value 0; + description + "Critical routes"; + } + enum "high" { + value 1; + description + "High priority routes"; + } + enum "medium" { + value 2; + description + "Medium priority routes"; + } + enum "low" { + value 3; + description + "Low priority routes"; + } + } + description + "Rcmd priority"; + } + + typedef Protocol-name { + type enumeration { + enum "ospf" { + value 0; + description + "Configure parameters related to OSPF"; + } + enum "isis" { + value 1; + description + "Configure parameters related to ISIS"; + } + } + description + "Protocol name"; + } + + container router-convergence { + description + "Configure Router Convergence Monitoring"; + container protocols { + description + "Table of Protocol"; + list protocol { + key "protocol-name"; + description + "Protocol for which to configure RCMD parameters"; + container priorities { + description + "Table of Priority"; + list priority { + key "rcmd-priority"; + description + "Priority"; + leaf threshold { + type uint32; + description + "Threshold value for convergence (in msec)"; + } + leaf leaf-networks { + type uint32 { + range "10..100"; + } + description + "Specify the maximum number of leaf networks + monitored"; + } + leaf disable { + type empty; + description + "Disables the monitoring of route convergence + for specified priority"; + } + leaf enable { + type empty; + description + "Enable Priority. Deletion of this object + also causes deletion of all associated + objects under Priority."; + } + leaf frr-threshold { + type uint32 { + range "1..100"; + } + units "percentage"; + description + "Threshold value for Fast ReRoute Coverage + (in percentage)"; + } + leaf rcmd-priority { + type Rcmd-priority; + description + "Specify the priority"; + } + } + } + leaf enable { + type empty; + description + "Enable Protocol for which to configure RCMD + parameters. Deletion of this object also + causes deletion of all associated objects + under Protocol."; + } + leaf protocol-name { + type Protocol-name; + description + "Specify the protocol"; + } + } + } + container storage-location { + presence "Indicates a storage-location node is configured."; + description + "Absolute directory path for saving the archive + files. Example /disk0:/rcmd/ or + /rcmd/"; + leaf diagnostics { + type string; + description + "Absolute directory path for storing diagnostic + reports. Example /disk0:/rcmd/ or + /rcmd/"; + } + leaf diagnostics-size { + type uint32 { + range "5..80"; + } + description + "Maximum size of diagnostics dir (5% - 80%) for + local storage."; + } + leaf reports-size { + type uint32 { + range "5..80"; + } + description + "Maximum size of reports dir (5% - 80%) for + local storage."; + } + leaf reports { + type string; + description + "Absolute directory path for storing reports. + Example /disk0:/rcmd/ or /rcmd/"; + } + } + container mpls-ldp { + presence "Indicates a mpls-ldp node is configured."; + description + "RCMD related configuration for MPLS-LDP"; + container remote-lfa { + presence "Indicates a remote-lfa node is configured."; + description + "Monitoring configuration for Remote LFA"; + leaf threshold { + type uint32 { + range "1..100"; + } + units "percentage"; + description + "Threshold value for label coverage (in + percentage)"; + } + } + } + container collect-diagnostics { + description + "Table of CollectDiagnostics"; + list collect-diagnostic { + key "node-name"; + description + "Collect diagnostics on specified node"; + leaf enable { + type empty; + description + "Enables collection of diagnostics on the + specified location"; + } + leaf node-name { + type xr:Node-id; + description + "Specified location"; + } + } + } + container nodes { + description + "Table of Node"; + list node { + key "node-name"; + description + "Configure parameters for the specified node + (Partially qualified location allowed)"; + leaf disable { + type empty; + description + "Disables the monitoring of route convergence + on specified location"; + } + leaf enable { + type empty; + description + "Enable Configure parameters for the specified + node (Partially qualified location allowed). + Deletion of this object also causes deletion + of all associated objects under Node."; + } + leaf node-name { + type xr:Pq-node-id; + description + "Wildcard expression(eg. */*/*, R/*/*, R/S/*, + R/S/I)"; + } + } + } + leaf event-buffer-size { + type uint32 { + range "100..500"; + } + description + "Event buffer size for storing event traces (as + number of events)"; + } + leaf prefix-monitor-limit { + type uint32 { + range "0..100"; + } + description + "Limits Individual Prefix Monitoring"; + } + leaf disable { + type empty; + description + "Disable the monitoring of route convergence on + the entire router"; + } + leaf enable { + type empty; + description + "Enable Configure Router Convergence Monitoring. + Deletion of this object also causes deletion of + all associated objects under RouterConvergence."; + } + leaf max-events-stored { + type uint32 { + range "10..500"; + } + description + "Maximum number of events stored in the server"; + } + leaf monitoring-interval { + type uint32 { + range "5..120"; + } + units "minute"; + description + "Interval in which to collect logs (in mins)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper-sub1.yang new file mode 100644 index 000000000..73f11b73b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper-sub1.yang @@ -0,0 +1,2824 @@ +submodule Cisco-IOS-XR-infra-rcmd-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-rcmd-oper { + prefix Cisco-IOS-XR-infra-rcmd-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-rcmd package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rcmd-show-inst-state { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown state"; + } + enum "active" { + value 1; + description + "Active state"; + } + enum "in-active" { + value 2; + description + "InActive state"; + } + enum "na" { + value 3; + description + "Max state"; + } + } + description + "instance state"; + } + + typedef Rcmd-show-intf-event { + type enumeration { + enum "create" { + value 1; + description + "Create"; + } + enum "delete" { + value 2; + description + "Delete"; + } + enum "link-up" { + value 3; + description + "LinkUp"; + } + enum "link-down" { + value 4; + description + "LinkDown"; + } + enum "primary-address" { + value 5; + description + "PrimaryAddress"; + } + enum "secondary-address" { + value 6; + description + "SecondaryAddress"; + } + enum "ipv6-link-local-address" { + value 7; + description + "Ipv6LinkLocalAddress"; + } + enum "ipv6-global-address" { + value 8; + description + "Ipv6GlobalAddress"; + } + enum "mtu" { + value 9; + description + "MTU"; + } + enum "band-width" { + value 10; + description + "BandWidth"; + } + enum "ldp-sync" { + value 11; + description + "LDPSync"; + } + enum "forward-reference" { + value 12; + description + "ForwardReference"; + } + enum "ldp-no-sync" { + value 13; + description + "LDPNoSync"; + } + } + description + "Rcmd show intf event"; + } + + typedef Rcmd-show-comp-id { + type enumeration { + enum "ospf" { + description + "OSPF component"; + } + enum "isis" { + description + "ISIS component"; + } + enum "un-known" { + description + "Max NA"; + } + } + description + "Component Info"; + } + + typedef Rcmd-show-ldp-conv-state { + type enumeration { + enum "not-full" { + description + "Not Fully Covered"; + } + enum "fully-covered" { + description + "Fully Covered"; + } + enum "coverage-above-threshold" { + description + "Backup Coverage Above Threshold"; + } + enum "coverage-below-threshold" { + description + "Backup Coverage Below Threshold"; + } + enum "coverage-flapping" { + description + "Backup Coverage is Flappping"; + } + } + description + "LDP Convergence States"; + } + + typedef Rcmd-show-ldp-session-state { + type enumeration { + enum "gr-down" { + description + "GR Down State"; + } + enum "gr-converging" { + description + "GR Converging State"; + } + enum "establishing" { + description + "Establishing State"; + } + enum "converging" { + description + "Converging State"; + } + enum "converged" { + description + "Converged State"; + } + enum "retrying" { + description + "Retrying State"; + } + enum "total" { + description + "Cumulative Coverage for all the States"; + } + } + description + "LDP Session State"; + } + + typedef Rcmd-protocol-id { + type enumeration { + enum "ospf" { + value 0; + description + "OSPF protocol"; + } + enum "isis" { + value 1; + description + "ISIS Prrotocol"; + } + enum "na" { + value 2; + description + "Max NA"; + } + } + description + "Protocol Info"; + } + + typedef Rcmd-show-ldp-neighbour-status { + type enumeration { + enum "down" { + description + "Down State"; + } + enum "up" { + description + "Up State"; + } + } + description + "LDP Adjacency Session Status"; + } + + typedef Rcmd-ldp-event { + type enumeration { + enum "neighbor" { + value 1; + description + "Neighbor Event"; + } + enum "adjacency" { + value 2; + description + "Adjacency Event"; + } + } + description + "Type of LDP Event"; + } + + typedef Rcmd-show-mem { + type enumeration { + enum "standard" { + value 0; + description + "Standard type"; + } + enum "chunk" { + value 1; + description + "Chunk type"; + } + enum "edm" { + value 2; + description + "EDM type"; + } + enum "string" { + value 3; + description + "String type"; + } + enum "static" { + value 4; + description + "Static type"; + } + enum "unknown" { + value 5; + description + "Unknown type"; + } + } + description + "RCMD Memory Manager type"; + } + + typedef Rcmd-isis-spf { + type enumeration { + enum "full" { + value 0; + description + "Full"; + } + enum "incremental" { + value 1; + description + "Incremental"; + } + enum "next-hop" { + value 2; + description + "Next hop calculation"; + } + enum "partial-route" { + value 3; + description + "Partial route calculation"; + } + } + description + "Type of an ISIS SPF run"; + } + + typedef Rcmd-isis-lvl { + type enumeration { + enum "l1" { + value 0; + description + "Level 1"; + } + enum "l2" { + value 1; + description + "Level 2"; + } + } + description + "Type of an ISIS Level"; + } + + typedef Rcmd-bag-enbl-dsbl { + type enumeration { + enum "dsbl" { + value 0; + description + "Disabled"; + } + enum "enbl" { + value 1; + description + "Enabled"; + } + } + description + "status enum"; + } + + typedef Rcmd-show-node { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Type"; + } + enum "lc" { + value 1; + description + "LC Type"; + } + enum "rp" { + value 2; + description + "RP Type"; + } + } + description + "Type of Node"; + } + + typedef Rcmd-bool-yes-no { + type enumeration { + enum "no" { + value 0; + description + "No"; + } + enum "yes" { + value 1; + description + "Yes"; + } + } + description + "Boolean enum"; + } + + typedef Rcmd-show-prcs-state { + type enumeration { + enum "success" { + value 0; + description + "Success"; + } + enum "cpu" { + value 1; + description + "Cpu overload"; + } + enum "memory" { + value 2; + description + "Memory overload"; + } + } + description + "Post Processing Info"; + } + + typedef Rcmd-bag-enable-disable { + type enumeration { + enum "disable" { + value 0; + description + "Disabled"; + } + enum "enable" { + value 1; + description + "Enabled"; + } + } + description + "status enum"; + } + + typedef Rcmd-show-ipfrr-lfa { + type enumeration { + enum "none" { + description + "No IP Frr LFA Type "; + } + enum "local" { + description + "IP Frr Local LFA"; + } + enum "remote" { + description + "IP Frr Remote LFA"; + } + } + description + "IP Frr LFA Types"; + } + + typedef Rcmd-show-route-path-change { + type enumeration { + enum "primary" { + value 0; + description + "Primary path is changed"; + } + enum "backup" { + value 1; + description + "Backup path is changed"; + } + } + description + "Type of route change"; + } + + typedef Rcmd-linecard-speed { + type enumeration { + enum "other" { + value 0; + description + "Other linecard"; + } + enum "fastest" { + value 1; + description + "Fastest linecard"; + } + enum "slowest" { + value 2; + description + "Slowest linecard"; + } + } + description + "Comparative speed of programming on linecard"; + } + + typedef Rcmd-ls-change { + type enumeration { + enum "new" { + value 0; + description + "Added"; + } + enum "delete" { + value 1; + description + "Deleted"; + } + enum "modify" { + value 2; + description + "Modified"; + } + enum "noop" { + value 3; + description + "No operation"; + } + } + description + "Type of change"; + } + + typedef Rcmd-lsa { + type enumeration { + enum "unknown" { + value 0; + description + "Invalid LSA"; + } + enum "router" { + value 1; + description + "Router LSA"; + } + enum "network" { + value 2; + description + "Network LSA"; + } + enum "summary" { + value 3; + description + "Summary LSA"; + } + enum "asbr" { + value 4; + description + "ASBR LSA"; + } + enum "external" { + value 5; + description + "External LSA"; + } + enum "multicast" { + value 6; + description + "Multicast LSA"; + } + enum "nssa" { + value 7; + description + "NSSA LSA"; + } + } + description + "Type of LSA"; + } + + typedef Rcmd-spf-state { + type enumeration { + enum "complete" { + value 0; + description + "Complete"; + } + enum "in-complete" { + value 1; + description + "InComplete"; + } + enum "collecting" { + value 2; + description + "Collecting data"; + } + enum "no-route-change" { + value 3; + description + "No Route Change"; + } + } + description + "Type of an ISIS Level"; + } + + typedef Rcmd-change { + type enumeration { + enum "none" { + value 0; + description + "Invalid"; + } + enum "add" { + value 1; + description + "Added"; + } + enum "delete" { + value 2; + description + "Deleted"; + } + enum "modify" { + value 3; + description + "Modified"; + } + enum "no-change" { + value 4; + description + "No Change"; + } + } + description + "Type of change"; + } + + typedef Rcmd-show-route { + type enumeration { + enum "ospf" { + description + "OSPF route init"; + } + enum "intra" { + description + "OSPF Intra route"; + } + enum "inter" { + description + "OSPF Inter route"; + } + enum "ext-1" { + description + "OSPF External Type-1 Route"; + } + enum "ext-2" { + description + "OSPF External Type-2 Route"; + } + enum "nssa-1" { + description + "OSPF NSSA Type-1 Route"; + } + enum "nssa-2" { + description + "OSPF NSSA Type-2 Route"; + } + enum "isis" { + description + "ISIS route init"; + } + enum "l1-summary" { + description + "ISIS L1 Summary"; + } + enum "l1" { + description + "ISIS L1"; + } + enum "l2-summary" { + description + "ISIS L2 Summary"; + } + enum "l2" { + description + "ISIS L2"; + } + enum "inter-area-summary" { + description + "ISIS Inter Area Summary"; + } + enum "inter-area" { + description + "ISIS Inter Area"; + } + enum "default-attached" { + description + "ISIS Default Route Attached"; + } + } + description + "Route Types"; + } + + typedef Rcmd-priority-level { + type enumeration { + enum "critical" { + value 0; + description + "Critical"; + } + enum "high" { + value 1; + description + "High"; + } + enum "medium" { + value 2; + description + "Medium"; + } + enum "low" { + value 3; + description + "Low"; + } + } + description + "Level of priority"; + } + + grouping RCMD-SHOW-INSTANCE { + description + "Instance Information"; + leaf instance-id { + type uint32; + description + "Instance Id"; + } + leaf instance-state { + type Rcmd-show-inst-state; + description + "Instance State"; + } + leaf instance-deleted { + type Rcmd-bool-yes-no; + description + "Instance Deleted"; + } + leaf fwd-referenced { + type Rcmd-bool-yes-no; + description + "Forward Referenced"; + } + leaf last-update-time { + type string; + description + "Last Updated Time"; + } + leaf node-id { + type uint32; + description + "Node Id"; + } + leaf spf-offset { + type uint32; + description + "SPF Offset"; + } + leaf total-spf-nos { + type uint32; + description + "Total spf nos"; + } + leaf arch-spf-run { + type uint32; + description + "spf run can be archived"; + } + leaf route-change-spf-nos { + type uint32; + description + "Route change spf nos"; + } + leaf no-route-change-spf-nos { + type uint32; + description + "No Route change spf nos"; + } + leaf not-interested-spf-nos { + type uint32; + description + "Not Interested SPF nos"; + } + leaf total-spt-nos { + type uint32; + description + "Total spt nos"; + } + } + + grouping RCMD-SHOW-INSTANCE-NAME { + description + "Instance Name Information"; + leaf name { + type string; + description + "Instance Name"; + } + leaf last-update-time { + type string; + description + "Last Updated Time"; + } + leaf total-spf-nos { + type uint32; + description + "Total spf nos"; + } + leaf route-change-spf-nos { + type uint32; + description + "Route change spf nos"; + } + leaf no-route-change-spf-nos { + type uint32; + description + "No Route change spf nos"; + } + leaf not-interested-spf-nos { + type uint32; + description + "Not Interested SPF nos"; + } + leaf lsp-regeneration-count { + type uint32; + description + "LSP Regen Count"; + } + leaf lsp-regeneration-serial { + type uint32; + description + "Last Serial"; + } + leaf arch-spf-event { + type uint32; + description + "Archive SPF event"; + } + leaf arch-lsp-regeneration { + type uint32; + description + "Archive Lsp regen"; + } + list instance { + description + "Instance Information"; + uses RCMD-SHOW-INSTANCE; + } + } + + grouping RCMD-SHOW-PROCESS-INFO { + description + "Process Information"; + leaf protocol-id { + type Rcmd-protocol-id; + description + "Protocol id"; + } + leaf process-name { + type string; + description + "Process Name"; + } + list instance-name { + description + "Instance/VRF Name"; + uses RCMD-SHOW-INSTANCE-NAME; + } + } + + grouping RCMD-SHOW-PROCESS { + description + "Process Information"; + list process { + description + "Process Information"; + uses RCMD-SHOW-PROCESS-INFO; + } + } + + grouping RCMD-SHOW-INTF-EVENT { + description + "Interface event information"; + leaf sequence-no { + type uint32; + description + "Sequence No"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf component { + type Rcmd-show-comp-id; + description + "Component info"; + } + leaf event-type { + type Rcmd-show-intf-event; + description + "Event Info"; + } + leaf event-time { + type string; + description + "Event Time"; + } + leaf primary-address { + type inet:ipv4-address; + description + "Primary Address"; + } + } + + grouping RCMD-SHOW-LDP-RLFA-LOG { + description + "LDP RLFA Logs information"; + leaf log-time { + type string; + description + "Event Time (eg: Apr 24 13:16:04.961)"; + } + leaf label-coverage-state { + type Rcmd-show-ldp-conv-state; + description + "Label Coverage State"; + } + leaf route-count { + type uint32; + description + "Total Route Count"; + } + leaf remote-label-count { + type uint32; + description + "Remote Label Count"; + } + } + + grouping RCMD-SHOW-LDP-RLFA-PQ-NODE { + description + "LDP Remote Lfa Remote Node information"; + leaf remote-node-id { + type inet:ipv4-address; + description + "Remote Node ID"; + } + leaf lsr-id { + type inet:ipv4-address; + description + "Label Space Router ID"; + } + leaf transport-address { + type inet:ipv4-address; + description + "Transport Address"; + } + leaf in-use-time { + type string; + description + "Inuse time of the Session"; + } + leaf session-state { + type Rcmd-show-ldp-session-state; + description + "Session State"; + } + leaf route-count { + type uint32; + description + "Total Route Count"; + } + leaf path-count { + type uint32; + description + "Total Path Count"; + } + leaf remote-label-count { + type uint32; + description + "Remote Label Count"; + } + leaf protected-route-count { + type uint32; + description + "Protected Route Count"; + } + leaf protected-path-count { + type uint32; + description + "Protected Path Count"; + } + } + + grouping RCMD-SHOW-LDP-RLFA-STAT { + description + "LDP RLFA Session Statistics information"; + leaf session-state { + type Rcmd-show-ldp-session-state; + description + "Session State"; + } + leaf session-count { + type uint32; + description + "LDP Session Count"; + } + leaf route-count { + type uint32; + description + "Total Route Count"; + } + leaf path-count { + type uint32; + description + "Total Path Count"; + } + leaf remote-label-count { + type uint32; + description + "Remote Label Count"; + } + leaf protected-route-count { + type uint32; + description + "Protected Route Count"; + } + leaf protected-path-count { + type uint32; + description + "Protected Path Count"; + } + } + + grouping RCMD-SHOW-LDP-RLFA-EVENT { + description + "LDP RLFA information"; + leaf event-id-xr { + type uint32; + description + "LDP-rLFA Event ID"; + } + leaf end-of-calculation-time { + type string; + description + "End of IGP LFA Calculation Time (eg: Apr 24 13 + :16:04.961)"; + } + leaf igp-protocol { + type Rcmd-protocol-id; + description + "IGP Protocol"; + } + leaf process-name { + type string; + description + "Process Name"; + } + leaf ipfrr-event-id { + type uint32; + description + "IGP IP-FRR Event ID (ref: + rcmd_show_ipfrr_event_info(EventID))"; + } + leaf below-threshold { + type boolean; + description + "Coverage Below Threshold"; + } + list session-statistic { + description + "RLFA Statistics categorized by session state"; + uses RCMD-SHOW-LDP-RLFA-STAT; + } + list remote-node { + description + "Remote Node Information"; + uses RCMD-SHOW-LDP-RLFA-PQ-NODE; + } + list logs { + description + "Logs Information"; + uses RCMD-SHOW-LDP-RLFA-LOG; + } + } + + grouping RCMD-SHOW-LDP-SESSION-EVENT { + description + "LDP Session Event"; + leaf event-id-xr { + type uint32; + description + "Event ID"; + } + leaf event-type { + type Rcmd-ldp-event; + description + "Type of event"; + } + leaf event-time { + type string; + description + "Event Time"; + } + leaf lsr-id { + type inet:ipv4-address; + description + "Label Space Router ID"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf address { + type inet:ipv4-address; + description + "transport address or adjacency address"; + } + leaf state { + type Rcmd-show-ldp-neighbour-status; + description + "Adjacency Session Status"; + } + } + + grouping RCMD-SHOW-STRING-MEMORY-INFO { + description + "string memory Information"; + leaf size { + type uint32; + description + "Size of the block"; + } + leaf total { + type uint32; + description + "Total request"; + } + leaf success { + type uint32; + description + "Cache-hit success"; + } + leaf failure { + type uint32; + description + "Cache-hit failure"; + } + } + + grouping RCMD-SHOW-EDM-MEMORY-INFO { + description + "edm memory Information"; + leaf size { + type uint32; + description + "Size of the block"; + } + leaf total { + type uint32; + description + "Total request"; + } + leaf success { + type uint32; + description + "Cache-hit success"; + } + leaf failure { + type uint32; + description + "Cache-hit failure"; + } + } + + grouping RCMD-SHOW-MEMORY-INFO { + description + "memory Information"; + leaf structure-name { + type string; + description + "Structure Name"; + } + leaf size { + type uint32; + description + "Size of the datastructure"; + } + leaf current-count { + type uint32; + description + "Current Count"; + } + leaf alloc-fails { + type uint32; + description + "Allocation Fails"; + } + leaf alloc-count { + type uint32; + description + "Allocated count"; + } + leaf freed-count { + type uint32; + description + "Freed Count"; + } + leaf memory-type { + type Rcmd-show-mem; + description + "Memory Type"; + } + } + + grouping RCMD-SHOW-MEMORY { + description + "Memory Information"; + list memory-info { + description + "Memory Info"; + uses RCMD-SHOW-MEMORY-INFO; + } + list edm-memory-info { + description + "Memory Info"; + uses RCMD-SHOW-EDM-MEMORY-INFO; + } + list string-memory-info { + description + "Memory Info"; + uses RCMD-SHOW-STRING-MEMORY-INFO; + } + } + + grouping RCMD-REGEN-LSP-INFO { + description + "Regenerated LSP information"; + leaf serial-number-xr { + type uint32; + description + "Serial Number of the session event"; + } + leaf lsp-id { + type string; + description + "LSP ID"; + } + leaf sequence-number { + type uint32; + description + "Sequence Number"; + } + leaf reception-time { + type string; + description + "Reception Time on router (in hh:mm:ss.msec)"; + } + leaf isis-level { + type Rcmd-isis-lvl; + description + "ISIS Level"; + } + leaf spf-run-number { + type uint32; + description + "SPF Run Number"; + } + leaf reason { + type string; + description + "Trigger reasons for LSP regeneration. Example: + pr^ - periodic, cr^ - clear (Check the + documentation for the entire list)"; + } + } + + grouping RCMD-LSP-INFO { + description + "LSP information"; + leaf lsp-id { + type string; + description + "LSP ID"; + } + leaf sequence-number { + type uint32; + description + "Sequence Number"; + } + leaf change-type { + type Rcmd-ls-change; + description + "Add, Delete, Modify"; + } + leaf reception-time { + type string; + description + "Reception Time on router (in hh:mm:ss.msec)"; + } + } + + grouping RCMD-ISIS-SPF-RUN-SUMMARY { + description + "SPF summary information"; + leaf topology { + type uint32; + description + "Topology index (multi-topology)"; + } + leaf isis-level { + type Rcmd-isis-lvl; + description + "ISIS Level"; + } + leaf type { + type Rcmd-isis-spf; + description + "Type of SPF"; + } + leaf threshold-exceeded { + type boolean; + description + "Threshold exceeded"; + } + leaf state { + type Rcmd-spf-state; + description + "SPF state"; + } + leaf is-data-complete { + type boolean; + description + "Whether the event has all information"; + } + leaf trigger-time { + type string; + description + "Trigger time (in hh:mm:ss.msec)"; + } + leaf duration { + type string; + description + "Duration of SPF calculation (in ss.msec)"; + } + leaf total-lsp-changes { + type uint16; + description + "Total number of LSP changes processed"; + } + list priority-summary { + description + "Convergence information summary on per-priority + basis"; + uses RCMD-PRIORITY-SUMMARY; + } + } + + grouping RCMD-ISIS-SPF-RUN { + description + "ISIS SPF run information"; + container spf-summary { + description + "SPF summary information"; + uses RCMD-ISIS-SPF-RUN-SUMMARY; + } + container node-statistics { + description + "SPF Node statistics"; + uses RCMD-STAT; + } + leaf start-time { + type string; + description + "Start time (offset from event trigger time in ss + .msec)"; + } + leaf wait-time { + type uint32; + description + "Wait time applied at SPF schedule (in msec)"; + } + leaf reason { + type string; + description + "Trigger reasons for SPF run. Example: pr^ - + periodic, cr^ - clear (Check the documentation + for the entire list)"; + } + list trigger-lsp { + description + "Trigger LSP"; + uses RCMD-LSP-INFO; + } + list priority { + description + "Convergence information on per-priority basis"; + uses RCMD-PRIORITY; + } + list lsp-processed { + description + "List of LSP changes processed"; + uses RCMD-LSP-INFO; + } + list lsp-regenerated { + description + "List of LSP regenerated"; + uses RCMD-REGEN-LSP-INFO; + } + } + + grouping RCMD-SHOW-NODE-INFO { + description + "Node Information"; + leaf node-id { + type uint32; + description + "Node Id"; + } + leaf node-name { + type string; + description + "Node Name"; + } + leaf rack-id { + type uint32; + description + "Rack Id"; + } + leaf last-update-time { + type string; + description + "Last Updated Time"; + } + leaf fwd-referenced { + type Rcmd-bool-yes-no; + description + "Forward Referenced"; + } + leaf node-type { + type Rcmd-show-node; + description + "Node Type"; + } + leaf software-state { + type uint32; + description + "Software State"; + } + leaf card-state { + type uint32; + description + "Card State"; + } + leaf node-state { + type Rcmd-bool-yes-no; + description + "Node State"; + } + leaf status { + type Rcmd-bag-enbl-dsbl; + description + "Status"; + } + leaf diag-mode { + type uint32; + description + "Diag Mode"; + } + leaf redundancy-state { + type uint32; + description + "Redundancy State"; + } + } + + grouping RCMD-SHOW-NODE { + description + "Node Information"; + list node-information { + description + "Node Info"; + uses RCMD-SHOW-NODE-INFO; + } + } + + grouping RCMD-SHOW-LTRACE { + description + "Trace Information"; + leaf trace-name { + type string; + description + "Configured Hostname"; + } + leaf total-stats { + type uint32; + description + "Server Total Status"; + } + leaf last-run-stats { + type uint32; + description + "Server Last Run Status"; + } + leaf error-stats { + type uint32; + description + "Server Error Status"; + } + } + + grouping RCMD-SHOW-SERVER-DETAIL { + description + "RCMD server detailed information"; + leaf overload-suspend { + type uint32; + description + "Overload suspend"; + } + leaf memory-suspend { + type uint32; + description + "Memory Suspend"; + } + list trace-information { + description + "Trace Information"; + uses RCMD-SHOW-LTRACE; + } + } + + grouping RCMD-SHOW-CFG-PROTO-PRIO { + description + "Priority Level Configuration"; + leaf priority-name { + type Rcmd-priority-level; + description + "Priority Level"; + } + leaf threshold { + type uint32; + description + "threshold value"; + } + leaf disable { + type Rcmd-bool-yes-no; + description + "Enable/Disable cfg"; + } + } + + grouping RCMD-SHOW-CFG-PROTO { + description + "Protocol Configuration"; + leaf protocol-name { + type string; + description + "Protocol Name"; + } + list priority { + description + "Priority level configuration"; + uses RCMD-SHOW-CFG-PROTO-PRIO; + } + } + + grouping RCMD-SHOW-SERVER { + description + "RCMD Server Information"; + leaf host-name { + type string; + description + "Configured Hostname"; + } + leaf status { + type Rcmd-bag-enable-disable; + description + "Server Status"; + } + leaf max-events { + type uint32; + description + "Maximum Events"; + } + leaf event-buffer-size { + type uint32; + description + "Event Buffer Size"; + } + leaf monitoring-interval { + type uint32; + description + "Configured Monitor Interval"; + } + leaf next-interval { + type uint32; + description + "Time for next processing"; + } + leaf max-interface-count { + type uint32; + description + "Max Interface events count"; + } + leaf interface-count { + type uint32; + description + "Interface events count"; + } + leaf node-rp-count { + type uint32; + description + "RP count"; + } + leaf node-lc-count { + type uint32; + description + "LC count"; + } + leaf diag-node-count { + type uint32; + description + "Diag Node count"; + } + leaf disabled-node-count { + type uint32; + description + "Disabled Node count"; + } + leaf in-active-node-count { + type uint32; + description + "Disabled Node count"; + } + leaf last-process-start-time { + type string; + description + "Last Processing Start Time"; + } + leaf last-process-duration { + type string; + description + "Last Processing Duration"; + } + leaf last-process-state { + type Rcmd-show-prcs-state; + description + "Process state"; + } + leaf process-count { + type uint32; + description + "Post Processing count"; + } + leaf spf-process-count { + type uint32; + description + "SPF Processing count"; + } + leaf reports-archive-path { + type string; + description + "Reports Archival Path"; + } + leaf reports-archive-node { + type string; + description + "Reports Archival Node (Applicable for local + location)"; + } + leaf last-archival-status { + type string; + description + "Last Archival Status"; + } + leaf last-archival-error { + type string; + description + "Last Archival Error"; + } + leaf last-archival-error-time { + type string; + description + "Last Archival Status"; + } + leaf archive-count { + type uint32; + description + "Archive Count"; + } + leaf diagnostics-archive-path { + type string; + description + "Diagnostics Archival Path"; + } + leaf diagnostics-archive-node { + type string; + description + "Diagnostics Archival Node (Applicable for local + location)"; + } + list protocol-config { + description + "Protocol level configuration"; + uses RCMD-SHOW-CFG-PROTO; + } + list server-detail { + description + "Detailed Information"; + uses RCMD-SHOW-SERVER-DETAIL; + } + } + + grouping RCMD-SHOW-TYPE357-STATS-INFO { + description + "prefix statistics information"; + leaf inter-area-routes { + type uint32; + description + "Total Inter-Area Routes"; + } + leaf inter-area-added { + type uint32; + description + "Total IA Routes Added"; + } + leaf inter-area-modified { + type uint32; + description + "Total IA Routes Modified"; + } + leaf inter-area-deleted { + type uint32; + description + "Total IA Routes Deleted"; + } + leaf inter-area-critical { + type uint32; + description + "Total IA Routes Critical"; + } + leaf inter-area-high { + type uint32; + description + "Total IA Routes High"; + } + leaf inter-area-medium { + type uint32; + description + "Total IA Routes Medium"; + } + leaf inter-area-low { + type uint32; + description + "Total IA Routes Low"; + } + leaf external-routes { + type uint32; + description + "Total External Routes"; + } + leaf external-added { + type uint32; + description + "Total Ext Routes Added"; + } + leaf external-modified { + type uint32; + description + "Total Ext Routes Modified"; + } + leaf external-deleted { + type uint32; + description + "Total Ext Routes Deleted"; + } + leaf external-critical { + type uint32; + description + "Total Ext Routes Critical"; + } + leaf external-high { + type uint32; + description + "Total Ext Routes High"; + } + leaf external-medium { + type uint32; + description + "Total Ext Routes Medium"; + } + leaf external-low { + type uint32; + description + "Total Ext Routes Low"; + } + } + + grouping RCMD-SHOW-PREFIX-LC-INFO { + description + "Linecard timeline details"; + leaf node-name { + type string; + description + "Linecard node name"; + } + leaf speed { + type Rcmd-linecard-speed; + description + "Relative convergence speed"; + } + leaf fib-complete { + type string; + description + "Completion point of FIB"; + } + } + + grouping RCMD-SHOW-PREFIX-TIMELINE { + description + "Timeline information details at each component + level"; + leaf route-origin { + type string; + description + "Route origin (routing protocol)"; + } + leaf ri-bv4-enter { + type string; + description + "Entry point of IPv4 RIB"; + } + leaf ri-bv4-exit { + type string; + description + "Exit point from IPv4 RIB to FIBs"; + } + leaf ri-bv4-redistribute { + type string; + description + "Route Redistribute point from IPv4 RIB to LDP"; + } + leaf ldp-enter { + type string; + description + "Entry point of LDP"; + } + leaf ldp-exit { + type string; + description + "Exit point of LDP to LSD"; + } + leaf lsd-enter { + type string; + description + "Entry point of LSD"; + } + leaf lsd-exit { + type string; + description + "Exit point of LSD to FIBs"; + } + list lc-ip { + description + "List of Linecards' completion point for IP + routes"; + uses RCMD-SHOW-PREFIX-LC-INFO; + } + list lc-mpls { + description + "List of Linecards' completion point for MPLS + labels"; + uses RCMD-SHOW-PREFIX-LC-INFO; + } + } + + grouping RCMD-SHOW-IPFRR-LFA-PATH { + description + "IP Frr Path information"; + leaf lfa-type { + type Rcmd-show-ipfrr-lfa; + description + "Type of LFA"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf neighbour-address { + type inet:ipv4-address; + description + "Nexthop Address"; + } + leaf change-type { + type Rcmd-change; + description + "Event Add/Delete"; + } + leaf path-metric { + type uint32; + description + "Path Metric"; + } + leaf remote-node-id { + type inet:ipv4-address; + description + "Remote Node ID, in case of Remote LFA"; + } + } + + grouping RCMD-SHOW-PREFIX-PATH { + description + "Prefix Path information"; + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf neighbour-address { + type inet:ipv4-address; + description + "Nexthop Address"; + } + leaf change-type { + type Rcmd-change; + description + "Event Add/Delete"; + } + leaf path-metric { + type uint32; + description + "Path Metric"; + } + list lfa-path { + description + "Backup Path Informatoin"; + uses RCMD-SHOW-IPFRR-LFA-PATH; + } + } + + grouping RCMD-SHOW-PREFIX-EVENT { + description + "Event information"; + container ip-convergence-time { + description + "Convergence time for IP route programming"; + uses RCMD-TIMESTAMP; + } + container mpls-convergence-time { + description + "Convergence time for MPLS label programming"; + uses RCMD-TIMESTAMP; + } + leaf prefix { + type inet:ipv4-address; + description + "Prefix"; + } + leaf prefix-lenth { + type uint32; + description + "Prefix length"; + } + leaf spf-run-no { + type uint32; + description + "Referenced SPF Run No (0 - Not Applicable)"; + } + leaf ipfrr-event-id { + type uint32; + description + "Referenced IP-FRR Event ID (0 - Not Applicable)"; + } + leaf threshold-exceeded { + type boolean; + description + "Threshold exceeded"; + } + leaf priority { + type Rcmd-priority-level; + description + "Event processed priority"; + } + leaf change-type { + type Rcmd-change; + description + "Event Add/Delete"; + } + leaf route-type { + type Rcmd-show-route; + description + "Route Type intra/inter/l1/l2"; + } + leaf route-path-change-type { + type Rcmd-show-route-path-change; + description + "Route Path Change Type"; + } + leaf cost { + type uint32; + description + "Protocol route cost"; + } + leaf trigger-time { + type string; + description + "Event trigger time"; + } + list path { + description + "Path information"; + uses RCMD-SHOW-PREFIX-PATH; + } + list trigger-lsa { + description + "LSA that triggered this event"; + uses RCMD-LSA-INFO; + } + list time-line { + description + "Timeline information"; + uses RCMD-SHOW-PREFIX-TIMELINE; + } + list lsa-processed { + description + "List of LSAs processed"; + uses RCMD-LSA-INFO; + } + } + + grouping RCMD-IAEXT-PRIORITY-SUMMARY { + description + "Priority Summary for Inter-area & external + calculation"; + container route-statistics { + description + "Route statistics"; + uses RCMD-STAT; + } + container ip-convergence-time { + description + "Convergence time for IP route programming"; + uses RCMD-TIMESTAMP; + } + container mpls-convergence-time { + description + "Convergence time for MPLS label programming"; + uses RCMD-TIMESTAMP; + } + leaf level { + type Rcmd-priority-level; + description + "Critical, High, Medium or Low"; + } + leaf threshold-exceeded { + type boolean; + description + "Threshold exceeded"; + } + leaf type3ls-as { + type uint32; + description + "Number of Type 3 LSA"; + } + leaf type4ls-as { + type uint32; + description + "Number of Type 4 LSA"; + } + leaf type57ls-as { + type uint32; + description + "Number of Type 5/7 LSA"; + } + } + + grouping RCMD-IAEXT-PRIORITY { + description + "Convergence information for a priority in + Inter-area and external calculation"; + container priority-summary { + description + "Summary of the priority"; + uses RCMD-IAEXT-PRIORITY-SUMMARY; + } + list convergence-timeline { + description + "Convergence timeline details"; + uses RCMD-TIMELINE; + } + list leaf-networks-added { + description + "List of Leaf Networks Added"; + uses RCMD-NETWORK; + } + list leaf-networks-deleted { + description + "List of Leaf Networks Deleted"; + uses RCMD-NETWORK; + } + } + + grouping RCMD-OSPF-IAEXT-INFO { + description + "Inter-area & external calculation information"; + list priority { + description + "Convergence information on a per-priority basis"; + uses RCMD-IAEXT-PRIORITY; + } + } + + grouping RCMD-NETWORK { + description + "Network"; + leaf address { + type inet:ipv4-address; + description + "IP address"; + } + leaf net-mask { + type uint8; + description + "Mask"; + } + } + + grouping RCMD-LC-INFO { + description + "Linecard timeline details"; + container fib-complete { + description + "Completion point of FIB"; + uses RCMD-TIME; + } + leaf node-name { + type string; + description + "Linecard node name"; + } + leaf speed { + type Rcmd-linecard-speed; + description + "Relative convergence speed"; + } + } + + grouping RCMD-TIME { + description + "The timestamps for each module"; + leaf start-time { + type string; + description + "First route process time relative to event + trigger time (in ss.msec)"; + } + leaf end-time { + type string; + description + "Last route process time relative to event + trigger time (in ss.msec)"; + } + leaf duration { + type string; + description + "Duration of processing (in ss.msec)"; + } + } + + grouping RCMD-TIMELINE { + description + "Timeline information details at each component + level"; + container route-origin { + description + "Route origin (routing protocol)"; + uses RCMD-TIME; + } + container ri-bv4-enter { + description + "Entry point of IPv4 RIB"; + uses RCMD-TIME; + } + container ri-bv4-exit { + description + "Exit point from IPv4 RIB to FIBs"; + uses RCMD-TIME; + } + container ri-bv4-redistribute { + description + "Route Redistribute point from IPv4 RIB to LDP"; + uses RCMD-TIME; + } + container ldp-enter { + description + "Entry point of LDP"; + uses RCMD-TIME; + } + container ldp-exit { + description + "Exit point of LDP to LSD"; + uses RCMD-TIME; + } + container lsd-enter { + description + "Entry point of LSD"; + uses RCMD-TIME; + } + container lsd-exit { + description + "Exit point of LSD to FIBs"; + uses RCMD-TIME; + } + list lc-ip { + description + "List of Linecards' completion point for IP + routes"; + uses RCMD-LC-INFO; + } + list lc-mpls { + description + "List of Linecards' completion point for MPLS + labels"; + uses RCMD-LC-INFO; + } + } + + grouping RCMD-PRIORITY { + description + "Convergence information for a priority"; + container priority-summary { + description + "Summary of the priority"; + uses RCMD-PRIORITY-SUMMARY; + } + list convergence-timeline { + description + "Convergence timeline details"; + uses RCMD-TIMELINE; + } + list leaf-networks-added { + description + "List of Leaf Networks Added"; + uses RCMD-NETWORK; + } + list leaf-networks-deleted { + description + "List of Leaf Networks Deleted"; + uses RCMD-NETWORK; + } + } + + grouping RCMD-LSA-INFO { + description + "LSA information"; + leaf lsa-id { + type inet:ipv4-address; + description + "LSA ID"; + } + leaf sequence-number { + type string; + description + "Sequence Number"; + } + leaf lsa-type { + type Rcmd-lsa; + description + "LSA type"; + } + leaf origin-router-id { + type inet:ipv4-address; + description + "Originating Router ID"; + } + leaf change-type { + type Rcmd-ls-change; + description + "Add, Delete, Modify"; + } + leaf reception-time { + type string; + description + "Reception Time on router (in hh:mm:ss.msec)"; + } + } + + grouping RCMD-OSPF-SPT-INFO { + description + "Dijkstra run information"; + leaf dijkstra-run-number { + type uint32; + description + "Area Dijkstra run number"; + } + leaf area-id { + type inet:ipv4-address; + description + "Area ID"; + } + leaf threshold-exceeded { + type boolean; + description + "Threshold exceeded"; + } + leaf trigger-time { + type string; + description + "Trigger time (in hh:mm:ss.msec)"; + } + leaf start-time { + type string; + description + "Start time (offset from event trigger time in ss + .msec)"; + } + leaf wait-time { + type uint32; + description + "Wait time (offset from event trigger time in ss + .msec)"; + } + leaf duration { + type string; + description + "Duration of Dijktra calculation (in ss.msec)"; + } + list trigger-lsa { + description + "LSA that triggered the Dijkstra run"; + uses RCMD-LSA-INFO; + } + list priority { + description + "Convergence information on per-priority basis"; + uses RCMD-PRIORITY; + } + list lsa-processed { + description + "List of type 1/2 LSA changes processed"; + uses RCMD-LSA-INFO; + } + } + + grouping RCMD-TIMESTAMP { + description + "Time range"; + leaf minimum-time { + type string; + units "millisecond"; + description + "Minimum time(in seconds.milliseconds)"; + } + leaf maximum-time { + type string; + units "millisecond"; + description + "Maximum time(in seconds.milliseconds)"; + } + leaf slowest-node-name { + type string; + description + "Linecard node name which took the maximum time"; + } + leaf fastest-node-name { + type string; + description + "Linecard node name which took the minimum time"; + } + } + + grouping RCMD-SHOW-FRR-STAT { + description + "Priority Summary for Frr Statistics"; + leaf total-routes { + type uint32; + description + "Total Number of Routes"; + } + leaf fully-protected-routes { + type uint32; + description + "Fully Protected Routes"; + } + leaf partially-protected-routes { + type uint32; + description + "Partially Protected Routes"; + } + leaf coverage { + type string; + units "percentage"; + description + "Coverage in percentage"; + } + } + + grouping RCMD-STAT { + description + "Statistics"; + leaf adds { + type uint32; + description + "Added"; + } + leaf deletes { + type uint32; + description + "Deleted"; + } + leaf modifies { + type uint32; + description + "Modified"; + } + leaf reachables { + type uint32; + description + "Reachable"; + } + leaf unreachables { + type uint32; + description + "Unreachable"; + } + leaf touches { + type uint32; + description + "Touched"; + } + } + + grouping RCMD-PRIORITY-SUMMARY { + description + "Summary of convergence information for a priority"; + container route-statistics { + description + "Route statistics"; + uses RCMD-STAT; + } + container ip-convergence-time { + description + "Convergence time for IP route programming"; + uses RCMD-TIMESTAMP; + } + container mpls-convergence-time { + description + "Convergence time for MPLS label programming"; + uses RCMD-TIMESTAMP; + } + leaf level { + type Rcmd-priority-level; + description + "Critical, High, Medium or Low"; + } + leaf threshold-exceeded { + type boolean; + description + "Threshold exceeded"; + } + list frr-statistic { + description + "Fast Re-Route Statistics"; + uses RCMD-SHOW-FRR-STAT; + } + } + + grouping RCMD-OSPF-SPF-RUN-SUMMARY { + description + "SPF summary information"; + leaf state { + type Rcmd-spf-state; + description + "SPF state"; + } + leaf is-data-complete { + type boolean; + description + "Whether the event has all information"; + } + leaf threshold-exceeded { + type boolean; + description + "Threshold exceeded"; + } + leaf trigger-time { + type string; + description + "Trigger time (in hh:mm:ss.msec)"; + } + leaf start-time { + type string; + description + "Start time (offset from event trigger time in ss + .msec)"; + } + leaf duration { + type string; + description + "Duration of complete SPF calculation (in ss + .msec)"; + } + leaf total-dijkstra-runs { + type uint16; + description + "Total number of Dijkstra runs"; + } + leaf total-inter-area-and-external-batches { + type uint16; + description + "Total number of inter-area/external computation + batches"; + } + leaf total-type12lsa-changes { + type uint16; + description + "Total number of Type 1/2 LSA changes processed"; + } + leaf total-type357lsa-changes { + type uint16; + description + "Total number of Type 3/5/7 LSA changes processed"; + } + list priority-summary { + description + "Convergence information summary on per-priority + basis"; + uses RCMD-PRIORITY-SUMMARY; + } + } + + grouping RCMD-OSPF-SPF-RUN { + description + "SPF run information"; + container spf-summary { + description + "SPF summary information"; + uses RCMD-OSPF-SPF-RUN-SUMMARY; + } + list dijkstra-run { + description + "List of Dijkstra runs"; + uses RCMD-OSPF-SPT-INFO; + } + list inter-area-and-external { + description + "Inter-area & external calculation information"; + uses RCMD-OSPF-IAEXT-INFO; + } + } + + grouping RCMD-SHOW-PREFIX-INFO { + description + "prefix statistics information"; + leaf prefix { + type inet:ipv4-address; + description + "Prefix"; + } + leaf prefix-lenth { + type uint32; + description + "Prefix length"; + } + leaf last-event-time { + type string; + description + "Last event trigger time"; + } + leaf last-priority { + type Rcmd-priority-level; + description + "Last event processed priority"; + } + leaf last-route-type { + type Rcmd-show-route; + description + "Last event Route Type"; + } + leaf last-change-type { + type Rcmd-change; + description + "Last event Add/Delete"; + } + leaf last-cost { + type uint32; + description + "Last Known Cost"; + } + leaf critical-priority { + type uint32; + description + "No. of times processed under Critical Priority"; + } + leaf high-priority { + type uint32; + description + "No. of times processed under High Priority"; + } + leaf medium-priority { + type uint32; + description + "No. of times processed under Medium Priority"; + } + leaf low-priority { + type uint32; + description + "No. of times processed under Low Priority"; + } + leaf add-count { + type uint32; + description + "No. of times route gets Added"; + } + leaf modify-count { + type uint32; + description + "No. of times route gets Deleted"; + } + leaf delete-count { + type uint32; + description + "No. of times route gets Deleted"; + } + leaf threshold-exceed-count { + type uint32; + description + "No. of times threshold got exceeded"; + } + } + + grouping RCMD-SHOW-IPFRR-PATH { + description + "IP-Frr Remote Node Primary Path information"; + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf neighbour-address { + type inet:ipv4-address; + description + "Nexthop Address"; + } + } + + grouping RCMD-SHOW-IPFRR-RLFA-PQ-NODE { + description + "IP-Frr Remote Node information"; + leaf remote-node-id { + type inet:ipv4-address; + description + "Remote-LFA Node ID"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf neighbour-address { + type inet:ipv4-address; + description + "Nexthop Address"; + } + leaf path-count { + type uint32; + description + "Number of paths protected by this Remote Node"; + } + leaf in-use-time { + type string; + description + "Inuse time of the Remote Node (eg: Apr 24 13:16 + :04.961)"; + } + list primary-path { + description + "Protected Primary Paths"; + uses RCMD-SHOW-IPFRR-PATH; + } + } + + grouping RCMD-SHOW-IPFRR-STATS { + description + "IP-Frr statistics information"; + leaf priority { + type Rcmd-priority-level; + description + "Priority"; + } + leaf total-routes { + type uint32; + description + "Total Number of Routes"; + } + leaf fully-protected-routes { + type uint32; + description + "Fully Protected Routes"; + } + leaf partially-protected-routes { + type uint32; + description + "Partially Protected Routes"; + } + leaf coverage { + type string; + units "percentage"; + description + "Coverage in percentage"; + } + leaf local-lfa-coverage { + type string; + units "percentage"; + description + "Local LFA Coverage in percentage"; + } + leaf remote-lfa-coverage { + type string; + units "percentage"; + description + "Remote LFA Coverage in percentage"; + } + leaf below-threshold { + type boolean; + description + "Covearge is below Configured Threshold"; + } + } + + grouping RCMD-SHOW-IPFRR-EVENT-INFO { + description + "IP-Frr Run information"; + leaf event-id-xr { + type uint32; + description + "IP-Frr Event ID"; + } + leaf trigger-time { + type string; + description + "Trigger time (eg: Apr 24 13:16:04.961)"; + } + leaf trigger-spf-run { + type uint32; + description + "IP-Frr Triggered reference SPF Run Number"; + } + leaf wait-time { + type uint32; + units "millisecond"; + description + "Waiting Time (in milliseconds)"; + } + leaf start-time-offset { + type string; + units "millisecond"; + description + "Start Time offset from trigger time (in + milliseconds)"; + } + leaf duration { + type string; + units "millisecond"; + description + "Duration for the calculation (in milliseconds)"; + } + leaf completed-spf-run { + type uint32; + description + "IP-Frr Completed reference SPF Run Number"; + } + leaf total-routes { + type uint32; + description + "Cumulative Number of Routes for all priorities"; + } + leaf fully-protected-routes { + type uint32; + description + "Cumulative Number of Fully Protected Routes"; + } + leaf partially-protected-routes { + type uint32; + description + "Cumulative Number of Partially Protected Routes"; + } + leaf coverage { + type string; + units "percentage"; + description + "Coverage in percentage for all priorities"; + } + list ipfrr-statistic { + description + "IP-Frr Statistics categorized by priority"; + uses RCMD-SHOW-IPFRR-STATS; + } + list remote-node { + description + "Remote Node Information"; + uses RCMD-SHOW-IPFRR-RLFA-PQ-NODE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper.yang new file mode 100644 index 000000000..5a5a53f39 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rcmd-oper.yang @@ -0,0 +1,512 @@ +module Cisco-IOS-XR-infra-rcmd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-rcmd-oper"; + prefix infra-rcmd-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-rcmd-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-rcmd package operational data. + + This module contains definitions + for the following management objects: + rcmd: Show command for Route Convergence Monitoring & + Diagnostics + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container rcmd { + config false; + description + "Show command for Route Convergence Monitoring & + Diagnostics"; + container ospf { + description + "Operational data for OSPF"; + container instances { + description + "Operational data"; + list instance { + key "instance-name"; + description + "Operational data for a particular instance"; + container ipfrr-event-summaries { + description + "OSPF IP-FRR events summary data"; + list ipfrr-event-summary { + key "event-id"; + description + "IP-FRR Event data"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific IP-FRR Event"; + } + uses RCMD-SHOW-IPFRR-EVENT-INFO; + } + } + container prefix-event-statistics { + description + "OSPF Prefix events summary data"; + list prefix-event-statistic { + key "prefix-info"; + description + "Prefix Event statistics"; + leaf prefix-info { + type inet:ip-prefix; + description + "Events with Prefix"; + } + uses RCMD-SHOW-PREFIX-INFO; + } + } + container spf-run-summaries { + description + "OSPF SPF run summary data"; + list spf-run-summary { + key "spf-run-number"; + description + "SPF Event data"; + leaf spf-run-number { + type uint32 { + range "1..4294967295"; + } + description + "Specific SPF run"; + } + uses RCMD-OSPF-SPF-RUN; + } + } + container ipfrr-event-offlines { + description + "OSPF IP-FRR Event offline data"; + list ipfrr-event-offline { + key "event-id"; + description + "Offline operational data for particular OSPF + IP-FRR Event"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific IP-FRR Event"; + } + uses RCMD-SHOW-IPFRR-EVENT-INFO; + } + } + container spf-run-offlines { + description + "OSPF SPF run offline data"; + list spf-run-offline { + key "spf-run-number"; + description + "Offline operational data for particular OSPF + SPF run"; + leaf spf-run-number { + type uint32 { + range "1..4294967295"; + } + description + "Specific SPF run"; + } + uses RCMD-OSPF-SPF-RUN; + } + } + container summary-external-event-summaries { + description + "OSPF Summary-External Prefix events summary + data"; + list summary-external-event-summary { + key "event-id"; + description + "OSPF Summary-External Prefix Event data"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-PREFIX-EVENT; + } + } + container prefix-event-summaries { + description + "OSPF Prefix events summary data"; + list prefix-event-summary { + key "event-id"; + description + "OSPF Prefix Event data"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-PREFIX-EVENT; + } + } + container summary-external-event-offlines { + description + "OSPF Summary-External Prefix events offline + data"; + list summary-external-event-offline { + key "event-id"; + description + "Offline operational data for particular OSPF + Prefix Event"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-PREFIX-EVENT; + } + } + container prefix-event-offlines { + description + "OSPF Prefix events offline data"; + list prefix-event-offline { + key "event-id"; + description + "Offline operational data for particular OSPF + Prefix Event"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-PREFIX-EVENT; + } + } + container summary-external-event-statistics { + description + "Summary-External prefix monitoring statistics"; + uses RCMD-SHOW-TYPE357-STATS-INFO; + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "Operational data for a particular instance"; + } + } + } + } + container server { + description + "Server Info"; + container normal { + description + "Server Info"; + uses RCMD-SHOW-SERVER; + } + container detail { + description + "Server Info"; + uses RCMD-SHOW-SERVER; + } + } + container node { + description + "Node Info"; + uses RCMD-SHOW-NODE; + } + container isis { + description + "Operational data for ISIS"; + container instances { + description + "Operational data"; + list instance { + key "instance-name"; + description + "Operational data for a particular instance"; + container ipfrr-event-summaries { + description + "ISIS IP-FRR events summary data"; + list ipfrr-event-summary { + key "event-id"; + description + "IP-FRR Event data"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific IP-FRR Event"; + } + uses RCMD-SHOW-IPFRR-EVENT-INFO; + } + } + container prefix-event-statistics { + description + "ISIS Prefix events statistics data"; + list prefix-event-statistic { + key "prefix-info"; + description + "Monitoring Statistics"; + leaf prefix-info { + type inet:ip-prefix; + description + "Events with Prefix"; + } + uses RCMD-SHOW-PREFIX-INFO; + } + } + container spf-run-summaries { + description + "ISIS SPF run summary data"; + list spf-run-summary { + key "spf-run-number"; + description + "SPF Event data"; + leaf spf-run-number { + type uint32 { + range "1..4294967295"; + } + description + "Specific SPF run"; + } + uses RCMD-ISIS-SPF-RUN; + } + } + container ipfrr-event-offlines { + description + "ISIS IP-FRR Event offline data"; + list ipfrr-event-offline { + key "event-id"; + description + "Offline operational data for particular ISIS + IP-FRR Event"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific IP-FRR Event"; + } + uses RCMD-SHOW-IPFRR-EVENT-INFO; + } + } + container spf-run-offlines { + description + "ISIS SPF run offline data"; + list spf-run-offline { + key "spf-run-number"; + description + "Offline operational data for particular ISIS + SPF run"; + leaf spf-run-number { + type uint32 { + range "1..4294967295"; + } + description + "Specific SPF run"; + } + uses RCMD-ISIS-SPF-RUN; + } + } + container prefix-event-summaries { + description + "ISIS Prefix events summary data"; + list prefix-event-summary { + key "event-id"; + description + "Prefix Event data"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-PREFIX-EVENT; + } + } + container prefix-event-offlines { + description + "ISIS Prefix events offline data"; + list prefix-event-offline { + key "event-id"; + description + "Offline operational data for particular ISIS + Prefix Event"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-PREFIX-EVENT; + } + } + container lsp-regenerateds { + description + "Regenerated LSP data"; + list lsp-regenerated { + key "serial-number"; + description + "Regenerated LSP data"; + leaf serial-number { + type uint32 { + range "1..4294967295"; + } + description + "Data for a particular regenerated LSP"; + } + uses RCMD-REGEN-LSP-INFO; + } + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "Operational data for a particular instance"; + } + } + } + } + container memory { + description + "Memory Info"; + uses RCMD-SHOW-MEMORY; + } + container ldp { + description + "LDP data"; + container sessions { + description + "Session Events"; + list session { + key "event-id"; + description + "Session"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-LDP-SESSION-EVENT; + } + } + container remote-lfa-s { + description + "Remote LFA Coverage Events"; + list remote-lfa { + key "event-id"; + description + "RemoteLFA"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-LDP-RLFA-EVENT; + } + } + container remote-lfa-summaries { + description + "Remote LFA Coverage Events"; + list remote-lfa-summary { + key "event-id"; + description + "Summary operational data for Remote LFA"; + leaf event-id { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event ID"; + } + uses RCMD-SHOW-LDP-RLFA-EVENT; + } + } + } + container intf { + description + "Interface data"; + container events { + description + "Events"; + list event { + key "event-no"; + description + "Events"; + leaf event-no { + type uint32 { + range "1..4294967295"; + } + description + "Specific Event No."; + } + uses RCMD-SHOW-INTF-EVENT; + } + } + } + container process { + description + "Process information"; + container isis { + description + "ISIS Process Information"; + uses RCMD-SHOW-PROCESS; + } + container ospf { + description + "OSPF Process Information"; + uses RCMD-SHOW-PROCESS; + } + container ldp { + description + "LDP Process Information"; + uses RCMD-SHOW-PROCESS; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper-sub1.yang new file mode 100644 index 000000000..b0ea64416 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper-sub1.yang @@ -0,0 +1,139 @@ +submodule Cisco-IOS-XR-infra-rmf-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-rmf-oper { + prefix Cisco-IOS-XR-infra-rmf-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-rmf package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping RED-SUMMARY { + description + "rmf show"; + leaf err-log { + type string; + description + "Error Log"; + } + list red-pair { + description + "Redundancy Pair"; + uses RED-SUMMARY-PAIR; + } + } + + grouping RED-GROUP-INFO { + description + "RED GROUP INFO"; + leaf active { + type string; + description + "Active node name R/S/I"; + } + leaf standby { + type string; + description + "Standby node name R/S/I"; + } + leaf ha-state { + type string; + description + "High Availability state Ready/Not Ready"; + } + leaf nsr-state { + type string; + description + "NSR state Configured/Not Configured"; + } + } + + grouping RED-SUMMARY-PAIR { + description + "rmf row show"; + leaf active { + type string; + description + "Active node name R/S/I"; + } + leaf standby { + type string; + description + "Standby node name R/S/I"; + } + leaf ha-state { + type string; + description + "High Availability state Ready/Not Ready"; + } + leaf nsr-state { + type string; + description + "NSR state Configured/Not Configured"; + } + list groupinfo { + description + "Process group redundancy - Only for Asr9k viking + cluster"; + uses RED-GROUP-INFO; + } + } + + grouping RED-NODE-INFO { + description + "Node Information"; + container redundancy { + description + "Row information"; + uses RED-SUMMARY-PAIR; + } + leaf log { + type string; + description + "Reload and boot logs"; + } + leaf active-reboot-reason { + type string; + description + "Active node reload"; + } + leaf standby-reboot-reason { + type string; + description + "Standby node reload"; + } + leaf err-log { + type string; + description + "Error Log"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper.yang new file mode 100644 index 000000000..fd53f804b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rmf-oper.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-infra-rmf-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-rmf-oper"; + prefix infra-rmf-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-rmf-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-rmf package operational data. + + This module contains definitions + for the following management objects: + redundancy: Redundancy show information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container redundancy { + config false; + description + "Redundancy show information"; + container nodes { + description + "Location show information"; + list node { + key "node-id"; + description + "Redundancy Node Information"; + leaf node-id { + type xr:Node-id; + description + "Node Location"; + } + uses RED-NODE-INFO; + } + } + container summary { + description + "Redundancy Summary of Nodes"; + uses RED-SUMMARY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-cfg.yang new file mode 100644 index 000000000..276f13cae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-cfg.yang @@ -0,0 +1,685 @@ +module Cisco-IOS-XR-infra-rsi-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-rsi-cfg"; + prefix infra-rsi-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a2; + } + + 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 infra-rsi package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + vrfs: VRF configuration + global-af: Default VRF configuration + srlg: SRLG configuration commands + vrf-groups: Set of VRF groups configured + selective-vrf-download: Selective VRF download configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-snmp-agent-cfg + modules with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-12 { + description + "Configuration support for srlg description."; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers."; + semver:module-version "2.0.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Vrf-sub-address-family { + type enumeration { + enum "unicast" { + value 1; + description + "Unicast"; + } + enum "multicast" { + value 2; + description + "Multicast"; + } + enum "flow-spec" { + value 133; + description + "Flow spec"; + } + } + description + "Vrf sub address family"; + } + + typedef Vrf-address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Vrf address family"; + } + + typedef Srlg-priority { + type enumeration { + enum "critical" { + value 0; + description + "Critical"; + } + enum "high" { + value 1; + description + "High"; + } + enum "default" { + value 2; + description + "Default"; + } + enum "low" { + value 3; + description + "Low"; + } + enum "very-low" { + value 4; + description + "Very low"; + } + } + description + "Srlg priority"; + } + + grouping AF-TABLE { + description + "Common node of vrf, global-af"; + container afs { + description + "VRF address family configuration"; + list af { + key "af-name saf-name topology-name"; + description + "VRF address family configuration"; + leaf create { + type empty; + description + "VRF configuration for a particular address + family"; + } + leaf af-name { + type Vrf-address-family; + description + "Address family"; + } + leaf saf-name { + type Vrf-sub-address-family; + description + "Sub-Address family"; + } + leaf topology-name { + type xr:Cisco-ios-xr-string { + length "1..244"; + } + description + "Topology name"; + } + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Assign the interface to a VRF"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container afs { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide + the compatible functionalities. + Per-address-family and topology configuration"; + list af { + key "af-name saf-name"; + description + "The presence of this object enables the + givenaddress-family and topology on the + interface."; + leaf af-name { + type Vrf-address-family; + description + "Address-family"; + } + leaf saf-name { + type Vrf-sub-address-family; + description + "Sub-address-family"; + } + } + list af-topology-name { + key "topology-name af-name saf-name"; + description + "The presence of this object enables the + givenaddress-family and topology on the + interface."; + leaf topology-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Topology name"; + } + leaf af-name { + type Vrf-address-family; + description + "Address-family"; + } + leaf saf-name { + type Vrf-sub-address-family; + description + "Sub-address-family"; + } + } + } + } + augment "/a2:snmp/a2:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container selective-vrf-download { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide + the compatible functionalities. + CISCO-SELECTIVE-VRF-DOWNLOAD-MIB notification + configuration"; + leaf role-change { + type empty; + description + "Enable csvdEntityRoleChangeNotification + notification"; + } + } + } + container vrfs { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide + the compatible functionalities. VRF + configuration"; + list vrf { + key "vrf-name"; + description + "VRF configuration"; + container vpn-id { + presence "Indicates a vpn-id node is configured."; + description + "VPN-ID for the VRF"; + leaf vpn-oui { + type uint32 { + range "0..16777215"; + } + mandatory true; + description + "OUI of VPNID OUI"; + } + leaf vpn-index { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "Index of VPNID Index"; + } + } + leaf fallback-vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Fallback VRF"; + } + leaf remote-route-filter-disable { + type empty; + description + "For disabling remote route filtering for this + VRF on core-facing card"; + } + leaf evpn-route-sync { + type uint32 { + range "1..65534"; + } + description + "EVPN route sync vpn id"; + } + leaf create { + type empty; + description + "VRF global configuration"; + } + leaf mode-big { + type empty; + description + "Configuration enable of big VRF"; + } + leaf description { + type string { + length "1..244"; + } + description + "A textual description of the VRF"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + uses AF-TABLE; + } + } + container global-af { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide + the compatible functionalities. Default VRF + configuration"; + uses AF-TABLE; + } + container srlg { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide + the compatible functionalities. SRLG + configuration commands"; + container interfaces { + description + "Set of interfaces configured with SRLG"; + list interface { + key "interface-name"; + description + "Interface configurations"; + container include-optical { + presence "Contains mandatory nodes that used to set default values"; + description + "Include optical configuration for an interface"; + leaf enable { + type empty; + description + "Enable SRLG interface include optical"; + } + leaf priority { + type Srlg-priority; + mandatory true; + description + "Priority for optical domain values"; + } + } + container interface-group { + description + "Group configuration for an interface"; + container group-names { + description + "Set of group name under an interface"; + list group-name { + key "group-name-index"; + description + "Group name included under interface"; + leaf group-name-index { + type uint32 { + range "1"; + } + description + "Group name index"; + } + leaf group-name { + type string; + mandatory true; + description + "Group name"; + } + leaf srlg-priority { + type Srlg-priority; + mandatory true; + description + "SRLG priority"; + } + } + } + leaf enable { + type empty; + description + "Enable SRLG interface group submode"; + } + } + container values { + description + "SRLG Value configuration for an interface"; + list value { + key "srlg-index"; + description + "SRLG value data"; + leaf srlg-index { + type uint32 { + range "1..65535"; + } + description + "SRLG index"; + } + leaf srlg-value { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "SRLG value"; + } + leaf srlg-priority { + type Srlg-priority; + mandatory true; + description + "SRLG priority"; + } + } + } + container interface-srlg-names { + description + "SRLG Name configuration for an interface"; + list interface-srlg-name { + key "srlg-name"; + description + "SRLG name data"; + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG name"; + } + } + } + leaf enable { + type empty; + description + "Enable SRLG interface"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container srlg-names { + description + "Set of SRLG name configuration"; + list srlg-name { + key "srlg-name"; + description + "SRLG name configuration"; + leaf srlg-value { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "SRLG network value configuration"; + } + leaf srlg-description { + type string; + description + "SRLG description configuration"; + } + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG name"; + } + } + } + container groups { + description + "Set of groups configured with SRLG"; + list group { + key "group-name"; + description + "Group configurations"; + container group-values { + description + "Set of SRLG values configured under a group"; + list group-value { + key "srlg-index"; + description + "Group SRLG values with attribute"; + leaf srlg-index { + type uint32 { + range "1..65535"; + } + description + "SRLG index"; + } + leaf srlg-value { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "SRLG value"; + } + leaf srlg-priority { + type Srlg-priority; + mandatory true; + description + "SRLG priority"; + } + } + } + leaf enable { + type empty; + description + "Enable SRLG group"; + } + leaf group-name { + type xr:Cisco-ios-xr-string; + description + "Group name"; + } + } + } + container inherit-nodes { + description + "Set of inherit nodes configured with SRLG"; + list inherit-node { + key "inherit-node-name"; + description + "Inherit node configurations"; + container inherit-node-values { + description + "Set of SRLG values configured under an inherit + node"; + list inherit-node-value { + key "srlg-index"; + description + "Inherit node SRLG value with attributes"; + leaf srlg-index { + type uint32 { + range "1..65535"; + } + description + "SRLG index"; + } + leaf srlg-value { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "SRLG value"; + } + leaf srlg-priority { + type Srlg-priority; + mandatory true; + description + "SRLG priority"; + } + } + } + leaf enable { + type empty; + description + "Enable SRLG inherit node"; + } + leaf inherit-node-name { + type xr:Pq-node-id; + description + "The inherit node name"; + } + } + } + leaf enable { + type empty; + description + "Enable SRLG"; + } + } + container vrf-groups { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide + the compatible functionalities. Set of VRF + groups configured"; + list vrf-group { + key "vrf-group-name"; + description + "VRF group configuration"; + container vrfs { + description + "Set of VRFs configured under a VRF group"; + list vrf { + key "vrf-name"; + description + "VRF configuration"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + leaf enable { + type empty; + description + "Enable VRF group"; + } + leaf vrf-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF group name"; + } + } + } + container selective-vrf-download { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-vrf-cfg.yang which will provide + the compatible functionalities. Selective VRF + download configuration"; + leaf disable { + type empty; + description + "Disable selective VRF download"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub1.yang new file mode 100644 index 000000000..919b92fa1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub1.yang @@ -0,0 +1,80 @@ +submodule Cisco-IOS-XR-infra-rsi-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-rsi-oper { + prefix Cisco-IOS-XR-infra-rsi-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-rsi package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-21 { + description + "Operational support for new safi bier."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-13 { + description + "Fixing yang oper coverage."; + } + revision 2018-11-26 { + description + "Fixing yang usability issues."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef String1 { + type string; + description + "String1"; + } + + grouping RSI-MASTER-STATE { + description + "State for master RSI"; + leaf is-svd-enabled { + type boolean; + description + "Is SVD Enabled Operational"; + } + leaf is-svd-enabled-cfg { + type boolean; + description + "Is SVD Enabled Config"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub2.yang new file mode 100644 index 000000000..d95ee2504 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper-sub2.yang @@ -0,0 +1,424 @@ +submodule Cisco-IOS-XR-infra-rsi-oper-sub2 { + belongs-to Cisco-IOS-XR-infra-rsi-oper { + prefix Cisco-IOS-XR-infra-rsi-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-rsi-oper-sub1 { + revision-date 2020-09-21; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-rsi package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-21 { + description + "Operational support for new safi bier."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-13 { + description + "Fixing yang oper coverage."; + } + revision 2018-11-26 { + description + "Fixing yang usability issues."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Source { + type enumeration { + enum "configured" { + value 1; + description + "Configured"; + } + enum "from-group" { + value 2; + description + "From group"; + } + enum "inherited" { + value 4; + description + "Inherited"; + } + enum "from-optical" { + value 8; + description + "From optical"; + } + enum "configured-and-notified" { + value 17; + description + "Configured and notified"; + } + enum "from-group-and-notified" { + value 18; + description + "From group and notified"; + } + enum "inherited-and-notified" { + value 20; + description + "Inherited and notified"; + } + enum "from-optical-and-notified" { + value 24; + description + "From optical and notified"; + } + } + description + "Source"; + } + + typedef Priority { + type enumeration { + enum "critical" { + value 0; + description + "Critical"; + } + enum "high" { + value 1; + description + "High"; + } + enum "medium" { + value 2; + description + "Medium"; + } + enum "low" { + value 3; + description + "Low"; + } + enum "very-low" { + value 4; + description + "Very low"; + } + enum "invald" { + value 5; + description + "Invalid"; + } + } + description + "Priority"; + } + + grouping RSI-SRLG-NAME-INTF-SHOW { + description + "Interface name for RSI SRLG"; + container interfaces { + description + "Interfaces information"; + uses RSI-SRLG-INTF-SHOW; + } + leaf srlg-name-xr { + type string; + description + "SRLG name"; + } + leaf srlg-value { + type uint32; + description + "SRLG value"; + } + leaf description { + type string; + description + "SRLG description"; + } + } + + grouping RSI-SRLG-INTF-SHOW { + description + "Interface for RSI SRLG"; + list interface-name { + description + "Name of the interface which has SRLG values"; + leaf entry { + type String1; + description + "Name of the interface which has SRLG values"; + } + } + } + + grouping RSI-SRLG-RSIP-LIST { + description + "RSIP list for RSI SRLG"; + leaf rsip-name { + type string; + description + "list of names matching rsip"; + } + } + + grouping RSI-SRLG-ATTR-DETAIL { + description + "Attribute details for RSI SRLG"; + leaf srlg-value { + type uint32; + description + "SRLG value"; + } + leaf priority { + type Priority; + description + "Priority level"; + } + leaf source { + type Source; + description + "Source flag"; + } + leaf source-name { + type string; + description + "Source for SRLG value"; + } + leaf srlg-index { + type uint16; + description + "Index"; + } + } + + grouping RSI-SRLG-INTF-DETAIL-SHOW { + description + "Interface for RSI SRLG"; + leaf groups { + type uint32; + description + "Group count"; + } + leaf nodes { + type uint32; + description + "Nodes"; + } + list srlg-attribute { + description + "SRLG attributes"; + uses RSI-SRLG-ATTR-DETAIL; + } + list rsip { + description + "rsip list"; + uses RSI-SRLG-RSIP-LIST; + } + } + + grouping RSI-SRLG-DESC-SHOW { + description + "Show RSI SRLG Description"; + leaf srlg-value { + type uint32; + description + "SRLG value"; + } + leaf description { + type string; + description + "SRLG description"; + } + } + + grouping RSI-SRLG-INHLOC-SHOW { + description + "Location for RSI SRLG"; + leaf location { + type string; + description + "Inherit node name"; + } + leaf node-values { + type uint32; + description + "Node value count"; + } + list srlg-attribute { + description + "SRLG attribute"; + uses RSI-SRLG-ATTR-BRIEF; + } + } + + grouping RSI-SRLG-NAME-VALUE-SHOW { + description + "Name value for RSI SRLG"; + leaf srlg-value { + type uint32; + description + "SRLG value"; + } + leaf srlg-name-xr { + type string; + description + "SRLG name"; + } + } + + grouping RSI-SRLG-RSIP-SHOW { + description + "RSIP for RSI SRLG"; + leaf optical-layer-interface-name { + type string; + description + "Optics interface"; + } + leaf registrations { + type uint32; + description + "Registration count"; + } + leaf interface-values { + type uint32; + description + "Interface value count"; + } + list srlg-attribute { + description + "SRLG attribute"; + uses RSI-SRLG-ATTR-BRIEF; + } + } + + grouping RSI-SRLG-INTF-BRIEF-SHOW { + description + "Interface for RSI SRLG"; + leaf interface-name-xr { + type string; + description + "Interface list"; + } + leaf value-count { + type uint32; + description + "Values"; + } + leaf registrations { + type uint32; + description + "Registration count"; + } + list srlg-value { + description + "SRLG values"; + leaf entry { + type uint32; + description + "SRLG values"; + } + } + } + + grouping RSI-SRLG-ATTR-BRIEF { + description + "Attribute for RSI SRLG"; + leaf srlg-value { + type uint32; + description + "SRLG value"; + } + leaf priority { + type Priority; + description + "Priority level"; + } + leaf srlg-index { + type uint16; + description + "Index"; + } + } + + grouping RSI-SRLG-GROUP-SHOW { + description + "Show RSI SRLG group"; + leaf group-name-xr { + type string; + description + "Group name"; + } + leaf group-values { + type uint32; + description + "Group value count"; + } + list srlg-attribute { + description + "SRLG attribute"; + uses RSI-SRLG-ATTR-BRIEF; + } + } + + grouping RSI-VRFGROUP-ATTR-BRIEF { + description + "Attribute brief for RSI VRF group"; + leaf vrf-name { + type string; + description + "VRF name"; + } + } + + grouping RSI-VRFGROUP-GROUP-SHOW { + description + "Show RSI VRF group"; + leaf vr-fs { + type uint32; + description + "Number of VRFs in this VRF group"; + } + leaf forward-reference { + type boolean; + description + "VRF group not present but used"; + } + list vrf { + description + "VRF group's VRF"; + uses RSI-VRFGROUP-ATTR-BRIEF; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper.yang new file mode 100644 index 000000000..5c0a72d04 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-oper.yang @@ -0,0 +1,394 @@ +module Cisco-IOS-XR-infra-rsi-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-rsi-oper"; + prefix infra-rsi-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-rsi-oper-sub2 { + revision-date 2020-09-21; + } + include Cisco-IOS-XR-infra-rsi-oper-sub1 { + revision-date 2020-09-21; + } + + 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 infra-rsi package operational data. + + This module contains definitions + for the following management objects: + vrf-group: VRF group operational data + srlg: RSI SRLG operational data + selective-vrf-download: Selective VRF Download operational + data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-21 { + description + "Operational support for new safi bier."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-13 { + description + "Fixing yang oper coverage."; + } + revision 2018-11-26 { + description + "Fixing yang usability issues."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container vrf-group { + config false; + description + "VRF group operational data"; + container nodes { + description + "Node operational data"; + list node { + key "node-name"; + description + "Node details"; + container groups { + description + "Group operational data"; + list group { + key "group-name"; + description + "Group details"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Group name"; + } + uses RSI-VRFGROUP-GROUP-SHOW; + } + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + } + } + } + container srlg { + config false; + description + "RSI SRLG operational data"; + container groups { + description + "Set of Groups configured for SRLG"; + list group { + key "group-name"; + description + "SRLG group details"; + leaf group-name { + type xr:Cisco-ios-xr-string; + description + "Group name"; + } + uses RSI-SRLG-GROUP-SHOW; + } + } + container interfaces { + description + "Set of interfaces configured for SRLG"; + list interface { + key "interface-name"; + description + "SRLG interface summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses RSI-SRLG-INTF-BRIEF-SHOW; + } + } + container rsips { + description + "Set of rsip configured for SRLG"; + list rsip { + key "rsip-name"; + description + "SRLG rsip details"; + leaf rsip-name { + type xr:Interface-name; + description + "Interface name"; + } + uses RSI-SRLG-RSIP-SHOW; + } + } + container srlg-maps { + description + "Set of SRLG name, value maps configured"; + list srlg-map { + key "srlg-name"; + description + "Configured SRLG name details "; + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG name"; + } + uses RSI-SRLG-NAME-VALUE-SHOW; + } + } + container nodes { + description + "RSI SRLG operational data"; + list node { + key "node-name"; + description + "RSI SRLG operational data"; + container srlg-maps { + description + "Set of SRLG name, value maps configured"; + list srlg-map { + key "srlg-name"; + description + "Configured SRLG name details "; + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG name"; + } + uses RSI-SRLG-NAME-VALUE-SHOW; + } + } + container groups { + description + "Set of Groups configured for SRLG"; + list group { + key "group-name"; + description + "SRLG group details"; + leaf group-name { + type xr:Cisco-ios-xr-string; + description + "Group name"; + } + uses RSI-SRLG-GROUP-SHOW; + } + } + container inherit-nodes { + description + "Set of inherit locations configured for SRLG"; + list inherit-node { + key "inherit-node-name"; + description + "SRLG inherit location details"; + leaf inherit-node-name { + type xr:Node-id; + description + "Inherit node"; + } + uses RSI-SRLG-INHLOC-SHOW; + } + } + container interfaces { + description + "Set of interfaces configured for SRLG"; + list interface { + key "interface-name"; + description + "SRLG interface summary"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses RSI-SRLG-INTF-BRIEF-SHOW; + } + } + container srlg-descriptions { + description + "Set of SRLG name, description configured"; + list srlg-description { + key "srlg-name"; + description + "Configured SRLG Description details "; + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG name"; + } + uses RSI-SRLG-DESC-SHOW; + } + } + container interface-details { + description + "Set of interfaces configured for SRLG"; + list interface-detail { + key "interface-name"; + description + "SRLG interface info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses RSI-SRLG-INTF-DETAIL-SHOW; + } + } + container srlg-values { + description + "Set of SRLG values configured"; + list srlg-value { + key "value"; + description + "Configured SRLG value details "; + leaf value { + type uint32 { + range "0..4294967295"; + } + description + "SRLG value"; + } + uses RSI-SRLG-INTF-SHOW; + } + } + container interface-srlg-names { + description + "Set of SRLG names configured"; + list interface-srlg-name { + key "srlg-name"; + description + "Configured SRLG name details "; + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG name"; + } + uses RSI-SRLG-NAME-INTF-SHOW; + } + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + } + } + container interface-srlg-names { + description + "Set of SRLG names configured"; + list interface-srlg-name { + key "srlg-name"; + description + "Configured SRLG name details "; + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG name"; + } + uses RSI-SRLG-NAME-INTF-SHOW; + } + } + container inherit-nodes { + description + "Set of inherit locations configured for SRLG"; + list inherit-node { + key "inherit-node-name"; + description + "SRLG inherit location details"; + leaf inherit-node-name { + type xr:Node-id; + description + "Inherit Locatio"; + } + uses RSI-SRLG-INHLOC-SHOW; + } + } + container srlg-values { + description + "Set of SRLG values configured"; + list srlg-value { + key "value"; + description + "Configured SRLG value details "; + leaf value { + type uint32 { + range "0..4294967295"; + } + description + "SRLG value"; + } + uses RSI-SRLG-INTF-SHOW; + } + } + container interface-details { + description + "Set of interfaces configured for SRLG"; + list interface-detail { + key "interface-name"; + description + "SRLG interface info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses RSI-SRLG-INTF-DETAIL-SHOW; + } + } + } + container selective-vrf-download { + config false; + description + "Selective VRF Download operational data"; + container state { + description + "Selective VRF Download feature state details"; + uses RSI-MASTER-STATE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-subscriber-cfg.yang new file mode 100644 index 000000000..ef0282e1d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rsi-subscriber-cfg.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-infra-rsi-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-rsi-subscriber-cfg"; + prefix infra-rsi-subscriber-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 infra-rsi-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping VRF { + description + "Common node of ip-subscriber, ppp, + subscriber-service"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Assign the interface to a VRF "; + } + } + + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses VRF; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses VRF; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses VRF; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rt-check-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rt-check-cfg.yang new file mode 100644 index 000000000..557ff7171 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-rt-check-cfg.yang @@ -0,0 +1,109 @@ +module Cisco-IOS-XR-infra-rt-check-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-rt-check-cfg"; + prefix infra-rt-check-cfg; + + 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 infra-rt-check package configuration. + + This module contains definitions + for the following management objects: + rcc: RCC (Route Consistency Checker) configuration + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-27 { + description + "Removed Mulicast SAFI from RCC/LCC config which has never been supported."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping UNICAST { + description + "Common node of ipv4, ipv6"; + container unicast { + description + "RCC configuration for unicast"; + uses PERIOD; + uses ENABLE; + } + } + + grouping PERIOD { + description + "Common node of unicast, lcc"; + leaf period { + type uint32 { + range "100..600000"; + } + units "millisecond"; + description + "Period of check in milliseconds"; + } + } + + grouping ENABLE { + description + "Common node of unicast, lcc"; + leaf enable { + type empty; + description + "Enable RCC/LCC"; + } + } + + grouping LCC { + description + "Common node of ipv4, ipv6"; + container lcc { + description + "IPv4/IPv6 LCC (Label Consistency Checker) + configuration"; + uses PERIOD; + uses ENABLE; + } + } + + container rcc { + description + "RCC (Route Consistency Checker) configuration"; + container ipv6 { + description + "RCC/LCC configuration for IPv6"; + uses LCC; + uses UNICAST; + } + container ipv4 { + description + "RCC/LCC configuration for IPv4"; + uses LCC; + uses UNICAST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-act.yang new file mode 100644 index 000000000..f0e6ea543 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-act.yang @@ -0,0 +1,568 @@ +module Cisco-IOS-XR-infra-script-mgmt-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-script-mgmt-act"; + prefix script-mgmt-act; + + 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 action package configuration. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-23 { + description + "Added checksum-type to add-checksum and run. Removed 'URL' from script run"; + semver:module-version "3.0.0"; + } + revision 2020-10-12 { + description + "Added container for filenames"; + semver:module-version "1.0.0"; + } + revision 2020-10-09 { + description + "Added grouping for checksum"; + } + revision 2020-10-09 { + description + "Added grouping for file list"; + } + revision 2020-10-09 { + description + "Separated leaf-list into individual leafs"; + } + revision 2020-10-08 { + description + "Initial version"; + } + + typedef SCRIPT-TYPE { + type enumeration { + enum "exec" { + value 0; + description + "Exec script type"; + } + enum "eem" { + value 1; + description + "EEM script type"; + } + enum "process" { + value 2; + description + "Process script type"; + } + enum "config" { + value 3; + description + "Config script type"; + } + enum "snmp" { + value 4; + description + "SNMP script type"; + } + enum "precommit" { + value 5; + description + "Precommit script type"; + } + } + description + "Script type"; + } + + typedef SCRIPT-TYPE-ALL { + type enumeration { + enum "exec" { + value 0; + description + "Exec script type"; + } + enum "eem" { + value 1; + description + "EEM script type"; + } + enum "process" { + value 2; + description + "Process script type"; + } + enum "config" { + value 3; + description + "Config script type"; + } + enum "snmp" { + value 4; + description + "SNMP script type"; + } + enum "precommit" { + value 5; + description + "Precommit script type"; + } + enum "all" { + value 6; + description + "All scripts"; + } + } + description + "Script type"; + } + + typedef LOG-LEVEL { + type enumeration { + enum "CRITICAL" { + value 0; + description + "Log messages with severity CRITICAL"; + } + enum "DEBUG" { + value 1; + description + "Log messages with severity DEBUG"; + } + enum "ERROR" { + value 2; + description + "Log messages with severity ERROR"; + } + enum "INFO" { + value 3; + description + "Log messages with severity INFO"; + } + enum "WARNING" { + value 4; + description + "Log messages with severity WARNING"; + } + } + description + "LOG-LEVEL"; + } + + typedef CHECKSUM-TYPE { + type enumeration { + enum "SHA256" { + value 1; + description + "Specify an SHA256 checksum"; + } + } + } + + typedef update-condition { + type enumeration { + enum "manual" { + value 0; + description + "update scripts configured for manual update"; + } + } + description + "script update condition"; + } + + grouping SCRIPT-LIST { + description + "Scripts to add/remove"; + leaf-list script-name { + type string { + length "1..256"; + } + min-elements 1; + max-elements "10"; + description + "Script File name to add/remove"; + } + } + + grouping SCRIPT-CHECKSUM-LIST { + description + "Scripts and checksums to add"; + list script-checksums { + key "script-name"; + min-elements 1; + max-elements "10"; + description + "List of script and checksum pairs to add; max 10 script/checksum pairs can be added"; + leaf script-name { + type string { + length "1..256"; + } + mandatory true; + description + "Script File name to add"; + } + leaf checksum-type { + type CHECKSUM-TYPE; + mandatory true; + description + "Specify a checksum for the script"; + } + leaf checksum { + type string { + length "64"; + } + mandatory true; + description + "SHA256 checksum value of script"; + } + } + } + + grouping SCRIPT-ADD-REMOVE-OUTPUT { + description + "Output/Response for Script Add/Remove"; + list responses { + key "script-name"; + description + "List of Success or error messages for the script operations"; + leaf script-name { + type string; + mandatory true; + description + "Name of script executed"; + } + leaf response { + type string; + mandatory true; + description + "Success or error message for the operation"; + } + leaf status { + type string; + mandatory true; + description + "success or fail"; + } + } + } + + rpc add { + description + "Add script to script repository"; + input { + leaf script-type { + type SCRIPT-TYPE; + mandatory true; + description + "Type of script to add"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specify the VRF for the network file system"; + } + leaf source { + type string { + length "1..1024"; + } + mandatory true; + description + "Enter source directory for the script(s) + Example: + http://[user:password@]server[:port]/directory/ + https://[user:password@]server[:port]/directory/ + ftp://[user:password@]server[:port]/directory/ + tftp://[user:password@]server[:port]/directory/ + scp://[user@]server:/directory/ + /directory/"; + } + leaf location { + type string { + length "1..20"; + } + description + "Fully Qualified RP location"; + } + uses SCRIPT-LIST; + } + output { + container script-add-response { + description + "Script Add Response"; + uses SCRIPT-ADD-REMOVE-OUTPUT; + } + } + } + rpc add-checksum { + description + "Add script to script repository"; + input { + leaf script-type { + type SCRIPT-TYPE; + mandatory true; + description + "Type of script to add"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specify the VRF for the network file system"; + } + leaf source { + type string { + length "1..1024"; + } + mandatory true; + description + "Enter source directory for the script(s) + Example: + http://[user:password@]server[:port]/directory/ + https://[user:password@]server[:port]/directory/ + ftp://[user:password@]server[:port]/directory/ + tftp://[user:password@]server[:port]/directory/ + scp://[user@]server:/directory/ + /directory/"; + } + leaf location { + type string { + length "1..20"; + } + description + "Fully Qualified RP location"; + } + uses SCRIPT-CHECKSUM-LIST; + } + output { + container script-add-checksum-response { + description + "Script Add-Checksum Response"; + uses SCRIPT-ADD-REMOVE-OUTPUT; + } + } + } + rpc remove { + description + "Remove script from script repository"; + input { + leaf script-type { + type SCRIPT-TYPE; + mandatory true; + description + "Type of script to remove"; + } + uses SCRIPT-LIST; + } + output { + container script-remove-response { + description + "Script Remove Response"; + uses SCRIPT-ADD-REMOVE-OUTPUT; + } + } + } + rpc stop { + description + "Stop OP script"; + input { + leaf request-id { + type uint32; + mandatory true; + description + "Request ID of job in queue"; + } + leaf description { + type string { + length "1..512"; + } + description + "Reason why user wants to stop script execution"; + } + } + output { + container script-stop-response { + description + "Script Stop Response"; + leaf response { + type string; + mandatory true; + description + "Success or error message for the operation"; + } + leaf status { + type string; + mandatory true; + description + "success or fail"; + } + } + } + } + rpc run { + description + "Run Exec script from script repository"; + input { + leaf script-name { + type string { + length "1..1024"; + } + mandatory true; + description + "Name of Exec script to run (OR) Enter URL source. Example: [protocol]://[user:password@]server[:port]/directory/file_name"; + } + leaf checksum-type { + type CHECKSUM-TYPE; + description + "Specify a checksum for the script"; + } + leaf checksum { + type string { + length "64"; + } + description + "Specify SHA256 checksum value of source file"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specify the VRF for the network file system"; + } + leaf argument-list { + type string { + length "1..1024"; + } + description + "Script command line argument(s). FORMAT: Strings in single quotes.Escape double quotes inside string arguments(if any)"; + } + leaf description { + type string { + length "1..512"; + } + description + "Description of script run"; + } + leaf log-level { + type LOG-LEVEL; + description + "Script logging level. Default is INFO"; + } + leaf log-path { + type string { + length "1..512"; + } + description + "Location to store script logs"; + } + leaf max-runtime { + type uint16 { + range "1..3600"; + } + description + "max runtime in seconds"; + } + } + output { + container script-run-response { + description + "Script Run Response"; + leaf response { + type string; + mandatory true; + description + "Success or error message for the operation"; + } + leaf request-id { + type string; + description + "Request id of the script execution"; + } + leaf status { + type string; + mandatory true; + description + "success or fail"; + } + } + } + } + rpc update { + description + "update scripts in repository"; + input { + leaf condition { + type update-condition; + mandatory true; + description + "script update condition"; + } + leaf script-type { + type SCRIPT-TYPE-ALL; + mandatory true; + description + "config-script|eem-script|exec-script|process-script|snmp-script|precommit-script|all"; + } + leaf script-name { + type string { + length "1..256"; + } + description + "Script name/Update all scripts in config"; + } + } + output { + container script-update-response { + description + "Script Update Response"; + list responses { + key "script-name script-type"; + description + "List of Success or error messages for the script operations"; + leaf script-name { + type string; + mandatory true; + description + "Name of script executed"; + } + leaf script-type { + type string; + mandatory true; + description + "script type: exec|eem|config|process|snmp|precommit"; + } + leaf response { + type string; + mandatory true; + description + "Success or error message for the operation"; + } + leaf status { + type string; + mandatory true; + description + "success or fail"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-cfg.yang new file mode 100644 index 000000000..81a2bbd06 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-cfg.yang @@ -0,0 +1,352 @@ +module Cisco-IOS-XR-infra-script-mgmt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-script-mgmt-cfg"; + prefix infra-script-mgmt-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 infra-script-mgmt package configuration. + + This module contains definitions + for the following management objects: + scripts: Script-mgmt configuration data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Fixed default values, deprecated redundant classes ie., manual-update, scheduled-update, runtime-update. Added script-update class + 2022-08-03 + Changes to Precommit script priority configuration + 2022-08-02 + Fixed SNMP checksum configuration + 2022-04-29 + Fixed precommit checksum configuration issue + 2022-04-29 + Extend schema to support precommit priority config. + 2022-03-23 + Added precommit as a new script type supported by script management. + 2021-12-13 + Added snmp as a new script type supported by script management."; + semver:module-version "3.0.0"; + } + revision 2021-08-31 { + description + "Define range for update interval in yang + 2021-08-25 + Encrypt password in auto-update config + 2021-08-14 + Extend schema to support auto-update feature + 2021-07-20 + revert checksum type to Enum"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Config-checksum { + type enumeration { + enum "sha256" { + value 1; + description + "SHA256"; + } + } + description + "Config checksum"; + } + + typedef On-failure { + type enumeration { + enum "do-not-run" { + value 0; + description + "do not run"; + } + enum "run-local" { + value 1; + description + "run local"; + } + } + description + "On failure"; + } + + grouping SCRIPT-UPDATE-TABLE { + description + "Common node of eem-script, config-script"; + container script-updates { + description + "Name of script"; + list script-update { + key "script-name"; + description + "Config Script activation item"; + leaf script-name { + type xr:Cisco-ios-xr-string; + description + "Script name"; + } + uses CONDITION-SCHEDULE; + uses CONDITION-MANUAL; + } + } + } + + grouping CONDITION-SCHEDULE { + description + "Common node of script, script-update, + script-precommit"; + container condition-schedule { + presence "Indicates a condition-schedule node is configured."; + description + "auto-update condition"; + leaf url { + type string; + mandatory true; + description + "URL location"; + } + leaf update-interval { + type uint32 { + range "60..262800"; + } + mandatory true; + description + "update interval"; + } + leaf username { + type string; + description + "Username"; + } + leaf password { + type xr:Proprietary-password; + description + "Password"; + } + leaf vrf { + type string; + mandatory true; + description + "VRF name"; + } + } + } + + grouping CONDITION-MANUAL { + description + "Common node of script, script-update, + script-precommit"; + container condition-manual { + presence "Indicates a condition-manual node is configured."; + description + "auto-update condition"; + leaf url { + type string; + mandatory true; + description + "URL location"; + } + leaf username { + type string; + description + "Username"; + } + leaf password { + type xr:Proprietary-password; + description + "Password"; + } + leaf vrf { + type string; + mandatory true; + description + "VRF name"; + } + } + } + + grouping SCRIPT-TABLE { + description + "Common node of exec-script, process-script, + snmp-script"; + container scripts { + description + "Name of script"; + list script { + key "script-name"; + description + "Config Script activation item"; + container condition-runtime { + presence "Indicates a condition-runtime node is configured."; + description + "auto-update condition"; + leaf url { + type string; + mandatory true; + description + "URL location"; + } + leaf failure { + type On-failure; + mandatory true; + description + "run local/do not run"; + } + leaf username { + type string; + description + "Username"; + } + leaf password { + type xr:Proprietary-password; + description + "Password"; + } + leaf vrf { + type string; + mandatory true; + description + "VRF name"; + } + } + container checksum { + presence "Indicates a checksum node is configured."; + description + "Checksum of script"; + leaf checksum-type { + type Config-checksum; + mandatory true; + description + "Checksum type"; + } + leaf checksum { + type string { + length "64"; + } + mandatory true; + description + "Checksum value"; + } + } + leaf script-name { + type xr:Cisco-ios-xr-string; + description + "Script name"; + } + uses CONDITION-SCHEDULE; + uses CONDITION-MANUAL; + } + } + } + + container scripts { + description + "Script-mgmt configuration data"; + container exec-script { + description + "Exec script"; + uses SCRIPT-TABLE; + } + container snmp-script { + description + "Snmp script"; + uses SCRIPT-TABLE; + } + container config-script { + description + "Config scripts"; + uses SCRIPT-UPDATE-TABLE; + } + container eem-script { + description + "Eem script"; + uses SCRIPT-UPDATE-TABLE; + } + container process-script { + description + "Process script"; + uses SCRIPT-TABLE; + } + container precommit-script { + description + "Precommit script"; + container script-precommits { + description + "Name of script"; + list script-precommit { + key "script-name"; + description + "Config Script activation item"; + container precommit-checksum { + presence "Indicates a precommit-checksum node is configured."; + description + "Checksum of script"; + leaf checksum-type { + type Config-checksum; + mandatory true; + description + "Checksum type"; + } + leaf checksum { + type string { + length "64"; + } + mandatory true; + description + "Checksum value"; + } + leaf priority { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Precommit Script priority"; + } + } + leaf active { + type empty; + description + "Activate Precommit script"; + } + leaf script-name { + type xr:Cisco-ios-xr-string; + description + "Script name"; + } + uses CONDITION-SCHEDULE; + uses CONDITION-MANUAL; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper-sub1.yang new file mode 100644 index 000000000..11aa6fd64 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper-sub1.yang @@ -0,0 +1,413 @@ +submodule Cisco-IOS-XR-infra-script-mgmt-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-script-mgmt-oper { + prefix Cisco-IOS-XR-infra-script-mgmt-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-script-mgmt package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-24 { + description + "Added show-del for script execution + 2022-05-17 + Added show-del and other options for script status/execution + 2022-03-23 + Added precommit as a new script type supported by script management. + 2021-12-13 + Added snmp as a new script type supported by script management."; + semver:module-version "3.0.0"; + } + revision 2021-04-08 { + description + "Removed Detail, Output, Error, Reverse, Last, classes under ShowDel."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SCRIPT-EXECUTION-DETAIL { + description + "Execution detail bag"; + list execution-detail { + description + "Execution Details"; + uses EXEC-DETAILS; + } + } + + grouping EXEC-LOG-TYPE { + description + "Show Script Execution - Log Fields"; + leaf output-file { + type string; + description + "Output File Path"; + } + leaf output-file-content { + type string; + description + "Output File Content"; + } + leaf error-file { + type string; + description + "Error File Path"; + } + leaf error-file-content { + type string; + description + "Error File Content"; + } + } + + grouping EXEC-LOGS { + description + "Execution log struct"; + container execution-details { + description + "Execution Details"; + uses EXEC-DETAILS; + } + container execution-log { + description + "Log information for execution request(s)"; + uses EXEC-LOG-TYPE; + } + } + + grouping SCRIPT-EXECUTION-LOG { + description + "Execution log bag"; + list execution-log-detail { + description + "Execution Log (Output/Error) Details"; + uses EXEC-LOGS; + } + } + + grouping SCRIPT-EXECUTION-SUMMARY { + description + "Execution summary bag"; + list execution-summary { + description + "Summary of requests"; + uses EXEC-SUM-TYPE; + } + } + + grouping EXEC-LOG-OUTPUT-TYPE { + description + "Show Script Execution - Log Fields"; + leaf output-file { + type string; + description + "Output File Path"; + } + leaf output-file-content { + type string; + description + "Output File Content"; + } + } + + grouping EXEC-OUTPUT-LOGS { + description + "Execution log struct"; + container execution-details { + description + "Execution Details"; + uses EXEC-DETAILS; + } + container execution-log { + description + "Log information for execution request(s)"; + uses EXEC-LOG-OUTPUT-TYPE; + } + } + + grouping SCRIPT-EXECUTION-OUTPUT-LOG { + description + "Execution log bag"; + list execution-log-detail { + description + "Execution Log (Output/Error) Details"; + uses EXEC-OUTPUT-LOGS; + } + } + + grouping EXEC-LOG-ERROR-TYPE { + description + "Show Script Execution - Log Fields"; + leaf error-file { + type string; + description + "Error File Path"; + } + leaf error-file-content { + type string; + description + "Error File Content"; + } + } + + grouping EXEC-EVENT-TYPE { + description + "Show Script Execution - Event Fields"; + leaf description { + type string; + description + "Description"; + } + leaf duration { + type string; + description + "Time Elapsed"; + } + leaf event { + type string; + description + "Event"; + } + leaf time { + type string; + description + "Time"; + } + } + + grouping EXEC-DETAIL-TYPE { + description + "Show Script Execution - Detail Fields"; + leaf log-path { + type string; + description + "Log location"; + } + leaf arguments { + type string; + description + "Arguments for script execution"; + } + leaf run-options { + type string; + description + "Run options"; + } + } + + grouping EXEC-SUM-TYPE { + description + "Script execution summary struct"; + leaf request-id { + type uint32; + description + "Request Id of script execution"; + } + leaf return-val { + type string; + description + "Return value of execution"; + } + leaf script-type { + type string; + description + "Repository of script being executed"; + } + leaf script-name { + type string; + description + "Script name that script being execution"; + } + leaf duration { + type string; + description + "Duration of script execution"; + } + leaf event-time { + type string; + description + "Start time of script execution"; + } + leaf status { + type string; + description + "Status of script exectuion"; + } + } + + grouping EXEC-DETAILS { + description + "Execution detail struct"; + container execution-summary { + description + "Summary information for execution request(s)"; + uses EXEC-SUM-TYPE; + } + container execution-detail { + description + "Detail information for execution request(s)"; + uses EXEC-DETAIL-TYPE; + } + list execution-event { + description + "Event information for execution request(s)"; + uses EXEC-EVENT-TYPE; + } + } + + grouping EXEC-ERROR-LOGS { + description + "Execution log struct"; + container execution-details { + description + "Execution Details"; + uses EXEC-DETAILS; + } + container execution-log { + description + "Log information for execution request(s)"; + uses EXEC-LOG-ERROR-TYPE; + } + } + + grouping SCRIPT-EXECUTION-ERROR-LOG { + description + "Execution log bag"; + list execution-log-detail { + description + "Execution Log (Output/Error) Details"; + uses EXEC-ERROR-LOGS; + } + } + + grouping SCRIPT-STATUS-SUMMARY { + description + "Status summary bag"; + list status-summary { + description + "Summary information for script status"; + uses STATUS-SUMMARY-TYPE; + } + } + + grouping STATUS-HISTORY-TYPE { + description + "Show Script Status - History Fields"; + leaf action { + type string; + description + "Script action"; + } + leaf checksum { + type string; + description + "Checksum of script"; + } + leaf description { + type string; + description + "Description of user action"; + } + leaf time-stamp { + type string; + description + "Time of script action"; + } + } + + grouping STATUS-SUMMARY-TYPE { + description + "Show Script Status - Summary Fields"; + leaf last-action { + type string; + description + "Last action of the script"; + } + leaf last-action-time { + type string; + description + "Time of last action"; + } + leaf script-name { + type string; + description + "Name of Script"; + } + leaf script-type { + type string; + description + "Type of script"; + } + leaf status { + type string; + description + "Status of script"; + } + } + + grouping STATUS-DETAILS { + description + "Status detail struct"; + container status-summary { + description + "Summary information for script status"; + uses STATUS-SUMMARY-TYPE; + } + leaf checksum { + type string; + description + "Checksum of script"; + } + leaf script-description { + type string; + description + "Description of script"; + } + leaf script-arguments { + type string; + description + "Arguments to pass to script"; + } + list status-history { + description + "History information for script"; + uses STATUS-HISTORY-TYPE; + } + } + + grouping SCRIPT-STATUS-DETAIL { + description + "Status Detail bag"; + list status-detail { + description + "Script status details"; + uses STATUS-DETAILS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper.yang new file mode 100644 index 000000000..35d305c9a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-script-mgmt-oper.yang @@ -0,0 +1,1835 @@ +module Cisco-IOS-XR-infra-script-mgmt-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-script-mgmt-oper"; + prefix infra-script-mgmt-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-script-mgmt-oper-sub1 { + revision-date 2022-05-24; + } + + 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 infra-script-mgmt package operational data. + + This module contains definitions + for the following management objects: + script: Script operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-24 { + description + "Added show-del for script execution + 2022-05-17 + Added show-del and other options for script status/execution + 2022-03-23 + Added precommit as a new script type supported by script management. + 2021-12-13 + Added snmp as a new script type supported by script management."; + semver:module-version "3.0.0"; + } + revision 2021-04-08 { + description + "Removed Detail, Output, Error, Reverse, Last, classes under ShowDel."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TYPE-SHOW-DEL { + description + "Common node of exec-script, process-script, + config-script, eem-script, snmp-script, + precommit-script"; + container type-show-del { + description + "Detailed deleted script status information of + specified script type"; + container summary { + description + "Status Information about a particular script"; + uses SCRIPT-STATUS-SUMMARY; + } + } + } + + grouping TYPE-LAST-TABLE { + description + "Common node of exec-script, process-script, + config-script, eem-script, snmp-script, + precommit-script"; + container lasts { + description + "Detailed script status information given last + number of scripts"; + list last { + key "last-num"; + description + "Detailed script status information given last + number of scripts"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + } + + grouping REVERSE { + description + "Common node of exec-script, process-script, + config-script, eem-script, snmp-script, + precommit-script"; + container reverse { + description + "Detailed script status information reversed"; + uses SCRIPT-STATUS-DETAIL; + } + } + + grouping SHOW-DELETE { + description + "Common node of exec-script, process-script, + config-script, eem-script, snmp-script, + precommit-script"; + container show-delete { + description + "Detailed script status information reversed"; + uses SCRIPT-STATUS-DETAIL; + } + } + + grouping TYPE-NAME-TABLE { + description + "Common node of exec-script, process-script, + config-script, eem-script, snmp-script, + precommit-script"; + container type-names { + description + "Script status information given script type and + script name"; + list type-name { + key "name-str"; + description + "Script Status Information about a particular + script"; + container reverse { + description + "Detailed script status information reversed"; + uses SCRIPT-STATUS-DETAIL; + } + container detail { + description + "Detailed script status information"; + uses SCRIPT-STATUS-DETAIL; + } + container type-name-detail-show-del { + description + "Deleted information about a particular script"; + uses SCRIPT-STATUS-DETAIL; + } + container lasts { + description + "Detailed script status information given last + number of scripts"; + list last { + key "last-num"; + description + "Detailed script status information given last + number of scripts"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container type-name-detail-last-show-dels { + description + "Detailed information of a particular execution + request"; + list type-name-detail-last-show-del { + key "last-num"; + description + "Detailed information of a particular + execution request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container summary { + description + "Status Information about a particular script"; + uses SCRIPT-STATUS-SUMMARY; + } + container type-name-show-del { + description + "Deleted information about a particular script"; + container summary { + description + "Status summary information about a particular + script"; + uses SCRIPT-STATUS-SUMMARY; + } + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Script name"; + } + } + } + } + + grouping DETAIL-SHOW-DEL { + description + "Common node of exec-script, process-script, + config-script, eem-script, snmp-script, + precommit-script"; + container detail-show-del { + description + "Deleted information about a particular script"; + uses SCRIPT-STATUS-DETAIL; + } + } + + grouping SUMMARY { + description + "Common node of exec-script, eem-script, + process-script, config-script, snmp-script, + precommit-script"; + container summary { + description + "Show script status information"; + uses SCRIPT-STATUS-SUMMARY; + } + } + + grouping DETAIL { + description + "Common node of exec-script, process-script, + config-script, eem-script, snmp-script, + precommit-script"; + container detail { + description + "Detailed script status information"; + uses SCRIPT-STATUS-DETAIL; + } + } + + container script { + config false; + description + "Script operational data"; + container status { + description + "Script status information"; + container detail-reverse-showdel-table { + description + "Detailed information of a particular execution + request"; + container detail-reverse-showdel { + description + "Detailed information of a particular execution + request"; + uses SCRIPT-STATUS-DETAIL; + } + } + container lasts { + description + "Detailed information of a particular execution + request"; + list last { + key "last-num"; + description + "Detailed information of a particular execution + request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container detail-reverse-lasts { + description + "Detailed information of a particular execution + request"; + list detail-reverse-last { + key "last-num"; + description + "Detailed information of a particular execution + request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container detail-last-show-dels { + description + "Detailed information of a particular execution + request"; + list detail-last-show-del { + key "last-num"; + description + "Detailed information of a particular execution + request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container type { + description + "Show script status type information"; + container process-script { + description + "Show script status type information"; + uses TYPE-LAST-TABLE; + uses TYPE-SHOW-DEL; + uses SHOW-DELETE; + uses REVERSE; + uses DETAIL-SHOW-DEL; + uses DETAIL; + uses TYPE-NAME-TABLE; + uses SUMMARY; + } + container eem-script { + description + "Show script status type information"; + uses TYPE-LAST-TABLE; + uses TYPE-SHOW-DEL; + uses SHOW-DELETE; + uses REVERSE; + uses DETAIL-SHOW-DEL; + uses DETAIL; + uses TYPE-NAME-TABLE; + uses SUMMARY; + } + container config-script { + description + "Show script status type information"; + uses TYPE-LAST-TABLE; + uses TYPE-SHOW-DEL; + uses SHOW-DELETE; + uses REVERSE; + uses DETAIL-SHOW-DEL; + uses DETAIL; + uses TYPE-NAME-TABLE; + uses SUMMARY; + } + container precommit-script { + description + "Show script status type information"; + uses TYPE-LAST-TABLE; + uses TYPE-SHOW-DEL; + uses SHOW-DELETE; + uses REVERSE; + uses DETAIL-SHOW-DEL; + uses DETAIL; + uses TYPE-NAME-TABLE; + uses SUMMARY; + } + container exec-script { + description + "Show script status type information"; + uses TYPE-LAST-TABLE; + uses TYPE-SHOW-DEL; + uses SHOW-DELETE; + uses REVERSE; + uses DETAIL-SHOW-DEL; + uses DETAIL; + uses TYPE-NAME-TABLE; + uses SUMMARY; + } + container snmp-script { + description + "Show script status type information"; + uses TYPE-LAST-TABLE; + uses TYPE-SHOW-DEL; + uses SHOW-DELETE; + uses REVERSE; + uses DETAIL-SHOW-DEL; + uses DETAIL; + uses TYPE-NAME-TABLE; + uses SUMMARY; + } + } + container reverse { + description + "Detailed information of a particular execution + request"; + uses SCRIPT-STATUS-DETAIL; + } + container status-names { + description + "Information about last request"; + list status-name { + key "name-str"; + description + "Status Information about a particular script"; + container status-name-detail-reverse-last-show-dels { + description + "Detailed information of a particular + execution request"; + list status-name-detail-reverse-last-show-del { + key "last-num"; + description + "Detailed information of a particular + execution request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container show-delete { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-STATUS-DETAIL; + } + container reverse { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-STATUS-DETAIL; + } + container status-name-detail-reverse-show-del { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-STATUS-DETAIL; + } + container detail { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-STATUS-DETAIL; + } + container status-name-show-del { + description + "Show script status detail information"; + container summary { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-STATUS-SUMMARY; + } + } + container detail-last-show-dels { + description + "Detailed information of a particular + execution request"; + list detail-last-show-del { + key "last-num"; + description + "Detailed information of a particular + execution request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container summary { + description + "Status Information about a particular script"; + uses SCRIPT-STATUS-SUMMARY; + } + container status-name-detail-reverse-lasts { + description + "Detailed information of a particular + execution request"; + list status-name-detail-reverse-last { + key "last-num"; + description + "Detailed information of a particular + execution request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container lasts { + description + "Detailed information of a particular + execution request"; + list last { + key "last-num"; + description + "Detailed information of a particular + execution request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container detail-showdel { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-STATUS-DETAIL; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container detail-reverse-last-show-dels { + description + "Detailed information of a particular execution + request"; + list detail-reverse-last-show-del { + key "last-num"; + description + "Detailed information of a particular execution + request"; + leaf last-num { + type uint32; + description + "Last number of scripts"; + } + uses SCRIPT-STATUS-DETAIL; + } + } + container detail { + description + "Detailed information of a particular execution + request"; + uses SCRIPT-STATUS-DETAIL; + } + container summary { + description + "Script status summary information"; + uses SCRIPT-STATUS-SUMMARY; + } + container show-del { + description + "Information about deleted scripts"; + container summary { + description + "Detailed information of a particular execution + request"; + uses SCRIPT-STATUS-SUMMARY; + } + } + } + container execution { + description + "Information about script execution"; + container error-showdel { + description + "Error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + container lasts { + description + "Information about last request"; + list last { + key "last-num"; + description + "Information about last request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container last-names { + description + "Status Details about a particular execution + request"; + list last-name { + key "name-str"; + description + "Information about a particular request"; + container last-name-show-del { + description + "Status Details about a particular execution + request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container last-name-detail-show-del { + description + "Status Details about a particular execution + request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Information about script execution for last + script request executed"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + container last-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + leaf last-num { + type uint32; + description + "Last given number of executed requests"; + } + } + } + container output-showdel { + description + "Output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container execution-statuses { + description + "Information about status of script execution"; + list execution-status { + key "status-str"; + description + "Status Information about request"; + container status-lasts { + description + "Status Reverse Details about a particular + execution request"; + list status-last { + key "last-num"; + description + "Information about last request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container status-last-names { + description + "Status Reverse Details about a particular + execution request"; + list status-last-name { + key "name-str"; + description + "Information about a particular request"; + container status-last-name-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf last-num { + type uint32; + description + "Last given number of executed requests"; + } + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container status-reverse { + description + "Status Details about a particular execution + request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + container status-reverse-lasts { + description + "Status Details about a particular execution + request"; + list status-reverse-last { + key "last-num"; + description + "Information about last request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container status-reverse-last-names { + description + "Status Details about a particular + execution request"; + list status-reverse-last-name { + key "name-str"; + description + "Information about a particular request"; + container status-reverse-last-name-show-del { + description + "Status Details about a particular + execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf last-num { + type uint32; + description + "Last given number of executed requests"; + } + } + } + } + container status-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container execution-status-names { + description + "Status Reverse Details about a particular + execution request"; + list execution-status-name { + key "name-str"; + description + "Information about a particular request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container execution-status-name-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container summary { + description + "Status information for script execution"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf status-str { + type xr:Cisco-ios-xr-string; + description + "Status of given executed requests"; + } + } + } + container output { + description + "Output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error-showdel { + description + "Output and Error log for script execution"; + uses SCRIPT-EXECUTION-LOG; + } + container output-error { + description + "Output and Error log for script execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Detailed information about script execution"; + uses SCRIPT-EXECUTION-DETAIL; + } + container requests { + description + "Information about script execution requests"; + list request { + key "request-id"; + description + "Information about a particular request"; + container request-statuses { + description + "Status Details about a particular execution + request"; + list request-status { + key "status-str"; + description + "Status Information about request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container request-status-reverse { + description + "Status Reverse Details about a particular + execution request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container request-status-reverse-lasts { + description + "Status Reverse Details about a particular + execution request"; + list request-status-reverse-last { + key "last-num"; + description + "Information about last request"; + container request-status-reverse-last-names { + description + "Status Reverse Details about a + particular execution request"; + list request-status-reverse-last-name { + key "name-str"; + description + "Information about a particular request"; + container request-status-reverse-last-name-show-del { + description + "Status Reverse Details about a + particular execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output { + description + "Detailed output log for script + execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for + script execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script + execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf last-num { + type uint32; + description + "Last given number of executed requests"; + } + } + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf status-str { + type xr:Cisco-ios-xr-string; + description + "Status of given executed requests"; + } + } + } + container request-names { + description + "Status Reverse Details about a particular + execution request"; + list request-name { + key "name-str"; + description + "Information about a particular request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container request-name-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container request-reverse { + description + "Status Reverse Details about a particular + execution request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + container req-rev-lasts { + description + "Status Reverse Details about a particular + execution request"; + list req-rev-last { + key "last-num"; + description + "Information about last request"; + container req-rev-last-names { + description + "Status Reverse Details about a particular + execution request"; + list req-rev-last-name { + key "name-str"; + description + "Information about a particular request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container request-reverse-last-name-show-del { + description + "Status Reverse Details about a + particular execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf last-num { + type uint32; + description + "Last given number of executed requests"; + } + } + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container request-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container request-lasts { + description + "Status Reverse Details about a particular + execution request"; + list request-last { + key "last-num"; + description + "Information about last request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container request-last-names { + description + "Status Reverse Details about a particular + execution request"; + list request-last-name { + key "name-str"; + description + "Information about a particular request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container request-last-name-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf last-num { + type uint32; + description + "Last given number of executed requests"; + } + } + } + container summary { + description + "Summary information of particular execution + request id"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf request-id { + type xr:Cisco-ios-xr-string; + description + "Show Execution Request ID"; + } + } + } + container names { + description + "Execution information about specific script"; + list name { + key "name-str"; + description + "Information about a particular request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container detail-show-del { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Detailed information of a particular + execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container name-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container summary { + description + "Information about script execution for a + particular script"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container reverse { + description + "Information about last request"; + container reverse-names { + description + "Status Reverse Details about a particular + execution request"; + list reverse-name { + key "name-str"; + description + "Information about a particular request"; + container reverse-name-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container reverse-lasts { + description + "Status Reverse Details about a particular + execution request"; + list reverse-last { + key "last-num"; + description + "Information about last request"; + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container reverse-last-names { + description + "Status Details about a particular execution + request"; + list reverse-last-name { + key "name-str"; + description + "Information about a particular request"; + container reverse-last-name-show-del { + description + "Status Details about a particular + execution request"; + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container output { + description + "Detailed output log for script execution"; + uses SCRIPT-EXECUTION-OUTPUT-LOG; + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Show execution request status summary + about a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf name-str { + type xr:Cisco-ios-xr-string; + description + "Show Execution Name string"; + } + } + } + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + leaf last-num { + type uint32; + description + "Last given number of executed requests"; + } + } + } + container output-error { + description + "Detailed output and error log for script + execution"; + uses SCRIPT-EXECUTION-LOG; + } + container detail { + description + "Detailed information of a particular execution + request"; + uses SCRIPT-EXECUTION-DETAIL; + } + container summary { + description + "Information about script execution for last + script request executed"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Detailed error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + container reverse-show-del { + description + "Status Reverse Details about a particular + execution request"; + container summary { + description + "Show execution request status summary about + a particular execution request"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + } + container summary { + description + "Summary information about script execution"; + uses SCRIPT-EXECUTION-SUMMARY; + } + container error { + description + "Error log for script execution"; + uses SCRIPT-EXECUTION-ERROR-LOG; + } + container execution-show-del { + description + "Deleted information about script execution"; + container summary { + description + "Deleted information for script execution"; + uses SCRIPT-EXECUTION-SUMMARY; + } + } + container detail-showdel { + description + "Detailed information about script execution"; + uses SCRIPT-EXECUTION-DETAIL; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-cfg.yang new file mode 100644 index 000000000..f423e4fea --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-cfg.yang @@ -0,0 +1,354 @@ +module Cisco-IOS-XR-infra-serg-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-serg-cfg"; + prefix infra-serg-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 infra-serg package configuration. + + This module contains definitions + for the following management objects: + session-redundancy: Session Redundancy configuration + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-22 { + description + "Fixed config related issue"; + semver:module-version "1.1.0"; + } + revision 2019-12-12 { + description + "Added new Address Family type"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-31 { + description + "Added pool-name support."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Session-redundancy-group-role { + type enumeration { + enum "master" { + value 1; + description + "Master Role"; + } + enum "slave" { + value 2; + description + "Slave Role"; + } + } + description + "Session redundancy group role"; + } + + typedef Serg-addr-family { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4"; + } + enum "ipv6" { + value 10; + description + "IPv6"; + } + } + description + "Serg addr family"; + } + + container session-redundancy { + description + "Session Redundancy configuration"; + container groups { + description + "Table of Group"; + list group { + key "group-id"; + description + "Redundancy Group configuration"; + container peer { + description + "None"; + container ipaddress { + description + "IPv4 or IPv6 Address of SERG Peer"; + leaf address-family { + type Serg-addr-family; + description + "Type of IPv4/IPv6 address"; + } + leaf prefix-string { + type inet:ip-address-no-zone; + description + "IPv4/IPv6 address"; + } + } + } + container revertive-timer { + description + "None"; + leaf max-value { + type uint32 { + range "1..65535"; + } + description + "Value of MAX Revertive Timer"; + } + leaf value { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Value of revertive time in minutes"; + } + } + container interface-list { + description + "List of Interfaces for this Group"; + container interface-ranges { + description + "Table of InterfaceRange"; + list interface-range { + key "interface-name sub-interface-range-start sub-interface-range-end"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf sub-interface-range-start { + type uint32 { + range "0..2147483647"; + } + description + "Sub Interface Start Range"; + } + leaf sub-interface-range-end { + type uint32 { + range "0..2147483647"; + } + description + "Sub Interface End Range"; + } + leaf interface-id-range-start { + type uint32 { + range "1..65535"; + } + description + "Interface ID Start Range"; + } + leaf interface-id-range-end { + type uint32 { + range "1..65535"; + } + description + "Interface ID End Range"; + } + } + } + container interfaces { + description + "Table of Interface"; + list interface { + key "interface-name"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-id { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Interface Id for the interface"; + } + } + } + leaf enable { + type empty; + description + "Enable List of Interfaces for this Group. + Deletion of this object also causes deletion + of all associated objects under InterfaceList + ."; + } + } + container pool-list { + description + "List of Pool-names for this Group"; + container pool-names { + description + "Table of PoolName"; + list pool-name { + key "pool-name"; + description + "Address Pool Name"; + leaf pool-name { + type xr:Cisco-ios-xr-string; + description + "Pool name"; + } + } + } + leaf enable { + type empty; + description + "Enable List of Pool-names for this Group. + Deletion of this object also causes deletion + of all associated objects under PoolList."; + } + } + leaf core-tracking-object { + type string; + description + "Core Tracking Object for this Group"; + } + leaf disable-tracking-object { + type empty; + description + "Disable Tracking Object for this Group"; + } + leaf redundancy-disable { + type empty; + description + "Disable"; + } + leaf enable { + type empty; + description + "Enable Redundancy Group configuration. + Deletion of this object also causes deletion + of all associated objects under Group."; + } + leaf description { + type string; + description + "Description for this Group"; + } + leaf access-tracking-object { + type string; + description + "Access Tracking Object for this Group"; + } + leaf preferred-role { + type Session-redundancy-group-role; + description + "Set preferred role"; + } + leaf hold-timer { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Set hold time (in Minutes)"; + } + leaf mode-active { + type empty; + description + "Set operation mode"; + } + leaf group-id { + type uint32 { + range "1..500"; + } + description + "Group ID"; + } + } + } + container revertive-timer { + description + "None"; + leaf max-value { + type uint32 { + range "1..65535"; + } + description + "Value of MAX Revertive Timer"; + } + leaf value { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Value of revertive time in minutes"; + } + } + leaf redundancy-disable { + type empty; + description + "Disable"; + } + leaf enable { + type empty; + description + "Enable Session Redundancy configuration. + Deletion of this object also causes deletion of + all associated objects under SessionRedundancy."; + } + leaf source-interface { + type xr:Interface-name; + description + "Source Interface for Redundancy Peer + Communication"; + } + leaf preferred-role { + type Session-redundancy-group-role; + description + "Set preferred role"; + } + leaf hold-timer { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Set hold time (in Minutes)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub1.yang new file mode 100644 index 000000000..27beaaf5a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub1.yang @@ -0,0 +1,1821 @@ +submodule Cisco-IOS-XR-infra-serg-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-serg-oper { + prefix Cisco-IOS-XR-infra-serg-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-serg package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Serg-show-so-reason { + type enumeration { + enum "internal" { + value 0; + description + "SwitchOver for Internal Reason"; + } + enum "admin" { + value 1; + description + "SwitchOver for Admin"; + } + enum "peer-up" { + value 2; + description + "SwitchOver for Peer UP"; + } + enum "peer-down" { + value 3; + description + "SwitchOver for Peer Down"; + } + enum "object-tracking-status-change" { + value 4; + description + "SwitchOver for Object Tracking status change"; + } + enum "serg-show-so-reason-max" { + value 5; + description + "Unknown Switchover Reason"; + } + } + description + "Session Redundancy Switchover Reason"; + } + + typedef Serg-peer-status { + type enumeration { + enum "not-configured" { + value 0; + description + "Peer not configured"; + } + enum "initialize" { + value 1; + description + "Peer initialization"; + } + enum "retry" { + value 2; + description + "Peer retry pending"; + } + enum "connect" { + value 3; + description + "Connection in Progress"; + } + enum "listen" { + value 4; + description + "Listening in Progress"; + } + enum "registration" { + value 5; + description + "Awaiting Registration from Peer"; + } + enum "cleanup" { + value 6; + description + "Peer cleanup in progress"; + } + enum "connected" { + value 7; + description + "Peer Connected"; + } + enum "established" { + value 8; + description + "Peer Established"; + } + } + description + "SERG Peer Status"; + } + + typedef Serg-show-session-error { + type enumeration { + enum "none" { + value 0; + description + "Invalid Error"; + } + enum "hard" { + value 1; + description + "Hard Error"; + } + enum "soft" { + value 2; + description + "Soft Error"; + } + } + description + "SERG Session Error Operation"; + } + + typedef Serg-show-session-operation { + type enumeration { + enum "none" { + value 0; + description + "No Operation"; + } + enum "update" { + value 1; + description + "SERG Session Update Operation"; + } + enum "delete" { + value 2; + description + "SERG Session Delete Operation"; + } + enum "in-sync" { + value 3; + description + "SERG Session In Sync"; + } + } + description + "SERG Session Operation"; + } + + typedef Serg-show-comp { + type enumeration { + enum "serga" { + value 0; + description + "SERG Agent"; + } + enum "ipv6nd" { + value 1; + description + "IPv6ND"; + } + enum "dhcpv6" { + value 2; + description + "DHCPv6"; + } + enum "daps" { + value 3; + description + "DAPS"; + } + } + description + "SERG Components"; + } + + typedef Serg-show-slave-mode { + type enumeration { + enum "none" { + value 0; + description + "Not Configured"; + } + enum "warm" { + value 1; + description + "Warm Modem"; + } + enum "hot" { + value 2; + description + "Hot Mode"; + } + } + description + "SERG Slave Mode"; + } + + typedef Serg-show-role { + type enumeration { + enum "none" { + value 0; + description + "Not Configured"; + } + enum "master" { + value 1; + description + "Master Role"; + } + enum "slave" { + value 2; + description + "Slave Role"; + } + enum "active" { + value 3; + description + "Active Role"; + } + } + description + "SERG Role"; + } + + typedef Serg-show-im-role { + type enumeration { + enum "none" { + value 0; + description + "Not Determined"; + } + enum "master" { + value 1; + description + "Master Role"; + } + enum "slave" { + value 2; + description + "Slave Role"; + } + enum "active" { + value 3; + description + "Active Role"; + } + } + description + "SERG Interface Management Role"; + } + + grouping SERG-AGT-SHOW-GROUP-LIST-ENTRY { + description + "Session Redundancy Agent Group Summary + Information"; + leaf group-id-xr { + type uint32; + description + "Group ID"; + } + leaf role { + type Serg-show-im-role; + description + "SERG Role"; + } + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf peer-ipv4-address { + type inet:ipv4-address; + description + "Peer IPv4 Address"; + } + leaf peer-ipv6-address { + type inet:ipv6-address; + description + "Peer IPv6 Address"; + } + leaf peer-status { + type Serg-peer-status; + description + "Peer Status"; + } + leaf preferred-role { + type Serg-show-role; + description + "Preferred Role"; + } + leaf slave-mode { + type Serg-show-slave-mode; + description + "Slave Mode"; + } + leaf object-tracking-status { + type boolean; + description + "Object Tracking Status (Enabled/Disabled)"; + } + leaf interface-count { + type uint32; + description + "Interface Count"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + leaf pending-add-session-count { + type uint32; + description + "Pending Session Count for Synchornization"; + } + } + + grouping SERG-SHOW-TXLSTAT { + description + "serg txlstat"; + leaf tx-list-encode-marker-ok { + type uint32; + description + "TxListEncodeMarkerOk"; + } + leaf tx-list-encode-marker-partial-write { + type uint32; + description + "TxListEncodeMarkerPartialWrite"; + } + leaf tx-list-clean-marker { + type uint32; + description + "TxListCleanMarker"; + } + leaf tx-list-encode-command-ok { + type uint32; + description + "TxListEncodeCommandOk"; + } + leaf tx-list-encode-command-partial-write { + type uint32; + description + "TxListEncodeCommandPartialWrite"; + } + leaf tx-list-clean-command { + type uint32; + description + "TxListCleanCommand"; + } + leaf tx-list-encode-negotiation-ok { + type uint32; + description + "TxListEncodeNegotiationOk"; + } + leaf tx-list-encode-negotiation-partial-write { + type uint32; + description + "TxListEncodeNegotiationPartialWrite"; + } + leaf tx-list-clean-negotiation { + type uint32; + description + "TxListCleanNegotiation"; + } + } + + grouping SERG-SHOW-IDB-STATUS-STAT { + description + "serg idb status stat"; + leaf pend-caps-rem-cnt { + type uint32; + description + "No. of interfaces pending caps remove"; + } + leaf pend-reg-disable-cnt { + type uint32; + description + "No. of interfaces pending red disable"; + } + leaf pend-other-batch-oper-cnt { + type uint32; + description + "No. of interfaces pending for other (except + unreg/caps rem) batch oper"; + } + leaf non-stale-cnt { + type uint32; + description + "No. of non stale interfaces"; + } + leaf grp-bound-cnt { + type uint32; + description + "No. of interface bound to a group"; + } + } + + grouping SERG-SHOW-TXSEND-TCP-STATISTICS { + description + "TxSend Global Statistics Information"; + leaf messages-sent { + type uint32; + description + "Message Sent Count"; + } + leaf bytes-sent { + type uint32; + units "byte"; + description + "Bytes Sent Count"; + } + leaf messages-received { + type uint32; + description + "Message Received Count"; + } + leaf bytes-received { + type uint32; + units "byte"; + description + "Bytes Received Count"; + } + leaf connect-count { + type uint32; + description + "Socket Connect Count"; + } + leaf blocked-connect-count { + type uint32; + description + "Blocked Socket Connect Count"; + } + leaf connect-retry-count { + type uint32; + description + "Socket Connect Retry Count"; + } + leaf remote-node-down-count { + type uint32; + description + "Remote Peer DisConnect Count"; + } + leaf accept-count { + type uint32; + description + "Socket Accept Count"; + } + leaf maximum-sent-message-size { + type uint32; + description + "Maximum Size of Sent Message"; + } + leaf maximum-received-message-size { + type uint32; + description + "Maximum Size of Received Message"; + } + leaf peer-pause-count { + type uint32; + description + "Peer Pause Count"; + } + leaf buffer-full-occurence-count { + type uint32; + description + "Buffer Full on Write Occurence Count"; + } + leaf mem-move-message-count { + type uint32; + description + "Partial Message Memory Move Occurence Count"; + } + leaf mem-move-bytes-count { + type uint32; + description + "Partial Message Memory Move Byte Count"; + } + leaf socket-read-count { + type uint32; + description + "Socket Read Count"; + } + leaf socket-write-count { + type uint32; + description + "Socket Write Count"; + } + leaf active-socket-count { + type uint16; + description + "Active Socket Count"; + } + leaf maximum-requested-buffer-size { + type uint32; + description + "Maximum Size of Requested Buffer"; + } + leaf buffer-freed-count { + type uint16; + description + "Buffer Free Count"; + } + leaf buffer-cache-hit { + type uint16; + description + "Buffer Cache Hit Count"; + } + leaf buffer-cache-miss { + type uint16; + description + "Buffer Cache Miss Count"; + } + } + + grouping SERG-SHOW-OPQ-MEM-STATS { + description + "serg show opq mem stats"; + leaf component { + type Serg-show-comp; + description + "Component"; + } + leaf session-count { + type uint32; + description + "Session count for each component"; + } + leaf opaque-size { + type uint32; + description + "Current Opaque Memory Size for each component"; + } + leaf opaque-high-size { + type uint32; + description + "High Watermark of Opaque Data Size for each + component"; + } + leaf opaque-data-size { + type uint32; + description + "Current Opaque Data Size for each component"; + } + } + + grouping SERG-SHOW-AGT-CLIENT-STATUS { + description + "serg show agt client status"; + leaf component { + type Serg-show-comp; + description + "Component"; + } + leaf client-connection-status { + type boolean; + description + "ClientConnectionStatus"; + } + leaf client-initialization-synchronization-pending { + type boolean; + description + "ClientInitializationSynchronizationPending"; + } + leaf client-synchronization-end-of-download-pending { + type boolean; + description + "ClientSynchronizationEndOfDownloadPending"; + } + leaf up-time-stamp { + type string; + description + "UpTimeStamp"; + } + leaf down-time-stamp { + type string; + description + "DownTimeStamp"; + } + leaf clean-up-timer-remaining { + type uint32; + units "second"; + description + "Value in Seconds to trigger the client cleanup"; + } + } + + grouping SERG-SHOW-AGT-STATISTICS { + description + "serg agt stats t"; + container intf-status-statistics { + description + "intf status statistics"; + uses SERG-SHOW-IDB-STATUS-STAT; + } + container tx-list-statistics { + description + "tx list statistics"; + uses SERG-SHOW-TXLSTAT; + } + leaf source-interface-name { + type string; + description + "Source Interface Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf source-interface-ipv4-address { + type inet:ipv4-address; + description + "Source Interface IPv4 Address"; + } + leaf source-interface-ipv6-address { + type inet:ipv6-address; + description + "Source Interface IPv6 Address"; + } + leaf redundancy-role { + type string; + description + "Redundancy Role"; + } + leaf restart-client-sync-in-progress { + type boolean; + description + "Restart Client Sync In Progress Flag"; + } + leaf client-init-sync-time-stamp { + type string; + description + "Synchronization TimeStamp"; + } + leaf restart-peer-sync-in-progress { + type boolean; + description + "Restart Peer Sync In Progress Flag"; + } + leaf peer-init-sync-time-stamp { + type string; + description + "Synchronization TimeStamp"; + } + leaf sync-in-progress { + type boolean; + description + "Sync In Progress Flag"; + } + leaf peer-action-timer { + type uint32; + units "second"; + description + "Value in Seconds to trigger the peer actions"; + } + leaf retry-timer-remaining { + type uint32; + units "second"; + description + "Value in Seconds to trigger the retry"; + } + leaf tx-list-client-registration-invalid { + type uint32; + description + "TxListClientRegistrationInvalid"; + } + leaf tx-list-client-de-registration-invalid { + type uint32; + description + "TxListClientDeRegistrationInvalid"; + } + leaf tx-list-client-connection-up { + type uint32; + description + "TxListClientConnectionUp"; + } + leaf tx-list-client-connection-down { + type uint32; + description + "TxListClientConnectionDown"; + } + leaf tx-list-client-peer-done { + type uint32; + description + "TxListClientPeerDone"; + } + leaf tx-list-client-message-call-back { + type uint32; + description + "TxListClientMessageCallBack"; + } + leaf tx-list-client-receive-valid { + type uint32; + description + "TxListClientReceiveValid"; + } + leaf tx-list-client-receive-invalid { + type uint32; + description + "TxListClientReceiveInValid"; + } + leaf tx-list-client-receive-command-valid { + type uint32; + description + "TxListClientReceiveCommandValid"; + } + leaf tx-list-client-receive-command-invalid { + type uint32; + description + "TxListClientReceiveCommandInValid"; + } + leaf tx-list-client-receive-session-sessionvalid { + type uint32; + description + "TxListClientReceiveSessionSessionValid"; + } + leaf tx-list-client-receive-session-session-invalid { + type uint32; + description + "TxListClientReceiveSessionSessionInValid"; + } + leaf tx-list-peer-timer-handler { + type uint32; + description + "TxListPeerTimerHandler"; + } + leaf tx-list-peer-registration-invalid { + type uint32; + description + "TxListPeerRegistrationInValid"; + } + leaf tx-list-peer-de-registration-invalid { + type uint32; + description + "TxListPeerDeRegistrationInValid"; + } + leaf tx-list-peer-message-call-back-valid { + type uint32; + description + "TxListPeerMessageCallBackValid"; + } + leaf tx-list-peer-message-call-back-invalid { + type uint32; + description + "TxListPeerMessageCallBackInValid"; + } + leaf tx-list-peer-done { + type uint32; + description + "TxListPeerDone"; + } + leaf tx-list-peer-cmd-connection-up-not-ok { + type uint32; + description + "TxListPeerCmdConnectionUpNotOk"; + } + leaf tx-list-peer-cmd-connection-down-not-ok { + type uint32; + description + "TxListPeerCmdConnectionDownNotOk"; + } + leaf tx-list-peer-session-connection-up-not-ok { + type uint32; + description + "TxListPeerSessionConnectionUpNotOk"; + } + leaf tx-list-peer-session-connection-down-not-ok { + type uint32; + description + "TxListPeerSessionConnectionDownNotOk"; + } + leaf tx-list-send-pool-update-not-ok { + type uint32; + description + "TxListSendPoolUpdateNotOk"; + } + list client-status { + description + "Client Status"; + uses SERG-SHOW-AGT-CLIENT-STATUS; + } + list opaque-memory-status { + description + "Opaque memory Stats"; + uses SERG-SHOW-OPQ-MEM-STATS; + } + list tx-list-over-tcp-status { + description + "TCP TxList Statistics"; + uses SERG-SHOW-TXSEND-TCP-STATISTICS; + } + } + + grouping SERG-SHOW-AGT-INTF-CLIENT-STATUS { + description + "serg show agt intf client status"; + leaf component { + type Serg-show-comp; + description + "Component"; + } + leaf serg-show-idb-client-eoms-pending { + type boolean; + description + "SERG SHOW IDB CLIENT EOMS PENDING"; + } + leaf serg-show-idb-client-sync-eod-pending { + type boolean; + description + "SERG SHOW IDB CLIENT SYNC EOD PENDING"; + } + leaf session-count { + type uint32; + description + "session count"; + } + } + + grouping SERG-SHOW-INTF-STATUS { + description + "Session Redundancy Interface Status"; + leaf idb-state-fwd-ref { + type boolean; + description + "Interface Forward Referenced"; + } + leaf idb-state-stale { + type boolean; + description + "Interface State Stale"; + } + leaf idb-state-registered { + type boolean; + description + "Interface State Registered"; + } + leaf idb-state-caps-added { + type boolean; + description + "Interface State Caps Added"; + } + leaf idb-state-owned-re-source { + type boolean; + description + "Interface State Owned Resource"; + } + leaf idb-client-eoms-pending { + type boolean; + description + "Interface Client EOMS Pending"; + } + leaf idb-state-p-end-caps-rem { + type boolean; + description + "Interface Caps Remove Pending"; + } + leaf idb-state-p-end-reg-disable { + type boolean; + description + "Interface Registration Disable Pending"; + } + } + + grouping SERG-SHOW-INTF-OPER { + description + "Session Redundancy Interface Operational Status"; + leaf idb-oper-reg-enable { + type boolean; + description + "Operational Registration Enabled"; + } + leaf idb-oper-reg-disable { + type boolean; + description + "Operational Registration Disabled"; + } + leaf idb-oper-caps-add { + type boolean; + description + "Operational Caps Add"; + } + leaf idb-oper-caps-remove { + type boolean; + description + "Operational Caps Remove"; + } + leaf idb-oper-attr-update { + type boolean; + description + "Operational Attribute Update"; + } + } + + grouping SERG-SHOW-AGT-INTF-ENTRY { + description + "Session Redundancy Agent Interface Information"; + container interface-oper { + description + "Interface Batch Operation"; + uses SERG-SHOW-INTF-OPER; + } + container interface-status { + description + "Interface Status"; + uses SERG-SHOW-INTF-STATUS; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf interface-synchronization-id { + type uint32; + description + "Interface Sync ID"; + } + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf role { + type Serg-show-im-role; + description + "SERG Role"; + } + leaf forward-referenced { + type boolean; + description + "Forward Referenced"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + leaf interface-enable-error-count { + type uint32; + description + "Interface Enable Error Count"; + } + leaf interface-disable-error-count { + type uint32; + description + "Interface Disable Error Count"; + } + leaf interface-caps-add-error-count { + type uint32; + description + "Interface Caps Add Error Count"; + } + leaf interface-caps-remove-error-count { + type uint32; + description + "Interface Caps Remove Error Count"; + } + leaf interface-attribute-update-error-count { + type uint32; + description + "Interface Attribute Update Error Count"; + } + list client-status { + description + "Interface status for each client"; + uses SERG-SHOW-AGT-INTF-CLIENT-STATUS; + } + } + + grouping SERG-SHOW-GROUP-POOL-INFO { + description + "Session Redundancy Group Interface-List + Information"; + leaf pool-name { + type string; + description + "Pool Name"; + } + } + + grouping SERG-SHOW-GROUP-INTF-INFO { + description + "Session Redundancy Group Interface-List + Information"; + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf interface-synchronization-id { + type uint32; + description + "Interface Synchronization ID"; + } + leaf forward-referenced { + type boolean; + description + "Forward Referenced"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + } + + grouping SERG-SHOW-CLIENT-SESSION-COUNT { + description + "Session Redundancy Client Session Count + Information"; + leaf component { + type Serg-show-comp; + description + "Component"; + } + leaf session-count { + type uint32; + description + "Session count"; + } + } + + grouping SERG-SHOW-GROUP-ENTRY { + description + "Session Redundancy Group Information"; + leaf group-id-xr { + type uint32; + description + "Group ID"; + } + leaf description { + type string; + description + "Group Description"; + } + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf init-role { + type Serg-show-role; + description + "Preferred Init Role"; + } + leaf negotiating-role { + type Serg-show-role; + description + "Negotiating Role"; + } + leaf current-role { + type Serg-show-role; + description + "Current Role"; + } + leaf slave-mode { + type Serg-show-slave-mode; + description + "Slave Mode"; + } + leaf hold-timer { + type uint32; + description + "Switch Over Hold Time"; + } + leaf core-tracking-object-name { + type string; + description + "Core Object Tracking Name"; + } + leaf core-tracking-object-status { + type boolean; + description + "Core Object Tracking Status"; + } + leaf access-tracking-object-name { + type string; + description + "Access Object Tracking Name"; + } + leaf access-tracking-object-status { + type boolean; + description + "Access Object Tracking Status"; + } + leaf object-tracking-status { + type boolean; + description + "Object Tracking Status (Enabled/Disabled)"; + } + leaf peer-ipv4-address { + type inet:ipv4-address; + description + "Peer IPv4 Address"; + } + leaf peer-ipv6-address { + type inet:ipv6-address; + description + "Peer IPv6 Address"; + } + leaf peer-status { + type Serg-peer-status; + description + "Peer Status"; + } + leaf peer-last-negotiation-time { + type string; + description + "Last Negotiation time of Peer"; + } + leaf peer-last-up-time { + type string; + description + "Last UP time of Peer"; + } + leaf peer-last-down-time { + type string; + description + "Last Down time of Peer"; + } + leaf peer-init-role { + type Serg-show-role; + description + "Peer Preferred Init Role"; + } + leaf peer-negotiating-role { + type Serg-show-role; + description + "Peer Negotiating Role"; + } + leaf peer-current-role { + type Serg-show-role; + description + "Peer Current Role"; + } + leaf peer-object-tracking-status { + type boolean; + description + "Peer Object Tracking Status"; + } + leaf last-switchover-time { + type string; + description + "Last Switchover time"; + } + leaf switchover-count { + type uint32; + description + "Switchover Count"; + } + leaf last-switchover-reason { + type Serg-show-so-reason; + description + "Last Switchover Reason"; + } + leaf switchover-hold-time { + type uint32; + units "second"; + description + "Switchover Hold Time in seconds"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + leaf slave-update-failure-count { + type uint32; + description + "Slave Session update fail count"; + } + leaf pending-session-update-count { + type uint32; + description + "Pending Session Update Count"; + } + leaf pending-session-delete-count { + type uint32; + description + "Pending Session Delete Count"; + } + leaf interface-count { + type uint32; + description + "No. of Configured Interfaces"; + } + leaf revertive-timer { + type uint32; + description + "Revertive timer for SWO back"; + } + leaf switchover-revert-time { + type uint32; + units "second"; + description + "Switchover Revert Time in seconds"; + } + leaf pool-count { + type uint32; + description + "No. of Configured Pools"; + } + list client-session-count { + description + "Client Session Count"; + uses SERG-SHOW-CLIENT-SESSION-COUNT; + } + list interface { + description + "Interface List"; + uses SERG-SHOW-GROUP-INTF-INFO; + } + list pool { + description + "Pool List"; + uses SERG-SHOW-GROUP-POOL-INFO; + } + } + + grouping SERG-SHOW-AGT-CLIENT-STATISTICS { + description + "serg agt c stats t"; + leaf tx-list-start-of-download-add-ok { + type uint32; + description + "TxListStartOfDownloadAddOk"; + } + leaf tx-list-start-of-download-add-not-ok { + type uint32; + description + "TxListStartOfDownloadAddNotOk"; + } + leaf tx-list-end-of-download-add-ok { + type uint32; + description + "TxListEndOfDownloadAddOk"; + } + leaf tx-list-end-of-download-add-not-ok { + type uint32; + description + "TxListEndOfDownloadAddNotOk"; + } + leaf tx-list-end-of-message-add-ok { + type uint32; + description + "TxListEndOfMessageAddOk"; + } + leaf tx-list-end-of-message-add-not-ok { + type uint32; + description + "TxListEndOfMessageAddNotOk"; + } + leaf tx-list-clear-all-add-ok { + type uint32; + description + "TxListClearAllAddOk"; + } + leaf tx-list-clear-all-add-not-ok { + type uint32; + description + "TxListClearAllAddNotOk"; + } + leaf tx-list-clear-selected-add-ok { + type uint32; + description + "TxListClearSelectedAddOk"; + } + leaf tx-list-clear-selected-add-not-ok { + type uint32; + description + "TxListClearSelectedAddNotOk"; + } + leaf tx-list-replay-all-add-ok { + type uint32; + description + "TxListReplayAllAddOk"; + } + leaf tx-list-replay-all-add-not-ok { + type uint32; + description + "TxListReplayAllAddNotOk"; + } + leaf tx-list-replay-selected-add-ok { + type uint32; + description + "TxListReplaySelectedAddOk"; + } + leaf tx-list-replay-selected-add-not-ok { + type uint32; + description + "TxListReplaySelectedAddNotOk"; + } + leaf tx-list-session-session-add-ok { + type uint32; + description + "TxListSessionSessionAddOk"; + } + leaf tx-list-session-session-add-not-ok { + type uint32; + description + "TxListSessionSessionAddNotOk"; + } + leaf tx-list-session-session-update-ok { + type uint32; + description + "TxListSessionSessionUpdateOk"; + } + leaf tx-list-session-session-update-not-ok { + type uint32; + description + "TxListSessionSessionUpdateNotOk"; + } + leaf tx-list-session-session-delete { + type uint32; + description + "TxListSessionSessionDelete"; + } + leaf clean-call-back { + type uint32; + description + "CleanCallBack"; + } + leaf tx-list-encode-session-session-ok { + type uint32; + description + "TxListEncodeSessionSessionOk"; + } + leaf tx-list-encode-session-session-partial-write { + type uint32; + description + "TxListEncodeSessionSessionPartialWrite"; + } + leaf last-replay-all-count { + type uint32; + description + "LastReplayAllCount"; + } + leaf tx-list-receive-command-replay-all { + type uint32; + description + "TxListReceiveCommandReplayAll"; + } + leaf tx-list-receive-command-replay-selected { + type uint32; + description + "TxListReceiveCommandReplaySelected"; + } + leaf tx-list-receive-session-session-delete-valid { + type uint32; + description + "TxListReceiveSessionSessionDeleteValid"; + } + leaf tx-list-receive-session-session-delete-invalid { + type uint32; + description + "TxListReceiveSessionSessionDeleteInValid"; + } + leaf tx-list-receive-session-session-update-valid { + type uint32; + description + "TxListReceiveSessionSessionUpdateValid"; + } + leaf tx-list-receive-session-session-update-invalid { + type uint32; + description + "TxListReceiveSessionSessionUpdateInValid"; + } + leaf tx-list-receive-session-session-sod-all { + type uint32; + description + "TxListReceiveSessionSessionSODAll"; + } + leaf tx-list-receive-session-session-sod-selected { + type uint32; + description + "TxListReceiveSessionSessionSODSelected"; + } + leaf tx-list-receive-session-session-eod-all { + type uint32; + description + "TxListReceiveSessionSessionEODAll"; + } + leaf tx-list-receive-session-session-eod-selected { + type uint32; + description + "TxListReceiveSessionSessionEODSelected"; + } + leaf tx-list-rx-tcp-restart-start-of-download { + type uint32; + description + "TxListRxTCPRestartStartOfDownload"; + } + leaf tx-list-rx-tcp-restart-end-of-download { + type uint32; + description + "TxListRxTCPRestartEndOfDownload"; + } + leaf tx-list-receive-session-session-eoms { + type uint32; + description + "TxListReceiveSessionSessionEOMS"; + } + leaf tx-list-receive-session-session-clear-all { + type uint32; + description + "TxListReceiveSessionSessionClearAll"; + } + leaf tx-list-receive-session-session-clear-selected { + type uint32; + description + "TxListReceiveSessionSessionClearSelected"; + } + leaf tx-list-receive-session-session-neg-ack { + type uint32; + description + "TxListReceiveSessionSessionNegAck"; + } + leaf tx-list-receive-session-session-neg-ack-not-ok { + type uint32; + description + "TxListReceiveSessionSessionNegAckNotOk"; + } + leaf tx-list-client-registration-ok { + type uint32; + description + "TxListClientRegistrationOk"; + } + leaf tx-list-client-registration-not-ok { + type uint32; + description + "TxListClientRegistrationNotOk"; + } + leaf tx-list-client-de-registration { + type uint32; + description + "TxListClientDeRegistration"; + } + leaf tx-list-client-connection-down { + type uint32; + description + "TxListClientConnectionDown"; + } + leaf tx-list-client-cleanup { + type uint32; + description + "TxListClientCleanup"; + } + leaf tx-list-active-ok { + type uint32; + description + "TxListActiveOk"; + } + leaf tx-list-active-not-ok { + type uint32; + description + "TxListActiveNotOk"; + } + leaf tx-list-de-active-ok { + type uint32; + description + "TxListDeActiveOk"; + } + leaf tx-list-de-active-not-ok { + type uint32; + description + "TxListDeActiveNotOk"; + } + leaf tx-list-send-pool-role-ok { + type uint32; + description + "TxListSendPoolRoleOk"; + } + leaf tx-list-send-pool-role-not-ok { + type uint32; + description + "TxListSendPoolRoleNotOk"; + } + leaf tx-list-send-pool-update-ok { + type uint32; + description + "TxListSendPoolUpdateOk"; + } + leaf tx-list-send-pool-update-not-ok { + type uint32; + description + "TxListSendPoolUpdateNotOk"; + } + leaf tx-list-recv-pool-update-ok { + type uint32; + description + "TxListRecvPoolUpdateOk"; + } + } + + grouping SERG-SHOW-SESSION-ERROR-INFO { + description + "Session Redundancy Session Verbose Client Error + Information"; + leaf sync-error-count { + type uint16; + description + "No. of Errors occured during Synchronization"; + } + leaf last-error-code { + type uint32; + description + "Last Error Code"; + } + leaf last-error-type { + type Serg-show-session-error; + description + "Last Error Type"; + } + } + + grouping SERG-SHOW-SESSION-CLIENT { + description + "Session Redundancy Session Verbose Client + Information"; + leaf component { + type Serg-show-comp; + description + "Component"; + } + leaf operation { + type Serg-show-session-operation; + description + "Operation Code"; + } + leaf tx-list-queue-fail { + type boolean; + description + "Tx List Queue Failed"; + } + leaf marked-for-sweeping { + type boolean; + description + "Marked For Sweeping"; + } + leaf marked-for-cleanup { + type boolean; + description + "Marked For Cleanup"; + } + } + + grouping SERG-SHOW-SESSION-ENTRY { + description + "Session Redundancy Session Information"; + leaf group-id-xr { + type uint32; + description + "Group ID"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf key-index { + type string; + description + "Key index"; + } + leaf role-master { + type boolean; + description + "Master Role is Set"; + } + leaf role-active { + type boolean; + description + "Active Role is Set"; + } + leaf negative-acknowledgement-update-all { + type boolean; + description + "Negative Acknowledgement Update Flag is Set"; + } + leaf entry-type { + type boolean; + description + "Local or Sync Entry"; + } + list session-detailed-information { + description + "More Session Information"; + uses SERG-SHOW-SESSION-CLIENT; + } + list session-sync-error-information { + description + "Session Synchroniation Error Information"; + uses SERG-SHOW-SESSION-ERROR-INFO; + } + } + + grouping SERG-SHOW-MGR-SUMMARY { + description + "Session Redundancy Manager Summary Information"; + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf active-state { + type boolean; + description + "Process Active State"; + } + leaf preferred-role { + type Serg-show-role; + description + "Preferred Role"; + } + leaf slave-mode { + type Serg-show-slave-mode; + description + "Slave Mode"; + } + leaf hold-timer { + type uint32; + description + "Switch Over Hold Time"; + } + leaf source-interface-name { + type string; + description + "Source Interface Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf source-interface-ipv4-address { + type inet:ipv4-address; + description + "Source Interface IPv4 Address"; + } + leaf source-interface-ipv6-address { + type inet:ipv6-address; + description + "Source Interface IPv6 Address"; + } + leaf group-count { + type uint32; + description + "No. of Configured Groups"; + } + leaf disabled-group-count { + type uint32; + description + "No. of Disabled Groups by Config"; + } + leaf master-group-count { + type uint32; + description + "No. of Master/Active Groups"; + } + leaf slave-group-count { + type uint32; + description + "No. of Slave Groups"; + } + leaf active-group-count { + type uint32; + description + "No. of Active Groups"; + } + leaf interface-count { + type uint32; + description + "No. of Configured Interfaces"; + } + leaf master-interface-count { + type uint32; + description + "No. of Master/Active Interfaces"; + } + leaf slave-interface-count { + type uint32; + description + "No. of Slave Interfaces"; + } + leaf active-interface-count { + type uint32; + description + "No. of Active Interfaces"; + } + leaf pool-count { + type uint32; + description + "No. of Configured Pools"; + } + } + + grouping SERG-SHOW-MGR-GROUP-ENTRY { + description + "Session Redundancy Manager Group Information"; + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf description { + type string; + description + "Group Description"; + } + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf role { + type Serg-show-im-role; + description + "SERG Role"; + } + leaf peer-ipv4-address { + type inet:ipv4-address; + description + "Peer IPv4 Address"; + } + leaf peer-ipv6-address { + type inet:ipv6-address; + description + "Peer IPv6 Address"; + } + leaf interface-count { + type uint32; + description + "Interface Count"; + } + leaf preferred-role { + type Serg-show-role; + description + "Preferred Role"; + } + leaf slave-mode { + type Serg-show-slave-mode; + description + "Slave Mode"; + } + leaf object-tracking-status { + type boolean; + description + "Object Tracking Status (Enabled/Disabled)"; + } + leaf node-name { + type string; + description + "Node Information"; + } + } + + grouping SERG-SHOW-MGR-INTF-ENTRY { + description + "Session Redundancy Manager Interface Information"; + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf interface-mapping-id { + type uint32; + description + "Interface Mapping ID"; + } + leaf forward-referenced { + type boolean; + description + "Forward Referenced"; + } + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf role { + type Serg-show-im-role; + description + "SERG Role"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub2.yang new file mode 100644 index 000000000..f9f7c1b58 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper-sub2.yang @@ -0,0 +1,189 @@ +submodule Cisco-IOS-XR-infra-serg-oper-sub2 { + belongs-to Cisco-IOS-XR-infra-serg-oper { + prefix Cisco-IOS-XR-infra-serg-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-serg package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Serg-show-mem { + type enumeration { + enum "standard" { + value 0; + description + "Standard type"; + } + enum "chunk" { + value 1; + description + "Chunk type"; + } + enum "edm" { + value 2; + description + "EDM type"; + } + enum "string" { + value 3; + description + "String type"; + } + enum "static" { + value 4; + description + "Static type"; + } + enum "unknown" { + value 5; + description + "Unknown type"; + } + } + description + "SERG Memory Manager type"; + } + + grouping SERG-SHOW-STRING-MEMORY-INFO { + description + "string memory Information"; + leaf size { + type uint32; + description + "Size of the block"; + } + leaf total { + type uint32; + description + "Total request"; + } + leaf success { + type uint32; + description + "Cache-hit success"; + } + leaf failure { + type uint32; + description + "Cache-hit failure"; + } + } + + grouping SERG-SHOW-EDM-MEMORY-INFO { + description + "edm memory Information"; + leaf size { + type uint32; + description + "Size of the block"; + } + leaf total { + type uint32; + description + "Total request"; + } + leaf success { + type uint32; + description + "Cache-hit success"; + } + leaf failure { + type uint32; + description + "Cache-hit failure"; + } + } + + grouping SERG-SHOW-MEMORY-INFO { + description + "memory Information"; + leaf structure-name { + type string; + description + "Structure Name"; + } + leaf size { + type uint32; + description + "Size of the datastructure"; + } + leaf current-count { + type uint32; + description + "Current Count"; + } + leaf alloc-fails { + type uint32; + description + "Allocation Fails"; + } + leaf alloc-count { + type uint32; + description + "Allocated count"; + } + leaf freed-count { + type uint32; + description + "Freed Count"; + } + leaf memory-type { + type Serg-show-mem; + description + "Memory Type"; + } + } + + grouping SERG-SHOW-MEMORY { + description + "Memory Information"; + list memory-info { + description + "Memory Info"; + uses SERG-SHOW-MEMORY-INFO; + } + list edm-memory-info { + description + "EDM Memory Info"; + uses SERG-SHOW-EDM-MEMORY-INFO; + } + list string-memory-info { + description + "String Memory Info"; + uses SERG-SHOW-STRING-MEMORY-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper.yang new file mode 100644 index 000000000..d00cc615f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-serg-oper.yang @@ -0,0 +1,202 @@ +module Cisco-IOS-XR-infra-serg-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-serg-oper"; + prefix infra-serg-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-serg-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-infra-serg-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-serg package operational data. + + This module contains definitions + for the following management objects: + session-redundancy-manager: Session Redundancy Manager + information + session-redundancy-agent: Session Redundancy Agent information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container session-redundancy-manager { + config false; + description + "Session Redundancy Manager information"; + container interfaces { + description + "Subscriber Redundancy Manager interface table"; + list interface { + key "interface"; + description + "interface redundancy manager interface"; + leaf interface { + type xr:Cisco-ios-xr-string; + description + "Interface"; + } + uses SERG-SHOW-MGR-INTF-ENTRY; + } + } + container groups { + description + "Session Redundancy Manager group table"; + list group { + key "group"; + description + "Session redundancy manager group"; + leaf group { + type xr:Cisco-ios-xr-string; + description + "Group"; + } + uses SERG-SHOW-MGR-GROUP-ENTRY; + } + } + container summary { + description + "Session redundancy manager summary"; + uses SERG-SHOW-MGR-SUMMARY; + } + } + container session-redundancy-agent { + config false; + description + "Session Redundancy Agent information"; + container nodes { + description + "List of nodes for which session data is + collected"; + list node { + key "node-name"; + description + "Session data for a particular node"; + container group-id-xr { + description + "Data for particular subscriber group session"; + list group-id { + key "group-id"; + description + "Group id for subscriber group session"; + leaf group-id { + type xr:Cisco-ios-xr-string; + description + "GroupId"; + } + uses SERG-SHOW-SESSION-ENTRY; + } + } + container client-ids { + description + "Stats Client"; + list client-id { + key "stats-client-id"; + description + "Specify stats client"; + leaf stats-client-id { + type uint32; + description + "Client Id"; + } + uses SERG-SHOW-AGT-CLIENT-STATISTICS; + } + } + container memory { + description + "Show Memory"; + uses SERG-SHOW-MEMORY; + } + container group-ids { + description + "Data for particular subscriber group "; + list group-id { + key "group-id"; + description + "Group id for subscriber group"; + leaf group-id { + type xr:Cisco-ios-xr-string; + description + "Group Id"; + } + uses SERG-SHOW-GROUP-ENTRY; + } + } + container interfaces { + description + "List of interfaces"; + list interface { + key "interface"; + description + "Specify interface name"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses SERG-SHOW-AGT-INTF-ENTRY; + } + } + container stats-global { + description + "Stats Global"; + uses SERG-SHOW-AGT-STATISTICS; + } + container group-summaries { + description + "Session data for a particular node"; + list group-summary { + key "group-id"; + description + "Session redundancy agent group summary"; + leaf group-id { + type xr:Cisco-ios-xr-string; + description + "GroupId"; + } + uses SERG-AGT-SHOW-GROUP-LIST-ENTRY; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-cfg.yang new file mode 100644 index 000000000..5d92e606e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-cfg.yang @@ -0,0 +1,60 @@ +module Cisco-IOS-XR-infra-sla-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-sla-cfg"; + prefix infra-sla-cfg; + + 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 infra-sla package configuration. + + This module contains definitions + for the following management objects: + sla: SLA prtocol and profile Configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-29 { + description + "Add microsecond granularity to aggregate bins"; + semver:module-version "1.0.1"; + } + revision 2019-10-02 { + description + "Thresholds and actions schema/yang updated with stateful thresholds"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sla { + description + "SLA prtocol and profile Configuration"; + container protocols { + description + "Table of all SLA protocols"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-datatypes.yang new file mode 100644 index 000000000..c44bc392f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-datatypes.yang @@ -0,0 +1,534 @@ +module Cisco-IOS-XR-infra-sla-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-sla-datatypes"; + prefix infra-sla-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-09 { + description + "Add Stateful to SLA Threshold type enumeration"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sla-burst-interval-units-enum { + type enumeration { + enum "once" { + value 1; + description + "Send one burst per probe"; + } + enum "milliseconds" { + value 2; + description + "Send bursts within a probe with an interval + unit of milliseconds"; + } + enum "seconds" { + value 3; + description + "Send bursts within a probe with an interval + unit of seconds"; + } + enum "minutes" { + value 4; + description + "Send bursts within a probe with an interval + unit of minutes"; + } + enum "hours" { + value 5; + description + "Send bursts within a probe with an interval + unit of hours"; + } + } + description + "Sla burst interval units enum"; + } + + typedef Sla-threshold-type-enum { + type enumeration { + enum "stateful" { + value 0; + description + "Stateful threshold"; + } + enum "stateless" { + value 1; + description + "Stateless threshold"; + } + } + description + "Sla threshold type enum"; + } + + typedef Sla-send { + type enumeration { + enum "packet" { + value 0; + description + "Send individual packets"; + } + enum "burst" { + value 1; + description + "Send bursts of packets"; + } + } + description + "Sla send"; + } + + typedef Sla-probe-interval-day-enum { + type enumeration { + enum "monday" { + value 1; + description + "Schedule every Monday"; + } + enum "tuesday" { + value 2; + description + "Schedule every Tuesday"; + } + enum "wednesday" { + value 3; + description + "Schedule every Wednesday"; + } + enum "thursday" { + value 4; + description + "Schedule every Thursday"; + } + enum "friday" { + value 5; + description + "Schedule every Friday"; + } + enum "saturday" { + value 6; + description + "Schedule every Saturday"; + } + enum "sunday" { + value 7; + description + "Schedule every Sunday"; + } + } + description + "Sla probe interval day enum"; + } + + typedef Sla-packet-interval-units-enum { + type enumeration { + enum "once" { + value 1; + description + "Send one packet per burst"; + } + enum "milliseconds" { + value 2; + description + "Send packets with an interval unit of + milliseconds"; + } + enum "seconds" { + value 3; + description + "Send packets with an interval unit of seconds"; + } + enum "minutes" { + value 4; + description + "Send packets with an interval unit of minutes"; + } + enum "hours" { + value 5; + description + "Send packets with an interval unit of hours"; + } + } + description + "Sla packet interval units enum"; + } + + typedef Sla-on-demand-repeat-interval-units-enum { + type enumeration { + enum "seconds" { + value 3; + description + "Schedule probes to repeat with an interval unit + of seconds"; + } + enum "minutes" { + value 4; + description + "Schedule probes to repeat with an interval unit + of minutes"; + } + enum "hours" { + value 5; + description + "Schedule probes to repeat with an interval unit + of hours"; + } + } + description + "Sla on demand repeat interval units enum"; + } + + typedef Sla-probe-duration-units-enum { + type enumeration { + enum "seconds" { + value 3; + description + "Schedule probes to run with a duration unit of + seconds"; + } + enum "minutes" { + value 4; + description + "Schedule probes to run with a duration unit of + minutes"; + } + enum "hours" { + value 5; + description + "Schedule probes to run with a duration unit of + hours"; + } + enum "day" { + value 6; + description + "Schedule probes to run for a duration of 1 day"; + } + enum "week" { + value 7; + description + "Schedule probes to run for a duration of 1 week"; + } + } + description + "Sla probe duration units enum"; + } + + typedef Sla-statistic-type-enum { + type enumeration { + enum "round-trip-delay" { + value 1; + description + "Collect round trip delay metric data"; + } + enum "one-way-delay-sd" { + value 2; + description + "Collect one way delay source->dest metric data"; + } + enum "one-way-delay-ds" { + value 3; + description + "Collect one way delay dest->source metric data"; + } + enum "round-trip-jitter" { + value 4; + description + "Collect round trip delay metric data"; + } + enum "one-way-jitter-sd" { + value 5; + description + "Collect one way jitter source->dest metric data"; + } + enum "one-way-jitter-ds" { + value 6; + description + "Collect one way jitter dest->source metric data"; + } + enum "one-way-loss-sd" { + value 7; + description + "Collect one way loss source->dest metric data"; + } + enum "one-way-loss-ds" { + value 8; + description + "Collect one way loss dest->source metric data"; + } + } + description + "Sla statistic type enum"; + } + + typedef Sla-buckets-size-units-enum { + type enumeration { + enum "buckets-per-probe" { + value 0; + description + "Store results as a number of buckets per probe + - note that this option has been DEPRECATED"; + } + enum "probes-per-bucket" { + value 1; + description + "Store results as a number of probes per bucket"; + } + } + description + "Sla buckets size units enum"; + } + + typedef Sla-threshold-condition-enum { + type enumeration { + enum "max" { + value 0; + description + "Threshold is breached when the maximum value + crosses the configured threshold value"; + } + enum "mean" { + value 1; + description + "Threshold is breached when the mean value + crosses the configured threshold value"; + } + enum "sample-count" { + value 2; + description + "Threshold is breached when the sample count in + bins in and above a certain bin number crosses + the configured sample count"; + } + } + description + "Sla threshold condition enum"; + } + + typedef Sla-probe-interval-units-enum { + type enumeration { + enum "minutes" { + value 4; + description + "Schedule probes to run with an interval unit of + minutes"; + } + enum "hours" { + value 5; + description + "Schedule probes to run with an interval unit of + hours"; + } + enum "day" { + value 6; + description + "Schedule probes to run every day"; + } + enum "week" { + value 7; + description + "Schedule probes to run every week"; + } + } + description + "Sla probe interval units enum"; + } + + typedef Sla-on-demand-start-month-enum { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + description + "Sla on demand start month enum"; + } + + typedef Sla-padding-pattern { + type enumeration { + enum "hex" { + value 0; + description + "Use an optionally specified hex pattern for + packet padding"; + } + enum "pseudo-random" { + value 1; + description + "Use a pseudo-random bit sequence for packet + padding"; + } + } + description + "Sla padding pattern"; + } + + typedef Sla-on-demand-start-time-types-enum { + type enumeration { + enum "now" { + value 0; + description + "Start immediately"; + } + enum "absolute" { + value 1; + description + "Start at a specified time"; + } + enum "relative" { + value 2; + description + "Start after a specified period"; + } + } + description + "Sla on demand start time types enum"; + } + + typedef Sla-on-demand-probe-duration-units-enum { + type enumeration { + enum "seconds" { + value 3; + description + "Schedule probes to run with a duration unit of + seconds"; + } + enum "minutes" { + value 4; + description + "Schedule probes to run with a duration unit of + minutes"; + } + enum "hours" { + value 5; + description + "Schedule probes to run with a duration unit of + hours"; + } + } + description + "Sla on demand probe duration units enum"; + } + + typedef Sla-on-demand-start-time-relative-units-enum { + type enumeration { + enum "seconds" { + value 3; + description + "Schedule probe to start after a unit of seconds"; + } + enum "minutes" { + value 4; + description + "Schedule probe to start after a unit of minutes"; + } + enum "hours" { + value 5; + description + "Schedule probe to start after a unit of hours"; + } + } + description + "Sla on demand start time relative units enum"; + } + + typedef Sla-action-type-enum-default { + type enumeration { + enum "log" { + value 0; + description + "Emit a syslog when the threshold is crossed"; + } + } + description + "Sla action type enum default"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-oper.yang new file mode 100644 index 000000000..7d0f23702 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-sla-oper.yang @@ -0,0 +1,57 @@ +module Cisco-IOS-XR-infra-sla-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-sla-oper"; + prefix infra-sla-oper; + + 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 infra-sla package operational data. + + This module contains definitions + for the following management objects: + sla: SLA oper commands + sla-nodes: SLA Node table for node-specific operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sla { + config false; + description + "SLA oper commands"; + container protocols { + description + "Table of all SLA protocols"; + } + } + container sla-nodes { + config false; + description + "SLA Node table for node-specific operational data"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper-sub1.yang new file mode 100644 index 000000000..161d69b01 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper-sub1.yang @@ -0,0 +1,1550 @@ +submodule Cisco-IOS-XR-infra-smartlicense-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-smartlicense-oper { + prefix Cisco-IOS-XR-infra-smartlicense-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-smartlicense package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Export-status-time-enum { + type enumeration { + enum "time-not-started" { + description + "time not started"; + } + enum "time-in-progress" { + description + "time in progress"; + } + enum "time-success" { + description + "time success"; + } + enum "time-failed" { + description + "time failed"; + } + } + description + "exportStatusTimeEnum"; + } + + typedef License-term-type-enum { + type enumeration { + enum "none" { + description + "There is no term information. Probably an error + condition."; + } + enum "perpetual" { + description + "License term type is perpetual."; + } + enum "term" { + description + "term license that includes a start and end date"; + } + enum "subscription" { + description + "License term type is subscription."; + } + enum "max" { + description + "max value"; + } + } + description + "The license term type."; + } + + typedef License-enforcement-type-enum { + type enumeration { + enum "invalid" { + description + "Invalid"; + } + enum "not-enforced" { + description + "License type is not enforced."; + } + enum "enforced" { + description + "License type is enforced."; + } + enum "export" { + description + "License type is export restricted."; + } + enum "license-enforcement-max" { + description + "Max Value"; + } + } + description + "The license (entitlement tag) type."; + } + + typedef Install-status-enum { + type enumeration { + enum "in-progress" { + description + "in progress"; + } + enum "not-installed" { + description + "not installed"; + } + enum "type-universal" { + description + "type universal"; + } + enum "type-specific" { + description + "type specific"; + } + } + description + "install state"; + } + + typedef Export-entitlement-status-enum { + type enumeration { + enum "not-restricted" { + value 1; + description + "not restricted"; + } + enum "authorized" { + value 2; + description + "authorized"; + } + enum "not-authorized" { + value 3; + description + "not authorized"; + } + } + description + "exportEntitlementStatusEnum"; + } + + typedef Reservation-usage-status-enum { + type enumeration { + enum "not-installed" { + description + "not installed"; + } + enum "plr-installed" { + description + "plr installed"; + } + enum "slr-installed" { + description + "slr installed"; + } + enum "in-progress" { + description + "in progress"; + } + } + description + "reservationUsageStatusEnum"; + } + + typedef Enforcement-mode-enum { + type enumeration { + enum "waiting" { + value 0; + description + "The initial state after an entitlement request + while we are waiting for the Authorization + request response. In this mode the device will + already have established communications with + Cisco and successfully registered with the + Cisco Licensing cloud."; + } + enum "in-compliance" { + value 1; + description + "Cisco Smart Software Manager (CSSM) has + responded that the entitlement requested is in + compliance."; + } + enum "out-of-compliance" { + value 2; + description + "Cisco Smart Software Manager (CSSM) has + responded that the entitlement requested is out + of compliance. either too many licenses + /entitlements are in use or the license has not + been purchased "; + } + enum "overage" { + value 3; + description + "more licenses are in use than were purchased + but the customer is still within the terms of + their contract"; + } + enum "evaluation" { + value 4; + description + "The agent is using the evaluation period for + this entitlement. In this mode the device has + not established communications with Cisco and + had not registered"; + } + enum "evaluation-expired" { + value 5; + description + " Eval period has expired"; + } + enum "authorization-expired" { + value 6; + description + "Authorization period has expired. This will + occur if the product has not been able to + communicate with Cisco or a satellite for an + extended period of time, usually 90 days."; + } + enum "reservation-in-compliance" { + value 7; + description + "The entitlement requested is in compliance + because a reservation authorization code is + installed and the product is in Permanent + License Reservation mode."; + } + enum "invalid-tag" { + value 8; + description + "The entitlement tag is invalid. The CSSM does + not recognize the entitlement tag because it is + not in the database. This usually only occurs + during testing."; + } + enum "disabled" { + value 9; + description + "Smart licensing has been disabled. The feature + using this license should be disabled."; + } + enum "in-use" { + value 10; + description + "This entitlement is in use"; + } + enum "not-in-use" { + value 11; + description + "This entitlement is not in use"; + } + enum "not-authorized" { + value 12; + description + "This entitlement is in use but is not + authorized. The feature consuming this + entitlement should be disabled"; + } + enum "mode-invalid" { + value 13; + description + "Error condition state"; + } + enum "mode-init" { + value 14; + description + "The initial state after the handle is created + with SmartAgentCreateHandle This will be the + mode if the entitlement is not in use."; + } + enum "grace-period" { + value 15; + description + "The grace period has being deprecated."; + } + enum "grace-period-expired" { + value 16; + description + "The grace period has been deprecated."; + } + enum "not-applicable" { + value 17; + description + "This enforcement mode will only be set in case + smart agent is operational in enhanced mode."; + } + enum "enforcement-max" { + value 18; + description + "always the last state"; + } + } + description + "For an entitlement tag (license) that is in use + this enumeration tells us how the license is + being enforced."; + } + + typedef Transport-type-enum { + type enumeration { + enum "invalid" { + description + "Not used in most case"; + } + enum "not-used" { + description + "Not used"; + } + enum "callhome" { + description + "Smart Licensing is using callhome for + communications."; + } + enum "smart" { + description + "Smart licensing is using the smart transport + for communications."; + } + enum "clsu" { + description + "Smart licensing will communicate with the CSLU) + for licensing operations"; + } + enum "transport-off" { + description + "Transport off"; + } + } + description + "The type of transport in use by smart licensing."; + } + + typedef Utility-reporting-type-enum { + type enumeration { + enum "none" { + description + "The system is not reporting utility usage data."; + } + enum "subscription" { + description + "The system is reporting utility usage data + because it has received subscription + information from either the SSM or satellite"; + } + enum "certificate" { + description + "The system is reporting utility usage data + because it has received a utility certificate + from a Third Party Billing Platform."; + } + } + description + "Is the system reporting utility data"; + } + + typedef Authorization-state-enum { + type enumeration { + enum "none" { + description + "No licenses are in use so there is no + authorization state to report."; + } + enum "eval" { + description + "Evaluation period is in use and is counting + down."; + } + enum "eval-expired" { + description + "Evaluation period in use but it has expired."; + } + enum "authorized" { + description + "All license usage is authorized and within + terms of the customer's contract."; + } + enum "authorized-reservation" { + description + "All license usage is authorized because a + reservation authorization code is installed."; + } + enum "out-of-compliance" { + description + "License usage is out of compliance with the + terms of the contract. Either too many licenses + are in use or licenses that were not purchased + are in use."; + } + enum "authorization-expired" { + description + "The authorization period has expired because + this product instance has not communicated with + the SSM or satellite in over 90 days."; + } + enum "authorization-not-authorized" { + description + "AuthorizationNotAuthorized"; + } + } + description + "The smart licensing authorization state."; + } + + typedef Export-status-type-enum { + type enumeration { + enum "allowed" { + description + "ExportStatusAllowed"; + } + enum "not-allowed" { + description + "ExportStatusNotAllowed"; + } + enum "conditional" { + description + "ExportStatusConditional"; + } + } + description + "Export control status information"; + } + + typedef Registration-state-enum { + type enumeration { + enum "not-registered" { + value 0; + description + "This smart licensing instance is not registered + ."; + } + enum "complete" { + value 1; + description + "Registration was successful"; + } + enum "in-progress" { + value 2; + description + "Registration is in progress."; + } + enum "retry" { + value 3; + description + "The initial registration attempt failed but a + retry is in progress."; + } + enum "failed" { + value 4; + description + "Registration failed."; + } + enum "not-supported" { + value 5; + description + "Registration is not supported in the current + operating mode."; + } + } + description + "The smart licensing registration state."; + } + + typedef Bool-state { + type enumeration { + enum "no" { + value 0; + description + "No"; + } + enum "yes" { + value 1; + description + "Yes"; + } + } + description + "Boolean State "; + } + + grouping EXPORT-AUTH-KEY-UDI { + description + "EXPORT AUTH KEY UDI"; + container udi { + description + "UDI"; + uses SMARTAGENT-UDI; + } + leaf num-strings { + type int32; + description + "numStrings"; + } + list return-key { + description + "returnKeyList"; + uses KEY-LIST; + } + } + + grouping EXPORT-AUTH-KEY-LIST { + description + "EXPORT AUTH KEY LIST"; + leaf num-elements { + type int32; + description + "NumElements"; + } + list list { + description + "List"; + uses EXPORT-AUTH-KEY-UDI; + } + } + + grouping KEY-LIST { + description + "KEY LIST"; + leaf key { + type string; + description + "Key"; + } + } + + grouping EXPORT-RETURN-KEY-UDI { + description + "EXPORT RETURN KEY UDI"; + container udi { + description + "UDI"; + uses SMARTAGENT-UDI; + } + leaf num-strings { + type int32; + description + "numStrings"; + } + list return-key { + description + "returnKeyList"; + uses KEY-LIST; + } + } + + grouping EXPORT-RETURN-KEY-LIST { + description + "EXPORT RETURN KEY LIST"; + leaf num-elements { + type int32; + description + "NumElements"; + } + list list { + description + "List"; + uses EXPORT-RETURN-KEY-UDI; + } + } + + grouping EXPORT-STATUS-TIME { + description + "EXPORT STATUS TIME"; + leaf status { + type Export-status-time-enum; + description + "Status"; + } + leaf operation-time { + type string; + description + "OperationTime"; + } + leaf operation-next-time { + type string; + description + "operationNextTime"; + } + leaf failure-message { + type string; + description + "FailureMessage"; + } + } + + grouping EXPORT-AUTH-KEYS { + description + "EXPORT AUTH KEYS"; + container export-key-request-status { + description + "ExportKeyRequestStatus"; + uses EXPORT-STATUS-TIME; + } + container export-key-return-status { + description + "ExportKeyReturnStatus"; + uses EXPORT-STATUS-TIME; + } + container export-return-keys { + description + " ExportReturnKeys"; + uses EXPORT-RETURN-KEY-LIST; + } + container export-features-authorized { + description + "ExportFeaturesAuthorized"; + uses EXPORT-AUTH-KEY-LIST; + } + } + + grouping SMART-AGENT-TERM-INFO { + description + "SMART AGENT TERM INFO"; + leaf type { + type License-term-type-enum; + description + "The type of the term license."; + } + leaf count { + type int32; + description + "The count for this term."; + } + leaf start-date { + type string; + description + "The date and time the term starts."; + } + leaf end-date { + type string; + description + "The date and time the term ends."; + } + leaf subscription-id { + type string; + description + "SubscriptionId"; + } + } + + grouping SMART-AGENT-HAUDI-TERM { + description + "SMART AGENT HAUDI TERM"; + container udi { + description + "the UDI and HA role for this reservation + information"; + uses SMARTAGENT-UDI; + } + list term-count { + description + "The list of term information"; + uses SMART-AGENT-TERM-INFO; + } + } + + grouping SMARTAGENT-RESERVATION-ENTITLEMENTLIST { + description + "SMARTAGENT RESERVATION ENTITLEMENTLIST"; + leaf entitlement-tag { + type string; + description + "The ISO 19770-2 entitlement tag used to define + this license"; + } + leaf short-name { + type string; + description + "The human readable license name from the + entitlement tag."; + } + leaf license-name { + type string; + description + "The license name that can be seen on the Cisco + Smart Software Manger (CSSM)."; + } + leaf description { + type string; + description + "The long description of this license."; + } + leaf total-count { + type int32; + description + "The total aggregated count available for this + license."; + } + leaf license-enforcement-type { + type License-enforcement-type-enum; + description + "Indicates what type of license this is."; + } + list term-info { + description + "the list of term info for each UDI This is an + array of structures"; + uses SMART-AGENT-HAUDI-TERM; + } + } + + grouping LICENSE-AUTH-OVERALL-INFO { + description + "LICENSE AUTH OVERALL INFO"; + container udi { + description + "UDI of this device"; + uses SMARTAGENT-UDI; + } + leaf install-status { + type Install-status-enum; + description + "Install Status"; + } + leaf status-time { + type string; + description + "Status Time"; + } + leaf export-control-status { + type Export-status-type-enum; + description + "Export control status information"; + } + leaf request-code { + type string; + description + "Request code"; + } + leaf return-code { + type string; + description + "ReturnCode"; + } + leaf confirmation-code { + type string; + description + "ConfirmationCode"; + } + leaf authorization-code { + type string; + description + "AuthorizationCode"; + } + leaf error-message { + type string; + description + "ErrorMessage"; + } + } + + grouping IMPORTED-AUTHORIZATIONS { + description + "IMPORTED AUTHORIZATIONS"; + list overall-status { + description + "list of all reservation status information for + all UDIs"; + uses LICENSE-AUTH-OVERALL-INFO; + } + list authorization { + description + "Information about how a single license is + authorized."; + uses SMARTAGENT-RESERVATION-ENTITLEMENTLIST; + } + } + + grouping RESERVATION-USAGE { + description + "RESERVATION USAGE"; + leaf reservation-usage-status { + type Reservation-usage-status-enum; + description + "ReservationUsageStatus"; + } + leaf total-reserved-count { + type int32; + description + "totalReservedCount"; + } + } + + grouping LICENSE-USAGE { + description + "LICENSE USAGE"; + container reservation-usage { + description + "Reservation Usage"; + uses RESERVATION-USAGE; + } + leaf entitlement-tag { + type string; + description + "The ISO 19770 entitlement tag used to define + this license."; + } + leaf short-name { + type string; + description + "The human readable license name from the + entitlement tag."; + } + leaf license-name { + type string; + description + "The license name that can be seen in the CSSM + portal or on the satellite.This is only + available after the product has registered."; + } + leaf description { + type string; + description + "The long description of this license.This is + only available after the product has registered."; + } + leaf count { + type uint32; + description + "The in-use count of this license. Note that + licensing only reports usage for licenses that + are in use (count of 1 or greater)."; + } + leaf enforce-mode { + type Enforcement-mode-enum; + description + "The current enforcement mode of this license."; + } + leaf post-paid { + type Bool-state; + description + "If true then this entitlement is being reported + in a post paid mode with utility usage reports. + Otherwise it will be reported in the regular + prepaid mode."; + } + leaf subscription-id { + type string; + description + "Subscription ID for this feature."; + } + leaf export-entitlement-status { + type Export-entitlement-status-enum; + description + "exportEntitlementStatus"; + } + leaf feature-description { + type string; + description + "FeatureDescription"; + } + leaf feature-name { + type string; + description + "FeatureName"; + } + } + + grouping SMARTAGENT-UDI { + description + "SMARTAGENT UDI"; + leaf pid { + type string; + description + "The Product Identifier. Always combined with sn."; + } + leaf sn { + type string; + description + "The system serial number. Always combined with + pid."; + } + leaf vid { + type string; + description + "The version identifier. Usually combined with + pid & sn."; + } + leaf uuid { + type string; + description + "A 32 byte hex value generated by the system. + This will be in proper UUID format 8-4-4-4-12. + Often used by VMs or other systems that do not + have a hardware identifier."; + } + leaf suvi { + type string; + description + "Free form virtual identifier often used by + software only devices like software routers or + VMs."; + } + leaf host-identifier { + type string; + description + "Host identifier available on some systems. + Typically 8 hex digits."; + } + leaf mac-address { + type string; + description + "The MAC address of the system. This is usually + only used if there is nothing else available to + be used as an identifier."; + } + } + + grouping EVAL-EXPIRE-TIME { + description + "EVAL EXPIRE TIME"; + leaf expire-time { + type string; + description + "Date and time the evaluation period expired."; + } + } + + grouping EVAL-PERIOD-LEFT { + description + "EVAL PERIOD LEFT"; + leaf time-left { + type uint64; + units "second"; + description + "Number of seconds of license usage until the + evaluation period expires."; + } + } + + grouping EVAL-PERIOD-STATE { + description + "EVAL PERIOD STATE"; + container eval-period-left { + description + "If the evaluation period is not expired this is + the number of seconds left in the period."; + uses EVAL-PERIOD-LEFT; + } + container eval-expire-time { + description + "If the evaluation period has expired then this + is the time of the expiration."; + uses EVAL-EXPIRE-TIME; + } + leaf eval-in-use { + type Bool-state; + description + "Is the evaluation period currently in use and + counting down."; + } + leaf eval-expired { + type Bool-state; + description + "Has the evaluation period expired."; + } + } + + grouping SMART-AGENT-PRIVACY-INFO { + description + "SMART AGENT PRIVACY INFO"; + leaf host-name { + type Bool-state; + description + "If true then the hostname will not be sent in + any messages."; + } + leaf version { + type Bool-state; + description + "If true then the smart licensing version will + not be sent in any messages."; + } + } + + grouping PROXY-INFO { + description + "PROXY INFO"; + leaf address { + type string; + description + "Proxy address for sending message."; + } + leaf port { + type string; + description + "Proxy port for sending message."; + } + } + + grouping URL-SETTINGS { + description + "URL SETTINGS"; + leaf url-registration { + type string; + description + "The URL used for registration, authorization and + any other messages not related to utility."; + } + leaf url-utility { + type string; + description + "The URL used for utility reporting. url-utility + and url-registration may be the same or + different. If a satellite is in use then they + will probably be the same."; + } + } + + grouping SMART-AGENT-TRANSPORT-INFO { + description + "SMART AGENT TRANSPORT INFO"; + container url-settings { + description + "URLs in use if the transport type is smart."; + uses URL-SETTINGS; + } + container proxy-info { + description + "Proxy information if the transport type is smart + ."; + uses PROXY-INFO; + } + leaf transport-type { + type Transport-type-enum; + description + "The communications transport type set in the + config"; + } + } + + grouping SMARTAGENT-CUSTOMER-INFO { + description + "SMARTAGENT CUSTOMER INFO"; + leaf id { + type string; + description + "The cisco issued customer id which will be + included in the utility usage (RUM) report."; + } + leaf name { + type string; + description + "The customer company name which will be included + in the utility usage (RUM) report."; + } + leaf street { + type string; + description + "The customer company street address which will + be included in the utility usage (RUM) report."; + } + leaf city { + type string; + description + "The customer company city which will be included + in the utility usage (RUM) report."; + } + leaf state { + type string; + description + "The customer company state which will be + included in the utility usage (RUM) report."; + } + leaf country { + type string; + description + "The customer company country which will be + included in the utility usage (RUM) report."; + } + leaf postal-code { + type string; + description + "The customer location specific postal code which + will be included in the utility usage (RUM) + report."; + } + } + + grouping SMART-AGENT-UTILITY-INFO { + description + "SMART AGENT UTILITY INFO"; + container customer-info { + description + "Customer address information that will be + included in the utility usage reports."; + uses SMARTAGENT-CUSTOMER-INFO; + } + leaf utility-enable { + type Bool-state; + description + "Flag to indicate if Utility is currently enabled"; + } + leaf reporting { + type Utility-reporting-type-enum; + description + "Is the system reporting utility data."; + } + } + + grouping AUTHORIZATION-AUTHORIZATION-EXPIRED { + description + "AUTHORIZATION AUTHORIZATION EXPIRED"; + container authorization-info { + description + "Additional authorization state information used + by some of the authorization states."; + uses AUTHORIZATION-INFO; + } + } + + grouping AUTHORIZATION-OUT-OF-COMPLIANCE { + description + "AUTHORIZATION OUT OF COMPLIANCE"; + container authorization-info { + description + "Additional authorization state information used + by some of the authorization states."; + uses AUTHORIZATION-INFO; + } + leaf ooc-time { + type string; + description + "Time the product instance entered the out of + compliance state."; + } + } + + grouping AUTHORIZATION-AUTHORIZED-RESERVATION { + description + "AUTHORIZATION AUTHORIZED RESERVATION"; + leaf reservation-time { + type string; + description + "Time the reservation occurred."; + } + } + + grouping AUTHORIZATION-INFO { + description + "AUTHORIZATION INFO"; + leaf last-comm-status-success { + type Bool-state; + description + "Last communication was successful or failed."; + } + leaf fail-message { + type string; + description + "Failure message if the last communications + attempt failed.This can be displayed for the + user. It is not a parsable string."; + } + leaf last-comm-time { + type string; + description + "Time the last communication attempt happened."; + } + leaf next-comm-time { + type string; + description + "The next time communications will be attempted + to the back end.This will be zero if the initial + communication has not completed."; + } + leaf comm-deadline-time { + type string; + description + "If there are no communications between now and + this time smart licensing will enter the + authorization expired state.This may be zero + indicating there is no deadline."; + } + } + + grouping AUTHORIZATION-AUTHORIZED { + description + "AUTHORIZATION AUTHORIZED"; + container authorization-info { + description + "Additional authorization state information used + by some of the authorization states."; + uses AUTHORIZATION-INFO; + } + } + + grouping AUTHORIZATION-EVAL-EXPIRED { + description + "AUTHORIZATION EVAL EXPIRED"; + leaf expire-time { + type string; + description + "Time the evaluation period expired."; + } + } + + grouping EVALUATION-TIME-LEFT { + description + "EVALUATION TIME LEFT"; + leaf seconds-left { + type uint64; + units "second"; + description + "Number of seconds of license usage until the + evaluation period expires. Note that this not a + hard date and time because if no licenses are in + use the evaluation period stops counting down."; + } + } + + grouping AUTHORIZATION-EVAL { + description + "AUTHORIZATION EVAL"; + container evaluation-time-left { + description + "Number of seconds of license usage until the + evaluation period expires."; + uses EVALUATION-TIME-LEFT; + } + } + + grouping AUTHORIZATION-NONE { + description + "AUTHORIZATION NONE"; + leaf empty { + type string; + description + "Empty string and container"; + } + } + + grouping AUTHORIZATION-STATE { + description + "AUTHORIZATION STATE"; + container authorization-none { + description + "No licenses in use.This empty container is not + needed but is a place holder to show there is no + data for this state."; + uses AUTHORIZATION-NONE; + } + container authorization-eval { + description + "Evaluation period is in use and counting down + .The evaluation period only counts down when + licenses are in use."; + uses AUTHORIZATION-EVAL; + } + container authorization-eval-expired { + description + "Evaluation period is in use but has expired."; + uses AUTHORIZATION-EVAL-EXPIRED; + } + container authorization-authorized { + description + "All license usage is authorized and within terms + of the contract. uses authorization-info"; + uses AUTHORIZATION-AUTHORIZED; + } + container authorization-authorized-reservation { + description + "All license usage is authorized because a + reservation authorization code is installed."; + uses AUTHORIZATION-AUTHORIZED-RESERVATION; + } + container authorization-out-of-compliance { + description + "License usage is out of compliance with the + terms of the contract because more licenses are + in use than were purchased."; + uses AUTHORIZATION-OUT-OF-COMPLIANCE; + } + container authorization-authorization-expired { + description + "The authorization period has expired because the + product instance ahs not communicated with the + SSM or satellite in over 90 days."; + uses AUTHORIZATION-AUTHORIZATION-EXPIRED; + } + leaf authorization-state { + type Authorization-state-enum; + description + "The current authorization state."; + } + } + + grouping REGISTRATION-COMPLETE { + description + "REGISTRATION COMPLETE"; + leaf complete-time { + type string; + description + "Time the registration was successful."; + } + leaf last-renew-time { + type string; + description + "Time the last registration renewal occurred. If + empty then no renewal has occurred."; + } + leaf next-renew-time { + type string; + description + "Time the registration will be automatically + renewed."; + } + leaf expire-time { + type string; + description + "Time the registration will expire if it is not + renewed."; + } + leaf last-renew-success { + type Bool-state; + description + "Was the last renewal attempt successful."; + } + leaf fail-message { + type string; + description + "If the last renewal failed then this is a + failure message that can be displayed for the + user. This is not a parsable string. Only + present if the last renewal failed"; + } + leaf smart-account { + type string; + description + "The smart account name for this registration."; + } + leaf virtual-account { + type string; + description + "The virtual account name for this registration."; + } + } + + grouping REGISTRATION-RETRY { + description + "REGISTRATION RETRY"; + container registration-info { + description + "Registration failed info."; + uses REGISTRATION-FAILED; + } + leaf retry-next-time { + type string; + description + "Time the registration will be retried."; + } + } + + grouping REGISTRATION-FAILED { + description + "REGISTRATION FAILED"; + leaf fail-time { + type string; + description + "Time the registration failed."; + } + leaf fail-message { + type string; + description + "Failure message that can be displayed for the + user.This is not a parsable message."; + } + } + + grouping REGISTRATION-IN-PROGRESS { + description + "REGISTRATION IN PROGRESS"; + leaf start-time { + type string; + description + "Time the registration started."; + } + } + + grouping SMARTAGENT-REGISTER { + description + "SMARTAGENT REGISTER"; + container registration-in-progress { + description + "Registration is in progress."; + uses REGISTRATION-IN-PROGRESS; + } + container registration-failed { + description + "Registration failed."; + uses REGISTRATION-FAILED; + } + container registration-retry { + description + "Registration failed and doing a retry."; + uses REGISTRATION-RETRY; + } + container registration-complete { + description + "Registration success."; + uses REGISTRATION-COMPLETE; + } + leaf registration-state { + type Registration-state-enum; + description + "The current registration state."; + } + leaf export-control-allowed { + type Bool-state; + description + "Is the device allowed to enable export + controlled features."; + } + leaf export-control-status { + type Export-status-type-enum; + description + "Export control status information"; + } + } + + grouping STATE-INFO { + description + "STATE INFO"; + container registration { + description + "The state of the registration for this product + instance."; + uses SMARTAGENT-REGISTER; + } + container authorization { + description + "State of license authorization."; + uses AUTHORIZATION-STATE; + } + container utility { + description + "Utility settings."; + uses SMART-AGENT-UTILITY-INFO; + } + container transport { + description + "Transport layer settings."; + uses SMART-AGENT-TRANSPORT-INFO; + } + container privacy { + description + "Controls whether or not some information is sent + in messages to the Cisco Smart Software Manger + (CSSM) or satellite."; + uses SMART-AGENT-PRIVACY-INFO; + } + container evaluation { + description + "State of the evaluation period. In use or not + and time left."; + uses EVAL-PERIOD-STATE; + } + container udi { + description + "UDI of the system."; + uses SMARTAGENT-UDI; + } + container reservation { + description + "Information about all licenses that are + authorized and how they were authorized"; + uses IMPORTED-AUTHORIZATIONS; + } + container export-authorization-keys { + description + "Export Authorization Keys"; + uses EXPORT-AUTH-KEYS; + } + leaf custom-id { + type string; + description + "The custom ID set by the customer that will be + included in the utility usage (RUM) report and + in th emessage header"; + } + leaf conversion-enabled { + type Bool-state; + description + "Conversion Enabled or not"; + } + list usage { + description + "List of license (entitlement tag) usage + information. This only contains the information + for licenses that are in use."; + uses LICENSE-USAGE; + } + } + + grouping SMART-AGENT-STATE { + description + "SMART AGENT STATE"; + container state-info { + description + "This state-info is only available if + smart-enabled = true"; + uses STATE-INFO; + } + leaf always-enabled { + type Bool-state; + description + "Is Smart Licensing is always enabled."; + } + leaf smart-enabled { + type Bool-state; + description + "Is smart licensing enabled"; + } + leaf version { + type string; + description + "The smart licensing version in use."; + } + } + + grouping SMARTAGENT-LICENSING-INFO { + description + "All information of Smart Licensing common yang + model"; + container state { + description + "Smart licensing state."; + uses SMART-AGENT-STATE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper.yang new file mode 100644 index 000000000..3ced08a61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-smartlicense-oper.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-infra-smartlicense-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-smartlicense-oper"; + prefix infra-smartlicense-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-smartlicense-oper-sub1 { + revision-date 2019-04-05; + } + + 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 infra-smartlicense package operational data. + + This module contains definitions + for the following management objects: + smart-agent: Information of Smart License list and operations + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container smart-agent { + config false; + description + "Information of Smart License list and operations"; + container licensing { + description + "Smart Licensing Module Information"; + uses SMARTAGENT-LICENSING-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-act.yang new file mode 100644 index 000000000..d55bb8688 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-act.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-infra-statsd-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-statsd-act"; + prefix statsd-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 action package configuration. + + Copyright (c) 2018-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-10 { + description + "IOS XR 6.4.1 revision."; + } + + rpc clear-counters-controller { + description + "Controller name.\n"; + input { + leaf controller-name { + type csc:Interface-name; + mandatory true; + description + "Controller name"; + } + } + csc:xr-task "interface"; + csc:cli-command "clear counters "; + } + rpc clear-counters-all { + description + "Clear counters on all interfaces.\n"; + csc:xr-task "interface"; + csc:cli-command "clear counters all"; + } + rpc clear-counters-interface { + description + "Clear counters for interface.\n"; + input { + leaf interface-name { + type csc:Interface-name; + mandatory true; + description + "Interface name"; + } + } + csc:xr-task "interface"; + csc:cli-command "clear counters interface "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-cfg.yang new file mode 100644 index 000000000..0990f6af3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-cfg.yang @@ -0,0 +1,100 @@ +module Cisco-IOS-XR-infra-statsd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-statsd-cfg"; + prefix infra-statsd-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 infra-statsd package configuration. + + This module contains definitions + for the following management objects: + statistics: Global statistics configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container statistics { + description + "Per-interface statistics configuration"; + leaf load-interval { + type uint32 { + range "0..600"; + } + default "300"; + description + "Specify interval for load calculation for an + interface"; + } + } + } + container statistics { + description + "Global statistics configuration"; + container period { + description + "Collection period for statistics polling"; + container service-accounting { + description + "Collection polling period for service + accounting collectors"; + leaf polling-period { + type uint32 { + range "30..3600"; + } + must "not(../polling-disable)"; + description + "Collection polling period for service + accounting collectors"; + } + leaf polling-disable { + type empty; + must "not(../polling-period)"; + description + "Disable periodic statistics polling for + service accounting collectors"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper-sub1.yang new file mode 100644 index 000000000..d1828d65c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper-sub1.yang @@ -0,0 +1,484 @@ +submodule Cisco-IOS-XR-infra-statsd-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-statsd-oper { + prefix Cisco-IOS-XR-infra-statsd-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-statsd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "Container names changed for Interface counter rates + 2022-09-30 + Interface counter rates support added"; + semver:module-version "1.3.0"; + } + revision 2020-12-17 { + description + "Unit of bandwidth in datarate container changed from 32-bit to 64-bit."; + semver:module-version "1.2.0"; + } + revision 2020-10-08 { + description + "Unit of last-data-time in milliseconds reverted to seconds for generic stats + 2020-05-05 + Added Hardware timestamp support for protocol stats. + 2020-04-14 + Unit of last-data-time changed from seconds to milliseconds for generic stats + 2020-04-14 + Data type of last-data-time changed from uint32 to uint64 for generic and proto stats + 2020-04-14 + Adding Hardware timestamp feature in generic structure."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IFCS-RATE-BAG { + description + "Interface client rate"; + leaf time-interval-ms { + type uint64; + description + "Time period in ms over which the rates was + calculated"; + } + leaf input-datarate-kbps { + type uint64; + units "bit/s"; + description + "Input data rate in 1000's of bps"; + } + leaf input-packetratepps { + type uint64; + description + "Input packets in pps"; + } + leaf output-datarate-kbps { + type uint64; + units "bit/s"; + description + "Output data rate in 1000's of bps"; + } + leaf output-packetratepps { + type uint64; + description + "Output packets in pps"; + } + leaf overhead-bytes { + type uint64; + units "byte"; + description + "Overhead bytes per packet"; + } + leaf bandwidth-kbps { + type uint64; + units "bit/s"; + description + "Bandwidth in 1000's of bps"; + } + leaf input-bandwidth-percent { + type uint8; + units "percentage"; + description + "Percent Input bandwidth utilization"; + } + leaf output-bandwidth-percent { + type uint8; + units "percentage"; + description + "Percent Output bandwidth utilization"; + } + } + + grouping STATSDBAG-DATARATE { + description + "Datarate information"; + leaf input-data-rate { + type uint64; + units "bit/s"; + description + "Input data rate in 1000's of bps"; + } + leaf input-packet-rate { + type uint64; + units "packet/s"; + description + "Input packets per second"; + } + leaf output-data-rate { + type uint64; + units "bit/s"; + description + "Output data rate in 1000's of bps"; + } + leaf output-packet-rate { + type uint64; + units "packet/s"; + description + "Output packets per second"; + } + leaf peak-input-data-rate { + type uint64; + description + "Peak input data rate, highest spike since last + clear counters"; + } + leaf peak-input-packet-rate { + type uint64; + description + "Peak input packet rate, highest spike since last + clear counters"; + } + leaf peak-output-data-rate { + type uint64; + description + "Peak output data rate, highest spike since last + clear counters"; + } + leaf peak-output-packet-rate { + type uint64; + description + "Peak output packet rate, highest spike since + last clear counters"; + } + leaf bandwidth { + type uint64; + units "kbit/s"; + description + "Bandwidth (in kbps)"; + } + leaf load-interval { + type uint32; + description + "Number of 30-sec intervals less one"; + } + leaf output-load { + type uint8; + description + "Output load as fraction of 255"; + } + leaf input-load { + type uint8; + description + "Input load as fraction of 255"; + } + leaf reliability { + type uint8; + description + "Reliability coefficient"; + } + } + + grouping IFSTATSBAG-GENERIC { + description + "Generic set of interface counters"; + leaf packets-received { + type uint64; + description + "Total Packets received"; + } + leaf bytes-received { + type uint64; + units "byte"; + description + "Total Bytes received"; + } + leaf packets-sent { + type uint64; + description + "Total Packets sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Total Bytes sent"; + } + leaf multicast-packets-received { + type uint64; + description + "Total no. of multicast packets received"; + } + leaf broadcast-packets-received { + type uint64; + description + "Total no. of broadcast packets received"; + } + leaf multicast-packets-sent { + type uint64; + description + "Total no. of multicast packets sent"; + } + leaf broadcast-packets-sent { + type uint64; + description + "Total no. of broadcast packets sent"; + } + leaf output-drops { + type uint32; + description + "No. of packet dropped before being transmitted"; + } + leaf output-queue-drops { + type uint32; + description + "Number of packets dropped due to configured + output policy"; + } + leaf input-drops { + type uint32; + description + "Total input drops"; + } + leaf input-queue-drops { + type uint32; + description + "Placeholder for packets dropped due to configure + input policy"; + } + leaf runt-packets-received { + type uint32; + description + "Received packets which are too small to be + handled"; + } + leaf giant-packets-received { + type uint32; + description + "Received packets which are too large to be + handled"; + } + leaf throttled-packets-received { + type uint32; + description + "No. of times the receiver on the port is was + disabled"; + } + leaf parity-packets-received { + type uint32; + description + "No. of parity errors on the interface"; + } + leaf unknown-protocol-packets-received { + type uint32; + description + "No. of packets dropped because they were + destined for higher levelprotocols not configure + or running on the interface"; + } + leaf input-errors { + type uint32; + description + "Total input errors"; + } + leaf crc-errors { + type uint32; + description + "Input CRC errors"; + } + leaf input-overruns { + type uint32; + description + "No. of input packets received with FIFO or DMA + overrun errors"; + } + leaf framing-errors-received { + type uint32; + description + "No. of packets received with framing error"; + } + leaf input-ignored-packets { + type uint32; + description + "Packets dropped due to internal driver error or + hardware errors "; + } + leaf input-aborts { + type uint32; + description + "No. of packets whose reciept was aborted"; + } + leaf output-errors { + type uint32; + description + "Total packets that could not be transmitted due + to internal driver error"; + } + leaf output-underruns { + type uint32; + description + "Transmitted packets with FIFO or DMA underrun + errors"; + } + leaf output-buffer-failures { + type uint32; + description + "No. of no resource error received on output"; + } + leaf output-buffers-swapped-out { + type uint32; + description + "No. of packets swapped to DRAM or main memory"; + } + leaf applique { + type uint32; + description + "No. of unrecoverable error which have occured on + the applique"; + } + leaf resets { + type uint32; + description + "Number of hardware resets"; + } + leaf carrier-transitions { + type uint32; + description + "No. of times the carrier detect signal of + interface has changed state"; + } + leaf availability-flag { + type uint32; + description + "Availability bit mask"; + } + leaf last-data-time { + type uint64; + units "second"; + description + "Time when counters were last written (in + seconds)"; + } + leaf hardware-timestamp { + type uint64; + units "millisecond"; + description + "Time when counters were last read by Primary + collector from hardware (in msecs)"; + } + leaf seconds-since-last-clear-counters { + type uint32; + units "second"; + description + "Time elapsed since last clear command executed + (in Seconds)"; + } + leaf last-discontinuity-time { + type uint32; + units "second"; + description + "SysUpTime when counters were last reset (in + seconds)"; + } + leaf seconds-since-packet-received { + type uint32; + units "second"; + description + "Time elapsed since packet received (in Seconds)"; + } + leaf seconds-since-packet-sent { + type uint32; + units "second"; + description + "Time elapsed since packet sent (in Seconds)"; + } + } + + grouping IFSTATSBAG-PROTO { + description + "Interface counters per protocol"; + leaf bytes-received { + type uint64; + units "byte"; + description + "Total no. of Bytes received"; + } + leaf packets-received { + type uint64; + description + "Total no. of Packets received"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Total no. of Bytes sent"; + } + leaf packets-sent { + type uint64; + description + "Total no. of Packets sent"; + } + leaf protocol { + type uint32; + description + "Protocol number"; + } + leaf last-data-time { + type uint64; + units "second"; + description + "Time when counters were last written (in + seconds)"; + } + leaf input-data-rate { + type uint64; + units "bit/s"; + description + "Input data rate in 1000's of bps"; + } + leaf input-packet-rate { + type uint64; + units "packet/s"; + description + "Input packets per second"; + } + leaf output-data-rate { + type uint64; + units "bit/s"; + description + "Output data rate in 1000's of bps"; + } + leaf output-packet-rate { + type uint64; + units "packet/s"; + description + "Output packets per second"; + } + leaf hardware-timestamp { + type uint64; + units "millisecond"; + description + "Time when counters were last read by Primary + collector from hardware (in msecs)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper.yang new file mode 100644 index 000000000..75813612e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-statsd-oper.yang @@ -0,0 +1,190 @@ +module Cisco-IOS-XR-infra-statsd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-statsd-oper"; + prefix infra-statsd-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-statsd-oper-sub1 { + revision-date 2022-10-31; + } + + 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 infra-statsd package operational data. + + This module contains definitions + for the following management objects: + infra-statistics: Statistics Infrastructure + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "Container names changed for Interface counter rates + 2022-09-30 + Interface counter rates support added"; + semver:module-version "1.3.0"; + } + revision 2020-12-17 { + description + "Unit of bandwidth in datarate container changed from 32-bit to 64-bit."; + semver:module-version "1.2.0"; + } + revision 2020-10-08 { + description + "Unit of last-data-time in milliseconds reverted to seconds for generic stats + 2020-05-05 + Added Hardware timestamp support for protocol stats. + 2020-04-14 + Unit of last-data-time changed from seconds to milliseconds for generic stats + 2020-04-14 + Data type of last-data-time changed from uint32 to uint64 for generic and proto stats + 2020-04-14 + Adding Hardware timestamp feature in generic structure."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DATA-RATE { + description + "Common node of latest, cache, total, interface"; + container data-rate { + description + "Datarate information"; + uses STATSDBAG-DATARATE; + } + } + + grouping PROTOCOL-TABLE { + description + "Common node of latest, cache, total, interface"; + container protocols { + description + "List of protocols"; + list protocol { + key "protocol-name"; + description + "Interface counters per protocol"; + leaf protocol-name { + type xr:Cisco-ios-xr-string; + description + "Name of the protocol"; + } + uses IFSTATSBAG-PROTO; + } + } + } + + grouping INTERFACES-MIB-COUNTERS { + description + "Common node of latest, cache, total, interface"; + container interfaces-mib-counters { + description + "Set of interface counters as displayed by the + InterfacesMIB"; + uses IFSTATSBAG-GENERIC; + } + } + + grouping GENERIC-COUNTERS { + description + "Common node of latest, cache, total, interface"; + container generic-counters { + description + "Generic set of interface counters"; + uses IFSTATSBAG-GENERIC; + } + } + + container infra-statistics { + config false; + description + "Statistics Infrastructure"; + container interfaces { + description + "List of interfaces"; + list interface { + key "interface-name"; + description + "Statistics of an interface"; + container cache { + description + "Cached stats data of interfaces"; + uses PROTOCOL-TABLE; + uses INTERFACES-MIB-COUNTERS; + uses DATA-RATE; + uses GENERIC-COUNTERS; + } + container latest { + description + "Latest stats data of interfaces"; + uses PROTOCOL-TABLE; + uses INTERFACES-MIB-COUNTERS; + uses DATA-RATE; + uses GENERIC-COUNTERS; + } + container total { + description + "Total stats data of interfaces"; + uses PROTOCOL-TABLE; + uses INTERFACES-MIB-COUNTERS; + uses DATA-RATE; + uses GENERIC-COUNTERS; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses PROTOCOL-TABLE; + uses INTERFACES-MIB-COUNTERS; + uses DATA-RATE; + uses GENERIC-COUNTERS; + } + } + container counter-rates { + description + "Rate data for interface counters"; + container interface-rates { + description + "List of interfaces"; + list interface-rate { + key "interface-name"; + description + "Rate information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses IFCS-RATE-BAG; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-cfg.yang new file mode 100644 index 000000000..b1e0041c8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-cfg.yang @@ -0,0 +1,1501 @@ +module Cisco-IOS-XR-infra-syslog-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-syslog-cfg"; + prefix infra-syslog-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 infra-syslog package configuration. + + This module contains definitions + for the following management objects: + syslog-service: Syslog Timestamp Services + syslog: Modify message logging facilities + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-29 { + description + "Remove unused, non-standard logging facility enum members"; + semver:module-version "5.0.0"; + } + revision 2022-03-03 { + description + "Added fetch timestamp support from the container logs"; + semver:module-version "4.0.0"; + } + revision 2021-08-03 { + description + "Modified the logging file max-size type as range from integer + 2021-06-14 + Support for logging file local-accounting feature"; + semver:module-version "3.0.0"; + } + revision 2020-05-22 { + description + "Support for syslog format types bsd and rfc5424"; + semver:module-version "2.0.0"; + } + revision 2019-09-30 { + description + "Changes done for Openroadm Severity level support"; + semver:module-version "1.0.1"; + } + revision 2019-07-30 { + description + "container ipv4-severity-port changed to presence container"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-10-31 { + description + "file path option provided in logging file config"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-06-22 { + description + "file path removed from logging file config"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Logging-tos { + type enumeration { + enum "precedence" { + value 0; + description + "Logging TOS type precedence"; + } + enum "dscp" { + value 1; + description + "Logging TOS type DSCP"; + } + } + description + "Logging tos"; + } + + typedef Logging-dscp-value { + type union { + type enumeration { + enum "default" { + value 0; + description + "Applicable to DSCP: bits 000000"; + } + enum "af11" { + value 10; + description + "Applicable to DSCP: bits 001010"; + } + enum "af12" { + value 12; + description + "Applicable to DSCP: bits 001100"; + } + enum "af13" { + value 14; + description + "Applicable to DSCP: bits 001110"; + } + enum "af21" { + value 18; + description + "Applicable to DSCP: bits 010010"; + } + enum "af22" { + value 20; + description + "Applicable to DSCP: bits 010100"; + } + enum "af23" { + value 22; + description + "Applicable to DSCP: bits 010110"; + } + enum "af31" { + value 26; + description + "Applicable to DSCP: bits 011010"; + } + enum "af32" { + value 28; + description + "Applicable to DSCP: bits 011100"; + } + enum "af33" { + value 30; + description + "Applicable to DSCP: bits 011110"; + } + enum "af41" { + value 34; + description + "Applicable to DSCP: bits 100010"; + } + enum "af42" { + value 36; + description + "Applicable to DSCP: bits 100100"; + } + enum "af43" { + value 38; + description + "Applicable to DSCP: bits 100110"; + } + enum "ef" { + value 46; + description + "Applicable to DSCP: bits 101110"; + } + enum "cs1" { + value 8; + description + "Applicable to DSCP: bits 001000"; + } + enum "cs2" { + value 16; + description + "Applicable to DSCP: bits 010000"; + } + enum "cs3" { + value 24; + description + "Applicable to DSCP: bits 011000"; + } + enum "cs4" { + value 32; + description + "Applicable to DSCP: bits 100000"; + } + enum "cs5" { + value 40; + description + "Applicable to DSCP: bits 101000"; + } + enum "cs6" { + value 48; + description + "Applicable to DSCP: bits 110000"; + } + enum "cs7" { + value 56; + description + "Applicable to DSCP: bits 111000"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Logging dscp value"; + } + + typedef Logging-precedence-value { + type union { + type enumeration { + enum "routine" { + value 0; + description + "Applicable to precedence: value 0"; + } + enum "priority" { + value 1; + description + "Applicable to precedence: value 1"; + } + enum "immediate" { + value 2; + description + "Applicable to precedence: value 2"; + } + enum "flash" { + value 3; + description + "Applicable to precedence: value 3"; + } + enum "flash-override" { + value 4; + description + "Applicable to precedence: value 4"; + } + enum "critical" { + value 5; + description + "Applicable to precedence: value 5"; + } + enum "internet" { + value 6; + description + "Applicable to precedence: value 6"; + } + enum "network" { + value 7; + description + "Applicable to precedence: value 7"; + } + } + type uint32 { + range "0..7"; + } + } + description + "Logging precedence value"; + } + + typedef Facility { + type enumeration { + enum "kern" { + value 0; + description + "Kernel Facility"; + } + enum "user" { + value 8; + description + "User Facility"; + } + enum "mail" { + value 16; + description + "Mail Facility"; + } + enum "daemon" { + value 24; + description + "Daemon Facility"; + } + enum "auth" { + value 32; + description + "Auth Facility"; + } + enum "syslog" { + value 40; + description + "Syslog Facility"; + } + enum "lpr" { + value 48; + description + "Lpr Facility"; + } + enum "news" { + value 56; + description + "News Facility"; + } + enum "uucp" { + value 64; + description + "Uucp Facility"; + } + enum "cron" { + value 72; + description + "Cron Facility"; + } + enum "authpriv" { + value 80; + description + "Authpriv Facility"; + } + enum "ftp" { + value 88; + description + "Ftp Facility"; + } + enum "local0" { + value 128; + description + "Local0 Facility"; + } + enum "local1" { + value 136; + description + "Local1 Facility"; + } + enum "local2" { + value 144; + description + "Local2 Facility"; + } + enum "local3" { + value 152; + description + "Local3 Facility"; + } + enum "local4" { + value 160; + description + "Local4 Facility"; + } + enum "local5" { + value 168; + description + "Local5 Facility"; + } + enum "local6" { + value 176; + description + "Local6 Facility"; + } + enum "local7" { + value 184; + description + "Local7 Facility"; + } + } + description + "Facility"; + } + + typedef Logging-dscp { + type enumeration { + enum "dscp" { + value 1; + description + "Logging TOS type DSCP"; + } + } + description + "Logging dscp"; + } + + typedef Logging-levels { + type enumeration { + enum "emergency" { + value 0; + description + "Emergency Level Msg"; + } + enum "alert" { + value 1; + description + "Alert Level Msg"; + } + enum "critical" { + value 2; + description + "Critical Level Msg"; + } + enum "error" { + value 3; + description + "Error Level Msg"; + } + enum "warning" { + value 4; + description + "Warning Level Msg"; + } + enum "notice" { + value 5; + description + "Notification Level Msg"; + } + enum "info" { + value 6; + description + "Informational Level Msg"; + } + enum "debug" { + value 7; + description + "Debugging Level Msg"; + } + enum "disable" { + value 15; + description + "Disable logging"; + } + } + description + "Logging levels"; + } + + typedef Syslog-format { + type enumeration { + enum "rfc5424" { + value 1; + description + "Enable to send the syslog message rfc5424 + format"; + } + enum "bsd" { + value 2; + description + "Enable to send the syslog message as BSD format"; + } + } + description + "Syslog format"; + } + + typedef Logging-precedence { + type enumeration { + enum "precedence" { + value 0; + description + "Logging TOS type precedence"; + } + } + description + "Logging precedence"; + } + + typedef Log-opertor { + type enumeration { + enum "equals-or-higher" { + value 0; + description + "Messages equal or higher than severity + (Operator=0)"; + } + enum "equals" { + value 1; + description + "Messages equal to severity + (Operator=1)"; + } + enum "not-equals" { + value 2; + description + "Messages not equal to severity + (Operator=2)"; + } + } + description + "Log opertor"; + } + + typedef Time-info { + type enumeration { + enum "disable" { + value 0; + description + "Exclude"; + } + enum "enable" { + value 1; + description + "Include"; + } + } + description + "Time info"; + } + + typedef Log-message-severity { + type enumeration { + enum "emergency" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alert" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "error" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notice" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "informational" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debug" { + value 7; + description + "Debugging messages (severity=7)"; + } + } + description + "Log message severity"; + } + + typedef Log-collect-frequency { + type enumeration { + enum "weekly" { + value 1; + description + "Collect log in files on a weekly basis"; + } + enum "daily" { + value 2; + description + "Collect log in files on a daily basis"; + } + } + description + "Log collect frequency"; + } + + typedef Time-granularity { + type enumeration { + enum "msec" { + value 1; + description + "Milli Seconds Granularity"; + } + enum "usec" { + value 2; + description + "Micro Seconds Granularity"; + } + } + description + "Time granularity"; + } + + typedef Log-severity { + type enumeration { + enum "emergency" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alert" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "error" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notice" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "informational" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debug" { + value 7; + description + "Debugging messages (severity=7)"; + } + enum "all" { + value 8; + description + "All severity messages (severity=8)"; + } + enum "none" { + value 9; + description + "None of severity messages (severity=9)"; + } + } + description + "Log severity"; + } + + container syslog-service { + description + "Syslog Timestamp Services"; + container timestamps { + description + "Timestamp debug/log messages configuration"; + container log { + description + "Timestamp log messages"; + container log-datetime { + description + "Timestamp with date and time"; + container log-datetime-value { + description + "Set timestamp for log message"; + leaf time-stamp-value { + type Time-info; + default "enable"; + description + "Time"; + } + leaf granularity { + type Time-granularity; + default "msec"; + description + "Granularity"; + } + leaf time-zone { + type Time-info; + default "disable"; + description + "Timezone"; + } + leaf year { + type Time-info; + default "disable"; + description + "Year"; + } + } + } + leaf log-uptime { + type empty; + description + "Timestamp with systime uptime"; + } + leaf log-timestamp-disable { + type empty; + description + "Disable timestamp log messages"; + } + } + container debug { + description + "Timestamp debug messages"; + container debug-datetime { + description + "Timestamp with date and time"; + container datetime-value { + description + "Set time format for debug msg"; + leaf time-stamp-value { + type Time-info; + default "enable"; + description + "Time"; + } + leaf granularity { + type Time-granularity; + default "msec"; + description + "Granularity"; + } + leaf time-zone { + type Time-info; + default "disable"; + description + "Timezone"; + } + leaf year { + type Time-info; + default "disable"; + description + "Year"; + } + } + } + leaf debug-timestamp-disable { + type empty; + description + "Disable timestamp debug messages"; + } + leaf debug-uptime { + type empty; + description + "Timestamp with systime uptime"; + } + } + leaf enable { + type empty; + description + "Enable timestamp debug/log messages"; + } + } + } + container syslog { + description + "Modify message logging facilities"; + container yang-logging { + description + "Set yang telemetry logging"; + leaf logging-level { + type Logging-levels; + default "info"; + description + "Yang telemetry Logging Level"; + } + } + container monitor-logging { + description + "Set monitor logging"; + container monitor-discriminator { + description + "Set monitor logging discriminators"; + leaf match2 { + type string; + description + "Set monitor logging match2 discriminator"; + } + leaf nomatch1 { + type string; + description + "Set monitor logging no-match1 discriminator"; + } + leaf match1 { + type string; + description + "Set monitor logging match1 discriminator"; + } + leaf nomatch3 { + type string; + description + "Set monitor logging no-match3 discriminator"; + } + leaf match3 { + type string; + description + "Set monitor logging match3 discriminator"; + } + leaf nomatch2 { + type string; + description + "Set monitor logging no-match2 discriminator"; + } + } + leaf logging-level { + type Logging-levels; + default "debug"; + description + "Monitor Logging Level"; + } + } + container history-logging { + description + "Set history logging"; + leaf history-size { + type uint32 { + range "1..500"; + } + default "1"; + description + "Logging history size"; + } + leaf logging-level { + type Logging-levels; + default "warning"; + description + "History logging level"; + } + } + container logging-facilities { + description + "Modify message logging facilities"; + leaf facility-level { + type Facility; + default "local7"; + description + "Facility from which logging is done"; + } + } + container trap-logging { + description + "Set trap logging"; + leaf logging-level { + type Logging-levels; + default "info"; + description + "Trap logging level"; + } + } + container container-logs { + description + "Configurations for collecting logs from dockers + running in device"; + container all-containers { + description + "Configurations for all containers"; + leaf enable-logging { + type empty; + description + "Enable collection of logs from all containers"; + } + leaf fetch-timestamp { + type empty; + description + "Fetch Timestamp from all containers"; + } + } + } + container buffered-logging { + description + "Set buffered logging parameters"; + container buffered-discriminator { + description + "Set buffered logging discriminators"; + leaf match2 { + type string; + description + "Set buffered logging match2 discriminator"; + } + leaf nomatch1 { + type string; + description + "Set buffered logging no-match1 discriminator"; + } + leaf match1 { + type string; + description + "Set buffered logging match1 discriminator"; + } + leaf nomatch3 { + type string; + description + "Set buffered logging no-match3 discriminator"; + } + leaf match3 { + type string; + description + "Set buffered logging match3 discriminator"; + } + leaf nomatch2 { + type string; + description + "Set buffered logging no-match2 discriminator"; + } + } + leaf logging-level { + type Logging-levels; + default "debug"; + description + "Logging level for Buffered logging"; + } + leaf buffer-size { + type uint32 { + range "2097152..125000000"; + } + default "2097152"; + description + "Logging buffered size"; + } + } + container host-server { + description + "Configure logging host"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "VRF specific data"; + container ipv6s { + description + "List of the IPv6 logging host"; + list ipv6 { + key "address"; + description + "IPv6 address of the logging host"; + container ipv6-severity-port { + description + "Severity/Port for the logging host"; + leaf severity { + type Log-severity; + default "informational"; + description + "Severity for the logging host"; + } + leaf port { + type inet:port-number; + default "514"; + description + "Port for the logging host"; + } + leaf operator { + type Log-opertor; + default "equals-or-higher"; + description + "Severity Operator for the logging host"; + } + } + container ipv6-severity-levels { + status obsolete; + description + "Severity container of the logging host"; + list ipv6-severity-level { + key "severity"; + status obsolete; + description + "Severity for the logging host"; + leaf severity { + type Log-severity; + description + "Severity for the logging host"; + } + } + } + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 address of the logging host"; + } + } + } + container hosts { + description + "List of the logging host"; + list host { + key "host-name"; + description + "Name of the logging host"; + container host-name-severities { + status obsolete; + description + "Severity container of the logging host"; + list host-name-severity { + key "severity"; + status obsolete; + description + "Severity for the logging host"; + leaf severity { + type Log-severity; + description + "Severity for the logging host"; + } + } + } + container host-severity-port { + description + "Severity/Port for the logging host"; + leaf severity { + type Log-severity; + default "informational"; + description + "Severity for the logging host"; + } + leaf port { + type inet:port-number; + default "514"; + description + "Port for the logging host"; + } + leaf operator { + type Log-opertor; + default "equals-or-higher"; + description + "Severity Operator for the logging host"; + } + } + leaf host-name { + type string; + description + "Name of the logging host"; + } + } + } + container ipv4s { + description + "List of the IPv4 logging host"; + list ipv4 { + key "address"; + description + "IPv4 address of the logging host"; + container ipv4-severity-levels { + status obsolete; + description + "Severity container of the logging host"; + list ipv4-severity-level { + key "severity"; + status obsolete; + description + "Severity for the logging host"; + leaf severity { + type Log-severity; + description + "Severity for the logging host"; + } + } + } + container ipv4-severity-port { + presence "enable ipv4-severity-port"; + description + "Severity/Port for the logging host"; + leaf severity { + type Log-severity; + default "informational"; + description + "Severity for the logging host"; + } + leaf port { + type inet:port-number; + default "514"; + description + "Port for the logging host"; + } + leaf operator { + type Log-opertor; + default "equals-or-higher"; + description + "Severity Operator for the logging host"; + } + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the logging host"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF instance"; + } + } + } + } + container console-logging { + description + "Set console logging"; + container console-discriminator { + description + "Set console logging discriminators"; + leaf match2 { + type string; + description + "Set console logging match2 discriminator"; + } + leaf nomatch1 { + type string; + description + "Set console logging no-match1 discriminator"; + } + leaf match1 { + type string; + description + "Set console logging match1 discriminator"; + } + leaf nomatch3 { + type string; + description + "Set console logging no-match3 discriminator"; + } + leaf match3 { + type string; + description + "Set console logging match3 discriminator"; + } + leaf nomatch2 { + type string; + description + "Set console logging no-match2 discriminator"; + } + } + leaf logging-level { + type Logging-levels; + default "warning"; + description + "Console logging level"; + } + } + container files { + description + "Configure logging file destination"; + list file { + key "file-name"; + description + "Specify File Name"; + container file-specification { + presence "Contains mandatory nodes that used to set default values"; + description + "Specifications of the logging file destination"; + leaf path { + type string; + description + "File path"; + } + leaf max-file-size { + type uint32 { + range "1..2097152"; + } + mandatory true; + description + "Maximum file size (in KB)"; + } + leaf severity { + type Log-message-severity; + mandatory true; + description + "Severity of messages"; + } + leaf local-accounting { + type boolean; + description + "Store only the command accounting logs"; + } + leaf send-to-remote { + type boolean; + description + "Send logs to syslog server"; + } + leaf facility { + type Facility; + description + "Message logging facilities"; + } + } + container file-log-discriminator { + description + "Set File logging discriminators"; + leaf nomatch2 { + type string; + description + "Set file logging no match discriminator 2"; + } + leaf match3 { + type string; + description + "Set file logging match discriminator 3"; + } + leaf nomatch3 { + type string; + description + "Set file logging no match discriminator 3"; + } + leaf match1 { + type string; + description + "Set file logging match discriminator 1"; + } + leaf nomatch1 { + type string; + description + "Set file logging no match discriminator 1"; + } + leaf match2 { + type string; + description + "Set file logging match discriminator 2"; + } + } + leaf file-name { + type xr:Cisco-ios-xr-string; + description + "Name of the file"; + } + } + } + container ipv4 { + description + "Syslog TOS bit for outgoing messages"; + container dscp { + presence "Indicates a dscp node is configured."; + status obsolete; + description + "DSCP value"; + leaf type { + type Logging-dscp; + mandatory true; + description + "Logging TOS type DSCP"; + } + leaf unused { + type Logging-precedence-value; + description + "Unused"; + } + leaf value { + type Logging-dscp-value; + mandatory true; + description + "Logging DSCP value"; + } + } + container tos { + description + "Type of service"; + leaf type { + type Logging-tos; + description + "Logging TOS type DSCP or precedence"; + } + leaf precedence { + when "../type = 'precedence'" { + description + "../Type = Precedence"; + } + type Logging-precedence-value; + description + "Logging precedence value"; + } + leaf dscp { + when "../type = 'dscp'" { + description + "../Type = DSCP"; + } + type Logging-dscp-value; + description + "Logging DSCP value"; + } + } + container precedence { + presence "Indicates a precedence node is configured."; + status obsolete; + description + "Precedence value"; + leaf type { + type Logging-precedence; + mandatory true; + description + "Logging TOS type precedence"; + } + leaf value { + type Logging-precedence-value; + mandatory true; + description + "Logging precedence value"; + } + leaf unused { + type Logging-dscp-value; + description + "Unused"; + } + } + } + container archive { + description + "Archive attributes configuration"; + leaf size { + type uint32 { + range "1..2047"; + } + description + "The total size of the archive"; + } + leaf file-size { + type uint32 { + range "1..2047"; + } + description + "The maximum file size for a single log file."; + } + leaf device { + type string; + description + "'/disk0:' or '/disk1:' or '/harddisk:'"; + } + leaf threshold { + type uint32 { + range "1..99"; + } + units "percentage"; + description + "The size threshold at which a syslog is + generated"; + } + leaf frequency { + type Log-collect-frequency; + description + "The collection interval for logs"; + } + leaf severity { + type Log-message-severity; + description + "The minimum severity of log messages to archive"; + } + leaf length { + type uint32 { + range "1..256"; + } + description + "The maximum number of weeks of log to maintain"; + } + } + container ipv6 { + description + "Syslog traffic class bit for outgoing messages"; + container dscp { + presence "Indicates a dscp node is configured."; + status obsolete; + description + "DSCP value"; + leaf type { + type Logging-dscp; + mandatory true; + description + "Logging TOS type DSCP"; + } + leaf unused { + type Logging-precedence-value; + description + "Unused"; + } + leaf value { + type Logging-dscp-value; + mandatory true; + description + "Logging DSCP value"; + } + } + container traffic-class { + description + "Type of traffic class"; + leaf type { + type Logging-tos; + description + "Logging TOS type DSCP or precedence"; + } + leaf precedence { + when "../type = 'precedence'" { + description + "../Type = Precedence"; + } + type Logging-precedence-value; + description + "Logging precedence value"; + } + leaf dscp { + when "../type = 'dscp'" { + description + "../Type = DSCP"; + } + type Logging-dscp-value; + description + "Logging DSCP value"; + } + } + container precedence { + presence "Indicates a precedence node is configured."; + status obsolete; + description + "Precedence value"; + leaf type { + type Logging-precedence; + mandatory true; + description + "Logging TOS type precedence"; + } + leaf value { + type Logging-precedence-value; + mandatory true; + description + "Logging precedence value"; + } + leaf unused { + type Logging-dscp-value; + description + "Unused"; + } + } + } + container source-interface-table { + description + "Configure source interface"; + container source-interface-values { + description + "Specify interface for source address in logging + transactions"; + list source-interface-value { + key "src-interface-name-value"; + description + "Source interface"; + container source-interface-vrfs { + description + "Configure source interface VRF"; + list source-interface-vrf { + key "vrf-name"; + description + "Specify VRF for source interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF instance"; + } + } + } + leaf src-interface-name-value { + type xr:Interface-name; + description + "Which Interface"; + } + } + } + } + leaf logging-format { + type Syslog-format; + description + "Syslog Logging Message Format"; + } + leaf host-name-prefix { + type string; + description + "Hostname prefix to add on msgs to servers"; + } + leaf local-log-file-size { + type uint32 { + range "0..4294967295"; + } + default "32768"; + description + "Set size of the local log file"; + } + leaf enable-console-logging { + type boolean; + description + "Enabled or disabled"; + } + leaf suppress-duplicates { + type empty; + description + "Suppress consecutive duplicate messages"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper-sub1.yang new file mode 100644 index 000000000..6e96b8cae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper-sub1.yang @@ -0,0 +1,391 @@ +submodule Cisco-IOS-XR-infra-syslog-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-syslog-oper { + prefix Cisco-IOS-XR-infra-syslog-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-syslog package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-22 { + description + "Marking Sensor Paths for Event Driven Telemetry"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-02-23 { + description + "Added a new rpc statement."; + } + revision 2018-02-22 { + description + "Fixed syslog message filter."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-06-24 { + description + "Schema added for Show logging files CLI"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef System-message-severity { + type enumeration { + enum "message-severity-unknown" { + value -1; + description + "Unknown"; + } + enum "message-severity-emergency" { + value 0; + description + "Emergency"; + } + enum "message-severity-alert" { + value 1; + description + "Alert"; + } + enum "message-severity-critical" { + value 2; + description + "Critical"; + } + enum "message-severity-error" { + value 3; + description + "Error"; + } + enum "message-severity-warning" { + value 4; + description + "Warning"; + } + enum "message-severity-notice" { + value 5; + description + "Notice"; + } + enum "message-severity-informational" { + value 6; + description + "Informational"; + } + enum "message-severity-debug" { + value 7; + description + "Debug"; + } + } + description + "System message severity"; + } + + grouping FILE-LOG-STATS { + description + "System log file destination statistics"; + leaf file-name { + type string; + description + "File name for logging messages"; + } + leaf message-count { + type uint32; + description + "Message count"; + } + } + + grouping TLS-REMOTE-LOG-STATS { + description + "System log tls remote statistics"; + leaf remote-host-name { + type string; + description + "TLS Remote hostname"; + } + leaf message-count { + type uint32; + description + "Message count"; + } + } + + grouping REMOTE-LOG-STATS { + description + "System log remote statistics"; + leaf remote-host-name { + type string; + description + "Remote hostname"; + } + leaf message-count { + type uint32; + description + "Message count"; + } + } + + grouping LOG-DEST-STATS { + description + "System log statistics"; + leaf is-log-enabled { + type boolean; + description + "Is log enabled"; + } + leaf severity { + type System-message-severity; + description + "Configured severity"; + } + leaf message-count { + type uint32; + description + "Message count"; + } + leaf buffer-size { + type uint32; + units "byte"; + description + "Buffer size in bytes if logging buffer isenabled"; + } + } + + grouping LOG-ENABLE-STATS { + description + "System log discard statistics"; + leaf is-log-enabled { + type boolean; + description + "Is log enabled"; + } + leaf drop-count { + type uint32; + description + "Number of messages dropped"; + } + leaf flush-count { + type uint32; + description + "Number of messages flushed"; + } + leaf overrun-count { + type uint32; + description + "Number of messages overrun"; + } + } + + grouping SYSTEM-MESSAGE-STATISTICS { + description + "System message statistics"; + container logging-stats { + description + "Logging statistics"; + uses LOG-ENABLE-STATS; + } + container console-logging-stats { + description + "Console logging statistics"; + uses LOG-DEST-STATS; + } + container monitor-logging-stats { + description + "Monitor loggingstatistics"; + uses LOG-DEST-STATS; + } + container trap-logging-stats { + description + "Trap logging statistics"; + uses LOG-DEST-STATS; + } + container buffer-logging-stats { + description + "Buffer logging statistics"; + uses LOG-DEST-STATS; + } + list remote-logging-stat { + description + "Remote logging statistics"; + uses REMOTE-LOG-STATS; + } + list tls-remote-logging-stat { + description + "TLS Remote logging statistics"; + uses TLS-REMOTE-LOG-STATS; + } + list file-logging-stat { + description + "File logging statistics"; + uses FILE-LOG-STATS; + } + } + + grouping SYSTEM-MESSAGE { + description + "System message"; + leaf card-type { + type string; + description + "Message card location: 'RP', 'DRP', 'LC', 'SC', + 'SP' or 'UNK' "; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf node-name { + type xr:Node-id; + description + "Message source location"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf time-stamp { + type uint64; + units "millisecond"; + description + "Time in milliseconds since 00:00:00 UTC, January + 11970 of when message was generated"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf time-of-day { + type string; + description + "Time of day of event in DDD MMM DD YYYY HH:MM + :SS format, e.g Wed Apr 01 2009 15:50:26"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf time-zone { + type string; + description + "Time Zone in UTC+/-HH:MM format, e.g UTC+5:30, + UTC-6"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf process-name { + type string; + description + "Process name"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf category { + type string; + description + "Message category"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf group { + type string; + description + "Message group"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf message-name { + type string; + description + "Message name"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf severity { + type System-message-severity; + description + "Message severity"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf text { + type string; + description + "Additional message text"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping AN-REMOTE-LOG-SERVER { + description + "A System log AN remote log server structure"; + leaf ip-address { + type string; + description + "IP Address"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vrf-severity { + type string; + description + "VRF Severity"; + } + leaf rh-discriminator { + type string; + description + "Remote-Host Discriminator"; + } + } + + grouping AN-REMOTE-LOG-SERVERS { + description + "System log All AN remote servers"; + list an-remote-log-server { + description + "AN Remote Log Servers"; + uses AN-REMOTE-LOG-SERVER; + } + } + + grouping FILE-LOG-DETAILS { + description + "System log file details"; + leaf file-path { + type string; + description + "File path for logging messages"; + } + leaf file-name { + type string; + description + "File name for logging messages"; + } + } + + grouping FILE-LOG-LIST-PATH { + description + "System log files list and path"; + list file-log-detail { + description + "Logging Files"; + uses FILE-LOG-DETAILS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper.yang new file mode 100644 index 000000000..ef797e431 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-syslog-oper.yang @@ -0,0 +1,171 @@ +module Cisco-IOS-XR-infra-syslog-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-syslog-oper"; + prefix infra-syslog-oper; + + import cisco-semver { + prefix semver; + } + import ietf-yang-types { + prefix yang; + } + include Cisco-IOS-XR-infra-syslog-oper-sub1 { + revision-date 2020-09-22; + } + + 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 infra-syslog package operational data. + + This module contains definitions + for the following management objects: + logging: Logging History data + syslog: System message operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-22 { + description + "Marking Sensor Paths for Event Driven Telemetry"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-02-23 { + description + "Added a new rpc statement."; + } + revision 2018-02-22 { + description + "Fixed syslog message filter."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-06-24 { + description + "Schema added for Show logging files CLI"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + rpc get-syslog { + input { + container filters { + must "start-time or end-time" { + description + "At least one of the filters must be specified."; + } + description + "A set of filters of syslog messages to be returned"; + leaf start-time { + type yang:date-and-time; + description + "Start timestamp of syslog messages to be returned"; + } + leaf end-time { + type yang:date-and-time; + description + "End timestamp of syslog messages to be returned"; + } + } + } + output { + container data { + description + "Output for RPC operation"; + container syslog { + description + "syslog"; + container messages { + description + "Message table information"; + list message { + key "message-id"; + description + "A system message"; + leaf message-id { + type uint32; + description + "Message ID of the system message"; + } + uses SYSTEM-MESSAGE; + } + } + } + } + } + } + container logging { + config false; + description + "Logging History data"; + container history { + description + "Syslog Info "; + leaf properties { + type string; + description + "Syslog Properties"; + } + leaf message { + type string; + description + "Syslog Message"; + } + } + } + container syslog { + config false; + description + "System message operational data"; + container logging-files { + description + "Logging Files information"; + uses FILE-LOG-LIST-PATH; + } + container an-remote-servers { + description + "Logging AN remote servers information"; + uses AN-REMOTE-LOG-SERVERS; + } + container messages { + description + "Message table information"; + list message { + key "message-id"; + description + "A system message"; + leaf message-id { + type uint32; + description + "Message ID of the system message"; + } + uses SYSTEM-MESSAGE; + } + } + container logging-statistics { + description + "Logging statistics information"; + uses SYSTEM-MESSAGE-STATISTICS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-systemmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-systemmib-cfg.yang new file mode 100644 index 000000000..c1d896466 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-systemmib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-infra-systemmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-systemmib-cfg"; + prefix infra-systemmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 infra-systemmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container system { + description + "CISCO-SYSTEM-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable ciscoSystemMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-cfg.yang new file mode 100644 index 000000000..4bff4caa0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-cfg.yang @@ -0,0 +1,199 @@ +module Cisco-IOS-XR-infra-tc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-tc-cfg"; + prefix infra-tc-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 infra-tc package configuration. + + This module contains definitions + for the following management objects: + traffic-collector: Global Traffic Collector configuration + commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef History-size { + type union { + type enumeration { + enum "max" { + value 10; + description + "Max history"; + } + } + type uint32 { + range "1..10"; + } + } + description + "History size"; + } + + typedef Collect-ion-interval { + type enumeration { + enum "1-minute" { + value 1; + description + "Interval1minute"; + } + enum "2-minutes" { + value 2; + description + "Interval2minutes"; + } + enum "3-minutes" { + value 3; + description + "Interval3minutes"; + } + enum "4-minutes" { + value 4; + description + "Interval4minutes"; + } + enum "5-minutes" { + value 5; + description + "Interval5minutes"; + } + enum "6-minutes" { + value 6; + description + "Interval6minutes"; + } + enum "10-minutes" { + value 10; + description + "Interval10minutes"; + } + enum "12-minutes" { + value 12; + description + "Interval12minutes"; + } + enum "15-minutes" { + value 15; + description + "Interval15inutes"; + } + enum "20-minutes" { + value 20; + description + "Interval20minutes"; + } + enum "30-minutes" { + value 30; + description + "Interval30minutes"; + } + enum "60-minutes" { + value 60; + description + "Interval60minutes"; + } + } + description + "Collect ion interval"; + } + + typedef History-timeout { + type union { + type enumeration { + enum "max" { + value 720; + description + "Max timeout"; + } + } + type uint32 { + range "0..720"; + } + } + description + "History timeout"; + } + + container traffic-collector { + description + "Global Traffic Collector configuration commands"; + container external-interfaces { + description + "Configure external interfaces"; + list external-interface { + key "interface-name"; + description + "Configure an external internface"; + leaf enable { + type empty; + description + "Enable traffic collector on this interface"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of interface"; + } + } + } + container statistics { + description + "Configure statistics related parameters"; + leaf history-size { + type History-size; + description + "Configure statistics history size"; + } + leaf collection-interval { + type Collect-ion-interval; + description + "Configure statistics collection interval"; + } + leaf enable-traffic-collector-statistics { + type empty; + description + "Enable traffic collector statistics"; + } + leaf history-timeout { + type History-timeout; + description + "Configure statistics history timeout interval"; + } + } + leaf enable-traffic-collector { + type empty; + description + "Enable traffic collector"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper-sub1.yang new file mode 100644 index 000000000..fbfe3e8c0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper-sub1.yang @@ -0,0 +1,427 @@ +submodule Cisco-IOS-XR-infra-tc-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-tc-oper { + prefix Cisco-IOS-XR-infra-tc-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-tc package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-26 { + description + "Added is OCAFT/OCSR enabled to track TC FSM modes and has SR flag to track label flag"; + semver:module-version "1.1.0"; + } + revision 2019-06-17 { + description + "Change type of tunnel interface name to string"; + semver:module-version "1.0.0"; + } + revision 2019-05-30 { + description + "Fix to extend range of valid OC-AFT Labels"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-01-01 { + description + "Yang evaluator: updates to schema descriptions."; + } + revision 2018-11-30 { + description + "Adding label data and total count stats for OC-AFT."; + } + revision 2018-10-05 { + description + "Removed stat collection message statistics. LDP label is provided in prefix info if present."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TC-MGMT-MSG-STAT { + description + "TC Server Message Statistics"; + leaf packet-sent { + type uint64; + description + "Number of packets sent"; + } + leaf byte-sent { + type uint64; + units "byte"; + description + "Number of bytes sent"; + } + leaf packet-received { + type uint64; + description + "Number of packets received"; + } + leaf byte-received { + type uint64; + units "byte"; + description + "Number of bytes received"; + } + leaf maximum-roundtrip-latency { + type uint32; + description + "Maximum message roundtrip latency in msec"; + } + leaf maimum-latency-timestamp { + type uint64; + description + "Timestamp of maximum latency"; + } + } + + grouping TC-MGMT-VRF-STAT { + description + "Statistics on VRF Table and its sub-tables"; + container database-statistics-ipv4 { + description + "Database statistics for IPv4 table"; + uses TC-MGMT-DB-STAT; + } + container database-statistics-tunnel { + description + "Database statistics for Tunnel table"; + uses TC-MGMT-DB-STAT; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + } + + grouping TC-MGMT-DB-STAT { + description + "Database statistics"; + leaf number-of-entries { + type uint32; + description + "Number of entries in the database"; + } + leaf number-of-stale-entries { + type uint32; + description + "Number of stale entries in the database"; + } + leaf number-of-add-operations { + type uint64; + description + "Number of add operations for the database"; + } + leaf number-of-delete-operations { + type uint64; + description + "Number of delete operations for the database"; + } + } + + grouping TC-MGMT-SUMMARY { + description + "TC Server Summary"; + container database-statistics-external-interface { + description + "Configured external interface counts"; + uses TC-MGMT-DB-STAT; + } + leaf collection-interval { + type uint8; + units "minute"; + description + "Statistic collection interval in minutes"; + } + leaf collection-timer-is-running { + type boolean; + description + "Flag to indicate if collection timer is running"; + } + leaf timeout-interval { + type uint16; + units "hour"; + description + "Statistic history timeout interval in hours"; + } + leaf timeout-timer-is-running { + type boolean; + description + "Flag to indicate if history timeout timer is + running"; + } + leaf history-size { + type uint8; + description + "Statistics history size"; + } + leaf total-prefix-count { + type uint32; + description + "Total count of prefix entries"; + } + list vrf-statistic { + description + "VRF table statistics"; + uses TC-MGMT-VRF-STAT; + } + list checkpoint-message-statistic { + description + "Statistics per message type for Chkpt"; + uses TC-MGMT-MSG-STAT; + } + } + + grouping TC-MGMT-EXT-IF-DATA { + description + "TC Server external interface data"; + leaf interface-name-xr { + type string; + description + "Interface name in Display format"; + } + leaf interface-handle { + type uint32; + description + "Interface handle for the external interface"; + } + leaf vrfid { + type uint32; + description + "Interface VRF ID"; + } + leaf is-interface-enabled { + type boolean; + description + "Flag to indicate interface enabled or not"; + } + } + + grouping TC-MGMT-OCAFT-SUMMARY { + description + "TC oc Server Summary"; + leaf collection-interval { + type uint8; + units "minute"; + description + "Statistic collection interval in minutes"; + } + leaf collection-interval-sec { + type uint16; + units "second"; + description + "Statistic collection interval in seconds"; + } + leaf collection-timer-is-running { + type boolean; + description + "Flag to indicate if collection timer is running"; + } + leaf total-label-count { + type uint32; + description + "Total count of oc label entries"; + } + } + + grouping TC-MGMT-TUNNEL-DATA { + description + "TC Server tunnel data"; + container base-counter-statistics { + description + "Base counter statistics for the tunnel"; + uses TC-MGMT-COUNT-STATS; + } + leaf interface-name-xr { + type string; + description + "Interface name in Display format"; + } + leaf interface-handle { + type uint32; + description + "Interface handle for the tunnel"; + } + leaf vrfid { + type uint32; + description + "Interface VRF ID"; + } + leaf is-active { + type boolean; + description + "Interface is Active and collecting new + Statistics"; + } + } + + grouping TC-MGMT-COUNT-HISTORY { + description + "TC Server counter statistics"; + leaf event-start-timestamp { + type uint64; + description + "Time when the collection interval started"; + } + leaf event-end-timestamp { + type uint64; + description + "Time when the collection interval ended"; + } + leaf transmit-number-of-packets-switched { + type uint64; + description + "Number of packets switched in this interval"; + } + leaf transmit-number-of-bytes-switched { + type uint64; + units "byte"; + description + "Number of Bytes switched in this interval"; + } + leaf is-valid { + type boolean; + description + "Flag to indicate if this history entry is valid"; + } + } + + grouping TC-MGMT-COUNT-STATS { + description + "TC Server counter statistics"; + leaf transmit-packets-per-second-switched { + type uint64; + units "packet/s"; + description + "Average Rate of Packets/second switched"; + } + leaf transmit-bytes-per-second-switched { + type uint64; + units "byte/s"; + description + "Average Rate of Bytes/second switched"; + } + list count-history { + description + "Counter History"; + uses TC-MGMT-COUNT-HISTORY; + } + } + + grouping TC-MGMT-PREFIX-DATA { + description + "TC Server Prefix data"; + container base-counter-statistics { + description + "Base counter statistics for the prefix"; + uses TC-MGMT-COUNT-STATS; + } + container traffic-matrix-counter-statistics { + description + "Traffic Matrix (TM) counter statistics for the + prefix"; + uses TC-MGMT-COUNT-STATS; + } + leaf prefix { + type string; + description + "Prefix Address (V4 or V6 Format)"; + } + leaf label-xr { + type uint32; + description + "SR Label"; + } + leaf ldp-label { + type uint32; + description + "LDP Label"; + } + leaf is-active { + type boolean; + description + "Prefix is Active and collecting new Statistics"; + } + } + + grouping TC-MGMT-COUNT-TOTAL { + description + "TC Server total counts"; + leaf last-collection-time { + type uint64; + description + "Last time the stats were collected"; + } + leaf transmit-packets-switched { + type uint64; + description + "Total Packets switched"; + } + leaf transmit-bytes-switched { + type uint64; + units "byte"; + description + "Total Bytes switched"; + } + } + + grouping TC-MGMT-LABEL-DATA { + description + "TC Server Label data"; + container base-counter-total { + description + "Base counter total bytes/packets"; + uses TC-MGMT-COUNT-TOTAL; + } + leaf label-xr { + type uint32; + description + "Label"; + } + leaf is-active { + type boolean; + description + "Label is Active and collecting new Statistics"; + } + leaf has-sr-flag { + type boolean; + description + "Label has SR flag meaning stats are pushed on + OCSR sensor path"; + } + leaf is-oc-aft-mode-enabled { + type boolean; + description + "OC-AFT mode is enabled in TC FSM"; + } + leaf is-oc-sr-mode-enabled { + type boolean; + description + "OC-SR mode is enabled in TC FSM"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper.yang new file mode 100644 index 000000000..d17d26743 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-tc-oper.yang @@ -0,0 +1,226 @@ +module Cisco-IOS-XR-infra-tc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-tc-oper"; + prefix infra-tc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-tc-oper-sub1 { + revision-date 2020-07-26; + } + + 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 infra-tc package operational data. + + This module contains definitions + for the following management objects: + traffic-collector: Global Traffic Collector configuration + commands + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-26 { + description + "Added is OCAFT/OCSR enabled to track TC FSM modes and has SR flag to track label flag"; + semver:module-version "1.1.0"; + } + revision 2019-06-17 { + description + "Change type of tunnel interface name to string"; + semver:module-version "1.0.0"; + } + revision 2019-05-30 { + description + "Fix to extend range of valid OC-AFT Labels"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-01-01 { + description + "Yang evaluator: updates to schema descriptions."; + } + revision 2018-11-30 { + description + "Adding label data and total count stats for OC-AFT."; + } + revision 2018-10-05 { + description + "Removed stat collection message statistics. LDP label is provided in prefix info if present."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tc-oper-af-name { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4"; + } + enum "ipv6" { + value 1; + description + "IPv6"; + } + } + description + "Tc oper af name"; + } + + typedef Tc-oper-ocaft-label { + type uint32 { + range "0..1048575"; + } + description + "Tc oper ocaft label"; + } + + typedef Tc-oper-local-label { + type uint32 { + range "16..1048575"; + } + description + "Tc oper local label"; + } + + grouping AF-TABLE { + description + "Common node of default-vrf, traffic-collector"; + container afs { + description + "Address Family specific operational data"; + list af { + key "af-name"; + description + "Operational data for given Address Family"; + container counters { + description + "Show Counters"; + container labels { + description + "Label Database"; + list label { + key "label"; + description + "Show Label Counter"; + leaf label { + type Tc-oper-ocaft-label; + description + "Local Label"; + } + uses TC-MGMT-LABEL-DATA; + } + } + container prefixes { + description + "Prefix Database"; + list prefix { + description + "Show Prefix Counter"; + leaf ipaddr { + type xr:Cisco-ios-xr-string; + description + "IP Address"; + } + leaf mask { + type xr:Cisco-ios-xr-string; + description + "Prefix Mask"; + } + leaf label { + type Tc-oper-local-label; + description + "Local Label"; + } + uses TC-MGMT-PREFIX-DATA; + } + } + container tunnels { + description + "List of tunnels in the traffic collector + tunnel database"; + list tunnel { + key "interface-name"; + description + "Information about a specific tunnel"; + leaf interface-name { + type xr:Cisco-ios-xr-string; + description + "The Interface Name"; + } + uses TC-MGMT-TUNNEL-DATA; + } + } + } + leaf af-name { + type Tc-oper-af-name; + description + "Address Family name"; + } + } + } + } + + container traffic-collector { + config false; + description + "Global Traffic Collector configuration commands"; + container summary-oc-aft { + description + "Traffic Collector summary for oc-aft"; + uses TC-MGMT-OCAFT-SUMMARY; + } + container external-interfaces { + description + "List of interfaces in the traffic collector + external interface database"; + list external-interface { + key "interface-name"; + description + "Information about a specific external interface"; + leaf interface-name { + type xr:Interface-name; + description + "The Interface Name"; + } + uses TC-MGMT-EXT-IF-DATA; + } + } + container summary { + description + "Traffic Collector summary"; + uses TC-MGMT-SUMMARY; + } + container vrf-table { + description + "VRF specific operational data"; + container default-vrf { + description + "DefaultVRF specific operational data"; + uses AF-TABLE; + } + } + uses AF-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-cfg.yang new file mode 100644 index 000000000..f63e8ce04 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-cfg.yang @@ -0,0 +1,2649 @@ +module Cisco-IOS-XR-infra-xtc-agent-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-xtc-agent-cfg"; + prefix infra-xtc-agent-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-segment-routing-ms-cfg { + prefix a1; + } + + 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 infra-xtc-agent package configuration. + + This YANG module augments the + Cisco-IOS-XR-segment-routing-ms-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-30 { + description + "Added ub6-encaps-reduced configuration. + 2022-09-13 + Updated ub6-insert-reduced enum value. + 2022-07-18 + Added SRv6 segment list topology check configuration. + 2022-07-13 + Deprecated pcc/profiles/srpag leaf in IOS-XR 7.8.1. Starting from 7.8.1, SR-PAG will be sent by default in PCEP and this CLI would not be required. + 2022-05-24 + Updated locator leaf. + 2022-05-09 + Add policy steering bgp path-label-prefix ignore knob. + 2022-04-07 + Added segment-lists configuration. + 2022-03-09 + Add delete-delay timer. + 2022-02-15 + Updated ub6-insert-reduced enum value. + 2021-11-03 + On demand color level options were added to allow up to 3 standby candidate paths to be brought up for quicker convergence. + 2021-09-27 + Global and policy level options were added to allow up to 3 standby candidate paths to be brought up for quicker convergence. + 2021-08-31 + Range for on-demand-colors/constraint/segments/sid-algorithm was incrased from 128-255 to 0-255 to allow algo-0/1 prefix-SIDS. Range for candidate-paths/preferences/preference/constraint/segment-rules/sid-algorithm was increased from 128-255 to 0-255 to allow algo-0/1 prefix-SIDS."; + semver:module-version "6.0.0"; + } + revision 2021-07-22 { + description + "Added SR-TE path Strict SPF algorithm configuration + 2021-06-04 + DEPRECATED on-demand-colors on-demand-color on-demand-color-dyn-mpls on-demand-color-dyn-mpls-flex-algorithm in IOS-XR 7.5.1. Please use on-demand-colors on-demand-color constraint segments sid-algorithm. + 2021-05-14 + Modify the description of ODN related nodes to indicate that they are applicable for both SR-MPLS and SRv6 policies. + 2021-04-09 + Add backup liveness profile. + 2021-03-09 + Removed unsupported TCP Authentication option - accept mismatch connection, Changed taskgroup for SRPAG leaf."; + semver:module-version "5.0.0"; + } + revision 2021-02-18 { + description + "Remove deprecated liveness-detection and reverse-path cfg schema from performance-measurement delay measurement. + 2020-12-13 + Added performance-measurement liveness-detection config schema. + 2020-11-04 + Adding configurations for new features path invalidation drop protected and unprotected path Added liveness-detection container under delay measurement container. Added dm-reverse-path under delay measurement container. Added profile-name leaf under delay measurement container. Added separate-next-hop leaf under traffic-engineering container. Increased the maximum value of PCC delegation timeout. Added invalidation-drop leaf under steering container. Renamed type XTCSteeringApplicationType to XTCAgentPolicySteeringApplicationType. + 2020-10-27 + Adding support for ipv6 link local for srv6 + 2020-09-18 + Effective metric config CLI + 2020-08-07 + Remodel related to steering submode IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-cfg"; + semver:module-version "4.0.0"; + } + revision 2020-01-29 { + description + "Implement new performance-measurement logging commands. Added per-flow configuration under policy and on-demand color. Adding leaf pdp-count to support Per-Flow Policy. Remove unnecessary config leaves from the steering container. + 2019-10-11 + Introduce a new HTTP API bindpoint for sibling PCEs. Adding enable leaf to profile list. + 2019-09-25 + Adding enum ipv4-adjacency-address."; + semver:module-version "3.0.0"; + } + revision 2019-09-05 { + description + "Source of SRTE policies are not getting selected properly in case of Multiple IGP Instance"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-01 { + description + "Added BFD configuration."; + } + revision 2018-11-28 { + description + "Added new SR-TE timers configuration."; + } + revision 2018-07-25 { + description + "Removed incorrect mandatory specifications."; + } + revision 2018-07-07 { + description + "Modified the allowed range for policy path weight."; + } + revision 2018-07-03 { + description + "Added TE-latency algorithm configuration."; + } + revision 2018-01-31 { + description + "Added BW configuration option for On Demand Color policy."; + } + revision 2017-12-21 { + description + "Added BW configuration option for SR policy."; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-09-11 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Xtc-bound-scope { + type enumeration { + enum "bound-scope-none" { + value 0; + description + "BOUND SCOPE NONE"; + } + enum "bound-scope-link" { + value 1; + description + "bounds on per link metric"; + } + enum "bound-scope-cumulative" { + value 2; + description + "bounds on path metric"; + } + } + description + "Xtc bound scope"; + } + + typedef Xtc-metric-value { + type enumeration { + enum "relative" { + value 1; + description + "Relative metric value"; + } + enum "absolute" { + value 2; + description + "Absolute metric value"; + } + } + description + "Xtc metric value"; + } + + typedef Xtc-pm-invalidation-action { + type enumeration { + enum "invalid-ation-action-none" { + value 0; + description + "PM liveness session state does not affect LSP + state, use for diagnostic purposes"; + } + enum "invalid-ation-action-down" { + value 1; + description + "LSP can only be operationally up if the PM + liveness session is up"; + } + } + description + "Xtc pm invalidation action"; + } + + typedef Effective-metric { + type enumeration { + enum "default" { + value 0; + description + "Default metric type (optimization metric type)"; + } + enum "igp" { + value 1; + description + "IGP metric type"; + } + enum "te" { + value 2; + description + "TE metric type"; + } + enum "hopcount" { + value 3; + description + "HOPCOUNT metric type"; + } + enum "latency" { + value 12; + description + "LATENCY metric type"; + } + } + description + "Effective metric"; + } + + typedef Xtc-bfd-invalidation-action { + type enumeration { + enum "invalid-ation-action-none" { + value 0; + description + "BFD session state does not affect LSP state, + use for diagnostic purposes"; + } + enum "invalid-ation-action-down" { + value 1; + description + "LSP can only be operationally up if the BFD + session is up"; + } + } + description + "Xtc bfd invalidation action"; + } + + typedef Xtc-binding-sidsrv6 { + type enumeration { + enum "srv6-dynamic" { + value 1; + description + "Allocate dynamic SRv6 BSID"; + } + } + description + "Xtc binding sidsrv6"; + } + + typedef Xtc-affinity-rule { + type enumeration { + enum "affinity-include-all" { + value 0; + description + "Include-all affinity rule"; + } + enum "affinity-exclude-any" { + value 1; + description + "Exclude-any affinity rule"; + } + enum "affinity-include-any" { + value 2; + description + "Include-any affinity rule"; + } + } + description + "Xtc affinity rule"; + } + + typedef Xtc-metric { + type enumeration { + enum "igp" { + value 1; + description + "IGP metric type"; + } + enum "te" { + value 2; + description + "TE metric type"; + } + enum "hopcount" { + value 3; + description + "Hopcount metric type"; + } + enum "latency" { + value 12; + description + "Latency metric type"; + } + } + description + "Xtc metric"; + } + + typedef Xtc-behavior-srv6 { + type enumeration { + enum "ub6-insert-reduced" { + value 71; + description + "SRv6 USID Insert Reduced Behavior"; + } + enum "ub6-encaps-reduced" { + value 72; + description + "SRv6 USID reduced encapsulation behavior"; + } + } + description + "Xtc behavior srv6"; + } + + typedef Xtc-end-point { + type enumeration { + enum "end-point-type-ipv4" { + value 1; + description + "IPv4 endpoint address"; + } + enum "end-point-type-ipv6" { + value 2; + description + "IPv6 endpoint address"; + } + } + description + "Xtc end point"; + } + + typedef Xtc-binding-sidexplicit-rule { + type enumeration { + enum "fallback-dynamic" { + value 1; + description + "Fallback dynamic option"; + } + enum "enforce-srlb" { + value 2; + description + "SRLB enforcement option"; + } + } + description + "Xtc binding sidexplicit rule"; + } + + typedef Xtc-binding-sid-dynamic-rule { + type enumeration { + enum "disable" { + value 1; + description + "Disable dynamic binding SID allocation"; + } + } + description + "Xtc binding sid dynamic rule"; + } + + typedef Xtc-path-algo-check-igp-protocol { + type enumeration { + enum "ospf" { + value 2; + description + "OSPF protocol"; + } + } + description + "Xtc path algo check igp protocol"; + } + + typedef Xtc-agent-policy-steering-application { + type enumeration { + enum "bgp" { + value 1; + description + "BGP as steering client"; + } + enum "isis" { + value 2; + description + "ISIS as steering client"; + } + enum "ospf" { + value 3; + description + "OSPF as steering client"; + } + } + description + "Xtc agent policy steering application"; + } + + typedef Xtc-path-hop { + type enumeration { + enum "mpls" { + value 1; + description + "Segment-routing MPLS"; + } + enum "srv6" { + value 2; + description + "Segment-routing v6"; + } + } + description + "Xtc path hop"; + } + + typedef Xtc-cpath { + type enumeration { + enum "candidate-path-type-all" { + value 0; + description + "All candidate-path type"; + } + enum "candidate-path-type-local" { + value 1; + description + "Local candidate-path type"; + } + enum "candidate-path-type-bgp-odn" { + value 2; + description + "BGP-ODN candidate-path type"; + } + enum "candidate-path-type-bgp-srte" { + value 3; + description + "BGP-SRTE candidate-path type"; + } + enum "candidate-path-type-pcep" { + value 4; + description + "PCEP candidate-path type"; + } + } + description + "Xtc cpath"; + } + + typedef Xtc-steering-application { + type enumeration { + enum "bgp" { + value 1; + description + "BGP as steering client"; + } + enum "isis" { + value 2; + description + "ISIS as steering client"; + } + enum "ospf" { + value 3; + description + "OSPF as steering client"; + } + } + description + "Xtc steering application"; + } + + typedef Xtc-adj-sid-protection { + type enumeration { + enum "protected-preferred" { + value 0; + description + "Protected adj SID preferred"; + } + enum "unprotected-only" { + value 1; + description + "Unprotected adj SID only"; + } + enum "protected-only" { + value 2; + description + "Protected adj SID only"; + } + enum "unprotected-preferred" { + value 3; + description + "Unprotected adj SID preferred"; + } + } + description + "Xtc adj sid protection"; + } + + typedef Xtc-path { + type enumeration { + enum "explicit" { + value 1; + description + "Explicit"; + } + enum "dynamic" { + value 2; + description + "Dynamic"; + } + } + description + "Xtc path"; + } + + typedef Xtcsrv6-hop { + type enumeration { + enum "srv6sid" { + value 8; + description + "SRv6 SID"; + } + } + description + "Xtcsrv6 hop"; + } + + typedef Xtc-address-family { + type enumeration { + enum "af-type-all" { + value 0; + description + "All address families"; + } + enum "af-type-ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "af-type-ipv6" { + value 2; + description + "IPv6 address family"; + } + } + description + "Xtc address family"; + } + + typedef Xtc-segment { + type enumeration { + enum "ipv4-address" { + value 1; + description + "IPv4 Address"; + } + enum "mpls-label" { + value 3; + description + "MPLS Label"; + } + enum "ipv4-adjacency-address" { + value 4; + description + "IPv4 Adjacency Address"; + } + } + description + "Xtc segment"; + } + + typedef Xtc-binding-sid { + type enumeration { + enum "mpls-label-specified" { + value 1; + description + "Use specified BSID MPLS label"; + } + enum "mpls-label-any" { + value 2; + description + "Allocate BSID MPLS label"; + } + } + description + "Xtc binding sid"; + } + + typedef Xtcsrv6sid-format { + type enumeration { + enum "micro-sid" { + value 2; + description + "Format 3216 Micro SID"; + } + } + description + "Xtcsrv6sid format"; + } + + typedef Xtc-disjointness { + type enumeration { + enum "link" { + value 1; + description + "Link Disjointness"; + } + enum "node" { + value 2; + description + "Node Disjointness"; + } + enum "srlg" { + value 3; + description + "SRLG Disjointness"; + } + enum "srlg-node" { + value 4; + description + "SRLG Node Disjointness"; + } + } + description + "Xtc disjointness"; + } + + typedef Xtc-auto-route-metric { + type enumeration { + enum "relative" { + value 1; + description + "Autoroute relative metric type"; + } + enum "constant" { + value 3; + description + "Autoroute constant metric type"; + } + } + description + "Xtc auto route metric"; + } + + grouping EFFECTIVE-METRIC { + description + "Common node of policy, preference, + on-demand-color"; + container effective-metric { + presence "CLI submode compatibility."; + description + "Effective metric configuration submode"; + container metric-value-type { + description + "Metric value, advertised to other protocols"; + leaf metric-value { + type uint32 { + range "0..4294967295"; + } + description + "Integer value of metric"; + } + leaf metric-type { + type Effective-metric; + description + "Metric type, advertised to other protocols"; + } + } + leaf enable { + type empty; + description + "True only"; + } + } + } + + grouping PM-PROFILE-NAME { + description + "Common node of liveness-profile, delay-profile, + backup"; + leaf pm-profile-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "SR Policy delay profile name"; + } + } + + grouping SOURCE-ADDRESS { + description + "Common node of candidate-path-type, policy, + on-demand-color"; + container source-address { + presence "Indicates a source-address node is configured."; + description + "Source address of a candidate path. EndPointType + , Source"; + leaf ip-address-type { + type Xtc-end-point; + mandatory true; + description + "IP address type"; + } + leaf source-address { + type inet:ip-address-no-zone; + mandatory true; + description + "Source address"; + } + } + } + + grouping MAX-INSTALL-STANDBY-C-PATHS { + description + "Common node of policy, on-demand-color"; + leaf max-install-standby-c-paths { + type uint32 { + range "0..3"; + } + description + "Allow additional candidate paths to warm up non + forwarding LSPs"; + } + } + + grouping PERFORMANCE-MEASUREMENT { + description + "Common node of policy, on-demand-color"; + container performance-measurement { + presence "CLI submode compatibility."; + description + "Performance Measurement configuration submode"; + container delay-measurement { + presence "CLI submode compatibility."; + description + "Delay-measurement configuration submode"; + container delay-measurement-logging { + presence "CLI submode compatibility."; + description + "Syslog configuration options"; + leaf delay-exceeded { + type empty; + description + "Emit syslog when the delay exceeds the + threshold"; + } + } + container delay-profile { + description + "SR Policy delay profile name"; + uses PM-PROFILE-NAME; + } + } + container pm-liveness-detection { + presence "CLI submode compatibility."; + description + "Liveness detection configuration submode"; + container liveness-profile { + description + "SR Policy liveness profile name"; + container backup { + description + "SR Policy liveness backup profile name"; + uses PM-PROFILE-NAME; + } + uses PM-PROFILE-NAME; + } + container pm-liveness-detection-logging { + presence "CLI submode compatibility."; + description + "Syslog configuration options"; + leaf pm-liveness-session-state-change { + type empty; + description + "Emit syslog when the state of the session + changes"; + } + } + leaf pm-liveness-invalidation-action { + type Xtc-pm-invalidation-action; + description + "Action to be taken when PM liveness session is + invalidated"; + } + } + container pm-reverse-path { + description + "PM packets return to head-end using a label"; + leaf label { + type uint32 { + range "16..1048575"; + } + description + "DM packets return to head-end using a label"; + } + } + leaf enable { + type empty; + description + "True only"; + } + } + } + + grouping PRECEDENCE { + description + "Common node of pce-peer, pce-peer-v6"; + leaf precedence { + type uint32 { + range "0..255"; + } + description + "Precedence value of this PCE"; + } + } + + grouping METRIC-MARGIN { + description + "Common node of metric, + on-demand-color-dyn-mpls-metric"; + container metric-margin { + description + "Metric Margin"; + leaf value-type { + type Xtc-metric-value; + description + "Metric margin type"; + } + leaf absolute-value { + when "../value-type = 'absolute'" { + description + "../ValueType = Absolute"; + } + type uint32 { + range "0..2147483647"; + } + description + "Absolute metric value"; + } + leaf relative-value { + when "../value-type = 'relative'" { + description + "../ValueType = Relative"; + } + type uint32 { + range "0..2147483647"; + } + description + "Relative metric value"; + } + } + } + + grouping BOUNDS { + description + "Common node of constraints, + on-demand-color-dyn-mpls"; + container bounds { + description + "Bound related configuration"; + container bounds { + description + "SR path computation and verification metric + bounds"; + list bound { + key "scope-type metric-type"; + description + "SR path computation and verification metric + bound"; + leaf scope-type { + type Xtc-bound-scope; + description + "Scope of the bound"; + } + leaf metric-type { + type Xtc-metric; + description + "Metric type to bound"; + } + leaf bound-value { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Metric Bound Value"; + } + } + } + } + } + + grouping PER-FLOW { + description + "Common node of preference, on-demand-color"; + container per-flow { + presence "CLI submode compatibility."; + description + "Policy per-flow configuration"; + container forward-class-and-colors { + description + "Policy per-flow forward class table"; + list forward-class-and-color { + key "forward-class"; + description + "Policy per-flow forward class entry and + colorForwardClass, Color"; + leaf forward-class { + type uint32 { + range "0..7"; + } + description + "ForwardClass"; + } + leaf color { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Color"; + } + } + } + leaf default-forward-class { + type uint32 { + range "0..7"; + } + description + "Default forward class entry"; + } + leaf enable { + type empty; + description + "True only"; + } + } + } + + grouping XTC-AGENT-CFG-ENABLE { + description + "Common node of pce-peer, pce-peer-v6Common node + of segment-list, candidate-paths, preference, + path-info, metric, srte-interface, auto-route, + pcep, anycast, delay-measurement, + pm-liveness-detection, delay-measurement-logging, + pm-liveness-detection-logging, protection, lock, + disable-auto-reroute, backup-ineligible"; + leaf enable { + type empty; + description + "True only"; + } + } + + grouping SRV6 { + description + "Common node of traffic-engineering, policy, + on-demand-color"; + container srv6 { + presence "CLI submode compatibility."; + description + "SRv6 options"; + container locator { + description + "SRv6 Locator options"; + leaf locator-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRv6 locator name"; + } + leaf binding-sid-type { + type Xtc-binding-sidsrv6; + description + "Binding Segment ID type"; + } + leaf behavior { + type Xtc-behavior-srv6; + description + "SRv6 USID Behavior"; + } + } + leaf maximum-sid-depth { + type uint32 { + range "1..255"; + } + description + "SRv6 Maximum SID Depth Configuration"; + } + leaf enable { + type empty; + description + "True only"; + } + } + } + + grouping PASSWORD { + description + "Common node of pce-peer, pce-peer-v6"; + leaf password { + type string { + length "1..25"; + } + description + "PCC Peer MD5 Password"; + } + } + + grouping PCE-GROUP { + description + "Common node of policy, preference, + on-demand-color"; + leaf pce-group { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "Name of the PCE group - maximum 16 characters"; + } + } + + grouping XTC-AGENT-CFG-PCE-GROUP { + description + "Common node of policy, preference, + on-demand-colorCommon node of pce-peer, + pce-peer-v6"; + leaf pce-group { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "Name of the PCE group - maximum 16 characters"; + } + } + + grouping AFFINITY-RULE-TABLE { + description + "Common node of constraints, + on-demand-color-dyn-mpls"; + container affinity-rules { + description + "SR path computation and verification affinity + rules"; + list affinity-rule { + key "rule"; + description + "SR path computation and verification affinity + rule"; + leaf rule { + type Xtc-affinity-rule; + description + "Affinity rule type"; + } + list affinity-name { + key "affinity-name"; + description + "Affinity rule name"; + leaf affinity-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Affinity name"; + } + } + } + } + } + + grouping BFD { + description + "Common node of policy, on-demand-color"; + container bfd { + presence "CLI submode compatibility."; + description + "Bidirectional Forwarding Detection (BFD)"; + container reverse-path { + presence "CLI submode compatibility."; + description + "Specify parameters about the reverse path back + to the head-end"; + leaf binding-label { + type uint32 { + range "16..1048575"; + } + description + "Binding label of a policy/tunnel from + destination to head-end"; + } + } + container bfd-logging { + presence "CLI submode compatibility."; + description + "Syslog configuration options"; + leaf session-state-change { + type empty; + description + "Emit syslog when the state of the session + changes"; + } + } + leaf enable { + type empty; + description + "Bidirectional Forwarding Detection (BFD)"; + } + leaf multiplier { + type uint32 { + range "1..10"; + } + description + "Number of missed BFD packets to declare session + down (default 3)"; + } + leaf minimum-interval { + type uint32 { + range "50..30000"; + } + units "millisecond"; + description + "Hello interval in milliseconds (default 150)"; + } + leaf disable { + type empty; + description + "Do not create BFD sessions"; + } + leaf invalidation-action { + type Xtc-bfd-invalidation-action; + description + "Action to be taken when BFD session is + invalidated"; + } + } + } + + grouping AUTHENTICATION-OPTION { + description + "Common node of pce-peer, pce-peer-v6"; + container authentication-option { + presence "Indicates a authentication-option node is configured."; + description + "Configure AO keychain based authentication"; + leaf keychain { + type string { + length "1..32"; + } + mandatory true; + description + "Name of the keychain"; + } + leaf include-tcp-options { + type boolean; + description + "Include other TCP options in the header"; + } + leaf accept-mismatch-connection { + type boolean; + description + "Deprecated"; + } + } + } + + grouping FORWARD-CLASS { + description + "Common node of auto-route, profile-auto-route"; + leaf forward-class { + type uint32 { + range "0..7"; + } + description + "Forward class associated with the policy"; + } + } + + grouping DISABLE { + description + "Common node of application, labeled-services"; + leaf disable { + type empty; + description + "Disable all steering services"; + } + } + + grouping XTC-AGENT-CFG-DISABLE { + description + "Common node of application, + labeled-servicesCommon node of application, + labeled-services"; + leaf disable { + type empty; + description + "Disable all steering services"; + } + } + + grouping MAXIMUM-SID-DEPTH { + description + "Common node of traffic-engineering, + on-demand-color"; + leaf maximum-sid-depth { + type uint32 { + range "1..255"; + } + description + "Maximum SID Depth Configuration"; + } + } + + grouping KEYCHAIN { + description + "Common node of pce-peer, pce-peer-v6"; + leaf keychain { + type string { + length "1..32"; + } + description + "PCC Peer Keychain"; + } + } + + augment "/a1:sr" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-segment-routing-ms-cfg'"; + container traffic-engineering { + presence "CLI submode compatibility."; + description + "Traffic Engineering configuration data"; + container out-of-resources { + description + "SR-TE out-of-resources handling configuration"; + leaf maximum-paths-batch { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Maximum total number of LSP path operations in + a single batch"; + } + leaf maximum-paths { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Maximum total number of LSP paths that can be + created"; + } + leaf maximum-ls-ps { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Number of LSPs (0 for no limit; default is 0)"; + } + } + container on-demand-colors { + description + "On-demand color configuration"; + list on-demand-color { + key "color"; + description + "On-demand color configuration"; + container on-demand-color-dyn-mpls { + presence "CLI submode compatibility."; + description + "Dynamic path properties. Applicable for + SR-MPLS and SRv6 policies"; + container on-demand-color-dyn-mpls-anycast { + presence "CLI submode compatibility."; + description + "Anycast Prefix SID Inclusion. Applicable for + SR-MPLS and SRv6 policies"; + } + container on-demand-color-dyn-mpls-metric { + presence "CLI submode compatibility."; + description + "Metric type. Applicable for SR-MPLS and SRv6 + policies"; + leaf metric-type { + type Xtc-metric; + description + "Metric Type"; + } + uses METRIC-MARGIN; + } + container on-demand-color-dyn-mpls-pce { + presence "CLI submode compatibility."; + description + "Use Path Computation Element. Applicable for + SR-MPLS and SRv6 policies"; + } + container disjoint-path { + presence "Indicates a disjoint-path node is configured."; + description + "Disjoint path"; + leaf group-id { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Group ID"; + } + leaf disjointness-type { + type Xtc-disjointness; + mandatory true; + description + "Disjointness Type"; + } + leaf sub-id { + type uint32 { + range "1..65535"; + } + description + "Sub ID"; + } + } + leaf on-demand-color-dyn-mpls-flex-algorithm { + type uint32 { + range "128..255"; + } + description + "OBSOLETE in IOS-XR 7.5.1. Please use + on-demand-colors on-demand-color constraint + segments sid-algorithm. Prefix-SID algorithm + . Applicable for SR-MPLS and SRv6 policies"; + } + uses AFFINITY-RULE-TABLE; + uses BOUNDS; + } + container constraint { + description + "Path computation and verification constraints"; + container segments { + description + "Path computation segment specific rules"; + leaf protection-type { + type Xtc-adj-sid-protection; + description + "Protection Type"; + } + leaf sid-algorithm { + type uint32 { + range "0..255"; + } + description + "'0' for regular SIDs, '1' for strict-spf + SIDs, '128' - '255' for flexible algorithm + SIDs"; + } + } + } + container steering { + presence "CLI submode compatibility."; + description + "Ondemand steering options"; + container labeled-services { + description + "Steering options for labeled services"; + leaf disable { + type empty; + description + "Disable all steering services"; + } + } + leaf invalidation-drop { + type empty; + description + "Enable path invalidation drop"; + } + } + leaf bandwidth { + type uint32 { + range "1..4294967295"; + } + description + "The value of the bandwidth reserved by this + policy in kbps"; + } + leaf color { + type uint32 { + range "1..4294967295"; + } + description + "Color"; + } + uses MAX-INSTALL-STANDBY-C-PATHS; + uses PERFORMANCE-MEASUREMENT; + uses PER-FLOW; + uses MAXIMUM-SID-DEPTH; + uses BFD; + uses PCE-GROUP; + uses SOURCE-ADDRESS; + uses EFFECTIVE-METRIC; + uses SRV6; + } + } + container effective-metric-global { + presence "CLI submode compatibility."; + description + "Effective metric configuration submode"; + container effective-metric-admin-distance { + presence "CLI submode compatibility."; + description + "Administrative distance advertised to other + protocols"; + container effective-metric-admin-distance-metric-types { + description + "Administrative distance advertised to other + protocols"; + list effective-metric-admin-distance-metric-type { + key "metric-type"; + description + "Administrative distance advertised for this + metric type"; + leaf metric-type { + type Effective-metric; + description + "MetricType"; + } + leaf admin-distance { + type uint32 { + range "1..255"; + } + mandatory true; + description + "AdminDistance"; + } + } + } + } + } + container steering { + presence "CLI submode compatibility."; + description + "Steering options"; + container applications { + description + "Application table that steering options need + to be applied"; + list application { + key "application"; + description + "Application that steering options need to be + applied"; + leaf application { + type Xtc-steering-application; + description + "Steering application"; + } + uses XTC-AGENT-CFG-DISABLE; + } + } + container labeled-services { + presence "CLI submode compatibility."; + description + "Steering options for labeled services"; + leaf disable-on-demand-policies { + type empty; + description + "Disable steering for labeled services for + on-demand policies"; + } + leaf disable-all-policies { + type empty; + description + "Disable steering for labeled services for all + policies"; + } + leaf disable-pcep-policies { + type empty; + description + "Disable steering for labeled services for PCE + initiated policies"; + } + leaf disable-local-policies { + type empty; + description + "Disable steering for labeled services for + local policies"; + } + leaf disable-bgp-sr-te-policies { + type empty; + description + "Disable steering for labeled services for + BGP-SRTE policies"; + } + uses XTC-AGENT-CFG-DISABLE; + } + } + container segment-lists { + presence "CLI submode compatibility."; + description + "Segment-lists configuration"; + container explicit-segments { + description + "Segment-lists configuration"; + list explicit-segment { + key "path-name"; + description + "Segment-list configuration"; + container segment-list-srv6 { + presence "CLI submode compatibility."; + description + "Segment-list SRv6 configuration"; + container srv6-segments { + description + "Segments/hops configuration for given + Segment-list"; + list srv6-segment { + key "index"; + description + "SRv6 segment configuration for the given + index"; + leaf index { + type uint32 { + range "1..65535"; + } + description + "Segment index"; + } + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 Address"; + } + leaf hop-type { + type Xtcsrv6-hop; + description + "SRv6 hop type"; + } + } + } + leaf segment-list-srv6-topology-check { + type empty; + description + "Enable Topology check for the given SRv6 + segment-list"; + } + } + leaf path-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Segment-list name"; + } + } + } + container segment-lists-srv6 { + presence "CLI submode compatibility."; + description + "Segment-lists configuration"; + leaf segment-lists-srv6-topology-check { + type empty; + description + "Enable topology check for all SRv6 + segment-lists"; + } + leaf segment-lists-srv6-format-type { + type Xtcsrv6sid-format; + description + "Segment-lists configuration"; + } + } + } + container segments { + description + "Segment-lists configuration"; + list segment { + key "path-name"; + description + "Segment-list configuration"; + container segments { + description + "Segments/hops configuration for given + Segment-list"; + list segment { + key "segment-index"; + description + "Configure Segment/hop at the index"; + leaf segment-index { + type uint32 { + range "1..65535"; + } + description + "Segment index"; + } + leaf segment-type { + type Xtc-segment; + description + "Segment/hop type"; + } + leaf address { + when "../segment-type = 'ipv4-address' or ../segment-type = 'ipv4-adjacency-address'" { + description + "../SegmentType = IPv4Address or . + ./SegmentType = IPv4AdjacencyAddress"; + } + type inet:ipv4-address-no-zone; + description + "IPv4 Address"; + } + leaf mpls-label { + when "../segment-type = 'mpls-label'" { + description + "../SegmentType = MPLSLabel"; + } + type uint32 { + range "0..1048575"; + } + description + "MPLS Label"; + } + leaf adjacency-address { + type inet:ipv4-address-no-zone; + description + "IPv4 Adjacency Address"; + } + leaf address-type { + when "../segment-type = 'ipv4-adjacency-address'" { + description + "../SegmentType = IPv4AdjacencyAddress"; + } + type uint32 { + range "0..32"; + } + description + "IP address types"; + } + leaf interface-identifier { + type uint32 { + range "1..65535"; + } + description + "Interface Identifier"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "Prefix Length"; + } + leaf validate-flag { + type uint32 { + range "0..1"; + } + description + "Validate No Validate"; + } + } + } + leaf path-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Segment-list name"; + } + } + } + container logging { + description + "Logging configuration"; + leaf pcep-peer-status { + type empty; + description + "Enable logging for pcep peer status"; + } + leaf policy-status { + type empty; + description + "Enable logging for policy status"; + } + } + container cspf-global { + description + "CSPF configuration"; + leaf cspf-cache-size { + type uint32 { + range "100..100000"; + } + description + "Configure maximum size of the CSPF cache size + in MiB"; + } + } + container timers { + description + "SR-TE timers configuration"; + leaf candidate-path-cleanup-delay { + type uint32 { + range "0..86400"; + } + default "120"; + description + "Delay before cleaning up candidate paths"; + } + leaf initial-verify-restart { + type uint32 { + range "10..10000"; + } + default "40"; + description + "Timer to wait for topology convergence after + topology starts populating for restart case"; + } + leaf initial-verify-switchover { + type uint32 { + range "10..10000"; + } + default "60"; + description + "Timer to wait for topology convergence after + topology starts populating for switchover case"; + } + leaf initial-verify-startup { + type uint32 { + range "10..10000"; + } + default "120"; + description + "Timer to wait for topology convergence after + topology starts populating for startup case"; + } + leaf delete-delay { + type uint32 { + range "0..3600"; + } + default "0"; + description + "Delete delay value in seconds"; + } + leaf cleanup-delay { + type uint32 { + range "0..300"; + } + default "10"; + description + "Delay before cleaning up previous path"; + } + leaf install-delay { + type uint32 { + range "0..300"; + } + default "10"; + description + "Delay before switching to a reoptimized path"; + } + leaf periodic-reoptimization { + type uint32 { + range "0..86400"; + } + default "600"; + description + "How often to perform periodic reoptimization + of policies"; + } + } + container bfd-global { + presence "CLI submode compatibility."; + description + "Bidirectional Forwarding Detection (BFD)"; + container bfd-timers { + presence "CLI submode compatibility."; + description + "BFD timers configuration"; + leaf bringup-timer { + type uint32 { + range "10..3600"; + } + description + "How long to wait for new BFD session to come + up"; + } + } + } + container binding-sid-rules { + description + "Binding sid rules"; + container explicit { + presence "Indicates a explicit node is configured."; + description + "Binding sid explicit options"; + leaf rule { + type Xtc-binding-sidexplicit-rule; + mandatory true; + description + "Binding sid explicit rule"; + } + } + container dynamic-binding-sid-rules { + presence "Indicates a dynamic-binding-sid-rules node is configured."; + description + "Dynamic binding SID options. Applicable for + SR-MPLS and SRv6 policies"; + leaf dynamic-binding-sid-rule { + type Xtc-binding-sid-dynamic-rule; + mandatory true; + description + "Binding SID dynamic rule. Applicable for + SR-MPLS and SRv6 policies"; + } + } + } + container policies { + description + "Policy configuration"; + list policy { + key "policy-name"; + description + "Policy configuration"; + container binding-sid { + description + "Binding Segment ID"; + leaf binding-sid-type { + type Xtc-binding-sid; + description + "Binding SID type"; + } + leaf mpls-label { + when "../binding-sid-type = 'mpls-label-specified'" { + description + "../BindingSIDType = MPLSLabelSpecified"; + } + type uint32 { + range "16..1048575"; + } + description + "MPLS Label"; + } + } + container steering { + description + "Policy steering options"; + container labeled-services { + description + "Steering options for labeled services"; + uses DISABLE; + } + container applications { + description + "Application table that steering options need + to be applied"; + list application { + key "application"; + description + "Application that steering options need to + be applied"; + container prefix-path-label { + description + "Prefix path label options"; + leaf ignore { + type empty; + description + "Ignore all steering services"; + } + } + leaf application { + type Xtc-agent-policy-steering-application; + description + "Steering application"; + } + uses DISABLE; + } + } + leaf invalidation-drop { + type empty; + description + "Enable path invalidation drop"; + } + } + container policy-color-endpoint { + presence "Indicates a policy-color-endpoint node is configured."; + description + "Color and endpoint of a policyColor, + EndPointType, Endpoint"; + leaf color { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Color"; + } + leaf end-point-type { + type Xtc-end-point; + mandatory true; + description + "End point type"; + } + leaf end-point-address { + type inet:ip-address-no-zone; + mandatory true; + description + "End point address"; + } + } + container protection { + presence "CLI submode compatibility."; + description + "Candidate path protection"; + } + container auto-route { + presence "CLI submode compatibility."; + description + "Autoroute configuration"; + container auto-route-metric { + description + "Autoroute metric"; + leaf autoroute-metric-type { + type Xtc-auto-route-metric; + description + "Metric type"; + } + leaf metric-relative-value { + type int32 { + range "-10..10"; + } + description + "Autoroute relative metric"; + } + leaf metric-constant-value { + type uint32 { + range "1..2147483647"; + } + description + "Autoroute constant metric"; + } + } + container include-prefixes { + description + "Autoroute include prefix table configuration"; + list include-prefix { + must "af-type-all or af-type-ipv4-or-af-type-ipv6" { + description + "AF_TYPE_ALL or + AF_TYPE_IPV4-or-AF_TYPE_IPV6 must be + present."; + } + key "af-type"; + description + "Autoroute IP prefix to include (limited to + IPv4 prefixes)"; + container af-type-all { + when "../af-type = 'af-type-all'" { + description + "../AFType = AF_TYPE_ALL"; + } + presence "Indicates that this node is configured."; + description + "af type all"; + } + leaf af-type { + type Xtc-address-family; + description + "Address family type"; + } + list af-type-ipv4-or-af-type-ipv6 { + when "../af-type = 'af-type-ipv4' or ../af-type = 'af-type-ipv6'" { + description + "../AFType = AF_TYPE_IPV4 or ../AFType = + AF_TYPE_IPV6"; + } + key "prefix-address prefix-length"; + description + "af type ipv4 or af type ipv6"; + leaf prefix-address { + type inet:ip-address-no-zone; + description + "Autoroute prefix IP address"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "Autoroute IP prefix length"; + } + } + } + } + leaf include-ipv6-all { + type empty; + description + "Include all eligible IPv6 prefixes"; + } + leaf force-sr-include { + type empty; + description + "Force policy to carry SR MPLS traffic as + well"; + } + uses FORWARD-CLASS; + } + container candidate-paths { + presence "CLI submode compatibility."; + description + "Policy candidate-paths configuration"; + container preferences { + description + "Policy path-option preference table"; + list preference { + key "path-index"; + description + "Policy path-option preference entry"; + container lock { + presence "CLI submode compatibility."; + description + "Candidate path protection lock"; + leaf duration { + type uint32 { + range "0..3000"; + } + description + "Keep protect cpath locked as active lsp + after higher preference cpath lsp is made + standby"; + } + } + container constraints { + description + "SR path computation and verification + constraints"; + container disjoint-path { + presence "Indicates a disjoint-path node is configured."; + description + "Disjoint path"; + leaf group-id { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Group ID"; + } + leaf disjointness-type { + type Xtc-disjointness; + mandatory true; + description + "Disjointness Type"; + } + leaf sub-id { + type uint32 { + range "1..65535"; + } + description + "Sub ID"; + } + } + container segment-rules { + description + "SR path computation segment specific + rules"; + leaf protection-type { + type Xtc-adj-sid-protection; + description + "Protection Type"; + } + leaf sid-algorithm { + type uint32 { + range "0..255"; + } + description + "'0' for regular SIDs, '1' for strict-spf + SIDs, '128' - '255' for flexible + algorithm SIDs"; + } + leaf adjacency-sid-only { + type empty; + description + "Use only adjacency segment IDs"; + } + } + uses AFFINITY-RULE-TABLE; + uses BOUNDS; + } + container bidirectional { + description + "SR path computation and verification + bidirectional options"; + leaf association-id { + type uint32 { + range "1..65534"; + } + description + "16-bit Association ID"; + } + leaf corouted { + type empty; + description + "True only"; + } + } + container path-infos { + description + "Policy path-option preference + configuration"; + list path-info { + key "type hop-type segment-list-name"; + description + "Policy configuration"; + container disable-auto-reroute { + presence "CLI submode compatibility."; + description + "Disable dynamic reroute configuration"; + } + container metric { + presence "CLI submode compatibility."; + description + "Metric configuration, valid only for + dynamic path-options"; + leaf sid-limit { + type uint32 { + range "1..255"; + } + description + "Maximum number of SIDs"; + } + leaf metric-type { + type Xtc-metric; + description + "Metric type"; + } + uses METRIC-MARGIN; + } + container anycast { + presence "CLI submode compatibility."; + description + "Anycast Prefix SID Inclusion"; + } + container pcep { + presence "CLI submode compatibility."; + description + "Path Computation Element Protocol"; + } + leaf reverse-path-segment-list-name { + type string { + length "1..128"; + } + description + "Reverse Path Segment-list name"; + } + leaf weight { + type uint32 { + range "1..4294967295"; + } + description + "Path-option weight"; + } + leaf type { + type Xtc-path; + description + "Path-option type"; + } + leaf hop-type { + type Xtc-path-hop; + description + "Type of dynamic path to be computed"; + } + leaf segment-list-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Segment-list name"; + } + } + } + container backup-ineligible { + presence "CLI submode compatibility."; + description + "Candidate path is backup ineligible"; + } + leaf path-index { + type uint32 { + range "1..65535"; + } + description + "Path-option preference"; + } + uses PER-FLOW; + uses PCE-GROUP; + uses EFFECTIVE-METRIC; + } + } + } + leaf ipv6-disable { + type empty; + description + "IPv6 disable"; + } + leaf shutdown { + type empty; + description + "Administratively shutdown policy"; + } + leaf bandwidth { + type uint32 { + range "1..4294967295"; + } + description + "The value of the bandwidth reserved by this + policy in kbps"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..59"; + } + description + "Policy name"; + } + uses MAX-INSTALL-STANDBY-C-PATHS; + uses PERFORMANCE-MEASUREMENT; + uses BFD; + uses PCE-GROUP; + uses SOURCE-ADDRESS; + uses EFFECTIVE-METRIC; + uses SRV6; + } + } + container srte-interfaces { + description + "SR-TE interfaces"; + list srte-interface { + key "srte-interface-name"; + description + "SR-TE interface"; + container interface-affinities { + description + "Set user defined interface attribute flags"; + list interface-affinity { + key "affinity-name"; + description + "Set user defined interface attribute flags"; + leaf affinity-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Interface affinity names"; + } + } + } + leaf interface-metric { + type uint32 { + range "0..2147483647"; + } + description + "Interface TE metric configuration"; + } + leaf srte-interface-name { + type xr:Interface-name; + description + "SR-TE Interface name"; + } + } + } + container pcc { + presence "CLI submode compatibility."; + description + "Path Computation Client"; + container pce-peers { + description + "PCE peer configuration"; + list pce-peer { + key "pce-address"; + description + "PCE peer"; + leaf pce-address { + type inet:ip-address-no-zone; + description + "Remote PCE address"; + } + uses PASSWORD; + uses KEYCHAIN; + uses XTC-AGENT-CFG-PCE-GROUP; + uses AUTHENTICATION-OPTION; + uses PRECEDENCE; + } + } + container pce-peer-v6s { + description + "PCE peer configuration for IPv6"; + list pce-peer-v6 { + key "pce-address"; + description + "PCE peer"; + leaf pce-address { + type inet:ip-address-no-zone; + description + "Remote PCE address"; + } + uses PASSWORD; + uses KEYCHAIN; + uses XTC-AGENT-CFG-PCE-GROUP; + uses AUTHENTICATION-OPTION; + uses PRECEDENCE; + } + } + container profiles { + description + "Path profiles configuration"; + list profile { + key "profile-id"; + description + "Path profile configuration"; + container steering { + presence "CLI submode compatibility."; + description + "Steering options"; + leaf invalidation-drop { + type empty; + description + "Enable path invalidation drop"; + } + } + container profile-auto-route { + description + "Autoroute configuration"; + container auto-route-metric { + description + "Autoroute metric"; + leaf autoroute-metric-type { + type Xtc-auto-route-metric; + description + "Metric type"; + } + leaf metric-relative-value { + type int32 { + range "-10..10"; + } + description + "Autoroute relative metric"; + } + leaf metric-constant-value { + type uint32 { + range "1..2147483647"; + } + description + "Autoroute constant metric"; + } + } + leaf include-all { + type empty; + description + "Include all IPv4 prefixes to autoroute"; + } + leaf include-ipv6-all { + type empty; + description + "Include all eligible IPv6 prefixes"; + } + leaf force-sr-include { + type empty; + description + "Force SR traffic over autoroute policy"; + } + uses FORWARD-CLASS; + } + leaf profile-id { + type uint32 { + range "1..65534"; + } + description + "Profile unique identifier"; + } + } + } + leaf dead-timer-interval { + type uint32 { + range "1..255"; + } + description + "Amount of time after which the peer can + declare this session down, if no PCEP message + has been received"; + } + leaf pcc-centric { + type empty; + description + "Enable PCC centric model, where PCC only + allows the lowest precedence PCE to initiate + policies. THIS COMMAND IS DEPRECATED"; + } + leaf report-all { + type empty; + description + "Report all local SR policies to connected PCEP + peers"; + } + leaf keepalive-timer-interval { + type uint32 { + range "0..255"; + } + description + "Maximum time between two consecutive PCEP + messages sent by this node"; + } + leaf initiated-state-interval { + type uint32 { + range "0..86400"; + } + description + "Amount of time that PCE initiated policy can + exist as an orphan before it is cleaned up"; + } + leaf ipv6-source-address { + type inet:ipv6-address-no-zone; + description + "Local source IP address to use on PCEP + sessions"; + } + leaf report-circuit-style { + type empty; + description + "Report all CPath Protected SR policies to + connected PCEP peers"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Local source IP address to use on PCEP + sessions"; + } + leaf srpag { + type empty; + description + "DEPRECATED: Enable signaling using SR Policy + Association Group"; + } + leaf initiated-orphan-interval { + type uint32 { + range "0..180"; + } + description + "Amount of time that PCE initiated policy + remains delegated to a peer that has gone down"; + } + leaf delegation-timeout { + type uint32 { + range "0..1576800000"; + } + description + "Maximum time delegated SR-TE policies can + remain up without an active connection to a + PCE"; + } + } + container trace-counts { + description + "Configure SR-TE trace options"; + list trace-count { + key "buffer-name"; + description + "Trace count for provided buffer"; + leaf buffer-name { + type xr:Cisco-ios-xr-string { + length "1..15"; + } + description + "Buffer name"; + } + leaf trace-count { + type uint32 { + range "0..1000000"; + } + mandatory true; + description + "Trace count"; + } + } + } + container path { + description + "Path configuration"; + container disable-algorithm-check { + description + "Path algorithm check configuration"; + container strict-spf { + description + "Disable SID algorithm check for Strict SPF"; + container areas { + description + "List of disabled areas"; + list area { + key "area-id protocol"; + description + "IGP area"; + leaf area-id { + type uint32; + description + "Area identifier"; + } + leaf protocol { + type Xtc-path-algo-check-igp-protocol; + description + "IGP protocol"; + } + } + } + leaf all { + type empty; + description + "Disable check for all IGP areas"; + } + } + } + } + container affinity-maps { + description + "Affinity-map configuration"; + list affinity-map { + key "affinity-name"; + description + "Affinity-map entry"; + leaf affinity-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Affinity-map bit-position"; + } + leaf bit-position { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Affinity-map bit-position"; + } + } + } + container candidate-path-types { + presence "CLI submode compatibility."; + description + "Configurations for candidate paths."; + list candidate-path-type { + must "candidate-path-type-all-or-candidate-path-type-local-or-candidate-path-type-bgp-odn-or-candidate-path-type-bgp-srte-or-candidate-path-type-pcep" { + description + "CANDIDATE_PATH_TYPE_ALL-or-CANDIDATE_PATH_TYPE_LOCAL-or-CANDIDATE_PATH_TYPE_BGP_ODN-or-CANDIDATE_PATH_TYPE_BGP_SRTE-or-CANDIDATE_PATH_TYPE_PCEP must be present."; + } + key "candidate-path-type"; + description + "Configurations for candidate paths of specific + type."; + container candidate-path-type-all-or-candidate-path-type-local-or-candidate-path-type-bgp-odn-or-candidate-path-type-bgp-srte-or-candidate-path-type-pcep { + when "../candidate-path-type = 'candidate-path-type-all' or ../candidate-path-type = 'candidate-path-type-local' or ../candidate-path-type = 'candidate-path-type-bgp-odn' or ../candidate-path-type = 'candidate-path-type-bgp-srte' or ../candidate-path-type = 'candidate-path-type-pcep'" { + description + "../CandidatePathType = + CANDIDATE_PATH_TYPE_ALL or . + ./CandidatePathType = + CANDIDATE_PATH_TYPE_LOCAL or . + ./CandidatePathType = + CANDIDATE_PATH_TYPE_BGP_ODN or . + ./CandidatePathType = + CANDIDATE_PATH_TYPE_BGP_SRTE or . + ./CandidatePathType = + CANDIDATE_PATH_TYPE_PCEP"; + } + presence "Indicates that this node is configured."; + description + "candidate path type all or candidate path + type local or candidate path type bgp odn or + candidate path type bgp srte or candidate + path type pcep"; + leaf enable { + type empty; + description + "True only"; + } + uses SOURCE-ADDRESS; + } + leaf candidate-path-type { + type Xtc-cpath; + description + "Candidate-path type"; + } + } + } + leaf te-latency { + type empty; + description + "Use TE-latency algorithm"; + } + leaf global-policy-max-install-standby-c-paths { + type uint32 { + range "1..3"; + } + description + "Allow additional candidate paths to warm up non + forwarding LSPs"; + } + leaf kshortest-paths { + type uint32 { + range "1..200"; + } + description + "Maximum number of attempted paths for + cumulative bounds (default 100)"; + } + leaf separate-next-hop { + type empty; + description + "Use Next Hop Separation in Forwarding"; + } + leaf enable { + type empty; + description + "True only"; + } + uses MAXIMUM-SID-DEPTH; + uses SRV6; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub1.yang new file mode 100644 index 000000000..b70518829 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub1.yang @@ -0,0 +1,4362 @@ +submodule Cisco-IOS-XR-infra-xtc-agent-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-xtc-agent-oper { + prefix Cisco-IOS-XR-infra-xtc-agent-oper; + } + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-xtc-agent-oper-sub2 { + revision-date 2023-01-24; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-xtc-agent package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-24 { + description + "Added fields for Flex-algo ASLA attributes on IPv4 and IPv6 links + 2022-10-26 + Dynamic CS Persistent PM and LSP, added fields for CP,LSP state and new SM transitions. + 2022-06-15 + Removed obsolete srv6-prefix container. + 2022-06-08 + Dynamic CS, added summary fields for standby CP and LSP + 2022-06-03 + Removed prefix-metric entry from the topology node. + 2022-05-17 + Renamed srv6usid to srv6-sid since all SRv6 SIDs are not micro SIDs + 2022-05-12 + Added checkpoint id in policy lsp segment list bag. + 2022-03-03 + Added is-srv6-local and is-srv6-remote in peer container. + 2022-03-03 + Added SID length and SID format for explicit path policy. + 2022-01-17 + Change the type of extended-value leaf from leaf-list to list. + 2021-11-21 + Added prefix-metric entry in the topology node. + 2021-11-09 + Added unreliable flag and update drop count in topology summary bag. + 2021-10-21 + Adding algorithm and computation time to path query results + 2021-09-27 + Added leaf max-install-standby-cpaths under grouping XTC-POLICY-BAG. Added leaf max-install-standby-cpaths under grouping XTC-GLOBAL-INFO-BAG. + 2021-08-31 + Added leaf segment-algorithm-set under grouping XTC-SEGMENTS-BAG. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "5.0.0"; + } + revision 2021-07-27 { + description + "Added invalid reason leaf under segment-list container + 2021-06-14 + Added SL First Label and Start Index field in LSP SL MOI bag. Added NH Seperation enabled field in Global info bag. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "4.1.0"; + } + revision 2021-05-21 { + description + "Added path invalidation drop flag in policy bag. + 2021-04-22 + Added TE metric field for Flex-algo ASLA. + 2021-02-18 + Remove deprecated performance-measurement oper bag and renamed pm config field name in xtc_pm_lsp_info. Added performance-measurement config data bag in lsp bag. + 2021-02-08 + Added performance-measurement config data bag in lsp bag. + 2020-12-13 + Added performance-measurement liveness-detection oper schema. + 2020-10-27 + Added A flag set field in show command to support A flag sent from PM side + 2020-09-16 + Adding operational nodes for new features path invalidation drop protected and unprotected path + 2020-09-04 + Modified the Extended-Affinities and ASLA-Extended-Affinities to be list instead of a leaf-list + 2020-05-12 + Add SRv6TE policy operational data + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-01-16 { + description + "Removed event buffer from SR-TE policy model. Implement new statistic info for policy performance-measurement session. Added support for per-flow policy output. Added additional filter for policy type i.e. per-flow and per-destination."; + semver:module-version "3.0.0"; + } + revision 2019-09-09 { + description + "PCE/SRTE topology should display P-flag set for OSPF prefix-SID with explicit-null"; + semver:module-version "2.0.0"; + } + revision 2019-05-01 { + description + "Added operational models for interface database."; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Hierarchical changes to policy forwarding model to organize the paths under the proper segment lists and LSPs."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-11-28 { + description + "Various modifications to policy-related models for better compatibility with the IETF policy draft."; + } + revision 2017-09-11 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cmn-ha-case { + type enumeration { + enum "ha-case-migration" { + description + "HA Case Migration"; + } + enum "ha-case-restart" { + description + "HA Case Restart"; + } + enum "ha-case-switchover" { + description + "HA Case Switchover"; + } + enum "ha-case-startup" { + description + "HA Case Startup"; + } + enum "ha-case-invalid" { + description + "HA Case Invalid"; + } + } + description + "Various HA cases"; + } + + typedef Xtc-sid1 { + type enumeration { + enum "sr-protected-adj-sid" { + value 1; + description + "Protected Adjacency SID"; + } + enum "sr-unprotected-adj-sid" { + value 2; + description + "Unprotected Adjacency SID"; + } + enum "sr-bgp-egress-peer-engineering-sid" { + value 3; + description + "BGP egress peer engineering SID"; + } + enum "sr-reqular-prefix-sid" { + value 4; + description + "Regular prefix SID"; + } + enum "sr-strict-prefix-sid" { + value 5; + description + "Strict prefix SID"; + } + enum "sr-flex-algo-prefix-sid" { + value 6; + description + "Flex-algo prefix SID"; + } + } + description + "XTC SID Types"; + } + + typedef Xtc-igp-info-id { + type enumeration { + enum "isis" { + value 1; + description + "ISIS"; + } + enum "ospf" { + value 2; + description + "OSPF"; + } + enum "bgp" { + value 3; + description + "BGP"; + } + } + description + "IGP IDs"; + } + + typedef Xtc-regist-entry { + type enumeration { + enum "color" { + value 0; + description + "Color"; + } + enum "color-endpoint" { + value 1; + description + "Color Endpoint"; + } + enum "policy-name" { + value 2; + description + "PolicyName"; + } + } + description + "Xtc regist entry"; + } + + typedef Xtc-disjointness { + type enumeration { + enum "no-disjointness" { + description + "No Disjointness"; + } + enum "link-disjointness" { + description + "Link disjointness"; + } + enum "node-disjointness" { + description + "Node disjointness"; + } + enum "srlg-disjointness" { + description + "SRLG disjointness"; + } + enum "srlg-node-disjointness" { + description + "SRLG-Node disjointness"; + } + } + description + "XTC policy path type"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Xtc-treesid-role { + type enumeration { + enum "none" { + description + "No role"; + } + enum "ingress" { + description + "Ingress"; + } + enum "transit" { + description + "Transit"; + } + enum "egress" { + description + "Egress"; + } + enum "bud-node" { + description + "BudNode"; + } + } + description + "XTC TreeSID role"; + } + + typedef Xtc-policy-lsp-protection-role { + type enumeration { + enum "none" { + description + "No protection role"; + } + enum "active" { + description + "Active LSP role"; + } + enum "standby" { + description + "Standby LSP role"; + } + enum "reopt" { + description + "Reopt LSP role"; + } + } + description + "XTC Policy LSP Role Type"; + } + + typedef Xtc-pfp-state { + type enumeration { + enum "initialized" { + value 0; + description + "Initialized"; + } + enum "bsid-rewrite-pending" { + value 1; + description + "Waiting for BSID rewrite result"; + } + enum "up" { + value 2; + description + "Up"; + } + enum "bsid-reoptimizing" { + value 3; + description + "Waiting for reoptimized BSID rewrite result"; + } + } + description + "XTC Per-flow Policy FSM states"; + } + + typedef Xtc-pm-live-session-state { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "down" { + description + "Down"; + } + enum "up" { + description + "Up"; + } + } + description + "Xtc pm live session state"; + } + + typedef Xtc-bfd-session-state { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "down" { + description + "Down"; + } + enum "up" { + description + "Up"; + } + } + description + "Xtc bfd session state"; + } + + typedef Xtc-policy-lsp-sm-state { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "initialized" { + description + "Initialized"; + } + enum "deleted" { + description + "Deleted"; + } + enum "programmed" { + description + "Programmed; all forwarding rewrites created"; + } + enum "egress-paths-pending" { + description + "Waiting for egress paths"; + } + enum "out-of-resources-pending" { + description + "Waiting for resources to become available"; + } + enum "label-allocation-pending" { + description + "Waiting for label allocation result"; + } + enum "label-allocation-cleanup-pending" { + description + "Waiting for label free result"; + } + enum "label-rewrite-pending" { + description + "Waiting for label rewrite create result"; + } + enum "label-rewrite-cleanup-pending" { + description + "Waiting for label rewrite delete result"; + } + enum "bsid-allocation-pending" { + description + "Waiting for BSID label allocation result"; + } + enum "bsid-allocation-cleanup-pending" { + description + "Waiting for BSID label free result"; + } + enum "bsid-rewrite-pending" { + description + "Waiting for BSID rewrite create result"; + } + enum "bsid-rewrite-cleanup-pending" { + description + "Waiting for BSID rewrite delete result"; + } + enum "tunnel-rewrite-pending" { + description + "Waiting for tunnel rewrite create result"; + } + enum "tunnel-rewrite-cleanup-pending" { + description + "Waiting for tunnel rewrite delete result"; + } + enum "install-timer-pending" { + description + "Waiting for install timer to expire"; + } + enum "cleanup-timer-pending" { + description + "Waiting for cleanup timer to expire"; + } + enum "bfd-session-pending" { + description + "Waiting for BFD session to come up"; + } + enum "pm-liveness-session-pending" { + description + "Waiting for PM liveness session to come up"; + } + enum "invalidated-traffic-dropped" { + description + "Path invalidated, policy remains up but traffic + dropped"; + } + enum "backup-rewrite-pending" { + description + "Backup LSP local label rewrite is pending"; + } + enum "backup-rewrite-cleanup-pending" { + description + "Backup LSP local label rewrite cleanup is + pending"; + } + enum "standby-programmed" { + description + "Standby LSP in programmed state"; + } + enum "wait-to-restore-pending" { + description + "Waiting for wait-to-restore time to expire"; + } + } + description + "XTC policy LSP FSM states"; + } + + typedef Xtc-policy-cpath-protection-state { + type enumeration { + enum "none" { + description + "No candidate path protection state"; + } + enum "active" { + description + "Active candidate path protection state"; + } + enum "standby" { + description + "Standby candidate path protection state"; + } + enum "performance-measurement-down" { + description + "Performance Measurement down candidate path + protection state"; + } + } + description + "XTC Policy Candidate Path Protection State Type"; + } + + typedef Xtc-policy-cpath-protection-role { + type enumeration { + enum "none" { + description + "No protection role"; + } + enum "working" { + description + "Working candidate path role"; + } + enum "protect" { + description + "Protect candidate path role"; + } + enum "restore" { + description + "Restore candidate path role"; + } + } + description + "XTC Policy Candidate Path Role Type"; + } + + typedef Xtc-pm-live-invalidation-action { + type enumeration { + enum "none" { + description + "None"; + } + enum "down" { + description + "Down"; + } + } + description + "Xtc pm live invalidation action"; + } + + typedef Xtc-bfd-invalidation-action { + type enumeration { + enum "none" { + description + "None"; + } + enum "down" { + description + "Down"; + } + } + description + "Xtc bfd invalidation action"; + } + + typedef Xtc-path-protection { + type enumeration { + enum "protected-preferred" { + value 0; + description + "Protected Preferred"; + } + enum "unprotected-only" { + value 1; + description + "Unprotected Only"; + } + enum "protected-only" { + value 2; + description + "Protected Only"; + } + enum "unprotected-preferred" { + value 3; + description + "Unprotected Preferred"; + } + } + description + "XTC path protection type"; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Xtc-sr-sid { + type enumeration { + enum "ipv4-node-sid" { + description + "IPv4 Node SID"; + } + enum "ipv4-adjacency-sid" { + description + "IPv4 Adjacency SID"; + } + enum "ipv4-unnumbered-adjacency-sid" { + description + "IPv4 Unnumbered Adjacency SID"; + } + enum "ipv6-node-sid" { + description + "IPv6 Node SID"; + } + enum "ipv6-adjacency-sid" { + description + "IPv6 Adjacency SID"; + } + enum "srv6-sid" { + description + "SRv6 SID"; + } + enum "ipv6-link-local-adjacency-sid" { + description + "IPv6 Link Local Adjacency SID"; + } + enum "unknown-sid" { + description + "Unknown SID"; + } + enum "unknown-srv6-sid" { + description + "Unknown SRv6 SID"; + } + } + description + "XTC SR SID type"; + } + + typedef Xtc-policy-path { + type enumeration { + enum "explicit" { + description + "Explicit path"; + } + enum "dynamic" { + description + "Dynamic path"; + } + enum "dynamic-pce" { + description + "Dynamic PCE-based path"; + } + } + description + "XTC policy path type"; + } + + typedef Xtc-policy-cpath-proto-origin { + type enumeration { + enum "unknown" { + value 0; + description + "unknown"; + } + enum "xtc" { + value 5; + description + "xtc"; + } + enum "pcep" { + value 10; + description + "pcep"; + } + enum "bgp" { + value 20; + description + "bgp"; + } + enum "configuration" { + value 30; + description + "configuration"; + } + } + description + "Policy candidate path protocol origin"; + } + + typedef Cmn-metric { + type enumeration { + enum "metric-type-none" { + value 0; + description + "Metric Type None"; + } + enum "metric-type-igp" { + value 1; + description + "Metric Type IGP"; + } + enum "metric-type-te" { + value 2; + description + "Metric Type TE"; + } + enum "metric-type-hop-count" { + value 3; + description + "Metric Type hop count"; + } + enum "metric-type-msd" { + value 11; + description + "Metric Type MSD"; + } + enum "metric-type-latency" { + value 12; + description + "Metric Type latency"; + } + } + description + "PCE Metric Type"; + } + + typedef Xtc-af-id { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Xtc af id"; + } + + grouping XTC-INTERFACE-SUMMARY-BAG { + description + "XTC interface summary information"; + leaf interface-count { + type uint32; + description + "Number of interfaces"; + } + leaf interface-operational-up-count { + type uint32; + description + "Number of interfaces that are operationally up"; + } + leaf interface-operational-down-count { + type uint32; + description + "Number of interfaces that are operationally down"; + } + } + + grouping XTC-PFX-ENTRY { + description + "XTC prefix etnry"; + container ip-address { + description + "Prefix IP address"; + uses XTC-IP-ADDR-TYPE; + } + } + + grouping XTC-PFX-BAG { + description + "XTC Prefix Information"; + container node-protocol-identifier { + description + "Node protocol identifier"; + uses XTC-NODE-PID-BAG; + } + leaf node-identifier-xr { + type uint32; + description + "Node identifier"; + } + list address { + description + "Prefix address"; + uses XTC-PFX-ENTRY; + } + } + + grouping XTC-TOPO-READY-BAG { + description + "XTC Topology Readiness Information"; + container timer { + description + "Topology readiness timer"; + uses CMN-TIMER-INFO; + } + leaf ready { + type boolean; + description + "Topology readiness"; + } + leaf ha-case { + type Cmn-ha-case; + description + "Last HA case"; + } + leaf timer-value { + type uint32; + description + "Topology ready timer value selected at start"; + } + leaf pcep-allowed { + type boolean; + description + "Whether PCEP is allowed"; + } + } + + grouping XTC-TOPO-SUMMARY-BAG { + description + "XTC Topology Node Summary Information"; + container topology-ready-summary { + description + "Topology ready summary"; + uses XTC-TOPO-READY-BAG; + } + leaf nodes { + type uint32; + description + "Number of nodes"; + } + leaf prefixes { + type uint32; + description + "Number of prefixes"; + } + leaf prefix-sids { + type uint32; + description + "Number of prefix SIDs"; + } + leaf links { + type uint32; + description + "Number of links"; + } + leaf adjacency-sids { + type uint32; + description + "Number of adjacency SIDs"; + } + leaf topology-unreliable { + type boolean; + description + "True if topology is unreliable"; + } + leaf update-dropped { + type uint32; + description + "Number of total update dropped"; + } + } + + grouping XTC-IPV6-LINK-BAG { + description + "XTC IPv6 Link Information"; + container local-igp-information { + description + "Local node IGP information"; + uses XTC-IGP-INFO-BAG; + } + container remote-node-protocol-identifier { + description + "Remote node protocol identifier"; + uses XTC-NODE-PID-BAG; + } + leaf local-ipv6-address { + type inet:ipv6-address; + description + "Local IPv6 address"; + } + leaf remote-ipv6-address { + type inet:ipv6-address; + description + "Remote IPv6 address"; + } + leaf igp-metric { + type uint32; + description + "IGP Metric"; + } + leaf te-metric { + type uint32; + description + "TE Metric"; + } + leaf maximum-link-bandwidth { + type uint64; + description + "Max link bandwidth"; + } + leaf max-reservable-bandwidth { + type uint64; + description + "Max Reservable bandwidth"; + } + leaf flex-algo-te-metric { + type uint32; + description + "Flex-algo specific TE metric value"; + } + leaf flex-algo-asla-minimum-latency { + type uint32; + description + "Flex-algo specific Minimum latency"; + } + list adjacency-sid { + description + "Adjacency SIDs"; + uses XTC-SID-BAG; + } + list flex-algo-asla-administrative-group { + description + "Flex-algo specific Link Extended admin-groups"; + leaf entry { + type uint32; + description + "Flex-algo specific Link Extended admin-groups"; + } + } + } + + grouping XTC-LINK-PM-METRICS { + description + "Link performance metric information"; + leaf unidirectional-minimum-delay-microseconds { + type uint32; + units "microsecond"; + description + "Min delay in microseconds"; + } + } + + grouping XTC-IPV4-LINK-BAG { + description + "XTC IPv4 Link Information"; + container local-igp-information { + description + "Local node IGP information"; + uses XTC-IGP-INFO-BAG; + } + container remote-node-protocol-identifier { + description + "Remote node protocol identifier"; + uses XTC-NODE-PID-BAG; + } + container performance-metrics { + description + "Performance metrics"; + uses XTC-LINK-PM-METRICS; + } + leaf is-unnumbered { + type boolean; + description + "True if this is an IPv4 Unnumbered link"; + } + leaf local-interface-index { + type uint32; + description + "SNMP index of local interface: non-zero if + IsUnnumbered is True"; + } + leaf remote-interface-index { + type uint32; + description + "SNMP index of remote interface: non-zero if + IsUnnumbered is True"; + } + leaf local-ipv4-address { + type inet:ipv4-address; + description + "Local IPv4 address"; + } + leaf remote-ipv4-address { + type inet:ipv4-address; + description + "Remote IPv4 address"; + } + leaf igp-metric { + type uint32; + description + "IGP Metric"; + } + leaf te-metric { + type uint32; + description + "TE Metric"; + } + leaf maximum-link-bandwidth { + type uint64; + description + "Max link bandwidth"; + } + leaf max-reservable-bandwidth { + type uint64; + description + "Max Reservable bandwidth"; + } + leaf administrative-groups { + type uint32; + description + "Link admin-groups"; + } + leaf flex-algo-te-metric { + type uint32; + description + "Flex-algo specific TE metric value"; + } + leaf flex-algo-asla-minimum-latency { + type uint32; + description + "Flex-algo specific Minimum latency"; + } + leaf-list srlgs { + type uint32; + description + "SRLG Values"; + } + list extended-administrative-group { + description + "Link Extended admin-groups"; + leaf entry { + type uint32; + description + "Link Extended admin-groups"; + } + } + list adjacency-sid { + description + "Adjacency SIDs"; + uses XTC-SID-BAG; + } + list flex-algo-asla-administrative-group { + description + "Flex-algo specific Link Extended admin-groups"; + leaf entry { + type uint32; + description + "Flex-algo specific Link Extended admin-groups"; + } + } + } + + grouping XTC-SID-BAG { + description + "XTC SID bags"; + container sid-prefix { + description + "Prefix"; + uses XTC-IP-ADDR-TYPE; + } + leaf sid-type { + type Xtc-sid1; + description + "SID Type"; + } + leaf algorithm { + type uint32; + description + "Prefix-SID algorithm number"; + } + leaf mpls-label { + type uint32; + description + "MPLS Label"; + } + leaf xflag { + type boolean; + description + "X Flag"; + } + leaf rflag { + type boolean; + description + "R Flag"; + } + leaf nflag { + type boolean; + description + "N Flag"; + } + leaf pflag { + type boolean; + description + "P Flag"; + } + leaf eflag { + type boolean; + description + "E Flag"; + } + leaf vflag { + type boolean; + description + "V Flag"; + } + leaf lflag { + type boolean; + description + "L Flag"; + } + leaf mflag { + type boolean; + description + "M Flag"; + } + } + + grouping XTC-IGP-INFO-BGP { + description + "XTC BGP Information"; + leaf router-id { + type Xtc-ipv4-address; + description + "BGP router ID"; + } + } + + grouping XTC-IGP-INFO-OSPF { + description + "XTC OSPF Information"; + leaf router-id { + type Xtc-ipv4-address; + description + "OSPF router ID"; + } + leaf area { + type uint32; + description + "OSPF area"; + } + } + + grouping XTC-IGP-INFO-ISIS { + description + "XTC ISIS Information"; + leaf system-id { + type string; + description + "ISIS system ID"; + } + leaf level { + type uint32; + description + "ISIS level"; + } + } + + grouping XTC-IGP-INFO-TYPE { + description + "XTC IGP INFO TYPE"; + container isis { + when "../igp-id = 'isis'" { + description + "../IGP_ID = 'ISIS'"; + } + description + "ISIS information"; + uses XTC-IGP-INFO-ISIS; + } + container ospf { + when "../igp-id = 'ospf'" { + description + "../IGP_ID = 'OSPF'"; + } + description + "OSPF information"; + uses XTC-IGP-INFO-OSPF; + } + container bgp { + when "../igp-id = 'bgp'" { + description + "../IGP_ID = 'BGP'"; + } + description + "BGP information"; + uses XTC-IGP-INFO-BGP; + } + leaf igp-id { + type Xtc-igp-info-id; + description + "IGP ID"; + } + } + + grouping XTC-IGP-INFO-BAG { + description + "XTC IGP information bag"; + container igp { + description + "IGP-specific information"; + uses XTC-IGP-INFO-TYPE; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + } + + grouping XTC-NODE-PID-BAG { + description + "XTC Node Protocol Identifier Information"; + leaf node-name { + type string; + description + "Node Name"; + } + leaf ipv4-bgp-router-id-set { + type boolean; + description + "True if IPv4 BGP router ID is set"; + } + leaf ipv4-bgp-router-id { + type inet:ipv4-address; + description + "IPv4 TE router ID"; + } + leaf ipv4te-router-id-set { + type boolean; + description + "True if IPv4 TE router ID is set"; + } + leaf ipv4te-router-id { + type inet:ipv4-address; + description + "IPv4 BGP router ID"; + } + list igp-information { + description + "IGP information"; + uses XTC-IGP-INFO-BAG; + } + } + + grouping XTC-TOPO-NODE-BAG { + description + "XTC Topology Node Information"; + container node-protocol-identifier { + description + "Node protocol identifier"; + uses XTC-NODE-PID-BAG; + } + leaf node-identifier-xr { + type uint32; + description + "Node identifier"; + } + leaf overload { + type boolean; + description + "Node Overload Bit"; + } + list prefix-sid { + description + "Prefix SIDs"; + uses XTC-SID-BAG; + } + list ipv4-link { + description + "IPv4 Link information"; + uses XTC-IPV4-LINK-BAG; + } + list ipv6-link { + description + "IPv6 Link information"; + uses XTC-IPV6-LINK-BAG; + } + list srv6-sid { + description + "SRv6 END SIDs"; + uses XTC-SRV6-SID-BAG; + } + } + + grouping XTC-REGIST-CONTENT-BAG { + description + "Regist entry content"; + leaf-list client-id { + type uint32; + description + "Clients that registered"; + } + } + + grouping XTC-REGIST-KEY-BAG { + description + "Regist entry key"; + container endpoint { + description + "Policy endpoint"; + uses XTC-IP-ADDR-TYPE; + } + leaf type { + type Xtc-regist-entry; + description + "Type of registration"; + } + leaf color { + type uint32; + description + "Color"; + } + leaf policy-name { + type string; + description + "Policy name"; + } + } + + grouping XTC-REGIST-ENTRY-BAG { + description + "Regist entry"; + container key { + description + "Entry key"; + uses XTC-REGIST-KEY-BAG; + } + container content { + description + "Entry content"; + uses XTC-REGIST-CONTENT-BAG; + } + } + + grouping XTC-CONTROLLER-POLICY-REQ-BAG { + description + "Controller policy request"; + container end-point { + description + "End point"; + uses XTC-IP-ADDR-TYPE; + } + leaf source-address-xr { + type inet:ipv4-address; + description + "Source address"; + } + leaf binding-sid { + type uint32; + description + "Binding SID"; + } + leaf preference { + type uint32; + description + "Preference"; + } + leaf color-xr { + type uint32; + description + "Color"; + } + leaf route-distinguisher-xr { + type uint32; + description + "Route distinguisher"; + } + leaf creation-time { + type uint32; + units "second"; + description + "Creation time of the request in seconds"; + } + leaf last-updated-time { + type uint32; + units "second"; + description + "Last updated time of the request in seconds"; + } + list segment-list { + description + "Segment lists"; + uses XTC-POLICY-SL-BAG; + } + } + + grouping XTC-DIST-INFO-BAG { + description + "Disjoint path information"; + leaf disjointness-type { + type Xtc-disjointness; + description + "Disjointness type"; + } + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf sub-id { + type uint32; + description + "Sub ID"; + } + } + + grouping XTC-ON-DEMAND-COLOR-BAG { + description + "On-Demand Color information"; + container disjoint-path-info { + description + "Disjoint path information"; + uses XTC-DIST-INFO-BAG; + } + container performance-measurement-configuration { + description + "Performance-measurement configuration"; + uses XTC-PM-CPATH-CFG-INFO; + } + container per-flow-policy-config { + description + "Per-flow Policy Configuration Data"; + uses XTC-PFP-CONFIG-BAG; + } + container srv6-information { + description + "SRv6 policy candidate-path information"; + uses XTC-SRV6-CONFIG-BAG; + } + leaf color-xr { + type uint32; + description + "Color"; + } + leaf absolute-margin { + type uint32; + description + "Absolute Metric Margin"; + } + leaf relative-margin { + type uint32; + description + " Relative Metric Margin"; + } + leaf maximum-sid-depth { + type uint32; + description + "Maximum SID Depth"; + } + leaf config-anycast { + type boolean; + description + "Config Anycast"; + } + leaf igp-metric-bound { + type uint32; + description + "IGP metric bound"; + } + leaf te-metric-bound { + type uint32; + description + "TE metric bound"; + } + leaf delay-metric-bound { + type uint32; + description + "Delay metric bound"; + } + leaf hop-count-metric-bound { + type uint32; + description + "Hopcount metric bound"; + } + } + + grouping MGMT-SRV6-SID-FMT { + description + "SRv6 SID Format Info"; + leaf type { + type Mgmt-srv6-sid-fmt; + description + "Format type"; + } + leaf description { + type string; + description + "Format description"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping XTC-SRV6U-LOCATOR { + description + "XTC Locator Information"; + container micro-segment-behavior { + description + "Micro-segment behavior"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container sid-format { + description + "SID Format"; + uses MGMT-SRV6-SID-FMT; + } + leaf name-xr { + type string; + description + "Locator Name"; + } + leaf prefix { + type string; + description + "Locator Prefix"; + } + leaf flex-algo { + type uint8; + description + "FlexAlgo"; + } + leaf is-operational { + type boolean; + description + "Locator Status"; + } + leaf is-oor { + type boolean; + description + "Locator OOR Status"; + } + } + + grouping XTC-RIB-STATS { + description + "XTC RIB stats"; + leaf sid-alloc-count { + type uint32; + description + "sid alloc count"; + } + leaf sid-free-count { + type uint32; + description + "sid free count"; + } + leaf ub6-rw-count { + type uint32; + description + "ub6 rw count"; + } + leaf sid-alloc-fail-count { + type uint32; + description + "sid alloc fail count"; + } + leaf sid-free-fail-count { + type uint32; + description + "sid free fail count"; + } + leaf ub6-rw-fail-count { + type uint32; + description + "ub6 rw fail count"; + } + leaf sid-alloc-success-count { + type uint32; + description + "sid alloc success count"; + } + leaf sid-free-success-count { + type uint32; + description + "sid free success count"; + } + leaf ub6-rw-success-count { + type uint32; + description + "ub6 rw success count"; + } + leaf rib6-conn-up-count { + type uint32; + description + "rib6 conn up count"; + } + leaf rib6-conn-up-ts-first { + type uint32; + description + "rib6 conn up ts first"; + } + leaf rib6-conn-up-ts-last { + type uint32; + description + "rib6 conn up ts last"; + } + leaf rib6-conn-down-count { + type uint32; + description + "rib6 conn down count"; + } + leaf rib6-conn-down-ts-first { + type uint32; + description + "rib6 conn down ts first"; + } + leaf rib6-conn-down-ts-last { + type uint32; + description + "rib6 conn down ts last"; + } + } + + grouping XTC-PATH { + description + "XTC Path Information"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface"; + } + leaf address { + type Xtc-ipv6-address; + description + "Primary Address"; + } + leaf path-id { + type uint32; + description + "Path ID"; + } + leaf backup-path-id { + type uint32; + description + "Backup Path ID"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf info-source { + type Xtc-ipv6-address; + description + "Info Source"; + } + leaf sid-behavior { + type uint32; + description + "SID behavior"; + } + leaf weight { + type uint32; + description + "weight of path"; + } + leaf-list backup-address { + type Xtc-ipv6-address; + description + "List of Backup Addresses"; + } + leaf-list sid { + type Xtc-ipv6-address; + description + "Underlay SID List"; + } + } + + grouping XTC-NEXT-HOP { + description + "XTC Next Hop Information"; + leaf prefix-xr { + type inet:ipv6-address; + description + "Next Hop Prefix"; + } + leaf create-time { + type uint32; + description + "Create Time"; + } + leaf last-update-time { + type uint32; + description + "Last Update Time"; + } + list paths { + description + "List of Paths"; + uses XTC-PATH; + } + } + + grouping CMN-TRACE-BUFFER-SUMMARY-BAG { + description + "Trace buffer summary"; + leaf trace-buffer-name { + type string; + description + "Name of trace buffer"; + } + leaf unique-trace-count { + type uint32; + description + "Unique trace count"; + } + leaf wrapping-trace-count-default { + type uint32; + description + "Default value of wrapping trace count"; + } + leaf wrapping-trace-count-programmed { + type uint32; + description + "Programmed value of wrapping trace count"; + } + leaf string-buffer-size-default { + type uint32; + units "byte"; + description + "Default string buffer size for wrapping traces + in bytes"; + } + leaf string-buffer-size-programmed { + type uint32; + units "byte"; + description + "Programmed string buffer size for wrapping + traces in bytes"; + } + } + + grouping XTC-EVENT-INFO { + description + "XTC Event information"; + leaf event-message { + type string; + description + "Event message"; + } + leaf time-stamp { + type uint64; + description + "Event time, relative to Jan 1, 1970"; + } + } + + grouping XTC-TREESID-PIMINFO-BAG { + description + "P2MP policy PIM information"; + leaf rpf-id { + type uint32; + description + "Reverse-path-forwarding identifier"; + } + leaf mdt-interface-handle { + type xr:Interface-name; + description + "Multicast Distribution Tree interface handle"; + } + leaf rsi-table-id { + type uint32; + description + "Router Space Infrastructure table ID"; + } + } + + grouping XTC-TREESID-HOP-BAG { + description + "P2MP Policy hop"; + container remote-address { + description + "Remote address"; + uses XTC-IP-ADDR-TYPE; + } + leaf outgoing-label { + type uint32; + description + "Outgoing label"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf central-control-identifier { + type uint32; + description + "Identifier for Central Control instructions"; + } + leaf stale { + type boolean; + description + "Whether the hop is stale"; + } + leaf lfa-protected { + type boolean; + description + "Whether the hop is protected by LFA FRR"; + } + } + + grouping XTC-TREESID-EP-BAG { + description + "P2MP Policy endpoint"; + container addres { + description + "Endpoint address"; + uses XTC-IP-ADDR-TYPE; + } + leaf stale { + type boolean; + description + "Whether the ep is stale"; + } + } + + grouping XTC-TREESID-BAG { + description + "P2MP Policy"; + container pcc-information { + description + "PCC PCEP-related information"; + uses XTC-PCC-INFO-BAG; + } + container pim-information { + description + "Information from PIM regarding this policy"; + uses XTC-TREESID-PIMINFO-BAG; + } + leaf name-xr { + type string; + description + "Policy name"; + } + leaf root-address-xr { + type inet:ipv4-address; + description + "Root address of dynamic policy"; + } + leaf tree-id-xr { + type uint32; + description + "Tree-ID of dynamic policy"; + } + leaf lsm-id { + type uint32; + description + "LSM Identifier"; + } + leaf role { + type Xtc-treesid-role; + description + "TreeSID node role"; + } + leaf pc-egroupname { + type string; + description + "PCE group Name"; + } + leaf pce-creator { + type inet:ipv4-address; + description + "PCE which created this policy"; + } + leaf pce-delegator { + type inet:ipv4-address; + description + "PCE to which this policy is delegated"; + } + leaf plsp-conn-delegated { + type string; + description + "PLSP connection delegate for this policy"; + } + leaf plsp-conninitiated { + type string; + description + "PLSP connection created this policy"; + } + leaf plsp-conn-delegated-handle { + type uint32; + description + "PLSP connection handle to which policy is + delegated"; + } + leaf plsp-conninitiated-handle { + type uint32; + description + "PLSP connection handle that created this policy"; + } + leaf last-report-msg { + type uint64; + description + "Last Update Msg TimeStamp"; + } + leaf last-initiate-msg { + type uint64; + description + "Last initiate Msg TimeStamp"; + } + leaf last-update-msg { + type uint64; + description + "Last update Msg TimeStamp"; + } + leaf stale { + type boolean; + description + "Is this dynamic policy stale"; + } + leaf color { + type uint32; + description + "On-demand color of dynamic policy"; + } + leaf creator-last-updated-ts { + type uint64; + description + "timestamp to when creator is last update"; + } + leaf delegator-last-updated-ts { + type uint64; + description + "timestamp to when delegator is last update"; + } + list end-point { + description + "Endpoints for dynamic policy"; + uses XTC-TREESID-EP-BAG; + } + list replication-hop { + description + "Replication points"; + uses XTC-TREESID-HOP-BAG; + } + list event { + description + "Events"; + uses XTC-EVENT-INFO; + } + } + + grouping XTC-POLICY-SUMMARY-BAG { + description + "Policy summary information"; + leaf total-policy-count { + type uint32; + description + "Total number of policies"; + } + leaf up-policy-count { + type uint32; + description + "Total number of policies that are operationally + up"; + } + leaf down-policy-count { + type uint32; + description + "Total number of policies that are operationally + down"; + } + leaf total-candidate-path-count { + type uint32; + description + "Total number of candidate paths"; + } + leaf active-candidate-path-count { + type uint32; + description + "Total number of candidate paths that are active"; + } + leaf inactive-candidate-path-count { + type uint32; + description + "Total number of candidate paths that are + inactive"; + } + leaf total-lsp-count { + type uint32; + description + "Total number of LSPs"; + } + leaf active-lsp-count { + type uint32; + description + "Total number of active LSPs"; + } + leaf reoptimized-lsp-count { + type uint32; + description + "Total number of reoptimized LSPs"; + } + leaf cleanup-lsp-count { + type uint32; + description + "Total number of cleanup LSPs"; + } + leaf oor-lsp-count { + type uint32; + description + "Total number of LSPs in OOR state"; + } + leaf pdp-count { + type uint32; + description + "Total number of per-destination policies"; + } + leaf up-pdp-count { + type uint32; + description + "Total number of PDPs that are operationally up"; + } + leaf down-pdp-count { + type uint32; + description + "Total number of PDPs that are operationally down"; + } + leaf pfp-count { + type uint32; + description + "Total number of per-flow policies"; + } + leaf up-pfp-count { + type uint32; + description + "Total number of PFPs that are operationally up"; + } + leaf down-pfp-count { + type uint32; + description + "Total number of PFPs that are operationally down"; + } + leaf standby-candidate-path-count { + type uint32; + description + "Total number of candidate paths that are standby"; + } + leaf standby-lsp-count { + type uint32; + description + "Total number of standby LSPs"; + } + } + + grouping XTC-FWDING-EXT-INPROT-STATS-BAG { + description + "Extended statistics for an input protocol, + per-path"; + list output-protocol { + max-elements "5"; + description + "Output protocol"; + uses XTC-FWDING-STATS-BAG; + } + list feature { + max-elements "2"; + description + "Feature"; + uses XTC-FWDING-STATS-BAG; + } + } + + grouping XTC-FWDING-PATH-STATS-BAG { + description + "Extended statistics, per-path"; + list input-protocol { + max-elements "5"; + description + "Input protocol"; + uses XTC-FWDING-EXT-INPROT-STATS-BAG; + } + } + + grouping XTC-SRV6-SID-BAG { + description + "XTC SRv6 SID bag"; + leaf srv6-sid { + type Xtc-ipv6-address; + description + "SRv6 SID"; + } + leaf sid-behavior { + type uint16; + description + "Endpoint SID behavior"; + } + leaf algorithm { + type uint32; + description + "Prefix-SID algorithm number"; + } + leaf sid-length { + type uint8; + description + "SID length"; + } + } + + grouping XTC-FWDING-POLICY-PATH-BAG { + description + "Policy Forwarding path information"; + container stats { + description + "Forwarding stats of the path (backward + compatibility)"; + uses XTC-FWDING-STATS-BAG; + } + container full-stats { + description + "Full forwarding stats of the path"; + uses XTC-FWDING-PATH-STATS-BAG; + } + leaf next-hop-ipv6 { + type Xtc-ipv6-address; + description + "IPv6 Next Hop"; + } + leaf next-hop-table-id { + type uint32; + description + "Table ID for nexthop address"; + } + leaf is-protected { + type boolean; + description + "Is this path protected ?"; + } + leaf is-pure-bkup { + type boolean; + description + "Is this path a pure backup ?"; + } + leaf is-lfa-or-ecmp-backup { + type boolean; + description + "Whether the path is LFA or ECMP backup"; + } + leaf load-metric { + type uint32; + description + "Path's load metric for load balancing"; + } + leaf path-id { + type uint8; + description + "path Id"; + } + leaf bkup-path-id { + type uint8; + description + "Backup path Id"; + } + leaf internal-recursive-label { + type uint32; + description + "Internal Recursive label"; + } + leaf-list outgoing-interface { + type xr:Interface-name; + description + "Outgoing interface handle"; + } + leaf-list next-hop-ipv4 { + type Xtc-ipv4-address; + description + "IPv4 Next Hop"; + } + leaf-list label-stack { + type uint32; + description + "Path outgoing labels"; + } + list sid-stack { + description + "Path outgoing sids"; + uses XTC-SRV6-SID-BAG; + } + } + + grouping XTC-FWDING-POLICY-SL-BAG { + description + "Forwarding information related to a single + segment list"; + container stats { + description + "Forwarding stats of the segment list (backward + compatibility)"; + uses XTC-FWDING-STATS-BAG; + } + container full-stats { + description + "Full forwarding stats of the segment list"; + uses XTC-FWDING-PATH-STATS-BAG; + } + leaf name { + type string; + description + "Name of the segment list, if any"; + } + leaf segment-list-id { + type uint32; + description + "Segment List Identifier"; + } + list forwarding-path { + description + "Segment list paths in forwarding"; + uses XTC-FWDING-POLICY-PATH-BAG; + } + } + + grouping XTC-FWDING-POLICY-CPATH-BAG { + description + "XTC FWDING POLICY CPATH BAG"; + container originator { + description + "Candidate path originator"; + uses XTC-POLICY-CPATH-ORIGINATOR-BAG; + } + leaf name { + type string; + description + "Name of the candidate path, if any"; + } + leaf preference { + type uint32; + description + "Candidate path preference"; + } + leaf protocol-originator { + type Xtc-policy-cpath-proto-origin; + description + "Candidate path protocol origin"; + } + leaf discriminator { + type uint32; + description + "Candidate path discriminator"; + } + leaf protection-role { + type Xtc-policy-cpath-protection-role; + description + "Protection Role"; + } + } + + grouping XTC-FWDING-POLICY-LSP-BAG { + description + "Forwarding information related to a single LSP"; + container candidate-path { + description + "Candidate path associated with this LSP"; + uses XTC-FWDING-POLICY-CPATH-BAG; + } + leaf local-label { + type uint32; + description + "Local label of the LSP"; + } + leaf lsp-role { + type Xtc-policy-lsp-protection-role; + description + "Role of this LSP"; + } + list forwarding-segment-list { + description + "Segment lists installed in forwarding"; + uses XTC-FWDING-POLICY-SL-BAG; + } + } + + grouping XTC-FWDING-POLICY-BAG { + description + "Policy forwarding information"; + container endpoint-address { + description + "Endpoint address"; + uses XTC-IP-ADDR-TYPE; + } + container binding-sid { + description + "Programmed Binding SID"; + uses XTC-PREFIX-SID-TYPE; + } + container stats { + description + "Overall forwarding stats of the policy"; + uses XTC-FWDING-STATS-BAG; + } + container active-lsp { + description + "Active LSP information"; + uses XTC-FWDING-POLICY-LSP-BAG; + } + container reoptimized-lsp { + description + "Reoptimized LSP information"; + uses XTC-FWDING-POLICY-LSP-BAG; + } + container per-flow-information { + description + "Per-flow policy candidate-path information"; + uses XTC-PFP-CONFIG-BAG; + } + leaf policy-name { + type string; + description + "Policy name"; + } + leaf color { + type uint32; + description + "Color"; + } + list standby-lsp { + description + "Standby LSP information"; + uses XTC-FWDING-POLICY-LSP-BAG; + } + } + + grouping XTC-INTERFACE-BAG { + description + "XTC interface information"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf name { + type string; + description + "Name of the interface"; + } + leaf operational-up { + type boolean; + description + "Operational up"; + } + } + + grouping XTC-FS-EG-NH-BAG { + description + "next-hop within an egress-group of a + first-segment"; + container next-hop-address { + description + "IP address of the directly connected neighbour"; + uses XTC-IP-ADDR-TYPE; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle of the outgoing interface"; + } + leaf interface-name { + type string; + description + "Name of the outgoing interface"; + } + leaf path-id { + type uint8; + description + "Path index for rewrite"; + } + leaf backup-path-id { + type uint8; + description + "Backup Path index for rewrite"; + } + leaf path-flags { + type uint16; + description + "Path flags for rewrite"; + } + } + + grouping XTC-FS-EG-BAG { + description + "egress-group within a first-segment"; + leaf next-hop-id { + type uint32; + description + "Next-hop ID"; + } + leaf local-label { + type uint32; + description + "Internal label that points to this next-hop"; + } + leaf needs-cleaning-up { + type boolean; + description + "Cleanup to be scheduled"; + } + leaf is-cleaning-up { + type boolean; + description + "Cleanup in progress"; + } + leaf rewrite-refresh-needed { + type boolean; + description + "Need to refresh the rewrite"; + } + leaf-list out-label { + type uint32; + description + "Outgoing label stack"; + } + list next-hop { + description + "Next-hops within the same egress-group"; + uses XTC-FS-EG-NH-BAG; + } + } + + grouping XTC-FS-BAG { + description + "first-segment of an SR-TE segment-list"; + leaf first-segment-label { + type uint32; + description + "First segment label as a key"; + } + list egress-group { + description + "Groups of egress hops"; + uses XTC-FS-EG-BAG; + } + } + + grouping XTC-EFFMET-POLICY-NOTIFY-BAG { + description + "XTC effective metric notification"; + leaf metric-type { + type uint8; + description + "Notified metric type"; + } + leaf metric-value { + type uint32; + description + "Notified metric value"; + } + leaf admin-distance { + type uint32; + description + "Notified administrative distance"; + } + } + + grouping XTC-POLICY-NOTIFY-BAG { + description + "XTC Policy notification to clients"; + container bsid-value { + description + "Binding SID value"; + uses XTC-PREFIX-SID-TYPE; + } + container effective-metric { + description + "Information about effective metric"; + uses XTC-EFFMET-POLICY-NOTIFY-BAG; + } + leaf bandwidth { + type uint64; + description + "Bandwidth of policy"; + } + leaf sense { + type boolean; + description + "TRUE if adding, FALSE if removing"; + } + leaf is-state-up { + type boolean; + description + "Oper state of the policy"; + } + leaf steering-disabled { + type boolean; + description + "Steering is disabled for this policy"; + } + leaf ipv6-caps { + type boolean; + description + "Policy has SRv6 capability"; + } + leaf prefix-path-label-ignored { + type boolean; + description + "Whether prefix path label is ignored for this + policy"; + } + } + + grouping XTC-PFP-OPER-BAG { + description + "XTC Per-flow policy Operational Data"; + container reopt-bsid { + description + "Reoptimized BSID"; + uses XTC-POLICY-BSID-BAG; + } + leaf is-enabled { + type boolean; + description + "Whether Per-flow is enabled on Policy"; + } + leaf state { + type Xtc-pfp-state; + description + "Per-flow Policy State"; + } + leaf transition-count { + type uint32; + description + "State transition count"; + } + } + + grouping XTC-PER-FLOW-POLICY-BAG { + description + "XTC Per-flow policy"; + container pfp-config { + description + "Per-flow Policy Configuration Data"; + uses XTC-PFP-CONFIG-BAG; + } + container pfp-oper { + description + "Per-flow Policy Operational Data"; + uses XTC-PFP-OPER-BAG; + } + } + + grouping XTC-PFP-RW-INFO-BAG { + description + "XTC policy LSP per-flow rewrite information"; + leaf default-forward-class { + type uint8; + description + "Default forward class"; + } + leaf-list ifhandle { + type uint32; + max-elements "8"; + description + "Ifhandle of per-destination policy at + forward-class"; + } + } + + grouping XTC-PM-LD-LSP-SESSION-INFO { + description + "XTC PM LD LSP SESSION INFO"; + container bring-up-timer { + description + "Bring up timer information"; + uses CMN-TIMER-INFO; + } + leaf last-liveness-state-change-time { + type uint64; + description + "Time when the last liveness state change + occurred"; + } + leaf last-liveness-state-change-age { + type uint64; + description + "Age when the last liveness state change occurred"; + } + leaf liveness-session-state { + type Xtc-pm-live-session-state; + description + "Last liveness state change"; + } + } + + grouping XTC-PM-DM-METRICS { + description + "XTC PM DM METRICS"; + leaf average-delay { + type uint32; + description + "Average delay"; + } + leaf minimum-delay { + type uint32; + description + "Minimum delay"; + } + leaf maximum-delay { + type uint32; + description + "Maximum delay"; + } + leaf delay-variance { + type uint32; + description + "Delay variance"; + } + leaf aflag-set { + type boolean; + description + "A flag is set"; + } + } + + grouping XTC-PM-DM-LSP-SESSION-INFO { + description + "XTC PM DM LSP SESSION INFO"; + container delay-metrics { + description + "Last delay-measurement metrics"; + uses XTC-PM-DM-METRICS; + } + leaf last-delay-change-time { + type uint64; + description + "Time when the last delay change occurred"; + } + leaf last-delay-change-age { + type uint64; + description + "Age when the last delay change occurred"; + } + leaf delay-session-is-created { + type boolean; + description + "Is delay-measurement session created"; + } + } + + grouping XTC-PM-LSP-INFO { + description + "XTC PM LSP INFO"; + container pm-delay-measurement-info { + description + "Delay-measurement information"; + uses XTC-PM-DM-LSP-SESSION-INFO; + } + container pm-liveness-detection-info { + description + "Liveness-detection information"; + uses XTC-PM-LD-LSP-SESSION-INFO; + } + leaf pm-delay-measurement-enabled { + type boolean; + description + "Is delay-measurement enabled"; + } + leaf pm-liveness-detection-enabled { + type boolean; + description + "Is liveness-detection enabled"; + } + } + + grouping XTC-BFD-LSP-INFO { + description + "XTC BFD LSP INFO"; + container session-params { + description + "BFD session parameters that are to be used for + this LSP"; + uses XTC-BFD-SESSION-PARAMS; + } + leaf last-session-state-change-time { + type uint64; + description + "Time when the last BFD state change occurred"; + } + leaf last-session-state-change-age { + type uint64; + description + "Age when the last BFD state change occurred"; + } + leaf session-state { + type Xtc-bfd-session-state; + description + "State of the BFD session"; + } + leaf is-created { + type boolean; + description + "Is BFD session created"; + } + leaf is-update-needed { + type boolean; + description + "Is update needed to BFD"; + } + leaf is-stale { + type boolean; + description + "Is the BFD session stale"; + } + } + + grouping XTC-POLICY-LSP-BAG { + description + "XTC Policy LSP"; + container binding-sid { + description + "Binding SID information"; + uses XTC-POLICY-BSID-BAG; + } + container install-timer { + description + "Install timer information"; + uses CMN-TIMER-INFO; + } + container cleanup-timer { + description + "Cleanup timer information"; + uses CMN-TIMER-INFO; + } + container revert-timer { + description + "Revert timer information"; + uses CMN-TIMER-INFO; + } + container bfd-information { + description + "BFD information"; + uses XTC-BFD-LSP-INFO; + } + container performance-measurement-configuration { + description + "Performance-measurement configuration"; + uses XTC-PM-CPATH-CFG-INFO; + } + container performance-measurement-info { + description + "Performance-measurement information"; + uses XTC-PM-LSP-INFO; + } + container per-flow-rewrite-info { + description + "Per-flow LSP rewrite information"; + uses XTC-PFP-RW-INFO-BAG; + } + leaf lsp-id { + type uint16; + description + "LSP ID"; + } + leaf policy-id { + type uint16; + description + "Policy ID"; + } + leaf local-label { + type uint32; + description + "Local label of the LSP"; + } + leaf state { + type Xtc-policy-lsp-sm-state; + description + "Current LSP state"; + } + leaf is-active-lsp { + type boolean; + description + "Whether this is the active LSP"; + } + leaf is-reoptimized-lsp { + type boolean; + description + "Whether this is the reoptimized LSP"; + } + leaf is-standby { + type boolean; + description + "Whether this is the standby lsp"; + } + } + + grouping XTC-CPATH-PROTECTION-BAG { + description + "XTC policy candidate path protection bag"; + leaf role { + type Xtc-policy-cpath-protection-role; + description + "Protection Role"; + } + leaf path-lock-timed { + type boolean; + description + "Path Lock Timer is enabled"; + } + leaf lock-duration { + type uint32; + units "second"; + description + "Time to wait before attempting a path switch + back in secs"; + } + leaf state { + type Xtc-policy-cpath-protection-state; + description + "Path Protection State"; + } + } + + grouping XTC-SRV6-CONFIG-BAG { + description + "XTC SRv6 policy Configuration"; + container binding-sid { + description + "SRv6 Binding SID"; + uses XTC-PREFIX-SID-TYPE; + } + leaf locator-name { + type string; + description + "Locator name"; + } + leaf binding-sid-behavior { + type uint32; + description + "Binding SID behavior"; + } + } + + grouping XTC-FWDING-STATS-BAG { + description + "Forwarding stats"; + leaf packets { + type uint64; + description + "Number of packets forwarded"; + } + leaf bytes { + type uint64; + units "byte"; + description + "Number of bytes forwarded"; + } + } + + grouping XTC-PER-FLOW-PDP-ENTRY-BAG { + description + "XTC per-flow entry for per-destination policy"; + container stats { + description + "Forwarding stats of the per-destination policy"; + uses XTC-FWDING-STATS-BAG; + } + leaf color { + type uint32; + description + "Per-destination policy Color"; + } + leaf state { + type boolean; + description + "Per-destination policy state"; + } + leaf forward-class { + type uint8; + description + "Per-destination policy Forward Class"; + } + } + + grouping XTC-PFP-CONFIG-BAG { + description + "XTC Per-flow policy Configuration"; + leaf default-forward-class { + type uint8; + description + "Default forward class"; + } + list pdp-entry { + max-elements "8"; + description + "Per-flow PDP entry table"; + uses XTC-PER-FLOW-PDP-ENTRY-BAG; + } + } + + grouping XTC-PM-DM-STATS { + description + "XTC PM DM STATS"; + leaf session-create-counter { + type uint64; + description + "Counters for session create"; + } + leaf session-update-counter { + type uint64; + description + "Counters of sessions updated"; + } + leaf session-delete-counter { + type uint64; + description + "Counters for session delete update"; + } + leaf session-up-counter { + type uint64; + description + "Counters for session up update"; + } + leaf session-down-counter { + type uint64; + description + "Counters for session down update"; + } + leaf delay-notification-counter { + type uint64; + description + "Counters for session delay notification"; + } + leaf error-counter { + type uint64; + description + "Counters for session error update"; + } + } + + grouping XTC-PM-CPATH-INFO { + description + "XTC PM CPATH INFO"; + container liveness-session-statistics { + description + "Statistics of liveness sessions"; + uses XTC-PM-DM-STATS; + } + } + + grouping XTC-PM-LD-CFG-INFO { + description + "XTC PM LD CFG INFO"; + leaf invalidation-action { + type Xtc-pm-live-invalidation-action; + description + "Action to be taken when the PM liveness session + is invalidated"; + } + leaf profile-name { + type string; + description + "Profile name"; + } + leaf logging-session-state-change { + type boolean; + description + "Should syslog be emitted when session state + changes"; + } + } + + grouping XTC-PM-DM-CFG-INFO { + description + "XTC PM DM CFG INFO"; + leaf invalidation-action { + type Xtc-pm-live-invalidation-action; + description + "Action to be taken when the PM liveness session + is invalidated"; + } + leaf profile-name { + type string; + description + "Profile name"; + } + leaf logging-delay-exceeded { + type boolean; + description + "Should syslog be emitted when delay exceeds + threshold"; + } + } + + grouping XTC-PM-CPATH-CFG-INFO { + description + "XTC PM CPATH CFG INFO"; + container delay-measurement-configuration { + description + "Delay-measurement candidate-path configuration"; + uses XTC-PM-DM-CFG-INFO; + } + container liveness-detection-configuration { + description + "Liveness-detection candidate-path configuration"; + uses XTC-PM-LD-CFG-INFO; + } + leaf reverse-path-label { + type uint32; + description + "Reverse-path label"; + } + leaf delay-measurement-enabled { + type boolean; + description + "Is delay-measurement enabled"; + } + leaf liveness-detection-enabled { + type boolean; + description + "Is delay-measurement enabled"; + } + } + + grouping XTC-BFD-SESSION-STATS { + description + "XTC BFD SESSION STATS"; + leaf session-create { + type uint64; + description + "Count of sessions created"; + } + leaf session-update { + type uint64; + description + "Count of sessions updated"; + } + leaf session-delete { + type uint64; + description + "Count of sessions destroyed"; + } + leaf session-up { + type uint64; + description + "Count of session state UP notifications"; + } + leaf session-down { + type uint64; + description + "Count of session state DOWN notifications"; + } + leaf session-error { + type uint64; + description + "Count of unexpected events or API errors"; + } + } + + grouping XTC-BFD-CPATH-INFO { + description + "XTC BFD CPATH INFO"; + container session-statistics { + description + "Candidate path session statistics"; + uses XTC-BFD-SESSION-STATS; + } + } + + grouping XTC-BFD-SESSION-PARAMS { + description + "XTC BFD SESSION PARAMS"; + leaf minimum-interval { + type uint32; + description + "Minimum interval between transmitted BFD packets"; + } + leaf multiplier { + type uint32; + description + "Number of missed packets before declaring + session down"; + } + leaf reverse-binding-label { + type uint32; + description + "Reverse binding label"; + } + } + + grouping XTC-BFD-CFG-INFO-CPATH { + description + "XTC BFD CFG INFO CPATH"; + container session-params { + description + "BFD session parameters that should be used for + LSPs created from this CPATH"; + uses XTC-BFD-SESSION-PARAMS; + } + leaf invalidation-action { + type Xtc-bfd-invalidation-action; + description + "Action to be taken when BFD session is + invalidated"; + } + leaf submode-enable { + type boolean; + description + "Is BFD configured"; + } + leaf disable { + type boolean; + description + "Is BFD temporarily disabled"; + } + leaf logging-session-state-change { + type boolean; + description + "Should syslog be emitted when session state + changes"; + } + } + + grouping XTC-PROFILE-KEY { + description + "XTC profile key bag"; + leaf id { + type uint16; + description + "Numeric part of profile key"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source IPv4 address"; + } + } + + grouping XTC-PCC-INFO-BAG { + description + "XTC PCC info"; + container orphan-timer { + description + "Deprecated"; + uses CMN-TIMER-INFO; + } + container state-timer { + description + "State timer for PCE-initiated candidate paths in + orphan state"; + uses CMN-TIMER-INFO; + } + container fallback-timer { + description + "Timer for delaying delegation revoke back to LSP + originator"; + uses CMN-TIMER-INFO; + } + leaf symbolic-name { + type string; + description + "Symbolic name of the PLSP"; + } + leaf plsp-id { + type uint32; + description + "PLSP-ID associated with the PCC info"; + } + leaf is-orphan { + type boolean; + description + "Whether the candidate path is in orphan state"; + } + list profile-key { + description + "List of profile keys"; + uses XTC-PROFILE-KEY; + } + } + + grouping CMN-TIMER-INFO { + description + "Timer information"; + leaf running { + type boolean; + description + "Whether the timer is running"; + } + leaf remaining-seconds { + type int64; + units "second"; + description + "Number of remaining seconds"; + } + leaf remaining-nano-seconds { + type int64; + units "nanosecond"; + description + "Number of remaining nanoseconds"; + } + } + + grouping XTC-SEGMENTS-BAG { + description + "XTC SEGMENTS BAG"; + leaf segment-algorithm { + type uint8; + description + "Segment Algorithm"; + } + leaf segment-algorithm-set { + type boolean; + description + "Flag to indicate if segment algorithm is set"; + } + leaf protection-type { + type Xtc-path-protection; + description + "Protection Type"; + } + leaf protection-type-set { + type boolean; + description + "Flag to indicate if protection type is set"; + } + } + + grouping XTC-PATH-METRICS-BAG { + description + "SR path metrics bag"; + leaf margin-relative { + type uint32; + description + "Margin Relative"; + } + leaf margin-absolute { + type uint32; + description + "Margin Absolute"; + } + leaf maximum-segments { + type uint16; + description + "Maximum number of segments"; + } + leaf igp-metric-bound { + type uint32; + description + "IGP Metric Bound"; + } + leaf te-metric-bound { + type uint32; + description + "TE Metric Bound"; + } + leaf delay-metric-bound { + type uint32; + description + "Delay Metric Bound"; + } + leaf hop-count-metric-bound { + type uint32; + description + "Hopcount Metric Bound"; + } + leaf config-anycast { + type boolean; + description + "Config Anycast"; + } + } + + grouping XTC-AFFINITY-COLOR { + description + "XTC AFFINITY COLOR"; + leaf color { + type string; + description + "An affinity color"; + } + } + + grouping XTC-AFFINITY-CONSTRAINT { + description + "XTC AFFINITY CONSTRAINT"; + leaf type { + type uint8; + description + "Affinity type"; + } + leaf value { + type uint32; + description + "Affinity value"; + } + list extended-value { + description + "Extended Affinity values"; + leaf entry { + type uint32; + description + "Extended Affinity values"; + } + } + list color { + description + "Colors"; + uses XTC-AFFINITY-COLOR; + } + } + + grouping XTC-PATH-CONSTRAINTS-BAG { + description + "XTC SR per candidate path metrics information"; + container path-metrics { + description + "Path metrics"; + uses XTC-PATH-METRICS-BAG; + } + container segments { + description + "Segments constraints"; + uses XTC-SEGMENTS-BAG; + } + leaf reoptimization-not-allowed { + type boolean; + description + "No reoptimization allowed"; + } + leaf adjacency-sid-only { + type boolean; + description + "Only Adjacency SIDs allowed"; + } + list affinity-constraint { + description + "Affinity constraints list"; + uses XTC-AFFINITY-CONSTRAINT; + } + } + + grouping SRV6-SID-STRUCTURE-BAG { + description + "SRv6 MicroSID Structure"; + leaf locator-block-length { + type uint8; + description + "Block Length"; + } + leaf locator-node-length { + type uint8; + description + "Node Length"; + } + leaf function-length { + type uint8; + description + "Function Length"; + } + leaf argument-length { + type uint8; + description + "Argument Length"; + } + } + + grouping XTC-SR-HOP-TYPE { + description + "XTC SR hop"; + container sid { + description + "SID value"; + uses XTC-PREFIX-SID-TYPE; + } + container local-address { + description + "Local address"; + uses XTC-IP-ADDR-TYPE; + } + container remote-address { + description + "Remote address"; + uses XTC-IP-ADDR-TYPE; + } + container segment-id-structure { + description + "The SRv6 strucutre of the SID"; + uses SRV6-SID-STRUCTURE-BAG; + } + leaf sid-type { + type Xtc-sr-sid; + description + "SID type"; + } + leaf local-interface-index { + type uint32; + description + "SNMP index of the upstream interface of this hop"; + } + leaf remote-interface-index { + type uint32; + description + "SNMP index of the downstream interface of this + hop"; + } + leaf algorithm { + type uint8; + description + "Algorithm"; + } + leaf sid-behavior { + type uint16; + description + "Endpoint SID behavior"; + } + leaf sid-format { + type Mgmt-srv6-sid-fmt; + description + "SID Format"; + } + leaf sid-length { + type uint8; + description + "SID length"; + } + } + + grouping XTC-POLICY-SL-BAG { + description + "XTC policy segment list information bag"; + container pce-address-af { + description + "IPv4 or IPv6 Address of the PCE that computed + this path"; + uses XTC-IP-ADDR-TYPE; + } + leaf name { + type string; + description + "Explicit segment list name"; + } + leaf type { + type Xtc-policy-path; + description + "Segment list type"; + } + leaf active { + type boolean; + description + "Whether the segment list is active (used)"; + } + leaf weight { + type uint32; + description + "Weight of the segment list"; + } + leaf metric-type { + type uint8; + description + "Metric type of the segment list"; + } + leaf metric-value { + type uint64; + description + "Accumulated metric of the segment list"; + } + leaf is-valid { + type boolean; + description + "True if path is valid"; + } + leaf pce-based-path { + type boolean; + description + "True if the path is to be computed by PCE"; + } + leaf pce-address { + type inet:ipv4-address; + description + "Deprecated: IPv4 Address of the PCE that + computed this path. Use the PCE Addr + AF field instead"; + } + leaf error { + type string; + description + "Error (for display only)"; + } + leaf cumulative-te-metric { + type uint32; + description + "The cumulative TE metric of the path"; + } + leaf cumulative-igp-metric { + type uint32; + description + "The cumulative IGP metric of the path"; + } + leaf cumulative-latency { + type uint32; + description + "The cumulative latency of the path"; + } + leaf hop-count { + type uint32; + description + "The number of hops in the path"; + } + leaf reverse-hop-count { + type uint32; + description + "The number of hops in the reverse path"; + } + leaf kshortest-paths-computed { + type uint32; + description + "Number of computed shortest paths before finding + the one that satisfies the + constraints"; + } + leaf reverse-name { + type string; + description + "Reverse segment list name"; + } + leaf invalid-reason { + type string; + description + "Segment List Invalid Reason"; + } + list hops { + description + "SR hop list"; + uses XTC-SR-HOP-TYPE; + } + list reverse-hop { + description + "SR reverse hop list"; + uses XTC-SR-HOP-TYPE; + } + } + + grouping XTC-POLICY-CPATH-ORIGINATOR-BAG { + description + "XTC POLICY CPATH ORIGINATOR BAG"; + container node-address { + description + "Originator node address"; + uses XTC-IP-ADDR-TYPE; + } + leaf autonomous-system-number { + type uint32; + description + "Originator Autonomous System Number"; + } + } + + grouping XTC-POLICY-CPATH-BAG { + description + "XTC policy candidate path bag"; + container originator { + description + "Candidate path originator"; + uses XTC-POLICY-CPATH-ORIGINATOR-BAG; + } + container sr-path-constraints { + description + "SR candidate path constraints"; + uses XTC-PATH-CONSTRAINTS-BAG; + } + container requested-bsid { + description + "Requested binding SID"; + uses XTC-PREFIX-SID-TYPE; + } + container cleanup-timer { + description + "Cleanup timer if the candidate path is in the + process of being cleaned up"; + uses CMN-TIMER-INFO; + } + container pcc-information { + description + "PCC PCEP-related information"; + uses XTC-PCC-INFO-BAG; + } + container bfd-config { + description + "BFD configuration"; + uses XTC-BFD-CFG-INFO-CPATH; + } + container bfd-information { + description + "BFD information"; + uses XTC-BFD-CPATH-INFO; + } + container performance-measurement-configuration { + description + "Performance-measurement configuration"; + uses XTC-PM-CPATH-CFG-INFO; + } + container performance-measurement-info { + description + "Performance-measurement session information"; + uses XTC-PM-CPATH-INFO; + } + container per-flow-information { + description + "Per-flow policy candidate-path information"; + uses XTC-PFP-CONFIG-BAG; + } + container srv6-information { + description + "SRv6 policy candidate-path information"; + uses XTC-SRV6-CONFIG-BAG; + } + container path-protection { + description + "Path Protection"; + uses XTC-CPATH-PROTECTION-BAG; + } + leaf name { + type string; + description + "Candidate path name"; + } + leaf preference { + type uint32; + description + "Candidate path preference"; + } + leaf protocol-originator { + type Xtc-policy-cpath-proto-origin; + description + "Candidate path protocol origin"; + } + leaf discriminator { + type uint32; + description + "Candidate path discriminator"; + } + leaf is-active { + type boolean; + description + "Whether this is the currently active candidate + path"; + } + leaf is-reoptimizing { + type boolean; + description + "Whether this is the candidate path that the + policy is reoptimizing to"; + } + leaf shutdown { + type boolean; + description + "If set, the candidate path is administratively + shutdown"; + } + leaf error { + type string; + description + "Candidate path error (for display only)"; + } + leaf pce-group-name { + type string; + description + "PCE group name"; + } + leaf is-protect { + type boolean; + description + "Whether this is the current backup candidate + path"; + } + leaf is-standby { + type boolean; + description + "Whether this is a standby candidate path"; + } + leaf bidirectional-association-id { + type uint16; + description + "Bidirectional Association Id for candidate path"; + } + leaf corouted { + type boolean; + description + "Co-routed Bidirectional path"; + } + leaf backup-ineligible { + type boolean; + description + "Restore Path is not eligible for backup"; + } + leaf no-reopt { + type boolean; + description + "No Reoptimization allowed"; + } + list segment-list { + description + "Segment lists of the candidate path"; + uses XTC-POLICY-SL-BAG; + } + } + + grouping XTC-POLICY-BSID-BAG { + description + "XTC policy binding SID information"; + container value { + description + "Binding SID value"; + uses XTC-PREFIX-SID-TYPE; + } + leaf is-fallback-dynamic { + type boolean; + description + "Whether the BSID is in fallback dynamic mode"; + } + leaf is-within-srlb-range { + type boolean; + description + "Whether the BSID is within SRLB range"; + } + leaf is-within-pfp-range { + type boolean; + description + "Whether the BSID is within PFP range"; + } + } + + grouping XTC-POLICY-BAG { + description + "XTC policy information"; + container destination-address { + description + "Destination address"; + uses XTC-IP-ADDR-TYPE; + } + container binding-sid { + description + "Binding SID information"; + uses XTC-POLICY-BSID-BAG; + } + container per-flow { + description + "Per-flow policy information"; + uses XTC-PER-FLOW-POLICY-BAG; + } + container last-notify { + description + "Last notification to clients"; + uses XTC-POLICY-NOTIFY-BAG; + } + leaf policy-name { + type string; + description + "Policy name"; + } + leaf administrative-up { + type uint32; + description + "Admin up"; + } + leaf operational-up { + type uint32; + description + "Operational up"; + } + leaf color { + type uint32; + description + "Color"; + } + leaf transition-count { + type uint32; + description + "Indicates number of up/down transitions"; + } + leaf created-ls-ps-count { + type uint32; + description + "Indicates number of LSP creations"; + } + leaf completed-reoptimizations-count { + type uint32; + description + "Indicates number of completed reoptimizations"; + } + leaf forward-class { + type uint32; + description + "Forward class of the policy"; + } + leaf up-time { + type uint64; + units "nanosecond"; + description + "Policy up time in nano seconds"; + } + leaf up-age { + type uint64; + units "nanosecond"; + description + "Policy up age (since) in nano seconds"; + } + leaf down-time { + type uint64; + units "nanosecond"; + description + "Policy down time in nano seconds"; + } + leaf down-age { + type uint64; + units "nanosecond"; + description + "Policy down age (since) in nano seconds"; + } + leaf steering-bgp-disabled { + type boolean; + description + "Whether steering to BGP client is disabled"; + } + leaf steering-labeled-services-disabled { + type boolean; + description + "Whether steering for labeled-services is + disabled"; + } + leaf invalidation-drop-enabled { + type boolean; + description + "Whether invalidation drop is enabled"; + } + leaf invalidated-traffic-dropping { + type boolean; + description + "TRUE if the traffic on this policy is being + dropped due to path invalidation"; + } + leaf interface-handle { + type uint32; + description + "Interface handle"; + } + leaf profile-id { + type uint16; + description + "deprecated - replaced by key list in + xtc_pcc_info_bag"; + } + leaf ipv6-caps-enabled { + type boolean; + description + "IPv6 caps enabled"; + } + leaf max-install-standby-cpaths { + type uint32; + description + "Max install standby candidate paths"; + } + list candidate-path { + description + "Candidate paths"; + uses XTC-POLICY-CPATH-BAG; + } + list ls-ps { + description + "LSPs"; + uses XTC-POLICY-LSP-BAG; + } + } + + grouping XTC-GLOBAL-INFO-AD-BAG { + description + "XTC global admin distance information"; + leaf metric-type { + type Cmn-metric; + description + "Metric type"; + } + leaf admin-distance { + type uint32; + description + "Admin distance"; + } + } + + grouping XTC-GLOBAL-INFO-BAG { + description + "XTC global information"; + leaf next-hop-separation-enabled { + type uint32; + description + "Is NextHop Separation enabled"; + } + leaf max-install-standby-cpaths { + type uint32; + description + "Max install standby candidate paths"; + } + list admin-distance { + description + "List of global admin distances"; + uses XTC-GLOBAL-INFO-AD-BAG; + } + } + + grouping XTC-IP-ADDR-TYPE { + description + "XTC IP ADDR TYPE"; + leaf af-name { + type Xtc-af-id; + description + "AFName"; + } + leaf ipv4 { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type Xtc-ipv4-address; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Xtc-ipv6-address; + description + "IPv6 address type"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub2.yang new file mode 100644 index 000000000..cf886d9f5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub2.yang @@ -0,0 +1,212 @@ +submodule Cisco-IOS-XR-infra-xtc-agent-oper-sub2 { + belongs-to Cisco-IOS-XR-infra-xtc-agent-oper { + prefix Cisco-IOS-XR-infra-xtc-agent-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-xtc-agent package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-24 { + description + "Added fields for Flex-algo ASLA attributes on IPv4 and IPv6 links + 2022-10-26 + Dynamic CS Persistent PM and LSP, added fields for CP,LSP state and new SM transitions. + 2022-06-15 + Removed obsolete srv6-prefix container. + 2022-06-08 + Dynamic CS, added summary fields for standby CP and LSP + 2022-06-03 + Removed prefix-metric entry from the topology node. + 2022-05-17 + Renamed srv6usid to srv6-sid since all SRv6 SIDs are not micro SIDs + 2022-05-12 + Added checkpoint id in policy lsp segment list bag. + 2022-03-03 + Added is-srv6-local and is-srv6-remote in peer container. + 2022-03-03 + Added SID length and SID format for explicit path policy. + 2022-01-17 + Change the type of extended-value leaf from leaf-list to list. + 2021-11-21 + Added prefix-metric entry in the topology node. + 2021-11-09 + Added unreliable flag and update drop count in topology summary bag. + 2021-10-21 + Adding algorithm and computation time to path query results + 2021-09-27 + Added leaf max-install-standby-cpaths under grouping XTC-POLICY-BAG. Added leaf max-install-standby-cpaths under grouping XTC-GLOBAL-INFO-BAG. + 2021-08-31 + Added leaf segment-algorithm-set under grouping XTC-SEGMENTS-BAG. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "5.0.0"; + } + revision 2021-07-27 { + description + "Added invalid reason leaf under segment-list container + 2021-06-14 + Added SL First Label and Start Index field in LSP SL MOI bag. Added NH Seperation enabled field in Global info bag. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "4.1.0"; + } + revision 2021-05-21 { + description + "Added path invalidation drop flag in policy bag. + 2021-04-22 + Added TE metric field for Flex-algo ASLA. + 2021-02-18 + Remove deprecated performance-measurement oper bag and renamed pm config field name in xtc_pm_lsp_info. Added performance-measurement config data bag in lsp bag. + 2021-02-08 + Added performance-measurement config data bag in lsp bag. + 2020-12-13 + Added performance-measurement liveness-detection oper schema. + 2020-10-27 + Added A flag set field in show command to support A flag sent from PM side + 2020-09-16 + Adding operational nodes for new features path invalidation drop protected and unprotected path + 2020-09-04 + Modified the Extended-Affinities and ASLA-Extended-Affinities to be list instead of a leaf-list + 2020-05-12 + Add SRv6TE policy operational data + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-01-16 { + description + "Removed event buffer from SR-TE policy model. Implement new statistic info for policy performance-measurement session. Added support for per-flow policy output. Added additional filter for policy type i.e. per-flow and per-destination."; + semver:module-version "3.0.0"; + } + revision 2019-09-09 { + description + "PCE/SRTE topology should display P-flag set for OSPF prefix-SID with explicit-null"; + semver:module-version "2.0.0"; + } + revision 2019-05-01 { + description + "Added operational models for interface database."; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Hierarchical changes to policy forwarding model to organize the paths under the proper segment lists and LSPs."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-11-28 { + description + "Various modifications to policy-related models for better compatibility with the IETF policy draft."; + } + revision 2017-09-11 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Xtc-srv6-sid { + type inet:ipv6-address; + description + "Xtc srv6 sid"; + } + + typedef Xtc-sid { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "mpls" { + value 1; + description + "MPLS"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + enum "srv6" { + value 3; + description + "SRv6"; + } + } + description + "Xtc sid"; + } + + typedef Xtc-ipv6-address { + type inet:ipv6-address; + description + "Xtc ipv6 address"; + } + + typedef Xtc-ipv4-address { + type inet:ipv4-address; + description + "Xtc ipv4 address"; + } + + grouping XTC-PREFIX-SID-TYPE { + description + "XTC PREFIX SID TYPE"; + leaf sid-type { + type Xtc-sid; + description + "SIDType"; + } + leaf label { + when "../sid-type = 'mpls'" { + description + "../SIDType = 'MPLS'"; + } + type uint32; + description + "MPLS label"; + } + leaf ipv6 { + when "../sid-type = 'ipv6'" { + description + "../SIDType = 'IPv6'"; + } + type Xtc-ipv6-address; + description + "IPv6 address"; + } + leaf srv6sid { + when "../sid-type = 'srv6'" { + description + "../SIDType = 'SRV6'"; + } + type Xtc-srv6-sid; + description + "SRv6 SID"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub3.yang new file mode 100644 index 000000000..717d3a61c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper-sub3.yang @@ -0,0 +1,1049 @@ +submodule Cisco-IOS-XR-infra-xtc-agent-oper-sub3 { + belongs-to Cisco-IOS-XR-infra-xtc-agent-oper { + prefix Cisco-IOS-XR-infra-xtc-agent-oper; + } + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-xtc-agent-oper-sub1 { + revision-date 2023-01-24; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-xtc-agent package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-24 { + description + "Added fields for Flex-algo ASLA attributes on IPv4 and IPv6 links + 2022-10-26 + Dynamic CS Persistent PM and LSP, added fields for CP,LSP state and new SM transitions. + 2022-06-15 + Removed obsolete srv6-prefix container. + 2022-06-08 + Dynamic CS, added summary fields for standby CP and LSP + 2022-06-03 + Removed prefix-metric entry from the topology node. + 2022-05-17 + Renamed srv6usid to srv6-sid since all SRv6 SIDs are not micro SIDs + 2022-05-12 + Added checkpoint id in policy lsp segment list bag. + 2022-03-03 + Added is-srv6-local and is-srv6-remote in peer container. + 2022-03-03 + Added SID length and SID format for explicit path policy. + 2022-01-17 + Change the type of extended-value leaf from leaf-list to list. + 2021-11-21 + Added prefix-metric entry in the topology node. + 2021-11-09 + Added unreliable flag and update drop count in topology summary bag. + 2021-10-21 + Adding algorithm and computation time to path query results + 2021-09-27 + Added leaf max-install-standby-cpaths under grouping XTC-POLICY-BAG. Added leaf max-install-standby-cpaths under grouping XTC-GLOBAL-INFO-BAG. + 2021-08-31 + Added leaf segment-algorithm-set under grouping XTC-SEGMENTS-BAG. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "5.0.0"; + } + revision 2021-07-27 { + description + "Added invalid reason leaf under segment-list container + 2021-06-14 + Added SL First Label and Start Index field in LSP SL MOI bag. Added NH Seperation enabled field in Global info bag. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "4.1.0"; + } + revision 2021-05-21 { + description + "Added path invalidation drop flag in policy bag. + 2021-04-22 + Added TE metric field for Flex-algo ASLA. + 2021-02-18 + Remove deprecated performance-measurement oper bag and renamed pm config field name in xtc_pm_lsp_info. Added performance-measurement config data bag in lsp bag. + 2021-02-08 + Added performance-measurement config data bag in lsp bag. + 2020-12-13 + Added performance-measurement liveness-detection oper schema. + 2020-10-27 + Added A flag set field in show command to support A flag sent from PM side + 2020-09-16 + Adding operational nodes for new features path invalidation drop protected and unprotected path + 2020-09-04 + Modified the Extended-Affinities and ASLA-Extended-Affinities to be list instead of a leaf-list + 2020-05-12 + Add SRv6TE policy operational data + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-01-16 { + description + "Removed event buffer from SR-TE policy model. Implement new statistic info for policy performance-measurement session. Added support for per-flow policy output. Added additional filter for policy type i.e. per-flow and per-destination."; + semver:module-version "3.0.0"; + } + revision 2019-09-09 { + description + "PCE/SRTE topology should display P-flag set for OSPF prefix-SID with explicit-null"; + semver:module-version "2.0.0"; + } + revision 2019-05-01 { + description + "Added operational models for interface database."; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Hierarchical changes to policy forwarding model to organize the paths under the proper segment lists and LSPs."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-11-28 { + description + "Various modifications to policy-related models for better compatibility with the IETF policy draft."; + } + revision 2017-09-11 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tcp-auth { + type enumeration { + enum "tcp-authentication-none" { + description + "TCP Authentication None"; + } + enum "tcp-authentication-keychain" { + description + "TCP EA Keychain"; + } + enum "tcp-authentication-password-clear" { + description + "MD5 password clear"; + } + enum "tcp-authentication-password-encrypted" { + description + "MD5 password encrypted"; + } + enum "tcp-authentication-option" { + description + "TCP Authentication Option"; + } + } + description + "TCP authentication type"; + } + + grouping PCEP-CONN-PWD-BAG { + description + "PCEP connection password information"; + leaf type { + type Tcp-auth; + description + "password type"; + } + leaf keychain-name { + type string; + description + "Keychain Name"; + } + leaf md5-password { + type string; + description + "MD5 Password"; + } + leaf ao-keychain-name { + type string; + description + "Authentication Option Keychain Name"; + } + leaf ao-include-options-enable { + type boolean; + description + "AO Include Option Enable"; + } + leaf ao-accept-mismatch-enable { + type boolean; + description + "AO Accept Mismatch Enable"; + } + } + + grouping PCEP-CONN-STATS-BAG { + description + "PCEP CONN STATS information"; + leaf ka-msg-rx { + type uint64; + description + "KA messages rxed"; + } + leaf ka-msg-fail-rx { + type uint64; + description + "KA messages fail rxed"; + } + leaf ka-msg-tx { + type uint64; + description + "KA messages txed"; + } + leaf ka-msg-fail-tx { + type uint64; + description + "KA messages fail txed"; + } + leaf pcreq-msg-rx { + type uint64; + description + "PCREQ messages rxed"; + } + leaf pcreq-msg-fail-rx { + type uint64; + description + "PCREQ messages fail rxed"; + } + leaf pcreq-msg-tx { + type uint64; + description + "PCREQ messages txed"; + } + leaf pcreq-msg-fail-tx { + type uint64; + description + "PCREQ messages fail txed"; + } + leaf pcrep-msg-rx { + type uint64; + description + "PCREP messages rxed"; + } + leaf pcrep-msg-fail-rx { + type uint64; + description + "PCREP messages fail rxed"; + } + leaf pcrep-msg-tx { + type uint64; + description + "PCREP messages txed"; + } + leaf pcrep-msg-fail-tx { + type uint64; + description + "PCREP messages fail txed"; + } + leaf pcrpt-msg-rx { + type uint64; + description + "PCRPT messages rxed"; + } + leaf pcrpt-msg-fail-rx { + type uint64; + description + "PCRPT messages fail rxed"; + } + leaf pcrpt-msg-tx { + type uint64; + description + "PCRPT messages txed"; + } + leaf pcrpt-msg-fail-tx { + type uint64; + description + "PCRPT messages fail txed"; + } + leaf pcupd-msg-rx { + type uint64; + description + "PCUPD messages rxed"; + } + leaf pcupd-msg-fail-rx { + type uint64; + description + "PCUPD messages fail rxed"; + } + leaf pcupd-msg-tx { + type uint64; + description + "PCUPD messages txed"; + } + leaf pcupd-msg-fail-tx { + type uint64; + description + "PCUPD messages fail txed"; + } + leaf open-msg-rx { + type uint64; + description + "OPEN messages rxed"; + } + leaf open-msg-fail-rx { + type uint64; + description + "OPEN messages fail rxed"; + } + leaf open-msg-tx { + type uint64; + description + "OPEN messages txed"; + } + leaf open-msg-fail-tx { + type uint64; + description + "OPEN messages fail txed"; + } + leaf pcerr-msg-rx { + type uint64; + description + "PCERR messages rxed"; + } + leaf pcerr-msg-fail-rx { + type uint64; + description + "PCERR messages fail rxed"; + } + leaf pcerr-msg-tx { + type uint64; + description + "PCERR messages txed"; + } + leaf pcerr-msg-fail-tx { + type uint64; + description + "PCERR messages fail txed"; + } + leaf pcntf-msg-rx { + type uint64; + description + "PCNTF messages rxed"; + } + leaf pcntf-msg-fail-rx { + type uint64; + description + "PCNTF messages fail rxed"; + } + leaf pcntf-msg-tx { + type uint64; + description + "PCNTF messages txed"; + } + leaf pcntf-msg-fail-tx { + type uint64; + description + "PCNTF messages fail txed"; + } + leaf pce-eos-msg-tx { + type uint64; + description + "PCE EOS messages txed"; + } + leaf pce-eos-msg-fail-tx { + type uint64; + description + "PCE EOS messages fail txed"; + } + leaf close-msg-rx { + type uint64; + description + "CLOSE messages rxed"; + } + leaf close-msg-fail-rx { + type uint64; + description + "CLOSE messages fail rxed"; + } + leaf close-msg-tx { + type uint64; + description + "CLOSE messages txed"; + } + leaf close-msg-fail-tx { + type uint64; + description + "CLOSE messages fail txed"; + } + leaf unexpected-msg-rx { + type uint64; + description + "Unexpected messages rxed"; + } + leaf corrupted-msg-rx { + type uint64; + description + "Corrupted messages rxed"; + } + leaf reply-time-index { + type uint32; + description + "index into recorded reply time"; + } + leaf minimum-reply-time { + type uint64; + description + "min reply time"; + } + leaf maximum-reply-time { + type uint64; + description + "max reply time"; + } + leaf requests-timed-out { + type uint64; + description + "requests timed out"; + } + leaf last-pcerr-type-rx { + type uint8; + description + "last PCERR type received"; + } + leaf last-pcerr-val-rx { + type uint8; + description + "last PCERR value received"; + } + leaf last-pcerr-rx-ts { + type uint64; + description + "last time when PCERR was received"; + } + leaf last-pcerr-type-tx { + type uint8; + description + "last PCERR type transmitted"; + } + leaf last-pcerr-val-tx { + type uint8; + description + "last PCERR value transmitted"; + } + leaf last-pcerr-tx-ts { + type uint64; + description + "last time when PCERR was transmitted"; + } + leaf pcinitiate-msg-rx { + type uint64; + description + "PCINITIATE messages rxed"; + } + leaf pcinitiate-msg-fail-rx { + type uint64; + description + "PCINITIATE messages fail rxed"; + } + list recorded-reply-time { + max-elements "10"; + description + "Recorded reply time"; + leaf entry { + type uint64; + description + "Recorded reply time"; + } + } + } + + grouping PCEP-SOCKET-BAG { + description + "PCEP SOCKET information"; + leaf fd { + type int64; + description + "file descriptor"; + } + leaf wnotify { + type boolean; + description + "write notify"; + } + leaf rnotify { + type boolean; + description + "read notify"; + } + leaf refcnt { + type uint32; + description + "ref count"; + } + leaf selected { + type boolean; + description + "selected"; + } + leaf owner { + type uint32; + description + "owner"; + } + leaf csockaddr-str { + type string; + description + "client address"; + } + leaf ssockaddr-str { + type string; + description + "server address"; + } + } + + grouping PCEP-CONN-BAG { + description + "PCEP CONN information"; + container socket-info { + description + "socket info"; + uses PCEP-SOCKET-BAG; + } + container pcep-server-addr { + description + "PCEP server address"; + uses XTC-IP-ADDR-TYPE; + } + container pcep-client-addr { + description + "PCEP client address"; + uses XTC-IP-ADDR-TYPE; + } + container stats { + description + "stats"; + uses PCEP-CONN-STATS-BAG; + } + container password { + description + "Password Information"; + uses PCEP-CONN-PWD-BAG; + } + leaf handle { + type uint32; + description + "internal handle"; + } + leaf state-str { + type string; + description + "connection state"; + } + leaf pce-group-name { + type string; + description + "PCE group name"; + } + leaf local-ok { + type boolean; + description + "local accepted"; + } + leaf remote-ok { + type boolean; + description + "remote accepted"; + } + leaf open-retry { + type uint32; + description + "open retry count"; + } + leaf ref-cnt { + type uint32; + description + "ref count"; + } + leaf rx-state-str { + type string; + description + "socket state"; + } + leaf holddown-counter { + type uint16; + description + "holddown counter"; + } + leaf pcep-up-ts { + type uint64; + description + "PCEP up timestamp"; + } + leaf precedence { + type uint8; + description + "Precedence"; + } + leaf ka-interval-local { + type uint32; + description + "KA interval local"; + } + leaf ka-interval-remote { + type uint32; + description + "KA interval remote"; + } + leaf dead-interval-local { + type uint32; + description + "Dead interval local"; + } + leaf dead-interval-remote { + type uint32; + description + "Dead interval remote"; + } + leaf pcep-session-id-local { + type uint32; + description + "PCEP session ID local"; + } + leaf pcep-session-id-remote { + type uint32; + description + "PCEP session ID remote"; + } + leaf pcep-server-ipv4-addr { + type inet:ipv4-address; + description + "PCEP server Ipv4 address"; + } + leaf pcep-client-ipv4-addr { + type inet:ipv4-address; + description + "PCEP client Ipv4 address"; + } + leaf is-stateful-local { + type boolean; + description + "is stateful local"; + } + leaf is-stateful-remote { + type boolean; + description + "is stateful remote"; + } + leaf is-stateful-u-flag-local { + type boolean; + description + "is stateful with U flag local"; + } + leaf is-stateful-u-flag-remote { + type boolean; + description + "is stateful with U flag remote"; + } + leaf is-segment-routing-local { + type boolean; + description + "is segment routing local"; + } + leaf is-segment-routing-remote { + type boolean; + description + "is segment routing remote"; + } + leaf is-initiate-local { + type boolean; + description + "local initiate capability"; + } + leaf is-initiate-remote { + type boolean; + description + "remote initiate capability"; + } + leaf is-best-pce { + type boolean; + description + "is this the best PCE to delegate to"; + } + leaf sr-msd-local { + type uint8; + description + "SR MSD local"; + } + leaf sr-msd-remote { + type uint8; + description + "SR MSD remote"; + } + leaf is-srv6-local { + type boolean; + description + "is SRv6 local"; + } + leaf is-srv6-remote { + type boolean; + description + "is SRv6 remote"; + } + } + + grouping PCEP-HOP-SR-IPV4 { + description + "PCEP SR IPv4 hop information"; + leaf type { + type uint8; + description + "SID type"; + } + leaf cflag { + type boolean; + description + "C flag"; + } + leaf sid { + type uint32; + description + "SID"; + } + leaf remote-addr { + type uint32; + description + "Remote address"; + } + leaf local-addr { + type uint32; + description + "Local address"; + } + } + + grouping PCEP-HOP-IPV4 { + description + "PCEP IPv4 hop information"; + leaf v4-addr { + type uint32; + description + "IPv4 prefix"; + } + leaf prefix-len { + type uint8; + description + "Prefix length"; + } + } + + grouping PCEP-HOP-DATA { + description + "PCEP HOP DATA"; + container ipv4 { + when "../hop-type = 'pcep-hop-type-ipv4'" { + description + "../HopType = 'PCEP_HOP_TYPE_IPV4'"; + } + description + "IPv4 hop info"; + uses PCEP-HOP-IPV4; + } + container sr-v4 { + when "../hop-type = 'pcep-hop-type-srv4'" { + description + "../HopType = 'PCEP_HOP_TYPE_SRV4'"; + } + description + "SR IPv4 hop info"; + uses PCEP-HOP-SR-IPV4; + } + leaf hop-type { + type uint8; + description + "HopType"; + } + } + + grouping PCEP-HOP-BAG { + description + "PCEP HOP information"; + container data { + description + "data"; + uses PCEP-HOP-DATA; + } + leaf loose { + type boolean; + description + "is loose hop"; + } + } + + grouping PCEP-PATH-STATS-BAG { + description + "PCEP PATH stats"; + leaf reports-requested { + type uint64; + description + "Reports requested"; + } + leaf reports-sent { + type uint64; + description + "Reports sent"; + } + leaf reports-failed-to-send { + type uint64; + description + "Reports failed"; + } + } + + grouping PCEP-PATH-BAG { + description + "PCEP PATH information"; + container stats { + description + "stats"; + uses PCEP-PATH-STATS-BAG; + } + leaf pce-group-name { + type string; + description + "PCE group name"; + } + leaf used-bw { + type int64; + description + "used bw"; + } + leaf requested-bw { + type int64; + description + "requested bw"; + } + leaf metric-value { + type int64; + description + "metric value"; + } + leaf refcnt { + type int64; + description + "refcnt"; + } + leaf lsp-plsp-id { + type uint32; + description + "LSP PLSP ID"; + } + leaf binding-sid-value { + type uint32; + description + "Binding SID"; + } + leaf lsp-id-tlv-ext-tunnel-id { + type uint32; + description + "Ext Tun ID"; + } + leaf lsp-id-tlv-tunnel-endpoint-address { + type uint32; + description + "Tun endpoint address"; + } + leaf lsp-id-tlv-tunnel-sender-address { + type uint32; + description + "Tun sender address"; + } + leaf srp-id { + type uint32; + description + "SRP ID"; + } + leaf lsp-id-tlv-lsp-id { + type uint16; + description + "LSP ID"; + } + leaf lsp-id-tlv-tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf lsp-id { + type uint16; + description + "Application LSP ID"; + } + leaf binding-sid-type { + type uint16; + description + "Binding SID type"; + } + leaf lsp-oper { + type uint8; + description + "LSP oper flags"; + } + leaf path-setup-type { + type uint8; + description + "Path setup type"; + } + leaf metric-type { + type uint8; + description + "Metric type"; + } + leaf is-reported { + type boolean; + description + "is reported"; + } + leaf lsp-a-flag { + type boolean; + description + "LSP A Flag"; + } + leaf lsp-r-flag { + type boolean; + description + "LSP R Flag"; + } + leaf lsp-s-flag { + type boolean; + description + "LSP S Flag"; + } + leaf lsp-d-flag { + type boolean; + description + "LSP D Flag"; + } + leaf lsp-c-flag { + type boolean; + description + "LSP C Flag"; + } + list ero-hop { + description + "ero hop"; + uses PCEP-HOP-BAG; + } + list rro-hop { + description + "rro hop"; + uses PCEP-HOP-BAG; + } + } + + grouping PCEP-PLSP-EVENT-BAG { + description + "PCEP PLSP event"; + leaf ts { + type uint64; + description + "Timestamp"; + } + leaf desc { + type string; + description + "Description"; + } + } + + grouping PCEP-PLSP-STATS-BAG { + description + "PCEP PLSP stats"; + leaf paths-created { + type uint64; + description + "Paths Created"; + } + leaf paths-destroyed { + type uint64; + description + "Paths Destroyed"; + } + leaf path-create-errors { + type uint64; + description + "Path create errors"; + } + leaf path-destroy-errors { + type uint64; + description + "Path destroy errors"; + } + leaf requests-created { + type uint64; + description + "Requests created"; + } + leaf requests-destroyed { + type uint64; + description + "Requests destroyed"; + } + leaf requests-failed { + type uint64; + description + "Requests failed"; + } + } + + grouping PCEP-PLSP-BAG { + description + "PCEP PLSP information"; + container stats { + description + "Stats"; + uses PCEP-PLSP-STATS-BAG; + } + leaf plsp-id-xr { + type uint32; + description + "PLSP ID"; + } + leaf sym-path-name { + type string; + description + "Symbolic Path Name"; + } + leaf refcnt { + type int64; + description + "Refcnt"; + } + leaf conn-delegated-to { + type uint32; + description + "CONN delegated to"; + } + list event-history { + max-elements "10"; + description + "event history"; + uses PCEP-PLSP-EVENT-BAG; + } + list path { + description + "path"; + uses PCEP-PATH-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper.yang new file mode 100644 index 000000000..b90fca341 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-agent-oper.yang @@ -0,0 +1,581 @@ +module Cisco-IOS-XR-infra-xtc-agent-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-xtc-agent-oper"; + prefix infra-xtc-agent-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-xtc-agent-oper-sub3 { + revision-date 2023-01-24; + } + include Cisco-IOS-XR-infra-xtc-agent-oper-sub2 { + revision-date 2023-01-24; + } + include Cisco-IOS-XR-infra-xtc-agent-oper-sub1 { + revision-date 2023-01-24; + } + + 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 infra-xtc-agent package operational data. + + This module contains definitions + for the following management objects: + pcc: Path-computation client in XTC + xtc: XTC Agent operational data + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-24 { + description + "Added fields for Flex-algo ASLA attributes on IPv4 and IPv6 links + 2022-10-26 + Dynamic CS Persistent PM and LSP, added fields for CP,LSP state and new SM transitions. + 2022-06-15 + Removed obsolete srv6-prefix container. + 2022-06-08 + Dynamic CS, added summary fields for standby CP and LSP + 2022-06-03 + Removed prefix-metric entry from the topology node. + 2022-05-17 + Renamed srv6usid to srv6-sid since all SRv6 SIDs are not micro SIDs + 2022-05-12 + Added checkpoint id in policy lsp segment list bag. + 2022-03-03 + Added is-srv6-local and is-srv6-remote in peer container. + 2022-03-03 + Added SID length and SID format for explicit path policy. + 2022-01-17 + Change the type of extended-value leaf from leaf-list to list. + 2021-11-21 + Added prefix-metric entry in the topology node. + 2021-11-09 + Added unreliable flag and update drop count in topology summary bag. + 2021-10-21 + Adding algorithm and computation time to path query results + 2021-09-27 + Added leaf max-install-standby-cpaths under grouping XTC-POLICY-BAG. Added leaf max-install-standby-cpaths under grouping XTC-GLOBAL-INFO-BAG. + 2021-08-31 + Added leaf segment-algorithm-set under grouping XTC-SEGMENTS-BAG. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "5.0.0"; + } + revision 2021-07-27 { + description + "Added invalid reason leaf under segment-list container + 2021-06-14 + Added SL First Label and Start Index field in LSP SL MOI bag. Added NH Seperation enabled field in Global info bag. IosSetYangSchemaRev Cisco-IOS-XR-infra-xtc-agent-oper"; + semver:module-version "4.1.0"; + } + revision 2021-05-21 { + description + "Added path invalidation drop flag in policy bag. + 2021-04-22 + Added TE metric field for Flex-algo ASLA. + 2021-02-18 + Remove deprecated performance-measurement oper bag and renamed pm config field name in xtc_pm_lsp_info. Added performance-measurement config data bag in lsp bag. + 2021-02-08 + Added performance-measurement config data bag in lsp bag. + 2020-12-13 + Added performance-measurement liveness-detection oper schema. + 2020-10-27 + Added A flag set field in show command to support A flag sent from PM side + 2020-09-16 + Adding operational nodes for new features path invalidation drop protected and unprotected path + 2020-09-04 + Modified the Extended-Affinities and ASLA-Extended-Affinities to be list instead of a leaf-list + 2020-05-12 + Add SRv6TE policy operational data + 2020-05-05 + changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-01-16 { + description + "Removed event buffer from SR-TE policy model. Implement new statistic info for policy performance-measurement session. Added support for per-flow policy output. Added additional filter for policy type i.e. per-flow and per-destination."; + semver:module-version "3.0.0"; + } + revision 2019-09-09 { + description + "PCE/SRTE topology should display P-flag set for OSPF prefix-SID with explicit-null"; + semver:module-version "2.0.0"; + } + revision 2019-05-01 { + description + "Added operational models for interface database."; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Hierarchical changes to policy forwarding model to organize the paths under the proper segment lists and LSPs."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-11-28 { + description + "Various modifications to policy-related models for better compatibility with the IETF policy draft."; + } + revision 2017-09-11 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Xtcigp-protocol { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown protocol"; + } + enum "isis" { + value 1; + description + "ISIS protocol"; + } + enum "ospf" { + value 2; + description + "OSPF protocol"; + } + enum "bgp" { + value 3; + description + "BGP protocol"; + } + enum "te" { + value 4; + description + "TE protocol"; + } + } + description + "Xtcigp protocol"; + } + + typedef Xtc-label { + type uint32 { + range "16..1048575"; + } + description + "Xtc label"; + } + + typedef Xtc-registration-entry { + type enumeration { + enum "color" { + value 0; + description + "Color"; + } + enum "color-endpoint" { + value 1; + description + "Color and Endpoint"; + } + enum "policy-name" { + value 2; + description + "Policy Name"; + } + } + description + "Xtc registration entry"; + } + + typedef Xtc-address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "ipv6" { + value 2; + description + "IPv6 address family"; + } + } + description + "Xtc address family"; + } + + grouping POLICY-FORWARDING-TABLE { + description + "Common node of xtc, forwarding"; + container policy-forwardings { + description + "Forwarding information for policies"; + list policy-forwarding { + key "name"; + description + "Forwarding information for the policy"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Policy Name"; + } + uses XTC-FWDING-POLICY-BAG; + } + } + } + + container pcc { + config false; + description + "Path-computation client in XTC"; + container plsps { + description + "PCC PLSP database in XTC"; + list plsp { + key "plsp-id"; + description + "PCC PLSP information"; + leaf plsp-id { + type uint32; + description + "PLSP ID"; + } + uses PCEP-PLSP-BAG; + } + } + container peers { + description + "PCC peer database in XTC"; + list peer { + key "peer-addr"; + description + "PCC peer information"; + leaf peer-addr { + type inet:ip-address-no-zone; + description + "Peer Address"; + } + uses PCEP-CONN-BAG; + } + } + } + container xtc { + config false; + description + "XTC Agent operational data"; + container global-info { + description + "Global information"; + uses XTC-GLOBAL-INFO-BAG; + } + container policies { + description + "Policy database in XTC Agent"; + list policy { + key "id"; + description + "Policy information"; + leaf id { + type uint32; + description + "Policy ID"; + } + uses XTC-POLICY-BAG; + } + } + container first-segments { + description + "First segments of all segment-lists"; + list first-segment { + key "label"; + description + "first-segment of an SR-TE segment-list"; + leaf label { + type Xtc-label; + description + "Label"; + } + uses XTC-FS-BAG; + } + } + container interfaces { + description + "Interface database in XTC Agent"; + list interface { + key "interface-name"; + description + "Interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses XTC-INTERFACE-BAG; + } + } + container policy-summary { + description + "Summary of all policies"; + uses XTC-POLICY-SUMMARY-BAG; + } + container p2mp-policy-infos { + description + "P2MP policy database indexed by Root address in + XTC Agent"; + list p2mp-policy-info { + key "root-address tree-id"; + description + "Policy information"; + leaf root-address { + type inet:ip-address-no-zone; + description + "Root Address"; + } + leaf tree-id { + type uint32; + description + "P2MP Policy Tree-ID"; + } + uses XTC-TREESID-BAG; + } + } + container trace-buffer-summaries { + description + "Summary of all trace buffers"; + list trace-buffer-summary { + key "name"; + description + "Summary of specific trace buffer"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Trace buffer name"; + } + uses CMN-TRACE-BUFFER-SUMMARY-BAG; + } + } + container srv6 { + description + "SRv6TE specific information"; + container next-hops { + description + "Next Hop Information"; + list next-hop { + key "prefix"; + description + "Next Hop detailed information"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Prefix"; + } + uses XTC-NEXT-HOP; + } + } + container rib-stats { + description + "RIB Stats"; + uses XTC-RIB-STATS; + } + container locators { + description + "Locators Information"; + list locator { + key "name"; + description + "Locator detailed information"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Locator name"; + } + uses XTC-SRV6U-LOCATOR; + } + } + } + container on-demand-colors { + description + "On-Demand Color database in XTC Agent"; + list on-demand-color { + key "color"; + description + "On Demand Color information"; + leaf color { + type uint32; + description + "Color"; + } + uses XTC-ON-DEMAND-COLOR-BAG; + } + } + container forwarding { + description + "Forwarding information"; + uses POLICY-FORWARDING-TABLE; + } + container controller { + description + "Controller information"; + container policy-requests { + description + "Table containing policy requests"; + list policy-request { + key "source-address endpoint-type endpoint-address color route-distinguisher"; + description + "Policy request information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf endpoint-type { + type Xtc-address-family; + description + "Endpoint Address Type"; + } + leaf endpoint-address { + type inet:ip-address-no-zone; + description + "Endpoint Address"; + } + leaf color { + type uint32 { + range "1..4294967295"; + } + description + "Color"; + } + leaf route-distinguisher { + type uint32 { + range "0..4294967295"; + } + description + "Route Distinguisher"; + } + uses XTC-CONTROLLER-POLICY-REQ-BAG; + } + } + } + container p2mp-policies { + description + "P2MP policy database in XTC Agent"; + list p2mp-policy { + key "name"; + description + "Policy information"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Policy name"; + } + uses XTC-TREESID-BAG; + } + } + container registrations { + description + "Registrations"; + list registration { + description + "Registration"; + leaf entry-type { + type Xtc-registration-entry; + description + "Entry Type"; + } + leaf color { + type uint32 { + range "1..4294967295"; + } + description + "Color"; + } + leaf endpoint { + type inet:ip-address-no-zone; + description + "Endpoint Address"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Policy Name"; + } + uses XTC-REGIST-ENTRY-BAG; + } + } + container topology-nodes { + description + "Node database in XTC Agent"; + list topology-node { + key "node-identifier"; + description + "Node information"; + leaf node-identifier { + type uint32; + description + "Node Identifier"; + } + uses XTC-TOPO-NODE-BAG; + } + } + container topology-summaries { + description + "Node summary table"; + list topology-summary { + description + "Node summary database"; + leaf af { + type Xtc-address-family; + description + "Only show data related to the specified + address family"; + } + leaf protocol { + type Xtcigp-protocol; + description + "Match nodes from the specified IGP protocol"; + } + uses XTC-TOPO-SUMMARY-BAG; + } + } + container prefix-infos { + description + "Prefixes database in XTC Agent"; + list prefix-info { + key "node-identifier"; + description + "Prefix information"; + leaf node-identifier { + type uint32; + description + "Node ID"; + } + uses XTC-PFX-BAG; + } + } + container interface-summary { + description + "Summary of all interfaces"; + uses XTC-INTERFACE-SUMMARY-BAG; + } + uses POLICY-FORWARDING-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-cfg.yang new file mode 100644 index 000000000..3899d2845 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-cfg.yang @@ -0,0 +1,1973 @@ +module Cisco-IOS-XR-infra-xtc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-xtc-cfg"; + prefix infra-xtc-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 infra-xtc package configuration. + + This module contains definitions + for the following management objects: + pce: PCE configuration data + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-06-20 { + description + "Add override rule override for SID protection-type constraint. + 2023-03-31 + Added link-state configuration submode. + 2023-03-21 + Added override rule for flexalgo + 2022-05-26 + Deprecated PCE hierarchical path-computation configuration + 2022-03-09 + Add api-timers, add support for send-queue-size. + 2021-10-08 + Added support for override rules"; + semver:module-version "5.0.0"; + } + revision 2021-09-28 { + description + "Added SR-TE path constraints protection type set configuration + 2021-08-31 + Range for constraints/segment-rules/sid-algorithm was increased from 128-255 to 0-255 to allow algo-0/1 prefix-SIDs. + 2021-07-22 + Added SR-TE path Strict SPF algorithm configuration + 2021-06-18 + Added include-ipv6-all option to policy and PCC profile autoroute configurations, used to enable installing policy as outgoing interface for IPv6 IGP prefixes. + 2021-04-01 + Modified value passed in GroupLspRecord to include AFI of the address passed."; + semver:module-version "4.0.0"; + } + revision 2021-03-03 { + description + "Added PCE API address configuration + 2021-02-17 + Removing the hop-type key leaf from path-info list + 2021-01-12 + srv6 global msd config. + 2021-01-06 + schema changes of removing srv6 explicit bsid cfg. + 2020-11-20 + Adding leaf to enable Anycast SID inclusion for all SR policies + 2020-11-14 + Added P2MP policy fast reroute support Changed Cleanup timer range change Added Support for invalidation drop and protected/unprotected path + 2020-08-07 + Adding configurations for new features path invalidation drop protected and unprotected path + 2020-07-07 + Added PCE global constraint bounds latency configuration."; + semver:module-version "3.0.0"; + } + revision 2020-06-25 { + description + "Added API VRF config + 2020-06-14 + Added SR native CSPF algorithm configuration + 2020-06-11 + REST API interface in VRF config. + 2020-03-31 + Hidde PM DM liveness and named profile for 721. + 2020-02-21 + Adding disjointness-status leaf to logging container to support logging of messages whenever disjointness status changes. + 2020-02-11 + Removing enable leafs from submodes. Added sid-limit leaf for SID limit configuration. + 2019-11-17 + Adding leaf exclude-srlg to support SR-PCE srlg-exclude with disjointness. + 2019-10-09 + Adding container constraints to suppport Flex-algo related info. + 2019-09-25 + Adding enum ipv4-adjacency-address, leaf adjacency-address, leaf address-type, leaf interface-identifier, leaf prefix-length, and leaf validate-flag to support SRV6."; + semver:module-version "2.0.0"; + } + revision 2019-09-24 { + description + "Add submode-enter enable leaf to segment-list container."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-07-25 { + description + "Removed incorrect mandatory specifications."; + } + revision 2018-07-02 { + description + "Removed mandatory specification from Netconf SSH username/password"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-05-31 { + description + "Revision description string."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pce-loggging-disabled { + type enumeration { + enum "disabled" { + value 1; + description + "Logging disabled"; + } + } + description + "Pce loggging disabled"; + } + + typedef Pce-segment { + type enumeration { + enum "ipv4-address" { + value 1; + description + "IPv4 Address"; + } + enum "mpls-label" { + value 3; + description + "MPLS Label"; + } + enum "ipv4-adjacency-address" { + value 4; + description + "IPv4 Adjacency Address"; + } + } + description + "Pce segment"; + } + + typedef Pce-path-algo-check-igp-protocol { + type enumeration { + enum "ospf" { + value 2; + description + "OSPF protocol"; + } + } + description + "Pce path algo check igp protocol"; + } + + typedef Pce-tree-sid { + type enumeration { + enum "mpls-label" { + value 1; + description + "MPLS Label"; + } + } + description + "Pce tree sid"; + } + + typedef Pcep2mp-fast-reroute { + type enumeration { + enum "lfa" { + value 1; + description + "LFA Fast Re-route"; + } + } + description + "Pcep2mp fast reroute"; + } + + typedef Pce-bound-scope { + type enumeration { + enum "bound-scope-none" { + value 0; + description + "BOUND SCOPE NONE"; + } + enum "bound-scope-cumulative" { + value 2; + description + "bounds on path metric"; + } + } + description + "Pce bound scope"; + } + + typedef Pce-append-sid { + type enumeration { + enum "mpls-label" { + value 1; + description + "MPLS Label"; + } + } + description + "Pce append sid"; + } + + typedef Pce-api-authentication { + type enumeration { + enum "digest" { + value 2; + description + "MD5-Digest HTTP auth"; + } + } + description + "Pce api authentication"; + } + + typedef Pcep2mp-algorithm { + type enumeration { + enum "base" { + value 0; + description + "Base Algorithm type"; + } + enum "optimized" { + value 1; + description + "Optimized Algorithm type"; + } + } + description + "Pcep2mp algorithm"; + } + + typedef Pce-cumulative-metric { + type enumeration { + enum "latency" { + value 12; + description + "Latency metric type"; + } + } + description + "Pce cumulative metric"; + } + + typedef Xtc-adj-sid-protection { + type enumeration { + enum "protected-preferred" { + value 0; + description + "Protected adj SID preferred"; + } + enum "unprotected-only" { + value 1; + description + "Unprotected adj SID only"; + } + enum "protected-only" { + value 2; + description + "Protected adj SID only"; + } + enum "unprotected-preferred" { + value 3; + description + "Unprotected adj SID preferred"; + } + } + description + "Xtc adj sid protection"; + } + + typedef Pce-path-hop { + type enumeration { + enum "mpls" { + value 1; + description + "Segment-routing MPLS"; + } + enum "srv6" { + value 2; + description + "Segment-routing v6"; + } + } + description + "Pce path hop"; + } + + typedef Pce-path { + type enumeration { + enum "explicit" { + value 1; + description + "Explicit"; + } + enum "dynamic" { + value 2; + description + "Dynamic"; + } + } + description + "Pce path"; + } + + typedef Pce-disjoint-path { + type enumeration { + enum "link" { + value 1; + description + "Link"; + } + enum "node" { + value 2; + description + "Node"; + } + enum "srlg" { + value 3; + description + "SRLG"; + } + enum "srlg-node" { + value 4; + description + "SRLG Node"; + } + } + description + "Pce disjoint path"; + } + + typedef Pce-end-point { + type enumeration { + enum "end-point-type-ipv4" { + value 1; + description + "IPv4 endpoint address"; + } + enum "end-point-type-ipv6" { + value 2; + description + "IPv6 endpoint address"; + } + } + description + "Pce end point"; + } + + typedef Pce-binding-sid { + type enumeration { + enum "mpls-label-specified" { + value 1; + description + "Use specified BSID MPLS label"; + } + enum "mpls-label-any" { + value 2; + description + "Allocate BSID MPLS label"; + } + } + description + "Pce binding sid"; + } + + typedef Pce-metric { + type enumeration { + enum "igp" { + value 1; + description + "IGP metric type"; + } + enum "te" { + value 2; + description + "TE metric type"; + } + enum "hopcount" { + value 3; + description + "Hopcount metric type"; + } + enum "latency" { + value 12; + description + "Latency metric type"; + } + } + description + "Pce metric"; + } + + typedef Pce-address-family { + type enumeration { + enum "af-type-ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "af-type-ipv6" { + value 2; + description + "IPv6 address family"; + } + } + description + "Pce address family"; + } + + typedef Pce-path-selection { + type enumeration { + enum "protected" { + value 0; + description + "protected"; + } + enum "unprotected" { + value 1; + description + "unprotected"; + } + } + description + "Pce path selection"; + } + + grouping SHUTDOWN { + description + "Common node of p2mp-policy, policy"; + leaf shutdown { + type empty; + description + "Administratively shutdown policy"; + } + } + + grouping METRIC { + description + "Common node of path-info, p2mp-path-info"; + container metric { + presence "CLI submode compatibility."; + description + "Metric configuration, valid only for dynamic + path-options"; + leaf metric-type { + type Pce-metric; + description + "Metric type"; + } + leaf sid-limit { + type uint32 { + range "1..255"; + } + description + "SID limit value"; + } + leaf enable { + type empty; + description + "True only"; + } + } + } + + grouping CONSTRAINTS { + description + "Common node of preference, pce"; + container constraints { + description + "SR path computation and verification constraints"; + container bounds { + description + "Bound related configuration"; + container bounds { + description + "Path computation and verification metric + bounds"; + list bound { + key "scope-type metric-type"; + description + "Path computation and verification metric + bound"; + leaf scope-type { + type Pce-bound-scope; + description + "Scope of the bound"; + } + leaf metric-type { + type Pce-cumulative-metric; + description + "Metric type to bound"; + } + leaf bound-value { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Metric Bound Value"; + } + } + } + } + container segment-rules { + description + "SR path computation segment specific rules"; + leaf protection-type { + type Xtc-adj-sid-protection; + description + "Protection Type"; + } + leaf sid-algorithm { + type uint32 { + range "0..255"; + } + description + "Prefix-SID algorithm"; + } + } + } + } + + grouping P2MPFRR-NODE-SET-ADDRESS-TABLE { + description + "Common node of p2mpfrr-node-set-from, + p2mpfrr-node-set-to"; + container p2mpfrr-node-set-addresses { + description + "P2MP frr-node-set address table"; + list p2mpfrr-node-set-address { + key "af-type endpoint-address"; + description + "P2MP frr-node-set address configuration"; + leaf af-type { + type Pce-address-family; + description + "FRR node address-family type"; + } + leaf endpoint-address { + type inet:ip-address-no-zone; + description + "FRR node address"; + } + } + } + } + + grouping AFFINITY-RULE-TABLE { + description + "Common node of candidate-paths, p2mp-constraints"; + container affinity-rules { + description + "Affinity rule table"; + list affinity-rule { + key "rule aff-value"; + description + "Affinity rule"; + leaf rule { + type uint32 { + range "0..2"; + } + description + "affinity rule"; + } + leaf aff-value { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "affinity value"; + } + } + } + } + + container pce { + presence "CLI submode compatibility."; + description + "PCE configuration data"; + container authentication-option { + presence "Indicates a authentication-option node is configured."; + description + "Configure global AO keychain based + authentication"; + leaf keychain { + type string { + length "1..32"; + } + mandatory true; + description + "Name of the keychain"; + } + leaf include-tcp-options { + type boolean; + description + "Include other TCP options in the header"; + } + leaf accept-mismatch-connection { + type boolean; + description + "Accept new connection even if Authentication + Option mismatched"; + } + } + container ipv6-state-syncs { + description + "Standby IPv6 PCE configuration"; + list ipv6-state-sync { + key "address"; + description + "Standby PCE ipv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + } + } + container pcc-addresses { + description + "Path computation client configuration"; + list pcc-address { + key "address"; + description + "Path computation client address"; + container lsp-names { + description + "MPLS label switched path"; + list lsp-name { + key "name"; + description + "MPLS label switched path"; + container rsvp-te { + presence "CLI submode compatibility."; + description + "RSVP-TE configuration"; + container affinity { + description + "LSP Affinity"; + leaf include-any { + type xr:Hex-integer; + description + "Include-any affinity value"; + } + leaf include-all { + type xr:Hex-integer; + description + "Include-all affinity value"; + } + leaf exclude-any { + type xr:Hex-integer; + description + "Exclude-any affinity value"; + } + } + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel Setup and Hold Priorities"; + leaf setup-priority { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Setup Priority"; + } + leaf hold-priority { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Hold Priority"; + } + } + leaf fast-protect { + type empty; + description + "Enable fast protection"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + mandatory true; + description + "Bandwidth configuration"; + } + } + leaf undelegate { + type empty; + description + "Undelegate LSP"; + } + leaf explicit-path-name { + type string; + mandatory true; + description + "Explicit-path name"; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "LSP name"; + } + } + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + } + container logging { + description + "PCE logging configuration"; + container rest-logging { + description + "REST logging configuration"; + leaf send-queue-congestion { + type Pce-loggging-disabled; + description + "Logging of send queue congestion messages"; + } + } + leaf no-path { + type empty; + description + "Logging NO-PATH configuration"; + } + leaf pcerr { + type empty; + description + "Logging of received PCErr messages"; + } + leaf fallback { + type empty; + description + "Logging fallback configuration"; + } + leaf disjointness-status { + type empty; + description + "Logging of disjointness status related messages"; + } + } + container backoff { + presence "Indicates a backoff node is configured."; + description + "PCE backoff configuration"; + leaf ratio { + type uint32 { + range "0..255"; + } + default "2"; + description + "Backoff common ratio configuration"; + } + leaf threshold { + type uint32 { + range "0..3600"; + } + default "0"; + description + "Backoff threshold configuration"; + } + leaf difference { + type uint32 { + range "0..255"; + } + default "2"; + description + "Backoff common difference configuration"; + } + } + container trace-counts { + description + "Configure PCE trace options"; + list trace-count { + key "buffer-name"; + description + "Trace count for provided buffer"; + leaf buffer-name { + type xr:Cisco-ios-xr-string { + length "1..15"; + } + description + "Buffer name"; + } + leaf trace-count { + type uint32 { + range "0..1000000"; + } + mandatory true; + description + "Trace count"; + } + } + } + container pce-peers { + description + "PCE peer configuration"; + list pce-peer { + key "af-type pce-address"; + description + "PCE peer"; + container authentication-option { + presence "Indicates a authentication-option node is configured."; + description + "Configure Peer AO keychain based + authentication"; + leaf keychain { + type string { + length "1..32"; + } + mandatory true; + description + "Name of the keychain"; + } + leaf include-tcp-options { + type boolean; + description + "Include other TCP options in the header"; + } + leaf accept-mismatch-connection { + type boolean; + description + "Accept new connection even if Authentication + Option mismatched"; + } + } + leaf password { + type xr:Proprietary-password; + description + "PCE Peer MD5 Password"; + } + leaf af-type { + type Pce-address-family; + description + "Peer address-family type"; + } + leaf pce-address { + type inet:ip-address-no-zone; + description + "Remote PCE address"; + } + } + } + container hierarchical { + presence "CLI submode compatibility."; + description + "Configure hierarchical policy computation - + DEPRECATED"; + container underlay { + presence "CLI submode compatibility."; + description + "Configure underlay tunnels - DEPRECATED"; + leaf enable-all { + type empty; + description + "Use all available tunnels as underlay - + DEPRECATED"; + } + } + } + container api { + presence "CLI submode compatibility."; + description + "Northbound API configuration"; + container api-ipv6 { + description + "IPv6 API configuration"; + leaf api-ipv6-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address of API server"; + } + } + container api-ipv4 { + description + "IPv4 API configuration"; + leaf api-ipv4-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of API server"; + } + } + container api-timers { + description + "API timers configuration"; + container send-queue { + description + "REST peer send queue configuration"; + leaf check-interval { + type uint32 { + range "1..3600"; + } + units "second"; + default "1"; + description + "How often to check if peer queue is being + drained"; + } + leaf expiration { + type uint32 { + range "30..3600"; + } + units "second"; + default "300"; + description + "How long to wait before API session is + disconnected if data are not drained from + send queue"; + } + } + } + container api-users { + description + "Northbound API authorized users configuration"; + list api-user { + key "name"; + description + "API authorized user"; + leaf api-user-password { + type xr:Proprietary-password; + description + "API user password configuration"; + } + leaf name { + type string; + description + "User name"; + } + } + } + container send-queue-size { + description + "API peer send queue size configuration"; + leaf per-peer { + type uint32 { + range "1..1024"; + } + default "400"; + description + "Threshold value in MiB"; + } + leaf global { + type uint32 { + range "1..4096"; + } + default "1024"; + description + "Size limit for send queue of all peers"; + } + } + leaf sibling { + type inet:ip-address-no-zone; + description + "Address of sibling PCE"; + } + leaf api-authentication { + type Pce-api-authentication; + description + "API authentication type"; + } + leaf api-vrf { + type xr:Cisco-ios-xr-string { + length "1..33"; + } + description + "API Interface vrf configuration"; + } + } + container state-syncs { + description + "Standby IPv4 PCE configuration"; + list state-sync { + key "address"; + description + "Standby PCE ipv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + } + container segment-routing { + description + "PCE segment-routing configuration"; + container traffic-engineering { + presence "CLI submode compatibility."; + description + "Traffic Engineering configuration data"; + container affinity-bits { + description + "Affinity Bit-map"; + list affinity-bit { + key "color-name"; + description + "Affinity Bit"; + leaf color-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Color Name"; + } + leaf bit { + type uint32 { + range "0..255"; + } + mandatory true; + description + "The bit"; + } + } + } + container peers { + description + "Peer configuration"; + list peer { + key "peer-addr"; + description + "Peer configuration"; + container policies { + description + "Policy configuration"; + list policy { + key "policy-name"; + description + "Policy configuration"; + container binding-sid { + description + "Binding Segment ID"; + leaf binding-sid-type { + type Pce-binding-sid; + description + "Binding SID type"; + } + leaf mpls-label { + when "../binding-sid-type = 'mpls-label-specified'" { + description + "../BindingSIDType = MPLSLabelSpecified"; + } + type uint32 { + range "16..1048575"; + } + description + "MPLS Label"; + } + } + container color-endpoint { + description + "Color and Endpoint"; + leaf color { + type uint32 { + range "1..4294967295"; + } + description + "Color"; + } + leaf end-point-type { + type Pce-end-point; + description + "End point type"; + } + leaf end-point-address { + type inet:ip-address-no-zone; + description + "End point address"; + } + } + container candidate-paths { + presence "CLI submode compatibility."; + description + "Policy candidate-paths configuration"; + container append-sid { + description + "Append a specific SID to the computed + label stack"; + leaf append-sid-type { + type Pce-append-sid; + description + "AppendSID type"; + } + leaf mpls-label { + when "../append-sid-type = 'mpls-label'" { + description + "../AppendSIDType = MPLSLabel"; + } + type uint32 { + range "1..1048575"; + } + description + "MPLS Label"; + } + } + container preferences { + description + "Policy path-option preference table"; + list preference { + key "path-index"; + description + "Policy path-option preference entry"; + container path-infos { + description + "Policy path-option preference + configuration"; + list path-info { + key "type hop-type segment-list-name"; + description + "Policy configuration"; + leaf type { + type Pce-path; + description + "Path-option type"; + } + leaf hop-type { + type Pce-path-hop; + description + "Type of dynamic path to be computed"; + } + leaf segment-list-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Segment-list name"; + } + uses METRIC; + } + } + leaf path-index { + type uint32 { + range "1..65535"; + } + description + "Path-option preference"; + } + uses CONSTRAINTS; + } + } + uses AFFINITY-RULE-TABLE; + } + leaf profile-id { + type uint32 { + range "1..65534"; + } + description + "Profile-ID to send to the PCC"; + } + leaf path-selection { + type Pce-path-selection; + description + "Path selection type"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Policy name"; + } + uses SHUTDOWN; + } + } + leaf peer-addr { + type inet:ip-address-no-zone; + description + "Peer address"; + } + } + } + container path { + description + "Path configuration"; + container disable-algorithm-check { + description + "Path algorithm check configuration"; + container strict-spf { + description + "Disable SID algorithm check for Strict SPF"; + container areas { + description + "List of disabled areas"; + list area { + key "area-id protocol"; + description + "IGP area"; + leaf area-id { + type uint32; + description + "Area identifier"; + } + leaf protocol { + type Pce-path-algo-check-igp-protocol; + description + "IGP protocol"; + } + } + } + leaf all { + type empty; + description + "Disable check for all IGP areas"; + } + } + } + } + container cspf { + description + "Path computation configuration"; + container anycast-sid-inclusion { + presence "CLI submode compatibility."; + description + "Enable Anycast SID Inclusion for all policies"; + } + container sr-native { + presence "CLI submode compatibility."; + description + "Use SR native algorithm"; + leaf force { + type empty; + description + "Use algorithm for all path computation"; + } + } + } + container p2mp { + description + "P2MP configuration"; + container p2mp-label-range { + presence "Indicates a p2mp-label-range node is configured."; + description + "Specify label range for dynamic P2MP policies"; + leaf minimum { + type uint32 { + range "16..1048575"; + } + mandatory true; + description + "Minimum value of label range"; + } + leaf maximum { + type uint32 { + range "16..1048575"; + } + mandatory true; + description + "Maximum value of label range"; + } + } + container p2mp-policies { + description + "P2MP policy configuration"; + list p2mp-policy { + key "policy-name"; + description + "P2MP policy configuration"; + container p2mp-color-endpoint-set { + description + "Color and endpoint-set"; + leaf color { + type uint32 { + range "1..4294967295"; + } + description + "Color"; + } + leaf endpoint-set-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Endpoint set name"; + } + } + container p2mp-source { + description + "Source address"; + leaf af-type { + type Pce-address-family; + description + "Address-family type"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source IP address"; + } + } + container p2m-ptree-sid { + description + "TreeSID value"; + leaf tree-sid { + type Pce-tree-sid; + description + "TreeSID type"; + } + leaf mpls-label { + when "../tree-sid = 'mpls-label'" { + description + "../TreeSID = MPLSLabel"; + } + type uint32 { + range "16..1048575"; + } + description + "MPLS Label"; + } + } + container p2mp-candidate-paths { + description + "Policy candidate-paths configuration"; + container p2mp-preferences { + description + "Policy path-option preference table"; + list p2mp-preference { + key "path-index"; + description + "Policy path-option preference entry"; + container p2mp-path-infos { + description + "Policy path-option preference + configuration"; + list p2mp-path-info { + key "type hop-type segment-list-name"; + description + "Policy configuration"; + leaf type { + type Pce-path; + description + "Path-option type"; + } + leaf hop-type { + type Pce-path-hop; + description + "Type of dynamic path to be computed"; + } + leaf segment-list-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Segment-list name"; + } + uses METRIC; + } + } + leaf path-index { + type uint32 { + range "100"; + } + description + "Path-option preference"; + } + } + } + container p2mp-constraints { + description + "Policy path contraints configuration"; + uses AFFINITY-RULE-TABLE; + } + } + leaf p2mp-policy-fast-reroute { + type Pcep2mp-fast-reroute; + description + "Enable Fast Re-route protection for this + tree"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Policy name"; + } + uses SHUTDOWN; + } + } + container p2mpfrr-node-set-from { + presence "CLI submode compatibility."; + description + "Nodes from which adjacencies are to be + protected"; + uses P2MPFRR-NODE-SET-ADDRESS-TABLE; + } + container p2mpfrr-node-set-to { + presence "CLI submode compatibility."; + description + "Nodes to which adjacencies are to be + protected"; + uses P2MPFRR-NODE-SET-ADDRESS-TABLE; + } + container p2mp-endpoint-sets { + description + "P2MP endpoint-set table"; + list p2mp-endpoint-set { + key "endpoint-set-name"; + description + "P2MP endpoint-set configuration"; + container p2mp-endpoint-set-addresses { + description + "P2MP endpoint-set address table"; + list p2mp-endpoint-set-address { + key "af-type endpoint-address"; + description + "P2MP endpoint-set address configuration"; + leaf af-type { + type Pce-address-family; + description + "Endpoint address-family type"; + } + leaf endpoint-address { + type inet:ip-address-no-zone; + description + "Endpoint address"; + } + } + } + leaf endpoint-set-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Endpoint set name"; + } + } + } + container p2mp-timers { + description + "P2MP timers configuration"; + leaf p2mp-timers-cleanup { + type uint32 { + range "1..86400"; + } + units "second"; + description + "Delay before node is excluded from P2MP path + computation after PCEP connection with it + goes away"; + } + leaf p2mp-timers-reoptimization { + type uint32 { + range "60..3600"; + } + units "second"; + description + "How often to reoptimize all P2MP paths"; + } + } + leaf p2mp-algorithm { + type Pcep2mp-algorithm; + description + "Computation Algorithm"; + } + leaf p2mp-fast-reroute { + type Pcep2mp-fast-reroute; + description + "Enable Fast Re-route protection for all trees"; + } + leaf p2mp-multipath-disable { + type empty; + description + "Disable load balancing of SR P2MP across ECMP + paths"; + } + } + container segments { + description + "Segment-lists configuration"; + list segment { + key "path-name"; + description + "Segment-list configuration"; + container segments { + description + "Segments/hops configuration for given + Segment-list"; + list segment { + key "segment-index"; + description + "Configure Segment/hop at the index"; + leaf segment-index { + type uint32 { + range "1..65535"; + } + description + "Segment index"; + } + leaf segment-type { + type Pce-segment; + description + "Segment/hop type"; + } + leaf address { + when "../segment-type = 'ipv4-address' or ../segment-type = 'ipv4-adjacency-address'" { + description + "../SegmentType = IPv4Address or . + ./SegmentType = IPv4AdjacencyAddress"; + } + type inet:ipv4-address-no-zone; + description + "IPv4 Address"; + } + leaf mpls-label { + when "../segment-type = 'mpls-label'" { + description + "../SegmentType = MPLSLabel"; + } + type uint32 { + range "0..1048575"; + } + description + "MPLS Label"; + } + leaf adjacency-address { + type inet:ipv4-address-no-zone; + description + "IPv4 Adjacency Address"; + } + leaf address-type { + when "../segment-type = 'ipv4-adjacency-address'" { + description + "../SegmentType = IPv4AdjacencyAddress"; + } + type uint32 { + range "0..32"; + } + description + "IP address types"; + } + leaf interface-identifier { + type uint32 { + range "1..65535"; + } + description + "Interface Identifier"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "Prefix Length"; + } + leaf validate-flag { + type uint32 { + range "0..1"; + } + description + "Validate No Validate"; + } + } + } + leaf path-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Segment-list name"; + } + } + } + } + leaf te-latency { + type empty; + description + "Use te-latency algorithm configuration"; + } + leaf strict-sid-only { + type empty; + description + "Use strict-sid-only configuration"; + } + } + container timers { + presence "Indicates a timers node is configured."; + description + "PCE Timers configuration"; + leaf initial-verify-restart { + type uint32 { + range "10..10000"; + } + units "second"; + default "40"; + description + "Timer to wait for topology convergence after + topology starts populating for restart case"; + } + leaf peer-zombie { + type uint32 { + range "0..3600"; + } + units "second"; + default "60"; + description + "Timer value in seconds 0-3600. Use 0 to disable + . Default is 60."; + } + leaf initial-verify-startup { + type uint32 { + range "10..10000"; + } + units "second"; + default "180"; + description + "Timer to wait for topology convergence after + topology starts populating for startup case"; + } + leaf reoptimization-timer { + type uint32 { + range "600..86400"; + } + units "second"; + default "1800"; + description + "Topology reoptimization timer configuration"; + } + leaf initial-verify-switchover { + type uint32 { + range "10..10000"; + } + units "second"; + default "60"; + description + "Timer to wait for topology convergence after + topology starts populating for switchover case"; + } + leaf keepalive { + type uint32 { + range "0..255"; + } + units "second"; + default "30"; + description + "Keepalive interval in seconds, zero to disable"; + } + leaf minimum-peer-keepalive { + type uint32 { + range "0..255"; + } + units "second"; + default "20"; + description + "Minimum acceptable peer proposed keepalive + interval"; + } + } + container override-rule { + description + "Configure override rules"; + container sequences { + description + "Configure sequence number. Lower number means + higher priority"; + list sequence { + key "sequence-num"; + description + "Configure sequence number. Lower number means + higher priority"; + container matching-criteria { + description + "Configure matching criteria"; + container override-peer { + description + "Configure originating peer address to be + matched (original PCC address in case of + state-sync)."; + container accesses { + description + "Access-list specifying peers to be matched"; + list access { + key "address-family"; + description + "Access-list specifying peers to be matched"; + leaf address-family { + type Pce-address-family; + description + "Address Family"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Name"; + } + } + } + leaf all-peers { + type empty; + description + "All PCEP peers"; + } + } + container lsp { + description + "Configure SR policy candidate-path to be + matched"; + leaf colors { + type string { + length "1..1024"; + } + description + "List of SR policy colors in the form a-b,c + ,d,e-f,g"; + } + leaf all-ls-ps { + type empty; + description + "All SR policy candidate-paths"; + } + leaf name-regex { + type string { + length "1..1024"; + } + description + "Regular expression to match LSP symbolic + name"; + } + } + } + container override { + description + "Configure SR policy candidate-path attributes + and constraints to be overridden"; + container override-metric { + description + "Configure candidate-path metric type + override"; + leaf metric-type { + type Pce-metric; + description + "Metric type to be used for matched + candidate-paths"; + } + } + container override-constraints { + description + "Configure candidate-path constraints + override"; + container override-segments { + description + "Configure candidate-path constraints + segments override"; + leaf override-sid-algo { + type uint32 { + range "0..255"; + } + description + "'0' for regular SIDs, '1' for strict-spf + SIDs, '128' - '255' for flexible algorithm + SIDs"; + } + leaf protection-type { + type Xtc-adj-sid-protection; + description + "Protection Type"; + } + } + leaf override-bandwidth { + type uint32 { + range "1..4294967295"; + } + units "kbit/s"; + description + "Modify bandwidth value for matched + candidate-paths"; + } + } + } + leaf sequence-num { + type uint32 { + range "1..4294967295"; + } + description + "Sequence"; + } + } + } + } + container netconf { + presence "CLI submode compatibility."; + description + "NETCONF configuration"; + container netconf-ssh { + description + "NETCONF SSH configuration"; + leaf netconf-ssh-password { + type xr:Proprietary-password; + description + "Password to use for NETCONF SSH connections"; + } + leaf netconf-ssh-user { + type string; + description + "User name to use for NETCONF SSH connections"; + } + } + } + container cspf-global { + description + "CSPF configuration"; + leaf cspf-cache-size { + type uint32 { + range "100..100000"; + } + description + "Configure maximum size of the CSPF cache size + in MiB"; + } + } + container disjoint-path { + presence "CLI submode compatibility."; + description + "Disjoint path configuration"; + container groups { + description + "Association configuration"; + list group { + key "group-id dp-type sub-id"; + description + "Association Group Configuration"; + container group-lsp-records { + description + "lsp pcc records container with in group"; + list group-lsp-record { + key "lsp-id"; + description + "LSP first/second PCC record tuple + containingAF, IpAddr, LspName, DisjPath"; + leaf lsp-id { + type uint32 { + range "1..2"; + } + description + "Lsp id"; + } + leaf af-type { + type Pce-address-family; + description + "Address-family type"; + } + leaf ip-addr { + type inet:ip-address-no-zone; + description + "PCC IP address"; + } + leaf lsp-name { + type string; + description + "Identifying name for LSP"; + } + leaf disj-path { + type uint32 { + range "0..1"; + } + description + "Set to 1 to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "0..4294967295"; + } + description + "SRLG value to be excluded, value 0 means no + exclusion"; + } + } + } + leaf strict { + type empty; + description + "Disable Fallback"; + } + leaf group-id { + type uint32 { + range "1..65535"; + } + description + "Group ID"; + } + leaf dp-type { + type Pce-disjoint-path; + description + "Disjointness type"; + } + leaf sub-id { + type uint32 { + range "0..65535"; + } + description + "Sub group ID, 0 to unset"; + } + } + } + leaf maximum-attempts { + type uint32 { + range "1..100000"; + } + description + "Maximum number of attempts during disjoint path + computation (default: 1000)"; + } + } + container peer-filter { + description + "Peer filter"; + leaf ipv4-acl { + type string; + description + "IPv4 ACL for peer filtering"; + } + } + leaf server-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of PCE server"; + } + leaf ipv6-server-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address of PCE server"; + } + leaf password { + type xr:Proprietary-password; + description + "MD5 password"; + } + uses CONSTRAINTS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub1.yang new file mode 100644 index 000000000..dba0c5072 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub1.yang @@ -0,0 +1,5070 @@ +submodule Cisco-IOS-XR-infra-xtc-oper-sub1 { + belongs-to Cisco-IOS-XR-infra-xtc-oper { + prefix Cisco-IOS-XR-infra-xtc-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-xtc package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-06-20 { + description + "Display override rule override for SID protection-type constraint. + 2023-04-06 + Add a field to differentiate SRv6 path in path work group + 2023-03-30 + Changed work group operational data to use an ID based system as the key instead of a complex set of attributes. + 2023-03-21 + Added SID-algo in override rule + 2023-03-09 + Added protection type for path work group + 2023-01-24 + Added fields for Flex-algo ASLA attributes on IPv4 and IPv6 links + 2023-01-18 + Updated description of flex-algo leaf to SID algorithm in cspf-sr-mpls. + 2022-10-20 + Added initiated tunnel operational information including PCE-INITIATED-TUN-BAG grouping. + 2022-09-01 + Added field to display p2mp rest initiated treeSID. + 2022-07-29 + changed default value of initial-verify-startup timer from 120 seconds to 180 seconds. + 2022-07-11 + Added leaves for blocked reoptimization and adjacency SID only + 2022-06-28 + Added weight outputs to srv6 nexthop and lsp sls. + 2022-06-02 + Removed prefix-metric entry from the topology node. + 2022-05-13 + TreeSID PCE HA, added few fields on oper commands + 2022-04-29 + Added some field in oper bag for Dynamic CS policies + 2022-04-26 + TreeSID PCE HA, oper enhancements + 2022-03-09 + Pce-sr-sid enum updated to add unknown-srv6sid element + 2022-03-03 + Modified description for override rules related leaves + 2022-03-03 + Added capability-srv6 in brief-pcep-information container + 2022-02-24 + Added PCE-BWOD-BEST-CLIENT-BAG and PCE-BWOD-SUB-DELEGATION-BAG grouping. + 2022-01-28 + Added maximum-delay in PCE-LSP-DETAIL-INFO grouping. + 2022-01-27 + Adding performance-statistics class + 2022-01-17 + Change the type of extended-value leaf from leaf-list to list. + 2022-01-14 + Added support for metric bounds for CSPF + 2022-01-10 + Added sid-algorithm and sid-algorithm-set in PCE-SIBLING-SYNCED-LSP-BAG grouping. Added sid-algorithm and sid-algorithm-set in PCE-LSP-DETAIL-INFO grouping. + 2022-01-07 + Added SID algorithm constraint to LSP. + 2021-12-14 + Moving algorithm and computation time in the path query results object + 2021-11-21 + Added prefix-metric entry in the topology node. + 2021-11-09 + Added unreliable flag and update drop count in topology summary bag. + 2021-10-21 + Adding algorithm and computation time to path query results + 2021-10-08 + Added support for override rules"; + semver:module-version "5.0.0"; + } + revision 2021-09-28 { + description + "Added protection type set in candidate path constraints. + 2021-08-27 + Added binding-sid to pce sibling synced lsp. + 2021-06-21 + un-hide cspf-srv6 option in cspf srv6 path calculation. + 2021-05-26 + Added keys to topology-summary list."; + semver:module-version "4.0.0"; + } + revision 2021-04-22 { + description + "Added TE metric field for Flex-algo ASLA. + 2021-04-08 + Change protection type from integer to enum. + 2021-03-31 + Added new enumeration Api-peer-stats-info-oper. Changed type of type in API-PEER-STATS-INFO to use Api-peer-stats-info-oper. This is a non backward compatible change. + 2021-03-04 + Added MSD list per topology link. Added SRLB list per topology node. + 2021-01-29 + Updated SRv6 Endpoint function from int to enum. + 2020-09-16 + Adding operational nodes for new features path invalidation drop protected and unprotected path Operational nodes for PCE segment-routing traffic-eng policy + 2020-09-01 + Added uB6SID field in the LSP object + 2020-08-18 + Added SRv6 LSP details fields in the LSP object + 2020-07-13 + Added NodeID fields in the uN SID object in the IPv6 topology. + 2020-04-20 + Added fields in the PCE IPv6 link object."; + semver:module-version "3.0.0"; + } + revision 2020-03-17 { + description + "Add flex-algo related operational nodes. Updated description of statistics-nodes. Add SR-PAG related operational nodes. Add PCE authentication related operational nodes. + 2020-02-03 + Added TCP AuthenticationOption related operational model. Implemented show pce authentication. Added classes AuthenticationKeyTable and AuthenticationKey. + 2019-11-07 + Adding leaf preference, leaf interface-name, and leaf profile-id to support a new HTTP API bindpoint for sibling PCEs. + 2019-10-09 + Adding enum sr-flex-algo-prefix-sid, enum pce-cspf-flex-algo-definition-mistmatch, leaf flex-algo-prefix-sids, list sr-flex-algo, and container flex-algos to support Flex-algo info."; + semver:module-version "2.0.0"; + } + revision 2019-10-02 { + description + "Added REST peer statistic information. + 2019-09-27 + Implement new show pce lsp and show pce initiated tunnels commands for Optima"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-08-24 { + description + "Added C flag to pcep flags."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-05-31 { + description + "Revision description string."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nbapi-peer-state { + type enumeration { + enum "api-peer-state-down" { + value 0; + description + "Operational status down"; + } + enum "api-peer-state-up" { + value 1; + description + "Operational status up"; + } + } + description + "Nbapi peer state"; + } + + typedef Api-peer-stats-info-oper { + type enumeration { + enum "api-operation-invalid" { + value 0; + description + "Invalid operation"; + } + enum "api-operation-lsp-create" { + value 1; + description + "LSP create"; + } + enum "api-operation-lsp-reclaim-delegation" { + value 2; + description + "LSP reclaim delegation"; + } + enum "api-operation-lsp-drop-delegation" { + value 3; + description + "LSP drop delegation"; + } + enum "api-operation-lsp-update" { + value 4; + description + "LSP update"; + } + enum "api-operation-lsp-delete" { + value 5; + description + "LSP delete"; + } + enum "api-operation-lsp-delete-all" { + value 6; + description + "LSP delete all"; + } + enum "api-operation-lsp-computation" { + value 7; + description + "LSP compute"; + } + enum "api-operation-lsp-subscription" { + value 8; + description + "LSP subscrube"; + } + enum "api-operation-topology-subscription" { + value 9; + description + "Topology subscribe"; + } + enum "api-operation-topology-subscriptionv2" { + value 10; + description + "Topology subscribe version 2"; + } + enum "api-operation-peer-subscription" { + value 11; + description + "Peer subscribe"; + } + enum "api-operation-bwod-subscription" { + value 12; + description + "BWoD subscribe"; + } + enum "api-operation-p2mp-install" { + value 13; + description + "P2MP install"; + } + enum "api-operation-p2mp-delete" { + value 14; + description + "P2MP delete"; + } + enum "api-operation-p2mp-delete-all" { + value 15; + description + "P2MP delete all"; + } + enum "api-operation-p2mp-reoptimization" { + value 16; + description + "P2MP reoptimization"; + } + enum "api-operation-p2mp-get-information" { + value 17; + description + "P2MP get information"; + } + enum "api-operation-p2mp-subscription" { + value 18; + description + "P2MP subscribe"; + } + enum "api-operation-external-lsp" { + value 19; + description + "External LSP"; + } + enum "api-operation-topology-link-attribute" { + value 20; + description + "Topology link attribute update"; + } + enum "api-operationversion" { + value 21; + description + "API version"; + } + enum "api-operation-maximum" { + value 22; + description + "Maximum value"; + } + } + description + "Api peer stats info oper"; + } + + typedef Pce-headend-swap { + type enumeration { + enum "pcehs-none" { + description + "Headends not swapped"; + } + enum "pcehs-plain" { + description + "Headends swapped"; + } + enum "pcehs-rwi" { + description + "Headends swapped with increment"; + } + } + description + "PCE Headends Swap Code"; + } + + typedef Cmn-protection { + type enumeration { + enum "cmn-protection-type-protected-preferred" { + description + "Protected Preferred"; + } + enum "cmn-protection-type-unprotected-only" { + description + "Unprotected Only"; + } + enum "cmn-protection-type-protected-only" { + description + "Protected Only"; + } + enum "cmn-protection-type-unprotected-preferred" { + description + "Unprotected Preferred"; + } + } + description + "Cmn protection"; + } + + typedef Path-work-node { + type enumeration { + enum "path-work-bag-node-type-work" { + value 0; + description + "work"; + } + enum "path-work-bag-node-type-worker-prio-1" { + value 1; + description + "reoptimization worker"; + } + enum "path-work-bag-node-type-region" { + value 2; + description + "region"; + } + } + description + "Path work node type"; + } + + typedef Pce-treesid-state { + type enumeration { + enum "none" { + description + "No state"; + } + enum "programming" { + description + "Programming non-root nodes"; + } + enum "programming-root" { + description + "Programming the root node"; + } + enum "pruning" { + description + "Pruning stale legs on non-root nodes"; + } + enum "pruning-root" { + description + "Pruning stale legs on root node"; + } + enum "deleting" { + description + "TreeSID is being deleted"; + } + } + description + "Pce treesid state"; + } + + typedef Pce-treesid-role { + type enumeration { + enum "none" { + description + "No role"; + } + enum "ingress" { + description + "Ingress"; + } + enum "transit" { + description + "Transit"; + } + enum "egress" { + description + "Egress"; + } + enum "bud-node" { + description + "Bud Node"; + } + } + description + "Pce treesid role"; + } + + typedef Sr-computation-algorithm { + type enumeration { + enum "computation-sr-native" { + description + "SR Native"; + } + enum "computation-igp" { + description + "SR IGP"; + } + enum "computation-dijkstra" { + description + "Dijkstra"; + } + enum "computation-k-shortest" { + description + "K shortest"; + } + enum "computation-flex-algo" { + description + "Flex Algo"; + } + enum "computation-suurballe" { + description + "Suurballe"; + } + enum "computation-bellman-ford" { + description + "Bellman Ford"; + } + enum "computation-rsvp" { + description + "RSVP Computation"; + } + } + description + "Path Computation Algorithm"; + } + + typedef Pce-cspf-rc { + type enumeration { + enum "pce-cspf-not-set" { + description + "Not set"; + } + enum "pce-cspf-src-not-found" { + description + "Source not found"; + } + enum "pce-cspf-dst-not-found" { + description + "Destination not found"; + } + enum "pce-cspf-second-src-not-found" { + description + "Second source not found"; + } + enum "pce-cspf-second-dst-not-found" { + description + "Second destination not found"; + } + enum "pce-cspf-no-mem" { + description + "No memory"; + } + enum "pce-cspf-ex-path-not-resolved" { + description + "Second path not resolved"; + } + enum "pce-cspf-no-path" { + description + "No path"; + } + enum "pce-cspf-sp-success" { + description + "Shortest path success"; + } + enum "pce-cspf-error" { + description + "Error"; + } + enum "pce-cspf-fallback-srlg-node-node" { + description + "Fallback from SRLG-NODE to NODE"; + } + enum "pce-cspf-fallback-srlg-node-link" { + description + "Fallback from SRLG-NODE to LINK"; + } + enum "pce-cspf-fallback-srlg-node-sp" { + description + "Fallback from SRLG-NODE to SP"; + } + enum "pce-cspf-fallback-node-link" { + description + "Fallback from NODE to LINK"; + } + enum "pce-cspf-fallback-link-sp" { + description + "Fallback from LINK to SP"; + } + enum "pce-cspf-fallback-node-sp" { + description + "Fallback from NODE to SP"; + } + enum "pce-cspf-fallback-srlg-link" { + description + "Fallback from SRLG to LINK"; + } + enum "pce-cspf-fallback-srlg-sp" { + description + "Fallback from SRLG to SP"; + } + enum "pce-cspf-dp-success" { + description + "Disjoint path success"; + } + enum "pce-cspf-flex-algo-definition-mistmatch" { + description + "Flex-algo definition mistmatch across IGP + domain"; + } + enum "pce-cspf-latency-bound-exceeded" { + description + "Latency bound exceeded for computed path"; + } + enum "pce-cspf-flex-algo-unsupported" { + description + "Flex-algo based path computation unsupported"; + } + enum "pce-cspf-sid-algorithm-argument-invalid" { + description + "SID algorithm number is invalid"; + } + enum "pce-cspf-flex-algo-definition-unsupported" { + description + "Flex-algo definition unsupported"; + } + enum "pce-cspf-flex-algo-definition-not-found" { + description + "Flex-algo definition not found"; + } + enum "pce-cspf-msd-exceeded" { + description + "MSD exceeded for computed path"; + } + } + description + "PCE CSPF Result Code"; + } + + typedef Cmn-ha-case { + type enumeration { + enum "ha-case-migration" { + description + "HA Case Migration"; + } + enum "ha-case-restart" { + description + "HA Case Restart"; + } + enum "ha-case-switchover" { + description + "HA Case Switchover"; + } + enum "ha-case-startup" { + description + "HA Case Startup"; + } + enum "ha-case-invalid" { + description + "HA Case Invalid"; + } + } + description + "Various HA cases"; + } + + typedef Topo-msd-subtype { + type enumeration { + enum "msd-type-mpls" { + value 1; + description + "Base MPLS Imposition MSD"; + } + enum "msd-type-erld" { + value 2; + description + "ERLD MSD"; + } + enum "msd-type-srh-max-sl" { + value 41; + description + "SRH Max SL"; + } + enum "msd-type-srh-max-end-pop" { + value 42; + description + "SRH Max End Pop"; + } + enum "msd-type-srh-max-h-encaps" { + value 44; + description + "SRH Max H.encaps"; + } + enum "msd-type-srh-max-end-d" { + value 45; + description + "SRH Max End D"; + } + enum "msd-type-unknown" { + value 255; + description + "Unknown"; + } + } + description + "Topo msd subtype"; + } + + typedef Sid { + type enumeration { + enum "sr-protected-adj-sid" { + value 1; + description + "Protected Adjacency SID"; + } + enum "sr-unprotected-adj-sid" { + value 2; + description + "Unprotected Adjacency SID"; + } + enum "sr-bgp-egress-peer-engineering-sid" { + value 3; + description + "BGP egress peer engineering SID"; + } + enum "sr-reqular-prefix-sid" { + value 4; + description + "Regular prefix SID"; + } + enum "sr-strict-prefix-sid" { + value 5; + description + "Strict prefix SID"; + } + enum "sr-flex-algo-prefix-sid" { + value 6; + description + "Flex-algo prefix SID"; + } + } + description + "SID Types"; + } + + typedef Cmn-metric { + type enumeration { + enum "metric-type-none" { + value 0; + description + "Metric Type None"; + } + enum "metric-type-igp" { + value 1; + description + "Metric Type IGP"; + } + enum "metric-type-te" { + value 2; + description + "Metric Type TE"; + } + enum "metric-type-hop-count" { + value 3; + description + "Metric Type hop count"; + } + enum "metric-type-msd" { + value 11; + description + "Metric Type MSD"; + } + enum "metric-type-latency" { + value 12; + description + "Metric Type latency"; + } + } + description + "PCE Metric Type"; + } + + typedef Pce-igp-info-id { + type enumeration { + enum "isis" { + value 1; + description + "ISIS"; + } + enum "ospf" { + value 2; + description + "OSPF"; + } + enum "bgp" { + value 3; + description + "BGP"; + } + } + description + "IGP IDs"; + } + + typedef Cmn-auth { + type enumeration { + enum "none" { + description + "None"; + } + enum "md5-clear" { + description + "MD5 Clear"; + } + enum "md5-encrypted" { + description + "MD5 Encrypted"; + } + enum "authentication-option" { + description + "Authentication Option"; + } + enum "authentication-keychain" { + description + "Authentication Keychain"; + } + enum "max" { + description + "Max"; + } + } + description + "Cmn auth"; + } + + typedef Pcep-state { + type enumeration { + enum "tcp-close" { + description + "TCP close"; + } + enum "tcp-listen" { + description + "TCP listen"; + } + enum "tcp-connect" { + description + "TCP connect"; + } + enum "pcep-closed" { + description + "PCEP closed"; + } + enum "pcep-opening" { + description + "PCEP opening"; + } + enum "pcep-open" { + description + "PCEP open"; + } + } + description + "PCEP State"; + } + + typedef Pce-proto { + type enumeration { + enum "pcep" { + description + "PCE protocol"; + } + enum "netconf" { + description + "Netconf protocol"; + } + } + description + "PCE peer protocol"; + } + + typedef Xtc-ipv6-address { + type inet:ipv6-address; + description + "Xtc ipv6 address"; + } + + typedef Xtc-ipv4-address { + type inet:ipv4-address; + description + "Xtc ipv4 address"; + } + + typedef Xtc-af-id { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Xtc af id"; + } + + typedef Pce-rro { + type enumeration { + enum "rro-type-ipv4-address" { + description + "IPv4 Address"; + } + enum "rro-type-mpls-label" { + description + "MPLS Label"; + } + enum "rro-type-sripv4-node-sid" { + description + "Segment Routing IPv4 Node SID"; + } + enum "rro-type-sripv4-adjacency-sid" { + description + "Segment Routing IPv4 Adjacency SID"; + } + enum "rro-type-sr-nai-null" { + description + "Segment Routing with NAI null"; + } + } + description + "PCE RRO type"; + } + + typedef Pce-sr-sid { + type enumeration { + enum "ipv4-node-sid" { + description + "IPv4 Node SID"; + } + enum "ipv4-adjacency-sid" { + description + "IPv4 Adjacency SID"; + } + enum "ipv6-node-sid" { + description + "IPv6 Node SID"; + } + enum "ipv6-adjacency-sid" { + description + "IPv6 Adjacency SID"; + } + enum "ipv4-unnumbered-adjacency-sid" { + description + "IPv4 unnumbered adjacency segment identifier"; + } + enum "ipv6-linklocal-adjacency-sid" { + description + "IPv6 linklocal adjacency segment identifier"; + } + enum "unknown-sid" { + description + "Unknown SID"; + } + enum "unknown-srv6sid" { + description + "Unknown SRv6 SID"; + } + } + description + "PCE SR SID type"; + } + + typedef Lsp-state { + type enumeration { + enum "lsp-down" { + description + "LSP is down"; + } + enum "lsp-up" { + description + "LSP is up"; + } + } + description + "LSP setup type"; + } + + typedef Pcep-lsp-state { + type enumeration { + enum "lsp-down" { + description + "LSP is down"; + } + enum "lsp-up" { + description + "LSP is up"; + } + enum "lsp-active" { + description + "LSP is active (carrying traffic)"; + } + enum "lsp-going-down" { + description + "LSP is going down"; + } + enum "lsp-being-signaled" { + description + "LSP is being signaled"; + } + } + description + "PCEP operation protocol"; + } + + typedef Lsp-setup { + type enumeration { + enum "setup-rsvp" { + description + "LSP is established using RSVP-TE"; + } + enum "setup-sr" { + description + "LSP is established using SR-TE"; + } + enum "setup-pcecc" { + description + "LSP is established using PCECC"; + } + enum "setup-srv6" { + description + "LSP is established using SRv6-TE"; + } + enum "setup-unknown" { + description + "Unknown LSP establishment method"; + } + } + description + "LSP setup type"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Pce-ipv6-address { + type inet:ipv6-address; + description + "Pce ipv6 address"; + } + + typedef Pce-ipv4-address { + type inet:ipv4-address; + description + "Pce ipv4 address"; + } + + typedef Pce-af-id { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Pce af id"; + } + + grouping PCE-COMPUTATION-ALGORITHM-STATS { + description + "Statistics per computation algorithm"; + leaf computation-algorithm { + type Sr-computation-algorithm; + description + "The computation algorithm for these stats"; + } + leaf invocations { + type uint64; + description + "Number of invocations"; + } + leaf paths-found { + type uint64; + description + "Number of times a path was found"; + } + leaf paths-not-found { + type uint64; + description + "Number of times a path was not found"; + } + leaf total-time-milliseconds { + type uint64; + units "millisecond"; + description + "Total time (milliseconds) spent executing this + algorithm"; + } + leaf minimum-time-milliseconds { + type uint32; + units "millisecond"; + description + "Minimum time (milliseconds) for any invocation + of this algorithm"; + } + leaf maximum-time-milliseconds { + type uint32; + units "millisecond"; + description + "Maximum time (milliseconds) for any invocation + of this algorithm"; + } + leaf average-time-milliseconds { + type uint32; + units "millisecond"; + description + "Average time (milliseconds) for all invocations + of this algorithm"; + } + leaf total-iterations { + type uint64; + description + "Total number of iterations using this algorithm"; + } + leaf minimum-iterations { + type uint32; + description + "Minimum number of iterations to find a path"; + } + leaf maximum-iterations { + type uint32; + description + "Maximum number of iterations to find a path"; + } + leaf average-iterations { + type uint32; + description + "Average number of iterations to find a path"; + } + } + + grouping PCE-PCEP-STATS { + description + "PCEP Statistics"; + leaf timestamp-first-pc-report { + type uint32; + description + "Timestamp of the first received path computation + report"; + } + leaf timestamp-last-pc-report { + type uint32; + description + "Timestamp of the last received path computation + report"; + } + leaf timestamp-first-p-update-c { + type uint32; + description + "Timestamp of the first sent path computation + update"; + } + leaf timestamp-last-pc-update { + type uint32; + description + "Timestamp of the last sent path computation + update"; + } + leaf pcep-peers { + type uint32; + description + "Number of PCEP peers"; + } + leaf received-pc-reports { + type uint64; + description + "Number of path computation reports received"; + } + leaf sent-pc-updates { + type uint64; + description + "Number of path computation updates sent"; + } + } + + grouping PCE-PERFORMANCE-STATS-BAG { + description + "PCE performance statistics bag"; + container pcep-statistics { + description + "PCEP Aggregate Statistics"; + uses PCE-PCEP-STATS; + } + leaf timestamp-clearing { + type uint32; + description + "Timestamp when the performance stats were + cleared"; + } + leaf down-ls-ps { + type uint32; + description + "Number of LSPs that are down"; + } + leaf up-ls-ps { + type uint32; + description + "Number of LSPs that are up"; + } + leaf path-computation-cache-misses { + type uint64; + description + "Number of misses in the computed paths cache"; + } + leaf path-computation-cache-hits { + type uint64; + description + "Number of hits in the computed paths cache"; + } + leaf cache-garbage-collection-count { + type uint64; + description + "Number of times the cache was garbage collected"; + } + leaf topology-import-count { + type uint64; + description + "Number of times the topology was imported for + CSPF"; + } + leaf spc-taken-memory { + type uint32; + description + "Memory taken by the cache in MiB"; + } + leaf cache-maximum-size { + type uint32; + description + "Maximum cache size in MiB"; + } + list computation-algorithm-stat { + max-elements "8"; + description + "Statistics for the computation algorithms"; + uses PCE-COMPUTATION-ALGORITHM-STATS; + } + } + + grouping API-PEER-STATS-INFO { + description + "Stats info struct"; + leaf api-peer-type { + type Api-peer-stats-info-oper; + description + "Peer operation types"; + } + leaf peer-state { + type Nbapi-peer-state; + description + "Peer state"; + } + leaf id { + type uint32; + description + "Unique Identifier for stats"; + } + leaf failed-flag { + type boolean; + description + "Indicates failure"; + } + leaf start-time { + type uint32; + description + "Indicates start time"; + } + leaf last-seen-time { + type uint32; + description + "Indicates Last seen time"; + } + leaf queue-valid-time { + type uint32; + description + "Timestamp, when something was sent from queue or + when it was empty."; + } + leaf send-queue-size { + type uint64; + units "byte"; + description + "Size of data in send queue in bytes"; + } + leaf rest-query { + type string; + description + "query string"; + } + } + + grouping API-PEER-STATS-BAG { + description + "API PEER STATS BAG"; + container peer-address { + description + "Indicates the peer IP"; + uses PCE-IP-ADDR-TYPE; + } + leaf uid { + type uint32; + description + "Indicates the UID for the peer"; + } + list stats { + description + "Stats info"; + uses API-PEER-STATS-INFO; + } + } + + grouping PCE-PATH-LIST-BAG { + description + "PCE path list"; + leaf headends-swapped { + type Pce-headend-swap; + description + "DEPRECATED: Headends swapped"; + } + leaf cspf-result { + type Pce-cspf-rc; + description + "CSPF Result"; + } + leaf iterations-done { + type uint32; + description + "Iterations of the algorithm"; + } + list output-path { + description + "Output PCE paths"; + uses PCE-PATH-BAG; + } + } + + grouping PCE-SRV6-HOP-BAG { + description + "SRv6 Hop Details"; + container srv6sid { + description + "SRv6 SID detailed"; + uses SRV6-SID-BAG; + } + leaf local-ipv6-address { + type inet:ipv6-address; + description + "Local IPv6 address"; + } + leaf remote-ipv6-address { + type inet:ipv6-address; + description + "Remote IPv6 address"; + } + } + + grouping PCE-ADDR-BAG { + description + "PCE Address Information"; + container srv6-hop { + description + "SRv6 Hop information"; + uses PCE-SRV6-HOP-BAG; + } + leaf address-family { + type uint8; + description + "Address Family"; + } + leaf ipv4-prefix { + type inet:ipv4-address; + description + "IPv4 prefix"; + } + leaf ipv6-prefix { + type inet:ipv6-address; + description + "IPv6 prefix"; + } + } + + grouping PCE-PATH-BAG { + description + "PCE path information"; + container source-xr { + description + "Source of path"; + uses PCE-IP-ADDR-TYPE; + } + container destination-xr { + description + "Destination of path"; + uses PCE-IP-ADDR-TYPE; + } + leaf cost { + type uint64; + description + "Cost"; + } + list hops { + description + "Hop addresses"; + uses PCE-ADDR-BAG; + } + } + + grouping PATH-WORK-CACHE-STATS { + description + "Statistics about a particular cache"; + leaf work-consumed { + type uint64; + description + "Number of work nodes consumed"; + } + leaf cache-hit { + type uint64; + description + "How many times we were able to use the cache"; + } + leaf cache-miss { + type uint64; + description + "How many times we had to recompute the cache"; + } + leaf cache-miss-time-usec { + type uint64; + units "microsecond"; + description + "How many microseconds the last computation took"; + } + leaf average-cache-miss-time-usec { + type uint64; + units "microsecond"; + description + "How many microseconds the average computation + took"; + } + leaf error { + type uint64; + description + "Number of errors"; + } + leaf run-time-usec { + type uint64; + units "microsecond"; + description + "How many microseconds it took to verify one + region"; + } + } + + grouping PATH-WORK-GROUP-STATS { + description + "Path work group stats"; + list last { + description + "Last several computations"; + uses PATH-WORK-CACHE-STATS; + } + } + + grouping PATH-WORK-REGION { + description + "Path work region"; + leaf work-count { + type uint32; + description + "Number of work elements"; + } + } + + grouping XTC-AFFINITY-COLOR { + description + "XTC AFFINITY COLOR"; + leaf color { + type string; + description + "An affinity color"; + } + } + + grouping XTC-AFFINITY-CONSTRAINT { + description + "XTC AFFINITY CONSTRAINT"; + leaf type { + type uint8; + description + "Affinity type"; + } + leaf value { + type uint32; + description + "Affinity value"; + } + list extended-value { + description + "Extended Affinity values"; + leaf entry { + type uint32; + description + "Extended Affinity values"; + } + } + list color { + description + "Colors"; + uses XTC-AFFINITY-COLOR; + } + } + + grouping PATH-WORK-GROUP-KEY { + description + "Identifies path work group"; + container source-address { + description + "Source address"; + uses XTC-IP-ADDR-TYPE; + } + leaf maximum-segments { + type uint16; + description + "Max number of segments to impose"; + } + leaf metric-type { + type uint8; + description + "Metric type being optimized"; + } + leaf protection-type { + type Cmn-protection; + description + "Requested path protection type"; + } + leaf non-ocspf { + type boolean; + description + "Constraints are something other than O-CSPF"; + } + leaf is-srv6 { + type boolean; + description + "Path work for SRv6"; + } + list affinity-constraint { + description + "Affinity constraints list"; + uses XTC-AFFINITY-CONSTRAINT; + } + } + + grouping PATH-WORK-GROUP { + description + "Path work group"; + container key { + description + "Unique key to identify group"; + uses PATH-WORK-GROUP-KEY; + } + container region-1 { + description + "First region of the group"; + uses PATH-WORK-REGION; + } + container region-2 { + description + "Second region of the group"; + uses PATH-WORK-REGION; + } + container stats { + description + "Group statistics"; + uses PATH-WORK-GROUP-STATS; + } + leaf works-count { + type uint64; + description + "Number of works in this group"; + } + leaf worker-past-region1 { + type boolean; + description + "Is the worker past region_1"; + } + } + + grouping PCE-ASSO-LSP-INFO { + description + "Association LSP common information"; + container pcc-address { + description + "PCC address"; + uses PCE-IP-ADDR-TYPE; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf lspid { + type uint32; + description + "LSP ID"; + } + leaf tunnel-name { + type string; + description + "Tunnel Name"; + } + leaf pce-based { + type boolean; + description + "PCE Based"; + } + leaf plsp-id { + type uint32; + description + "PLSP ID"; + } + } + + grouping PCE-ASSO-BAG { + description + "PCE Association information"; + container association-source { + description + "Association Source"; + uses PCE-IP-ADDR-TYPE; + } + leaf association-type { + type uint32; + description + "Association Type"; + } + leaf association-id { + type uint32; + description + "Association ID"; + } + leaf strict { + type boolean; + description + "Association Strict Mode"; + } + leaf status { + type uint32; + description + "Association Status"; + } + leaf headends-swapped { + type uint32; + description + "DEPRECATED: Headends Swapped"; + } + list association-lsp { + description + "Association LSP Info"; + uses PCE-ASSO-LSP-INFO; + } + } + + grouping CMN-TRACE-BUFFER-SUMMARY-BAG { + description + "Trace buffer summary"; + leaf trace-buffer-name { + type string; + description + "Name of trace buffer"; + } + leaf unique-trace-count { + type uint32; + description + "Unique trace count"; + } + leaf wrapping-trace-count-default { + type uint32; + description + "Default value of wrapping trace count"; + } + leaf wrapping-trace-count-programmed { + type uint32; + description + "Programmed value of wrapping trace count"; + } + leaf string-buffer-size-default { + type uint32; + units "byte"; + description + "Default string buffer size for wrapping traces + in bytes"; + } + leaf string-buffer-size-programmed { + type uint32; + units "byte"; + description + "Programmed string buffer size for wrapping + traces in bytes"; + } + } + + grouping PCE-OV-RULE-ME-BAG { + description + "PCE override rule override attributes"; + container peer-address { + description + "IP address of peer"; + uses XTC-IP-ADDR-TYPE; + } + leaf symbolic-name { + type string; + description + "Symbolic name of the LSP being matched"; + } + } + + grouping PCE-OV-RULE-OV-BAG { + description + "PCE override rule override attributes"; + leaf metric-type { + type Cmn-metric; + description + "Overridden metric type"; + } + leaf bandwidth { + type uint64; + description + "Bandwidth"; + } + leaf sid-algorithm { + type uint8; + description + "SID algorithm"; + } + leaf protection-type { + type Cmn-protection; + description + "Path protection type"; + } + } + + grouping PCE-OV-RULE-MC-LSP-CR-BAG { + description + "LSP color range bag"; + leaf minimum { + type uint32; + description + "Minimum"; + } + leaf maximum { + type uint32; + description + "Maximum"; + } + } + + grouping PCE-OV-RULE-MC-LSP-BAG { + description + "PCE override profile LSP matching criteria"; + leaf all-ls-ps { + type boolean; + description + "Flag indicating all LSPs should be matched"; + } + leaf regular-expression { + type string; + description + "String containing the regular expression"; + } + list color-range { + description + "List containing color ranges"; + uses PCE-OV-RULE-MC-LSP-CR-BAG; + } + } + + grouping PCE-OV-RULE-MC-PEER-BAG { + description + "PCE override rule peer matching criteria"; + leaf all-peers { + type boolean; + description + "Flag indicating all peers should be matched"; + } + leaf ipv4-acl-name { + type string; + description + "ACL name"; + } + } + + grouping PCE-OV-RULE-MC-BAG { + description + "PCE override rule matching criteria"; + container peer { + description + "Matching criteria for peers"; + uses PCE-OV-RULE-MC-PEER-BAG; + } + container lsp { + description + "Matching criteria for LSPs"; + uses PCE-OV-RULE-MC-LSP-BAG; + } + } + + grouping PCE-OV-RULE-BAG { + description + "PCE override rule bag"; + container matching-criteria { + description + "Matching criteria"; + uses PCE-OV-RULE-MC-BAG; + } + container override-attributes { + description + "Override attributes"; + uses PCE-OV-RULE-OV-BAG; + } + leaf sequence-number-xr { + type uint32; + description + "Sequence number"; + } + list matching-entry { + description + "Matching entries/LSPs"; + uses PCE-OV-RULE-ME-BAG; + } + } + + grouping PATH-WORK-NODE { + description + "Path work node"; + leaf type { + type Path-work-node; + description + "Node type"; + } + leaf repr { + type string; + description + "String representation"; + } + } + + grouping PCE-NODE-FLEX-ALGO-DEFINITION { + description + "PCE Node Flex-algo definition"; + container node-id { + description + "Flex-algo Advertising Link-state node identifier"; + uses PCE-NODE-ID-BAG; + } + container flex-algo-definition { + description + "Flex-algo definition"; + uses PCE-FA-DEFINITION; + } + } + + grouping PCE-IGP-AREA-INFO-TYPE { + description + "PCE IGP AREA INFO TYPE"; + leaf igp-id { + type Pce-igp-info-id; + description + "IGP ID"; + } + leaf level { + when "../igp-id = 'isis'" { + description + "../IGP_ID = 'ISIS'"; + } + type uint32; + description + "ISIS level"; + } + leaf area { + when "../igp-id = 'ospf'" { + description + "../IGP_ID = 'OSPF'"; + } + type uint32; + description + "OSPF area"; + } + } + + grouping PCE-FLEX-ALGO-AREA { + description + "Flex-algo information per Area"; + container igp-area { + description + "IGP-area-specific information"; + uses PCE-IGP-AREA-INFO-TYPE; + } + leaf igp-id { + type Pce-igp-info-id; + description + "IGP type"; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + list definition { + description + "Per Area Flex-Algo Definition"; + uses PCE-NODE-FLEX-ALGO-DEFINITION; + } + } + + grouping PCE-PEER-PROTO-SUMMARY-BAG { + description + "Peer summary for specified protocol"; + leaf peer-count-up { + type uint32; + description + "Number of peers in up state"; + } + leaf peer-count-down { + type uint32; + description + "Number of peers in down state"; + } + leaf peer-count-all { + type uint32; + description + "Number of all peers"; + } + } + + grouping PCE-PEER-SUMMARY-BAG { + description + "Peer summary information"; + container pcep-peers { + description + "PCEP peers summary information"; + uses PCE-PEER-PROTO-SUMMARY-BAG; + } + } + + grouping PCE-TREESID-HOP-BAG { + description + "TreeSID hop information"; + leaf next-hop-address { + type inet:ipv4-address; + description + "Next hop remote address"; + } + leaf next-hop-label { + type uint32; + description + "Next hop outgoing label"; + } + leaf next-hop-node-address { + type inet:ipv4-address; + description + "Next hop node address"; + } + leaf next-hop-node-name { + type string; + description + "Next hop node name"; + } + leaf stale { + type boolean; + description + "Stale hop; will be removed in next update"; + } + leaf central-control-identifier { + type uint32; + description + "Identifier for Central Control instructions"; + } + leaf fast-reroute { + type boolean; + description + "Fast Re-route to hop remote node"; + } + } + + grouping PCE-TREESID-NODE-BAG { + description + "TreeSID node information"; + leaf prefix-address { + type inet:ipv4-address; + description + "Node prefix address"; + } + leaf name { + type string; + description + "Node name"; + } + leaf role { + type Pce-treesid-role; + description + "Node role"; + } + leaf awaiting-report { + type boolean; + description + "Awaiting report"; + } + leaf stale { + type boolean; + description + "Stale node"; + } + leaf plsp-id { + type uint32; + description + "PLSP ID"; + } + leaf delegated-by-pcc { + type boolean; + description + "Indicates if PCC has delegated LSP to this PCE"; + } + leaf delegated-to-pce { + type boolean; + description + "Indicates if PCC has delegated LSP to a peer PCE"; + } + leaf is-pcc-delegation-stale { + type boolean; + description + "Indicates if delegation from PCC for this LSP is + stale"; + } + leaf is-pce-delegation-stale { + type boolean; + description + "Indicates if delegation from PCE for this LSP is + stale"; + } + leaf delegated-pce { + type inet:ipv4-address; + description + "PCE to which LSP is delegated to"; + } + list next-hop { + description + "Next hops"; + uses PCE-TREESID-HOP-BAG; + } + } + + grouping PCE-TREESID-BAG { + description + "TreeSID information"; + container attribute-info { + description + "TreeSID attributes"; + uses PCE-LSPA-INFO; + } + leaf name-xr { + type string; + description + "Name of the TreeSID"; + } + leaf metric-type { + type uint8; + description + "Metric type of the TreeSID"; + } + leaf error { + type string; + description + "Last path computation error"; + } + leaf label { + type uint32; + description + "SID of the TreeSID"; + } + leaf source-address { + type inet:ipv4-address; + description + "Address of the source node"; + } + leaf pcc-address { + type inet:ipv4-address; + description + "PCC Address of the source node"; + } + leaf operational-state { + type boolean; + description + "Operational state"; + } + leaf is-compute-pce { + type boolean; + description + "Compute role of PCE for tree"; + } + leaf administrative-state { + type boolean; + description + "Administrative state"; + } + leaf lfa-protected { + type boolean; + description + "LFA Protection enabled?"; + } + leaf from-checkpoint { + type boolean; + description + "Created from checkpoint database?"; + } + leaf pcc-initiated { + type boolean; + description + "Initiated by PCC?"; + } + leaf rest-initiated { + type boolean; + description + "Initiated by Rest"; + } + leaf state { + type Pce-treesid-state; + description + "State of the TreeSID (ie, pending operation)"; + } + leaf uptime { + type uint32; + units "second"; + description + "Uptime of the tunnel in seconds"; + } + leaf transition-count { + type uint32; + description + "Number of transitions between operational + up/down"; + } + leaf tree-id-xr { + type uint32; + description + "TreeSID Tree-ID"; + } + leaf-list destination-address { + type inet:ipv4-address; + description + "List of destination addresses"; + } + list nodes { + description + "List of nodes associated with this TreeSID"; + uses PCE-TREESID-NODE-BAG; + } + list event { + description + "Events"; + uses PCE-EVENT-INFO; + } + } + + grouping PCE-SIBLING-CONN-BAG { + description + "PCE sibling connection information"; + container address { + description + "Address of sibling"; + uses XTC-IP-ADDR-TYPE; + } + leaf connected { + type boolean; + description + "Flag indicating the connection status"; + } + leaf packet-read-size { + type uint32; + description + "Input buffer data size"; + } + leaf packet-write { + type uint32; + description + "Packets in output buffer"; + } + } + + grouping PCE-SYNCED-LSP-DISJOINTNESS-BAG { + description + "PCE disjointness bag"; + container association-information { + description + "Association information"; + uses PCE-ASSO-INFO; + } + leaf fallback { + type boolean; + description + "Fallback flag"; + } + } + + grouping PCE-SIBLING-SYNCED-LSP-BAG { + description + "PCE sibling synced LSP data"; + container actual-pcc-address { + description + "Actual address of PCC peer where the PCInitiate + was sent"; + uses XTC-IP-ADDR-TYPE; + } + container requested-pcc-address { + description + "Requested address of PCC peer used by the + creator of LSP"; + uses XTC-IP-ADDR-TYPE; + } + container affinity { + description + "Affinity"; + uses PCE-AFFINITY-BAG; + } + container disjointness { + description + "Disjointness"; + uses PCE-SYNCED-LSP-DISJOINTNESS-BAG; + } + leaf lsp-name-xr { + type string; + description + "Name of the LSP"; + } + leaf remote-ls-pdata { + type boolean; + description + "Flag to indicate whether this is remote lsp data + or a local copy"; + } + leaf protected { + type boolean; + description + "Flag to indicate if protected path is required"; + } + leaf allow-xtc-reoptimization { + type boolean; + description + "Flag to indicate if reoptimization is allowed"; + } + leaf binding-sid { + type uint32; + description + "Binding sid"; + } + leaf sid-algorithm-set { + type boolean; + description + "Flag to indicate if SID algorithm is set"; + } + leaf sid-algorithm { + type uint8; + description + "SID algorithm value. Applicable if + SIDAlgorithmSet is set"; + } + } + + grouping PCE-AFFINITY-BAG { + description + "PCE affinity bag"; + leaf exclude-any { + type uint32; + description + "Exclude any"; + } + leaf include-any { + type uint32; + description + "Include any"; + } + leaf include-all { + type uint32; + description + "Include all"; + } + } + + grouping PCE-BWOD-SUB-DELEGATION-BAG { + description + "PCE NB-API BWoD sub-delegation bag"; + container pcc-address-xr { + description + "IP address of the PCC"; + uses XTC-IP-ADDR-TYPE; + } + container source-address { + description + "Source address of the tunnel"; + uses XTC-IP-ADDR-TYPE; + } + container destination-address { + description + "Destination address of the tunnel"; + uses XTC-IP-ADDR-TYPE; + } + container affinity { + description + "Affinity"; + uses PCE-AFFINITY-BAG; + } + leaf reference-id { + type uint64; + description + "Reference ID of the sub-delegation"; + } + leaf symbolic-name { + type string; + description + "Symbolic name of the tunnel"; + } + leaf plsp-id { + type uint32; + description + "PLSP-ID of the tunnel"; + } + leaf setup-type { + type Lsp-setup; + description + "Path setup type"; + } + leaf metric-type { + type Cmn-metric; + description + "Metric-type of requested path"; + } + leaf requested-bandwidth { + type uint64; + units "kbit/s"; + description + "Requested bandwidth in kbps"; + } + leaf computed-metric { + type uint32; + description + "Computed metric (cost) from NB-API BWoD client"; + } + leaf sid-algorithm-set { + type boolean; + description + "Flag to indicate if sid algorithm is set"; + } + leaf sid-algorithm { + type uint8; + description + "Value of sid algorithm. Only applicable if + SIDAlgorithmSet is TRUE"; + } + leaf maximum-delay { + type uint32; + description + "Maximum delay constraint"; + } + leaf cp-preference { + type uint32; + description + "Candidate path preference"; + } + leaf block-recomputation { + type boolean; + description + "TRUE if path recomputation is blocked in case of + topology change"; + } + leaf adjacency-sids-only { + type boolean; + description + "TRUE if only adjacency SIDs may be used in the + path-computation"; + } + } + + grouping PCE-BWOD-BEST-CLIENT-BAG { + description + "Best BWoD client with sub-delegations currently + active."; + container address { + description + "Client IP address"; + uses XTC-IP-ADDR-TYPE; + } + leaf is-client-connected { + type boolean; + description + "Flag indicating whether there is a best BWoD + client"; + } + leaf priority { + type int32; + description + "Priority of BWoD client"; + } + } + + grouping PCE-POLICY-CPATH-BAG { + description + "PCE policy candidate-path"; + leaf name { + type string; + description + "Name of the candidate-path"; + } + leaf plsp-id { + type uint32; + description + "PLSP-ID pf tje candidate-path"; + } + leaf active-flag { + type boolean; + description + "Flag to mention if the candidate-path is + currently active"; + } + } + + grouping PCE-POLICY-BAG { + description + "PCE policy"; + container pcc-address-xr { + description + "Path computation client address"; + uses XTC-IP-ADDR-TYPE; + } + container end-point { + description + "End-point of the policy"; + uses XTC-IP-ADDR-TYPE; + } + leaf interface-name { + type string; + description + "Name of the interface"; + } + leaf color { + type uint32; + description + "Color of the policy"; + } + list candidate-path { + description + "Array of candidate-paths"; + uses PCE-POLICY-CPATH-BAG; + } + } + + grouping PCE-SR-MPLS-PATH-BAG { + description + "PCE SR path information"; + container source { + description + "Source of path"; + uses PCE-IP-ADDR-TYPE; + } + container destination { + description + "Destination of path"; + uses PCE-IP-ADDR-TYPE; + } + leaf cost { + type uint64; + description + "Cost"; + } + list hops { + description + "SR hops"; + uses PCE-SR-HOP-TYPE; + } + } + + grouping PCE-SR-MPLS-PATH-LIST-BAG { + description + "PCE SR MPLS path list"; + leaf cspf-result { + type Pce-cspf-rc; + description + "Result of the computation"; + } + leaf iterations-done { + type uint32; + description + "Iterations performed of the Suurballe-Tarjan + algorithm"; + } + leaf computation-duration-millisecond { + type uint32; + units "millisecond"; + description + "How many milliseconds it took to compute this + path"; + } + leaf computation-algorithm { + type Sr-computation-algorithm; + description + "What algorithm was used to compute this path"; + } + list output-path { + description + "Output SR MPLS paths"; + uses PCE-SR-MPLS-PATH-BAG; + } + } + + grouping PCE-PEER-AUTH-OPTION-BAG { + description + "PCE Peer Authentication Option information"; + container peer-address { + description + "Peer address"; + uses PCE-IP-ADDR-TYPE; + } + container authentication-option { + description + "Authentication Option information"; + uses PCE-AUTH-OPTION-BAG; + } + } + + grouping PCE-PFX-ENTRY { + description + "PCE prefix etnry"; + container ip { + description + "Prefix IP address"; + uses PCE-IP-ADDR-TYPE; + } + } + + grouping PCE-PFX-BAG { + description + "PCE Prefix Information"; + container node-protocol-identifier { + description + "Node protocol identifier"; + uses PCE-NODE-PID-BAG; + } + leaf node-identifier-xr { + type uint32; + description + "Node identifier"; + } + list address { + description + "Prefix address"; + uses PCE-PFX-ENTRY; + } + } + + grouping CMN-TIMER-INFO { + description + "Timer information"; + leaf running { + type boolean; + description + "Whether the timer is running"; + } + leaf remaining-seconds { + type int64; + units "second"; + description + "Number of remaining seconds"; + } + leaf remaining-nano-seconds { + type int64; + units "nanosecond"; + description + "Number of remaining nanoseconds"; + } + } + + grouping XTC-TOPO-READY-BAG { + description + "XTC Topology Readiness Information"; + container timer { + description + "Topology readiness timer"; + uses CMN-TIMER-INFO; + } + leaf ready { + type boolean; + description + "Topology readiness"; + } + leaf pcep-allowed { + type boolean; + description + "Whether PCEP is allowed"; + } + leaf ha-case { + type Cmn-ha-case; + description + "Last HA case"; + } + leaf timer-value { + type uint32; + description + "Topology ready timer value selected at start"; + } + } + + grouping PCE-TOPO-STATS-BAG { + description + "Statistics on topology update"; + leaf num-nodes-added { + type uint32; + description + "Number of nodes added"; + } + leaf num-nodes-deleted { + type uint32; + description + "Number of nodes deleted"; + } + leaf num-links-added { + type uint32; + description + "Number of links added"; + } + leaf num-links-deleted { + type uint32; + description + "Number of links deleted"; + } + leaf num-prefixes-added { + type uint32; + description + "Number of prefixes added"; + } + leaf num-prefixes-deleted { + type uint32; + description + "Number of prefixes deleted"; + } + } + + grouping PCE-NODE-SUMMARY-BAG { + description + "PCE Node Summary Information"; + container stats-topology-update { + description + "Statistics on topology update"; + uses PCE-TOPO-STATS-BAG; + } + container topology-ready-summary { + description + "Topology ready summary"; + uses XTC-TOPO-READY-BAG; + } + leaf nodes { + type uint32; + description + "Number of PCE nodes"; + } + leaf lookup-nodes { + type uint32; + description + "Number of lookup nodes"; + } + leaf prefixes { + type uint32; + description + "Number of prefixes"; + } + leaf prefix-sids { + type uint32; + description + "Number of total prefix SIDs"; + } + leaf regular-prefix-sids { + type uint32; + description + "Number of reguar prefix SIDs"; + } + leaf strict-prefix-sids { + type uint32; + description + "Number of strict prefix SIDs"; + } + leaf flex-algo-prefix-sids { + type uint32; + description + "Number of flex-algo prefix SIDs"; + } + leaf links { + type uint32; + description + "Number of links"; + } + leaf epe-links { + type uint32; + description + "Number of EPE links"; + } + leaf adjacency-sids { + type uint32; + description + "Number of total adjacency SIDs"; + } + leaf epesids { + type uint32; + description + "Number of total EPE SIDs"; + } + leaf protected-adjacency-sids { + type uint32; + description + "Number of protected adjacency SIDs"; + } + leaf un-protected-adjacency-sids { + type uint32; + description + "Number of unprotected adjacency SIDs"; + } + leaf topology-consistent { + type boolean; + description + "True if topology is consistent"; + } + leaf topology-unreliable { + type boolean; + description + "True if topology is unreliable"; + } + leaf update-dropped { + type uint32; + description + "Number of total update dropped"; + } + } + + grouping SRV6-NODE-SID-BAG { + description + "SRv6 Node SID bag"; + container srv6sid { + description + "SRv6 node SID"; + uses SRV6-SID-BAG; + } + container node-id { + description + "Link-state node identifier"; + uses PCE-NODE-ID-BAG; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + } + + grouping PCE-IPV6-LINK-BAG { + description + "PCE IPv6 Link Information"; + container local-igp-information { + description + "Local node IGP information"; + uses PCE-IGP-INFO-BAG; + } + container remote-node-protocol-identifier { + description + "Remote node protocol identifier"; + uses PCE-NODE-PID-BAG; + } + container performance-metrics { + description + "Performance metrics"; + uses PCE-LINK-PM-METRICS; + } + leaf is-unnumbered { + type boolean; + description + "True if this is an IPv6 Unnumbered link"; + } + leaf local-interface-index { + type uint32; + description + "Non-zero if IsUnnumbered is True"; + } + leaf remote-interface-index { + type uint32; + description + "Non-zero if IsUnnumbered is True"; + } + leaf local-ipv6-address { + type inet:ipv6-address; + description + "Local IPv6 address"; + } + leaf remote-ipv6-address { + type inet:ipv6-address; + description + "Remote IPv6 address"; + } + leaf igp-metric { + type uint32; + description + "IGP Metric"; + } + leaf te-metric { + type uint32; + description + "TE Metric"; + } + leaf maximum-link-bandwidth { + type uint64; + description + "Max link bandwidth"; + } + leaf max-reservable-bandwidth { + type uint64; + description + "Max Reservable bandwidth"; + } + leaf administrative-groups { + type uint32; + description + "Link admin-groups"; + } + leaf flex-algo-asla-te-metric { + type uint32; + description + "Flex-algo specific Link TE metric"; + } + leaf flex-algo-asla-minimum-latency { + type uint32; + description + "Flex-algo specific Link Minimum latency metric"; + } + leaf-list srlgs { + type uint32; + description + "SRLG Values"; + } + leaf-list flex-algo-asla-administrative-group { + type uint32; + description + "Flex-algo specific Link Extended admin-groups"; + } + list adjacency-sid { + description + "Adjacency SIDs"; + uses PCE-SID-BAG; + } + list srv6-adjacency-sid { + description + "SRv6 Adjacecny micro-SIDs"; + uses SRV6-SID-BAG; + } + list msd { + description + "Advertised MSDs"; + uses TOPO-MSD-BAG; + } + } + + grouping TOPO-MSD-BAG { + description + "Topology MSD"; + leaf subtype { + type Topo-msd-subtype; + description + "Subtype of the MSD as defined by IANA"; + } + leaf value { + type uint8; + description + "MSD value"; + } + } + + grouping PCE-LINK-PM-METRICS { + description + "Link performance metric information"; + leaf unidirectional-minimum-delay-microseconds { + type uint32; + units "microsecond"; + description + "Min delay in microseconds"; + } + } + + grouping PCE-IPV4-LINK-BAG { + description + "PCE IPv4 Link Information"; + container local-igp-information { + description + "Local node IGP information"; + uses PCE-IGP-INFO-BAG; + } + container remote-node-protocol-identifier { + description + "Remote node protocol identifier"; + uses PCE-NODE-PID-BAG; + } + container performance-metrics { + description + "Performance metrics"; + uses PCE-LINK-PM-METRICS; + } + leaf is-unnumbered { + type boolean; + description + "True if this is an IPv4 Unnumbered link"; + } + leaf local-interface-index { + type uint32; + description + "Non-zero if IsUnnumbered is True"; + } + leaf remote-interface-index { + type uint32; + description + "Non-zero if IsUnnumbered is True"; + } + leaf local-ipv4-address { + type inet:ipv4-address; + description + "Local IPv4 address"; + } + leaf remote-ipv4-address { + type inet:ipv4-address; + description + "Remote IPv4 address"; + } + leaf igp-metric { + type uint32; + description + "IGP Metric"; + } + leaf te-metric { + type uint32; + description + "TE Metric"; + } + leaf maximum-link-bandwidth { + type uint64; + description + "Max link bandwidth"; + } + leaf max-reservable-bandwidth { + type uint64; + description + "Max Reservable bandwidth"; + } + leaf administrative-groups { + type uint32; + description + "Link admin-groups"; + } + leaf flex-algo-asla-te-metric { + type uint32; + description + "Flex-algo specific Link TE metric"; + } + leaf flex-algo-asla-minimum-latency { + type uint32; + description + "Flex-algo specific Link Minimum latency metric"; + } + leaf-list flex-algo-asla-administrative-group { + type uint32; + description + "Flex-algo specific Link Extended admin-groups"; + } + leaf-list srlgs { + type uint32; + description + "SRLG Values"; + } + list adjacency-sid { + description + "Adjacency SIDs"; + uses PCE-SID-BAG; + } + list msd { + description + "Advertised MSDs"; + uses TOPO-MSD-BAG; + } + } + + grouping PCE-SID-BAG { + description + "PCE SID bags"; + container sid-prefix { + description + "Prefix"; + uses PCE-IP-ADDR-TYPE; + } + leaf sid-type { + type Sid; + description + "SID Type"; + } + leaf mpls-label { + type uint32; + description + "MPLS Label"; + } + leaf algorithm { + type uint32; + description + "Prefix SID Algorithm"; + } + leaf xflag { + type boolean; + description + "X Flag"; + } + leaf rflag { + type boolean; + description + "R Flag"; + } + leaf nflag { + type boolean; + description + "N Flag"; + } + leaf pflag { + type boolean; + description + "P Flag"; + } + leaf eflag { + type boolean; + description + "E Flag"; + } + leaf vflag { + type boolean; + description + "V Flag"; + } + leaf lflag { + type boolean; + description + "L Flag"; + } + leaf mflag { + type boolean; + description + "M Flag"; + } + } + + grouping PCE-PREFIX-BAG { + description + "PCE Prefix bag"; + container pfx-sid { + description + "Prefix SID"; + uses PCE-SID-BAG; + } + container node-id { + description + "Link-state node identifier"; + uses PCE-NODE-ID-BAG; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + } + + grouping PCE-SRLB-INFO-BAG { + description + "PCE SRLB information bag"; + container node-id { + description + "Link-state node identifier"; + uses PCE-NODE-ID-BAG; + } + leaf start { + type uint32; + description + "SRLB start"; + } + leaf size { + type uint32; + description + "SRLB size"; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + } + + grouping PCE-FA-DEFINITION { + description + "Flex-algo definition"; + leaf number { + type uint8; + description + "Flex-Algo number"; + } + leaf local-priority { + type uint8; + description + "Local Priority"; + } + leaf metric-type { + type Cmn-metric; + description + "Metric Type"; + } + leaf-list aff { + type uint32; + description + "Affinity exclude any"; + } + leaf-list affinity-include-any { + type uint32; + description + "Affinity include any"; + } + leaf-list affinity-include-all { + type uint32; + description + "Affinity include all"; + } + } + + grouping PCE-SR-ALGO-BAG { + description + "PCE SR Algo Information"; + container node-id { + description + "Link-state node identifier"; + uses PCE-NODE-ID-BAG; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + leaf-list algo-participation { + type uint8; + description + "Algos participated by this node"; + } + list flex-algo-advertised-definition { + description + "Flex-algo definition advertised"; + uses PCE-FA-DEFINITION; + } + } + + grouping PCE-SRGB-INFO-BAG { + description + "PCE SRGB information bag"; + container node-id { + description + "Link-state node identifier"; + uses PCE-NODE-ID-BAG; + } + leaf start { + type uint32; + description + "SRGB start"; + } + leaf size { + type uint32; + description + "SRGB size"; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + } + + grouping PCE-IGP-INFO-BGP { + description + "PCE BGP Information"; + leaf router-id { + type Pce-ipv4-address; + description + "BGP router ID"; + } + leaf confed-asn { + type uint32; + description + "Confederation ASN"; + } + } + + grouping PCE-IGP-INFO-OSPF { + description + "PCE OSPF Information"; + leaf router-id { + type Pce-ipv4-address; + description + "OSPF router ID"; + } + leaf area { + type uint32; + description + "OSPF area"; + } + } + + grouping PCE-IGP-INFO-ISIS { + description + "PCE ISIS Information"; + leaf system-id { + type string; + description + "ISIS system ID"; + } + leaf level { + type uint32; + description + "ISIS level"; + } + leaf area { + type string; + description + "ISIS area"; + } + } + + grouping PCE-IGP-INFO-TYPE { + description + "PCE IGP INFO TYPE"; + container isis { + when "../igp-id = 'isis'" { + description + "../IGP_ID = 'ISIS'"; + } + description + "ISIS information"; + uses PCE-IGP-INFO-ISIS; + } + container ospf { + when "../igp-id = 'ospf'" { + description + "../IGP_ID = 'OSPF'"; + } + description + "OSPF information"; + uses PCE-IGP-INFO-OSPF; + } + container bgp { + when "../igp-id = 'bgp'" { + description + "../IGP_ID = 'BGP'"; + } + description + "BGP information"; + uses PCE-IGP-INFO-BGP; + } + leaf igp-id { + type Pce-igp-info-id; + description + "IGP ID"; + } + } + + grouping PCE-NODE-ID-BAG { + description + "PCE Node ID information"; + container igp { + description + "IGP-specific information"; + uses PCE-IGP-INFO-TYPE; + } + leaf autonomous-system-number { + type uint32; + description + "Autonomous System Number"; + } + leaf ls-identifier { + type uint32; + description + "Link-State identifier"; + } + } + + grouping PCE-IGP-INFO-BAG { + description + "PCE IGP information bag"; + container node-id { + description + "Link-state node identifier"; + uses PCE-NODE-ID-BAG; + } + leaf domain-identifier { + type uint64; + description + "Domain identifier"; + } + } + + grouping PCE-NODE-PID-BAG { + description + "PCE Node Protocol Identifier Information"; + leaf node-name { + type string; + description + "Node Name"; + } + leaf ipv4-bgp-router-id-set { + type boolean; + description + "True if IPv4 BGP router ID is set"; + } + leaf ipv4-bgp-router-id { + type inet:ipv4-address; + description + "IPv4 TE router ID"; + } + leaf ipv4te-router-id-set { + type boolean; + description + "True if IPv4 TE router ID is set"; + } + leaf ipv4te-router-id { + type inet:ipv4-address; + description + "IPv4 BGP router ID"; + } + leaf ipv6-router-id-set { + type boolean; + description + "True if the IPv6 router ID is set"; + } + leaf ipv6-router-id { + type inet:ipv6-address; + description + "IPv6 Router ID"; + } + list igp-information { + description + "IGP information"; + uses PCE-IGP-INFO-BAG; + } + list srgb-information { + description + "SRGB information"; + uses PCE-SRGB-INFO-BAG; + } + list sr-algo { + description + "SR Algo information"; + uses PCE-SR-ALGO-BAG; + } + list srlb-information { + description + "SRLB information"; + uses PCE-SRLB-INFO-BAG; + } + } + + grouping PCE-XTC-NODE-BAG { + description + "PCE XTC Node Information"; + container node-protocol-identifier { + description + "Node protocol identifier"; + uses PCE-NODE-PID-BAG; + } + leaf node-identifier-xr { + type uint32; + description + "Node identifier"; + } + leaf overload { + type boolean; + description + "Node Overload Bit"; + } + list prefixe { + description + "Prefixes"; + uses PCE-PREFIX-BAG; + } + list ipv4-link { + description + "IPv4 Link information"; + uses PCE-IPV4-LINK-BAG; + } + list ipv6-link { + description + "IPv6 Link information"; + uses PCE-IPV6-LINK-BAG; + } + list srv6-node-sid { + description + "SRv6 Node micro-SIDs"; + uses SRV6-NODE-SID-BAG; + } + } + + grouping PCE-VIRTUAL-LINK-BAG { + description + "PCE Virtual Link Info"; + leaf local-pce-id { + type uint32; + description + "Virtual link local PCE ID"; + } + leaf remote-pce-id { + type uint32; + description + "Virtual link remote PCE ID"; + } + leaf local-ipv4-address { + type inet:ipv4-address; + description + "Virtual link local IPv4 address"; + } + leaf remote-ipv4-address { + type inet:ipv4-address; + description + "Virtual link remote IPv4 address"; + } + leaf metric { + type uint32; + description + "Virtual link metric"; + } + leaf label { + type uint32; + description + "Virtual link SID Label"; + } + } + + grouping PCE-REMOTE-PFX-BAG { + description + "PCE Remote Prefix Information"; + container ip { + description + "Remote prefix IP address"; + uses PCE-IP-ADDR-TYPE; + } + leaf virtual-node-pce-id { + type uint32; + description + "Virtual Node PCE ID"; + } + list virtual-link { + description + "virtual links"; + uses PCE-VIRTUAL-LINK-BAG; + } + } + + grouping PCE-PEER-BAG { + description + "Peer information"; + container peer-address-xr { + description + "Peer address"; + uses PCE-IP-ADDR-TYPE; + } + container brief-pcep-information { + description + "PCE protocol information"; + uses PCE-PCEP-BAG; + } + leaf peer-protocol { + type Pce-proto; + description + "Protocol between PCE and peer"; + } + } + + grouping PCE-AUTH-OPTION-BAG { + description + "PCE Authentication Option information"; + leaf authentication-key-type { + type Cmn-auth; + description + "Authentication Key Type"; + } + leaf password { + type string; + description + "Authentication Password"; + } + leaf authentication-option-include-options-enable { + type boolean; + description + "Include Option Enable"; + } + leaf authentication-option-accept-mismatch-enable { + type boolean; + description + "Accept Mismatch Enable"; + } + } + + grouping PCE-PCEP-ERROR-BAG { + description + "PCEP Error information"; + leaf pc-error-type { + type uint8; + description + "PCEP Error type"; + } + leaf pc-error-value { + type uint8; + description + "PCEP Error Value"; + } + } + + grouping PCE-PCEP-BAG { + description + "PCEP information"; + leaf pcep-state { + type Pcep-state; + description + "PCEP State"; + } + leaf stateful { + type boolean; + description + "Stateful"; + } + leaf capability-update { + type boolean; + description + "Update capability"; + } + leaf capability-instantiate { + type boolean; + description + "Instantiation capability"; + } + leaf capability-segment-routing { + type boolean; + description + "Segment Routing capability"; + } + leaf capability-triggered-sync { + type boolean; + description + "Triggered Synchronization capability"; + } + leaf capability-db-version { + type boolean; + description + "DB version capability"; + } + leaf capability-delta-sync { + type boolean; + description + "Delta Synchronization capability"; + } + leaf capability-srv6 { + type boolean; + description + "SRv6 capability"; + } + } + + grouping PCE-PCEP-DETAIL-BAG { + description + "Detailed PCE protocol information"; + container brief-pcep-information { + description + "Brief PCE protocol information"; + uses PCE-PCEP-BAG; + } + container last-error-rx { + description + "Last PCError received"; + uses PCE-PCEP-ERROR-BAG; + } + container last-error-tx { + description + "Last PCError sent"; + uses PCE-PCEP-ERROR-BAG; + } + container pce-authentication { + description + "PCE Peer Authentication"; + uses PCE-AUTH-OPTION-BAG; + } + leaf error { + type string; + description + "Error (for display only)"; + } + leaf speaker-id { + type string; + description + "Speaker Entity ID"; + } + leaf pcep-up-time { + type uint32; + description + "PCEP Up Time"; + } + leaf keepalives { + type uint32; + description + "Keepalive count"; + } + leaf md5-enabled { + type boolean; + description + "MD5 Authentication Enabled"; + } + leaf authentication-option-keychain-enabled { + type boolean; + description + "AO Keychain based Authentication Enabled"; + } + leaf negotiated-local-keepalive { + type uint32; + description + "Negotiated KA"; + } + leaf negotiated-remote-keepalive { + type uint32; + description + "Negotiated KA"; + } + leaf negotiated-dead-time { + type uint32; + description + "Negotiated DT"; + } + leaf pce-request-rx { + type uint32; + description + "PCEReq Rx"; + } + leaf pce-request-tx { + type uint32; + description + "PCEReq Tx"; + } + leaf pce-reply-rx { + type uint32; + description + "PCERep Rx"; + } + leaf pce-reply-tx { + type uint32; + description + "PCERep Tx"; + } + leaf pce-error-rx { + type uint32; + description + "PCEErr Rx"; + } + leaf pce-error-tx { + type uint32; + description + "PCEErr Tx"; + } + leaf pce-open-tx { + type uint32; + description + "PCEOpen Tx"; + } + leaf pce-open-rx { + type uint32; + description + "PCEOpen Rx"; + } + leaf pce-report-rx { + type uint32; + description + "PCERpt Rx"; + } + leaf pce-report-tx { + type uint32; + description + "PCERpt Tx"; + } + leaf pce-update-rx { + type uint32; + description + "PCEUpd Rx"; + } + leaf pce-update-tx { + type uint32; + description + "PCEUpd Tx"; + } + leaf pce-initiate-rx { + type uint32; + description + "PCEInit Rx"; + } + leaf pce-initiate-tx { + type uint32; + description + "PCEInit Tx"; + } + leaf pce-keepalive-tx { + type uint64; + description + "PCE Keepalive Tx"; + } + leaf pce-keepalive-rx { + type uint64; + description + "PCE Keepalive Rx"; + } + leaf local-session-id { + type uint8; + description + "Local PCEP session ID"; + } + leaf remote-session-id { + type uint8; + description + "Remote PCEP session ID"; + } + leaf minimum-keepalive-interval { + type uint8; + description + "Minimum keepalive interval for the peer"; + } + leaf maximum-dead-interval { + type uint8; + description + "Maximum dead interval for the peer"; + } + leaf max-sid-depth { + type uint8; + description + "Maximum number of labels the peer can impose"; + } + } + + grouping PCE-PEER-DETAIL-BAG { + description + "Detailed PCEP peer information"; + container peer-address-xr { + description + "Peer address"; + uses PCE-IP-ADDR-TYPE; + } + container detail-pcep-information { + description + "Detailed PCE protocol information"; + uses PCE-PCEP-DETAIL-BAG; + } + leaf peer-protocol { + type Pce-proto; + description + "Protocol between PCE and peer"; + } + leaf max-sid-depth { + type uint32; + description + "Maximum SID Depth"; + } + } + + grouping PCE-EVENT-INFO { + description + "PCE Event information"; + leaf event-id { + type uint32; + description + "Event ID in range 1 - 0xFFFFFFFF. 0 is invalid."; + } + leaf event-message { + type string; + description + "Event message"; + } + leaf time-stamp { + type uint64; + description + "Event time, relative to Jan 1, 1970"; + } + } + + grouping PCE-EVENT-BAG { + description + "Private LSP information"; + list event-buffer { + description + "LSP Event buffer"; + uses PCE-EVENT-INFO; + } + } + + grouping PCEP-BIDIR-BAG { + description + "PCEP SR Policy Bidirectional Association"; + container bidirectional-asso-source { + description + "Association Source"; + uses XTC-IP-ADDR-TYPE; + } + leaf bidirectional-asso-id { + type uint16; + description + "Association ID"; + } + leaf corouted-lsp { + type boolean; + description + "Co-routed LSP"; + } + leaf reverse-lsp { + type boolean; + description + "Reverse LSP"; + } + } + + grouping PCEP-SRPOLICY-CPATH-PREFERENCE-BAG { + description + "PCEP SR Policy CPATH-PREFERENCE"; + leaf preference { + type uint32; + description + "Preference"; + } + } + + grouping PCEP-SRPOLICY-CPATH-ID-BAG { + description + "PCEP SR Policy CPATH-ID"; + leaf originator-address { + type inet:ipv6-address; + description + "Originator IPv6 address"; + } + leaf originator-asn { + type uint32; + description + "Originator AS number"; + } + leaf discriminator { + type uint32; + description + "Discriminator"; + } + leaf protocol-origin { + type uint8; + description + "Protocol origin"; + } + } + + grouping PCEP-SRPOLICY-POL-NAME-BAG { + description + "PCEP SR Policy Name"; + leaf policy-name { + type string; + description + "Policy name"; + } + } + + grouping PCEP-SRPOLICY-POL-ID-BAG { + description + "PCEP SR Policy POL-ID"; + container endpoint { + description + "Policy endpoint"; + uses XTC-IP-ADDR-TYPE; + } + leaf color { + type uint32; + description + "Policy color"; + } + } + + grouping XTC-IP-ADDR-TYPE { + description + "XTC IP ADDR TYPE"; + leaf af-name { + type Xtc-af-id; + description + "AFName"; + } + leaf ipv4 { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type Xtc-ipv4-address; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Xtc-ipv6-address; + description + "IPv6 address type"; + } + } + + grouping PCEP-SRPAG-BAG { + description + "PCEP SR Policy Association Group"; + container srpag-asso-source { + description + "Association Source"; + uses XTC-IP-ADDR-TYPE; + } + container policy-id-info { + description + "POL ID"; + uses PCEP-SRPOLICY-POL-ID-BAG; + } + container policy-name-info { + description + "POL Name"; + uses PCEP-SRPOLICY-POL-NAME-BAG; + } + container candidate-path-id-info { + description + "CPATH ID"; + uses PCEP-SRPOLICY-CPATH-ID-BAG; + } + container candidate-path-preference { + description + "CPATH PREFERENCE"; + uses PCEP-SRPOLICY-CPATH-PREFERENCE-BAG; + } + leaf srpag-asso-id { + type uint16; + description + "Association ID"; + } + } + + grouping PCE-LSPA-INFO { + description + "PCE LSP attribute information"; + leaf affinity-exclude-any { + type uint32; + description + "Affinity exclude any"; + } + leaf affinity-include-any { + type uint32; + description + "Affinity include any"; + } + leaf affinity-include-all { + type uint32; + description + "Affinity include all"; + } + leaf setup-priority { + type uint8; + description + "Setup Priority"; + } + leaf hold-priority { + type uint8; + description + "Hold Priority"; + } + leaf local-protection { + type boolean; + description + "True, if local protection is desired"; + } + } + + grouping PCE-LSP-RSVP-ERROR-BAG { + description + "RSVP error information"; + leaf node-address { + type inet:ipv4-address; + description + "RSVP error node address"; + } + leaf error-flags { + type uint8; + description + "RSVP error flags"; + } + leaf error-code { + type uint8; + description + "RSVP error code"; + } + leaf error-value { + type uint16; + description + "RSVP error value"; + } + } + + grouping PCE-PCEP-INFO { + description + "PCEP LSP information"; + container rsvp-error { + description + "RSVP error info"; + uses PCE-LSP-RSVP-ERROR-BAG; + } + leaf pcepid { + type uint32; + description + "PCE protocol identifier"; + } + leaf pcep-flag-d { + type boolean; + description + "PCEP LSP delegation flag"; + } + leaf pcep-flag-s { + type boolean; + description + "PCEP LSP state-sync flag"; + } + leaf pcep-flag-r { + type boolean; + description + "PCEP LSP remove flag"; + } + leaf pcep-flag-a { + type boolean; + description + "PCEP LSP admin flag"; + } + leaf pcep-flag-o { + type uint8; + description + "PCEP LSP operation flag"; + } + leaf pcep-flag-c { + type uint8; + description + "PCEP LSP initiated flag"; + } + } + + grouping PCE-RRO-INFO { + description + "RRO information"; + container sr-rro { + description + "Segment Routing RRO info"; + uses PCE-SR-HOP-TYPE; + } + leaf rro-type { + type Pce-rro; + description + "RRO Type"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 address of RRO"; + } + leaf mpls-label { + type uint32; + description + "MPLS label of RRO"; + } + leaf flags { + type uint8; + description + "RRO Flags"; + } + } + + grouping SRV6-SID-BAG { + description + "PCE SRv6 SID bag"; + container endpoint-function { + description + "Endpoint behavior of the SRv6SID"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container structure { + description + "The SRv6 strucutre of the SID"; + uses SRV6-SID-STRUCTURE-BAG; + } + leaf srv6sid { + type inet:ipv6-address; + description + "Full SRv6 SID"; + } + leaf type { + type uint8; + description + "SRv6 SID Type"; + } + leaf flags { + type uint8; + description + "SRv6 SID flags"; + } + leaf algorithm { + type uint8; + description + "Flex-Algo value used for this SRv6SID"; + } + leaf weight { + type uint8; + description + "Weight"; + } + } + + grouping PCE-SR-HOP-TYPE { + description + "SR hop type"; + container local-addr { + description + "Local Address"; + uses PCE-IP-ADDR-TYPE; + } + container remote-addr { + description + "Remote Address"; + uses PCE-IP-ADDR-TYPE; + } + container srv6sid { + description + "SRv6 SID"; + uses SRV6-SID-BAG; + } + leaf sid-type { + type Pce-sr-sid; + description + "SID type"; + } + leaf mpls-label { + type uint32; + description + "Label"; + } + leaf local-interface-index { + type uint32; + description + "SNMP index of the upstream interface of this hop"; + } + leaf remote-interface-index { + type uint32; + description + "SNMP index of the downstream interface of this + hop"; + } + } + + grouping PCE-RSVP-HOP-TYPE { + description + "RSVP hop type"; + leaf hop-address { + type inet:ipv4-address; + description + "RSVP hop address"; + } + leaf loose { + type boolean; + description + "Loose hop"; + } + } + + grouping PCE-ERO-INFO { + description + "ERO information"; + leaf reported-metric-type { + type uint32; + description + "Reported Metric Type"; + } + leaf reported-metric-value { + type uint32; + description + "Reported Metric Value"; + } + leaf computed-metric-type { + type uint32; + description + "Computed Metric Type"; + } + leaf computed-metric-value { + type uint32; + description + "Computed Metric Value"; + } + leaf computed-hop-list-time { + type uint32; + description + "Computed Hop List Time"; + } + list reported-rsvp-path { + description + "Reported RSVP path"; + uses PCE-RSVP-HOP-TYPE; + } + list reported-sr-path { + description + "Reported SR path"; + uses PCE-SR-HOP-TYPE; + } + list computed-rsvp-path { + description + "Computed RSVP path"; + uses PCE-RSVP-HOP-TYPE; + } + list computed-sr-path { + description + "Computed SR path"; + uses PCE-SR-HOP-TYPE; + } + list reverse-sr-path { + description + "reverse SR path"; + uses PCE-SR-HOP-TYPE; + } + } + + grouping PCE-LSP-DETAIL-INFO { + description + "Detailed LSP information"; + container brief-lsp-information { + description + "Brief LSP information"; + uses PCE-LSP-INFO; + } + container er-os { + description + "Paths"; + uses PCE-ERO-INFO; + } + container lsppcep-information { + description + "PCEP related LSP information"; + uses PCE-PCEP-INFO; + } + container lsp-association-info { + description + "LSP association information"; + uses PCE-ASSO-INFO; + } + container lsp-attributes { + description + "LSP attributes"; + uses PCE-LSPA-INFO; + } + container sub-delegated-pce { + description + "Sub delegated PCE"; + uses PCE-IP-ADDR-TYPE; + } + container state-sync-pce { + description + "State-sync PCE"; + uses PCE-IP-ADDR-TYPE; + } + container reporting-pcc-address { + description + "Reporting PCC address"; + uses PCE-IP-ADDR-TYPE; + } + container srpag-info { + description + "SR Policy Association Group"; + uses PCEP-SRPAG-BAG; + } + container bidir-asso-info { + description + "Bidirectional Association Group"; + uses PCEP-BIDIR-BAG; + } + leaf signaled-bandwidth-specified { + type boolean; + description + "True if router notifies signal bandwidth"; + } + leaf signaled-bandwidth { + type uint64; + description + "Signaled Bandwidth"; + } + leaf actual-bandwidth-specified { + type boolean; + description + "True if router notifies actual bandwidth"; + } + leaf actual-bandwidth { + type uint64; + description + "Actual bandwidth utilized in the data-plane"; + } + leaf lsp-role { + type uint32; + description + "LSP Role"; + } + leaf computing-pce { + type uint32; + description + "Computing PCE"; + } + leaf preference { + type uint32; + description + "Preference"; + } + leaf protection-type { + type uint32; + description + "Protection Type"; + } + leaf invalidated-traffic-dropped { + type boolean; + description + "Invalidated Traffic Dropped"; + } + leaf sid-algorithm { + type uint8; + description + "SID Algorithm constraint - valid only if + SIDAlgoSet is TRUE"; + } + leaf sid-algorithm-set { + type boolean; + description + "Specifies if SID Algorithm constraint is set"; + } + leaf maximum-delay { + type uint32; + description + "Maximum delay constraint applicable for latency + metric-type"; + } + leaf block-recomputation { + type boolean; + description + "TRUE if path recomputation is blocked in case of + topology change"; + } + leaf adjacency-sids-only { + type boolean; + description + "TRUE if only adjacency SIDs may be used in the + path-computation"; + } + leaf-list srlg-info { + type uint32; + description + "List of SLRGs used by LSP"; + } + list rro { + description + "RRO"; + uses PCE-RRO-INFO; + } + } + + grouping PCE-TUN-DETAIL-BAG { + description + "Tunnel detail information"; + container pcc-address { + description + "PCC address"; + uses PCE-IP-ADDR-TYPE; + } + container private-lsp-information { + description + "Private LSP information"; + uses PCE-EVENT-BAG; + } + leaf tunnel-name-xr { + type string; + description + "Tunnel Name"; + } + leaf xtc-controlled { + type boolean; + description + "Allow XTC reoptimizations"; + } + leaf color { + type uint32; + description + "Color"; + } + leaf interface-name { + type string; + description + "Interface name"; + } + leaf profile-id { + type uint16; + description + "Profile ID"; + } + leaf is-zombie { + type boolean; + description + "PCC has disconnected, but tunnel still kept + around"; + } + leaf override-rule-sequence { + type uint32; + description + "Sequence number of the override rule"; + } + list detail-lsp-information { + description + "Detail LSP information"; + uses PCE-LSP-DETAIL-INFO; + } + } + + grouping PCE-LSP-COUNTS-BAG { + description + "Number of LSPs"; + leaf all-ls-ps { + type uint32; + description + "Number of all LSPs"; + } + leaf up-ls-ps { + type uint32; + description + "Number of operational LSPs"; + } + leaf admin-up-ls-ps { + type uint32; + description + "Number of administratively up LSPs"; + } + leaf sr-ls-ps { + type uint32; + description + "Number of LSPs with Segment routing setup type"; + } + leaf rsvp-ls-ps { + type uint32; + description + "Number of LSPs with RSVP setup type"; + } + } + + grouping PCE-LSP-PER-PEER-SUMMARY-BAG { + description + "Number of LSPs for specific peer"; + container lsp-summary { + description + "Number of LSPs for specific peer"; + uses PCE-LSP-COUNTS-BAG; + } + container peer-address { + description + "Peer address"; + uses PCE-IP-ADDR-TYPE; + } + } + + grouping PCE-LSP-SUMMARY-BAG { + description + "PCE LSP summary information"; + container all-ls-ps { + description + "Summary for all peers"; + uses PCE-LSP-COUNTS-BAG; + } + list peer-ls-ps-info { + description + "Number of LSPs for specific peer"; + uses PCE-LSP-PER-PEER-SUMMARY-BAG; + } + } + + grouping PCE-ASSO-INFO { + description + "PCE LSP association information"; + container association-source { + description + "Association Source"; + uses PCE-IP-ADDR-TYPE; + } + leaf association-type { + type uint32; + description + "Association Type"; + } + leaf association-id { + type uint32; + description + "Association ID"; + } + } + + grouping SRV6-SID-STRUCTURE-BAG { + description + "SRv6 MicroSID Structure"; + leaf locator-block-length { + type uint8; + description + "Block Length"; + } + leaf locator-node-length { + type uint8; + description + "Node Length"; + } + leaf function-length { + type uint8; + description + "Function Length"; + } + leaf argument-length { + type uint8; + description + "Argument Length"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping PCE-SRV6-BSID-INFO { + description + "SRv6 Binding SID Info"; + container binding-sid-prefix { + description + "SRv6 Binding SID prefix"; + uses PCE-IP-ADDR-TYPE; + } + container binding-sid-behavior { + description + "Binding SID behavior"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container structure { + description + "The SRv6 strucutre of the SID"; + uses SRV6-SID-STRUCTURE-BAG; + } + } + + grouping PCE-LSP-INFO { + description + "LSP common information"; + container source-address { + description + "Source address"; + uses PCE-IP-ADDR-TYPE; + } + container destination-address { + description + "Destination address"; + uses PCE-IP-ADDR-TYPE; + } + container srv6-binding-sid { + description + "SRv6 Binding SID"; + uses PCE-SRV6-BSID-INFO; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf lspid { + type uint32; + description + "LSP ID"; + } + leaf binding-sid { + type uint32; + description + "Binding SID"; + } + leaf lsp-setup-type { + type Lsp-setup; + description + "LSP Setup Type"; + } + leaf operational-state { + type Pcep-lsp-state; + description + "Operational state"; + } + leaf administrative-state { + type Lsp-state; + description + "Administrative state"; + } + leaf msd { + type uint32; + description + "Maximum SID Depth"; + } + leaf absolute-margin { + type uint32; + description + "Absolute Margin"; + } + leaf relative-margin { + type uint32; + description + "Relative Margin"; + } + leaf igp-bound { + type uint32; + description + "IGP Metric Bound"; + } + leaf te-bound { + type uint32; + description + "TE Metric Bound"; + } + leaf latency-bound { + type uint32; + description + "Latency Metric Bound"; + } + leaf hop-count-bound { + type uint32; + description + "HopCount Metric Bound"; + } + leaf anycast-sid-inclusion { + type uint32; + description + "Anycast SID Inclusion"; + } + } + + grouping PCE-IP-ADDR-TYPE { + description + "PCE IP ADDR TYPE"; + leaf af-name { + type Pce-af-id; + description + "AFName"; + } + leaf ipv4 { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type Pce-ipv4-address; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Pce-ipv6-address; + description + "IPv6 address type"; + } + } + + grouping PCE-TUN-BAG { + description + "Tunnel information"; + container pcc-address { + description + "PCC address"; + uses PCE-IP-ADDR-TYPE; + } + leaf tunnel-name-xr { + type string; + description + "Tunnel Name"; + } + list brief-lsp-information { + description + "Brief LSP information"; + uses PCE-LSP-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub2.yang new file mode 100644 index 000000000..d6ac56c23 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper-sub2.yang @@ -0,0 +1,364 @@ +submodule Cisco-IOS-XR-infra-xtc-oper-sub2 { + belongs-to Cisco-IOS-XR-infra-xtc-oper { + prefix Cisco-IOS-XR-infra-xtc-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-xtc-oper-sub1 { + revision-date 2023-06-20; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR infra-xtc package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-06-20 { + description + "Display override rule override for SID protection-type constraint. + 2023-04-06 + Add a field to differentiate SRv6 path in path work group + 2023-03-30 + Changed work group operational data to use an ID based system as the key instead of a complex set of attributes. + 2023-03-21 + Added SID-algo in override rule + 2023-03-09 + Added protection type for path work group + 2023-01-24 + Added fields for Flex-algo ASLA attributes on IPv4 and IPv6 links + 2023-01-18 + Updated description of flex-algo leaf to SID algorithm in cspf-sr-mpls. + 2022-10-20 + Added initiated tunnel operational information including PCE-INITIATED-TUN-BAG grouping. + 2022-09-01 + Added field to display p2mp rest initiated treeSID. + 2022-07-29 + changed default value of initial-verify-startup timer from 120 seconds to 180 seconds. + 2022-07-11 + Added leaves for blocked reoptimization and adjacency SID only + 2022-06-28 + Added weight outputs to srv6 nexthop and lsp sls. + 2022-06-02 + Removed prefix-metric entry from the topology node. + 2022-05-13 + TreeSID PCE HA, added few fields on oper commands + 2022-04-29 + Added some field in oper bag for Dynamic CS policies + 2022-04-26 + TreeSID PCE HA, oper enhancements + 2022-03-09 + Pce-sr-sid enum updated to add unknown-srv6sid element + 2022-03-03 + Modified description for override rules related leaves + 2022-03-03 + Added capability-srv6 in brief-pcep-information container + 2022-02-24 + Added PCE-BWOD-BEST-CLIENT-BAG and PCE-BWOD-SUB-DELEGATION-BAG grouping. + 2022-01-28 + Added maximum-delay in PCE-LSP-DETAIL-INFO grouping. + 2022-01-27 + Adding performance-statistics class + 2022-01-17 + Change the type of extended-value leaf from leaf-list to list. + 2022-01-14 + Added support for metric bounds for CSPF + 2022-01-10 + Added sid-algorithm and sid-algorithm-set in PCE-SIBLING-SYNCED-LSP-BAG grouping. Added sid-algorithm and sid-algorithm-set in PCE-LSP-DETAIL-INFO grouping. + 2022-01-07 + Added SID algorithm constraint to LSP. + 2021-12-14 + Moving algorithm and computation time in the path query results object + 2021-11-21 + Added prefix-metric entry in the topology node. + 2021-11-09 + Added unreliable flag and update drop count in topology summary bag. + 2021-10-21 + Adding algorithm and computation time to path query results + 2021-10-08 + Added support for override rules"; + semver:module-version "5.0.0"; + } + revision 2021-09-28 { + description + "Added protection type set in candidate path constraints. + 2021-08-27 + Added binding-sid to pce sibling synced lsp. + 2021-06-21 + un-hide cspf-srv6 option in cspf srv6 path calculation. + 2021-05-26 + Added keys to topology-summary list."; + semver:module-version "4.0.0"; + } + revision 2021-04-22 { + description + "Added TE metric field for Flex-algo ASLA. + 2021-04-08 + Change protection type from integer to enum. + 2021-03-31 + Added new enumeration Api-peer-stats-info-oper. Changed type of type in API-PEER-STATS-INFO to use Api-peer-stats-info-oper. This is a non backward compatible change. + 2021-03-04 + Added MSD list per topology link. Added SRLB list per topology node. + 2021-01-29 + Updated SRv6 Endpoint function from int to enum. + 2020-09-16 + Adding operational nodes for new features path invalidation drop protected and unprotected path Operational nodes for PCE segment-routing traffic-eng policy + 2020-09-01 + Added uB6SID field in the LSP object + 2020-08-18 + Added SRv6 LSP details fields in the LSP object + 2020-07-13 + Added NodeID fields in the uN SID object in the IPv6 topology. + 2020-04-20 + Added fields in the PCE IPv6 link object."; + semver:module-version "3.0.0"; + } + revision 2020-03-17 { + description + "Add flex-algo related operational nodes. Updated description of statistics-nodes. Add SR-PAG related operational nodes. Add PCE authentication related operational nodes. + 2020-02-03 + Added TCP AuthenticationOption related operational model. Implemented show pce authentication. Added classes AuthenticationKeyTable and AuthenticationKey. + 2019-11-07 + Adding leaf preference, leaf interface-name, and leaf profile-id to support a new HTTP API bindpoint for sibling PCEs. + 2019-10-09 + Adding enum sr-flex-algo-prefix-sid, enum pce-cspf-flex-algo-definition-mistmatch, leaf flex-algo-prefix-sids, list sr-flex-algo, and container flex-algos to support Flex-algo info."; + semver:module-version "2.0.0"; + } + revision 2019-10-02 { + description + "Added REST peer statistic information. + 2019-09-27 + Implement new show pce lsp and show pce initiated tunnels commands for Optima"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-08-24 { + description + "Added C flag to pcep flags."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-05-31 { + description + "Revision description string."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PCE-AFFINITY-TUN { + description + "PCE Affinity"; + leaf affinity-exclude-any { + type uint32; + description + "Affinity exclude any"; + } + leaf affinity-include-any { + type uint32; + description + "Affinity include any"; + } + leaf affinity-include-all { + type uint32; + description + "Affinity include all"; + } + } + + grouping PCE-HOP-DETAIL { + description + "Hop details"; + container hop-local-address { + description + "Hop local address"; + uses PCE-IP-ADDR-TYPE; + } + container hop-remote-address { + description + "Hop remote address"; + uses PCE-IP-ADDR-TYPE; + } + leaf label { + type uint32; + description + "MPLS label"; + } + leaf sid-type { + type uint8; + description + "Sid type"; + } + leaf local-interface-index { + type uint32; + description + "Local interface index"; + } + leaf remote-interface-index { + type uint32; + description + "Remote interface index"; + } + } + + grouping PCE-INITIATED-TUN-BAG { + description + "PCE INITIATED TUNNEL BAG"; + container pcc-address-xr { + description + "PCC address"; + uses PCE-IP-ADDR-TYPE; + } + container source-address { + description + "Source address"; + uses PCE-IP-ADDR-TYPE; + } + container destination-address { + description + "Destination address"; + uses PCE-IP-ADDR-TYPE; + } + container affinity { + description + "Affinity"; + uses PCE-AFFINITY-TUN; + } + container association-ipv4 { + description + "Association IPv4 address"; + uses PCE-IP-ADDR-TYPE; + } + container association-source { + description + "Association IPv4 source address"; + uses PCE-IP-ADDR-TYPE; + } + container disjointness { + description + "Disjointness info"; + uses PCE-ASSO-INFO; + } + leaf symbolic-name { + type string; + description + "Symbolic Name"; + } + leaf setup-type { + type uint8; + description + "Setup type"; + } + leaf color { + type uint32; + description + "Color"; + } + leaf preference { + type uint32; + description + "Preference"; + } + leaf binding-label { + type uint32; + description + "Binding label"; + } + leaf hop-computed-time { + type uint32; + description + "Hop list computed time"; + } + leaf metric-type { + type uint32; + description + "Metric type"; + } + leaf metric-value { + type uint32; + description + "Metric value"; + } + leaf srpid { + type uint32; + description + "Stateful request parameter ID"; + } + leaf tunnel-initiated-by { + type uint32; + description + "Creator"; + } + leaf association-id { + type uint16; + description + "Association ID"; + } + leaf autoroute { + type boolean; + description + "Deprecated"; + } + leaf xtc-controlled { + type boolean; + description + "Allow reoptimizations by xtc"; + } + leaf is-created-by-exec { + type boolean; + description + "Created from exec cli"; + } + leaf protected { + type boolean; + description + "Protected status"; + } + leaf sid-algorithm-set { + type boolean; + description + "Flag to indicate if SID algorithm is set"; + } + leaf sid-algorithm { + type uint8; + description + "SID algorithm value. Applicable if + SIDAlgorithmSet is set"; + } + list hop { + description + "Hop array"; + uses PCE-HOP-DETAIL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper.yang new file mode 100644 index 000000000..74c52b8e4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-infra-xtc-oper.yang @@ -0,0 +1,1269 @@ +module Cisco-IOS-XR-infra-xtc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-infra-xtc-oper"; + prefix infra-xtc-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-infra-xtc-oper-sub2 { + revision-date 2023-06-20; + } + include Cisco-IOS-XR-infra-xtc-oper-sub1 { + revision-date 2023-06-20; + } + + 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 infra-xtc package operational data. + + This module contains definitions + for the following management objects: + pce-lsp-data: PCE LSP's data + pce-peer: PCE peer data + pce-topology: PCE topology data + pce: PCE operational data + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-06-20 { + description + "Display override rule override for SID protection-type constraint. + 2023-04-06 + Add a field to differentiate SRv6 path in path work group + 2023-03-30 + Changed work group operational data to use an ID based system as the key instead of a complex set of attributes. + 2023-03-21 + Added SID-algo in override rule + 2023-03-09 + Added protection type for path work group + 2023-01-24 + Added fields for Flex-algo ASLA attributes on IPv4 and IPv6 links + 2023-01-18 + Updated description of flex-algo leaf to SID algorithm in cspf-sr-mpls. + 2022-10-20 + Added initiated tunnel operational information including PCE-INITIATED-TUN-BAG grouping. + 2022-09-01 + Added field to display p2mp rest initiated treeSID. + 2022-07-29 + changed default value of initial-verify-startup timer from 120 seconds to 180 seconds. + 2022-07-11 + Added leaves for blocked reoptimization and adjacency SID only + 2022-06-28 + Added weight outputs to srv6 nexthop and lsp sls. + 2022-06-02 + Removed prefix-metric entry from the topology node. + 2022-05-13 + TreeSID PCE HA, added few fields on oper commands + 2022-04-29 + Added some field in oper bag for Dynamic CS policies + 2022-04-26 + TreeSID PCE HA, oper enhancements + 2022-03-09 + Pce-sr-sid enum updated to add unknown-srv6sid element + 2022-03-03 + Modified description for override rules related leaves + 2022-03-03 + Added capability-srv6 in brief-pcep-information container + 2022-02-24 + Added PCE-BWOD-BEST-CLIENT-BAG and PCE-BWOD-SUB-DELEGATION-BAG grouping. + 2022-01-28 + Added maximum-delay in PCE-LSP-DETAIL-INFO grouping. + 2022-01-27 + Adding performance-statistics class + 2022-01-17 + Change the type of extended-value leaf from leaf-list to list. + 2022-01-14 + Added support for metric bounds for CSPF + 2022-01-10 + Added sid-algorithm and sid-algorithm-set in PCE-SIBLING-SYNCED-LSP-BAG grouping. Added sid-algorithm and sid-algorithm-set in PCE-LSP-DETAIL-INFO grouping. + 2022-01-07 + Added SID algorithm constraint to LSP. + 2021-12-14 + Moving algorithm and computation time in the path query results object + 2021-11-21 + Added prefix-metric entry in the topology node. + 2021-11-09 + Added unreliable flag and update drop count in topology summary bag. + 2021-10-21 + Adding algorithm and computation time to path query results + 2021-10-08 + Added support for override rules"; + semver:module-version "5.0.0"; + } + revision 2021-09-28 { + description + "Added protection type set in candidate path constraints. + 2021-08-27 + Added binding-sid to pce sibling synced lsp. + 2021-06-21 + un-hide cspf-srv6 option in cspf srv6 path calculation. + 2021-05-26 + Added keys to topology-summary list."; + semver:module-version "4.0.0"; + } + revision 2021-04-22 { + description + "Added TE metric field for Flex-algo ASLA. + 2021-04-08 + Change protection type from integer to enum. + 2021-03-31 + Added new enumeration Api-peer-stats-info-oper. Changed type of type in API-PEER-STATS-INFO to use Api-peer-stats-info-oper. This is a non backward compatible change. + 2021-03-04 + Added MSD list per topology link. Added SRLB list per topology node. + 2021-01-29 + Updated SRv6 Endpoint function from int to enum. + 2020-09-16 + Adding operational nodes for new features path invalidation drop protected and unprotected path Operational nodes for PCE segment-routing traffic-eng policy + 2020-09-01 + Added uB6SID field in the LSP object + 2020-08-18 + Added SRv6 LSP details fields in the LSP object + 2020-07-13 + Added NodeID fields in the uN SID object in the IPv6 topology. + 2020-04-20 + Added fields in the PCE IPv6 link object."; + semver:module-version "3.0.0"; + } + revision 2020-03-17 { + description + "Add flex-algo related operational nodes. Updated description of statistics-nodes. Add SR-PAG related operational nodes. Add PCE authentication related operational nodes. + 2020-02-03 + Added TCP AuthenticationOption related operational model. Implemented show pce authentication. Added classes AuthenticationKeyTable and AuthenticationKey. + 2019-11-07 + Adding leaf preference, leaf interface-name, and leaf profile-id to support a new HTTP API bindpoint for sibling PCEs. + 2019-10-09 + Adding enum sr-flex-algo-prefix-sid, enum pce-cspf-flex-algo-definition-mistmatch, leaf flex-algo-prefix-sids, list sr-flex-algo, and container flex-algos to support Flex-algo info."; + semver:module-version "2.0.0"; + } + revision 2019-10-02 { + description + "Added REST peer statistic information. + 2019-09-27 + Implement new show pce lsp and show pce initiated tunnels commands for Optima"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-08-24 { + description + "Added C flag to pcep flags."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-05-31 { + description + "Revision description string."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pce-address-family-summary { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "ipv6" { + value 2; + description + "IPv6 address family"; + } + enum "all" { + value 3; + description + "All address families"; + } + } + description + "Pce address family summary"; + } + + typedef Pceigp-protocol { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown protocol"; + } + enum "isis" { + value 1; + description + "ISIS protocol"; + } + enum "ospf" { + value 2; + description + "OSPF protocol"; + } + enum "bgp" { + value 3; + description + "BGP protocol"; + } + enum "te" { + value 4; + description + "TE protocol"; + } + } + description + "Pceigp protocol"; + } + + typedef Pceigp-protocol-summary { + type enumeration { + enum "isis" { + value 1; + description + "ISIS protocol"; + } + enum "ospf" { + value 2; + description + "OSPF protocol"; + } + enum "bgp" { + value 3; + description + "BGP protocol"; + } + enum "te" { + value 4; + description + "TE protocol"; + } + enum "all" { + value 5; + description + "All protocols"; + } + } + description + "Pceigp protocol summary"; + } + + typedef Pce-asso { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown type"; + } + enum "link" { + value 1; + description + "LINK"; + } + enum "node" { + value 2; + description + "NODE"; + } + enum "srlg" { + value 3; + description + "SRLG"; + } + } + description + "Pce asso"; + } + + typedef Xtc-adj-sid-protection { + type enumeration { + enum "protected-preferred" { + value 0; + description + "Protected adj SID preferred"; + } + enum "unprotected-only" { + value 1; + description + "Unprotected adj SID only"; + } + enum "protected-only" { + value 2; + description + "Protected adj SID only"; + } + enum "unprotected-preferred" { + value 3; + description + "Unprotected adj SID preferred"; + } + } + description + "Xtc adj sid protection"; + } + + typedef Pce-address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "ipv6" { + value 2; + description + "IPv6 address family"; + } + } + description + "Pce address family"; + } + + grouping PEER-TABLE { + description + "Common node of pce, pce-peer"; + container peer-infos { + description + "Peers database in XTC"; + list peer-info { + key "peer-address"; + description + "PCE peer information"; + leaf peer-address { + type inet:ip-address-no-zone; + description + "Peer Address"; + } + uses PCE-PEER-BAG; + } + } + } + + grouping INITIATED-TUN-TABLE { + description + "Common node of pce, pce-lsp-data"; + container initiated-tun-infos { + description + "Initiated Tunnel database in XTC"; + list initiated-tun-info { + description + "Initiated Tunnel information"; + leaf pcc-address { + type inet:ip-address-no-zone; + description + "PCC Address"; + } + leaf tunnel-name { + type string; + description + "Tunnel name"; + } + uses PCE-INITIATED-TUN-BAG; + } + } + } + + grouping PEER-DETAIL-TABLE { + description + "Common node of pce, pce-peer"; + container peer-detail-infos { + description + "Detailed peers database in XTC"; + list peer-detail-info { + key "peer-address"; + description + "Detailed PCE peer information"; + leaf peer-address { + type inet:ip-address-no-zone; + description + "Peer Address"; + } + uses PCE-PEER-DETAIL-BAG; + } + } + } + + grouping PREFIX-TABLE { + description + "Common node of pce, pce-topology"; + container prefix-infos { + description + "Prefixes database in XTC"; + list prefix-info { + key "node-identifier"; + description + "PCE prefix information"; + leaf node-identifier { + type uint32; + description + "Node ID"; + } + uses PCE-PFX-BAG; + } + } + } + + grouping TUNNEL-TABLE { + description + "Common node of pce, pce-lsp-data"; + container tunnel-infos { + description + "Tunnel database in XTC"; + list tunnel-info { + key "peer-address plsp-id tunnel-name"; + description + "Tunnel information"; + leaf peer-address { + type inet:ip-address-no-zone; + description + "Peer Address"; + } + leaf plsp-id { + type uint32; + description + "PCEP LSP ID"; + } + leaf tunnel-name { + type string; + description + "Tunnel name"; + } + uses PCE-TUN-BAG; + } + } + } + + grouping REMOTE-PREFIX-TABLE { + description + "Common node of pce, pce-topology"; + container remote-prefixes { + description + "Remote Prefixes database in PCE"; + list remote-prefix { + key "remote-pce-id"; + description + "PCE remote prefix information"; + leaf remote-pce-id { + type uint32; + description + "Remote PCE ID"; + } + uses PCE-REMOTE-PFX-BAG; + } + } + } + + grouping LSP-SUMMARY { + description + "Common node of pce, pce-lsp-data"; + container lsp-summary { + description + "LSP summary database in XTC"; + uses PCE-LSP-SUMMARY-BAG; + } + } + + grouping TOPOLOGY-SUMMARY-TABLE { + description + "Common node of pce, pce-topology"; + container topology-summaries { + description + "Node summary database in XTC"; + list topology-summary { + key "af protocol"; + description + "Node summary database in XTC"; + leaf af { + type Pce-address-family-summary; + description + "Only show data related to the specified + address family"; + } + leaf protocol { + type Pceigp-protocol-summary; + description + "Match nodes from the specified IGP protocol"; + } + uses PCE-NODE-SUMMARY-BAG; + } + } + } + + grouping TOPOLOGY-NODE-TABLE { + description + "Common node of pce, pce-topology"; + container topology-nodes { + description + "Node database in XTC"; + list topology-node { + key "node-identifier"; + description + "Node information"; + leaf node-identifier { + type uint32; + description + "Node Identifier"; + } + uses PCE-XTC-NODE-BAG; + } + } + } + + grouping TUNNEL-DETAIL-TABLE { + description + "Common node of pce, pce-lsp-data"; + container tunnel-detail-infos { + description + "Detailed tunnel database in XTC"; + list tunnel-detail-info { + key "peer-address plsp-id tunnel-name"; + description + "Detailed tunnel information"; + leaf peer-address { + type inet:ip-address-no-zone; + description + "Peer Address"; + } + leaf plsp-id { + type uint32; + description + "PCEP LSP ID"; + } + leaf tunnel-name { + type string; + description + "Tunnel name"; + } + uses PCE-TUN-DETAIL-BAG; + } + } + } + + container pce-lsp-data { + config false; + description + "PCE LSP's data"; + uses TUNNEL-TABLE; + uses INITIATED-TUN-TABLE; + uses LSP-SUMMARY; + uses TUNNEL-DETAIL-TABLE; + } + container pce-peer { + config false; + description + "PCE peer data"; + uses PEER-DETAIL-TABLE; + uses PEER-TABLE; + } + container pce-topology { + config false; + description + "PCE topology data"; + uses REMOTE-PREFIX-TABLE; + uses TOPOLOGY-NODE-TABLE; + uses TOPOLOGY-SUMMARY-TABLE; + uses PREFIX-TABLE; + } + container pce { + config false; + description + "PCE operational data"; + container authentication-keys { + description + "Authentication keys"; + list authentication-key { + key "ip-address"; + description + "PCE peer IP address"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address"; + } + uses PCE-PEER-AUTH-OPTION-BAG; + } + } + container cspf-sr-mpls { + description + "CSPF for SR MPLS path info"; + container cspf-sr-mpls-paths { + description + "This table models the path calculation + capabilities in XTC.A GET operation for the + complete table will return no entries."; + list cspf-sr-mpls-path { + description + "A GET operation on this class returns the path + ."; + leaf af { + type uint32; + description + "Address Family"; + } + leaf source1 { + type inet:ip-address-no-zone; + description + "Source of path 1"; + } + leaf destination1 { + type inet:ip-address-no-zone; + description + "Destination of path 1"; + } + leaf metric-type { + type uint32; + description + "Metric type"; + } + leaf source2 { + type inet:ip-address-no-zone; + description + "Source of path 2"; + } + leaf destination2 { + type inet:ip-address-no-zone; + description + "Destination of path 2"; + } + leaf disjoint-level { + type uint32; + description + "Disjointness level"; + } + leaf disjoint-strict { + type uint32; + description + "Strict disjointness required"; + } + leaf shortest-path { + type uint32; + description + "Whether path 1 or 2 should be shortest"; + } + leaf msd1 { + type uint32; + description + "MSD for path 1"; + } + leaf msd2 { + type uint32; + description + "MSD for path 2"; + } + leaf relative-margin { + type uint32; + description + "Relative Margin"; + } + leaf absolute-margin { + type uint32; + description + "Absolute Margin"; + } + leaf affinity-include-all { + type uint32; + description + "Affinity include-all constraint"; + } + leaf affinity-include-any { + type uint32; + description + "Affinity include-any constraint"; + } + leaf affinity-exclude-any { + type uint32; + description + "Affinity exclude-any constraint"; + } + leaf protection-type1 { + type Xtc-adj-sid-protection; + description + "Protection type for path 1"; + } + leaf protection-type2 { + type Xtc-adj-sid-protection; + description + "Protection type for path 2"; + } + leaf flex-algo { + type uint32; + description + "SID algorithm number. 0, 1, 128-255"; + } + leaf anycast-include { + type boolean; + description + "Perform anycast SID inclusion"; + } + leaf bound-igp { + type uint32; + description + "IGP metric bound"; + } + leaf bound-te { + type uint32; + description + "TE metric bound"; + } + leaf bound-latency { + type uint32; + description + "Latency metric bound"; + } + leaf bound-hop-count { + type uint32; + description + "Hop-count metric bound"; + } + uses PCE-SR-MPLS-PATH-LIST-BAG; + } + } + } + container segment-routing { + description + "Segment-Routing related data"; + container traffic-engineering { + description + "Traffic-engineering related data"; + container policies { + description + "PCE policies"; + list policy { + description + "PCE policy"; + leaf pcc-address { + type inet:ip-address-no-zone; + description + "PCC Address"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Policy Name"; + } + uses PCE-POLICY-BAG; + } + } + } + } + container verification-events { + description + "PCE Verification events in XTC"; + list verification-event { + key "event-idx"; + description + "PCE single verification event"; + leaf event-idx { + type uint32; + description + "Index of an event"; + } + uses PCE-EVENT-INFO; + } + } + container api { + description + "PCE API details"; + container bandwidth-on-demand { + description + "PCE BWoD submode"; + container active-client { + description + "Active client information"; + uses PCE-BWOD-BEST-CLIENT-BAG; + } + container sub-delegations { + description + "BWoD sub-delegation table"; + list sub-delegation { + description + "BWoD sub-delegation details"; + leaf pcc-address { + type inet:ip-address-no-zone; + description + "PCC Address"; + } + leaf tunnel-name { + type string; + description + "Name of the tunnel"; + } + uses PCE-BWOD-SUB-DELEGATION-BAG; + } + } + } + container sibling { + description + "PCE sibling"; + container synced-lsps { + description + "Synced LSP table"; + list synced-lsp { + description + "Synced LSP details"; + leaf pcc-address { + type inet:ip-address-no-zone; + description + "PCC Address"; + } + leaf lsp-name { + type string; + description + "Name of the synced LSP"; + } + leaf remote-flag { + type boolean; + description + "Flag to indicate lsp data is remote"; + } + uses PCE-SIBLING-SYNCED-LSP-BAG; + } + } + container connection { + description + "Connection information"; + uses PCE-SIBLING-CONN-BAG; + } + } + } + container p2mp-policies { + description + "P2MP policy database in SR-PCE"; + list p2mp-policy { + key "name"; + description + "Policy information"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Policy name"; + } + uses PCE-TREESID-BAG; + } + } + container peer-summaries { + description + "Detailed PCE peer information"; + list peer-summary { + key "af"; + description + "Summary PCE peer information"; + leaf af { + type Pce-address-family; + description + "Only show data related to the specified + address family"; + } + uses PCE-PEER-SUMMARY-BAG; + } + } + container cspf-srv6 { + description + "CSPF for SRV6 path info"; + container cspf-srv6-paths { + description + "This table models the path calculation + capabilities in XTC.A GET operation for the + complete table will return no entries."; + list cspf-srv6-path { + description + "A GET operation on this class returns the path + ."; + leaf af { + type uint32; + description + "Address Family"; + } + leaf source1 { + type inet:ip-address-no-zone; + description + "Source of path 1"; + } + leaf destination1 { + type inet:ip-address-no-zone; + description + "Destination of path 1"; + } + leaf metric-type { + type uint32; + description + "Metric type"; + } + leaf source2 { + type inet:ip-address-no-zone; + description + "Source of path 2"; + } + leaf destination2 { + type inet:ip-address-no-zone; + description + "Destination of path 2"; + } + leaf disjoint-level { + type uint32; + description + "Disjointness level"; + } + leaf disjoint-strict { + type uint32; + description + "Strict disjointness required"; + } + leaf shortest-path { + type uint32; + description + "Whether path 1 or 2 should be shortest"; + } + leaf msd1 { + type uint32; + description + "MSD for path 1"; + } + leaf msd2 { + type uint32; + description + "MSD for path 2"; + } + leaf relative-margin { + type uint32; + description + "Relative Margin"; + } + leaf absolute-margin { + type uint32; + description + "Absolute Margin"; + } + leaf affinity-include-all { + type uint32; + description + "Affinity include-all constraint"; + } + leaf affinity-include-any { + type uint32; + description + "Affinity include-any constraint"; + } + leaf affinity-exclude-any { + type uint32; + description + "Affinity exclude-any constraint"; + } + uses PCE-SR-MPLS-PATH-LIST-BAG; + } + } + } + container flex-algos { + description + "FlexAlgo database in PCE"; + list flex-algo { + description + "FlexAlgo Definition"; + leaf igp-type { + type Pceigp-protocol; + description + "Match nodes from the specified IGP protocol"; + } + leaf domain-id { + type uint32; + description + "Domain ID"; + } + leaf area-id { + type uint32; + description + "Area ID"; + } + uses PCE-FLEX-ALGO-AREA; + } + } + container work-nodes { + description + "Work node database"; + list work-node { + key "index"; + description + "Path work node information"; + leaf index { + type uint32; + description + "Position in work list"; + } + uses PATH-WORK-NODE; + } + } + container override-rules { + description + "Override rules"; + list override-rule { + key "sequence-number"; + description + "Override rule"; + leaf sequence-number { + type uint32; + description + "Sequence number"; + } + uses PCE-OV-RULE-BAG; + } + } + container trace-buffer-summaries { + description + "Summary of all trace buffers"; + list trace-buffer-summary { + key "name"; + description + "Summary of specific trace buffer"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Trace buffer name"; + } + uses CMN-TRACE-BUFFER-SUMMARY-BAG; + } + } + container association-infos { + description + "Associaition database in XTC"; + list association-info { + key "group-id"; + description + "PCE Association information"; + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf type { + type Pce-asso; + description + "Type"; + } + leaf sub-id { + type inet:ip-address-no-zone; + description + "Sub ID"; + } + uses PCE-ASSO-BAG; + } + } + container work-groups { + description + "Work group database"; + list work-group { + key "algo"; + description + "Path work group information"; + leaf algo { + type uint32; + description + "Algorithm"; + } + leaf metric-type { + type uint32; + description + "Metric Type"; + } + leaf msd { + type uint32; + description + "Max SID Depth"; + } + leaf inc-all { + type uint32; + description + "Include-All affinity"; + } + leaf exc-any { + type uint32; + description + "Exclude-Any affinity"; + } + leaf inc-any { + type uint32; + description + "Include-Any affinity"; + } + leaf source { + type inet:ip-address-no-zone; + description + "Source"; + } + leaf prot-type { + type Xtc-adj-sid-protection; + description + "Protection type"; + } + uses PATH-WORK-GROUP; + } + } + container paths { + description + "This table models the path calculation + capabilities in XTC.A GET operation for the + complete table will return no entries."; + list path { + key "af source destination"; + description + "A GET operation on this class returns the path."; + leaf af { + type uint32; + description + "Address Family"; + } + leaf source { + type inet:ip-address-no-zone; + description + "Source of path"; + } + leaf destination { + type inet:ip-address-no-zone; + description + "Destination of path"; + } + uses PCE-PATH-BAG; + } + } + container p2mp-policy-infos { + description + "P2MP policy database indexed by Root address in + XTC"; + list p2mp-policy-info { + key "root-address tree-id"; + description + "P2MP Policy information"; + leaf root-address { + type inet:ip-address-no-zone; + description + "Root Address"; + } + leaf tree-id { + type uint32; + description + "P2MP Policy Tree-ID"; + } + uses PCE-TREESID-BAG; + } + } + container cspf { + description + "CSPF path info"; + container cspf-paths { + description + "This table models the path calculation + capabilities in XTC.A GET operation for the + complete table will return no entries."; + list cspf-path { + description + "A GET operation on this class returns the path + ."; + leaf af { + type uint32; + description + "Address Family"; + } + leaf source1 { + type inet:ip-address-no-zone; + description + "Source of path 1"; + } + leaf destination1 { + type inet:ip-address-no-zone; + description + "Destination of path 1"; + } + leaf metric-type { + type uint32; + description + "Metric type"; + } + leaf source2 { + type inet:ip-address-no-zone; + description + "Source of path 2"; + } + leaf destination2 { + type inet:ip-address-no-zone; + description + "Destination of path 2"; + } + leaf disjoint-level { + type uint32; + description + "Disjointness level"; + } + leaf disjoint-strict { + type uint32; + description + "Strict disjointness required"; + } + leaf shortest-path { + type uint32; + description + "Whether path 1 or 2 should be shortest"; + } + uses PCE-PATH-LIST-BAG; + } + } + } + container statistics-nodes { + description + "PCE API peer statistics"; + list statistics-node { + key "ip"; + description + "PCE API peer statistics information"; + leaf ip { + type inet:ip-address-no-zone; + description + "Specify IPv4 or v6 Address"; + } + uses API-PEER-STATS-BAG; + } + } + container performance-statistics { + description + "PCE performance peer statistics"; + uses PCE-PERFORMANCE-STATS-BAG; + } + uses REMOTE-PREFIX-TABLE; + uses TUNNEL-TABLE; + uses PEER-DETAIL-TABLE; + uses TOPOLOGY-NODE-TABLE; + uses TOPOLOGY-SUMMARY-TABLE; + uses INITIATED-TUN-TABLE; + uses PREFIX-TABLE; + uses LSP-SUMMARY; + uses PEER-TABLE; + uses TUNNEL-DETAIL-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-act.yang new file mode 100644 index 000000000..18cc716d2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-act.yang @@ -0,0 +1,395 @@ +module Cisco-IOS-XR-install-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-install-act"; + prefix install-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 install actions. + + Copyright (c) 2018-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-02 { + description + "Addition of support for install replace reimage. + 2022-07-11 + Addition of ability to skip upgrade matrix checks for source + 2022-06-27 + Addition of ability to skip upgrade matrix checks for replace and + rollback + 2021-09-28 + RFC 6020 section 12 and RFC 8407 sections 4.13,4.14 compliance"; + semver:module-version "2.1.0"; + } + revision 2021-08-31 { + description + "7.5.1 release features: + Ability to indicate to try operations best-effort with the force option."; + semver:module-version "2.0.0"; + } + revision 2021-03-22 { + description + "7.4.1 release features: + Ability to add a description to a commit. + 2019-12-10 + Addition of install-mode-type enum, deprecation of update-all leaf, and + addition of tar to packages-source-type"; + semver:module-version "1.2.0"; + } + revision 2019-11-05 { + description + "Addition of INST-SHARED-OP-ID-TYPE for the return type of action RPCs"; + semver:module-version "1.1.0"; + } + revision 2019-10-03 { + description + "Addition of apply type enumeration and option for replace/source commands + 2019-10-01 + Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-05 { + description + "IOS XR 7.0.1 revision."; + } + + typedef replace-source-type { + type enumeration { + enum "local" { + description + "Install from a local file path"; + } + enum "http" { + description + "Install over http"; + } + enum "https" { + description + "Install over https"; + } + enum "scp" { + description + "Install over scp"; + } + enum "ftp" { + description + "Install over ftp"; + } + enum "tftp" { + description + "Install over tftp"; + } + enum "sftp" { + description + "Install over sftp"; + } + } + description + "replace source type"; + } + + typedef packages-source-type { + type enumeration { + enum "local" { + description + "Install from a local directory or repository containing RPMs and/or + tar files"; + } + enum "http" { + description + "Install over http"; + } + enum "https" { + description + "Install over https"; + } + enum "scp" { + description + "Install over scp"; + } + enum "ftp" { + description + "Install over ftp"; + } + enum "tftp" { + description + "Install over tftp"; + } + enum "sftp" { + description + "Install over sftp"; + } + enum "any-configured-repository" { + description + "Install from any configured repository"; + } + enum "configured-repository" { + description + "Install from the given repository"; + } + enum "tar" { + description + "Install from a local tar file"; + } + } + description + "packages source type"; + } + + typedef config-type { + type enumeration { + enum "ignore" { + description + "Ignore the configuration in the given ISO"; + } + enum "merge" { + description + "Merge the configuration in the given ISO with existing + configuration"; + } + enum "replace" { + description + "Replace the existing configuration with the configuration + in the given ISO"; + } + } + description + "config type"; + } + + typedef apply-type { + type enumeration { + enum "restart" { + description + "Apply atomic change by restarting processes - only valid + for the augmented 'install-apply' operation"; + } + enum "reload" { + description + "Apply atomic change by reloading"; + } + enum "least-impactful" { + description + "Apply atomic change by least impactful method"; + } + } + description + "apply type"; + } + + typedef install-mode-type { + type enumeration { + enum "specified-packages" { + description + "Add the specified packages"; + } + enum "upgrade-all" { + description + "Upgrade all packages that have a higher version available"; + } + enum "install-all" { + description + "Install the highest compatible version of all packages + from a specified source"; + } + } + description + "Mode of install operation"; + } + + grouping INST-SHARED-OP-ID-TYPE { + description + "Return type for triggered actions"; + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "error information"; + } + } + + rpc install-replace { + description + "Replace the existing software with that from the given ISO"; + input { + leaf source-type { + type replace-source-type; + default "local"; + description + "Type of source used to obtain the ISO"; + } + leaf source { + type string; + mandatory true; + description + "Path to the location of the ISO"; + } + leaf file { + type string; + mandatory true; + description + "Name of the ISO to install"; + } + leaf reimage { + type boolean; + default "false"; + description + "Perform a reimage from disk to the specified ISO"; + } + leaf commit { + type boolean; + default "false"; + description + "Commit at the end of the replace operation, if the + software is successfully applied"; + } + leaf description { + type string; + description + "Description to be stored for the transaction ID"; + } + leaf config { + type config-type; + description + "Action to take on any configuration present in the ISO"; + } + leaf activation-type { + type apply-type; + default "least-impactful"; + description + "Activate the software using the specified apply type"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + leaf skip-upgrade-matrix-checks { + type boolean; + default "false"; + description + "Skip upgrade matrix checks when moving between XR versions"; + } + } + output { + uses INST-SHARED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install { + description + "Install packages from a given source"; + input { + container packages { + description + "Set of packages to install. Should be set only when 'install-mode' + is 'specified-packages'"; + leaf-list packagename { + type string; + description + "package name"; + } + } + leaf update-all { + type boolean; + default "false"; + status deprecated; + description + "True to update all packages using the given source, False + to only install or update the specified packages"; + } + leaf source-type { + type packages-source-type; + default "local"; + description + "Type of source used to obtain the packages"; + } + leaf source { + type string; + description + "Path to the location of the packages. If source-type is + 'any-configured-repository' this field is unused, and if + source-type is 'configured-repository' this should be the + name of the repository to use."; + } + leaf activation-type { + type apply-type; + default "least-impactful"; + description + "Activate the software using the specified apply type"; + } + leaf install-mode { + type install-mode-type; + default "specified-packages"; + description + "Mode of install operation"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + leaf skip-upgrade-matrix-checks { + type boolean; + default "false"; + description + "Skip upgrade matrix checks when moving between XR versions"; + } + } + output { + uses INST-SHARED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-commit { + description + "Commit the current software, such that it will persist over reload."; + input { + leaf description { + type string; + description + "Description to be stored for the transaction ID"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + } + output { + uses INST-SHARED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-act.yang new file mode 100644 index 000000000..4e29e6642 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-act.yang @@ -0,0 +1,446 @@ +module Cisco-IOS-XR-install-augmented-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-install-augmented-act"; + prefix install-augmented-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + import Cisco-IOS-XR-install-act { + prefix install-act; + } + + 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 augmented collection of YANG definitions for Cisco + IOS-XR install actions, and should be used along with + Cisco-IOS-XR-install-act.yang + + Copyright (c) 2016-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-03 { + description + "Addition of ability to skip upgrade matrix checks for replace and + rollback + 2021-09-28 + RFC 6020 section 12 and RFC 8407 sections 4.13,4.14 compliance + 2021-09-21 + Addition of force flag to package-abort"; + semver:module-version "3.3.0"; + } + revision 2021-01-14 { + description + "Addition of force flag"; + semver:module-version "3.2.0"; + } + revision 2020-08-03 { + description + "Modified tasks for the RPC operations."; + semver:module-version "3.1.0"; + } + revision 2020-03-06 { + description + "Removal of the install-reload-failed-nodes RPC + 2019-11-05 + Addition of INST-AUGMENTED-OP-ID-TYPE for the return type of action RPCs"; + semver:module-version "3.0.0"; + } + revision 2019-10-03 { + description + "Move apply type enum to Cisco-IOS-XR-install-act.yang + 2019-10-01 + Made changes to be RFC6087 compliant + 2019-09-19 + Allow user to indicate apply-type at the beginning of an operation."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-05 { + description + "IOS XR 7.0.1 revision."; + } + + typedef abort-type { + type enumeration { + enum "latest" { + description + "Abort the latest packaging operation"; + } + enum "all-since-apply" { + description + "Abort all packaging operations since the last apply"; + } + } + description + "abort type"; + } + + grouping INST-AUGMENTED-OP-ID-TYPE { + description + "Return type for triggered actions"; + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + } + + rpc install-package-add { + description + "Add all packages in a specified source, or the given list of packages"; + input { + container packages { + description + "List of packages to add, or empty to add all packages"; + leaf-list packagename { + type string; + description + "package name"; + } + } + leaf source-type { + type install-act:packages-source-type; + default "any-configured-repository"; + description + "Type of source used to obtain the packages"; + } + leaf source { + type string; + description + "Path to the location of the packages. If source-type is + 'any-configured-repository' this field is unused, and if + source-type is 'configured-repository' this should be the + name of the repository to use."; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-package-remove { + description + "Remove the given list of packages"; + input { + container packages { + description + "List of packages to remove"; + leaf-list packagename { + type string; + description + "package name"; + } + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-package-upgrade { + description + "Upgrade all packages, or the given list of packages"; + input { + container packages { + description + "List of packages to upgrade, or empty to upgrade all packages"; + leaf-list packagename { + type string; + description + "package name"; + } + } + leaf source-type { + type install-act:packages-source-type; + default "any-configured-repository"; + description + "Type of source used to obtain the packages"; + } + leaf source { + type string; + description + "Path to the location of the packages. If source-type is + 'any-configured-repository' this field is unused, and if + source-type is 'configured-repository' this should be the + name of the repository to use."; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-package-downgrade { + description + "Downgrade all packages in a specified source, or the given list of + packages"; + input { + container packages { + description + "List of packages to downgrade, or empty to downgrade all packages + in a specified source"; + leaf-list packagename { + type string; + description + "package name"; + } + } + leaf source-type { + type install-act:packages-source-type; + default "any-configured-repository"; + description + "Type of source used to obtain the packages"; + } + leaf source { + type string; + description + "Path to the location of the packages. If source-type is + 'any-configured-repository' this field is unused, and if + source-type is 'configured-repository' this should be the + name of the repository to use."; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-package-replace { + description + "Replace the current installed software"; + input { + leaf config { + type install-act:config-type; + description + "Action to take on any configuration present in the ISO"; + } + leaf source-type { + type install-act:replace-source-type; + default "local"; + description + "Type of source used to obtain the ISO"; + } + leaf source { + type string; + mandatory true; + description + "Path to the location of the ISO"; + } + leaf file { + type string; + mandatory true; + description + "Name of the ISO to install"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + leaf skip-upgrade-matrix-checks { + type boolean; + default "false"; + description + "Skip upgrade matrix checks when moving between XR versions"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-package-rollback { + description + "Rollback the installed software to a previous revision"; + input { + leaf transaction-id { + type uint32; + mandatory true; + description + "Transaction ID to rollback to"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + leaf skip-upgrade-matrix-checks { + type boolean; + default "false"; + description + "Skip upgrade matrix checks when moving between XR versions"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-rollback { + description + "Rollback the installed software to a previous revision and apply the change"; + input { + leaf transaction-id { + type uint32; + mandatory true; + description + "Transaction ID to rollback to"; + } + leaf commit { + type boolean; + default "false"; + description + "Commit at the end of the rollback operation, if the + software is successfully applied"; + } + leaf description { + type string; + description + "Description to be stored for the transaction ID"; + } + leaf activation-type { + type install-act:apply-type; + default "least-impactful"; + description + "Activate the software using the specified apply type"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + leaf skip-upgrade-matrix-checks { + type boolean; + default "false"; + description + "Skip upgrade matrix checks when moving between XR versions"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-apply { + description + "Apply atomic operation by restarting processes or reloading"; + input { + leaf apply-method { + type install-act:apply-type; + mandatory true; + description + "Method of applying atomic operation"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-package-abort { + description + "Abort the specified packaging operation(s)"; + input { + leaf abort-type { + type abort-type; + mandatory true; + description + "Which packaging operations to abort"; + } + leaf force { + type boolean; + default "false"; + description + "Ignore non-critical errors"; + } + } + output { + uses INST-AUGMENTED-OP-ID-TYPE; + } + csc:xr-task "pkg-mgmt"; + } + rpc install-label { + description + "Label a transaction ID with a description"; + input { + leaf transaction-id { + type uint32; + description + "Transaction ID to be labelled"; + } + leaf description { + type string; + description + "Description to be stored for the transaction ID"; + } + } + } + rpc install-clear-rollback { + description + "Remove specified rollback points to save disk space"; + input { + leaf transaction-id { + type uint32; + description + "Transaction ID corresponding to the rollback point to be removed"; + } + leaf number-of-oldest { + type uint32; + description + "The number of oldest rollback points to be removed"; + } + } + csc:xr-task "pkg-mgmt"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub1.yang new file mode 100644 index 000000000..e26e0dd2a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub1.yang @@ -0,0 +1,3313 @@ +submodule Cisco-IOS-XR-install-augmented-oper-sub1 { + belongs-to Cisco-IOS-XR-install-augmented-oper { + prefix Cisco-IOS-XR-install-augmented-oper; + } + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-install-augmented-oper-sub2 { + revision-date 2022-11-17; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR install-augmented package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-17 { + description + "Add latest reimage bags. + 2022-05-05 + Add warning to inst_request_verbose_bag. + 2022-02-18 + Add detailed intervention event information. + 2021-10-27 + Add new bag for platform-specific disabled packages. + 2021-10-25 + Add source to package operation reporting. + 2021-10-01 + Add details in history for package verification failure reporting."; + semver:module-version "2.3.0"; + } + revision 2021-08-25 { + description + "7.5.1 release features."; + semver:module-version "2.2.0"; + } + revision 2021-03-22 { + description + "7.4.1 release features. + 2020-09-30 + 7.3.1 release features."; + semver:module-version "2.1.0"; + } + revision 2020-05-12 { + description + "Removal of compound from enum naming conventions to avoid confusion. + 2019-12-11 + Obsoleted the nodes list for history items. + 2019-10-14 + Combined platform updates including updates to show install rollback list-ids"; + semver:module-version "2.0.0"; + } + revision 2019-10-13 { + description + "NCS540L 7.1.1 release + 2019-10-12 + 8000 series 7.0.11 release"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Inst-recovery-action { + type enumeration { + enum "reload-to-new-version" { + value 10; + description + "Reload to the new software version"; + } + enum "reload-to-old-version" { + value 11; + description + "Reload to the old software version"; + } + enum "usb-boot" { + value 12; + description + "Perform a USB Boot"; + } + enum "pxe-boot" { + value 13; + description + "Perform a PXE Boot"; + } + } + description + "Inst recovery action"; + } + + typedef Inst-req-state { + type enumeration { + enum "in-progress" { + value 0; + description + "In progress"; + } + enum "success" { + value 1; + description + "Success"; + } + enum "failure" { + value 2; + description + "Failure"; + } + } + description + "Install request state type"; + } + + typedef Inst-action { + type enumeration { + enum "install-package-add" { + value 10; + description + "Package add"; + } + enum "install-package-remove" { + value 11; + description + "Package remove"; + } + enum "install-package-upgrade" { + value 12; + description + "Package upgrade"; + } + enum "install-package-downgrade" { + value 13; + description + "Package downgrade"; + } + enum "install-package-replace" { + value 14; + description + "Package replace"; + } + enum "install-package-rollback" { + value 15; + description + "Rollback"; + } + enum "install-package-abort-latest" { + value 20; + description + "Package abort latest"; + } + enum "install-package-abort-all-since-apply" { + value 21; + description + "Package abort all since apply"; + } + enum "install-package-abort-latest-force" { + value 22; + description + "Package abort latest with force"; + } + enum "install-package-abort-all-since-apply-force" { + value 23; + description + "Package abort all since apply with force"; + } + enum "install-apply-restart" { + value 30; + description + "Apply by process restart"; + } + enum "install-apply-reload" { + value 31; + description + "Apply by reload"; + } + enum "install-commit" { + value 40; + description + "Commit"; + } + enum "install-replace" { + value 70; + description + "Replace and apply"; + } + enum "install-rollback" { + value 71; + description + "Rollback and apply"; + } + enum "install-source" { + value 72; + description + "Upgrade and apply packages from a source"; + } + enum "install-reimage" { + value 80; + description + "Reimage to given iso"; + } + enum "install-label" { + value 90; + description + "Label"; + } + } + description + "Inst action"; + } + + typedef Inst-notif-phase { + type enumeration { + enum "veto" { + value 0; + description + "Veto"; + } + enum "prepare" { + value 1; + description + "Prepare"; + } + enum "pre-pre-apply" { + value 2; + description + "Pre pre apply"; + } + enum "pre-apply" { + value 3; + description + "Pre apply"; + } + enum "apply" { + value 4; + description + "Apply"; + } + enum "post-apply" { + value 5; + description + "Post apply"; + } + enum "post-post-apply" { + value 6; + description + "Post post apply"; + } + } + description + "Install notification phase type"; + } + + typedef Inst-pkg-op-stage { + type enumeration { + enum "not-started" { + value 0; + description + "No operation has yet begun"; + } + enum "preamble" { + value 1; + description + "Preamble, including loading plugins"; + } + enum "resolving-dependencies" { + value 2; + description + "Resolving dependencies"; + } + enum "transaction-check" { + value 3; + description + "Package downloads and transaction check"; + } + enum "package-operations" { + value 4; + description + "Package operations - installations and removals"; + } + enum "complete" { + value 5; + description + "Operation has finished. This does not imply + success"; + } + } + description + "Inst pkg op stage"; + } + + typedef Inst-node-req { + type enumeration { + enum "veto-check" { + value 0; + description + "Veto check"; + } + enum "begin-trans" { + value 1; + description + "Begin transaction"; + } + enum "end-trans" { + value 2; + description + "End transaction"; + } + enum "abort-trans" { + value 3; + description + "Abort transaction"; + } + enum "begin-atomic" { + value 4; + description + "Begin atomic operation"; + } + enum "abort-atomic" { + value 5; + description + "Abort atomic operation"; + } + enum "pkg-install" { + value 6; + description + "Package install operation"; + } + enum "pkg-replace" { + value 7; + description + "Package replace operation"; + } + enum "undo-pkg-install" { + value 8; + description + "Undo package install or undo other package + operation"; + } + enum "apply-reload" { + value 9; + description + "Apply by reload"; + } + enum "pre-pre-apply-restart" { + value 10; + description + "Pre-pre-apply by restarting processes"; + } + enum "pre-apply-restart" { + value 11; + description + "Pre-apply by restarting processes"; + } + enum "apply-and-post-apply-restart" { + value 12; + description + "Apply and post-apply by restarting processes"; + } + enum "post-post-apply-restart" { + value 13; + description + "Post-post-apply by restarting processes"; + } + enum "restart-infra" { + value 14; + description + "Restart install infra"; + } + enum "abort-op" { + value 15; + description + "Abort current operation"; + } + enum "node-idle" { + value 16; + description + "Node is not handling a request"; + } + enum "status-unknown" { + value 17; + description + "The node did not respond to the operational + data request"; + } + enum "resync-remote-node" { + value 18; + description + "Resyncing remote nodes with the active node"; + } + enum "pre-commit-check" { + value 19; + description + "Perform pre-commit checks"; + } + } + description + "Install node request type"; + } + + typedef Inst-activity { + type enumeration { + enum "initiate-op" { + value 0; + description + "Initiate operation"; + } + enum "begin-trans" { + value 1; + description + "Begin transaction"; + } + enum "begin-atomic" { + value 2; + description + "Begin atomic operation"; + } + enum "veto-check" { + value 3; + description + "Veto check"; + } + enum "pkg-install" { + value 4; + description + "Package add or other package operation"; + } + enum "apply-reload" { + value 5; + description + "Apply by reload"; + } + enum "apply-restart" { + value 6; + description + "Apply by restarting processes"; + } + enum "restart-infra" { + value 7; + description + "Restart install infra"; + } + enum "commit-trans" { + value 8; + description + "Commit transaction"; + } + enum "abort-op" { + value 9; + description + "Abort operation"; + } + enum "abort-trans" { + value 10; + description + "Abort transaction"; + } + enum "abort-atomic" { + value 11; + description + "Abort atomic operation"; + } + enum "undo-pkg-inst" { + value 12; + description + "Undo package install"; + } + enum "await-user-input" { + value 13; + description + "Await user input"; + } + enum "await-recovery-input" { + value 14; + description + "Failure, await user recovery input"; + } + enum "trans-complete" { + value 15; + description + "Transaction complete"; + } + enum "no-op-in-progress" { + value 16; + description + "No install operation in progress"; + } + enum "apply-reload-awaiting-node-readiness" { + value 17; + description + "Cleanup after apply by reload"; + } + enum "automatic-recovery" { + value 18; + description + "Automatic recovery"; + } + enum "apply" { + value 19; + description + "Apply by restarting processes or reload"; + } + enum "begin-pkg-op" { + value 20; + description + "Begin packaging operation"; + } + enum "begin-apply-op" { + value 21; + description + "Begin apply operation"; + } + enum "apply-cleanup" { + value 22; + description + "Post-apply operation cleanup"; + } + enum "download" { + value 23; + description + "Verify input and download to internal + repository if needed"; + } + enum "undo-download" { + value 24; + description + "Undo download to internal repository if needed"; + } + enum "bridging-download" { + value 25; + description + "Download bridging bugfix RPMs to the internal + repository"; + } + enum "bridging-veto-check" { + value 26; + description + "Veto check for bridging bugfix install"; + } + enum "bridging-pkg-install" { + value 27; + description + "Package upgrade of bridging bugfix RPMs"; + } + enum "bridging-begin-apply-op" { + value 28; + description + "Begin apply operation of bridging bugfixes"; + } + enum "bridging-apply-reload" { + value 29; + description + "Apply by reload of bridging bugfixes"; + } + enum "bridging-apply-reload-awaiting-node-readiness" { + value 30; + description + "Cleanup after apply by reload of bridging + bugfixes"; + } + enum "bridging-apply-restart" { + value 31; + description + "Apply by restarting processes"; + } + enum "bridging-restart-infra" { + value 32; + description + "Restart install infra during apply of bridging + bugfixes"; + } + enum "bridging-apply-cleanup" { + value 33; + description + "Post-apply of bridging bugfixes cleanup"; + } + enum "bridging-apply" { + value 34; + description + "Apply bridging bugfixes by restarting processes + or reload"; + } + enum "await-dnf-completion" { + value 35; + description + "Wait for all DNF processes to complete after a + packaging operation failure"; + } + enum "iso-download" { + value 36; + description + "Verify input and download ISO"; + } + enum "extract-main-iso" { + value 37; + description + "Extract main ISO contents to internal + repository if needed"; + } + enum "acquire-install-lock" { + value 38; + description + "Acquire the install lock for the system"; + } + enum "begin-reimage" { + value 39; + description + "Prepare for a reimage from disk operation: + downloading ISO and saving config"; + } + enum "await-reimage" { + value 40; + description + "Wait for reload during a reimage operation"; + } + enum "undo-reimage-prep" { + value 41; + description + "Undo actions taken to prepare for a reimage + operation"; + } + } + description + "Install activity type"; + } + + typedef Caveat { + type string; + description + "Caveat"; + } + + typedef Fix { + type string; + description + "DDTS or fix ID"; + } + + typedef Inst-fp-request-status { + type enumeration { + enum "generation-up-to-date" { + value 0; + description + "Runtime fingerprint generation up to date."; + } + enum "generation-in-progress" { + value 1; + description + "Runtime fingerprint generation in progress"; + } + enum "to-be-regenerated-at-apply" { + value 2; + description + "Runtime fingerprints will be regenerated on + apply"; + } + } + description + "package Fingerprint request status"; + } + + typedef Install-opt-string { + type string; + description + "Install opt string"; + } + + typedef Inst-bridging-bugfix { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown bridging bugfix status"; + } + enum "none-in-iso" { + value 1; + description + "No bridging bugfixes in gISO"; + } + enum "none-at-version" { + value 2; + description + "No bridging bugfixes found for running XR + version"; + } + enum "already-installed" { + value 3; + description + "Bridging bugfixes in gISO already installed"; + } + enum "install-required" { + value 4; + description + "Bridging bugfixes in gISO to be installed"; + } + } + description + "Install bridging bugfix type"; + } + + typedef Inst-atomic-status { + type enumeration { + enum "in-progress" { + value 0; + description + "In progress"; + } + enum "apply-in-progress" { + value 1; + description + "Apply in progress"; + } + enum "success" { + value 2; + description + "Success"; + } + enum "failure" { + value 3; + description + "Failure"; + } + enum "aborting" { + value 4; + description + "Aborting"; + } + enum "aborted" { + value 5; + description + "Aborted"; + } + enum "skipped" { + value 6; + description + "Skipped"; + } + } + description + "Atomic change status type"; + } + + typedef Inst-cfg-replace-info { + type enumeration { + enum "iso-config-obtained" { + value 0; + description + "Config successfully extracted from the ISO and + user did not request to ignore config"; + } + enum "iso-config-requested-but-not-present" { + value 1; + description + "User requested to replace config, but no config + present in ISO"; + } + enum "ignored" { + value 2; + description + "User requested to ignore config"; + } + enum "iso-config-not-present" { + value 3; + description + "No config present in ISO and user made no + explicit request"; + } + enum "iso-config-not-supported" { + value 4; + description + "Config extraction is not supported for this ISO"; + } + } + description + "Install ISO config outcome type"; + } + + typedef Inst-pkg-op-status { + type enumeration { + enum "in-progress" { + value 0; + description + "In progress"; + } + enum "success" { + value 1; + description + "Success"; + } + enum "failure" { + value 2; + description + "Failure"; + } + enum "aborted" { + value 3; + description + "Aborted"; + } + enum "skipped" { + value 4; + description + "Skipped"; + } + } + description + "Package operation status type"; + } + + typedef Inst-req-reason { + type enumeration { + enum "user" { + value 0; + description + "User request"; + } + enum "undoing-due-to-abort" { + value 1; + description + "Undoing previous package operation due to user + request"; + } + } + description + "Install request reason type"; + } + + typedef Inst-pkg-verify-error { + type enumeration { + enum "unsigned" { + value 0; + description + "Unsigned"; + } + enum "pubkey-not-installed" { + value 1; + description + "Public key is not installed"; + } + enum "corrupt" { + value 2; + description + "Corrupted"; + } + enum "unknown" { + value 99; + description + "Unknown error"; + } + } + description + "Install package verification error failure types"; + } + + typedef Inst-disk-space-check-phase { + type enumeration { + enum "download" { + value 0; + description + "Download"; + } + enum "iso-unpack" { + value 1; + description + "ISO unpack"; + } + enum "tar-unpack" { + value 2; + description + "Tar unpack"; + } + enum "veto" { + value 3; + description + "Veto"; + } + enum "iso-copy" { + value 4; + description + "This stage encompasses copying the ISO onto the + router, and unpacking it, requiring 2x the size + of the file"; + } + enum "tar-copy" { + value 5; + description + "This stage encompasses copying the tarball onto + the router, and unpacking it, requiring 2.5x + the size of the file"; + } + } + description + "Install disk space check phase type"; + } + + typedef Inst-notif-res { + type enumeration { + enum "awaiting-response" { + value 0; + description + "Awaiting response"; + } + enum "success" { + value 1; + description + "Success"; + } + enum "veto-req" { + value 2; + description + "Veto requested"; + } + enum "reload-req" { + value 3; + description + "Reload requested"; + } + enum "extra-time" { + value 4; + description + "Extra time requested"; + } + enum "failure" { + value 5; + description + "Client failed to process notification"; + } + } + description + "Install client notification result type"; + } + + typedef Inst-feature-change { + type enumeration { + enum "removed" { + value 0; + description + "Removed"; + } + enum "added" { + value 1; + description + "Added"; + } + } + description + "Inst feature change"; + } + + typedef Inst-proc-change { + type enumeration { + enum "removed" { + value 0; + description + "Removed"; + } + enum "modified" { + value 1; + description + "Modified"; + } + } + description + "Inst proc change"; + } + + typedef Inst-file-change { + type enumeration { + enum "removed" { + value 0; + description + "Removed"; + } + enum "added" { + value 1; + description + "Added"; + } + enum "modified" { + value 2; + description + "Modified"; + } + } + description + "File change type"; + } + + typedef Inst-client { + type enumeration { + enum "default" { + value 0; + description + "Default client"; + } + enum "legacy" { + value 1; + description + "Legacy client"; + } + } + description + "Install client type"; + } + + typedef Inst-no-action-reason { + type enumeration { + enum "already-installed" { + value 0; + description + "Package was already installed"; + } + enum "nothing-to-remove" { + value 1; + description + "No matching package found to remove"; + } + enum "no-suitable-version" { + value 2; + description + "No suitable package to upgrade to or downgrade + to was found"; + } + } + description + "Install no action reason type"; + } + + typedef Inst-pkg-op-act { + type enumeration { + enum "add" { + value 0; + description + "Add"; + } + enum "remove" { + value 1; + description + "Remove"; + } + enum "unknown" { + value 255; + description + "Unknown"; + } + } + description + "Install package operation action type"; + } + + typedef Inst-trans-status { + type enumeration { + enum "in-progress" { + value 0; + description + "In progress"; + } + enum "commit-in-progress" { + value 1; + description + "Commit in progress"; + } + enum "success" { + value 2; + description + "Success"; + } + enum "failure" { + value 3; + description + "Failure"; + } + enum "aborting" { + value 4; + description + "Aborting"; + } + enum "aborted" { + value 5; + description + "Aborted"; + } + enum "post-commit-cleanup" { + value 6; + description + "Committed, cleaning up"; + } + enum "error-retry" { + value 7; + description + "Error encountered, retrying"; + } + enum "commit-failure" { + value 8; + description + "Commit failure"; + } + } + description + "Transaction status type"; + } + + typedef Inst-request { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown, operation history not available"; + } + enum "add" { + value 1; + description + "Add"; + } + enum "remove" { + value 2; + description + "Remove"; + } + enum "upgrade" { + value 3; + description + "Upgrade"; + } + enum "downgrade" { + value 4; + description + "Downgrade"; + } + enum "replace" { + value 5; + description + "Replace"; + } + enum "rollback" { + value 6; + description + "Rollback"; + } + enum "reimage" { + value 7; + description + "Reimage"; + } + } + description + "Install request type"; + } + + typedef Inst-node-event-reload-reason { + type enumeration { + enum "reloaded-to-continue" { + value 0; + description + "The force keyword meant that in order for the + install operation to continue best-effort + despite this node event, this node was reloaded + ."; + } + } + description + "The reason a node was reloaded due to a node + event"; + } + + typedef Inst-node-event { + type enumeration { + enum "node-unavailable" { + value 0; + description + "Node became unavailable"; + } + enum "node-available" { + value 1; + description + "Node became available"; + } + enum "error" { + value 2; + description + "Per-node error"; + } + enum "user-requested-reload" { + value 3; + description + "User requested reload of this node to recover + from a failure."; + } + } + description + "Install node event type"; + } + + typedef Inst-intervention-event-category { + type enumeration { + enum "retry" { + value 0; + description + "Retrying the operation may resolve the issue"; + } + enum "user" { + value 1; + description + "The user has made an invalid request"; + } + enum "manual" { + value 2; + description + "Manual intervention is needed to resolve the + issue"; + } + enum "reload" { + value 3; + description + "One or more nodes need to be reloaded to + resolve the issue"; + } + enum "warning" { + value 4; + description + "The operation succeeded but an unexpected event + may have occurred"; + } + enum "support" { + value 5; + description + "An error occurred with no recovery options, + contact Cisco Support"; + } + } + description + "Install intervention event category type"; + } + + grouping INST-AVAILABLE-FIX-TYPE { + description + "INST AVAILABLE FIX TYPE"; + leaf ddts { + type string; + description + "DDTS id"; + } + list package { + description + "Packages"; + uses INST-AVAILABLE-PKG-TYPE; + } + } + + grouping INST-AVAILABLE-FIXES-BAG { + description + "Install bag containing details of available fixes"; + leaf-list inaccessible-repository { + type String1; + description + "List of repositories that the package manager + was unable to access, likely due to + configuration errors or network connectivity"; + } + leaf-list repositories-metadata-failed { + type String1; + description + "List of local repositories where automatic + metadata generation failed. Information about + packages in these repositories may not be up to + date."; + } + list fixes { + description + "Fixes"; + uses INST-AVAILABLE-FIX-TYPE; + } + } + + grouping INST-DEACTIVATE-GROUP-FIX-TYPE { + description + "INST DEACTIVATE GROUP FIX TYPE"; + leaf-list requested-ddts { + type String1; + description + "Requested DDTS ids to deactivate"; + } + leaf-list ddt-ss-to-deactivate { + type String1; + description + "The DDTS ids that would be deactivated by this + change"; + } + list packages-to-downgrade { + description + "The packages that would be downgraded from by + this change"; + uses INST-PKG; + } + list packages-to-activate { + description + "The packages that would be activated by this + change (ie. downgraded to)"; + uses INST-PKG; + } + list missing-mandatory-package { + description + "The mandatory packages that are missing and so + preventing this downgrade"; + uses INST-PKG; + } + list missing-optional-package { + description + "The optional packages that are missing and so + preventing this downgrade"; + uses INST-PKG; + } + } + + grouping INST-DEACTIVATE-DDTS-IDS-BAG { + description + "Install bag containing details of available + groups of fixes"; + container combined-deactivate-info { + description + "The combined information for deactivating all + specified DDTSs"; + uses INST-DEACTIVATE-GROUP-FIX-TYPE; + } + leaf-list not-installed-ddts { + type String1; + description + "DDTSs specified for deactivation but not + currently installed"; + } + list group-deactivate-info { + description + "The groups of fixes for deactivating the + specified DDTSs"; + uses INST-DEACTIVATE-GROUP-FIX-TYPE; + } + } + + grouping INST-QUERY-PKG-FIX-TYPE { + description + "Package and fix type"; + container package { + description + "Package"; + uses INST-PKG-TYPE; + } + container ddts-list { + description + "DDTSs associated with this package"; + uses INST-DDTS-LIST; + } + } + + grouping INST-ROLLBACK-POINT-BAG { + description + "Bag containing information for a specific + rollback point"; + leaf id { + type int32; + description + "Rollback point ID"; + } + leaf label { + type String1; + description + "Optional GISO label for rollback point"; + } + leaf description { + type String1; + description + "Optional user defined description of the + rollback point"; + } + list package { + description + "List of packages and fixes for the rollback + point"; + uses INST-QUERY-PKG-FIX-TYPE; + } + } + + grouping INST-DDTS-LIST { + description + "DDTS List"; + leaf-list ddts { + type String1; + description + "DDTS items in list"; + } + } + + grouping INST-QUERY-PKG-CHANGE-TYPE { + description + "Package changes type"; + container package { + description + "Package"; + uses INST-PKG-TYPE; + } + container ddts-list { + description + "DDTSs associated with this package"; + uses INST-DDTS-LIST; + } + leaf action { + type Inst-pkg-op-act; + description + "Action pending on package"; + } + } + + grouping INST-CHANGES-BAG { + description + "Install pending changes bag"; + list package { + description + "List of packages and the action pending on each"; + uses INST-QUERY-PKG-CHANGE-TYPE; + } + } + + grouping INST-ROLLBACK-SUMMARY-BAG { + description + "Install bag containing summary information about + a possible rollback transaction"; + leaf time-finished { + type String1; + description + "Timestamp this transaction completed, in RFC3339 + internet date/time format"; + } + leaf pkgs-to-add-count { + type int32; + description + "Number of packages to be added"; + } + leaf pkgs-to-modify-count { + type int32; + description + "Number of packages to be modified"; + } + leaf pkgs-to-remove-count { + type int32; + description + "Number of packages to be removed"; + } + leaf description { + type string; + description + "The description of the transaction, if set"; + } + leaf ddt-ss-to-add-count { + type int32; + description + "Number of DDTSs to be added"; + } + leaf ddt-ss-to-remove-count { + type int32; + description + "Number of DDTSs to be removed"; + } + } + + grouping INST-VER-PKG-TYPE { + description + "Install package type"; + leaf name { + type string; + description + "Name"; + } + leaf version { + type string; + description + "Version"; + } + leaf built-by { + type string; + description + "User built by"; + } + leaf built-on { + type string; + description + "Time built"; + } + leaf workspace { + type string; + description + "Workspace built in"; + } + leaf build-host { + type string; + description + "Build host"; + } + } + + grouping INST-VERSION-BAG { + description + "Install version bag"; + leaf label { + type string; + description + "Added telemetry event on Label field"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf copyright-info { + type string; + description + "Copyright information"; + } + leaf hardware-info { + type string; + description + "Hardware information"; + } + leaf uptime { + type string; + description + "System uptime"; + } + leaf location { + type Install-opt-string; + description + "Prefix for the path where packages will be + installed"; + } + leaf processor { + type Install-opt-string; + description + "Processor"; + } + leaf chassis-pid { + type Install-opt-string; + description + "Chassis PID"; + } + leaf chassis-description { + type Install-opt-string; + description + "Chassis Unique Device Identifier description"; + } + leaf xr-host-name { + type Install-opt-string; + description + "Configured XR hostname"; + } + leaf total-ram { + type uint64; + description + "Total physical memory in GB"; + } + list package { + description + "Packages"; + uses INST-VER-PKG-TYPE; + } + } + + grouping INST-RECOVERY-ACTIONS { + description + "INST RECOVERY ACTIONS"; + leaf-list recovery-action { + type Inst-recovery-action; + description + "Non install recovery actions, when install + actions are not available."; + } + } + + grouping INST-AVAILABLE-ACTIONS { + description + "INST AVAILABLE ACTIONS"; + leaf-list available-action { + type Inst-action; + description + "Action available to user. If there are no + available actions, a system reload may be used + to recover."; + } + } + + grouping INST-LOCK-REQ-CLIENT { + description + "Install lock details for during requests"; + leaf name { + type string; + description + "Name of the client"; + } + leaf held-since { + type Install-opt-string; + description + "Timestamp when the lock was acquired, in RFC3339 + format"; + } + leaf timeout { + type uint32; + description + "Maximum length of time this client has hold the + lock before timeout"; + } + leaf reason { + type Install-opt-string; + description + "Reason that the client holds the lock"; + } + } + + grouping INST-LOCK-REQ-STATUS { + description + "Install lock details for during requests"; + leaf clients-holding-lock-count { + type uint32; + description + "Count of clients holding the lock"; + } + list clients-holding-lock { + description + "Details of any clients holding the lock"; + uses INST-LOCK-REQ-CLIENT; + } + } + + grouping INST-NOTIF-STATUS { + description + "Install client notification status information"; + leaf notification-phase { + type Inst-notif-phase; + description + "Notification phase"; + } + leaf time-sent { + type string; + description + "Timestamp notifications were sent, in RFC3339 + internet date/time format"; + } + leaf-list clients-responded { + type String1; + description + "Clients that have responded to notifications"; + } + leaf-list clients-waiting { + type String1; + description + "Clients that have not yet responded to + notifications"; + } + } + + grouping INST-PKG-OP-INFO { + description + "Install packaging operation information"; + leaf stage { + type Inst-pkg-op-stage; + description + "Package operation stage"; + } + leaf percentage-progress { + type uint32; + units "percentage"; + description + "Percentage complete"; + } + leaf packages-complete { + type uint32; + description + "Count of packages completed"; + } + leaf packages-total { + type uint32; + description + "Count of total packages"; + } + } + + grouping INST-STATUS-NODE { + description + "Install per-node status data"; + container packaging-operation-status { + description + "Further information, if a packaging operation is + in progress"; + uses INST-PKG-OP-INFO; + } + container client-notification-status { + description + "Further information, if client notifications are + in progress"; + uses INST-NOTIF-STATUS; + } + leaf node { + type string; + description + "Node name"; + } + leaf current-request { + type Inst-node-req; + description + "Node request currently being handled"; + } + leaf time-started { + type String1; + description + "Timestamp this node request was started, in + RFC3339 internet date/time format"; + } + } + + grouping INST-REQUEST-VERBOSE-BAG { + description + "Status of current install user request"; + container lock-status { + description + "Status of the install lock"; + uses INST-LOCK-REQ-STATUS; + } + container available-actions { + description + "Actions that are currently valid to start"; + uses INST-AVAILABLE-ACTIONS; + } + container recovery-actions { + description + "Non install recovery actions, if install actions + are not available"; + uses INST-RECOVERY-ACTIONS; + } + leaf current-activity { + type Inst-activity; + description + "Activity in progress"; + } + leaf time-started { + type String1; + description + "Timestamp this activity was started, in RFC3339 + internet date/time format"; + } + leaf next-activity { + type Inst-activity; + description + "Activity "; + } + leaf node-request { + type Inst-node-req; + description + "Node request in progress, if any"; + } + leaf node-request-time { + type String1; + description + "Timestamp node request was sent, in RFC3339 + internet date/time format"; + } + leaf node-request-time-left { + type uint32; + units "second"; + description + "Seconds until the node request will time out"; + } + leaf nodes-responded { + type uint32; + description + "Count of nodes that have responded"; + } + leaf nodes-total { + type uint32; + description + "Total count of nodes the request was sent to"; + } + leaf request { + type String1; + description + "The last user request"; + } + leaf state { + type Inst-req-state; + description + "The state of the last user request"; + } + leaf timestamp { + type String1; + description + "The time the current state was entered"; + } + leaf error { + type String1; + description + "String describing the error, if any"; + } + leaf operation-id { + type String1; + description + "The operation ID of this request"; + } + leaf warning { + type String1; + description + "String describing a warning, if any"; + } + list nodes-req-status { + description + "Status of per-node processing, if a node request + is in progress"; + uses INST-STATUS-NODE; + } + } + + grouping INST-DISABLED-PKGS-BAG { + description + "Packages that are disabled by the platform"; + leaf-list package { + type String1; + description + "List of packages that are disabled on this + platform."; + } + } + + grouping INST-AVAILABLE-GROUP-FIX-TYPE { + description + "INST AVAILABLE GROUP FIX TYPE"; + leaf-list ddt-ss { + type String1; + description + "All DDTS ids fixed by Packages"; + } + list package { + description + "Packages"; + uses INST-PKG; + } + } + + grouping INST-AVAILABLE-GROUP-FIXES-BAG { + description + "Install bag containing details of available + groups of fixes"; + leaf-list all-ddts { + type String1; + description + "All DDTSs referenced in GroupFix"; + } + list group-fix { + description + "The group fixes"; + uses INST-AVAILABLE-GROUP-FIX-TYPE; + } + } + + grouping INST-UPGRADE-MATRIX-RPM { + description + "Upgrade matrix RPM details"; + leaf name { + type string; + description + "RPM name"; + } + leaf version { + type string; + description + "RPM version"; + } + } + + grouping INST-UPGRADE-MATRIX-FIX { + description + "Upgrade matrix fix"; + leaf fix { + type string; + description + "DDTS or fix ID"; + } + list rpms { + description + "RPMs"; + uses INST-UPGRADE-MATRIX-RPM; + } + } + + grouping INST-UPGRADE-MATRIX-HW { + description + "Upgrade matrix hardware data"; + leaf pid { + type Install-opt-string; + description + "PID"; + } + leaf reason { + type Install-opt-string; + description + "Reason for the hardware being unsupported"; + } + } + + grouping INSTALL-UPGRADE-MATRIX-DETAILS { + description + "Upgrade matrix details"; + leaf-list bridging-fixe { + type Fix; + description + "Bridging Fixes List"; + } + leaf-list caveats { + type Caveat; + description + "Caveats list"; + } + leaf-list blocklisted-fixe { + type Fix; + description + "Blocklisted Fixes List"; + } + list unsupported-hardware { + description + "Unsupported hardware list"; + uses INST-UPGRADE-MATRIX-HW; + } + list bridging-fixes-rpm { + description + "Bridging Fixes, list of DDTS (and associated + RPMs)"; + uses INST-UPGRADE-MATRIX-FIX; + } + list blocklisted-fixes-rpm { + description + "List of DDTS (and associated RPMs) which must + not be installed"; + uses INST-UPGRADE-MATRIX-FIX; + } + } + + grouping INSTALL-UPGRADE-MATRIX-RELEASE-DATA { + description + "Upgrade matrix version data"; + leaf from { + type string; + description + "From version"; + } + leaf to { + type string; + description + "To version"; + } + } + + grouping INSTALL-UPGRADE-MATRIX-DATA { + description + "Upgrade matrix data"; + container versions { + description + "Versions"; + uses INSTALL-UPGRADE-MATRIX-RELEASE-DATA; + } + container details { + description + "Details"; + uses INSTALL-UPGRADE-MATRIX-DETAILS; + } + } + + grouping INSTALL-UPGRADE-MATRIX-ISO { + description + "Upgrade matrix info for the input ISO"; + leaf info { + type Install-opt-string; + description + "Info"; + } + leaf matrix-version { + type Install-opt-string; + description + "Matrix file version"; + } + list upgrade-matrix-info { + description + "Upgrade matrix table"; + uses INSTALL-UPGRADE-MATRIX-DATA; + } + } + + grouping INST-AVAILABLE-PKG-TYPE { + description + "Install package type"; + leaf name { + type string; + description + "Package name"; + } + leaf architecture { + type string; + description + "Architecture"; + } + leaf version { + type string; + description + "Version"; + } + leaf repository { + type string; + description + "Repository"; + } + leaf cached { + type boolean; + description + "Cached in the internal repository"; + } + leaf release { + type Install-opt-string; + description + "Release"; + } + leaf epoch { + type Install-opt-string; + description + "Epoch"; + } + leaf xr-package { + type boolean; + description + "XR Package"; + } + } + + grouping INST-AVAILABLE-PACKAGES-BAG { + description + "Available package result bag"; + leaf-list inaccessible-repository { + type String1; + description + "List of repositories that the package manager + was unable to access, likely due to + configuration errors or network connectivity"; + } + leaf-list repositories-metadata-failed { + type String1; + description + "List of local repositories where automatic + metadata generation failed. Information about + packages in these repositories may not be up to + date."; + } + list package { + description + "Packages"; + uses INST-AVAILABLE-PKG-TYPE; + } + } + + grouping INST-RPM-FINGER-PRINT { + description + "Install package fingerprint type"; + leaf rpm-fingerprint-install-time { + type Install-opt-string; + description + "Package fingerprint at install time."; + } + leaf rpm-fingerprint-run-time { + type Install-opt-string; + description + "Package fingerprint at run time. A runtime + fingerprint of '0' indicates that the runtime + fingerprint for this package has not yet been + calculated."; + } + } + + grouping INST-PKG-TYPE { + description + "Install package type"; + container rpm-fingerprint { + description + "RPM Fingerprint at install and run time"; + uses INST-RPM-FINGER-PRINT; + } + leaf name { + type string; + description + "Package name"; + } + leaf architecture { + type string; + description + "Architecture"; + } + leaf version { + type string; + description + "Version"; + } + leaf release { + type string; + description + "Release"; + } + leaf epoch { + type Install-opt-string; + description + "Epoch"; + } + leaf gpg-key-id { + type Install-opt-string; + description + "The GPG key ID at install time. A key ID of '0' + indicates a package with no GPG signature."; + } + } + + grouping INST-PACKAGES-BAG { + description + "Package result bag"; + leaf rpm-fingerprint-status { + type Inst-fp-request-status; + description + "Package Fingerprint request status"; + } + leaf rpm-fingerprint-timestamp { + type Install-opt-string; + description + "Package run time fingerprint collection time"; + } + leaf label { + type Install-opt-string; + description + "Label of image"; + } + leaf xr-packages-hash { + type Install-opt-string; + description + "Hash of XR packages in this bag"; + } + list package { + description + "Packages"; + uses INST-PKG-TYPE; + } + } + + grouping INST-ATOMIC-CHANGE-NODE-BAG { + description + "Node specific atomic change information"; + container changeset { + description + "Changeset information"; + uses INST-CHANGESET; + } + list pre-pre-apply-notification { + description + "Notifications sent for 'Pre-pre-apply' phase"; + uses INST-NOTIF; + } + list pre-apply-notification { + description + "Notifications sent for 'Pre-apply' phase"; + uses INST-NOTIF; + } + list apply-notification { + description + "Notifications sent for 'Apply' phase"; + uses INST-NOTIF; + } + list further-apply-notification { + description + "Further notifications sent for 'Apply' phase, + after allowing for processes to restart"; + uses INST-NOTIF; + } + list post-apply-notification { + description + "Notifications sent for 'Post-apply' phase"; + uses INST-NOTIF; + } + list post-post-apply-notification { + description + "Notifications sent for 'Post-post-apply' phase"; + uses INST-NOTIF; + } + list event { + description + "Per node events"; + uses INST-NODE-EVENT; + } + } + + grouping INST-SYSTEM-RELOAD-REASON { + description + "Information about system reload reasons"; + leaf iso-config { + type boolean; + description + "True if ISO config is being applied"; + } + } + + grouping INST-ATOMIC-CHANGE-NODE { + description + "Install per-node atomic change data"; + container changeset { + description + "Changeset information"; + uses INST-CHANGESET; + } + leaf node { + type string; + description + "Node name"; + } + list pre-pre-apply-notification { + description + "Notifications sent for 'Pre-pre-apply' phase"; + uses INST-NOTIF; + } + list pre-apply-notification { + description + "Notifications sent for 'Pre-apply' phase"; + uses INST-NOTIF; + } + list apply-notification { + description + "Notifications sent for 'Apply' phase"; + uses INST-NOTIF; + } + list further-apply-notification { + description + "Further notifications sent for 'Apply' phase, + after allowing for processes to restart"; + uses INST-NOTIF; + } + list post-apply-notification { + description + "Notifications sent for 'Post-apply' phase"; + uses INST-NOTIF; + } + list post-post-apply-notification { + description + "Notifications sent for 'Post-post-apply' phase"; + uses INST-NOTIF; + } + list event { + description + "Per node events"; + uses INST-NODE-EVENT; + } + } + + grouping INST-ATOMIC-STATUS { + description + "Atomic change status"; + leaf status { + type Inst-atomic-status; + description + "Status"; + } + leaf reason { + type String1; + description + "Reason this status was set, which could be an + error or a recovery action"; + } + leaf time { + type string; + description + "Timestamp this status was set, in RFC3339 + internet date/time format"; + } + leaf event-id { + type uint32; + description + "Transaction level identifier for this status + change"; + } + } + + grouping INST-ATOMIC-CHANGE-BAG { + description + "Install atomic change entry"; + container reload-reasons { + description + "Reload reasons"; + uses INST-SYSTEM-RELOAD-REASON; + } + leaf index { + type uint32; + description + "Atomic change index"; + } + leaf requested-apply-method { + type Inst-activation; + description + "Requested apply method"; + } + leaf least-impactful-apply-method { + type Inst-activation; + description + "Least impactful apply method required to apply + packaging operations thus far."; + } + leaf install-restart { + type boolean; + description + "Install infra restart during apply"; + } + leaf previous-index { + type uint32; + description + "Atomic change index of previous atomic operation"; + } + leaf previous-bridging-status { + type Inst-bridging-bugfix; + description + "Information about whether bridging bugfix RPMs + were installed as part of the previous atomic + change"; + } + list status-history { + description + "Status history for this atomic change, in + reverse chronological order"; + uses INST-ATOMIC-STATUS; + } + list nodes { + status obsolete; + description + "Node-specific information"; + uses INST-ATOMIC-CHANGE-NODE; + } + } + + grouping INST-PKG-OP-NODE { + description + "Install per-node packaging operation data"; + container disk-space-check { + description + "Disk space pre-check information"; + uses INST-DISK-SPACE; + } + leaf node { + type string; + description + "Node name"; + } + leaf download-size { + type uint64; + units "byte"; + description + "Download size in bytes (deprecated)"; + } + leaf installed-size { + type uint64; + units "byte"; + description + "Total installed size of packages in bytes + (deprecated)"; + } + list package { + description + "List of packages"; + uses INST-PKG-INFO; + } + list packages-no-action { + description + "List of input packages on which no action was + taken, for example because there was no suitable + version to upgrade or downgrade to"; + uses INST-PKG-NO-ACTION; + } + list veto-notification { + description + "List of notifications sent in 'Veto' phase"; + uses INST-NOTIF; + } + list prepare-veto-notification { + description + "List of veto notifications sent in 'Prepare' + phase"; + uses INST-NOTIF; + } + list prepare-notification { + description + "List of prepare notifications sent in 'Prepare' + phase"; + uses INST-NOTIF; + } + list event { + description + "Per node events"; + uses INST-NODE-EVENT; + } + list pkg-verify-failure { + description + "Signature check failures"; + uses INST-PKG-VERIFY-FAILURE; + } + } + + grouping INST-PKG-OP-STATUS { + description + "Package operation status"; + leaf status { + type Inst-pkg-op-status; + description + "Status"; + } + leaf reason { + type String1; + description + "Reason this status was set, which could be an + error or a recovery action"; + } + leaf time { + type string; + description + "Timestamp this status was set, in RFC3339 + internet date/time format"; + } + leaf event-id { + type uint32; + description + "Transaction level identifier for this status + change"; + } + } + + grouping INST-UNDO-REQ { + description + "Install undo packaging operation request"; + leaf abort-type { + type Inst-package-abort; + description + "Abort Type"; + } + leaf-list packaging-operation { + type uint32; + description + "Indices of packaging operations being undone"; + } + } + + grouping INST-REQ { + description + "Install request"; + container operation { + when "../reason = 'user'" { + description + "../Reason = 'User'"; + } + description + "Details of user request"; + uses INST-USER-REQ; + } + container abort-operation { + when "../reason = 'undoing-due-to-abort'" { + description + "../Reason = 'UndoingDueToAbort'"; + } + description + "Details of packaging operation(s) being undone"; + uses INST-UNDO-REQ; + } + leaf reason { + type Inst-req-reason; + description + "Reason"; + } + } + + grouping INST-PKG-OP-BAG { + description + "Install package operation entry"; + container request { + description + "Requested operation"; + uses INST-REQ; + } + leaf index { + type uint32; + description + "Packaging operation index"; + } + leaf error-string { + type String1; + description + "String pointing the user to any packaging + manager error information"; + } + leaf config-replace-info { + type Inst-cfg-replace-info; + description + "Info about config handling in replace operations"; + } + leaf package-source { + type String1; + description + "Source used for the packaging operation"; + } + list status-history { + description + "Status history for the package operation, in + reverse chronological order"; + uses INST-PKG-OP-STATUS; + } + list nodes { + status obsolete; + description + "Node-specific information"; + uses INST-PKG-OP-NODE; + } + } + + grouping INST-PKG-VERIFY-FAILURE { + description + "Install package verification check failure"; + container package { + description + "Package which failed the signature check"; + uses INST-PKG; + } + leaf error-type { + type Inst-pkg-verify-error; + description + "The error causing the signature check failure"; + } + leaf key-id { + type String1; + description + "Fingerprint for the key used to sign the package"; + } + } + + grouping INST-DISK-SPACE { + description + "Install disk space pre-check data"; + leaf phase { + type Inst-disk-space-check-phase; + description + "Phase the disk space check failed at"; + } + leaf required-space { + type uint64; + units "byte"; + description + "Space required in the rootfs in bytes"; + } + leaf available-space { + type uint64; + units "byte"; + description + "Space available in the rootfs in bytes"; + } + } + + grouping INST-NOTIF-TIME-REQ { + description + "Extra time request information"; + leaf time { + type string; + description + "Timestamp of request, in RFC3339 internet + date/time format"; + } + leaf extra-time { + type uint32; + units "second"; + description + "Amount of extra time requested in seconds"; + } + leaf reason { + type String1; + description + "Reason for the extra time being requested (if + known)"; + } + } + + grouping INST-NOTIF-RELOAD-TYPE { + description + "INST NOTIF RELOAD TYPE"; + leaf node { + type string; + description + "Which node is to be reloaded"; + } + leaf reason { + type String1; + description + "Reason for requested reload"; + } + } + + grouping INST-CLIENT-RELOAD { + description + "Information about client reload reasons"; + leaf name { + type string; + description + "The name of the client"; + } + leaf jid { + type string; + description + "Job ID of the client"; + } + leaf reason { + type string; + description + "Reason to request a reload"; + } + } + + grouping INST-RELOAD-REASON { + description + "Information about reload reasons"; + container packages { + description + "List of packages which has requested a reload"; + uses PACKAGE-NAMES; + } + leaf too-many-processes { + type boolean; + description + "True if too many processes requested a restart"; + } + list client { + description + "List of clients which have requested a reload"; + uses INST-CLIENT-RELOAD; + } + } + + grouping INST-FEATURE-CHANGE { + description + "Feature change information"; + leaf feature-name { + type string; + description + "Name of feature"; + } + leaf change { + type Inst-feature-change; + description + "Change type"; + } + } + + grouping INST-PROCESS-CHANGE { + description + "Impacted process information"; + leaf name { + type string; + description + "Process name"; + } + leaf change { + type Inst-proc-change; + description + "Type of change"; + } + leaf pid { + type uint32; + description + "Process ID"; + } + } + + grouping INST-FILE-CHANGE { + description + "File change information"; + leaf path { + type string; + description + "File path, relative to /opt/cisco/iosxr"; + } + leaf change { + type Inst-file-change; + description + "Change type"; + } + } + + grouping INST-CHANGESET { + description + "Changeset"; + container reload-reasons { + description + "Reload reasons"; + uses INST-RELOAD-REASON; + } + list changed-file { + description + "Changed files"; + uses INST-FILE-CHANGE; + } + list impacted-process { + description + "Impacted processes"; + uses INST-PROCESS-CHANGE; + } + list changed-feature { + description + "Changed features"; + uses INST-FEATURE-CHANGE; + } + } + + grouping NOTIFICATION-TRIGGER { + description + "Notification Trigger"; + container trigger-changeset { + when "../client-type = 'default'" { + description + "../ClientType = 'Default'"; + } + description + "Trigger Changeset"; + uses INST-CHANGESET; + } + leaf client-type { + type Inst-client; + description + "ClientType"; + } + leaf legacy-client { + when "../client-type = 'legacy'" { + description + "../ClientType = 'Legacy'"; + } + type boolean; + description + "Legacy client - notifications are sent + regardless of changeset"; + } + } + + grouping INST-NOTIF { + description + "Install notification information"; + container notification-trigger { + description + "Notification trigger"; + uses NOTIFICATION-TRIGGER; + } + leaf client { + type string; + description + "Client notification was sent to"; + } + leaf description { + type string; + description + "Description of the client"; + } + leaf sent-time { + type string; + description + "Time notification was sent, in RFC3339 internet + date/time format"; + } + leaf response-status { + type Inst-notif-res; + description + "Status of response from client"; + } + leaf error { + type String1; + description + "Error, if any"; + } + leaf response-time { + type string; + description + "Time of clients response, in RFC3339 internet + date/time format"; + } + leaf veto-reason { + type String1; + description + "Reason for requested veto"; + } + list reload-reason { + description + "Reasons for reload, if any"; + uses INST-NOTIF-RELOAD-TYPE; + } + list extra-time-request { + description + "Requests for extra time, if any"; + uses INST-NOTIF-TIME-REQ; + } + } + + grouping INST-PKG-NO-ACTION { + description + "Information about a package on which no action + was taken"; + container package { + description + "Package or user input on which no action was + taken"; + uses INST-PKG; + } + leaf reason { + type Inst-no-action-reason; + description + "Reason that no action was taken on this package"; + } + } + + grouping INST-PKG { + description + "Package"; + leaf name { + type string; + description + "Package name"; + } + leaf version { + type String1; + description + "Version"; + } + leaf architecture { + type String1; + description + "Package architecture"; + } + } + + grouping INST-PKG-INFO { + description + "Install per package information"; + container package { + description + "Package"; + uses INST-PKG; + } + leaf action { + type Inst-pkg-op-act; + description + "Action taken on this package"; + } + } + + grouping INST-PKG-OP-NODE-BAG { + description + "Node specific packaging operation information"; + container disk-space-check { + description + "Disk space pre-check information"; + uses INST-DISK-SPACE; + } + leaf download-size { + type uint64; + units "byte"; + description + "Download size in bytes (deprecated)"; + } + leaf installed-size { + type uint64; + units "byte"; + description + "Total installed size of packages in bytes + (deprecated)"; + } + list package { + description + "List of packages"; + uses INST-PKG-INFO; + } + list packages-no-action { + description + "List of input packages on which no action was + taken, for example because there was no suitable + version to upgrade or downgrade to"; + uses INST-PKG-NO-ACTION; + } + list veto-notification { + description + "List of notifications sent in 'Veto' phase"; + uses INST-NOTIF; + } + list prepare-veto-notification { + description + "List of veto notifications sent in 'Prepare' + phase"; + uses INST-NOTIF; + } + list prepare-notification { + description + "List of prepare notifications sent in 'Prepare' + phase"; + uses INST-NOTIF; + } + list event { + description + "Per node events"; + uses INST-NODE-EVENT; + } + list pkg-verify-failure { + description + "Signature check failures"; + uses INST-PKG-VERIFY-FAILURE; + } + } + + grouping INST-PKG-OP-ERRORS-BAG { + description + "DNF logs for any node where DNF has encountered + errors in a packaging operation"; + leaf-list lines { + type String1; + description + "Lines of the DNF output"; + } + } + + grouping INST-TRANS-NODE { + description + "Install per-node transaction data"; + leaf node { + type String1; + description + "Node name"; + } + list event { + description + "Per-node events"; + uses INST-NODE-EVENT; + } + } + + grouping INST-TRANS-STATUS { + description + "Transaction status"; + leaf status { + type Inst-trans-status; + description + "Status"; + } + leaf reason { + type String1; + description + "Reason this status was set, which could be an + error or a recovery action"; + } + leaf time { + type string; + description + "Timestamp this status was set, in RFC3339 + internet date/time format"; + } + leaf event-id { + type uint32; + description + "Transaction level identifier for this status + change"; + } + } + + grouping PACKAGE-NAMES { + description + "PACKAGE NAMES"; + leaf-list package-name { + type String1; + description + "package name"; + } + } + + grouping INST-USER-REQ { + description + "Install user packaging operation request"; + container unknown-packages { + when "../request = 'unknown'" { + description + "../Request = 'Unknown'"; + } + description + "List of packages"; + uses PACKAGE-NAMES; + } + container install-packages { + when "../request = 'add'" { + description + "../Request = 'Add'"; + } + description + "List of packages"; + uses PACKAGE-NAMES; + } + container remove-packages { + when "../request = 'remove'" { + description + "../Request = 'Remove'"; + } + description + "List of packages"; + uses PACKAGE-NAMES; + } + container upgrade-packages { + when "../request = 'upgrade'" { + description + "../Request = 'Upgrade'"; + } + description + "List of packages"; + uses PACKAGE-NAMES; + } + container downgrade-packages { + when "../request = 'downgrade'" { + description + "../Request = 'Downgrade'"; + } + description + "List of packages"; + uses PACKAGE-NAMES; + } + leaf request { + type Inst-request; + description + "Request"; + } + leaf replace-iso { + when "../request = 'replace'" { + description + "../Request = 'Replace'"; + } + type String1; + description + "ISO"; + } + leaf rollback-to-transaction { + when "../request = 'rollback'" { + description + "../Request = 'Rollback'"; + } + type uint32; + description + "Transaction ID"; + } + leaf reimage-iso { + when "../request = 'reimage'" { + description + "../Request = 'Reimage'"; + } + type String1; + description + "ISO"; + } + } + + grouping INST-TRANS-BAG { + description + "Install transaction entry"; + container started-by-user-request { + description + "Packaging operation that started this + transaction"; + uses INST-USER-REQ; + } + leaf transaction-id { + type uint32; + description + "Transaction ID"; + } + list status-history { + description + "Status history for this transaction, in reverse + chronological order"; + uses INST-TRANS-STATUS; + } + list nodes { + status obsolete; + description + "Node-specific information"; + uses INST-TRANS-NODE; + } + } + + grouping INST-NODE-EVENT { + description + "Node events"; + leaf event { + type Inst-node-event; + description + "Event"; + } + leaf time { + type string; + description + "Timestamp, in RFC3339 internet date/time format"; + } + leaf reason { + type String1; + description + "Reason for the event, for example an error + string"; + } + leaf event-id { + type uint32; + description + "Transaction level identifier for this event"; + } + leaf reload-reason { + type Inst-node-event-reload-reason; + description + "If applicable, the reason the node was reloaded + due to this node event"; + } + } + + grouping INST-TRANS-NODE-BAG { + description + "Node specific transaction information"; + list event { + description + "Per-node events"; + uses INST-NODE-EVENT; + } + } + + grouping INST-TRIAGE-COMMAND { + description + "Install triage command"; + leaf cli-cmd { + type String1; + description + "Command to run from the CLI"; + } + } + + grouping INST-TRIAGE-COMMANDS { + description + "INST TRIAGE COMMANDS"; + list inst-triage-command { + description + "inst triage command"; + uses INST-TRIAGE-COMMAND; + } + } + + grouping INST-SUGGESTED-STEP { + description + "Install suggested step"; + leaf cli-cmd { + type String1; + description + "Command to run from the CLI"; + } + leaf cli-description { + type String1; + description + "Description of a step to perform from the CLI"; + } + } + + grouping INST-SUGGESTED-STEPS { + description + "INST SUGGESTED STEPS"; + list inst-suggested-step { + description + "inst suggested step"; + uses INST-SUGGESTED-STEP; + } + } + + grouping STRING-LIST-TYPE { + description + "STRING LIST TYPE"; + leaf-list string-list-type { + type String1; + description + "string list type"; + } + } + + grouping INST-INTERVENTION-EVENT-INFO { + description + "Information about Install event requiring + intervention"; + container error { + description + "Description of the error"; + uses STRING-LIST-TYPE; + } + container warning { + description + "Description of the warning"; + uses STRING-LIST-TYPE; + } + container suggested-steps { + description + "Suggested steps to resolve the issue"; + uses INST-SUGGESTED-STEPS; + } + container triage-commands { + description + "Triage commands to run that collect information + for Cisco Support"; + uses INST-TRIAGE-COMMANDS; + } + container internal-details { + description + "Details to pass on to Cisco Support"; + uses STRING-LIST-TYPE; + } + } + + grouping INST-INTERVENTION-EVENT { + description + "Install event requiring intervention"; + container intervention-event-info { + description + "Detailed information associated with the + intervention event"; + uses INST-INTERVENTION-EVENT-INFO; + } + leaf category { + type Inst-intervention-event-category; + description + "The intervention category"; + } + leaf time { + type string; + description + "Timestamp for when the intervention event + occurred in RFC3339 internet date/time format"; + } + } + + grouping INST-OP-INTERVENTION-EVENTS-BAG { + description + "Install events requiring intervention"; + list intervention-event { + description + "Intervention events"; + uses INST-INTERVENTION-EVENT; + } + } + + grouping INST-REIMAGE-HISTORY-BAG { + description + "Install Reimage history entry"; + leaf reimage-id { + type uint32; + description + "Reimage ID"; + } + leaf user-request { + type String1; + description + "User request string that started this + transaction"; + } + leaf time-started { + type String1; + description + "Timestamp this activity was started, in RFC3339 + internet date/time format"; + } + leaf error-string { + type String1; + description + "String describing the error during this + operation"; + } + leaf error-time { + type String1; + description + "Timestamp the error was hit, in RFC3339 internet + date/time format"; + } + } + + grouping INST-PLATFORM-SUPPORT-BAG { + description + "Support for Install features on this platform"; + leaf max-rollback-space { + type uint64; + description + "The maximum amount of space allowed for rollback + points on this platform. A value of 0 indicates + that rollback is not supported."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub2.yang new file mode 100644 index 000000000..431ff5c99 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper-sub2.yang @@ -0,0 +1,126 @@ +submodule Cisco-IOS-XR-install-augmented-oper-sub2 { + belongs-to Cisco-IOS-XR-install-augmented-oper { + prefix Cisco-IOS-XR-install-augmented-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR install-augmented package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-17 { + description + "Add latest reimage bags. + 2022-05-05 + Add warning to inst_request_verbose_bag. + 2022-02-18 + Add detailed intervention event information. + 2021-10-27 + Add new bag for platform-specific disabled packages. + 2021-10-25 + Add source to package operation reporting. + 2021-10-01 + Add details in history for package verification failure reporting."; + semver:module-version "2.3.0"; + } + revision 2021-08-25 { + description + "7.5.1 release features."; + semver:module-version "2.2.0"; + } + revision 2021-03-22 { + description + "7.4.1 release features. + 2020-09-30 + 7.3.1 release features."; + semver:module-version "2.1.0"; + } + revision 2020-05-12 { + description + "Removal of compound from enum naming conventions to avoid confusion. + 2019-12-11 + Obsoleted the nodes list for history items. + 2019-10-14 + Combined platform updates including updates to show install rollback list-ids"; + semver:module-version "2.0.0"; + } + revision 2019-10-13 { + description + "NCS540L 7.1.1 release + 2019-10-12 + 8000 series 7.0.11 release"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Inst-activation { + type enumeration { + enum "restart" { + value 0; + description + "Process restart"; + } + enum "reload" { + value 1; + description + "Reload"; + } + enum "least-impactful" { + value 2; + description + "Least impactful"; + } + } + description + "Activation type"; + } + + typedef Inst-package-abort { + type enumeration { + enum "latest" { + value 0; + description + "Latest packaging operation"; + } + enum "all-since-apply" { + value 1; + description + "All packaging operations since the last apply"; + } + } + description + "Package abort type"; + } + + typedef String1 { + type string; + description + "String1"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper.yang new file mode 100644 index 000000000..d4ae8c21c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-augmented-oper.yang @@ -0,0 +1,688 @@ +module Cisco-IOS-XR-install-augmented-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-install-augmented-oper"; + prefix install-augmented-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-install-augmented-oper-sub2 { + revision-date 2022-11-17; + } + include Cisco-IOS-XR-install-augmented-oper-sub1 { + revision-date 2022-11-17; + } + + 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 install-augmented package operational data. + + This module contains definitions + for the following management objects: + install: Install operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-17 { + description + "Add latest reimage bags. + 2022-05-05 + Add warning to inst_request_verbose_bag. + 2022-02-18 + Add detailed intervention event information. + 2021-10-27 + Add new bag for platform-specific disabled packages. + 2021-10-25 + Add source to package operation reporting. + 2021-10-01 + Add details in history for package verification failure reporting."; + semver:module-version "2.3.0"; + } + revision 2021-08-25 { + description + "7.5.1 release features."; + semver:module-version "2.2.0"; + } + revision 2021-03-22 { + description + "7.4.1 release features. + 2020-09-30 + 7.3.1 release features."; + semver:module-version "2.1.0"; + } + revision 2020-05-12 { + description + "Removal of compound from enum naming conventions to avoid confusion. + 2019-12-11 + Obsoleted the nodes list for history items. + 2019-10-14 + Combined platform updates including updates to show install rollback list-ids"; + semver:module-version "2.0.0"; + } + revision 2019-10-13 { + description + "NCS540L 7.1.1 release + 2019-10-12 + 8000 series 7.0.11 release"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PACKAGING-OPERATION-FULL-ERRORS { + description + "Common node of packaging-operation, + latest-packaging-operation"; + container packaging-operation-full-errors { + description + "Information about per-node and global + intervention events during a packaging operation"; + container packaging-operation-full-errors-global { + description + "System-wide intervention event information + during a packaging operation"; + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + container packaging-operation-full-errors-nodes { + description + "Table for per-node intervention event + information when carrying out a packaging + operation"; + list packaging-operation-full-errors-node { + key "node"; + description + "Node specific intervention event information + during a packaging operation"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + } + } + } + + grouping ATOMIC-CHANGE-TABLE { + description + "Common node of transaction, latest-transaction"; + container atomic-changes { + description + "Table for atomic software change specific + operational data"; + list atomic-change { + key "index"; + description + "Information about a particular atomic change"; + leaf index { + type uint32; + description + "Index"; + } + uses ATOMIC-CHANGE-FULL-ERRORS; + uses PACKAGING-OPERATION-TABLE; + uses ATOMIC-CHANGE-INFO; + uses ATOMIC-CHANGE-INFO-NODE-TABLE; + } + } + } + + grouping TRANSACTION-INFO-NODE-TABLE { + description + "Common node of transaction, latest-transaction"; + container transaction-info-nodes { + description + "Table for per-node information during a + transaction"; + list transaction-info-node { + key "node"; + description + "Node specific information during a transaction"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-TRANS-NODE-BAG; + } + } + } + + grouping TRANSACTION-FULL-ERRORS { + description + "Common node of transaction, latest-transaction"; + container transaction-full-errors { + description + "Information about per-node and global install + intervention events during a transaction"; + container transaction-full-errors-nodes { + description + "Table for per-node intervention event + information when carrying out a transaction"; + list transaction-full-errors-node { + key "node"; + description + "Node specific intervention event information + during a transaction"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + } + container transaction-full-errors-global { + description + "System-wide intervention event information + during a transaction"; + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + } + } + + grouping TRANSACTION-INFO { + description + "Common node of transaction, latest-transaction"; + container transaction-info { + description + "Summary information about the transaction"; + uses INST-TRANS-BAG; + } + } + + grouping ATOMIC-CHANGE-INFO { + description + "Common node of atomic-change, + latest-atomic-change"; + container atomic-change-info { + description + "Summary information about the atomic change"; + uses INST-ATOMIC-CHANGE-BAG; + } + } + + grouping PACKAGING-OPERATION-INFO-NODE-TABLE { + description + "Common node of latest-packaging-operation, + packaging-operation"; + container packaging-operation-info-nodes { + description + "Table for per-node information during a + packaging operation"; + list packaging-operation-info-node { + key "node"; + description + "Node specific information during a packaging + operation"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-PKG-OP-NODE-BAG; + } + } + } + + grouping ATOMIC-CHANGE-FULL-ERRORS { + description + "Common node of atomic-change, + latest-atomic-change"; + container atomic-change-full-errors { + description + "Information about per-node and global + intervention event during an atomic change"; + container atomic-change-full-errors-nodes { + description + "Table for per-node intervention event + information when carrying out an atomic change"; + list atomic-change-full-errors-node { + key "node"; + description + "Node specific intervention event information + during an atomic change"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + } + container atomic-change-full-errors-global { + description + "System-wide intervention event information + during an atomic change"; + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + } + } + + grouping PACKAGING-OPERATION-TABLE { + description + "Common node of atomic-change, + latest-atomic-change"; + container packaging-operations { + description + "Table for packaging operation specific + operational data"; + list packaging-operation { + key "index"; + description + "Data about a particular packaging operation"; + leaf index { + type uint32; + description + "Index"; + } + uses PACKAGING-OPERATION-ERRORS-NODE-TABLE; + uses PACKAGING-OPERATION-INFO-NODE-TABLE; + uses PACKAGING-OPERATION-FULL-ERRORS; + uses PACKAGING-OPERATION-INFO; + } + } + } + + grouping PACKAGING-OPERATION-ERRORS-NODE-TABLE { + description + "Common node of latest-packaging-operation, + packaging-operation"; + container packaging-operation-errors-nodes { + description + "Table for per-node DNF errors during a packaging + operation"; + list packaging-operation-errors-node { + key "node"; + description + "Node specific DNF error logs during a packaging + operation"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-PKG-OP-ERRORS-BAG; + } + } + } + + grouping PACKAGING-OPERATION-INFO { + description + "Common node of latest-packaging-operation, + packaging-operation"; + container packaging-operation-info { + description + "Information about a packaging operation"; + uses INST-PKG-OP-BAG; + } + } + + grouping ATOMIC-CHANGE-INFO-NODE-TABLE { + description + "Common node of atomic-change, + latest-atomic-change"; + container atomic-change-info-nodes { + description + "Table for per-node information during an atomic + change"; + list atomic-change-info-node { + key "node"; + description + "Node specific information during an atomic + change"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-ATOMIC-CHANGE-NODE-BAG; + } + } + } + + container install { + config false; + description + "Install operational data"; + container platform-support { + description + "Information about what features are supported on + this platform"; + container platform-support-info { + description + "Information about what features are supported + on this platform"; + uses INST-PLATFORM-SUPPORT-BAG; + } + } + container history { + description + "Operation history"; + container reimages { + description + "Table for reimage history data"; + list reimage { + key "reimage-id"; + description + "Information about a particular reimage"; + container reimage-info { + description + "Information about a particular reimage"; + uses INST-REIMAGE-HISTORY-BAG; + } + container reimage-errors { + description + "Error information during a reimage"; + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + leaf reimage-id { + type uint32; + description + "Install Reimage ID"; + } + } + } + container latest-transaction { + description + "Latest transaction data"; + uses TRANSACTION-INFO-NODE-TABLE; + uses TRANSACTION-FULL-ERRORS; + uses TRANSACTION-INFO; + uses ATOMIC-CHANGE-TABLE; + } + container latest-packaging-operation { + description + "Information about the latest packaging + operation"; + uses PACKAGING-OPERATION-ERRORS-NODE-TABLE; + uses PACKAGING-OPERATION-INFO-NODE-TABLE; + uses PACKAGING-OPERATION-FULL-ERRORS; + uses PACKAGING-OPERATION-INFO; + } + container latest-atomic-change { + description + "Latest atomic software change"; + uses ATOMIC-CHANGE-FULL-ERRORS; + uses PACKAGING-OPERATION-TABLE; + uses ATOMIC-CHANGE-INFO; + uses ATOMIC-CHANGE-INFO-NODE-TABLE; + } + container transactions { + description + "Table for transaction-specific operational data"; + list transaction { + key "transaction-id"; + description + "Information about a particular transaction"; + leaf transaction-id { + type uint32; + description + "Install Transaction ID"; + } + uses TRANSACTION-INFO-NODE-TABLE; + uses TRANSACTION-FULL-ERRORS; + uses TRANSACTION-INFO; + uses ATOMIC-CHANGE-TABLE; + } + } + container latest-reimage { + description + "Container for latest reimage information"; + container reimage-info { + description + "Information about the latest reimage"; + uses INST-REIMAGE-HISTORY-BAG; + } + container reimage-errors { + description + "Errors information about the latest reimage"; + uses INST-OP-INTERVENTION-EVENTS-BAG; + } + } + } + container packages { + description + "Package information"; + container cached { + description + "Information about cached packages"; + container summary { + description + "Summary packages"; + uses INST-PACKAGES-BAG; + } + container all { + description + "All packages including card-specific + dependencies"; + uses INST-PACKAGES-BAG; + } + } + container available { + description + "Information about available packages"; + container internal { + description + "All packages including card-specific + dependencies"; + uses INST-AVAILABLE-PACKAGES-BAG; + } + container all { + description + "All user-installable packages"; + uses INST-AVAILABLE-PACKAGES-BAG; + } + } + } + container upgrade-matrix { + description + "Upgrade compatibility matrix information"; + container rollbacks { + description + "Table containing upgrade matrix data from the + current active version to the rollback point"; + list rollback { + key "id"; + description + "Rollback point information"; + container all { + description + "Bag containing upgrade matrix data for all + supported known paths for the rollback point"; + uses INSTALL-UPGRADE-MATRIX-ISO; + } + container from-running { + description + "Bag containing upgrade matrix data from the + current active version to the rollback point"; + uses INSTALL-UPGRADE-MATRIX-ISO; + } + leaf id { + type uint32; + description + "Rollback point ID"; + } + } + } + } + container internal { + description + "Internal debug information"; + container fixes { + description + "Information about fixes that are available"; + container available-group-fixes { + description + "Groups of fixes"; + list available-group-fixe { + key "ddts"; + description + "Information about groups of fixes that are + available"; + leaf ddts { + type xr:Cisco-ios-xr-string; + description + "First DDTS Id in list"; + } + uses INST-AVAILABLE-GROUP-FIXES-BAG; + } + } + } + container packages { + description + "Package information"; + container pkgmgr { + description + "Information about package-manager installed + packages. During an atomic change, this is the + full set of packages that will be active after + the atomic change is applied"; + container nodes { + description + "Table for node level data"; + list node { + key "node"; + description + "Per-node packages"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-PACKAGES-BAG; + } + } + container summary { + description + "Summary packages"; + uses INST-PACKAGES-BAG; + } + } + container disabled { + description + "Packages that are disabled on this platform"; + uses INST-DISABLED-PKGS-BAG; + } + } + } + container request { + description + "Information about the latest user request"; + container verbose { + description + "Verbose information about the status of current + install operation"; + uses INST-REQUEST-VERBOSE-BAG; + } + } + container version { + description + "Install version information"; + container detail { + description + "Install version detailed information"; + uses INST-VERSION-BAG; + } + container brief { + description + "Install version brief information"; + uses INST-VERSION-BAG; + } + } + container rollback { + description + "Information about software rollback options"; + container rollback-points { + description + "Table for rollback points"; + list rollback-point { + key "id"; + description + "Rollback point information"; + container summary { + description + "Summary of changes when rolling back to a a + rollback point"; + uses INST-ROLLBACK-SUMMARY-BAG; + } + container installed-packages { + description + "Installed packages"; + container user-installable { + description + "User-installable packages associated with + rollback point"; + uses INST-PACKAGES-BAG; + } + container changes { + description + "Changes in packages if rolling back"; + uses INST-CHANGES-BAG; + } + container pkgs-and-fixes { + description + "User-installable packages (and their fixes) + associated with rollback point"; + uses INST-ROLLBACK-POINT-BAG; + } + } + leaf id { + type uint32; + description + "Rollback point ID"; + } + } + } + } + container fixes { + description + "Information about DDTS fixes"; + container deactivate-fixes { + description + "Deactivate one or more fixes"; + list deactivate-fixe { + key "ddt-ss"; + description + "Information about groups of fixes that are + available"; + leaf ddt-ss { + type xr:Cisco-ios-xr-string; + description + "Comma separated DDTS list of DDTSs to + deactivate"; + } + uses INST-DEACTIVATE-DDTS-IDS-BAG; + } + } + container available { + description + "Information about fixes that are available"; + uses INST-AVAILABLE-FIXES-BAG; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-cfg.yang new file mode 100644 index 000000000..17dd9d0f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-cfg.yang @@ -0,0 +1,112 @@ +module Cisco-IOS-XR-install-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-install-cfg"; + prefix install-cfg; + + 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 install package configuration. + + This module contains definitions + for the following management objects: + install: Install configuration data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-14 { + description + "Add support for fingerprints frequency never. + 2022-03-10 + Added configuration for RPM fingerprinting."; + semver:module-version "1.1.0"; + } + revision 2019-12-11 { + description + "Repository URL description updated."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container install { + description + "Install configuration data"; + container fingerprints { + description + "Container for fingerprint config"; + leaf frequency { + type uint32 { + range "0..12"; + } + units "hour"; + description + "Frequency of fingerprint generation in hours. A + value of 0 disables fingerprint regeneration"; + } + } + container repositories { + description + "Table of repositories"; + list repository { + key "id"; + description + "Repository configuration"; + leaf url { + type string { + length "1..900"; + } + description + "Repository URL - path to local repository or + directory or ftp, http, or https path to + remote repository, optionally containing the + name of a VRF for the repository. Format one + of: + ftp://[;]/ + + http://[;]/ + + https://[;]/ + + file:///"; + } + leaf description { + type string { + length "1..900"; + } + description + "Repository name or description"; + } + leaf id { + type string { + length "1..80"; + } + description + "Repository identifier"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-oper-sub1.yang new file mode 100644 index 000000000..3eec7e399 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-oper-sub1.yang @@ -0,0 +1,896 @@ +submodule Cisco-IOS-XR-install-oper-sub1 { + belongs-to Cisco-IOS-XR-install-oper { + prefix Cisco-IOS-XR-install-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR install package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Add reimage errors bag. + 2022-10-19 + Add more detail to BEGIN_REIMAGE activity. + 2022-09-12 + Added reimage history bag as part of the reimage from disk feature. + 2022-08-26 + Added matrix version to upgrade matrix bag + 2022-05-05 + Add warning to inst_request_bag. + 2022-03-09 + Added support for show install profile + 2022-03-09 + Added support for show install profile + 2022-01-12 + Added feature information for transaction locking. + 2021-09-21 + Add new states for ISO download and extracting main ISO contents. IosSetYangSchemaRev Cisco-IOS-XR-install-augumented-oper + 2021-08-10 + Add force option to package abort."; + semver:module-version "1.5.0"; + } + revision 2021-07-15 { + description + "Add pre-commit check support. + 2021-05-18 + Modified oper path for upgrade compatibility matrix with iso input + 2021-05-13 + Added optional hash into all package queries. + 2021-04-14 + Add system reload reason and config replace info + 2021-03-22 + Added support for upgrade compatibility matrix feature"; + semver:module-version "1.4.0"; + } + revision 2021-01-14 { + description + "Add DDTS info to rollback queries. + 2020-07-23 + Added optional label into inst_packages_bag. + 2020-07-22 + Update Inst-provides-match-type with additional provide value + 2020-05-27 + Add install and runtime fingerprint + 2020-05-27 + Add install and runtime fingerprint + 2020-05-27 + Add install and runtime fingerprint + 2020-05-13 + Updated version information to add hostname and disk space + 2020-05-13 + Updated version information to add hostname and disk space + 2020-05-13 + Updated version information to add hostname and disk space"; + semver:module-version "1.3.0"; + } + revision 2020-04-23 { + description + "Add categorization of installed software packages into Cisco and Non-Cisco + 2020-04-23 + Add categorization of installed software packages into Cisco and Non-Cisco + 2020-04-23 + Add categorization of installed software packages into Cisco and Non-Cisco + 2020-02-05 + Updated version information to add a GISO label + 2020-02-05 + Updated version information to add a GISO label + 2020-02-05 + Updated version information to add a GISO label + 2020-01-09 + Added optional label into inst_summary_packages_bag. + 2019-10-14 + Combined platform updates including updates to show install rollback list-ids"; + semver:module-version "1.2.0"; + } + revision 2019-10-13 { + description + "NCS540L 7.1.1 release + 2019-10-12 + 8000 series 7.0.11 release + 2019-08-13 + Common yang oper model for lindt and eXR install."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Inst-req-state { + type enumeration { + enum "in-progress" { + value 0; + description + "In progress"; + } + enum "success" { + value 1; + description + "Success"; + } + enum "failure" { + value 2; + description + "Failure"; + } + } + description + "Install request state type"; + } + + typedef Inst-fp-request-status { + type enumeration { + enum "generation-up-to-date" { + value 0; + description + "Runtime fingerprint generation up to date."; + } + enum "generation-in-progress" { + value 1; + description + "Runtime fingerprint generation in progress"; + } + enum "to-be-regenerated-at-apply" { + value 2; + description + "Runtime fingerprints will be regenerated on + apply"; + } + } + description + "package Fingerprint request status"; + } + + typedef Inst-profile-action { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown"; + } + enum "error-on-failure" { + value 1; + description + "error on failure"; + } + enum "warn-on-failure" { + value 2; + description + "warn on failure"; + } + enum "revert-on-failure" { + value 3; + description + "revert-on-failure (only supported for + postchecks)"; + } + } + description + "Install profile metric action type"; + } + + typedef Inst-profile-metric-name { + type enumeration { + enum "communication-timeout" { + value 0; + description + "communication-timeout metric"; + } + enum "config-inconsistency" { + value 1; + description + "config-inconsistency metric"; + } + enum "process-resource" { + value 2; + description + "process-resource metric"; + } + enum "process-status" { + value 3; + description + "process-status metric"; + } + enum "system-clock" { + value 4; + description + "system-clock metric"; + } + enum "hw-monitoring" { + value 5; + description + "hw-monitoring metric"; + } + enum "lc-monitoring" { + value 6; + description + "lc-monitoring metric"; + } + enum "pci-monitoring" { + value 7; + description + "pci-monitoring metric"; + } + enum "wd-monitoring" { + value 8; + description + "wd-monitoring metric"; + } + enum "disk-space" { + value 9; + description + "disk-space metric"; + } + enum "upgrade-matrix" { + value 10; + description + "upgrade-matrix metric"; + } + enum "core-cleanup" { + value 11; + description + "core-cleanup metric"; + } + enum "file-cleanup" { + value 12; + description + "file-cleanup metric"; + } + } + description + "Install profile metric names"; + } + + typedef Inst-profile-state { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown/Error"; + } + enum "enabled" { + value 1; + description + "Enabled"; + } + enum "disabled" { + value 2; + description + "Disabled"; + } + } + description + "Install profile / metric state type"; + } + + typedef Caveat { + type string; + description + "Caveat"; + } + + typedef Fix { + type string; + description + "DDTS or fix ID"; + } + + typedef Install-opt-string { + type string; + description + "Install opt string"; + } + + grouping INST-REQUEST-BAG { + description + "Request result bag"; + leaf request { + type string; + description + "The last user request"; + } + leaf state { + type Inst-req-state; + description + "The state of the last user request. Added + telemetry event for operation state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf timestamp { + type string; + description + "The time the current state was entered"; + } + leaf error { + type string; + description + "String describing the error, if any"; + } + leaf operation-id { + type Install-opt-string; + description + "Operation ID of the ongoing or previous + completed install operation. Added + telemetry event for install operation id"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf warning { + type Install-opt-string; + description + "String describing a warning, if any"; + } + } + + grouping INST-TOP-LEVEL-PKG-TYPE { + description + "Install user-installable package type"; + container rpm-fingerprint { + description + "RPM Fingerprint at install and run time"; + uses INST-RPM-FINGER-PRINT; + } + leaf name { + type string; + description + "Package name"; + } + leaf architecture { + type string; + description + "Architecture"; + } + leaf version { + type string; + description + "Version"; + } + leaf release { + type string; + description + "Release"; + } + leaf epoch { + type Install-opt-string; + description + "Epoch"; + } + leaf xr-mandatory { + type boolean; + description + "XR Mandatory"; + } + leaf xr-optional { + type boolean; + description + "XR Optional"; + } + leaf gpg-key-id { + type Install-opt-string; + description + "The GPG key ID at install time. A key ID of '0' + indicates a package with no GPG signature."; + } + } + + grouping INST-SUMMARY-PACKAGES-BAG { + description + "Summary packages result bag"; + leaf xr-packages-hash { + type string; + description + "Hash of XR packages"; + } + leaf label { + type Install-opt-string; + description + "Label of image"; + } + leaf rpm-fingerprint-status { + type Inst-fp-request-status; + description + "Package Fingerprint request status"; + } + leaf rpm-fingerprint-timestamp { + type Install-opt-string; + description + "Package run time fingerprint collection time"; + } + list package { + description + "Added telemetry event at packages level"; + uses INST-TOP-LEVEL-PKG-TYPE; + } + } + + grouping INST-PACKAGES-BAG { + description + "Package result bag"; + leaf rpm-fingerprint-status { + type Inst-fp-request-status; + description + "Package Fingerprint request status"; + } + leaf rpm-fingerprint-timestamp { + type Install-opt-string; + description + "Package run time fingerprint collection time"; + } + leaf label { + type Install-opt-string; + description + "Label of image"; + } + leaf xr-packages-hash { + type Install-opt-string; + description + "Hash of XR packages in this bag"; + } + list package { + description + "Packages"; + uses INST-PKG-TYPE; + } + } + + grouping INST-RPM-FINGER-PRINT { + description + "Install package fingerprint type"; + leaf rpm-fingerprint-install-time { + type Install-opt-string; + description + "Package fingerprint at install time."; + } + leaf rpm-fingerprint-run-time { + type Install-opt-string; + description + "Package fingerprint at run time. A runtime + fingerprint of '0' indicates that the runtime + fingerprint for this package has not yet been + calculated."; + } + } + + grouping INST-PKG-TYPE { + description + "Install package type"; + container rpm-fingerprint { + description + "RPM Fingerprint at install and run time"; + uses INST-RPM-FINGER-PRINT; + } + leaf name { + type string; + description + "Package name"; + } + leaf architecture { + type string; + description + "Architecture"; + } + leaf version { + type string; + description + "Version"; + } + leaf release { + type string; + description + "Release"; + } + leaf epoch { + type Install-opt-string; + description + "Epoch"; + } + leaf gpg-key-id { + type Install-opt-string; + description + "The GPG key ID at install time. A key ID of '0' + indicates a package with no GPG signature."; + } + } + + grouping INST-FIX-TYPE { + description + "INST FIX TYPE"; + leaf ddts { + type string; + description + "DDTS id"; + } + list package { + description + "Packages"; + uses INST-PKG-TYPE; + } + } + + grouping INST-FIXES-BAG { + description + "Install bag containing details of + active/committed fixes"; + list fixes { + description + "Fixes"; + uses INST-FIX-TYPE; + } + } + + grouping INST-VER-PKG-TYPE { + description + "Install package type"; + leaf name { + type string; + description + "Name"; + } + leaf version { + type string; + description + "Version"; + } + leaf built-by { + type string; + description + "User built by"; + } + leaf built-on { + type string; + description + "Time built"; + } + leaf workspace { + type string; + description + "Workspace built in"; + } + leaf build-host { + type string; + description + "Build host"; + } + } + + grouping INST-VERSION-BAG { + description + "Install version bag"; + leaf label { + type string; + description + "Added telemetry event on Label field"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf copyright-info { + type string; + description + "Copyright information"; + } + leaf hardware-info { + type string; + description + "Hardware information"; + } + leaf uptime { + type string; + description + "System uptime"; + } + leaf location { + type Install-opt-string; + description + "Prefix for the path where packages will be + installed"; + } + leaf processor { + type Install-opt-string; + description + "Processor"; + } + leaf chassis-pid { + type Install-opt-string; + description + "Chassis PID"; + } + leaf chassis-description { + type Install-opt-string; + description + "Chassis Unique Device Identifier description"; + } + leaf xr-host-name { + type Install-opt-string; + description + "Configured XR hostname"; + } + leaf total-ram { + type uint64; + description + "Total physical memory in GB"; + } + list package { + description + "Packages"; + uses INST-VER-PKG-TYPE; + } + } + + grouping INST-POSTCHECKS-METRICS-DATA { + description + "Metric data"; + leaf name { + type Inst-profile-metric-name; + description + "Name of the metric"; + } + leaf state { + type Inst-profile-state; + description + "State of the metric"; + } + leaf action { + type Inst-profile-action; + description + "Postcheck action for the metric"; + } + } + + grouping INST-PROFILE-POSTCHECKS-DATA { + description + "Postchecks data"; + leaf state { + type Inst-profile-state; + description + "State of postchecks"; + } + list metric { + description + "Metrics settings"; + uses INST-POSTCHECKS-METRICS-DATA; + } + } + + grouping INST-PRECHECKS-METRICS-DATA { + description + "Metric data"; + leaf name { + type Inst-profile-metric-name; + description + "Name of the metric"; + } + leaf state { + type Inst-profile-state; + description + "State of the metric"; + } + leaf action { + type Inst-profile-action; + description + "Precheck action for the metric"; + } + } + + grouping INST-PROFILE-PRECHECKS-DATA { + description + "Prechecks data"; + leaf state { + type Inst-profile-state; + description + "State of prechecks"; + } + list metric { + description + "Metrics settings"; + uses INST-PRECHECKS-METRICS-DATA; + } + } + + grouping INST-PROFILE { + description + "Install profile bag"; + container prechecks { + description + "Prechecks settings"; + uses INST-PROFILE-PRECHECKS-DATA; + } + container postchecks { + description + "Postchecks settings"; + uses INST-PROFILE-POSTCHECKS-DATA; + } + leaf profile { + type string; + description + "Name of the profile"; + } + leaf state { + type Inst-profile-state; + description + "The state of the profile (enabled/disabled)"; + } + leaf error { + type Install-opt-string; + description + "String describing the error, if any"; + } + } + + grouping INSTALL-UPGRADE-MATRIX-ISO { + description + "Upgrade matrix info for the input ISO"; + leaf info { + type Install-opt-string; + description + "Info"; + } + leaf matrix-version { + type Install-opt-string; + description + "Matrix file version"; + } + list upgrade-matrix-info { + description + "Upgrade matrix table"; + uses INSTALL-UPGRADE-MATRIX-DATA; + } + } + + grouping INST-UPGRADE-MATRIX-RPM { + description + "Upgrade matrix RPM details"; + leaf name { + type string; + description + "RPM name"; + } + leaf version { + type string; + description + "RPM version"; + } + } + + grouping INST-UPGRADE-MATRIX-FIX { + description + "Upgrade matrix fix"; + leaf fix { + type string; + description + "DDTS or fix ID"; + } + list rpms { + description + "RPMs"; + uses INST-UPGRADE-MATRIX-RPM; + } + } + + grouping INST-UPGRADE-MATRIX-HW { + description + "Upgrade matrix hardware data"; + leaf pid { + type Install-opt-string; + description + "PID"; + } + leaf reason { + type Install-opt-string; + description + "Reason for the hardware being unsupported"; + } + } + + grouping INSTALL-UPGRADE-MATRIX-DETAILS { + description + "Upgrade matrix details"; + leaf-list bridging-fixes { + type Fix; + description + "Bridging Fixes List"; + } + leaf-list caveats { + type Caveat; + description + "Caveats list"; + } + leaf-list blocklisted-fixe { + type Fix; + description + "Blocklisted Fixes List"; + } + list unsupported-hardware { + description + "Unsupported hardware list"; + uses INST-UPGRADE-MATRIX-HW; + } + list bridging-fixess-rpm { + description + "Bridging Fixes, list of DDTS (and associated + RPMs)"; + uses INST-UPGRADE-MATRIX-FIX; + } + list blocklisted-fixes-rpm { + description + "List of DDTS (and associated RPMs) which must + not be installed"; + uses INST-UPGRADE-MATRIX-FIX; + } + } + + grouping INSTALL-UPGRADE-MATRIX-RELEASE-DATA { + description + "Upgrade matrix version data"; + leaf from { + type string; + description + "From version"; + } + leaf to { + type string; + description + "To version"; + } + } + + grouping INSTALL-UPGRADE-MATRIX-DATA { + description + "Upgrade matrix data"; + container versions { + description + "Versions"; + uses INSTALL-UPGRADE-MATRIX-RELEASE-DATA; + } + container details { + description + "Details"; + uses INSTALL-UPGRADE-MATRIX-DETAILS; + } + } + + grouping INSTALL-UPGRADE-MATRIX-RUNNING { + description + "Upgrade matrix info for current running image"; + leaf info { + type Install-opt-string; + description + "Info"; + } + leaf matrix-version { + type Install-opt-string; + description + "Matrix file version"; + } + list upgrade-matrix-info { + description + "Upgrade matrix table"; + uses INSTALL-UPGRADE-MATRIX-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-oper.yang new file mode 100644 index 000000000..9ec6047df --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-oper.yang @@ -0,0 +1,256 @@ +module Cisco-IOS-XR-install-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-install-oper"; + prefix install-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-install-oper-sub1 { + revision-date 2022-11-09; + } + + 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 install package operational data. + + This module contains definitions + for the following management objects: + install: Install operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Add reimage errors bag. + 2022-10-19 + Add more detail to BEGIN_REIMAGE activity. + 2022-09-12 + Added reimage history bag as part of the reimage from disk feature. + 2022-08-26 + Added matrix version to upgrade matrix bag + 2022-05-05 + Add warning to inst_request_bag. + 2022-03-09 + Added support for show install profile + 2022-03-09 + Added support for show install profile + 2022-01-12 + Added feature information for transaction locking. + 2021-09-21 + Add new states for ISO download and extracting main ISO contents. IosSetYangSchemaRev Cisco-IOS-XR-install-augumented-oper + 2021-08-10 + Add force option to package abort."; + semver:module-version "1.5.0"; + } + revision 2021-07-15 { + description + "Add pre-commit check support. + 2021-05-18 + Modified oper path for upgrade compatibility matrix with iso input + 2021-05-13 + Added optional hash into all package queries. + 2021-04-14 + Add system reload reason and config replace info + 2021-03-22 + Added support for upgrade compatibility matrix feature"; + semver:module-version "1.4.0"; + } + revision 2021-01-14 { + description + "Add DDTS info to rollback queries. + 2020-07-23 + Added optional label into inst_packages_bag. + 2020-07-22 + Update Inst-provides-match-type with additional provide value + 2020-05-27 + Add install and runtime fingerprint + 2020-05-27 + Add install and runtime fingerprint + 2020-05-27 + Add install and runtime fingerprint + 2020-05-13 + Updated version information to add hostname and disk space + 2020-05-13 + Updated version information to add hostname and disk space + 2020-05-13 + Updated version information to add hostname and disk space"; + semver:module-version "1.3.0"; + } + revision 2020-04-23 { + description + "Add categorization of installed software packages into Cisco and Non-Cisco + 2020-04-23 + Add categorization of installed software packages into Cisco and Non-Cisco + 2020-04-23 + Add categorization of installed software packages into Cisco and Non-Cisco + 2020-02-05 + Updated version information to add a GISO label + 2020-02-05 + Updated version information to add a GISO label + 2020-02-05 + Updated version information to add a GISO label + 2020-01-09 + Added optional label into inst_summary_packages_bag. + 2019-10-14 + Combined platform updates including updates to show install rollback list-ids"; + semver:module-version "1.2.0"; + } + revision 2019-10-13 { + description + "NCS540L 7.1.1 release + 2019-10-12 + 8000 series 7.0.11 release + 2019-08-13 + Common yang oper model for lindt and eXR install."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SUMMARY { + description + "Common node of committed, active"; + container summary { + description + "Summary information"; + uses INST-SUMMARY-PACKAGES-BAG; + } + } + + grouping NODE-TABLE { + description + "Common node of committed, active"; + container nodes { + description + "Table for per-node package data"; + list node { + key "node"; + description + "Per-node package data"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-PACKAGES-BAG; + } + } + } + + container install { + config false; + description + "Install operational data"; + container upgrade-matrix { + description + "Upgrade compatibility matrix information"; + container running { + description + "Show matrix for all supported known paths from + the current active version"; + uses INSTALL-UPGRADE-MATRIX-RUNNING; + } + container isos { + description + "Show upgrade matrix for the input (G)ISO"; + list iso { + key "iso-path"; + description + "Absolute path to the (G)ISO"; + container from-running { + description + "Show upgrade matrix from the current active + version to the input (G)ISO"; + uses INSTALL-UPGRADE-MATRIX-ISO; + } + container all { + description + "Show upgrade matrix for all supported known + paths for the input (G)ISO"; + uses INSTALL-UPGRADE-MATRIX-ISO; + } + leaf iso-path { + type string { + length "1..256"; + } + description + "Absolute path to (G)ISO"; + } + } + } + } + container profile { + description + "Install Profile"; + container default { + description + "Default profile"; + uses INST-PROFILE; + } + } + container version { + description + "Install version information"; + uses INST-VERSION-BAG; + } + container fixes { + description + "Information about installed fixes"; + container active { + description + "Information about fixes that are active"; + uses INST-FIXES-BAG; + } + container committed { + description + "Information about fixes that are committed"; + uses INST-FIXES-BAG; + } + } + container packages { + description + "Information about packages installed to the + system"; + container committed { + description + "Information about committed packages"; + uses NODE-TABLE; + uses SUMMARY; + } + container active { + description + "Information about active packages"; + uses NODE-TABLE; + uses SUMMARY; + } + } + container request { + description + "Information about the latest user request"; + uses INST-REQUEST-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-profile-cfg.yang new file mode 100644 index 000000000..3246c2130 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-profile-cfg.yang @@ -0,0 +1,269 @@ +module Cisco-IOS-XR-install-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-install-profile-cfg"; + prefix install-profile-cfg; + + 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 install-profile package configuration. + + This module contains definitions + for the following management objects: + install-shared: Install shared config data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-25 { + description + "Added support for install profile configurations"; + semver:module-version "1.0.0"; + } + revision 2022-03-25 { + description + "Added support for install profile configurations"; + } + revision 2022-03-09 { + description + "Config schema updated"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cleanup-metric-name { + type enumeration { + enum "core-cleanup" { + value 11; + description + "core-cleanup metric"; + } + enum "file-cleanup" { + value 12; + description + "file-cleanup metric"; + } + } + description + "Cleanup metric name"; + } + + typedef Metric-name { + type enumeration { + enum "communication-timeout" { + value 0; + description + "communication-timeout metric"; + } + enum "config-inconsistency" { + value 1; + description + "config-inconsistency metric"; + } + enum "process-resource" { + value 2; + description + "process-resource metric"; + } + enum "process-status" { + value 3; + description + "process-status metric"; + } + enum "system-clock" { + value 4; + description + "system-clock metric"; + } + enum "hw-monitoring" { + value 5; + description + "hw-monitoring metric"; + } + enum "lc-monitoring" { + value 6; + description + "lc-monitoring metric"; + } + enum "pci-monitoring" { + value 7; + description + "pci-monitoring metric"; + } + enum "wd-monitoring" { + value 8; + description + "wd-monitoring metric"; + } + enum "disk-space" { + value 9; + description + "disk-space metric"; + } + enum "upgrade-matrix" { + value 10; + description + "upgrade-matrix metric"; + } + } + description + "Metric name"; + } + + grouping ERROR-ON-FAILURE { + description + "Common node of prechecks-metric, + postchecks-metric"; + leaf error-on-failure { + type empty; + description + "Set the metric action to error-on-failure"; + } + } + + grouping DISABLE { + description + "Common node of prechecks-metric, + postchecks-metric"; + leaf disable { + type empty; + description + "Disable the specified metric"; + } + } + + grouping INSTALL-SHARED-CONFIG-DISABLE { + description + "Common node of prechecks-metric, + postchecks-metricCommon node of precheck, + postcheck"; + leaf disable { + type empty; + description + "Disable pre or post checks"; + } + } + + grouping WARN-ON-FAILURE { + description + "Common node of prechecks-metric, + postchecks-metric"; + leaf warn-on-failure { + type empty; + description + "Set the metric action to warn-on-failure"; + } + } + + container install-shared { + description + "Install shared config data"; + container profile { + description + "Install profile config"; + container default { + description + "Supported profile list"; + container precheck { + description + "Default profile prechecks"; + container prechecks-metrics { + description + "Metric list for prechecks"; + list prechecks-metric { + key "metric"; + description + "Name of the metric"; + leaf metric { + type Metric-name; + description + "Name of the precheck metric"; + } + uses ERROR-ON-FAILURE; + uses WARN-ON-FAILURE; + uses DISABLE; + } + } + container cleanup-metrics { + description + "Metric list for pre-upgrade cleanups"; + list cleanup-metric { + key "metric"; + description + "Name of the metric"; + leaf enable { + type empty; + description + "Enable the specified cleanup metric"; + } + leaf metric { + type Cleanup-metric-name; + description + "Name of the pre-upgrade cleanup metric"; + } + } + } + uses INSTALL-SHARED-CONFIG-DISABLE; + } + container postcheck { + description + "Default profile postchecks"; + container postchecks-metrics { + description + "Metric list for postchecks"; + list postchecks-metric { + key "metric"; + description + "Name of the metric"; + leaf revert-on-failure { + type empty; + description + "Set the metric action to revert"; + } + leaf metric { + type Metric-name; + description + "Name of the postcheck metric"; + } + uses ERROR-ON-FAILURE; + uses WARN-ON-FAILURE; + uses DISABLE; + } + } + uses INSTALL-SHARED-CONFIG-DISABLE; + } + leaf disable { + type empty; + description + "Disable the specified profile"; + } + } + leaf disable { + type empty; + description + "Disable all supported profiles, checks and + metrics"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-install-search-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-install-search-act.yang new file mode 100644 index 000000000..ad3a3160e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-install-search-act.yang @@ -0,0 +1,321 @@ +module Cisco-IOS-XR-install-search-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-install-search-act"; + prefix install-search-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 install actions related to searching for package + information. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-03 { + description + "Modified tasks for the RPC operations."; + semver:module-version "2.0.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-12-01 { + description + "IOS XR 7.1.1 revision."; + } + + typedef Inst-provides-match-type { + type enumeration { + enum "description" { + value 0; + description + "Description"; + } + enum "URL" { + value 1; + description + "URL"; + } + enum "license" { + value 2; + description + "License"; + } + enum "filename" { + value 3; + description + "Filename"; + } + enum "other" { + value 4; + description + "Other"; + } + enum "provide" { + value 5; + description + "Provide"; + } + } + description + "Install provides match type"; + } + + grouping INST-PKG-COMMON-TYPE { + description + "Package details"; + leaf name { + type string; + description + "Package name"; + } + leaf architecture { + type string; + description + "Package architecture"; + } + leaf summary { + type string; + description + "Brief package description"; + } + } + + grouping INST-PKG-VERSION-TYPE { + description + "Package versioning information"; + leaf version { + type string; + description + "Package version"; + } + leaf epoch { + type string; + description + "Package epoch, if any"; + } + leaf release { + type string; + description + "Package release"; + } + } + + grouping INST-PKG-INFO-TYPE { + description + "Further package details for 'info' queries"; + leaf size { + type uint32; + description + "Package size, in kB"; + } + leaf description { + type string; + description + "More detailed description of the package"; + } + leaf license { + type string; + description + "Package license information"; + } + leaf repository { + type string; + description + "Repository containing the package"; + } + leaf url { + type string; + description + "Repository URL reference"; + } + } + + grouping INST-PKG-SEARCH-LIST-TYPE { + description + "Install package search list type"; + container packages { + description + "List of packages"; + list package { + description + "List of packages"; + uses INST-PKG-COMMON-TYPE; + } + } + } + + grouping INST-PKG-INFO-LIST-TYPE { + description + "Install package info list type"; + container packages { + description + "List of packages"; + list package { + description + "List of packages"; + uses INST-PKG-COMMON-TYPE; + uses INST-PKG-VERSION-TYPE; + uses INST-PKG-INFO-TYPE; + } + } + } + + grouping INST-PKG-REPOSITORY-WARNINGS { + description + "Information about user configured repositories that were searched"; + container inaccessible-repositories { + description + "List of repositories that the package manager was unable to access, + likely due to configuration errors or network connectivity"; + leaf-list repository { + type string; + description + "repository-name"; + } + } + container repositories-metadata-failed { + description + "List of local repositories where automatic metadata generation + failed. Information about packages in these repositories may not be + up to date."; + leaf-list repository { + type string; + description + "repository-name"; + } + } + } + + grouping INST-PKG-PROVIDES-LIST-TYPE { + description + "Install package provides list type"; + container packages { + description + "List of packages"; + list package { + description + "List of packages"; + uses INST-PKG-COMMON-TYPE; + uses INST-PKG-VERSION-TYPE; + leaf repository { + type string; + description + "Repository containing the package"; + } + container provides-matches { + description + "Features or dependencies this package provides"; + list provides-match { + description + "Provides match"; + leaf match_type { + type Inst-provides-match-type; + description + "Type of object that the item was matched from"; + } + leaf item { + type string; + description + "Package/feature/filename that is provided"; + } + } + } + } + } + } + + rpc info { + description + "Search for information about the given packages"; + input { + leaf search-packages { + type string { + length "1..1024"; + } + description + "Space separated list of packages to query"; + } + } + output { + container results { + description + "Info results"; + uses INST-PKG-INFO-LIST-TYPE; + uses INST-PKG-REPOSITORY-WARNINGS; + } + } + csc:xr-task "pkg-mgmt"; + } + rpc provides { + description + "Search for packages that provide the given file. Wildcards may + be used (do not use quotes)."; + input { + leaf search-files { + type string { + length "1..1024"; + } + description + "Space separated list of files or wildcard strings to query"; + } + } + output { + container results { + description + "Provides results"; + uses INST-PKG-PROVIDES-LIST-TYPE; + uses INST-PKG-REPOSITORY-WARNINGS; + } + } + csc:xr-task "pkg-mgmt"; + } + rpc search { + description + "Search for packages that contain the given string in the name, + summary, description or url. Wildcards may be used."; + input { + leaf search-strings { + type string { + length "1..1024"; + } + description + "Space separated list of strings to search for"; + } + } + output { + container results { + description + "Search results"; + uses INST-PKG-SEARCH-LIST-TYPE; + uses INST-PKG-REPOSITORY-WARNINGS; + } + } + csc:xr-task "pkg-mgmt"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-cfg.yang new file mode 100644 index 000000000..611d0ed28 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-cfg.yang @@ -0,0 +1,268 @@ +module Cisco-IOS-XR-interface-cem-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-interface-cem-cfg"; + prefix interface-cem-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 interface-cem package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-18 { + description + "Replaced default option with best-match option in payload and dejitter command under cem interface configuration."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cem-if-dummy-mode { + type enumeration { + enum "last-frame" { + value 0; + description + "Last frame"; + } + enum "user-defined" { + value 1; + description + "User defined"; + } + } + description + "Cem if dummy mode"; + } + + typedef Cem-recover-clock { + type enumeration { + enum "adaptive" { + value 1; + description + "Adaptive recover"; + } + enum "differential" { + value 2; + description + "Differential recover"; + } + } + description + "Cem recover clock"; + } + + typedef Endpoint-send { + type enumeration { + enum "send-ascii" { + value 1; + description + "Endpoint Send ascii string"; + } + enum "send-hex" { + value 2; + description + "Endpoint Send hex string"; + } + } + description + "Endpoint send"; + } + + typedef Endpoint-expected { + type enumeration { + enum "expected-ascii" { + value 3; + description + "Endpoint Expected ascii string"; + } + enum "expected-hex" { + value 4; + description + "Endpoint Expected hex string"; + } + } + description + "Endpoint expected"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container cem { + presence "CLI submode compatibility."; + description + "Configure CEM interface"; + container clock { + description + "Configure clock for this CEM interface"; + leaf recover-clock-type { + type Cem-recover-clock; + description + "Configure the Recover clock type"; + } + } + container idle { + description + "Configure idle pattern"; + leaf pattern { + type xr:Hex-integer; + description + "Idle pattern from 0x0 to 0xff"; + } + } + container dummy { + description + "Configure bit-pattern for filling in lost or + corrupted frames"; + leaf pattern { + type xr:Hex-integer; + description + "User defined bit pattern from 0x0 to 0xff for + CEM frame"; + } + leaf mode { + type Cem-if-dummy-mode; + description + "Configure mode"; + } + } + container payload-dejitter { + description + "Configure payload size and dejitter buffer + length"; + leaf payload { + type uint32 { + range "0..1472"; + } + must "not(../dejitter)"; + description + "32-1472 is valid range, '0' value indicates to + choose best suitable payload value for the + given dejitter buffer length"; + } + leaf dejitter { + type uint32 { + range "0..500000"; + } + must "not(../payload)"; + description + "1-500000 is valid range, '0' value indicates + to choose best suitable dejitter buffer length + value for the given payload"; + } + } + container endpoint { + description + "Configure Endpoint parameters for this CEM + interface"; + container expected { + description + "Configure the Endpoint Expected value"; + leaf string-type { + type Endpoint-expected; + description + "Endpoint Expected string type (ascii or hex + format)"; + } + leaf ascii-string { + when "../string-type = 'expected-ascii'" { + description + "../StringType = EXPECTED_ASCII"; + } + type string { + length "1..64"; + } + description + "ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'expected-hex'" { + description + "../StringType = EXPECTED_HEX"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (The string length should be an + even number and Max length is 128)"; + } + } + container send { + description + "Configure the Endpoint Send value"; + leaf string-type { + type Endpoint-send; + description + "Endpoint Send string type (ascii or hex + format)"; + } + leaf ascii-string { + when "../string-type = 'send-ascii'" { + description + "../StringType = SEND_ASCII"; + } + type string { + length "1..64"; + } + description + "ASCII text (Max 64 characters)"; + } + leaf hex-string { + when "../string-type = 'send-hex'" { + description + "../StringType = SEND_HEX"; + } + type string { + length "1..128"; + } + description + "Hex nibbles (The string length should be an + even number and Max length is 128)"; + } + } + } + leaf class { + type string { + length "1..80"; + } + description + "Attach a CEM class to this interface"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub1.yang new file mode 100644 index 000000000..802a54513 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub1.yang @@ -0,0 +1,745 @@ +submodule Cisco-IOS-XR-interface-cem-oper-sub1 { + belongs-to Cisco-IOS-XR-interface-cem-oper { + prefix Cisco-IOS-XR-interface-cem-oper; + } + + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-interface-cem-oper-sub2 { + revision-date 2021-08-18; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR interface-cem package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-18 { + description + "Configured, operational, in-use fields for dejitter and configured, operational fields for payload are added."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cem-ac-client-types { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "oc3" { + value 1; + description + "OC3"; + } + enum "oc12" { + value 2; + description + "OC12"; + } + enum "oc48" { + value 3; + description + "OC48"; + } + enum "oc192" { + value 4; + description + "OC192"; + } + enum "oc768" { + value 5; + description + "OC768"; + } + enum "stm1" { + value 6; + description + "STM1"; + } + enum "stm4" { + value 7; + description + "STM4"; + } + enum "stm16" { + value 8; + description + "STM16"; + } + enum "stm64" { + value 9; + description + "STM64"; + } + enum "stm256" { + value 10; + description + "STM256"; + } + enum "hundred-gig-ethernet" { + value 11; + description + "HundredGigEthernet"; + } + enum "ten-gig-ethernet" { + value 12; + description + "TenGigEthernet"; + } + enum "fourty-gig-ethernet" { + value 13; + description + "FourtyGigEthernet"; + } + enum "one-gig-ethernet" { + value 14; + description + "OneGigEthernet"; + } + enum "twenty-five-gig-ethernet" { + value 15; + description + "TwentyFiveGigEthernet"; + } + enum "otu2" { + value 16; + description + "OTU2"; + } + enum "otu2e" { + value 17; + description + "OTU2E"; + } + enum "otu4" { + value 18; + description + "OTU4"; + } + enum "one-gig-fiber-channel" { + value 19; + description + "OneGigFiberChannel"; + } + enum "two-gig-fiber-channel" { + value 20; + description + "TwoGigFiberChannel"; + } + enum "four-gig-fiber-channel" { + value 21; + description + "FourGigFiberChannel"; + } + enum "eight-gig-fiber-channel" { + value 22; + description + "EightGigFiberChannel"; + } + enum "ten-gig-fiber-channel" { + value 23; + description + "TenGigFiberChannel"; + } + enum "sixteen-gig-fiber-channel" { + value 24; + description + "SixteenGigFiberChannel"; + } + enum "thirty-two-gig-fiber-channel" { + value 25; + description + "ThirtyTwoGigFiberChannel"; + } + } + description + "Cem ac client types"; + } + + typedef Cem-packet-replace-policy { + type enumeration { + enum "ais" { + value 1; + description + "AIS"; + } + enum "user-specific" { + value 2; + description + "User Specific"; + } + } + description + "CEM PACKET REPLACE POLICY"; + } + + typedef Cem-end-point-str { + type enumeration { + enum "endpoint-raw" { + value 0; + description + "EndpointRawString"; + } + enum "endpoint-ascii" { + value 1; + description + "EndpointAsciiString"; + } + enum "endpoint-hex" { + value 2; + description + "EndpointHexString"; + } + } + description + "CEM ENDPOINT STR TYPE"; + } + + typedef Cem-rtp { + type enumeration { + enum "disabled" { + value 0; + description + "Disabled"; + } + enum "enabled" { + value 1; + description + "Enabled"; + } + } + description + "CEM RTP"; + } + + typedef Cem-signalling { + type enumeration { + enum "no-cas" { + value 0; + description + "NoCAS"; + } + enum "cas" { + value 1; + description + "CAS"; + } + } + description + "CEM signalling"; + } + + typedef Cem-dummy-mode { + type enumeration { + enum "last-frame" { + value 0; + description + "LastFrame"; + } + enum "user-defined" { + value 1; + description + "UserDefined"; + } + } + description + "CEM interface dummy mode"; + } + + typedef Cem-interface-state { + type enumeration { + enum "down" { + value 0; + description + "Down"; + } + enum "up" { + value 1; + description + "Up"; + } + } + description + "CEM interface states"; + } + + grouping CEM-PAYLOAD-DEJITTER-INFO { + description + "CEM PAYLOAD DEJITTER INFO"; + leaf payload { + type uint32; + description + "Payload"; + } + list dejitter-array { + description + "Dejitter array"; + leaf entry { + type uint32; + description + "Dejitter array"; + } + } + } + + grouping CEM-PAYLOAD-DEJITTER-MAPPING-INFO { + description + "CEM payload dejitter mapping information"; + leaf client-type { + type Cem-ac-client-types; + description + "Client type"; + } + leaf client-rate { + type uint32; + units "kbit/s"; + description + "Client Rate in kbps"; + } + leaf default-payload-size { + type uint32; + description + "Default payload Size"; + } + leaf default-dejitt-buffer-length { + type uint32; + description + "Default Dejitter buffer length"; + } + list payload-dejitter-info { + description + "Payload Dejitter Info"; + uses CEM-PAYLOAD-DEJITTER-INFO; + } + } + + grouping CEM-AC-CLIENT-BAG-INFO { + description + "CEM AC CLIENT BAG INFO"; + leaf attachment-circuit-client-type { + type Cem-ac-client-types; + description + " Attachment Circuit Client type"; + } + leaf attachment-circuit-client-rate { + type uint32; + description + " Attachment Circuit Client rate"; + } + } + + grouping CEM-PLOAD-DJB-SIZE-BAG-INFO { + description + "CEM PLOAD DJB SIZE BAG INFO"; + leaf maximum-payload-for-dejitter-buffer-size-in-block-range { + type uint32; + description + "Max Payload for dejitter buffer size in block + range"; + } + leaf minimum-dejitter-buffer-size-in-blocks { + type uint32; + description + "Mininum Dejitter buffer size in blocks"; + } + leaf maximum-dejitter-buffer-size-in-blocks { + type uint32; + description + "Maximum Dejitter buffer size in blocks"; + } + leaf multiple-factor { + type uint32; + description + "Multiple factor"; + } + } + + grouping CEM-CLIENT-CAPABILITIES-INFO { + description + "CEM client capabilities info"; + container attachment-circuit-client-info { + description + "Attachment Circuit Client info"; + uses CEM-AC-CLIENT-BAG-INFO; + } + leaf internal-parent-interface-name { + type string; + description + "Internal parent Interface name"; + } + leaf internal-parent-interface-handle { + type uint32; + description + "Internal parent interface handle"; + } + leaf rtp-default-enabled { + type boolean; + description + "RTP default enabled"; + } + leaf clock-type { + type Cem-recovered-clock; + description + "Clock type"; + } + leaf default-payload-size { + type uint32; + description + "Default payload Size"; + } + leaf minimum-payload-size { + type uint32; + description + "Minimum payload size"; + } + leaf maximum-payload-size { + type uint32; + description + "Maximum payload size"; + } + leaf payload-incremental-value { + type uint32; + description + "Payload incremental value"; + } + leaf default-dejitter-buffer-length { + type uint32; + description + "Default Dejitter buffer length"; + } + leaf minimum-dejitter-buffer-length { + type uint32; + description + "Minimum Dejitter buffer length"; + } + leaf maximum-dejitter-buffer-length { + type uint32; + description + "Maximum Dejitter buffer length"; + } + leaf default-idle-pattern { + type uint32; + description + "Default idle pattern"; + } + leaf default-dummy-pattern { + type uint32; + description + "Default dummy pattern"; + } + leaf default-dummy-mode { + type uint32; + description + "Default dummy mode"; + } + leaf is-payload-dejitter-buffer-size-info-valid { + type boolean; + description + "Is Payload Dejitter Buffer size info valid"; + } + list payload-dejitter-buffer-size-info { + description + "Payload Dejitter Buffer size info"; + uses CEM-PLOAD-DJB-SIZE-BAG-INFO; + } + } + + grouping CEM-ALARM-INFO { + description + "CEM Alarm info"; + leaf is-detected { + type boolean; + description + "Is defect detected?"; + } + leaf count { + type uint64; + description + "Alarm count"; + } + } + + grouping CEM-ENDPT-INFO { + description + "CEM endpoint info"; + leaf endpoint-string-type { + type Cem-end-point-str; + description + "Endpoint String type"; + } + leaf endpoint-string { + type string { + length "0..129"; + } + description + "Endpoint String"; + } + } + + grouping CEM-INFO { + description + "CEM controller information"; + container endpoint-send-info { + description + "Endpoint Send Info"; + uses CEM-ENDPT-INFO; + } + container endpoint-expected-info { + description + "Endpoint Expected Info"; + uses CEM-ENDPT-INFO; + } + container endpoint-received-info { + description + "Endpoint Received Info"; + uses CEM-ENDPT-INFO; + } + container local-attachment-circuit-fault { + description + "Local Attachment Circuit Fault"; + uses CEM-ALARM-INFO; + } + container remote-attachment-circuit-fault { + description + "Remote Attachment Circuit Fault, L-bit Received + in the control word"; + uses CEM-ALARM-INFO; + } + container local-lops { + description + "Local Loss of Packets State(LOPS)"; + uses CEM-ALARM-INFO; + } + container remote-lops { + description + "Remote Loss Of Packets State(LOPS), R-bit + received in the control word"; + uses CEM-ALARM-INFO; + } + leaf admin-state { + type Cem-interface-state; + description + "Administrative state"; + } + leaf oper-state { + type Cem-interface-state; + description + "Operational state"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth in kbps"; + } + leaf configured-dejitter-buffer-length { + type uint32; + units "microsecond"; + description + "Configured dejitter buffer length in + microseconds"; + } + leaf operational-dejitter-buffer-length { + type uint32; + units "microsecond"; + description + "Operational dejitter buffer length in + microseconds"; + } + leaf dejitter-buffer-length-in-use { + type uint32; + description + "Dejitter buffer length In Use"; + } + leaf configured-payload-size { + type uint16; + units "byte"; + description + "Configured payload size in bytes"; + } + leaf operational-payload-size { + type uint16; + units "byte"; + description + "Operational payload size in bytes"; + } + leaf minimum-packet-delay-variation { + type uint32; + description + "Minimum packet delay variation"; + } + leaf maximum-packet-delay-variation { + type uint32; + description + "Maximum packet delay variation"; + } + leaf average-packet-delay-variation { + type uint32; + description + "Average packet delay variation"; + } + leaf dummy-mode { + type Cem-dummy-mode; + description + "Dummy mode"; + } + leaf dummy-pattern { + type yang:hex-string; + description + "Dummy pattern"; + } + leaf idle-pattern { + type yang:hex-string; + description + "Idle pattern"; + } + leaf signalling { + type Cem-signalling; + description + "Signalling"; + } + leaf rtp-enabled { + type Cem-rtp; + description + "RTP enabled or not"; + } + leaf clock-type { + type Cem-recovered-clock; + description + "Clock Type"; + } + leaf pass-through-node { + type boolean; + description + "Pass through node"; + } + leaf packet-replace-policy { + type Cem-packet-replace-policy; + description + "Packet Replace policy"; + } + leaf number-of-consecutive-missing-packets-to-enter-lops-state { + type uint64; + description + "Number of Consecutive Missing Packets to enter + LOPS state"; + } + leaf number-of-consecutive-missing-packets-to-exit-lops-state { + type uint64; + description + "Number of Consecutive Missing Packets to exit + LOPS state"; + } + leaf ingress-packets { + type uint64; + description + "Ingress packets"; + } + leaf ingress-drop-packets { + type uint64; + description + "Ingress dropped packets"; + } + leaf egress-packets { + type uint64; + description + "Egress packets"; + } + leaf egress-drop-packets { + type uint64; + description + "Egress dropped packets"; + } + leaf missing-packets { + type uint64; + description + "Missing packets"; + } + leaf reordered-packets { + type uint64; + description + "Reordered packets"; + } + leaf frames-fragmented { + type uint64; + description + "Frames Fragmented"; + } + leaf total-error-count { + type uint64; + description + "Total Error count"; + } + leaf malformed-packets { + type uint64; + description + "Malformed packets"; + } + leaf misordered-drops { + type uint64; + description + "Misorder drops"; + } + leaf jitter-buffer-under-runs { + type uint64; + description + "Jitter buffer underruns"; + } + leaf jitter-buffer-over-runs { + type uint64; + description + "Jitter buffer Overruns"; + } + leaf errored-seconds { + type uint64; + units "second"; + description + "Number of errored seconds"; + } + leaf severely-errored-seconds { + type uint64; + units "second"; + description + "Number of severely errored secs"; + } + leaf unavailable-seconds { + type uint64; + units "second"; + description + "Number of Unavailable seconds"; + } + leaf failure-counts { + type uint64; + description + "Failure counts"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub2.yang new file mode 100644 index 000000000..94fdb5f3e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper-sub2.yang @@ -0,0 +1,127 @@ +submodule Cisco-IOS-XR-interface-cem-oper-sub2 { + belongs-to Cisco-IOS-XR-interface-cem-oper { + prefix Cisco-IOS-XR-interface-cem-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR interface-cem package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-18 { + description + "Configured, operational, in-use fields for dejitter and configured, operational fields for payload are added."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cem-recovered-clock-status { + type enumeration { + enum "null" { + value 0; + description + "Null"; + } + enum "free-run" { + value 1; + description + "Free run"; + } + enum "holdover" { + value 2; + description + "Holdover"; + } + enum "acquiring" { + value 3; + description + "Acquiring"; + } + enum "acquired" { + value 4; + description + "Acquired"; + } + enum "disabled" { + value 5; + description + "Disabled"; + } + } + description + "CEM recovered clock status"; + } + + typedef Cem-recovered-clock { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "adaptive" { + value 1; + description + "Adaptive"; + } + enum "differential" { + value 2; + description + "Differential"; + } + } + description + "CEM recovered clock types"; + } + + grouping CEM-RECOVERED-CLOCK-DATA { + description + "CEM recovered clock data"; + leaf interface-name { + type string; + description + "Interface name"; + } + leaf clock-type { + type Cem-recovered-clock; + description + "Clock Type"; + } + leaf clock-status { + type Cem-recovered-clock-status; + description + "Clock status"; + } + leaf frequency-offset { + type int32; + description + "Frequency offset"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper.yang new file mode 100644 index 000000000..2bae5cbe3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-interface-cem-oper.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-interface-cem-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-interface-cem-oper"; + prefix interface-cem-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-interface-cem-oper-sub2 { + revision-date 2021-08-18; + } + include Cisco-IOS-XR-interface-cem-oper-sub1 { + revision-date 2021-08-18; + } + + 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 interface-cem package operational data. + + This module contains definitions + for the following management objects: + cem: CEM operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-18 { + description + "Configured, operational, in-use fields for dejitter and configured, operational fields for payload are added."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container cem { + config false; + description + "CEM operational data"; + container cem-controllers { + description + "List of CEM interfaces"; + list cem-controller { + key "interface-name"; + description + "CEM interface name"; + container cem-recovered-clock-info { + description + "CEM Recovered clock information"; + uses CEM-RECOVERED-CLOCK-DATA; + } + container cem-info { + description + "CEM controller information"; + uses CEM-INFO; + } + container cem-client-capabilites-info { + description + "CEM client capabilities information"; + uses CEM-CLIENT-CAPABILITIES-INFO; + } + container cem-payload-dejitter-mapping-info { + description + "CEM Payload dejitter Mapping information"; + uses CEM-PAYLOAD-DEJITTER-MAPPING-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the CEM Interface"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-cfg.yang new file mode 100644 index 000000000..dd4db6d7c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-cfg.yang @@ -0,0 +1,62 @@ +module Cisco-IOS-XR-invmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-invmgr-cfg"; + prefix invmgr-cfg; + + 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 invmgr package configuration. + + This module contains definitions + for the following management objects: + inventory-configurations: Configuration for inventory entities + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container inventory-configurations { + description + "Configuration for inventory entities"; + list entity { + key "name"; + description + "Entity name"; + leaf name { + type string; + description + "Entity name"; + } + leaf name-xr { + type string; + mandatory true; + description + "Entity name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper-sub1.yang new file mode 100644 index 000000000..e391206a3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper-sub1.yang @@ -0,0 +1,53 @@ +submodule Cisco-IOS-XR-invmgr-diag-oper-sub1 { + belongs-to Cisco-IOS-XR-invmgr-diag-oper { + prefix Cisco-IOS-XR-invmgr-diag-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr-diag package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping INVMGR-DIAG-DETAIL-FORMAT { + description + "invmgr diag detail format"; + leaf name { + type string; + description + "Name of the entity"; + } + leaf fmt-detail-output { + type string; + description + "Formatted detail output"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper.yang new file mode 100644 index 000000000..4dbedb113 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-diag-oper.yang @@ -0,0 +1,147 @@ +module Cisco-IOS-XR-invmgr-diag-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-invmgr-diag-oper"; + prefix invmgr-diag-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-invmgr-diag-oper-sub1 { + revision-date 2019-04-05; + } + + 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 invmgr-diag package operational data. + + This module contains definitions + for the following management objects: + diag: Diag information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping INSTANCE-TABLE { + description + "Common node of slot, fan-tray, power-shelf"; + container instances { + description + "Table of instances"; + list instance { + key "name"; + description + "instance number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Instance name"; + } + uses DETAIL; + } + } + } + + grouping DETAIL { + description + "Common node of instance, chassis"; + container detail { + description + "Detail information"; + uses INVMGR-DIAG-DETAIL-FORMAT; + } + } + + container diag { + config false; + description + "Diag information"; + container racks { + description + "Table of racks"; + list rack { + key "rack-name"; + description + "Rack name"; + container power-shelfs { + description + "Table for rack power shelf "; + list power-shelf { + key "power-shelf-name"; + description + "Power shelf name"; + leaf power-shelf-name { + type xr:Cisco-ios-xr-string; + description + "Power Shelf name"; + } + uses INSTANCE-TABLE; + } + } + container fan-trays { + description + "Table for rack fan trays"; + list fan-tray { + key "fan-tray-name"; + description + "Fan tray name"; + leaf fan-tray-name { + type xr:Cisco-ios-xr-string; + description + "Fan tray name"; + } + uses INSTANCE-TABLE; + } + } + container slots { + description + "Table of slots"; + list slot { + key "slot-name"; + description + "Slot name"; + leaf slot-name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses INSTANCE-TABLE; + } + } + container chassis { + description + "Chassis information"; + uses DETAIL; + } + leaf rack-name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub1.yang new file mode 100644 index 000000000..70a8321b9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub1.yang @@ -0,0 +1,347 @@ +submodule Cisco-IOS-XR-invmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-invmgr-oper { + prefix Cisco-IOS-XR-invmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "4.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Threshold-relation { + type enumeration { + enum "less-than" { + value 1; + description + "Sensor value is less than threshold"; + } + enum "less-or-equal" { + value 2; + description + "Sensor value is lesser than or equal to + threshold"; + } + enum "greater-than" { + value 3; + description + "Sensor value is greater than threshold"; + } + enum "greater-or-equal" { + value 4; + description + "Sensor value is greater than or equal to + threshold"; + } + enum "equal" { + value 5; + description + "Sensor value is equal to threshold"; + } + enum "not-equal" { + value 6; + description + "Sensor value is not equal to threshold"; + } + } + description + "Threshold relation"; + } + + typedef Threshold-severity { + type enumeration { + enum "other" { + value 1; + description + "Other"; + } + enum "minor" { + value 10; + description + "Minor"; + } + enum "major" { + value 20; + description + "Major"; + } + enum "critical" { + value 30; + description + "Critical"; + } + } + description + "Threshold severity"; + } + + typedef Sensor-status { + type enumeration { + enum "ok" { + value 1; + description + "State ok"; + } + enum "unavailable" { + value 2; + description + "State Unavailable"; + } + enum "non-operational" { + value 3; + description + "State no operational"; + } + } + description + "Sensor status"; + } + + typedef Sensor-data { + type enumeration { + enum "unknown" { + value 2; + description + "Datatype unknown"; + } + enum "ac-volts" { + value 3; + description + "AC volts"; + } + enum "dc-volts" { + value 4; + description + "DC volts"; + } + enum "amperes" { + value 5; + description + "Amperes"; + } + enum "watts" { + value 6; + description + "Power in watts"; + } + enum "hertz" { + value 7; + description + "Frequency in hertz"; + } + enum "celsius" { + value 8; + description + "Celsius"; + } + enum "rpm" { + value 10; + description + "Rotations per minute"; + } + enum "dbm" { + value 14; + description + "Power in dBm"; + } + enum "db" { + value 15; + description + "Power in dB"; + } + } + description + "Sensor measurement data types"; + } + + typedef Unit { + type enumeration { + enum "celsius" { + description + "Degree in celsius"; + } + enum "milli-volts" { + description + "Milli volts"; + } + enum "milli-amperes" { + description + "Milli amperes"; + } + enum "rpm" { + description + "Rotations per minute"; + } + enum "watts" { + description + "Watts"; + } + enum "dbm" { + description + "dBm"; + } + enum "db" { + description + "dB"; + } + } + description + "Unit information"; + } + + grouping ENVMON-THRESHOLD-TYPE { + description + "Threshold information of a specific type"; + leaf threshold-severity { + type Threshold-severity; + description + "Indicates minor, major, critical severities"; + } + leaf threshold-relation { + type Threshold-relation; + description + "Indicates relation between sensor value and + threshold"; + } + leaf threshold-value { + type int32; + description + "Value of the configured threshold"; + } + leaf threshold-name { + type string { + length "0..50"; + } + description + "Indicates the Threshold name"; + } + } + + grouping ENVMON-THRESHOLD-INFO-XML { + description + "Threshold information"; + list threshold-array { + description + "Array of threshold"; + uses ENVMON-THRESHOLD-TYPE; + } + } + + grouping ENVMON-SENSOR-INFO-XML { + description + "Environment monitoring sensor information"; + container threshold { + description + "Threshold information"; + uses ENVMON-THRESHOLD-INFO-XML; + } + leaf description { + type string { + length "0..50"; + } + description + "Device Name"; + } + leaf units { + type Unit; + description + "Units of variable being read"; + } + leaf value { + type string { + length "0..50"; + } + description + "Current reading of sensor Displays in decimal(ex + 1.234) for powersupply sensor type"; + } + leaf data-type { + type Sensor-data; + description + "Sensor data type"; + } + leaf status { + type Sensor-status; + description + "Sensor operation state"; + } + leaf update-rate { + type uint32; + description + "Sensor value update rate; set to 0 if sensor + value is updated and evaluated immediately"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub2.yang new file mode 100644 index 000000000..5b56793a1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub2.yang @@ -0,0 +1,541 @@ +submodule Cisco-IOS-XR-invmgr-oper-sub2 { + belongs-to Cisco-IOS-XR-invmgr-oper { + prefix Cisco-IOS-XR-invmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "4.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Card-reset-reason { + type enumeration { + enum "reset-unknown" { + value 1; + description + "reset unknown"; + } + enum "power-up" { + value 2; + description + "power up"; + } + enum "parity-error" { + value 3; + description + "parity error"; + } + enum "clear-config-reset" { + value 4; + description + "clear config reset"; + } + enum "manual-reset" { + value 5; + description + "manual reset"; + } + enum "watch-dog-timeout-reset" { + value 6; + description + "watch dog timeout reset"; + } + enum "resource-overflow-reset" { + value 7; + description + "resource overflow reset"; + } + enum "missing-task-reset" { + value 8; + description + "missing task reset"; + } + enum "low-voltage-reset" { + value 9; + description + "low voltage reset"; + } + enum "controller-reset" { + value 10; + description + "controller reset"; + } + enum "system-reset" { + value 11; + description + "system reset"; + } + enum "switchover-reset" { + value 12; + description + "switchover reset"; + } + enum "upgrade-reset" { + value 13; + description + "upgrade reset"; + } + enum "downgrade-reset" { + value 14; + description + "downgrade reset"; + } + enum "cache-error-reset" { + value 15; + description + "cache error reset"; + } + enum "device-driver-reset" { + value 16; + description + "device driver reset"; + } + enum "software-exception-reset" { + value 17; + description + "software exception reset"; + } + enum "restore-config-reset" { + value 18; + description + "restore config reset"; + } + enum "abort-rev-reset" { + value 19; + description + "abort rev reset"; + } + enum "burn-boot-reset" { + value 20; + description + "burn boot reset"; + } + enum "standby-cd-healthier-reset" { + value 21; + description + "standby cd healthier reset"; + } + enum "non-native-config-clear-reset" { + value 22; + description + "non native config clear reset"; + } + enum "memory-protection-error-reset" { + value 23; + description + "memory protection error reset"; + } + enum "card-reset-reason-max" { + value 24; + description + "card reset reason max"; + } + } + description + "Card reset reason"; + } + + grouping INV-PWG-INFO { + description + "Power supply group bag"; + leaf power-group-redundancy-mode { + type int32; + description + "redundancy mode"; + } + leaf power-group-power-units { + type string; + description + "power units"; + } + leaf power-group-available-current { + type int32; + description + "available current"; + } + leaf power-group-drawn-current { + type int32; + description + "drawn current"; + } + } + + grouping INV-PHY-ENTITY-ASSET-INFO { + description + "The physical entity detaled asset attribute bag"; + leaf part-number { + type string { + length "0..255"; + } + description + "Describes the Entity Part Number"; + } + leaf manufacturer-assembly-number { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacture Assembly number + string"; + } + leaf manufacturer-assembly-revision { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacture assembly + revision string"; + } + leaf manufacturer-firmware-identifier { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacturer Firmware + Identifier string"; + } + leaf manufacturer-software-identifier { + type string { + length "0..255"; + } + description + "Describes the Entity Manufacturer Software + Identifier string"; + } + leaf manufacturer-common-language-equipment-identifier { + type string { + length "0..255"; + } + description + "Describes the Entity Common LanguageEquipment + Identifier number"; + } + leaf original-equipment-manufacturer-string { + type string { + length "0..255"; + } + description + "Describes the Entity String containingOEM + information if applicable"; + } + } + + grouping INV-TIMESPEC { + description + "Inventory FRU Info Time Spec"; + leaf time-in-seconds { + type int32; + units "second"; + description + "Time Value in Seconds"; + } + leaf time-in-nano-seconds { + type int32; + units "nanosecond"; + description + "Time Value in Nano-seconds"; + } + } + + grouping INV-CARD-FRU-INFO { + description + "card (FRU) operation state bag"; + container last-operational-state-change { + description + "last card oper change state"; + uses INV-TIMESPEC; + } + container card-up-time { + description + "time for which the card has remained up"; + uses INV-TIMESPEC; + } + leaf card-administrative-state { + type int32; + description + "Indicates the card admin state: shutdown or not"; + } + leaf power-administrative-state { + type int32; + description + "Indicates the power admin state: up or down"; + } + leaf card-operational-state { + type int32; + description + "Indicates the card operation state"; + } + leaf card-monitor-state { + type int32; + description + "Indicates the card is monitored by a manager or + left unmonitored"; + } + leaf card-reset-reason { + type Card-reset-reason; + description + "Indicates the card reset reason enum"; + } + leaf power-current-measurement { + type int32; + description + "power current: not implemented"; + } + leaf power-operational-state { + type int32; + description + "Power operation state value"; + } + } + + grouping INV-PHY-ENTITY-BASIC-INFO { + description + "Bag contains all the basic inventory information + for each entity"; + leaf description { + type string { + length "0..255"; + } + description + "describes in user-readable termswhat the entity + in question does"; + } + leaf vendor-type { + type string { + length "0..255"; + } + description + "maps to the vendor OID string"; + } + leaf name { + type string { + length "0..255"; + } + description + "Describes the Entity name string"; + } + leaf hardware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity hw revision string"; + } + leaf firmware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity firmware revision string"; + } + leaf software-revision { + type string { + length "0..255"; + } + description + "Describes the Entity software revision string"; + } + leaf chip-hardware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity chip module hw revision + string"; + } + leaf serial-number { + type string { + length "0..255"; + } + description + "Describes the Entity serial number string"; + } + leaf manufacturer-name { + type string { + length "0..255"; + } + description + "Describes the Entity manufacturer's name string"; + } + leaf model-name { + type string { + length "0..255"; + } + description + "Describes the Entity model name"; + } + leaf asset-id-str { + type string { + length "0..255"; + } + description + "Describes the Entity asset Identification string"; + } + leaf asset-identification { + type int32; + description + "Describes the Entity asset Identification number"; + } + leaf is-field-replaceable-unit { + type boolean; + description + "1 if Field Replaceable Unit 0, if not"; + } + leaf manufacturer-asset-tags { + type int32; + description + "Describes the Entity Manufacture Asset Tags + number"; + } + leaf composite-class-code { + type int32; + description + "Major&minor class of the entity"; + } + leaf memory-size { + type int32; + description + "Size of memory associated withthe entity where + applicable"; + } + leaf environmental-monitor-path { + type string { + length "0..255"; + } + description + "sysdb name of sensor in the envmon EDM"; + } + leaf alias { + type string { + length "0..255"; + } + description + "useful for storing an entity alias "; + } + leaf group-flag { + type boolean; + description + "indicates if this entity is groupor not"; + } + leaf new-deviation-number { + type int32; + description + "integer value for New Deviation Number 0x88"; + } + leaf physical-layer-interface-module-type { + type int32; + description + "integer value for plim type ifapplicable to this + entity"; + } + leaf unrecognized-fru { + type boolean; + description + "1 if UnrecognizedFRU and 0 for recognizedFRU"; + } + leaf redundancystate { + type int32; + description + "integer value for Redundancy State ifapplicable + to this entity"; + } + leaf ceport { + type boolean; + description + "1 if ce port found, 0 if not"; + } + leaf xr-scoped { + type boolean; + description + "1 if xr scoped, 0 if not"; + } + leaf unique-id { + type int32; + description + "Unique id for an entity"; + } + leaf allocated-power { + type int32; + description + "Allocated power for an entity"; + } + leaf power-capacity { + type int32; + description + "Power Capacity of a Power Module"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub3.yang new file mode 100644 index 000000000..b7d5a618c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub3.yang @@ -0,0 +1,705 @@ +submodule Cisco-IOS-XR-invmgr-oper-sub3 { + belongs-to Cisco-IOS-XR-invmgr-oper { + prefix Cisco-IOS-XR-invmgr-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "4.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping RMA-DETAIL { + description + "EEPROM RMA data content"; + leaf test-history { + type string { + length "0..255"; + } + description + "RMA detail Test history innformation"; + } + leaf rma-number { + type string { + length "0..255"; + } + description + "RMA tracking number format is N-N-N"; + } + leaf rma-history { + type string { + length "0..255"; + } + description + "RMA history infromation"; + } + } + + grouping DIAG-EEPROM { + description + "Diag EEPROM data content"; + container rma { + description + "Description of Entity RMA Data"; + uses RMA-DETAIL; + } + leaf description { + type string { + length "0..255"; + } + description + "A textual description of physical entity"; + } + leaf idprom-format-rev { + type string { + length "0..255"; + } + description + "Description of Entity IDPROM Format Revision"; + } + leaf controller-family { + type string { + length "0..255"; + } + description + "Description of Entity Controller family"; + } + leaf controller-type { + type string { + length "0..255"; + } + description + "Description of Entity Controller type"; + } + leaf vid { + type string { + length "0..255"; + } + description + "Description of Entity Version ID"; + } + leaf hwid { + type string { + length "0..255"; + } + description + "Description of Entity Hardware Revision"; + } + leaf pid { + type string { + length "0..255"; + } + description + "Description of Entity Product ID"; + } + leaf udi-description { + type string { + length "0..255"; + } + description + "Description of Entity UDI"; + } + leaf udi-name { + type string { + length "0..255"; + } + description + "Description of Entity UDI name"; + } + leaf clei { + type string { + length "0..255"; + } + description + "Common Language Equipment Identifier (CLEI) code"; + } + leaf eci { + type string { + length "0..255"; + } + description + "Equipment Catalog Item (ECI) number"; + } + leaf top-assem-part-num { + type string { + length "0..255"; + } + description + "Description of Top assembly part number"; + } + leaf top-assem-vid { + type string { + length "0..255"; + } + description + "Description of Top assembly revision number"; + } + leaf pca-num { + type string { + length "0..255"; + } + description + "Description of Entity PCA number"; + } + leaf pcavid { + type string { + length "0..255"; + } + description + "Description of Entity PCA revision ID"; + } + leaf chassis-sid { + type string { + length "0..255"; + } + description + "Description of Entity Chassis serial number"; + } + leaf dev-num1 { + type string { + length "0..255"; + } + description + "Deviation Number # 1"; + } + leaf dev-num2 { + type string { + length "0..255"; + } + description + "Deviation Number # 2"; + } + leaf dev-num3 { + type string { + length "0..255"; + } + description + "Deviation Number # 3"; + } + leaf dev-num4 { + type string { + length "0..255"; + } + description + "Deviation Number # 4"; + } + leaf dev-num5 { + type string { + length "0..255"; + } + description + "Deviation Number # 5"; + } + leaf dev-num6 { + type string { + length "0..255"; + } + description + "Deviation Number # 6"; + } + leaf dev-num7 { + type string { + length "0..255"; + } + description + "Deviation Number # 7"; + } + leaf manu-test-data { + type string { + length "0..255"; + } + description + "Manufacturing Test Data"; + } + leaf asset-id { + type string { + length "0..255"; + } + description + "Description of Entity Asset ID"; + } + leaf asset-alias { + type string { + length "0..255"; + } + description + "Description of Entity Asset Alias"; + } + leaf base-mac-address1 { + type string { + length "0..255"; + } + description + "Base Mac Address #1"; + } + leaf mac-add-blk-size1 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #1"; + } + leaf base-mac-address2 { + type string { + length "0..255"; + } + description + "Base Mac Address #2"; + } + leaf mac-add-blk-size2 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #2"; + } + leaf base-mac-address3 { + type string { + length "0..255"; + } + description + "Base Mac Address #3"; + } + leaf mac-add-blk-size3 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #3"; + } + leaf base-mac-address4 { + type string { + length "0..255"; + } + description + "Base Mac Address #4"; + } + leaf mac-add-blk-size4 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #4"; + } + leaf pcb-serial-num { + type string { + length "0..255"; + } + description + "Description of Entity PCB Serial Number"; + } + leaf power-supply-type { + type string { + length "0..255"; + } + description + "Description of Entity Power Supply Type"; + } + leaf power-consumption { + type string { + length "0..255"; + } + description + "Description of Entity Power Consumption"; + } + leaf block-signature { + type string { + length "0..255"; + } + description + "Description of Entity Block Signature"; + } + leaf block-version { + type string { + length "0..255"; + } + description + "Description of Entity Block Version"; + } + leaf block-length { + type string { + length "0..255"; + } + description + "Description of Entity Block Length"; + } + leaf block-checksum { + type string { + length "0..255"; + } + description + "Description of Entity Block Checksum"; + } + leaf eeprom-size { + type string { + length "0..255"; + } + description + "Description of Entity EEPROM Size"; + } + leaf block-count { + type string { + length "0..255"; + } + description + "Description of Entity Block Count"; + } + leaf fru-major-type { + type string { + length "0..255"; + } + description + "Description of Entity FRU Major Type"; + } + leaf fru-minor-type { + type string { + length "0..255"; + } + description + "Description of Entity FRU Minor Type"; + } + leaf oem-string { + type string { + length "0..255"; + } + description + "Description of Entity OEM String"; + } + leaf product-id { + type string { + length "0..255"; + } + description + "Description of Entity Product ID"; + } + leaf serial-number { + type string { + length "0..255"; + } + description + "Description of Entity Serial Number"; + } + leaf part-number { + type string { + length "0..255"; + } + description + "Description of Entity Part Number"; + } + leaf part-revision { + type string { + length "0..255"; + } + description + "Description of Entity Part Revision"; + } + leaf mfg-deviation { + type string { + length "0..255"; + } + description + "Description of Entity MFG Deviation"; + } + leaf hw-version { + type string { + length "0..255"; + } + description + "Description of Entity Hardware Version"; + } + leaf mfg-bits { + type string { + length "0..255"; + } + description + "Description of Entity MFG Bits"; + } + leaf engineer-use { + type string { + length "0..255"; + } + description + "Description of Entity Engineer Use"; + } + leaf snmpoid { + type string { + length "0..255"; + } + description + "Description of Entity SNMP OID"; + } + leaf rma-code { + type string { + length "0..255"; + } + description + "Description of Entity RMA Code"; + } + leaf eci-alpha-number { + type string { + length "0..255"; + } + description + "AlphaNumeric Equipment Catalog Item (ECI) number"; + } + } + + grouping INVMGR-EEPROM-OPAQUE-DATA { + description + "invmgr eeprom opaque data"; + container eeprom { + description + "EEPROM data not from hex data"; + uses DIAG-EEPROM; + } + leaf inv-card-type { + type uint8; + description + "Inventory card type"; + } + leaf opaque-data { + type yang:hex-string; + description + "EEPROM hex data"; + } + leaf opaque-data-size { + type uint32; + description + "size of the EEPROM hex data"; + } + leaf has-eeprom { + type uint32; + description + "use eeprom instead of opaque data"; + } + leaf has-eeprom-format { + type uint32; + description + "Format of the eeprom present"; + } + leaf eeprom-format { + type uint32; + description + "Format of the eeprom"; + } + leaf name { + type string { + length "0..255"; + } + description + "Name of the physical entity"; + } + leaf description { + type string { + length "0..255"; + } + description + "A textual description of physical entity"; + } + leaf form-factor { + type uint32; + description + "Optics form factor"; + } + leaf connector-type { + type uint32; + description + "Describes the Entity Connector type"; + } + leaf otn-application-code { + type uint32; + description + "Describes the Entity Otn Application Code"; + } + leaf sonet-application-code { + type uint32; + description + "Describes the Entity Sonet Application Code"; + } + leaf ethernet-compliance-code { + type uint32; + description + "Describes the Entity Ethernet Compliance Code"; + } + leaf date-string { + type string { + length "0..255"; + } + description + "Describes the Entity Date string in IDPROM"; + } + leaf vendor-revision { + type string { + length "0..255"; + } + description + "Vendor rev string in IDPROM"; + } + } + + grouping NODEID-INFO { + description + "Node ID Information"; + leaf node-id { + type uint32; + description + "Node Id Tuple"; + } + } + + grouping SUPPORTED-INTERFACES-INFO { + description + "Interface Capability"; + leaf name { + type string { + length "0..255"; + } + description + "Name of the interface capability"; + } + } + + grouping PLUGGABLE-TYPE { + description + "Supported Interfaces for pluggable"; + leaf name { + type string { + length "0..255"; + } + description + "Name of the pluggable"; + } + leaf description { + type string { + length "0..255"; + } + description + "Description for the pluggable"; + } + list supported-interface { + description + "List of supported interfaces for the pluggable"; + uses SUPPORTED-INTERFACES-INFO; + } + } + + grouping PLUGGABLE-INFO { + description + "Bag to store the available pluggable types for a + container"; + list pluggable-type { + description + "List of the Pluggables for the container"; + uses PLUGGABLE-TYPE; + } + } + + grouping VM-NODEID-INFO { + description + "VM Node ID Information"; + leaf vm-node-id { + type uint32; + description + "VM Node Id Tuple"; + } + } + + grouping SUBENTITY-INFO { + description + "Subentity Information"; + leaf subentity-name { + type string { + length "0..255"; + } + description + "Describe the Subentity Name"; + } + } + + grouping INV-PARENT-INFO { + description + "Bag to indicate the name of the parent entity"; + leaf name { + type string { + length "0..255"; + } + description + "Parent entity name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub4.yang new file mode 100644 index 000000000..636d0ce6c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper-sub4.yang @@ -0,0 +1,218 @@ +submodule Cisco-IOS-XR-invmgr-oper-sub4 { + belongs-to Cisco-IOS-XR-invmgr-oper { + prefix Cisco-IOS-XR-invmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR invmgr package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "4.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ENVMON-SENSOR-INFO { + description + "ENVMON sensor Info"; + leaf field-validity-bitmap { + type uint32; + description + "Sensor valid bitmap"; + } + leaf device-description { + type string { + length "0..50"; + } + description + "Device Name"; + } + leaf units { + type string { + length "0..50"; + } + description + "Units of variable being read"; + } + leaf device-id { + type uint32; + description + "Identifier for this device"; + } + leaf value { + type uint32; + description + "Current reading of sensor"; + } + leaf alarm-type { + type uint32; + description + "Indicates threshold violation"; + } + leaf data-type { + type uint32; + description + "Sensor data type enums"; + } + leaf scale { + type uint32; + description + "Sensor scale enums"; + } + leaf precision { + type uint32; + description + "Sensor precision range"; + } + leaf status { + type uint32; + description + "Sensor operation state enums"; + } + leaf age-time-stamp { + type uint32; + description + "Age of the sensor value; set to the current time + if directly access the value from sensor"; + } + leaf update-rate { + type uint32; + description + "Sensor value update rate;set to 0 if sensor + value is updated and evaluated immediately"; + } + leaf average { + type int32; + description + "Average sensor value over time interval"; + } + leaf minimum { + type int32; + description + "Minimum Sensor value over time interval"; + } + leaf maximum { + type int32; + description + "Maximum Sensor value over time interval"; + } + leaf interval { + type int32; + description + "Time Interval over which sensor value is + monitored"; + } + leaf min-time { + type uint64; + description + "Absolute time when maximum sensor value occured"; + } + leaf max-time { + type uint64; + description + "Absolute time when minimum sensor value occured"; + } + } + + grouping ENVMON-THRESHOLD-INFO { + description + "ENVMON threshold Info"; + leaf threshold-severity { + type uint32; + description + "Indicates minor, major, critical severities"; + } + leaf threshold-relation { + type uint32; + description + "Indicates relation between sensor value and + threshold"; + } + leaf threshold-value { + type int32; + description + "Value of the configured threshold"; + } + leaf threshold-evaluation { + type boolean; + description + "Indicates the result of the most recent + evaluation of the thresholD"; + } + leaf threshold-notification-enabled { + type boolean; + description + "Indicates whether or not a notification should + result, in case of threshold violation"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper.yang new file mode 100644 index 000000000..312b29d74 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invmgr-oper.yang @@ -0,0 +1,585 @@ +module Cisco-IOS-XR-invmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-invmgr-oper"; + prefix invmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-invmgr-oper-sub4 { + revision-date 2023-04-16; + } + include Cisco-IOS-XR-invmgr-oper-sub3 { + revision-date 2023-04-16; + } + include Cisco-IOS-XR-invmgr-oper-sub2 { + revision-date 2023-04-16; + } + include Cisco-IOS-XR-invmgr-oper-sub1 { + revision-date 2023-04-16; + } + + 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 invmgr package operational data. + + This module contains definitions + for the following management objects: + inventory: Inventory information + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-16 { + description + "Fixing backward compatibility error"; + semver:module-version "4.0.0"; + } + revision 2020-11-09 { + description + "Deprecated pluggable-info container + 2020-07-24 + IOS XR 7.0.14 revision. Modified eeprom_bag to match eXR + 2020-07-24 + Addition of revision to match LNT."; + semver:module-version "3.0.0"; + } + revision 2020-05-08 { + description + "Deprecated Inventory:Rack container. + 2020-03-30 + Changed threshold-value type to int32. + 2019-10-07 + Added pluggable-info bag. + 2019-10-04 + Removed slot-info, vm-done bags."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-21 { + description + "Resolved string constraints issue."; + } + revision 2018-08-03 { + description + "Added slot-info and parent-info bags."; + } + revision 2018-04-19 { + description + "Added additional bags"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping THRESH-BAG { + description + "Common node of minor-lo, minor-hi, major-lo, + major-hi, critical-lo, critical-hi"; + container thresh-bag { + status deprecated; + description + "Environment threshold info"; + uses ENVMON-THRESHOLD-INFO; + } + } + + grouping INVMGR-EXT1-OPER-THRESH-BAG { + description + "Common node of minor-lo, minor-hi, major-lo, + major-hi, critical-lo, critical-hiCommon node of + minor-lo, minor-hi, major-lo, major-hi, + critical-lo, critical-hi"; + container thresh-bag { + description + "Environment threshold info"; + uses ENVMON-THRESHOLD-INFO; + } + } + + grouping ATTRIBUTES { + description + "Common node of rack, slot, tsi1, tsi2, tsi3, tsi4 + , tsi5, tsi6, tsi7, tsi8, tsi9, tsi10, tsi11"; + container attributes { + description + "Shows the different attributes or status of each + entity or component in inventory"; + container env-sensor-info { + status deprecated; + description + "Environment sensor info"; + uses ENVMON-SENSOR-INFO; + } + container pwg-info { + status deprecated; + description + "Inventory EDM PWG info"; + uses INV-PWG-INFO; + } + container env-sensor-info-xml { + status deprecated; + description + "Environment sensor info XML"; + uses ENVMON-SENSOR-INFO-XML; + } + container inv-asset-bag { + status deprecated; + description + "Inventory Asset Bag"; + uses INV-PHY-ENTITY-ASSET-INFO; + } + container threshold { + status deprecated; + description + "Temperature alarm data for platform components"; + container major-lo { + status deprecated; + description + "Major Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-hi { + status deprecated; + description + "Critical High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container minor-hi { + status deprecated; + description + "Minor High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container major-hi { + status deprecated; + description + "Major High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-lo { + status deprecated; + description + "Critical Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container minor-lo { + status deprecated; + description + "Minor Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + } + container fru-info { + status deprecated; + description + "Inventory EDM FRU info"; + uses INV-CARD-FRU-INFO; + } + container inv-basic-bag { + status deprecated; + description + "Inventory Basic Bag"; + uses INV-PHY-ENTITY-BASIC-INFO; + } + container inv-eeprom-info { + status deprecated; + description + "Inventory EDM EEPROM Information Bag"; + uses INVMGR-EEPROM-OPAQUE-DATA; + } + } + } + + grouping SLOT { + description + "Common node of powershelf, fantray, entity"; + list slot { + key "name"; + status deprecated; + description + "Slot number"; + container tsi1s { + status deprecated; + description + "Entity Level 1"; + list tsi1 { + key "name"; + status deprecated; + description + "TSI1"; + container tsi2s { + status deprecated; + description + "Entity Level 2"; + list tsi2 { + key "name"; + status deprecated; + description + "TSI2"; + container tsi3s { + status deprecated; + description + "Entity Level 3"; + list tsi3 { + key "name"; + status deprecated; + description + "TSI3"; + container tsi4s { + status deprecated; + description + "Entity Level 4"; + list tsi4 { + key "name"; + status deprecated; + description + "TSI4"; + container tsi5s { + status deprecated; + description + "Entity Level 5"; + list tsi5 { + key "name"; + status deprecated; + description + "TSI5"; + container tsi6s { + status deprecated; + description + "Entity Level 6"; + list tsi6 { + key "name"; + status deprecated; + description + "TSI6"; + container tsi7s { + status deprecated; + description + "Entity Level 7"; + list tsi7 { + key "name"; + status deprecated; + description + "TSI7"; + container tsi8s { + status deprecated; + description + "Entity Level 8"; + list tsi8 { + key "name"; + status deprecated; + description + "TSI8"; + container tsi9s { + status deprecated; + description + "Entity Level 9"; + list tsi9 { + key "name"; + status deprecated; + description + "TSI9"; + container tsi10s { + status deprecated; + description + "Entity Level 10"; + list tsi10 { + key "name"; + status deprecated; + description + "TSI10"; + container tsi11s { + status deprecated; + description + "Entity Level 11"; + list tsi11 { + key "name"; + status deprecated; + description + "TSI11"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI11"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI10"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI9"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI8"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI7"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI6"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI5"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI4"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI3"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI2"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "TSI1"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses ATTRIBUTES; + } + } + + container inventory { + config false; + description + "Inventory information"; + container entities { + description + "Entities Table"; + list entity { + key "name"; + description + "Entity name"; + container parent-info { + description + "Inventory parent name info"; + uses INV-PARENT-INFO; + } + container subentities { + description + "SubEntities Table"; + list subentity { + key "name"; + description + "Subentity Bag"; + leaf name { + type string { + length "1..100"; + } + description + "Subentity name"; + } + uses SUBENTITY-INFO; + } + } + container attributes { + description + "Shows the different attributes or status of + each entity or component in inventory"; + container vm-node-id { + description + "VM Node ID Tuple"; + uses VM-NODEID-INFO; + } + container threshold { + description + "Temperature alarm data for platform + components"; + container minor-hi { + description + "Minor High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container major-hi { + description + "Major High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container minor-lo { + description + "Minor Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container major-lo { + description + "Major Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-hi { + description + "Critical High"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + container critical-lo { + description + "Critical Low"; + uses INVMGR-EXT1-OPER-THRESH-BAG; + } + } + container inv-basic-bag { + description + "Inventory Basic Bag"; + uses INV-PHY-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Inventory EDM FRU info"; + uses INV-CARD-FRU-INFO; + } + container pluggable-info { + status deprecated; + description + "Info of supported interaces for pluggable + type"; + uses PLUGGABLE-INFO; + } + container inv-asset-bag { + description + "Inventory Asset Bag"; + uses INV-PHY-ENTITY-ASSET-INFO; + } + container env-sensor-info { + description + "Environment sensor info"; + uses ENVMON-SENSOR-INFO; + } + container node-id { + description + "Node ID Tuple"; + uses NODEID-INFO; + } + container inv-eeprom-info { + description + "Inventory EDM EEPROM Information Bag"; + uses INVMGR-EEPROM-OPAQUE-DATA; + } + } + leaf name { + type string { + length "1..100"; + } + description + "Entity name"; + } + } + } + container racks { + status deprecated; + description + "RackTable"; + list rack { + key "name"; + status deprecated; + description + "Rack name"; + container entity { + status deprecated; + description + "Entity information"; + uses SLOT; + } + container powershelf { + status deprecated; + description + "Powershelf information"; + uses SLOT; + } + container fantray { + status deprecated; + description + "Fantray information"; + uses SLOT; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + uses ATTRIBUTES; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-invproxy-hwmodule-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-invproxy-hwmodule-cfg.yang new file mode 100644 index 000000000..1a7e80e0c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-invproxy-hwmodule-cfg.yang @@ -0,0 +1,108 @@ +module Cisco-IOS-XR-invproxy-hwmodule-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-invproxy-hwmodule-cfg"; + prefix invproxy-hwmodule-cfg; + + 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 invproxy-hwmodule package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-hw-module-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + hw-module-admin: Hardware module shut + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-19 { + description + "Add default value Unshut for Admin-power-state"; + semver:module-version "1.2.0"; + } + revision 2020-03-31 { + description + "Deprecated the model, replaced by Cisco-IOS-XR-hw-module-cfg + 2019-12-03 + IOS XR 7.0.12 revision."; + semver:module-version "1.1.0"; + } + revision 2019-10-15 { + description + "IOS XR 7.0.12 revision."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Admin-power-state { + type enumeration { + enum "unshut" { + value 0; + description + "Unshut"; + } + enum "shut" { + value 1; + description + "Shut"; + } + } + description + "Admin power state"; + } + + container hw-module-admin { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-hw-module-cfg.yang which will + provide the compatible functionalities. Hardware + module shut"; + container nodes { + description + "For list of nodes"; + list node { + key "location"; + description + "For a specific node"; + leaf admin-power-state { + type Admin-power-state; + default "unshut"; + description + "Shut/Unshut the specified hwmodule"; + } + leaf location { + type string; + description + "hwmodule location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub1.yang new file mode 100644 index 000000000..91d3997cb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub1.yang @@ -0,0 +1,1172 @@ +submodule Cisco-IOS-XR-iosxrwbd-qos-oper-sub1 { + belongs-to Cisco-IOS-XR-iosxrwbd-qos-oper { + prefix Cisco-IOS-XR-iosxrwbd-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR iosxrwbd-qos package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-27 { + description + "qos pfc show cmd. + 2022-03-09 + qos hwmodule show cmd. + 2022-01-23 + segregating common mark to all the mark actions."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dnx-qosea-show-inc-dir { + type enumeration { + enum "direction-input" { + description + "Direction Input"; + } + enum "direction-output" { + description + "Direction Output"; + } + } + description + "Direction"; + } + + typedef Dpa-qosea-show-wred { + type enumeration { + enum "wred-cos" { + description + "WRED based on COS"; + } + enum "wred-dscp" { + description + "WRED based on DSCP"; + } + enum "wred-precedence" { + description + "WRED based on Precedence"; + } + enum "wred-discard-class" { + description + "WRED based on discard class"; + } + enum "wred-mpls-exp" { + description + "WRED based on MPLS EXP"; + } + enum "red-with-user-min-max" { + description + "RED with user defined min and max"; + } + enum "red-with-default-min-max" { + description + "RED with default min and max"; + } + enum "wred-invalid" { + description + "Invalid"; + } + } + description + "WRED type"; + } + + typedef Dpa-qosea-show-action { + type enumeration { + enum "action-none" { + description + "None"; + } + enum "action-transmit" { + description + "Transmit"; + } + enum "action-drop" { + description + "Drop"; + } + enum "action-mark" { + description + "Mark"; + } + } + description + "Policer action type"; + } + + typedef Policy-param-unit { + type enumeration { + enum "policy-param-unit-invalid" { + description + "policy param unit invalid"; + } + enum "policy-param-unit-bytes" { + description + "policy param unit bytes"; + } + enum "policy-param-unit-kbytes" { + description + "policy param unit kbytes"; + } + enum "policy-param-unit-mbytes" { + description + "policy param unit mbytes"; + } + enum "policy-param-unit-gbytes" { + description + "policy param unit gbytes"; + } + enum "policy-param-unit-bitsps" { + description + "policy param unit bitsps"; + } + enum "policy-param-unit-kbitsps" { + description + "policy param unit kbitsps"; + } + enum "policy-param-unit-mbitsps" { + description + "policy param unit mbitsps"; + } + enum "policy-param-unit-gbitsps" { + description + "policy param unit gbitsps"; + } + enum "policy-param-unit-cells-ps" { + description + "policy param unit cells ps"; + } + enum "policy-param-unit-packets-ps" { + description + "policy param unit packets ps"; + } + enum "policy-param-unit-us" { + description + "policy param unit us"; + } + enum "policy-param-unit-ms" { + description + "policy param unit ms"; + } + enum "policy-param-unit-seconds" { + description + "policy param unit seconds"; + } + enum "policy-param-unit-packets" { + description + "policy param unit packets"; + } + enum "policy-param-unit-cells" { + description + "policy param unit cells"; + } + enum "policy-param-unit-percent" { + description + "policy param unit percent"; + } + enum "policy-param-unit-per-thousand" { + description + "policy param unit per thousand"; + } + enum "policy-param-unit-per-million" { + description + "policy param unit per million"; + } + enum "policy-param-unit-hz" { + description + "policy param unit hz"; + } + enum "policy-param-unit-khz" { + description + "policy param unit khz"; + } + enum "policy-param-unit-mhz" { + description + "policy param unit mhz"; + } + enum "policy-param-unit-ratio" { + description + "policy param unit ratio"; + } + enum "policy-param-unit-inverse-ratio" { + description + "policy param unit inverse ratio"; + } + enum "policy-param-unit-max" { + description + "policy param unit max"; + } + } + description + "Policy param unit"; + } + + typedef Dpa-qosea-show-hp-level { + type enumeration { + enum "high-priority-level1" { + description + "High priority queue level 1"; + } + enum "high-priority-level2" { + description + "High priority queue level 2"; + } + enum "high-priority-level3" { + description + "High priority queue level 3"; + } + enum "high-priority-level4" { + description + "High priority queue level 4"; + } + enum "high-priority-level5" { + description + "High priority queue level 5"; + } + enum "high-priority-level6" { + description + "High priority queue level 6"; + } + enum "high-priority-level7" { + description + "High priority queue level 7"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "Priority level"; + } + + typedef Dpa-qosea-show-queue { + type enumeration { + enum "low-priority-default-queue" { + description + "Low priority default queue"; + } + enum "low-priority-queue" { + description + "Low priority queue"; + } + enum "high-priority-queue" { + description + "High priority queue"; + } + enum "unknown-queue-type" { + description + "Queue priority unknown"; + } + } + description + "Priority Queue Type"; + } + + typedef Dpa-qosea-show-mark { + type enumeration { + enum "mark-none" { + description + "None"; + } + enum "dscp" { + description + "DSCP"; + } + enum "precedence" { + description + "Precedence"; + } + enum "mpls-topmost" { + description + "MPLS topmost"; + } + enum "mpls-imposition" { + description + "MPLS imposition"; + } + enum "qos-group" { + description + "Qos group"; + } + enum "discard-class" { + description + "Discard class"; + } + enum "cos" { + description + "COS"; + } + enum "inner-cos" { + description + "Inner COS"; + } + enum "un-supported9" { + description + "Unsupported type 9"; + } + enum "un-supported10" { + description + "Unsupported type 10"; + } + enum "un-supported11" { + description + "Unsupported type 11"; + } + enum "dscp-tunnel" { + description + "DSCP tunnel"; + } + enum "precedence-tunnel" { + description + "Precedence tunnel"; + } + enum "dei" { + description + "DEI"; + } + enum "dei-imposition" { + description + "DEI Imposition"; + } + enum "un-supported16" { + description + "Unsupported type 16"; + } + enum "un-supported17" { + description + "Unsupported type 17"; + } + enum "traffic-class" { + description + "Traffic class"; + } + } + description + "Mark type"; + } + + typedef Dpa-qosea-show-level { + type enumeration { + enum "level1" { + value 0; + description + "QoS level1 class"; + } + enum "level2" { + value 1; + description + "QoS level2 class"; + } + enum "level3" { + value 2; + description + "QoS level3 class"; + } + enum "level4" { + value 3; + description + "QoS level4 class"; + } + enum "level5" { + value 4; + description + "QoS level5 class"; + } + } + description + "Level type"; + } + + typedef Dpa-qosea-show-intf-status { + type enumeration { + enum "state-unknown" { + description + "State is unknown"; + } + enum "state-down" { + description + "State is Down"; + } + } + description + "Intf Status"; + } + + typedef Dpa-qosea-show-policy-status { + type enumeration { + enum "no-error" { + description + "No errors"; + } + enum "policy-in-reset" { + description + "QoS policy is reset"; + } + } + description + "Status"; + } + + typedef Qos-policy-account-enum { + type enumeration { + enum "qos-serv-policy-no-ac-count-pref" { + description + "qos serv policy no ac count pref"; + } + enum "qos-serv-policy-ac-count-l2" { + description + "qos serv policy ac count l2"; + } + enum "qos-serv-policy-no-ac-count-l2" { + description + "qos serv policy no ac count l2"; + } + enum "qos-serv-policy-ac-count-user-def" { + description + "qos serv policy ac count user def"; + } + enum "qos-serv-policy-ac-count-l1" { + description + "qos serv policy ac count l1"; + } + } + description + "Qos policy account enum"; + } + + grouping DNX-QOSEA-SHOW-INC-DETAIL-ELEM { + description + "Inconsistency Info Detail Element"; + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf underlying-interface-handle { + type uint32; + description + "Underlying Interface Handle"; + } + leaf npu-id { + type uint8; + description + "NPU Id"; + } + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy name"; + } + leaf direction { + type Dnx-qosea-show-inc-dir; + description + "Direction"; + } + leaf inc-bitmap { + type uint32; + description + "Inconsistency Type Bitmap"; + } + } + + grouping DNX-QOSEA-SHOW-INC-DETAIL { + description + "Inconsistency Info Detail"; + list detail { + description + "Details of warnings of each interface"; + uses DNX-QOSEA-SHOW-INC-DETAIL-ELEM; + } + } + + grouping DPA-QOSEA-HWMODULESTATUS-INFO-ST { + description + "HWMODULE STATUS Info"; + leaf hqos { + type boolean; + description + "HQOS Enable"; + } + leaf hqos-conf { + type boolean; + description + "HQOS Config"; + } + leaf physical-hqos { + type boolean; + description + "PHYSICAL HQOS Enable"; + } + leaf physical-hqos-conf { + type boolean; + description + "PHYSICAL HQOS Config"; + } + leaf wred-stats { + type boolean; + description + "WRED STATS Enable"; + } + leaf wred-stats-conf { + type boolean; + description + "WRED STATS Config"; + } + leaf qos-stats-model { + type boolean; + description + "QOS STATS MODEL Enable"; + } + leaf qos-stats-model-conf { + type boolean; + description + "QOS STATS MODEL Config"; + } + leaf arp-isis-prio { + type boolean; + description + "ARP ISIS PRIORITY Enable"; + } + leaf arp-isis-prio-conf { + type boolean; + description + "ARP ISIS PRIORITY Config"; + } + leaf conform-aw-are-police { + type boolean; + description + "CONFORM AWARE POLICER Enable"; + } + leaf conform-aw-are-police-conf { + type boolean; + description + "CONFORM AWARE POLICER Config"; + } + leaf ecn-mark-stat { + type boolean; + description + "ECN MARK STATS Enable"; + } + leaf ecn-mark-stat-conf { + type boolean; + description + "ECN MARK STATS Config"; + } + leaf gre-exp-class { + type boolean; + description + "GRE EXP CLASS Enable"; + } + leaf gre-exp-class-conf { + type boolean; + description + "GRE EXP CLASS Config"; + } + leaf shared-police-r-stat { + type boolean; + description + "SHARED POLICER STAT Enable"; + } + leaf shared-police-r-stat-conf { + type boolean; + description + "SHARED POLICER STAT Config"; + } + leaf ipv6-short { + type boolean; + description + "IPV6 SHORT Enable"; + } + leaf ipv6-short-conf { + type boolean; + description + "IPV6 SHORT Config"; + } + leaf ipv6-short-etm { + type boolean; + description + "IPV6 SHORT ETM Enable"; + } + leaf ipv6-short-etm-conf { + type boolean; + description + "IPV6 SHORT ETM Config"; + } + leaf short-l2qos { + type boolean; + description + "SHORT L2QOS Enable"; + } + leaf short-l2qos-conf { + type boolean; + description + "SHORT L2QOS Config"; + } + leaf l2-match-dest-addr { + type boolean; + description + "L2 MATCH DEST ADDR Enable"; + } + leaf l2-match-dest-addr-conf { + type boolean; + description + "L2 MATCH DEST ADDR Config"; + } + leaf qos-enhanced { + type boolean; + description + "STAT QOS ENHANCED Enable"; + } + leaf qos-enhanced-conf { + type boolean; + description + "STAT QOS ENHANCED Config"; + } + leaf ingress-qosm { + type uint32; + description + "INGRESS QOSM Enable"; + } + leaf ingress-qosm-conf { + type uint32; + description + "INGRESS QOSM Config"; + } + leaf max-class-size { + type uint32; + description + "MAX CLASS SIZE Enable"; + } + leaf max-class-size-conf { + type uint32; + description + "MAX CLASS SIZE Config"; + } + leaf free-buffer-int { + type uint32; + description + "FREE BUFFER INT Enable"; + } + leaf free-buffer-int-conf { + type uint32; + description + "FREE BUFFER INT Config"; + } + leaf qosg-dscp-mark { + type uint64; + description + "QOSG DSCP MARK Enable"; + } + leaf qosg-dscp-mark-conf { + type uint64; + description + "QOSG DSCP MARK Config"; + } + leaf qos-policer-scale-enable { + type uint32; + description + "Qos policer scale enable"; + } + leaf qos-policer-scale-config { + type uint32; + description + "Qos policer scale config"; + } + leaf irb-recycle-bandwidth-enable { + type uint32; + description + "IRB recycle bandwidth enable"; + } + leaf irb-recycle-bandwidth-config { + type uint32; + description + "IRB recycle bandwidth config"; + } + } + + grouping DNX-QOSEA-SHOW-INC-SUMMARY { + description + "Inconsistency Info Summary"; + leaf-list summary { + type uint16; + description + "Number of warnings of each type"; + } + } + + grouping QOS-RANGE { + description + "QOS RANGE"; + leaf range-start { + type uint8; + description + "Start value of a range"; + } + leaf range-end { + type uint8; + description + "End value of a range"; + } + } + + grouping DPA-QOSEA-SHOW-RED-MATCH-VALUES { + description + "DPA QOSEA SHOW RED MATCH VALUES"; + list dpa-qosea-show-red-match-value { + description + "dpa qosea show red match value"; + uses QOS-RANGE; + } + } + + grouping PARAMETERS { + description + "WRED parameters"; + container wred-match-value { + description + "WRED match values"; + uses DPA-QOSEA-SHOW-RED-MATCH-VALUES; + } + container config-min-threshold { + description + "Configured minimum threshold"; + uses POLICY-PARAMETER; + } + container config-max-threshold { + description + "Configured maximum threshold"; + uses POLICY-PARAMETER; + } + container config-drop-probability { + description + "Configured drop/mark probability"; + uses POLICY-PARAMETER; + } + leaf wred-match-type { + type Dpa-qosea-show-wred; + description + "WREDMatchType"; + } + leaf hardware-min-threshold-bytes { + type uint32; + description + "Hardware minimum threshold"; + } + leaf hardware-max-threshold-bytes { + type uint32; + description + "Hardware maximum threshold"; + } + leaf hardware-drop-probability { + type uint32; + description + "Hardware drop/mark probability"; + } + leaf first-segment { + type uint16; + description + "First segment"; + } + leaf segment-size { + type uint32; + description + "Segment size"; + } + } + + grouping POLICER-ACTION { + description + "POLICER ACTION"; + leaf action-type { + type Dpa-qosea-show-action; + description + "Policer action type"; + } + list mark { + description + "Action mark"; + uses QOS-MARK; + } + } + + grouping DQL-POLICY-PARAMETER { + description + "DQL Policy parameter"; + leaf class0-policy-value { + type uint32; + description + "Discard Class0 Policy value"; + } + leaf class1-policy-value { + type uint32; + description + "Discard Class1 Policy value"; + } + leaf dql-policy-unit { + type Policy-param-unit; + description + "DQL Policy unit"; + } + } + + grouping POLICY-PARAMETER { + description + "Policy parameter"; + leaf policy-value { + type uint32; + description + "Policy value"; + } + leaf policy-unit { + type Policy-param-unit; + description + "Policy unit"; + } + } + + grouping QOS-MARK { + description + "QoS mark"; + leaf mark-type { + type Dpa-qosea-show-mark; + description + "Mark type"; + } + leaf mark-value { + type uint16; + description + "Mark value"; + } + } + + grouping DPA-QOSEA-SHOW-CLASS-ST { + description + "QoS policy"; + container config-max-rate { + description + "Configured maximum rate"; + uses POLICY-PARAMETER; + } + container config-min-rate { + description + "Configured minimum rate"; + uses POLICY-PARAMETER; + } + container config-queue-limit { + description + "Configured queue limit"; + uses POLICY-PARAMETER; + } + container config-d-queue-limit { + description + "Configured Dual queue limit"; + uses DQL-POLICY-PARAMETER; + } + container config-policer-average-rate { + description + "Configured policer average rate"; + uses POLICY-PARAMETER; + } + container config-policer-peak-rate { + description + "Config policer peak rate"; + uses POLICY-PARAMETER; + } + container config-policer-conform-burst { + description + "Configured policer conform burst"; + uses POLICY-PARAMETER; + } + container config-policer-excess-burst { + description + "Configured policer excess burst"; + uses POLICY-PARAMETER; + } + container conform-action { + description + "Conform action"; + uses POLICER-ACTION; + } + container exceed-action { + description + "Exceed action"; + uses POLICER-ACTION; + } + container violate-action { + description + "Violate action"; + uses POLICER-ACTION; + } + container config-shaper-peak-burst { + description + "Configured shaper peak burst"; + uses POLICY-PARAMETER; + } + container resolved-shaper-peak-burst { + description + "Resolved shaper peak burst"; + uses POLICY-PARAMETER; + } + leaf class-level { + type Dpa-qosea-show-level; + description + "Class level"; + } + leaf egress-queue-id { + type int32; + description + "Egress Queue ID"; + } + leaf queue-type { + type Dpa-qosea-show-queue; + description + "Queue type"; + } + leaf priority-level { + type Dpa-qosea-show-hp-level; + description + "Priority level"; + } + leaf hardware-max-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware maximum rate in kbps"; + } + leaf hardware-min-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware minimum rate in kbps"; + } + leaf config-excess-bandwidth-percent { + type uint32; + units "percentage"; + description + "Configured excess bandwidth percentage"; + } + leaf config-excess-bandwidth-unit { + type uint32; + description + "Configured excess bandwidth unit"; + } + leaf hardware-excess-bandwidth-weight { + type uint32; + description + "Hardware excess bandwidth weight"; + } + leaf network-min-bandwidth-kbps { + type uint32; + description + "Network minimum Bandwith"; + } + leaf hardware-queue-limit-bytes { + type uint64; + units "byte"; + description + "Hardware queue limit in bytes"; + } + leaf hardware-queue-limit-microseconds { + type uint64; + units "microsecond"; + description + "Hardware queue limit in microseconds"; + } + leaf policer-bucket-id { + type uint32; + description + "PolicerBucketID"; + } + leaf policer-stats-handle { + type uint64; + description + "PolicerStatsHandle"; + } + leaf hardware-policer-average-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware policer average in kbps"; + } + leaf hardware-policer-peak-rate-kbps { + type uint32; + description + "Hardware policer peak rate"; + } + leaf hardware-policer-conform-burst-bytes { + type uint32; + description + "Hardware policer conform burst"; + } + leaf hardware-policer-excess-burst-bytes { + type uint32; + description + "Hardware policer excess burst"; + } + leaf is-referred { + type boolean; + description + "Is shared policer referred class"; + } + leaf ecn-enabled { + type boolean; + description + "ECN Enabled"; + } + leaf hardware-shaper-peak-burst-bytes { + type uint32; + description + "Hardware shaper peak burst"; + } + leaf low-shaper-enabled { + type boolean; + description + "Low Shaper Enabled"; + } + list ip-mark { + description + "IP mark"; + uses QOS-MARK; + } + list common-mark { + description + "Common mark"; + uses QOS-MARK; + } + list mpls-mark { + description + "MPLS mark"; + uses QOS-MARK; + } + list wred { + description + "WRED parameters"; + uses PARAMETERS; + } + list traffic-class { + description + "Traffic-class mark"; + uses QOS-MARK; + } + list discard-class { + description + "Discard-class mark"; + uses QOS-MARK; + } + list qos-group { + description + "Qos-group mark"; + uses QOS-MARK; + } + list cos-mark { + description + "Cos mark"; + uses QOS-MARK; + } + list dei-mark { + description + "Dei mark"; + uses QOS-MARK; + } + } + + grouping DPA-QOSEA-SHOW-IF-QOS-INFO-ST { + description + "Policy Details"; + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf interface-handle { + type uint32; + description + "InterfaceHandle"; + } + leaf interface-bandwidthkbps { + type uint64; + units "kbit/s"; + description + "Interface Bandwidth (in kbps)"; + } + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy name"; + } + leaf spi-id { + type uint64; + description + "SPI Id"; + } + leaf total-number-of-classes { + type uint16; + description + "Number of Classes"; + } + leaf voq-base-address { + type uint32; + description + "VOQ base address"; + } + leaf voq-stats-handle { + type uint64; + description + "VOQ stats handle"; + } + leaf stats-accounting-type { + type Qos-policy-account-enum; + description + "QoS Statistics Accounting Type"; + } + leaf policy-status { + type Dpa-qosea-show-policy-status; + description + "Policy Status"; + } + leaf interface-status { + type Dpa-qosea-show-intf-status; + description + "Interface Status"; + } + leaf pfc { + type uint8; + description + "Flag to indicate if PFC is enabled on the + interface"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub2.yang new file mode 100644 index 000000000..27501c23e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub2.yang @@ -0,0 +1,156 @@ +submodule Cisco-IOS-XR-iosxrwbd-qos-oper-sub2 { + belongs-to Cisco-IOS-XR-iosxrwbd-qos-oper { + prefix Cisco-IOS-XR-iosxrwbd-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR iosxrwbd-qos package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-27 { + description + "qos pfc show cmd. + 2022-03-09 + qos hwmodule show cmd. + 2022-01-23 + segregating common mark to all the mark actions."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping WRED-PROFILE { + description + "WRED PROFILE"; + leaf min-threshold { + type uint32; + description + "Minimum Threshold"; + } + leaf max-threshold { + type uint32; + description + "Maximum Threshold"; + } + leaf drop-probability { + type uint32; + description + "Drop Probability"; + } + } + + grouping REMOTE-CLASS { + description + "REMOTE CLASS"; + leaf class-name { + type string { + length "0..64"; + } + description + "Class Name"; + } + leaf class-id { + type uint32; + description + "Class ID"; + } + leaf cos-q { + type uint32; + description + "Class of Service Queue"; + } + leaf queue-limit { + type uint32; + units "byte"; + description + "Default/Configured queue limit in bytes"; + } + leaf hardware-queue-limit { + type uint32; + units "byte"; + description + "Hardware queue limit in bytes"; + } + list wred { + max-elements "4"; + description + "Default/Configured WRED profiles"; + uses WRED-PROFILE; + } + list hw-wred { + max-elements "4"; + description + "Hardware WRED profiles"; + uses WRED-PROFILE; + } + } + + grouping DPA-QOSEA-SHOW-REMOTE-IF-INFO-ST { + description + "Remote Interface Info"; + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy Name"; + } + leaf virtual-output-queue-statistics-handle { + type uint64; + description + "Virtual output queue statistics handle"; + } + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf number-of-virtual-output-queues { + type uint32; + description + "Number of Virtual Output Queues"; + } + leaf number-of-classes { + type uint32; + description + "Number of Classes"; + } + leaf pfc { + type uint8; + description + "Flag to indicate if PFC is enabled on the + interface"; + } + list remote-class { + description + "Remote Class array"; + uses REMOTE-CLASS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub3.yang new file mode 100644 index 000000000..496fae3f6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper-sub3.yang @@ -0,0 +1,251 @@ +submodule Cisco-IOS-XR-iosxrwbd-qos-oper-sub3 { + belongs-to Cisco-IOS-XR-iosxrwbd-qos-oper { + prefix Cisco-IOS-XR-iosxrwbd-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR iosxrwbd-qos package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-27 { + description + "qos pfc show cmd. + 2022-03-09 + qos hwmodule show cmd. + 2022-01-23 + segregating common mark to all the mark actions."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DNX-QOSEA-PFC-TC-CFG { + description + "DNX QOSEA PFC TC CFG"; + leaf in-use { + type boolean; + description + "Flag to indicate if PFC is configured for the tc"; + } + leaf pause-threshold { + type uint32; + description + "Pause-threshold configured"; + } + leaf resume-threshold { + type uint32; + description + "Resume-threshold configured"; + } + leaf tc-headroom { + type uint32; + description + "Headroom configured"; + } + } + + grouping DNX-QOSEA-PFC-CFG { + description + "DNX QOSEA PFC CFG"; + leaf in-use { + type boolean; + description + "Flag to indicate if PFC is configured for the + line-card"; + } + list tc-cfg { + max-elements "8"; + description + "Keeps a record of the PFC configuration for the + line-card"; + uses DNX-QOSEA-PFC-TC-CFG; + } + } + + grouping DNX-QOSEA-PFC-PG-VSQ-OCCUPANCY-INFO { + description + "DNX QOSEA PFC PG VSQ OCCUPANCY INFO"; + leaf shared-pool-bds { + type uint32; + description + "Vsq occupancy Shared pool bds"; + } + leaf headroom-bds { + type uint32; + description + "Vsq occupancy headroom bds"; + } + leaf shared-pool-bytes { + type uint32; + units "byte"; + description + "Vsq occupancy Shared pool bytes"; + } + leaf headroom-bytes { + type uint32; + units "byte"; + description + "Vsq occupancy Headroom bytes"; + } + } + + grouping DNX-QOSEA-PFC-VSQ-INGRESS-REJECT-INFO { + description + "DNX QOSEA PFC VSQ INGRESS REJECT INFO"; + leaf-list val { + type uint64; + max-elements "2"; + description + "Ingress reject info reg val"; + } + } + + grouping DNX-QOSEA-PFC-VSQ-FREE-BUFFS-INFO { + description + "DNX QOSEA PFC VSQ FREE BUFFS INFO"; + leaf ocb-buff { + type uint32; + description + "Vsq available OCB buffer"; + } + leaf mnmc-buff { + type uint32; + description + "Vsq available MNMC buffer"; + } + leaf fmc-buff { + type uint32; + description + "Vsq available FMC buffer"; + } + leaf ocb-buff-percent { + type uint32; + units "percentage"; + description + "Vsq available OCB buffer Percent"; + } + leaf mnmc-buff-percent { + type uint32; + units "percentage"; + description + "Vsq available MNMC buffer Percent"; + } + leaf fmc-buff-percent { + type uint32; + units "percentage"; + description + "Vsq available FMC buffer Percent"; + } + } + + grouping DNX-QOSEA-PFC-PG-VSQ-THRESHOLD-INFO { + description + "DNX QOSEA PFC PG VSQ THRESHOLD INFO"; + leaf id { + type uint32; + description + "VSQ Pg Vsq ID"; + } + leaf xoff-thr { + type uint32; + description + "PgVsq Xoff threshold"; + } + leaf xon-thr { + type uint32; + description + "PgVsq Xon threshold"; + } + leaf headroom { + type uint32; + description + "PgVsq Headroom threshold"; + } + } + + grouping DNX-QOSEA-PFC-VSQ { + description + "DNX QOSEA PFC VSQ"; + leaf intf-handle { + type uint32; + description + "Interface Handle"; + } + leaf pp-port { + type uint32; + description + "PP port number"; + } + leaf npu-id { + type uint8; + description + "NPU number"; + } + leaf core { + type uint8; + description + "Core number"; + } + list is-inuse { + min-elements 8; + max-elements "8"; + description + "Flag to indicate if PFC is configured for the tc"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list pg-vsg-info { + max-elements "8"; + description + "Keeps a record of vsq threshold info "; + uses DNX-QOSEA-PFC-PG-VSQ-THRESHOLD-INFO; + } + list free-buff { + max-elements "2"; + description + "Keeps a record of available buffer info"; + uses DNX-QOSEA-PFC-VSQ-FREE-BUFFS-INFO; + } + list reject-reason { + max-elements "2"; + description + "Keeps a record of ingress reject info"; + uses DNX-QOSEA-PFC-VSQ-INGRESS-REJECT-INFO; + } + list pgvsq-occupancy-info { + max-elements "8"; + description + "Keeps a record of vsq occupancy info"; + uses DNX-QOSEA-PFC-PG-VSQ-OCCUPANCY-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper.yang new file mode 100644 index 000000000..a64ec1ff5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-iosxrwbd-qos-oper.yang @@ -0,0 +1,314 @@ +module Cisco-IOS-XR-iosxrwbd-qos-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-iosxrwbd-qos-oper"; + prefix iosxrwbd-qos-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-iosxrwbd-qos-oper-sub3 { + revision-date 2022-09-27; + } + include Cisco-IOS-XR-iosxrwbd-qos-oper-sub2 { + revision-date 2022-09-27; + } + include Cisco-IOS-XR-iosxrwbd-qos-oper-sub1 { + revision-date 2022-09-27; + } + + 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 iosxrwbd-qos package operational data. + + This module contains definitions + for the following management objects: + platform-qos: DPA QoS EA operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-27 { + description + "qos pfc show cmd. + 2022-03-09 + qos hwmodule show cmd. + 2022-01-23 + segregating common mark to all the mark actions."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping QOS-CLASS-TABLE { + description + "Common node of input, output"; + container qos-class-table { + description + "QoS list of class names"; + uses CLASS; + } + } + + grouping CLASS { + description + "Common node of class-table, qos-class-table"; + list class { + key "level-one-class-name"; + description + "QoS policy class"; + leaf level-one-class-name { + type string; + description + "QoS policy class name at level 1"; + } + leaf level-two-class-name { + type string; + description + "QoS policy child class name at level 2"; + } + uses DPA-QOSEA-SHOW-CLASS-ST; + } + } + + grouping POLICY-DETAILS { + description + "Common node of interface, bundle-interface-single + , bundle-interface, member-interface"; + container policy-details { + description + "Policy Details"; + uses DPA-QOSEA-SHOW-IF-QOS-INFO-ST; + } + } + + grouping MEMBER-INTERFACE-TABLE { + description + "Common node of bundle-interface-single, + bundle-interface"; + container member-interfaces { + description + "QoS list of member interfaces"; + list member-interface { + key "interface-name"; + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "Member interface"; + } + uses POLICY-DETAILS; + uses CLASS-TABLE; + } + } + } + + grouping OUTPUT { + description + "Common node of qos-interfaces, interface"; + container output { + description + "QoS policy direction egress"; + uses QOS-CLASS-TABLE; + } + } + + grouping CLASS-TABLE { + description + "Common node of interface, bundle-interface-single + , bundle-interface, member-interface"; + container class-table { + description + "QoS list of class names"; + uses CLASS; + } + } + + container platform-qos { + config false; + description + "DPA QoS EA operational data"; + container nodes { + description + "List of nodes with platform specific QoS + configuration"; + list node { + key "node-name"; + description + "Node with platform specific QoS configuration"; + container pfc-vsqs { + description + "Qos Pfc Vsq datalist"; + list pfc-vsq { + key "interface-name"; + description + "Qos Pfc Vsq Data"; + leaf interface-name { + type xr:Interface-name; + description + "interface Name"; + } + uses DNX-QOSEA-PFC-VSQ; + } + } + container bundle-interfaces { + description + "QoS list of bundle interfaces"; + list bundle-interface { + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + uses POLICY-DETAILS; + uses MEMBER-INTERFACE-TABLE; + uses CLASS-TABLE; + } + } + container qos-inconsistancy-brief { + description + "Inconsistancy Brief"; + uses DNX-QOSEA-SHOW-INC-SUMMARY; + } + container interfaces { + description + "QoS list of interfaces"; + list interface { + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + uses POLICY-DETAILS; + uses OUTPUT; + uses CLASS-TABLE; + } + } + container qos-interfaces { + description + "QoS list of interfaces"; + list qos-interface { + description + "QoS interface names"; + container input { + description + "QoS policy direction ingress"; + uses QOS-CLASS-TABLE; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + uses OUTPUT; + } + } + container bundle-interface-singles { + description + "QoS list of bundle interfaces"; + list bundle-interface-single { + key "interface-name"; + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + uses POLICY-DETAILS; + uses MEMBER-INTERFACE-TABLE; + uses CLASS-TABLE; + } + } + container pfc-cfg { + description + "Qos Pfc Config data"; + uses DNX-QOSEA-PFC-CFG; + } + container hw-module-status { + description + "Hw Module Status"; + uses DPA-QOSEA-HWMODULESTATUS-INFO-ST; + } + container remote-interfaces { + description + "QoS list of remote interfaces"; + list remote-interface { + key "interface-name"; + description + "QoS remote interface names"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the remote interface"; + } + uses DPA-QOSEA-SHOW-REMOTE-IF-INFO-ST; + } + } + container qos-inconsistancy-details { + description + "Inconsistancy Details"; + uses DNX-QOSEA-SHOW-INC-DETAIL; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-cfg.yang new file mode 100644 index 000000000..c1b1a8699 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-cfg.yang @@ -0,0 +1,411 @@ +module Cisco-IOS-XR-ip-bfd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-bfd-cfg"; + prefix ip-bfd-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 ip-bfd package configuration. + + This module contains definitions + for the following management objects: + bfd: BFD Configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandary modes and presence containers."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bfd-echo-startup-validate { + type enumeration { + enum "off" { + value 0; + description + "Disable echo startup validation"; + } + enum "on" { + value 1; + description + "Enable echo startup validation"; + } + enum "force" { + value 2; + description + "Force echo startup validation"; + } + } + description + "Bfd echo startup validate"; + } + + typedef Bfd-bundle-coexistence-bob-blb { + type enumeration { + enum "inherited" { + value 1; + description + "Inherited coexistence mode"; + } + enum "logical" { + value 2; + description + "Logical coexistence mode"; + } + } + description + "Bfd bundle coexistence bob blb"; + } + + typedef Bfd-if-echo-usage { + type enumeration { + enum "enable" { + value 0; + description + "Enable echo"; + } + enum "disable" { + value 1; + description + "Disable echo"; + } + } + description + "Bfd if echo usage"; + } + + typedef Bfd-if-ipv6-checksum-usage { + type enumeration { + enum "disable" { + value 0; + description + "Disable IPv6 checksum"; + } + enum "enable" { + value 1; + description + "Enable IPv6 checksum"; + } + } + description + "Bfd if ipv6 checksum usage"; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container bfd { + description + "CISCO-IETF-BFD-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable CISCO-IETF-BFD-MIB notifications"; + } + } + } + container bfd { + description + "BFD Configuration"; + container flap-damp { + description + "Flapping class container"; + container bundle-member { + description + "Bundle per member feature class container"; + leaf initial-delay { + type uint32 { + range "1..518400000"; + } + units "millisecond"; + default "16000"; + description + "Initial delay before bringing up session"; + } + leaf maximum-delay { + type uint32 { + range "1..518400000"; + } + units "millisecond"; + default "600000"; + description + "Maximum delay before bringing up session"; + } + leaf secondary-delay { + type uint32 { + range "1..518400000"; + } + units "millisecond"; + default "20000"; + description + "Secondary delay before bringing up session"; + } + leaf l3-only-mode { + type empty; + description + "Apply immediate dampening and only when + failure is L3 specific"; + } + } + container extensions { + description + "Extensions to the BFD dampening feature"; + leaf down-monitor { + type empty; + description + "If set, DOWN state monitoring mode is enabled"; + } + } + leaf threshold { + type uint32 { + range "60000..3600000"; + } + units "millisecond"; + default "120000"; + description + "Stability threshold to enable dampening"; + } + leaf initial-delay { + type uint32 { + range "1..3600000"; + } + units "millisecond"; + default "2000"; + description + "Initial delay before bringing up session"; + } + leaf maximum-delay { + type uint32 { + range "1..3600000"; + } + units "millisecond"; + default "120000"; + description + "Maximum delay before bringing up session"; + } + leaf dampen-disable { + type empty; + description + "Dampening Enable/Disable"; + } + leaf secondary-delay { + type uint32 { + range "1..3600000"; + } + units "millisecond"; + default "5000"; + description + "Secondary delay before bringing up session"; + } + } + container echo-latency { + description + "BFD echo latency feature class container"; + container detect { + description + "BFD echo latency detection"; + leaf latency-detect-enabled { + type boolean; + description + "If set, echo latency detect is enabled"; + } + leaf latency-detect-percentage { + type uint32 { + range "100..250"; + } + units "percentage"; + description + "Echo latency detect percentage"; + } + leaf latency-detect-count { + type uint32 { + range "1..10"; + } + description + "Echo latency detect count"; + } + } + } + container echo-startup { + presence "Contains mandatory nodes that used to set default values"; + description + "BFD echo startup feature class container"; + leaf validate { + type Bfd-echo-startup-validate; + mandatory true; + description + "BFD echo validation prior to session bringup"; + } + } + container interfaces { + description + "Interface configuration"; + list interface { + key "interface-name"; + description + "Single interface configuration"; + leaf interface-bfd-multiplier { + type uint32 { + range "2..50"; + } + description + "BFD Multiplier for this Interface"; + } + leaf interface-echo-usage { + type Bfd-if-echo-usage; + default "enable"; + description + "Echo usage for this interface"; + } + leaf interface-bfd-rx-interval { + type uint32 { + range "3000..30000000"; + } + units "microsecond"; + description + "BFD RxInterval for this Interface"; + } + leaf interface-bfd { + type empty; + description + "Enable/Disable BFD for this interface"; + } + leaf ipv6-checksum { + type Bfd-if-ipv6-checksum-usage; + default "enable"; + description + "IPv6 checksum usage for this interface - + Interface config will always take precedence + over global config"; + } + leaf interface-ipv4-echo-source { + type inet:ip-address-no-zone; + description + "Interface IPv4 echo source address + configuration"; + } + leaf interface-bfd-local-addr { + type inet:ip-address-no-zone; + description + "BFD LocalAddr for this Interface"; + } + leaf interface-bfd-tx-interval { + type uint32 { + range "3000..30000000"; + } + units "microsecond"; + description + "BFD TxInterval for this Interface"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + container multi-path-includes { + description + "Multipath Include configuration"; + list multi-path-include { + key "location"; + description + "Location configuration"; + leaf location { + type xr:Node-id; + description + "Location"; + } + } + } + container bundle { + description + "Configuration related to BFD over Bundle"; + container coexistence { + description + "Coexistence mode for BFD on bundle feature"; + leaf bob-blb { + type Bfd-bundle-coexistence-bob-blb; + description + "Coexistence mode for BoB and BLB feature"; + } + } + } + leaf global-echo-usage { + type empty; + description + "Echo configuration"; + } + leaf ipv6-checksum-disable { + type empty; + description + "To disable IPv6 checksum configuration"; + } + leaf global-echo-min-interval { + type uint32 { + range "15..2000"; + } + units "millisecond"; + default "15"; + description + "Configure echo min-interval for bundle interface"; + } + leaf ttl-drop-threshold { + type uint32 { + range "0..254"; + } + description + "Multihop TTL Drop Threshold"; + } + leaf single-hop-trap { + type empty; + description + "Single hop trap configuration"; + } + leaf global-ipv4-echo-source { + type inet:ip-address-no-zone; + description + "IPv4 echo source address configuration"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper-sub1.yang new file mode 100644 index 000000000..84349b682 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper-sub1.yang @@ -0,0 +1,1461 @@ +submodule Cisco-IOS-XR-ip-bfd-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-bfd-oper { + prefix Cisco-IOS-XR-ip-bfd-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-bfd package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-06 { + description + "SessionDetailTable been marked as Hidden to avoid conflict with IPv4SingleHopSessionDetailTable. + 2022-07-12 + New count field added for bfd_mgmt_interval_statistics + 2022-06-14 + hello_tx/rx_count changed to async_tx/rx_count in bfd_mgmt_packet_count. + 2022-06-10 + New session types added for BFD Session Type Field."; + semver:module-version "3.0.0"; + } + revision 2020-05-20 { + description + "Added XML Support for IPv4 and IPv6SingleHopMultiPathTable via CSCvu15981."; + semver:module-version "2.0.0"; + } + revision 2019-10-03 { + description + "Addressed openconfig-bfd model open issues via CSCvp68925.Revision updated now."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bfd-mp-download-state { + type enumeration { + enum "bfd-mp-download-none" { + value 0; + description + "bfd mp download none"; + } + enum "bfd-mp-download-no-lc" { + value 1; + description + "bfd mp download no lc"; + } + enum "bfd-mp-download-downloaded" { + value 2; + description + "bfd mp download downloaded"; + } + enum "bfd-mp-download-ack" { + value 3; + description + "bfd mp download ack"; + } + enum "bfd-mp-download-nack" { + value 4; + description + "bfd mp download nack"; + } + enum "bfd-mp-download-delete" { + value 5; + description + "bfd mp download delete"; + } + } + description + "Bfd mp download state"; + } + + typedef Bfd-mgmt-session-diag { + type enumeration { + enum "bfd-mgmt-session-diag-none" { + value 0; + description + "No diagnostic"; + } + enum "bfd-mgmt-session-diag-control-detect-expired" { + value 1; + description + "Control Detection Time Expired"; + } + enum "bfd-mgmt-session-diag-echo-function-failed" { + value 2; + description + "Echo Function Failed"; + } + enum "bfd-mgmt-session-diag-nb-or-signaled-down" { + value 3; + description + "Neighbor Signaled Session Down"; + } + enum "bfd-mgmt-session-diag-fwding-plane-reset" { + value 4; + description + "Forwarding Plane Reset"; + } + enum "bfd-mgmt-session-diag-path-down" { + value 5; + description + "Path Down"; + } + enum "bfd-mgmt-session-diag-conc-path-down" { + value 6; + description + "Concatenated Path Down"; + } + enum "bfd-mgmt-session-diag-admin-down" { + value 7; + description + "Administratively Down"; + } + enum "bfd-mgmt-session-diag-rev-conc-path-down" { + value 8; + description + "Reverse Concatenated Path Down"; + } + enum "bfd-mgmt-session-diag-num" { + value 10; + description + "Unknown diagnostic state"; + } + } + description + "BFD session diagnostic"; + } + + typedef Bfd-in6-addr { + type inet:ipv6-address; + description + "Bfd in6 addr"; + } + + typedef Bfd-in-addr { + type inet:ipv4-address; + description + "Bfd in addr"; + } + + typedef Bfd-af-id { + type enumeration { + enum "bfd-af-id-none" { + value 0; + description + "No Address"; + } + enum "bfd-af-id-ipv4" { + value 2; + description + "IPv4 AFI"; + } + enum "bfd-af-id-ipv6" { + value 10; + description + "IPv6 AFI"; + } + } + description + "Bfd af id"; + } + + typedef Bfd-discr { + type uint32; + description + "Bfd discr"; + } + + typedef Bfd-mgmt-pkt-display { + type enumeration { + enum "bfd-mgmt-pkt-display-type-none" { + value 0; + description + "None"; + } + enum "bfd-mgmt-pkt-display-type-bob-mbr" { + value 1; + description + "Display Type Bundle RTR Member"; + } + enum "bfd-mgmt-pkt-display-type-max" { + value 2; + description + "Display Type Enum Max Value"; + } + } + description + "BFD session type"; + } + + typedef Bfd-session { + type enumeration { + enum "undefined" { + description + "Session type is undefined"; + } + enum "bundle-member" { + description + "Session type is bundle member"; + } + enum "bundle-interface" { + description + "Session type is bundle interface"; + } + enum "state-inheriting" { + description + "Session type is state inheriting"; + } + enum "bundle-vlan" { + description + "Session type is bundle vlan"; + } + enum "mpls-tp" { + description + "Session type is MPLS-TP"; + } + enum "gre" { + description + "Session type is GRE tunnel"; + } + enum "pseudowire-headend" { + description + "Session type is PW-HE"; + } + enum "ip-single-hop" { + description + "Session type is IP single hop"; + } + enum "mpls-te" { + description + "Session type is MPLS-TE"; + } + enum "ip-multi-hop" { + description + "Session type is IP multi hop"; + } + } + description + "BFD session type"; + } + + typedef Bfd-mgmt-session-state { + type enumeration { + enum "bfd-mgmt-session-state-admin-down" { + value 0; + description + "Session in Administratively Shutdown State"; + } + enum "bfd-mgmt-session-state-down" { + value 1; + description + "Session in Down State"; + } + enum "bfd-mgmt-session-state-init" { + value 2; + description + "Session in Initializing State"; + } + enum "bfd-mgmt-session-state-up" { + value 3; + description + "Session in Up State"; + } + enum "bfd-mgmt-session-state-failing" { + value 4; + description + "Session in Failing State"; + } + enum "bfd-mgmt-session-state-unknown" { + value 6; + description + "Session in Unknown State"; + } + } + description + "BFD session states"; + } + + grouping BFD-MGMT-RELATION-LINK-DETAIL { + description + "Detail Member Link Information"; + leaf state { + type Bfd-mgmt-session-state; + description + "State"; + } + leaf interface-name { + type string { + length "0..64"; + } + description + "Session Interface Name"; + } + leaf local-discriminator { + type Bfd-discr; + description + "Session's Local discriminator"; + } + } + + grouping BFD-MGMT-RELATION { + description + "BFD Relation Detail Information"; + leaf state { + type Bfd-mgmt-session-state; + description + "State"; + } + leaf local-discriminator { + type Bfd-discr; + description + "Session's Local discriminator"; + } + list link-information { + description + "Detail Member Link Information"; + uses BFD-MGMT-RELATION-LINK-DETAIL; + } + list association-information { + description + "Association session information"; + uses BFD-MGMT-SESSION-ASSOCIATION-INFORMATION; + } + } + + grouping BFD-MGMT-RELATION-LINK-BRIEF { + description + "Brief Member Link Information"; + leaf state { + type Bfd-mgmt-session-state; + description + "State"; + } + leaf interface-name { + type string { + length "0..64"; + } + description + "Session Interface Name"; + } + } + + grouping BFD-MGMT-RELATION-BRIEF { + description + "BFD Relation Brief Information"; + leaf state { + type Bfd-mgmt-session-state; + description + "State"; + } + list link-information { + description + "Brief Member Link Information"; + uses BFD-MGMT-RELATION-LINK-BRIEF; + } + } + + grouping BFD-MGMT-MIB-DATABASE { + description + "BFD MIB Mapping Database Entry Information"; + container dest-address { + description + "Session Destination address"; + uses IP-ADDR-T-UNION; + } + leaf local-discriminator { + type Bfd-discr; + description + "Sessions' Local Discriminator"; + } + leaf remote-discriminator { + type Bfd-discr; + description + "Sessions' Remote Discriminator"; + } + leaf sessionversion { + type uint32; + description + "Session BFD Version"; + } + leaf session-state { + type uint32; + description + "Session State"; + } + leaf trap-bitmap { + type uint32; + description + "Trap Generator Bitmap"; + } + leaf pkt-in { + type uint64; + description + "Packet In Counter"; + } + leaf pkt-out { + type uint64; + description + "Packet Out Counter"; + } + leaf last-up-time-sec { + type uint64; + units "second"; + description + "Last Session Up Time (seconds)"; + } + leaf last-up-time-nsec { + type uint32; + units "nanosecond"; + description + "Last Session Up Time (nanoseconds)"; + } + leaf last-down-time-sec { + type uint64; + units "second"; + description + "Last Session Down Time (seconds)"; + } + leaf last-down-time-nsec { + type uint32; + units "nanosecond"; + description + "Last Session Down Time (nanoseconds)"; + } + leaf last-io-evm-schd-time-sec { + type uint64; + units "second"; + description + "Last IO EVM Schd Time (seconds)"; + } + leaf last-io-evm-schd-time-nsec { + type uint32; + units "nanosecond"; + description + "Last IO Evm Schd Time (nanoseconds)"; + } + leaf last-io-evm-schd-comp-time-sec { + type uint64; + units "second"; + description + "Last IO EVM Schd Comp Time (seconds)"; + } + leaf last-io-evm-schd-comp-time-nsec { + type uint32; + units "nanosecond"; + description + "Last IO Evm Schd Comp Time (nanoseconds)"; + } + leaf last-down-diag { + type Bfd-mgmt-session-diag; + description + "Last Session Down Diag"; + } + leaf last-rx-down-diag { + type Bfd-mgmt-session-diag; + description + "Last Rx Session Down Diag"; + } + leaf up-counter { + type uint32; + description + "Up Count"; + } + leaf last-time-cached { + type uint64; + description + "Last Time Session Info Queried"; + } + leaf interface-name { + type string { + length "0..64"; + } + description + "Session Interface Name"; + } + leaf int-handle { + type uint32; + description + "Session Interface Handle"; + } + leaf detection-multiplier { + type uint32; + description + "Detection Multiplier"; + } + leaf desired-min-tx-interval { + type uint32; + description + "Desired Min TX Interval"; + } + leaf required-min-rx-interval { + type uint32; + description + "Required Min RX Interval"; + } + leaf required-min-rx-echo-interval { + type uint32; + description + "Required Min RX Echo Interval"; + } + leaf session-key { + type string { + length "0..256"; + } + description + "Session Key"; + } + } + + grouping BFD-LOC-MGMT-SESSION-STATE-INFORMATION { + description + "BFD Location Session State Information"; + leaf total-count { + type uint32; + description + "Number of sessions in database"; + } + leaf up-count { + type uint32; + description + "Number of sessions in up state"; + } + leaf down-count { + type uint32; + description + "Number of sessions in down state"; + } + leaf unknown-count { + type uint32; + description + "Number of sessions in unknown state"; + } + leaf retry-count { + type uint32; + description + "Number of sessions in retry state"; + } + leaf standby-count { + type uint32; + description + "Number of sessions in standby state"; + } + } + + grouping BFD-MGMT-BFD-LOC-INFORMATION { + description + "BFD Location Summary Information"; + container session-state { + description + "Statistics of states for sessions"; + uses BFD-LOC-MGMT-SESSION-STATE-INFORMATION; + } + } + + grouping BFD-MGMT-SUMMARY { + description + "BFD MGMT SUMMARY"; + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + leaf pps-allocated-value { + type uint32; + description + "Allocated PPS value"; + } + leaf ppsmp-allocated-value { + type uint32; + description + "Allocated MP PPS value"; + } + leaf pps-max-value { + type uint32; + description + "Max PPS value"; + } + leaf ppsmp-max-value { + type uint32; + description + "Max MP PPS value"; + } + leaf total-session-number { + type uint32; + description + "Total Session Number"; + } + leaf mp-session-number { + type uint32; + description + "MP Session Number"; + } + leaf max-session-number { + type uint32; + description + "Max Session Number"; + } + leaf pps-all-percentage { + type uint32; + units "percentage"; + description + "All PPS percentage"; + } + leaf ppsmp-percentage { + type uint32; + units "percentage"; + description + "MP PPS percentage"; + } + } + + grouping BFD-MGMT-LSP-PING-INFO { + description + "BFD LSP Ping info"; + container lsp-ping-tx-last-time { + description + "LSP Ping last sent time"; + uses BFD-TIMESPEC; + } + container lsp-ping-tx-last-error-time { + description + "LSP Ping last error time"; + uses BFD-TIMESPEC; + } + container lsp-ping-rx-last-time { + description + "LSP Ping last received time"; + uses BFD-TIMESPEC; + } + leaf lsp-ping-tx-count { + type uint32; + description + "LSP Ping Tx count"; + } + leaf lsp-ping-tx-error-count { + type uint32; + description + "LSP Ping Tx error count"; + } + leaf lsp-ping-tx-last-rc { + type string; + description + "LSP Ping Tx last result"; + } + leaf lsp-ping-tx-last-error-rc { + type string; + description + "LSP Ping Tx last error"; + } + leaf lsp-ping-rx-last-discr { + type Bfd-discr; + description + "LSP Ping Rx last received discriminator"; + } + leaf lsp-ping-rx-count { + type uint32; + description + "LSP Ping numer of times received"; + } + leaf lsp-ping-rx-last-code { + type uint8; + description + "LSP Ping Rx Last Code"; + } + leaf lsp-ping-rx-last-subcode { + type uint8; + description + "LSP Ping Rx Last Subcode"; + } + leaf lsp-ping-rx-last-output { + type string; + description + "LSP Ping Rx Last Output"; + } + } + + grouping BFD-TIMESPEC { + description + "BFD TIMESPEC"; + leaf seconds { + type uint64; + units "second"; + description + "seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "nanoseconds"; + } + } + + grouping BFD-MGMT-MP-DOWNLOAD-STATE-INFO { + description + "BFD Download State"; + container change-time { + description + "Change time"; + uses BFD-TIMESPEC; + } + leaf mp-download-state { + type Bfd-mp-download-state; + description + "MP Download State"; + } + } + + grouping BFD-MGMT-SESSION-ASSOCIATION-INFORMATION { + description + "BFD Session Association Information"; + container ip-destination-address { + description + "IPv4/v6 dest address"; + uses IP-ADDR-T-UNION; + } + leaf interface-name { + type string { + length "0..64"; + } + description + "Session Interface Name"; + } + leaf sessiontype { + type Bfd-session; + description + "Session type"; + } + leaf local-discriminator { + type Bfd-discr; + description + "Session's Local discriminator"; + } + list owner-information { + description + "Client applications owning the session"; + uses BFD-MGMT-SESSION-OWNER-INFORMATION; + } + } + + grouping BFD-MGMT-SESSION-OWNER-INFORMATION { + description + "BFD Session Owner Information"; + leaf interval { + type uint32; + units "microsecond"; + description + "Client specified minimum transmit interval in + micro-seconds"; + } + leaf detection-multiplier { + type uint32; + description + "Client specified detection multiplier to compute + detection time"; + } + leaf adjusted-interval { + type uint32; + units "millisecond"; + description + "Adjusted minimum transmit interval in + milli-seconds"; + } + leaf adjusted-detection-multiplier { + type uint32; + description + "Adjusted detection multiplier to compute + detection time"; + } + leaf name { + type string { + length "0..257"; + } + description + "Client process name"; + } + } + + grouping BFD-MGMT-INTERVAL-STATISTICS { + description + "BFD Agent Interval between packets Information"; + leaf number { + type uint32; + description + "Number of Interval Samples between Packets + sent/received"; + } + leaf minimum { + type uint32; + units "millisecond"; + description + "Minimum of Transmit/Receive Interval (in + milli-seconds)"; + } + leaf maximum { + type uint32; + units "millisecond"; + description + "Maximum of Transmit/Receive Interval (in + milli-seconds)"; + } + leaf average { + type uint32; + units "millisecond"; + description + "Average of Transmit/Receive Interval (in + milli-seconds)"; + } + leaf last { + type uint32; + units "millisecond"; + description + "Time since last Transmit/Receive (in + milli-seconds)"; + } + leaf last-time-stamp { + type uint64; + description + "TimeStamp of last Transmit/Receive"; + } + leaf actual-number { + type uint32; + description + "Actual Number of BFD Packets sent/received"; + } + } + + grouping BFD-MGMT-CONTROL-PACKET { + description + "BFD Control Packet"; + leaf version { + type uint8; + description + "Version"; + } + leaf diagnostic { + type Bfd-mgmt-session-diag; + description + "Diagnostic"; + } + leaf ihear-you { + type int32; + description + "I Hear You (v0)"; + } + leaf state { + type Bfd-mgmt-session-state; + description + "State (v1)"; + } + leaf demand { + type int32; + description + "Demand mode"; + } + leaf poll { + type int32; + description + "Poll bit"; + } + leaf final { + type int32; + description + "Final bit"; + } + leaf control-plane-independent { + type int32; + description + "BFD implementation does not share fate with its + control plane"; + } + leaf authentication-present { + type int32; + description + "Requesting authentication for the session"; + } + leaf detection-multiplier { + type uint32; + description + "Detection Multiplier"; + } + leaf length { + type uint32; + description + "Length"; + } + leaf my-discriminator { + type Bfd-discr; + description + "My Discriminator"; + } + leaf your-discriminator { + type Bfd-discr; + description + "Your Discriminator"; + } + leaf desired-minimum-transmit-interval { + type uint32; + units "microsecond"; + description + "Desired minimum transmit interval in + micro-seconds"; + } + leaf required-minimum-receive-interval { + type uint32; + units "microsecond"; + description + "Required receive interval in micro-seconds"; + } + leaf required-minimum-echo-receive-interval { + type uint32; + units "microsecond"; + description + "Required echo receive interval in micro-seconds"; + } + } + + grouping BFD-MGMT-SESSION-STATE-TIME { + description + "BFD Session State Transition Time Information"; + leaf days { + type uint32; + units "day"; + description + "Number of days since last session state + transition"; + } + leaf hours { + type uint8; + units "hour"; + description + "Number of hours since last session state + transition"; + } + leaf minutes { + type uint8; + units "minute"; + description + "Number of mins since last session state + transition"; + } + leaf seconds { + type uint8; + units "second"; + description + "Number of seconds since last session state + transition"; + } + } + + grouping IP-ADDR-T-UNION { + description + "IP ADDR T UNION"; + leaf afi { + type Bfd-af-id; + description + "AFI"; + } + leaf dummy { + when "../afi = 'bfd-af-id-none'" { + description + "../AFI = 'BFD_AF_ID_NONE'"; + } + type uint8; + description + "No Address"; + } + leaf ipv4 { + when "../afi = 'bfd-af-id-ipv4'" { + description + "../AFI = 'BFD_AF_ID_IPV4'"; + } + type Bfd-in-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../afi = 'bfd-af-id-ipv6'" { + description + "../AFI = 'BFD_AF_ID_IPV6'"; + } + type Bfd-in6-addr; + description + "IPv6 address type"; + } + } + + grouping BFD-MGMT-SESSION-STATUS-INFORMATION { + description + "BFD Agent detailed Session Information"; + container source-address { + description + "Source address"; + uses IP-ADDR-T-UNION; + } + container last-state-change { + description + "Time since last state change"; + uses BFD-MGMT-SESSION-STATE-TIME; + } + container transmit-packet { + description + "Transmit Packet"; + uses BFD-MGMT-CONTROL-PACKET; + } + container receive-packet { + description + "Receive Packet"; + uses BFD-MGMT-CONTROL-PACKET; + } + container status-brief-information { + description + "Brief Status Information"; + uses BFD-MGMT-SESSION-STATUS-INFORMATION-BRIEF; + } + container async-transmit-statistics { + description + "Statistics of Interval between Async Packets + Transmitted (in milli-seconds)"; + uses BFD-MGMT-INTERVAL-STATISTICS; + } + container async-receive-statistics { + description + "Statistics of Interval between Async Packets + Received (in milli-seconds)"; + uses BFD-MGMT-INTERVAL-STATISTICS; + } + container echo-transmit-statistics { + description + "Statistics of Interval between Echo Packets + Transmitted (in milli-seconds)"; + uses BFD-MGMT-INTERVAL-STATISTICS; + } + container echo-received-statistics { + description + "Statistics of Interval between Echo Packets + Received (in milli-seconds)"; + uses BFD-MGMT-INTERVAL-STATISTICS; + } + leaf sessiontype { + type Bfd-session; + description + "Session type"; + } + leaf session-subtype { + type string; + description + "Session subtype"; + } + leaf state { + type Bfd-mgmt-session-state; + description + "State"; + } + leaf local-discriminator { + type Bfd-discr; + description + "Session's Local discriminator"; + } + leaf remote-discriminator { + type Bfd-discr; + description + "Session's Remote discriminator"; + } + leaf last-failure-time-sec { + type uint64; + units "second"; + description + "Last Session Down Time (seconds)"; + } + leaf out-of-up-state-count { + type uint64; + description + "Number of times session moved out of UP state"; + } + leaf to-up-state-count { + type uint32; + description + "Number of times session state went to UP"; + } + leaf desired-minimum-echo-transmit-interval { + type uint32; + units "millisecond"; + description + "Desired minimum echo transmit interval in + milli-seconds"; + } + leaf remote-negotiated-interval { + type uint32; + units "millisecond"; + description + "Remote Negotiated Interval in milli-seconds"; + } + leaf latency-number { + type uint32; + description + "Number of Latency Samples. Time between Transmit + and Receive"; + } + leaf latency-minimum { + type uint32; + units "microsecond"; + description + "Minimum value of Latency (in micro-seconds)"; + } + leaf latency-maximum { + type uint32; + units "microsecond"; + description + "Maximum value of Latency (in micro-seconds)"; + } + leaf latency-average { + type uint32; + units "microsecond"; + description + "Average value of Latency (in micro-seconds)"; + } + leaf node-id { + type xr:Node-id; + description + "Location where session is housed"; + } + leaf internal-label { + type uint32; + description + "Internal Label"; + } + leaf reverse-label { + type uint32; + description + "Reverse Label"; + } + } + + grouping BFD-MGMT-SESSION-DETAIL { + description + "BFD Detailed Session Information"; + container status-information { + description + "Session status information"; + uses BFD-MGMT-SESSION-STATUS-INFORMATION; + } + container mp-download-state { + description + "MP Dowload State"; + uses BFD-MGMT-MP-DOWNLOAD-STATE-INFO; + } + container lsp-ping-info { + description + "LSP Ping Info"; + uses BFD-MGMT-LSP-PING-INFO; + } + list owner-information { + description + "Client applications owning the session"; + uses BFD-MGMT-SESSION-OWNER-INFORMATION; + } + list association-information { + description + "Association session information"; + uses BFD-MGMT-SESSION-ASSOCIATION-INFORMATION; + } + } + + grouping BFD-MGMT-MULTIPLE-PATHS { + description + "BFD Multiple paths Info"; + leaf session-subtype { + type string; + description + "Session subtype"; + } + leaf state { + type Bfd-mgmt-session-state; + description + "State"; + } + leaf local-discriminator-xr { + type Bfd-discr; + description + "Session's Local discriminator"; + } + leaf node-id { + type xr:Node-id; + description + "Location where session is housed"; + } + leaf incoming-label-xr { + type uint32; + description + "Incoming Label"; + } + leaf session-interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + + grouping BFD-MGMT-CLIENT-FLAGS { + description + "BFD Client Flags"; + leaf is-zombie-state { + type int32; + description + "Client is in Zombie State"; + } + leaf is-recreate-state { + type int32; + description + "Client is in Recreate State"; + } + } + + grouping BFD-MGMT-CLIENT-BRIEF-INFORMATION { + description + "BFD Brief Client Information"; + leaf name-xr { + type string { + length "0..257"; + } + description + "Client process name"; + } + leaf node-id { + type xr:Node-id; + description + "Location where client resides"; + } + leaf session-count { + type uint32; + description + "Number of sessions created by this client"; + } + } + + grouping BFD-MGMT-CLIENT-DETAIL-INFORMATION { + description + "BFD detailed Client Information"; + container brief { + description + "Brief client information"; + uses BFD-MGMT-CLIENT-BRIEF-INFORMATION; + } + container flags { + description + "The BFD Client Flags"; + uses BFD-MGMT-CLIENT-FLAGS; + } + leaf recreate-time { + type uint32; + units "second"; + description + "Recreate Time in Seconds"; + } + } + + grouping BFD-MGMT-PACKET-COUNT { + description + "BFD Agent Packet Count Info"; + leaf async-transmit-count { + type uint32; + description + "Number of Async packets transmitted"; + } + leaf async-receive-count { + type uint32; + description + "Number of Async packets received"; + } + leaf echo-transmit-count { + type uint32; + description + "Number of echo packets transmitted"; + } + leaf echo-receive-count { + type uint32; + description + "Number of echo packets received"; + } + leaf display-type { + type Bfd-mgmt-pkt-display; + description + "Packet Display Type"; + } + } + + grouping BFD-MGMT-SESSION-STATE-INFORMATION { + description + "BFD Session State Information"; + leaf total-count { + type uint32; + description + "Number of sessions in database"; + } + leaf down-count { + type uint32; + description + "Number of sessions in down state"; + } + leaf up-count { + type uint32; + description + "Number of sessions in up state"; + } + leaf unknown-count { + type uint32; + description + "Number of sessions in unknown state"; + } + } + + grouping BFD-MGMT-BFD-INFORMATION { + description + "BFD Summary Information"; + container session-state { + description + "Statistics of states for sessions"; + uses BFD-MGMT-SESSION-STATE-INFORMATION; + } + } + + grouping BFD-MGMT-ECHO-INTERVAL-MULTIPLIER-INFORMATION { + description + "BFD Agent Echo Interval and Detection Multiplier + Information"; + leaf negotiated-transmit-interval { + type uint32; + units "microsecond"; + description + "Negotiated transmit interval in micro-seconds"; + } + leaf detection-time { + type uint32; + units "microsecond"; + description + "Detection time in micro-seconds"; + } + leaf detection-multiplier { + type uint32; + description + "Detection Multiplier"; + } + } + + grouping BFD-MGMT-ASYNC-INTERVAL-MULTIPLIER-INFORMATION { + description + "BFD Agent Async Interval and Detection Multiplier + Information"; + leaf negotiated-remote-transmit-interval { + type uint32; + units "microsecond"; + description + "Negotiated remote transmit interval in + micro-seconds"; + } + leaf negotiated-local-transmit-interval { + type uint32; + units "microsecond"; + description + "Negotiated local transmit interval in + micro-seconds"; + } + leaf detection-time { + type uint32; + units "microsecond"; + description + "Detection time in micro-seconds"; + } + leaf detection-multiplier { + type uint32; + description + "Detection Multiplier"; + } + } + + grouping BFD-MGMT-SESSION-STATUS-INFORMATION-BRIEF { + description + "BFD Session Status Brief Information "; + container async-interval-multiplier { + description + "Async Interval and Detect Multiplier Information"; + uses BFD-MGMT-ASYNC-INTERVAL-MULTIPLIER-INFORMATION; + } + container echo-interval-multiplier { + description + "Echo Interval and Detect Multiplier Information"; + uses BFD-MGMT-ECHO-INTERVAL-MULTIPLIER-INFORMATION; + } + } + + grouping BFD-MGMT-SESSION-BRIEF { + description + "BFD Brief Session Information"; + container status-brief-information { + description + "Brief Status Information"; + uses BFD-MGMT-SESSION-STATUS-INFORMATION-BRIEF; + } + leaf node-id { + type xr:Node-id; + description + "Location where session is housed"; + } + leaf state { + type Bfd-mgmt-session-state; + description + "State"; + } + leaf session-type { + type Bfd-session; + description + "Session type"; + } + leaf session-subtype { + type string; + description + "Session subtype"; + } + leaf session-flags { + type uint32; + description + "Session Flags"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper.yang new file mode 100644 index 000000000..fb6fc5b94 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-bfd-oper.yang @@ -0,0 +1,1625 @@ +module Cisco-IOS-XR-ip-bfd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-bfd-oper"; + prefix ip-bfd-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-bfd-oper-sub1 { + revision-date 2023-01-06; + } + + 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 ip-bfd package operational data. + + This module contains definitions + for the following management objects: + bfd: Bidirectional Forwarding Detection(BFD) operational data + bfd-server-nodes: Table of information about BFD in the Node + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-06 { + description + "SessionDetailTable been marked as Hidden to avoid conflict with IPv4SingleHopSessionDetailTable. + 2022-07-12 + New count field added for bfd_mgmt_interval_statistics + 2022-06-14 + hello_tx/rx_count changed to async_tx/rx_count in bfd_mgmt_packet_count. + 2022-06-10 + New session types added for BFD Session Type Field."; + semver:module-version "3.0.0"; + } + revision 2020-05-20 { + description + "Added XML Support for IPv4 and IPv6SingleHopMultiPathTable via CSCvu15981."; + semver:module-version "2.0.0"; + } + revision 2019-10-03 { + description + "Addressed openconfig-bfd model open issues via CSCvp68925.Revision updated now."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container bfd { + config false; + description + "Bidirectional Forwarding Detection(BFD) + operational data"; + container label-session-briefs { + description + "Table of brief information about all Label BFD + sessions in the System"; + list label-session-brief { + description + "Brief information for a single Label BFD + session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container ipv4bf-do-mplste-tail-summary { + description + "Summary information of IPv4 BFD over MPLS-TE + Tail"; + uses BFD-MGMT-BFD-INFORMATION; + } + container ipv6-single-hop-counters { + description + "IPv6 single hop Counters"; + container ipv6-single-hop-packet-counters { + description + "Table of IPv6 single hop Packet counters"; + list ipv6-single-hop-packet-counter { + description + "Interface IPv6 single hop Packet counters"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container counters { + description + "IPv4 Counters"; + container packet-counters { + description + "Table of IPv4 Packet counters"; + list packet-counter { + description + "Interface IPv4 Packet counters"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container client-details { + description + "Table of detailed information about BFD clients"; + list client-detail { + key "client-name"; + description + "Detailed information of client"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client Name"; + } + uses BFD-MGMT-CLIENT-DETAIL-INFORMATION; + } + } + container ipv4-single-hop-summary { + description + "Summary information of BFD IPv4 singlehop + sessions"; + uses BFD-MGMT-BFD-INFORMATION; + } + container ipv6-single-hop-summary { + description + "Summary information of BFD IPv6 singlehop + sessions"; + uses BFD-MGMT-BFD-INFORMATION; + } + container label-multi-paths { + description + "Label multipath"; + list label-multi-path { + description + "Label multipath table"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-MULTIPLE-PATHS; + } + } + container ipv4-multi-hop-session-details { + description + "Table of detailed information about all IPv4 + multihop BFD sessions in the System "; + list ipv4-multi-hop-session-detail { + description + "Detailed information for a single IPv4 multihop + BFD session"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container ipv4-single-hop-session-details { + description + "Table of detailed information about all IPv4 + singlehop BFD sessions in the System "; + list ipv4-single-hop-session-detail { + description + "Detailed information for a single IPv4 + singlehop BFD session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session Discr"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container ipv4-multi-hop-session-briefs { + description + "Table of brief information about all IPv4 + multihop BFD sessions in the System"; + list ipv4-multi-hop-session-brief { + description + "Brief information for a single IPv4 multihop + BFD session"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container generic-summaries { + description + "Generic summary information about BFD location"; + list generic-summary { + key "location"; + description + "Generic summary information for bfd location + table"; + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-SUMMARY; + } + } + container ipv6-single-hop-multi-paths { + description + "IPv6 single hop multipath"; + list ipv6-single-hop-multi-path { + description + "IPv6 single hop multipath table"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session's Local discriminator"; + } + uses BFD-MGMT-MULTIPLE-PATHS; + } + } + container ipv4-single-hop-node-location-summaries { + description + "Table of summary information about BFD IPv4 + singlehop sessions per location"; + list ipv4-single-hop-node-location-summary { + key "location"; + description + "Summary information for BFD IPv4 singlehop + sessions for location"; + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-BFD-LOC-INFORMATION; + } + } + container label-summary { + description + "Summary information of Label BFD"; + uses BFD-MGMT-BFD-INFORMATION; + } + container ipv4bf-do-mplste-head-session-briefs { + description + "Table of brief information about all IPv4 BFD + over MPLS-TE Head sessions in the System"; + list ipv4bf-do-mplste-head-session-brief { + description + "Brief information for a single IPv4 BFD over + MPLS-TE Head session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf fec-subgroup-id { + type uint32; + description + "FEC Subgroup ID"; + } + leaf feclspid { + type uint32; + description + "FEC LSP ID"; + } + leaf fec-tunnel-id { + type uint32; + description + "FEC Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "FEC Extended Tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address-no-zone; + description + "FEC Source"; + } + leaf fec-destination { + type inet:ipv4-address-no-zone; + description + "FEC Destination"; + } + leaf fecp2mpid { + type uint32; + description + "FEC P2MP ID"; + } + leaf fec-subgroup-originator { + type inet:ipv4-address-no-zone; + description + "FEC Subgroup originator"; + } + leaf fec-ctype { + type uint32; + description + "FEC C Type"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container ipv4bf-do-mplste-tail-session-details { + description + "Table of detailed information about all IPv4 BFD + over MPLS-TE Tail sessions in the System"; + list ipv4bf-do-mplste-tail-session-detail { + description + "Detailed information for a single IPv4 BFD over + MPLS-TE Tail session"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf fec-subgroup-id { + type uint32; + description + "FEC Subgroup ID"; + } + leaf feclspid { + type uint32; + description + "FEC LSP ID"; + } + leaf fec-tunnel-id { + type uint32; + description + "FEC Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "FEC Extended Tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address-no-zone; + description + "FEC Source"; + } + leaf fec-destination { + type inet:ipv4-address-no-zone; + description + "FEC Destination"; + } + leaf fecp2mpid { + type uint32; + description + "FEC P2MP ID"; + } + leaf fec-subgroup-originator { + type inet:ipv4-address-no-zone; + description + "FEC Subgroup originator"; + } + leaf fec-ctype { + type uint32; + description + "FEC C Type"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container ipv4-multi-hop-node-location-summaries { + description + "Table of summary information about BFD IPv4 + multihop sessions per location"; + list ipv4-multi-hop-node-location-summary { + key "location"; + description + "Summary information for BFD IPv4 multihop + sessions for location"; + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-BFD-LOC-INFORMATION; + } + } + container ipv4bf-do-mplste-tail-session-briefs { + description + "Table of brief information about all IPv4 BFD + over MPLS-TE Tail sessions in the System"; + list ipv4bf-do-mplste-tail-session-brief { + description + "Brief information for a single IPv4 BFD over + MPLS-TE session"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf fec-subgroup-id { + type uint32; + description + "FEC Subgroup ID"; + } + leaf feclspid { + type uint32; + description + "FEC LSP ID"; + } + leaf fec-tunnel-id { + type uint32; + description + "FEC Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "FEC Extended Tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address-no-zone; + description + "FEC Source"; + } + leaf fec-destination { + type inet:ipv4-address-no-zone; + description + "FEC Destination"; + } + leaf fecp2mpid { + type uint32; + description + "FEC P2MP ID"; + } + leaf fec-subgroup-originator { + type inet:ipv4-address-no-zone; + description + "FEC Subgroup originator"; + } + leaf fec-ctype { + type uint32; + description + "FEC C Type"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container ipv6-multi-hop-node-location-summaries { + description + "Table of summary information about BFD IPv6 + multihop sessions per location"; + list ipv6-multi-hop-node-location-summary { + key "location"; + description + "Summary information for BFD IPv6 multihop + sessions for location"; + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-BFD-LOC-INFORMATION; + } + } + container ip-single-hop-session-details { + description + "Table of detailed information about all IP + singlehop BFD sessions in the System "; + list ip-single-hop-session-detail { + description + "Detailed information for a single IPv4/IPv6 + singlehop BFD session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session Discr"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container ipv4-multi-hop-summary { + description + "Summary information of BFD IPv4 multihop + sessions"; + uses BFD-MGMT-BFD-INFORMATION; + } + container ipv4-single-hop-counters { + description + "IPv4 single hop Counters"; + container ipv4-single-hop-packet-counters { + description + "Table of IPv4 single hop Packet counters"; + list ipv4-single-hop-packet-counter { + description + "Interface IPv4 single hop Packet counters"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container ipv6-multi-hop-session-details { + description + "Table of detailed information about all IPv6 + multihop BFD sessions in the System "; + list ipv6-multi-hop-session-detail { + description + "Detailed information for a single IPv6 multihop + BFD session"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container ipv6-multi-hop-multi-paths { + description + "IPv6 multi hop multipath"; + list ipv6-multi-hop-multi-path { + description + "IPv6 multihop multipath table"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-MULTIPLE-PATHS; + } + } + container ipv4bf-do-mplste-head-counters { + description + "IPv4 BFD over MPLS-TE Counters"; + container ipv4bf-do-mplste-head-packet-counters { + description + "Table of IPv4 BFD over MPLS-TE Packet counters"; + list ipv4bf-do-mplste-head-packet-counter { + description + "Interface IPv4 BFD over MPLS-TE Packet + counters"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container session-mibs { + description + "BFD session MIB database"; + list session-mib { + key "discriminator"; + description + "Brief information for BFD session MIB"; + leaf discriminator { + type uint32 { + range "1..4294967295"; + } + description + "Session Discr"; + } + uses BFD-MGMT-MIB-DATABASE; + } + } + container ipv6-multi-hop-summary { + description + "Summary information of BFD IPv6 multihop + sessions"; + uses BFD-MGMT-BFD-INFORMATION; + } + container label-summary-nodes { + description + "Table of summary about Label BFD sessions for + location"; + list label-summary-node { + key "location-name"; + description + "Summary of Label BFD "; + leaf location-name { + type xr:Cisco-ios-xr-string; + description + "Location name"; + } + uses BFD-MGMT-BFD-LOC-INFORMATION; + } + } + container ipv6-multi-hop-session-briefs { + description + "Table of brief information about all IPv6 + multihop BFD sessions in the System"; + list ipv6-multi-hop-session-brief { + description + "Brief information for a single IPv6 multihop + BFD session"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container session-briefs { + description + "Table of brief information about singlehop IPv4 + BFD sessions in the System"; + list session-brief { + description + "Brief information for a single IPv4 singlehop + BFD session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session Discr"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container ipv6-single-hop-node-location-summaries { + description + "Table of summary information about BFD IPv6 + singlehop sessions per location"; + list ipv6-single-hop-node-location-summary { + key "location"; + description + "Summary information for BFD IPv6 singlehop + sessions for location"; + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-BFD-LOC-INFORMATION; + } + } + container summary { + description + "Summary information of BFD IPv4 singlehop + sessions"; + uses BFD-MGMT-BFD-INFORMATION; + } + container ipv4bfd-mplste-tail-node-summaries { + description + "Table of summary about IPv4 TE tail BFD sessions + for location"; + list ipv4bfd-mplste-tail-node-summary { + key "location-name"; + description + "Summary of IPv4 BFD over MPLS-TE tail"; + leaf location-name { + type xr:Cisco-ios-xr-string; + description + "Location name"; + } + uses BFD-MGMT-BFD-LOC-INFORMATION; + } + } + container ipv4bfd-mplste-head-summary-nodes { + description + "Table of summary about IPv4 TE head BFD sessions + for location"; + list ipv4bfd-mplste-head-summary-node { + key "location-name"; + description + "Summary of IPv4 BFD over MPLS-TE head"; + leaf location-name { + type xr:Cisco-ios-xr-string; + description + "Location name"; + } + uses BFD-MGMT-BFD-LOC-INFORMATION; + } + } + container label-session-details { + description + "Table of detailed information about all Label + BFD sessions in the System "; + list label-session-detail { + description + "Detailed information for a single BFD session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container ipv6-single-hop-session-details { + description + "Table of detailed information about all IPv6 + singlehop BFD sessions in the System "; + list ipv6-single-hop-session-detail { + description + "Detailed information for a single IPv6 + singlehop BFD session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session Discr"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container ipv4-multi-hop-counters { + description + "IPv4 multiple hop Counters"; + container ipv4-multi-hop-packet-counters { + description + "Table of IPv4 multiple hop Packet counters"; + list ipv4-multi-hop-packet-counter { + description + "IPv4 multiple hop Packet counters"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container ipv4-single-hop-multi-paths { + description + "IPv4 single hop multipath"; + list ipv4-single-hop-multi-path { + description + "IPv4 single hop multipath table"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session's Local discriminator"; + } + uses BFD-MGMT-MULTIPLE-PATHS; + } + } + container ipv4-single-hop-session-briefs { + description + "Table of brief information about all IPv4 + singlehop BFD sessions in the System"; + list ipv4-single-hop-session-brief { + description + "Brief information for a single IPv4 singlehop + BFD session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session Discr"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container ipv6-multi-hop-counters { + description + "IPv6 multiple hop Counters"; + container ipv6-multi-hop-packet-counters { + description + "Table of IPv6 multiple hop Packet counters"; + list ipv6-multi-hop-packet-counter { + description + "IPv4 multiple hop Packet counters"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container label-counters { + description + "Label Counters"; + container label-packet-counters { + description + "Table of Label Packet counters"; + list label-packet-counter { + description + "Interface Label Packet counters"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container ipv4bf-do-mplste-head-session-details { + description + "Table of detailed information about all IPv4 BFD + over MPLS-TE Head sessions in the System"; + list ipv4bf-do-mplste-head-session-detail { + description + "Detailed information for a single IPv4 BFD over + MPLS-TE head session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf fec-subgroup-id { + type uint32; + description + "FEC Subgroup ID"; + } + leaf feclspid { + type uint32; + description + "FEC LSP ID"; + } + leaf fec-tunnel-id { + type uint32; + description + "FEC Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "FEC Extended Tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address-no-zone; + description + "FEC Source"; + } + leaf fec-destination { + type inet:ipv4-address-no-zone; + description + "FEC Destination"; + } + leaf fecp2mpid { + type uint32; + description + "FEC P2MP ID"; + } + leaf fec-subgroup-originator { + type inet:ipv4-address-no-zone; + description + "FEC Subgroup originator"; + } + leaf fec-ctype { + type uint32; + description + "FEC C Type"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-SESSION-DETAIL; + } + } + container relation-briefs { + description + "Table of brief information about all BFD + relations in the System"; + list relation-brief { + description + "Brief information for relation of a single BFD + session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + uses BFD-MGMT-RELATION-BRIEF; + } + } + container client-briefs { + description + "Table of Brief information about BFD clients"; + list client-brief { + key "name"; + description + "Brief information of client"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Client Name"; + } + uses BFD-MGMT-CLIENT-BRIEF-INFORMATION; + } + } + container ipv4bf-do-mplste-head-multi-paths { + description + "IPv4 BFD over MPLS-TE Head multipath"; + list ipv4bf-do-mplste-head-multi-path { + description + "Label multipath table"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf fec-subgroup-id { + type uint32; + description + "FEC Subgroup ID"; + } + leaf feclspid { + type uint32; + description + "FEC LSP ID"; + } + leaf fec-tunnel-id { + type uint32; + description + "FEC Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "FEC Extended Tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address-no-zone; + description + "FEC Source"; + } + leaf fec-destination { + type inet:ipv4-address-no-zone; + description + "FEC Destination"; + } + leaf fecp2mpid { + type uint32; + description + "FEC P2MP ID"; + } + leaf fec-subgroup-originator { + type inet:ipv4-address-no-zone; + description + "FEC Subgroup originator"; + } + leaf fec-ctype { + type uint32; + description + "FEC C Type"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-MULTIPLE-PATHS; + } + } + container relation-details { + description + "Table of detail information about all BFD + relations in the System"; + list relation-detail { + description + "Detail information for relation of a single BFD + session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + uses BFD-MGMT-RELATION; + } + } + container ipv4bf-do-mplste-tail-counters { + description + "IPv4 BFD over MPLS-TE Counters"; + container ipv4bf-do-mplste-tail-packet-counters { + description + "Table of IPv4 BFD over MPLS-TE Packet counters"; + list ipv4bf-do-mplste-tail-packet-counter { + description + "Interface IPv4 BFD over MPLS-TE Packet + counters"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf fec-subgroup-id { + type uint32; + description + "FEC Subgroup ID"; + } + leaf feclspid { + type uint32; + description + "FEC LSP ID"; + } + leaf fec-tunnel-id { + type uint32; + description + "FEC Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "FEC Extended Tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address-no-zone; + description + "FEC Source"; + } + leaf fec-destination { + type inet:ipv4-address-no-zone; + description + "FEC Destination"; + } + leaf fecp2mpid { + type uint32; + description + "FEC P2MP ID"; + } + leaf fec-subgroup-originator { + type inet:ipv4-address-no-zone; + description + "FEC Subgroup originator"; + } + leaf fec-ctype { + type uint32; + description + "FEC C Type"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-PACKET-COUNT; + } + } + } + container ipv6-single-hop-session-briefs { + description + "Table of brief information about all IPv6 + singlehop BFD sessions in the System"; + list ipv6-single-hop-session-brief { + description + "Brief information for a single IPv6 singlehop + BFD session"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf local-discriminator { + type uint32; + description + "Session Discr"; + } + uses BFD-MGMT-SESSION-BRIEF; + } + } + container ipv4bf-do-mplste-tail-multi-paths { + description + "IPv4 BFD over MPLS-TE Tail multipath"; + list ipv4bf-do-mplste-tail-multi-path { + description + "Label multipath table"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf incoming-label { + type uint32; + description + "Incoming Label"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf fec-subgroup-id { + type uint32; + description + "FEC Subgroup ID"; + } + leaf feclspid { + type uint32; + description + "FEC LSP ID"; + } + leaf fec-tunnel-id { + type uint32; + description + "FEC Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "FEC Extended Tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address-no-zone; + description + "FEC Source"; + } + leaf fec-destination { + type inet:ipv4-address-no-zone; + description + "FEC Destination"; + } + leaf fecp2mpid { + type uint32; + description + "FEC P2MP ID"; + } + leaf fec-subgroup-originator { + type inet:ipv4-address-no-zone; + description + "FEC Subgroup originator"; + } + leaf fec-ctype { + type uint32; + description + "FEC C Type"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + uses BFD-MGMT-MULTIPLE-PATHS; + } + } + container ipv4-multi-hop-multi-paths { + description + "IPv4 multi-hop multipath"; + list ipv4-multi-hop-multi-path { + description + "IPv4 multi hop multipath table"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination Address"; + } + leaf location { + type xr:Node-id; + description + "Location"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses BFD-MGMT-MULTIPLE-PATHS; + } + } + container ipv4bf-do-mplste-head-summary { + description + "Summary information of IPv4 BFD over MPLS-TE + Head"; + uses BFD-MGMT-BFD-INFORMATION; + } + } + container bfd-server-nodes { + config false; + description + "Table of information about BFD in the Node"; + list bfd-server-node { + key "location"; + description + "Table of information about BFD per Node"; + container client-detail-locs { + description + "Table of detailed information about BFD clients"; + list client-detail-loc { + key "client-name"; + description + "Detailed information of client"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client Name"; + } + uses BFD-MGMT-CLIENT-DETAIL-INFORMATION; + } + } + container client-brief-locs { + description + "Table of Brief information about BFD clients"; + list client-brief-loc { + key "name"; + description + "Brief information of client"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Client Name"; + } + uses BFD-MGMT-CLIENT-BRIEF-INFORMATION; + } + } + leaf location { + type xr:Node-id; + description + "Location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-cfg.yang new file mode 100644 index 000000000..19d718697 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-cfg.yang @@ -0,0 +1,345 @@ +module Cisco-IOS-XR-ip-daps-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-daps-cfg"; + prefix ip-daps-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ip-daps package configuration. + + This module contains definitions + for the following management objects: + address-pool-service: Address Pool configuration data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-15 { + description + "Onfly pool change support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container address-pool-service { + description + "Address Pool configuration data"; + container onfly { + description + "Enable onfly pool config"; + leaf pppoe { + type empty; + description + "onfly pool edit/delete, ipv4 release ip enable"; + } + } + container vrfs { + description + "Enter VRF specific config mode"; + list vrf { + key "vrf-name"; + description + "Specify VRF Name"; + container ipv6 { + description + "Enter IPv6 specific mode"; + container pools { + description + "IPv6 Pool Name"; + list pool { + key "ipv6-pool-name"; + description + "Enter the IPv6 Pool name"; + container address-ranges { + description + "Specify address range for allocation"; + list address-range { + key "start-address"; + description + "None"; + leaf start-address { + type inet:ip-address-no-zone; + description + "Start address of the range"; + } + leaf blocked { + type uint32; + description + "Blocked flag"; + } + leaf end-address { + type inet:ip-address-no-zone; + mandatory true; + description + "End Address of the range"; + } + } + } + container excludes { + description + "Exclude IPv6 addresses / prefixes"; + list exclude { + key "start-address"; + description + "None"; + leaf start-address { + type inet:ip-address-no-zone; + description + "First Address in IPv6 exclude range"; + } + leaf end-address { + type inet:ip-address-no-zone; + mandatory true; + description + "Last address in exclude Range"; + } + } + } + container utilization-mark { + presence "Indicates a utilization-mark node is configured."; + description + "Specify utilization mark"; + leaf high-mark { + type uint32 { + range "0..100"; + } + units "percentage"; + mandatory true; + description + "Specify numerical value as percentage"; + } + leaf low-mark { + type uint32 { + range "0..100"; + } + units "percentage"; + mandatory true; + description + "Specify numerical value as percentage"; + } + } + container prefix-ranges { + description + "Specify prefix range for allocation"; + list prefix-range { + key "start-prefix"; + description + "None"; + leaf start-prefix { + type inet:ip-address-no-zone; + description + "First prefix of range"; + } + leaf blocked { + type uint32; + description + "Blocked flag"; + } + leaf end-prefix { + type inet:ip-address-no-zone; + mandatory true; + description + "Last prefix of range"; + } + } + } + container networks { + description + "Specify network for allocation"; + list network { + key "prefix"; + description + "None"; + leaf prefix { + type inet:ip-address-no-zone; + description + "None"; + } + leaf blocked { + type uint32; + description + "Blocked flag"; + } + leaf prefix-length { + type uint32 { + range "1..128"; + } + mandatory true; + description + "Prefix length for the IPv6 Prefix"; + } + } + } + leaf prefix-length { + type uint32 { + range "1..128"; + } + description + "Enter the prefix-length for the Pool"; + } + leaf ipv6-pool-name { + type xr:Cisco-ios-xr-string; + description + "Enter the IPv6 Pool name"; + } + } + } + } + container ipv4 { + description + "Enter IPv4 specific configuration"; + container pools { + description + "IPv4 Pool Table"; + list pool { + key "pool-name"; + description + "IPv4 Pool name"; + container address-ranges { + description + "address range for allocation"; + list address-range { + key "start-address"; + description + "Specify first address in range"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "Specify first address of the range"; + } + leaf end-address { + type inet:ip-address-no-zone; + mandatory true; + description + "Last address of the range"; + } + leaf blocked { + type uint32; + description + "Blocked flag"; + } + } + } + container excludes { + description + "Exclude addresses"; + list exclude { + key "start-address"; + description + "First address in range"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "First address in exclude range"; + } + leaf end-address { + type inet:ip-address-no-zone; + mandatory true; + description + "Last address in excluded range"; + } + } + } + container utilization-mark { + presence "Indicates a utilization-mark node is configured."; + description + "Specify utilization mark"; + leaf high { + type uint32 { + range "0..100"; + } + units "percentage"; + mandatory true; + description + "Specify numerical value as percentage"; + } + leaf low { + type uint32 { + range "0..100"; + } + units "percentage"; + mandatory true; + description + "Specify numerical value as percentage"; + } + } + container networks { + description + "Specify network for allocation"; + list network { + key "ipv4-prefix"; + description + "Network Prefix"; + leaf ipv4-prefix { + type inet:ip-address-no-zone; + description + "None"; + } + leaf blocked { + type uint32; + description + "Blocked flag"; + } + leaf prefix-length { + type uint32; + mandatory true; + description + "Subnet Length for IPv4 subnet"; + } + leaf default-router { + type inet:ipv4-address-no-zone; + description + "Default Gateway for IPv4 subnet"; + } + } + } + leaf pool-name { + type xr:Cisco-ios-xr-string; + description + "Enter the IPv4 Pool name"; + } + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "none"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-mib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-mib-cfg.yang new file mode 100644 index 000000000..32f1f1c9b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-mib-cfg.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-ip-daps-mib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-daps-mib-cfg"; + prefix ip-daps-mib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 ip-daps-mib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container addresspool-mib { + description + "Enable SNMP daps traps"; + leaf high { + type boolean; + description + "Enable SNMP Address Pool High Threshold trap"; + } + leaf low { + type boolean; + description + "Enable SNMP Address Pool Low Threshold trap"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper-sub1.yang new file mode 100644 index 000000000..8f53a15e4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper-sub1.yang @@ -0,0 +1,553 @@ +submodule Cisco-IOS-XR-ip-daps-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-daps-oper { + prefix Cisco-IOS-XR-ip-daps-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-daps package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Daps-serg-role { + type enumeration { + enum "none" { + description + "Role None"; + } + enum "master" { + description + "Role Master"; + } + enum "slave" { + description + "Role Slave"; + } + } + description + "DAPS SERG role"; + } + + typedef Daps-client { + type enumeration { + enum "none" { + value 0; + description + "Client type is None"; + } + enum "ppp" { + value 1; + description + "Client type is PPP"; + } + enum "dhcp" { + value 2; + description + "Client type is DHCP"; + } + enum "dhcpv6" { + value 4; + description + "Client type is DHCPv6"; + } + enum "ipv6nd" { + value 5; + description + "Client type is IPv6ND"; + } + } + description + "DAPS client types"; + } + + typedef Ipv6-addr { + type inet:ipv6-address; + description + "Ipv6 addr"; + } + + typedef Ip-addr { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4 address"; + } + enum "ipv6" { + value 10; + description + "IPv6 address"; + } + } + description + "Address type"; + } + + grouping DAPS-VRF-POOL-INFO { + description + "VRF pool information"; + leaf pool-name { + type string { + length "0..64"; + } + description + "Pool name"; + } + leaf vrf-name { + type string { + length "0..64"; + } + description + "VRF name"; + } + leaf used { + type uint32; + description + "Used allocations"; + } + leaf excluded { + type uint32; + description + "Excluded allocations"; + } + leaf free { + type uint32; + description + "Free allocations"; + } + leaf total { + type uint32; + description + "Total allocations"; + } + } + + grouping DAPS-VRF-ALLOCATION-SUMMARY { + description + "VRF allocation summary"; + leaf used { + type uint32; + description + "Used allocations"; + } + leaf excluded { + type uint32; + description + "Excluded allocations"; + } + leaf free { + type uint32; + description + "Free allocations"; + } + leaf total { + type uint32; + description + "Total allocations"; + } + leaf high-utilization-threshold { + type uint8; + units "percentage"; + description + "High utilization threshold in percentage"; + } + leaf low-utilization-threshold { + type uint8; + units "percentage"; + description + "Low utilization threshold in percentage"; + } + leaf utilization { + type uint8; + units "percentage"; + description + "Current utilization in percentage"; + } + } + + grouping DAPS-VRF-INFO { + description + " VRF information"; + container allocation-summary { + description + "Allocation summary"; + uses DAPS-VRF-ALLOCATION-SUMMARY; + } + list pools { + description + "Pools data"; + uses DAPS-VRF-POOL-INFO; + } + } + + grouping IP-DAPS-SHOW-POOL-TOTAL-UTIL { + description + "IP DAPS pool total utilization"; + leaf total-utilization-high-mark { + type uint8; + description + "High utilization mark"; + } + leaf total-utilization-low-mark { + type uint8; + description + "Low utilization mark"; + } + leaf current-total-utilization { + type uint8; + description + "Current utilization"; + } + } + + grouping DAPS-POOL-SERG-INFO { + description + "SERG info"; + leaf preferred-role { + type Daps-serg-role; + description + "SERG PreferredRole"; + } + leaf peer-down { + type boolean; + description + "Peer Down"; + } + leaf verify-pend { + type boolean; + description + "Verify Pending"; + } + } + + grouping IP-DAPS-SHOW-POOL-CFG { + description + "IP DAPS pool configuration"; + container serg-info { + description + "SERG Info"; + uses DAPS-POOL-SERG-INFO; + } + leaf pool-name { + type string { + length "0..64"; + } + description + "Pool name"; + } + leaf pool-id { + type uint32; + description + "Pool ID for MIBS"; + } + leaf vrf-name { + type string { + length "0..64"; + } + description + "VRF name"; + } + leaf pool-scope { + type string { + length "0..64"; + } + description + "Pool Scope"; + } + leaf pool-prefix-length { + type uint32; + description + "Prefix length"; + } + leaf high-utilization-mark { + type uint8; + description + "High utilization mark"; + } + leaf low-utilization-mark { + type uint8; + description + "Low utilization mark"; + } + leaf current-utilization { + type uint8; + description + "Current utilization"; + } + leaf utilization-high-count { + type uint32; + description + "Number of times High utilization threshold was + crossed"; + } + leaf utilization-low-count { + type uint32; + description + "Number of times Low utilization threshold was + crossed"; + } + } + + grouping DAPS-POOL-IN-USE-ADDRESS { + description + "In-use address data"; + container address { + description + "Client address"; + uses IP-ADDR-ST; + } + leaf client-type { + type Daps-client; + description + "Client type"; + } + } + + grouping DAPS-POOL-RANGE { + description + "Pool address range data"; + container start-address { + description + "Range start"; + uses IP-ADDR-ST; + } + container end-address { + description + "Range end"; + uses IP-ADDR-ST; + } + leaf used { + type uint32; + description + "Used allocations"; + } + leaf excluded { + type uint32; + description + "Excluded allocations"; + } + leaf free { + type uint32; + description + "Free allocations"; + } + } + + grouping DAPS-POOL-THRESHOLD { + description + "Pool threshold information"; + leaf threshold { + type uint32; + units "percentage"; + description + "Threshold in percentage"; + } + leaf triggers { + type uint32; + description + "Number of Triggers"; + } + leaf time-last-crossed { + type string; + description + "Last time at which threshold crossed in DDD MMM + DD HH:MM:SS YYYY format eg: Tue Apr 11 21:30:47 + 2011"; + } + } + + grouping DAPS-POOL-ALLOCATIONS { + description + "Pool allocations data"; + container high-threshold { + description + "High threshold data"; + uses DAPS-POOL-THRESHOLD; + } + container low-threshold { + description + "Low threshold data"; + uses DAPS-POOL-THRESHOLD; + } + leaf vrf-name { + type string { + length "0..64"; + } + description + "VRF name"; + } + leaf used { + type uint32; + description + "Used allocations"; + } + leaf excluded { + type uint32; + description + "Excluded allocations"; + } + leaf free { + type uint32; + description + "Free allocations"; + } + leaf total { + type uint32; + description + "Total allocations"; + } + leaf utilization { + type uint32; + units "percentage"; + description + "Current utilization in percentage"; + } + } + + grouping DAPS-POOL-DETAIL { + description + "Pool data"; + container pool-allocations { + description + "Pool allocations"; + uses DAPS-POOL-ALLOCATIONS; + } + list address-range { + description + "Address ranges"; + uses DAPS-POOL-RANGE; + } + list in-use-address { + description + "In-use addresses"; + uses DAPS-POOL-IN-USE-ADDRESS; + } + } + + grouping IP-ADDR-UN { + description + "Daps Address"; + leaf address-family { + type Ip-addr; + description + "AddressFamily"; + } + leaf ipv4-address { + when "../address-family = 'ipv4'" { + description + "../AddressFamily = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../address-family = 'ipv6'" { + description + "../AddressFamily = 'IPv6'"; + } + type Ipv6-addr; + description + "IPv6 address"; + } + } + + grouping IP-ADDR-ST { + description + "IP address information"; + container address { + description + "Address"; + uses IP-ADDR-UN; + } + } + + grouping IP-DAPS-SHOW-POOL-BRIEF { + description + "IP DAPS pool parameters"; + container start-address-xr { + description + "Range start"; + uses IP-ADDR-ST; + } + container end-address { + description + "Range end"; + uses IP-ADDR-ST; + } + container default-router { + description + "Default router"; + uses IP-ADDR-ST; + } + leaf pool-name { + type string { + length "0..64"; + } + description + "Pool name"; + } + leaf vrf-name { + type string { + length "0..64"; + } + description + "VRF name"; + } + leaf allocated-addresses { + type uint32; + description + "Number of addresses allocated"; + } + leaf free-addresses { + type uint32; + description + "Number of addresses free"; + } + leaf excluded-addresses { + type uint32; + description + "Number of addresses excluded"; + } + leaf network-blocked-status { + type uint32; + description + "Is network blocked"; + } + leaf network-blocked-status-trp { + type uint32; + description + "Is network blocked trap send"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper.yang new file mode 100644 index 000000000..0e433a723 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-daps-oper.yang @@ -0,0 +1,138 @@ +module Cisco-IOS-XR-ip-daps-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-daps-oper"; + prefix ip-daps-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-daps-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-daps package operational data. + + This module contains definitions + for the following management objects: + address-pool-service: Pool operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container address-pool-service { + config false; + description + "Pool operational data"; + container nodes { + description + "Pool operational data for a particular location"; + list node { + key "node-name"; + description + "Location. For eg., 0/1/CPU0"; + container pools { + description + "List of IPv4/IPv6 pool data"; + list pool { + key "pool-name"; + description + "Pool data by pool name"; + container address-ranges { + description + "Summary info for pool"; + list address-range { + key "start-address"; + description + "Start Address of the Range"; + leaf start-address { + type inet:ip-address-no-zone; + description + "IP Address"; + } + uses IP-DAPS-SHOW-POOL-BRIEF; + } + } + container allocated-addresses { + description + "Detailed info for the Pool"; + uses DAPS-POOL-DETAIL; + } + container configuration { + description + "Configuration info for pool"; + uses IP-DAPS-SHOW-POOL-CFG; + } + leaf pool-name { + type xr:Cisco-ios-xr-string; + description + "The pool name"; + } + } + } + container total-utilization { + description + "Show total utilization for pool"; + uses IP-DAPS-SHOW-POOL-TOTAL-UTIL; + } + container vrfs { + description + "Pool VRF data"; + list vrf { + key "vrf-name"; + description + "VRF level Pool information"; + container ipv4 { + description + "IPv4 pool VRF data"; + uses DAPS-VRF-INFO; + } + container ipv6 { + description + "IPv6 Pool VRF data"; + uses DAPS-VRF-INFO; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The VRF name"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-cfg.yang new file mode 100644 index 000000000..cef1ea558 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-cfg.yang @@ -0,0 +1,189 @@ +module Cisco-IOS-XR-ip-domain-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-domain-cfg"; + prefix ip-domain-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ip-domain package configuration. + + This module contains definitions + for the following management objects: + ip-domain: IP domain configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-19 { + description + "Domains default flows Disable support."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-05-13 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container ip-domain { + description + "IP domain configuration"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "VRF specific data"; + container ipv6-hosts { + description + "IPv6 host"; + list ipv6-host { + key "host-name"; + description + "Host name and up to 4 host IPv6 addresses"; + leaf host-name { + type string; + description + "A hostname"; + } + leaf-list address { + type inet:ipv6-address-no-zone; + min-elements 1; + max-elements "4"; + description + "Host IPv6 addresses"; + } + } + } + container servers { + description + "Name server addresses"; + list server { + key "order server-address"; + description + "Name server address"; + leaf order { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf server-address { + type inet:ip-address-no-zone; + description + "A name server address"; + } + } + } + container lists { + description + "Domain names to complete unqualified host + names"; + list list { + key "order list-name"; + description + "Domain name to complete unqualified host + names"; + leaf order { + type uint32; + description + "This is used to sort the names in the order + of precedence"; + } + leaf list-name { + type xr:Cisco-ios-xr-string; + description + "A domain name"; + } + } + } + container ipv4-hosts { + description + "IPv4 host"; + list ipv4-host { + key "host-name"; + description + "Host name and up to 8 host IPv4 addresses"; + leaf host-name { + type string; + description + "A hostname"; + } + leaf-list address { + type inet:ipv4-address-no-zone; + min-elements 1; + max-elements "8"; + description + "Host IPv4 addresses"; + } + } + } + leaf lookup { + type empty; + description + "Disable Domain Name System hostname + translation"; + } + leaf multicast-domain { + type string; + description + "Default multicast domain name"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + connections"; + } + leaf name { + type string; + description + "Default domain name"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF instance"; + } + } + } + leaf default-flows-disable { + type empty; + description + "Disable default flows programming"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper-sub1.yang new file mode 100644 index 000000000..4bc261fb3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper-sub1.yang @@ -0,0 +1,196 @@ +submodule Cisco-IOS-XR-ip-domain-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-domain-oper { + prefix Cisco-IOS-XR-ip-domain-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-domain package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-09-29 { + description + "IOS XR 6.0.0 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + identity Host-address-base { + description + "Base identity for Host-address"; + } + + identity ipv4 { + base Host-address-base; + description + "IPv4 family address"; + } + + identity ipv6 { + base Host-address-base; + description + "IPv6 family address"; + } + + typedef String1 { + type string { + length "0..256"; + } + description + "String1"; + } + + typedef Domain-ipv6-address { + type inet:ipv6-address; + description + "Domain ipv6 address"; + } + + typedef Host-address { + type identityref { + base Host-address-base; + } + description + "Host Address Type"; + } + + typedef Server-domain-lkup { + type enumeration { + enum "static-mapping" { + value 0; + description + "Static mapping"; + } + enum "domain-service" { + value 1; + description + "Domain service"; + } + } + description + "Domain look up"; + } + + grouping DOMAIN-HOST-ALIAS-BAG { + description + "Domain host alias"; + leaf-list host-alias { + type String1; + description + "Host alias list"; + } + } + + grouping DOMAIN-SH-HOSTS-BAG { + description + "Domain hosts"; + container host-alias-list { + description + "Host alias"; + uses DOMAIN-HOST-ALIAS-BAG; + } + leaf af-name { + type Host-address; + description + "Address type"; + } + leaf age { + type uint16; + units "hour"; + description + "Age in hours"; + } + list host-address { + description + "Host address list"; + uses DOMAIN-IPADDRESS; + } + } + + grouping DOMAIN-IPADDRESS { + description + "IP Address"; + leaf af-name { + type Host-address; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Domain-ipv6-address; + description + "IPv6 address"; + } + } + + grouping DOMAIN-SH-SERVER-BAG { + description + "Domain servers"; + leaf domain-lookup { + type Server-domain-lkup; + description + "Domain lookup"; + } + leaf domain-name { + type string { + length "0..256"; + } + description + "Domain name"; + } + leaf-list domain { + type String1; + description + "Domain list"; + } + list server-address { + description + "Server address list"; + uses DOMAIN-IPADDRESS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper.yang new file mode 100644 index 000000000..4c7f94327 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-domain-oper.yang @@ -0,0 +1,96 @@ +module Cisco-IOS-XR-ip-domain-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-domain-oper"; + prefix ip-domain-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-domain-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-domain package operational data. + + This module contains definitions + for the following management objects: + ip-domain: Domain server and host data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-09-29 { + description + "IOS XR 6.0.0 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container ip-domain { + config false; + description + "Domain server and host data"; + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "VRF instance"; + container server { + description + "Domain server data"; + uses DOMAIN-SH-SERVER-BAG; + } + container hosts { + description + "List of domain hosts"; + list host { + key "host-name"; + description + "IP domain-name, lookup style, nameservers for + specific host"; + leaf host-name { + type string; + description + "Hostname"; + } + uses DOMAIN-SH-HOSTS-BAG; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-cfg.yang new file mode 100644 index 000000000..fbe9a5460 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-cfg.yang @@ -0,0 +1,118 @@ +module Cisco-IOS-XR-ip-iarm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-iarm-cfg"; + prefix ip-iarm-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 ip-iarm package configuration. + + This module contains definitions + for the following management objects: + ip-arm: IP Address Repository Manager (IPv4/IPv6 ARM) + configuration data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ip-arm-conflict-policy { + type enumeration { + enum "lowest-rack-slot" { + value 0; + description + "Lowest Rack/Slot"; + } + enum "static" { + value 1; + description + "UP interfaces unaffected"; + } + enum "longest-prefix" { + value 2; + description + "Longest Prefix"; + } + enum "highest-ip" { + value 4; + description + "Highest IP"; + } + } + description + "Ip arm conflict policy"; + } + + grouping CONFLICT-POLICY-TABLE { + description + "Common node of ipv4, ipv6"; + container conflict-policy-table { + description + "IP ARM conflict policy configuration"; + leaf conflict-policy { + type Ip-arm-conflict-policy; + description + "IP ARM conflict policy value definitions"; + } + } + } + + grouping MULTICAST-HOST { + description + "Common node of ipv4, ipv6"; + container multicast-host { + description + "IP ARM Multicast Host configuration"; + leaf multicast-host-interface { + type xr:Interface-name; + description + "Default multicast host interface name"; + } + } + } + + container ip-arm { + description + "IP Address Repository Manager (IPv4/IPv6 ARM) + configuration data"; + container ipv4 { + description + "IPv4 ARM configuration"; + uses CONFLICT-POLICY-TABLE; + uses MULTICAST-HOST; + } + container ipv6 { + description + "IPv6 ARM configuration"; + uses CONFLICT-POLICY-TABLE; + uses MULTICAST-HOST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-datatypes.yang new file mode 100644 index 000000000..3b3f0fd7d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-datatypes.yang @@ -0,0 +1,45 @@ +module Cisco-IOS-XR-ip-iarm-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-iarm-datatypes"; + prefix ip-iarm-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Ipv6arm-prefix-length { + type uint32 { + range "0..128"; + } + description + "Ipv6arm prefix length"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper-sub1.yang new file mode 100644 index 000000000..2d76208ab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper-sub1.yang @@ -0,0 +1,255 @@ +submodule Cisco-IOS-XR-ip-iarm-v4-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-iarm-v4-oper { + prefix Cisco-IOS-XR-ip-iarm-v4-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-iarm-v4 package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-22 { + description + "Fixing yang usability issues."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef String1 { + type string; + description + "String1"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + grouping IP-ARM-EDM-DB-RTRID-BAG-TYPE { + description + "Router-id information by VRF"; + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf interface-name { + type string; + description + "Interface name corresponding to the router ID"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + } + + grouping IP-ARM-EDM-DB-VRF-BAG-TYPE { + description + "VRF summary information"; + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + } + + grouping IP-ARM-EDM-SUMMARY-BAG-TYPE { + description + "IP-ARM summary information"; + leaf producer-count { + type int32; + description + "Number of producers"; + } + leaf address-conflict-count { + type int32; + description + "Number of address conflicts"; + } + leaf unnumbered-conflict-count { + type int32; + description + "Number of unnumbered interface conflicts"; + } + leaf db-master-version { + type uint32; + description + "IP-ARM DB master version"; + } + leaf vrf-count { + type int32; + description + "Number of known VRFs"; + } + } + + grouping IP-ARM-EDM-DB-IF-BAG-TYPE { + description + "Database information by interface"; + leaf referenced-interface { + type String1; + description + "Referenced Interface - only valid for an + unnumbered interface"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + list address { + description + "Address info"; + uses IP-ARM-EDM-ADDR-TYPE; + } + } + + grouping ARM-ADDRTYPE { + description + "Union representing an address"; + leaf afi { + type int32; + description + "AFI"; + } + leaf ipv4-address { + when "../afi = '2'" { + description + "../AFI = '2'"; + } + type inet:ipv4-address; + description + "IPV4 Address"; + } + leaf ipv6-address { + when "../afi = '10'" { + description + "../AFI = '10'"; + } + type Ipv6-address; + description + "IPV6 Address"; + } + } + + grouping IP-ARM-EDM-ADDR-TYPE { + description + "IP ARM collective address and other attribute + info"; + container address { + description + "IPv4/IPv6 address"; + uses ARM-ADDRTYPE; + } + leaf prefix-length { + type uint32; + description + "Prefix length of theIPv4/IPv6 Address"; + } + leaf route-tag { + type uint32; + description + "Route Tag of the address"; + } + leaf is-primary { + type boolean; + description + "Is address primary - valid only for IPv4 + addresses"; + } + leaf is-tentative { + type boolean; + description + "Is address valid/tentative - valid only for IPV6 + addresses"; + } + leaf is-prefix-sid { + type boolean; + description + "Is prefix_sid valid - valid only for IPV6 + addresses"; + } + leaf producer { + type string; + description + "Producer Name"; + } + } + + grouping IP-ARM-EDM-DB-NET-BAG-TYPE { + description + "Database information by network"; + container address-xr { + description + "Address info"; + uses IP-ARM-EDM-ADDR-TYPE; + } + leaf interface-name { + type string; + description + "Ingress/Egress Interface name for this address + in the Network"; + } + leaf referenced-interface { + type String1; + description + "Referenced Interface - only valid for an + unnumbered interface"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper.yang new file mode 100644 index 000000000..7883b119b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v4-oper.yang @@ -0,0 +1,173 @@ +module Cisco-IOS-XR-ip-iarm-v4-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-iarm-v4-oper"; + prefix ip-iarm-v4-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-iarm-v4-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-iarm-v4 package operational data. + + This module contains definitions + for the following management objects: + ipv4arm: IPv4 Address Repository Manager (IPv4 ARM) + operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-22 { + description + "Fixing yang usability issues."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv4arm-prefix-length { + type uint32 { + range "0..32"; + } + description + "Ipv4arm prefix length"; + } + + container ipv4arm { + config false; + description + "IPv4 Address Repository Manager (IPv4 ARM) + operational data"; + container addresses { + description + "IPv4 ARM address database information"; + container vrfs { + description + "IPv4 ARM address database information per VRF"; + list vrf { + key "vrf-name"; + description + "IPv4 ARM address database information in a VRF"; + container networks { + description + "IPv4 ARM address database information by + network"; + list network { + description + "An IPv4 Address in IPv4 ARM"; + leaf address { + type inet:ipv4-address-no-zone; + description + "An IPv4 Address in this Network."; + } + leaf prefix-length { + type Ipv4arm-prefix-length; + description + "Ipv4 ARM prefix length for this address in + the Network."; + } + leaf interface { + type xr:Interface-name; + description + "Ingress/Egress interface handle for this + address in the Network."; + } + uses IP-ARM-EDM-DB-NET-BAG-TYPE; + } + } + container interfaces { + description + "IPv4 ARM address database information by + interface"; + list interface { + key "interface"; + description + "An IPv4 address in IPv4 ARM"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses IP-ARM-EDM-DB-IF-BAG-TYPE; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + } + container summary { + description + "IPv4 ARM summary information"; + uses IP-ARM-EDM-SUMMARY-BAG-TYPE; + } + container vrf-summaries { + description + "IPv4 ARM VRFs summary information"; + list vrf-summary { + key "vrf-name"; + description + "IPv4 ARM VRF summary information"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + uses IP-ARM-EDM-DB-VRF-BAG-TYPE; + } + } + container router-id { + description + "IPv4 ARM Router ID information"; + uses IP-ARM-EDM-DB-RTRID-BAG-TYPE; + } + leaf multicast-host-interface { + type xr:Interface-name; + description + "Interface Handle of Default Multicast Host"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper-sub1.yang new file mode 100644 index 000000000..2d69c5a36 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper-sub1.yang @@ -0,0 +1,230 @@ +submodule Cisco-IOS-XR-ip-iarm-v6-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-iarm-v6-oper { + prefix Cisco-IOS-XR-ip-iarm-v6-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-iarm-v6 package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-22 { + description + "Fixing yang usability issues."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef String1 { + type string; + description + "String1"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + grouping IP-ARM-EDM-DB-VRF-BAG-TYPE { + description + "VRF summary information"; + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + } + + grouping IP-ARM-EDM-SUMMARY-BAG-TYPE { + description + "IP-ARM summary information"; + leaf producer-count { + type int32; + description + "Number of producers"; + } + leaf address-conflict-count { + type int32; + description + "Number of address conflicts"; + } + leaf unnumbered-conflict-count { + type int32; + description + "Number of unnumbered interface conflicts"; + } + leaf db-master-version { + type uint32; + description + "IP-ARM DB master version"; + } + leaf vrf-count { + type int32; + description + "Number of known VRFs"; + } + } + + grouping IP-ARM-EDM-DB-IF-BAG-TYPE { + description + "Database information by interface"; + leaf referenced-interface { + type String1; + description + "Referenced Interface - only valid for an + unnumbered interface"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + list address { + description + "Address info"; + uses IP-ARM-EDM-ADDR-TYPE; + } + } + + grouping ARM-ADDRTYPE { + description + "Union representing an address"; + leaf afi { + type int32; + description + "AFI"; + } + leaf ipv4-address { + when "../afi = '2'" { + description + "../AFI = '2'"; + } + type inet:ipv4-address; + description + "IPV4 Address"; + } + leaf ipv6-address { + when "../afi = '10'" { + description + "../AFI = '10'"; + } + type Ipv6-address; + description + "IPV6 Address"; + } + } + + grouping IP-ARM-EDM-ADDR-TYPE { + description + "IP ARM collective address and other attribute + info"; + container address { + description + "IPv4/IPv6 address"; + uses ARM-ADDRTYPE; + } + leaf prefix-length { + type uint32; + description + "Prefix length of theIPv4/IPv6 Address"; + } + leaf route-tag { + type uint32; + description + "Route Tag of the address"; + } + leaf is-primary { + type boolean; + description + "Is address primary - valid only for IPv4 + addresses"; + } + leaf is-tentative { + type boolean; + description + "Is address valid/tentative - valid only for IPV6 + addresses"; + } + leaf is-prefix-sid { + type boolean; + description + "Is prefix_sid valid - valid only for IPV6 + addresses"; + } + leaf producer { + type string; + description + "Producer Name"; + } + } + + grouping IP-ARM-EDM-DB-NET-BAG-TYPE { + description + "Database information by network"; + container address-xr { + description + "Address info"; + uses IP-ARM-EDM-ADDR-TYPE; + } + leaf interface-name { + type string; + description + "Ingress/Egress Interface name for this address + in the Network"; + } + leaf referenced-interface { + type String1; + description + "Referenced Interface - only valid for an + unnumbered interface"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper.yang new file mode 100644 index 000000000..db88ea676 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-v6-oper.yang @@ -0,0 +1,168 @@ +module Cisco-IOS-XR-ip-iarm-v6-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-iarm-v6-oper"; + prefix ip-iarm-v6-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-iarm-v6-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-iarm-v6 package operational data. + + This module contains definitions + for the following management objects: + ipv6arm: IPv6 Address Repository Manager (IPv6 ARM) + operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-22 { + description + "Fixing yang usability issues."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6arm-prefix-length { + type uint32 { + range "0..128"; + } + description + "Ipv6arm prefix length"; + } + + container ipv6arm { + config false; + description + "IPv6 Address Repository Manager (IPv6 ARM) + operational data"; + container addresses { + description + "IPv6 ARM address database information"; + container vrfs { + description + "IPv6 ARM address database information per VRF"; + list vrf { + key "vrf-name"; + description + "IPv6 ARM address database information in a VRF"; + container networks { + description + "IPv6 ARM address database information by + network"; + list network { + description + "An IPv6 Address in IPv6 ARM"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Ipv6 Address in the Network"; + } + leaf prefix-length { + type Ipv6arm-prefix-length; + description + "IPv6 Arm prefix length for this address in + the Network"; + } + leaf interface { + type xr:Interface-name; + description + "Ingress/Egress interface handle for this + address in the Network"; + } + uses IP-ARM-EDM-DB-NET-BAG-TYPE; + } + } + container interfaces { + description + "IPv6 ARM address database information by + interface"; + list interface { + key "interface"; + description + "An IPv6 address in IPv6 ARM"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses IP-ARM-EDM-DB-IF-BAG-TYPE; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + } + container summary { + description + "IPv6 ARM summary information"; + uses IP-ARM-EDM-SUMMARY-BAG-TYPE; + } + container vrf-summaries { + description + "IPv6 ARM VRFs summary information"; + list vrf-summary { + key "vrf-name"; + description + "IPv6 ARM VRF summary information"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + uses IP-ARM-EDM-DB-VRF-BAG-TYPE; + } + } + leaf multicast-host-interface { + type xr:Interface-name; + description + "Interface Handle of Default Multicast Host"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-vrf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-vrf-cfg.yang new file mode 100644 index 000000000..787b1b865 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iarm-vrf-cfg.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-ip-iarm-vrf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-iarm-vrf-cfg"; + prefix ip-iarm-vrf-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-infra-rsi-cfg { + prefix a1; + } + + 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 ip-iarm-vrf package configuration. + + This YANG module augments the + Cisco-IOS-XR-infra-rsi-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping INTERFACE { + description + "Common node of ipv4, ipv6"; + leaf interface { + type xr:Interface-name; + description + "Default multicast host interface name"; + } + } + + augment "/a1:vrfs/a1:vrf" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-rsi-cfg'"; + container multicast-host { + description + "Multicast host stack configuration"; + container ipv4 { + description + "IPv4 configuration"; + uses INTERFACE; + } + container ipv6 { + description + "IPv6 configuration"; + uses INTERFACE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-icmp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-icmp-cfg.yang new file mode 100644 index 000000000..817a2d0ba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-icmp-cfg.yang @@ -0,0 +1,118 @@ +module Cisco-IOS-XR-ip-icmp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-icmp-cfg"; + prefix ip-icmp-cfg; + + 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 ip-icmp package configuration. + + This module contains definitions + for the following management objects: + icmp: IP ICMP configuration data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-10 { + description + "IOS XR 7.3.1 revision."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-06-08 { + description + "IOS XR 6.3.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Source-policy { + type enumeration { + enum "vrf" { + value 1; + description + "Set Source Selection Policy to vrf"; + } + enum "rfc" { + value 2; + description + "Set Source Selection Policy to rfc"; + } + } + description + "Source policy"; + } + + grouping SOURCE { + description + "Common node of ipv4, ipv6"; + container source { + description + "IP ICMP Source Address Selection Policy"; + leaf source-address-policy { + type Source-policy; + description + "Configure Source Address Policy"; + } + } + } + + container icmp { + description + "IP ICMP configuration data"; + container ipv6 { + description + "IP Protocol Type"; + uses SOURCE; + } + container ipv4 { + description + "IP Protocol Type"; + container rate-limit { + description + "Set ratelimit of ICMP packets"; + container unreachable { + description + "Set unreachable ICMP packets ratelimit"; + leaf rate { + type uint32 { + range "0..4294967295"; + } + description + "Rate Limit of Unreachable ICMP packets"; + } + leaf fragmentation { + type uint32 { + range "0..4294967295"; + } + description + "Rate Limit of Unreachable DF packets"; + } + } + } + uses SOURCE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-cfg.yang new file mode 100644 index 000000000..9587b1e74 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-cfg.yang @@ -0,0 +1,250 @@ +module Cisco-IOS-XR-ip-iep-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-iep-cfg"; + prefix ip-iep-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ip-iep package configuration. + + This module contains definitions + for the following management objects: + ip-explicit-paths: IP Explicit Path config data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ip-iep-num { + type enumeration { + enum "unnumbered" { + value 1; + description + "Unnumbered"; + } + enum "numbered" { + value 2; + description + "Numbered"; + } + } + description + "Ip iep num"; + } + + typedef Ip-iep-hop { + type enumeration { + enum "next-strict" { + value 2; + description + "NextStrict"; + } + enum "next-loose" { + value 3; + description + "NextLoose"; + } + enum "exclude" { + value 4; + description + "Exclude"; + } + enum "exclude-srlg" { + value 5; + description + "Exclude Shared Risk Link Group"; + } + enum "next-label" { + value 6; + description + "NextLabel"; + } + } + description + "Ip iep hop"; + } + + typedef Ip-iep-path { + type enumeration { + enum "identifier" { + value 1; + description + "Identifier"; + } + enum "name" { + value 2; + description + "Name"; + } + } + description + "Ip iep path"; + } + + container ip-explicit-paths { + description + "IP Explicit Path config data"; + container paths { + description + "A list of explicit paths"; + list path { + must "name or identifier" { + description + "Name or Identifier must be present."; + } + key "type"; + description + "Config data for a specific explicit path"; + + grouping PATH-CONTENT { + description + "PATH CONTENT"; + container hops { + description + "List of Hops"; + list hop { + key "index-number"; + description + "Hop Information"; + leaf index-number { + type uint32 { + range "1..65535"; + } + description + "Index number"; + } + leaf ip-address { + when "../hop-type != 'next-label'" { + description + "../HopType != NextLabel"; + } + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address of the hop"; + } + leaf hop-type { + type Ip-iep-hop; + mandatory true; + description + "Include or exclude this hop in the path"; + } + leaf if-index { + when "../hop-type != 'next-label'" { + description + "../HopType != NextLabel"; + } + type uint32; + mandatory true; + description + "Ifindex value"; + } + leaf num-type { + when "../hop-type != 'next-label'" { + description + "../HopType != NextLabel"; + } + type Ip-iep-num; + mandatory true; + description + "Number type Numbered or Unnumbered"; + } + leaf mpls-label { + when "../hop-type = 'next-label'" { + description + "../HopType = NextLabel"; + } + type uint32 { + range "0..1048575"; + } + description + "MPLS Label"; + } + } + } + leaf disable { + type empty; + description + "Disable the explicit path"; + } + } + leaf type { + type Ip-iep-path; + description + "Path type"; + } + list name { + when "../type = 'name'" { + description + "../Type = Name"; + } + key "name"; + description + "name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Path name"; + } + uses PATH-CONTENT; + } + list identifier { + when "../type = 'identifier'" { + description + "../Type = Identifier"; + } + key "id"; + description + "identifier"; + leaf id { + type uint32 { + range "1..65535"; + } + description + "Path identifier"; + } + uses PATH-CONTENT; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper-sub1.yang new file mode 100644 index 000000000..2bc3e2cc6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper-sub1.yang @@ -0,0 +1,147 @@ +submodule Cisco-IOS-XR-ip-iep-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-iep-oper { + prefix Cisco-IOS-XR-ip-iep-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-iep package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Iep-hop { + type enumeration { + enum "strict" { + description + "Hop type is strict"; + } + enum "loose" { + description + "Hop type is loose"; + } + } + description + "Hop types of the next-address configured"; + } + + typedef Iep-address { + type enumeration { + enum "next" { + description + "Address type is next"; + } + enum "exclude" { + description + "Address type is exclude"; + } + enum "exclude-srlg" { + description + "Address type is exclude SRLG"; + } + } + description + "Address types"; + } + + typedef Iep-status { + type enumeration { + enum "enabled" { + description + "Status is enabled"; + } + enum "disabled" { + description + "Status is disabled"; + } + } + description + "Status of the path"; + } + + grouping IEP-IP-ADDRESS-ENTRY { + description + "IP address configured in the explicit path"; + leaf index { + type uint32; + description + "Index number at which the path entry is inserted + or modified"; + } + leaf if-index { + type uint32; + description + "Interface Index of the path"; + } + leaf address-type { + type Iep-address; + description + "Specifies the address type"; + } + leaf hop-type { + type Iep-hop; + description + "Specifies the next unicast address in the path + as a strict or loose hop"; + } + leaf address { + type inet:ipv4-address; + description + "IPv4 unicast address"; + } + leaf mpls-label { + type uint32; + description + "MPLS label"; + } + } + + grouping IEP-EXPLICIT-PATH { + description + "Explicit path details"; + leaf status { + type Iep-status; + description + "Status of the path"; + } + list address { + description + "List of IP addresses configured in the explicit + path"; + uses IEP-IP-ADDRESS-ENTRY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper.yang new file mode 100644 index 000000000..173071068 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-iep-oper.yang @@ -0,0 +1,91 @@ +module Cisco-IOS-XR-ip-iep-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-iep-oper"; + prefix ip-iep-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-iep-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-iep package operational data. + + This module contains definitions + for the following management objects: + explicit-paths: Configured IP explicit paths + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container explicit-paths { + config false; + description + "Configured IP explicit paths"; + container identifiers { + description + "List of configured IP explicit path identifiers, + this corresponds to mplsTunnelHopTable in TE MIB"; + list identifier { + key "identifier-id"; + description + "IP explicit path configured for a particular + identifier"; + leaf identifier-id { + type uint32; + description + "Identifier ID"; + } + uses IEP-EXPLICIT-PATH; + } + } + container names { + description + "List of configured IP explicit path names, this + corresponds to mplsTunnelHopTable in TE MIB"; + list name { + key "path-name"; + description + "IP explicit path configured for a particular + path name"; + leaf path-name { + type xr:Cisco-ios-xr-string; + description + "Path name"; + } + uses IEP-EXPLICIT-PATH; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-cfg.yang new file mode 100644 index 000000000..f199ea653 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-cfg.yang @@ -0,0 +1,1050 @@ +module Cisco-IOS-XR-ip-mobileip-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-mobileip-cfg"; + prefix ip-mobileip-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ip-mobileip package configuration. + + This module contains definitions + for the following management objects: + mobile-ip: MobileIP configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-16 { + description + "Removed hidden CLIs"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + revision 2015-09-02 { + description + "Initial version"; + } + + typedef Gre-key-type { + type enumeration { + enum "symmetric" { + value 1; + description + "Symmetric GRE Key (same Uplink and Downlink + key)"; + } + } + description + "Gre key type"; + } + + typedef Service-type { + type enumeration { + enum "ipv4" { + value 1; + description + "ipv4 service type"; + } + enum "ipv6" { + value 2; + description + "ipv6 service type"; + } + enum "dual" { + value 3; + description + "dual service type"; + } + } + description + "Service type"; + } + + typedef Lma-service { + type enumeration { + enum "service-mll" { + value 1; + description + "Wireless Private Routing service"; + } + } + description + "Lma service"; + } + + typedef Redist-type { + type enumeration { + enum "home-address" { + value 1; + description + "Redistribute HoA/HNP routes"; + } + } + description + "Redist type"; + } + + typedef Redist-sub-type { + type enumeration { + enum "host-prefix" { + value 1; + description + "Redistribute HoA/HNP host prefix routes"; + } + enum "disable" { + value 2; + description + "Disable redistribution of HoA/HNP host and pool + refix routes"; + } + } + description + "Redist sub type"; + } + + typedef Encap-opt { + type enumeration { + enum "greipv4" { + value 4; + description + "GRE IPv4 tunnel encap"; + } + enum "greipv6" { + value 5; + description + "GRE IPv6 tunnel encap"; + } + enum "mgreipv4" { + value 7; + description + "mGRE IPv4 tunnel encap"; + } + enum "mgreipv6" { + value 8; + description + "mGRE IPv6 tunnel encap"; + } + } + description + "Encap opt"; + } + + container mobile-ip { + description + "MobileIP configuration"; + container domains { + description + "Table of Domain"; + list domain { + key "domain-name"; + description + "PMIPv6 domain configuration"; + container nais { + description + "Table of NAI"; + list nai { + key "nai-name"; + description + "Network access identifier or Realm"; + leaf apn { + type string { + length "1..125"; + } + description + "Access point network for this MN"; + } + leaf customer { + type xr:Cisco-ios-xr-string { + length "1..125"; + } + description + "Customer name for this MN"; + } + leaf service { + type Service-type; + description + "Service type for this MN"; + } + leaf network { + type string { + length "1..125"; + } + description + "Network name (Address pool) for this MN"; + } + leaf nai-name { + type string { + length "1..125"; + } + description + "MN Identifier"; + } + } + } + container authenticate-option { + description + "Authentication option between PMIPV6 entities"; + leaf spi { + type xr:Hex-integer; + description + "SPI in hex value"; + } + leaf key { + type string { + length "1..125"; + } + description + "ASCII string"; + } + } + leaf enable { + type empty; + description + "Enable PMIPv6 domain configuration. Deletion + of this object also causes deletion of all + associated objects under Domain."; + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..125"; + } + description + "Domain Name"; + } + } + } + container lmas { + description + "Table of LMA"; + list lma { + key "lma-name domain-name"; + description + "PMIPv6 LMA configuration"; + container binding-revocation-attributes { + description + "LMA Binding Revocation Attributes"; + container delay { + description + "Time to wait before Retransmitting BRI + Message"; + leaf br-min { + type uint32 { + range "500..65535"; + } + description + "Specify in millisec"; + } + leaf br-max { + type uint32 { + range "500..65535"; + } + description + "Specify in millisec"; + } + } + leaf retry { + type uint32 { + range "1..10"; + } + description + "Number of Retransmissons Allowed for BRI + Message"; + } + } + container heart-beat-attributes { + description + "heartbeat config for this LMA"; + leaf interval { + type uint32 { + range "10..3600"; + } + description + "Specify the interval value in second"; + } + leaf retries { + type uint32 { + range "1..10"; + } + description + "Specify the retry value"; + } + leaf timeout { + type uint32 { + range "1..3600"; + } + description + "Specify the timeout value"; + } + } + container lmaipv6-addresses { + description + "Table of LMAIPv6Address"; + list lmaipv6-address { + key "address"; + description + "Configure IPv6 address for this LMA"; + leaf address { + type inet:ipv6-address-no-zone; + description + "LMA IPv6 address"; + } + } + } + container hnp { + description + "LMA HNP options"; + leaf maximum { + type uint32 { + range "1..3"; + } + description + "maximum HNPs allowed per MN interface"; + } + } + container redistribute { + description + "Redistribute routes"; + leaf redist-type { + type Redist-type; + description + "Redistribute type"; + } + leaf redist-sub-type { + type Redist-sub-type; + description + "Redistribute sub-type"; + } + } + container aaa { + description + "AAA configuration for this LMA"; + container accounting { + description + "AAA accounting for this LMA"; + leaf enable { + type empty; + description + "Set constant integer"; + } + leaf interim-interval { + type uint32 { + range "1..86400"; + } + units "minute"; + description + "Interim acounting interval (in minutes)"; + } + } + } + container dscp { + description + "DSCP for packets originating from this LMA"; + leaf value { + type uint32 { + range "1..63"; + } + description + "Specify the DSCP value"; + } + leaf force { + type empty; + description + "Set constant integer"; + } + } + container lmaipv4-addresses { + description + "Table of LMAIPv4Address"; + list lmaipv4-address { + key "address"; + description + "Configure IPv4 address for this LMA"; + leaf address { + type inet:ipv4-address-no-zone; + description + "LMA IPv4 address"; + } + } + } + container binding-attributes { + description + "LMA binding attributes"; + leaf refresh-time { + type uint32 { + range "4..65000"; + } + units "second"; + description + "Specify in seconds, (multiples of 4)"; + } + leaf delete-wait-interval { + type uint32 { + range "100..65535"; + } + description + "bce delete wait time interval"; + } + leaf create-wait-interval { + type uint32 { + range "100..65535"; + } + description + "bce create wait time interval"; + } + leaf max-life-time { + type uint32 { + range "10..65535"; + } + units "second"; + description + "Maximum bce lifetime permitted"; + } + leaf maximum { + type uint32 { + range "1..128000"; + } + description + "Specify max. number of bindings"; + } + } + container mags { + description + "Table of MAG"; + list mag { + key "mag-name domain-name"; + description + "MAG within LMA"; + container authenticate-option { + description + "Authentication option between PMIPV6 + entities"; + leaf spi { + type xr:Hex-integer; + description + "SPI in hex value"; + } + leaf key { + type string { + length "1..125"; + } + description + "ASCII string"; + } + } + container dscp { + description + "DSCP for packets originating from this MAG"; + leaf value { + type uint32 { + range "1..63"; + } + description + "Specify the DSCP value"; + } + leaf force { + type empty; + description + "Set constant integer"; + } + } + leaf encap-option { + type Encap-opt; + description + "Encapsulation option between PMIPV6 entities"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Configure IPv4 address for this MAG"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Configure IPv6 address for this MAG"; + } + leaf mag-name { + type string { + length "1..125"; + } + description + "MAG identifier"; + } + leaf domain-name { + type string { + length "1..125"; + } + description + "Domain name"; + } + } + } + container services { + description + "Table of Service"; + list service { + key "lma-service"; + description + "Service of this LMA"; + container customers { + description + "Table of Customer"; + list customer { + key "customer-name vrf-name"; + description + "customer configuration on this mobile local + loop service"; + container authenticate-option { + description + "Authentication option between PMIPV6 + entities"; + leaf spi { + type xr:Hex-integer; + description + "SPI in hex value"; + } + leaf key { + type string { + length "1..125"; + } + description + "ASCII string"; + } + } + container heart-beat-attributes { + description + "heartbeat config for this Customer"; + leaf interval { + type uint32 { + range "10..3600"; + } + description + "Specify the interval value in second"; + } + leaf retries { + type uint32 { + range "1..10"; + } + description + "Specify the retry value"; + } + leaf timeout { + type uint32 { + range "1..3600"; + } + description + "Specify the timeout value"; + } + } + container transports { + description + "Table of Transport"; + list transport { + key "vrf-name"; + description + "Customer transport attributes"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Configure IPv4 address for this LMA"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Configure IPv6 address for this LMA"; + } + leaf vrf-name { + type string { + length "1..125"; + } + description + "VRF Name"; + } + } + } + container network-attributes { + description + "network parameters for the customer"; + container authorizes { + description + "Table of Authorize"; + list authorize { + key "name"; + description + "not authorize the network prefixes"; + container pool-attributes { + description + "Pool configs for this network"; + container mobile-node { + description + "pool configs for the mobile nodes"; + container ipv4-pool { + description + "None"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "Pool IPv4 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30"; + } + description + "IPv4 Pool Prefix value"; + } + } + container ipv6-pool { + description + "None"; + leaf start-address { + type inet:ipv6-address-no-zone; + description + "Pool IPv6 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..62"; + } + description + "IPv6 Pool Prefix value"; + } + } + } + container mobile-network { + description + "pool configs for the mobile network"; + container mripv6-pools { + description + "Table of MRIPV6Pool"; + list mripv6-pool { + key "start-address"; + description + "ipv6 pool"; + leaf start-address { + type inet:ipv6-address-no-zone; + description + "Pool IPv6 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..64"; + } + description + "IPv6 Pool Prefix value"; + } + leaf network-prefix { + type uint32 { + range "8..64"; + } + description + "IPv4 Network Prefix value"; + } + } + } + container mripv4-pools { + description + "Table of MRIPV4Pool"; + list mripv4-pool { + key "start-address"; + description + "ipv4 pool"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "Pool IPv4 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30"; + } + description + "IPv4 Pool Prefix value"; + } + leaf network-prefix { + type uint32 { + range "8..32"; + } + description + "IPv4 Network Prefix value"; + } + } + } + } + } + leaf name { + type string { + length "1..125"; + } + description + "ASCII string"; + } + } + } + leaf unauthorize { + type empty; + description + "not authorize the network prefixes"; + } + } + container gre-key { + description + "Customer specific GRE key"; + leaf gre-key-type { + type Gre-key-type; + description + "GRE key type"; + } + leaf gre-key-value { + type uint32 { + range "1..4294967295"; + } + description + "GRE key value"; + } + } + container binding-attributes { + description + "Customer specific binding attributes"; + leaf max-life-time { + type uint32 { + range "10..65535"; + } + units "second"; + description + "Maximum bce lifetime permitted"; + } + } + leaf mnp-customer { + type uint32 { + range "1..4000000"; + } + description + "mnp limit config for customer"; + } + leaf mnp-ipv4-lmn { + type uint32 { + range "1..32"; + } + description + "mnp limit config for customer specific + logical mn"; + } + leaf mnp-ipv6-lmn { + type uint32 { + range "1..32"; + } + description + "mnp limit config for customer specific + logical mn"; + } + leaf mnp-lmn { + type uint32 { + range "1..32"; + } + description + "mnp limit config for customer specific + logical mn"; + } + leaf mnp-ipv4-customer { + type uint32 { + range "1..4000000"; + } + description + "mnp limit config for customer"; + } + leaf mnp-ipv6-customer { + type uint32 { + range "1..4000000"; + } + description + "mnp limit config for customer"; + } + leaf mobile-route-ad { + type uint32 { + range "1..254"; + } + description + "Specify the Admin Distance value"; + } + leaf bandwidth-aggregate { + type uint32 { + range "1..4294967295"; + } + units "kbit/s"; + description + "Aggregate bandwidth across all logical MNs"; + } + leaf customer-name { + type string { + length "1..32"; + } + description + "Customer name"; + } + leaf vrf-name { + type string { + length "1..32"; + } + description + "VRF name"; + } + } + } + leaf mnp-customer { + type uint32 { + range "1..4000000"; + } + description + "mnp limit config for all customer's"; + } + leaf mnp-ipv4-lmn { + type uint32 { + range "1..32"; + } + description + "mnp limit config for all logical mn's"; + } + leaf mnp-ipv6-lmn { + type uint32 { + range "1..32"; + } + description + "mnp limit config for all logical mn's"; + } + leaf mnp-lmn { + type uint32 { + range "1..32"; + } + description + "mnp limit config for all logical mn's"; + } + leaf ignore-home-address { + type empty; + description + "Ignore HoA/HNP option"; + } + leaf mnp-ipv4-customer { + type uint32 { + range "1..4000000"; + } + description + "mnp limit config for all customer's"; + } + leaf mnp-ipv6-customer { + type uint32 { + range "1..4000000"; + } + description + "mnp limit config for all customer's"; + } + leaf lma-service { + type Lma-service; + description + "LMA service mode"; + } + } + } + container networks { + description + "Table of Network"; + list network { + key "lma-network"; + description + "network for this LMA"; + container pool-attributes { + description + "Pool configs for this network"; + container mobile-node { + description + "pool configs for the mobile nodes"; + container ipv4-pool { + description + "None"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "Pool IPv4 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30"; + } + description + "IPv4 Pool Prefix value"; + } + } + container ipv6-pool { + description + "None"; + leaf start-address { + type inet:ipv6-address-no-zone; + description + "Pool IPv6 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..62"; + } + description + "IPv6 Pool Prefix value"; + } + } + } + container mobile-network { + description + "pool configs for the mobile network"; + container mripv6-pools { + description + "Table of MRIPV6Pool"; + list mripv6-pool { + key "start-address"; + description + "ipv6 pool"; + leaf start-address { + type inet:ipv6-address-no-zone; + description + "Pool IPv6 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..64"; + } + description + "IPv6 Pool Prefix value"; + } + leaf network-prefix { + type uint32 { + range "8..64"; + } + description + "IPv4 Network Prefix value"; + } + } + } + container mripv4-pools { + description + "Table of MRIPV4Pool"; + list mripv4-pool { + key "start-address"; + description + "ipv4 pool"; + leaf start-address { + type inet:ipv4-address-no-zone; + description + "Pool IPv4 start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30"; + } + description + "IPv4 Pool Prefix value"; + } + leaf network-prefix { + type uint32 { + range "8..32"; + } + description + "IPv4 Network Prefix value"; + } + } + } + } + } + leaf lma-network { + type string { + length "1..125"; + } + description + "Network name"; + } + } + } + container replay-protection { + description + "Replay Protection Method"; + leaf timestamp-window { + type uint32 { + range "1..255"; + } + units "second"; + description + "Specify timestamp window value in seconds"; + } + } + leaf mobile-route-ad { + type uint32 { + range "1..254"; + } + description + "Specify the Admin Distance value"; + } + leaf dynamic { + type empty; + description + "enable dynamic mag learning for LMA"; + } + leaf enforce { + type empty; + description + "enforce heartbeat values to MAG"; + } + leaf default-profile { + type string { + length "1..125"; + } + description + "Default MN profile for LMA"; + } + leaf pgw-subs-cont { + type empty; + description + "Feature related to interface with PGW"; + } + leaf lma-name { + type string { + length "1..125"; + } + description + "LMA name"; + } + leaf domain-name { + type string { + length "1..125"; + } + description + "Domain name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper-sub1.yang new file mode 100644 index 000000000..65438fb04 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper-sub1.yang @@ -0,0 +1,1528 @@ +submodule Cisco-IOS-XR-ip-mobileip-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-mobileip-oper { + prefix Cisco-IOS-XR-ip-mobileip-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-mobileip package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-03-10 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pmipv6-encap { + type enumeration { + enum "none" { + description + "None"; + } + enum "ipv6" { + description + "IPV6 Tunnel"; + } + enum "ipv6-ipv4" { + description + "IPV6 in IPV4 Tunnel"; + } + enum "ipv6-udp" { + description + "IPV6 in IPV4 UDP Tunnel"; + } + enum "gre-ipv4" { + description + "GRE IPV4 Tunnel"; + } + enum "gre-ipv6" { + description + "GRE IPV6 Tunnel"; + } + enum "gre" { + description + "GRE Tunnel"; + } + enum "mgre-ipv4" { + description + "MGRE IPV4 Tunnel"; + } + enum "mgre-ipv6" { + description + "MGRE IPV6 Tunnel"; + } + enum "mip-udp" { + description + "MIP UDP Tunnel"; + } + enum "mip-mudp" { + description + "MIP MUDP Tunnel"; + } + enum "max" { + description + "MAX Encap Type"; + } + } + description + "ENCAP Types"; + } + + typedef Pmipv6-addr { + type enumeration { + enum "none" { + description + "None"; + } + enum "ipv4" { + description + "IPV4 Address"; + } + enum "ipv6" { + description + "IPV6 Address"; + } + enum "pmipv6-addr-ipv4-ipv6" { + description + "Both IPV4 and IPV6 Address"; + } + } + description + "Address Types"; + } + + typedef Pmipv6-role { + type enumeration { + enum "wlan" { + description + "WLAN"; + } + enum "gpp" { + description + "3GPP"; + } + enum "lte" { + description + "LTE"; + } + enum "wi-max" { + description + "WiMAX"; + } + enum "gma" { + description + "3GMA"; + } + enum "rmax" { + description + "MAX Role"; + } + } + description + "PMIPV6 Role Types"; + } + + grouping PMIPV6-DOMAIN-CUST-BD { + description + "PMIPV6 Customer Configs"; + leaf cust { + type boolean; + description + "Customer Present"; + } + leaf vrf { + type boolean; + description + "Customer VRF Present"; + } + leaf t-vrf { + type boolean; + description + "Transport VRF Present"; + } + leaf auth-option { + type boolean; + description + "Authentication Option"; + } + leaf heart-beat { + type boolean; + description + "HeartBeat Option"; + } + leaf reg-time { + type uint32; + description + "BCE Registration Lifetime"; + } + leaf cust-name { + type string; + description + "CUSTOMER Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf t-vrf-name { + type string; + description + "Transport VRF Name"; + } + } + + grouping PMIPV6-SHOW-LMA-NW-BD { + description + "PMIPV6 LMA NW"; + leaf v4pool { + type boolean; + description + "IPV4 pool Present"; + } + leaf v6pool { + type boolean; + description + "IPV6 pool Present"; + } + leaf network { + type string; + description + "Network Name"; + } + leaf ipv4 { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6 { + type inet:ipv6-address; + description + "IPv6 Address"; + } + leaf v4pfx-len { + type uint8; + description + "v4 prefix len"; + } + leaf v6pfx-len { + type uint8; + description + "v6 prefix len"; + } + leaf mrnet { + type uint8; + description + "num of mrnet"; + } + } + + grouping PMIPV6-DOMAIN-PARAM-PEER-BD { + description + "PMIPV6 Domain Param Peer"; + leaf peer { + type string; + description + "Peer Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf interface { + type string; + description + "Peer static tunnel intf"; + } + leaf encap { + type Pmipv6-encap; + description + "Encapsulation Type"; + } + leaf auth { + type boolean; + description + "Authentication Option"; + } + leaf vrf { + type boolean; + description + "VRF Present"; + } + leaf statictunnel { + type boolean; + description + "Static tunnel Present"; + } + } + + grouping PMIPV6-SHOW-MAG-INTERFACES-BD { + description + "PMIPV6 MAG Interface"; + leaf apn { + type boolean; + description + "APN Present"; + } + leaf interface { + type string; + description + "Access Interface Name"; + } + leaf apn-name { + type string; + description + "APN Name"; + } + } + + grouping PMIPV6-ENTITY-ID-BD { + description + "Entity ID"; + leaf entity { + type string; + description + "Identifier of PMIP Node"; + } + leaf addr-type { + type Pmipv6-addr; + description + "IPV4 or IPV6 or Both"; + } + leaf address { + type inet:ipv6-address; + description + "IPV6 address of LMA/MAG"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPV4 addrress of LMA/MAG"; + } + } + + grouping PMIPV6-DOMAIN-PARAM-BD { + description + "PMIPV6 Domain Param"; + container self-id { + description + "Self Identifier"; + uses PMIPV6-ENTITY-ID-BD; + } + leaf timestamp { + type boolean; + description + "Timestamp method in use"; + } + leaf window { + type uint64; + description + "Timestamp Validity Window"; + } + leaf auth-option { + type boolean; + description + "Authentication Option"; + } + leaf reg-time { + type uint32; + description + "BCE Registration Lifetime"; + } + leaf ref-time { + type uint32; + description + "BCE Refresh Time"; + } + leaf retx { + type uint16; + description + "Refresh Retransmit Init"; + } + leaf ret-max { + type uint16; + description + "Refresh Retransmit Max"; + } + leaf bri-init { + type uint16; + description + "BRI Init Delay time"; + } + leaf bri-retries { + type uint16; + description + "BRI Max Retries"; + } + leaf bri-max { + type uint16; + description + "BRI Max Delay time"; + } + leaf max-bindings { + type uint32; + description + "Allowed Max. Bindings"; + } + leaf hnp { + type uint8; + description + "Allowed HNPs per MN Intf."; + } + leaf encap { + type Pmipv6-encap; + description + "Encapsulation Type"; + } + leaf delete-time { + type uint16; + description + "BCE Delete Hold Timer"; + } + leaf create-time { + type uint16; + description + "BCE Create Wait Timer"; + } + leaf up-grekey { + type uint32; + description + "Upstream GRE Key"; + } + leaf down-grekey { + type uint32; + description + "Downstream GRE Key"; + } + } + + grouping PMIPV6-SHOW-GLOBALS-BD { + description + "PMIPv6 Globals"; + container parameters { + description + "Domain Parameters"; + uses PMIPV6-DOMAIN-PARAM-BD; + } + container mll-service { + description + "MLL service parameters"; + uses PMIPV6-LMA-MLL-SERVICE-BD; + } + leaf domain { + type string; + description + "Domain Name"; + } + leaf selfid { + type string; + description + "Self ID"; + } + leaf apn-name { + type string; + description + "APN Name"; + } + leaf role { + type Pmipv6-role; + description + "Role Type"; + } + leaf count { + type uint32; + description + "Number of Networks/Intf"; + } + leaf peers { + type uint32; + description + "Number of Peers"; + } + leaf customers { + type uint32; + description + "Number of Customers"; + } + leaf num-network { + type uint32; + description + "Number of Networks"; + } + leaf discover-mn { + type boolean; + description + "Discover MN Detachment"; + } + leaf local-routing { + type boolean; + description + "Local Routing"; + } + leaf aaa-accounting { + type boolean; + description + "AAA Accounting"; + } + leaf default-mn { + type boolean; + description + "Default MN Enabled"; + } + leaf apn { + type boolean; + description + "APN Present"; + } + leaf learn-mag { + type boolean; + description + "Learn MAG"; + } + leaf session-mgr { + type boolean; + description + "Session Manager"; + } + leaf service { + type uint8; + description + "Service"; + } + leaf profile { + type string; + description + "Default MN Profile Name"; + } + leaf ddp { + type uint32; + description + "Discover Detach Period"; + } + leaf ddt { + type uint32; + description + "Discover Detach Timeout"; + } + leaf ddr { + type uint8; + description + "Discover Detach Retries"; + } + list intf { + description + "MAG Access List"; + uses PMIPV6-SHOW-MAG-INTERFACES-BD; + } + list peer { + description + "Peer Parameters"; + uses PMIPV6-DOMAIN-PARAM-PEER-BD; + } + list network { + description + "LMA Network Parameters"; + uses PMIPV6-SHOW-LMA-NW-BD; + } + list cust { + description + "Customer parameters"; + uses PMIPV6-DOMAIN-CUST-BD; + } + } + + grouping PMIPV6-LMA-MLL-SERVICE-BD { + description + "PMIPV6 Service"; + leaf ignore-hoa { + type boolean; + description + "Ignore Home Address"; + } + leaf mnp-ipv4-lmn-max { + type uint16; + description + "Max IPv4 prefixes per LMN"; + } + leaf mnp-ipv6-lmn-max { + type uint16; + description + "Max IPv6 prefixes per LMN"; + } + leaf mnp-lmn-max { + type uint16; + description + "Max prefixes per LMN"; + } + leaf mnp-ipv4-cust-max { + type uint32; + description + "Max IPv4 prefixes per Customer"; + } + leaf mnp-ipv6-cust-max { + type uint32; + description + "Max IPv6 prefixes per Customer"; + } + leaf mnp-cust-max { + type uint32; + description + "Max prefixes per Customer"; + } + leaf mnp-ipv4-cust-cur { + type uint32; + description + "Current IPv4 prefixes per Customer"; + } + leaf mnp-ipv6-cust-cur { + type uint32; + description + "Current IPv6 prefixes per Customer"; + } + } + + grouping PMIPV6-SHOW-CUST-GLOBALS-BD { + description + "PMIPV6 Customer Globals"; + container mll-service { + description + "MLL service parameters"; + uses PMIPV6-LMA-MLL-SERVICE-BD; + } + leaf cust-name { + type string; + description + "Customer Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf auth-option { + type boolean; + description + "Authentication Option"; + } + } + + grouping PMIPV6-SHOW-HB-PATH-BD { + description + "Heartbeat Path"; + leaf vrf { + type string; + description + "VRF Name"; + } + leaf customer-name { + type string; + description + "Customer Name"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf source-ipv4-address { + type inet:ipv4-address; + description + "Source IPv4 Address"; + } + leaf destination-ipv4-address { + type inet:ipv4-address; + description + "Destination IPv4 Address"; + } + leaf source-ipv6-address { + type inet:ipv6-address; + description + "Source IPv6 Address"; + } + leaf destination-ipv6-address { + type inet:ipv6-address; + description + "Destination IPv6 Address"; + } + leaf status { + type boolean; + description + "Path Status"; + } + leaf ipv6-path { + type boolean; + description + "IPv6 Path"; + } + } + + grouping PMIPV6-V6-PREFIX-BD { + description + "IPv6 Prefix"; + leaf pfxlen { + type uint8; + description + "IPv6 prefix length"; + } + leaf prefix { + type inet:ipv6-address; + description + "IPv6 prefix"; + } + } + + grouping PMIPV6-V4-PREFIX-BD { + description + "IPv4 Prefix"; + leaf pfxlen { + type uint8; + description + "IPv4 prefix length"; + } + leaf prefix { + type inet:ipv4-address; + description + "IPv4 prefix"; + } + } + + grouping PMIPV6-SHOW-BINDING-COA-BD { + description + "COA entry"; + leaf llid { + type string; + description + "Link Layer Identifier"; + } + leaf peer-name { + type string; + description + "Peer Name"; + } + leaf tunnel { + type string; + description + "Tunnel Interface"; + } + leaf e-label { + type string; + description + "Egress Label"; + } + leaf color { + type string; + description + "Label Color"; + } + leaf roa-min-tf { + type string; + description + "Roaming Intf"; + } + leaf pstate { + type string; + description + "COA STATE"; + } + leaf msisdn { + type string; + description + "MSISDN"; + } + leaf imsi { + type string; + description + "IMSI or IMSI NAI"; + } + leaf cdma-nai { + type string; + description + "CDMA NAI"; + } + leaf pgw-apn { + type string; + description + "Subscriber APN on PWG"; + } + leaf pgw-trans-vrf { + type string; + description + "Subscriber Transport VRF on PGW"; + } + leaf att { + type uint16; + description + "MN ATT"; + } + leaf lifetime { + type uint32; + description + "Life Time of coa"; + } + leaf lifetime-remaining { + type uint32; + description + "Life Time remain of coa"; + } + leaf refresh { + type uint32; + description + "refresh Time of coa"; + } + leaf refresh-rem { + type uint32; + description + "refresh Time remain of coa"; + } + leaf dnkey { + type uint32; + description + "down key for coa tunnel"; + } + leaf upkey { + type uint32; + description + "up key for coa tunnel"; + } + leaf coa-v4 { + type inet:ipv4-address; + description + "IPv4 CoA"; + } + leaf coa-v6 { + type inet:ipv6-address; + description + "IPv6 CoA"; + } + } + + grouping PMIPV6-SHOW-BINDING-BD { + description + "PMIPV6 Binding"; + leaf mnnai { + type string; + description + "Mobile Node Identifier"; + } + leaf customer-name-xr { + type string; + description + "Customer name"; + } + leaf llid { + type string; + description + "Link Layer Identifier"; + } + leaf peer-id { + type string; + description + "Peer Identifier"; + } + leaf phyintf { + type string; + description + "Access Interface"; + } + leaf tunnel { + type string; + description + "Tunnel Interface"; + } + leaf state { + type string; + description + "State Name"; + } + leaf apn { + type string; + description + "Access Point Network"; + } + leaf att { + type uint16; + description + "MN ATT"; + } + leaf hoa { + type inet:ipv4-address; + description + "MN HOA"; + } + leaf dflt { + type inet:ipv4-address; + description + "MN Default Router"; + } + leaf lifetime { + type uint32; + description + "Life Time of Binding"; + } + leaf liferem { + type uint32; + description + "Life Time Remaining"; + } + leaf refresh { + type uint32; + description + "Refresh Time of Binding"; + } + leaf refresh-rem { + type uint32; + description + "Refresh Time Remaining"; + } + leaf prefix-len { + type uint8; + description + "Prefix Length"; + } + leaf num-hnps { + type uint8; + description + "HNP count"; + } + leaf num-coa { + type uint8; + description + "COA count"; + } + leaf num-dmnp-v4 { + type uint8; + description + "IPv4 DMNP count"; + } + leaf num-dmnp-v6 { + type uint8; + description + "IPv6 DMNP count"; + } + leaf hnps { + type inet:ipv6-address; + description + "MN Home Network Prefixes"; + } + leaf ignore-home-address { + type boolean; + description + "Ignore HoA/HNP"; + } + leaf up-stream-grekey { + type uint32; + description + "Upstream GRE Key"; + } + leaf down-stream-grekey { + type uint32; + description + "DownStream GRE Key"; + } + leaf vrfid { + type uint32; + description + "VRF ID of Access Interface"; + } + list coa { + description + "COA entries"; + uses PMIPV6-SHOW-BINDING-COA-BD; + } + list dmnp-v4 { + description + "IPv4 DMNP prefixes"; + uses PMIPV6-V4-PREFIX-BD; + } + list dmnp-v6 { + description + "IPv6 DMNP prefixes"; + uses PMIPV6-V6-PREFIX-BD; + } + } + + grouping PMIPV6-SHOW-LMA-PEER-STATS-BD { + description + "PMIPv6 LMA Peer Statistics"; + container protocol-statistics { + description + "LMA Protocol Statistics"; + uses PMIPV6-LMA-PROTO-STATS-BD; + } + leaf lma-identifier { + type string; + description + "LMA Identifier"; + } + } + + grouping PMIPV6-MM-PKT-STATS-BD { + description + "Packet Statistics"; + leaf checksum-errors { + type uint64; + description + "Checksumm errors"; + } + leaf send-drops { + type uint64; + description + "Drop count of sent packets"; + } + leaf receive-drops { + type uint64; + description + "Drop count of received packets"; + } + leaf packets-received { + type uint64; + description + "Count of received packets"; + } + leaf packets-sent { + type uint64; + description + "Count of sent packets"; + } + leaf send-drops-ipv6 { + type uint64; + description + "Drop count of IPv6 sent packets"; + } + leaf receive-drops-ipv6 { + type uint64; + description + "Drop count of IPv6 received packets"; + } + leaf packets-received-ipv6 { + type uint64; + description + "Count of IPv6 received packets"; + } + leaf packets-sent-ipv6 { + type uint64; + description + "Count of IPv6 sent packets"; + } + } + + grouping PMIPV6-SHOW-LMA-STATS-BD { + description + "PMIPv6 LMA Statistics"; + container packet-statistics { + description + "Packet Statistics"; + uses PMIPV6-MM-PKT-STATS-BD; + } + container protocol-statistics { + description + "LMA Protocol Statistics"; + uses PMIPV6-LMA-PROTO-STATS-BD; + } + container accounting-statistics { + description + "LMA Accounting Statistics"; + uses PMIPV6-ACCT-STATS-BD; + } + leaf lma-identifier { + type string; + description + "LMA Identifier"; + } + leaf bce-count { + type uint32; + description + "Count of Bindings"; + } + leaf handoff-count { + type uint32; + description + "Count of Handoffs"; + } + leaf single-tenant-count { + type uint32; + description + "Count of Single Tenants"; + } + leaf multi-tenant-count { + type uint32; + description + "Count of Multi Tenants"; + } + } + + grouping PMIPV6-SHOW-LMA-LICENSE-STATS-BD { + description + "PMIPv6 LMA License Statistics"; + leaf lma-identifier { + type string; + description + "LMA Identifier"; + } + leaf bce-count { + type uint32; + description + "Instantaneous Count of Bindings"; + } + leaf peak-bce-count { + type uint32; + description + "Peak Count of Bindings"; + } + leaf peak-bce-count-reset-timestamp { + type uint32; + description + "Timestamp when the Peak Count of Bindings was + reset"; + } + } + + grouping PMIPV6-ACCT-STATS-BD { + description + "PMIPv6 Accounting Statistics"; + leaf accounting-start-sent-count { + type uint64; + description + "Count of Accounting Start Records Sent"; + } + leaf accounting-update-sent-count { + type uint64; + description + "Count of Accounting Update Records Sent"; + } + leaf accounting-stop-sent-count { + type uint64; + description + "Count of Accounting Stop Records Sent"; + } + } + + grouping PMIPV6-PBRA-STATS-BD { + description + "PMIPv6 PBRA Statistics"; + leaf pbra-count { + type uint64; + description + "Count of PBRAs"; + } + leaf pbra-drop-count { + type uint32; + description + "Count of PBRAs dropped"; + } + leaf success-count { + type uint32; + description + "Count of Revoc Status - Success"; + } + leaf partial-success-count { + type uint32; + description + "Count of Revoc Status - Partial Success"; + } + leaf no-binding-count { + type uint32; + description + "Count of Revoc Status - Binding Does Not Exist"; + } + leaf hoa-required-count { + type uint32; + description + "Count of Revoc Status - IPv4 Home Address Option + Required"; + } + leaf no-author-for-global-revoc-count { + type uint32; + description + "Count of Revoc Status - Global Revocation NOT + Authorized"; + } + leaf mn-identity-required-count { + type uint32; + description + "Count of Revoc Status - Revoked Mobile Node + Identity Required"; + } + leaf mn-attached-count { + type uint32; + description + "Count of Revoc Status - Revocation Failed - MN + is Attached"; + } + leaf unknown-revoc-trigger-count { + type uint32; + description + "Count of Revoc Status - Revocation Trigger NOT + supported"; + } + leaf revoc-function-not-supported-count { + type uint32; + description + "Count of Revoc Status - Revocation Function NOT + Supported"; + } + leaf pbr-not-supported-count { + type uint32; + description + "Count of Revoc Status - Proxy Binding Revocation + NOT Supported"; + } + } + + grouping PMIPV6-PBRI-STATS-BD { + description + "PMIPv6 PBRI Statistics"; + leaf pbri-count { + type uint64; + description + "Count of PBRIs"; + } + leaf pbri-drop-count { + type uint32; + description + "Count of PBRIs dropped"; + } + leaf unspecified-count { + type uint32; + description + "Count of Revoc Trigger - Unspecified"; + } + leaf admin-reason-count { + type uint32; + description + "Count of Revoc Trigger - Administrative Reason"; + } + leaf mag-handover-same-att-count { + type uint32; + description + "Count of Revoc Trigger - Inter MAG Handover Same + ATT"; + } + leaf mag-handover-different-att-count { + type uint32; + description + "Count of Revoc Trigger - Inter MAG Handover + Different ATT"; + } + leaf mag-handover-unknown-count { + type uint32; + description + "Count of Revoc Trigger - Inter MAG Handover + Unknown"; + } + leaf user-session-termination-count { + type uint32; + description + "Count of Revoc Trigger - User Init Session + Terminatation"; + } + leaf network-session-termination-count { + type uint32; + description + "Count of Revoc Trigger - Access Network Session + Termination"; + } + leaf out-of-sync-bce-state-count { + type uint32; + description + "Count of Revoc Trigger - Possible Out-of-Sync + BCE State"; + } + leaf per-peer-policy-count { + type uint32; + description + "Count of Revoc Trigger - Per-Peer Policy"; + } + leaf revoking-mn-local-policy-count { + type uint32; + description + "Count of Revoc Trigger - Revoking Mobility Node + Local Policy"; + } + } + + grouping PMIPV6-PBA-STATS-BD { + description + "PMIPv6 PBA Statistics"; + leaf pba-count { + type uint64; + description + "Count of PBAs"; + } + leaf pba-drop-count { + type uint32; + description + "Count of PBAs dropped"; + } + leaf accepted-count { + type uint32; + description + "Count of Status Code - Binding Update accepted"; + } + leaf unknown-count { + type uint32; + description + "Count of Status Code - Last BA status code sent."; + } + leaf unspecified-failure-count { + type uint32; + description + "Count of Status Code - Reason unspecified"; + } + leaf admin-failure-count { + type uint32; + description + "Count of Status Code - Administratively + prohibited"; + } + leaf resource-failure-count { + type uint32; + description + "Count of Status Code - Insufficient resources"; + } + leaf home-reg-failure-count { + type uint32; + description + "Count of Status Code - Home registration not + supported"; + } + leaf home-subnet-failure-count { + type uint32; + description + "Count of Status Code - Not home subnet"; + } + leaf bad-sequence-failure-count { + type uint32; + description + "Count of Status Code - Sequence number out of + window"; + } + leaf reg-type-failure-count { + type uint32; + description + "Count of Status Code - Registration type change"; + } + leaf authen-failure-count { + type uint32; + description + "Count of Status Code - Auth Fail"; + } + leaf proxy-reg-not-enabled-count { + type uint32; + description + "Count of Status Code - Proxy Registration not + enabled"; + } + leaf not-lma-for-this-mn-count { + type uint32; + description + "Count of Status Code - Not LMA for this Mobile + Node"; + } + leaf no-author-for-proxy-reg-count { + type uint32; + description + "Count of Status Code - MAG not auth.for proxyreg"; + } + leaf no-author-for-hnp-count { + type uint32; + description + "Count of Status Code - Not authorized for HNP"; + } + leaf timestamp-mismatch-count { + type uint32; + description + "Count of Status Code - Invalid timestamp value"; + } + leaf timestamp-lower-than-previous-accepted-count { + type uint32; + description + "Count of Status Code - Timestamp lower than + previous accepted"; + } + leaf missing-hnp-opt-count { + type uint32; + description + "Count of Status Code - Missing Home Network + Prefix option"; + } + leaf received-hnps-do-not-match-bce-hnps-count { + type uint32; + description + "Count of Status Code - Recevied HNPs do not + match with BCE"; + } + leaf missing-mn-id-opt-count { + type uint32; + description + "Count of Status Code - Missing MN identifier + option"; + } + leaf missing-hi-opt-count { + type uint32; + description + "Count of Status Code - Missing Handoff Indicator"; + } + leaf missing-access-tech-type-opt-count { + type uint32; + description + "Count of Status Code - Missing ATT option"; + } + leaf no-author-for-ipv4-mobility-count { + type uint32; + description + "Count of Status Code - Not authorized for IPv4 + mobility"; + } + leaf no-author-for-ipv4-hoa-count { + type uint32; + description + "Count of Status Code - Not authorized for IPv4 + HoA"; + } + leaf no-author-for-ipv6-mobility-count { + type uint32; + description + "Count of Status Code - Not authorized for IPv6 + mobility"; + } + leaf multiple-ipv4-ho-a-not-supported-count { + type uint32; + description + "Count of Status Code - Multiple IPv4 HoA not + supported"; + } + leaf gre-key-opt-required-count { + type uint32; + description + "Count of Status Code - GRE Key option is + required"; + } + } + + grouping PMIPV6-PBU-STATS-BD { + description + "PMIPv6 PBU Statistics"; + leaf pbu-count { + type uint64; + description + "Count of PBUs"; + } + leaf pbu-drop-count { + type uint32; + description + "Count of PBUs Dropped"; + } + } + + grouping PMIPV6-LMA-PROTO-STATS-BD { + description + "PMIPv6 LMA Protocol Statistics"; + container pbu-receive-statistics { + description + "PBU Receive Statistics"; + uses PMIPV6-PBU-STATS-BD; + } + container pba-send-statistics { + description + "PBA Send Statistics"; + uses PMIPV6-PBA-STATS-BD; + } + container pbri-send-statistics { + description + "PBRI Send Statistics"; + uses PMIPV6-PBRI-STATS-BD; + } + container pbri-receive-statistics { + description + "PBRI Receive Statistics"; + uses PMIPV6-PBRI-STATS-BD; + } + container pbra-send-statistics { + description + "PBRA Send Statistics"; + uses PMIPV6-PBRA-STATS-BD; + } + container pbra-receive-statistics { + description + "PBRA Receive Statistics"; + uses PMIPV6-PBRA-STATS-BD; + } + } + + grouping PMIPV6-SHOW-LMA-CUST-STATS-BD { + description + "PMIPv6 LMA Customer Statistics"; + container protocol-statistics { + description + "LMA Protocol Statistics"; + uses PMIPV6-LMA-PROTO-STATS-BD; + } + container accounting-statistics { + description + "LMA Accounting Statistics"; + uses PMIPV6-ACCT-STATS-BD; + } + leaf lma-identifier { + type string; + description + "LMA Identifier"; + } + leaf bce-count { + type uint32; + description + "Count of Bindings"; + } + leaf handoff-count { + type uint32; + description + "Count of Handoffs"; + } + leaf ipv4-mnp-count { + type uint32; + description + "Count of IPv4 Mobile Node Prefixes"; + } + leaf ipv6-mnp-count { + type uint32; + description + "Count of IPv6 Mobile Node Prefixes"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper.yang new file mode 100644 index 000000000..d01071d1b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-mobileip-oper.yang @@ -0,0 +1,176 @@ +module Cisco-IOS-XR-ip-mobileip-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-mobileip-oper"; + prefix ip-mobileip-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-mobileip-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-mobileip package operational data. + + This module contains definitions + for the following management objects: + pmipv6: Proxy Mobile IPv6 + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-03-10 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container pmipv6 { + config false; + description + "Proxy Mobile IPv6"; + container lma { + description + "None"; + container statistics { + description + "None"; + container customer-statistics { + description + "Table of CustomerStatistics"; + list customer-statistic { + key "customer-name"; + description + "Customer statistics"; + leaf customer-name { + type xr:Cisco-ios-xr-string; + description + "Customer Name"; + } + uses PMIPV6-SHOW-LMA-CUST-STATS-BD; + } + } + container license { + description + "LMA License Statistics"; + uses PMIPV6-SHOW-LMA-LICENSE-STATS-BD; + } + container global { + description + "Global Statistics"; + uses PMIPV6-SHOW-LMA-STATS-BD; + } + container mag-statistics { + description + "Table of MAGStatistics"; + list mag-statistic { + key "mag-name"; + description + "Peer MAG statistics"; + leaf mag-name { + type xr:Cisco-ios-xr-string; + description + "Peer MAG Name"; + } + uses PMIPV6-SHOW-LMA-PEER-STATS-BD; + } + } + } + container bindings { + description + "Table of Binding"; + list binding { + description + "Binding Parameters"; + leaf mag-name { + type xr:Cisco-ios-xr-string; + description + "Peer MAG ID"; + } + leaf nai-string { + type xr:Cisco-ios-xr-string; + description + "NAI String"; + } + leaf imsi-string { + type xr:Cisco-ios-xr-string; + description + "IMSI String"; + } + leaf customer-name { + type xr:Cisco-ios-xr-string; + description + "Customer String"; + } + uses PMIPV6-SHOW-BINDING-BD; + } + } + container heartbeats { + description + "Table of Heartbeat"; + list heartbeat { + key "peer-addr"; + description + "Heartbeat information"; + leaf peer-addr { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 address"; + } + uses PMIPV6-SHOW-HB-PATH-BD; + } + } + container config-variables { + description + "Global Configuration Variables"; + container customer-variables { + description + "Table of CustomerVariables"; + list customer-variable { + key "customer-name"; + description + "Customer name string"; + leaf customer-name { + type xr:Cisco-ios-xr-string; + description + "Customer name"; + } + uses PMIPV6-SHOW-CUST-GLOBALS-BD; + } + } + container global-variables { + description + "Global Configuration Variables"; + uses PMIPV6-SHOW-GLOBALS-BD; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper-sub1.yang new file mode 100644 index 000000000..9cb49971e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper-sub1.yang @@ -0,0 +1,630 @@ +submodule Cisco-IOS-XR-ip-ntp-admin-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-ntp-admin-oper { + prefix Cisco-IOS-XR-ip-ntp-admin-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-ntp-admin package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Added NTP panic handling related. + 2022-01-25 + Updated ip_ntp_admin bag with missing elements."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Authentication { + type enumeration { + enum "none" { + value 0; + description + " No authentication type"; + } + enum "md5" { + value 1; + description + " MD5 authentication"; + } + enum "cmac" { + value 2; + description + " CMAC authentication"; + } + enum "hmac-sha1" { + value 3; + description + " HMAC SHA1 authentication"; + } + enum "hmac-sha2" { + value 4; + description + " HMAC SHA2 authentication"; + } + } + description + "NTP authentication type"; + } + + typedef Ntp-peer-status { + type enumeration { + enum "ntp-ctl-pst-sel-reject" { + description + " reject"; + } + enum "ntp-ctl-pst-sel-sane" { + description + " x falsetick"; + } + enum "ntp-ctl-pst-sel-correct" { + description + " . excess "; + } + enum "ntp-ctl-pst-sel-selcand" { + description + " - outlyer"; + } + enum "ntp-ctl-pst-sel-sync-cand" { + description + " + candidate"; + } + enum "ntp-ctl-pst-sel-distsys-peer" { + description + " # selected"; + } + enum "ntp-ctl-pst-sel-sys-peer" { + description + " * sys peer"; + } + enum "ntp-ctl-pst-sel-pps" { + description + " o pps peer"; + } + } + description + "Type of peer status"; + } + + typedef Ntp-mode { + type enumeration { + enum "ntp-mode-unspec" { + description + "Unspecified probably old NTP version"; + } + enum "ntp-mode-symetric-active" { + description + "Symmetric active"; + } + enum "ntp-mode-symetric-passive" { + description + "Symmetric passive"; + } + enum "ntp-mode-client" { + description + "Client mode"; + } + enum "ntp-mode-server" { + description + "Server mode"; + } + enum "ntp-mode-xcast-server" { + description + "Broadcast mode"; + } + enum "ntp-mode-control" { + description + "Control mode packet"; + } + enum "ntp-mode-private" { + description + "Implementation defined function"; + } + enum "ntp-mode-xcast-client" { + description + "A broadcast client mode"; + } + } + description + "Type of mode"; + } + + typedef Clock-update-node { + type enumeration { + enum "clk-never-updated" { + value 0; + description + " clock is never updated"; + } + enum "clk-updated" { + value 1; + description + " clock is updated"; + } + enum "clk-no-update-info" { + value 2; + description + " clock has no update info"; + } + } + description + "Mode of Clock Update"; + } + + typedef Ntp-loop-filter-state { + type enumeration { + enum "ntp-loop-flt-n-set" { + value 1; + description + " never set"; + } + enum "ntp-loop-flt-f-set" { + value 2; + description + " drift set from file"; + } + enum "ntp-loop-flt-spik" { + value 3; + description + " spike"; + } + enum "ntp-loop-flt-freq" { + value 4; + description + " drift being measured"; + } + enum "ntp-loop-flt-sync" { + value 5; + description + " normal controlled loop"; + } + enum "ntp-loop-flt-unkn" { + value 6; + description + " unknown"; + } + } + description + "Loop filter state"; + } + + typedef Ntp-leap { + type enumeration { + enum "ntp-leap-no-warning" { + description + "Normal, no leap second warning"; + } + enum "ntp-leap-addse-cond" { + description + "Last minute of day has 61 seconds"; + } + enum "ntp-leap-delse-cond" { + description + "Last minute of day has 59 seconds"; + } + enum "ntp-leap-not-in-sync" { + description + "Overload, clock is free running"; + } + } + description + "Type of leap"; + } + + grouping FILTER-DETAILS { + description + "Sub part of peer info"; + leaf filter-delay { + type string; + description + "filter delay"; + } + leaf filter-offset { + type string; + description + "filter offset"; + } + leaf filter-disp { + type string; + description + "filter disp"; + } + } + + grouping NTP-EDM-PEER-DETAIL-INFO { + description + "Peer Detail Information"; + container peer-info-common { + description + "Common peer info"; + uses NTP-EDM-PEER-INFO-COMMON; + } + container ref-time { + description + "Reference time"; + uses EDM-L-FP; + } + container originate-time { + description + "Originate timestamp"; + uses EDM-L-FP; + } + container receive-time { + description + "Receive timestamp"; + uses EDM-L-FP; + } + container transmit-time { + description + "Transmit timestamp"; + uses EDM-L-FP; + } + leaf leap { + type Ntp-leap; + description + "Leap"; + } + leaf peer-mode { + type Ntp-mode; + description + "Peer's association mode"; + } + leaf poll-interval { + type uint8; + description + "Peer poll interval"; + } + leaf is-ref-clock { + type boolean; + description + "Is refclock"; + } + leaf is-authenticated { + type boolean; + description + "Is authenticated"; + } + leaf authentication-type { + type Authentication; + description + "NTP authentication type"; + } + leaf root-delay { + type string; + description + "Root delay"; + } + leaf root-dispersion { + type string; + description + "Root dispersion"; + } + leaf synch-distance { + type string; + description + "Synch distance"; + } + leaf precision { + type int8; + description + "Precision"; + } + leaf version { + type uint8; + description + "NTP version"; + } + leaf filter-index { + type uint32; + description + "Index into filter shift register"; + } + leaf cast-flags { + type uint8; + description + "Cast Flags"; + } + list filter-detail { + max-elements "8"; + description + "Filter Details"; + uses FILTER-DETAILS; + } + } + + grouping NTP-EDM-ASSOC-DETAIL-RESULT { + description + "The NTP association detail result"; + leaf is-ntp-enabled { + type boolean; + description + "Is NTP enabled"; + } + leaf sys-leap { + type Ntp-leap; + description + "Leap"; + } + list peer-detail-info { + description + "Peer info"; + uses NTP-EDM-PEER-DETAIL-INFO; + } + } + + grouping NTP-EDM-PEER-INFO-COMMON { + description + "Peer common info"; + leaf host-mode { + type Ntp-mode; + description + "Association mode with this peer"; + } + leaf is-configured { + type boolean; + description + "Is configured"; + } + leaf address { + type string; + description + "Peer Address"; + } + leaf reference-id { + type inet:ipv4-address; + description + "Peer reference ID"; + } + leaf host-poll { + type uint8; + description + "Host poll"; + } + leaf reachability { + type uint8; + description + "Reachability"; + } + leaf stratum { + type uint8; + description + "Peer stratum"; + } + leaf status { + type Ntp-peer-status; + description + "Peer status"; + } + leaf delay { + type string; + description + "Peer delay"; + } + leaf offset { + type string; + description + "Peer offset"; + } + leaf dispersion { + type string; + description + "Peer dispersion"; + } + leaf is-sys-peer { + type boolean; + description + "Indicates whether this is syspeer"; + } + } + + grouping NTP-EDM-PEER-SUMMARY-INFO { + description + "Peer summary info"; + container peer-info-common { + description + "Common peer info"; + uses NTP-EDM-PEER-INFO-COMMON; + } + leaf time-since { + type int32; + description + "Time since last frame received (-1=none)"; + } + } + + grouping NTP-EDM-ASSOC-SUMMARY-RESULT { + description + "The NTP association result"; + leaf is-ntp-enabled { + type boolean; + description + "Is NTP enabled"; + } + leaf sys-leap { + type Ntp-leap; + description + "Leap"; + } + list peer-summary-info { + description + "Peer info"; + uses NTP-EDM-PEER-SUMMARY-INFO; + } + } + + grouping EDM-UL-F { + description + "EDM UL F"; + leaf frac { + type uint32; + description + "Fractional format in NTP reference code"; + } + } + + grouping EDM-UL-I { + description + "EDM UL I"; + leaf int { + type uint32; + description + "Integer format in NTP reference code"; + } + } + + grouping EDM-L-FP { + description + "EDM L FP"; + container sec { + description + "Second part in 64-bit NTP timestamp"; + uses EDM-UL-I; + } + container frac-secs { + description + "Fractional part in 64-bit NTP timestamp"; + uses EDM-UL-F; + } + } + + grouping NTP-EDM-STATUS-RESULT { + description + "The NTP status result"; + container sys-ref-time { + description + "Reference time"; + uses EDM-L-FP; + } + container sys-drift { + description + "System Drift"; + uses EDM-L-FP; + } + leaf is-ntp-enabled { + type boolean; + description + "Is NTP enabled"; + } + leaf sys-dispersion { + type string; + description + "Peer dispersion"; + } + leaf sys-offset { + type string; + description + "Clock offset"; + } + leaf clock-period { + type uint32; + units "nanosecond"; + description + "Clock period in nanosecs"; + } + leaf sys-leap { + type Ntp-leap; + description + "leap"; + } + leaf sys-precision { + type int8; + description + "Precision"; + } + leaf sys-stratum { + type uint8; + description + "Stratum"; + } + leaf sys-ref-id { + type inet:ipv4-address; + description + "Reference clock ID"; + } + leaf sys-root-delay { + type string; + description + "Root delay"; + } + leaf sys-root-dispersion { + type string; + description + "Root dispersion"; + } + leaf loop-filter-state { + type Ntp-loop-filter-state; + description + "Loop Filter State"; + } + leaf poll-interval { + type uint8; + description + "Peer poll interval"; + } + leaf is-updated { + type Clock-update-node; + description + "Is clock updated"; + } + leaf last-update { + type int32; + description + "Last Update"; + } + leaf is-auth-enabled { + type boolean; + description + "Is NTP Authenticate enabled"; + } + leaf sys-peer-assoc-id { + type uint32; + description + "Assoc Id of system peer"; + } + leaf is-panic-handling-enabled { + type boolean; + description + "Is panic handling enabled"; + } + leaf host-name-retry-interval { + type uint32; + description + "Hostname retry interval"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper.yang new file mode 100644 index 000000000..23388d6ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-admin-oper.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-ip-ntp-admin-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-ntp-admin-oper"; + prefix ip-ntp-admin-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-ntp-admin-oper-sub1 { + revision-date 2022-09-22; + } + + 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 ip-ntp package + admin-plane operational data. + + This module contains definitions + for the following management objects: + ntp: NTP admin operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Added NTP panic handling related. + 2022-01-25 + Updated ip_ntp_admin bag with missing elements."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ntp { + config false; + description + "NTP admin operational data"; + container racks { + description + "Rack-specific NTP operational data"; + list rack { + key "number"; + description + "NTP operational data for a particular rack"; + container slots { + description + "Node-specific NTP operational data"; + list slot { + key "number"; + description + "NTP operational data for a particular slot"; + container instances { + description + "Instance-specific NTP operational data"; + list instance { + key "number"; + description + "NTP operational data for a particular + instance"; + container status { + description + "Status of NTP peer(s)"; + uses NTP-EDM-STATUS-RESULT; + } + container associations { + description + "NTP Associations information"; + uses NTP-EDM-ASSOC-SUMMARY-RESULT; + } + container associations-detail { + description + "NTP Associations Detail information"; + uses NTP-EDM-ASSOC-DETAIL-RESULT; + } + leaf number { + type uint32; + description + "The instance number"; + } + } + } + leaf number { + type uint32; + description + "The slot number"; + } + } + } + leaf number { + type uint32; + description + "The rack number"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-cfg.yang new file mode 100644 index 000000000..1367bfb98 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-cfg.yang @@ -0,0 +1,858 @@ +module Cisco-IOS-XR-ip-ntp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-ntp-cfg"; + prefix ip-ntp-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 ip-ntp package configuration. + + This module contains definitions + for the following management objects: + ntp: NTP configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-01 { + description + "user configurable hostname resolution retry interval. + 2022-06-20 + Changed description for panic threshold handling."; + semver:module-version "2.2.0"; + } + revision 2021-09-23 { + description + "Changed description for CMAC key. + 2021-09-13 + Added the capability of configuring clear text key via yang. + 2021-09-08 + Fixed descriptions. + 2021-09-01 + Strong authentication options added."; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ntp-prefer-peer { + type empty; + description + "Prefer"; + } + + typedef Ntpdscp { + type enumeration { + enum "ntp-precedence" { + value 0; + description + "Precedence Value"; + } + enum "ntpdscp" { + value 1; + description + "DSCP Value"; + } + } + description + "Ntpdscp"; + } + + typedef Ntp-key-number { + type uint32 { + range "1..65535"; + } + description + "Ntp key number"; + } + + typedef Ntpttl { + type uint32 { + range "1..255"; + } + description + "Ntpttl"; + } + + typedef Ntp-burst { + type empty; + description + "Burst"; + } + + typedef Ntpi-burst { + type empty; + description + "IBurst"; + } + + typedef Ntp-version { + type uint32 { + range "2..4"; + } + description + "Ntp version"; + } + + typedef Ntp-peer { + type enumeration { + enum "peer" { + value 0; + description + "Peer"; + } + enum "server" { + value 1; + description + "Server"; + } + } + description + "Ntp peer"; + } + + typedef Ntp-access-af { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4"; + } + enum "ipv6" { + value 1; + description + "IPv6"; + } + } + description + "Ntp access af"; + } + + typedef Ntp-access { + type enumeration { + enum "peer" { + value 0; + description + "Peer"; + } + enum "serve" { + value 1; + description + "Serve"; + } + enum "serve-only" { + value 2; + description + "Serve Only"; + } + enum "query-only" { + value 3; + description + "Query Only"; + } + } + description + "Ntp access"; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container ntp { + description + "CISCO-NTP-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable ciscoNtpMIB notification configuration"; + } + } + } + container ntp { + description + "NTP configuration"; + container admin-types { + description + "Configure NTP server admin-plane"; + list admin-type { + key "peer-type"; + description + "Configure NTP server admin plane"; + leaf peer-type { + type Ntp-peer; + description + "Peer or Server"; + } + leaf ntp-version { + type Ntp-version; + description + "NTP version"; + } + leaf authentication-key { + type Ntp-key-number; + description + "Authentication Key"; + } + leaf min-poll { + type uint32 { + range "4..17"; + } + description + "Minimum poll interval"; + } + leaf max-poll { + type uint32 { + range "4..17"; + } + description + "Maxinum poll interval"; + } + leaf preferred-peer { + type Ntp-prefer-peer; + description + "Preferred peer"; + } + leaf burst { + type Ntp-burst; + description + "Use burst mode"; + } + leaf iburst { + type Ntpi-burst; + description + "Use iburst mode"; + } + } + } + container peer-vrfs { + description + "Configures NTP Peers or Servers"; + list peer-vrf { + key "vrf-name"; + description + "Configures NTP Peers or Servers for a single + VRF. The 'default' must also be specified for + default VRF"; + container peer-ipv4s { + description + "Configures IPv4 NTP Peers or Servers"; + list peer-ipv4 { + key "address-ipv4"; + description + "Configure an IPv4 NTP server or peer"; + leaf address-ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 Address of a peer"; + } + list peer-type-ipv4 { + key "peer-type"; + description + "Configure an IPv4 NTP server or peer"; + leaf peer-type { + type Ntp-peer; + description + "Peer or Server"; + } + leaf ntp-version { + type Ntp-version; + description + "NTP version"; + } + leaf authentication-key { + type Ntp-key-number; + description + "Authentication Key"; + } + leaf min-poll { + type uint32 { + range "4..17"; + } + description + "Minimum poll interval"; + } + leaf max-poll { + type uint32 { + range "4..17"; + } + description + "Maxinum poll interval"; + } + leaf preferred-peer { + type Ntp-prefer-peer; + description + "Preferred peer"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface of this peer"; + } + leaf burst { + type Ntp-burst; + description + "Use burst mode"; + } + leaf iburst { + type Ntpi-burst; + description + "Use iburst mode"; + } + } + } + } + container peer-ipv6s { + description + "Configuration NTP Peers or Servers of IPV6"; + list peer-ipv6 { + key "address-ipv6"; + description + "Configure a NTP server or peer"; + leaf address-ipv6 { + type inet:ipv6-address-no-zone; + description + "Address of a peer"; + } + list peer-type-ipv6 { + key "peer-type"; + description + "Configure a NTP server or peer"; + leaf peer-type { + type Ntp-peer; + description + "Peer or Server"; + } + leaf ntp-version { + type Ntp-version; + description + "NTP version"; + } + leaf authentication-key { + type Ntp-key-number; + description + "Authentication Key"; + } + leaf min-poll { + type uint32 { + range "4..17"; + } + description + "Minimum poll interval"; + } + leaf max-poll { + type uint32 { + range "4..17"; + } + description + "Maxinum poll interval"; + } + leaf preferred-peer { + type Ntp-prefer-peer; + description + "Preferred peer"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface of this peer"; + } + leaf burst { + type Ntp-burst; + description + "Use burst mode"; + } + leaf iburst { + type Ntpi-burst; + description + "Use iburst mode"; + } + leaf address-ipv6 { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container dscp-ipv4 { + presence "Indicates a dscp-ipv4 node is configured."; + description + " Set IP DSCP value for outgoing NTP IPV4 packets"; + leaf mode { + type Ntpdscp; + mandatory true; + description + "NTPPRECEDENCE (0) to specify Precedence value + NTPDSCP (1) to specify DSCP value"; + } + leaf dscp-or-precedence-value { + type uint32 { + range "0..63"; + } + mandatory true; + description + "If Mode is set to 'NTPPRECEDENCE(0)' specify + Precedence value , if Mode is set to + 'NTPDSCP(1)' specify DSCP"; + } + } + container dscp-ipv6 { + presence "Indicates a dscp-ipv6 node is configured."; + description + " Set IP DSCP value for outgoing NTP IPV6 packets"; + leaf mode { + type Ntpdscp; + mandatory true; + description + "NTPPRECEDENCE(0) to specify Precedence value + NTPDSCP(1) to specify DSCP value"; + } + leaf dscp-or-precedence-value { + type uint32 { + range "0..63"; + } + mandatory true; + description + "If Mode is set to 'NTPPRECEDENCE(0)' specify + Precedence value , if Mode is set to + 'NTPDSCP(1)' specify DSCP"; + } + } + container sources { + description + "Configure NTP source interface"; + list source { + key "vrf-name"; + description + "Configure NTP source interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf source-interface { + type xr:Interface-name; + mandatory true; + description + "Source Interface for NTP"; + } + } + } + container panic { + description + "Configure NTP panic threshold handling"; + leaf enable { + type empty; + description + "Enable NTP panic threshold handling"; + } + } + container drift { + description + "NTP drift"; + container file { + presence "Contains mandatory nodes that used to set default values"; + description + "File containing drift value"; + leaf location { + type string; + mandatory true; + description + "disk0 or apphost or config or ftp or harddisk + or rootfs or tftp. Defaults to PWD if none + specified"; + } + leaf filename { + type string; + description + "File containing drift value"; + } + } + leaf aging-time { + type uint32 { + range "0..65535"; + } + description + "Drift Aging Time"; + } + } + container authentication { + description + "Configure NTP Authentication keys"; + container auth-hmacsha1 { + description + "Configure NTP Authentication keys HMAC-SHA1"; + container key-hmacsha1s { + description + "Authentication Key Table for HMAC-SHA1"; + list key-hmacsha1 { + key "key-number"; + description + "Authentication key for trusted time sources"; + leaf key-number { + type Ntp-key-number; + description + "Authentication Key number"; + } + leaf authentication-key { + type xr:Proprietary-password; + mandatory true; + description + "Authentication key - maximum 32 characters"; + } + } + } + } + container auth-hmacsha2 { + description + "Configure NTP Authentication keys HMAC-SHA2"; + container key-hmacsha2s { + description + "Authentication Key Table for HMAC-SHA2"; + list key-hmacsha2 { + key "key-number"; + description + "Authentication key for trusted time sources"; + leaf key-number { + type Ntp-key-number; + description + "Authentication Key number"; + } + leaf authentication-key { + type xr:Proprietary-password; + mandatory true; + description + "Authentication key - maximum 32 characters"; + } + } + } + } + container keys { + description + "Authentication Key Table for MD5"; + list key { + key "key-number"; + description + "Authentication key for trusted time sources"; + leaf key-number { + type Ntp-key-number; + description + "Authentication Key number"; + } + leaf authentication-key { + type xr:Proprietary-password; + mandatory true; + description + "Authentication key - maximum 32 characters"; + } + } + } + container auth-cmac { + description + "Configure NTP Authentication keys CMAC"; + container key-cmacs { + description + "Authentication Key Table for CMAC"; + list key-cmac { + key "key-number"; + description + "Authentication key for trusted time sources"; + leaf key-number { + type Ntp-key-number; + description + "Authentication Key number"; + } + leaf authentication-key { + type xr:Proprietary-password; + mandatory true; + description + "Authentication key - 16 characters"; + } + } + } + } + container trusted-keys { + description + "Key numbers for trusted time sources"; + list trusted-key { + key "key-number"; + description + "Configure NTP trusted key"; + leaf key-number { + type Ntp-key-number; + description + "Key number"; + } + } + } + leaf enable { + type empty; + description + "Enable NTP authentication keys"; + } + } + container passive { + description + "Configure NTP passive associations"; + leaf enable { + type empty; + description + "Enable NTP Passive associations"; + } + } + container interface-tables { + description + "NTP per interface configuration"; + list interface-table { + key "vrf-name"; + description + "NTP per interface configuration"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + list interface { + key "interface"; + description + "Name of the interface"; + container interface-multicast { + description + "Configure NTP multicast service"; + container multicast-clients { + description + "Configures multicast client peers"; + list multicast-client { + key "ip-address"; + description + "Listen to NTP multicasts"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of a multicast group"; + } + } + } + container multicast-servers { + description + "Configures multicast server peers"; + list multicast-server { + key "ip-address"; + description + "Configure NTP multicast group server peer"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of a multicast group"; + } + leaf authentication-key { + type Ntp-key-number; + description + "Authentication key"; + } + leaf version { + type Ntp-version; + description + "NTP version"; + } + leaf ttl { + type Ntpttl; + description + "TTL"; + } + } + } + } + container interface-broadcast { + description + "Configure NTP broadcast service"; + container broadcast-servers { + description + "Configure NTP broadcast"; + list broadcast-server { + key "broadcast-type"; + description + "Configure NTP broadcast server"; + leaf broadcast-type { + type xr:Cisco-ios-xr-string; + description + "Broadcast Type"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Destination broadcast IPv4 address"; + } + leaf authentication-key { + type Ntp-key-number; + description + "Authentication key"; + } + leaf ntp-version { + type Ntp-version; + description + "NTP version"; + } + } + } + leaf broadcast-client { + type empty; + description + "Listen to NTP broadcasts"; + } + } + leaf disable { + type empty; + description + "Disable NTP"; + } + leaf interface { + type xr:Interface-name; + description + "interface"; + } + } + } + } + container access-group-tables { + description + "Control NTP access"; + list access-group-table { + key "vrf-name"; + description + "Control NTP access"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + list access-group-af-table { + key "af"; + description + "Configure NTP access address family"; + leaf af { + type Ntp-access-af; + description + "Address family"; + } + list access-group { + key "access-group-type"; + description + "Configure NTP access group"; + leaf access-group-type { + type Ntp-access; + description + "Access group type"; + } + leaf access-list-name { + type string; + mandatory true; + description + "Access list name - maximum 32 characters"; + } + } + } + } + } + leaf max-associations { + type uint32 { + range "0..4294967295"; + } + description + "Set maximum number of associations"; + } + leaf host-name-retry-interval { + type uint32 { + range "60..1440"; + } + description + "Hostname resolution retry interval range between + 60 to 1440 minutes, default 1440"; + } + leaf master { + type uint32 { + range "1..20"; + } + default "8"; + description + "Act as NTP master clock"; + } + leaf broadcast-delay { + type uint32 { + range "1..999999"; + } + description + "Estimated round-trip delay"; + } + leaf log-internal-sync { + type empty; + description + "To enable logging internal sync conflicts"; + } + leaf update-calendar { + type empty; + description + "To enable calendar update with NTP time"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper-sub1.yang new file mode 100644 index 000000000..eddc2b8f8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper-sub1.yang @@ -0,0 +1,631 @@ +submodule Cisco-IOS-XR-ip-ntp-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-ntp-oper { + prefix Cisco-IOS-XR-ip-ntp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-ntp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Added NTP panic handling related. + 2022-02-01 + backward compatible addition, in leaf sys-peer-assoc-id was made"; + semver:module-version "1.2.0"; + } + revision 2021-08-23 { + description + "Strong NTP authentication needs addition of authentication type."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Clock-update-node { + type enumeration { + enum "clk-never-updated" { + value 0; + description + " clock is never updated"; + } + enum "clk-updated" { + value 1; + description + " clock is updated"; + } + enum "clk-no-update-info" { + value 2; + description + " clock has no update info"; + } + } + description + "Mode of Clock Update"; + } + + typedef Ntp-loop-filter-state { + type enumeration { + enum "ntp-loop-flt-n-set" { + value 1; + description + " never set"; + } + enum "ntp-loop-flt-f-set" { + value 2; + description + " drift set from file"; + } + enum "ntp-loop-flt-spik" { + value 3; + description + " spike"; + } + enum "ntp-loop-flt-freq" { + value 4; + description + " drift being measured"; + } + enum "ntp-loop-flt-sync" { + value 5; + description + " normal controlled loop"; + } + enum "ntp-loop-flt-unkn" { + value 6; + description + " unknown"; + } + } + description + "Loop filter state"; + } + + typedef Authentication { + type enumeration { + enum "none" { + value 0; + description + " No authentication type"; + } + enum "md5" { + value 1; + description + " MD5 authentication"; + } + enum "cmac" { + value 2; + description + " CMAC authentication"; + } + enum "hmac-sha1" { + value 3; + description + " HMAC SHA1 authentication"; + } + enum "hmac-sha2" { + value 4; + description + " HMAC SHA2 authentication"; + } + } + description + "NTP authentication type"; + } + + typedef Ntp-peer-status { + type enumeration { + enum "ntp-ctl-pst-sel-reject" { + description + " reject"; + } + enum "ntp-ctl-pst-sel-sane" { + description + " x falsetick"; + } + enum "ntp-ctl-pst-sel-correct" { + description + " . excess "; + } + enum "ntp-ctl-pst-sel-selcand" { + description + " - outlyer"; + } + enum "ntp-ctl-pst-sel-sync-cand" { + description + " + candidate"; + } + enum "ntp-ctl-pst-sel-distsys-peer" { + description + " # selected"; + } + enum "ntp-ctl-pst-sel-sys-peer" { + description + " * sys peer"; + } + enum "ntp-ctl-pst-sel-pps" { + description + " o pps peer"; + } + } + description + "Type of peer status"; + } + + typedef Ntp-mode { + type enumeration { + enum "ntp-mode-unspec" { + description + "Unspecified probably old NTP version"; + } + enum "ntp-mode-symetric-active" { + description + "Symmetric active"; + } + enum "ntp-mode-symetric-passive" { + description + "Symmetric passive"; + } + enum "ntp-mode-client" { + description + "Client mode"; + } + enum "ntp-mode-server" { + description + "Server mode"; + } + enum "ntp-mode-xcast-server" { + description + "Broadcast mode"; + } + enum "ntp-mode-control" { + description + "Control mode packet"; + } + enum "ntp-mode-private" { + description + "Implementation defined function"; + } + enum "ntp-mode-xcast-client" { + description + "A broadcast client mode"; + } + } + description + "Type of mode"; + } + + typedef Ntp-leap { + type enumeration { + enum "ntp-leap-no-warning" { + description + "Normal, no leap second warning"; + } + enum "ntp-leap-addse-cond" { + description + "Last minute of day has 61 seconds"; + } + enum "ntp-leap-delse-cond" { + description + "Last minute of day has 59 seconds"; + } + enum "ntp-leap-not-in-sync" { + description + "Overload, clock is free running"; + } + } + description + "Type of leap"; + } + + grouping NTP-EDM-PEER-SUMMARY-INFO { + description + "Peer summary info"; + container peer-info-common { + description + "Common peer info"; + uses NTP-EDM-PEER-INFO-COMMON; + } + leaf time-since { + type int32; + description + "Time since last frame received (-1=none)"; + } + } + + grouping NTP-EDM-ASSOC-SUMMARY-RESULT { + description + "The NTP association result"; + leaf is-ntp-enabled { + type boolean; + description + "Is NTP enabled"; + } + leaf sys-leap { + type Ntp-leap; + description + "Leap"; + } + list peer-summary-info { + description + "Peer info"; + uses NTP-EDM-PEER-SUMMARY-INFO; + } + } + + grouping NTP-EDM-STATUS-RESULT { + description + "The NTP status result"; + container sys-ref-time { + description + "Reference time"; + uses EDM-L-FP; + } + container sys-drift { + description + "System Drift"; + uses EDM-L-FP; + } + leaf is-ntp-enabled { + type boolean; + description + "Is NTP enabled"; + } + leaf sys-dispersion { + type string; + description + "Peer dispersion"; + } + leaf sys-offset { + type string; + description + "Clock offset"; + } + leaf clock-period { + type uint32; + units "nanosecond"; + description + "Clock period in nanosecs"; + } + leaf sys-leap { + type Ntp-leap; + description + "leap"; + } + leaf sys-precision { + type int8; + description + "Precision"; + } + leaf sys-stratum { + type uint8; + description + "Stratum"; + } + leaf sys-ref-id { + type inet:ipv4-address; + description + "Reference clock ID"; + } + leaf sys-root-delay { + type string; + description + "Root delay"; + } + leaf sys-root-dispersion { + type string; + description + "Root dispersion"; + } + leaf loop-filter-state { + type Ntp-loop-filter-state; + description + "Loop Filter State"; + } + leaf poll-interval { + type uint8; + description + "Peer poll interval"; + } + leaf is-updated { + type Clock-update-node; + description + "Is clock updated"; + } + leaf last-update { + type int32; + description + "Last Update"; + } + leaf is-auth-enabled { + type boolean; + description + "Is NTP Authenticate enabled"; + } + leaf sys-peer-assoc-id { + type uint32; + description + "Assoc Id of system peer"; + } + leaf is-panic-handling-enabled { + type boolean; + description + "Is panic handling enabled"; + } + leaf host-name-retry-interval { + type uint32; + description + "Hostname retry interval"; + } + } + + grouping FILTER-DETAILS { + description + "Sub part of peer info"; + leaf filter-delay { + type string; + description + "filter delay"; + } + leaf filter-offset { + type string; + description + "filter offset"; + } + leaf filter-disp { + type string; + description + "filter disp"; + } + } + + grouping EDM-UL-F { + description + "EDM UL F"; + leaf frac { + type uint32; + description + "Fractional format in NTP reference code"; + } + } + + grouping EDM-UL-I { + description + "EDM UL I"; + leaf int { + type uint32; + description + "Integer format in NTP reference code"; + } + } + + grouping EDM-L-FP { + description + "EDM L FP"; + container sec { + description + "Second part in 64-bit NTP timestamp"; + uses EDM-UL-I; + } + container frac-secs { + description + "Fractional part in 64-bit NTP timestamp"; + uses EDM-UL-F; + } + } + + grouping NTP-EDM-PEER-INFO-COMMON { + description + "Peer common info"; + leaf host-mode { + type Ntp-mode; + description + "Association mode with this peer"; + } + leaf is-configured { + type boolean; + description + "Is configured"; + } + leaf address { + type string; + description + "Peer Address"; + } + leaf reference-id { + type inet:ipv4-address; + description + "Peer reference ID"; + } + leaf host-poll { + type uint8; + description + "Host poll"; + } + leaf reachability { + type uint8; + description + "Reachability"; + } + leaf stratum { + type uint8; + description + "Peer stratum"; + } + leaf status { + type Ntp-peer-status; + description + "Peer status"; + } + leaf delay { + type string; + description + "Peer delay"; + } + leaf offset { + type string; + description + "Peer offset"; + } + leaf dispersion { + type string; + description + "Peer dispersion"; + } + leaf is-sys-peer { + type boolean; + description + "Indicates whether this is syspeer"; + } + } + + grouping NTP-EDM-PEER-DETAIL-INFO { + description + "Peer Detail Information"; + container peer-info-common { + description + "Common peer info"; + uses NTP-EDM-PEER-INFO-COMMON; + } + container ref-time { + description + "Reference time"; + uses EDM-L-FP; + } + container originate-time { + description + "Originate timestamp"; + uses EDM-L-FP; + } + container receive-time { + description + "Receive timestamp"; + uses EDM-L-FP; + } + container transmit-time { + description + "Transmit timestamp"; + uses EDM-L-FP; + } + leaf leap { + type Ntp-leap; + description + "Leap"; + } + leaf peer-mode { + type Ntp-mode; + description + "Peer's association mode"; + } + leaf poll-interval { + type uint8; + description + "Peer poll interval"; + } + leaf is-ref-clock { + type boolean; + description + "Is refclock"; + } + leaf is-authenticated { + type boolean; + description + "Is authenticated"; + } + leaf authentication-type { + type Authentication; + description + "NTP authentication type"; + } + leaf root-delay { + type string; + description + "Root delay"; + } + leaf root-dispersion { + type string; + description + "Root dispersion"; + } + leaf synch-distance { + type string; + description + "Synch distance"; + } + leaf precision { + type int8; + description + "Precision"; + } + leaf version { + type uint8; + description + "NTP version"; + } + leaf filter-index { + type uint32; + description + "Index into filter shift register"; + } + leaf cast-flags { + type uint8; + description + "Cast Flags"; + } + list filter-detail { + max-elements "8"; + description + "Filter Details"; + uses FILTER-DETAILS; + } + } + + grouping NTP-EDM-ASSOC-DETAIL-RESULT { + description + "The NTP association detail result"; + leaf is-ntp-enabled { + type boolean; + description + "Is NTP enabled"; + } + leaf sys-leap { + type Ntp-leap; + description + "Leap"; + } + list peer-detail-info { + description + "Peer info"; + uses NTP-EDM-PEER-DETAIL-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper.yang new file mode 100644 index 000000000..0b5623bc8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-ntp-oper.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-ip-ntp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-ntp-oper"; + prefix ip-ntp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-ntp-oper-sub1 { + revision-date 2022-09-22; + } + + 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 ip-ntp package operational data. + + This module contains definitions + for the following management objects: + ntp: NTP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Added NTP panic handling related. + 2022-02-01 + backward compatible addition, in leaf sys-peer-assoc-id was made"; + semver:module-version "1.2.0"; + } + revision 2021-08-23 { + description + "Strong NTP authentication needs addition of authentication type."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ntp { + config false; + description + "NTP operational data"; + container nodes { + description + "Node-specific NTP operational data"; + list node { + key "node"; + description + "NTP operational data for a particular node"; + container associations-detail { + description + "NTP Associations Detail information"; + uses NTP-EDM-ASSOC-DETAIL-RESULT; + } + container status { + description + "Status of NTP peer(s)"; + uses NTP-EDM-STATUS-RESULT; + } + container associations { + description + "NTP Associations information"; + uses NTP-EDM-ASSOC-SUMMARY-RESULT; + } + leaf node { + type xr:Node-id; + description + "The node identifier"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-cfg.yang new file mode 100644 index 000000000..d4fb406f0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-cfg.yang @@ -0,0 +1,349 @@ +module Cisco-IOS-XR-ip-pfilter-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-pfilter-cfg"; + prefix ip-pfilter-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ip-pfilter package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv6-packet-filter { + description + "IPv6 Packet Filtering configuration for the + interface"; + container inbound { + description + "IPv6 Packet filter to be applied to inbound + packets"; + leaf common-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Reserved for backward compatibility. IPv6 + Packet Filter Name to be applied to Inbound + packets, ACL providing HW optimization when + applied on multiple interfaces. NOTE: This + parameter is mandatory if 'Name' is not + specified."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Reserved for backward compatibility. IPv6 + Packet Filter Name to be applied to Inbound + NOTE: This parameter is mandatory if + 'CommonACLName' is not specified."; + } + leaf interface-statistics { + type empty; + description + "True if packets hitting the ACL should be + counted in hardware per interface.The default + is not to count them. NOTE: + InterfaceStatistics is allowed only if Name is + specified."; + } + leaf compression-level { + type uint32 { + range "0..3"; + } + description + "The level of compression applied to the ACL on + this interface. The range is 0 to 3 with + default being no compression (0)."; + } + leaf-list acl-name-array { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + max-elements "5"; + description + "Array of IPv6 Packet Filter Names to be + applied to Inbound packets"; + } + leaf-list is-common-array { + type boolean; + max-elements "5"; + description + "Array of CommonACL flags for each ACL. TRUE + indicates HW optimization on multiple + interfaces is provided"; + } + } + container outbound { + description + "IPv6 Packet filter to be applied to outbound + packets"; + leaf do-not-use { + type string { + length "1..64"; + } + description + "Reserved. Error if specified."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Reserved for backward compatibility. IPv6 + Packet Filter Name to be applied to Outbound + packets."; + } + leaf interface-statistics { + type empty; + description + "True if packets hitting the ACL should be + counted in hardware per interface.The default + is not to count them."; + } + leaf compression-level { + type uint32 { + range "0..3"; + } + description + "The level of compression applied to the ACL on + this interface. The range is 0 to 3 with + default being no compression (0)."; + } + leaf-list acl-name-array { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + max-elements "5"; + description + "Array of IPv6 Packet Filter Names to be + applied to Inbound packets"; + } + leaf-list is-common-array { + type boolean; + max-elements "5"; + description + "Array of CommonACL flags for each ACL. TRUE + indicates HW optimization on multiple + interfaces is provided"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container es-packet-filter { + description + "ES Packet Filtering configuration for the + interface"; + leaf outbound { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of filter to be applied to outbound + packets"; + } + leaf inbound { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of filter to be applied to inbound packets"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv4-packet-filter { + description + "IPv4 Packet Filtering configuration for the + interface"; + container outbound { + description + "IPv4 Packet filter to be applied to outbound + packets"; + leaf do-not-use { + type string { + length "1..64"; + } + description + "Reserved. Error if specified."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Reserved for backward compatibility. IPv4 + Packet Filter Name to be applied to Outbound + packets NOTE: This parameter is mandatory if + 'CommonACLName' is not specified."; + } + leaf hardware-count { + type empty; + description + "True if packets hitting the ACL should be + counted in the hardware. The default is not + to count them."; + } + leaf interface-statistics { + type empty; + description + "True if packets hitting the ACL should be + counted in hardware per interface.The default + is not to count them."; + } + leaf compression-level { + type uint32 { + range "0..3"; + } + description + "The level of compression applied to the ACL on + this interface. The range is 0 to 3 with + default being no compression (0)."; + } + leaf-list acl-name-array { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + max-elements "5"; + description + "Array of IPv4 Packet Filter Names to be + applied to Outbound packets"; + } + leaf-list is-common-array { + type boolean; + max-elements "5"; + description + "Array of CommonACL flags for each ACL. TRUE + indicates HW optimization on multiple + interfaces is provided"; + } + } + container inbound { + description + "IPv4 Packet filter to be applied to inbound + packets"; + leaf common-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Reserved for backward compatibility. IPv4 + Packet Filter Name to be applied to Inbound + packets, ACL providing HW optimization when + applied on multiple interfaces. NOTE: This + parameter is mandatory if 'Name' is not + specified."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Reserved for backward compatibility. IPv4 + Packet Filter Name to be applied to Inbound + packets NOTE: This parameter is mandatory if + 'CommonACLName' is not specified."; + } + leaf hardware-count { + type empty; + description + "True if packets hitting the ACL should be + counted in the hardware. The default is not + to count them. NOTE: HardwareCount is allowed + only if Name is specified."; + } + leaf interface-statistics { + type empty; + description + "True if packets hitting the ACL should be + counted in hardware per interface.The default + is not to count them. NOTE: + InterfaceStatistics is allowed only if Name is + specified."; + } + leaf compression-level { + type uint32 { + range "0..3"; + } + description + "The level of compression applied to the ACL on + this interface. The range is 0 to 3 with + default being no compression (0)."; + } + leaf-list acl-name-array { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + max-elements "5"; + description + "Array of IPv4 Packet Filter Names to be + applied to Inbound packets"; + } + leaf-list is-common-array { + type boolean; + max-elements "5"; + description + "Array of CommonACL flags for each ACL. TRUE + indicates HW optimization on multiple + interfaces is provided"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper-sub1.yang new file mode 100644 index 000000000..d3eccfc74 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper-sub1.yang @@ -0,0 +1,48 @@ +submodule Cisco-IOS-XR-ip-pfilter-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-pfilter-oper { + prefix Cisco-IOS-XR-ip-pfilter-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-pfilter package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PFILTER-INTF-ACL-INFO { + description + "Pfilter interface ACL details"; + leaf acl-info { + type string; + description + "acl information"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper.yang new file mode 100644 index 000000000..a9c4cc223 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-oper.yang @@ -0,0 +1,106 @@ +module Cisco-IOS-XR-ip-pfilter-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-pfilter-oper"; + prefix ip-pfilter-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-pfilter-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-pfilter package operational data. + + This module contains definitions + for the following management objects: + pfilter-ma: Root class of PfilterMa Oper schema + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ACL-INFO-TABLE { + description + "Common node of ipv4, ipv6"; + container acl-info-table { + description + "Operational data for pfilter"; + container interface-infos { + description + "Operational data for pfilter"; + list interface-info { + key "interface-name"; + description + "Operational data for pfilter in bag"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses PFILTER-INTF-ACL-INFO; + } + } + } + } + + container pfilter-ma { + config false; + description + "Root class of PfilterMa Oper schema"; + container nodes { + description + "Node-specific operational data"; + list node { + key "node-name"; + description + "PfilterMa operational data for a particular + node"; + container process { + description + "Operational data for pfilter"; + container ipv6 { + description + "Operational data for pfilter"; + uses ACL-INFO-TABLE; + } + container ipv4 { + description + "Operational data for pfilter"; + uses ACL-INFO-TABLE; + } + } + leaf node-name { + type xr:Node-id; + description + "The node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-subscriber-cfg.yang new file mode 100644 index 000000000..6538ffede --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-pfilter-subscriber-cfg.yang @@ -0,0 +1,218 @@ +module Cisco-IOS-XR-ip-pfilter-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-pfilter-subscriber-cfg"; + prefix ip-pfilter-subscriber-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 ip-pfilter-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IPV6-PACKET-FILTER { + description + "Common node of ppp, subscriber-service, + ip-subscriber"; + container ipv6-packet-filter { + description + "IPv6 Packet Filtering configuration for the + interface"; + container inbound { + description + "IPv6 Packet filter to be applied to inbound + packets"; + leaf common-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Not supported (Leave unspecified)."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv6 Packet Filter Name to be applied to + Inbound NOTE: This parameter is mandatory if + 'CommonACLName' is not specified."; + } + leaf interface-statistics { + type empty; + description + "Not supported (Leave unspecified)."; + } + } + container outbound { + description + "IPv6 Packet filter to be applied to outbound + packets"; + leaf common-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Not supported (Leave unspecified)."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv6 Packet Filter Name to be applied to + Outbound packets."; + } + leaf interface-statistics { + type empty; + description + "Not supported (Leave unspecified)."; + } + } + } + } + + grouping IPV4-PACKET-FILTER { + description + "Common node of ppp, subscriber-service, + ip-subscriber"; + container ipv4-packet-filter { + description + "IPv4 Packet Filtering configuration for the + template"; + container outbound { + description + "IPv4 Packet filter to be applied to outbound + packets"; + leaf common-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Not supported (Leave unspecified)."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv4 Packet Filter Name to be applied to + Outbound packets."; + } + leaf hardware-count { + type empty; + description + "Not supported (Leave unspecified)."; + } + leaf interface-statistics { + type empty; + description + "Not supported (Leave unspecified)."; + } + } + container inbound { + description + "IPv4 Packet filter to be applied to inbound + packets"; + leaf common-acl-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Not supported (Leave unspecified)."; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "IPv4 Packet Filter Name to be applied to + Inbound packets NOTE: This parameter is + mandatory if 'CommonACLName' is not specified."; + } + leaf hardware-count { + type empty; + description + "Not supported (Leave unspecified)."; + } + leaf interface-statistics { + type empty; + description + "Not supported (Leave unspecified)."; + } + } + } + } + + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV4-PACKET-FILTER; + } + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV4-PACKET-FILTER; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV4-PACKET-FILTER; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-PACKET-FILTER; + } + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-PACKET-FILTER; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-PACKET-FILTER; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-raw-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-raw-cfg.yang new file mode 100644 index 000000000..83562890a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-raw-cfg.yang @@ -0,0 +1,101 @@ +module Cisco-IOS-XR-ip-raw-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-raw-cfg"; + prefix ip-raw-cfg; + + 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 ip-raw package configuration. + + This module contains definitions + for the following management objects: + ip-raw: Global IP RAW configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ip-raw { + description + "Global IP RAW configuration"; + container num-thread { + presence "Indicates a num-thread node is configured."; + description + "RAW InQueue and OutQueue threads"; + leaf raw-in-q-threads { + type uint32 { + range "1..16"; + } + mandatory true; + description + "InQ Threads"; + } + leaf raw-out-q-threads { + type uint32 { + range "1..16"; + } + mandatory true; + description + "OutQ Threads"; + } + } + container directory { + presence "Indicates a directory node is configured."; + description + "RAW directory details"; + leaf directoryname { + type string; + mandatory true; + description + "Directory name"; + } + leaf max-raw-debug-files { + type uint32 { + range "1..18000"; + } + default "256"; + description + "Set number of Debug files"; + } + leaf max-file-size-files { + type uint32 { + range "1024..4294967295"; + } + units "byte"; + description + "Set size of debug files in bytes"; + } + } + leaf receive-q { + type uint32 { + range "40..800"; + } + description + "RAW receive Queue Size"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-cfg.yang new file mode 100644 index 000000000..6615b18e5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-cfg.yang @@ -0,0 +1,192 @@ +module Cisco-IOS-XR-ip-rib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rib-cfg"; + prefix ip-rib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-infra-rsi-cfg { + prefix a1; + } + + 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 ip-rib package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-rib-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + rib: RIB configuration. + + This YANG module augments the + Cisco-IOS-XR-infra-rsi-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-07-31 { + description + "Fixed missing augmentation from multiple MDA parent."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NEXT-HOP-DAMPENING-DISABLE { + description + "Common node of ipv4, ipv6"; + leaf next-hop-dampening-disable { + type empty; + description + "Disable next-hop dampening"; + } + } + + grouping REDISTRIBUTION-HISTORY { + description + "Common node of ipv4, ipv6"; + container redistribution-history { + description + "Redistribution history related configs"; + container keep { + description + "Retain redistribution history after disconnect."; + leaf bcdl { + type empty; + description + "Enable retain BCDL history"; + } + } + leaf bcdl-client { + type uint32 { + range "10..2000000"; + } + description + "Maximum BCDL redistribution history size."; + } + leaf protocol-client { + type uint32 { + range "10..250000"; + } + description + "Maximum protocol redistribution history size."; + } + } + } + + augment "/a1:vrfs/a1:vrf/a1:afs/a1:af" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-rsi-cfg'"; + container maximum-prefix { + presence "Indicates a maximum-prefix node is configured."; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-rib-cfg.yang which will + provide the compatible functionalities. Set + maximum prefix limits"; + leaf prefix-limit { + type uint32 { + range "32..10000000"; + } + mandatory true; + description + "Set table's maximum prefix limit"; + } + leaf mid-threshold { + type uint32 { + range "1..100"; + } + description + "Mid-threshold (% of maximum)"; + } + } + } + augment "/a1:global-af/a1:afs/a1:af" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-rsi-cfg'"; + container maximum-prefix { + presence "Indicates a maximum-prefix node is configured."; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-rib-cfg.yang which will + provide the compatible functionalities. Set + maximum prefix limits"; + leaf prefix-limit { + type uint32 { + range "32..10000000"; + } + mandatory true; + description + "Set table's maximum prefix limit"; + } + leaf mid-threshold { + type uint32 { + range "1..100"; + } + description + "Mid-threshold (% of maximum)"; + } + } + } + container rib { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-rib-cfg.yang which will + provide the compatible functionalities. RIB + configuration."; + container af { + description + "RIB address family configuration"; + container ipv4 { + description + "IPv4 configuration"; + uses NEXT-HOP-DAMPENING-DISABLE; + uses REDISTRIBUTION-HISTORY; + } + container ipv6 { + description + "IPv6 configuration"; + uses NEXT-HOP-DAMPENING-DISABLE; + uses REDISTRIBUTION-HISTORY; + } + } + leaf max-recursion-depth { + type uint32 { + range "5..16"; + } + description + "Set maximum depth for route recursion check"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper-sub1.yang new file mode 100644 index 000000000..5060a10b9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper-sub1.yang @@ -0,0 +1,1706 @@ +submodule Cisco-IOS-XR-ip-rib-gribi-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-rib-gribi-oper { + prefix Cisco-IOS-XR-ip-rib-gribi-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-rib-gribi package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-11 { + description + "has-aft added to route"; + semver:module-version "1.0.0"; + } + revision 2022-04-29 { + description + "Add AFT NHG info"; + } + revision 2022-03-02 { + description + "Add AFT info"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rib-edm-sl-id { + type enumeration { + enum "invalid" { + description + "Invalid Segment List"; + } + enum "srv6" { + description + "SRv6 Segment List"; + } + enum "mpls" { + description + "MPLS Segment List"; + } + } + description + "Rib edm sl id"; + } + + typedef Rib-via-aft-id { + type enumeration { + enum "none" { + description + "Via None"; + } + enum "via-nh-aft-id" { + description + "Via Next-hop AFT ID"; + } + enum "via-nh-group-aft-id" { + description + "Via Next-hop Group AFT ID"; + } + } + description + "Rib via aft id"; + } + + typedef Mgmt-srv6-headend { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "transit" { + description + "T (Pure transit)"; + } + enum "h-insert" { + description + "H.Insert"; + } + enum "h-insert-red" { + description + "H.Insert.Red"; + } + enum "h-encaps" { + description + "H.Encaps"; + } + enum "h-encaps-red" { + description + "H.Encaps.Red"; + } + enum "h-encaps-l2" { + description + "H.Encaps.L2"; + } + enum "h-encaps-l2-red" { + description + "H.Encaps.L2.Red"; + } + } + description + "SRv6 Headend Behavior Type"; + } + + typedef Rib-edm-nnh { + type enumeration { + enum "unknown" { + description + "Unknown - Invalid"; + } + enum "ipv4-address" { + description + "IPv4 Address"; + } + enum "if-index" { + description + "Interface Index"; + } + } + description + "Rib edm nnh"; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Ipv6-rib-edm-addr { + type inet:ipv6-address; + description + "Ipv6 rib edm addr"; + } + + typedef Rib-opaque { + type enumeration { + enum "opaque-attribute" { + value 0; + description + "opaque attribute"; + } + enum "opaque-ipfrr" { + value 1; + description + "opaque ipfrr"; + } + enum "opaque-ip-nh" { + value 2; + description + "opaque ip nh"; + } + enum "opaque-tunnel-nh" { + value 3; + description + "opaque tunnel nh"; + } + enum "opaque-tunnel-safi" { + value 4; + description + "opaque tunnel safi"; + } + enum "opaque-virtual-ll-address" { + value 5; + description + "opaque virtual ll address"; + } + enum "opaque-lisp" { + value 6; + description + "opaque lisp"; + } + enum "opaque-tep-vxlan" { + value 7; + description + "opaque tep vxlan"; + } + enum "opaque-tep-bgp" { + value 8; + description + "opaque tep bgp"; + } + enum "opaque-cofo-s-label" { + value 9; + description + "opaque cofo s label"; + } + enum "opaque-cofo-nnh-if" { + value 10; + description + "opaque cofo nnh if"; + } + enum "opaque-cofo-mcast" { + value 11; + description + "opaque cofo mcast"; + } + enum "opaque-label-range" { + value 12; + description + "opaque label range"; + } + enum "opaque-tep" { + value 13; + description + "opaque tep"; + } + enum "opaque-ipv4-adj" { + value 14; + description + "opaque ipv4 adj"; + } + enum "opaque-ipv6-adj" { + value 15; + description + "opaque ipv6 adj"; + } + enum "opaque-sfi" { + value 16; + description + "opaque sfi"; + } + enum "opaque-ltep" { + value 17; + description + "opaque ltep"; + } + enum "opaque-aft-nh" { + value 18; + description + "opaque aft nh"; + } + enum "opaque-rtep" { + value 19; + description + "opaque rtep"; + } + enum "opaque-encap-id" { + value 20; + description + "opaque encap id"; + } + enum "opaque-policy" { + value 21; + description + "opaque policy"; + } + enum "opaque-max" { + value 22; + description + "opaque max"; + } + } + description + "Rib opaque"; + } + + grouping RIB-EDM-PATH-SL-ID-INFO { + description + "Information of Segment List Identifier"; + leaf type { + type Rib-edm-sl-id; + description + "Segment List ID type"; + } + leaf sl-id { + type uint32; + description + "Segment List ID"; + } + } + + grouping RIB-EDM-PATH-VIA-AFT-ID { + description + "Information of Via aft ID attribute in path"; + leaf aft-id { + type uint64; + description + "AFT ID for this path"; + } + leaf vrf-id { + type uint32; + description + "VRF ID for this path"; + } + leaf type { + type Rib-via-aft-id; + description + "Type of AFT ID"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + } + + grouping RIB-EDM-PATH-IP-TUNNEL-INFO { + description + "Information of IP tunnel Info attribute in path"; + leaf auto-created { + type boolean; + description + "Tunnel is auto created"; + } + leaf tunnel-type { + type string; + description + "Tunnel Type"; + } + leaf has-evni { + type boolean; + description + "Egress VXLAN Network Identifier present"; + } + leaf evni { + type uint32; + description + "Egress VXLAN Network Identifier"; + } + leaf has-tunnel-id { + type boolean; + description + "Tunnel ID present"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf has-vni { + type boolean; + description + "VXLAN Network Identifier present"; + } + leaf vni { + type uint32; + description + "VXLAN Network Identifier"; + } + leaf has-rtep-id { + type boolean; + description + "Remote Tunnel End Point ID present"; + } + leaf rtep-id { + type uint64; + description + "Remote Tunnel End Point ID"; + } + } + + grouping RIB-EDM-VIA-SRV6-SID { + description + "Information related to Via-SRv6-SID"; + leaf sid { + type inet:ipv6-address; + description + "Via-SRv6-SID value"; + } + leaf resolution-length { + type uint8; + description + "FIB Resolution length"; + } + } + + grouping MGMT-SRV6-HEADEND-BEHAVIOR { + description + "SRv6 Headend Behavior Info"; + leaf type { + type Mgmt-srv6-headend; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping MGMT-SRV6-SID { + description + "SRv6 SID"; + leaf sid { + type inet:ipv6-address; + description + "SID value"; + } + } + + grouping RIB-EDM-PATH-SRV6-INFO { + description + "RIB path's SRv6 related information"; + container srv6-carrier-format { + description + "SRv6 Carrier Format"; + uses MGMT-SRV6-SID-FMT; + } + container srv6-headend-behavior { + description + "SRv6 headend behavior/type info"; + uses MGMT-SRV6-HEADEND-BEHAVIOR; + } + container via-srv6-sid { + description + "Via-SRv6-SID value"; + uses RIB-EDM-VIA-SRV6-SID; + } + leaf number-of-srv6-carriers { + type uint8; + description + "Number of SRv6 Carriers"; + } + leaf has-srv6-headend-behavior { + type boolean; + description + "Path has some SRv6 head-end behavior associated"; + } + leaf has-via-srv6-sid { + type boolean; + description + "Via-SRv6-SID is present"; + } + list srv6-carrier { + description + "List of SRv6 Carriers with one or more SIDs"; + uses MGMT-SRV6-SID; + } + } + + grouping RIB-EDM-PATH-GROUPING-INFO { + description + "Information of Path Grouping"; + leaf grouping-id { + type uint32; + description + "Grouping ID for this path"; + } + } + + grouping RIB-EDM-PATH-L2-INFO { + description + "Information of L2 Info attribute in path"; + leaf xcid { + type uint32; + description + "L2 Cross Connect ID for this path"; + } + leaf ac-interface { + type xr:Interface-name; + description + "L2 AC Interface"; + } + leaf split-horizon-group-id { + type uint32; + description + "L2 Split Horizon Group ID"; + } + leaf bridge-id { + type uint32; + description + "L2 Bridge ID"; + } + } + + grouping RIB-EDM-NNH { + description + "Information of a NNH in path installed in RIB"; + leaf type { + type Rib-edm-nnh; + description + "type"; + } + leaf unknownval { + when "../type = 'unknown'" { + description + "../type = 'Unknown'"; + } + type uint32; + description + "Unknown Value"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../type = 'IPv4Address'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf interface-index { + when "../type = 'if-index'" { + description + "../type = 'IfIndex'"; + } + type uint32; + description + "Interface Index"; + } + } + + grouping IPV6-RIB-EDM-PATH { + description + "Information of a rib path"; + list ipv6-rib-edm-path { + description + "Next path"; + container l2-info { + description + "L2 Info for this path"; + uses RIB-EDM-PATH-L2-INFO; + } + container path-grouping-info { + description + "Grouping Info for this path"; + uses RIB-EDM-PATH-GROUPING-INFO; + } + container srv6-info { + description + "SRv6 related information"; + uses RIB-EDM-PATH-SRV6-INFO; + } + container ip-tunnel-info { + description + "IP Tunnel Info for this path"; + uses RIB-EDM-PATH-IP-TUNNEL-INFO; + } + container via-aft-id { + description + "Via AFT ID info for this path"; + uses RIB-EDM-PATH-VIA-AFT-ID; + } + container segment-list-id-info { + description + "Segment List ID Info"; + uses RIB-EDM-PATH-SL-ID-INFO; + } + leaf address { + type Ipv6-rib-edm-addr; + description + "Nexthop"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf information-source { + type Ipv6-rib-edm-addr; + description + "Infosource"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf v6-nexthop { + type inet:ipv6-address; + description + "IPv6 nexthop for v4 over v6"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf v6-information-source { + type inet:ipv6-address; + description + "V6 Infosource"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface handle for the path's nexthop"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf metric { + type uint32; + description + "Metrics"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf load-metric { + type uint32; + description + "Load Metrics"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf flags64 { + type uint64; + description + "Flags extended to 64 bits"; + } + leaf flags { + type uint16; + description + "Flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf private-flags { + type uint16; + description + "Private Flags, used internally by RIB"; + } + leaf minimum-recurse-length { + type uint8; + description + "Minimum netmask length of recursive resolving + route"; + } + leaf looped { + type boolean; + description + "Looping path"; + } + leaf next-hop-table-id { + type uint32; + description + "The table to which the next hop belongs"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-vrf-name { + type string; + description + "VRF Name of the nh table"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-table-name { + type string; + description + "NH table name"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-afi { + type uint32; + description + "NH afi"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-safi { + type uint32; + description + "NH safi"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf route-label { + type uint32; + description + "Label associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pathid { + type uint32; + description + "Path id of this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf backup-pathid { + type uint32; + description + "Path id of this path's backup"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf ref-cnt-of-backup { + type uint32; + description + "For backup paths, the number of active paths + protected by the backup path"; + } + leaf number-of-extended-communities { + type uint32; + description + "Number of extended communities associated with + this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf mvpn-present { + type boolean; + description + "MVPN attribute present"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf path-rt-present { + type boolean; + description + "Path RT present"; + } + leaf vrf-import-rt-present { + type boolean; + description + "VRFIMPORTRTPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf source-asrt-present { + type boolean; + description + "SOURCEASRTPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf source-rd-present { + type boolean; + description + "SOURCERDPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf segmented-nexthop-present { + type boolean; + description + "Segmented NH attributes present for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf number-of-nnh { + type uint32; + description + "Number of Next Next Hops"; + } + leaf next-hop-id { + type uint32; + description + "NHID associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-id-refcount { + type uint32; + description + "NHID references"; + } + leaf ospf-area-id { + type string; + description + "OSPF area associated with the path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf has-labelstk { + type boolean; + description + "Path has a label stack"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf num-labels { + type uint8; + description + "Number of labels in stack"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf binding-label { + type uint32; + description + "binding Label for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf nhid-feid { + type uint64; + description + "Fib nhid encap id"; + } + leaf mpls-feid { + type uint64; + description + "Fib mpls encap id"; + } + leaf has-vxlan-network-id { + type boolean; + description + "VXLAN Network Identifier exists for this path"; + } + leaf vxlan-network-id { + type uint32; + description + "VXLAN Network Identifier for this path"; + } + leaf has-xcid { + type boolean; + description + "L2 Cross Connect ID exists for this path"; + } + leaf xcid { + type uint32; + description + "L2 Cross Connect ID for this path"; + } + leaf has-span-diag-interface { + type boolean; + description + "SPAN Diagnostics Interface exists for this path"; + } + leaf span-diag-interface { + type xr:Interface-name; + description + "SPAN Diagnostics Interface for this path"; + } + leaf has-subscriber-parent-interface { + type boolean; + description + "Subscriber Parent Interface exists for this + path"; + } + leaf subscriber-parent-interface { + type xr:Interface-name; + description + "Subscriber Parent Interface for this path"; + } + leaf interface-index-present { + type boolean; + description + "Flag to indicate if interface index attribute + is present for this path"; + } + leaf interface-index-attribute { + type uint32; + description + "Interface Index attribute"; + } + leaf iid-present { + type boolean; + description + "Internal ID present"; + } + leaf iid { + type Ipv6-rib-edm-addr; + description + "Internal ID attribute"; + } + leaf has-l2-info { + type boolean; + description + "L2 Info present for this path"; + } + leaf has-path-grouping-info { + type boolean; + description + "Grouping Info present for this path"; + } + leaf has-ip-tunnel-info { + type boolean; + description + "IP Tunnel Info present for this path"; + } + leaf has-via-aft-id { + type boolean; + description + "Via AFT ID present for this path"; + } + leaf has-segment-list-id-info { + type boolean; + description + "Segment List ID Info present for this path"; + } + leaf-list remote-backup-addr { + type Ipv6-rib-edm-addr; + max-elements "2"; + description + "Remote backup node address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf-list labelstk { + type uint32; + description + "Outgoing label stack for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + list next-next-hop { + description + "List of Next Next Hops"; + uses RIB-EDM-NNH; + } + } + } + + grouping RIB-EDM-ROUTE-AFT-INFO { + description + "RIB route's AFT info"; + leaf aft-id { + type uint64; + description + "AFT ID for this route"; + } + leaf vrf-id { + type uint32; + description + "VRF ID for this route"; + } + leaf transaction-id { + type uint64; + description + "Transaction ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } + + grouping MGMT-SRV6-SID-FMT { + description + "SRv6 SID Format Info"; + leaf type { + type Mgmt-srv6-sid-fmt; + description + "Format type"; + } + leaf description { + type string; + description + "Format description"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping RIB-EDM-ROUTE-SRV6-INFO { + description + "RIB route's SRv6 related information"; + container srv6-endpoint-behavior { + description + "SRv6 Endpoint behavior/type"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container srv6-format { + description + "SRv6 Format"; + uses MGMT-SRV6-SID-FMT; + } + leaf is-srv6-endpoint { + type boolean; + description + "Route is an SRv6 Endpoint (local SID)"; + } + leaf is-srv6-locator { + type boolean; + description + "Route corresponds to an SRv6 remote locator"; + } + leaf srv6-locator-algo { + type uint8; + description + "SRv6 Algo corresponding to SRv6 remote locator"; + } + } + + grouping RIB-EDM-ALGO-LABEL-SET { + description + "Algorithm ID to Local Label information"; + leaf algorithm-id { + type uint8; + description + "Algorithm Identifier"; + } + leaf label { + type uint32; + description + "Local label"; + } + leaf metric { + type uint32; + description + "Route Metric associated with Algorithm + Identifier"; + } + } + + grouping IPV6-RIB-EDM-ROUTE { + description + "Information of a rib route head and rib proto + route"; + container srv6-info { + description + "SRv6 related information"; + uses RIB-EDM-ROUTE-SRV6-INFO; + } + container aft { + description + "Route AFT info"; + uses RIB-EDM-ROUTE-AFT-INFO; + } + container route-path { + description + "Path(s) of the route"; + uses IPV6-RIB-EDM-PATH; + } + leaf prefix { + type Ipv6-rib-edm-addr; + description + "Route prefix"; + } + leaf prefix-length { + type uint8; + description + "Length of prefix"; + } + leaf route-version { + type uint32; + description + "Route version, incremented by one on each active + route change"; + } + leaf protocol-id { + type uint32; + description + "Protocol advertising the route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf protocol-name { + type string; + description + " Name of Protocol"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf instance { + type string; + description + "Instance name"; + } + leaf client-id { + type uint32; + description + "Client adding the route to RIB"; + } + leaf mirrored { + type boolean; + description + "Mirrored"; + } + leaf route-type { + type uint16; + description + "Type of route installed in RIB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf priority { + type uint8; + description + "Route priority"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf svd-type { + type uint8; + description + "SVD Type of route"; + } + leaf l2-route-type { + type uint8; + description + "Type of route associated with L2 Service"; + } + leaf flags { + type uint32; + description + "Route flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf extended-flags { + type uint64; + description + "Extended Route flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tag { + type uint32; + description + "Opaque proto specific info"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf distance { + type uint32; + description + "Distance of the route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf diversion-distance { + type uint32; + description + "Diversion distance of the route"; + } + leaf metric { + type uint32; + description + "Route metric"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf paths-count { + type uint32; + description + "Number of paths"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf attribute-identity { + type uint32; + description + "BGP Attribute ID"; + } + leaf traffic-index { + type uint8; + description + "BGP Traffic Index"; + } + leaf route-precedence { + type uint8; + description + "IP precedence for this route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf qos-group { + type uint8; + description + "Route qos group"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf flow-tag { + type uint8; + description + "Flow tag for this route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf fwd-class { + type uint8; + description + "Forward Class"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pic-count { + type uint8; + description + "Number of pic paths in this route"; + } + leaf active { + type boolean; + description + "Is the route active or backup"; + } + leaf diversion { + type boolean; + description + "Route has a diversion path"; + } + leaf diversion-proto-name { + type string; + description + "Diversion route protocol name"; + } + leaf route-age { + type uint32; + units "second"; + description + "Age of route (seconds)"; + } + leaf route-label { + type uint32; + description + "Local label of the route"; + } + leaf version { + type uint32; + description + "Route Version"; + } + leaf tbl-version { + type uint64; + description + "Table Version"; + } + leaf route-modify-time { + type uint64; + units "nanosecond"; + description + "Route modification time(nanoseconds)"; + } + leaf prefix-feid { + type uint64; + description + "Fib per-prefix encap id"; + } + leaf number-of-algorithm-labels { + type uint16; + description + "Number of Algorithm Labels associated with this + prefix"; + } + leaf no-fib-redist { + type boolean; + description + "Should the route be redistributed to FIB"; + } + leaf flexible-algorithm { + type uint8; + description + "Flexible Algorithm associated with route"; + } + leaf has-aft { + type boolean; + description + "Route AFT info is valid"; + } + list algorithm-label { + description + "List of Algorithm Labels associated with this + Prefix"; + uses RIB-EDM-ALGO-LABEL-SET; + } + } + + grouping IPV6-RIB-EDM-OPAQUE-OBJ { + description + "Informaton of an opaque data"; + leaf key { + type yang:hex-string; + description + "The unique ID assigned to the opaque object by + client"; + } + leaf data { + type yang:hex-string; + description + "The data part of the opaque object"; + } + leaf protocol-id { + type uint32; + description + "Protocol installing opaque"; + } + leaf client-id { + type uint32; + description + "Client installing opaque"; + } + leaf distance { + type uint32; + description + "Opaque distance"; + } + leaf flags { + type uint32; + description + "Opaque flags"; + } + leaf num-backups { + type uint32; + description + "Number of backup opaques installed"; + } + leaf type { + type Rib-opaque; + description + "Opaque Type"; + } + leaf decoded-key { + type string; + description + "Decoded opaque key string"; + } + leaf decoded-data { + type string; + description + "Decoded opaque data string"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper.yang new file mode 100644 index 000000000..67330890a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-gribi-oper.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-ip-rib-gribi-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rib-gribi-oper"; + prefix ip-rib-gribi-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-rib-gribi-oper-sub1 { + revision-date 2022-05-11; + } + + 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 ip-rib-gribi package operational data. + + This module contains definitions + for the following management objects: + gribi: RIB operational data + gribi-stdby: RIB standby node IPv6 operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-11 { + description + "has-aft added to route"; + semver:module-version "1.0.0"; + } + revision 2022-04-29 { + description + "Add AFT NHG info"; + } + revision 2022-03-02 { + description + "Add AFT info"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping VRF-TABLE { + description + "Common node of gribi, gribi-stdby"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "Specific VRF"; + container aft { + description + "Abstract Forwarding Table"; + container aft-next-hops { + description + "Next Hops"; + list aft-next-hop { + key "aft-id"; + description + "Next Hop AFT with ID in hex"; + leaf aft-id { + type xr:Cisco-ios-xr-string; + description + "AFT ID"; + } + uses IPV6-RIB-EDM-OPAQUE-OBJ; + } + } + container aft-next-hop-groups { + description + "Next Hops Groups"; + list aft-next-hop-group { + key "aft-id"; + description + "Next Hop Group AFT with ID in hex"; + leaf aft-id { + type xr:Cisco-ios-xr-string; + description + "AFT ID"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + } + } + } + + container gribi { + config false; + description + "RIB operational data"; + uses VRF-TABLE; + } + container gribi-stdby { + config false; + description + "RIB standby node IPv6 operational data"; + uses VRF-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-iid-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-iid-cfg.yang new file mode 100644 index 000000000..4b252ae1d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-iid-cfg.yang @@ -0,0 +1,41 @@ +module Cisco-IOS-XR-ip-rib-iid-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rib-iid-cfg"; + prefix ip-rib-iid-cfg; + + 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 ip-rib-iid package configuration. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-06-29 { + description + "Added holdtime support."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper-sub1.yang new file mode 100644 index 000000000..588516706 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper-sub1.yang @@ -0,0 +1,4633 @@ +submodule Cisco-IOS-XR-ip-rib-ipv4-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-rib-ipv4-oper { + prefix Cisco-IOS-XR-ip-rib-ipv4-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-rib-ipv4 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-03 { + description + "Update IID Context for Segment List Identifier + 2022-09-13 + Add IID Context for Segment List Identifier + 2022-08-29 + Segment List Identifier added to a routes path + 2022-08-18 + Updated IID entry infromation to display IID as an IPv6 prefix + 2022-07-04 + Add IID Context for L2VPN IP Tunnels. Add Remote Tunnel Endpoint ID: RTEP ID, to resolve via tunnel. + 2022-05-11 + has-aft added to route + 2022-04-26 + Clear AFT stats added + 2022-02-18 + Add client id, proto id, flags, backup number and distance to opaque bag Added table-id for opaque redistribution history + 2022-01-11 + Add IID Context for AFT NextHop Groups + 2021-12-16 + Updated aft route and path attributes with vrf names + 2021-12-16 + Added VNI to ip tunnel info path attribute + 2021-12-14 + Updated aft route and path attributes + 2021-11-26 + Add IID Local to known Protocol Types + 2021-11-17 + Add AFT id path and route attributes + 2021-10-29 + Added Opaque redistribution history + 2021-09-24 + New path vpn attribute for ip tunnels"; + semver:module-version "4.2.0"; + } + revision 2021-07-20 { + description + "Flexible Algorithm attribute added to IP Route + 2021-06-24 + L2 Path attribute extended with support for Split Horizong Group and BridgeID + 2021-03-25 + Add FIB redistribution flag to route bag"; + semver:module-version "4.1.0"; + } + revision 2020-12-11 { + description + "Add forwarding sidlist + 2020-10-16 + Route model now includes optional SRv6 SID Format field for SRv6 Local SID routes + 2020-09-30 + Nexthop notification model now includes client specific registration flags"; + semver:module-version "4.0.0"; + } + revision 2020-05-29 { + description + "Updated the max number of elements for opaque stats to 16 Extended rib edm path to include IID info and SID Format type + 2020-04-02 + Increased path_num size in redist hist route bag to 16 bits"; + semver:module-version "3.0.0"; + } + revision 2019-11-05 { + description + "Extended Nexthop and NexhopPrefix paths to include all by NH flags + 2019-10-22 + Extended rib_edm_client_stats_summary to include client stats on bcdl ugs Extended rib_edm_local_label to support AIB prefer Extended rib_edm_path to include recursion length field Extended rib_edm_path to include metric field Extended iidmgr_summary to include oor summary info Extended rib_edm_route to include l3 route type field"; + semver:module-version "2.0.0"; + } + revision 2019-06-28 { + description + "Fixed NexthopPrefix path"; + semver:module-version "1.0.0"; + } + revision 2019-06-08 { + description + "Added RPF list and NHIDs"; + } + revision 2019-05-30 { + description + "Fixed adverts and backup paths"; + } + revision 2019-05-17 { + description + "Added Nexthops Summary, Nexthop Route, Longer Routes, Redist Clients and Client Stasts"; + } + revision 2019-04-25 { + description + "Updated yang schema to extend Native Yang model for the data exposed via CLI"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-02-21 { + description + "Yang evaluator: updates to schema descriptions and ranges"; + } + revision 2019-01-11 { + description + "Route lookup key is limited to Prefix and Prefix Length"; + } + revision 2018-11-20 { + description + "Add keys for route lookup via restconf."; + } + revision 2018-11-06 { + description + "Support Algorithm Label List per route"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rib-opaque { + type enumeration { + enum "opaque-attribute" { + value 0; + description + "opaque attribute"; + } + enum "opaque-ipfrr" { + value 1; + description + "opaque ipfrr"; + } + enum "opaque-ip-nh" { + value 2; + description + "opaque ip nh"; + } + enum "opaque-tunnel-nh" { + value 3; + description + "opaque tunnel nh"; + } + enum "opaque-tunnel-safi" { + value 4; + description + "opaque tunnel safi"; + } + enum "opaque-virtual-ll-address" { + value 5; + description + "opaque virtual ll address"; + } + enum "opaque-lisp" { + value 6; + description + "opaque lisp"; + } + enum "opaque-tep-vxlan" { + value 7; + description + "opaque tep vxlan"; + } + enum "opaque-tep-bgp" { + value 8; + description + "opaque tep bgp"; + } + enum "opaque-cofo-s-label" { + value 9; + description + "opaque cofo s label"; + } + enum "opaque-cofo-nnh-if" { + value 10; + description + "opaque cofo nnh if"; + } + enum "opaque-cofo-mcast" { + value 11; + description + "opaque cofo mcast"; + } + enum "opaque-label-range" { + value 12; + description + "opaque label range"; + } + enum "opaque-tep" { + value 13; + description + "opaque tep"; + } + enum "opaque-ipv4-adj" { + value 14; + description + "opaque ipv4 adj"; + } + enum "opaque-ipv6-adj" { + value 15; + description + "opaque ipv6 adj"; + } + enum "opaque-sfi" { + value 16; + description + "opaque sfi"; + } + enum "opaque-ltep" { + value 17; + description + "opaque ltep"; + } + enum "opaque-aft-nh" { + value 18; + description + "opaque aft nh"; + } + enum "opaque-rtep" { + value 19; + description + "opaque rtep"; + } + enum "opaque-encap-id" { + value 20; + description + "opaque encap id"; + } + enum "opaque-policy" { + value 21; + description + "opaque policy"; + } + enum "opaque-max" { + value 22; + description + "opaque max"; + } + } + description + "Rib opaque"; + } + + typedef Rib-edm-sl-id { + type enumeration { + enum "invalid" { + description + "Invalid Segment List"; + } + enum "srv6" { + description + "SRv6 Segment List"; + } + enum "mpls" { + description + "MPLS Segment List"; + } + } + description + "Rib edm sl id"; + } + + typedef Rib-via-aft-id { + type enumeration { + enum "none" { + description + "Via None"; + } + enum "via-nh-aft-id" { + description + "Via Next-hop AFT ID"; + } + enum "via-nh-group-aft-id" { + description + "Via Next-hop Group AFT ID"; + } + } + description + "Rib via aft id"; + } + + typedef Mgmt-srv6-headend { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "transit" { + description + "T (Pure transit)"; + } + enum "h-insert" { + description + "H.Insert"; + } + enum "h-insert-red" { + description + "H.Insert.Red"; + } + enum "h-encaps" { + description + "H.Encaps"; + } + enum "h-encaps-red" { + description + "H.Encaps.Red"; + } + enum "h-encaps-l2" { + description + "H.Encaps.L2"; + } + enum "h-encaps-l2-red" { + description + "H.Encaps.L2.Red"; + } + } + description + "SRv6 Headend Behavior Type"; + } + + typedef Rib-edm-nnh { + type enumeration { + enum "unknown" { + description + "Unknown - Invalid"; + } + enum "ipv4-address" { + description + "IPv4 Address"; + } + enum "if-index" { + description + "Interface Index"; + } + } + description + "Rib edm nnh"; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Ipv4-rib-edm-addr { + type inet:ipv4-address; + description + "Ipv4 rib edm addr"; + } + + grouping IPV4-RIB-EDM-CLIENT-REDIST-TABLE { + description + "Information on a client's redistribution of a + table"; + leaf full-table { + type boolean; + description + "Full table redistrbution or not?"; + } + leaf insync { + type uint32; + description + "Is this is sync or not?"; + } + leaf afi { + type uint32; + description + "Address Family"; + } + leaf safi { + type uint32; + description + "sub Address Family"; + } + leaf vrf-name { + type string; + description + "VRF Name of the table"; + } + leaf updatemode { + type uint32; + description + "Update type in route registration"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-REDIST-PROTO { + description + "Information on a client's redist of a proto"; + leaf insync { + type boolean; + description + "Is this in sync or not?"; + } + leaf protocol-names { + type string; + description + "Name of proto it is redistributing"; + } + leaf proto-instance { + type string; + description + "Instance of redistributed proto"; + } + leaf updatemode { + type uint32; + description + "Type of route information getting redistributed"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-HISTORY-ROUTE { + description + "Route information for history purposes"; + list ipv4-rib-edm-client-history-route { + description + "Next route"; + container advertisement { + description + "list of advertising protos"; + uses IPV4-RIB-EDM-ADVERT; + } + leaf prefix { + type Ipv4-rib-edm-addr; + description + "Route prefix"; + } + leaf prefix-length { + type uint8; + description + "Length of prefix"; + } + leaf priority { + type uint8; + description + "Priority of update"; + } + leaf flags { + type uint32; + description + "Route flags"; + } + leaf source { + type uint32; + description + "source"; + } + leaf table-id { + type uint32; + description + "table identifier"; + } + leaf distance { + type uint32; + description + "Administrative distance"; + } + leaf metric { + type uint32; + description + "Route metric"; + } + leaf local-label { + type uint32; + description + "Route local label"; + } + leaf path-num { + type uint16; + description + "Number of paths"; + } + leaf nnh-num { + type uint16; + description + "Number of NNHs"; + } + leaf route-age { + type uint32; + units "second"; + description + "Age of event (seconds)"; + } + leaf route-modify-time { + type uint64; + units "nanosecond"; + description + "Time of event (nanoseconds)"; + } + leaf private-flags { + type uint16; + description + "Route head private flags"; + } + leaf number-of-srv6-sids { + type uint16; + description + "Number of SRv6 Segment Identifiers"; + } + leaf converge { + type uint8; + description + "Redist table converged"; + } + leaf code { + type int8; + description + "Protocol code"; + } + leaf outsync { + type uint32; + description + "Last packed outsync prio"; + } + } + } + + grouping IPV4-RIB-EDM-CLIENT-REDIST { + description + "General info. on a client's redistribution"; + container routes { + description + "Link to history routes"; + uses IPV4-RIB-EDM-CLIENT-HISTORY-ROUTE; + } + leaf num-tables-outsync { + type uint32; + description + "Num tables to get updates from"; + } + leaf num-history-routes { + type uint32; + description + "Number of history routes"; + } + } + + grouping IPV4-RIB-EDM-CLIENT { + description + "Rib client information"; + leaf pname { + type string; + description + "Client's name"; + } + leaf nodename { + type string; + description + "Node client process is running on"; + } + leaf pid { + type uint32; + description + "Client's process ID"; + } + leaf redist { + type boolean; + description + "Is client registered for redist"; + } + leaf proto { + type boolean; + description + "Is client registered as a protocol"; + } + leaf client-id { + type uint32; + description + "Client's RIB ID number"; + } + leaf redist-opaques { + type boolean; + description + "Is client registered for redist of opaques"; + } + } + + grouping IPV4-RIB-EDM-STATS-REDIST-NH { + description + "Nexthop redistribution statistics"; + leaf table-id-xr { + type uint32; + description + "table id xr"; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf total-converge { + type uint32; + description + "total converge"; + } + leaf total-suppress { + type uint32; + description + "total suppress"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + leaf total-converge-sent { + type uint32; + description + "total converge sent"; + } + leaf last-converge { + type uint64; + description + "last converge"; + } + leaf last-converge-sent { + type uint64; + description + "last converge sent"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-HISTORY-OPAQUE { + description + "Opaque information for history purposes"; + list ipv4-rib-edm-client-history-opaque { + description + "Next opaque"; + leaf type { + type Rib-opaque; + description + "Opaque Type"; + } + leaf decoded-key { + type string; + description + "Decoded opaque key string"; + } + leaf is-deleted { + type boolean; + description + "Opaque is deleted"; + } + leaf opaque-modify-time { + type string; + description + "Timestamp of event"; + } + leaf table-id { + type uint32; + description + "table identifier"; + } + } + } + + grouping IPV4-RIB-EDM-CLIENT-REDIST-OPAQUE { + description + "Client redistribution information for opaques"; + container opaques { + description + "Link to history opaques"; + uses IPV4-RIB-EDM-CLIENT-HISTORY-OPAQUE; + } + leaf num-history-opaques { + type uint32; + description + "Number of history opaques"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-PROTO-INFO { + description + "Information on client protocols"; + leaf num-protos-outsync { + type uint32; + description + "Count of out-of-sync protocols"; + } + leaf update-time { + type uint32; + units "second"; + description + "Time of last update in seconds"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-PROTO-TABLE-INFO { + description + "Information on table-specific client protocols"; + leaf num-protos-outsync { + type uint32; + description + "Count of out-of-sync protocols"; + } + leaf update-time { + type uint64; + units "nanosecond"; + description + "Time of last update (nanoseconds)"; + } + leaf afi { + type uint32; + description + "Address Family"; + } + leaf safi { + type uint32; + description + "sub Address Family"; + } + leaf vrf-name { + type string; + description + "VRF Name of the table"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-PROTO { + description + "Information on a client proto"; + leaf protocol-names { + type string; + description + "Name of proto"; + } + leaf proto-instance { + type string; + description + "Instance of proto"; + } + leaf distance { + type uint32; + description + "Route distane for the protocol"; + } + leaf maxmetric { + type uint32; + description + "Route metric for the protocol"; + } + leaf purgetime { + type uint32; + description + "Route purgetime"; + } + leaf update-complete { + type boolean; + description + "Has the client finished updating"; + } + } + + grouping RIB-EDM-STATS-OPAQUE { + description + "Opaqaue statistics"; + leaf total-registration { + type uint32; + description + "total registration"; + } + leaf total-add { + type uint32; + description + "total add"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping IPV4-RIB-EDM-STATS-NEXTHOP { + description + "Nexthop notification statistics"; + leaf table-id-xr { + type uint32; + description + "table id xr"; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf total-next-hop-reg { + type uint32; + description + "total next hop reg"; + } + leaf total-next-hop-unreg { + type uint32; + description + "total next hop unreg"; + } + leaf total-sync-reg { + type uint32; + description + "total sync reg"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping RIB-EDM-STATS-PURGE { + description + "Purge statistics"; + leaf total-purges { + type uint32; + description + "total purges"; + } + leaf total-prefix-deleted { + type uint32; + description + "total prefix deleted"; + } + leaf total-paths-deleted { + type uint32; + description + "total paths deleted"; + } + leaf last-purge { + type uint64; + description + "last purge"; + } + } + + grouping RIB-EDM-STATS-COMPLETE-UPDATE { + description + "Batch complete update statistic"; + leaf total-complete { + type uint32; + description + "total complete"; + } + leaf insync { + type uint32; + description + "insync"; + } + leaf last-insync { + type uint64; + description + "last insync"; + } + leaf bad-args { + type uint32; + description + "bad args"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-complete-msg { + type uint64; + description + "last complete msg"; + } + } + + grouping RIB-EDM-STATS-BATCH-CONVERGE { + description + "Batch converge operation statistics"; + leaf total-converge { + type uint32; + description + "total converge"; + } + leaf insync { + type uint32; + description + "insync"; + } + leaf last-insync { + type uint64; + description + "last insync"; + } + leaf bad-args { + type uint32; + description + "bad args"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-converge-msg { + type uint64; + description + "last converge msg"; + } + } + + grouping RIB-EDM-STATS-BATCH-COMPLETE { + description + "Batch complete operation statistic"; + leaf total-complete { + type uint32; + description + "total complete"; + } + leaf insync { + type uint32; + description + "insync"; + } + leaf last-insync { + type uint64; + description + "last insync"; + } + leaf last-complete-msg { + type uint64; + description + "last complete msg"; + } + } + + grouping RIB-EDM-STATS-ADVERTISEMENT { + description + "Advertisement statistic"; + leaf total-adv { + type uint32; + description + "total adv"; + } + leaf new-adv { + type uint32; + description + "new adv"; + } + leaf modification { + type uint32; + description + "modification"; + } + leaf delete { + type uint32; + description + "delete"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-adv-time { + type uint64; + description + "last adv time"; + } + } + + grouping RIB-EDM-STATS-ROUTE-OP { + description + "Route operation statistics"; + leaf paths-add-op { + type uint32; + description + "paths add op"; + } + leaf prefix-added { + type uint32; + description + "prefix added"; + } + leaf paths-added { + type uint32; + description + "paths added"; + } + leaf prefix-modified-add { + type uint32; + description + "prefix modified add"; + } + leaf paths-delete-op { + type uint32; + description + "paths delete op"; + } + leaf prefix-deleted { + type uint32; + description + "prefix deleted"; + } + leaf paths-deleted { + type uint32; + description + "paths deleted"; + } + leaf prefix-modified-del { + type uint32; + description + "prefix modified del"; + } + leaf prefix-flushed { + type uint32; + description + "prefix flushed"; + } + leaf paths-flushed { + type uint32; + description + "paths flushed"; + } + leaf invalid-op { + type uint32; + description + "invalid op"; + } + leaf flushed { + type uint32; + description + "flushed"; + } + leaf too-manypaths { + type uint32; + description + "too manypaths"; + } + leaf invalid-parameter { + type uint32; + description + "invalid parameter"; + } + leaf no-ecmp-support { + type uint32; + description + "no ecmp support"; + } + leaf mem-alloc-error { + type uint32; + description + "mem alloc error"; + } + leaf path-backup { + type uint32; + description + "path backup"; + } + leaf path-active { + type uint32; + description + "path active"; + } + leaf path-change { + type uint32; + description + "path change"; + } + leaf path-nochange { + type uint32; + description + "path nochange"; + } + leaf table-limit { + type uint32; + description + "table limit"; + } + leaf outsync { + type uint32; + description + "outsync"; + } + leaf last-outsync { + type uint64; + description + "last outsync"; + } + leaf last-route-opt { + type uint16; + description + "last route opt"; + } + leaf last-result { + type uint32; + description + "last result"; + } + leaf last-opt-time { + type uint64; + description + "last opt time"; + } + leaf attribute-not-found { + type uint32; + description + "attribute not found"; + } + leaf last-attribute-not-found-time { + type uint64; + description + "last attribute not found time"; + } + leaf num-fb-cookies { + type uint32; + description + "num fb cookies"; + } + leaf last-fb-cookie-op { + type uint64; + description + "last fb cookie op"; + } + leaf invalid-path-combination { + type uint32; + description + "invalid path combination"; + } + leaf invalid-pathid-change { + type uint32; + description + "invalid pathid change"; + } + leaf path-attribute-too-large { + type uint32; + description + "path attribute too large"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-PROTO-STATS-SUMMARY { + description + "Summary of RIB client protocol statistic summary"; + container route-op-stats { + description + "route op stats"; + uses RIB-EDM-STATS-ROUTE-OP; + } + container adv { + description + "adv"; + uses RIB-EDM-STATS-ADVERTISEMENT; + } + container complete-stats { + description + "complete stats"; + uses RIB-EDM-STATS-BATCH-COMPLETE; + } + container converge-stats { + description + "converge stats"; + uses RIB-EDM-STATS-BATCH-CONVERGE; + } + container complete-update-stats { + description + "complete update stats"; + uses RIB-EDM-STATS-COMPLETE-UPDATE; + } + container purge-stats { + description + "purge stats"; + uses RIB-EDM-STATS-PURGE; + } + container nh-stats { + description + "nh stats"; + uses IPV4-RIB-EDM-STATS-NEXTHOP; + } + leaf protocol-name { + type string; + description + " Name of Protocol"; + } + leaf instance { + type string; + description + "Instance name"; + } + list opaque-stat { + max-elements "22"; + description + "opaque stat"; + uses RIB-EDM-STATS-OPAQUE; + } + } + + grouping RIB-EDM-STATS-CLIENT-UG-START { + description + "BCDL update group notify timer statistics"; + leaf bcdl-ug-notify-num-not-started { + type uint32; + description + "bcdl ug notify num not started"; + } + leaf bcdl-ug-last-notify-not-started-time { + type uint64; + description + "bcdl ug last notify not started time"; + } + } + + grouping RIB-EDM-STATS-CLIENT-FIB-UG-UPD { + description + "FIB update group updates statistics"; + leaf fib-ug-updates { + type uint32; + description + "fib ug updates"; + } + leaf fib-ug-total-nodes { + type uint32; + description + "fib ug total nodes"; + } + } + + grouping RIB-EDM-STATS-CLIENT-LOOKUPS { + description + "Lookup statistics"; + leaf best-local-address { + type uint32; + description + "best local address"; + } + leaf is-connected { + type uint32; + description + "is connected"; + } + leaf route-lookups { + type uint32; + description + "route lookups"; + } + leaf next-hop-lookups { + type uint32; + description + "next hop lookups"; + } + leaf default-source { + type uint32; + description + "default source"; + } + } + + grouping RIB-EDM-STATS-CLIENT-ATTRIBUTE { + description + "Attribute operation statistics"; + leaf total-registration { + type uint32; + description + "total registration"; + } + leaf total-add { + type uint32; + description + "total add"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping RIB-EDM-STATS-CLIENT-REDIST-TBL { + description + "Table redistribution statistics"; + leaf total-table-redist { + type uint32; + description + "total table redist"; + } + leaf table-created { + type uint32; + description + "table created"; + } + leaf table-full { + type uint32; + description + "table full"; + } + leaf has-space { + type uint32; + description + "has space"; + } + leaf last-redist { + type uint8; + description + "last redist"; + } + leaf last-redist-time { + type uint64; + description + "last redist time"; + } + } + + grouping RIB-EDM-STATS-CLIENT-TBL { + description + "Table operation statistics"; + leaf total-table-register { + type uint32; + description + "total table register"; + } + leaf new-table { + type uint32; + description + "new table"; + } + leaf modification { + type uint32; + description + "modification"; + } + leaf deletion { + type uint32; + description + "deletion"; + } + leaf cl-lookup-err { + type uint32; + description + "cl lookup err"; + } + leaf tbl-lookup-err { + type uint32; + description + "tbl lookup err"; + } + leaf invalid-id-lookup-err { + type uint32; + description + "invalid id lookup err"; + } + leaf tbl-create-err { + type uint32; + description + "tbl create err"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping RIB-EDM-STATS-CLIENT-REDIST { + description + "Client redistribution stats"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + list evt-data { + description + "Optional data"; + leaf entry { + type uint32; + description + "Optional data"; + } + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping RIB-EDM-STATS-CLIENT-NOTF { + description + "RIB pulse statistics"; + container evt-hist { + description + "evt hist"; + uses EVT-HIST-INFO; + } + leaf total-notifications { + type uint32; + description + "total notifications"; + } + leaf clear { + type uint32; + description + "clear"; + } + leaf nexthop-critical { + type uint32; + description + "nexthop critical"; + } + leaf nexthop-noncritical { + type uint32; + description + "nexthop noncritical"; + } + leaf nexthop-converge { + type uint32; + description + "nexthop converge"; + } + leaf redist-register { + type uint32; + description + "redist register"; + } + leaf redist-reset { + type uint32; + description + "redist reset"; + } + leaf preceeding-client { + type uint32; + description + "preceeding client"; + } + leaf redist-list { + type uint32; + description + "redist list"; + } + leaf gc-proto { + type uint32; + description + "gc proto"; + } + leaf gc-db { + type uint32; + description + "gc db"; + } + leaf gc-attribute { + type uint32; + description + "gc attribute"; + } + leaf table-event { + type uint32; + description + "table event"; + } + leaf feedback-cookie { + type uint32; + description + "feedback cookie"; + } + leaf fib-ug-update { + type uint32; + description + "fib ug update"; + } + leaf critical { + type uint32; + description + "critical"; + } + leaf non-critical { + type uint32; + description + "non critical"; + } + leaf delay-timer { + type uint32; + description + "delay timer"; + } + leaf skip-notification { + type uint32; + description + "skip notification"; + } + leaf end-of-data { + type uint32; + description + "end of data"; + } + leaf disconnect { + type uint32; + description + "disconnect"; + } + leaf srv6-redist-register { + type uint32; + description + "srv6 redist register"; + } + leaf srv6-cfg-updt { + type uint32; + description + "srv6 cfg updt"; + } + leaf srv6-opcode-updt { + type uint32; + description + "srv6 opcode updt"; + } + leaf state-sync-done { + type uint32; + description + "state sync done"; + } + leaf last-notification { + type uint64; + description + "last notification"; + } + leaf last-eod { + type uint64; + description + "last eod"; + } + leaf total-pulse { + type uint64; + description + "total pulse"; + } + leaf total-select { + type uint64; + description + "total select"; + } + leaf total-read { + type uint64; + description + "total read"; + } + } + + grouping IPV4-RIB-EDM-CLIENT-STATS-SUMMARY { + description + "Summary of RIB client statistics"; + container notification { + description + "notification"; + uses RIB-EDM-STATS-CLIENT-NOTF; + } + container redist { + description + "redist"; + uses RIB-EDM-STATS-CLIENT-REDIST; + } + container tbl-stats { + description + "tbl stats"; + uses RIB-EDM-STATS-CLIENT-TBL; + } + container redist-tbl { + description + "redist tbl"; + uses RIB-EDM-STATS-CLIENT-REDIST-TBL; + } + container attribute { + description + "attribute"; + uses RIB-EDM-STATS-CLIENT-ATTRIBUTE; + } + container lookups { + description + "lookups"; + uses RIB-EDM-STATS-CLIENT-LOOKUPS; + } + container fib-ug { + description + "fib ug"; + uses RIB-EDM-STATS-CLIENT-FIB-UG-UPD; + } + container ug-start-stats { + description + "ug start stats"; + uses RIB-EDM-STATS-CLIENT-UG-START; + } + leaf client-id { + type uint32; + description + "client id"; + } + } + + grouping RIB-EDM-STATS-REDIST-SRV6 { + description + "SRv6 redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping RIB-EDM-STATS-REDIST-OPAQUE { + description + "Opaque redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf total-tbl-entries { + type uint32; + description + "total tbl entries"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping RIB-EDM-STATS-REDIST-ATTR { + description + "Attribe redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf total-tbl-entries { + type uint32; + description + "total tbl entries"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping RIB-EDM-STATS-REDIST-ROUTE { + description + "Route redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf update-sent { + type uint32; + description + "update sent"; + } + leaf paths-sent { + type uint32; + description + "paths sent"; + } + leaf prefixes-deleted { + type uint32; + description + "prefixes deleted"; + } + leaf total-advertisment { + type uint32; + description + "total advertisment"; + } + leaf last-redist-delete { + type boolean; + description + "last redist delete"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping IPV4-RIB-EDM-STATS-REDIST { + description + "Redistribution statistics"; + container route { + description + "route"; + uses RIB-EDM-STATS-REDIST-ROUTE; + } + container attr { + description + "attr"; + uses RIB-EDM-STATS-REDIST-ATTR; + } + container srv6 { + description + "srv6"; + uses RIB-EDM-STATS-REDIST-SRV6; + } + leaf protocol-name { + type string; + description + " Name of Protocol"; + } + leaf instance { + type string; + description + "Instance name"; + } + list opaque-stat { + max-elements "22"; + description + "opaque stat"; + uses RIB-EDM-STATS-REDIST-OPAQUE; + } + } + + grouping IPV4-RIB-EDM-RECURSION-DEPTH-MAX { + description + "Information about the maximum recursion depth in + the RIB"; + leaf current { + type uint32; + description + "Current maximum recursion depth"; + } + leaf configured { + type uint32; + description + "Configured maximum recursion depth"; + } + } + + grouping RIB-EDM-STATS-GRID-SUMMARY { + description + "RIB EDM STATS GRID SUMMARY"; + leaf num-in-queue { + type uint32; + description + "num in queue"; + } + leaf num-enqueue { + type uint32; + description + "num enqueue"; + } + leaf num-dequeue { + type uint32; + description + "num dequeue"; + } + leaf num-enqueue-del-skipped { + type uint32; + description + "num enqueue del skipped"; + } + leaf num-requeue { + type uint32; + description + "num requeue"; + } + leaf num-enqueue-del-with-ref { + type uint32; + description + "num enqueue del with ref"; + } + } + + grouping RIB-EDM-STATS-NH-BATCH-SUMMARY { + description + "RIB batch nexthop statistics informatio"; + leaf total-nh-batch-requests { + type uint32; + description + "total nh batch requests"; + } + leaf total-nh-operations { + type uint32; + description + "total nh operations"; + } + leaf batch-init { + type uint32; + description + "batch init"; + } + leaf batch-register { + type uint32; + description + "batch register"; + } + leaf batch-unregister { + type uint32; + description + "batch unregister"; + } + leaf register-complete { + type uint32; + description + "register complete"; + } + leaf sync-register { + type uint32; + description + "sync register"; + } + leaf batch-finish { + type uint32; + description + "batch finish"; + } + leaf batch-null { + type uint32; + description + "batch null"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-client { + type uint32; + description + "last client"; + } + leaf last-nh-operation { + type uint32; + description + "last nh operation"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-nh-time { + type uint64; + description + "last nh time"; + } + } + + grouping RIB-EDM-STATS-LWM-SUMMARY { + description + "RIB EDM STATS LWM SUMMARY"; + leaf total-lwm { + type uint32; + description + "total lwm"; + } + leaf route-add { + type uint32; + description + "route add"; + } + leaf route-delete { + type uint32; + description + "route delete"; + } + leaf purge-protocol { + type uint32; + description + "purge protocol"; + } + leaf purge-client { + type uint32; + description + "purge client"; + } + leaf protocol-register { + type uint32; + description + "protocol register"; + } + leaf protocol-unregister { + type uint32; + description + "protocol unregister"; + } + leaf protocol-modify { + type uint32; + description + "protocol modify"; + } + leaf redist-proto { + type uint32; + description + "redist proto"; + } + leaf unreg-redist-proto { + type uint32; + description + "unreg redist proto"; + } + leaf redist-reset { + type uint32; + description + "redist reset"; + } + leaf update-complete { + type uint32; + description + "update complete"; + } + leaf advertisement { + type uint32; + description + "advertisement"; + } + leaf unreg-advertisement { + type uint32; + description + "unreg advertisement"; + } + leaf next-hop-register { + type uint32; + description + "next hop register"; + } + leaf next-hop-unregister { + type uint32; + description + "next hop unregister"; + } + leaf bind-data { + type uint32; + description + "bind data"; + } + leaf succcess { + type uint32; + description + "succcess"; + } + leaf route-lookup { + type uint32; + description + "route lookup"; + } + leaf best-local-addr { + type uint32; + description + "best local addr"; + } + leaf is-connected { + type uint32; + description + "is connected"; + } + leaf first-hop { + type uint32; + description + "first hop"; + } + leaf find-proto { + type uint32; + description + "find proto"; + } + leaf free-all-srv6-sid { + type uint32; + description + "free all srv6 sid"; + } + leaf other { + type uint32; + description + "other"; + } + leaf last-client { + type uint32; + description + "last client"; + } + leaf last-operation { + type uint32; + description + "last operation"; + } + leaf last-oper-result { + type boolean; + description + "last oper result"; + } + leaf last-lwm-time { + type uint64; + description + "last lwm time"; + } + leaf clear-aft { + type uint32; + description + "clear aft"; + } + } + + grouping RIB-EDM-STATS-BATCH-SUMMARY { + description + "RIB Batch statistic information"; + leaf total-msg-rx { + type uint32; + description + "total msg rx"; + } + leaf route-op-arg-rx { + type uint32; + description + "route op arg rx"; + } + leaf attribute-arg-rx { + type uint32; + description + "attribute arg rx"; + } + leaf complete-arg-rx { + type uint32; + description + "complete arg rx"; + } + leaf converge-arg-rx { + type uint32; + description + "converge arg rx"; + } + leaf opaque-arg-rx { + type uint32; + description + "opaque arg rx"; + } + leaf total-fwd-ref { + type uint32; + description + "total fwd ref"; + } + leaf invalid-client-id-error { + type uint32; + description + "invalid client id error"; + } + leaf mem-alloc-error { + type uint32; + description + "mem alloc error"; + } + leaf client-lookup-error { + type uint32; + description + "client lookup error"; + } + leaf db-lookup-error { + type uint32; + description + "db lookup error"; + } + leaf proto-lookup-error { + type uint32; + description + "proto lookup error"; + } + leaf client-proto-lookup-error { + type uint32; + description + "client proto lookup error"; + } + leaf table-missing-error { + type uint32; + description + "table missing error"; + } + leaf unknown-arg { + type uint32; + description + "unknown arg"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type uint32; + description + "last result"; + } + leaf last-operation { + type uint32; + description + "last operation"; + } + leaf last-client { + type uint32; + description + "last client"; + } + leaf last-msg-rx-time { + type uint64; + description + "last msg rx time"; + } + } + + grouping IPV4-RIB-EDM-STATS-SUMMARY { + description + "Summary of RIB statistic information"; + container batch-stats { + description + "batch stats"; + uses RIB-EDM-STATS-BATCH-SUMMARY; + } + container lwm-stats { + description + "lwm stats"; + uses RIB-EDM-STATS-LWM-SUMMARY; + } + container nh-batch-stats { + description + "nh batch stats"; + uses RIB-EDM-STATS-NH-BATCH-SUMMARY; + } + container grid-stats { + description + "grid stats"; + uses RIB-EDM-STATS-GRID-SUMMARY; + } + } + + grouping IPV4-RIB-EDM-NHID-OBJ { + description + "Information of nhid objects"; + leaf nhid { + type uint32; + description + "nhid"; + } + leaf feid { + type uint64; + description + "feid"; + } + leaf nh-addr { + type Ipv4-rib-edm-addr; + description + "nh addr"; + } + leaf ifindex { + type xr:Interface-name; + description + "ifindex"; + } + leaf chkpt-obj-id { + type uint32; + description + "chkpt obj id"; + } + leaf ref-count { + type uint32; + description + "ref count"; + } + leaf feature-type { + type uint8; + description + "feature type"; + } + } + + grouping RIB-EDM-RPF-NBR-OBJ { + description + "Information of the rpf nbr data"; + leaf afi { + type uint8; + description + "afi"; + } + leaf ip-address { + type Ipv4-rib-edm-addr; + description + "ip address"; + } + } + + grouping IPV4-RIB-EDM-RPFLIST-OBJ { + description + "Informaton of rpf list objects"; + leaf label { + type uint32; + description + "label"; + } + leaf flags { + type uint32; + description + "flags"; + } + leaf ref-count { + type uint32; + description + "ref count"; + } + leaf sent-to-fib { + type boolean; + description + "sent to fib"; + } + list nbr { + description + "nbr"; + uses RIB-EDM-RPF-NBR-OBJ; + } + } + + grouping IPV4-RIB-EDM-NH-STATS { + description + "Nexthop statistics for a table"; + leaf num-resolved-nh { + type uint32; + description + "Number of resolved nexthop"; + } + leaf num-unresolved-nh { + type uint32; + description + "Number of unresolved nexthop"; + } + } + + grouping RIB-PATH-SHARED-DB-STATS { + description + "Per table path sharing stats"; + leaf num-mutable-paths { + type uint32; + description + "Number of mutable paths"; + } + leaf num-total-mutable-alloc { + type uint32; + description + "Running count of mutable path allocation calls"; + } + leaf num-total-mutable-cleanup { + type uint32; + description + "Running count of mutable path frees"; + } + leaf num-path-clone-ops { + type uint32; + description + "Count of path clone operations"; + } + leaf num-path-save-ops { + type uint32; + description + "Count of path save operations"; + } + leaf num-shr-refcnt-incr { + type uint32; + description + "Number of refcount increment operations"; + } + leaf num-shr-refcnt-decr { + type uint32; + description + "Number of refcount decrements operations"; + } + leaf num-current-shared-paths { + type uint32; + description + "Current number of shared paths"; + } + leaf max-share-refcnt { + type uint32; + description + "The highest sharing factor by any path, + high-water"; + } + leaf max-paths-in-db { + type uint32; + description + "Largest number of paths in DB high-water"; + } + leaf num-shared-path-search-miss { + type uint32; + description + "Number of MISS operations searching for shared + path"; + } + leaf num-shared-path-search-hit { + type uint32; + description + "Number of HIT operations searching for shared + path"; + } + leaf num-total-shared-path-create { + type uint32; + description + "Number of path create operations"; + } + leaf num-total-shared-path-delete { + type uint32; + description + "Number of path delete operations"; + } + leaf sum-of-all-refcounts { + type uint32; + description + "Sum of all path refcounts in the shared db"; + } + leaf avg-path-shares { + type uint32; + description + "Average number of pathlists using a shared path"; + } + } + + grouping RIB-PATHLIST-SHARED-DB-STATS { + description + " Per table pathlist sharing stats"; + leaf num-mutable-pathlists { + type uint32; + description + "Number of mutable pathlists"; + } + leaf num-immutable-pathlists { + type uint32; + description + "Number of immutable pathlists"; + } + leaf num-cumulative-pathlist-creates { + type uint32; + description + "Cumulative number of pathlist-CREATES"; + } + leaf num-pathlist-clone-ops { + type uint32; + description + "Count of pathlist clone operations"; + } + leaf num-pathlist-save-ops { + type uint32; + description + "Count of pathlist save operations"; + } + leaf max-share-refcnt { + type uint32; + description + "The max sharing factor by any pathlist, + high-water"; + } + leaf max-pathlists-in-db { + type uint32; + description + "Largest number of pathlists in DB, high-water"; + } + leaf num-shared-pathlist-search-hit { + type uint32; + description + "number of HIT operations searching for a shared + pathlist"; + } + leaf num-shared-pathlist-search-miss { + type uint32; + description + "number of MISS operations searching for a shared + pathlist"; + } + leaf sum-of-all-refcounts { + type uint32; + description + "Sum of all pathlist refcounts in the shared db"; + } + leaf avg-pathlist-shares { + type uint32; + description + "Average number of routes using a shared pathlist"; + } + } + + grouping IPV4-RIB-EDM-TABLE { + description + "Information of a routing table"; + container pathlist-stats { + description + "Pathlist Statistics"; + uses RIB-PATHLIST-SHARED-DB-STATS; + } + container path-stats { + description + "Path Statistics"; + uses RIB-PATH-SHARED-DB-STATS; + } + leaf tableid { + type uint32; + description + "Table id"; + } + leaf afi { + type uint32; + description + "Address Family"; + } + leaf safi { + type uint32; + description + "sub Address Family"; + } + leaf vrf-name { + type string; + description + "VRF Name of the table"; + } + leaf table-name { + type string; + description + "Name of the table"; + } + leaf version { + type uint64; + description + "Table version"; + } + leaf conf-prefix-limit { + type uint32; + description + "Configured prefix limit"; + } + leaf current-prefix-count { + type uint32; + description + "Num prefixes in table"; + } + leaf num-svdlcl-prefix { + type uint32; + description + "Num SVD local prefixes"; + } + leaf num-svdrem-prefix { + type uint32; + description + "Num SVD remote prefixes"; + } + leaf table-version { + type uint64; + description + "Version no. of the table"; + } + leaf prefix-limit-notified { + type boolean; + description + "Prefix limit state indicator"; + } + leaf fwd-referenced { + type boolean; + description + "Table in fwd reference state?"; + } + leaf deleted { + type boolean; + description + "Table deleted?"; + } + leaf initial-converge { + type boolean; + description + "Table has reached convergence"; + } + } + + grouping RIB-EDM-ROUTE-COUNT { + description + "Specifics of route count"; + leaf active-routes-count { + type uint32; + description + "Number of active routes"; + } + leaf num-backup-routes { + type uint32; + description + "Number of backup (inactive) routes"; + } + leaf num-active-paths { + type uint32; + description + "Number of paths to active routes"; + } + leaf num-backup-paths { + type uint32; + description + "Number of paths to backup routes"; + } + } + + grouping RIB-EDM-PROTO-ROUTE-SUMM-DETAIL { + description + "Details of Protocol route types"; + container proto-route-count { + description + "Count for proto. instance"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-none { + description + "No route type"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-other { + description + "Unknown route type"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-intra { + description + "OSPF route within an area"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-inter { + description + "OSPF route across diff. areas"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-extern1 { + description + "OSPF external route of type 1"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-extern2 { + description + "OSPF external route of type 2"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-sum { + description + "IS-IS summary route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-l1 { + description + "IS-IS level 1 route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-l2 { + description + "IS-IS level 2 route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-l1-ia { + description + "IS-IS level1 inter-area route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-bgp-int { + description + "iBGP route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-bgp-ext { + description + "eBGP route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-bgp-loc { + description + "BGP local route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-nssa1 { + description + "OSPF NSSA ext. route type 1"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-nssa2 { + description + "OSPF NSSA ext. route type 2"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-igrp2-int { + description + "EIGRP internal route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-igrp2-ext { + description + "EIGRP external route"; + uses RIB-EDM-ROUTE-COUNT; + } + leaf name { + type string; + description + "Proto name"; + } + leaf instance { + type string; + description + "Instance name of the protocol"; + } + } + + grouping IPV4-RIB-EDM-ADVERT { + description + "Route advertisement information"; + list ipv4-rib-edm-advert { + description + "Next advertising proto"; + leaf protocol-id { + type uint32; + description + "Protocol advertising the route"; + } + leaf client-id { + type uint32; + description + " Client advertising the route"; + } + leaf number-of-extended-communities { + type uint32; + description + "Number of extended communities attached by + advertiser"; + } + leaf extended-communities { + type yang:hex-string; + description + "Extended communities attached by the advertiser"; + } + leaf protocol-opaque-flags { + type uint8; + description + "OSPF area-id flags"; + } + leaf protocol-opaque { + type uint32; + description + "OSPF area-id"; + } + leaf code { + type int8; + description + "Protocol code"; + } + leaf instance-name { + type string { + length "0..41"; + } + description + "Instance name of the protocol advertising the + route"; + } + } + } + + grouping RIB-EDM-NH-PATH { + description + "Information of a nexthop notification client"; + leaf interface { + type uint32; + description + "interface"; + } + leaf address { + type Ipv4-rib-edm-addr; + description + "Address"; + } + leaf tableid { + type uint32; + description + "tableid"; + } + leaf vrf-name { + type string; + description + "VRF Name of the nh table"; + } + } + + grouping RIB-EDM-NH-CLIENT { + description + "Information of a nexthop notification client"; + list rib-edm-nh-client { + description + "Next client"; + leaf id { + type uint32; + description + "Client id"; + } + leaf ref-count { + type uint32; + description + "The number NH reference this client"; + } + leaf nh-create-age { + type uint32; + description + "How long has client has been created"; + } + leaf nh-create-time { + type uint64; + description + "Client creation time"; + } + leaf nh-read-age { + type uint32; + description + "How long ago client read this notification"; + } + leaf nh-read-time { + type uint64; + description + "Client notification read time"; + } + leaf pack-mvpn { + type boolean; + description + "Pack MVPN"; + } + leaf pack-path-rt { + type boolean; + description + "Pack path RT"; + } + leaf pack-vrf-import-rt { + type boolean; + description + "Pack VRF import RT"; + } + leaf pack-source-as-rt { + type boolean; + description + "Pack source AS RT"; + } + leaf pack-source-rd { + type boolean; + description + "Pack source RD"; + } + leaf pack-mldp-root { + type boolean; + description + "Pack MLDP root"; + } + leaf pack-seg-nh { + type boolean; + description + "Pack seg NH"; + } + leaf notify-reregister { + type boolean; + description + "Notify Reregister"; + } + } + } + + grouping IPV4-RIB-EDM-NH-ADDR { + description + "Information of a registered nexthop notification + address"; + container clients { + description + "Client(s) of the address"; + uses RIB-EDM-NH-CLIENT; + } + container resolved-route { + description + "Route resolved this nexthop"; + uses IPV4-RIB-EDM-ROUTE; + } + leaf prefix { + type Ipv4-rib-edm-addr; + description + "Route prefix"; + } + leaf prefix-len { + type uint32; + description + "Length of prefix"; + } + leaf dest-addr { + type Ipv4-rib-edm-addr; + description + "Destination address"; + } + leaf dest-intf { + type uint32; + description + "Destination interface"; + } + leaf dest-tableid { + type uint32; + description + "Destination tableid"; + } + leaf dest-metric { + type uint32; + description + "Destination metric"; + } + leaf dest-vrf-name { + type string; + description + "VRF Name of the nh table"; + } + leaf damped { + type boolean; + description + "Nexthop being damped?"; + } + leaf exact-match-xr { + type boolean; + description + "Exact match"; + } + leaf allow-default-xr { + type boolean; + description + "Allow default flag"; + } + leaf recurse-xr { + type boolean; + description + "Allow recurse flag"; + } + leaf xtable { + type boolean; + description + "Cross table nexthop"; + } + leaf pack-sf-xr { + type boolean; + description + "Pack SFS paths for multicast"; + } + leaf pack-backup { + type boolean; + description + "Pack backup paths"; + } + leaf backup-route-xr { + type boolean; + description + "Backup route notifications"; + } + leaf best-metric-xr { + type boolean; + description + "Return lowest metric for dest. metric"; + } + leaf unres-nh-tree { + type boolean; + description + "Context about which tree the server should walk"; + } + leaf flags { + type uint16; + description + "nh_entry flags"; + } + leaf dest-path-count { + type uint32; + description + "Number of destination paths"; + } + leaf accrued-penalty { + type uint16; + description + "Damped accured penalty"; + } + leaf num-algo-label { + type uint16; + description + "Destination number of Algorithm Labels"; + } + leaf expiration-age { + type uint32; + description + "How soon the nexthop is undamped"; + } + leaf expiration-time { + type uint64; + description + "Time where the first is undamped"; + } + leaf min-damped-threshold { + type uint32; + description + "Minimum damped threshold"; + } + leaf max-damped-penalty { + type uint32; + description + "Maximum damped threshold"; + } + leaf decay-rate { + type uint32; + description + "Damped decay rate"; + } + leaf version { + type uint32; + description + "Event version"; + } + leaf last-event-age { + type uint32; + description + "How long since last event occured"; + } + leaf last-event-time { + type uint64; + description + "Time at which last event occured"; + } + list dest-path { + description + "Path(s) of the route"; + uses RIB-EDM-NH-PATH; + } + list algo-label-set { + description + "Destination list of Algorithm Labels"; + uses RIB-EDM-ALGO-LABEL-SET; + } + } + + grouping RIB-EDM-OPAQUE-OBJ { + description + "Informaton of an opaque data"; + leaf key { + type yang:hex-string; + description + "The unique ID assigned to the opaque object by + client"; + } + leaf data { + type yang:hex-string; + description + "The data part of the opaque object"; + } + leaf protocol-id { + type uint32; + description + "Protocol installing opaque"; + } + leaf client-id { + type uint32; + description + "Client installing opaque"; + } + leaf distance { + type uint32; + description + "Opaque distance"; + } + leaf flags { + type uint32; + description + "Opaque flags"; + } + leaf num-backups { + type uint32; + description + "Number of backup opaques installed"; + } + leaf type { + type Rib-opaque; + description + "Opaque Type"; + } + leaf decoded-key { + type string; + description + "Decoded opaque key string"; + } + leaf decoded-data { + type string; + description + "Decoded opaque data string"; + } + } + + grouping IPV4-RIB-EDM-PROTO { + description + "Information of a rib protocol"; + leaf protocol-names { + type string; + description + "Name"; + } + leaf instance { + type string; + description + "Instance name of the protocol"; + } + leaf version { + type uint32; + description + "Proto version"; + } + leaf redistribution-client-count { + type uint32; + description + "Number of redist clients"; + } + leaf protocol-clients-count { + type uint32; + description + "Number of proto clients"; + } + leaf routes-counts { + type uint32; + description + "Number of routes (including active, backup and + deleted), where, number of backup routes = + RoutesCounts - ActiveRoutesCount - + DeletedRoutesCount "; + } + leaf active-routes-count { + type uint32; + description + "Number of active routes (not deleted)"; + } + leaf deleted-routes-count { + type uint32; + description + "Number of deleted routes"; + } + leaf paths-count { + type uint32; + description + "Number of paths for all routes"; + } + leaf protocol-route-memory { + type uint32; + units "byte"; + description + "Memory for proto's routes and paths in bytes"; + } + leaf backup-routes-count { + type uint32; + description + "Number of backup routes"; + } + } + + grouping RIB-EDM-PATH-SL-ID-INFO { + description + "Information of Segment List Identifier"; + leaf type { + type Rib-edm-sl-id; + description + "Segment List ID type"; + } + leaf sl-id { + type uint32; + description + "Segment List ID"; + } + } + + grouping RIB-EDM-PATH-VIA-AFT-ID { + description + "Information of Via aft ID attribute in path"; + leaf aft-id { + type uint64; + description + "AFT ID for this path"; + } + leaf vrf-id { + type uint32; + description + "VRF ID for this path"; + } + leaf type { + type Rib-via-aft-id; + description + "Type of AFT ID"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + } + + grouping RIB-EDM-PATH-IP-TUNNEL-INFO { + description + "Information of IP tunnel Info attribute in path"; + leaf auto-created { + type boolean; + description + "Tunnel is auto created"; + } + leaf tunnel-type { + type string; + description + "Tunnel Type"; + } + leaf has-evni { + type boolean; + description + "Egress VXLAN Network Identifier present"; + } + leaf evni { + type uint32; + description + "Egress VXLAN Network Identifier"; + } + leaf has-tunnel-id { + type boolean; + description + "Tunnel ID present"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf has-vni { + type boolean; + description + "VXLAN Network Identifier present"; + } + leaf vni { + type uint32; + description + "VXLAN Network Identifier"; + } + leaf has-rtep-id { + type boolean; + description + "Remote Tunnel End Point ID present"; + } + leaf rtep-id { + type uint64; + description + "Remote Tunnel End Point ID"; + } + } + + grouping RIB-EDM-VIA-SRV6-SID { + description + "Information related to Via-SRv6-SID"; + leaf sid { + type inet:ipv6-address; + description + "Via-SRv6-SID value"; + } + leaf resolution-length { + type uint8; + description + "FIB Resolution length"; + } + } + + grouping MGMT-SRV6-HEADEND-BEHAVIOR { + description + "SRv6 Headend Behavior Info"; + leaf type { + type Mgmt-srv6-headend; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping MGMT-SRV6-SID { + description + "SRv6 SID"; + leaf sid { + type inet:ipv6-address; + description + "SID value"; + } + } + + grouping RIB-EDM-PATH-SRV6-INFO { + description + "RIB path's SRv6 related information"; + container srv6-carrier-format { + description + "SRv6 Carrier Format"; + uses MGMT-SRV6-SID-FMT; + } + container srv6-headend-behavior { + description + "SRv6 headend behavior/type info"; + uses MGMT-SRV6-HEADEND-BEHAVIOR; + } + container via-srv6-sid { + description + "Via-SRv6-SID value"; + uses RIB-EDM-VIA-SRV6-SID; + } + leaf number-of-srv6-carriers { + type uint8; + description + "Number of SRv6 Carriers"; + } + leaf has-srv6-headend-behavior { + type boolean; + description + "Path has some SRv6 head-end behavior associated"; + } + leaf has-via-srv6-sid { + type boolean; + description + "Via-SRv6-SID is present"; + } + list srv6-carrier { + description + "List of SRv6 Carriers with one or more SIDs"; + uses MGMT-SRV6-SID; + } + } + + grouping RIB-EDM-PATH-GROUPING-INFO { + description + "Information of Path Grouping"; + leaf grouping-id { + type uint32; + description + "Grouping ID for this path"; + } + } + + grouping RIB-EDM-PATH-L2-INFO { + description + "Information of L2 Info attribute in path"; + leaf xcid { + type uint32; + description + "L2 Cross Connect ID for this path"; + } + leaf ac-interface { + type xr:Interface-name; + description + "L2 AC Interface"; + } + leaf split-horizon-group-id { + type uint32; + description + "L2 Split Horizon Group ID"; + } + leaf bridge-id { + type uint32; + description + "L2 Bridge ID"; + } + } + + grouping RIB-EDM-NNH { + description + "Information of a NNH in path installed in RIB"; + leaf type { + type Rib-edm-nnh; + description + "type"; + } + leaf unknownval { + when "../type = 'unknown'" { + description + "../type = 'Unknown'"; + } + type uint32; + description + "Unknown Value"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../type = 'IPv4Address'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf interface-index { + when "../type = 'if-index'" { + description + "../type = 'IfIndex'"; + } + type uint32; + description + "Interface Index"; + } + } + + grouping IPV4-RIB-EDM-PATH { + description + "Information of a rib path"; + list ipv4-rib-edm-path { + description + "Next path"; + container l2-info { + description + "L2 Info for this path"; + uses RIB-EDM-PATH-L2-INFO; + } + container path-grouping-info { + description + "Grouping Info for this path"; + uses RIB-EDM-PATH-GROUPING-INFO; + } + container srv6-info { + description + "SRv6 related information"; + uses RIB-EDM-PATH-SRV6-INFO; + } + container ip-tunnel-info { + description + "IP Tunnel Info for this path"; + uses RIB-EDM-PATH-IP-TUNNEL-INFO; + } + container via-aft-id { + description + "Via AFT ID info for this path"; + uses RIB-EDM-PATH-VIA-AFT-ID; + } + container segment-list-id-info { + description + "Segment List ID Info"; + uses RIB-EDM-PATH-SL-ID-INFO; + } + leaf address { + type Ipv4-rib-edm-addr; + description + "Nexthop"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf information-source { + type Ipv4-rib-edm-addr; + description + "Infosource"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf v6-nexthop { + type inet:ipv6-address; + description + "IPv6 nexthop for v4 over v6"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf v6-information-source { + type inet:ipv6-address; + description + "V6 Infosource"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface handle for the path's nexthop"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf metric { + type uint32; + description + "Metrics"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf load-metric { + type uint32; + description + "Load Metrics"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf flags64 { + type uint64; + description + "Flags extended to 64 bits"; + } + leaf flags { + type uint16; + description + "Flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf private-flags { + type uint16; + description + "Private Flags, used internally by RIB"; + } + leaf minimum-recurse-length { + type uint8; + description + "Minimum netmask length of recursive resolving + route"; + } + leaf looped { + type boolean; + description + "Looping path"; + } + leaf next-hop-table-id { + type uint32; + description + "The table to which the next hop belongs"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-vrf-name { + type string; + description + "VRF Name of the nh table"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-table-name { + type string; + description + "NH table name"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-afi { + type uint32; + description + "NH afi"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-safi { + type uint32; + description + "NH safi"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf route-label { + type uint32; + description + "Label associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pathid { + type uint32; + description + "Path id of this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf backup-pathid { + type uint32; + description + "Path id of this path's backup"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf ref-cnt-of-backup { + type uint32; + description + "For backup paths, the number of active paths + protected by the backup path"; + } + leaf number-of-extended-communities { + type uint32; + description + "Number of extended communities associated with + this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf mvpn-present { + type boolean; + description + "MVPN attribute present"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf path-rt-present { + type boolean; + description + "Path RT present"; + } + leaf vrf-import-rt-present { + type boolean; + description + "VRFIMPORTRTPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf source-asrt-present { + type boolean; + description + "SOURCEASRTPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf source-rd-present { + type boolean; + description + "SOURCERDPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf segmented-nexthop-present { + type boolean; + description + "Segmented NH attributes present for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf number-of-nnh { + type uint32; + description + "Number of Next Next Hops"; + } + leaf next-hop-id { + type uint32; + description + "NHID associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-id-refcount { + type uint32; + description + "NHID references"; + } + leaf ospf-area-id { + type string; + description + "OSPF area associated with the path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf has-labelstk { + type boolean; + description + "Path has a label stack"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf num-labels { + type uint8; + description + "Number of labels in stack"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf binding-label { + type uint32; + description + "binding Label for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf nhid-feid { + type uint64; + description + "Fib nhid encap id"; + } + leaf mpls-feid { + type uint64; + description + "Fib mpls encap id"; + } + leaf has-vxlan-network-id { + type boolean; + description + "VXLAN Network Identifier exists for this path"; + } + leaf vxlan-network-id { + type uint32; + description + "VXLAN Network Identifier for this path"; + } + leaf has-xcid { + type boolean; + description + "L2 Cross Connect ID exists for this path"; + } + leaf xcid { + type uint32; + description + "L2 Cross Connect ID for this path"; + } + leaf has-span-diag-interface { + type boolean; + description + "SPAN Diagnostics Interface exists for this path"; + } + leaf span-diag-interface { + type xr:Interface-name; + description + "SPAN Diagnostics Interface for this path"; + } + leaf has-subscriber-parent-interface { + type boolean; + description + "Subscriber Parent Interface exists for this + path"; + } + leaf subscriber-parent-interface { + type xr:Interface-name; + description + "Subscriber Parent Interface for this path"; + } + leaf interface-index-present { + type boolean; + description + "Flag to indicate if interface index attribute + is present for this path"; + } + leaf interface-index-attribute { + type uint32; + description + "Interface Index attribute"; + } + leaf iid-present { + type boolean; + description + "Internal ID present"; + } + leaf iid { + type Ipv4-rib-edm-addr; + description + "Internal ID attribute"; + } + leaf has-l2-info { + type boolean; + description + "L2 Info present for this path"; + } + leaf has-path-grouping-info { + type boolean; + description + "Grouping Info present for this path"; + } + leaf has-ip-tunnel-info { + type boolean; + description + "IP Tunnel Info present for this path"; + } + leaf has-via-aft-id { + type boolean; + description + "Via AFT ID present for this path"; + } + leaf has-segment-list-id-info { + type boolean; + description + "Segment List ID Info present for this path"; + } + list remote-backup-addr { + max-elements "2"; + description + "Remote backup node address"; + leaf entry { + type Ipv4-rib-edm-addr; + description + "Remote backup node address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + list labelstk { + description + "Outgoing label stack for this path"; + leaf entry { + type uint32; + description + "Outgoing label stack for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + list next-next-hop { + description + "List of Next Next Hops"; + uses RIB-EDM-NNH; + } + } + } + + grouping RIB-EDM-ROUTE-AFT-INFO { + description + "RIB route's AFT info"; + leaf aft-id { + type uint64; + description + "AFT ID for this route"; + } + leaf vrf-id { + type uint32; + description + "VRF ID for this route"; + } + leaf transaction-id { + type uint64; + description + "Transaction ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } + + grouping MGMT-SRV6-SID-FMT { + description + "SRv6 SID Format Info"; + leaf type { + type Mgmt-srv6-sid-fmt; + description + "Format type"; + } + leaf description { + type string; + description + "Format description"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping RIB-EDM-ROUTE-SRV6-INFO { + description + "RIB route's SRv6 related information"; + container srv6-endpoint-behavior { + description + "SRv6 Endpoint behavior/type"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container srv6-format { + description + "SRv6 Format"; + uses MGMT-SRV6-SID-FMT; + } + leaf is-srv6-endpoint { + type boolean; + description + "Route is an SRv6 Endpoint (local SID)"; + } + leaf is-srv6-locator { + type boolean; + description + "Route corresponds to an SRv6 remote locator"; + } + leaf srv6-locator-algo { + type uint8; + description + "SRv6 Algo corresponding to SRv6 remote locator"; + } + } + + grouping RIB-EDM-ALGO-LABEL-SET { + description + "Algorithm ID to Local Label information"; + leaf algorithm-id { + type uint8; + description + "Algorithm Identifier"; + } + leaf label { + type uint32; + description + "Local label"; + } + leaf metric { + type uint32; + description + "Route Metric associated with Algorithm + Identifier"; + } + } + + grouping IPV4-RIB-EDM-ROUTE { + description + "Information of a rib route head and rib proto + route"; + container srv6-info { + description + "SRv6 related information"; + uses RIB-EDM-ROUTE-SRV6-INFO; + } + container aft { + description + "Route AFT info"; + uses RIB-EDM-ROUTE-AFT-INFO; + } + container route-path { + description + "Path(s) of the route"; + uses IPV4-RIB-EDM-PATH; + } + leaf prefix { + type Ipv4-rib-edm-addr; + description + "Route prefix"; + } + leaf prefix-length-xr { + type uint8; + description + "Length of prefix"; + } + leaf route-version { + type uint32; + description + "Route version, incremented by one on each active + route change"; + } + leaf protocol-id { + type uint32; + description + "Protocol advertising the route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf protocol-name { + type string; + description + " Name of Protocol"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf instance { + type string; + description + "Instance name"; + } + leaf client-id { + type uint32; + description + "Client adding the route to RIB"; + } + leaf mirrored { + type boolean; + description + "Mirrored"; + } + leaf route-type { + type uint16; + description + "Type of route installed in RIB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf priority { + type uint8; + description + "Route priority"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf svd-type { + type uint8; + description + "SVD Type of route"; + } + leaf l2-route-type { + type uint8; + description + "Type of route associated with L2 Service"; + } + leaf flags { + type uint32; + description + "Route flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf extended-flags { + type uint64; + description + "Extended Route flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tag { + type uint32; + description + "Opaque proto specific info"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf distance { + type uint32; + description + "Distance of the route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf diversion-distance { + type uint32; + description + "Diversion distance of the route"; + } + leaf metric { + type uint32; + description + "Route metric"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf paths-count { + type uint32; + description + "Number of paths"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf attribute-identity { + type uint32; + description + "BGP Attribute ID"; + } + leaf traffic-index { + type uint8; + description + "BGP Traffic Index"; + } + leaf route-precedence { + type uint8; + description + "IP precedence for this route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf qos-group { + type uint8; + description + "Route qos group"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf flow-tag { + type uint8; + description + "Flow tag for this route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf fwd-class { + type uint8; + description + "Forward Class"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pic-count { + type uint8; + description + "Number of pic paths in this route"; + } + leaf active { + type boolean; + description + "Is the route active or backup"; + } + leaf diversion { + type boolean; + description + "Route has a diversion path"; + } + leaf diversion-proto-name { + type string; + description + "Diversion route protocol name"; + } + leaf route-age { + type uint32; + units "second"; + description + "Age of route (seconds)"; + } + leaf route-label { + type uint32; + description + "Local label of the route"; + } + leaf version { + type uint32; + description + "Route Version"; + } + leaf tbl-version { + type uint64; + description + "Table Version"; + } + leaf route-modify-time { + type uint64; + units "nanosecond"; + description + "Route modification time(nanoseconds)"; + } + leaf prefix-feid { + type uint64; + description + "Fib per-prefix encap id"; + } + leaf number-of-algorithm-labels { + type uint16; + description + "Number of Algorithm Labels associated with this + prefix"; + } + leaf no-fib-redist { + type boolean; + description + "Should the route be redistributed to FIB"; + } + leaf flexible-algorithm { + type uint8; + description + "Flexible Algorithm associated with route"; + } + leaf has-aft { + type boolean; + description + "Route AFT info is valid"; + } + list algorithm-label { + description + "List of Algorithm Labels associated with this + Prefix"; + uses RIB-EDM-ALGO-LABEL-SET; + } + } + + grouping IPV4-RIB-EDM-UG-PRUNED-NODES { + description + "RIB updategroup pruned nodes information"; + leaf num-pruned-nodes { + type uint32; + description + "Number of pruned nodes"; + } + list pruned-node { + max-elements "256"; + description + "Pruned nodes ID"; + leaf entry { + type uint32; + description + "Pruned nodes ID"; + } + } + } + + grouping IPV4-RIB-EDM-UG { + description + "RIB updategroup information"; + leaf ug-id { + type uint32; + description + "Update Group ID"; + } + leaf client-id { + type uint32; + description + "ClientId associated with UG"; + } + leaf parent-id { + type int32; + description + "UG's parent if child"; + } + leaf insync { + type boolean; + description + "Is this ug insync with RIB"; + } + leaf freezecnt { + type uint32; + description + "Freeze count if frozen"; + } + } + + grouping IPV4-RIB-EDM-NHID-HIST-OBJ { + description + "Information of nhid history objects"; + leaf nhid { + type uint32; + description + "nhid"; + } + leaf nh-addr { + type Ipv4-rib-edm-addr; + description + "nh addr"; + } + leaf ifindex { + type xr:Interface-name; + description + "ifindex"; + } + leaf tableid { + type uint32; + description + "tableid"; + } + leaf operation { + type uint32; + description + "operation"; + } + leaf update { + type uint32; + description + "update"; + } + leaf oper-time { + type uint64; + description + "oper time"; + } + leaf feature-type { + type uint8; + description + "feature type"; + } + leaf chkpt-obj-id { + type uint32; + description + "chkpt obj id"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper.yang new file mode 100644 index 000000000..9e37199ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv4-oper.yang @@ -0,0 +1,1403 @@ +module Cisco-IOS-XR-ip-rib-ipv4-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rib-ipv4-oper"; + prefix ip-rib-ipv4-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-rib-ipv4-oper-sub1 { + revision-date 2022-11-03; + } + + 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 ip-rib-ipv4 package operational data. + + This module contains definitions + for the following management objects: + rib-stdby: RIB standby node operational data + rib: RIB operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-03 { + description + "Update IID Context for Segment List Identifier + 2022-09-13 + Add IID Context for Segment List Identifier + 2022-08-29 + Segment List Identifier added to a routes path + 2022-08-18 + Updated IID entry infromation to display IID as an IPv6 prefix + 2022-07-04 + Add IID Context for L2VPN IP Tunnels. Add Remote Tunnel Endpoint ID: RTEP ID, to resolve via tunnel. + 2022-05-11 + has-aft added to route + 2022-04-26 + Clear AFT stats added + 2022-02-18 + Add client id, proto id, flags, backup number and distance to opaque bag Added table-id for opaque redistribution history + 2022-01-11 + Add IID Context for AFT NextHop Groups + 2021-12-16 + Updated aft route and path attributes with vrf names + 2021-12-16 + Added VNI to ip tunnel info path attribute + 2021-12-14 + Updated aft route and path attributes + 2021-11-26 + Add IID Local to known Protocol Types + 2021-11-17 + Add AFT id path and route attributes + 2021-10-29 + Added Opaque redistribution history + 2021-09-24 + New path vpn attribute for ip tunnels"; + semver:module-version "4.2.0"; + } + revision 2021-07-20 { + description + "Flexible Algorithm attribute added to IP Route + 2021-06-24 + L2 Path attribute extended with support for Split Horizong Group and BridgeID + 2021-03-25 + Add FIB redistribution flag to route bag"; + semver:module-version "4.1.0"; + } + revision 2020-12-11 { + description + "Add forwarding sidlist + 2020-10-16 + Route model now includes optional SRv6 SID Format field for SRv6 Local SID routes + 2020-09-30 + Nexthop notification model now includes client specific registration flags"; + semver:module-version "4.0.0"; + } + revision 2020-05-29 { + description + "Updated the max number of elements for opaque stats to 16 Extended rib edm path to include IID info and SID Format type + 2020-04-02 + Increased path_num size in redist hist route bag to 16 bits"; + semver:module-version "3.0.0"; + } + revision 2019-11-05 { + description + "Extended Nexthop and NexhopPrefix paths to include all by NH flags + 2019-10-22 + Extended rib_edm_client_stats_summary to include client stats on bcdl ugs Extended rib_edm_local_label to support AIB prefer Extended rib_edm_path to include recursion length field Extended rib_edm_path to include metric field Extended iidmgr_summary to include oor summary info Extended rib_edm_route to include l3 route type field"; + semver:module-version "2.0.0"; + } + revision 2019-06-28 { + description + "Fixed NexthopPrefix path"; + semver:module-version "1.0.0"; + } + revision 2019-06-08 { + description + "Added RPF list and NHIDs"; + } + revision 2019-05-30 { + description + "Fixed adverts and backup paths"; + } + revision 2019-05-17 { + description + "Added Nexthops Summary, Nexthop Route, Longer Routes, Redist Clients and Client Stasts"; + } + revision 2019-04-25 { + description + "Updated yang schema to extend Native Yang model for the data exposed via CLI"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-02-21 { + description + "Yang evaluator: updates to schema descriptions and ranges"; + } + revision 2019-01-11 { + description + "Route lookup key is limited to Prefix and Prefix Length"; + } + revision 2018-11-20 { + description + "Add keys for route lookup via restconf."; + } + revision 2018-11-06 { + description + "Support Algorithm Label List per route"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rpf-head-count-range { + type uint32 { + range "0..4294967295"; + } + description + "Rpf head count range"; + } + + typedef Rib-saf-name { + type string { + pattern "(Unicast)|(Multicast)"; + } + description + "Unicast: Comment: Ucast string for , + Multicast: Comment: Mcast string for "; + } + + typedef Rib-af-name { + type string { + pattern "(IPv4)|(IPv6)"; + } + description + "IPv4: Comment: v4 string for , IPv6: + Comment: v6 string for "; + } + + typedef Table-id-range-ipv4 { + type uint32 { + range "0..4294967295"; + } + description + "Table id range ipv4"; + } + + typedef Nhid-hist-count-range { + type uint32 { + range "0..4294967295"; + } + description + "Nhid hist count range"; + } + + typedef Nhid-entry-count-range { + type uint32 { + range "0..4294967295"; + } + description + "Nhid entry count range"; + } + + grouping RIB-NH-ID-HISTORY-TABLE { + description + "Common node of rib, rib-stdby"; + container rib-nh-id-histories { + description + "nhids history"; + list rib-nh-id-history { + key "nh-idi-hist-count"; + description + "NH Id history count"; + leaf nh-idi-hist-count { + type Nhid-hist-count-range; + description + "NH Id hist count"; + } + uses IPV4-RIB-EDM-NHID-HIST-OBJ; + } + } + } + + grouping VRF-TABLE { + description + "Common node of rib, rib-stdby"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "Specific VRF"; + container afs { + description + "Address Family (AF) table"; + list af { + key "af-name"; + description + "Specific AF information"; + container safs { + description + "Subsequent Address Family (SAF) table"; + list saf { + key "saf-name"; + description + "Specific SAF information"; + container ip-rib-route-table-names { + description + "Global container of routes"; + list ip-rib-route-table-name { + key "route-table-name"; + description + "IP RIB Route table name for a topology"; + container routes { + description + "Route information "; + list route { + key "address prefix-length"; + description + "Route information of a specific Network + Address "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Network Address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length of the network address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + container deleted-routes { + description + "Deleted"; + list deleted-route { + key "address prefix-length"; + description + "Route information for a specific + deleted address "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Deleted network address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length of the deleted network + address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + container destination-kw { + description + "Destination KW"; + container dest-best-routes { + description + "Best Local"; + list dest-best-route { + key "address"; + description + "Best local route information for a + specific Address "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Network Address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + container dest-q-routes { + description + "Quarantine"; + list dest-q-route { + key "address prefix-length"; + description + "Route information of a specific + quarantined address "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Quarantined network address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "prefix length of the quarantined + network address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + container dest-backup-kw { + description + "Backup"; + container dest-backup-prefixes { + description + "Backup adresses prefix table"; + list dest-backup-prefix { + key "address prefix-length"; + description + "Route information of a specific + Backup Address "; + container dest-backup-routes { + description + "Backup adresses route table"; + list dest-backup-route { + key "protoid"; + description + "Route information of a specific + Backup Address and Client "; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Backup network address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "prefix length of the backup network + address"; + } + } + } + } + container dest-next-hop-routes { + description + "Resolving next hop"; + list dest-next-hop-route { + key "address"; + description + "Nexthop information for a specific + address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Network Address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + } + container protocol { + description + "Contains the classification of routes by + protocol"; + container mobile { + description + "Mobile Protocol"; + uses NON-AS; + } + container subscriber { + description + "Subscriber Protocol"; + uses NON-AS; + } + container connected { + description + "Connected Protocol"; + uses NON-AS; + } + container dagr { + description + "DAGR Protocol(Direct-Attached Gateway + Redundancy) Protocol"; + uses NON-AS; + } + container rip { + description + "RIP Protocol"; + uses NON-AS; + } + container iid-local { + description + "Internal ID Local Protocol"; + uses NON-AS; + } + container ospf { + description + "OSPF Protocol"; + uses AS; + } + container srv6-local { + description + "SRv6-Local Protocol"; + uses NON-AS; + } + container static { + description + "Static Protocol"; + uses NON-AS; + } + container rpl { + description + "RPL Protocol"; + uses AS; + } + container application { + description + "Application Protocol"; + uses NON-AS; + } + container te-client { + description + "TEClient Protocol"; + uses NON-AS; + } + container eigrp { + description + "EIGRP Protocol"; + uses AS; + } + container local { + description + "Local Protocol"; + container smiap { + description + "SMIAP"; + uses PROTOCOL-ROUTE-TABLE; + uses INFORMATION; + } + container lspv { + description + "LSPV(Label Switched Path Verification) + Protocol"; + uses PROTOCOL-ROUTE-TABLE; + uses INFORMATION; + } + uses NON-AS; + } + container bgp { + description + "BGP Protocol"; + uses AS; + } + container isis { + description + "ISIS Protocol"; + uses AS; + } + } + container opaques { + description + "Opaque information "; + list opaque { + description + "Opaque item "; + leaf opaque-client-id { + type uint32 { + range "0..2501"; + } + description + "Opaque Client ID"; + } + leaf opaque-proto-id { + type uint32 { + range "0..96"; + } + description + "Opaque Proto ID"; + } + leaf opaque-key-type { + type uint32 { + range "0..22"; + } + description + "The type of the opaque key installed + in the RIB table"; + } + leaf opaque-key-size { + type uint32 { + range "0..4294967295"; + } + description + "The size of the opaque key installed + in the RIB table"; + } + leaf opaque-data-size { + type uint32 { + range "0..4294967295"; + } + description + "The size of the opaque data installed + in the RIB table"; + } + leaf opaque-string { + type xr:Cisco-ios-xr-string; + description + "The opaque data installed in the RIB + table"; + } + uses RIB-EDM-OPAQUE-OBJ; + } + } + container q-routes { + description + "Quarantine"; + list q-route { + key "address prefix-length"; + description + "Route information for a specific + quarantined address "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Quarantined network address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length of the quarantined + network address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + container longer-route-prefixes { + description + "Longer routes prefix table"; + list longer-route-prefix { + description + "Net/mask to match longer routes"; + container longer-route-last-prefixes { + description + "Longer route last prefix table"; + list longer-route-last-prefix { + description + "Information of all matching longer + routes for a prefix/mask under a + given table"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Network Address "; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix Length "; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Network Address "; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix Length "; + } + } + } + container nexthops { + description + "Nexthop notification registerations + under a given table"; + list nexthop { + description + "List the nexthop notification + registeration under a given table"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Nexthop network address "; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length of the nexthop network + address"; + } + leaf unresolved-nh-tree { + type boolean; + description + "Unresolved Nexthop Tree"; + } + leaf exact-match { + type boolean; + description + "Exact match"; + } + leaf allow-default { + type boolean; + description + "Allow Default"; + } + leaf recurse { + type boolean; + description + "Recurse"; + } + leaf cross-table { + type boolean; + description + "Cross table nextHop"; + } + leaf pack-sfs { + type boolean; + description + "Pack SFS paths for Multicast"; + } + leaf pack-backup-paths { + type boolean; + description + "Pack backup paths"; + } + leaf backup-route { + type boolean; + description + "Backup route notifications"; + } + leaf best-metric { + type boolean; + description + "Return lowest metric"; + } + uses IPV4-RIB-EDM-NH-ADDR; + } + } + container backup-routes { + description + "Backup route information for the given + table"; + list backup-route { + key "address prefix-length protoid"; + description + "Route information for a specific backup + address "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Backup network address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length of the backup network + address"; + } + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + container adverts-list { + description + "Route advertiser information "; + container advert-prefixes { + description + "Route advertiser prefix table"; + list advert-prefix { + key "address prefix-length"; + description + "Route advertiser information of a + specific Network Address "; + container adverts { + description + "Route advertiser table"; + list advert { + key "protoid"; + description + "Route advertiser information of a + specific Network Address and Client"; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV4-RIB-EDM-ADVERT; + } + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Network Address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length of the network address"; + } + } + } + } + leaf route-table-name { + type xr:Cisco-ios-xr-string; + description + "Name of the route table"; + } + } + } + leaf saf-name { + type Rib-saf-name; + description + "Name of the SAF"; + } + } + } + leaf af-name { + type Rib-af-name; + description + "Name of the AF"; + } + } + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + } + } + } + + grouping RIB-STATS { + description + "Common node of rib, rib-stdby"; + container rib-stats { + description + "Statistics summary"; + container rib-stats-summary { + description + "Summary"; + uses IPV4-RIB-EDM-STATS-SUMMARY; + } + } + } + + grouping AS { + description + "Common node of bgp, ospf, isis, eigrp, rpl"; + list as { + key "as"; + description + "Autonomous System of protocol"; + leaf as { + type xr:Cisco-ios-xr-string; + description + "Autonomous system"; + } + uses PROTOCOL-ROUTE-TABLE; + uses INFORMATION; + } + } + + grouping RIB-RPF-LIST-TABLE { + description + "Common node of rib, rib-stdby"; + container rib-rpfs { + description + "Route prefix table"; + list rib-rpf { + key "table-id"; + description + "Table Id"; + container rib-rpf-list-routes { + description + "rpf list table route"; + list rib-rpf-list-route { + description + "Last route prefix and prefix length"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Route Address "; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix Length "; + } + uses IPV4-RIB-EDM-RPFLIST-OBJ; + } + } + container rib-rpf-list-summary-head-counts { + description + "rpf list table summary"; + list rib-rpf-list-summary-head-count { + key "rpf-head-count"; + description + "RPF Head count"; + leaf rpf-head-count { + type Rpf-head-count-range; + description + "RPF Head count"; + } + uses IPV4-RIB-EDM-RPFLIST-OBJ; + } + } + leaf table-id { + type Table-id-range-ipv4; + description + "Table ID"; + } + } + } + } + + grouping INFORMATION { + description + "Common node of as, non-as, smiap, lspv"; + container information { + description + "Protocol related Information"; + uses IPV4-RIB-EDM-PROTO; + } + } + + grouping RIB-TABLE { + description + "Common node of rib, rib-stdby"; + container rib-table-ids { + description + "RIB table"; + list rib-table-id { + key "tableid"; + description + "Specific Table"; + container summary-protos { + description + "RIB table summary"; + list summary-proto { + key "protoid"; + description + "Route summary information for a specific + table/protocol "; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses RIB-EDM-PROTO-ROUTE-SUMM-DETAIL; + } + } + container rib-table-itf-hndls { + description + "RIB table interface"; + list rib-table-itf-hndl { + key "handle"; + description + "Interface handle"; + leaf handle { + type uint32 { + range "0..4294967295"; + } + description + "Itf Handle"; + } + list itf-route { + key "address"; + description + "Route information for a specific + table/interface "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Network Address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + } + container information { + description + "Table related Information"; + uses IPV4-RIB-EDM-TABLE; + } + container rib-nexthop-prefixes { + description + "RIB table nexthop client table"; + list rib-nexthop-prefix { + description + "Route address, Prefix length"; + container rib-nexthop-routes { + description + "Nexthop route table"; + list rib-nexthop-route { + description + "Route information for a specific + table/interface"; + leaf exact-match { + type boolean; + description + "Exact Match"; + } + leaf allow-default { + type boolean; + description + "Allow Default"; + } + leaf recurse { + type boolean; + description + "Recurse"; + } + leaf cross-table { + type boolean; + description + "Cross table nextHop"; + } + leaf pack-sfs { + type boolean; + description + "Pack SFS paths for Multicast"; + } + leaf pack-backup-paths { + type boolean; + description + "Pack backup paths"; + } + leaf backup-route { + type boolean; + description + "Backup route notifications"; + } + leaf best-metric { + type boolean; + description + "Return lowest metric"; + } + uses IPV4-RIB-EDM-NH-ADDR; + } + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Route Address "; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix Length "; + } + leaf unresolved-nh-tree { + type boolean; + description + "Unresolved Nexthop Tree"; + } + } + } + container nexthops-summary { + description + "Nexthops summary"; + uses IPV4-RIB-EDM-NH-STATS; + } + leaf tableid { + type xr:Hex-integer; + description + "Table ID"; + } + } + } + } + + grouping RIB-MAX-DEPTH { + description + "Common node of rib, rib-stdby"; + container rib-max-depth { + description + "Information of maximum recursion depth in RIB"; + uses IPV4-RIB-EDM-RECURSION-DEPTH-MAX; + } + } + + grouping RIB-NH-ID-SUMMARY-TABLE { + description + "Common node of rib, rib-stdby"; + container rib-nh-id-summaries { + description + "NHIds table"; + list rib-nh-id-summary { + key "table-id"; + description + "Table Id"; + container rib-nh-ids { + description + "nhids summary"; + list rib-nh-id { + key "nh-id-entry-count"; + description + "NH Id"; + leaf nh-id-entry-count { + type Nhid-entry-count-range; + description + "NH Id entry count"; + } + uses IPV4-RIB-EDM-NHID-OBJ; + } + } + leaf table-id { + type Table-id-range-ipv4; + description + "Table Id"; + } + } + } + } + + grouping RIB-UPDATE-GROUP-TABLE { + description + "Common node of rib, rib-stdby"; + container rib-update-groups { + description + "RIB UpdateGroup table"; + list rib-update-group { + key "update-group-id"; + description + "UpdateGroup id"; + container rib-update-group-info { + description + "Information of specific updategroup"; + uses IPV4-RIB-EDM-UG; + } + leaf update-group-id { + type uint32; + description + "UpdateGroup Id"; + } + } + } + } + + grouping RIB-CLIENT-TABLE { + description + "Common node of rib, rib-stdby"; + container rib-clients { + description + "Client"; + list rib-client { + key "clientid"; + description + "Specific Client"; + container rib-client-redist-stats { + description + "Redist statistics of a specific client"; + uses IPV4-RIB-EDM-STATS-REDIST; + } + container rib-client-stats-client { + description + "Client statistics of a specific client"; + uses IPV4-RIB-EDM-CLIENT-STATS-SUMMARY; + } + container rib-client-stats { + description + "Statistics of table of a specific client"; + list rib-client-stat { + key "table-id"; + description + "Specific Table"; + container rib-client-stats-protos { + description + "Statistics of table of protocol of a + specific client"; + list rib-client-stats-proto { + key "proto-id"; + description + "Specific proto id"; + leaf proto-id { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV4-RIB-EDM-CLIENT-PROTO-STATS-SUMMARY; + } + } + leaf table-id { + type xr:Cisco-ios-xr-string; + description + "Table Id"; + } + } + } + container rib-client-stats-nexthops { + description + "Statistics of table of a specific client"; + list rib-client-stats-nexthop { + key "table-id"; + description + "Specific Table"; + leaf table-id { + type Table-id-range-ipv4; + description + "Table Id"; + } + uses IPV4-RIB-EDM-STATS-NEXTHOP; + } + } + container rib-client-proto { + description + "Information of protocols of client"; + container rib-client-proto-table-ids { + description + "Client Protocol table"; + list rib-client-proto-table-id { + key "tableid"; + description + "Table ID for a given protocol under a given + client"; + container rib-client-proto-ids { + description + "Protocols list under a given table under a + given client"; + list rib-client-proto-id { + key "protoid"; + description + "Information of protocols under a given + table under a given client"; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV4-RIB-EDM-CLIENT-PROTO; + } + } + container rib-client-proto-table-info { + description + "Information of a specifc table under a + given protocol under a given client"; + uses IPV4-RIB-EDM-CLIENT-PROTO-TABLE-INFO; + } + leaf tableid { + type xr:Cisco-ios-xr-string; + description + "Table Id"; + } + } + } + container rib-client-proto-info { + description + "Information of protocols of a specific client"; + uses IPV4-RIB-EDM-CLIENT-PROTO-INFO; + } + } + container rib-client-redist-history-opaque { + description + "Opaque History information of the table + associated with a given redist under a + specific client"; + uses IPV4-RIB-EDM-CLIENT-REDIST-OPAQUE; + } + container rib-client-stats-redist-nexthops { + description + "Statistics of nexthop table distribution"; + list rib-client-stats-redist-nexthop { + key "table-id"; + description + "Specific Table"; + leaf table-id { + type Table-id-range-ipv4; + description + "Table Id"; + } + uses IPV4-RIB-EDM-STATS-REDIST-NH; + } + } + container rib-client-info { + description + "Information for a specific client"; + uses IPV4-RIB-EDM-CLIENT; + } + container rib-client-redist-history { + description + "History information of the table associated + with a given redist under a specific client"; + uses IPV4-RIB-EDM-CLIENT-REDIST; + } + container rib-client-redists { + description + "RIB client redistribution"; + list rib-client-redist { + key "table-id"; + description + "Id of RIB client redistribution Table"; + container rib-client-redist-protos { + description + "Client proto"; + list rib-client-redist-proto { + key "proto-id"; + description + "Protocols information for a specific client"; + leaf proto-id { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV4-RIB-EDM-CLIENT-REDIST-PROTO; + } + } + container rib-client-redist-info { + description + "Information for a specific redistribution + table under a given client"; + uses IPV4-RIB-EDM-CLIENT-REDIST-TABLE; + } + leaf table-id { + type xr:Cisco-ios-xr-string; + description + "Table Id"; + } + } + } + container rib-client-stats-redists { + description + "Statistics of table distribution"; + list rib-client-stats-redist { + key "table-id"; + description + "Specific Table"; + container rib-client-stats-redist-protos { + description + "Protocol under a given table"; + list rib-client-stats-redist-proto { + key "proto-id"; + description + "Specific protocol"; + leaf proto-id { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV4-RIB-EDM-STATS-REDIST; + } + } + leaf table-id { + type Table-id-range-ipv4; + description + "Table Id"; + } + } + } + leaf clientid { + type uint32 { + range "0..2501"; + } + description + "Client ID"; + } + } + } + } + + grouping NON-AS { + description + "Common node of local, srv6-local, iid-local, + connected, rip, static, subscriber, mobile, dagr, + application, te-client"; + container non-as { + description + "Non Autonomous System of protocol"; + uses PROTOCOL-ROUTE-TABLE; + uses INFORMATION; + } + } + + grouping PROTOCOL-ROUTE-TABLE { + description + "Common node of as, non-as, smiap, lspv"; + container protocol-routes { + description + "Protocol specific Route"; + list protocol-route { + key "address prefix-length"; + description + " Route information of a specific Network + Address "; + leaf address { + type inet:ipv4-address-no-zone; + description + "Network address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix Length of the network address"; + } + uses IPV4-RIB-EDM-ROUTE; + } + } + } + + grouping RIB-UPDATE-GROUP-PRUNED-NODES { + description + "Common node of rib, rib-stdby"; + container rib-update-group-pruned-nodes { + description + "Information of updategroup pruned nodes"; + container rib-update-group-pruned-nodes-info { + description + "Information of updategroup pruned nodes"; + uses IPV4-RIB-EDM-UG-PRUNED-NODES; + } + } + } + + container rib-stdby { + config false; + description + "RIB standby node operational data"; + uses RIB-NH-ID-HISTORY-TABLE; + uses RIB-UPDATE-GROUP-TABLE; + uses RIB-UPDATE-GROUP-PRUNED-NODES; + uses VRF-TABLE; + uses RIB-TABLE; + uses RIB-RPF-LIST-TABLE; + uses RIB-NH-ID-SUMMARY-TABLE; + uses RIB-STATS; + uses RIB-MAX-DEPTH; + uses RIB-CLIENT-TABLE; + } + container rib { + config false; + description + "RIB operational data"; + uses RIB-NH-ID-HISTORY-TABLE; + uses RIB-UPDATE-GROUP-TABLE; + uses RIB-UPDATE-GROUP-PRUNED-NODES; + uses VRF-TABLE; + uses RIB-TABLE; + uses RIB-RPF-LIST-TABLE; + uses RIB-NH-ID-SUMMARY-TABLE; + uses RIB-STATS; + uses RIB-MAX-DEPTH; + uses RIB-CLIENT-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub1.yang new file mode 100644 index 000000000..2f51b4a54 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub1.yang @@ -0,0 +1,4663 @@ +submodule Cisco-IOS-XR-ip-rib-ipv6-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-rib-ipv6-oper { + prefix Cisco-IOS-XR-ip-rib-ipv6-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-rib-ipv6 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-03 { + description + "Update IID Context for Segment List Identifier + 2022-09-13 + Add IID Context for Segment List Identifier + 2022-08-29 + Segment List Identifier added to a routes path + 2022-08-18 + Updated IID entry infromation to display IID as an IPv6 prefix + 2022-07-04 + Add IID Context for L2VPN IP Tunnels. Add Remote Tunnel Endpoint ID: RTEP ID, to resolve via tunnel. + 2022-06-03 + Static Sid State has algo field + 2022-05-31 + SRv6 Adjacency Contexts updated to use interface name + 2022-05-11 + has-aft added to route + 2022-04-26 + Clear AFT stats added + 2022-02-18 + Add client id, proto id, flags, backup number and distance to opaque bag Added table-id for opaque redistribution history + 2022-02-03 + Add SID resource usage information + 2022-01-11 + Add IID Context for AFT NextHop Groups + 2021-12-16 + Updated aft route and path attributes with vrf names + 2021-12-16 + Added VNI to ip tunnel info path attribute + 2021-12-14 + Updated aft route and path attributes + 2021-11-26 + Add IID Local to known Protocol Types, and sync with existing types in ipv4-oper + 2021-11-25 + Added is delayed delete flag on routes local SID list + 2021-11-17 + Add AFT id path and route attributes + 2021-10-29 + Added Opaque redistribution history + 2021-09-24 + New path vpn attribute for ip tunnels"; + semver:module-version "4.2.0"; + } + revision 2021-08-08 { + description + "SRv6 uSID context extended with uDX + 2021-07-20 + Flexible Algorithm attribute added to IP Route + 2021-06-24 + IID context extended with EVPN ELAN support SRv6 SID context extended with EVPN ELAN support uDT2U uDT2M EndDT2U EndDT2M L2 Path attribute extended with support for Split Horizong Group and BridgeID + 2021-03-31 + SRv6 SID Manager include per operation mode block parameters + 2021-03-25 + Add FIB redistribution flag to route bag + 2021-03-14 + SRv6 SID context extensions"; + semver:module-version "4.1.0"; + } + revision 2020-12-11 { + description + "Add forwarding sidlist + 2020-09-30 + Nexthop notification model now includes client specific registration flags + 2020-09-24 + Changes to SRv6 uSID platform capabilities + 2020-07-24 + SRv6 uSID context extended for evpn"; + semver:module-version "4.0.0"; + } + revision 2020-05-29 { + description + "Updated the max number of elements for opaque stats to 16 Extended rib edm path to include IID info and SID Format type + 2020-04-30 + Updated sidmgr oper to add contexts for F1 SID: DT6, DX6 + 2020-04-02 + Increased path_num size in redist hist route bag to 16 bits + 2019-12-05 + Extended SidMgr info to include uSID platform capabilities + 2019-11-21 + Extended SidMgr info to include flag string and anycast flag"; + semver:module-version "3.0.0"; + } + revision 2019-11-05 { + description + "Extended Nexthop and NexhopPrefix paths to include all by NH flags + 2019-10-22 + Extended rib_edm_client_stats_summary to include client stats on bcdl ugs Extended rib_edm_local_label to support AIB prefer Added EDM support for large SID stack Extended rib_edm_path to include recursion length field Extended rib_edm_path to include metric field Extended iidmgr_summary to include oor summary info Extended rib_edm_route to include l3 route type field"; + semver:module-version "2.0.0"; + } + revision 2019-06-28 { + description + "Fixed NexthopPrefix path"; + semver:module-version "1.0.0"; + } + revision 2019-06-15 { + description + "Fixed IPv6 Address format for Nexthops"; + } + revision 2019-06-08 { + description + "Added RPF list and NHIDs"; + } + revision 2019-05-30 { + description + "Fixed adverts and backup paths"; + } + revision 2019-05-17 { + description + "Added Nexthops Summary, Nexthop Route, Longer Routes, Redist Clients and Client Stasts"; + } + revision 2019-04-25 { + description + "Updated yang schema to extend Native Yang model for the data exposed via CLI"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-02-21 { + description + "Yang evaluator: updates to schema descriptions and ranges"; + } + revision 2019-01-11 { + description + "Route lookup key is limited to Prefix and Prefix Length"; + } + revision 2018-11-20 { + description + "Add keys for route lookup via restconf."; + } + revision 2018-11-06 { + description + "Support Algorithm Label List per route"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rib-opaque { + type enumeration { + enum "opaque-attribute" { + value 0; + description + "opaque attribute"; + } + enum "opaque-ipfrr" { + value 1; + description + "opaque ipfrr"; + } + enum "opaque-ip-nh" { + value 2; + description + "opaque ip nh"; + } + enum "opaque-tunnel-nh" { + value 3; + description + "opaque tunnel nh"; + } + enum "opaque-tunnel-safi" { + value 4; + description + "opaque tunnel safi"; + } + enum "opaque-virtual-ll-address" { + value 5; + description + "opaque virtual ll address"; + } + enum "opaque-lisp" { + value 6; + description + "opaque lisp"; + } + enum "opaque-tep-vxlan" { + value 7; + description + "opaque tep vxlan"; + } + enum "opaque-tep-bgp" { + value 8; + description + "opaque tep bgp"; + } + enum "opaque-cofo-s-label" { + value 9; + description + "opaque cofo s label"; + } + enum "opaque-cofo-nnh-if" { + value 10; + description + "opaque cofo nnh if"; + } + enum "opaque-cofo-mcast" { + value 11; + description + "opaque cofo mcast"; + } + enum "opaque-label-range" { + value 12; + description + "opaque label range"; + } + enum "opaque-tep" { + value 13; + description + "opaque tep"; + } + enum "opaque-ipv4-adj" { + value 14; + description + "opaque ipv4 adj"; + } + enum "opaque-ipv6-adj" { + value 15; + description + "opaque ipv6 adj"; + } + enum "opaque-sfi" { + value 16; + description + "opaque sfi"; + } + enum "opaque-ltep" { + value 17; + description + "opaque ltep"; + } + enum "opaque-aft-nh" { + value 18; + description + "opaque aft nh"; + } + enum "opaque-rtep" { + value 19; + description + "opaque rtep"; + } + enum "opaque-encap-id" { + value 20; + description + "opaque encap id"; + } + enum "opaque-policy" { + value 21; + description + "opaque policy"; + } + enum "opaque-max" { + value 22; + description + "opaque max"; + } + } + description + "Rib opaque"; + } + + typedef Rib-edm-sl-id { + type enumeration { + enum "invalid" { + description + "Invalid Segment List"; + } + enum "srv6" { + description + "SRv6 Segment List"; + } + enum "mpls" { + description + "MPLS Segment List"; + } + } + description + "Rib edm sl id"; + } + + typedef Rib-via-aft-id { + type enumeration { + enum "none" { + description + "Via None"; + } + enum "via-nh-aft-id" { + description + "Via Next-hop AFT ID"; + } + enum "via-nh-group-aft-id" { + description + "Via Next-hop Group AFT ID"; + } + } + description + "Rib via aft id"; + } + + typedef Mgmt-srv6-headend { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "transit" { + description + "T (Pure transit)"; + } + enum "h-insert" { + description + "H.Insert"; + } + enum "h-insert-red" { + description + "H.Insert.Red"; + } + enum "h-encaps" { + description + "H.Encaps"; + } + enum "h-encaps-red" { + description + "H.Encaps.Red"; + } + enum "h-encaps-l2" { + description + "H.Encaps.L2"; + } + enum "h-encaps-l2-red" { + description + "H.Encaps.L2.Red"; + } + } + description + "SRv6 Headend Behavior Type"; + } + + typedef Rib-edm-nnh { + type enumeration { + enum "unknown" { + description + "Unknown - Invalid"; + } + enum "ipv4-address" { + description + "IPv4 Address"; + } + enum "if-index" { + description + "Interface Index"; + } + } + description + "Rib edm nnh"; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Ipv6-rib-edm-addr { + type inet:ipv6-address; + description + "Ipv6 rib edm addr"; + } + + grouping IPV6-RIB-EDM-UG-PRUNED-NODES { + description + "RIB updategroup pruned nodes information"; + leaf num-pruned-nodes { + type uint32; + description + "Number of pruned nodes"; + } + list pruned-node { + max-elements "256"; + description + "Pruned nodes ID"; + leaf entry { + type uint32; + description + "Pruned nodes ID"; + } + } + } + + grouping IPV6-RIB-EDM-NHID-OBJ { + description + "Information of nhid objects"; + leaf nhid { + type uint32; + description + "nhid"; + } + leaf feid { + type uint64; + description + "feid"; + } + leaf nh-addr { + type Ipv6-rib-edm-addr; + description + "nh addr"; + } + leaf ifindex { + type xr:Interface-name; + description + "ifindex"; + } + leaf chkpt-obj-id { + type uint32; + description + "chkpt obj id"; + } + leaf ref-count { + type uint32; + description + "ref count"; + } + leaf feature-type { + type uint8; + description + "feature type"; + } + } + + grouping RIB-EDM-STATS-GRID-SUMMARY { + description + "RIB EDM STATS GRID SUMMARY"; + leaf num-in-queue { + type uint32; + description + "num in queue"; + } + leaf num-enqueue { + type uint32; + description + "num enqueue"; + } + leaf num-dequeue { + type uint32; + description + "num dequeue"; + } + leaf num-enqueue-del-skipped { + type uint32; + description + "num enqueue del skipped"; + } + leaf num-requeue { + type uint32; + description + "num requeue"; + } + leaf num-enqueue-del-with-ref { + type uint32; + description + "num enqueue del with ref"; + } + } + + grouping RIB-EDM-STATS-NH-BATCH-SUMMARY { + description + "RIB batch nexthop statistics informatio"; + leaf total-nh-batch-requests { + type uint32; + description + "total nh batch requests"; + } + leaf total-nh-operations { + type uint32; + description + "total nh operations"; + } + leaf batch-init { + type uint32; + description + "batch init"; + } + leaf batch-register { + type uint32; + description + "batch register"; + } + leaf batch-unregister { + type uint32; + description + "batch unregister"; + } + leaf register-complete { + type uint32; + description + "register complete"; + } + leaf sync-register { + type uint32; + description + "sync register"; + } + leaf batch-finish { + type uint32; + description + "batch finish"; + } + leaf batch-null { + type uint32; + description + "batch null"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-client { + type uint32; + description + "last client"; + } + leaf last-nh-operation { + type uint32; + description + "last nh operation"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-nh-time { + type uint64; + description + "last nh time"; + } + } + + grouping RIB-EDM-STATS-LWM-SUMMARY { + description + "RIB EDM STATS LWM SUMMARY"; + leaf total-lwm { + type uint32; + description + "total lwm"; + } + leaf route-add { + type uint32; + description + "route add"; + } + leaf route-delete { + type uint32; + description + "route delete"; + } + leaf purge-protocol { + type uint32; + description + "purge protocol"; + } + leaf purge-client { + type uint32; + description + "purge client"; + } + leaf protocol-register { + type uint32; + description + "protocol register"; + } + leaf protocol-unregister { + type uint32; + description + "protocol unregister"; + } + leaf protocol-modify { + type uint32; + description + "protocol modify"; + } + leaf redist-proto { + type uint32; + description + "redist proto"; + } + leaf unreg-redist-proto { + type uint32; + description + "unreg redist proto"; + } + leaf redist-reset { + type uint32; + description + "redist reset"; + } + leaf update-complete { + type uint32; + description + "update complete"; + } + leaf advertisement { + type uint32; + description + "advertisement"; + } + leaf unreg-advertisement { + type uint32; + description + "unreg advertisement"; + } + leaf next-hop-register { + type uint32; + description + "next hop register"; + } + leaf next-hop-unregister { + type uint32; + description + "next hop unregister"; + } + leaf bind-data { + type uint32; + description + "bind data"; + } + leaf succcess { + type uint32; + description + "succcess"; + } + leaf route-lookup { + type uint32; + description + "route lookup"; + } + leaf best-local-addr { + type uint32; + description + "best local addr"; + } + leaf is-connected { + type uint32; + description + "is connected"; + } + leaf first-hop { + type uint32; + description + "first hop"; + } + leaf find-proto { + type uint32; + description + "find proto"; + } + leaf free-all-srv6-sid { + type uint32; + description + "free all srv6 sid"; + } + leaf other { + type uint32; + description + "other"; + } + leaf last-client { + type uint32; + description + "last client"; + } + leaf last-operation { + type uint32; + description + "last operation"; + } + leaf last-oper-result { + type boolean; + description + "last oper result"; + } + leaf last-lwm-time { + type uint64; + description + "last lwm time"; + } + leaf clear-aft { + type uint32; + description + "clear aft"; + } + } + + grouping RIB-EDM-STATS-BATCH-SUMMARY { + description + "RIB Batch statistic information"; + leaf total-msg-rx { + type uint32; + description + "total msg rx"; + } + leaf route-op-arg-rx { + type uint32; + description + "route op arg rx"; + } + leaf attribute-arg-rx { + type uint32; + description + "attribute arg rx"; + } + leaf complete-arg-rx { + type uint32; + description + "complete arg rx"; + } + leaf converge-arg-rx { + type uint32; + description + "converge arg rx"; + } + leaf opaque-arg-rx { + type uint32; + description + "opaque arg rx"; + } + leaf total-fwd-ref { + type uint32; + description + "total fwd ref"; + } + leaf invalid-client-id-error { + type uint32; + description + "invalid client id error"; + } + leaf mem-alloc-error { + type uint32; + description + "mem alloc error"; + } + leaf client-lookup-error { + type uint32; + description + "client lookup error"; + } + leaf db-lookup-error { + type uint32; + description + "db lookup error"; + } + leaf proto-lookup-error { + type uint32; + description + "proto lookup error"; + } + leaf client-proto-lookup-error { + type uint32; + description + "client proto lookup error"; + } + leaf table-missing-error { + type uint32; + description + "table missing error"; + } + leaf unknown-arg { + type uint32; + description + "unknown arg"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type uint32; + description + "last result"; + } + leaf last-operation { + type uint32; + description + "last operation"; + } + leaf last-client { + type uint32; + description + "last client"; + } + leaf last-msg-rx-time { + type uint64; + description + "last msg rx time"; + } + } + + grouping IPV6-RIB-EDM-STATS-SUMMARY { + description + "Summary of RIB statistic information"; + container batch-stats { + description + "batch stats"; + uses RIB-EDM-STATS-BATCH-SUMMARY; + } + container lwm-stats { + description + "lwm stats"; + uses RIB-EDM-STATS-LWM-SUMMARY; + } + container nh-batch-stats { + description + "nh batch stats"; + uses RIB-EDM-STATS-NH-BATCH-SUMMARY; + } + container grid-stats { + description + "grid stats"; + uses RIB-EDM-STATS-GRID-SUMMARY; + } + } + + grouping RIB-EDM-RPF-NBR-OBJ { + description + "Information of the rpf nbr data"; + leaf afi { + type uint8; + description + "afi"; + } + leaf ip-address { + type Ipv6-rib-edm-addr; + description + "ip address"; + } + } + + grouping IPV6-RIB-EDM-RPFLIST-OBJ { + description + "Informaton of rpf list objects"; + leaf label { + type uint32; + description + "label"; + } + leaf flags { + type uint32; + description + "flags"; + } + leaf ref-count { + type uint32; + description + "ref count"; + } + leaf sent-to-fib { + type boolean; + description + "sent to fib"; + } + list nbr { + description + "nbr"; + uses RIB-EDM-RPF-NBR-OBJ; + } + } + + grouping IPV6-RIB-EDM-CLIENT-PROTO-TABLE-INFO { + description + "Information on table-specific client protocols"; + leaf num-protos-outsync { + type uint32; + description + "Count of out-of-sync protocols"; + } + leaf update-time { + type uint64; + units "nanosecond"; + description + "Time of last update (nanoseconds)"; + } + leaf afi { + type uint32; + description + "Address Family"; + } + leaf safi { + type uint32; + description + "sub Address Family"; + } + leaf vrf-name { + type string; + description + "VRF Name of the table"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-PROTO { + description + "Information on a client proto"; + leaf protocol-names { + type string; + description + "Name of proto"; + } + leaf proto-instance { + type string; + description + "Instance of proto"; + } + leaf distance { + type uint32; + description + "Route distane for the protocol"; + } + leaf maxmetric { + type uint32; + description + "Route metric for the protocol"; + } + leaf purgetime { + type uint32; + description + "Route purgetime"; + } + leaf update-complete { + type boolean; + description + "Has the client finished updating"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-PROTO-INFO { + description + "Information on client protocols"; + leaf num-protos-outsync { + type uint32; + description + "Count of out-of-sync protocols"; + } + leaf update-time { + type uint32; + units "second"; + description + "Time of last update in seconds"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-HISTORY-ROUTE { + description + "Route information for history purposes"; + list ipv6-rib-edm-client-history-route { + description + "Next route"; + container advertisement { + description + "list of advertising protos"; + uses IPV6-RIB-EDM-ADVERT; + } + leaf prefix { + type Ipv6-rib-edm-addr; + description + "Route prefix"; + } + leaf prefix-length { + type uint8; + description + "Length of prefix"; + } + leaf priority { + type uint8; + description + "Priority of update"; + } + leaf flags { + type uint32; + description + "Route flags"; + } + leaf source { + type uint32; + description + "source"; + } + leaf table-id { + type uint32; + description + "table identifier"; + } + leaf distance { + type uint32; + description + "Administrative distance"; + } + leaf metric { + type uint32; + description + "Route metric"; + } + leaf local-label { + type uint32; + description + "Route local label"; + } + leaf path-num { + type uint16; + description + "Number of paths"; + } + leaf nnh-num { + type uint16; + description + "Number of NNHs"; + } + leaf route-age { + type uint32; + units "second"; + description + "Age of event (seconds)"; + } + leaf route-modify-time { + type uint64; + units "nanosecond"; + description + "Time of event (nanoseconds)"; + } + leaf private-flags { + type uint16; + description + "Route head private flags"; + } + leaf number-of-srv6-sids { + type uint16; + description + "Number of SRv6 Segment Identifiers"; + } + leaf converge { + type uint8; + description + "Redist table converged"; + } + leaf code { + type int8; + description + "Protocol code"; + } + leaf outsync { + type uint32; + description + "Last packed outsync prio"; + } + } + } + + grouping IPV6-RIB-EDM-CLIENT-REDIST { + description + "General info. on a client's redistribution"; + container routes { + description + "Link to history routes"; + uses IPV6-RIB-EDM-CLIENT-HISTORY-ROUTE; + } + leaf num-tables-outsync { + type uint32; + description + "Num tables to get updates from"; + } + leaf num-history-routes { + type uint32; + description + "Number of history routes"; + } + } + + grouping IPV6-RIB-EDM-CLIENT { + description + "Rib client information"; + leaf pname { + type string; + description + "Client's name"; + } + leaf nodename { + type string; + description + "Node client process is running on"; + } + leaf pid { + type uint32; + description + "Client's process ID"; + } + leaf redist { + type boolean; + description + "Is client registered for redist"; + } + leaf proto { + type boolean; + description + "Is client registered as a protocol"; + } + leaf client-id { + type uint32; + description + "Client's RIB ID number"; + } + leaf redist-opaques { + type boolean; + description + "Is client registered for redist of opaques"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-REDIST-PROTO { + description + "Information on a client's redist of a proto"; + leaf insync { + type boolean; + description + "Is this in sync or not?"; + } + leaf protocol-names { + type string; + description + "Name of proto it is redistributing"; + } + leaf proto-instance { + type string; + description + "Instance of redistributed proto"; + } + leaf updatemode { + type uint32; + description + "Type of route information getting redistributed"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-REDIST-TABLE { + description + "Information on a client's redistribution of a + table"; + leaf full-table { + type boolean; + description + "Full table redistrbution or not?"; + } + leaf insync { + type uint32; + description + "Is this is sync or not?"; + } + leaf afi { + type uint32; + description + "Address Family"; + } + leaf safi { + type uint32; + description + "sub Address Family"; + } + leaf vrf-name { + type string; + description + "VRF Name of the table"; + } + leaf updatemode { + type uint32; + description + "Update type in route registration"; + } + } + + grouping RIB-EDM-STATS-REDIST-SRV6 { + description + "SRv6 redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping RIB-EDM-STATS-REDIST-OPAQUE { + description + "Opaque redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf total-tbl-entries { + type uint32; + description + "total tbl entries"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping RIB-EDM-STATS-REDIST-ATTR { + description + "Attribe redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf total-tbl-entries { + type uint32; + description + "total tbl entries"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping RIB-EDM-STATS-REDIST-ROUTE { + description + "Route redistribution statistics"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf update-sent { + type uint32; + description + "update sent"; + } + leaf paths-sent { + type uint32; + description + "paths sent"; + } + leaf prefixes-deleted { + type uint32; + description + "prefixes deleted"; + } + leaf total-advertisment { + type uint32; + description + "total advertisment"; + } + leaf last-redist-delete { + type boolean; + description + "last redist delete"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping IPV6-RIB-EDM-STATS-REDIST { + description + "Redistribution statistics"; + container route { + description + "route"; + uses RIB-EDM-STATS-REDIST-ROUTE; + } + container attr { + description + "attr"; + uses RIB-EDM-STATS-REDIST-ATTR; + } + container srv6 { + description + "srv6"; + uses RIB-EDM-STATS-REDIST-SRV6; + } + leaf protocol-name { + type string; + description + " Name of Protocol"; + } + leaf instance { + type string; + description + "Instance name"; + } + list opaque-stat { + max-elements "22"; + description + "opaque stat"; + uses RIB-EDM-STATS-REDIST-OPAQUE; + } + } + + grouping RIB-EDM-STATS-CLIENT-UG-START { + description + "BCDL update group notify timer statistics"; + leaf bcdl-ug-notify-num-not-started { + type uint32; + description + "bcdl ug notify num not started"; + } + leaf bcdl-ug-last-notify-not-started-time { + type uint64; + description + "bcdl ug last notify not started time"; + } + } + + grouping RIB-EDM-STATS-CLIENT-FIB-UG-UPD { + description + "FIB update group updates statistics"; + leaf fib-ug-updates { + type uint32; + description + "fib ug updates"; + } + leaf fib-ug-total-nodes { + type uint32; + description + "fib ug total nodes"; + } + } + + grouping RIB-EDM-STATS-CLIENT-LOOKUPS { + description + "Lookup statistics"; + leaf best-local-address { + type uint32; + description + "best local address"; + } + leaf is-connected { + type uint32; + description + "is connected"; + } + leaf route-lookups { + type uint32; + description + "route lookups"; + } + leaf next-hop-lookups { + type uint32; + description + "next hop lookups"; + } + leaf default-source { + type uint32; + description + "default source"; + } + } + + grouping RIB-EDM-STATS-CLIENT-ATTRIBUTE { + description + "Attribute operation statistics"; + leaf total-registration { + type uint32; + description + "total registration"; + } + leaf total-add { + type uint32; + description + "total add"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping RIB-EDM-STATS-CLIENT-REDIST-TBL { + description + "Table redistribution statistics"; + leaf total-table-redist { + type uint32; + description + "total table redist"; + } + leaf table-created { + type uint32; + description + "table created"; + } + leaf table-full { + type uint32; + description + "table full"; + } + leaf has-space { + type uint32; + description + "has space"; + } + leaf last-redist { + type uint8; + description + "last redist"; + } + leaf last-redist-time { + type uint64; + description + "last redist time"; + } + } + + grouping RIB-EDM-STATS-CLIENT-TBL { + description + "Table operation statistics"; + leaf total-table-register { + type uint32; + description + "total table register"; + } + leaf new-table { + type uint32; + description + "new table"; + } + leaf modification { + type uint32; + description + "modification"; + } + leaf deletion { + type uint32; + description + "deletion"; + } + leaf cl-lookup-err { + type uint32; + description + "cl lookup err"; + } + leaf tbl-lookup-err { + type uint32; + description + "tbl lookup err"; + } + leaf invalid-id-lookup-err { + type uint32; + description + "invalid id lookup err"; + } + leaf tbl-create-err { + type uint32; + description + "tbl create err"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping RIB-EDM-STATS-CLIENT-REDIST { + description + "Client redistribution stats"; + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + list evt-data { + description + "Optional data"; + leaf entry { + type uint32; + description + "Optional data"; + } + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping RIB-EDM-STATS-CLIENT-NOTF { + description + "RIB pulse statistics"; + container evt-hist { + description + "evt hist"; + uses EVT-HIST-INFO; + } + leaf total-notifications { + type uint32; + description + "total notifications"; + } + leaf clear { + type uint32; + description + "clear"; + } + leaf nexthop-critical { + type uint32; + description + "nexthop critical"; + } + leaf nexthop-noncritical { + type uint32; + description + "nexthop noncritical"; + } + leaf nexthop-converge { + type uint32; + description + "nexthop converge"; + } + leaf redist-register { + type uint32; + description + "redist register"; + } + leaf redist-reset { + type uint32; + description + "redist reset"; + } + leaf preceeding-client { + type uint32; + description + "preceeding client"; + } + leaf redist-list { + type uint32; + description + "redist list"; + } + leaf gc-proto { + type uint32; + description + "gc proto"; + } + leaf gc-db { + type uint32; + description + "gc db"; + } + leaf gc-attribute { + type uint32; + description + "gc attribute"; + } + leaf table-event { + type uint32; + description + "table event"; + } + leaf feedback-cookie { + type uint32; + description + "feedback cookie"; + } + leaf fib-ug-update { + type uint32; + description + "fib ug update"; + } + leaf critical { + type uint32; + description + "critical"; + } + leaf non-critical { + type uint32; + description + "non critical"; + } + leaf delay-timer { + type uint32; + description + "delay timer"; + } + leaf skip-notification { + type uint32; + description + "skip notification"; + } + leaf end-of-data { + type uint32; + description + "end of data"; + } + leaf disconnect { + type uint32; + description + "disconnect"; + } + leaf srv6-redist-register { + type uint32; + description + "srv6 redist register"; + } + leaf srv6-cfg-updt { + type uint32; + description + "srv6 cfg updt"; + } + leaf srv6-opcode-updt { + type uint32; + description + "srv6 opcode updt"; + } + leaf state-sync-done { + type uint32; + description + "state sync done"; + } + leaf last-notification { + type uint64; + description + "last notification"; + } + leaf last-eod { + type uint64; + description + "last eod"; + } + leaf total-pulse { + type uint64; + description + "total pulse"; + } + leaf total-select { + type uint64; + description + "total select"; + } + leaf total-read { + type uint64; + description + "total read"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-STATS-SUMMARY { + description + "Summary of RIB client statistics"; + container notification { + description + "notification"; + uses RIB-EDM-STATS-CLIENT-NOTF; + } + container redist { + description + "redist"; + uses RIB-EDM-STATS-CLIENT-REDIST; + } + container tbl-stats { + description + "tbl stats"; + uses RIB-EDM-STATS-CLIENT-TBL; + } + container redist-tbl { + description + "redist tbl"; + uses RIB-EDM-STATS-CLIENT-REDIST-TBL; + } + container attribute { + description + "attribute"; + uses RIB-EDM-STATS-CLIENT-ATTRIBUTE; + } + container lookups { + description + "lookups"; + uses RIB-EDM-STATS-CLIENT-LOOKUPS; + } + container fib-ug { + description + "fib ug"; + uses RIB-EDM-STATS-CLIENT-FIB-UG-UPD; + } + container ug-start-stats { + description + "ug start stats"; + uses RIB-EDM-STATS-CLIENT-UG-START; + } + leaf client-id { + type uint32; + description + "client id"; + } + } + + grouping IPV6-RIB-EDM-STATS-REDIST-NH { + description + "Nexthop redistribution statistics"; + leaf table-id-xr { + type uint32; + description + "table id xr"; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf total-redist { + type uint32; + description + "total redist"; + } + leaf total-converge { + type uint32; + description + "total converge"; + } + leaf total-suppress { + type uint32; + description + "total suppress"; + } + leaf last-redist { + type uint64; + description + "last redist"; + } + leaf total-converge-sent { + type uint32; + description + "total converge sent"; + } + leaf last-converge { + type uint64; + description + "last converge"; + } + leaf last-converge-sent { + type uint64; + description + "last converge sent"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-HISTORY-OPAQUE { + description + "Opaque information for history purposes"; + list ipv6-rib-edm-client-history-opaque { + description + "Next opaque"; + leaf type { + type Rib-opaque; + description + "Opaque Type"; + } + leaf decoded-key { + type string; + description + "Decoded opaque key string"; + } + leaf is-deleted { + type boolean; + description + "Opaque is deleted"; + } + leaf opaque-modify-time { + type string; + description + "Timestamp of event"; + } + leaf table-id { + type uint32; + description + "table identifier"; + } + } + } + + grouping IPV6-RIB-EDM-CLIENT-REDIST-OPAQUE { + description + "Client redistribution information for opaques"; + container opaques { + description + "Link to history opaques"; + uses IPV6-RIB-EDM-CLIENT-HISTORY-OPAQUE; + } + leaf num-history-opaques { + type uint32; + description + "Number of history opaques"; + } + } + + grouping RIB-EDM-STATS-OPAQUE { + description + "Opaqaue statistics"; + leaf total-registration { + type uint32; + description + "total registration"; + } + leaf total-add { + type uint32; + description + "total add"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping IPV6-RIB-EDM-STATS-NEXTHOP { + description + "Nexthop notification statistics"; + leaf table-id-xr { + type uint32; + description + "table id xr"; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf total-next-hop-reg { + type uint32; + description + "total next hop reg"; + } + leaf total-next-hop-unreg { + type uint32; + description + "total next hop unreg"; + } + leaf total-sync-reg { + type uint32; + description + "total sync reg"; + } + leaf last-registration { + type uint64; + description + "last registration"; + } + } + + grouping RIB-EDM-STATS-PURGE { + description + "Purge statistics"; + leaf total-purges { + type uint32; + description + "total purges"; + } + leaf total-prefix-deleted { + type uint32; + description + "total prefix deleted"; + } + leaf total-paths-deleted { + type uint32; + description + "total paths deleted"; + } + leaf last-purge { + type uint64; + description + "last purge"; + } + } + + grouping RIB-EDM-STATS-COMPLETE-UPDATE { + description + "Batch complete update statistic"; + leaf total-complete { + type uint32; + description + "total complete"; + } + leaf insync { + type uint32; + description + "insync"; + } + leaf last-insync { + type uint64; + description + "last insync"; + } + leaf bad-args { + type uint32; + description + "bad args"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-complete-msg { + type uint64; + description + "last complete msg"; + } + } + + grouping RIB-EDM-STATS-BATCH-CONVERGE { + description + "Batch converge operation statistics"; + leaf total-converge { + type uint32; + description + "total converge"; + } + leaf insync { + type uint32; + description + "insync"; + } + leaf last-insync { + type uint64; + description + "last insync"; + } + leaf bad-args { + type uint32; + description + "bad args"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-converge-msg { + type uint64; + description + "last converge msg"; + } + } + + grouping RIB-EDM-STATS-BATCH-COMPLETE { + description + "Batch complete operation statistic"; + leaf total-complete { + type uint32; + description + "total complete"; + } + leaf insync { + type uint32; + description + "insync"; + } + leaf last-insync { + type uint64; + description + "last insync"; + } + leaf last-complete-msg { + type uint64; + description + "last complete msg"; + } + } + + grouping RIB-EDM-STATS-ADVERTISEMENT { + description + "Advertisement statistic"; + leaf total-adv { + type uint32; + description + "total adv"; + } + leaf new-adv { + type uint32; + description + "new adv"; + } + leaf modification { + type uint32; + description + "modification"; + } + leaf delete { + type uint32; + description + "delete"; + } + leaf success { + type uint32; + description + "success"; + } + leaf last-result { + type boolean; + description + "last result"; + } + leaf last-adv-time { + type uint64; + description + "last adv time"; + } + } + + grouping RIB-EDM-STATS-ROUTE-OP { + description + "Route operation statistics"; + leaf paths-add-op { + type uint32; + description + "paths add op"; + } + leaf prefix-added { + type uint32; + description + "prefix added"; + } + leaf paths-added { + type uint32; + description + "paths added"; + } + leaf prefix-modified-add { + type uint32; + description + "prefix modified add"; + } + leaf paths-delete-op { + type uint32; + description + "paths delete op"; + } + leaf prefix-deleted { + type uint32; + description + "prefix deleted"; + } + leaf paths-deleted { + type uint32; + description + "paths deleted"; + } + leaf prefix-modified-del { + type uint32; + description + "prefix modified del"; + } + leaf prefix-flushed { + type uint32; + description + "prefix flushed"; + } + leaf paths-flushed { + type uint32; + description + "paths flushed"; + } + leaf invalid-op { + type uint32; + description + "invalid op"; + } + leaf flushed { + type uint32; + description + "flushed"; + } + leaf too-manypaths { + type uint32; + description + "too manypaths"; + } + leaf invalid-parameter { + type uint32; + description + "invalid parameter"; + } + leaf no-ecmp-support { + type uint32; + description + "no ecmp support"; + } + leaf mem-alloc-error { + type uint32; + description + "mem alloc error"; + } + leaf path-backup { + type uint32; + description + "path backup"; + } + leaf path-active { + type uint32; + description + "path active"; + } + leaf path-change { + type uint32; + description + "path change"; + } + leaf path-nochange { + type uint32; + description + "path nochange"; + } + leaf table-limit { + type uint32; + description + "table limit"; + } + leaf outsync { + type uint32; + description + "outsync"; + } + leaf last-outsync { + type uint64; + description + "last outsync"; + } + leaf last-route-opt { + type uint16; + description + "last route opt"; + } + leaf last-result { + type uint32; + description + "last result"; + } + leaf last-opt-time { + type uint64; + description + "last opt time"; + } + leaf attribute-not-found { + type uint32; + description + "attribute not found"; + } + leaf last-attribute-not-found-time { + type uint64; + description + "last attribute not found time"; + } + leaf num-fb-cookies { + type uint32; + description + "num fb cookies"; + } + leaf last-fb-cookie-op { + type uint64; + description + "last fb cookie op"; + } + leaf invalid-path-combination { + type uint32; + description + "invalid path combination"; + } + leaf invalid-pathid-change { + type uint32; + description + "invalid pathid change"; + } + leaf path-attribute-too-large { + type uint32; + description + "path attribute too large"; + } + } + + grouping IPV6-RIB-EDM-CLIENT-PROTO-STATS-SUMMARY { + description + "Summary of RIB client protocol statistic summary"; + container route-op-stats { + description + "route op stats"; + uses RIB-EDM-STATS-ROUTE-OP; + } + container adv { + description + "adv"; + uses RIB-EDM-STATS-ADVERTISEMENT; + } + container complete-stats { + description + "complete stats"; + uses RIB-EDM-STATS-BATCH-COMPLETE; + } + container converge-stats { + description + "converge stats"; + uses RIB-EDM-STATS-BATCH-CONVERGE; + } + container complete-update-stats { + description + "complete update stats"; + uses RIB-EDM-STATS-COMPLETE-UPDATE; + } + container purge-stats { + description + "purge stats"; + uses RIB-EDM-STATS-PURGE; + } + container nh-stats { + description + "nh stats"; + uses IPV6-RIB-EDM-STATS-NEXTHOP; + } + leaf protocol-name { + type string; + description + " Name of Protocol"; + } + leaf instance { + type string; + description + "Instance name"; + } + list opaque-stat { + max-elements "22"; + description + "opaque stat"; + uses RIB-EDM-STATS-OPAQUE; + } + } + + grouping IPV6-RIB-EDM-NHID-HIST-OBJ { + description + "Information of nhid history objects"; + leaf nhid { + type uint32; + description + "nhid"; + } + leaf nh-addr { + type Ipv6-rib-edm-addr; + description + "nh addr"; + } + leaf ifindex { + type xr:Interface-name; + description + "ifindex"; + } + leaf tableid { + type uint32; + description + "tableid"; + } + leaf operation { + type uint32; + description + "operation"; + } + leaf update { + type uint32; + description + "update"; + } + leaf oper-time { + type uint64; + description + "oper time"; + } + leaf feature-type { + type uint8; + description + "feature type"; + } + leaf chkpt-obj-id { + type uint32; + description + "chkpt obj id"; + } + } + + grouping IPV6-RIB-EDM-UG { + description + "RIB updategroup information"; + leaf ug-id { + type uint32; + description + "Update Group ID"; + } + leaf client-id { + type uint32; + description + "ClientId associated with UG"; + } + leaf parent-id { + type int32; + description + "UG's parent if child"; + } + leaf insync { + type boolean; + description + "Is this ug insync with RIB"; + } + leaf freezecnt { + type uint32; + description + "Freeze count if frozen"; + } + } + + grouping IPV6-RIB-EDM-OPAQUE-OBJ { + description + "Informaton of an opaque data"; + leaf key { + type yang:hex-string; + description + "The unique ID assigned to the opaque object by + client"; + } + leaf data { + type yang:hex-string; + description + "The data part of the opaque object"; + } + leaf protocol-id { + type uint32; + description + "Protocol installing opaque"; + } + leaf client-id { + type uint32; + description + "Client installing opaque"; + } + leaf distance { + type uint32; + description + "Opaque distance"; + } + leaf flags { + type uint32; + description + "Opaque flags"; + } + leaf num-backups { + type uint32; + description + "Number of backup opaques installed"; + } + leaf type { + type Rib-opaque; + description + "Opaque Type"; + } + leaf decoded-key { + type string; + description + "Decoded opaque key string"; + } + leaf decoded-data { + type string; + description + "Decoded opaque data string"; + } + } + + grouping IPV6-RIB-EDM-PROTO { + description + "Information of a rib protocol"; + leaf protocol-names { + type string; + description + "Name"; + } + leaf instance { + type string; + description + "Instance name of the protocol"; + } + leaf version { + type uint32; + description + "Proto version"; + } + leaf redistribution-client-count { + type uint32; + description + "Number of redist clients"; + } + leaf protocol-clients-count { + type uint32; + description + "Number of proto clients"; + } + leaf routes-counts { + type uint32; + description + "Number of routes (including active, backup and + deleted), where, number of backup routes = + RoutesCounts - ActiveRoutesCount - + DeletedRoutesCount "; + } + leaf active-routes-count { + type uint32; + description + "Number of active routes (not deleted)"; + } + leaf deleted-routes-count { + type uint32; + description + "Number of deleted routes"; + } + leaf paths-count { + type uint32; + description + "Number of paths for all routes"; + } + leaf protocol-route-memory { + type uint32; + units "byte"; + description + "Memory for proto's routes and paths in bytes"; + } + leaf backup-routes-count { + type uint32; + description + "Number of backup routes"; + } + } + + grouping IPV6-RIB-EDM-ADVERT { + description + "Route advertisement information"; + list ipv6-rib-edm-advert { + description + "Next advertising proto"; + leaf protocol-id { + type uint32; + description + "Protocol advertising the route"; + } + leaf client-id { + type uint32; + description + " Client advertising the route"; + } + leaf number-of-extended-communities { + type uint32; + description + "Number of extended communities attached by + advertiser"; + } + leaf extended-communities { + type yang:hex-string; + description + "Extended communities attached by the advertiser"; + } + leaf protocol-opaque-flags { + type uint8; + description + "OSPF area-id flags"; + } + leaf protocol-opaque { + type uint32; + description + "OSPF area-id"; + } + leaf code { + type int8; + description + "Protocol code"; + } + leaf instance-name { + type string { + length "0..41"; + } + description + "Instance name of the protocol advertising the + route"; + } + } + } + + grouping IPV6-RIB-EDM-RECURSION-DEPTH-MAX { + description + "Information about the maximum recursion depth in + the RIB"; + leaf current { + type uint32; + description + "Current maximum recursion depth"; + } + leaf configured { + type uint32; + description + "Configured maximum recursion depth"; + } + } + + grouping IPV6-RIB-EDM-NH-STATS { + description + "Nexthop statistics for a table"; + leaf num-resolved-nh { + type uint32; + description + "Number of resolved nexthop"; + } + leaf num-unresolved-nh { + type uint32; + description + "Number of unresolved nexthop"; + } + } + + grouping RIB-EDM-ROUTE-COUNT { + description + "Specifics of route count"; + leaf active-routes-count { + type uint32; + description + "Number of active routes"; + } + leaf num-backup-routes { + type uint32; + description + "Number of backup (inactive) routes"; + } + leaf num-active-paths { + type uint32; + description + "Number of paths to active routes"; + } + leaf num-backup-paths { + type uint32; + description + "Number of paths to backup routes"; + } + } + + grouping RIB-EDM-PROTO-ROUTE-SUMM-DETAIL { + description + "Details of Protocol route types"; + container proto-route-count { + description + "Count for proto. instance"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-none { + description + "No route type"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-other { + description + "Unknown route type"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-intra { + description + "OSPF route within an area"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-inter { + description + "OSPF route across diff. areas"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-extern1 { + description + "OSPF external route of type 1"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-extern2 { + description + "OSPF external route of type 2"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-sum { + description + "IS-IS summary route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-l1 { + description + "IS-IS level 1 route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-l2 { + description + "IS-IS level 2 route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-isis-l1-ia { + description + "IS-IS level1 inter-area route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-bgp-int { + description + "iBGP route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-bgp-ext { + description + "eBGP route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-bgp-loc { + description + "BGP local route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-nssa1 { + description + "OSPF NSSA ext. route type 1"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-ospf-nssa2 { + description + "OSPF NSSA ext. route type 2"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-igrp2-int { + description + "EIGRP internal route"; + uses RIB-EDM-ROUTE-COUNT; + } + container rtype-igrp2-ext { + description + "EIGRP external route"; + uses RIB-EDM-ROUTE-COUNT; + } + leaf name { + type string; + description + "Proto name"; + } + leaf instance { + type string; + description + "Instance name of the protocol"; + } + } + + grouping RIB-PATH-SHARED-DB-STATS { + description + "Per table path sharing stats"; + leaf num-mutable-paths { + type uint32; + description + "Number of mutable paths"; + } + leaf num-total-mutable-alloc { + type uint32; + description + "Running count of mutable path allocation calls"; + } + leaf num-total-mutable-cleanup { + type uint32; + description + "Running count of mutable path frees"; + } + leaf num-path-clone-ops { + type uint32; + description + "Count of path clone operations"; + } + leaf num-path-save-ops { + type uint32; + description + "Count of path save operations"; + } + leaf num-shr-refcnt-incr { + type uint32; + description + "Number of refcount increment operations"; + } + leaf num-shr-refcnt-decr { + type uint32; + description + "Number of refcount decrements operations"; + } + leaf num-current-shared-paths { + type uint32; + description + "Current number of shared paths"; + } + leaf max-share-refcnt { + type uint32; + description + "The highest sharing factor by any path, + high-water"; + } + leaf max-paths-in-db { + type uint32; + description + "Largest number of paths in DB high-water"; + } + leaf num-shared-path-search-miss { + type uint32; + description + "Number of MISS operations searching for shared + path"; + } + leaf num-shared-path-search-hit { + type uint32; + description + "Number of HIT operations searching for shared + path"; + } + leaf num-total-shared-path-create { + type uint32; + description + "Number of path create operations"; + } + leaf num-total-shared-path-delete { + type uint32; + description + "Number of path delete operations"; + } + leaf sum-of-all-refcounts { + type uint32; + description + "Sum of all path refcounts in the shared db"; + } + leaf avg-path-shares { + type uint32; + description + "Average number of pathlists using a shared path"; + } + } + + grouping RIB-PATHLIST-SHARED-DB-STATS { + description + " Per table pathlist sharing stats"; + leaf num-mutable-pathlists { + type uint32; + description + "Number of mutable pathlists"; + } + leaf num-immutable-pathlists { + type uint32; + description + "Number of immutable pathlists"; + } + leaf num-cumulative-pathlist-creates { + type uint32; + description + "Cumulative number of pathlist-CREATES"; + } + leaf num-pathlist-clone-ops { + type uint32; + description + "Count of pathlist clone operations"; + } + leaf num-pathlist-save-ops { + type uint32; + description + "Count of pathlist save operations"; + } + leaf max-share-refcnt { + type uint32; + description + "The max sharing factor by any pathlist, + high-water"; + } + leaf max-pathlists-in-db { + type uint32; + description + "Largest number of pathlists in DB, high-water"; + } + leaf num-shared-pathlist-search-hit { + type uint32; + description + "number of HIT operations searching for a shared + pathlist"; + } + leaf num-shared-pathlist-search-miss { + type uint32; + description + "number of MISS operations searching for a shared + pathlist"; + } + leaf sum-of-all-refcounts { + type uint32; + description + "Sum of all pathlist refcounts in the shared db"; + } + leaf avg-pathlist-shares { + type uint32; + description + "Average number of routes using a shared pathlist"; + } + } + + grouping IPV6-RIB-EDM-TABLE { + description + "Information of a routing table"; + container pathlist-stats { + description + "Pathlist Statistics"; + uses RIB-PATHLIST-SHARED-DB-STATS; + } + container path-stats { + description + "Path Statistics"; + uses RIB-PATH-SHARED-DB-STATS; + } + leaf tableid { + type uint32; + description + "Table id"; + } + leaf afi { + type uint32; + description + "Address Family"; + } + leaf safi { + type uint32; + description + "sub Address Family"; + } + leaf vrf-name { + type string; + description + "VRF Name of the table"; + } + leaf table-name { + type string; + description + "Name of the table"; + } + leaf version { + type uint64; + description + "Table version"; + } + leaf conf-prefix-limit { + type uint32; + description + "Configured prefix limit"; + } + leaf current-prefix-count { + type uint32; + description + "Num prefixes in table"; + } + leaf num-svdlcl-prefix { + type uint32; + description + "Num SVD local prefixes"; + } + leaf num-svdrem-prefix { + type uint32; + description + "Num SVD remote prefixes"; + } + leaf table-version { + type uint64; + description + "Version no. of the table"; + } + leaf prefix-limit-notified { + type boolean; + description + "Prefix limit state indicator"; + } + leaf fwd-referenced { + type boolean; + description + "Table in fwd reference state?"; + } + leaf deleted { + type boolean; + description + "Table deleted?"; + } + leaf initial-converge { + type boolean; + description + "Table has reached convergence"; + } + } + + grouping RIB-EDM-NH-PATH { + description + "Information of a nexthop notification client"; + leaf interface { + type uint32; + description + "interface"; + } + leaf address { + type Ipv6-rib-edm-addr; + description + "Address"; + } + leaf tableid { + type uint32; + description + "tableid"; + } + leaf vrf-name { + type string; + description + "VRF Name of the nh table"; + } + } + + grouping RIB-EDM-PATH-SL-ID-INFO { + description + "Information of Segment List Identifier"; + leaf type { + type Rib-edm-sl-id; + description + "Segment List ID type"; + } + leaf sl-id { + type uint32; + description + "Segment List ID"; + } + } + + grouping RIB-EDM-PATH-VIA-AFT-ID { + description + "Information of Via aft ID attribute in path"; + leaf aft-id { + type uint64; + description + "AFT ID for this path"; + } + leaf vrf-id { + type uint32; + description + "VRF ID for this path"; + } + leaf type { + type Rib-via-aft-id; + description + "Type of AFT ID"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + } + + grouping RIB-EDM-PATH-IP-TUNNEL-INFO { + description + "Information of IP tunnel Info attribute in path"; + leaf auto-created { + type boolean; + description + "Tunnel is auto created"; + } + leaf tunnel-type { + type string; + description + "Tunnel Type"; + } + leaf has-evni { + type boolean; + description + "Egress VXLAN Network Identifier present"; + } + leaf evni { + type uint32; + description + "Egress VXLAN Network Identifier"; + } + leaf has-tunnel-id { + type boolean; + description + "Tunnel ID present"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf has-vni { + type boolean; + description + "VXLAN Network Identifier present"; + } + leaf vni { + type uint32; + description + "VXLAN Network Identifier"; + } + leaf has-rtep-id { + type boolean; + description + "Remote Tunnel End Point ID present"; + } + leaf rtep-id { + type uint64; + description + "Remote Tunnel End Point ID"; + } + } + + grouping RIB-EDM-VIA-SRV6-SID { + description + "Information related to Via-SRv6-SID"; + leaf sid { + type inet:ipv6-address; + description + "Via-SRv6-SID value"; + } + leaf resolution-length { + type uint8; + description + "FIB Resolution length"; + } + } + + grouping MGMT-SRV6-HEADEND-BEHAVIOR { + description + "SRv6 Headend Behavior Info"; + leaf type { + type Mgmt-srv6-headend; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping MGMT-SRV6-SID { + description + "SRv6 SID"; + leaf sid { + type inet:ipv6-address; + description + "SID value"; + } + } + + grouping RIB-EDM-PATH-SRV6-INFO { + description + "RIB path's SRv6 related information"; + container srv6-carrier-format { + description + "SRv6 Carrier Format"; + uses MGMT-SRV6-SID-FMT; + } + container srv6-headend-behavior { + description + "SRv6 headend behavior/type info"; + uses MGMT-SRV6-HEADEND-BEHAVIOR; + } + container via-srv6-sid { + description + "Via-SRv6-SID value"; + uses RIB-EDM-VIA-SRV6-SID; + } + leaf number-of-srv6-carriers { + type uint8; + description + "Number of SRv6 Carriers"; + } + leaf has-srv6-headend-behavior { + type boolean; + description + "Path has some SRv6 head-end behavior associated"; + } + leaf has-via-srv6-sid { + type boolean; + description + "Via-SRv6-SID is present"; + } + list srv6-carrier { + description + "List of SRv6 Carriers with one or more SIDs"; + uses MGMT-SRV6-SID; + } + } + + grouping RIB-EDM-PATH-GROUPING-INFO { + description + "Information of Path Grouping"; + leaf grouping-id { + type uint32; + description + "Grouping ID for this path"; + } + } + + grouping RIB-EDM-PATH-L2-INFO { + description + "Information of L2 Info attribute in path"; + leaf xcid { + type uint32; + description + "L2 Cross Connect ID for this path"; + } + leaf ac-interface { + type xr:Interface-name; + description + "L2 AC Interface"; + } + leaf split-horizon-group-id { + type uint32; + description + "L2 Split Horizon Group ID"; + } + leaf bridge-id { + type uint32; + description + "L2 Bridge ID"; + } + } + + grouping RIB-EDM-NNH { + description + "Information of a NNH in path installed in RIB"; + leaf type { + type Rib-edm-nnh; + description + "type"; + } + leaf unknownval { + when "../type = 'unknown'" { + description + "../type = 'Unknown'"; + } + type uint32; + description + "Unknown Value"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../type = 'IPv4Address'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf interface-index { + when "../type = 'if-index'" { + description + "../type = 'IfIndex'"; + } + type uint32; + description + "Interface Index"; + } + } + + grouping IPV6-RIB-EDM-PATH { + description + "Information of a rib path"; + list ipv6-rib-edm-path { + description + "Next path"; + container l2-info { + description + "L2 Info for this path"; + uses RIB-EDM-PATH-L2-INFO; + } + container path-grouping-info { + description + "Grouping Info for this path"; + uses RIB-EDM-PATH-GROUPING-INFO; + } + container srv6-info { + description + "SRv6 related information"; + uses RIB-EDM-PATH-SRV6-INFO; + } + container ip-tunnel-info { + description + "IP Tunnel Info for this path"; + uses RIB-EDM-PATH-IP-TUNNEL-INFO; + } + container via-aft-id { + description + "Via AFT ID info for this path"; + uses RIB-EDM-PATH-VIA-AFT-ID; + } + container segment-list-id-info { + description + "Segment List ID Info"; + uses RIB-EDM-PATH-SL-ID-INFO; + } + leaf address { + type Ipv6-rib-edm-addr; + description + "Nexthop"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf information-source { + type Ipv6-rib-edm-addr; + description + "Infosource"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf v6-nexthop { + type inet:ipv6-address; + description + "IPv6 nexthop for v4 over v6"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf v6-information-source { + type inet:ipv6-address; + description + "V6 Infosource"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface handle for the path's nexthop"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf metric { + type uint32; + description + "Metrics"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf load-metric { + type uint32; + description + "Load Metrics"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf flags64 { + type uint64; + description + "Flags extended to 64 bits"; + } + leaf flags { + type uint16; + description + "Flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf private-flags { + type uint16; + description + "Private Flags, used internally by RIB"; + } + leaf minimum-recurse-length { + type uint8; + description + "Minimum netmask length of recursive resolving + route"; + } + leaf looped { + type boolean; + description + "Looping path"; + } + leaf next-hop-table-id { + type uint32; + description + "The table to which the next hop belongs"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-vrf-name { + type string; + description + "VRF Name of the nh table"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-table-name { + type string; + description + "NH table name"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-afi { + type uint32; + description + "NH afi"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-safi { + type uint32; + description + "NH safi"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf route-label { + type uint32; + description + "Label associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pathid { + type uint32; + description + "Path id of this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf backup-pathid { + type uint32; + description + "Path id of this path's backup"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf ref-cnt-of-backup { + type uint32; + description + "For backup paths, the number of active paths + protected by the backup path"; + } + leaf number-of-extended-communities { + type uint32; + description + "Number of extended communities associated with + this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf mvpn-present { + type boolean; + description + "MVPN attribute present"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf path-rt-present { + type boolean; + description + "Path RT present"; + } + leaf vrf-import-rt-present { + type boolean; + description + "VRFIMPORTRTPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf source-asrt-present { + type boolean; + description + "SOURCEASRTPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf source-rd-present { + type boolean; + description + "SOURCERDPresent"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf segmented-nexthop-present { + type boolean; + description + "Segmented NH attributes present for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf number-of-nnh { + type uint32; + description + "Number of Next Next Hops"; + } + leaf next-hop-id { + type uint32; + description + "NHID associated with this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf next-hop-id-refcount { + type uint32; + description + "NHID references"; + } + leaf ospf-area-id { + type string; + description + "OSPF area associated with the path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf has-labelstk { + type boolean; + description + "Path has a label stack"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf num-labels { + type uint8; + description + "Number of labels in stack"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf binding-label { + type uint32; + description + "binding Label for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf nhid-feid { + type uint64; + description + "Fib nhid encap id"; + } + leaf mpls-feid { + type uint64; + description + "Fib mpls encap id"; + } + leaf has-vxlan-network-id { + type boolean; + description + "VXLAN Network Identifier exists for this path"; + } + leaf vxlan-network-id { + type uint32; + description + "VXLAN Network Identifier for this path"; + } + leaf has-xcid { + type boolean; + description + "L2 Cross Connect ID exists for this path"; + } + leaf xcid { + type uint32; + description + "L2 Cross Connect ID for this path"; + } + leaf has-span-diag-interface { + type boolean; + description + "SPAN Diagnostics Interface exists for this path"; + } + leaf span-diag-interface { + type xr:Interface-name; + description + "SPAN Diagnostics Interface for this path"; + } + leaf has-subscriber-parent-interface { + type boolean; + description + "Subscriber Parent Interface exists for this + path"; + } + leaf subscriber-parent-interface { + type xr:Interface-name; + description + "Subscriber Parent Interface for this path"; + } + leaf interface-index-present { + type boolean; + description + "Flag to indicate if interface index attribute + is present for this path"; + } + leaf interface-index-attribute { + type uint32; + description + "Interface Index attribute"; + } + leaf iid-present { + type boolean; + description + "Internal ID present"; + } + leaf iid { + type Ipv6-rib-edm-addr; + description + "Internal ID attribute"; + } + leaf has-l2-info { + type boolean; + description + "L2 Info present for this path"; + } + leaf has-path-grouping-info { + type boolean; + description + "Grouping Info present for this path"; + } + leaf has-ip-tunnel-info { + type boolean; + description + "IP Tunnel Info present for this path"; + } + leaf has-via-aft-id { + type boolean; + description + "Via AFT ID present for this path"; + } + leaf has-segment-list-id-info { + type boolean; + description + "Segment List ID Info present for this path"; + } + list remote-backup-addr { + max-elements "2"; + description + "Remote backup node address"; + leaf entry { + type Ipv6-rib-edm-addr; + description + "Remote backup node address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + list labelstk { + description + "Outgoing label stack for this path"; + leaf entry { + type uint32; + description + "Outgoing label stack for this path"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + list next-next-hop { + description + "List of Next Next Hops"; + uses RIB-EDM-NNH; + } + } + } + + grouping RIB-EDM-ROUTE-AFT-INFO { + description + "RIB route's AFT info"; + leaf aft-id { + type uint64; + description + "AFT ID for this route"; + } + leaf vrf-id { + type uint32; + description + "VRF ID for this route"; + } + leaf transaction-id { + type uint64; + description + "Transaction ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } + + grouping MGMT-SRV6-SID-FMT { + description + "SRv6 SID Format Info"; + leaf type { + type Mgmt-srv6-sid-fmt; + description + "Format type"; + } + leaf description { + type string; + description + "Format description"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping RIB-EDM-ROUTE-SRV6-INFO { + description + "RIB route's SRv6 related information"; + container srv6-endpoint-behavior { + description + "SRv6 Endpoint behavior/type"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container srv6-format { + description + "SRv6 Format"; + uses MGMT-SRV6-SID-FMT; + } + leaf is-srv6-endpoint { + type boolean; + description + "Route is an SRv6 Endpoint (local SID)"; + } + leaf is-srv6-locator { + type boolean; + description + "Route corresponds to an SRv6 remote locator"; + } + leaf srv6-locator-algo { + type uint8; + description + "SRv6 Algo corresponding to SRv6 remote locator"; + } + } + + grouping RIB-EDM-ALGO-LABEL-SET { + description + "Algorithm ID to Local Label information"; + leaf algorithm-id { + type uint8; + description + "Algorithm Identifier"; + } + leaf label { + type uint32; + description + "Local label"; + } + leaf metric { + type uint32; + description + "Route Metric associated with Algorithm + Identifier"; + } + } + + grouping IPV6-RIB-EDM-ROUTE { + description + "Information of a rib route head and rib proto + route"; + container srv6-info { + description + "SRv6 related information"; + uses RIB-EDM-ROUTE-SRV6-INFO; + } + container aft { + description + "Route AFT info"; + uses RIB-EDM-ROUTE-AFT-INFO; + } + container route-path { + description + "Path(s) of the route"; + uses IPV6-RIB-EDM-PATH; + } + leaf prefix { + type Ipv6-rib-edm-addr; + description + "Route prefix"; + } + leaf prefix-length-xr { + type uint8; + description + "Length of prefix"; + } + leaf route-version { + type uint32; + description + "Route version, incremented by one on each active + route change"; + } + leaf protocol-id { + type uint32; + description + "Protocol advertising the route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf protocol-name { + type string; + description + " Name of Protocol"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf instance { + type string; + description + "Instance name"; + } + leaf client-id { + type uint32; + description + "Client adding the route to RIB"; + } + leaf mirrored { + type boolean; + description + "Mirrored"; + } + leaf route-type { + type uint16; + description + "Type of route installed in RIB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf priority { + type uint8; + description + "Route priority"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf svd-type { + type uint8; + description + "SVD Type of route"; + } + leaf l2-route-type { + type uint8; + description + "Type of route associated with L2 Service"; + } + leaf flags { + type uint32; + description + "Route flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf extended-flags { + type uint64; + description + "Extended Route flags"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tag { + type uint32; + description + "Opaque proto specific info"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf distance { + type uint32; + description + "Distance of the route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf diversion-distance { + type uint32; + description + "Diversion distance of the route"; + } + leaf metric { + type uint32; + description + "Route metric"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf paths-count { + type uint32; + description + "Number of paths"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf attribute-identity { + type uint32; + description + "BGP Attribute ID"; + } + leaf traffic-index { + type uint8; + description + "BGP Traffic Index"; + } + leaf route-precedence { + type uint8; + description + "IP precedence for this route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf qos-group { + type uint8; + description + "Route qos group"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf flow-tag { + type uint8; + description + "Flow tag for this route"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf fwd-class { + type uint8; + description + "Forward Class"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf pic-count { + type uint8; + description + "Number of pic paths in this route"; + } + leaf active { + type boolean; + description + "Is the route active or backup"; + } + leaf diversion { + type boolean; + description + "Route has a diversion path"; + } + leaf diversion-proto-name { + type string; + description + "Diversion route protocol name"; + } + leaf route-age { + type uint32; + units "second"; + description + "Age of route (seconds)"; + } + leaf route-label { + type uint32; + description + "Local label of the route"; + } + leaf version { + type uint32; + description + "Route Version"; + } + leaf tbl-version { + type uint64; + description + "Table Version"; + } + leaf route-modify-time { + type uint64; + units "nanosecond"; + description + "Route modification time(nanoseconds)"; + } + leaf prefix-feid { + type uint64; + description + "Fib per-prefix encap id"; + } + leaf number-of-algorithm-labels { + type uint16; + description + "Number of Algorithm Labels associated with this + prefix"; + } + leaf no-fib-redist { + type boolean; + description + "Should the route be redistributed to FIB"; + } + leaf flexible-algorithm { + type uint8; + description + "Flexible Algorithm associated with route"; + } + leaf has-aft { + type boolean; + description + "Route AFT info is valid"; + } + list algorithm-label { + description + "List of Algorithm Labels associated with this + Prefix"; + uses RIB-EDM-ALGO-LABEL-SET; + } + } + + grouping RIB-EDM-NH-CLIENT { + description + "Information of a nexthop notification client"; + list rib-edm-nh-client { + description + "Next client"; + leaf id { + type uint32; + description + "Client id"; + } + leaf ref-count { + type uint32; + description + "The number NH reference this client"; + } + leaf nh-create-age { + type uint32; + description + "How long has client has been created"; + } + leaf nh-create-time { + type uint64; + description + "Client creation time"; + } + leaf nh-read-age { + type uint32; + description + "How long ago client read this notification"; + } + leaf nh-read-time { + type uint64; + description + "Client notification read time"; + } + leaf pack-mvpn { + type boolean; + description + "Pack MVPN"; + } + leaf pack-path-rt { + type boolean; + description + "Pack path RT"; + } + leaf pack-vrf-import-rt { + type boolean; + description + "Pack VRF import RT"; + } + leaf pack-source-as-rt { + type boolean; + description + "Pack source AS RT"; + } + leaf pack-source-rd { + type boolean; + description + "Pack source RD"; + } + leaf pack-mldp-root { + type boolean; + description + "Pack MLDP root"; + } + leaf pack-seg-nh { + type boolean; + description + "Pack seg NH"; + } + leaf notify-reregister { + type boolean; + description + "Notify Reregister"; + } + } + } + + grouping IPV6-RIB-EDM-NH-ADDR { + description + "Information of a registered nexthop notification + address"; + container clients { + description + "Client(s) of the address"; + uses RIB-EDM-NH-CLIENT; + } + container resolved-route { + description + "Route resolved this nexthop"; + uses IPV6-RIB-EDM-ROUTE; + } + leaf prefix { + type Ipv6-rib-edm-addr; + description + "Route prefix"; + } + leaf prefix-len { + type uint32; + description + "Length of prefix"; + } + leaf dest-addr { + type Ipv6-rib-edm-addr; + description + "Destination address"; + } + leaf dest-intf { + type uint32; + description + "Destination interface"; + } + leaf dest-tableid { + type uint32; + description + "Destination tableid"; + } + leaf dest-metric { + type uint32; + description + "Destination metric"; + } + leaf dest-vrf-name { + type string; + description + "VRF Name of the nh table"; + } + leaf damped { + type boolean; + description + "Nexthop being damped?"; + } + leaf exact-match-xr { + type boolean; + description + "Exact match"; + } + leaf allow-default-xr { + type boolean; + description + "Allow default flag"; + } + leaf recurse-xr { + type boolean; + description + "Allow recurse flag"; + } + leaf xtable { + type boolean; + description + "Cross table nexthop"; + } + leaf pack-sf-xr { + type boolean; + description + "Pack SFS paths for multicast"; + } + leaf pack-backup { + type boolean; + description + "Pack backup paths"; + } + leaf backup-route-xr { + type boolean; + description + "Backup route notifications"; + } + leaf best-metric-xr { + type boolean; + description + "Return lowest metric for dest. metric"; + } + leaf unres-nh-tree { + type boolean; + description + "Context about which tree the server should walk"; + } + leaf flags { + type uint16; + description + "nh_entry flags"; + } + leaf dest-path-count { + type uint32; + description + "Number of destination paths"; + } + leaf accrued-penalty { + type uint16; + description + "Damped accured penalty"; + } + leaf num-algo-label { + type uint16; + description + "Destination number of Algorithm Labels"; + } + leaf expiration-age { + type uint32; + description + "How soon the nexthop is undamped"; + } + leaf expiration-time { + type uint64; + description + "Time where the first is undamped"; + } + leaf min-damped-threshold { + type uint32; + description + "Minimum damped threshold"; + } + leaf max-damped-penalty { + type uint32; + description + "Maximum damped threshold"; + } + leaf decay-rate { + type uint32; + description + "Damped decay rate"; + } + leaf version { + type uint32; + description + "Event version"; + } + leaf last-event-age { + type uint32; + description + "How long since last event occured"; + } + leaf last-event-time { + type uint64; + description + "Time at which last event occured"; + } + list dest-path { + description + "Path(s) of the route"; + uses RIB-EDM-NH-PATH; + } + list algo-label-set { + description + "Destination list of Algorithm Labels"; + uses RIB-EDM-ALGO-LABEL-SET; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub2.yang new file mode 100644 index 000000000..cf7149250 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper-sub2.yang @@ -0,0 +1,726 @@ +submodule Cisco-IOS-XR-ip-rib-ipv6-oper-sub2 { + belongs-to Cisco-IOS-XR-ip-rib-ipv6-oper { + prefix Cisco-IOS-XR-ip-rib-ipv6-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-rib-ipv6-oper-sub1 { + revision-date 2022-11-03; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-rib-ipv6 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-03 { + description + "Update IID Context for Segment List Identifier + 2022-09-13 + Add IID Context for Segment List Identifier + 2022-08-29 + Segment List Identifier added to a routes path + 2022-08-18 + Updated IID entry infromation to display IID as an IPv6 prefix + 2022-07-04 + Add IID Context for L2VPN IP Tunnels. Add Remote Tunnel Endpoint ID: RTEP ID, to resolve via tunnel. + 2022-06-03 + Static Sid State has algo field + 2022-05-31 + SRv6 Adjacency Contexts updated to use interface name + 2022-05-11 + has-aft added to route + 2022-04-26 + Clear AFT stats added + 2022-02-18 + Add client id, proto id, flags, backup number and distance to opaque bag Added table-id for opaque redistribution history + 2022-02-03 + Add SID resource usage information + 2022-01-11 + Add IID Context for AFT NextHop Groups + 2021-12-16 + Updated aft route and path attributes with vrf names + 2021-12-16 + Added VNI to ip tunnel info path attribute + 2021-12-14 + Updated aft route and path attributes + 2021-11-26 + Add IID Local to known Protocol Types, and sync with existing types in ipv4-oper + 2021-11-25 + Added is delayed delete flag on routes local SID list + 2021-11-17 + Add AFT id path and route attributes + 2021-10-29 + Added Opaque redistribution history + 2021-09-24 + New path vpn attribute for ip tunnels"; + semver:module-version "4.2.0"; + } + revision 2021-08-08 { + description + "SRv6 uSID context extended with uDX + 2021-07-20 + Flexible Algorithm attribute added to IP Route + 2021-06-24 + IID context extended with EVPN ELAN support SRv6 SID context extended with EVPN ELAN support uDT2U uDT2M EndDT2U EndDT2M L2 Path attribute extended with support for Split Horizong Group and BridgeID + 2021-03-31 + SRv6 SID Manager include per operation mode block parameters + 2021-03-25 + Add FIB redistribution flag to route bag + 2021-03-14 + SRv6 SID context extensions"; + semver:module-version "4.1.0"; + } + revision 2020-12-11 { + description + "Add forwarding sidlist + 2020-09-30 + Nexthop notification model now includes client specific registration flags + 2020-09-24 + Changes to SRv6 uSID platform capabilities + 2020-07-24 + SRv6 uSID context extended for evpn"; + semver:module-version "4.0.0"; + } + revision 2020-05-29 { + description + "Updated the max number of elements for opaque stats to 16 Extended rib edm path to include IID info and SID Format type + 2020-04-30 + Updated sidmgr oper to add contexts for F1 SID: DT6, DX6 + 2020-04-02 + Increased path_num size in redist hist route bag to 16 bits + 2019-12-05 + Extended SidMgr info to include uSID platform capabilities + 2019-11-21 + Extended SidMgr info to include flag string and anycast flag"; + semver:module-version "3.0.0"; + } + revision 2019-11-05 { + description + "Extended Nexthop and NexhopPrefix paths to include all by NH flags + 2019-10-22 + Extended rib_edm_client_stats_summary to include client stats on bcdl ugs Extended rib_edm_local_label to support AIB prefer Added EDM support for large SID stack Extended rib_edm_path to include recursion length field Extended rib_edm_path to include metric field Extended iidmgr_summary to include oor summary info Extended rib_edm_route to include l3 route type field"; + semver:module-version "2.0.0"; + } + revision 2019-06-28 { + description + "Fixed NexthopPrefix path"; + semver:module-version "1.0.0"; + } + revision 2019-06-15 { + description + "Fixed IPv6 Address format for Nexthops"; + } + revision 2019-06-08 { + description + "Added RPF list and NHIDs"; + } + revision 2019-05-30 { + description + "Fixed adverts and backup paths"; + } + revision 2019-05-17 { + description + "Added Nexthops Summary, Nexthop Route, Longer Routes, Redist Clients and Client Stasts"; + } + revision 2019-04-25 { + description + "Updated yang schema to extend Native Yang model for the data exposed via CLI"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-02-21 { + description + "Yang evaluator: updates to schema descriptions and ranges"; + } + revision 2019-01-11 { + description + "Route lookup key is limited to Prefix and Prefix Length"; + } + revision 2018-11-20 { + description + "Add keys for route lookup via restconf."; + } + revision 2018-11-06 { + description + "Support Algorithm Label List per route"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Internal-id-state { + type enumeration { + enum "unknown" { + description + "InternalID state is Unknown"; + } + enum "in-use" { + description + "InternalID state is In_Use"; + } + enum "stale" { + description + "InternalID state is Stale"; + } + } + description + "InternalID state"; + } + + typedef Internal-id-context { + type enumeration { + enum "none" { + value 0; + description + "No InternalID context"; + } + enum "evpn-vpws" { + value 1; + description + "InternalID context type for EVPN-VPWS"; + } + enum "large-sid-stack" { + value 2; + description + "InternalID context type for Large SID Stack"; + } + enum "evpn-elan" { + value 3; + description + "InternalID context type for EVPN-ELAN"; + } + enum "aft-nhg" { + value 4; + description + "InternalID context type for AFT-NHG"; + } + enum "l2vpn-ip-tunnel" { + value 5; + description + "InternalID context type for L2VPN IP Tunnels"; + } + enum "sl-id" { + value 6; + description + "InternalID context type for Segment List ID"; + } + enum "invalid" { + value 255; + description + "Invalid InternalID context type"; + } + } + description + "InternalID context type"; + } + + typedef Internal-id-out-of-resource-state { + type enumeration { + enum "oor-green" { + description + "Resources Available"; + } + enum "oor-yellow" { + description + "Resources Warning. Minor threshold exceeded"; + } + enum "oor-red" { + description + "Out of Resources. Major threshold exceeded"; + } + } + description + "InternalID Out of Resource State"; + } + + grouping IIDMGR-TIMESTAMP { + description + "iidmgr generic timestamp"; + leaf time-in-nano-seconds { + type uint64; + units "nanosecond"; + description + "Time in nano seconds elapsed since 1970-01-01 00 + :00:00 +0000 (UTC)"; + } + leaf age-in-nano-seconds { + type uint64; + units "nanosecond"; + description + "Age in nano seconds relative to current system + time"; + } + } + + grouping IID-OWNER { + description + "InternalID Owner"; + leaf owner { + type string; + description + "Owner"; + } + } + + grouping MGMT-RIB-IID-SL-ID-CTX { + description + "InternalID context for Segment List ID"; + leaf policy-id { + type uint16; + description + "Policy ID"; + } + leaf cp-preference { + type uint32; + description + "Candidate Path preference"; + } + leaf sl-name { + type string; + description + "Segment List Name"; + } + } + + grouping MGMT-RIB-IID-L2VPN-IP-TUNNEL-CTX { + description + "InternalID context for L2VPN_IP_TUNNEL"; + leaf evi { + type uint32; + description + "EVPN Instance"; + } + leaf encapsulation { + type uint32; + description + "EVPN Encapsulation Type Differentiator"; + } + leaf nexthop-address { + type inet:ipv6-address; + description + "NH Address as V6 native or V6-encoded-v4"; + } + leaf eth-tag { + type uint32; + description + "Ethernet Tag"; + } + leaf opaque-id { + type uint32; + description + "Additional differentiator - opaque to IIDmgr"; + } + leaf esi { + type yang:hex-string; + description + "Ethernet Segment Identifier"; + } + leaf type { + type uint32; + description + "L2 route type"; + } + } + + grouping MGMT-RIB-IID-AFT-NHG-CTX { + description + "InternalID context for AFT_NHG"; + leaf vrf-id { + type uint32; + description + "VRF id"; + } + leaf aft-id { + type uint64; + description + "AFT id"; + } + } + + grouping IID-EDM-SRV6-SID { + description + "Information for Large SID stack context used in + IID"; + leaf sid { + type inet:ipv6-address; + description + "Segment Identifier Attribute"; + } + } + + grouping MGMT-RIB-IID-LSS-CTX { + description + "InternalID context for Large SID Stack"; + leaf path-interface-name { + type xr:Interface-name; + description + "Path NH interface"; + } + leaf nexthop-prefix { + type inet:ipv6-address; + description + "Path NH Prefix"; + } + leaf headend-oper-type { + type Mgmt-srv6-headend; + description + "SRv6 Headend Oper type"; + } + leaf num-sids { + type uint32; + description + "Number of SID's"; + } + leaf srv6sid-format { + type Mgmt-srv6-sid-fmt; + description + "Format of the SRv6 InternalID uSID"; + } + list sid { + description + "SID list"; + uses IID-EDM-SRV6-SID; + } + } + + grouping MGMT-RIB-IID-EVPN-ELAN-CTX { + description + "InternalID context for EVPN_ELAN"; + leaf evi { + type uint32; + description + "EVPN Instance"; + } + leaf encapsulation { + type uint32; + description + "EVPN Encapsulation Type Differentiator"; + } + leaf nexthop-address { + type inet:ipv6-address; + description + "NH Address as V6 native or V6-encoded-v4"; + } + leaf eth-tag { + type uint32; + description + "Ethernet Tag"; + } + leaf opaque-id { + type uint32; + description + "Additional differentiator - opaque to IIDmgr"; + } + leaf esi { + type yang:hex-string; + description + "Ethernet Segment Identifier"; + } + leaf type { + type uint32; + description + "L2 route type"; + } + } + + grouping MGMT-RIB-IID-EVPN-VPWS-CTX { + description + "InternalID context for EVPN_VPWS"; + leaf evi { + type uint32; + description + "EVPN Instance"; + } + leaf eth-tag { + type uint32; + description + "Ethernet Tag"; + } + leaf type { + type uint32; + description + "Type"; + } + } + + grouping MGMT-RIB-IID-CTX-KEY { + description + "MGMT RIB IID CTX KEY"; + container evpn-vpws { + when "../internal-id-context-type = 'evpn-vpws'" { + description + "../InternalIDContextType = 'EVPN_VPWS'"; + } + description + "InternalID context for EVPN_VPWS"; + uses MGMT-RIB-IID-EVPN-VPWS-CTX; + } + container evpn-elan { + when "../internal-id-context-type = 'evpn-elan'" { + description + "../InternalIDContextType = 'EVPN_ELAN'"; + } + description + "InternalID context for EVPN_ELAN"; + uses MGMT-RIB-IID-EVPN-ELAN-CTX; + } + container large-sid-stack { + when "../internal-id-context-type = 'large-sid-stack'" { + description + "../InternalIDContextType = 'LargeSIDStack'"; + } + description + "InternalID context for LSS"; + uses MGMT-RIB-IID-LSS-CTX; + } + container aft-nhg { + when "../internal-id-context-type = 'aft-nhg'" { + description + "../InternalIDContextType = 'AFT_NHG'"; + } + description + "InternalID context for AFT_NHG"; + uses MGMT-RIB-IID-AFT-NHG-CTX; + } + container l2vpn-ip-tunnel { + when "../internal-id-context-type = 'l2vpn-ip-tunnel'" { + description + "../InternalIDContextType = 'L2VPN_IP_TUNNEL'"; + } + description + "InternalID context for L2VPN IP Tunnels"; + uses MGMT-RIB-IID-L2VPN-IP-TUNNEL-CTX; + } + container segment-list-id { + when "../internal-id-context-type = 'sl-id'" { + description + "../InternalIDContextType = 'SL_ID'"; + } + description + "InternalID context for Segment List ID"; + uses MGMT-RIB-IID-SL-ID-CTX; + } + leaf internal-id-context-type { + type Internal-id-context; + description + "InternalIDContextType"; + } + } + + grouping MGMT-IID-CTX { + description + "InternalID context"; + container key { + description + "InternalID Context"; + uses MGMT-RIB-IID-CTX-KEY; + } + } + + grouping IIDMGR-IID-INFO { + description + "InternalID info"; + container internal-id-context { + description + "InternalID Context"; + uses MGMT-IID-CTX; + } + container create-timestamp { + description + "Creation timestamp"; + uses IIDMGR-TIMESTAMP; + } + leaf iid { + type inet:ipv6-address; + description + "InternalID Prefix representation"; + } + leaf internal-id { + type uint32; + description + "InternalID Value"; + } + leaf internal-id-table-id { + type uint32; + description + "InternalID Table ID"; + } + leaf internal-id-prod-id { + type uint8; + description + "InternalID Producer ID"; + } + leaf state { + type Internal-id-state; + description + "InternalID State"; + } + leaf has-forwarding { + type boolean; + description + "Rewrite done or not"; + } + leaf iid-usid-block { + type inet:ipv6-address; + description + "Block where InternalID uSID is allocated"; + } + list owner { + description + "InternalID Owner"; + uses IID-OWNER; + } + } + + grouping IIDMGR-PLATFORM-CAPABILITY { + description + "Platform Capabilities for InternalID manager"; + leaf internal-id-holdtime-mins { + type uint32; + units "minute"; + description + "Default InternalID Holdtime in mins"; + } + } + + grouping IIDMGR-PARAMS { + description + "InternalID Manager runtime and configured + parameters"; + leaf is-internal-id-holdtime-configured { + type boolean; + description + "Is InternalID Holdtime configured?"; + } + leaf internal-id-holdtime-mins-configured { + type uint32; + units "minute"; + description + "Configured InternalID Holdtime in mins"; + } + } + + grouping IID-OOR-SUMMARY { + description + "InternalID Manager Out of Resource Summary"; + leaf out-of-resources-state { + type Internal-id-out-of-resource-state; + description + "Out of Resources State for InternalIDs"; + } + leaf oor-yellow-free-internal-id-threshold { + type uint32; + description + "Threshold for Number of Free InternalID below + which OOR Yellow State is reached"; + } + leaf oor-green-free-internal-id-threshold { + type uint32; + description + "Threshold for Number of Free InternalID above + which OOR Green State is restored"; + } + leaf oor-green-count { + type uint32; + description + "Number of times Resources Warning or Out of + Resources state has been cleared"; + } + leaf oor-yellow-count { + type uint32; + description + "Number of times system went into Resources + Warning state"; + } + leaf oor-red-count { + type uint32; + description + "Number of times system went into Out of + Resources state"; + } + } + + grouping IIDMGR-SUMMARY { + description + "InternalID Manager summary"; + container internal-ids-out-of-resource-summary { + description + "InternalIDs Out of Resource info"; + uses IID-OOR-SUMMARY; + } + leaf prod-id { + type uint8; + description + "Producer ID of InternalIDs"; + } + leaf prod-internal-id-count { + type uint32; + description + "Active InternalIDs of Producer"; + } + leaf prod-stale-internal-id-count { + type uint32; + description + "Stale InternalIDs of Producer"; + } + leaf prod-checkpoint-object-count { + type uint32; + description + "Checkpoint object count of Producer"; + } + } + + grouping IIDMGR-INFO { + description + "InternalID manager info"; + container internal-id-mgr-summary { + description + "InternalID Manager summary"; + uses IIDMGR-SUMMARY; + } + container internal-id-mgr-params { + description + "InternalID Manager runtime and configured + parameters"; + uses IIDMGR-PARAMS; + } + container platform-capabilities { + description + "Platform Capabilities"; + uses IIDMGR-PLATFORM-CAPABILITY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper.yang new file mode 100644 index 000000000..dcf29f324 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rib-ipv6-oper.yang @@ -0,0 +1,1498 @@ +module Cisco-IOS-XR-ip-rib-ipv6-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rib-ipv6-oper"; + prefix ip-rib-ipv6-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-rib-ipv6-oper-sub2 { + revision-date 2022-11-03; + } + include Cisco-IOS-XR-ip-rib-ipv6-oper-sub1 { + revision-date 2022-11-03; + } + + 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 ip-rib-ipv6 package operational data. + + This module contains definitions + for the following management objects: + ipv6-rib: RIB operational data + ipv6-rib-stdby: RIB standby node IPv6 operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-03 { + description + "Update IID Context for Segment List Identifier + 2022-09-13 + Add IID Context for Segment List Identifier + 2022-08-29 + Segment List Identifier added to a routes path + 2022-08-18 + Updated IID entry infromation to display IID as an IPv6 prefix + 2022-07-04 + Add IID Context for L2VPN IP Tunnels. Add Remote Tunnel Endpoint ID: RTEP ID, to resolve via tunnel. + 2022-06-03 + Static Sid State has algo field + 2022-05-31 + SRv6 Adjacency Contexts updated to use interface name + 2022-05-11 + has-aft added to route + 2022-04-26 + Clear AFT stats added + 2022-02-18 + Add client id, proto id, flags, backup number and distance to opaque bag Added table-id for opaque redistribution history + 2022-02-03 + Add SID resource usage information + 2022-01-11 + Add IID Context for AFT NextHop Groups + 2021-12-16 + Updated aft route and path attributes with vrf names + 2021-12-16 + Added VNI to ip tunnel info path attribute + 2021-12-14 + Updated aft route and path attributes + 2021-11-26 + Add IID Local to known Protocol Types, and sync with existing types in ipv4-oper + 2021-11-25 + Added is delayed delete flag on routes local SID list + 2021-11-17 + Add AFT id path and route attributes + 2021-10-29 + Added Opaque redistribution history + 2021-09-24 + New path vpn attribute for ip tunnels"; + semver:module-version "4.2.0"; + } + revision 2021-08-08 { + description + "SRv6 uSID context extended with uDX + 2021-07-20 + Flexible Algorithm attribute added to IP Route + 2021-06-24 + IID context extended with EVPN ELAN support SRv6 SID context extended with EVPN ELAN support uDT2U uDT2M EndDT2U EndDT2M L2 Path attribute extended with support for Split Horizong Group and BridgeID + 2021-03-31 + SRv6 SID Manager include per operation mode block parameters + 2021-03-25 + Add FIB redistribution flag to route bag + 2021-03-14 + SRv6 SID context extensions"; + semver:module-version "4.1.0"; + } + revision 2020-12-11 { + description + "Add forwarding sidlist + 2020-09-30 + Nexthop notification model now includes client specific registration flags + 2020-09-24 + Changes to SRv6 uSID platform capabilities + 2020-07-24 + SRv6 uSID context extended for evpn"; + semver:module-version "4.0.0"; + } + revision 2020-05-29 { + description + "Updated the max number of elements for opaque stats to 16 Extended rib edm path to include IID info and SID Format type + 2020-04-30 + Updated sidmgr oper to add contexts for F1 SID: DT6, DX6 + 2020-04-02 + Increased path_num size in redist hist route bag to 16 bits + 2019-12-05 + Extended SidMgr info to include uSID platform capabilities + 2019-11-21 + Extended SidMgr info to include flag string and anycast flag"; + semver:module-version "3.0.0"; + } + revision 2019-11-05 { + description + "Extended Nexthop and NexhopPrefix paths to include all by NH flags + 2019-10-22 + Extended rib_edm_client_stats_summary to include client stats on bcdl ugs Extended rib_edm_local_label to support AIB prefer Added EDM support for large SID stack Extended rib_edm_path to include recursion length field Extended rib_edm_path to include metric field Extended iidmgr_summary to include oor summary info Extended rib_edm_route to include l3 route type field"; + semver:module-version "2.0.0"; + } + revision 2019-06-28 { + description + "Fixed NexthopPrefix path"; + semver:module-version "1.0.0"; + } + revision 2019-06-15 { + description + "Fixed IPv6 Address format for Nexthops"; + } + revision 2019-06-08 { + description + "Added RPF list and NHIDs"; + } + revision 2019-05-30 { + description + "Fixed adverts and backup paths"; + } + revision 2019-05-17 { + description + "Added Nexthops Summary, Nexthop Route, Longer Routes, Redist Clients and Client Stasts"; + } + revision 2019-04-25 { + description + "Updated yang schema to extend Native Yang model for the data exposed via CLI"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-02-21 { + description + "Yang evaluator: updates to schema descriptions and ranges"; + } + revision 2019-01-11 { + description + "Route lookup key is limited to Prefix and Prefix Length"; + } + revision 2018-11-20 { + description + "Add keys for route lookup via restconf."; + } + revision 2018-11-06 { + description + "Support Algorithm Label List per route"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nhid-entry-count-range-v6 { + type uint32 { + range "0..4294967295"; + } + description + "Nhid entry count range v6"; + } + + typedef Nhid-hist-count-range-v6 { + type uint32 { + range "0..4294967295"; + } + description + "Nhid hist count range v6"; + } + + typedef Rpf-head-count-range-v6 { + type uint32 { + range "0..4294967295"; + } + description + "Rpf head count range v6"; + } + + typedef Table-id-range { + type uint32 { + range "0..4294967295"; + } + description + "Table id range"; + } + + grouping IID-MGR-INFO { + description + "Common node of iid-mgr-active, iid-mgr-standby"; + container iid-mgr-info { + description + "IID Manager information"; + uses IIDMGR-INFO; + } + } + + grouping ALL-IID-TABLE { + description + "Common node of iid-mgr-active, iid-mgr-standby"; + container all-iids { + description + "Operational container for all (Active and Stale) + IIDs"; + list all-iid { + key "iid-prefix"; + description + "Operational data for a given IID"; + leaf iid-prefix { + type inet:ipv6-address-no-zone; + description + "IID Value as IPv6 prefix"; + } + uses IIDMGR-IID-INFO; + } + } + } + + grouping RIB-NH-ID-HISTORY-TABLE { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-nh-id-histories { + description + "nhids history"; + list rib-nh-id-history { + key "nh-idi-hist-count"; + description + "NH Id history count"; + leaf nh-idi-hist-count { + type Nhid-hist-count-range-v6; + description + "NH Id hist count"; + } + uses IPV6-RIB-EDM-NHID-HIST-OBJ; + } + } + } + + grouping VRF-TABLE { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "Specific VRF"; + container afs { + description + "Address Family (AF) table"; + list af { + key "af-name"; + description + "Specific AF information"; + container safs { + description + "Subsequent Address Family (SAF) table"; + list saf { + key "saf-name"; + description + "Specific SAF information"; + container ip-rib-route-table-names { + description + "Global container of routes"; + list ip-rib-route-table-name { + key "route-table-name"; + description + "IP RIB Route table name for a topology"; + container destination-kw { + description + "Destination KW"; + container dest-q-routes { + description + "Quarantine"; + list dest-q-route { + key "address prefix-length"; + description + "Route information of a specific Backup + Address "; + leaf address { + type inet:ipv6-address-no-zone; + description + "Quarantined network address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix length of the quarantined + network address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + container dest-backup-kw { + description + "Backup"; + container dest-backup-prefixes { + description + "Backup adresses prefix table"; + list dest-backup-prefix { + key "address prefix-length"; + description + "Route information of a specific + Backup Address "; + container dest-backup-routes { + description + "Backup adresses route table"; + list dest-backup-route { + key "protoid"; + description + "Route information of a specific + Backup Address and Client "; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + leaf address { + type inet:ipv6-address-no-zone; + description + "Backup network address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix length of the backup network + address"; + } + } + } + } + container dest-best-routes { + description + "Best Local"; + list dest-best-route { + key "address"; + description + "Best local route information for a + specific Address "; + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + container dest-next-hop-routes { + description + "Resolving next hop"; + list dest-next-hop-route { + key "address"; + description + "Nexthop information for a specific + address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + } + container adverts-list { + description + "Route advertiser information "; + container advert-prefixes { + description + "Route advertiser prefix table"; + list advert-prefix { + key "address prefix-length"; + description + "Route advertiser information of a + specific Network Address "; + container adverts { + description + "Route advertiser table"; + list advert { + key "protoid"; + description + "Route advertiser information of a + specific Network Address and Client"; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV6-RIB-EDM-ADVERT; + } + } + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address "; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix length of the network address"; + } + } + } + } + container deleted-routes { + description + "Deleted"; + list deleted-route { + key "address prefix-length"; + description + "Route information for a specific + deleted address "; + leaf address { + type inet:ipv6-address-no-zone; + description + "Deleted network address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix length of the deleted network + address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + container longer-route-prefixes { + description + "Longer routes prefix table"; + list longer-route-prefix { + description + "Net/mask to match longer routes"; + container longer-route-last-prefixes { + description + "Longer route last prefix table"; + list longer-route-last-prefix { + description + "Information of all matching longer + routes for a prefix/mask under a + given table"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix Length"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix Length"; + } + } + } + container protocol { + description + "Contains the classification of routes by + protocol"; + container srv6-local { + description + "SRv6-Local Protocol"; + uses NON-AS; + } + container dagr { + description + "DAGR Protocol(Direct-Attached Gateway + Redundancy) Protocol"; + uses NON-AS; + } + container rip { + description + "RIP Protocol"; + uses NON-AS; + } + container local { + description + "Local Protocol"; + container lspv { + description + "LSPV(Label Switched Path Verification) + protocol"; + uses INFORMATION; + uses PROTOCOL-ROUTE-TABLE; + } + uses NON-AS; + } + container bgp { + description + "BGP Protocol"; + uses AS; + } + container mobile { + description + "Mobile Protocol"; + uses NON-AS; + } + container eigrp { + description + "EIGRP Protocol"; + uses AS; + } + container rpl { + description + "RPL Protocol"; + uses AS; + } + container application { + description + "Application Protocol"; + uses NON-AS; + } + container static { + description + "Static Protocol"; + uses NON-AS; + } + container te-client { + description + "TEClient protocol"; + uses NON-AS; + } + container subscriber { + description + "Subscriber Protocol"; + uses NON-AS; + } + container ospf { + description + "OSPF Protocol"; + uses AS; + } + container connected { + description + "Connected Protocol"; + container l2vpn { + description + "L2VPN"; + uses INFORMATION; + uses PROTOCOL-ROUTE-TABLE; + } + uses NON-AS; + } + container iid-local { + description + "Internal ID Local Protocol"; + uses NON-AS; + } + container isis { + description + "ISIS Protocol"; + uses AS; + } + } + container routes { + description + "Route information "; + list route { + key "address prefix-length"; + description + "Route information of a specific Network + Address "; + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address "; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix Length length of the network + address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + container opaques { + description + "Opaque information "; + list opaque { + description + "Opaque item "; + leaf opaque-client-id { + type uint32 { + range "0..2501"; + } + description + "Opaque Client ID"; + } + leaf opaque-proto-id { + type uint32 { + range "0..96"; + } + description + "Opaque Proto ID"; + } + leaf opaque-key-type { + type uint32 { + range "0..22"; + } + description + "The type of the opaque key installed + in the RIB table"; + } + leaf opaque-key-size { + type uint32 { + range "0..4294967295"; + } + description + "The size of the opaque key installed + in the RIB table"; + } + leaf opaque-data-size { + type uint32 { + range "0..4294967295"; + } + description + "The size of the opaque data installed + in the RIB table"; + } + leaf opaque-string { + type xr:Cisco-ios-xr-string; + description + "The opaque data installed in the RIB + table"; + } + uses IPV6-RIB-EDM-OPAQUE-OBJ; + } + } + container q-routes { + description + "Quarantine"; + list q-route { + key "address prefix-length"; + description + "Route information for a specific + quarantined address "; + leaf address { + type inet:ipv6-address-no-zone; + description + "Quarantined network address "; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix length of the quarantined + network address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + container backup-routes { + description + "Backup route information for the given + table"; + list backup-route { + key "address prefix-length protoid"; + description + "Route information for a specific backup + address "; + leaf address { + type inet:ipv6-address-no-zone; + description + "Backup network address "; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix length of the backup network + address"; + } + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + container nexthops { + description + "Nexthop notification registerations + under a given table"; + list nexthop { + description + "List the nexthop notification + registeration under a given table"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Nexthop network address "; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix length of the nexthop network + address"; + } + leaf unresolved-nh-tree { + type boolean; + description + "Unresolved Nexthop Tree"; + } + leaf exact-match { + type boolean; + description + "Exact match"; + } + leaf allow-default { + type boolean; + description + "Allow Default"; + } + leaf recurse { + type boolean; + description + "Recurse"; + } + leaf cross-table { + type boolean; + description + "Cross table Nexthop"; + } + leaf pack-sfs { + type boolean; + description + "Pack SFS paths for Multicast"; + } + leaf pack-backup-paths { + type boolean; + description + "Pack backup paths"; + } + leaf backup-route { + type boolean; + description + "Backup route notifications"; + } + leaf best-metric { + type boolean; + description + "Return lowest metric"; + } + uses IPV6-RIB-EDM-NH-ADDR; + } + } + leaf route-table-name { + type xr:Cisco-ios-xr-string; + description + "Name of the route table "; + } + } + } + leaf saf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the SAF"; + } + } + } + leaf af-name { + type xr:Cisco-ios-xr-string; + description + "Name of the AF - 'IPv6'"; + } + } + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + } + } + } + + grouping RIB-STATS { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-stats { + description + "Statistics summary"; + container rib-stats-summary { + description + "Summary"; + uses IPV6-RIB-EDM-STATS-SUMMARY; + } + } + } + + grouping AS { + description + "Common node of bgp, ospf, isis, eigrp, rpl"; + list as { + key "as"; + description + "Autonomous System of protocol"; + leaf as { + type xr:Cisco-ios-xr-string; + description + "Autonomous system"; + } + uses INFORMATION; + uses PROTOCOL-ROUTE-TABLE; + } + } + + grouping RIB-RPF-LIST-TABLE { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-rpfs { + description + "Route prefix table"; + list rib-rpf { + key "table-id"; + description + "Table Id"; + container rib-rpf-list-summary-head-counts { + description + "rpf list table summary"; + list rib-rpf-list-summary-head-count { + key "rpf-head-count"; + description + "RPF Head count"; + leaf rpf-head-count { + type Rpf-head-count-range-v6; + description + "RPF Head count"; + } + uses IPV6-RIB-EDM-RPFLIST-OBJ; + } + } + container rib-rpf-list-routes { + description + "rpf list table route"; + list rib-rpf-list-route { + description + "Last route prefix and prefix length"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Route Address "; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix Length "; + } + uses IPV6-RIB-EDM-RPFLIST-OBJ; + } + } + leaf table-id { + type Table-id-range; + description + "Table ID"; + } + } + } + } + + grouping INFORMATION { + description + "Common node of as, non-as, l2vpn, lspv"; + container information { + description + "Protocol related Information"; + uses IPV6-RIB-EDM-PROTO; + } + } + + grouping RIB-TABLE { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-table-ids { + description + "RIB table"; + list rib-table-id { + key "tableid"; + description + "Specific Table"; + container rib-nexthop-prefixes { + description + "RIB table nexthop client table"; + list rib-nexthop-prefix { + description + "Nexthop prefix"; + container rib-nexthop-routes { + description + "Nexthop route table"; + list rib-nexthop-route { + description + "Route information for a specific + table/interface"; + leaf exact-match { + type boolean; + description + "Exact Match"; + } + leaf allow-default { + type boolean; + description + "Allow Default"; + } + leaf recurse { + type boolean; + description + "Recurse"; + } + leaf cross-table { + type boolean; + description + "Cross table nexthop"; + } + leaf pack-sfs { + type boolean; + description + "Pack SFS paths for Multicast"; + } + leaf pack-backup-paths { + type boolean; + description + "Pack backup paths"; + } + leaf backup-route { + type boolean; + description + "Backup route notifications"; + } + leaf best-metric { + type boolean; + description + "Return lowest metric"; + } + uses IPV6-RIB-EDM-NH-ADDR; + } + } + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix Length"; + } + leaf unresolved-nh-tree { + type boolean; + description + "Unresolved Nexthop Tree"; + } + } + } + container information { + description + "Table related Information"; + uses IPV6-RIB-EDM-TABLE; + } + container summary-protos { + description + "RIB table summary"; + list summary-proto { + key "protoid"; + description + "Route summary information for a specific + table/protocol "; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses RIB-EDM-PROTO-ROUTE-SUMM-DETAIL; + } + } + container nexthops-summary { + description + "Nexthops summary"; + uses IPV6-RIB-EDM-NH-STATS; + } + container rib-table-itf-hndls { + description + "RIB table interface"; + list rib-table-itf-hndl { + key "handle"; + description + "Interface handle"; + leaf handle { + type uint32 { + range "0..4294967295"; + } + description + "Itf Handle"; + } + list itf-route { + key "address"; + description + "Route information for a specific + table/interface "; + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + } + leaf tableid { + type xr:Hex-integer; + description + "Table ID"; + } + } + } + } + + grouping RIB-MAX-DEPTH { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-max-depth { + description + "Information of maximum recursion depth in RIB"; + uses IPV6-RIB-EDM-RECURSION-DEPTH-MAX; + } + } + + grouping RIB-IID-MGR { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-iid-mgr { + description + "RIB IID Operational Data"; + container iid-mgr-standby { + description + "Standby RIB IID operational data"; + uses IID-MGR-INFO; + uses IID-TABLE; + uses ALL-IID-TABLE; + } + container iid-mgr-active { + description + "Active RIB IID operational data"; + uses IID-MGR-INFO; + uses IID-TABLE; + uses ALL-IID-TABLE; + } + } + } + + grouping RIB-NH-ID-SUMMARY-TABLE { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-nh-id-summaries { + description + "NHIds table"; + list rib-nh-id-summary { + key "table-id"; + description + "Table Id"; + container rib-nh-ids { + description + "nhids summary"; + list rib-nh-id { + key "nh-id-entry-count"; + description + "NH Id"; + leaf nh-id-entry-count { + type Nhid-entry-count-range-v6; + description + "NH Id entry count"; + } + uses IPV6-RIB-EDM-NHID-OBJ; + } + } + leaf table-id { + type Table-id-range; + description + "Table Id"; + } + } + } + } + + grouping RIB-UPDATE-GROUP-TABLE { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-update-groups { + description + "RIB UpdateGroup table"; + list rib-update-group { + key "update-group-id"; + description + "UpdateGroup id"; + container rib-update-group-info { + description + "Information of specific updategroup"; + uses IPV6-RIB-EDM-UG; + } + leaf update-group-id { + type uint32; + description + "UpdateGroup Id"; + } + } + } + } + + grouping RIB-CLIENT-TABLE { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-clients { + description + "Client"; + list rib-client { + key "clientid"; + description + "Specific Client"; + container rib-client-stats { + description + "Statistics of table of a specific client"; + list rib-client-stat { + key "table-id"; + description + "Specific Table"; + container rib-client-stats-protos { + description + "Statistics of table of protocol of a + specific client"; + list rib-client-stats-proto { + key "proto-id"; + description + "Specific proto id"; + leaf proto-id { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV6-RIB-EDM-CLIENT-PROTO-STATS-SUMMARY; + } + } + leaf table-id { + type xr:Cisco-ios-xr-string; + description + "Table Id"; + } + } + } + container rib-client-redist-history-opaque { + description + "Opaque History information of the table + associated with a given redist under a + specific client"; + uses IPV6-RIB-EDM-CLIENT-REDIST-OPAQUE; + } + container rib-client-stats-redist-nexthops { + description + "Statistics of nexthop table distribution"; + list rib-client-stats-redist-nexthop { + key "table-id"; + description + "Specific Table"; + leaf table-id { + type Table-id-range; + description + "Table Id"; + } + uses IPV6-RIB-EDM-STATS-REDIST-NH; + } + } + container rib-client-stats-nexthops { + description + "Statistics of table of a specific client"; + list rib-client-stats-nexthop { + key "table-id"; + description + "Specific Table"; + leaf table-id { + type Table-id-range; + description + "Table Id"; + } + uses IPV6-RIB-EDM-STATS-NEXTHOP; + } + } + container rib-client-stats-client { + description + "Client statistics of a specific client"; + uses IPV6-RIB-EDM-CLIENT-STATS-SUMMARY; + } + container rib-client-stats-redists { + description + "Statistics of table distribution"; + list rib-client-stats-redist { + key "table-id"; + description + "Specific Table"; + container rib-client-stats-redist-protos { + description + "Protocol under a given table"; + list rib-client-stats-redist-proto { + key "proto-id"; + description + "Specific protocol"; + leaf proto-id { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV6-RIB-EDM-STATS-REDIST; + } + } + leaf table-id { + type Table-id-range; + description + "Table Id"; + } + } + } + container rib-client-redists { + description + "RIB client redistribution"; + list rib-client-redist { + key "table-id"; + description + "Id of RIB client redistribution Table"; + container rib-client-redist-info { + description + "Information for a specific redistribution + table under a given client"; + uses IPV6-RIB-EDM-CLIENT-REDIST-TABLE; + } + container rib-client-redist-protos { + description + "Client proto"; + list rib-client-redist-proto { + key "proto-id"; + description + "Protocols information for a specific client"; + leaf proto-id { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV6-RIB-EDM-CLIENT-REDIST-PROTO; + } + } + leaf table-id { + type xr:Cisco-ios-xr-string; + description + "Table Id"; + } + } + } + container rib-client-info { + description + "Information for a specific client"; + uses IPV6-RIB-EDM-CLIENT; + } + container rib-client-redist-stats { + description + "Redist statistics of a specific client"; + uses IPV6-RIB-EDM-STATS-REDIST; + } + container rib-client-redist-history { + description + "History information of the table associated + with a given redist under a specific client"; + uses IPV6-RIB-EDM-CLIENT-REDIST; + } + container rib-client-proto { + description + "Information of protocols of client"; + container rib-client-proto-info { + description + "Information of protocols of a specific client"; + uses IPV6-RIB-EDM-CLIENT-PROTO-INFO; + } + container rib-client-proto-table-ids { + description + "Client Protocol table"; + list rib-client-proto-table-id { + key "tableid"; + description + "Table ID for a given protocol under a given + client"; + container rib-client-proto-ids { + description + "Protocols list under a given table under a + given client"; + list rib-client-proto-id { + key "protoid"; + description + "Information of protocols under a given + table under a given client"; + leaf protoid { + type uint32 { + range "0..96"; + } + description + "Proto ID"; + } + uses IPV6-RIB-EDM-CLIENT-PROTO; + } + } + container rib-client-proto-table-info { + description + "Information of a specifc table under a + given protocol under a given client"; + uses IPV6-RIB-EDM-CLIENT-PROTO-TABLE-INFO; + } + leaf tableid { + type xr:Cisco-ios-xr-string; + description + "Table Id"; + } + } + } + } + leaf clientid { + type uint32 { + range "0..2501"; + } + description + "Client ID"; + } + } + } + } + + grouping NON-AS { + description + "Common node of local, srv6-local, iid-local, + connected, rip, static, subscriber, mobile, dagr, + application, te-client"; + container non-as { + description + "Non Autonomous System of protocol"; + uses INFORMATION; + uses PROTOCOL-ROUTE-TABLE; + } + } + + grouping PROTOCOL-ROUTE-TABLE { + description + "Common node of as, non-as, l2vpn, lspv"; + container protocol-routes { + description + "Protocol specific Route"; + list protocol-route { + key "address prefix-length"; + description + "Route information of a specific Network Address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix Length of the network address"; + } + uses IPV6-RIB-EDM-ROUTE; + } + } + } + + grouping IID-TABLE { + description + "Common node of iid-mgr-active, iid-mgr-standby"; + container iids { + description + "Container class for all active IIDs"; + list iid { + key "iid-prefix"; + description + "Operational container for a given IID"; + container iid-info { + description + "Operational data for a given IID"; + uses IIDMGR-IID-INFO; + } + leaf iid-prefix { + type inet:ipv6-address-no-zone; + description + "IID Value as IPv6 prefix"; + } + } + } + } + + grouping RIB-UPDATE-GROUP-PRUNED-NODES { + description + "Common node of ipv6-rib, ipv6-rib-stdby"; + container rib-update-group-pruned-nodes { + description + "Information of updategroup pruned nodes"; + container rib-update-group-pruned-nodes-info { + description + "Information of updategroup pruned nodes"; + uses IPV6-RIB-EDM-UG-PRUNED-NODES; + } + } + } + + container ipv6-rib { + config false; + description + "RIB operational data"; + uses RIB-TABLE; + uses RIB-MAX-DEPTH; + uses VRF-TABLE; + uses RIB-UPDATE-GROUP-TABLE; + uses RIB-NH-ID-HISTORY-TABLE; + uses RIB-CLIENT-TABLE; + uses RIB-IID-MGR; + uses RIB-RPF-LIST-TABLE; + uses RIB-STATS; + uses RIB-NH-ID-SUMMARY-TABLE; + uses RIB-UPDATE-GROUP-PRUNED-NODES; + } + container ipv6-rib-stdby { + config false; + description + "RIB standby node IPv6 operational data"; + uses RIB-TABLE; + uses RIB-MAX-DEPTH; + uses VRF-TABLE; + uses RIB-UPDATE-GROUP-TABLE; + uses RIB-NH-ID-HISTORY-TABLE; + uses RIB-CLIENT-TABLE; + uses RIB-IID-MGR; + uses RIB-RPF-LIST-TABLE; + uses RIB-STATS; + uses RIB-NH-ID-SUMMARY-TABLE; + uses RIB-UPDATE-GROUP-PRUNED-NODES; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-cfg.yang new file mode 100644 index 000000000..33a8c2228 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-cfg.yang @@ -0,0 +1,798 @@ +module Cisco-IOS-XR-ip-rip-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rip-cfg"; + prefix ip-rip-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ip-rip package configuration. + + This module contains definitions + for the following management objects: + rip: RIP configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rip-ext-community { + type enumeration { + enum "as" { + value 0; + description + "AS:nn format"; + } + enum "ipv4-address" { + value 1; + description + "IPV4Address:nn format"; + } + enum "four-byte-as" { + value 2; + description + "4-byte ASN format"; + } + } + description + "Rip ext community"; + } + + typedef Default-redist-route { + type enumeration { + enum "all" { + value 0; + description + "All routes"; + } + } + description + "Default redist route"; + } + + typedef Default-information-option { + type enumeration { + enum "always" { + value 0; + description + "Always"; + } + enum "policy" { + value 1; + description + "Use route-policy"; + } + } + description + "Default information option"; + } + + typedef Isis-redist-route { + type enumeration { + enum "level1" { + value 1; + description + "Level-1 routes only"; + } + enum "level2" { + value 2; + description + "Level-1 routes only"; + } + enum "level1-and2" { + value 3; + description + "Level-1 and level-2 routes"; + } + } + description + "Isis redist route"; + } + + typedef Bgp-redist-route { + type enumeration { + enum "all" { + value 0; + description + "All routes"; + } + enum "internal" { + value 512; + description + "Internal routes only"; + } + enum "external" { + value 1024; + description + "External routes only"; + } + enum "local" { + value 2048; + description + "Local routes only"; + } + } + description + "Bgp redist route"; + } + + typedef Rip-auth-mode { + type enumeration { + enum "text" { + value 2; + description + "Text mode"; + } + enum "md5" { + value 3; + description + "MD5 mode"; + } + } + description + "Rip auth mode"; + } + + grouping DISTANCE { + description + "Common node of default-vrf, vrf"; + leaf distance { + type uint32 { + range "0..255"; + } + default "120"; + description + "Administrative distance"; + } + } + + grouping VALIDATE-SOURCE-DISABLE { + description + "Common node of default-vrf, vrf"; + leaf validate-source-disable { + type empty; + description + "Disable validation of source address of routing + updates"; + } + } + + grouping AUTO-SUMMARY { + description + "Common node of default-vrf, vrf"; + leaf auto-summary { + type empty; + description + "Enable automatic network number summarization"; + } + } + + grouping TIMERS { + description + "Common node of default-vrf, vrf"; + container timers { + presence "Indicates a timers node is configured."; + description + "Various routing timers"; + leaf update-timer { + type uint32 { + range "5..50000"; + } + mandatory true; + description + "Interval between updates"; + } + leaf invalid-timer { + type uint32 { + range "15..200000"; + } + mandatory true; + description + "Invalid"; + } + leaf holddown-timer { + type uint32 { + range "15..200000"; + } + mandatory true; + description + "Holddown"; + } + leaf flush-timer { + type uint32 { + range "16..250000"; + } + mandatory true; + description + "Flush"; + } + } + } + + grouping REDISTRIBUTION { + description + "Common node of default-vrf, vrf"; + container redistribution { + description + "Redistribute information from another routing + protocol"; + container connected { + presence "enable connected"; + description + "Redistribute connected routes"; + leaf route-policy-name { + type string; + description + "Route Policy name"; + } + leaf route-type { + type Default-redist-route; + description + "Route type"; + } + } + container bgps { + description + "Redistribute BGP routes"; + list bgp { + key "asnxx asnyy"; + description + "Autonomous system number"; + leaf asnxx { + type uint32 { + range "0..65535"; + } + description + "Higher 16 bits of 4-byte BGP AS number"; + } + leaf asnyy { + type uint32 { + range "0..4294967295"; + } + description + "2-byte or 4-byte BGP AS number"; + } + leaf policy { + type string; + description + "Route Policy name"; + } + leaf type { + type Bgp-redist-route; + description + "Route type"; + } + } + } + container isises { + description + "Redistribute IS-IS routes"; + list isis { + key "isis-name"; + description + "Redistribute IS-IS routes"; + leaf isis-name { + type xr:Cisco-ios-xr-string; + description + "IS-IS instance name"; + } + leaf route-policy-name { + type string; + description + "Route Policy name"; + } + leaf route-type { + type Isis-redist-route; + description + "Route type"; + } + } + } + container eigrp-s { + description + "Redistribute EIGRP routes"; + list eigrp { + key "as"; + description + "Redistribute EIGRP routes"; + leaf as { + type uint32 { + range "1..65535"; + } + description + "Autonomous system number"; + } + leaf route-policy-name { + type string; + description + "Route Policy name"; + } + leaf route-type { + type Default-redist-route; + description + "Route type"; + } + } + } + container static { + presence "enable static"; + description + "Redistribute static routes"; + leaf route-policy-name { + type string; + description + "Route Policy name"; + } + leaf route-type { + type Default-redist-route; + description + "Route type"; + } + } + container ospfs { + description + "Redistribute OSPF routes"; + list ospf { + key "ospf-name"; + description + "Redistribute OSPF routes"; + leaf ospf-name { + type xr:Cisco-ios-xr-string; + description + "Process ID for the OSPF instance"; + } + leaf route-policy-name { + type string; + description + "Route Policy name"; + } + leaf internal { + type boolean; + description + "Internal routes"; + } + leaf external { + type boolean; + description + "External routes"; + } + leaf external-type { + type uint32 { + range "0..2"; + } + description + "External route type"; + } + leaf nssa-external { + type boolean; + description + "NSSA External routes"; + } + leaf nssa-external-type { + type uint32 { + range "0..2"; + } + description + "NSSA External route type"; + } + } + } + } + } + + grouping DEFAULT-INFORMATION { + description + "Common node of default-vrf, vrf"; + container default-information { + presence "Indicates a default-information node is configured."; + description + "Controls default information origination"; + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf option { + type Default-information-option; + mandatory true; + description + "Origination option"; + } + } + } + + grouping IP-DISTANCE-TABLE { + description + "Common node of default-vrf, vrf"; + container ip-distances { + description + "Table of IP specific administrative distances"; + list ip-distance { + key "address netmask"; + description + "IP specific administrative distance"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IP Source address"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "IP address mask"; + } + leaf distance { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Administrative distance"; + } + } + } + } + + grouping MAXIMUM-PATHS { + description + "Common node of default-vrf, vrf"; + leaf maximum-paths { + type uint32 { + range "1..128"; + } + default "4"; + description + "Maximum number of paths allowed per route"; + } + } + + grouping POLICY-IN { + description + "Common node of default-vrf, vrf"; + leaf policy-in { + type string; + description + "Route Policy for inbbound routing updates"; + } + } + + grouping POLICY-OUT { + description + "Common node of default-vrf, vrf"; + leaf policy-out { + type string; + description + "Route Policy for outbound routing updates"; + } + } + + grouping INTERFACE-TABLE { + description + "Common node of default-vrf, vrf"; + container interfaces { + description + "Table of RIP interfaces"; + list interface { + key "interface-name"; + description + "RIP interface name"; + container authentication { + presence "Indicates a authentication node is configured."; + description + "Authentication keychain and mode"; + leaf keychain { + type string; + mandatory true; + description + "Name of keychain"; + } + leaf mode { + type Rip-auth-mode; + mandatory true; + description + "Authentication mode"; + } + } + container site-of-origin { + description + "SOO community for prefixes learned over this + interface"; + leaf type { + type Rip-ext-community; + description + "Extended community type"; + } + leaf as-xx { + when "../type != 'as' and ../type != 'ipv4-address'" { + description + "../Type != AS and ../Type != IPV4Address"; + } + type uint32 { + range "0..65535"; + } + description + "AS Number for AS:nn format"; + } + leaf as-yy { + when "../type != 'ipv4-address'" { + description + "../Type != IPV4Address"; + } + type uint32 { + range "0..4294967295"; + } + description + "32 bit value for AS:nn format"; + } + leaf as-index { + when "../type != 'ipv4-address'" { + description + "../Type != IPV4Address"; + } + type uint32 { + range "0..4294967295"; + } + description + "AS Number Index"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IPV4 address for IPV4Address:nn format"; + } + leaf address-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type uint32 { + range "0..65535"; + } + description + "16bit value for IPV4Address:nn format"; + } + } + container receive-version { + description + "RIP versions supported for receiving + advertisements"; + leaf version1 { + type boolean; + description + "Support RIP version 1"; + } + leaf version2 { + type boolean; + default "true"; + description + "Support RIP version 2"; + } + } + container send-version { + description + "RIP versions supported for sending + advertisements"; + leaf version1 { + type boolean; + description + "Support RIP version 1"; + } + leaf version2 { + type boolean; + default "true"; + description + "Support RIP version 2"; + } + } + leaf broadcast-for-v2 { + type empty; + description + "Send RIP v2 output packets to broadcast + address"; + } + leaf poison-reverse { + type empty; + description + "Enable poison reverse"; + } + leaf passive { + type empty; + description + "Suppress routing updates on this interface"; + } + leaf enable { + type empty; + description + "Starts RIP interface configuration"; + } + leaf policy-out { + type string; + description + "Route Policy for outbound routing updates"; + } + leaf accept-metric-zero { + type empty; + description + "Accept RIP updates with metric 0"; + } + leaf policy-in { + type string; + description + "Route Policy for inbound routing updates"; + } + leaf split-horizon-disable { + type empty; + description + "Disable split horizon"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + + grouping BROADCAST-FOR-V2 { + description + "Common node of default-vrf, vrf"; + leaf broadcast-for-v2 { + type empty; + description + "Send RIP v2 output packets to broadcast address"; + } + } + + grouping NSF { + description + "Common node of default-vrf, vrf"; + leaf nsf { + type empty; + description + "Enable Cisco Non Stop Forwarding"; + } + } + + grouping NEIGHBOR-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbors { + description + "Configure RIP Neighbors"; + list neighbor { + key "neighbor-address"; + description + "Neighbor address"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + } + } + + grouping OUTPUT-DELAY { + description + "Common node of default-vrf, vrf"; + leaf output-delay { + type uint32 { + range "8..50"; + } + units "millisecond"; + description + "Inter-packet delay for RIP updates"; + } + } + + grouping DEFAULT-METRIC { + description + "Common node of default-vrf, vrf"; + leaf default-metric { + type uint32 { + range "0..16"; + } + description + "Default metric of redistributed routes"; + } + } + + container rip { + description + "RIP configuration"; + container default-vrf { + description + "RIP configuration for Default VRF"; + leaf enable { + type empty; + description + "Starts RIP configuration for Default VRF"; + } + uses BROADCAST-FOR-V2; + uses DISTANCE; + uses DEFAULT-INFORMATION; + uses DEFAULT-METRIC; + uses OUTPUT-DELAY; + uses AUTO-SUMMARY; + uses REDISTRIBUTION; + uses IP-DISTANCE-TABLE; + uses POLICY-OUT; + uses INTERFACE-TABLE; + uses NEIGHBOR-TABLE; + uses VALIDATE-SOURCE-DISABLE; + uses MAXIMUM-PATHS; + uses NSF; + uses POLICY-IN; + uses TIMERS; + } + container vrfs { + description + "VRF related RIP configuration"; + list vrf { + key "vrf-name"; + description + "RIP configuration for a particular VRF"; + leaf enable { + type empty; + description + "Starts RIP configuration for a particular VRF"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses BROADCAST-FOR-V2; + uses DISTANCE; + uses DEFAULT-INFORMATION; + uses DEFAULT-METRIC; + uses OUTPUT-DELAY; + uses AUTO-SUMMARY; + uses REDISTRIBUTION; + uses IP-DISTANCE-TABLE; + uses POLICY-OUT; + uses INTERFACE-TABLE; + uses NEIGHBOR-TABLE; + uses VALIDATE-SOURCE-DISABLE; + uses MAXIMUM-PATHS; + uses NSF; + uses POLICY-IN; + uses TIMERS; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper-sub1.yang new file mode 100644 index 000000000..33597ec8c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper-sub1.yang @@ -0,0 +1,1238 @@ +submodule Cisco-IOS-XR-ip-rip-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-rip-oper { + prefix Cisco-IOS-XR-ip-rip-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-rip package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-31 { + description + "Removed Unused leafs triggered rip and neighbor from IPv6 information of interfaces + 2021-12-10 + Corrected pathname for vrf global data + 2021-09-15 + Changed datatype of IPv6Prefix in IPv6Route + 2021-09-07 + Added support for RIPv6 in oper schema"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Interface-state { + type enumeration { + enum "interface-none" { + value 0; + description + "Interface does not exist"; + } + enum "interface-down" { + value 1; + description + "Interface exists but IP is down"; + } + enum "interface-up" { + value 2; + description + "Interface exists and IP is up"; + } + enum "interface-unknown" { + value 3; + description + "Unknown state"; + } + } + description + "Interface state"; + } + + typedef Rip-route-origin { + type enumeration { + enum "rip-rt-org-runover" { + value 0; + description + "configured 'network'"; + } + enum "rip-rt-org-redist" { + value 1; + description + "redistributed"; + } + enum "rip-rt-org-auto-summary" { + value 2; + description + "auto summary"; + } + enum "rip-rt-org-rip" { + value 3; + description + "learned via RIP"; + } + enum "rip-rt-org-intsummary" { + value 4; + description + "interface summary-address"; + } + enum "rip-rt-org-unused" { + value 5; + description + "route stay in for triggered rip"; + } + } + description + "Rip route origin"; + } + + grouping V6-RIP-SHOW-PROTO-PROC-BD { + description + "RIP protocol process data"; + leaf vrf-config-count { + type uint32; + description + "Number of VRFs configured"; + } + leaf vrf-active-count { + type uint32; + description + "Number of active VRFs"; + } + leaf socket-descriptor { + type int32; + description + "Socket descriptior"; + } + leaf current-oom-state { + type int32; + description + "Current OOM state"; + } + leaf route-count { + type uint32; + description + "Number of routes allocated"; + } + leaf path-count { + type uint32; + description + "Number of paths allocated"; + } + list vrf-summary { + description + "List of VRFs configured"; + uses RIP-SHOW-VRF-SUMM-BD; + } + } + + grouping V6-RIP-SHOW-IF-SUMM-BD { + description + "IPv6 RIP Interface summary data"; + leaf interface-name { + type string; + description + "Interface name"; + } + leaf enabled { + type boolean; + description + "RIP enabled indicator"; + } + leaf state { + type Interface-state; + description + "Interface state"; + } + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 address"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of IP address"; + } + leaf oom-flags { + type uint32; + description + "Current OOM flags"; + } + leaf neighbor-count { + type uint32; + description + "Number of neighbors seen"; + } + } + + grouping V6-RIP-SHOW-PROTO-VRF-BD { + description + "RIP IPv6 protocol VRF data"; + container vrf-summary { + description + "VRF summary data"; + uses RIP-SHOW-VRF-SUMM-BD; + } + list ipv6-interface-summary { + description + "List of IPv6 Interfaces configured"; + uses V6-RIP-SHOW-IF-SUMM-BD; + } + } + + grouping V6-RIP-PEER-BD { + description + "A ipv6 RIP peer"; + leaf peer-uptime { + type uint32; + description + "Uptime of this peer"; + } + leaf ipv6-peer-address { + type inet:ipv6-address; + description + "IPv6 Address of this peer"; + } + leaf peer-version { + type uint8; + description + "RIP version for this peer"; + } + leaf discarded-peer-packets { + type uint32; + description + "Discarded packets from this peer"; + } + leaf discarded-peer-routes { + type uint32; + description + "Discarded routes from this peer"; + } + } + + grouping V6-RIP-SHOW-INTERFACE-BD { + description + "An IPv6 Rip enabled interface"; + leaf interface { + type string; + description + "Interface name"; + } + leaf if-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf rip-enabled { + type boolean; + description + "Whether RIP is enabled on this interface"; + } + leaf is-passive-interface { + type boolean; + description + "Passive interface indicator"; + } + leaf accept-metric-zero { + type boolean; + description + "Accept routes of metric 0 indicator"; + } + leaf state { + type Interface-state; + description + "Current state of the interface"; + } + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 Address of this interface"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of the IP address"; + } + leaf metric-cost { + type uint32; + description + "Cost added to routes through this interface"; + } + leaf split-horizon { + type boolean; + description + "Split horizon enabled indicator"; + } + leaf poison-reverse { + type boolean; + description + "Poisoned reverse enabled indicator"; + } + leaf oom-flags { + type uint32; + description + "Out-of-memory status flags"; + } + leaf join-status { + type boolean; + description + "Multicast group join status"; + } + leaf lpts-state { + type boolean; + description + "Lpts status"; + } + leaf total-pkt-recvd { + type uint32; + description + "Total packets received"; + } + list rip-peer { + description + "Neighbors on this interface"; + uses V6-RIP-PEER-BD; + } + } + + grouping V6-RIP-SHOW-GLOBAL-CONFIG-BD { + description + "RIPv6's configuration settings"; + leaf active { + type boolean; + description + "VRF active indicator"; + } + leaf vr-fised-socket { + type boolean; + description + "VRF added to socket indicator"; + } + leaf default-metric { + type uint8; + description + "Default metric for RIP routes"; + } + leaf maximum-paths { + type uint8; + description + "Maximum number of paths a route can have"; + } + leaf update-timer { + type uint32; + description + "Update timer"; + } + leaf next-update-time { + type uint32; + description + "Time left for next update"; + } + leaf invalid-timer { + type uint32; + description + "Invalid timer"; + } + leaf hold-down-timer { + type uint32; + description + "Holddown timer"; + } + leaf flush-timer { + type uint32; + description + "Flush timer"; + } + leaf oom-flags { + type uint32; + description + "Out-of-memory status flags"; + } + leaf nsf-status { + type boolean; + description + "NSF Enable status"; + } + leaf nsf-life-time { + type uint32; + description + "NSF life time"; + } + } + + grouping V6-RIP-SHOW-STATISTICS-BD { + description + "RIP v6 statistics"; + leaf received-packets { + type uint32; + description + "Total packets received"; + } + leaf discarded-packets { + type uint32; + description + "Total discarded packets"; + } + leaf discarded-routes { + type uint32; + description + "Total discarded routes"; + } + leaf standby-packets-received { + type uint32; + description + "Packets rx in SRP"; + } + leaf sent-messages { + type uint32; + description + "Number of messages sent"; + } + leaf sent-message-failures { + type uint32; + description + "Number of message send failures"; + } + leaf query-responses { + type uint32; + description + "Number of RIP queries responded to"; + } + leaf periodic-updates { + type uint32; + description + "Number of periodic RIP updates"; + } + leaf route-count { + type uint32; + description + "Number of routes allocated"; + } + leaf path-count { + type uint32; + description + "Number of paths allocated"; + } + leaf route-malloc-failures { + type uint32; + description + "Number of failures to allocate memory for a + route"; + } + leaf path-malloc-failures { + type uint32; + description + "Number of failures to allocate memory for a path"; + } + leaf rib-updates { + type uint32; + description + "Number of route updates to RIB made by RIP"; + } + } + + grouping V6-RIP-PATH-BD { + description + "A ipv6 RIP route path"; + leaf ipv6-source-address { + type inet:ipv6-address; + description + "IPv6 Source address"; + } + leaf ipv6-next-hop-address { + type inet:ipv6-address; + description + "IPv6 Next hop address"; + } + leaf metric { + type uint16; + description + "Metric"; + } + leaf tag { + type uint16; + description + "Tag"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf up-time { + type uint32; + description + "Up time"; + } + leaf is-permanent { + type boolean; + description + "Permanent indicator"; + } + } + + grouping V6-RIP-SHOW-ROUTE-BD { + description + "A ipv6 route in RIP's local routing table"; + leaf ipv6-destination-address { + type inet:ipv6-address; + description + "IPv6 Destination IP Address for this route"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of IPv6 address"; + } + leaf distance { + type uint16; + description + "Route administrative distance"; + } + leaf hop-count { + type uint16; + description + "Hop count for this route"; + } + leaf route-type { + type uint16; + description + "Type of this route"; + } + leaf route-tag { + type uint16; + description + "Generic route information"; + } + leaf version { + type uint8; + description + "RIB supplied version number"; + } + leaf attributes { + type uint32; + description + "RIB supplied route attributes"; + } + leaf active { + type boolean; + description + "Active route indicator"; + } + leaf path-origin { + type Rip-route-origin; + description + "Where this route was learnt"; + } + leaf hold-down { + type boolean; + description + "Indicates whether route is in holddown"; + } + list paths { + description + "The paths for this route"; + uses V6-RIP-PATH-BD; + } + } + + grouping RIP-SHOW-PROTO-PROC-BD { + description + "RIP protocol process data"; + leaf vrf-config-count { + type uint32; + description + "Number of VRFs configured"; + } + leaf vrf-active-count { + type uint32; + description + "Number of active VRFs"; + } + leaf socket-descriptor { + type int32; + description + "Socket descriptior"; + } + leaf current-oom-state { + type int32; + description + "Current OOM state"; + } + leaf route-count { + type uint32; + description + "Number of routes allocated"; + } + leaf path-count { + type uint32; + description + "Number of paths allocated"; + } + list vrf-summary { + description + "List of VRFs configured"; + uses RIP-SHOW-VRF-SUMM-BD; + } + } + + grouping RIP-SHOW-IF-SUMM-BD { + description + "RIP Interface summary data"; + leaf interface-name { + type string; + description + "Interface name"; + } + leaf enabled { + type boolean; + description + "RIP enabled indicator"; + } + leaf state { + type Interface-state; + description + "Interface state"; + } + leaf destination-address { + type inet:ipv4-address; + description + "IP address"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of IP address"; + } + leaf oom-flags { + type uint32; + description + "Current OOM flags"; + } + leaf send-version { + type uint32; + description + "RIP versions this interface sends out"; + } + leaf receive-version { + type uint32; + description + "RIP versions this interface will receive"; + } + leaf neighbor-count { + type uint32; + description + "Number of neighbors seen"; + } + } + + grouping RIP-SHOW-VRF-SUMM-BD { + description + "RIP VRF summary data"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf active { + type boolean; + description + "VRF Active indicator"; + } + leaf oom-flags { + type uint32; + description + "Current OOM flags"; + } + leaf route-count { + type uint32; + description + "Number of routes allocated"; + } + leaf path-count { + type uint32; + description + "Number of paths allocated"; + } + leaf update-timer { + type uint32; + description + "Update timer"; + } + leaf next-update-time { + type uint32; + description + "Time left for next update"; + } + leaf invalid-timer { + type uint32; + description + "Invalid timer"; + } + leaf hold-down-timer { + type uint32; + description + "Holddown timer"; + } + leaf flush-timer { + type uint32; + description + "Flush timer"; + } + leaf interface-configured-count { + type uint32; + description + "Number of interfaces configured"; + } + leaf active-interface-count { + type uint32; + description + "Number of active interfaces"; + } + } + + grouping RIP-SHOW-PROTO-VRF-BD { + description + "RIP protocol VRF data"; + container vrf-summary { + description + "VRF summary data"; + uses RIP-SHOW-VRF-SUMM-BD; + } + list interface-summary { + description + "List of Interfaces configured"; + uses RIP-SHOW-IF-SUMM-BD; + } + } + + grouping RIP-PEER-BD { + description + "A RIP peer"; + leaf peer-uptime { + type uint32; + description + "Uptime of this peer"; + } + leaf peer-address { + type inet:ipv4-address; + description + "IP Address of this peer"; + } + leaf peer-version { + type uint8; + description + "RIP version for this peer"; + } + leaf discarded-peer-packets { + type uint32; + description + "Discarded packets from this peer"; + } + leaf discarded-peer-routes { + type uint32; + description + "Discarded routes from this peer"; + } + } + + grouping RIP-SUMMARY-BD { + description + "A RIP summary route"; + leaf prefix { + type inet:ipv4-address; + description + "Summary address prefix"; + } + leaf prefix-length { + type uint32; + description + "Summary address prefix length"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Summary address next hop"; + } + leaf metric { + type int32; + description + "Summary metric"; + } + } + + grouping RIP-SHOW-INTERFACE-BD { + description + "A RIP-enabled interface"; + leaf interface { + type string; + description + "Interface name"; + } + leaf if-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf rip-enabled { + type boolean; + description + "Whether RIP is enabled on this interface"; + } + leaf is-passive-interface { + type boolean; + description + "Passive interface indicator"; + } + leaf multicast-address { + type boolean; + description + "Use broadcast address for v2 packets"; + } + leaf accept-metric-zero { + type boolean; + description + "Accept routes of metric 0 indicator"; + } + leaf send-version { + type uint32; + description + "Versions that the interface is sending"; + } + leaf receive-version { + type uint32; + description + "Versions that the interface will recieve"; + } + leaf state { + type Interface-state; + description + "Current state of the interface"; + } + leaf destination-address { + type inet:ipv4-address; + description + "IP Address of this interface"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of the IP address"; + } + leaf metric-cost { + type uint32; + description + "Cost added to routes through this interface"; + } + leaf split-horizon { + type boolean; + description + "Split horizon enabled indicator"; + } + leaf poison-reverse { + type boolean; + description + "Poisoned reverse enabled indicator"; + } + leaf triggered-rip { + type boolean; + description + "Triggered RIP enabled indicator"; + } + leaf neighbor-address { + type inet:ipv4-address; + description + "Interface's triggered RIP neighbor"; + } + leaf oom-flags { + type uint32; + description + "Out-of-memory status flags"; + } + leaf join-status { + type boolean; + description + "Multicast group join status"; + } + leaf lpts-state { + type boolean; + description + "LPTSState"; + } + leaf auth-mode { + type uint32; + description + "Authentication Mode"; + } + leaf auth-keychain { + type string; + description + "Authentication Keychain Name"; + } + leaf send-auth-key-exists { + type boolean; + description + "Authentication send key exists"; + } + leaf auth-key-md5 { + type boolean; + description + "Authentication key programmed with MD5 algorithm"; + } + leaf auth-key-send-id { + type uint64; + description + "Current active Send Authentication Key Id"; + } + leaf total-pkt-recvd { + type uint32; + description + "Total packets received"; + } + leaf pkt-drop-wrong-kc { + type uint32; + description + "Packets dropped due to wrong keychain configured"; + } + leaf pkt-drop-no-auth { + type uint32; + description + "Packets dropped due to missing authentication + data"; + } + leaf pkt-drop-invalid-auth { + type uint32; + description + "Packets dropped due to invalid authentication + data"; + } + leaf pkt-accepted-valid-auth { + type uint32; + description + "Packets accepted with valid authentication data"; + } + list rip-summary { + description + "User defined summary addresses"; + uses RIP-SUMMARY-BD; + } + list rip-peer { + description + "Neighbors on this interface"; + uses RIP-PEER-BD; + } + } + + grouping RIP-SHOW-STATISTICS-BD { + description + "RIP statistics"; + leaf received-packets { + type uint32; + description + "Total packets received"; + } + leaf discarded-packets { + type uint32; + description + "Total discarded packets"; + } + leaf discarded-routes { + type uint32; + description + "Total discarded routes"; + } + leaf standby-packets-received { + type uint32; + description + "Packets rx in SRP"; + } + leaf sent-messages { + type uint32; + description + "Number of messages sent"; + } + leaf sent-message-failures { + type uint32; + description + "Number of message send failures"; + } + leaf query-responses { + type uint32; + description + "Number of RIP queries responded to"; + } + leaf periodic-updates { + type uint32; + description + "Number of periodic RIP updates"; + } + leaf route-count { + type uint32; + description + "Number of routes allocated"; + } + leaf path-count { + type uint32; + description + "Number of paths allocated"; + } + leaf route-malloc-failures { + type uint32; + description + "Number of failures to allocate memory for a + route"; + } + leaf path-malloc-failures { + type uint32; + description + "Number of failures to allocate memory for a path"; + } + leaf rib-updates { + type uint32; + description + "Number of route updates to RIB made by RIP"; + } + } + + grouping RIP-SHOW-GLOBAL-CONFIG-BD { + description + "RIP's configuration settings"; + leaf active { + type boolean; + description + "VRF active indicator"; + } + leaf vr-fised-socket { + type boolean; + description + "VRF added to socket indicator"; + } + leaf rip-version { + type int32; + description + "Version of RIP configured"; + } + leaf default-metric { + type uint8; + description + "Default metric for RIP routes"; + } + leaf maximum-paths { + type uint8; + description + "Maximum number of paths a route can have"; + } + leaf auto-summarize { + type boolean; + description + "Auto-summarization indicator"; + } + leaf multicast-address { + type boolean; + description + "Use broadcast/multicast address indicator"; + } + leaf flash-threshold { + type uint8; + description + "Flash update threshold"; + } + leaf input-q-length { + type uint16; + description + "Length of the input queue"; + } + leaf triggered-rip { + type boolean; + description + "Triggered RIP enabled indicator"; + } + leaf validation-indicator { + type boolean; + description + "Incoming packet source validation indicator"; + } + leaf update-timer { + type uint32; + description + "Update timer"; + } + leaf next-update-time { + type uint32; + description + "Time left for next update"; + } + leaf invalid-timer { + type uint32; + description + "Invalid timer"; + } + leaf hold-down-timer { + type uint32; + description + "Holddown timer"; + } + leaf flush-timer { + type uint32; + description + "Flush timer"; + } + leaf oom-flags { + type uint32; + description + "Out-of-memory status flags"; + } + leaf nsf-status { + type boolean; + description + "NSF Enable status"; + } + leaf nsf-life-time { + type uint32; + description + "NSF life time"; + } + } + + grouping RIP-PATH-BD { + description + "A RIP route path"; + leaf source-address { + type inet:ipv4-address; + description + "Source address"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next hop address"; + } + leaf metric { + type uint16; + description + "Metric"; + } + leaf tag { + type uint16; + description + "Tag"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf uptime { + type uint32; + description + "Up time"; + } + leaf is-permanent { + type boolean; + description + "Permanent indicator"; + } + } + + grouping RIP-SHOW-ROUTE-BD { + description + "A route in RIP's local routing table"; + leaf destination-address { + type inet:ipv4-address; + description + "Destination IP Address for this route"; + } + leaf prefix-length-xr { + type uint32; + description + "Prefix length of IP address"; + } + leaf distance { + type uint16; + description + "Route administrative distance"; + } + leaf hop-count { + type uint16; + description + "Hop count for this route"; + } + leaf route-type { + type uint16; + description + "Type of this route"; + } + leaf route-summary { + type boolean; + description + "Summary route placeholder indicator"; + } + leaf route-tag { + type uint16; + description + "Generic route information"; + } + leaf version { + type uint8; + description + "RIB supplied version number"; + } + leaf attributes { + type uint32; + description + "RIB supplied route attributes"; + } + leaf active { + type boolean; + description + "Active route indicator"; + } + leaf path-origin { + type Rip-route-origin; + description + "Where this route was learnt"; + } + leaf hold-down { + type boolean; + description + "Indicates whether route is in holddown"; + } + list paths { + description + "The paths for this route"; + uses RIP-PATH-BD; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper.yang new file mode 100644 index 000000000..61b702bb1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rip-oper.yang @@ -0,0 +1,318 @@ +module Cisco-IOS-XR-ip-rip-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rip-oper"; + prefix ip-rip-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-rip-oper-sub1 { + revision-date 2022-03-31; + } + + 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 ip-rip package operational data. + + This module contains definitions + for the following management objects: + rip: RIP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-31 { + description + "Removed Unused leafs triggered rip and neighbor from IPv6 information of interfaces + 2021-12-10 + Corrected pathname for vrf global data + 2021-09-15 + Changed datatype of IPv6Prefix in IPv6Route + 2021-09-07 + Added support for RIPv6 in oper schema"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IPV6-INTERFACE-TABLE { + description + "Common node of ipv6-default-vrf, ipv6vrf"; + container ipv6-interfaces { + description + "RIPv6 interfaces"; + list ipv6-interface { + key "interface-name"; + description + "Information about a particular RIPv6 interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses V6-RIP-SHOW-INTERFACE-BD; + } + } + } + + grouping ROUTE-TABLE { + description + "Common node of default-vrf, vrf"; + container routes { + description + "RIP route database"; + list route { + description + "A route in the RIP database"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Network prefix"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "Prefix length"; + } + uses RIP-SHOW-ROUTE-BD; + } + } + } + + grouping IPV6-ROUTE-TABLE { + description + "Common node of ipv6-default-vrf, ipv6vrf"; + container ipv6-routes { + description + "RIPv6 route database"; + list ipv6-route { + description + "A route in the RIPv6 database"; + leaf ipv6-prefix { + type inet:ipv6-address-no-zone; + description + "Network prefix"; + } + leaf ipv6-prefix-length { + type uint32 { + range "0..128"; + } + description + "Prefix length"; + } + uses V6-RIP-SHOW-ROUTE-BD; + } + } + } + + grouping STATISTICS { + description + "Common node of default-vrf, vrf"; + container statistics { + description + "RIP statistics information"; + uses RIP-SHOW-STATISTICS-BD; + } + } + + grouping IPV6-STATISTICS { + description + "Common node of ipv6-default-vrf, ipv6vrf"; + container ipv6-statistics { + description + "RIP statistics information"; + uses V6-RIP-SHOW-STATISTICS-BD; + } + } + + grouping IPV6-CONFIGURATION { + description + "Common node of ipv6-default-vrf, ipv6vrf"; + container ipv6-configuration { + description + "RIPv6 global configuration"; + uses V6-RIP-SHOW-GLOBAL-CONFIG-BD; + } + } + + grouping DEFAULT-VRF { + description + "Common node of rip, protocol"; + container default-vrf { + description + "RIP operational data for Default VRF"; + uses ROUTE-TABLE; + uses CONFIGURATION; + uses STATISTICS; + uses INTERFACE-TABLE; + } + } + + grouping CONFIGURATION { + description + "Common node of default-vrf, vrf"; + container configuration { + description + "RIP global configuration"; + uses RIP-SHOW-GLOBAL-CONFIG-BD; + } + } + + grouping INTERFACE-TABLE { + description + "Common node of default-vrf, vrf"; + container interfaces { + description + "RIP interfaces"; + list interface { + key "interface-name"; + description + "Information about a particular RIP interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses RIP-SHOW-INTERFACE-BD; + } + } + } + + container rip { + config false; + description + "RIP operational data"; + container vrfs { + description + "VRF related operational data"; + list vrf { + key "vrf-name"; + description + "Operational data for a particular VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF"; + } + uses ROUTE-TABLE; + uses CONFIGURATION; + uses STATISTICS; + uses INTERFACE-TABLE; + } + } + container protocol { + description + "Protocol operational data"; + container protocol-vrf-names { + description + "Protocol VRF list"; + list protocol-vrf-name { + key "vrf-name"; + description + "Protocol data for a particular VRF"; + container global { + description + "Global Information "; + uses RIP-SHOW-PROTO-VRF-BD; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF"; + } + } + } + container process { + description + "RIP global process "; + uses RIP-SHOW-PROTO-PROC-BD; + } + uses DEFAULT-VRF; + } + container ipv6-address-family { + description + "RIPv6 operational data"; + container ipv6vrfs { + description + "VRF related operational data for v6"; + list ipv6vrf { + key "vrf-name"; + description + "IPv6 Operational data for a particular VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF"; + } + uses IPV6-ROUTE-TABLE; + uses IPV6-STATISTICS; + uses IPV6-CONFIGURATION; + uses IPV6-INTERFACE-TABLE; + } + } + container ipv6-protocol { + description + "IPv6 Protocol operational data"; + container ipv6-protocol-vrf-names { + description + "IPv6 Protocol VRF list"; + list ipv6-protocol-vrf-name { + key "vrf-name"; + description + "IPv6 Protocol data for a particular VRF"; + container ipv6-global { + description + "IPv6 Global Information for RIP"; + uses V6-RIP-SHOW-PROTO-VRF-BD; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF"; + } + } + } + container ipv6-process { + description + "RIP global process "; + uses V6-RIP-SHOW-PROTO-PROC-BD; + } + } + container ipv6-default-vrf { + description + "RIPv6 operational data for Default VRF"; + uses IPV6-ROUTE-TABLE; + uses IPV6-STATISTICS; + uses IPV6-CONFIGURATION; + uses IPV6-INTERFACE-TABLE; + } + } + uses DEFAULT-VRF; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-cfg.yang new file mode 100644 index 000000000..792ac3051 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-cfg.yang @@ -0,0 +1,751 @@ +module Cisco-IOS-XR-ip-rsvp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rsvp-cfg"; + prefix ip-rsvp-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 ip-rsvp package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-rsvp-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + rsvp: Global RSVP configuration commands + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-25 { + description + "Added ReliableRetransmitQueueDepth under RefreshReduction as the result of unhidding the CLI."; + semver:module-version "1.2.0"; + } + revision 2019-09-20 { + description + "missing some containers under rsvp.signalling.graceful-restart in the RSVP UM cfg model"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rsvp-rdm { + type enumeration { + enum "rdm" { + value 1; + description + "RDM Keyword Specified"; + } + enum "not-specified" { + value 2; + description + "RDM Keyword Not Specified"; + } + enum "use-default-bandwidth" { + value 3; + description + "Use Default Bandwidth - 75% Link Bandwidth"; + } + } + description + "Rsvp rdm"; + } + + typedef Rsvp-bc0 { + type enumeration { + enum "bc0" { + value 1; + description + "Keyword is bc0"; + } + enum "global-pool" { + value 2; + description + "Keyword is global-pool"; + } + enum "not-specified" { + value 3; + description + "Keyword is not specified"; + } + } + description + "Rsvp bc0"; + } + + typedef Rsvp-bw-cfg { + type enumeration { + enum "absolute" { + value 0; + description + "Configuration is in absolute bandwidth values"; + } + enum "percentage" { + value 1; + description + "Configuration is in percentage of physical + bandwidth values"; + } + } + description + "Rsvp bw cfg"; + } + + typedef Rsvp-bc1 { + type enumeration { + enum "bc1" { + value 1; + description + "Keyword is bc1"; + } + enum "sub-pool" { + value 2; + description + "Keyword is sub-pool"; + } + } + description + "Rsvp bc1"; + } + + grouping AUTHENTICATION { + description + "Common node of rsvp, interface, neighbor"; + container authentication { + description + "Configure RSVP authentication"; + leaf life-time { + type uint32 { + range "30..86400"; + } + units "second"; + description + "Life time (in seconds) for each security + association"; + } + leaf enable { + type boolean; + description + "Enable or disable RSVP authentication"; + } + leaf window-size { + type uint32 { + range "1..64"; + } + description + "Window-size to limit number of out-of-order + messages"; + } + leaf key-chain { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Key chain to authenticate RSVP signalling + messages"; + } + } + } + + grouping OUT-OF-BAND { + description + "Common node of cntl-signalling, if-signalling"; + container out-of-band { + description + "Configure RSVP out-of-band signalling parameters"; + leaf missed-messages { + type uint32 { + range "1..110000"; + } + default "38000"; + description + "Configure max number of consecutive missed + messages for state expiry for out-of-band + tunnels"; + } + leaf refresh-interval { + type uint32 { + range "180..86400"; + } + units "second"; + description + "Configure interval between successive refreshes + for out-of-band tunnels"; + } + } + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container rsvp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-rsvp-cfg.yang which will provide + the compatible functionalities. Enable RSVP-MIB + notifications"; + leaf lost-flow { + type empty; + description + "Enable lostFlow notification"; + } + leaf new-flow { + type empty; + description + "Enable newFlow notification"; + } + leaf enable { + type empty; + description + "Enable all RSVP notifications"; + } + } + } + container rsvp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-rsvp-cfg.yang which will provide + the compatible functionalities. Global RSVP + configuration commands"; + container neighbors { + description + "RSVP Neighbor Table"; + list neighbor { + key "neighbor"; + description + "RSVP neighbor configuration"; + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + uses AUTHENTICATION; + } + } + container controllers { + description + "Controller table"; + list controller { + key "controller-name"; + description + "Controller configuration"; + container cntl-signalling { + description + "Configure RSVP signalling parameters"; + uses OUT-OF-BAND; + } + leaf enable { + type empty; + description + "Enable RSVP on an interface"; + } + leaf controller-name { + type xr:Interface-name; + description + "Name of controller"; + } + } + } + container global-logging { + description + "Global Logging"; + leaf log-nsr-status { + type empty; + description + "Enable NSR Status Logging"; + } + leaf log-issu-status { + type empty; + description + "Enable ISSU Status Logging"; + } + } + container global-bandwidth { + description + "Configure Global Bandwidth Parameters"; + container default-interface-percent { + description + "Configure Global RSVP signalling parameters"; + container mam { + description + "Configure global default MAM I/F percent + bandwidth parameters"; + leaf max-res-percent { + type uint32 { + range "0..10000"; + } + description + "Default maximum reservable I/F % B/W "; + } + leaf bc0-percent { + type uint32 { + range "0..10000"; + } + description + "Default BC0 pool I/F % B/W "; + } + leaf bc1-percent { + type uint32 { + range "0..10000"; + } + description + "Default BC1 pool I/F % B/W "; + } + } + container rdm { + description + "Configure global default RDM I/F percent + bandwidth parameters"; + leaf bc0-percent { + type uint32 { + range "0..10000"; + } + description + "Default BC0 pool I/F % B/W "; + } + leaf bc1-percent { + type uint32 { + range "0..10000"; + } + description + "Default BC1 pool I/F % B/W "; + } + } + } + } + container interfaces { + description + "Interface table"; + list interface { + key "name"; + description + "Interface configuration"; + container if-signalling { + description + "Configure RSVP signalling parameters"; + container refresh-reduction { + description + "Configure RSVP Refresh Reduction parameters"; + leaf disable { + type empty; + description + "Disable refresh reduction"; + } + leaf reliable-ack-max-size { + type uint32 { + range "20..65000"; + } + units "byte"; + default "4096"; + description + "Configure max size of a single RSVP ACK + message"; + } + leaf reliable-ack-hold-time { + type uint32 { + range "100..5000"; + } + units "millisecond"; + default "400"; + description + "Configure hold time for sending RSVP ACK + message(s)"; + } + leaf reliable-retransmit-time { + type uint32 { + range "100..10000"; + } + units "millisecond"; + default "2100"; + description + "Configure min delay to wait for an ACK + before a retransmit"; + } + leaf reliable-s-refresh { + type empty; + description + "Configure use of reliable messaging for + summary refresh"; + } + leaf summary-max-size { + type uint32 { + range "20..65000"; + } + units "byte"; + default "4096"; + description + "Configure max size of a single RSVP summary + refresh message"; + } + leaf reliable-retransmit-queue-depth { + type uint32 { + range "0..100000"; + } + description + "Retransmit queue depth (# sub-msg's)"; + } + leaf bundle-message-max-size { + type uint32 { + range "512..65000"; + } + units "byte"; + default "4096"; + description + "Configure maximum size of a single RSVP + Bundle message"; + } + } + container interval-rate { + description + "Configure number of messages to be sent per + interval"; + leaf messages-per-interval { + type uint32 { + range "1..500"; + } + default "100"; + description + "Number of messages to be sent per interval"; + } + leaf interval-size { + type uint32 { + range "250..2000"; + } + units "millisecond"; + default "1000"; + description + "Size of an interval (milliseconds)"; + } + } + leaf dscp { + type uint32 { + range "0..63"; + } + description + "Differentiated Services Code Point (DSCP)"; + } + leaf missed-messages { + type uint32 { + range "1..8"; + } + default "4"; + description + "Configure max number of consecutive missed + messages for state expiry"; + } + leaf hello-graceful-restart-if-based { + type empty; + description + "Enable IF-based Hello adjacency on a RSVP + interface"; + } + leaf pacing { + type empty; + description + "Enable rate-limiting on the interface"; + } + leaf refresh-interval { + type uint32 { + range "10..180"; + } + units "second"; + default "45"; + description + "Configure interval between successive + refreshes"; + } + uses OUT-OF-BAND; + } + container bandwidth { + description + "Configure Bandwidth"; + container mam { + description + "Configure MAM bandwidth parameters"; + leaf max-resv-bandwidth { + type uint32 { + range "0..4294967295"; + } + description + "Maximum reservable bandwidth (Kbps or + percent of physical bandwidth)"; + } + leaf max-resv-flow { + type uint32 { + range "0..4294967295"; + } + description + "Largest reservable flow (Kbps or percent of + physical bandwidth)"; + } + leaf bc0-bandwidth { + type uint32 { + range "0..4294967295"; + } + description + "Reservable bandwidth in BC0 (Kbps or percent + of physical bandwidth)"; + } + leaf bc1-bandwidth { + type uint32 { + range "0..4294967295"; + } + description + "Reservable bandwidth in BC1 (Kbps or percent + of physical bandwidth)"; + } + leaf bandwidth-mode { + type Rsvp-bw-cfg; + units "percentage"; + description + "Absolute or Percentage bandwidth mode"; + } + } + container rdm { + description + "Configure RDM bandwidth parameters"; + leaf max-resv-flow { + when "../rdm-keyword = 'rdm' or ../rdm-keyword = 'not-specified'" { + description + "../RDMKeyword = RDM or ../RDMKeyword = + NotSpecified"; + } + type uint32 { + range "0..4294967295"; + } + description + "Largest reservable flow (Kbps or percent of + physical bandwidth)"; + } + leaf bc0-bandwidth { + when "../rdm-keyword = 'rdm' or ../rdm-keyword = 'not-specified'" { + description + "../RDMKeyword = RDM or ../RDMKeyword = + NotSpecified"; + } + type uint32 { + range "0..4294967295"; + } + description + "Reservable bandwidth in BC0 (Kbps or percent + of physical bandwidth)"; + } + leaf bc1-bandwidth { + when "../rdm-keyword = 'rdm' or ../rdm-keyword = 'not-specified'" { + description + "../RDMKeyword = RDM or ../RDMKeyword = + NotSpecified"; + } + type uint32 { + range "0..4294967295"; + } + description + "Reservable bandwidth in BC1 (Kbps or percent + of physical bandwidth)"; + } + leaf rdm-keyword { + type Rsvp-rdm; + description + "Set requests should always use RDM"; + } + leaf bc0-keyword { + when "../rdm-keyword = 'rdm' or ../rdm-keyword = 'not-specified'" { + description + "../RDMKeyword = RDM or ../RDMKeyword = + NotSpecified"; + } + type Rsvp-bc0; + description + "Set requests should always use BC0"; + } + leaf bc1-keyword { + when "../rdm-keyword = 'rdm' or ../rdm-keyword = 'not-specified'" { + description + "../RDMKeyword = RDM or ../RDMKeyword = + NotSpecified"; + } + type Rsvp-bc1; + description + "Set requests should always use BC1"; + } + leaf bandwidth-mode { + when "../rdm-keyword = 'rdm' or ../rdm-keyword = 'not-specified'" { + description + "../RDMKeyword = RDM or ../RDMKeyword = + NotSpecified"; + } + type Rsvp-bw-cfg; + units "percentage"; + description + "Absolute or Percentage bandwidth mode"; + } + } + } + leaf name { + type xr:Interface-name; + description + "Name of interface"; + } + uses AUTHENTICATION; + } + } + container signalling { + description + "Configure Global RSVP signalling parameters"; + container global-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 graceful-restart { + description + "Configure RSVP Graceful-Restart parameters"; + container lsp-class-type { + description + "Send LSP's ctype for recovery and suggested + label"; + leaf enable { + type boolean; + description + "Send LSP's ctype for recovery and suggested + label"; + } + } + leaf enable { + type boolean; + description + "Enable RSVP graceful restart"; + } + leaf restart-time { + type uint32 { + range "60..3600"; + } + units "second"; + default "120"; + description + "Graceful restart time (seconds)"; + } + leaf recovery-time { + type uint32 { + range "0..3600"; + } + units "second"; + default "120"; + description + "Graceful restart recovery time (seconds)"; + } + } + container prefix-filtering { + description + "Configure prefix filtering parameters"; + container default-deny-action { + description + "Configure RSVP behaviour for scenarios where + ACL match yields a default (implicit) deny"; + leaf drop { + type empty; + description + "Configure RSVP to drop packets when ACL match + yields a default (implicit) deny"; + } + } + leaf acl { + type string { + length "1..65"; + } + description + "Configure an ACL to perform prefix filtering + of RSVP Router Alert messages"; + } + } + container pesr { + description + "Sending Path Error with State-Removal flag"; + leaf disable { + type empty; + description + "Disable RSVP PESR"; + } + } + container checksum { + description + "RSVP message checksum computation"; + leaf disable { + type empty; + description + "Disable RSVP message checksum computation"; + } + } + leaf hello-graceful-restart-misses { + type uint32 { + range "1..10"; + } + default "3"; + description + "Configure max number of consecutive missed + Hello messages"; + } + leaf hello-graceful-restart-interval { + type uint32 { + range "3000..30000"; + } + units "millisecond"; + default "5000"; + description + "Configure interval between successive Hello + messages"; + } + } + uses AUTHENTICATION; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper-sub1.yang new file mode 100644 index 000000000..2cd4b74e8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper-sub1.yang @@ -0,0 +1,4758 @@ +submodule Cisco-IOS-XR-ip-rsvp-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-rsvp-oper { + prefix Cisco-IOS-XR-ip-rsvp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-rsvp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igpte-lib-bw-model { + type enumeration { + enum "rdm" { + value 0; + description + "Russian Dolls Model"; + } + enum "mam" { + value 1; + description + "Maximum Allocation Model"; + } + enum "not-set" { + value 2; + description + "No model set"; + } + } + description + "Bandwidth model"; + } + + typedef Rsvp-mgmt-restart-state { + type enumeration { + enum "done" { + description + "Restart is done"; + } + enum "recovery" { + description + "Neighbor is in recovery"; + } + enum "abort" { + description + "Neighbor recovery aborted"; + } + } + description + "RSVP GR (Graceful Restart) Restart states"; + } + + typedef Rsvp-mgmt-hello-down-reason { + type enumeration { + enum "not-applicable" { + description + "Not applicable. This means RSVP Hellos are up"; + } + enum "wrong-destination-instance" { + description + "Incorrect destination instance in received + Hellos"; + } + enum "wrong-source-instance" { + description + "Incorrect source instance in received Hellos"; + } + enum "hello-missed" { + description + "Hellos not being received"; + } + enum "interface-down" { + description + "Interface went down"; + } + enum "neighbor-disabled-hello" { + description + "Neighbor disabled Hellos"; + } + enum "control-channel-down" { + description + "Control channel went down"; + } + } + description + "Reasons why RSVP Hellos went down"; + } + + typedef Rsvp-mgmt-hello-instance-owner { + type enumeration { + enum "mpls-graceful-restart" { + description + "MPLS Graceful Restart"; + } + enum "mpls-ouni" { + description + "MPLS OUNI"; + } + } + description + "RSVP Hello instance owner"; + } + + typedef Rsvp-mgmt-association { + type enumeration { + enum "none" { + value 0; + description + "No ASSOCIATION Object present"; + } + enum "ipv4" { + value 1; + description + "IPv4 ASSOCIATION Type"; + } + enum "ipv6" { + value 2; + description + "IPv6 ASSOCIATION Type"; + } + enum "extended-ipv4" { + value 3; + description + "EXTENDED IPv4 ASSOCIATION Type"; + } + enum "extended-ipv6" { + value 4; + description + "EXTENDED IPv6 ASSOCIATION Type"; + } + } + description + "RSVP ASSOCIATION Types"; + } + + typedef Rsvp-mgmt-rro-subobj { + type enumeration { + enum "ipv4rro-type" { + value 1; + description + "IPv4 RRO Type"; + } + enum "label-rro-type" { + value 3; + description + "Label RRO Type"; + } + enum "unnumbered-rro-type" { + value 4; + description + "Unnumbered RRO Type"; + } + enum "srlg-rro-type" { + value 34; + description + "SRLG RRO Type"; + } + } + description + "RSVP RRO Types"; + } + + typedef Rsi-vrf-id { + type uint32; + description + "Rsi vrf id"; + } + + typedef Rsvp-mgmt-frr-state-enum { + type enumeration { + enum "ready-state" { + value 0; + description + "Ready State"; + } + enum "pending-state" { + value 1; + description + "Pending"; + } + enum "active-state" { + value 2; + description + "Active State"; + } + } + description + "RSVP FRR States"; + } + + typedef Rsvp-proc-nsr-not-ready-reason { + type enumeration { + enum "collab-time-out" { + description + "Collab connection time out"; + } + enum "collab-conntection-idt" { + description + "Collab connection down or IDT not done"; + } + enum "nsr-peer-not-connected" { + description + "NSR peer not connected"; + } + enum "nsr-peer-not-in-sync" { + description + "NSR peer not in sync"; + } + } + description + "Rsvp proc nsr not ready reason"; + } + + typedef Rsvp-sync-status { + type enumeration { + enum "not-ready" { + description + "Not Ready"; + } + enum "ready" { + description + "Ready"; + } + } + description + "Rsvp sync status"; + } + + typedef Rsvp-mgmt-gr-app { + type enumeration { + enum "ouni" { + description + "Application is OUNI"; + } + enum "gmpls" { + description + "Application is GMPLS"; + } + } + description + "RSVP Graceful Restart application type"; + } + + typedef Rsvp-proc-role { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "v1-active" { + description + "V1 Active"; + } + enum "v1-standby" { + description + "V1 Standby"; + } + enum "v2-active" { + description + "V2 Active"; + } + enum "v2-standby" { + description + "V2 Standby"; + } + enum "v1-active-post-big-bang" { + description + "V1 Active post big-bang"; + } + enum "v1-standby-post-big-bang" { + description + "V1 Standbyi post big-bang"; + } + enum "count" { + description + "Count"; + } + } + description + "RSVP Process Role"; + } + + typedef Rsvp-mgmt-auth-challenge-status { + type enumeration { + enum "rsvp-mgmt-auth-cs-not-cfg" { + description + "Not configured"; + } + enum "rsvp-mgmt-auth-cs-completed" { + description + "Complete"; + } + enum "rsvp-mgmt-auth-cs-in-progress" { + description + "In Progress"; + } + enum "rsvp-mgmt-auth-cs-failure" { + description + "Failed"; + } + enum "rsvp-mgmt-auth-cs-not-supported" { + description + "Not supported"; + } + } + description + "RSVP Authentication Challenge Status"; + } + + typedef Rsvp-mgmt-hello-instance { + type enumeration { + enum "active" { + description + "Hello requests and ACKs are sent"; + } + enum "passive" { + description + "Hello ACKs only are sent"; + } + } + description + "RSVP Hello instance types"; + } + + typedef Rsvp-mgmt-hello-state { + type enumeration { + enum "hello-state-init" { + description + "No Hello messages ever received from neighbor"; + } + enum "hello-state-up" { + description + "Receiving expected Hello messages from neighbor"; + } + enum "hello-state-down" { + description + "Stopped receiving expected Hello messages from + neighbor"; + } + } + description + "RSVP Hello instance states"; + } + + typedef Rsvp-mgmt-reservation-type-enum { + type enumeration { + enum "rsvp-mgmt-ff-option" { + value 10; + description + "Single Reservation"; + } + enum "rsvp-mgmt-wf-option" { + value 17; + description + "Shared Reservation, Unlimited Scope"; + } + enum "rsvp-mgmt-se-option" { + value 18; + description + "Shared Reservation, Limited Scope"; + } + } + description + "RSVP Reservation Types"; + } + + typedef Rsvp-mgmt-flow-spec { + type enumeration { + enum "g709otn" { + value 5; + description + "G709 OTN FlowSpec Type"; + } + } + description + "RSVP Generic FlowSpec Types"; + } + + typedef Rsvp-mgmt-qos-service-enum { + type enumeration { + enum "rsvp-mgmt-qos-unknown" { + value 0; + description + "QOS Unknown"; + } + enum "rsvp-mgmt-qos-guaranteed" { + value 3; + description + "QOS Guaranteed"; + } + enum "rsvp-mgmt-qos-controlled-load" { + value 5; + description + "QOS Controlled Load"; + } + enum "rsvp-mgmt-qos-qualitative" { + value 6; + description + "QOS Qualitative"; + } + } + description + "QOS Types"; + } + + typedef Rsvp-mgmt-messageid { + type uint32; + description + "Rsvp mgmt messageid"; + } + + typedef Rsvp-timer-state { + type enumeration { + enum "rsvp-timer-running-and-sleeping" { + value 1; + description + "RSVP timer running and sleeping"; + } + enum "rsvp-timer-running" { + value 2; + description + "RSVP timer running"; + } + enum "rsvp-timer-not-running" { + value 3; + description + "RSVP timer not running"; + } + } + description + "RSVP Timer States"; + } + + typedef Rsvp-mgmt-ero-subobj-status { + type enumeration { + enum "rsvp-mgmt-ero-status-not-available" { + value 0; + description + "ERO is not available in topology"; + } + enum "rsvp-mgmt-ero-status-available" { + value 1; + description + "ERO is available in topology"; + } + enum "rsvp-mgmt-ero-status-bw-not-available" { + value 2; + description + "ERO doesn't have bw available in topology"; + } + } + description + "RSVP ERO Status"; + } + + typedef Rsvp-mgmt-ero-subobj { + type enumeration { + enum "rsvp-mgmt-ero-type-ipv4" { + value 1; + description + "IPv4 ERO Type"; + } + enum "rsvp-mgmt-ero-type-un-num" { + value 4; + description + "Unnumbered ERO Type"; + } + } + description + "RSVP ERO Types"; + } + + typedef Rsvp-mgmt-generic-label { + type enumeration { + enum "rsvp-mgmt-label-type-gmpls" { + value 2; + description + "Generalized Label Type"; + } + } + description + "RSVP Generic Label Types"; + } + + typedef Rsvp-mgmt-mpls-label { + type uint32; + description + "Rsvp mgmt mpls label"; + } + + typedef Rsvp-mgmt-tspec { + type enumeration { + enum "g709otn" { + value 5; + description + "G709 OTN Sender Tspec Type"; + } + enum "intsrv" { + value 12; + description + "Int-Serv Sender Tspec Type"; + } + } + description + "RSVP Generic Sender Tspec Types"; + } + + typedef Rsvp-mgmt-filter { + type enumeration { + enum "rsvp-mgmt-filter-type-ipv4" { + value 1; + description + "IPv4 FilterSpec Type"; + } + enum "rsvp-mgmt-filter-type-p2mp-lsp-ipv4" { + value 12; + description + "P2MP LSP IPv4 FilterSpec Type"; + } + } + description + "RSVP Filter Types"; + } + + typedef Rsvp-mgmt-session { + type enumeration { + enum "rsvp-mgmt-session-type-udp-ipv4" { + value 1; + description + "UDP IPv4 Session Type"; + } + enum "rsvp-mgmt-session-type-lsp-ipv4" { + value 7; + description + "LSP IPv4 Session Type"; + } + enum "rsvp-mgmt-session-type-uni-ipv4" { + value 9; + description + "UNI IPv4 Session Type"; + } + enum "rsvp-mgmt-session-type-p2mp-lsp-ipv4" { + value 13; + description + "P2MP LSP IPv4 Session Type"; + } + } + description + "RSVP Session Types"; + } + + typedef Rsvp-mgmt-auth-ki { + type enumeration { + enum "rsvp-mgmt-auth-ki-type-none" { + description + "None"; + } + enum "rsvp-mgmt-auth-ki-type-global" { + description + "Global"; + } + enum "rsvp-mgmt-auth-ki-type-interface" { + description + "Interface"; + } + enum "rsvp-mgmt-auth-ki-type-neighbor" { + description + "Neighbor"; + } + } + description + "RSVP Authentication KeyInfo Type"; + } + + typedef Rsvp-mgmt-auth-direction { + type enumeration { + enum "rsvp-mgmt-auth-direction-send" { + description + "Send"; + } + enum "rsvp-mgmt-auth-direction-recv" { + description + "Receive"; + } + } + description + "RSVP Authentication Direction Types"; + } + + typedef Rsvp-mgmt-dste-modes { + type enumeration { + enum "pre-standard" { + value 1; + description + "pre standard"; + } + enum "standard" { + value 3; + description + "standard"; + } + } + description + "RSVP DSTE modes"; + } + + grouping RSVP-MGMT-RXSB-DETAIL { + description + "Detailed Form of RSVP Proxy Reservation"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container style { + description + "RSVP Style"; + uses RSVP-MGMT-STYLE; + } + container filter { + description + "RSVP Filter"; + uses RSVP-MGMT-FILTER-INFO; + } + container flow-spec { + description + "Flow Spec Information"; + uses RSVP-MGMT-FLOW-SPEC; + } + container generic-flow-spec { + description + "Generic Flow Spec Information"; + uses RSVP-MGMT-GEN-FLOW-SPEC; + } + container hop { + description + "Path Hop Info"; + uses RSVP-MGMT-HOP-INFO; + } + container rsvp-header { + description + "RSVP Header"; + uses RSVP-MGMT-HEADER-INFO; + } + leaf input-interface { + type string; + description + "Path Input Interface"; + } + leaf dynamic-state { + type uint32; + description + "Dynamic State Handle"; + } + } + + grouping RSVP-MGMT-PXSB-DETAIL { + description + "Detailed Form of RSVP Proxy Path"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container template { + description + "RSVP Template"; + uses RSVP-MGMT-FILTER-INFO; + } + container traffic-spec { + description + "RSVP Traffic Spec Info"; + uses RSVP-MGMT-TRAFFIC-SPEC; + } + container generic-traffic-spec { + description + "RSVP Generic Traffic Spec Info"; + uses RSVP-MGMT-GEN-TRAFFIC-SPEC; + } + container hop { + description + "Path Hop Info"; + uses RSVP-MGMT-HOP-INFO; + } + container rsvp-header { + description + "RSVP Header"; + uses RSVP-MGMT-HEADER-INFO; + } + leaf input-interface { + type string; + description + "Path Input Interface"; + } + leaf dynamic-state { + type uint32; + description + "Dynamic State Handle"; + } + } + + grouping RSVP-MGMT-GLBL-BW-POOL-INFO { + description + "Global B/W pool information"; + leaf max-res-pool-percent { + type uint32; + units "percentage"; + description + "Maxium reservable I/F percent B/W"; + } + leaf bc0-percent { + type uint32; + units "percentage"; + description + "BC0 I/F percent B/W"; + } + leaf bc1-percent { + type uint32; + units "percentage"; + description + "BC1 I/F percent B/W"; + } + leaf is-max-res-pool-percent-configured { + type boolean; + description + "Is maximum reservable default I/F percent + configured"; + } + leaf is-bc0-percent-configured { + type boolean; + description + "Is BC0 default I/F percent configured"; + } + leaf is-bc1-percent-configured { + type boolean; + description + "Is BC1 default I/F percent configured"; + } + leaf bandwidth-configuration-model { + type Igpte-lib-bw-model; + description + "Bandwith configuration model currently in use + (MAM/RDM)"; + } + } + + grouping RSVP-MGMT-GLBL-NBR-COMPACT { + description + "Compact Info for RSVP Global Neighbor"; + container global-neighbor-flags { + description + "Global Neighbor Flags"; + uses RSVP-MGMT-GLBL-NBR-FLAGS; + } + leaf is-gr-enabled { + type boolean; + description + "Is GR enabled"; + } + leaf node-address { + type inet:ipv4-address; + description + "Neighbor node address"; + } + leaf restart-state { + type Rsvp-mgmt-restart-state; + description + "Restart state"; + } + list local-node-address { + description + "Local node address"; + leaf entry { + type inet:ipv4-address; + description + "Local node address"; + } + } + list neighbor-hello-state { + description + "Neighbor Hello state"; + leaf entry { + type Rsvp-mgmt-hello-state; + description + "Neighbor Hello state"; + } + } + list lost-communication-reason { + description + "Reason why communication was lost"; + leaf entry { + type Rsvp-mgmt-hello-down-reason; + description + "Reason why communication was lost"; + } + } + list lost-communication-total { + description + "Total number of times communication got lost"; + leaf entry { + type uint16; + description + "Total number of times communication got lost"; + } + } + list up-time { + description + "Time hellos have been up"; + uses RSVP-MGMT-TIMESPEC; + } + list lost-communication-time { + description + "Time when communication was lost"; + uses RSVP-MGMT-TIMESPEC; + } + } + + grouping RSVP-MGMT-PATH-COMPACT { + description + "Compact Form of RSVP Path Info"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container template { + description + "RSVP Template"; + uses RSVP-MGMT-FILTER-INFO; + } + container session-attribute { + description + "RSVP Session Attribute"; + uses RSVP-MGMT-SESSION-ATTRIBUTE; + } + container traffic-spec { + description + "RSVP Traffic Spec Info"; + uses RSVP-MGMT-TRAFFIC-SPEC; + } + container generic-traffic-spec { + description + "RSVP Generic Traffic Spec Info"; + uses RSVP-MGMT-GEN-TRAFFIC-SPEC; + } + leaf input-interface { + type string; + description + "Path Input Interface"; + } + } + + grouping RSVP-MGMT-GLBL-NBR-FLAGS { + description + "Global Neighbor Flags"; + leaf is-application-ouni { + type boolean; + description + "OUNI Application"; + } + leaf is-application-mpls { + type boolean; + description + "MPLS Application"; + } + } + + grouping RSVP-MGMT-GLBL-NBR-DETAIL { + description + "Detail Info for RSVP Global Neighbor"; + container global-neighbor-flags { + description + "Global Neighbor Flags"; + uses RSVP-MGMT-GLBL-NBR-FLAGS; + } + container restart-time-left { + description + "How much restart time remains"; + uses RSVP-MGMT-TIMESPEC; + } + container restart-timer-expiry-time { + description + "When will restart timer expire"; + uses RSVP-MGMT-TIMESPEC; + } + container recovery-time-left { + description + "How much recovery timer remains"; + uses RSVP-MGMT-TIMESPEC; + } + container recovery-timer-exp-time { + description + "Time at which recovery timer will expire"; + uses RSVP-MGMT-TIMESPEC; + } + leaf is-gr-enabled { + type boolean; + description + "Is GR enabled"; + } + leaf node-address { + type inet:ipv4-address; + description + "Neighbor node address"; + } + leaf restart-state { + type Rsvp-mgmt-restart-state; + description + "Current restart state"; + } + leaf restart-time { + type uint32; + units "millisecond"; + description + "GR Restart Time (milliseconds)"; + } + leaf is-restart-timer-running { + type boolean; + description + "Is GR restart timer running"; + } + leaf recovery-time { + type uint32; + units "millisecond"; + description + "GR Recovery Time (milliseconds)"; + } + leaf is-recovery-timer-running { + type boolean; + description + "Is RSVP recovery timer running"; + } + leaf hello-interval { + type uint32; + units "millisecond"; + description + "Hello Interval (milliseconds)"; + } + leaf missed-hellos { + type uint8; + description + "Hello missed count"; + } + leaf pending-states { + type uint32; + description + "Number of pending states for this neighbor"; + } + list local-node-address { + description + "Local node address"; + leaf entry { + type inet:ipv4-address; + description + "Local node address"; + } + } + list interface-neighbor { + description + "Interface Neighbor List"; + leaf entry { + type inet:ipv4-address; + description + "Interface Neighbor List"; + } + } + list neighbor-hello-state { + description + "Neighbor's hello state"; + leaf entry { + type Rsvp-mgmt-hello-state; + description + "Neighbor's hello state"; + } + } + list lost-communication-reason { + description + "Reason why communication was lost"; + leaf entry { + type Rsvp-mgmt-hello-down-reason; + description + "Reason why communication was lost"; + } + } + list lost-communication-total { + description + "Total number of times communication got lost"; + leaf entry { + type uint16; + description + "Total number of times communication got lost"; + } + } + list up-time { + description + "Hello up time"; + uses RSVP-MGMT-TIMESPEC; + } + list lost-communication-time { + description + "Time when communication was lost"; + uses RSVP-MGMT-TIMESPEC; + } + } + + grouping RSVP-MGMT-HELLO-INSTANCE-DETAIL { + description + "Detail Info for RSVP Hello Instance"; + container up-time { + description + "Hello up time"; + uses RSVP-MGMT-TIMESPEC; + } + container communication-lost-time { + description + "Time when communication was lost"; + uses RSVP-MGMT-TIMESPEC; + } + leaf source-address-xr { + type inet:ipv4-address; + description + "Source address"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "Destination address"; + } + leaf hello-instance-owner { + type Rsvp-mgmt-hello-instance-owner; + description + "Hello instance owner"; + } + leaf neighbor-hello-state { + type Rsvp-mgmt-hello-state; + description + "Neighbor Hello state"; + } + leaf instance-type { + type Rsvp-mgmt-hello-instance; + description + "Hello instance type"; + } + leaf hello-interface { + type xr:Interface-name; + description + "Interface to use"; + } + leaf hello-interval { + type uint32; + description + "Hello Interval"; + } + leaf missed-acks-allowed { + type uint32; + description + "Number of missed Hello allowed"; + } + leaf source-instance { + type uint32; + description + "Source Instance"; + } + leaf destination-instance { + type uint32; + description + "Destination Instance"; + } + leaf communication-lost-reason { + type Rsvp-mgmt-hello-down-reason; + description + "Reason why communication was lost"; + } + leaf total-communication-lost { + type uint16; + description + "Total number of times communication got lost"; + } + leaf communication-lost-hello-missed { + type uint16; + description + "Lost Comm. Hello missed count"; + } + leaf communication-lost-wrong-source-inst { + type uint16; + description + "Count of lost comm. due to wrong Source Inst"; + } + leaf communication-lost-wrong-destination-inst { + type uint16; + description + "Count of lost comm. due to wrong Destination + Inst"; + } + leaf communication-lost-interface-down { + type uint16; + description + "Count of lost comm. due to interface down"; + } + leaf communication-lost-neighbor-disabled-hello { + type uint16; + description + "Count of lost comm. due to nbor disabling Hellos"; + } + leaf hello-messages-sent { + type uint64; + description + "Number of hello messages sent"; + } + leaf hello-messages-received { + type uint64; + description + "Number of hello messages received"; + } + leaf hello-request-suppressed { + type uint64; + description + "Count of Hello Requests suppessed"; + } + } + + grouping RSVP-SESSION-RSB-DETAIL { + description + "RSVP Detail Session Reservation Info"; + container generic-out-label { + description + "Generic Label for outbound traffic"; + uses RSVP-MGMT-GENERIC-LABEL; + } + container flow-spec { + description + "Flow spec object"; + uses RSVP-MGMT-FLOW-SPEC; + } + container generic-flow-spec { + description + "Generic Flow Spec object"; + uses RSVP-MGMT-GEN-FLOW-SPEC; + } + leaf is-valid { + type boolean; + description + "Entry validity"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf out-interface { + type xr:Interface-name; + description + "Interface on which outbound message was sent"; + } + leaf out-label { + type Rsvp-mgmt-mpls-label; + description + "Label for outbound traffic"; + } + leaf backup-interface { + type xr:Interface-name; + description + "Backup tunnel interface"; + } + leaf backup-label { + type Rsvp-mgmt-mpls-label; + description + "Backup label"; + } + leaf is-rro-valid { + type boolean; + description + "RRO validity"; + } + leaf is-flow-spec-valid { + type boolean; + description + "FlowSpec validity"; + } + list rro { + description + "Record route object"; + uses RSVP-MGMT-RRO-SUBOBJ; + } + } + + grouping RSVP-MGMT-REV-LSP-UNSUPPORTED-SUBOBJ { + description + "RSVP MGMT REV LSP UNSUPPORTED SUBOBJ"; + list rsvp-mgmt-rev-lsp-unsupported-subobj { + description + "rsvp mgmt rev lsp unsupported subobj"; + leaf entry { + type uint8; + description + "rsvp mgmt rev lsp unsupported subobj"; + } + } + } + + grouping RSVP-MGMT-REVERSE-LSP { + description + "RSVP REVERSE_LSP Object"; + container generic-traffic-spec { + description + "Generic Traffic Spec object"; + uses RSVP-MGMT-GEN-TRAFFIC-SPEC; + } + list ero { + description + "Explicit Route Sub Objects"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + list unsup-sub-object { + description + "Unsupported REVERSE_LSP Sub Objects"; + uses RSVP-MGMT-REV-LSP-UNSUPPORTED-SUBOBJ; + } + } + + grouping RSVP-MGMT-PROTECTION-LINK-FLAGS { + description + "RSVP PROTECTION Object Link Flags"; + leaf enhanced { + type boolean; + description + "Indicates Enhanced Protection Scheme"; + } + leaf ded1-plus1 { + type boolean; + description + "Dedicated 1+1 Protection"; + } + leaf ded1-to1 { + type boolean; + description + "Dedicated 1:1 Protection"; + } + leaf shared { + type boolean; + description + "Shared Link Layer Protection"; + } + leaf unprotected { + type boolean; + description + "LSP should not use any Link Layer Protection"; + } + leaf extra-traffic { + type boolean; + description + "LSP should use Links that are protecting other + (primary) traffic"; + } + leaf reserved-bit1 { + type boolean; + description + "Reserved Bit 1"; + } + leaf reserved-bit2 { + type boolean; + description + "Reserved Bit 2"; + } + } + + grouping RSVP-MGMT-PROTECTION-LSP-FLAGS { + description + "RSVP PROTECTION Object LSP Flags"; + leaf rerouting { + type boolean; + description + "Full Rerouting"; + } + leaf rerouting-no-et { + type boolean; + description + "Rerouting Without Extra-Traffic"; + } + leaf one-to-n-protection-et { + type boolean; + description + "1:N Protection with Extra-Traffic"; + } + leaf one-plus-one-uni { + type boolean; + description + "1+1 Unidirectional Protection"; + } + leaf one-plus-one-bi { + type boolean; + description + "1+1 Bidirectional Protection"; + } + } + + grouping RSVP-MGMT-PROTECTION { + description + "RSVP PROTECTION Object Info"; + container lsp-flags { + description + "PROTECTION Object LSP Flags"; + uses RSVP-MGMT-PROTECTION-LSP-FLAGS; + } + container link-flags { + description + "PROTECTION Object Link Flags"; + uses RSVP-MGMT-PROTECTION-LINK-FLAGS; + } + leaf s { + type boolean; + description + "Secondary Bit"; + } + leaf p { + type boolean; + description + "Protecting Bit"; + } + leaf n { + type boolean; + description + "Notification Bit"; + } + leaf o { + type boolean; + description + "Operational Bit"; + } + } + + grouping RSVP-MGMT-ASSOCIATION-IPV6-EXT { + description + "RSVP EXTENDED ASSOCIATION IPv6 Object Info"; + leaf type { + type uint16; + description + "Association Type (RFC 4872)"; + } + leaf id { + type uint16; + description + "Association ID"; + } + leaf source { + type inet:ipv6-address; + description + "Association IPV6 Source Address"; + } + leaf global-source { + type uint32; + description + "Global Association Source"; + } + list extended-id { + description + "Extended Association ID"; + leaf entry { + type uint32; + description + "Extended Association ID"; + } + } + } + + grouping RSVP-MGMT-ASSOCIATION-IPV4-EXT { + description + "RSVP EXTENDED ASSOCIATION IPv4 Object Info"; + leaf type { + type uint16; + description + "Association Type (RFC 4872)"; + } + leaf id { + type uint16; + description + "Association ID"; + } + leaf source { + type inet:ipv4-address; + description + "Association IPV4 Source Address"; + } + leaf global-source { + type uint32; + description + "Global Association Source"; + } + list extended-id { + description + "Extended Association ID"; + leaf entry { + type uint32; + description + "Extended Association ID"; + } + } + } + + grouping RSVP-MGMT-ASSOCIATION-IPV6 { + description + "RSVP ASSOCIATION IPv6 Object Info"; + leaf type { + type uint16; + description + "Association Type (RFC 4872)"; + } + leaf id { + type uint16; + description + "Association ID"; + } + leaf source { + type inet:ipv6-address; + description + "Association IPV6 Source Address"; + } + } + + grouping RSVP-MGMT-ASSOCIATION-IPV4 { + description + "RSVP ASSOCIATION IPv4 Object Info"; + leaf type { + type uint16; + description + "Association Type (RFC 4872)"; + } + leaf id { + type uint16; + description + "Association ID"; + } + leaf source { + type inet:ipv4-address; + description + "Association IPV4 Source Address"; + } + } + + grouping RSVP-MGMT-ASSOCIATION { + description + "Union of the different ASSOCIATION types"; + container ipv4 { + when "../association-type = 'ipv4'" { + description + "../AssociationType = 'IPv4'"; + } + description + "IPV4 ASSOCIATION Object"; + uses RSVP-MGMT-ASSOCIATION-IPV4; + } + container ipv6 { + when "../association-type = 'ipv6'" { + description + "../AssociationType = 'IPv6'"; + } + description + "IPV6 ASSOCIATION Object"; + uses RSVP-MGMT-ASSOCIATION-IPV6; + } + container extended-ipv4 { + when "../association-type = 'extended-ipv4'" { + description + "../AssociationType = 'ExtendedIPv4'"; + } + description + "EXTENDED IPV4 ASSOCIATION Object"; + uses RSVP-MGMT-ASSOCIATION-IPV4-EXT; + } + container extended-ipv6 { + when "../association-type = 'extended-ipv6'" { + description + "../AssociationType = 'ExtendedIPv6'"; + } + description + "EXTENDED IPV6 ASSOCIATION Object"; + uses RSVP-MGMT-ASSOCIATION-IPV6-EXT; + } + leaf association-type { + type Rsvp-mgmt-association; + description + "AssociationType"; + } + } + + grouping RSVP-MGMT-RRO-SRLG-SUBOBJ { + description + "RSVP RRO SRLG subobject"; + list srl-gs { + description + "The RRO Subobject SRLGs"; + leaf entry { + type uint32; + description + "The RRO Subobject SRLGs"; + } + } + } + + grouping RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ-FLAGS { + description + "RSVP RRO UNNUMBERED Subobject Flags"; + leaf is-protection-available { + type boolean; + description + "Local Protection Available"; + } + leaf is-protection-in-use { + type boolean; + description + "Local Protection In Use"; + } + leaf is-bandwidth-protected { + type boolean; + description + "Bandwidth Protection Available"; + } + leaf is-node-protection-available { + type boolean; + description + "Node Protection Available"; + } + leaf is-node-id { + type boolean; + description + "Node ID In Use"; + } + } + + grouping RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ { + description + "RSVP RRO Unnumbered subobject"; + container flags { + description + "The RRO Subobject Unnumbered Flags"; + uses RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ-FLAGS; + } + leaf interface-address { + type inet:ipv4-address; + description + "The RRO Interface Address"; + } + leaf interface-id { + type uint32; + description + "The RRO Interface ID"; + } + } + + grouping RSVP-MGMT-RRO-LABEL-SUBOBJ-FLAGS { + description + "RSVP RRO Label Subobject Flags"; + leaf is-global-label { + type boolean; + description + "Label is Global across all interfaces"; + } + } + + grouping RSVP-MGMT-RRO-LABEL-SUBOBJ { + description + "RSVP RRO Label subobject"; + container flags { + description + "The RRO Subobject Label Flags"; + uses RSVP-MGMT-RRO-LABEL-SUBOBJ-FLAGS; + } + leaf label { + type uint32; + description + "The RRO Subobject Label Value"; + } + leaf is-label-variable-length { + type boolean; + description + "Is the RRO Subobject Label Variable Length"; + } + list variable-length-label { + description + "The RRO Subobject Variable Length Label"; + leaf entry { + type uint32; + description + "The RRO Subobject Variable Length Label"; + } + } + } + + grouping RSVP-MGMT-RRO-IPV4-SUBOBJ-FLAGS { + description + "RSVP RRO IPV4 Subobject Flags"; + leaf is-protection-available { + type boolean; + description + "Local Protection Available"; + } + leaf is-protection-in-use { + type boolean; + description + "Local Protection In Use"; + } + leaf is-bandwidth-protected { + type boolean; + description + "Bandwidth Protection Available"; + } + leaf is-node-protection-available { + type boolean; + description + "Node Protection Available"; + } + leaf is-node-id { + type boolean; + description + "Node ID In Use"; + } + } + + grouping RSVP-MGMT-RRO-IPV4-SUBOBJ { + description + "RSVP RRO IPV4 subobject"; + container flags { + description + "The RRO IPV4 Subobject Flags"; + uses RSVP-MGMT-RRO-IPV4-SUBOBJ-FLAGS; + } + leaf rro-address { + type inet:ipv4-address; + description + "The RRO IPV4 Address"; + } + } + + grouping RSVP-MGMT-RRO-SUBOBJ { + description + "Union of the different RSVP RRO types"; + container ipv4rro-sub-object { + when "../rro-type = 'ipv4rro-type'" { + description + "../RROType = 'IPv4RROType'"; + } + description + "IPV4 RRO Sub Object"; + uses RSVP-MGMT-RRO-IPV4-SUBOBJ; + } + container label-rro-sub-object { + when "../rro-type = 'label-rro-type'" { + description + "../RROType = 'LabelRROType'"; + } + description + "Label RRO Sub Object"; + uses RSVP-MGMT-RRO-LABEL-SUBOBJ; + } + container unnumbered-rro-sub-object { + when "../rro-type = 'unnumbered-rro-type'" { + description + "../RROType = 'UnnumberedRROType'"; + } + description + "Unnumbered RRO Sub Object"; + uses RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ; + } + container srlg-rro-sub-object { + when "../rro-type = 'srlg-rro-type'" { + description + "../RROType = 'SRLG_RROType'"; + } + description + "SRLG RRO Sub Object"; + uses RSVP-MGMT-RRO-SRLG-SUBOBJ; + } + leaf rro-type { + type Rsvp-mgmt-rro-subobj; + description + "RROType"; + } + } + + grouping RSVP-SESSION-PSB-DETAIL { + description + "RSVP Detail Session Path Info"; + container generic-in-label { + description + "Generic Label for inbound traffic"; + uses RSVP-MGMT-GENERIC-LABEL; + } + container traffic-spec { + description + "Traffic Spec object"; + uses RSVP-MGMT-TRAFFIC-SPEC; + } + container generic-traffic-spec { + description + "Generic Traffic Spec object"; + uses RSVP-MGMT-GEN-TRAFFIC-SPEC; + } + container association { + description + "Association object"; + uses RSVP-MGMT-ASSOCIATION; + } + container protection { + description + "Protection object"; + uses RSVP-MGMT-PROTECTION; + } + container reverse-lsp { + description + "Reverse LSP object"; + uses RSVP-MGMT-REVERSE-LSP; + } + leaf is-valid { + type boolean; + description + "Entry validity"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf p2mp-sub-group-origin { + type inet:ipv4-address; + description + "Point to Multipoint SubGroup Origin"; + } + leaf sub-group-id { + type uint16; + description + "Point to Multipoint Subgroup ID"; + } + leaf in-interface { + type xr:Interface-name; + description + "Interface on which inbound message was received"; + } + leaf in-label { + type Rsvp-mgmt-mpls-label; + description + "Label for inbound traffic"; + } + leaf lsp-wrap-label { + type Rsvp-mgmt-mpls-label; + description + "LSP Wrap Label"; + } + leaf is-bad-address { + type boolean; + description + "Address validity"; + } + leaf incoming-interface-address { + type inet:ipv4-address; + description + "IP address of Path's incoming interface"; + } + leaf is-ero-valid { + type boolean; + description + "ERO validity"; + } + leaf is-rro-valid { + type boolean; + description + "RRO validity"; + } + leaf is-traffic-spec-valid { + type boolean; + description + "Traffic Spec validity"; + } + leaf tunnel-name { + type string; + description + "Tunnel name"; + } + list ero { + description + "Explicit Route Sub Objects"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + list rro { + description + "Record Route Sub Objects"; + uses RSVP-MGMT-RRO-SUBOBJ; + } + } + + grouping RSVP-SESSION-PSB-RSB-DETAIL { + description + "List of Path and Reservation Info"; + list psb-info { + description + "Path Info"; + uses RSVP-SESSION-PSB-DETAIL; + } + list rsb-info { + description + "Reservation Info"; + uses RSVP-SESSION-RSB-DETAIL; + } + } + + grouping RSVP-MGMT-SESSION-DETAIL { + description + "RSVP Detail Session Info"; + container compact { + description + "Compact session data"; + uses RSVP-MGMT-SESSION-COMPACT; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + list psb-rsb-info { + description + "Path and Reservation Info"; + uses RSVP-SESSION-PSB-RSB-DETAIL; + } + } + + grouping RSVP-MGMT-KEY { + description + "Key to uniquely identify some RSVP records"; + leaf p2mp-id { + type uint32; + description + "Point-to-multipoint ID"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf destination-port-or-tunnel-id { + type uint32; + description + "Destination Port or Tunnel ID. For the LSP and + OUNI session types this represents the Tunnel ID + whereas for the UDP session type this represents + the Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol. UDP session type this represents the + Protocol (UDP not supported at present)"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "Protocol or Extended Tunnel ID. For the LSP and + OUNI sesion types this represents the Extended + Tunnel ID"; + } + leaf session-type { + type Rsvp-mgmt-session; + description + "Session Type (e.g. LSP, OUNI or UDP)"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source Address"; + } + leaf source-port-or-lsp-id { + type uint32; + description + "Source Port or LSP_ID. For the LSP and OUNI + session types this represents the LSP_ID whereas + for the UDP session type this represents the + SourcePort"; + } + leaf p2mp-sub-group-origin { + type inet:ipv4-address; + description + "Point to Multipoint SubGroup Origin"; + } + leaf sub-group-id { + type uint16; + description + "Point to Multipoint Subgroup ID"; + } + leaf vrfid { + type Rsi-vrf-id; + description + "Signalling VRF ID"; + } + } + + grouping RSVP-MGMT-REQUEST-FLAGS { + description + "Request state flags"; + leaf is-local-receiver { + type boolean; + description + "Local Receiver"; + } + leaf is-refreshing { + type boolean; + description + "Is neighbor refreshing"; + } + leaf is-send-confirm { + type boolean; + description + "Send Confirm message"; + } + leaf is-ack-outstanding { + type boolean; + description + "Is ACK message outstanding"; + } + leaf is-message-id-allocated { + type boolean; + description + "Is MessageID allocated"; + } + leaf is-nack-received { + type boolean; + description + "A NACK message was received"; + } + leaf is-retransmit { + type boolean; + description + "Retransmit the message"; + } + leaf is-paced { + type boolean; + description + "Message is paced"; + } + leaf is-label-request-in-path { + type boolean; + description + "The Path message contains Label Request"; + } + leaf is-rro-in-path { + type boolean; + description + "The Path message contains RRO"; + } + leaf is-record-label-in-path { + type boolean; + description + "Path has Session-Attr object with Record Labels + set"; + } + leaf is-merge-point { + type boolean; + description + "Is node a Merge Point"; + } + } + + grouping RSVP-MGMT-REQUEST-DETAIL { + description + "Detailed Form of RSVP Request Info"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container flow-spec { + description + "Flow Spec Information"; + uses RSVP-MGMT-FLOW-SPEC; + } + container generic-flow-spec { + description + "Generic Flow Spec Information"; + uses RSVP-MGMT-GEN-FLOW-SPEC; + } + container filter { + description + "RSVP Filter"; + uses RSVP-MGMT-FILTER-INFO; + } + container style { + description + "RSVP Style"; + uses RSVP-MGMT-STYLE; + } + container req-flags { + description + "Request flags"; + uses RSVP-MGMT-REQUEST-FLAGS; + } + container hop { + description + "Hop Infomation"; + uses RSVP-MGMT-HOP-INFO; + } + container header { + description + "RSVP Header Information"; + uses RSVP-MGMT-HEADER-INFO; + } + container policy-sources { + description + "RSVP Policy Sources"; + uses RSVP-MGMT-POLICY-SOURCES; + } + container policy-flags { + description + "RSVP Policy Flags"; + uses RSVP-MGMT-POLICY-FLAGS; + } + container policy-query-flags { + description + "RSVP Query Flags"; + uses RSVP-MGMT-POLICY-QUERY-FLAGS; + } + leaf output-interface { + type string; + description + "output Interface"; + } + list psb-key { + description + "List of RSB keys"; + uses RSVP-MGMT-KEY; + } + list rsb-key { + description + "List of RSB keys"; + uses RSVP-MGMT-KEY; + } + } + + grouping RSVP-MGMT-REQUEST-COMPACT { + description + "Compact Form of RSVP Request Info"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container flow-spec { + description + "Flow Spec Information"; + uses RSVP-MGMT-FLOW-SPEC; + } + container generic-flow-spec { + description + "Generic Flow Spec Information"; + uses RSVP-MGMT-GEN-FLOW-SPEC; + } + container filter { + description + "RSVP Filter"; + uses RSVP-MGMT-FILTER-INFO; + } + container style { + description + "RSVP Style"; + uses RSVP-MGMT-STYLE; + } + leaf output-interface { + type string; + description + "Output Interface"; + } + } + + grouping RSVP-MGMT-FRR-STATES-DETAIL { + description + "RSVP states for one FRR LSP"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + leaf path-status { + type Rsvp-mgmt-frr-state-enum; + description + "RSVP FRR Path States"; + } + leaf reservation-status { + type Rsvp-mgmt-frr-state-enum; + description + "RSVP FRR Reservation States"; + } + } + + grouping RSVP-GLOBAL-INFO { + description + "RSVP global information"; + container issu-status { + description + "Issu status"; + uses RSVP-NSR-ISSU-STATUS-INFO; + } + container nsr-status { + description + "NSR status"; + uses RSVP-NSR-ISSU-STATUS-INFO; + } + container database-counters { + description + "All database counters"; + uses RSVP-MGMT-ALL-DB-COUNTERS; + } + leaf interfaces { + type uint32; + description + "Total interfaces"; + } + leaf ls-ps { + type uint32; + description + "Total LSPs"; + } + } + + grouping RSVP-IDT-STATUS { + description + "IDT status information"; + leaf sync-status { + type Rsvp-sync-status; + description + "Sync status"; + } + leaf not-ready-reason { + type Rsvp-proc-nsr-not-ready-reason; + description + "Not ready reason"; + } + leaf idt-start-time { + type uint32; + units "second"; + description + "IDT start timestamp in seconds"; + } + leaf idt-end-time { + type uint32; + units "second"; + description + "IDT end timestamp in seconds"; + } + leaf declare-time { + type uint32; + units "second"; + description + "Declare ready timestamp in seconds"; + } + leaf withdraw-time { + type uint32; + units "second"; + description + "Withdraw ready timestamp in seconds"; + } + } + + grouping RSVP-NSR-ISSU-STATUS-INFO { + description + "NSR/ISSU status information"; + container idt-status { + description + "IDT status"; + uses RSVP-IDT-STATUS; + } + container previous-idt-status { + description + "Previous IDT status"; + uses RSVP-IDT-STATUS; + } + leaf role { + type Rsvp-proc-role; + description + "Process role"; + } + } + + grouping RSVP-MGMT-IF-NBR-DETAIL { + description + "Detail Info for RSVP Interface Neighbor"; + leaf interface-neighbor-address { + type inet:ipv4-address; + description + "Interface Neighbor address"; + } + leaf neighbor-interface-name { + type xr:Interface-name; + description + "Neighbor's Interface handle"; + } + leaf is-rr-enabled { + type boolean; + description + "Is Neighbor's RR enable"; + } + leaf neighbor-epoch { + type uint32; + description + "Neighbor's epoch value"; + } + leaf out-of-order-messages { + type uint32; + description + "Number of out of order msgs"; + } + leaf retransmitted-messages { + type uint32; + description + "Number of retransmitted msgs"; + } + } + + grouping RSVP-MGMT-NBR-DETAIL { + description + "Detail Info for RSVP Neighbor"; + leaf node-address { + type inet:ipv4-address; + description + "Neighbor node address"; + } + list interface-neighbor-list-detail { + description + "Detail list of I/F Neighbors"; + uses RSVP-MGMT-IF-NBR-DETAIL; + } + } + + grouping RSVP-MGMT-HELLO-IF-INSTANCE-DETAIL { + description + "Detail Info for IF-based RSVP Hello Instance"; + container last-message-sent-time { + description + "Last Ack/msg sent time"; + uses RSVP-MGMT-TIMESPEC; + } + leaf source-address-xr { + type inet:ipv4-address; + description + "Source address"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "Destination address"; + } + leaf hello-global-neighbor-id { + type inet:ipv4-address; + description + "Global Neighbor ID"; + } + leaf instance-type { + type Rsvp-mgmt-hello-instance; + description + "Hello instance type"; + } + leaf hello-interface { + type xr:Interface-name; + description + "Interface to use"; + } + leaf source-instance { + type uint32; + description + "Source Instance"; + } + leaf destination-instance { + type uint32; + description + "Destination Instance"; + } + leaf hello-messages-sent { + type uint64; + description + "Number of hello messages sent"; + } + leaf hello-messages-received { + type uint64; + description + "Number of hello messages received"; + } + } + + grouping RSVP-MGMT-HELLO-IF-INSTANCE-COMPACT { + description + "Compact Info for IF-based RSVP Hello Instance"; + leaf source-address-xr { + type inet:ipv4-address; + description + "Source address"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "Destination address"; + } + leaf instance-type { + type Rsvp-mgmt-hello-instance; + description + "Hello instance type"; + } + leaf hello-interface { + type xr:Interface-name; + description + "Interface to use"; + } + } + + grouping RSVP-MGMT-LOCAL-NODE-ID-IPV4 { + description + "Local Node-id"; + leaf local-node-ip-address { + type inet:ipv4-address; + description + "Local node address"; + } + leaf application-type { + type Rsvp-mgmt-gr-app; + description + "GR local node-id app type"; + } + } + + grouping RSVP-MGMT-GRACEFUL-RESTART { + description + "RSVP Graceful Restart Info"; + container recovery-time-left { + description + "How much recovery timer remains"; + uses RSVP-MGMT-TIMESPEC; + } + container recovery-timer-exp-time { + description + "Time at which recovery timer will expire"; + uses RSVP-MGMT-TIMESPEC; + } + leaf is-gr-enabled { + type boolean; + description + "Whether GR is enabled"; + } + leaf global-neighbors { + type uint32; + description + "Global neighbor count"; + } + leaf restart-time { + type uint32; + units "millisecond"; + description + "Restart time (milliseconds)"; + } + leaf recovery-time { + type uint32; + units "millisecond"; + description + "Recovery time (milliseconds)"; + } + leaf is-recovery-timer-running { + type boolean; + description + "Whether recovery timer is running"; + } + leaf hello-interval { + type uint32; + description + "Interval at which hello messages are sent"; + } + leaf missed-hellos { + type uint8; + description + "Max number of hellos missed before hellos + declared down"; + } + leaf pending-states { + type uint32; + description + "Total number of pending states"; + } + list local-node-address { + description + "Local node address"; + uses RSVP-MGMT-LOCAL-NODE-ID-IPV4; + } + } + + grouping RSVP-MGMT-INTERFACE-COMPACT { + description + "Compact Form of RSVP interface Info"; + container bandwidth-information { + description + "Interface bandwidth information"; + uses RSVP-MGMT-DSTE-MODE-INTERFACE-BW; + } + leaf interface-name-xr { + type string; + description + "Interface Name"; + } + } + + grouping RSVP-MGMT-ALL-DB-COUNTERS { + description + "All database counters"; + leaf sessions { + type uint32; + description + "Number of sessions"; + } + leaf incoming-paths { + type uint32; + description + "Number of locally created and incoming path + states"; + } + leaf outgoing-paths { + type uint32; + description + "Number of outgoing path states"; + } + leaf incoming-reservations { + type uint32; + description + "Number of locally created and incoming + reservation states"; + } + leaf outgoing-reservations { + type uint32; + description + "Number of outgoing reservation states"; + } + leaf interfaces { + type uint32; + description + "Number of Interfaces"; + } + } + + grouping RSVP-SYNC-COUNT-INFO { + description + "RSVP sync sent and received counters information"; + leaf last-cleared-timestamp { + type uint32; + units "second"; + description + "The timestamp, in seconds, when these statistics + are cleared since 00:00:00 UTC, + January 1, 1970"; + } + leaf rsvp-process-role { + type Rsvp-proc-role; + description + "Process role"; + } + leaf last-idt-states { + type uint32; + description + "Last IDT number of states"; + } + leaf total-states { + type uint32; + description + "Total number of states"; + } + leaf total-deletions { + type uint32; + description + "Total number of deletions"; + } + leaf total-nacks { + type uint64; + description + "Total number of NACKs"; + } + leaf total-id-ts { + type uint32; + description + "Total number of IDTs"; + } + } + + grouping RSVP-MGMT-EVENT-COUNT-INFO { + description + "Count of events"; + leaf expired-paths { + type uint32; + description + "Counter for Expired Path states"; + } + leaf expired-reservations { + type uint32; + description + "Counter for Expired Reservation states"; + } + leaf nac-ks { + type uint32; + description + "Counter for NACKs received"; + } + } + + grouping RSVP-MGMT-COUNTERS-OOR { + description + "Counters for all messages dropped in OOR + condition"; + leaf dropped-path-messages { + type uint32; + description + "Count of Path messages dropped due to an out of + resource condition"; + } + } + + grouping RSVP-MGMT-COUNT-PREFIX-INTERFACE-INFO { + description + "Prefix filtering interface counters"; + container forwarded { + description + "Count of messages which got forwarded"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container locally-destined { + description + "Count of locally destined messages"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container dropped { + description + "Count of messages dropped"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container default-action-dropped { + description + "Count of messages which got dropped due to + default ACL action"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container default-action-processed { + description + "Count of messages which were processed due to + default ACL action"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container total { + description + "Count of total messages"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + } + + grouping RSVP-MGMT-COUNT-PREFIX-MSG { + description + "Message types for prefix filtering"; + leaf path { + type uint32; + description + "Count of Path messages"; + } + leaf path-tear { + type uint32; + description + "Count of PathTear messages"; + } + leaf reservation-confirm { + type uint32; + description + "Count of ReservationConfirm messages"; + } + leaf total { + type uint32; + description + "Total count of messages"; + } + } + + grouping RSVP-MGMT-COUNT-PREFIX-ACL-INFO { + description + "Prefix filtering ACL counters"; + container forwarded { + description + "Count of messages which got forwarded"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container locally-destined { + description + "Count of locally destined messages"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container dropped { + description + "Count of messages dropped"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + container total { + description + "Count of total messages"; + uses RSVP-MGMT-COUNT-PREFIX-MSG; + } + } + + grouping RSVP-MGMT-COUNTS { + description + "Counters for all known RSVP message types"; + leaf path { + type uint32; + description + "Count of Path messages"; + } + leaf reservation { + type uint32; + description + "Count of Reservation messages"; + } + leaf path-error { + type uint32; + description + "Count of PathError messages"; + } + leaf reservation-error { + type uint32; + description + "Count of ReservationError messages"; + } + leaf path-tear { + type uint32; + description + "Count of PathTear messages"; + } + leaf reservation-tear { + type uint32; + description + "Count of ReservationTear messages"; + } + leaf reservation-confirm { + type uint32; + description + "Count of ReservationConfirm messages"; + } + leaf bundle { + type uint32; + description + "Count of Bundle messages"; + } + leaf ack { + type uint32; + description + "Count of ACK messages"; + } + leaf srefresh { + type uint32; + description + "Count of Srefresh messages"; + } + leaf hello { + type uint32; + description + "Count of Hello messages"; + } + leaf challenge { + type uint32; + description + "Count of Integrity Challenge messages"; + } + leaf response { + type uint32; + description + "Count of Integrity Response messages"; + } + } + + grouping RSVP-MGMT-COUNT-MESSAGE { + description + "Counters for all messages"; + container received-messages { + description + "Count of messages received"; + uses RSVP-MGMT-COUNTS; + } + container transmitted-messages { + description + "Count of messages transmitted"; + uses RSVP-MGMT-COUNTS; + } + container bundle-received-messages { + description + "Count of Bundle messages received"; + uses RSVP-MGMT-COUNTS; + } + container bundle-transmitted-messages { + description + "Count of Bundle messages transmitted"; + uses RSVP-MGMT-COUNTS; + } + leaf retransmitted-messages { + type uint32; + description + "Count of messages retransmitted"; + } + leaf out-of-order-messages { + type uint32; + description + "Count of Out of Order messages"; + } + leaf rate-limited-messages { + type uint32; + description + "Count of Rate Limited messages"; + } + } + + grouping RSVP-MGMT-RESERVATION-COMPACT { + description + "Compact Form of RSVP Reservation Info"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container flow-spec { + description + "Flow Spec Information"; + uses RSVP-MGMT-FLOW-SPEC; + } + container generic-flow-spec { + description + "Generic Flow Spec Info"; + uses RSVP-MGMT-GEN-FLOW-SPEC; + } + container style { + description + "RSVP Style"; + uses RSVP-MGMT-STYLE; + } + container filter { + description + "RSVP Filter"; + uses RSVP-MGMT-FILTER-INFO; + } + leaf input-interface { + type string; + description + "Reservation Input Interface"; + } + } + + grouping RSVP-MGMT-AUTH-RECV-TYPE-COUNTERS { + description + "RSVP Authentication Receive Type Counters"; + leaf authentication-received-valid-messages { + type uint32; + description + "Valid messages"; + } + leaf authentication-received-challenges-sent { + type uint32; + description + "Challenges sent"; + } + leaf authentication-received-challenge-response { + type uint32; + description + "Challenge responses received"; + } + leaf authentication-received-challenges-resent { + type uint32; + description + "Challenges resent"; + } + leaf authentication-received-challenge-timeouts { + type uint32; + description + "Challenge timeouts"; + } + leaf authentication-received-during-challenge { + type uint32; + description + "Authentication received during challenge"; + } + leaf authentication-received-incomplete { + type uint32; + description + "Authentication received incomplete"; + } + leaf authentication-received-no-integrity { + type uint32; + description + "Authentication received with no integrity"; + } + leaf authentication-received-bad-digest { + type uint32; + description + "Authentication received with bad digest"; + } + leaf authentication-received-wrong-digest-type { + type uint32; + description + "Authentication received with wrong digest type"; + } + leaf authentication-received-sequence-number-duplicate { + type uint32; + description + "Authentication received with duplicate sequence + number"; + } + leaf authentication-received-sequence-number-outof-range { + type uint32; + description + "Authentication received with sequence number out + of range"; + } + leaf authentication-received-wrong-challenges-response { + type uint32; + description + "Incorect challenge responses received"; + } + leaf authentication-received-challenges-response-duplicate { + type uint32; + description + "Duplicate challenge responses received"; + } + leaf authentication-received-response-late { + type uint32; + description + "Challenge responses received late"; + } + leaf authentication-received-bad-message-format { + type uint32; + description + "Authentication received with bad mesage format"; + } + } + + grouping RSVP-MGMT-AUTH-DIRECTION-RECV { + description + "RSVP Authentication Recieve Type Information"; + container counters { + description + "Counters"; + uses RSVP-MGMT-AUTH-RECV-TYPE-COUNTERS; + } + leaf sequence { + type uint64; + description + "Sequence number"; + } + leaf sequence-window-size { + type uint32; + description + "Sequence window size"; + } + leaf sequence-window-count { + type uint32; + description + "Sequence window count"; + } + list sequence-window { + max-elements "64"; + description + "Sequence window"; + leaf entry { + type uint64; + description + "Sequence window"; + } + } + } + + grouping RSVP-MGMT-AUTH-SEND-TYPE-COUNTERS { + description + "RSVP Authentication Send Type Counters"; + leaf authentication-sent { + type uint32; + description + "Messages sent"; + } + leaf authentication-failures { + type uint32; + description + "Failures"; + } + leaf authentication-send-challenges-received { + type uint32; + description + "Challenges received"; + } + leaf authentication-challenge-responses-sent { + type uint32; + description + "Challenge responses sent"; + } + } + + grouping RSVP-MGMT-AUTH-DIRECTION-SEND { + description + "RSVP Authentication Send Type Information"; + container counters { + description + "Counters"; + uses RSVP-MGMT-AUTH-SEND-TYPE-COUNTERS; + } + leaf sequence { + type uint64; + description + "Sequence number"; + } + } + + grouping RSVP-MGMT-AUTH-DIRECTION { + description + "Union of the different RSVP Authentication + Direction types"; + container send-info { + when "../auth-direction = 'rsvp-mgmt-auth-direction-send'" { + description + "../AuthDirection = 'RSVPMgmtAuthDirectionSend'"; + } + description + "send info"; + uses RSVP-MGMT-AUTH-DIRECTION-SEND; + } + container receive-info { + when "../auth-direction = 'rsvp-mgmt-auth-direction-recv'" { + description + "../AuthDirection = 'RSVPMgmtAuthDirectionRecv'"; + } + description + "receive info"; + uses RSVP-MGMT-AUTH-DIRECTION-RECV; + } + leaf auth-direction { + type Rsvp-mgmt-auth-direction; + description + "AuthDirection"; + } + } + + grouping RSVP-MGMT-AUTHENTICATION-DETAIL { + description + "Authentication Detail Information"; + container auth-compact { + description + "Basic authentication data"; + uses RSVP-MGMT-AUTHENTICATION-COMPACT; + } + container direction-info { + description + "direction info"; + uses RSVP-MGMT-AUTH-DIRECTION; + } + leaf key-status { + type uint32; + description + "Key status"; + } + leaf key-digest-info { + type uint32; + description + "Direction"; + } + leaf lifetime { + type uint32; + units "second"; + description + "Lifetime (seconds)"; + } + leaf lifetime-left { + type uint32; + units "second"; + description + "Remaining lifetime (seconds)"; + } + leaf challenge-status { + type Rsvp-mgmt-auth-challenge-status; + description + "Challenge status"; + } + } + + grouping RSVP-MGMT-HELLO-INSTANCE-COMPACT { + description + "Compact Info for RSVP Hello Instance"; + leaf source-address-xr { + type inet:ipv4-address; + description + "Source address"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "Destination address"; + } + leaf neighbor-hello-state { + type Rsvp-mgmt-hello-state; + description + "Neighbor Hello state"; + } + leaf instance-type { + type Rsvp-mgmt-hello-instance; + description + "Hello instance type"; + } + leaf hello-interface { + type xr:Interface-name; + description + "Interface to use"; + } + leaf lost-communication-total { + type uint16; + description + "Total number of times communication got lost"; + } + } + + grouping RSVP-MGMT-RSB-FLAGS { + description + "Reservation State Block Flags"; + leaf is-local-receiver { + type boolean; + description + "Local Receiver"; + } + leaf is-message-id-valid { + type boolean; + description + "MessageID Valid"; + } + leaf is-local-repair { + type boolean; + description + "Rerouted"; + } + leaf is-merge-point { + type boolean; + description + "Is node a Merge Point"; + } + leaf is-lockout { + type boolean; + description + "Locked Out"; + } + } + + grouping RSVP-MGMT-STYLE { + description + "RSVP Reservation Style"; + leaf reservation-type { + type Rsvp-mgmt-reservation-type-enum; + description + "The Reservation Type: WF, SE or FF"; + } + } + + grouping RSVP-MGMT-FLOW-SPEC-G709-OTN { + description + "RSVP G709 OTN FlowSpec Info"; + leaf flow-signal-type { + type uint8; + description + "G709 OTN Flow Signal Type (Refer G709 v3)"; + } + leaf flow-nvc { + type uint16; + description + "G709 OTN Flow NVC"; + } + leaf flow-multiplier { + type uint16; + description + "G709 OTN Flow Multiplier"; + } + leaf flow-bit-rate { + type uint64; + description + "G709 OTN Flow Bit Rate"; + } + } + + grouping RSVP-MGMT-GEN-FLOW-SPEC { + description + "Union of different RSVP Generic FlowSpec types"; + container g709otn-flow-spec { + when "../flow-spec-type = 'g709otn'" { + description + "../FlowSpecType = 'G709OTN'"; + } + description + "G709 OTN FlowSpec"; + uses RSVP-MGMT-FLOW-SPEC-G709-OTN; + } + leaf flow-spec-type { + type Rsvp-mgmt-flow-spec; + description + "FlowSpecType"; + } + } + + grouping RSVP-MGMT-FLOW-SPEC { + description + "RSVP Flow Spec"; + leaf flow-average-rate { + type uint64; + units "byte/s"; + description + "The Flow Average Rate in bytes per second"; + } + leaf flow-max-burst { + type uint64; + description + "The Flow Maximum Burst"; + } + leaf flow-peak-rate { + type uint64; + units "byte/s"; + description + "The Flow Peak Rate in bytes per second"; + } + leaf flow-min-unit { + type uint32; + description + "The Flow Minimum Unit"; + } + leaf flow-max-unit { + type uint32; + description + "The Flow Maximum Unit"; + } + leaf flow-requested-rate { + type uint64; + units "byte/s"; + description + "The Flow Requested Rate in bytes per second"; + } + leaf flow-slack { + type uint32; + description + "The Flow Slack"; + } + leaf flow-qos { + type Rsvp-mgmt-qos-service-enum; + description + "The Flow Quality of Service"; + } + } + + grouping RSVP-MGMT-RESERVATION-DETAIL { + description + "Detailed Form of RSVP Reservation Info"; + container flow-spec { + description + "Flow Spec Information"; + uses RSVP-MGMT-FLOW-SPEC; + } + container generic-flow-spec { + description + "Generic Flow Spec Information"; + uses RSVP-MGMT-GEN-FLOW-SPEC; + } + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container style { + description + "RSVP Style"; + uses RSVP-MGMT-STYLE; + } + container filter { + description + "RSVP Filter"; + uses RSVP-MGMT-FILTER-INFO; + } + container rsb-flags { + description + "Reservation State Block Flags"; + uses RSVP-MGMT-RSB-FLAGS; + } + container hop { + description + "Hop Infomation"; + uses RSVP-MGMT-HOP-INFO; + } + container policy-sources { + description + "RSVP Policy Sources"; + uses RSVP-MGMT-POLICY-SOURCES; + } + container header { + description + "RSVP Header Information"; + uses RSVP-MGMT-HEADER-INFO; + } + container policy-flags { + description + "RSVP Policy Flags"; + uses RSVP-MGMT-POLICY-FLAGS; + } + container expiry-time { + description + "Expiry Time"; + uses RSVP-MGMT-TIMESPEC; + } + container policy-query-flags { + description + "RSVP Query Flags"; + uses RSVP-MGMT-POLICY-QUERY-FLAGS; + } + container label-info { + description + "Label Information"; + uses RSVP-MGMT-LABEL-INFO; + } + leaf input-adjusted-interface { + type string; + description + "Input Adjusted Interface"; + } + leaf input-physical-interface { + type string; + description + "Input Physical Interface"; + } + } + + grouping RSVP-MGMT-FRR-STATE-STATUS-COUNTERS { + description + "FRR state counters"; + leaf total { + type uint32; + description + "Total number of instances of this state"; + } + leaf active-instances { + type uint32; + description + "Number of active instances of this state"; + } + leaf ready-instances { + type uint32; + description + "Number of ready instances of this state"; + } + leaf active-wait-instances { + type uint32; + description + "Number of instances of this state awaiting Path + messages to be sent out or Resv messages to be + received"; + } + } + + grouping RSVP-MGMT-FRR-STATES-COMPACT { + description + "Count of RSVP FRR States"; + container path-states { + description + "Path state counters"; + uses RSVP-MGMT-FRR-STATE-STATUS-COUNTERS; + } + container reservation-states { + description + "Rerservation state counters"; + uses RSVP-MGMT-FRR-STATE-STATUS-COUNTERS; + } + } + + grouping RSVP-MGMT-MESSAGEID { + description + "RSVP Message ID"; + leaf message-id { + type Rsvp-mgmt-messageid; + description + "Message ID"; + } + } + + grouping RSVP-MGMT-NBOR { + description + "Neighbor"; + container expiry-time { + description + "Expiry time"; + uses RSVP-MGMT-TIMESPEC; + } + leaf is-neighbor-refresh-reduction-capable { + type boolean; + description + "Is neighbor capable of Refresh Reduction"; + } + leaf neighbor-address { + type inet:ipv4-address; + description + "IP address of the neighbor"; + } + leaf message-ids { + type uint32; + description + "Number of MessageIDs"; + } + leaf outgoing-states { + type int32; + description + "Number of outgoing states to the neighbour"; + } + list neighbor-message-id { + max-elements "6"; + description + "List of Neighbor MessageIDs"; + uses RSVP-MGMT-MESSAGEID; + } + } + + grouping RSVP-MGMT-INTERFACE-FLAGS { + description + "Interface related flags"; + leaf is-mpls-enabled { + type boolean; + description + "MPLS enabled on interface"; + } + leaf is-refresh-reduction-enabled { + type boolean; + description + "Refresh Reduction enabled"; + } + leaf is-pacing-enabled { + type boolean; + description + "Message pacing enabled"; + } + leaf is-refresh-enabled { + type boolean; + description + "Refresh enabled"; + } + leaf is-s-refresh-enabled { + type boolean; + description + "Summary Refresh enabled"; + } + leaf is-interface-down { + type boolean; + description + "Interface is DOWN"; + } + leaf is-interface-created { + type boolean; + description + "Interface is created"; + } + leaf is-rel-s-refresh-enabled { + type boolean; + description + "Use reliable xmt for SRefresh"; + } + leaf is-backup-tunnel { + type boolean; + description + "This is backup tunnel"; + } + leaf is-rsvp-configured { + type boolean; + description + "RSVP explicitly configured"; + } + leaf is-non-default-vrf { + type boolean; + description + "Interface is defined in non-Default VRF"; + } + leaf is-message-bundling-enabled { + type boolean; + description + "Use bundling for outgoing RSVP messages."; + } + } + + grouping RSVP-MGMT-INTERFACE-DETAIL { + description + "Detail Form of RSVP interface Info"; + container bandwidth-information { + description + "Interface bandwidth information"; + uses RSVP-MGMT-DSTE-MODE-INTERFACE-BW; + } + container flags { + description + "Interface flags"; + uses RSVP-MGMT-INTERFACE-FLAGS; + } + leaf interface-name-xr { + type string; + description + "Interface Name"; + } + leaf signalling-ip-tos { + type uint8; + description + "IP TOS (precedence/DSCP) to use in signalling + messages"; + } + leaf integrity-send-password { + type string { + length "0..40"; + } + description + "Integrity send password"; + } + leaf integrity-receive-password { + type string { + length "0..40"; + } + description + "Integrity receive password"; + } + leaf integrity-receive-password-optional { + type uint8; + description + "Integrity recv password optional"; + } + leaf refresh-timer-state { + type Rsvp-timer-state; + description + "Refresh timer state"; + } + leaf summary-refresh-timer-state { + type Rsvp-timer-state; + description + "Summary refresh timer state"; + } + leaf refresh-interval { + type int32; + units "millisecond"; + description + "Refresh interval in msecs"; + } + leaf out-of-band-refresh-interval { + type uint32; + units "millisecond"; + description + "Out-of-band Refresh interval in msecs"; + } + leaf summary-refresh-max-size { + type uint32; + units "byte"; + description + "Max size in bytes of a single SRefresh"; + } + leaf bundle-message-max-size { + type uint32; + units "byte"; + description + "Max size in bytes of a single Bundle message"; + } + leaf expiry-timer-state { + type Rsvp-timer-state; + description + "Expiry timer state"; + } + leaf expiry-states { + type int32; + description + "Number of states for expiry check"; + } + leaf expiry-interval { + type int32; + units "millisecond"; + description + "Expiry interval in msecs"; + } + leaf expiry-drops-tolerated { + type int32; + description + "Number of missed messages tolerated"; + } + leaf out-of-band-expiry-drops-tolerated { + type uint32; + description + "Number of out-of-band missed messages tolerated"; + } + leaf ack-hold-time { + type uint32; + description + "ACK hold time in msec"; + } + leaf ack-max-size { + type uint32; + description + "Max size for ACK message"; + } + leaf retransmit-time { + type uint32; + description + "Retransmit time in msec"; + } + leaf pacing-interval { + type uint32; + units "millisecond"; + description + "Pacing interval in msecs"; + } + leaf pacing-message-rate { + type uint32; + description + "No. of messages per interval"; + } + leaf pacing-timer-state { + type Rsvp-timer-state; + description + "State of pacing timer"; + } + leaf pacing-messages { + type int32; + description + "Number of messages deferred for pacing"; + } + list neighbor-array { + max-elements "6"; + description + "Neighbor array"; + uses RSVP-MGMT-NBOR; + } + } + + grouping RSVP-MGMT-ERO-UNNUM-SUBOBJ { + description + "RSVP ERO UNNUM subobject"; + leaf is-strict-route { + type boolean; + description + "ERO Entry Is Strict"; + } + leaf ero-interface-id { + type uint32; + description + "The Interface ID in ERO"; + } + leaf ero-router-id { + type inet:ipv4-address; + description + "The Router ID in ERO"; + } + leaf status { + type Rsvp-mgmt-ero-subobj-status; + description + "Status of ERO"; + } + } + + grouping RSVP-MGMT-ERO-IPV4-SUBOBJ { + description + "RSVP ERO IPV4 subobject"; + leaf is-strict-route { + type boolean; + description + "ERO Entry Is Strict"; + } + leaf ero-address { + type inet:ipv4-address; + description + "The ERO IPV4 Address"; + } + leaf prefix-length { + type uint8; + description + "ERO Prefix Length"; + } + } + + grouping RSVP-MGMT-ERO-SUBOBJ { + description + "Union of the different RSVP ERO types"; + container ipv4ero-sub-object { + when "../ero-type = 'rsvp-mgmt-ero-type-ipv4'" { + description + "../EROType = 'RSVP_MGMT_ERO_TYPE_IPv4'"; + } + description + "IPV4 ERO Sub Object"; + uses RSVP-MGMT-ERO-IPV4-SUBOBJ; + } + container unnumbered-ero-sub-object { + when "../ero-type = 'rsvp-mgmt-ero-type-un-num'" { + description + "../EROType = 'RSVP_MGMT_ERO_TYPE_UNNUM'"; + } + description + "Unnumbered ERO Sub Object"; + uses RSVP-MGMT-ERO-UNNUM-SUBOBJ; + } + leaf ero-type { + type Rsvp-mgmt-ero-subobj; + description + "EROType"; + } + } + + grouping RSVP-MGMT-CT-INFO { + description + "Class-Type Information"; + leaf is-class-type-info-valid { + type boolean; + description + "Is the Class-Type information valid"; + } + leaf class-type { + type uint8; + description + "DS-TE Class-Type"; + } + } + + grouping RSVP-MGMT-GENERALIZED-LABEL { + description + "RSVP Generalized Label"; + list value { + description + "Generalized Label Value"; + leaf entry { + type uint32; + description + "Generalized Label Value"; + } + } + } + + grouping RSVP-MGMT-GENERIC-LABEL { + description + "Union of different RSVP Generic Label types"; + container generalized-label { + when "../generic-label-type = 'rsvp-mgmt-label-type-gmpls'" { + description + "../GenericLabelType = + 'RSVP_MGMT_LABEL_TYPE_GMPLS'"; + } + description + "Generalized Label"; + uses RSVP-MGMT-GENERALIZED-LABEL; + } + leaf generic-label-type { + type Rsvp-mgmt-generic-label; + description + "GenericLabelType"; + } + } + + grouping RSVP-MGMT-LABEL-INFO { + description + "Label Information"; + container generic-local-downstream-label { + description + "Generic Local Downstream Label"; + uses RSVP-MGMT-GENERIC-LABEL; + } + container generic-outgoing-downstream-label { + description + "Generic Outgoing Downstream Label"; + uses RSVP-MGMT-GENERIC-LABEL; + } + container generic-merge-point-label { + description + "Generic MergePoint Label"; + uses RSVP-MGMT-GENERIC-LABEL; + } + container generic-outgoing-upstream-label { + description + "Generic Outgoing Upstream Label"; + uses RSVP-MGMT-GENERIC-LABEL; + } + container generic-local-upstream-label { + description + "Generic Local Upstream Label"; + uses RSVP-MGMT-GENERIC-LABEL; + } + container generic-recovery-label { + description + "Generic Recovery Label"; + uses RSVP-MGMT-GENERIC-LABEL; + } + leaf is-valid { + type boolean; + description + "Is the label information valid"; + } + leaf local-downstream-label { + type Rsvp-mgmt-mpls-label; + description + "Local Downstream Label"; + } + leaf outgoing-downstream-label { + type Rsvp-mgmt-mpls-label; + description + "Outgoing Downstream Label"; + } + leaf merge-point-label { + type Rsvp-mgmt-mpls-label; + description + "MergePoint Label"; + } + leaf outgoing-upstream-label { + type Rsvp-mgmt-mpls-label; + description + "Outgoing Upstream Label"; + } + leaf local-upstream-label { + type Rsvp-mgmt-mpls-label; + description + "Local Upstream Label"; + } + leaf recovery-label { + type Rsvp-mgmt-mpls-label; + description + "Recovery Label"; + } + leaf lsp-wrap-label { + type Rsvp-mgmt-mpls-label; + description + "LSP Wrap Label"; + } + } + + grouping RSVP-PATH-FORWARDING-CONTEXT { + description + "RSVP Path Forwarding Context"; + container policy-flags { + description + "Policy Flags"; + uses RSVP-MGMT-POLICY-FLAGS; + } + container policy-query-flags { + description + "Policy Query Flags"; + uses RSVP-MGMT-POLICY-QUERY-FLAGS; + } + leaf output-interface { + type string; + description + "Output interface"; + } + } + + grouping RSVP-MGMT-POLICY-QUERY-FLAGS { + description + "RSVP Policy Query Flags"; + leaf is-needed { + type boolean; + description + "Needed"; + } + leaf is-report-required { + type boolean; + description + "Report Required"; + } + leaf is-resync { + type boolean; + description + "Resynchronization"; + } + leaf is-bypass { + type boolean; + description + "Bypass"; + } + } + + grouping RSVP-MGMT-POLICY-FLAGS { + description + "RSVP Policy Flags"; + leaf is-accepted { + type boolean; + description + "Accepted"; + } + leaf is-installed { + type boolean; + description + "Installed"; + } + leaf is-forwarding { + type boolean; + description + "Forwarding"; + } + } + + grouping RSVP-MGMT-TIMESPEC { + description + "RSVP Time Spec"; + leaf seconds { + type int32; + units "second"; + description + "Time Value in Seconds"; + } + leaf nanoseconds { + type int32; + units "nanosecond"; + description + "Time Value in Nano-seconds"; + } + } + + grouping RSVP-MGMT-HEADER-INFO { + description + "RSVP/IP Header Info"; + leaf rsvp-version { + type uint8; + description + "RSVP Version"; + } + leaf rsvp-header-flags { + type uint8; + description + "RSVP Header Flags (defined in RFC2205 Section 3 + .1.1)"; + } + leaf rsvp-ttl { + type uint8; + description + "RSVP TTL"; + } + leaf rsvp-message-type { + type uint8; + description + "RSVP Message Type"; + } + leaf ip-tos { + type uint8; + description + "IP Type of Service"; + } + leaf ip-ttl { + type uint8; + description + "IP TTL"; + } + leaf ip-source-address { + type inet:ipv4-address; + description + "IP Source Address"; + } + } + + grouping RSVP-MGMT-POLICY-SOURCES { + description + "RSVP Policy Sources"; + leaf is-te-link { + type boolean; + description + "Policy Source is TE Link"; + } + leaf is-local { + type boolean; + description + "Policy Source is Local"; + } + leaf is-cops { + type boolean; + description + "Policy Source is COPS"; + } + leaf is-default { + type boolean; + description + "Policy Source is Default"; + } + leaf is-cable { + type boolean; + description + "Policy Source is Cable"; + } + } + + grouping RSVP-MGMT-HOP-INFO { + description + "Hop Info"; + leaf neighbor-address { + type inet:ipv4-address; + description + "IP address of the neighbor"; + } + leaf neighbor-logical-interface-handle { + type uint32; + description + "Neighbor Logical Interface Handle"; + } + } + + grouping RSVP-MGMT-PATH-FLAGS { + description + "RSVP Path Flags"; + leaf is-non-rsvp-hop-upstream { + type boolean; + description + "Non-RSVP Hop Upstream"; + } + leaf is-local-sender { + type boolean; + description + "Local Sender"; + } + leaf is-message-id-valid { + type boolean; + description + "MessageID Valid"; + } + leaf is-local-repair { + type boolean; + description + "Rerouted"; + } + leaf is-bidirectional { + type boolean; + description + "Bidirectional"; + } + leaf is-lockout { + type boolean; + description + "Locked Out"; + } + } + + grouping RSVP-MGMT-TSPEC-G709-OTN { + description + "RSVP G709 OTN Sender Tspec Info"; + leaf traffic-signal-type { + type uint8; + description + "G709 OTN Traffic Signal Type (Refer G709 v3)"; + } + leaf traffic-nvc { + type uint16; + description + "G709 OTN Traffic NVC"; + } + leaf traffic-multiplier { + type uint16; + description + "G709 OTN Traffic Multiplier"; + } + leaf traffic-bit-rate { + type uint64; + description + "G709 OTN Traffic Bit Rate"; + } + } + + grouping RSVP-MGMT-GEN-TRAFFIC-SPEC { + description + "Union of different RSVP Generic Sender Tspec + types"; + container g709otn-tspec { + when "../tspec-type = 'g709otn'" { + description + "../TspecType = 'G709OTN'"; + } + description + "G709 OTN Sender Tspec"; + uses RSVP-MGMT-TSPEC-G709-OTN; + } + container intsrv-tspec { + when "../tspec-type = 'intsrv'" { + description + "../TspecType = 'INTSRV'"; + } + description + "Integrated Services Sender Tspec"; + uses RSVP-MGMT-TRAFFIC-SPEC; + } + leaf tspec-type { + type Rsvp-mgmt-tspec; + description + "TspecType"; + } + } + + grouping RSVP-MGMT-TRAFFIC-SPEC { + description + "RSVP Traffic Spec Info"; + leaf traffic-average-rate { + type uint64; + units "byte/s"; + description + "Traffic Average Rate in bytes per second"; + } + leaf traffic-max-burst { + type uint64; + description + "Traffic Maximum Burst"; + } + leaf traffic-peak-rate { + type uint64; + units "byte/s"; + description + "Traffic Peak Rate in bytes per second"; + } + leaf traffic-min-unit { + type uint32; + description + "Traffic Minimum Unit"; + } + leaf traffic-max-unit { + type uint32; + description + "Traffic Maximum Unit"; + } + } + + grouping RSVP-MGMT-SESSION-ATTRIBUTE-FLAGS { + description + "RSVP Session Attribute Flags"; + leaf is-local-protect { + type boolean; + description + "Local Protection"; + } + leaf is-node-protect { + type boolean; + description + "Node Protection"; + } + leaf is-bandwidth-protect { + type boolean; + description + "Bandwidth Protection"; + } + leaf is-record-labels { + type boolean; + description + "Records Labels"; + } + leaf is-shared-explicit-requested { + type boolean; + description + "Shared Explicit Requested"; + } + } + + grouping RSVP-MGMT-SESSION-ATTRIBUTE { + description + "RSVP Session Attributes"; + container sess-attribute-flags { + description + "Session Attributes"; + uses RSVP-MGMT-SESSION-ATTRIBUTE-FLAGS; + } + leaf setup-priority { + type uint8; + description + "Setup Priority"; + } + leaf reservation-priority { + type uint8; + description + "Reservation Priority"; + } + } + + grouping RSVP-MGMT-FILTER-P2MP-IPV4 { + description + "RSVP P2MP IPv4 FilterSpec"; + leaf source-address { + type inet:ipv4-address; + description + "Source Address"; + } + leaf source-port { + type uint16; + description + "Source Port"; + } + leaf p2mp-sub-group-origin { + type inet:ipv4-address; + description + "Point to Multipoint SubGroup Origin"; + } + leaf sub-group-id { + type uint16; + description + "Point to Multipoint Subgroup ID"; + } + } + + grouping RSVP-MGMT-FILTER-IPV4 { + description + "RSVP Filter"; + leaf source-address { + type inet:ipv4-address; + description + "Source Address"; + } + leaf source-port { + type uint16; + description + "Source Port"; + } + } + + grouping RSVP-FILTER-UNION { + description + "Union of the different RSVP filterspec types"; + container udp-ipv4-session { + when "../filter-type = 'rsvp-mgmt-filter-type-ipv4'" { + description + "../FilterType = 'RSVPMgmtFilterTypeIPv4'"; + } + description + "UDP IPV4 FilterSpec"; + uses RSVP-MGMT-FILTER-IPV4; + } + container p2mp-ipv4-session { + when "../filter-type = 'rsvp-mgmt-filter-type-p2mp-lsp-ipv4'" { + description + "../FilterType = + 'RSVPMgmtFilterTypeP2MP_LSP_IPv4'"; + } + description + "IPv4 P2MP LSP FilterSpec"; + uses RSVP-MGMT-FILTER-P2MP-IPV4; + } + leaf filter-type { + type Rsvp-mgmt-filter; + description + "FilterType"; + } + } + + grouping RSVP-MGMT-FILTER-INFO { + description + "RSVP FilterSpec Info"; + container rsvp-filter { + description + "RSVP Filter"; + uses RSVP-FILTER-UNION; + } + } + + grouping RSVP-MGMT-S2L-SUB-LSP-IPV4 { + description + "RSVP S2L Sub-LSP"; + leaf s2l-destination-address { + type inet:ipv4-address; + description + "S2L Sub-LSP Destination Address"; + } + } + + grouping RSVP-MGMT-PATH-DETAIL { + description + "Detailed Form of RSVP Path Info"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + container s2l-sub-lsp { + description + "RSVP S2L Sub-LSP information"; + uses RSVP-MGMT-S2L-SUB-LSP-IPV4; + } + container template { + description + "RSVP Template"; + uses RSVP-MGMT-FILTER-INFO; + } + container session-attribute { + description + "RSVP Session Attribute"; + uses RSVP-MGMT-SESSION-ATTRIBUTE; + } + container traffic-spec { + description + "RSVP Traffic Spec Info"; + uses RSVP-MGMT-TRAFFIC-SPEC; + } + container generic-traffic-spec { + description + "RSVP Generic Traffic Spec Info"; + uses RSVP-MGMT-GEN-TRAFFIC-SPEC; + } + container path-flags { + description + "Path Flags"; + uses RSVP-MGMT-PATH-FLAGS; + } + container hop { + description + "Path Hop Info"; + uses RSVP-MGMT-HOP-INFO; + } + container policy-source-info { + description + "Policy Sources Info"; + uses RSVP-MGMT-POLICY-SOURCES; + } + container header { + description + "RSVP Header Info"; + uses RSVP-MGMT-HEADER-INFO; + } + container expiry-time { + description + "Expiry Time"; + uses RSVP-MGMT-TIMESPEC; + } + container policy-flags { + description + "Policy Flags"; + uses RSVP-MGMT-POLICY-FLAGS; + } + container policy-query-flags { + description + "Policy Query Flags"; + uses RSVP-MGMT-POLICY-QUERY-FLAGS; + } + container label-info { + description + "Label Information"; + uses RSVP-MGMT-LABEL-INFO; + } + container class-type { + description + "DS-TE Class-Type"; + uses RSVP-MGMT-CT-INFO; + } + leaf input-interface { + type string; + description + "Path Input Interface"; + } + leaf backup-tunnel-name { + type string; + description + "Path Backup Tunnel"; + } + leaf is-in-ero-valid { + type boolean; + description + "Incoming ERO validity"; + } + leaf is-out-ero-valid { + type boolean; + description + "Outgoing ERO validity"; + } + list pfc { + description + "Path Forwarding Contexts"; + uses RSVP-PATH-FORWARDING-CONTEXT; + } + list in-ero { + description + "Incoming Explicit Route Sub Objects"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + list out-ero { + description + "Outgoing Explicit Route Sub Objects"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + } + + grouping RSVP-MGMT-SESSION-P2MP-LSP-TUNNEL-IPV4 { + description + "RSVP P2MP-LSP-Tunnel-IPv4 Session"; + leaf p2mp-id { + type uint32; + description + "The Point to Multipoint ID"; + } + leaf tunnel-id { + type uint16; + description + "The Session Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "The Session Extended Tunnel ID"; + } + } + + grouping RSVP-MGMT-SESSION-UNI-IPV4 { + description + "RSVP UNI IPv4 Session"; + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf tunnel-id { + type uint16; + description + "The Session Tunnel ID"; + } + leaf extended-address { + type inet:ipv4-address; + description + "The Session Extended Address"; + } + } + + grouping RSVP-MGMT-SESSION-LSP-TUNNEL-IPV4 { + description + "RSVP LSP-Tunnel-IPv4 Session"; + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf tunnel-id { + type uint16; + description + "The Session Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "The Session Extended Tunnel ID"; + } + } + + grouping RSVP-MGMT-SESSION-UDP-IPV4 { + description + "RSVP UDP IPv4 Session"; + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf protocol { + type uint8; + description + "Protocol type (originally defined in RFC 790, + further values in subsequent RFCs)"; + } + leaf destination-port { + type uint16; + description + "The Session Destination Port"; + } + } + + grouping RSVP-SESSION-UNION { + description + "Union of the different RSVP session types"; + container ipv4 { + when "../session-type = 'rsvp-mgmt-session-type-udp-ipv4'" { + description + "../SessionType = 'RSVPMgmtSessionTypeUDP_IPv4'"; + } + description + "UDP IPv4 session"; + uses RSVP-MGMT-SESSION-UDP-IPV4; + } + container ipv4-lsp-session { + when "../session-type = 'rsvp-mgmt-session-type-lsp-ipv4'" { + description + "../SessionType = 'RSVPMgmtSessionTypeLSP_IPv4'"; + } + description + "IPv4 LSP session"; + uses RSVP-MGMT-SESSION-LSP-TUNNEL-IPV4; + } + container ipv4-uni-session { + when "../session-type = 'rsvp-mgmt-session-type-uni-ipv4'" { + description + "../SessionType = 'RSVPMgmtSessionTypeUNI_IPv4'"; + } + description + "IPv4 UNI session"; + uses RSVP-MGMT-SESSION-UNI-IPV4; + } + container ipv4-p2mp-lsp-session { + when "../session-type = 'rsvp-mgmt-session-type-p2mp-lsp-ipv4'" { + description + "../SessionType = + 'RSVPMgmtSessionTypeP2MP_LSP_IPv4'"; + } + description + "IPv4 P2MP LSP session"; + uses RSVP-MGMT-SESSION-P2MP-LSP-TUNNEL-IPV4; + } + leaf session-type { + type Rsvp-mgmt-session; + description + "SessionType"; + } + } + + grouping RSVP-MGMT-SESSION-INFO { + description + "RSVP Session Info"; + container rsvp-session { + description + "RSVP Session"; + uses RSVP-SESSION-UNION; + } + } + + grouping RSVP-MGMT-SESSION-COMPACT { + description + "RSVP Compact Session Info"; + container session { + description + "RSVP Session Information"; + uses RSVP-MGMT-SESSION-INFO; + } + leaf ps-bs { + type uint32; + description + "Number of path state block states"; + } + leaf rs-bs { + type uint32; + description + "Number of reservation state block states"; + } + leaf requests { + type uint32; + description + "Number of request states"; + } + leaf detail-list-size { + type uint32; + description + "Number of elements in detail list"; + } + } + + grouping RSVP-MGMT-AUTHENTICATION-COMPACT { + description + "Authentication Compact Information"; + leaf source-address-xr { + type inet:ipv4-address; + description + "Source address"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "Destination address"; + } + leaf neighbor-address { + type inet:ipv4-address; + description + "Neighbor address"; + } + leaf direction { + type Rsvp-mgmt-auth-direction; + description + "Direction"; + } + leaf key-type { + type Rsvp-mgmt-auth-ki; + description + "Key type"; + } + leaf key-source { + type string; + description + "Key source"; + } + leaf key-id { + type uint64; + description + "Key ID"; + } + leaf key-id-valid { + type uint32; + description + "Key validity"; + } + } + + grouping RSVP-MGMT-INTERFACE-BW-STD-DSTE { + description + "RSVP interface bandwidth info with standard based + DSTE enabled"; + leaf allocated-bit-rate { + type uint64; + units "bit/s"; + description + "Bandwidth (bits per second) now allocated"; + } + leaf max-flow-bandwidth { + type uint64; + units "bit/s"; + description + "Max bandwidth (bits per second) allowed per flow"; + } + leaf max-bandwidth { + type uint64; + units "bit/s"; + description + "Max bandwidth (bits per second) allowed"; + } + leaf max-pool0-bandwidth { + type uint64; + units "bit/s"; + description + "Max bandwidth (bits per second) allowed in BC0 + pool"; + } + leaf max-pool1-bandwidth { + type uint64; + units "bit/s"; + description + "Max bandwidth (bits per second) allowed in BC1 + pool"; + } + leaf is-max-bandwidth-absolute { + type boolean; + description + "True if the Max B/W is an absolute value and + false if its a percentage"; + } + leaf is-max-bc0-bandwidth-absolute { + type boolean; + description + "True if the Max BC0 B/W is an absolute value and + false if its a percentage"; + } + leaf is-max-bc1-bandwidth-absolute { + type boolean; + description + "True if the Max BC1 sub-pool B/W is an absolute + value and false if its a percentage"; + } + } + + grouping RSVP-MGMT-INTERFACE-BW-PRESTD-DSTE { + description + "Prestandard DSTE interface bandwidth information"; + leaf allocated-bit-rate { + type uint64; + units "bit/s"; + description + "Bandwidth (bits per second) now allocated"; + } + leaf max-flow-bandwidth { + type uint64; + units "bit/s"; + description + "Max bandwidth (bits per second) allowed per flow"; + } + leaf max-bandwidth { + type uint64; + units "bit/s"; + description + "Max bandwidth (bits per second) allowed"; + } + leaf max-subpool-bandwidth { + type uint64; + units "bit/s"; + description + "Max bandwidth (bits per second) allowed in + subpool"; + } + leaf is-max-bandwidth-absolute { + type boolean; + description + "True if the Max B/W is an absolute value and + false if its a percentage"; + } + leaf is-max-subpool-bandwidth-absolute { + type boolean; + description + "True if the Max sub-pool B/W is an absolute + value and false if its a percentage"; + } + } + + grouping RSVP-MGMT-DSTE-MODE-INTERFACE-BW { + description + "Union of the different RSVP interface bandwidth + types"; + container pre-standard-dste-interface { + when "../dste-mode = 'pre-standard'" { + description + "../DSTEMode = 'PreStandard'"; + } + description + "Prestandard DSTE interface information"; + uses RSVP-MGMT-INTERFACE-BW-PRESTD-DSTE; + } + container standard-dste-interface { + when "../dste-mode = 'standard'" { + description + "../DSTEMode = 'Standard'"; + } + description + "Standard DSTE interface information"; + uses RSVP-MGMT-INTERFACE-BW-STD-DSTE; + } + leaf dste-mode { + type Rsvp-mgmt-dste-modes; + description + "DSTEMode"; + } + } + + grouping RSVP-MGMT-INTERFACE-SUMMARY { + description + "Summary Form of RSVP interface Info"; + container bandwidth-information { + description + "Interface bandwidth information"; + uses RSVP-MGMT-DSTE-MODE-INTERFACE-BW; + } + leaf interface-name-xr { + type string; + description + "Interface Name"; + } + leaf paths-in { + type uint32; + description + "Number of locally created and incoming path + states"; + } + leaf paths-out { + type uint32; + description + "Number of outgoing path states"; + } + leaf reservations-in { + type uint32; + description + "Number of locally created and incoming + reservation states"; + } + leaf reservations-out { + type uint32; + description + "Number of outgoing reservation states"; + } + } + + grouping RSVP-MGMT-IF-NBR-COMPACT { + description + "Compact Info for RSVP Interface Neighbor"; + leaf interface-neighbor-address { + type inet:ipv4-address; + description + "Interface Neighbor address"; + } + leaf neighbor-interface-name { + type xr:Interface-name; + description + "Neighbor's Interface handle"; + } + } + + grouping RSVP-MGMT-NBR-COMPACT { + description + "Compact Info for RSVP Neighbor"; + leaf node-address { + type inet:ipv4-address; + description + "Neighbor node address"; + } + list interface-neighbor-list-compact { + description + "Compact list of I/F Neighbors"; + uses RSVP-MGMT-IF-NBR-COMPACT; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper.yang new file mode 100644 index 000000000..456c07f2f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-rsvp-oper.yang @@ -0,0 +1,1490 @@ +module Cisco-IOS-XR-ip-rsvp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-rsvp-oper"; + prefix ip-rsvp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-rsvp-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ip-rsvp package operational data. + + This module contains definitions + for the following management objects: + rsvp-standby: RSVP operational data for standby role + rsvp: RSVP operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rsvp-mode { + type enumeration { + enum "send" { + value 0; + description + "Send"; + } + enum "receive" { + value 1; + description + "Receive"; + } + } + description + "Rsvp mode"; + } + + typedef Rsvp-session { + type enumeration { + enum "ipv4" { + value 1; + description + "Show IPv4 sessions only"; + } + enum "p2p-lsp-ipv4" { + value 7; + description + "Show IPv4 P2P LSP sessions only"; + } + enum "ouni-ipv4" { + value 9; + description + "Show IPv4 OUNI sessions only"; + } + enum "p2mp-lsp-ipv4" { + value 13; + description + "Show IPv4 P2MP LSP sessions only"; + } + } + description + "Rsvp session"; + } + + grouping INTERFACE-NEIGHBOR-DETAIL-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container interface-neighbor-details { + description + "Table of detailed info about I/F neighbors"; + list interface-neighbor-detail { + key "neighbor-address"; + description + "Detailed info for a single interface neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Address of global neighbor"; + } + uses RSVP-MGMT-NBR-DETAIL; + } + } + } + + grouping COUNTERS { + description + "Common node of rsvp, rsvp-standby"; + container counters { + description + "Counters"; + container interface-messages { + description + "Table of message counters"; + list interface-message { + key "interface-name"; + description + "Interface message counters"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name. 'None' is used internally + where the true interface is unknown (e.g. for + routed packets)"; + } + uses RSVP-MGMT-COUNT-MESSAGE; + } + } + container message-summary { + description + "Summary information for all RSVP message + counters"; + uses RSVP-MGMT-COUNT-MESSAGE; + } + container prefix-filtering { + description + "Prefix filtering counters"; + container accesses { + description + "AccessList specific prefix filtering counters"; + list access { + key "access-list-name"; + description + "Prefix filtering counters for a specific + AccessList"; + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "AccessList Name"; + } + uses RSVP-MGMT-COUNT-PREFIX-ACL-INFO; + } + } + container interfaces { + description + "Interface specific prefix filtering counters"; + container summary { + description + "Summary of prefix filtering counts for all + interfaces"; + uses RSVP-MGMT-COUNT-PREFIX-INTERFACE-INFO; + } + container interfaces { + description + "Table of interface specific prefix filtering + counters"; + list interface { + key "interface-name"; + description + "Prefix filtering counters for a specific + interface"; + leaf interface-name { + type xr:Cisco-ios-xr-string; + description + "Interface Name. 'None' is used internally + where the true interface is unknown (e.g. + for routed packets)"; + } + uses RSVP-MGMT-COUNT-PREFIX-INTERFACE-INFO; + } + } + } + } + container out-of-resource { + description + "Out of resource counters"; + container interfaces { + description + "Interface specific out of resource counters"; + container summary { + description + "Summary of out of resource counts for all + interfaces"; + uses RSVP-MGMT-COUNTERS-OOR; + } + container interfaces { + description + "Table of interface specific out of resource + counters"; + list interface { + key "interface-name"; + description + "Out of resource counters for a specific + interface"; + leaf interface-name { + type xr:Cisco-ios-xr-string; + description + "Interface Name. 'None' is used internally + where the true interface is unknown (e.g. + for routed packets)"; + } + uses RSVP-MGMT-COUNTERS-OOR; + } + } + } + } + container interface-events { + description + "Event counters"; + list interface-event { + key "interface-name"; + description + "Event counters for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name. 'None' is used internally + where the true interface is unknown (e.g. for + routed packets)"; + } + uses RSVP-MGMT-EVENT-COUNT-INFO; + } + } + container nsr { + description + "Summary information for all RSVP NSR counters"; + uses RSVP-SYNC-COUNT-INFO; + } + container issu { + description + "Summary information for all RSVP ISSU counters"; + uses RSVP-SYNC-COUNT-INFO; + } + container database { + description + "Summary information for all RSVP database + counters"; + uses RSVP-MGMT-ALL-DB-COUNTERS; + } + container event-syncs { + description + "Table containing event sync counters"; + list event-sync { + key "interface-name"; + description + "Event sync counters"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses RSVP-MGMT-EVENT-COUNT-INFO; + } + } + } + } + + grouping HELLO-INTERFACE-INSTANCE-DETAIL-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container hello-interface-instance-details { + description + "Table of detailed info about i/f-based hello + instances"; + list hello-interface-instance-detail { + key "source-address destination-address"; + description + "Detailed info for a single interface-based + hello instance"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + uses RSVP-MGMT-HELLO-IF-INSTANCE-DETAIL; + } + } + } + + grouping AUTHENTICATION-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container authentication-briefs { + description + "Table for Authentication related information"; + list authentication-brief { + key "source-address destination-address mode-id interface-name"; + description + "Brief Authentication information"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf mode-id { + type Rsvp-mode; + description + "Mode (Tx or Rx)"; + } + leaf interface-name { + type xr:Interface-name; + description + "InterfaceName"; + } + uses RSVP-MGMT-AUTHENTICATION-COMPACT; + } + } + } + + grouping REQUEST-DETAIL-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container request-details { + description + "Table of detail info about requests"; + list request-detail { + description + "Detail info for a request"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-REQUEST-DETAIL; + } + } + } + + grouping RSB-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container rsb-briefs { + description + "Table of brief info about reservation state + blocks"; + list rsb-brief { + description + "Brief info for a single reservation state block"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port "; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-RESERVATION-COMPACT; + } + } + } + + grouping REQUEST-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container request-briefs { + description + "Table of brief info about requests"; + list request-brief { + description + "Brief info for a request"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-REQUEST-COMPACT; + } + } + } + + grouping HELLO-INTERFACE-INSTANCE-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container hello-interface-instance-briefs { + description + "Table of brief info about i/f-based hello + instances"; + list hello-interface-instance-brief { + key "source-address destination-address"; + description + "Brief info for a single interface-based hello + instance"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + uses RSVP-MGMT-HELLO-IF-INSTANCE-COMPACT; + } + } + } + + grouping INTERFACE-NEIGHBOR-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container interface-neighbor-briefs { + description + "Table of brief info about I/F neighbors"; + list interface-neighbor-brief { + key "neighbor-address"; + description + "Brief info for a single interface neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Address of global neighbor"; + } + uses RSVP-MGMT-NBR-COMPACT; + } + } + } + + grouping PSB-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container psb-briefs { + description + "Table of brief info about path state blocks"; + list psb-brief { + description + "Brief info for a single path state block"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port "; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-PATH-COMPACT; + } + } + } + + grouping GLOBAL-NEIGHBOR-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container global-neighbor-briefs { + description + "Table of brief info about global neighbors"; + list global-neighbor-brief { + key "neighbor-address"; + description + "Brief info for a single global neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Address of global neighbor"; + } + uses RSVP-MGMT-GLBL-NBR-COMPACT; + } + } + } + + grouping SESSION-DETAILED-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container session-detaileds { + description + "Table of detailed info about sessions"; + list session-detailed { + description + "Detailed info about session"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-SESSION-DETAIL; + } + } + } + + grouping AUTHENTICATION-DETAIL-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container authentication-details { + description + "Table for detailed authentication related + information"; + list authentication-detail { + key "source-address destination-address mode-id interface-name"; + description + "Brief Authentication information"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf mode-id { + type Rsvp-mode; + description + "Mode (Tx or Rx)"; + } + leaf interface-name { + type xr:Interface-name; + description + "InterfaceName"; + } + uses RSVP-MGMT-AUTHENTICATION-DETAIL; + } + } + } + + grouping GLOBAL-NEIGHBOR-DETAIL-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container global-neighbor-details { + description + "Table of detailed info about global neighbors"; + list global-neighbor-detail { + key "neighbor-address"; + description + "Detail info for a single global neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Address of global neighbor"; + } + uses RSVP-MGMT-GLBL-NBR-DETAIL; + } + } + } + + grouping INTERFACE-SUMMARY-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container interface-summaries { + description + "Table of summary info about RSVP-enabled + interfaces"; + list interface-summary { + key "interface-name"; + description + "Summary info about an RSVP-enabled interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses RSVP-MGMT-INTERFACE-SUMMARY; + } + } + } + + grouping INTERFACE-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container interface-briefs { + description + "Table of brief info about RSVP-enabled + interfaces"; + list interface-brief { + key "interface-name"; + description + "Brief info about an RSVP-enabled interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses RSVP-MGMT-INTERFACE-COMPACT; + } + } + } + + grouping HELLO-INSTANCE-DETAIL-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container hello-instance-details { + description + "Table of detailed info about hello instances"; + list hello-instance-detail { + key "source-address destination-address"; + description + "Detailed info for a single hello instance"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + uses RSVP-MGMT-HELLO-INSTANCE-DETAIL; + } + } + } + + grouping SUMMARY { + description + "Common node of rsvp, rsvp-standby"; + container summary { + description + "RSVP summary information"; + uses RSVP-GLOBAL-INFO; + } + } + + grouping PSB-DETAILED-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container psb-detaileds { + description + "Table of detailed info about path state blocks"; + list psb-detailed { + description + "Detailed info for a single path state block"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port "; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-PATH-DETAIL; + } + } + } + + grouping NSR { + description + "Common node of rsvp, rsvp-standby"; + container nsr { + description + "RSVP NSR information"; + container status { + description + "RSVP NSR status information"; + uses RSVP-NSR-ISSU-STATUS-INFO; + } + } + } + + grouping GRACEFUL-RESTART { + description + "Common node of rsvp, rsvp-standby"; + container graceful-restart { + description + "Info about graceful-restart"; + uses RSVP-MGMT-GRACEFUL-RESTART; + } + } + + grouping FRR-SUMMARY { + description + "Common node of rsvp, rsvp-standby"; + container frr-summary { + description + "Fast Re-Route Summary State Information"; + uses RSVP-MGMT-FRR-STATES-COMPACT; + } + } + + grouping RSB-DETAILED-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container rsb-detaileds { + description + "Table of detailed info about reservation state + blocks"; + list rsb-detailed { + description + "Detailed info for a single reservation state + block"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port "; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-RESERVATION-DETAIL; + } + } + } + + grouping HELLO-INSTANCE-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container hello-instance-briefs { + description + "Table of brief info about hello instances"; + list hello-instance-brief { + key "source-address destination-address"; + description + "Brief info for a single hello instance"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + uses RSVP-MGMT-HELLO-INSTANCE-COMPACT; + } + } + } + + grouping FRR-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container frrs { + description + "Table of detailed info about Fast Re-route + states"; + list frr { + description + "Detailed info for a single Fast Re-route state"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-FRR-STATES-DETAIL; + } + } + } + + grouping CONTROLLER-SUMMARY-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container controller-summaries { + description + "Table of summary info about RSVP-enabled + controllers"; + list controller-summary { + key "controller-name"; + description + "Summary info about an RSVP-enabled controller"; + leaf controller-name { + type xr:Interface-name; + description + "Controller Name"; + } + uses RSVP-MGMT-INTERFACE-SUMMARY; + } + } + } + + grouping SESSION-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container session-briefs { + description + "Table of brief info about sessions"; + list session-brief { + description + "Brief info about session"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-SESSION-COMPACT; + } + } + } + + grouping INTERFACE-DETAILED-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container interface-detaileds { + description + "Table of detailed info about RSVP-enabled + interfaces"; + list interface-detailed { + key "interface-name"; + description + "Detailed info about an RSVP-enabled interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses RSVP-MGMT-INTERFACE-DETAIL; + } + } + } + + grouping CONTROLLER-BRIEF-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container controller-briefs { + description + "Table of brief info about RSVP-enabled + controller"; + list controller-brief { + key "controller-name"; + description + "Brief info about an RSVP-enabled controller"; + leaf controller-name { + type xr:Interface-name; + description + "Controller Name"; + } + uses RSVP-MGMT-INTERFACE-COMPACT; + } + } + } + + grouping CONTROLLER-DETAILED-TABLE { + description + "Common node of rsvp, rsvp-standby"; + container controller-detaileds { + description + "Table of detailed info about RSVP-enabled + controllers"; + list controller-detailed { + key "controller-name"; + description + "Detailed info about an RSVP-enabled controller"; + leaf controller-name { + type xr:Interface-name; + description + "Controller Name"; + } + uses RSVP-MGMT-INTERFACE-DETAIL; + } + } + } + + container rsvp-standby { + config false; + description + "RSVP operational data for standby role"; + uses INTERFACE-NEIGHBOR-BRIEF-TABLE; + uses CONTROLLER-SUMMARY-TABLE; + uses AUTHENTICATION-BRIEF-TABLE; + uses SESSION-BRIEF-TABLE; + uses PSB-DETAILED-TABLE; + uses CONTROLLER-DETAILED-TABLE; + uses FRR-SUMMARY; + uses RSB-DETAILED-TABLE; + uses INTERFACE-SUMMARY-TABLE; + uses HELLO-INSTANCE-BRIEF-TABLE; + uses AUTHENTICATION-DETAIL-TABLE; + uses RSB-BRIEF-TABLE; + uses COUNTERS; + uses INTERFACE-DETAILED-TABLE; + uses CONTROLLER-BRIEF-TABLE; + uses GRACEFUL-RESTART; + uses HELLO-INTERFACE-INSTANCE-BRIEF-TABLE; + uses HELLO-INTERFACE-INSTANCE-DETAIL-TABLE; + uses INTERFACE-NEIGHBOR-DETAIL-TABLE; + uses NSR; + uses SUMMARY; + uses FRR-TABLE; + uses REQUEST-BRIEF-TABLE; + uses REQUEST-DETAIL-TABLE; + uses INTERFACE-BRIEF-TABLE; + uses SESSION-DETAILED-TABLE; + uses HELLO-INSTANCE-DETAIL-TABLE; + uses GLOBAL-NEIGHBOR-DETAIL-TABLE; + uses PSB-BRIEF-TABLE; + uses GLOBAL-NEIGHBOR-BRIEF-TABLE; + } + container rsvp { + config false; + description + "RSVP operational data"; + container issu { + description + "RSVP ISSU information"; + container status { + description + "RSVP ISSU status information"; + uses RSVP-NSR-ISSU-STATUS-INFO; + } + } + container bw-pool-info { + description + "All B/W Pool info"; + uses RSVP-MGMT-GLBL-BW-POOL-INFO; + } + container pxsb-details { + description + "Table of detailed PXSB info"; + list pxsb-detail { + description + "Detailed PXSB info"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-PXSB-DETAIL; + } + } + container rxsb-details { + description + "Table of detailed RXSB info"; + list rxsb-detail { + description + "Detailed RXSB info"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf destination-port { + type uint32; + description + "Destination Port"; + } + leaf protocol { + type uint32; + description + "Protocol"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf session-type { + type Rsvp-session; + description + "Session Type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf source-port { + type uint32; + description + "Source Port"; + } + leaf sub-group-origin { + type inet:ipv4-address-no-zone; + description + "Subgroup Origin"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses RSVP-MGMT-RXSB-DETAIL; + } + } + uses INTERFACE-NEIGHBOR-BRIEF-TABLE; + uses CONTROLLER-SUMMARY-TABLE; + uses AUTHENTICATION-BRIEF-TABLE; + uses SESSION-BRIEF-TABLE; + uses PSB-DETAILED-TABLE; + uses CONTROLLER-DETAILED-TABLE; + uses FRR-SUMMARY; + uses RSB-DETAILED-TABLE; + uses INTERFACE-SUMMARY-TABLE; + uses HELLO-INSTANCE-BRIEF-TABLE; + uses AUTHENTICATION-DETAIL-TABLE; + uses RSB-BRIEF-TABLE; + uses COUNTERS; + uses INTERFACE-DETAILED-TABLE; + uses CONTROLLER-BRIEF-TABLE; + uses GRACEFUL-RESTART; + uses HELLO-INTERFACE-INSTANCE-BRIEF-TABLE; + uses HELLO-INTERFACE-INSTANCE-DETAIL-TABLE; + uses INTERFACE-NEIGHBOR-DETAIL-TABLE; + uses NSR; + uses SUMMARY; + uses FRR-TABLE; + uses REQUEST-BRIEF-TABLE; + uses REQUEST-DETAIL-TABLE; + uses INTERFACE-BRIEF-TABLE; + uses SESSION-DETAILED-TABLE; + uses HELLO-INSTANCE-DETAIL-TABLE; + uses GLOBAL-NEIGHBOR-DETAIL-TABLE; + uses PSB-BRIEF-TABLE; + uses GLOBAL-NEIGHBOR-BRIEF-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-cfg.yang new file mode 100644 index 000000000..d5f6945a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-cfg.yang @@ -0,0 +1,177 @@ +module Cisco-IOS-XR-ip-sbfd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-sbfd-cfg"; + prefix ip-sbfd-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ip-sbfd package configuration. + + This module contains definitions + for the following management objects: + sbfd: SBFD Configuration ,Seamless-BFD is method for detecting + faultsbetween two different nodes in a network + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-03 { + description + "SBFD configuration objects."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping REMOTE-DISCRIMINATOR { + description + "Common node of ipv4-address, ipv6-address"; + list remote-discriminator { + key "remote-discriminator"; + description + "Remote Discriminator value"; + leaf remote-discriminator { + type uint32 { + range "1..4294967295"; + } + description + "Remote Discriminator Value"; + } + } + } + + container sbfd { + description + "SBFD Configuration ,Seamless-BFD is method for + detecting faultsbetween two different nodes in a + network"; + container remote-target { + description + "configure remote target"; + container ipv4-addresses { + description + "ipv4 address as target"; + list ipv4-address { + key "address"; + description + "IP Address Value for RemoteDiscriminatorTable"; + leaf address { + type inet:ipv4-address-no-zone; + description + " IPv4 address"; + } + uses REMOTE-DISCRIMINATOR; + } + } + container ipv6-addresses { + description + "ipv6 address as target"; + list ipv6-address { + key "address"; + description + "IP Address Value for RemoteDiscriminatorTable"; + leaf address { + type inet:ipv6-address-no-zone; + description + " IPv6 adddress"; + } + uses REMOTE-DISCRIMINATOR; + } + } + } + container local-discriminator { + description + "Configure local discriminator"; + container intf-discriminators { + description + "Configure local discriminator from interface + address"; + list intf-discriminator { + key "interface-name"; + description + "interface address as discriminator"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + container dynamic-discriminators { + description + "Configure local discriminator dynamically"; + list dynamic-discriminator { + key "discriminator"; + description + "Local discriminator value"; + leaf discriminator { + type uint32 { + range "0..1"; + } + description + "Dynamic discriminator value"; + } + } + } + container ipv4-discriminators { + description + "Configure local discriminator as an ipv4 + address"; + list ipv4-discriminator { + key "address"; + description + "ipv4 address as discriminator"; + leaf address { + type inet:ip-address-no-zone; + description + " IPv4 address"; + } + } + } + container val32-discriminators { + description + "Configure local discriminator as an integer"; + list val32-discriminator { + key "discriminator"; + description + "Local discriminator value"; + leaf discriminator { + type uint32 { + range "1..4294967295"; + } + description + "Local discriminator value"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper-sub1.yang new file mode 100644 index 000000000..be580433d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper-sub1.yang @@ -0,0 +1,209 @@ +submodule Cisco-IOS-XR-ip-sbfd-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-sbfd-oper { + prefix Cisco-IOS-XR-ip-sbfd-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-sbfd package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-01 { + description + "Added task privileges to sbfd oper."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bfd-discr { + type uint32; + description + "Bfd discr"; + } + + typedef Bfd-in6-addr { + type inet:ipv6-address; + description + "Bfd in6 addr"; + } + + typedef Bfd-in-addr { + type inet:ipv4-address; + description + "Bfd in addr"; + } + + typedef Bfd-af-id { + type enumeration { + enum "bfd-af-id-none" { + value 0; + description + "No Address"; + } + enum "bfd-af-id-ipv4" { + value 2; + description + "IPv4 AFI"; + } + enum "bfd-af-id-ipv6" { + value 10; + description + "IPv6 AFI"; + } + } + description + "Bfd af id"; + } + + typedef Sbfd-address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "ipv4"; + } + enum "ipv6" { + value 2; + description + "ipv6"; + } + } + description + "Sbfd address family"; + } + + grouping BFD-MGMT-TGT-IDENTIFIER-LOCAL { + description + "SBFD Target Identifier Table"; + leaf discr { + type uint32; + description + "Local discriminator"; + } + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + leaf flags { + type string; + description + "MODE name"; + } + leaf status { + type string; + description + "Status"; + } + leaf discr-src { + type string; + description + "Discriminator source name"; + } + } + + grouping IP-ADDR-T-UNION { + description + "IP ADDR T UNION"; + leaf afi { + type Bfd-af-id; + description + "AFI"; + } + leaf dummy { + when "../afi = 'bfd-af-id-none'" { + description + "../AFI = 'BFD_AF_ID_NONE'"; + } + type uint8; + description + "No Address"; + } + leaf ipv4 { + when "../afi = 'bfd-af-id-ipv4'" { + description + "../AFI = 'BFD_AF_ID_IPV4'"; + } + type Bfd-in-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../afi = 'bfd-af-id-ipv6'" { + description + "../AFI = 'BFD_AF_ID_IPV6'"; + } + type Bfd-in6-addr; + description + "IPv6 address type"; + } + } + + grouping BFD-MGMT-TGT-IDENTIFIER-REMOTE { + description + "SBFD Target Identifier Table"; + container ip-address { + description + "IP address"; + uses IP-ADDR-T-UNION; + } + leaf tid-type { + type Sbfd-address-family; + description + "Target identifier for sbfd"; + } + leaf discr { + type Bfd-discr; + description + "Remote discriminator"; + } + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + leaf status { + type string; + description + "Status"; + } + leaf discr-src { + type string; + description + "Discriminator source name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper.yang new file mode 100644 index 000000000..e4234be57 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-sbfd-oper.yang @@ -0,0 +1,132 @@ +module Cisco-IOS-XR-ip-sbfd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-sbfd-oper"; + prefix ip-sbfd-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-sbfd-oper-sub1 { + revision-date 2020-07-01; + } + + 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 ip-sbfd package operational data. + + This module contains definitions + for the following management objects: + sbfd: Seamless BFD (S-BFD) operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-01 { + description + "Added task privileges to sbfd oper."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sbfd { + config false; + description + "Seamless BFD (S-BFD) operational data"; + container target-identifier { + description + "Target-identifier information"; + container remote-vrfs { + description + "SBFD remote discriminator data"; + list remote-vrf { + key "vrf-name"; + description + "Table of remote discriminator data per VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + list remote-discriminator { + description + "SBFD remote discriminator "; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name "; + } + leaf remote-discriminator { + type uint32; + description + "Remote Discriminator"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Address"; + } + uses BFD-MGMT-TGT-IDENTIFIER-REMOTE; + } + } + } + container local-vrfs { + description + "SBFD local discriminator data"; + list local-vrf { + key "vrf-name"; + description + "Table of local discriminator data per VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + list local-discriminator { + description + "SBFD local discriminator "; + leaf local-discriminator { + type uint32; + description + "Local discriminator"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name "; + } + uses BFD-MGMT-TGT-IDENTIFIER-LOCAL; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-cfg.yang new file mode 100644 index 000000000..7c82ddabc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-cfg.yang @@ -0,0 +1,542 @@ +module Cisco-IOS-XR-ip-static-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-static-cfg"; + prefix ip-static-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ip-static package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-static-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + router-static: This class represents router static + configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-03 { + description + "Remove the default value for load-metric"; + semver:module-version "2.0.0"; + } + revision 2021-02-11 { + description + "Added new to option to prefer RIB over LDB"; + semver:module-version "1.1.0"; + } + revision 2019-07-18 { + description + "Added one more field to accept Algorithm"; + semver:module-version "1.0.1"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-09-21 { + description + "Added bfd multihop option"; + } + revision 2018-08-02 { + description + "Added one more key to accept SR Policy"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-09-10 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping VRF-ROUTE { + description + "Common node of vrf-prefix, vrf-prefix-topology"; + container vrf-route { + description + "A connected or recursive static route"; + container vrf-next-hop-table { + description + "The set of nexthop information configured for + this route"; + uses VRF-NEXT-HOP; + } + } + } + + grouping VRF-NEXT-HOP { + description + "Common node of vrf-next-hop-table, + vrf-recursive-next-hop-table, + segment-route-next-hop-table"; + + grouping VRF-NEXT-HOP-CONTENT { + description + "VRF NEXT HOP CONTENT"; + leaf bfd-fast-detect { + type boolean; + default "false"; + description + "If set, bfd is enabled"; + } + leaf minimum-interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + default "100"; + description + "BFD Hello interval in milliseconds"; + } + leaf detect-multiplier { + type uint32 { + range "1..10"; + } + default "3"; + description + "BFD Detect Multiplier"; + } + leaf metric { + type uint32 { + range "1..254"; + } + default "1"; + description + "Distance metric for this path"; + } + leaf tag { + type uint32 { + range "1..4294967295"; + } + description + "Tag for this path"; + } + leaf permanent { + type boolean; + default "false"; + description + "If set, path is permanent"; + } + leaf vrf-lable { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "VRF LABEL"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + default "0"; + description + "Tunnel ID for this path"; + } + leaf object-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the object to track"; + } + leaf description { + type string; + description + "Short Description of Static Route"; + } + leaf load-metric { + type uint32 { + range "1..16777214"; + } + description + "UCMP load metric"; + } + leaf index { + type string; + description + "Nexthop Identifier for OC Yang model"; + } + leaf multihop { + type boolean; + default "false"; + description + "If set, BFD is multihop enabled"; + } + leaf bfd-source-address { + type inet:ip-address-no-zone; + description + "BFD Multihop Source"; + } + leaf algorithm { + type uint32 { + range "0..255"; + } + default "0"; + description + "FlexAlgo range is ideally 128-255 but here + placed 0-255 as default value (0) can't be put + outside range"; + } + leaf prefer-rib-over-ldp { + type boolean; + default "false"; + description + "Flag passid to rib to prefer rib over ldp"; + } + } + list vrf-next-hop-interface-name { + key "interface-name"; + description + "A forwarding interface or Segement Routing mpls + path name and/or the address of a nexthop router + for this route (one of these must be specified)"; + leaf interface-name { + type xr:Interface-name; + description + "Forwarding interface"; + } + uses VRF-NEXT-HOP-CONTENT; + } + list vrf-next-hop-interface-name-next-hop-address { + key "interface-name next-hop-address"; + description + "A forwarding interface or Segement Routing mpls + path name and/or the address of a nexthop router + for this route (one of these must be specified)"; + leaf interface-name { + type xr:Interface-name; + description + "Forwarding interface"; + } + leaf next-hop-address { + type inet:ip-address-no-zone; + description + "Next hop address"; + } + uses VRF-NEXT-HOP-CONTENT; + } + list vrf-next-hop-next-hop-address { + key "next-hop-address"; + description + "A forwarding interface or Segement Routing mpls + path name and/or the address of a nexthop router + for this route (one of these must be specified)"; + leaf next-hop-address { + type inet:ip-address-no-zone; + description + "Next hop address"; + } + uses VRF-NEXT-HOP-CONTENT; + } + list vrf-next-hop-next-hop-address-explicit-path-name { + key "next-hop-address explicit-path-name"; + description + "A forwarding interface or Segement Routing mpls + path name and/or the address of a nexthop router + for this route (one of these must be specified)"; + leaf next-hop-address { + type inet:ip-address-no-zone; + description + "Next hop address"; + } + leaf explicit-path-name { + type xr:Cisco-ios-xr-string; + description + "Segment Routing mpls path name"; + } + uses VRF-NEXT-HOP-CONTENT; + } + list vrf-next-hop-explicit-path-name-sr-policy-name { + key "explicit-path-name sr-policy-name"; + description + "A forwarding interface or Segement Routing mpls + path name and/or the address of a nexthop router + for this route (one of these must be specified)"; + leaf explicit-path-name { + type xr:Cisco-ios-xr-string; + description + "Segment Routing mpls path name"; + } + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "Sr Policy name"; + } + uses VRF-NEXT-HOP-CONTENT; + } + list vrf-next-hop-sr-policy-name { + key "sr-policy-name"; + description + "A forwarding interface or Segement Routing mpls + path name and/or the address of a nexthop router + for this route (one of these must be specified)"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "Sr Policy name"; + } + uses VRF-NEXT-HOP-CONTENT; + } + } + + grouping VRF-SEG-ROUTE { + description + "Common node of vrf-prefix, vrf-prefix-topology"; + container vrf-seg-route { + description + "A static segment route"; + container segment-route-next-hop-table { + description + "The set of nexthop information configured for + this route"; + uses VRF-NEXT-HOP; + } + } + } + + grouping VRF-RECURSE-ROUTE-TABLE { + description + "Common node of vrf-prefix, vrf-prefix-topology"; + container vrf-recurse-routes { + description + "A recursive next VRF static route"; + list vrf-recurse-route { + key "vrf-name"; + description + "A recursive next vrf static route"; + container vrf-recursive-next-hop-table { + description + "The set of nexthop information configured for + this route"; + uses VRF-NEXT-HOP; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Fallback or recusive VRF name"; + } + } + } + } + + grouping TOPOLOGY-TABLE { + description + "Common node of vrf-unicast, vrf-multicast"; + container topologies { + description + "Topology static configuration container"; + list topology { + key "topology-name"; + description + "Topology static configuration"; + leaf topology-name { + type xr:Cisco-ios-xr-string; + description + "Topology name"; + } + uses VRF-PREFIX-TOPOLOGY-TABLE; + } + } + } + + grouping VRF-PREFIX-TABLE { + description + "Common node of vrf-unicast, vrf-multicast"; + container vrf-prefixes { + description + "The set of all Static Topologies for this AFI."; + list vrf-prefix { + key "prefix prefix-length"; + description + "A static route"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Destination prefix"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "Destination prefix length"; + } + uses VRF-ROUTE; + uses VRF-RECURSE-ROUTE-TABLE; + uses VRF-SEG-ROUTE; + } + } + } + + grouping ADDRESS-FAMILY { + description + "Common node of default-vrf, vrf"; + container address-family { + description + "Address family configuration"; + container vrfipv4 { + description + "IPv4 static configuration"; + uses VRF-UNICAST; + uses VRF-MULTICAST; + } + container vrfipv6 { + description + "IPv6 static configuration"; + uses VRF-UNICAST; + uses VRF-MULTICAST; + } + } + } + + grouping VRF-PREFIX-TOPOLOGY-TABLE { + description + "Common node of default-topology, topology"; + container vrf-prefix-topologies { + description + "The set of all Static Topologies for this AFI."; + list vrf-prefix-topology { + key "prefix prefix-length"; + description + "A static route"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Destination prefix"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "Destination prefix length"; + } + uses VRF-ROUTE; + uses VRF-RECURSE-ROUTE-TABLE; + uses VRF-SEG-ROUTE; + } + } + } + + grouping DEFAULT-TOPOLOGY { + description + "Common node of vrf-unicast, vrf-multicast"; + container default-topology { + description + "Default topology configuration"; + uses VRF-PREFIX-TOPOLOGY-TABLE; + } + } + + grouping VRF-UNICAST { + description + "Common node of vrfipv4, vrfipv6"; + container vrf-unicast { + description + "Unicast static configuration"; + uses TOPOLOGY-TABLE; + uses VRF-PREFIX-TABLE; + uses DEFAULT-TOPOLOGY; + } + } + + grouping VRF-MULTICAST { + description + "Common node of vrfipv4, vrfipv6"; + container vrf-multicast { + description + "Multicast static configuration"; + uses TOPOLOGY-TABLE; + uses VRF-PREFIX-TABLE; + uses DEFAULT-TOPOLOGY; + } + } + + container router-static { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-static-cfg.yang which will + provide the compatible functionalities. This + class represents router static configuration"; + container vrfs { + description + "VRF static configuration container"; + list vrf { + key "vrf-name"; + description + "VRF static configuration"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses ADDRESS-FAMILY; + } + } + container default-vrf { + description + "Default VRF configuration"; + uses ADDRESS-FAMILY; + } + container maximum-routes { + description + "The maximum number of static routes that can be + configured."; + leaf ipv6-routes { + type uint32 { + range "1..140000"; + } + default "4000"; + description + "The maximum number of static routes that can be + configured for IPv6 AFI."; + } + leaf ipv4-routes { + type uint32 { + range "1..140000"; + } + default "4000"; + description + "The maximum number of static routes that can be + configured for IPv4 AFI."; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper-sub1.yang new file mode 100644 index 000000000..3bf403b2f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper-sub1.yang @@ -0,0 +1,897 @@ +submodule Cisco-IOS-XR-ip-static-ipv4-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-static-ipv4-oper { + prefix Cisco-IOS-XR-ip-static-ipv4-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-static-ipv4 package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-29 { + description + "Added leaf node for ip address algorithm"; + semver:module-version "1.3.0"; + } + revision 2020-11-20 { + description + "Added leaf node for prefer RIB over LDP"; + semver:module-version "1.2.0"; + } + revision 2019-12-12 { + description + "Added leaf node for FlexAlgo for srv6"; + semver:module-version "1.1.0"; + } + revision 2019-06-01 { + description + "Added oper ipv4 support for fridb, colocation, sr-policy + 2019-05-13 + Added ipv4 support for bfd sessions, object track database and segment routing"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-03 { + description + "Added oper ipv4 support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Object-state { + type enumeration { + enum "object-state-unknown" { + value 0; + description + "Object does not exist"; + } + enum "object-state-down" { + value 1; + description + "Object exists but state is down"; + } + enum "object-state-up" { + value 2; + description + "Object exists and state is up"; + } + } + description + "Object state"; + } + + typedef Explicit-path-state { + type enumeration { + enum "explicit-path-state-unknown" { + value 0; + description + "Explicit Path does not exist"; + } + enum "explicit-path-state-up" { + value 1; + description + "Explicit path exists and state is up"; + } + enum "explicit-path-state-down" { + value 2; + description + "Explicit path exists but state is down"; + } + } + description + "Explicit path state"; + } + + typedef Bfd-state { + type enumeration { + enum "next-hop-bfd-not-ready" { + description + "BFD for next-hop address is not ready"; + } + enum "next-hop-bfd-down" { + description + "BFD for next-hop address is down"; + } + enum "next-hop-bfd-up" { + description + "BFD for next-hop address is up"; + } + } + description + "Bfd state"; + } + + typedef Nexthop-state { + type enumeration { + enum "next-hop-unresolved" { + description + "Next-hop address is not resolved"; + } + enum "next-hop-resolved" { + description + "Next-hop address is resolved"; + } + enum "next-hop-unknown" { + description + "Unknown state"; + } + } + description + "Nexthop state"; + } + + typedef Ipv4-static-addr-bd { + type inet:ipv4-address; + description + "Ipv4 static addr bd"; + } + + typedef Interface-state { + type enumeration { + enum "interface-none" { + value 0; + description + "Interface does not exist"; + } + enum "interface-down" { + value 1; + description + "Interface exists but IP is down"; + } + enum "interface-up" { + value 2; + description + "Interface exists and IP is up"; + } + enum "interface-unknown" { + value 3; + description + "Unknown state"; + } + } + description + "Interface state"; + } + + grouping IPV4-STATIC-TEDB-BD { + description + "A static tedb"; + leaf state { + type Explicit-path-state; + description + "Explicit path state"; + } + leaf tunnel-ifh { + type uint32; + description + "Tunnel interface handle"; + } + leaf binding-label { + type uint32; + description + "Explicit path Binding label"; + } + leaf last-te-time { + type uint64; + description + "Last TE notification time"; + } + leaf last-te-state { + type Explicit-path-state; + description + "Last TE notification state"; + } + list paths { + description + "Paths referenced by this tedb"; + uses IP-STATIC-PATH-ADDR-BD; + } + } + + grouping IP-STATIC-COLOCATION-NODE-BD { + description + "A static co-location node"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-name { + type string; + description + "Table Name"; + } + leaf table-id { + type uint32; + description + "colocation table id"; + } + leaf ref-count { + type uint32; + description + "Refrence Count"; + } + } + + grouping IP-STATIC-COLOCATION-BD { + description + "A static co-location list"; + list colocation { + description + "Colocation List of table"; + uses IP-STATIC-COLOCATION-NODE-BD; + } + } + + grouping IPV4-STATIC-OTDB-BD { + description + "A static otdb"; + leaf state { + type Object-state; + description + "Object state"; + } + leaf last-ot-time { + type uint64; + description + "Last OT notification time"; + } + leaf last-ot-state { + type Object-state; + description + "Last OT notification state"; + } + list paths { + description + "Paths referenced by this otdb"; + uses IP-STATIC-PATH-ADDR-BD; + } + } + + grouping IP-STATIC-TDB-BD { + description + "A static tdb"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-name { + type string; + description + "VRF Name"; + } + leaf table-id-xr { + type uint32; + description + "table id in table database"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + } + + grouping IPV4-STATIC-PATH-BD { + description + "A static path"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf interface { + type string; + description + "Next-hop interface"; + } + leaf if-resolved { + type boolean; + description + "Interface resolved indicator"; + } + leaf object { + type string; + description + "Tracking object"; + } + leaf object-resolved { + type boolean; + description + "Object resolved indicator"; + } + leaf exp-path { + type string; + description + "Explicit path"; + } + leaf next-hop { + type Ipv4-static-addr-bd; + description + "Next-hop address"; + } + leaf nh-resolved { + type boolean; + description + "Next-hop resolved indicator"; + } + leaf path-tag { + type uint32; + description + "Protocol tag"; + } + leaf path-flags { + type uint32; + description + "Topology path flags"; + } + leaf distance { + type uint32; + description + "Administrative distance"; + } + leaf ref-count { + type uint32; + description + "Reference count"; + } + leaf metric { + type uint32; + description + "UCMP Metric"; + } + leaf status { + type uint32; + description + "Path Status"; + } + leaf rib-time { + type uint64; + description + "RIB add or delete time"; + } + leaf version { + type uint32; + description + "Path version"; + } + leaf index { + type string; + description + "OC index"; + } + leaf local-label { + type uint32; + description + "Route local Label"; + } + leaf last-notif-time { + type uint64; + description + "Last IM notification time"; + } + leaf last-rib-time { + type uint64; + description + "Last RIB notification time for nh"; + } + leaf last-rib-result { + type uint64; + description + "Last RIB batch result"; + } + leaf last-bfd-state { + type Bfd-state; + description + "State of bfd session"; + } + leaf last-bfd-time { + type uint64; + description + "Last BFD notification time"; + } + leaf path-state { + type Explicit-path-state; + description + "explicit path status"; + } + leaf last-te-time { + type uint64; + description + "Last TE notification time"; + } + leaf algorithm { + type uint32; + description + "FlexAlgo value, Valid only for ipv6_static"; + } + leaf prefer-rib-over-ldp { + type boolean; + description + "Give precedence to RIB over LDP"; + } + } + + grouping IPV4-STATIC-ROUTE-BD { + description + "A static route"; + container evt-hist { + description + "Event history of topology"; + uses EVT-HIST-INFO; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "Table id of static route"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf best-distance { + type uint32; + description + "Administrative distance of best path"; + } + leaf last-tdb-time { + type uint64; + description + "Last event occured on the tdb"; + } + list paths { + description + "Path(s) of the route"; + uses IPV4-STATIC-PATH-BD; + } + } + + grouping IP-STATIC-NHDB-BFD-STAT-BD { + description + "BFD session stats"; + leaf session-up-cnt { + type uint32; + description + "# of state change to up"; + } + leaf session-down-cnt { + type uint32; + description + "# of state change to down"; + } + } + + grouping IPV4-STATIC-NHDB-BFD-BD { + description + "A static nhdb bfd session"; + container bfd-stat { + description + "Stat of bfd session"; + uses IP-STATIC-NHDB-BFD-STAT-BD; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "next-hop bfd table id"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf ifh { + type uint32; + description + "Interface handle"; + } + leaf bfd-interval { + type uint32; + description + "BFD hello interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + leaf bfd-multihop { + type boolean; + description + "BFD multihop"; + } + leaf bfd-state { + type Bfd-state; + description + "State of bfd session"; + } + leaf bfd-source { + type Ipv4-static-addr-bd; + description + "Multihop session source IP"; + } + } + + grouping IP-STATIC-FRIDB-BD { + description + "A static fridb"; + leaf if-name { + type string; + description + "Interface name"; + } + leaf if-handle { + type uint32; + description + "Interface handle"; + } + leaf-list tblid-db { + type uint32; + description + "Table ID database"; + } + } + + grouping IP-STATIC-PATH-BFD-BD { + description + "A static bfd"; + leaf enable { + type boolean; + description + "TRUE if bfd is enabled"; + } + } + + grouping IPV4-STATIC-NHDB-BD { + description + "A static nhdb"; + container evt-hist { + description + "Event history of next-hop"; + uses EVT-HIST-INFO; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "next-hop table id"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf state { + type Nexthop-state; + description + "Next-hop address state"; + } + leaf conn-state { + type Nexthop-state; + description + "Next-hop address connected state"; + } + leaf ifh { + type uint32; + description + "Interface handleto which RIB resolves this"; + } + leaf conn-ifh { + type uint32; + description + "Interface handle to which this is connected"; + } + leaf conn-ref-count { + type uint32; + description + "Number of paths for which conn_state is resolved"; + } + leaf bfd-interval { + type uint32; + description + "BFD hello interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + leaf bfd-state { + type Bfd-state; + description + "State of bfd session"; + } + leaf last-rib-time { + type uint64; + description + "Last RIB notification time"; + } + leaf last-rib-state { + type Nexthop-state; + description + "Last RIB notification state"; + } + leaf last-bfd-time { + type uint64; + description + "Last BFD notification time"; + } + leaf last-bfd-state { + type Bfd-state; + description + "Last BFD notification state"; + } + list paths { + description + "Paths referenced by this nhdb"; + uses IP-STATIC-PATH-ADDR-BD; + } + list bfds { + description + "Paths bfd state"; + uses IP-STATIC-PATH-BFD-BD; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + leaf-list evt-data { + type uint32; + description + "Optional data"; + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping IP-STATIC-ADDR-INFO-BD { + description + "Static address route"; + leaf addr { + type Ipv4-static-addr-bd; + description + "IP address"; + } + leaf prefix-len { + type uint32; + description + "Prefix length"; + } + leaf route-tag { + type uint32; + description + "Static route tag"; + } + leaf algorithm { + type uint32; + description + "IP address algorithm"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf inactive { + type boolean; + description + "Active/Inactive"; + } + leaf prefix-sid { + type boolean; + description + "Prefix SID"; + } + } + + grouping IP-STATIC-PATH-ADDR-BD { + description + "Static address path"; + leaf prefix { + type Ipv4-static-addr-bd; + description + "The path's prefix address"; + } + leaf prefix-len { + type uint8; + description + "The path's prefix length"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } + + grouping IPV4-STATIC-IDB-BD { + description + "A static idb"; + container evt-hist { + description + "Event history of interface"; + uses EVT-HIST-INFO; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "interface database table id"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf state { + type Interface-state; + description + "Interface state"; + } + leaf ifh { + type uint32; + description + "Interface handle"; + } + leaf last-notif-time { + type uint64; + description + "Last IM/RSI notification time"; + } + leaf last-if-state { + type Interface-state; + description + "Last IM notification state"; + } + leaf ref-count { + type uint32; + description + "Reference count"; + } + leaf gl-ifh { + type uint32; + description + "Global Interface handle"; + } + leaf im-state { + type uint32; + description + "Interface manager state"; + } + leaf rsi-register { + type boolean; + description + "Registration status with RSI"; + } + leaf-list tblid-db { + type uint32; + description + "IDB Table ID"; + } + leaf-list fr-tblid-db { + type uint32; + description + "FR Table ID"; + } + list paths { + description + "Paths referenced by this idb"; + uses IP-STATIC-PATH-ADDR-BD; + } + list addr-info { + description + "IP address info"; + uses IP-STATIC-ADDR-INFO-BD; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper.yang new file mode 100644 index 000000000..0190328d7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv4-oper.yang @@ -0,0 +1,685 @@ +module Cisco-IOS-XR-ip-static-ipv4-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-static-ipv4-oper"; + prefix ip-static-ipv4-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-static-ipv4-oper-sub1 { + revision-date 2021-10-29; + } + + 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 ip-static-ipv4 package operational data. + + This module contains definitions + for the following management objects: + ipv4-local: Local Routing Information + ipv4-static: Static Routing Information + ipv4-connected: Connected Routing Information + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-29 { + description + "Added leaf node for ip address algorithm"; + semver:module-version "1.3.0"; + } + revision 2020-11-20 { + description + "Added leaf node for prefer RIB over LDP"; + semver:module-version "1.2.0"; + } + revision 2019-12-12 { + description + "Added leaf node for FlexAlgo for srv6"; + semver:module-version "1.1.0"; + } + revision 2019-06-01 { + description + "Added oper ipv4 support for fridb, colocation, sr-policy + 2019-05-13 + Added ipv4 support for bfd sessions, object track database and segment routing"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-03 { + description + "Added oper ipv4 support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Safi { + type enumeration { + enum "unicast" { + value 1; + description + "unicast type"; + } + enum "multicast" { + value 2; + description + "multicast type"; + } + } + description + "Safi"; + } + + typedef Afi { + type enumeration { + enum "ipv4" { + value 1; + description + "ipv4 addressfamily"; + } + enum "ipv6" { + value 2; + description + "ipv6 addressfamily"; + } + } + description + "Afi"; + } + + typedef Ipv4friafi { + type enumeration { + enum "ipv4" { + value 1; + description + "ipv4 addressfamily"; + } + enum "ipv6" { + value 2; + description + "ipv6 addressfamily"; + } + } + description + "Ipv4friafi"; + } + + typedef Ipv4frisafi { + type enumeration { + enum "unicast" { + value 1; + description + "unicast type"; + } + enum "multicast" { + value 2; + description + "multicast type"; + } + } + description + "Ipv4frisafi"; + } + + grouping TOPO-VRF-TABLE { + description + "Common node of ipv4-static, ipv4-local, + ipv4-connected"; + container topo-vrfs { + description + "vrf list for Topology"; + list topo-vrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of thei vrf"; + } + list topo-table { + key "table-name"; + description + "Topology table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the atble"; + } + list topo-afi { + key "afi"; + description + "Topology address family type"; + leaf afi { + type Afi; + description + "IPv4 AFI"; + } + list topo-safi { + key "safi"; + description + "Topology SAFI type"; + container destinations { + description + "route info"; + list destination { + description + "Destinatioin address and prefix length"; + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "detaination address prefix"; + } + leaf prefix-length { + type xr:Hex-integer; + description + "detaination prefix length"; + } + uses IPV4-STATIC-ROUTE-BD; + } + } + leaf safi { + type Safi; + description + "IPv4 SAFI"; + } + } + } + } + } + } + } + + grouping NHVRF-TABLE { + description + "Common node of ipv4-static, ipv4-local, + ipv4-connected"; + container nhvrfs { + description + "next-hop's vrf list"; + list nhvrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of thei vrf"; + } + list nh-table { + key "table-name"; + description + "next-hop table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the atble"; + } + list nhafi { + key "afi"; + description + "next-hop address family type"; + leaf afi { + type Afi; + description + "IPv4 AFI"; + } + list nhsafi { + key "safi"; + description + "next-hop safi(unicat|multicast) type"; + container nh-addresses { + description + "next hop Database"; + list nh-address { + key "next-hop-addr"; + description + "next-hop address to display"; + leaf next-hop-addr { + type xr:Cisco-ios-xr-string; + description + "next hop address"; + } + uses IPV4-STATIC-NHDB-BD; + } + } + leaf safi { + type Safi; + description + "IPv4 SAFI"; + } + } + } + } + } + } + } + + grouping TABLE { + description + "Common node of ipv4-static, ipv4-local, + ipv4-connected"; + container table-ids { + description + "list of Tables"; + list table-id { + key "table-id"; + description + "Table ID to display"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + uses IP-STATIC-TDB-BD; + } + } + } + + grouping BFDVRF-TABLE { + description + "Common node of ipv4-static, ipv4-local, + ipv4-connected"; + container bfdvrfs { + description + "BFD's vrf list"; + list bfdvrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of the vrf"; + } + list bfd-table { + key "table-name"; + description + "BFD table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the table"; + } + list bfdafi { + key "afi"; + description + "BFD address family type"; + leaf afi { + type Afi; + description + "IPv4 AFI"; + } + list bfdsafi { + key "safi"; + description + "BFD safi(unicat|multicast) type"; + container bfd-addresses { + description + "list of BFD sessions"; + list bfd-address { + key "bfd-next-hop-addr"; + description + "BFD next-hop address to display"; + leaf bfd-next-hop-addr { + type xr:Cisco-ios-xr-string; + description + "BFD next hop address"; + } + uses IPV4-STATIC-NHDB-BFD-BD; + } + } + leaf safi { + type Safi; + description + "IPv4 SAFI"; + } + } + } + } + } + } + } + + grouping IPV4-IF-DB { + description + "Common node of ipv4-static, ipv4-local, + ipv4-connected"; + container ipv4vrfs { + description + "ipv4 interface database"; + list ipv4vrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of the"; + } + list ipv4-table { + key "table-name"; + description + "table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the atble"; + } + list ipv4afi { + key "afi"; + description + "address family type"; + leaf afi { + type Afi; + description + "IPv4 AFI"; + } + list ipv4safi { + key "safi"; + description + "unicast|multicast"; + leaf safi { + type Safi; + description + "IPv4 SAFI"; + } + list ipv4-interface { + key "interface-name"; + description + "Interface to display"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses IPV4-STATIC-IDB-BD; + } + } + } + } + } + } + } + + grouping TABLE-EVENTS { + description + "Common node of ipv4-static, ipv4-local, + ipv4-connected"; + container table-events-ids { + description + "list of Tables"; + list table-events-id { + key "table-id"; + description + "Table ID to display events info"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + uses EVT-HIST-INFO; + } + } + } + + grouping IPV4FRIDB { + description + "Common node of ipv4-local, ipv4-connected"; + container ipv4fridbvrfs { + description + "ipv4 forward database"; + list ipv4fridbvrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Forward DB vrf name"; + } + list ipv4fridb-table { + key "table-name"; + description + "table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the forward DB table"; + } + list ipv4fridbafi { + key "afitype"; + description + "address family type"; + leaf afitype { + type Ipv4friafi; + description + "IPv4 AFI"; + } + list ipv4fridbsafi { + key "safitype"; + description + "unicast|multicast"; + leaf safitype { + type Ipv4frisafi; + description + "IPv4 SAFI"; + } + list ipv4fridb-interface { + key "interface-name"; + description + "forward DB Interface to display"; + leaf interface-name { + type xr:Interface-name; + description + "forward DB Interface name"; + } + uses IP-STATIC-FRIDB-BD; + } + } + } + } + } + } + } + + container ipv4-local { + config false; + description + "Local Routing Information"; + uses IPV4-IF-DB; + uses NHVRF-TABLE; + uses IPV4FRIDB; + uses TABLE-EVENTS; + uses BFDVRF-TABLE; + uses TOPO-VRF-TABLE; + uses TABLE; + } + container ipv4-static { + config false; + description + "Static Routing Information"; + container ipv4-sr-policy-vrfs { + description + "ipv4 sr-policy interface database"; + list ipv4-sr-policy-vrf { + key "vrf-name"; + description + "sr policy vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of the vrf"; + } + list ipv4-sr-policy-table { + key "table-name"; + description + "sr policy table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the table"; + } + list ipv4-sr-policy-afi { + key "afi"; + description + "address family type"; + leaf afi { + type Afi; + description + "IPv4 AFI"; + } + list ipv4-sr-policy-safi { + key "safi"; + description + "unicast|multicast"; + leaf safi { + type Safi; + description + "IPv4 SAFI"; + } + list ipv4-sr-policy-interface { + key "srpolicy"; + description + "sr policy to display"; + leaf srpolicy { + type xr:Cisco-ios-xr-string; + description + "sr policy name"; + } + uses IPV4-STATIC-IDB-BD; + } + } + } + } + } + } + container track-object-names { + description + "list of track objects"; + list track-object-name { + key "ot-name"; + description + "Track object to display"; + leaf ot-name { + type xr:Cisco-ios-xr-string; + description + "The name of the tacking object"; + } + uses IPV4-STATIC-OTDB-BD; + } + } + container colocationvrf-names { + description + "list of colocation vrfs"; + list colocationvrf-name { + key "vrf"; + description + "vrf name of table id to display colocation list"; + leaf vrf { + type xr:Cisco-ios-xr-string; + description + "vrf name"; + } + list colocation-table { + key "table-name"; + description + "table name to display colocation list"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "table name"; + } + list colocation-afi { + key "afi"; + description + "Colocation address family type"; + leaf afi { + type Afi; + description + "IPv4 AFI"; + } + list colocation-safi { + key "safi"; + description + "Colocation safi(unicat|multicast) type"; + container colo-table-ids { + description + "tables to display colocation list"; + list colo-table-id { + key "table-id"; + description + "table to display colocation list"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + uses IP-STATIC-COLOCATION-BD; + } + } + leaf safi { + type Safi; + description + "IPv4 SAFI"; + } + } + } + } + } + } + container exp-paths { + description + "list of isegment routes"; + list exp-path { + key "exp-path"; + description + "Explicit path to display"; + leaf exp-path { + type xr:Cisco-ios-xr-string; + description + "The name of the tacking object"; + } + uses IPV4-STATIC-TEDB-BD; + } + } + uses IPV4-IF-DB; + uses NHVRF-TABLE; + uses TABLE-EVENTS; + uses BFDVRF-TABLE; + uses TOPO-VRF-TABLE; + uses TABLE; + } + container ipv4-connected { + config false; + description + "Connected Routing Information"; + uses IPV4-IF-DB; + uses NHVRF-TABLE; + uses IPV4FRIDB; + uses TABLE-EVENTS; + uses BFDVRF-TABLE; + uses TOPO-VRF-TABLE; + uses TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper-sub1.yang new file mode 100644 index 000000000..1a8d254c6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper-sub1.yang @@ -0,0 +1,1356 @@ +submodule Cisco-IOS-XR-ip-static-ipv6-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-static-ipv6-oper { + prefix Cisco-IOS-XR-ip-static-ipv6-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-static-ipv6 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "Added support for static srv6 sid and locator + 2021-10-29 + Added leaf node for ip address algorithm"; + semver:module-version "1.3.0"; + } + revision 2020-11-20 { + description + "Added leaf node for Prefer RIB over LDP"; + semver:module-version "1.2.0"; + } + revision 2019-12-12 { + description + "Added leaf node for FlexAlgo for srv6"; + semver:module-version "1.1.0"; + } + revision 2019-06-01 { + description + "Added oper ipv6 support for fridb, colocation, sr-policy + 2019-05-13 + Added ipv4 support for bfd sessions, object track database and segment routing"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-03 { + description + "Added oper ipv6 support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Object-state { + type enumeration { + enum "object-state-unknown" { + value 0; + description + "Object does not exist"; + } + enum "object-state-down" { + value 1; + description + "Object exists but state is down"; + } + enum "object-state-up" { + value 2; + description + "Object exists and state is up"; + } + } + description + "Object state"; + } + + typedef Interface-state { + type enumeration { + enum "interface-none" { + value 0; + description + "Interface does not exist"; + } + enum "interface-down" { + value 1; + description + "Interface exists but IP is down"; + } + enum "interface-up" { + value 2; + description + "Interface exists and IP is up"; + } + enum "interface-unknown" { + value 3; + description + "Unknown state"; + } + } + description + "Interface state"; + } + + typedef Explicit-path-state { + type enumeration { + enum "explicit-path-state-unknown" { + value 0; + description + "Explicit Path does not exist"; + } + enum "explicit-path-state-up" { + value 1; + description + "Explicit path exists and state is up"; + } + enum "explicit-path-state-down" { + value 2; + description + "Explicit path exists but state is down"; + } + } + description + "Explicit path state"; + } + + typedef Ipv6-static-addr-bd { + type inet:ipv6-address; + description + "Ipv6 static addr bd"; + } + + typedef Bfd-state { + type enumeration { + enum "next-hop-bfd-not-ready" { + description + "BFD for next-hop address is not ready"; + } + enum "next-hop-bfd-down" { + description + "BFD for next-hop address is down"; + } + enum "next-hop-bfd-up" { + description + "BFD for next-hop address is up"; + } + } + description + "Bfd state"; + } + + typedef Nexthop-state { + type enumeration { + enum "next-hop-unresolved" { + description + "Next-hop address is not resolved"; + } + enum "next-hop-resolved" { + description + "Next-hop address is resolved"; + } + enum "next-hop-unknown" { + description + "Unknown state"; + } + } + description + "Nexthop state"; + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping IP-STATIC-SIDDB-BD { + description + "static loc db"; + container srv6-endpoint-behavior { + description + "SRv6 Endpoint behavior/type"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + leaf sid { + type string; + description + "sid Prefix"; + } + leaf loc-id { + type string; + description + "locator id"; + } + leaf sid-context { + type string; + description + "SRv6 Sid Context"; + } + leaf state { + type string; + description + "state of sid"; + } + leaf route-res { + type string; + description + "route send result"; + } + } + + grouping IP-STATIC-COLOCATION-NODE-BD { + description + "A static co-location node"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-name { + type string; + description + "Table Name"; + } + leaf table-id { + type uint32; + description + "colocation table id"; + } + leaf ref-count { + type uint32; + description + "Refrence Count"; + } + } + + grouping IP-STATIC-COLOCATION-BD { + description + "A static co-location list"; + list colocation { + description + "Colocation List of table"; + uses IP-STATIC-COLOCATION-NODE-BD; + } + } + + grouping IPV6-STATIC-TEDB-BD { + description + "A static tedb"; + leaf state { + type Explicit-path-state; + description + "Explicit path state"; + } + leaf tunnel-ifh { + type uint32; + description + "Tunnel interface handle"; + } + leaf binding-label { + type uint32; + description + "Explicit path Binding label"; + } + leaf last-te-time { + type uint64; + description + "Last TE notification time"; + } + leaf last-te-state { + type Explicit-path-state; + description + "Last TE notification state"; + } + list paths { + description + "Paths referenced by this tedb"; + uses IP-STATIC-PATH-ADDR-BD; + } + } + + grouping IP-STATIC-LOCDB-BD { + description + "static loc db"; + leaf loc-name { + type string; + description + "locator name"; + } + leaf loc-id { + type uint32; + description + "locator id"; + } + leaf loc-prefix { + type string; + description + "Locator Prefix"; + } + } + + grouping IPV6-STATIC-OTDB-BD { + description + "A static otdb"; + leaf state { + type Object-state; + description + "Object state"; + } + leaf last-ot-time { + type uint64; + description + "Last OT notification time"; + } + leaf last-ot-state { + type Object-state; + description + "Last OT notification state"; + } + list paths { + description + "Paths referenced by this otdb"; + uses IP-STATIC-PATH-ADDR-BD; + } + } + + grouping IP-STATIC-TDB-BD { + description + "A static tdb"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-name { + type string; + description + "VRF Name"; + } + leaf table-id-xr { + type uint32; + description + "table id in table database"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + } + + grouping IP-STATIC-ADDR-INFO-BD { + description + "Static address route"; + leaf addr { + type Ipv6-static-addr-bd; + description + "IP address"; + } + leaf prefix-len { + type uint32; + description + "Prefix length"; + } + leaf route-tag { + type uint32; + description + "Static route tag"; + } + leaf algorithm { + type uint32; + description + "IP address algorithm"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf inactive { + type boolean; + description + "Active/Inactive"; + } + leaf prefix-sid { + type boolean; + description + "Prefix SID"; + } + } + + grouping IPV6-STATIC-IDB-BD { + description + "A static idb"; + container evt-hist { + description + "Event history of interface"; + uses EVT-HIST-INFO; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "interface database table id"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf state { + type Interface-state; + description + "Interface state"; + } + leaf ifh { + type uint32; + description + "Interface handle"; + } + leaf last-notif-time { + type uint64; + description + "Last IM/RSI notification time"; + } + leaf last-if-state { + type Interface-state; + description + "Last IM notification state"; + } + leaf ref-count { + type uint32; + description + "Reference count"; + } + leaf gl-ifh { + type uint32; + description + "Global Interface handle"; + } + leaf im-state { + type uint32; + description + "Interface manager state"; + } + leaf rsi-register { + type boolean; + description + "Registration status with RSI"; + } + leaf-list tblid-db { + type uint32; + description + "IDB Table ID"; + } + leaf-list fr-tblid-db { + type uint32; + description + "FR Table ID"; + } + list paths { + description + "Paths referenced by this idb"; + uses IP-STATIC-PATH-ADDR-BD; + } + list addr-info { + description + "IP address info"; + uses IP-STATIC-ADDR-INFO-BD; + } + } + + grouping IPV6-STATIC-PATH-BD { + description + "A static path"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf interface { + type string; + description + "Next-hop interface"; + } + leaf if-resolved { + type boolean; + description + "Interface resolved indicator"; + } + leaf object { + type string; + description + "Tracking object"; + } + leaf object-resolved { + type boolean; + description + "Object resolved indicator"; + } + leaf exp-path { + type string; + description + "Explicit path"; + } + leaf next-hop { + type Ipv6-static-addr-bd; + description + "Next-hop address"; + } + leaf nh-resolved { + type boolean; + description + "Next-hop resolved indicator"; + } + leaf path-tag { + type uint32; + description + "Protocol tag"; + } + leaf path-flags { + type uint32; + description + "Topology path flags"; + } + leaf distance { + type uint32; + description + "Administrative distance"; + } + leaf ref-count { + type uint32; + description + "Reference count"; + } + leaf metric { + type uint32; + description + "UCMP Metric"; + } + leaf status { + type uint32; + description + "Path Status"; + } + leaf rib-time { + type uint64; + description + "RIB add or delete time"; + } + leaf version { + type uint32; + description + "Path version"; + } + leaf index { + type string; + description + "OC index"; + } + leaf local-label { + type uint32; + description + "Route local Label"; + } + leaf last-notif-time { + type uint64; + description + "Last IM notification time"; + } + leaf last-rib-time { + type uint64; + description + "Last RIB notification time for nh"; + } + leaf last-rib-result { + type uint64; + description + "Last RIB batch result"; + } + leaf last-bfd-state { + type Bfd-state; + description + "State of bfd session"; + } + leaf last-bfd-time { + type uint64; + description + "Last BFD notification time"; + } + leaf path-state { + type Explicit-path-state; + description + "explicit path status"; + } + leaf last-te-time { + type uint64; + description + "Last TE notification time"; + } + leaf algorithm { + type uint32; + description + "FlexAlgo value, Valid only for ipv6_static"; + } + leaf prefer-rib-over-ldp { + type boolean; + description + "Give precedence to RIB over LDP"; + } + } + + grouping IPV6-STATIC-ROUTE-BD { + description + "A static route"; + container evt-hist { + description + "Event history of topology"; + uses EVT-HIST-INFO; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "Table id of static route"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf best-distance { + type uint32; + description + "Administrative distance of best path"; + } + leaf last-tdb-time { + type uint64; + description + "Last event occured on the tdb"; + } + list paths { + description + "Path(s) of the route"; + uses IPV6-STATIC-PATH-BD; + } + } + + grouping IP-STATIC-NHDB-BFD-STAT-BD { + description + "BFD session stats"; + leaf session-up-cnt { + type uint32; + description + "# of state change to up"; + } + leaf session-down-cnt { + type uint32; + description + "# of state change to down"; + } + } + + grouping IPV6-STATIC-NHDB-BFD-BD { + description + "A static nhdb bfd session"; + container bfd-stat { + description + "Stat of bfd session"; + uses IP-STATIC-NHDB-BFD-STAT-BD; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "next-hop bfd table id"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf ifh { + type uint32; + description + "Interface handle"; + } + leaf bfd-interval { + type uint32; + description + "BFD hello interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + leaf bfd-multihop { + type boolean; + description + "BFD multihop"; + } + leaf bfd-state { + type Bfd-state; + description + "State of bfd session"; + } + leaf bfd-source { + type Ipv6-static-addr-bd; + description + "Multihop session source IP"; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + leaf-list evt-data { + type uint32; + description + "Optional data"; + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping IP-STATIC-PATH-BFD-BD { + description + "A static bfd"; + leaf enable { + type boolean; + description + "TRUE if bfd is enabled"; + } + } + + grouping IP-STATIC-PATH-ADDR-BD { + description + "Static address path"; + leaf prefix { + type Ipv6-static-addr-bd; + description + "The path's prefix address"; + } + leaf prefix-len { + type uint8; + description + "The path's prefix length"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + } + + grouping IPV6-STATIC-NHDB-BD { + description + "A static nhdb"; + container evt-hist { + description + "Event history of next-hop"; + uses EVT-HIST-INFO; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf table-id { + type uint32; + description + "next-hop table id"; + } + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf state { + type Nexthop-state; + description + "Next-hop address state"; + } + leaf conn-state { + type Nexthop-state; + description + "Next-hop address connected state"; + } + leaf ifh { + type uint32; + description + "Interface handleto which RIB resolves this"; + } + leaf conn-ifh { + type uint32; + description + "Interface handle to which this is connected"; + } + leaf conn-ref-count { + type uint32; + description + "Number of paths for which conn_state is resolved"; + } + leaf bfd-interval { + type uint32; + description + "BFD hello interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + leaf bfd-state { + type Bfd-state; + description + "State of bfd session"; + } + leaf last-rib-time { + type uint64; + description + "Last RIB notification time"; + } + leaf last-rib-state { + type Nexthop-state; + description + "Last RIB notification state"; + } + leaf last-bfd-time { + type uint64; + description + "Last BFD notification time"; + } + leaf last-bfd-state { + type Bfd-state; + description + "Last BFD notification state"; + } + list paths { + description + "Paths referenced by this nhdb"; + uses IP-STATIC-PATH-ADDR-BD; + } + list bfds { + description + "Paths bfd state"; + uses IP-STATIC-PATH-BFD-BD; + } + } + + grouping IP-STATIC-FRIDB-BD { + description + "A static fridb"; + leaf if-name { + type string; + description + "Interface name"; + } + leaf if-handle { + type uint32; + description + "Interface handle"; + } + leaf-list tblid-db { + type uint32; + description + "Table ID database"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper.yang new file mode 100644 index 000000000..36b7f5dcf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-ipv6-oper.yang @@ -0,0 +1,717 @@ +module Cisco-IOS-XR-ip-static-ipv6-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-static-ipv6-oper"; + prefix ip-static-ipv6-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-static-ipv6-oper-sub1 { + revision-date 2022-10-31; + } + + 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 ip-static-ipv6 package operational data. + + This module contains definitions + for the following management objects: + ipv6-local: Local Routing Information + ipv6-static: Static Routing Information + ipv6-connected: connected Routing Information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "Added support for static srv6 sid and locator + 2021-10-29 + Added leaf node for ip address algorithm"; + semver:module-version "1.3.0"; + } + revision 2020-11-20 { + description + "Added leaf node for Prefer RIB over LDP"; + semver:module-version "1.2.0"; + } + revision 2019-12-12 { + description + "Added leaf node for FlexAlgo for srv6"; + semver:module-version "1.1.0"; + } + revision 2019-06-01 { + description + "Added oper ipv6 support for fridb, colocation, sr-policy + 2019-05-13 + Added ipv4 support for bfd sessions, object track database and segment routing"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-03 { + description + "Added oper ipv6 support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6friafi { + type enumeration { + enum "ipv4" { + value 1; + description + "ipv4 addressfamily"; + } + enum "ipv6" { + value 2; + description + "ipv6 addressfamily"; + } + } + description + "Ipv6friafi"; + } + + typedef Afiipv6 { + type enumeration { + enum "ipv4" { + value 1; + description + "ipv4 addressfamily"; + } + enum "ipv6" { + value 2; + description + "ipv6 addressfamily"; + } + } + description + "Afiipv6"; + } + + typedef Safiipv6 { + type enumeration { + enum "unicast" { + value 1; + description + "unicat type"; + } + enum "multicast" { + value 2; + description + "multicast type"; + } + } + description + "Safiipv6"; + } + + typedef Ipv6frisafi { + type enumeration { + enum "unicast" { + value 1; + description + "unicast type"; + } + enum "multicast" { + value 2; + description + "multicast type"; + } + } + description + "Ipv6frisafi"; + } + + grouping TOPO-VRF-TABLE { + description + "Common node of ipv6-static, ipv6-local, + ipv6-connected"; + container topo-vrfs { + description + "vrf list for Topology"; + list topo-vrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of thei vrf"; + } + list topo-table { + key "table-name"; + description + "Topology table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the atble"; + } + list topo-afi { + key "afi"; + description + "Topology address family type"; + leaf afi { + type Afiipv6; + description + "IPv6 AFI"; + } + list topo-safi { + key "safi"; + description + "Topology SAFI type"; + container destinations { + description + "route info"; + list destination { + description + "Destinatioin address and prefix length"; + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "IP Prefix"; + } + leaf prefix-length { + type xr:Hex-integer; + description + "IPv6 Prefix length"; + } + uses IPV6-STATIC-ROUTE-BD; + } + } + leaf safi { + type Safiipv6; + description + "IPv6 SAFI"; + } + } + } + } + } + } + } + + grouping NHVRF-TABLE { + description + "Common node of ipv6-static, ipv6-local, + ipv6-connected"; + container nhvrfs { + description + "next-hop's vrf list"; + list nhvrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of thei vrf"; + } + list nh-table { + key "table-name"; + description + "next-hop table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the atble"; + } + list nhafi { + key "afi"; + description + "next-hop address family type"; + leaf afi { + type Afiipv6; + description + "IPv6 AFI"; + } + list nhsafi { + key "safi"; + description + "next-hop safi(unicat|multicast) type"; + container nh-addresses { + description + "next-hop Database"; + list nh-address { + key "next-hop-addr"; + description + "next hop address to display"; + leaf next-hop-addr { + type xr:Cisco-ios-xr-string; + description + "next hop address"; + } + uses IPV6-STATIC-NHDB-BD; + } + } + leaf safi { + type Safiipv6; + description + "IPv6 SAFI"; + } + } + } + } + } + } + } + + grouping TABLE { + description + "Common node of ipv6-static, ipv6-local, + ipv6-connected"; + container table-ids { + description + "list of Tables"; + list table-id { + key "table-id"; + description + "Table ID to display"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + uses IP-STATIC-TDB-BD; + } + } + } + + grouping IPV6FRIDB { + description + "Common node of ipv6-local, ipv6-connected"; + container ipv6fridbvrfs { + description + "ipv6 forward database"; + list ipv6fridbvrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Forward DB vrf name"; + } + list ipv6fridb-table { + key "table-name"; + description + "table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the forward DB table"; + } + list ipv6fridbafi { + key "afitype"; + description + "address family type"; + leaf afitype { + type Ipv6friafi; + description + "IPv6 AFI"; + } + list ipv6fridbsafi { + key "safitype"; + description + "unicast|multicast"; + leaf safitype { + type Ipv6frisafi; + description + "IPv6 SAFI"; + } + list ipv6fridb-interface { + key "interface-name"; + description + "forward DB Interface to display"; + leaf interface-name { + type xr:Interface-name; + description + "forward DB Interface name"; + } + uses IP-STATIC-FRIDB-BD; + } + } + } + } + } + } + } + + grouping BFDVRF-TABLE { + description + "Common node of ipv6-static, ipv6-local, + ipv6-connected"; + container bfdvrfs { + description + "BFD's vrf list"; + list bfdvrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of the vrf"; + } + list bfd-table { + key "table-name"; + description + "BFD table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the table"; + } + list bfdafi { + key "afi"; + description + "BFD address family type"; + leaf afi { + type Afiipv6; + description + "IPv6 AFI"; + } + list bfdsafi { + key "safi"; + description + "BFD safi(unicat|multicast) type"; + container bfd-addresses { + description + "list of BFD sessions"; + list bfd-address { + key "bfd-next-hop-addr"; + description + "BFD next-hop address to display"; + leaf bfd-next-hop-addr { + type xr:Cisco-ios-xr-string; + description + "BFD next hop address"; + } + uses IPV6-STATIC-NHDB-BFD-BD; + } + } + leaf safi { + type Safiipv6; + description + "IPv6 SAFI"; + } + } + } + } + } + } + } + + grouping TABLE-EVENTS { + description + "Common node of ipv6-static, ipv6-local, + ipv6-connected"; + container table-events-ids { + description + "list of Tables"; + list table-events-id { + key "table-id"; + description + "Table ID to display events info"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + uses EVT-HIST-INFO; + } + } + } + + grouping IPV6-IF-DB { + description + "Common node of ipv6-static, ipv6-local, + ipv6-connected"; + container ipv6vrfs { + description + "ipv6 interface database"; + list ipv6vrf { + key "vrf-name"; + description + "vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of the"; + } + list ipv6-table { + key "table-name"; + description + "table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the"; + } + list ipv6afi { + key "afi"; + description + "address family type"; + leaf afi { + type Afiipv6; + description + "IPv6 AFI"; + } + list ipv6safi { + key "safi"; + description + "unicast|multicast"; + leaf safi { + type Safiipv6; + description + "IPv6 SAFI"; + } + list ipv6-interface { + key "interface-name"; + description + "Interface to display"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses IPV6-STATIC-IDB-BD; + } + } + } + } + } + } + } + + container ipv6-local { + config false; + description + "Local Routing Information"; + uses IPV6FRIDB; + uses NHVRF-TABLE; + uses TABLE-EVENTS; + uses BFDVRF-TABLE; + uses TOPO-VRF-TABLE; + uses IPV6-IF-DB; + uses TABLE; + } + container ipv6-static { + config false; + description + "Static Routing Information"; + container ipv6-track-object-names { + description + "list of track objects"; + list ipv6-track-object-name { + key "ot-name"; + description + "Track object to display"; + leaf ot-name { + type xr:Cisco-ios-xr-string; + description + "The name of the tacking object"; + } + uses IPV6-STATIC-OTDB-BD; + } + } + container srv6-locators { + description + "Display locator database"; + list srv6-locator { + key "locator-name"; + description + "Locator to display"; + leaf locator-name { + type xr:Cisco-ios-xr-string; + description + "Locator name"; + } + uses IP-STATIC-LOCDB-BD; + } + } + container ipv6-exp-paths { + description + "list of explicit paths"; + list ipv6-exp-path { + key "explicit-path"; + description + "Explicit path to display"; + leaf explicit-path { + type xr:Cisco-ios-xr-string; + description + "The name of the explicit path"; + } + uses IPV6-STATIC-TEDB-BD; + } + } + container ipv6-colocationvrf-names { + description + "list of colocation vrfs"; + list ipv6-colocationvrf-name { + key "vrf"; + description + "vrf name of table id to display colocation list"; + leaf vrf { + type xr:Cisco-ios-xr-string; + description + "vrf name"; + } + list ipv6-colocation-table { + key "table-name"; + description + "table name to display colocation list"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "table name"; + } + list ipv6-colocation-afi { + key "afi"; + description + "Colocation address family type"; + leaf afi { + type Afiipv6; + description + "IPv6 AFI"; + } + list ipv6-colocation-safi { + key "safi"; + description + "Colocation safi(unicat|multicast) type"; + container ipv6-colo-table-ids { + description + "tables to display colocation list"; + list ipv6-colo-table-id { + key "table-id"; + description + "table to display colocation list"; + leaf table-id { + type xr:Hex-integer; + description + "Table ID"; + } + uses IP-STATIC-COLOCATION-BD; + } + } + leaf safi { + type Safiipv6; + description + "IPv6 SAFI"; + } + } + } + } + } + } + container ipv6-sr-policy-vrfs { + description + "ipv6 sr-policy interface database"; + list ipv6-sr-policy-vrf { + key "vrf-name"; + description + "sr policy vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The name of the vrf"; + } + list ipv6-sr-policy-table { + key "table-name"; + description + "sr policy table name"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "The name of the table"; + } + list ipv6-sr-policy-afi { + key "afi"; + description + "address family type"; + leaf afi { + type Afiipv6; + description + "IPv6 AFI"; + } + list ipv6-sr-policy-safi { + key "safi"; + description + "unicast|multicast"; + leaf safi { + type Safiipv6; + description + "IPv6 SAFI"; + } + list ipv6-sr-policy-interface { + key "srpolicy"; + description + "sr policy to display"; + leaf srpolicy { + type xr:Cisco-ios-xr-string; + description + "sr policy name"; + } + uses IPV6-STATIC-IDB-BD; + } + } + } + } + } + } + container ipv6-sids { + description + "Display srv6 sid database"; + list ipv6-sid { + key "srv6-sid-addr"; + description + "Srv6 Sid to display"; + leaf srv6-sid-addr { + type xr:Cisco-ios-xr-string; + description + "Srv6 Sid Addr"; + } + uses IP-STATIC-SIDDB-BD; + } + } + uses NHVRF-TABLE; + uses TABLE-EVENTS; + uses BFDVRF-TABLE; + uses TOPO-VRF-TABLE; + uses IPV6-IF-DB; + uses TABLE; + } + container ipv6-connected { + config false; + description + "connected Routing Information"; + uses IPV6FRIDB; + uses NHVRF-TABLE; + uses TABLE-EVENTS; + uses BFDVRF-TABLE; + uses TOPO-VRF-TABLE; + uses IPV6-IF-DB; + uses TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-srv6-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-srv6-act.yang new file mode 100644 index 000000000..6c36f8316 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-static-srv6-act.yang @@ -0,0 +1,33 @@ +module Cisco-IOS-XR-ip-static-srv6-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-static-srv6-act"; + prefix static-srv6-act; + + 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 action package configuration. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "IOS XR 7.9.1 revision."; + } + + rpc clear-static-srv6-sid-conflicts { + description + "Clear static srv6 sid conflicts"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-cfg.yang new file mode 100644 index 000000000..b1f1c9699 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-cfg.yang @@ -0,0 +1,417 @@ +module Cisco-IOS-XR-ip-tcp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-tcp-cfg"; + prefix ip-tcp-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 ip-tcp package configuration. + + This module contains definitions + for the following management objects: + ip-tcp: Global IP TCP configuration + ip: IP TCP Configuration Data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-16 { + description + "Changed path for Telnet and TFTP"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-02-14 { + description + "Added support for TCP-AO feature."; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping UDP { + description + "Common node of ipv4, ipv6"; + container udp { + presence "Indicates a udp node is configured."; + description + "UDP details"; + leaf access-list-name { + type string; + description + "Access list"; + } + leaf maximum-server { + type uint32 { + range "0..2147483647"; + } + description + "Set number of allowable servers, 0 for no-limit"; + } + leaf home-directory { + type string; + mandatory true; + description + "Specify device name where file is read from (e + .g. flash:)"; + } + leaf dscp-value { + type uint32; + description + "Set IP DSCP (DiffServ CodePoint) for TFTP + Server Packets"; + } + } + } + + grouping SMALL-SERVERS { + description + "Common node of ipv4, ipv6"; + container small-servers { + description + "Describing IPV4 and IPV6 small servers"; + container tcp-small-servers { + presence "Indicates a tcp-small-servers node is configured."; + description + "Describing TCP related IPV4 and IPV6 small + servers"; + leaf access-control-list-name { + type string; + description + "Specify the access list"; + } + leaf small-server { + type union { + type enumeration { + enum "no-limit" { + value 0; + description + "Unlimited Servers"; + } + } + type uint32 { + range "0..2147483647"; + } + } + mandatory true; + description + "Set number of allowable TCP small servers, + specify 0 for no-limit"; + } + } + } + } + + grouping VRF-TABLE { + description + "Common node of telnet, tftp"; + container vrfs { + description + "VRF table"; + list vrf { + must "ipv4 or ipv6"; + key "vrf-name"; + description + "VRF specific data"; + container ipv6 { + description + "IPV6 related services"; + uses TCP; + uses UDP; + } + container ipv4 { + description + "IPV4 related services"; + uses TCP; + uses UDP; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF instance"; + } + } + } + } + + grouping TCP { + description + "Common node of ipv4, ipv6"; + container tcp { + presence "Indicates a tcp node is configured."; + description + "TCP details"; + leaf access-list-name { + type string; + description + "Access list"; + } + leaf maximum-server { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Set number of allowable servers"; + } + } + } + + container ip-tcp { + presence "Indicates a ip-tcp node is configured."; + description + "Global IP TCP configuration"; + container directory { + presence "Indicates a directory node is configured."; + description + "TCP directory details"; + leaf directoryname { + type string; + mandatory true; + description + "Directory name "; + } + leaf max-debug-files { + type uint32 { + range "1..10000"; + } + default "256"; + description + "Set number of Debug files"; + } + leaf max-file-size-files { + type uint32 { + range "1024..4294967295"; + } + units "byte"; + description + "Set size of debug files in bytes"; + } + } + container throttle { + presence "Indicates a throttle node is configured."; + description + "Throttle TCP receive buffer (in percentage)"; + leaf tcpmin-throttle { + type uint32 { + range "0..100"; + } + mandatory true; + description + "Min throttle"; + } + leaf tcpmaxthrottle { + type uint32 { + range "0..100"; + } + mandatory true; + description + "Max throttle"; + } + } + container ao { + description + "TCP authentication option configuration mode"; + container keychains { + description + "Configure a Key Chain"; + list keychain { + key "name"; + description + "Name of the key chain"; + container keys { + description + "Configure a Key"; + list key { + key "key-id"; + description + "Key identifier"; + leaf key-id { + type xr:Cisco-ios-xr-string; + description + "48-bit Key identifier in range [0 - + 281474976710655]"; + } + leaf send-id { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Send ID"; + } + leaf receive-id { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Receive ID"; + } + } + } + leaf create { + type empty; + description + "Create keychain"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the key chain"; + } + } + } + leaf enable { + type empty; + description + "Create TCP-AO submode"; + } + } + container num-thread { + presence "Indicates a num-thread node is configured."; + description + "TCP InQueue and OutQueue threads"; + leaf tcp-in-q-threads { + type uint32 { + range "1..16"; + } + mandatory true; + description + "InQ Threads"; + } + leaf tcp-out-q-threads { + type uint32 { + range "1..16"; + } + mandatory true; + description + "OutQ Threads"; + } + } + leaf accept-rate { + type uint32 { + range "1..1000"; + } + default "500"; + description + "TCP connection accept rate"; + } + leaf selective-ack { + type empty; + description + "Enable TCP selective-ACK"; + } + leaf window-size { + type uint32 { + range "2048..65535"; + } + units "byte"; + description + "TCP receive window size (bytes)"; + } + leaf receive-q { + type uint32 { + range "40..800"; + } + description + "TCP receive Queue Size"; + } + leaf maximum-segment-size { + type uint32 { + range "68..10000"; + } + description + "TCP initial maximum segment size"; + } + leaf syn-wait-time { + type uint32 { + range "5..30"; + } + units "second"; + description + "Time to wait on new TCP connections in seconds"; + } + leaf timestamp { + type empty; + description + "Enable TCP timestamp option"; + } + leaf path-mtu-discovery { + type uint32; + units "minute"; + default "10"; + description + "Aging time; 0 for infinite, and range be (10,30)"; + } + } + container ip { + description + "IP TCP Configuration Data"; + container cinetd { + description + "Cinetd configuration data"; + container services { + description + "Describing services of cinetd"; + container ipv4 { + description + "IPV4 related services"; + uses SMALL-SERVERS; + } + container telnet { + description + "TELNET server configuration commands"; + uses VRF-TABLE; + } + container tftp { + description + "TFTP server configuration commands"; + uses VRF-TABLE; + } + container ipv6 { + description + "IPV6 related services"; + uses SMALL-SERVERS; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub1.yang new file mode 100644 index 000000000..a9e4e2f77 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub1.yang @@ -0,0 +1,1768 @@ +submodule Cisco-IOS-XR-ip-tcp-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-tcp-oper { + prefix Cisco-IOS-XR-ip-tcp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-tcp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Enchanced show tcp brief to include socket info. + 2022-04-22 + Per neighbor pmtud"; + semver:module-version "1.3.0"; + } + revision 2021-05-21 { + description + "APP bound interface handle added to PCB_DETAIL output"; + semver:module-version "1.2.0"; + } + revision 2020-05-15 { + description + "First SYN delay timer added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-01 { + description + "Added socket async double free prevention count in tcp statistics summary"; + } + revision 2018-02-14 { + description + "PCB_ID argument is passed in string format."; + } + revision 2018-02-14 { + description + "Added support for TCP-AO feature."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nsr-down-reason { + type enumeration { + enum "none" { + description + "None, i.e. NSR was never up"; + } + enum "init-sync-aborted" { + description + "Initial sync was aborted"; + } + enum "client-disabled" { + description + "Disabled by Active APP"; + } + enum "client-disconnect" { + description + "Standby APP disconnected"; + } + enum "tcp-disconnect" { + description + "Standby TCP disconnected"; + } + enum "failover" { + description + "RP/DRP Failover occurred"; + } + enum "nsr-clear" { + description + "Clear nsr command"; + } + enum "internal-error" { + description + "Internal error occurred"; + } + enum "retransmit-threshold-exceed" { + description + "Retransmission threshold exceededprobably + becauseS-TCP was not healthy"; + } + enum "init-sync-failure-thresh-exceeded" { + description + "Init-sync repeat failures have exceeded + threshold"; + } + enum "audit-timeout" { + description + "Audit operation timed out"; + } + enum "audit-failed" { + description + "Audit operation failed"; + } + enum "standby-sscb-deleted" { + description + "Standby SSCB deleted"; + } + enum "standby-session-close" { + description + "Session was closed on standby"; + } + enum "standby-rxpath-frozen" { + description + "RX-Path was frozen on standby"; + } + enum "partner-deleted" { + description + "Partner was deleted from set"; + } + } + description + "NSR-Down Reasons"; + } + + typedef Nsr-status { + type enumeration { + enum "down" { + description + "NSR Stream Down"; + } + enum "up" { + description + "NSR Stream Up"; + } + enum "na" { + description + "NSR Stream Not applicable"; + } + } + description + "NSR Stream Status"; + } + + typedef Addr-family { + type enumeration { + enum "internetwork" { + value 2; + description + "Internetwork: UDP, TCP, etc."; + } + enum "ip-version6" { + value 10; + description + "IP version 6"; + } + } + description + "Address Family Types"; + } + + grouping TCP-NSR-PCB-STATS-BAG { + description + "SSO/NSR statistics of a TCP connection"; + container snd-counters { + description + "Send path counters for the PCB"; + uses TCP-NSR-SND-COUNTERS-NODE; + } + leaf pcb { + type uint64; + description + "PCB Address"; + } + leaf number-of-times-nsr-up { + type uint32; + description + "no. of times nsr went up"; + } + leaf number-of-timers-nsr-down { + type uint32; + description + "no. of times nsr went down"; + } + leaf number-of-times-nsr-disabled { + type uint32; + description + "no. of times nsr was disabled"; + } + leaf number-of-times-nsr-fail-over { + type uint32; + description + "no. of times fail-over occured"; + } + leaf internal-ack-drops-not-replicated { + type uint64; + description + "Number of iACKs dropped because session is not + replicated"; + } + leaf internal-ack-drops-initsync-first-phase { + type uint64; + description + "Number of iACKs dropped because 1st phase of + init-sync is in progress"; + } + leaf internal-ack-drops-stale { + type uint64; + description + "Number of stale iACKs dropped"; + } + leaf internal-ack-drops-immediate-match { + type uint64; + description + "Number of iACKs not held because of an immediate + match"; + } + leaf last-cleared-time { + type uint32; + units "second"; + description + "Time of last clear (in seconds since 1st Jan + 1970 00:00:00)"; + } + } + + grouping TCP-NSR-SSCB-STATS-BAG { + description + "SSO/NSR statistics of a Session Set"; + leaf sscb { + type uint64; + description + "SSCB Address"; + } + leaf set-id { + type uint32; + description + "ID of this Session-set"; + } + leaf number-of-attempted-init-sync { + type uint32; + description + "no. of initial-sync attempts"; + } + leaf number-of-succeeded-init-sync { + type uint32; + description + "no. of initial-sync successes"; + } + leaf number-of-failed-init-sync { + type uint32; + description + "no. of initial-sync failures"; + } + leaf number-of-failover { + type uint32; + description + "Number of Switch-overs"; + } + leaf number-of-nsr-resets { + type uint32; + description + "Number of times NSR was reset for the session"; + } + leaf last-cleared-time { + type uint32; + units "second"; + description + "Time of last clear (in seconds since 1st Jan + 1970 00:00:00)"; + } + } + + grouping TCP-NSR-CCB-STATS-BAG { + description + "SSO/NSR statistics of a Client"; + leaf ccb { + type uint64; + description + "Address of the Client Control Block"; + } + leaf pid { + type uint32; + description + "PID of the Client"; + } + leaf process-name { + type string; + description + "Proc name of Clinet"; + } + leaf job-id { + type int32; + description + "JOb ID of Client"; + } + leaf instance { + type uint32; + description + "Instance of the Client"; + } + leaf connected-at { + type uint32; + units "second"; + description + "Time of connect (in seconds since 1st Jan 1970 + 00:00:00)"; + } + leaf number-of-created-sscb { + type uint32; + description + "Num of created session sets"; + } + leaf number-of-deleted-sscb { + type uint32; + description + "Num of deleted session sets"; + } + leaf last-cleared-time { + type uint32; + units "second"; + description + "Time of last clear (in seconds since 1st Jan + 1970 00:00:00)"; + } + list notification-statistic { + description + "Various types of notification stats"; + uses TSS-NOTIF-STATS; + } + } + + grouping TCP-NSR-AUDIT-COUNTERS-AGGR-ONLY-NODE { + description + "Aggregate-only counters for NSR audit"; + leaf mark-session-set-rcv-drop-aggr { + type uint32; + description + "Number of session-set Mark messages dropped by + standby"; + } + leaf session-rcv-drop-aggr { + type uint32; + description + "Number of session audit messages dropped by + standby"; + } + leaf sweep-session-set-rcv-drop-aggr { + type uint32; + description + "Number of session-set Sweep messages dropped by + standby"; + } + leaf session-set-response-rcv-drop-aggr { + type uint32; + description + "Number of session-set response messages dropped + by active"; + } + leaf mark-session-set-ack-rcv-drop-aggr { + type uint32; + description + "Number of session-set mark ack messages dropped + by active"; + } + leaf mark-session-set-nack-rcv-drop-aggr { + type uint32; + description + "Number of session-set mark nack messages dropped + by active"; + } + } + + grouping TCP-NSR-AUDIT-COUNTERS-NODE { + description + "Audit counters"; + leaf mark-session-set-send { + type uint32; + description + "Number of successful session-set Mark's sent by + active"; + } + leaf mark-session-set-send-drop { + type uint32; + description + "Number of failed session-set Mark's"; + } + leaf mark-session-set-rcv { + type uint32; + description + "Number of successful session-set Mark's received + by standby"; + } + leaf mark-session-set-rcv-drop { + type uint32; + description + "Number of session-set Mark's dropped by standby"; + } + leaf session-send { + type uint32; + description + "Number of successful session audits sent by + active"; + } + leaf session-send-drop { + type uint32; + description + "Number of session audits that couldn't be sent + by active"; + } + leaf session-rcv { + type uint32; + description + "Number of session audits received by standby"; + } + leaf session-rcv-drop { + type uint32; + description + "Number of session audits dropped by standby"; + } + leaf sweep-session-set-send { + type uint32; + description + "Number of successful session-set Sweep's sent by + active"; + } + leaf sweep-session-set-send-drop { + type uint32; + description + "Number of failed session-set Sweep's"; + } + leaf sweep-session-set-rcv { + type uint32; + description + "Number of successful session-set Sweep's + received by standby"; + } + leaf sweep-session-set-rcv-drop { + type uint32; + description + "Number of session-set Sweep's dropped by standby"; + } + leaf session-set-response-send { + type uint32; + description + "Number of successful audit responses sent by + standby"; + } + leaf session-set-response-send-drop { + type uint32; + description + "Number of audit responses that couldn't be sent + by standby"; + } + leaf session-set-response-rcv { + type uint32; + description + "Number of audit responses received by active"; + } + leaf session-set-response-rcv-drop { + type uint32; + description + "Number of audit responses dropped by active"; + } + leaf mark-session-set-ack-send { + type uint32; + description + "Number of successful audit mark acks sent by + standby"; + } + leaf mark-session-set-ack-send-drop { + type uint32; + description + "Number of audit mark acks that couldn't be sent + by standby"; + } + leaf mark-session-set-ack-rcv { + type uint32; + description + "Number of audit mark acks received by active"; + } + leaf mark-session-set-ack-rcv-drop { + type uint32; + description + "Number of audit mark acks dropped by active"; + } + leaf mark-session-set-nack-send { + type uint32; + description + "Number of successful audit mark nacks sent by + standby"; + } + leaf mark-session-set-nack-send-drop { + type uint32; + description + "Number of audit mark nacks that couldn't be sent + by standby"; + } + leaf mark-session-set-nack-rcv { + type uint32; + description + "Number of audit mark nacks received by active"; + } + leaf mark-session-set-nack-rcv-drop { + type uint32; + description + "Number of audit mark nacks dropped by active"; + } + leaf abort { + type uint32; + description + "Number of times the active aborted an audit + session"; + } + } + + grouping TCP-NSR-AUDIT-COUNTERS-AGGR-NODE { + description + "Aggregate counters for NSR audit"; + container common { + description + "Common audit counters"; + uses TCP-NSR-AUDIT-COUNTERS-NODE; + } + container aggr-only { + description + "Aggregate only audit counters"; + uses TCP-NSR-AUDIT-COUNTERS-AGGR-ONLY-NODE; + } + } + + grouping TCP-NSR-SND-COUNTERS-AGGR-ONLY-NODE { + description + "Send path aggregate only counters"; + leaf data-xfer-rcv-drop-no-pcb { + type uint32; + description + "Number of Data transfer messages dropped because + PCB wasn't found"; + } + leaf data-xfer-rcv-drop-no-scb-dp { + type uint32; + description + "Number of Data transfer messages dropped because + SCB DP wasn't found"; + } + leaf seg-instr-rcv-drop-no-pcb { + type uint32; + description + "Number of Segmentation instruction messages + dropped because PCB wasn't found"; + } + leaf seg-instr-rcv-drop-no-scb-dp { + type uint32; + description + "Number of Segmentation instruction messages + dropped because SCB DP wasn't found"; + } + leaf nack-rcv-drop-no-pcb { + type uint32; + description + "Number of NACK messages dropped because PCB + wasn't found"; + } + leaf nack-rcv-drop-no-scb-dp { + type uint32; + description + "Number of NACK messages dropped because SCB DP + wasn't found"; + } + leaf cleanup-rcv-drop-no-pcb { + type uint32; + description + "Number of Cleanup messages dropped because PCB + wasn't found"; + } + leaf cleanup-rcv-drop-no-scb-dp { + type uint32; + description + "Number of Cleanup messages dropped because SCB + DP wasn't found"; + } + } + + grouping TCP-NSR-SND-COUNTERS-NODE { + description + "Send path counters"; + leaf data-xfer-send { + type uint32; + description + "Number of successful DATA transfers"; + } + leaf data-xfer-send-total { + type uint64; + description + "Amount of data transferred"; + } + leaf data-xfer-send-drop { + type uint32; + description + "Number of failed DATA transfers"; + } + leaf data-xfer-send-iov-alloc { + type uint32; + description + "Number of data transfer msgs., that required new + IOV's to be allocated"; + } + leaf data-xfer-rcv { + type uint32; + description + "Number of received DATA transfers"; + } + leaf data-xfer-rcv-success { + type uint32; + description + "Number of successfully received DATA transfers"; + } + leaf data-xfer-rcv-fail-buffer-trim { + type uint32; + description + "Number of received DATA transfers that had + buffer trim failures"; + } + leaf data-xfer-rcv-fail-snd-una-out-of-sync { + type uint32; + description + "Number of received DATA transfers that had + failures because the send path was out of sync"; + } + leaf seg-instr-send { + type uint32; + description + "Number of successful Segmentation instruction + messages"; + } + leaf seg-instr-send-units { + type uint32; + description + "Number of segement units transferred via the + successful Segmentation instruction messages"; + } + leaf seg-instr-send-drop { + type uint32; + description + "Number of failed Segmentation instruction + messages"; + } + leaf seg-instr-rcv { + type uint32; + description + "Number of received Segmentation instruction + messages"; + } + leaf seg-instr-rcv-success { + type uint32; + description + "Number of successfully received Segmentation + instruction messages"; + } + leaf seg-instr-rcv-fail-buffer-trim { + type uint32; + description + "Number of received Segmentation instructions + that had buffer trim failures"; + } + leaf seg-instr-rcv-fail-tcp-process { + type uint32; + description + "Number of received Segmentation instructions + that had failures during TCP processing"; + } + leaf nack-send { + type uint32; + description + "Number of successful NACK messages"; + } + leaf nack-send-drop { + type uint32; + description + "Number of failed NACK messages"; + } + leaf nack-rcv { + type uint32; + description + "Number of received NACK messages"; + } + leaf nack-rcv-success { + type uint32; + description + "Number of successfully received NACK messages"; + } + leaf nack-rcv-fail-data-send { + type uint32; + description + "Number of received NACK messages that had + failures when sending data in response to the + NACK"; + } + leaf cleanup-send { + type uint32; + description + "Number of successful Cleanup messages"; + } + leaf cleanup-send-drop { + type uint32; + description + "Number of failed Cleanup messages"; + } + leaf cleanup-rcv { + type uint32; + description + "Number of received Cleanup messages"; + } + leaf cleanup-rcv-success { + type uint32; + description + "Number of successfully received Cleanup messages"; + } + leaf cleanup-rcv-fail-buffer-trim { + type uint32; + description + "Number of Cleanup messages that had trim + failures"; + } + } + + grouping TCP-NSR-SND-COUNTERS-AGGR-NODE { + description + "Send path aggregate counters"; + container common { + description + "Common send path counters"; + uses TCP-NSR-SND-COUNTERS-NODE; + } + container aggr-only { + description + "Aggregate only send path counters"; + uses TCP-NSR-SND-COUNTERS-AGGR-ONLY-NODE; + } + } + + grouping TSS-NOTIF-STATS { + description + "notif stats structure used in ccb stats bag"; + leaf queued-count { + type uint32; + description + "how many were queued"; + } + leaf failed-count { + type uint32; + description + "Errors while queuing the notifs"; + } + leaf delivered-count { + type uint32; + description + "How many were picked up by app?"; + } + leaf dropped-count { + type uint32; + description + "How many were dropped because of timeout"; + } + } + + grouping TCP-NSR-SUMMARY-STATS-BAG { + description + "Summary SSO/NSR statistics"; + container snd-counters { + description + "Aggregate Send path counters"; + uses TCP-NSR-SND-COUNTERS-AGGR-NODE; + } + container audit-counters { + description + "Aggregate Audit counters"; + uses TCP-NSR-AUDIT-COUNTERS-AGGR-NODE; + } + leaf last-cleared-time { + type uint32; + units "second"; + description + "Time of last clear (in seconds since 1st Jan + 1970 00:00:00)"; + } + leaf number-of-connected-clients { + type uint32; + description + "Number of disconnected clients"; + } + leaf number-of-disconnected-clients { + type uint32; + description + "Number of disconnected clients"; + } + leaf number-of-current-clients { + type uint32; + description + "Number of current clients"; + } + leaf number-of-created-session-sets { + type uint32; + description + "Number of created session sets"; + } + leaf number-of-destroyed-session-sets { + type uint32; + description + "Number of destroyed session sets"; + } + leaf number-of-current-session-sets { + type uint32; + description + "Number of current session sets"; + } + leaf number-of-added-sessions { + type uint32; + description + "Number of added sessions"; + } + leaf number-of-deleted-sessions { + type uint32; + description + "Number of deleted sessions"; + } + leaf number-of-current-sessions { + type uint32; + description + "Number of current sessions"; + } + leaf number-of-partner-node { + type uint32; + description + " Number of Parner Nodes"; + } + leaf number-of-attempted-init-sync { + type uint32; + description + "no. of initial-sync attempts"; + } + leaf number-of-succeeded-init-sync { + type uint32; + description + "no. of initial-sync successes"; + } + leaf number-of-failed-init-sync { + type uint32; + description + "no. of initial-sync fails"; + } + leaf number-of-held-packets { + type uint32; + description + "Number of Packets held by Active TCP"; + } + leaf number-of-held-but-dropped-packets { + type uint32; + description + "Number of held packets dropped by Active TCP"; + } + leaf number-of-held-internal-acks { + type uint32; + description + "Number of Internal Acks held by Active TCP"; + } + leaf number-of-held-but-dropped-internal-acks { + type uint32; + description + "Number of held Internal Acks dropped by Active + TCP"; + } + leaf number-of-sent-internal-acks { + type uint32; + description + "Number of Internal Acks sent to Active TCP by + Standby TCP"; + } + leaf number-of-received-internal-acks { + type uint32; + description + "Number of Internal Acks received by Active TCP"; + } + leaf number-of-qad-receive-messages-drops { + type uint32; + description + "Number of dropped messages from partner TCP + stack(s)"; + } + leaf number-of-qad-receive-messages-unknowns { + type uint32; + description + "Number of unknown messages from partner TCP + stack(s)"; + } + leaf number-of-qad-receive-messages-accepts { + type uint32; + description + "Number of messages accepted from partner TCP + stack(s)"; + } + leaf number-of-qad-stale-receive-messages-drops { + type uint32; + description + "Number of dropped messages from partner TCP + stack(s) because they were out-of-order"; + } + leaf number-of-qad-transfer-message-sent { + type uint32; + description + "Number of messages sent to partner TCP stack(s)"; + } + leaf number-of-qad-transfer-message-drops { + type uint32; + description + "Number of messages failed to be sent to partner + TCP stack(s)"; + } + leaf number-of-internal-ack-drops-no-pcb { + type uint32; + description + "Number of iACKs dropped because there is no PCB"; + } + leaf number-of-internal-ack-drops-no-scbdp { + type uint32; + description + "Number of iACKs dropped because there is no + datapath SCB"; + } + leaf internal-ack-drops-not-replicated { + type uint32; + description + "Number of iACKs dropped because session is not + replicated"; + } + leaf internal-ack-drops-initsync-first-phase { + type uint32; + description + "Number of iACKs dropped because init-sync is in + 1st phase"; + } + leaf internal-ack-drops-stale { + type uint32; + description + "Number of stale iACKs dropped"; + } + leaf internal-ack-drops-immediate-match { + type uint32; + description + "Number of iACKs not held because of an immediate + match"; + } + leaf held-packet-drops { + type uint32; + description + "Number of held packets dropped because of errors"; + } + list notification-statistic { + description + "Various types of notification stats"; + uses TSS-NOTIF-STATS; + } + } + + grouping TCP-NSR-SSCB-DETAILED-BAG { + description + "Detailed Information about an SSO/NSR Session-set"; + leaf sscb { + type uint64; + description + "Address of the Session Set Control Block"; + } + leaf pid { + type uint32; + description + "PID of the Client that owns this Session-set"; + } + leaf set-id { + type uint32; + description + "ID of this Session-set"; + } + leaf sso-role { + type uint32; + description + "TCP role for this set?"; + } + leaf mode { + type uint32; + description + "Session-set mode"; + } + leaf address-family { + type Addr-family; + description + "Address Family of the sessions in this set"; + } + leaf well-known-port { + type uint16; + description + "Well Known Port of the client"; + } + leaf local-node { + type xr:Node-id; + description + "Local node of this set"; + } + leaf local-instance { + type uint32; + description + "Instance of the client application on the local + node"; + } + leaf protect-node { + type xr:Node-id; + description + "The node protecting this set"; + } + leaf protect-instance { + type uint32; + description + "Instance of the client application on the + protection node"; + } + leaf number-of-sessions { + type uint32; + description + "Number of Sessions in the set"; + } + leaf number-of-synced-sessions-up-stream { + type uint32; + description + "How many sessions are synced with upstream + partner"; + } + leaf number-of-synced-sessions-down-stream { + type uint32; + description + "How many sessions are synced with downstream + partner"; + } + leaf is-init-sync-in-progress { + type boolean; + description + "Is an initial sync in progress currently?"; + } + leaf is-init-sync-second-phase { + type boolean; + description + "Is initial sync in the second phase?"; + } + leaf sequence-number-of-init-sync { + type uint32; + description + "ID of the current or the last initial sync + operation"; + } + leaf init-sync-timer { + type uint32; + description + "Time left on the initial sync timer"; + } + leaf total-number-of-init-sync-sessions { + type uint32; + description + "Number of sessions being synced as part of the + current initial sync operation"; + } + leaf number-of-init-synced-sessions { + type uint32; + description + "Number of sessions that are synced as part of + the current initial sync operation"; + } + leaf number-of-sessions-init-sync-failed { + type uint32; + description + "Number of sessions that failed to sync as part + of the current initial sync operation"; + } + leaf init-sync-error { + type string; + description + "Initial sync failure reason, if any"; + } + leaf is-init-sync-error-local { + type boolean; + description + "Initial sync failed due to a local error or + remote stack"; + } + leaf init-sync-start-time { + type uint32; + units "second"; + description + "Time at which last or current initial sync + operation was started (in seconds since 1st Jan + 1970 00:00:00)"; + } + leaf init-sync-end-time { + type uint32; + units "second"; + description + "Time at which the last initial sync operation + was ended (in seconds since 1st Jan 1970 00:00 + :00)"; + } + leaf is-sscb-init-sync-ready { + type boolean; + description + "Is the SSCB ready for another initial sync?"; + } + leaf init-sync-ready-start-time { + type uint32; + units "second"; + description + "Time at which the session was ready for initial + sync last (in seconds since 1st Jan 1970 00:00 + :00)"; + } + leaf init-sync-ready-end-time { + type uint32; + units "second"; + description + "Time at which the session set last went + not-ready for initial sync (in seconds since 1st + Jan 1970 00:00:00)"; + } + leaf nsr-reset-time { + type uint32; + units "second"; + description + "Time at which NSR was last reset on the session + set (in seconds since 1st Jan 1970 00:00:00)"; + } + leaf is-audit-in-progress { + type boolean; + description + "Is an audit in progress currently?"; + } + leaf audit-seq-number { + type uint32; + description + "ID of the current or the last audit operation"; + } + leaf audit-start-time { + type uint32; + units "second"; + description + "Time at which last or current audit operation + was started (in seconds since 1st Jan 1970 00:00 + :00)"; + } + leaf audit-end-time { + type uint32; + units "second"; + description + "Time at which the last audit operation was ended + (in seconds since 1st Jan 1970 00:00:00)"; + } + } + + grouping TCP-NSR-CCB-BRIEF-BAG { + description + "Summary Information about an SSO/NSR Client"; + leaf ccb { + type uint64; + description + "Address of the Client Control Block"; + } + leaf pid { + type uint32; + description + "PID of the Client"; + } + leaf process-name { + type string; + description + "Proc name of Clinet"; + } + leaf job-id { + type int32; + description + "JOb ID of Client"; + } + leaf instance { + type uint32; + description + "Instance of the Client"; + } + leaf numberof-sets { + type uint32; + description + "Number of Sets owned by this client "; + } + leaf number-of-sessions { + type uint32; + description + "Number of sessions owned by this client "; + } + leaf number-of-up-sessions { + type uint32; + description + "Number of sessions with NSR up "; + } + } + + grouping TCP-NSR-CCB-DETAILED-BAG { + description + "Detailed Information about an SSO/NSR Client"; + leaf ccb { + type uint64; + description + "Address of the Client Control Block"; + } + leaf pid { + type uint32; + description + "PID of the Client"; + } + leaf process-name { + type string; + description + "Proc name of Clinet"; + } + leaf job-id { + type int32; + description + "JOb ID of Client"; + } + leaf instance { + type uint32; + description + "Instance of the Client"; + } + leaf numberof-sets { + type uint32; + description + "Number of Sets owned by this client "; + } + leaf number-of-sessions { + type uint32; + description + "Number of sessions owned by this client "; + } + leaf number-of-up-sessions { + type uint32; + description + "Number of sessions with NSR up"; + } + leaf connected-at { + type uint32; + units "second"; + description + "Time of connect (in seconds since 1st Jan 1970 + 00:00:00)"; + } + leaf is-notification-registered { + type boolean; + description + "Registered with TCP for notifications?"; + } + } + + grouping TCP-NSR-HOLD-QUEUE-NODE { + description + "Info about the Packet or iACK held"; + leaf sequence-number { + type uint32; + description + "Sequence Number"; + } + leaf data-length { + type uint32; + description + "Data Length"; + } + leaf acknoledgement-number { + type uint32; + description + "Ack Number"; + } + } + + grouping TCP-NSR-SSCB-BRIEF-BAG { + description + "Summary Information about an SSO/NSR Session-set"; + leaf sscb { + type uint64; + description + "Address of the Session Set Control Block"; + } + leaf pid { + type uint32; + description + "PID of the Client that owns this Session-set"; + } + leaf client-name { + type string; + description + "the name of Clinet that owns this Session-set"; + } + leaf client-instance { + type uint32; + description + "Instance of the Client that owns this + Session-set"; + } + leaf set-id { + type uint32; + description + "ID of this Session-set"; + } + leaf sso-role { + type uint32; + description + "TCP role for this set?"; + } + leaf mode { + type uint32; + description + "Session-set mode"; + } + leaf address-family { + type Addr-family; + description + "Address Family of the sessions in this set"; + } + leaf well-known-port { + type uint16; + description + "Well Known Port of the client"; + } + leaf local-node { + type xr:Node-id; + description + "Local node of this set"; + } + leaf local-instance { + type uint32; + description + "Instance of the client application on the local + node"; + } + leaf protect-node { + type xr:Node-id; + description + "The node protecting this set"; + } + leaf protect-instance { + type uint32; + description + "Instance of the client application on the + protection node"; + } + leaf number-of-sessions { + type uint32; + description + "Number of Sessions in the set"; + } + leaf number-of-synced-sessions-up-stream { + type uint32; + description + "How many sessions are synced with upstream + partner"; + } + leaf number-of-synced-sessions-down-stream { + type uint32; + description + "How many sessions are synced with downstream + partner"; + } + leaf is-init-sync-in-progress { + type boolean; + description + "Is an initial sync in progress currently?"; + } + leaf is-sscb-init-sync-ready { + type boolean; + description + "Is the SSCB ready for another initial sync?"; + } + leaf sync-options { + type uint32; + description + "Option specifying NSR or ISSU sync"; + } + } + + grouping TCP-NSR-PCB-DETAILED-BAG { + description + "Detailed SSO/NSR information about a TCP + connection"; + container set-information { + description + "Sesson-set information"; + uses TCP-NSR-SSCB-BRIEF-BAG; + } + leaf address-family { + type Addr-family; + description + "Address family"; + } + leaf pcb { + type uint64; + description + "PCB Address"; + } + leaf sscb { + type uint64; + description + "SSCB Address"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Foreign port"; + } + leaf vrf-id { + type uint32; + description + "VRF Id"; + } + leaf is-admin-configured-up { + type boolean; + description + "Is NSR administratively configured?"; + } + leaf is-us-operational-up { + type Nsr-status; + description + "Is Upstream NSR operational?"; + } + leaf is-ds-operational-up { + type Nsr-status; + description + "Is Downstream NSR operational?"; + } + leaf is-only-receive-path-replication { + type boolean; + description + "Is replication limited to receive-path only"; + } + leaf cookie { + type uint64; + description + "Cookie provided by active APP"; + } + leaf is-session-replicated { + type boolean; + description + "Has the session been replicated to standby?"; + } + leaf is-session-synced { + type boolean; + description + "Has the session completed initial-sync?"; + } + leaf fist-standby-sequence-number { + type uint32; + description + "If initial sync is completed, then the FSSN - + First Standby Sequence Number"; + } + leaf fssn-offset { + type uint32; + description + "Offset of FSSN in input stream"; + } + leaf nsr-down-reason { + type Nsr-down-reason; + description + "If NSR is not up, the reason for it."; + } + leaf nsr-down-time { + type uint32; + description + "Time at which NSR went down"; + } + leaf sequence-number-of-init-sync { + type uint32; + description + "ID of the Initial sync operation"; + } + leaf is-init-sync-in-progress { + type boolean; + description + "Is initial-sync currently in progress?"; + } + leaf is-init-sync-second-phase { + type boolean; + description + "Is initial sync in the second phase?"; + } + leaf init-sync-error { + type string; + description + "Initial sync failure reason, if any"; + } + leaf is-init-sync-error-local { + type boolean; + description + "Initial sync failed due to a local error or + remote stack"; + } + leaf init-sync-start-time { + type uint32; + units "second"; + description + "Time at which the initial sync operation was + started (in seconds since 1st Jan 1970 00:00:00)"; + } + leaf init-sync-end-time { + type uint32; + units "second"; + description + "Time at which the initial sync operation was + ended (in seconds since 1st Jan 1970 00:00:00)"; + } + leaf init-sync-flags { + type uint32; + description + "Init Sync flags for the session"; + } + leaf sequence-number-of-init-sync-up-stream { + type uint32; + description + "ID of the Initial sync operation"; + } + leaf peer-endp-hdl-up-stream { + type uint64; + description + "Peer NCD endp handle"; + } + leaf init-sync-start-time-up-stream { + type uint32; + units "second"; + description + "Time at which the initial sync operation was + started (in seconds since 1st Jan 1970 00:00:00)"; + } + leaf init-sync-end-time-up-stream { + type uint32; + units "second"; + description + "Time at which the initial sync operation was + ended (in seconds since 1st Jan 1970 00:00:00)"; + } + leaf fist-standby-sequence-number-up-stream { + type uint32; + description + "FSSN for the upstream partner"; + } + leaf nsr-down-reason-up-stream { + type Nsr-down-reason; + description + "The reason NSR is not up towards the upstream + partner"; + } + leaf nsr-down-time-up-stream { + type uint32; + description + "Time at which NSR went down"; + } + leaf sequence-number-of-init-sync-down-stream { + type uint32; + description + "ID of the Initial sync operation"; + } + leaf peer-endp-hdl-down-stream { + type uint64; + description + "Peer NCD endp handle"; + } + leaf init-sync-start-time-down-stream { + type uint32; + units "second"; + description + "Time at which the initial sync operation was + started (in seconds since 1st Jan 1970 00:00:00)"; + } + leaf init-sync-end-time-down-stream { + type uint32; + units "second"; + description + "Time at which the initial sync operation was + ended (in seconds since 1st Jan 1970 00:00:00)"; + } + leaf fist-standby-sequence-number-down-stream { + type uint32; + description + "FSSN for the upstream partner"; + } + leaf nsr-down-reason-down-stream { + type Nsr-down-reason; + description + "The reason NSR is not up towards the upstream + partner"; + } + leaf nsr-down-time-down-stream { + type uint32; + description + "Time at which NSR went down"; + } + leaf max-number-of-held-packet { + type int32; + description + "Max number of incoming packets have been held"; + } + leaf max-number-of-held-packet-reach-time { + type uint32; + description + "Max number of held incoming packets reaches at"; + } + leaf max-number-of-held-internal-ack { + type int32; + description + "Max number of internal acks have been held"; + } + leaf max-number-of-held-internal-ack-reach-time { + type uint32; + description + "Max number of held internal acks reaches at"; + } + list local-address { + max-elements "4"; + description + "Local address"; + leaf entry { + type inet:ipv4-address; + description + "Local address"; + } + } + list foreign-address { + max-elements "4"; + description + "Foreign address"; + leaf entry { + type inet:ipv4-address; + description + "Foreign address"; + } + } + list packet-hold-queue { + description + "Sequence Number and datalength of each node in + hold_pakqueue"; + uses TCP-NSR-HOLD-QUEUE-NODE; + } + list internal-ack-hold-queue { + description + "Sequence Number and datalength of each node in + hold_iackqueue"; + uses TCP-NSR-HOLD-QUEUE-NODE; + } + } + + grouping TCP-NSR-PCB-BRIEF-BAG { + description + "Summary NSR information about a TCP connection"; + leaf address-family { + type Addr-family; + description + "Address family"; + } + leaf pcb { + type uint64; + description + "PCB Address"; + } + leaf sscb { + type uint64; + description + "SSCB Address"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Foreign port"; + } + leaf vrf-id { + type uint32; + description + "VRF Id"; + } + leaf is-admin-configured-up { + type boolean; + description + "Is NSR administratively configured?"; + } + leaf is-us-operational-up { + type Nsr-status; + description + "Is Upstream NSR operational?"; + } + leaf is-ds-operational-up { + type Nsr-status; + description + "Is Downstream NSR operational?"; + } + leaf is-only-receive-path-replication { + type boolean; + description + "Is replication limited to receive-path only"; + } + list local-address { + max-elements "4"; + description + "Local address"; + leaf entry { + type inet:ipv4-address; + description + "Local address"; + } + } + list foreign-address { + max-elements "4"; + description + "Foreign address"; + leaf entry { + type inet:ipv4-address; + description + "Foreign address"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub2.yang new file mode 100644 index 000000000..3b7dbb190 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub2.yang @@ -0,0 +1,105 @@ +submodule Cisco-IOS-XR-ip-tcp-oper-sub2 { + belongs-to Cisco-IOS-XR-ip-tcp-oper { + prefix Cisco-IOS-XR-ip-tcp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-tcp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Enchanced show tcp brief to include socket info. + 2022-04-22 + Per neighbor pmtud"; + semver:module-version "1.3.0"; + } + revision 2021-05-21 { + description + "APP bound interface handle added to PCB_DETAIL output"; + semver:module-version "1.2.0"; + } + revision 2020-05-15 { + description + "First SYN delay timer added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-01 { + description + "Added socket async double free prevention count in tcp statistics summary"; + } + revision 2018-02-14 { + description + "PCB_ID argument is passed in string format."; + } + revision 2018-02-14 { + description + "Added support for TCP-AO feature."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IP-TCP { + description + "TCP Traffic Information"; + leaf tcp-input-packets { + type uint32; + description + "TCP packets received"; + } + leaf tcp-checksum-error-packets { + type uint32; + description + "TCP packets with checksum errors"; + } + leaf tcp-dropped-packets { + type uint32; + description + "TCP packets dropped (no port)"; + } + leaf tcp-output-packets { + type uint32; + description + "TCP packets transmitted"; + } + leaf tcp-retransmitted-packets { + type uint32; + description + "TCP packets retransmitted"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub3.yang new file mode 100644 index 000000000..d46eac9b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub3.yang @@ -0,0 +1,2221 @@ +submodule Cisco-IOS-XR-ip-tcp-oper-sub3 { + belongs-to Cisco-IOS-XR-ip-tcp-oper { + prefix Cisco-IOS-XR-ip-tcp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-tcp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Enchanced show tcp brief to include socket info. + 2022-04-22 + Per neighbor pmtud"; + semver:module-version "1.3.0"; + } + revision 2021-05-21 { + description + "APP bound interface handle added to PCB_DETAIL output"; + semver:module-version "1.2.0"; + } + revision 2020-05-15 { + description + "First SYN delay timer added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-01 { + description + "Added socket async double free prevention count in tcp statistics summary"; + } + revision 2018-02-14 { + description + "PCB_ID argument is passed in string format."; + } + revision 2018-02-14 { + description + "Added support for TCP-AO feature."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tcp-mac-algo { + type enumeration { + enum "not-configured" { + value 0; + description + "Not configured"; + } + enum "aes-128-cmac-96" { + value 1; + description + "CMAC 96"; + } + enum "hmac-sha1-12" { + value 2; + description + "HMAC SHA1 12"; + } + enum "md5-16" { + value 3; + description + "MD5 16"; + } + enum "sha1-20" { + value 4; + description + "SHA1 20"; + } + enum "hmac-md5-16" { + value 5; + description + "HMAC MD5 16"; + } + enum "hmac-sha1-20" { + value 6; + description + "HMAC SHA1 20"; + } + enum "aes-128-cmac" { + value 7; + description + "AES 128 CMAC"; + } + enum "aes-256-cmac" { + value 8; + description + "AES 256 CMAC"; + } + enum "hmac-sha1-96" { + value 9; + description + "HMAC SHA1 96"; + } + enum "hmac-sha-256" { + value 10; + description + "HMAC SHA1 256"; + } + } + description + "TCP AO MAC algorithm type"; + } + + typedef Tcp-key-invalid-reason { + type enumeration { + enum "none" { + value 0; + description + "No reason"; + } + enum "incomplete" { + value 1; + description + "Incomplete"; + } + enum "lifetime-not-same" { + value 2; + description + "Send and accept lifetime are not same"; + } + enum "send-id-invalid" { + value 3; + description + "Send ID is invalid"; + } + enum "recv-id-invalid" { + value 4; + description + "Receive ID is invalid"; + } + } + description + "TCP AO key state invalid reason"; + } + + typedef Tcp-timer { + type enumeration { + enum "retransmission-timer" { + value 0; + description + "Retransmission timer"; + } + enum "window-probe-timer" { + value 1; + description + "Send Window Probe timer"; + } + enum "timewait-state-timer" { + value 2; + description + "TIMEWAIT state timer"; + } + enum "ack-hold-timer" { + value 3; + description + "ACK Hold timer"; + } + enum "keep-alive-timer" { + value 4; + description + "Keep Alive timer"; + } + enum "pmtu-ager-timer" { + value 5; + description + "PMTU Ager Timer"; + } + enum "retransmission-giveup-timer" { + value 6; + description + "Retransmission Giveup timer"; + } + enum "throttle-timer" { + value 7; + description + "Throttle (for PAW/xipc) timer"; + } + enum "syn-delay-timer" { + value 8; + description + "First SYN delay timer"; + } + } + description + "TCP Timer Type"; + } + + typedef Pak-prio { + type enumeration { + enum "unspecified-packet" { + value 0; + description + "Unspecified"; + } + enum "normal-packet" { + value 1; + description + "Normal: all traffic routed via this router, + Telnet/FTP traffic generated from within this + router"; + } + enum "medium-packet" { + value 2; + description + "Medium: Packets with low drop probability e.g. + Routing updates & requests"; + } + enum "high-packet" { + value 3; + description + "High: Packets with very low drop probability + and normal delivery e.g. L3 Keepalives like + OSPF/ISIS Hellos"; + } + enum "crucial-packet" { + value 4; + description + "Crucial: Packets with very low drop probability + and expedited delivery e.g L2 keepalives, HDLC + Keepalives"; + } + } + description + "Packet Priority Types"; + } + + typedef Tcp-in6-addr { + type inet:ipv6-address; + description + "Tcp in6 addr"; + } + + typedef Tcp-conn-state { + type enumeration { + enum "closed" { + value 0; + description + "Closed"; + } + enum "listen" { + value 1; + description + "Listen"; + } + enum "syn-sent" { + value 2; + description + "Syn sent"; + } + enum "syn-received" { + value 3; + description + "Syn received"; + } + enum "established" { + value 4; + description + "Established"; + } + enum "close-wait" { + value 5; + description + "Close wait"; + } + enum "fin-wait1" { + value 6; + description + "FIN Wait1"; + } + enum "closing" { + value 7; + description + "Closing"; + } + enum "last-ack" { + value 8; + description + "Last ack"; + } + enum "fin-wait2" { + value 9; + description + "FIN Wait2"; + } + enum "time-wait" { + value 10; + description + "Time wait"; + } + } + description + "TCP Connection State"; + } + + typedef Tcp-address-family { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4"; + } + enum "ipv6" { + value 10; + description + "IPv6"; + } + } + description + "Address Family Type"; + } + + grouping TCP-SH-BRIEF-BAG { + description + "Summary information about a TCP connection"; + container local-address { + description + "Local address"; + uses TCP-ADDRESS-TYPE; + } + container foreign-address { + description + "Foreign address"; + uses TCP-ADDRESS-TYPE; + } + leaf af-name { + type Tcp-address-family; + description + "Address family"; + } + leaf pcb { + type uint64; + description + "PCB Address"; + } + leaf so { + type uint64; + description + "Socket Address"; + } + leaf connection-state { + type Tcp-conn-state; + description + "Connection state"; + } + leaf local-pid { + type uint32; + description + "Id of the local process"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Foreign port"; + } + leaf current-receive-queue-size { + type uint32; + units "byte"; + description + "Current receive queue size in bytes"; + } + leaf current-send-queue-size { + type uint32; + units "byte"; + description + "Current send queue size in bytes"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + } + + grouping TCP-SH-ID-BAG { + description + "Detailed information about a TCP AO ID under a + keychain"; + leaf id { + type uint8; + description + "Identifier"; + } + list keys { + description + "List of keys having this id"; + uses TCP-SH-KEY-ID-BAG; + } + } + + grouping TCP-SH-KEY-ID-BAG { + description + "Information about a TCP AO active key"; + leaf key-id { + type uint64; + description + "Key identifier"; + } + } + + grouping TCP-SH-KEY-BAG { + description + "Detailed information about a TCP AO key"; + leaf key-id { + type uint64; + description + "Key identifier"; + } + leaf is-active { + type boolean; + description + "Is key active"; + } + leaf is-expired { + type boolean; + description + "Is key expired"; + } + leaf is-valid { + type boolean; + description + "Is key valid"; + } + leaf reason { + type Tcp-key-invalid-reason; + description + "Key invalid reason"; + } + leaf send-id { + type uint8; + description + "Send ID"; + } + leaf recv-id { + type uint8; + description + "Receive ID"; + } + leaf crypt-algo { + type Tcp-mac-algo; + description + "Cryptography algorithm associated with the key"; + } + leaf is-configured { + type boolean; + description + "Is key configured?"; + } + leaf overlapping-key-available { + type boolean; + description + "Is overlapping key available?"; + } + leaf overlapping-key { + type uint64; + description + "Overlapping key identifier"; + } + list invalidated-key { + description + "List of keys invalidated"; + uses TCP-SH-KEY-ID-BAG; + } + } + + grouping TCP-SH-KEYCHAIN-BAG { + description + "Detailed information about a TCP AO keychain"; + leaf chain-name { + type string; + description + "Keychain name"; + } + leaf is-configured { + type boolean; + description + "Is keychain configured?"; + } + leaf desired-key-available { + type boolean; + description + "Is desired key available?"; + } + leaf desired-key-id { + type uint64; + description + "Desired key identifier"; + } + list keys { + description + "Keys under this keychain"; + uses TCP-SH-KEY-BAG; + } + list active-key { + description + "List of active keys"; + uses TCP-SH-KEY-ID-BAG; + } + list send-id { + description + "Send IDs under this keychain"; + uses TCP-SH-ID-BAG; + } + list receive-id { + description + "Receive IDs under this keychain"; + uses TCP-SH-ID-BAG; + } + } + + grouping TCP-SOCKBUF-STATES-BAG { + description + "TCP Socket Buffer State Flags"; + leaf locked { + type boolean; + description + "Lock on data queue (so_rcv only)"; + } + leaf waiting-for-lock { + type boolean; + description + "Someone is waiting to lock"; + } + leaf waiting-for-data { + type boolean; + description + "Someone is waiting for data/space"; + } + leaf input-select { + type boolean; + description + "Buffer is selected for INPUT"; + } + leaf async-io { + type boolean; + description + "Async I/O"; + } + leaf not-interruptible { + type boolean; + description + "Not interruptible"; + } + leaf io-timer-set { + type boolean; + description + "Read/write timer set"; + } + leaf delayed-wakeup { + type boolean; + description + "Want delayed wakeups"; + } + leaf wakeup { + type boolean; + description + "Read/write wakeup pending"; + } + leaf connect-wakeup { + type boolean; + description + "Connect wakeup pending"; + } + leaf output-select { + type boolean; + description + "Buffer is selected for OUTPUT"; + } + leaf out-of-band-select { + type boolean; + description + "Buffer is selected for OBAND"; + } + leaf packet-extended { + type boolean; + description + "Packet Buffer is extended"; + } + } + + grouping SACKHOLE-BAG { + description + "Sack send hole entry"; + leaf start { + type uint32; + description + "Start seq no. of hole"; + } + leaf end { + type uint32; + description + "End seq no. of hole"; + } + leaf duplicated-ack { + type uint32; + description + "Number of dup (s)acks for this hole"; + } + leaf retransmitted { + type uint32; + description + "Next seq. no in hole to be retransmitted"; + } + } + + grouping SACKBLK-BAG { + description + "Sack block entry"; + leaf start { + type uint32; + description + "Start seq no. of sack block"; + } + leaf end { + type uint32; + description + "End seq no. of sack block"; + } + } + + grouping TCP-CONN-STATES-BAG { + description + "TCP Connection states"; + leaf nagle-wait { + type boolean; + description + "Nagle has delayed output"; + } + leaf ack-needed { + type boolean; + description + "Send an ACK"; + } + leaf fin-sent { + type boolean; + description + "FIN has been sent"; + } + leaf probing { + type boolean; + description + "Probing a closed window"; + } + leaf need-push { + type boolean; + description + "Need to push data out"; + } + leaf pushed { + type boolean; + description + "A segment is pushed due to MSG_PUSH"; + } + leaf in-syn-cache { + type boolean; + description + "Connection is in SYN cache"; + } + leaf path-mtu-ager { + type boolean; + description + "Path MTU aging timer is running"; + } + } + + grouping TCP-CONN-FEATURES-BAG { + description + "TCP Connection features"; + leaf selective-ack { + type boolean; + description + "Selective ack on?"; + } + leaf md5 { + type boolean; + description + "MD5 option on?"; + } + leaf timestamps { + type boolean; + description + "Timestamps on?"; + } + leaf window-scaling { + type boolean; + description + "Window-scaling on?"; + } + leaf nagle { + type boolean; + description + "Nagle algorithm on?"; + } + leaf giveup-timer { + type boolean; + description + "Giveup timer is on?"; + } + leaf connection-keep-alive-timer { + type boolean; + description + "Keepalive timer is on?"; + } + leaf path-mtu-discovery { + type boolean; + description + "Path MTU Discovery feature is on?"; + } + leaf mss-cisco { + type boolean; + description + "tcp mss feature is on?"; + } + leaf per-neigh-pmtu { + type boolean; + description + "Per neighbor PMTU is on?"; + } + } + + grouping TCP-SOCK-STATES-BAG { + description + "TCP Socket State Flags"; + leaf no-file-descriptor-reference { + type boolean; + description + "No file descriptor ref"; + } + leaf is-connected { + type boolean; + description + "Socket is connected to peer"; + } + leaf is-connecting { + type boolean; + description + "Connecting in progress"; + } + leaf is-disconnecting { + type boolean; + description + "Disconnecting in progress"; + } + leaf cant-send-more { + type boolean; + description + "Can't send more data to peer"; + } + leaf cant-receive-more { + type boolean; + description + "Can't recv more data from peer"; + } + leaf received-at-mark { + type boolean; + description + "At mark on input"; + } + leaf privileged { + type boolean; + description + "Privileged for broadcast, raw..."; + } + leaf block-close { + type boolean; + description + "Close is blocked (i.e. socket is a replicated + socket on a standby node"; + } + leaf async-io-notify { + type boolean; + description + "Async i/o notify"; + } + leaf is-confirming { + type boolean; + description + "Deciding to accept connection req"; + } + leaf is-solock { + type boolean; + description + "Mutex acquired by solock()"; + } + leaf is-detached { + type boolean; + description + "PCB and socket are detached"; + } + leaf block-receive { + type boolean; + description + "Socket is blocked for receive - while going + through SSO initial sync"; + } + leaf block-send { + type boolean; + description + "Socket is blocked for send (if it is a + replicated socket on a standby node)"; + } + } + + grouping TCP-SOCK-OPTIONS-BAG { + description + "TCP Socket Option Flags "; + leaf debug { + type boolean; + description + "Turn on debugging info recording"; + } + leaf accept-connection { + type boolean; + description + "Socket has had listen()"; + } + leaf reuse-address { + type boolean; + description + "Allow local address reuse"; + } + leaf keep-alive { + type boolean; + description + "Keep connections alive"; + } + leaf dont-route { + type boolean; + description + "Just use interface addresses"; + } + leaf broadcast { + type boolean; + description + "Permit sending of broadcast msgs"; + } + leaf use-loopback { + type boolean; + description + "Bypass hardware when possible"; + } + leaf linger { + type boolean; + description + "Linger on close if data present"; + } + leaf out-of-band-inline { + type boolean; + description + "Leave received Out-of-band data inline"; + } + leaf reuse-port { + type boolean; + description + "Allow local address & port reuse"; + } + leaf nonblocking-io { + type boolean; + description + "Nonblocking socket I/O operation"; + } + leaf snd-buf-scaled { + type boolean; + description + "Send buffer scaled"; + } + leaf rcv-buf-scaled { + type boolean; + description + "Receive buffer scaled"; + } + } + + grouping TCP-TIMER-BAG { + description + "TCP Timer Info"; + leaf timer-type { + type Tcp-timer; + description + "Timer Type"; + } + leaf timer-activations { + type uint32; + description + "Count of timer activations"; + } + leaf timer-expirations { + type uint32; + description + "Count of timer expirations"; + } + leaf timer-next-activation { + type uint32; + description + "Timer next activation (msec)"; + } + } + + grouping TCP-ADDRESS-TYPE { + description + "TCP ADDRESS TYPE"; + leaf af-name { + type Tcp-address-family; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6-address { + when "../af-name != 'ipv4'" { + description + "../AFName != 'IPv4'"; + } + type Tcp-in6-addr; + description + "IPv6 Address"; + } + } + + grouping TCP-SH-TABLE-BAG { + description + "Detailed information about a TCP connection"; + container local-address { + description + "Local address"; + uses TCP-ADDRESS-TYPE; + } + container foreign-address { + description + "Foreign address"; + uses TCP-ADDRESS-TYPE; + } + container socket-option-flags { + description + "Socket option flags"; + uses TCP-SOCK-OPTIONS-BAG; + } + container socket-state-flags { + description + "Socket state flags"; + uses TCP-SOCK-STATES-BAG; + } + container feature-flags { + description + "Connection feature flags"; + uses TCP-CONN-FEATURES-BAG; + } + container state-flags { + description + "Connection state flags"; + uses TCP-CONN-STATES-BAG; + } + container request-flags { + description + "Connection request flags"; + uses TCP-CONN-FEATURES-BAG; + } + container receive-buf-state-flags { + description + "Receive buffer state flags"; + uses TCP-SOCKBUF-STATES-BAG; + } + container send-buf-state-flags { + description + "Send buffer state flags"; + uses TCP-SOCKBUF-STATES-BAG; + } + leaf address-family { + type Tcp-address-family; + description + "Address Family"; + } + leaf pcb { + type uint64; + description + "PCB Address"; + } + leaf so { + type uint64; + description + "Socket Address"; + } + leaf tcpcb { + type uint64; + description + "TCPCB Address"; + } + leaf vrf-id { + type uint32; + description + "VRF Id"; + } + leaf connection-state { + type Tcp-conn-state; + description + "Connection state"; + } + leaf established-time { + type uint32; + description + "Time at which connection is Listen/established"; + } + leaf local-pid { + type uint32; + description + "Id of the local process"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Foreign port"; + } + leaf packet-priority { + type Pak-prio; + description + "Priority given to packets on this socket"; + } + leaf packet-tos { + type uint16; + description + "Type of Service value to be applied to + transmistted packets"; + } + leaf packet-ttl { + type uint16; + description + "TTL to be applied to transmited packets"; + } + leaf hash-index { + type uint32; + description + "Index of the Hash Bucket"; + } + leaf current-receive-queue-size { + type uint32; + units "byte"; + description + "Current receive queue size in bytes"; + } + leaf max-receive-queue-size { + type uint32; + units "byte"; + description + "Max receive queue size in bytes"; + } + leaf current-send-queue-size { + type uint32; + units "byte"; + description + "Current send queue size in bytes"; + } + leaf max-send-queue-size { + type uint32; + units "byte"; + description + "Max send queue size in bytes"; + } + leaf current-receive-queue-packet-size { + type uint32; + description + "Current receive queue size in packets"; + } + leaf max-receive-queue-packet-size { + type uint32; + description + "Max receive queue size in packets"; + } + leaf save-queue-size { + type uint32; + units "byte"; + description + "Save queue (out-of seq data) size in bytes"; + } + leaf send-initial-sequence-num { + type uint32; + description + "Initial send sequence number"; + } + leaf send-unack-sequence-num { + type uint32; + description + "Sequence number of unacked data"; + } + leaf send-next-sequence-num { + type uint32; + description + "Sequence number of next data to be sent"; + } + leaf send-max-sequence-num { + type uint32; + description + "Highest sequence number sent"; + } + leaf send-window-size { + type uint32; + units "byte"; + description + "Send window size in bytes"; + } + leaf send-congestion-window-size { + type uint32; + units "byte"; + description + "Send congestion window size in bytes"; + } + leaf receive-initial-sequence-num { + type uint32; + description + "Initial receive sequence number"; + } + leaf receive-next-sequence-num { + type uint32; + description + "Next sequence number expected"; + } + leaf receive-adv-window-size { + type uint32; + units "byte"; + description + "Receive advertised window size in bytes"; + } + leaf receive-window-size { + type uint32; + units "byte"; + description + "Receive window size in bytes"; + } + leaf mss { + type uint32; + units "byte"; + description + "Max segment size calculated in bytes"; + } + leaf peer-mss { + type uint32; + units "byte"; + description + "Max segment size offered by the peer in bytes"; + } + leaf srtt { + type uint32; + description + "Smoothed round trip time * 8 (msec)"; + } + leaf rtto { + type uint32; + description + "Round trip timeout (msec)"; + } + leaf krtt { + type uint32; + description + "Round trip time (karn algorithm) (msec)"; + } + leaf srtv { + type uint32; + description + "Smoothed round trip time variance * 4 (msec)"; + } + leaf min-rtt { + type uint32; + description + "Min RTT (msec)"; + } + leaf max-rtt { + type uint32; + description + "Max RTT (msec)"; + } + leaf retries { + type uint32; + description + "Number of retries"; + } + leaf ack-hold-time { + type uint32; + description + "ACK hold time (msec)"; + } + leaf giveup-time { + type uint32; + description + "Giveup time (msec)"; + } + leaf keep-alive-time { + type uint32; + description + "Keepalive time (msec)"; + } + leaf syn-wait-time { + type uint32; + description + "SYN wait time (msec)"; + } + leaf rxsy-naclname { + type string { + length "0..64"; + } + description + "RX Syn acl name"; + } + leaf soft-error { + type int32; + description + "Error code from ICMP Notify"; + } + leaf sock-error { + type int32; + description + "Socket error code"; + } + leaf is-retrans-forever { + type boolean; + description + "Retransimit forever?"; + } + leaf min-mss { + type uint32; + description + "Lowest MSS ever used"; + } + leaf max-mss { + type uint32; + description + "Highest MSS ever used"; + } + leaf connect-retries { + type uint16; + description + "Number of times connect will be retried?"; + } + leaf connect-retry-interval { + type uint16; + units "second"; + description + "Connect retry interval in seconds"; + } + leaf receive-window-scale { + type uint32; + description + "Window scaling for receive window"; + } + leaf send-window-scale { + type uint32; + description + "Window scaling for send window"; + } + leaf request-receive-window-scale { + type uint32; + description + "Requested receive window scale"; + } + leaf rqst-send-wnd-scale { + type uint32; + description + "Requested send window scale"; + } + leaf time-stamp-recent { + type uint32; + description + "Timestamp from remote host"; + } + leaf time-stamp-recent-age { + type uint32; + description + "Timestamp when last updated"; + } + leaf last-ack-sent { + type uint32; + description + "ACK number of a sent segment"; + } + leaf sendbuf-lowwat { + type uint32; + description + "Send buffer's low water mark"; + } + leaf recvbuf-lowwat { + type uint32; + description + "Receive buffer's low water mark"; + } + leaf sendbuf-hiwat { + type uint32; + description + "Send buffer's high water mark"; + } + leaf recvbuf-hiwat { + type uint32; + description + "Receive buffer's high water mark"; + } + leaf sendbuf-notify-thresh { + type uint32; + description + "Send buffer's notify threshold"; + } + leaf recvbuf-datasize { + type uint32; + description + "Receive buffer's data size"; + } + leaf queue-length { + type uint32; + description + "Incoming connection queue size"; + } + leaf queue-zero-length { + type uint32; + description + "Incoming half-connection queue size"; + } + leaf queue-limit { + type uint32; + description + "Incoming connection queue limit"; + } + leaf socket-error { + type uint32; + description + "Socket error status"; + } + leaf auto-rearm { + type uint32; + description + "Socket auto rearm state"; + } + leaf send-pdu-count { + type uint32; + description + "# of PDU's in Send Buffer"; + } + leaf output-ifhandle { + type uint32; + description + "Cached Outgoing interface handle"; + } + leaf bind-ifhandle { + type uint32; + description + "Application bound interface handle"; + } + leaf fib-pd-ctx-size { + type uint32; + description + "Cached fib pd context size"; + } + leaf num-labels { + type uint32; + description + "Number of labels returned by fib lookup"; + } + leaf local-app-instance { + type uint32; + description + "Instance number of the local process"; + } + leaf next-hop-id { + type uint32; + description + "NextHopID"; + } + leaf vxlan-encap-size { + type uint8; + description + "VXLAN Encap size"; + } + leaf vxlan-encap-string { + type yang:hex-string; + description + "VXLAN Encap String"; + } + leaf next-hop-ip-size { + type uint8; + description + "VXLAN nexthop ip size"; + } + leaf next-hop-ip { + type yang:hex-string; + description + "VXLAN nexthop ip"; + } + list fib-pd-ctx { + max-elements "4"; + description + "Cached fib pd context"; + leaf entry { + type uint32; + description + "Cached fib pd context"; + } + } + list fib-label-output { + max-elements "7"; + description + "Cached Label stack"; + leaf entry { + type uint32; + description + "Cached Label stack"; + } + } + list timer { + max-elements "9"; + description + "Timers"; + uses TCP-TIMER-BAG; + } + list sack-blk { + max-elements "6"; + description + "Seq nos. of sack blocks"; + uses SACKBLK-BAG; + } + list send-sack-hole { + max-elements "6"; + description + "Sorted list of sack holes"; + uses SACKHOLE-BAG; + } + } + + grouping TCP-SH-STATS-BAG { + description + "TCP Statistics"; + leaf syn-cache-count { + type uint32; + description + "Current number of SYN cache entries"; + } + leaf num-open-sockets { + type uint32; + description + "Number of Open sockets"; + } + leaf total-pakets-sent { + type uint32; + description + "Total packets sent"; + } + leaf send-packets-dropped { + type uint32; + description + "Total transmit packets dropped due to general + failures"; + } + leaf send-auth-packets-dropped { + type uint32; + description + "Total transmit packets dropped due to + authentication failures"; + } + leaf data-pakets-sent { + type uint32; + description + "Data packets sent"; + } + leaf data-bytes-sent { + type uint32; + units "byte"; + description + "Data bytes sent"; + } + leaf packets-retransmitted { + type uint32; + description + "Data packets retransmitted"; + } + leaf bytes-retransmitted { + type uint32; + units "byte"; + description + "Data bytes retransmitted"; + } + leaf ack-only-packets-sent { + type uint32; + description + "Ack only packets sent (incl. delay)"; + } + leaf delay-ack-packets-sent { + type uint32; + description + "Delay ack packets sent"; + } + leaf urgent-only-packets-sent { + type uint32; + description + "Urgent only packets sent"; + } + leaf window-probe-packets-sent { + type uint32; + description + "Window probe packets sent"; + } + leaf window-update-packets-sent { + type uint32; + description + "Window update packets sent"; + } + leaf control-packets-sent { + type uint32; + description + "Control (SYN|FIN|RST) packets sent"; + } + leaf rst-packets-sent { + type uint32; + description + "RST packets sent"; + } + leaf total-packets-received { + type uint32; + description + "Total packets received"; + } + leaf received-packets-dropped { + type uint32; + description + "Received packets dropped due to general failures"; + } + leaf synacl-match-pkts-dropped { + type uint32; + description + "Received packets dropped due to ACL DENY on SYN + pkts"; + } + leaf received-packets-dropped-stale-c-hdr { + type uint32; + description + "Received packets dropped due to stale cached + header"; + } + leaf received-auth-packets-dropped { + type uint32; + description + "Received packets dropped due to authentication + failures"; + } + leaf ack-packets-received { + type uint32; + description + "Ack packets received"; + } + leaf ackbytes-received { + type uint32; + units "byte"; + description + "Bytes acked by ack packets"; + } + leaf duplicated-ack-packets-received { + type uint32; + description + "Duplicate ack packets"; + } + leaf ack-packets-for-unsent-received { + type uint32; + description + "Ack packets for unsent data"; + } + leaf data-packets-received-in-sequence { + type uint32; + description + "Data packets received in sequence"; + } + leaf data-bytes-received-in-sequence { + type uint32; + units "byte"; + description + "Data bytes received in sequence"; + } + leaf duplicate-packets-received { + type uint32; + description + "Duplicate packets received"; + } + leaf duplicate-bytes-received { + type uint32; + units "byte"; + description + "Duplicate bytes received"; + } + leaf partial-duplicate-ack-received { + type uint32; + description + "Packets with partial dup data"; + } + leaf partial-duplicate-bytes-received { + type uint32; + units "byte"; + description + "Bytes with partial dup data"; + } + leaf out-of-order-packets-received { + type uint32; + description + "Out-of-order packets received"; + } + leaf out-of-order-bytes-received { + type uint32; + units "byte"; + description + "Out-of-order bytes received"; + } + leaf after-window-packets-received { + type uint32; + description + "After-window packets received"; + } + leaf after-window-bytes-received { + type uint32; + units "byte"; + description + "After-window bytes received"; + } + leaf window-probe-packets-received { + type uint32; + description + "Window probe packets received"; + } + leaf window-update-packets-received { + type uint32; + description + "Window update packets received"; + } + leaf packets-received-after-close-packet { + type uint32; + description + "Packets received after close"; + } + leaf bad-checksum-packets-received { + type uint32; + description + "Packets received with bad checksum"; + } + leaf too-short-packets-received { + type uint32; + description + "Packets received with too short size"; + } + leaf malformed-packets-received { + type uint32; + description + "Packets received with malformed header"; + } + leaf no-port-packets-received { + type uint32; + description + "Packets rcceived with no wild listener"; + } + leaf connections-requested { + type uint32; + description + "Connection requests sent"; + } + leaf connections-accepted { + type uint32; + description + "Connection requests accepted"; + } + leaf connections-established { + type uint32; + description + "Connections established"; + } + leaf connections-forcibly-closed { + type uint32; + description + "Connections forcibly closed"; + } + leaf connections-closed { + type uint32; + description + "connections closed (incl. drops)"; + } + leaf connections-dropped { + type uint32; + description + "connections dropped"; + } + leaf embryonic-connection-dropped { + type uint32; + description + "Embryonic connections dropped"; + } + leaf connections-failed { + type uint32; + description + "Connections failed"; + } + leaf established-connections-reset { + type uint32; + description + "Established connections reset"; + } + leaf retransmit-timeouts { + type uint32; + description + "Retransmit timeouts (incl. data packets)"; + } + leaf retransmit-dropped { + type uint32; + description + "Connection drops during retransmit timeouts"; + } + leaf keep-alive-timeouts { + type uint32; + description + "Keepalive timeouts"; + } + leaf keep-alive-dropped { + type uint32; + description + "Connection drops due to keepalive timeouts"; + } + leaf keep-alive-probes { + type uint32; + description + "Keepalive probes sent"; + } + leaf paws-dropped { + type uint32; + description + "Segments dropped due to PAWS"; + } + leaf persist-dropped { + type uint32; + description + "Segments dropped due to window probe"; + } + leaf try-lock-dropped { + type uint32; + description + "Segments dropped due to trylock fail"; + } + leaf connection-rate-limited { + type uint32; + description + "Connections rate-limited"; + } + leaf syn-cache-added { + type uint32; + description + "SYN Cache entries added"; + } + leaf syn-cache-completed { + type uint32; + description + "SYN Cache connections completed"; + } + leaf syn-cache-timed-out { + type uint32; + description + "SYN Cache entries timed out"; + } + leaf syn-cache-overflow { + type uint32; + description + "SYN Cache entries dropped due to overflow"; + } + leaf syn-cache-reset { + type uint32; + description + "SYN Cache entries dropped due to RST"; + } + leaf syn-cache-unreach { + type uint32; + description + "SYN Cache entries dropped due to ICMP unreach"; + } + leaf syn-cache-bucket-oflow { + type uint32; + description + "SYN Cache entries dropped due to bucket overflow"; + } + leaf syn-cache-aborted { + type uint32; + description + "SYN Cache entries aborted (no mem)"; + } + leaf syn-cache-duplicate-sy-ns { + type uint32; + description + "SYN Cache duplicate SYNs received"; + } + leaf syn-cache-dropped { + type uint32; + description + "SYN Cache entries dropped (no route/mem)"; + } + leaf pulse-errors { + type uint32; + description + "Punt (down to ip) failures"; + } + leaf socket-layer-packets { + type uint32; + description + "Packets owned by the socket layer"; + } + leaf reassembly-packets { + type uint32; + description + "Packets owned by TCP reassembly"; + } + leaf recovered-packets { + type uint32; + description + "Packets freed after starvation"; + } + leaf packet-failures { + type uint32; + description + "Packet allocation errors"; + } + leaf mss-up { + type uint32; + description + "Number of times MSS was increased"; + } + leaf mss-down { + type uint32; + description + "Number of times MSS was decreased"; + } + leaf truncated-write-iov { + type uint32; + description + "Segments truncated due to insufficient Write I/O + vectors"; + } + leaf no-throttle { + type uint32; + description + "Number of times throttle mode was off"; + } + leaf low-water-mark-throttle { + type uint32; + description + "Number of times low water mark throttle was on"; + } + leaf high-water-mark-throttle { + type uint32; + description + "Number of times high water mark throttle was on"; + } + leaf stalled-timer-tickle-count { + type uint32; + description + "Number of times a stalled tcp timer was tickled"; + } + leaf stalled-timer-tickle-time { + type uint32; + description + "Last timestamp when a stalled tcp timer was + tickled"; + } + leaf iq-sock-writes { + type uint32; + description + "Number of write attempts from socket-lib into an + IQ"; + } + leaf iq-sock-retries { + type uint32; + description + "Number of retried write attempts"; + } + leaf iq-sock-aborts { + type uint32; + description + "Number of aborted socket-lib writes"; + } + leaf iq-ingress-drops { + type uint32; + description + "Number of total ingress dropped packets"; + } + leaf total-i-qs { + type uint32; + description + "Number of TCP internal queues in use"; + } + leaf sockbuf-pak-res-cur { + type uint32; + description + "Current number of packets extended for scaled + sockets"; + } + leaf sockbuf-pak-res-max { + type uint32; + description + "Maximum number of packets extended for scaled + sockets"; + } + leaf sock-async-double-free-prevent-count { + type uint32; + description + "Total number of socket async buffer double free + prevented"; + } + list iqs-total-ingpacket { + max-elements "20"; + description + "Total Number of Ingress packets on TCP iqs"; + leaf entry { + type uint32; + description + "Total Number of Ingress packets on TCP iqs"; + } + } + list iqs-total-egpacket { + max-elements "20"; + description + "Total Number of Egress packets on TCP iqs"; + leaf entry { + type uint32; + description + "Total Number of Egress packets on TCP iqs"; + } + } + } + + grouping TCP-ASYNC-SESSION-STATS-BAG { + description + "TCP Async Session Statistic"; + leaf async-session { + type boolean; + description + "Flag of async session"; + } + list data-write-success-num { + max-elements "2"; + description + "Number of successful data write to XIPC"; + leaf entry { + type uint32; + description + "Number of successful data write to XIPC"; + } + } + list data-read-success-num { + max-elements "2"; + description + "Number of successful data read from XIPC"; + leaf entry { + type uint32; + description + "Number of successful data read from XIPC"; + } + } + list data-write-error-num { + max-elements "2"; + description + "Number of failed data write to XIPC"; + leaf entry { + type uint32; + description + "Number of failed data write to XIPC"; + } + } + list data-read-error-num { + max-elements "2"; + description + "Number of failed data read from XIPC"; + leaf entry { + type uint32; + description + "Number of failed data read from XIPC"; + } + } + list control-write-success-num { + max-elements "5"; + description + "Number of successful control write to XIPC"; + leaf entry { + type uint32; + description + "Number of successful control write to XIPC"; + } + } + list control-read-success-num { + max-elements "5"; + description + "Number of successful control read to XIPC"; + leaf entry { + type uint32; + description + "Number of successful control read to XIPC"; + } + } + list control-write-error-num { + max-elements "5"; + description + "Number of failed control write to XIPC"; + leaf entry { + type uint32; + description + "Number of failed control write to XIPC"; + } + } + list control-read-error-num { + max-elements "5"; + description + "Number of failed control read from XIPC"; + leaf entry { + type uint32; + description + "Number of failed control read from XIPC"; + } + } + list data-write-byte { + max-elements "2"; + description + "Number of bytes data has been written"; + leaf entry { + type uint64; + units "byte"; + description + "Number of bytes data has been written"; + } + } + list data-read-byte { + max-elements "2"; + description + "Number of bytes data has been read"; + leaf entry { + type uint64; + units "byte"; + description + "Number of bytes data has been read"; + } + } + } + + grouping TCP-IO-COUNTS-BAG { + description + "Counts of I/O events"; + leaf io-count { + type uint32; + description + "Number of I/O operations done by application"; + } + leaf arm-count { + type uint32; + description + "How many times socket was armed by application"; + } + leaf unarm-count { + type uint32; + description + "How many times socket was unarmed by application"; + } + leaf autoarm-count { + type uint32; + description + "How many times socket was auto-armed by TCP"; + } + } + + grouping TCP-SH-PCB-STATS-BAG { + description + "TCP PCB Statistics"; + container read-io-counts { + description + "Read I/O counts"; + uses TCP-IO-COUNTS-BAG; + } + container write-io-counts { + description + "Write I/O counts"; + uses TCP-IO-COUNTS-BAG; + } + container async-session-stats { + description + "Statistics of Async TCP Sessions"; + uses TCP-ASYNC-SESSION-STATS-BAG; + } + leaf pcb { + type uint64; + description + "PCB Address"; + } + leaf vrf-id { + type uint32; + description + "VRF Id"; + } + leaf packets-sent { + type uint64; + description + "Packets received from application"; + } + leaf xipc-pulse-received { + type uint64; + description + "XIPC pulses received from application"; + } + leaf segment-instruction-received { + type uint32; + description + "Segment Instruction received from partner node"; + } + leaf send-packets-queued { + type uint64; + description + "Packets queued to v4/v6 IO"; + } + leaf send-packets-queued-net-io { + type uint64; + description + "Packets queued to NetIO"; + } + leaf send-queue-failed { + type uint32; + description + "Packets failed to be queued to v4/v6 IO"; + } + leaf send-queue-net-io-failed { + type uint32; + description + "Packets failed to be queued to NetIO"; + } + leaf packets-received { + type uint64; + description + "Packets received from network"; + } + leaf receive-queue-failed { + type uint32; + description + "Received packets failed to be queued to + application"; + } + leaf received-packets-queued { + type uint64; + description + "Received packets queued to application"; + } + leaf send-window-shrink-ignored { + type uint32; + description + "No. of times send window shrinkage by peer was + ignored"; + } + leaf is-paw-socket { + type boolean; + description + "PAW or non-PAW socket?"; + } + leaf read-io-time { + type uint32; + description + "Time at which receive buffer was last read from"; + } + leaf write-io-time { + type uint32; + description + "Time at which send buffer was last written to"; + } + leaf min-ttl-dropped { + type uint64; + description + "Received packets dropped due to minttl"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub4.yang new file mode 100644 index 000000000..2fccb0031 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub4.yang @@ -0,0 +1,800 @@ +submodule Cisco-IOS-XR-ip-tcp-oper-sub4 { + belongs-to Cisco-IOS-XR-ip-tcp-oper { + prefix Cisco-IOS-XR-ip-tcp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-tcp-oper-sub1 { + revision-date 2022-11-09; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-tcp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Enchanced show tcp brief to include socket info. + 2022-04-22 + Per neighbor pmtud"; + semver:module-version "1.3.0"; + } + revision 2021-05-21 { + description + "APP bound interface handle added to PCB_DETAIL output"; + semver:module-version "1.2.0"; + } + revision 2020-05-15 { + description + "First SYN delay timer added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-01 { + description + "Added socket async double free prevention count in tcp statistics summary"; + } + revision 2018-02-14 { + description + "PCB_ID argument is passed in string format."; + } + revision 2018-02-14 { + description + "Added support for TCP-AO feature."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Message-id { + type uint32; + description + "Message id"; + } + + typedef Message-type-igmp { + type enumeration { + enum "membership-query" { + value 17; + description + "IGMP Packet type: Membership query"; + } + enum "v1-membership-report" { + value 18; + description + "IGMP Packet type: V1 membership report"; + } + enum "dvmrp" { + value 19; + description + "IGMP Packet type: DVMRP"; + } + enum "pi-mv1" { + value 20; + description + "IGMP Packet type: PIM version 1"; + } + enum "cisco-trace-messages" { + value 21; + description + "IGMP Packet type: Cisco Trace Messages"; + } + enum "v2-membership-report" { + value 22; + description + "IGMP Packet type: V2 membership report"; + } + enum "v2-leave-group" { + value 23; + description + "IGMP Packet type: V2 leave group"; + } + enum "multicast-traceroute-response" { + value 30; + description + "IGMP Packet type: Multicast traceroute response"; + } + enum "multicast-traceroute" { + value 31; + description + "IGMP Packet type: MulticastTraceroute"; + } + enum "v3-membership-report" { + value 34; + description + "IGMP Packet type: V3 membership report"; + } + enum "multicast-router-advertisement" { + value 48; + description + "IGMP Packet type: Multicast router + advertisement"; + } + enum "multicast-router-solicitation" { + value 49; + description + "IGMP Packet type: Multicast router solicitation"; + } + enum "multicast-router-termination" { + value 50; + description + "IGMP Packet type: Multicast router termination"; + } + } + description + "LPTS IGMP message types"; + } + + typedef Message-igmp { + type Message-type-igmp; + description + "Message igmp"; + } + + typedef Message-type-icmpv6 { + type enumeration { + enum "destination-unreachable" { + value 1; + description + "ICMPv6 Packet type: Destination unreachable"; + } + enum "packet-too-big" { + value 2; + description + "ICMPv6 Packet type: packet too big"; + } + enum "time-exceeded" { + value 3; + description + "ICMPv6 Packet type: Time exceeded"; + } + enum "parameter-problem" { + value 4; + description + "ICMPv6 Packet type: Parameter problem"; + } + enum "echo-request" { + value 128; + description + "ICMPv6 Packet type: Echo request"; + } + enum "echo-reply" { + value 129; + description + "ICMPv6 Packet type: Echo reply"; + } + enum "multicast-listener-query" { + value 130; + description + "ICMPv6 Packet type: Multicast listener query"; + } + enum "multicast-listener-report" { + value 131; + description + "ICMPv6 Packet type: Multicast listener report"; + } + enum "multicast-listener-done" { + value 132; + description + "ICMPv6 Packet type: Multicast listener done"; + } + enum "router-solicitation" { + value 133; + description + "ICMPv6 Packet type: Router solicitation"; + } + enum "router-advertisement" { + value 134; + description + "ICMPv6 Packet type: Router advertisement"; + } + enum "neighbor-solicitation" { + value 135; + description + "ICMPv6 Packet type: Neighbor solicitation"; + } + enum "neighbor-advertisement" { + value 136; + description + "ICMPv6 Packet type: Neighbor advertisement"; + } + enum "redirect-message" { + value 137; + description + "ICMPv6 Packet type: Redirect message"; + } + enum "router-renumbering" { + value 138; + description + "ICMPv6 Packet type: Router renumbering"; + } + enum "node-information-query" { + value 139; + description + "ICMPv6 Packet type: Node information query"; + } + enum "node-information-reply" { + value 140; + description + "ICMPv6 Packet type: Node information reply"; + } + enum "inverse-neighbor-discovery-solicitaion" { + value 141; + description + "ICMPv6 Packet type: Inverse neighbor discovery + solicitation message"; + } + enum "inverse-neighbor-discover-advertisement" { + value 142; + description + "ICMPv6 Packet type: Inverse neighbor discovery + advertisement message"; + } + enum "v2-multicast-listener-report" { + value 143; + description + "ICMPv6 Packet type: Version 2 multicast + listener report"; + } + enum "home-agent-address-discovery-request" { + value 144; + description + "ICMPv6 Packet type: Home agent address + discovery request message"; + } + enum "home-agent-address-discovery-reply" { + value 145; + description + "ICMPv6 Packet type: Home agent address + discovery reply message"; + } + enum "mobile-prefix-solicitation" { + value 146; + description + "ICMPv6 Packet type: Mobile prefix solicitation"; + } + enum "mobile-prefix-advertisement" { + value 147; + description + "ICMPv6 Packet type: Mobile prefix advertisement"; + } + enum "certification-path-solicitation-message" { + value 148; + description + "ICMPv6 Packet type: Certification path + solicitation message"; + } + enum "certification-path-advertisement-message" { + value 149; + description + "ICMPv6 Packet type: Certification path + advertisement message"; + } + enum "experimental-mobility-protocols" { + value 150; + description + "ICMPv6 Packet type: ICMP messages utilized by + experimental mobility protocols such as + seamoby"; + } + enum "multicast-router-advertisement" { + value 151; + description + "ICMPv6 Packet type: Multicast router + advertisement"; + } + enum "multicast-router-solicitation" { + value 152; + description + "ICMPv6 Packet type: Multicast router + solicitation"; + } + enum "multicast-router-termination" { + value 153; + description + "ICMPv6 Packet type: Multicast router + termination"; + } + enum "fmipv6-messages" { + value 154; + description + "ICMPv6 Packet type: FMIPv6 messages"; + } + } + description + "LPTS ICMPv6 message types"; + } + + typedef Message-icmpv6 { + type Message-type-icmpv6; + description + "Message icmpv6"; + } + + typedef Message-type-icmp { + type enumeration { + enum "echo-reply" { + value 0; + description + "ICMP Packet type: Echo reply"; + } + enum "destination-unreachable" { + value 3; + description + "ICMP Packet type: Destination unreachable"; + } + enum "source-quench" { + value 4; + description + "ICMP Packet type: Source quench"; + } + enum "redirect" { + value 5; + description + "ICMP Packet type: Redirect"; + } + enum "alternate-host-address" { + value 6; + description + "ICMP Packet type: Alternate host address"; + } + enum "echo" { + value 8; + description + "ICMP Packet type: Echo"; + } + enum "router-advertisement" { + value 9; + description + "ICMP Packet type: Router advertisement"; + } + enum "router-selection" { + value 10; + description + "ICMP Packet type: Router selection"; + } + enum "time-exceeded" { + value 11; + description + "ICMP Packet type: Time exceeded"; + } + enum "parameter-problem" { + value 12; + description + "ICMP Packet type: Parameter problem"; + } + enum "time-stamp" { + value 13; + description + "ICMP Packet type: Time stamp"; + } + enum "time-stamp-reply" { + value 14; + description + "ICMP Packet type: Time stamp reply"; + } + enum "information-request" { + value 15; + description + "ICMP Packet type: Information request"; + } + enum "information-reply" { + value 16; + description + "ICMP Packet type: Information reply"; + } + enum "address-mask-request" { + value 17; + description + "ICMP Packet type: Address mask request"; + } + enum "address-mask-reply" { + value 18; + description + "ICMP Packet type: Address mask reply"; + } + enum "trace-route" { + value 30; + description + "ICMP Packet type: Trace route"; + } + enum "datagram-conversion-error" { + value 31; + description + "ICMP Packet type: Datagram Conversion error"; + } + enum "mobile-host-redirect" { + value 32; + description + "ICMP Packet type: Mobile host redirect"; + } + enum "where-are-you" { + value 33; + description + "ICMP Packet type: IPv6 where-are-you"; + } + enum "iam-here" { + value 34; + description + "ICMP Packet type: IPv6 i-am-here"; + } + enum "mobile-registration-request" { + value 35; + description + "ICMP Packet type: Mobile registration request"; + } + enum "mobile-registration-reply" { + value 36; + description + "ICMP Packet type: Mobile registration reply"; + } + enum "domain-name-request" { + value 37; + description + "ICMP Packet type: Domain name request"; + } + } + description + "LPTS ICMP message types"; + } + + typedef Message-icmp { + type Message-type-icmp; + description + "Message icmp"; + } + + typedef Packet { + type enumeration { + enum "icmp" { + description + "ICMP packet type"; + } + enum "icm-pv6" { + description + "ICMPv6 packet type"; + } + enum "igmp" { + description + "IGMP packet type"; + } + enum "unknown" { + description + "Packet type unknown"; + } + } + description + "Packet type"; + } + + typedef Lpts-ipv6-address { + type inet:ipv6-address; + description + "Lpts ipv6 address"; + } + + grouping PKT-TYPE { + description + "PKT TYPE"; + leaf type { + type Packet; + description + "Type"; + } + leaf icmp-message-type { + when "../type = 'icmp'" { + description + "../Type = 'ICMP'"; + } + type Message-icmp; + description + "ICMP message type"; + } + leaf icm-pv6-message-type { + when "../type = 'icm-pv6'" { + description + "../Type = 'ICMPv6'"; + } + type Message-icmpv6; + description + "ICMPv6 message type"; + } + leaf igmp-message-type { + when "../type = 'igmp'" { + description + "../Type = 'IGMP'"; + } + type Message-igmp; + description + "IGMP message type"; + } + leaf message-id { + when "../type = 'unknown'" { + description + "../Type = 'Unknown'"; + } + type Message-id; + description + "Message type in number"; + } + } + + grouping LPTS-RX-FILTER { + description + "LPTS Interface Filter"; + container packet-type { + description + "Protocol-specific packet type"; + uses PKT-TYPE; + } + container remote-address { + description + "Remote address"; + uses IP-ADDR; + } + container local-address { + description + "Local address"; + uses IP-ADDR; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf remote-length { + type uint16; + description + "Remote address length"; + } + leaf local-length { + type uint16; + description + "Local address length"; + } + leaf receive-remote-port { + type uint16; + description + "Receive Remote port"; + } + leaf receive-local-port { + type uint16; + description + "Receive Local port"; + } + leaf priority { + type uint8; + description + "Priority"; + } + leaf ttl { + type uint8; + description + "Minimum TTL"; + } + leaf flow-types-info { + type uint32; + description + "flow information"; + } + } + + grouping LPTS-ACCEPT-MASK { + description + "LPTS accept mask"; + leaf is-interface { + type boolean; + description + "Set interface"; + } + leaf is-packet-type { + type boolean; + description + "Set packet type"; + } + leaf is-remote-address { + type boolean; + description + "Set Remote address"; + } + leaf is-remote-port { + type boolean; + description + "Set Remote Port"; + } + leaf is-local-address { + type boolean; + description + "Set Local Address"; + } + leaf is-local-port { + type boolean; + description + "Set Local Port"; + } + } + + grouping LPTS-FLAGS { + description + "LPTS flags"; + leaf is-pcb-bound { + type boolean; + description + "PCB bound"; + } + leaf is-local-address-ignore { + type boolean; + description + "Sent drop packets"; + } + leaf is-ignore-vrf-filter { + type boolean; + description + "Ignore VRF Filter"; + } + } + + grouping LPTS-OPTIONS { + description + "LPTS options"; + leaf is-receive-filter { + type boolean; + description + "Receive filter enabled"; + } + leaf is-ip-sla { + type boolean; + description + "IP SLA"; + } + } + + grouping LPTS-PCB { + description + "LPTS PCB information block"; + container options { + description + "Receive options"; + uses LPTS-OPTIONS; + } + container lpts-flags { + description + "LPTS flags"; + uses LPTS-FLAGS; + } + container accept-mask { + description + "AcceptMask"; + uses LPTS-ACCEPT-MASK; + } + leaf ttl { + type uint8; + description + "Minimum TTL"; + } + leaf flow-types-info { + type uint32; + description + "flow information"; + } + list filter { + description + "Interface Filters"; + uses LPTS-RX-FILTER; + } + } + + grouping COMMON-PCB-INFO { + description + "Common information for all PCB types"; + container lpts-pcb { + description + "LPTS PCB information"; + uses LPTS-PCB; + } + leaf af-name { + type Addr-family; + description + "Address Family"; + } + } + + grouping IP-ADDR { + description + "IP Address"; + leaf af-name { + type Addr-family; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'internetwork'" { + description + "../AFName = 'Internetwork'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../af-name = 'ip-version6'" { + description + "../AFName = 'IPVersion6'"; + } + type Lpts-ipv6-address; + description + "IPv6 address"; + } + } + + grouping SHOW-PCB-INFO { + description + "PCB information to display"; + container local-address { + description + "Local IP address"; + uses IP-ADDR; + } + container foreign-address { + description + "Remote IP address"; + uses IP-ADDR; + } + container common { + description + "Common PCB information"; + uses COMMON-PCB-INFO; + } + leaf l4-protocol { + type uint32; + description + "Layer 4 protocol"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Remote port"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub5.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub5.yang new file mode 100644 index 000000000..185e2b3fd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper-sub5.yang @@ -0,0 +1,112 @@ +submodule Cisco-IOS-XR-ip-tcp-oper-sub5 { + belongs-to Cisco-IOS-XR-ip-tcp-oper { + prefix Cisco-IOS-XR-ip-tcp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-tcp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Enchanced show tcp brief to include socket info. + 2022-04-22 + Per neighbor pmtud"; + semver:module-version "1.3.0"; + } + revision 2021-05-21 { + description + "APP bound interface handle added to PCB_DETAIL output"; + semver:module-version "1.2.0"; + } + revision 2020-05-15 { + description + "First SYN delay timer added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-01 { + description + "Added socket async double free prevention count in tcp statistics summary"; + } + revision 2018-02-14 { + description + "PCB_ID argument is passed in string format."; + } + revision 2018-02-14 { + description + "Added support for TCP-AO feature."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TRANSP-CLIENT-STATS-BAG { + description + "Aggregated statistics of a transport client"; + leaf client-jid { + type int32; + description + "Job ID of the transport client"; + } + leaf client-name { + type string { + length "0..21"; + } + description + "Transport client name"; + } + leaf ipv4-received-packets { + type uint32; + description + "Total IPv4 packets received from client"; + } + leaf ipv4-sent-packets { + type uint32; + description + "Total IPv4 packets sent to client"; + } + leaf ipv6-received-packets { + type uint32; + description + "Total IPv6 packets received from app"; + } + leaf ipv6-sent-packets { + type uint32; + description + "Total IPv6 packets sent to app"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper.yang new file mode 100644 index 000000000..f08c8d879 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-tcp-oper.yang @@ -0,0 +1,484 @@ +module Cisco-IOS-XR-ip-tcp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-tcp-oper"; + prefix ip-tcp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-tcp-oper-sub5 { + revision-date 2022-11-09; + } + include Cisco-IOS-XR-ip-tcp-oper-sub4 { + revision-date 2022-11-09; + } + include Cisco-IOS-XR-ip-tcp-oper-sub3 { + revision-date 2022-11-09; + } + include Cisco-IOS-XR-ip-tcp-oper-sub2 { + revision-date 2022-11-09; + } + include Cisco-IOS-XR-ip-tcp-oper-sub1 { + revision-date 2022-11-09; + } + + 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 ip-tcp package operational data. + + This module contains definitions + for the following management objects: + tcp-connection: TCP connection operational data + tcp: IP TCP Operational Data + tcp-nsr: TCP NSR operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-09 { + description + "Enchanced show tcp brief to include socket info. + 2022-04-22 + Per neighbor pmtud"; + semver:module-version "1.3.0"; + } + revision 2021-05-21 { + description + "APP bound interface handle added to PCB_DETAIL output"; + semver:module-version "1.2.0"; + } + revision 2020-05-15 { + description + "First SYN delay timer added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-01 { + description + "Added socket async double free prevention count in tcp statistics summary"; + } + revision 2018-02-14 { + description + "PCB_ID argument is passed in string format."; + } + revision 2018-02-14 { + description + "Added support for TCP-AO feature."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Show { + type enumeration { + enum "all" { + value 0; + description + "To dispay all"; + } + enum "static-policy" { + value 1; + description + "To display static policy"; + } + enum "interface-filter" { + value 2; + description + "To display interface filter"; + } + enum "packet-filter" { + value 3; + description + "To display packet type filter"; + } + } + description + "Show"; + } + + container tcp-connection { + config false; + description + "TCP connection operational data"; + container nodes { + description + "Table of information about all nodes present on + the system"; + list node { + key "id"; + description + "Information about a single node"; + container statistics { + description + "Statistics of all TCP connections"; + container clients { + description + "Table listing clients"; + list client { + key "client-id"; + description + "Describing Client ID"; + leaf client-id { + type uint32 { + range "0..4294967295"; + } + description + "Displaying client's aggregated statistics"; + } + uses TRANSP-CLIENT-STATS-BAG; + } + } + container pcbs { + description + "Table listing the TCP connections for which + statistics are provided"; + list pcb { + key "id"; + description + "Protocol Control Block ID"; + leaf id { + type xr:Cisco-ios-xr-string; + description + "Displaying statistics associated with a + particular PCB"; + } + uses TCP-SH-PCB-STATS-BAG; + } + } + container summary { + description + "Summary statistics across all TCP connections"; + uses TCP-SH-STATS-BAG; + } + } + container extended-information { + description + "Extended Filter related Information"; + container display-types { + description + "Table listing display types"; + list display-type { + key "disp-type"; + description + "Describing particular display type"; + leaf disp-type { + type Show; + description + "Specifying display type"; + } + list connection-id { + key "pcb-id"; + description + "Describing connection ID"; + leaf pcb-id { + type xr:Cisco-ios-xr-string; + description + "Displaying inforamtion based on selected + display type associatedwith a particular + PCB"; + } + uses SHOW-PCB-INFO; + } + } + } + } + container detail-informations { + description + "Table listing TCP connections for which + detailed information is provided"; + list detail-information { + key "pcb-id"; + description + "Protocol Control Block ID"; + leaf pcb-id { + type xr:Cisco-ios-xr-string; + description + "Detail information about TCP connection, put + null for all"; + } + uses TCP-SH-TABLE-BAG; + } + } + container keychains { + description + "Table listing keychains configured for TCP-AO."; + list keychain { + key "keychain-name"; + description + "Details of a keychain"; + leaf keychain-name { + type xr:Cisco-ios-xr-string; + description + "Keychain name"; + } + uses TCP-SH-KEYCHAIN-BAG; + } + } + container brief-informations { + description + "Table listing connections for which brief + information is provided.Note that not all + connections are listed in the brief table."; + list brief-information { + key "pcb-id"; + description + "Brief information about a TCP connection"; + leaf pcb-id { + type xr:Cisco-ios-xr-string; + description + "Protocol Control Block ID"; + } + uses TCP-SH-BRIEF-BAG; + } + } + leaf id { + type xr:Node-id; + description + "Describing a location"; + } + } + } + } + container tcp { + config false; + description + "IP TCP Operational Data"; + container nodes { + description + "Node-specific TCP operational data"; + list node { + key "node-name"; + description + "TCP operational data for a particular node"; + container statistics { + description + "Statistical TCP operational data for a node"; + container ipv4-traffic { + description + "TCP Traffic statistics for IPv4"; + uses IP-TCP; + } + container ipv6-traffic { + description + "TCP Traffic statistics for IPv6"; + uses IP-TCP; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container tcp-nsr { + config false; + description + "TCP NSR operational data"; + container nodes { + description + "Table of information about all nodes present on + the system"; + list node { + key "id"; + description + "Information about a single node"; + container session { + description + "Information about TCP NSR Sessions"; + container brief-sessions { + description + "Information about TCP NSR Sessions"; + list brief-session { + key "id"; + description + "Brief information about NSR Sessions"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR Sesison"; + } + uses TCP-NSR-PCB-BRIEF-BAG; + } + } + container detail-sessions { + description + "Table about TCP NSR Sessions details"; + list detail-session { + key "id"; + description + "showing detailed information of NSR Sessions"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR Sesison"; + } + uses TCP-NSR-PCB-DETAILED-BAG; + } + } + } + container client { + description + "Information about TCP NSR Client"; + container detail-clients { + description + "Table about TCP NSR Client details"; + list detail-client { + key "id"; + description + "showing detailed information of NSR Clients"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR client"; + } + uses TCP-NSR-CCB-DETAILED-BAG; + } + } + container brief-clients { + description + "Information about TCP NSR Client"; + list brief-client { + key "id"; + description + "Brief information about NSR Client"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR client"; + } + uses TCP-NSR-CCB-BRIEF-BAG; + } + } + } + container session-set { + description + "Information about TCP NSR Session Sets"; + container detail-sets { + description + "Table about TCP NSR Session Sets details"; + list detail-set { + key "id"; + description + "showing detailed information of NSR Session + Sets"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR Sesison Set"; + } + uses TCP-NSR-SSCB-DETAILED-BAG; + } + } + container brief-sets { + description + "Information about TCP NSR Session Sets"; + list brief-set { + key "id"; + description + "Brief information about NSR Session Sets"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR Session Set"; + } + uses TCP-NSR-SSCB-BRIEF-BAG; + } + } + } + container statistics { + description + "Statis Information about TCP NSR connections"; + container summary { + description + "Summary statistics across all NSR connections"; + uses TCP-NSR-SUMMARY-STATS-BAG; + } + container statistic-clients { + description + "Table listing NSR connections for which + statistic information is provided"; + list statistic-client { + key "id"; + description + "showing statistic information of NSR Clients"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR Client"; + } + uses TCP-NSR-CCB-STATS-BAG; + } + } + container statistic-sets { + description + "Table listing NSR connections for which + statistic information is provided"; + list statistic-set { + key "id"; + description + "showing statistic information of NSR Session + Set"; + leaf id { + type xr:Hex-integer; + description + "ID of NSR Session Set"; + } + uses TCP-NSR-SSCB-STATS-BAG; + } + } + container statistic-sessions { + description + "Table listing NSR connections for which + statistic information is provided"; + list statistic-session { + key "id"; + description + "showing statistic information of TCP + connections"; + leaf id { + type xr:Hex-integer; + description + "ID of TCP connection"; + } + uses TCP-NSR-PCB-STATS-BAG; + } + } + } + leaf id { + type xr:Node-id; + description + "Describing a location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-cfg.yang new file mode 100644 index 000000000..f0996fc25 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-cfg.yang @@ -0,0 +1,238 @@ +module Cisco-IOS-XR-ip-udp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-udp-cfg"; + prefix ip-udp-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ip-tcp-cfg { + prefix a1; + } + + 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 ip-udp package configuration. + + This module contains definitions + for the following management objects: + ip-udp: Global IP UDP configuration + + This YANG module augments the + Cisco-IOS-XR-ip-tcp-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-07-31 { + description + "Fixed missing augmentation from multiple MDA parent."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:ip" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ip-tcp-cfg'"; + container forward-protocol { + description + "Controls forwarding of physical and directed IP + broadcasts"; + container udp { + description + "Packets to a specific UDP port"; + container ports { + description + "Port configuration"; + list port { + key "port-id"; + description + "Well-known ports are enabled by default and + non well-known ports are disabled by default. + It is not allowed to configure the default."; + leaf port-id { + type xr:Cisco-ios-xr-port-number; + description + "Port number"; + } + leaf enable { + type boolean; + mandatory true; + description + "Specify 'false' to disable well-known ports + Domain (53), TFTP (69), NameServer (42), + TACACS (49), NetBiosNameService (137), or + NetBiosDatagramService (138). Specify + 'true' to enable non well-known ports."; + } + } + } + leaf disable { + type empty; + description + "Disable IP Forward Protocol UDP"; + } + } + } + } + augment "/a1:ip/a1:cinetd/a1:services/a1:ipv4/a1:small-servers" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ip-tcp-cfg'"; + container udp-small-servers { + presence "Indicates a udp-small-servers node is configured."; + description + "UDP small servers configuration"; + leaf access-control-list-name { + type string; + description + "Specify the access list"; + } + leaf small-server { + type union { + type enumeration { + enum "no-limit" { + value 0; + description + "Unlimited Servers"; + } + } + type uint32 { + range "0..2147483647"; + } + } + mandatory true; + description + "Set number of allowable small servers, specify + 0 for no-limit"; + } + } + } + augment "/a1:ip/a1:cinetd/a1:services/a1:ipv6/a1:small-servers" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ip-tcp-cfg'"; + container udp-small-servers { + presence "Indicates a udp-small-servers node is configured."; + description + "UDP small servers configuration"; + leaf access-control-list-name { + type string; + description + "Specify the access list"; + } + leaf small-server { + type union { + type enumeration { + enum "no-limit" { + value 0; + description + "Unlimited Servers"; + } + } + type uint32 { + range "0..2147483647"; + } + } + mandatory true; + description + "Set number of allowable small servers, specify + 0 for no-limit"; + } + } + } + container ip-udp { + description + "Global IP UDP configuration"; + container num-thread { + presence "Indicates a num-thread node is configured."; + description + "UDP InQueue and OutQueue threads"; + leaf udp-in-q-threads { + type uint32 { + range "1..16"; + } + mandatory true; + description + "InQ Threads"; + } + leaf udp-out-q-threads { + type uint32 { + range "1..16"; + } + mandatory true; + description + "OutQ Threads"; + } + } + container directory { + presence "Indicates a directory node is configured."; + description + "UDP directory details"; + leaf directoryname { + type string; + mandatory true; + description + "Directory name"; + } + leaf max-udp-debug-files { + type uint32 { + range "1..5000"; + } + default "256"; + description + "Set number of Debug files"; + } + leaf max-file-size-files { + type uint32 { + range "1024..4294967295"; + } + units "byte"; + description + "Set size of debug files in bytes"; + } + } + leaf receive-q { + type uint32 { + range "40..800"; + } + description + "UDP receive Queue Size"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub1.yang new file mode 100644 index 000000000..50a9e4474 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub1.yang @@ -0,0 +1,486 @@ +submodule Cisco-IOS-XR-ip-udp-oper-sub1 { + belongs-to Cisco-IOS-XR-ip-udp-oper { + prefix Cisco-IOS-XR-ip-udp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-udp package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-06 { + description + "min_ttl_dropped field is added to PCB_DETAIL output."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-09 { + description + "bind_local field is added to PCB_DETAIL output"; + } + revision 2018-03-04 { + description + "PCB_ID argument is passed in string format."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Udp-in6-addr { + type inet:ipv6-address; + description + "Udp in6 addr"; + } + + typedef Udp-address-family { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4"; + } + enum "ipv6" { + value 10; + description + "IPv6"; + } + } + description + "Address Family Type"; + } + + grouping UDP-SH-BRIEF-BAG { + description + "UDP connection brief information"; + container local-address { + description + "Local address"; + uses UDP-ADDRESS-TYPE; + } + container foreign-address { + description + "Foreign address"; + uses UDP-ADDRESS-TYPE; + } + leaf af-name { + type Udp-address-family; + description + "Address family"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Foreign port"; + } + leaf receive-queue { + type uint32; + description + "Receive queue count"; + } + leaf send-queue { + type uint32; + description + "Send queue count"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + } + + grouping UDP-PCB-FLAGS-BAG { + description + "UDP PCB flags"; + leaf recv-opts { + type boolean; + description + "Receive input options"; + } + leaf recv-ret-opts { + type boolean; + description + "Receive input source-route options"; + } + leaf recv-dest-addr { + type boolean; + description + "Receive destination address"; + } + leaf header-include { + type boolean; + description + "Header include option"; + } + leaf recv-intf { + type boolean; + description + "Receive input interface"; + } + leaf recv-header { + type boolean; + description + "Receive header"; + } + leaf mcast-loopback { + type boolean; + description + "Loopback of multicast packet"; + } + leaf recv-l2-header { + type boolean; + description + "Receive L2 header"; + } + leaf recv-packet-info { + type boolean; + description + "Receive packet information"; + } + leaf router-alert { + type boolean; + description + "Receive router alert packets"; + } + leaf recv-hop-limit { + type boolean; + description + "Receive hop limit"; + } + leaf recv-routing-header { + type boolean; + description + "Receive routing header"; + } + leaf recv-hop-header { + type boolean; + description + "Receive hop by hop option header"; + } + leaf recv-dest-header { + type boolean; + description + "Receive destination option header"; + } + leaf recv-traffic-class { + type boolean; + description + "Receive traffic class"; + } + leaf recv-ip-sec { + type boolean; + description + "Receive IP security information"; + } + leaf recv-tabel-id { + type boolean; + description + "Receive table identifier"; + } + leaf recv-pak-priority { + type boolean; + description + "Receive packet priority"; + } + leaf conn-limit { + type boolean; + description + "Connection limit"; + } + leaf opt-handled { + type boolean; + description + "Option handled"; + } + leaf bind-local { + type boolean; + description + "Local node packet delivery"; + } + } + + grouping UDP-ADDRESS-TYPE { + description + "UDP ADDRESS TYPE"; + leaf af-name { + type Udp-address-family; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6-address { + when "../af-name != 'ipv4'" { + description + "../AFName != 'IPv4'"; + } + type Udp-in6-addr; + description + "IPv6 Address"; + } + } + + grouping UDP-SH-TABLE-BAG { + description + "UDP detail pcb information"; + container local-address { + description + "Local address"; + uses UDP-ADDRESS-TYPE; + } + container foreign-address { + description + "Foreign address"; + uses UDP-ADDRESS-TYPE; + } + container pcb-flags { + description + "PCB flags"; + uses UDP-PCB-FLAGS-BAG; + } + leaf af-name { + type Udp-address-family; + description + "Address family"; + } + leaf local-process-id { + type uint32; + description + "ID of local process"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Foreign port"; + } + leaf receive-queue { + type uint32; + description + "Receive queue count"; + } + leaf send-queue { + type uint32; + description + "Send queue count"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf flow-label { + type uint32; + description + "Flow label set "; + } + leaf traffic-class { + type int32; + description + "Traffic Class set "; + } + } + + grouping UDP-PCB-RECEIVE-STATS-TYPE { + description + "UDP receive statistics"; + leaf received-network-packets { + type uint64; + description + "Packets received from network"; + } + leaf failed-queued-application-packets { + type uint32; + description + "Packets failed queued to application"; + } + leaf queued-application-packets { + type uint64; + description + "Packets queued to application"; + } + leaf failed-queued-application-socket-packets { + type uint32; + description + "Packet that couldn't be queued to application.on + socket"; + } + leaf queued-application-socket-packets { + type uint64; + description + "Packets queued to application on socket"; + } + leaf min-ttl-dropped { + type uint64; + description + "Received packets dropped due to minttl"; + } + } + + grouping UDP-PCB-SEND-STATS-TYPE { + description + "UDP send statistics"; + leaf received-application-bytes { + type uint64; + units "byte"; + description + "Bytes received from application"; + } + leaf received-xipc-pulses { + type uint64; + description + "XIPC pulses received from application"; + } + leaf sent-network-packets { + type uint64; + description + "Packets sent to network (v4/v6 IO)"; + } + leaf sent-net-io-packets { + type uint64; + description + "Packets sent to network (NetIO)"; + } + leaf failed-queued-network-packets { + type uint32; + description + "Packets failed getting queued to network (v4/v6 + IO)"; + } + leaf failed-queued-net-io-packets { + type uint32; + description + "Packets failed getting queued to network (NetIO)"; + } + } + + grouping UDP-SH-PCB-STATS-BAG { + description + "UDP statistics"; + container send { + description + "UDP send statistics"; + uses UDP-PCB-SEND-STATS-TYPE; + } + container receive { + description + "UDP receive statistics"; + uses UDP-PCB-RECEIVE-STATS-TYPE; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf is-paw-socket { + type boolean; + description + "True if paw socket"; + } + } + + grouping UDP-SH-STATS-BAG { + description + "UDP statistics summary"; + leaf received-total-packets { + type uint32; + description + "Total packets received"; + } + leaf received-no-port-packets { + type uint32; + description + "Packets received when no wild listener"; + } + leaf received-bad-checksum-packets { + type uint32; + description + "Packets received has bad checksum"; + } + leaf received-too-short-packets { + type uint32; + description + "Packets received is too short"; + } + leaf received-drop-packets { + type uint32; + description + "Packets dropped for other reasons"; + } + leaf sent-total-packets { + type uint32; + description + "Total packets sent"; + } + leaf sent-error-packets { + type uint32; + description + "Total send erorr packets"; + } + leaf forward-broadcast-packets { + type uint32; + description + "Total forwarding broadcast packets"; + } + leaf cloned-packets { + type uint32; + description + "Total cloned packets"; + } + leaf failed-clone-packets { + type uint32; + description + "Total failed cloned packets"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub2.yang new file mode 100644 index 000000000..05f360d61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub2.yang @@ -0,0 +1,998 @@ +submodule Cisco-IOS-XR-ip-udp-oper-sub2 { + belongs-to Cisco-IOS-XR-ip-udp-oper { + prefix Cisco-IOS-XR-ip-udp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-udp package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-06 { + description + "min_ttl_dropped field is added to PCB_DETAIL output."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-09 { + description + "bind_local field is added to PCB_DETAIL output"; + } + revision 2018-03-04 { + description + "PCB_ID argument is passed in string format."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Message-id { + type uint32; + description + "Message id"; + } + + typedef Message-type-igmp { + type enumeration { + enum "membership-query" { + value 17; + description + "IGMP Packet type: Membership query"; + } + enum "v1-membership-report" { + value 18; + description + "IGMP Packet type: V1 membership report"; + } + enum "dvmrp" { + value 19; + description + "IGMP Packet type: DVMRP"; + } + enum "pi-mv1" { + value 20; + description + "IGMP Packet type: PIM version 1"; + } + enum "cisco-trace-messages" { + value 21; + description + "IGMP Packet type: Cisco Trace Messages"; + } + enum "v2-membership-report" { + value 22; + description + "IGMP Packet type: V2 membership report"; + } + enum "v2-leave-group" { + value 23; + description + "IGMP Packet type: V2 leave group"; + } + enum "multicast-traceroute-response" { + value 30; + description + "IGMP Packet type: Multicast traceroute response"; + } + enum "multicast-traceroute" { + value 31; + description + "IGMP Packet type: MulticastTraceroute"; + } + enum "v3-membership-report" { + value 34; + description + "IGMP Packet type: V3 membership report"; + } + enum "multicast-router-advertisement" { + value 48; + description + "IGMP Packet type: Multicast router + advertisement"; + } + enum "multicast-router-solicitation" { + value 49; + description + "IGMP Packet type: Multicast router solicitation"; + } + enum "multicast-router-termination" { + value 50; + description + "IGMP Packet type: Multicast router termination"; + } + } + description + "LPTS IGMP message types"; + } + + typedef Message-igmp { + type Message-type-igmp; + description + "Message igmp"; + } + + typedef Message-type-icmpv6 { + type enumeration { + enum "destination-unreachable" { + value 1; + description + "ICMPv6 Packet type: Destination unreachable"; + } + enum "packet-too-big" { + value 2; + description + "ICMPv6 Packet type: packet too big"; + } + enum "time-exceeded" { + value 3; + description + "ICMPv6 Packet type: Time exceeded"; + } + enum "parameter-problem" { + value 4; + description + "ICMPv6 Packet type: Parameter problem"; + } + enum "echo-request" { + value 128; + description + "ICMPv6 Packet type: Echo request"; + } + enum "echo-reply" { + value 129; + description + "ICMPv6 Packet type: Echo reply"; + } + enum "multicast-listener-query" { + value 130; + description + "ICMPv6 Packet type: Multicast listener query"; + } + enum "multicast-listener-report" { + value 131; + description + "ICMPv6 Packet type: Multicast listener report"; + } + enum "multicast-listener-done" { + value 132; + description + "ICMPv6 Packet type: Multicast listener done"; + } + enum "router-solicitation" { + value 133; + description + "ICMPv6 Packet type: Router solicitation"; + } + enum "router-advertisement" { + value 134; + description + "ICMPv6 Packet type: Router advertisement"; + } + enum "neighbor-solicitation" { + value 135; + description + "ICMPv6 Packet type: Neighbor solicitation"; + } + enum "neighbor-advertisement" { + value 136; + description + "ICMPv6 Packet type: Neighbor advertisement"; + } + enum "redirect-message" { + value 137; + description + "ICMPv6 Packet type: Redirect message"; + } + enum "router-renumbering" { + value 138; + description + "ICMPv6 Packet type: Router renumbering"; + } + enum "node-information-query" { + value 139; + description + "ICMPv6 Packet type: Node information query"; + } + enum "node-information-reply" { + value 140; + description + "ICMPv6 Packet type: Node information reply"; + } + enum "inverse-neighbor-discovery-solicitaion" { + value 141; + description + "ICMPv6 Packet type: Inverse neighbor discovery + solicitation message"; + } + enum "inverse-neighbor-discover-advertisement" { + value 142; + description + "ICMPv6 Packet type: Inverse neighbor discovery + advertisement message"; + } + enum "v2-multicast-listener-report" { + value 143; + description + "ICMPv6 Packet type: Version 2 multicast + listener report"; + } + enum "home-agent-address-discovery-request" { + value 144; + description + "ICMPv6 Packet type: Home agent address + discovery request message"; + } + enum "home-agent-address-discovery-reply" { + value 145; + description + "ICMPv6 Packet type: Home agent address + discovery reply message"; + } + enum "mobile-prefix-solicitation" { + value 146; + description + "ICMPv6 Packet type: Mobile prefix solicitation"; + } + enum "mobile-prefix-advertisement" { + value 147; + description + "ICMPv6 Packet type: Mobile prefix advertisement"; + } + enum "certification-path-solicitation-message" { + value 148; + description + "ICMPv6 Packet type: Certification path + solicitation message"; + } + enum "certification-path-advertisement-message" { + value 149; + description + "ICMPv6 Packet type: Certification path + advertisement message"; + } + enum "experimental-mobility-protocols" { + value 150; + description + "ICMPv6 Packet type: ICMP messages utilized by + experimental mobility protocols such as + seamoby"; + } + enum "multicast-router-advertisement" { + value 151; + description + "ICMPv6 Packet type: Multicast router + advertisement"; + } + enum "multicast-router-solicitation" { + value 152; + description + "ICMPv6 Packet type: Multicast router + solicitation"; + } + enum "multicast-router-termination" { + value 153; + description + "ICMPv6 Packet type: Multicast router + termination"; + } + enum "fmipv6-messages" { + value 154; + description + "ICMPv6 Packet type: FMIPv6 messages"; + } + } + description + "LPTS ICMPv6 message types"; + } + + typedef Message-icmpv6 { + type Message-type-icmpv6; + description + "Message icmpv6"; + } + + typedef Message-type-icmp { + type enumeration { + enum "echo-reply" { + value 0; + description + "ICMP Packet type: Echo reply"; + } + enum "destination-unreachable" { + value 3; + description + "ICMP Packet type: Destination unreachable"; + } + enum "source-quench" { + value 4; + description + "ICMP Packet type: Source quench"; + } + enum "redirect" { + value 5; + description + "ICMP Packet type: Redirect"; + } + enum "alternate-host-address" { + value 6; + description + "ICMP Packet type: Alternate host address"; + } + enum "echo" { + value 8; + description + "ICMP Packet type: Echo"; + } + enum "router-advertisement" { + value 9; + description + "ICMP Packet type: Router advertisement"; + } + enum "router-selection" { + value 10; + description + "ICMP Packet type: Router selection"; + } + enum "time-exceeded" { + value 11; + description + "ICMP Packet type: Time exceeded"; + } + enum "parameter-problem" { + value 12; + description + "ICMP Packet type: Parameter problem"; + } + enum "time-stamp" { + value 13; + description + "ICMP Packet type: Time stamp"; + } + enum "time-stamp-reply" { + value 14; + description + "ICMP Packet type: Time stamp reply"; + } + enum "information-request" { + value 15; + description + "ICMP Packet type: Information request"; + } + enum "information-reply" { + value 16; + description + "ICMP Packet type: Information reply"; + } + enum "address-mask-request" { + value 17; + description + "ICMP Packet type: Address mask request"; + } + enum "address-mask-reply" { + value 18; + description + "ICMP Packet type: Address mask reply"; + } + enum "trace-route" { + value 30; + description + "ICMP Packet type: Trace route"; + } + enum "datagram-conversion-error" { + value 31; + description + "ICMP Packet type: Datagram Conversion error"; + } + enum "mobile-host-redirect" { + value 32; + description + "ICMP Packet type: Mobile host redirect"; + } + enum "where-are-you" { + value 33; + description + "ICMP Packet type: IPv6 where-are-you"; + } + enum "iam-here" { + value 34; + description + "ICMP Packet type: IPv6 i-am-here"; + } + enum "mobile-registration-request" { + value 35; + description + "ICMP Packet type: Mobile registration request"; + } + enum "mobile-registration-reply" { + value 36; + description + "ICMP Packet type: Mobile registration reply"; + } + enum "domain-name-request" { + value 37; + description + "ICMP Packet type: Domain name request"; + } + } + description + "LPTS ICMP message types"; + } + + typedef Message-icmp { + type Message-type-icmp; + description + "Message icmp"; + } + + typedef Packet { + type enumeration { + enum "icmp" { + description + "ICMP packet type"; + } + enum "icm-pv6" { + description + "ICMPv6 packet type"; + } + enum "igmp" { + description + "IGMP packet type"; + } + enum "unknown" { + description + "Packet type unknown"; + } + } + description + "Packet type"; + } + + typedef Lpts-ipv6-address { + type inet:ipv6-address; + description + "Lpts ipv6 address"; + } + + typedef Addr-family { + type enumeration { + enum "unspecified" { + value 0; + description + "Unspecified"; + } + enum "local" { + value 1; + description + "Local to host (pipes, portals)"; + } + enum "inet" { + value 2; + description + "Internetwork: UDP, TCP, etc."; + } + enum "implink" { + value 3; + description + "arpanet imp addresses"; + } + enum "pup" { + value 4; + description + "Pup protocols: e.g. BSP"; + } + enum "chaos" { + value 5; + description + "mit CHAOS protocols"; + } + enum "ns" { + value 6; + description + "XEROX NS protocols"; + } + enum "iso" { + value 7; + description + "ISO protocols"; + } + enum "ecma" { + value 8; + description + "European computer manufacturers"; + } + enum "data-kit" { + value 9; + description + "Datakit protocols"; + } + enum "inet6" { + value 10; + description + "IP version 6"; + } + enum "sna" { + value 11; + description + "IBM SNA"; + } + enum "de-cnet" { + value 12; + description + "DECnet"; + } + enum "dli" { + value 13; + description + "DEC Direct data link interface"; + } + enum "lat" { + value 14; + description + "LAT"; + } + enum "hylink" { + value 15; + description + "NSC Hyperchannel"; + } + enum "appletalk" { + value 16; + description + "Apple Talk"; + } + enum "route" { + value 17; + description + "Internal Routing Protocol"; + } + enum "link" { + value 18; + description + "Link layer interface"; + } + enum "pseudo-xtp" { + value 19; + description + "eXpress Transfer Protocol (no AF)"; + } + enum "coip" { + value 20; + description + "Connection-oriented IP, aka ST II"; + } + enum "cnt" { + value 21; + description + "Computer Network Technology"; + } + enum "pseudo-rtip" { + value 22; + description + "Help Identify RTIP packets"; + } + enum "ipx" { + value 23; + description + "Novell Internet Protocol"; + } + enum "sip" { + value 24; + description + "Simple Internet Protocol"; + } + enum "pseudo-pip" { + value 25; + description + "Help Identify PIP packets"; + } + enum "ccitt" { + value 26; + description + "CCITT protocols, X.25 etc"; + } + enum "snap" { + value 27; + description + "802.2 SNAP sockets"; + } + enum "clnl" { + value 28; + description + "SAP_CLNS + nlpid encaps"; + } + enum "chdlc" { + value 29; + description + "cisco HDLC on serial"; + } + enum "ppp" { + value 30; + description + "PPP sockets"; + } + enum "host-cas" { + value 31; + description + "Host-based CAS signaling"; + } + enum "dsp" { + value 32; + description + "DSP messaging"; + } + enum "sap" { + value 33; + description + "SAP Sockets"; + } + enum "atm" { + value 34; + description + "ATM Sockets"; + } + enum "fr" { + value 35; + description + "Frame Relay sockets"; + } + enum "mso" { + value 36; + description + "Voice Media Stream Sockets"; + } + enum "dchan" { + value 37; + description + "ISDN D Channel Sockets"; + } + enum "cas" { + value 38; + description + "Trunk Framer media IF Sockets"; + } + enum "nat" { + value 39; + description + "Network Address Translation Sockets"; + } + enum "ether" { + value 40; + description + "Generic Ethernet Sockets"; + } + enum "srp" { + value 41; + description + "Spatial Reuse Protocol Sockets"; + } + } + description + "Address Family Types"; + } + + grouping PKT-TYPE { + description + "PKT TYPE"; + leaf type { + type Packet; + description + "Type"; + } + leaf icmp-message-type { + when "../type = 'icmp'" { + description + "../Type = 'ICMP'"; + } + type Message-icmp; + description + "ICMP message type"; + } + leaf icm-pv6-message-type { + when "../type = 'icm-pv6'" { + description + "../Type = 'ICMPv6'"; + } + type Message-icmpv6; + description + "ICMPv6 message type"; + } + leaf igmp-message-type { + when "../type = 'igmp'" { + description + "../Type = 'IGMP'"; + } + type Message-igmp; + description + "IGMP message type"; + } + leaf message-id { + when "../type = 'unknown'" { + description + "../Type = 'Unknown'"; + } + type Message-id; + description + "Message type in number"; + } + } + + grouping LPTS-RX-FILTER { + description + "LPTS Interface Filter"; + container packet-type { + description + "Protocol-specific packet type"; + uses PKT-TYPE; + } + container remote-address { + description + "Remote address"; + uses IP-ADDR; + } + container local-address { + description + "Local address"; + uses IP-ADDR; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf remote-length { + type uint16; + description + "Remote address length"; + } + leaf local-length { + type uint16; + description + "Local address length"; + } + leaf receive-remote-port { + type uint16; + description + "Receive Remote port"; + } + leaf receive-local-port { + type uint16; + description + "Receive Local port"; + } + leaf priority { + type uint8; + description + "Priority"; + } + leaf ttl { + type uint8; + description + "Minimum TTL"; + } + leaf flow-types-info { + type uint32; + description + "flow information"; + } + } + + grouping LPTS-ACCEPT-MASK { + description + "LPTS accept mask"; + leaf is-interface { + type boolean; + description + "Set interface"; + } + leaf is-packet-type { + type boolean; + description + "Set packet type"; + } + leaf is-remote-address { + type boolean; + description + "Set Remote address"; + } + leaf is-remote-port { + type boolean; + description + "Set Remote Port"; + } + leaf is-local-address { + type boolean; + description + "Set Local Address"; + } + leaf is-local-port { + type boolean; + description + "Set Local Port"; + } + } + + grouping LPTS-FLAGS { + description + "LPTS flags"; + leaf is-pcb-bound { + type boolean; + description + "PCB bound"; + } + leaf is-local-address-ignore { + type boolean; + description + "Sent drop packets"; + } + leaf is-ignore-vrf-filter { + type boolean; + description + "Ignore VRF Filter"; + } + } + + grouping LPTS-OPTIONS { + description + "LPTS options"; + leaf is-receive-filter { + type boolean; + description + "Receive filter enabled"; + } + leaf is-ip-sla { + type boolean; + description + "IP SLA"; + } + } + + grouping LPTS-PCB { + description + "LPTS PCB information block"; + container options { + description + "Receive options"; + uses LPTS-OPTIONS; + } + container lpts-flags { + description + "LPTS flags"; + uses LPTS-FLAGS; + } + container accept-mask { + description + "AcceptMask"; + uses LPTS-ACCEPT-MASK; + } + leaf ttl { + type uint8; + description + "Minimum TTL"; + } + leaf flow-types-info { + type uint32; + description + "flow information"; + } + list filter { + description + "Interface Filters"; + uses LPTS-RX-FILTER; + } + } + + grouping COMMON-PCB-INFO { + description + "Common information for all PCB types"; + container lpts-pcb { + description + "LPTS PCB information"; + uses LPTS-PCB; + } + leaf af-name { + type Addr-family; + description + "Address Family"; + } + } + + grouping IP-ADDR { + description + "IP Address"; + leaf af-name { + type Addr-family; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'inet'" { + description + "../AFName = 'INET'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../af-name = 'inet6'" { + description + "../AFName = 'INET6'"; + } + type Lpts-ipv6-address; + description + "IPv6 address"; + } + } + + grouping SHOW-PCB-INFO { + description + "PCB information to display"; + container local-address { + description + "Local IP address"; + uses IP-ADDR; + } + container foreign-address { + description + "Remote IP address"; + uses IP-ADDR; + } + container common { + description + "Common PCB information"; + uses COMMON-PCB-INFO; + } + leaf l4-protocol { + type uint32; + description + "Layer 4 protocol"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf foreign-port { + type uint16; + description + "Remote port"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub3.yang new file mode 100644 index 000000000..2f19d44e8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub3.yang @@ -0,0 +1,96 @@ +submodule Cisco-IOS-XR-ip-udp-oper-sub3 { + belongs-to Cisco-IOS-XR-ip-udp-oper { + prefix Cisco-IOS-XR-ip-udp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-udp package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-06 { + description + "min_ttl_dropped field is added to PCB_DETAIL output."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-09 { + description + "bind_local field is added to PCB_DETAIL output"; + } + revision 2018-03-04 { + description + "PCB_ID argument is passed in string format."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TRANSP-CLIENT-STATS-BAG { + description + "Aggregated statistics of a transport client"; + leaf client-jid { + type int32; + description + "Job ID of the transport client"; + } + leaf client-name { + type string { + length "0..21"; + } + description + "Transport client name"; + } + leaf ipv4-received-packets { + type uint32; + description + "Total IPv4 packets received from client"; + } + leaf ipv4-sent-packets { + type uint32; + description + "Total IPv4 packets sent to client"; + } + leaf ipv6-received-packets { + type uint32; + description + "Total IPv6 packets received from app"; + } + leaf ipv6-sent-packets { + type uint32; + description + "Total IPv6 packets sent to app"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub4.yang new file mode 100644 index 000000000..5df304b63 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper-sub4.yang @@ -0,0 +1,94 @@ +submodule Cisco-IOS-XR-ip-udp-oper-sub4 { + belongs-to Cisco-IOS-XR-ip-udp-oper { + prefix Cisco-IOS-XR-ip-udp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ip-udp package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-06 { + description + "min_ttl_dropped field is added to PCB_DETAIL output."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-09 { + description + "bind_local field is added to PCB_DETAIL output"; + } + revision 2018-03-04 { + description + "PCB_ID argument is passed in string format."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IP-UDP { + description + "UDP Traffic Information"; + leaf udp-input-packets { + type uint32; + description + "UDP Received"; + } + leaf udp-checksum-error-packets { + type uint32; + description + "UDP Checksum Errors"; + } + leaf udp-no-port-packets { + type uint32; + description + "UDP No Port"; + } + leaf udp-bad-length-packets { + type uint32; + description + "UDP bad length"; + } + leaf udp-output-packets { + type uint32; + description + "UDP Transmitted"; + } + leaf udp-dropped-packets { + type uint32; + description + "UDP drop for other reason"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper.yang new file mode 100644 index 000000000..24dd46035 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ip-udp-oper.yang @@ -0,0 +1,264 @@ +module Cisco-IOS-XR-ip-udp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ip-udp-oper"; + prefix ip-udp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ip-udp-oper-sub4 { + revision-date 2020-04-06; + } + include Cisco-IOS-XR-ip-udp-oper-sub3 { + revision-date 2020-04-06; + } + include Cisco-IOS-XR-ip-udp-oper-sub2 { + revision-date 2020-04-06; + } + include Cisco-IOS-XR-ip-udp-oper-sub1 { + revision-date 2020-04-06; + } + + 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 ip-udp package operational data. + + This module contains definitions + for the following management objects: + udp: IP UDP Operational Data + udp-connection: UDP connection operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-06 { + description + "min_ttl_dropped field is added to PCB_DETAIL output."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-09 { + description + "bind_local field is added to PCB_DETAIL output"; + } + revision 2018-03-04 { + description + "PCB_ID argument is passed in string format."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2016-02-26 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lpts-pcb-query { + type enumeration { + enum "all" { + value 0; + description + "No filter"; + } + enum "static-policy" { + value 1; + description + "Static policy filter"; + } + enum "interface" { + value 2; + description + "Interface filter"; + } + enum "packet" { + value 3; + description + "Packet type filter"; + } + } + description + "Lpts pcb query"; + } + + container udp { + config false; + description + "IP UDP Operational Data"; + container nodes { + description + "Node-specific UDP operational data"; + list node { + key "node-name"; + description + "UDP operational data for a particular node"; + container statistics { + description + "Statistical UDP operational data for a node"; + container ipv4-traffic { + description + "UDP Traffic statistics for IPv4"; + uses IP-UDP; + } + container ipv6-traffic { + description + "UDP Traffic statistics for IPv6"; + uses IP-UDP; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container udp-connection { + config false; + description + "UDP connection operational data"; + container nodes { + description + "List of UDP connections nodes"; + list node { + key "node-name"; + description + "Information about a particular node"; + container statistics { + description + "Statistics of UDP connections"; + container clients { + description + "Table listing clients"; + list client { + key "client-id"; + description + "Describing Client ID"; + leaf client-id { + type uint32 { + range "0..4294967295"; + } + description + "Displaying client's aggregated statistics"; + } + uses TRANSP-CLIENT-STATS-BAG; + } + } + container summary { + description + "Summary statistics across all UDP connections"; + uses UDP-SH-STATS-BAG; + } + container pcb-statistics { + description + "Table listing the UDP connections for which + statistics are provided"; + list pcb-statistic { + key "pcb-address"; + description + "Satistics associated with a particular PCB"; + leaf pcb-address { + type xr:Cisco-ios-xr-string; + description + "Protocol Control Block address"; + } + uses UDP-SH-PCB-STATS-BAG; + } + } + } + container lpts { + description + "LPTS statistical data"; + container queries { + description + "List of query options"; + list query { + key "query-name"; + description + "Query option"; + container pcbs { + description + "List of PCBs"; + list pcb { + key "pcb-address"; + description + "A PCB information"; + leaf pcb-address { + type xr:Cisco-ios-xr-string; + description + "PCB address"; + } + uses SHOW-PCB-INFO; + } + } + leaf query-name { + type Lpts-pcb-query; + description + "Query option"; + } + } + } + } + container pcb-details { + description + "Detail information for list of UDP connections + ."; + list pcb-detail { + key "pcb-address"; + description + "Detail information about a UDP connection"; + leaf pcb-address { + type xr:Cisco-ios-xr-string; + description + "Protocol Control Block address"; + } + uses UDP-SH-TABLE-BAG; + } + } + container pcb-briefs { + description + "Brief information for list of UDP connections."; + list pcb-brief { + key "pcb-address"; + description + "Brief information about a UDP connection"; + leaf pcb-address { + type xr:Cisco-ios-xr-string; + description + "Protocol Control Block address"; + } + uses UDP-SH-BRIEF-BAG; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper-sub1.yang new file mode 100644 index 000000000..19932805b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper-sub1.yang @@ -0,0 +1,136 @@ +submodule Cisco-IOS-XR-ipsec-xr-oper-sub1 { + belongs-to Cisco-IOS-XR-ipsec-xr-oper { + prefix Cisco-IOS-XR-ipsec-xr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipsec-xr package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-24 { + description + "Pfs field addition."; + semver:module-version "1.0.0"; + } + revision 2021-09-24 { + description + "Initial yang support for ipsec oper."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IPSEC-EDM-SA { + description + "IPSEC EDM SA"; + leaf spi { + type uint32; + description + "sa spi"; + } + leaf lifetime { + type uint32; + description + "lifetime"; + } + leaf rekey-time { + type uint32; + description + "rekey time"; + } + leaf prot { + type string; + description + "sa protocol"; + } + leaf encr { + type string; + description + "encr algo"; + } + leaf auth { + type string; + description + "auth algo"; + } + } + + grouping IPSEC-EDM-SA-PAIR { + description + "IPSEC EDM SA PAIR"; + container in-sa { + description + "Inbound sa"; + uses IPSEC-EDM-SA; + } + container out-sa { + description + "Outbound sa"; + uses IPSEC-EDM-SA; + } + leaf sa-id { + type uint32; + description + "sa id"; + } + leaf interface { + type string; + description + "interface name"; + } + leaf ifh { + type uint32; + description + "interface handle"; + } + leaf pfs-enabled { + type string; + description + "pfs enabled"; + } + leaf pfs-group { + type string; + description + "pfs group"; + } + leaf mode { + type string; + description + "Ipsec mode"; + } + } + + grouping IPSEC-EDM-INTERFACE-SAS { + description + "IPSEC EDM INTERFACE SAS"; + list sa { + description + "list of sa"; + uses IPSEC-EDM-SA-PAIR; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper.yang new file mode 100644 index 000000000..abc6329cb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipsec-xr-oper.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-ipsec-xr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipsec-xr-oper"; + prefix ipsec-xr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipsec-xr-oper-sub1 { + revision-date 2022-06-24; + } + + 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 ipsec-xr package operational data. + + This module contains definitions + for the following management objects: + ipsec: Ipsec sa operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-24 { + description + "Pfs field addition."; + semver:module-version "1.0.0"; + } + revision 2021-09-24 { + description + "Initial yang support for ipsec oper."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipsec { + config false; + description + "Ipsec sa operational data"; + container ipsec-sa { + description + "Ipsec Sa Details"; + container interfaces { + description + "List of Interface Sas"; + list interface { + key "name"; + description + "IPSec interface name"; + leaf name { + type xr:Interface-name; + description + "Interface name"; + } + uses IPSEC-EDM-INTERFACE-SAS; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ace-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ace-cfg.yang new file mode 100644 index 000000000..3ca0173a7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ace-cfg.yang @@ -0,0 +1,659 @@ +submodule Cisco-IOS-XR-ipv4-ace-cfg { + belongs-to Cisco-IOS-XR-ipv4-acl-cfg { + prefix ipv4-acl-cfg; + } + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ipv4-acl-datatypes { + prefix ipv4-acl-dt; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 ACL entry configuration. + + Copyright (c) 2013, 2015-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Deprecated the native model, replaced by UM model."; + } + revision 2022-07-08 { + description + "Added dscp bitmask field"; + semver:module-version "1.0.0"; + } + revision 2021-09-20 { + description + "Adding icmp-on per ace in the schema"; + } + revision 2021-07-28 { + description + "Added new police units"; + } + revision 2021-06-20 { + description + "Adding icmp-off in the schema"; + } + revision 2021-03-17 { + description + "Adding rsvp and vrrp keywords for protocols under access-list config CLI"; + } + revision 2020-12-04 { + description + "Fixing Remark Length"; + semver:module-version "1.0.0"; + } + revision 2020-11-23 { + description + "Changing the bag version"; + } + revision 2019-10-22 { + description + "Fixing ICMP TYPE CODE datatype from Enum to RangeEnum"; + } + revision 2019-05-16 { + description + "Add more keywords for protocols under access-list config CLI."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-05-08 { + description + "6.5.1 revision. + Remove the when statement for fragments"; + } + revision 2018-04-03 { + description + "6.5.1 revision. + Correct enum value for Next-hop-type"; + } + revision 2018-03-23 { + description + "6.5.1 revision. + Removing none-next-type."; + } + revision 2018-02-01 { + description + "Using YANG bit types for tcp flags."; + } + revision 2018-01-03 { + description + "6.4.1 revision. + Fixed a few typos in the description."; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2017-06-08 { + description + "6.3.1 revision. + This revision adds the following new leaf: + - fragment-type"; + } + revision 2017-05-11 { + description + "6.3.1 revision. + This revision adds the following new leaf: + - set-ttl"; + } + revision 2016-11-07 { + description + "6.2.1 revision. + This revision adds the following new leaves: + - protocol-operator + - protocol2"; + } + revision 2015-11-09 { + description + "Initial revision."; + } + + typedef Next-hop-type { + type enumeration { + enum "regular-next-hop" { + value 1; + description + "Regular next-hop."; + } + enum "default-next-hop" { + value 2; + description + "Default next-hop."; + } + } + description + "Next-hop type."; + } + + grouping IPV4-ACE { + description + "IPv4 ACL entry."; + leaf grant { + type ipv4-acl-dt:Ipv4-acl-grant-enum; + description + "Forwarding action for the packet. This is required + for any non-remark ACE. Leave unspecified otherwise."; + } + leaf protocol-operator { + type ipv4-acl-dt:Ipv4-acl-operator-enum; + description + "Protocol operator. User can specify equal or leave + it unspecified for singleton protocol match, or + specify range for protocol range match."; + } + leaf protocol { + type ipv4-acl-dt:Ipv4-acl-protocol-number; + description + "Protocol number to match. It can be used for the lower + bound (range operator) or single value (equal operator). + Any value not in the permissible range will be rejected. + When leave unspecified, default value is ipv4."; + reference "RFC 758 - ASSIGNED INTERNET PROTOCOL NUMBERS"; + } + leaf protocol2 { + type ipv4-acl-dt:Ipv4-acl-protocol-number; + description + "Protocol2 to match. It is used in upper bound (range + operator). Any value not in the permissible range will + be rejected."; + reference "RFC 758 - ASSIGNED INTERNET PROTOCOL NUMBERS"; + } + container source-network { + description + "Source network settings."; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source IPv4 address to match, leave unspecified + for any."; + } + leaf source-wild-card-bits { + type inet:ipv4-address-no-zone; + description + "Wildcard bits to apply to source address + (if specified), leave unspecified for no + wildcarding."; + } + leaf source-prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length to apply to source address + (if specified), leave unspecified for no + wildcarding."; + } + } + container destination-network { + description + "Destination network settings."; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination IPv4 address to match (if a protocol + was specified), leave unspecified for any."; + } + leaf destination-wild-card-bits { + type inet:ipv4-address-no-zone; + description + "Wildcard bits to apply to destination address + (if specified), leave unspecified for no + wildcarding."; + } + leaf destination-prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix length to apply to destination address + (if specified), leave unspecified for no + wildcarding."; + } + } + container source-port { + when "../protocol = '6' or ../protocol = 'tcp' or ../protocol = '17' or ../protocol = 'udp' or ../protocol = '132' or ../protocol = 'sctp'" { + description + "Applicable only to TCP, SCTP and UDP."; + } + description + "Source port settings."; + leaf source-operator { + type ipv4-acl-dt:Ipv4-acl-operator-enum; + description + "Source port comparison operator. This is a required + field if any source port value is given, otherwise, + config will be rejected. Leave unspecified + if no source port comparison is to be done."; + } + leaf first-source-port { + type ipv4-acl-dt:Ipv4-acl-port-number; + description + "Lower source port for comparison. It can be used + for the lower bound (range operator) or single value + (equal, less, greater..etc). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + leaf second-source-port { + type ipv4-acl-dt:Ipv4-acl-port-number; + description + "Upper source port for comparion. It is used + in the upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + } + container destination-port { + when "../protocol = '6' or ../protocol = 'tcp' or ../protocol = '17' or ../protocol = 'udp' or ../protocol = '132' or ../protocol = 'sctp'" { + description + "Applicable only to TCP, SCTP and UDP."; + } + description + "Destination port settings."; + leaf destination-operator { + type ipv4-acl-dt:Ipv4-acl-operator-enum; + description + "Destination port comparison operator. This is a + required field if any destination port value is + given, otherwise, config will be rejected. + Leave unspecified if no destination + port comparison is to be done."; + } + leaf first-destination-port { + type ipv4-acl-dt:Ipv4-acl-port-number; + description + "Lower destination port for comparison. It can be used + for the lower bound (range operator) or single value + (equal, less, greater..etc). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + leaf second-destination-port { + type ipv4-acl-dt:Ipv4-acl-port-number; + description + "Upper destination port for comparison. It is used + in the upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + } + container icmp { + when "../protocol = '1' or ../protocol = 'icmp'" { + description + "Applicable only to ICMP."; + } + description + "ICMP settings."; + leaf icmp-type-code { + type ipv4-acl-dt:Ipv4-acl-icmp-type-code-enum; + description + "Well known ICMP message code types to match, + leave unspecified if ICMP message code type + comparion is not to be performed."; + reference "RFC 792"; + } + } + container tcp { + when "../protocol = '6' or ../protocol = 'tcp'" { + description + "Applicable only to TCP."; + } + description + "TCP settings."; + leaf tcp-bits-match-operator { + type ipv4-acl-dt:Ipv4-acl-tcp-match-operator-enum; + description + "TCP Bits match operator. Leave unspecified if + flexible comparison of TCP bits is not + required."; + } + leaf tcp-bits { + type ipv4-acl-dt:Ipv4-acl-tcp-bits-number; + description + "TCP bits to match. + Leave unspecified if comparison of TCP bits is + not required."; + reference "RFC 793 Section 3.1 Control Bits"; + } + leaf tcp-bits-mask { + type ipv4-acl-dt:Ipv4-acl-tcp-bits-number; + description + "TCP bits mask to use for flexible TCP matching. + Leave unspecified if tcp-bits-match-operator is + unspecified."; + } + } + container packet-length { + description + "Packet length settings."; + leaf packet-length-operator { + type ipv4-acl-dt:Ipv4-acl-operator-enum; + description + "Packet length operator applicable if packet length + is to be compared. This is a required field if any + packet-length value is given, otherwise, config + will be rejected."; + } + leaf packet-length-min { + type ipv4-acl-dt:Ipv4-acl-plen-range; + description + "Mininum packet length value for comparison. It can be used + for the lower bound (range operator) or single value + (equal, less, greater..etc). Any value not in the permissible + range will be rejected. Leave unspecified otherwise."; + } + leaf packet-length-max { + type ipv4-acl-dt:Ipv4-acl-plen-range; + description + "Maximum packet length value for comparison. It is used + in the upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + } + } + container time-to-live { + description + "TTL settings."; + leaf time-to-live-operator { + type ipv4-acl-dt:Ipv4-acl-operator-enum; + description + "TTL operator is applicable if TTL is to be compared. + This is a required field if any TTL value is given, + otherwise, config will be rejected. Leave + unspecified if TTL classification is not required."; + } + leaf time-to-live-min { + type ipv4-acl-dt:Ipv4-acl-ttl-range; + description + "Mininum TTL value for comparison. It can be used for the + lower bound (range operator) or single value (equal, less, + greater..etc). Any value not in the permissible range will + be rejected. Leave unspecified otherwise."; + reference "RFC 791 Section 3.2 - Time to Live"; + } + leaf time-to-live-max { + type ipv4-acl-dt:Ipv4-acl-ttl-range; + description + "Maximum TTL value for comparison. It is used in the + upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 791 Section 3.2 - Time to Live"; + } + } + container fragment-offset { + description + "Fragment-offset settings."; + leaf fragment-offset-operator { + type ipv4-acl-dt:Ipv4-acl-operator-enum; + description + "Fragment-offset operator if fragment-offset is to be + compared. This is a required field if any fragment-offset + value is given, otherwise, config will be rejected. + Leave unspecified if fragment-offset classification + is not required."; + } + leaf fragment-offset-1 { + type ipv4-acl-dt:Ipv4-acl-frag-offset-range; + description + "Fragment-offset value for comparison. It can be used + for the lower bound (range operator) or single value + (equal, less, greater..etc). Any value not in the permissible + range will be rejected. Leave unspecified otherwise."; + reference "RFC 791 Section 2.3 - Fragmentation"; + } + leaf fragment-offset-2 { + type ipv4-acl-dt:Ipv4-acl-frag-offset-range; + description + "Second fragment-offset value for comparison. It is used + in the upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 791 Section 2.3 - Fragmentation"; + } + } + leaf fragment-type { + type ipv4-acl-dt:Ipv4-acl-frag-flags; + description + "Fragment flags, such as dont-fragment, is-fragment, + first-fragment and last-fragment."; + reference "RFC 791 Section 2.3 - Fragmentation"; + } + container next-hop { + description + "Next-hop settings."; + leaf next-hop-type { + type Next-hop-type; + description + "The nexthop type."; + } + container next-hop-1 { + description + "The first next-hop settings."; + leaf next-hop { + type inet:ipv4-address-no-zone; + description + "The IPv4 address of the next-hop."; + } + leaf vrf-name { + type string { + length "1..32"; + } + description + "The VRF name of the next-hop."; + } + leaf track-name { + type string { + length "1..32"; + } + description + "The object tracking name for the next-hop."; + } + } + container next-hop-2 { + description + "The second next-hop settings."; + leaf next-hop { + type inet:ipv4-address-no-zone; + description + "The IPv4 address of the next-hop."; + } + leaf vrf-name { + type string { + length "1..32"; + } + description + "The VRF name of the next-hop."; + } + leaf track-name { + type string { + length "1..32"; + } + description + "The object tracking name for the next-hop."; + } + } + container next-hop-3 { + description + "The third next-hop settings."; + leaf next-hop { + type inet:ipv4-address-no-zone; + description + "The IPv4 address of the next-hop."; + } + leaf vrf-name { + type string { + length "1..32"; + } + description + "The VRF name of the next-hop."; + } + leaf track-name { + type string { + length "1..32"; + } + description + "The object tracking name for the next-hop."; + } + } + } + leaf counter-name { + type string { + length "1..64"; + } + description + "Name of counter to aggregate hardware statistics."; + } + leaf igmp-message-type { + when "../protocol = '2' or ../protocol = 'igmp'" { + description + "Applicable only to IGMP."; + } + type ipv4-acl-dt:Ipv4-acl-igmp-number; + description + "IGMP message type to match. Leave unspecified if + no message type comparison is to be done."; + reference "RFC 3376"; + } + container dscp { + description + "DSCP settings."; + leaf dscp-operator { + type ipv4-acl-dt:Ipv4-acl-operator-enum; + description + "DSCP operator is applicable only when DSCP + range is configured. Leave unspecified if + DSCP range is not required."; + } + leaf dscp-min { + type ipv4-acl-dt:Ipv4-acl-dscp-number; + description + "Mininum DSCP value for comparison. It can be used for the + lower bound (range operator) or single value (equal, less, + greater..etc). Any value not in the permissible range will + be rejected. Leave unspecified otherwise."; + reference "RFC 2474"; + } + leaf dscp-max { + type ipv4-acl-dt:Ipv4-acl-dscp-number; + description + "Maximum DSCP value for comparison. It is used in the + upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 2474"; + } + } + leaf precedence { + type ipv4-acl-dt:Ipv4-acl-precedence-number; + description + "Precedence value to match (if a protocol was specified). + Any value not in the permissible range will be rejected. + Leave unspecified if precedence comparion is not to be + performed."; + reference "RFC 791 Section 3.1 - Precedence"; + } + leaf log-option { + type ipv4-acl-dt:Ipv4-acl-logging-enum; + description + "Log the packet on this access-list-entry/rule."; + } + leaf capture { + type boolean; + description + "Enable capture if set to TRUE."; + } + leaf icmp-off { + type empty; + description + "To turn off ICMP generation for deny ACEs."; + } + leaf qos-group { + type ipv4-acl-dt:Ipv4-acl-qos-group-number; + description + "Set qos-group number. Any value not in the permissible range + will be rejected."; + } + leaf set-ttl { + type ipv4-acl-dt:Ipv4-acl-ttl-range; + description + "Set TTL Value. Any value not in the permissible range + will be rejected."; + } + leaf fragments { + type empty; + description + "Check non-initial fragments. Item is mutually + exclusive with TCP, SCTP, UDP, IGMP and ICMP + comparions and with logging."; + reference "RFC 791 Section 2.3 - Fragmentation"; + } + leaf remark { + type string { + length "0..255"; + } + description + "Description for the access-list-entry/rule."; + } + leaf source-prefix-group { + type string { + length "1..64"; + } + description + "IPv4 source network object group name."; + } + leaf destination-prefix-group { + type string { + length "1..64"; + } + description + "IPv4 destination network object group name."; + } + leaf source-port-group { + type string { + length "1..64"; + } + description + "Source port object group name."; + } + leaf destination-port-group { + type string { + length "1..64"; + } + description + "Destination port object group name."; + } + leaf sequence-str { + type string { + length "1..64"; + } + description + "Sequence String for the ace."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-cfg.yang new file mode 100644 index 000000000..eb9740d89 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-cfg.yang @@ -0,0 +1,270 @@ +module Cisco-IOS-XR-ipv4-acl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-acl-cfg"; + prefix ipv4-acl-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ipv4-acl-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-ipv4-ace-cfg { + revision-date 2022-08-16; + } + + 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-acl package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-ipv4-access-list-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + ipv4-acl-and-prefix-list: IPv4 ACL configuration data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Deprecated the native model, replaced by UM model. + 2022-07-08 + 7.5.4 revision. Added dscp-bitmask feature + 2021-09-20 + 7.6.1 revision. Adding icmp-on for ace in the schema + 2021-07-28 + 7.5.1 revision. Adding additional units for policer"; + semver:module-version "3.0.0"; + } + revision 2021-06-20 { + description + "7.5.1 revision. Adding icmp-off in the schema + 2021-03-17 + 7.3.15 revision. Adding vrrp and rsvp keywords for protocol under access-list config CLI."; + semver:module-version "2.1.0"; + } + revision 2020-12-04 { + description + "7.4.1 revision. Fixing Remark Length + 2020-11-23 + 7.3.2 revision. Changing the bag version"; + semver:module-version "2.0.0"; + } + revision 2019-10-22 { + description + "7.0.1 revision. Fixing ICMP TYPE CODE datatype from Enum to RangeEnum"; + semver:module-version "1.1.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-05-08 { + description + "6.5.1 revision. Remove the when statement for fragments."; + } + revision 2018-04-03 { + description + "6.5.1 revision. Correct enum value for Next-hop-type."; + } + revision 2018-03-23 { + description + "6.5.1 revision. Removing none-next-type."; + } + revision 2018-02-01 { + description + "Using YANG bit types for tcp flags."; + } + revision 2018-01-03 { + description + "6.4.1 revision. Fixed a few typos in the description."; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv4-acl-and-prefix-list { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-ipv4-access-list-cfg.yang which + will provide the compatible functionalities. + IPv4 ACL configuration data"; + container accesses { + description + "Table of access lists. Entries in this table + and the AccessListExistenceTable table must be + kept consistent"; + list access { + key "access-list-name"; + description + "An ACL"; + container access-list-entries { + description + "ACL entry table; contains list of ACEs"; + list access-list-entry { + key "sequence-number"; + description + "An ACL entry; either a description (remark) + or an ACE to match against"; + leaf sequence-number { + type dt1:Ipv4-acl-sequence-number-range-acl; + description + "Sequence number for this entry"; + } + uses IPV4-ACE; + } + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access list name - 64 characters max"; + } + } + } + container prefixes { + description + "Table of ACL prefix lists. Entries in this + table and the PrefixListExistenceTable table + must be kept consistent"; + list prefix { + key "prefix-list-name"; + description + "Name of a prefix list"; + container prefix-list-entries { + description + "Sequence of entries forming a prefix list"; + list prefix-list-entry { + key "sequence-number"; + description + "A prefix list entry; either a description + (remark) or a prefix to match against"; + leaf sequence-number { + type dt1:Ipv4-acl-sequence-number-range; + description + "Sequence number of prefix list"; + } + leaf grant { + type dt1:Ipv4-acl-grant-enum; + description + "Whether to forward or drop packets matching + the prefix list"; + } + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 address prefix to match"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "Mask of IPv4 address prefix"; + } + leaf match-exact-length { + type empty; + description + "Set to perform an exact prefix length match. + Item is mutually exclusive with minimum and + maximum length match items"; + } + leaf exact-prefix-length { + type dt1:Ipv4-acl-prefix-length-range; + description + "If exact prefix length matching specified, + set the length of prefix to be matched"; + } + leaf match-max-length { + type empty; + description + "Set to perform a maximum length prefix match + . Item is mutually exclusive with exact + length match item"; + } + leaf max-prefix-length { + type dt1:Ipv4-acl-prefix-length-range; + description + "If maximum length prefix matching specified, + set the maximum length of prefix to be + matched"; + } + leaf match-min-length { + type empty; + description + "Set to perform a minimum length prefix match + . Item is mutually exclusive with exact + length match item"; + } + leaf min-prefix-length { + type dt1:Ipv4-acl-prefix-length-range; + description + "If minimum length prefix matching specified, + set the minimum length of prefix to be + matched"; + } + leaf remark { + type string { + length "1..256"; + } + description + "Comments or a description for the prefix + list. Item is mutually exclusive with all + others in the object"; + } + } + } + leaf prefix-list-name { + type string; + description + "Prefix list name - max 32 characters"; + } + } + } + container log-update { + description + "Control access lists log updates"; + leaf threshold { + type dt1:Ipv4-acl-log-threshold-range; + description + "Log update threshold (number of hits)"; + } + leaf rate { + type dt1:Ipv4-acl-log-rate-range; + description + "Log update rate (log msgs per second)"; + } + } + leaf icmp-off { + type empty; + description + "This is set to disable the icmpoff messages"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-datatypes.yang new file mode 100644 index 000000000..7209aad12 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-datatypes.yang @@ -0,0 +1,1207 @@ +module Cisco-IOS-XR-ipv4-acl-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-acl-datatypes"; + prefix ipv4-acl-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-20 { + description + "7.6.1 revision. Adding icmp-on for ace in the schema + 2021-07-28 + 7.5.1 revision. Adding additional units for policer"; + semver:module-version "2.1.0"; + } + revision 2021-06-20 { + description + "Adding icmp-off in the schema + 2021-03-17 + 7.3.15 revision. Adding vrrp and rsvp keywords for protocol under access-list config CLI."; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-02-01 { + description + "Using YANG bit types for tcp flags."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv4-acl-prefix-match-range { + type uint32 { + range "0..32"; + } + description + "Ipv4 acl prefix match range"; + } + + typedef Ipv4-acl-protocol-number { + type union { + type enumeration { + enum "ip" { + value 0; + description + "Any IP protocol"; + } + enum "icmp" { + value 1; + description + "Internet Control Message Protocol"; + } + enum "igmp" { + value 2; + description + "Internet Gateway Message Protocol"; + } + enum "ip-in-ip" { + value 4; + description + "IP in IP tunneling"; + } + enum "tcp" { + value 6; + description + "Transport Control Protocol"; + } + enum "igrp" { + value 9; + description + "Cisco's IGRP Routing Protocol"; + } + enum "udp" { + value 17; + description + "User Datagram Protocol"; + } + enum "rsvp" { + value 46; + description + "Resource Reservation Protocol"; + } + enum "gre" { + value 47; + description + "Cisco's GRE tunneling"; + } + enum "esp" { + value 50; + description + "Encapsulation Security Protocol"; + } + enum "ahp" { + value 51; + description + "Authentication Header Protocol"; + } + enum "eigrp" { + value 88; + description + "Cisco's EIGRP Routing Protocol"; + } + enum "ospf" { + value 89; + description + "OSPF Routing Protocol"; + } + enum "nos" { + value 94; + description + "KA9Q NOS Compatible IP over IP tunneling"; + } + enum "pim" { + value 103; + description + "Protocol Independent Multicast"; + } + enum "pcp" { + value 108; + description + "Payload Compression Protocol"; + } + enum "vrrp" { + value 112; + description + "Virtual Router Redundancy Protocol"; + } + enum "sctp" { + value 132; + description + "Stream Control Transmission Protocol"; + } + } + type uint32 { + range "0..255"; + } + } + description + "Ipv4 acl protocol number"; + } + + typedef Ipv4-acl-frag-offset-range { + type uint32 { + range "0..8191"; + } + description + "Ipv4 acl frag offset range"; + } + + typedef Ipv4-acl-prefix-length-range { + type uint32 { + range "0..32"; + } + description + "Ipv4 acl prefix length range"; + } + + typedef Ipv4-acl-tcp-match-operator-enum { + type enumeration { + enum "match-all" { + value 1; + description + "Match only packet with all the given TCP bits"; + } + enum "match-any" { + value 3; + description + "Match only packet with any of the given TCP + bits"; + } + } + description + "Ipv4 acl tcp match operator enum"; + } + + typedef Ipv4-acl-grant-enum { + type enumeration { + enum "deny" { + value 0; + description + "Deny"; + } + enum "permit" { + value 1; + description + "Permit"; + } + } + description + "Ipv4 acl grant enum"; + } + + typedef Ipv4-acl-operator-enum { + type enumeration { + enum "equal" { + value 1; + description + "Match only packets on a given port number"; + } + enum "greater-than" { + value 2; + description + "Match only packet with a greater port number"; + } + enum "less-than" { + value 3; + description + "Match only packet with a lower port number"; + } + enum "not-equal" { + value 4; + description + "Match only packets not on a given port number"; + } + enum "range" { + value 5; + description + "Match only packets in the range of port numbers"; + } + } + description + "Ipv4 acl operator enum"; + } + + typedef Ipv4-acl-precedence-number { + type union { + type enumeration { + enum "critical" { + value 5; + description + "Match packets with critical precedence"; + } + enum "flash" { + value 3; + description + "Match packets with flash precedence"; + } + enum "flash-override" { + value 4; + description + "Match packets with flash override precedence"; + } + enum "immediate" { + value 2; + description + "Match packets with immediate precedence"; + } + enum "internet" { + value 6; + description + "Match packets with internetwork control + precedence"; + } + enum "network" { + value 7; + description + "Match packets with network control precedence"; + } + enum "priority" { + value 1; + description + "Match packets with priority precedence"; + } + enum "routine" { + value 0; + description + "Match packets with routine precedence"; + } + } + type uint32 { + range "0..7"; + } + } + description + "Ipv4 acl precedence number"; + } + + typedef Ipv4-acl-plen-range { + type uint32 { + range "0..65535"; + } + description + "Ipv4 acl plen range"; + } + + typedef Ipv4-acl-ttl-range { + type uint32 { + range "0..255"; + } + description + "Ipv4 acl ttl range"; + } + + typedef Ipv4-acl-port-number { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Match on the 'echo' port number"; + } + enum "discard" { + value 9; + description + "Match on the 'discard' port number"; + } + enum "daytime" { + value 13; + description + "Match on the 'daytime' port number (TCP/SCTP + only)"; + } + enum "char-gen" { + value 19; + description + "Match on the 'chargen' port number (TCP/SCTP + only)"; + } + enum "ftp-data" { + value 20; + description + "Match on the FTP data connections port number + (TCP/SCTP only)"; + } + enum "ftp" { + value 21; + description + "Match on the 'ftp' port number (TCP/SCTP only)"; + } + enum "telnet" { + value 23; + description + "Match on the 'telnet' port number (TCP/SCTP + only)"; + } + enum "smtp" { + value 25; + description + "Match on the 'smtp' port number (TCP/SCTP + only)"; + } + enum "time" { + value 37; + description + "Match on the 'time' port number"; + } + enum "name-server" { + value 42; + description + "Match on the IEN116 name service port number + (UDP only)"; + } + enum "who-is" { + value 43; + description + "Match on the 'nicname' port number (TCP/SCTP + only)"; + } + enum "tacacs" { + value 49; + description + "Match on the 'tacacs' port number"; + } + enum "dns" { + value 53; + description + "Match on the 'dns' port number"; + } + enum "boot-ps" { + value 67; + description + "Match on the Bootstrap Protocol server port + number (UDP only)"; + } + enum "boot-pc" { + value 68; + description + "Match on the Bootstrap Protocol client port + number (UDP only)"; + } + enum "tftp" { + value 69; + description + "Match on the 'tftp' port number (UDP only)"; + } + enum "gopher" { + value 70; + description + "Match on the 'gopher' port number (TCP/SCTP + only)"; + } + enum "finger" { + value 79; + description + "Match on the 'finger' port number (TCP/SCTP + only)"; + } + enum "www" { + value 80; + description + "Match on the 'http' port number (TCP/SCTP + only)"; + } + enum "host-name" { + value 101; + description + "Match on the NIC hostname server port number + (TCP/SCTP only)"; + } + enum "pop2" { + value 109; + description + "Match on the 'pop2' port number (TCP/SCTP + only)"; + } + enum "pop3" { + value 110; + description + "Match on the 'pop3' port number (TCP/SCTP + only)"; + } + enum "sun-rpc" { + value 111; + description + "Match on the Sun RPC port number"; + } + enum "ident" { + value 113; + description + "Match on the 'ident' port number (TCP/SCTP + only)"; + } + enum "nntp" { + value 119; + description + "Match on the 'nntp' port number (TCP/SCTP + only)"; + } + enum "ntp" { + value 123; + description + "Match on the 'ntp' port number (UDP only)"; + } + enum "net-bios-ns" { + value 137; + description + "Match on the NetBIOS name service port number + (UDP only)"; + } + enum "net-bios-dgs" { + value 138; + description + "Match on the NetBIOS datagram service port + number (UDP only)"; + } + enum "net-bios-ss" { + value 139; + description + "Match on the NetBIOS session service port + number (UDP only)"; + } + enum "snmp" { + value 161; + description + "Match on the 'snmp' port number (UDP only)"; + } + enum "snmp-trap" { + value 162; + description + "Match on the SNMP traps port number (UDP only)"; + } + enum "xdmcp" { + value 177; + description + "Match on the 'xdmcp' port number (UDP only)"; + } + enum "bgp" { + value 179; + description + "Match on the 'bgp' port number (TCP/SCTP only)"; + } + enum "irc" { + value 194; + description + "Match on the 'irc' port number (TCP/SCTP only)"; + } + enum "dnsix" { + value 195; + description + "Match on the DNSIX security protocol auditing + port number (UDP only)"; + } + enum "mobile-ip" { + value 434; + description + "Match on the mobile IP registration port + number (UDP only)"; + } + enum "pim-auto-rp" { + value 496; + description + "Match on the PIM Auto-RP port number"; + } + enum "isakmp" { + value 500; + description + "Match on the 'isakmp' port number (UDP only)"; + } + enum "exec-or-biff" { + value 512; + description + "Match on the port used by TCP/SCTP for 'exec' + and by UDP for 'biff'"; + } + enum "login-or-who" { + value 513; + description + "Match on the port used by TCP/SCTP for 'login' + and by UDP for 'rwho'"; + } + enum "cmd-or-syslog" { + value 514; + description + "Match on the port used by TCP/SCTP for 'rcmd' + and by UDP for 'syslog'"; + } + enum "lpd" { + value 515; + description + "Match on the 'lpd' port number (TCP/SCTP only)"; + } + enum "talk" { + value 517; + description + "Match on the 'talk' port number"; + } + enum "rip" { + value 520; + description + "Match on the 'rip' port number (UDP only)"; + } + enum "uucp" { + value 540; + description + "Match on the 'uucp' port number (TCP/SCTP + only)"; + } + enum "klogin" { + value 543; + description + "Match on the Kerberos login port number + (TCP/SCTP only)"; + } + enum "kshell" { + value 544; + description + "Match on the Kerberos shell port number + (TCP/SCTP only)"; + } + enum "ldp" { + value 646; + description + "Match on the LDP port"; + } + enum "https" { + value 443; + description + "Match on the HTTPS port"; + } + enum "bfd" { + value 3784; + description + "Match on the BFD port"; + } + enum "radius" { + value 1812; + description + "Match on the RADIUS AUTHENTICATION port"; + } + enum "radius-acct" { + value 1813; + description + "Match on the RADIUS ACCOUNTING port"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "Ipv4 acl port number"; + } + + typedef Ipv4-acl-log-rate-range { + type uint32 { + range "1..1000"; + } + description + "Ipv4 acl log rate range"; + } + + typedef Ipv4-acl-igmp-number { + type union { + type enumeration { + enum "host-query" { + value 17; + description + "Host query"; + } + enum "host-report" { + value 18; + description + "Host report"; + } + enum "dvmrp" { + value 19; + description + "Distance Vector Multicast Routing Protocol"; + } + enum "pim" { + value 20; + description + "Portocol Independent Multicast"; + } + enum "trace" { + value 21; + description + "Multicast Trace"; + } + enum "v2-report" { + value 22; + description + "Version 2 report"; + } + enum "v2-leave" { + value 23; + description + "Version 2 leave"; + } + enum "mtrace-response" { + value 30; + description + "MTrace response"; + } + enum "mtrace" { + value 31; + description + "MTrace"; + } + enum "v3-report" { + value 34; + description + "Version 3 report"; + } + } + type uint32 { + range "0..255"; + } + } + description + "Ipv4 acl igmp number"; + } + + typedef Ipv4-acl-dscp-number { + type union { + type enumeration { + enum "default" { + value 0; + description + "Default DSCP"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 DSCP"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 DSCP"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 DSCP"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 DSCP"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 DSCP"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 DSCP"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 DSCP"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 DSCP"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 DSCP"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 DSCP"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 DSCP"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 DSCP"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1 (precedence 1) DSCP"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2 (precedence 2) DSCP"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3 (precedence 3) DSCP"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4 (precedence 4) DSCP"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5 (precedence 5) DSCP"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6 (precedence 6) DSCP"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7 (precedence 7) DSCP"; + } + enum "ef" { + value 46; + description + "Match packets with EF DSCP"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Ipv4 acl dscp number"; + } + + typedef Ipv4-acl-status-enum { + type enumeration { + enum "disabled" { + value 0; + description + "Disabled"; + } + enum "enabled" { + value 1; + description + "Enabled"; + } + } + description + "Ipv4 acl status enum"; + } + + typedef Ipv4-acl-icmp-code-range { + type uint32 { + range "0..255"; + } + description + "Ipv4 acl icmp code range"; + } + + typedef Ipv4-acl-qos-group-number { + type uint32 { + range "0..512"; + } + description + "Ipv4 acl qos group number"; + } + + typedef Ipv4-acl-sequence-number-range-acl { + type uint32 { + range "1..2147483643"; + } + description + "Ipv4 acl sequence number range acl"; + } + + typedef Ipv4-acl-log-threshold-range { + type uint32 { + range "1..2147483647"; + } + description + "Ipv4 acl log threshold range"; + } + + typedef Ipv4-acl-icmp-type-code-enum { + type union { + type enumeration { + enum "mobile-redirect" { + value 2162687; + description + "Mobile host redirect"; + } + enum "conversion-error" { + value 2097151; + description + "Datagram conversion"; + } + enum "traceroute" { + value 2031615; + description + "Traceroute"; + } + enum "mask-reply" { + value 1245183; + description + "Mask replies"; + } + enum "mask-request" { + value 1179647; + description + "Mask requests"; + } + enum "information-reply" { + value 1114111; + description + "Information replies"; + } + enum "information-request" { + value 1048575; + description + "Information request"; + } + enum "timestamp-reply" { + value 983039; + description + "Timestamp replies"; + } + enum "timestamp-request" { + value 917503; + description + "Timestamp requests"; + } + enum "parameter-problem" { + value 851967; + description + "All parameter problems"; + } + enum "time-exceeded" { + value 786431; + description + "All time exceeds"; + } + enum "router-solicitation" { + value 720895; + description + "Router discovery solicitations"; + } + enum "router-advertisement" { + value 655359; + description + "Router discovery advertisements"; + } + enum "alternate-address" { + value 458751; + description + "Alternate address"; + } + enum "echo" { + value 589823; + description + "Echo (ping)"; + } + enum "redirect" { + value 393215; + description + "All redirects"; + } + enum "source-quench" { + value 327679; + description + "Source quenches"; + } + enum "unreachable" { + value 262143; + description + "All unreachables"; + } + enum "echo-reply" { + value 65535; + description + "Echo reply"; + } + enum "network-unreachable" { + value 196608; + description + "Network unreachable"; + } + enum "host-unreachable" { + value 196609; + description + "Host unreachable"; + } + enum "protocol-unreachable" { + value 196610; + description + "Protocol unreachable"; + } + enum "port-unreachable" { + value 196611; + description + "Port unreachable"; + } + enum "packet-too-big" { + value 196612; + description + "Fragmentation needed and DF set"; + } + enum "source-route-failed" { + value 196613; + description + "Source route failed"; + } + enum "network-unknown" { + value 196614; + description + "Network unknown"; + } + enum "host-unknown" { + value 196615; + description + "Host unknown"; + } + enum "host-isolated" { + value 196616; + description + "Host isolated"; + } + enum "dod-net-prohibited" { + value 196617; + description + "Network prohibited"; + } + enum "dod-host-prohibited" { + value 196618; + description + "Host prohibited"; + } + enum "net-tos-unreachable" { + value 196620; + description + "Network unreachable for TOS"; + } + enum "host-tos-unreachable" { + value 196619; + description + "Host unreachable for TOS"; + } + enum "administratively-prohibited" { + value 196621; + description + "Administratively prohibited"; + } + enum "host-precedence-unreachable" { + value 196622; + description + "Host unreachable for precedence"; + } + enum "precedence-unreachable" { + value 196623; + description + "Precedence cutoff"; + } + enum "network-redirect" { + value 327680; + description + "Network redirect"; + } + enum "host-redirect" { + value 327681; + description + "Host redirect"; + } + enum "net-tos-redirect" { + value 327682; + description + "Network redirect for TOS"; + } + enum "host-tos-redirect" { + value 327683; + description + "Host redirect for TOS"; + } + enum "ttl-exceeded" { + value 720896; + description + "TTL exceeded"; + } + enum "reassembly-timeout" { + value 720897; + description + "Reassembly timeout"; + } + enum "general-parameter-problem" { + value 786432; + description + "Parameter problem"; + } + enum "option-missing" { + value 786433; + description + "Parameter required but not present"; + } + enum "no-room-for-option" { + value 786434; + description + "Parameter required but no room"; + } + } + type uint32 { + range "0..2147483646"; + } + } + description + "Ipv4 acl icmp type code enum"; + } + + typedef Ipv4-acl-sequence-number-range { + type uint32 { + range "1..2147483646"; + } + description + "Ipv4 acl sequence number range"; + } + + typedef Ipv4-acl-frag-flags { + type union { + type enumeration { + enum "dont-fragment" { + value 1; + description + "Match don't fragment flag"; + } + enum "is-fragment" { + value 2; + description + "Match is fragment flag"; + } + enum "first-fragment" { + value 4; + description + "Match first fragment flag"; + } + enum "last-fragment" { + value 8; + description + "Match last fragment flag"; + } + enum "dont-fragment-is-fragment" { + value 3; + description + "Match don't fragment and is fragment flag"; + } + enum "dont-fragment-first-fragment" { + value 5; + description + "Match don't fragment and first fragment flag"; + } + enum "dont-fragment-last-fragment" { + value 9; + description + "Match don't fragment and last fragment flag"; + } + } + type uint32 { + range "1..9"; + } + } + description + "Ipv4 acl frag flags"; + } + + typedef Ipv4-acl-tcp-bits-number { + type bits { + bit fin { + position 0; + description + "Match on the FIN bit (0x01)"; + } + bit syn { + position 1; + description + "Match on the SYN bit (0x02)"; + } + bit rst { + position 2; + description + "Match on the RST bit (0x04)"; + } + bit psh { + position 3; + description + "Match on the PSH bit (0x08)"; + } + bit ack { + position 4; + description + "Match on the ACK bit (0x10)"; + } + bit urg { + position 5; + description + "Match on the URG bit (0x20)"; + } + } + description + "Ipv4 acl tcp bits number"; + } + + typedef Ipv4-acl-icmp-type-range { + type uint32 { + range "0..255"; + } + description + "Ipv4 acl icmp type range"; + } + + typedef Ipv4-acl-logging-enum { + type enumeration { + enum "log" { + value 1; + description + "Log matches against this entry"; + } + enum "log-input" { + value 2; + description + "Log matches against this entry, including input + interface"; + } + } + description + "Ipv4 acl logging enum"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper-sub1.yang new file mode 100644 index 000000000..80f9ea4d1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper-sub1.yang @@ -0,0 +1,955 @@ +submodule Cisco-IOS-XR-ipv4-acl-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-acl-oper { + prefix Cisco-IOS-XR-ipv4-acl-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-acl package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-10 { + description + "Added new field for byte stats. + 2022-07-08 + 7.5.4 revision. Added dscp-bitmask feature + 2022-05-20 + Added new field for hardware stats for telemetry. + 2021-11-23 + Added icmp-on feature + 2021-09-20 + Cleanup of deprecated source port/operator fields in acl oper bag.CSCve77173 + 2021-09-14 + Changing vrf name size macro from 32 to 33.CSCve72799"; + semver:module-version "2.0.0"; + } + revision 2021-03-05 { + description + "Adding a new policer stats field.CSCvx54997"; + semver:module-version "1.2.0"; + } + revision 2020-11-13 { + description + "Adding policer and priority."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-12 { + description + "Fixing CSCvn61905."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Acl-priority { + type enumeration { + enum "low" { + value 0; + description + "low"; + } + enum "medium" { + value 1; + description + "medium"; + } + enum "high" { + value 2; + description + "high"; + } + enum "critical" { + value 3; + description + "critical"; + } + enum "invalid" { + value 4; + description + "invalid"; + } + enum "acl-priority-unspec" { + value 255; + description + "unspec"; + } + } + description + "Acl priority"; + } + + typedef Bag-acl-rate-unit { + type enumeration { + enum "pps" { + description + "pps"; + } + enum "bps" { + description + "bps"; + } + enum "kbps" { + description + "kbps"; + } + enum "mbps" { + description + "mbps"; + } + enum "gbps" { + description + "gbps"; + } + enum "unit-max" { + description + "unit max"; + } + } + description + "Bag acl rate unit"; + } + + typedef Acl-frag-offset-operator { + type Acl-port-operator; + description + "Acl frag offset operator"; + } + + typedef Bag-acl-nh-at-status { + type enumeration { + enum "unknown" { + description + "AT State Unknown"; + } + enum "up" { + description + "AT State UP"; + } + enum "down" { + description + "AT State DOWN"; + } + enum "not-present" { + description + "AT State Not Present"; + } + enum "max" { + description + "invalid status"; + } + } + description + "Bag acl nh at status"; + } + + typedef Bag-acl-nh-status { + type enumeration { + enum "not-present" { + description + "State Not Present"; + } + enum "unknown" { + description + "State Unknown"; + } + enum "down" { + description + "State DOWN"; + } + enum "up" { + description + "State UP"; + } + enum "max" { + description + "invalid status"; + } + } + description + "Bag acl nh status"; + } + + typedef Bag-acl-nh { + type enumeration { + enum "nexthop-none" { + description + "Next Hop None"; + } + enum "nexthop-default" { + description + "Nexthop Default"; + } + enum "nexthop" { + description + "Nexthop"; + } + } + description + "Bag acl nh"; + } + + typedef Acl-ttl-operator { + type Acl-port-operator; + description + "Acl ttl operator"; + } + + typedef Acl-plen-operator { + type Acl-port-operator; + description + "Acl plen operator"; + } + + typedef Acl-tcpflags-operator { + type enumeration { + enum "match-none" { + description + "Match None"; + } + enum "match-all" { + description + "Match All"; + } + enum "match-any-old" { + description + "Match any old"; + } + enum "match-any" { + description + "Match any"; + } + } + description + "Acl tcpflags operator"; + } + + typedef Acl-log { + type enumeration { + enum "log-none" { + value 0; + description + "Log None"; + } + enum "log" { + value 1; + description + "Log Regular"; + } + enum "log-input" { + value 2; + description + "Log Input"; + } + } + description + "Acl log"; + } + + typedef Acl-port-operator { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "eq" { + value 1; + description + "Equal"; + } + enum "gt" { + value 2; + description + "Greater than"; + } + enum "lt" { + value 3; + description + "Less than"; + } + enum "neq" { + value 4; + description + "Not Equal"; + } + enum "range" { + value 5; + description + "Range"; + } + enum "onebyte" { + value 8; + description + "One Byte"; + } + enum "twobytes" { + value 9; + description + "Two Bytes"; + } + } + description + "Acl port operator"; + } + + typedef Acl-action { + type enumeration { + enum "deny" { + value 0; + description + "Deny"; + } + enum "permit" { + value 1; + description + "Permit"; + } + enum "encrypt" { + value 2; + description + "Encrypt"; + } + enum "bypass" { + value 3; + description + "Bypass"; + } + enum "fallthrough" { + value 4; + description + "Fallthrough"; + } + enum "invalid" { + value 5; + description + "Invalid"; + } + } + description + "Acl action"; + } + + typedef Acl-ace1 { + type enumeration { + enum "normal" { + description + "This is Normal ACE"; + } + enum "remark" { + description + "This is Remark ACE"; + } + enum "abf" { + description + "This is ABF ACE"; + } + } + description + "ACE Types"; + } + + typedef Acl-ace { + type Acl-ace1; + description + "ACE Types"; + } + + grouping IPV4-ACL-EDM-OOR-DETAIL { + description + "Oor deatil config BAG"; + leaf default-max-ac-ls { + type uint32; + description + "default max configurable acls"; + } + leaf default-max-ac-es { + type uint32; + description + "default max configurable aces"; + } + leaf current-configured-ac-ls { + type uint32; + description + "Current configured acls"; + } + leaf current-configured-ac-es { + type uint32; + description + "Current configured aces"; + } + leaf current-max-configurable-ac-ls { + type uint32; + description + "Current max configurable acls"; + } + leaf current-max-configurable-ac-es { + type uint32; + description + "Current max configurable aces"; + } + leaf max-configurable-ac-ls { + type uint32; + description + "max configurable acls"; + } + leaf max-configurable-ac-es { + type uint32; + description + "max configurable aces"; + } + } + + grouping IPV4-ACL-BAG-OBJGRP-INFO { + description + "Objgrp info structure"; + leaf obj-grp-name { + type string { + length "0..64"; + } + description + "Object-group name"; + } + leaf obj-grp-type { + type uint32; + description + "Object-group Type"; + } + } + + grouping IPV4-ACL-EDM-OBJGRP { + description + "Objgrp BAG"; + list obj-grp-info { + description + "Object-group info"; + uses IPV4-ACL-BAG-OBJGRP-INFO; + } + } + + grouping ACL-POLICE-ACE { + description + "ACL POLICE ACE"; + leaf police-value { + type uint32; + description + "Police value"; + } + leaf police-unit { + type Bag-acl-rate-unit; + description + "Police unit"; + } + leaf police-peak-value { + type uint32; + description + "Police peak value"; + } + leaf police-peak-unit { + type Bag-acl-rate-unit; + description + "Police peak unit"; + } + } + + grouping ACL-UDF-ACE { + description + "ACL UDF ACE"; + leaf udf-name { + type string { + length "0..17"; + } + description + "UDF Name"; + } + leaf udf-value { + type uint32; + description + "UDF Value"; + } + leaf udf-mask { + type uint32; + description + "UDF Mask"; + } + } + + grouping IPV4-ACL-BAG-HW-NH-INFO { + description + "HW_NH_Info structure"; + leaf next-hop { + type uint32; + description + "The Next Hop"; + } + leaf type { + type Bag-acl-nh; + description + "the next-hop type"; + } + leaf vrf-name { + type string { + length "0..32"; + } + description + "VRF name"; + } + } + + grouping IPV4-ACL-BAG-NH-INFO { + description + "NH_Info structure"; + leaf next-hop { + type inet:ipv4-address; + description + "The next hop"; + } + leaf track-name { + type string; + description + "Track name"; + } + leaf status { + type Bag-acl-nh-status; + description + "The next hop status"; + } + leaf at-status { + type Bag-acl-nh-at-status; + description + "The next hop at status"; + } + leaf is-acl-next-hop-exist { + type boolean; + description + "The nexthop exist"; + } + } + + grouping IPV4-ACL-EDM-ACE { + description + "ACLE bag"; + container hw-next-hop-info { + description + "HW Next hop info"; + uses IPV4-ACL-BAG-HW-NH-INFO; + } + container police { + description + "Police"; + uses ACL-POLICE-ACE; + } + leaf item-type { + type Acl-ace; + description + "ACE type (acl, remark)"; + } + leaf sequence { + type uint32; + description + "ACLE sequence number"; + } + leaf grant { + type Acl-action; + description + "Permit/deny"; + } + leaf protocol-operator { + type uint16; + description + "IPv4 protocol operator"; + } + leaf protocol { + type uint16; + description + "IPv4 protocol type"; + } + leaf protocol2 { + type uint16; + description + "IPv4 protocol 2"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source address"; + } + leaf source-address-mask { + type inet:ipv4-address; + description + "Source mask"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf destination-address-mask { + type inet:ipv4-address; + description + "Destination mask"; + } + leaf source-operator { + type Acl-port-operator; + description + "Source operator"; + } + leaf source-port1 { + type uint16; + description + "Source port 1"; + } + leaf source-port2 { + type uint16; + description + "Source port 2"; + } + leaf destination-operator { + type Acl-port-operator; + description + "Destination operator"; + } + leaf destination-port1 { + type uint16; + description + "Destination port 1"; + } + leaf destination-port2 { + type uint16; + description + "Destination port 2"; + } + leaf log-option { + type Acl-log; + description + "Log option"; + } + leaf counter-name { + type string; + description + "Counter name"; + } + leaf capture { + type boolean; + description + "Capture option, TRUE if enabled"; + } + leaf dscp-present { + type boolean; + description + "DSCP present"; + } + leaf dscp { + type uint8; + description + "DSCP or DSCP range start"; + } + leaf dscp2 { + type uint8; + description + "DSCP Range End"; + } + leaf dscp-operator { + type uint8; + description + "DSCP Operator"; + } + leaf dscp-bitmask { + type uint8; + description + "DSCP Bitmask"; + } + leaf precedence-present { + type boolean; + description + "Precedence present"; + } + leaf precedence { + type uint8; + description + "Precedence"; + } + leaf tcp-flags-operator { + type Acl-tcpflags-operator; + description + "TCP flags operator"; + } + leaf tcp-flags { + type uint8; + description + "TCP flags"; + } + leaf tcp-flags-mask { + type uint8; + description + "TCP flags mask"; + } + leaf fragments { + type uint8; + description + "Fragments"; + } + leaf packet-length-operator { + type Acl-plen-operator; + description + "Packet length operator"; + } + leaf packet-length1 { + type uint16; + description + "Packet length 1"; + } + leaf packet-length2 { + type uint16; + description + "Packet length 2"; + } + leaf ttl-operator { + type Acl-ttl-operator; + description + "TTL operator"; + } + leaf ttl1 { + type uint16; + description + "TTL 1"; + } + leaf ttl2 { + type uint16; + description + "TTL 2"; + } + leaf no-stats { + type boolean; + description + "No stats"; + } + leaf hits { + type uint64; + description + "Number of hits"; + } + leaf hardware-hits { + type uint64; + description + "Number of hardware hits used when in telemetry"; + } + leaf police-hits { + type uint64; + description + "Police stats"; + } + leaf police-hits-dropped { + type uint64; + description + "Police dropped stats"; + } + leaf byte-hits { + type uint64; + description + "Number of byte hits"; + } + leaf byte-police-hits { + type uint64; + units "byte"; + description + "Police bytes stats"; + } + leaf byte-police-hits-dropped { + type uint64; + description + "Police dropped byte stats"; + } + leaf is-icmp-off { + type boolean; + description + "True if ICMP off"; + } + leaf qos-group { + type uint16; + description + "Qos group number"; + } + leaf next-hop-type { + type Bag-acl-nh; + description + "Next hop type"; + } + leaf remark { + type string; + description + "Remark String"; + } + leaf dynamic { + type boolean; + description + "Is dynamic ACE"; + } + leaf source-prefix-group { + type string; + description + "Source prefix object-group"; + } + leaf destination-prefix-group { + type string; + description + "Destination prefix object-group"; + } + leaf source-port-group { + type string; + description + "Source port object-group"; + } + leaf destination-port-group { + type string; + description + "Destination port object-group"; + } + leaf acl-name { + type string; + description + "ACL Name"; + } + leaf sequence-str { + type string; + description + "Sequence String"; + } + leaf fragment-offset-operator { + type Acl-frag-offset-operator; + description + "Fragment offset operator"; + } + leaf fragment-offset1 { + type uint16; + description + "Fragment offset 1"; + } + leaf fragment-offset2 { + type uint16; + description + "Fragment offset 2"; + } + leaf set-ttl { + type uint16; + description + "SET TTL"; + } + leaf fragment-flags { + type uint8; + description + "Fragment flags"; + } + leaf priority { + type Acl-priority; + description + "Priority"; + } + leaf is-icmpon { + type boolean; + description + "True if ICMP on"; + } + list next-hop-info { + max-elements "3"; + description + "Next hop info"; + uses IPV4-ACL-BAG-NH-INFO; + } + list udf { + description + "UDF BAG"; + uses ACL-UDF-ACE; + } + } + + grouping IPV4-PFX-EDM-ACE { + description + "Prefix list entry BAG"; + leaf item-type { + type Acl-ace; + description + "ACE type (prefix, remark)"; + } + leaf sequence { + type uint32; + description + "ACLE sequence number"; + } + leaf grant { + type Acl-action; + description + "Grant value permit/deny "; + } + leaf prefix { + type inet:ipv4-address; + description + "Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix length "; + } + leaf operator { + type Acl-port-operator; + description + "Port Operator"; + } + leaf minimum-length { + type uint32; + description + "Min length"; + } + leaf maximum-length { + type uint32; + description + "Maximum length"; + } + leaf hits { + type uint32; + description + "Number of hits"; + } + leaf remark { + type string; + description + "Remark String"; + } + leaf acl-name { + type string; + description + "ACL Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper.yang new file mode 100644 index 000000000..ceb3d57ee --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-acl-oper.yang @@ -0,0 +1,262 @@ +module Cisco-IOS-XR-ipv4-acl-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-acl-oper"; + prefix ipv4-acl-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-common-acl-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-ipv4-acl-oper-sub1 { + revision-date 2022-08-10; + } + + 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-acl package operational data. + + This module contains definitions + for the following management objects: + ipv4-acl-and-prefix-list: Root class of IPv4 Oper schema tree + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-10 { + description + "Added new field for byte stats. + 2022-07-08 + 7.5.4 revision. Added dscp-bitmask feature + 2022-05-20 + Added new field for hardware stats for telemetry. + 2021-11-23 + Added icmp-on feature + 2021-09-20 + Cleanup of deprecated source port/operator fields in acl oper bag.CSCve77173 + 2021-09-14 + Changing vrf name size macro from 32 to 33.CSCve72799"; + semver:module-version "2.0.0"; + } + revision 2021-03-05 { + description + "Adding a new policer stats field.CSCvx54997"; + semver:module-version "1.2.0"; + } + revision 2020-11-13 { + description + "Adding policer and priority."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-12 { + description + "Fixing CSCvn61905."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv4-acl-and-prefix-list { + config false; + description + "Root class of IPv4 Oper schema tree"; + container access-list-manager { + description + "Access list manager containing access lists and + prefix lists"; + container prefixes { + description + "Table of prefix lists"; + list prefix { + key "prefix-list-name"; + description + "Name of the prefix list"; + container prefix-list-sequences { + description + "Table of all the SequenceNumbers per prefix + list"; + list prefix-list-sequence { + key "sequence-number"; + description + "Sequence Number of a prefix list entry"; + leaf sequence-number { + type dt1:Acl-sequence-number-range; + description + "Sequence Number of the prefix list entry"; + } + uses IPV4-PFX-EDM-ACE; + } + } + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the prefix list"; + } + } + } + container accesses { + description + "Access listL class displaying Usage and Entries"; + list access { + key "access-list-name"; + description + "Name of the Access List"; + container access-list-sequences { + description + "Table of all the SequenceNumbers per access + list"; + list access-list-sequence { + key "sequence-number"; + description + "Sequence Number of an access list entry"; + leaf sequence-number { + type dt1:Acl-sequence-number-range; + description + "ACLEntry Sequence Number"; + } + uses IPV4-ACL-EDM-ACE; + } + } + container object-group { + description + "Object Group in an Access list"; + uses IPV4-ACL-EDM-OBJGRP; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of the Access List"; + } + } + } + container usages { + description + "Table of Usage statistics of access lists at + different nodes"; + list usage { + description + "Usage statistics of an access list at a node"; + leaf node-name { + type xr:Node-id; + description + "Node where access list is applied"; + } + leaf application-id { + type dt1:Acl-usage-app-id-enum; + description + "Application ID"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of the access list"; + } + leaf usage-details { + type string; + mandatory true; + description + "Usage Statistics Details"; + } + } + } + } + container oor { + description + "Out Of Resources, Limits to the resources + allocatable"; + container details { + description + "Details of the Overall Out Of Resources Limits"; + uses IPV4-ACL-EDM-OOR-DETAIL; + } + container oor-prefixes { + description + "Resource occupation details for prefix lists"; + list oor-prefix { + key "prefix-list-name"; + description + "Resource occupation details for a particular + prefix list"; + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of a prefix list"; + } + uses IPV4-ACL-EDM-OOR-DETAIL; + } + } + container oor-accesses { + description + "Resource occupation details for access lists"; + list oor-access { + key "access-list-name"; + description + "Resource occupation details for a particular + access list"; + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of the Access List"; + } + uses IPV4-ACL-EDM-OOR-DETAIL; + } + } + container access-list-summary { + description + "Resource limits pertaining to access lists only"; + container details { + description + "Details containing the resource limits of the + access lists"; + uses IPV4-ACL-EDM-OOR-DETAIL; + } + } + container prefix-list-summary { + description + "Summary of the prefix Lists resource + utilization"; + container details { + description + "Summary Detail of the prefix list Resource + Utilisation"; + uses IPV4-ACL-EDM-OOR-DETAIL; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-act.yang new file mode 100644 index 000000000..0fd5dbf9a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-act.yang @@ -0,0 +1,192 @@ +module Cisco-IOS-XR-ipv4-arp-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-arp-act"; + prefix arp-act; + + 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 action package configuration. + + Copyright (c) 2018-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-01 { + description + "Changing task to cef as commonly used in arp ref cdets : CSCtq86525"; + semver:module-version "1.2.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-08 { + description + "IOS XR 6.1.1 revision."; + } + + rpc clear-arp-api-stats-api { + description + "Clear ARP API stats API"; + input { + leaf name { + type string; + mandatory true; + description + "Name of api"; + } + } + } + rpc clear-arp-api-stats-location { + description + "Clear ARP API stats location"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } + rpc clear-arp-cache-location { + description + "clear ARP cache for given node"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } + rpc clear-arp-cache-traffic-location { + description + "Clear ARP cache traffic statistics"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } + rpc clear-arp-cache-traffic-interface-location { + description + "Clear ARP cache traffic statistics for interface location"; + input { + leaf interface-name { + type string; + mandatory true; + description + "Interface name"; + } + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } + rpc clear-arp-cache-drop-adjacency-location { + description + "Clear ARP drop adjancency entries"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } + rpc clear-arp-cache-drop-adjacency-interface-ip-address-location { + description + "Clear ARP drop adjancency entries"; + input { + leaf interface-name { + type string; + mandatory true; + description + "Interface name"; + } + leaf ip-address { + type string; + mandatory true; + description + "IP address"; + } + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } + rpc clear-arp-cache-interface-location { + description + "Clear ARP cache entries for given interface"; + input { + leaf interface-name { + type string; + mandatory true; + description + "Interface"; + } + leaf node-location { + type string; + mandatory true; + description + "node location"; + } + } + } + rpc clear-arp-cache-interface-ip-address-location { + description + "Interface for which to clear ARP entries"; + input { + leaf interface-name { + type string; + mandatory true; + description + "Interface name"; + } + leaf ip-address { + type string; + mandatory true; + description + "IP address"; + } + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-cfg.yang new file mode 100644 index 000000000..9164b55c1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-cfg.yang @@ -0,0 +1,507 @@ +module Cisco-IOS-XR-ipv4-arp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-arp-cfg"; + prefix ipv4-arp-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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-arp package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-arp-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + arp: ARP configuraiton + iedge-cfg: IEDGE ARP configuration + arpgmp: ARP configuration + arp-redundancy: ARP configuraiton + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-10 { + description + "Adding support for ARP Cache Limit + 2022-05-31 + Adding support for ARP Policer"; + semver:module-version "1.1.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Arp-entry { + type enumeration { + enum "static" { + value 0; + description + "Static ARP entry type"; + } + enum "alias" { + value 1; + description + "Alias ARP entry type"; + } + } + description + "Arp entry"; + } + + typedef Arp-encap { + type enumeration { + enum "arpa" { + value 1; + description + "Encapsulation type ARPA"; + } + enum "srp" { + value 4; + description + "Encapsulation type SRP"; + } + enum "srpa" { + value 5; + description + "Encapsulation type SRPA"; + } + enum "srpb" { + value 6; + description + "Encapsulation type SRPB"; + } + } + description + "Arp encap"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container dagrs { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-arp-cfg.yang which will provide + the compatible functionalities. Direct-Attached + Gateway Redundancy configuration"; + list dagr { + key "ip-addr"; + description + "The DAGR entry being configured"; + container sub { + description + "DAGR Submode configuration"; + container metric { + description + "Set Route Metric"; + leaf metric-norm { + type uint32 { + range "0..256"; + } + default "100"; + description + "Normal Route Metric"; + } + leaf metric-prio { + type uint32 { + range "0..256"; + } + default "90"; + description + "Priority Route Metric"; + } + } + container timers { + description + "Set Query Timers"; + leaf query-time { + type uint32 { + range "1..10000"; + } + default "1"; + description + "Query Timeout"; + } + leaf sby-time { + type uint32 { + range "1..10000"; + } + default "20"; + description + "Standby Query Timeout"; + } + } + container distance { + description + "Set Route Distance"; + leaf dist-norm { + type uint32 { + range "0..256"; + } + default "150"; + description + "Normal Route Distance"; + } + leaf dist-prio { + type uint32 { + range "0..256"; + } + default "5"; + description + "Priority Route Distance"; + } + } + leaf priority-timeout { + type uint32 { + range "1..10000"; + } + default "20"; + description + "Priority Timeout value"; + } + } + leaf enter { + type empty; + description + "DAGR Group Enter item"; + } + leaf ip-addr { + type inet:ipv4-address-no-zone; + description + "DAGR Peer IPv4 address"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv4arp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-arp-cfg.yang which will provide + the compatible functionalities. Configure + Address Resolution Protocol"; + leaf cache-limit { + type uint32 { + range "0..127999"; + } + description + "Limit ARP cache on the interface"; + } + leaf learning-local { + type empty; + description + "Enable the dynamic learning of ARP entries(for + local subnet) on the interface"; + } + leaf drop-adj-timeout { + type uint32 { + range "900..7200"; + } + units "second"; + default "3600"; + description + "Number of seconds for ARP drop adjacency + timeout"; + } + leaf learning-solicited { + type empty; + description + "ARP learning solicited configuration"; + } + leaf gratuitous-ignore { + type empty; + description + "Ignore the receipt of Gratuitous ARP packets on + the interface"; + } + leaf proxy-arp { + type empty; + description + "Proxy ARP configuration"; + } + leaf purge-delay { + type uint32 { + range "1..65535"; + } + description + "Time to delay purging arp entries when the + interface goes down"; + } + leaf learning-disable { + type empty; + description + "Disable the dynamic learning of ARP entries on + the interface"; + } + leaf local-proxy-arp { + type empty; + description + "Local Proxy ARP configuration"; + } + leaf timeout { + type uint32 { + range "30..2144448000"; + } + units "second"; + description + "Number of seconds for ARP cache timeout"; + } + } + } + container arp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-arp-cfg.yang which will provide + the compatible functionalities. ARP + configuraiton"; + leaf max-entries { + type uint32 { + range "1..256000"; + } + description + "Configure maximum number of safe ARP entries per + line card"; + } + leaf inner-cos { + type uint32 { + range "0..7"; + } + description + "Configure inner cos values for arp packets"; + } + leaf outer-cos { + type uint32 { + range "0..7"; + } + description + "Configure outer cos values for arp packets"; + } + leaf police-interval { + type uint32 { + range "1..60"; + } + units "second"; + description + "Configure the policing interval in seconds to + drop the ARP requests with the same MAC and, or + same IP that comes."; + } + } + container iedge-cfg { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-arp-cfg.yang which will provide + the compatible functionalities. IEDGE ARP + configuration"; + leaf subscriber-uncond-proxy { + type empty; + description + "ARP Subscriber Enable Unconditional Proxy ARP"; + } + leaf subscriber-scale-mode { + type empty; + description + "ARP Subscriber Scale Mode Configuration"; + } + } + container arpgmp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-arp-cfg.yang which will provide + the compatible functionalities. ARP + configuration"; + list vrf { + key "vrf-name"; + description + "Per VRF configuration, for the default VRF use + 'default'"; + container entries { + description + "ARP static and alias entry configuration"; + list entry { + key "address"; + description + "ARP static and alias entry configuration item"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IP Address"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + leaf encapsulation { + type Arp-encap; + description + "Encapsulation type"; + } + leaf entry-type { + type Arp-entry; + description + "Entry type"; + } + leaf interface { + type xr:Interface-name; + description + "Interface name"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container arp-redundancy { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-arp-cfg.yang which will provide + the compatible functionalities. ARP + configuraiton"; + container redundancy { + presence "Indicates a redundancy node is configured."; + description + "Configure parameter for ARP Geo redundancy"; + container groups { + description + "Table of Group"; + list group { + key "group-id"; + description + "None"; + container peers { + description + "Table of Peer"; + list peer { + key "prefix-string"; + description + "None"; + leaf prefix-string { + type inet:ip-address-no-zone; + description + "Neighbor IPv4 address"; + } + } + } + container interface-list { + presence "Indicates a interface-list node is configured."; + description + "List of Interfaces for this Group"; + container interfaces { + description + "Table of Interface"; + list interface { + key "interface-name"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-id { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Interface Id for the interface"; + } + } + } + leaf enable { + type empty; + mandatory true; + description + "Enable List of Interfaces for this Group. + Deletion of this object also causes deletion + of all associated objects under + InterfaceList."; + } + } + leaf source-interface { + type xr:Interface-name; + description + "Interface name"; + } + leaf group-id { + type uint32 { + range "1..32"; + } + description + "Group ID"; + } + } + } + leaf enable { + type empty; + mandatory true; + description + "Enable Configure parameter for ARP Geo + redundancy. Deletion of this object also causes + deletion of all associated objects under + ArpRedundancy."; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub1.yang new file mode 100644 index 000000000..ff818331b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub1.yang @@ -0,0 +1,1544 @@ +submodule Cisco-IOS-XR-ipv4-arp-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-arp-oper { + prefix Cisco-IOS-XR-ipv4-arp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-arp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-10 { + description + "Adding support for displaying counters related to ARP Cache Limit + 2022-06-09 + Adding support for ARP Policer"; + semver:module-version "2.2.0"; + } + revision 2021-08-17 { + description + "Adding support for displaying Last pulse time for Punt and input queue from XIPC"; + semver:module-version "2.1.0"; + } + revision 2021-02-11 { + description + "IOS XR 6.2.3 revision. + 2021-02-04 + IOS XR 6.2.2 revision. + 2020-12-03 + Adding support for displaying client resync time + 2020-04-22 + adding oper schema support, clinet stats update with cnbng."; + semver:module-version "2.0.0"; + } + revision 2019-12-11 { + description + "adding oper schema support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-11-21 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ip-arp-bag-encap { + type enumeration { + enum "none" { + value 0; + description + "No encapsulation"; + } + enum "arpa" { + value 1; + description + "ARPA"; + } + enum "snap" { + value 2; + description + "SNAP"; + } + enum "ieee802-1q" { + value 3; + description + "802 1Q"; + } + enum "srp" { + value 4; + description + "SRP"; + } + enum "srpa" { + value 5; + description + "SRPA"; + } + enum "srpb" { + value 6; + description + "SRPB"; + } + } + description + "ARP encapsulation"; + } + + typedef Ip-arp-bag-flags { + type enumeration { + enum "flag-none" { + value 0; + description + "No Flag"; + } + enum "flag-dynamic" { + value 1; + description + "Dynamic learnt entry"; + } + enum "flag-evpn-sync" { + value 2; + description + "EVPN Synced entry"; + } + enum "flag-max" { + value 3; + description + "Maximum Flag number"; + } + } + description + "ARP flags"; + } + + typedef Ip-arp-bag-state { + type enumeration { + enum "state-none" { + value 0; + description + "No state"; + } + enum "state-interface" { + value 1; + description + "Interface"; + } + enum "state-standby" { + value 2; + description + "Standby"; + } + enum "state-static" { + value 3; + description + "Static"; + } + enum "state-alias" { + value 4; + description + "Alias"; + } + enum "state-mobile" { + value 5; + description + "Mobile"; + } + enum "state-incomplete" { + value 6; + description + "Incomplete"; + } + enum "state-deleted" { + value 7; + description + "Deleted"; + } + enum "state-dynamic" { + value 8; + description + "Dynamic"; + } + enum "state-probe" { + value 9; + description + "Probe"; + } + enum "state-purge-delayed" { + value 10; + description + "Purge delayed"; + } + enum "state-dhcp" { + value 11; + description + "DHCP installed"; + } + enum "state-vxlan" { + value 12; + description + "VXLAN installed"; + } + enum "state-evpn-sync" { + value 13; + description + "EVPN-SYNC installed"; + } + enum "state-sat" { + value 14; + description + "Satellite installed"; + } + enum "state-r-sync" { + value 15; + description + "Geo-redundancy sync'ed"; + } + enum "state-drop-adj" { + value 16; + description + "Drop adjacency"; + } + enum "state-stale" { + value 17; + description + "Stale"; + } + enum "state-max" { + value 18; + description + "Maximum state number"; + } + } + description + "ARP state"; + } + + typedef Ip-arp-bag-media { + type enumeration { + enum "media-arpa" { + value 0; + description + "ARPA"; + } + enum "media-srp" { + value 1; + description + "SRP"; + } + enum "media-unknown" { + value 2; + description + "Unknown"; + } + } + description + "ARP media type"; + } + + typedef Arp-peer-status-bag { + type enumeration { + enum "state-invalid" { + value 0; + description + "No State"; + } + enum "state-init" { + value 1; + description + "Init State"; + } + enum "state-retry" { + value 2; + description + "Retry State"; + } + enum "state-connect" { + value 3; + description + "Connect State"; + } + enum "state-listen" { + value 4; + description + "Listen State"; + } + enum "state-reg" { + value 5; + description + "Register State"; + } + enum "state-clenaup" { + value 6; + description + "Register Cleanup"; + } + enum "state-connected" { + value 7; + description + "Connected State"; + } + enum "state-estab" { + value 8; + description + "Established State"; + } + } + description + "ARP Sync Peer state"; + } + + typedef Arp-issu-version { + type enumeration { + enum "version1" { + value 0; + description + "Version 1"; + } + enum "version2" { + value 1; + description + "Version 2"; + } + } + description + "Arp issu version"; + } + + typedef Arp-issu-phase { + type enumeration { + enum "phase-not-started" { + value 0; + description + "An ISSU event has not started"; + } + enum "phase-load" { + value 1; + description + "ISSU Load Phase"; + } + enum "phase-run" { + value 2; + description + "ISSU Run Phase"; + } + enum "phase-completed" { + value 3; + description + "An ISSU event has completed successfully"; + } + enum "phase-aborted" { + value 4; + description + "An ISSU event has aborted"; + } + } + description + "Arp issu phase"; + } + + typedef Arp-issu-role { + type enumeration { + enum "role-primary" { + value 0; + description + "Primary role"; + } + enum "role-secondary" { + value 1; + description + "Secondary role"; + } + } + description + "Arp issu role"; + } + + typedef Arp-im-oper-bag { + type enumeration { + enum "im-oper-none" { + value 0; + description + "NONE"; + } + enum "im-oper-caps-add" { + value 1; + description + "ADD"; + } + enum "im-oper-caps-rem" { + value 2; + description + "REM"; + } + enum "im-oper-init-data" { + value 3; + description + "INIT"; + } + enum "im-oper-last" { + value 4; + description + "NONE"; + } + } + description + "ARP IM oper type"; + } + + typedef Im-state { + type uint32; + description + "Im state"; + } + + typedef Arp-resolution-history-status { + type enumeration { + enum "status-none" { + value 0; + description + "No Status"; + } + enum "status-resolution-request" { + value 1; + description + "Resolution Request Received"; + } + enum "status-resolved-reply" { + value 2; + description + "Resolved with ARP reply"; + } + enum "status-resolved-grat-arp" { + value 3; + description + "Resolved with Grat ARP"; + } + enum "status-resolved-request" { + value 4; + description + "Resolved with ARP Request"; + } + enum "status-resolved-lc-sync" { + value 5; + description + "Resolved via a Linecard sync"; + } + enum "status-resolved-lc-sync-purge-delay" { + value 6; + description + "Resolved via a Linecard sync while purge + delayed"; + } + enum "status-resolved-client" { + value 7; + description + "Resolved from an ARP API client"; + } + enum "status-removed-client" { + value 8; + description + "Removed by an ARP API client"; + } + enum "status-already-resolved" { + value 9; + description + "Already Resolved"; + } + enum "status-failed" { + value 10; + description + "Resolution Failed"; + } + enum "status-dropped-interface-down" { + value 11; + description + "Dropped because the Interface was down"; + } + enum "status-dropped-broadcast-disabled" { + value 12; + description + "Dropped because the Interface was broadcast + disabled"; + } + enum "status-dropped-interface-unavailable" { + value 13; + description + "Dropped because the Interface was unavailable + to arp"; + } + enum "status-dropped-bad-subnet" { + value 14; + description + "The requested IP address didn't belong to the + subnet"; + } + enum "status-dropped-dynamic-learning-disabled" { + value 15; + description + "Dynamic learning of ARP entries is disabled on + the interface"; + } + enum "status-dropped-out-of-subnet-disabled" { + value 16; + description + "Out of Subnet address learning is disabled on + the interface"; + } + enum "status-removed-client-sweep" { + value 17; + description + "Removed by an ARP API client during a resync"; + } + enum "status-added-client" { + value 18; + description + "Added by an ARP API client"; + } + enum "status-added-v1" { + value 19; + description + "Added by replication from ARP V1 during ISSU"; + } + enum "status-removed-v1" { + value 20; + description + "Removed by replication from ARP V1 during ISSU"; + } + enum "status-resolved-peer-sync" { + value 21; + description + "Resolved via a Peer Router sync"; + } + enum "status-dropped-unsolicited-pak" { + value 22; + description + "Learning unsolicited ARP packets is disabled on + this Interface"; + } + enum "status-drop-adjacency-added" { + value 23; + description + "Adding drop adjacency entry for the address"; + } + enum "status-dropped-exceeding-cache-limit" { + value 24; + description + "Dropped because cache limit exceeded on the + interface"; + } + } + description + "Arp resolution history status"; + } + + grouping IP-ARP-TABLE-ENTRY { + description + "IP ARP Table entry"; + leaf media-type { + type Ip-arp-bag-media; + description + "Media type for this entry"; + } + leaf state { + type Ip-arp-bag-state; + description + "State of this entry"; + } + leaf flag { + type Ip-arp-bag-flags; + description + "Flags of this entry"; + } + leaf age { + type uint64; + description + "Age of this entry"; + } + leaf encapsulation-type { + type Ip-arp-bag-encap; + description + "Type of source encapsulation"; + } + leaf hardware-length { + type uint8; + description + "Source MAC length"; + } + leaf hardware-address { + type yang:mac-address; + description + "MAC address"; + } + } + + grouping IP-ARP-THREAD-ELEMENT-INFO { + description + "IP ARP Thread element info"; + leaf thread-q-size { + type uint32; + description + "TheradQSize"; + } + leaf peak-q-size { + type uint32; + description + "PeakQSize"; + } + leaf msgs-enqueued-count { + type uint32; + description + "MsgsEnqueuedCount"; + } + leaf pulse-sent-count { + type uint32; + description + "PulseSentCount"; + } + leaf self-pulse-count { + type uint32; + description + "SelfPulseCount"; + } + leaf pulse-recvd-count { + type uint32; + description + "PulseRecvdCount"; + } + leaf dq-count { + type uint32; + description + "QCount"; + } + leaf no-q-count { + type uint32; + description + "NoQCount"; + } + leaf qblocked-count { + type uint32; + description + "QBlocked"; + } + leaf qreleased-count { + type uint32; + description + "QReleased"; + } + } + + grouping IP-ARP-THREAD-NODE-INFO { + description + "IP ARP Thread node info"; + container old-element-info { + description + "OldElementInfo"; + uses IP-ARP-THREAD-ELEMENT-INFO; + } + container current-element-info { + description + "CurrentElementInfo"; + uses IP-ARP-THREAD-ELEMENT-INFO; + } + leaf thread-name { + type string; + description + "NameOfTheThread"; + } + } + + grouping IP-ARP-THREAD-QUEUE-STATS { + description + "IP ARP Thread queue stats"; + container last-punt-pulse-time { + description + "LastPuntPulseTime"; + uses BAG-TIMESPEC; + } + container last-input-pulse-time { + description + "LastInputPulseTime"; + uses BAG-TIMESPEC; + } + leaf total-drop-count { + type uint64; + description + "TotalDropCount"; + } + leaf input-packet-drop-count { + type uint64; + description + "InputPacketDropCount"; + } + leaf punt-packet-drop-count { + type uint64; + description + "PuntPacketDropCount"; + } + leaf unknown-packet-drop-count { + type uint64; + description + "UnknownPacketDropCount"; + } + list queue-msg { + max-elements "6"; + description + "Queue msgs for ARP thread"; + uses IP-ARP-THREAD-NODE-INFO; + } + } + + grouping ARP-SYNC-ENTRY { + description + "ARP Sync Redundancy entry"; + leaf group-id-xr { + type uint16; + description + "Group ID"; + } + leaf src-int-name { + type string { + length "0..65"; + } + description + "Source Interface Name"; + } + leaf peer-add { + type inet:ipv4-address; + description + "Peer IP address"; + } + leaf peer-status { + type Arp-peer-status-bag; + description + "Status of Peer"; + } + } + + grouping ARP-PAKHIST-ENTRY { + description + "ARP packet history entry"; + leaf idb-interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf sr-caddress { + type inet:ipv4-address; + description + "Source address"; + } + leaf ds-taddress { + type inet:ipv4-address; + description + "Destination address"; + } + leaf src-mac { + type yang:mac-address; + description + "Source MAC address"; + } + leaf dst-mac { + type yang:mac-address; + description + "Destination MAC address"; + } + leaf type { + type int32; + description + "ARP packet type"; + } + leaf mode { + type int32; + description + "Incoming or Outgoing"; + } + leaf nsec-timestamp { + type uint64; + units "nanosecond"; + description + "Timestamp for entry in nanoseconds since Epoch, + i.e. since 00:00:00 UTC, January 1, 1970"; + } + } + + grouping ARP-PAKHIST { + description + "ARP Packet History"; + list arp-entry { + description + "ARP packet history array"; + uses ARP-PAKHIST-ENTRY; + } + } + + grouping ARP-CLIENT-STAT-INFO { + description + "Client statistics"; + leaf client-id-xr { + type uint32; + description + "ARP client id"; + } + leaf reg-time { + type uint64; + units "nanosecond"; + description + "Registration timestamp in nano-seconds since + Epoch, i.e. since 00:00:00 UTC, January 1, 1970"; + } + leaf unreg-time { + type uint64; + units "nanosecond"; + description + "Un-registration timestamp in nano-seconds since + Epoch, i.e. since 00:00:00 UTC, January 1, 1970"; + } + leaf entries-added { + type uint32; + description + "Number of entries added by client"; + } + leaf entries-deleted { + type uint32; + description + "Number of entries deleted by client"; + } + leaf send-request { + type uint32; + description + "Number of send request by client"; + } + } + + grouping IP-ARP-STATISTICS { + description + "IP ARP Statistics information"; + leaf requests-received { + type uint32; + description + "Total ARP requests received"; + } + leaf replies-received { + type uint32; + description + "Total ARP replies received"; + } + leaf requests-sent { + type uint32; + description + "Total ARP requests sent"; + } + leaf replies-sent { + type uint32; + description + "Total ARP replies sent"; + } + leaf proxy-replies-sent { + type uint32; + description + "Total Proxy ARP replies sent"; + } + leaf subscr-requests-received { + type uint32; + description + "Total ARP requests received over subscriber + interface"; + } + leaf subscr-replies-sent { + type uint32; + description + "Total ARP replies sent over subscriber interface"; + } + leaf subscr-replies-gratg-sent { + type uint32; + description + "Total ARP grat replies sent over subscriber + interface"; + } + leaf local-proxy-replies-sent { + type uint32; + description + "Total Local Proxy ARP replies sent"; + } + leaf gratuitous-replies-sent { + type uint32; + description + "Total Gratuituous ARP replies sent"; + } + leaf resolution-requests-received { + type uint32; + description + "Total ARP request received for resolution"; + } + leaf resolution-replies-received { + type uint32; + description + "Total ARP replies received for resolution"; + } + leaf resolution-requests-dropped { + type uint32; + description + "total ARP request dropped for resolution"; + } + leaf out-of-memory-errors { + type uint32; + description + "Total errors for out of memory"; + } + leaf no-buffer-errors { + type uint32; + description + "Total errors for no buffer"; + } + leaf total-entries { + type uint32; + description + "Total ARP entries in the cache"; + } + leaf dynamic-entries { + type uint32; + description + "Total dynamic entries in the cache"; + } + leaf static-entries { + type uint32; + description + "Total static entries in the cache"; + } + leaf alias-entries { + type uint32; + description + "Total alias entries in the cache"; + } + leaf interface-entries { + type uint32; + description + "Total interface entries in the cache"; + } + leaf standby-entries { + type uint32; + description + "Total standby entries in the cache"; + } + leaf dhcp-entries { + type uint32; + description + "Total DHCP entries in the cache"; + } + leaf vxlan-entries { + type uint32; + description + "Total VXLAN entries in the cache"; + } + leaf drop-adjacency-entries { + type uint32; + description + "Total drop adjacency entries in the cache"; + } + leaf ipv4-packets-dropped-node { + type uint32; + description + "Total ip packets droped on this node"; + } + leaf arp-packet-node-out-of-subnet { + type uint32; + description + "Total ARP packets on node due to out of subnet"; + } + leaf ipv4-packets-dropped-interface { + type uint32; + description + "Total ip packets droped on this interface"; + } + leaf arp-packet-interface-out-of-subnet { + type uint32; + description + "Total arp packets on interface due to out of + subnet"; + } + leaf arp-packet-unsolicited-packet { + type uint32; + description + "Total unsolicited arp packets dropped"; + } + leaf idb-structures { + type uint32; + description + "Total idb structures on this node"; + } + leaf arp-policer-allowed-packet { + type uint32; + description + "Total ARP requests allowed by the policer"; + } + leaf arp-policer-dropped-packet { + type uint32; + description + "Total ARP requests dropped by the policer"; + } + leaf arpip-policer-dropped-packet { + type uint32; + description + "Total ARP requests dropped by the IP policer"; + } + leaf arpmac-policer-dropped-packet { + type uint32; + description + "Total ARP requests dropped by the MAC policer"; + } + } + + grouping ARP-AIBHIST-ENTRY { + description + "ARP AIB history entry"; + leaf idb-interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "Address for adjacency history"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf client-id { + type int32; + description + "Resolving Client ID"; + } + leaf entry-state { + type int32; + description + "State of ARP entry"; + } + leaf protocol { + type int32; + description + "Protocol ID"; + } + leaf result { + type int32; + description + "ARP AIB Update result"; + } + leaf type { + type int32; + description + "ARP AIB update type"; + } + leaf nsec-timestamp { + type uint64; + units "nanosecond"; + description + "Timestamp for entry in nanoseconds since Epoch, + i.e. since 00:00:00 UTC, January 1, 1970"; + } + } + + grouping ARP-AIBHIST { + description + "ARP AIB Update History"; + list arp-entry { + description + "ARP AIB history array"; + uses ARP-AIBHIST-ENTRY; + } + } + + grouping ARP-STATUS-INFO { + description + "ARP Status"; + container all-idb-client-resync-time { + description + "Time of last client resync for all IDBs"; + uses BAG-TIMESPEC; + } + leaf process-start-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the process start time in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf issu-sync-complete-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU sync complete in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf issu-ready-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU ready declaration in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf big-bang-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the Big Bang notification time in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf primary-role-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the change to Primary role + notification time in nanoseconds since Epoch, i + .e. since 00:00:00 UTC, January 1, 1970"; + } + leaf role { + type Arp-issu-role; + description + "The current role of the ARP process"; + } + leaf phase { + type Arp-issu-phase; + description + "The current ISSU phase of the ARP process"; + } + leaf version { + type Arp-issu-version; + description + "The current version of the ARP process in the + context of an ISSU"; + } + leaf dynamic-entries-recovered-count { + type uint32; + description + "The number of entries that have been recovered + during ISSU V1 and V2 synchronisation"; + } + leaf non-operational-entries-count { + type uint32; + description + "The number of entries that are currently + non-operational in the shadow database"; + } + leaf interface-handle-translation-failure-count { + type uint32; + description + "The number of interface handle translation + failures that occurred during the ISSU V1 and V2 + synchronisation"; + } + leaf issu-ready-issu-mgr-connection { + type boolean; + description + "Whether or not ARP is currently connected to + ISSU Manager during the ISSU Load Phase"; + } + leaf issu-ready-im { + type boolean; + description + "Whether or not ARP is in sync with IM during the + ISSU Load Phase"; + } + leaf issu-ready-dagr-rib { + type boolean; + description + "Whether or not the ARP DAGR system is in sync + with the RIB during the ISSU Load Phase"; + } + leaf issu-ready-entries-replicate { + type boolean; + description + "Whether or not ARP has received all replicated + entries during the ISSU Load Phase"; + } + } + + grouping BAG-TIMESPEC { + description + "Timespec specifying the number of seconds since + the base time of 00:00:00 GMT, 1 January 1970."; + leaf seconds { + type uint32; + units "second"; + description + "Number of seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Number of nanoseconds"; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + leaf-list evt-data { + type uint32; + description + "Optional data"; + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping ARP-IDB-INFO { + description + "ARP IDB information"; + container idb-event-history { + description + "Event history of Interface"; + uses EVT-HIST-INFO; + } + container client-resync-time { + description + "Time of last client resync"; + uses BAG-TIMESPEC; + } + leaf idb-interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf idb-ip-address { + type inet:ipv4-address; + description + "Address"; + } + leaf is-ipv4-unnumbered { + type boolean; + description + "Is the address unnumbered?"; + } + leaf vrf-id { + type uint32; + description + "VRF that this interface is in"; + } + leaf vrf-name { + type string { + length "0..32"; + } + description + "VRF name that this interface is in"; + } + leaf capsulation-state { + type Im-state; + description + "Capsulation state for IPV4"; + } + leaf idb-timeout { + type uint32; + description + "Configured timeout value for ARP entries"; + } + leaf is-dynamic-learning-enabled { + type boolean; + description + "Is dynamic entry learning configured on this + interface?"; + } + leaf is-dynamic-learning-local-enabled { + type boolean; + description + "Is dynamic entry learning local configured on + this interface?"; + } + leaf is-dynamic-learning-solicited-enabled { + type boolean; + description + "Is dynamic entry learning solicited configured + on this interface?"; + } + leaf is-purge-delay-configured { + type boolean; + description + "Presence of Purge delay configuration"; + } + leaf purge-delay { + type uint32; + description + "The purge delay timeout if configured, otherwise + set to zero"; + } + leaf is-idb-forward-referenced { + type boolean; + description + "Is IDB forward referenced for a client"; + } + leaf is-virtual { + type boolean; + description + "Is this a virtual interface?"; + } + leaf is-complete { + type boolean; + description + "Is the IDB complete?"; + } + leaf is-proxy-enabled { + type boolean; + description + "Is proxy arp enabled on this interface?"; + } + leaf is-proxy-configured { + type boolean; + description + "Is proxy arp configured on this interface?"; + } + leaf is-local-proxy-configured { + type boolean; + description + "Is local proxy arp configured on this interface?"; + } + leaf mpls-capsulation-known { + type boolean; + description + "Is the IPv4 caps added on this interface?"; + } + leaf ipv4-capsulation-known { + type boolean; + description + "Is the IPv4 caps added on this interface?"; + } + leaf hardware-address-known { + type boolean; + description + "Is the HW address known for this interface?"; + } + leaf media-known { + type boolean; + description + "Is the media known for this interface?"; + } + leaf vlanid-known { + type boolean; + description + "Is the VLAN ID known for this interface?"; + } + leaf spio-attach-error { + type uint32; + description + "The error returned when attaching to SPIO or + SUCCESS"; + } + leaf is-using-spio { + type boolean; + description + "Is SPIO being used as the Packet IO layer for + this interface?"; + } + leaf broadcast-disabled { + type boolean; + description + "Is the sending of broadcast packets disabled on + this interface?"; + } + leaf client-id { + type uint32; + description + "The client id that has brodacast disabled the + interface"; + } + leaf srg-role { + type uint8; + description + "Srg role for the idb"; + } + leaf idb-flag { + type uint32; + description + "ARP IDB flag"; + } + leaf drop-adj-timeout { + type uint32; + description + "Configured timeout value for drop adjacency"; + } + leaf idb-flag-ext { + type uint32; + description + "ARP IDB flag extension"; + } + leaf oper-progress { + type Arp-im-oper-bag; + description + "Current IM operation in progress"; + } + leaf cache-limit { + type uint32; + description + "ARP cache limit value"; + } + leaf incomplete-glean-count { + type uint32; + description + "Incomplete Glean count"; + } + leaf complete-glean-count { + type uint32; + description + "Complete Glean count"; + } + leaf complete-protocol-count { + type uint32; + description + "Complete Protocol count"; + } + leaf dropped-glean-count { + type uint32; + description + "Dropped glean count"; + } + leaf dropped-protocol-count { + type uint32; + description + "Dropped protocol count"; + } + } + + grouping ARP-RESHIST-ENTRY { + description + "ARP resolution history entry"; + leaf nsec-timestamp { + type uint64; + units "nanosecond"; + description + "Timestamp for entry in nanoseconds since Epoch, + i.e. since 00:00:00 UTC, January 1, 1970"; + } + leaf idb-interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "Address for resolution history"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf status { + type Arp-resolution-history-status; + description + "Resolution status"; + } + leaf client-id { + type int32; + description + "Resolving Client ID"; + } + leaf entry-state { + type int32; + description + "State of ARP entry"; + } + leaf resolution-request-count { + type uint32; + description + "Number of ARP resolution request"; + } + } + + grouping ARP-RESHIST { + description + "ARP Resolution History"; + list arp-entry { + description + "Resolution history array"; + uses ARP-RESHIST-ENTRY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub2.yang new file mode 100644 index 000000000..97ea1fce7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub2.yang @@ -0,0 +1,119 @@ +submodule Cisco-IOS-XR-ipv4-arp-oper-sub2 { + belongs-to Cisco-IOS-XR-ipv4-arp-oper { + prefix Cisco-IOS-XR-ipv4-arp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-arp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-10 { + description + "Adding support for displaying counters related to ARP Cache Limit + 2022-06-09 + Adding support for ARP Policer"; + semver:module-version "2.2.0"; + } + revision 2021-08-17 { + description + "Adding support for displaying Last pulse time for Punt and input queue from XIPC"; + semver:module-version "2.1.0"; + } + revision 2021-02-11 { + description + "IOS XR 6.2.3 revision. + 2021-02-04 + IOS XR 6.2.2 revision. + 2020-12-03 + Adding support for displaying client resync time + 2020-04-22 + adding oper schema support, clinet stats update with cnbng."; + semver:module-version "2.0.0"; + } + revision 2019-12-11 { + description + "adding oper schema support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-11-21 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DAGR-GROUP-INFO { + description + "DAGR Group information"; + leaf ifhandle { + type xr:Interface-name; + description + "Interface"; + } + leaf vip { + type inet:ipv4-address; + description + "Virtual IPv4 address"; + } + leaf state { + type xr:Node-id; + description + "State"; + } + leaf query-period { + type uint32; + description + "Query Period for dagr group"; + } + leaf dist { + type uint32; + description + "DAGR Route distance"; + } + leaf metric { + type uint32; + description + "DAGR Route Metric"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub3.yang new file mode 100644 index 000000000..f96a9557f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper-sub3.yang @@ -0,0 +1,255 @@ +submodule Cisco-IOS-XR-ipv4-arp-oper-sub3 { + belongs-to Cisco-IOS-XR-ipv4-arp-oper { + prefix Cisco-IOS-XR-ipv4-arp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-arp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-10 { + description + "Adding support for displaying counters related to ARP Cache Limit + 2022-06-09 + Adding support for ARP Policer"; + semver:module-version "2.2.0"; + } + revision 2021-08-17 { + description + "Adding support for displaying Last pulse time for Punt and input queue from XIPC"; + semver:module-version "2.1.0"; + } + revision 2021-02-11 { + description + "IOS XR 6.2.3 revision. + 2021-02-04 + IOS XR 6.2.2 revision. + 2020-12-03 + Adding support for displaying client resync time + 2020-04-22 + adding oper schema support, clinet stats update with cnbng."; + semver:module-version "2.0.0"; + } + revision 2019-12-11 { + description + "adding oper schema support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-11-21 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Arp-gmp-bag-entry { + type enumeration { + enum "null" { + value 0; + description + "No state"; + } + enum "static" { + value 1; + description + "Static"; + } + enum "alias" { + value 2; + description + "Alias"; + } + } + description + "ARP Entry type"; + } + + typedef Arp-gmp-bag-encap { + type enumeration { + enum "none" { + value 0; + description + "No encapsulation"; + } + enum "arpa" { + value 1; + description + "ARPA"; + } + enum "snap" { + value 2; + description + "SNAP"; + } + enum "ieee802-1q" { + value 3; + description + "802 1Q"; + } + enum "srp" { + value 4; + description + "SRP"; + } + enum "srpa" { + value 5; + description + "SRPA"; + } + enum "srpb" { + value 6; + description + "SRPB"; + } + } + description + "ARP encapsulation"; + } + + grouping ARP-GMP-INTF-ENTRY { + description + "ARP GMP entries associated with an interface"; + container associated-configuration-entry { + description + "Configuration entry associated"; + uses ARP-GMP-CONFIG-ENTRY; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Source Interface"; + } + leaf reference-count { + type uint32; + description + "Number of Route reference"; + } + } + + grouping ARP-GMP-ROUTE-ENTRY { + description + "ARP GMP route entry"; + leaf ip-address { + type inet:ipv4-address; + description + "IP address"; + } + leaf prefix-length-xr { + type uint8; + description + "IP address length"; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Source Interface"; + } + list interface-name { + description + "Interface list"; + leaf entry { + type xr:Interface-name; + description + "Interface list"; + } + } + } + + grouping ARP-GMP-CONFIG-ENTRY { + description + "ARP GMP configuration entry"; + leaf ip-address { + type inet:ipv4-address; + description + "IP address"; + } + leaf hardware-address { + type yang:mac-address; + description + "MAC address "; + } + leaf encapsulation-type { + type Arp-gmp-bag-encap; + description + "Encap type"; + } + leaf entry-type { + type Arp-gmp-bag-entry; + description + "Entry type static/alias"; + } + } + + grouping ARP-GMP-VRF-ENTRY { + description + "ARP GMP VRF entry"; + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + leaf vrf-id-number { + type uint32; + description + "VRF ID"; + } + leaf table-id { + type uint32; + description + "IPv4 unicast table ID"; + } + leaf rsi-handle { + type uint32; + description + "RSI registration handle"; + } + leaf rsi-handle-high { + type uint32; + description + "RSI registration handle (top 32-bits)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper.yang new file mode 100644 index 000000000..c1c3eb907 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-arp-oper.yang @@ -0,0 +1,423 @@ +module Cisco-IOS-XR-ipv4-arp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-arp-oper"; + prefix ipv4-arp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-arp-oper-sub3 { + revision-date 2022-06-10; + } + include Cisco-IOS-XR-ipv4-arp-oper-sub2 { + revision-date 2022-06-10; + } + include Cisco-IOS-XR-ipv4-arp-oper-sub1 { + revision-date 2022-06-10; + } + + 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-arp package operational data. + + This module contains definitions + for the following management objects: + arp-gmp: ARP-GMP global operational data + arp: ARP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-10 { + description + "Adding support for displaying counters related to ARP Cache Limit + 2022-06-09 + Adding support for ARP Policer"; + semver:module-version "2.2.0"; + } + revision 2021-08-17 { + description + "Adding support for displaying Last pulse time for Punt and input queue from XIPC"; + semver:module-version "2.1.0"; + } + revision 2021-02-11 { + description + "IOS XR 6.2.3 revision. + 2021-02-04 + IOS XR 6.2.2 revision. + 2020-12-03 + Adding support for displaying client resync time + 2020-04-22 + adding oper schema support, clinet stats update with cnbng."; + semver:module-version "2.0.0"; + } + revision 2019-12-11 { + description + "adding oper schema support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-11-21 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container arp-gmp { + config false; + description + "ARP-GMP global operational data"; + container vrf-infos { + description + "Table of VRF related ARP-GMP operational data"; + list vrf-info { + key "vrf-name"; + description + "VRF related ARP-GMP operational data"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name for the default VRF use 'default'"; + } + uses ARP-GMP-VRF-ENTRY; + } + } + container vrfs { + description + "Table of per VRF ARP-GMP operational data"; + list vrf { + key "vrf-name"; + description + "Per VRF ARP-GMP operational data"; + container configured-ip-addresses { + description + "Table of ARP-GMP configured IP addresses + information"; + list configured-ip-address { + key "address"; + description + "ARP-GMP configured IP address information"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Configured ARP-GMP IP"; + } + uses ARP-GMP-CONFIG-ENTRY; + } + } + container routes { + description + "Table of ARP GMP route information"; + list route { + description + "ARP GMP route information"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Host address"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "Subnet mask"; + } + uses ARP-GMP-ROUTE-ENTRY; + } + } + container interface-configured-ip-addresses { + description + "Table of ARP GMP interface and associated + configured IP data"; + list interface-configured-ip-address { + description + "ARP GMP interface and associated configured + IP data"; + leaf interface-name { + type xr:Interface-name; + description + "Source Interface"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Configured ARP-GMP IP"; + } + uses ARP-GMP-INTF-ENTRY; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name for the default VRF use 'default'"; + } + } + } + } + container arp { + config false; + description + "ARP operational data"; + container nodes { + description + "Table of per-node ARP operational data"; + list node { + key "node-name"; + description + "Per-node ARP operational data"; + container resolution-history-dynamic { + description + "Per node dynamically-resolved ARP resolution + history data"; + uses ARP-RESHIST; + } + container idb-interface-names { + description + "ARP interface database"; + list idb-interface-name { + key "interface-name"; + description + "IDB for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ARP-IDB-INFO; + } + } + container arp-status-info { + description + "Per node ARP status information"; + uses ARP-STATUS-INFO; + } + container adjacency-history-interface-names { + description + "Per node adjacency history data for an + interface"; + list adjacency-history-interface-name { + key "interface-name"; + description + "Per interface adjacency history data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ARP-AIBHIST; + } + } + container traffic-vrfs { + description + "ARP Traffic information per VRF"; + list traffic-vrf { + key "vrf-name"; + description + "Per VRF traffic data"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF"; + } + uses IP-ARP-STATISTICS; + } + } + container client-ids { + description + "Stats for client registration/unregistration + and entry count"; + list client-id { + key "client-id"; + description + "Per client stats"; + leaf client-id { + type uint32 { + range "0..4294967295"; + } + description + "Client ID"; + } + uses ARP-CLIENT-STAT-INFO; + } + } + container traffic-node { + description + "Per node ARP Traffic data"; + uses IP-ARP-STATISTICS; + } + container direct-attached-gateway-redundancy-interface-and-addresses { + description + "ARP DAGR info"; + list direct-attached-gateway-redundancy-interface-and-address { + key "interface-name address"; + description + "DAGR info for the given interface and address"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IP Address"; + } + uses DAGR-GROUP-INFO; + } + } + container resolution-history-client { + description + "Per node client-installed ARP resolution + history data"; + uses ARP-RESHIST; + } + container packet-history-interface-names { + description + "Per node packet history data for an interface"; + list packet-history-interface-name { + key "interface-name"; + description + "Per interface packet history data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ARP-PAKHIST; + } + } + container packet-history-all { + description + "Per node packet history data"; + uses ARP-PAKHIST; + } + container arp-red-sync-gids { + description + "ARP sync redundancy entry data"; + list arp-red-sync-gid { + key "group-id"; + description + "ARP sync redundancy entry data"; + leaf group-id { + type uint32 { + range "0..4294967295"; + } + description + "group ID"; + } + uses ARP-SYNC-ENTRY; + } + } + container arp-stats { + description + "Per node ARP statistics"; + uses IP-ARP-STATISTICS; + } + container adjacency-history-all { + description + "Per node adjacency history data"; + uses ARP-AIBHIST; + } + container thread-queue-statistics { + description + "Per node ARP Thread Queue Statistics"; + uses IP-ARP-THREAD-QUEUE-STATS; + } + container idb-events-interface-names { + description + "ARP interface database events"; + list idb-events-interface-name { + key "interface-name"; + description + "IDB events for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses EVT-HIST-INFO; + } + } + container entries { + description + "Table of ARP entries"; + list entry { + key "address interface-name"; + description + "ARP entry"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IP Address of ARP entry"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses IP-ARP-TABLE-ENTRY; + } + } + container traffic-interfaces { + description + "ARP Traffic information per interface"; + list traffic-interface { + key "interface-name"; + description + "Per interface traffic data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses IP-ARP-STATISTICS; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-datatypes.yang new file mode 100644 index 000000000..636bfc705 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-datatypes.yang @@ -0,0 +1,54 @@ +module Cisco-IOS-XR-ipv4-autorp-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-autorp-datatypes"; + prefix ipv4-autorp-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Auto-rp-protocol-mode { + type enumeration { + enum "sparse" { + value 0; + description + "Sparse Mode"; + } + enum "bidirectional" { + value 1; + description + "Bidirectional Mode"; + } + } + description + "Auto rp protocol mode"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub1.yang new file mode 100644 index 000000000..22a7ff59a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub1.yang @@ -0,0 +1,200 @@ +submodule Cisco-IOS-XR-ipv4-autorp-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-autorp-oper { + prefix Cisco-IOS-XR-ipv4-autorp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-autorp-oper-sub2 { + revision-date 2022-08-25; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-autorp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-25 { + description + "backward compatible addition in autorp_crp_bag"; + semver:module-version "1.2.0"; + } + revision 2019-08-27 { + description + "Providing AutoRP information"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping AUTORP-MAP-SUMMARY-BAG { + description + "Auto-RP Mapping Agent summary"; + leaf is-maximum-disabled { + type boolean; + description + "Is maximum enforcement disabled ?"; + } + leaf cache-limit { + type uint32; + description + "Maximum group to RP mapping entries allowed"; + } + leaf cache-count { + type uint32; + description + "Number of group to RP mapping entries in the + cache"; + } + } + + grouping AUTORP-MAP-BAG-EVENT-HISTORY { + description + "AUTORP MAP BAG EVENT HISTORY"; + leaf event-str { + type string { + length "0..70"; + } + description + "event str"; + } + leaf event-time { + type string { + length "0..40"; + } + description + "event time"; + } + } + + grouping AUTORP-MAP-RANGE-BAG { + description + "MRIB multicast-routing entry-interface"; + leaf prefix { + type inet:ipv4-address; + description + "Prefix of the range"; + } + leaf prefix-length { + type uint8; + description + "Prefix length of the range"; + } + leaf protocol-mode { + type Autorp-protocol-mode; + description + "Protocol Mode"; + } + leaf is-advertised { + type boolean; + description + "Is this entry advertised ?"; + } + leaf create-type { + type uint8; + description + "Source of the entry"; + } + leaf check-point-object-id { + type uint32; + description + "Checkpoint object id"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + } + + grouping AUTORP-MAP-RP-BAG { + description + "Auto-RP Mapping Agent entry"; + leaf rp-address-xr { + type inet:ipv4-address; + description + "Candidate-RP address"; + } + leaf expiry-time { + type uint64; + units "second"; + description + "Time for expiration in seconds"; + } + leaf pim-version { + type uint8; + description + "PIM version of the CRP"; + } + list range { + description + "Array of ranges"; + uses AUTORP-MAP-RANGE-BAG; + } + list map-adv-recv-event { + max-elements "8"; + description + "MAP Agent Adv Recv Event History"; + uses AUTORP-MAP-BAG-EVENT-HISTORY; + } + list map-rp-elect-recv-event { + max-elements "8"; + description + "MAP Agent RP Election Event History"; + uses AUTORP-MAP-BAG-EVENT-HISTORY; + } + } + + grouping AUTORP-MAP-TRAFFIC-BAG { + description + "Auto-RP Mapping Agent Traffic Counters"; + leaf active-sent-packets { + type uint32; + description + "Number of packets sent in active role"; + } + leaf standby-sent-packets { + type uint32; + description + "Number of packets dropped in send path in + standby role"; + } + leaf active-received-packets { + type uint32; + description + "Number of packets received in active role"; + } + leaf standby-received-packets { + type uint32; + description + "Number of packets dropped in receive path in + standby role"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub2.yang new file mode 100644 index 000000000..00c44be55 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper-sub2.yang @@ -0,0 +1,139 @@ +submodule Cisco-IOS-XR-ipv4-autorp-oper-sub2 { + belongs-to Cisco-IOS-XR-ipv4-autorp-oper { + prefix Cisco-IOS-XR-ipv4-autorp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-autorp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-25 { + description + "backward compatible addition in autorp_crp_bag"; + semver:module-version "1.2.0"; + } + revision 2019-08-27 { + description + "Providing AutoRP information"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Autorp-protocol-mode { + type enumeration { + enum "sparse" { + value 0; + description + "sparse"; + } + enum "bidirectional" { + value 1; + description + "bidirectional"; + } + } + description + "Autorp protocol mode"; + } + + grouping AUTORP-CRP-BAG-EVENT-HISTORY { + description + "AUTORP CRP BAG EVENT HISTORY"; + leaf event-str { + type string { + length "0..70"; + } + description + "event str"; + } + leaf event-time { + type string { + length "0..40"; + } + description + "event time"; + } + } + + grouping AUTORP-CRP-BAG { + description + "Auto-RP Candidate RP entry"; + leaf access-list-name { + type string; + description + "ACL Name"; + } + leaf candidate-rp-address { + type inet:ipv4-address; + description + "Candidate RP IP Address"; + } + leaf ttl { + type int32; + description + "TTL"; + } + leaf announce-period { + type int32; + description + "Announce Period"; + } + leaf protocol-mode-xr { + type Autorp-protocol-mode; + description + "Protocol Mode"; + } + list crp-send-event { + max-elements "8"; + description + "Candidate RP Event History"; + uses AUTORP-CRP-BAG-EVENT-HISTORY; + } + } + + grouping AUTORP-CRP-TRAFFIC-BAG { + description + "Auto-RP Candidate Traffic Counters"; + leaf active-sent-packets { + type uint32; + description + "Number of packets sent in active role"; + } + leaf standby-sent-packets { + type uint32; + description + "Number of packets dropped in send path in + standby role"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper.yang new file mode 100644 index 000000000..3058f04e7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-autorp-oper.yang @@ -0,0 +1,152 @@ +module Cisco-IOS-XR-ipv4-autorp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-autorp-oper"; + prefix ipv4-autorp-oper; + + 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; + } + include Cisco-IOS-XR-ipv4-autorp-oper-sub2 { + revision-date 2022-08-25; + } + include Cisco-IOS-XR-ipv4-autorp-oper-sub1 { + revision-date 2022-08-25; + } + + 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-autorp package operational data. + + This module contains definitions + for the following management objects: + auto-rp: AutoRP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-25 { + description + "backward compatible addition in autorp_crp_bag"; + semver:module-version "1.2.0"; + } + revision 2019-08-27 { + description + "Providing AutoRP information"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MAPPING-AGENT { + description + "Common node of active, standby"; + container mapping-agent { + description + "AutoRP Mapping Agent Table"; + container traffic { + description + "AutoRP Mapping Agent Traffic Counters"; + uses AUTORP-MAP-TRAFFIC-BAG; + } + container rp-addresses { + description + "AutoRP Mapping Agent Table Entries"; + list rp-address { + key "rp-address"; + description + "AutoRP Mapping Agent Entry"; + leaf rp-address { + type inet:ipv4-address-no-zone; + description + "RP Address"; + } + uses AUTORP-MAP-RP-BAG; + } + } + container summary { + description + "AutoRP Mapping Agent Summary Information"; + uses AUTORP-MAP-SUMMARY-BAG; + } + } + } + + grouping CANDIDATE-RP { + description + "Common node of active, standby"; + container candidate-rp { + description + "AutoRP Candidate RP"; + container traffic { + description + "AutoRP Candidate Traffic Counters"; + uses AUTORP-CRP-TRAFFIC-BAG; + } + container rps { + description + "AutoRP Candidate RP Table"; + list rp { + key "interface-name protocol-mode"; + description + "AutoRP Candidate RP Entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf protocol-mode { + type dt1:Auto-rp-protocol-mode; + description + "Protocol Mode"; + } + uses AUTORP-CRP-BAG; + } + } + } + } + + container auto-rp { + config false; + description + "AutoRP operational data"; + container standby { + description + "Standby Process"; + uses CANDIDATE-RP; + uses MAPPING-AGENT; + } + container active { + description + "Active Process"; + uses CANDIDATE-RP; + uses MAPPING-AGENT; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-act.yang new file mode 100644 index 000000000..cf304fd49 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-act.yang @@ -0,0 +1,15245 @@ +module Cisco-IOS-XR-ipv4-bgp-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-act"; + prefix bgp-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + 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 action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-15 { + description + "Added slow peer clear commands"; + semver:module-version "1.2.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-10-12 { + description + "IOS XR 6.2.1 revision."; + } + + typedef update-group-id { + type string { + pattern "(([0-9]|1[0-5])\\.\\d+)"; + } + description + "Update group id"; + } + + typedef refresh-sub-group-id { + type string { + pattern "(([0-9]|1[0-5])\\.\\d+)(:\\d+)"; + } + description + "Refresh sub-group id"; + } + + typedef ip-netmask { + type inet:ip-address; + description + "IP netmask"; + } + + typedef ipv4-netmask { + type inet:ipv4-address; + description + "IPv4 netmask"; + } + + typedef ipv6-netmask { + type inet:ipv6-address; + description + "IPv6 netmask"; + } + + typedef two-byte { + type uint16 { + range "1..65535"; + } + description + "Two byte"; + } + + typedef as-number { + type union { + type two-byte-as; + type four-byte-as; + } + description + "AS number"; + } + + typedef two-byte-as { + type uint16 { + range "1..65535"; + } + description + "Two byte AS"; + } + + typedef four-byte-as { + type union { + type as-four-byte; + type as-plain; + } + description + "Four byte AS"; + } + + typedef as-four-byte { + type string { + pattern "(\\d+\\.\\d+)"; + } + description + "AS four byte"; + } + + typedef as-plain { + type uint32 { + range "65536..4294967295"; + } + description + "AS plain"; + } + + typedef rd { + type union { + type rd-four-byte-as; + type rd-two-byte-as; + type rd-plain-as; + type rd-ipv4-address; + } + description + "Route distinguisher"; + } + + typedef rd-four-byte-as { + type string { + pattern "(\\d+\\.\\d+:\\d+)"; + } + description + "Route distinguisher four byte AS"; + } + + typedef rd-two-byte-as { + type string { + pattern "(\\d+:\\d+)"; + } + description + "Route distinguisher two byte AS"; + } + + typedef rd-plain-as { + type string { + pattern "(\\d+:\\d+)"; + } + description + "Route distinguisher plain AS"; + } + + typedef rd-ipv4-address { + type string { + pattern "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(:\\d+)"; + } + description + "Route distinguisher IPv4 address"; + } + + typedef afi-safi-type { + type enumeration { + enum "all-all" { + description + "Both unicast and multicast address family modifiers + of ipv4 and ipv6 address family"; + } + enum "all-evpn" { + description + "All EVPN"; + } + enum "all-flowspec" { + description + "All flowspec"; + } + enum "all-labeled-unicast" { + description + "All labeled unicast"; + } + enum "all-mdt" { + description + "All MDT"; + } + enum "all-mspw" { + description + "All MSPW"; + } + enum "all-multicast" { + description + "All multicast"; + } + enum "all-mvpn" { + description + "All MVPN"; + } + enum "all-rt-filter" { + description + "All RT filter"; + } + enum "all-sr-policy" { + description + "All SR policy"; + } + enum "all-tunnel" { + description + "All tunnel"; + } + enum "all-unicast" { + description + "All unicat"; + } + enum "all-vpls" { + description + "All VPLS"; + } + enum "all-vpws" { + description + "All VPWS"; + } + enum "ipv4-all" { + description + "Both unicast and multicast address family modifiers"; + } + enum "ipv4-flowspec" { + description + "IPv4 flowspec"; + } + enum "ipv4-labeled-unicast" { + description + "IPv4 labeled unicast"; + } + enum "ipv4-mdt" { + description + "IPv4 MDT"; + } + enum "ipv4-multicast" { + description + "IPv4 multicast"; + } + enum "ipv4-mvpn" { + description + "IPv4 MVPN"; + } + enum "ipv4-rt-filter" { + description + "IPv4 RT filter"; + } + enum "ipv4-sr-policy" { + description + "IPv4 SR policy"; + } + enum "ipv4-tunnel" { + description + "IPv4 tunnel"; + } + enum "ipv4-unicast" { + description + "IPv4 unicast"; + } + enum "ipv6-all" { + description + "Both unicast and multicast address family modifiers"; + } + enum "ipv6-flowspec" { + description + "IPv6 flowspec"; + } + enum "ipv6-labeled-unicast" { + description + "IPv6 labeled unicast"; + } + enum "ipv6-multicast" { + description + "IPv6 multicast"; + } + enum "ipv6-mvpn" { + description + "IPv6 MVPN"; + } + enum "ipv6-sr-policy" { + description + "IPv6 SR policy"; + } + enum "ipv6-unicast" { + description + "IPv6 unicast"; + } + enum "l2vpn-evpn" { + description + "l2vpn evpn"; + } + enum "l2vpn-mspw" { + description + "l2vpn mspw"; + } + enum "l2vpn-vpls" { + description + "l2vpn vpls"; + } + enum "l2vpn-vpws" { + description + "l2vpn vpws"; + } + enum "link-state" { + description + "link state"; + } + enum "vpnv4-flowspec" { + description + "vpnv4 flowspec"; + } + enum "vpnv4-multicast" { + description + "vpnv4 multicast"; + } + enum "vpnv4-unicast" { + description + "vpnv4 unicast"; + } + enum "vpnv6-flowspec" { + description + "vpnv6 flowspec"; + } + enum "vpnv6-multicast" { + description + "vpnv6 multicast"; + } + enum "vpnv6-unicast" { + description + "vpnv6 unicast"; + } + } + description + "afi safi type"; + } + + typedef afi { + type enumeration { + enum "all" { + description + "Both ipv4 and ipv6 address families"; + } + enum "ipv4" { + description + "afi ipv4"; + } + enum "ipv6" { + description + "afi ipv6"; + } + enum "l2vpn" { + description + "afi l2vpn"; + } + enum "link-state" { + description + "afi link state"; + } + enum "vpnv4" { + description + "afi vpnv4"; + } + enum "vpnv6" { + description + "afi vpnv6"; + } + } + description + "afi"; + } + + typedef safi { + type union { + type ipv4-safi; + type ipv6-safi; + type l2vpn-safi; + type link-state-safi; + type vpnv4-safi; + type vpnv6-safi; + } + description + "safi"; + } + + typedef ipv4-safi { + type enumeration { + enum "all" { + description + "Both unicast and multicast address family modifiers"; + } + enum "flowspec" { + description + "ipv4-safi flowspec"; + } + enum "labeled-unicast" { + description + "ipv4-safi labeled unicast"; + } + enum "mdt" { + description + "ipv4-safi mdt"; + } + enum "multicast" { + description + "ipv4-safi multicast"; + } + enum "mvpn" { + description + "ipv4-safi mvpn"; + } + enum "rt-filter" { + description + "ipv4-safi rt filter"; + } + enum "sr-policy" { + description + "ipv4-safi sr policy"; + } + enum "tunnel" { + description + "ipv4-safi tunnel"; + } + enum "unicast" { + description + "ipv4-safi unicast"; + } + } + description + "ipv4 safi"; + } + + typedef ipv6-safi { + type enumeration { + enum "all" { + description + "Both unicast and multicast address family modifiers"; + } + enum "flowspec" { + description + "ipv6-safi flowspec"; + } + enum "labeled-unicast" { + description + "ipv6-safi labeled unicast"; + } + enum "multicast" { + description + "ipv6-safi multicast"; + } + enum "mvpn" { + description + "ipv6-safi mvpn"; + } + enum "sr-policy" { + description + "ipv6-safi sr policy"; + } + enum "unicast" { + description + "ipv6-safi unicast"; + } + } + description + "ipv6 safi"; + } + + typedef l2vpn-safi { + type enumeration { + enum "evpn" { + description + "l2vpn safi evpn"; + } + enum "mspw" { + description + "l2vpn safi mspw"; + } + enum "vpls" { + description + "l2vpn safi vpls"; + } + enum "vpws" { + description + "l2vpn safi vpws"; + } + } + description + "l2vpn safi"; + } + + typedef link-state-safi { + type enumeration { + enum "link-state" { + description + "link state"; + } + } + description + "link state safi"; + } + + typedef vpnv4-safi { + type enumeration { + enum "flowspec" { + description + "vpnv4 safi flowspec"; + } + enum "multicast" { + description + "vpnv4 safi multicast"; + } + enum "unicast" { + description + "vpnv4 safi unicast"; + } + } + description + "vpnv4 safi"; + } + + typedef vpnv6-safi { + type enumeration { + enum "flowspec" { + description + "vpnv6 safi flowspec"; + } + enum "multicast" { + description + "vpnv6 safi multicast"; + } + enum "unicast" { + description + "vpnv6 safi unicast"; + } + } + description + "vpnv6 safi"; + } + + typedef instance-name { + type union { + type enumeration { + enum "all" { + description + "instance name all"; + } + } + type string; + } + description + "instance name"; + } + + typedef vrf-name { + type union { + type enumeration { + enum "all" { + description + "vrf name all"; + } + } + type string; + } + description + "vrf name"; + } + + rpc clear-bgp-all-graceful { + description + "Clear all peers and all routes from the BGP table. + Clear with a hard reset and a graceful restart. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp * graceful"; + } + rpc clear-bgp-all { + description + "Clear all peers and all routes from the BGP table.\n"; + csc:xr-task "bgp"; + csc:cli-command "clear bgp *"; + } + rpc clear-bgp-ip-addr-graceful { + description + "BGP neighbor address to clear. + Clear with a hard reset and a graceful restart. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp graceful"; + } + rpc clear-bgp-ip-addr-long-lived-stale { + description + "BGP neighbor address to clear. + Clear long-lived-stale routes. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp long-lived-stale"; + } + rpc clear-bgp-ip-addr { + description + "BGP neighbor address to clear.\n"; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp "; + } + rpc clear-bgp-afi-safi-all-soft-in-prefix-filter { + description + "Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp * soft in prefix-filter"; + } + rpc clear-bgp-afi-safi-all-soft-in { + description + "Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp * soft in"; + } + rpc clear-bgp-afi-safi-all-soft-out { + description + "Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp * soft out"; + } + rpc clear-bgp-afi-safi-all-soft { + description + "Clear all peers and all routes from the BGP table. + Soft reconfig. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp * soft"; + } + rpc clear-bgp-afi-safi-ip-addr-long-lived-stale { + description + "Clear long-lived-stale routes.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp long-lived-stale"; + } + rpc clear-bgp-afi-safi-ip-addr-soft-in-prefix-filter { + description + "Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp soft in prefix-filter"; + } + rpc clear-bgp-afi-safi-ip-addr-soft-in { + description + "Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp soft in"; + } + rpc clear-bgp-afi-safi-ip-addr-soft-out { + description + "Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp soft out"; + } + rpc clear-bgp-afi-safi-ip-addr-soft { + description + "Soft reconfig.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp soft"; + } + rpc clear-bgp-afi-safi-as-soft-in-prefix-filter { + description + "Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp as soft in prefix-filter"; + } + rpc clear-bgp-afi-safi-as-soft-in { + description + "Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp as soft in"; + } + rpc clear-bgp-afi-safi-as-soft-out { + description + "Clear peers in a specific AS. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp as soft out"; + } + rpc clear-bgp-afi-safi-as-soft { + description + "Clear peers in a specific AS. + Soft reconfig. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp as soft"; + } + rpc clear-bgp-afi-safi-dampening-ip-prefix { + description + "Clear route flap dampening information.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp dampening "; + } + rpc clear-bgp-afi-safi-dampening { + description + "Clear route flap dampening information.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp dampening"; + } + rpc clear-bgp-afi-safi-external-soft-in-prefix-filter { + description + "Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp external soft in prefix-filter"; + } + rpc clear-bgp-afi-safi-external-soft-in { + description + "Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp external soft in"; + } + rpc clear-bgp-afi-safi-external-soft-out { + description + "Clear all external peers. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp external soft out"; + } + rpc clear-bgp-afi-safi-external-soft { + description + "Clear all external peers. + Soft reconfig. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp external soft"; + } + rpc clear-bgp-afi-safi-flap-statistics-ip-addr-ipv4-mask { + description + "Clear flap statistics.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics "; + } + rpc clear-bgp-afi-safi-flap-statistics-ip-addr { + description + "Clear flap statistics.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics "; + } + rpc clear-bgp-afi-safi-flap-statistics-ip-prefix { + description + "Clear flap statistics.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics "; + } + rpc clear-bgp-afi-safi-flap-statistics-regexp { + description + "Clear flap statistics. + Clear flap statistics for routes matching the regular expression. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf regexp-pattern { + type string; + mandatory true; + description + "A regular expression to match the BGP AS paths. Use 'ctrl-v ?' to enter '?'"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics regexp "; + } + rpc clear-bgp-afi-safi-flap-statistics-route-policy { + description + "Clear flap statistics. + Clear flap statistics for routes matching the route policy. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf route-policy-name { + type string; + mandatory true; + description + "Route Policy name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics route-policy "; + } + rpc clear-bgp-afi-safi-flap-statistics { + description + "Clear flap statistics.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics"; + } + rpc clear-bgp-afi-safi-nexthop-performance-statistics { + description + "Clear nexthop. + Performance statistics information related to processing. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp nexthop performance-statistics"; + } + rpc clear-bgp-afi-safi-nexthop-registration-ip-addr { + description + "Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp nexthop registration "; + } + rpc clear-bgp-afi-safi-self-originated { + description + "Clear redistributed, network and aggregate routes originated here.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp self-originated"; + } + rpc clear-bgp-afi-safi-shutdown { + description + "Clear all peers which were shut down due to low memory.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp shutdown"; + } + rpc clear-bgp-slow-peer { + description + "Clear slow-peer status for all neighbors + in default vrf and ipv4 unicast address family. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer"; + } + rpc clear-bgp-slow-peer-ip-addr { + description + "Clear slow-peer status for neighbor specified in + default vrf for ipv4 unicast address family. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer "; + } + rpc clear-bgp-slow-peer-afi-safi { + description + "Clear slow-peer status of all neighbors in the default + vrf belonging to the specified address family. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer "; + } + rpc clear-bgp-slow-peer-afi-safi-ip-addr { + description + "Clear slow-peer status of peer belonging to a particular + address family and neighbor in default vrf. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer "; + } + rpc clear-bgp-slow-peer-vrf { + description + "Clear slow-peer status of neighbors belonging to the + specified vrf and address family ipv4 unicast under + that vrf. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer vrf "; + } + rpc clear-bgp-slow-peer-vrf-ip-addr { + description + "Clear slow-peer status of specified neighbor belonging to the + specified vrf and address family ipv4 unicast under that vrf. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer vrf "; + } + rpc clear-bgp-slow-peer-vrf-afi-safi { + description + "Clear slow-peer status of all neighbors belonging to the + specified vrf and specified address family under that vrf. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer vrf "; + } + rpc clear-bgp-slow-peer-vrf-afi-safi-ip-addr { + description + "Clear slow-peer status of specified neighbor belonging to the + specified vrf and specified address family under that vrf. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp slow-peer vrf "; + } + rpc clear-bgp-instance-slow-peer { + description + "Clear slow-peer status for all neighbors + in default vrf and ipv4 unicast address family. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer"; + } + rpc clear-bgp-instance-slow-peer-ip-addr { + description + "Clear slow-peer status for neighbor specified in + default vrf for ipv4 unicast address family. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer "; + } + rpc clear-bgp-instance-slow-peer-afi-safi { + description + "Clear slow-peer status of all neighbors in the default + vrf belonging to the specified address family. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer "; + } + rpc clear-bgp-instance-slow-peer-afi-safi-ip-addr { + description + "Clear slow-peer status of peer belonging to a particular + address family and neighbor in default vrf. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer "; + } + rpc clear-bgp-instance-slow-peer-vrf { + description + "Clear slow-peer status of neighbors belonging to the + specified vrf and address family ipv4 unicast under + that vrf. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer vrf "; + } + rpc clear-bgp-instance-slow-peer-vrf-ip-addr { + description + "Clear slow-peer status of specified neighbor belonging to the + specified vrf and address family ipv4 unicast under that vrf. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer vrf "; + } + rpc clear-bgp-instance-slow-peer-vrf-afi-safi { + description + "Clear slow-peer status of all neighbors belonging to the + specified vrf and specified address family under that vrf. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer vrf "; + } + rpc clear-bgp-instance-slow-peer-vrf-afi-safi-ip-addr { + description + "Clear slow-peer status of specified neighbor belonging to the + specified vrf and specified address family under that vrf. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance slow-peer vrf "; + } + rpc clear-bgp-afi-safi-update-outq-address-family-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq address-family update-parent"; + } + rpc clear-bgp-afi-safi-update-outq-address-family { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq address-family"; + } + rpc clear-bgp-afi-safi-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor refresh update-parent"; + } + rpc clear-bgp-afi-safi-update-outq-neighbor-ip-addr-refresh { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor refresh"; + } + rpc clear-bgp-afi-safi-update-outq-neighbor-ip-addr-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor update-parent"; + } + rpc clear-bgp-afi-safi-update-outq-neighbor-ip-addr { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor "; + } + rpc clear-bgp-afi-safi-update-outq-update-group-sub-group-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group update-parent"; + } + rpc clear-bgp-afi-safi-update-outq-update-group-sub-group { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group "; + } + rpc clear-bgp-afi-safi-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group update-parent"; + } + rpc clear-bgp-afi-safi-update-outq-update-group-sub-group-refresh-sub-group { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group "; + } + rpc clear-bgp-afi-safi-update-outq-update-group-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group update-parent"; + } + rpc clear-bgp-afi-safi-update-outq-update-group { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group "; + } + rpc clear-bgp-as-graceful { + description + "Clear peers in a specific AS. + Clear with a hard reset and a graceful restart. + "; + input { + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp as graceful"; + } + rpc clear-bgp-as { + description + "Clear peers in a specific AS.\n"; + input { + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp as "; + } + rpc clear-bgp-bestpath-ip-addr-ip-netmask { + description + "re-run BGP bestpath selection.\n"; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-ip-addr { + description + "re-run BGP bestpath selection.\n"; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-ip-prefix { + description + "re-run BGP bestpath selection.\n"; + input { + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ip-addr-ip-netmask { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ip-addr { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ip-prefix { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-bridge-domain-ip-addr-ip-netmask { + description + "re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath bridge-domain "; + } + rpc clear-bgp-bestpath-afi-safi-bridge-domain-ip-addr { + description + "re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath bridge-domain "; + } + rpc clear-bgp-bestpath-afi-safi-bridge-domain-ip-prefix { + description + "re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath bridge-domain "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ip-addr-ip-netmask { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ip-addr { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ip-prefix { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-ipv4-addr-ipv4-mask { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ipv4-addr { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ipv4-prefix { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ipv4-addr { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-vrf-ipv4-addr { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-afi-safi-network { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-rd-network { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-vrf-network { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-afi-safi-rt-constraint-network { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rt-constraint-network { + type string; + mandatory true; + description + "RT-Constraint network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ipv4-tunnel-network { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-tunnel-network { + type string; + mandatory true; + description + "IPv4 Tunnel network :"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ipv6-addr-ipv6-netmask { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ipv6-addr { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-ipv6-prefix { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-rd { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-vrf { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-afi-safi { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-sr-policy-prefix { + description + "re-run BGP bestpath selection.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf sr-policy-prefix { + type string; + mandatory true; + description + "SR Policy prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath "; + } + rpc clear-bgp-bestpath-afi-safi-bridge-domain-ipv4-prefix { + description + "re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath bridge-domain "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ipv4-prefix { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-mp2mp-ipv4-prefix { + description + "re-run BGP bestpath selection. + Display routes for a specified Xconnect group:MP2MP. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf mp2mp { + type string; + mandatory true; + description + "Xconnect Group:mp2mp"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN VPWS Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath mp2mp "; + } + rpc clear-bgp-bestpath-afi-safi-vrf-ipv4-prefix { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "VPN Fspec Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ipv4-addr-ipv4-mask { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-vrf-ipv4-addr-ipv4-mask { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ipv6-addr-ipv6-netmask { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ipv6-addr { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-rd-ipv6-prefix { + description + "re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath rd "; + } + rpc clear-bgp-bestpath-afi-safi-vrf-ipv6-addr-ipv6-netmask { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-afi-safi-vrf-ipv6-addr { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-afi-safi-vrf-ipv6-prefix { + description + "re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-ip-addr-ip-netmask { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-ip-addr { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-ip-prefix { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-ipv4-prefix { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "Fspec IPv4 Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-ipv4-addr-ipv4-mask { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-ipv4-addr { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-network { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-rd-network { + description + "re-run BGP bestpath selection. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf rd "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-vrf-network { + description + "re-run BGP bestpath selection. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-ipv6-addr-ipv6-netmask { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-ipv6-addr { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-ipv6-prefix { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-rd { + description + "re-run BGP bestpath selection. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf rd "; + } + rpc clear-bgp-bestpath-vrf-afi-safi-vrf { + description + "re-run BGP bestpath selection. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf vrf "; + } + rpc clear-bgp-bestpath-vrf-afi-safi { + description + "re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp bestpath vrf "; + } + rpc clear-bgp-external-graceful { + description + "Clear all external peers. + Clear with a hard reset and a graceful restart. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp external graceful"; + } + rpc clear-bgp-external { + description + "Clear all external peers.\n"; + csc:xr-task "bgp"; + csc:cli-command "clear bgp external"; + } + rpc clear-bgp-instance-all-graceful { + description + "Choose a particular BGP instance. + Clear all peers and all routes from the BGP table. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance * graceful"; + } + rpc clear-bgp-instance-all { + description + "Choose a particular BGP instance. + Clear all peers and all routes from the BGP table. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance *"; + } + rpc clear-bgp-instance-ip-addr-graceful { + description + "Choose a particular BGP instance. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance graceful"; + } + rpc clear-bgp-instance-ip-addr-long-lived-stale { + description + "Choose a particular BGP instance. + Clear long-lived-stale routes. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance long-lived-stale"; + } + rpc clear-bgp-instance-ip-addr { + description + "Choose a particular BGP instance.\n"; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance "; + } + rpc clear-bgp-instance-afi-safi-all-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance * soft in prefix-filter"; + } + rpc clear-bgp-instance-afi-safi-all-soft-in { + description + "Choose a particular BGP instance. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance * soft in"; + } + rpc clear-bgp-instance-afi-safi-all-soft-out { + description + "Choose a particular BGP instance. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance * soft out"; + } + rpc clear-bgp-instance-afi-safi-all-soft { + description + "Choose a particular BGP instance. + Clear all peers and all routes from the BGP table. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance * soft"; + } + rpc clear-bgp-instance-afi-safi-ip-addr-long-lived-stale { + description + "Choose a particular BGP instance. + Clear long-lived-stale routes. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance long-lived-stale"; + } + rpc clear-bgp-instance-afi-safi-ip-addr-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance soft in prefix-filter"; + } + rpc clear-bgp-instance-afi-safi-ip-addr-soft-in { + description + "Choose a particular BGP instance. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance soft in"; + } + rpc clear-bgp-instance-afi-safi-ip-addr-soft-out { + description + "Choose a particular BGP instance. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance soft out"; + } + rpc clear-bgp-instance-afi-safi-ip-addr-soft { + description + "Choose a particular BGP instance. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance soft"; + } + rpc clear-bgp-instance-afi-safi-as-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance as soft in prefix-filter"; + } + rpc clear-bgp-instance-afi-safi-as-soft-in { + description + "Choose a particular BGP instance. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance as soft in"; + } + rpc clear-bgp-instance-afi-safi-as-soft-out { + description + "Choose a particular BGP instance. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance as soft out"; + } + rpc clear-bgp-instance-afi-safi-as-soft { + description + "Choose a particular BGP instance. + Clear peers in a specific AS. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance as soft"; + } + rpc clear-bgp-instance-afi-safi-dampening-ip-prefix { + description + "Choose a particular BGP instance. + Clear route flap dampening information. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance dampening "; + } + rpc clear-bgp-instance-afi-safi-dampening { + description + "Choose a particular BGP instance. + Clear route flap dampening information. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance dampening"; + } + rpc clear-bgp-instance-afi-safi-external-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance external soft in prefix-filter"; + } + rpc clear-bgp-instance-afi-safi-external-soft-in { + description + "Choose a particular BGP instance. + Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance external soft in"; + } + rpc clear-bgp-instance-afi-safi-external-soft-out { + description + "Choose a particular BGP instance. + Clear all external peers. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance external soft out"; + } + rpc clear-bgp-instance-afi-safi-external-soft { + description + "Choose a particular BGP instance. + Clear all external peers. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance external soft"; + } + rpc clear-bgp-instance-afi-safi-flap-statistics-ip-addr-ipv4-mask { + description + "Choose a particular BGP instance. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics "; + } + rpc clear-bgp-instance-afi-safi-flap-statistics-ip-addr { + description + "Choose a particular BGP instance. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics "; + } + rpc clear-bgp-instance-afi-safi-flap-statistics-ip-prefix { + description + "Choose a particular BGP instance. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics "; + } + rpc clear-bgp-instance-afi-safi-flap-statistics-regexp { + description + "Choose a particular BGP instance. + Clear flap statistics. + Clear flap statistics for routes matching the regular expression. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf regexp-pattern { + type string; + mandatory true; + description + "A regular expression to match the BGP AS paths. Use 'ctrl-v ?' to enter '?'"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics regexp "; + } + rpc clear-bgp-instance-afi-safi-flap-statistics-route-policy { + description + "Choose a particular BGP instance. + Clear flap statistics. + Clear flap statistics for routes matching the route policy. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf route-policy-name { + type string; + mandatory true; + description + "Route Policy name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics route-policy "; + } + rpc clear-bgp-instance-afi-safi-flap-statistics { + description + "Choose a particular BGP instance. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics"; + } + rpc clear-bgp-instance-afi-safi-nexthop-performance-statistics { + description + "Choose a particular BGP instance. + Clear nexthop. + Performance statistics information related to processing. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance nexthop performance-statistics"; + } + rpc clear-bgp-instance-afi-safi-nexthop-registration-ip-addr { + description + "Choose a particular BGP instance. + Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance nexthop registration "; + } + rpc clear-bgp-instance-afi-safi-self-originated { + description + "Choose a particular BGP instance. + Clear redistributed, network and aggregate routes originated here. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance self-originated"; + } + rpc clear-bgp-instance-afi-safi-shutdown { + description + "Choose a particular BGP instance. + Clear all peers which were shut down due to low memory. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance shutdown"; + } + rpc clear-bgp-instance-afi-safi-update-outq-address-family-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq address-family update-parent"; + } + rpc clear-bgp-instance-afi-safi-update-outq-address-family { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq address-family"; + } + rpc clear-bgp-instance-afi-safi-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor refresh update-parent"; + } + rpc clear-bgp-instance-afi-safi-update-outq-neighbor-ip-addr-refresh { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor refresh"; + } + rpc clear-bgp-instance-afi-safi-update-outq-neighbor-ip-addr-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor update-parent"; + } + rpc clear-bgp-instance-afi-safi-update-outq-neighbor-ip-addr { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor "; + } + rpc clear-bgp-instance-afi-safi-update-outq-update-group-sub-group-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-afi-safi-update-outq-update-group-sub-group { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group "; + } + rpc clear-bgp-instance-afi-safi-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-afi-safi-update-outq-update-group-sub-group-refresh-sub-group { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group "; + } + rpc clear-bgp-instance-afi-safi-update-outq-update-group-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group update-parent"; + } + rpc clear-bgp-instance-afi-safi-update-outq-update-group { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group "; + } + rpc clear-bgp-instance-as-graceful { + description + "Choose a particular BGP instance. + Clear peers in a specific AS. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance as graceful"; + } + rpc clear-bgp-instance-as { + description + "Choose a particular BGP instance. + Clear peers in a specific AS. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance as "; + } + rpc clear-bgp-instance-bestpath-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-ip-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-ip-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ip-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ip-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-bridge-domain-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath bridge-domain "; + } + rpc clear-bgp-instance-bestpath-afi-safi-bridge-domain-ip-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath bridge-domain "; + } + rpc clear-bgp-instance-bestpath-afi-safi-bridge-domain-ip-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath bridge-domain "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ip-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ip-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ipv4-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ipv4-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ipv4-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf-ipv4-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-afi-safi-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rt-constraint-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rt-constraint-network { + type string; + mandatory true; + description + "RT-Constraint network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ipv4-tunnel-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-tunnel-network { + type string; + mandatory true; + description + "IPv4 Tunnel network :"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ipv6-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-ipv6-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-afi-safi { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-sr-policy-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf sr-policy-prefix { + type string; + mandatory true; + description + "SR Policy prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath "; + } + rpc clear-bgp-instance-bestpath-afi-safi-bridge-domain-ipv4-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath bridge-domain "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ipv4-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-mp2mp-ipv4-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified Xconnect group:MP2MP. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf mp2mp { + type string; + mandatory true; + description + "Xconnect Group:mp2mp"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN VPWS Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath mp2mp "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf-ipv4-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "VPN Fspec Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ipv6-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-rd-ipv6-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath rd "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf-ipv6-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-afi-safi-vrf-ipv6-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-ip-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-ip-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-ipv4-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "Fspec IPv4 Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-ipv4-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-rd-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf rd "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-vrf-network { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-ipv6-addr { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-ipv6-prefix { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-rd { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf rd "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi-vrf { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf vrf "; + } + rpc clear-bgp-instance-bestpath-vrf-afi-safi { + description + "Choose a particular BGP instance. + re-run BGP bestpath selection. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance bestpath vrf "; + } + rpc clear-bgp-instance-external-graceful { + description + "Choose a particular BGP instance. + Clear all external peers. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance external graceful"; + } + rpc clear-bgp-instance-external { + description + "Choose a particular BGP instance. + Clear all external peers. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance external"; + } + rpc clear-bgp-instance-afi-safi-dampening-ipv4-prefix { + description + "Choose a particular BGP instance. + Clear route flap dampening information. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance dampening "; + } + rpc clear-bgp-instance-afi-safi-flap-statistics-ipv4-prefix { + description + "Choose a particular BGP instance. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics "; + } + rpc clear-bgp-instance-afi-safi-dampening-ipv6-prefix { + description + "Choose a particular BGP instance. + Clear route flap dampening information. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance dampening "; + } + rpc clear-bgp-instance-afi-safi-flap-statistics-ipv6-prefix { + description + "Choose a particular BGP instance. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance flap-statistics "; + } + rpc clear-bgp-instance-nexthop-performance-statistics { + description + "Choose a particular BGP instance. + Clear nexthop. + Performance statistics information related to processing. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance nexthop performance-statistics"; + } + rpc clear-bgp-instance-nexthop-registration-ip-addr { + description + "Choose a particular BGP instance. + Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance nexthop registration "; + } + rpc clear-bgp-instance-peer-drops-all { + description + "Choose a particular BGP instance. + Clear established/dropped counters for a peer. + All Neighbors. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance peer-drops *"; + } + rpc clear-bgp-instance-peer-drops-ip-addr { + description + "Choose a particular BGP instance. + Clear established/dropped counters for a peer. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor IP address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance peer-drops "; + } + rpc clear-bgp-instance-performance-statistics { + description + "Choose a particular BGP instance. + Clear performance statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance performance-statistics"; + } + rpc clear-bgp-instance-rpki-server-all-serial-query { + description + "Choose a particular BGP instance. + RPKI clear command. + clear RPKI cache-server. + clear all RPKI cache-servers. + send serial-queries to all cache-servers (with latest serial numbers). + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance rpki server * serial-query"; + } + rpc clear-bgp-instance-rpki-server-all { + description + "Choose a particular BGP instance. + RPKI clear command. + clear RPKI cache-server. + clear all RPKI cache-servers. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance rpki server *"; + } + rpc clear-bgp-instance-rpki-server-rpki-server { + description + "Choose a particular BGP instance. + RPKI clear command. + clear RPKI cache-server. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf rpki-server { + type string; + mandatory true; + description + "clear a specific RPKI cache-server (hostname or IP address)"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance rpki server "; + } + rpc clear-bgp-instance-rpki-validation-ipv4 { + description + "Choose a particular BGP instance. + RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv4 table. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance rpki validation ipv4"; + } + rpc clear-bgp-instance-rpki-validation-ipv6 { + description + "Choose a particular BGP instance. + RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv6 table. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance rpki validation ipv6"; + } + rpc clear-bgp-instance-rpki-validation { + description + "Choose a particular BGP instance. + RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance rpki validation"; + } + rpc clear-bgp-instance-shutdown { + description + "Choose a particular BGP instance. + Clear all peers which were shut down due to low memory. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance shutdown"; + } + rpc clear-bgp-instance-update-outq-address-family-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq address-family update-parent"; + } + rpc clear-bgp-instance-update-outq-address-family { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq address-family"; + } + rpc clear-bgp-instance-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor refresh update-parent"; + } + rpc clear-bgp-instance-update-outq-neighbor-ip-addr-refresh { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor refresh"; + } + rpc clear-bgp-instance-update-outq-neighbor-ip-addr-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor update-parent"; + } + rpc clear-bgp-instance-update-outq-neighbor-ip-addr { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq neighbor "; + } + rpc clear-bgp-instance-update-outq-process { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Process. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq process"; + } + rpc clear-bgp-instance-update-outq-update-group-sub-group-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-update-outq-update-group-sub-group { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group "; + } + rpc clear-bgp-instance-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-update-outq-update-group-sub-group-refresh-sub-group { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group sub-group "; + } + rpc clear-bgp-instance-update-outq-update-group-update-parent { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group update-parent"; + } + rpc clear-bgp-instance-update-outq-update-group { + description + "Choose a particular BGP instance. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance update outq update-group "; + } + rpc clear-bgp-instance-version-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-ip-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-ip-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ip-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ip-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-bridge-domain-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version bridge-domain "; + } + rpc clear-bgp-instance-version-afi-safi-bridge-domain-ip-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version bridge-domain "; + } + rpc clear-bgp-instance-version-afi-safi-bridge-domain-ip-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version bridge-domain "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ip-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ip-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ipv4-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ipv4-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ipv4-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-vrf-ipv4-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-afi-safi-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-rd-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-vrf-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-afi-safi-rt-constraint-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rt-constraint-network { + type string; + mandatory true; + description + "RT-Constraint network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ipv4-tunnel-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-tunnel-network { + type string; + mandatory true; + description + "IPv4 Tunnel network :"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ipv6-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-ipv6-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-rd { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-vrf { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-afi-safi { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-sr-policy-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf sr-policy-prefix { + type string; + mandatory true; + description + "SR Policy prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version "; + } + rpc clear-bgp-instance-version-afi-safi-bridge-domain-ipv4-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version bridge-domain "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ipv4-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-mp2mp-ipv4-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified Xconnect group:MP2MP. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf mp2mp { + type string; + mandatory true; + description + "Xconnect Group:mp2mp"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN VPWS Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version mp2mp "; + } + rpc clear-bgp-instance-version-afi-safi-vrf-ipv4-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "VPN Fspec Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-vrf-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ipv6-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-rd-ipv6-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version rd "; + } + rpc clear-bgp-instance-version-afi-safi-vrf-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-afi-safi-vrf-ipv6-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-afi-safi-vrf-ipv6-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-ip-addr-ip-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-ip-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-ip-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-ipv4-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "Fspec IPv4 Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-ipv4-addr-ipv4-mask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-ipv4-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-rd-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf rd "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-vrf-network { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-ipv6-addr-ipv6-netmask { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-ipv6-addr { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-ipv6-prefix { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-rd { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf rd "; + } + rpc clear-bgp-instance-version-vrf-afi-safi-vrf { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf vrf "; + } + rpc clear-bgp-instance-version-vrf-afi-safi { + description + "Choose a particular BGP instance. + clear BGP prefix version. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance version vrf "; + } + rpc clear-bgp-instance-vrf-all-graceful { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers and all routes from the BGP table. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf * graceful"; + } + rpc clear-bgp-instance-vrf-all { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers and all routes from the BGP table. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf *"; + } + rpc clear-bgp-instance-vrf-ip-addr-graceful { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf graceful"; + } + rpc clear-bgp-instance-vrf-ip-addr-long-lived-stale { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear long-lived-stale routes. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf long-lived-stale"; + } + rpc clear-bgp-instance-vrf-ip-addr { + description + "Choose a particular BGP instance. + Specify a VRF. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf "; + } + rpc clear-bgp-instance-vrf-as-graceful { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear peers in a specific AS. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf as graceful"; + } + rpc clear-bgp-instance-vrf-as { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear peers in a specific AS. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf as "; + } + rpc clear-bgp-instance-vrf-external-graceful { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all external peers. + Clear with a hard reset and a graceful restart. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf external graceful"; + } + rpc clear-bgp-instance-vrf-external { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all external peers. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf external"; + } + rpc clear-bgp-instance-vrf-afi-safi-all-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf * soft in prefix-filter"; + } + rpc clear-bgp-instance-vrf-afi-safi-all-soft-in { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf * soft in"; + } + rpc clear-bgp-instance-vrf-afi-safi-all-soft-out { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf * soft out"; + } + rpc clear-bgp-instance-vrf-afi-safi-all-soft { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf * soft"; + } + rpc clear-bgp-instance-vrf-afi-safi-ip-addr-long-lived-stale { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear long-lived-stale routes. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf long-lived-stale"; + } + rpc clear-bgp-instance-vrf-afi-safi-ip-addr-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Specify a VRF. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf soft in prefix-filter"; + } + rpc clear-bgp-instance-vrf-afi-safi-ip-addr-soft-in { + description + "Choose a particular BGP instance. + Specify a VRF. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf soft in"; + } + rpc clear-bgp-instance-vrf-afi-safi-ip-addr-soft-out { + description + "Choose a particular BGP instance. + Specify a VRF. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf soft out"; + } + rpc clear-bgp-instance-vrf-afi-safi-ip-addr-soft { + description + "Choose a particular BGP instance. + Specify a VRF. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf soft"; + } + rpc clear-bgp-instance-vrf-afi-safi-as-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf as soft in prefix-filter"; + } + rpc clear-bgp-instance-vrf-afi-safi-as-soft-in { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf as soft in"; + } + rpc clear-bgp-instance-vrf-afi-safi-as-soft-out { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf as soft out"; + } + rpc clear-bgp-instance-vrf-afi-safi-as-soft { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf as soft"; + } + rpc clear-bgp-instance-vrf-afi-safi-dampening-ipv4-prefix { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear route flap dampening information. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf dampening "; + } + rpc clear-bgp-instance-vrf-afi-safi-dampening { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear route flap dampening information. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf dampening"; + } + rpc clear-bgp-instance-vrf-afi-safi-external-soft-in-prefix-filter { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf external soft in prefix-filter"; + } + rpc clear-bgp-instance-vrf-afi-safi-external-soft-in { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf external soft in"; + } + rpc clear-bgp-instance-vrf-afi-safi-external-soft-out { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all external peers. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf external soft out"; + } + rpc clear-bgp-instance-vrf-afi-safi-external-soft { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all external peers. + Soft reconfig. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf external soft"; + } + rpc clear-bgp-instance-vrf-afi-safi-flap-statistics-ip-addr-ipv4-mask { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf flap-statistics "; + } + rpc clear-bgp-instance-vrf-afi-safi-flap-statistics-ip-addr { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf flap-statistics "; + } + rpc clear-bgp-instance-vrf-afi-safi-flap-statistics-ipv4-prefix { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf flap-statistics "; + } + rpc clear-bgp-instance-vrf-afi-safi-flap-statistics-regexp { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear flap statistics. + Clear flap statistics for routes matching the regular expression. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf regexp-pattern { + type string; + mandatory true; + description + "A regular expression to match the BGP AS paths. Use 'ctrl-v ?' to enter '?'"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf flap-statistics regexp "; + } + rpc clear-bgp-instance-vrf-afi-safi-flap-statistics-route-policy { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear flap statistics. + Clear flap statistics for routes matching the route policy. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf route-policy-name { + type string; + mandatory true; + description + "Route Policy name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf flap-statistics route-policy "; + } + rpc clear-bgp-instance-vrf-afi-safi-flap-statistics { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf flap-statistics"; + } + rpc clear-bgp-instance-vrf-afi-safi-nexthop-performance-statistics { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear nexthop. + Performance statistics information related to processing. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf nexthop performance-statistics"; + } + rpc clear-bgp-instance-vrf-afi-safi-nexthop-registration-ip-addr { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf nexthop registration "; + } + rpc clear-bgp-instance-vrf-afi-safi-self-originated { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear redistributed, network and aggregate routes originated here. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf self-originated"; + } + rpc clear-bgp-instance-vrf-afi-safi-shutdown { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers which were shut down due to low memory. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf shutdown"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-address-family-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq address-family update-parent"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-address-family { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq address-family"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor refresh update-parent"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-neighbor-ip-addr-refresh { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor refresh"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-neighbor-ip-addr-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor update-parent"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-neighbor-ip-addr { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor "; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-update-group-sub-group-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-update-group-sub-group { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group "; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-update-group-sub-group-refresh-sub-group { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group "; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-update-group-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group update-parent"; + } + rpc clear-bgp-instance-vrf-afi-safi-update-outq-update-group { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group "; + } + rpc clear-bgp-instance-vrf-afi-safi-dampening-ipv6-prefix { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear route flap dampening information. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf dampening "; + } + rpc clear-bgp-instance-vrf-afi-safi-flap-statistics-ipv6-prefix { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear flap statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf flap-statistics "; + } + rpc clear-bgp-instance-vrf-nexthop-performance-statistics { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear nexthop. + Performance statistics information related to processing. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf nexthop performance-statistics"; + } + rpc clear-bgp-instance-vrf-nexthop-registration-ip-addr { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf nexthop registration "; + } + rpc clear-bgp-instance-vrf-peer-drops-all { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear established/dropped counters for a peer. + All Neighbors. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf peer-drops *"; + } + rpc clear-bgp-instance-vrf-peer-drops-ip-addr { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear established/dropped counters for a peer. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor IP address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf peer-drops "; + } + rpc clear-bgp-instance-vrf-performance-statistics { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear performance statistics. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf performance-statistics"; + } + rpc clear-bgp-instance-vrf-shutdown { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear all peers which were shut down due to low memory. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf shutdown"; + } + rpc clear-bgp-instance-vrf-update-outq-address-family-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq address-family update-parent"; + } + rpc clear-bgp-instance-vrf-update-outq-address-family { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq address-family"; + } + rpc clear-bgp-instance-vrf-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor refresh update-parent"; + } + rpc clear-bgp-instance-vrf-update-outq-neighbor-ip-addr-refresh { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor refresh"; + } + rpc clear-bgp-instance-vrf-update-outq-neighbor-ip-addr-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor update-parent"; + } + rpc clear-bgp-instance-vrf-update-outq-neighbor-ip-addr { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq neighbor "; + } + rpc clear-bgp-instance-vrf-update-outq-update-group-sub-group-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-vrf-update-outq-update-group-sub-group { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group "; + } + rpc clear-bgp-instance-vrf-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-instance-vrf-update-outq-update-group-sub-group-refresh-sub-group { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group sub-group "; + } + rpc clear-bgp-instance-vrf-update-outq-update-group-update-parent { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group update-parent"; + } + rpc clear-bgp-instance-vrf-update-outq-update-group { + description + "Choose a particular BGP instance. + Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf update outq update-group "; + } + rpc clear-bgp-afi-safi-dampening-ipv4-prefix { + description + "Clear route flap dampening information.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp dampening "; + } + rpc clear-bgp-afi-safi-flap-statistics-ipv4-prefix { + description + "Clear flap statistics.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics "; + } + rpc clear-bgp-afi-safi-dampening-ipv6-prefix { + description + "Clear route flap dampening information.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp dampening "; + } + rpc clear-bgp-afi-safi-flap-statistics-ipv6-prefix { + description + "Clear flap statistics.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp flap-statistics "; + } + rpc clear-bgp-nexthop-performance-statistics { + description + "Clear nexthop. + Performance statistics information related to processing. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp nexthop performance-statistics"; + } + rpc clear-bgp-nexthop-registration-ip-addr { + description + "Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp nexthop registration "; + } + rpc clear-bgp-peer-drops-all { + description + "Clear established/dropped counters for a peer. + All Neighbors. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp peer-drops *"; + } + rpc clear-bgp-peer-drops-ip-addr { + description + "Clear established/dropped counters for a peer.\n"; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor IP address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp peer-drops "; + } + rpc clear-bgp-performance-statistics { + description + "Clear performance statistics.\n"; + csc:xr-task "bgp"; + csc:cli-command "clear bgp performance-statistics"; + } + rpc clear-bgp-rpki-server-all-serial-query { + description + "RPKI clear command. + clear RPKI cache-server. + clear all RPKI cache-servers. + send serial-queries to all cache-servers (with latest serial numbers). + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp rpki server * serial-query"; + } + rpc clear-bgp-rpki-server-all { + description + "RPKI clear command. + clear RPKI cache-server. + clear all RPKI cache-servers. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp rpki server *"; + } + rpc clear-bgp-rpki-server-rpki-server { + description + "RPKI clear command. + clear RPKI cache-server. + "; + input { + leaf rpki-server { + type string; + mandatory true; + description + "clear a specific RPKI cache-server (hostname or IP address)"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp rpki server "; + } + rpc clear-bgp-rpki-validation-ipv4 { + description + "RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv4 table. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp rpki validation ipv4"; + } + rpc clear-bgp-rpki-validation-ipv6 { + description + "RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv6 table. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp rpki validation ipv6"; + } + rpc clear-bgp-rpki-validation { + description + "RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp rpki validation"; + } + rpc clear-bgp-shutdown { + description + "Clear all peers which were shut down due to low memory.\n"; + csc:xr-task "bgp"; + csc:cli-command "clear bgp shutdown"; + } + rpc clear-bgp-update-outq-address-family-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq address-family update-parent"; + } + rpc clear-bgp-update-outq-address-family { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq address-family"; + } + rpc clear-bgp-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor refresh update-parent"; + } + rpc clear-bgp-update-outq-neighbor-ip-addr-refresh { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor refresh"; + } + rpc clear-bgp-update-outq-neighbor-ip-addr-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor update-parent"; + } + rpc clear-bgp-update-outq-neighbor-ip-addr { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq neighbor "; + } + rpc clear-bgp-update-outq-process { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Process. + "; + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq process"; + } + rpc clear-bgp-update-outq-update-group-sub-group-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group update-parent"; + } + rpc clear-bgp-update-outq-update-group-sub-group { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group "; + } + rpc clear-bgp-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group update-parent"; + } + rpc clear-bgp-update-outq-update-group-sub-group-refresh-sub-group { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group sub-group "; + } + rpc clear-bgp-update-outq-update-group-update-parent { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group update-parent"; + } + rpc clear-bgp-update-outq-update-group { + description + "Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp update outq update-group "; + } + rpc clear-bgp-version-ip-addr-ip-netmask { + description + "clear BGP prefix version.\n"; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-ip-addr { + description + "clear BGP prefix version.\n"; + input { + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-ip-prefix { + description + "clear BGP prefix version.\n"; + input { + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ip-addr-ip-netmask { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ip-addr { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ip-prefix { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-bridge-domain-ip-addr-ip-netmask { + description + "clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version bridge-domain "; + } + rpc clear-bgp-version-afi-safi-bridge-domain-ip-addr { + description + "clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version bridge-domain "; + } + rpc clear-bgp-version-afi-safi-bridge-domain-ip-prefix { + description + "clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version bridge-domain "; + } + rpc clear-bgp-version-afi-safi-rd-ip-addr-ip-netmask { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-rd-ip-addr { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-rd-ip-prefix { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-ipv4-addr-ipv4-mask { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ipv4-addr { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ipv4-prefix { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-rd-ipv4-addr { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-vrf-ipv4-addr { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 MDT network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-afi-safi-network { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-rd-network { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-vrf-network { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-afi-safi-rt-constraint-network { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rt-constraint-network { + type string; + mandatory true; + description + "RT-Constraint network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ipv4-tunnel-network { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-tunnel-network { + type string; + mandatory true; + description + "IPv4 Tunnel network :"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ipv6-addr-ipv6-netmask { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ipv6-addr { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-ipv6-prefix { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-rd { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-vrf { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-afi-safi { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-sr-policy-prefix { + description + "clear BGP prefix version.\n"; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf sr-policy-prefix { + type string; + mandatory true; + description + "SR Policy prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version "; + } + rpc clear-bgp-version-afi-safi-bridge-domain-ipv4-prefix { + description + "clear BGP prefix version. + Display routes for a specified Bridge Domain. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf bridge-domain-name { + type string; + mandatory true; + description + "Bridge Domain"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version bridge-domain "; + } + rpc clear-bgp-version-afi-safi-rd-ipv4-prefix { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN EVPN Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-mp2mp-ipv4-prefix { + description + "clear BGP prefix version. + Display routes for a specified Xconnect group:MP2MP. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf mp2mp { + type string; + mandatory true; + description + "Xconnect Group:mp2mp"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "L2VPN VPWS Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version mp2mp "; + } + rpc clear-bgp-version-afi-safi-vrf-ipv4-prefix { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "VPN Fspec Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-afi-safi-rd-ipv4-addr-ipv4-mask { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-vrf-ipv4-addr-ipv4-mask { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-afi-safi-rd-ipv6-addr-ipv6-netmask { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-rd-ipv6-addr { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-rd-ipv6-prefix { + description + "clear BGP prefix version. + Display routes with a specific route distinguisher. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version rd "; + } + rpc clear-bgp-version-afi-safi-vrf-ipv6-addr-ipv6-netmask { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-afi-safi-vrf-ipv6-addr { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-afi-safi-vrf-ipv6-prefix { + description + "clear BGP prefix version. + Display routes for a specified VRF. + "; + input { + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-ip-addr-ip-netmask { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + leaf ip-netmask { + type ip-netmask; + mandatory true; + description + "Mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-ip-addr { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-ip-prefix { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-prefix { + type inet:ip-prefix; + mandatory true; + description + "Network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-ipv4-prefix { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "Fspec IPv4 Prefix"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-ipv4-addr-ipv4-mask { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-ipv4-addr { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-addr { + type inet:ipv4-address; + mandatory true; + description + "IPv4 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-network { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-rd-network { + description + "clear BGP prefix version. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf rd "; + } + rpc clear-bgp-version-vrf-afi-safi-vrf-network { + description + "clear BGP prefix version. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + leaf network { + type string; + mandatory true; + description + "Address family modifier specific network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-ipv6-addr-ipv6-netmask { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + leaf ipv6-netmask { + type ipv6-netmask; + mandatory true; + description + "IPv6 mask"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-ipv6-addr { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-addr { + type inet:ipv6-address; + mandatory true; + description + "IPv6 network"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-ipv6-prefix { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 network and masklength"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-version-vrf-afi-safi-rd { + description + "clear BGP prefix version. + Specify a VRF. + Display routes with a specific route distinguisher. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf rd { + type rd; + mandatory true; + description + "Route distinguisher"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf rd "; + } + rpc clear-bgp-version-vrf-afi-safi-vrf { + description + "clear BGP prefix version. + Specify a VRF. + Display routes for a specified VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf vrf-name { + type string; + mandatory true; + description + "VRF name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf vrf "; + } + rpc clear-bgp-version-vrf-afi-safi { + description + "clear BGP prefix version. + Specify a VRF. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp version vrf "; + } + rpc clear-bgp-vrf-all-graceful { + description + "Specify a VRF. + Clear all peers and all routes from the BGP table. + Clear with a hard reset and a graceful restart. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf * graceful"; + } + rpc clear-bgp-instance-vrf-rpki-validation-ipv4 { + description + "Choose a particular BGP instance and VRF. + RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv4 table. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf rpki validation ipv4"; + } + rpc clear-bgp-instance-vrf-rpki-validation-ipv6 { + description + "Choose a particular BGP instance and VRF. + RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv6 table. + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf rpki validation ipv6"; + } + rpc clear-bgp-instance-vrf-rpki-validation { + description + "Choose a particular BGP instance and VRF. + RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + "; + input { + leaf instance-name { + type instance-name; + mandatory true; + description + "instance name or all"; + } + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp instance vrf rpki validation"; + } + rpc clear-bgp-vrf-rpki-validation-ipv4 { + description + "RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv4 table. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf rpki validation ipv4"; + } + rpc clear-bgp-vrf-rpki-validation-ipv6 { + description + "RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + trigger origin validation walk for the IPv6 table. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf rpki validation ipv6"; + } + rpc clear-bgp-vrf-rpki-validation { + description + "RPKI clear command. + clear RPKI origin-validation (trigger origin validation). + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf rpki validation"; + } + rpc clear-bgp-vrf-all { + description + "Specify a VRF. + Clear all peers and all routes from the BGP table. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf *"; + } + rpc clear-bgp-vrf-ip-addr-graceful { + description + "Specify a VRF. + Clear with a hard reset and a graceful restart. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf graceful"; + } + rpc clear-bgp-vrf-ip-addr-long-lived-stale { + description + "Specify a VRF. + Clear long-lived-stale routes. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf long-lived-stale"; + } + rpc clear-bgp-vrf-ip-addr { + description + "Specify a VRF.\n"; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf "; + } + rpc clear-bgp-vrf-as-graceful { + description + "Specify a VRF. + Clear peers in a specific AS. + Clear with a hard reset and a graceful restart. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf as graceful"; + } + rpc clear-bgp-vrf-as { + description + "Specify a VRF. + Clear peers in a specific AS. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf as "; + } + rpc clear-bgp-vrf-external-graceful { + description + "Specify a VRF. + Clear all external peers. + Clear with a hard reset and a graceful restart. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf external graceful"; + } + rpc clear-bgp-vrf-external { + description + "Specify a VRF. + Clear all external peers. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf external"; + } + rpc clear-bgp-vrf-afi-safi-all-soft-in-prefix-filter { + description + "Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf * soft in prefix-filter"; + } + rpc clear-bgp-vrf-afi-safi-all-soft-in { + description + "Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf * soft in"; + } + rpc clear-bgp-vrf-afi-safi-all-soft-out { + description + "Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf * soft out"; + } + rpc clear-bgp-vrf-afi-safi-all-soft { + description + "Specify a VRF. + Clear all peers and all routes from the BGP table. + Soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf * soft"; + } + rpc clear-bgp-vrf-afi-safi-ip-addr-long-lived-stale { + description + "Specify a VRF. + Clear long-lived-stale routes. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf long-lived-stale"; + } + rpc clear-bgp-vrf-afi-safi-ip-addr-soft-in-prefix-filter { + description + "Specify a VRF. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf soft in prefix-filter"; + } + rpc clear-bgp-vrf-afi-safi-ip-addr-soft-in { + description + "Specify a VRF. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf soft in"; + } + rpc clear-bgp-vrf-afi-safi-ip-addr-soft-out { + description + "Specify a VRF. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf soft out"; + } + rpc clear-bgp-vrf-afi-safi-ip-addr-soft { + description + "Specify a VRF. + Soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf soft"; + } + rpc clear-bgp-vrf-afi-safi-as-soft-in-prefix-filter { + description + "Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf as soft in prefix-filter"; + } + rpc clear-bgp-vrf-afi-safi-as-soft-in { + description + "Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf as soft in"; + } + rpc clear-bgp-vrf-afi-safi-as-soft-out { + description + "Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf as soft out"; + } + rpc clear-bgp-vrf-afi-safi-as-soft { + description + "Specify a VRF. + Clear peers in a specific AS. + Soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf as-number { + type as-number; + mandatory true; + description + "AS number"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf as soft"; + } + rpc clear-bgp-vrf-afi-safi-dampening-ipv4-prefix { + description + "Specify a VRF. + Clear route flap dampening information. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf dampening "; + } + rpc clear-bgp-vrf-afi-safi-dampening { + description + "Specify a VRF. + Clear route flap dampening information. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf dampening"; + } + rpc clear-bgp-vrf-afi-safi-external-soft-in-prefix-filter { + description + "Specify a VRF. + Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + Push out prefix ORF and do inbound soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf external soft in prefix-filter"; + } + rpc clear-bgp-vrf-afi-safi-external-soft-in { + description + "Specify a VRF. + Clear all external peers. + Soft reconfig. + Soft reconfig inbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf external soft in"; + } + rpc clear-bgp-vrf-afi-safi-external-soft-out { + description + "Specify a VRF. + Clear all external peers. + Soft reconfig. + Soft reconfig outbound update. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf external soft out"; + } + rpc clear-bgp-vrf-afi-safi-external-soft { + description + "Specify a VRF. + Clear all external peers. + Soft reconfig. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf external soft"; + } + rpc clear-bgp-vrf-afi-safi-flap-statistics-ip-addr-ipv4-mask { + description + "Specify a VRF. + Clear flap statistics. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + leaf ipv4-mask { + type ipv4-netmask; + mandatory true; + description + "IPv4 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf flap-statistics "; + } + rpc clear-bgp-vrf-afi-safi-flap-statistics-ip-addr { + description + "Specify a VRF. + Clear flap statistics. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor address to clear"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf flap-statistics "; + } + rpc clear-bgp-vrf-afi-safi-flap-statistics-ipv4-prefix { + description + "Specify a VRF. + Clear flap statistics. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv4-prefix { + type inet:ipv4-prefix; + mandatory true; + description + "IPv4 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf flap-statistics "; + } + rpc clear-bgp-vrf-afi-safi-flap-statistics-regexp { + description + "Specify a VRF. + Clear flap statistics. + Clear flap statistics for routes matching the regular expression. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf regexp-pattern { + type string; + mandatory true; + description + "A regular expression to match the BGP AS paths. Use 'ctrl-v ?' to enter '?'"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf flap-statistics regexp "; + } + rpc clear-bgp-vrf-afi-safi-flap-statistics-route-policy { + description + "Specify a VRF. + Clear flap statistics. + Clear flap statistics for routes matching the route policy. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf route-policy-name { + type string; + mandatory true; + description + "Route Policy name"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf flap-statistics route-policy "; + } + rpc clear-bgp-vrf-afi-safi-flap-statistics { + description + "Specify a VRF. + Clear flap statistics. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf flap-statistics"; + } + rpc clear-bgp-vrf-afi-safi-nexthop-performance-statistics { + description + "Specify a VRF. + Clear nexthop. + Performance statistics information related to processing. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf nexthop performance-statistics"; + } + rpc clear-bgp-vrf-afi-safi-nexthop-registration-ip-addr { + description + "Specify a VRF. + Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf nexthop registration "; + } + rpc clear-bgp-vrf-afi-safi-self-originated { + description + "Specify a VRF. + Clear redistributed, network and aggregate routes originated here. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf self-originated"; + } + rpc clear-bgp-vrf-afi-safi-shutdown { + description + "Specify a VRF. + Clear all peers which were shut down due to low memory. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf shutdown"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-address-family-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq address-family update-parent"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-address-family { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq address-family"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor refresh update-parent"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-neighbor-ip-addr-refresh { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor refresh"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-neighbor-ip-addr-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor update-parent"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-neighbor-ip-addr { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor "; + } + rpc clear-bgp-vrf-afi-safi-update-outq-update-group-sub-group-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-update-group-sub-group { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group "; + } + rpc clear-bgp-vrf-afi-safi-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-update-group-sub-group-refresh-sub-group { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group "; + } + rpc clear-bgp-vrf-afi-safi-update-outq-update-group-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group update-parent"; + } + rpc clear-bgp-vrf-afi-safi-update-outq-update-group { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group "; + } + rpc clear-bgp-vrf-afi-safi-dampening-ipv6-prefix { + description + "Specify a VRF. + Clear route flap dampening information. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear dampening information"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf dampening "; + } + rpc clear-bgp-vrf-afi-safi-flap-statistics-ipv6-prefix { + description + "Specify a VRF. + Clear flap statistics. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf afi-safi-name { + type afi-safi-type; + mandatory true; + description + "AFI and SAFI"; + } + leaf ipv6-prefix { + type inet:ipv6-prefix; + mandatory true; + description + "IPv6 Network and mask or masklength to clear flap statistics"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf flap-statistics "; + } + rpc clear-bgp-vrf-nexthop-performance-statistics { + description + "Specify a VRF. + Clear nexthop. + Performance statistics information related to processing. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf nexthop performance-statistics"; + } + rpc clear-bgp-vrf-nexthop-registration-ip-addr { + description + "Specify a VRF. + Clear nexthop. + Registration with RIB and reregister. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Nexthop address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf nexthop registration "; + } + rpc clear-bgp-vrf-peer-drops-all { + description + "Specify a VRF. + Clear established/dropped counters for a peer. + All Neighbors. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf peer-drops *"; + } + rpc clear-bgp-vrf-peer-drops-ip-addr { + description + "Specify a VRF. + Clear established/dropped counters for a peer. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "BGP neighbor IP address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf peer-drops "; + } + rpc clear-bgp-vrf-performance-statistics { + description + "Specify a VRF. + Clear performance statistics. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf performance-statistics"; + } + rpc clear-bgp-vrf-shutdown { + description + "Specify a VRF. + Clear all peers which were shut down due to low memory. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf shutdown"; + } + rpc clear-bgp-vrf-update-outq-address-family-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq address-family update-parent"; + } + rpc clear-bgp-vrf-update-outq-address-family { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Address-family. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq address-family"; + } + rpc clear-bgp-vrf-update-outq-neighbor-ip-addr-refresh-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor refresh update-parent"; + } + rpc clear-bgp-vrf-update-outq-neighbor-ip-addr-refresh { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Refresh OutQ. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor refresh"; + } + rpc clear-bgp-vrf-update-outq-neighbor-ip-addr-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor update-parent"; + } + rpc clear-bgp-vrf-update-outq-neighbor-ip-addr { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Neighbor. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf ip-addr { + type inet:ip-address; + mandatory true; + description + "Neighbor address"; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq neighbor "; + } + rpc clear-bgp-vrf-update-outq-update-group-sub-group-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-vrf-update-outq-update-group-sub-group { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf sub-group { + type update-group-id; + mandatory true; + description + "Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group "; + } + rpc clear-bgp-vrf-update-outq-update-group-sub-group-refresh-sub-group-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group update-parent"; + } + rpc clear-bgp-vrf-update-outq-update-group-sub-group-refresh-sub-group { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Sub-group. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + leaf refresh-sub-group { + type refresh-sub-group-id; + mandatory true; + description + "Refresh Sub-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group sub-group "; + } + rpc clear-bgp-vrf-update-outq-update-group-update-parent { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + Update parents' OutQ counters too. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group update-parent"; + } + rpc clear-bgp-vrf-update-outq-update-group { + description + "Specify a VRF. + Clear Update information (Do NOT execute without cisco support)(cisco-support). + Clear Update generation OutQ counters (Do NOT execute without cisco support)(cisco-support). + Update-group. + "; + input { + leaf vrf-all { + type vrf-name; + mandatory true; + description + "VRF name or all"; + } + leaf update-group { + type update-group-id; + mandatory true; + description + "Update-group process ID "; + } + } + csc:xr-task "bgp"; + csc:cli-command "clear bgp vrf update outq update-group "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-8000-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-8000-deviations.yang new file mode 100644 index 000000000..f61610542 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-8000-deviations.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-ipv4-bgp-cfg-8000-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pv4-bgp-cfg-8000-deviations"; + prefix ipv4-bgp-cfg-8000-dev; + + import Cisco-IOS-XR-ipv4-bgp-cfg { + prefix ipv4-bgp-cfg; + } + + 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 set of deviations of container rack + for 8000 platform on Ciso-IOS-XR device. + + Copyright (c) 2017, 2019-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-15 { + description + "Initial revision applicable to IOS-XR 7.6 and older releases"; + reference "RFC RFC 8407: 4.8"; + } + + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ebgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..128"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..128"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:eibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..128"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations.yang new file mode 100644 index 000000000..53dc41cb9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540-deviations"; + prefix ipv4-bgp-cfg-ncs540-dev; + + import Cisco-IOS-XR-ipv4-bgp-cfg { + prefix ipv4-bgp-cfg; + } + + 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 set of deviations of ipv4 bgp + for ncs540 platform on Ciso-IOS-XR device. + + Copyright (c) 2017, 2019-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-15 { + description + "Initial revision applicable to IOS-XR 7.6 and older releases"; + reference "RFC RFC 8407: 4.8"; + } + + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ebgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:eibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations.yang new file mode 100644 index 000000000..d31a527b5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-cfg-ncs540l-deviations"; + prefix ipv4-bgp-cfg-ncs540l-dev; + + import Cisco-IOS-XR-ipv4-bgp-cfg { + prefix ipv4-bgp-cfg; + } + + 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 set of deviations of ipv4 bgp + for ncs540l platform on Ciso-IOS-XR device. + + Copyright (c) 2017, 2019-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-15 { + description + "Initial revision applicable to IOS-XR 7.6 and older releases"; + reference "RFC RFC 8407: 4.8"; + } + + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ebgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:eibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations.yang new file mode 100644 index 000000000..c198a9b1a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-cfg-ncs5500-deviations"; + prefix ipv4-bgp-cfg-ncs5500-dev; + + import Cisco-IOS-XR-ipv4-bgp-cfg { + prefix ipv4-bgp-cfg; + } + + 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 set of deviations of ipv4 bgp + for ncs5500 platform on Ciso-IOS-XR device. + + Copyright (c) 2017, 2019-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-15 { + description + "Initial revision applicable to IOS-XR 7.6 and older releases"; + reference "RFC RFC 8407: 4.8"; + } + + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ebgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:ibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } + deviation "/ipv4-bgp-cfg:bgp/ipv4-bgp-cfg:instance/ipv4-bgp-cfg:instance-as/ipv4-bgp-cfg:four-byte-as/ipv4-bgp-cfg:vrfs/ipv4-bgp-cfg:vrf/ipv4-bgp-cfg:vrf-global/ipv4-bgp-cfg:vrf-global-afs/ipv4-bgp-cfg:vrf-global-af/ipv4-bgp-cfg:eibgp/ipv4-bgp-cfg:paths-value" { + deviate replace { + type uint32 { + range "2..64"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg.yang new file mode 100644 index 000000000..fffdef165 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-cfg.yang @@ -0,0 +1,7559 @@ +module Cisco-IOS-XR-ipv4-bgp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-cfg"; + prefix ipv4-bgp-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ipv4-bgp-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-infra-rsi-cfg { + prefix a1; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a2; + } + + 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-bgp package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + asn-format: Autonomous system number format + bgp: BGP configuration commands + bmp-server-all: BGP BMP Server Common Configuration + bmp-servers: BGP BMP Server Configuration + + This YANG module augments the + Cisco-IOS-XR-infra-rsi-cfg, + Cisco-IOS-XR-snmp-agent-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-05 { + description + "Updated slow-peer static and dynamic leafs + 2022-09-19 + Added schema for neighbor gateway-ip disable command for EVPN + 2022-08-24 + Added schema for neighbor default-policy-action + 2022-08-05 + Added schema for neighbor AFI/SAFI additional-paths + 2022-08-01 + Added schema for log neighbor state changes + 2022-06-02 + Change wait-rib-install from leaf to container and introduce the delay startup leaf + 2022-05-25 + Added a new config knob for OCNI replace-private-as and neighbor TCP MTU + 2022-05-19 + Updated connected,static,application,rip redistribute containers. + 2022-03-15 + Added a new config knob for OC RIB Attr creation. + 2022-02-01 + Added OPE ID CLI for global l2vpn evpn afi/safi + 2021-12-01 + Added create leaf under neighbor-address. This is required for neighbor creation in BGP + 2021-11-18 + Deviated the value of multipaths configurable under VRF."; + semver:module-version "6.0.0"; + } + revision 2021-10-16 { + description + "Removed unused/deprecated options in maximum-paths config, updated leaf value type of deterministic leaf + 2021-06-30 + Added knobs for EPE label retention and EPE backup + 2021-06-27 + Changes involves segment routing alloc mode to be configured as a policy as well along with per-ce/per-vrf + 2021-05-04 + Added Bandwidth-Aware Graceful-Maintenance + 2021-05-03 + Added Import/Export Allow Config for backup and best-external"; + semver:module-version "5.0.0"; + } + revision 2021-03-05 { + description + "Deprecated Hidden commands + 2021-03-05 + Added SR Policy Path Prefernce CLI + 2021-02-07 + Add config to include cluster-list-length in multipath criteria + 2020-12-07 + cli/default behavior change for Soft NextHop Validation and Metric + 2020-12-01 + Added best-external advertise config limited to labeled-unicast + 2020-10-27 + BGP change dual-mode configure cli + 2020-10-09 + Changed RPKI password type to Proprietary + 2020-10-04 + Added Soft NextHop Validation and Metric + 2020-07-21 + BGP MIB cfg model has been updated to allow only one of updown or enable options"; + semver:module-version "4.0.0"; + } + revision 2020-06-16 { + description + "Fixing various spellings/typos in descriptions + 2020-05-13 + Support large values for BGP RPKI purge timeout. + 2020-01-29 + Enhancement for OC BFD augmentation in OC BGP. + 2019-10-31 + Added mandatory nodes and presence containers."; + semver:module-version "3.0.0"; + } + revision 2019-08-31 { + description + "Fixing revision error in module. + 2019-05-12 + Deprecated the native model, replaced by UM model."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2018-01-18 { + description + "Added AO option for neighbor"; + } + revision 2017-11-05 { + description + "Corrected boolean values in when statements."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-07-31 { + description + "Fixed missing augmentation from multiple MDA parent."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-06-01 { + description + "Revision description string."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-08-27 { + description + "IOS XR 5.3.2 revision."; + } + + typedef Bgp-mvpn-sfs-select { + type enumeration { + enum "all-paths" { + value 1; + description + "Select all paths as single forwarder PE"; + } + enum "highest-ip-address" { + value 2; + description + "Select PE with highest address as single + forwarder PE"; + } + } + description + "Bgp mvpn sfs select"; + } + + typedef Bgp-nbrgr { + type enumeration { + enum "true" { + value 0; + description + "NBR has enabled Graceful Restart capability"; + } + enum "false" { + value 1; + description + "NBR has disabled Graceful Restart capability"; + } + } + description + "Bgp nbrgr"; + } + + typedef Bmp-policy-select { + type enumeration { + enum "post-policy" { + value 2; + description + "Pickup routes after policy application"; + } + } + description + "Bmp policy select"; + } + + typedef Bgp-default-metric-range { + type uint32 { + range "0..4294967295"; + } + description + "Bgp default metric range"; + } + + typedef Bgp-ebgp-send-dmz-enable-mode { + type enumeration { + enum "disable" { + value 0; + description + "Disable Mode - Prevent inheritance"; + } + enum "default" { + value 1; + description + "Default Mode - Send dmz link bandwidth value to + ebgp neighbor"; + } + enum "cumulative" { + value 2; + description + "Strict Mode - Send cumulative dmz link + bandwidth value to ebgp neighbor"; + } + } + description + "Bgp ebgp send dmz enable mode"; + } + + typedef Bgp-rpki-binssrc { + type enumeration { + enum "interface" { + value 0; + description + "Bind Source Interface"; + } + } + description + "Bgp rpki binssrc"; + } + + typedef Bgp-signal { + type enumeration { + enum "bgp-disable" { + value 1; + description + "Signalling BGP disable"; + } + enum "ldp-disable" { + value 2; + description + "Signalling LDP disable"; + } + } + description + "Bgp signal"; + } + + typedef Bgp-vrf-route-target { + type enumeration { + enum "as" { + value 0; + description + "AS format RT"; + } + enum "ipv4-address" { + value 1; + description + "IPv4 address format RT"; + } + enum "four-byte-as" { + value 2; + description + "4-byte AS format RT"; + } + } + description + "Bgp vrf route target"; + } + + typedef Bgp-rpki-time-config { + type union { + type enumeration { + enum "off" { + value 0; + description + "Turn off knob"; + } + } + type uint32 { + range "0..3600"; + } + } + description + "Bgp rpki time config"; + } + + typedef Bgp-rnh-install-format { + type enumeration { + enum "ext-comm" { + value 0; + description + "Install RNH as opaque and extcomm"; + } + enum "ext-comm-only" { + value 1; + description + "Install RNH as extcomm only"; + } + } + description + "Bgp rnh install format"; + } + + typedef Bgp-bfd-enable-mode { + type enumeration { + enum "disable" { + value 0; + description + "Disable Mode - Prevent inheritance"; + } + enum "default" { + value 1; + description + "Default Mode - Default BFD behavior"; + } + enum "strict" { + value 2; + description + "Strict Mode - Hold down adj until BFD session + up"; + } + } + description + "Bgp bfd enable mode"; + } + + typedef Route-target-as-index { + type uint32 { + range "0..4294967295"; + } + description + "Route target as index"; + } + + typedef Bmp-route-direction { + type enumeration { + enum "inbound" { + value 1; + description + "Pickup routes at inbound direction from peer"; + } + } + description + "Bmp route direction"; + } + + typedef Bgp-send-mcast-attr-cfg { + type enumeration { + enum "enable" { + value 1; + description + "Enable SendMcastAttr"; + } + enum "disable" { + value 2; + description + "Disable SendMcastAttr"; + } + } + description + "Bgp send mcast attr cfg"; + } + + typedef Bgp-aigp-cfg-poi { + type enumeration { + enum "pre-best-path" { + value 1; + description + "AIGP Pre-bestpath POI"; + } + enum "igp-cost" { + value 2; + description + "AIGP igp-cost POI"; + } + } + description + "Bgp aigp cfg poi"; + } + + typedef Bgp-flowspec-validation-cfg { + type enumeration { + enum "enable" { + value 1; + description + "Enable Flowspec validation"; + } + enum "disable" { + value 2; + description + "Disable Flowspec validation"; + } + enum "redirect-nexhop-disable" { + value 3; + description + "Disable Flowspec redirect nexthop validation"; + } + } + description + "Bgp flowspec validation cfg"; + } + + typedef Bgp-slow-peer-mode { + type enumeration { + enum "static" { + value 1; + description + "Configure slow peer static"; + } + enum "dynamic" { + value 2; + description + "Configure slow peer dynamic"; + } + } + description + "Bgp slow peer mode"; + } + + typedef Bgp-orrafi { + type enumeration { + enum "bgp-ipv6orr" { + value 0; + description + "IPv6 ORR AFI type"; + } + enum "bgp-ipv4orr" { + value 1; + description + "IPv4 ORR AFI type"; + } + } + description + "Bgp orrafi"; + } + + typedef Route-target-addr-index { + type uint32 { + range "0..65535"; + } + description + "Route target addr index"; + } + + typedef Bgp-rpki-soft-reconf-cfg { + type enumeration { + enum "rpki-default-option" { + value 0; + description + "Behaviour independent of RPKI validation tests + (Disabled)."; + } + enum "rpki-dropped-only" { + value 1; + description + "Keep paths tested for RPKI in route-policy and + dropped"; + } + enum "rpki-tested-only" { + value 2; + description + "Keep RPKI paths tested in route-policy"; + } + } + description + "Bgp rpki soft reconf cfg"; + } + + typedef Bgp-default-policy { + type enumeration { + enum "accept-route" { + value 1; + description + "Accept the route"; + } + enum "reject-route" { + value 2; + description + "Reject the route"; + } + } + description + "Bgp default policy"; + } + + typedef Bgp-orf { + type enumeration { + enum "none" { + value 0; + description + "No capability to send or receive"; + } + enum "receive" { + value 1; + description + "Receive ORF capability"; + } + enum "send" { + value 2; + description + "Send ORF capability"; + } + enum "both" { + value 3; + description + "Send and receive ORF capability"; + } + } + description + "Bgp orf"; + } + + typedef Bgp-asn { + type enumeration { + enum "as-plain" { + value 1; + description + "AS plain format"; + } + enum "asdot" { + value 2; + description + "AS dot format"; + } + } + description + "Bgp asn"; + } + + typedef Bgp-rpki-transport { + type enumeration { + enum "tcp" { + value 0; + description + "TCP Transport"; + } + enum "ssh" { + value 1; + description + "SSH Transport"; + } + } + description + "Bgp rpki transport"; + } + + typedef Bgp-reorg-opt { + type enumeration { + enum "bgp-cfg-adv" { + value 1; + description + "Advertise translated routes"; + } + enum "bgp-cfg-adv-reorg" { + value 2; + description + "Advertise Reorig routes"; + } + enum "bgp-cfg-adv-disable" { + value 3; + description + "Disable adv of routes"; + } + enum "bgp-cfg-adv-local" { + value 4; + description + "Advertise local routes"; + } + enum "bgp-cfg-adv-def-vrf-imp-disable" { + value 5; + description + "Disable adv of Def VRF Imported routes"; + } + enum "bgp-cfg-adv-vrf-re-imp-disable" { + value 6; + description + "Disable adv of VRF ReImported routes"; + } + enum "bgp-cfg-adv-vrf-evpn-re-imp-disable" { + value 7; + description + "Disable adv of VRF EVPN extranet Imported + routes"; + } + } + description + "Bgp reorg opt"; + } + + typedef Bgp-af-encapsulation { + type enumeration { + enum "vx-lan" { + value 1; + description + "VxLAN encapsulation type"; + } + enum "srv6" { + value 2; + description + "SRv6 encapsulation type"; + } + } + description + "Bgp af encapsulation"; + } + + typedef Bgp-aigp-cfg { + type enumeration { + enum "enable" { + value 1; + description + "Enable AIGP"; + } + enum "disable" { + value 2; + description + "Disable AIGP"; + } + } + description + "Bgp aigp cfg"; + } + + typedef Bgp-best-path-sr-policy-path { + type enumeration { + enum "bgp-best-path-sr-path-type-preference" { + value 1; + description + "SR Policy path eligibility selection, except + eBGP non-color"; + } + enum "bgp-best-path-sr-path-type-force" { + value 2; + description + "SR Policy path eligibility selection, strict"; + } + } + description + "Bgp best path sr policy path"; + } + + typedef Bgp-route-distinguisher { + type enumeration { + enum "auto" { + value 1; + description + "Automatically assigned"; + } + enum "as" { + value 2; + description + "AS format RD"; + } + enum "four-byte-as" { + value 3; + description + "4-byte AS format RD"; + } + enum "ipv4-address" { + value 4; + description + "IPv4 address format RD"; + } + } + description + "Bgp route distinguisher"; + } + + typedef Bgp-adv-rt { + type enumeration { + enum "bgp-regular-rt" { + value 0; + description + "Regular RT type"; + } + enum "bgp-stitching-rt" { + value 1; + description + "Stitching RT type"; + } + } + description + "Bgp adv rt"; + } + + typedef Bgp-tcp-mode { + type enumeration { + enum "either" { + value 0; + description + "Either active or passive mode"; + } + enum "active-only" { + value 1; + description + "Active mode only"; + } + enum "passive-only" { + value 2; + description + "Passive mode only"; + } + } + description + "Bgp tcp mode"; + } + + typedef Bgp-site-of-origin { + type enumeration { + enum "as" { + value 0; + description + "AS format SoO"; + } + enum "ipv4-address" { + value 1; + description + "IPv4 address format SoO"; + } + enum "four-byte-as" { + value 2; + description + "4-byte AS format SoO"; + } + } + description + "Bgp site of origin"; + } + + typedef Bgp-cluster-id { + type enumeration { + enum "number" { + value 1; + description + "Number"; + } + enum "ipv4-address" { + value 2; + description + "IPv4 Address"; + } + } + description + "Bgp cluster id"; + } + + typedef Bgp-bandwidth-aware-gshut-threshold-mode { + type enumeration { + enum "bgp-threshold-type-bandwidth" { + value 1; + description + "Bandwidth Based Threshold"; + } + enum "bgp-threshold-type-percentage" { + value 2; + description + "Percentage Based Threshold"; + } + } + description + "Bgp bandwidth aware gshut threshold mode"; + } + + typedef Bgp-slow-peer-threshold-range { + type uint32 { + range "120..3600"; + } + description + "Bgp slow peer threshold range"; + } + + typedef Bgp-global-extcomm-v4-addr-index { + type uint32 { + range "0..65535"; + } + description + "Bgp global extcomm v4 addr index"; + } + + typedef Bgp-global-extcomm-asn-index { + type uint32 { + range "0..4294967295"; + } + description + "Bgp global extcomm asn index"; + } + + typedef Bgp-global-route-distinguisher { + type enumeration { + enum "as" { + value 2; + description + "AS format RD"; + } + enum "four-byte-as" { + value 3; + description + "4-byte AS format RD"; + } + enum "ipv4-address" { + value 4; + description + "IPv4 address format RD"; + } + } + description + "Bgp global route distinguisher"; + } + + typedef Bgp-global-as-range { + type uint32 { + range "0..4294967295"; + } + description + "Bgp global as range"; + } + + grouping ADVERTISE-DISABLE { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-disable { + description + "Disable Advertise Of Routes to the peer"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf reorg-option { + type Bgp-reorg-opt; + description + "Reorigination option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping TABLE-POLICY { + description + "Common node of global-af, vrf-global-af"; + leaf table-policy { + type string; + description + "Configure policy for installation of routes to + RIB"; + } + } + + grouping MAXIMUM-PREFIXES { + description + "Common node of global-af, vrf-global-afCommon + node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container maximum-prefixes { + presence "Indicates a maximum-prefixes node is configured."; + description + "Maximum number of prefixes to accept from this + peer"; + leaf prefix-limit { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Maximum prefixes limit"; + } + leaf warning-percentage { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Threshold value (%) at which to generate a + warning message."; + } + leaf warning-only { + type boolean; + mandatory true; + description + "TRUE to only give a warning message when limit + is exceeded. FALSE to accept max prefix limit + only."; + } + leaf restart-time { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Restart interval"; + } + leaf discard-extra-paths { + type boolean; + mandatory true; + description + "Discard extra paths when limit is exceeded"; + } + } + } + + grouping DISTANCE { + description + "Common node of global-af, vrf-global-af"; + container distance { + presence "Indicates a distance node is configured."; + description + "Define an administrative distance"; + leaf external-routes { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Distance for routes external to the AS"; + } + leaf internal-routes { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Distance for routes internal to the AS"; + } + leaf local-routes { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Distance for local routes"; + } + } + } + + grouping UPDATE-SOURCE-INTERFACE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf update-source-interface { + type xr:Interface-name; + description + "Select an interface to configure"; + } + } + + grouping MULTI-PATH-AS-PATH-IGNORE-ONWARDS { + description + "Common node of global, vrf-global"; + leaf multi-path-as-path-ignore-onwards { + type empty; + description + "Change default multi-route selection criteria to + ignore everything onwards as-path check"; + } + } + + grouping PROPAGATE-DMZ-LINK-BANDWIDTH { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf propagate-dmz-link-bandwidth { + type boolean; + description + "TRUE to propagate DMZ link bandwidth. FALSE to + not propagate and to prevent inheritance from a + parent"; + } + } + + grouping ADVERTISE-ADDITIONAL-PATHS-RECEIVE-CAPABILITY { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf advertise-additional-paths-receive-capability { + type dt1:Bgp-nbr-af-cap-additional-paths-cfg; + description + "Advertise additional paths Receive capability"; + } + } + + grouping DISABLE-AUTO-SOFT-RESET { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of global + , vrf-global"; + leaf disable-auto-soft-reset { + type empty; + description + "Disable automatic soft peer reset on policy + reconfiguration"; + } + } + + grouping MSG-LOG-IN { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container msg-log-in { + description + "Message log inbound"; + leaf msg-buf-count { + type uint32 { + range "1..500"; + } + description + "Inbound message log buffer size"; + } + leaf msg-log-disable { + type boolean; + description + "Disable inbound message logging"; + } + leaf msg-log-inherit-disable { + type boolean; + description + "TRUE, to prevent this entity from having a + inbound message logging if parent has one"; + } + } + } + + grouping DISABLE-ENFORCE-FIRST-AS { + description + "Common node of global, vrf-global"; + leaf disable-enforce-first-as { + type empty; + description + "Disable enforce the first AS for EBGP routes"; + } + } + + grouping ROUTE-TARGET-TABLE { + description + "Common node of import-route-targets, + export-route-targets"; + container route-targets { + description + "Route target table"; + list route-target { + must "as-or-four-byte-as or ipv4-address" { + description + "AS-or-FourByteAS or IPV4Address must be + present."; + } + key "type"; + description + "Configured Route target Entry"; + leaf type { + type Bgp-vrf-route-target; + description + "Type of RT"; + } + list as-or-four-byte-as { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + key "as-xx as as-index stitching-rt"; + description + "as or four byte as"; + leaf as-xx { + type uint32 { + range "0"; + } + description + "AS number"; + } + leaf as { + type uint32 { + range "1..4294967295"; + } + description + "AS number"; + } + leaf as-index { + type Route-target-as-index; + description + "AS number Index"; + } + leaf stitching-rt { + type uint32 { + range "0..1"; + } + description + "Stitching RT"; + } + } + list ipv4-address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + key "address address-index stitching-rt"; + description + "ipv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf address-index { + type Route-target-addr-index; + description + "IP address Index"; + } + leaf stitching-rt { + type uint32 { + range "0..1"; + } + description + "Stitching RT"; + } + } + } + } + } + + grouping REMOTE-AS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container remote-as { + description + "Set remote AS"; + leaf as-xx { + type dt1:Bgp-as-range; + description + "xx of AS number xx.yy"; + } + leaf as-yy { + type dt1:Bgp-as-range; + description + "yy of AS number xx.yy"; + } + } + } + + grouping ADDITIONAL-PATHS-SEND { + description + "Common node of global-af, vrf-global-af"; + leaf additional-paths-send { + type dt1:Bgp-af-additional-paths-cfg; + description + "Advertise additional paths Send capability"; + } + } + + grouping UPDATE-IN-FILTERING { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container update-in-filtering { + description + "Inbound update filtering"; + container update-in-filtering-message-buffers { + presence "Indicates a update-in-filtering-message-buffers node is configured."; + description + "Message buffers to store filtered updates"; + leaf number-of-buffers { + type uint32 { + range "0..25"; + } + mandatory true; + description + "Number of message buffers"; + } + leaf non-circular-buffer { + type boolean; + mandatory true; + description + "TRUE to configure non-circular buffer"; + } + } + leaf enable { + type empty; + description + "Configure inbound update filtering"; + } + leaf update-in-filtering-attribute-filter-group { + type string; + description + "Attribute-filter group name for update + filtering"; + } + leaf update-in-filtering-syslog-disable { + type empty; + description + "Disable inbound update filtering syslog + messages"; + } + } + } + + grouping OPTIMAL-ROUTE-REFLECTION-GROUP-TABLE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-groupCommon node of + global-af, vrf-global-af"; + container optimal-route-reflection-groups { + description + "Table of multiple ORR Groups"; + list optimal-route-reflection-group { + key "group-name"; + description + "Optimal Route Reffelction group. Each such + group is equivalent to an IGP area"; + leaf group-name { + type xr:Cisco-ios-xr-string; + description + "Name of the ORR group"; + } + leaf primary-root-address { + type inet:ip-address-no-zone; + description + "Primary Root for the ORR group"; + } + leaf secondary-root-address { + type inet:ip-address-no-zone; + description + "Secondary Root for the ORR group"; + } + leaf tertiary-root-address { + type inet:ip-address-no-zone; + description + "Tertiary Root for the ORR group"; + } + } + } + } + + grouping SHUTDOWN { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf shutdown { + type boolean; + description + "TRUE to shutdown this entity, FALSE to prevent + this entity from being shutdown even if the + parent is."; + } + } + + grouping BMP-ACTIVATE-TABLE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container bmp-activates { + description + "Enable BMP logging for this neighbor"; + list bmp-activate { + key "server-id"; + description + "Enable BMP logging for this particular server"; + leaf server-id { + type uint32 { + range "1..8"; + } + description + "BMP Server ID"; + } + } + } + } + + grouping SLOW-PEER { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container slow-peer { + description + "Configure this neighbor as slow-peer"; + leaf mode { + type Bgp-slow-peer-mode; + description + "Static or Dynamic slow-peer"; + } + leaf threshold { + type Bgp-slow-peer-threshold-range; + units "second"; + description + "Threshold (in seconds) to detect this neighbor + as slow-peer"; + } + leaf disable { + type boolean; + description + "TRUE: To disable dynamic slow-peer, FALSE: To + enable dynamic slow-peer"; + } + } + } + + grouping ADVERTISE-VRF-IMP-DISABLE-V4 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-vrf-imp-disable-v4 { + description + "Disable Advertise Of VRF ReImported Routes"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf adv-option { + type Bgp-reorg-opt; + description + "Advertise option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping ADVERTISE-VRF-IMP-DISABLE-V6 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-vrf-imp-disable-v6 { + description + "Disable Advertise Of VRF ReImported Routes"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf adv-option { + type Bgp-reorg-opt; + description + "Advertise option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping SITE-OF-ORIGIN { + description + "Common node of neighbor-group-af, vrf-neighbor-af + , af-group-af"; + container site-of-origin { + description + "Site-of-Origin extended community associated + with the neighbor"; + leaf type { + type Bgp-site-of-origin; + description + "Type of Extended community"; + } + leaf as-xx { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type dt1:Bgp-as-range; + description + "AS number"; + } + leaf as { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type dt1:Bgp-as-range; + description + "AS number"; + } + leaf as-index { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type dt1:Bgp-extcomm-asn-index; + description + "AS number Index"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf address-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type dt1:Bgp-extcomm-v4-addr-index; + description + "IP address Index"; + } + } + } + + grouping ROUTE-POLICY-OUT { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf route-policy-out { + type string; + description + "Route policy name to apply to outbound routes"; + } + } + + grouping SEGMENT-ROUTING { + description + "Common node of global-af, vrf-global-af"; + container segment-routing { + description + "Segment-routing Configurations"; + container srv6 { + description + "SRv6 Configurations"; + container srv6sid-allocation-mode { + presence "enable srv6sid-allocation-mode"; + description + "BGP SRv6 SID allocation mode"; + leaf sid-allocation-mode { + type string; + description + "SID allocation mode: per-ce Set per CE SID + mode,per-vrf Set per VRF SID mode"; + } + leaf route-policy { + type string; + description + "Route policy to configure SRv6 mode and + locator"; + } + } + leaf enable { + type empty; + description + "Enable SRv6 configuration submode"; + } + leaf locator-name { + type string; + description + "Configure Locator name for SID allocation"; + } + } + } + } + + grouping ADVERTISE-V4 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-v4 { + description + "Advertise Translated Routes to the peer"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf reorg-option { + type Bgp-reorg-opt; + description + "Reorigination option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping ADVERTISE-V6 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-v6 { + description + "Advertise Translated Routes to the peer"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf reorg-option { + type Bgp-reorg-opt; + description + "Reorigination option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping NEXT-HOP-VAL-SRTE { + description + "Common node of global, vrf-global"; + leaf next-hop-val-srte { + type empty; + description + "Enable BGP next-hop SR Policy reachability + validation for Extcom color paths"; + } + } + + grouping DEFAULT-ORIGINATE { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container default-originate { + description + "Originate default route to this neighbor"; + leaf enable { + type boolean; + default "false"; + description + "FALSE to prevent default-originate from, being + inherited from a parent. TRUE otherwise."; + } + leaf route-policy-name { + type string; + description + "Route policy name to specify criteria to + originate default."; + } + } + } + + grouping OPTIMAL-ROUTE-REFLECTION-GROUP-APPLY-TABLE { + description + "Common node of global-af, vrf-global-af"; + container optimal-route-reflection-group-applies { + description + "Table of multiple ORR groups"; + list optimal-route-reflection-group-apply { + key "group-name"; + description + "Optimal Route Reffelction group. Each such + group is equivalent to an IGP area"; + leaf group-name { + type xr:Cisco-ios-xr-string; + description + "Name of the ORR group"; + } + } + } + } + + grouping IDLE-WATCH-TIME { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf idle-watch-time { + type uint32 { + range "30..1800"; + } + units "second"; + description + "Time to wait for deleteing IDLE state Dynamic + peer"; + } + } + + grouping TIMERS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container timers { + description + "BGP per neighbor timers."; + leaf keepalive-interval { + type uint32 { + range "0..65535"; + } + default "60"; + description + "Keepalive interval"; + } + leaf hold-time { + type uint32 { + range "0..65535"; + } + default "180"; + description + "Hold time. Specify 0 to disable + keepalives/hold time"; + } + leaf min-accept-hold-time { + type uint32 { + range "0..65535"; + } + default "3"; + description + "Minimum acceptable hold time. Specify 0 to + disable keepalives/hold time"; + } + } + } + + grouping NEXT-HOP-MPLS-FWD-IBGP { + description + "Common node of global, vrf-global"; + leaf next-hop-mpls-fwd-ibgp { + type empty; + description + "Enable mpls forwarding path for ibgp learnt + nexthops"; + } + } + + grouping DISABLE-FAST-EXTERNAL-FALLOVER { + description + "Common node of global, vrf-global"; + leaf disable-fast-external-fallover { + type empty; + description + "Disable immediate reset session if a link to a + directly connected external peer goes down"; + } + } + + grouping SEND-COMMUNITY-EBGP { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf send-community-ebgp { + type boolean; + description + "TRUE to send communities to the external + neighbor/neighbor-group/af-group. FALSE not to + send and to prevent inheritance from a parent"; + } + } + + grouping ADDITIONAL-PATHS-RECEIVE-CAPABILITY { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf additional-paths-receive-capability { + type dt1:Bgp-nbr-cap-additional-paths-cfg; + description + "Advertise additional paths Receive capability"; + } + } + + grouping SEND-EXT-COMMUNITY-EBGP { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf send-ext-community-ebgp { + type boolean; + description + "TRUE to send extended communities to the + external neighbor/neighbor-group/af-group. + FALSE not to send and to prevent inheritance + from a parent"; + } + } + + grouping AF-GROUP { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af"; + leaf af-group { + type string; + description + "Inherit configuration for this address-family + from an AF-group"; + } + } + + grouping NEXT-HOP-RESOLUTION-PREFIX-LENGTH-MINIMUM-IPV6 { + description + "Common node of global-af, vrf-global-af"; + leaf next-hop-resolution-prefix-length-minimum-ipv6 { + type uint32 { + range "0..128"; + } + default "0"; + description + "Minimum prefix-length for nexthop resolution"; + } + } + + grouping ROUTE-POLICY-IN { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf route-policy-in { + type string; + description + "Route policy name to apply to inbound routes"; + } + } + + grouping LABEL-MODE { + description + "Common node of global-af, vrf-global-af"; + container label-mode { + presence "enable label-mode"; + description + "BGP 6PE/MPLS-VPN label allocation mode"; + leaf label-allocation-mode { + type string; + description + "Label allocation mode: per-ce Set per CE label + mode, per-vrf Set per VRF label mode, + per-prefix Set per Prefix label mode (for + MPLS-VPN only)"; + } + leaf route-policy-name { + type string; + description + "Label mode route policy name"; + } + } + } + + grouping APP-ROUTE-TABLE { + description + "Common node of global-af, vrf-global-af"; + container application-routes { + description + "Redistribute information for Application routes."; + list application-route { + key "instance-name"; + description + "Redistribute application routes"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OnePK application name"; + } + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Not Applicable"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + } + + grouping NEXT-HOP-VAL-DISABLE { + description + "Common node of global, vrf-global"; + leaf next-hop-val-disable { + type empty; + description + "Disable BGP next-hop RIB reachability validation + for Extcomm color paths"; + } + } + + grouping DEFAULT-INFO-ORIGINATE { + description + "Common node of global, vrf-global"; + leaf default-info-originate { + type empty; + description + "Control distribution of default information"; + } + } + + grouping NEXTHOP-CHECK-DISABLE { + description + "Common node of global-af, vrf-global-af"; + leaf nexthop-check-disable { + type empty; + description + "Disable multipath nexthop check"; + } + } + + grouping ENFORCE-FIRST-AS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf enforce-first-as { + type boolean; + description + "TRUE to enforce first AS; FALSE to not enforce + first AS."; + } + } + + grouping SOFT-RECONFIGURATION { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container soft-reconfiguration { + description + "Enable/disable inbound soft reconfiguration for + this neighbor/neighbor-group/af-group"; + leaf inbound-soft { + type boolean; + default "false"; + description + "FALSE to prohibit inbound soft reconfiguration. + TRUE otherwise."; + } + leaf soft-always { + type boolean; + default "false"; + description + "TRUE to always use soft reconfig, even if route + refresh is supported. FALSE otherwise."; + } + leaf rpki-options { + type Bgp-rpki-soft-reconf-cfg; + default "rpki-default-option"; + description + "Rpki tested ordropped paths should be stored"; + } + } + } + + grouping ADVERTISE-ENTROPY-LABEL-DISABLE { + description + "Common node of neighbor-group-af, neighbor-af, + af-group-af"; + leaf advertise-entropy-label-disable { + type empty; + description + "Disable propagation of entropy label to this + peer"; + } + } + + grouping NEIGHBOR-GRACEFUL-RESTART { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf neighbor-graceful-restart { + type Bgp-nbrgr; + description + "TRUE to Enable graceful restart supportfor + neighbor. FALSE to disable graceful restart + support for neighbor."; + } + } + + grouping ADVERTISE-DEF-IMP-DISABLE-V4 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-def-imp-disable-v4 { + description + "Disable Advertise Of Default VRF Imported Routes"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf adv-option { + type Bgp-reorg-opt; + description + "Advertise option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping ADVERTISE-DEF-IMP-DISABLE-V6 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-def-imp-disable-v6 { + description + "Disable Advertise Of Default VRF Imported Routes"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf adv-option { + type Bgp-reorg-opt; + description + "Advertise option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping DEFAULT-ROUTEPOLICY-OUT { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf default-routepolicy-out { + type Bgp-default-policy; + description + "Default policy to be applied if no policy + definition in inbound policy chain is satisfied"; + } + } + + grouping LOCAL-ADDRESS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container local-address { + description + "Local ip address"; + leaf local-address-disable { + type boolean; + description + "TRUE to prevent this entity from having a local + address if the parent has one.FALSE to specify + local ip address"; + } + leaf local-ip-address { + when "../local-address-disable = 'false'" { + description + "../LocalAddressDisable = false"; + } + type inet:ip-address-no-zone; + description + "Local ip address for neighbor"; + } + } + } + + grouping EVENT-PREFIX-ROUTE-POLICY { + description + "Common node of global-af, vrf-global-af"; + leaf event-prefix-route-policy { + type string; + description + "Route Policy to mark prefixes to be traced"; + } + } + + grouping AS-OVERRIDE { + description + "Common node of global-af, vrf-global-afCommon + node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf as-override { + type boolean; + default "true"; + description + "TRUE to override matching AS-number while + sending update. FALSE to prevent as-override + from being inherited from the parent"; + } + } + + grouping IGNORE-CONNECTED-CHECK-EBGP { + description + "Common node of global-af, vrf-global-afCommon + node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of + neighbor-group, neighbor, vrf-neighbor, + session-group"; + leaf ignore-connected-check-ebgp { + type boolean; + description + "TRUE to disable the connected nexthop check for + this peer.FALSE to enable the connected nexthop + check for this peer."; + } + } + + grouping REMOTE-AS-LIST { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf remote-as-list { + type string; + description + "Remote-as-list group name"; + } + } + + grouping SEND-MULTICAST-ATTR { + description + "Common node of neighbor-group-af, neighbor-af, + af-group-af"; + leaf send-multicast-attr { + type Bgp-send-mcast-attr-cfg; + description + "Config send multicast attribute for this + neighbor"; + } + } + + grouping ENCAPSULATION-TYPE { + description + "Common node of neighbor-group-af, neighbor-af, + af-group-afCommon node of neighbor-group-af, + neighbor-af, af-group-af"; + leaf encapsulation-type { + type Bgp-af-encapsulation; + description + "Encapsulation type for this neighbor"; + } + } + + grouping LOCAL-ADDRESS-SUB-NET { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container local-address-sub-net { + description + "Local Address subnet of routing updates"; + leaf local-addresss-subnet { + type inet:ip-address-no-zone; + description + "local address subnet ip address "; + } + leaf prefix-len { + type uint32 { + range "0..128"; + } + description + "prefix length"; + } + } + } + + grouping ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V4 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-bridge-domain-imp-disable-v4 { + description + "Disable Advertise Of VRF EVPN Extranet Imported + Routes"; + leaf af-name { + type dt1:Bgp-address-family; + must "../adv-option and ../rt-type"; + description + "Address family"; + } + leaf adv-option { + type Bgp-reorg-opt; + must "../af-name and ../rt-type"; + description + "Advertise option"; + } + leaf rt-type { + type Bgp-adv-rt; + must "../af-name and ../adv-option"; + description + "RT type"; + } + } + } + + grouping ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V6 { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-bridge-domain-imp-disable-v6 { + description + "Disable Advertise Of VRF EVPN Extranet Imported + Routes"; + leaf af-name { + type dt1:Bgp-address-family; + must "../adv-option and ../rt-type"; + description + "Address family"; + } + leaf adv-option { + type Bgp-reorg-opt; + must "../af-name and ../rt-type"; + description + "Advertise option"; + } + leaf rt-type { + type Bgp-adv-rt; + must "../af-name and ../adv-option"; + description + "RT type"; + } + } + } + + grouping ADVERTISE-PERMANENT-NETWORK { + description + "Common node of neighbor-group-af, neighbor-af, + af-group-af"; + leaf advertise-permanent-network { + type empty; + description + "Advertise Permanent Networks to the peer"; + } + } + + grouping BEST-PATH-COST-COMMUNITY { + description + "Common node of global, vrf-global"; + leaf best-path-cost-community { + type empty; + description + "Change default route selection criteria to + ignore cost community comparison"; + } + } + + grouping RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf rpki-bestpath-origin-as-allow-invalid { + type empty; + description + "RPKI bestpath origin-AS allow invalid"; + } + } + + grouping BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of + neighbor-group, neighbor, vrf-neighbor, + session-group"; + leaf rpki-bestpath-origin-as-allow-invalid { + type empty; + description + "RPKI bestpath origin-AS allow invalid"; + } + } + + grouping BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID-MP { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of + neighbor-group, neighbor, vrf-neighbor, + session-groupCommon node of global-af, + vrf-global-af"; + leaf rpki-bestpath-origin-as-allow-invalid { + type empty; + description + "RPKI bestpath origin-AS allow invalid"; + } + } + + grouping NEIGHBOR-GRACEFUL-RESTART-TIME { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf neighbor-graceful-restart-time { + type uint32 { + range "1..4095"; + } + units "second"; + default "120"; + description + "Restart time advertised to neighbor"; + } + } + + grouping TOS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container tos { + description + "TOS (Type Of Service)"; + leaf type { + type dt1:Bgp-tos; + description + "Set type of service"; + } + leaf value { + type dt1:Bgp-precedence-dscp; + description + "TOS value to set"; + } + } + } + + grouping NEIGHBOR-CLUSTER-ID { + description + "Common node of neighbor-group, neighbor, + session-group"; + container neighbor-cluster-id { + description + "Neighbor Cluster-id"; + leaf cluster-id-number { + type uint32 { + range "1..4294967295"; + } + description + "Route-Reflector Cluster ID as 32 bit quantity"; + } + leaf cluster-id-address { + type inet:ipv4-address-no-zone; + description + "Route-Reflector Cluster ID in IPV4 address + format"; + } + } + } + + grouping ACTIVATE { + description + "Common node of neighbor-af, vrf-neighbor-af, + neighbor-group-af"; + leaf activate { + type empty; + description + "Activate an address family for this neighbor. + Deletion of this object causes deletion of all + the objects under + NeighborAF/VRFNeighborAF/NeighborGroupAF + associated with this object."; + } + } + + grouping NEXT-HOP-SELF { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf next-hop-self { + type boolean; + description + "Disable the next hop calculation and insert + your own address in the nexthop field of + advertised routes you learned from the neighbor."; + } + } + + grouping ALLOW-AS-IN { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf allow-as-in { + type uint32 { + range "1..10"; + } + default "3"; + description + "Allow as-path with my AS present in it"; + } + } + + grouping BEST-EXTERNAL { + description + "Common node of global-af, vrf-global-af"; + container best-external { + description + "Enable Bestexternal config"; + leaf enable { + type boolean; + description + "TRUE to enable BE FALSE to disable BE + inheritance from a parent"; + } + leaf labeled-unicast { + type boolean; + description + "Limit Best-External to Labeled-Unicast"; + } + } + } + + grouping ATTRIBUTE-DOWNLOAD { + description + "Common node of global-af, vrf-global-af"; + leaf attribute-download { + type empty; + description + "Attribute download configuration"; + } + } + + grouping AO-KEYCHAIN { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container ao-keychain { + description + "Set or disable AO based authentication"; + leaf ao-keychain-disable { + type boolean; + description + "TRUE to prevent this entity from having AO + keychain based authentication even if the + parent has one.FALSE to enable AO keychain + based authentication"; + } + leaf ao-keychain-name { + when "../ao-keychain-disable = 'false'" { + description + "../AOKeychainDisable = false"; + } + type string; + description + "Name of the AO keychain associated with this + neighbor"; + } + leaf ao-include-tcp-options { + when "../ao-keychain-disable = 'false'" { + description + "../AOKeychainDisable = false"; + } + type boolean; + description + "Include TCP options header with AO"; + } + leaf ao-accept-mismatch-connection { + when "../ao-keychain-disable = 'false'" { + description + "../AOKeychainDisable = false"; + } + type boolean; + description + "Accept new connections even though AO + mismatched"; + } + } + } + + grouping BEST-PATH-SR-POLICY-ONLY-PATH { + description + "Common node of global, vrf-global"; + leaf best-path-sr-policy-only-path { + type Bgp-best-path-sr-policy-path; + description + "Prefer or Force SR policy paths for bestpath + selection"; + } + } + + grouping ADVERTISE-ADDITIONAL-PATHS-SEND-CAPABILITY { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf advertise-additional-paths-send-capability { + type dt1:Bgp-nbr-af-cap-additional-paths-cfg; + description + "Advertise additional paths Send capability"; + } + } + + grouping ADDITIONAL-PATHS-SELECTION { + description + "Common node of global-af, vrf-global-af"; + container additional-paths-selection { + description + "Configure additional paths selection"; + leaf selection { + type dt1:Bgp-af-additional-paths-cfg; + description + "Enable/disable selection "; + } + leaf route-policy-name { + type string; + description + "Route policy for selection"; + } + } + } + + grouping NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-CAPABLE { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf neighbor-af-long-lived-graceful-restart-capable { + type boolean; + default "false"; + description + "TRUE to treat neighbor as Long-lived + Graceful-restart capable. FALSE to rely on + capability negotiation."; + } + } + + grouping BEST-PATH-AS-MULTIPATH-RELAX { + description + "Common node of global, vrf-global"; + leaf best-path-as-multipath-relax { + type empty; + description + "Change default multi-route selection criteria to + relax as-path checking - only require same + aspath length"; + } + } + + grouping UNSAFE-EBGP-POLICY { + description + "Common node of global, vrf-global"; + leaf unsafe-ebgp-policy { + type empty; + description + "If eBGP neighbor is configured without a + route-policy,the routes from that neighbor are + not accepted by default.This knob overrides the + default behavior. When configured,routes from + the eBGP neighbors with no policy are accepted."; + } + } + + grouping GLOBAL-TIMERS { + description + "Common node of global, vrf-global"; + container global-timers { + description + "Adjust routing timers."; + leaf keepalive { + type uint32 { + range "0..65535"; + } + units "second"; + default "60"; + description + "Keepalive interval (seconds)"; + } + leaf hold-time { + type uint32 { + range "0..65535"; + } + units "second"; + default "180"; + description + "Hold time (seconds). Specify 0 to disable + keepalives/hold time"; + } + leaf min-accept-hold-time { + type uint32 { + range "0..65535"; + } + units "second"; + default "3"; + description + "Minimum acceptable hold time (seconds). Specify + 0 to disable keepalives/hold time"; + } + } + } + + grouping NEIGHBOR-GROUP-ADD-MEMBER { + description + "Common node of neighbor, vrf-neighbor"; + leaf neighbor-group-add-member { + type string; + description + "Inherit configuration from a neighbor-group"; + } + } + + grouping MOBILE-ROUTES { + description + "Common node of global-af, vrf-global-af"; + container mobile-routes { + presence "enable mobile-routes"; + description + "Redistribute mobile routes"; + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Not Applicable"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + + grouping LOCAL-PREFERENCE { + description + "Common node of global, vrf-global"; + leaf local-preference { + type uint32 { + range "0..4294967295"; + } + default "100"; + description + "Configure default local preference"; + } + } + + grouping CREATE { + description + "Common node of neighbor, vrf-neighbor, + neighbor-group, session-group"; + leaf create { + type empty; + description + "Create this group. Deletion of this object + causes deletion of all the objects under + NeighborGroup/SessionGroup associated with this + object."; + } + } + + grouping CLUSTER-ID-ALLOW-EQUAL { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf cluster-id-allow-equal { + type boolean; + description + "TRUE to disable cluster-id check for first id in + the cluster-id-list. FALSE to enable check for + all cluster-ids in the list."; + } + } + + grouping EBGP-SEND-DMZ-ENABLE-MODES { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf ebgp-send-dmz-enable-modes { + type Bgp-ebgp-send-dmz-enable-mode; + description + "Default mode, Cumulative mode or Disable to + prevent inheritance from a parent"; + } + } + + grouping SEND-SOCKET-BUFFER-SIZES { + description + "Common node of global, vrf-global"; + container send-socket-buffer-sizes { + description + "set socket parameters"; + leaf socket-send-size { + type uint32 { + range "4096..131072"; + } + units "byte"; + default "24576"; + description + "Send socket buffer size in bytes"; + } + leaf bgp-send-size { + type uint32 { + range "4096..131072"; + } + units "byte"; + default "4096"; + description + "BGP Write buffer size in bytes"; + } + } + } + + grouping RECEIVE-SOCKET-BUFFER-SIZES { + description + "Common node of global, vrf-globalCommon node of + global, vrf-global"; + container receive-socket-buffer-sizes { + description + "Set socket and BGP receive buffer sizes"; + leaf socket-receive-size { + type uint32 { + range "512..131072"; + } + units "byte"; + default "32768"; + description + "Receive socket buffer size in bytes"; + } + leaf bgp-receive-size { + type uint32 { + range "512..131072"; + } + units "byte"; + default "4096"; + description + "BGP Read buffer size in bytes"; + } + } + } + + grouping BFD-ENABLE-MODES { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf bfd-enable-modes { + type Bgp-bfd-enable-mode; + description + "Strict mode, Default mode or Disable to prevent + inheritance from a parent"; + } + } + + grouping RESET-WEIGHT-ON-IMPORT { + description + "Common node of global-af, vrf-global-af"; + leaf reset-weight-on-import { + type boolean; + description + "TRUE to reset weight on import. FALSE to not + reset and to prevent inheritance from a parent"; + } + } + + grouping AGGREGATE-ADDRESS-TABLE { + description + "Common node of global-af, vrf-global-af"; + container aggregate-addresses { + description + "Configure BGP aggregate entries"; + list aggregate-address { + key "aggregate-addr aggregate-prefix"; + description + "Aggregate address configuration"; + leaf aggregate-addr { + type inet:ip-address; + description + "Aggregate in prefix/length format (address + part)"; + } + leaf aggregate-prefix { + type uint16 { + range "0..128"; + } + description + "Aggregate in prefix/length format (prefix + part)"; + } + leaf generate-set-info { + type boolean; + description + "TRUE to generate AS set path information, + FALSE otherwise"; + } + leaf generate-confederation-set-info { + type boolean; + description + "TRUE to generate AS confederation set path + information, FALSE otherwise"; + } + leaf summary-only { + type boolean; + description + "TRUE to filter more specific routes from + updates, FALSEotherwise"; + } + leaf route-policy-name { + type string; + description + "Route policy on which to condition + advertisement, suppression, and attributes"; + } + } + } + } + + grouping EBGP-MULTIHOP { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container ebgp-multihop { + presence "Contains mandatory nodes that used to set default values"; + description + "Allow EBGP neighbors not on directly connected + networks"; + leaf max-hop-count { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Maximum hop count"; + } + leaf mpls-deactivation { + type boolean; + mandatory true; + description + "TRUE to not enable MPLS and NULL rewrite."; + } + } + } + + grouping NEIGHBOR-GRACEFUL-RESTART-STALEPATH-TIME { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf neighbor-graceful-restart-stalepath-time { + type uint32 { + range "1..4095"; + } + units "second"; + default "360"; + description + "Maximum time to wait for restart of GR capable + peer"; + } + } + + grouping NEXT-HOP-RES-ALLOW-DEFAULT { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-groupCommon node of global, + vrf-global"; + leaf next-hop-res-allow-default { + type empty; + description + "Enable path resolution for nexthops using + default route"; + } + } + + grouping BEST-PATH-AIGP-IGNORE { + description + "Common node of global, vrf-global"; + leaf best-path-aigp-ignore { + type empty; + description + "Change default route selection criteria to + ignore AIGP unless both paths whichare compared + have AIGP attribute"; + } + } + + grouping SESSION-GROUP-ADD-MEMBER { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor"; + leaf session-group-add-member { + type string; + description + "Inherit address-family independent config from a + session-group"; + } + } + + grouping BFD-MULTIPLIER { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf bfd-multiplier { + type uint32 { + range "2..16"; + } + description + "Detection multiplier for BFD sessions created by + BGP"; + } + } + + grouping FLOWSPEC-VALIDATION { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf flowspec-validation { + type Bgp-flowspec-validation-cfg; + description + "Config Flowspec validation for this neighbor"; + } + } + + grouping TTL-SECURITY { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf ttl-security { + type boolean; + description + "TRUE to enable BGP TTL Security. FALSE to not + enable it and to prevent inheritance from a + parent"; + } + } + + grouping BEST-PATH-MED-ALWAYS { + description + "Common node of global, vrf-global"; + leaf best-path-med-always { + type empty; + description + "Change default route selection criteria and + allow comparing of MED from different neighbors"; + } + } + + grouping MAX-PEERS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf max-peers { + type uint32 { + range "1..4096"; + } + description + "Set Maximum Peers in Dynamic Range"; + } + } + + grouping SEND-COMMUNITY-EBGP-GRACEFUL-SHUTDOWN { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf send-community-ebgp-graceful-shutdown { + type boolean; + description + "TRUE to send communities to the external + neighbor/neighbor-group/af-group. FALSE not to + send and to prevent inheritance from a parent"; + } + } + + grouping DISABLE-MSG-LOG { + description + "Common node of global, vrf-global"; + leaf disable-msg-log { + type empty; + description + "Disable inbound and outbound messagelogging for + all neighbors under the vrf"; + } + } + + grouping LOCAL-AS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container local-as { + description + "Specify a local-as number"; + leaf as-xx { + type dt1:Bgp-as-range; + must "../as-yy and not(../disable)"; + description + "xx of AS number xx.yy"; + } + leaf as-yy { + type dt1:Bgp-as-range; + must "../as-xx and not(../disable)"; + description + "yy of AS number xx.yy"; + } + leaf no-prepend { + type empty; + must "../as-xx and ../as-yy and not(../disable)"; + description + "Do not prepend Local AS to announcements from + this neighbor"; + } + leaf disable { + type empty; + must "not(../as-xx or ../as-yy or ../no-prepend or ../replace-as or ../dual-as)"; + description + "Disable Local AS and prevent it from being + inherited from a parent"; + } + leaf replace-as { + type empty; + must "../as-xx and ../as-yy and ../no-prepend and not(../disable)"; + description + "Prepend only Local AS to announcements from + this neighbor"; + } + leaf dual-as { + type empty; + must "../as-xx and ../as-yy and ../no-prepend and ../replace-as and not(../disable)"; + description + "Dual-AS mode"; + } + } + } + + grouping LISP-ROUTES { + description + "Common node of global-af, vrf-global-af"; + container lisp-routes { + presence "enable lisp-routes"; + description + "Redistribute lisp routes"; + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Not Applicable"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + + grouping SRV6VERSION4 { + description + "Common node of neighbor-group-af, neighbor-af, + af-group-af"; + leaf srv6version4 { + type boolean; + description + "TRUE to enable SRv6 version 4,FALSE to disable + SRv6 version 4"; + } + } + + grouping ADDITIONAL-PATHS-SEND-CAPABILITY { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf additional-paths-send-capability { + type dt1:Bgp-nbr-cap-additional-paths-cfg; + description + "Advertise additional paths Send capability"; + } + } + + grouping BEST-PATH-IGP-METRIC-IGNORE { + description + "Common node of global, vrf-global"; + leaf best-path-igp-metric-ignore { + type empty; + description + "Change default route selection criteria to + ignore IGP Metric "; + } + } + + grouping L2VPN-SIGNALLING { + description + "Common node of neighbor-group-af, neighbor-af, + af-group-af"; + leaf l2vpn-signalling { + type Bgp-signal; + description + "Disable signalling type on the peer"; + } + } + + grouping DAMPENING { + description + "Common node of global-af, vrf-global-af"; + container dampening { + presence "enable dampening"; + description + "Enable route-flap dampening"; + leaf half-life { + type uint32 { + range "1..45"; + } + units "minute"; + description + "Half-life time for the penalty (minutes)."; + } + leaf reuse-threshold { + type uint32 { + range "1..20000"; + } + description + "Value to start reusing a route."; + } + leaf suppress-threshold { + type uint32 { + range "1..20000"; + } + description + "Value to start suppressing a route."; + } + leaf suppress-time { + type uint32 { + range "1..255"; + } + units "second"; + description + "Maximum duration to suppress a stable route + (seconds)."; + } + leaf route-policy-name { + type string; + description + "Route policy to specify criteria for dampening. + This cannot be specified if any other + parameters are specified."; + } + } + } + + grouping ADVERTISE-LOCAL-LABELED-ROUTE-SAFI-UNICAST { + description + "Common node of global-af, vrf-global-af"; + leaf advertise-local-labeled-route-safi-unicast { + type dt1:Bgp-advertise-local-labeled-route-cfg; + description + "Enable/disable advertisement of routes with + local-label via Unicast SAFI"; + } + } + + grouping SUBSCRIBER-ROUTES { + description + "Common node of global-af, vrf-global-af"; + container subscriber-routes { + presence "enable subscriber-routes"; + description + "Redistribute subscriber routes"; + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Not Applicable"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + + grouping INTERNAL-VPN-CLIENT-IBGP-CE { + description + "Common node of neighbor-group, vrf-neighbor, + session-group"; + leaf internal-vpn-client-ibgp-ce { + type boolean; + description + "TRUE to preserve the CE path attributes.FALSE to + override CE path attributes."; + } + } + + grouping ACCEPT-ROUTE-LEGACY-RT { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf accept-route-legacy-rt { + type boolean; + description + "TRUE to configure as a accept-route-legacy-RT. + FALSE to prevent accept-route-legacy-RT from + being inherited."; + } + } + + grouping PERMANENT-NETWORK { + description + "Common node of global-af, vrf-global-af"; + leaf permanent-network { + type string; + description + "Route policy for permanent networks"; + } + } + + grouping ENABLE { + description + "Common node of global-af, vrf-global-af"; + leaf enable { + type empty; + description + "Enable the address family. Deletion of this + object causes deletion of all the objects under + GlobalAF/VRFGlobalAF associated with this object + ."; + } + } + + grouping EBGP-RECV-DMZ { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf ebgp-recv-dmz { + type boolean; + description + "TRUE to receive DMZ link bandwidth from ebgp + peer. FALSE to not receive from ebgp peer and to + prevent inheritance from a parent"; + } + } + + grouping ADVERTISEMENT-INTERVAL { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container advertisement-interval { + presence "Indicates a advertisement-interval node is configured."; + description + "Minimum interval between sending BGP routing + updates"; + leaf minimum-interval { + type uint32 { + range "0..600"; + } + units "second"; + mandatory true; + description + "Minimum advertisement interval time, secs part"; + } + leaf minimum-interval-msecs { + type uint32 { + range "0..999"; + } + units "millisecond"; + description + "Minimum advertisement interval time, msecs part"; + } + } + } + + grouping RPKI-ORIGIN-AS-VALIDITY-SIGNAL-IBGP { + description + "Common node of global-af, vrf-global-af"; + leaf rpki-origin-as-validity-signal-ibgp { + type empty; + description + "RPKI origin-AS validity signal ibgp"; + } + } + + grouping BGP-CFG-RPKI-ORIGIN-AS-VALIDITY-SIGNAL-IBGP { + description + "Common node of global-af, vrf-global-afCommon + node of global, vrf-global"; + leaf rpki-origin-as-validity-signal-ibgp { + type empty; + description + "RPKI origin-AS validity signal ibgp"; + } + } + + grouping NEIGHBOR-GRACEFUL-RESTART-HELPER-ONLY { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf neighbor-graceful-restart-helper-only { + type uint32 { + range "1..2"; + } + description + "TRUE to turn the Graceful restart in helper-mode + . False to disable Helper mode."; + } + } + + grouping IMPORT { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container import { + description + "Import Reorigination options for Routes from the + peer"; + leaf import-stitching { + type boolean; + description + "TRUE to Import with Stitching RTs, FALSE to + Import with normal RTs"; + } + leaf import-reoriginate { + type boolean; + description + "TRUE to Reoriginate imported routes, FALSE to + not Reoriginate imported routes - not supported"; + } + leaf import-reoriginate-stitching { + type boolean; + description + "TRUE to Reoriginate imported routes with + Stitching RTs, FALSE to Reoriginate imported + routes with normal RTs"; + } + } + } + + grouping ACCEPT-OWN { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf accept-own { + type boolean; + description + "Handle self-originated routes with Accept-Own + community. Valid for following neighbor + address-families: VPNv4Unicast, VPNv6Unicast."; + } + } + + grouping ADDITIONAL-PATHS-RECEIVE { + description + "Common node of global-af, vrf-global-af"; + leaf additional-paths-receive { + type dt1:Bgp-af-additional-paths-cfg; + description + "Advertise additional paths Receive capability"; + } + } + + grouping MPLS-ACTIVATED-INTERFACE-TABLE { + description + "Common node of global, vrf-global"; + container mpls-activated-interfaces { + description + "Configure list of MPLS activated interfaces"; + list mpls-activated-interface { + key "interface-name"; + description + "Configure a MPLS activated interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } + + grouping MULTIPATH { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf multipath { + type empty; + description + "Allow paths from this neighbor to be eligible + for selective multipath"; + } + } + + grouping EIGRP-ROUTE-TABLE { + description + "Common node of global-af, vrf-global-af"; + container eigrp-routes { + description + "Redistribute information for EIGRP routes."; + list eigrp-route { + key "instance-name"; + description + "Redistribute EIGRP routes"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "EIGRP router tag"; + } + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Redistribution type: 01 for internal routes, + 02 for external routes, Logical combinations + permitted."; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + } + + grouping ADVERTISE-EVPN-GATEWAY-IP-DISABLE { + description + "Common node of global-af, vrf-global-afCommon + node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf advertise-evpn-gateway-ip-disable { + type boolean; + description + "TRUE to Disable EVPN Gateway IP. FALSE to + prevent advertise-gateway-ip-disable from + getting inherited."; + } + } + + grouping OPTIMAL-ROUTE-REFLECTION-GROUP { + description + "Common node of global-af, vrf-global-afCommon + node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of + neighbor-group-af, neighbor-af, vrf-neighbor-af, + af-group-af"; + leaf optimal-route-reflection-group { + type string; + description + "Name of the ORR group this neighbor is going to + be part of"; + } + } + + grouping LOG-NEIGHBOR-STATE-CHANGE { + description + "Common node of global-af, vrf-global-afCommon + node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of + neighbor-group-af, neighbor-af, vrf-neighbor-af, + af-group-afCommon node of neighbor-group, + neighbor, vrf-neighbor, session-group"; + container log-neighbor-state-change { + description + "Logging neighbor state changes"; + leaf log-up-down-enable { + type boolean; + description + "Neighbor state change enable"; + } + leaf log-up-down-disable { + type boolean; + description + "Neighbor state change disable"; + } + leaf log-up-down-inherit-disable { + type boolean; + description + "TRUE, to prevent this entity from having state + change message logging if parent has one"; + } + } + } + + grouping ROUTE-REFLECTOR-CLIENT { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf route-reflector-client { + type boolean; + description + "TRUE to configure as a route-reflector-client. + FALSE to prevent route-reflector-client from + being inherited."; + } + } + + grouping ADVERTISE-LOCAL-LABELED-ROUTE { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf advertise-local-labeled-route { + type dt1:Bgp-advertise-local-labeled-route-cfg; + description + "Enable/disable advertisement of routes with + local-label"; + } + } + + grouping BEST-PATH-IGP-METRIC-SR-POLICY { + description + "Common node of global, vrf-global"; + leaf best-path-igp-metric-sr-policy { + type empty; + description + "Enable BGP next-hop metric inheritance from SR + policy"; + } + } + + grouping SESSION-OPEN-MODE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf session-open-mode { + type Bgp-tcp-mode; + default "either"; + description + "TCP mode to be used to establish BGP session"; + } + } + + grouping RPKI-ORIGIN-AS-VALIDATION-ENABLE { + description + "Common node of global-af, vrf-global-af"; + leaf rpki-origin-as-validation-enable { + type empty; + description + "RPKI origin-AS validation enable"; + } + } + + grouping UPDATE-OUT-ORIG-LOOP-CHK-DISABLE { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf update-out-orig-loop-chk-disable { + type empty; + description + "Enable/disable Originator loop check for this + neighbor-group/af-group"; + } + } + + grouping STATIC-ROUTES { + description + "Common node of global-af, vrf-global-af"; + container static-routes { + presence "enable static-routes"; + description + "Redistribute static routes"; + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Not Applicable"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + + grouping TCPMTU-DISCOVERY { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf tcpmtu-discovery { + type uint32 { + range "1..2"; + } + description + "1, to enable TCP Path MTU Discovery option on + peer's TCP session.2, to disable"; + } + } + + grouping PASSWORD { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container password { + description + "Set or disable a password"; + leaf password-disable { + type boolean; + description + "TRUE to prevent this entity from having a + password even if the parent has one. FALSEto + specify a password"; + } + leaf password { + when "../password-disable = 'false'" { + description + "../PasswordDisable = false"; + } + type xr:Proprietary-password; + description + "The neighbor password. Leave unspecified when + disabling the password."; + } + } + } + + grouping NEXT-HOP-UNCHANGED-MULTIPATH { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-groupCommon node of + neighbor-group-af, neighbor-af, af-group-af"; + leaf next-hop-unchanged-multipath { + type boolean; + description + "TRUE to disable overwriting of next hop for + multipaths. FALSE to prevent next-hop-unchanged + for multipaths."; + } + } + + grouping SUPPRESS-EXTENDED-NEXTHOP-ENCODING-CAPABILITY { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf suppress-extended-nexthop-encoding-capability { + type boolean; + description + "TRUE to suppress Extended Nexthop encoding + capability. FALSE to not suppress and to prevent + inheritance from a parent"; + } + } + + grouping NEXT-HOP-RESOLUTION-PREFIX-LENGTH-MINIMUM { + description + "Common node of global-af, vrf-global-af"; + leaf next-hop-resolution-prefix-length-minimum { + type uint32 { + range "0..128"; + } + default "0"; + description + "Minimum prefix-length for nexthop resolution"; + } + } + + grouping BEST-PATH-AS-PATH-LENGTH { + description + "Common node of global, vrf-global"; + leaf best-path-as-path-length { + type empty; + description + "Change default route selection criteria to + ignore AS path length"; + } + } + + grouping MSG-LOG-OUT { + description + "Common node of global, vrf-globalCommon node of + neighbor-group, neighbor, vrf-neighbor, + session-group"; + container msg-log-out { + description + "Message log outbound"; + leaf msg-buf-count { + type uint32 { + range "1..500"; + } + description + "Outbound message log buffer size"; + } + leaf msg-log-disable { + type boolean; + description + "Disable inbound message logging"; + } + leaf msg-log-inherit-disable { + type boolean; + description + "TRUE, to prevent this entity from having a + outbound message logging if parent has one"; + } + } + } + + grouping EPE-PEER-SET-IDENTITY-TABLE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container epe-peer-set-identities { + description + "Assign this neighbor to following peer-sets, + used for egress peer engineering"; + list epe-peer-set-identity { + key "set-identity"; + description + "Assign this neighbor to mentioned peer-set"; + leaf set-identity { + type uint32 { + range "1..255"; + } + description + "Identity of this EPE Peer-set"; + } + } + } + } + + grouping ENFORCE-MULTIPLE-LABELS { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf enforce-multiple-labels { + type boolean; + description + "TRUE to enforce multiple labels support."; + } + } + + grouping PREFIX-ORF-POLICY { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of + neighbor-group-af, neighbor-af, vrf-neighbor-af, + af-group-af"; + leaf prefix-orf-policy { + type string; + description + "Prefix ORF policy name for incoming updates"; + } + } + + grouping SOURCED-NETWORK-TABLE { + description + "Common node of global-af, vrf-global-af"; + container sourced-networks { + description + "Specify a network to announce via BGP"; + list sourced-network { + key "network-addr network-prefix"; + description + "Sourced network configuration"; + leaf network-addr { + type inet:ip-address; + description + "Network in prefix/length format (address part)"; + } + leaf network-prefix { + type uint16 { + range "0..128"; + } + description + "Network in prefix/length format (prefix part)"; + } + leaf backdoor { + type boolean; + description + "Specify a BGP backdoor route, default is FALSE"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + } + + grouping REMOVE-PRIVATE-AS-ENTIRE-AS-PATH { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container remove-private-as-entire-as-path { + presence "Indicates a remove-private-as-entire-as-path node is configured."; + description + "Remove private AS number from outbound updates"; + leaf enable { + type boolean; + mandatory true; + description + "TRUE to remove private AS from outbound updates + . FALSE to prevent remove-private-AS from + being inherited."; + } + leaf entire { + type boolean; + description + "TRUE to remove private AS from outbound updates + if all ASes in aspath areprivate. FALSE to + prevent remove-private-ASfrom being inherited."; + } + leaf internal { + type boolean; + description + "TRUE if we need to remove private AS from + internal neighbors only. False to disable this + knob"; + } + } + } + + grouping GRACEFUL-MAINTENANCE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container graceful-maintenance { + description + "Graceful Maintenance mode"; + container graceful-maintenance-bandwidth-aware { + description + "Bandwidth-Aware Graceful-Maintenance"; + leaf gshut-bandwidth-aware-disable { + type boolean; + description + "TRUE, to prevent inheritance of BandwithAware + from its parents. FALSE, otherwise"; + } + leaf mode-type { + type Bgp-bandwidth-aware-gshut-threshold-mode; + description + "Threshold Mode"; + } + leaf low-threshold { + type uint32 { + range "1..4294967295"; + } + description + "Low-Threshold Value"; + } + leaf high-threshold { + type uint32 { + range "1..4294967295"; + } + description + "Optional High-Threshold Value, set 0 to + ignore"; + } + } + container graceful-maintenance-local-preference { + description + "Set Local Preference to advertise routes with"; + leaf gshut-loc-pref-disable { + type boolean; + description + "TRUE, to prevent inheritance of Local Pref + value from its parents.FALSE, otherwise"; + } + leaf local-preference { + type uint32 { + range "0..4294967295"; + } + description + "Local Preference Value"; + } + } + container graceful-maintenance-as-prepends { + description + "Number of times to prepend local AS number to + the AS path"; + leaf gshut-prepends-disable { + type boolean; + description + "TRUE, to prevent inheritance of AS Prepends + value from its parents.FALSE, otherwise"; + } + leaf as-prepends { + type uint32 { + range "0..6"; + } + description + "number of times AS prepends"; + } + } + leaf enable { + type empty; + description + "Enter Graceful Maintenance mode to configure + parametrs"; + } + leaf graceful-maintenance-activate { + type boolean; + description + "Initiate the graceful shutdown procedure"; + } + } + } + + grouping NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-STALE-TIME { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container neighbor-af-long-lived-graceful-restart-stale-time { + description + "Maximum time to wait before purging long lived + routes"; + leaf stale-time-send { + type uint32 { + range "0..16777215"; + } + units "second"; + default "0"; + description + "Max time (seconds)"; + } + leaf stale-time-accept { + type uint32 { + range "0..16777215"; + } + units "second"; + default "0"; + description + "Max time (seconds)"; + } + } + } + + grouping BFD { + description + "Common node of global, vrf-global"; + container bfd { + description + "BFD configuration"; + leaf detection-multiplier { + type uint32 { + range "2..16"; + } + description + "Detection multiplier for BFD sessions created + by BGP"; + } + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval for BFD sessions created by BGP"; + } + } + } + + grouping ALLOCATE-LABEL { + description + "Common node of global-af, vrf-global-af"; + container allocate-label { + presence "enable allocate-label"; + description + "Label allocation policy"; + leaf all { + type boolean; + description + "Whether all nets should be labeled, default is + FALSE"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf un-labeled-path { + type boolean; + must "../all or ../route-policy-name"; + description + "Allocate label for unlabeled paths too"; + } + } + } + + grouping SEND-BUFFER-SIZE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container send-buffer-size { + description + "Set socket send buffer size and BGP write buffer + size"; + leaf socket-send-size { + type uint32 { + range "4096..131072"; + } + units "byte"; + default "24576"; + description + "Send socket buffer size in bytes"; + } + leaf bgp-send-size { + type uint32 { + range "4096..131072"; + } + units "byte"; + default "4096"; + description + "BGP write buffer size in bytes"; + } + } + } + + grouping BEST-PATH-MED-MISSING { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-groupCommon node of global, + vrf-global"; + leaf best-path-med-missing { + type empty; + description + "Treat missing MED as the least preferred one"; + } + } + + grouping SUPPRESS-ALL-CAPABILITIES { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf suppress-all-capabilities { + type boolean; + description + "TRUE to suppress all capabilities. FALSE to not + suppress and to prevent inheritance from a + parent"; + } + } + + grouping DEFAULT-WEIGHT { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-groupCommon node of + neighbor-group-af, neighbor-af, vrf-neighbor-af, + af-group-af"; + leaf default-weight { + type uint32 { + range "0..65535"; + } + description + "Set default weight for routes from this + neighbor/neighbor-group/af-group"; + } + } + + grouping SUPPRESS-FOUR-BYTE-AS-CAPABILITY { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf suppress-four-byte-as-capability { + type boolean; + description + "TRUE to suppress BGP 4-byte-as capability. + FALSE to not suppress it and to prevent + inheritance from a parent"; + } + } + + grouping LABELED-UNICAST-EQUIVALENT-FOR-INBOUND-UPDATES { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf labeled-unicast-equivalent-for-inbound-updates { + type boolean; + description + "TRUE to merge updates FALSE to not merge updates + and to prevent inheritance from a parent"; + } + } + + grouping EGRESS-PEER-ENGINEERING { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf egress-peer-engineering { + type boolean; + description + "TRUE to enable egress peer engineering FALSE to + disable egress peer engineering and to prevent + inheritance from a parent"; + } + } + + grouping BEST-PATH-CONFEDERATION-PATHS { + description + "Common node of global, vrf-global"; + leaf best-path-confederation-paths { + type empty; + description + "Change default route selection criteria and + allow the comparing of MED among confederation + paths"; + } + } + + grouping MULTI-PATH-USE-CLUSTER-LIST-LENGTH { + description + "Common node of global, vrf-global"; + leaf multi-path-use-cluster-list-length { + type empty; + description + "Change default multipath selection criteria to + consider Cluster-list length"; + } + } + + grouping DYNAMIC-MED-INTERVAL { + description + "Common node of global-af, vrf-global-af"; + leaf dynamic-med-interval { + type uint32 { + range "0..10"; + } + units "minute"; + default "10"; + description + "Update generation delay (in minutes) after a MED + change"; + } + } + + grouping REMOVE-PRIVATE-AS-ENTIRE-AS-PATH-INBOUND { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container remove-private-as-entire-as-path-inbound { + presence "Indicates a remove-private-as-entire-as-path-inbound node is configured."; + description + "Remove private AS number from inbound updates"; + leaf enable { + type boolean; + mandatory true; + description + "TRUE to remove private AS from inbound updates. + FALSE to prevent remove-private-AS from being + inherited."; + } + leaf entire { + type boolean; + description + "TRUE to remove private AS from inbound updates + if all ASes in aspath areprivate. FALSE to + prevent remove-private-ASfrom being inherited."; + } + } + } + + grouping RPKI-BESTPATH-USE-ORIGIN-AS-VALIDITY { + description + "Common node of global-af, vrf-global-af"; + leaf rpki-bestpath-use-origin-as-validity { + type empty; + description + "RPKI bestpath use origin-AS validity"; + } + } + + grouping BGP-CFG-RPKI-BESTPATH-USE-ORIGIN-AS-VALIDITY { + description + "Common node of global-af, vrf-global-afCommon + node of global, vrf-global"; + leaf rpki-bestpath-use-origin-as-validity { + type empty; + description + "RPKI bestpath use origin-AS validity"; + } + } + + grouping CONNECTED-ROUTES { + description + "Common node of global-af, vrf-global-af"; + container connected-routes { + presence "enable connected-routes"; + description + "Redistribute connected routes"; + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Not Applicable"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + + grouping IGP-REDIST-INTERNAL { + description + "Common node of global, vrf-global"; + leaf igp-redist-internal { + type empty; + description + "Allow redistribution of iBGP into IGPs + (dangerous)"; + } + } + + grouping AIGP-SEND-MED { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf aigp-send-med { + type Bgp-aigp-cfg; + description + "Enable/Disable sending AIGP in MED "; + } + } + + grouping AIGP { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf aigp { + type Bgp-aigp-cfg; + description + "Enable Accumulated IGP Metric for this neighbor."; + } + } + + grouping ADVERTISE-ORF { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf advertise-orf { + type Bgp-orf; + default "none"; + description + "Advertise ORF capability to the peer"; + } + } + + grouping BFD-MINIMUM-INTERVAL { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf bfd-minimum-interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval for BFD sessions created by BGP"; + } + } + + grouping AIGP-COST-COMMUNITY { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container aigp-cost-community { + description + "Send AIGP value in Cost Community. "; + leaf enable { + type boolean; + description + "TRUE to enable sending cost community, FALSE + otherwise "; + } + leaf cost-community-id { + when "../enable = 'true'" { + description + "../Enable = 'true'"; + } + type uint32 { + range "0..255"; + } + description + "Cost Community ID"; + } + leaf transitive { + when "../enable = 'true'" { + description + "../Enable = 'true'"; + } + type boolean; + description + "True to send transitive cost community FALSE + otherwise"; + } + leaf cost-community-poi-type { + when "../enable = 'true'" { + description + "../Enable = 'true'"; + } + type Bgp-aigp-cfg-poi; + description + "Cost Community POI"; + } + } + } + + grouping DISABLE-AS-PATH-LOOP-CHECK { + description + "Common node of global-af, vrf-global-af"; + leaf disable-as-path-loop-check { + type empty; + description + "Disable outbound AS Path loop check"; + } + } + + grouping DEFAULT-ROUTEPOLICY-IN { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf default-routepolicy-in { + type Bgp-default-policy; + description + "Default policy to be applied if no policy + definition in inbound policy chain is satisfied"; + } + } + + grouping BEST-PATH-ROUTER-ID { + description + "Common node of global, vrf-global"; + leaf best-path-router-id { + type empty; + description + "Change default route selection criteria and + compare router-id for identical EBGP paths"; + } + } + + grouping RIP-ROUTES { + description + "Common node of global-af, vrf-global-af"; + container rip-routes { + presence "enable rip-routes"; + description + "Redistribute RIP routes"; + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Not Applicable"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + + grouping DESCRIPTION { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + leaf description { + type string; + description + "Up to 80 characters describing this neighbor"; + } + } + + grouping ADVERTISE-L2VPN-EVPN { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container advertise-l2vpn-evpn { + description + "Advertise Translated Routes to the peer"; + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf reorg-option { + type Bgp-reorg-opt; + description + "Reorigination option"; + } + leaf rt-type { + type Bgp-adv-rt; + description + "RT type"; + } + } + } + + grouping KEYCHAIN { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container keychain { + description + "Set or disable keychain based authentication"; + leaf keychain-disable { + type boolean; + description + "TRUE to prevent this entity from having a + keychain based authentication even if the + parent has one.FALSE to specify a keychain name"; + } + leaf keychain-name { + when "../keychain-disable = 'false'" { + description + "../KeychainDisable = false"; + } + type string; + description + "Name of the keychain associated with neighbor"; + } + } + } + + grouping RECEIVE-BUFFER-SIZE { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container receive-buffer-size { + description + "Set socket receive buffer size and BGP read + buffer size"; + leaf socket-receive-size { + type uint32 { + range "512..131072"; + } + units "byte"; + default "32768"; + description + "Receive socket buffer size in bytes"; + } + leaf bgp-receive-size { + type uint32 { + range "512..131072"; + } + units "byte"; + default "4096"; + description + "BGP read buffer size in bytes"; + } + } + } + + grouping NEXT-HOP-UNCHANGED { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf next-hop-unchanged { + type boolean; + description + "TRUE to disable overwriting of next hop before + advertising to eBGP peers. FALSE to prevent + next-hop-unchanged from being inherited."; + } + } + + grouping OSPF-ROUTE-TABLE { + description + "Common node of global-af, vrf-global-af"; + container ospf-routes { + description + "Redistribute information for OSPF routes."; + list ospf-route { + key "instance-name"; + description + "Redistribute OSPF routes"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OSPF router tag"; + } + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Redistribution type: 01 for internal routes, + 02 for external routes of type 1, 04 for + external routes of type 2, 08 for NSSA + external routes of type 1, 10 for NSSA + external routes of type 2, 20 for external + routes, 40 for NSSA external routes. Logical + combinations permitted."; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + } + + grouping ROUTE-POLICY-RET { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container route-policy-ret { + description + "Apply route policy to retain the routes from a + down neighbor"; + leaf route-policy-name { + type string; + description + "Route policy name to apply to Retain routes"; + } + leaf stale-time { + type uint32 { + range "0..2147483647"; + } + description + "Configure a stale time after which retention + timer kicks in"; + } + } + } + + grouping ROUTER-ID { + description + "Common node of global, vrf-global"; + leaf router-id { + type inet:ipv4-address-no-zone; + default "0.0.0.0"; + description + "Configure Router-id"; + } + } + + grouping DEFAULT-METRIC { + description + "Common node of global, vrf-global"; + leaf default-metric { + type uint32 { + range "1..4294967295"; + } + description + "Default redistributed metric"; + } + } + + grouping REPLACE-PRIVATE-AS { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + container replace-private-as { + presence "Indicates a replace-private-as node is configured."; + description + "Replace private AS number from outbound updates"; + leaf enable { + type boolean; + mandatory true; + description + "TRUE to replace-private-AS from outbound + updates. FALSE to prevent replace-private-AS + from being inherited."; + } + leaf internal { + type boolean; + description + "TRUE if we need to replace private AS from + internal neighbors only. False to disable this + knob"; + } + } + } + + grouping RPKI-ORIGIN-AS-VALIDATION-DISABLE { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-af"; + leaf rpki-origin-as-validation-disable { + type empty; + description + "RPKI origin-AS validation disable"; + } + } + + grouping BGP-CFG-RPKI-ORIGIN-AS-VALIDATION-DISABLE { + description + "Common node of neighbor-group-af, neighbor-af, + vrf-neighbor-af, af-group-afCommon node of + neighbor-group, neighbor, vrf-neighbor, + session-group"; + leaf rpki-origin-as-validation-disable { + type empty; + description + "RPKI origin-AS validation disable"; + } + } + + grouping DISABLE-NEIGHBOR-LOGGING { + description + "Common node of global, vrf-global"; + leaf disable-neighbor-logging { + type empty; + description + "Disable neighbor change logging"; + } + } + + grouping TCPMSS { + description + "Common node of neighbor-group, neighbor, + vrf-neighbor, session-group"; + container tcpmss { + description + "TCP Maximum segment size"; + leaf tcpmss-disable { + type boolean; + description + "TRUE, to prevent inheritance ofTCP MSS + valuefrom its parents.FALSE, otherwise"; + } + leaf mss { + type uint32 { + range "68..10000"; + } + description + "Maximum Segment Size"; + } + } + } + + augment "/a1:vrfs/a1:vrf" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-rsi-cfg'"; + container bgp-global { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will + provide the compatible functionalities. BGP + related VRF Global config"; + container route-distinguisher { + description + "Route distinguisher"; + leaf type { + type Bgp-global-route-distinguisher; + description + "Type of RD"; + } + leaf as-xx { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type Bgp-global-as-range; + description + "AS number"; + } + leaf as { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type Bgp-global-as-range; + description + "AS number"; + } + leaf as-index { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type Bgp-global-extcomm-asn-index; + description + "ASN Index"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf address-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type Bgp-global-extcomm-v4-addr-index; + description + "IP address index"; + } + } + } + } + augment "/a2:snmp/a2:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container bgp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will + provide the compatible functionalities. + BGP4-MIB and CISCO-BGP4-MIB notification + configuration"; + container bgp4mib { + description + "Enable BGP4-MIB and CISCO-BGP4-MIB IPv4-only + notifications: bgpEstablishedNotification, + bgpBackwardTransNotification, + cbgpFsmStateChange, cbgpBackwardTransition, + cbgpPrefixThresholdExceeded, + cbgpPrefixThresholdClear."; + leaf enable { + type empty; + must "not(../up-down)"; + description + "Enable BGP4-MIB and CISCO-BGP4-MIB IPv4-only + notifications"; + } + leaf up-down { + type empty; + must "not(../enable)"; + description + "Enable BGP4-MIB and CISCO-BGP4-MIB IPv4-only + up/down notifications"; + } + } + container cisco-bgp4mib { + description + "Enable CISCO-BGP4-MIB v2 notifications: + cbgpPeer2EstablishedNotification, + cbgpPeer2BackwardTransNotification, + cbgpPeer2FsmStateChange, + cbgpPeer2BackwardTransition, + cbgpPeer2PrefixThresholdExceeded, + cbgpPeer2PrefixThresholdClear."; + leaf enable { + type empty; + must "not(../up-down)"; + description + "Enable CISCO-BGP4-MIB v2 notifications"; + } + leaf up-down { + type empty; + must "not(../enable)"; + description + "Enable CISCO-BGP4-MIB v2 up/down notifications"; + } + } + } + } + augment "/a1:vrfs/a1:vrf/a1:afs/a1:af" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-rsi-cfg'"; + container bgp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will + provide the compatible functionalities. BGP AF + VRF config"; + container import-route-targets { + description + "Import Route targets"; + uses ROUTE-TARGET-TABLE; + } + container export-route-targets { + description + "Export Route targets"; + uses ROUTE-TARGET-TABLE; + } + container vrf-to-global-export-route-policy { + presence "Indicates a vrf-to-global-export-route-policy node is configured."; + description + "Route policy for vrf to global export filtering"; + leaf route-policy-name { + type string; + mandatory true; + description + "Vrf to global export route policy"; + } + leaf allow-imported-vpn { + type boolean; + description + "TRUE: Enable imported VPN paths to be exported + to Default VRF; FALSE: Disable imported VPN + paths to be exported to Default VRF."; + } + } + container export-vrf-options { + description + "Export VRF options"; + leaf allow-imported-vpn { + type boolean; + description + "TRUE: Enable imported VPN paths to be exported + to non-default VRF; FALSE: Disable imported + VPN paths to be exported to non-default VRF."; + } + leaf disable-adv-source-vrf-vni { + type boolean; + description + "TRUE: Disallow advertisement of source vrf vni + for leaked paths; FALSE: Allow advertisement + of source vrf vni for leaked paths."; + } + leaf export-allow-backup { + type boolean; + description + "TRUE: Enable Leaking(export) of backup path; + FALSE: Disable Leaking(export) of backup path."; + } + leaf export-allow-best-external { + type boolean; + description + "TRUE: Enable Leaking(export) of best-external + path; FALSE: Disable Leaking(export) of + best-external path."; + } + } + container import-vrf-options { + description + "Import VRF options"; + leaf advertise-as-vpn { + type boolean; + description + "TRUE: Enable advertising imported paths to PEs + ; FALSE: Disable advertising imported paths to + PEs."; + } + leaf import-allow-backup { + type boolean; + description + "TRUE: Enable Import of backup path; FALSE: + Disable Import of backup path."; + } + leaf import-allow-best-external { + type boolean; + description + "TRUE: Enable Import of best-external path; + FALSE: Disable Import of best-external path."; + } + } + container global-to-vrf-import-route-policy { + presence "Indicates a global-to-vrf-import-route-policy node is configured."; + description + "Route policy for global to vrf import filtering"; + leaf route-policy-name { + type string; + mandatory true; + description + "Global to vrf import route policy"; + } + leaf advertise-as-vpn { + type boolean; + description + "TRUE Enable advertising imported paths to + PEsFALSE Disable advertising imported paths to + PEs"; + } + } + leaf export-route-policy { + type string; + description + "Route policy for export filtering"; + } + leaf import-route-policy { + type string; + description + "Route policy for import filtering"; + } + leaf import-from-bridge-domain { + type boolean; + description + "TRUE Enable advertising local EVPN paths to PEs + .FALSE Disable advertising local EVPN paths to + PEs."; + } + } + } + augment "/a1:global-af/a1:afs/a1:af" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-infra-rsi-cfg'"; + container bgp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will + provide the compatible functionalities. BGP AF + VRF config"; + container import-route-targets { + description + "Import Route targets"; + uses ROUTE-TARGET-TABLE; + } + container export-route-targets { + description + "Export Route targets"; + uses ROUTE-TARGET-TABLE; + } + container vrf-to-global-export-route-policy { + presence "Indicates a vrf-to-global-export-route-policy node is configured."; + description + "Route policy for vrf to global export filtering"; + leaf route-policy-name { + type string; + mandatory true; + description + "Vrf to global export route policy"; + } + leaf allow-imported-vpn { + type boolean; + description + "TRUE: Enable imported VPN paths to be exported + to Default VRF; FALSE: Disable imported VPN + paths to be exported to Default VRF."; + } + } + container export-vrf-options { + description + "Export VRF options"; + leaf allow-imported-vpn { + type boolean; + description + "TRUE: Enable imported VPN paths to be exported + to non-default VRF; FALSE: Disable imported + VPN paths to be exported to non-default VRF."; + } + leaf disable-adv-source-vrf-vni { + type boolean; + description + "TRUE: Disallow advertisement of source vrf vni + for leaked paths; FALSE: Allow advertisement + of source vrf vni for leaked paths."; + } + leaf export-allow-backup { + type boolean; + description + "TRUE: Enable Leaking(export) of backup path; + FALSE: Disable Leaking(export) of backup path."; + } + leaf export-allow-best-external { + type boolean; + description + "TRUE: Enable Leaking(export) of best-external + path; FALSE: Disable Leaking(export) of + best-external path."; + } + } + container import-vrf-options { + description + "Import VRF options"; + leaf advertise-as-vpn { + type boolean; + description + "TRUE: Enable advertising imported paths to PEs + ; FALSE: Disable advertising imported paths to + PEs."; + } + leaf import-allow-backup { + type boolean; + description + "TRUE: Enable Import of backup path; FALSE: + Disable Import of backup path."; + } + leaf import-allow-best-external { + type boolean; + description + "TRUE: Enable Import of best-external path; + FALSE: Disable Import of best-external path."; + } + } + container global-to-vrf-import-route-policy { + presence "Indicates a global-to-vrf-import-route-policy node is configured."; + description + "Route policy for global to vrf import filtering"; + leaf route-policy-name { + type string; + mandatory true; + description + "Global to vrf import route policy"; + } + leaf advertise-as-vpn { + type boolean; + description + "TRUE Enable advertising imported paths to + PEsFALSE Disable advertising imported paths to + PEs"; + } + } + leaf export-route-policy { + type string; + description + "Route policy for export filtering"; + } + leaf import-route-policy { + type string; + description + "Route policy for import filtering"; + } + leaf import-from-bridge-domain { + type boolean; + description + "TRUE Enable advertising local EVPN paths to PEs + .FALSE Disable advertising local EVPN paths to + PEs."; + } + } + } + leaf asn-format { + type Bgp-asn; + default "as-plain"; + description + "Autonomous system number format"; + } + container bgp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will + provide the compatible functionalities. BGP + configuration commands"; + list instance { + must "instance-as" { + description + "must be set."; + } + key "instance-name"; + description + "BGP instance configuration commands"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "Instance Name. For Default instance use - + default"; + } + list instance-as { + must "four-byte-as" { + description + "must be set."; + } + key "as"; + description + "Autonomous system"; + leaf as { + type dt1:Bgp-as-range; + description + "Higher 16 bits of 4-byte Autonomous system + number"; + } + list four-byte-as { + key "as"; + description + "4-byte Autonomous system"; + container vrfs { + description + "VRF config"; + list vrf { + key "vrf-name"; + description + "VRF config"; + container vrf-global { + description + "VRF attribute config"; + container route-distinguisher { + description + "Route distinguisher"; + leaf type { + type Bgp-route-distinguisher; + description + "Type of RD"; + } + leaf as-xx { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type dt1:Bgp-as-range; + description + "AS number"; + } + leaf as { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type dt1:Bgp-as-range; + description + "AS number"; + } + leaf as-index { + when "../type = 'as' or ../type = 'four-byte-as'" { + description + "../Type = AS or ../Type = FourByteAS"; + } + type dt1:Bgp-extcomm-asn-index; + description + "ASN Index"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf address-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type dt1:Bgp-extcomm-v4-addr-index; + description + "IP address index"; + } + } + container vrf-global-afs { + description + "Global VRF-specific configuration"; + list vrf-global-af { + key "af-name"; + description + "Global VRF AF-specific configuration"; + container mvpn { + description + "MVPN configurations"; + leaf single-forwarder-selection { + type Bgp-mvpn-sfs-select; + description + "Select MVPN single forwarder selection"; + } + } + container ebgp { + presence "Indicates a ebgp node is configured."; + description + "Use eBGP multipaths"; + leaf paths-value { + type uint32 { + range "2..32"; + } + mandatory true; + description + "Number of paths"; + } + leaf selective { + type boolean; + mandatory true; + description + "Allow multipaths only from marked + neighbors"; + } + } + container eibgp { + presence "Indicates a eibgp node is configured."; + description + "Use eiBGP multipaths"; + leaf paths-value { + type uint32 { + range "2..32"; + } + mandatory true; + description + "Number of paths"; + } + leaf selective { + type boolean; + mandatory true; + description + "Allow multipaths only from marked + neighbors"; + } + } + container ibgp { + presence "Indicates a ibgp node is configured."; + description + "Use iBGP multipaths"; + leaf paths-value { + type uint32 { + range "2..32"; + } + mandatory true; + description + "Number of paths"; + } + leaf unequal-cost { + type boolean; + mandatory true; + description + "Allow multipaths to have different IGP + metrics"; + } + leaf selective { + type boolean; + mandatory true; + description + "Allow multipaths only from marked + neighbors"; + } + leaf deterministic { + type empty; + description + "Select Multipaths deterministically + based on IGP metric followed by Age"; + } + } + leaf mpls-alloc-enable { + type boolean; + description + "MPLS alloc enable, use this for dual + mode srv6 and mpls"; + } + leaf rt-download { + type empty; + description + "Route-Target download configuration"; + } + leaf allow-vpn-default-originate { + type boolean; + description + "TRUE to send default orig route to VPN + neighborFALSE to not send default + originate route "; + } + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + uses RPKI-ORIGIN-AS-VALIDATION-ENABLE; + uses AGGREGATE-ADDRESS-TABLE; + uses DYNAMIC-MED-INTERVAL; + uses EVENT-PREFIX-ROUTE-POLICY; + uses DAMPENING; + uses ENABLE; + uses RIP-ROUTES; + uses LISP-ROUTES; + uses STATIC-ROUTES; + uses DISTANCE; + uses TABLE-POLICY; + uses APP-ROUTE-TABLE; + uses ATTRIBUTE-DOWNLOAD; + uses LABEL-MODE; + uses EIGRP-ROUTE-TABLE; + uses BEST-EXTERNAL; + uses NEXTHOP-CHECK-DISABLE; + uses SOURCED-NETWORK-TABLE; + uses RPKI-ORIGIN-AS-VALIDITY-SIGNAL-IBGP; + uses CONNECTED-ROUTES; + uses ADDITIONAL-PATHS-RECEIVE; + uses PERMANENT-NETWORK; + uses RPKI-BESTPATH-USE-ORIGIN-AS-VALIDITY; + uses ALLOCATE-LABEL; + uses ADDITIONAL-PATHS-SELECTION; + uses BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID-MP; + uses NEXT-HOP-RESOLUTION-PREFIX-LENGTH-MINIMUM; + uses RESET-WEIGHT-ON-IMPORT; + uses OSPF-ROUTE-TABLE; + uses ADDITIONAL-PATHS-SEND; + uses OPTIMAL-ROUTE-REFLECTION-GROUP-APPLY-TABLE; + uses ADVERTISE-LOCAL-LABELED-ROUTE-SAFI-UNICAST; + uses MOBILE-ROUTES; + uses DISABLE-AS-PATH-LOOP-CHECK; + uses NEXT-HOP-RESOLUTION-PREFIX-LENGTH-MINIMUM-IPV6; + uses OPTIMAL-ROUTE-REFLECTION-GROUP-TABLE; + uses SUBSCRIBER-ROUTES; + uses SEGMENT-ROUTING; + } + } + leaf exists { + type empty; + description + "Create this VRF. Deletion of this object + causes deletion of all the objects under + VRF associated with this object."; + } + uses ROUTER-ID; + uses DISABLE-ENFORCE-FIRST-AS; + uses BEST-PATH-COST-COMMUNITY; + uses BEST-PATH-AIGP-IGNORE; + uses BEST-PATH-IGP-METRIC-SR-POLICY; + uses NEXT-HOP-VAL-SRTE; + uses BEST-PATH-AS-PATH-LENGTH; + uses NEXT-HOP-VAL-DISABLE; + uses IGP-REDIST-INTERNAL; + uses MULTI-PATH-AS-PATH-IGNORE-ONWARDS; + uses DISABLE-FAST-EXTERNAL-FALLOVER; + uses UNSAFE-EBGP-POLICY; + uses DEFAULT-METRIC; + uses DEFAULT-INFO-ORIGINATE; + uses BGP-CFG-RPKI-ORIGIN-AS-VALIDITY-SIGNAL-IBGP; + uses BGP-CFG-RPKI-BESTPATH-USE-ORIGIN-AS-VALIDITY; + uses BEST-PATH-CONFEDERATION-PATHS; + uses BEST-PATH-AS-MULTIPATH-RELAX; + uses MPLS-ACTIVATED-INTERFACE-TABLE; + uses DISABLE-AUTO-SOFT-RESET; + uses DISABLE-MSG-LOG; + uses MULTI-PATH-USE-CLUSTER-LIST-LENGTH; + uses GLOBAL-TIMERS; + uses BEST-PATH-IGP-METRIC-IGNORE; + uses NEXT-HOP-RES-ALLOW-DEFAULT; + uses BEST-PATH-SR-POLICY-ONLY-PATH; + uses NEXT-HOP-MPLS-FWD-IBGP; + uses BFD; + uses DISABLE-NEIGHBOR-LOGGING; + uses SEND-SOCKET-BUFFER-SIZES; + uses BEST-PATH-MED-ALWAYS; + uses RECEIVE-SOCKET-BUFFER-SIZES; + uses BEST-PATH-ROUTER-ID; + uses BEST-PATH-MED-MISSING; + uses LOCAL-PREFERENCE; + } + container vrf-neighbors { + description + "BGP VRF peer"; + + grouping VRF-NEIGHBOR-CONTENT { + description + "VRF NEIGHBOR CONTENT"; + container vrf-neighbor-afs { + description + "Address family type of a VRF neighbor"; + list vrf-neighbor-af { + key "af-name"; + description + "Address family type of a VRF neighbor"; + leaf af-name { + type dt1:Bgp-address-family; + description + "BGP neighbor address family"; + } + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-CAPABLE; + uses SEND-EXT-COMMUNITY-EBGP; + uses ACCEPT-ROUTE-LEGACY-RT; + uses AIGP-COST-COMMUNITY; + uses CLUSTER-ID-ALLOW-EQUAL; + uses ADVERTISE-ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses SEND-COMMUNITY-EBGP; + uses ADVERTISE-DEF-IMP-DISABLE-V6; + uses ADVERTISE-DISABLE; + uses MAXIMUM-PREFIXES; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V6; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH-INBOUND; + uses NEXT-HOP-UNCHANGED; + uses ADVERTISE-LOCAL-LABELED-ROUTE; + uses REPLACE-PRIVATE-AS; + uses ADVERTISE-DEF-IMP-DISABLE-V4; + uses RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V4; + uses FLOWSPEC-VALIDATION; + uses ADVERTISE-L2VPN-EVPN; + uses RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses ENFORCE-MULTIPLE-LABELS; + uses AS-OVERRIDE; + uses MULTIPATH; + uses SEND-COMMUNITY-EBGP-GRACEFUL-SHUTDOWN; + uses ACTIVATE; + uses ROUTE-POLICY-RET; + uses PREFIX-ORF-POLICY; + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-STALE-TIME; + uses SITE-OF-ORIGIN; + uses UPDATE-OUT-ORIG-LOOP-CHK-DISABLE; + uses AIGP; + uses AIGP-SEND-MED; + uses ADVERTISE-V6; + uses ALLOW-AS-IN; + uses ADVERTISE-ORF; + uses ROUTE-REFLECTOR-CLIENT; + uses ADVERTISE-ADDITIONAL-PATHS-SEND-CAPABILITY; + uses NEXT-HOP-SELF; + uses SLOW-PEER; + uses ROUTE-POLICY-IN; + uses ADVERTISE-EVPN-GATEWAY-IP-DISABLE; + uses IMPORT; + uses DEFAULT-ORIGINATE; + uses SOFT-RECONFIGURATION; + uses ADVERTISE-VRF-IMP-DISABLE-V6; + uses DEFAULT-WEIGHT; + uses AF-GROUP; + uses ADVERTISE-V4; + uses OPTIMAL-ROUTE-REFLECTION-GROUP; + uses ACCEPT-OWN; + uses ROUTE-POLICY-OUT; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH; + uses ADVERTISE-VRF-IMP-DISABLE-V4; + } + } + uses LOCAL-ADDRESS-SUB-NET; + uses INTERNAL-VPN-CLIENT-IBGP-CE; + uses LOCAL-ADDRESS; + uses BMP-ACTIVATE-TABLE; + uses EBGP-MULTIHOP; + uses SESSION-GROUP-ADD-MEMBER; + uses EGRESS-PEER-ENGINEERING; + uses REMOTE-AS; + uses LOCAL-AS; + uses NEIGHBOR-GRACEFUL-RESTART-STALEPATH-TIME; + uses SHUTDOWN; + uses DEFAULT-ROUTEPOLICY-IN; + uses DESCRIPTION; + uses SUPPRESS-EXTENDED-NEXTHOP-ENCODING-CAPABILITY; + uses NEIGHBOR-GROUP-ADD-MEMBER; + uses PASSWORD; + uses EBGP-RECV-DMZ; + uses ADVERTISEMENT-INTERVAL; + uses NEIGHBOR-GRACEFUL-RESTART; + uses ENFORCE-FIRST-AS; + uses TCPMTU-DISCOVERY; + uses IDLE-WATCH-TIME; + uses TCPMSS; + uses SESSION-OPEN-MODE; + uses BGP-CFG-RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses TOS; + uses UPDATE-IN-FILTERING; + uses DEFAULT-ROUTEPOLICY-OUT; + uses EBGP-SEND-DMZ-ENABLE-MODES; + uses MSG-LOG-OUT; + uses SUPPRESS-ALL-CAPABILITIES; + uses MAX-PEERS; + uses AO-KEYCHAIN; + uses BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses RECEIVE-BUFFER-SIZE; + uses MSG-LOG-IN; + uses ADDITIONAL-PATHS-SEND-CAPABILITY; + uses PROPAGATE-DMZ-LINK-BANDWIDTH; + uses EPE-PEER-SET-IDENTITY-TABLE; + uses BFD-ENABLE-MODES; + uses SEND-BUFFER-SIZE; + uses TTL-SECURITY; + uses NEIGHBOR-GRACEFUL-RESTART-TIME; + uses TIMERS; + uses BFD-MULTIPLIER; + uses BFD-MINIMUM-INTERVAL; + uses REMOTE-AS-LIST; + uses LABELED-UNICAST-EQUIVALENT-FOR-INBOUND-UPDATES; + uses ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses KEYCHAIN; + uses NEIGHBOR-GRACEFUL-RESTART-HELPER-ONLY; + uses IGNORE-CONNECTED-CHECK-EBGP; + uses SUPPRESS-FOUR-BYTE-AS-CAPABILITY; + uses UPDATE-SOURCE-INTERFACE; + uses CREATE; + uses GRACEFUL-MAINTENANCE; + uses LOG-NEIGHBOR-STATE-CHANGE; + } + list vrf-neighbor { + key "neighbor-address"; + description + "A particular VRF peer"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor address"; + } + uses VRF-NEIGHBOR-CONTENT; + } + list vrf-neighbor-prefix-length { + key "neighbor-address prefix-length"; + description + "A particular VRF peer"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor address"; + } + leaf prefix-length { + type uint32 { + range "0..127"; + } + description + "Prefix length"; + } + uses VRF-NEIGHBOR-CONTENT; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container default-vrf { + description + "Global default config"; + container bgp-entity { + description + "Neighbor, neighbor-group, af-group and + session-group configuration"; + container neighbors { + description + "Neighbor configuration"; + + grouping NEIGHBOR-CONTENT { + description + "NEIGHBOR CONTENT"; + container neighbor-afs { + description + "BGP neighbor AF configuration table"; + list neighbor-af { + key "af-name"; + description + "Address family type of neighbor"; + leaf af-name { + type dt1:Bgp-address-family; + description + "BGP neighbor address family"; + } + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-CAPABLE; + uses L2VPN-SIGNALLING; + uses SEND-EXT-COMMUNITY-EBGP; + uses ACCEPT-ROUTE-LEGACY-RT; + uses AIGP-COST-COMMUNITY; + uses CLUSTER-ID-ALLOW-EQUAL; + uses ADVERTISE-ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses ADVERTISE-ENTROPY-LABEL-DISABLE; + uses SEND-COMMUNITY-EBGP; + uses ADVERTISE-DEF-IMP-DISABLE-V6; + uses ADVERTISE-DISABLE; + uses SEND-MULTICAST-ATTR; + uses MAXIMUM-PREFIXES; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V6; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH-INBOUND; + uses NEXT-HOP-UNCHANGED; + uses ADVERTISE-LOCAL-LABELED-ROUTE; + uses REPLACE-PRIVATE-AS; + uses ADVERTISE-DEF-IMP-DISABLE-V4; + uses RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V4; + uses FLOWSPEC-VALIDATION; + uses ADVERTISE-L2VPN-EVPN; + uses ENCAPSULATION-TYPE; + uses RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses ENFORCE-MULTIPLE-LABELS; + uses AS-OVERRIDE; + uses MULTIPATH; + uses SEND-COMMUNITY-EBGP-GRACEFUL-SHUTDOWN; + uses ACTIVATE; + uses ROUTE-POLICY-RET; + uses PREFIX-ORF-POLICY; + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-STALE-TIME; + uses UPDATE-OUT-ORIG-LOOP-CHK-DISABLE; + uses AIGP; + uses AIGP-SEND-MED; + uses ADVERTISE-V6; + uses ALLOW-AS-IN; + uses ADVERTISE-ORF; + uses ROUTE-REFLECTOR-CLIENT; + uses ADVERTISE-ADDITIONAL-PATHS-SEND-CAPABILITY; + uses NEXT-HOP-SELF; + uses SRV6VERSION4; + uses SLOW-PEER; + uses ROUTE-POLICY-IN; + uses ADVERTISE-EVPN-GATEWAY-IP-DISABLE; + uses IMPORT; + uses DEFAULT-ORIGINATE; + uses SOFT-RECONFIGURATION; + uses ADVERTISE-VRF-IMP-DISABLE-V6; + uses DEFAULT-WEIGHT; + uses AF-GROUP; + uses ADVERTISE-V4; + uses NEXT-HOP-UNCHANGED-MULTIPATH; + uses OPTIMAL-ROUTE-REFLECTION-GROUP; + uses ACCEPT-OWN; + uses ROUTE-POLICY-OUT; + uses ADVERTISE-PERMANENT-NETWORK; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH; + uses ADVERTISE-VRF-IMP-DISABLE-V4; + } + } + leaf epe-peer-node-sid { + type uint32 { + range "0..1033575"; + } + description + "Manual Segment Index assigned to this + peer for egress peer engineering"; + } + uses LOCAL-ADDRESS-SUB-NET; + uses LOCAL-ADDRESS; + uses BMP-ACTIVATE-TABLE; + uses EBGP-MULTIHOP; + uses SESSION-GROUP-ADD-MEMBER; + uses EGRESS-PEER-ENGINEERING; + uses REMOTE-AS; + uses LOCAL-AS; + uses NEIGHBOR-GRACEFUL-RESTART-STALEPATH-TIME; + uses SHUTDOWN; + uses DEFAULT-ROUTEPOLICY-IN; + uses DESCRIPTION; + uses SUPPRESS-EXTENDED-NEXTHOP-ENCODING-CAPABILITY; + uses NEIGHBOR-GROUP-ADD-MEMBER; + uses PASSWORD; + uses EBGP-RECV-DMZ; + uses ADVERTISEMENT-INTERVAL; + uses NEIGHBOR-CLUSTER-ID; + uses NEIGHBOR-GRACEFUL-RESTART; + uses ENFORCE-FIRST-AS; + uses TCPMTU-DISCOVERY; + uses IDLE-WATCH-TIME; + uses TCPMSS; + uses SESSION-OPEN-MODE; + uses BGP-CFG-RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses TOS; + uses UPDATE-IN-FILTERING; + uses DEFAULT-ROUTEPOLICY-OUT; + uses EBGP-SEND-DMZ-ENABLE-MODES; + uses MSG-LOG-OUT; + uses SUPPRESS-ALL-CAPABILITIES; + uses MAX-PEERS; + uses AO-KEYCHAIN; + uses BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses RECEIVE-BUFFER-SIZE; + uses MSG-LOG-IN; + uses ADDITIONAL-PATHS-SEND-CAPABILITY; + uses PROPAGATE-DMZ-LINK-BANDWIDTH; + uses EPE-PEER-SET-IDENTITY-TABLE; + uses BFD-ENABLE-MODES; + uses SEND-BUFFER-SIZE; + uses TTL-SECURITY; + uses NEIGHBOR-GRACEFUL-RESTART-TIME; + uses TIMERS; + uses BFD-MULTIPLIER; + uses BFD-MINIMUM-INTERVAL; + uses REMOTE-AS-LIST; + uses LABELED-UNICAST-EQUIVALENT-FOR-INBOUND-UPDATES; + uses ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses KEYCHAIN; + uses NEIGHBOR-GRACEFUL-RESTART-HELPER-ONLY; + uses IGNORE-CONNECTED-CHECK-EBGP; + uses SUPPRESS-FOUR-BYTE-AS-CAPABILITY; + uses UPDATE-SOURCE-INTERFACE; + uses CREATE; + uses GRACEFUL-MAINTENANCE; + uses LOG-NEIGHBOR-STATE-CHANGE; + } + list neighbor { + key "neighbor-address"; + description + "A particular BGP peer"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor address"; + } + uses NEIGHBOR-CONTENT; + } + list neighbor-prefix-length { + key "neighbor-address prefix-length"; + description + "A particular BGP peer"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor address"; + } + leaf prefix-length { + type uint32 { + range "0..127"; + } + description + "Prefix length"; + } + uses NEIGHBOR-CONTENT; + } + } + container neighbor-groups { + description + "Neighbor-group configuration"; + list neighbor-group { + key "neighbor-group-name"; + description + "A particular BGP neighbor group"; + container neighbor-group-afs { + description + "BGP neighbor-group AF configuration table"; + list neighbor-group-af { + key "af-name"; + description + "Address family type of neighbor group"; + leaf af-name { + type dt1:Bgp-address-family; + description + "BGP neighbor group address family"; + } + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-CAPABLE; + uses L2VPN-SIGNALLING; + uses SEND-EXT-COMMUNITY-EBGP; + uses ACCEPT-ROUTE-LEGACY-RT; + uses AIGP-COST-COMMUNITY; + uses CLUSTER-ID-ALLOW-EQUAL; + uses ADVERTISE-ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses ADVERTISE-ENTROPY-LABEL-DISABLE; + uses SEND-COMMUNITY-EBGP; + uses ADVERTISE-DEF-IMP-DISABLE-V6; + uses ADVERTISE-DISABLE; + uses SEND-MULTICAST-ATTR; + uses MAXIMUM-PREFIXES; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V6; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH-INBOUND; + uses NEXT-HOP-UNCHANGED; + uses ADVERTISE-LOCAL-LABELED-ROUTE; + uses REPLACE-PRIVATE-AS; + uses ADVERTISE-DEF-IMP-DISABLE-V4; + uses RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V4; + uses FLOWSPEC-VALIDATION; + uses ADVERTISE-L2VPN-EVPN; + uses ENCAPSULATION-TYPE; + uses RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses ENFORCE-MULTIPLE-LABELS; + uses AS-OVERRIDE; + uses MULTIPATH; + uses SEND-COMMUNITY-EBGP-GRACEFUL-SHUTDOWN; + uses ACTIVATE; + uses ROUTE-POLICY-RET; + uses PREFIX-ORF-POLICY; + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-STALE-TIME; + uses SITE-OF-ORIGIN; + uses UPDATE-OUT-ORIG-LOOP-CHK-DISABLE; + uses AIGP; + uses AIGP-SEND-MED; + uses ADVERTISE-V6; + uses ALLOW-AS-IN; + uses ADVERTISE-ORF; + uses ROUTE-REFLECTOR-CLIENT; + uses ADVERTISE-ADDITIONAL-PATHS-SEND-CAPABILITY; + uses NEXT-HOP-SELF; + uses SRV6VERSION4; + uses SLOW-PEER; + uses ROUTE-POLICY-IN; + uses ADVERTISE-EVPN-GATEWAY-IP-DISABLE; + uses IMPORT; + uses DEFAULT-ORIGINATE; + uses SOFT-RECONFIGURATION; + uses ADVERTISE-VRF-IMP-DISABLE-V6; + uses DEFAULT-WEIGHT; + uses AF-GROUP; + uses ADVERTISE-V4; + uses NEXT-HOP-UNCHANGED-MULTIPATH; + uses OPTIMAL-ROUTE-REFLECTION-GROUP; + uses ACCEPT-OWN; + uses ROUTE-POLICY-OUT; + uses ADVERTISE-PERMANENT-NETWORK; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH; + uses ADVERTISE-VRF-IMP-DISABLE-V4; + } + } + leaf neighbor-group-add-member { + type string; + description + "Inherit configuration from a + neighbor-group"; + } + leaf neighbor-group-name { + type xr:Cisco-ios-xr-string; + description + "BGP neighbor group name"; + } + uses LOCAL-ADDRESS-SUB-NET; + uses INTERNAL-VPN-CLIENT-IBGP-CE; + uses LOCAL-ADDRESS; + uses BMP-ACTIVATE-TABLE; + uses EBGP-MULTIHOP; + uses SESSION-GROUP-ADD-MEMBER; + uses EGRESS-PEER-ENGINEERING; + uses REMOTE-AS; + uses LOCAL-AS; + uses NEIGHBOR-GRACEFUL-RESTART-STALEPATH-TIME; + uses SHUTDOWN; + uses DEFAULT-ROUTEPOLICY-IN; + uses DESCRIPTION; + uses SUPPRESS-EXTENDED-NEXTHOP-ENCODING-CAPABILITY; + uses PASSWORD; + uses EBGP-RECV-DMZ; + uses ADVERTISEMENT-INTERVAL; + uses NEIGHBOR-CLUSTER-ID; + uses NEIGHBOR-GRACEFUL-RESTART; + uses ENFORCE-FIRST-AS; + uses TCPMTU-DISCOVERY; + uses IDLE-WATCH-TIME; + uses TCPMSS; + uses SESSION-OPEN-MODE; + uses BGP-CFG-RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses TOS; + uses UPDATE-IN-FILTERING; + uses DEFAULT-ROUTEPOLICY-OUT; + uses EBGP-SEND-DMZ-ENABLE-MODES; + uses MSG-LOG-OUT; + uses SUPPRESS-ALL-CAPABILITIES; + uses MAX-PEERS; + uses AO-KEYCHAIN; + uses BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses RECEIVE-BUFFER-SIZE; + uses MSG-LOG-IN; + uses ADDITIONAL-PATHS-SEND-CAPABILITY; + uses PROPAGATE-DMZ-LINK-BANDWIDTH; + uses EPE-PEER-SET-IDENTITY-TABLE; + uses BFD-ENABLE-MODES; + uses SEND-BUFFER-SIZE; + uses TTL-SECURITY; + uses NEIGHBOR-GRACEFUL-RESTART-TIME; + uses TIMERS; + uses BFD-MULTIPLIER; + uses BFD-MINIMUM-INTERVAL; + uses REMOTE-AS-LIST; + uses LABELED-UNICAST-EQUIVALENT-FOR-INBOUND-UPDATES; + uses ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses KEYCHAIN; + uses NEIGHBOR-GRACEFUL-RESTART-HELPER-ONLY; + uses IGNORE-CONNECTED-CHECK-EBGP; + uses SUPPRESS-FOUR-BYTE-AS-CAPABILITY; + uses UPDATE-SOURCE-INTERFACE; + uses CREATE; + uses GRACEFUL-MAINTENANCE; + uses LOG-NEIGHBOR-STATE-CHANGE; + } + } + container af-groups { + description + "AF-group configuration"; + list af-group { + key "af-group-name"; + description + "A particular BGP AF group"; + container af-group-afs { + description + "AF group configuration table"; + list af-group-af { + key "af-name"; + description + "Address family type of an AF group"; + leaf af-group { + type string; + description + "Inherit configuration for this + address-family from an AF-group"; + } + leaf create { + type empty; + description + "Create this address family group. + Deletion of this object causes deletion + of all the objects under AFGroup + associated with this object."; + } + leaf af-name { + type dt1:Bgp-address-family; + description + "BGP AF group address family"; + } + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-CAPABLE; + uses L2VPN-SIGNALLING; + uses SEND-EXT-COMMUNITY-EBGP; + uses ACCEPT-ROUTE-LEGACY-RT; + uses AIGP-COST-COMMUNITY; + uses CLUSTER-ID-ALLOW-EQUAL; + uses ADVERTISE-ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses ADVERTISE-ENTROPY-LABEL-DISABLE; + uses SEND-COMMUNITY-EBGP; + uses ADVERTISE-DEF-IMP-DISABLE-V6; + uses ADVERTISE-DISABLE; + uses SEND-MULTICAST-ATTR; + uses MAXIMUM-PREFIXES; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V6; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH-INBOUND; + uses NEXT-HOP-UNCHANGED; + uses ADVERTISE-LOCAL-LABELED-ROUTE; + uses REPLACE-PRIVATE-AS; + uses ADVERTISE-DEF-IMP-DISABLE-V4; + uses RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses ADVERTISE-BRIDGE-DOMAIN-IMP-DISABLE-V4; + uses FLOWSPEC-VALIDATION; + uses ADVERTISE-L2VPN-EVPN; + uses ENCAPSULATION-TYPE; + uses RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses ENFORCE-MULTIPLE-LABELS; + uses AS-OVERRIDE; + uses MULTIPATH; + uses SEND-COMMUNITY-EBGP-GRACEFUL-SHUTDOWN; + uses ROUTE-POLICY-RET; + uses PREFIX-ORF-POLICY; + uses NEIGHBOR-AF-LONG-LIVED-GRACEFUL-RESTART-STALE-TIME; + uses SITE-OF-ORIGIN; + uses UPDATE-OUT-ORIG-LOOP-CHK-DISABLE; + uses AIGP; + uses AIGP-SEND-MED; + uses ADVERTISE-V6; + uses ALLOW-AS-IN; + uses ADVERTISE-ORF; + uses ROUTE-REFLECTOR-CLIENT; + uses ADVERTISE-ADDITIONAL-PATHS-SEND-CAPABILITY; + uses NEXT-HOP-SELF; + uses SRV6VERSION4; + uses SLOW-PEER; + uses ROUTE-POLICY-IN; + uses ADVERTISE-EVPN-GATEWAY-IP-DISABLE; + uses IMPORT; + uses DEFAULT-ORIGINATE; + uses SOFT-RECONFIGURATION; + uses ADVERTISE-VRF-IMP-DISABLE-V6; + uses DEFAULT-WEIGHT; + uses ADVERTISE-V4; + uses NEXT-HOP-UNCHANGED-MULTIPATH; + uses OPTIMAL-ROUTE-REFLECTION-GROUP; + uses ACCEPT-OWN; + uses ROUTE-POLICY-OUT; + uses ADVERTISE-PERMANENT-NETWORK; + uses REMOVE-PRIVATE-AS-ENTIRE-AS-PATH; + uses ADVERTISE-VRF-IMP-DISABLE-V4; + } + } + leaf af-group-name { + type xr:Cisco-ios-xr-string; + description + "BGP AF group name"; + } + } + } + container session-groups { + description + "Session group configuration"; + list session-group { + key "session-group-name"; + description + "A particular BGP session group"; + leaf session-group-add-member { + type string; + description + "Inherit address-family independent config + from a session-group"; + } + leaf session-group-name { + type xr:Cisco-ios-xr-string; + description + "BGP session group name"; + } + uses LOCAL-ADDRESS-SUB-NET; + uses INTERNAL-VPN-CLIENT-IBGP-CE; + uses LOCAL-ADDRESS; + uses BMP-ACTIVATE-TABLE; + uses EBGP-MULTIHOP; + uses EGRESS-PEER-ENGINEERING; + uses REMOTE-AS; + uses LOCAL-AS; + uses NEIGHBOR-GRACEFUL-RESTART-STALEPATH-TIME; + uses SHUTDOWN; + uses DEFAULT-ROUTEPOLICY-IN; + uses DESCRIPTION; + uses SUPPRESS-EXTENDED-NEXTHOP-ENCODING-CAPABILITY; + uses PASSWORD; + uses EBGP-RECV-DMZ; + uses ADVERTISEMENT-INTERVAL; + uses NEIGHBOR-CLUSTER-ID; + uses NEIGHBOR-GRACEFUL-RESTART; + uses ENFORCE-FIRST-AS; + uses TCPMTU-DISCOVERY; + uses IDLE-WATCH-TIME; + uses TCPMSS; + uses SESSION-OPEN-MODE; + uses BGP-CFG-RPKI-ORIGIN-AS-VALIDATION-DISABLE; + uses TOS; + uses UPDATE-IN-FILTERING; + uses DEFAULT-ROUTEPOLICY-OUT; + uses EBGP-SEND-DMZ-ENABLE-MODES; + uses MSG-LOG-OUT; + uses SUPPRESS-ALL-CAPABILITIES; + uses MAX-PEERS; + uses AO-KEYCHAIN; + uses BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID; + uses RECEIVE-BUFFER-SIZE; + uses MSG-LOG-IN; + uses ADDITIONAL-PATHS-SEND-CAPABILITY; + uses PROPAGATE-DMZ-LINK-BANDWIDTH; + uses EPE-PEER-SET-IDENTITY-TABLE; + uses BFD-ENABLE-MODES; + uses SEND-BUFFER-SIZE; + uses TTL-SECURITY; + uses NEIGHBOR-GRACEFUL-RESTART-TIME; + uses TIMERS; + uses BFD-MULTIPLIER; + uses BFD-MINIMUM-INTERVAL; + uses REMOTE-AS-LIST; + uses LABELED-UNICAST-EQUIVALENT-FOR-INBOUND-UPDATES; + uses ADDITIONAL-PATHS-RECEIVE-CAPABILITY; + uses KEYCHAIN; + uses NEIGHBOR-GRACEFUL-RESTART-HELPER-ONLY; + uses IGNORE-CONNECTED-CHECK-EBGP; + uses SUPPRESS-FOUR-BYTE-AS-CAPABILITY; + uses UPDATE-SOURCE-INTERFACE; + uses CREATE; + uses GRACEFUL-MAINTENANCE; + uses LOG-NEIGHBOR-STATE-CHANGE; + } + } + } + container global { + description + "Global default config"; + container cluster-id { + description + "Configure Route-Reflector Cluster-id"; + leaf cluster-id-number { + type uint32 { + range "1..4294967295"; + } + description + "Route-Reflector Cluster ID as 32 bit + quantity"; + } + leaf cluster-id-address { + type inet:ipv4-address-no-zone; + description + "Route-Reflector Cluster ID in IPV4 address + format"; + } + } + container write-limit { + description + "Set write-queue limit for each update group"; + leaf formatted-messages { + type uint32 { + range "500..100000000"; + } + default "50000"; + description + "Number of messages to be formatted per + update group"; + } + leaf enqueued-messages { + type uint32 { + range "500..100000000"; + } + default "250000"; + description + "Number of messages that can be enqueued in + total"; + } + leaf desynchronize { + type boolean; + default "false"; + description + "TRUE to enable desynchronization, FALSE + otherwise."; + } + } + container update-delay { + description + "Set the max initial delay for sending + updates"; + leaf delay { + type uint32 { + range "0..3600"; + } + units "second"; + default "120"; + description + "Delay value (seconds)"; + } + leaf always { + type boolean; + must "../delay"; + default "false"; + description + "Set to TRUE to disable keepalive trigger + bestpath and delay is enforced."; + } + } + container optimal-route-reflection-group-global-afis { + description + "Global table of multiple ORR groups"; + list optimal-route-reflection-group-global-afi { + key "afi"; + description + "The afi of the ORR group"; + leaf afi { + type Bgp-orrafi; + description + "The AFI corresponds to root address"; + } + list optimal-route-reflection-group-global { + key "group-name"; + description + "Global Optimal Route Reflector group. + Each such group is equivalent to an IGP + area"; + leaf group-name { + type xr:Cisco-ios-xr-string; + description + "Name of the ORR group"; + } + leaf primary-root-address { + type inet:ip-address-no-zone; + description + "Primary Root for the ORR group"; + } + leaf secondary-root-address { + type inet:ip-address-no-zone; + description + "Secondary Root for the ORR group"; + } + leaf tertiary-root-address { + type inet:ip-address-no-zone; + description + "Tertiary Root for the ORR group"; + } + leaf flexiable-algorithm { + type uint32 { + range "128..255"; + } + description + "Flexible Algorithm value"; + } + } + } + } + container as-league { + description + "AS League"; + container peers { + description + "AS League Peers"; + list peer { + key "as-xx as-yy"; + description + "AS League Peer AS"; + leaf as-xx { + type dt1:Bgp-as-range; + description + "xx of peer AS xx.yy"; + } + leaf as-yy { + type dt1:Bgp-as-range; + description + "yy of peer AS xx.yy"; + } + } + } + leaf enable { + type empty; + description + "AS League creation"; + } + } + container rpki-servers { + description + "RPKI server configuration"; + list rpki-server { + key "server"; + description + "RPKI server configuration"; + container bindsrc { + description + "RPKI server transport bind source"; + leaf bindsrc-type { + type Bgp-rpki-binssrc; + description + "Bind source type"; + } + leaf bind-src { + type string; + description + "server bind source interface"; + } + } + container transport { + description + "RPKI server transport"; + leaf transport { + type Bgp-rpki-transport; + default "ssh"; + description + "RPKI server transport"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + default "22"; + description + "port"; + } + } + leaf enable { + type empty; + description + "RPKI server configuration"; + } + leaf shutdown { + type empty; + description + "RPKI server shutdown"; + } + leaf password { + type xr:Proprietary-password; + description + "RPKI server password"; + } + leaf response-time { + type Bgp-rpki-time-config; + units "second"; + description + "RPKI server response-time(15-3600 + seconds) or off"; + } + leaf username { + type string; + description + "RPKI server username"; + } + leaf refresh-time { + type Bgp-rpki-time-config; + units "second"; + description + "RPKI server refresh-time(15-3600 seconds) + or off"; + } + leaf purge-time { + type uint32 { + range "30..65535"; + } + units "second"; + description + "RPKI server purge-time (in seconds)"; + } + leaf server { + type xr:Cisco-ios-xr-string; + description + "Server address (opaque string)"; + } + } + } + container as-list-groups { + description + "AS-list group lists"; + list as-list-group { + key "as-list-group-name"; + description + "AS-List group"; + container ases { + description + "AS list"; + list as { + key "as-xx as-yy"; + description + "AS-List group"; + leaf as-xx { + type dt1:Bgp-as-range; + description + "xx of AS number/confed peer xx.yy"; + } + leaf as-yy { + type dt1:Bgp-as-range; + description + "yy of AS number/confed peer xx.yy"; + } + } + } + leaf enable { + type empty; + description + "AS-List group creation"; + } + leaf as-list-group-name { + type xr:Cisco-ios-xr-string; + description + "Group name"; + } + } + } + container limits { + description + "Maximum number that can be configured"; + leaf maximum-neighbors { + type uint32 { + range "1..15000"; + } + default "10000"; + description + "Maximum number of neighbors that can be + configured"; + } + } + container slow-peer-global-detection { + description + "Slow peer global detection"; + leaf dynamic-detection { + type boolean; + description + "TRUE: Enable global slow-peer dynamic + detection , FALSE: Disable global + slow-peer detection"; + } + leaf threshold { + type Bgp-slow-peer-threshold-range; + units "second"; + description + "Threshold (in seconds) to detect a + neighbor as slow-peer"; + } + } + container confederation-domain { + description + "Set routing domain confederation AS"; + leaf as-xx { + type dt1:Bgp-as-range; + description + "xx of AS number xx.yy"; + } + leaf as-yy { + type dt1:Bgp-as-range; + description + "yy of AS number xx.yy"; + } + } + container confederation-peer-ases { + description + "Define peer ASes in BGP confederation"; + list confederation-peer-as { + key "as-xx as-yy"; + description + "Confederation peer AS"; + leaf as-xx { + type dt1:Bgp-as-range; + description + "xx of AS number/confed peer xx.yy"; + } + leaf as-yy { + type dt1:Bgp-as-range; + description + "yy of AS number/confed peer xx.yy"; + } + } + } + container attribute-filter-groups { + description + "Attribute-filter groups list"; + list attribute-filter-group { + key "attribute-filter-group-name"; + description + "Attribute-filter group"; + container attribute-filters { + description + "Attribute-filter group attributes list"; + list attribute-filter { + key "attribute-start attribute-end"; + description + "Attribute-filter group attribute"; + leaf attribute-start { + type dt1:Bgp-attribute-range; + description + "Start of attribute range"; + } + leaf attribute-end { + type dt1:Bgp-attribute-range; + description + "End of attribute range"; + } + leaf filter-action { + type dt1:Bgp-update-filter-action; + mandatory true; + description + "Filtering action"; + } + } + } + leaf enable { + type empty; + description + "Attribute-filter group creation"; + } + leaf attribute-filter-group-name { + type xr:Cisco-ios-xr-string; + description + "Group name"; + } + } + } + container segment-routing-global { + description + "Segment-routing Gbl Configurations"; + container srv6-global { + description + "SRv6 Configurations"; + leaf enable { + type empty; + description + "Enable SRv6 configuration submode"; + } + leaf locator-name { + type string; + description + "Configure Locator name for SID allocation"; + } + } + } + container global-afs { + description + "Global AF-specific configuration"; + list global-af { + key "af-name"; + description + "Global AF-specific configuration"; + container isis-routes { + description + "Redistribute information for IS-IS routes + ."; + list isis-route { + key "instance-name"; + description + "Redistribute IS-IS routes"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "IS-IS instance name"; + } + leaf default-metric { + type Bgp-default-metric-range; + description + "Default metric"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + leaf redist-type { + type xr:Hex-integer; + description + "Redistribution type: 01 for level 1 + routes, 02 for level 2 routes, 04 for + level 1 inter-area routes. Logical + combinations permitted. 00 for all + options together"; + } + leaf multipath { + type boolean; + description + "Specify if Multipath, default is FALSE"; + } + } + } + container domain-distinguisher { + presence "Indicates a domain-distinguisher node is configured."; + description + " tuple to use to identify + the link-state domain"; + leaf as { + type dt1:Bgp-as-range; + mandatory true; + description + "AS Number"; + } + leaf router-id { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Router ID"; + } + } + container vrf-all { + description + "Configurations to be inherited to all + vrfs"; + container segment-routing-vrf-all { + description + "Segment-routing Vrf All Configurations"; + container srv6-vrf-all { + description + "SRv6 Configurations"; + leaf enable { + type empty; + description + "Enable SRv6 configuration submode"; + } + leaf srv6sid-allocation-mode { + type string; + description + "SID allocation mode: per-ce Set per + CE SID mode,per-vrf Set per VRF SID + mode"; + } + leaf locator-name { + type string; + description + "Configure Locator name for SID + allocation"; + } + } + } + container label-mode { + presence "Contains mandatory nodes that used to set default values"; + description + "MPLS-VPN label allocation mode"; + leaf label-allocation-mode { + type string; + description + "Label allocation mode: per-ce Set per + CE label mode, per-vrf Set per VRF + label mode"; + } + leaf route-policy-name { + type string; + description + "Label mode route policy name"; + } + } + leaf rnh-install-format { + type Bgp-rnh-install-format; + description + "RNH install format type: extcomm - + install rnh as opaque and extcomms, + extcomm-only - install rnh as extcomms + only"; + } + leaf enable { + type empty; + description + "Enable vrf all configuration submode"; + } + leaf table-policy { + type string; + description + "Configure policy for installation of + routes to RIB"; + } + leaf source-rt-import-policy { + type empty; + description + "Enable sourcing of import route-targets + from import-policy"; + } + } + container export-vrf-options { + description + "Allow export/leak of backup and/or + best-external path"; + leaf export-allow-backup { + type boolean; + description + "TRUE: Enable Leaking(export) of backup + path; FALSE: Disable Leaking(export) of + backup path."; + } + leaf export-allow-best-external { + type boolean; + description + "TRUE: Enable Leaking(export) of + best-external path; FALSE: Disable + Leaking(export) of best-external path."; + } + } + container disable-cluster-client-to-client-rrs { + description + "Disable client-to-client reflection for a + cluster"; + list disable-cluster-client-to-client-rr { + must "number or ipv4-address" { + description + "Number or IPV4Address must be present."; + } + key "cluster-type"; + description + "Cluster ID for which reflection is to be + disbled"; + leaf cluster-type { + type Bgp-cluster-id; + description + "Type of cluster-id"; + } + list number { + when "../cluster-type = 'number'" { + description + "../ClusterType = Number"; + } + key "cluster-id-number"; + description + "number"; + leaf cluster-id-number { + type uint32 { + range "0..4294967295"; + } + description + "Cluster ID: if configured as a number"; + } + } + list ipv4-address { + when "../cluster-type = 'ipv4-address'" { + description + "../ClusterType = IPV4Address"; + } + key "cluster-id-address"; + description + "ipv4 address"; + leaf cluster-id-address { + type inet:ip-address-no-zone; + description + "Cluster ID: if configured as an IP + Address"; + } + } + } + } + container label-delay { + presence "Indicates a label-delay node is configured."; + description + "Delay timer to batch label processing."; + leaf seconds { + type uint32 { + range "0..10"; + } + units "second"; + mandatory true; + description + "Delay, seconds part"; + } + leaf milliseconds { + type uint32 { + range "0..999"; + } + units "millisecond"; + mandatory true; + description + "Delay, milliseconds part"; + } + } + container ebgp { + presence "Indicates a ebgp node is configured."; + description + "Use eBGP multipaths"; + leaf paths-value { + type uint32 { + range "2..1024"; + } + mandatory true; + description + "Number of paths"; + } + leaf selective { + type boolean; + mandatory true; + description + "Allow multipaths only from marked + neighbors"; + } + } + container eibgp { + presence "Indicates a eibgp node is configured."; + description + "Use eiBGP multipaths"; + leaf paths-value { + type uint32 { + range "2..1024"; + } + mandatory true; + description + "Number of paths"; + } + leaf selective { + type boolean; + mandatory true; + description + "Allow multipaths only from marked + neighbors"; + } + } + container retain-rt { + description + "Accept received updates with the + specified attributes"; + leaf all { + type boolean; + description + "Whether all RTs are to be retained, + default is FALSE"; + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + } + container ibgp { + presence "Indicates a ibgp node is configured."; + description + "Use iBGP multipaths"; + leaf paths-value { + type uint32 { + range "2..1024"; + } + mandatory true; + description + "Number of paths"; + } + leaf unequal-cost { + type boolean; + mandatory true; + description + "Allow multipaths to have different IGP + metrics"; + } + leaf selective { + type boolean; + mandatory true; + description + "Allow multipaths only from marked + neighbors"; + } + leaf deterministic { + type empty; + description + "Select Multipaths deterministically + based on IGP metric followed by Age"; + } + } + container wait-rib-install { + description + "Wait for route install before sending + updates to neighbors"; + leaf enable { + type empty; + description + "Wait for route install before updates"; + } + leaf seconds { + type uint32 { + range "1..600"; + } + description + "Configured value for startup-delay"; + } + } + container import-delay { + presence "Indicates a import-delay node is configured."; + description + "Delay timer to batch import processing."; + leaf seconds { + type uint32 { + range "0..10"; + } + units "second"; + mandatory true; + description + "Delay, seconds part"; + } + leaf milliseconds { + type uint32 { + range "0..999"; + } + units "millisecond"; + mandatory true; + description + "Delay, milliseconds part"; + } + } + container peer-set-ids { + description + "Table of Peer Set Identifiers"; + list peer-set-id { + key "peer-set"; + description + "Create Identifier for a Peer Set"; + leaf peer-set-sid { + type uint32 { + range "0..1033575"; + } + description + "Peer Set Label Index off SRLB to be + assigned to this Peer Set"; + } + leaf enable { + type empty; + description + "Peer Set Identifier creation"; + } + leaf peer-set { + type uint32 { + range "1..255"; + } + description + "Identifier value"; + } + } + } + leaf rnh-install-format { + type Bgp-rnh-install-format; + description + "RNH install format type: extcomm - + install rnh as opaque and extcomms, + extcomm-only - install rnh as extcomms + only"; + } + leaf option-basbr-only { + type empty; + description + "This option makes the router an Option B + ASBR for EVPN. Its assumed no DCI configs + are present"; + } + leaf inter-as-install { + type empty; + description + "Enable install remote MVPN routes to PIM + in default VRF"; + } + leaf segmented-mcast { + type empty; + description + "Enable segmented multicast"; + } + leaf implicit-import { + type empty; + description + "Implicit import configuration"; + } + leaf disable-default-martian-check { + type empty; + description + "Disable default Martian Check"; + } + leaf next-hop-critical-trigger-delay { + type uint32 { + range "0..4294967295"; + } + units "millisecond"; + default "3000"; + description + "Next hop Critical Trigger Delay"; + } + leaf next-hop-non-critical-trigger-delay { + type uint32 { + range "0..4294967295"; + } + units "millisecond"; + default "10000"; + description + "Next hop Non-critical Trigger Delay"; + } + leaf label-security-rpf { + type empty; + description + "Calculate label-security RPF lists and + install to RIB/LSD"; + } + leaf use-igpsr-label { + type empty; + description + "Use IGP SR label for resolution + configuration"; + } + leaf label-retain { + type uint32 { + range "3..60"; + } + units "minute"; + description + "Label retention time in minutes"; + } + leaf enable-epe-backup-path { + type empty; + description + "Install a backup path for the EPE labels"; + } + leaf scan-time { + type uint32 { + range "5..3600"; + } + units "second"; + default "60"; + description + "Configure background scanner interval for + this address family"; + } + leaf source-route-target-policy { + type string; + description + "Route policy name to apply to configure + source route-target"; + } + leaf rpki-origin-as-validation-disable { + type empty; + description + "RPKI origin-AS validation disable"; + } + leaf update-limit-sub-group-ebgp { + type uint32 { + range "1..512"; + } + units "megabyte"; + default "32"; + description + "Upper bound on update generation + transient memory usage for every EBGP + Sub-group"; + } + leaf update-limit-address-family { + type uint32 { + range "4..2048"; + } + units "megabyte"; + default "256"; + description + "Upper bound on update generation + transient memory usage for the + address-family"; + } + leaf originator-pe-id { + type inet:ipv4-address-no-zone; + default "0.0.0.0"; + description + "Originator PE ID is configured to + identify the PE from which l2vpn evpn + update originates even when next-hop is + reset to something else"; + } + leaf update-limit-sub-group-ibgp { + type uint32 { + range "1..512"; + } + units "megabyte"; + default "32"; + description + "Upper bound on update generation + transient memory usage for every IBGP + Sub-group"; + } + leaf optimal-route-reflection-default-bestpath { + type boolean; + description + "Enable fallback to default table's + bestpath when ORR bestpath is not + available"; + } + leaf disable-client-to-client-rr { + type empty; + description + "Disable client-to-client reflection"; + } + leaf next-hop-route-policy { + type string; + description + "Next hop policy to filter out nexthop + notification"; + } + leaf global-table-mcast { + type empty; + description + "Enable global table multicast"; + } + leaf advertise-epe-labeled-unicast { + type empty; + description + "Advertise BGP EPE objects as Labeled + Unicast routes to controller"; + } + leaf prefix-sid-map { + type empty; + description + "Retrieve prefix sid mapping from SRMS"; + } + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + uses RPKI-ORIGIN-AS-VALIDATION-ENABLE; + uses AGGREGATE-ADDRESS-TABLE; + uses DYNAMIC-MED-INTERVAL; + uses EVENT-PREFIX-ROUTE-POLICY; + uses DAMPENING; + uses ENABLE; + uses RIP-ROUTES; + uses LISP-ROUTES; + uses STATIC-ROUTES; + uses DISTANCE; + uses TABLE-POLICY; + uses APP-ROUTE-TABLE; + uses ATTRIBUTE-DOWNLOAD; + uses LABEL-MODE; + uses EIGRP-ROUTE-TABLE; + uses BEST-EXTERNAL; + uses NEXTHOP-CHECK-DISABLE; + uses SOURCED-NETWORK-TABLE; + uses RPKI-ORIGIN-AS-VALIDITY-SIGNAL-IBGP; + uses CONNECTED-ROUTES; + uses ADDITIONAL-PATHS-RECEIVE; + uses PERMANENT-NETWORK; + uses RPKI-BESTPATH-USE-ORIGIN-AS-VALIDITY; + uses ALLOCATE-LABEL; + uses ADDITIONAL-PATHS-SELECTION; + uses BGP-CFG-RPKI-BESTPATH-ORIGIN-AS-ALLOW-INVALID-MP; + uses NEXT-HOP-RESOLUTION-PREFIX-LENGTH-MINIMUM; + uses RESET-WEIGHT-ON-IMPORT; + uses OSPF-ROUTE-TABLE; + uses ADDITIONAL-PATHS-SEND; + uses OPTIMAL-ROUTE-REFLECTION-GROUP-APPLY-TABLE; + uses ADVERTISE-LOCAL-LABELED-ROUTE-SAFI-UNICAST; + uses MOBILE-ROUTES; + uses DISABLE-AS-PATH-LOOP-CHECK; + uses NEXT-HOP-RESOLUTION-PREFIX-LENGTH-MINIMUM-IPV6; + uses OPTIMAL-ROUTE-REFLECTION-GROUP-TABLE; + uses SUBSCRIBER-ROUTES; + uses SEGMENT-ROUTING; + } + } + container global-graceful-maintenance-activate { + description + "Graceful maintenance activate + configurations"; + container interfaces { + description + "BGP graceful maintenance interface table"; + list interface { + key "interface-name"; + description + "Enable graceful maintenance for e-bgp + directly connected neighbors going over + this interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of Interface"; + } + } + } + container locations { + description + "BGP graceful maintenance location table"; + list location { + key "location"; + description + "Enable graceful maintenance for e-bgp + directly connected neighbors going over + this line-card (location)"; + leaf location { + type xr:Node-id; + description + "Name of Location"; + } + } + } + leaf retain-routes { + type boolean; + description + "BGP graceful maintenance retain routes "; + } + leaf enable { + type empty; + description + "Enable graceful maintenance activate + configuration submode"; + } + leaf all-neighbors { + type boolean; + description + "Enable graceful maintenance for all + neighbors without graceful maintenance + config"; + } + } + container rpki-static-routes { + description + "RPKI static route configuration"; + list rpki-static-route { + key "address minimum maximum as"; + description + "RPKI static route"; + leaf address { + type inet:ip-address-no-zone; + description + "Address"; + } + leaf minimum { + type uint32 { + range "0..128"; + } + description + "Minimum Prefix Length"; + } + leaf maximum { + type uint32 { + range "1..128"; + } + description + "Maximum Prefix Length"; + } + leaf as { + type uint32 { + range "1..4294967295"; + } + description + "AS Number"; + } + } + } + container adjacency-table { + description + "Table of Local Adjacencies"; + container adjacency-first-hops { + description + "Table of Firsthop addresses that form the + adjacencies"; + list adjacency-first-hop { + key "first-hop-address"; + description + "Configuration for a single adjacency"; + container associated-peer-sets { + description + "Table of Peer sets this adjacency can be + part of"; + list associated-peer-set { + key "peer-set"; + description + "Associate this peer-set with the + adjacency"; + leaf peer-set { + type uint32 { + range "1..255"; + } + description + "Identifier value"; + } + } + } + leaf adjacency-sid { + type uint32 { + range "0..1033575"; + } + description + "Configure Segment Index value for this + adjacency"; + } + leaf adjacency-first-hop-enable { + type empty; + description + "Enable creation of this firsthop + adjacency"; + } + leaf first-hop-address { + type inet:ip-address-no-zone; + description + "IP Address of Firsthop"; + } + } + } + } + leaf graceful-restart { + type empty; + description + "Enable graceful restart support"; + } + leaf update-out-logging { + type empty; + description + "Enables logging of update generation events"; + } + leaf install-diversion { + type empty; + description + "Install diversion path to RIB/CEF"; + } + leaf next-hop-trigger-delay { + type uint32 { + range "0..300"; + } + units "second"; + default "5"; + description + "Set the delay for triggering nexthop + recalculations"; + } + leaf nsr { + type boolean; + description + "TRUE to Enable non-stop routing + supportFALSE to Disable non-stop routing + support"; + } + leaf neighbor-logging-detail { + type empty; + description + "Include extra detail in neighbor change + messages"; + } + leaf mvpn { + type empty; + description + "Connect to PIM/PIM6"; + } + leaf rpki-origin-as-validation-disable { + type empty; + description + "RPKI origin-AS validation disable"; + } + leaf global-scan-time { + type uint32 { + range "5..3600"; + } + units "second"; + default "60"; + description + "Configure background scanner interval for + generic scanner"; + } + leaf rpki-origin-as-validation-time { + type uint32 { + range "0..60"; + } + units "second"; + description + "Prefix validation time (in seconds). Range + : 5 - 60. Specify 0 to disable the timer"; + } + leaf rpki-bestpath-origin-as-allow-invalid { + type empty; + description + "RPKI bestpath origin-AS allow invalid"; + } + leaf graceful-restart-purge-time { + type uint32 { + range "0..6000"; + } + units "second"; + default "600"; + description + "Time before stale routes are purged."; + } + leaf enforce-ibgp-out-policy { + type empty; + description + "Allow all attributes to be modified by + outbound policy for iBGP peers"; + } + leaf update-limit-process { + type uint32 { + range "16..2048"; + } + units "megabyte"; + default "512"; + description + "Upper bound on update generation transient + memory usage for the process"; + } + leaf graceful-restart-time { + type uint32 { + range "1..4095"; + } + units "second"; + default "120"; + description + "Restart time advertised to neighbors"; + } + leaf update-error-handling-basic-ibgp-disable { + type empty; + description + "Inbound update basic error-handling for + IBGP neighbors"; + } + leaf read-only { + type empty; + description + "Allow duplicate table config and disable + update generation"; + } + leaf graceful-restart-stalepath-time { + type uint32 { + range "1..4095"; + } + units "second"; + default "360"; + description + "Maximum time to wait for restart of GR + capable peers"; + } + leaf graceful-restart-neighbor-retain-disable { + type empty; + description + "Do not retain neighbor routes when neighbor + session resets if neighbor also has + graceful restart disabled"; + } + leaf update-error-handling-extended-ebgp { + type empty; + description + "Inbound update extended error-handling for + EBGP neighbors"; + } + leaf open-config-telemetry { + type empty; + description + "Triggers creation of required data for + Telemetry and its streaming"; + } + leaf update-error-handling-basic-ebgp-disable { + type empty; + description + "Inbound update basic error-handling for + EBGP neighbors"; + } + leaf graceful-reset { + type empty; + description + "Reset gracefully if configuration change + forces a peer reset"; + } + leaf igp-loop-check { + type empty; + description + "Enable AS-path loop checking for iBGP peers"; + } + leaf update-error-handling-extended-ibgp { + type empty; + description + "Inbound update extended error-handling for + IBGP neighbors"; + } + uses ROUTER-ID; + uses DISABLE-ENFORCE-FIRST-AS; + uses BEST-PATH-COST-COMMUNITY; + uses BEST-PATH-AIGP-IGNORE; + uses BEST-PATH-IGP-METRIC-SR-POLICY; + uses NEXT-HOP-VAL-SRTE; + uses BEST-PATH-AS-PATH-LENGTH; + uses NEXT-HOP-VAL-DISABLE; + uses IGP-REDIST-INTERNAL; + uses MULTI-PATH-AS-PATH-IGNORE-ONWARDS; + uses DISABLE-FAST-EXTERNAL-FALLOVER; + uses UNSAFE-EBGP-POLICY; + uses DEFAULT-METRIC; + uses DEFAULT-INFO-ORIGINATE; + uses BGP-CFG-RPKI-ORIGIN-AS-VALIDITY-SIGNAL-IBGP; + uses BGP-CFG-RPKI-BESTPATH-USE-ORIGIN-AS-VALIDITY; + uses BEST-PATH-CONFEDERATION-PATHS; + uses BEST-PATH-AS-MULTIPATH-RELAX; + uses MPLS-ACTIVATED-INTERFACE-TABLE; + uses DISABLE-AUTO-SOFT-RESET; + uses DISABLE-MSG-LOG; + uses MULTI-PATH-USE-CLUSTER-LIST-LENGTH; + uses GLOBAL-TIMERS; + uses BEST-PATH-IGP-METRIC-IGNORE; + uses NEXT-HOP-RES-ALLOW-DEFAULT; + uses BEST-PATH-SR-POLICY-ONLY-PATH; + uses NEXT-HOP-MPLS-FWD-IBGP; + uses BFD; + uses DISABLE-NEIGHBOR-LOGGING; + uses SEND-SOCKET-BUFFER-SIZES; + uses BEST-PATH-MED-ALWAYS; + uses RECEIVE-SOCKET-BUFFER-SIZES; + uses BEST-PATH-ROUTER-ID; + uses BEST-PATH-MED-MISSING; + uses LOCAL-PREFERENCE; + } + } + leaf bgp-running { + type empty; + description + "Enable BGP. Deletion of this object causes + deletion of all the objects under FourByteAS + associated with this object."; + } + leaf as { + type dt1:Bgp-as-range; + description + "2-byte or 4-byte Autonomous system number"; + } + } + } + } + } + container bmp-server-all { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will + provide the compatible functionalities. BGP BMP + Server Common Configuration"; + container route-monitoring { + description + "Enable Route Monitoring capability for the BMP + servers. + BGP update messages messages will be + regenrated with a table walk + "; + leaf policy { + type Bmp-policy-select; + description + "Specify if the routes packed in update messages + should be + before or after the application of + route-policy"; + } + leaf direction { + type Bmp-route-direction; + description + "Specify if the routes should be picked up at + inbound + or outbound direction"; + } + } + leaf maximum-buffer-size { + type uint32 { + range "1..4294967295"; + } + units "megabyte"; + description + "Range in MegaBytes for the maximum buffer size + of BMP message queue. + The maximum buf-size is + 20% and default buf-size is 15% of the + platform + virtual memory max-limit (aka rlimit). + Please run show bgp process + performance-statistics + to see the individual + values. Unit is in Megabytes"; + } + } + container bmp-servers { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-bgp-cfg.yang which will + provide the compatible functionalities. BGP BMP + Server Configuration"; + list bmp-server { + key "server-id"; + description + "A particular BMP server"; + container initial-refresh-delay { + description + "Initial refresh to generate BGP updates"; + leaf delay { + type uint32 { + range "1..3600"; + } + units "second"; + must "not(../skip)"; + description + "Delay in seconds before sending Refresh + request to Peers"; + } + leaf spread { + type uint32 { + range "1..3600"; + } + must "../delay and not(../skip)"; + description + "Spread over which to send initial Refresh + request to Peers"; + } + leaf skip { + type empty; + must "not(../delay or ../spread)"; + description + "Skip Route Refresh request to Peers"; + } + } + container host-port { + description + "Configure Host Name/Address and Port for BMP + Server"; + leaf host { + type string; + description + "Name of the BMP server(accepts IPv4/IPv6 + Address format too)"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "Port Number of listening BMP server"; + } + } + container tos { + description + "TOS (Type Of Service)"; + leaf type { + type dt1:Bgp-tos; + description + "Set type of service"; + } + leaf value { + type dt1:Bgp-precedence-dscp; + description + "TOS value to set"; + } + } + leaf create { + type empty; + description + "BMP Server Creation"; + } + leaf maximum-buffer-size { + type uint32 { + range "1..4294967295"; + } + units "megabyte"; + description + "Range in MegaBytes for the maximum buffer size + of BMP message queue. + The maximum buf-size is + 20% and default buf-size is 15% of the + platform + virtual memory max-limit (aka rlimit) + . Please run show bgp process + performance-statistics + to see the individual + values. Unit is in Megabytes"; + } + leaf initial-delay { + type uint32 { + range "1..3600"; + } + units "second"; + description + "Initial connect delay in seconds in sending + updates"; + } + leaf flapping-delay { + type uint32 { + range "60..3600"; + } + units "second"; + description + "Delay in connecting to BMP Server after a flap + had been detected."; + } + leaf status-report-interval { + type uint32 { + range "1..3600"; + } + units "second"; + description + "Stats reporting period for BMP server"; + } + leaf description { + type string; + description + "String to describe the BMP server"; + } + leaf bmptcp-maximum-segment-size { + type uint32 { + range "68..10000"; + } + units "byte"; + description + "configure TCP maximum segment size. + Default=16384."; + } + leaf bmptcp-keep-alive { + type uint32 { + range "0..7200"; + } + units "second"; + description + "configure TCP keep alives to be exchanged + between client and server. Default=1000"; + } + leaf vrf { + type string; + description + "VRF for BMP Server"; + } + leaf shutdown { + type empty; + description + "Shutdown connection to BMP server"; + } + leaf update-source-interface { + type xr:Interface-name; + description + "Select an interface to configure"; + } + leaf server-id { + type uint32 { + range "1..8"; + } + description + "BMP Server ID"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-datatypes.yang new file mode 100644 index 000000000..8ffcae668 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-datatypes.yang @@ -0,0 +1,638 @@ +module Cisco-IOS-XR-ipv4-bgp-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-datatypes"; + prefix ipv4-bgp-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-23 { + description + "Added BMP route-monitoring suport for L3VPN inbound post-policy and Local RIB, Deprecated container policy under route-monitoring + 2022-08-05 + Added schema for neighbor AFI/SAFI additional-paths"; + semver:module-version "1.1.0"; + } + revision 2019-08-31 { + description + "Fixing revision error in module."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Fixing backward compatibility error in module"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2015-08-27 { + description + "IOS XR 5.3.2 revision."; + } + + typedef Bgp-official-address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + enum "l2vpn" { + value 25; + description + "L2VPN"; + } + enum "ls" { + value 16388; + description + "LS"; + } + enum "all" { + value 65534; + description + "All"; + } + } + description + "Bgp official address family"; + } + + typedef Bgp-extcomm-v4-addr-index { + type uint32 { + range "0..65535"; + } + description + "Bgp extcomm v4 addr index"; + } + + typedef Bgp-nbr-cap-additional-paths-cfg { + type enumeration { + enum "enable" { + value 1; + description + "Enable neighbor additional-paths capability"; + } + enum "disable" { + value 2; + description + "Disable neighbor additional-paths capability"; + } + } + description + "Bgp nbr cap additional paths cfg"; + } + + typedef Bgp-advertise-local-labeled-route-cfg { + type enumeration { + enum "enable" { + value 1; + description + "Enable to advertise routes with local-label via + Unicast Subsequent address family Indicator"; + } + enum "disable" { + value 2; + description + "Disable to advertise routes with local-label + via Unicast Subsequent address family Indicator"; + } + } + description + "Bgp advertise local labeled route cfg"; + } + + typedef Bgp-tos { + type enumeration { + enum "precedence" { + value 0; + description + "IP Type of Service (TOS) precedence"; + } + enum "dscp" { + value 1; + description + "IP Differentiated Services Code Point(DSCP)"; + } + } + description + "Bgp tos"; + } + + typedef Bgp-nbr-af-cap-additional-paths-cfg { + type enumeration { + enum "enable" { + value 1; + description + "Enable neighbor address-family additional-paths + capability"; + } + enum "disable" { + value 2; + description + "Disable neighbor address-family + additional-paths capability"; + } + } + description + "Bgp nbr af cap additional paths cfg"; + } + + typedef Bgp-address-family { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IPv4 unicast address family"; + } + enum "ipv4-multicast" { + value 1; + description + "IPv4 multicast address family"; + } + enum "ipv4-labeled-unicast" { + value 2; + description + "IPv4 labeled-unicast address family"; + } + enum "ipv4-tunnel" { + value 3; + description + "IPv4 tunnel address family"; + } + enum "vpnv4-unicast" { + value 4; + description + "VPNv4 unicast address family"; + } + enum "ipv6-unicast" { + value 5; + description + "IPv6 unicast address family"; + } + enum "ipv6-multicast" { + value 6; + description + "IPv6 multicast address family"; + } + enum "ipv6-labeled-unicast" { + value 7; + description + "IPv6 labeled-unicast address family"; + } + enum "vpnv6-unicast" { + value 8; + description + "VPNv6 unicast address family"; + } + enum "ipv4-mdt" { + value 9; + description + "IPv4 MDT address family"; + } + enum "l2vpn-vpls" { + value 10; + description + "L2VPN VPLS-VPWS address family"; + } + enum "ipv4rt-constraint" { + value 11; + description + "IPv4 rt-filter address family"; + } + enum "ipv4-mvpn" { + value 12; + description + "IPv4 MVPN address family"; + } + enum "ipv6-mvpn" { + value 13; + description + "IPv6 MVPN address family"; + } + enum "l2vpn-evpn" { + value 14; + description + "L2VPN EVPN address family"; + } + enum "lsls" { + value 15; + description + "Link-state link-state address family"; + } + enum "vpnv4-multicast" { + value 16; + description + "VPNv4 Multicast address family"; + } + enum "vpnv6-multicast" { + value 17; + description + "VPNv6 Multicast address family"; + } + enum "ipv4-flowspec" { + value 18; + description + "IPv4 flowspec address family"; + } + enum "ipv6-flowspec" { + value 19; + description + "IPv6 flowspec address family"; + } + enum "vpnv4-flowspec" { + value 20; + description + "VPNv4 flowspec address family"; + } + enum "vpnv6-flowspec" { + value 21; + description + "VPNv6 flowspec address family"; + } + enum "l2vpn-mspw" { + value 22; + description + "L2VPN MSPW address family"; + } + enum "ipv4-sr-policy" { + value 23; + description + "IPv4 Segment Routing (SR) policy address family"; + } + enum "ipv6-sr-policy" { + value 24; + description + "IPv6 Segment Routing (SR) policy address family"; + } + enum "all-address-family" { + value 25; + description + "All Address Families"; + } + } + description + "Bgp address family"; + } + + typedef Bgp-update-filter-action { + type enumeration { + enum "treat-as-withdraw" { + value 1; + description + "Treat the update message as a withdraw"; + } + enum "discard-attibute" { + value 2; + description + "Discard the attribute in update filter"; + } + } + description + "Bgp update filter action"; + } + + typedef Bgp-attribute-range { + type uint32 { + range "0..256"; + } + description + "Bgp attribute range"; + } + + typedef Bgp-precedence-dscp { + type union { + type enumeration { + enum "af11" { + value 10; + description + "AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "AF13 dscp (001110)"; + } + enum "af21" { + value 18; + description + "AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "AF23 dscp (010110)"; + } + enum "af31" { + value 26; + description + "AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "AF33 dscp (011110)"; + } + enum "af41" { + value 34; + description + "AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "AF43 dscp (100110)"; + } + enum "cs1" { + value 8; + description + "CS1 dscp (001000)"; + } + enum "cs2" { + value 16; + description + "CS2 dscp (010000)"; + } + enum "cs3" { + value 24; + description + "CS3 dscp (011000)"; + } + enum "cs4" { + value 32; + description + "CS4 dscp (100000)"; + } + enum "cs5" { + value 40; + description + "CS5 dscp (101000)"; + } + enum "cs6" { + value 48; + description + "CS6 dscp (110000)"; + } + enum "cs7" { + value 56; + description + "CS7 dscp (111000)"; + } + enum "ef" { + value 46; + description + "EF dscp (101110)"; + } + enum "critical" { + value 5; + description + "critical precedence (5)"; + } + enum "flash" { + value 3; + description + "flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "network control precedence (7)"; + } + enum "priority" { + value 1; + description + "priority precedence (1)"; + } + enum "default-or-routine" { + value 0; + description + "default dscp or routine precedence (0)"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Bgp precedence dscp"; + } + + typedef Bgp-af-additional-paths-cfg { + type enumeration { + enum "enable" { + value 1; + description + "Enable AF Additional-paths"; + } + enum "disable" { + value 2; + description + "Disable AF Additional-paths"; + } + } + description + "Bgp af additional paths cfg"; + } + + typedef Bgp-as-range { + type uint32 { + range "0..4294967295"; + } + description + "Bgp as range"; + } + + typedef Bgp-subsequent-address-family { + type enumeration { + enum "unicast" { + value 1; + description + "Unicast subsequent address family"; + } + enum "multicast" { + value 2; + description + "Multicast subsequent address family"; + } + enum "labeled-unicast" { + value 4; + description + "Labeled-unicast subsequent address family"; + } + enum "mvpn" { + value 5; + description + "MVPN subsequent address family"; + } + enum "mspw" { + value 6; + description + "MSPW subsequent address family"; + } + enum "tunnel" { + value 64; + description + "Tunnel subsequent address family"; + } + enum "vpls" { + value 65; + description + "VPLS subsequent address family"; + } + enum "mdt" { + value 66; + description + "MDT subsequent address family"; + } + enum "vpws" { + value 68; + description + "VPWS subsequent address family"; + } + enum "evpn" { + value 70; + description + "EVPN subsequent address family"; + } + enum "ls" { + value 71; + description + "LS subsequent address family"; + } + enum "sr-policy" { + value 73; + description + "SRPolicy subsequent address family"; + } + enum "vpn" { + value 128; + description + "VPN subsequent address family"; + } + enum "vpn-mcast" { + value 129; + description + "VPN-Multicast subsequent address family"; + } + enum "rt-filter" { + value 132; + description + "Rt-filter subsequent address family"; + } + enum "flowspec" { + value 133; + description + "Flowspec subsequent address family"; + } + enum "vpn-flowspec" { + value 134; + description + "VPN-Flowspec subsequent address family"; + } + enum "all" { + value 254; + description + "All subsequent address family"; + } + } + description + "Bgp subsequent address family"; + } + + typedef Bmp-route-monitor-mode { + type enumeration { + enum "inbound-pre-policy" { + value 0; + description + "Pickup routes at inbound direction from peer + before application of route-policy"; + } + enum "inbound-post-policy" { + value 1; + description + "Pickup routes at inbound direction from peer + after application of route-policy"; + } + enum "local-rib" { + value 4; + description + "Pickup routes that have been selected by the + local BGP speaker's decision process"; + } + } + description + "Bmp route monitor mode"; + } + + typedef Bgp-extcomm-asn-index { + type uint32 { + range "0..4294967295"; + } + description + "Bgp extcomm asn index"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1.yang new file mode 100644 index 000000000..676c49526 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1.yang @@ -0,0 +1,353 @@ +submodule Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-bgp-oc-oper { + prefix Cisco-IOS-XR-ipv4-bgp-oc-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-bgp-oc package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-28 { + description + "Removing unsupported InvalidReason"; + semver:module-version "3.0.0"; + } + revision 2019-08-31 { + description + "Fixing revision error in module."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Fixing backward compatibility error in module"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bgp-oc-origin-attr { + type enumeration { + enum "igp" { + value 0; + description + "IGP"; + } + enum "egp" { + value 1; + description + "EGP"; + } + enum "incomplete" { + value 2; + description + "Incomplete"; + } + } + description + "Origin Type"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Bgp-oc-afi { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4 unicast"; + } + enum "ipv6" { + value 5; + description + "IPv6 unicast"; + } + } + description + "BGP Address family"; + } + + grouping BGP-OC-RIB-COMMON-BAG { + description + "OpenConfig BGP_RIB common attributes"; + leaf num-routes { + type uint64; + description + "NumRoutes"; + } + } + + grouping BGP-OC-DATE-AND-TIME { + description + "BGP OC DATE AND TIME"; + leaf time-value { + type string; + description + "TimeValue"; + } + } + + grouping BGP-OC-UNKNOWN-ATTR-TYPE { + description + "BGP OC UNKNOWN ATTR TYPE"; + leaf attribute-type { + type uint16; + description + "BGP attribute type that is unknown or not + understood"; + } + leaf attribute-length { + type uint16; + description + "BGP attribute length that is unknown or not + understood"; + } + leaf attribute-value { + type yang:hex-string; + description + "BGP attribute value that is unknown or not + understood"; + } + } + + grouping BGP-OC-EXT-ATTR { + description + "BGP OC EXT ATTR"; + leaf originator-id { + type inet:ipv4-address; + description + "BGP Originator ID"; + } + leaf aigp { + type uint64; + description + "Accumulated Interior Gateway Protocol (AIGP) + metric value"; + } + leaf path-id { + type uint32; + description + "BGP Path Identifier"; + } + leaf-list cluster { + type inet:ipv4-address; + description + "List of cluster IDs"; + } + list ext-community { + description + "Array of extended communities"; + uses BGP-OC-STRING-TYPE; + } + list unknown-attributes { + description + "List of BGP attributes that are unknown"; + uses BGP-OC-UNKNOWN-ATTR-TYPE; + } + } + + grouping BGP-OC-STRING-TYPE { + description + "Names of bgp oc objects"; + leaf objects { + type string; + description + "BGP OC objects"; + } + } + + grouping BGP-OC-AGGREGATOR-TYPE { + description + "BGP OC AGGREGATOR TYPE"; + leaf as { + type uint32; + description + "AS number"; + } + leaf as4 { + type uint32; + description + "AS4 number"; + } + leaf address { + type inet:ipv4-address; + description + "IPv4 address"; + } + } + + grouping BGP-OC-ROUTE-ATTR { + description + "BGP OC ROUTE ATTR"; + container next-hop { + description + "NextHopAddress"; + uses BGP-OC-ADDRTYPE; + } + container aggregrator-attributes { + description + "AggregatorList"; + uses BGP-OC-AGGREGATOR-TYPE; + } + leaf origin-type { + type Bgp-oc-origin-attr; + description + "Origin Attribute Type"; + } + leaf as-path { + type string; + description + "AS Path"; + } + leaf as4-path { + type string; + description + "AS4 Path"; + } + leaf med { + type uint32; + description + "Med"; + } + leaf local-pref { + type uint32; + description + "LocalPref"; + } + leaf atomic-aggr { + type boolean; + description + "AtomicAggr"; + } + list community { + description + "CommunityArray"; + uses BGP-OC-STRING-TYPE; + } + } + + grouping BGP-OC-ADDRTYPE { + description + "BGP OC ADDRTYPE"; + leaf afi { + type Bgp-oc-afi; + description + "AFI"; + } + leaf ipv4-address { + when "../afi = 'ipv4'" { + description + "../AFI = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../afi = 'ipv6'" { + description + "../AFI = 'IPv6'"; + } + type Ipv6-address; + description + "IPv6 Addr"; + } + } + + grouping BGP-OC-PREFIXTYPE { + description + "BGP OC PREFIXTYPE"; + container prefix { + description + "IPv4 or IPv6 network address prefix"; + uses BGP-OC-ADDRTYPE; + } + leaf prefix-length { + type uint8; + description + "Length of the subnet prefix"; + } + } + + grouping BGP-OC-ROUTE-BAG { + description + "OpenConfig BGP_RIB Route"; + container prefix-name { + description + "Prefix"; + uses BGP-OC-PREFIXTYPE; + } + container route-attr-list { + description + "RouteAttributesList"; + uses BGP-OC-ROUTE-ATTR; + } + container ext-attributes-list { + description + "ExtAttributesList"; + uses BGP-OC-EXT-ATTR; + } + container last-modified-date { + description + "LastModifiedDate"; + uses BGP-OC-DATE-AND-TIME; + } + container last-update-recieved { + description + "LastUpdateRecieved"; + uses BGP-OC-DATE-AND-TIME; + } + leaf valid-route { + type boolean; + description + "ValidRoute"; + } + leaf best-path { + type boolean; + description + "BestPath"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper.yang new file mode 100644 index 000000000..41da93003 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oc-oper.yang @@ -0,0 +1,195 @@ +module Cisco-IOS-XR-ipv4-bgp-oc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-oc-oper"; + prefix ipv4-bgp-oc-oper; + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-bgp-oc-oper-sub1 { + revision-date 2020-01-28; + } + + 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-bgp-oc package operational data. + + This module contains definitions + for the following management objects: + oc-bgp: OC-BGP operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-28 { + description + "Removing unsupported InvalidReason"; + semver:module-version "3.0.0"; + } + revision 2019-08-31 { + description + "Fixing revision error in module."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Fixing backward compatibility error in module"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ROUTE-TABLE { + description + "Common node of loc-rib, adj-rib-in-pre, + adj-rib-in-post, adj-rib-out-pre, + adj-rib-out-post"; + container routes { + description + "routes table"; + list route { + description + "route entry"; + leaf route { + type inet:ip-prefix; + description + "Network in prefix/length format"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IP address of the BGP Neighbor"; + } + leaf path-id { + type uint32 { + range "0..4294967295"; + } + description + "Received Path ID"; + } + uses BGP-OC-ROUTE-BAG; + } + } + } + + grouping LOC-RIB { + description + "Common node of ipv4-unicast, ipv6-unicast"; + container loc-rib { + description + "Local rib route table"; + uses ROUTE-TABLE; + uses NUM-ROUTES; + } + } + + grouping NUM-ROUTES { + description + "Common node of loc-rib, adj-rib-in-pre, + adj-rib-in-post, adj-rib-out-pre, + adj-rib-out-post"; + container num-routes { + description + "Number of routes in adjacency rib out-bound + post-policy table"; + uses BGP-OC-RIB-COMMON-BAG; + } + } + + grouping OPEN-CONFIG-NEIGHBOR-TABLE { + description + "Common node of ipv4-unicast, ipv6-unicast"; + container open-config-neighbors { + description + "Neighbor list"; + list open-config-neighbor { + key "neighbor-address"; + description + "Neighbor name"; + container adj-rib-in-post { + description + "Adjacency rib in-bound post-policy table"; + uses ROUTE-TABLE; + uses NUM-ROUTES; + } + container adj-rib-out-post { + description + "Adjacency rib out-bound post-policy table"; + uses ROUTE-TABLE; + uses NUM-ROUTES; + } + container adj-rib-out-pre { + description + "Adjacency rib out-bound pre-policy table"; + uses ROUTE-TABLE; + uses NUM-ROUTES; + } + container adj-rib-in-pre { + description + "Adjacency rib in-bound pre-policy table"; + uses ROUTE-TABLE; + uses NUM-ROUTES; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor Address"; + } + } + } + } + + container oc-bgp { + config false; + description + "OC-BGP operational data"; + container bgp-rib { + description + "BGP-RIB operational data"; + container afi-safi-table { + description + "AFI-SAFIs information"; + container ipv4-unicast { + description + "IPv4 Unicast"; + uses LOC-RIB; + uses OPEN-CONFIG-NEIGHBOR-TABLE; + } + container ipv6-unicast { + description + "IPv6 Unicast"; + uses LOC-RIB; + uses OPEN-CONFIG-NEIGHBOR-TABLE; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper-sub1.yang new file mode 100644 index 000000000..4eeabed2a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper-sub1.yang @@ -0,0 +1,19594 @@ +submodule Cisco-IOS-XR-ipv4-bgp-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-bgp-oper { + prefix Cisco-IOS-XR-ipv4-bgp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-bgp package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-03 { + description + "Updated show bgp nexthop-set output to include retain-counter and show bgp label to include RPC information + 2023-01-18 + Updated BMP path information to include link-local nexthop and netxhop route-distinguisher information + 2022-11-11 + Modified type of Last Received Message in per-neighbor information + 2022-11-03 + Added oc-rib attribute index in BGP path information + 2022-10-14 + Added Last Received Message for per neighbor + 2022-10-06 + Added server states in per BMP server convergence data + 2022-10-04 + Added delay and other timers for BMP server + 2022-09-23 + Added BMP route-monitoring suport for L3VPN inbound post-policy and Local RIB, Deprecated container policy under route-monitoring + 2022-09-21 + Added prefix received counter to count the routes received before ingress policy run + 2022-06-02 + Added update wait install delay leaf. + 2022-05-17 + Added srte bgp prefix label ignore flag to nexthop + 2022-02-18 + Added interface-name key to next-hop-af leaf. + 2022-02-07 + Added address family string under af-array + 2021-11-29 + Added next hop encapsulation type for MPLS over UDP tunnel + 2021-11-15 + Added interafi leak information in update out + 2021-11-12 + Updated convergence operational information + 2021-11-09 + Added oper for Nexthop sync slot"; + semver:module-version "6.0.0"; + } + revision 2021-10-16 { + description + "Added Oper for mamximum-paths deterministic + 2021-06-27 + Added PathLocalSidTable and PathReceivedSidTable"; + semver:module-version "5.0.0"; + } + revision 2021-05-10 { + description + "Added platform capability mix srte CLI + 2021-03-15 + Added Export Allow Config for backup + 2021-03-05 + Deprecated Hidden commands + 2021-03-05 + Added SR Policy Path Prefernce in Bestpath Compare + 2020-10-04 + Added Soft NextHop Validation and Metric + 2020-09-30 + Added LATEST bestpath comparison reason + 2020-09-18 + Added SRv6 TE BSID information + 2020-07-15 + Changed VRFDBVRFTable pathformat"; + semver:module-version "4.0.0"; + } + revision 2020-06-23 { + description + "changed the afi from integer to string in BPM entities + 2020-03-30 + Extended flags to 16 bits and changed leaf names as per convention"; + semver:module-version "3.0.0"; + } + revision 2020-01-11 { + description + "Fixing invalid range for prefix length. + 2019-08-31 + Fixing revision error in module."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Fixing backward compatibility error in module"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Added schema for opercoverage missing paths"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-08-27 { + description + "IOS XR 5.3.2 revision."; + } + + typedef Bgp-label-rpf-install { + type enumeration { + enum "bgp-label-rpf-install-rib" { + value 0; + description + "Install via RIB"; + } + enum "bgp-label-rpf-install-lsd" { + value 1; + description + "Install via LSD"; + } + } + description + "BGP Label RPF Install Path"; + } + + typedef Bgp-rpki-perror { + type enumeration { + enum "none" { + description + "No protocol error"; + } + enum "message-version" { + description + "Message version error"; + } + enum "message-type" { + description + "Message type error"; + } + enum "message-length" { + description + "Message length error"; + } + enum "nonce-mismatch" { + description + "Server nonce mismatch"; + } + enum "bad-prefix" { + description + "Bad ROA"; + } + enum "fsm" { + description + "FSM error"; + } + enum "no-response" { + description + "No response from server"; + } + enum "error-report" { + description + "Server sent error-report"; + } + } + description + "Bgp rpki perror"; + } + + typedef Bgp-rpki-pstate { + type enumeration { + enum "not-started" { + description + "Server protocol has not started"; + } + enum "reset" { + description + "Server protocol reset"; + } + enum "refresh" { + description + "Server protocol resumed"; + } + enum "reset-query-sent" { + description + "Reset query sent to server"; + } + enum "serial-query-sent" { + description + "Serial query sent to server"; + } + enum "data-start" { + description + "Server started sending data"; + } + enum "data-end" { + description + "Server ended sending data"; + } + } + description + "Bgp rpki pstate"; + } + + typedef Bgp-rpki-creason { + type enumeration { + enum "no-close-reason" { + value 0; + description + "No close reason"; + } + enum "read-error" { + value 1; + description + "Socket Read error"; + } + enum "write-error" { + value 2; + description + "Socket Write error"; + } + enum "proto-error" { + value 3; + description + "Protocol error"; + } + enum "config-shutdown" { + value 4; + description + "Shutdown by configuration"; + } + enum "config-removed" { + value 5; + description + "Configuration removed"; + } + enum "config-changed" { + value 6; + description + "Configuration changed"; + } + enum "nsr-disabled" { + value 7; + description + "NSR disabled"; + } + enum "user-clear" { + value 8; + description + "Explicity user clear"; + } + enum "ssh-died" { + value 9; + description + "SSH process died"; + } + enum "tcp-died" { + value 10; + description + "TCP process died"; + } + } + description + "Bgp rpki creason"; + } + + typedef Bgp-rpki-state { + type enumeration { + enum "idle" { + value 0; + description + "Server is idle"; + } + enum "attempt-connect" { + value 1; + description + "Connect attempt made to server"; + } + enum "connected" { + value 2; + description + "Server is connected"; + } + } + description + "Bgp rpki state"; + } + + typedef Bgp-ism-conn-state { + type enumeration { + enum "none" { + description + "None - ST 0"; + } + enum "connect-done" { + description + "ISSUMgr connection done - ST 1"; + } + } + description + "Bgp ism conn state"; + } + + typedef Bgp-ds-conn-state { + type enumeration { + enum "none" { + description + "DS connection not initiated - ST 0"; + } + enum "connect-init" { + description + "DS connection initiated - ST 1"; + } + enum "connect-fail" { + description + "DS connection failed - ST 2"; + } + enum "connect-estb" { + description + "DS connection established - ST 3"; + } + enum "disconnect-init" { + description + "DS disconnect initiated - ST 4"; + } + enum "disconnect-fail" { + description + "DS disconnect failed - ST 5"; + } + enum "disconnect-done" { + description + "DS disconnect done - ST 6"; + } + } + description + "Bgp ds conn state"; + } + + typedef Bgp-scoped-sync-state { + type enumeration { + enum "bgp-scope-sync-state-none" { + description + "State none"; + } + enum "bgp-scope-sync-state-not-nsr-ready" { + description + "Oper Down when NSR not ready"; + } + enum "bgp-scope-sync-state-timer-start" { + description + "Timer started for active batch"; + } + enum "bgp-scope-sync-state-add-list" { + description + "Start adding neighbors to pending batch"; + } + enum "bgp-scope-sync-state-batch-acitve" { + description + "Active batch"; + } + } + description + "Bgp scoped sync state"; + } + + typedef Bgp-bmp-upd-mode { + type enumeration { + enum "bgp-bmp-upd-n-either" { + value 0; + description + "Neither of the modes are enabled"; + } + enum "bgp-bmp-upd-route-mon" { + value 1; + description + "Route Monotoring mode enabled"; + } + enum "bgp-bmp-upd-route-mirr" { + value 2; + description + "Route Mirroring mode is enabled"; + } + } + description + "Bgp bmp upd mode"; + } + + typedef Bgp-bmp-state { + type enumeration { + enum "none" { + value 0; + description + "BMP NOT Connected"; + } + enum "connecting" { + value 1; + description + "BMP Under Connection"; + } + enum "established" { + value 2; + description + "BMP Connection Established"; + } + enum "closing" { + value 3; + description + "BMP Connection Closing"; + } + } + description + "BMP Connection State"; + } + + typedef Bgp-bag-upd-filter-action { + type enumeration { + enum "none" { + value 0; + description + "No Action"; + } + enum "withdraw" { + value 1; + description + "Withdraw NLRI"; + } + enum "attribute-discard" { + value 2; + description + "Discard Attribute"; + } + } + description + "Bgp bag upd filter action"; + } + + typedef Bgp-bag-upd-err-action { + type enumeration { + enum "bgp-bag-upd-err-action-none" { + value 0; + description + "No Action"; + } + enum "bgp-bag-upd-err-action-discard-msg" { + value 1; + description + "Discard Message"; + } + enum "bgp-bag-upd-err-action-reset" { + value 2; + description + "Session Reset"; + } + enum "bgp-bag-upd-err-action-wdr-or-reset" { + value 3; + description + "Withdraw NLRI or Reset"; + } + enum "bgp-bag-upd-err-action-wdr" { + value 4; + description + "Withdraw NLRI"; + } + enum "bgp-bag-upd-err-action-discard-attr" { + value 5; + description + "Discard Attribute"; + } + enum "bgp-bag-upd-err-action-local-repair" { + value 6; + description + "Local Repair"; + } + enum "bgp-bag-upd-err-action-max" { + value 7; + description + "Maximum number of actions"; + } + } + description + "Bgp bag upd err action"; + } + + typedef Bgp-updgen-nbr-refresh-state { + type enumeration { + enum "bgp-upd-refresh-nbr-none" { + value 0; + description + "Neighbor is not it Refresh Subgroup"; + } + enum "bgp-upd-refresh-nbr-refresh" { + value 1; + description + "Neighbor is processing Refresh"; + } + enum "bgp-upd-refresh-nbr-s-low" { + value 2; + description + "Neighbor is processing Slow(dynamic)"; + } + enum "bgp-upd-refresh-nbr-rtc" { + value 3; + description + "Neighbor is processing RTC"; + } + enum "bgp-upd-refresh-nbr-s-low-rtc" { + value 4; + description + "Neighbor is processing Slow and RTC"; + } + } + description + "Bgp updgen nbr refresh state"; + } + + typedef Bgp-slow-peer-static-dynamic { + type enumeration { + enum "bgp-s-low-peer-upd-gen-other" { + value 0; + description + "Slow peer is other than static and dynamic + detected"; + } + enum "bgp-s-low-peer-upd-gen-static" { + value 1; + description + "Slow peer is static"; + } + enum "bgp-s-low-peer-upd-gen-dyn-detected" { + value 2; + description + "Slow peer is dynamic detected"; + } + } + description + "BGP slow peer state"; + } + + typedef Bgp-message { + type enumeration { + enum "none" { + description + "None"; + } + enum "open" { + description + "Open"; + } + enum "update" { + description + "Update"; + } + enum "notification" { + description + "Notification"; + } + enum "keepalive" { + description + "KeepAlive"; + } + enum "refresh-req" { + description + "Route-Refresh Request"; + } + } + description + "Bgp message"; + } + + typedef Bgp-gshut-bw-edm-state { + type enumeration { + enum "bgp-gshut-bw-edm-state-init" { + value 0; + description + "Not Configured"; + } + enum "bgp-gshut-bw-edm-state-validate" { + value 1; + description + "Validating Update"; + } + enum "bgp-gshut-bw-edm-state-no-op" { + value 2; + description + "Non Operational"; + } + enum "bgp-gshut-bw-edm-state-learn" { + value 3; + description + "Learning from Interface"; + } + enum "bgp-gshut-bw-edm-state-compute" { + value 4; + description + "Processing"; + } + enum "bgp-gshut-bw-edm-state-active" { + value 5; + description + "Graceful-Maintenance Active"; + } + enum "bgp-gshut-bw-edm-state-inactive" { + value 6; + description + "Inactive as Bandwidth threshold met"; + } + enum "bgp-gshut-bw-edm-state-max" { + value 7; + description + "Invalid State"; + } + } + description + "Bgp gshut bw edm state"; + } + + typedef Bgp-slow-peer-state { + type enumeration { + enum "bgp-s-low-peer-none-state" { + value 0; + description + "Slow peer is none"; + } + enum "bgp-s-low-peer-static-state" { + value 1; + description + "Slow peer is static"; + } + enum "bgp-s-low-peer-dynamic-state" { + value 2; + description + "Slow peer is dynamic"; + } + enum "bgp-s-low-peer-detection-only-state" { + value 3; + description + "Slow peer is detection-only"; + } + } + description + "BGP slow peer state"; + } + + typedef Bgp-track-state { + type enumeration { + enum "bgp-track-state-unknown" { + value 0; + description + "Track state is Unknown"; + } + enum "bgp-track-state-down" { + value 1; + description + "Track state is Down"; + } + enum "bgp-track-state-up" { + value 2; + description + "Track state is Up"; + } + } + description + "BGP Track state"; + } + + typedef Bgp-peer-reset-reason-index { + type enumeration { + enum "bgp-read-remote-closed" { + value 1; + description + "Remote closed the session"; + } + enum "bgp-read-failed" { + value 2; + description + "Read failed"; + } + enum "bgp-write-failed" { + value 3; + description + "Write failed"; + } + enum "bgp-sock-disconnected" { + value 4; + description + "Socket disconnected"; + } + enum "bgp-sock-select-failed" { + value 5; + description + "Socket select failed"; + } + enum "bgp-peer-reset-reason-none" { + value 6; + description + "None"; + } + } + description + "Bgp peer reset reason index"; + } + + typedef Bgp-reset-reason-index { + type enumeration { + enum "bgp-none" { + value 0; + description + "None"; + } + enum "bgp-init" { + value 1; + description + "BGP neighbor initialized"; + } + enum "bgp-no-memory" { + value 2; + description + "No memory"; + } + enum "not-received" { + value 3; + description + "BGP Notification received"; + } + enum "not-sent" { + value 4; + description + "BGP Notification sent"; + } + enum "conn-collision" { + value 5; + description + "Error during connection collision"; + } + enum "peer-closed" { + value 6; + description + "Peer closing down the session"; + } + enum "max-prefix-exceeded" { + value 7; + description + "Peer exceeding maximum prefix limit"; + } + enum "interface-flap" { + value 8; + description + "Interface flap"; + } + enum "neighbor-deleted" { + value 9; + description + "Neighbor deleted"; + } + enum "admin-shutdown" { + value 10; + description + "Admin. shutdown"; + } + enum "af-activated" { + value 11; + description + "Address family activated"; + } + enum "af-deactivated" { + value 12; + description + "Address family removed"; + } + enum "protocol-error" { + value 13; + description + "Protocol Error"; + } + enum "listen-closed" { + value 14; + description + "Listen socket was closed"; + } + enum "rib-failed" { + value 15; + description + "Routing Table process not responding"; + } + enum "user-clear" { + value 16; + description + "User clear requested"; + } + enum "user-clear-gr" { + value 17; + description + "User clear with graceful restart requested"; + } + enum "router-id-changed" { + value 18; + description + "Router ID changed"; + } + enum "remote-as-changed" { + value 19; + description + "Remote AS configuration changed"; + } + enum "orf-changed" { + value 20; + description + "Outbound route filter configuration changed"; + } + enum "rr-client-changed" { + value 21; + description + "RR client configuration changed"; + } + enum "legacy-pe-rt-changed" { + value 22; + description + "Legacy-pe-RT configuration changed"; + } + enum "softre-config-changed" { + value 23; + description + "Soft reconfiguration configuration changed"; + } + enum "local-as-changed" { + value 24; + description + "Local AS configuration changed"; + } + enum "low-memory" { + value 25; + description + "Shutdown during SEVERE low memory condition"; + } + enum "bfd-down" { + value 26; + description + "BFD (Bidirectional forwarding detection) + session down"; + } + enum "allow-as-in-changed" { + value 27; + description + "Allowas-in configuration has changed"; + } + enum "recv-dmz-cfg" { + value 28; + description + "Recv DMZ Config changed"; + } + enum "cap-4byteas-changed" { + value 29; + description + "Capablity 4-byte-as configuration has changed"; + } + enum "tcp-oper-down" { + value 30; + description + "Received tcp oper down"; + } + enum "scoped-sync-retry" { + value 31; + description + "Scoped sync is repeated due to strict prefix + check failure"; + } + enum "cluster-id-changed" { + value 32; + description + "Neighbor moved to a new cluster"; + } + enum "rr-disable-changed" { + value 33; + description + "Client-to-client reflection disabled/enabled + for cluster to which neighbor belongs"; + } + enum "aigp-changed" { + value 34; + description + "AIGP configuration has changed for cluster to + which neighbor belongs"; + } + enum "signalling-changed" { + value 35; + description + "L2VPN Signalling Changed"; + } + enum "open-check-s-failed" { + value 36; + description + "Session open checks failed"; + } + enum "ao-changed" { + value 37; + description + "Accept-own changed"; + } + enum "llgr-staletime-changed" { + value 38; + description + "Long-lived graceful-restart stale-time + configuration changed"; + } + enum "llgr-capable-changed" { + value 39; + description + "Long-lived graceful-restart capable + configuration changed"; + } + enum "nbr-local-addr-changed" { + value 40; + description + "Neighbor local address configuration changed"; + } + enum "internal-vpn-client-changed" { + value 41; + description + "Internal-vpn-client configuration changed"; + } + enum "cap-suppress-all-changed" { + value 42; + description + "All capabilities suppression changed"; + } + enum "next-hop-changed" { + value 43; + description + "Next hop configuration changed"; + } + enum "cap-suppress-enhe-changed" { + value 44; + description + "Extended-nexthop-encoding capability + suppression changed"; + } + } + description + "Bgp reset reason index"; + } + + typedef Bgp-bfd-enable-mode { + type enumeration { + enum "bgp-bfd-enable-mode-disable" { + value 0; + description + "BFD fast detect disabled "; + } + enum "bgp-bfd-enable-mode-def" { + value 1; + description + "BFD fast detect default mode "; + } + enum "bgp-bfd-enable-mode-strict" { + value 2; + description + "BFD fast detect hold down aka strict mode"; + } + } + description + "BFD enable mode"; + } + + typedef Bgp-bfd-state { + type enumeration { + enum "bgp-bfd-state-not-configured" { + value 0; + description + "BFD not configured"; + } + enum "bgp-bfd-state-admin-down" { + value 1; + description + "BFD session disabled (neighbor shutdown)"; + } + enum "bgp-bfd-state-not-supported" { + value 2; + description + "BFD session disabled (interface type not + supported)"; + } + enum "bgp-bfd-state-not-created" { + value 3; + description + "BFD session configured, not yet created"; + } + enum "bgp-bfd-state-created" { + value 4; + description + "BFD session created, state notification not + received"; + } + enum "bgp-bfd-state-up" { + value 5; + description + "BFD session up"; + } + enum "bgp-bfd-state-down" { + value 6; + description + "BFD session down"; + } + enum "bgp-bfd-state-nbr-not-configured" { + value 7; + description + "BFD session down (peer not configured)"; + } + enum "bgp-bfd-state-none" { + value 8; + description + "BFD session (yet ro rcv Notification)"; + } + } + description + "BFD session state"; + } + + typedef Bgp-open-check-err { + type enumeration { + enum "none" { + value 0; + description + "No error"; + } + enum "neighbor-down" { + value 1; + description + "Neighbor down"; + } + enum "no-update-group-set" { + value 2; + description + "No update-group set"; + } + enum "no-af-config" { + value 3; + description + "No AF configured"; + } + enum "update-group-pending" { + value 4; + description + "Update-group pending"; + } + enum "low-memory" { + value 5; + description + "Low memory"; + } + enum "neighbor-shutdown" { + value 6; + description + "Neighbor shutdown"; + } + enum "ebgp-neighbor-remote" { + value 7; + description + "eBGP neighbor is remote"; + } + enum "update-source-interface-null" { + value 8; + description + "Update source invalid"; + } + enum "no-ipv6-address" { + value 9; + description + "No global IPv6 address found"; + } + enum "first-hop-interface-null" { + value 10; + description + "First-hop interface invalid"; + } + enum "no-ipv6ll-address" { + value 11; + description + "No LL IPv6 address found"; + } + enum "no-update-source-config" { + value 12; + description + "No update-source configured"; + } + enum "no-router-id" { + value 13; + description + "No router-identifier"; + } + enum "update-source-interface-get-failed" { + value 14; + description + "Update-source interface get failed"; + } + enum "update-source-interface-state-get-failed" { + value 15; + description + "Update-source interface state get failed"; + } + enum "update-source-interface-down" { + value 16; + description + "Update-source interface down"; + } + enum "update-source-interface-ll-get-failed" { + value 17; + description + "Update-source interface LL get failed"; + } + enum "update-source-interface-address-get-failed" { + value 18; + description + "Update-source interface address get failed"; + } + enum "source-address-af-invalid" { + value 19; + description + "Source-address AF invalid"; + } + enum "no-update-source-ll-peering" { + value 20; + description + "No update-source for LL peering"; + } + enum "local-address-get-failed" { + value 21; + description + "Local-address get failed"; + } + enum "no-best-local-address" { + value 22; + description + "No best local-address"; + } + enum "neighbor-address-equals-local-address" { + value 23; + description + "Neighbor address is local address"; + } + enum "neighbor-closing" { + value 24; + description + "Neighbor in closing state"; + } + enum "neighbor-pending-reset" { + value 25; + description + "Neighbor in pending reset state"; + } + enum "out-interface-set-failed" { + value 26; + description + "Out-interface set failed"; + } + enum "local-address-mismatch" { + value 27; + description + "Local-address mismatch"; + } + enum "neighbor-active-only" { + value 28; + description + "Neighbor in active only mode"; + } + enum "socket-init-failed" { + value 29; + description + "Socket init failed"; + } + enum "socket-operation-failed" { + value 30; + description + "Socket operation failed"; + } + enum "local-neighbor" { + value 31; + description + "Neighbor is local"; + } + enum "multi-hop-neighbor" { + value 32; + description + "No router to multi-hop neighbor"; + } + } + description + "BGP open check error types"; + } + + typedef Bgp-nh-validate { + type enumeration { + enum "bgp-nh-validate-sync" { + description + "bgp nh validate sync"; + } + enum "bgp-nh-validate-async" { + description + "bgp nh validate async"; + } + enum "bgp-nh-validate-none" { + description + "bgp nh validate none"; + } + } + description + "Bgp nh validate"; + } + + typedef Bgp-nh-update { + type enumeration { + enum "bgp-nh-update-none" { + value 0; + description + "No nh update yet"; + } + enum "bgp-nh-update-crit-not-f" { + value 1; + description + "Last nh update is crit notf"; + } + enum "bgp-nh-update-crit-sync" { + value 2; + description + "Last nh update is crit sync update"; + } + enum "bgp-nh-update-crit-rib-conv" { + value 3; + description + "Last nh update is crit update caused by rib + converge"; + } + enum "bgp-nh-update-crit-table-down" { + value 4; + description + "Last nh update is crit update caused by table + down"; + } + enum "bgp-nh-update-non-crit-not-f" { + value 5; + description + "Last nh update is non-crit notf"; + } + enum "bgp-nh-update-non-crit-sync" { + value 6; + description + "Last nh update is non-crit sync update"; + } + enum "bgp-nh-update-non-crit-rib-conv" { + value 7; + description + "Last nh update is non-crit update caused by rib + converge"; + } + enum "bgp-nh-update-non-crit-table-down" { + value 8; + description + "Last nh update is non-crit update caused by + table down"; + } + } + description + "Bgp nh update"; + } + + typedef Bgp-nh-event { + type enumeration { + enum "bgp-nh-event-crit-not-f" { + value 0; + description + "Last event received is a crit notf"; + } + enum "bgp-nh-event-non-crit-not-f" { + value 1; + description + "Last event received is a non-crit notf"; + } + enum "bgp-nh-event-registration" { + value 2; + description + "Last event sent is a registration"; + } + } + description + "Bgp nh event"; + } + + typedef Bgp-rtr-state { + type enumeration { + enum "bgp-router-read-only" { + value 0; + description + "Read only mode"; + } + enum "bgp-router-do-best-path" { + value 1; + description + "Bestpath calculation mode"; + } + enum "bgp-router-do-tunnel-update" { + value 2; + description + "Tunnel update mode"; + } + enum "bgp-router-do-import" { + value 3; + description + "Import mode"; + } + enum "bgp-router-do-label-alloc" { + value 4; + description + "Label Allocation mode"; + } + enum "bgp-router-do-ribupd" { + value 5; + description + "RIB update mode"; + } + enum "bgp-router-read-write" { + value 6; + description + "Normal (read/write) mode"; + } + enum "bgp-router-mode-count" { + value 7; + description + "Number of router modes"; + } + } + description + "Bgp rtr state"; + } + + typedef Bgp-rnh-addr-len { + type enumeration { + enum "none" { + value 0; + description + "NO address length"; + } + enum "v4" { + value 4; + description + "IP v4 address length"; + } + enum "mac" { + value 6; + description + "MAC address length"; + } + enum "v6" { + value 16; + description + "IP v6 address length"; + } + } + description + "BGP RNH Address Length"; + } + + typedef Sr-sid { + type enumeration { + enum "label" { + value 1; + description + "MPLS Label sid"; + } + enum "ipv4" { + value 2; + description + "IPv4 address"; + } + enum "ipv6" { + value 3; + description + "IPv6 address"; + } + } + description + "Segment id type"; + } + + typedef Bgp-srpolicy-req-state { + type enumeration { + enum "request-pending" { + value 0; + description + "SR policy install in dataplane not requested + yet"; + } + enum "requested" { + value 1; + description + "Requested SR policy install dataplane"; + } + enum "notified-up" { + value 2; + description + "SR policy is UP"; + } + enum "notified-down" { + value 4; + description + "SR policy is notified down by XTC"; + } + enum "marked-stale" { + value 8; + description + "SR policy is marked stale due to XTC agent down"; + } + enum "marked-disable" { + value 16; + description + "SR policy is marked disabled from the config in + XTC"; + } + } + description + "BGP SR Policy Internal State"; + } + + typedef Bgp-binding-sid { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "label" { + value 1; + description + "Binding SID type MPLS label"; + } + enum "v6" { + value 2; + description + "Binding SID type ipv6"; + } + } + description + "BGP Binding SID type"; + } + + typedef Bgp-bp-stage { + type enumeration { + enum "bgp-bp-comp-not-compared" { + value 0; + description + "Best path comparison not performed"; + } + enum "bgp-bp-comp-imulti-path" { + value 1; + description + "Path is an iBGP multipath"; + } + enum "bgp-bp-comp-emulti-path" { + value 2; + description + "Path is an eBGP multipath"; + } + enum "bgp-bp-comp-eimulti-path" { + value 3; + description + "Path is an eiBGP multipath"; + } + enum "bgp-bp-invalid-path" { + value 4; + description + "Invalid path"; + } + enum "bgp-bp-comp-pre-cost-comm" { + value 5; + description + "TODO"; + } + enum "bgp-bp-comp-weight" { + value 6; + description + "Path has a lower weight"; + } + enum "bgp-bp-comp-af-specific" { + value 7; + description + "Less Favourable Address Family specific + attributes"; + } + enum "bgp-bp-comp-locpref" { + value 8; + description + "Path has a lower local preference"; + } + enum "bgp-bp-comp-rpki" { + value 9; + description + "Path has worse origin validation state"; + } + enum "bgp-bp-comp-aigp" { + value 10; + description + "TODO"; + } + enum "bgp-bp-comp-local" { + value 11; + description + "Path is not local"; + } + enum "bgp-bp-comp-local-rib" { + value 12; + description + "TODO"; + } + enum "bgp-bp-comp-as-path-len" { + value 13; + description + "Path has a longer AS path"; + } + enum "bgp-bp-comp-origin" { + value 14; + description + "Path has a less favorable origin"; + } + enum "bgp-bp-comp-med" { + value 15; + description + "Path has a lower MED"; + } + enum "bgp-bp-comp-ebgp" { + value 16; + description + "Path lost to an eBGP path"; + } + enum "bgp-bp-comp-ao" { + value 17; + description + "Path has Accept-Own community"; + } + enum "bgp-bp-comp-xtc-nh-ad" { + value 18; + description + "Path has a higher SR-TE nexthop admin distance"; + } + enum "bgp-bp-comp-igp-metric" { + value 19; + description + "Path has a higher IGP metric"; + } + enum "bgp-bp-comp-igp-cost-comm" { + value 20; + description + "TODO"; + } + enum "bgp-bp-comp-rtr-id" { + value 21; + description + "Path has a higher router ID"; + } + enum "bgp-bp-comp-clstr-len" { + value 22; + description + "Path has a longer cluster length"; + } + enum "bgp-bp-comp-nbr-addr" { + value 23; + description + "Path has a higher neighbor address"; + } + enum "bgp-bp-comp-suppressed" { + value 24; + description + "Path is newer than best path"; + } + enum "bgp-bp-comp-mismatch" { + value 25; + description + "Best path comparison failed, perhaps due to + recent configuration changes"; + } + enum "bgp-bp-comp-persistence" { + value 26; + description + "Path is persistent"; + } + enum "bgp-bp-comp-gshut" { + value 27; + description + "Path received from a neighbor in graceful + maintenance"; + } + enum "bgp-bp-comp-la-test" { + value 28; + description + "Path is older"; + } + enum "bgp-bp-comp-srte-tunnel-down" { + value 29; + description + "Non SR-policy path is ignored due to config + knob"; + } + } + description + "Bgp bp stage"; + } + + typedef Bgp-v4-v6-len { + type enumeration { + enum "gwnone" { + value 0; + description + "NO address length"; + } + enum "gwipv4" { + value 4; + description + "IP v4 address length"; + } + enum "gwipv6" { + value 16; + description + "IP v6 address length"; + } + } + description + "BGP GW Address Length"; + } + + typedef Bgp-tunnel { + type enumeration { + enum "tunnel-none" { + value 0; + description + "Tunnel not applicable"; + } + enum "attrset" { + value 1; + description + "Attribute set TE tunnel"; + } + enum "sr-policy" { + value 2; + description + "SR Policy"; + } + enum "odn-policy" { + value 4; + description + "ODN color"; + } + } + description + "BGP tunnel type"; + } + + typedef Bgp-route1 { + type enumeration { + enum "bgp-route-type-used" { + value 0; + description + "Used path from neighbor"; + } + enum "bgp-route-type-rcvd-only" { + value 1; + description + "Received only path from neighbor"; + } + enum "bgp-route-type-safi-label-ed-ucast-used" { + value 2; + description + "Used path from neighbor received via + labeled-unicast SAFI"; + } + enum "bgp-route-type-safi-label-ed-ucast-rcvd-only" { + value 3; + description + "Received only path from neighbor received via + labeled-unicast SAFI"; + } + enum "bgp-route-type-rib" { + value 4; + description + "Redistributed from the RIB"; + } + enum "bgp-route-type-aggregate" { + value 5; + description + "Locally generated aggregate"; + } + enum "bgp-route-type-max" { + value 6; + description + "Number of route types"; + } + } + description + "Bgp route1"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC Address type"; + } + + typedef Bgp-rpki-af { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4"; + } + enum "ipv6" { + value 26; + description + "IPv6"; + } + } + description + "Bgp rpki af"; + } + + typedef Bgp-sync-nbr-nsr-state { + type enumeration { + enum "bgp-nbr-nsr-st-none" { + description + "None - ST 0"; + } + enum "bgp-nbr-nsr-st-oper-down" { + description + "TCP OPER_DOWN notfn received - ST 1"; + } + enum "bgp-nbr-nsr-st-tcp-init-sync" { + description + "TCP initial sync in progress - ST 2"; + } + enum "bgp-nbr-nsr-st-tcp-phase-two" { + description + "TCP initial sync phase two in progress - ST 3"; + } + enum "bgp-nbr-nsr-st-bgp-init-sync" { + description + "BGP initial sync in progress - ST 4"; + } + enum "bgp-nbr-nsr-st-nsr-ready" { + description + "Neighbor NSR ready - ST 5"; + } + } + description + "Bgp sync nbr nsr state"; + } + + typedef Bgp-conn-state { + type enumeration { + enum "bgp-st-dont-care" { + value 0; + description + "DontCare"; + } + enum "bgp-st-idle" { + value 1; + description + "Idle"; + } + enum "bgp-st-connect" { + value 2; + description + "Connect"; + } + enum "bgp-st-active" { + value 3; + description + "Active"; + } + enum "bgp-st-open-sent" { + value 4; + description + "OpenSent"; + } + enum "bgp-st-open-confirm" { + value 5; + description + "OpenConfirm"; + } + enum "bgp-st-estab" { + value 6; + description + "Established"; + } + enum "bgp-st-closing" { + value 7; + description + "Closing"; + } + enum "bgp-st-closing-sync" { + value 8; + description + "ClosingSync"; + } + } + description + "Bgp conn state"; + } + + typedef Bgp-gshut-bw-mode { + type enumeration { + enum "bgp-gshut-bw-aware-mode-none" { + value 0; + description + "Bandwidth-Aware Graceful-Maintenance not + configured"; + } + enum "bgp-gshut-bw-aware-mode-bandwidth" { + value 1; + description + "Bandwidth-Aware Graceful-Maintenance in + bandwidth threshold"; + } + enum "bgp-gshut-bw-aware-mode-percentage" { + value 2; + description + "Bandwidth-Aware Graceful-Maintenance in + percentage threshold"; + } + } + description + "Bgp gshut bw mode"; + } + + typedef Bgp-tcp-mode { + type enumeration { + enum "bgp-tcp-mode-type-either" { + value 0; + description + "Use either active or passive mode"; + } + enum "bgp-tcp-mode-type-active-only" { + value 1; + description + "Use active mode only"; + } + enum "bgp-tcp-mode-type-passive-only" { + value 2; + description + "Use passive mode only"; + } + } + description + "Bgp tcp mode"; + } + + typedef Bgp-ebgp-send-dmz-enable-mode { + type enumeration { + enum "bgp-ebgp-send-dmz-disable" { + value 0; + description + "EBGP send extended community dmz link bandwidth + disabled "; + } + enum "bgp-ebgp-send-dmz-dflt" { + value 1; + description + "EBGP send extended community dmz link bandwidth + default mode "; + } + enum "bgp-ebgp-send-dmz-cumulative" { + value 2; + description + "EBGP send extended community dmz link bandwidth + cumulative mode"; + } + } + description + "EBGP send extended community dmz link bandwidth + enable mode"; + } + + typedef Bgp-entities { + type enumeration { + enum "af-group" { + value 0; + description + "AF groups"; + } + enum "session-group" { + value 1; + description + "Session Groups"; + } + enum "neighbor-group" { + value 2; + description + "Neighbor Groups"; + } + enum "neighbor" { + value 3; + description + "Neighbors"; + } + } + description + "Entity type"; + } + + typedef Ipv6-flowspec-address { + type xr:Bgp-ipv6-flowspec-address; + description + "IPv6 Flowspec Address type"; + } + + typedef Ipv4-flowspec-address { + type xr:Bgp-ipv4-flowspec-address; + description + "IPv4 Flowspec Address type"; + } + + typedef Ls-ls-address { + type xr:Bgp-ls-addr; + description + "LINKSTATE LINKSTATE Address type"; + } + + typedef Ipv4mvpn-address { + type xr:Bgp-ipv4-mvpn-addr; + description + "IPV4 MVPN Address type"; + } + + typedef Ipv6mvpn-address { + type xr:Bgp-ipv6-mvpn-addr; + description + "IPV6 MVPN Address type"; + } + + typedef Rt-constraint-address { + type xr:Bgp-rt-constrt-addr; + description + "IPV4 RTConstraint Address type"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Ipv4-mdt-address { + type xr:Bgp-ipv4-mdt-addr; + description + "IPV4MDT Address type"; + } + + typedef Ipv4-tunnel-address { + type xr:Bgp-ipv4-tunnel-addr; + description + "IPV4Tunnel Address type"; + } + + typedef Bgp-afi { + type enumeration { + enum "ipv4" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv4-multicast" { + value 1; + description + "IP v4 multicast"; + } + enum "ipv4-labeled" { + value 2; + description + "IP v4 label"; + } + enum "ipv4-tunnel" { + value 3; + description + "IP v4 Tunnel"; + } + enum "vpnv4" { + value 4; + description + "IP v4 virtual private network"; + } + enum "ipv6" { + value 5; + description + "IP v6 unicast"; + } + enum "ipv6-multicast" { + value 6; + description + "IP v6 multicast"; + } + enum "ipv6-labeled" { + value 7; + description + "IP v6 label"; + } + enum "vpnv6" { + value 8; + description + "IP v6 virtual private network"; + } + enum "ipv4-mdt" { + value 9; + description + "IP v4 Multicast Distribution Tree"; + } + enum "l2vpn-vpls" { + value 10; + description + "L2VPN VPLS"; + } + enum "rt-constraint" { + value 11; + description + "IP RT-Constraint"; + } + enum "ipv4-mvpn" { + value 12; + description + "IP v4 mvpn"; + } + enum "ipv6-mvpn" { + value 13; + description + "IP v6 mvpn"; + } + enum "l2vpn-evpn" { + value 14; + description + "L2VPN EVPN"; + } + enum "ls-ls" { + value 15; + description + "Link-state Link-state"; + } + enum "vpnv4-multicast" { + value 16; + description + "IP v4 virtual private network for multicast"; + } + enum "vpnv6-multicast" { + value 17; + description + "IP v6 virtual private network for multicast"; + } + enum "ipv4-flowspec" { + value 18; + description + "IP v4 flowspec"; + } + enum "ipv6-flowspec" { + value 19; + description + "IP v6 flowspec"; + } + enum "vpnv4-flowspec" { + value 20; + description + "IP v4 vpn flowspec"; + } + enum "vpnv6-flowspec" { + value 21; + description + "IP v6 vpn flowspec"; + } + enum "l2vpn-mspw" { + value 22; + description + "L2VPN Multi-segment pseudowire"; + } + enum "ipv4-sr-policy" { + value 23; + description + "IP v4 SR Policy"; + } + enum "ipv6-sr-policy" { + value 24; + description + "IP v6 SR Policy"; + } + enum "no-address-family" { + value 25; + description + "Address-family not applicable"; + } + enum "all-address-families" { + value 26; + description + "All address-families"; + } + } + description + "BGP Address family"; + } + + grouping BPM-ORR-GROUP-BAG { + description + "BPM ORR Group Information"; + container orr-root-address { + description + "ORR Root Address"; + uses BGP-ADDRTYPE; + } + container orr-sec-root-address { + description + "ORR Sec Root Address"; + uses BGP-ADDRTYPE; + } + container orr-ter-root-address { + description + "ORR ter Root Address"; + uses BGP-ADDRTYPE; + } + leaf orr-group-name { + type string; + description + "ORR Group Name"; + } + leaf is-orr-group-ipv4 { + type boolean; + description + "Is IPv4 ORR Group"; + } + leaf is-orr-global-defined { + type boolean; + description + "Is ORR group configured globally"; + } + leaf orrafi-ref-count { + type uint32; + description + "Number of used afis"; + } + leaf neighbor-count { + type uint32; + description + "Used by Total number of neighbors"; + } + leaf flex-algo { + type uint32; + description + "Flex algo value"; + } + leaf is-orr-root-address-configured { + type boolean; + description + "ORR Root address configured"; + } + leaf is-orr-sec-root-address-configured { + type boolean; + description + "ORR Sec Root address configured"; + } + leaf is-orr-ter-root-address-configured { + type boolean; + description + "ORR Ter Root address configured"; + } + list neighbor-af-count { + max-elements "25"; + description + "Used by Total number of neighbors per afi"; + leaf entry { + type uint32; + description + "Used by Total number of neighbors per afi"; + } + } + list used-af { + min-elements 25; + max-elements "25"; + description + "Is ORR group used by af"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + } + + grouping BGP-AFLIST-TYPE { + description + "Address Families information"; + leaf af-name { + type string; + description + "The name of Address Families"; + } + leaf is-enabled { + type boolean; + description + "Flag to indicat if this AF is enabled"; + } + } + + grouping BGP-INSTANCE-INFO { + description + "BGP instance information"; + leaf instance-identifier { + type uint16; + description + "The identifier of the BGP instance"; + } + leaf placed-group-id { + type uint16; + description + "Placed Group Identifier"; + } + leaf instance-name-str { + type string; + description + "BGP Instance Name"; + } + leaf as-number { + type uint32; + description + "AS Number"; + } + leaf number-of-vrfs { + type uint32; + description + "Number of VRFs"; + } + leaf read-only-enabled { + type boolean; + description + "Flag to indicate if BGP Read-Only mode is + enabled"; + } + leaf install-diversion-enabled { + type boolean; + description + "Flag to indicate if BGP Install diversion is + enabled"; + } + leaf srgb-start-configured { + type uint32; + description + "Configured start value of Segment-routing global + block"; + } + leaf srgb-end-configured { + type uint32; + description + "Configured end value of Segment-routing global + block"; + } + list af-array { + max-elements "25"; + description + "List of Address Families"; + uses BGP-AFLIST-TYPE; + } + } + + grouping BGP-INSTANCES-INFO-BAG { + description + "BGP instances information bag"; + list instance { + description + "Array of instance information"; + uses BGP-INSTANCE-INFO; + } + } + + grouping BGP-EDM-LABEL-RPF-NBR { + description + "BGP EDM LABEL RPF NBR"; + leaf ip { + type inet:ipv4-address; + description + "The ip address of the BGP edm rpf nbr"; + } + leaf ip6 { + type inet:ipv6-address; + description + "The ipv6 address of the BGP edm rpf nbr"; + } + leaf count { + type uint32; + description + "The number of prefixes for rpf"; + } + leaf flags { + type uint32; + description + "RPF neighbor node flags"; + } + } + + grouping BGP-EDM-LABEL-RPF-INFO { + description + "BGP EDM LABEL RPF INFO"; + leaf label { + type uint32; + description + "The label of the BGP rpf"; + } + leaf flags { + type uint32; + description + "The flags of the BGP rpf"; + } + leaf install { + type Bgp-label-rpf-install; + description + "The BGP label rpf install"; + } + list rpf { + description + "rpf"; + uses BGP-EDM-LABEL-RPF-NBR; + } + } + + grouping BGP-LABEL-RPF-BAG { + description + "BGP LABEL RPF BAG"; + container rpf { + description + "The reverse path forwarding (RPF) of BGP label"; + uses BGP-EDM-LABEL-RPF-INFO; + } + } + + grouping BGP-EDM-OT-PROV-NBR-AF-DB-ENTRY { + description + "BGP EDM OT PROV NBR AF DB ENTRY"; + container neighbor-address { + description + "BGP neighbor Address"; + uses BGP-ADDRTYPE; + } + container track-created-ts { + description + "track created ts"; + uses BGP-TIMESPEC; + } + container track-created-age { + description + "track created age"; + uses BGP-TIMESPEC; + } + container nbr-af-event-ts { + description + "nbr af event ts"; + uses BGP-TIMESPEC; + } + container nbr-af-event-age { + description + "nbr af event age"; + uses BGP-TIMESPEC; + } + container status-change-ts { + description + "status change ts"; + uses BGP-TIMESPEC; + } + container status-change-age { + description + "status change age"; + uses BGP-TIMESPEC; + } + container status-notify-ts { + description + "status notify ts"; + uses BGP-TIMESPEC; + } + container status-notify-age { + description + "status notify age"; + uses BGP-TIMESPEC; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf afi { + type uint8; + description + "afi"; + } + leaf state { + type Bgp-track-state; + description + "BGP Track Entry State"; + } + leaf flags { + type uint8; + description + "flags"; + } + leaf notify-state { + type Bgp-track-state; + description + "BGP Track Entry Previous State"; + } + leaf prev-state { + type Bgp-track-state; + description + "BGP Track Entry Previous State"; + } + } + + grouping BGP-OT-PROV-NBR-AF-DB-BAG { + description + "BGP OT PROV NBR AF DB BAG"; + container entry { + description + "entry"; + uses BGP-EDM-OT-PROV-NBR-AF-DB-ENTRY; + } + } + + grouping BGP-VRF-RT-HASH-SLICE-BAG { + description + "BGP VRF RT HASH SLICE BAG"; + leaf route-target-hash-value { + type uint32; + description + "Hash value calculated from Route Target value + used to save in BGP's internal hash table"; + } + list rt { + description + "rt"; + uses BGP-EDM-RT-ENTRY; + } + } + + grouping BGP-RPKI-SUMMARY-BAG { + description + "BGP RPKI SUMMARY BAG"; + leaf servers { + type uint32; + description + "Number of RPKI Servers configured"; + } + leaf ipv4roa-nets { + type uint32; + description + "Number of IPv4 ROA Nets"; + } + leaf ipv4roa-paths { + type uint32; + description + "Number of IPv4 ROA Paths"; + } + leaf ipv6roa-nets { + type uint32; + description + "Number of IPv6 ROA Nets"; + } + leaf ipv6roa-paths { + type uint32; + description + "Number of IPv6 ROA Paths"; + } + leaf ipv4-table-version { + type uint64; + description + "RPKI IPv4 Table Version"; + } + leaf ipv4-table-scanner-version { + type uint64; + description + "RPKI IPv4 Scanner Version"; + } + leaf ipv6-table-version { + type uint64; + description + "RPKI IPv6 Table Version"; + } + leaf ipv6-table-scanner-version { + type uint64; + description + "RPKI IPv6 Scanner Version"; + } + } + + grouping BGP-UPDERR-PROC-BAG { + description + "BGP Update error-handling Process information"; + container last-update-malformed-timestamp { + description + "Last malformed messages received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-error-handling-basic-ebgp { + type boolean; + description + "Is basic error-handling for EBGP enabled"; + } + leaf update-error-handling-basic-ibgp { + type boolean; + description + "Is basic error-handling for IBGP enabled"; + } + leaf update-error-handling-extended-ebgp { + type boolean; + description + "Is extended error-handling for EBGP enabled"; + } + leaf update-error-handling-extended-ibgp { + type boolean; + description + "Is extended error-handling for IBGP enabled"; + } + leaf update-malformed-message-count { + type uint32; + description + "BGP malformed messages received count update"; + } + leaf update-malformed-neighbor-count { + type uint32; + description + "Count of neighbors that received malformed + messages"; + } + leaf last-update-malformed-age { + type uint32; + units "second"; + description + "Time since last malformed messages received + event (in seconds)"; + } + } + + grouping BGP-EDM-RPKI-ROUTE { + description + "BGP EDM RPKI ROUTE"; + leaf af-name { + type Bgp-rpki-af; + description + "Address Family"; + } + leaf address { + type string; + description + "Address Prefix"; + } + leaf min-prefix-len { + type uint8; + description + "Minimum Prefix Length"; + } + leaf max-prefix-len { + type uint8; + description + "Maximum Prefix Length"; + } + leaf as { + type uint32; + description + "AS number"; + } + leaf server { + type string; + description + "Source Server"; + } + leaf stale { + type boolean; + description + "ROA is stale"; + } + leaf version { + type uint64; + description + "ROA version"; + } + } + + grouping BGP-RPKI-ROUTES-BAG { + description + "BGP RPKI ROUTES BAG"; + list rpki-route { + description + "Array or RPKI routes"; + uses BGP-EDM-RPKI-ROUTE; + } + } + + grouping BGP-EDM-GSHUT-IF-ENTRY { + description + "BGP EDM GSHUT IF ENTRY"; + container gshut-if-time-stamp { + description + "BGP gshut timestamp"; + uses BGP-TIMESPEC; + } + container gshut-if-age { + description + "BGP gshut if age"; + uses BGP-TIMESPEC; + } + leaf name { + type string; + description + "Name"; + } + } + + grouping BGP-GSHUT-IF-BAG { + description + "gshut interface information"; + container if-entry { + description + "The entry of gshut interface"; + uses BGP-EDM-GSHUT-IF-ENTRY; + } + } + + grouping BGP-EDM-GSHUT-LOC-ENTRY { + description + "BGP EDM GSHUT LOC ENTRY"; + container gshut-loc-time-stap { + description + "BGP gshut locationb timestamp"; + uses BGP-TIMESPEC; + } + container gshut-loc-age { + description + "BGP gshut location age"; + uses BGP-TIMESPEC; + } + leaf loc { + type uint32; + description + "BGP gshut location nodeif"; + } + } + + grouping BGP-GSHUT-LOC-BAG { + description + "gshut location information"; + container loc-entry { + description + "The entry of gshut location"; + uses BGP-EDM-GSHUT-LOC-ENTRY; + } + } + + grouping BGP-EDM-GSHUT-NBR-ALL-ENTRY { + description + "BGP EDM GSHUT NBR ALL ENTRY"; + container gshut-nbr-all-ts { + description + "BGP gshut nbr-all timestamp"; + uses BGP-TIMESPEC; + } + container gshut-nbr-all-age { + description + "BGP gshut nbr-all age"; + uses BGP-TIMESPEC; + } + leaf nbr-all { + type uint32; + description + "BGP gshut nbr-all entry"; + } + } + + grouping BGP-GSHUT-NBR-ALL-BAG { + description + "gshut nbr all information"; + container nbr-all-entry { + description + "The entry of gshut nbr all"; + uses BGP-EDM-GSHUT-NBR-ALL-ENTRY; + } + } + + grouping BGP-EDM-LABEL-STATS { + description + "BGP EDM LABEL STATS"; + leaf nbgp-label-alloc-type-gbl-ipv4 { + type uint32; + description + "nBGP LABEL ALLOC TYPE GBL IPv4"; + } + leaf nbgp-label-alloc-type-gbl-ipv6 { + type uint32; + description + "nBGP LABEL ALLOC TYPE GBL IPv6"; + } + leaf nbgp-label-alloc-type-vrf-ipv4 { + type uint32; + description + "nBGP LABEL ALLOC TYPE VRF IPv4"; + } + leaf nbgp-label-alloc-type-vrf-ipv6 { + type uint32; + description + "nBGP LABEL ALLOC TYPE VRF IPv6"; + } + leaf nbgp-label-alloc-type-ce-ipv4 { + type uint32; + description + "nBGP LABEL ALLOC TYPE CE IPv4"; + } + leaf nbgp-label-alloc-type-ce-ipv6 { + type uint32; + description + "nBGP LABEL ALLOC TYPE CE IPv6"; + } + leaf nbgp-label-alloc-type-tbl-ipv4 { + type uint32; + description + "nBGP LABEL ALLOC TYPE TBL IPv4"; + } + leaf nbgp-label-alloc-type-tbl-ipv6 { + type uint32; + description + "nBGP LABEL ALLOC TYPE TBL IPv6"; + } + leaf nbgp-label-alloc-type-vpn-ipv4 { + type uint32; + description + "nBGP LABEL ALLOC TYPE VPN IPv4"; + } + leaf nbgp-label-alloc-type-vpn-ipv6 { + type uint32; + description + "nBGP LABEL ALLOC TYPE VPN IPv6"; + } + leaf nbgp-label-alloc-type-asbr-nh { + type uint32; + description + "nBGP LABEL ALLOC TYPE ASBR NH"; + } + leaf nbgp-label-alloc-type-l2vpn-evpn { + type uint32; + description + "nBGP LABEL ALLOC TYPE L2VPN EVPN"; + } + leaf nbgp-labels { + type uint32; + description + "nBGP LABELS"; + } + leaf bgp-label-rpf-lists { + type uint32; + description + "The rpf lists associated withthe label"; + } + leaf bgp-label-rpf-nodes { + type uint32; + description + "The rpf nodes associated withthe label"; + } + } + + grouping BGP-LABEL-SUMMARY-BAG { + description + "BGP LABEL SUMMARY BAG"; + container stats { + description + "The statistics of the BGP label summary"; + uses BGP-EDM-LABEL-STATS; + } + } + + grouping BGP-EDM-RPKI-CACHE { + description + "BGP EDM RPKI CACHE"; + leaf name { + type string; + description + "Server Name"; + } + leaf preference { + type uint32; + description + "Server Preference"; + } + leaf port { + type uint32; + description + "Server TCP Port number"; + } + leaf state { + type Bgp-rpki-state; + description + "Server Internal State"; + } + leaf state-time { + type uint32; + description + "Server Internal State timestamp (unix time)"; + } + leaf shutdown { + type boolean; + description + "Server Shutdown"; + } + leaf retries { + type uint32; + description + "Number of connection retries"; + } + leaf close-reason { + type Bgp-rpki-creason; + description + "Server close reason"; + } + leaf close-time { + type uint32; + description + "Server close elapsed time"; + } + leaf close-time-real { + type uint32; + description + "Server close real timestamp (unix time)"; + } + leaf read-bytes { + type uint32; + units "byte"; + description + "Number of bytes read from the server"; + } + leaf write-bytes { + type uint32; + units "byte"; + description + "Number of bytes written to the server"; + } + leaf transport { + type uint32; + description + "Server transport type"; + } + leaf username { + type string; + description + "Server SSH username"; + } + leaf password { + type string; + description + "Server SSH password"; + } + leaf sshpid { + type uint32; + description + "Server SSH process ID"; + } + leaf proto-state { + type Bgp-rpki-pstate; + description + "Server Protocol state"; + } + leaf proto-state-time { + type uint32; + description + "Server Protocol state timestamp (unix time)"; + } + leaf serial { + type uint32; + description + "Server serial number"; + } + leaf nonce { + type uint32; + description + "Server nonce"; + } + leaf refresh-time { + type int32; + units "second"; + description + "Server refresh time (seconds)"; + } + leaf response-time { + type int32; + units "second"; + description + "Server response time (seconds)"; + } + leaf purge-time { + type int32; + units "second"; + description + "Server purge time (seconds)"; + } + leaf ipv4roa { + type uint32; + description + "Total IPv4 ROAs currently recv'd from server"; + } + leaf ipv4roa-announce { + type uint32; + description + "Total IPv4 ROAs announced by the server"; + } + leaf ipv4roa-withdraw { + type uint32; + description + "Total IPv4 ROAs withdrawn by the server"; + } + leaf ipv6roa { + type uint32; + description + "Total IPv6 ROAs currently recv'd from server"; + } + leaf ipv6roa-announce { + type uint32; + description + "Total IPv6 ROAs announced by the server"; + } + leaf ipv6roa-withdraw { + type uint32; + description + "Total IPv6 ROAs withdrawn by the server"; + } + leaf proto-error { + type Bgp-rpki-perror; + description + "Protocol Error Reason"; + } + leaf bindsrc { + type string; + description + "Server transport bind source "; + } + leaf identifier { + type uint8; + description + "Allocated Id"; + } + } + + grouping BGP-RPKI-CACHES-BAG { + description + "BGP RPKI CACHES BAG"; + list rpki-server { + description + "Array of RPKI servers"; + uses BGP-EDM-RPKI-CACHE; + } + } + + grouping BGP-ORR-GROUP-BASE-BAG { + description + "BGP GBL ORR Group Information"; + container orr-root-address { + description + "ORR Root Address"; + uses BGP-ADDRTYPE; + } + container orr-sec-root-address { + description + "ORR Sec Root Address"; + uses BGP-ADDRTYPE; + } + container orr-ter-root-address { + description + "ORR ter Root Address"; + uses BGP-ADDRTYPE; + } + leaf orr-group-name { + type string; + description + "ORR Group Name"; + } + leaf is-orr-group-ipv4 { + type boolean; + description + "Is v4 ORR group"; + } + leaf is-orr-global-defined { + type boolean; + description + "Is ORR group configured globally"; + } + leaf orrafi-ref-count { + type uint32; + description + "Number of used afis"; + } + leaf orr-tableid { + type uint32; + description + "ORR Group tableid"; + } + leaf flex-algo { + type uint32; + description + "Flex algo value"; + } + leaf is-orr-root-address-configured { + type boolean; + description + "ORR Root address configured"; + } + leaf is-orr-sec-root-address-configured { + type boolean; + description + "ORR Sec Root address configured"; + } + leaf is-orr-ter-root-address-configured { + type boolean; + description + "ORR Ter Root address configured"; + } + list used-af { + min-elements 25; + max-elements "25"; + description + "Is ORR group used by af"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + } + + grouping BGP-ATTRFILTER-ENTRY-BAG { + description + "BGP attribute-filter entry information"; + leaf attribute-filter-entry-requested-action { + type Bgp-bag-upd-filter-action; + description + "Requested filtering action"; + } + leaf attribute-filter-entry-range-start { + type uint32; + description + "Start of attribute range"; + } + leaf attribute-filter-entry-range-end { + type uint32; + description + "End of attribute range"; + } + } + + grouping BGP-ATTRFILTER-GROUP-BAG { + description + "BGP attribute-filter group information"; + leaf attribute-filter-group-name { + type string; + description + "String for BGP attribute-filter group name"; + } + leaf attribute-filter-total-group-count { + type uint32; + description + "Total number of attriute-filter groups"; + } + list attribute-filter-entry { + description + "List of attriute-filter entries"; + uses BGP-ATTRFILTER-ENTRY-BAG; + } + } + + grouping BGP-EDM-LABEL-ENTRY { + description + "BGP EDM LABEL ENTRY"; + leaf label { + type uint32; + description + "The label of the BGP edm entry"; + } + leaf rds { + type string; + description + "The BGP edm route-distinguishers"; + } + leaf vrf { + type string; + description + "The BGP external data manager labelvirtual + routing and forwarding"; + } + leaf ip { + type inet:ipv4-address; + description + "The ip address of the BGP edm label"; + } + leaf ip6 { + type inet:ipv6-address; + description + "The ipv6 address of the BGP edm label"; + } + leaf rpc-set-id { + type uint32; + description + "The id of the rpc set"; + } + leaf masklen { + type uint16; + description + "The length of the mask"; + } + leaf ts-sec { + type uint32; + units "second"; + description + "The timestamp of the label allocationin seconds"; + } + leaf ts-ssec { + type uint32; + units "second"; + description + "The timestamp of the label allocationin + subseconds"; + } + leaf info { + type uint16; + description + "The BGP edm label entry information"; + } + leaf refcount { + type uint32; + description + "The number of references updated"; + } + leaf inactive { + type boolean; + description + "Flag to indicate BGP edm label entryis inactive"; + } + } + + grouping BGP-LABEL-BAG { + description + "BGP LABEL BAG"; + container entry { + description + "The entry for the BGP label"; + uses BGP-EDM-LABEL-ENTRY; + } + } + + grouping BGP-EDM-RT-ENTRY { + description + "BGP EDM RT ENTRY"; + leaf route-target { + type string; + description + "VRF Route Target value"; + } + } + + grouping BGP-VRF-RT-BAG { + description + "BGP VRF RT BAG"; + container rt { + description + "BGP virtual routing andforwarding route target"; + uses BGP-EDM-RT-ENTRY; + } + leaf afs { + type string; + description + "Address-families of BGPvrf route target"; + } + } + + grouping BGP-EDM-VRF-DB-VRF-TBL-ENTRY { + description + "BGP EDM VRF DB VRF TBL ENTRY"; + leaf name { + type string; + description + "name"; + } + leaf af { + type int32; + description + "af"; + } + leaf id { + type uint32; + description + "id"; + } + leaf index { + type uint8; + description + "index"; + } + leaf rsi-handle { + type uint64; + description + "rsi handle"; + } + leaf reg-pending { + type boolean; + description + "reg pending"; + } + leaf refcount { + type uint32; + description + "refcount"; + } + leaf import-policy { + type string; + description + "import policy"; + } + leaf export-policy { + type string; + description + "export policy"; + } + list import-rt { + description + "import rt"; + leaf entry { + type uint64; + description + "import rt"; + } + } + list export-rt { + description + "export rt"; + leaf entry { + type uint64; + description + "export rt"; + } + } + list import-rt-s { + description + "import rt s"; + leaf entry { + type uint64; + description + "import rt s"; + } + } + list export-rt-s { + description + "export rt s"; + leaf entry { + type uint64; + description + "export rt s"; + } + } + } + + grouping BGP-VRF-DB-VRF-TBL-BAG { + description + "BGP VRF DB VRF TBL BAG"; + container entry { + description + "entry"; + uses BGP-EDM-VRF-DB-VRF-TBL-ENTRY; + } + } + + grouping BGP-SRV6-SID-MANAGER-BAG { + description + "SRv6 SID Manager information"; + container first-sid-mgr-connection-up-time-stamp { + description + "First SID Manager Connection Up time"; + uses BGP-TIMESPEC; + } + container last-sid-mgr-connection-up-time-stamp { + description + "Last SID Manager Connection Up time"; + uses BGP-TIMESPEC; + } + container first-sid-mgr-connection-down-time-stamp { + description + "First SID Manager Connection Down time"; + uses BGP-TIMESPEC; + } + container last-sid-mgr-connection-down-time-stamp { + description + "Last SID Manager Connection Down time"; + uses BGP-TIMESPEC; + } + leaf sid-mgr-connection-up-count { + type uint32; + description + "Numer of SID Manager Up events"; + } + leaf last-sid-mgr-connection-up-age { + type uint32; + units "second"; + description + "Time since last SID Manager Connection Up event + in seconds"; + } + leaf sid-mgr-connection-down-count { + type uint32; + description + "Numer of SID Manager Down events"; + } + leaf last-sid-mgr-connection-down-age { + type uint32; + units "second"; + description + "Time since last SID Manager Connection Down + event in seconds"; + } + leaf sid-mgr-alive { + type boolean; + description + "SID Manager connection is Up"; + } + } + + grouping BGP-EDM-LOCATOR-ENTRY { + description + "BGP EDM LOCATOR ENTRY"; + leaf locator-name { + type string; + description + "The name of the BGP edmlocator"; + } + leaf locator-id { + type uint32; + description + "Locator Id"; + } + leaf locator-address { + type Ipv6-address; + description + "The address of the BGP locator"; + } + leaf locator-address-len { + type uint8; + description + "The length of the BGP locatoraddress"; + } + leaf operation { + type uint32; + description + "Locator operation"; + } + leaf oor-state { + type boolean; + description + "Locator OOR"; + } + leaf locator-format { + type uint32; + description + "Locator Format"; + } + leaf is-locator-active { + type boolean; + description + "Locator State"; + } + } + + grouping BGP-SRV6-LOCATOR-BAG { + description + "SRv6 Locator information"; + container entry { + description + "The entry of the BGP srv6 locator"; + uses BGP-EDM-LOCATOR-ENTRY; + } + } + + grouping BGP-SRV6-SUMMARY-BAG { + description + "SRv6 summary information"; + leaf locator-count { + type uint32; + description + "Number of locators in bgp"; + } + leaf srv6-enabled { + type boolean; + description + "Flag to indicate SRv6 is enabled"; + } + leaf stale { + type boolean; + description + "stale"; + } + leaf update-count { + type uint32; + description + "number of SIDMGR updates"; + } + } + + grouping BGP-UPDFILTER-PROC-BAG { + description + "BGP Update filtering Process information"; + container last-update-filtered-timestamp { + description + "Last filtered messages received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-filtered-message-count { + type uint32; + description + "The number of messages filtered"; + } + leaf update-filtered-neighbor-count { + type uint32; + description + "Count of neighbors that received filtered + messages"; + } + leaf last-update-filtered-age { + type uint32; + units "second"; + description + "Time since last filtered messages received event + (in seconds)"; + } + } + + grouping BGP-NBR-MSG { + description + "Neighbor In/Out Message entry"; + container message-timestamp { + description + "message received time: time elapsed since 00:00 + :00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf message-type-received { + type uint8; + description + "Type of messages Received"; + } + leaf total-logged-message-count { + type uint32; + description + "Number of total logged messages"; + } + leaf message-data-length { + type uint16; + description + "Length of the BGP message"; + } + list logged-message-data { + description + "Raw Message data in binary format"; + leaf entry { + type uint8; + description + "Raw Message data in binary format"; + } + } + } + + grouping BGP-MSGLOG-NBR-BAG { + description + "BGP Message logging Neighbor information"; + list neighbor-message { + description + "Array of Neighbor Messages in one direction"; + uses BGP-NBR-MSG; + } + } + + grouping BGP-NBR-INSTANCE { + description + "Dynamic Neighbor Instance"; + container neighbor-address { + description + "Dynamic Neighbor address"; + uses BGP-ADDRTYPE; + } + container neighbor-age { + description + "Age of the BGP neighbor"; + uses BGP-TIMESPEC; + } + container idle-watch-timer-remaining-value { + description + "Remaining time in idle watch timer"; + uses BGP-TIMESPEC; + } + leaf is-idle-watch-timer-running { + type boolean; + description + "Flag to indicate if idle watch timer is running"; + } + leaf connection-state { + type Bgp-conn-state; + description + "State of connection"; + } + } + + grouping BGP-NBR-RANGE-AF { + description + "BGP neighbor address family specific information"; + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf is-neighbor-route-reflector-client { + type boolean; + description + "Nbr is a route reflector client"; + } + leaf is-legacy-pe-rt { + type boolean; + description + "Nbr accepts route from legacy PE for + RT-Constraint AF "; + } + leaf is-neighbor-af-capable { + type boolean; + description + "Address family capability received from neighbor"; + } + leaf is-soft-reconfiguration-inbound-allowed { + type boolean; + description + "Inbound soft reconfiguration allowed"; + } + leaf is-use-soft-reconfiguration-always-on { + type boolean; + description + "Soft reconf overrides route refresh"; + } + leaf remove-private-as-from-updates { + type boolean; + description + "Private AS numbers removed from updates to this + nbr"; + } + leaf remove-private-as-entire-aspath-from-updates { + type boolean; + description + "Private AS numbers removed from updates to + thisnbr only if the aspath hasonly private ASes"; + } + leaf remove-private-as-from-inbound-updates { + type boolean; + description + "Private AS numbers removed from updates from + this nbr"; + } + leaf remove-private-as-entire-aspath-from-inbound-updates { + type boolean; + description + "Private AS numbers removed from updates from + this nbr only if the aspath has only private + ASes"; + } + leaf flowspec-validation-d-isable { + type boolean; + description + "Flag to indicate if flowspec validation is + disabled"; + } + leaf flowspec-redirect-validation-d-isable { + type boolean; + description + "Flag to indicate if flowspec redirect validation + is disabled"; + } + leaf orr-group-name { + type string; + description + "ORR Group Name"; + } + leaf orr-group-index { + type uint32; + description + "ORR Group Index"; + } + leaf is-orr-root-address-configured { + type boolean; + description + "ORR Root address configuredfor the neighbor + connection"; + } + leaf advertise-afi { + type boolean; + description + "Encode in Advertise AFI"; + } + leaf advertise-afi-reorg { + type boolean; + description + "Encode in Advertise AFI"; + } + leaf advertise-afi-local { + type boolean; + description + "Encode in Advertise AFI"; + } + leaf advertise-afi-disable { + type boolean; + description + "Encode in Advertise AFI"; + } + leaf always-use-next-hop-local { + type boolean; + description + "Local router always used for next-hop"; + } + leaf next-hop-unchanged { + type boolean; + description + "router does not change next-hop"; + } + leaf sent-community-to-neighbor { + type boolean; + description + "Community attribute sent to neighbor"; + } + leaf sent-gshut-community-to-neighbor { + type boolean; + description + "GSHUT Community attribute sent to neighbor"; + } + leaf sent-extended-community-to-neighbor { + type boolean; + description + "Extended community attribute sent to neighbor"; + } + leaf neighbor-default-originate { + type boolean; + description + "Neighbor originates default"; + } + leaf is-orf-sent { + type boolean; + description + "Outbound route filter sent to neighbor"; + } + leaf is-update-deferred { + type boolean; + description + "Update deferred until ORF/route refresh received"; + } + leaf is-orf-send-scheduled { + type boolean; + description + "Scheduled to send prefix based ORF"; + } + leaf vpn-update-gen-enabled { + type boolean; + description + "RT Nbr enabled for updategento another"; + } + leaf vpn-update-gen-trigger-enabled { + type boolean; + description + "RT Nbr enabled for updategento another"; + } + leaf is-addpath-send-operational { + type boolean; + description + "Addpath is operational on send-side"; + } + leaf is-addpath-receive-operational { + type boolean; + description + "Addpath is operational on receive-side"; + } + leaf weight { + type uint32; + description + "Weight for this AF"; + } + leaf max-prefix-limit { + type uint32; + description + "Max limit for # of prefixes"; + } + leaf use-max-prefix-warning-only { + type boolean; + description + "Warning only when maximum prefix limit reached"; + } + leaf max-prefix-discard-extra-paths { + type boolean; + description + "Discard extra paths when prefix limit reached"; + } + leaf max-prefix-exceed-discard-paths { + type boolean; + description + "Did we discard extra paths when prefix limit + reached"; + } + leaf max-prefix-threshold-percent { + type uint8; + units "percentage"; + description + "Percentage of maximum no. of prefixes at which + to generate warning"; + } + leaf max-prefix-discard-paths-count { + type uint32; + description + "Number of discarded paths after prefix limit + reached"; + } + leaf max-prefix-restart-time { + type uint16; + units "minute"; + description + "Time interval (in minutes) after which peering + session will be reestablished"; + } + leaf is-peer-orf-capable { + type boolean; + description + "Peer has outbound route filter capability"; + } + leaf is-advertised-orf-send { + type boolean; + description + "Prefix based ORF send mode capability advertised"; + } + leaf is-received-orf-send-capable { + type boolean; + description + "Prefix based ORF send mode capability received"; + } + leaf is-advertised-orf-receive { + type boolean; + description + "Prefix based ORF receive mode capability + advertised"; + } + leaf is-received-orf-receive-capable { + type boolean; + description + "Prefix based ORF receive mode capability + received"; + } + leaf is-advertised-graceful-restart { + type boolean; + description + "Graceful Restart Capability advertised"; + } + leaf is-graceful-restart-state-flag { + type boolean; + description + "Restart state flag enabled"; + } + leaf is-received-graceful-restart-capable { + type boolean; + description + "Graceful Restart Capability received"; + } + leaf is-add-path-send-capability-advertised { + type boolean; + description + "Flag to indicate if addpath send capability is + advertised"; + } + leaf is-add-path-send-capability-received { + type boolean; + description + "Flag to indicate if addpath send capability is + received"; + } + leaf is-add-path-receive-capability-advertised { + type boolean; + description + "Flag to indicate whetheraddpath receive + capabilityadvertised"; + } + leaf is-add-path-receive-capability-received { + type boolean; + description + "Flag to indicate whether addpathreceive + capability received"; + } + leaf restart-time { + type uint32; + units "second"; + description + "Restart time advertised (seconds)"; + } + leaf local-restart-time { + type uint32; + units "second"; + description + "Local Restart time (seconds)"; + } + leaf stale-path-timeout { + type uint32; + units "second"; + description + "Stale path timeout time (in seconds)"; + } + leaf rib-purge-timeout-value { + type uint32; + units "second"; + description + "RIB purge timeout time (in seconds)"; + } + leaf neighbor-preserved-forwarding-state { + type boolean; + description + "Flag to indicate if BGP neighbor is preserved in + forwarding state"; + } + leaf long-lived-graceful-restart-stale-time-configured { + type boolean; + description + "Flag to indicate whether long-lived + graceful-restart stale time is configured"; + } + leaf retention-stale-time-configured { + type boolean; + description + "Flag to indicate whether Retention stale time is + configured"; + } + leaf retention-policy { + type string; + description + "Retention Policy"; + } + leaf retention-stale-time { + type uint32; + description + "Stale time Configured for Route Retention"; + } + leaf long-lived-graceful-restart-stale-time-sent { + type uint32; + units "second"; + description + "Stale time sent in long-lived graceful-restart + capability (seconds)"; + } + leaf long-lived-graceful-restart-stale-time-accept { + type uint32; + units "second"; + description + "Maximum long-lived graceful-restart stale time + acceptable from the neighbor (seconds)"; + } + leaf long-lived-graceful-restart-capability-received { + type boolean; + description + "Flag to indicate whether long-livedgraceful + restart capability received from the neighbor"; + } + leaf long-lived-graceful-restart-stale-time-received { + type uint32; + units "second"; + description + "Long-lived graceful-restart stale time received + from the neighbor (seconds)"; + } + leaf neighbor-preserved-long-lived-forwarding-state { + type boolean; + description + "Flag to indicate whether neighbor preserved + long-lived forwarding state"; + } + leaf neighbor-long-lived-graceful-restart-capable { + type boolean; + description + "Flag to indicate whether treat neighbor as + long-lived graceful-restart capable"; + } + leaf neighbor-long-lived-graceful-restart-time-remaining { + type uint32; + description + "Remaining long-lived graceful-restart time"; + } + leaf is-prefix-orf-present { + type boolean; + description + "Outbound route filter prefix ORF present"; + } + leaf orf-entries-received { + type uint32; + description + "Number of outbound route filter entries received"; + } + leaf route-policy-prefix-orf { + type string; + description + "Prefix based ORF for incoming updates"; + } + leaf route-policy-in { + type string; + description + "Incoming route policy name"; + } + leaf route-policy-out { + type string; + description + "Outgoing route policy name"; + } + leaf route-policy-default-originate { + type string; + description + "Default-originate route policy name"; + } + leaf is-neighbor-ebgp-without-inbound-policy { + type boolean; + description + "eBGP neighbor with no configured inbound policy"; + } + leaf is-neighbor-ebgp-without-outbound-policy { + type boolean; + description + "eBGP neighbor with no configured outbound policy"; + } + leaf is-upd-orig-loopchk-disable-set { + type boolean; + description + "Flag to indicate for update out originator + loopcheck disable is set"; + } + leaf is-as-override-set { + type boolean; + description + "Flag to indicate if As-override is set"; + } + leaf is-allow-as-in-set { + type boolean; + description + "Allowas-in set "; + } + leaf allow-as-in-count { + type uint32; + description + "Allowas-in count config"; + } + leaf address-family-long-lived-time { + type uint32; + description + "AF specific Long-lived-time config"; + } + leaf is-aigp-set { + type boolean; + description + "AIGP set "; + } + leaf is-rt-present { + type boolean; + description + "RT attribute list present"; + } + leaf is-rt-present-standby { + type boolean; + description + "RT attribute list present"; + } + leaf accept-own-enabled { + type boolean; + description + "Flag to indicate if accept-Own is enabled"; + } + leaf selective-multipath-eligible { + type boolean; + description + "Flag to indicate if selective multipath is + eligible"; + } + leaf afrpki-disable { + type boolean; + description + "Prefix validation disabled"; + } + leaf afrpki-use-validity { + type boolean; + description + "Prefix v. use validity"; + } + leaf afrpki-allow-invalid { + type boolean; + description + "Prefix v. allow invalid"; + } + leaf afrpki-signal-ibgp { + type boolean; + description + "Prefix v. signal ibgp"; + } + leaf is-advertise-permanent-network { + type boolean; + description + "Flag to indicate if advertise permanent network + is enabled"; + } + leaf is-send-mcast-attr { + type boolean; + description + "Send Mcast Attr"; + } + leaf import-stitching { + type boolean; + description + "Import Stitching enabled"; + } + leaf import-reoriginate { + type boolean; + description + "Import Reoriginate enabled"; + } + leaf import-reoriginate-stitching { + type boolean; + description + "Import Reoriginate Stitching enabled"; + } + leaf advertise-v4-flags { + type uint32; + description + "Advertise options for VPNV4"; + } + leaf advertise-v6-flags { + type uint32; + description + "Advertise options for VPNV6"; + } + leaf enable-label-stack { + type boolean; + description + "Flag to indicate if label stack is enabled"; + } + list extended-community { + description + "Extended community attribute"; + leaf entry { + type uint8; + description + "Extended community attribute"; + } + } + list extended-community-standby { + description + "Extended community attribute"; + leaf entry { + type uint8; + description + "Extended community attribute"; + } + } + } + + grouping BGP-NBR-RANGE-BAG { + description + "BGP Neighbor Range Information"; + container connection-local-address { + description + "Local address for the connection"; + uses BGP-ADDRTYPE; + } + container connection-remote-address { + description + "Remote address for the connection"; + uses BGP-ADDRTYPE; + } + container graceful-maintenance { + description + "BGP connection of graceful shutdown"; + uses BGP-NBR-GSHUT; + } + container cfg-local-address { + description + "Configured local address"; + uses BGP-ADDRTYPE; + } + container local-address-subnet { + description + "Subnet for the BGP local address"; + uses BGP-ADDRTYPE; + } + leaf speaker-id { + type uint8; + description + "Speaker this neighbor is allocated to"; + } + leaf description { + type string; + description + "Description of the BGP neighbor"; + } + leaf local-as { + type uint32; + description + "Local AS number"; + } + leaf remote-as { + type uint32; + description + "Remote AS number"; + } + leaf has-internal-link { + type boolean; + description + "Internal link to neighbor"; + } + leaf is-local-address-configured { + type boolean; + description + "Local address configured for the neighbor + connection"; + } + leaf neighbor-range-prefix-length { + type uint8; + description + "Length of the BGP neighbor prefix"; + } + leaf is-administratively-shut-down { + type boolean; + description + "Flag to indicate if neighbor is administratively + shutdown"; + } + leaf is-neighbor-max-prefix-shutdown { + type boolean; + description + "Neighbor shut down because it exceeded max prfx + count"; + } + leaf is-out-of-memory-forced-up { + type boolean; + description + "Neighbor forced up during a low memory condition"; + } + leaf ttl-security-enabled { + type boolean; + description + "TTL Security enabled"; + } + leaf suppress4-byte-as { + type boolean; + description + "Suppress 4byteas capability"; + } + leaf bfd-session-enable-mode { + type Bgp-bfd-enable-mode; + description + "BFD enable mode for this peer"; + } + leaf bfd-minintervalval { + type uint32; + description + "BFD Mininterval for this peer"; + } + leaf bfd-multiplierval { + type uint32; + description + "BFD Multiplier for this peer"; + } + leaf ebgp-time-to-live { + type uint32; + description + "Maximum number of hops for external BGP neighbor"; + } + leaf is-ebgp-multihop-bgp-mpls-forwarding-disabled { + type boolean; + description + "If true, MPLS and NULL rewrite is disabled; if + false, it is enabled"; + } + leaf tcpmss { + type uint32; + description + "Neighbor TCP Maximum Segment size"; + } + leaf tcpmtu { + type boolean; + description + "Neighbor TCP Path MTU Discovery option"; + } + leaf msg-log-in { + type uint32; + description + "Message in log count"; + } + leaf msg-log-out { + type uint32; + description + "Message out log count"; + } + leaf neighbor-local-as { + type uint32; + description + "Local AS configured on the neighbor"; + } + leaf local-as-no-prepend { + type boolean; + description + "Option to not prepend the Local AS to + announcements"; + } + leaf merge-inbound-safi1and4-updates { + type boolean; + description + "Merge SAFI-1 and SAFI-4 updates from neighbor"; + } + leaf is-capability-negotiation-performed { + type boolean; + description + "Flag to indicate if BGP neighbor capability + negotiation is performed"; + } + leaf configured-hold-time { + type uint16; + units "second"; + description + "Hold time (in secs) configured for this + connection"; + } + leaf configured-keepalive { + type uint16; + units "second"; + description + "Keepalive time (in secs) configured for this + connection"; + } + leaf configured-min-acc-hold-time { + type uint16; + units "second"; + description + "Minimum acceptable hold time from neighbor (in + secs) configured for this connection"; + } + leaf min-advertise-interval { + type uint32; + units "second"; + description + "Minimum advertisement interval, secs part"; + } + leaf min-advertise-interval-msecs { + type uint32; + units "millisecond"; + description + "Minimum advertisement interval, msecs part"; + } + leaf min-origination-interval { + type uint16; + units "second"; + description + "Minimum origination interval (in secs)"; + } + leaf remote-as-number { + type uint32; + description + "AS number of the neighbor"; + } + leaf dmz-link-bandwidth { + type uint32; + description + "Bandwidth of link to single-hop eBGP peer"; + } + leaf ebgp-recv-dmz { + type boolean; + description + "Receive Bandwidth of link to single-hop eBGP + peer"; + } + leaf ebgp-send-dmz-mode { + type Bgp-ebgp-send-dmz-enable-mode; + description + "Ebgp send dmz link bw mode"; + } + leaf tos-type { + type uint8; + description + "Precedence or DSCP type"; + } + leaf tos-value { + type uint8; + description + "Precedence or DSCP value"; + } + leaf tcp-session-open-mode { + type Bgp-tcp-mode; + description + "The TCP mode to be used to set up BGP session + with the neighbor"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf standby-rp { + type boolean; + description + "Standby RP socket inited for Active Open"; + } + leaf nsr-enabled { + type boolean; + description + "Neighbor supports NSR"; + } + leaf graceful-restart-enabled-nbr { + type boolean; + description + "Neighbor supports graceful-restart"; + } + leaf graceful-restart-helper-mode { + type boolean; + description + "Neighbor supports graceful-restart in + helper-mode"; + } + leaf gr-restart-time { + type uint32; + units "second"; + description + "Neighbor restart time (in seconds)"; + } + leaf gr-stale-path-time { + type uint32; + units "second"; + description + "Neighbor stale-path time (in seconds)"; + } + leaf is-passive-close { + type boolean; + description + "If true, active socket canbe closed if passive + openis received for a GRcapable neighbor"; + } + leaf nbr-enforce-first-as { + type boolean; + description + "Neighbor enforce first AS"; + } + leaf active-bmp-servers { + type uint8; + description + "BMP Servers to which the neighbor sends logs"; + } + leaf nbr-cluster-id { + type uint32; + description + "Cluster id"; + } + leaf nbr-in-cluster { + type uint8; + description + "Type of cluster_id:undefined/number/Ip address"; + } + leaf ignore-connected { + type boolean; + description + "If true, the VPN client isan IBGP CE peer"; + } + leaf internal-vpn-client { + type boolean; + description + "If true, don't do NHconnected check for nbr"; + } + leaf local-as-replace-as { + type boolean; + description + "Local AS Replace-AS option"; + } + leaf local-as-dual-as { + type boolean; + description + "Local AS Dual-AS option"; + } + leaf local-as-dual-as-mode-native { + type boolean; + description + "Applies only if Local AS Dual-AS option is + enabled. Indicates if Dual-AS mode is native."; + } + leaf egress-peer-engineering-enabled { + type boolean; + description + "Indicates if Egress Peer Engineering is enabled"; + } + leaf discard-as4-path { + type uint32; + description + "Discard AS4_PATH in case there is a discrepancy + in merging AS_PATH and AS4_PATH,retain ASPATH"; + } + leaf rpki-disable { + type boolean; + description + "Prefix validation disabled"; + } + leaf rpki-use-validity { + type boolean; + description + "Prefix v. use validity"; + } + leaf rpki-allow-invalid { + type boolean; + description + "Prefix v. allow invalid"; + } + leaf rpki-signal-ibgp { + type boolean; + description + "Prefix v. signal ibgp"; + } + leaf remote-as-list-name { + type string; + description + "Remote AS List Name"; + } + leaf nbr-rcv-size { + type uint32; + description + "Nbr Receive Size"; + } + leaf nbr-send-size { + type uint32; + description + "Nbr Send Size"; + } + leaf islocal-address-cfg { + type boolean; + description + "Local address configured"; + } + leaf update-source { + type string; + description + "Interface to get the local IP address for the + BGP session"; + } + leaf is-local-addr-subnet-cfg { + type boolean; + description + "Flag to indicate if local-address-subnet is + configured"; + } + leaf local-address-subnet-len { + type uint32; + description + "Length of subnet for BGP local address"; + } + leaf addpath-send-enable { + type boolean; + description + "Flag to indicate if addpath send functionality + is enabled"; + } + leaf addpath-receive-enable { + type boolean; + description + "Flag to indicate if addpath receive + functionality is enabled"; + } + leaf addpath-send-disable { + type boolean; + description + "Flag to indicate addpath send functionality is + disabled"; + } + leaf addpath-receive-disable { + type boolean; + description + "Flag indicates if addpath receive functionality + is disabled"; + } + leaf upd-errh-noreset { + type boolean; + description + "Update error handling configuration for C1 + category errors"; + } + leaf msg-buf-count { + type uint32; + description + "Message Buf Count"; + } + leaf msg-bug-circular { + type boolean; + description + "Message Buf Circular"; + } + leaf syslog-enable { + type boolean; + description + "Flag to indicate if syslog should be output when + an attribute filter is executed"; + } + leaf oper-attrf-enable { + type boolean; + description + "Flag to indicate if operational attribute filter + is enabled"; + } + leaf attrf-group-name { + type string; + description + "Name of the attribute filter group Name"; + } + leaf max-peers { + type uint32; + description + "Max Dynamic nbrs in range"; + } + leaf idle-watch-time { + type uint32; + units "second"; + description + "Dynamic Neighbor idle-watch time (in seconds)"; + } + leaf current-peers { + type uint32; + description + "Current Dynamic nbrs in range"; + } + leaf range-open-match { + type uint32; + description + "Passive open matching range"; + } + leaf range-open-accepted { + type uint32; + description + "BGP neighbor passive session accepted"; + } + leaf range-max-drop { + type uint32; + description + "open drop due to max peers"; + } + leaf range-inst-error { + type uint32; + description + "Error during instance creation"; + } + list af-data { + max-elements "25"; + description + "Address family specific neighbor data"; + uses BGP-NBR-RANGE-AF; + } + list instance { + description + "Dynamic Neighbor Instance List"; + uses BGP-NBR-INSTANCE; + } + } + + grouping BGP-NEXTHOP-VRF-BAG { + description + "BGP nexthop processing information for a VRF"; + leaf total-processing-time { + type uint32; + description + "Total time spent in processing"; + } + leaf max-proc-notification-time { + type uint32; + description + "How long since the maximum processing time + notifcation was received"; + } + leaf max-notification-bestpath-deletes { + type uint32; + description + "Number of bestpath deletes caused by + notification which resulted in maximum + processing"; + } + leaf max-notification-bestpath-changes { + type uint32; + description + "Number of bestpath changes caused by + notification which resulted in maximum + processing"; + } + leaf maximum-processing-time { + type uint32; + description + "Maximum time spent procesing a single batch + notification"; + } + leaf last-notificationication-time { + type uint32; + description + "Time since the last notification was received"; + } + leaf last-notification-processing-time { + type uint32; + description + "Processing time for the last notification"; + } + } + + grouping BGP-PERF-PROCESS-VRF { + description + "BGP PERF PROCESS VRF"; + leaf lpts-set-up-time { + type uint32; + description + "Time spent setting up LPTS socket opt (ms)"; + } + leaf lpts-calls { + type uint32; + description + "Number of times LPTS socket opt set up"; + } + leaf read-throttles-count { + type uint32; + description + "Number of partial read throttles"; + } + leaf low-throttled-read-count { + type uint32; + description + "Number of socket reads for nbrs above low + threshold"; + } + leaf high-throttled-read-count { + type uint32; + description + "Number of socket reads for nbrs above high + threshold"; + } + leaf read-calls-count { + type uint32; + description + "No. of calls to function to read inbound data"; + } + leaf read-messages-count { + type uint32; + description + "Number of BGP messages read"; + } + leaf data-bytes-read { + type uint32; + units "byte"; + description + "No. of bytes of data read"; + } + leaf io-read-time { + type uint32; + description + "Time spent reading inbound data (ms)"; + } + leaf write-calls-count { + type uint32; + description + "No. of calls to function to write outbound data"; + } + leaf data-bytes-written { + type uint32; + units "byte"; + description + "Number of bytes of data written"; + } + leaf io-write-time { + type uint32; + description + "Time spent writing outbound data (ms)"; + } + leaf write-subgroup-calls-count { + type uint32; + description + "No. of calls to to funvction to process + sub-group message list"; + } + leaf write-subgroup-messages-count { + type uint32; + description + "Number of sub-group messages processed"; + } + leaf subgroup-list-time { + type uint32; + units "millisecond"; + description + "Time spent processing sub-group message list + (milliseconds)"; + } + leaf write-queue-calls-count { + type uint32; + description + "No. of Calls to function to process write queue"; + } + leaf write-queue-messages-count { + type uint32; + description + "Number of write queue messages processed"; + } + leaf write-queue-time { + type uint32; + description + "Time spent processing write queue (ms)"; + } + leaf inbound-update-messages { + type uint32; + description + "Number of inbound update messages processed"; + } + leaf inbound-update-messages-time { + type uint32; + units "millisecond"; + description + "Time spent processing imbound update messages + (milliseconds)"; + } + } + + grouping BGP-ISSU-MILESTONE-BAG { + description + "BGP ISSU MILESTONE BAG"; + leaf milestone-name { + type string; + description + "Name of the in-service software upgrade (ISSU) + milestone"; + } + leaf milestone-start-timestamp { + type uint32; + description + "Timestamp for the ISSU milestone start"; + } + leaf milestone-met-timestamp { + type uint32; + description + "Timestamp when ISSU milestone met"; + } + } + + grouping BGP-PERF-NPL-ENDP-INFO-BAG { + description + "BGP PERF NPL ENDP INFO BAG"; + leaf endpoint-name { + type string; + description + "BGP NPL endpoint name"; + } + leaf sync-group-name { + type string; + description + "Syncgroup associated with this endpoint"; + } + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + leaf endpoint-handle { + type uint64; + description + "Handle to end-point for NCD communication"; + } + leaf endpoint-stale-flag { + type boolean; + description + "Flag to indicate if endpoint is stale"; + } + leaf endpoint-issu-role { + type string; + description + "Endpoint's ISSU Role. Values are 'Primary', + 'Secondary' and 'Tertiary'"; + } + leaf endpoint-active-flag { + type boolean; + description + "Flag to indicate if endpoint is active"; + } + leaf msg-size { + type uint32; + description + "Message size for this entity"; + } + leaf wheel-id { + type uint32; + description + "Wheel ID for this endpoint"; + } + leaf expected-sequence-num { + type uint32; + description + "BGP NPL sequence number expected"; + } + leaf last-sent-sequence-num { + type uint32; + description + "Last sent Sequence Num"; + } + leaf npl-initial-sequence-num { + type uint32; + description + "NPL Initial Sequence Num"; + } + list endpoint { + description + "NCD endpoint bytestream"; + leaf entry { + type uint8; + units "byte"; + description + "NCD endpoint bytestream"; + } + } + } + + grouping NSR-PL-RECV-DROP-ARRAY { + description + "Drop count while receiving messages"; + list nsr-pl-recv-drop-array { + max-elements "16"; + description + "nsr pl recv drop array"; + leaf entry { + type uint32; + description + "entry"; + } + } + } + + grouping NSR-PL-SEND-DROP-ARRAY { + description + "Drop count while sending messages"; + list nsr-pl-send-drop-array { + max-elements "7"; + description + "nsr pl send drop array"; + leaf entry { + type uint32; + description + "entry"; + } + } + } + + grouping NSR-PL-CLIENT-STATS-TYPE { + description + "NSR PL stats information"; + leaf prio-queue-level { + type string { + length "0..32"; + } + description + "npl priority queue level"; + } + list num-sent { + max-elements "5"; + description + "Total sent"; + leaf entry { + type uint64; + description + "Total sent"; + } + } + list num-recv { + max-elements "6"; + description + "Total recvd"; + leaf entry { + type uint64; + description + "Total recvd"; + } + } + list num-sent-drop { + max-elements "5"; + description + "Sent Error/drops"; + uses NSR-PL-SEND-DROP-ARRAY; + } + list num-recv-drop { + max-elements "6"; + description + "Recv Errors/drops"; + uses NSR-PL-RECV-DROP-ARRAY; + } + } + + grouping BGP-PERF-DS-NPL-INFO-BAG { + description + "BGP PERF DS NPL INFO BAG"; + leaf dir-service-conn-state { + type Bgp-ds-conn-state; + description + "Current Directory Service connectionstate"; + } + leaf issu-mgr-conn-state { + type Bgp-ism-conn-state; + description + "Current ISSU Mgr connection state"; + } + leaf issu-phase { + type string; + description + "Current ISSU Phase"; + } + leaf issu-type-ng { + type boolean; + description + "ISSU type is Next Gen"; + } + leaf issuha-option { + type string; + description + "Current ISSU HA option"; + } + leaf local-ds-handle { + type uint64; + description + "Local Directory Service handle"; + } + leaf service-name { + type string; + description + "Local DS service name"; + } + leaf dsissu-status-flag { + type uint32; + description + "DS ISSU status flag"; + } + list npl-priority-statistic { + max-elements "2"; + description + "Stats for BGP NPL priority"; + uses NSR-PL-CLIENT-STATS-TYPE; + } + list npl-endpoint { + description + "NPL endpoint information"; + uses BGP-PERF-NPL-ENDP-INFO-BAG; + } + } + + grouping BGP-PERF-SERVER-CONN-STAT-BAG { + description + "BGP PERF SERVER CONN STAT BAG"; + container first-connection-up-timestamp { + description + "Timestamp for first connection up"; + uses BGP-TIMESPEC; + } + container last-connection-up-timestamp { + description + "Timestamp for last connection Up"; + uses BGP-TIMESPEC; + } + container first-connection-down-timestamp { + description + "Timestamp for first connection down"; + uses BGP-TIMESPEC; + } + container last-connection-down-timestamp { + description + "Timestamp for last connection down"; + uses BGP-TIMESPEC; + } + leaf is-connection-up { + type boolean; + description + "Is Connection Up?"; + } + leaf connection-up-count { + type uint32; + description + "Number of connection Up events"; + } + leaf last-connection-up-age { + type uint32; + units "second"; + description + "Time since last connection Up event (in seconds)"; + } + leaf connection-down-count { + type uint32; + description + "Number of connection down events"; + } + leaf last-connection-down-age { + type uint32; + units "second"; + description + "Time since last connection Down event (in + seconds)"; + } + } + + grouping BGP-PERF-RIB-GBL-INFO-BAG { + description + "BGP PERF RIB GBL INFO BAG"; + container first-rib-connection-up-timestamp { + description + "First RIB connection Up event timestamp"; + uses BGP-TIMESPEC; + } + container last-rib-connection-up-timestamp { + description + "Last RIB connection Up event timestamp"; + uses BGP-TIMESPEC; + } + container first-rib-connection-down-timestamp { + description + "First RIB connection Down event timestamp"; + uses BGP-TIMESPEC; + } + container last-rib-connection-down-timestamp { + description + "Last RIB connection Down event timestamp"; + uses BGP-TIMESPEC; + } + leaf is-rib-connection-up { + type boolean; + description + "Is RIB Connection Up?"; + } + leaf rib-connection-up-count { + type uint32; + description + "Number of RIB connection Up events"; + } + leaf last-rib-connection-up-age { + type uint32; + units "second"; + description + "Time since last RIB connection Up event (in + seconds)"; + } + leaf rib-connection-down-count { + type uint32; + description + "Number of RIB connection Down events"; + } + leaf last-rib-connection-down-age { + type uint32; + units "second"; + description + "Time since last RIB connection Down event (in + seconds)"; + } + } + + grouping BGP-POSTIT-COUNT-INFO { + description + "BGP POSTIT COUNT INFO"; + container neighbor-address { + description + "IP address of the neighbor"; + uses BGP-ADDRTYPE; + } + leaf postit-count { + type uint32; + description + "Count of the number of postits for this nbr"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + } + + grouping BGP-PERF-PROCESS-GBL { + description + "BGP PERF PROCESS GBL"; + container ipv4rib-server { + description + "IPv4 RIB server global info"; + uses BGP-PERF-RIB-GBL-INFO-BAG; + } + container ipv6rib-server { + description + "IPv6 RIB server global info"; + uses BGP-PERF-RIB-GBL-INFO-BAG; + } + container te-connection { + description + "MPLS TE server connection info"; + uses BGP-PERF-SERVER-CONN-STAT-BAG; + } + container lsd-connection { + description + "MPLS LSD server connection info"; + uses BGP-PERF-SERVER-CONN-STAT-BAG; + } + container ds-npl { + description + "NSR related DS and NPL information"; + uses BGP-PERF-DS-NPL-INFO-BAG; + } + leaf configuration-items-processed { + type uint32; + description + "Number of config items processed"; + } + leaf configuration-processing-time { + type uint32; + units "millisecond"; + description + "Time spent processing config (milliseconds)"; + } + leaf edm-requests-count { + type uint32; + description + "Number of EDM requests processed"; + } + leaf edm-processing-time { + type uint32; + description + "Time spent processing EDM requests (ms)"; + } + leaf brib-api-output-messages-sent { + type uint32; + description + "bRIB API output messages sent"; + } + leaf brib-api-output-bytes-sent { + type uint32; + units "byte"; + description + "bRIB API output bytes sent"; + } + leaf brib-api-output-bytes-generated { + type uint32; + units "byte"; + description + "Number of bytes generated to be sent by the BGP + RIB API"; + } + leaf brib-api-output-prefixes-advertised { + type uint32; + description + "Number of prefix advertise messagesto be sent by + the bRIB API"; + } + leaf brib-api-output-prefixes-withdrawn { + type uint32; + description + "Number of prefix withdraw messagesto be sent by + the bRIB API"; + } + leaf brib-api-output-sending-time { + type uint32; + description + "Time spent sending output to bRIB API (ms)"; + } + leaf brib-api-output-generation-time { + type uint32; + units "millisecond"; + description + "Time spent generating output for bRIB API + (milliseconds)"; + } + leaf brib-api-output-calls { + type uint32; + description + "bRIB API calls to generate output"; + } + leaf brib-api-input-messages { + type uint32; + description + "bRIB API input messages"; + } + leaf brib-api-input-bytes { + type uint32; + units "byte"; + description + "bRIB API input bytes"; + } + leaf brib-api-input-prefixes-received { + type uint32; + description + "bRIB API input advertised prefixes received"; + } + leaf brib-api-input-withdrawn-prefixes { + type uint32; + description + "bRIB API input withdrawn prefixes received"; + } + leaf brib-api-input-processing-time { + type uint32; + units "millisecond"; + description + "Time spent processing input from bRIB API + (milliseconds)"; + } + leaf instance-node-role { + type boolean; + description + "Node role - active/passive"; + } + leaf active-nsrtcp-phase-two-enter-time { + type uint32; + units "second"; + description + "Time that NSR TCP Init Sync Phase Two entered on + active (seconds since Jan 1 1970)"; + } + leaf sec-active-nsrtcp-phase-two-enter-time { + type uint32; + units "second"; + description + "Time that NSR TCP Init Sync Phase Two entered on + active (seconds since Jan 1 1970)"; + } + leaf proc-scoped-sync-state { + type Bgp-scoped-sync-state; + description + "Synchronized state of BGP process"; + } + leaf initial-sync-sessions-added { + type boolean; + description + "If true, BGP has at least one established + session when NSR initial synchronization is + started"; + } + leaf in-event-attach-calls { + type uint32; + description + "event_file_attach calls for input"; + } + leaf out-event-attach-calls { + type uint32; + description + "event_file_attach calls for output"; + } + leaf in-out-event-attach-calls { + type uint32; + description + "event_file_attach calls for input"; + } + leaf updgen-timer-running { + type boolean; + description + "Flag to indicate if update generation master + timer is running"; + } + leaf updgen-tree-timer-left { + type uint64; + description + "Time left before the QNX timer would expire"; + } + leaf updgen-tree-timer-expiry { + type uint64; + description + "Time as per tree->mtexptime"; + } + leaf current-clock-time { + type uint64; + description + "Current time"; + } + leaf updgen-handler-tm { + type uint64; + description + "Timestamp when updgen timer handler got called"; + } + leaf io-timer-running { + type boolean; + description + "IO master timer Running"; + } + leaf io-tree-timer-left { + type uint64; + description + "Time left before the QNX timer would expire"; + } + leaf io-tree-timer-expiry { + type uint64; + description + "Time as per tree->mtexptime"; + } + leaf io-handler-tm { + type uint64; + description + "Timestamp when IO timer handler got called"; + } + leaf qad-messages-sent { + type uint32; + description + "Messages sent on QAD "; + } + leaf qadack-sent { + type uint32; + description + "Acks sent on QAD "; + } + leaf qad-send-failure { + type uint32; + description + "Send failure on QAD "; + } + leaf qad-ac-ks-failure { + type uint32; + description + "Ack failure on QAD "; + } + leaf qad-suspends { + type uint32; + description + "QAD send suspend"; + } + leaf qad-resumes { + type uint32; + description + "QAD send resume "; + } + leaf qad-send-drops { + type uint32; + description + "Send packets dropped due to null peer "; + } + leaf qad-messages-received { + type uint32; + description + "Messages received on QAD "; + } + leaf qad-processed { + type uint32; + description + "Messages processed"; + } + leaf qad-ac-ks-received { + type uint32; + description + "Acks received on QAD "; + } + leaf qad-timeout-received { + type uint32; + description + "Timeouts received on QAD "; + } + leaf qad-init-drops { + type uint32; + description + "Packets dropped on standby during initialization"; + } + leaf qadoos-drops { + type uint32; + description + "Packets dropped due to out of sequence + packetreceived"; + } + leaf qad-recv-drops { + type uint32; + description + "Received packet dropped due to null peer "; + } + leaf qad-timeout-recvd { + type uint32; + description + "Number of packet send timeouts "; + } + leaf nsr-last-reset-reason { + type uint8; + description + "Reason for last nsr state machine reset"; + } + leaf redcon-nsr-ready { + type boolean; + description + "NSR state conveyed to Redcon by bgp - nsr + ready/unready"; + } + leaf redcon-state-time { + type uint32; + description + "Time when nsr state wasconveyed to Redcon last"; + } + leaf active-nsr-state { + type uint32; + description + "Current Active BGP nsrstate"; + } + leaf sec-active-nsr-state { + type uint32; + description + "Current Sec Active BGP nsrstate"; + } + leaf total-outstanding-postits { + type uint32; + description + "Total outstanding postits across all neighbors"; + } + leaf total-neighbors-with-pending-postits { + type uint32; + description + "Count of neighbors with postits pending"; + } + leaf tep2p-auto-tunnel-enabled { + type boolean; + description + "TE support for P2P auto tunnel"; + } + list active-nsr-mode-enter-time { + max-elements "26"; + description + "Time that each mode was entered (seconds since + + Jan 1 1970)"; + leaf entry { + type uint32; + units "second"; + description + "Time that each mode was entered (seconds since + + Jan 1 1970)"; + } + } + list standby-nsr-mode-enter-time { + max-elements "7"; + description + "Time that each mode was entered (seconds since + + Jan 1 1970)"; + leaf entry { + type uint32; + units "second"; + description + "Time that each mode was entered (seconds since + + Jan 1 1970)"; + } + } + list active-nsrfo-time { + max-elements "10"; + description + "Time that each thread isdone with its + + go-activeprocessing (seconds since Jan 1 1970)"; + leaf entry { + type uint32; + units "second"; + description + "Time that each thread isdone with its + + go-activeprocessing (seconds since Jan 1 1970)"; + } + } + list postit-count-info { + description + "List of neighbors and their postit counts"; + uses BGP-POSTIT-COUNT-INFO; + } + list issu-milestone { + description + "ISSU Milestones"; + uses BGP-ISSU-MILESTONE-BAG; + } + } + + grouping BGP-PERF-PROCESS { + description + "BGP PERF PROCESS"; + container global { + description + "Global information"; + uses BGP-PERF-PROCESS-GBL; + } + container vrf { + description + "VRF information"; + uses BGP-PERF-PROCESS-VRF; + } + } + + grouping BGP-PROCESS-INFO-VRF { + description + "BGP PROCESS INFO VRF"; + leaf neighbors-count { + type uint32; + description + "Number of neighbors"; + } + leaf established-neighbors-count { + type uint32; + description + "Number of established neighbors"; + } + leaf update-messages-received { + type uint32; + description + "Count of BGP update messages received"; + } + leaf update-messages-sent { + type uint32; + description + "Count of BGP update messages sent"; + } + leaf notifications-received { + type uint32; + description + "Number of BGP notifications received"; + } + leaf notifications-sent { + type uint32; + description + "Number of BGP notifications sent"; + } + leaf network-count { + type uint32; + description + "Number of networks"; + } + leaf path-count { + type uint32; + description + "Number of paths"; + } + } + + grouping BGP-PROCESS-INFO-GBL { + description + "BGP PROCESS INFO GBL"; + leaf process-instance-node { + type string; + description + "Node the process instance is on"; + } + leaf restart-count { + type uint32; + description + "No. of times BGP has started"; + } + leaf path-attributes-entry-count { + type uint32; + description + "No. of path attribute entries"; + } + leaf path-attribute-memory { + type uint32; + units "byte"; + description + "Memory (bytes) used by path attribute entries"; + } + leaf as-path-entry-count { + type uint32; + description + "Number of AS-path entries"; + } + leaf as-path-entries-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by AS-path entries"; + } + leaf community-entry-count { + type uint32; + description + "Number of community entries"; + } + leaf community-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by community entries"; + } + leaf extended-community-entry-count { + type uint32; + description + "Number of extended community entries"; + } + leaf extended-community-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by extended community + entries"; + } + leaf pe-distinguisher-label-entry-count { + type uint32; + description + "Number of PE distinguisher label entries"; + } + leaf pe-distinguisher-label-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by PE distinguisher + labels entries"; + } + leaf pta-entry-count { + type uint32; + description + "Number of PTA entries"; + } + leaf pta-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by PTA entries"; + } + leaf tunnel-encap-entry-count { + type uint32; + description + "Number of Tunnel encap entries"; + } + leaf tunnel-encap-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by tunnel encap entries"; + } + leaf ribrnh-entry-count { + type uint32; + description + "Number of RIBRNH entries"; + } + leaf ribrnh-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by RIBRNH entries"; + } + leaf ppmp-entry-count { + type uint32; + description + "Number of PPMP entries"; + } + leaf ppmp-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by PPMP entries"; + } + leaf route-reflectors { + type uint32; + description + "Number of route reflector info entries"; + } + leaf route-reflector-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by route reflector info + entries"; + } + leaf nexthop-count { + type uint32; + description + "Number of nexthop attribute info entries"; + } + leaf nexthop-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by nexthop attribute info + entries"; + } + leaf lsattr-entry-count { + type uint32; + description + "Number of LASATTR entries"; + } + leaf lsattr-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by LSATTR entries"; + } + leaf attr-set-entry-count { + type uint32; + description + "Number of ATTRSET entries"; + } + leaf attr-set-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by ATTRSET entries"; + } + leaf prefix-sid-label-index-count { + type uint32; + description + "Number of Prefix-SID LabelIndex entries"; + } + leaf prefix-sid-label-index-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by Prefix-SID LabelIndex + entries"; + } + leaf prefix-sid-orig-srgb-count { + type uint32; + description + "Number of Prefix-SID OrigSRGB entries"; + } + leaf prefix-sid-orig-srgb-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by Prefix-SID OrigSRGB + entries"; + } + leaf prefix-sid-srv6-layer3-svc-count { + type uint32; + description + "Number of Prefix-SID SRv6L3SVC entries"; + } + leaf prefix-sid-srv6-layer3-svc-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by Prefix-SID SRv6L3SVC + entries"; + } + leaf prefix-sid-srv6-layer2-svc-count { + type uint32; + description + "Number of Prefix-SID SRv6L2SVC entries"; + } + leaf prefix-sid-srv6-layer2-svc-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by Prefix-SID SRv6L2SVC + entries"; + } + leaf prefix-sid-unk-tl-vs-count { + type uint32; + description + "Number of Prefix-SID UnkTLVs entries"; + } + leaf prefix-sid-unk-tl-vs-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by Prefix-SID UnkTLVs + entries"; + } + leaf oc-rib-attribute-sets-entry-count { + type uint32; + description + "Number of OC RIB specific attribute-set entries"; + } + leaf oc-rib-attribute-set-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by OC RIB attribute-set + entries"; + } + leaf local-as { + type uint32; + description + "Local autonomous system number"; + } + leaf total-vrf-count { + type uint32; + description + "Total count of VRFs"; + } + leaf neighbors-count-total { + type uint32; + description + "Total number of neighbors"; + } + leaf established-neighbors-count-total { + type uint32; + description + "Total number of neighbors in established state"; + } + leaf sn-num-non-dflt-vrf-nbrs { + type uint32; + description + "Number of neighbors in all non-default VRFs"; + } + leaf sn-num-non-dflt-vrf-nbrs-estab { + type uint32; + description + "Number of established neighbors in all + non-default VRFs"; + } + leaf large-community-entry-count { + type uint32; + description + "Number of large community entries"; + } + leaf large-community-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by large community + entries"; + } + list pool-size { + max-elements "15"; + description + "BGP process maximum pool size"; + leaf entry { + type uint32; + description + "BGP process maximum pool size"; + } + } + list pool-alloc-count { + max-elements "15"; + description + "Number of bytes of memory forpool allocation"; + leaf entry { + type uint32; + units "byte"; + description + "Number of bytes of memory forpool allocation"; + } + } + list pool-free-count { + max-elements "15"; + description + "Number of bytes of memory freedin pool"; + leaf entry { + type uint32; + units "byte"; + description + "Number of bytes of memory freedin pool"; + } + } + list msg-log-pool-size { + max-elements "5"; + description + "Number of messages present in pool"; + leaf entry { + type uint32; + description + "Number of messages present in pool"; + } + } + list msg-log-pool-alloc-count { + max-elements "5"; + description + "Number of messages poolallocation memory"; + leaf entry { + type uint32; + description + "Number of messages poolallocation memory"; + } + } + list msg-log-pool-free-count { + max-elements "5"; + description + "Number of messages log freedfrom pool"; + leaf entry { + type uint32; + description + "Number of messages log freedfrom pool"; + } + } + list bmp-pool-size { + max-elements "20"; + description + "BGP monitoring protocol (BMP) pool size"; + leaf entry { + type uint32; + description + "BGP monitoring protocol (BMP) pool size"; + } + } + list bmp-pool-alloc-count { + max-elements "20"; + description + "Number of bytes of memoryallocated for BGP + + monitoringprotocol pool"; + leaf entry { + type uint32; + units "byte"; + description + "Number of bytes of memoryallocated for BGP + + monitoringprotocol pool"; + } + } + list bmp-pool-free-count { + max-elements "20"; + description + "Number of bytes of memory freedfrom pool"; + leaf entry { + type uint32; + units "byte"; + description + "Number of bytes of memory freedfrom pool"; + } + } + } + + grouping BGP-PROCESS-INFO-BAG { + description + "BGP Process information"; + container global { + description + "Global information"; + uses BGP-PROCESS-INFO-GBL; + } + container vrf { + description + "VRF information"; + uses BGP-PROCESS-INFO-VRF; + } + container performance-statistics { + description + "BGP process informationperformance statistics"; + uses BGP-PERF-PROCESS; + } + leaf process-instance { + type uint8; + description + "ID for the BGP process instance"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf vrf-totals { + type boolean; + description + "per VRF counts aggregated across all VRFs"; + } + } + + grouping BGP-BMP-NBR-BAG { + description + "BMP per Neighbor Details"; + container bmp-neighbor-address { + description + "Address of Nbr that logs to BMP server"; + uses BGP-ADDRTYPE; + } + leaf vrf-name-xr { + type string; + description + "Name of the VRF"; + } + leaf bmp-neighbor-msg-pending { + type uint32; + description + "Number of messages pending to be sent to BMP + Server from this Neighbor"; + } + leaf bmp-neighbor-msg-dropped { + type uint32; + description + "Number of messages dropped sent from this + neighbor"; + } + leaf bmp-neighbor-peer-up-sent { + type uint32; + description + "Number of Peer UP Messages sent from this + neighbor"; + } + leaf bmp-neighbor-peer-down-sent { + type uint32; + description + "Number of Peer DOWN Messages sent from this + neighbor"; + } + leaf bmp-neighbor-route-monitor-sent { + type uint32; + description + "Number of Route Monitor Messages sent"; + } + leaf bmp-neighbor-route-monitor-eor-sent { + type uint32; + description + "Number of Route Monitor EOR Messages sent"; + } + leaf bmp-neighbor-path-update-sent { + type uint32; + description + "Number of Path UpdateMessages sent"; + } + leaf bmp-neighbor-path-withdraw-sent { + type uint32; + description + "Number of Path WithdrawMessages sent"; + } + leaf bmp-neighbor-path-update-drop { + type uint32; + description + "Number of path update drop "; + } + leaf bmp-neighbor-path-withdraw-drop { + type uint32; + description + "Number of path wdraw drop "; + } + leaf bmp-neighbor-upd-msg-sent { + type uint32; + description + "Number of update message sent"; + } + leaf bmp-neighbor-wdraw-msg-sent { + type uint32; + description + "Number of withdraw message sent"; + } + } + + grouping BGP-BMP-SRVR-AFI { + description + "BMP AFI Server Details"; + container bmp-resume-prefix { + description + "BMP Resume prefix"; + uses BGP-PREFIXTYPE; + } + container bmp-filter-neighbor-address { + description + "Filter Neighbor Address"; + uses BGP-ADDRTYPE; + } + leaf bmpaf-name { + type Bgp-afi; + description + "BMP Address family identifier"; + } + leaf bmp-resume-prefix-len { + type uint32; + description + "BMP Resume prefix Len"; + } + leaf bmp-upd-gen-resume-start-version { + type uint64; + description + "Update Gen ResumeWalk start version"; + } + leaf bmp-upd-gen-resume-end-version { + type uint64; + description + "Update Gen ResumeWalk end version"; + } + leaf bmp-upd-gen-walk-stopped { + type boolean; + description + "Update Gen WalkStopped"; + } + leaf bmp-upd-gen-resume-net-version { + type uint64; + description + "Update Gen ResumeWalk Net version"; + } + leaf bmp-upd-gen-walk-run-time-stamp { + type uint64; + description + "Last Update Gen Run time stamp"; + } + leaf bmp-upd-gen-walk-run-count { + type uint64; + description + "Number of times Update Gen ran"; + } + leaf bmp-upd-gen-walk-stop-time-stamp { + type uint64; + description + "Last Update Gen Stop time stamp"; + } + leaf bmp-upd-gen-walk-stop-count { + type uint64; + description + "Number of times Update Gen Stopped"; + } + leaf bmp-init-eor-end-version { + type uint64; + description + "Version to reach to send EOR"; + } + leaf bmp-init-eor-pending-cnt { + type uint32; + description + "Count for pending EOR"; + } + leaf bmp-filter-neighbor-address-set { + type boolean; + description + "Filter Neighbor Address Set ?"; + } + leaf bmp-filter-nbr-cnt { + type uint32; + description + "Filter nbr Count for this AFI"; + } + leaf bmp-send-version { + type uint64; + description + "Table Version that this BMP server has caught + upto"; + } + leaf bmp-local-rib-afi-scan-time { + type uint32; + units "second"; + description + "BMP Local-RIB AFI specific scanner interval in + seconds"; + } + } + + grouping BGP-BMP-SRVR-BAG { + description + "BMP Server Details"; + container bmp-server-state-age { + description + "Age of current state of BMP Server"; + uses BGP-TIMESPEC; + } + container bmp-server-state-time-spec { + description + "Timespec of current state of BMP Server"; + uses BGP-TIMESPEC; + } + container bmp-server-last-discon-time { + description + "Timespec of Last Disconnect event received from + BMP server"; + uses BGP-TIMESPEC; + } + container update-source-address { + description + "Address of Interface configured as Update Source"; + uses BGP-ADDRTYPE; + } + leaf bmp-server-id { + type uint8; + description + "BMP Server ID"; + } + leaf bmp-server-host-name { + type string; + description + "BMP Server Hostname"; + } + leaf bmp-server-port { + type uint32; + description + "BMP Server Port Number"; + } + leaf bmp-server-state { + type Bgp-bmp-state; + description + "Connection state of the BMP server"; + } + leaf bmp-server-is-flapping { + type boolean; + description + "Connection to the BMP server Flapping"; + } + leaf bmp-server-nbr-count { + type uint32; + description + "Neighbor count for the BMP Server"; + } + leaf bmp-init-msg-count { + type uint32; + description + "Number of Initiation Msgs sent by this BMP + Server"; + } + leaf bmp-termination-msg-count { + type uint32; + description + "Number of Termination Messages sent by this BMP + Server"; + } + leaf bmp-status-report-count { + type uint32; + description + "Number of Status ReportMessages sent by this BMP + Server"; + } + leaf bmp-per-peer-msg-count { + type uint32; + description + "Total number of per peer messages sent"; + } + leaf bmp-peer-msg-drop-count { + type uint32; + description + "Total number of messages dropped"; + } + leaf bmp-peer-msg-pending-count { + type uint32; + description + "Total number of bmpQ msgs pending"; + } + leaf tos-type { + type uint8; + description + "Precedence (0) or DSCP (1) type"; + } + leaf tos-value { + type uint8; + description + "Precedence or DSCP value"; + } + leaf update-source-interface-name { + type string; + description + "Interface configured as Update Source"; + } + leaf update-source-vrf-id { + type uint32; + description + "VRF ID of interface configured as Update Source"; + } + leaf bmp-vrf-name { + type string; + description + "VRF Name configured"; + } + leaf bmp-vrf-id { + type uint32; + description + "VRF ID for the vrf name configured"; + } + leaf bmp-update-mode { + type Bgp-bmp-upd-mode; + description + "Update sending mode configured for this BMP + server. This field is deprecated"; + } + leaf bmp-update-modes-bitmap { + type uint32; + description + "Bitmap with bits corresponding toUpdate sending + modes configured"; + } + leaf tcp-keep-alive-interval { + type uint32; + description + "TCP Keep alive interval configured"; + } + leaf tcp-maximum-segment-size { + type uint32; + description + "TCP Maximum Segments size configured"; + } + leaf tcp-write-cb-pending { + type uint32; + description + "Are we waiting for TCP write callback ?"; + } + leaf tcp-last-write-result { + type uint32; + description + "Last TCP Socket write status"; + } + leaf tcp-last-write-cb-time { + type uint64; + description + "Last TCP Write CB time"; + } + leaf tcp-last-write-time { + type uint64; + description + "Last TCP Write time"; + } + leaf bmpq-last-write-pulse-sent-time { + type uint64; + description + "Last BMPQ write pulse Sent time"; + } + leaf bmpq-last-all-write-pulse-sent-time { + type uint64; + description + "Last BMPQ write pulse Sent for all BMP servers "; + } + leaf bmpq-last-write-pulse-cb-time { + type uint64; + description + "Last BMPQ write pulse callback time"; + } + leaf path-update-count { + type uint32; + description + "Number of path update sent "; + } + leaf path-withdraw-count { + type uint32; + description + "Number of path wdraw sent"; + } + leaf path-update-drop { + type uint32; + description + "Number of path update drop "; + } + leaf path-withdraw-drop { + type uint32; + description + "Number of path wdraw drop "; + } + leaf bmp-peer-msg-pending-count-max { + type uint32; + description + "Total bmpQ msgs pending max"; + } + leaf bmp-peer-msg-pending-count-hwts { + type uint64; + description + "Total bmpQ msgs pending max time"; + } + leaf bmp-bytes-written-tcp { + type uint64; + units "byte"; + description + "Total bytes sent to TCP"; + } + leaf tcp-write-time { + type uint32; + units "millisecond"; + description + "Time spent processing sending msg to + TCP(milliseconds)"; + } + leaf bmpr-mon-upd-messages { + type uint32; + description + "Total bmpQ update msgs "; + } + leaf bmpr-mon-wdraw-messages { + type uint32; + description + "Total bmpQ withdraw msgs "; + } + leaf bmp-messages-wdraw-discarded { + type uint32; + description + "Total bmpQ wdraw msgs discarded because of peer + down"; + } + leaf bmp-pfx-wdraw-discarded { + type uint32; + description + "Total bmpQ wdraw pfxes discarded because of peer + down"; + } + leaf bmp-per-peer-msg-route-mon-count { + type uint32; + description + "Total number of per peer route mon messages sent"; + } + leaf bmpr-mon-update-gen-time { + type uint32; + units "millisecond"; + description + "Time spent in update generation(milliseconds)"; + } + leaf bmpr-mon-eo-rmessages { + type uint32; + description + "Total bmpQ EOR update msgs "; + } + leaf bmp-rmon-cur-buffer-size { + type uint64; + description + "Current Buffer usage per BMP Route Mon"; + } + leaf bmp-maximum-buffer-size-route-mon { + type uint64; + description + "Buffer limit used for route mon"; + } + leaf bmp-server-up-count { + type uint32; + description + "Number of BMP server that are UP"; + } + leaf bmp-upd-gen-in-progress { + type boolean; + description + "Update generation in progress"; + } + leaf bmp-reset-walk-in-progress { + type boolean; + description + "Flag to indicate if BGP monitoring protocol + server reset walk is in progress"; + } + leaf bmp-in-post-pol-advertisement-interval-sec { + type uint32; + units "second"; + description + "BMP Inbound Post-Policy advertisement interval + seconds"; + } + leaf bmp-in-post-pol-advertisement-interval-msec { + type uint32; + units "millisecond"; + description + "BMP Inbound Post-Policy advertisement interval + milliseconds"; + } + leaf bmp-in-post-pol-scan-time { + type uint32; + units "second"; + description + "BMP scanner interval in seconds"; + } + leaf bmp-local-rib-advertisement-interval-sec { + type uint32; + units "second"; + description + "BMP Local-RIB advertisement interval seconds"; + } + leaf bmp-local-rib-advertisement-interval-msec { + type uint32; + units "millisecond"; + description + "BMP Local-RIB advertisement interval + milliseconds"; + } + leaf bmp-local-rib-scan-time { + type uint32; + units "second"; + description + "BMP Local-RIB scanner interval in seconds"; + } + leaf bmp-flapping-delay { + type uint16; + units "second"; + description + "BMP Flapping Delay in seconds"; + } + leaf bmp-initial-delay { + type uint16; + units "second"; + description + "BMP Initial Delay in seconds"; + } + leaf bmp-initial-refresh-delay { + type uint16; + units "second"; + description + "BMP Initial Refresh Delay in seconds"; + } + leaf bmp-initial-refresh-spread { + type uint16; + units "second"; + description + "BMP Initial Refresh Spread in seconds"; + } + leaf bmp-stats-reporting-time-delay { + type uint16; + units "second"; + description + "BMP Stats Reporting Time in seconds"; + } + list bmpafi-info { + description + "AFI specific info for BMP server"; + uses BGP-BMP-SRVR-AFI; + } + } + + grouping BGP-UPDFILTER-ELEM-BAG { + description + "BGP Update filtering element information"; + leaf update-attribute-flags { + type uint8; + description + "Attribute Flags [RFC4271: BGP4]"; + } + leaf update-attribute-code { + type uint8; + description + "Attribute code [RFC4271: BGP4]"; + } + leaf update-filter-action { + type Bgp-bag-upd-filter-action; + description + "Filtering action"; + } + } + + grouping BGP-UPDFILTER-MSG-BAG { + description + "BGP Update filter message information"; + container update-filter-message-timestamp { + description + "Message timestamp: time elapsed since 00:00:00 + UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-filtered-attribute-count { + type uint32; + description + "Total number of attributes filtered in + thismessage"; + } + leaf update-filter-final-action { + type Bgp-bag-upd-filter-action; + description + "Filtering final action"; + } + leaf update-filter-nlri-address-family { + type Bgp-afi; + description + "NLRI address-family"; + } + leaf update-filter-nlri-string { + type string; + description + "List of NLRIs in string format"; + } + leaf update-filter-nlri-string-truncated { + type boolean; + description + "Indicates whether NLRI string was truncated due + to lack of space"; + } + list update-filter-message-data { + description + "Raw Message data in binary format"; + leaf entry { + type uint8; + description + "Raw Message data in binary format"; + } + } + list update-filter-element { + max-elements "3"; + description + "Filtering element list"; + uses BGP-UPDFILTER-ELEM-BAG; + } + } + + grouping BGP-UPDFILTER-ATTRF-ATTR-BAG { + description + "BGP Update filtering attributes information"; + container last-update-filter-match-timestamp { + description + "Last attribute filtered time: time elapsed since + 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-internal-attribute-code { + type uint32; + description + "Internal attribute code [RFC4271: BGP4]"; + } + leaf update-filter-action { + type Bgp-bag-upd-filter-action; + description + "Filtering action"; + } + leaf update-filter-match-count { + type uint32; + description + "Filter match counter"; + } + leaf establishment-update-filter-match-count { + type uint32; + description + "Filter match counter since last session + establishment"; + } + leaf last-update-filter-match-age { + type uint32; + units "second"; + description + "Time since this attribute was last filtered (in + seconds)"; + } + } + + grouping BGP-UPDFILTER-NBR-BAG { + description + "BGP Update filtering Neighbor information"; + container update-neighbor-address { + description + "Neighbor address"; + uses BGP-ADDRTYPE; + } + container first-update-filtered-timestamp { + description + "First filtered message received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + container last-update-filtered-timestamp { + description + "Last filtered message received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-filter-logging-enabled { + type boolean; + description + "Logging is enabled"; + } + leaf configured-update-filter-message-buffer-count { + type uint32; + description + "Total number of configured update filter + messagebuffer size"; + } + leaf operational-update-filter-message-buffer-count { + type uint32; + description + "Number of messages in the message buffer"; + } + leaf update-filter-message-buffer-circular { + type boolean; + description + "Indicates if the message buffers are circular"; + } + leaf update-attribute-filter-group-name { + type string; + description + "String format BGP attribute-filter group name"; + } + leaf operational-update-attribute-filtering-enabled { + type boolean; + description + "Attribute filtering is enabled"; + } + leaf message-update-attribute-filtering-enabled { + type boolean; + description + "Attribute filtering is enabled for the current + message being parsed"; + } + leaf total-filter-update-message-count { + type uint32; + description + "Total number of filtered messages encoutered"; + } + leaf establishment-total-filter-update-message-count { + type uint32; + description + "Total update messages count since session + establishment"; + } + leaf update-filtered-message-count { + type uint32; + description + "Total number of filtered messages encountered so + far"; + } + leaf establishment-update-filtered-message-count { + type uint32; + description + "Filtered messages count since session + establishment"; + } + leaf last-update-filtered-age { + type uint32; + units "second"; + description + "Time since last filtered message received event + (in seconds)"; + } + leaf update-filter-message-list-count { + type uint32; + description + "Filtered messages list count"; + } + list update-attribute-filter-attributes { + description + "List of attributes that can be filtered"; + uses BGP-UPDFILTER-ATTRF-ATTR-BAG; + } + list update-filter-message { + description + "List of filtered messages"; + uses BGP-UPDFILTER-MSG-BAG; + } + } + + grouping BGP-UPDERR-ELEM-BAG { + description + "BGP Update error-handling element information"; + leaf update-attribute-flags { + type uint8; + description + "Attribute Flags [RFC4271: BGP4]"; + } + leaf update-attribute-code { + type uint8; + description + "Attribute code [RFC4271: BGP4]"; + } + leaf update-attribute-length { + type uint16; + description + "Attribute Length [RFC4271: BGP4]"; + } + leaf update-error-data { + type yang:hex-string; + description + "Error data"; + } + leaf update-error-data-length { + type uint16; + description + "Error data length"; + } + leaf update-error-action { + type Bgp-bag-upd-err-action; + description + "Error action"; + } + } + + grouping BGP-UPDERR-RESET-DATA-BAG { + description + "BGP Update error-handling session reset + information"; + leaf update-error-reset-reason { + type Bgp-reset-reason-index; + description + "Reset Reason"; + } + leaf update-error-reset-notification-code { + type uint8; + description + "Notification code"; + } + leaf update-error-reset-notification-sub-code { + type uint16; + description + "Notification sub code"; + } + leaf update-error-reset-notification-data { + type yang:hex-string; + description + "Notification data"; + } + leaf update-error-reset-notification-data-length { + type uint16; + description + "Notification data length"; + } + } + + grouping BGP-UPDERR-MSG-BAG { + description + "BGP Update error message information"; + container update-message-timestamp { + description + "Message timestamp: time elapsed since 00:00:00 + UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + container update-message-reset-data { + description + "Reset data"; + uses BGP-UPDERR-RESET-DATA-BAG; + } + leaf update-error-final-action { + type Bgp-bag-upd-err-action; + description + "Error final action"; + } + leaf update-attribute-discard-count { + type uint32; + description + "Discarded attribute count"; + } + leaf update-error-nlri-address-family { + type Bgp-afi; + description + "NLRI address-family"; + } + leaf update-error-nlri-string { + type string; + description + "List of NLRIs in string format"; + } + leaf update-error-nlri-string-truncated { + type boolean; + description + "Indicates whether NLRI string was truncated due + to lack of space"; + } + list update-message-data { + description + "Raw Message data in binary format"; + leaf entry { + type uint8; + description + "Raw Message data in binary format"; + } + } + list update-error-element { + max-elements "3"; + description + "Error element list"; + uses BGP-UPDERR-ELEM-BAG; + } + } + + grouping BGP-UPDERR-NBR-BAG { + description + "BGP Update error-handling Neighbor information"; + container update-neighbor-address { + description + "Neighbor address"; + uses BGP-ADDRTYPE; + } + container first-update-malformed-timestamp { + description + "First malformed message received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + container last-update-malformed-timestamp { + description + "Last malformed message received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + container first-update-memory-allocation-fail-timestamp { + description + "First memory allocation failure time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + container last-update-memory-allocation-fail-timestamp { + description + "Last memory allocation failure time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + container first-update-error-handling-reset-timestamp { + description + "First error-handling reset time: time elapsed + since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + container last-error-handling-reset-timestamp { + description + "Last error-handling reset time: time elapsed + since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-error-handling-avoid-reset { + type boolean; + description + "Configure error-handling to avoid resets"; + } + leaf total-update-message-count { + type uint32; + description + "The total number of update messages encoutered + so far"; + } + leaf update-malformed-message-count { + type uint32; + description + "The toatl number of malform update messages so + far"; + } + leaf last-update-malformed-age { + type uint32; + units "second"; + description + "Time since last malformed message received event + (in seconds)"; + } + leaf update-memory-allocation-fail-count { + type uint32; + description + "Total number of memory allocation failures"; + } + leaf last-update-memory-allocation-fail-age { + type uint32; + units "second"; + description + "Time since last memory allocation failure event + (in seconds)"; + } + leaf update-error-handling-reset-count { + type uint32; + description + "Total number of neighbor reset due to + error-handling"; + } + leaf last-error-handling-reset-age { + type uint32; + units "second"; + description + "Time since last error-handling reset event (in + seconds)"; + } + leaf update-error-message-list-count { + type uint32; + description + "Malformed messages list count"; + } + leaf update-attribute-discard-count { + type uint32; + description + "Discarded attribute count"; + } + leaf establishment-total-update-message-count { + type uint32; + description + "Total update messages count since session + establishment"; + } + list establishment-action-count { + max-elements "7"; + description + "Number of occurence of each action type since + + session establishment"; + leaf entry { + type uint32; + description + "Number of occurence of each action type since + + session establishment"; + } + } + list update-error-message { + description + "List of malformed messages"; + uses BGP-UPDERR-MSG-BAG; + } + } + + grouping BGP-GLOBAL-PROCESS-INFO-VRF { + description + "BGP GLOBAL PROCESS INFO VRF"; + leaf vrf-is-active { + type boolean; + description + "VRF state"; + } + leaf route-distinguisher { + type yang:hex-string; + description + "BGP global process route distinguisher"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID for the VRF"; + } + leaf configured-router-id { + type inet:ipv4-address; + description + "BGP global process configured router ID"; + } + leaf is-redistribute-ibgp-to-ig-ps-enabled { + type boolean; + description + "Redistribute iBGP into IGPs enabled"; + } + leaf is-fast-external-fallover-enabled { + type boolean; + description + "Flag to indicate if fast external fallover is + enabled"; + } + leaf is-bestpath-missing-med-is-worst-enabled { + type boolean; + description + "Bestpath: Treat missing MED as worst"; + } + leaf is-bestpath-always-compare-med-enabled { + type boolean; + description + "Bestpath: Always compare MED"; + } + leaf is-bestpath-ignore-as-path-enabled { + type boolean; + description + "Bestpath: Ignore AS path"; + } + leaf is-bestpath-as-path-mpath-relax-enabled { + type boolean; + description + "Bestpath: Relax AS path for mpath"; + } + leaf is-bestpath-compare-med-from-confed-peer-enabled { + type boolean; + description + "Bestpath: Compare MED from confed peer"; + } + leaf is-bestpath-compare-router-id-for-ebgp-peers-enabled { + type boolean; + description + "Bestpath: Compare routerID for eBGP peers"; + } + leaf is-bestpath-aigp-ignore-enabled { + type boolean; + description + "Bestpath: Ignore AIGP unless both paths have + AIGP attribute"; + } + leaf is-bestpath-igp-metric-ignore-enabled { + type boolean; + description + "Bestpath: Ignore IGP metric"; + } + leaf is-bestpath-igp-metric-sr-policy-enabled { + type boolean; + description + "Bestpath: Prefer SR-Policy admin/metric of + color-extcomm Nexthop as IGP metric"; + } + leaf is-multipath-as-path-ignore-onwards-enabled { + type boolean; + description + "Multipath: Ignore everything AS path onwards for + mpath"; + } + leaf is-multipath-section-use-cluster-list-length { + type boolean; + description + "Multipath: Use Cluster-List Length Criteria"; + } + leaf is-bestpath-sr-policy-prefer-enabled { + type boolean; + description + "Bestpath: Prefer SR policy path"; + } + leaf is-bestpath-sr-policy-force-enabled { + type boolean; + description + "Bestpath: Force SR policy path"; + } + leaf is-enforce-first-as-enabled { + type boolean; + description + "Enforce first AS"; + } + leaf default-local-preference { + type uint32; + description + "BGP global process default local preference"; + } + leaf keep-alive-time { + type uint16; + units "second"; + description + "Default keepalive timer (seconds)"; + } + leaf hold-time { + type uint16; + units "second"; + description + "Default hold timer (seconds)"; + } + leaf min-acceptable-hold-time { + type uint16; + units "second"; + description + "Default min acceptable hold time from + neighbor(seconds)"; + } + leaf is-neighbor-logging { + type boolean; + description + "Neighbor logging enabled"; + } + leaf is-default-metric-configured { + type boolean; + description + "Flag to indicate if default metric is configured"; + } + leaf default-metric { + type uint32; + description + "BGP global process virtual routingand forwarding + default metric"; + } + leaf is-default-originate-configured { + type boolean; + description + "Flag to indicate if default route originate is + configured"; + } + leaf is-graceful-restart { + type boolean; + description + "Graceful restart enabled"; + } + leaf is-nsr { + type boolean; + description + "Non-stop routing enabled"; + } + leaf slow-peer-global-dynamic { + type boolean; + description + "Slow peer global dynamic"; + } + leaf slow-peer-global-dynamic-threshold { + type uint16; + description + "Slow peer global dynamic threshold (in sec)"; + } + leaf slow-peer-global-detection-disabled { + type boolean; + description + "Slow peer global detection disabled"; + } + leaf nexthop-validation-disabled { + type boolean; + description + "Color-Extcomm Nexthop validation disabled"; + } + leaf nexthop-validation-srte { + type boolean; + description + "Color-Extcomm Nexthop validation SR-Policy"; + } + leaf restart-time { + type uint32; + units "second"; + description + "Restart time (in seconds)"; + } + leaf stale-path-time { + type uint32; + units "second"; + description + "Stale path timeout time (in seconds)"; + } + leaf rib-purge-timeout { + type uint32; + units "second"; + description + "RIB purge timeout time (in seconds)"; + } + leaf rpki-use-validity { + type boolean; + description + "Use RPKI validity for bestpath calculation"; + } + leaf rpki-allow-invalid { + type boolean; + description + "Allow invalid paths"; + } + leaf rpki-signal-ibgp { + type boolean; + description + "Signal RPKI validity to iBGP peers"; + } + } + + grouping COLOR-ID-BAG { + description + "COLOR ID BAG"; + leaf color-id-val { + type uint32; + description + "Color ID "; + } + } + + grouping CLUSTER-ID-BAG { + description + "CLUSTER ID BAG"; + leaf cluster-id-val { + type uint32; + description + "Cluster ID "; + } + leaf cluster-id-type { + type uint8; + description + "Cluster ID type: number or IPv4 address"; + } + } + + grouping BGP-GLOBAL-PROCESS-INFO-GBL { + description + "BGP GLOBAL PROCESS INFO GBL"; + container gshut-nbr-all-ts { + description + "BGP gshut nbr all timestamp"; + uses BGP-TIMESPEC; + } + container gshut-nbr-all-age { + description + "BGP gshut nbr all age"; + uses BGP-TIMESPEC; + } + leaf in-standalone-mode { + type boolean; + description + "Standalone or Distributed mode"; + } + leaf local-as { + type uint32; + description + "Local autonomous system number"; + } + leaf instance-name { + type string; + description + "Name of BGP instance"; + } + leaf platform-max-multi-paths { + type uint32; + description + "Platform supported maximum multi-path count"; + } + leaf restart-count { + type uint32; + description + "No of times BGP has started"; + } + leaf update-delay { + type uint32; + units "second"; + description + "Update delay timeout time (in seconds)"; + } + leaf generic-scan-period { + type uint16; + units "second"; + description + "Period (in seconds) of generic scanner runs"; + } + leaf confederation-id { + type uint32; + description + "BGP global process confederation ID"; + } + leaf cluster-id { + type uint32; + description + "Cluster ID"; + } + leaf configured-cluster-id { + type uint32; + description + "BGP global process configuredcluster ID"; + } + leaf is-cluster-id-specified-as-ip { + type boolean; + description + "Cluster ID specified as an IP address"; + } + leaf asn-format { + type uint32; + description + "BGP AS Number Format"; + } + leaf srgb-start-configured { + type uint32; + description + "Configured segment-routing Global Block start + value"; + } + leaf srgb-end-configured { + type uint32; + description + "Configured segment-routing Global Block end + value"; + } + leaf srgb-start { + type uint32; + description + "In use segment-routing Global Block start value"; + } + leaf srgb-end { + type uint32; + description + "In use Segment-routing Global Block end value"; + } + leaf srlb-start-configured { + type uint32; + description + "Configured segment-routing Local Block start + value"; + } + leaf srlb-end-configured { + type uint32; + description + "Configured segment-routing Local Block end value"; + } + leaf srlb-start { + type uint32; + description + "In use segment-routing Local Block start value"; + } + leaf srlb-end { + type uint32; + description + "In use Segment-routing Local Block end value"; + } + leaf mix-srte-native { + type boolean; + description + "Platform support mix of SR-TE and Native IGP + Nexthop"; + } + leaf graceful-maintenance { + type boolean; + description + "Graceful shutdown activated for allneighbors"; + } + leaf graceful-maint-all-nbrs { + type boolean; + description + "Graceful Maintenance also for neighbors without + GM configuration"; + } + leaf graceful-maint-retain-routes { + type boolean; + description + "Retaining routes in RIB when BGP process stops + while in Graceful Maintenance"; + } + leaf process-rlimit { + type uint64; + description + "Platform RLIMIT max for the process"; + } + leaf bmp-maximum-buffer-size { + type uint64; + description + "Maximum limit user can configure for + max-buffer-size command under bmp-server"; + } + leaf bmp-default-buffer-size { + type uint64; + description + "Default value for BMP buffer limit when a value + is not configured"; + } + leaf bmp-current-buffer-size { + type uint64; + description + "Current value for BMP buffer "; + } + leaf bmp-cur-maximum-buffer-size { + type uint64; + description + "Maximum limit user has configure using + max-buffer-size command under bmp-server"; + } + leaf gbl-srv6-locator { + type string; + description + "Global Srv6 Locator Name"; + } + list cluster-id-entry { + description + "All configured Cluster IDs"; + uses CLUSTER-ID-BAG; + } + list color-id { + description + "All configured Color IDs"; + uses COLOR-ID-BAG; + } + } + + grouping BGP-GLOBAL-PROCESS-INFO-BAG { + description + "BGP process information common to all BGP + processes"; + container global { + description + "Global information"; + uses BGP-GLOBAL-PROCESS-INFO-GBL; + } + container vrf { + description + "VRF information"; + uses BGP-GLOBAL-PROCESS-INFO-VRF; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf vrfid { + type uint32; + description + "VRF ID"; + } + } + + grouping BGP-POSTIT-INFO { + description + "BGP POSTIT INFO"; + container postit-notification { + description + "Time since last notification was sent or + received"; + uses BGP-NOTFNTYPE; + } + leaf postit-type { + type uint32; + description + "Type of the event for post-it"; + } + leaf postit-subtype { + type uint32; + description + "BGP Postit Subtype"; + } + leaf postit-flags { + type uint8; + description + "Flags associated with post-it"; + } + leaf postit-af-name { + type Bgp-afi; + description + "Postit Afi"; + } + leaf postit-ts { + type uint64; + description + "Postit TS"; + } + leaf postit-direction { + type uint8; + description + "BGP postit inbound oroutbound direction"; + } + leaf postit-id { + type uint32; + description + "Postit ID"; + } + leaf peer-id { + type uint32; + description + "Peer ID"; + } + leaf postit-policy { + type string; + description + "Policy"; + } + leaf postit-reset { + type Bgp-reset-reason-index; + description + "Reset"; + } + } + + grouping BGP-NEIGHBOR-NSR-BAG { + description + "BGP neighbor nsr bag"; + container neighbors-address { + description + "Neighbor Addr"; + uses BGP-ADDRTYPE; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf connect-state { + type uint32; + description + "State"; + } + leaf start-time { + type uint32; + description + "StartTime"; + } + leaf nsr-state { + type Bgp-sync-nbr-nsr-state; + description + "NSR state"; + } + list neighbor-af { + min-elements 25; + max-elements "25"; + description + "Neighbor Afi"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list postit-info { + description + "BGP neighbor postit rounting information"; + uses BGP-POSTIT-INFO; + } + } + + grouping BGP-UPDFILTER-VRF-BAG { + description + "BGP Update filtering VRF information"; + container last-update-filtered-timestamp { + description + "Last Filtered messages received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-filtered-message-count { + type uint32; + description + "Number of filtered messages"; + } + leaf update-filtered-neighbor-count { + type uint32; + description + "Count of neighbors that received filtered + messages"; + } + leaf last-update-filtered-age { + type uint32; + units "second"; + description + "Time since last filtered messages received event + (in seconds)"; + } + } + + grouping BGP-VRF-INFO-BAG { + description + "BGP VRF information bag"; + leaf route-distinguisher { + type xr:Route-dist; + description + "BGP virtual routing and forwardingroute + distinguisher"; + } + } + + grouping BGP-PFXLST { + description + "Prefix list entry"; + list bgp-pfxlst { + description + "Next entry in prefix list"; + container bgp-prefix { + description + "BGP prefix"; + uses BGP-PREFIXTYPE; + } + leaf sequence-number { + type uint32; + description + "Sequence number of the entry in the prefix-list"; + } + leaf is-prefix-grant { + type boolean; + description + "TRUE = permit, FALSE = deny"; + } + leaf min-prefix-length { + type uint8; + units "bit"; + description + "Minimum prefix length in bits"; + } + leaf max-prefix-length { + type uint8; + units "bit"; + description + "Maximum prefix length in bits"; + } + } + } + + grouping BGP-RCV-PFXLST-BAG { + description + "Received prefix filter"; + container neighbor-address-xr { + description + "Neighbor Address"; + uses BGP-ADDRTYPE; + } + container prefix-list-info { + description + "Prefix list"; + uses BGP-PFXLST; + } + leaf af-name { + type Bgp-afi; + description + "Address family identfier"; + } + } + + grouping BGP-DEP-ENTRY-INFO { + description + "BGP DEP ENTRY INFO"; + leaf tblid { + type uint32; + description + "Tbl Id "; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + } + + grouping BGP-DEP-BAG { + description + "BGP SVD"; + list dep-entry-info { + description + "List of Dependency Tables "; + uses BGP-DEP-ENTRY-INFO; + } + } + + grouping BGP-UPDGEN-AF-BAG { + description + "BGP Update generation address-family information"; + container update-statistics { + description + "BGP address-family statistics update"; + uses BGP-UPDGEN-STATS-BAG; + } + leaf update-group-af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf update-main-table-version { + type uint64; + description + "Main table version"; + } + leaf update-rib-version { + type uint64; + description + "RIB version"; + } + leaf update-min-neighbor-version { + type uint64; + description + "Minimum Neighbor version"; + } + leaf current-update-limit-af { + type uint32; + description + "BGP Current AF sub-group update limit"; + } + leaf configured-update-limit-af { + type uint32; + units "byte"; + description + "Update limit per address-family in bytes"; + } + leaf current-update-limit-subgrp-ebgp { + type uint32; + description + "Current EBGP sub-group update limit"; + } + leaf configured-update-limit-subgrp-ebgp { + type uint32; + description + "Configured EBGP sub-group update limit"; + } + leaf current-update-limit-sub-group-ibgp { + type uint32; + description + "Current IBGP sub-group update limit"; + } + leaf configured-update-limit-sub-group-ibgp { + type uint32; + description + "Configured IBGP sub-group update limit"; + } + leaf update-out-queue-messages { + type uint32; + description + "OutQueue messsages"; + } + leaf update-out-queue-size { + type uint32; + description + "OutQueue size"; + } + leaf update-throttled { + type boolean; + description + "Flag to indicate if update generation is + currently throttled"; + } + leaf update-update-group-count { + type uint32; + description + "Update-group count"; + } + leaf update-sub-group-count { + type uint32; + description + "Sub-group count"; + } + leaf sub-group-throttled-count { + type uint32; + description + "Throttled sub-group count"; + } + leaf refresh-sub-group-count { + type uint32; + description + "Number of refresh sub groups"; + } + leaf refresh-sub-group-throttled-count { + type uint32; + description + "Throttled refresh sub-group count"; + } + leaf filter-group-count { + type uint32; + description + "Number of refresh filter groups"; + } + leaf neighbor-count { + type uint32; + description + "Number of neighbors in BGP"; + } + leaf update-table-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-vrfaf-name { + type uint32; + description + "Address family identifier"; + } + leaf update-vrf-rd-version { + type uint64; + description + "RD Version"; + } + leaf update-vrf-table-rib-version { + type uint64; + description + "VRF Table RIB version"; + } + leaf table-inter-afi-import-advertise { + type boolean; + description + "InterAfi Import Advertise"; + } + leaf table-inter-afi-export-allow-imported-vpn { + type boolean; + description + "InterAfi Export Allow Imported VPN"; + } + leaf export-allow-imported-vpn { + type boolean; + description + "Export Allow Imported VPN"; + } + leaf vrf-import-advertise { + type boolean; + description + "Vrf Import Advertise"; + } + leaf table-update-group-count { + type uint32; + description + "Number of virtual routing and forwarding table + update groups"; + } + leaf update-table-sub-group-count { + type uint32; + description + "Number of virtual routing and forwarding table + sub groups"; + } + leaf table-sub-group-throttled-count { + type uint32; + description + "VRF Table throttled sub-group count"; + } + leaf table-refresh-sub-group-count { + type uint32; + description + "Number of virtual routing and forwarding table + refresh sub groups"; + } + leaf table-refresh-sub-group-throttled-count { + type uint32; + description + "VRF Table throttled refresh sub-group count"; + } + leaf update-table-filter-group-count { + type uint32; + description + "Number of virtual routing and forwarding table + filter groups"; + } + leaf table-neighbor-count { + type uint32; + description + "Number of virtual routing and forwarding table + neighbors"; + } + } + + grouping BGP-SLOW-PEER-VER-BAG { + description + "BGP Slow peer version information"; + leaf slow-peer-start-version { + type uint64; + description + "Slow Peer Start Version"; + } + leaf slow-peer-end-version { + type uint64; + description + "Slow Peer End Version"; + } + } + + grouping BGP-UPDGEN-NBR-BAG { + description + "BGP Update generation Neighbor information"; + container update-neighbor-address { + description + "Neighbor address"; + uses BGP-ADDRTYPE; + } + container last-sub-group-add-timestamp { + description + "Last added time"; + uses BGP-TIMESPEC; + } + container last-sub-group-remove-timestamp { + description + "Last removed time"; + uses BGP-TIMESPEC; + } + container last-filter-group-add-timestamp { + description + "Last added time"; + uses BGP-TIMESPEC; + } + container last-filter-group-remove-timestamp { + description + "Last removed time"; + uses BGP-TIMESPEC; + } + container first-default-originate-timestamp { + description + "Timestamp when the first default-origination was + done"; + uses BGP-TIMESPEC; + } + container last-default-originate-timestamp { + description + "Timestamp when the last default-origination was + done"; + uses BGP-TIMESPEC; + } + container last-update-group-start-timestamp { + description + "Last update-group timer start"; + uses BGP-TIMESPEC; + } + container last-update-group-expiry-timestamp { + description + "Last update-group timer expiry"; + uses BGP-TIMESPEC; + } + container first-update-queued-timestamp { + description + "Timestamp when the first update was queued"; + uses BGP-TIMESPEC; + } + container last-update-queued-timestamp { + description + "Timestamp when last update was queued"; + uses BGP-TIMESPEC; + } + container last-refresh-update-queued-timestamp { + description + "Timestamp when the last refresh update was + queued"; + uses BGP-TIMESPEC; + } + container first-update-write-timestamp { + description + "Timestamp when the first update was written"; + uses BGP-TIMESPEC; + } + container last-update-write-timestamp { + description + "Timestamp when the last update was written"; + uses BGP-TIMESPEC; + } + container last-refresh-update-write-timestamp { + description + "Timestamp when the last refresh update written"; + uses BGP-TIMESPEC; + } + container update-statistics { + description + "BGP update generation statistics update"; + uses BGP-UPDGEN-STATS-BAG; + } + leaf process-id { + type uint32; + description + "ProcessID"; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-group-af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf update-filter-group-index { + type uint32; + description + "Filter-group index"; + } + leaf refresh-filter-group-index { + type uint32; + description + "BGP update generation refresh Filter-group index"; + } + leaf sub-group-index-xr { + type uint32; + description + "BGP update generation index for sub-group"; + } + leaf refresh-sub-group-index { + type uint32; + description + "BGP update generation refresh Sub-group index"; + } + leaf refresh-sub-group-id { + type uint32; + description + "ID of the refresh subgroup for BGP update + generation"; + } + leaf update-group-index-xr { + type uint32; + description + "Index of this BGP Update-group"; + } + leaf update-main-table-version { + type uint64; + description + "Main table version"; + } + leaf update-vrf-table-rib-version { + type uint64; + description + "VRF Table RIB version"; + } + leaf update-out-queue-messages { + type uint32; + description + "OutQueue messages"; + } + leaf update-out-queue-size { + type uint32; + description + "OutQueue size"; + } + leaf refresh-update-out-queue-messages { + type uint32; + description + "Refresh OutQueue messages"; + } + leaf refresh-update-out-queue-size { + type uint32; + description + "Refresh OutQueue size"; + } + leaf update-filter-group-messages { + type uint32; + description + "The number of messages on the BGP filter-group"; + } + leaf version { + type uint64; + description + "Version up to which we have generated updates + for BGP"; + } + leaf pending-target-version { + type uint64; + description + "Version of pending target for BGP update + generation"; + } + leaf next-resume-version { + type uint64; + description + "Version number identifying the next to process + when tablewalk has been interrupted"; + } + leaf ack-version { + type uint64; + description + "Identifying the prefixs that have been + advertisedto the peer and acknowledged by it"; + } + leaf synced-ack-version { + type uint64; + description + "Peer acked version that was previously + synchronized"; + } + leaf outstanding-version-count { + type uint32; + description + "The number of all outstanding version objects + for thisneighbor address-family"; + } + leaf update-refresh-version { + type uint64; + description + "Refresh version"; + } + leaf refresh-requested-target-version { + type uint64; + description + "Requested refresh target version"; + } + leaf update-refresh-target-version { + type uint64; + description + "Target version for update generation in response + to arefresh request"; + } + leaf refresh-pending-target-version { + type uint64; + description + "Pending refresh target version"; + } + leaf refresh-next-resume-version { + type uint64; + description + "Version number identifying the next to process + whena table walk has been interrupted"; + } + leaf refresh-ack-version { + type uint64; + description + "Versio of the Refresh Ack for BGP update + generation"; + } + leaf last-default-originate-age { + type uint32; + units "second"; + description + "Time since last default-origination event (in + seconds)"; + } + leaf default-originate-state { + type int32; + description + "BGP update generation default originate state + information"; + } + leaf default-originate-internal-context { + type int32; + description + "BGP update generation default originate context + stateinformation"; + } + leaf is-eor-outstanding { + type boolean; + description + "Number of EORs outstanding"; + } + leaf outbound-refresh-count { + type uint32; + description + "Refresh Outbound count"; + } + leaf inbound-refresh-count { + type uint32; + description + "Refresh Inbound count"; + } + leaf is-update-group-timer-running { + type boolean; + description + "Flag to indicate if update-group timer is + running"; + } + leaf current-update-group-af-name { + type Bgp-afi; + description + "Current Update-group address-family identifier"; + } + leaf last-update-group-af-name { + type Bgp-afi; + description + "Last Update-group address-family identifier"; + } + leaf last-update-queued-age { + type uint32; + units "second"; + description + "Time since last update queued event (in seconds)"; + } + leaf last-refresh-update-queued-age { + type uint32; + units "second"; + description + "Time since last refresh update queued event (in + seconds)"; + } + leaf last-update-write-age { + type uint32; + units "second"; + description + "Time since last update write event (in seconds)"; + } + leaf last-refresh-update-write-age { + type uint32; + units "second"; + description + "Time since last refresh update write event (in + seconds)"; + } + leaf slow-peer-static-or-dynamic { + type Bgp-slow-peer-static-dynamic; + description + "Slow Peer in static or dynamic detected state"; + } + leaf slow-peer-detection-time-stamp { + type uint32; + description + "Slow Peer Detection Timestamp"; + } + leaf is-neighbor-slow-peer-static { + type boolean; + description + "Is Neighbor Slow Peer Static"; + } + leaf neighbor-refresh-state { + type Bgp-updgen-nbr-refresh-state; + description + "Neighbor Refresh State"; + } + leaf update-msg-pointer { + type uint64; + description + "Update Message pointer"; + } + list slow-peer-versions { + description + "List of slow peer versions"; + uses BGP-SLOW-PEER-VER-BAG; + } + } + + grouping BGP-LINKED-EPE { + description + "BGP LINKED EPE"; + leaf epe-key-length { + type uint8; + description + "EPE key length in bits"; + } + leaf epe-type { + type uint8; + description + "Type of EPE object"; + } + list epe-key { + description + "Key of EPE object"; + leaf entry { + type uint8; + description + "Key of EPE object"; + } + } + } + + grouping BGP-EPE-SET-BAG { + description + "BGP EPE SET BAG"; + container epe-local-address { + description + "Local address"; + uses BGP-ADDRTYPE; + } + container epe-next-hop { + description + "Nexthop address"; + uses BGP-ADDRTYPE; + } + leaf epe-key-length { + type uint8; + description + "EPE key length in bits"; + } + leaf epe-type-xr { + type uint8; + description + "Type of EPE object"; + } + leaf epe-version { + type uint64; + description + "EPE object's version"; + } + leaf epe-flags { + type uint16; + description + "EPE object's flags"; + } + leaf epe-local-asn { + type uint32; + description + "Local AS Number"; + } + leaf epe-remote-asn { + type uint32; + description + "Remote AS Number"; + } + leaf epe-remote-router-id { + type uint32; + description + "BGP egress peer engineeringremote router id"; + } + leaf epe-local-router-id { + type uint32; + description + "BGP egress peer engineeringlocal router id"; + } + leaf label { + type uint32; + description + "Label assigned to the RPCnext-hop set"; + } + leaf ref-count { + type uint32; + description + "Reference count indicates numberof places being + updated"; + } + leaf rpc-set-object-id { + type uint32; + description + "RPC set object ID"; + } + list epe-key { + description + "Key of EPE object"; + leaf entry { + type uint8; + description + "Key of EPE object"; + } + } + list nexthop-id { + description + "List of nexthop ID of EPE"; + leaf entry { + type uint32; + description + "List of nexthop ID of EPE"; + } + } + list ifhandle { + description + "List of ifhandle of EPE"; + leaf entry { + type uint32; + description + "List of ifhandle of EPE"; + } + } + list first-hop { + description + "List of firsthops of EPE"; + uses BGP-ADDRTYPE; + } + list linked-epe { + description + "List of EPE objects linked to this current EPE + object"; + uses BGP-LINKED-EPE; + } + } + + grouping BGP-NBR-GSHUT { + description + "BGP NBR GSHUT"; + leaf gshut-exists { + type boolean; + description + "Graceful Maintenance enabled"; + } + leaf gshut-local-active { + type boolean; + description + "Graceful Maintenance locally activated"; + } + leaf gshut-active { + type boolean; + description + "Graceful Maintenance activated"; + } + leaf gshut-locpref-set { + type boolean; + description + "Graceful Maintenance Local Preference set"; + } + leaf gshut-locpref { + type uint32; + description + "Graceful Maintenance Local Preference"; + } + leaf gshut-prepends { + type uint8; + description + "Graceful Maintenance number of AS prepends"; + } + leaf gshut-interface-active { + type boolean; + description + "Graceful Maintenance activated at Interface"; + } + leaf gshut-location-active { + type boolean; + description + "Graceful Maintenance activated at Location"; + } + leaf gshut-all-nbr-active { + type boolean; + description + "Graceful Maintenance globally activated"; + } + leaf gshut-bandwidth-aware-set { + type boolean; + description + "Graceful Maintenance Bandwidth Aware Configured"; + } + leaf gshut-bandwidth-aware-state { + type Bgp-gshut-bw-edm-state; + description + "Graceful Maintenance Bandwidth Aware Operational + State"; + } + leaf gshut-bandwidth-aware-effective-link-bandwidth { + type uint64; + description + "Effective Link Bandwidth"; + } + leaf gshut-bandwidth-aware-total-link-bandwidth { + type uint64; + description + "Total Link Bandwidth"; + } + } + + grouping BGP-NBR-MSG-STATS-UNIT { + description + "BGP NBR MSG STATS UNIT"; + container last-time-spec { + description + "BGP neighbor message statisticslast timespec"; + uses BGP-TIMESPEC; + } + leaf count { + type uint32; + description + "Count"; + } + } + + grouping BGP-NBR-MSG-STATS-OP { + description + "BGP NBR MSG STATS OP"; + container tx { + description + "Transmit"; + uses BGP-NBR-MSG-STATS-UNIT; + } + container rx { + description + "Receive"; + uses BGP-NBR-MSG-STATS-UNIT; + } + } + + grouping BGP-NBR-MSG-STATS { + description + "BGP NBR MSG STATS"; + container open { + description + "Open"; + uses BGP-NBR-MSG-STATS-OP; + } + container notification { + description + "BGP neighbor messagestatistics notification"; + uses BGP-NBR-MSG-STATS-OP; + } + container update { + description + "BGP neighbor message statisticsupdate"; + uses BGP-NBR-MSG-STATS-OP; + } + container keepalive { + description + "Message sent between BGP neighborsto check the + link between is operating"; + uses BGP-NBR-MSG-STATS-OP; + } + container route-refresh { + description + "BGP neighbor message statisticsroute refresh"; + uses BGP-NBR-MSG-STATS-OP; + } + container total { + description + "Total"; + uses BGP-NBR-MSG-STATS-OP; + } + } + + grouping BGP-PERF-NBR-AF { + description + "BGP PERF NBR AF"; + leaf sub-group-pending-message-count { + type uint32; + description + "No. of sub-group messages waiting to be sent out + on this neighbor -- DEPRECATED -- "; + } + leaf processed-messages { + type uint32; + description + "Number of messages processed from the neighbor's + write queue"; + } + leaf sent-messages { + type uint32; + description + "Number of messages sent from the neighbor's + write queue"; + } + leaf split-horizon-update-transmit { + type uint32; + description + "No. of update messages with split-horizon flag + that were sent out"; + } + leaf split-horizon-update-blocked { + type uint32; + description + "No. of update messages with split-horizon flag + that were blocked"; + } + leaf split-horizon-withdraw-transmit { + type uint32; + description + "No. of withdraw messages with split-horizon flag + that were sent out"; + } + leaf split-horizon-withdraw-blocked { + type uint32; + description + "No. of withdraw messages with split-horizon flag + that were blocked"; + } + leaf refresh-mismatch-update-blocked { + type uint32; + description + "No. of update messages blocked due toRefresh + subgroup mismatch"; + } + leaf refresh-mismatch-withdraw-spurious { + type uint32; + description + "No. of withdraw messages spuriously blocked due + toRefresh subgroup mismatch"; + } + } + + grouping BGP-NBR-AF { + description + "BGP neighbor address family specific information"; + container neighbor-af-performance-statistics { + description + "Neighbor AF statistics"; + uses BGP-PERF-NBR-AF; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf is-neighbor-route-reflector-client { + type boolean; + description + "Nbr is a route reflector client"; + } + leaf is-legacy-pe-rt { + type boolean; + description + "Nbr accepts route from legacy PE for + RT-Constraint AF "; + } + leaf is-neighbor-af-capable { + type boolean; + description + "Address family capability received from neighbor"; + } + leaf is-soft-reconfiguration-inbound-allowed { + type boolean; + description + "Inbound soft reconfiguration allowed"; + } + leaf is-use-soft-reconfiguration-always-on { + type boolean; + description + "Soft reconf overrides route refresh"; + } + leaf remove-private-as-from-updates { + type boolean; + description + "Private AS numbers removed from updates to this + nbr"; + } + leaf remove-private-as-entire-aspath-from-updates { + type boolean; + description + "Private AS numbers removed from updates to + thisnbr only if the aspath hasonly private ASes"; + } + leaf remove-private-as-from-inbound-updates { + type boolean; + description + "Private AS numbers removed from updates from + this nbr"; + } + leaf remove-private-as-entire-aspath-from-inbound-updates { + type boolean; + description + "Private AS numbers removed from updates from + this nbr only if the aspath has only private + ASes"; + } + leaf flowspec-validation-d-isable { + type boolean; + description + "Flag to indicate if bgp neighbor address-family + flowspec validation is disabled"; + } + leaf flowspec-redirect-validation-d-isable { + type boolean; + description + "Flag to indicate if flowspec redirect nexthop + validation is disabled"; + } + leaf orr-group-name { + type string; + description + "ORR Group Name"; + } + leaf orr-group-index { + type uint32; + description + "ORR Group Index"; + } + leaf is-orr-root-address-configured { + type boolean; + description + "ORR Root address configuredfor the neighbor + connection"; + } + leaf advertise-afi { + type boolean; + description + "Encode in Advertise AFI"; + } + leaf advertise-afi-reorg { + type boolean; + description + "Encode in Advertise AFI"; + } + leaf advertise-afi-disable { + type boolean; + description + "Encode in Advertise AFI"; + } + leaf encapsulation-type { + type uint32; + description + "BGP neighbor address-familyencapsulation type"; + } + leaf advertise-rt-type { + type uint8; + description + "BGP neighbor address-familyadvertise route + target type"; + } + leaf advertise-afi-def-vrf-imp-disable { + type boolean; + description + "Advertise of default VRF import disable"; + } + leaf advertise-evpnv4-afi-def-vrf-imp-disable { + type boolean; + description + "Advertise of v4 default VRF import disable"; + } + leaf advertise-evpnv6-afi-def-vrf-imp-disable { + type boolean; + description + "Advertise of v6 default VRF import disable"; + } + leaf advertise-afi-vrf-re-imp-disable { + type boolean; + description + "Advertise of VRF re-import disable"; + } + leaf advertise-evpnv4-afi-vrf-re-imp-disable { + type boolean; + description + "Advertise of v4 VRF re-import disable"; + } + leaf advertise-evpnv6-afi-vrf-re-imp-disable { + type boolean; + description + "Advertise of v6 VRF re-import disable"; + } + leaf advertise-afi-eo-r-ready { + type boolean; + description + "EoR Can be sent for Advertise AFI"; + } + leaf always-use-next-hop-local { + type boolean; + description + "Local router always used for next-hop"; + } + leaf sent-community-to-neighbor { + type boolean; + description + "Community attribute sent to neighbor"; + } + leaf sent-gshut-community-to-neighbor { + type boolean; + description + "GSHUT Community attribute sent to neighbor"; + } + leaf sent-extended-community-to-neighbor { + type boolean; + description + "Extended community attribute sent to neighbor"; + } + leaf default-originate-vpn-index { + type uint32; + description + "Default orig vpn indexto find bitfield for a nbr + af"; + } + leaf neighbor-default-originate { + type boolean; + description + "Neighbor originates default"; + } + leaf is-orf-sent { + type boolean; + description + "Outbound route filter sent to neighbor"; + } + leaf is-update-deferred { + type boolean; + description + "Update deferred until ORF/route refresh received"; + } + leaf is-orf-send-scheduled { + type boolean; + description + "Scheduled to send prefix based ORF"; + } + leaf update-group-number { + type uint32; + description + "Update group index"; + } + leaf filter-group-index { + type uint32; + description + "BGP neighbor address-familyfilter group index"; + } + leaf is-update-throttled { + type boolean; + description + "Updates Throttled becausewrite limit is reached"; + } + leaf is-update-leaving { + type boolean; + description + "Nbr leaving update-groupto another"; + } + leaf vpn-update-gen-enabled { + type boolean; + description + "RT Nbr enabled for updategento another"; + } + leaf vpn-update-gen-trigger-enabled { + type boolean; + description + "RT Nbr enabled for updategento another"; + } + leaf is-addpath-send-operational { + type boolean; + description + "Addpath is operational on send-side"; + } + leaf is-addpath-receive-operational { + type boolean; + description + "Addpath is operational on receive-side"; + } + leaf neighbor-version { + type uint64; + description + "BGP neighbor version for theaddress-family"; + } + leaf weight { + type uint32; + description + "Weight for this AF"; + } + leaf max-prefix-limit { + type uint32; + description + "Max limit for # of prefixes"; + } + leaf use-max-prefix-warning-only { + type boolean; + description + "Warning only when maximum prefix limit reached"; + } + leaf max-prefix-discard-extra-paths { + type boolean; + description + "Discard extra paths when prefix limit reached"; + } + leaf max-prefix-exceed-discard-paths { + type boolean; + description + "Did we discard extra paths when prefix limit + reached"; + } + leaf max-prefix-threshold-percent { + type uint8; + units "percentage"; + description + "Percentage of maximum no. of prefixes at which + to generate warning"; + } + leaf max-prefix-discard-paths-count { + type uint32; + description + "Number of discarded paths after prefix limit + reached"; + } + leaf max-prefix-restart-time { + type uint16; + units "minute"; + description + "Time interval (in minutes) after which peering + session will be reestablished"; + } + leaf prefixes-accepted { + type uint32; + description + "Number of prefixes acceptedfrom this BGP + neighbor"; + } + leaf prefixes-synced { + type uint32; + description + "Number of prefixes synced to standby"; + } + leaf prefixes-withdrawn-not-found { + type uint32; + description + "Number of prefixes withdrawn butnot found gor + this BGP neighbor"; + } + leaf prefixes-denied { + type uint32; + description + "Number of prefixes denied forthis BGP neighbor"; + } + leaf prefixes-denied-no-policy { + type uint32; + description + "No. of prefixes denied because there was no + inbound policy"; + } + leaf prefixes-denied-rt-permit { + type uint32; + description + "No. of prefixes denied because RT extended + community is not imported"; + } + leaf prefixes-denied-orf-policy { + type uint32; + description + "No. of prefixes denied by prefix based ORF + policy"; + } + leaf prefixes-denied-policy { + type uint32; + description + "No. of prefixes denied by inbound policy"; + } + leaf prefixes-received { + type uint32; + description + "No. of prefixes received prior to inbound policy + run"; + } + leaf number-of-bestpaths { + type uint32; + description + "No. of bestpaths from this neighbor"; + } + leaf number-of-best-externalpaths { + type uint32; + description + "No. of best-external paths from this neighbor"; + } + leaf prefixes-advertised { + type uint32; + description + "Number of prefixes advertisedfor this BGP + neighbor"; + } + leaf prefixes-be-advertised { + type uint32; + description + "Number of BE prefixes advertised"; + } + leaf prefixes-suppressed { + type uint32; + description + "Number of prefixes suppressed"; + } + leaf prefixes-withdrawn { + type uint32; + description + "Number of prefixes withdrawn"; + } + leaf is-peer-orf-capable { + type boolean; + description + "Peer has outbound route filter capability"; + } + leaf is-advertised-orf-send { + type boolean; + description + "Prefix based ORF send mode capability advertised"; + } + leaf is-received-orf-send-capable { + type boolean; + description + "Prefix based ORF send mode capability received"; + } + leaf is-advertised-orf-receive { + type boolean; + description + "Prefix based ORF receive mode capability + advertised"; + } + leaf is-received-orf-receive-capable { + type boolean; + description + "Prefix based ORF receive mode capability + received"; + } + leaf is-advertised-graceful-restart { + type boolean; + description + "Graceful Restart Capability advertised"; + } + leaf is-graceful-restart-state-flag { + type boolean; + description + "Restart state flag enabled"; + } + leaf is-received-graceful-restart-capable { + type boolean; + description + "Graceful Restart Capability received"; + } + leaf is-add-path-send-capability-advertised { + type boolean; + description + "Flag to indicate if addpath send capability sent + to BGPneighbor"; + } + leaf is-add-path-send-capability-received { + type boolean; + description + "Flag to indicate if addpath send capability + received from BGP neighbor"; + } + leaf is-add-path-receive-capability-advertised { + type boolean; + description + "Flag to indicate if addpath receive capability + advertised from BGP neighbor"; + } + leaf is-add-path-receive-capability-received { + type boolean; + description + "Flag to indicate addpath receive capability + received from BGPneighbor"; + } + leaf is-ext-nh-encoding-capability-received { + type boolean; + description + "Flag to indicate extended nexthop encoding + capability received from BGP neighbor"; + } + leaf is-ext-nh-encoding-capability-sent { + type boolean; + description + "Extended nexhop encoding capability Sent"; + } + leaf restart-time { + type uint32; + units "second"; + description + "Restart time advertised (seconds)"; + } + leaf local-restart-time { + type uint32; + units "second"; + description + "Local Restart time (seconds)"; + } + leaf stale-path-timeout { + type uint32; + units "second"; + description + "Stale path timeout time (in seconds)"; + } + leaf rib-purge-timeout-value { + type uint32; + units "second"; + description + "RIB purge timeout time (in seconds)"; + } + leaf neighbor-preserved-forwarding-state { + type boolean; + description + "Flag to indicate neighbor preserved in + forwarding state"; + } + leaf long-lived-graceful-restart-stale-time-configured { + type boolean; + description + "Flag to indicate if BGP neighbor long-lived + graceful-restart stale time is configured"; + } + leaf long-lived-graceful-restart-stale-time-sent { + type uint32; + units "second"; + description + "Stale time sent in long-lived graceful-restart + capability (seconds)"; + } + leaf long-lived-graceful-restart-stale-time-accept { + type uint32; + units "second"; + description + "Maximum long-lived graceful-restart stale time + acceptable from the neighbor (seconds)"; + } + leaf long-lived-graceful-restart-capability-received { + type boolean; + description + "Flag to indicate long-lived graceful-restart + capability received from the neighbor"; + } + leaf long-lived-graceful-restart-stale-time-received { + type uint32; + units "second"; + description + "Long-lived graceful-restart stale time received + from the neighbor (seconds)"; + } + leaf neighbor-preserved-long-lived-forwarding-state { + type boolean; + description + "Flag to indicate BGP neighbor preserved + long-lived forwarding state"; + } + leaf neighbor-long-lived-graceful-restart-capable { + type boolean; + description + "Flag to indicate if BGP neighbor as long-lived + graceful-restartis capable"; + } + leaf neighbor-long-lived-graceful-restart-time-remaining { + type uint32; + description + "Remaining long-lived graceful-restart time"; + } + leaf route-refreshes-received { + type uint32; + description + "Number of route refresh requests received"; + } + leaf route-refreshes-sent { + type uint32; + description + "Number of route refresh requests sent"; + } + leaf refresh-target-version { + type uint64; + description + "Target version for refresh update generation"; + } + leaf refresh-version { + type uint64; + description + "Version till which refresh updates have been + generated"; + } + leaf refresh-acked-version { + type uint64; + description + "Version acked by the peer for refresh updates + sent"; + } + leaf is-prefix-orf-present { + type boolean; + description + "Outbound route filter prefix ORF present"; + } + leaf orf-entries-received { + type uint32; + description + "Number of outbound route filter entries received"; + } + leaf is-default-originate-sent { + type boolean; + description + "Default origination update sent"; + } + leaf route-policy-prefix-orf { + type string; + description + "Prefix based ORF for incoming updates"; + } + leaf route-policy-in { + type string; + description + "Incoming route policy name"; + } + leaf route-policy-out { + type string; + description + "Outgoing route policy name"; + } + leaf route-policy-ret { + type string; + description + "Retention route policy name"; + } + leaf route-policy-default-originate { + type string; + description + "Default-originate route policy name"; + } + leaf is-neighbor-ebgp-without-inbound-policy { + type boolean; + description + "eBGP neighbor with no configured inbound policy"; + } + leaf is-neighbor-ebgp-without-outbound-policy { + type boolean; + description + "eBGP neighbor with no configured outbound policy"; + } + leaf is-upd-orig-loopchk-disable-set { + type boolean; + description + "Flag to indicate if update out originator + loopcheck is disabled"; + } + leaf is-as-override-set { + type boolean; + description + "Flag to indicate as override set for BGP + neighbor"; + } + leaf is-allow-as-in-set { + type boolean; + description + "Allowas-in set "; + } + leaf allow-as-in-count { + type uint32; + description + "Allowas-in count config"; + } + leaf address-family-long-lived-time { + type uint32; + description + "AF specific Long-lived-time config"; + } + leaf eo-r-received-in-read-only { + type boolean; + description + "An EoR was received while in read-only mode"; + } + leaf acked-version { + type uint64; + description + "Version mapped from acked seqNo"; + } + leaf synced-acked-version { + type uint64; + description + "Version mapped from acked seqNo that was synced + last"; + } + leaf outstanding-version { + type uint32; + description + "No. of all outstanding version objects waiting + for ack from the peer"; + } + leaf outstanding-refresh-version { + type uint32; + description + "No. of only refresh version objects waiting for + ack from the peer"; + } + leaf outstanding-version-max { + type uint32; + description + "Version mapped from acked seqNo that was synced + last"; + } + leaf is-aigp-set { + type boolean; + description + "AIGP set "; + } + leaf is-rt-present { + type boolean; + description + "RT attribute list present"; + } + leaf is-rt-present-standby { + type boolean; + description + "RT attribute list present"; + } + leaf accept-own-enabled { + type boolean; + description + "Flag to indicate if Accept-Own is enabled"; + } + leaf selective-multipath-eligible { + type boolean; + description + "Flag to indicate if selective multipath is + eligible"; + } + leaf afrpki-disable { + type boolean; + description + "Prefix validation disabled"; + } + leaf afrpki-use-validity { + type boolean; + description + "Prefix v. use validity"; + } + leaf afrpki-allow-invalid { + type boolean; + description + "Prefix v. allow invalid"; + } + leaf afrpki-signal-ibgp { + type boolean; + description + "Prefix v. signal ibgp"; + } + leaf is-advertise-permanent-network { + type boolean; + description + "Flag to indicate if advertise is permanent + network"; + } + leaf is-send-mcast-attr { + type boolean; + description + "Send Mcast Attr"; + } + leaf import-stitching { + type boolean; + description + "Import Stitching enabled"; + } + leaf import-reoriginate { + type boolean; + description + "Import Reoriginate enabled"; + } + leaf import-reoriginate-stitching { + type boolean; + description + "Import Reoriginate Stitching enabled"; + } + leaf advertise-v4-flags { + type uint32; + description + "Advertise options for VPNV4"; + } + leaf advertise-v6-flags { + type uint32; + description + "Advertise options for VPNV6"; + } + leaf advertise-local-labeled-route-unicast { + type boolean; + description + "Advertise routes with "; + } + leaf prefixes-denied-non-cumulative { + type uint32; + description + "No. of prefixes exactly denied (non cumulative)"; + } + leaf enable-label-stack { + type boolean; + description + "Flag to indicate if label stack is enabled"; + } + leaf ot-prov-track-enable { + type boolean; + description + "OT Provider Tracking enabled"; + } + leaf ot-prov-track-state { + type Bgp-track-state; + description + "OT Provider Tracking state"; + } + leaf ot-prov-track-in-gr-state { + type boolean; + description + "OT Provider Track in GR State"; + } + leaf ot-prov-track-eor-tmr-running { + type boolean; + description + "OT Provider Track EOR timer running"; + } + leaf slow-peer-state { + type Bgp-slow-peer-state; + description + "Slow Peer state"; + } + leaf slow-peer-detected { + type boolean; + description + "Detected Slow Peer"; + } + leaf slow-peer-processing { + type boolean; + description + "Processing Slow Peer"; + } + leaf slow-peer-threshold { + type uint16; + description + "Threshold for recovering a dynamic slow peer"; + } + leaf slow-peer-detection-count { + type uint32; + description + "Slow peer detection count"; + } + leaf slow-peer-recover-count { + type uint32; + description + "Slow peer recovery count"; + } + leaf slow-peer-trigger-count { + type uint32; + description + "Slow peer trigger count"; + } + leaf slow-peer-process-count { + type uint32; + description + "Slow peer process count"; + } + leaf addpath-receive-enable { + type boolean; + description + "Flag to indicate if addpath receive + functionality is enabled"; + } + leaf addpath-receive-disable { + type boolean; + description + "Flag indicates if addpath receive functionality + is disabled"; + } + leaf addpath-send-enable { + type boolean; + description + "Flag to indicate if addpath send functionality + is enabled"; + } + leaf addpath-send-disable { + type boolean; + description + "Flag indicates if addpath send functionality is + disabled"; + } + list extended-community { + description + "Extended community attribute"; + leaf entry { + type uint8; + description + "Extended community attribute"; + } + } + list extended-community-standby { + description + "Extended community attribute"; + leaf entry { + type uint8; + description + "Extended community attribute"; + } + } + } + + grouping BGP-PERF-NBR { + description + "BGP PERF NBR"; + container gshut-bandwidth-aware-last-enter-time-spec { + description + "Last Bandwidth Aware Graceful-Maintenance enter + timestamp"; + uses BGP-TIMESPEC; + } + container gshut-bandwidth-aware-last-exit-time-spec { + description + "Last Bandwidth Aware Graceful-Maintenance exit + timestamp"; + uses BGP-TIMESPEC; + } + leaf read-throttles { + type uint32; + description + "Number of partial read throttles"; + } + leaf low-throttled-read { + type uint32; + description + "Num socket reads after nbrs crossed low + threshold"; + } + leaf high-throttled-read { + type uint32; + description + "Num of socket reads after nbr crossed high + threshold"; + } + leaf time-since-last-throttled-read { + type uint32; + units "second"; + description + "Time (in secs) since last read after being + throttled"; + } + leaf read-calls-count { + type uint32; + description + "No. of calls to function to read inbound data"; + } + leaf read-messages-count { + type uint32; + description + "Number of BGP messages read"; + } + leaf data-bytes-read { + type uint32; + units "byte"; + description + "No. of bytes of data read"; + } + leaf io-read-time { + type uint32; + units "millisecond"; + description + "Time spent reading inbound data (milliseconds)"; + } + leaf write-calls-count { + type uint32; + description + "No. of calls to function to write outbound data"; + } + leaf data-bytes-written { + type uint32; + units "byte"; + description + "Number of bytes that havesent to peers"; + } + leaf io-write-time { + type uint32; + units "millisecond"; + description + "Time spent writing outbound data (milliseconds)"; + } + leaf last-sent-seq-no { + type uint32; + description + "Seq No of the last sent byte"; + } + leaf write-subgroup-calls-count { + type uint32; + description + "No. of calls to function to process sub-group + message list"; + } + leaf write-subgroup-messages-count { + type uint32; + description + "Number of sub-group msgs processed"; + } + leaf subgroup-list-time { + type uint32; + units "millisecond"; + description + "Time spent processing sub-group message list + (milliseconds)"; + } + leaf write-queue-calls-count { + type uint32; + description + "No. of calls to function to process write queue"; + } + leaf write-queue-messages-count { + type uint32; + description + "Number of write queue messages processed"; + } + leaf write-queue-time { + type uint32; + units "millisecond"; + description + "Time spent processing write queue (milliseconds)"; + } + leaf inbound-update-messages { + type uint32; + description + "Number of inbound update messages processed"; + } + leaf inbound-update-messages-time { + type uint32; + units "millisecond"; + description + "Time spent processing inbound update messages + (milliseconds)"; + } + leaf maximum-read-size { + type uint32; + units "millisecond"; + description + "Size of largest socket (milliseconds)"; + } + leaf actives { + type uint32; + description + "Number of retried Active opens for this neighbor"; + } + leaf failed-post-actives { + type uint32; + description + "Number of Active Opens that failed in the Post + Active State for this neighbor"; + } + leaf passives { + type uint32; + description + "Number of retried Passive opens for this + neighbor"; + } + leaf rejected-passives { + type uint32; + description + "Number of rejected Passive opens for this + neighbor"; + } + leaf active-collision { + type uint32; + description + "Number of Closed Active connections for this + neighbor due to collision "; + } + leaf passive-collision { + type uint32; + description + "Number of Closed Remote opens for this + neighborneighbor due to collision "; + } + leaf control-to-read-thread-trigger { + type uint32; + description + "Number of times io-control thread trigger read + thread"; + } + leaf control-to-write-thread-trigger { + type uint32; + description + "Number of times io-control thread trigger write + thread"; + } + leaf network-status { + type uint32; + description + "Socket status, TRUE if socket closed"; + } + leaf reset-flags { + type uint32; + description + "Reset flags, per thread"; + } + leaf nbr-flags { + type uint32; + description + "Nbr flags, per thread"; + } + leaf nbr-fd { + type int32; + description + "Primary FD, per nbr"; + } + leaf reset-retries { + type uint8; + description + "Reset Retries, per nbr"; + } + leaf sync-flags { + type uint32; + description + "Sync flags, per nbr"; + } + leaf nsr-oper-down-count { + type uint32; + description + "Number of times NSR scoped sync has been done"; + } + leaf last-nsr-scoped-sync { + type uint32; + description + "Last time NSR scoped syncwas done for the + neighbor"; + } + leaf gshut-bandwidth-aware-num-enters { + type uint32; + description + "Number of times neighbor entered + Graceful-Maintenance due to bandwidth-awareness"; + } + leaf gshut-bandwidth-aware-num-exits { + type uint32; + description + "Number of times neighbor exited + Graceful-Maintenance due to bandwidth-awareness"; + } + } + + grouping BGP-NOTFNTYPE { + description + "BGP NOTFNTYPE"; + leaf time-since-last-notification { + type uint32; + units "second"; + description + "Time since the last notification was sent or + received (seconds)"; + } + leaf notification-error-code { + type uint8; + description + "Error code in last notification"; + } + leaf notification-error-subcode { + type uint8; + description + "Error subcode in last notification"; + } + list last-notification-data { + description + "Message data in last notification"; + leaf entry { + type uint8; + description + "Message data in last notification"; + } + } + } + + grouping BGP-NBR-BAG { + description + "BGP Neighbor Information"; + container connection-local-address { + description + "Local address for the connection"; + uses BGP-ADDRTYPE; + } + container connection-remote-address { + description + "Remote address for the connection"; + uses BGP-ADDRTYPE; + } + container send-notification-info { + description + "Information on the last notification sent"; + uses BGP-NOTFNTYPE; + } + container received-notification-info { + description + "Information on the last notification received"; + uses BGP-NOTFNTYPE; + } + container performance-statistics { + description + "BGP neighbor performance statistics"; + uses BGP-PERF-NBR; + } + container message-statistics { + description + "BGP neighbor message statistics"; + uses BGP-NBR-MSG-STATS; + } + container tcp-init-sync-time-spec { + description + "Time When neighbor entered TCP Init Sync"; + uses BGP-TIMESPEC; + } + container tcp-init-sync-phase-two-time-spec { + description + "Time when neighbor entered TCP Init Sync Phase + Two"; + uses BGP-TIMESPEC; + } + container tcp-init-sync-done-time-spec { + description + "Time when neighbor entered TCP Init Sync Done"; + uses BGP-TIMESPEC; + } + container graceful-maintenance { + description + "Globally activated BGp neighborfor graceful + shutdown"; + uses BGP-NBR-GSHUT; + } + leaf speaker-id { + type uint8; + description + "Speaker this neighbor is allocated to"; + } + leaf description { + type string; + description + "BGP neighbor description"; + } + leaf local-as { + type uint32; + description + "Local AS number"; + } + leaf remote-as { + type uint32; + description + "Remote AS number"; + } + leaf has-internal-link { + type boolean; + description + "Internal link to neighbor"; + } + leaf is-external-neighbor-not-directly-connected { + type boolean; + description + "Flag to indicate neighbor is external and not + directly connected"; + } + leaf messages-received { + type uint32; + description + "Number of messages received"; + } + leaf messages-sent { + type uint32; + description + "Number of messages sent"; + } + leaf update-messages-in { + type uint32; + description + "No. of update msgs received"; + } + leaf update-messages-out { + type uint32; + description + "No. of update messages sent"; + } + leaf messages-queued-in { + type uint32; + description + "No. of msgs on receive queue"; + } + leaf messages-queued-out { + type uint32; + description + "No. of messages on send queue"; + } + leaf connection-established-time { + type uint32; + units "second"; + description + "Time (in secs) that the connection has been + established"; + } + leaf connection-state { + type Bgp-conn-state; + description + "State of connection"; + } + leaf previous-connection-state { + type Bgp-conn-state; + description + "Previous state of connection"; + } + leaf connection-admin-status { + type uint32; + description + "Administrative status of connection"; + } + leaf open-check-error-code { + type Bgp-open-check-err; + description + "Error code for open check failure forBGP + neighbor"; + } + leaf is-local-address-configured { + type boolean; + description + "Local address configured for the neighbor + connection"; + } + leaf connection-local-port { + type uint32; + description + "Local port for the connection"; + } + leaf connection-remote-port { + type uint32; + description + "Remote port for the connection"; + } + leaf neighbor-interface-handle { + type uint32; + description + "Interface Handle of Neighbor"; + } + leaf reset-notification-sent { + type boolean; + description + "Notification was sent during last reset"; + } + leaf is-administratively-shut-down { + type boolean; + description + "Flag to indicate if BGP neighbor is + administratively shut down"; + } + leaf is-neighbor-max-prefix-shutdown { + type boolean; + description + "Neighbor shut down because it exceeded max prfx + count"; + } + leaf is-out-of-memory-shutdown { + type boolean; + description + "Neighbor shut down during a SEVERE low memory + condition"; + } + leaf is-out-of-memory-forced-up { + type boolean; + description + "Neighbor forced up during a low memory condition"; + } + leaf is-ebgp-peer-as-league { + type boolean; + description + "EBGP peer belongs to AS League"; + } + leaf is-ebgp-peer-common-admin { + type boolean; + description + "EBGP peer with common administation"; + } + leaf ttl-security-enabled { + type boolean; + description + "TTL Security enabled"; + } + leaf suppress4-byte-as { + type boolean; + description + "Suppress 4byteas capability"; + } + leaf bfd-session-state { + type Bgp-bfd-state; + description + "BFD state for this peer"; + } + leaf bfd-session-created-state { + type Bgp-bfd-state; + description + "BFD state for this peer"; + } + leaf bfd-session-enable-mode { + type Bgp-bfd-enable-mode; + description + "BFD enable mode for this peer"; + } + leaf bfd-minintervalval { + type uint32; + description + "BFD Mininterval for this peer"; + } + leaf bfd-multiplierval { + type uint32; + description + "BFD Multiplier for this peer"; + } + leaf bfd-state-ts { + type uint64; + description + "Timestamp since when nbr is in this bfd state"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID for the neighbor"; + } + leaf negotiated-protocol-version { + type uint16; + description + "Negotiated protocol version with the BGP + neighbor"; + } + leaf ebgp-time-to-live { + type uint32; + description + "Maximum number of hops for external BGP neighbor"; + } + leaf is-ebgp-multihop-bgp-mpls-forwarding-disabled { + type boolean; + description + "If true, MPLS and NULL rewrite is disabled; if + false, it is enabled"; + } + leaf tcpmss { + type uint32; + description + "Neighbor TCP Maximum Segment size"; + } + leaf tcpmtu { + type boolean; + description + "Neighbor TCP Path Maximum Transmission Unit + Discovery option"; + } + leaf msg-log-in { + type uint32; + description + "Message in log count"; + } + leaf msg-log-out { + type uint32; + description + "Message out log count"; + } + leaf neighbor-local-as { + type uint32; + description + "Local AS configured on the neighbor"; + } + leaf local-as-no-prepend { + type boolean; + description + "Option to not prepend the Local AS to + announcements"; + } + leaf is-capability-negotiation-suppressed { + type boolean; + description + "Flag to indicate if Capability negotiation is + disabled for this BGP neighbor"; + } + leaf is-capability-negotiation-performed { + type boolean; + description + "Flag to indicate if capability negotiation is + performed for BGP neighbor"; + } + leaf is-route-refresh-capability-received { + type boolean; + description + "Flag to indicate if the neighbor supports + route-refresh was received"; + } + leaf is-route-refresh-old-capability-received { + type boolean; + description + "Flag to indicate if the neighbor supports + route-refresh old capability was received"; + } + leaf is-gr-aware { + type boolean; + description + "GR awareness received"; + } + leaf is4-byte-as-capability-received { + type boolean; + description + "Flag to ndicate if neighbor supports 4-byte AS + capability received"; + } + leaf is4-byte-as-capability-sent { + type boolean; + description + "4-byte AScapability Snt"; + } + leaf multi-protocol-capability-received { + type boolean; + description + "Flag to indicate if multi-protocol capability + has been received"; + } + leaf hold-time { + type uint16; + units "second"; + description + "Hold time (in secs) negotiated for this + connection"; + } + leaf keep-alive-time { + type uint16; + units "second"; + description + "Keepalive time (in secs) negotiated for this + connection"; + } + leaf configured-hold-time { + type uint16; + units "second"; + description + "Hold time (in secs) configured for this + connection"; + } + leaf configured-keepalive { + type uint16; + units "second"; + description + "Keepalive time (in secs) configured for this + connection"; + } + leaf configured-min-acc-hold-time { + type uint16; + units "second"; + description + "Minimum acceptable hold time from neighbor (in + secs) configured for this connection"; + } + leaf min-advertise-interval { + type uint32; + units "second"; + description + "Minimum advertisement interval, secs part"; + } + leaf min-advertise-interval-msecs { + type uint32; + units "millisecond"; + description + "Minimum advertisement interval, msecs part"; + } + leaf min-origination-interval { + type uint16; + units "second"; + description + "Minimum origination interval (in secs)"; + } + leaf connect-retry-interval { + type uint16; + units "second"; + description + "Time (in secs) for connect retry timer"; + } + leaf time-since-last-update { + type uint32; + units "second"; + description + "Time (in secs) since last update message was + received"; + } + leaf time-since-last-read { + type uint32; + units "second"; + description + "Time (in secs) since last read"; + } + leaf time-since-last-read-reset { + type uint32; + units "second"; + description + "Time (in secs) since last read before last reset"; + } + leaf time-last-cb { + type uint64; + description + "CB"; + } + leaf time-last-cb-reset { + type uint32; + description + "Last CB before reset"; + } + leaf time-last-fb { + type uint64; + description + "FB"; + } + leaf count-last-write { + type uint32; + description + "Count"; + } + leaf time-since-last-write { + type uint32; + units "second"; + description + "Time (in secs) since last write"; + } + leaf attempted-last-write-bytes { + type uint32; + description + "Attempted size of last write"; + } + leaf actual-last-write-bytes { + type uint32; + description + "Actual size of last write"; + } + leaf time-since-second-last-write { + type uint32; + units "second"; + description + "Time (in seconds) elapsed since the second last + write event"; + } + leaf attempted-second-last-write-bytes { + type uint32; + description + "Attempted size of second last write"; + } + leaf actual-second-last-write-bytes { + type uint32; + description + "Actual size of second last write"; + } + leaf time-since-last-write-reset { + type uint32; + units "second"; + description + "Time (in secs) since last write before last + reset"; + } + leaf attempted-last-write-reset-bytes { + type uint32; + description + "Attempted size of last write before reset"; + } + leaf actual-last-write-reset-bytes { + type uint32; + description + "Actual size of last write before reset"; + } + leaf time-since-second-last-write-reset { + type uint32; + units "second"; + description + "Time (in secs) since last write before last + reset"; + } + leaf attempted-second-last-write-reset-bytes { + type uint32; + description + "Attempted size of second last write before reset"; + } + leaf actual-second-last-write-reset-bytes { + type uint32; + description + "Actual size of second last write before reset"; + } + leaf last-write-event { + type uint32; + units "second"; + description + "Time (in secs) since last write thread event"; + } + leaf second-last-write-event { + type uint32; + units "second"; + description + "Time (in secs) since second last write thread + event"; + } + leaf last-k-aexpiry-reset { + type uint32; + units "second"; + description + "Time (in secs) since last KA timer expiry before + reset"; + } + leaf second-last-k-aexpiry-reset { + type uint32; + units "second"; + description + "Time (in secs) since second last KA timer expiry + before reset"; + } + leaf last-k-anotsent-reset { + type uint32; + units "second"; + description + "Duration (in secs) since last time that KA was + not sent before reset"; + } + leaf last-k-aerror-reset { + type uint32; + units "second"; + description + "Duration (in secs) since last time that an error + was encountered after KA expiry"; + } + leaf last-k-astart-reset { + type uint32; + units "second"; + description + "Time (in secs) since the last KA timer start + before reset"; + } + leaf second-last-k-astart-reset { + type uint32; + units "second"; + description + "Time (in secs) since the second last KA timer + start before reset"; + } + leaf connection-up-count { + type uint32; + description + "Number of times the connection was established"; + } + leaf connection-down-count { + type uint32; + description + "Number of times connection was dropped"; + } + leaf time-since-connection-last-dropped { + type uint32; + units "second"; + description + "Time since the connection last went down + (seconds)"; + } + leaf reset-reason { + type Bgp-reset-reason-index; + description + "Reason for last connection reset"; + } + leaf peer-reset-reason { + type Bgp-peer-reset-reason-index; + description + "Reason for last peer close event"; + } + leaf peer-error-code { + type uint32; + description + "If peer closed, error received from transport"; + } + leaf last-notify-error-code { + type uint8; + description + "Code for the last error notification seen on the + connection"; + } + leaf last-notify-error-subcode { + type uint8; + description + "Error subcode of the last error notification + seen on the connection"; + } + leaf error-notifies-received { + type uint32; + description + "Number of error notifications received on the + connection"; + } + leaf error-notifies-sent { + type uint32; + description + "Number of error notifications sent on the + connection"; + } + leaf remote-as-number { + type uint32; + description + "Remote AS number of BGP neighbor"; + } + leaf dmz-link-bandwidth { + type uint32; + description + "Bandwidth of link to single-hop eBGP peer"; + } + leaf ebgp-recv-dmz { + type boolean; + description + "Receive Bandwidth of link to single-hop eBGP + peer"; + } + leaf ebgp-send-dmz-mode { + type Bgp-ebgp-send-dmz-enable-mode; + description + "Ebgp send dmz link bw mode"; + } + leaf tos-type { + type uint8; + description + "Precedence or DSCP type"; + } + leaf tos-value { + type uint8; + description + "Precedence or DSCP value"; + } + leaf tcp-session-open-mode { + type Bgp-tcp-mode; + description + "The TCP mode to be used to set up BGP session + with the neighbor"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf standby-rp { + type boolean; + description + "Standby RP socket inited for Active Open"; + } + leaf nsr-enabled { + type boolean; + description + "Neighbor supports NSR"; + } + leaf graceful-restart-enabled-nbr { + type boolean; + description + "Neighbor supports graceful-restart"; + } + leaf graceful-restart-helper-mode { + type boolean; + description + "Neighbor supports graceful-restart in + helper-mode"; + } + leaf gr-restart-time { + type uint32; + units "second"; + description + "Neighbor restart time (in seconds)"; + } + leaf gr-stale-path-time { + type uint32; + units "second"; + description + "Neighbor stale-path time (in seconds)"; + } + leaf fssn-offset { + type uint32; + description + "First standby SeqNo offset"; + } + leaf fpbsn-offset { + type uint32; + description + "First standby PDU boundary SeqNo offset"; + } + leaf last-ackd-seq-no { + type uint32; + description + "SeqNo of the last Ackd byte"; + } + leaf bytes-written { + type uint32; + units "byte"; + description + "Total bytes written by write thread"; + } + leaf bytes-read { + type uint32; + units "byte"; + description + "Total bytes read"; + } + leaf socket-read-bytes { + type uint32; + units "byte"; + description + "Total read bytes value insocket-lib"; + } + leaf is-read-disabled { + type boolean; + description + "If true, socket read isdisabled"; + } + leaf update-bytes-read { + type uint32; + units "byte"; + description + "Total number of bytes readcorresponding to + update messages"; + } + leaf nsr-state { + type Bgp-sync-nbr-nsr-state; + description + "NSR state"; + } + leaf is-passive-close { + type boolean; + description + "If true, active socket canbe closed if passive + openis received for a GRcapable neighbor"; + } + leaf nbr-enforce-first-as { + type boolean; + description + "Neighbor enforce first AS"; + } + leaf active-bmp-servers { + type uint8; + description + "BMP Servers to which the neighbor sends logs"; + } + leaf nbr-cluster-id { + type uint32; + description + "Cluster id"; + } + leaf nbr-in-cluster { + type uint8; + description + "Type of cluster_id:undefined/number/Ip address"; + } + leaf ignore-connected { + type boolean; + description + "If true, the VPN client isan IBGP CE peer"; + } + leaf internal-vpn-client { + type boolean; + description + "If true, don't do NHconnected check for nbr"; + } + leaf io-armed { + type boolean; + description + "If true, socket has beenauto-armed for io + control"; + } + leaf read-armed { + type boolean; + description + "If true, socket has beenauto-armed for read"; + } + leaf write-armed { + type boolean; + description + "If true, socket has beenauto-armed for write"; + } + leaf discard-data-bytes { + type uint32; + units "byte"; + description + "Remaining discard data (bytes) on Standby"; + } + leaf local-as-replace-as { + type boolean; + description + "Local AS Replace-AS option"; + } + leaf local-as-dual-as { + type boolean; + description + "Local AS Dual-AS option"; + } + leaf local-as-dual-as-mode-native { + type boolean; + description + "Applies only if Local AS Dual-AS option is + enabled. Indicates if Dual-AS mode is native."; + } + leaf egress-peer-engineering-enabled { + type boolean; + description + "Indicates if Egress Peer Engineering is enabled"; + } + leaf discard-as4-path { + type uint32; + description + "Discard AS4_PATH in case there is a discrepancy + in merging AS_PATH and AS4_PATH,retain ASPATH"; + } + leaf rpki-disable { + type boolean; + description + "Prefix validation disabled"; + } + leaf rpki-use-validity { + type boolean; + description + "Prefix v. use validity"; + } + leaf rpki-allow-invalid { + type boolean; + description + "Prefix v. allow invalid"; + } + leaf rpki-signal-ibgp { + type boolean; + description + "Prefix v. signal ibgp"; + } + leaf dynamic-neighbor { + type boolean; + description + "Flag to indicate if the neighbor specifically + defining the neighborsis a dynamic neighbor"; + } + leaf merge-inbound-safi1and4-updates { + type boolean; + description + "Merge SAFI-1 and SAFI-4 updates from neighbor"; + } + leaf is-capability-enhe-suppressed { + type boolean; + description + "Flag to indicate if Capability + extended-nexthop-encoding is disabled for this + BGP neighbor"; + } + leaf delete-time-remaining { + type uint32; + units "second"; + description + "Time (in secs) remaining for deletion"; + } + leaf sn-bfd-discriminator { + type uint32; + description + "Local Discriminator for the associated BFD + session"; + } + leaf log-up-down-configured { + type boolean; + description + "Flag to indicate if the log neighbor Up/Down is + specifically enabled"; + } + leaf log-up-down-disabled { + type boolean; + description + "Flag to indicate if the log neighbor Up/Down is + specifically disabled"; + } + leaf bmp-server-id { + type int32; + description + "BMP Server id"; + } + leaf last-bgp-received-message { + type Bgp-message; + description + "Last BGP message received from the neighbor"; + } + list af-data { + key "af-name"; + max-elements "25"; + description + "Address family specific neighbor data"; + uses BGP-NBR-AF; + } + } + + grouping BGP-PATH-MULTI { + description + "BGP path set"; + list paths { + description + "BGP paths information"; + uses BGP-PATH-BAG; + } + list adv-path-info { + description + "Net Advertized Paths"; + uses BGP-PATH-ADV-BAG; + } + } + + grouping BGP-ORR-GROUP-BAG { + description + "BGP ORR Group Information"; + container orr-root-address { + description + "ORR Root Address"; + uses BGP-ADDRTYPE; + } + container orr-sec-root-address { + description + "ORR Sec Root Address"; + uses BGP-ADDRTYPE; + } + container orr-ter-root-address { + description + "ORR ter Root Address"; + uses BGP-ADDRTYPE; + } + leaf orr-group-name { + type string; + description + "ORR Group Name"; + } + leaf is-orr-root-address-configured { + type boolean; + description + "ORR Root address configured"; + } + leaf is-orr-sec-root-address-configured { + type boolean; + description + "ORR Sec Root address configured"; + } + leaf is-orr-ter-root-address-configured { + type boolean; + description + "ORR Ter Root address configured"; + } + leaf orr-neighbor-count { + type uint32; + description + "ORR neighbor count"; + } + leaf orr-index { + type uint32; + description + "ORR index"; + } + leaf orr-tableid { + type uint32; + description + "ORR Group tableid"; + } + } + + grouping BGP-NBR-ADV-CNT-BAG { + description + "BGP Neighbor adv cnt bag"; + leaf max-prefix-advertisedcount { + type uint32; + description + "Number of prefixes advertsied to neighbor"; + } + } + + grouping BGP-RECENT-NET-BAG { + description + "BGP Recent Net"; + container bgp-prefix { + description + "BGP prefix"; + uses BGP-PREFIXTYPE; + } + leaf route-distinguisher { + type xr:Route-dist; + description + "BGP path Route Distinguisher"; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + } + + grouping BGP-MVPN-EXTCOMM { + description + "MVPN RT list entry"; + list bgp-mvpn-extcomm { + description + "Next entry in prefix list"; + leaf ext-comm-value { + type yang:hex-string; + description + "Extended community value"; + } + leaf ext-comm-is-stale { + type boolean; + description + "Extended community is stale"; + } + } + } + + grouping BGP-MVPN-RT-LIST-BAG { + description + "BGP MVPN RT list bag"; + container mvpn-extcomm-list { + description + "Prefix list"; + uses BGP-MVPN-EXTCOMM; + } + leaf af-name { + type Bgp-afi; + description + "Address family identfier"; + } + leaf vrf-ri-exist { + type boolean; + description + "Is Vrf ri existing"; + } + leaf router-address { + type inet:ipv4-address; + description + "PE address"; + } + leaf vrf-index { + type uint16; + description + "Vrf index"; + } + leaf seg-nh-exist { + type boolean; + description + "Is segmented nh existing"; + } + leaf seg-nh-address { + type inet:ipv4-address; + description + "Segmented nexthop"; + } + leaf source-as-exist { + type boolean; + description + "Is source as exising"; + } + leaf source-as { + type uint32; + description + "Source As number"; + } + leaf vrf-ri-exist-m { + type boolean; + description + "Is Vrf ri existing for mcast"; + } + leaf router-address-m { + type inet:ipv4-address; + description + "PE address for mcast"; + } + leaf vrf-index-m { + type uint16; + description + "Vrf index for mcast"; + } + leaf seg-nh-exist-m { + type boolean; + description + "Is segmented nh existing for mcast"; + } + leaf seg-nh-address-m { + type inet:ipv4-address; + description + "Segmented nexthop for mcast"; + } + leaf source-as-exist-m { + type boolean; + description + "Is source as exising for mcast"; + } + leaf source-as-m { + type uint32; + description + "Source As number for mcast"; + } + leaf connector-src-exist { + type boolean; + description + "Is Connector src existing"; + } + leaf connector-src { + type inet:ipv4-address; + description + "Connector src"; + } + } + + grouping BGP-PATH-ELEM-BAG { + description + "BGP path element"; + container pelem-path-nexthop { + description + "Path nexthop address"; + uses BGP-ADDRTYPE; + } + container nh-tunnel { + description + "NH tunnel information"; + uses BGP-TE-TUNNEL; + } + container pelem-path-neighbor-addr { + description + "Path neighbor address"; + uses BGP-ADDRTYPE; + } + leaf pelem-path-id { + type uint32; + description + "Local Path ID"; + } + leaf pelem-version { + type uint64; + description + "Version"; + } + leaf pelem-flags { + type uint32; + description + "Flags"; + } + leaf pelem-gw-metric { + type uint32; + description + "Gateway metric"; + } + leaf pelem-path-flags { + type uint64; + description + "Path flags"; + } + leaf pelem-path-peer-path-id { + type uint32; + description + "Path peer path ID"; + } + leaf pelem-table-attr-version { + type uint64; + description + "Table Attr version"; + } + leaf pelem-path-table-attr-version { + type uint64; + description + "Path Table Attribute version"; + } + leaf pelem-no-bestpath-table-attr-version { + type uint64; + description + "BGP network no best path tableattribute version + number"; + } + leaf pelem-no-addpath-table-attr-version { + type uint64; + description + "The version of the no addpath table attribute"; + } + leaf is-perm-path-pelem { + type boolean; + description + "Pelem for permanent path"; + } + } + + grouping BGP-NET-BAG { + description + "BGP network"; + container bgp-prefix { + description + "BGP prefix"; + uses BGP-PREFIXTYPE; + } + container version-timestamp { + description + "BGP network version timestamp"; + uses BGP-TIMESPEC; + } + container version-age { + description + "BGP network age of version"; + uses BGP-TIMESPEC; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf process-instance-id { + type uint8; + description + "ID of the BGP process instance"; + } + leaf has-inconsistent-paths { + type boolean; + description + "Flag to indicate if inconsistent paths attached + to net"; + } + leaf is-net-aggregation-suppressed { + type boolean; + description + "Net suppressed due to aggregation"; + } + leaf is-net-aggregate-contributor { + type boolean; + description + "Net is an aggregate contributor"; + } + leaf is-net-ldp-signaled { + type boolean; + description + "L2VPN Net LDP signaled aggregation"; + } + leaf table-version { + type uint64; + description + "Table version # for net"; + } + leaf table-brib-version { + type uint64; + description + "Table version # for updates"; + } + leaf advertisedto-pe { + type boolean; + description + "Net could be advertised to PE peers"; + } + leaf has-local-label { + type boolean; + description + "Flag to indicate if local BGP labelassociated + with the net"; + } + leaf net-local-label { + type uint32; + description + "Local label"; + } + leaf net-label-mode { + type uint32; + description + "Label mode"; + } + leaf net-local-label-rewrite { + type boolean; + description + "Net label has rewrite"; + } + leaf net-local-label-srgb { + type boolean; + description + "Net label allocated fromSegment routing global + block"; + } + leaf has-lbl-retained { + type boolean; + description + "Flag to indicate if BGP network labels are + retained "; + } + leaf route-distinguisher { + type xr:Route-dist; + description + "BGP network Route Distinguisher"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf net-flags { + type uint32; + description + "Flags associated with net"; + } + leaf net-extended-flags { + type uint32; + description + "BGP network flags for extendedcommunity"; + } + leaf net-multipath { + type boolean; + description + "Net has multipaths"; + } + leaf net-eibgp-multipath { + type boolean; + description + "Net has EIBGP multipaths"; + } + leaf net-backup-available { + type boolean; + description + "Net has backup path"; + } + leaf net-backup-label-rewrite-available { + type boolean; + description + "Net has label rewrite for backup path"; + } + leaf rib-failed { + type boolean; + description + "RIB install failed"; + } + leaf gateway-array { + type uint32; + description + "ID for the gateway array"; + } + leaf resilient-nexthop-set { + type uint32; + description + "ID for the Resilient per CEnexthop set"; + } + leaf is-permanent-network { + type boolean; + description + "Flag that indicates that the networkhas + permanent path"; + } + leaf num-of-path { + type uint32; + description + "Number of path for this net"; + } + leaf version { + type uint64; + description + "The version of the the radix tree"; + } + leaf bit { + type uint16; + description + "Bit"; + } + leaf flags { + type uint8; + description + "Flags"; + } + leaf has-srv6-sid-allocated { + type boolean; + description + "Net has SRv6 SID allocated"; + } + leaf srv6-sid-address { + type Ipv6-address; + description + "SRv6 SID address value"; + } + leaf srv6-sid-address-len { + type uint32; + description + "SRv6 SID address Length"; + } + list local-peers-advertised-to { + description + "Local peers that this prefix has been advertised + to"; + uses BGP-ADVINFO-TYPE; + } + list pe-peers-advertised-to { + description + "PE peers that this prefix has been advertised to"; + uses BGP-ADVINFO-TYPE; + } + list best-path-orrbitfield { + description + "ORR Best path Bitfields"; + uses BGP-ADVINFO-TYPE; + } + list add-path-orrbitfield { + description + "ORR Add path Bitfields"; + uses BGP-ADVINFO-TYPE; + } + list local-process-instance-path { + description + "Local (to process instance) paths for this net "; + uses BGP-PATH-BAG; + } + list active-process-instance-path { + description + "Path for this net from BGP active instance + process"; + uses BGP-PATH-BAG; + } + list local-path-element { + description + "BGP network elements list of thelocal path"; + uses BGP-PATH-ELEM-BAG; + } + list active-path-element { + description + "Path element list received from Active inst"; + uses BGP-PATH-ELEM-BAG; + } + } + + grouping BGP-UPDGEN-FILTERGRP-BAG { + description + "BGP Update generation Filter-group information"; + leaf process-id { + type uint32; + description + "ProcessID"; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-group-af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf update-filter-group-index { + type uint32; + description + "Filter-group index"; + } + leaf parent-filter-group-index { + type uint32; + description + "In refresh sub group points to the + correspondingfilter group in parent subgroup + index"; + } + leaf sub-group-index-xr { + type uint32; + description + "Index for the sub-group used when accessing bits"; + } + leaf sub-group-id-xr { + type uint32; + description + "Sub-group identifier"; + } + leaf parent-sub-group-index { + type uint32; + description + "Index for the subgroup of parent"; + } + leaf parent-sub-group-id { + type uint32; + description + "Parent Sub-group identifier"; + } + leaf update-group-index-xr { + type uint32; + description + "BGP update generation index of update-group"; + } + leaf neighbor-count { + type uint32; + description + "Number of neighbors in this BGP filter-group"; + } + } + + grouping BGP-BMP-CONVERGENCE-PER-SERVER { + description + "BMP Per server convergence information"; + leaf bmp-server-name { + type string; + description + "BMP server name"; + } + leaf bmpq-size { + type uint32; + description + "Number of elements in the write Q"; + } + leaf update-info-version { + type uint64; + description + "Update information version"; + } + leaf server-admin-down { + type boolean; + description + "Server is admin shutdown"; + } + leaf server-down { + type boolean; + description + "Server is down"; + } + } + + grouping BGP-BMP-CONVERGENCE-BAG { + description + "BGP BMP Convergence information"; + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf has-converged { + type boolean; + description + "Convergence has been reached"; + } + leaf is-table-copy-pending { + type boolean; + description + "Is table copy pending?"; + } + leaf is-update-gen-pending { + type boolean; + description + "Is update gen pending?"; + } + leaf table-version { + type uint64; + description + "BMP table version"; + } + list bmp-per-server-information { + description + "BMP per server convergence information"; + uses BGP-BMP-CONVERGENCE-PER-SERVER; + } + } + + grouping BGP-UPDGEN-UPDGRP-BAG { + description + "BGP Update generation Update-group information"; + container last-update-timer-start-timestamp { + description + "Start timer update for the last update"; + uses BGP-TIMESPEC; + } + container last-update-timer-stop-timestamp { + description + "Timer stop time for the last update"; + uses BGP-TIMESPEC; + } + container last-update-timer-expiry-timestamp { + description + "Timer expiry time update for last update"; + uses BGP-TIMESPEC; + } + container last-update-timer-remaining-value { + description + "Update timer remaining time"; + uses BGP-TIMESPEC; + } + container last-update-timer-delay-value { + description + "Number of timer delayed for the last update"; + uses BGP-TIMESPEC; + } + container update-statistics { + description + "BGP update-group update statistics"; + uses BGP-UPDGEN-STATS-BAG; + } + leaf process-id { + type uint32; + description + "ProcessID"; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-group-af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf neighbor-session-af-name { + type uint8; + description + "Neighbor session address family"; + } + leaf update-group-index-xr { + type uint32; + description + "Index of the BGP update group"; + } + leaf update-group-flags2 { + type uint32; + description + "Update-group internal flags2"; + } + leaf update-out-queue-messages { + type uint32; + description + "OutQueue Messages"; + } + leaf update-out-queue-size { + type uint32; + description + "OutQueue Size"; + } + leaf update-sub-group-count { + type uint32; + description + "Sub-group count"; + } + leaf sub-group-throttled-count { + type uint32; + description + "Throttled sub-group count"; + } + leaf refresh-sub-group-count { + type uint32; + description + "Number of temporary refresh sub groups"; + } + leaf refresh-sub-group-throttled-count { + type uint32; + description + "Throttled refresh sub-group count"; + } + leaf filter-group-count { + type uint32; + description + "Number of filter groups in BGP update generation"; + } + leaf neighbor-count { + type uint32; + description + "Number of neighbors present in BGp update + generation"; + } + leaf neighbor-leaving-count { + type uint32; + description + "Count of neighbors leaving the update-group"; + } + leaf update-generation-recovery-pending { + type boolean; + description + "Flag to indicate if update generation recovery + is pending"; + } + leaf last-update-timer-expiry-age { + type uint32; + description + "Time since last update timer expiry event"; + } + leaf is-update-timer-running { + type boolean; + description + "Flag to indicate if timer is running"; + } + leaf perm-pelem-encountered { + type uint32; + description + "Count of Perm Pelems seen by updgen"; + } + leaf perm-pelem-allowed { + type uint32; + description + "Count of Perm Pelems allowed by updgen"; + } + leaf perm-pelem-not-allowed { + type uint32; + description + "Count of Perm Pelems not allowed by updgen"; + } + leaf perm-pelem-exp-wdr { + type uint32; + description + "Count of Perm Pelems explicitly wdrn by updgen"; + } + leaf perm-pelem-spur-wdr { + type uint32; + description + "Count of Perm Pelems Spurious withdraws by + updgen"; + } + leaf is-permanent { + type boolean; + description + "Permanent UG check"; + } + } + + grouping BGP-BMP-PATH-BAG { + description + "BMP Table path details"; + container neighbor-address { + description + "BGP monitoring protocolip address of neighbor"; + uses BGP-ADDRTYPE; + } + container next-hop-address { + description + "Nexthop address"; + uses BGP-ADDRTYPE; + } + container next-hop { + description + "BGP Next hop information"; + uses BGP-ADDRTYPE; + } + container attributes-after-policy-in { + description + "Attributes after inbound policy applied."; + uses BGP-ATTR; + } + container next-hop-ll-address { + description + "Nexthop link-local address"; + uses BGP-ADDRTYPE; + } + leaf neighbor-addpath-rx-enabled { + type boolean; + description + "Add-path receive enabled on the neighbor"; + } + leaf bmp-path-flags { + type uint32; + description + "Flags associated with path"; + } + leaf bmp-path-adv-bit-map { + type uint16; + description + "Path's Adv bit map"; + } + leaf bmp-path-snd-bit-map { + type uint16; + description + "Path's pending snd bit map"; + } + leaf bmp-nbr-bit-map { + type uint32; + description + "Paths Nbr bmp bit map"; + } + leaf local-path { + type boolean; + description + "Is path originated locally?"; + } + leaf received-path-id { + type uint32; + description + "Received path id"; + } + leaf local-preference { + type uint32; + description + "Local preference value"; + } + leaf bpath-pointer { + type uint64; + description + "BGP Path pointer"; + } + leaf process-instance-id { + type uint8; + description + "BGP Process instance ID"; + } + leaf advertisedto-pe { + type boolean; + description + "Net could be advertised "; + } + leaf is-path-valid { + type boolean; + description + "Flag to indicate if BGP path attributes are + usable"; + } + leaf is-path-locally-sourced { + type boolean; + description + "Path sourced locally"; + } + leaf is-path-local-aggregate { + type boolean; + description + "Path is a locally created aggregate"; + } + leaf is-path-from-network-command { + type boolean; + description + "Path sourced by network command"; + } + leaf is-path-from-redistribute-command { + type boolean; + description + "Path sourced by redistribute command"; + } + leaf is-path-imported { + type boolean; + description + "Path is imported"; + } + leaf is-permanent-path { + type boolean; + description + "Path is of type Permanent path"; + } + leaf is-internal-path { + type boolean; + description + "Received over an internal link"; + } + leaf is-atomic-aggregate-present { + type boolean; + description + "Flag to indicate if Atomic aggregate attribute + present"; + } + leaf is-best-path { + type boolean; + description + "Best available path"; + } + leaf is-as-best { + type boolean; + description + "Best available path within AS"; + } + leaf is-path-multipath { + type boolean; + description + "Path is one of multipath best routes"; + } + leaf is-path-best-external { + type boolean; + description + "Path is a best external path"; + } + leaf is-path-backup { + type boolean; + description + "Path is a backup path "; + } + leaf is-path-backup-protect-multipath { + type boolean; + description + "Path is a backup path to protect multipaths"; + } + leaf is-path-imp-candidate { + type boolean; + description + "Path is a candidate for multipath import"; + } + leaf is-path-vpn-only { + type boolean; + description + "Path is not in the vrf"; + } + leaf local-nh { + type boolean; + description + "Path has local nexthop"; + } + leaf labeled-unicast-safi-path { + type boolean; + description + "Path was learnt by labeled-unicast SAFI"; + } + leaf path-flags { + type uint64; + description + "Flags associated with path"; + } + leaf path-flags2 { + type uint32; + description + "Flags2 associated with path"; + } + leaf path-import-flags { + type uint32; + description + "Flags to indicate for import processing in BGP"; + } + leaf is-path-from-confederation-peer { + type boolean; + description + "Path received from confederation peer"; + } + leaf local-path-id { + type uint32; + description + "Local path ID"; + } + leaf path-table-version { + type uint64; + description + "Table version # for pelem"; + } + leaf neighbor-router-id { + type inet:ipv4-address; + description + "Router ID of the neighbor for the path"; + } + leaf nexthop-interface-handle { + type uint32; + description + "Interface Handle of Nexthop"; + } + leaf accept-own-path { + type boolean; + description + "Accept Own"; + } + leaf accept-own-self-originated-path { + type boolean; + description + "Flag to indicate if BGP path is Accept-Own + community and self-originated"; + } + leaf is-path-not-advertised { + type boolean; + description + "Flag to indicate if path is not advertised to + any peer"; + } + leaf is-path-not-advertised-to-ebgp { + type boolean; + description + "Not advertised to EBGPs"; + } + leaf is-path-advertised-local-as-only { + type boolean; + description + "Not advertised outside local AS"; + } + leaf next-hop-route-distinguisher-valid { + type boolean; + description + "Route Distinguisher of the nexthop is valid"; + } + leaf next-hop-route-distinguisher { + type xr:Route-dist; + description + "Route Distinguisher of the nexthop"; + } + leaf next-hop-ll-route-distinguisher-valid { + type boolean; + description + "Route Distinguisher of the link-local nexthop is + valid"; + } + leaf next-hop-ll-route-distinguisher { + type xr:Route-dist; + description + "Route Distinguisher of the link-local nexthop"; + } + list received-label { + description + "Set of received label stack"; + leaf entry { + type uint32; + description + "Set of received label stack"; + } + } + list local-peers-advertised-to { + description + "Local peers that this prefix has been advertised + to"; + uses BGP-ADVINFO-TYPE; + } + list pe-peers-advertised-to { + description + "PE peers that this prefix has been advertised to"; + uses BGP-ADVINFO-TYPE; + } + list best-path-orrbitfield { + description + "ORR Best path Bitfields"; + uses BGP-ADVINFO-TYPE; + } + list add-path-orrbitfield { + description + "ORR Add path Bitfields"; + uses BGP-ADVINFO-TYPE; + } + } + + grouping BGP-BMP-NET-BAG { + description + "BMP Table net details"; + container bgp-prefix { + description + "BGP prefix"; + uses BGP-PREFIXTYPE; + } + container version-timestamp { + description + "Net Version bump timestamp"; + uses BGP-TIMESPEC; + } + container version-age { + description + "Net Version bump age"; + uses BGP-TIMESPEC; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf route-distinguisher { + type xr:Route-dist; + description + "Route Distinguisher"; + } + leaf rd-version { + type uint64; + description + "Route Distinguisher Version"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf bmp-net-flags { + type uint32; + description + "Flags associated with net"; + } + leaf net-extended-flags { + type uint32; + description + "BGP network flags for extended"; + } + leaf bmp-net-version { + type uint64; + description + "Net's version"; + } + leaf num-of-path { + type uint32; + description + "Number of path for the net"; + } + leaf has-local-label { + type boolean; + description + "Flag to indicate if local label is present in + netbag"; + } + leaf net-local-label { + type uint32; + description + "Local label"; + } + leaf bmp-mode { + type uint8; + description + "BMP Route Monitoring Mode"; + } + list bmp-path { + description + "List of paths under the BMP net"; + uses BGP-BMP-PATH-BAG; + } + } + + grouping BGP-RTSET { + description + "BGP RT-set"; + leaf rt-set-len { + type uint8; + units "byte"; + description + "Length in bytes of set of route targets"; + } + leaf rt-set-id { + type uint32; + description + "Identifier of the rtset"; + } + leaf rt-set-net-count { + type uint32; + description + "Count of nets with paths with the rtset"; + } + list rt-set { + description + "Set of route targets"; + leaf entry { + type uint8; + description + "Set of route targets"; + } + } + } + + grouping BGP-RTSET-BAG { + description + "BGP RT-set information"; + container route-target-set { + description + "BGP route target set"; + uses BGP-RTSET; + } + } + + grouping BGP-INT-NH-GW { + description + "BGP Internal Nexthop Gateway Information"; + leaf gateway-flags { + type uint32; + description + "Flags in BGP gateway next hop"; + } + leaf registration-type { + type Bgp-nh-validate; + description + "Registration type for next hop"; + } + leaf registration-since { + type uint32; + description + "Time since registration"; + } + } + + grouping BGP-INT-NH { + description + "BGP Internal Nexthop information"; + container nexthop-address { + description + "IP address of the next hop in BGP"; + uses BGP-ADDRTYPE; + } + leaf nexthop-id { + type uint32; + description + "Comm librray ID"; + } + leaf nexthop-version { + type uint64; + description + "Table version"; + } + leaf nexthop-flags { + type uint32; + description + "Flags associated with the next hop address in + BGP"; + } + leaf nexthop-if-handle { + type uint32; + description + "Interface handle associated with the next hop + address in BGP"; + } + leaf nexthop-af-user-bits { + type uint32; + description + "Bitmask indicating the AFs which share the + nexthop"; + } + leaf nexthop-label { + type uint32; + description + "Label associated with the next hop address"; + } + leaf gateway-flags { + type uint32; + description + "BGP nexthop gateway flags"; + } + list nexthop-metrice { + description + "Metrices associated with the next hop address in + + BGP"; + leaf entry { + type uint32; + description + "Metrices associated with the next hop address in + + BGP"; + } + } + list nexthop-refcount { + description + "reference counts for the next hop"; + leaf entry { + type uint32; + description + "reference counts for the next hop"; + } + } + list nexthop-encap-type { + description + "Encap types associated with the next hop address + + in BGP"; + leaf entry { + type uint16; + description + "Encap types associated with the next hop address + + in BGP"; + } + } + list nexthop-gateway-internal-info { + description + "Internal nexthop Gateway info"; + uses BGP-INT-NH-GW; + } + } + + grouping BGP-NEXTHOP-GW-INFO { + description + "BGP Nexthop GW info"; + container nexthop-route { + description + "Route resolving the nexthop"; + uses BGP-ADDRTYPE; + } + leaf nexthop-route-prefix-length { + type uint8; + description + "Prefix length of the route resolving the nexthop"; + } + leaf nexthop-route-protocol { + type string; + description + "Protocol that resolves the route to the nexthop"; + } + leaf nexthop-route-path-count { + type uint32; + description + "Count of paths in the resolving route"; + } + leaf nexthop-af-invalid-bits { + type uint16; + description + "Bitmask indicating the address-family which have + been invalidated for the nexthop"; + } + leaf nexthop-status { + type uint8; + description + "Status of the next hop address"; + } + leaf nexthop-tableid { + type uint64; + description + "BGP gateway neighbor route table id"; + } + leaf nexthop-metric { + type uint32; + description + "IGP metric for nexthop"; + } + leaf orrafi-used-bits { + type uint32; + description + "ORR afi bits"; + } + leaf last-event-type { + type Bgp-nh-event; + description + "Last nexthop event type"; + } + leaf last-update-type { + type Bgp-nh-update; + description + "Last nexthop update type"; + } + leaf critical-events { + type uint32; + description + "Count of critical events received from RIB"; + } + leaf non-critical-events { + type uint32; + description + "Count of non-critical events received from RIB"; + } + leaf last-event-since { + type uint32; + description + "Time since the last event sent to or received + from RIB"; + } + leaf last-rib-update { + type uint32; + description + "Time since the last rib update happened"; + } + leaf nexthop-mpls-enabled { + type boolean; + description + "TRUE if MPLS is configured for IAS/CsC + application"; + } + leaf nexthop-mpls-interfaces { + type uint32; + description + "Count of interfaces on which MPLS is enabled"; + } + leaf nexthop-mpls-label { + type uint32; + description + "Local label allocated for IAS/CsC application"; + } + list nexthop-route-path { + description + "Nexthop paths of the resolving route"; + uses BGP-ADDRTYPE; + } + } + + grouping BGP-NEXTHOP-BAG { + description + "BGP Nexthop info"; + container nexthop-address { + description + "IP address of nexthop in BGP"; + uses BGP-ADDRTYPE; + } + container nh-tunnel { + description + "NH tunnel information"; + uses BGP-TE-TUNNEL; + } + container nexthop-internal-info { + description + "Internal nexthop info"; + uses BGP-INT-NH; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf rib-nexthop-id { + type uint32; + description + "RIB Nexthop Id"; + } + leaf nexthop-pending-registration { + type uint8; + description + "Nexthop registration is pending"; + } + leaf nexthop-reference-count { + type uint32; + description + "Count of neighbors/prefixes referencing this + nexthop"; + } + leaf nh-reference-count-total { + type uint32; + description + "Count of neighbors/prefixes referencing this + nexthop (AFs)"; + } + leaf nh-first-hop-if-handle { + type xr:Interface-name; + description + "First-hop interface handle"; + } + leaf nexthop-aigp-metric { + type uint32; + description + "AIGP metrice of nexthop"; + } + leaf nexthop-gateway-reachable { + type boolean; + description + "Flag to indicate if Gateway is reachable"; + } + leaf nexthop-gateway-prefix-connected { + type boolean; + description + "Flag to indicate if Gateway resolved through + Connected route"; + } + leaf nexthop-gateway-prefix-length { + type uint32; + description + "Gateway prefix length"; + } + leaf nexthop-hash-slot { + type uint32; + description + "Sync Hash slot of Nexthop"; + } + list nexthop-gateway-info { + description + "Gateway related info, including Optimal Route + Reflector Gateways"; + uses BGP-NEXTHOP-GW-INFO; + } + list neighbor-address { + description + "Neighbor Address List"; + uses BGP-ADDRTYPE; + } + } + + grouping BGP-NEXTHOP-PERF-VRF-AF-BAG { + description + "BGP nexthop statistics for a VRF AF"; + leaf critical-notf-count { + type uint32; + description + "Number of critical event notifications from RIB"; + } + leaf noncritical-notf-count { + type uint32; + description + "Number of non-critical event notifications from + RIB"; + } + leaf last-notf-bestpath-deletes { + type uint32; + description + "Number of bestpath deletes due to last + notification"; + } + leaf last-notf-bestpath-changes { + type uint32; + description + "Number of bestpath changes due to last + notification"; + } + leaf nh-sync-reg-calls { + type uint32; + description + "NH sync register calls"; + } + leaf nha-sync-reg-calls { + type uint32; + description + "NH async register calls"; + } + leaf nha-sync-un-reg-calls { + type uint32; + description + "NH async unregister calls"; + } + leaf nh-pending-registrations { + type uint32; + description + "NH Registration List Count"; + } + leaf nh-peak-registrations { + type uint32; + description + "NH Registration List Count Peak"; + } + leaf nh-batch-finish-calls { + type uint32; + description + "Count of the batch finish calls for next hop"; + } + leaf nh-flush-timer-calls { + type uint32; + description + "Count of the flush timer calls for net hop"; + } + leaf nh-last-sync-reg-ts { + type uint32; + description + "NH Last sync Register TS"; + } + leaf nh-last-a-sync-reg-ts { + type uint32; + description + "NH Last async Register TS"; + } + leaf nh-last-a-sync-un-reg-ts { + type uint32; + description + "NH Last async UnRegister TS"; + } + leaf nh-last-batch-finish-ts { + type uint32; + description + "NH Last batch finish TS"; + } + leaf nh-last-flush-timer-ts { + type uint32; + description + "NH Last flush timer TS"; + } + leaf nhrib-update-calls { + type uint32; + description + "No. of calls to RIB update function"; + } + leaf nhrib-update-time { + type uint32; + units "millisecond"; + description + "Time spent sending RIB updates (milliseconds)"; + } + leaf nexthops-sent-to-rib { + type uint32; + description + "No. of nexthops sent to RIB"; + } + leaf nexthops-resent-to-rib { + type uint32; + description + "No. of nexthops re-sent to RIB"; + } + leaf nexthops-removed-from-rib { + type uint32; + description + "No. of nexthops withdrawn from RIB"; + } + leaf rib-sync-registers-failed { + type uint32; + description + "No. of sync registers with RIB that failed"; + } + leaf riba-sync-registers-failed { + type uint32; + description + "No. of async registers with RIB that failed"; + } + leaf ribnh-reg-failed-for-no-tbl-id { + type uint32; + description + "No. of nh registers failed because of no tbl-id"; + } + leaf ribnh-reg-failed-for-no-rib-conn { + type uint32; + description + "No. of nh registers failed because of no rib + conn"; + } + leaf tunnel-walk-nh-not-found { + type uint32; + description + "No. of times nexthop was not found during tunnel + walk"; + } + leaf tunnel-walk-gw-not-found { + type uint32; + description + "No. of times gw was not found during tunnel walk"; + } + leaf tunnel-walk-backup-creates { + type uint32; + description + "No. of times backup tid created during tunnel + walk"; + } + } + + grouping BGP-NEXTHOP-VRF-AF-BAG { + description + "BGP nexthop processing information for a VRF AF"; + container performance-statistics { + description + "BGP next hop virtual routingand forwarding + performancestatistics"; + uses BGP-NEXTHOP-PERF-VRF-AF-BAG; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf gwaf-name { + type Bgp-afi; + description + "GW Address family identifier"; + } + leaf total-nexthops { + type uint32; + description + "Total number of nexthops"; + } + leaf critical-trigger-delay { + type uint32; + description + "Trigger delay for critical event processing"; + } + leaf non-critical-trigger-delay { + type uint32; + description + "Trigger delay for non-critical event processing"; + } + leaf table-active { + type boolean; + description + "Whether the VRF is active"; + } + leaf nh-rib-up { + type boolean; + description + "Whether the VRF is active"; + } + leaf nh-rib-version { + type uint64; + description + "RIB version for gw_ctx"; + } + leaf nh-nexthop-version { + type uint64; + description + "NH version for gw_ctx"; + } + leaf nh-table-id { + type uint32; + description + "Gateway context table id"; + } + leaf epe-table-version { + type uint64; + description + "Version of the EPE table"; + } + leaf epe-label-version { + type uint64; + description + "Version of the EPE label walk"; + } + leaf epe-downloaded-version { + type uint64; + description + "Version of the EPE table downloaded"; + } + leaf epe-standby-version { + type uint64; + description + "Version of the EPE table processed by sync + thread"; + } + } + + grouping BGP-UPDGEN-SUBGRP-BAG { + description + "BGP Update generation Sub-group information"; + container creation-timestamp { + description + "Creation time"; + uses BGP-TIMESPEC; + } + container last-merge-timestamp { + description + "Last merge time"; + uses BGP-TIMESPEC; + } + container first-update-walk-start-timestamp { + description + "BGP update generation sub-group start time for + the first update walk"; + uses BGP-TIMESPEC; + } + container first-update-walk-end-timestamp { + description + "BGP update generation sub-group end time for + thefirst update walk"; + uses BGP-TIMESPEC; + } + container last-update-walk-start-timestamp { + description + "BGP update generation sub-group start for + thelast update"; + uses BGP-TIMESPEC; + } + container last-update-walk-end-timestamp { + description + "BGP update generation sub-group end time for + thelast update"; + uses BGP-TIMESPEC; + } + container last-update-queued-timestamp { + description + "Time when last update queued event"; + uses BGP-TIMESPEC; + } + container update-statistics { + description + "BGP subgroup statistics update"; + uses BGP-UPDGEN-STATS-BAG; + } + leaf process-id { + type uint32; + description + "ProcessID"; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-group-af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf sub-group-index-xr { + type uint32; + description + "Index for BGP sub-group"; + } + leaf sub-group-id-xr { + type uint32; + description + "Sub-group ID"; + } + leaf parent-sub-group-index { + type uint32; + description + "Index of the parent sub-group"; + } + leaf parent-sub-group-id { + type uint32; + description + "Parent Sub-group identifier"; + } + leaf update-group-index-xr { + type uint32; + description + "Index of the this BGp update group"; + } + leaf update-main-table-version { + type uint64; + description + "Main table version"; + } + leaf update-vrf-table-rib-version { + type uint64; + description + "VRF Table RIB version"; + } + leaf current-update-limit-sub-group { + type uint32; + description + "Current update limit"; + } + leaf configured-update-limit-sub-group { + type uint32; + description + "Configured update limit"; + } + leaf update-out-queue-messages { + type uint32; + description + "OutQueue messages"; + } + leaf update-out-queue-size { + type uint32; + description + "OutQueue size"; + } + leaf update-throttled { + type boolean; + description + "Flag to verify update throttled in BGPupdate + generation sub-group"; + } + leaf refresh-sub-group-count { + type uint32; + description + "Number of times BGP Update generation + sub-grouprefreshed"; + } + leaf filter-group-count { + type uint32; + description + "Number of filter groups are present in BGPupdate + generation"; + } + leaf neighbor-count { + type uint32; + description + "Number of neighbors in the sub-group"; + } + leaf version { + type uint64; + description + "Version up to which we have generated updatesfor + the entity"; + } + leaf nsr-version { + type uint64; + description + "NSR version"; + } + leaf pending-target-version { + type uint64; + description + "Target version for pending update generation"; + } + leaf next-resume-version { + type uint64; + description + "Version number identifying the next net + toprocess when an attribute table walk has been + interrupted"; + } + leaf update-refresh-target-version { + type uint64; + description + "Target version for update generation in response + to arefresh request"; + } + leaf io-write-event-pending { + type boolean; + description + "Flag for an event has been sent to the IO thread"; + } + leaf merge-count { + type uint32; + description + "Number of times BGP update sub-groups have been + merged"; + } + leaf last-merged-sub-group-index { + type uint32; + description + "BGP subgroup index merge happened last time"; + } + leaf eo-r-attempted { + type boolean; + description + "Sending EoR has been attempted"; + } + leaf last-update-walk-end-age { + type uint32; + description + "Time since last update walk end event"; + } + leaf last-update-queued-age { + type uint32; + units "second"; + description + "Time since last update queued event (in seconds)"; + } + } + + grouping BGP-ATTR-BAG { + description + "BGP attribute information"; + container attribute-info { + description + "Attributes"; + uses BGP-ATTR; + } + leaf process-instance-id { + type uint8; + description + "BGP attribute process instance ID"; + } + leaf attribute-instance-id { + type uint8; + description + "Instance ID for BGP attribute context "; + } + leaf attribute-structure-id { + type uint32; + description + "BGP ID of attribute structure information"; + } + leaf attribute-structure-hash-value { + type uint32; + description + "Hash value for attribute structure"; + } + leaf reference-count { + type uint32; + description + "Number of paths which use this attribute + structure"; + } + } + + grouping BGP-UPD-FILTERGRP { + description + "Update filter-group entry"; + leaf update-filter-group-number { + type uint32; + description + "Update sub-group index"; + } + leaf rts { + type uint32; + description + "RT count per filter group"; + } + leaf fgroup-flags { + type uint8; + description + "Flags per filter group"; + } + leaf fgroup-neighbors { + type uint16; + description + "Nbrs per filter group"; + } + leaf fgroup-created-message-elements { + type uint32; + description + "Number of message elems created for filtergroup"; + } + leaf fgroup-deleted-message-elements { + type uint32; + description + "Number of message elems deleted"; + } + leaf fgroup-queued-message-elements { + type uint32; + description + "Number of message elems queued"; + } + leaf fgroup-advertised-prefixes { + type uint32; + description + "Number of prefixes advertised to filtergroup in + last update walk"; + } + leaf fgroup-total-advertised-prefixes { + type uint32; + description + "Number of prefixes advertised to filtergroup in + all update walk"; + } + leaf fgroup-withdrawn-prefixes { + type uint32; + description + "Number of prefixes withdrawn f`rom filtergroupin + last update walk"; + } + leaf fgroup-total-withdrawn-prefixes { + type uint32; + description + "Number of prefixes withdrawn f`rom filtergroupin + all update walk"; + } + leaf fgroup-total-non-optimised-prefixes { + type uint32; + description + "Number of prefixes non-optm from filtergroupin + all update walk"; + } + leaf fgroup-skipped-prefixes { + type uint32; + description + "Number of prefixes skipped for filtergroup in + last update walk"; + } + leaf fgroup-suppressed-prefixes { + type uint32; + description + "Number of prefixes suppressed for filtergroup in + last update walk"; + } + leaf is-rt-present { + type boolean; + description + "RT attribute list present"; + } + list extended-community { + description + "Extended community attribute"; + leaf entry { + type uint8; + description + "Extended community attribute"; + } + } + list neighbor { + description + "Neighbors in this update sub-group"; + uses BGP-ADDRTYPE; + } + } + + grouping BGP-UPD-SUBGRP { + description + "Update sub-group entry"; + leaf update-sub-group-number { + type uint32; + description + "Update sub-group index"; + } + leaf filter-group { + type uint16; + description + "Update sub-group fgrp-num"; + } + leaf wait-for-eo-rs { + type boolean; + description + "Wait for RT Nbr EoRs"; + } + list update-filter-group { + description + "Update f-group list"; + uses BGP-UPD-FILTERGRP; + } + list neighbor { + description + "Neighbors in this subgrp not in any filtergrp"; + uses BGP-ADDRTYPE; + } + } + + grouping BGP-PROCESS-WDR-STATS { + description + "BGP Withdraw Stats info"; + container last-updated-time { + description + "Last update time"; + uses BGP-TIMESPEC; + } + leaf not-advertised-count { + type uint32; + description + "Not advertised count"; + } + } + + grouping BGP-PERF-UPDGRP { + description + "BGP PERF UPDGRP"; + leaf update-generation-calls { + type uint32; + description + "No. of calls to update generation function"; + } + leaf update-generation-prefixes-count { + type uint32; + description + "No. of prefixes updates generated for"; + } + leaf update-generation-be-prefixes-count { + type uint32; + description + "No. of be prefixes updates generated for"; + } + leaf update-generation-messages-count { + type uint32; + description + "No. of update messages generated"; + } + leaf update-generation-time { + type uint32; + units "millisecond"; + description + "Time spent generating updates (milliseconds)"; + } + leaf updgen-timer-start-time { + type uint64; + description + "Timestamp when update timer started for updgrp"; + } + leaf updgen-timer-stop-time { + type uint64; + description + "Timestamp when update timer stopped for updgrp"; + } + leaf updgen-timer-process-time { + type uint64; + description + "Timestamp when update timer processed for updgrp"; + } + list not-advertised-stat { + max-elements "35"; + description + "Not Advertised Statistics"; + uses BGP-PROCESS-WDR-STATS; + } + } + + grouping BGP-UPDGRP-BAG { + description + "BGP Update Group information"; + container performance-statistics { + description + "Aggregated performance statisticsacross all VRFs + belonging to theparent address family"; + uses BGP-PERF-UPDGRP; + } + leaf process-instance-id { + type uint8; + description + "Instance ID of the BGP processwhere the path + originated"; + } + leaf session-af-name { + type uint8; + description + "Neighbor session Address family"; + } + leaf update-group-number { + type uint32; + description + "Update group index"; + } + leaf update-group-af-name { + type Bgp-afi; + description + "Address family for update group"; + } + leaf should-send-communities { + type boolean; + description + "Send communities"; + } + leaf should-send-ext-communities { + type boolean; + description + "Send Extended communities"; + } + leaf should-send-stitching-rt { + type boolean; + description + "Send Stitching RT"; + } + leaf has-orf-receive-capability { + type boolean; + description + "ORF receive capability"; + } + leaf is-route-reflector-client { + type boolean; + description + "Flag to indicate if peers in this update group + are route-reflector clients"; + } + leaf is-client-reflection-disabled { + type boolean; + description + "True if client-to-client reflection is disabled "; + } + leaf accepts-legacy-pe-rt-route { + type boolean; + description + "Flag to indicate if provider edge device as a + legacy for the route target"; + } + leaf updgrp-cluster-id { + type uint32; + description + "Cluster ID (populated ifclient-to-client + reflectionis disabled)"; + } + leaf updgrp-cluster-type { + type uint8; + description + "Cluster ID type:undefined/number/Ip address"; + } + leaf orr-group-name { + type string; + description + "ORR Group Name"; + } + leaf orr-group-index { + type uint32; + description + "ORR Group Index"; + } + leaf is-orr-root-address-configured { + type boolean; + description + "ORR Root address configuredfor the neighbor + connection"; + } + leaf should-remove-private-a-ss { + type boolean; + description + "Remove private AS numbers"; + } + leaf should-remove-private-as-ent-path { + type boolean; + description + "Remove private AS numbersif the entire path + consistsof private ASes"; + } + leaf use-next-hop-self { + type boolean; + description + "Next hop self"; + } + leaf use-next-hop-unchanged-mpath { + type boolean; + description + "This update group have + next-hop-unchangedmultipath configured"; + } + leaf is-internal-peers { + type boolean; + description + "Peers in this update groupare internal"; + } + leaf is-common-admin-peers { + type boolean; + description + "Flag to indicate if peers are undercommon + administration in BGP update group"; + } + leaf is4-byte-as-peer { + type boolean; + description + "4-byte AS capable peers"; + } + leaf is-addpath-capable { + type boolean; + description + "Add-path capable peers"; + } + leaf is-send-mcast-attr-enabled { + type boolean; + description + "Flag to indicate if protocol independent + multicast attributes are sent in this update + group"; + } + leaf is-aigp-capable { + type boolean; + description + "AIGP capable peers"; + } + leaf is-aigp-cost-community-capable { + type boolean; + description + "Send AIGP cost community to peers"; + } + leaf is-aigp-med-capable { + type boolean; + description + "Send AIGP cost in MED"; + } + leaf is-llgr-capable { + type boolean; + description + "Send Long-lived Stale paths"; + } + leaf is-adv-capable { + type boolean; + description + "Send tranlsated paths"; + } + leaf is-adv-reorg-capable { + type boolean; + description + "Send Re-orig paths"; + } + leaf disable-native-advertisement { + type boolean; + description + "Disable advertising native routes"; + } + leaf disable-def-vrf-imp-advertisement { + type boolean; + description + "Disable advertising default VRF imported routes"; + } + leaf disable-vrf-re-imp-advertisement { + type boolean; + description + "Disable advertising VRF re-imported routes"; + } + leaf encapsulation-type { + type uint32; + description + "BGP update group encapsulation type"; + } + leaf advertise-rt-type { + type uint8; + description + "BGP update group toadvertise route target type"; + } + leaf is-directly-connected-ebgp-v6-peers { + type boolean; + description + "Flag to indicate an update group is directly + connected eBGP peers"; + } + leaf minimum-advertisement-interval { + type uint32; + units "second"; + description + "Minimum advert time for peers in this + update-group in seconds"; + } + leaf minimum-advertisement-interval-msecs { + type uint32; + units "millisecond"; + description + "Minimum advert time for peers inthis update + group in milliseconds"; + } + leaf local-as { + type uint32; + description + "Local AS number"; + } + leaf route-policy-out { + type string; + description + "Outbound route policy name"; + } + leaf desync-count { + type uint32; + description + "Number of times the update has been + desynchronized"; + } + leaf subgrp-merge-count { + type uint32; + description + "Number of times sub-groups have been merged"; + } + leaf refresh-subgrp-count { + type uint32; + description + "Current count of refresh subgroups"; + } + leaf updates-formatted { + type uint32; + description + "Number of updates formatted"; + } + leaf updates-replicated { + type uint32; + description + "Number of updates replicatedfor BGP update group"; + } + leaf local-as-replace-as { + type boolean; + description + "Local AS Replace-AS option"; + } + leaf as-override { + type boolean; + description + "AS Override option"; + } + leaf soo-value { + type string; + description + "Site-of-origin value"; + } + leaf split-horizon { + type boolean; + description + "Split horizon check"; + } + leaf is-labeled-afi-enabled { + type boolean; + description + "Update group has labeled AFI enabled"; + } + leaf is-unlabeled-afi-enabled { + type boolean; + description + "Update group has unlabeled AFI enabled"; + } + leaf ext-nh-encoding { + type boolean; + description + "Extended nexthop encoding cap received"; + } + leaf remote-as { + type uint32; + description + "Remote AS number"; + } + leaf is-adv-perm-net-capable { + type boolean; + description + "Advertise Permanent-Net capable peers"; + } + leaf should-send-gshut-community { + type boolean; + description + "Send GSHUT community"; + } + leaf gshut-active { + type boolean; + description + "GSHUT active"; + } + leaf gshut-locpref-set { + type boolean; + description + "GSHUT local preference set"; + } + leaf gshut-locpref { + type uint32; + description + "GSHUT local preference"; + } + leaf gshut-prepends { + type uint8; + description + "GSHUT AS prepends"; + } + leaf advertise-local-labeled-route-unicast { + type boolean; + description + "Advertise routes with local-label via Unicast + SAFI"; + } + leaf enable-label-stack { + type boolean; + description + "Enable BGP upgrade group label stack"; + } + leaf contains-static-slow-peer { + type boolean; + description + "This update group contains static slow peers"; + } + leaf advertise-entropy-label-disable { + type boolean; + description + "Disable propagation of entropy label to this + peer"; + } + leaf should-replace-private-a-ss { + type boolean; + description + "Replace private AS numbers"; + } + leaf default-policy-action-out-accept { + type boolean; + description + "Default Policy Out Action Configured as Accept"; + } + leaf evpn-gateway-ip-advertisement-disable { + type boolean; + description + "Disable Advertisement of non-zero EVPN Gateway + IP"; + } + list neighbor { + description + "Neighbors in this update group which are not in + any sub-group"; + uses BGP-ADDRTYPE; + } + list update-sub-group { + description + "List of child refresh subgroups inBGP update + group"; + uses BGP-UPD-SUBGRP; + } + } + + grouping BGP-STATIC-ROUTES-BAG { + description + "BGP static routes information"; + container sourced-prefix { + description + "Prefix length"; + uses BGP-PREFIXTYPE; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf is-backdoor { + type boolean; + description + "TRUE if net is a backdoor route"; + } + } + + grouping BGP-GLOBAL-PROCESS-INFO-AF-VRF { + description + "BGP GLOBAL PROCESS INFO AF VRF"; + leaf table-is-active { + type boolean; + description + "Table state is active"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf def-orig-enabled { + type boolean; + description + "Default Orig enabled for a vrf afi"; + } + leaf table-version { + type uint64; + description + "BGP global process table version info"; + } + leaf rd-version { + type uint64; + description + "RD version"; + } + leaf rib-version { + type uint64; + description + "Table version synced to RIB"; + } + leaf nsr-conv-version { + type uint64; + description + "Cache for non stop routingcurrent table version"; + } + leaf nsr-is-conv { + type boolean; + description + "NSR is converged"; + } + leaf client-reflection-enabled { + type boolean; + description + "Flag to indicate if client-to-client reflection + is enabled"; + } + leaf dampening-enabled { + type boolean; + description + "Flag to enable BGP address-family dampening"; + } + leaf ebgp-distance { + type uint16; + description + "Distance for eBGP routes (external)"; + } + leaf ibgp-distance { + type uint16; + description + "Distance for iBGP routes (internal)"; + } + leaf aggregates-distance { + type uint16; + description + "Dist for aggregate routes (local)"; + } + leaf dynamic-med-enabled { + type boolean; + description + "Update generation enabled for MED change"; + } + leaf dynamic-med-interval { + type uint16; + units "minute"; + description + "Delay in update generation after a MED change + (in minutes)"; + } + leaf dynamic-med-timer-running { + type boolean; + description + "Flag to indicate if dynamic multi exit + discriminator (MED) timer is running"; + } + leaf dynamic-med-timer-value { + type uint16; + units "second"; + description + "Dynamic MED timer value (in seconds) left on the + timer"; + } + leaf dynamic-med-periodic-timer-running { + type boolean; + description + "Dynamic multi exit discriminatorperiodic timer + running"; + } + leaf dynamic-med-periodic-timer-value { + type uint16; + units "second"; + description + "Dynamic MED periodic timer value (in seconds) + left on the timer"; + } + leaf rib-has-converged { + type boolean; + description + "Received convergence notification from RIB"; + } + leaf rib-convergence-version { + type uint64; + description + "Last convergence version received from RIB"; + } + leaf is-rib-table-full { + type boolean; + description + "Indicates if RIB table is in prefix-limit state"; + } + leaf rib-table-full-version { + type uint64; + description + "Version when RIB table became full (from + non-full)"; + } + leaf is-unique-nexthop-check-disabled { + type boolean; + description + "Indicates if unique nexthop check disabled"; + } + leaf nexthop-resolution-minimum-prefix-length-configured { + type boolean; + description + "Flag to indicate if nexthop resolution minimum + prefix-length is configured"; + } + leaf nexthop-resolution-minimum-prefix-length { + type uint32; + description + "Used to validate prefix-length of resolving + route of nexthopsin BGP"; + } + leaf ipv6-nexthop-resolution-minimum-prefix-length-configured { + type boolean; + description + "Flag to indicate if ipv6 nexthop resolution + minimum prefix-length is configured"; + } + leaf ipv6-nexthop-resolution-minimum-prefix-length { + type uint32; + description + "Used to validate prefix-length of resolving + route of ipv6 nexthopsin BGP"; + } + leaf selective-ebgp-multipath-enabled { + type boolean; + description + "Flag to indicate if the Selective option is + configured with multipath external bgp"; + } + leaf selective-ibgp-multipath-enabled { + type boolean; + description + "Flag to indicate if the Selective option is + configured with multipath internal bgp"; + } + leaf selective-eibgp-multipath-enabled { + type boolean; + description + "Flag to indicate if the Selective option is + configured with multipath external internal bgp"; + } + leaf deterministic-ibgp-multipath-enabled { + type boolean; + description + "Flag to indicate if Deterministic option is + configured with multipath internal bgp"; + } + leaf rib-acked-table-version { + type uint64; + description + "Table version acked by RIB"; + } + leaf vrf-srv6-sid-alloc-mode { + type uint32; + description + "SID alloc mode of SRv6 under Vrf"; + } + leaf isvrf-srv6-enabled { + type boolean; + description + "SRv6 info under a Vrf"; + } + leaf vrf-srv6-locator { + type string; + description + "SRv6 Locator Name under Vrf"; + } + leaf vrf-all-srv6-locator { + type string; + description + "SRv6 Locator Name under Vrf All"; + } + leaf vrf-all-srv6-sid-alloc-mode { + type uint32; + description + "SRv6 SID alloc mode under Vrf All"; + } + leaf isvrfall-srv6-enabled { + type boolean; + description + "SRv6 info under a Vrf All"; + } + leaf rpki-version { + type uint64; + description + "RPKI table version walked"; + } + leaf rpki-soft-reconf-version { + type uint64; + description + "RPKI soft reconfiguration version walked"; + } + list oc-rib-out-attr-pool-size { + max-elements "10"; + description + "Memory size for each OCRIB Out attributes chunk"; + leaf entry { + type uint32; + description + "Memory size for each OCRIB Out attributes chunk"; + } + } + list oc-rib-out-attr-pool-alloc-count { + max-elements "10"; + description + "Number of OCRIB Out Attributes allocated per + + pool"; + leaf entry { + type uint32; + description + "Number of OCRIB Out Attributes allocated per + + pool"; + } + } + list oc-rib-out-attr-pool-free-count { + max-elements "10"; + description + "Number of OCRIB Out Attributes freed per pool"; + leaf entry { + type uint32; + description + "Number of OCRIB Out Attributes freed per pool"; + } + } + list oc-rib-path-count-per-out-attribute { + description + "Current Number of paths having particular number + + of outbound attributes"; + leaf entry { + type uint32; + description + "Current Number of paths having particular number + + of outbound attributes"; + } + } + } + + grouping BGP-GLOBAL-PROCESS-INFO-AF-GBL { + description + "BGP GLOBAL PROCESS INFO AF GBL"; + container rib-install { + description + "RIB install info"; + uses BGP-RIB-INSTALL-TIME-INFO; + } + container nets-rpki-sanitized-timestamp { + description + "timestamp of last RPKI sanitized net"; + uses BGP-TIMESPEC; + } + leaf scanner-period { + type uint16; + units "second"; + description + "Period (in seconds) of address-family scanner + runs"; + } + leaf nh-tunnel-version { + type uint64; + description + "NH Tunnel Version"; + } + leaf scan-prefixes { + type uint32; + description + "Total prefixes of address-family scanned"; + } + leaf scan-segment-prefixes { + type uint32; + description + "Number of prefixes scanned in a segment of + address-family"; + } + leaf scan-segments { + type uint8; + description + "Number of segments to scan all prefixes of + address-family"; + } + leaf inter-as-install-enabled { + type boolean; + description + "Is inter-AS install to pim on ASBR enabled"; + } + leaf global-mcast-enabled { + type boolean; + description + "Flag to indicate if global routing table + multicast is enabled"; + } + leaf segmented-mcast-enabled { + type boolean; + description + "Flag to indicate if BGP segmented multicast is + enabled"; + } + leaf gblafrpki-disable { + type boolean; + description + "Prefix validation disabled"; + } + leaf gblafrpki-use-validity { + type boolean; + description + "Prefix v. use validity"; + } + leaf gblafrpki-allow-invalid { + type boolean; + description + "Prefix v. allow invalid"; + } + leaf gblafrpki-signal-ibgp { + type boolean; + description + "Prefix v. signal ibgp"; + } + leaf update-wait-install-enabled { + type boolean; + description + "Flag to wait for installation update"; + } + leaf update-wait-install-startup-delay { + type uint16; + units "second"; + description + "Update wait install startup delay in seconds"; + } + leaf rib-ack-requests { + type uint32; + description + "Counter for RIB ack requests"; + } + leaf rib-acks-received { + type uint32; + description + "Counter for RIB ack received"; + } + leaf rib-slow-acks { + type uint32; + description + "Counter for slow RIB acks"; + } + leaf is-perm-net-cfg { + type boolean; + description + "Permanent Network Enabled"; + } + leaf perm-net-del-count { + type uint16; + description + "Count of removed perm paths"; + } + leaf perm-net-stale-del-count { + type uint16; + description + "Count of stale perm paths"; + } + leaf perm-net-stale-mark-count { + type uint16; + description + "Count of stale marked perm paths"; + } + leaf perm-net-insert-count { + type uint16; + description + "Count of inserted perm paths"; + } + leaf perm-net-existing-count { + type uint16; + description + "Count of existing perm paths"; + } + leaf perm-net-rpl-query-count { + type uint16; + description + "Count of perm nets given by RPL"; + } + leaf perm-net-rpl-process-count { + type uint16; + description + "Count of perm nets processed in RPL"; + } + leaf perm-nbr-count { + type uint16; + description + "Count of neighbors configured with perm net"; + } + leaf rib-perm-pelem-not-found-count { + type uint16; + description + ""; + } + leaf rib-perm-path-not-found-count { + type uint16; + description + ""; + } + leaf rib-perm-pelem-found-count { + type uint16; + description + ""; + } + leaf rib-reg-path-found-count { + type uint16; + description + ""; + } + leaf rib-perm-path-found-count { + type uint16; + description + ""; + } + leaf perm-pelem-free-count { + type uint16; + description + "Count of freed perm pelems"; + } + leaf perm-path-refresh-count { + type uint16; + description + "Count of perm paths refreshed"; + } + leaf perm-pelem-bump-count { + type uint16; + description + "Count of bumped perm pelems"; + } + leaf perm-pelem-all-bump-count { + type uint16; + description + "Count of bumped perm pelems"; + } + leaf af-srv6-sid-alloc-mode { + type uint32; + description + "SID alloc mode of SRv6 under AF"; + } + leaf af-srv6-locator { + type string; + description + "SRv6 Locator Name under AF"; + } + leaf nets-rpki-sanitized { + type uint32; + description + "Count of nets that had RPKI validity repaired by + the background sanitizer"; + } + list syncgrp-version { + max-elements "2"; + description + "Sync-group Version"; + leaf entry { + type uint64; + description + "Sync-group Version"; + } + } + } + + grouping BGP-GLOBAL-PROCESS-INFO-AF-BAG { + description + "BGP address family specific information common to + all BGP processes"; + container global { + description + "Global information"; + uses BGP-GLOBAL-PROCESS-INFO-AF-GBL; + } + container vrf { + description + "VRF information"; + uses BGP-GLOBAL-PROCESS-INFO-AF-VRF; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf af-name { + type Bgp-afi; + description + "Address family id"; + } + leaf is-nsr-enabled { + type boolean; + description + "Non-stop routing enabled"; + } + } + + grouping BGP-RPC-NEXTHOPSET { + description + "BGP RPC NEXTHOPSET"; + container nexthop-addr { + description + "List of multipath next-hops"; + uses BGP-ADDRTYPE; + } + leaf received-label { + type uint32; + description + "Received labl for the path"; + } + } + + grouping BGP-RPC-SET-BAG { + description + "BGP RPC SET BAG"; + leaf next-hop-xr { + type uint32; + description + "Number of multipath next-hops"; + } + leaf label { + type uint32; + description + "Label assigned to the RPCnext-hop set"; + } + leaf ref-count { + type uint32; + description + "Reference for the count"; + } + leaf srv6-sid-address { + type Ipv6-address; + description + "SRv6 SID address value"; + } + leaf srv6-sid-address-len { + type uint32; + description + "SRv6 SID address Length"; + } + leaf locator-format { + type uint32; + description + "Locator Format"; + } + leaf retain-counter { + type uint8; + description + "RPC retain counter"; + } + list next-hop { + description + "List of multipath next-hops"; + uses BGP-RPC-NEXTHOPSET; + } + } + + grouping BGP-BMP-TBL-GBL-BAG { + description + "BMP Table global information"; + container bmp-version-wrap-time-spec { + description + "Version Wrap timestamp"; + uses BGP-TIMESPEC; + } + container bmp-version-wrap-start-time-spec { + description + "Version Wrap handle start timestamp"; + uses BGP-TIMESPEC; + } + container bmp-version-wrap-done-time-spec { + description + "Version Wrap handle Done timestamp"; + uses BGP-TIMESPEC; + } + leaf bmp-route-monitoringe-enabled { + type boolean; + description + "Is Route Monitoring mode enabled"; + } + leaf bmp-table-version { + type uint64; + description + "Table version"; + } + leaf rd-count { + type uint32; + description + "Number of RDs in the table"; + } + leaf network-count { + type uint32; + description + "Number of nets in the table"; + } + leaf path-count { + type uint32; + description + "Number of paths in the table"; + } + leaf bmp-version-wrapped { + type uint32; + description + "Number of times Table Version Wrapped"; + } + leaf bmp-version-wrapped-tid { + type uint32; + description + "Version Wrapped trigger thread id"; + } + leaf bmp-version-inprogress { + type boolean; + description + "Is Version wrap in progress"; + } + leaf bmp-version-incremented { + type boolean; + description + "Is Version being incremented"; + } + } + + grouping BGP-PATH-BAG { + description + "BGP path"; + container advertised-neighbor { + description + "Advertised Neighbor Address. Valid in the case + of Advertised table"; + uses BGP-ADDRTYPE; + } + container path-information { + description + "BGP path information "; + uses BGP-PATH; + } + container attributes-after-policy-in { + description + "Attributes after inbound policy applied. In the + case of path type received-only this will be + attributes before inbound policy"; + uses BGP-ATTR; + } + leaf no-path { + type boolean; + description + "No path exists. All 'sp_path' fields except + 'sp_path->bag_prefix' are invalid"; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf process-instance-id { + type uint8; + description + "BGP Process instance ID"; + } + leaf label-oor { + type boolean; + description + "LSD label space is exhausted"; + } + leaf label-oor-version { + type uint64; + description + "Label Version when OOR happens"; + } + leaf label-fail { + type boolean; + description + "LSD label allocation failed "; + } + leaf route-distinguisher { + type xr:Route-dist; + description + "BGP path Route Distinguisher"; + } + leaf source-route-distinguisher { + type xr:Route-dist; + description + "BGP path Source Route Distinguisher"; + } + leaf original-source-route-distinguisher { + type xr:Route-dist; + description + "BGP path Original Source Route Distinguisher"; + } + leaf prefix-version { + type uint64; + description + "Version of BGP Prefix Table"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf source-vrf-name { + type string; + description + "Name of the source VRF"; + } + leaf srcaf-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf sid-oor { + type boolean; + description + "SID out-of-resource state "; + } + leaf sid-oor-version { + type uint64; + description + "Sid Version when OOR happens"; + } + leaf sid-fail { + type boolean; + description + "SRv6 sid allocation failed "; + } + leaf attribute-index { + type uint64; + description + "Attribute index"; + } + } + + grouping BGP-PERF-PROCESS-AF-VRF { + description + "BGP PERF PROCESS AF VRF"; + container time-rib-coverged { + description + "Time last RIB ack was sent "; + uses BGP-TIMESPEC; + } + container time-rib-down { + description + "Time last RIB down wassent. This field is + deprecated"; + uses BGP-TIMESPEC; + } + container first-rib-table-full-timestamp { + description + "Timestamp when RIB table was full for the first + time"; + uses BGP-TIMESPEC; + } + container last-rib-table-full-timestamp { + description + "Timestamp when RIB table was full for the last + time"; + uses BGP-TIMESPEC; + } + container first-rib-table-has-space-timestamp { + description + "Timestamp when RIB table had space for the first + time"; + uses BGP-TIMESPEC; + } + container last-rib-table-has-space-timestamp { + description + "Timestamp when RIB table had space for the last + time"; + uses BGP-TIMESPEC; + } + container time-label-retain { + description + "Time last label retentiontriggered "; + uses BGP-TIMESPEC; + } + leaf update-generation-calls { + type uint32; + description + "No. of calls to update generation function"; + } + leaf update-generation-prefixes-count { + type uint32; + description + "No. of prefixes updates generated for"; + } + leaf update-generation-be-prefixes-count { + type uint32; + description + "No. of be prefixes updates generated for"; + } + leaf update-generation-messages-count { + type uint32; + description + "No. of update messages generated"; + } + leaf update-generation-time { + type uint32; + units "millisecond"; + description + "Time spent generating updates (milliseconds)"; + } + leaf rib-update-calls { + type uint32; + description + "No. of calls to RIB update function"; + } + leaf rib-update-time { + type uint32; + units "millisecond"; + description + "Time spent sending RIB updates (milliseconds)"; + } + leaf prefixes-sent-to-rib { + type uint32; + description + "No. of prefixes sent to RIB"; + } + leaf prefixes-resent-to-rib { + type uint32; + description + "No. of prefixes re-sent to RIB"; + } + leaf prefixes-not-sent-to-rib { + type uint32; + description + "No. of prefixes not sent to RIB due to + unsupported label stack size"; + } + leaf prefixes-removed-from-rib { + type uint32; + description + "No. of prefixes withdrawn from RIB"; + } + leaf attributes-sent-to-rib { + type uint32; + description + "No. of attributes sent to RIB"; + } + leaf attributes-removed-from-rib { + type uint32; + description + "No. of attributes withdrawn from RIB"; + } + leaf attributes-recover-from-rib { + type uint32; + description + "No. of attributes recovered from RIB"; + } + leaf scanner-runs { + type uint32; + description + "# of times scanner has run"; + } + leaf scanner-time { + type uint32; + units "millisecond"; + description + "Time spent running scanner (milliseconds)"; + } + leaf rib-tbl-del-calls { + type uint32; + description + "No. of rib update skipped on account of table + delete"; + } + leaf rib-tbl-invalid-calls { + type uint32; + description + "No. of rib update skipped due to table invalid"; + } + leaf rib-tbl-skip-calls { + type uint32; + description + "No. of rib update skipped"; + } + leaf rib-tbl-local-label { + type uint32; + description + "No. of rib update skipped. due to no local label"; + } + leaf rib-tbl-retry { + type uint32; + description + "No. of table rib retires."; + } + leaf time-last-update-sent { + type uint32; + units "second"; + description + "Time last update was sent (seconds since Jan 1 + 1970)"; + } + leaf is-rib-table-full { + type boolean; + description + "Indicates if RIB table is in prefix-limit state"; + } + leaf rib-table-full-version { + type uint64; + description + "Version when RIB table became full (from + non-full)"; + } + leaf first-rib-table-full-version { + type uint64; + description + "Version when RIB table was full for the first + time"; + } + leaf last-rib-table-full-version { + type uint64; + description + "Version when RIB table was full for the last + time"; + } + leaf last-rib-table-full-age { + type uint32; + units "second"; + description + "Time since RIB table was full for the last time + (in seconds)"; + } + leaf first-rib-table-has-space-version { + type uint64; + description + "Version when RIB table had space for the first + time"; + } + leaf last-rib-table-has-space-version { + type uint64; + description + "Version when RIB table had space for the last + time"; + } + leaf last-rib-table-has-space-age { + type uint32; + units "second"; + description + "Times since RIB table had space for the last + time (in seconds)"; + } + leaf rib-trigger { + type boolean; + description + "Rib trigger enabled"; + } + leaf vrf-flags { + type uint32; + description + "VRF flags for debug display"; + } + leaf label-calls { + type uint32; + description + "No. of calls to label allocation processing + function"; + } + leaf label-time { + type uint32; + units "millisecond"; + description + "Time spent running label processing + (milliseconds)"; + } + leaf label-rewrite-count { + type uint32; + description + "Number of label rewrites created"; + } + leaf label-release-count { + type uint32; + description + "Number of labels released"; + } + leaf label-added-count { + type uint32; + description + "Number of labels requested"; + } + leaf import-calls { + type uint32; + description + "Number of calls to import processing function"; + } + leaf import-time { + type uint32; + units "millisecond"; + description + "Time spent in import processing (milliseconds) + Note time accounted against source nets."; + } + leaf import-src-net-processed-count { + type uint32; + description + "Number of source nets processed"; + } + leaf import-dest-net-processed-count { + type uint32; + description + "Number of destination nets processed"; + } + leaf import-added-path-count { + type uint32; + description + "Number of imported paths added"; + } + leaf import-removed-path-count { + type uint32; + description + "Number of imported paths removed"; + } + leaf import-replaced-path-count { + type uint32; + description + "Number of imported paths "; + } + leaf update-group-count { + type uint32; + description + "No. of update group"; + } + leaf subgroup-count { + type uint32; + description + "No. of update subgroup"; + } + } + + grouping BGP-PERF-PROCESS-AF-GBL { + description + "BGP PERF PROCESS AF GBL"; + leaf has-converged { + type boolean; + description + "TRUE if process has converged"; + } + leaf first-nbr-up-time { + type uint32; + units "second"; + description + "Time when first peer came up (seconds since Jan + 1 1970)"; + } + leaf total-pim-install { + type uint32; + description + "Total number of install to PIM"; + } + leaf total-pim-callbacks { + type uint32; + description + "Total number of PIM callbacks"; + } + leaf total-pim-callback-batch { + type uint32; + description + "Total number of Pim callback batches"; + } + list mode-enter-time { + max-elements "7"; + description + "Time that each mode was entered (seconds since + + Jan 1 1970)"; + leaf entry { + type uint32; + units "second"; + description + "Time that each mode was entered (seconds since + + Jan 1 1970)"; + } + } + list total-pim-install-add { + max-elements "7"; + description + "Total number of install to PIM for add"; + leaf entry { + type uint32; + description + "Total number of install to PIM for add"; + } + } + list total-pim-install-del { + max-elements "7"; + description + "Total number of install to PIM for del"; + leaf entry { + type uint32; + description + "Total number of install to PIM for del"; + } + } + list total-pim-callback-add { + max-elements "7"; + description + "Total number of Pim callbacks for add"; + leaf entry { + type uint32; + description + "Total number of Pim callbacks for add"; + } + } + list total-pim-callback-del { + max-elements "7"; + description + "Total number of Pim callbacks for del"; + leaf entry { + type uint32; + description + "Total number of Pim callbacks for del"; + } + } + list total-pim-callback-add-local { + max-elements "7"; + description + "Total number of Pim callbacks for local add"; + leaf entry { + type uint32; + description + "Total number of Pim callbacks for local add"; + } + } + list total-pim-callback-del-local { + max-elements "7"; + description + "Total number of Pim callbacks for Local del"; + leaf entry { + type uint32; + description + "Total number of Pim callbacks for Local del"; + } + } + } + + grouping BGP-PERF-PROCESS-AF { + description + "BGP PERF PROCESS AF"; + container global { + description + "Global information"; + uses BGP-PERF-PROCESS-AF-GBL; + } + container vrf { + description + "VRF information"; + uses BGP-PERF-PROCESS-AF-VRF; + } + } + + grouping BGP-PROCESS-INFO-AF-VRF { + description + "BGP PROCESS INFO AF VRF"; + leaf network-entry-count { + type uint32; + description + "Number of network entries"; + } + leaf paths-count { + type uint32; + description + "Number of paths"; + } + leaf imported-paths { + type uint32; + description + "Number of imported paths"; + } + leaf local-paths { + type uint32; + description + "Number of local paths"; + } + leaf path-elems-count { + type uint32; + description + "Number of path elems"; + } + leaf path-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by path data"; + } + leaf imported-path-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by imported paths"; + } + leaf local-path-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by local paths"; + } + leaf prefix-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by prefix data"; + } + leaf path-elem-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by pathelem data"; + } + leaf received-path-count { + type uint32; + description + "Number of (unused) received paths for inbound + soft reconfiguration"; + } + leaf history-path-count { + type uint32; + description + "Number of history paths (for dampening)"; + } + leaf damped-path-count { + type uint32; + description + "Number of dampened paths"; + } + leaf malloced-prefix-count { + type uint32; + description + "Activity: Number of prefixes malloced"; + } + leaf freed-prefix-count { + type uint32; + description + "Activity: Number of prefixes freed"; + } + leaf malloced-path-count { + type uint32; + description + "Activity: Number of paths malloced"; + } + leaf freed-path-count { + type uint32; + description + "Activity: Number of paths freed"; + } + leaf malloced-path-elem-count { + type uint32; + description + "Activity: Number of path elems malloced"; + } + leaf freed-path-elem-count { + type uint32; + description + "Activity: Number of pathelems freed"; + } + leaf any-ebgp-neighbor-missing-policy { + type boolean; + description + "Is there any neighbor which is missing either + inbound or outbound or both routing policy for + this address family?"; + } + leaf attribute-download { + type boolean; + description + "BGP virtual routing and forwarding attribute + download "; + } + leaf route-target-download { + type boolean; + description + "Route Target download is enabled"; + } + leaf srms-prefix-sid { + type boolean; + description + "SRMS Prefix SID is "; + } + leaf add-path-install-enable { + type boolean; + description + "Additional paths installation is enabled"; + } + leaf add-path-install-disable { + type boolean; + description + "Additional paths installation is disabled"; + } + leaf best-external { + type boolean; + description + "Best External is enabled"; + } + leaf best-external-disable { + type boolean; + description + "Best External is enabled"; + } + leaf best-external-labeled-unicast { + type boolean; + description + "Best External is limited toLabeled-Unicast"; + } + leaf label-retain { + type boolean; + description + "Label retention is enabled"; + } + leaf label-retainvalue { + type uint32; + description + "Label retention value enabled"; + } + leaf tbl-bitf-size { + type uint16; + description + "Bitfield size on table"; + } + leaf tbl-chunk-bitf-size { + type uint16; + description + "Chunk Bitfield size on table"; + } + leaf tbl-filter-group-bitf-resize-pending { + type boolean; + description + "Filter Group bitfield resize is pending for this + table"; + } + leaf is-route-reflector { + type boolean; + description + "Router is an RR for this AF"; + } + leaf asbr { + type boolean; + description + "Router is an ASBR for this AF"; + } + leaf retain-rt-all { + type boolean; + description + "Retain-RT-All enabled"; + } + leaf ibgp-nexthop-self-count { + type uint32; + description + "Number of iBGP sessions configured with nh-self"; + } + leaf use-igpsr-label { + type boolean; + description + "Use IGP SR label for resolution"; + } + leaf bmp-network-entry-count { + type uint32; + description + "Number of BMP net entries"; + } + leaf bmp-paths-count { + type uint32; + description + "Total Number of BMP paths"; + } + leaf bmp-prefix-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by prefix data"; + } + leaf bmp-path-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by path data"; + } + leaf path-lookup-path-count { + type uint32; + description + "Number of paths in path lookup db"; + } + list net-path-distribution { + description + "Net Paths Distribution"; + leaf entry { + type uint32; + description + "Net Paths Distribution"; + } + } + } + + grouping BGP-RIB-INSTALL-TIME-INFO { + description + "BGP RIB INSTALL TIME INFO"; + container update-time { + description + "The time taken for routing information base + download "; + uses BGP-TIMESPEC; + } + container install-time { + description + "The time taken for the route installation "; + uses BGP-TIMESPEC; + } + leaf installed-count { + type uint32; + description + "Count of installed routes"; + } + leaf modified-count { + type uint32; + description + "Count of modified routes"; + } + leaf skipped-count { + type uint32; + description + "Count of skipped routes"; + } + leaf withdrawn-count { + type uint32; + description + "Count of withdrawn routes"; + } + leaf start-version { + type uint64; + description + "Start version of the BGP routing information + base "; + } + leaf target-version { + type uint64; + description + "Target version of BGProuting information + baseupdate "; + } + } + + grouping BGP-THREAD-TRIGGER-INFO-STAT { + description + "BGP THREAD TRIGGER INFO STAT"; + container trigger-time-spec { + description + "Timestamp when the thread was triggered "; + uses BGP-TIMESPEC; + } + leaf trigger-version { + type uint64; + description + "The thread version last timethe thread is run"; + } + leaf trigger-table-version { + type uint64; + description + "TriggerTableVersion"; + } + } + + grouping BGP-THREAD-TRIGGER-INFO { + description + "BGP THREAD TRIGGER INFO"; + leaf triggers { + type uint32; + description + "Number of times the threadwas triggered"; + } + list statistic { + description + "stats recorded per trigger"; + uses BGP-THREAD-TRIGGER-INFO-STAT; + } + } + + grouping BGP-PROCESS-INFO-AF-GBL { + description + "BGP PROCESS INFO AF GBL"; + container version-wrap-time-spec { + description + "Version Wrap timestamp"; + uses BGP-TIMESPEC; + } + container version-wrap-start-time-spec { + status obsolete; + description + "Version Wrap handle start timestamp"; + uses BGP-TIMESPEC; + } + container version-wrap-done-time-spec { + status obsolete; + description + "Version Wrap handle Done timestamp"; + uses BGP-TIMESPEC; + } + container trigger-rib { + description + "Trigger RIB"; + uses BGP-THREAD-TRIGGER-INFO; + } + container trigger-import { + description + "Flag to keep track of import triggers to each of + the threads"; + uses BGP-THREAD-TRIGGER-INFO; + } + container trigger-update { + description + "Flag to keep track of update triggers for each + thread"; + uses BGP-THREAD-TRIGGER-INFO; + } + container trigger-label { + description + "Label to keep track of trigger for each thread"; + uses BGP-THREAD-TRIGGER-INFO; + } + container rib-install { + description + "RIB install info"; + uses BGP-RIB-INSTALL-TIME-INFO; + } + leaf router-state { + type Bgp-rtr-state; + description + "BGP router state for the address family "; + } + leaf table-version { + type uint64; + description + "BGP main routing table version"; + } + leaf semi-wrap-table-version { + type uint64; + description + "BGP table version at semi wrap"; + } + leaf version-wrapped { + type uint32; + description + "Number of times Version semi-Wrap happened"; + } + leaf version-wrapped-tid { + type uint32; + status obsolete; + description + "Version Wrapped trigger tid"; + } + leaf low-versions-bumped { + type uint32; + description + "Number of nets with low versions bumped"; + } + leaf nets-at-semi-wrap { + type uint32; + description + "Number of nets in the tree at semi wrap"; + } + leaf max-active-pelem-version { + type uint64; + description + "Maximum Active Pelem Version"; + } + leaf merged-table-version { + type uint64; + description + "The merged Bgp table version after RPFO"; + } + leaf route-download-go-active-done-pending { + type uint32; + description + "To indicate whether routedownload go-active-done + pulse is sent or not"; + } + leaf rib-brib-received-version { + type uint64; + description + "Version received from "; + } + leaf table-brib-version { + type uint64; + description + "Version sent to RIB/bRIB"; + } + leaf label-version { + type uint64; + description + "Version updated by label thread"; + } + leaf import-version { + type uint64; + description + "Version updated by import thread"; + } + leaf standby-version { + type uint64; + description + "Version updated by sync thread"; + } + leaf send-version { + type uint64; + description + "Version for sending updates to peers"; + } + leaf num-init-sync-pfx { + type uint32; + description + "Num of prefix synced during Initsync"; + } + leaf max-label-stack-depth-v4-next-hop { + type uint32; + description + "Max supported label stack depth for IPv4 + Nexthop"; + } + leaf max-label-stack-depth-v6-next-hop { + type uint32; + description + "Max supported label stack depth for IPv6 + Nexthop"; + } + leaf local-networks-num { + type uint32; + description + "Total local networks"; + } + leaf local-networks-memory { + type uint32; + description + "Total number of networks memory in global BGP + address-family "; + } + leaf local-networks-malloced-num { + type uint32; + description + "Total number of networks for which memory is + allocated"; + } + leaf local-networks-freed-num { + type uint32; + description + "Total local networks freed"; + } + leaf local-paths-num { + type uint32; + description + "Total local paths"; + } + leaf local-paths-memory { + type uint32; + description + "Total memory allocated for local paths in BGP + process"; + } + leaf local-paths-malloced-num { + type uint32; + description + "Total local paths for which memory allocated"; + } + leaf local-paths-freed-num { + type uint32; + description + "Total local paths freed"; + } + leaf imported-paths-num { + type uint32; + description + "Total imported paths"; + } + leaf imported-paths-memory { + type uint32; + description + "Total memory allocated for imported paths in BGP + process"; + } + leaf networks-num { + type uint32; + description + "Total Num of networks"; + } + leaf networks-memory { + type uint32; + description + "Total memory allocated for networks in BGP + process"; + } + leaf networks-malloced-num { + type uint32; + description + "Total networks for which memory allocated"; + } + leaf networks-freed-num { + type uint32; + description + "Total networks freed"; + } + leaf paths-num { + type uint32; + description + "Total Num of paths"; + } + leaf paths-memory { + type uint32; + description + "Total paths memory"; + } + leaf paths-malloced-num { + type uint32; + description + "Total paths for which memory allocated"; + } + leaf paths-freed-num { + type uint32; + description + "Total paths freed"; + } + leaf path-elems-num { + type uint32; + description + "Total Num of path-elems"; + } + leaf path-elems-memory { + type uint32; + description + "Total memory allocated for path-elements in BGP + process"; + } + leaf path-elems-malloced-num { + type uint32; + description + "Total memory allocated for path-element number"; + } + leaf path-elems-freed-num { + type uint32; + description + "Total path-elems freed"; + } + leaf label-last-trigger { + type uint64; + description + "Timestamp when Label thread is last triggered"; + } + leaf last-label-version { + type uint64; + description + "Label thread version when last triggered"; + } + leaf label-bgp-version { + type uint64; + description + "BGP version when label thread is last triggered"; + } + leaf label-triggers { + type uint32; + description + "Label thread triggers"; + } + leaf rib-last-trigger { + type uint64; + description + "Timestamp when RIB thread is last triggered"; + } + leaf last-rib-version { + type uint64; + description + "RIB thread version when last triggered"; + } + leaf rib-bgp-version { + type uint64; + description + "BGP version when RIB thread is last triggered"; + } + leaf rib-triggers { + type uint32; + description + "RIB thread triggers"; + } + leaf import-last-trigger { + type uint64; + description + "Timestamp when Import thread is last triggered"; + } + leaf last-import-version { + type uint64; + description + "Import thread version when last triggered"; + } + leaf import-bgp-version { + type uint64; + description + "BGP version when Import thread is last triggered"; + } + leaf import-triggers { + type uint32; + description + "Import thread triggers"; + } + leaf update-gen-last-trigger { + type uint64; + description + "Timestamp when Update generation thread is last + triggered"; + } + leaf update-gen-bgp-version { + type uint64; + description + "BGP version when Update generation thread is + last triggered"; + } + leaf update-triggers { + type uint32; + description + "Update thread triggers"; + } + leaf total-r-ds-num { + type uint32; + description + "Total Num of RDs"; + } + leaf total-remote-r-ds-num { + type uint32; + description + "Total Num of remote RDs"; + } + leaf total-same-r-ds-num { + type uint32; + description + "Total Num of same RDs"; + } + leaf malloced-rd-count { + type uint32; + description + "Activity: Number of RDs malloced"; + } + leaf freed-rd-count { + type uint32; + description + "Activity: Number of RDs freed"; + } + leaf rd-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used by RD data"; + } + leaf multipath-network-entry-count { + type uint32; + description + "Number of multipath network entries"; + } + leaf multipath-network-entry-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used bymultipath network + entries"; + } + leaf multipath-paths-count { + type uint32; + description + "Number of multipath paths"; + } + leaf multipath-paths-memory { + type uint32; + units "byte"; + description + "Memory (in bytes) used bymultimpath paths"; + } + leaf update-wait-install-enabled { + type uint32; + description + "BGP process update wait until install is + configured"; + } + leaf update-wait-install-startup-delay { + type uint16; + units "second"; + description + "Update wait install startup delay in seconds"; + } + leaf rib-acked-table-version { + type uint64; + description + "Table version acked by routing information base"; + } + leaf rib-ack-requests { + type uint32; + description + "Count for RIB ack requests"; + } + leaf rib-acks-received { + type uint32; + description + "Count for RIB ack received"; + } + leaf rib-slow-acks { + type uint32; + description + "Count for slow RIB acks"; + } + } + + grouping BGP-PROCESS-INFO-AF-BAG { + description + "BGP address family specific process information"; + container global { + description + "Global information"; + uses BGP-PROCESS-INFO-AF-GBL; + } + container vrf { + description + "VRF information"; + uses BGP-PROCESS-INFO-AF-VRF; + } + container performance-statistics { + description + "BGP process address familyperformance statistics + info"; + uses BGP-PERF-PROCESS-AF; + } + leaf af-name { + type Bgp-afi; + description + "Address family id"; + } + leaf process-instance { + type uint8; + description + "ID for the BGP process instance"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf vrf-totals { + type boolean; + description + "per VRF information aggregated across all VRFs"; + } + } + + grouping BGP-CONVERGENCE-BAG { + description + "BGP Convergence"; + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf has-converged { + type boolean; + description + "Convergence has been reached"; + } + leaf are-write-queues-empty { + type boolean; + description + "All neighbor write queues are empty"; + } + leaf not-converged-neighbor { + type string; + description + "Not converged Neighbor"; + } + leaf message-pending { + type boolean; + description + "Pending Message Send"; + } + } + + grouping BGP-ATTR-RNH-ADDR { + description + "BGP ATTR RNH ADDR"; + leaf len { + type Bgp-rnh-addr-len; + description + "len"; + } + leaf ipv4-address { + when "../len = 'v4'" { + description + "../len = 'v4'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../len = 'v6'" { + description + "../len = 'v6'"; + } + type Ipv6-address; + description + "IPv6 Addr"; + } + leaf mac-address { + when "../len = 'mac'" { + description + "../len = 'Mac'"; + } + type Mac-address; + description + "MAC Addr"; + } + } + + grouping BGP-BAG-LARGECOMM { + description + "Large Community"; + leaf global-admin { + type uint32; + description + "Global Administrator"; + } + leaf local-data1 { + type uint32; + description + "Local Data 1"; + } + leaf local-data2 { + type uint32; + description + "Local Data 2"; + } + } + + grouping SR-SID { + description + "Segement id value"; + leaf type { + type Sr-sid; + description + "Type"; + } + leaf label { + when "../type = 'label'" { + description + "../Type = 'Label'"; + } + type uint32; + description + "MPLS Label value"; + } + leaf ipv4-address { + when "../type = 'ipv4'" { + description + "../Type = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 Address value"; + } + leaf ipv6-address { + when "../type = 'ipv6'" { + description + "../Type = 'IPv6'"; + } + type Ipv6-address; + description + "IPv6 address value"; + } + } + + grouping SR-EXPPATH { + description + "SR Policy Explicit Path"; + leaf weight { + type uint8; + description + "Weight of segment list"; + } + list segment { + description + "Segments in segment list"; + uses SR-SID; + } + } + + grouping BGP-BINDING-SID { + description + "BGP BINDING SID"; + leaf type { + type Bgp-binding-sid; + description + "Type"; + } + leaf label { + when "../type = 'label'" { + description + "../Type = 'label'"; + } + type uint32; + description + "MPLS Label"; + } + leaf ipv6-address { + when "../type = 'v6'" { + description + "../Type = 'v6'"; + } + type Ipv6-address; + description + "IPv6 Addr"; + } + } + + grouping BGP-SRPOLICY-ENTRY { + description + "SR policy Entry"; + container binding-sid { + description + "SR Policy incoming Binding sid"; + uses BGP-BINDING-SID; + } + container allocated-binding-sid { + description + "SR Policy allocated Binding sid by the router"; + uses BGP-BINDING-SID; + } + leaf tunnel-encap-type { + type uint16; + description + "Tunnel Encapsulation Type"; + } + leaf preference { + type uint32; + description + "SR Policy Preference"; + } + leaf state { + type boolean; + description + "SR Policy active state in forwarding"; + } + leaf request-state { + type Bgp-srpolicy-req-state; + description + "SR Policy programming Status"; + } + leaf usable { + type boolean; + description + "SR Policy is usable on this node"; + } + list segment-list { + description + "SR Policy Segment Lists"; + uses SR-EXPPATH; + } + } + + grouping BGP-TUNENCAP-ENTRY { + description + "Tunnel Encap attribute entry"; + container sr-policy { + description + "Tunnel encap type SR policy"; + uses BGP-SRPOLICY-ENTRY; + } + } + + grouping BGP-BAG-PSID-UNK-TLVS { + description + "Prefix-SID Unknown TLVs buffer"; + leaf tlv-count { + type uint16; + description + "Number of unknown TLVs stored"; + } + leaf received-buffer-length { + type uint32; + description + "Received length of unknown TLVs"; + } + list tl-vs-buffer { + description + "Limited buffer of unknown TLVs"; + leaf entry { + type uint8; + description + "Limited buffer of unknown TLVs"; + } + } + } + + grouping BGP-BAG-PSID-SRV6-L3SVC { + description + "Prefix-SID SRv6-l3svc TLV info"; + leaf reserved { + type uint8; + description + "Reserved field"; + } + leaf sub-tlv-count { + type uint16; + description + "Number of subtlvs"; + } + list sub-tlv { + description + "Sub TLVs"; + uses BGP-BAG-PSID-SRV6-SVC-SUBTLV-INFO; + } + } + + grouping BGP-BAG-PSID-SRV6-SVC-SIDINFO-SUBSUBTLV-SID-STRUCT { + description + "BGP BAG PSID SRV6 SVC SIDINFO SUBSUBTLV SID + STRUCT"; + leaf loc-blk-len { + type uint8; + description + "locator blk len"; + } + leaf loc-node-len { + type uint8; + description + "locator node len"; + } + leaf func-len { + type uint8; + description + "Function len"; + } + leaf arg-len { + type uint8; + description + "Argument len"; + } + leaf transpose-len { + type uint8; + description + "Transpose len"; + } + leaf transpose-offset { + type uint8; + description + "Transpose offset"; + } + } + + grouping BGP-BAG-PSID-SRV6-SVC-SIDINFO-SUBSUBTLV-VAL { + description + "Prefix-SID SRv6-svc SUBSUB TLV types"; + container sid-struct { + description + "SIDStruct field"; + uses BGP-BAG-PSID-SRV6-SVC-SIDINFO-SUBSUBTLV-SID-STRUCT; + } + list unknown-buf { + description + "Unknown buff"; + leaf entry { + type uint8; + description + "Unknown buff"; + } + } + } + + grouping BGP-BAG-PSID-SRV6-SVC-SIDINFO-SUBSUBTLV-INFO { + description + "Prefix-SID SRv6-svc SUBSUB TLV info"; + container sub-sub-tlv-val { + description + "Subsub TLV Val"; + uses BGP-BAG-PSID-SRV6-SVC-SIDINFO-SUBSUBTLV-VAL; + } + leaf type { + type uint8; + description + "SUBSUBtlv Type"; + } + leaf length { + type uint16; + description + "SUBSUBTLv length"; + } + } + + grouping BGP-BAG-PSID-SRV6-SVC-SUBSUBTLV-INFO { + description + "Prefix-SID SRv6-svc SUBSUB TLV val"; + leaf reserved2 { + type uint8; + description + "SUB TLV reserved"; + } + leaf sid { + type inet:ipv6-address; + description + "SID new Value"; + } + leaf sid-flags { + type uint8; + description + "SID Flags"; + } + leaf sid-behavior { + type uint16; + description + "SID ENDPT behavior"; + } + leaf reserved3 { + type uint8; + description + "SUB SUB TLV reserved"; + } + leaf sub-sub-tlv-count { + type uint16; + description + "SUB SUB TLV Count"; + } + list sub-sub-tlv { + description + "List of sub sub tlvs"; + uses BGP-BAG-PSID-SRV6-SVC-SIDINFO-SUBSUBTLV-INFO; + } + } + + grouping BGP-BAG-PSID-SRV6-SVC-SUBTLV-VAL { + description + "Prefix-SID SRv6-svc SUB TLV info"; + container sid-info { + description + "SIDinfo field"; + uses BGP-BAG-PSID-SRV6-SVC-SUBSUBTLV-INFO; + } + list unknown-buf { + description + "Unknown buff"; + leaf entry { + type uint8; + description + "Unknown buff"; + } + } + } + + grouping BGP-BAG-PSID-SRV6-SVC-SUBTLV-INFO { + description + "Prefix-SID SRv6-svc TLV val"; + container sub-tlv-val { + description + "Sub TLV Val"; + uses BGP-BAG-PSID-SRV6-SVC-SUBTLV-VAL; + } + leaf type { + type uint8; + description + "Type field"; + } + leaf len { + type uint16; + description + "length of SUB_TLVs"; + } + } + + grouping BGP-BAG-PSID-SRV6-L2SVC { + description + "Prefix-SID SRv6-l2svc TLV info"; + leaf reserved { + type uint8; + description + "Reserved field"; + } + leaf sub-tlv-count { + type uint16; + description + "Number of SIDs"; + } + list sub-tlv { + description + "Sub TLVs"; + uses BGP-BAG-PSID-SRV6-SVC-SUBTLV-INFO; + } + } + + grouping BGP-BAG-SRGB-RANGE { + description + "SRGB Range"; + leaf range-start { + type uint32; + description + "Start of the range for BGP Segment Routing (SR) + global block"; + } + leaf range-end { + type uint32; + description + "End of the range for BGP Segment Routing + (SR)global block"; + } + } + + grouping BGP-BAG-PSID-ORIG-SRGB { + description + "Prefix-SID Orig-SRGB TLV info"; + leaf flags { + type uint16; + description + "Flags field"; + } + leaf range-count { + type uint32; + description + "Number of SRGB ranges"; + } + list range { + description + "List of SRGB ranges"; + uses BGP-BAG-SRGB-RANGE; + } + } + + grouping BGP-BAG-PSID-LABEL-INDEX { + description + "Prefix-SID Label-Index info"; + leaf reserved { + type uint8; + description + "Reserved field"; + } + leaf flags { + type uint16; + description + "Flags field"; + } + leaf label-index { + type uint32; + description + "LabelIndex field"; + } + } + + grouping BGP-PEDISTLBL-ENTRY { + description + "PE distinguisher Label entry"; + leaf pe-address { + type inet:ipv4-address; + description + " PE address"; + } + leaf label { + type uint32; + description + "Label"; + } + } + + grouping BGP-COMMON-ATTR-ENTRY { + description + "Common Set of attribute entry"; + container prefix-sid-label-index { + description + "Prefix-SID LabelIndex TLV info"; + uses BGP-BAG-PSID-LABEL-INDEX; + } + container prefix-sid-orig-srgb { + description + "Prefix-SID OrigSRGB TLV info"; + uses BGP-BAG-PSID-ORIG-SRGB; + } + container prefix-sid-srv6-layer2-svc { + description + "Prefix-SID SRv6L2SVC TLV info"; + uses BGP-BAG-PSID-SRV6-L2SVC; + } + container prefix-sid-srv6-layer3-svc { + description + "Prefix-SID SRv6L3SVC TLV info"; + uses BGP-BAG-PSID-SRV6-L3SVC; + } + container prefix-sid-unk-tlvs { + description + "Prefix-SID UnkTLVs TLV info"; + uses BGP-BAG-PSID-UNK-TLVS; + } + container tunnel-encap { + description + "Tunnel Encapsulation attribute"; + uses BGP-TUNENCAP-ENTRY; + } + leaf is-metric-present { + type boolean; + description + "Metric attribute present"; + } + leaf is-local-pref-present { + type boolean; + description + "Flag to indicate if BGP local preference + attribute is present"; + } + leaf is-atomic-aggregate-present { + type boolean; + description + "Flag to indicate if Atomic aggregate attribute + present"; + } + leaf is-aggregator-present { + type boolean; + description + "Flag to indicate if Aggregator attribute present"; + } + leaf is-origin-present { + type boolean; + description + "Flag to indicate if Origin attribute is present"; + } + leaf is-as-path-present { + type boolean; + description + "AS path attribute present"; + } + leaf is-community-present { + type boolean; + description + "Community attribute present"; + } + leaf is-extended-community-present { + type boolean; + description + "Extended community attribute present"; + } + leaf is-ssa-present { + type boolean; + description + "Flag to indicate if SSA attribute is present"; + } + leaf is-connector-present { + type boolean; + description + "Flag to indicate if BGP attribute Connector is + present"; + } + leaf is-pmsi-present { + type boolean; + description + "PMSI Attribute present"; + } + leaf is-pppmp-present { + type boolean; + description + "PPMP Attribute present"; + } + leaf is-aigp-present { + type boolean; + description + "AIGP Present"; + } + leaf is-pe-distinguisher-label-present { + type boolean; + description + "PE distinguisher label attribute present"; + } + leaf is-ls-attribute-present { + type boolean; + description + "Flag to indicate if BGP link-state attribute + information is present"; + } + leaf is-label-index-present { + type boolean; + description + "Label Index attribute - present - deprecated"; + } + leaf is-prefix-sid-label-index-present { + type boolean; + description + "Prefix-SID LabelIndex present"; + } + leaf is-prefix-sid-orig-srgb-present { + type boolean; + description + "Prefix-SID OrigSRGB present"; + } + leaf is-prefix-sid-srv6-layer3-svc-present { + type boolean; + description + "Prefix-SID SRv6L3SVC present"; + } + leaf is-prefix-sid-srv6-layer2-svc-present { + type boolean; + description + "Prefix-SID SRv6L2SVC present"; + } + leaf is-prefix-sid-unk-tlvs-present { + type boolean; + description + "Prefix-SID UnkTLVs present"; + } + leaf neighbor-as { + type uint32; + description + "Neighbor AS number"; + } + leaf aggregator-as { + type uint32; + description + "AS where aggregation was last performed"; + } + leaf aggregator-address { + type inet:ipv4-address; + description + "Address where aggregation was performed "; + } + leaf metric { + type uint32; + description + "Metric associated with BGP attribute "; + } + leaf local-preference { + type uint32; + description + "Flag to indicate BGP attribute is local"; + } + leaf origin { + type uint16; + description + "BGP common attribute Origin "; + } + leaf as-path { + type string; + description + "BGP Atonomous system path attribute"; + } + leaf extended-community-flags { + type uint8; + description + "BGP attribute Extended community Flags"; + } + leaf originator { + type inet:ipv4-address; + description + "Originator attribute"; + } + leaf l2tpv3-session-id { + type uint32; + description + "BGP attribute Layer2 tunneling protocol version + 3 session id"; + } + leaf connector-type { + type uint16; + description + "BGP attribute Connector Type"; + } + leaf aigp-metric-value { + type uint64; + description + "AIGP metric value"; + } + leaf pmsi-type { + type uint16; + description + "PMSI Type"; + } + leaf pmsi-flags { + type uint8; + description + "PMSI Value"; + } + leaf pmsi-label { + type uint32; + description + "PMSI label"; + } + leaf ppm-pvalue { + type uint32; + description + "PPMP Value"; + } + leaf is-large-community-present { + type boolean; + description + "Large Community attribute present"; + } + list community { + description + "Community attribute"; + leaf entry { + type uint32; + description + "Community attribute"; + } + } + list extended-community { + description + "Extended community attribute"; + leaf entry { + type uint8; + description + "Extended community attribute"; + } + } + list unknown-attribute { + description + "BGP common set of unknown attributes "; + leaf entry { + type uint8; + description + "BGP common set of unknown attributes "; + } + } + list cluster { + description + "Cluster list attribute"; + leaf entry { + type uint32; + description + "Cluster list attribute"; + } + } + list l2tpv3-cookie { + description + "L2TPv3 Cookie"; + leaf entry { + type uint8; + description + "L2TPv3 Cookie"; + } + } + list connector-value { + description + "BGP attribute Connector Value"; + leaf entry { + type uint8; + description + "BGP attribute Connector Value"; + } + } + list pmsi-value { + description + "PMSI Value"; + leaf entry { + type uint8; + description + "PMSI Value"; + } + } + list ls-attr { + description + "BGP LS attribute"; + leaf entry { + type uint8; + description + "BGP LS attribute"; + } + } + list pe-distinguisher-label { + description + "PE distinguisher label attribute"; + uses BGP-PEDISTLBL-ENTRY; + } + list large-community { + description + "Large Community attribute"; + uses BGP-BAG-LARGECOMM; + } + } + + grouping BGP-ATTR { + description + "BGP Attributes"; + container common-attributes { + description + "BGP entry to derive the attribute information"; + uses BGP-COMMON-ATTR-ENTRY; + } + container attr-set { + description + "ATTR_SET attribute"; + uses BGP-COMMON-ATTR-ENTRY; + } + container rnh-addr { + description + "RNH Address"; + uses BGP-ATTR-RNH-ADDR; + } + container ribrnh-ip { + description + "RIB RNH IP Address"; + uses BGP-ADDRTYPE; + } + leaf is-as-path2-byte { + type boolean; + description + "AS path encoded as 2-byte"; + } + leaf is-application-gateway-present { + type boolean; + description + "Flag to indicate if BGP application gateway is + present"; + } + leaf is-attr-set-present { + type boolean; + description + "BGP ATTR_SET attribute present"; + } + leaf set-aigp-inbound-igp { + type boolean; + description + "AIGP set by policy inbound IGP "; + } + leaf set-aigp-inbound-metric { + type boolean; + description + "AIGP set by policy inbound metric"; + } + leaf is-rnh-present { + type boolean; + description + "RNH Attribute present"; + } + leaf is-ribrnh-present { + type boolean; + description + "RIB RNH Attribute present"; + } + leaf attribute-key-number { + type uint32; + description + "Number which is stored per bgp routing table on + attribute key"; + } + leaf attribute-reuse-id-config { + type boolean; + description + "Attribute reuse ID Configured"; + } + leaf attribute-reuse-id-max-id { + type uint32; + description + "Attribute reuse ID maximum ID"; + } + leaf attribute-reuse-id-node { + type uint32; + description + "BGP Attribute reuse ID nodes"; + } + leaf attribute-reuse-id-current { + type uint32; + description + "BGP Attribute reuse ID current ID"; + } + leaf attribute-reuse-id-keys { + type uint32; + description + "Attribute reuse ID allocated keys"; + } + leaf attribute-reuse-id-recover-sec { + type uint32; + units "second"; + description + "Attribute reuse ID timer in seconds"; + } + leaf vpn-distinguisher { + type uint32; + description + "VPN Distinguisher"; + } + leaf rnh-type { + type uint16; + description + "RNH Type"; + } + leaf rnh-len { + type uint8; + description + "RNH Length"; + } + leaf rnh-addr-len { + type uint32; + description + "RNH Address Length"; + } + leaf ribrnh-table { + type uint32; + description + "RIB RNH Table"; + } + leaf ribrnh-mac { + type Mac-address; + description + "RIB RNH MAC Address"; + } + leaf ribrnhip-table { + type uint32; + description + "RIB RNH IP Table"; + } + leaf ribrnh-vni { + type uint32; + description + "RIB RNH Vni"; + } + leaf ribrnh-encap { + type uint8; + description + "RIB RNH Encapsulation Type"; + } + leaf entropy-label-capability { + type boolean; + description + "Entropy label Capability"; + } + } + + grouping BGP-ADVINFO-TYPE { + description + "Peers being advertised to"; + container neighbor-address { + description + "BGP advertised neighbor Address"; + uses BGP-ADDRTYPE; + } + leaf is-neighbor { + type boolean; + description + "Entry is a neighbor (not an update group)"; + } + leaf update-group-afi { + type uint8; + description + "AFI of the Update group it is advertised to"; + } + leaf update-group-number { + type uint32; + description + "Update group index"; + } + } + + grouping BGP-V4-V6 { + description + "The length of the BGP address"; + leaf len { + type Bgp-v4-v6-len; + description + "len"; + } + leaf ipv4-address { + when "../len = 'gwipv4'" { + description + "../len = 'gwipv4'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../len = 'gwipv6'" { + description + "../len = 'gwipv6'"; + } + type Ipv6-address; + description + "IPv6 Addr"; + } + } + + grouping BGP-TE-TUNNEL { + description + "BGP TE TUNNEL"; + leaf tunnel-type { + type Bgp-tunnel; + description + "Nexthop Tunnel Type"; + } + leaf tunnel-name { + type string; + description + "Tunnel name attribute"; + } + leaf is-tunnel-up { + type boolean; + description + "Tunnel Up flag"; + } + leaf is-tunnel-info-stale { + type boolean; + description + "Tunnel is stale"; + } + leaf is-tunnel-registered { + type boolean; + description + "Tunnel registered flag"; + } + leaf is-bgp-te-registered { + type boolean; + description + "BGPTE registered flag"; + } + leaf tunnel-v6-required { + type boolean; + description + "Tunnel need IPv6"; + } + leaf tunnel-v6-enabled { + type boolean; + description + "IPv6 enabled"; + } + leaf tunnel-notif-first-rcvd { + type boolean; + description + "Tunnel first notif received"; + } + leaf tunnel-state-skip-reg { + type boolean; + description + "Skip tunnel registration for Stale entry"; + } + leaf binding-label { + type uint32; + description + "Binding label for the tunnel"; + } + leaf tunnel-if-handle { + type uint32; + description + "Interface handle for the tunnel"; + } + leaf last-tunnel-update { + type uint32; + description + "Time since the last tunnel update happened"; + } + leaf tunnel-color { + type uint32; + description + "Color corresponding to this SR tunnel"; + } + leaf has-tunnel-metric { + type boolean; + description + "This SR-TE tunnel has an admin distance/metric"; + } + leaf tunnel-metric-ad { + type uint32; + description + "Metric admin distance corresponding to this SR + tunnel"; + } + leaf tunnel-metric-value { + type uint32; + description + "Metric value corresponding to this SR tunnel"; + } + leaf is-tunnel-color-only { + type boolean; + description + "Is a Color Only (Null Endpoint) tunnel"; + } + leaf tunnel-endpoint-afi { + type Bgp-afi; + description + "AFI of the Null Endpoint (IPv4/IPv6)"; + } + leaf flags { + type uint32; + description + "SR Tunnel specific flags "; + } + leaf haveu-srv6-bsid { + type boolean; + description + "SRv6 BSID for tunnel present"; + } + leaf srv6u-bsid-address { + type Ipv6-address; + description + "SRv6 uBSID address value"; + } + leaf prefix-path-label-ignore { + type boolean; + description + "BGP steering over SR-Policy with + prefix-path-label ignore"; + } + } + + grouping BGP-PREFIXTYPE { + description + "BGP PREFIXTYPE"; + container prefix { + description + "The Prefix from whichto get the address"; + uses BGP-ADDRTYPE; + } + leaf prefix-length { + type uint16; + description + "BGP prefix length of the route"; + } + } + + grouping BGP-PATH { + description + "BGP Path"; + container bgp-prefix { + description + "BGP prefix"; + uses BGP-PREFIXTYPE; + } + container neighbor-address { + description + "Neighbor address specified in BGP path"; + uses BGP-ADDRTYPE; + } + container next-hop { + description + "BGP Next hop information"; + uses BGP-ADDRTYPE; + } + container nh-tunnel { + description + "Next hop tunnel information"; + uses BGP-TE-TUNNEL; + } + container mdt-group-addr { + description + "IPv4 MDT Group Address for the path"; + uses BGP-ADDRTYPE; + } + container gw-addr { + description + "Path GW Address"; + uses BGP-V4-V6; + } + container nh-addr { + description + "Path next-hop Address"; + uses BGP-V4-V6; + } + container best-path-comp-winner { + description + "Neighbor address of the path which won best path + comparison"; + uses BGP-ADDRTYPE; + } + container mvpn-nbr-addr { + description + "Mvpn nbr Address for the path"; + uses BGP-ADDRTYPE; + } + container mvpn-nexthop-addr { + description + "Mvpn nexthop Address for the path"; + uses BGP-ADDRTYPE; + } + container vpn-nexthop-addr { + description + "Vpn nexthop Address for the path"; + uses BGP-ADDRTYPE; + } + container evpn-imet-pmsi-nexthop-addr { + description + "EVPN IMET PMSI Originator Nexthop Address"; + uses BGP-ADDRTYPE; + } + leaf route-type { + type Bgp-route1; + description + "Route Type of path"; + } + leaf is-path-valid { + type boolean; + description + "Flag to indicate if BGP path attributes are + usable"; + } + leaf is-path-damped { + type boolean; + description + "Flag to indicate if Path suppressed due to + dampening"; + } + leaf is-path-history-held { + type boolean; + description + "Path entry held to remember history"; + } + leaf is-internal-path { + type boolean; + description + "Received over an internal link"; + } + leaf is-best-path { + type boolean; + description + "Best available path"; + } + leaf is-as-best { + type boolean; + description + "Best available path within AS"; + } + leaf is-spkr-as-best { + type boolean; + description + "Best available path within AS in speaker"; + } + leaf is-partial-best { + type boolean; + description + "Partial best path within distributed speaker"; + } + leaf is-aggregation-suppressed { + type boolean; + description + "Path suppressed due to aggregation"; + } + leaf is-import-dampened { + type boolean; + description + "Flag to indicate if BGP path net import is + dampened"; + } + leaf is-import-suspect { + type boolean; + description + "Flag to indicate if BGP path net import is + suspect"; + } + leaf is-path-not-advertised { + type boolean; + description + "Flag to indicate if path is not advertised to + any peer"; + } + leaf is-path-not-advertised-to-ebgp { + type boolean; + description + "Not advertised to EBGPs"; + } + leaf is-path-advertised-local-as-only { + type boolean; + description + "Not advertised outside local AS"; + } + leaf is-path-from-route-reflector { + type boolean; + description + "Path received from route reflector"; + } + leaf is-path-received-only { + type boolean; + description + "Flag to indicate if BGP Path is received only"; + } + leaf is-received-path-not-modified { + type boolean; + description + "Flag to indicate if received path is used + without modification"; + } + leaf is-path-locally-sourced { + type boolean; + description + "Path sourced locally"; + } + leaf is-path-local-aggregate { + type boolean; + description + "Path is a locally created aggregate"; + } + leaf is-path-from-network-command { + type boolean; + description + "Path sourced by network command"; + } + leaf is-path-from-redistribute-command { + type boolean; + description + "Path sourced by redistribute command"; + } + leaf is-path-imported { + type boolean; + description + "Path is imported"; + } + leaf is-path-reoriginated { + type boolean; + description + "Path is reoriginated"; + } + leaf is-path-reoriginated-stitching { + type boolean; + description + "Path is reoriginated with stitching RTs"; + } + leaf is-path-vpn-only { + type boolean; + description + "Path is not in the vrf"; + } + leaf is-path-from-confederation-peer { + type boolean; + description + "Path received from confederation peer"; + } + leaf is-path-synced-with-igp { + type boolean; + description + "Path synchronized with IGP"; + } + leaf is-path-multipath { + type boolean; + description + "Path is one of multipath best routes"; + } + leaf is-path-imp-candidate { + type boolean; + description + "Path is a candidate for multipath import"; + } + leaf is-path-stale { + type boolean; + description + "Stale routes learnt before neighbor restarts"; + } + leaf is-path-long-lived-stale { + type boolean; + description + "Long lived stale routes learnt before neighbor + restarts"; + } + leaf is-path-backup { + type boolean; + description + "Path is a backup path "; + } + leaf is-path-backup-protect-multipath { + type boolean; + description + "Path is a backup path to protect multipaths"; + } + leaf is-path-best-external { + type boolean; + description + "Path is a best external path"; + } + leaf is-path-additional-path { + type boolean; + description + "Flag to indicate BGP Path is an additional-path"; + } + leaf is-path-nexthop-discarded { + type boolean; + description + "Path is redirected to Null0"; + } + leaf has-local-net-label { + type boolean; + description + "Path has local label"; + } + leaf local-label { + type uint32; + description + " BGP Path local label"; + } + leaf igp-metric { + type uint32; + description + "IGP metric to the gateway"; + } + leaf path-weight { + type uint16; + description + "Weight for the path"; + } + leaf neighbor-router-id { + type inet:ipv4-address; + description + "Router ID of the neighbor for the path"; + } + leaf has-mdt-group-addr { + type boolean; + description + "Path has MDT Group Address"; + } + leaf l2vpn-size { + type uint32; + description + "Path block size"; + } + leaf l2vpn-evpn-esi { + type string; + description + "L2VPN EVPN ESI"; + } + leaf evpn-path-flags { + type uint32; + description + "L2VPN EVPN Path flags"; + } + leaf has-gw-addr { + type boolean; + description + "Path has GW Address"; + } + leaf has-nh-addr { + type boolean; + description + "Path has next-hop Address"; + } + leaf nexthop-interface-handle { + type uint32; + description + "Interface Handle of Nexthop"; + } + leaf has-second-label { + type boolean; + description + "Path has second received label"; + } + leaf second-label { + type uint32; + description + "Path second received label"; + } + leaf path-flap-count { + type uint32; + description + "Number of times this route has flapped"; + } + leaf seconds-since-first-flap { + type uint32; + units "second"; + description + "BGP damp info in seconds, since first route + flapped"; + } + leaf time-to-unsuppress { + type uint32; + units "second"; + description + "Seconds until route is unsuppressed"; + } + leaf dampen-penalty { + type uint32; + description + "BGP Dampening penalty"; + } + leaf halflife-time { + type uint32; + description + "Half-life time for the penalty"; + } + leaf suppress-penalty { + type uint32; + description + "Value to start suppressing a route"; + } + leaf reuse-value { + type uint32; + description + "Value to start reusing a route"; + } + leaf maximum-suppress-time { + type uint32; + description + "Maximum duration to suppress a stable route"; + } + leaf best-path-comp-stage { + type Bgp-bp-stage; + description + "Stage where the path lost to the best path or + group best"; + } + leaf best-path-id-comp-winner { + type uint32; + description + "Path ID of the path which won best path + comparison"; + } + leaf path-flags { + type uint64; + description + "Flags associated with path"; + } + leaf path-flags2 { + type uint32; + description + "Flags2 associated with path"; + } + leaf path-import-flags { + type uint32; + description + "Flags to indicate for import processing in BGP"; + } + leaf best-path-id { + type uint32; + description + "Best path ID; DEPRECATED BY LocalPathId"; + } + leaf local-path-id { + type uint32; + description + "Local path ID"; + } + leaf rcvd-path-id { + type uint32; + description + "Received path ID"; + } + leaf path-table-version { + type uint64; + description + "Table version # for pelem"; + } + leaf advertisedto-pe { + type boolean; + description + "Net could be advertised to PE peers"; + } + leaf rib-failed { + type boolean; + description + "Is net failed installed in RIB"; + } + leaf sn-rpki-origin-as-validity { + type uint8; + description + "RPKI origin validation state"; + } + leaf show-rpki-origin-as-validity { + type boolean; + description + "Display validity state ?"; + } + leaf ibgp-signaled-validity { + type boolean; + description + "IBGP signalled validation"; + } + leaf rpki-origin-as-validation-disabled { + type boolean; + description + "RPKI originAS V. Disabled"; + } + leaf accept-own-path { + type boolean; + description + "Accept Own"; + } + leaf accept-own-self-originated-path { + type boolean; + description + "Flag to indicate if BGP path is Accept-Own + community and self-originated"; + } + leaf aigp-metric { + type uint64; + description + "Total AIGP metric"; + } + leaf mvpn-sfs-path { + type boolean; + description + "Flag to indicate if MVPN single forwarder PE + path"; + } + leaf fspec-invalid-path { + type boolean; + description + "Flag to indicate if path is invalidated by + flow-spec rules"; + } + leaf has-mvpn-nbr-addr { + type boolean; + description + "Path has Mvpn nbr Address"; + } + leaf has-mvpn-nexthop-addr { + type boolean; + description + "Path has MVPN nexthop Address"; + } + leaf has-mvpn-pmsi { + type boolean; + description + "Path has MVPN PMSI feedback"; + } + leaf mvpn-pmsi-type { + type uint16; + description + "Mvpn PMSI Type"; + } + leaf mvpn-pmsi-flags { + type uint8; + description + "Mvpn PMSI Value"; + } + leaf mvpn-pmsi-label { + type uint32; + description + "Mvpn PMSI label"; + } + leaf has-mvpn-extcomm { + type boolean; + description + "Path has MVPN EXTCOMM feedback"; + } + leaf mvpn-path-flags { + type uint16; + description + "Multicast Virtual Private Networks specific path + info"; + } + leaf local-nh { + type boolean; + description + "Path has local nexthop"; + } + leaf rt-set-limit-enabled { + type boolean; + description + "Path subject to RT-set net limit"; + } + leaf path-rt-set-id { + type uint32; + description + "RT-set id of the path"; + } + leaf path-rt-set-route-count { + type uint32; + description + "Count in RT-set"; + } + leaf is-path-af-install-eligible { + type boolean; + description + "Path can be installed in AF RIB"; + } + leaf is-permanent-path { + type boolean; + description + "Path is of type Permanent path"; + } + leaf graceful-shutdown { + type boolean; + description + "Marked for graceful shutdown"; + } + leaf labeled-unicast-safi-path { + type boolean; + description + "Path was learnt by labeled-unicast SAFI"; + } + leaf has-vpn-nexthop-addr { + type boolean; + description + "Path has VPN nexthop Address"; + } + leaf is-orig-src-rd-present { + type boolean; + description + "Original Source RD present"; + } + leaf af-name { + type Bgp-afi; + description + "Original Source Address family identifier"; + } + leaf route-distinguisher { + type xr:Route-dist; + description + "Original Source Route Distinguisher"; + } + leaf mac-ip-present { + type boolean; + description + "Mac IP Present present"; + } + leaf mac-ip { + type yang:mac-address; + description + "Mac associated with IP"; + } + leaf ether-tag-id { + type uint32; + description + "Ethernet Tag Id"; + } + leaf igmp-flags-present { + type boolean; + description + "EVPN IGMP Flags Present"; + } + leaf igmp-flags { + type uint8; + description + "EVPN IGMP Flags"; + } + leaf has-srv6-sid-allocated { + type boolean; + description + "Net has SRv6 SID allocated"; + } + leaf srv6-sid-address { + type Ipv6-address; + description + "SRv6 SID address value"; + } + leaf srv6-sid-address-len { + type uint32; + description + "SRv6 SID address Length"; + } + leaf srv6-sid-alloc-mode { + type uint32; + description + "SID alloc mode of SRv6"; + } + leaf srv6-locator { + type string; + description + "SRv6 Locator Name"; + } + leaf evpn-imet-pmsi-originator-present { + type boolean; + description + "EVPN IMET PMSI Originator Nexthop is present"; + } + leaf evpn-imet-pmsi-nexthop-reachable { + type boolean; + description + "Reachability for PMSI Originator nexthop"; + } + leaf path-count { + type uint32; + description + "Number of paths for net"; + } + list rcvd-label { + description + "Path received label stack"; + leaf entry { + type uint32; + description + "Path received label stack"; + } + } + list l2vpn-circuit-status-value { + description + "L2VPN Circuit Status Value"; + leaf entry { + type uint8; + description + "L2VPN Circuit Status Value"; + } + } + list mvpn-pmsi-value { + description + "Mvpn PMSI Value"; + leaf entry { + type uint8; + description + "Mvpn PMSI Value"; + } + } + list extended-community { + description + "Mvpn Extended community attribute"; + leaf entry { + type uint8; + description + "Mvpn Extended community attribute"; + } + } + list local-peers-advertised-to { + description + "Local peers that this prefix has been advertised + to"; + uses BGP-ADVINFO-TYPE; + } + list pe-peers-advertised-to { + description + "PE peers that this prefix has been advertised to"; + uses BGP-ADVINFO-TYPE; + } + list best-path-orrbitfield { + description + "ORR Best path Bitfields"; + uses BGP-ADVINFO-TYPE; + } + list add-path-orrbitfield { + description + "ORR Add path Bitfields"; + uses BGP-ADVINFO-TYPE; + } + } + + grouping BGP-PATH-ADV-BAG { + description + "BGP path with advertised attributes information"; + container neighbor-address-xr { + description + "Neighbor Address"; + uses BGP-ADDRTYPE; + } + container path-info-after-policy-in { + description + "Path information after inbound policy"; + uses BGP-PATH; + } + container path-info-after-policy-out { + description + "Path information after outbound policy"; + uses BGP-PATH; + } + container attributes-after-policy-in { + description + "Attributes after inbound policy"; + uses BGP-ATTR; + } + container attributes-after-policy-out { + description + "Attributes after outbound policy"; + uses BGP-ATTR; + } + leaf no-path { + type boolean; + description + "No path exists All 'sp_path_in' fields except + 'sp_path_in->bag_prefix' are invalid. All + 'sp_path_out' fields are invalid."; + } + leaf af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf route-distinguisher { + type xr:Route-dist; + description + "BGP path with advertised Route Distinguisher"; + } + leaf source-route-distinguisher { + type xr:Route-dist; + description + "BGP path advertised Source Route Distinguisher"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + } + + grouping BGP-RNH-ENTRY-INFO { + description + "BGP RNH ENTRY INFO"; + leaf lrnh-type { + type uint16; + description + "RNH Type"; + } + leaf lrnh-table { + type uint32; + description + "RNH Table ID"; + } + leaf lrnhvni { + type uint32; + description + "RNH VNI"; + } + leaf lrnh-addr { + type inet:ipv4-address; + description + "RNH Address"; + } + leaf lrnh-mac { + type Mac-address; + description + "RNH MAC Address"; + } + leaf frnh-as { + type uint8; + description + "RNH Flags"; + } + leaf rrnh-as { + type uint32; + description + "RNH Refcount"; + } + } + + grouping BGP-L2VPN-EVPN-ESI { + description + "BGP L2VPN EVPN ESI"; + leaf esi { + type yang:hex-string; + description + "esi"; + } + } + + grouping BGP-LRNH-ENTRY-INFO { + description + "BGP LRNH ENTRY INFO"; + container local-rnhesi { + description + "Local RNH ESI"; + uses BGP-L2VPN-EVPN-ESI; + } + leaf lrnh-present { + type boolean; + description + "RNH present boolean"; + } + leaf lrnh-type { + type uint16; + description + "RNH Type"; + } + leaf lrnhvni { + type uint32; + description + "RNH VNI"; + } + leaf lrnh-addr { + type inet:ipv4-address; + description + "RNH Address"; + } + leaf lrnhv6-addr { + type inet:ipv6-address; + description + "RNH IPv6 Address"; + } + leaf lrnh-mac { + type Mac-address; + description + "RNH MAC Address"; + } + } + + grouping BGP-RNH-BAG { + description + "BGP RNH"; + leaf lrnh-table { + type uint32; + description + "RNH Table ID"; + } + list local-rnh-entry { + max-elements "2"; + description + "Local RNH Entries"; + uses BGP-LRNH-ENTRY-INFO; + } + list rnh-entry-info { + description + "List of Dependency Tables "; + uses BGP-RNH-ENTRY-INFO; + } + } + + grouping BGP-EDM-RPKI-REFRESH-ENTRY { + description + "BGP EDM RPKI REFRESH ENTRY"; + leaf af-name { + type Bgp-rpki-af; + description + "Address Family"; + } + leaf neighbor { + type string; + description + "BGP neighbor"; + } + leaf policy { + type string; + description + "Route Policy"; + } + leaf paths { + type uint32; + description + "Number of BGP paths modified or dropped"; + } + leaf drop { + type boolean; + description + "BGP paths were dropped"; + } + } + + grouping BGP-RPKI-REFRESH-LIST-BAG { + description + "BGP RPKI REFRESH LIST BAG"; + list refresh-entry { + description + "Array of refresh entries"; + uses BGP-EDM-RPKI-REFRESH-ENTRY; + } + } + + grouping BGP-UPDERR-VRF-BAG { + description + "BGP Update error-handling VRF information"; + container last-update-malformed-timestamp { + description + "Last malformed messages received time: time + elapsed since 00:00:00 UTC, January 1, 1970"; + uses BGP-TIMESPEC; + } + leaf update-vrf-name { + type string; + description + "VRF Name"; + } + leaf update-malformed-message-count { + type uint32; + description + "BGP virtual routing & forwarding malformed + messages count"; + } + leaf update-malformed-neighbor-count { + type uint32; + description + "Count of neighbors that received malformed + messages"; + } + leaf last-update-malformed-age { + type uint32; + units "second"; + description + "Time since last malformed messages received + event (in seconds)"; + } + } + + grouping BGP-NBR-BRIEF-BAG { + description + "BGP Neighbor brief Information"; + container connection-local-address { + description + "Local address for the connection"; + uses BGP-ADDRTYPE; + } + container connection-remote-address { + description + "Remote address for the connection"; + uses BGP-ADDRTYPE; + } + leaf speaker-id { + type uint8; + description + "Speaker this neighbor is allocated to"; + } + leaf description { + type string; + description + "BGP neighbor brief description"; + } + leaf local-as { + type uint32; + description + "Local AS number"; + } + leaf remote-as { + type uint32; + description + "Remote AS number"; + } + leaf messages-sent { + type uint32; + description + "Number of messages sent"; + } + leaf messages-queued-in { + type uint32; + description + "No. of msgs on receive queue"; + } + leaf messages-queued-out { + type uint32; + description + "No. of messages on send queue"; + } + leaf connection-state { + type Bgp-conn-state; + description + "State of connection"; + } + leaf is-local-address-configured { + type boolean; + description + "Local address configured for the neighbor + connection"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf nsr-enabled { + type boolean; + description + "Neighbor supports NSR"; + } + leaf nsr-state { + type Bgp-sync-nbr-nsr-state; + description + "NSR state"; + } + leaf postit-pending { + type boolean; + description + "Nbr has postits pending"; + } + leaf connection-established-time { + type uint32; + units "second"; + description + "Time (in secs) that the connection has been + established"; + } + leaf bmp-server-id { + type int32; + description + "BMP Server id"; + } + list neighbor-version { + max-elements "25"; + description + "BGP neighbor version for alladdress-families"; + leaf entry { + type uint64; + description + "BGP neighbor version for alladdress-families"; + } + } + } + + grouping BGP-TIMESPEC { + description + "BGP TIMESPEC"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds part of time value"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds part of time value"; + } + } + + grouping BGP-UPDGEN-STATS-BAG { + description + "BGP Update generation common statistics + information"; + container last-update-discard-timestamp { + description + "Last Discarded time"; + uses BGP-TIMESPEC; + } + container last-update-cleared-timestamp { + description + "Last Cleared time"; + uses BGP-TIMESPEC; + } + container last-update-throttle-timestamp { + description + "Last Throttled time"; + uses BGP-TIMESPEC; + } + container last-update-recovery-timestamp { + description + "Last Recovery time"; + uses BGP-TIMESPEC; + } + container last-update-memory-allocation-fail-timestamp { + description + "Memory allocation failure time"; + uses BGP-TIMESPEC; + } + leaf update-out-queue-messages-high { + type uint32; + description + "OutQueue High Messages"; + } + leaf update-out-queue-messages-cumulative { + type uint32; + description + "OutQueue Cumulative Messages"; + } + leaf update-out-queue-messages-discarded { + type uint32; + description + "OutQueue Discarded Messages"; + } + leaf update-out-queue-messages-cleared { + type uint32; + description + "OutQueue Cleared Messages"; + } + leaf update-out-queue-size-high { + type uint32; + description + "OutQueue Hi Size"; + } + leaf update-out-queue-size-cumulative { + type uint64; + description + "OutQueue Cumulative Size"; + } + leaf update-out-queue-size-discarded { + type uint64; + description + "OutQueue Discarded Size"; + } + leaf update-out-queue-size-cleared { + type uint64; + description + "OutQueue Cleared Size"; + } + leaf last-update-discard-age { + type uint32; + units "second"; + description + "Time since last Discard event (in seconds)"; + } + leaf last-update-cleard-age { + type uint32; + units "second"; + description + "Time since last Clear event (in seconds)"; + } + leaf update-throttle-count { + type uint32; + description + "Throttle Count"; + } + leaf last-update-throttle-age { + type uint32; + units "second"; + description + "Time since last Throttle event (in seconds)"; + } + leaf update-recovery-count { + type uint32; + description + "Recovery Count"; + } + leaf last-update-recovery-age { + type uint32; + units "second"; + description + "Time since last Recovery event (in seconds)"; + } + leaf update-memory-allocation-fail-count { + type uint32; + description + "Number of times there was failure when + allocatingmemory for BGP update generation"; + } + leaf last-update-memory-allocation-fail-age { + type uint32; + units "second"; + description + "Time since last memory allocation failure event + (in seconds)"; + } + } + + grouping BGP-UPDGEN-AF-SUMMARY-BAG { + description + "BGP Update generation address-family summary + information"; + leaf update-group-af-name { + type Bgp-afi; + description + "Address family identifier"; + } + leaf current-update-limit-af { + type uint32; + description + "BGP address-family current AF update limit"; + } + leaf update-out-queue-messages { + type uint32; + description + "OutQueue messages"; + } + leaf update-out-queue-size { + type uint32; + description + "OutQueue size"; + } + leaf update-throttled { + type boolean; + description + "BGP sub-group updates throttled because write + limit reached"; + } + leaf update-update-group-count { + type uint32; + description + "Update-group count"; + } + leaf update-sub-group-count { + type uint32; + description + "Sub-group count"; + } + leaf sub-group-throttled-count { + type uint32; + description + "Throttled sub-group count"; + } + leaf refresh-sub-group-count { + type uint32; + description + "BGP address-family refresh sub-group count"; + } + leaf refresh-sub-group-throttled-count { + type uint32; + description + "Throttled refresh sub-group count"; + } + leaf filter-group-count { + type uint32; + description + "BGP address-family filter-group count"; + } + leaf neighbor-count { + type uint32; + description + "BGP sub-group neighbor count"; + } + } + + grouping BGP-UPDGEN-PROC-BAG { + description + "BGP Update generation Process information"; + container update-statistics { + description + "BGP process update statistics"; + uses BGP-UPDGEN-STATS-BAG; + } + leaf update-out-logging { + type boolean; + description + "Enable syslog messages for update generation + events"; + } + leaf current-update-limit-process { + type uint32; + description + "Current Process update limit"; + } + leaf configured-update-limit-process { + type uint32; + description + "Configured Process update limit"; + } + leaf update-out-queue-messages { + type uint32; + description + "OutQueue messages"; + } + leaf update-out-queue-size { + type uint32; + description + "OutQueue size"; + } + leaf update-throttled { + type boolean; + description + "Flag for BGP address-family summary updates + throttled"; + } + list update-address-family { + description + "List of address-families"; + uses BGP-UPDGEN-AF-SUMMARY-BAG; + } + } + + grouping BGP-CONFIG-RELATIVES-BAG { + description + "BGP config ancestors/children information"; + container neighbor-address-xr { + description + "Neighbor Address"; + uses BGP-ADDRTYPE; + } + container af-independent-relatives { + description + "The relatives of theindependent address-family"; + uses BGP-CONFIG-ENTID; + } + leaf group-name { + type string; + description + "Entity/group name"; + } + leaf configuration-type { + type Bgp-entities; + description + "Entity type"; + } + leaf address-family-identifier { + type string; + description + "AF identifier"; + } + list af-dependent-relative { + max-elements "25"; + description + "The relatives of thedependent address-family"; + uses BGP-CONFIG-ENTID; + } + } + + grouping BGP-AF-DEP { + description + "BGP AF-dependent configuration information"; + container orf-capability-info { + description + "ORF capability item info"; + uses BGP-CONFIG-INFO; + } + container default-originate-info { + description + "The configuration of the defaultinformation + originate"; + uses BGP-CONFIG-INFO; + } + container max-prefixes-info { + description + "Maximum prefixes to accept item info"; + uses BGP-CONFIG-INFO; + } + container orr-group-info { + description + "ORR group info"; + uses BGP-CONFIG-INFO; + } + container next-hop-self-info { + description + "Nexthop attribute for receivedupdates to its own + IP address"; + uses BGP-CONFIG-INFO; + } + container next-hop-unchanged-info { + description + "An attribute is unchanged for nexthop"; + uses BGP-CONFIG-INFO; + } + container route-policy-in-info { + description + "Inbound route policy item info"; + uses BGP-CONFIG-INFO; + } + container route-policy-out-info { + description + "Outbound route policy item info"; + uses BGP-CONFIG-INFO; + } + container prefix-filter-info { + description + "Inbound prefix based filter item info"; + uses BGP-CONFIG-INFO; + } + container route-policy-retention-info { + description + "Inbound Retention policy item info"; + uses BGP-CONFIG-INFO; + } + container remove-private-as-info { + description + "Outbound private-AS removal item info"; + uses BGP-CONFIG-INFO; + } + container remove-private-as-in-info { + description + "Inbound private-AS removal item info"; + uses BGP-CONFIG-INFO; + } + container route-reflector-info { + description + "Route-reflector client item info"; + uses BGP-CONFIG-INFO; + } + container legacy-pe-rt-info { + description + "Accept-legacy-pe-RT item info"; + uses BGP-CONFIG-INFO; + } + container af-enabled-info { + description + "Address family activate item info"; + uses BGP-CONFIG-INFO; + } + container send-community-info { + description + "Send community attribute item info"; + uses BGP-CONFIG-INFO; + } + container send-graceful-shutdown-community-info { + description + "Send Graceful shutdown related community + attribute item info"; + uses BGP-CONFIG-INFO; + } + container send-extended-community-info { + description + "Sending information aboutBGP extended community"; + uses BGP-CONFIG-INFO; + } + container soft-reconfig-info { + description + "Information about the BGPsoft-reconfig"; + uses BGP-CONFIG-INFO; + } + container so-o-info { + description + "BGP Site-of-Origin info"; + uses BGP-CONFIG-INFO; + } + container upd-orig-loopchk-disable-info { + description + "Disable originator loopchk info"; + uses BGP-CONFIG-INFO; + } + container weight-info { + description + "Default weight item info"; + uses BGP-CONFIG-INFO; + } + container allowas-in-info { + description + "Allowas-in item info"; + uses BGP-CONFIG-INFO; + } + container af-long-lived-graceful-start-stale-time-info { + description + "Long-lived-time item info"; + uses BGP-CONFIG-INFO; + } + container af-long-lived-graceful-start-capable-info { + description + "Long-lived-time item info"; + uses BGP-CONFIG-INFO; + } + container as-override-info { + description + "Overriding the autonomous number"; + uses BGP-CONFIG-INFO; + } + container aigp-info { + description + "AIGP info "; + uses BGP-CONFIG-INFO; + } + container aigp-cost-community-info { + description + "AIGP Cost Community info "; + uses BGP-CONFIG-INFO; + } + container aigp-med { + description + "AIGP MED info "; + uses BGP-CONFIG-INFO; + } + container accept-own-info { + description + "Information of an attributeaccept own"; + uses BGP-CONFIG-INFO; + } + container multipath-info { + description + "Information about BGP multipath"; + uses BGP-CONFIG-INFO; + } + container fspec-valid-info { + description + "FSPEC Valid info"; + uses BGP-CONFIG-INFO; + } + container next-hop-unchanged-mpath-info { + description + "Next hop attribute is unchangedin multipath"; + uses BGP-CONFIG-INFO; + } + container permanent-network-info { + description + "BGP network is permanent"; + uses BGP-CONFIG-INFO; + } + container send-mcast-attr-info { + description + "Sending the BGP multicast attributeinformation"; + uses BGP-CONFIG-INFO; + } + container advertise-v4-afi-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-v6-afi-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-l2vpn-evpn-afi-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-dis-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-def-vrf-imp-disable-afi-v4-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-def-vrf-imp-disable-afi-v6-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-vrf-re-imp-disable-afi-v4-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-vrf-re-imp-disable-afi-v6-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-vrf-evpn-re-imp-disable-afi-v4-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-vrf-evpn-re-imp-disable-afi-v6-info { + description + "Advertise Afi Info "; + uses BGP-CONFIG-INFO; + } + container af-encapsulation-type-info { + description + "The type of the encapsulation"; + uses BGP-CONFIG-INFO; + } + container import-afi-info { + description + "Import Afi Info "; + uses BGP-CONFIG-INFO; + } + container advertise-local-labeled-route-info { + description + "Advertise routes with local-label"; + uses BGP-CONFIG-INFO; + } + container enforce-multiple-labels-info { + description + "BGP multiple lables enforcementinformation"; + uses BGP-CONFIG-INFO; + } + container cluster-id-allow-equal-info { + description + "Cluster ID check disabled info. This is the + check that allows BGP to accept routes that + contain a cluster list in which the first + cluster ID is not equal to therouter's own + cluster ID."; + uses BGP-CONFIG-INFO; + } + container srv6-version4-info { + description + "Enable srv6 version 4"; + uses BGP-CONFIG-INFO; + } + container slow-peer-info { + description + "Slow peer related information"; + uses BGP-CONFIG-INFO; + } + container entropy-label-advertise-disable-info { + description + "Disable Entropy Label propagation"; + uses BGP-CONFIG-INFO; + } + container replace-private-as-info { + description + "Outbound private-AS replace item info"; + uses BGP-CONFIG-INFO; + } + container addpath-receive-capability-info { + description + "BGP configuration additional pathcapability of + receiving"; + uses BGP-CONFIG-INFO; + } + container addpath-send-capability-info { + description + "BGP configuration additional pathcapability of + sending"; + uses BGP-CONFIG-INFO; + } + container evpn-gateway-ip-advertisement-disable-info { + description + "BGP configuration for EVPN AF advertise + gateway-ip disable"; + uses BGP-CONFIG-INFO; + } + leaf has-orf-capability { + type uint32; + description + "ORF capability"; + } + leaf is-default-originate-not-disabled { + type boolean; + description + "Flag to indicate defaultoriginate is not + disabled"; + } + leaf address-family-identifier { + type string; + description + "Address Family Name"; + } + leaf default-originate-route-policy { + type string; + description + "The name of the default-originateroute policy"; + } + leaf max-prefixes { + type uint32; + description + "Maximum prefixes to accept"; + } + leaf max-prefix-warn-threshold { + type uint32; + description + "Warning message threshhold"; + } + leaf is-max-prefix-warn-only { + type boolean; + description + "Warning messages only"; + } + leaf max-prefix-restart-time { + type uint32; + description + "Restart time Value"; + } + leaf orrg-roup-name { + type string; + description + "Name of Optimal Route reflectiongroup the + neighbor is part of"; + } + leaf is-max-prefix-discard-extra-paths { + type boolean; + description + "Discard extra paths"; + } + leaf is-next-hop-self-disabled { + type boolean; + description + "Disable next-hop calc"; + } + leaf is-next-hop-unchanged { + type boolean; + description + "Don't change next-hop"; + } + leaf permanent-network { + type boolean; + description + "Flag to indicate BGP networkis permanent"; + } + leaf route-policy-in { + type string; + description + "Inbound route policy name"; + } + leaf route-policy-out { + type string; + description + "Outbound route policy name"; + } + leaf prefix-orf-filter { + type string; + description + "Inbound prefix based filter"; + } + leaf route-policy-ret { + type string; + description + "Inbound route retention route-policy name"; + } + leaf remove-private-as-out { + type boolean; + description + "Outbound private-AS removal"; + } + leaf entire-aspath-out { + type boolean; + description + "Outbound private-AS removalif the entire AS Path + hasprivate ASes"; + } + leaf remove-private-as-int { + type boolean; + description + "Remove private-AS internalif the internal AS + Path hasprivate ASes"; + } + leaf remove-private-asin { + type boolean; + description + "Inbound private-AS removal"; + } + leaf entire-aspath-in { + type boolean; + description + "Inbound private-AS removal if the entire AS Path + has private ASes"; + } + leaf client-route-reflector { + type boolean; + description + "Route-reflector client"; + } + leaf accept-route-legacy-pe-rt { + type boolean; + description + "accept-legacy-pe RT route"; + } + leaf is-af-enabled { + type boolean; + description + "Entity is activated for this address family"; + } + leaf send-community-attribute { + type boolean; + description + "Flag to indicate communityattribute is sent"; + } + leaf send-graceful-shut-community-attributes { + type boolean; + description + "Flag to indicate graceful shutdown related + community attributes are sent"; + } + leaf send-extended-community-attribute { + type boolean; + description + "Flag to indicate BGP extended community + attribute is sent"; + } + leaf soft-reconfig-not-disabled { + type boolean; + description + "Flag to indicate if BGP soft reconfiguration is + not disabled"; + } + leaf alway-use-soft-reconfig { + type boolean; + description + "Flag to indicate if soft reconfig is always used"; + } + leaf upd-orig-loopchk-disable { + type boolean; + description + "Disable originator loop check"; + } + leaf site-of-origin { + type string; + description + "The routes that are originatedfrom site"; + } + leaf default-weight { + type uint32; + description + "The default value of the BGP weight"; + } + leaf default-allowas { + type uint32; + description + "Default allowas_in count"; + } + leaf af-retention-stale-time { + type uint32; + description + "Stale time in route retention"; + } + leaf af-ret-policy { + type string; + description + "Retention route policy name"; + } + leaf af-long-lived-graceful-restart-stale-time-send { + type uint32; + description + "Stale time to be sent in long-lived + graceful-restart capability"; + } + leaf af-long-lived-graceful-restart-stale-time-accept { + type uint32; + description + "Maxmimum acceptable long-lived stale time + acceptable from neighbor"; + } + leaf af-long-lived-graceful-restart-capable { + type uint32; + description + "The time of the long-lived BGPgraceful-restart"; + } + leaf is-as-override-disabled { + type boolean; + description + "Disable as override"; + } + leaf is-aigp-enabled { + type boolean; + description + "AIGP enabled"; + } + leaf is-aigp-cost-community-enabled { + type boolean; + description + "Flag to indicate cost of theAIGP community is + enabled"; + } + leaf is-aigp-cost-community-id { + type uint32; + description + "AIGP cost community ID"; + } + leaf is-aigp-cost-community-transitive { + type uint32; + description + "AIGP cost community ID is transitive"; + } + leaf aigp-cost-community-poi { + type uint32; + description + "Point of insertion for AIGP cost community"; + } + leaf is-aigp-med-enabled { + type boolean; + description + "AIGP to MED enabled"; + } + leaf accept-own { + type boolean; + description + "Accept Own"; + } + leaf multipath { + type boolean; + description + "Flag to indicate BGP multipath"; + } + leaf is-fspec-valid-enabled { + type boolean; + description + "FSPEC VALID enabled"; + } + leaf is-next-hop-unchanged-mpath { + type boolean; + description + "Don't change mpath next-hop"; + } + leaf is-send-mcast-attr-enabled { + type boolean; + description + "Flag to indicate multicastattribute enabled is + sent"; + } + leaf advertise-v4 { + type uint8; + description + "Advertise afi"; + } + leaf advertise-v6 { + type uint8; + description + "Advertise afi"; + } + leaf advertise-l2vpn-evpn { + type uint8; + description + "Advertise afi"; + } + leaf advertise-disable { + type uint8; + description + "Advertise afi"; + } + leaf advertise-def-vrf-imp-disable-v4 { + type uint8; + description + "Advertise afi"; + } + leaf advertise-def-vrf-imp-disable-v6 { + type uint8; + description + "Advertise afi"; + } + leaf advertise-vrf-re-imp-disable-v4 { + type uint8; + description + "Advertise afi"; + } + leaf advertise-vrf-re-imp-disable-v6 { + type uint8; + description + "Advertise afi"; + } + leaf advertise-vrf-evpn-re-imp-disable-v4 { + type uint8; + description + "Advertise afi"; + } + leaf advertise-vrf-evpn-re-imp-disable-v6 { + type uint8; + description + "Advertise afi"; + } + leaf encapsulation-type { + type uint32; + description + "The type of the BGP encapsulation"; + } + leaf import { + type boolean; + description + "Flag to indicate BGP importing"; + } + leaf import-stitching { + type boolean; + description + "Flag to indicate if BGP stitching RTs are + imported"; + } + leaf import-reoriginate { + type boolean; + description + "Flag to indicate reoriginate import"; + } + leaf import-reoriginate-stitching { + type boolean; + description + "Flag to indicate reoriginate stitchingis + imported in RTs"; + } + leaf advertise-local-labeled-route { + type uint32; + description + "Advertise routes with local-label"; + } + leaf enforce-multiple-labels { + type uint32; + description + "BGP multiple labels enforced"; + } + leaf srv6-version4 { + type boolean; + description + "SRV6 Version4 compatible neighbor"; + } + leaf cluster-id-check-disabled { + type boolean; + description + "Flag to indicate cluster ID check is disabled. + This allows BGP to accept routes that may + contain a cluster list in which the first + cluster ID is not equal to the router's own + cluster ID."; + } + leaf slow-peer-static-flag { + type boolean; + description + "Slow peer static enabled"; + } + leaf slow-peer-dynamic-flag { + type boolean; + description + "Slow peer dynamic enabled"; + } + leaf slow-peer-dynamic-threshold { + type uint16; + description + "Threshold for dynamic slow peer detection"; + } + leaf slow-peer-dynamic-disable { + type boolean; + description + "Slow peer dynamic disable"; + } + leaf rpki-options { + type uint32; + description + "Options to indicate if rpki tested paths are to + be stored"; + } + leaf entropy-label-advertise-disable { + type boolean; + description + "Disable Entropy Label propagation"; + } + leaf replace-private-as-out { + type boolean; + description + "Outbound private-AS replace"; + } + leaf addpath-receive-capability { + type uint32; + description + "Indicates if addpath receive capability is + enabled or disabled"; + } + leaf addpath-send-capability { + type uint32; + description + "Indicates if addpath send capability is enabled + or disabled"; + } + leaf evpn-gateway-ip-advertisement-disable { + type boolean; + description + "EVPN Gateway IP Advertisement Disable"; + } + } + + grouping BGP-CONFIG-ENTID { + description + "BGP config group entity identification"; + list bgp-config-entid { + description + "Next entry in the list"; + container neighbor-address { + description + "Ip address of the neighor"; + uses BGP-ADDRTYPE; + } + leaf address-family-identifier { + type string; + description + "Identifier of the BGPconfig group entity"; + } + leaf configuration-type { + type Bgp-entities; + description + "Entity type"; + } + leaf group-name { + type string; + description + "Name of the BGP configgroup entity"; + } + } + } + + grouping BGP-CONFIG-INFO { + description + "BGP item config information"; + container inheritance-chain { + description + "Pointer to the inheritance chain"; + uses BGP-CONFIG-ENTID; + } + leaf is-item-configured { + type boolean; + description + "TRUE if the item value is a configured value + different from the default"; + } + } + + grouping BGP-AF-INDEP { + description + "BGP AF-independent configuration information"; + container local-ip-address { + description + "Local ipv4 or ipv6 address for neighbor + connection"; + uses BGP-ADDRTYPE; + } + container local-address-subnet { + description + "local address ipv4 or ipv6 address mask"; + uses BGP-ADDRTYPE; + } + container remote-as-info { + description + "Remote AS number item info"; + uses BGP-CONFIG-INFO; + } + container speaker-id-info { + description + "Configured speaker ID item info"; + uses BGP-CONFIG-INFO; + } + container min-advertisement-info { + description + "Minimum advertisement interval item info"; + uses BGP-CONFIG-INFO; + } + container description-info { + description + "Description informationof BGP configuration"; + uses BGP-CONFIG-INFO; + } + container ebgp-hop-count-info { + description + "EBGP neighbors hop count item info"; + uses BGP-CONFIG-INFO; + } + container tcpmss-info { + description + "TCP Maximum Segment Size item info"; + uses BGP-CONFIG-INFO; + } + container tcpmtu-info { + description + "TCP Path MTU Discovery item info"; + uses BGP-CONFIG-INFO; + } + container bmp-servers-info { + description + "BMP Servers Configuredinfo"; + uses BGP-CONFIG-INFO; + } + container keychain-info { + description + "Neighbor Keychain item info"; + uses BGP-CONFIG-INFO; + } + container local-as-info { + description + "Local AS number item info"; + uses BGP-CONFIG-INFO; + } + container password-info { + description + "Neighbor password item info"; + uses BGP-CONFIG-INFO; + } + container receive-buffer-info { + description + "Receive buffer sizes item info"; + uses BGP-CONFIG-INFO; + } + container send-buffer-info { + description + "Send buffer sizes item info"; + uses BGP-CONFIG-INFO; + } + container shutdown-info { + description + "Shutdown item info"; + uses BGP-CONFIG-INFO; + } + container timers-info { + description + "Timers item info"; + uses BGP-CONFIG-INFO; + } + container local-address-info { + description + "Local address for theBGP configuration"; + uses BGP-CONFIG-INFO; + } + container msg-log-in-info { + description + "Message Log Inbound item info"; + uses BGP-CONFIG-INFO; + } + container msg-log-out-info { + description + "Message Log Outbound item info"; + uses BGP-CONFIG-INFO; + } + container update-source-info { + description + "Updating the source information"; + uses BGP-CONFIG-INFO; + } + container local-address-subnet-info { + description + "Local address of the subnet"; + uses BGP-CONFIG-INFO; + } + container dmz-link-bandwidth-info { + description + "DMZ link bandwidth item "; + uses BGP-CONFIG-INFO; + } + container ebgp-recv-dmz-info { + description + "EBGP receive DMZ link bandwidth item info"; + uses BGP-CONFIG-INFO; + } + container ebgp-send-dmz-info { + description + "EBGP send DMZ link bandwidth item info"; + uses BGP-CONFIG-INFO; + } + container ttl-security-info { + description + "BGP TTL Security item info"; + uses BGP-CONFIG-INFO; + } + container session-open-mode-info { + description + "TCP conn open mode info"; + uses BGP-CONFIG-INFO; + } + container bfd-info { + description + "BFD item info"; + uses BGP-CONFIG-INFO; + } + container bfd-mininterval-info { + description + "BFD Mininterval item info"; + uses BGP-CONFIG-INFO; + } + container bfd-multiplier-info { + description + "BFD Multiplier item info"; + uses BGP-CONFIG-INFO; + } + container tos-info { + description + "TOS item info"; + uses BGP-CONFIG-INFO; + } + container nsr-disabled-info { + description + "NSR item info"; + uses BGP-CONFIG-INFO; + } + container graceful-restart-disabled-info { + description + "Information of disabled gracefulrestart"; + uses BGP-CONFIG-INFO; + } + container graceful-restart-helper-info { + description + "Information of helper mode gracefulrestart"; + uses BGP-CONFIG-INFO; + } + container nbr-restart-time-info { + description + "Restart time item info"; + uses BGP-CONFIG-INFO; + } + container nbr-stale-path-time-info { + description + "Stale-path time item info"; + uses BGP-CONFIG-INFO; + } + container nbr-enforce-first-as-info { + description + "Neighbor enforce first AS info"; + uses BGP-CONFIG-INFO; + } + container cluster-id-info { + description + "Cluster ID item info"; + uses BGP-CONFIG-INFO; + } + container ignore-connected-info { + description + "Connection information is ignored"; + uses BGP-CONFIG-INFO; + } + container internal-vpn-client-info { + description + "Internal VPN Client Info"; + uses BGP-CONFIG-INFO; + } + container addpath-send-capability-info { + description + "BGP configuration additional pathcapability of + sending"; + uses BGP-CONFIG-INFO; + } + container addpath-receive-capability-info { + description + "BGP configuration additional pathcapability of + receiving"; + uses BGP-CONFIG-INFO; + } + container egress-peer-engineering-info { + description + "Information for the peers egresstraffic"; + uses BGP-CONFIG-INFO; + } + container epe-peer-set-segment-id-info { + description + "Information for the EPE Peer set"; + uses BGP-CONFIG-INFO; + } + container epe-peer-segment-id-info { + description + "Information for the EPE Peer SID"; + uses BGP-CONFIG-INFO; + } + container update-error-handling-no-reset-info { + description + "Error-handling avoid-reset config info"; + uses BGP-CONFIG-INFO; + } + container prefix-validation-disable-info { + description + "RPKI disable info"; + uses BGP-CONFIG-INFO; + } + container prefix-validation-use-validit-info { + description + "RPKI use validity"; + uses BGP-CONFIG-INFO; + } + container prefix-validation-allow-invalid-info { + description + "RPKI allow invalid info"; + uses BGP-CONFIG-INFO; + } + container prefix-validation-signal-ibgp-info { + description + "RPKI signal ibgp info"; + uses BGP-CONFIG-INFO; + } + container neighbor-update-filter-exists-info { + description + "Neighbor update filter configuration info"; + uses BGP-CONFIG-INFO; + } + container neighbor-update-filter-message-buffer-count-info { + description + "Number of neighbor messages filtered"; + uses BGP-CONFIG-INFO; + } + container neighbor-update-filter-syslog-disable-info { + description + "Update in filtering loggingdisable"; + uses BGP-CONFIG-INFO; + } + container neighbor-update-filter-attribute-info { + description + "Update in filteringattribute filter group"; + uses BGP-CONFIG-INFO; + } + container graceful-shutdown-info { + description + "Graceful BGP session shutdown"; + uses BGP-CONFIG-INFO; + } + container graceful-shutdown-loc-pref-info { + description + "The local prefrence for graceful shutdown"; + uses BGP-CONFIG-INFO; + } + container graceful-shutdown-as-prepends-info { + description + "GracefulShutdownASPrepends info"; + uses BGP-CONFIG-INFO; + } + container graceful-shutdown-activate-info { + description + "Information for the activation ofgraceful + shutdown"; + uses BGP-CONFIG-INFO; + } + container graceful-shutdown-bandwidth-aware-info { + description + "Bandwidth-Aware Graceful-Maintenance + configuration info"; + uses BGP-CONFIG-INFO; + } + container update-in-safi14-merge-info { + description + "Merge SAFI-1 and SAFI-4 updates from neighbor + info"; + uses BGP-CONFIG-INFO; + } + container capability-negotiation-suppressed-info { + description + "Information for the negotiation of suppressed + capability"; + uses BGP-CONFIG-INFO; + } + container suppress4-bbyte-as-info { + description + "BGP suppress 4byte-as item info"; + uses BGP-CONFIG-INFO; + } + container neighbor-remote-as-list-info { + description + "Neighbor range remote-as-list group info"; + uses BGP-CONFIG-INFO; + } + container max-peers-info { + description + "Max dynamic nbrs in range info"; + uses BGP-CONFIG-INFO; + } + container idle-watch-time-info { + description + "Idle Watch time item info"; + uses BGP-CONFIG-INFO; + } + container ao-keychain-info { + description + "Neighbor AO keychain item info"; + uses BGP-CONFIG-INFO; + } + container extended-nh-encoding-capability-suppressed-info { + description + "Information for the extended nexthop encoding + capability"; + uses BGP-CONFIG-INFO; + } + container default-policy-action-inbound-info { + description + "Information on default policy action when + inbound policy is not satidfied"; + uses BGP-CONFIG-INFO; + } + container default-policy-action-outbound-info { + description + "Information on default policy action when + outbound policy is not satidfied"; + uses BGP-CONFIG-INFO; + } + container log-up-down-configured-info { + description + "Neighbor log state change enabled"; + uses BGP-CONFIG-INFO; + } + container log-up-down-disable-configured-info { + description + "Neighbor log state change disabled"; + uses BGP-CONFIG-INFO; + } + leaf remote-as-number-xx { + type uint32; + description + "First half of Remote ASN"; + } + leaf remote-as-number-yy { + type uint32; + description + "Second half of Remote ASN"; + } + leaf configured-speaker-id { + type uint32; + description + "Identification for the configuredspeaker"; + } + leaf tcp-mss { + type uint32; + description + "Maximum Segment Size"; + } + leaf tcp-mtu { + type uint32; + description + "TCP Path MTU Discovery enabled"; + } + leaf min-advertisement-interval { + type uint32; + description + "Minimum amount of time beforesending an + advertisement"; + } + leaf min-advertisement-interval-msecs { + type uint32; + units "millisecond"; + description + "Minimum advertisement time between updates for a + neighborsession in milliseconds"; + } + leaf description { + type string; + description + "BGP address-family independentconfiguration + description"; + } + leaf ebgp-hop-count { + type uint32; + description + "EBGP neighbors hop count"; + } + leaf bmp-servers { + type uint32; + description + "BMP Servers activated"; + } + leaf is-ebgp-multihop-bgp-mpls-forwarding-disabled { + type boolean; + description + "If true, MPLS and NULL rewrite is disabled; if + false, it is enabled"; + } + leaf keychain { + type string; + description + "Neighbor keychain Name"; + } + leaf local-as-number-xx { + type uint32; + description + "First half of Local ASN"; + } + leaf local-as-number-yy { + type uint32; + description + "Second half of Local ASN"; + } + leaf local-as-no-prepend { + type boolean; + description + "Local AS no-prepend option"; + } + leaf password { + type string; + description + "Neighbor password"; + } + leaf socket-buffer-receive-size { + type uint32; + description + "Socket receive buffer size"; + } + leaf bgp-buffer-receive-size { + type uint32; + description + "BGP receive buffer size"; + } + leaf socket-buffer-send-size { + type uint32; + description + "Socket send buffer size"; + } + leaf bgp-buffer-send-size { + type uint32; + description + "BGP send buffer size"; + } + leaf adminstrative-shutdown { + type boolean; + description + "Flag to indicate peer is administratively + shutdown"; + } + leaf keepalive-interval { + type uint32; + description + "Timer for the keepalive event"; + } + leaf hold-time-value { + type uint32; + description + "Holdtime"; + } + leaf min-acc-hold-time-value { + type uint32; + description + "Min acceptable holdtimefrom neighbor"; + } + leaf msg-log-in-buf-count { + type uint32; + description + "Message Log buffer Inbound count"; + } + leaf msg-log-out-buf-count { + type uint32; + description + "Message Log buffer Outbound count"; + } + leaf route-updates-source { + type string; + description + "Source of routing updates"; + } + leaf local-address-subnet-len { + type uint32; + description + "local address prefix len"; + } + leaf dmz-link-bandwidth { + type uint32; + description + "Propagate the DMZ link bandwidth"; + } + leaf ebgp-recv-dmz { + type uint32; + description + "Receive Bandwidth of link to single-hop eBGP + peer"; + } + leaf ebgp-send-dmz-mode { + type Bgp-ebgp-send-dmz-enable-mode; + description + "Send DMZ link bandwidthto ebgp peer"; + } + leaf ttl-security { + type uint32; + description + "Enable BGP TTL Security"; + } + leaf update-in-safi14-merge { + type uint32; + description + "Merge SAFI-1 and SAFI-4 updates from neighbor"; + } + leaf capability-negotiation-suppressed { + type uint32; + description + "Disabling the capabilitynegotiation completely"; + } + leaf four-byte-as-capability-suppressed { + type uint32; + description + "Suppressing the 4-byte AS capability"; + } + leaf extended-nh-encoding-capability-suppressed { + type uint32; + description + "Disabling the extendednexthop encoding + capability"; + } + leaf session-open-mode { + type Bgp-tcp-mode; + description + "TCP open mode to be used "; + } + leaf bfd { + type uint32; + description + "Fast failure detection using BFD"; + } + leaf bfd-mininterval { + type uint32; + description + "BFD Minimum Interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD Multiplier"; + } + leaf tos-type-info { + type uint8; + description + "Precedence or DSCP type"; + } + leaf tos-value-info { + type uint8; + description + "Precedence or DSCP value"; + } + leaf nsr-disabled { + type uint32; + description + "Support for NSR"; + } + leaf graceful-restart-disabled { + type uint32; + description + "Support for graceful-restart"; + } + leaf graceful-restart-helper-mode { + type uint32; + description + "Enable graceful-restart in helper-mode only"; + } + leaf nbr-restart-time { + type uint32; + units "second"; + description + "Restart time (in seconds)"; + } + leaf nbr-stale-path-time { + type uint32; + units "second"; + description + "Stale-path time(in seconds)"; + } + leaf nbr-enforce-first-as-status { + type boolean; + description + "Flag to indicate whether BGPneighbor enforced as + firstautonomous path"; + } + leaf nbr-cluster-id-type-info { + type uint8; + description + "Cluster ID Type"; + } + leaf nbr-cluster-id-info { + type uint32; + description + "Cluster ID value"; + } + leaf ignore-connected-check { + type boolean; + description + "If true, don't do NHconnected check for nbr"; + } + leaf internal-vpn-client { + type boolean; + description + "If true, the VPN client isan iBGP CE peer"; + } + leaf addpath-send-capability { + type uint32; + description + "Indicates if addpath send capability is enabled + or disabled"; + } + leaf update-error-handling-no-reset { + type uint32; + description + "Indicates if avoid-reset behavior is enabled + during update error-handling"; + } + leaf addpath-receive-capability { + type uint32; + description + "Indicates if addpath receive capability is + enabled or disabled"; + } + leaf egress-peer-engineering { + type uint32; + description + "Indicates egress peer engineering is enabled"; + } + leaf epe-peer-sets { + type string; + description + "Bitfields representing which EPE peer sets the + neighbor belongs to"; + } + leaf epe-peer-segment-id { + type uint32; + description + "Manual segment Index assigned for this neighbor"; + } + leaf prefix-validation-disable { + type uint32; + description + "Disabeling the BGP bestpathprefix validation"; + } + leaf bestpath-use-origin-as-validity { + type uint32; + description + "Bestpath Use Origin-AS Va"; + } + leaf prefix-validation-allow-invalid { + type uint32; + description + "Allowing an invalid prefixas the BGP best path"; + } + leaf prefix-validation-signal-ibgp { + type uint32; + description + "Performs a prefix origin validationfor internal + BGP"; + } + leaf neighbor-update-filter-exists { + type boolean; + description + "Indicates if neighbor filter configuration + exists"; + } + leaf neighbor-update-filter-message-buffer-count { + type uint32; + description + "Count of neighbor filter message buffers"; + } + leaf neighbor-update-filter-message-buffer-is-non-circular { + type boolean; + description + "Indicates if neighbor update filter message + buffer is circular or not"; + } + leaf neighbor-update-filter-logging-disable { + type boolean; + description + "Indicates if neighbor filter logging is disabled"; + } + leaf neighbor-update-filter-attribute-filter-group-name { + type string; + description + "Name of the update filter attributefilter of the + neighbor"; + } + leaf graceful-shutdown-exists { + type uint32; + description + "re-advertise all routes to and from this + neighbor with the GSHUT community during + Shutdown or bring-up"; + } + leaf graceful-shutdown-loc-pref { + type uint32; + description + "Local Preference to advertise routes with during + Graceful Shutdown to IBGP. Default=No Touch"; + } + leaf graceful-shutdown-as-prepends { + type uint32; + description + "Prepend the local AS this many times to the AS + path of routes advertised during Graceful + Shutdown"; + } + leaf graceful-shutdown-activate { + type uint32; + description + "Graceful Shutdown state is activated"; + } + leaf graceful-shutdown-bandwidth-aware-mode { + type Bgp-gshut-bw-mode; + description + "Bandwidth-Aware Graceful-Maintenance mode"; + } + leaf graceful-shutdown-bandwidth-aware-low-threshold { + type uint32; + description + "Bandwidth-Aware Graceful-Maintenance Low + threshold"; + } + leaf graceful-shutdown-bandwidth-aware-high-threshold { + type uint32; + description + "Bandwidth-Aware Graceful-Maintenance High + threshold"; + } + leaf neighbor-remote-as-list-group-name { + type string; + description + "Name of the remote atonomous system list group + of neighbor"; + } + leaf max-peers { + type uint32; + description + "Maximum dynamic nbrs in range"; + } + leaf idle-watch-time { + type uint32; + units "second"; + description + "Idle Watch time(in seconds)"; + } + leaf ao-keychain { + type string; + description + "Neighbor AO keychain name"; + } + leaf ao-include-tcp-options { + type uint32; + description + "Include TCP options AO"; + } + leaf ao-accept-mismatch-connection { + type uint32; + description + "Accepting mismatch connectionfor AO"; + } + leaf default-policy-action-inbound { + type uint32; + description + "Default Action for a route when inbound policy + definition is not satidfied"; + } + leaf default-policy-action-outbound { + type uint32; + description + "Default Action for a route when outbound policy + definition is not satidfied"; + } + leaf local-as-replace-as { + type boolean; + description + "Local AS Replace-AS option"; + } + leaf local-as-dual-as { + type boolean; + description + "Local AS Dual-AS option"; + } + } + + grouping BGP-IPV6-SRPOLICY-ADDR { + description + "BGP IPV6 SRPOLICY ADDR"; + leaf ipv6-srpolicy-address { + type yang:hex-string; + description + "IPv6 address of thesrpolicy"; + } + } + + grouping IPV6-SR-POLICY-ADDRESS-TYPE { + description + "IPv6 SR Policy Address type"; + uses BGP-IPV6-SRPOLICY-ADDR; + } + + grouping BGP-IPV4-SRPOLICY-ADDR { + description + "BGP IPV4 SRPOLICY ADDR"; + leaf ipv4-srpolicy-address { + type yang:hex-string; + description + "IPv4 address of thesrpolicy"; + } + } + + grouping IPV4-SR-POLICY-ADDRESS-TYPE { + description + "IPv4 SR Policy Address type"; + uses BGP-IPV4-SRPOLICY-ADDR; + } + + grouping BGP-L2VPN-MSPW-ADDR { + description + "BGP L2VPN MSPW ADDR"; + leaf l2vpn-address { + type yang:hex-string; + description + "L2vpn address of the BGP mspw"; + } + } + + grouping L2VPN-MSPW-ADDRESS-TYPE { + description + "L2VPN MSPW Address type"; + uses BGP-L2VPN-MSPW-ADDR; + } + + grouping BGP-L2VPN-EVPN-ADDR { + description + "BGP L2VPN EVPN ADDR"; + leaf l2vpn-evpn-address { + type yang:hex-string; + description + "l2vpn evpn address"; + } + } + + grouping L2VPN-EVPN-ADDRESS-TYPE { + description + "L2VPN EVPN Address type"; + uses BGP-L2VPN-EVPN-ADDR; + } + + grouping BGP-L2VPN-ADDR { + description + "BGP L2VPN ADDR"; + leaf l2vpn-address { + type yang:hex-string; + description + "L2vpn address of the protocol BGP"; + } + } + + grouping BGP-ADDRTYPE { + description + "BGP ADDRTYPE"; + container l2vpn-vpls-address { + when "../afi = 'l2vpn-vpls'" { + description + "../AFI = 'L2VPN_VPLS'"; + } + description + "L2VPN VPLS Addr"; + uses BGP-L2VPN-ADDR; + } + container l2vpn-evpn-address { + when "../afi = 'l2vpn-evpn'" { + description + "../AFI = 'L2VPN_EVPN'"; + } + description + "L2VPN EVPN Addr"; + uses L2VPN-EVPN-ADDRESS-TYPE; + } + container l2vpn-mspw-address { + when "../afi = 'l2vpn-mspw'" { + description + "../AFI = 'L2VPN_MSPW'"; + } + description + "L2VPN MSPW Addr"; + uses L2VPN-MSPW-ADDRESS-TYPE; + } + container ipv4-sr-policy-address { + when "../afi = 'ipv4-sr-policy'" { + description + "../AFI = 'IPv4SRPolicy'"; + } + description + "IPV4 Policy Addr"; + uses IPV4-SR-POLICY-ADDRESS-TYPE; + } + container ipv6-sr-policy-address { + when "../afi = 'ipv6-sr-policy'" { + description + "../AFI = 'IPv6SRPolicy'"; + } + description + "IPV6 Policy Addr"; + uses IPV6-SR-POLICY-ADDRESS-TYPE; + } + leaf afi { + type Bgp-afi; + description + "AFI"; + } + leaf ipv4-address { + when "../afi = 'ipv4'" { + description + "../AFI = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv4-mcast-address { + when "../afi = 'ipv4-multicast'" { + description + "../AFI = 'IPv4Multicast'"; + } + type inet:ipv4-address; + description + "IPv4 Mcast Addr"; + } + leaf ipv4-label-address { + when "../afi = 'ipv4-labeled'" { + description + "../AFI = 'IPv4Labeled'"; + } + type inet:ipv4-address; + description + "IPv4 Label Addr"; + } + leaf ipv4-tunnel-address { + when "../afi = 'ipv4-tunnel'" { + description + "../AFI = 'IPv4Tunnel'"; + } + type Ipv4-tunnel-address; + description + "IPv4 Tunnel"; + } + leaf ipv4-mdt-address { + when "../afi = 'ipv4-mdt'" { + description + "../AFI = 'IPv4MDT'"; + } + type Ipv4-mdt-address; + description + "IPv4 MDT Addr"; + } + leaf ipv4vpn-address { + when "../afi = 'vpnv4'" { + description + "../AFI = 'VPNv4'"; + } + type inet:ipv4-address; + description + "IPv4 VPN Addr"; + } + leaf ipv4vpna-mcastddress { + when "../afi = 'vpnv4-multicast'" { + description + "../AFI = 'VPNv4Multicast'"; + } + type inet:ipv4-address; + description + "IPv4 VPN Mcast Addr"; + } + leaf ipv6-address { + when "../afi = 'ipv6'" { + description + "../AFI = 'IPv6'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + leaf ipv6-mcast-address { + when "../afi = 'ipv6-multicast'" { + description + "../AFI = 'IPv6Multicast'"; + } + type Ipv6-address; + description + "IPV6 Mcast Addr"; + } + leaf ipv6-label-address { + when "../afi = 'ipv6-labeled'" { + description + "../AFI = 'IPv6Labeled'"; + } + type Ipv6-address; + description + "IPv6 Label Addr"; + } + leaf ipv6vpn-address { + when "../afi = 'vpnv6'" { + description + "../AFI = 'VPNv6'"; + } + type Ipv6-address; + description + "IPv6 VPN Addr"; + } + leaf ipv6vpn-mcast-address { + when "../afi = 'vpnv6-multicast'" { + description + "../AFI = 'VPNv6Multicast'"; + } + type Ipv6-address; + description + "IPv6 VPN Mcast Addr"; + } + leaf rt-constraint-address { + when "../afi = 'rt-constraint'" { + description + "../AFI = 'RTConstraint'"; + } + type Rt-constraint-address; + description + "RT Constrt Addr"; + } + leaf ipv6mvpn-address { + when "../afi = 'ipv6-mvpn'" { + description + "../AFI = 'IPv6MVPN'"; + } + type Ipv6mvpn-address; + description + "MVPN addr"; + } + leaf ipv4mvpn-address { + when "../afi = 'ipv4-mvpn'" { + description + "../AFI = 'IPv4MVPN'"; + } + type Ipv4mvpn-address; + description + "MVPN4 addr"; + } + leaf ls-ls-address { + when "../afi = 'ls-ls'" { + description + "../AFI = 'LS_LS'"; + } + type Ls-ls-address; + description + "LINKSTATE LINKSTATE Addr"; + } + leaf ipv4-flowspec-address { + when "../afi = 'ipv4-flowspec'" { + description + "../AFI = 'IPv4Flowspec'"; + } + type Ipv4-flowspec-address; + description + "IPV4 Flowspec Addr"; + } + leaf ipv6-flowspec-address { + when "../afi = 'ipv6-flowspec'" { + description + "../AFI = 'IPv6Flowspec'"; + } + type Ipv6-flowspec-address; + description + "IPV6 Flowspec Addr"; + } + leaf ipv4vpn-flowspec-address { + when "../afi = 'vpnv4-flowspec'" { + description + "../AFI = 'VPNv4Flowspec'"; + } + type Ipv4-flowspec-address; + description + "IPV4 VPN Flowspec Addr"; + } + leaf ipv6vpn-flowspec-address { + when "../afi = 'vpnv6-flowspec'" { + description + "../AFI = 'VPNv6Flowspec'"; + } + type Ipv6-flowspec-address; + description + "IPV6 VPN Flowspec Addr"; + } + } + + grouping BGP-CONFIG-ENTITY-BAG { + description + "BGP entity config information"; + container neighbor-address-xr { + description + "Neighbor Address"; + uses BGP-ADDRTYPE; + } + container af-independent-config { + description + "BGP address-family independentconfiguration"; + uses BGP-AF-INDEP; + } + leaf group-name { + type string; + description + "Entity/group name"; + } + leaf configuration-type { + type Bgp-entities; + description + "Entity type"; + } + leaf address-family-identifier { + type string; + description + "AF identifier"; + } + list af-dependent-config { + max-elements "25"; + description + "Dependent configuration peraddress-family"; + uses BGP-AF-DEP; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper.yang new file mode 100644 index 000000000..ab8287543 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-bgp-oper.yang @@ -0,0 +1,2165 @@ +module Cisco-IOS-XR-ipv4-bgp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-bgp-oper"; + prefix ipv4-bgp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ipv4-bgp-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-ipv4-bgp-oper-sub1 { + revision-date 2023-02-03; + } + + 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-bgp package operational data. + + This module contains definitions + for the following management objects: + bgp: BGP operational data + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-03 { + description + "Updated show bgp nexthop-set output to include retain-counter and show bgp label to include RPC information + 2023-01-18 + Updated BMP path information to include link-local nexthop and netxhop route-distinguisher information + 2022-11-11 + Modified type of Last Received Message in per-neighbor information + 2022-11-03 + Added oc-rib attribute index in BGP path information + 2022-10-14 + Added Last Received Message for per neighbor + 2022-10-06 + Added server states in per BMP server convergence data + 2022-10-04 + Added delay and other timers for BMP server + 2022-09-23 + Added BMP route-monitoring suport for L3VPN inbound post-policy and Local RIB, Deprecated container policy under route-monitoring + 2022-09-21 + Added prefix received counter to count the routes received before ingress policy run + 2022-06-02 + Added update wait install delay leaf. + 2022-05-17 + Added srte bgp prefix label ignore flag to nexthop + 2022-02-18 + Added interface-name key to next-hop-af leaf. + 2022-02-07 + Added address family string under af-array + 2021-11-29 + Added next hop encapsulation type for MPLS over UDP tunnel + 2021-11-15 + Added interafi leak information in update out + 2021-11-12 + Updated convergence operational information + 2021-11-09 + Added oper for Nexthop sync slot"; + semver:module-version "6.0.0"; + } + revision 2021-10-16 { + description + "Added Oper for mamximum-paths deterministic + 2021-06-27 + Added PathLocalSidTable and PathReceivedSidTable"; + semver:module-version "5.0.0"; + } + revision 2021-05-10 { + description + "Added platform capability mix srte CLI + 2021-03-15 + Added Export Allow Config for backup + 2021-03-05 + Deprecated Hidden commands + 2021-03-05 + Added SR Policy Path Prefernce in Bestpath Compare + 2020-10-04 + Added Soft NextHop Validation and Metric + 2020-09-30 + Added LATEST bestpath comparison reason + 2020-09-18 + Added SRv6 TE BSID information + 2020-07-15 + Changed VRFDBVRFTable pathformat"; + semver:module-version "4.0.0"; + } + revision 2020-06-23 { + description + "changed the afi from integer to string in BPM entities + 2020-03-30 + Extended flags to 16 bits and changed leaf names as per convention"; + semver:module-version "3.0.0"; + } + revision 2020-01-11 { + description + "Fixing invalid range for prefix length. + 2019-08-31 + Fixing revision error in module."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Fixing backward compatibility error in module"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Added schema for opercoverage missing paths"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-08-27 { + description + "IOS XR 5.3.2 revision."; + } + + typedef Bgp-rpki-edm-af { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4"; + } + enum "ipv6" { + value 10; + description + "IPv6"; + } + } + description + "Bgp rpki edm af"; + } + + typedef Bgp-epe-obj { + type union { + type enumeration { + enum "epe-peer-type" { + value 1; + description + "Peer as an EPE object"; + } + enum "epe-peer-set-type" { + value 2; + description + "Peer-Set as an EPE object"; + } + enum "epe-adjacency-type" { + value 3; + description + "Firsthop Adjacency as an EPE object"; + } + } + type uint32 { + range "1..3"; + } + } + description + "Bgp epe obj"; + } + + typedef Bgp-route { + type enumeration { + enum "used" { + value 0; + description + "Used path from neighbor"; + } + enum "received-only" { + value 1; + description + "Received only path from neighbor"; + } + enum "safi-labeled-unicast-used" { + value 2; + description + "Used path from neighbor received via + labeled-unicast SAFI"; + } + enum "safi-labeled-unicast-received-only" { + value 3; + description + "Received only path from neighbor received via + labeled-unicast SAFI"; + } + enum "rib" { + value 4; + description + "Redistributed from the RIB"; + } + enum "aggregate" { + value 5; + description + "Locally generated aggregate"; + } + } + description + "Bgp route"; + } + + typedef Bgp-entity { + type enumeration { + enum "af-group" { + value 0; + description + "Address family group"; + } + enum "session-group" { + value 1; + description + "BGP Peer Session group"; + } + enum "neighbor-group" { + value 2; + description + "BGP Peer group"; + } + enum "neighbor" { + value 3; + description + "BGP Neighbor"; + } + } + description + "Bgp entity"; + } + + typedef Bgp-route-distinguisher { + type string; + description + "Bgp route distinguisher"; + } + + grouping UPDATE-GENERATION-PROCESS { + description + "Common node of instance-active, instance-standby"; + container update-generation-process { + description + "The BGP Update generate table for the process"; + uses BGP-UPDGEN-PROC-BAG; + } + } + + grouping VRFDBVR-FENTRY { + description + "Common node of instance-active, instance-standby"; + container vrfdbvr-fentry { + description + "A BGP VRF DB VRF entry"; + uses BGP-VRF-DB-VRF-TBL-BAG; + } + } + + grouping PATH { + description + "Common node of path-table, path-used-table, + path-labeled-table, path-local-sid-table, + path-received-sid-table"; + list path { + description + "A BGP path table entry"; + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for ip + prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the subnet prefix"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address for the BGP neighbor"; + } + leaf route-type { + type Bgp-route; + description + "Route Type"; + } + leaf source-rd { + type Bgp-route-distinguisher; + description + "Source Route Distinguisher value"; + } + leaf orig-source-rd { + type Bgp-route-distinguisher; + description + "Original Source Route Distinguisher"; + } + leaf path-id { + type uint32 { + range "0..4294967295"; + } + description + "Received Path ID"; + } + uses BGP-PATH-BAG; + } + } + + grouping BMP { + description + "Common node of default-vrf, vrf"; + container bmp { + description + "BMP related Operational Data"; + container server-summaries { + description + "Table of BMP Servers"; + list server-summary { + key "server-id"; + description + "Summary Information about BMP server"; + leaf server-id { + type uint32 { + range "1..8"; + } + description + "BMP Server ID"; + } + uses BGP-BMP-SRVR-BAG; + } + } + container server-neighbors { + description + "Table of Neighbors for a BMP Server"; + list server-neighbor { + key "server-id"; + description + "BMP Server under which neighbor info are + needed"; + container monitored-neighbors { + description + "List of Neighbors under which BMP Server is + configured"; + list monitored-neighbor { + description + "Information about a neighbor monitored by + BMP server"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of VRF, the neighbor belongs to"; + } + uses BGP-BMP-NBR-BAG; + } + } + leaf server-id { + type uint32 { + range "1..8"; + } + description + "BMP Server ID"; + } + } + } + } + } + + grouping VRFDBVRF-TABLE { + description + "Common node of instance-active, instance-standby"; + container vrfdbvrf-table-entries { + description + "A BGP VRF DB VRFs table"; + list vrfdbvrf-table-entry { + description + "A BGP VRF DB VRF TABLE"; + leaf index { + type uint32; + description + "BGP VRF DB TBL index"; + } + leaf id { + type uint32; + description + "BGP VRF DB TBL ID"; + } + uses BGP-VRF-DB-VRF-TBL-BAG; + } + } + } + + grouping ATTRIBUTE-FILTER-GROUP-TABLE { + description + "Common node of instance-active, instance-standby"; + container attribute-filter-groups { + description + "All attribute-filter groups in this instance"; + list attribute-filter-group { + key "group-name"; + description + "The BGP Attribute filter group Table Entry"; + leaf group-name { + type xr:Cisco-ios-xr-string; + description + "The BGP Attribute filter group table entry + name"; + } + uses BGP-ATTRFILTER-GROUP-BAG; + } + } + } + + grouping ATTRIBUTE-TABLE { + description + "Common node of instance-active, instance-standby, + af"; + container attributes { + description + "The BGP Attribute table"; + list attribute { + description + "A BGP Attribute table entry"; + leaf attribute-iid { + type uint32 { + range "0..255"; + } + description + "Identifier of BGP Attribute table entry"; + } + leaf attribute-cache-bucket { + type uint32 { + range "0..65535"; + } + description + "Cache bucket value of BGP Attribute table + entry"; + } + leaf attribute-cache-id { + type uint32; + description + "Identifier of the BGP Attribute Cache"; + } + uses BGP-ATTR-BAG; + } + } + } + + grouping SESSION-TABLE { + description + "Common node of default-vrf, vrf"; + container sessions { + description + "The BGP session table"; + list session { + key "neighbor-address"; + description + "A BGP session table entry"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-NBR-BRIEF-BAG; + } + } + } + + grouping POSTIT-TABLE { + description + "Common node of default-vrf, vrf"; + container postits { + description + "The BGP Neighbor table"; + list postit { + key "neighbor-address"; + description + "A BGP Postit table entry"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-NEIGHBOR-NSR-BAG; + } + } + } + + grouping UPDATE-INBOUND-ERROR-PROCESS { + description + "Common node of instance-active, instance-standby"; + container update-inbound-error-process { + description + "Update inbound error information for the process"; + uses BGP-UPDERR-PROC-BAG; + } + } + + grouping NEXT-HOP-VRF { + description + "Common node of default-vrf, vrf"; + container next-hop-vrf { + description + "A BGP Next-hop VRF table entry"; + uses BGP-NEXTHOP-VRF-BAG; + } + } + + grouping BMP-LOCAL-RIB-EMULATED-PEER-BRIEF-TABLE { + description + "Common node of default-vrf, vrf"; + container bmp-local-rib-emulated-peer-briefs { + description + "The BGP BMP Emulated session table"; + list bmp-local-rib-emulated-peer-brief { + key "neighbor-address"; + description + "A BGP BMP Emulated session table entry"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP BMP Emulated + Neighbor"; + } + uses BGP-NBR-BRIEF-BAG; + } + } + } + + grouping RPKI-SUMMARY { + description + "Common node of instance-active, instance-standby"; + container rpki-summary { + description + "RPKI Summary Info"; + uses BGP-RPKI-SUMMARY-BAG; + } + } + + grouping VRF-TABLE { + description + "Common node of instance-active, instance-standby"; + container vrfs { + description + "VRF related operational data"; + list vrf { + key "vrf-name"; + description + "Operational data for a particular VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF"; + } + uses BMP-LOCAL-RIB-EMULATED-PEER-BRIEF-TABLE; + uses UPDATE-INBOUND-ERROR-VRF; + uses AF-TABLE; + uses INFORMATION; + uses UPDATE-INBOUND-FILTER-VRF; + uses POSTIT-TABLE; + uses GLOBAL-PROCESS-INFO; + uses BMP-LOCAL-RIB-EMULATED-PEER-TABLE; + uses UPDATE-INBOUND-ERROR-NEIGHBOR-TABLE; + uses UPDATE-INBOUND-FILTER-NEIGHBOR-TABLE; + uses BMP; + uses NEIGHBOR-MISSING-EOR-TABLE; + uses PROCESS-INFO; + uses SESSION-TABLE; + uses NEIGHBOR-TABLE; + uses NEXT-HOP-VRF; + uses NEIGHBOR-RANGE-TABLE; + uses MESSAGE-LOG-TABLE; + } + } + } + + grouping UPDATE-INBOUND-FILTER-VRF { + description + "Common node of default-vrf, vrf"; + container update-inbound-filter-vrf { + description + "Update inbound filtering information for the VRF"; + uses BGP-UPDFILTER-VRF-BAG; + } + } + + grouping BMP-PREFIX { + description + "Common node of bmp-prefix-table, + bmp-prefix-version-filter, bmp-prefix-rd-filter, + bmp-prefix-neighbor-filter, + bmp-prefix-prefix-filter, + bmp-prefix-rd-neighbor-filter, + bmp-prefix-rd-prefix-filter"; + list bmp-prefix { + description + "A BMP prefix table entry"; + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for IP + prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the network prefix"; + } + uses BGP-BMP-NET-BAG; + } + } + + grouping INFORMATION { + description + "Common node of default-vrf, vrf"; + container information { + description + "Meta data for VRF"; + uses BGP-VRF-INFO-BAG; + } + } + + grouping ENTITY-CONFIGURATION-TABLE { + description + "Common node of config-instance-default-vrf, + config-vrf"; + container entity-configurations { + description + "The BGP Entity Configuration table"; + list entity-configuration { + description + "A BGP Entity Configuration table entry"; + leaf entity-type { + type Bgp-entity; + description + "Type of the Entity configuration table entry"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + leaf entity-name { + type xr:Cisco-ios-xr-string; + description + "Name of the Entity configuration table entry"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Length of the subnet prefix"; + } + uses BGP-CONFIG-ENTITY-BAG; + } + } + } + + grouping DEFAULT-VRF { + description + "Common node of instance-active, instance-standby"; + container default-vrf { + description + "Default VRF related operational data"; + uses BMP-LOCAL-RIB-EMULATED-PEER-BRIEF-TABLE; + uses UPDATE-INBOUND-ERROR-VRF; + uses AF-TABLE; + uses INFORMATION; + uses UPDATE-INBOUND-FILTER-VRF; + uses POSTIT-TABLE; + uses GLOBAL-PROCESS-INFO; + uses BMP-LOCAL-RIB-EMULATED-PEER-TABLE; + uses UPDATE-INBOUND-ERROR-NEIGHBOR-TABLE; + uses UPDATE-INBOUND-FILTER-NEIGHBOR-TABLE; + uses BMP; + uses NEIGHBOR-MISSING-EOR-TABLE; + uses PROCESS-INFO; + uses SESSION-TABLE; + uses NEIGHBOR-TABLE; + uses NEXT-HOP-VRF; + uses NEIGHBOR-RANGE-TABLE; + uses MESSAGE-LOG-TABLE; + } + } + + grouping UPDATE-INBOUND-ERROR-VRF { + description + "Common node of default-vrf, vrf"; + container update-inbound-error-vrf { + description + "Update inbound error information for the VRF"; + uses BGP-UPDERR-VRF-BAG; + } + } + + grouping UPDATE-INBOUND-FILTER-NEIGHBOR-TABLE { + description + "Common node of default-vrf, vrf"; + container update-inbound-filter-neighbors { + description + "Update inbound filtering information for all + neighbors"; + list update-inbound-filter-neighbor { + key "neighbor-address"; + description + "Update inbound filtering information for + neighbor"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-UPDFILTER-NBR-BAG; + } + } + } + + grouping NEIGHBOR-RANGE-TABLE { + description + "Common node of default-vrf, vrfCommon node of + default-vrf, vrf"; + container neighbor-ranges { + description + "The BGP Dynamic Neighbor Range table"; + list neighbor-range { + key "neighbor-range-address"; + description + "A BGP Neighbor Range table entry"; + leaf neighbor-range-address { + type inet:ip-prefix; + description + "Neighbor Range prefix"; + } + uses BGP-NBR-RANGE-BAG; + } + } + } + + grouping CONFIGURATION-USER-TABLE { + description + "Common node of config-instance-default-vrf, + config-vrf"; + container configuration-users { + description + "The BGP configuration users table"; + list configuration-user { + description + "A BGP configuration user table entry"; + leaf entity-type { + type Bgp-entity; + description + "Type of the configuration user table entry"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + leaf entity-name { + type xr:Cisco-ios-xr-string; + description + "Name of the configuration user table entry"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Length of the subnet prefix"; + } + uses BGP-CONFIG-RELATIVES-BAG; + } + } + } + + grouping NEIGHBOR { + description + "Common node of neighbors, neighbor-af-table, + neighbor-missing-eor-table"; + list neighbor { + key "neighbor-address"; + description + "A BGP Neighbor table entry"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-NBR-BAG; + } + } + + grouping BMP-LOCAL-RIB-EMULATED-PEER-TABLE { + description + "Common node of default-vrf, vrf"; + container bmp-local-rib-emulated-peers { + description + "The BGP BMP Emulated Neighbor table"; + list bmp-local-rib-emulated-peer { + key "neighbor-address"; + description + "A BGP BMP Emulated Neighbor table entry"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP BMP Emulated + Neighbor"; + } + uses BGP-NBR-BAG; + } + } + } + + grouping RT-HASH-TABLE { + description + "Common node of instance-active, instance-standby"; + container rt-hash-table-entries { + description + "BGP Route Target Hash Table"; + list rt-hash-table-entry { + description + "BGP Route Target Hash Table Entry"; + leaf imp-exp { + type uint32 { + range "0..1"; + } + description + "Flag to indicate RT import or export"; + } + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf rt-hash { + type uint32; + description + "Route Target Hash Index"; + } + uses BGP-VRF-RT-HASH-SLICE-BAG; + } + } + } + + grouping UPDATE-INBOUND-ERROR-NEIGHBOR-TABLE { + description + "Common node of default-vrf, vrf"; + container update-inbound-error-neighbors { + description + "Update inbound error information for all + neighbors"; + list update-inbound-error-neighbor { + key "neighbor-address"; + description + "Update inbound error information for neighbor"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-UPDERR-NBR-BAG; + } + } + } + + grouping RPKI-SERVER-LIST { + description + "Common node of instance-active, instance-standby"; + container rpki-server-list { + description + "RPKI Server Table"; + uses BGP-RPKI-CACHES-BAG; + } + } + + grouping GLOBAL-PROCESS-INFO { + description + "Common node of default-vrf, vrf"; + container global-process-info { + description + "The Global Process information table"; + uses BGP-GLOBAL-PROCESS-INFO-BAG; + } + } + + grouping RT-TABLE { + description + "Common node of instance-active, instance-standby"; + container rt-entries { + description + "BGP Route Target Sets Table"; + list rt-entry { + description + "BGP Route Target Set Entry"; + leaf route-target-lower-bytes { + type uint32; + description + "Lower 4 bytes of RT"; + } + leaf route-target-upper-bytes { + type uint32; + description + "Upper 4 bytes of RT"; + } + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf request-id { + type uint32; + description + "Random Request ID"; + } + uses BGP-VRF-RT-BAG; + } + } + } + + grouping ORR-GROUP-GLOBAL-TABLE { + description + "Common node of instance-active, instance-standby"; + container orr-group-global-table-entries { + description + "The BGP Optimal Route Reflection Group Table"; + list orr-group-global-table-entry { + key "orr-grp-name"; + description + "A BGP Optimal Route Reflection Group Global + Table Entry"; + leaf orr-grp-name { + type xr:Cisco-ios-xr-string; + description + "The BGP Optimal Route Reflection Group Name"; + } + uses BGP-ORR-GROUP-BASE-BAG; + } + } + } + + grouping RPKI-ROUTE-TABLE { + description + "Common node of instance-active, instance-standby"; + container rpki-routes { + description + "BGP RPKI ROA table"; + list rpki-route { + description + "RPKI Path Group"; + leaf af-name { + type Bgp-rpki-edm-af; + description + "IPv4 or IPV6 Address family"; + } + leaf address { + type xr:Cisco-ios-xr-string; + description + "IPv4 or IPv6 route prefix contained in the + Route Origin Authorization"; + } + leaf minimum { + type uint32 { + range "0..128"; + } + description + "Length of the shortest prefix allowed"; + } + leaf maximum { + type uint32 { + range "0..128"; + } + description + "Length of the longest prefix allowed"; + } + uses BGP-RPKI-ROUTES-BAG; + } + } + } + + grouping NEIGHBOR-MISSING-EOR-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbor-missing-eor-table { + description + "The BGP Neighbor missing eor table"; + uses NEIGHBOR; + } + } + + grouping NEIGHBOR-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbors { + description + "The BGP Neighbor table"; + uses NEIGHBOR; + } + } + + grouping MESSAGE-LOG-TABLE { + description + "Common node of default-vrf, vrf"; + container message-logs { + description + "The BGP Neighbor Message table"; + list message-log { + description + "A BGP Message log entry"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + leaf direction { + type uint32 { + range "0..1"; + } + description + "Message log Direction"; + } + uses BGP-MSGLOG-NBR-BAG; + } + } + } + + grouping AF-TABLE { + description + "Common node of default-vrf, vrf"; + container afs { + description + "BGP address family table"; + list af { + key "af-name"; + description + "A particular address family"; + container rpki-refresh-af-table { + description + "RPKI Refresh Table (per AF)"; + container rpki-refresh-af { + description + "RPKI Refresh List"; + uses BGP-RPKI-REFRESH-LIST-BAG; + } + } + container remote-nh-table { + description + "A BGP Remote Nexthop table entry"; + uses BGP-RNH-BAG; + } + container policies { + description + "The BGP Policy Table"; + list policy { + description + "A BGP Policy table entry"; + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for + ip prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the subnet prefix"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-PATH-ADV-BAG; + } + } + container convergence { + description + "A BGP Convergence table entry"; + uses BGP-CONVERGENCE-BAG; + } + container af-process-info { + description + "A BGP Process address family table entry"; + uses BGP-PROCESS-INFO-AF-BAG; + } + container path-used-table { + description + "The BGP Path Used Table"; + uses PATH; + } + container bmp-path-table-generic { + status obsolete; + description + "Summary Info about BMP Table"; + uses BGP-BMP-TBL-GBL-BAG; + } + container rpc-sets { + description + "BGP next-hop set table"; + list rpc-set { + key "rpc-set-index"; + description + "A BGP next-hop set"; + leaf rpc-set-index { + type uint32; + description + "Nexthop set index"; + } + uses BGP-RPC-SET-BAG; + } + } + container global-af-process-info { + description + "The Global Address Family Process information + table"; + uses BGP-GLOBAL-PROCESS-INFO-AF-BAG; + } + container advertised-path-xr { + description + "The BGP Advertised path table (bestpath)"; + list advertised-path { + description + "A BGP Advertised path table entry (bestpath)"; + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for + ip prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the subnet prefix"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of BGP Neighbor"; + } + uses BGP-PATH-BAG; + } + } + container sourced-networks { + description + "The BGP Convergence table"; + list sourced-network { + key "network"; + description + "A BGP network command table entry"; + leaf network { + type inet:ip-prefix; + description + "Network in prefix/length format"; + } + uses BGP-STATIC-ROUTES-BAG; + } + } + container update-groups { + description + "The BGP Update group table"; + list update-group { + description + "A BGP Update group table entry"; + leaf update-group-id { + type uint32; + description + "A BGP Update group table entry index"; + } + leaf filter-group-id { + type uint32; + description + " A BGP Filter group index"; + } + uses BGP-UPDGRP-BAG; + } + } + container update-generation-sub-groups { + description + "The BGP Update generate entries for all + sub-groups"; + list update-generation-sub-group { + description + "A BGP Update generate table entry for + sub-group"; + leaf update-group-index { + type uint32 { + range "0..4294967295"; + } + description + "A BGP Update Group Entry index"; + } + leaf sub-group-index { + type uint32; + description + "A BGP Update Sub group Table index"; + } + leaf sub-group-id { + type uint32; + description + "A BGP Update Sub group table ID"; + } + uses BGP-UPDGEN-SUBGRP-BAG; + } + } + container next-hop-address-families { + description + "Address family of nexthop table"; + list next-hop-address-family { + key "next-hop-af-name"; + description + "Address family of a nexthop entry"; + container next-hop-af-vrf-af { + description + "A BGP Next-hop VRF AF table entry"; + uses BGP-NEXTHOP-VRF-AF-BAG; + } + container next-hop-afs { + description + "The BGP Next-hop table"; + list next-hop-af { + description + "A BGP Next hop entry"; + leaf next-hop-address { + type inet:ip-address-no-zone; + description + "IP address of Next hop Entry"; + } + leaf attribute-set { + type xr:Cisco-ios-xr-string; + description + "Attribute Set Name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses BGP-NEXTHOP-BAG; + } + } + leaf next-hop-af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + } + } + container rt-set-counters { + description + "The RT-set counter table"; + list rt-set-counter { + key "rt-set-id"; + description + "One RT-set counter table entry"; + leaf rt-set-id { + type uint32; + description + "Identifier of RTSet"; + } + uses BGP-RTSET-BAG; + } + } + container bmp-paths { + status deprecated; + description + "The paths in BMP Table"; + list bmp-path { + key "network"; + status obsolete; + description + "A BMP path table entry"; + leaf network { + type inet:ip-prefix; + description + "Network in prefix/length format"; + } + uses BGP-BMP-NET-BAG; + } + } + container update-generation-update-groups { + description + "The BGP Update generate entries for all + update-groups"; + list update-generation-update-group { + key "update-group-index"; + description + "A BGP Update Generate Group Entry"; + leaf update-group-index { + type uint32 { + range "0..4294967295"; + } + description + "Update group index of the update-group table"; + } + uses BGP-UPDGEN-UPDGRP-BAG; + } + } + container bmp-modes { + description + "BMP route monitoring modes"; + list bmp-mode { + key "mode"; + description + "The BMP route monitoring mode"; + container bmp-prefix-prefix-filters { + description + "The BMP Prefix Table with Prefix Filter"; + list bmp-prefix-prefix-filter { + description + "Prefix Filter Values"; + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format + for IP prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the network prefix"; + } + uses BMP-PREFIX; + } + } + container bmp-prefix-version-filters { + description + "The BMP Prefix Table with Version Filter"; + list bmp-prefix-version-filter { + description + "Version Filter Value"; + leaf begin { + type uint32; + description + "Begin Version"; + } + leaf end { + type uint32; + description + "End Version"; + } + uses BMP-PREFIX; + } + } + container bmp-prefix-table-generic { + description + "Summary Info about BMP Table"; + uses BGP-BMP-TBL-GBL-BAG; + } + container bmp-prefix-rd-prefix-filters { + description + "The BMP Prefix Table with RD and Neighbor + Filter"; + list bmp-prefix-rd-prefix-filter { + description + "RD and Neighbor Filter Values"; + leaf rd { + type Bgp-route-distinguisher; + description + "The Route Distinguisher value"; + } + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + leaf prefix-length { + type uint32; + description + "Length of the network prefix"; + } + uses BMP-PREFIX; + } + } + container bmp-prefix-rd-neighbor-filters { + description + "The BMP Prefix Table with RD and Neighbor + Filter"; + list bmp-prefix-rd-neighbor-filter { + description + "RD and Neighbor Filter Values"; + leaf rd { + type Bgp-route-distinguisher; + description + "The Route Distinguisher value"; + } + leaf neighbor-address { + type xr:Cisco-ios-xr-string; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BMP-PREFIX; + } + } + container bmp-prefix-neighbor-filters { + description + "The BMP Prefix Table with Neighbor Filter"; + list bmp-prefix-neighbor-filter { + key "neighbor-address"; + description + "Neighbor Filter Value"; + leaf neighbor-address { + type xr:Cisco-ios-xr-string; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BMP-PREFIX; + } + } + container bmp-convergence { + description + "BMP convergence information"; + uses BGP-BMP-CONVERGENCE-BAG; + } + container bmp-prefix-rd-filters { + description + "The BMP Prefix Table with RD Filter"; + list bmp-prefix-rd-filter { + key "rd"; + description + "RD Filter Value"; + leaf rd { + type Bgp-route-distinguisher; + description + "The Route Distinguisher value"; + } + uses BMP-PREFIX; + } + } + container bmp-prefix-table { + description + "The BMP Prefix Table"; + uses BMP-PREFIX; + } + leaf mode { + type dt1:Bmp-route-monitor-mode; + description + "BMP route monitoring mode name"; + } + } + } + container update-generation-filter-groups { + description + "Update generation for all filter-groups under + a sub-group"; + list update-generation-filter-group { + description + "A BGP Update generate table entry for + filter-group"; + leaf update-group-index { + type uint32 { + range "0..4294967295"; + } + description + "A BGP Update Group Entry index"; + } + leaf sub-group-index { + type uint32; + description + "A BGP Update Sub group Table index"; + } + leaf sub-group-id { + type uint32; + description + "A BGP Update Sub group table ID"; + } + leaf filter-group-index { + type uint32; + description + "A BGP Filter group Table index"; + } + uses BGP-UPDGEN-FILTERGRP-BAG; + } + } + container networks { + description + "The BGP Network Table"; + list network { + description + "A BGP Network table entry"; + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for + ip prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the subnet prefix"; + } + uses BGP-NET-BAG; + } + } + container path-table { + description + "The BGP Path Table"; + uses PATH; + } + container path-received-sid-table { + description + "The BGP Path Received Sids Table"; + uses PATH; + } + container mvpn-rt-list { + description + "A BGP Multicast VPN Route Target List for + address-family"; + uses BGP-MVPN-RT-LIST-BAG; + } + container recent-prefixes { + description + "BGP Recent Prefix Table"; + list recent-prefix { + description + "BGP Recent Prefix"; + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for + ip prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the subnet prefix"; + } + uses BGP-RECENT-NET-BAG; + } + } + container advertised-path-counts { + description + "The BGP Advertised paths table (bestpath)"; + list advertised-path-count { + key "neighbor-address"; + description + "The BGP Advertised path table Count + (bestpath)"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-NBR-ADV-CNT-BAG; + } + } + container path-labeled-table { + description + "The BGP Path Labeled Table"; + uses PATH; + } + container orr-group-table-entries { + description + "The BGP Optimal Route Reflection Group Table"; + list orr-group-table-entry { + key "orr-grp-name"; + description + "A BGP Optimal Route Reflection Group Table + Entry"; + leaf orr-grp-name { + type xr:Cisco-ios-xr-string; + description + "The BGP Optimal Route Reflection Group Name"; + } + uses BGP-ORR-GROUP-BAG; + } + } + container advertised-paths { + description + "The BGP Advertised paths table (add-paths)"; + list advertised-path { + description + "A BGP Advertised paths table entry + (add-paths)"; + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for + ip prefix, else in hex string format"; + } + leaf prefix-length { + type uint32; + description + "Length of the subnet prefix"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor "; + } + uses BGP-PATH-MULTI; + } + } + container neighbor-af-table { + description + "The BGP Neighbor AF table"; + uses NEIGHBOR; + } + container epe-objects { + description + "The BGP Egress Engineering table"; + list epe-object { + description + "A BGP Egress Engineering object"; + leaf epe-type { + type Bgp-epe-obj; + description + "Type of EPE object. Can be Peer, Peer-set or + Adjacency"; + } + leaf epe-object-key { + type xr:Cisco-ios-xr-string; + description + "Value of the EPE object.Please provide a + number forPeer-Set and an IP addressfor peer + or adjacency"; + } + uses BGP-EPE-SET-BAG; + } + } + container path-local-sid-table { + description + "The BGP Path Local Sids Table"; + uses PATH; + } + container update-generation-neighbors { + description + "A BGP Update generate Table Entry for all BGP + neighbors"; + list update-generation-neighbor { + description + "BGP Update generate entry for BGP neighbor"; + leaf update-group-index { + type uint32 { + range "0..4294967295"; + } + description + "A BGP Update Group Entry index"; + } + leaf sub-group-index { + type uint32; + description + "A BGP Update Sub group Table index"; + } + leaf sub-group-id { + type uint32; + description + "A BGP Update Sub group table ID"; + } + leaf filter-group-index { + type uint32; + description + "A BGP Filter group Table index"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-UPDGEN-NBR-BAG; + } + } + container update-generation-address-family { + description + "A BGP Update Generate Entry for address-family"; + uses BGP-UPDGEN-AF-BAG; + } + container dampenings { + description + "The BGP Dampening table"; + list dampening { + description + "A BGP Dampening table entry"; + leaf reuse { + type uint32 { + range "0..65535"; + } + description + "Reuse array index"; + } + leaf version { + type uint32 { + range "0..4294967295"; + } + description + "Version number"; + } + leaf rd { + type Bgp-route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type xr:Cisco-ios-xr-string; + description + "Network prefix in dotted decimal format for + ip prefix, else in hex string format"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Length of the subnet prefix"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + leaf source-rd { + type Bgp-route-distinguisher; + description + "Source Route Distinguisher value"; + } + leaf orig-source-rd { + type Bgp-route-distinguisher; + description + "Original Source Route Distinguisher value"; + } + leaf path-id { + type uint32 { + range "0..4294967295"; + } + description + "Received Path ID"; + } + uses BGP-PATH-BAG; + } + } + container dependency { + description + "A BGP Dependency table entry"; + uses BGP-DEP-BAG; + } + container prefix-filters { + description + "The BGP Prefix Filter table"; + list prefix-filter { + key "neighbor-address"; + description + "A BGP prefix filter table entry"; + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-RCV-PFXLST-BAG; + } + } + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + uses ATTRIBUTE-TABLE; + } + } + } + + grouping PROCESS-INFO { + description + "Common node of default-vrf, vrfCommon node of + default-vrf, vrf"; + container process-info { + description + "A Process instance table entry"; + uses BGP-PROCESS-INFO-BAG; + } + } + + grouping OBJECT-TRACKING-PROVIDER-NBR-AF-TABLE { + description + "Common node of instance-active, instance-standby"; + container ot-prov-nbr-af-entries { + description + "BGP Object Tracking Provider Neighbor AF Table"; + list ot-prov-nbr-af-entry { + description + "BGP Object Tracking Provider Nbr Af Database + Entry"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF"; + } + leaf af-name { + type dt1:Bgp-address-family; + description + "Address family"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + uses BGP-OT-PROV-NBR-AF-DB-BAG; + } + } + } + + grouping CONFIGURATION-INHERITANCE-TABLE { + description + "Common node of config-instance-default-vrf, + config-vrf"; + container configuration-inheritances { + description + "The BGP configuration inheritance table"; + list configuration-inheritance { + description + "A BGP configuration inheritance table entry"; + leaf entity-type { + type Bgp-entity; + description + "Type of the entity configuration inheritance + table entry"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "IPv4 or IPv6 Address of the BGP Neighbor"; + } + leaf entity-name { + type xr:Cisco-ios-xr-string; + description + "Name of the entity configuration inheritance + table entry"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Length of the subnet prefix"; + } + uses BGP-CONFIG-RELATIVES-BAG; + } + } + } + + grouping UPDATE-INBOUND-FILTER-PROCESS { + description + "Common node of instance-active, instance-standby"; + container update-inbound-filter-process { + description + "Update inbound filtering information for the + process"; + uses BGP-UPDFILTER-PROC-BAG; + } + } + + container bgp { + config false; + description + "BGP operational data"; + container config-instances { + description + "Instance specific BGP data"; + list config-instance { + key "instance-name"; + description + "Instance specific BGP data"; + container config-instance-default-vrf { + description + "Default VRF related configuration data"; + uses ENTITY-CONFIGURATION-TABLE; + uses CONFIGURATION-USER-TABLE; + uses CONFIGURATION-INHERITANCE-TABLE; + } + container config-vrfs { + description + "VRF related configuration data"; + list config-vrf { + key "vrf-name"; + description + "Configuration data for a particular VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF"; + } + uses ENTITY-CONFIGURATION-TABLE; + uses CONFIGURATION-USER-TABLE; + uses CONFIGURATION-INHERITANCE-TABLE; + } + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "Name of the BGP instance"; + } + } + } + container instances { + description + "Instance specific BGP data"; + list instance { + key "instance-name"; + description + "Instance specific BGP data"; + container instance-active { + description + "Active BGP operational data"; + container segment-routing { + description + "Segment Routing related Operational Data"; + container srv6 { + description + "SRv6 related Operational Data"; + container summary { + description + "BGP SRv6 Summary"; + uses BGP-SRV6-SUMMARY-BAG; + } + container locator-entries { + description + "BGP SRv6 Locator Table"; + list locator-entry { + key "locator-name"; + description + "BGP SRv6 Locator Table Entry"; + leaf locator-name { + type xr:Cisco-ios-xr-string; + description + "Locator Name"; + } + uses BGP-SRV6-LOCATOR-BAG; + } + } + container sid-manager { + description + "BGP SRv6 SID Manager"; + uses BGP-SRV6-SID-MANAGER-BAG; + } + } + } + container label-entries { + description + "BGP Label Table"; + list label-entry { + key "label"; + description + "BGP Label Entry"; + leaf label { + type uint32 { + range "0..1048575"; + } + description + "Label index"; + } + uses BGP-LABEL-BAG; + } + } + container label-summary { + description + "BGP Label Summary"; + uses BGP-LABEL-SUMMARY-BAG; + } + container graceful-maintenance { + description + "BGP graceful maintenance related Operational + Data"; + container all-neighbor-entries { + description + "BGP graceful-maintenance nbr-all Table"; + list all-neighbor-entry { + key "nbr-all"; + description + "BGP graceful-maintenance nbr-all Table + Entry"; + leaf nbr-all { + type uint32; + description + "All neighbor state"; + } + uses BGP-GSHUT-NBR-ALL-BAG; + } + } + container location-entries { + description + "BGP graceful-maintenance Location Table"; + list location-entry { + key "node-id"; + description + "BGP graceful-maintenance Location Table + Entry"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses BGP-GSHUT-LOC-BAG; + } + } + container interface-entries { + description + "BGP graceful-maintenance Interface Table"; + list interface-entry { + key "interface-name"; + description + "BGP graceful-maintenance Interface Table + Entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses BGP-GSHUT-IF-BAG; + } + } + } + container label-rpf-entries { + description + "BGP Label RPF Table"; + list label-rpf-entry { + key "label"; + description + "BGP Label RPF Entry"; + leaf label { + type uint32 { + range "0..1048575"; + } + description + "Label index"; + } + uses BGP-LABEL-RPF-BAG; + } + } + uses UPDATE-GENERATION-PROCESS; + uses VRF-TABLE; + uses DEFAULT-VRF; + uses UPDATE-INBOUND-FILTER-PROCESS; + uses VRFDBVR-FENTRY; + uses ATTRIBUTE-TABLE; + uses RT-TABLE; + uses ATTRIBUTE-FILTER-GROUP-TABLE; + uses ORR-GROUP-GLOBAL-TABLE; + uses VRFDBVRF-TABLE; + uses RPKI-SERVER-LIST; + uses RPKI-ROUTE-TABLE; + uses UPDATE-INBOUND-ERROR-PROCESS; + uses RPKI-SUMMARY; + uses RT-HASH-TABLE; + uses OBJECT-TRACKING-PROVIDER-NBR-AF-TABLE; + } + container instance-standby { + description + "Standby BGP operational data"; + uses UPDATE-GENERATION-PROCESS; + uses VRF-TABLE; + uses DEFAULT-VRF; + uses UPDATE-INBOUND-FILTER-PROCESS; + uses VRFDBVR-FENTRY; + uses ATTRIBUTE-TABLE; + uses RT-TABLE; + uses ATTRIBUTE-FILTER-GROUP-TABLE; + uses ORR-GROUP-GLOBAL-TABLE; + uses VRFDBVRF-TABLE; + uses RPKI-SERVER-LIST; + uses RPKI-ROUTE-TABLE; + uses UPDATE-INBOUND-ERROR-PROCESS; + uses RPKI-SUMMARY; + uses RT-HASH-TABLE; + uses OBJECT-TRACKING-PROVIDER-NBR-AF-TABLE; + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "Name of the BGP instance"; + } + } + } + container bpm-instances-table { + description + "BGP instances information"; + container bpm-instances { + description + "BGP instances information"; + uses BGP-INSTANCES-INFO-BAG; + } + container bpm-orr-group-table-entries { + description + "Optimal Route Reflection Group Table in BPM"; + list bpm-orr-group-table-entry { + key "orr-grp-name"; + description + "Optimal Route Reflection Group Table Entry in + BPM"; + leaf orr-grp-name { + type xr:Cisco-ios-xr-string; + description + "The BGP Optimal Route Reflection Group Name"; + } + uses BPM-ORR-GROUP-BAG; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-cinetd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-cinetd-cfg.yang new file mode 100644 index 000000000..2b79a1bed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-cinetd-cfg.yang @@ -0,0 +1,62 @@ +module Cisco-IOS-XR-ipv4-cinetd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-cinetd-cfg"; + prefix ipv4-cinetd-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ip-tcp-cfg { + prefix a1; + } + + 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-cinetd package configuration. + + This YANG module augments the + Cisco-IOS-XR-ip-tcp-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-06-22 { + description + "IOS XR 6.4.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:ip/a1:cinetd" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ip-tcp-cfg'"; + leaf rate-limit { + type uint32 { + range "1..100"; + } + default "1"; + description + "Number of service requests accepted per second"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dc-cfg.yang new file mode 100644 index 000000000..531ea7a13 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dc-cfg.yang @@ -0,0 +1,193 @@ +module Cisco-IOS-XR-ipv4-dc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-dc-cfg"; + prefix ipv4-dc-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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-dc package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-05-21 { + description + "Fixing yang gaps."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Opt61-sub { + type enumeration { + enum "ascii" { + value 1; + description + "ascii"; + } + enum "sn-chassis" { + value 3; + description + "sn chassis"; + } + } + description + "Opt61 sub"; + } + + typedef Option61 { + type enumeration { + enum "option61" { + value 61; + description + "OPTION61"; + } + } + description + "Option61"; + } + + typedef Option60 { + type enumeration { + enum "option60" { + value 60; + description + "OPTION60"; + } + } + description + "Option60"; + } + + typedef Option77 { + type enumeration { + enum "option77" { + value 77; + description + "OPTION77"; + } + } + description + "Option77"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv4-dhcp-client-config { + presence "Indicates a ipv4-dhcp-client-config node is configured."; + description + "Interface IPv4 dhcp-addres-client-options + configuration"; + container option61-config { + presence "Indicates a option61-config node is configured."; + description + "Option 61"; + leaf opt61 { + type Option61; + mandatory true; + description + "Option 61"; + } + leaf subtype { + type Opt61-sub; + mandatory true; + description + "Enter Option61 SubType"; + } + leaf ascii-string { + type string { + length "1..255"; + } + description + "Enter ascii string for opt61Subtype ascii"; + } + } + container option60-config { + presence "Indicates a option60-config node is configured."; + description + "Option 60"; + leaf opt60 { + type Option60; + mandatory true; + description + "Option 60"; + } + leaf enable { + type empty; + mandatory true; + description + "Option 60 is enabled"; + } + leaf ascii-string { + type string { + length "1..255"; + } + mandatory true; + description + "Enter ascii string"; + } + } + container option77-config { + presence "Indicates a option77-config node is configured."; + description + "Option 77"; + leaf opt77 { + type Option77; + mandatory true; + description + "Option 77"; + } + leaf enable { + type empty; + mandatory true; + description + "Option 77 is enabled"; + } + leaf ascii-string { + type string { + length "1..255"; + } + mandatory true; + description + "Enter ascii string"; + } + } + leaf ipv4-dhcp-client { + type empty; + mandatory true; + description + "ipv4 address dhcp-client-options is enabled"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-cfg.yang new file mode 100644 index 000000000..3ccd691ec --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-cfg.yang @@ -0,0 +1,2785 @@ +module Cisco-IOS-XR-ipv4-dhcpd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-dhcpd-cfg"; + prefix ipv4-dhcpd-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 ipv4-dhcpd package configuration. + + This module contains definitions + for the following management objects: + ipv4-dhcpd: DHCP IPV4 configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-25 { + description + "Enabled DHCP client support on physical interface."; + semver:module-version "2.0.0"; + } + revision 2021-06-30 { + description + "Resolved EDIT and GET config issues for interface level relay remote-id options."; + semver:module-version "2.0.0"; + } + revision 2020-12-15 { + description + "Added interface level remote-id configuration to intake ASCII/Hex values. + 2020-08-15 + Added insert-bootfile option. + 2020-07-20 + Added IPoE DHCP CLI to enable option82 in release message. + 2020-06-15 + Added IPoE DHCP client keep subsIntf on new discover CLI. + 2020-06-14 + Added IPoE DHCP client reboot interval config. + 2020-03-31 + Interface vlan-intf session-limit configuration added. + 2020-03-26 + CNBNG profile cfg added."; + semver:module-version "1.2.0"; + } + revision 2019-10-18 { + description + "Interface remote-id configuration made optional."; + semver:module-version "1.1.0"; + } + revision 2019-05-31 { + description + "Added interface level remote-id configuration."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-10-24 { + description + "Fixed remote id mask."; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv4-match-default-mode { + type enumeration { + enum "server" { + value 3; + description + "Server"; + } + } + description + "Ipv4 match default mode"; + } + + typedef Ipv4dhcpd-client-id { + type uint32 { + range "0..4294967295"; + } + description + "Ipv4dhcpd client id"; + } + + typedef Dhcpv4-match-option { + type enumeration { + enum "60/60" { + value 60; + description + "Vendor class ID"; + } + enum "77/77" { + value 77; + description + "77 User class"; + } + enum "124/124" { + value 124; + description + "Vendor identifying class"; + } + enum "125/125" { + value 125; + description + "Vendor specific information"; + } + } + description + "Dhcpv4 match option"; + } + + typedef Ipv4dhcpd-layer { + type enumeration { + enum "layer2" { + value 2; + description + "Layer2"; + } + enum "layer3" { + value 3; + description + "Layer3"; + } + } + description + "Ipv4dhcpd layer"; + } + + typedef Dhcpv4-limit-lease1 { + type enumeration { + enum "interface" { + value 1; + description + "Interface"; + } + enum "circuit-id" { + value 2; + description + "Circuit ID"; + } + enum "remote-id" { + value 3; + description + "Remote ID"; + } + enum "circuit-id-remote-id" { + value 4; + description + "Circuit ID Remote ID"; + } + } + description + "Dhcpv4 limit lease1"; + } + + typedef Ipv4dhcpd-relay-giaddr-policy { + type enumeration { + enum "replace" { + value 1; + description + "Replace"; + } + enum "drop" { + value 2; + description + "Drop"; + } + } + description + "Ipv4dhcpd relay giaddr policy"; + } + + typedef Matchoption { + type enumeration { + enum "circuitid" { + value 1; + description + "Match circuit id of option 82 Relay-agent + specific class"; + } + enum "remoteid" { + value 2; + description + "Match remote id of option 82 Relay-agent + specific class"; + } + enum "60" { + value 60; + description + "Match option 60 vendor class id"; + } + enum "77" { + value 77; + description + "Match option 77 user class"; + } + enum "124" { + value 124; + description + "Match option 124 vendor-identifying vendor + class"; + } + enum "125" { + value 125; + description + "Match option 125 vendor-indentifying + vendor-specific info"; + } + } + description + "Matchoption"; + } + + typedef Ipv4dhcpd-relay-info-option-remote-id { + type enumeration { + enum "hex" { + value 1; + description + "Hex Format String"; + } + enum "ascii" { + value 2; + description + "Ascii Format String"; + } + enum "mac-address" { + value 4; + description + "MacAddress"; + } + } + description + "Ipv4dhcpd relay info option remote id"; + } + + typedef Ipv4dhcpd-giaddr-policy { + type enumeration { + enum "giaddr-policy-keep" { + value 0; + description + "Giaddr Policy Keep"; + } + } + description + "Ipv4dhcpd giaddr policy"; + } + + typedef Lease-limit-value { + type enumeration { + enum "per-interface" { + value 1; + description + "Insert the limit lease type interface"; + } + enum "per-circuit-id" { + value 2; + description + "Insert the limit lease type circuit-id"; + } + enum "per-remote-id" { + value 3; + description + "Insert the limit lease type remote-id"; + } + } + description + "Lease limit value"; + } + + typedef Dhcpv4-auth-username { + type enumeration { + enum "auth-username-mac" { + value 1; + description + "Authentication Username formating mac"; + } + enum "auth-username-giaddr" { + value 2; + description + "Authentication Username formating giaddr"; + } + } + description + "Dhcpv4 auth username"; + } + + typedef Proxy-action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Discover"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Discover"; + } + enum "relay" { + value 2; + description + "Relay vendor-id specific DHCP packets unaltered"; + } + } + description + "Proxy action"; + } + + typedef Ipv4dhcpd-broadcast-flag-policy { + type enumeration { + enum "ignore" { + value 0; + description + "Ignore"; + } + enum "check" { + value 1; + description + "check"; + } + enum "unicast-always" { + value 2; + description + "Unicast always"; + } + } + description + "Ipv4dhcpd broadcast flag policy"; + } + + typedef Ipv4-mode-class-mode { + type enumeration { + enum "server" { + value 3; + description + "Server"; + } + enum "proxy" { + value 4; + description + "Proxy"; + } + } + description + "Ipv4 mode class mode"; + } + + typedef Base-action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Discover"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Discover"; + } + } + description + "Base action"; + } + + typedef Dhcpv4-limit-lease { + type uint32 { + range "1..240000"; + } + description + "Dhcpv4 limit lease"; + } + + typedef Ipv4dhcpd-mode { + type enumeration { + enum "base" { + value 0; + description + "Base"; + } + enum "relay" { + value 1; + description + "Relay"; + } + enum "snoop" { + value 2; + description + "Snoop"; + } + enum "server" { + value 3; + description + "Server"; + } + enum "proxy" { + value 4; + description + "Proxy"; + } + enum "base2" { + value 5; + description + "Base2"; + } + enum "cnbng" { + value 7; + description + "Cnbng"; + } + } + description + "Ipv4dhcpd mode"; + } + + typedef Matchaction { + type enumeration { + enum "allow" { + value 0; + description + "Allow DHCP Discover"; + } + enum "drop" { + value 1; + description + "Drop DHCP Discover"; + } + } + description + "Matchaction"; + } + + typedef Policy { + type enumeration { + enum "ignore" { + value 0; + description + "Ignore the broadcast policy"; + } + enum "check" { + value 1; + description + "Check for broadcast flag"; + } + enum "unicastalways" { + value 2; + description + "Always Unicast the reply"; + } + } + description + "Policy"; + } + + typedef Ipv4dhcpd-relay-info-optionvpn-mode { + type enumeration { + enum "rfc" { + value 0; + description + "RFC"; + } + enum "cisco" { + value 1; + description + "Cisco"; + } + } + description + "Ipv4dhcpd relay info optionvpn mode"; + } + + typedef Ipv4dhcpd-fmt { + type enumeration { + enum "no-format" { + value 0; + description + "Not a Format String"; + } + enum "hex" { + value 1; + description + "Hex Format String"; + } + enum "ascii" { + value 2; + description + "Ascii Format String"; + } + enum "extended" { + value 3; + description + "Extended Format String"; + } + } + description + "Ipv4dhcpd fmt"; + } + + typedef Ipv4dhcpd-relay-info-option-authenticate { + type enumeration { + enum "received" { + value 0; + description + "Received"; + } + enum "inserted" { + value 1; + description + "Inserted"; + } + } + description + "Ipv4dhcpd relay info option authenticate"; + } + + typedef Ipv4dhcpd-relay-info-option-policy { + type enumeration { + enum "replace" { + value 0; + description + "Replace"; + } + enum "keep" { + value 1; + description + "Keep"; + } + enum "drop" { + value 2; + description + "Drop"; + } + enum "encapsulate" { + value 3; + description + "Encapsulate"; + } + } + description + "Ipv4dhcpd relay info option policy"; + } + + typedef Ipv4dhcpd-fmt-specifier { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Physical chassis"; + } + enum "physical-slot" { + value 2; + description + "Physical slot"; + } + enum "physical-sub-slot" { + value 3; + description + "Physical sub-slot"; + } + enum "physical-port" { + value 4; + description + "Physical port"; + } + enum "physical-sub-port" { + value 5; + description + "Physical sub-port"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner VLAN ID"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer VLAN ID"; + } + enum "l2-interface" { + value 8; + description + "L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "L3 Interface"; + } + enum "host-name" { + value 10; + description + "Hostname"; + } + } + description + "Ipv4dhcpd fmt specifier"; + } + + typedef Mac-mismatch-action { + type enumeration { + enum "forward" { + value 0; + description + "Forward"; + } + enum "drop" { + value 1; + description + "Drop"; + } + } + description + "Mac mismatch action"; + } + + grouping OPTION-CODE-TABLE { + description + "Common node of server, class"; + container option-codes { + description + "Table of OptionCode"; + list option-code { + key "option-code"; + description + "DHCP option code"; + leaf option-code { + type uint32 { + range "0..255"; + } + description + "DHCP option code"; + } + leaf ascii-string { + type string; + description + "ASCII string"; + } + leaf hex-string { + type string; + description + "Hexadecimal string"; + } + leaf force-insert { + type uint32; + description + "Set constant integer"; + } + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "Server's IP address"; + } + } + } + } + + container ipv4-dhcpd { + presence "Indicates a ipv4-dhcpd node is configured."; + description + "DHCP IPV4 configuration"; + container client-reboot-interval { + description + "Configure IPoE DHCP client reboot interval"; + leaf client-reboot-interval { + type uint32 { + range "10..30"; + } + description + "Client reboot time value"; + } + leaf max-client-reboot-interval { + type uint32 { + range "10..300"; + } + description + "Client Max reboot time value"; + } + } + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF table"; + container profile { + presence "Indicates a profile node is configured."; + description + "Profile name and mode"; + leaf vrf-profile-name { + type string; + mandatory true; + description + "Profile name"; + } + leaf mode { + type Ipv4dhcpd-mode; + mandatory true; + description + "Dhcp mode"; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + } + } + container profiles { + description + "DHCP IPV4 Profile Table"; + list profile { + key "profile-name"; + description + "DHCP IPV4 Profile"; + container modes { + description + "DHCP IPV4 Profile modes"; + list mode { + key "mode"; + description + "DHCP IPV4 Profile mode"; + container snoop { + description + "DHCP Snoop profile"; + container relay-information-option { + description + "DHCP Snoop profile"; + container remote-id { + description + "Enter remote-id value"; + leaf format-type { + type uint32 { + range "1..2"; + } + description + "Format type, 1. Hex 2. ASCII"; + } + leaf remote-id-value { + type string; + description + "Enter remote-id value"; + } + } + leaf insert { + type empty; + description + "Insert Relay Agent Information circuit ID + and remote ID suboptions in client request"; + } + leaf allow-untrusted { + type empty; + description + "Forward untrusted packets"; + } + leaf policy { + type Ipv4dhcpd-relay-info-option-policy; + description + "Relay information option policy"; + } + } + leaf trusted { + type empty; + description + "Trusted sources"; + } + } + container base { + presence "Indicates a base node is configured."; + description + "DHCP Base Profile"; + container default-profile { + description + "Enable the default profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Profile name"; + } + leaf profile-mode { + type uint32; + description + "none"; + } + } + container match { + description + "Insert match keyword"; + container option-filters { + description + "Table of Option"; + list option-filter { + key "matchoption pattern format"; + description + "Specify match option"; + leaf option-action { + type Base-action; + description + "Vendor action"; + } + leaf matchoption { + type uint32; + description + "Match option 60"; + } + leaf pattern { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter hex pattern string"; + } + leaf format { + type uint32; + description + "Set constant integer"; + } + } + } + container def-options { + description + "Table of Option"; + list def-option { + key "def-matchoption"; + description + "Specify match option"; + leaf def-matchoption { + type uint32; + description + "Match option 60"; + } + leaf def-matchaction { + type Base-action; + mandatory true; + description + "Vendor action"; + } + } + } + } + container base-relay-opt { + description + "Insert Relay Agent Information circuit ID + and remote ID suboptions in client request"; + leaf remote-id { + type string { + length "1..256"; + } + description + "Enter remote-id value"; + } + leaf authenticate { + type uint32; + description + "Specify Relay Agent Information Option + authenticate"; + } + } + container dhcp-to-aaa { + description + "Enable to provide the list of options need + to send to aaa"; + container base-option { + description + "option type"; + container list { + description + "List of options"; + leaf option-all { + type uint32; + description + "option all"; + } + leaf-list option { + type uint32 { + range "1..255"; + } + max-elements "12"; + description + "List of options"; + } + } + } + } + container base-match { + description + "Insert match keyword"; + container options { + description + "Specify match option"; + list option { + key "opt60 opt60-hex-str format"; + description + "none"; + container option-profile { + description + "Enter a profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Profile name"; + } + leaf profile-mode { + type uint32; + description + "none"; + } + } + leaf opt60 { + type uint32; + description + "none"; + } + leaf opt60-hex-str { + type xr:Cisco-ios-xr-string; + description + "Enter hex pattern string"; + } + leaf format { + type uint32; + description + "Set constant integer"; + } + } + } + container mode-classes { + description + "Table of ModeClass"; + list mode-class { + key "class-name"; + description + "Specify PPP/IPoE class option"; + container profile { + description + "Enter proxy or server profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Profile name"; + } + leaf mode { + type Ipv4-mode-class-mode; + description + "Specify mode"; + } + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Class name"; + } + } + } + } + container match-default { + description + "Default match option"; + container profile { + description + "Enter server profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Profile name"; + } + leaf default-mode { + type Ipv4-match-default-mode; + description + "Specify mode"; + } + } + } + leaf enable { + type empty; + mandatory true; + description + "Enable the DHCP IPv4 Base Profile"; + } + } + container server { + presence "Indicates a server node is configured."; + description + "DHCP Server profile"; + container server-id-check { + description + "Validate server ID check"; + leaf check { + type empty; + description + "specify server-id-check disable"; + } + } + container lease-limit { + description + "Specify limit lease"; + leaf lease-limit-value { + type Lease-limit-value; + description + "Configure Lease limit value"; + } + leaf range { + type uint32 { + range "1..240000"; + } + description + "Value of limit lease count in Decimal"; + } + } + container requested-ip-address { + description + "Validate Requested IP Address"; + leaf check { + type empty; + description + "specify requested-ip-address-check disable"; + } + } + container aaa-server { + description + "Enable aaa dhcp option force-insert"; + container dhcp-option { + description + "Enable aaa dhcp option force-insert"; + leaf force-insert { + type empty; + description + "Enable aaa dhcp option force-insert"; + } + } + } + container default-routers { + description + "default routers"; + leaf-list default-router { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "Router's IP address"; + } + } + container delete-binding-on-discover { + description + "Delete binding on receiving discover"; + leaf disable { + type empty; + description + "Disable delete binding on discover"; + } + } + container net-bios-name-servers { + description + "NetBIOS name servers"; + leaf-list net-bios-name-server { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "NetBIOSNameServer's IP address"; + } + } + container match { + description + "Insert match keyword"; + container option-defaults { + description + "Table of OptionDefault"; + list option-default { + key "matchoption"; + description + "Specify match option"; + leaf matchoption { + type Matchoption; + description + "Match option 60"; + } + leaf matchaction { + type Matchaction; + mandatory true; + description + "Vendor action"; + } + } + } + container options { + description + "Table of Option"; + list option { + key "matchoption pattern format"; + description + "Specify match option"; + leaf matchoption { + type Matchoption; + description + "Match option 60"; + } + leaf pattern { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter hex pattern string"; + } + leaf format { + type uint32; + description + "Set constant integer"; + } + leaf matchaction { + type Matchaction; + mandatory true; + description + "Vendor action"; + } + } + } + } + container broadcast-flag { + description + "None"; + leaf policy { + type Policy; + description + "Specify broadcast flag policy"; + } + } + container session { + description + "Change sessions configuration"; + container throttle-type { + description + "Throttle DHCP sessions based on MAC + address"; + container mac-throttle { + description + "Throttle DHCP sessions from any one MAC + address"; + leaf num-discover { + type uint32 { + range "1..65535"; + } + description + "Number of discovers at which to throttle"; + } + leaf num-request { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle request period (in secs)"; + } + leaf num-block { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle blocking period (in secs)"; + } + } + } + } + container classes { + description + "Table of Class"; + list class { + key "class-name"; + description + "Create or enter server profile class"; + container default-routers { + description + "default routers"; + leaf-list default-router { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "Router's IP address"; + } + } + container net-bios-name-servers { + description + "NetBIOS name servers"; + leaf-list net-bios-name-server { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "NetBIOSNameServer's IP address"; + } + } + container class-match { + description + "Insert match keyword"; + container class-options { + description + "Table of Class-Option"; + list class-option { + key "matchoption"; + description + "Specify match option"; + leaf matchoption { + type Matchoption; + description + "Match options"; + } + leaf pattern { + type string { + length "1..64"; + } + description + "Enter hex pattern string"; + } + leaf bit-mask { + type string { + length "1..64"; + } + description + "Enter bit mask pattern string"; + } + } + } + leaf l2-interface { + type xr:Interface-name; + description + "Specify match l2-interface"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Specify match VRF"; + } + } + container lease { + description + "lease"; + leaf infinite { + type string; + description + "Set string"; + } + leaf days { + type uint32 { + range "0..365"; + } + units "day"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23"; + } + units "hour"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + units "minute"; + description + "Minutes"; + } + } + container netbios-node-type { + description + "NetBIOS node type"; + leaf broadcast-node { + type string; + description + "Set string"; + } + leaf hybrid-node { + type string; + description + "Set string"; + } + leaf mixed-node { + type string; + description + "Set string"; + } + leaf peer-to-peer-node { + type string; + description + "Set string"; + } + leaf hexadecimal { + type xr:Hex-integer; + description + "Hexadecimal number"; + } + } + container dns-servers { + description + "DNS servers"; + leaf-list dns-server { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "DNS Server's IP address"; + } + } + leaf subnet-mask { + type inet:ipv4-address-no-zone; + description + "Configure Subnet Mask"; + } + leaf pool { + type string; + description + "Specify the pool"; + } + leaf enable { + type empty; + description + "Enable Create or enter server profile + class. Deletion of this object also + causes deletion of all associated objects + under Class."; + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Domain name"; + } + leaf boot-filename { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Boot Filename"; + } + leaf next-server { + type inet:ipv4-address-no-zone; + description + "Configure the tftp-server IP to be used + by the client"; + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "class name"; + } + uses OPTION-CODE-TABLE; + } + } + container relay { + description + "Specify Relay Agent Information Option + configuration"; + leaf authenticate { + type uint32; + description + "Specify Relay Agent Information Option + authenticate"; + } + } + container lease { + description + "lease"; + leaf infinite { + type string; + description + "Set string"; + } + leaf days { + type uint32 { + range "0..365"; + } + units "day"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23"; + } + units "hour"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + units "minute"; + description + "Minutes"; + } + } + container netbios-node-type { + description + "NetBIOS node type"; + leaf broadcast-node { + type string; + description + "Set string"; + } + leaf hybrid-node { + type string; + description + "Set string"; + } + leaf mixed-node { + type string; + description + "Set string"; + } + leaf peer-to-peer-node { + type string; + description + "Set string"; + } + leaf hexadecimal { + type xr:Hex-integer; + description + "Hexadecimal number"; + } + } + container dns-servers { + description + "DNS servers"; + leaf-list dns-server { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "DNS Server's IP address"; + } + } + container dhcp-to-aaa { + description + "Enable to provide the list of options need + to send to aaa"; + container option { + description + "option type"; + container list { + description + "List of options"; + leaf option-all { + type uint32; + description + "Set constant integer"; + } + leaf-list option-number { + type uint32; + max-elements "12"; + description + "Option number"; + } + } + } + } + leaf server-allow-move { + type empty; + description + "Allow dhcp subscriber move"; + } + leaf enable { + type empty; + mandatory true; + description + "DHCP IPV4 profile mode enable"; + } + leaf subnet-mask { + type inet:ipv4-address-no-zone; + description + "Configure Subnet Mask"; + } + leaf insert-bootfile { + type empty; + description + "Force insert bootfile name"; + } + leaf pool { + type string { + length "1..64"; + } + description + "Specify the Pool name"; + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Domain name"; + } + leaf secure-arp { + type empty; + description + "Enable Secure Arp"; + } + leaf arp-instal-skip-stdalone { + type empty; + description + "Skip ARP installation for standalone + sessions"; + } + leaf boot-filename { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Boot Filename"; + } + leaf enable-session-limit { + type empty; + description + "Enable vlan or interface session limit"; + } + leaf next-server { + type inet:ipv4-address-no-zone; + description + "Configure the tftp-server IP to be used by + the client"; + } + uses OPTION-CODE-TABLE; + } + container relay { + description + "DHCP Relay profile"; + container gi-addr-policy { + presence "Indicates a gi-addr-policy node is configured."; + description + "GIADDR policy"; + leaf policy { + type Ipv4dhcpd-relay-giaddr-policy; + mandatory true; + description + "GIADDR policy"; + } + } + container vrfs { + description + "VRF Helper Addresses"; + list vrf { + key "vrf-name"; + description + "VRF Name"; + container helper-addresses { + description + "Helper Addresses"; + list helper-address { + key "ip-address"; + description + "Helper Address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IPV4 Address"; + } + leaf enable { + type empty; + description + "Enable helper - deprecated"; + } + leaf gateway-address { + type inet:ipv4-address-no-zone; + description + "GatewayAddress"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + } + } + container relay-information-option { + description + "Relay agent information option"; + container remote-id { + description + "Enter remote-id value"; + leaf format-type { + type uint32 { + range "1..2"; + } + description + "Format type, 1. Hex 2. ASCII"; + } + leaf remote-id-value { + type string; + description + "Enter remote-id value"; + } + } + leaf vpn-mode { + type Ipv4dhcpd-relay-info-optionvpn-mode; + description + "VPN Mode"; + } + leaf subscriber-id { + type string; + description + "Subscriber ID"; + } + leaf allow-in-release-msg { + type empty; + description + "handle option82 in release message"; + } + leaf insert { + type empty; + description + "Insert Relay Agent Information circuit ID + and remote ID suboptions in client + requests"; + } + leaf check { + type empty; + description + "Check Relay Agent Information Option in + server reply"; + } + leaf vpn { + type empty; + description + "Insert VPN options"; + } + leaf allow-untrusted { + type empty; + description + "Forward untrusted packets"; + } + leaf policy { + type Ipv4dhcpd-relay-info-option-policy; + description + "Relay information option policy"; + } + } + container broadcast-policy { + presence "Indicates a broadcast-policy node is configured."; + description + "Broadcast Flag policy"; + leaf policy { + type Ipv4dhcpd-broadcast-flag-policy; + mandatory true; + description + "Broadcast flag policy"; + } + } + leaf mac-mismatch-action { + type Mac-mismatch-action; + description + "Action to take if L2 header source Mac and + dhcp header mac address don't match"; + } + } + container proxy { + presence "Indicates a proxy node is configured."; + description + "DHCP proxy profile"; + container giaddr { + presence "Indicates a giaddr node is configured."; + description + "Specify gateway address policy"; + leaf policy { + type Ipv4dhcpd-giaddr-policy; + mandatory true; + description + "Gateway address policy"; + } + } + container classes { + description + "DHCP class table"; + list class { + key "class-name"; + description + "DHCP class"; + container match { + description + "Match option"; + container option { + description + "Match option"; + leaf option-type { + type Dhcpv4-match-option; + description + "Match option"; + } + leaf pattern { + type string; + description + "Hex pattern string"; + } + leaf bit-mask { + type string; + description + "Bit mask pattern"; + } + } + leaf vrf { + type string; + description + "Match VRF name"; + } + } + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "VRF name"; + container helper-addresses { + description + "Helper addresses"; + list helper-address { + key "server-address"; + description + "Helper address"; + leaf server-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + leaf gateway-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Gateway address"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + leaf enable { + type empty; + mandatory true; + description + "Enable the DHCP IPV4 proxy class"; + } + leaf class-name { + type xr:Cisco-ios-xr-string; + description + "Class name"; + } + } + } + container auth-username { + presence "Indicates a auth-username node is configured."; + description + "Authentication Username formating"; + leaf arg1 { + type Dhcpv4-auth-username; + mandatory true; + description + "Username Formatting first argument "; + } + leaf arg2 { + type Dhcpv4-auth-username; + description + "Username Formatting second argument "; + } + } + container relay-information { + description + "Relay agent information option"; + leaf option { + type empty; + description + "Insert relay rgent information circuit ID + and remote ID suboptions in client + requests"; + } + leaf vpn { + type empty; + description + "Insert VPN options"; + } + leaf allow-untrusted { + type empty; + description + "Forward untrusted packets"; + } + leaf circuit-id { + type empty; + description + "Insert Circuit-id sub-option"; + } + leaf policy { + type Ipv4dhcpd-relay-info-option-policy; + description + "Relay information option policy"; + } + leaf vpn-mode { + type Ipv4dhcpd-relay-info-optionvpn-mode; + description + "VPN Mode"; + } + leaf remote-id-xr { + type empty; + description + "Insert Remote-id sub-option"; + } + leaf remote-id-suppress { + type empty; + description + "Suppress Remote ID"; + } + leaf check { + type empty; + description + "Check relay agent information option in + server reply"; + } + leaf remote-id { + type string; + description + "Remote ID"; + } + leaf authenticate { + type Ipv4dhcpd-relay-info-option-authenticate; + description + "Relay information option authenticate"; + } + } + container dhcp-to-aaa { + description + "Enable to provide the list of options need + to send to aaa"; + container option { + description + "option type"; + container list { + description + "List of options"; + leaf option-all { + type uint32; + description + "option all"; + } + leaf-list option { + type uint32 { + range "1..255"; + } + max-elements "12"; + description + "List of options"; + } + } + } + } + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "VRF name"; + container helper-addresses { + description + "Helper addresses"; + list helper-address { + key "server-address"; + description + "Helper address"; + leaf server-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + leaf gateway-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Gateway address"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container sessions { + description + "Change sessions configuration"; + container proxy-throttle-type { + description + "Throttle DHCP sessions based on MAC + address"; + container proxy-mac-throttle { + description + "Throttle DHCP sessions from any one MAC + address"; + leaf num-discover { + type uint32 { + range "1..65535"; + } + description + "Number of discovers at which to throttle"; + } + leaf num-request { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle request period (in secs)"; + } + leaf num-block { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle blocking period (in secs)"; + } + } + } + } + container limit-lease { + presence "Indicates a limit-lease node is configured."; + description + "Proxy limit lease"; + leaf limit-type { + type Dhcpv4-limit-lease1; + mandatory true; + description + "Lease limit type"; + } + leaf limit-lease-count { + type Dhcpv4-limit-lease; + mandatory true; + description + "Limit lease count"; + } + } + container lease-proxy { + description + "DHCPv4 lease proxy"; + leaf client-lease-time { + type uint32 { + range "300..4294967295"; + } + description + "Specify client lease proxy time"; + } + leaf set-server-options { + type empty; + description + "Set DHCP server sent options in lease + proxy generating ACK"; + } + } + container broadcast-flag { + presence "Indicates a broadcast-flag node is configured."; + description + "Specify broadcast flag"; + leaf policy { + type Ipv4dhcpd-broadcast-flag-policy; + mandatory true; + description + "Broadcast flag policy"; + } + } + container match { + description + "Insert match keyword"; + container def-options { + description + "Table of Option"; + list def-option { + key "def-matchoption"; + description + "Specify match option"; + leaf def-matchoption { + type uint32; + description + "Match option 60"; + } + leaf def-matchaction { + type Proxy-action; + mandatory true; + description + "Vendor action"; + } + } + } + container option-filters { + description + "Table of Option"; + list option-filter { + key "matchoption pattern format"; + description + "Specify match option"; + leaf matchoption { + type uint32; + description + "Match option 60"; + } + leaf pattern { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter hex pattern string"; + } + leaf format { + type uint32; + description + "Set constant integer"; + } + leaf matchaction { + type Proxy-action; + mandatory true; + description + "Vendor action"; + } + } + } + } + leaf handle-discover-in-bound { + type empty; + description + "handle new discover in bound state"; + } + leaf proxy-allow-move { + type empty; + description + "Allow dhcp subscriber move"; + } + leaf secure-arp { + type empty; + description + "DHCP IPV4 profile proxy secure-arp enable"; + } + leaf delayed-authen-proxy { + type empty; + description + "For BNG session, delay the authentication"; + } + leaf enable { + type empty; + mandatory true; + description + "DHCP IPV4 profile mode enable"; + } + } + container cnbng { + presence "Indicates a cnbng node is configured."; + description + "DHCP cnbng profile"; + leaf enable { + type empty; + mandatory true; + description + "DHCP IPV4 profile mode enable"; + } + } + leaf enable { + type empty; + description + "Enable the DHCP IPV4 Profile mode"; + } + leaf mode { + type Ipv4dhcpd-mode; + description + "DHCP IPV4 Profile mode"; + } + } + } + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile Name"; + } + } + } + container database { + description + "Enable DHCP binding database storage to file + system"; + leaf proxy { + type empty; + description + "Enable DHCP proxy binding database storage to + file system"; + } + leaf server { + type empty; + description + "Enable DHCP server binding database storage to + file system"; + } + leaf snoop { + type empty; + description + "Enable DHCP snoop binding database storage to + file system"; + } + leaf full-write-interval { + type uint32 { + range "1..1440"; + } + default "10"; + description + "Full file write interval (default 10 minutes)"; + } + leaf incremental-write-interval { + type uint32 { + range "1..1440"; + } + default "1"; + description + "Incremental file write interval (default 1 + minutes)"; + } + } + container interfaces { + description + "DHCP IPV4 Interface Table"; + list interface { + key "interface-name"; + description + "DHCP IPV4 Interface"; + container proxy-interface { + description + "DHCP IPv4 proxy information"; + container dhcp-circuit-id { + presence "Indicates a dhcp-circuit-id node is configured."; + description + "Circuit ID value"; + leaf circuit-id { + type string; + mandatory true; + description + "DHCP IPv4 circuit ID value"; + } + leaf format { + type Ipv4dhcpd-fmt; + mandatory true; + description + "Format String"; + } + leaf argument1 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument2 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument3 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument4 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument5 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument6 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument7 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument8 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument9 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument10 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument11 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument12 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument13 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument14 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument15 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument16 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + } + leaf proxy-remote-id { + type Ipv4dhcpd-relay-info-option-remote-id; + description + "Insert option 82 remote-id sub-option"; + } + leaf profile { + type string; + description + "Interface profile name"; + } + } + container base-interface { + description + "DHCP IPv4 Base profile information"; + container base-dhcp-circuit-id { + presence "Indicates a base-dhcp-circuit-id node is configured."; + description + "Circuit ID value"; + leaf circuit-id { + type string; + mandatory true; + description + "DHCP IPv4 circuit ID value"; + } + leaf format { + type Ipv4dhcpd-fmt; + mandatory true; + description + "Format String"; + } + leaf argument1 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument2 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument3 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument4 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument5 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument6 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument7 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument8 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument9 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument10 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument11 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument12 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument13 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument14 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument15 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument16 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + } + leaf profile { + type string; + description + "Interface profile name"; + } + } + container relay-interface { + description + "DHCP IPv4 relay information"; + container relay-remote-id { + description + "Insert option 82 remote-id sub-option"; + leaf remote-id-opt { + type Ipv4dhcpd-relay-info-option-remote-id; + description + "Remote ID option"; + } + leaf remote-id-value { + type string; + description + "Enter remote-id value"; + } + } + container relay-dhcp-circuit-id { + presence "Indicates a relay-dhcp-circuit-id node is configured."; + description + "Circuit ID value"; + leaf circuit-id { + type string; + mandatory true; + description + "DHCP IPv4 circuit ID value"; + } + leaf format { + type Ipv4dhcpd-fmt; + mandatory true; + description + "Format String"; + } + leaf argument1 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument2 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument3 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument4 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument5 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument6 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument7 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument8 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument9 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument10 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument11 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument12 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument13 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument14 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument15 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument16 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + } + } + container static-mode { + description + "Static Table Entries containing MAC address to + IP address bindings"; + container statics { + description + "Static Table Entries containing MAC address + to IP address bindings"; + list static { + key "mac-address client-id layer"; + description + "DHCP static binding of Mac address to IP + address"; + leaf mac-address { + type yang:mac-address; + description + "MACAddress"; + } + leaf client-id { + type Ipv4dhcpd-client-id; + description + "Client Id"; + } + leaf layer { + type Ipv4dhcpd-layer; + description + "DHCP IPV4 Static layer"; + } + leaf static-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address"; + } + } + } + } + container cnbng-interface { + description + "DHCP IPv4 cnbng information"; + leaf profile { + type string; + description + "Interface profile name"; + } + } + container profile { + presence "Indicates a profile node is configured."; + description + "Profile name and mode"; + leaf profile-name { + type string; + mandatory true; + description + "Profile name"; + } + leaf mode { + type Ipv4dhcpd-mode; + mandatory true; + description + "DHCP mode"; + } + } + container server-interface { + description + "DHCP IPv4 Server information"; + container server-dhcp-circuit-id { + presence "Indicates a server-dhcp-circuit-id node is configured."; + description + "Circuit ID value"; + leaf circuit-id { + type string; + mandatory true; + description + "DHCP IPv4 circuit ID value"; + } + leaf format { + type Ipv4dhcpd-fmt; + mandatory true; + description + "Format String"; + } + leaf argument1 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument2 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument3 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument4 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument5 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument6 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument7 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument8 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument9 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument10 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument11 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument12 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument13 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument14 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument15 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + leaf argument16 { + type Ipv4dhcpd-fmt-specifier; + description + "Argument"; + } + } + leaf profile { + type string; + description + "Interface profile name"; + } + } + container snoop-interface { + description + "DHCP IPv4 snoop information"; + container snoop-circuit-id { + description + "Configure circuit ID for snoop 1. Hex 2. + ASCII"; + leaf format-type { + type uint32 { + range "1..2"; + } + description + "Format type, 1. Hex 2. ASCII"; + } + leaf circuit-id-value { + type string; + description + "Enter circuit-id value"; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + container duplicate-mac-allowed { + presence "Indicates a duplicate-mac-allowed node is configured."; + description + "Allow Duplicate MAC Address"; + leaf duplicate-mac { + type empty; + mandatory true; + description + "Duplicate mac is allowed"; + } + leaf exclude-vlan { + type empty; + description + "Exclude vlan"; + } + leaf include-giaddr { + type empty; + description + "Include giaddr"; + } + } + container rate-limit { + description + "Rate limit ingress packets"; + leaf num-period { + type uint32 { + range "1..1000"; + } + default "200"; + description + "Rate limiter period in msec (default: 200 msec)"; + } + leaf num-discover { + type uint32 { + range "0..1000"; + } + default "100"; + description + "Max DISCOVER packets per rate-limiter period + (default 100)"; + } + } + leaf enable { + type empty; + mandatory true; + description + "DHCP IPV4 configuration"; + } + leaf outer-cos { + type uint32 { + range "0..7"; + } + description + "Configure outer cos values for dhcp packets"; + } + leaf allow-client-id-change { + type empty; + description + "For BNG session, allow client id change for a + client MAC"; + } + leaf inner-cos { + type uint32 { + range "0..7"; + } + description + "Configure inner cos values for dhcp packets"; + } + leaf disable-shadow-binding { + type empty; + description + "Option to disable shadow binding"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub1.yang new file mode 100644 index 000000000..5db795bde --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub1.yang @@ -0,0 +1,1914 @@ +submodule Cisco-IOS-XR-ipv4-dhcpd-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-dhcpd-oper { + prefix Cisco-IOS-XR-ipv4-dhcpd-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-dhcpd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-08 { + description + "Migrated LEAF-LIST with duplicate value to LIST type. + 2022-09-08 + Fixed oper for dhcp statistics and binding. + 2022-02-11 + Enhanced interface length based on IM changes. + 2021-10-07 + Added session_in_bound_client_id_changed counter in debug stats. + 2021-10-05 + Migrated LEAF-LIST with duplicate value to LIST type."; + semver:module-version "3.0.0"; + } + revision 2021-09-14 { + description + "Fixed GET-OPER to display interface name in standard format. + 2021-09-08 + Fixed GET-OPER rpc response which returns false value. + 2021-08-23 + Migrated LEAF-LIST with duplicate value to LIST type. + 2021-06-21 + Added l2-interface information for show command + 2021-04-09 + NodeID keyword changed from nodeid to NodeName as per standard"; + semver:module-version "2.0.0"; + } + revision 2020-11-20 { + description + "Added Yang Support for ADT,to retrive statistcs with help of vrf/interface. + 2020-09-30 + Modified to accommodate cdm changes"; + semver:module-version "1.1.0"; + } + revision 2019-06-25 { + description + "Introduced an option to show dhcp rate limit hit counters."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-09-20 { + description + "Fixing yang gaps."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vrf-string { + type string { + length "0..33"; + } + description + "Vrf string"; + } + + typedef Dhcp-issu-version { + type enumeration { + enum "version1" { + value 0; + description + "Version 1"; + } + enum "version2" { + value 1; + description + "Version 2"; + } + } + description + "Dhcp issu version"; + } + + typedef Dhcp-issu-phase { + type enumeration { + enum "phase-not-started" { + value 0; + description + "An ISSU event has not started"; + } + enum "phase-load" { + value 1; + description + "ISSU Load Phase"; + } + enum "phase-run" { + value 2; + description + "ISSU Run Phase"; + } + enum "phase-completed" { + value 3; + description + "An ISSU event has completed successfully"; + } + enum "phase-aborted" { + value 4; + description + "An ISSU event has aborted"; + } + } + description + "Dhcp issu phase"; + } + + typedef Dhcp-issu-role { + type enumeration { + enum "role-primary" { + value 0; + description + "Primary role"; + } + enum "role-secondary" { + value 1; + description + "Secondary role"; + } + } + description + "Dhcp issu role"; + } + + typedef Bag-dhcpd-intf-srg-role { + type enumeration { + enum "none" { + value 0; + description + "DHCPv4 Interface SRG role NONE"; + } + enum "master" { + value 1; + description + "DHCPv4 Interface SRG role Master"; + } + enum "slave" { + value 2; + description + "DHCPv4 Interface SRG role Slave"; + } + } + description + "Bag dhcpd intf srg role"; + } + + typedef Bag-dhcpd-base-mode { + type enumeration { + enum "base" { + value 0; + description + "Base"; + } + enum "relay" { + value 1; + description + "Relay"; + } + enum "snoop" { + value 2; + description + "Snoop"; + } + enum "server" { + value 3; + description + "Server"; + } + enum "proxy" { + value 4; + description + "Proxy"; + } + enum "dynamic" { + value 5; + description + "Dynamic"; + } + enum "client" { + value 6; + description + "Client"; + } + enum "cnbng" { + value 7; + description + "CNBNG"; + } + enum "max" { + value 8; + description + "Max"; + } + } + description + "Bag dhcpd base mode"; + } + + typedef Bag-dhcpd-proxy-state { + type enumeration { + enum "initializing" { + value 0; + description + "Initializing"; + } + enum "selecting" { + value 1; + description + "Selecting"; + } + enum "requesting" { + value 2; + description + "Requesting"; + } + enum "bound" { + value 3; + description + "Bound"; + } + enum "renewing" { + value 4; + description + "Renewing"; + } + enum "informing" { + value 5; + description + "Informing"; + } + enum "deleting" { + value 6; + description + "Deleting"; + } + enum "create-dpm" { + value 7; + description + "Create dpm"; + } + enum "offer-sent" { + value 8; + description + "Offer sent"; + } + enum "update-dpm" { + value 9; + description + "Update dpm"; + } + enum "route-install" { + value 10; + description + "Route install"; + } + enum "disc-dpm" { + value 11; + description + "Disc dpm"; + } + enum "renew-new-intf" { + value 12; + description + "Renew new intf"; + } + enum "other-intf-dpm" { + value 13; + description + "Other intf dpm"; + } + enum "request-dpm" { + value 14; + description + "Request dpm"; + } + enum "change-addr-dpm" { + value 15; + description + "Change addr dpm"; + } + enum "max" { + value 16; + description + "Max"; + } + } + description + "Bag dhcpd proxy state"; + } + + typedef Proxy-lease-limit { + type enumeration { + enum "none" { + description + "Proxy lease limit type none"; + } + enum "interface" { + description + "Proxy lease limit type interface"; + } + enum "circuit-id" { + description + "Proxy lease limit type circuit ID"; + } + enum "remote-id" { + description + "Proxy lease limit type remote ID"; + } + enum "remote-id-circuit-id" { + description + "Proxy lease limit type remote ID + circuit ID"; + } + } + description + "Proxy profile lease limit type"; + } + + typedef Broadcast-flag { + type enumeration { + enum "ignore" { + description + "Broadcast policy ignore"; + } + enum "check" { + description + "Broadcast policy check"; + } + enum "unicast-always" { + description + "Broadcast policy unicast always"; + } + } + description + "Proxy profile broadcast flag"; + } + + typedef Relay-info-vpn-mode { + type enumeration { + enum "rfc" { + description + "RFC Mode"; + } + enum "cisco" { + description + "Cisco Mode"; + } + } + description + "Relay Info Vpn Mode"; + } + + typedef Relay-info-authenticate { + type enumeration { + enum "received" { + description + "Relay authenticate received"; + } + enum "inserted" { + description + "Relay authenticate inserted"; + } + } + description + "Profile relay authenticate"; + } + + typedef Relay-info-policy { + type enumeration { + enum "replace" { + description + "Relay policy replace"; + } + enum "keep" { + description + "Relay policy keep"; + } + enum "drop" { + description + "Relay policy drop"; + } + enum "encapsulate" { + description + "Relay policy encapsulate"; + } + } + description + "Proxy profile relay policy"; + } + + typedef String1 { + type string { + length "0..33"; + } + description + "String1"; + } + + typedef Bag-dhcpd-snoop-state { + type enumeration { + enum "init" { + value 0; + description + "Init"; + } + enum "selecting" { + value 1; + description + "Selecting"; + } + enum "requesting" { + value 2; + description + "Requesting"; + } + enum "bound" { + value 3; + description + "Bound"; + } + enum "renewing" { + value 4; + description + "Renewing"; + } + enum "informing" { + value 5; + description + "Informing"; + } + enum "max" { + value 6; + description + "Max"; + } + enum "unkown" { + value 7; + description + "Unknown"; + } + } + description + "Bag dhcpd snoop state"; + } + + grouping IPV4-DHCPD-RELAY-FILTERED-STATS { + description + "DHCP IPv4 filtered statistics"; + leaf received-packets { + type uint64; + description + "Received packets"; + } + leaf transmitted-packets { + type uint64; + description + "Transmitted packets"; + } + leaf dropped-packets { + type uint64; + description + "Dropped packets"; + } + } + + grouping IPV4-DHCPD-RELAY-STATS { + description + "ipv4 dhcpd relay stats parameters"; + list ipv4-dhcpd-relay-stat { + description + "ipv4 dhcpd relay stat"; + container statistics { + description + "Public relay statistics"; + uses IPV4-DHCPD-RELAY-FILTERED-STATS; + } + leaf relay-statistics-vrf-name { + type string { + length "0..33"; + } + description + "DHCP L3 VRF Name"; + } + } + } + + grouping IPV4-DHCPD-RELAY-STATS-INFO { + description + "ipv4 dhcpd relay stats info"; + leaf relay-stats-timestamp { + type uint32; + description + "Relay Stats timestamp"; + } + } + + grouping IPV4-DHCPD-RELAY-PROFILE { + description + "ipv4 dhcpd relay profile parameters"; + leaf relay-profile-name { + type string { + length "0..65"; + } + description + "Profile Name"; + } + leaf relay-profile-uid { + type uint32; + description + "Profile UID"; + } + leaf relay-profile-helper-count { + type uint8; + description + "Helper address count"; + } + leaf relay-profile-relay-info-option { + type uint8; + description + "Relay info option"; + } + leaf relay-profile-relay-info-policy { + type uint8; + description + "Relay info policy"; + } + leaf relay-profile-relay-info-allow-untrusted { + type uint8; + description + "Relay info untrusted"; + } + leaf relay-profile-relay-info-optionvpn { + type uint8; + description + "Relay info option vpn"; + } + leaf relay-profile-relay-info-optionvpn-mode { + type Relay-info-vpn-mode; + description + "Relay info option vpn-mode"; + } + leaf relay-profile-relay-info-check { + type uint8; + description + "Relay info check"; + } + leaf relay-profile-gi-addr-policy { + type uint8; + description + "GIADDR policy"; + } + leaf relay-profile-broadcast-flag-policy { + type uint8; + description + "Broadcast policy"; + } + leaf relay-profile-mac-mismatch-action { + type uint8; + description + "Mac Mismatch Action"; + } + list relay-profile-helper-address { + max-elements "32"; + description + "Helper addresses"; + leaf entry { + type inet:ipv4-address; + description + "Helper addresses"; + } + } + list relay-profile-helper-vrf { + max-elements "32"; + description + "Helper address vrfs"; + leaf entry { + type Vrf-string; + description + "Helper address vrfs"; + } + } + list relay-profile-gi-addr { + max-elements "32"; + description + "Gateway addresses"; + leaf entry { + type inet:ipv4-address; + description + "Gateway addresses"; + } + } + } + + grouping IPV4-DHCPD-SERVER-PROFILE { + description + "ipv4 dhcpd server profile parameters"; + leaf server-profile-name-xr { + type string { + length "0..65"; + } + description + "Profile Name"; + } + leaf secure-arp { + type boolean; + description + "Secure ARP"; + } + leaf requested-address-check { + type boolean; + description + "Requested Address Check"; + } + leaf server-id-check { + type boolean; + description + "Server ID Check"; + } + leaf duplicate-mac-address-check { + type boolean; + description + "Duplicate MAC Address Check"; + } + leaf duplicate-ip-address-check { + type boolean; + description + "Duplicate IP Address Check"; + } + leaf is-move-allowed { + type boolean; + description + "Is true if dhcp subscriber is allowed to move"; + } + leaf bcast-policy { + type uint8; + description + "Bcast Policy"; + } + leaf giaddr-policy { + type uint8; + description + "Giaddr Policy"; + } + leaf subnet-mask { + type inet:ipv4-address; + description + "Subnet Mask"; + } + leaf server-pool-name { + type string { + length "0..65"; + } + description + "Pool Name"; + } + leaf server-profile-lease { + type uint32; + description + "Lease"; + } + leaf server-profile-netbios-node-type { + type uint8; + description + "Server netbios node type"; + } + leaf server-bootfile-name { + type string { + length "0..256"; + } + description + "Server Bootfile name"; + } + leaf server-domain-name { + type string { + length "0..256"; + } + description + "Server Domain name"; + } + leaf server-profileiedge-check { + type uint8; + description + "Server iEdge Check"; + } + leaf server-profile-server-dns-count { + type uint8; + description + "Server DNS Count"; + } + leaf server-profiledefault-router-count { + type uint8; + description + "Server default count "; + } + leaf server-profile-netbios-name-svr-count { + type uint8; + description + "Server netbios svr count "; + } + leaf server-profile-time-svr-count { + type uint8; + description + "Server time svr count "; + } + leaf lease-limit-type { + type uint8; + description + "Lease Limit Type"; + } + leaf lease-limit-count { + type uint32; + description + "Lease Limit Count"; + } + list server-profile-dns { + max-elements "9"; + description + "Server DNS addresses"; + leaf entry { + type inet:ipv4-address; + description + "Server DNS addresses"; + } + } + list server-profile-default-router { + max-elements "9"; + description + "Server default addresses"; + leaf entry { + type inet:ipv4-address; + description + "Server default addresses"; + } + } + list server-profile-netbious-name-server { + max-elements "9"; + description + "Server netbios addresses"; + leaf entry { + type inet:ipv4-address; + description + "Server netbios addresses"; + } + } + list server-profile-time-server { + max-elements "9"; + description + "Server Time addresses"; + leaf entry { + type inet:ipv4-address; + description + "Server Time addresses"; + } + } + } + + grouping IPV4-DHCPD-DATABASE { + description + "IPv4 DHCP database"; + leaf configured { + type boolean; + description + "Database feature configured"; + } + leaf version { + type uint32; + description + "Current file version"; + } + leaf full-file-write-interval { + type uint32; + units "minute"; + description + "Full file write interval in minutes"; + } + leaf last-full-write-file-name { + type string { + length "0..64"; + } + description + "Last full write file name"; + } + leaf last-full-write-time { + type uint32; + description + "Last full write time since epoch"; + } + leaf full-file-write-count { + type uint32; + description + "Full file write count"; + } + leaf failed-full-file-write-count { + type uint32; + description + "Failed full file write count"; + } + leaf full-file-record-count { + type uint32; + description + "Full file record count"; + } + leaf last-full-file-write-error-timestamp { + type uint32; + description + "Last full file write error timestamp since epoch"; + } + leaf incremental-file-write-interval { + type uint32; + units "minute"; + description + "Incremental file write interval in minutes"; + } + leaf last-incremental-write-file-name { + type string { + length "0..64"; + } + description + "Last incremental write file name"; + } + leaf last-incremental-write-time { + type uint32; + description + "Last incremental write time since epoch"; + } + leaf incremental-file-write-count { + type uint32; + description + "Incremental file write count"; + } + leaf failed-incremental-file-write-count { + type uint32; + description + "Failed incremental file write count"; + } + leaf incremental-file-record-count { + type uint32; + description + "Incremental file record count"; + } + leaf last-incremental-file-write-error-timestamp { + type uint32; + description + "Last incremental file write error timestamp + since epoch"; + } + } + + grouping IPV4-DHCPD-BASE-CHILD-PROFILE-INFO { + description + "ipv4 dhcpd base child profile information"; + list ipv4-dhcpd-base-child-profile-info { + description + "ipv4 dhcpd base child profile info"; + leaf base-child-profile-name { + type string { + length "0..65"; + } + description + "Base Child Profile name"; + } + leaf mode { + type uint8; + description + "Profile mode"; + } + leaf matched-option-code { + type uint8; + description + "Matched option code"; + } + leaf matched-option-len { + type uint8; + description + "Matched option len"; + } + leaf option-data { + type yang:hex-string; + description + "Matched option data"; + } + } + } + + grouping IPV4-DHCPD-BASE-INTERFACE-REFERENCE { + description + "ipv4 dhcpd base profile reference"; + list ipv4-dhcpd-base-interface-reference { + description + "ipv4 dhcpd base interface reference"; + leaf base-reference-interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + } + } + + grouping IPV4-DHCPD-BASE-PROFILE { + description + "IPv4 dhcpd base profile parameters"; + container interface-references { + description + "Interface references"; + uses IPV4-DHCPD-BASE-INTERFACE-REFERENCE; + } + container child-profile-info { + description + "child profile info"; + uses IPV4-DHCPD-BASE-CHILD-PROFILE-INFO; + } + leaf base-default-profile-name { + type string { + length "0..65"; + } + description + "Base Default Profile name"; + } + leaf default-profile-mode { + type uint8; + description + "Default Profile mode"; + } + leaf relay-authenticate { + type Relay-info-authenticate; + description + "Relay authenticate"; + } + leaf remote-id { + type string { + length "0..768"; + } + description + "DHCP configured Remote ID"; + } + leaf child-profile-count { + type uint8; + description + "Child profile count"; + } + leaf intf-ref-count { + type uint8; + description + "Interface reference count"; + } + } + + grouping DHCPD-ISSU-STATUS-INFO { + description + "DHCP ISSU Status"; + leaf issu-sync-complete-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU sync complete in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf issu-sync-start-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU sync start in nanoseconds + since Epoch, i.e. since 00:00:00 UTC, January 1, + 1970"; + } + leaf issu-ready-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU ready declaration in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf big-bang-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the Big Bang notification time in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf primary-role-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the change to Primary role + notification time in nanoseconds since Epoch, i + .e. since 00:00:00 UTC, January 1, 1970"; + } + leaf role { + type Dhcp-issu-role; + description + "The current role of the DHCP process"; + } + leaf phase { + type Dhcp-issu-phase; + description + "The current ISSU phase of the DHCP process"; + } + leaf version { + type Dhcp-issu-version; + description + "The current version of the DHCP process in the + context of an ISSU"; + } + leaf issu-ready-issu-mgr-connection { + type boolean; + description + "Whether or not DHCP is currently connected to + ISSU Manager during the ISSU Load Phase"; + } + leaf issu-ready-entries-replicate { + type boolean; + description + "Whether or not DHCP has received all replicated + entries during the ISSU Load Phase"; + } + } + + grouping IPV4-DHCPD-BASE-DROP-STATS { + description + "DHCP IPv4 base drop statistics"; + leaf rate-limit-hit { + type uint64; + description + "base Drop statistics"; + } + } + + grouping IPV4-DHCPD-PROXY-INTERFACE { + description + "ipv4 dhcpd proxy interface"; + leaf intf-ifhandle { + type uint32; + description + "Ifhandle of the interface"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF name"; + } + leaf intf-mode { + type Bag-dhcpd-base-mode; + description + "Mode of interface"; + } + leaf intf-is-ambiguous { + type uint32; + description + "Is interface ambiguous"; + } + leaf intf-profile-name { + type string { + length "0..65"; + } + description + "Name of profile attached to the interface"; + } + leaf intf-lease-limit-type { + type uint32; + description + "Lease limit type on interface"; + } + leaf intf-lease-limit-count { + type uint32; + description + "Lease limit count on interface"; + } + leaf srg-role { + type Bag-dhcpd-intf-srg-role; + description + "DHCPv6 Interface SRG role"; + } + leaf mac-throttle { + type boolean; + description + "Mac Throttle Status"; + } + } + + grouping IPV4-DHCPD-PROXY-STATS { + description + "DHCP IPv4 proxy statistics"; + list ipv4-dhcpd-proxy-stat { + description + "ipv4 dhcpd proxy stat"; + container statistics { + description + "Proxy statistics"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCP L3 VRF name"; + } + } + } + + grouping IPV4-DHCPD-PROXY-BINDINGS-SUMMARY { + description + "DHCP IPv4 proxy bindings summary"; + leaf clients { + type uint32; + description + "Total number of clients"; + } + leaf initializing-clients { + type uint32; + description + "Number of clients in init state"; + } + leaf waiting-for-dpm-init { + type uint32; + description + "Number of clients in Init DPM wait state"; + } + leaf waiting-for-dpm-request { + type uint32; + description + "Number of clients in Request DPM wait state"; + } + leaf waiting-for-daps-init { + type uint32; + description + "Number of clients in Init DAPS wait state"; + } + leaf selecting-clients { + type uint32; + description + "Number of clients in selecting state"; + } + leaf offer-sent-for-client { + type uint32; + description + "Number of clients in Offer sent state"; + } + leaf requesting-clients { + type uint32; + description + "Number of clients in requesting state"; + } + leaf request-waiting-for-dpm { + type uint32; + description + "Number of clients in Waiting for DPM with + Request"; + } + leaf ack-waiting-for-dpm { + type uint32; + description + "Number of clients in Waiting for DPM with ACK"; + } + leaf bound-clients { + type uint32; + description + "Number of clients in bound state"; + } + leaf renewing-clients { + type uint32; + description + "Number of clients in renewing state"; + } + leaf informing-clients { + type uint32; + description + "Number of clients in informing state"; + } + leaf reauthorizing-clients { + type uint32; + description + "Number of clients in reauth state"; + } + leaf waiting-for-dpm-disconnect { + type uint32; + description + "Number of clients in waiting for DPM disconnect + state"; + } + leaf waiting-for-dpm-addr-change { + type uint32; + description + "Number of clients in Waiting for DPM after addr + change"; + } + leaf deleting-clients-d { + type uint32; + description + "Number of clients in deleting state"; + } + leaf disconnected-clients { + type uint32; + description + "Number of clients in disconnected state"; + } + leaf restarting-clients { + type uint32; + description + "Number of clients in restarting state"; + } + } + + grouping IPV4-DHCPD-PROXY-BINDING { + description + "DHCP IPv4 proxy binding entry"; + leaf client-id-xr { + type string { + length "0..1275"; + } + description + "DHCP client identifier"; + } + leaf mac-address { + type string; + description + "DHCP client MAC address"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCP client/subscriber VRF name"; + } + leaf server-vrf-name { + type string { + length "0..33"; + } + description + "DHCP server VRF name"; + } + leaf ip-address { + type inet:ipv4-address; + description + "DHCP IP address"; + } + leaf client-gi-addr { + type inet:ipv4-address; + description + "DHCP client GIADDR"; + } + leaf to-server-gi-addr { + type inet:ipv4-address; + description + "DHCP to server GIADDR"; + } + leaf server-ip-address { + type inet:ipv4-address; + description + "DHCP server IP address"; + } + leaf reply-server-ip-address { + type inet:ipv4-address; + description + "DHCP reply server IP address"; + } + leaf lease-time { + type uint32; + units "second"; + description + "Lease time in seconds"; + } + leaf remaining-lease-time { + type uint32; + units "second"; + description + "Remaining lease time in seconds"; + } + leaf state { + type Bag-dhcpd-proxy-state; + description + "DHCP client state"; + } + leaf interface-name { + type xr:Interface-name; + description + "DHCP access interface to client"; + } + leaf access-vrf-name { + type string { + length "0..33"; + } + description + "DHCP access interface VRF name"; + } + leaf proxy-binding-outer-tag { + type uint32; + description + "DHCP VLAN outer VLAN"; + } + leaf proxy-binding-inner-tag { + type uint32; + description + "DHCP VLAN inner VLAN"; + } + leaf profile-name { + type string { + length "0..65"; + } + description + "DHCP profile name"; + } + leaf selected-profile-name { + type string { + length "0..65"; + } + description + "DHCP Selected profile name"; + } + leaf is-nak-next-renew { + type boolean; + description + "Is true if DHCP next renew from client will be + NAK'd"; + } + leaf subscriber-label { + type uint32; + description + "DHCP subscriber label"; + } + leaf old-subscriber-label { + type uint32; + description + "DHCP old subscriber label"; + } + leaf subscriber-interface-name { + type xr:Interface-name; + description + "DHCP subscriber interface"; + } + leaf rx-circuit-id { + type string { + length "0..768"; + } + description + "DHCP received circuit ID"; + } + leaf tx-circuit-id { + type string { + length "0..768"; + } + description + "DHCP transmitted circuit ID"; + } + leaf rx-remote-id { + type string { + length "0..768"; + } + description + "DHCP received Remote ID"; + } + leaf tx-remote-id { + type string { + length "0..768"; + } + description + "DHCP transmitted Remote ID"; + } + leaf rx-vsiso { + type string { + length "0..768"; + } + description + "DHCP received VSISO"; + } + leaf tx-vsiso { + type string { + length "0..768"; + } + description + "DHCP transmitted VSISO"; + } + leaf is-auth-received { + type boolean; + description + "Is true if authentication is on received + option82"; + } + leaf is-mbl-subscriber { + type boolean; + description + "Is true if DHCP subscriber is Mobile"; + } + leaf param-request { + type string { + length "0..513"; + } + description + "DHCP parameter request option"; + } + leaf param-response { + type string { + length "0..2051"; + } + description + "DHCP saved options"; + } + leaf session-start-time-epoch { + type uint64; + description + "session start time epoch"; + } + leaf srg-state { + type uint32; + description + "DHCPV4 SRG state"; + } + leaf srg-group-id { + type uint16; + description + "srg group id"; + } + leaf access-l2-intf-name { + type string { + length "0..65"; + } + description + "DHCP access L2-interface to client"; + } + list event-history { + max-elements "20"; + description + "DHCPv4 Event History"; + leaf entry { + type uint32; + description + "DHCPv4 Event History"; + } + } + } + + grouping IPV4-DHCPD-DISC-HISTORY { + description + "DHCP IPv4 disconnect history entry"; + leaf session-start-time-epoch { + type uint64; + description + "session start time epoch"; + } + leaf session-end-time-epoch { + type uint64; + description + "session end time epoch"; + } + leaf disc-reason { + type string { + length "0..256"; + } + description + "DiscReason"; + } + leaf sub-label { + type uint32; + description + "sub label"; + } + leaf mac-address { + type string { + length "0..17"; + } + description + "MACAddress"; + } + } + + grouping IPV4-DHCPD-VRF-INTF-STATS { + description + "DHCP IPv4 proxy/server/base statistics for vrf + and interface"; + container packet-info { + description + "Packet information"; + uses IPV4-DHCPD-PROXY-TYPE; + } + leaf vrf-name-xr { + type string { + length "0..33"; + } + description + "DHCP L3 VRF name"; + } + leaf interface-name-xr { + type string { + length "0..65"; + } + description + "DHCP L3 Interface name"; + } + } + + grouping IPV4-DHCPD-PROXY-INTERFACE-REFERENCE { + description + "ipv4 dhcpd proxy profile reference"; + list ipv4-dhcpd-proxy-interface-reference { + description + "ipv4 dhcpd proxy interface reference"; + leaf proxy-reference-interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + } + } + + grouping IPV4-DHCPD-PROXY-VRF-REFERENCE { + description + "ipv4 dhcpd proxy profile reference"; + list ipv4-dhcpd-proxy-vrf-reference { + description + "ipv4 dhcpd proxy vrf reference"; + leaf proxy-reference-vrf-name { + type string { + length "0..33"; + } + description + "VRF name"; + } + } + } + + grouping IPV4-DHCPD-PROXY-PROFILE { + description + "IPv4 dhcpd proxy profile parameters"; + container vrf-references { + description + "VRF references"; + uses IPV4-DHCPD-PROXY-VRF-REFERENCE; + } + container interface-references { + description + "Interface references"; + uses IPV4-DHCPD-PROXY-INTERFACE-REFERENCE; + } + leaf is-relay-option-enabled { + type boolean; + description + "Is true if relay option is enabled"; + } + leaf relay-policy { + type Relay-info-policy; + description + "Relay policy"; + } + leaf relay-authenticate { + type Relay-info-authenticate; + description + "Relay authenticate"; + } + leaf is-relay-allow-untrusted-enabled { + type boolean; + description + "Is true if relay untrusted is enabled"; + } + leaf is-relay-optionvpn-enabled { + type boolean; + description + "Is true if relay VPN enabled"; + } + leaf relay-optionvpn-enabled-mode { + type Relay-info-vpn-mode; + description + "Relay VPN RFC/Cisco mode"; + } + leaf is-relay-check { + type boolean; + description + "Is true if relay check enabled"; + } + leaf is-move-allowed { + type boolean; + description + "Is true if dhcp subscriber is allowed to move"; + } + leaf proxy-broadcast-flag-policy { + type Broadcast-flag; + description + "Broadcast policy"; + } + leaf proxy-profile-client-lease-time { + type uint32; + units "second"; + description + "Client lease time in seconds"; + } + leaf proxy-lease-limit-type { + type Proxy-lease-limit; + description + "Lease limit type"; + } + leaf proxy-lease-limit-count { + type uint32; + description + "Lease limit count"; + } + leaf-list vrf-name { + type String1; + max-elements "8"; + description + "VRF names"; + } + list profile-helper-address { + max-elements "8"; + description + "Helper addresses"; + leaf entry { + type inet:ipv4-address; + description + "Helper addresses"; + } + } + list gi-addr { + max-elements "8"; + description + "Gateway addresses"; + leaf entry { + type inet:ipv4-address; + description + "Gateway addresses"; + } + } + } + + grouping IPV4-DHCPD-PROXY-FILTERED-STATS { + description + "DHCP IPv4 filtered statistics"; + leaf received-packets { + type uint64; + description + "Received packets"; + } + leaf transmitted-packets { + type uint64; + description + "Transmitted packets"; + } + leaf dropped-packets { + type uint64; + description + "Dropped packets"; + } + } + + grouping IPV4-DHCPD-PROXY-TYPE { + description + "Proxy packets"; + container discover { + description + "DHCP discover packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container offer { + description + "DHCP offer packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container request { + description + "DHCP request packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container decline { + description + "DHCP decline packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container ack { + description + "DHCP ack packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container nak { + description + "DHCP nak packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container release { + description + "DHCP release packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container inform { + description + "DHCP inform packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container lease-query { + description + "DHCP lease query packets"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container lease-not-assigned { + description + "DHCP lease not assigned"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container lease-unknown { + description + "DHCP lease unknown"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container lease-active { + description + "DHCP lease active"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container bootp-request { + description + "DHCP BOOTP request"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + container bootp-reply { + description + "DHCP BOOTP reply"; + uses IPV4-DHCPD-PROXY-FILTERED-STATS; + } + } + + grouping IPV4-DHCPD-PROXY-STATS-INFO { + description + "ipv4 dhcpd proxy stats info"; + leaf proxy-stats-timestamp { + type uint32; + description + "Proxy Stats timestamp"; + } + } + + grouping IPV4-DHCPD-SNOOP-STATS { + description + "ipv4 dhcpd snoop stats parameters"; + leaf snoop-statistics-bridge-name { + type string { + length "0..74"; + } + description + "DHCP L2 bridge name"; + } + list snoop-statistic { + max-elements "45"; + description + "Public snoop statistics"; + leaf entry { + type uint64; + description + "Public snoop statistics"; + } + } + } + + grouping IPV4-DHCPD-SNOOP-PROFILE { + description + "ipv4 dhcpd snoop profile parameters"; + leaf snoop-profile-name { + type string { + length "0..65"; + } + description + "Profile Name"; + } + leaf snoop-profile-uid { + type uint32; + description + "Profile unique ID"; + } + leaf snoop-profile-relay-info-option { + type uint8; + description + "Relay info option"; + } + leaf snoop-profile-relay-info-allow-untrusted { + type uint8; + description + "Allow untrusted relay info"; + } + leaf snoop-profile-relay-info-policy { + type uint8; + description + "Relay info policy"; + } + leaf snoop-profile-trusted { + type uint8; + description + "Trust"; + } + } + + grouping IPV4-DHCPD-SNOOP-STATS-INFO { + description + "ipv4 dhcpd snoop stats info"; + leaf snoop-stats-timestamp { + type uint32; + description + "Snoop Stats timestamp"; + } + } + + grouping IPV4-DHCPD-SNOOP-BINDING-STATISTICS { + description + "ipv4 dhcpd snoop binding statistics"; + leaf snoop-binding-total { + type uint32; + description + "Total number of snoop bindings"; + } + leaf snoop-binding-timestamp { + type uint32; + description + "Snoop binding timestamp"; + } + } + + grouping IPV4-DHCPD-SNOOP-BINDING { + description + "ipv4 dhcpd snoop binding entry"; + leaf snoop-binding-ch-addr { + type yang:hex-string; + description + "DHCP client MAC address"; + } + leaf snoop-binding-ch-addr-len { + type uint8; + description + "DHCP client MAC address length"; + } + leaf snoop-binding-i-addr { + type inet:ipv4-address; + description + "DHCP iaddr"; + } + leaf snoop-binding-state { + type Bag-dhcpd-snoop-state; + description + "DHCP sm state"; + } + leaf snoop-binding-lease { + type uint32; + description + "DHCP lease time"; + } + leaf snoop-binding-lease-start-time { + type uint32; + description + "DHCP lease start time"; + } + leaf snoop-binding-profile-name { + type string { + length "0..65"; + } + description + "DHCP profile name"; + } + leaf snoop-bindng-interface-name { + type string { + length "0..321"; + } + description + "DHCP interface to client"; + } + leaf snoop-binding-bridge-name { + type string { + length "0..74"; + } + description + "DHCP L2 bridge name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub2.yang new file mode 100644 index 000000000..be44e4702 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper-sub2.yang @@ -0,0 +1,462 @@ +submodule Cisco-IOS-XR-ipv4-dhcpd-oper-sub2 { + belongs-to Cisco-IOS-XR-ipv4-dhcpd-oper { + prefix Cisco-IOS-XR-ipv4-dhcpd-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-dhcpd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-08 { + description + "Migrated LEAF-LIST with duplicate value to LIST type. + 2022-09-08 + Fixed oper for dhcp statistics and binding. + 2022-02-11 + Enhanced interface length based on IM changes. + 2021-10-07 + Added session_in_bound_client_id_changed counter in debug stats. + 2021-10-05 + Migrated LEAF-LIST with duplicate value to LIST type."; + semver:module-version "3.0.0"; + } + revision 2021-09-14 { + description + "Fixed GET-OPER to display interface name in standard format. + 2021-09-08 + Fixed GET-OPER rpc response which returns false value. + 2021-08-23 + Migrated LEAF-LIST with duplicate value to LIST type. + 2021-06-21 + Added l2-interface information for show command + 2021-04-09 + NodeID keyword changed from nodeid to NodeName as per standard"; + semver:module-version "2.0.0"; + } + revision 2020-11-20 { + description + "Added Yang Support for ADT,to retrive statistcs with help of vrf/interface. + 2020-09-30 + Modified to accommodate cdm changes"; + semver:module-version "1.1.0"; + } + revision 2019-06-25 { + description + "Introduced an option to show dhcp rate limit hit counters."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-09-20 { + description + "Fixing yang gaps."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dhcpc-ipv4-state { + type enumeration { + enum "init" { + value 0; + description + "Init state"; + } + enum "init-reboot" { + value 1; + description + "Init Reboot state"; + } + enum "rebooting" { + value 2; + description + "Rebooting state"; + } + enum "selecting" { + value 3; + description + "Selecting state"; + } + enum "requesting" { + value 4; + description + "Requesting state"; + } + enum "bound" { + value 5; + description + "Bound state"; + } + enum "renewing" { + value 6; + description + "Renewing state"; + } + enum "rebinding" { + value 7; + description + "Rebinding state"; + } + enum "invalid" { + value 8; + description + "Invalid state"; + } + } + description + "Dhcp Client IPv4 State"; + } + + grouping DHCPC-EDM-CLIENT-IPV4-BAG { + description + "ipv4 dhcp client"; + leaf interface-name { + type string { + length "0..65"; + } + description + "Dhcp Client interface name"; + } + leaf client-mac-address { + type string { + length "0..17"; + } + description + "Dhcp Client Interface MAC address"; + } + leaf client-id { + type string { + length "0..256"; + } + description + "Dhcp Client ID"; + } + leaf ipv4-client-state { + type Dhcpc-ipv4-state; + description + "Dhcp Client State"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "Dhcp Client IP Address"; + } + leaf ipv4-subnet-mask { + type inet:ipv4-address; + description + "Dhcp Client IP Address mask"; + } + leaf ipv4-server-address { + type inet:ipv4-address; + description + "Dhcp Client selected server IP Address"; + } + leaf next-hop-ipv4-address { + type inet:ipv4-address; + description + "Dhcp Client next hop IP Address"; + } + leaf ipv4-lease-time { + type uint32; + description + "Dhcp Client Lease time"; + } + leaf ipv4-renew-time { + type uint32; + description + "Dhcp Client Renew time"; + } + leaf ipv4-rebind-time { + type uint32; + description + "Dhcp Client Rebind time"; + } + leaf ipv4-address-configured { + type boolean; + description + "Dhcp Client IPV4 address configured in interface"; + } + } + + grouping DHCPC-EDM-CLIENT-IPV4-STATS-BAG { + description + "ipv4 dhcp client statistics"; + leaf interface-name { + type string { + length "0..65"; + } + description + "Dhcp Client interface name"; + } + leaf num-events-received { + type uint32; + description + "Number of events received"; + } + leaf num-create-event-received { + type uint32; + description + "Number of create client event received"; + } + leaf num-delete-event-received { + type uint32; + description + "Number of delete client event received"; + } + leaf num-reboot-event-received { + type uint32; + description + "Number of client rebooted event received"; + } + leaf num-reinit-event-received { + type uint32; + description + "Number of reinit client event received"; + } + leaf num-packet-event-received { + type uint32; + description + "Number of packet event received"; + } + leaf num-init-timer-eventi { + type uint32; + description + "Number of init timer event"; + } + leaf num-t1-timer-event { + type uint32; + description + "Number of T1 timer event"; + } + leaf num-t2-timer-event { + type uint32; + description + "Number of T2 timer event"; + } + leaf num-lease-timer-event { + type uint32; + description + "Number of Lease timer event"; + } + leaf num-vbind-timer-event { + type uint32; + description + "Number of vbind timer event"; + } + leaf num-discovers-sent-successfully { + type uint32; + description + "Number of discovers sent successfully"; + } + leaf num-requests-sent-successfully { + type uint32; + description + "Number of requests sent successfully"; + } + leaf num-releases-sent-successfully { + type uint32; + description + "Number of releases sent successfully"; + } + leaf num-renews-sent-successfully { + type uint32; + description + "Number of renews sent successfully"; + } + leaf num-rebinds-sent-successfully { + type uint32; + description + "Number of rebinds sent successfully"; + } + leaf num-declines-sent-successfully { + type uint32; + description + "Number of declines sent successfully"; + } + leaf num-request-after-reboot-sent { + type uint32; + description + "Number of requests sent after reboot"; + } + leaf num-valid-offers-received { + type uint32; + description + "Number of valid offers received"; + } + leaf num-valid-acks-received { + type uint32; + description + "Number of valid acks received"; + } + leaf num-valid-nacks-received { + type uint32; + description + "Number of valid nacks received"; + } + leaf num-unicast-packet-sent-successfully { + type uint32; + description + "Number of unicast packet sent successfully"; + } + leaf num-broadcast-packet-sent-success { + type uint32; + description + "Number of broadcast packet sent successfully"; + } + leaf num-init-timer-start { + type uint32; + description + "Number of init timer starts"; + } + leaf num-init-timer-stop { + type uint32; + description + "Number of init timer stops"; + } + leaf num-t1-timer-start { + type uint32; + description + "Number of T1 timer starts"; + } + leaf num-t1-timer-stop { + type uint32; + description + "Number of T1 timer stops"; + } + leaf num-t2-timer-start { + type uint32; + description + "Number of T2 timer starts"; + } + leaf num-t2-timer-stop { + type uint32; + description + "Number of T2 timer stops"; + } + leaf num-lease-timer-start { + type uint32; + description + "Number of Lease timer starts"; + } + leaf num-lease-timer-stop { + type uint32; + description + "Number of Lease timer stops"; + } + leaf num-vbind-timer-start { + type uint32; + description + "Number of vbind timer starts"; + } + leaf num-vbind-timer-stop { + type uint32; + description + "Number of vbind timer stops"; + } + leaf num-invalid-events { + type uint32; + description + "Number of invalid events received"; + } + leaf num-discovers-failed { + type uint32; + description + "Number of discover send failed"; + } + leaf num-requests-failed { + type uint32; + description + "Number of request send failed"; + } + leaf num-releases-failed { + type uint32; + description + "Number of release send failed"; + } + leaf num-renews-failed { + type uint32; + description + "Number of renew send failed"; + } + leaf num-rebinds-failed { + type uint32; + description + "Number of rebind send failed"; + } + leaf num-declines-failed { + type uint32; + description + "Number of decline send failed"; + } + leaf num-request-after-reboot-failed { + type uint32; + description + "Number of requests sent after reboot failed"; + } + leaf num-invalid-offers { + type uint32; + description + "Number of invalid offers received"; + } + leaf num-invalid-acks { + type uint32; + description + "Number of invalid acks received"; + } + leaf num-invalid-nacks { + type uint32; + description + "Number of invalid nacks received"; + } + leaf num-invalid-packets { + type uint32; + description + "Number of invalid packets dropped"; + } + leaf num-unicast-failed { + type uint32; + description + "Number of unicast packet send failed"; + } + leaf num-broadcast-failed { + type uint32; + description + "Number of broadcast packet send failed"; + } + leaf num-xid-mismatch { + type uint32; + description + "Number of XID mismatch packets received"; + } + leaf num-vbind-failed { + type uint32; + description + "Number of socket vbind failed"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper.yang new file mode 100644 index 000000000..4561dacf1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-oper.yang @@ -0,0 +1,585 @@ +module Cisco-IOS-XR-ipv4-dhcpd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-dhcpd-oper"; + prefix ipv4-dhcpd-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-dhcpd-oper-sub2 { + revision-date 2022-11-08; + } + include Cisco-IOS-XR-ipv4-dhcpd-oper-sub1 { + revision-date 2022-11-08; + } + + 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-dhcpd package operational data. + + This module contains definitions + for the following management objects: + dhcp-client: DHCP client operational data + ipv4-dhcpd: IPV4 DHCPD operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-08 { + description + "Migrated LEAF-LIST with duplicate value to LIST type. + 2022-09-08 + Fixed oper for dhcp statistics and binding. + 2022-02-11 + Enhanced interface length based on IM changes. + 2021-10-07 + Added session_in_bound_client_id_changed counter in debug stats. + 2021-10-05 + Migrated LEAF-LIST with duplicate value to LIST type."; + semver:module-version "3.0.0"; + } + revision 2021-09-14 { + description + "Fixed GET-OPER to display interface name in standard format. + 2021-09-08 + Fixed GET-OPER rpc response which returns false value. + 2021-08-23 + Migrated LEAF-LIST with duplicate value to LIST type. + 2021-06-21 + Added l2-interface information for show command + 2021-04-09 + NodeID keyword changed from nodeid to NodeName as per standard"; + semver:module-version "2.0.0"; + } + revision 2020-11-20 { + description + "Added Yang Support for ADT,to retrive statistcs with help of vrf/interface. + 2020-09-30 + Modified to accommodate cdm changes"; + semver:module-version "1.1.0"; + } + revision 2019-06-25 { + description + "Introduced an option to show dhcp rate limit hit counters."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-09-20 { + description + "Fixing yang gaps."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dhcp-client { + config false; + description + "DHCP client operational data"; + container nodes { + description + "DHCP client list of nodes"; + list node { + key "node-name"; + description + "DHCP client particular node name"; + container client-stats { + description + "IPv4 DHCP client statistics table"; + list client-stat { + key "client-ifhandle"; + description + "DHCP client binding statistics"; + leaf client-ifhandle { + type xr:Cisco-ios-xr-string; + description + "Client Ifhandle"; + } + uses DHCPC-EDM-CLIENT-IPV4-STATS-BAG; + } + } + container clients { + description + "IPv4 DHCP client table"; + list client { + key "client-ifhandle"; + description + "Single DHCP client binding"; + leaf client-ifhandle { + type xr:Cisco-ios-xr-string; + description + "Client Ifhandle"; + } + uses DHCPC-EDM-CLIENT-IPV4-BAG; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container ipv4-dhcpd { + config false; + description + "IPV4 DHCPD operational data"; + container snoop { + description + "DHCP Snoop operational data"; + container bindings { + description + "DHCP Snoop Bindings"; + list binding { + key "client-uid"; + description + "DHCP Snoop binding"; + leaf client-uid { + type xr:Cisco-ios-xr-string; + description + "Client opaque handle"; + } + uses IPV4-DHCPD-SNOOP-BINDING; + } + } + container binding-statistics { + description + "DHCP snoop binding statistics"; + uses IPV4-DHCPD-SNOOP-BINDING-STATISTICS; + } + container statistics-info { + description + "DHCP snoop statistics info"; + uses IPV4-DHCPD-SNOOP-STATS-INFO; + } + container profiles { + description + "DHCP Snoop Profile"; + list profile { + key "profile-name"; + description + "DHCP Snoop profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses IPV4-DHCPD-SNOOP-PROFILE; + } + } + container statistics { + description + "DHCP Snoop Statistics"; + list statistic { + key "bridge-name"; + description + "DHCP Snoop bridge domain statistics"; + leaf bridge-name { + type xr:Cisco-ios-xr-string; + description + "Bridge domain name"; + } + uses IPV4-DHCPD-SNOOP-STATS; + } + } + } + container nodes { + description + "IPv4 DHCPD operational data for a particular + location"; + list node { + key "node-name"; + description + "Location. For eg., 0/1/CPU0"; + container proxy { + description + "IPv4 DHCP proxy operational data"; + container statistics-info { + description + "DHCP proxy stats info"; + uses IPV4-DHCPD-PROXY-STATS-INFO; + } + container vrfs { + description + "DHCP proxy list of VRF names"; + list vrf { + key "vrf-name"; + description + "IPv4 DHCP proxy VRF name"; + container statistics { + description + "IPv4 DHCP proxy statistics"; + uses IPV4-DHCPD-PROXY-TYPE; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container profiles { + description + "IPv4 DHCP proxy profile"; + list profile { + key "profile-name"; + description + "IPv4 DHCP proxy profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses IPV4-DHCPD-PROXY-PROFILE; + } + } + container stats { + description + "IPv4 DHCP proxy stats"; + list stat { + description + "Proxy statistics for vrf/interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "L3 VRF Name"; + } + leaf interface-name { + type xr:Interface-name; + description + "L3 Interface Name"; + } + uses IPV4-DHCPD-VRF-INTF-STATS; + } + } + container disconnect-histories { + description + "DHCP proxy disconnect history"; + list disconnect-history { + key "index"; + description + "Single DHCP proxy disconnect history"; + leaf index { + type xr:Cisco-ios-xr-string; + description + "Index"; + } + uses IPV4-DHCPD-DISC-HISTORY; + } + } + container binding { + description + "DHCP proxy bindings"; + container clients { + description + "DHCP proxy client bindings"; + list client { + key "client-id"; + description + "Single DHCP proxy binding"; + leaf client-id { + type xr:Cisco-ios-xr-string; + description + "Client ID"; + } + uses IPV4-DHCPD-PROXY-BINDING; + } + } + container summary { + description + "DHCP proxy binding summary"; + uses IPV4-DHCPD-PROXY-BINDINGS-SUMMARY; + } + } + container statistics { + description + "DHCP proxy statistics"; + container summary { + description + "DHCP Proxy binding statistics"; + uses IPV4-DHCPD-PROXY-STATS; + } + } + } + container interfaces { + description + "IPv4 DHCP proxy/server Interface"; + list interface { + key "interface-name"; + description + "IPv4 DHCP proxy/server interface info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV4-DHCPD-PROXY-INTERFACE; + } + } + container base { + description + "IPv4 DHCP base operational data"; + container statistics { + description + "DHCP base statistics"; + uses IPV4-DHCPD-PROXY-STATS; + } + container drops { + description + "DHCP base drop statistics"; + uses IPV4-DHCPD-BASE-DROP-STATS; + } + container issu-status { + description + "IPv4 DHCP ISSU status"; + uses DHCPD-ISSU-STATUS-INFO; + } + container vrfs { + description + "DHCP base list of VRF names"; + list vrf { + key "vrf-name"; + description + "IPv4 DHCP base VRF name"; + container statistics { + description + "IPv4 DHCP base statistics"; + uses IPV4-DHCPD-PROXY-TYPE; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container profiles { + description + "IPv4 DHCP Base profile"; + list profile { + key "profile-name"; + description + "IPv4 DHCP base profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses IPV4-DHCPD-BASE-PROFILE; + } + } + container database { + description + "IPv4 DHCP database"; + uses IPV4-DHCPD-DATABASE; + } + container stats { + description + "IPv4 DHCP base stats"; + list stat { + description + "Base statistics for vrf/interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "L3 VRF Name"; + } + leaf interface-name { + type xr:Interface-name; + description + "L3 Interface Name"; + } + uses IPV4-DHCPD-VRF-INTF-STATS; + } + } + } + container server { + description + "IPv4 DHCP Server operational data"; + container statistics { + description + "DHCP Server statistics"; + container summary { + description + "DHCP server statistics"; + uses IPV4-DHCPD-PROXY-STATS; + } + } + container profiles { + description + "IPv4 DHCP Server profile"; + list profile { + key "server-profile-name"; + description + "IPv4 DHCP server profile"; + leaf server-profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses IPV4-DHCPD-SERVER-PROFILE; + } + } + container stats { + description + "IPv4 DHCP server stats"; + list stat { + description + "Server statistics for vrf/interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "L3 VRF Name"; + } + leaf interface-name { + type xr:Interface-name; + description + "L3 Interface Name"; + } + uses IPV4-DHCPD-VRF-INTF-STATS; + } + } + container binding { + description + "DHCP server bindings"; + container summary { + description + "DHCP server binding summary"; + uses IPV4-DHCPD-PROXY-BINDINGS-SUMMARY; + } + container clients { + description + "DHCP server client bindings"; + list client { + key "client-id"; + description + "Single DHCP Server binding"; + leaf client-id { + type xr:Cisco-ios-xr-string; + description + "Client ID"; + } + uses IPV4-DHCPD-PROXY-BINDING; + } + } + } + container disconnect-histories { + description + "DHCP server disconnect history"; + list disconnect-history { + key "index"; + description + "Single DHCP server disconnect history"; + leaf index { + type xr:Cisco-ios-xr-string; + description + "Index"; + } + uses IPV4-DHCPD-DISC-HISTORY; + } + } + container statistics-info { + description + "DHCP proxy stats info"; + uses IPV4-DHCPD-PROXY-STATS-INFO; + } + container vrfs { + description + "DHCP Server list of VRF names"; + list vrf { + key "vrf-name"; + description + "IPv4 DHCP server VRF name"; + container statistics { + description + "IPv4 DHCP server statistics"; + uses IPV4-DHCPD-PROXY-TYPE; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + } + container relay { + description + "IPv4 DHCPD Relay operational data"; + container profiles { + description + "DHCP Relay Profiles"; + list profile { + key "profile-name"; + description + "DHCP Relay profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses IPV4-DHCPD-RELAY-PROFILE; + } + } + container statistics-info { + description + "DHCP relay statistics info"; + uses IPV4-DHCPD-RELAY-STATS-INFO; + } + container statistics { + description + "DHCP Relay VRF statistics"; + container summary { + description + "DHCP Relay VRF statistics"; + uses IPV4-DHCPD-RELAY-STATS; + } + } + container vrfs { + description + "DHCP relay list of VRF names"; + list vrf { + key "vrf-name"; + description + "IPv4 DHCP relay VRF name"; + container vrf-statistics { + description + "IPv4 DHCP relay statistics"; + uses IPV4-DHCPD-PROXY-TYPE; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg.yang new file mode 100644 index 000000000..45d662bcc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-dhcpd-subscriber-cfg"; + prefix ipv4-dhcpd-subscriber-cfg; + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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-dhcpd-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + container dhcpd { + description + "Interface dhcpv4 configuration data"; + leaf dhcpv4-iplease { + type string; + description + "Cisco VSA to configure any dhcp4 ip lease per + subscriber"; + } + leaf class { + type string; + description + "The class to be used for proxy/server profile"; + } + leaf mode-class { + type string; + description + "Select proxy/server profile based on mode class + name"; + } + leaf default-gateway { + type inet:ipv4-address-no-zone; + description + "The Default Gateway IP address"; + } + leaf session-limit { + type uint32; + description + "The pool to be used for Prefix Delegation"; + } + leaf dhcpv4-option { + type string; + description + "Cisco VSA to configure any dhcp4 option per + subscriber"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-filesystems-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-filesystems-cfg.yang new file mode 100644 index 000000000..c22381536 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-filesystems-cfg.yang @@ -0,0 +1,213 @@ +module Cisco-IOS-XR-ipv4-filesystems-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-filesystems-cfg"; + prefix ipv4-filesystems-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 ipv4-filesystems package configuration. + + This module contains definitions + for the following management objects: + rcp: RCP configuration + ftp: FTP configuration + tftp: TFTP configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-28 { + description + "IOS XR 6.4.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping USERNAME { + description + "Common node of ftp-client, rcp-client"; + leaf username { + type string; + description + "Specify username for connections"; + } + } + + grouping SOURCE-INTERFACE { + description + "Common node of ftp-client, tftp-client, + rcp-client"; + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + connections"; + } + } + + container rcp { + description + "RCP configuration"; + container rcp-client { + description + "RCP client configuration"; + uses USERNAME; + uses SOURCE-INTERFACE; + } + } + container ftp { + description + "FTP configuration"; + container ftp-client { + description + "FTP client configuration"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "VRF specific data"; + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + connections"; + } + leaf username { + type string; + description + "Specify username for connections"; + } + leaf anonymous-password { + type string; + description + "Password for anonymous user (ftp server + dependent)"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify password for ftp connnection"; + } + leaf passive { + type empty; + description + "Enable connect using passive mode"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF instance"; + } + } + } + leaf passive { + type empty; + description + "Enable connect using passive mode"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify password for ftp connnection"; + } + leaf anonymous-password { + type string; + description + "Password for anonymous user (ftp server + dependent)"; + } + uses USERNAME; + uses SOURCE-INTERFACE; + } + } + container tftp { + description + "TFTP configuration"; + container tftp-client { + description + "TFTP client configuration"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "VRF specific data"; + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in + connections"; + } + leaf retry { + type uint32 { + range "0..256"; + } + description + "Specify the number of retries when client + requests TFTP connections"; + } + leaf timeout { + type uint32 { + range "0..256"; + } + units "second"; + description + "Specify the timeout for every TFTP connection + in seconds"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of the VRF instance"; + } + } + } + leaf retry { + type uint32 { + range "0..256"; + } + description + "Specify the number of retries when client + requests TFTP connections"; + } + leaf timeout { + type uint32 { + range "0..256"; + } + units "second"; + description + "Specify the timeout for every TFTP connection + in seconds"; + } + uses SOURCE-INTERFACE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-cfg.yang new file mode 100644 index 000000000..2df5cdcf5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-cfg.yang @@ -0,0 +1,911 @@ +module Cisco-IOS-XR-ipv4-hsrp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-hsrp-cfg"; + prefix ipv4-hsrp-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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-hsrp package configuration. + + This module contains definitions + for the following management objects: + hsrp: HSRP configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-05 { + description + "Corrected boolean values in when statements."; + } + revision 2017-10-04 { + description + "Marked delay leafs min-delay and reload-delay as mandatory."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hsrp-linklocal { + type enumeration { + enum "manual" { + value 0; + description + "Manual Linklocal address configuration"; + } + enum "auto" { + value 1; + description + "Automatic Linklocal address configuration"; + } + enum "legacy" { + value 2; + description + "Automatic legacy-compatible Linklocal address + configuration"; + } + } + description + "Hsrp linklocal"; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container hsrp { + description + "CISCO-HSRP-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable CISCO-HSRP-MIB notifications"; + } + } + } + container hsrp { + description + "HSRP configuration"; + container interfaces { + description + "Interface Table for HSRP configuration"; + list interface { + key "interface-name"; + description + "Per-interface HSRP configuration"; + container ipv6 { + description + "IPv6 HSRP configuration"; + container version2 { + description + "Version 2 HSRP configuration"; + container groups { + description + "The HSRP group configuration table"; + list group { + key "group-number"; + description + "The HSRP group being configured"; + container bfd { + description + "Enable use of Bidirectional Forwarding + Detection"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enable BFD for this remote IP"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name to run BFD"; + } + } + container tracked-interfaces { + description + "The HSRP tracked interface configuration + table"; + list tracked-interface { + key "interface-name"; + description + "Interface being tracked"; + leaf interface-name { + type xr:Interface-name; + description + "Interface being tracked"; + } + leaf priority-decrement { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container tracked-objects { + description + "The HSRP tracked interface configuration + table"; + list tracked-object { + key "object-name"; + description + "Object being tracked"; + leaf object-name { + type xr:Cisco-ios-xr-string; + description + "Interface being tracked"; + } + leaf priority-decrement { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container timers { + description + "Hello and hold timers"; + leaf hello-msec-flag { + type boolean; + default "false"; + description + "TRUE - Hello time configured in + milliseconds, FALSE - Hello time + configured in seconds"; + } + leaf hello-msec { + type uint32 { + range "100..3000"; + } + units "millisecond"; + description + "Hello time in msecs"; + } + leaf hello-sec { + type uint32 { + range "1..255"; + } + units "second"; + default "3"; + description + "Hello time in seconds"; + } + leaf hold-msec-flag { + type boolean; + default "false"; + description + "TRUE - Hold time configured in + milliseconds, FALSE - Hold time + configured in seconds"; + } + leaf hold-msec { + type uint32 { + range "100..3000"; + } + units "millisecond"; + description + "Hold time in msecs"; + } + leaf hold-sec { + type uint32 { + range "1..255"; + } + units "second"; + default "10"; + description + "Hold time in seconds"; + } + } + container link-local-ipv6-address { + presence "Contains mandatory nodes that used to set default values"; + description + "The HSRP IPv6 virtual linklocal address"; + leaf address { + when "../auto-configure = 'manual'" { + description + "../AutoConfigure = Manual"; + } + type inet:ipv6-address-no-zone; + description + "HSRP IPv6 virtual linklocal address"; + } + leaf auto-configure { + type Hsrp-linklocal; + mandatory true; + description + "Linklocal Configuration Type"; + } + } + container global-ipv6-addresses { + description + "The table of HSRP virtual global IPv6 + addresses"; + list global-ipv6-address { + key "address"; + description + "A HSRP virtual global IPv6 IP address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "HSRP virtual global IPv6 address"; + } + } + } + leaf priority { + type uint32 { + range "0..255"; + } + default "100"; + description + "Priority value"; + } + leaf preempt { + type uint32; + default "0"; + description + "Force active if higher priority"; + } + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "HSRP Session name (for MGO)"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "HSRP MAC address"; + } + leaf group-number { + type uint32 { + range "0..4095"; + } + description + "HSRP group number"; + } + } + } + } + container slave-groups { + description + "The HSRP slave group configuration table"; + list slave-group { + key "slave-group-number"; + description + "The HSRP slave group being configured"; + container link-local-ipv6-address { + presence "Contains mandatory nodes that used to set default values"; + description + "The HSRP IPv6 virtual linklocal address"; + leaf address { + when "../auto-configure = 'manual'" { + description + "../AutoConfigure = Manual"; + } + type inet:ipv6-address-no-zone; + description + "HSRP IPv6 virtual linklocal address"; + } + leaf auto-configure { + type Hsrp-linklocal; + mandatory true; + description + "Linklocal Configuration Type"; + } + } + container global-ipv6-addresses { + description + "The table of HSRP virtual global IPv6 + addresses"; + list global-ipv6-address { + key "address"; + description + "A HSRP virtual global IPv6 IP address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "HSRP virtual global IPv6 address"; + } + } + } + leaf follow { + type string; + description + "HSRP Group name for this slave to follow"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "HSRP MAC address"; + } + leaf slave-group-number { + type uint32 { + range "0..4095"; + } + description + "HSRP group number"; + } + } + } + } + container bfd { + description + "BFD configuration"; + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detection multiplier for BFD sessions created + by hsrp"; + } + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval for BFD sessions created by + hsrp"; + } + } + container delay { + presence "Indicates a delay node is configured."; + description + "Minimum and Reload Delay"; + leaf minimum-delay { + type uint32 { + range "0..10000"; + } + units "second"; + mandatory true; + description + "Minimum delay in seconds"; + } + leaf reload-delay { + type uint32 { + range "0..10000"; + } + units "second"; + mandatory true; + description + "Reload delay in seconds"; + } + } + container ipv4 { + description + "IPv4 HSRP configuration"; + container slave-groups { + description + "The HSRP slave group configuration table"; + list slave-group { + key "slave-group-number"; + description + "The HSRP slave group being configured"; + container secondary-ipv4-addresses { + description + "Secondary HSRP IP address Table"; + list secondary-ipv4-address { + key "address"; + description + "Secondary HSRP IP address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "HSRP IP address"; + } + } + } + leaf follow { + type string; + description + "HSRP Group name for this slave to follow"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "HSRP MAC address"; + } + leaf primary-ipv4-address { + type inet:ipv4-address-no-zone; + description + "Primary HSRP IP address"; + } + leaf slave-group-number { + type uint32 { + range "0..4095"; + } + description + "HSRP group number"; + } + } + } + container version1 { + description + "Version 1 HSRP configuration"; + container groups { + description + "The HSRP group configuration table"; + list group { + key "group-number"; + description + "The HSRP group being configured"; + container tracked-interfaces { + description + "The HSRP tracked interface configuration + table"; + list tracked-interface { + key "interface-name"; + description + "Interface being tracked"; + leaf interface-name { + type xr:Interface-name; + description + "Interface being tracked"; + } + leaf priority-decrement { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container bfd { + description + "Enable use of Bidirectional Forwarding + Detection"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enable BFD for this remote IP"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name to run BFD"; + } + } + container tracked-objects { + description + "The HSRP tracked interface configuration + table"; + list tracked-object { + key "object-name"; + description + "Object being tracked"; + leaf object-name { + type xr:Cisco-ios-xr-string; + description + "Interface being tracked"; + } + leaf priority-decrement { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container timers { + description + "Hello and hold timers"; + leaf hello-msec-flag { + type boolean; + default "false"; + description + "TRUE - Hello time configured in + milliseconds, FALSE - Hello time + configured in seconds"; + } + leaf hello-msec { + type uint32 { + range "100..3000"; + } + units "millisecond"; + description + "Hello time in msecs"; + } + leaf hello-sec { + type uint32 { + range "1..255"; + } + units "second"; + default "3"; + description + "Hello time in seconds"; + } + leaf hold-msec-flag { + type boolean; + default "false"; + description + "TRUE - Hold time configured in + milliseconds, FALSE - Hold time + configured in seconds"; + } + leaf hold-msec { + type uint32 { + range "100..3000"; + } + units "millisecond"; + description + "Hold time in msecs"; + } + leaf hold-sec { + type uint32 { + range "1..255"; + } + units "second"; + default "10"; + description + "Hold time in seconds"; + } + } + container primary-ipv4-address { + description + "Primary HSRP IP address"; + leaf virtual-ip-learn { + type boolean; + description + "TRUE if the HSRP protocol is to learn the + virtual IP address it is to use"; + } + leaf address { + when "../virtual-ip-learn = 'false'" { + description + "../VirtualIPLearn = 'false'"; + } + type inet:ipv4-address-no-zone; + description + "HSRP IP address."; + } + } + container secondary-ipv4-addresses { + description + "Secondary HSRP IP address Table"; + list secondary-ipv4-address { + key "address"; + description + "Secondary HSRP IP address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "HSRP IP address"; + } + } + } + leaf authentication { + type string { + length "1..8"; + } + default "cisco"; + description + "Authentication string"; + } + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "HSRP Session name (for MGO)"; + } + leaf priority { + type uint32 { + range "0..255"; + } + default "100"; + description + "Priority value"; + } + leaf preempt { + type uint32; + default "0"; + description + "Force active if higher priority"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "HSRP MAC address"; + } + leaf group-number { + type uint32 { + range "0..255"; + } + description + "HSRP group number"; + } + } + } + } + container version2 { + description + "Version 2 HSRP configuration"; + container groups { + description + "The HSRP group configuration table"; + list group { + key "group-number"; + description + "The HSRP group being configured"; + container secondary-ipv4-addresses { + description + "Secondary HSRP IP address Table"; + list secondary-ipv4-address { + key "address"; + description + "Secondary HSRP IP address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "HSRP IP address"; + } + } + } + container bfd { + description + "Enable use of Bidirectional Forwarding + Detection"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enable BFD for this remote IP"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name to run BFD"; + } + } + container primary-ipv4-address { + description + "Primary HSRP IP address"; + leaf virtual-ip-learn { + type boolean; + description + "TRUE if the HSRP protocol is to learn the + virtual IP address it is to use"; + } + leaf address { + when "../virtual-ip-learn = 'false'" { + description + "../VirtualIPLearn = 'false'"; + } + type inet:ipv4-address-no-zone; + description + "HSRP IP address."; + } + } + container tracked-objects { + description + "The HSRP tracked interface configuration + table"; + list tracked-object { + key "object-name"; + description + "Object being tracked"; + leaf object-name { + type xr:Cisco-ios-xr-string; + description + "Interface being tracked"; + } + leaf priority-decrement { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container tracked-interfaces { + description + "The HSRP tracked interface configuration + table"; + list tracked-interface { + key "interface-name"; + description + "Interface being tracked"; + leaf interface-name { + type xr:Interface-name; + description + "Interface being tracked"; + } + leaf priority-decrement { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container timers { + description + "Hello and hold timers"; + leaf hello-msec-flag { + type boolean; + default "false"; + description + "TRUE - Hello time configured in + milliseconds, FALSE - Hello time + configured in seconds"; + } + leaf hello-msec { + type uint32 { + range "100..3000"; + } + units "millisecond"; + description + "Hello time in msecs"; + } + leaf hello-sec { + type uint32 { + range "1..255"; + } + units "second"; + default "3"; + description + "Hello time in seconds"; + } + leaf hold-msec-flag { + type boolean; + default "false"; + description + "TRUE - Hold time configured in + milliseconds, FALSE - Hold time + configured in seconds"; + } + leaf hold-msec { + type uint32 { + range "100..3000"; + } + units "millisecond"; + description + "Hold time in msecs"; + } + leaf hold-sec { + type uint32 { + range "1..255"; + } + units "second"; + default "10"; + description + "Hold time in seconds"; + } + } + leaf preempt { + type uint32; + default "0"; + description + "Force active if higher priority"; + } + leaf priority { + type uint32 { + range "0..255"; + } + default "100"; + description + "Priority value"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "HSRP MAC address"; + } + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "HSRP Session name (for MGO)"; + } + leaf group-number { + type uint32 { + range "0..4095"; + } + description + "HSRP group number"; + } + } + } + } + } + leaf mac-refresh { + type uint32 { + range "0..10000"; + } + default "60"; + description + "HSRP MGO slave MAC refresh rate"; + } + leaf use-bia { + type empty; + description + "Use burned-in address"; + } + leaf redirects-disable { + type empty; + description + "Disable HSRP filtered ICMP redirects"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container logging { + description + "HSRP logging options"; + leaf state-change-disable { + type empty; + description + "HSRP state change IOS messages disable"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper-sub1.yang new file mode 100644 index 000000000..97fa37dd7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper-sub1.yang @@ -0,0 +1,1411 @@ +submodule Cisco-IOS-XR-ipv4-hsrp-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-hsrp-oper { + prefix Cisco-IOS-XR-ipv4-hsrp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-hsrp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-04 { + description + "Added a new state called Activating to virtual-mac state list. + 2022-02-04 + Increased length of interface fields to 72."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-07 { + description + "Moved group numbers to a range."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hsrp-vmac-state { + type enumeration { + enum "stored" { + value 0; + description + "VMAC stored locally"; + } + enum "reserved" { + value 1; + description + "VMAC reserved in mac table"; + } + enum "active" { + value 2; + description + "VMAC active in mac table"; + } + enum "reserving" { + value 3; + description + "VMAC not yet reserved in mac table"; + } + enum "activating" { + value 4; + description + "VMAC activation in mac table in progress"; + } + } + description + "Hsrp vmac state"; + } + + typedef Hsrp-state-change-reason { + type enumeration { + enum "state-change-bfd-down" { + value 0; + description + "BFD session down"; + } + enum "state-change-vip-learnt" { + value 1; + description + "Virtual IP learnt"; + } + enum "state-change-interface-ip" { + value 2; + description + "Interface IP update"; + } + enum "state-change-delay-timer" { + value 3; + description + "Delay timer expired"; + } + enum "state-change-startup" { + value 4; + description + "Ready on startup"; + } + enum "state-change-shutdown" { + value 5; + description + "HSRP shut down"; + } + enum "state-change-interface-up" { + value 6; + description + "Interface Up update"; + } + enum "state-change-interface-down" { + value 7; + description + "Interface Down update"; + } + enum "state-change-active-timer" { + value 8; + description + "Active timer expired"; + } + enum "state-change-standby-timer" { + value 9; + description + "Standby timer expired"; + } + enum "state-change-resign" { + value 10; + description + "Resign received"; + } + enum "state-change-coup" { + value 11; + description + "Coup received"; + } + enum "state-change-higher-priority-speak" { + value 12; + description + "Higher priority speak received"; + } + enum "state-change-higher-priority-standby" { + value 13; + description + "Higher priority standby received"; + } + enum "state-change-lower-priority-standby" { + value 14; + description + "Lower priority standby received"; + } + enum "state-change-higher-priority-active" { + value 15; + description + "Higher priority active received"; + } + enum "state-change-lower-priority-active" { + value 16; + description + "Lower priority active received"; + } + enum "state-change-virtual-ip-configured" { + value 17; + description + "Virtual IP configured"; + } + enum "state-change-virtual-ip-lost" { + value 18; + description + "Virtual IP lost"; + } + enum "state-change-recovered-from-checkpoint" { + value 19; + description + "Recovered from checkpoint"; + } + enum "state-change-mac-update" { + value 20; + description + "MAC address update"; + } + enum "state-change-admin" { + value 21; + description + "Forwarder Admin state change"; + } + enum "state-change-parent" { + value 22; + description + "MGO parent change"; + } + enum "state-change-chkpt-update" { + value 23; + description + "Checkpoint update from Primary HSRP instance"; + } + enum "state-change-issu-resync" { + value 24; + description + "Resync following ISSU primary event"; + } + enum "state-change-reset-to-learn" { + value 25; + description + "Reset to learn parameters"; + } + enum "state-change-max" { + value 26; + description + "Maximum reason in enumeration"; + } + } + description + "Hsrp state change reason"; + } + + typedef Hsrp-bfd-session-state { + type enumeration { + enum "bfd-state-none" { + value 0; + description + "None"; + } + enum "bfd-state-inactive" { + value 1; + description + "Inactive"; + } + enum "bfd-state-up" { + value 2; + description + "Up"; + } + enum "bfd-state-down" { + value 3; + description + "Down"; + } + } + description + "Hsrp bfd session state"; + } + + typedef Standby-grp-state { + type enumeration { + enum "state-initial" { + value 1; + description + "Initial"; + } + enum "state-learn" { + value 2; + description + "Learn"; + } + enum "state-listen" { + value 3; + description + "Listen"; + } + enum "state-speak" { + value 4; + description + "Speak"; + } + enum "state-standby" { + value 5; + description + "Standby"; + } + enum "state-active" { + value 6; + description + "Active"; + } + } + description + "Standby grp state"; + } + + typedef Hsrp-version { + type uint8; + description + "Hsrp version"; + } + + typedef Hsrp-b-af { + type enumeration { + enum "ipv4" { + description + "IPv4 Address Family"; + } + enum "ipv6" { + description + "IPv6 Address Family"; + } + enum "count" { + description + "The number of supported address families"; + } + } + description + "Hsrp b af"; + } + + grouping HSRP-SUMMARY-INFO { + description + "HSRP summary statistics"; + leaf ipv4-sessions-active { + type uint32; + description + "Number of IPv4 sessions in ACTIVE state"; + } + leaf ipv4-sessions-standby { + type uint32; + description + "Number of IPv4 sessions in STANDBY state"; + } + leaf ipv4-sessions-speak { + type uint32; + description + "Number of IPv4 sessions in SPEAK state"; + } + leaf ipv4-sessions-listen { + type uint32; + description + "Number of IPv4 sessions in LISTEN state"; + } + leaf ipv4-sessions-learn { + type uint32; + description + "Number of IPv4 sessions in LEARN state"; + } + leaf ipv4-sessions-init { + type uint32; + description + "Number of IPv4 sessions in INIT state"; + } + leaf ipv4-slaves-active { + type uint32; + description + "Number of IPv4 slaves in ACTIVE state"; + } + leaf ipv4-slaves-standby { + type uint32; + description + "Number of IPv4 slaves in STANDBY state"; + } + leaf ipv4-slaves-speak { + type uint32; + description + "Number of IPv4 slaves in SPEAK state"; + } + leaf ipv4-slaves-listen { + type uint32; + description + "Number of IPv4 slaves in LISTEN state"; + } + leaf ipv4-slaves-learn { + type uint32; + description + "Number of IPv4 slaves in LEARN state"; + } + leaf ipv4-slaves-init { + type uint32; + description + "Number of IPv4 slaves in INIT state"; + } + leaf ipv4-virtual-ip-addresses-active-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on groups + in ACTIVE state"; + } + leaf ipv4-virtual-ip-addresses-active-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + groups in ACTIVE state"; + } + leaf ipv4-virtual-ip-addresses-standby-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on groups + in STANDBY state"; + } + leaf ipv4-virtual-ip-addresses-standby-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + groups in STANDBY state"; + } + leaf ipv4-virtual-ip-addresses-speak-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on groups + in SPEAK state"; + } + leaf ipv4-virtual-ip-addresses-speak-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + groups in SPEAK state"; + } + leaf ipv4-virtual-ip-addresses-listen-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on groups + in LISTEN state"; + } + leaf ipv4-virtual-ip-addresses-listen-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + groups in LISTEN state"; + } + leaf ipv4-virtual-ip-addresses-learn-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on groups + in LEARN state"; + } + leaf ipv4-virtual-ip-addresses-learn-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + groups in LEARN state"; + } + leaf ipv4-virtual-ip-addresses-init-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on groups + in INIT state"; + } + leaf ipv4-virtual-ip-addresses-init-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + groups in INIT state"; + } + leaf ipv6-sessions-active { + type uint32; + description + "Number of IPv6 sessions in ACTIVE state"; + } + leaf ipv6-sessions-standby { + type uint32; + description + "Number of IPv6 sessions in STANDBY state"; + } + leaf ipv6-sessions-speak { + type uint32; + description + "Number of IPv6 sessions in SPEAK state"; + } + leaf ipv6-sessions-listen { + type uint32; + description + "Number of IPv6 sessions in LISTEN state"; + } + leaf ipv6-sessions-learn { + type uint32; + description + "Number of IPv6 sessions in LEARN state"; + } + leaf ipv6-sessions-init { + type uint32; + description + "Number of IPv6 sessions in INIT state"; + } + leaf ipv6-slaves-active { + type uint32; + description + "Number of IPv6 slaves in ACTIVE state"; + } + leaf ipv6-slaves-standby { + type uint32; + description + "Number of IPv6 slaves in STANDBY state"; + } + leaf ipv6-slaves-speak { + type uint32; + description + "Number of IPv6 slaves in SPEAK state"; + } + leaf ipv6-slaves-listen { + type uint32; + description + "Number of IPv6 slaves in LISTEN state"; + } + leaf ipv6-slaves-learn { + type uint32; + description + "Number of IPv6 slaves in LEARN state"; + } + leaf ipv6-slaves-init { + type uint32; + description + "Number of IPv6 slaves in INIT state"; + } + leaf ipv6-virtual-ip-addresses-active-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on groups + in ACTIVE state"; + } + leaf ipv6-virtual-ip-addresses-active-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + groups in ACTIVE state"; + } + leaf ipv6-virtual-ip-addresses-standby-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on groups + in STANDBY state"; + } + leaf ipv6-virtual-ip-addresses-standby-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + groups in STANDBY state"; + } + leaf ipv6-virtual-ip-addresses-speak-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on groups + in SPEAK state"; + } + leaf ipv6-virtual-ip-addresses-speak-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + groups in SPEAK state"; + } + leaf ipv6-virtual-ip-addresses-listen-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on groups + in LISTEN state"; + } + leaf ipv6-virtual-ip-addresses-listen-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + groups in LISTEN state"; + } + leaf ipv6-virtual-ip-addresses-learn-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on groups + in LEARN state"; + } + leaf ipv6-virtual-ip-addresses-learn-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + groups in LEARN state"; + } + leaf ipv6-virtual-ip-addresses-init-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on groups + in INIT state"; + } + leaf ipv6-virtual-ip-addresses-init-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + groups in INIT state"; + } + leaf interfaces-ipv4-state-up { + type uint32; + description + "Number of HSRP interfaces with IPv4 caps in UP + state"; + } + leaf interfaces-ipv4-state-down { + type uint32; + description + "Number of HSRP interfaces with IPv4 caps in DOWN + state"; + } + leaf tracked-interfaces-ipv4-state-up { + type uint32; + description + "Number of tracked interfaces with IPv4 caps in + UP state"; + } + leaf tracked-interfaces-ipv4-state-down { + type uint32; + description + "Number of tracked interfaces with IPv4 caps in + DOWN state"; + } + leaf tracked-objects-up { + type uint32; + description + "Number of tracked objects in UP state"; + } + leaf tracked-objects-down { + type uint32; + description + "Number of tracked objects in DOWN state"; + } + leaf interfaces-ipv6-state-up { + type uint32; + description + "Number of HSRP interfaces with IPv6 caps in UP + state"; + } + leaf interfaces-ipv6-state-down { + type uint32; + description + "Number of HSRP interfaces with IPv6 caps in DOWN + state"; + } + leaf tracked-interfaces-ipv6-state-up { + type uint32; + description + "Number of tracked interfaces with IPv6 caps in + UP state"; + } + leaf tracked-interfaces-ipv6-state-down { + type uint32; + description + "Number of tracked interfaces with IPv6 caps in + DOWN state"; + } + leaf bfd-sessions-up { + type uint32; + description + "Number of HSRP BFD sessions in UP state"; + } + leaf bfd-sessions-down { + type uint32; + description + "Number of HSRP BFD sessions in DOWN state"; + } + leaf bfd-session-inactive { + type uint32; + description + "Number of HSRP BFD sessions in INACTIVE state"; + } + } + + grouping HSRP-BFD-GROUP-INFO { + description + "BFD Group Information"; + leaf interface-name { + type string { + length "0..64"; + } + description + "Interface Name"; + } + leaf hsrp-group-number { + type uint32; + description + "HSRP Group number"; + } + } + + grouping STANDBY-BFD-INFO { + description + "BFD session information"; + leaf bfd-interface-name { + type string { + length "0..64"; + } + description + "BFD Interface Name"; + } + leaf session-address-family { + type Hsrp-b-af; + description + "Session Address family"; + } + leaf destination-address { + type inet:ipv4-address; + description + "BFD destination address"; + } + leaf destination-ipv6-address { + type inet:ipv6-address; + description + "BFD IPv6 destination address"; + } + leaf bfd-session-state { + type Hsrp-bfd-session-state; + description + "BFD session state"; + } + leaf bfd-interval { + type uint32; + description + "BFD packet send interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + list group { + description + "HSRP Groups tracking the BFD session"; + uses HSRP-BFD-GROUP-INFO; + } + } + + grouping HSRP-SLAVE-INFO-TYPE { + description + "Slave info"; + leaf slave-group-interface { + type string { + length "0..64"; + } + description + "Interface of slave group"; + } + leaf slave-group-number { + type uint32; + description + "Group number of slave group"; + } + } + + grouping HSRP-MGO-INFO { + description + "MGO group data"; + leaf primary-session-name { + type string { + length "0..16"; + } + description + "Session Name"; + } + leaf primary-session-interface { + type xr:Interface-name; + description + "Interface of primary session"; + } + leaf primary-af-name { + type Hsrp-b-af; + description + "Address family of primary session"; + } + leaf primary-session-number { + type uint32; + description + "Group number of primary session"; + } + leaf primary-session-state { + type Standby-grp-state; + description + "State of primary session"; + } + list slave { + description + "List of slaves following this primary session"; + uses HSRP-SLAVE-INFO-TYPE; + } + } + + grouping HSRP-IF-STATS-TYPE { + description + "HSRP Interface Statistics"; + leaf advert-packets-sent { + type uint32; + description + "Number of advertisement packets sent"; + } + leaf advert-packets-received { + type uint32; + description + "Number of advertisement packets received"; + } + leaf long-packets-received { + type uint32; + description + "Number of packets received that were too Long"; + } + leaf short-packets-received { + type uint32; + description + "Number of packets received that were too short"; + } + leaf invalid-version-received { + type uint32; + description + "Number of packets received with invalid version"; + } + leaf invalid-operation-code-received { + type uint32; + description + "Number of packets received with invalid + operation code"; + } + leaf unknown-group-received { + type uint32; + description + "Number of packets received for an unknown group + id"; + } + leaf inoperational-group-received { + type uint32; + description + "Number of packets received for an inoperational + group"; + } + leaf conflict-source-ip-address-received { + type uint32; + description + "Number of packets received from a conflicting + Source IP address"; + } + } + + grouping STANDBY-IF-INFO { + description + "Use burnt in mac address information"; + container statistics { + description + "HSRP Interface Statistics"; + uses HSRP-IF-STATS-TYPE; + } + leaf interface { + type xr:Interface-name; + description + "IM Interface"; + } + leaf use-bia-flag { + type boolean; + description + "Use burnt in mac address flag"; + } + } + + grouping STANDBY-TRACKEDIF-INFO { + description + "Interface tracking information"; + leaf interface { + type xr:Interface-name; + description + "IM Interface"; + } + leaf hsrp-group-number { + type uint32; + description + "HSRP Group number"; + } + leaf priority-decrement { + type uint32; + description + "Priority weighting"; + } + leaf interface-up-flag { + type boolean; + description + "Interface up flag"; + } + leaf tracked-interface-name-xr { + type string { + length "0..64"; + } + description + "Tracked Interface Name"; + } + leaf is-object { + type boolean; + description + "Tracked Object Flag"; + } + } + + grouping HSRP-GROUP-STATS-TYPE { + description + "HSRP Group Statistics"; + leaf active-transitions { + type uint32; + description + "Number of transitions to Active State"; + } + leaf standby-transitions { + type uint32; + description + "Number of transitions to Standby State"; + } + leaf speak-transitions { + type uint32; + description + "Number of transitions to Speak State"; + } + leaf listen-transitions { + type uint32; + description + "Number of transitions to Listen State"; + } + leaf learn-transitions { + type uint32; + description + "Number of transitions to Learn State"; + } + leaf init-transitions { + type uint32; + description + "Number of transitions to Init State"; + } + leaf hello-packets-sent { + type uint32; + description + "Number of Hello Packets sent (NB: Bundles only)"; + } + leaf resign-packets-sent { + type uint32; + description + "Number of Resign Packets sent"; + } + leaf coup-packets-sent { + type uint32; + description + "Number of Coup Packets sent"; + } + leaf hello-packets-received { + type uint32; + description + "Number of Hello Packets received"; + } + leaf resign-packets-received { + type uint32; + description + "Number of Resign Packets received"; + } + leaf coup-packets-received { + type uint32; + description + "Number of Coup Packets received"; + } + leaf auth-fail-received { + type uint32; + description + "Number of Packets received that failed + authentication"; + } + leaf invalid-timer-received { + type uint32; + description + "Number of packets received with invalid Hello + Time value"; + } + leaf mismatch-virtual-ip-address-received { + type uint32; + description + "Number of packets received with mismatching + virtual IP address"; + } + } + + grouping HSRP-STATE-CHANGE-INFO-TYPE { + description + "State change info"; + container time { + description + "Time of state change"; + uses HSRP-BAG-TIMESTAMP; + } + leaf old-state { + type Standby-grp-state; + description + "Old State"; + } + leaf new-state { + type Standby-grp-state; + description + "New State"; + } + leaf reason { + type Hsrp-state-change-reason; + description + "Reason for state change"; + } + } + + grouping HSRP-BAG-TIMESTAMP { + description + "Timestamp"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } + + grouping IPV6-BAG-ADDR { + description + "IPV6 BAG ADDR"; + leaf ipv6-address { + type inet:ipv6-address; + description + "IPV6Address"; + } + } + + grouping STANDBY-GRP-INFO { + description + "Detailed group specfic information"; + container resign-sent-time { + description + "Time last resign was sent"; + uses HSRP-BAG-TIMESTAMP; + } + container resign-received-time { + description + "Time last resign was received"; + uses HSRP-BAG-TIMESTAMP; + } + container coup-sent-time { + description + "Time last coup was sent"; + uses HSRP-BAG-TIMESTAMP; + } + container coup-received-time { + description + "Time last coup was received"; + uses HSRP-BAG-TIMESTAMP; + } + container statistics { + description + "HSRP Group statistics"; + uses HSRP-GROUP-STATS-TYPE; + } + leaf authentication-string { + type string { + length "0..9"; + } + description + "Authentication string"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "Virtual mac address"; + } + leaf hsrp-group-number { + type uint32; + description + "HSRP Group number"; + } + leaf address-family { + type Hsrp-b-af; + description + "Address family"; + } + leaf version { + type Hsrp-version; + description + "HSRP Protocol Version"; + } + leaf session-name { + type string { + length "0..16"; + } + description + "Session Name"; + } + leaf slaves { + type uint32; + description + "Number of slaves following state"; + } + leaf is-slave { + type boolean; + description + "Group is a slave group"; + } + leaf followed-session-name { + type string { + length "0..16"; + } + description + "Followed Session Name"; + } + leaf configured-priority { + type uint8; + description + "Configured priority"; + } + leaf preempt-delay { + type uint32; + units "second"; + description + "Preempt delay time in seconds"; + } + leaf preempt-timer-secs { + type uint32; + units "second"; + description + "Preempt time remaining in seconds"; + } + leaf hello-time { + type uint32; + units "millisecond"; + description + "Hellotime in msecs"; + } + leaf hold-time { + type uint32; + units "millisecond"; + description + "Holdtime in msecs"; + } + leaf learned-hello-time { + type uint32; + units "millisecond"; + description + "Learned hellotime in msecs"; + } + leaf learned-hold-time { + type uint32; + units "millisecond"; + description + "Learned holdtime in msecs"; + } + leaf min-delay-time { + type uint32; + units "millisecond"; + description + "Minimum delay time in msecs"; + } + leaf reload-delay-time { + type uint32; + units "millisecond"; + description + "Reload delay time in msecs"; + } + leaf virtual-ip-address { + type inet:ipv4-address; + description + "Configured Virtual IPv4 address"; + } + leaf virtual-linklocal-ipv6-address { + type inet:ipv6-address; + description + "Virtual linklocal IPv6 address"; + } + leaf active-ip-address { + type inet:ipv4-address; + description + "Active router's IP address"; + } + leaf active-ipv6-address { + type inet:ipv6-address; + description + "Active router's IPv6 address"; + } + leaf active-mac-address { + type yang:mac-address; + description + "Active router's interface MAC address"; + } + leaf standby-ip-address { + type inet:ipv4-address; + description + "Standby router's IP address"; + } + leaf standby-ipv6-address { + type inet:ipv6-address; + description + "Standby router's IPv6 address"; + } + leaf standby-mac-address { + type yang:mac-address; + description + "Standby router's interface MAC address"; + } + leaf hsrp-router-state { + type Standby-grp-state; + description + "HSRP router state"; + } + leaf interface-name-xr { + type string { + length "0..64"; + } + description + "Interface Name"; + } + leaf interface { + type xr:Interface-name; + description + "IM Interface"; + } + leaf router-priority { + type uint8; + description + "Priority of the router"; + } + leaf active-priority { + type uint8; + description + "Priority of the Active router"; + } + leaf active-timer-flag { + type boolean; + description + "Active timer running flag"; + } + leaf active-timer-secs { + type uint32; + units "second"; + description + "Active timer running time secs"; + } + leaf active-timer-msecs { + type uint32; + units "millisecond"; + description + "Active timer running time msecs"; + } + leaf standby-timer-flag { + type boolean; + description + "Standby timer running flag"; + } + leaf standby-timer-secs { + type uint32; + units "second"; + description + "Standby timer running time secs"; + } + leaf standby-timer-msecs { + type uint32; + units "millisecond"; + description + "Standby timer running time msecs"; + } + leaf hello-timer-flag { + type boolean; + description + "Hello timer running flag"; + } + leaf hello-timer-secs { + type uint32; + units "second"; + description + "Hello timer running time secs"; + } + leaf hello-timer-msecs { + type uint32; + units "millisecond"; + description + "Hello timer running time msecs"; + } + leaf delay-timer-flag { + type boolean; + description + "Delay timer running flag"; + } + leaf delay-timer-secs { + type uint32; + units "second"; + description + "Delay timer running time secs"; + } + leaf delay-timer-msecs { + type uint32; + units "millisecond"; + description + "Delay timer running time msecs"; + } + leaf current-state-timer-secs { + type uint32; + units "second"; + description + "Time in current state secs"; + } + leaf state-change-count { + type uint32; + description + "Number of state changes"; + } + leaf tracked-interface-count { + type uint32; + description + "Number of tracked interfaces"; + } + leaf tracked-interface-up-count { + type uint32; + description + "Number of tracked interfaces up"; + } + leaf preempt-enabled { + type boolean; + description + "Preempt enabled"; + } + leaf use-configured-timers { + type boolean; + description + "Use configured timers"; + } + leaf use-configured-virtual-ip { + type boolean; + description + "Use configured virtual IP"; + } + leaf use-bia-configured { + type boolean; + description + "Use burnt in MAC address configured"; + } + leaf configured-timers { + type boolean; + description + "Non-default timers are configured"; + } + leaf configured-mac-address { + type boolean; + description + "MAC address configured"; + } + leaf redirects-disabled { + type boolean; + description + "HSRP redirects disabled"; + } + leaf bfd-enabled { + type boolean; + description + "HSRP BFD fast failover"; + } + leaf bfd-interface { + type xr:Interface-name; + description + "BFD Interface"; + } + leaf bfd-peer-ip-address { + type inet:ipv4-address; + description + "BFD Peer IP address"; + } + leaf bfd-peer-ipv6-address { + type inet:ipv6-address; + description + "BFD Peer IPv6 address"; + } + leaf bfd-session-state { + type Hsrp-bfd-session-state; + description + "BFD session state"; + } + leaf bfd-interval { + type uint32; + description + "BFD packet send interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + leaf virtual-mac-address-state { + type Hsrp-vmac-state; + description + "Virtual mac address state"; + } + leaf-list secondary-address { + type inet:ipv4-address; + description + "Secondary virtual IP addresses"; + } + list global-address { + description + "Global virtual IPv6 addresses"; + uses IPV6-BAG-ADDR; + } + list state-change-history { + description + "State change history"; + uses HSRP-STATE-CHANGE-INFO-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper.yang new file mode 100644 index 000000000..e4f8c6762 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-hsrp-oper.yang @@ -0,0 +1,249 @@ +module Cisco-IOS-XR-ipv4-hsrp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-hsrp-oper"; + prefix ipv4-hsrp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-hsrp-oper-sub1 { + revision-date 2022-11-04; + } + + 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-hsrp package operational data. + + This module contains definitions + for the following management objects: + hsrp: HSRP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-04 { + description + "Added a new state called Activating to virtual-mac state list. + 2022-02-04 + Increased length of interface fields to 72."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-07 { + description + "Moved group numbers to a range."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hsrp-group { + type uint32 { + range "0..4095"; + } + description + "Hsrp group"; + } + + container hsrp { + config false; + description + "HSRP operational data"; + container ipv4 { + description + "IPv4 HSRP information"; + container groups { + description + "The HSRP standby group table"; + list group { + key "interface-name group-number"; + description + "An HSRP standby group"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + leaf group-number { + type Hsrp-group; + description + "The HSRP group number"; + } + uses STANDBY-GRP-INFO; + } + } + container tracked-interfaces { + description + "The HSRP tracked interfaces table"; + list tracked-interface { + key "interface-name group-number tracked-interface-name"; + description + "An HSRP tracked interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name of the interface"; + } + leaf group-number { + type Hsrp-group; + description + "The HSRP group number"; + } + leaf tracked-interface-name { + type xr:Interface-name; + description + "The interface name of the interface being + tracked"; + } + uses STANDBY-TRACKEDIF-INFO; + } + } + container interfaces { + description + "The HSRP interface information table"; + list interface { + key "interface-name"; + description + "A HSRP interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses STANDBY-IF-INFO; + } + } + } + container mgo-sessions { + description + "HSRP MGO session table"; + list mgo-session { + key "session-name"; + description + "HSRP MGO session"; + leaf session-name { + type xr:Cisco-ios-xr-string; + description + "HSRP MGO session name"; + } + uses HSRP-MGO-INFO; + } + } + container ipv6 { + description + "IPv6 HSRP information"; + container tracked-interfaces { + description + "The HSRP tracked interfaces table"; + list tracked-interface { + key "interface-name group-number tracked-interface-name"; + description + "An HSRP tracked interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name of the interface"; + } + leaf group-number { + type Hsrp-group; + description + "The HSRP group number"; + } + leaf tracked-interface-name { + type xr:Interface-name; + description + "The interface name of the interface being + tracked"; + } + uses STANDBY-TRACKEDIF-INFO; + } + } + container groups { + description + "The HSRP standby group table"; + list group { + key "interface-name group-number"; + description + "An HSRP standby group"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + leaf group-number { + type Hsrp-group; + description + "The HSRP group number"; + } + uses STANDBY-GRP-INFO; + } + } + container interfaces { + description + "The HSRP interface information table"; + list interface { + key "interface-name"; + description + "A HSRP interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses STANDBY-IF-INFO; + } + } + } + container bfd-sessions { + description + "The table of HSRP BFD Sessions"; + list bfd-session { + key "interface-name ip-address"; + description + "An HSRP BFD Session"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "Destination IP Address of BFD Session"; + } + uses STANDBY-BFD-INFO; + } + } + container summary { + description + "HSRP summary statistics"; + uses HSRP-SUMMARY-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-cfg.yang new file mode 100644 index 000000000..7efcb2953 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-cfg.yang @@ -0,0 +1,825 @@ +module Cisco-IOS-XR-ipv4-igmp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-igmp-cfg"; + prefix ipv4-igmp-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ipv4-igmp package configuration. + + This module contains definitions + for the following management objects: + igmp: IGMPconfiguration + amt: AMT Relay configuration + mld: MLD configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-21 { + description + "event-history ipv4_igmp.bag/ipv4_igmp_common_cfg.sch igmp missed-packet cfg cmd + 2022-08-23 + missed-packet command"; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2016-10-10 { + description + "Removed invalid configs from VRF container"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmp-filter { + type enumeration { + enum "include" { + value 0; + description + "Include"; + } + enum "exclude" { + value 1; + description + "Exclude"; + } + enum "star-g" { + value 2; + description + "StarG"; + } + } + description + "Igmp filter"; + } + + grouping MAXIMUM-GROUPS-PER-INTERFACE-OOR { + description + "Common node of inheritable-defaults, interface"; + container maximum-groups-per-interface-oor { + presence "Indicates a maximum-groups-per-interface-oor node is configured."; + description + "Configure maximum number of groups accepted per + interface by this router"; + leaf maximum-groups { + type uint32 { + range "1..40000"; + } + mandatory true; + description + "Maximum number of groups accepted per interface + by this router"; + } + leaf warning-threshold { + type uint32 { + range "1..40000"; + } + default "25000"; + description + " WarningThreshold for number of groups accepted + per interface by this router"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access-list to account for"; + } + } + } + + grouping VRF-TABLE { + description + "Common node of mld, igmp"; + container vrfs { + description + "VRF related configuration"; + list vrf { + key "vrf-name"; + description + "Configuration for a particular vrf"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name for this vrf"; + } + uses TRAFFIC; + uses INHERITABLE-DEFAULTS; + uses SSM-ACCESS-GROUP-TABLE; + uses MAXIMUM; + uses SSMDNS-QUERY-GROUP; + uses INTERFACE-TABLE; + uses ROBUSTNESS; + } + } + } + + grouping TRAFFIC { + description + "Common node of vrf, default-context"; + container traffic { + description + "Configure IGMP Traffic variables"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Configure the route-policy profile"; + } + } + } + + grouping INHERITABLE-DEFAULTS { + description + "Common node of vrf, default-context"; + container inheritable-defaults { + description + "Inheritable Defaults"; + uses MAXIMUM-GROUPS-PER-INTERFACE-OOR; + uses QUERY-TIMEOUT; + uses ACCESS-GROUP; + uses QUERY-MAX-RESPONSE-TIME; + uses VERSION; + uses ROUTER-ENABLE; + uses QUERY-INTERVAL; + uses EXPLICIT-TRACKING; + } + } + + grouping ROBUSTNESS { + description + "Common node of vrf, default-context"; + leaf robustness { + type uint32 { + range "2..10"; + } + default "2"; + description + "Configure IGMP Robustness variable"; + } + } + + grouping VERSION { + description + "Common node of inheritable-defaults, interface"; + leaf version { + type uint32 { + range "1..3"; + } + default "3"; + description + "Version number"; + } + } + + grouping MAXIMUM { + description + "Common node of vrf, default-context"; + container maximum { + description + "Configure IGMP State Limits"; + leaf maximum-groups { + type uint32 { + range "1..75000"; + } + default "50000"; + description + "Configure maximum number of groups accepted by + this router"; + } + } + } + + grouping INTERFACE-TABLE { + description + "Common node of vrf, default-context"; + container interfaces { + description + "Interface-level configuration"; + list interface { + key "interface-name"; + description + "The name of the interface"; + container join-groups { + presence "Indicates a join-groups node is configured."; + description + "IGMP join multicast group"; + + grouping JOIN-GROUP-CONTENT { + description + "JOIN GROUP CONTENT"; + leaf mode { + type Igmp-filter; + mandatory true; + description + "Filter mode"; + } + } + list join-group { + key "group-address"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + uses JOIN-GROUP-CONTENT; + } + list join-group-source-address { + key "group-address source-address"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Optional IP source address"; + } + uses JOIN-GROUP-CONTENT; + } + } + container static-group-group-addresses { + description + "IGMP static multicast group"; + + grouping STATIC-GROUP-CONTENT { + description + "STATIC GROUP CONTENT"; + leaf group-count { + type uint32 { + range "1..512"; + } + mandatory true; + description + "Number of groups to join (do not set without + GroupAddressMask)"; + } + leaf source-count { + type uint32 { + range "1..512"; + } + mandatory true; + description + "Number of sources to join (do not set + without SourceAddressMask)"; + } + leaf suppress-report { + type boolean; + mandatory true; + description + "Suppress reports"; + } + } + list static-group-group-address { + key "group-address"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + uses STATIC-GROUP-CONTENT; + } + list static-group-group-address-source-address { + key "group-address source-address"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "IP source address"; + } + uses STATIC-GROUP-CONTENT; + } + list static-group-group-address-source-address-source-address-mask { + key "group-address source-address source-address-mask"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "IP source address"; + } + leaf source-address-mask { + type inet:ip-address-no-zone; + description + "Mask for Source Address"; + } + uses STATIC-GROUP-CONTENT; + } + list static-group-group-address-group-address-mask { + key "group-address group-address-mask"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + leaf group-address-mask { + type inet:ip-address-no-zone; + description + "Mask for Group Address"; + } + uses STATIC-GROUP-CONTENT; + } + list static-group-group-address-group-address-mask-source-address { + key "group-address group-address-mask source-address"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + leaf group-address-mask { + type inet:ip-address-no-zone; + description + "Mask for Group Address"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "IP source address"; + } + uses STATIC-GROUP-CONTENT; + } + list static-group-group-address-group-address-mask-source-address-source-address-mask { + key "group-address group-address-mask source-address source-address-mask"; + description + "IP group address and optional source address + to include"; + leaf group-address { + type inet:ip-address-no-zone; + description + "IP group address"; + } + leaf group-address-mask { + type inet:ip-address-no-zone; + description + "Mask for Group Address"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "IP source address"; + } + leaf source-address-mask { + type inet:ip-address-no-zone; + description + "Mask for Source Address"; + } + uses STATIC-GROUP-CONTENT; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses MAXIMUM-GROUPS-PER-INTERFACE-OOR; + uses QUERY-TIMEOUT; + uses ACCESS-GROUP; + uses QUERY-MAX-RESPONSE-TIME; + uses VERSION; + uses ROUTER-ENABLE; + uses QUERY-INTERVAL; + uses EXPLICIT-TRACKING; + } + } + } + + grouping ACCESS-GROUP { + description + "Common node of inheritable-defaults, interface"; + leaf access-group { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access list specifying access group range"; + } + } + + grouping MISSED-PACKETS { + description + "Common node of igmp, mld"; + container missed-packets { + description + "Configure servicability limits"; + leaf general-query { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Maximum general query servicability entries"; + } + leaf group-specific { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Maximum group specific servicability entries"; + } + leaf membership { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Maximum membership servicability entries"; + } + leaf ssm-query { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Maximum SSM query servicability entries"; + } + } + } + + grouping SSM-ACCESS-GROUP-TABLE { + description + "Common node of vrf, default-context"; + container ssm-access-groups { + description + "IGMP Source specific mode"; + list ssm-access-group { + key "source-address"; + description + "SSM static Access Group"; + leaf source-address { + type inet:ip-address-no-zone; + description + "IP source address"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access list specifying access group"; + } + } + } + } + + grouping QUERY-MAX-RESPONSE-TIME { + description + "Common node of inheritable-defaults, interface"; + leaf query-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "Query response value in seconds"; + } + } + + grouping DEFAULT-CONTEXT { + description + "Common node of igmp, mld"; + container default-context { + presence "Indicates a default-context node is configured."; + description + "Default Context"; + container nsf { + description + "Configure NSF specific options"; + leaf lifetime { + type uint32 { + range "10..3600"; + } + units "second"; + default "60"; + description + "Maximum time for IGMP NSF mode in seconds"; + } + } + container unicast-qos-adjust { + description + "Configure IGMP QoS shapers for subscriber + interfaces"; + leaf download-interval { + type uint32 { + range "10..500"; + } + units "millisecond"; + default "100"; + description + "Configure the QoS download interval (in + milliseconds)"; + } + leaf adjustment-delay { + type uint32 { + range "0..10"; + } + units "second"; + default "1"; + description + "Configure the QoS delay before programming (in + seconds)"; + } + leaf hold-off { + type uint32 { + range "5..1800"; + } + units "second"; + default "180"; + description + "Configure the QoS hold off time (in seconds)"; + } + } + container accounting { + description + "Configure IGMP accounting for logging + join/leave records"; + leaf max-history { + type uint32 { + range "0..365"; + } + units "day"; + default "0"; + description + "Configure IGMP accounting Maximum History + setting"; + } + } + uses TRAFFIC; + uses INHERITABLE-DEFAULTS; + uses SSM-ACCESS-GROUP-TABLE; + uses MAXIMUM; + uses SSMDNS-QUERY-GROUP; + uses INTERFACE-TABLE; + uses ROBUSTNESS; + } + } + + grouping QUERY-INTERVAL { + description + "Common node of inheritable-defaults, interface"; + leaf query-interval { + type uint32 { + range "1..3600"; + } + units "second"; + default "60"; + description + "Query interval in seconds"; + } + } + + grouping ROUTER-ENABLE { + description + "Common node of inheritable-defaults, interface"; + leaf router-enable { + type boolean; + default "true"; + description + "Enabled or disabled, when value is TRUE or FALSE + respectively"; + } + } + + grouping SSMDNS-QUERY-GROUP { + description + "Common node of vrf, default-context"; + leaf ssmdns-query-group { + type empty; + description + "Enable SSM mapping using DNS Query"; + } + } + + grouping QUERY-TIMEOUT { + description + "Common node of inheritable-defaults, interface"; + leaf query-timeout { + type uint32 { + range "60..300"; + } + units "second"; + description + "IGMP previous querier timeout"; + } + } + + grouping EXPLICIT-TRACKING { + description + "Common node of inheritable-defaults, interface"; + container explicit-tracking { + presence "Indicates a explicit-tracking node is configured."; + description + "IGMPv3 explicit host tracking"; + leaf enable { + type boolean; + mandatory true; + description + "Enabled or disabled, when value is TRUE or + FALSE respectively"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access list specifying tracking group range"; + } + } + } + + container igmp { + description + "IGMPconfiguration"; + uses VRF-TABLE; + uses DEFAULT-CONTEXT; + uses MISSED-PACKETS; + } + container amt { + description + "AMT Relay configuration"; + container relay-adv-add { + presence "Indicates a relay-adv-add node is configured."; + description + "Configure AMT Relay IPv4 Advertisement Address"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "AMT Relay IPv4 Advertisement Address"; + } + leaf interface { + type xr:Interface-name; + description + "Relay Advertisement Interface"; + } + } + container relay-anycast-prefix { + presence "Indicates a relay-anycast-prefix node is configured."; + description + "Configure AMT Relay IPv4 Anycast-Prefix"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Anycast-Prefix Address"; + } + leaf prefix-length { + type uint32 { + range "1..32"; + } + description + "Mask Length for Anycast Prefix"; + } + } + leaf maximum-v4-route-gateway { + type uint32 { + range "1..4294967295"; + } + description + "Configure Maximum number of IPv4 route-gateways + (Tunnels)"; + } + leaf gateway-filter { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access list for Gateway Filter"; + } + leaf maximum-v4-routes { + type uint32 { + range "1..4294967295"; + } + description + "Configure Maximum number of IPv4 Routes"; + } + leaf amttos { + type uint32 { + range "1..255"; + } + description + "Configure AMT Relay TOS"; + } + leaf amtttl { + type uint32 { + range "1..255"; + } + description + "Configure AMT Relay TTL"; + } + leaf maximum-v6-route-gateway { + type uint32 { + range "1..4294967295"; + } + description + "Configure Maximum number of IPv6 route-gateways + (Tunnels)"; + } + leaf maximum-gateway { + type uint32 { + range "1..4294967295"; + } + description + "Configure AMT maximum number of Gateways"; + } + leaf maximum-v6-routes { + type uint32 { + range "1..4294967295"; + } + description + "Configure Maximum number of IPv6 Routes"; + } + leaf amtqqic { + type uint32 { + range "1..4294967295"; + } + description + "Configure AMT QQIC value"; + } + leaf amtmtu { + type uint32 { + range "100..65535"; + } + description + "Configure AMT Relay MTU"; + } + } + container mld { + description + "MLD configuration"; + uses VRF-TABLE; + uses DEFAULT-CONTEXT; + uses MISSED-PACKETS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg.yang new file mode 100644 index 000000000..10a47a924 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg.yang @@ -0,0 +1,181 @@ +module Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-igmp-dyn-tmpl-cfg"; + prefix ipv4-igmp-dyn-tmpl-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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-igmp-dyn-tmpl package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-22 { + description + "Added new threashold leaf"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dyn-tmpl-multicast-mode { + type enumeration { + enum "qos-correlation" { + value 1; + description + "QOS Correlation"; + } + enum "passive" { + value 2; + description + "Passive"; + } + } + description + "Dyn tmpl multicast mode"; + } + + grouping IGMP { + description + "Common node of ppp, ip-subscriber"; + container igmp { + description + "IGMPconfiguration"; + container default-vrf { + description + "Default VRF"; + container max-groups { + presence "Indicates a max-groups node is configured."; + description + "IGMP Max Groups"; + leaf max-groups { + type uint32 { + range "1..40000"; + } + mandatory true; + description + "Maximum number of groups accepted per + interface by this router"; + } + leaf threshold { + type uint32 { + range "1..40000"; + } + description + " Threshold for number of groups accepted per + interface by this router"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access-list to account for"; + } + } + container explicit-tracking { + presence "Indicates a explicit-tracking node is configured."; + description + "IGMPv3 explicit host tracking"; + leaf enable { + type boolean; + mandatory true; + description + "Enable or disable, when value is TRUE or + FALSE respectively"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access list specifying tracking group range"; + } + } + leaf access-group { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access list specifying access-list group range"; + } + leaf version { + type uint32 { + range "1..3"; + } + default "3"; + description + "IGMP Version"; + } + leaf query-interval { + type uint32 { + range "1..3600"; + } + units "second"; + default "60"; + description + "Query interval in seconds"; + } + leaf query-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "Query response value in seconds"; + } + leaf multicast-mode { + type Dyn-tmpl-multicast-mode; + description + "Configure Multicast mode variable"; + } + } + } + } + + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IGMP; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IGMP; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper-sub1.yang new file mode 100644 index 000000000..bc3704bbd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper-sub1.yang @@ -0,0 +1,1805 @@ +submodule Cisco-IOS-XR-ipv4-igmp-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-igmp-oper { + prefix Cisco-IOS-XR-ipv4-igmp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-igmp package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-igmp-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-21 { + description + "event-history ipv4_igmp.bag/ipv4_igmp_common_oper.sch show igmp missed-packet + 2022-08-23 + ts related changes"; + semver:module-version "3.0.0"; + } + revision 2021-05-17 { + description + "Added DVMRP packet counter tracking for malloc and free."; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Changes to IOS-XR IGMP oper"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmp-edm-protocol { + type enumeration { + enum "no-route" { + value 0; + description + "no route"; + } + enum "sm" { + value 1; + description + "sm"; + } + enum "dm" { + value 2; + description + "dm"; + } + enum "bidir" { + value 3; + description + "bidir"; + } + enum "ssm" { + value 4; + description + "ssm"; + } + enum "any" { + value 6; + description + "any"; + } + } + description + "IGMP Protocol"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Igmp-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + typedef Im-state { + type uint32; + description + "Im state"; + } + + grouping IGMP-EDM-NSF-BAG { + description + "IGMP NSF state"; + leaf is-multicast-nsf-active { + type boolean; + description + "Is Multicast NSF active"; + } + leaf multicast-nsf-timeout { + type uint32; + units "second"; + description + "Multicast NSF timeout in secs"; + } + leaf multicast-nsf-time-left { + type uint32; + units "second"; + description + "Multicast NSF time remaining in secs"; + } + leaf respawn-count { + type uint32; + description + "Respawn Count"; + } + leaf last-nsf-on { + type int64; + description + "Last NSF time ON"; + } + leaf last-nsf-off { + type int64; + description + "Last NSF time off"; + } + leaf last-nsf-on-min { + type int32; + units "second"; + description + "Last NSF time ON in Seconds"; + } + leaf last-nsf-off-min { + type int32; + units "second"; + description + "Last NSF time OFF in Seconds"; + } + leaf last-icd-notif-recv { + type int64; + description + "Last ICD Notif Recv"; + } + leaf last-icd-notif-recv-min { + type int32; + units "second"; + description + "Last ICD Notif Recv in Seconds"; + } + } + + grouping IGMP-MISSED-PACKET-BAG { + description + "IGMP Missed Packet"; + leaf message-type { + type uint32; + description + "Message Type"; + } + leaf message-string { + type string { + length "0..80"; + } + description + "Message String"; + } + leaf message-time { + type string { + length "0..40"; + } + description + "Message Time"; + } + } + + grouping IGMP-MISSED-PACKETS-LIST-BAG { + description + "IGMP Missed Packets list information"; + list missed-packets { + description + "List of Missed Packets"; + uses IGMP-MISSED-PACKET-BAG; + } + } + + grouping IGMP-EDM-BVI-STATS-BAG { + description + "IGMP EDM BVI STATS BAG"; + leaf receive-buffers { + type uint32; + description + "Number of AIPC buffers received"; + } + leaf release-buffers { + type uint32; + description + "Number of AIPC buffers released"; + } + leaf send-blocks { + type uint32; + description + "Number of AIPC buffers send blocked"; + } + leaf release-fail-buffers { + type uint32; + description + "Number of AIPC buffers release failed"; + } + leaf null-buffer-handles { + type uint32; + description + "Number of AIPC NULL buffer handles"; + } + leaf rx-ipc-open-notif { + type uint32; + description + "Number of AIPC open notifications received"; + } + leaf rx-ipc-close-notif { + type uint32; + description + "Number of AIPC close notifications received"; + } + leaf rx-ipc-error-notif { + type uint32; + description + "Number of AIPC error notifications received"; + } + leaf rx-ipc-lwm-notif { + type uint32; + description + "Number of AIPC LWM notifications received"; + } + leaf rx-ipc-hwm-notif { + type uint32; + description + "Number of AIPC HWM notifications received"; + } + leaf rx-ipc-input-wait-notif { + type uint32; + description + "Number of AIPC input waiting notifications + received"; + } + leaf rx-ipc-send-status-notif { + type uint32; + description + "Number of AIPC send status notifications + received"; + } + leaf rx-ipc-publish-notif { + type uint32; + description + "Number of AIPC publish notifications received"; + } + leaf rx-ipc-q-full-notif { + type uint32; + description + "Number of AIPC queue full notifications received"; + } + leaf rx-ipc-output-notif { + type uint32; + description + "Number of AIPC output notifications received"; + } + leaf rx-ipc-connect-notif { + type uint32; + description + "Number of AIPC connect notifications received"; + } + leaf rx-igmp-packet-success { + type uint32; + description + "Number of IGMP protocol messages received"; + } + leaf rx-add-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Add messages received"; + } + leaf rx-delete-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Delete messages received"; + } + leaf rx-sweep-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Sweep messages received"; + } + leaf tx-add-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Add messages transmitted"; + } + leaf tx-delete-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Delete messages + transmitted"; + } + leaf tx-sweep-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Sweep messages received"; + } + leaf rx-unknown-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Unknown messages received"; + } + leaf tx-unknown-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Unknown messages + transmitted"; + } + leaf tx-buffer-errors { + type uint32; + description + "Number of AIPC transmission errors"; + } + leaf tx-buffers { + type uint32; + description + "Number of AIPC buffers transmited"; + } + leaf tx-protocol-buffers { + type uint32; + description + "Number of IGMP protocol buffers transmitted"; + } + leaf tx-mrouter-buffers { + type uint32; + description + "Number of IGMP Mrouter buffers transmitted"; + } + leaf tx-unknown-buffers { + type uint32; + description + "Number of IGMP Unknown buffers transmited"; + } + leaf wtx-msg-recvd { + type uint32; + description + "Number of WTX messages received"; + } + leaf wtx-msg-sent { + type uint32; + description + "Number of WTX messages sent"; + } + leaf wtx-msg-proto-sent { + type uint32; + description + "Number of WTX messages sent to Protocol"; + } + leaf wtx-msg-drop-dc { + type uint32; + description + "Number of WTX messages dropped due to disconnect"; + } + leaf wtx-msg-drop-nomem { + type uint32; + description + "Number of WTX messages dropped to memory"; + } + leaf wtx-msg-freed { + type uint32; + description + "Number of WTX messages freed"; + } + } + + grouping IGMP-EDM-I2Q-STATS-BAG { + description + "IGMP Rate Adjust Stats"; + leaf queues { + type uint16; + description + "I2Q Queue count"; + } + leaf batches { + type uint16; + description + "I2Q Rate Batch count"; + } + leaf add-to-batches { + type uint32; + description + "Add to batch count"; + } + leaf delete-to-batches { + type uint32; + description + "Delete to batch count"; + } + leaf send-success { + type uint32; + description + "Send Success count"; + } + leaf send-errors { + type uint32; + description + "Number of Send errors in batch"; + } + leaf send-comm-errors { + type uint32; + description + "Send Error due to comms count"; + } + leaf send-partial-errors { + type uint32; + description + "Send Error due to partial issue count"; + } + leaf received-resync-requests { + type uint32; + description + "Number of Resync request received"; + } + leaf sent-resync-bulks { + type uint32; + description + "Number of bulks sent for last resync received"; + } + leaf is-resync-received { + type boolean; + description + "Is Resync request received"; + } + leaf is-resync-required { + type boolean; + description + "Is Resync required"; + } + leaf is-resync-start-sent { + type boolean; + description + "Is Resync Start message sent"; + } + leaf is-qos-s-sweeped { + type boolean; + description + "Is QOS Sweeped once "; + } + leaf last-sweep-time { + type uint64; + units "second"; + description + "Time elapsed since Last mark and sweep in + seconds"; + } + leaf last-download-time { + type uint64; + units "second"; + description + "Time elapsed since Last download to QOS in + seconds"; + } + } + + grouping AMT-GW-BAG { + description + "AMT GW info"; + leaf amtgw { + type inet:ipv4-address; + description + "GW"; + } + leaf amt-port { + type uint32; + description + "Port"; + } + leaf key-len { + type uint32; + description + "Len"; + } + leaf amtnh { + type uint32; + description + "AMT NH"; + } + leaf amt-nonce { + type uint32; + description + "Nonce"; + } + leaf idb { + type uint64; + description + "IDB"; + } + leaf mem-upd-in { + type uint32; + description + "UpdIn"; + } + leaf mem-upd-out { + type uint32; + description + "UpdOut"; + } + } + + grouping IGMP-EDM-NSR-BAG { + description + "IGMP NSR state"; + leaf state { + type uint8; + description + "NSR state"; + } + leaf partner-proc-connected { + type boolean; + description + "Partner process connected"; + } + leaf collab-conv-done { + type boolean; + description + "Collaborators convergence done"; + } + leaf rmf-notification-done { + type boolean; + description + "RMF Notification done"; + } + leaf last-proc { + type uint64; + description + "Time when process came up"; + } + leaf last-proc-connection-up { + type uint64; + description + "Time when process connection went up"; + } + leaf last-proc-connection-dn { + type uint64; + description + "Time when process connection went down"; + } + leaf last-rmf-ready { + type uint64; + description + "Time when RMF Rdy notif was sent"; + } + leaf last-rmf-not-ready { + type uint64; + description + "Time when RMF Not-Rdy notif was sent"; + } + leaf count-proc-connection-up { + type uint32; + description + "No. of times process connection went up"; + } + leaf count-proc-connection-dn { + type uint32; + description + "No. of times process connection went down"; + } + leaf count-rmf-ready { + type uint32; + description + "No. of times RMF Ready notif was sent"; + } + leaf count-rmf-not-ready { + type uint32; + description + "No. of times RMF Not Ready notif was sent"; + } + } + + grouping AMT-SUMMARY-BAG { + description + "AMT summary info"; + leaf anycast-prefix { + type inet:ipv4-address; + description + "Robustness variable"; + } + leaf prefix-length { + type uint32; + description + "Advertize AMT prefix length"; + } + leaf relay-address { + type inet:ipv4-address; + description + "Advertaisment for AMT Relay address"; + } + leaf mtu { + type uint32; + description + "AMT Tunnel MTU"; + } + leaf tos { + type uint32; + description + "Type Of Service value in AMT header"; + } + leaf ttl { + type uint32; + description + "Time To Live value in AMT header"; + } + leaf query-interval { + type uint32; + description + "AMT Query interval"; + } + leaf gateway-count { + type uint32; + description + "Number of AMT Gateway"; + } + leaf max-gateway { + type uint32; + description + "Maximum Gateway allowed"; + } + leaf tunnel-count { + type uint32; + description + "AMT Tunnel Count"; + } + leaf tunnel-configured-maximum { + type uint32; + description + "AMT Tunnel configured Maximum"; + } + leaf is-acl-configured { + type boolean; + description + "ACL configured under AMT"; + } + leaf is-gateway-simulation { + type boolean; + description + "AMT Gateway Simulation"; + } + leaf is-ou-of-resource { + type boolean; + description + "AMT Out Of Resource"; + } + } + + grouping IGMP-EDM-SSM-MAP-DETAIL-BAG { + description + "IGMP SSM Map Detail List"; + container map-info { + description + "Basic Map Info"; + uses IGMP-EDM-SSM-MAP-BAG; + } + leaf expiration-time { + type uint32; + units "second"; + description + "Expiration Time in Seconds"; + } + leaf response-pending { + type boolean; + description + "Response Pending"; + } + leaf query-interval { + type uint32; + description + "Query interval"; + } + leaf elapsed-time { + type uint64; + description + "Elapsed time"; + } + list sources { + description + "List of sources"; + uses IGMP-ADDRTYPE; + } + } + + grouping IGMP-EDM-IDB-SUMM-BAG { + description + "IGMP Interface DB summary"; + leaf interface-count { + type uint32; + description + "Interface Count"; + } + leaf configuration-count { + type uint32; + description + "Configuration count"; + } + } + + grouping IGMP-EDM-GROUPS-SUMMARY-BAG { + description + "IGMP group summary entry"; + leaf groutes { + type uint32; + description + "No. of (*,G) routes"; + } + leaf sg-routes { + type uint32; + description + "No. of (S,G) routes"; + } + leaf group-count { + type uint32; + description + "Current groups accepted"; + } + leaf is-low-memory { + type boolean; + description + "Node is running low on memory"; + } + } + + grouping IGMP-EDM-TRAFFIC-BAG { + description + "IGMP Traffic Counters bag"; + leaf elapsed-time { + type uint32; + description + "Running time for counters"; + } + leaf packets-in { + type uint32; + description + "Packets in"; + } + leaf packets-out { + type uint32; + description + "Packets out"; + } + leaf format-errors { + type uint32; + description + "Malformed packets in"; + } + leaf packet-manager-input-errors { + type uint32; + description + "Incoming Packet Manager packets dropped"; + } + leaf packet-manager-output-errors { + type uint32; + description + "Outgoing Packet Manager packets dropped"; + } + leaf checksum-errors { + type uint32; + description + "Checksum errors"; + } + leaf receive-socket-errors { + type uint32; + description + "Socket errors on reception"; + } + leaf socket-errors { + type uint32; + description + "Socket errors on send"; + } + leaf bad-scope-errors { + type uint32; + description + "BadScope errors"; + } + leaf auxillary-data-length-errors { + type uint32; + description + "AuxDataLen errors"; + } + leaf invalid-source-address-errors { + type uint32; + description + "Invalid Source Address errors"; + } + leaf no-socket-connection { + type uint32; + description + "Packets dropped since no socket connection"; + } + leaf miscellaneous-errors { + type uint32; + description + "Packets dropped for other reasons"; + } + leaf input-queries { + type uint32; + description + "Query packets in"; + } + leaf input-reports { + type uint32; + description + "Reports in"; + } + leaf input-leaves { + type uint32; + description + "Leaves in"; + } + leaf input-mtrace { + type uint32; + description + "Mtrace packets in"; + } + leaf input-dvmrp { + type uint32; + description + "DVMRP packets in"; + } + leaf dvmrp-alloc { + type uint32; + description + "DVMRP buffer allocations"; + } + leaf dvmrp-free { + type uint32; + description + "DVMRP freed buffers"; + } + leaf dvmrp-drop { + type uint32; + description + "DVMRP packets dropped"; + } + leaf input-pim { + type uint32; + description + "PIM packets in"; + } + leaf output-queries { + type uint32; + description + "Query packets out"; + } + leaf output-reports { + type uint32; + description + "Reports out"; + } + leaf output-leaves { + type uint32; + description + "Leaves out"; + } + leaf output-mtrace { + type uint32; + description + "Mtrace packets out"; + } + leaf output-dvmrp { + type uint32; + description + "DVMRP packets out"; + } + leaf output-pim { + type uint32; + description + "PIM packets out"; + } + leaf get-packet-failure { + type uint32; + description + "Packet get failed"; + } + leaf output-no-parent-interface-handle { + type uint32; + description + "Failures setting 2nd ifhandle"; + } + leaf input-no-idb { + type uint32; + description + "Packets received without idb"; + } + leaf input-no-vrf-in-idb { + type uint32; + description + "Packets received on idb without VRF"; + } + leaf input-disabled-idb { + type uint32; + description + "Packet received on disabled idb"; + } + leaf input-martian-address { + type uint32; + description + "Packets received with Martian Address"; + } + leaf input-no-assigned-vrf-id { + type uint32; + description + "Packets received with no assigned vrf id"; + } + leaf input-no-vrf-mtrace { + type uint32; + description + "mtrace packets with no vrf associated"; + } + leaf input-no-platform-support-mtrace { + type uint32; + description + "mtrace packets without platform support"; + } + leaf packet-allocated { + type uint32; + description + "Number of pak allocated by IGMP"; + } + leaf packet-freed { + type uint32; + description + "Number of pak freed by IGMP"; + } + } + + grouping IGMP-EDM-IDB-IFRS-BAG { + description + "IGMP IFRS interface entry"; + container igmp-interface-entry { + description + "IGMP interface entry"; + uses IGMP-EDM-IDB-BAG; + } + leaf join-group-count { + type uint32; + description + "Join group count"; + } + } + + grouping IGMP-GROUP-RANGE { + description + "IGMP Group-Map Range"; + container group-address-xr { + description + "Group address"; + uses IGMP-ADDRTYPE; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf protocol { + type Igmp-edm-protocol; + description + "Protocol"; + } + leaf is-stale { + type boolean; + description + "Is the entry stale"; + } + } + + grouping IGMP-EDM-I2Q-INTF-RATE-BAG { + description + "IGMP-QOS Interface Rate"; + container source-address { + description + "Source address"; + uses IGMP-ADDRTYPE; + } + container group-address { + description + "Group address"; + uses IGMP-ADDRTYPE; + } + leaf is-add { + type boolean; + description + "Is this a rate increment"; + } + leaf weight { + type uint32; + description + "Weight from policy"; + } + leaf received-time { + type uint64; + description + "Time this update is received"; + } + } + + grouping IGMP-EDM-I2Q-INTF-STATS-BAG { + description + "IGMP-QOS Interface Stats"; + leaf is-virtual-access { + type boolean; + description + "Is VirtualAccess Interface"; + } + leaf rate { + type uint32; + units "kbit/s"; + description + "Overall rate in Kbps"; + } + leaf rate-increments { + type uint32; + description + "Count of rate increments"; + } + leaf rate-decrements { + type uint32; + description + "Count of rate decrements"; + } + list update { + max-elements "5"; + description + "List of updates"; + uses IGMP-EDM-I2Q-INTF-RATE-BAG; + } + } + + grouping IGMP-EDM-GROUPS-HOST-BAG { + description + "IGMP Groups host entry"; + container address { + description + "Host Address"; + uses IGMP-ADDRTYPE; + } + leaf uptime { + type uint32; + units "second"; + description + "Uptime in seconds"; + } + leaf is-exclude { + type boolean; + description + "Exclude flag set"; + } + leaf expiration-time { + type uint32; + units "second"; + description + "Expiration time in seconds"; + } + leaf source-count { + type uint32; + description + "No. of sources in entry"; + } + list source-address { + max-elements "3"; + description + "First 3 source addresses"; + uses IGMP-ADDRTYPE; + } + } + + grouping IGMP-EDM-GROUPS-ET-BAG { + description + "IGMP group explicit-tracking entry"; + container group-info { + description + "Basic Group information"; + uses IGMP-EDM-GROUPS-BAG; + } + leaf include-hosts { + type uint32; + description + "No. of hosts who are included"; + } + leaf exclude-hosts { + type uint32; + description + "No. of hosts who are excluded"; + } + list host { + description + "List of hosts"; + uses IGMP-EDM-GROUPS-HOST-BAG; + } + } + + grouping IGMP-EDM-SSM-MAP-BAG { + description + "IGMP SSM Map List"; + container group-address-xr { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + leaf map-type { + type uint32; + description + "Map Type of group"; + } + leaf source-counts { + type uint32; + description + "Count of Sources"; + } + } + + grouping IGMP-EDM-NOT-ACTIVE-GROUP-BAG { + description + "IGMP Non active group"; + container group-address { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf interface { + type string { + length "0..65"; + } + description + "Interface Name"; + } + leaf reason-for-non-activity { + type string { + length "0..257"; + } + description + "Reason for group join not being processed"; + } + } + + grouping IGMP-EDM-NOT-ACTIVE-ALLGROUPS-BAG { + description + "IGMP Non active groups list"; + list non-active-groups { + description + "List of non-active groups"; + uses IGMP-EDM-NOT-ACTIVE-GROUP-BAG; + } + } + + grouping IGMP-EDM-GROUPS-SOURCE-BAG { + description + "IGMP Groups source entry"; + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiration-time { + type int32; + units "second"; + description + "Expiration time in seconds"; + } + leaf is-local { + type boolean; + description + "Is this a local source"; + } + leaf is-remote { + type boolean; + description + "Is this a remote source"; + } + leaf is-forward { + type boolean; + description + "Should we forward on this entry"; + } + leaf is-we-report { + type boolean; + description + "Should we report the source"; + } + leaf flags { + type int32; + description + "Source flags"; + } + leaf is-added { + type boolean; + description + "Joined"; + } + leaf is-evpn-remote { + type boolean; + description + "Route learnt through EVPN"; + } + } + + grouping IGMP-EDM-GROUPS-BAG { + description + "IGMP group entry"; + container group-address-xr { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + container last-reporter { + description + "Last reporter address"; + uses IGMP-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiration-time { + type int32; + units "second"; + description + "Expiration time in seconds"; + } + leaf explicit-tracking-enabled { + type boolean; + description + "Is explicit tracking enabled"; + } + leaf is-self-join { + type boolean; + description + "If local system is member of this group on this + interface"; + } + leaf row-status { + type string { + length "0..16"; + } + description + "interface on or off for the group"; + } + leaf is-low-memory { + type boolean; + description + "Node is running low on memory"; + } + leaf router-filter-mode { + type uint8; + description + "Filter mode"; + } + leaf older-host-version1-timer { + type uint32; + description + "IGMP Hostversion1timer"; + } + leaf older-host-version2-timer { + type uint32; + description + "IGMP Hostversion2timer"; + } + leaf is-added { + type boolean; + description + "Joined"; + } + leaf is-suppressed { + type boolean; + description + "Suppressed"; + } + leaf is-evpn-remote { + type boolean; + description + "EVPN remote flag"; + } + leaf is-evpn-stale { + type boolean; + description + "EVPN stale flag"; + } + } + + grouping IGMP-EDM-GROUPS-DETAIL-BAG { + description + "IGMP group detail entry"; + container group-info { + description + "Basic Group information"; + uses IGMP-EDM-GROUPS-BAG; + } + leaf is-router-exclude-mode { + type boolean; + description + "Group router filter mode"; + } + leaf is-host-exclude-mode { + type boolean; + description + "Group host filter mode"; + } + list source { + description + "List of sources"; + uses IGMP-EDM-GROUPS-SOURCE-BAG; + } + } + + grouping IGMP-ADDRTYPE { + description + "IGMP ADDRTYPE"; + leaf af-name { + type Igmp-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + } + + grouping IGMP-EDM-IDB-BAG { + description + "IGMP interface entry"; + container address { + description + "IP address"; + uses IGMP-ADDRTYPE; + } + container querier-address { + description + "Address of the Querier"; + uses IGMP-ADDRTYPE; + } + container subscriber-address { + description + "Address of subscriber"; + uses IGMP-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf state { + type Im-state; + description + "Interface state"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf is-interface-up { + type boolean; + description + "Is interface up"; + } + leaf is-ip-enabled { + type boolean; + description + "Is IP enabled"; + } + leaf is-router-enabled { + type boolean; + description + "Is Router functionality enabled"; + } + leaf is-multi-homing-enabled { + type boolean; + description + "Is Multihoming enabled"; + } + leaf is-multi-homing-stale { + type boolean; + description + "Is Multihoming Update stale"; + } + leaf igmp-version { + type uint8; + description + "IGMP Router version"; + } + leaf host-version { + type uint8; + description + "IGMP Host version"; + } + leaf query-interval { + type uint16; + units "second"; + description + "Query Interval value in seconds"; + } + leaf query-timeout { + type uint16; + description + "Query Timeout value"; + } + leaf query-maximum-response-time { + type uint16; + description + "Max Response Timeout value"; + } + leaf last-member-query-interval { + type uint16; + description + "Last Member Query Interval"; + } + leaf group-joins { + type uint32; + description + "No. of group joins"; + } + leaf group-leaves { + type uint32; + description + "No. of group leaves"; + } + leaf is-querier { + type boolean; + description + "Are we querier"; + } + leaf total-active-groups { + type uint32; + description + "Actual number of groups on interface"; + } + leaf robustness { + type uint32; + description + "Robustness Variable value"; + } + leaf proxy-interface { + type xr:Interface-name; + description + "Proxy interface index"; + } + leaf querier-uptime { + type uint16; + description + "Time since the last querier took over"; + } + leaf las-ll-registration-count { + type uint32; + description + "LAS reg count"; + } + leaf las-get-address-count { + type uint32; + description + "LAS get addr count"; + } + leaf las-update-count { + type uint32; + description + "LAS Update count"; + } + leaf las-ll-remove-update-count { + type uint32; + description + "LAS LL remove update count"; + } + leaf las-ll-add-update-count { + type uint32; + description + "LAS LL add update count"; + } + leaf las-null-update-count { + type uint32; + description + "LAS Null update count"; + } + leaf las-unregistration-count { + type uint32; + description + "LAS unreg count"; + } + leaf is-las-request { + type boolean; + description + "LAS req"; + } + leaf is-las-registered { + type boolean; + description + "LAS registered"; + } + leaf vrf-id { + type uint32; + description + "VRF id"; + } + leaf mte-vrf-id { + type uint32; + description + "MTE VRF id"; + } + leaf location { + type uint32; + description + "Location"; + } + leaf mtu { + type uint32; + description + "MTU"; + } + leaf vrf-state { + type uint32; + description + "Vrf State"; + } + leaf is-configurationverify { + type boolean; + description + "CFG verify"; + } + leaf configurationvrf-set { + type boolean; + description + "CFG vrf set"; + } + leaf configurationvrf-error { + type boolean; + description + "CFG vrf error"; + } + leaf configuration-mcast-vrf-set { + type boolean; + description + "Is mcast set"; + } + leaf configuration-mcast-vrf-error { + type boolean; + description + "Is mcast error"; + } + leaf is-im-state-registered { + type boolean; + description + "Im state registered"; + } + leaf is-subscriber { + type boolean; + description + "Subscriber interface"; + } + leaf subscriber-mode { + type uint32; + description + "Subscriber mode"; + } + leaf is-identity-present { + type boolean; + description + "Subscriber ID or Address available from AAA"; + } + leaf subscriber-id { + type string { + length "0..257"; + } + description + "ID string of subscriber"; + } + leaf parent-ifhandle { + type xr:Interface-name; + description + "Parent If Handle"; + } + leaf time-since-last-query-in-seconds { + type uint32; + description + "Time elapsed since last query"; + } + leaf time-since-last-report-in-seconds { + type uint32; + description + "Time elapsed since last report"; + } + leaf router-uptime-in-seconds { + type uint32; + description + "Uptime since router enabled event"; + } + leaf mte-tuple-count { + type uint32; + description + "MTE Tuple count"; + } + } + + grouping IGMP-EDM-INTF-SUMMARY-BAG { + description + "IGMP interface summary info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf group-limit { + type uint32; + description + "Maximum groups accepted per interface"; + } + leaf group-count { + type uint32; + description + "Current groups accepted per interface"; + } + leaf parent-ifhandle { + type xr:Interface-name; + description + "Parent if handle"; + } + leaf on-off { + type boolean; + description + "Enabled/Disabled"; + } + leaf time-since-last-query-in-seconds { + type uint32; + description + "Time elapsed since last query"; + } + leaf time-since-last-report-in-seconds { + type uint32; + description + "Time elapsed since last report"; + } + leaf router-uptime-in-seconds { + type uint32; + description + "Time elapsed since router enabled event"; + } + } + + grouping IGMP-EDM-SUMMARY-BAG { + description + "IGMP summary info"; + leaf robustness { + type uint32; + description + "Robustness variable"; + } + leaf group-limit { + type uint32; + description + "Maximum groups accepted"; + } + leaf group-count { + type uint32; + description + "Current groups accepted"; + } + leaf is-disabled { + type boolean; + description + "Is maximum enforcement disabled"; + } + leaf is-evpn-connection-up { + type boolean; + description + "Is EVPN connection up"; + } + leaf supported-interfaces { + type uint32; + description + "No. of supported interfaces"; + } + leaf unsupported-interfaces { + type uint32; + description + "No. of unsupported interfaces"; + } + leaf enabled-interface-count { + type uint32; + description + "No. of enabled interfaces"; + } + leaf disabled-interface-count { + type uint32; + description + "No. of disabled interfaces"; + } + leaf multi-homing-enabled-interfaces { + type uint32; + description + "No. of EVPN MH enabled interfaces"; + } + leaf tunnel-mte-config-count { + type uint32; + description + "No. of static group commands"; + } + leaf node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + leaf querier-number { + type uint32; + description + "Number of querier interfaces"; + } + list interface { + description + "Maximum and current groups accepted for each + interface"; + uses IGMP-EDM-INTF-SUMMARY-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper.yang new file mode 100644 index 000000000..73a3a313b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-igmp-oper.yang @@ -0,0 +1,489 @@ +module Cisco-IOS-XR-ipv4-igmp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-igmp-oper"; + prefix ipv4-igmp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-igmp-oper-sub1 { + revision-date 2022-09-21; + } + + 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-igmp package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-igmp-oper.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + mld: MLD operational data + igmp: IGMP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-21 { + description + "event-history ipv4_igmp.bag/ipv4_igmp_common_oper.sch show igmp missed-packet + 2022-08-23 + ts related changes"; + semver:module-version "3.0.0"; + } + revision 2021-05-17 { + description + "Added DVMRP packet counter tracking for malloc and free."; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Changes to IOS-XR IGMP oper"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmpssm-map { + type enumeration { + enum "static" { + value 0; + description + "Static"; + } + enum "dns" { + value 1; + description + "Dns"; + } + enum "all" { + value 2; + description + "All"; + } + } + description + "Igmpssm map"; + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF table Names"; + container summary { + description + "IGMP Summary Information"; + uses IGMP-EDM-SUMMARY-BAG; + } + container interface-state-ons { + description + "IGMP Interface state on"; + list interface-state-on { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + container detail-groups { + description + "IGMP Detail Group Database"; + list detail-group { + key "group-address interface-name source-address"; + description + "IGMP Detail Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source/Host Address"; + } + uses IGMP-EDM-GROUPS-DETAIL-BAG; + } + } + container non-active-groups { + description + "IGMP Non-Active Groups Information"; + uses IGMP-EDM-NOT-ACTIVE-ALLGROUPS-BAG; + } + container ssm-maps { + description + "SSM Map Table"; + list ssm-map { + key "ssm-map-type group-address"; + description + "SSM Map information"; + leaf ssm-map-type { + type Igmpssm-map; + description + "SSM Map Type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses IGMP-EDM-SSM-MAP-BAG; + } + } + container explicit-groups { + description + "IGMP Explicit Group Database"; + list explicit-group { + key "group-address interface-name source-address"; + description + "IGMP Explicit Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source/Host Address"; + } + uses IGMP-EDM-GROUPS-ET-BAG; + } + } + container interface-table { + description + "IGMP Interface specific Table"; + uses INTERFACE; + } + container interface-unicast-qos-adjusts { + description + "IGMP Interface Unicast-Qos-Adjust"; + list interface-unicast-qos-adjust { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-I2Q-INTF-STATS-BAG; + } + } + container ranges { + description + "Range table"; + list range { + key "group-address group-mask"; + description + "Range information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + leaf group-mask { + type uint32; + description + "Group Mask"; + } + uses IGMP-GROUP-RANGE; + } + } + container ifrs-interfaces { + description + "IGMP Interface specific"; + list ifrs-interface { + key "interface-name"; + description + "IGMP IFRS Interface"; + leaf interface-name { + type xr:Interface-name; + description + "IFRS Interface Name"; + } + uses IGMP-EDM-IDB-IFRS-BAG; + } + } + container traffic-counters { + description + "IGMP Message Traffic Counters"; + uses IGMP-EDM-TRAFFIC-BAG; + } + container groups { + description + "IGMP Group Database Table"; + list group { + key "group-address interface-name"; + description + "IGMP Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-GROUPS-BAG; + } + } + container group-summary { + description + "IGMP Groups Summary"; + uses IGMP-EDM-GROUPS-SUMMARY-BAG; + } + container ifrs-interface-summary { + description + "IGMP IFRS Interface summary"; + uses IGMP-EDM-IDB-SUMM-BAG; + } + container global-interface-table { + description + "IGMP Global Interface "; + uses INTERFACE; + } + container ssm-map-details { + description + "SSM Map Detail"; + list ssm-map-detail { + key "ssm-map-type group-address"; + description + "SSM Map Detail Table information"; + leaf ssm-map-type { + type Igmpssm-map; + description + "SSM Map Type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses IGMP-EDM-SSM-MAP-DETAIL-BAG; + } + } + container interface-state-offs { + description + "IGMP Interface state off"; + list interface-state-off { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + } + + grouping INTERFACE { + description + "Common node of interface-table, + global-interface-table"; + list interface { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container amt-summary { + description + "MRIB RouteDB Expiry Information"; + uses AMT-SUMMARY-BAG; + } + container nsr { + description + "NSR Information"; + uses IGMP-EDM-NSR-BAG; + } + container amt-gateways { + description + "Table containing AMT Gateway DataBase + information"; + list amt-gateway { + key "gateway-address port"; + description + "AMT Gateway DataBase information"; + leaf gateway-address { + type inet:ipv4-address-no-zone; + description + "Gateway Address"; + } + leaf port { + type uint32; + description + "Port"; + } + uses AMT-GW-BAG; + } + } + container unicast-qos-adjust-stats { + description + "IGMP Unicast-Qos-Adjust Statistics"; + uses IGMP-EDM-I2Q-STATS-BAG; + } + container bvi-statistics { + description + "IGMP BVI Stats"; + uses IGMP-EDM-BVI-STATS-BAG; + } + container missed-packets-table { + description + "Missed packets information"; + container missed-packets-membership-table { + description + "Missed packets membership information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-ssm-query-table { + description + "Missed packets ssm query information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-general-query-table { + description + "Missed packets general query information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-group-specific-table { + description + "Missed packets group specific information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + } + container nsf { + description + "NSF Information"; + uses IGMP-EDM-NSF-BAG; + } + } + } + + grouping ACTIVE { + description + "Common node of igmp, mld"; + container active { + description + "Active Process"; + uses VRF-TABLE; + uses PROCESS; + } + } + + grouping STANDBY { + description + "Common node of igmp, mld"; + container standby { + description + "Standby Process"; + uses VRF-TABLE; + uses PROCESS; + } + } + + container mld { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-igmp-oper.yang which will provide + the compatible functionalities. MLD operational + data"; + uses STANDBY; + uses ACTIVE; + } + container igmp { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-igmp-oper.yang which will provide + the compatible functionalities. IGMP operational + data"; + uses STANDBY; + uses ACTIVE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-cfg.yang new file mode 100644 index 000000000..725f67b99 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-cfg.yang @@ -0,0 +1,421 @@ +module Cisco-IOS-XR-ipv4-io-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-io-cfg"; + prefix ipv4-io-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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-io package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-25 { + description + "Added new leaf for primary and secondary address."; + semver:module-version "1.2.0"; + } + revision 2020-02-18 { + description + "Added new leaf icmp-unreach-disable."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-11 { + description + "DHCP IPv4 client to support options in cli."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Ipv4-reachable { + type enumeration { + enum "any" { + value 0; + description + "Source is reachable via any interface"; + } + enum "received" { + value 1; + description + "Source is reachable via interface on which + packet was received"; + } + } + description + "Ipv4 reachable"; + } + + typedef Ipv4-self-ping { + type enumeration { + enum "disabled" { + value 0; + description + "Doesn't allow router to ping itself"; + } + enum "enabled" { + value 1; + description + "Allow router to ping itself"; + } + } + description + "Ipv4 self ping"; + } + + typedef Ipv4-default-ping { + type enumeration { + enum "disabled" { + value 0; + description + "Default route is not allowed to match when + checking source address"; + } + enum "enabled" { + value 1; + description + "Allow default route to match when checking + source address"; + } + } + description + "Ipv4 default ping"; + } + + typedef Ipv4-interface-qppb { + type enumeration { + enum "ip-precedence" { + value 1; + description + "Enable IP precedence based QPPB"; + } + enum "qos-group" { + value 2; + description + "Enable QoS-group based QPPB"; + } + enum "both" { + value 3; + description + "Enable both IP precedence and QoS-group based + QPPB"; + } + } + description + "Ipv4 interface qppb"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv4-network { + description + "Interface IPv4 Network configuration data"; + container bgp-pa { + description + "Interface ipv4 bgp configuration"; + container input { + description + "Input"; + leaf source-accounting { + type boolean; + description + "BGP PA configuration on source"; + } + leaf destination-accounting { + type boolean; + description + "BGP PA configuration on destination"; + } + } + container output { + description + "Output"; + leaf source-accounting { + type boolean; + description + "BGP PA configuration on source"; + } + leaf destination-accounting { + type boolean; + description + "BGP PA configuration on destination"; + } + } + } + container verify { + description + "Enable Verify handling for this interface"; + leaf reachable { + type Ipv4-reachable; + description + "Source is reachable via any interface or + interface on which packet was received"; + } + leaf self-ping { + type Ipv4-self-ping; + description + "Allow router to ping itself (opens + vulnerability in verification)"; + } + leaf default-ping { + type Ipv4-default-ping; + description + "Allow default route to match when checking + source address"; + } + } + container bgp { + description + "Interface ipv4 bgp configuration"; + container qppb { + description + "Interface ipv4 bgp policy propagation + configuration"; + container input { + description + "Input"; + leaf source { + type Ipv4-interface-qppb; + description + "QPPB configuration on source"; + } + leaf destination { + type Ipv4-interface-qppb; + description + "QPPB configuration on destination"; + } + } + } + container flow-tag { + description + "Interface ipv4 bgp policy propagation flow tag + configuration"; + container flow-tag-input { + description + "Input"; + leaf source { + type boolean; + description + "FlowTag configuration on source"; + } + leaf destination { + type boolean; + description + "FlowTag configuration on destination"; + } + } + } + } + container addresses { + description + "Set the IP address of an interface"; + container secondaries { + description + "Specify a secondary address"; + list secondary { + key "address"; + description + "IP address and Mask"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Secondary IP address"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Netmask"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "RouteTag"; + } + leaf algorithm { + type uint32 { + range "128..255"; + } + description + "Algorithm"; + } + } + } + container primary { + presence "Indicates a primary node is configured."; + description + "IP address and Mask"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Netmask"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "RouteTag"; + } + leaf algorithm { + type uint32 { + range "128..255"; + } + description + "Algorithm"; + } + } + leaf unnumbered { + type xr:Interface-name; + description + "Enable IP processing without an explicit + address"; + } + leaf dhcp { + type empty; + description + "IPv4 address and Mask negotiated via DHCP"; + } + } + container helper-addresses { + description + "The set of IP destination addresses for UDP + broadcasts"; + list helper-address { + key "address vrf-name"; + description + "An IP destination addresses for UDP broadcasts"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IP destination address"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + leaf forwarding-enable { + type empty; + description + "IPv4 forwarding to get enabled on an interface"; + } + leaf icmp-unreach-disable { + type empty; + description + "Disable ICMP unreachable for Nullx interface"; + } + leaf icmp-mask-reply { + type empty; + description + "The flag for enabling sending of ICMP mask + reply messages"; + } + leaf tcp-mss-adjust-enable { + type empty; + description + "Enable TCP MSS Adjust on an interface"; + } + leaf ttl-propagate-disable { + type empty; + description + "Disable TTL propagate on an interface"; + } + leaf point-to-point { + type empty; + description + "Enable point-to-point handling for this + interface."; + } + leaf mtu { + type uint32 { + range "68..65535"; + } + description + "The IP Maximum Transmission Unit"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv4-network-forwarding { + description + "Interface IPv4 Network configuration data also + used for forwarding"; + leaf directed-broadcast { + type empty; + description + "Enable forwarding of directed broadcast"; + } + leaf unreachables { + type empty; + description + "Disable sending ICMP unreachables"; + } + leaf redirects { + type empty; + description + "Enable sending ICMP Redirect messages"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub1.yang new file mode 100644 index 000000000..4b8d830ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub1.yang @@ -0,0 +1,497 @@ +submodule Cisco-IOS-XR-ipv4-io-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-io-oper { + prefix Cisco-IOS-XR-ipv4-io-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-io package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-09 { + description + "Added few items in the bag related to ip address."; + semver:module-version "1.3.0"; + } + revision 2021-03-26 { + description + "Added few items in the bag."; + semver:module-version "1.2.0"; + } + revision 2019-10-01 { + description + "Updated brief and detail containers for node related interfaces."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2015-10-20 { + description + "this schema file has all the latest changes."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping IPV4-IO-ICMP-TRAFFIC { + description + "ICMP Traffic Information"; + leaf received { + type uint32; + description + "ICMP Received"; + } + leaf checksum-error { + type uint32; + description + "ICMP Checksum Errors"; + } + leaf unknown { + type uint32; + description + "ICMP Unknown"; + } + leaf output { + type uint32; + description + "ICMP Transmitted"; + } + leaf admin-unreachable-sent { + type uint32; + description + "ICMP Admin Unreachable Sent"; + } + leaf network-unreachable-sent { + type uint32; + description + "ICMP Network Unreachable Sent"; + } + leaf host-unreachable-sent { + type uint32; + description + "ICMP Host Unreachable Sent"; + } + leaf protocol-unreachable-sent { + type uint32; + description + "ICMP Protocol Unreachable Sent"; + } + leaf port-unreachable-sent { + type uint32; + description + "ICMP Port Unreachable Sent"; + } + leaf fragment-unreachable-sent { + type uint32; + description + "ICMP Fragment Unreachable Sent"; + } + leaf admin-unreachable-received { + type uint32; + description + "ICMP Recieved Admin Unreachable"; + } + leaf network-unreachable-received { + type uint32; + description + "ICMP Recieved Network Unreachable"; + } + leaf host-unreachable-received { + type uint32; + description + "ICMP Host Unreachable Received"; + } + leaf protocol-unreachable-received { + type uint32; + description + "ICMP protocol is unreachable"; + } + leaf port-unreachable-received { + type uint32; + description + "ICMP Port Unreachable Received"; + } + leaf fragment-unreachable-received { + type uint32; + description + "ICMP fragment is unreachable"; + } + leaf hopcount-sent { + type uint32; + description + "ICMP Hopcount Sent"; + } + leaf reassembly-sent { + type uint32; + description + "ICMP Reassembly Sent"; + } + leaf hopcount-received { + type uint32; + description + "ICMP Hopcount Received"; + } + leaf reassebly-received { + type uint32; + description + "ICMP Reassembly Received"; + } + leaf param-error-received { + type uint32; + description + "ICMP Parameter Error Received"; + } + leaf param-error-send { + type uint32; + description + "ICMP Parameter Error Sent"; + } + leaf echo-request-sent { + type uint32; + description + "ICMP Echo Request Sent"; + } + leaf echo-request-received { + type uint32; + description + "ICMP Echo Request Sent"; + } + leaf echo-reply-sent { + type uint32; + description + "ICMP Echo Reply Sent"; + } + leaf echo-reply-received { + type uint32; + description + "ICMP Echo Reply Received"; + } + leaf mask-request-sent { + type uint32; + description + "ICMP Mask Sent"; + } + leaf mask-request-received { + type uint32; + description + "ICMP Mask Received"; + } + leaf mask-reply-sent { + type uint32; + description + "ICMP Mask Sent"; + } + leaf mask-reply-received { + type uint32; + description + "ICMP Mask Received"; + } + leaf source-quench-received { + type uint32; + description + "ICMP Source Quench"; + } + leaf redirect-received { + type uint32; + description + "ICMP Redirect Received"; + } + leaf redirect-send { + type uint32; + description + "ICMP Redirect Sent"; + } + leaf timestamp-received { + type uint32; + description + "ICMP Timestamp Received"; + } + leaf timestamp-reply-received { + type uint32; + description + "ICMP Timestamp Reply Received"; + } + leaf router-advert-received { + type uint32; + description + "ICMP Router Advertisement Received"; + } + leaf router-solicit-received { + type uint32; + description + "ICMP Router Solicited Received"; + } + } + + grouping IPV4-IO-TRAFFIC { + description + "IP Traffic Information"; + leaf input-packets { + type uint32; + description + "Input packets for ipv4 io traffic"; + } + leaf received-packets { + type uint32; + description + "Ipv4 packets recieved for ipv4 io traffic"; + } + leaf format-errors { + type uint32; + description + "Format errors for ipv4 io traffic"; + } + leaf bad-hop-count { + type uint32; + description + "Bad Hop Count"; + } + leaf bad-source-address { + type uint32; + description + "Ipv4 source address for ipv4 io traffic is + corrupted"; + } + leaf bad-header { + type uint32; + description + "Bad Header"; + } + leaf no-protocol { + type uint32; + description + "Protocol is not present"; + } + leaf no-gateway { + type uint32; + description + "No Gateway"; + } + leaf reassemble-input { + type uint32; + description + "RaInput"; + } + leaf reassembled { + type uint32; + description + "Fragment reassembled"; + } + leaf reassemble-timeout { + type uint32; + description + "Timeout for fragment reassembly"; + } + leaf reassemble-max-drop { + type uint32; + description + "Reassembly Max Drop"; + } + leaf reassemble-failed { + type uint32; + description + "Failure observed during fragment reassembly"; + } + leaf options-present { + type uint32; + description + "Ipv4 options are present"; + } + leaf bad-option { + type uint32; + description + "Bad Option"; + } + leaf unknown-option { + type uint32; + description + "Option for Unknown"; + } + leaf bad-security-option { + type uint32; + description + "Option for Bad Security"; + } + leaf basic-security-option { + type uint32; + description + "Option for Basic Security"; + } + leaf extended-security-option { + type uint32; + description + "Security option is extended for ipv4 io traffic"; + } + leaf cipso-option { + type uint32; + description + "Option for cipso"; + } + leaf strict-source-route-option { + type uint32; + description + "Option for strict source route"; + } + leaf loose-source-route-option { + type uint32; + description + "Option for loose source route"; + } + leaf record-route-option { + type uint32; + description + "Option for record route"; + } + leaf sid-option { + type uint32; + description + "Option for SID"; + } + leaf timestamp-option { + type uint32; + description + "Option for time stamp"; + } + leaf router-alert-option { + type uint32; + description + "Option for router alert"; + } + leaf noop-option { + type uint32; + description + "Option for no operation"; + } + leaf end-option { + type uint32; + description + "Option to end"; + } + leaf packets-output { + type uint32; + description + "Ipv4 packets output for ipv4 io traffic"; + } + leaf packets-forwarded { + type uint32; + description + "Ipv4 packets are forwarded"; + } + leaf packets-fragmented { + type uint32; + description + "ipv4 packets are fragmented"; + } + leaf fragment-count { + type uint32; + description + "Count for fragments"; + } + leaf encapsulation-failed { + type uint32; + description + "Observed failure during encapsulation"; + } + leaf no-router { + type uint32; + description + "No Router"; + } + leaf packet-too-big { + type uint32; + description + "Size of packet is too big"; + } + leaf multicast-in { + type uint32; + description + "Recieved multicast packets"; + } + leaf multicast-out { + type uint32; + description + "Sent multicast packets"; + } + leaf broadcast-in { + type uint32; + description + "Recieved broadcast packets"; + } + leaf broadcast-out { + type uint32; + description + "Sent broadcast packets"; + } + leaf lisp-v4-encap { + type uint32; + description + "Lisp IPv4 encapped packets"; + } + leaf lisp-v4-decap { + type uint32; + description + "Lisp IPv4 decapped packets"; + } + leaf lisp-v6-encap { + type uint32; + description + "Lisp IPv6 encapped packets"; + } + leaf lisp-v6-decap { + type uint32; + description + "Lisp IPv6 decapped packets"; + } + leaf lisp-encap-error { + type uint32; + description + "Lisp encapsulation errors"; + } + leaf lisp-decap-error { + type uint32; + description + "Lisp decapsulation errors"; + } + } + + grouping IP-TRAFFIC { + description + "IP and ICMP Traffic Information"; + container ipv4-stats { + description + "IPv4 Network Stats"; + uses IPV4-IO-TRAFFIC; + } + container icmp-stats { + description + "ICMP Stats"; + uses IPV4-IO-ICMP-TRAFFIC; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub2.yang new file mode 100644 index 000000000..e640ebc82 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper-sub2.yang @@ -0,0 +1,665 @@ +submodule Cisco-IOS-XR-ipv4-io-oper-sub2 { + belongs-to Cisco-IOS-XR-ipv4-io-oper { + prefix Cisco-IOS-XR-ipv4-io-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-io package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-09 { + description + "Added few items in the bag related to ip address."; + semver:module-version "1.3.0"; + } + revision 2021-03-26 { + description + "Added few items in the bag."; + semver:module-version "1.2.0"; + } + revision 2019-10-01 { + description + "Updated brief and detail containers for node related interfaces."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2015-10-20 { + description + "this schema file has all the latest changes."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Ipv4-ma-oper-config { + type enumeration { + enum "ipv4-ma-oper-client-none" { + value 0; + description + "ipv4 ma oper client none"; + } + enum "ipv4-ma-oper-non-oc-client" { + value 1; + description + "ipv4 ma oper non oc client"; + } + enum "ipv4-ma-oper-oc-client" { + value 2; + description + "ipv4 ma oper oc client"; + } + } + description + "ipv4 client type"; + } + + typedef Rpf-mode { + type enumeration { + enum "strict" { + description + "Strict RPF"; + } + enum "loose" { + description + "Loose RPF"; + } + } + description + "Interface line states"; + } + + typedef Str { + type string; + description + "Str"; + } + + typedef Ipv4-ma-oper-line-state { + type enumeration { + enum "unknown" { + description + "Interface state is unknown"; + } + enum "shutdown" { + description + "Interface has been shutdown"; + } + enum "down" { + description + "Interface state is down"; + } + enum "up" { + description + "Interface state is up"; + } + } + description + "Interface line states"; + } + + grouping IF-SUMMARY { + description + "Count of assigned/unnumbered/unassigned + interfaces"; + leaf ip-assigned { + type uint32; + description + "Number of interfaces with explicit addresses"; + } + leaf ip-unnumbered { + type uint32; + description + "Number of unnumbered interfaces with explicit + addresses"; + } + leaf ip-unassigned { + type uint32; + description + "Number of unassigned interfaces with explicit + addresses"; + } + } + + grouping IPV4-IF-SUMMARY { + description + "Summary info of IP interfaces"; + container if-up-up { + description + "Number of interfaces (up,up)"; + uses IF-SUMMARY; + } + container if-up-down { + description + "Number of interfaces (up,down)"; + uses IF-SUMMARY; + } + container if-down-down { + description + "Number of interfaces (down,down)"; + uses IF-SUMMARY; + } + container if-shutdown-down { + description + "Number of interfaces (shutdown,down)"; + uses IF-SUMMARY; + } + leaf if-up-down-basecaps-up { + type uint32; + description + "Number of interfaces (up,down) with basecaps up"; + } + } + + grouping BGP-PA-DIR { + description + "BGP PA config for ingress/egress direction"; + leaf enable { + type boolean; + description + "Enable BGP PA for ingress/egress"; + } + leaf source { + type boolean; + description + "Enable source accouting"; + } + leaf destination { + type boolean; + description + "Enable destination accouting"; + } + } + + grouping BGP-PA-CONFIG { + description + "BGP PA config information"; + container input { + description + "BGP PA input config"; + uses BGP-PA-DIR; + } + container output { + description + "BGP PA output config"; + uses BGP-PA-DIR; + } + } + + grouping RPF-CONFIG { + description + "RPF config information"; + leaf enable { + type boolean; + description + "Enable RPF config"; + } + leaf allow-default-route { + type boolean; + description + "Allow Default Route for RPF config"; + } + leaf allow-self-ping { + type boolean; + description + "Allow Self Ping"; + } + leaf mode { + type Rpf-mode; + description + "RPF Mode (loose/strict)"; + } + } + + grouping HADDR-ARRAY { + description + "Helper Address List "; + list address-array { + description + "Helper address"; + leaf entry { + type inet:ipv4-address; + description + "Helper address"; + } + } + } + + grouping MULTI-ACL-CONFIG { + description + "Multi ACL config information"; + list inbound { + max-elements "5"; + description + "Inbound ACLs"; + leaf entry { + type Str; + description + "Inbound ACLs"; + } + } + list outbound { + max-elements "5"; + description + "Outbound ACLs"; + leaf entry { + type Str; + description + "Outbound ACLs"; + } + } + list common { + max-elements "5"; + description + "Common ACLs"; + leaf entry { + type Str; + description + "Common ACLs"; + } + } + } + + grouping ACL-CONFIG { + description + "ACL config information"; + leaf inbound { + type string; + description + "ACL applied to incoming packets"; + } + leaf outbound { + type string; + description + "ACL applied to outgoing packets"; + } + leaf common-in-bound { + type string; + description + "Common ACL applied to incoming packets"; + } + leaf common-out-bound { + type string; + description + "Common ACL applied to outgoing packets"; + } + } + + grouping IP-ADDR-NODE { + description + "List of IP Addresses "; + leaf address { + type inet:ipv4-address; + description + "Ipv4 address"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of address"; + } + leaf route-tag { + type uint32; + description + "Route Tag associated with this address (0 = no + tag)"; + } + leaf algorithm { + type uint32; + description + "Algorithm associated with address (0 - no algo)"; + } + } + + grouping MCAST-GROUP { + description + "MCast Group List "; + leaf group-address { + type inet:ipv4-address; + description + "Address of multicast group"; + } + } + + grouping IPV4-IF-DETAIL { + description + "Detailed Info of IP Interface"; + container acl { + description + "ACLs configured on the interface"; + uses ACL-CONFIG; + } + container multi-acl { + description + "Multi ACLs configured on the interface"; + uses MULTI-ACL-CONFIG; + } + container helper-address { + description + "Helper Addresses configured on the interface"; + uses HADDR-ARRAY; + } + container rpf { + description + "RPF config on the interface"; + uses RPF-CONFIG; + } + container bgp-pa { + description + "BGP PA config on the interface"; + uses BGP-PA-CONFIG; + } + leaf primary-address { + type inet:ipv4-address; + description + "Ipv4 primary address of the interface"; + } + leaf vrf-id { + type uint32; + description + "VRF ID of the interface"; + } + leaf line-state { + type Ipv4-ma-oper-line-state; + description + "Line state of the interface"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of primary address"; + } + leaf route-tag { + type uint32; + description + "Route tag associated with the primary address (0 + = no tag)"; + } + leaf algorithm { + type uint32; + description + "Algorithm associated with address (0 = no algo)"; + } + leaf mtu { + type uint32; + description + "IP MTU of the interface"; + } + leaf unreachable { + type boolean; + description + "Are ICMP unreachables sent on the interface?"; + } + leaf redirect { + type boolean; + description + "Are ICMP redirects sent on the interface?"; + } + leaf direct-broadcast { + type boolean; + description + "Are direct broadcasts sent on the interface?"; + } + leaf mask-reply { + type boolean; + description + "Are mask replies sent on the interface?"; + } + leaf rg-id-exists { + type boolean; + description + "Does ICCP RG ID exist on the interface?"; + } + leaf mlacp-active { + type boolean; + description + "Is mLACP state Active (valid if RG ID exists)"; + } + leaf unnumbered-interface-name { + type string; + description + "Name of referenced interface (valid if + unnumbered)"; + } + leaf next-unnumbered-interface-name { + type string; + description + "Name of interface which is also unnum to + same interface where this intf is unnumbered"; + } + leaf proxy-arp-disabled { + type boolean; + description + "Is Proxy ARP disabled on the interface?"; + } + leaf flow-tag-src { + type boolean; + description + "Is BGP Flow Tag Source is enable"; + } + leaf flow-tag-dst { + type boolean; + description + "Is BGP Flow Tag Destination is enable"; + } + leaf config-flags { + type uint16; + description + "IDB configuration flags"; + } + leaf oper-flags { + type uint64; + description + "IDB operational flags"; + } + leaf arm-flags { + type uint16; + description + "IP ARM operation flags"; + } + leaf state-recvd-frm-im { + type Ipv4-ma-oper-line-state; + description + "state as recieved + from IM"; + } + leaf cflct-address { + type inet:ipv4-address; + description + "Conflicated ipv4 address"; + } + leaf client-type { + type Ipv4-ma-oper-config; + description + "Client type for IDB"; + } + leaf is-or-event { + type boolean; + description + "Is OR event for IDB"; + } + leaf or-im-state { + type Im-state-enum; + description + "OR IM state type"; + } + leaf or-im-state-rcvd { + type Im-state-enum; + description + "Rcvd OR IM state type"; + } + leaf or-im-state-constraint { + type Im-state-enum; + description + "Rcvd OR IM constraint state type"; + } + leaf idb-pointer { + type uint64; + description + "idb pointer value"; + } + leaf sub-gw-address { + type inet:ipv4-address; + description + "secondary gateway address of the interface"; + } + leaf gw-prefix-length { + type uint32; + description + "Prefix length of gateway address"; + } + leaf gw-address-rcvd { + type boolean; + description + "Gateway address received"; + } + list multicast-group { + description + "Multicast groups joined on the interface"; + uses MCAST-GROUP; + } + list secondary-address { + description + "Secondary addresses on the interface"; + uses IP-ADDR-NODE; + } + } + + grouping IPV4-IF-BRIEF { + description + "Brief Summary of IP Interface"; + leaf primary-address { + type inet:ipv4-address; + description + "Ipv4 primary address of the interface"; + } + leaf vrf-id { + type uint32; + description + "VRF ID of the interface"; + } + leaf vrf-name { + type string; + description + "VRF name of the interface"; + } + leaf line-state { + type Ipv4-ma-oper-line-state; + description + "Line state of the interface"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper.yang new file mode 100644 index 000000000..3fc891360 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-io-oper.yang @@ -0,0 +1,203 @@ +module Cisco-IOS-XR-ipv4-io-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-io-oper"; + prefix ipv4-io-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-io-oper-sub2 { + revision-date 2021-12-09; + } + include Cisco-IOS-XR-ipv4-io-oper-sub1 { + revision-date 2021-12-09; + } + + 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-io package operational data. + + This module contains definitions + for the following management objects: + ipv4-network: IPv4 network operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-09 { + description + "Added few items in the bag related to ip address."; + semver:module-version "1.3.0"; + } + revision 2021-03-26 { + description + "Added few items in the bag."; + semver:module-version "1.2.0"; + } + revision 2019-10-01 { + description + "Updated brief and detail containers for node related interfaces."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2015-10-20 { + description + "this schema file has all the latest changes."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container ipv4-network { + config false; + description + "IPv4 network operational data"; + container nodes { + description + "Node-specific IPv4 network operational data"; + list node { + key "node-name"; + description + "IPv4 network operational data for a particular + node"; + container interface-data { + description + "IPv4 network operational interface data"; + container vrfs { + description + "VRF specific IPv4 network operational + interface data"; + list vrf { + key "vrf-name"; + description + "VRF name of an interface belong to"; + container briefs { + description + "Brief interface IPv4 network operational + data for a node"; + list brief { + key "interface-name"; + description + "Brief interface IPv4 network operational + data for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IPV4-IF-BRIEF; + } + } + container details { + description + "Detail interface IPv4 network operational + data for a node"; + list detail { + key "interface-name"; + description + "Detail interface IPv4 network operational + data for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IPV4-IF-DETAIL; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The VRF name"; + } + } + } + container summary { + description + "Summary of IPv4 network operational interface + data on a node"; + uses IPV4-IF-SUMMARY; + } + container interfaces { + description + "Interface names with VRF"; + list interface { + key "interface-name"; + description + "Interface names with VRF"; + container vrf-names { + description + "List of VRF on the interface"; + list vrf-name { + key "vrf-name"; + description + "VRF information on the interface"; + container detail-data { + description + "Detail IPv4 network operational data for + an interface"; + uses IPV4-IF-DETAIL; + } + container brief-data { + description + "Brief IPv4 network operational data for + an interface"; + uses IPV4-IF-BRIEF; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The VRF name"; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + } + container statistics { + description + "Statistical IPv4 network operational data for + a node"; + container traffic { + description + "Traffic statistics for a node"; + uses IP-TRAFFIC; + } + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-cfg.yang new file mode 100644 index 000000000..603e27415 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-cfg.yang @@ -0,0 +1,154 @@ +module Cisco-IOS-XR-ipv4-ma-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ma-cfg"; + prefix ipv4-ma-cfg; + + 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 ipv4-ma package configuration. + + This module contains definitions + for the following management objects: + ipv4-network-global: IPv4 network global configuration data + subscriber-pta: PTA Subscriber configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-25 { + description + "Enabled DHCP client support on physical interface."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Ipv4-qppb { + type enumeration { + enum "none" { + value 0; + description + "No QPPB configuration"; + } + enum "ip-prec" { + value 1; + description + "Enable ip-precedence based QPPB"; + } + enum "qos-grp" { + value 2; + description + "Enable qos-group based QPPB"; + } + enum "both" { + value 3; + description + "Enable both ip-precedence and qos-group based + QPPB"; + } + } + description + "Ipv4 qppb"; + } + + container ipv4-network-global { + description + "IPv4 network global configuration data"; + container unnumbered { + description + "Enable IPv4 processing without an explicit + address"; + container mpls { + description + "Configure MPLS routing protocol parameters"; + container te { + description + "IPv4 commands for MPLS Traffic Engineering"; + leaf interface { + type string; + description + "Enable IP processing without an explicit + address on MPLS Traffic-Eng"; + } + } + } + } + container qppb { + description + "QPPB"; + leaf source { + type Ipv4-qppb; + description + "QPPB configuration on source"; + } + leaf destination { + type Ipv4-qppb; + description + "QPPB configuration on destination"; + } + } + leaf source-route { + type boolean; + default "true"; + description + "The flag for enabling whether to process packets + with source routing header options"; + } + leaf reassemble-max-packets { + type uint32 { + range "1..50"; + } + units "percentage"; + description + "Percentage of total packets available in the + system"; + } + leaf reassemble-time-out { + type uint32 { + range "1..120"; + } + units "second"; + description + "Number of seconds a reassembly queue will hold + before timeout"; + } + } + container subscriber-pta { + description + "PTA Subscriber configuration"; + leaf tcp-mss-adjust { + type uint32 { + range "1280..1536"; + } + units "byte"; + description + "TCP MSS Adjust (bytes)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper-sub1.yang new file mode 100644 index 000000000..c904a2956 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper-sub1.yang @@ -0,0 +1,665 @@ +submodule Cisco-IOS-XR-ipv4-ma-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-ma-oper { + prefix Cisco-IOS-XR-ipv4-ma-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-ma package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-17 { + description + "Added few fields for oper."; + semver:module-version "1.2.0"; + } + revision 2021-03-26 { + description + "Added few bag fields."; + semver:module-version "1.1.0"; + } + revision 2019-10-25 { + description + "Updated description to few bag fields."; + semver:module-version "1.0.2"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-08-23 { + description + "IPV4 MA schema file has all the latest changes."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Ipv4-ma-oper-config { + type enumeration { + enum "ipv4-ma-oper-client-none" { + value 0; + description + "ipv4 ma oper client none"; + } + enum "ipv4-ma-oper-non-oc-client" { + value 1; + description + "ipv4 ma oper non oc client"; + } + enum "ipv4-ma-oper-oc-client" { + value 2; + description + "ipv4 ma oper oc client"; + } + } + description + "ipv4 client type"; + } + + typedef Rpf-mode { + type enumeration { + enum "strict" { + description + "Strict RPF"; + } + enum "loose" { + description + "Loose RPF"; + } + } + description + "Interface line states"; + } + + typedef Str { + type string; + description + "Str"; + } + + typedef Ipv4-ma-oper-line-state { + type enumeration { + enum "unknown" { + description + "Interface state is unknown"; + } + enum "shutdown" { + description + "Interface has been shutdown"; + } + enum "down" { + description + "Interface state is down"; + } + enum "up" { + description + "Interface state is up"; + } + } + description + "Interface line states"; + } + + grouping IF-SUMMARY { + description + "Count of assigned/unnumbered/unassigned + interfaces"; + leaf ip-assigned { + type uint32; + description + "Number of interfaces with explicit addresses"; + } + leaf ip-unnumbered { + type uint32; + description + "Number of unnumbered interfaces with explicit + addresses"; + } + leaf ip-unassigned { + type uint32; + description + "Number of unassigned interfaces with explicit + addresses"; + } + } + + grouping IPV4-IF-SUMMARY { + description + "Summary info of IP interfaces"; + container if-up-up { + description + "Number of interfaces (up,up)"; + uses IF-SUMMARY; + } + container if-up-down { + description + "Number of interfaces (up,down)"; + uses IF-SUMMARY; + } + container if-down-down { + description + "Number of interfaces (down,down)"; + uses IF-SUMMARY; + } + container if-shutdown-down { + description + "Number of interfaces (shutdown,down)"; + uses IF-SUMMARY; + } + leaf if-up-down-basecaps-up { + type uint32; + description + "Number of interfaces (up,down) with basecaps up"; + } + } + + grouping IPV4-IF-BRIEF { + description + "Brief Summary of IP Interface"; + leaf primary-address { + type inet:ipv4-address; + description + "Ipv4 primary address of the interface"; + } + leaf vrf-id { + type uint32; + description + "VRF ID of the interface"; + } + leaf vrf-name { + type string; + description + "VRF name of the interface"; + } + leaf line-state { + type Ipv4-ma-oper-line-state; + description + "Line state of the interface"; + } + } + + grouping BGP-PA-DIR { + description + "BGP PA config for ingress/egress direction"; + leaf enable { + type boolean; + description + "Enable BGP PA for ingress/egress"; + } + leaf source { + type boolean; + description + "Enable source accouting"; + } + leaf destination { + type boolean; + description + "Enable destination accouting"; + } + } + + grouping BGP-PA-CONFIG { + description + "BGP PA config information"; + container input { + description + "BGP PA input config"; + uses BGP-PA-DIR; + } + container output { + description + "BGP PA output config"; + uses BGP-PA-DIR; + } + } + + grouping RPF-CONFIG { + description + "RPF config information"; + leaf enable { + type boolean; + description + "Enable RPF config"; + } + leaf allow-default-route { + type boolean; + description + "Allow Default Route for RPF config"; + } + leaf allow-self-ping { + type boolean; + description + "Allow Self Ping"; + } + leaf mode { + type Rpf-mode; + description + "RPF Mode (loose/strict)"; + } + } + + grouping HADDR-ARRAY { + description + "Helper Address List "; + list address-array { + description + "Helper address"; + leaf entry { + type inet:ipv4-address; + description + "Helper address"; + } + } + } + + grouping MULTI-ACL-CONFIG { + description + "Multi ACL config information"; + list inbound { + max-elements "5"; + description + "Inbound ACLs"; + leaf entry { + type Str; + description + "Inbound ACLs"; + } + } + list outbound { + max-elements "5"; + description + "Outbound ACLs"; + leaf entry { + type Str; + description + "Outbound ACLs"; + } + } + list common { + max-elements "5"; + description + "Common ACLs"; + leaf entry { + type Str; + description + "Common ACLs"; + } + } + } + + grouping ACL-CONFIG { + description + "ACL config information"; + leaf inbound { + type string; + description + "ACL applied to incoming packets"; + } + leaf outbound { + type string; + description + "ACL applied to outgoing packets"; + } + leaf common-in-bound { + type string; + description + "Common ACL applied to incoming packets"; + } + leaf common-out-bound { + type string; + description + "Common ACL applied to outgoing packets"; + } + } + + grouping IP-ADDR-NODE { + description + "List of IP Addresses "; + leaf address { + type inet:ipv4-address; + description + "Ipv4 address"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of address"; + } + leaf route-tag { + type uint32; + description + "Route Tag associated with this address (0 = no + tag)"; + } + leaf algorithm { + type uint32; + description + "Algorithm associated with address (0 - no algo)"; + } + } + + grouping MCAST-GROUP { + description + "MCast Group List "; + leaf group-address { + type inet:ipv4-address; + description + "Address of multicast group"; + } + } + + grouping IPV4-IF-DETAIL { + description + "Detailed Info of IP Interface"; + container acl { + description + "ACLs configured on the interface"; + uses ACL-CONFIG; + } + container multi-acl { + description + "Multi ACLs configured on the interface"; + uses MULTI-ACL-CONFIG; + } + container helper-address { + description + "Helper Addresses configured on the interface"; + uses HADDR-ARRAY; + } + container rpf { + description + "RPF config on the interface"; + uses RPF-CONFIG; + } + container bgp-pa { + description + "BGP PA config on the interface"; + uses BGP-PA-CONFIG; + } + leaf primary-address { + type inet:ipv4-address; + description + "Ipv4 primary address of the interface"; + } + leaf vrf-id { + type uint32; + description + "VRF ID of the interface"; + } + leaf line-state { + type Ipv4-ma-oper-line-state; + description + "Line state of the interface"; + } + leaf prefix-length { + type uint32; + description + "Prefix length of primary address"; + } + leaf route-tag { + type uint32; + description + "Route tag associated with the primary address (0 + = no tag)"; + } + leaf algorithm { + type uint32; + description + "Algorithm associated with address (0 = no algo)"; + } + leaf mtu { + type uint32; + description + "IP MTU of the interface"; + } + leaf unreachable { + type boolean; + description + "Are ICMP unreachables sent on the interface?"; + } + leaf redirect { + type boolean; + description + "Are ICMP redirects sent on the interface?"; + } + leaf direct-broadcast { + type boolean; + description + "Are direct broadcasts sent on the interface?"; + } + leaf mask-reply { + type boolean; + description + "Are mask replies sent on the interface?"; + } + leaf rg-id-exists { + type boolean; + description + "Does ICCP RG ID exist on the interface?"; + } + leaf mlacp-active { + type boolean; + description + "Is mLACP state Active (valid if RG ID exists)"; + } + leaf unnumbered-interface-name { + type string; + description + "Name of referenced interface (valid if + unnumbered)"; + } + leaf next-unnumbered-interface-name { + type string; + description + "Name of interface which is also unnum to + same interface where this intf is unnumbered"; + } + leaf proxy-arp-disabled { + type boolean; + description + "Is Proxy ARP disabled on the interface?"; + } + leaf flow-tag-src { + type boolean; + description + "Is BGP Flow Tag Source is enable"; + } + leaf flow-tag-dst { + type boolean; + description + "Is BGP Flow Tag Destination is enable"; + } + leaf config-flags { + type uint16; + description + "IDB configuration flags"; + } + leaf oper-flags { + type uint64; + description + "IDB operational flags"; + } + leaf arm-flags { + type uint16; + description + "IP ARM operation flags"; + } + leaf state-recvd-frm-im { + type Ipv4-ma-oper-line-state; + description + "state as recieved + from IM"; + } + leaf cflct-address { + type inet:ipv4-address; + description + "Conflicated ipv4 address"; + } + leaf client-type { + type Ipv4-ma-oper-config; + description + "Client type for IDB"; + } + leaf is-or-event { + type boolean; + description + "Is OR event for IDB"; + } + leaf or-im-state { + type Im-state-enum; + description + "OR IM state type"; + } + leaf or-im-state-rcvd { + type Im-state-enum; + description + "Rcvd OR IM state type"; + } + leaf or-im-state-constraint { + type Im-state-enum; + description + "Rcvd OR IM constraint state type"; + } + leaf idb-pointer { + type uint64; + description + "idb pointer value"; + } + leaf sub-gw-address { + type inet:ipv4-address; + description + "secondary gateway address of the interface"; + } + leaf gw-prefix-length { + type uint32; + description + "Prefix length of gateway address"; + } + leaf gw-address-rcvd { + type boolean; + description + "Gateway address received"; + } + list multicast-group { + description + "Multicast groups joined on the interface"; + uses MCAST-GROUP; + } + list secondary-address { + description + "Secondary addresses on the interface"; + uses IP-ADDR-NODE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper.yang new file mode 100644 index 000000000..0317f7e47 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-oper.yang @@ -0,0 +1,119 @@ +module Cisco-IOS-XR-ipv4-ma-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ma-oper"; + prefix ipv4-ma-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ipv4-io-oper { + prefix a1; + } + include Cisco-IOS-XR-ipv4-ma-oper-sub1 { + revision-date 2021-08-17; + } + + 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-ma package operational data. + + This YANG module augments the + Cisco-IOS-XR-ipv4-io-oper + module with state data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-17 { + description + "Added few fields for oper."; + semver:module-version "1.2.0"; + } + revision 2021-03-26 { + description + "Added few bag fields."; + semver:module-version "1.1.0"; + } + revision 2019-10-25 { + description + "Updated description to few bag fields."; + semver:module-version "1.0.2"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-08-23 { + description + "IPV4 MA schema file has all the latest changes."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:ipv4-network" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-ipv4-io-oper'"; + container interfaces { + description + "IPv4 network operational interface data"; + list interface { + key "interface-name"; + description + "Interface names with VRF"; + container vrfs { + description + "List of VRF on the interface"; + list vrf { + key "vrf-name"; + description + "VRF information on the interface"; + container detail { + description + "Detail IPv4 network operational data for an + interface"; + uses IPV4-IF-DETAIL; + } + container brief { + description + "Brief IPv4 network operational data for an + interface"; + uses IPV4-IF-BRIEF; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The VRF name"; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-subscriber-cfg.yang new file mode 100644 index 000000000..4855659c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ma-subscriber-cfg.yang @@ -0,0 +1,119 @@ +module Cisco-IOS-XR-ipv4-ma-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ma-subscriber-cfg"; + prefix ipv4-ma-subscriber-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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-ma-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-11 { + description + "Atrribute added."; + semver:module-version "1.2.0"; + } + revision 2021-02-08 { + description + "Atrribute added."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping IPV4-NETWORK { + description + "Common node of ip-subscriber, ppp, + subscriber-service"; + container ipv4-network { + description + "Interface IPv4 Network configuration data"; + leaf unnumbered { + type string; + description + "Enable IP processing without an explicit + address"; + } + leaf sub-gw { + type string; + description + "Specify an IP address to be used as subscriber + IPv4 GW"; + } + leaf mtu { + type uint32 { + range "68..65535"; + } + units "byte"; + description + "The IP Maximum Transmission Unit"; + } + leaf unreachables { + type boolean; + default "false"; + description + "TRUE if enabled, FALSE if disabled"; + } + leaf rpf { + type boolean; + default "true"; + description + "TRUE if enabled, FALSE if disabled"; + } + } + } + + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV4-NETWORK; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV4-NETWORK; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV4-NETWORK; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-mfwd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-mfwd-cfg.yang new file mode 100644 index 000000000..e4056ec87 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-mfwd-cfg.yang @@ -0,0 +1,385 @@ +module Cisco-IOS-XR-ipv4-mfwd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-mfwd-cfg"; + prefix ipv4-mfwd-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ipv4-mfwd package configuration. + + This module contains definitions + for the following management objects: + mfwd: Multicast routing configuration + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-02 { + description + "IOS-XR MFWD TreeSID configuration"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2016-06-01 { + description + "Initial IOS-XR MFWD native model"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Accounting-mode { + type enumeration { + enum "enable" { + value 0; + description + "Enable per (S,G) accounting"; + } + enum "forward-only-enable" { + value 1; + description + "Enable per (S,G) forward-only accounting"; + } + } + description + "Accounting mode"; + } + + grouping MOFRR-LOSS-DETECTION-TIMER-CONFIG { + description + "Common node of ipv4, ipv6"; + leaf mofrr-loss-detection-timer-config { + type uint32 { + range "1..3600"; + } + description + "Mofrr Loss Detection timer value"; + } + } + + grouping INTERFACE-INHERITANCE-DISABLE { + description + "Common node of ipv4, ipv6"; + leaf interface-inheritance-disable { + type empty; + description + "Disable interface inheritance configuration"; + } + } + + grouping STATIC-RPF-RULE-TABLE { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + container static-rpf-rules { + description + "Configure a static RPF rule for a given prefix"; + list static-rpf-rule { + key "address prefix-mask"; + description + "RPF prefix address and mask"; + leaf address { + type inet:ip-address-no-zone; + description + "IP address of the RPF prefix"; + } + leaf prefix-mask { + type uint32 { + range "0..128"; + } + description + "Prefix mask of the RPF Prefix"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + mandatory true; + description + "Neighbor address of the RPF Prefix"; + } + leaf interface-name { + type xr:Interface-name; + mandatory true; + description + "The name of the RPF interface"; + } + } + } + } + + grouping FORWARDING-LATENCY { + description + "Common node of ipv4, ipv6"; + leaf forwarding-latency { + type uint32 { + range "5..500"; + } + units "millisecond"; + description + "Knob to delay traffic being forwarded on a route"; + } + } + + grouping STATIC-SR-POLICY-TABLE { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + container static-sr-policies { + description + "Configure a static Segment Routing Policy"; + list static-sr-policy { + key "sr-policy-name"; + description + "SR P2MP Policy for Multicast"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + " SRPolicy Name"; + } + leaf ingress { + type uint32; + description + "Ingress"; + } + leaf no-value { + type uint32; + description + "NoValue"; + } + leaf ip-addr { + type string; + description + "Ingress Address"; + } + } + } + } + + grouping LOG-TRAPS { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + leaf log-traps { + type empty; + description + "Enable logging trap event"; + } + } + + grouping MULTICAST-FORWARDING { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + leaf multicast-forwarding { + type empty; + description + "Enable IP multicast routing and forwarding"; + } + } + + grouping MOFRR-LOCKOUT-TIMER-CONFIG { + description + "Common node of ipv4, ipv6"; + leaf mofrr-lockout-timer-config { + type uint32 { + range "1..3600"; + } + description + "Mofrr Lockout timer value"; + } + } + + grouping INTERFACE-TABLE { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + container interfaces { + description + "Interface-level Configuration"; + list interface { + key "interface-name"; + description + "The name of the interface"; + leaf ttl-threshold { + type uint32 { + range "1..255"; + } + description + "TTL threshold for multicast packets"; + } + leaf enable-on-interface { + type boolean; + description + "Enable or disable IP multicast on the + interface"; + } + leaf boundary { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Boundary for administratively scoped multicast + addresses"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + + grouping ENABLE-ON-ALL-INTERFACES { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + leaf enable-on-all-interfaces { + type empty; + description + "Configure all interfaces for multicast routing + and forwarding"; + } + } + + grouping RATE-PER-ROUTE { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + leaf rate-per-route { + type empty; + description + "Enable per (S,G) rate calculation"; + } + } + + grouping ACCOUNTING { + description + "Common node of ipv4, ipv6, ipv4, ipv6"; + leaf accounting { + type Accounting-mode; + description + "Per-prefix accounting mode"; + } + } + + grouping MAXIMUM-CHECKING-DISABLE { + description + "Common node of ipv4, ipv6"; + leaf maximum-checking-disable { + type empty; + description + "Disable state limit maximum checking"; + } + } + + container mfwd { + description + "Multicast routing configuration"; + container default-context { + description + "Default Context"; + container ipv6 { + description + "IPV6 commands in the default context"; + uses ENABLE-ON-ALL-INTERFACES; + uses MAXIMUM-CHECKING-DISABLE; + uses STATIC-SR-POLICY-TABLE; + uses RATE-PER-ROUTE; + uses INTERFACE-INHERITANCE-DISABLE; + uses STATIC-RPF-RULE-TABLE; + uses MOFRR-LOCKOUT-TIMER-CONFIG; + uses FORWARDING-LATENCY; + uses MOFRR-LOSS-DETECTION-TIMER-CONFIG; + uses INTERFACE-TABLE; + uses MULTICAST-FORWARDING; + uses LOG-TRAPS; + uses ACCOUNTING; + } + container ipv4 { + description + "IPV4 commands in the default context"; + leaf out-of-memory-handling { + type empty; + description + "Enable out-of-memory handling"; + } + uses ENABLE-ON-ALL-INTERFACES; + uses MAXIMUM-CHECKING-DISABLE; + uses STATIC-SR-POLICY-TABLE; + uses RATE-PER-ROUTE; + uses INTERFACE-INHERITANCE-DISABLE; + uses STATIC-RPF-RULE-TABLE; + uses MOFRR-LOCKOUT-TIMER-CONFIG; + uses FORWARDING-LATENCY; + uses MOFRR-LOSS-DETECTION-TIMER-CONFIG; + uses INTERFACE-TABLE; + uses MULTICAST-FORWARDING; + uses LOG-TRAPS; + uses ACCOUNTING; + } + } + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF table names"; + container ipv6 { + description + "VRF table for IPV6 commands"; + uses ENABLE-ON-ALL-INTERFACES; + uses STATIC-SR-POLICY-TABLE; + uses RATE-PER-ROUTE; + uses STATIC-RPF-RULE-TABLE; + uses INTERFACE-TABLE; + uses MULTICAST-FORWARDING; + uses LOG-TRAPS; + uses ACCOUNTING; + } + container ipv4 { + description + "VRF table for IPV4 commands"; + uses ENABLE-ON-ALL-INTERFACES; + uses STATIC-SR-POLICY-TABLE; + uses RATE-PER-ROUTE; + uses STATIC-RPF-RULE-TABLE; + uses INTERFACE-TABLE; + uses MULTICAST-FORWARDING; + uses LOG-TRAPS; + uses ACCOUNTING; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-msdp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-msdp-cfg.yang new file mode 100644 index 000000000..3e1c40923 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-msdp-cfg.yang @@ -0,0 +1,396 @@ +module Cisco-IOS-XR-ipv4-msdp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-msdp-cfg"; + prefix ipv4-msdp-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ipv4-msdp package configuration. + + This module contains definitions + for the following management objects: + msdp: MSDP Configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Msdp-filter-type-vrf { + type enumeration { + enum "incoming" { + value 1; + description + "Incoming Mode"; + } + enum "outgoing" { + value 2; + description + "Outgoing Mode"; + } + } + description + "Msdp filter type vrf"; + } + + typedef Msdp-list-type-vrf { + type enumeration { + enum "list" { + value 3; + description + "List"; + } + enum "rp-list" { + value 4; + description + "RPList"; + } + } + description + "Msdp list type vrf"; + } + + grouping TTL-THRESHOLD { + description + "Common node of default-context, vrf, peer"; + leaf ttl-threshold { + type uint32 { + range "1..255"; + } + description + "Configure TTL Threshold for MSDP Peer"; + } + } + + grouping ORIGINATOR-ID { + description + "Common node of default-context, vrf"; + leaf originator-id { + type xr:Interface-name; + description + "Configure interface name used as originator ID"; + } + } + + grouping PEER-TABLE { + description + "Common node of default-context, vrf"; + container peers { + description + "Entering Peer Configuration"; + list peer { + key "peer-address"; + description + "Peer address"; + container remote-as { + presence "Indicates a remote-as node is configured."; + description + "Configure the remote AS of this peer"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "First half of ASN in asdot format or 0 in + asplain"; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "Second half of ASN in asdot format or + complete ASN in asplain"; + } + } + leaf shutdown { + type empty; + description + "MSDP Peer Shutdown"; + } + leaf description { + type string { + length "1..80"; + } + description + "Up to 80 characters describing this peer"; + } + leaf enable { + type empty; + description + "Enabling Peer Configuration"; + } + leaf max-sa { + type uint32 { + range "1..75000"; + } + description + "Maximum SA accepted from this peer"; + } + leaf nsr-down { + type empty; + description + "Disable NSR for the peer"; + } + leaf peer-password { + type xr:Proprietary-password; + description + "Configuration of password of peer"; + } + leaf mesh-group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Configure an MSDP mesh-group"; + } + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "Peer address"; + } + uses TTL-THRESHOLD; + uses KEEP-ALIVE; + uses CONNECT-SOURCE; + uses SA-FILTER-TABLE; + } + } + } + + grouping MAX-PEER-SA { + description + "Common node of default-context, vrf"; + leaf max-peer-sa { + type uint32 { + range "1..75000"; + } + description + "Configure inheritable MAX SA state for peers"; + } + } + + grouping KEEP-ALIVE { + description + "Common node of default-context, vrf, peer"; + container keep-alive { + presence "Indicates a keep-alive node is configured."; + description + "MSDP keep alive period"; + leaf keep-alive-period { + type uint32 { + range "1..60"; + } + units "second"; + mandatory true; + description + "Keep alive period in seconds"; + } + leaf peer-timeout-period { + type uint32 { + range "1..75"; + } + units "second"; + mandatory true; + description + "Peer timeout period in seconds"; + } + } + } + + grouping CONNECT-SOURCE { + description + "Common node of default-context, vrf, peer"; + leaf connect-source { + type xr:Interface-name; + description + "Configure interface name used for MSDP + connection"; + } + } + + grouping DEFAULT-PEER { + description + "Common node of default-context, vrf"; + leaf default-peer { + type inet:ipv4-address-no-zone; + description + "Configure default peers for the box"; + } + } + + grouping MAX-SA { + description + "Common node of default-context, vrf"; + leaf max-sa { + type uint32 { + range "1..75000"; + } + description + "Configure context's MAX SA state for the router"; + } + } + + grouping SA-FILTER-TABLE { + description + "Common node of default-context, vrf, peer"; + container sa-filters { + description + "Filter SA messages from peer"; + list sa-filter { + key "list filter-type"; + description + "SA-Filter incoming/outgoing list or RPlist"; + leaf list { + type Msdp-list-type-vrf; + description + "Src List/RP List"; + } + leaf filter-type { + type Msdp-filter-type-vrf; + description + "Incoming/Outgoing ACL"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access list name"; + } + } + } + } + + grouping CACHE-STATE { + description + "Common node of default-context, vrf"; + container cache-state { + description + "Configure this systems SA cache access-lists"; + leaf sa-holdtime { + type uint32 { + range "150..3600"; + } + units "second"; + default "150"; + description + "SA State Holdtime period"; + } + leaf list { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access list name"; + } + leaf rp-list { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Access-list for originating RP"; + } + } + } + + container msdp { + description + "MSDP Configuration"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF Name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + uses TTL-THRESHOLD; + uses MAX-PEER-SA; + uses DEFAULT-PEER; + uses ORIGINATOR-ID; + uses MAX-SA; + uses CACHE-STATE; + uses KEEP-ALIVE; + uses PEER-TABLE; + uses CONNECT-SOURCE; + uses SA-FILTER-TABLE; + } + } + container default-context { + description + "Default Context"; + uses TTL-THRESHOLD; + uses MAX-PEER-SA; + uses DEFAULT-PEER; + uses ORIGINATOR-ID; + uses MAX-SA; + uses CACHE-STATE; + uses KEEP-ALIVE; + uses PEER-TABLE; + uses CONNECT-SOURCE; + uses SA-FILTER-TABLE; + } + leaf global-max-sa { + type uint32 { + range "1..75000"; + } + description + "Configure the global MAX SA state for the router"; + } + leaf nsr-delay { + type uint32 { + range "5..90"; + } + units "second"; + description + "NSR-Ready delay period for MSDP Peer"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-act.yang new file mode 100644 index 000000000..6f808987e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-act.yang @@ -0,0 +1,307 @@ +module Cisco-IOS-XR-ipv4-ospf-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ospf-act"; + prefix ospf-act; + + 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 OSPF action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-13 { + description + "Added xr-task name ospf to restrict unlimited permission"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-09-14 { + description + "IOS XR 6.2.1 revision."; + } + + grouping OSPF-STAT-ATTRIBUTES { + description + "OSPF Stat Attributes"; + leaf process { + type empty; + description + "Reset OSPF process"; + } + leaf redistribution { + type empty; + description + "Clear OSPF route redistrbution"; + } + leaf route { + type empty; + description + "Clear OSPF route table"; + } + container stats { + description + "OSPF counters and statistics"; + leaf spf { + type empty; + description + "SPF statistics"; + } + leaf message-queue { + type empty; + description + "Message-queue statistics"; + } + container interface { + description + "OSPF interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "OSPF Interface name"; + } + } + container neighbor { + description + "Neighbor statistics per interface or neighbor id"; + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + container interface { + description + "OSPF Interface"; + leaf interface-name { + type xr:Interface-name; + description + "OSPF interface statistics"; + } + } + } + } + } + + rpc clear-ospf-routes { + description + "Clear OSPF route table"; + input { + container instance { + description + "Clear data from OSPF instance"; + leaf instance-identifier { + type string; + description + "OSPF process instance identifier"; + } + } + leaf route { + type empty; + mandatory true; + description + "Clear OSPF route table"; + } + } + } + rpc clear-ospf-redistribution { + description + "Clear OSPF route redistribution"; + input { + container instance { + description + "Clear data from OSPF instance"; + leaf instance-identifier { + type string; + description + "OSPF process instance identifier"; + } + } + leaf redistribution { + type empty; + mandatory true; + description + "Clear OSPF route redistribution"; + } + } + } + rpc clear-ospf-statistics { + description + "Clear OSPF counters and statistics"; + input { + container instance { + description + "Clear data from OSPF instance"; + leaf instance-identifier { + type string; + description + "OSPF process instance identifier"; + } + } + leaf all { + type empty; + description + "All OSPF counters and statistics"; + } + leaf message-queue { + type empty; + description + "Message-queue statistics"; + } + leaf spf { + type empty; + description + "SPF statistics"; + } + leaf neighbor { + type empty; + description + "Neighbor statistics per neighbor id"; + } + leaf interface-name { + type empty; + description + "OSPF interface statistics"; + } + } + } + rpc clear-ospf-statistics-neighbor { + description + "Clear OSPF neighbor statistics per interface or neighbor id"; + input { + container instance { + description + "Clear data from OSPF instance"; + leaf instance-identifier { + type string; + description + "OSPF process instance identifier"; + } + } + container neighbor { + description + "OSPF neighbor"; + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + rpc clear-ospf-statistics-interface { + description + "Clear OSPF interface statistics"; + input { + container instance { + description + "Clear data from OSPF instance"; + leaf instance-identifier { + type string; + description + "OSPF process instance identifier"; + } + } + container interface { + description + "OSPF interface"; + leaf interface-name { + type xr:Interface-name; + description + "OSPF interface statistics"; + } + } + } + } + rpc clear-ospf-process { + description + "Clear (reset) OSPF process"; + input { + container instance { + description + "Clear data from OSPF instance"; + leaf instance-identifier { + type string; + description + "OSPF process instance identifier"; + } + } + leaf process { + type empty; + mandatory true; + description + "Reset OSPF process"; + } + } + } + rpc clear-ospf-instance-vrf { + description + "Clear one or more non-default OSPF VRFs in process"; + input { + container instance { + description + "OSPF instance name"; + leaf instance-identifier { + type string; + mandatory true; + description + "OSPF process instance identifier"; + } + container vrf { + description + "Clear one or more non-default OSPF VRFs in process"; + leaf vrf-name { + type string; + description + "OSPF VRF name"; + } + uses OSPF-STAT-ATTRIBUTES; + } + container all { + description + "Clear all non-default OSPF VRFs"; + uses OSPF-STAT-ATTRIBUTES; + } + container all-inclusive { + description + "Clear all non-default and default OSPF VRFs"; + uses OSPF-STAT-ATTRIBUTES; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-cfg.yang new file mode 100644 index 000000000..dd8cdff84 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-cfg.yang @@ -0,0 +1,4481 @@ +module Cisco-IOS-XR-ipv4-ospf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ospf-cfg"; + prefix ipv4-ospf-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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-ospf package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-ospf-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + ospf: OSPF configuration data + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-09 { + description + "Added CLI to configure follow-on timer. + 2022-06-01 + Modified default values of BGP-LS area. + 2022-04-12 + Modified default values of BGP-LS instance. + 2022-03-05 + Added BGP-LS instance and area filter options. + 2021-10-29 + Added CLI to configure adjacency sid deletion delay. + 2021-10-05 + Added nodes to configure te metric for flex algo. + 2021-09-09 + Added CLI command to configure srlg exclude-any."; + semver:module-version "3.0.0"; + } + revision 2021-07-22 { + description + "Added option to disable LLS capability + 2021-05-12 + Added prefix-metric config to flex-algo"; + semver:module-version "2.1.0"; + } + revision 2020-10-12 { + description + "Added disable option for Delay Anomaly + 2020-10-12 + Added disable option for Delay Anomaly + 2020-09-16 + Added new command for per prefix load balancing + 2020-09-15 + Added new command for Delay Anomaly"; + semver:module-version "2.0.0"; + } + revision 2020-03-19 { + description + "Added new command for Delay Normalization + 2020-02-04 + Added new commands for Conditional Advertising"; + semver:module-version "1.2.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers. + 2019-08-13 + Fixed ordering issue of flex-algo advertise definition and affinity. + 2019-05-12 + Deprecated the native model, replaced by UM model."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-12 { + description + "Added Flex algo configuration"; + } + revision 2018-05-14 { + description + "Removed all start and running leaf nodes that are implicitly set with CLI"; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2017-07-14 { + description + "Trace buffer size added in yang xml request repsonse."; + } + revision 2017-06-09 { + description + "Datatype modified to Range for area id, distribute tag and prefix tag."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-02 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ospf-proc-frr-rlfa-tunnel { + type enumeration { + enum "none" { + value 0; + description + "Disabled"; + } + enum "mpls-ldp" { + value 1; + description + "MPLS LDP"; + } + } + description + "Ospf proc frr rlfa tunnel"; + } + + typedef Ospf-sub-address-family { + type enumeration { + enum "unicast" { + value 1; + description + "Unicast"; + } + } + description + "Ospf sub address family"; + } + + typedef Ospf-network { + type enumeration { + enum "broadcast" { + value 1; + description + "Broadcast"; + } + enum "non-broadcast" { + value 2; + description + "NonBroadcast"; + } + enum "point-to-point" { + value 3; + description + "Point to Point"; + } + enum "point-to-multipoint" { + value 4; + description + "Point to Multipoint"; + } + enum "non-broadcast-point-to-multipoint" { + value 5; + description + "NonBroadcast Point to Multipoint"; + } + } + description + "Ospf network"; + } + + typedef Ospf-fast-reroute-tiebreakers-intf { + type enumeration { + enum "downstream" { + value 0; + description + "Downstream"; + } + enum "line-card-disjoint" { + value 1; + description + "LC Disjoint"; + } + enum "lowest-metric" { + value 2; + description + "Lowest metric"; + } + enum "node-protect" { + value 3; + description + "Node protection"; + } + enum "primary-path" { + value 4; + description + "Primary path"; + } + enum "secondary-path" { + value 5; + description + "Secondar path"; + } + enum "srlg-disjoint" { + value 6; + description + "SRLG"; + } + enum "interface-disjoint" { + value 7; + description + "Intf Disjoint"; + } + } + description + "Ospf fast reroute tiebreakers intf"; + } + + typedef Ospf-authentication { + type enumeration { + enum "none" { + value 0; + description + "No Authentication"; + } + enum "plain" { + value 1; + description + "Plain Text Authentication"; + } + enum "md5" { + value 2; + description + "MD5 Message Digest"; + } + enum "keychain" { + value 3; + description + "Keychain Authentication"; + } + } + description + "Ospf authentication"; + } + + typedef Ospf-eigrp-route { + type enumeration { + enum "internal" { + value 0; + description + "EIGRP Internal Type"; + } + enum "external" { + value 1; + description + "EIGRP External Type"; + } + } + description + "Ospf eigrp route"; + } + + typedef Ospf-sid { + type enumeration { + enum "index" { + value 0; + description + "Index"; + } + enum "absolute" { + value 1; + description + "Absolute"; + } + } + description + "Ospf sid"; + } + + typedef Ospf-link-state-metric { + type enumeration { + enum "type1" { + value 1; + description + "Type 1 External"; + } + enum "type2" { + value 2; + description + "Type 2 External"; + } + } + description + "Ospf link state metric"; + } + + typedef Ospf-keychain-auth { + type enumeration { + enum "none" { + value 0; + description + "No Keychain Authentication"; + } + enum "keychain" { + value 3; + description + "Keychain Authentication"; + } + } + description + "Ospf keychain auth"; + } + + typedef Ospf-fast-reroute-tiebreakers { + type enumeration { + enum "downstream" { + value 0; + description + "Downstream"; + } + enum "line-card-disjoint" { + value 1; + description + "LC Disjoint"; + } + enum "lowest-metric" { + value 2; + description + "Lowest metric"; + } + enum "node-protect" { + value 3; + description + "Node protection"; + } + enum "primary-path" { + value 4; + description + "Primary path"; + } + enum "secondary-path" { + value 5; + description + "Secondar path"; + } + enum "srlg-disjoint" { + value 6; + description + "SRLG"; + } + enum "interface-disjoint" { + value 7; + description + "Intf Disjoint"; + } + } + description + "Ospf fast reroute tiebreakers"; + } + + typedef Ospf-uloop-avoidance { + type enumeration { + enum "protected" { + value 1; + description + "Protected prefixes only"; + } + enum "all" { + value 2; + description + "All prefixes"; + } + enum "segment-routing" { + value 3; + description + "Microloop avoidance using Segment Routing"; + } + } + description + "Ospf uloop avoidance"; + } + + typedef Ospf-shutdown { + type enumeration { + enum "full" { + value 1; + description + "Full graceful shutdown"; + } + enum "hostmode" { + value 2; + description + "Enter host only mode"; + } + enum "onreload" { + value 3; + description + "Full graceful shutdown post reload"; + } + } + description + "Ospf shutdown"; + } + + typedef Ospf-domain-id { + type enumeration { + enum "type0005" { + value 5; + description + "Type 0x0005"; + } + enum "type0105" { + value 261; + description + "Type 0x0105"; + } + enum "type0205" { + value 517; + description + "Type 0x0205"; + } + enum "type8005" { + value 32773; + description + "Type 0x8005"; + } + } + description + "Ospf domain id"; + } + + typedef Ospf-frr-rlfa-tunnel { + type enumeration { + enum "none" { + value 0; + description + "Disabled"; + } + enum "mpls-ldp" { + value 1; + description + "MPLS LDP"; + } + } + description + "Ospf frr rlfa tunnel"; + } + + typedef Ospf-log-adj { + type enumeration { + enum "brief" { + value 0; + description + "Limited output"; + } + enum "detail" { + value 1; + description + "Verbose output"; + } + enum "suppress" { + value 2; + description + "No output"; + } + } + description + "Ospf log adj"; + } + + typedef Ospf-fast-reroute { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "per-link" { + value 1; + description + "Per link"; + } + enum "per-prefix" { + value 2; + description + "Per prefix"; + } + } + description + "Ospf fast reroute"; + } + + typedef Ospf-penalty { + type enumeration { + enum "inc" { + value 0; + description + "increment"; + } + enum "mult" { + value 1; + description + "multiplier"; + } + enum "val" { + value 2; + description + "value"; + } + enum "disable" { + value 3; + description + "disable"; + } + } + description + "Ospf penalty"; + } + + typedef Ospf-cisco-nsf { + type enumeration { + enum "always" { + value 1; + description + "Do not require all neighbors to run NSF"; + } + enum "require-nsf-neighbors" { + value 2; + description + "Require all neighbors to run NSF"; + } + } + description + "Ospf cisco nsf"; + } + + typedef Ospf-proc-fast-reroute { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "per-link" { + value 1; + description + "Per link"; + } + enum "per-prefix" { + value 2; + description + "Per prefix"; + } + } + description + "Ospf proc fast reroute"; + } + + typedef Ospf-redist-lsa { + type enumeration { + enum "summary" { + value 3; + description + "Type 3 (summary) LSA"; + } + enum "external" { + value 5; + description + "Type 5 (external) LSA"; + } + } + description + "Ospf redist lsa"; + } + + typedef Ospf-dist-list-protocol { + type enumeration { + enum "all" { + value 0; + description + "Default"; + } + enum "connected" { + value 1; + description + "Connected Routes"; + } + enum "static" { + value 3; + description + "Static Routes"; + } + enum "bgp" { + value 4; + description + "BGP"; + } + enum "ospf" { + value 7; + description + "OSPF"; + } + enum "dagr" { + value 9; + description + "DAGR"; + } + } + description + "Ospf dist list protocol"; + } + + typedef Bfd-enable-mode { + type enumeration { + enum "disable" { + value 0; + description + "Disable Mode - Prevent inheritance"; + } + enum "default" { + value 1; + description + "Default Mode - Default BFD behavior"; + } + enum "strict" { + value 2; + description + "Strict Mode - Hold down adj until BFD sesion up"; + } + } + description + "Bfd enable mode"; + } + + typedef Ospf-flex-algo-metric { + type enumeration { + enum "delay" { + value 1; + description + "Delay"; + } + enum "te-metric" { + value 2; + description + "TE Metric"; + } + } + description + "Ospf flex algo metric"; + } + + typedef Ospf-segment-routing-forwarding { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "mpls" { + value 1; + description + "Mpls"; + } + } + description + "Ospf segment routing forwarding"; + } + + typedef Ospf-ietf-nsf { + type enumeration { + enum "all" { + value 3; + description + "Use IETF NSF in planned and unplanned cases"; + } + } + description + "Ospf ietf nsf"; + } + + typedef Nsr { + type enumeration { + enum "true" { + value 1; + description + "Enable non-stop routing"; + } + enum "false" { + value 2; + description + "Disable non-stop routing"; + } + } + description + "Nsr"; + } + + typedef Ospf-trace-buf-size { + type enumeration { + enum "size0" { + value 0; + description + "Disable trace"; + } + enum "size256" { + value 256; + description + "Buffer size 256"; + } + enum "size512" { + value 512; + description + "Buffer size 512"; + } + enum "size1024" { + value 1024; + description + "Buffer size 1024"; + } + enum "size2048" { + value 2048; + description + "Buffer size 2048"; + } + enum "size4096" { + value 4096; + description + "Buffer size 4096"; + } + enum "size8192" { + value 8192; + description + "Buffer size 8192"; + } + enum "size16384" { + value 16384; + description + "Buffer size 16384"; + } + enum "size32768" { + value 32768; + description + "Buffer size 32768"; + } + enum "size65536" { + value 65536; + description + "Buffer size 65536"; + } + } + description + "Ospf trace buf size"; + } + + typedef Ospf-redist-protocol { + type enumeration { + enum "all" { + value 0; + description + "Default"; + } + enum "connected" { + value 1; + description + "Connected Routes"; + } + enum "static" { + value 3; + description + "Static Routes"; + } + enum "bgp" { + value 4; + description + "BGP"; + } + enum "rip" { + value 5; + description + "RIP"; + } + enum "isis" { + value 6; + description + "ISIS"; + } + enum "ospf" { + value 7; + description + "OSPF"; + } + enum "eigrp" { + value 8; + description + "EIGRP"; + } + enum "dagr" { + value 9; + description + "DAGR"; + } + enum "subscriber" { + value 10; + description + "Subscriber Routes"; + } + enum "application" { + value 11; + description + "Application Routes"; + } + enum "mobile" { + value 12; + description + "Mobile Routes"; + } + } + description + "Ospf redist protocol"; + } + + typedef Ospf-route-level { + type enumeration { + enum "type1" { + value 1; + description + "Type 1 only"; + } + enum "type2" { + value 2; + description + "Type 2 only"; + } + enum "type1-and2" { + value 3; + description + "Both Type 1 and Type 2"; + } + } + description + "Ospf route level"; + } + + typedef Ospf-ietf-nsf-support { + type enumeration { + enum "never" { + value 0; + description + "Do not perform IETF NSF helper role"; + } + } + description + "Ospf ietf nsf support"; + } + + typedef Ospf-segment-routing { + type enumeration { + enum "disable" { + value 0; + description + "Disable"; + } + enum "mpls" { + value 1; + description + "Mpls"; + } + } + description + "Ospf segment routing"; + } + + typedef Ospf-address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4"; + } + } + description + "Ospf address family"; + } + + typedef Ospf-fast-reroute-priority { + type enumeration { + enum "critical" { + value 0; + description + "Critical"; + } + enum "high" { + value 2; + description + "High"; + } + enum "medium" { + value 4; + description + "Medium"; + } + enum "low" { + value 6; + description + "low"; + } + } + description + "Ospf fast reroute priority"; + } + + grouping COST-FALLBACK-ANAMOLY-DELAY-TE { + description + "Common node of process-scope, area-scope, + name-scope"; + container cost-fallback-anamoly-delay-te { + description + "Interface delay igp-metric fallback cost"; + leaf penalty-type { + type Ospf-penalty; + description + "Type of penalty"; + } + leaf value { + type uint32 { + range "1..65535"; + } + description + "Fallback cost of link"; + } + } + } + + grouping DISTANCE { + description + "Common node of default-vrf, vrf"; + container distance { + description + "Administrative distance configuration"; + container ospf-distance { + description + "OSPF distance configuration"; + leaf intra-area { + type uint32 { + range "1..255"; + } + default "110"; + description + "Distance for intra-area routes"; + } + leaf inter-area { + type uint32 { + range "1..255"; + } + default "110"; + description + "Distance for inter-area routes"; + } + leaf external-routes { + type uint32 { + range "1..255"; + } + default "110"; + description + "Distance for external type 5 and type 7 routes"; + } + } + container ip-distances { + description + "IP specific administrative distance + configuration"; + list ip-distance { + key "address wildcard"; + description + "Administrative distance configuration for a + particular IP address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IP source address"; + } + leaf wildcard { + type inet:ipv4-address-no-zone; + description + "IP wild card bits -- inverted mask"; + } + leaf distance { + type uint32 { + range "1..255"; + } + default "110"; + description + "Administrative distance"; + } + leaf access-list-name { + type string; + description + "Access Control List name"; + } + } + } + leaf admin-distance { + type uint32 { + range "1..255"; + } + default "110"; + description + "Define an administrative distance"; + } + } + } + + grouping MAX-METRIC { + description + "Common node of default-vrf, vrf"; + container max-metric { + description + "Set maximum metric configuration"; + container max-metric-on-proc-restart { + description + "Set maximum metric on-proc-restart + configuration"; + leaf wait-for-bgp { + type boolean; + default "false"; + description + "Let BGP decide when to originate router-LSA + with normal metric"; + } + leaf startup-max { + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time in seconds to originate router-LSA with + max-metric"; + } + leaf include-stub { + type boolean; + description + "Set maximum metric for stub links in + router-LSAs"; + } + leaf summary-lsa { + type boolean; + description + "Override summary-lsa metric with max-metric + value"; + } + leaf summary-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in summary-LSAs (default + 16711680)"; + } + leaf external-lsa { + type boolean; + description + "Override external-lsa metric with max-metric + value"; + } + leaf external-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in external-LSAs (default + 16711680)"; + } + } + container max-metric-on-startup { + description + "Set maximum metric on-startup configuration"; + leaf wait-for-bgp { + type boolean; + default "false"; + description + "Let BGP decide when to originate router-LSA + with normal metric"; + } + leaf startup-max { + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time in seconds to originate router-LSA with + max-metric"; + } + leaf include-stub { + type boolean; + description + "Set maximum metric for stub links in + router-LSAs"; + } + leaf summary-lsa { + type boolean; + description + "Override summary-lsa metric with max-metric + value"; + } + leaf summary-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in summary-LSAs (default + 16711680)"; + } + leaf external-lsa { + type boolean; + description + "Override external-lsa metric with max-metric + value"; + } + leaf external-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in external-LSAs (default + 16711680)"; + } + } + container max-metric-on-proc-migration { + description + "Set maximum metric on-proc-migration + configuration"; + leaf wait-for-bgp { + type boolean; + default "false"; + description + "Let BGP decide when to originate router-LSA + with normal metric"; + } + leaf startup-max { + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time in seconds to originate router-LSA with + max-metric"; + } + leaf include-stub { + type boolean; + description + "Set maximum metric for stub links in + router-LSAs"; + } + leaf summary-lsa { + type boolean; + description + "Override summary-lsa metric with max-metric + value"; + } + leaf summary-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in summary-LSAs (default + 16711680)"; + } + leaf external-lsa { + type boolean; + description + "Override external-lsa metric with max-metric + value"; + } + leaf external-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in external-LSAs (default + 16711680)"; + } + } + container max-metric-always { + description + "Set maximum metric always configuration"; + leaf include-stub { + type boolean; + default "false"; + description + "Set maximum metric for stub links in + router-LSAs"; + } + leaf summary-lsa { + type boolean; + description + "Override summary-lsa metric with max-metric + value"; + } + leaf summary-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in summary-LSAs (default + 16711680)"; + } + leaf external-lsa { + type boolean; + description + "Override external-lsa metric with max-metric + value"; + } + leaf external-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in external-LSAs (default + 16711680)"; + } + } + container max-metric-on-switchover { + description + "Set maximum metric on-switchover configuration"; + leaf wait-for-bgp { + type boolean; + default "false"; + description + "Let BGP decide when to originate router-LSA + with normal metric"; + } + leaf startup-max { + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time in seconds to originate router-LSA with + max-metric"; + } + leaf include-stub { + type boolean; + description + "Set maximum metric for stub links in + router-LSAs"; + } + leaf summary-lsa { + type boolean; + description + "Override summary-lsa metric with max-metric + value"; + } + leaf summary-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in summary-LSAs (default + 16711680)"; + } + leaf external-lsa { + type boolean; + description + "Override external-lsa metric with max-metric + value"; + } + leaf external-lsa-maximum-metric { + type uint32 { + range "1..16777215"; + } + description + "Overriding metric in external-LSAs (default + 16711680)"; + } + } + leaf max-metric-no-abr-off { + type empty; + description + "Block ABR-disable mode entry while in + max-metric mode"; + } + } + } + + grouping DEMAND-CIRCUIT { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf demand-circuit { + type boolean; + default "false"; + description + "Enable/Disable OSPF demand circuit"; + } + } + + grouping TE-METRIC-FLEX { + description + "Common node of name-scope, + multi-area-interface-scope"; + leaf te-metric-flex { + type uint32 { + range "1..2147483647"; + } + description + "Interface TE Metric for flex algo application"; + } + } + + grouping MAXIMUM-INTERFACES { + description + "Common node of default-vrf, vrf"; + leaf maximum-interfaces { + type uint32 { + range "1..4294967295"; + } + default "1024"; + description + "Max number of interfaces allowed to be + configured"; + } + } + + grouping EXCLUDE-INTERFACE-TABLE { + description + "Common node of per-link, per-prefix, ucmp"; + container exclude-interfaces { + description + "Fast-reroute per-link/per-prefix or UCMP exclude + interface configuration"; + list exclude-interface { + key "interface-name"; + description + "Exclude an interface from becoming a backup or + UCMP"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + + grouping IPV4-OSPF-FRR-CFG-EXCLUDE-INTERFACE-TABLE { + description + "Common node of per-link, per-prefix, ucmpCommon + node of per-link, per-prefix"; + container exclude-interfaces { + description + "Fast-reroute per-link/per-prefix or UCMP exclude + interface configuration"; + list exclude-interface { + key "interface-name"; + description + "Exclude an interface from becoming a backup or + UCMP"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + + grouping TRANSMIT-DELAY { + description + "Common node of process-scope, area-scope, + name-scope, virtual-link-scope, sham-link-scope, + multi-area-interface-scope"; + leaf transmit-delay { + type uint32 { + range "1..65535"; + } + units "second"; + default "1"; + description + "Number of seconds to delay transmission of LSAs"; + } + } + + grouping NO-OPAQUE { + description + "Common node of default-vrf, vrf"; + leaf no-opaque { + type empty; + description + "Disable opaque LSAs"; + } + } + + grouping COST-FALLBACK { + description + "Common node of process-scope, area-scope, + name-scope, multi-area-interface-scope"; + container cost-fallback { + description + "Interface fallback cost"; + leaf cost { + type uint32 { + range "1..65535"; + } + description + "Fallback cost of link"; + } + leaf threshold { + type uint32 { + range "1..4294967"; + } + description + "Bandwidth threshold"; + } + } + } + + grouping SEGMENT-ROUTING { + description + "Common node of process-scope, area"; + leaf segment-routing { + type Ospf-segment-routing; + description + "segment-routing configuration Applicable only in + Default VRF"; + } + } + + grouping SUMMARY-IN { + description + "Common node of process-scope, area"; + leaf summary-in { + type boolean; + description + "Enable/Disable an OSPF area to advertise + external prefixes into this area as summary"; + } + } + + grouping LDP-AUTO-CONFIG { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf ldp-auto-config { + type empty; + description + "Enable MPLS LDP Auto Config"; + } + } + + grouping PASSIVE { + description + "Common node of process-scope, area-scope, + name-scopeCommon node of process-scope, + area-scope, name-scope, + multi-area-interface-scope"; + leaf passive { + type boolean; + default "false"; + description + "When enabled, prevent sending HELLO packets over + link"; + } + } + + grouping AREA-TABLE { + description + "Common node of default-vrf, vrf"; + container area-addresses { + description + "Area configuration"; + + grouping AREA-CONTENT { + description + "AREA CONTENT"; + container virtual-link-scopes { + description + "Virtual Link scope configurations"; + list virtual-link-scope { + key "address"; + description + "Virtual Link configuration"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Router ID of virtual link neighbor"; + } + uses AUTHENTICATION; + uses HELLO-INTERVAL; + uses TRANSMIT-DELAY; + uses DEAD-INTERVAL-MINIMAL; + uses RETRANSMIT-INTERVAL; + } + } + container sham-link-scopes { + description + "Sham Link scope configurations"; + list sham-link-scope { + key "source-address destination-address"; + description + "Sham Link configuration"; + leaf source { + type inet:ipv4-address-no-zone; + description + "Address of the local sham-link endpoint. + Enter an IP Address"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Address of the local sham-link endpoint"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Address of the remote sham-link endpoint"; + } + uses COST; + uses AUTHENTICATION; + uses HELLO-INTERVAL; + uses TRANSMIT-DELAY; + uses DEAD-INTERVAL-MINIMAL; + uses RETRANSMIT-INTERVAL; + } + } + container area-scope { + description + "Area scope configuration"; + uses COST-FALLBACK-ANAMOLY-DELAY-TE; + uses DISTRIBUTE-LIST; + uses COST; + uses BFD; + uses WEIGHT; + uses PREFIX-SUPPRESSION-PRIMARY; + uses MTU-IGNORE; + uses AUTHENTICATION; + uses LDP-SYNC-IGP-SHORTCUTS; + uses LDP-AUTO-CONFIG; + uses SECURITY; + uses DELAY-NORM-INTERVAL; + uses NETWORK-TYPE; + uses HELLO-INTERVAL; + uses LOOPBACK-STUB-NETWORK; + uses PREFIX-SUPPRESSION-SECONDARY; + uses DEMAND-CIRCUIT; + uses PASSIVE; + uses TRANSMIT-DELAY; + uses PACKET-SIZE; + uses LDP-SYNC; + uses DATABASE-FILTER; + uses DEAD-INTERVAL-MINIMAL; + uses IPV4-OSPF-FRR-CFG-FAST-REROUTE; + uses LINK-DOWN-FAST-DETECT; + uses SEGMENT-ROUTING-FORWARDING; + uses RETRANSMIT-INTERVAL; + uses IPV4-OSPF-CFG-PRIORITY; + uses COST-FALLBACK-ANAMOLY-DELAY-IGP; + uses FLOOD-REDUCTION; + uses COST-FALLBACK; + } + container name-scopes { + description + "Name scope configurations"; + list name-scope { + key "interface-name"; + description + "Name scope configuration"; + container flex-algo-prefix-sids { + description + "Prefix SID"; + list flex-algo-prefix-sid { + key "flexalgo"; + description + "Flex-algo prefix sid configuration"; + leaf flexalgo { + type uint32 { + range "128..255"; + } + description + "Flexalgo value"; + } + leaf sid-value { + type uint32 { + range "0..1048575"; + } + mandatory true; + description + "SID value"; + } + leaf explicit-null { + type boolean; + default "false"; + description + "Force Penultimate Hop To Send + Explicit-Null Label"; + } + leaf type { + type Ospf-sid; + mandatory true; + description + "OSPF SID Type"; + } + leaf n-flag-clear { + type boolean; + default "false"; + description + "Not a node SID"; + } + } + } + container adjacency-sids { + description + "Configured Adjacency SID information"; + list adjacency-sid { + key "sid-type sid-value"; + description + "Configured Adjacency SID"; + leaf sid-type { + type Ospf-sid; + description + "OSPF Adj SID Type"; + } + leaf sid-value { + type uint32 { + range "0..1048575"; + } + description + "SID Value"; + } + leaf protected { + type boolean; + default "false"; + description + "Adj SID eligible for protection"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + default "0.0.0.0"; + description + "Neighbor IP address"; + } + } + } + container prefix-sid { + presence "Indicates a prefix-sid node is configured."; + description + "Prefix SID"; + leaf sid-value { + type uint32 { + range "0..1048575"; + } + mandatory true; + description + "SID value"; + } + leaf explicit-null { + type boolean; + default "false"; + description + "Force Penultimate Hop To Send Explicit-Null + Label"; + } + leaf type { + type Ospf-sid; + mandatory true; + description + "OSPF SID Type"; + } + leaf n-flag-clear { + type boolean; + default "false"; + description + "Not a node SID"; + } + } + container interface-affinities { + description + "Configure Flex-algo interface affinity"; + list interface-affinity { + key "attribute"; + description + "Configure interface affinity attribute"; + leaf attribute { + type xr:Cisco-ios-xr-string; + description + "attribute name"; + } + } + } + container prefix-sid-strict { + presence "Indicates a prefix-sid-strict node is configured."; + description + "Strict Prefix SID"; + leaf sid-value { + type uint32 { + range "0..1048575"; + } + mandatory true; + description + "SID value"; + } + leaf explicit-null { + type boolean; + default "false"; + description + "Force Penultimate Hop To Send Explicit-Null + Label"; + } + leaf type { + type Ospf-sid; + mandatory true; + description + "OSPF SID Type"; + } + leaf n-flag-clear { + type boolean; + default "false"; + description + "Not a node SID"; + } + } + leaf advertise-prefix-policy { + type string; + description + "Route policy name for Conditionally + advertising this prefix"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of Interface to configure"; + } + uses COST-FALLBACK-ANAMOLY-DELAY-TE; + uses DISTRIBUTE-LIST; + uses COST; + uses BFD; + uses WEIGHT; + uses PREFIX-SUPPRESSION-PRIMARY; + uses MTU-IGNORE; + uses AUTHENTICATION; + uses LDP-SYNC-IGP-SHORTCUTS; + uses LDP-AUTO-CONFIG; + uses TE-METRIC-FLEX; + uses SECURITY; + uses DELAY-NORM-INTERVAL; + uses NEIGHBOR-TABLE; + uses NETWORK-TYPE; + uses HELLO-INTERVAL; + uses LOOPBACK-STUB-NETWORK; + uses PREFIX-SUPPRESSION-SECONDARY; + uses DEMAND-CIRCUIT; + uses PASSIVE; + uses TRANSMIT-DELAY; + uses PACKET-SIZE; + uses LDP-SYNC; + uses DATABASE-FILTER; + uses DEAD-INTERVAL-MINIMAL; + uses IPV4-OSPF-FRR-CFG-FAST-REROUTE; + uses LINK-DOWN-FAST-DETECT; + uses SEGMENT-ROUTING-FORWARDING; + uses RETRANSMIT-INTERVAL; + uses IPV4-OSPF-CFG-PRIORITY; + uses COST-FALLBACK-ANAMOLY-DELAY-IGP; + uses FLOOD-REDUCTION; + uses COST-FALLBACK; + } + } + container multi-area-interface-scopes { + description + "Multi Area Interface scope configurations"; + list multi-area-interface-scope { + key "interface-name"; + description + "Multi Area Interface configuration"; + leaf interface-name { + type xr:Interface-name; + description + "Name of Multi Area Interface to configure"; + } + uses DISTRIBUTE-LIST; + uses COST; + uses MTU-IGNORE; + uses AUTHENTICATION; + uses TE-METRIC-FLEX; + uses DELAY-NORM-INTERVAL; + uses NEIGHBOR-TABLE; + uses HELLO-INTERVAL; + uses PASSIVE; + uses TRANSMIT-DELAY; + uses PACKET-SIZE; + uses DATABASE-FILTER; + uses DEAD-INTERVAL-MINIMAL; + uses IPV4-OSPF-FRR-CFG-FAST-REROUTE; + uses RETRANSMIT-INTERVAL; + uses COST-FALLBACK; + } + } + container area-ranges { + description + "Summarize routes matching address/mask (border + routers only)"; + list area-range { + key "address netmask"; + description + "Ordering index"; + leaf not-advertise { + type boolean; + description + "Do not advertise this range"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IP address to match"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "IP netmask for address"; + } + } + } + container nssa { + description + "Specify area as a NSSA area"; + leaf no-redistribution { + type boolean; + default "false"; + description + "No redistribution into this NSSA area"; + } + leaf default-info-originate { + type boolean; + default "false"; + description + "Originate Type 7 default into NSSA area"; + } + leaf no-summary { + type boolean; + default "false"; + description + "Do not send summary LSA into NSSA"; + } + leaf nssa-def-metric { + type uint32 { + range "1..16777214"; + } + description + "OSPF default metric"; + } + leaf metric-type { + type Ospf-link-state-metric; + default "type2"; + description + "OSPF External metric type"; + } + } + container distribute-link-state { + description + "Configure distribute link state filtering + options on OSPF area"; + leaf area-disable { + type boolean; + description + "Disable distribute link state in this area"; + } + leaf excl-nssa { + type boolean; + description + "Filter Type 7 LSA in this area"; + } + leaf excl-summary { + type boolean; + description + "Filter summary LSA in this area"; + } + } + leaf route-policy-in { + type string; + description + "Configure a route policy for inbound type-3 + lsa filtering"; + } + leaf default-cost { + type uint32 { + range "1..16777215"; + } + default "1"; + description + "Set the summary default-cost of a NSSA/stub + area"; + } + leaf route-policy-out { + type string; + description + "Configure a route policy for outbound type-3 + lsa filtering"; + } + leaf stub { + type boolean; + description + "Specify the area as a stub area (send summary + LSA stub area)"; + } + leaf type7-translate-always { + type boolean; + description + "Translate Type 7 to Type 5, even if not + elected NSSA translator"; + } + leaf mpls-traffic-eng { + type empty; + description + "Configure an OSPF area to run MPLS Traffic + Engineering"; + } + uses EXTERNAL-OUT; + uses SUMMARY-IN; + uses SEGMENT-ROUTING; + } + list area-address { + key "address"; + description + "Configuration for a particular area"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Area ID if in IP address format"; + } + uses AREA-CONTENT; + } + list area-area-id { + key "area-id"; + description + "Configuration for a particular area"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID if in integer format"; + } + uses AREA-CONTENT; + } + } + } + + grouping AUTO-COST { + description + "Common node of default-vrf, vrf"; + container auto-cost { + description + "Controls automatic cost based on bandwidth"; + leaf disable { + type boolean; + default "false"; + description + "Disabling auto costing"; + } + leaf bandwidth { + type uint32 { + range "1..4294967"; + } + units "Mbit/s"; + default "100"; + description + "The reference bandwidth in terms of Mbits per + second"; + } + } + } + + grouping TIMERS { + description + "Common node of default-vrf, vrf"; + container timers { + description + "Adjust routing timers"; + container spf-timer { + description + "OSPF SPF timers (in milliseconds)"; + leaf initial-delay { + type uint32 { + range "1..600000"; + } + units "millisecond"; + default "5000"; + description + "Number of milliseconds before first SPF run"; + } + leaf backoff-increment { + type uint32 { + range "1..600000"; + } + units "millisecond"; + default "10000"; + description + "Number of milliseconds delay between + successive SPF runs"; + } + leaf max-delay { + type uint32 { + range "1..600000"; + } + units "millisecond"; + default "10000"; + description + "Max number of milliseconds between consecutive + SPF calculations"; + } + } + container lsa-generation-timer { + description + "OSPF LSA timers (in milliseconds)"; + leaf initial-delay { + type uint32 { + range "0..600000"; + } + units "millisecond"; + default "50"; + description + "Number of milliseconds before generating first + LSA"; + } + leaf backoff-increment { + type uint32 { + range "1..600000"; + } + units "millisecond"; + default "200"; + description + "Number of milliseconds delay between + successive LSA builds"; + } + leaf max-delay { + type uint32 { + range "1..600000"; + } + units "millisecond"; + default "200"; + description + "Max number of milliseconds between consecutive + LSA builds "; + } + } + leaf lsa-pacing-flood { + type uint32 { + range "5..100"; + } + units "second"; + description + "Seconds between group of LSAs being refreshed + or maxaged"; + } + leaf fast-reroute-timer { + type uint32 { + range "50..600000"; + } + units "millisecond"; + default "500"; + description + "Number of ms between end of SPF and start of + IPFRR computation"; + } + leaf lsa-refresh { + type uint32 { + range "1800..2700"; + } + units "second"; + default "1800"; + description + "How often self-originated LSAs should be + refreshed"; + } + leaf lsa-group-pacing { + type uint32 { + range "10..1800"; + } + units "second"; + default "240"; + description + "LSA group pacing timer (Seconds between group + of LSAs being refreshed or maxaged)"; + } + leaf lsa-min-arrival { + type uint32 { + range "0..600000"; + } + units "millisecond"; + default "100"; + description + "MinLSArrival timer (minimum interval in + milliseconds between accepting the same LSA)"; + } + } + } + + grouping NETWORK-TYPE { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf network-type { + type Ospf-network; + description + "Type of attached network"; + } + } + + grouping LLS-DISABLE { + description + "Common node of default-vrf, vrf"; + leaf lls-disable { + type boolean; + description + "To disable LLS capability"; + } + } + + grouping WEIGHT { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf weight { + type uint32 { + range "1..16777214"; + } + description + "Interface weight"; + } + } + + grouping REDISTRIBUTION { + description + "Common node of default-vrf, vrf"; + container redistribution { + description + "Redistribute configurations"; + container redistributes { + description + "Redistribute information from another routing + protocol"; + list redistribute { + must "connected-or-static-or-dagr-or-subscriber-or-mobile-or-rip or application-or-isis-or-ospf or bgp or eigrp" { + description + "Connected-or-Static-or-DAGR-or-Subscriber-or-Mobile-or-RIP or Application-or-ISIS-or-OSPF or BGP or EIGRP must be present."; + } + key "protocol-name"; + description + "Redistribute information from another routing + protocol"; + + grouping REDISTRIBUTE-CONTENT { + description + "REDISTRIBUTE CONTENT"; + leaf classful { + type boolean; + default "false"; + description + "Disallow subnetting"; + } + leaf default-redistributed-route-metric { + type uint32 { + range "1..16777214"; + } + description + "Default metric for routes being + redistributed into OSPF"; + } + leaf tag { + type uint32 { + range "0..4294967295"; + } + description + "Set tag for routes redistributed into OSPF"; + } + leaf metric-type { + type Ospf-link-state-metric; + description + "Set OSPF External metric type"; + } + leaf eigrp-route-type { + type Ospf-eigrp-route; + description + "EIGRP route type"; + } + leaf isis-levels { + type Ospf-route-level; + description + "Levels of ISIS routes"; + } + leaf ospf-internal { + type boolean; + description + "OSPF_Internal route type"; + } + leaf ospf-external { + type Ospf-route-level; + description + "OSPF external route types"; + } + leaf ospf-nssa-level { + type Ospf-route-level; + description + "OSPF NSSA external route types"; + } + leaf route-policy-name { + type string; + description + "Routing policy name"; + } + leaf bgp-preserve-med { + type boolean; + description + "Preserve MED of BGP routes"; + } + leaf bgp-preserve-default-info { + type boolean; + description + "Preserve Metric and Metric Type of BGP + Default Route"; + } + leaf ospf-redist-lsa-type { + type Ospf-redist-lsa; + default "external"; + description + "LSA type for redistributed routes"; + } + leaf ospfnssa-only { + type boolean; + description + "Only redistribute to NSSA areas"; + } + leaf ospf-use-rib-metric { + type boolean; + description + "Use metric from RIB for redistributed routes"; + } + } + container connected-or-static-or-dagr-or-subscriber-or-mobile-or-rip { + when "../protocol-name = 'connected' or ../protocol-name = 'static' or ../protocol-name = 'dagr' or ../protocol-name = 'subscriber' or ../protocol-name = 'mobile' or ../protocol-name = 'rip'" { + description + "../ProtocolName = Connected or . + ./ProtocolName = Static or ../ProtocolName + = DAGR or ../ProtocolName = Subscriber or . + ./ProtocolName = Mobile or ../ProtocolName + = RIP"; + } + presence "Indicates that this node is configured."; + description + "connected or static or dagr or subscriber or + mobile or rip"; + uses REDISTRIBUTE-CONTENT; + } + leaf protocol-name { + type Ospf-redist-protocol; + description + "Distribute list protocol type"; + } + list application-or-isis-or-ospf { + when "../protocol-name = 'application' or ../protocol-name = 'isis' or ../protocol-name = 'ospf'" { + description + "../ProtocolName = Application or . + ./ProtocolName = ISIS or ../ProtocolName = + OSPF"; + } + key "instance-name"; + description + "application or isis or ospf"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OSPF or ISIS process name or protocol name: + bgp, eigrp, connected"; + } + uses REDISTRIBUTE-CONTENT; + } + list bgp { + when "../protocol-name = 'bgp'" { + description + "../ProtocolName = BGP"; + } + key "instance-name as-xx as-yy"; + description + "bgp"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OSPF or ISIS process name or protocol name: + bgp, eigrp, connected"; + } + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "First half of BGP AS number in XX.YY format. + Mandatory if Protocol is BGP and must not be + specified otherwise. Must be a non-zero + value if second half is zero."; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "Second half of BGP AS number in XX.YY format + . Mandatory if Protocol is BGP or EIGRP and + must not be specified otherwise. Must be a + non-zero value if first half is zero."; + } + uses REDISTRIBUTE-CONTENT; + } + list eigrp { + when "../protocol-name = 'eigrp'" { + description + "../ProtocolName = EIGRP"; + } + key "instance-name as-xx"; + description + "eigrp"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OSPF or ISIS process name or protocol name: + bgp, eigrp, connected"; + } + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "First half of BGP AS number in XX.YY format. + Mandatory if Protocol is BGP and must not be + specified otherwise. Must be a non-zero + value if second half is zero."; + } + uses REDISTRIBUTE-CONTENT; + } + } + } + } + } + + grouping EXTERNAL-OUT { + description + "Common node of process-scope, area"; + leaf external-out { + type boolean; + description + "Enable/Disable an OSPF area to advertise + intra-area prefixes out of this area as external"; + } + } + + grouping AF { + description + "Common node of default-vrf, vrf"; + container af { + presence "Indicates a af node is configured."; + description + "OSPF address family"; + leaf af-name { + type Ospf-address-family; + mandatory true; + description + "Address family"; + } + leaf saf-name { + type Ospf-sub-address-family; + description + "Sub-Address family"; + } + } + } + + grouping DEFAULT-INFORMATION { + description + "Common node of default-vrf, vrf"; + container default-information { + description + "Control distribution of default information"; + leaf always-advertise { + type boolean; + default "false"; + description + "Always advertise default route"; + } + leaf metric { + type uint32 { + range "1..16777214"; + } + default "1"; + description + "OSPF metric"; + } + leaf metric-type { + type Ospf-link-state-metric; + default "type2"; + description + "OSPF External metric type"; + } + leaf route-policy-name { + type string; + description + "Routing policy name"; + } + } + } + + grouping COST-FALLBACK-ANAMOLY-DELAY-IGP { + description + "Common node of process-scope, area-scope, + name-scope"; + container cost-fallback-anamoly-delay-igp { + description + "Interface delay igp-metric fallback cost"; + leaf penalty-type { + type Ospf-penalty; + description + "Type of penalty"; + } + leaf value { + type uint32 { + range "1..65535"; + } + description + "Fallback cost of link"; + } + } + } + + grouping PREFIX-SUPPRESSION-SECONDARY { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf prefix-suppression-secondary { + type boolean; + default "false"; + description + "Enable/Disable prefix suppression for secondary + addresses"; + } + } + + grouping MAXIMUM-PATHS { + description + "Common node of default-vrf, vrf"; + leaf maximum-paths { + type uint32 { + range "1..64"; + } + description + "Forward packets over multiple paths (number of + paths)"; + } + } + + grouping DATABASE-FILTER { + description + "Common node of process-scope, area-scope, + name-scope, multi-area-interface-scope"; + leaf database-filter { + type boolean; + default "false"; + description + "Filter OSPF LSA during synchronization and + flooding"; + } + } + + grouping LINK-DOWN-FAST-DETECT { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf link-down-fast-detect { + type boolean; + default "false"; + description + "Enable/Disable registration for early interface + down notifications"; + } + } + + grouping LDP-SYNC-IGP-SHORTCUTS { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf ldp-sync-igp-shortcuts { + type boolean; + description + "Enable/Disable MPLS LDP sync for igp-shortcuts"; + } + } + + grouping MICROLOOP { + description + "Common node of default-vrf, vrf"; + container microloop { + description + "Microloop configuration"; + container avoidance { + description + "Microloop avoidance configuration"; + leaf enable { + type Ospf-uloop-avoidance; + default "all"; + description + "MicroLoop avoidance feature enable + configuration"; + } + leaf rib-update-delay { + type uint32 { + range "1..600000"; + } + units "millisecond"; + default "5000"; + description + "Delay to introduce between SPF and RIB update + in msecs"; + } + } + } + } + + grouping DEAD-INTERVAL-MINIMAL { + description + "Common node of process-scope, area-scope, + name-scope, virtual-link-scope, sham-link-scope, + multi-area-interface-scope"; + container dead-interval-minimal { + description + "Interval after which a neighbor is declared dead"; + leaf interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval size in seconds after which a neighbor + is declared dead"; + } + leaf multiplier { + type uint32 { + range "3..20"; + } + description + "Number of Hellos in one second"; + } + } + } + + grouping CANDIDATE-INTERFACE-TABLE { + description + "Common node of per-link, per-prefix"; + container candidate-interfaces { + description + "Fast-reroute per-link/per-prefix candidate + interface configuration"; + list candidate-interface { + key "interface-name"; + description + "Candidate backup interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + + grouping IPV4-OSPF-FRR-CFG-CANDIDATE-INTERFACE-TABLE { + description + "Common node of per-link, per-prefixCommon node of + per-link, per-prefix"; + container candidate-interfaces { + description + "Fast-reroute per-link/per-prefix candidate + interface configuration"; + list candidate-interface { + key "interface-name"; + description + "Candidate backup interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + + grouping QUEUE { + description + "Common node of default-vrf, vrf"; + container queue { + description + "Adjust OSPF input queue sizes and processing + quantums"; + leaf dispatch-rate-limited-flush { + type uint32 { + range "30..3000"; + } + default "150"; + description + "Maximum number of continuous rate-limited LSAs + processed for FLUSH"; + } + leaf limit-high { + type uint32 { + range "1000..30000"; + } + default "9500"; + description + "Hello events are dropped when incoming event + queue exceeds this"; + } + leaf dispatch-spf-lsa-limit { + type uint32 { + range "30..3000"; + } + default "150"; + description + "Maximum number of continuous summary or + external LSAs processed"; + } + leaf limit-low { + type uint32 { + range "1000..30000"; + } + default "8000"; + description + "DBDs/Updates are dropped when incoming event + queue exceeds this"; + } + leaf dispatch-rate-limited { + type uint32 { + range "30..3000"; + } + default "150"; + description + "Maximum number of continuous rate-limited LSAs + processed"; + } + leaf limit-medium { + type uint32 { + range "1000..30000"; + } + default "9000"; + description + "LSA ACKs are dropped when incoming event queue + exceeds this"; + } + leaf dispatch-incoming { + type uint32 { + range "30..3000"; + } + default "300"; + description + "Maximum number of continuous incoming + packet-related events processed"; + } + } + } + + grouping AUTHENTICATION { + description + "Common node of process-scope, area-scope, + name-scope, virtual-link-scope, sham-link-scope, + multi-area-interface-scope"; + container authentication { + description + "Authentication"; + container type { + description + "Authentication type"; + leaf authen-type { + type Ospf-authentication; + description + "Authentication type code "; + } + leaf keychain-authen-type { + type Ospf-keychain-auth; + description + "Keychain authentication type"; + } + leaf keychain-name { + type string; + description + "Keychain name"; + } + } + container message-digest-keys { + description + "Message digest authentication password (key) + configurations, first 16 chars used"; + list message-digest-key { + key "key-id"; + description + "Message digest authentication password (key) + configuration"; + leaf key-id { + type uint32 { + range "1..255"; + } + description + "Key ID"; + } + leaf password { + type xr:Proprietary-password; + mandatory true; + description + "Password"; + } + } + } + leaf key { + type xr:Proprietary-password; + description + "Authentication key configuration"; + } + } + } + + grouping MAXIMUM-REDISTRIBUTE-PREFIX { + description + "Common node of default-vrf, vrf"; + container maximum-redistribute-prefix { + description + "Maximum number of prefixes redistributed into + OSPF"; + leaf number-of-prefixes { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of prefixes redistributed"; + } + leaf threshold { + type uint32 { + range "1..100"; + } + description + "Threshold value (%) at which to generate a + warning msg"; + } + leaf warning-only { + type boolean; + description + "Only give warning message when limit is + exceeded"; + } + } + } + + grouping SEGMENT-ROUTING-FORWARDING { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf segment-routing-forwarding { + type Ospf-segment-routing-forwarding; + description + "segment-routing forwarding configuration + Applicableonly in Default VRF"; + } + } + + grouping DISTRIBUTE-LIST { + description + "Common node of process-scope, area-scope, + name-scope, multi-area-interface-scope"; + container distribute-list { + presence "enable distribute-list"; + description + "Filter networks intalled to RIB (disable as ACL + name means filtering is disabled)"; + leaf access-list-name { + type string; + must "not(../route-policy-name)"; + description + "Access Control List name"; + } + leaf route-policy-name { + type string; + must "not(../access-list-name)"; + description + "Route Policy name"; + } + } + } + + grouping COST { + description + "Common node of process-scope, area-scope, + name-scope, multi-area-interface-scope, + sham-link-scope"; + leaf cost { + type uint32 { + range "1..65535"; + } + description + "Interface cost"; + } + } + + grouping PACKET-SIZE { + description + "Common node of process-scope, area-scope, + name-scope, multi-area-interface-scope"; + leaf packet-size { + type uint32 { + range "576..10000"; + } + description + "Customize size of OSPF packets upto MTU"; + } + } + + grouping FAST-REROUTE { + description + "Common node of default-vrf, vrf"; + container fast-reroute { + description + "Fast-reroute instance scoped parameters"; + container per-link { + description + "Fast-reroute per-link global configuration"; + uses PRIORITY; + } + container per-prefix { + description + "Fast-reroute per-prefix global configuration"; + container tiebreakers { + description + "Fast-reroute tiebreakers configurations"; + list tiebreaker { + key "tiebreaker-type"; + description + "Fast-reroute tiebreakers configuration"; + leaf tiebreaker-type { + type Ospf-fast-reroute-tiebreakers; + description + "Tiebreaker type"; + } + leaf tiebreaker-index { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Index value for a tiebreaker, 0 to disable"; + } + } + } + leaf weighted-srlg { + type empty; + description + "select SRLG protection mode (default: local)"; + } + leaf load-sharing-disable { + type empty; + description + "Disable load sharing between multiple backups"; + } + uses PRIORITY; + } + } + } + + grouping IPV4-OSPF-FRR-CFG-FAST-REROUTE { + description + "Common node of default-vrf, vrfCommon node of + area-scope, name-scope, + multi-area-interface-scope"; + container fast-reroute { + description + "Fast-reroute configuration"; + container per-link { + description + "Fast-reroute per-link configuration"; + uses FAST-REROUTE-USE-CANDIDATE-ONLY; + uses IPV4-OSPF-FRR-CFG-CANDIDATE-INTERFACE-TABLE; + uses IPV4-OSPF-FRR-CFG-EXCLUDE-INTERFACE-TABLE; + } + container per-prefix { + description + "Fast-reroute per-prefix global configuration"; + container remote-lfa { + description + "Remote LFA configuration"; + leaf tunnel { + type Ospf-frr-rlfa-tunnel; + description + "Enable/Disable remote LFA computation"; + } + leaf maximum-cost { + type uint32 { + range "1..4294967295"; + } + description + "Maximum path cost to remote LFA"; + } + } + container tiebreakers { + description + "Fast-reroute tiebreakers configurations"; + list tiebreaker { + key "tiebreaker-type"; + description + "Fast-reroute tiebreakers configuration"; + leaf tiebreaker-type { + type Ospf-fast-reroute-tiebreakers-intf; + description + "Tiebreaker type"; + } + leaf tiebreaker-index { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Index value for a tiebreaker, 0 to disable"; + } + } + } + leaf topology-independent-lfa { + type boolean; + description + "Topology Independet LFA configuration"; + } + uses FAST-REROUTE-USE-CANDIDATE-ONLY; + uses IPV4-OSPF-FRR-CFG-CANDIDATE-INTERFACE-TABLE; + uses IPV4-OSPF-FRR-CFG-EXCLUDE-INTERFACE-TABLE; + } + leaf fast-reroute-enable { + type Ospf-fast-reroute; + description + "Enable/Disable Fast-reroute per-link or + per-prefix"; + } + } + } + + grouping SUMMARY-PREFIX-TABLE { + description + "Common node of default-vrf, vrf"; + container summary-prefixes { + description + "Configure IP prefix summary"; + + grouping SUMMARY-PREFIX-CONTENT { + description + "Content grouping."; + leaf not-advertise { + type boolean; + default "false"; + description + "Do not advertise when translating OSPF type-7 + LSA"; + } + leaf tag { + type uint32 { + range "0..4294967295"; + } + description + "32-bit tag value"; + } + } + container summary-prefix-data { + description + "Data container."; + uses SUMMARY-PREFIX-CONTENT; + } + list prefix-and-netmask { + key "prefix netmask"; + description + "keys: prefix, netmask"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IP summary prefix"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "Summary netmask"; + } + uses SUMMARY-PREFIX-CONTENT; + } + list prefix { + key "prefix"; + description + "keys: prefix"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IP summary prefix"; + } + uses SUMMARY-PREFIX-CONTENT; + } + list netmask { + key "netmask"; + description + "keys: netmask"; + leaf netmask { + type inet:ipv4-address-no-zone; + description + "Summary netmask"; + } + uses SUMMARY-PREFIX-CONTENT; + } + } + } + + grouping SECURITY { + description + "Common node of process-scope, area-scope, + name-scope"; + container security { + description + "Container class for security related + configuration parameters"; + container ttl { + description + "Enabling turns on TTL security"; + leaf enable { + type boolean; + description + "Enable TTL security"; + } + leaf hop-count { + type uint32 { + range "1..254"; + } + description + "Hop count"; + } + } + } + } + + grouping HELLO-INTERVAL { + description + "Common node of process-scope, area-scope, + name-scope, virtual-link-scope, sham-link-scope, + multi-area-interface-scope"; + leaf hello-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval between HELLO packets in seconds"; + } + } + + grouping ADJACENCY-CHANGES { + description + "Common node of default-vrf, vrf"; + leaf adjacency-changes { + type Ospf-log-adj; + description + "Log changes in adjacency state"; + } + } + + grouping PROCESS-SCOPE { + description + "Common node of default-vrf, vrf"; + container process-scope { + description + "Process scope configuration"; + container srgb { + presence "Indicates a srgb node is configured."; + description + "Segment Routing Global Block configuration"; + leaf lower-bound { + type uint32 { + range "16000..1048575"; + } + mandatory true; + description + "The lower bound of the SRGB"; + } + leaf upper-bound { + type uint32 { + range "16000..1048575"; + } + mandatory true; + description + "The upper bound of the SRGB"; + } + } + container fast-reroute { + description + "Fast-reroute configuration"; + container per-link { + description + "Fast-reroute per-link configuration"; + uses CANDIDATE-INTERFACE-TABLE; + uses IPV4-OSPF-CFG-FAST-REROUTE-USE-CANDIDATE-ONLY; + uses EXCLUDE-INTERFACE-TABLE; + } + container per-prefix { + description + "Fast-reroute per-prefix configuration"; + container remote-lfa { + description + "Remote LFA configuration"; + leaf tunnel { + type Ospf-proc-frr-rlfa-tunnel; + description + "Enable/Disable remote LFA computation"; + } + leaf maximum-cost { + type uint32 { + range "1..4294967295"; + } + description + "Maximum path cost to remote LFA"; + } + } + leaf topology-independent-lfa { + type boolean; + description + "Topology Independet LFA configuration"; + } + uses CANDIDATE-INTERFACE-TABLE; + uses IPV4-OSPF-CFG-FAST-REROUTE-USE-CANDIDATE-ONLY; + uses EXCLUDE-INTERFACE-TABLE; + } + leaf fast-reroute-enable { + type Ospf-proc-fast-reroute; + description + "Enable/Disable Fast-reroute per-link or + per-prefix"; + } + } + uses COST-FALLBACK-ANAMOLY-DELAY-TE; + uses DISTRIBUTE-LIST; + uses COST; + uses BFD; + uses WEIGHT; + uses EXTERNAL-OUT; + uses PREFIX-SUPPRESSION-PRIMARY; + uses MTU-IGNORE; + uses AUTHENTICATION; + uses LDP-SYNC-IGP-SHORTCUTS; + uses LDP-AUTO-CONFIG; + uses SECURITY; + uses DELAY-NORM-INTERVAL; + uses SUMMARY-IN; + uses NETWORK-TYPE; + uses HELLO-INTERVAL; + uses LOOPBACK-STUB-NETWORK; + uses PREFIX-SUPPRESSION-SECONDARY; + uses DEMAND-CIRCUIT; + uses SEGMENT-ROUTING; + uses PASSIVE; + uses TRANSMIT-DELAY; + uses PACKET-SIZE; + uses LDP-SYNC; + uses DATABASE-FILTER; + uses DEAD-INTERVAL-MINIMAL; + uses LINK-DOWN-FAST-DETECT; + uses SEGMENT-ROUTING-FORWARDING; + uses RETRANSMIT-INTERVAL; + uses IPV4-OSPF-CFG-PRIORITY; + uses COST-FALLBACK-ANAMOLY-DELAY-IGP; + uses FLOOD-REDUCTION; + uses COST-FALLBACK; + } + } + + grouping UCMP { + description + "Common node of default-vrf, vrf"; + container ucmp { + description + "Unequal Cost Multi-ptah configuration"; + container enable { + description + "UCMP feature enable configuration"; + leaf variance { + type uint32 { + range "101..10000"; + } + default "200"; + description + "Value of variance"; + } + leaf prefix-list-name { + type string; + description + "Name of the Prefix List"; + } + } + leaf delay-interval { + type uint32 { + range "1..5000"; + } + units "millisecond"; + default "100"; + description + "Delay in msecs between primary SPF and UCMP + computation"; + } + uses EXCLUDE-INTERFACE-TABLE; + } + } + + grouping NSF { + description + "Common node of default-vrf, vrf"; + container nsf { + description + "Non Stop Forwarding configuration"; + leaf lifetime { + type uint32 { + range "90..1800"; + } + units "second"; + default "90"; + description + "Maximum route lifetime following restart in + seconds"; + } + leaf ietf { + type Ospf-ietf-nsf; + description + "Enable IETF Non Stop Forwarding"; + } + leaf ietf-support-role { + type Ospf-ietf-nsf-support; + description + "Disable helper support role for IETF Non Stop + Forwarding"; + } + leaf cisco { + type Ospf-cisco-nsf; + description + "Enable Cisco Non Stop Forwarding"; + } + leaf interval { + type uint32 { + range "90..3600"; + } + units "second"; + default "90"; + description + "Minimum interval between Non Stop Forwarding + restarts in seconds"; + } + leaf flush-delay-time { + type uint32 { + range "1..3600"; + } + units "second"; + default "60"; + description + "Maximum time allowed for external route + learning (seconds)"; + } + leaf ietf-strict-lsa-checking { + type empty; + description + "Enable Strict LSA checking of IETF NSF"; + } + } + } + + grouping PATHS-PER-PREFIX-DISTRIBUTION { + description + "Common node of default-vrf, vrfCommon node of + default-vrf, vrf"; + leaf paths-per-prefix-distribution { + type empty; + description + "Enable per prefix load balancing through + distribution of paths"; + } + } + + grouping MTU-IGNORE { + description + "Common node of process-scope, area-scope, + name-scope, multi-area-interface-scope"; + leaf mtu-ignore { + type boolean; + default "false"; + description + "Enable/Disable ignoring of MTU in DBD packets"; + } + } + + grouping APPLY-WEIGHT { + description + "Common node of default-vrf, vrf"; + container apply-weight { + presence "Indicates a apply-weight node is configured."; + description + "Apply weights feature enable configuration"; + leaf bandwidth { + type boolean; + mandatory true; + description + "Use interface bandwidth when calculating + weights"; + } + leaf reference-bandwidth { + type uint32 { + range "1..4294967"; + } + units "Mbit/s"; + default "100"; + description + "Reference bandwidth to use for calculation + (Mbits/sec)"; + } + leaf default-weight { + type uint32 { + range "1..16777214"; + } + default "1"; + description + "Default weight to use when weight not + configured under interface"; + } + } + } + + grouping FAST-REROUTE-USE-CANDIDATE-ONLY { + description + "Common node of per-link, per-prefix"; + leaf fast-reroute-use-candidate-only { + type boolean; + default "false"; + description + "Use only interfaces on the candidate list as a + backup path"; + } + } + + grouping IPV4-OSPF-CFG-FAST-REROUTE-USE-CANDIDATE-ONLY { + description + "Common node of per-link, per-prefixCommon node of + per-link, per-prefix"; + leaf fast-reroute-use-candidate-only { + type boolean; + default "false"; + description + "Use only interfaces on the candidate list as a + backup path"; + } + } + + grouping BFD { + description + "Common node of process-scope, area-scope, + name-scope"; + container bfd { + description + "BFD configuration"; + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval for BFD sessions created by OSPF"; + } + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detection multiplier for BFD sessions created + by OSPF"; + } + leaf fast-detect-mode { + type Bfd-enable-mode; + description + " use of Bidirectional Forwarding Detection"; + } + } + } + + grouping LOOPBACK-STUB-NETWORK { + description + "Common node of process-scope, area-scope, + name-scopeCommon node of process-scope, + area-scope, name-scope"; + leaf loopback-stub-network { + type boolean; + default "false"; + description + "Enable/Disable advertising loopback as a stub + network"; + } + } + + grouping PREFIX-SUPPRESSION-PRIMARY { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf prefix-suppression-primary { + type boolean; + default "false"; + description + "Enable/Disable prefix suppression for primary + addresses"; + } + } + + grouping FLOOD-REDUCTION { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf flood-reduction { + type boolean; + default "false"; + description + "Enable/Disable OSPF flood reduction"; + } + } + + grouping MAX-LSA { + description + "Common node of default-vrf, vrf"; + container max-lsa { + presence "Indicates a max-lsa node is configured."; + description + "Set max-lsa configuration"; + leaf max-lsa-limit { + type uint32 { + range "1..4294967294"; + } + mandatory true; + description + "Set maximum number of non self-generated LSAs"; + } + leaf max-lsa-threshold { + type uint32 { + range "1..100"; + } + description + "Set max-lsa threshold for generating a warning + message"; + } + leaf max-lsa-warning-only { + type boolean; + description + "Only give warning message when limit is + exceeded"; + } + leaf max-lsa-ignore-time { + type uint32 { + range "1..17895697"; + } + description + "Set time during which all adjacencies are + suppressed"; + } + leaf max-lsa-ignore-count { + type uint32 { + range "1..4294967294"; + } + description + "Set count on how many times adjacencies can be + suppressed"; + } + leaf max-lsa-reset-time { + type uint32 { + range "2..35791394"; + } + units "minute"; + description + "Set number of minutes after which ignore-count + is reset to zero"; + } + } + } + + grouping OUTGOING-ROUTE-UPDATE-TABLE { + description + "Common node of default-vrf, vrf"; + container outgoing-route-updates { + description + "Filter outgoing routing updates"; + list outgoing-route-update { + key "protocol-name"; + description + "Filter outgoing routing updates for a + particular protocol"; + leaf protocol-name { + type Ospf-dist-list-protocol; + description + "Distribute list protocol type"; + } + leaf access-list-name { + type string; + description + "Access Control List name"; + } + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "First half of BGP AS number in XX.YY format. + Mandatory if Protocol is BGP and must not be + specified otherwise. Must be a non-zero value + if second half is zero."; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "Second half of BGP AS number in XX.YY format. + Mandatory if Protocol is BGP and must not be + specified otherwise. Must be a non-zero value + if first half is zero."; + } + leaf ospf-process-name { + type string; + description + "OSPF process name"; + } + } + } + } + + grouping LDP-SYNC { + description + "Common node of process-scope, area-scope, + name-scope"; + leaf ldp-sync { + type boolean; + description + "Enable/Disable MPLS LDP sync"; + } + } + + grouping IGNORE-MOSPF { + description + "Common node of default-vrf, vrf"; + leaf ignore-mospf { + type empty; + description + "Ignore MOSPF (Type 6) LSAs"; + } + } + + grouping NEIGHBOR-TABLE { + description + "Common node of name-scope, + multi-area-interface-scope"; + container neighbors { + description + "Neighbor router configuration information"; + list neighbor { + key "neighbor-address"; + description + "Router configuration information for a + particular neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + leaf priority { + type uint32 { + range "0..255"; + } + default "0"; + description + "OSPF priority of non-broadcast neighbor"; + } + leaf poll-interval { + type uint32 { + range "0..65535"; + } + units "second"; + default "40"; + description + "OSPF dead router poll-interval in seconds"; + } + leaf cost { + type uint32 { + range "1..65535"; + } + default "1"; + description + "OSPF cost for point-to-multipoint neighbor"; + } + leaf database-filter { + type boolean; + default "false"; + description + "Database filter: Filter OSPF LSA during + synchronization and flooding for + point-to-multipoint"; + } + } + } + } + + grouping DELAY-NORM-INTERVAL { + description + "Common node of process-scope, area-scope, + name-scope, multi-area-interface-scope"; + container delay-norm-interval { + presence "Indicates a delay-norm-interval node is configured."; + description + "Interface delay normalization params"; + leaf delay-norm-interval { + type uint32 { + range "1..16777215"; + } + mandatory true; + description + "Delay Normalization Interval"; + } + leaf delay-norm-offset { + type uint32 { + range "0..16777215"; + } + mandatory true; + description + "Delay Normalization Offset"; + } + } + } + + grouping TYPE7 { + description + "Common node of default-vrf, vrf"; + leaf type7 { + type empty; + description + "Prefer type7 externals over type5"; + } + } + + grouping SPF-PREFIX-PRIORITY { + description + "Common node of default-vrf, vrf"; + leaf spf-prefix-priority { + type string; + description + "Configure a route-policy for prioritizing RIB + route install."; + } + } + + grouping SNMP-CONTEXT { + description + "Common node of default-vrf, vrf"; + leaf snmp-context { + type string; + description + "OSPF SNMP context configuration"; + } + } + + grouping ROUTER-ID { + description + "Common node of default-vrf, vrf"; + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Router ID for this OSPF process. Enter an IP + Address."; + } + } + + grouping ADJACENCY-STAGGER { + description + "Common node of default-vrf, vrfCommon node of + default-vrf, vrf"; + container adjacency-stagger { + description + "Staggering OSPF adjacency bring up"; + leaf disable { + type empty; + description + "Disable OSPF adjacency stagger"; + } + leaf initial-nbr { + type uint32 { + range "1..65535"; + } + default "2"; + description + "Adjacency Stagger: Initial number of neighbors + to bring up per area"; + } + leaf max-nbr { + type uint32 { + range "1..65535"; + } + default "64"; + description + "Adjacency Stagger: Subsequent simultaneous + number of neighbors to bring up"; + } + } + } + + grouping DEFAULT-METRIC { + description + "Common node of default-vrf, vrf"; + leaf default-metric { + type uint32 { + range "1..16777214"; + } + default "1"; + description + "Set default metric of redistributed routes"; + } + } + + grouping RETRANSMIT-INTERVAL { + description + "Common node of process-scope, area-scope, + name-scope, virtual-link-scope, sham-link-scope, + multi-area-interface-scope"; + leaf retransmit-interval { + type uint32 { + range "1..65535"; + } + units "second"; + default "5"; + description + "Time in seconds between retransmitting lost link + state advertisements"; + } + } + + grouping PRIORITY { + description + "Common node of per-link, per-prefix"; + leaf priority { + type Ospf-fast-reroute-priority; + description + "Fast-reroute per-link/per-prefix priority-limit + command"; + } + } + + grouping IPV4-OSPF-CFG-PRIORITY { + description + "Common node of per-link, per-prefixCommon node of + process-scope, area-scope, name-scope"; + leaf priority { + type uint32 { + range "0..255"; + } + default "1"; + description + "Router priority for DR and BDR election"; + } + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container ospf { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-ospf-cfg.yang which will + provide the compatible functionalities. + OSPF-MIB notification configuration"; + container lsa { + description + "SNMP notifications related to LSAs"; + leaf max-age-lsa { + type empty; + description + "Enable ospfMaxAgeLsa notification"; + } + leaf originate-lsa { + type empty; + description + "Enable ospfOriginateLsa notification"; + } + } + container state-change { + description + "SNMP notifications for OSPF state change"; + leaf interface { + type empty; + description + "Enable ospfIfStateChange notification"; + } + leaf virtual-interface { + type empty; + description + "Enable ospfVirtIfStateChange notification"; + } + leaf virtual-neighbor { + type empty; + description + "Enable ospfVirtNbrStateChange notification"; + } + leaf neighbor { + type empty; + description + "Enable ospfNbrStateChange notification"; + } + } + container retransmit { + description + "SNMP notifications for packet retransmissions"; + leaf virtual-packet { + type empty; + description + "Enable ospfVirtIfTxRetransmit notification"; + } + leaf packet { + type empty; + description + "Enable ospfTxRetransmit notification"; + } + } + container error { + description + "SNMP notifications for OSPF errors"; + leaf config-error { + type empty; + description + "Enable ospfIfConfigError notification"; + } + leaf authentication-failure { + type empty; + description + "Enable ospfIfAuthFailure notification"; + } + leaf virtual-config-error { + type empty; + description + "Enable ospfVirtIfConfigError notification"; + } + leaf virtual-authentication-failure { + type empty; + description + "Enable ospfVirtIfAuthFailure notification"; + } + leaf bad-packet { + type empty; + description + "Enable ospfIfRxBadPacket notification"; + } + leaf virtual-bad-packet { + type empty; + description + "Enable ospfVirtIfRxBadPacket notification"; + } + } + } + } + container ospf { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-ospf-cfg.yang which will + provide the compatible functionalities. OSPF + configuration data"; + container processes { + description + "Process related configuration"; + list process { + key "process-name"; + description + "Configuration for a particular OSPF process and + associated default VRF"; + container snmp { + description + "OSPF SNMP configuration"; + container trap-rate-limit { + presence "Indicates a trap-rate-limit node is configured."; + description + "Per OSPF process SNMP trap rate-limit"; + leaf window-size { + type uint32 { + range "2..60"; + } + mandatory true; + description + "Trap rate limit sliding window size"; + } + leaf max-window-traps { + type uint32 { + range "0..300"; + } + mandatory true; + description + "Max number of traps to send in window time"; + } + } + } + container distribute { + presence "enable distribute"; + description + "Enable distribution of link-state database + services"; + leaf throttle { + type uint32 { + range "1..3600"; + } + units "second"; + description + "Seconds"; + } + leaf instance-id { + type uint32 { + range "0..4294967295"; + } + description + "Instance ID"; + } + leaf excl-external { + type boolean; + description + "Filter advertisement of external prefixes"; + } + leaf route-policy-name { + type string; + description + "Route policy fordistribute link-state + filtering"; + } + leaf follow-on { + type uint32 { + range "1..3600"; + } + units "second"; + description + "Seconds"; + } + } + container vrfs { + description + "VRF related configuration"; + list vrf { + key "vrf-name"; + description + "Configuration for a particular OSPF vrf"; + container domain-id { + description + "OSPF Domain ID"; + container primary-domain-id { + description + "OSPF Primary domain ID"; + leaf domain-id-type { + type Ospf-domain-id; + description + "Primary domain ID type"; + } + leaf domain-id-name { + type string; + description + "Primary domain ID value"; + } + } + container secondary-domain-ids { + description + "Secondary domain ID Table"; + list secondary-domain-id { + key "domain-id-type domain-id-name"; + description + "OSPF Secondary domain ID"; + leaf domain-id-type { + type Ospf-domain-id; + description + "Secondary domain ID type"; + } + leaf domain-id-name { + type xr:Cisco-ios-xr-string; + description + "Secondary domain ID value"; + } + } + } + } + leaf snmp-trap-enabled { + type boolean; + default "false"; + description + "Enable/disable OSPF SNMP trap"; + } + leaf domain-tag { + type uint32 { + range "1..4294967295"; + } + description + "32 bit Domain tag value"; + } + leaf vrf-lite { + type empty; + description + "VRF lite capability"; + } + leaf disable-dn-bit-check { + type empty; + description + "Disable DN bit check"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name for this vrf"; + } + uses MICROLOOP; + uses IGNORE-MOSPF; + uses LLS-DISABLE; + uses MAXIMUM-REDISTRIBUTE-PREFIX; + uses DEFAULT-INFORMATION; + uses AF; + uses QUEUE; + uses ROUTER-ID; + uses TYPE7; + uses MAX-METRIC; + uses SNMP-CONTEXT; + uses MAXIMUM-INTERFACES; + uses NO-OPAQUE; + uses NSF; + uses PROCESS-SCOPE; + uses SPF-PREFIX-PRIORITY; + uses REDISTRIBUTION; + uses ADJACENCY-STAGGER; + uses MAX-LSA; + uses AUTO-COST; + uses UCMP; + uses APPLY-WEIGHT; + uses MAXIMUM-PATHS; + uses FAST-REROUTE; + uses SUMMARY-PREFIX-TABLE; + uses ADJACENCY-CHANGES; + uses OUTGOING-ROUTE-UPDATE-TABLE; + uses PATHS-PER-PREFIX-DISTRIBUTION; + uses DISTANCE; + uses AREA-TABLE; + uses TIMERS; + uses DEFAULT-METRIC; + } + } + container trace-bufs { + description + "Configuration to change size of trace buffer"; + list trace-buf { + key "trace-buf-name"; + description + "Changes the size of the specified trace + buffer"; + leaf trace-buf-name { + type xr:Cisco-ios-xr-string; + description + "Name for this trace buffer"; + } + leaf bufsize { + type Ospf-trace-buf-size; + mandatory true; + description + "Buffer size"; + } + } + } + container graceful-shutdown-timers { + description + "Adjust routing timers"; + leaf graceful-shutdown-retain-routes { + type uint32 { + range "0..90"; + } + units "second"; + default "5"; + description + "Time to keep OSPF routes active after + graceful shutdown(in seconds)"; + } + leaf graceful-shutdown-initial-delay { + type uint32 { + range "0..90"; + } + units "second"; + default "5"; + description + "Number of seconds to delay before beginning + graceful shutdown"; + } + } + container default-vrf { + description + "Default VRF related configuration"; + container monitor-convergence { + description + "Enable convergence monitoring"; + leaf enable { + type empty; + description + "Enable convergence monitoring"; + } + leaf prefix-list { + type string; + description + "Enable the monitoring of individual prefixes + (prefix list name)"; + } + leaf track-ip-frr { + type empty; + description + "Enable the Tracking of IP-Frr Convergence"; + } + leaf track-external-routes { + type empty; + description + "Enable the monitoring of External routes"; + } + leaf track-summary-routes { + type empty; + description + "Enable the monitoring of Summary routes"; + } + } + container flex-algos { + description + "Configured Flex-algo"; + list flex-algo { + key "flexalgo"; + description + "Flex-algo configuration"; + container affinity { + description + "Configuration for a particular Flex-algo + affinity"; + container include-all-attributes { + description + "Configuration for Flex-algo affinity + include all"; + list include-all-attribute { + key "attribute"; + description + "Configure include-all attribute"; + leaf attribute { + type xr:Cisco-ios-xr-string; + description + "attribute name"; + } + } + } + container include-any-attributes { + description + "Configuration for Flex-algo affinity + include any"; + list include-any-attribute { + key "attribute"; + description + "Configure include-any attribute"; + leaf attribute { + type xr:Cisco-ios-xr-string; + description + "attribute name"; + } + } + } + container exclude-any-attributes { + description + "Configuration for Flex-algo affinity + exclude any"; + list exclude-any-attribute { + key "attribute"; + description + "Configure exclude-any attribute"; + leaf attribute { + type xr:Cisco-ios-xr-string; + description + "attribute name"; + } + } + } + } + container srlg-exclude-any-attributes { + description + "Configuration for a particular Flex-algo + srlg excludeany"; + list srlg-exclude-any-attribute { + key "srlgname"; + description + "Configure srlg exclude-any name"; + leaf srlgname { + type xr:Cisco-ios-xr-string; + description + "srlgname name"; + } + } + } + leaf fast-reroute-disable { + type empty; + description + "Configuration to disable LFA in Flex Algo"; + } + leaf metric-type { + type Ospf-flex-algo-metric; + description + "Configuration for a particular flexalgo + metric type"; + } + leaf microloop-avoidance-disable { + type empty; + description + "Configuration to disable uloop in Flex Algo"; + } + leaf prefix-metric { + type empty; + description + "Configuration to Enable Metric flag in Flex + Algo Definition"; + } + leaf priority { + type uint32 { + range "0..255"; + } + default "128"; + description + "Configuration for a particular flexalgo + priority"; + } + leaf advertise-definition { + type empty; + description + "Configuration to Advertise Flex Algo in + RI-LSA"; + } + leaf flexalgo { + type uint32 { + range "128..255"; + } + description + "Flexalgo value"; + } + } + } + container wsrlg { + description + "Weighted SRLG configurations"; + container names { + description + "Weighted SRLG name table"; + list name { + key "srlg-name"; + description + "Weighted SRLG name configuration"; + leaf admin-weight { + type uint32 { + range "0..65535"; + } + description + "Admin-weight for given SRLG value"; + } + leaf srlg-name { + type xr:Cisco-ios-xr-string; + description + "Name for this SRLG"; + } + } + } + leaf admin-weight { + type uint32 { + range "0..65535"; + } + default "1000"; + description + "Default admin-weight for all SRLG values"; + } + } + container segment-routing { + description + "Segment Routing instance scoped parameters"; + container sr-prefer { + description + "Prefer segment routing labels over LDP + labels"; + leaf enable { + type boolean; + description + "Enable SR labels to be preferred over LDP + labels"; + } + leaf prefix-list-name { + type string; + description + "Name of the Prefix List"; + } + } + leaf sr-prot-adj-sid-delay { + type uint32 { + range "30..3600"; + } + units "second"; + default "900"; + description + "Delay before deletion of protected adj sid + in seconds"; + } + leaf prefix-sid-map-receive-disable { + type empty; + description + "Disable prefix-SID mapping client"; + } + leaf prefix-sid-map-advertise-local { + type empty; + description + "Enable advertisement of local SRMS entries"; + } + leaf strict-spf-disable { + type empty; + description + "Strict-SPF support and SID advertisement"; + } + } + container affinity-maps { + description + "Configure Flex-algo affinity map"; + list affinity-map { + key "attribute"; + description + "Configure affinity map attribute bit + position"; + leaf attribute { + type xr:Cisco-ios-xr-string; + description + "attribute name"; + } + leaf bitposition { + type uint32 { + range "0..255"; + } + mandatory true; + description + "attribute bit position"; + } + } + } + container mpls { + description + "Configure MPLS routing protocol parameters"; + container mpls-router-id { + description + "MPLS-TE stable loopback address for this + OSPF process.Enter either as IP Address or + Interface name, but not both. Unused field + must be nil"; + leaf address { + type inet:ipv4-address-no-zone; + description + "MPLS-TE stable IP address for this OSPF + process"; + } + leaf interface-name { + type xr:Interface-name; + description + "MPLS-TE stable loopback interface for this + OSPF process"; + } + } + leaf igp-intact { + type empty; + description + "Enable igp-intact mode in OSPF"; + } + leaf ldp-sync-update { + type empty; + description + "Enable LDP sync induced metric propagation"; + } + leaf multicast-intact { + type empty; + description + "Enable multicast-intact mode in OSPF"; + } + leaf autoroute-exclude { + type string; + description + "Exclude IP destinations from using TE + tunnels"; + } + } + uses MICROLOOP; + uses IGNORE-MOSPF; + uses LLS-DISABLE; + uses MAXIMUM-REDISTRIBUTE-PREFIX; + uses DEFAULT-INFORMATION; + uses AF; + uses QUEUE; + uses ROUTER-ID; + uses TYPE7; + uses MAX-METRIC; + uses SNMP-CONTEXT; + uses MAXIMUM-INTERFACES; + uses NO-OPAQUE; + uses NSF; + uses PROCESS-SCOPE; + uses SPF-PREFIX-PRIORITY; + uses REDISTRIBUTION; + uses ADJACENCY-STAGGER; + uses MAX-LSA; + uses AUTO-COST; + uses UCMP; + uses APPLY-WEIGHT; + uses MAXIMUM-PATHS; + uses FAST-REROUTE; + uses SUMMARY-PREFIX-TABLE; + uses ADJACENCY-CHANGES; + uses OUTGOING-ROUTE-UPDATE-TABLE; + uses PATHS-PER-PREFIX-DISTRIBUTION; + uses DISTANCE; + uses AREA-TABLE; + uses TIMERS; + uses DEFAULT-METRIC; + } + leaf nsr { + type Nsr; + default "true"; + description + "Enable non-stop routing"; + } + leaf protocol-shutdown { + type Ospf-shutdown; + description + "Type of protocol shutdown"; + } + leaf process-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name for this OSPF process"; + } + } + } + container global { + description + "OSPF global configuration data"; + leaf dns-name-lookup { + type empty; + description + "Display OSPF router ids as DNS names"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub1.yang new file mode 100644 index 000000000..17965532d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub1.yang @@ -0,0 +1,249 @@ +submodule Cisco-IOS-XR-ipv4-ospf-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-ospf-oper { + prefix Cisco-IOS-XR-ipv4-ospf-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-ospf package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-29 { + description + "Added LSA counters per advertising router + 2022-08-18 + Added number of prefixes redistribted in the ospf summary output + 2021-10-01 + Added Extended Inter-Area ASBR LSA, Added Algo label information received from RIB in Extended Prefix LSA"; + semver:module-version "2.3.0"; + } + revision 2021-06-01 { + description + "Added changes to show if a FAD contains unknown parameters, option to enable SR forwarding MPLS, changes in neighbor sham link or virtual link name"; + semver:module-version "2.2.0"; + } + revision 2020-03-19 { + description + "Added changes for Delay Normalization + 2020-02-04 + Added changes for Conditional Advertising + 2019-09-30 + Added changes for Weighted SRLG"; + semver:module-version "2.0.0"; + } + revision 2019-07-26 { + description + "Added new fields in redistribution container to display more information."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-07 { + description + "Modified for Programmability 2.0"; + } + revision 2018-04-18 { + description + "Added keychain name to be displayed in show ospf interface bag"; + } + revision 2017-10-26 { + description + "Fixed some field name and values for better interpretation"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-02 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Srms-mi-flag-e-b { + type enumeration { + enum "false" { + value 0; + description + "False"; + } + enum "true" { + value 1; + description + "True"; + } + } + description + "Srms mi flag e b"; + } + + typedef In6-addr-t-b { + type inet:ipv6-address; + description + "In6 addr t b"; + } + + typedef Srms-mi-af-e-b { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Srms mi af e b"; + } + + typedef Srms-mi-src-e-b { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "local" { + value 1; + description + "Local"; + } + enum "remote" { + value 2; + description + "Remote"; + } + } + description + "Srms mi src e b"; + } + + grouping ADDR { + description + "ADDR"; + leaf af { + type Srms-mi-af-e-b; + description + "AF"; + } + leaf ipv4 { + when "../af = 'ipv4'" { + description + "../AF = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4"; + } + leaf ipv6 { + when "../af = 'ipv6'" { + description + "../AF = 'IPv6'"; + } + type In6-addr-t-b; + description + "IPv6"; + } + } + + grouping SRMS-MI-T-B { + description + "SRMS show bag"; + container addr { + description + "Ipv4 address"; + uses ADDR; + } + leaf src { + type Srms-mi-src-e-b; + description + "Source of this prefix, whether local or remote"; + } + leaf router { + type string { + length "0..30"; + } + description + "Router ID"; + } + leaf area { + type string { + length "0..30"; + } + description + "Area (OSPF) or Level (ISIS)"; + } + leaf prefixlen { + type uint8; + description + "Prefix length"; + } + leaf sid-start { + type uint32; + description + "Starting SID"; + } + leaf sid-count { + type uint32; + description + "SID range"; + } + leaf last-prefix { + type string { + length "0..50"; + } + description + "Last IP Prefix"; + } + leaf last-sid-index { + type uint32; + description + "Last SID Index"; + } + leaf flag-attached { + type Srms-mi-flag-e-b; + description + "Attached flag"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub2.yang new file mode 100644 index 000000000..16cca7628 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub2.yang @@ -0,0 +1,7933 @@ +submodule Cisco-IOS-XR-ipv4-ospf-oper-sub2 { + belongs-to Cisco-IOS-XR-ipv4-ospf-oper { + prefix Cisco-IOS-XR-ipv4-ospf-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-ospf package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-29 { + description + "Added LSA counters per advertising router + 2022-08-18 + Added number of prefixes redistribted in the ospf summary output + 2021-10-01 + Added Extended Inter-Area ASBR LSA, Added Algo label information received from RIB in Extended Prefix LSA"; + semver:module-version "2.3.0"; + } + revision 2021-06-01 { + description + "Added changes to show if a FAD contains unknown parameters, option to enable SR forwarding MPLS, changes in neighbor sham link or virtual link name"; + semver:module-version "2.2.0"; + } + revision 2020-03-19 { + description + "Added changes for Delay Normalization + 2020-02-04 + Added changes for Conditional Advertising + 2019-09-30 + Added changes for Weighted SRLG"; + semver:module-version "2.0.0"; + } + revision 2019-07-26 { + description + "Added new fields in redistribution container to display more information."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-07 { + description + "Modified for Programmability 2.0"; + } + revision 2018-04-18 { + description + "Added keychain name to be displayed in show ospf interface bag"; + } + revision 2017-10-26 { + description + "Fixed some field name and values for better interpretation"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-02 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ospf-sh-opq-ri-pce-addr-types { + type enumeration { + enum "mgmt-ospf-opq-pce-addr-type-invalid" { + value 0; + description + "Invalid PCE Address"; + } + enum "mgmt-ospf-opq-pce-addr-type-ipv4" { + value 1; + description + "IPv4 PCE Address"; + } + enum "mgmt-ospf-opq-pce-addr-type-ipv6" { + value 2; + description + "IPv6 PCE Address"; + } + } + description + "OSPF PCE Address Type"; + } + + typedef Ospf-sh-opq-ri-tlv-types { + type enumeration { + enum "mgmt-ospf-opq-ri-tlv-type-unknown" { + description + "Unknown"; + } + enum "mgmt-ospf-opq-ri-tlv-type-rtrcap" { + description + "Router Capabilities"; + } + enum "mgmt-ospf-opq-ri-tlv-type-pce-discovery" { + description + "PCE Discovery"; + } + enum "mgmt-ospf-opq-ri-tlv-type-sr-algo" { + description + "Segment Routing Algorithm"; + } + enum "mgmt-ospf-opq-ri-tlv-type-sr-range" { + description + "Segment Routing SID Range"; + } + enum "mgmt-ospf-opq-ri-tlv-type-node-msd" { + description + "Node MSD (Max SID Depth)"; + } + enum "mgmt-ospf-opq-ri-tlv-type-srlb" { + description + "Segment Routing Local Block"; + } + enum "mgmt-ospf-opq-ri-tlv-type-fad" { + description + "Segment Routing FLEX ALGO DEF"; + } + enum "mgmt-ospf-opq-ri-tlv-type-host-name" { + description + "Dynamic Hostname"; + } + } + description + "OSPF Router Information TLV types"; + } + + typedef Ospf-lsa-opq-ri-scope { + type enumeration { + enum "mgmt-lsa-opq-ri-scope-link" { + value 9; + description + "Link-local Router Information LSA"; + } + enum "mgmt-lsa-opq-ri-scope-area" { + value 10; + description + "Area-scope Router Information LSA"; + } + enum "mgmt-lsa-opq-ri-scope-as" { + value 11; + description + "AS-scope Router Information LSA"; + } + } + description + "OSPF Router Information LSA scope types"; + } + + typedef Ospf-gr-reason { + type enumeration { + enum "mgmt-gr-reason-unknown" { + description + "Unknown"; + } + enum "mgmt-gr-reason-sw-restart" { + description + "Software restart"; + } + enum "mgmt-gr-reason-sw-upgrade" { + description + "Software reload/upgrade"; + } + enum "mgmt-gr-reason-switchover" { + description + "Switch to redundant control processor"; + } + } + description + "Ospf gr reason"; + } + + typedef Stlv { + type enumeration { + enum "mgmt-rrr-link-type" { + value 1; + description + "Link Type"; + } + enum "mgmt-rrr-link-id" { + value 2; + description + "Link ID"; + } + enum "mgmt-rrr-link-local-if-addr" { + value 3; + description + "Local interface IP address"; + } + enum "mgmt-rrr-link-remote-if-addr" { + value 4; + description + "Remote interface IP address"; + } + enum "mgmt-rrr-link-metric" { + value 5; + description + "Traffic Engineering metric"; + } + enum "mgmt-rrr-link-max-bw" { + value 6; + description + "Maximum Link Bandwidth"; + } + enum "mgmt-rrr-link-max-reservable-bw" { + value 7; + description + "Maximum Reservable bandwidth"; + } + enum "mgmt-rrr-link-unreserved-bw" { + value 8; + description + "Unreserved Bandwidth"; + } + enum "mgmt-rrr-link-re-source-class" { + value 9; + description + "Administrative group"; + } + enum "mgmt-rrr-link-in-out-if-id" { + value 11; + description + "Link Local/Remote Identifiers"; + } + enum "mgmt-rrr-link-if-switching-cap-desc" { + value 15; + description + "Interface Switching Capability Descriptor"; + } + enum "mgmt-ospf-rrr-link-srlg" { + value 16; + description + "Shared Risk Link Group"; + } + enum "mgmt-rrr-link-bw-constraints-sub" { + value 17; + description + "Bandwidth constraints"; + } + enum "mgmt-ospf-rrr-link-ext-admin-sub" { + value 26; + description + "Extended admin"; + } + enum "mgmt-ospf-rrr-link-uni-delay" { + value 27; + description + "Unidirectional link delay"; + } + enum "mgmt-ospf-rrr-link-uni-min-max-delay" { + value 28; + description + "Unidirectional min-max delay"; + } + enum "mgmt-ospf-rrr-link-uni-delay-var-iance" { + value 29; + description + "Unidirectional delay variance"; + } + enum "mgmt-ospf-rrr-link-uni-link-loss" { + value 30; + description + "Unidirectional link loss"; + } + enum "mgmt-ospf-rrr-link-uni-residual-bw" { + value 31; + description + "Unidirectional residual bandwidth"; + } + enum "mgmt-ospf-rrr-link-uni-available-bw" { + value 32; + description + "Unidirectional available delay"; + } + enum "mgmt-ospf-rrr-link-uni-utilized-bw" { + value 33; + description + "Unidirectional utilized bandwidth"; + } + enum "mgmt-ospf-rrr-link-max-reservable-bw-sub" { + value 32768; + description + "Maximum reservable sub-pool bandwidth"; + } + enum "mgmt-ospf-rrr-link-unreserved-bw-sub" { + value 32769; + description + "Unreserved sub-pool bandwidth"; + } + enum "mgmt-rrr-link-igp-metric" { + value 32770; + description + "IGP Link Metric"; + } + enum "mgmt-ospf-rrr-link-ext-admin-sub-backward" { + value 32771; + description + "Extended admin backward"; + } + } + description + "OSPF Opaque-area Type 1 sub TLV types"; + } + + typedef Ex-metric { + type enumeration { + enum "mgmt-ex-metric-type-none" { + value 0; + description + "No metric type"; + } + enum "mgmt-ex-metric-type-1" { + value 1; + description + "Type 1 External"; + } + enum "mgmt-ex-metric-type-2" { + value 2; + description + "Type 2 External"; + } + } + description + "Ex metric"; + } + + typedef Ospf-link-types { + type enumeration { + enum "mgmt-rtr-link" { + value 1; + description + "Link to a Router"; + } + enum "mgmt-trans-link" { + value 2; + description + "Link to a transit network"; + } + enum "mgmt-stub-net" { + value 3; + description + "Link to Stub network"; + } + enum "mgmt-vitural-link" { + value 4; + description + "Link to Virtual Link"; + } + } + description + "Type of router LSA links"; + } + + typedef Ospf-internal-lsa-types { + type enumeration { + enum "mgmt-rtr-type" { + value 1; + description + "Router LSA"; + } + enum "mgmt-ntwk-type" { + value 2; + description + "Network LSA"; + } + enum "mgmt-sum-type" { + value 3; + description + "Summary and ASBR summary LSA"; + } + enum "mgmt-ext-type" { + value 4; + description + "Type 5 and NSSA external LSA"; + } + enum "mgmt-opq-type" { + value 5; + description + "Generic AS/Area Opaque LSA"; + } + enum "mgmt-opq-link-type" { + value 6; + description + "Generic Link Opaque LSA"; + } + enum "mgmt-opq-rrr-type" { + value 7; + description + "Opaque Area type 1 LSA"; + } + enum "mgmt-opq-gr-type" { + value 8; + description + "Opaque link type 1 LSA"; + } + enum "mgmt-opq-ri-type" { + value 9; + description + "Opaque Router Information LSA"; + } + enum "mgmt-opq-epl-type" { + value 10; + description + "Opaque Area type 128"; + } + enum "mgmt-opq-ell-type" { + value 11; + description + "Opaque Area type 8"; + } + enum "mgmt-opq-eial-type" { + value 12; + description + "Opaque Area type 11"; + } + } + description + "OSPF LSA format types"; + } + + typedef Timer { + type enumeration { + enum "mgmt-db-stop" { + description + "Timer stopped"; + } + enum "mgmt-db-refresh" { + description + "Refresh"; + } + enum "mgmt-db-checksum" { + description + "Checksum"; + } + enum "mgmt-db-max-age" { + description + "Maxage"; + } + } + description + "The LSA timer running can be refresh, checksum or + maxage"; + } + + typedef Timer-table { + type enumeration { + enum "mgmt-db-no-table" { + description + "Not in time table"; + } + enum "mgmt-db-sec-table" { + description + "In second table"; + } + enum "mgmt-db-buffer-table" { + description + "In buffer table"; + } + enum "mgmt-db-min-table" { + description + "In minute table"; + } + } + description + "The throttled LSA can be in second, buffer or + minute timer table"; + } + + typedef Ospf-srlb-status { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown"; + } + enum "not-allocated" { + value 1; + description + "Not allocated"; + } + enum "allocated" { + value 2; + description + "Allocated"; + } + } + description + "Ospf srlb status"; + } + + typedef Ospf-srgb-status { + type enumeration { + enum "not-allocated" { + value 0; + description + "Not allocated"; + } + enum "pending" { + value 1; + description + "Allocation pending"; + } + enum "allocated" { + value 2; + description + "Allocated"; + } + } + description + "Ospf srgb status"; + } + + typedef Uloop-avoidance { + type enumeration { + enum "none" { + value 0; + description + "No uloop avoidance"; + } + enum "protected-prefixes" { + value 1; + description + "Apply Local uloop avoidance only for protected + prefixes"; + } + enum "all-prefixes" { + value 2; + description + "Apply Local uloop avoidance for all prefixes"; + } + enum "segment-routing-uloop" { + value 3; + description + "Apply segment routing uloop avoidance"; + } + } + description + "Uloop avoidance"; + } + + typedef Gs-state { + type enumeration { + enum "mgmt-gs-init" { + description + "Process in initialization "; + } + enum "mgmt-gs-normal" { + description + "Graceful Shutdown not running"; + } + enum "mgmt-gs-delay" { + description + "Delaying before Graceful Shutdown"; + } + enum "mgmt-gs-flush" { + description + "Flushing self originated LSAs"; + } + enum "mgmt-gs-hello" { + description + "Sending empty hellos"; + } + enum "mgmt-gs-quiet" { + description + "Shutdown mode."; + } + } + description + "Gs state"; + } + + typedef Max-metric-unset-reason { + type enumeration { + enum "mgmt-max-metric-unset-none" { + description + "none"; + } + enum "mgmt-max-metric-unset-bgp" { + description + "BGP converged"; + } + enum "mgmt-max-metric-unset-timer" { + description + "timer expired"; + } + enum "mgmt-max-metric-unset-cfg" { + description + "unconfigured"; + } + enum "mgmt-max-metric-unset-process-cleared" { + description + "process cleared"; + } + enum "mgmt-max-metric-unset-over-write" { + description + "set for other reason"; + } + } + description + "Max metric unset reason"; + } + + typedef Ospf-max-metric-abr-off-reasons { + type enumeration { + enum "ospf-max-metric-abr-off-reason-none" { + value 0; + description + "No reason"; + } + enum "ospf-max-metric-abr-off-reason-no-nbr" { + value 1; + description + "No neighbors seen yet"; + } + enum "ospf-max-metric-abr-off-reason-new-nbr" { + value 2; + description + "New neighbor seen recently"; + } + enum "ospf-max-metric-abr-off-reason-nbr-full" { + value 4; + description + "Adjacency FULL seen recently"; + } + enum "ospf-max-metric-abr-off-reason-flush-p-end" { + value 8; + description + "LSA flushes pending"; + } + } + description + "Ospf max metric abr off reasons"; + } + + typedef Max-metric-set-reason { + type enumeration { + enum "mgmt-max-metric-on-proc-migration" { + description + "proc migration"; + } + enum "mgmt-max-metric-on-proc-restart" { + description + "proc restart"; + } + enum "mgmt-max-metric-on-switchover" { + description + "switch over"; + } + enum "mgmt-max-metric-on-startup" { + description + "start up"; + } + enum "mgmt-max-metric-always" { + description + "always"; + } + enum "mgmt-max-metric-reason-none" { + description + "none"; + } + } + description + "Max metric set reason"; + } + + typedef Sr-uloop-event { + type enumeration { + enum "none" { + value 0; + description + "No SR uloop event"; + } + enum "link-down" { + value 1; + description + "SR Uloop Event Link Down"; + } + enum "link-up" { + value 2; + description + "SR Uloop Event Link Up"; + } + } + description + "Sr uloop event"; + } + + typedef Sr-dp { + type enumeration { + enum "mgmt-ospf-sr-dp-none" { + value 0; + description + "SR Disable"; + } + enum "mgmt-ospf-sr-dp-mpls" { + value 1; + description + "SR MPLS"; + } + } + description + "Sr dp"; + } + + typedef Ospf-br { + type enumeration { + enum "mgmt-d-type-abr-asbr" { + description + "Both Area Border Router and AS Border Router"; + } + enum "mgmt-d-type-asbr" { + description + "AS Border Router"; + } + enum "mgmt-d-type-abr" { + description + "Area Border Router"; + } + } + description + "Ospf br"; + } + + typedef Ospf-sr-adj-sid-inactive-reason { + type enumeration { + enum "ospf-adj-sid-inactive-none" { + value 0; + description + "None"; + } + enum "ospf-adj-sid-inactive-no-nbr" { + value 1; + description + "No neighbors on interface"; + } + enum "ospf-adj-sid-inactive-no-nbr-addr" { + value 2; + description + "Neighbor address not specified for multiple + neighbors"; + } + enum "ospf-adj-sid-inactive-nbr-not-found" { + value 3; + description + "Neighbor with specified address not found"; + } + enum "ospf-adj-sid-inactive-out-of-srlb" { + value 4; + description + "Adj SID out of SRLB"; + } + enum "ospf-adj-sid-inactive-lsd-alloc-pending" { + value 5; + description + "LSD allocation pending"; + } + enum "ospf-adj-sid-inactive-no-srlb" { + value 6; + description + "SRLB not allocated"; + } + enum "ospf-adj-sid-inactive-sr-not-enable" { + value 7; + description + "Segment routing not enabled"; + } + enum "ospf-adj-sid-inactive-dadj" { + value 8; + description + "Active in Deleted Adjacency Protection"; + } + } + description + "Ospf sr adj sid inactive reason"; + } + + typedef Ipfrr-tbrkr { + type enumeration { + enum "downstream" { + value 0; + description + "Downsteram"; + } + enum "line-card-disjoint" { + value 1; + description + "LC Disjoint"; + } + enum "backup-metric" { + value 2; + description + "Backup metric"; + } + enum "node-protect" { + value 3; + description + "Node protection"; + } + enum "primary-path" { + value 4; + description + "Primary path"; + } + enum "secondary-path" { + value 5; + description + "Secondary path"; + } + enum "srlg-disjoint" { + value 6; + description + "SRLG disjoint"; + } + enum "interface-disjoint" { + value 7; + description + "Interface disjoint"; + } + enum "tunnel" { + value 8; + description + "Tunnel"; + } + enum "post-convergence" { + value 9; + description + "Post Convergence"; + } + } + description + "FRR Tiebreakers"; + } + + typedef Ipfrr { + type enumeration { + enum "none" { + value 0; + description + "Disabled"; + } + enum "per-link" { + value 1; + description + "Per link"; + } + enum "per-prefix" { + value 2; + description + "Per prefix"; + } + } + description + "FRR Types"; + } + + typedef Interface-state { + type enumeration { + enum "mgmt-ifs-unknown" { + description + "Interface state unknown"; + } + enum "mgmt-ifs-admin-down" { + description + "Interface is administratively down"; + } + enum "mgmt-ifs-down" { + description + "Interface is down"; + } + enum "mgmt-ifs-up" { + description + "Interface is up"; + } + enum "mgmt-ifs-shutdown" { + description + "Interface is administratively down"; + } + } + description + "Interface state"; + } + + typedef Ospf-crytographic-algo { + type enumeration { + enum "mgmt-not-configured" { + value 0; + description + "Not configured"; + } + enum "mgmt-aes-128-cmac-96" { + value 1; + description + "AES 128 CMAC 96"; + } + enum "mgmt-hmac-sha1-12" { + value 2; + description + "HAMC SHA1 12"; + } + enum "mgmt-md5-16" { + value 3; + description + "MD5 16"; + } + enum "mgmt-sha1-20" { + value 4; + description + "SHA1 20"; + } + enum "mgmt-hmac-md5-16" { + value 5; + description + "HMAC MD5 16"; + } + enum "mgmt-hmac-sha1-20" { + value 6; + description + "HMAC SHA1 20"; + } + enum "mgmt-aes-128-cmac" { + value 7; + description + "AES 128 CMAC"; + } + enum "mgmt-aes-256-cmac" { + value 8; + description + "AES 256 CMAC"; + } + enum "mgmt-hmac-sha1-96" { + value 9; + description + "HMAC SHA1 96"; + } + enum "mgmt-hmac-sha-256" { + value 10; + description + "HMAC SHA 256"; + } + enum "mgmt-hmac-sha1" { + value 11; + description + "HMAC SHA1"; + } + } + description + "Cryptographic algorithm"; + } + + typedef Authentication { + type enumeration { + enum "mgmt-ospf-auth-none" { + value 0; + description + "No Authentication"; + } + enum "mgmt-ospf-auth-ct" { + value 1; + description + "Clear Text"; + } + enum "mgmt-ospf-auth-md" { + value 2; + description + "MD5"; + } + enum "mgmt-ospf-auth-kc" { + value 3; + description + "Keychain"; + } + } + description + "Authentication"; + } + + typedef Ospf-interface-state { + type enumeration { + enum "mgmt-ospf-ifs-down" { + value 0; + description + "Down"; + } + enum "mgmt-ospf-ifs-loop-back" { + value 1; + description + "Loopback"; + } + enum "mgmt-ospf-ifs-waiting" { + value 2; + description + "Waiting"; + } + enum "mgmt-ospf-ifs-point-to-m-point" { + value 3; + description + "Point to multipoint"; + } + enum "mgmt-ospf-ifs-point-to-point" { + value 4; + description + "Point to point"; + } + enum "mgmt-ospf-ifs-dr" { + value 5; + description + "DesignatedRouter"; + } + enum "mgmt-ospf-ifs-backup" { + value 6; + description + "Backup Designated Router"; + } + enum "mgmt-ospf-ifs-other" { + value 7; + description + "Designated Router Other"; + } + } + description + "Ospf interface state"; + } + + typedef String1 { + type string; + description + "String1"; + } + + typedef Redist-protocol { + type enumeration { + enum "mgmt-rib-protocol-all" { + description + "Unknown"; + } + enum "mgmt-rib-protocol-connected" { + description + "Connected"; + } + enum "mgmt-rib-protocol-local" { + description + "Local"; + } + enum "mgmt-rib-protocol-static" { + description + "Static"; + } + enum "mgmt-rib-protocol-bgp" { + description + "BGP"; + } + enum "mgmt-rib-protocol-rip" { + description + "RIP"; + } + enum "mgmt-rib-protocol-isis" { + description + "ISIS"; + } + enum "mgmt-rib-protocol-ospf" { + description + "OSPF"; + } + enum "mgmt-rib-protocol-eigrp" { + description + "EIGRP"; + } + enum "mgmt-rib-protocol-dagr" { + description + "DAGR"; + } + enum "mgmt-rib-protocol-subscriber" { + description + "Subscriber"; + } + enum "mgmt-rib-protocol-application" { + description + "Application"; + } + enum "mgmt-rib-protocol-mobile" { + description + "Mobile"; + } + } + description + "Redist protocol"; + } + + typedef Ospf-sh-nnh-val-types { + type enumeration { + enum "mgmt-nnh-val-type-ip-addr" { + value 1; + description + "NNH IP Address"; + } + enum "mgmt-nnh-val-type-if-index" { + value 2; + description + "NNH Interface Index"; + } + } + description + "OSPF Neighbor Next Hop Value Types"; + } + + typedef Lfa { + type enumeration { + enum "mgmt-ospf-unknown-lfa" { + value 0; + description + "Unknown LFA"; + } + enum "mgmt-ospf-direct-lfa" { + value 1; + description + "Direct LFA"; + } + enum "mgmt-ospf-ti-lfa" { + value 2; + description + "TI LFA"; + } + enum "mgmt-ospf-remote-lfa" { + value 3; + description + "Remote LFA"; + } + enum "mgmt-ospf-remote-lfa-sr" { + value 4; + description + "Remote LFA SR"; + } + } + description + "Lfa"; + } + + typedef Ospf-route { + type enumeration { + enum "mgmt-r-type-none" { + value 0; + description + "No route type"; + } + enum "mgmt-r-type-other" { + value 1; + description + "Not set"; + } + enum "mgmt-r-type-intra" { + value 2; + description + "Intra-area route"; + } + enum "mgmt-r-type-inter" { + value 4; + description + "Inter-area route"; + } + enum "mgmt-r-type-extern1" { + value 8; + description + "Type 1 External route"; + } + enum "mgmt-r-type-extern2" { + value 16; + description + "Type 2 External route"; + } + enum "mgmt-r-type-isis-sum" { + value 32; + description + "IS-IS summary route"; + } + enum "mgmt-r-type-isis-l1" { + value 64; + description + "IS-IS level 1 route"; + } + enum "mgmt-r-type-isis-l2" { + value 128; + description + "IS-IS level 2 route"; + } + enum "mgmt-r-type-isis-l1-ia" { + value 256; + description + "IS-IS level 1 inter-area route"; + } + enum "mgmt-r-type-bgp-int" { + value 512; + description + "iBGP route"; + } + enum "mgmt-r-type-bgp-ext" { + value 1024; + description + "eBGP route"; + } + enum "mgmt-r-type-bgp-loc" { + value 2048; + description + "BGP local route"; + } + enum "mgmt-r-type-nssa1" { + value 4096; + description + "Type 1 NSSA route"; + } + enum "mgmt-r-type-nssa2" { + value 8192; + description + "Type 2 NSSA route"; + } + enum "mgmt-r-type-i-grp2-int" { + value 16384; + description + "EIGRP internal route"; + } + enum "mgmt-r-type-i-grp2-ext" { + value 32768; + description + "EIGRP external route"; + } + } + description + "Ospf route"; + } + + typedef Nsf-rtr { + type enumeration { + enum "mgmt-nsf-rtr-none" { + description + "None"; + } + enum "mgmt-nsf-rtr-requester" { + description + "Requester"; + } + enum "mgmt-nsf-rtr-receiver" { + description + "Receiver"; + } + } + description + "Nsf rtr"; + } + + typedef Interface { + type enumeration { + enum "mgmt-if-broadcast" { + value 1; + description + "Broadcast"; + } + enum "mgmt-if-nonbroadcast" { + value 2; + description + "Non broadcast multi access"; + } + enum "mgmt-if-point-to-point" { + value 3; + description + "Point to Point"; + } + enum "mgmt-if-point-to-m-point" { + value 4; + description + "Point to multipoint"; + } + enum "mgmt-if-p2mp-non-bcast" { + value 5; + description + "Non broadcast point to multipoint"; + } + enum "mgmt-if-virtual-link" { + value 6; + description + "Virtual link"; + } + enum "mgmt-if-sham-link" { + value 7; + description + "Sham link"; + } + enum "mgmt-if-loop-back" { + value 8; + description + "Loopback"; + } + } + description + "Interface"; + } + + typedef Dr-bdr-state { + type enumeration { + enum "mgmt-dbdr-none" { + description + "None"; + } + enum "mgmt-dbdr-dr" { + description + "Designated Router"; + } + enum "mgmt-dbdr-bdr" { + description + "Backup Designated Router"; + } + enum "mgmt-dbdr-dr-other" { + description + "Designated Router Other"; + } + } + description + "Dr bdr state"; + } + + typedef Neighbor-state { + type enumeration { + enum "mgmt-nbr-down" { + value 0; + description + "Down"; + } + enum "mgmt-nbr-attempt" { + value 1; + description + "Attempt"; + } + enum "mgmt-nbr-init" { + value 2; + description + "Init"; + } + enum "mgmt-nbr-2way" { + value 3; + description + "2 Way"; + } + enum "mgmt-nbr-ex-start" { + value 4; + description + "Exstart"; + } + enum "mgmt-nbr-ex-change" { + value 5; + description + "Exchange"; + } + enum "mgmt-nbr-load-ing" { + value 6; + description + "Loading"; + } + enum "mgmt-nbr-full" { + value 7; + description + "Full"; + } + enum "mgmt-nbr-sc-virtual" { + value 8; + description + "SCvirtual"; + } + } + description + "Neighbor state"; + } + + typedef Mpls-te-opt-tlv { + type enumeration { + enum "mpls-te-opt-tlv-type-none" { + value 0; + description + "None"; + } + enum "mpls-te-opt-tlv-type-srlg" { + value 1; + description + "SRLGs"; + } + enum "mpls-te-opt-tlv-type-bc" { + value 2; + description + "Bandwidth Constraints"; + } + enum "mpls-te-opt-tlv-type-ixcd" { + value 3; + description + "Intarface Switching Capability Descriptor"; + } + enum "mpls-te-opt-tlv-type-uni-delay" { + value 4; + description + "Unidirectional Link Delay"; + } + } + description + "Mpls te opt tlv"; + } + + typedef Igpte-lib-bw-model { + type enumeration { + enum "rdm" { + value 0; + description + "Russian Dolls Model"; + } + enum "mam" { + value 1; + description + "Maximum Allocation Model"; + } + enum "not-set" { + value 2; + description + "No model set"; + } + } + description + "Bandwidth model"; + } + + typedef Link-subnet { + type enumeration { + enum "mgmt-igp-subnet-type-none" { + value 0; + description + "None"; + } + enum "mgmt-igp-subnet-type-p2p" { + value 1; + description + "Point to Point"; + } + enum "mgmt-igp-subnet-type-broadcast" { + value 2; + description + "Broadcast"; + } + enum "mgmt-igp-subnet-type-nbma" { + value 3; + description + "Non Broadcast Multi Access"; + } + enum "mgmt-igp-subnet-type-p2mp" { + value 4; + description + "Point to multipoint"; + } + enum "mgmt-igp-subnet-type-loop-back" { + value 5; + description + "Loopback"; + } + enum "mgmt-igp-subnet-type-max" { + value 6; + description + "Unsupported"; + } + } + description + "Link subnet"; + } + + typedef Ospf-sr-endp-res-fail-reason { + type enumeration { + enum "ospf-se-res-fail-none" { + value 0; + description + "None"; + } + enum "ospf-se-res-fail-no-route" { + value 1; + description + "No route"; + } + enum "ospf-se-res-fail-inv-route-type" { + value 2; + description + "Route type is not valid"; + } + enum "ospf-se-res-fail-default-route" { + value 3; + description + "Default route not used"; + } + enum "ospf-se-res-fail-intra-multi-home-d" { + value 4; + description + "Multihomed intra prefix"; + } + enum "ospf-se-res-fail-no-path" { + value 5; + description + "No path found"; + } + enum "ospf-se-res-fail-no-epl" { + value 6; + description + "No EPL found"; + } + enum "ospf-se-res-fail-area-not-sr-enable" { + value 7; + description + "Area not SR enabled"; + } + enum "ospf-se-res-fail-epl-multi-home-d" { + value 8; + description + "Multihomed EPL origin"; + } + enum "ospf-se-res-fail-no-n-bit-epl" { + value 9; + description + "No EPL with N-bit found"; + } + enum "ospf-se-res-fail-no-na-bit-epl" { + value 10; + description + "No EPL with NA-bit found"; + } + enum "ospf-se-res-fail-area-mismatch" { + value 11; + description + "Area mismatch"; + } + enum "ospf-se-res-fail-rid-mismatch" { + value 12; + description + "Router ID mismatch"; + } + } + description + "Ospf sr endp res fail reason"; + } + + typedef Ospf-sr-pol-metric-mode { + type enumeration { + enum "mgmt-ospf-metric-mode-none" { + value 0; + description + "Metric Mode None"; + } + enum "mgmt-ospf-metric-mode-relative" { + value 1; + description + "Relative Metric"; + } + enum "mgmt-ospf-metric-mode-constant" { + value 3; + description + "Constant Metric"; + } + enum "mgmt-ospf-metric-mode-absolute" { + value 4; + description + "Absolute Metric"; + } + } + description + "Ospf sr pol metric mode"; + } + + typedef Lsa { + type enumeration { + enum "mgmt-lsa-type-rtr" { + value 1; + description + "Router LSA"; + } + enum "mgmt-lsa-type-net" { + value 2; + description + "Network LSA"; + } + enum "mgmt-lsa-type-sum-net" { + value 3; + description + "Summary LSA"; + } + enum "mgmt-lsa-type-sum-asb" { + value 4; + description + "Summary-ASBR LSA"; + } + enum "mgmt-lsa-type-ext" { + value 5; + description + "AS external LSA"; + } + enum "mgmt-lsa-type-mospf" { + value 6; + description + "MOSPF LSA"; + } + enum "mgmt-lsa-type-7-ase" { + value 7; + description + "Type-7 External LSA"; + } + enum "mgmt-lsa-type-8-ignore" { + value 8; + description + "Invalid type"; + } + enum "mgmt-lsa-type-opq-link" { + value 9; + description + "Opaque link LSA"; + } + enum "mgmt-lsa-type-opq-area" { + value 10; + description + "Opaque Area LSA"; + } + enum "mgmt-lsa-type-opq-as" { + value 11; + description + "Opaque AS LSA"; + } + } + description + "Lsa"; + } + + grouping OSPF-SH-WSRLG { + description + "OSPF SRLG details"; + leaf name { + type string; + description + "SRLG Name"; + } + leaf value { + type uint32; + description + "SRLG Value"; + } + leaf admin-weight { + type uint32; + description + "Weight used for this SRLG"; + } + leaf admin-weight-set { + type boolean; + description + "Whether weight is set for this SRLG"; + } + leaf value-set { + type boolean; + description + "Whether value is set for this SRLG"; + } + leaf ospf-config { + type boolean; + description + "Whether OSPF configuration is present for this + SRLG"; + } + leaf global-config { + type boolean; + description + "Whether global configuration is present for this + SRLG"; + } + } + + grouping OSPF-SH-IPFRR-TOPO-ENTRY { + description + "OSPF_IPFRR Topology Entry"; + leaf node-id { + type inet:ipv4-address; + description + "IPFRR Topology Node ID"; + } + leaf distance { + type uint32; + description + "IPFRR Topology Distance"; + } + leaf distance-reverse { + type uint32; + description + "IPFRR Topology Reverse Distance"; + } + leaf type4 { + type boolean; + description + "IPFRR Topoogy Type-4 entry"; + } + leaf revision { + type uint32; + description + "IPFRR Topology Revision"; + } + leaf neighbor-sourced { + type boolean; + description + "IPFRR Topology Neighbor Sourced"; + } + leaf dr { + type boolean; + description + "IPFRR Topology DR entry"; + } + leaf poison { + type boolean; + description + "IPFRR Topology rSPT poison"; + } + } + + grouping OSPF-SH-IPFRR-TOPO { + description + "OSPF IPFRR Topology Information"; + leaf ipfrr-topo-area-id { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted decimal + format"; + } + leaf ipfrr-local-router-id { + type inet:ipv4-address; + description + "OSPF Local Node Router ID"; + } + leaf ipfrr-area-revision { + type uint32; + description + "IPFRR Topology Revision"; + } + list ipfrr-topo { + description + "IPFRR Topology entries"; + uses OSPF-SH-IPFRR-TOPO-ENTRY; + } + } + + grouping OSPF-SH-STATS-AGGT { + description + "OSPF SH STATS AGGT"; + leaf num-nbrs { + type uint32; + description + "Count of neighbors"; + } + leaf num-nbrs-up { + type uint32; + description + "Count of neighbors that are UP"; + } + leaf num-interfaces { + type uint32; + description + "Count of interfaces"; + } + leaf num-interfaces-up { + type uint32; + description + "Count of interfaces that are UP"; + } + leaf num-virtual-intfaces-up { + type uint32; + description + "Count of virtual interfaces that are UP"; + } + leaf num-shamlink-interfaces-up { + type uint32; + description + "Count of shamlinks that are UP"; + } + leaf num-areas { + type uint32; + description + "Count of areas"; + } + leaf num-router-lsas { + type uint32; + description + "Count of Router LSAs"; + } + leaf num-network-lsas { + type uint32; + description + "Count of Network LSAs"; + } + leaf num-network-summary-lsas { + type uint32; + description + "Count of Network Summary LSAs"; + } + leaf num-asbr-summary-lsas { + type uint32; + description + "Count of ASBR Summary LSAs"; + } + leaf num-as-external-lsas { + type uint32; + description + "Count of AS External LSAs"; + } + leaf num-mospf-lsas { + type uint32; + description + "Count of MOSPF LSAs"; + } + leaf num-nssa-external-lsas { + type uint32; + description + "Count of NSSA External LSAs"; + } + leaf num-ignored-type8-lsas { + type uint32; + description + "Count of ignored Type 8 LSAs"; + } + leaf num-opaque-link-lsas { + type uint32; + description + "Count of Opaque link-scoped LSAs"; + } + leaf num-opaque-area-lsas { + type uint32; + description + "Count of Opaque area-scoped LSAs"; + } + leaf num-opaque-as-lsas { + type uint32; + description + "Count of Opaque AS-scoped LSAs"; + } + } + + grouping OSPF-SH-SUMMARY-ADDRESS { + description + "OSPF Summary Address"; + leaf summary-prefix { + type inet:ipv4-address; + description + "Ipv4 Summary prefix"; + } + leaf summary-mask { + type inet:ipv4-address; + description + "subnet mask of Summary prefix"; + } + leaf summary-metric { + type uint32; + description + "Cost of Summary"; + } + leaf summary-metric-type { + type Ex-metric; + description + "Type of Metric"; + } + leaf summary-tag { + type uint32; + description + "Tag associated with this summary prefix"; + } + } + + grouping OSPF-SH-DB-AS-SUM { + description + "OSPF AS Scope LSA Database Summary counters"; + list as-lsa-counter { + description + "Summary counter for AS scope LSAs"; + uses OSPF-SH-DB-SUM-CNTR; + } + } + + grouping OSPF-SH-DB-SUM-CNTR { + description + "OSPF Summary counters for a type"; + leaf lsa-type { + type Lsa; + description + "Type of LSAs"; + } + leaf lsa-count { + type int32; + description + "Number of LSAs of this type"; + } + leaf lsa-delete-count { + type int32; + description + "Number of deleted LSAs of this type"; + } + leaf lsa-maxage-count { + type int32; + description + "Number of MaxAged LSAs of this type"; + } + leaf lsa-self-count { + type int32; + description + "Number of self-generated LSAs"; + } + } + + grouping OSPF-SH-DB-AREA-SUM { + description + "OSPF Area Scope Database Summary counters"; + leaf dbase-sum-area-id-string { + type string { + length "0..16"; + } + description + "Area id"; + } + list area-lsa-counter { + description + "Summary counters for Area scope LSAs"; + uses OSPF-SH-DB-SUM-CNTR; + } + } + + grouping OSPF-SH-DATABASE { + description + "OSPF Database Information"; + container lsa-header { + description + "LSA header information"; + uses OSPF-SH-DB-HEADER; + } + leaf external-tag { + type uint32; + description + "Route Tag"; + } + leaf link-count { + type uint16; + description + "Number of links"; + } + } + + grouping OSPF-SH-LSA-OPQ-EIAL { + description + "OSPF Opaque-area type 11 ExtendedASBR LSA + Information"; + list tlv { + description + "List of TLVs"; + uses OSPF-SH-OPQ-TLV; + } + } + + grouping OSPF-SH-LSA-OPQ-ELL { + description + "OSPF Opaque-area type 8 ExtendedLink LSA + Information"; + list tlv { + description + "List of TLVs"; + uses OSPF-SH-OPQ-TLV; + } + } + + grouping OSPF-SH-LSA-OPQ-EPL { + description + "OSPF Opaque-area type 128 ExtendedPrefix LSA + Information"; + list tlv { + description + "List of TLVs"; + uses OSPF-SH-OPQ-TLV; + } + } + + grouping OSPF-SH-OPQ-RI-HOSTNAME { + description + "OSPF Hostname"; + leaf router-host-name { + type string { + length "0..256"; + } + description + "Hostname string"; + } + } + + grouping OSPF-SH-SR-FAD-UNKNOWN-STLV { + description + "OSPF FAD SubTLV"; + leaf fad-sub-tlv-length { + type uint16; + description + "Length of sub-TLV"; + } + list fad-unknown-data { + description + "FAD unknown TLV data"; + leaf entry { + type uint8; + description + "FAD unknown TLV data"; + } + } + } + + grouping OSPF-SH-SR-FAD-FLAG-STLV { + description + "OSPF FAD SubTLV"; + leaf fad-sub-tlv-length { + type uint16; + description + "Length of sub-TLV"; + } + list fad-flag { + description + "FAD flag bits"; + leaf entry { + type uint8; + description + "FAD flag bits"; + } + } + } + + grouping OSPF-SH-SR-FAD-SRLG-STLV { + description + "OSPF FAD SubTLV"; + leaf fad-sub-tlv-length { + type uint16; + description + "Length of sub-TLV"; + } + list fad-srlg { + description + "FAD SRLG exclude any"; + leaf entry { + type uint32; + description + "FAD SRLG exclude any"; + } + } + } + + grouping OSPF-SH-SR-FAD-AG-STLV { + description + "OSPF FAD SubTLV"; + leaf fad-sub-tlv-length { + type uint16; + description + "Length of sub-TLV"; + } + list fad-admin-group { + description + "FAD Admin Group"; + leaf entry { + type uint32; + description + "FAD Admin Group"; + } + } + } + + grouping OSPF-SH-OPQ-RI-FAD-TLV { + description + "OSPF FAD TLV"; + container exclude-attribute { + description + "Exclude sub-TLV"; + uses OSPF-SH-SR-FAD-AG-STLV; + } + container include-any-attribute { + description + "Include any sub-TLV"; + uses OSPF-SH-SR-FAD-AG-STLV; + } + container include-all-attribute { + description + "Include all sub-TLV"; + uses OSPF-SH-SR-FAD-AG-STLV; + } + container fad-srlg-exc-any { + description + "SRLG exclude any sub-TLV"; + uses OSPF-SH-SR-FAD-SRLG-STLV; + } + container fad-flags { + description + "Felx Algo Flags"; + uses OSPF-SH-SR-FAD-FLAG-STLV; + } + container fad-unsupported-tlv { + description + "Felx Algo unsupported TLV"; + uses OSPF-SH-SR-FAD-UNKNOWN-STLV; + } + leaf fad-length { + type uint16; + description + "Length of TLV"; + } + leaf fad-algo { + type uint8; + description + "Flex ALgo number"; + } + leaf fad-metric-type { + type uint8; + description + "Flex Algo Metric Type"; + } + leaf fad-algo-type { + type uint8; + description + "Flex Algo Calc type"; + } + leaf fad-priority { + type uint8; + description + "Flex Algo Priority"; + } + leaf fad-unsupported-tlv-type { + type uint8; + description + "Flex Algo unsupported TLV type"; + } + } + + grouping OSPF-SH-OPQ-RI-SRLB-TLV { + description + "OSPF SRLB TLV"; + container sidtlv { + description + "SID sub-TLV"; + uses OSPF-SH-SR-SID-STLV; + } + leaf srlbtlv-length { + type uint16; + description + "Length of TLV"; + } + leaf srlb-range-size { + type uint32; + description + "SRLB Range Size"; + } + } + + grouping OSPF-SH-OPQ-RI-MSD-SUBTYPE { + description + "OSPF MSD Subtype"; + leaf msd-sub-type { + type uint8; + description + "MSD SubType"; + } + leaf msd-value { + type uint8; + description + "MSD Value"; + } + } + + grouping OSPF-SH-OPQ-RI-NODE-MSD-TLV { + description + "OSPF Node MSD TLV"; + container node-msd-sub-types { + description + "Node MSD Subtypes"; + uses OSPF-SH-OPQ-RI-MSD-SUBTYPE; + } + leaf node-msdtlv-length { + type uint16; + description + "Length of TLV"; + } + } + + grouping OSPF-SH-SR-SID-STLV { + description + "OSPF PCE-Discovery PCE Scope SubTLV"; + leaf sr-sid-length { + type uint16; + description + "Length of sub-TLV"; + } + leaf sr-sid-value { + type uint32; + description + "SID Value"; + } + } + + grouping OSPF-SH-OPQ-RI-SR-RANGE-TLV { + description + "OSPF SR Range TLV"; + container sidtlv { + description + "SID sub-TLV"; + uses OSPF-SH-SR-SID-STLV; + } + leaf sr-range-length { + type uint16; + description + "Length of TLV"; + } + leaf sr-range-size { + type uint32; + description + "SR Range Size"; + } + } + + grouping OSPF-SH-OPQ-RI-SR-ALGO-TLV { + description + "OSPF SR Algorithm TLV"; + list sr-algo-value { + description + "SR Algorithms"; + leaf entry { + type uint8; + description + "SR Algorithms"; + } + } + } + + grouping OSPF-SH-OPQ-RI-PCED-SCOPE-STLV { + description + "OSPF PCE-Discovery PCE Scope SubTLV"; + leaf lbit { + type boolean; + description + "L Bit"; + } + leaf rbit { + type boolean; + description + "R Bit"; + } + leaf rd-bit { + type boolean; + description + "Rd Bit"; + } + leaf sbit { + type boolean; + description + "S Bit"; + } + leaf sd-bit { + type boolean; + description + "Sd Bit"; + } + leaf ybit { + type boolean; + description + "Y Bit"; + } + leaf pref-l { + type uint8; + description + "Pref L"; + } + leaf pref-r { + type uint8; + description + "Pref R"; + } + leaf pref-s { + type uint8; + description + "Pref S"; + } + leaf pref-y { + type uint8; + description + "Pref Y"; + } + leaf all-scope-info-bits { + type uint32; + description + "PCE Scope Information"; + } + } + + grouping OSPF-SH-OPQ-RI-PCE-IPV6-ADDR-STLV { + description + "PCE IPv6 Address SubTLV"; + leaf pceipv6-addr { + type inet:ipv6-address; + description + "PCE IPv6 Address"; + } + } + + grouping OSPF-SH-OPQ-RI-PCE-IPV4-ADDR-STLV { + description + "PCE IPv4 Address SubTLV"; + leaf pceipv4-addr { + type inet:ipv4-address; + description + "PCE IPv4 Address"; + } + } + + grouping OSPF-SH-OPQ-RI-PCE-ADDR-STLVS-UNION { + description + "OSPF PCE Address SubTLVs"; + container pce-addr-unknown-tlv { + when "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-invalid'" { + description + "../PCEAddrType = + 'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_INVALID'"; + } + description + "Unknown PCE Addr TLV"; + uses OSPF-SH-OPQ-RI-UNKNOWN-TLV; + } + container ipv4pce-addr { + when "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv4'" { + description + "../PCEAddrType = + 'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV4'"; + } + description + "IPv4 PCE Address"; + uses OSPF-SH-OPQ-RI-PCE-IPV4-ADDR-STLV; + } + container ipv6pce-addr { + when "../pce-addr-type = 'mgmt-ospf-opq-pce-addr-type-ipv6'" { + description + "../PCEAddrType = + 'MGMT_OSPF_OPQ_PCE_ADDR_TYPE_IPV6'"; + } + description + "IPv6 PCE Address"; + uses OSPF-SH-OPQ-RI-PCE-IPV6-ADDR-STLV; + } + leaf pce-addr-type { + type Ospf-sh-opq-ri-pce-addr-types; + description + "PCEAddrType"; + } + } + + grouping OSPF-SH-OPQ-RI-PCED-TLV { + description + "OSPF PCE Discovery TLV"; + container pced-addr { + description + "PCE Address"; + uses OSPF-SH-OPQ-RI-PCE-ADDR-STLVS-UNION; + } + container pced-scope { + description + "PCE Scope Information"; + uses OSPF-SH-OPQ-RI-PCED-SCOPE-STLV; + } + leaf pcedtlv-length { + type uint16; + description + "Length of TLV"; + } + } + + grouping OSPF-SH-OPQ-RI-RTRCAP-TLV { + description + "OSPF Router Capabilities TLV"; + leaf rtr-cap-tlv-length { + type uint16; + description + "Length of TLV"; + } + leaf rtr-cap-graceful-restart { + type boolean; + description + "Graceful Restart Capability"; + } + leaf rtr-cap-graceful-restart-helper { + type boolean; + description + "Graceful Restart Helper Capability"; + } + leaf rtr-cap-stub-rtr { + type boolean; + description + "Stub Router capability"; + } + leaf rtr-cap-area-te { + type boolean; + description + "Traffic Engineering capability of area"; + } + leaf rtr-cap-p2plan { + type boolean; + description + "P2P LAN Capability"; + } + leaf rtr-cap-te-exp { + type boolean; + description + "TE Experimental bit"; + } + leaf rtr-cap-all-bits { + type uint32; + description + "All capability bits"; + } + leaf rtr-cap-additional-info { + type yang:hex-string; + description + "Additional Information in TLV"; + } + } + + grouping OSPF-SH-OPQ-RI-UNKNOWN-TLV { + description + "OSPF Opaque Router Information TLV"; + leaf ri-gen-tlv-type { + type uint16; + description + "Type of TLV"; + } + leaf ri-gen-tlv-length { + type uint16; + description + "Length of TLV"; + } + leaf ri-genvalue { + type yang:hex-string; + description + "Data in TLV"; + } + } + + grouping OSPF-SH-OPQ-RI-TLVS-UNION { + description + "OSPF Router Information TLVs"; + container unknown-tlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-unknown'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_UNKNOWN'"; + } + description + "Unknown Rtr Info TLV"; + uses OSPF-SH-OPQ-RI-UNKNOWN-TLV; + } + container rtr-cap-tlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-rtrcap'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_RTRCAP'"; + } + description + "Rtr Cap TLV"; + uses OSPF-SH-OPQ-RI-RTRCAP-TLV; + } + container pcedtlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-pce-discovery'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_PCEDISCOVERY'"; + } + description + "PCE Discovery TLV"; + uses OSPF-SH-OPQ-RI-PCED-TLV; + } + container sr-algo-tlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-algo'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_ALGO'"; + } + description + "SR Algorithm TLV"; + uses OSPF-SH-OPQ-RI-SR-ALGO-TLV; + } + container sr-range-tlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-sr-range'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_SR_RANGE'"; + } + description + "SR Range TLV"; + uses OSPF-SH-OPQ-RI-SR-RANGE-TLV; + } + container node-msdtlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-node-msd'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_NODE_MSD'"; + } + description + "Node MSD TLV"; + uses OSPF-SH-OPQ-RI-NODE-MSD-TLV; + } + container srlbtlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-srlb'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_SRLB'"; + } + description + "SRLB Range TLV"; + uses OSPF-SH-OPQ-RI-SRLB-TLV; + } + container fadlv { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-fad'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_FAD'"; + } + description + "FAD TLV"; + uses OSPF-SH-OPQ-RI-FAD-TLV; + } + container host-name { + when "../ritlv-internal-type = 'mgmt-ospf-opq-ri-tlv-type-host-name'" { + description + "../RITLVInternalType = + 'MGMT_OSPF_OPQ_RI_TLV_TYPE_HOSTNAME'"; + } + description + "Hostname string "; + uses OSPF-SH-OPQ-RI-HOSTNAME; + } + leaf ritlv-internal-type { + type Ospf-sh-opq-ri-tlv-types; + description + "RITLVInternalType"; + } + } + + grouping OSPF-SH-LSA-OPQ-RI { + description + "OSPF Router Information LSA"; + leaf opaque-rilsa-scope { + type Ospf-lsa-opq-ri-scope; + description + "Opaque LSA flooding scope, a.k.a., Opaque LSA + Type"; + } + leaf opaque-ri-interface-name { + type xr:Interface-name; + description + "Interface on which this Link-Local Opaque link + LSA is received"; + } + list opaque-ritlv { + description + "Router Information TLV"; + uses OSPF-SH-OPQ-RI-TLVS-UNION; + } + } + + grouping OSPF-SH-LSA-OPQ-GRACE { + description + "OSPF Opaque-link type 3 grace LSA Information"; + leaf grace-period { + type uint32; + description + "The amount of time the router's neighbor should + advertise it fully adjacent (s)"; + } + leaf grace-reason { + type Ospf-gr-reason; + description + "Reason for router restart"; + } + leaf ip-address { + type inet:ipv4-address; + description + "IP interface address on the subnet associated + with the grace LSA"; + } + } + + grouping OSPF-SH-OPQ-SUBTLV { + description + "OSPF Opaque LSA Sub-TLV Information"; + leaf sub-tlv-type { + type Stlv; + description + "Type of sub TLV"; + } + leaf sub-tlv-length { + type uint16; + description + "Length of sub TLV"; + } + leaf sub-tlv-value { + type yang:hex-string; + description + "Value of sub TLV"; + } + } + + grouping OSPF-SH-OPQ-TLV { + description + "OSPF Opaque LSA TLV Information"; + leaf tlv-type { + type uint16; + description + "Type of top-level TLV"; + } + leaf tlv-length { + type uint16; + description + "Length of top-level TLV"; + } + leaf mpls-router-id { + type inet:ipv4-address; + description + "MPLS-TE Router ID"; + } + leaf mpls-dste-link { + type boolean; + description + "MPLS DS-TE supported"; + } + leaf tlv-data { + type yang:hex-string; + description + "TLV direct data"; + } + list te-link-sub-tlv { + description + "List of Sub-TLVs"; + uses OSPF-SH-OPQ-SUBTLV; + } + } + + grouping OSPF-SH-LSA-OPQ-RRR { + description + "OSPF Opaque-area type 1 MPLS-TE LSA Information"; + list tlv { + description + "List of TLVs"; + uses OSPF-SH-OPQ-TLV; + } + } + + grouping OSPF-SH-LSA-OPQ-LINK { + description + "OSPF Opaque-link LSA Information"; + leaf opaque-interface-name { + type xr:Interface-name; + description + "Interface on which the Opaque link LSA is + received"; + } + } + + grouping OSPF-SH-LSA-EX-TOS { + description + "OSPF External Type of service specific + Information"; + leaf external-metric { + type uint32; + description + "Cost of this route"; + } + leaf external-metric-type { + type Ex-metric; + description + "External LSA metric type - whether type 1 or + type 2"; + } + leaf external-tos { + type uint32; + description + "Type of Service"; + } + leaf forwarding-address { + type inet:ipv4-address; + description + "Forwarding Address on the External LSA"; + } + leaf external-tag { + type uint32; + description + "Route Tag"; + } + } + + grouping OSPF-SH-LSA-EXTERNAL { + description + "OSPF External LSA"; + leaf external-prefix-length { + type uint32; + description + "Prefix length"; + } + leaf internal-external-lsa { + type boolean; + description + "If true, internal max-metric LSA"; + } + list external-tos-metric { + description + "Type of service information"; + uses OSPF-SH-LSA-EX-TOS; + } + } + + grouping OSPF-SH-LSA-SUMMARY { + description + "OSPF Summary LSA"; + leaf summary-prefix-length { + type uint32; + description + "Prefix length of the Summary LSA"; + } + leaf internal-sum-lsa { + type boolean; + description + "If true, internal max-metric LSA"; + } + list summary-lsa-metric { + description + "Metric"; + leaf entry { + type uint32; + description + "Metric"; + } + } + } + + grouping OSPF-SH-LSA-NETWORK { + description + "OSPF Network LSA"; + leaf network-prefix-length { + type uint32; + description + "Prefix length of the Network"; + } + list neighbor-router { + description + "Neighbor router list"; + leaf entry { + type inet:ipv4-address; + description + "Neighbor router list"; + } + } + } + + grouping OSPF-SH-TOS-METRIC { + description + "OSPF Router LSA TOS Metric"; + leaf router-tos { + type uint16; + description + "Type of Service"; + } + leaf tos-cost { + type uint16; + description + "Type of service specific metric"; + } + } + + grouping OSPF-SH-LINK { + description + "OSPF Router LSA Links"; + leaf link-id { + type inet:ipv4-address; + description + "Link ID"; + } + leaf link-data { + type inet:ipv4-address; + description + "Link Data"; + } + leaf link-type { + type Ospf-link-types; + description + "Type of link"; + } + leaf link-metric { + type uint16; + description + "Cost for using this link"; + } + list link-tos { + description + "List of type of service metrics"; + uses OSPF-SH-TOS-METRIC; + } + } + + grouping OSPF-SH-LSA-ROUTER { + description + "OSPF Router LSA"; + leaf router-asbr { + type boolean; + description + "If True, router is an Autonomous system Border + Router"; + } + leaf router-abr { + type boolean; + description + "If True, router is an Area Border Router"; + } + leaf internal-lsa { + type boolean; + description + "If true, internal LSA"; + } + list link { + description + "List of links in this LSA"; + uses OSPF-SH-LINK; + } + list internal-link { + description + "List of links for internal LSA"; + uses OSPF-SH-LINK; + } + } + + grouping OSPF-LSA-INTERNAL-UNION { + description + "LSA internal information for an LSA"; + container router-lsa-type { + when "../internal-lsa-type = 'mgmt-rtr-type'" { + description + "../InternalLSAType = 'MGMT_RTR_TYPE'"; + } + description + "Router LSA"; + uses OSPF-SH-LSA-ROUTER; + } + container network-lsa-type { + when "../internal-lsa-type = 'mgmt-ntwk-type'" { + description + "../InternalLSAType = 'MGMT_NTWK_TYPE'"; + } + description + "Network LSA"; + uses OSPF-SH-LSA-NETWORK; + } + container summary-lsa-type { + when "../internal-lsa-type = 'mgmt-sum-type'" { + description + "../InternalLSAType = 'MGMT_SUM_TYPE'"; + } + description + "Summary LSA"; + uses OSPF-SH-LSA-SUMMARY; + } + container external-lsa-type { + when "../internal-lsa-type = 'mgmt-ext-type'" { + description + "../InternalLSAType = 'MGMT_EXT_TYPE'"; + } + description + "External LSA"; + uses OSPF-SH-LSA-EXTERNAL; + } + container opaque-link-lsa-type { + when "../internal-lsa-type = 'mgmt-opq-link-type'" { + description + "../InternalLSAType = 'MGMT_OPQ_LINK_TYPE'"; + } + description + "Opaque-Link LSA"; + uses OSPF-SH-LSA-OPQ-LINK; + } + container opaque-mpls-te-lsa-type { + when "../internal-lsa-type = 'mgmt-opq-rrr-type'" { + description + "../InternalLSAType = 'MGMT_OPQ_RRR_TYPE'"; + } + description + "Opaque-Area, opaque type 1 LSA"; + uses OSPF-SH-LSA-OPQ-RRR; + } + container opaque-grace-lsa { + when "../internal-lsa-type = 'mgmt-opq-gr-type'" { + description + "../InternalLSAType = 'MGMT_OPQ_GR_TYPE'"; + } + description + "Opaque-link, opaque type 3 Grace LSA"; + uses OSPF-SH-LSA-OPQ-GRACE; + } + container opaque-router-info-lsa-type { + when "../internal-lsa-type = 'mgmt-opq-ri-type'" { + description + "../InternalLSAType = 'MGMT_OPQ_RI_TYPE'"; + } + description + "Opaque Router Information LSA"; + uses OSPF-SH-LSA-OPQ-RI; + } + container opaque-ep-lsa-type { + when "../internal-lsa-type = 'mgmt-opq-epl-type'" { + description + "../InternalLSAType = 'MGMT_OPQ_EPL_TYPE'"; + } + description + "Extende Prefix LSA type"; + uses OSPF-SH-LSA-OPQ-EPL; + } + container opaque-el-lsa-type { + when "../internal-lsa-type = 'mgmt-opq-ell-type'" { + description + "../InternalLSAType = 'MGMT_OPQ_ELL_TYPE'"; + } + description + "Extended Link LSA type"; + uses OSPF-SH-LSA-OPQ-ELL; + } + container opaque-eia-lsa-type { + when "../internal-lsa-type = 'mgmt-opq-eial-type'" { + description + "../InternalLSAType = 'MGMT_OPQ_EIAL_TYPE'"; + } + description + "Extended ASBR LSA type"; + uses OSPF-SH-LSA-OPQ-EIAL; + } + leaf internal-lsa-type { + type Ospf-internal-lsa-types; + description + "InternalLSAType"; + } + } + + grouping OSPF-SH-DB-NOT-DELETE { + description + "Reason why LSA is not deleted"; + leaf free-time { + type uint32; + description + "The amount of time since the last check was made + to free this LSA (s)"; + } + leaf no-delete { + type boolean; + description + "If true, the reason not to delete this LSA is + because delete flag not set on this LSA"; + } + leaf neighbor-exchange { + type boolean; + description + "If true, the reason not to delete this LSA is + because neighbor is in exchange state"; + } + leaf routing-table { + type boolean; + description + "If true, the reason not to delete this LSA is + because it has a contributing entry in the + routing table"; + } + leaf acknowledgement { + type boolean; + description + "If true, the reason not to delete this LSA is + because it's Acknowledgement list is not empty"; + } + leaf maximum-age { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is in Maxage Queue"; + } + leaf partial-spf { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is in partial SPF queue"; + } + leaf flood-pending { + type boolean; + description + "If true, the reason not to delete this LSA is + because waiting for flooding or retransmission"; + } + leaf rate-limit { + type boolean; + description + "If true, the reason not to delete this LSA is + because waiting for next wait-interval to expire"; + } + leaf nsr-ack-pending { + type boolean; + description + "If true, the reason not to delete this LSA is + because NSR ACK from standby is pending"; + } + leaf sum-orig-pending { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is pending summary LSA originating"; + } + leaf nsr-flood-required { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is pending flooding on switchover"; + } + leaf link-state-q { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is used in Link State Q"; + } + leaf used-in-uloop { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is used in uloop"; + } + leaf added-in-ulooplist { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is Added in uloopdblist"; + } + leaf used-as-parent { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is used in parent_path_lsdb"; + } + } + + grouping OSPF-SH-DB-THROTTLE-TIMER { + description + "OSPF LSA throttle timer table information"; + leaf timer-location { + type Timer-table; + description + "Timer table"; + } + leaf timer-type { + type Timer; + description + "Timer type - whether maxage, refresh or checksum + timer"; + } + leaf second-table-index { + type uint8; + units "second"; + description + "Index of the Seconds table"; + } + leaf minute-table-index { + type uint8; + units "minute"; + description + "Index of the Minutes table"; + } + leaf last-inst-second-table-index { + type uint8; + units "second"; + description + "Last Seconds table index processed"; + } + leaf last-inst-minute-table-index { + type uint8; + units "minute"; + description + "Last Minutes table index processed"; + } + } + + grouping OSPF-SH-DB-DETAIL { + description + "OSPF Detailed LSA Database Information"; + container lsa-throttle-timer { + description + "LSA throttle timer table information"; + uses OSPF-SH-DB-THROTTLE-TIMER; + } + container lsa-last-updated-time { + description + "Time LSA was last updated"; + uses OSPF-SH-TIME; + } + container lsadb-base-time-stamp { + description + "Current time stamp"; + uses OSPF-SH-TIME; + } + container not-delete { + description + "Reason why LSA is not deleted"; + uses OSPF-SH-DB-NOT-DELETE; + } + leaf tos-capable { + type boolean; + description + "If true, type of service capable indicated by + LSA's option field"; + } + leaf nssa-translation { + type boolean; + description + "If true, capable of type 7 to 5 translation + indicated by LSA's option field"; + } + leaf demand-circuit { + type boolean; + description + "If true, capable of demand circuit as indicated + by LSA's option field"; + } + leaf dn-bit { + type boolean; + description + "if true, DN bit set on the summary LSA indicated + by LSA's option field"; + } + leaf lsa-rate-limit-due-time { + type uint32; + description + "Due time for rate-limit timer (ms)"; + } + leaf lsadb-base-clock { + type uint64; + description + "Clock stamp since boot"; + } + leaf routing-bit { + type boolean; + description + "If true, Routing Bit set on the LSA"; + } + leaf advertising-router-reachable { + type boolean; + description + "If true, Advertising Router is reachable"; + } + leaf length { + type uint16; + description + "Length of the LSA"; + } + leaf sum-origin { + type uint16; + description + "Summary Origin"; + } + leaf ase-origin { + type uint16; + description + "External Origin"; + } + leaf in-sync { + type uint8; + description + "Not In Sync With Active"; + } + leaf lsa-prefix-priority { + type uint8; + description + "Current prefix priority"; + } + leaf new-lsa-prefix-priority { + type uint8; + description + "New prefix priority to be set after the current + SPF"; + } + leaf lsa-flood-required-post-fail-over { + type boolean; + description + "LSA flood required after FO"; + } + } + + grouping OSPF-SH-DB-HEADER { + description + "OSPF LSA Database Header"; + leaf ls-type { + type Lsa; + description + "LSA type"; + } + leaf lsid { + type inet:ipv4-address; + description + "LS ID"; + } + leaf advertising-router { + type inet:ipv4-address; + description + "Router ID of Advertising Router"; + } + leaf lsa-area-id { + type string { + length "0..16"; + } + description + "Area ID in decimal or dotted-decimal format"; + } + leaf lsa-age { + type uint16; + description + "LSA's Age (s)"; + } + leaf dn-age-lsa { + type boolean; + description + "If true, Do Not Age this LSA"; + } + leaf nsf { + type boolean; + description + "If true, LSA received from neighbor during NSF"; + } + leaf sequence-number { + type uint32; + description + "Current Sequence number"; + } + leaf checksum { + type uint16; + description + "Checksum value"; + } + } + + grouping OSPF-SH-DATABASE-DETAIL { + description + "OSPF Database Information"; + container lsa-header { + description + "Header information"; + uses OSPF-SH-DB-HEADER; + } + container lsa-detail-data { + description + "Detailed LSA Information"; + uses OSPF-SH-DB-DETAIL; + } + container lsa-internal-data { + description + "Information pertaining to a specific LSA type"; + uses OSPF-LSA-INTERNAL-UNION; + } + } + + grouping OSPF-SH-ADV-RTR-LSA-SUM { + description + "OSPF LSA count summary per advertising router"; + leaf advertising-router-id { + type uint32; + description + "ID of the Advertising Router"; + } + leaf total-lsa-count { + type uint32; + description + "Total LSA count from the advertising router"; + } + leaf del-maxage-total-count { + type uint32; + description + "Total Maxaged LSA count from the advertising + router"; + } + list lsa-count { + max-elements "12"; + description + "Counter for each type of LSA"; + leaf entry { + type uint32; + description + "Counter for each type of LSA"; + } + } + list del-maxage-count { + max-elements "12"; + description + "Counter for each type of Maxaged LSA"; + leaf entry { + type uint32; + description + "Counter for each type of Maxaged LSA"; + } + } + } + + grouping OSPF-SH-SLINK-NEIGHBOR { + description + "Sham Link Neighbor Information"; + container sham-link-retransmissoin { + description + "Neighbor retransmission info"; + uses OSPF-SH-NEIGHBOR-RETRANS; + } + leaf sham-link-suppress-hello { + type boolean; + description + "If true Hellos suppressed"; + } + leaf sham-link-state { + type Neighbor-state; + description + "Adjacency state"; + } + } + + grouping OSPF-SH-SHAM-LINKS { + description + "OSPF Sham Link"; + container sham-link-neighbor { + description + "Neighbor information"; + uses OSPF-SH-SLINK-NEIGHBOR; + } + leaf sham-link-name-xr { + type string; + description + "Name of the Sham link"; + } + leaf sham-link-neighbor-id { + type inet:ipv4-address; + description + "Neighbor on other end of this sham link"; + } + leaf sham-link-source-address { + type inet:ipv4-address; + description + "Sham-link source"; + } + leaf sham-link-dest-address { + type inet:ipv4-address; + description + "Sham-link dest"; + } + leaf sham-link-state { + type Ospf-interface-state; + description + "OSPF interface state for the sham link"; + } + leaf sham-link-demand-circuit { + type boolean; + description + "If true, the link runs as demand circuit"; + } + leaf sham-link-dc-bitless-lsa { + type uint32; + description + "Number of LSA's with demand circuit bit not set"; + } + leaf sham-link-ifindex { + type uint32; + description + "Sham-link Interface index"; + } + leaf sham-link-area { + type string; + description + "Area id"; + } + leaf sham-link-cost { + type uint16; + description + "Cost of the sham link"; + } + leaf sham-link-transmission-delay { + type uint16; + units "second"; + description + "Transmission delay in seconds"; + } + leaf sham-link-hello-interval { + type uint32; + description + "Hello interval (s)"; + } + leaf sham-link-hello-interval-ms { + type uint32; + description + "Hello interval (ms)"; + } + leaf sham-link-dead-interval { + type uint32; + description + "Dead interval (s)"; + } + leaf sham-link-wait-interval { + type uint32; + description + "Wait interval (s)"; + } + leaf sham-link-retransmission-interval { + type uint32; + description + "Retransmission interval (s)"; + } + leaf sham-link-next-hello { + type uint32; + description + "Time until next hello (s)"; + } + leaf sham-link-next-hello-ms { + type uint32; + description + "Time until next hello (ms)"; + } + leaf sham-link-passive { + type boolean; + description + "If true, interface is passive"; + } + leaf sham-link-authentication-type { + type Authentication; + description + "Authentication type"; + } + leaf sham-link-youngest-md-key { + type boolean; + description + "If true, MD key configured"; + } + leaf sham-link-youngest-md-key-id { + type uint16; + description + "Youngest MD key ID"; + } + leaf sham-link-old-md-key-count { + type uint32; + description + "Number of neighbors still using the old key + (rollover in progress)"; + } + leaf keychain-name { + type string { + length "0..255"; + } + description + "Sham Link Keychain Name"; + } + leaf sham-link-keychain-key-conf { + type boolean; + description + "If true, Keychain key is configured"; + } + leaf sham-link-keychain-id { + type uint64; + description + "Sham Link Keychain ID"; + } + leaf sham-link-keychain-alg { + type Ospf-crytographic-algo; + description + "Sham Link Keychain cryptographic-algorithm"; + } + leaf sham-link-nsf-enabled { + type boolean; + description + "If true, NSF enabled"; + } + leaf sham-link-nsf { + type boolean; + description + "If true, NSF restart in progress on the sham + link"; + } + leaf sham-link-last-nsf { + type uint32; + units "second"; + description + "Time in seconds since last NSF"; + } + list sham-link-md-key { + description + "List of old MD keys (if any)"; + leaf entry { + type uint16; + description + "List of old MD keys (if any)"; + } + } + } + + grouping OSPF-SH-DOMAIN-ID-ENTRY { + description + "OSPF Domain ID"; + leaf domain-id-type { + type uint16; + description + "Domain ID Type"; + } + leaf domain-id-value { + type yang:hex-string; + description + "Domain ID value"; + } + } + + grouping OSPF-SH-DOMAIN-ID { + description + "OSPF Domain ID entries"; + container primary-domain-id { + description + "Primary Domain ID"; + uses OSPF-SH-DOMAIN-ID-ENTRY; + } + list secondary-domain-id { + description + "List of secondary domain IDs"; + uses OSPF-SH-DOMAIN-ID-ENTRY; + } + } + + grouping OSPF-SH-MAX-METRIC { + description + "OSPF Max-metric Information"; + container maximum-metric-time-unset { + description + "Time max-metric condition was cleared"; + uses OSPF-SH-TIME; + } + leaf max-metric-reason { + type uint8; + description + "Reason to set Max-metric"; + } + leaf max-metric-enabled { + type boolean; + description + "Whether Max-metric is enabled"; + } + leaf unset-maximum-metric { + type boolean; + description + "If true, BGP is up, no maximum metric Router LSA"; + } + leaf saved-unset-maximum-metric { + type boolean; + description + "Saved UnsetMaximumMetric"; + } + leaf maximum-metric-start-time { + type uint32; + description + "Time remaining until we will start using normal + metrics (s)"; + } + leaf saved-startup-time { + type uint32; + description + "Hold time configured (s)"; + } + leaf maximum-metric-include-stubs { + type boolean; + description + "If true, set max-metric in stub links"; + } + leaf maximum-metric-summary-lsa { + type boolean; + description + "If true, advertise max-metric in summary-LSAs"; + } + leaf maximum-metric-summary-lsa-metric { + type uint32; + description + "Max-metric value to advertise in summary-LSAs"; + } + leaf maximum-metric-external-lsa { + type boolean; + description + "If true, advertise max-metric in external-LSAs"; + } + leaf maximum-metric-external-lsa-metric { + type uint32; + description + "Max-metric value to advertise in external-LSAs"; + } + leaf maximum-metric-originated-for { + type uint32; + description + "Time max-metric was used for"; + } + leaf maximum-metric-unset-reason { + type Max-metric-unset-reason; + description + "Reason to unset Max-metric"; + } + } + + grouping OSPF-SH-SUMMARY { + description + "OSPF Summary"; + container domain-id { + description + "Domain ID information"; + uses OSPF-SH-DOMAIN-ID; + } + leaf vrf-active { + type boolean; + description + "If true, VRF configured"; + } + leaf role-standby { + type boolean; + description + "If true, Role is Standby, Active otherwise"; + } + leaf role { + type uint32; + description + "Role, V1/V2 Active/Standby"; + } + leaf nsr-enabled { + type boolean; + description + "If true, NSR is enabled"; + } + leaf nsr-switchover-on-restart { + type boolean; + description + "Trigger RP Switchover on detectable process + restart"; + } + leaf igp-intact-on { + type boolean; + description + "If true, running in IGP-Intact mode"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf tos-options { + type uint8; + description + "Type of Service supported"; + } + leaf opaque-capable { + type boolean; + description + "Whether the OSPF instance is Opaque LSA capable"; + } + leaf area-border-router { + type boolean; + description + "If true, is an Area Border Router"; + } + leaf as-border-router { + type boolean; + description + "If true, is an AS Border Router"; + } + leaf vrf-lite-enabled { + type boolean; + description + "If true, vrf lite is enabled"; + } + leaf capability-prefer-type7 { + type boolean; + description + "If true, prefer type 7 LSAs over type 5"; + } + leaf maximum-metric-start { + type boolean; + description + "If true, originate Router LSA with maximum + metric"; + } + leaf maximum-metric-start-timer { + type uint32; + description + "Time remaining for hold down timer (s)"; + } + leaf maximum-metric-set-reason { + type Max-metric-set-reason; + description + "Reason to set Max-metric"; + } + leaf maximum-metric-abr-off-mode { + type boolean; + description + "If true, ABR duties temporarily disabled"; + } + leaf maximum-metric-abr-off-reasons { + type Ospf-max-metric-abr-off-reasons; + description + "Reasons for ABR duties being temporarily + disabled"; + } + leaf maximum-metric-abr-off-buffer-time { + type uint32; + units "second"; + description + "Buffer time in seconds since last neighbor + activity, to remain in max-metric ABR off state"; + } + leaf spf-start-time { + type uint32; + description + "Scheduling delay for SPF (ms)"; + } + leaf spf-hold-time { + type uint32; + description + "Minimum delay time between SPF runs (ms)"; + } + leaf spf-maximum-time { + type uint32; + description + "Maximum delay time between SPF runs (ms)"; + } + leaf spf-prefix-priority { + type boolean; + description + "If true, prefix-priority policy is configured"; + } + leaf spf-prefix-priority-route-policy { + type string; + description + "Route-policy that governs SPF Prefix-priority"; + } + leaf lsa-start-time { + type int32; + description + "Initial LSA throttle delay (ms)"; + } + leaf lsa-hold-time { + type uint32; + description + "Second delay before generating next LSA (ms)"; + } + leaf lsa-maximum-time { + type uint32; + description + "Maximum delay before generating an LSA (ms)"; + } + leaf minimum-lsa-interval { + type uint32; + description + "Minimum time between LSA regeneration (ms)"; + } + leaf lsa-refresh-interval { + type uint32; + description + "LSA refresh interval (sec)"; + } + leaf minimum-lsa-arrival-interval { + type uint32; + description + "Minimum time between accepting LSAs (ms)"; + } + leaf if-flood-pacing-interval { + type uint16; + description + "Flood pacing timer (ms)"; + } + leaf if-retrans-pacing-interval { + type uint16; + description + "Retransmission pacing timer (ms)"; + } + leaf adj-stag-init-num-nbr { + type uint16; + description + "Num of nbrs brought up initially per area"; + } + leaf adj-stag-max-num-nbr { + type uint16; + description + "Max num of nbrs brought up simultaneously per + OSPF instance"; + } + leaf adj-stagger-enabled { + type boolean; + description + "If true, OSPF Adjacency Staggering is configured"; + } + leaf adj-stag-num-nbr-forming { + type uint16; + description + "Num of nbrs currently forming for OSPF instance"; + } + leaf number-nbrs-full { + type uint16; + description + "Num of full nbrs"; + } + leaf as-lsa-count { + type uint32; + description + "Number of AS scope LSAs"; + } + leaf as-lsa-checksum { + type uint32; + description + "Sum of AS scope LSA checksum"; + } + leaf opaque-lsa-count { + type uint32; + description + "Number of Opaque LSAs"; + } + leaf opaque-lsa-checksum { + type uint32; + description + "Sum of opaque LSA checksum"; + } + leaf as-dc-bitless-lsa-count { + type uint32; + description + "Number of External and AS Opaque LSAs with + demand circut bit not set"; + } + leaf as-dna-lsa-count { + type uint32; + description + "Number of External and AS Opaque LSAs with + DoNotAge set "; + } + leaf area-count { + type uint16; + description + "Number of areas"; + } + leaf normal-area-count { + type uint16; + description + "Number of normal Areas"; + } + leaf stub-area-count { + type uint16; + description + "Number of Stub and Total Stub Areas"; + } + leaf nssa-area-count { + type uint16; + description + "Number of NSSA Areas"; + } + leaf maximum-interfaces { + type uint32; + description + "Maximum number of interfaces"; + } + leaf as-lsa-flood-list-length { + type uint32; + description + "Length of AS LSAs flood list"; + } + leaf nsf-enabled { + type boolean; + description + "If true, NSF enabled"; + } + leaf last-nsf-time { + type uint32; + description + " Length of time since the last NSF (s)"; + } + leaf nsf-time { + type uint32; + description + "Total time to complete NSF (s)"; + } + leaf redistribution-limit { + type uint32; + description + "The number of redistributed prefixes allowed"; + } + leaf redistribution-threshold { + type uint32; + description + "When the number of redistributed prefixes + reaches this threshold, a warning message is + issued"; + } + leaf redistribution-limit-warn { + type boolean; + description + "If true, only a syslog message is printed when + redistribution prefix limit is reached"; + } + leaf graceful-shutdown-retention-time { + type uint32; + description + "Amount of time routes are retained after + graceful shutdown (s)"; + } + leaf graceful-shutdown-state { + type Gs-state; + description + "State of graceful shutdown"; + } + leaf table-prefix-limit-reached { + type boolean; + description + "If true, prefix limit for table has been + reached"; + } + leaf non-self-lsa-count { + type uint32; + description + "Non self-generated LSA count"; + } + leaf max-lsa-enabled { + type boolean; + description + "If true, max-lsa protection enabled"; + } + leaf max-lsa-limit { + type uint32; + description + "Maximum allowed number of non self-generated + LSAs"; + } + leaf max-lsa-treshold { + type uint32; + description + "max-lsa protection warning threshold"; + } + leaf max-lsa-warning-only { + type boolean; + description + "Warning only when max-lsa reached"; + } + leaf max-lsa-ignore-time { + type uint32; + description + "Time ignoring new LSAs after max-lsa reached"; + } + leaf max-lsa-reset-time { + type uint32; + description + "Time after which LSA protection counter is reset"; + } + leaf max-lsa-ignore-limit { + type uint32; + description + "Max allowed number of entering ignore state"; + } + leaf max-lsa-ignore-count { + type uint32; + description + "How many times ignore state has been entered"; + } + leaf max-lsa-ignore-timer { + type uint32; + description + "Remaining time when ignore timer is running"; + } + leaf max-lsa-reset-timer { + type uint32; + description + "Remaining time when reset timer is running"; + } + leaf context-name { + type string { + length "0..32"; + } + description + "SNMP Context name"; + } + leaf snmp-trap-enabled { + type boolean; + description + "If true, snmp trap is enabled"; + } + leaf ucmp { + type boolean; + description + "If true, UCMP is enabled"; + } + leaf ucmp-prefix-list { + type string; + description + "UCMP Prefix-list"; + } + leaf ucmp-variance { + type int32; + description + "UCMP Variance"; + } + leaf ucmp-delay { + type uint32; + description + "Delay between end of SPF and start of UCMP + calculation (ms)"; + } + leaf microloop-avoidance-type { + type Uloop-avoidance; + description + "Microloop avoidance type configured"; + } + leaf microloop-avoidance-delay { + type uint32; + description + "Microloop delay time after which actual + post convergence paths are given to RIB (s)"; + } + leaf microloop-avoidance-active { + type boolean; + description + "If true, Uloop is active"; + } + leaf microloop-avoidance-delay-expiry { + type uint32; + description + "Remaining time for uloop delay timer + to expire (s)"; + } + leaf lsd-connected { + type boolean; + description + "True if connected to LSD"; + } + leaf lsd-registered { + type boolean; + description + "True if registered with LSD"; + } + leaf lsd-bound { + type boolean; + description + "True if bound to LSD"; + } + leaf lsd-connection-revision { + type uint32; + description + "LSD Connection Revision"; + } + leaf srgb-configured { + type boolean; + description + "True if Segment Routing Global Block configured"; + } + leaf srgb-start { + type uint32; + description + "Segment Routing Global Block start label value"; + } + leaf srgb-end { + type uint32; + description + "Segment Routing Global Block end label value"; + } + leaf srgb-status { + type Ospf-srgb-status; + description + "Segment Routing Global Block allocation status"; + } + leaf sr-strict-spf-cap { + type boolean; + description + "True if Segment Routing Strict-SPF capable"; + } + leaf srlb-start { + type uint32; + description + "Segment Routing Local Block start label value"; + } + leaf srlb-end { + type uint32; + description + "Segment Routing Local Block end label value"; + } + leaf srlb-status { + type Ospf-srlb-status; + description + "Segment Routing Local Block allocation status"; + } + leaf spf-suspended { + type boolean; + description + "If true, SPF is currently suspended"; + } + leaf redistribution-count { + type uint32; + description + "Current number of prefixes redistributed"; + } + list maximum-metric { + description + "Max-metric list"; + uses OSPF-SH-MAX-METRIC; + } + list redistribution { + description + "Redistribution list"; + uses OSPF-SH-REDIST; + } + } + + grouping OSPF-SH-AREA-RANGE { + description + "OSPF Area Range Information"; + leaf range-prefix { + type inet:ipv4-address; + description + "IP prefix for summarization"; + } + leaf range-mask { + type inet:ipv4-address; + description + "Network mask"; + } + leaf cost { + type uint32; + description + "Cost"; + } + leaf advertise-flag { + type boolean; + description + "Whether to advertise Summary LSAs for this range"; + } + } + + grouping OSPF-SH-AREA { + description + "OSPF Area Summary Information"; + leaf area-id-string { + type string { + length "0..16"; + } + description + "Area ID string"; + } + leaf backbone-area-active { + type boolean; + description + "If true, Backbone area is active"; + } + leaf area-interface-count { + type uint16; + description + "Number of interfaces in the area"; + } + leaf area-stub { + type boolean; + description + "If true, stub area"; + } + leaf area-total-stub { + type boolean; + description + "If true, totally stubby area"; + } + leaf stub-default-cost { + type uint32; + description + "Default cost for Stub or NSSA area"; + } + leaf area-nssa { + type boolean; + description + "If true, area is a NSSA"; + } + leaf nssa-no-redistribution { + type boolean; + description + "If true, No redistribution into this NSSA area"; + } + leaf nssa-translate { + type boolean; + description + "If true, perform 7/5 translation"; + } + leaf nssa-translate-always { + type boolean; + description + "If true, perform 7/5 translation always"; + } + leaf nssa-default { + type boolean; + description + "If true, generate NSSA default route"; + } + leaf te-enabled { + type boolean; + description + "If true, MPLS-TE enabled"; + } + leaf te-topology-version { + type uint32; + description + "TE area topology version number"; + } + leaf external-out { + type boolean; + description + "If true, advertise intra-area prefixes as + external"; + } + leaf summary-in { + type boolean; + description + "If true, advertise redistributedprefixes as + summary"; + } + leaf segment-routing { + type Sr-dp; + description + "If true, Segment Routing enabled"; + } + leaf sr-strict-spf-cap { + type boolean; + description + "If true, All routers in Area are SR Strict-SPF + Capable"; + } + leaf sr-strict-spfsids-available { + type boolean; + description + "If true, All routers in Area have SR Strict-SPF + SIDs"; + } + leaf sr-microloop-avoidance-active { + type boolean; + description + "If true, Segment routing Uloop avoidance + is currently active in this area"; + } + leaf sr-microloop-avoidance-event-type { + type Sr-uloop-event; + description + "Event for which SR uloop is triggered + Link Up/Link Down"; + } + leaf sr-microloop-avoidance-near-end-id { + type inet:ipv4-address; + description + "Link State ID of the near end + of the topology change"; + } + leaf sr-microloop-avoidance-far-end-id { + type inet:ipv4-address; + description + "Link State ID of the far end + of the topology change"; + } + leaf sr-microloop-avoidance-pseudonode-id { + type inet:ipv4-address; + description + "Link State ID of the pseudo node, + if the change is on a broadcast link"; + } + leaf authentication-type { + type Authentication; + description + "Authentication type used for the area"; + } + leaf spf-count { + type uint32; + description + "Number of SPF calculations run"; + } + leaf area-policy-in { + type boolean; + description + "If true, inbound policy is configured"; + } + leaf area-policy-in-name { + type string; + description + "Inbound summary lsa filtering policy"; + } + leaf area-policy-out { + type boolean; + description + "If true, outbound policy is configured"; + } + leaf area-policy-out-name { + type string; + description + "Outbound summary lsa filtering policy"; + } + leaf area-lsa-count { + type uint32; + description + "Number of LSAs in the Area"; + } + leaf area-lsa-checksum { + type uint32; + description + "Sum of all area LSAs checksum"; + } + leaf area-opaque-lsa-count { + type uint32; + description + "Number of Opaque LSAs in the Area"; + } + leaf area-opaque-lsa-checksum { + type uint32; + description + "Sum of opaque LSA checksums"; + } + leaf area-dc-bitless-lsa-count { + type uint32; + description + "Number of LSA with demand circuit bit not set"; + } + leaf indication-lsa-count { + type uint32; + description + "Number of indication LSAs"; + } + leaf dna-lsa-count { + type uint32; + description + "Number of DoNotAge LSAs"; + } + leaf flood-list-length { + type uint32; + description + "Number of LSAs which need to be flooded"; + } + leaf area-lfa-interface-count { + type uint32; + description + "Number of LFA enabled interfaces"; + } + leaf area-per-prefix-lfa-interface-count { + type uint32; + description + "Number of Per Prefix LFA enabled interfaces"; + } + leaf area-lfa-revision { + type uint32; + description + "Area LFA revision"; + } + leaf area-adj-stag-num-nbr-forming { + type uint16; + description + "Num of nbrs currently forming"; + } + leaf area-num-nbr-full { + type uint16; + description + "Num of full nbrs in area"; + } + list area-range { + description + "List of ranges to summarize"; + uses OSPF-SH-AREA-RANGE; + } + } + + grouping OSPF-SH-REDIST { + description + "OSPF Redistribution Information"; + container redistribution-protocol { + description + "Protocol Information"; + uses OSPF-SH-REDIST-PROTO; + } + leaf metric-flag { + type boolean; + description + "If true, Metric configured"; + } + leaf metric { + type uint32; + description + "Route metric"; + } + leaf rib-metric-flag { + type boolean; + description + "If true, RIB metric is used"; + } + leaf metric-type { + type uint32; + description + "Redistribute as External type 1 or 2 "; + } + leaf tag-flag { + type boolean; + description + "If true, tag is configured"; + } + leaf tag { + type uint32; + description + "Route Tag"; + } + leaf keep-bgp-med { + type boolean; + description + "If true, BGP MED value is preserved"; + } + leaf keep-bgp-def-info { + type boolean; + description + "If true, BGP metric and metric type are + preserved for default route"; + } + leaf redist-summary { + type boolean; + description + "If true, routes will be redistributed as Summary + LSAs instead of External LSAs"; + } + leaf policy-name { + type string; + description + "Name of applied policy"; + } + leaf classless { + type boolean; + description + "Whether to use CIDR"; + } + leaf nssa-only { + type boolean; + description + "To NSSA areas only"; + } + } + + grouping OSPF-SH-PROTOCOL { + description + "OSPF Protocol Information"; + leaf protocol-router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf protocol-distance { + type uint32; + description + "Administrative distance"; + } + leaf administrative-distance-inter-area { + type uint32; + description + "Administrative Distance for Inter Area routes"; + } + leaf administrative-distance-external { + type uint32; + description + "Administrative Distance for External routes"; + } + leaf protocol-nsf { + type boolean; + description + "True if NSF enabled"; + } + leaf dist-list-in { + type string; + description + "Distribute List In"; + } + } + + grouping OSPF-SH-PROTO-INTF { + description + "OSPF Protocol Interface Information"; + leaf protocol-interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf protocol-authentication-type { + type Authentication; + description + "Authentication type"; + } + leaf protocol-interface-dist-list-in { + type string; + description + "Distribute List In"; + } + } + + grouping OSPF-SH-PROTO-AREA { + description + "OSPF Protocol Area Information"; + leaf protcol-area { + type string { + length "0..16"; + } + description + "Area ID string in decimal and dotted-decimal + format"; + } + leaf protocol-mpls { + type boolean; + description + "MPLS-TE enabled"; + } + leaf protocol-area-dist-list-in { + type string; + description + "Distribute List In"; + } + list protocol-interface { + description + "Interface list"; + uses OSPF-SH-PROTO-INTF; + } + } + + grouping OSPF-SH-BR-PATH { + description + "OSPF Border Router Path"; + leaf border-router-route-type { + type Ospf-route; + description + "Whether it is an intra-area or inter-area route"; + } + leaf border-router-route-metric { + type uint32; + description + "Metric"; + } + leaf border-router-next-hop { + type inet:ipv4-address; + description + "Next hop address"; + } + leaf border-router-next-hop-interface-name { + type xr:Interface-name; + description + "Next hop Interface"; + } + leaf border-router-type { + type Ospf-br; + description + "Border router type, whether it is an ABR, ASBR + or both"; + } + leaf border-router-area-id { + type string { + length "0..16"; + } + description + "Area string in decimal or dotted-decimal format"; + } + leaf spf-version { + type uint64; + description + "SPF run instance count"; + } + } + + grouping OSPF-SH-BORDER-ROUTER { + description + "OSPF Border Router"; + leaf border-router-id-xr { + type inet:ipv4-address; + description + "Router ID of Border Router"; + } + list border-router-path { + description + "List of Border Router paths"; + uses OSPF-SH-BR-PATH; + } + } + + grouping OSPF-SH-IF-ADJ-SID { + description + "OSPF Interface Adjacency SID"; + leaf adj-sid-label { + type uint32; + description + "Adjacency SID Label"; + } + leaf protected-adj-sid { + type boolean; + description + "Adjacency SID Protection"; + } + leaf adj-sid-is-active { + type boolean; + description + "Adj sid is allocated to a neighbor"; + } + leaf adj-sid-inactive-reason { + type Ospf-sr-adj-sid-inactive-reason; + description + "Adjacency SID Inactive Reason"; + } + } + + grouping OSPF-SH-SEC-ADDR { + description + "OSPF Secondary Address"; + leaf secondary-addr { + type inet:ipv4-address; + description + "Secondary Address Type"; + } + leaf secondary-prefix { + type uint32; + description + "Secondary Prefix Length"; + } + } + + grouping OSPF-SH-IPFRR-TB { + description + "OSPF IPFRR Tiebreakers"; + leaf tiebreaker-type { + type Ipfrr-tbrkr; + description + "Tiebreaker Type, whether LC-Disjoint, Node + Protecting etc"; + } + leaf tiebreaker-index { + type uint32; + description + "Tiebreaker Index corresponding to the tiebreaker + type"; + } + } + + grouping OSPF-SH-INTERFACE-UP { + description + "OSPF Interface Up-only Information"; + leaf wait-time { + type uint32; + description + "Wait time for DR/BDR selection (s)"; + } + leaf interface-area-flood-index { + type uint32; + description + "Area scope LSAs flood index"; + } + leaf interface-as-flood-index { + type uint32; + description + "AS scope LSAs flood index"; + } + leaf interface-flood-length { + type uint32; + description + "Flood queue length"; + } + leaf interface-area-next-flood { + type uint32; + description + "Next LSA to flood (Area scope)"; + } + leaf interface-area-next-flood-index { + type uint32; + description + "Index of next LSA to flood (Area scope)"; + } + leaf interface-as-next-flood { + type uint32; + description + "Next LSA to flood (AS scope)"; + } + leaf interface-as-next-flood-index { + type uint32; + description + "Index of next LSA to flood (AS scope)"; + } + leaf flood-scan-length { + type uint32; + description + "Length of flood queue in the last attempt"; + } + leaf maximum-flood-length { + type uint32; + description + "Maximum length of the flood queue"; + } + leaf last-flood-time { + type uint32; + description + "Time taken for Last flood (ms)"; + } + leaf maximum-flood-time { + type uint32; + description + "Maximum time taken for flood (ms)"; + } + leaf interface-flood-pacing-timer { + type uint32; + description + "Time until next flood pacing timer (ms)"; + } + leaf interface-neighbor-count { + type uint16; + description + "Total number of Neighbors"; + } + leaf suppress-hello-count { + type uint16; + description + "Number of neighbors for which hellos are + suppressed"; + } + leaf interface-authentication-type { + type Authentication; + description + "Authentication type"; + } + leaf youngest-md-key { + type boolean; + description + "If true, MD key is configured"; + } + leaf old-md5-key-neighbor-count { + type uint32; + description + "Number of neighbors using the old key (if + rollover in progress)"; + } + leaf youngest-md-key-id { + type uint16; + description + "Youngest MD key ID"; + } + leaf keychain-name { + type string { + length "0..255"; + } + description + "Name of Keychain used in this interface"; + } + leaf keychain-key-conf { + type boolean; + description + "If true, Keychain key is configured"; + } + leaf keychain-id { + type uint64; + description + "ID of the keychain used in this interface"; + } + leaf keychain-alg { + type Ospf-crytographic-algo; + description + "Keychain cryptographic-algorithm used in this + interface"; + } + list md-keys { + description + "List of old MD keys"; + leaf entry { + type uint16; + description + "List of old MD keys"; + } + } + } + + grouping OSPF-SH-INTERFACE-BFD { + description + "Interface BFD information"; + leaf bfd-intf-enable-mode { + type uint32; + description + "BFD enable mode - Default/Strict"; + } + leaf interval { + type uint32; + description + "BFD interval (ms)"; + } + leaf detection-multiplier { + type uint32; + description + "BFD multiplier value"; + } + } + + grouping OSPF-SH-INTERFACE-NBR { + description + "OSPF Interface Neighbor Information"; + leaf interface-neighbor-id { + type inet:ipv4-address; + description + "Neighbor Router ID"; + } + leaf interface-neighbor-cost { + type uint32; + description + "Cost of link to neighbor"; + } + leaf neighbor-dr { + type boolean; + description + "If true, Designated router"; + } + leaf neighbor-bdr { + type boolean; + description + "If true, Backup designated router"; + } + leaf suppress-hello { + type boolean; + description + "If true, hellos suppressed"; + } + } + + grouping OSPF-SH-INTERFACE { + description + "OSPF Interface Information"; + container interface-bfd-information { + description + "BFD information"; + uses OSPF-SH-INTERFACE-BFD; + } + container active-interface { + description + "Active interface details"; + uses OSPF-SH-INTERFACE-UP; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Name of the interface"; + } + leaf interface-state { + type Interface-state; + description + "State of the interface"; + } + leaf interface-line-state { + type boolean; + description + "If true, line protocol is up"; + } + leaf interface-address { + type inet:ipv4-address; + description + "IPv4 Address of the interface"; + } + leaf interface-mask { + type uint32; + description + "Interface IP Mask"; + } + leaf interface-area { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted-decimal + format"; + } + leaf interface-sid { + type uint32; + description + "Interface SID"; + } + leaf interface-sid-php-off { + type boolean; + description + "SID PHP Off"; + } + leaf interface-sid-n-flag-clear { + type boolean; + description + "SID N-Flag Clear"; + } + leaf interface-strict-spf-sid { + type uint32; + description + "Interface Strict-SPF SID"; + } + leaf interface-strict-spf-sid-php-off { + type boolean; + description + "Strict-SPF SID PHP Off"; + } + leaf interface-strict-spf-sid-n-flag-clear { + type boolean; + description + "Strict-SPF SID N-Flag Clear"; + } + leaf interface-router-id { + type inet:ipv4-address; + description + "Interface Router ID"; + } + leaf network-type { + type Interface; + description + "Network type of the interface, whether P2P, + Broadcast, NBMA or P2MP"; + } + leaf ip-mtu { + type uint16; + description + "IP MTU"; + } + leaf maximum-packet-size { + type uint16; + description + "Maximum size of the packet"; + } + leaf interface-tunnel-flags { + type uint32; + description + "Flags related to Tunnel Interface"; + } + leaf interface-link-cost { + type uint16; + description + "Link cost/Metric of the interface"; + } + leaf interface-bandwidth { + type uint32; + description + "Bandwidth of the Interface"; + } + leaf cfg-cost-fallback { + type boolean; + description + "If true, cost fallback is configured"; + } + leaf interface-cost-fallback { + type uint16; + description + "Interface fallback cost"; + } + leaf cost-fallback-active { + type boolean; + description + "If true, cost fallback is active"; + } + leaf cfg-delay-igp-cost-fallback { + type boolean; + description + "If true,delay igp cost fallback is configured"; + } + leaf interface-igp-cost-fallback { + type uint16; + description + "Interface fallback cost"; + } + leaf dealy-igp-cost-fallback-active { + type boolean; + description + "If true, cost fallback is active"; + } + leaf cfg-delay-te-cost-fallback { + type boolean; + description + "If true,delay te cost fallback is configured"; + } + leaf interface-delay-te-cost-fallback { + type uint32; + description + "Interface fallback cost"; + } + leaf interface-delay-te-cost-fallback-flex { + type uint32; + description + "Interface fallback cost for flex algo te metric"; + } + leaf dealy-te-cost-fallback-active { + type boolean; + description + "If true, cost fallback is active"; + } + leaf configured-ldp-sync { + type boolean; + description + "If true, configured as LDP sync"; + } + leaf configured-ldp-sync-igp-shortcuts { + type boolean; + description + "If true, sync igp shortcuts"; + } + leaf interface-ldp-sync { + type boolean; + description + "If true, interface LDP sync is achieved"; + } + leaf configured-demand-circuit { + type boolean; + description + "Whether this interface is configured as a demand + circuit"; + } + leaf interface-demand-circuit { + type boolean; + description + "Whether this interface is running as a demand + circuit"; + } + leaf interface-dc-bitless-lsa-count { + type uint32; + description + "Number of LSAs with demand circuit bit not set + for the area in which the interface is running"; + } + leaf transmission-delay { + type uint16; + description + "Interface Transmission delay"; + } + leaf ospf-interface-state { + type Ospf-interface-state; + description + "Interface OSPF state"; + } + leaf interface-priority { + type uint8; + description + "DR priority of the interface"; + } + leaf designated-router { + type boolean; + description + "If true, there is a Designated Router for this + network"; + } + leaf designated-router-id { + type inet:ipv4-address; + description + "Router id of Designated router of this network"; + } + leaf designated-router-address { + type inet:ipv4-address; + description + "Interface address of the Designated Router of + this network"; + } + leaf backup-designated-router { + type boolean; + description + "If true, there is a Backup Designated Router for + this network"; + } + leaf backup-designated-router-id { + type inet:ipv4-address; + description + "Router id of Backup Designated Router of this + network"; + } + leaf backup-designated-router-address { + type inet:ipv4-address; + description + "interface address of the Backup Designated + Router of this network"; + } + leaf network-lsa-flush-timer { + type uint32; + units "second"; + description + "The amount of time in seconds before flush timer + for old network LSA expires"; + } + leaf interface-lsa-filter { + type boolean; + description + "Filter is configured for out going LSAs"; + } + leaf hello-interval { + type uint32; + description + "Configured hello interval (s)"; + } + leaf hello-interval-ms { + type uint32; + description + "Configured hello interval (ms)"; + } + leaf dead-interval { + type uint32; + description + "Configured dead interval (s)"; + } + leaf wait-interval { + type uint32; + description + "Configured wait interval (s)"; + } + leaf interface-retransmission-interrval { + type uint32; + description + "Configured retransmit interval (s)"; + } + leaf interface-nsf-enabled { + type boolean; + description + "If true, NSF is enabled"; + } + leaf interface-nsf { + type boolean; + description + "If true, NSF restart in progress on this + interface"; + } + leaf interface-last-nsf { + type uint32; + description + "Time since last NSF restart (s)"; + } + leaf passive-interface { + type boolean; + description + "If true, passive interface"; + } + leaf next-hello-time { + type uint32; + description + "Time until next Hello (s)"; + } + leaf next-hello-time-ms { + type uint32; + description + "Time until next Hello (ms)"; + } + leaf ttl-security-enabled { + type boolean; + description + "TTL security enabled on the interface"; + } + leaf ttl-security-hop-count { + type uint32; + description + "TTL security hop count for this interface"; + } + leaf interfaceis-madj { + type boolean; + description + "If true, interface is multi-area"; + } + leaf interface-madj-count { + type uint16; + description + "Total number of multi-area"; + } + leaf prefix-suppress-primary-addresses { + type boolean; + description + "whether Prefix Suppression for primary addresses + is enabled"; + } + leaf prefix-suppress-secondary-addresses { + type boolean; + description + "Whether Prefix Suppression for secondary + addresses is enabled"; + } + leaf is-loopback-stub-network { + type boolean; + description + "If true, loopback interface is advertised as a + stub network"; + } + leaf interface-ack-list-count { + type uint32; + description + "Ack List Count"; + } + leaf interface-ack-list-high-watermark { + type uint32; + description + "Ack List High Watermark"; + } + leaf registered-for-link-down-fast-detection { + type boolean; + description + "Whether this interface is registered for Link + Down Fast Detection"; + } + leaf fast-detect-hold-down-time { + type uint32; + description + "Hold-down time in ms for fast-detect event"; + } + leaf interface-fast-detect-hold-down { + type boolean; + description + "Link in hold-down state due to fast detect event"; + } + leaf fast-detect-hold-down-time-remaining { + type uint32; + description + "Remaining hold down time in ms"; + } + leaf fast-reroute-type { + type Ipfrr; + description + "IP Fast Reroute Type"; + } + leaf fast-reroute-topology-independent-lfa { + type boolean; + description + "Topology Independent LFA"; + } + leaf srlg-default-weight { + type uint32; + description + "SRLG Default weight if not configured + specifically for this SRLG"; + } + leaf interface-unnum { + type xr:Interface-name; + description + "Unnumbered interface"; + } + leaf interface-forw { + type boolean; + description + "Forward reference interface"; + } + leaf interface-pri-labels { + type uint8; + description + "Max number of primary labels"; + } + leaf interface-bkp-labels { + type uint8; + description + "Max number of backup labels"; + } + leaf interface-srte-labels { + type uint8; + description + "Max number of SRTE labels"; + } + leaf interface-srat-cap { + type uint8; + description + "SRTE automatic path capability"; + } + leaf pm-delay-set { + type boolean; + description + "PerfMeas Delay values available"; + } + leaf link-delay-avg { + type uint32; + description + "PerfMeas Average Link Delay"; + } + leaf link-delay-min { + type uint32; + description + "PerfMeas Minimum Link Delay"; + } + leaf link-delay-max { + type uint32; + description + "PerfMeas Maximum Link Delay"; + } + leaf pm-dealy-average-a-bit { + type boolean; + description + "If true, PM delay avg bit is set"; + } + leaf pm-dealy-min-max-a-bit { + type boolean; + description + "If true, PM delay min_max bit is set"; + } + leaf link-delay-avg-raw { + type uint32; + description + "PerfMeas Average Link Delay Raw"; + } + leaf link-delay-min-raw { + type uint32; + description + "PerfMeas Minimum Link Delay Raw"; + } + leaf link-delay-max-raw { + type uint32; + description + "PerfMeas Maximum Link Delay Raw"; + } + leaf link-delay-norm-intval { + type uint32; + description + "PerfMeas Delay Norm Interval"; + } + leaf link-delay-norm-offset { + type uint32; + description + "PerfMeas Delay Norm Offset"; + } + leaf link-delay-var { + type uint32; + description + "PerfMeas Link Delay Variance"; + } + leaf pm-loss-set { + type boolean; + description + "PerfMeas Link Loss values available"; + } + leaf link-loss { + type uint32; + description + "PerfMeas Link Loss"; + } + leaf pmbw-util-set { + type boolean; + description + "PerfMeas BW Util values available"; + } + leaf total-bandwidth { + type uint64; + description + "PerfMeas Total Bandwidth"; + } + leaf rsvpte-bandwidth { + type uint64; + description + "PerfMeas RSVP-TE Bandwidth"; + } + leaf remote-lfa { + type uint8; + description + "Remote LFA"; + } + leaf srte-metric-set { + type boolean; + description + "SRTE Metric available"; + } + leaf srte-metric { + type uint32; + description + "SRTE Metric"; + } + leaf srte-app-weight { + type uint32; + description + "SRTE App Weight"; + } + leaf srte-ext-admin-group-set { + type boolean; + description + "SRTE Ext. Admin Group available"; + } + leaf interface-weight { + type uint32; + description + "Configured Interface weight"; + } + leaf if-rib-l-csync-needed { + type boolean; + description + "rib lc sync needed"; + } + leaf if-rib-l-csync { + type boolean; + description + "rib lc sync state"; + } + leaf conditional-advertising-enabled { + type boolean; + description + "If Conditional advertising based on route-policy + is enabled"; + } + leaf conditional-advertise-policy-name { + type string; + description + "Name of the applied policy for Conditional + advertising"; + } + leaf conditional-advertising-result { + type boolean; + description + "Result of the policy applied for Conditional + advertising"; + } + leaf if-sr-forwarding-mpls { + type boolean; + description + "Segment Routing Forwarding MPLS enabled"; + } + leaf te-metric-flex { + type uint32; + description + "TE Metric for flex algo"; + } + list srlg { + description + "SRLG Values"; + leaf entry { + type uint32; + description + "SRLG Values"; + } + } + list srlg-weight { + description + "SRLG Weight"; + leaf entry { + type uint32; + description + "SRLG Weight"; + } + } + list srtete-ext-admin-group { + description + "SRTE Ext. Admin Group"; + leaf entry { + type uint32; + description + "SRTE Ext. Admin Group"; + } + } + list interface-neighbor { + description + "Information for neighbors on the interface"; + uses OSPF-SH-INTERFACE-NBR; + } + list interface-madj { + description + "Information for multi-area on the interface"; + uses OSPF-SH-INTERFACE-MADJ; + } + list ipfrr-tiebreakers { + description + "IPFRR-Tiebreakers list"; + uses OSPF-SH-IPFRR-TB; + } + list ip-sec-addr { + description + "Secondary IP address list"; + uses OSPF-SH-SEC-ADDR; + } + list sr-adj-sid { + description + "SR Configured Adjacency SIDs"; + uses OSPF-SH-IF-ADJ-SID; + } + } + + grouping OSPF-SH-VLINK-NEIGHBOR { + description + "Virtual Link Neighbor Information"; + container virtual-link-retransmissoin { + description + "Neighbor retransmission info"; + uses OSPF-SH-NEIGHBOR-RETRANS; + } + leaf virtual-link-suppress-hello { + type boolean; + description + "If true Hellos suppressed"; + } + leaf virtual-link-state { + type Neighbor-state; + description + "Adjacency state"; + } + } + + grouping OSPF-SH-VIRTUAL-LINKS { + description + "OSPF Virtual Link"; + container virtual-link-neighbor { + description + "Neighbor information"; + uses OSPF-SH-VLINK-NEIGHBOR; + } + leaf virtual-link-name-xr { + type string; + description + "Name of the Virtual link"; + } + leaf virtual-link-neighbor-id { + type inet:ipv4-address; + description + "Neighbor on other end of this virtual link"; + } + leaf virtual-link-state { + type Ospf-interface-state; + description + "OSPF interface state for the virtual link"; + } + leaf virtual-link-demand-circuit { + type boolean; + description + "If true, the link runs as demand circuit"; + } + leaf virtual-link-dc-bitless-lsa { + type uint32; + description + "Number of LSA's with demand circuit bit not set"; + } + leaf transit-area { + type string; + description + "Area id of the Transit area"; + } + leaf virtual-link-interface-name { + type xr:Interface-name; + description + "Interface on which this virtual link is formed"; + } + leaf virtual-link-cost { + type uint16; + description + "Cost of the virtual link"; + } + leaf virual-link-transmission-delay { + type uint16; + units "second"; + description + "Transmission delay in seconds"; + } + leaf virtual-link-hello-interval { + type uint32; + description + "Hello interval (s)"; + } + leaf virtual-link-hello-interval-ms { + type uint32; + description + "Hello interval (ms)"; + } + leaf virtual-link-dead-interval { + type uint32; + description + "Dead interval (s)"; + } + leaf virtual-link-wait-interval { + type uint32; + description + "Wait interval (s)"; + } + leaf virtaul-link-retransmission-interval { + type uint32; + description + "Retransmission interval (s)"; + } + leaf virtual-link-next-hello { + type uint32; + description + "Time until next hello (s)"; + } + leaf virtual-link-next-hello-ms { + type uint32; + description + "Time until next hello (ms)"; + } + leaf virtual-link-passive { + type boolean; + description + "If true, interface is passive"; + } + leaf virtual-link-authentication-type { + type Authentication; + description + "Authentication type"; + } + leaf virtual-link-youngest-md-key { + type boolean; + description + "If true, MD key configured"; + } + leaf virtual-link-youngest-md-key-id { + type uint16; + description + "Youngest MD key ID"; + } + leaf virtual-link-old-md-key-count { + type uint32; + description + "Number of neighbors still using the old key + (rollover in progress)"; + } + leaf keychain-name { + type string { + length "0..255"; + } + description + "Virtual Link Keychain Name"; + } + leaf virtual-link-keychain-key-conf { + type boolean; + description + "If true, Keychain key is configured"; + } + leaf virtual-link-keychain-id { + type uint64; + description + "Virtual Link Keychain ID"; + } + leaf virtual-link-keychain-alg { + type Ospf-crytographic-algo; + description + "Virtual Link Keychain cryptographic-algorithm"; + } + leaf virtual-link-nsf-enabled { + type boolean; + description + "If true, NSF enabled"; + } + leaf virtual-link-nsf { + type boolean; + description + "If true, NSF restart in progress on the virtual + link"; + } + leaf virtual-link-last-nsf { + type uint32; + units "second"; + description + "Time in seconds since last NSF"; + } + list virtual-link-md-key { + description + "List of old MD keys (if any)"; + leaf entry { + type uint16; + description + "List of old MD keys (if any)"; + } + } + } + + grouping OSPF-SH-INTERFACE-MADJ { + description + "OSPF Interface Multi-Area Information"; + leaf interface-area { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted-decimal + format"; + } + leaf madj-area-id { + type uint32; + description + "Area ID"; + } + leaf interface-neighbor-count { + type uint16; + description + "Number of Neighbors"; + } + leaf interface-adj-neighbor-count { + type uint16; + description + "Total number of Adjacent Neighbors"; + } + leaf interface-link-cost { + type uint16; + description + "Cost/Metric of the Interface link"; + } + leaf ospf-interface-state { + type Ospf-interface-state; + description + "Interface OSPF state"; + } + } + + grouping OSPF-SH-IF-BRIEF { + description + "OSPF Interface Brief Information"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Name of the interface on which OSPF is enabled"; + } + leaf interface-area { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted-decimal + format"; + } + leaf interface-address { + type inet:ipv4-address; + description + "IPv4 address of the Interface"; + } + leaf interface-mask { + type uint32; + description + "Interface IP Mask"; + } + leaf interface-link-cost { + type uint16; + description + "link cost/metric of the interface"; + } + leaf ospf-interface-state { + type Ospf-interface-state; + description + "Interface OSPF state"; + } + leaf interface-fast-detect-hold-down { + type boolean; + description + "whether the interface is in fast detect hold + down state"; + } + leaf interface-neighbor-count { + type uint16; + description + "Total number of Neighbors"; + } + leaf interface-adj-neighbor-count { + type uint16; + description + "Total number of Adjacent Neighbors"; + } + leaf interfaceis-madj { + type boolean; + description + "If true, interface is multi-area"; + } + leaf interface-madj-count { + type uint16; + description + "Total number of multi-area"; + } + list interface-madj { + description + "Information for multi-area on the interface"; + uses OSPF-SH-INTERFACE-MADJ; + } + } + + grouping OSPF-SH-ROUTE-EXT-SID { + description + "Algo label information received from RIB"; + leaf flex-algorithm { + type uint8; + description + "Flex-algo number"; + } + leaf label { + type uint32; + description + "Label specific to the algo"; + } + leaf metric { + type uint32; + description + "Metric specific to the algo"; + } + } + + grouping OSPF-SH-ROUTE-EXTENDED-COMM { + description + "OSPF External Route Extended Community + Information"; + leaf extended-community-domain-id-value { + type yang:hex-string; + description + "Domain ID value"; + } + leaf extended-communityl-domain-id-type { + type uint16; + description + "Domain ID type"; + } + leaf extended-community-area-id { + type uint32; + description + "Area id"; + } + leaf extended-community-router-id { + type inet:ipv4-address; + description + "Router id"; + } + leaf extended-community-route-type { + type uint8; + description + "OSPF route type, whether intra-area, inter-area + or external route"; + } + leaf extended-community-options { + type uint8; + description + "Route Options"; + } + } + + grouping OSPF-SH-REDIST-PROTO { + description + "Redistributed protocol instance"; + leaf protocol-type { + type Redist-protocol; + description + "ProtocolType"; + } + leaf isis-instance-id { + when "../protocol-type = 'mgmt-rib-protocol-isis'" { + description + "../ProtocolType = 'MGMT_RIB_PROTOCOL_ISIS'"; + } + type String1; + description + "ISIS instance identifier"; + } + leaf ospf-process-id { + when "../protocol-type = 'mgmt-rib-protocol-ospf'" { + description + "../ProtocolType = 'MGMT_RIB_PROTOCOL_OSPF'"; + } + type String1; + description + "OSPF process identifier"; + } + leaf bgp-as-number { + when "../protocol-type = 'mgmt-rib-protocol-bgp'" { + description + "../ProtocolType = 'MGMT_RIB_PROTOCOL_BGP'"; + } + type String1; + description + "BGP Autonomous System Number"; + } + leaf eigrp-as-number { + when "../protocol-type = 'mgmt-rib-protocol-eigrp'" { + description + "../ProtocolType = 'MGMT_RIB_PROTOCOL_EIGRP'"; + } + type String1; + description + "Autonomous System Number"; + } + leaf connected-instance { + when "../protocol-type = 'mgmt-rib-protocol-connected'" { + description + "../ProtocolType = 'MGMT_RIB_PROTOCOL_CONNECTED'"; + } + type String1; + description + "Name of the Connected instance"; + } + } + + grouping OSPF-SH-ROUTE-EXT { + description + "OSPF External Route Information"; + container route-information { + description + "Route details"; + uses OSPF-SH-TOPOLOGY; + } + container protocol-name { + description + "Name of protocol from which the external route + was redistributed"; + uses OSPF-SH-REDIST-PROTO; + } + container route-extended-community { + description + "Extended communities in the route"; + uses OSPF-SH-ROUTE-EXTENDED-COMM; + } + list route-label { + description + "List of labels in other algorithms"; + uses OSPF-SH-ROUTE-EXT-SID; + } + } + + grouping OSPF-SH-ROUTE-SUMM-COMMON { + description + "OSPF Route Summary Common Information"; + leaf external-type1s { + type uint32; + description + "External type 1 count"; + } + leaf external-type2s { + type uint32; + description + "External type 2 count"; + } + leaf external-nssa-type1s { + type uint32; + description + "External NSSA type 1 count"; + } + leaf external-nssa-type2s { + type uint32; + description + "External NSSA type 2 count"; + } + leaf inter-areas { + type uint32; + description + "Inter-area count"; + } + leaf intra-areas { + type uint32; + description + "Intra-area count"; + } + leaf total { + type uint32; + description + "Total count"; + } + } + + grouping OSPF-SH-ROUTE-SUMMARY { + description + "OSPF Route Summary Information"; + container failure-time { + description + "Last time failed"; + uses OSPF-SH-TIME; + } + container common { + description + "OSPF route summary Information"; + uses OSPF-SH-ROUTE-SUMM-COMMON; + } + leaf failures { + type uint32; + description + "RIB failure count"; + } + leaf failure-address { + type inet:ipv4-address; + description + "Last failed address"; + } + } + + grouping OSPF-SH-TOP-PATH { + description + "OSPF Route Path Information"; + container sr-microloop-avoidance-path { + description + "SR Microloop avoidance Path Info"; + uses OSPF-SH-SR-ULOOP-PATH; + } + leaf route-interface-name { + type xr:Interface-name; + description + "Next hop Interface"; + } + leaf route-interface-snmp-index { + type uint32; + description + "SNMP index of th Interface"; + } + leaf route-next-hop-address { + type inet:ipv4-address; + description + "Nexthop IP address"; + } + leaf route-source { + type inet:ipv4-address; + description + "IP address of source of route"; + } + leaf route-lsaid { + type inet:ipv4-address; + description + "LSA ID, see RFC2328"; + } + leaf route-path-is-mcast-intact { + type boolean; + description + "Multicast-intact path"; + } + leaf route-path-is-ucmp-path { + type boolean; + description + "UCMP path"; + } + leaf route-metric { + type uint32; + description + "Metric"; + } + leaf lsa-type { + type uint8; + description + "LSA type, see RFC2328 etc."; + } + leaf area-id { + type uint32; + description + "Area ID"; + } + leaf area-format { + type boolean; + description + "Area format IP or uint32"; + } + leaf route-path-id { + type uint32; + description + "Path ID of path"; + } + leaf route-path-is-rsvp-te-path { + type boolean; + description + "RSVP-TE path"; + } + leaf route-path-is-sr-te-path { + type boolean; + description + "SR-TE path"; + } + leaf route-path-is-sr-excl-path { + type boolean; + description + "SR Excl TE path"; + } + leaf route-path-is-sr-te-sspf-path { + type boolean; + description + "SR-TE SSPF path"; + } + leaf weight { + type uint32; + description + "Path Weight"; + } + list neighbor-next-hop { + description + "NeighborNextHop"; + uses OSPF-SH-NNH-INFO; + } + } + + grouping OSPF-SH-TOPOLOGY { + description + "OSPF Route Information"; + container route-info { + description + "Route information"; + uses OSPF-SH-TOP-COMMON; + } + leaf route-prefix { + type inet:ipv4-address; + description + "IPv4 Route Prefix"; + } + leaf route-prefix-length { + type uint32; + description + "Prefix length"; + } + leaf route-metric { + type uint32; + description + "Metric"; + } + leaf route-type { + type Ospf-route; + description + "OSPF route type, whether intra-area, inter-area + or external route"; + } + leaf route-connected { + type boolean; + description + "If true, connected route"; + } + list route-path { + description + "List of paths to this route"; + uses OSPF-SH-TOP-PATH; + } + } + + grouping OSPF-SH-NNH-INFO { + description + "OSPF Neighbor NextHop Information"; + leaf neighbor-next-hop-value-type { + type Ospf-sh-nnh-val-types; + description + "NeighborNextHopValueType"; + } + leaf neighbor-next-hop-ip-addr { + when "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-ip-addr'" { + description + "../NeighborNextHopValueType = + 'MGMT_NNH_VAL_TYPE_IP_ADDR'"; + } + type inet:ipv4-address; + description + "Neighbor NextHop IP Address"; + } + leaf neighbor-next-hop-intf-index { + when "../neighbor-next-hop-value-type = 'mgmt-nnh-val-type-if-index'" { + description + "../NeighborNextHopValueType = + 'MGMT_NNH_VAL_TYPE_IF_INDEX'"; + } + type uint32; + description + "Neighbor NextHop Interface Index"; + } + } + + grouping OSPF-SH-SR-ULOOP-PATH { + description + "OSPF Route SR Uloop Path Information"; + leaf microloop-repair-list-size { + type uint32; + description + "Repair List Size for Microloop"; + } + leaf microloop-tunnel-interface-name { + type xr:Interface-name; + description + "Tunnel Interface name for Microloop"; + } + leaf microloop-strict-spf { + type boolean; + description + "Strict SPF SID for Microloop"; + } + list microloop-repair { + max-elements "12"; + description + "Repair List for Microloop"; + uses OSPF-SH-REP-EL; + } + } + + grouping OSPF-SH-REP-EL { + description + "OSPF Repair Element"; + leaf repair-element-id { + type inet:ipv4-address; + description + "ID of the Repair Element"; + } + leaf repair-label { + type uint32; + description + "Label of Repair Element"; + } + leaf repair-element-type { + type uint32; + description + "Type of the Repair Element"; + } + } + + grouping OSPF-SH-BACKUP-PATH { + description + "OSPF Route Backup Path Information"; + leaf backup-route-interface-name { + type xr:Interface-name; + description + "Next hop Interface"; + } + leaf backup-route-next-hop-address { + type inet:ipv4-address; + description + "Nexthop IP address"; + } + leaf backup-route-source { + type inet:ipv4-address; + description + "IP address of source of route"; + } + leaf backup-metric { + type uint32; + description + "Metric"; + } + leaf primary-path { + type boolean; + description + "Whether this is also a Primary Path"; + } + leaf line-card-disjoint { + type boolean; + description + "Whether this is a Line Card Disjoint path"; + } + leaf downstream { + type boolean; + description + "Whether this is a downstream path"; + } + leaf node-protect { + type boolean; + description + "Whether this is a Node Protect path"; + } + leaf srlg-disjoint { + type boolean; + description + "Whether this is a SRLG Disjoint path"; + } + leaf weighted-srlg { + type boolean; + description + "Whether this is a Weighted SRLG path"; + } + leaf lfa-type { + type Lfa; + description + "LFA type"; + } + leaf backup-remote-lfa { + type inet:ipv4-address; + description + "IP address of remote LFA"; + } + leaf backup-repair-list-size { + type uint32; + description + "Repair List Size"; + } + leaf backup-tunnel-interface-name { + type xr:Interface-name; + description + "Backup Tunnel Interface"; + } + leaf interface-disjoint { + type boolean; + description + "Whether this is a Interface Disjoint path"; + } + list backup-repair { + max-elements "12"; + description + "Backup Repair List"; + uses OSPF-SH-REP-EL; + } + } + + grouping OSPF-SH-TOP-PATH-BACKUP { + description + "OSPF Route Path Wit Backup Path Information"; + container route-backup-path { + description + "Backup Path Info"; + uses OSPF-SH-BACKUP-PATH; + } + container sr-microloop-avoidance-path { + description + "SR Microloop avoidance Path Info"; + uses OSPF-SH-SR-ULOOP-PATH; + } + leaf route-interface-name { + type xr:Interface-name; + description + "Next hop Interface"; + } + leaf route-interface-snmp-index { + type uint32; + description + "SNMP index of the Interface"; + } + leaf route-next-hop-address { + type inet:ipv4-address; + description + "Nexthop IP address"; + } + leaf route-source { + type inet:ipv4-address; + description + "IP address of source of route"; + } + leaf route-lsaid { + type inet:ipv4-address; + description + "LSA ID, see RFC2328"; + } + leaf route-path-is-mcast-intact { + type boolean; + description + "Multicast-intact path"; + } + leaf route-path-is-ucmp-path { + type boolean; + description + "UCMP path"; + } + leaf route-metric { + type uint32; + description + "Metric"; + } + leaf route-path-id { + type uint32; + description + "Path ID of path"; + } + leaf lsa-type { + type uint8; + description + "LSA type, see RFC2328 etc."; + } + leaf area-id { + type uint32; + description + "Area ID"; + } + leaf area-format { + type boolean; + description + "Area format IP or uint32"; + } + leaf route-path-is-rsvp-te-path { + type boolean; + description + "RSVP-TE path"; + } + leaf route-path-is-sr-te-path { + type boolean; + description + "SR-TE path"; + } + leaf route-path-is-sr-excl-path { + type boolean; + description + "SR Excl TE path"; + } + leaf route-path-is-sr-te-sspf-path { + type boolean; + description + "SR-TE SSPF path"; + } + list neighbor-next-hop { + description + "NeighborNextHop"; + uses OSPF-SH-NNH-INFO; + } + } + + grouping OSPF-SH-TOP-COMMON { + description + "OSPF Common Route Information"; + container route-update-time { + description + "Last time updated"; + uses OSPF-SH-TIME; + } + container route-fail-time { + description + "Last time update failed"; + uses OSPF-SH-TIME; + } + leaf route-area-id { + type uint32; + description + "Area ID"; + } + leaf route-te-metric { + type uint32; + description + "TE metric"; + } + leaf route-rib-version { + type uint32; + description + "RIB version"; + } + leaf route-spf-version { + type uint64; + description + "SPF version"; + } + leaf route-forward-distance { + type uint32; + description + "Forward distance"; + } + leaf route-source { + type uint16; + description + "Protocol source"; + } + leaf route-spf-priority { + type uint8; + description + "SPF priority"; + } + leaf route-auto-excluded { + type boolean; + description + "If true, exclude from TE paths"; + } + leaf route-srte-prefix-registered { + type boolean; + description + "If true, SRTE registered prefix route"; + } + leaf route-srte-nbr-registered { + type uint16; + description + "SRTE registered neigbhor count on route"; + } + leaf route-label-type { + type uint8; + description + "Type of route label"; + } + leaf route-label { + type uint32; + description + "The route SPF label"; + } + leaf route-sspf-label { + type uint32; + description + "The route SSPF label"; + } + } + + grouping OSPF-SH-TOPOLOGY-BACKUP { + description + "OSPF Route Information With Backup Path"; + container route-info { + description + "Route information"; + uses OSPF-SH-TOP-COMMON; + } + leaf route-prefix { + type inet:ipv4-address; + description + "IPv4 Route Prefix"; + } + leaf route-prefix-length { + type uint32; + description + "Prefix length"; + } + leaf route-metric { + type uint32; + description + "Metric"; + } + leaf route-type { + type Ospf-route; + description + "OSPF route type, whether intra-area, inter-area + or external route"; + } + leaf route-connected { + type boolean; + description + "If true, connected route"; + } + list route-path { + description + "List of paths to this route"; + uses OSPF-SH-TOP-PATH-BACKUP; + } + } + + grouping OSPF-SH-NBR-ADJ-SID { + description + "OSPF Neighbor Adjacency SID"; + leaf adj-sid-label { + type uint32; + description + "Adjacency SID Label"; + } + leaf protected-adj-sid { + type boolean; + description + "Adjacency SID Protection"; + } + leaf adj-sid-has-backup { + type boolean; + description + "Adjacency SID has backup protection"; + } + leaf configured-adj-sid { + type boolean; + description + "Configured Adjacency SID"; + } + } + + grouping OSPF-SH-NEIGHBOR-RETRANS { + description + "OSPF Neighbor Retransmission Information"; + leaf dbd-retransmission-count { + type uint32; + description + "Number of DBD retransmissions during last + exchange"; + } + leaf dbd-retransmission-total-count { + type uint32; + description + "Total number of DBD retransmissions for this + neighbor"; + } + leaf area-flooding-index { + type uint32; + description + "Area scope LSA's flood index"; + } + leaf as-flood-index { + type uint32; + description + "AS scope LSA's flood index"; + } + leaf neighbor-retransmission-count { + type uint32; + description + "Retransmission queue length"; + } + leaf number-of-retransmissions { + type uint32; + description + "Number of retransmissions for this neighbor"; + } + leaf area-first-flood-information { + type uint32; + description + "First flood item for area scope LSAs"; + } + leaf area-first-flood-information-index { + type uint32; + description + "Index of the first flood item for area scope + LSAs"; + } + leaf as-first-flood-information { + type uint32; + description + "First flood item for AS scope LSAs"; + } + leaf as-first-flood-information-index { + type uint32; + description + "Index for first flood item for AS scope LSAs"; + } + leaf area-next-flood-information { + type uint32; + description + "Next flood item for area scope LSAs"; + } + leaf area-next-flood-information-index { + type uint32; + description + "Index of next flood item for Area scope LSAs"; + } + leaf as-next-flood-information { + type uint32; + description + "Next flood item for AS scope LSAs"; + } + leaf as-next-flood-information-index { + type uint32; + description + "Index of next flood item for AS scope LSAs"; + } + leaf last-retransmission-length { + type uint32; + description + "Number of LSAs sent in last retransmission"; + } + leaf maximum-retransmission-length { + type uint32; + description + "Maximum number of LSAs sent in a retransmission"; + } + leaf last-retransmission-time { + type uint32; + description + "Time taken for retransmission in the last + attempt (ms)"; + } + leaf maximum-retransmission-time { + type uint32; + description + "Maximum time taken for retransmission (ms)"; + } + leaf lsa-retransmission-timer { + type uint32; + description + "Time until next LSA retransmission (ms)"; + } + } + + grouping OSPF-SH-NEIGHBOR-DETAIL { + description + "OSPF Neighbor Detailed Information"; + container neighbor-summary { + description + "Neighbor summary information"; + uses OSPF-SH-NEIGHBOR; + } + container neighbor-bfd-information { + description + "BFD related information of the neighbor"; + uses OSPF-SH-NEIGHBOR-BFD; + } + container neighbor-retransmission-information { + description + "Retransmission information with this neighbor"; + uses OSPF-SH-NEIGHBOR-RETRANS; + } + leaf neighbor-area-id { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted-decimal + format"; + } + leaf state-change-count { + type uint16; + description + "Number of state changes"; + } + leaf neighbor-cost { + type uint16; + description + "Cost of path to this neighbor"; + } + leaf neighbor-filter { + type boolean; + description + "If true, filter outgoing LSAs"; + } + leaf neighbor-designated-router-address { + type inet:ipv4-address; + description + "Address of designated router"; + } + leaf neighbor-backup-designated-router-address { + type inet:ipv4-address; + description + "Address of backup designated router"; + } + leaf interface-type { + type Interface; + description + "Type of the interface, whether it is p2p, + broadcast, nbma or p2mp"; + } + leaf poll-interval { + type uint32; + description + "Poll interval (s)"; + } + leaf next-poll-interval { + type uint32; + units "second"; + description + "For NBMA networks, amount of time remaining in + seconds before the next poll interval expires + and Hello is sent (s)"; + } + leaf neighbor-option { + type uint8; + description + " This is bitmaks of neighbor's option field + received"; + } + leaf pending-events { + type uint16; + description + "Number of pending events"; + } + leaf neighbor-lls-option { + type uint32; + description + "This is a bitmask of Link Local signalling + options received from the neighbor"; + } + leaf oob-resynchronization { + type boolean; + description + "Out-Of-Bound resynchronization in progress"; + } + leaf nsf-router-state { + type Nsf-rtr; + description + "For cisco NSF, the router is either Requester or + Receiver"; + } + leaf last-oob-time { + type uint32; + units "second"; + description + "The amount of time in seconds since last time + Out-Of-Band resynchronization was done with this + neighbor"; + } + leaf lfa-interface { + type xr:Interface-name; + description + "LFA Interface"; + } + leaf lfa-next-hop { + type inet:ipv4-address; + description + "LFA Next Hop"; + } + leaf lfa-neighbor-id { + type inet:ipv4-address; + description + "LFA Neighbor ID"; + } + leaf lfa-neighbor-revision { + type uint32; + description + "LFA Neighbor Revision"; + } + leaf neighbor-ack-list-count { + type uint32; + description + "Ack List Count"; + } + leaf neighbor-ack-list-high-watermark { + type uint32; + description + "Ack List High Watermark"; + } + leaf neighbor-interface-id { + type uint16; + description + "Interface ID of neighbor recived via LLS"; + } + list adjacency-sid { + description + "List of SR Adjacency SIDs"; + uses OSPF-SH-NBR-ADJ-SID; + } + } + + grouping OSPF-SH-RETRANS-LIST { + description + "OSPF Retransmission List"; + leaf retransmission-neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf retransmission-neighbor-ip-address { + type inet:ipv4-address; + description + "Neighbor IP Address"; + } + leaf retransmission-interface-name { + type xr:Interface-name; + description + "Retransmission list interface"; + } + leaf retransmission-timer { + type uint32; + description + "Amount of time remaining on retransmission timer + (ms)"; + } + leaf retransmission-count { + type uint32; + description + "Retransmission queue length"; + } + list retransmission-area-db { + description + "List of Area scope entries"; + uses OSPF-SH-LSA-SUM; + } + list retransmission-asdb { + description + "List of AS Scope entries"; + uses OSPF-SH-LSA-SUM; + } + } + + grouping OSPF-SH-REQUEST-LIST { + description + "OSPF Request List Information"; + leaf request-neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf request-neighbor-address { + type inet:ipv4-address; + description + "Neighbor IP address"; + } + leaf request-interface-name { + type xr:Interface-name; + description + "Request list interface"; + } + list request { + description + "List of request list entries"; + uses OSPF-SH-LSA-SUM; + } + } + + grouping OSPF-SH-NEIGHBOR-BFD { + description + "OSPF Neighbor BFD information"; + leaf bfd-intf-enable-mode { + type uint32; + description + "BFD enable mode - Default/Strict"; + } + leaf bfd-status-flag { + type uint8; + description + "Status of the BFD Session"; + } + } + + grouping OSPF-SH-NEIGHBOR { + description + "OSPF Neighbor Summary Information"; + container neighbor-bfd-information { + description + "BFD related information of the neighbor"; + uses OSPF-SH-NEIGHBOR-BFD; + } + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf neighbor-ip-address { + type inet:ipv4-address; + description + "Neighbor IP Address"; + } + leaf neighbor-interface-name { + type xr:Interface-name; + description + "Interface via which the neighbor is seen"; + } + leaf neighbor-sham-link-virtual-link-name { + type string; + description + "Neighbor sham link or virtual link name"; + } + leaf neighbor-dr-priority { + type uint8; + description + "DR priority of the neighbor"; + } + leaf neighbor-state { + type Neighbor-state; + description + "NFSM state of the neighbor"; + } + leaf dr-bdr-state { + type Dr-bdr-state; + description + "IFSM state of the neighbor"; + } + leaf neighbor-dead-timer { + type uint32; + description + "Time until neighbor's dead timer expires (s)"; + } + leaf neighbor-up-time { + type uint32; + description + "Amount of time since the adjacency is up (s)"; + } + leaf neighbor-madj-interface { + type boolean; + description + "Interface is MADJ"; + } + } + + grouping OSPF-SH-TIME { + description + "Time in seconds and nanoseconds"; + leaf second { + type uint32; + description + "Second"; + } + leaf nanosecond { + type uint32; + description + "Nanosecond"; + } + } + + grouping OSPF-SH-MPLS-FRAGMENT { + description + "OSPF MPLS-TE Fragment Information"; + leaf fragment-instance { + type uint32; + description + "Fragment instance number"; + } + leaf fragment-id { + type uint32; + description + "Fragment ID value"; + } + leaf dste-model-id { + type uint8; + description + "DS-TE Allocation Model ID"; + } + leaf same-fragment-count { + type uint8; + description + "Number of fragment links which haven't changed + since the last update"; + } + list mpls-te-link { + description + "List of fragment links"; + uses OSPF-SH-MPLS-LINK; + } + } + + grouping OSPF-SH-MPLS-EAG { + description + "EXTENDED administrative group TLVs"; + leaf extended-admin-size { + type uint32; + description + "Size of the extended admin group"; + } + list ext-admin-data { + description + "Value of Extended Admin Group"; + leaf entry { + type uint32; + description + "Value of Extended Admin Group"; + } + } + } + + grouping MPLS-TEL-OPT-UNID-VAL { + description + "MPLS TE Link Optional TLV IXCD Data"; + leaf uni-dir-delay { + type uint32; + description + "Uni Dir Delay"; + } + } + + grouping BW-FLEX-SUBTLV-VALUE { + description + "Value of Flex Sub TLV"; + container flex-sub-tlv-value-common { + description + "Flex Sub TLV Value"; + uses BW-SUB-TLV-VALUE-COMMON; + } + list unres-lspbw { + max-elements "8"; + description + "Array of Unres LSP BW"; + leaf entry { + type uint64; + description + "Array of Unres LSP BW"; + } + } + list max-lspbw { + max-elements "8"; + description + "Max LSP BW Array"; + leaf entry { + type uint64; + description + "Max LSP BW Array"; + } + } + } + + grouping BW-SUB-TLV-VALUE-COMMON { + description + "Common values in both Fixed and Flex Sub TLV"; + leaf signal-type { + type uint8; + description + "Signal Type value"; + } + leaf num-stages { + type uint8; + description + "Number of stages"; + } + leaf tbit { + type uint8; + description + "T Bit"; + } + leaf sbit { + type uint8; + description + "S Bit"; + } + leaf tsg { + type uint8; + description + "TSG"; + } + leaf res { + type uint8; + description + "Res"; + } + leaf priority-bit0 { + type uint8; + description + "Priority 0"; + } + leaf priority-bit1 { + type uint8; + description + "Priority 1"; + } + leaf priority-bit2 { + type uint8; + description + "Priority 2"; + } + leaf priority-bit3 { + type uint8; + description + "Priority 3"; + } + leaf priority-bit4 { + type uint8; + description + "Priority 4"; + } + leaf priority-bit5 { + type uint8; + description + "Priority 5"; + } + leaf priority-bit6 { + type uint8; + description + "Priority 6"; + } + leaf priority-bit7 { + type uint8; + description + "Priority 7"; + } + leaf stage { + type yang:hex-string; + description + "Array of Stages"; + } + } + + grouping BW-FIXED-SUBTLV-VALUE { + description + "Value of Fixed Sub TLV"; + container fixed-sub-tlv-value { + description + "Value of Fixed Sub TLV"; + uses BW-SUB-TLV-VALUE-COMMON; + } + list unres-oduj-prio { + max-elements "8"; + description + "Array of Unres Oduj Prio"; + leaf entry { + type uint32; + description + "Array of Unres Oduj Prio"; + } + } + } + + grouping IXCD-BW-SUB-TLV-VALUE-UNION { + description + "Sub Tlv values for IXCD Bandwidth"; + container fixed-bw-sub-tlv-value { + when "../ixcdbw-sub-tlv-type = '1'" { + description + "../IXCDBWSubTLVType = '1'"; + } + description + "Value of Fixed Sub TLV"; + uses BW-FIXED-SUBTLV-VALUE; + } + container flex-bw-sub-tlv-value { + when "../ixcdbw-sub-tlv-type = '2'" { + description + "../IXCDBWSubTLVType = '2'"; + } + description + "Value of Flex Sub TLV"; + uses BW-FLEX-SUBTLV-VALUE; + } + leaf ixcdbw-sub-tlv-type { + type uint16; + description + "IXCDBWSubTLVType"; + } + } + + grouping IXCD-BW-SUB-TLV { + description + "IXCD BW sub tlv"; + container bw-sub-tlv-value { + description + "Value of BW Sub TLV"; + uses IXCD-BW-SUB-TLV-VALUE-UNION; + } + leaf bw-sub-tlv-type { + type uint16; + description + "Type of Sub TLV"; + } + leaf bw-sub-tlv-length { + type uint16; + description + "Length of BW Sub TLV"; + } + } + + grouping IXCD-BW-SUB-TLV-ARR { + description + "Array of BW Sub TLVs"; + list arr-bw-sub-tlv { + description + "Array of sub tlvs"; + uses IXCD-BW-SUB-TLV; + } + } + + grouping IXCD-LE-PSC-INFO { + description + "IXCD LE PSC information"; + leaf min-lsp-bandwidth { + type uint64; + description + "Min LSP bandwidth"; + } + leaf psc-interface-mtu { + type uint16; + description + " Interface MTU"; + } + } + + grouping IXCD-TLV-SWITCHINGCAP-VALUE-UNION { + description + "Switching Cap values"; + container ixcdpsc-info { + when "../switching-cap-type = 'rrr-proto-l-switch-cap-psc4'" { + description + "../SwitchingCapType = + 'RRR_PROTO_LSWITCH_CAP_PSC4'"; + } + description + "IXCD PSC information"; + uses IXCD-LE-PSC-INFO; + } + container ixcdbw-sub-tlv { + when "../switching-cap-type = 'rrr-proto-l-switch-cap-otn-tdm'" { + description + "../SwitchingCapType = + 'RRR_PROTO_LSWITCH_CAP_OTN_TDM'"; + } + description + "Sub TLVs"; + uses IXCD-BW-SUB-TLV-ARR; + } + leaf switching-cap-type { + type uint8; + description + "SwitchingCapType"; + } + } + + grouping MPLS-TEL-OPT-IXCD-VAL { + description + "MPLS TE Link Optional TLV IXCD Data"; + container ixcd-switching-cap-type { + description + "Switching Cap type"; + uses IXCD-TLV-SWITCHINGCAP-VALUE-UNION; + } + leaf switching-cap { + type uint8; + description + "SCap"; + } + leaf rile-len-code { + type uint8; + description + "Rile LenCode"; + } + leaf fixed-scsi-count { + type uint32; + description + "Fixed SCSI count"; + } + leaf flex-scsi-count { + type uint32; + description + "Flexible SCSI count"; + } + list max-lspbw { + max-elements "8"; + description + "Max LSP bandwidth array"; + leaf entry { + type int64; + description + "Max LSP bandwidth array"; + } + } + } + + grouping MPLS-TEL-OPT-SRLG-VAL { + description + "MPLS TE Link Optional TLV SRLG Data"; + leaf srlg-len { + type uint32; + description + "Length of SRLG TLV"; + } + leaf num-srl-gs { + type uint32; + description + "Number of SRLG TLVs"; + } + list mplste-link-srlg-data { + description + "Value of SRLG TLV"; + leaf entry { + type uint32; + description + "Value of SRLG TLV"; + } + } + } + + grouping MPLS-TEL-OPT-BC-VAL { + description + "MPLS TE Link Optional TLV BC Data"; + leaf model-id { + type uint8; + description + "Allocation Model ID"; + } + leaf num-b-cs { + type uint32; + description + "Number of BC TLVs"; + } + list mplste-link-bc-bandwidth { + description + "Value of BC TLV"; + leaf entry { + type uint64; + description + "Value of BC TLV"; + } + } + } + + grouping MPLSTEL-TLV-VALUE-UNION { + description + "Value of TLVs"; + container bctlv-value { + when "../opaque-tlv-type = 'mpls-te-opt-tlv-type-bc'" { + description + "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_BC'"; + } + description + "Value of Bandwidth Constraints TLV"; + uses MPLS-TEL-OPT-BC-VAL; + } + container srlgtlv-value { + when "../opaque-tlv-type = 'mpls-te-opt-tlv-type-srlg'" { + description + "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_SRLG'"; + } + description + "Value of SRLG TLV"; + uses MPLS-TEL-OPT-SRLG-VAL; + } + container ixcdtlv-value { + when "../opaque-tlv-type = 'mpls-te-opt-tlv-type-ixcd'" { + description + "../OpaqueTLVType = 'MPLS_TE_OPT_TLV_TYPE_IXCD'"; + } + description + "Value of IXCD TLV"; + uses MPLS-TEL-OPT-IXCD-VAL; + } + container unidtlv-value { + when "../opaque-tlv-type = 'mpls-te-opt-tlv-type-uni-delay'" { + description + "../OpaqueTLVType = + 'MPLS_TE_OPT_TLV_TYPE_UNI_DELAY'"; + } + description + "Value of Uni Delay TLV"; + uses MPLS-TEL-OPT-UNID-VAL; + } + leaf opaque-tlv-type { + type Mpls-te-opt-tlv; + description + "OpaqueTLVType"; + } + } + + grouping OSPF-SH-MPLS-TEL-OPT-TLV { + description + "MPLS TE Link Optional TLVs"; + leaf mplste-link-opt-tlv-type { + type Mpls-te-opt-tlv; + description + "Type of Opt TLV"; + } + leaf mplste-link-opt-tlv-len { + type uint16; + description + "Length of Opt TLV"; + } + list mplste-link-opt-tlv-value { + description + "Value of Opt TLV"; + uses MPLSTEL-TLV-VALUE-UNION; + } + } + + grouping OSPF-SH-MPLS-IXCD-CAP { + description + "Link switching capability"; + leaf link-switching-capability { + type uint8; + description + "Link Switching Capability value"; + } + leaf link-encoding { + type uint8; + description + "Link Encoding value"; + } + leaf minimum-lsp-bw { + type uint64; + units "byte/s"; + description + "Minimum LSP bandwidth (bytes/s)"; + } + leaf link-mtu { + type uint16; + units "byte"; + description + "Link MTU size (bytes)"; + } + list maximum-lsp-bw-per-priority { + max-elements "8"; + description + "Maximum LSP bandwidth for each priority + + (bytes/s)"; + leaf entry { + type uint64; + units "byte/s"; + description + "Maximum LSP bandwidth for each priority + + (bytes/s)"; + } + } + } + + grouping OSPF-SH-MPLS-LINK-PROTOPRIO { + description + "Link protocol and priority capability"; + leaf link-protocol-capability { + type uint8; + description + "Protocol capability value of the link"; + } + leaf link-protocol-priority { + type uint8; + description + "Protocol priority value of the link"; + } + } + + grouping OSPF-SH-MPLS-BW { + description + "Available bandwidth for each priority level"; + list bw-per-priority { + max-elements "8"; + description + "Unreserved bandwidth for each priority (bytes/s)"; + leaf entry { + type uint64; + units "byte/s"; + description + "Unreserved bandwidth for each priority (bytes/s)"; + } + } + } + + grouping OSPF-SH-MPLS-LINK { + description + "OSPF MPLS-TE link Information"; + container global-unreserve-bw-per-priority { + description + "Global pool unreserved bandwidth for each + priority (bytes/s)"; + uses OSPF-SH-MPLS-BW; + } + container sub-pool-unreserve-bw-per-priority { + description + "Sub pool unreserved bandwidth for each priority + (bytes/s)"; + uses OSPF-SH-MPLS-BW; + } + container link-protocol-priority-capability { + description + "Link protocol and protocol priority capability + details"; + uses OSPF-SH-MPLS-LINK-PROTOPRIO; + } + container link-sw-capability { + description + "Link switching capability"; + uses OSPF-SH-MPLS-IXCD-CAP; + } + container extended-admin-group-list { + description + "Extended Admin Group"; + uses OSPF-SH-MPLS-EAG; + } + leaf new-link { + type boolean; + description + "If true, Link is new"; + } + leaf fragment-id { + type uint32; + description + "Fragment ID for this link"; + } + leaf mpls-link-instance { + type uint32; + description + "Link instance"; + } + leaf mpls-link-type { + type Link-subnet; + description + "Type of link"; + } + leaf neighbor-link-id { + type inet:ipv4-address; + description + "Link ID of the neighbor"; + } + leaf link-address { + type inet:ipv4-address; + description + "The local interface address"; + } + leaf neighbor-ip-address { + type inet:ipv4-address; + description + "IP address of the neighbor"; + } + leaf igp-metric { + type uint32; + description + "Link IGP metric"; + } + leaf te-metric { + type uint32; + description + "Link TE metric"; + } + leaf maximum-link-bw { + type uint64; + units "byte/s"; + description + "Maximum link bandwidth (bytes/s)"; + } + leaf maximum-link-reservable-bw { + type uint64; + units "byte/s"; + description + "Maximum link global pool reservable bandwidth + (bytes/s)"; + } + leaf maximum-link-sub-reservable-bw { + type uint64; + units "byte/s"; + description + "Maximum link subpool reservable bandwidth + (bytes/s)"; + } + leaf priority-count { + type int32; + description + "Number of priorities."; + } + leaf affinity { + type uint32; + description + "Affinity bits"; + } + leaf output-interface-id { + type uint32; + description + "Outgoing interface ID"; + } + leaf input-interface-id { + type uint32; + description + "Incoming interface ID"; + } + leaf dste-in-use { + type boolean; + description + "A DS-TE Allocation Model in use"; + } + leaf dste-allocation-model-id { + type Igpte-lib-bw-model; + description + "DS-TE Allocation Model ID"; + } + leaf number-of-optional-tl-vs { + type uint8; + description + "Number of Optional TLVs"; + } + list mplste-link-opt-tlv { + description + "List of Optional TLVs"; + uses OSPF-SH-MPLS-TEL-OPT-TLV; + } + } + + grouping OSPF-SH-MPLS { + description + "OSPF MPLS-TE Information"; + leaf mpls-te-router-id { + type inet:ipv4-address; + description + "OSPF MPLS-TE router ID"; + } + leaf mpls-te-enabled { + type boolean; + description + "If true, MPLS-TE enabled in area"; + } + leaf mpls-te-initialized { + type boolean; + description + "If true, MPLS-TE initialized in the area"; + } + leaf mpls-te-area-id { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted decimal + format"; + } + leaf mpls-te-area-instance { + type uint32; + description + "Area information instance"; + } + leaf mpls-te-router-address { + type inet:ipv4-address; + description + "MPLS-TE router address"; + } + leaf mpls-te-next-fragment-id { + type uint32; + description + "Next MPLS-TE fragment ID"; + } + leaf spacious-fragment { + type boolean; + description + "If true, fragment has space for next link"; + } + list mpls-te-link { + description + "MPLS-TE links in the area"; + uses OSPF-SH-MPLS-LINK; + } + list mpls-te-fragment { + description + "MPLS TE fragments in the area"; + uses OSPF-SH-MPLS-FRAGMENT; + } + } + + grouping OSPF-SH-SR-POLICY { + description + "Details of OSPF SR Policy"; + leaf policy-name { + type string; + description + "Name of the SR Policy"; + } + leaf policy-if-handle { + type xr:Interface-name; + description + "Interface handle of the SR Policy"; + } + leaf policy-metric { + type int32; + description + "Metric of the SR Policy"; + } + leaf policy-bsid { + type uint32; + description + "Bsid of the SR Policy"; + } + leaf policy-metric-mode { + type Ospf-sr-pol-metric-mode; + description + "Metric mode of the SR Policy"; + } + leaf policy-is-sspf { + type boolean; + description + "Whether SR Policy is Strict SPF"; + } + leaf policy-is-autoroute-include { + type boolean; + description + "Whether SR Policy is autoroute Include"; + } + leaf policy-state-is-valid { + type boolean; + description + "Whether SR Policy State is valid"; + } + leaf policy-state-is-stale { + type boolean; + description + "Whether SR Policy State is stale"; + } + leaf policy-state-is-ifh-error { + type boolean; + description + "Whether SR Policy State is IF Handle error"; + } + leaf policy-state-is-idb-pending { + type boolean; + description + "Whether SR Policy State is IDB pending"; + } + leaf policy-update-timestamp { + type uint32; + description + "Timestamp when SR Policy was updated"; + } + } + + grouping OSPF-SH-SR-ENDPOINT { + description + "OSPF SR Policy End point"; + leaf sr-endpoint { + type inet:ipv4-address; + description + "SR Endpoint Address"; + } + leaf sr-router-id { + type uint32; + description + "SR Endpoint Router ID"; + } + leaf sr-area-id-string { + type string; + description + "SR Endpoint Area ID"; + } + leaf sr-policy-count { + type uint32; + description + "Count of SR Policies"; + } + leaf sr-valid-policy-count { + type uint32; + description + "Count of Valid SR Policies"; + } + leaf sr-endp-state-is-valid { + type boolean; + description + "Whether SR Endpoint state is valid"; + } + leaf sr-endp-state-is-stale { + type boolean; + description + "Whether SR Endpoint state is stale"; + } + leaf sr-endp-state-is-unres { + type boolean; + description + "Whether SR Endpoint state is unresolved"; + } + leaf sr-endp-resolution-fail-reason { + type Ospf-sr-endp-res-fail-reason; + description + "Reason for SR Endpoint resolution failure"; + } + list sr-policy { + description + "List of SR Policies"; + uses OSPF-SH-SR-POLICY; + } + } + + grouping OSPF-SH-ADJ-SID-PATH-INFO { + description + "OSPF SR Adjacency SID Path Information"; + leaf interface-handle { + type xr:Interface-name; + description + "SR Adj SID Interface Handle"; + } + leaf nexthop-ip-address { + type inet:ipv4-address; + description + "SR Adj SID Nexthop Neighbor IP Address"; + } + leaf load-metric { + type uint32; + description + "SR Adj SID Path metric"; + } + list label-stack { + description + "SR Adj SID Label Stack"; + leaf entry { + type uint32; + description + "SR Adj SID Label Stack"; + } + } + } + + grouping OSPF-SH-ADJ-SID-NBR-ASSOC { + description + "OSPF SR Adjacency SID Neighbor Association + Information"; + container primary-path-info { + description + "SR Adj SID Primary path info"; + uses OSPF-SH-ADJ-SID-PATH-INFO; + } + container backup-path-info { + description + "SR Adj SID Backup path info"; + uses OSPF-SH-ADJ-SID-PATH-INFO; + } + leaf neighbor-id { + type inet:ipv4-address; + description + "SR Adj SID Neighbor ID"; + } + leaf sr-adj-sid-is-protected { + type boolean; + description + "SR Adj SID is protected"; + } + leaf sr-adj-sid-has-backup { + type boolean; + description + "SR Adj SID has backup path"; + } + } + + grouping OSPF-SH-ADJ-SID { + description + "OSPF SR Adjacency SID Information"; + leaf sr-adjacency-sid { + type uint32; + description + "SR Adjacency SID"; + } + leaf sr-adj-sid-is-configured { + type boolean; + description + "SR Adj SID is configured"; + } + leaf is-deleted-adjacency-protected { + type boolean; + description + "Is this adj-sid being protected after adjacency + deleted"; + } + leaf deleted-adjacency-protection-timer { + type uint32; + description + "Remaining time for deleted adjacency protection + (sec)"; + } + list sr-adj-sid-neighbor { + description + "SR Adj SID Neighbor List"; + uses OSPF-SH-ADJ-SID-NBR-ASSOC; + } + } + + grouping OSPF-SH-LSA-SUM { + description + "LSA Summary Entry"; + leaf header-lsa-type { + type Lsa; + description + "LSA Type"; + } + leaf header-lsa-age { + type uint16; + description + "Age of the LSA (s)"; + } + leaf header-ls-id { + type inet:ipv4-address; + description + "LSA ID"; + } + leaf header-advertising-router { + type inet:ipv4-address; + description + "Router ID of the Advertising Router"; + } + leaf header-sequence-number { + type uint32; + description + "Current LSA sequence number"; + } + leaf header-lsa-checksum { + type uint16; + description + "Checksum of the LSA"; + } + } + + grouping OSPF-SH-FLOOD-LIST { + description + "OSPF Flood List"; + leaf flood-interface-name { + type xr:Interface-name; + description + "Name of the Interface for which flood list is + retrieved"; + } + leaf flood-pacing-timer { + type uint32; + description + "Time until next LS update due (ms)"; + } + leaf flood-lsa-count { + type uint32; + description + "Number of LSAs currently being flooded"; + } + list area-flood { + description + "Area scope floodlist"; + uses OSPF-SH-LSA-SUM; + } + list as-flood { + description + "AS scope floodlist"; + uses OSPF-SH-LSA-SUM; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub3.yang new file mode 100644 index 000000000..bdd93418e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper-sub3.yang @@ -0,0 +1,1615 @@ +submodule Cisco-IOS-XR-ipv4-ospf-oper-sub3 { + belongs-to Cisco-IOS-XR-ipv4-ospf-oper { + prefix Cisco-IOS-XR-ipv4-ospf-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-ospf-oper-sub2 { + revision-date 2022-08-29; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-ospf package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-29 { + description + "Added LSA counters per advertising router + 2022-08-18 + Added number of prefixes redistribted in the ospf summary output + 2021-10-01 + Added Extended Inter-Area ASBR LSA, Added Algo label information received from RIB in Extended Prefix LSA"; + semver:module-version "2.3.0"; + } + revision 2021-06-01 { + description + "Added changes to show if a FAD contains unknown parameters, option to enable SR forwarding MPLS, changes in neighbor sham link or virtual link name"; + semver:module-version "2.2.0"; + } + revision 2020-03-19 { + description + "Added changes for Delay Normalization + 2020-02-04 + Added changes for Conditional Advertising + 2019-09-30 + Added changes for Weighted SRLG"; + semver:module-version "2.0.0"; + } + revision 2019-07-26 { + description + "Added new fields in redistribution container to display more information."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-07 { + description + "Modified for Programmability 2.0"; + } + revision 2018-04-18 { + description + "Added keychain name to be displayed in show ospf interface bag"; + } + revision 2017-10-26 { + description + "Fixed some field name and values for better interpretation"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-02 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ospf-string-array { + type string; + description + "Ospf string array"; + } + + grouping OSPF-SH-IF-STATS-ENTRY { + description + "OSPF interface entry for statistics"; + leaf madj-intf { + type boolean; + description + "OSPF madj interface"; + } + leaf area-id { + type uint32; + description + "OSPF area id"; + } + leaf area-id-str { + type string; + description + "OSPF aread id string"; + } + list if-stat { + description + "OSPF interface statistics"; + leaf entry { + type uint32; + description + "OSPF interface statistics"; + } + } + } + + grouping OSPF-SH-IF-STATS { + description + "OSPF interface statistics"; + leaf handle { + type xr:Interface-name; + description + "interface handle type"; + } + leaf if-name-str { + type string; + description + "interface name"; + } + list if-entry { + description + "interface entry"; + uses OSPF-SH-IF-STATS-ENTRY; + } + } + + grouping OSPF-SH-RAW-STATS { + description + "OSPF SH RAW STATS"; + leaf out-sent { + type uint32; + description + "Count of packets sent out on raw socket"; + } + leaf bytes-sent { + type uint32; + units "byte"; + description + "Count of bytes sent out on raw socket"; + } + leaf out-discarded-no-connection { + type uint32; + description + "Count of outgoing packets discarded due to + connection issues"; + } + leaf out-null-src-discarded { + type uint32; + description + "Count of outgoing packets discarded due to + source address or packet length issues"; + } + leaf out-no-pakbuf-discarded { + type uint32; + description + "Count of outgoing packets discarded due to + packet buffer issues"; + } + leaf out-ipv4-hdr-error-discarded { + type uint32; + description + "Count of outgoing packets discarded due to ipv4 + deader construction failure"; + } + leaf out-send-pak-error-discarded { + type uint32; + description + "Count of outgoing packets discarded due to send + failure"; + } + leaf in-received { + type uint32; + description + "Count of packets received on raw socket"; + } + leaf bytes-received { + type uint32; + units "byte"; + description + "Count of bytes received on raw socket"; + } + leaf short-msg-received { + type uint32; + description + "Count of received packets discarded due to + packet size too small"; + } + leaf in-no-memory-discarded { + type uint32; + description + "Count of received packets discarded due to + malloc failure"; + } + leaf in-raw-events { + type uint32; + description + "Count of incoming raw events"; + } + leaf disconnects { + type uint32; + description + "Count of raw sockets disconnected"; + } + leaf in-standby-discarded { + type uint32; + description + "Count of received packets discarded since + received on standby"; + } + leaf nsr-not-ready-discarded { + type uint32; + description + "Count of received packets discarded since NSR + not ready"; + } + leaf raw-connected { + type boolean; + description + "Whether raw socket connection is up"; + } + leaf shamlink-raw-connected { + type boolean; + description + "Whether shamlink raw socket connection is up"; + } + } + + grouping OSPF-SH-PROTOPKT-STATS { + description + "OSPF SH PROTOPKT STATS"; + leaf inputs { + type uint32; + description + "Total count of incoming packets"; + } + leaf input-hello { + type uint32; + description + "Total count of incoming hello packets"; + } + leaf input-db-descriptions { + type uint32; + description + "Total count of incoming Database description + packets"; + } + leaf input-db-descriptions-lsa { + type uint32; + description + "Total count of incoming Database description + packets with LSA headers"; + } + leaf input-requests { + type uint32; + description + "Total count of incoming Request packets"; + } + leaf input-requests-lsa { + type uint32; + description + "Total count of incoming Request packets with LSA + headers"; + } + leaf input-ls-updates { + type uint32; + description + "Total count of incoming LS Update packets"; + } + leaf input-ls-updates-lsa { + type uint32; + description + "Total count of incoming LS Update packets with + LSA headers"; + } + leaf input-ls-acks { + type uint32; + description + "Total count of incoming LS Acknowledgement + packets"; + } + leaf input-ls-acks-lsa { + type uint32; + description + "Total count of incoming LS Acknowledgement + packets with LSA headers"; + } + leaf checksum-errors { + type uint32; + description + "Total count of incoming packets with checksum + errors"; + } + leaf input-auth-error { + type uint32; + description + "Total count of incoming packets with + authentication errors"; + } + leaf outputs { + type uint32; + description + "Total count of outgoing packets"; + } + leaf output-hellos { + type uint32; + description + "Total count of outgoing hello packets"; + } + leaf output-db-descriptions { + type uint32; + description + "Total count of outgoing Database description + packets"; + } + leaf output-db-descriptions-lsa { + type uint32; + description + "Total count of outgoing Database description + packets with LSA headers"; + } + leaf output-requests { + type uint32; + description + "Total count of outgoing Request packets"; + } + leaf output-requests-lsa { + type uint32; + description + "Total count of outgoing Request packets with LSA + headers"; + } + leaf output-ls-updates { + type uint32; + description + "Total count of outgoing LS Update packets"; + } + leaf output-ls-updates-lsa { + type uint32; + description + "Total count of outgoing LS Update packets with + LSA headers"; + } + leaf output-ls-acks { + type uint32; + description + "Total count of outgoing LS Acknowledgement + packets"; + } + leaf output-ls-acks-lsa { + type uint32; + description + "Total count of outgoing LS Acknowledgement + packets with LSA headers"; + } + leaf outputs-auth-error { + type uint32; + description + "Total count of outgoing packets with + authentication errors"; + } + leaf input-hello-db-descriptions { + type uint32; + description + "Total count of incoming Database description + packets received on hello thread"; + } + leaf input-hello-ls-requests { + type uint32; + description + "Total count of incoming Request packets received + on hello thread"; + } + leaf input-hello-ls-updates { + type uint32; + description + "Total count of incoming LS Update packets + received on hello thread"; + } + leaf input-hello-ls-acks { + type uint32; + description + "Total count of incoming LS Acknowledgement + packets received on hello thread"; + } + } + + grouping OSPF-SH-TE-STATS { + description + "OSPF SH TE STATS"; + leaf te-connected { + type boolean; + description + "Whether connection to TE is up or not"; + } + leaf control-disconnects { + type uint32; + description + "Count of Control disconnects"; + } + leaf te-disconnects { + type uint32; + description + "Count of Control disconnects"; + } + leaf adj-gets { + type uint32; + description + "Count of Adjacencies received"; + } + leaf link-floods { + type uint32; + description + "Count of Link floods received"; + } + leaf link-fragment-floods { + type uint32; + description + "Count of Link fragments received"; + } + leaf lsp-gets { + type uint32; + description + "Count of LSP Gets received"; + } + leaf tunnel-announces { + type uint32; + description + "Count of tunnels announced"; + } + leaf total-tunnels { + type uint32; + description + "Total count of tunnels"; + } + leaf control-batch-reads { + type uint32; + description + "Count of reads of control batch"; + } + leaf control-batch-writes { + type uint32; + description + "Count of writes of control batch"; + } + leaf link-batch-reads { + type uint32; + description + "Count of reads of link batch"; + } + leaf link-batch-writes { + type uint32; + description + "Count of writes of link batch"; + } + leaf adj-changes { + type uint32; + description + "Count of adjacency changes"; + } + leaf fragment-deletes { + type uint32; + description + "Count of deleted fragments"; + } + leaf fragment-announces { + type uint32; + description + "Count of fragments announced"; + } + leaf data-transfer-completes { + type uint32; + description + "Count of data transfer complete event"; + } + leaf pce-listen { + type uint32; + description + "Count of PCE listen TRUE events "; + } + leaf pce-stoplisten { + type uint32; + description + "Count of PCE listen FALSE events "; + } + leaf pce-flood { + type uint32; + description + "Count of PCE flood events"; + } + leaf pce-get { + type uint32; + description + "Count of PCE get events"; + } + leaf pce-border-router-lookup { + type uint32; + description + "Count of PCE Border Router Lookup requests"; + } + leaf pce-border-router-lookup-destinations { + type uint32; + description + "Count of destinations looked up by PCE Border + Router Lookup requests"; + } + leaf pce-failure-responses { + type uint32; + description + "Count of PCE failures encountered"; + } + leaf pce-node-announce-batches { + type uint32; + description + "Count of PCE Node Announce batches"; + } + leaf pce-node-delete-batches { + type uint32; + description + "Count of PCE Node Announce batches"; + } + leaf pce-node-announce { + type uint32; + description + "Count of total PCE Node Announces"; + } + leaf pce-node-delete { + type uint32; + description + "Count of total PCE Node Deletions"; + } + leaf pce-node-send-fails { + type uint32; + description + "Count of PCE send failures"; + } + leaf te-sr-path-reg-idt-received { + type boolean; + description + "Whether IDT registrations received for SR TE + paths"; + } + leaf te-sr-idt-sent { + type boolean; + description + "Whether IDT message is sent for SR TE"; + } + leaf sr-area-enabled { + type uint32; + description + "Count of SR enabled areas"; + } + } + + grouping OSPF-SH-IPFRR-STATS { + description + "OSPF SH IPFRR STATS"; + leaf fs-paths { + type uint32; + description + "Number of IPFRR paths"; + } + leaf fs-paths-eligible { + type uint32; + description + "Number of paths enabled for protection"; + } + leaf fs-paths-protected { + type uint32; + description + "Number of paths protected"; + } + } + + grouping NSR-PL-RECV-DROP-ARRAY { + description + "Drop count while receiving messages"; + list nsr-pl-recv-drop-array { + max-elements "16"; + description + "nsr pl recv drop array"; + leaf entry { + type uint32; + description + "entry"; + } + } + } + + grouping NSR-PL-SEND-DROP-ARRAY { + description + "Drop count while sending messages"; + list nsr-pl-send-drop-array { + max-elements "7"; + description + "nsr pl send drop array"; + leaf entry { + type uint32; + description + "entry"; + } + } + } + + grouping NSR-PL-CLIENT-STATS-TYPE { + description + "NSR PL stats information"; + leaf prio-queue-level { + type string { + length "0..32"; + } + description + "npl priority queue level"; + } + list num-sent { + max-elements "5"; + description + "Total sent"; + leaf entry { + type uint64; + description + "Total sent"; + } + } + list num-recv { + max-elements "6"; + description + "Total recvd"; + leaf entry { + type uint64; + description + "Total recvd"; + } + } + list num-sent-drop { + max-elements "5"; + description + "Sent Error/drops"; + uses NSR-PL-SEND-DROP-ARRAY; + } + list num-recv-drop { + max-elements "6"; + description + "Recv Errors/drops"; + uses NSR-PL-RECV-DROP-ARRAY; + } + } + + grouping OSPF-SH-NCD-STATS { + description + "OSPF SH NCD STATS"; + list npl-priority { + max-elements "2"; + description + "NPL Library statistics for each priority level"; + uses NSR-PL-CLIENT-STATS-TYPE; + } + } + + grouping OSPF-SH-STATS-RIB-THREAD { + description + "OSPF SH STATS RIB THREAD"; + container rib-base-time { + description + "Base time stamp needed to calculate the current + time "; + uses BAG-TIMESPEC; + } + container spf-suspend-time-start { + description + "Last time SPF suspended start time"; + uses OSPF-SH-TIME; + } + container spf-suspend-time-stop { + description + "Last time SPF suspended Stop time"; + uses OSPF-SH-TIME; + } + leaf is-thread-active { + type boolean; + description + "RIB thread active indicator"; + } + leaf last-dequeue-time { + type uint64; + description + "Timestamp of last dequeue of RIB work queue"; + } + leaf first-enqueue-time { + type uint64; + description + "Timestamp of first enqueue of RIB work queue"; + } + leaf current-queue-length { + type int32; + description + "Work queue length at this instance"; + } + leaf peak-queue-length { + type int32; + description + "Largest work queue length so far"; + } + leaf total-queued-msg { + type uint32; + description + "Total number of queued messages"; + } + leaf total-dqueued-msg { + type uint32; + description + "Total number of dequeued messages"; + } + leaf rib-version { + type uint32; + description + "Rib version, indicating the number of times OSPF + has connected with RIB. The value will be + greater than 1 if any disconnect and reconnect + happened."; + } + leaf rib-packets-sent { + type uint32; + description + "Total number of batches sent to RIB"; + } + leaf rib-signals { + type uint32; + description + "Number of signals for RIB thread"; + } + leaf rib-send-errors { + type uint32; + description + "Number of RIB batch send errors"; + } + leaf rib-queue-errors { + type uint32; + description + "Number of RIB batch queueing errors"; + } + leaf rib-prefix-limit-errors { + type uint32; + description + "Number of RIB batch prefix limit errors"; + } + leaf rib-dequeue-errors { + type uint32; + description + "Number of RIB batch dequeueing errors"; + } + leaf rib-empty-batches { + type uint32; + description + "Number of RIB of empty batches"; + } + leaf rib-drops-before-sending { + type uint32; + description + "Number of RIB batches dropped before sending"; + } + leaf rib-drops-after-sending { + type uint32; + description + "Number of RIB batches dropped after sending"; + } + leaf rib-connection-drops { + type uint32; + description + "Number of RIB batches dropped"; + } + leaf rib-forward-references { + type uint32; + description + "Number of forward tbl. references"; + } + leaf priority-level { + type string { + length "0..40"; + } + description + "Priority of these batches"; + } + leaf rib-base-clock { + type uint64; + description + "Base clock stamp needed to calculate the current + time"; + } + leaf spf-suspend-count { + type uint32; + description + "Number of times SPF suspended"; + } + } + + grouping OSPF-SH-STATS-WORK-QUEUES { + description + "OSPF SH STATS WORK QUEUES"; + container internal-work-queue { + description + "Router to RIB thread queue"; + uses OSPF-SH-STATS-RIB-THREAD; + } + list rib-queue { + max-elements "8"; + description + "Primary work queues"; + uses OSPF-SH-STATS-RIB-THREAD; + } + } + + grouping OSPF-EDM-RIB-NODE { + description + "OSPF EDM RIB NODE"; + leaf node-id { + type uint32; + description + "node ID of the Line Card"; + } + leaf intf-count { + type uint16; + description + "Number of OSPF Interfaces"; + } + leaf notif-count { + type uint8; + description + "RIB notification count"; + } + leaf ugmerge { + type boolean; + description + "RIB UG merge state of the LC"; + } + leaf node-death { + type boolean; + description + "RIB node death state of LC"; + } + leaf rib-event { + type boolean; + description + "RIB event received for LC"; + } + } + + grouping OSPF-SH-STATS-RIB-LC { + description + "OSPF SH STATS RIB LC"; + leaf node-count { + type uint8; + description + "Number of nodes"; + } + list nodes { + max-elements "64"; + description + "Array of RIB Node info"; + uses OSPF-EDM-RIB-NODE; + } + } + + grouping BAG-TIMESPEC { + description + "BAG TIMESPEC"; + leaf second { + type uint32; + description + "Second"; + } + leaf nanosecond { + type uint32; + description + "Nanosecond"; + } + } + + grouping OSPF-NSR-ERR-INFO-BAG { + description + "OSPF NSR ERR INFO BAG"; + container last-err-time { + description + "Time this error was last hit"; + uses BAG-TIMESPEC; + } + leaf err-count { + type int32; + description + "Count this error hit during the Nsr Revision"; + } + leaf err-info-string { + type string; + description + "Error Information"; + } + } + + grouping OSPF-NSR-ERR-BLOCK-BAG { + description + "OSPF NSR ERR BLOCK BAG"; + leaf nsr-revisionversion { + type uint32; + description + "Current Revision version of NSR"; + } + leaf total-errors { + type int32; + description + "Total errors for this nsr revision version"; + } + list nsr-error-info { + description + "List of erros"; + uses OSPF-NSR-ERR-INFO-BAG; + } + } + + grouping OSPF-ISSU-MILESTONE-BAG { + description + "OSPF ISSU MILESTONE BAG"; + leaf milestone-name { + type string; + description + "Name of the milestone achieved"; + } + leaf milestone-status { + type string; + description + "Status of the milestone achieved"; + } + } + + grouping OSPF-SH-NSR-STATS-PRI { + description + "Statistics for a priority queue"; + leaf nsr-priority { + type uint32; + description + "Priority value"; + } + leaf nsr-quantum { + type uint8; + description + "Number of events processed per pulse for this + priority"; + } + leaf nsr-remaining-quantum { + type uint8; + description + "Number of events remaining to be processed"; + } + leaf nsr-events-in-queue { + type uint16; + description + "Number of events queued to the thread for this + priority"; + } + leaf nsr-max-events { + type uint16; + description + "Max cap on the number of pending events"; + } + leaf nsr-peak-queue-length { + type uint16; + description + "Queue length of pending events peak value so far + for this priority"; + } + leaf nsr-events-queued { + type uint64; + description + "Number of events queued on this priority since + start/clear"; + } + leaf nsr-enqueue-fails { + type uint64; + description + "Number of enqueue failures since start/clear"; + } + leaf nsr-events-dequeued { + type uint64; + description + "Number of events dequeued on this pri since + start/clear"; + } + } + + grouping OSPF-SH-NSR-SCHED-STATS { + description + "NSR scheduling statistics"; + leaf nsr-pulse-quantum { + type int32; + description + "Number of events processed per pulse"; + } + leaf nsr-events-pending { + type uint32; + description + "Total events pending processing across all + priority buckets"; + } + leaf nsr-events-tx { + type uint64; + description + "Number of events queued to the thread"; + } + leaf nsr-events-rx { + type uint64; + description + "Number of events processed in the thread"; + } + leaf nsr-bad-pulses-rx { + type uint64; + description + "Spurious pulses received in the the thread"; + } + leaf nsr-good-pulses-rx { + type uint64; + description + "Good pulses received in the the thread"; + } + leaf nsr-pulses-tx { + type uint64; + description + "Number of pulses sent to the thread"; + } + leaf nsr-pulses-tx-fails { + type uint64; + description + "Number of pulse send fails"; + } + list nsr-priority { + max-elements "3"; + description + "Statistics for each priority queue"; + uses OSPF-SH-NSR-STATS-PRI; + } + } + + grouping OSPF-SH-NSR-STATS { + description + "OSPF NSR statistics"; + container nsr-thread-scheduler-stats { + description + "NSR thread scheduler statistics information"; + uses OSPF-SH-NSR-SCHED-STATS; + } + container nsr-router-thread-scheduler-stats { + description + "NSR Router thread scheduler statistics + information"; + uses OSPF-SH-NSR-SCHED-STATS; + } + leaf nsr-revision { + type int32; + description + "NSR Revision number"; + } + leaf nsr-fsm-state { + type int32; + description + "Current state of NSR"; + } + leaf nsr-version { + type uint32; + description + "Version Number of NSR"; + } + leaf nsr-node-id { + type uint32; + description + "Node ID"; + } + leaf nsr-peer-version { + type uint32; + description + "Peer version of NSR"; + } + leaf nsr-peer-node-id { + type uint32; + description + "Node ID of the peer"; + } + leaf nsr-peer-end-point-length { + type uint32; + description + "Length of the endpoint retrieved from peer"; + } + leaf nsr-peer-end-point-version { + type uint32; + description + "Version of the endpoint retrieved from peer"; + } + leaf nsr-local-end-point-length { + type uint32; + description + "Length of local endpoint"; + } + leaf nsr-local-end-point-version { + type uint32; + description + "Version of local endpoint"; + } + leaf nsr-fabric-mtu { + type uint32; + description + "MTU of Fabric"; + } + leaf nsr-neighbor-qad-queue-id { + type uint32; + description + "QAD Queue ID for Neighbor information"; + } + leaf nsr-lsa-qad-queue-id { + type uint32; + description + "QAD Queue ID for LSA information"; + } + leaf nsr-neighbor-qad-meta-data-count { + type uint32; + description + "QAD metadata Information for Neighbor"; + } + leaf nsr-lsa-qad-meta-data-count { + type uint32; + description + "QAD metadata Information for LSA"; + } + leaf nsr-neighbor-init-sync-pend-count { + type int32; + description + "Pending message count for Initial neighbor + synchronization"; + } + leaf nsr-lsa-init-sync-pend-count { + type int32; + description + "Pending message count for Initial lsa + synchronization"; + } + leaf nsr-neighbor-seq-no { + type uint32; + description + "Sequence number used for neighbor + synchronization"; + } + leaf nsr-interface-seq-no { + type uint32; + description + "Sequence number used for interface + synchronization"; + } + leaf nsr-timerquantum { + type int32; + description + "Number of expired timers to process per event + manager call"; + } + leaf nsr-peer-end-point-handle { + type uint64; + description + "Remote endpoint handle"; + } + leaf nsr-local-endpoint-handle { + type uint64; + description + "Handle/id of local endpoint"; + } + leaf nsr-connect-attempts { + type uint64; + description + "Count of LWN connection attempts"; + } + leaf nsr-connect-failures { + type uint64; + description + "Count of LWN connection failures"; + } + leaf nsr-open-event-count { + type uint64; + description + "Count of LWN connection open events"; + } + leaf nsr-close-event-count { + type uint64; + description + "Count of LWN connection close events"; + } + leaf nsr-error-event-count { + type uint64; + description + "Count of LWN connection error events"; + } + leaf nsr-peer-end-points { + type yang:hex-string; + description + "Array of remote endpoints"; + } + leaf nsr-local-end-points { + type yang:hex-string; + description + "Array of local endpoints"; + } + list nsr-fsm-flag { + description + "Nsr Fsm Flags information"; + leaf entry { + type Ospf-string-array; + description + "Nsr Fsm Flags information"; + } + } + list nsr-fsm-running-timer { + description + "Nsr Fsm Running Timers"; + leaf entry { + type Ospf-string-array; + description + "Nsr Fsm Running Timers"; + } + } + list nsr-issu-milestone { + description + "Nsr Issu Milestones information"; + uses OSPF-ISSU-MILESTONE-BAG; + } + list nsr-err-history { + description + "Nsr Error History List information"; + uses OSPF-NSR-ERR-BLOCK-BAG; + } + } + + grouping OSPF-SH-RIB-BATCH { + description + "RIB interaction statistics for a priority level"; + leaf batches-sent { + type uint32; + description + "Number of batches sent to RIB "; + } + leaf routes-sent { + type uint32; + description + "Number of routes updates sent to RIB "; + } + leaf routes-pending { + type uint32; + description + "Number of routes waiting to be sent to RIB"; + } + leaf max-routes { + type uint32; + description + "Max number of routes in a batch"; + } + leaf paths-sent { + type uint32; + description + "Number of paths (add+delete) sent to RIB"; + } + leaf paths-pending { + type uint32; + description + "Number of paths waiting to be sent to RIB"; + } + leaf paths-added { + type uint32; + description + "Number of paths added (pending+sent) to RIB "; + } + leaf path-add-errors { + type uint32; + description + "Number of paths add errors"; + } + leaf path-deletions { + type uint32; + description + "Number of paths deletions (pending+sent) to RIB"; + } + leaf path-deletion-errors { + type uint32; + description + "Number of paths deletion errors"; + } + leaf lfas-pending { + type uint32; + description + "Number of LFAs waiting to be sent to RIB"; + } + leaf lfas-added { + type uint32; + description + "Number of LFAs added to the RIB"; + } + leaf lfa-deletions { + type uint32; + description + "Number of LFAs deleted from RIB"; + } + leaf lfas-sent { + type uint32; + description + "Number of LFAs sent to the RIB"; + } + leaf priority-level { + type string { + length "0..40"; + } + description + "Priority Level Name string"; + } + } + + grouping OSPF-SH-RIB-BATCH-PRIORITY-QUEUES { + description + "Statistics on RIB interaction"; + list priority-batch { + max-elements "8"; + description + "RIB interaction statistics for various priority + levels"; + uses OSPF-SH-RIB-BATCH; + } + } + + grouping OSPF-EDM-AREA-SUMM { + description + "OSPF SPF statistics of an Area"; + leaf area-id { + type uint32; + description + "Area ID in OSPF"; + } + leaf spf-count { + type uint32; + description + "Count of SPFs in this area"; + } + } + + grouping OSPF-HEADER-INFO { + description + "OSPF SPF information header"; + leaf router-id { + type inet:ipv4-address; + description + "OSPF router identifier"; + } + leaf spf-count { + type uint32; + description + "Count of SPFs in this area"; + } + list area-summ { + description + "SPF details of the area"; + uses OSPF-EDM-AREA-SUMM; + } + } + + grouping OSPF-EDM-SPF-AREA-STATS { + description + "SPF statistics of the Area"; + container spf-time { + description + "Time taken for various stages of SPF"; + uses OSPF-SPF-TIME; + } + leaf area-id { + type uint32; + description + "OSPF area id"; + } + list lsa-type-count { + max-elements "7"; + description + "Array of Count of LSA changes indexed by LSA + + Type"; + leaf entry { + type uint32; + description + "Array of Count of LSA changes indexed by LSA + + Type"; + } + } + } + + grouping OSPF-LSA-CHANGE { + description + "Details of LSA change that triggered the SPF"; + leaf area-id { + type uint32; + description + "Area where LSA got changed"; + } + leaf advertising-router { + type inet:ipv4-address; + description + "Advertising Router of the changed LSA"; + } + leaf ls-id { + type inet:ipv4-address; + description + "LS ID of the changed LSA"; + } + leaf ls-type { + type uint8; + description + "Type of the changed LSA"; + } + leaf is-flush { + type boolean; + description + "Whether it is a flushed LSA"; + } + } + + grouping OSPF-SPF-TIME { + description + "Time taken for various stages of SPF"; + leaf time-taken-dijkstra { + type uint32; + description + "Time taken for executing Dijkstra Algorithm"; + } + leaf time-taken-intra-prefix { + type uint32; + description + "Time taken for Intra Area Prefix calculations"; + } + leaf time-taken-intra-prefix-deletion { + type uint32; + description + "Time taken for Intra Area Prefix deletions"; + } + leaf time-taken-inter-prefix { + type uint32; + description + "Time taken for Inter Area Prefix calculations"; + } + leaf time-taken-inter-prefix-deletion { + type uint32; + description + "Time taken for Inter Area Prefix deletions"; + } + leaf time-taken-external-prefix { + type uint32; + description + "Time taken for Type 5/7 Prefix calculations"; + } + leaf time-taken-external-prefix-deletion { + type uint32; + description + "Time taken for Type 5/7 Prefix deletions"; + } + } + + grouping OSPF-RUNTIME-STATS { + description + "SPF runtime statistics of OSPF"; + container gbl-spf-time { + description + "Time taken for SPF"; + uses OSPF-SPF-TIME; + } + leaf spf-start-time { + type uint32; + description + "Time when SPF started"; + } + leaf lsa-change-count { + type int16; + description + "Count of changed LSAs"; + } + leaf spf-number { + type uint8; + description + "SPF ID"; + } + list lsa-info { + max-elements "5"; + description + "Details of changed LSAs"; + uses OSPF-LSA-CHANGE; + } + list area-stat { + description + "SPF Statistics of this area"; + uses OSPF-EDM-SPF-AREA-STATS; + } + } + + grouping OSPF-SH-STAT-PARTIAL { + description + "Partial SPF statistics"; + container start-time { + description + "Time elapsed since last Partial SPF run"; + uses OSPF-SH-TIME; + } + container duration { + description + "Time taken for the this Partial SPF calculation"; + uses OSPF-SH-TIME; + } + leaf advertising-router-id { + type uint32; + description + "Advertising Router ID of the changed LSA that + triggered this partial SPF"; + } + leaf destination-count { + type uint32; + description + "Number of LSAs changed by this advertising + router that is being handled in this partial SPF"; + } + leaf destination-address { + type uint32; + description + "Route prefix changed in this partial SPF"; + } + } + + grouping OSPF-SH-STAT-INTRA { + description + "Intra-area SPF statistics"; + container start-time { + description + "Time elapsed since last Intra SPF run"; + uses OSPF-SH-TIME; + } + container duration { + description + "Time taken for the this Intra SPF calculation"; + uses OSPF-SH-TIME; + } + leaf area-id { + type string; + description + "Area ID in OSPF"; + } + leaf change-flags { + type uint16; + description + "Flags indicating changes that triggered this SPF"; + } + } + + grouping OSPF-SH-STATS-SPF { + description + "SPF statistics of OSPF"; + container spf-header { + description + "SPF Header information"; + uses OSPF-HEADER-INFO; + } + list runtime { + description + "Time taken for the Intra-area SPF run"; + uses OSPF-SH-STAT-INTRA; + } + list summary-runtime { + description + "Time taken for the summary calculation"; + uses OSPF-SH-STAT-PARTIAL; + } + list external-runtime { + description + "Time taken for the external calculation"; + uses OSPF-SH-STAT-PARTIAL; + } + list total-runtime { + description + "Time taken for entire route calculation"; + uses OSPF-RUNTIME-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper.yang new file mode 100644 index 000000000..dc062fa3f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ospf-oper.yang @@ -0,0 +1,1318 @@ +module Cisco-IOS-XR-ipv4-ospf-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ospf-oper"; + prefix ipv4-ospf-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-ospf-oper-sub3 { + revision-date 2022-08-29; + } + include Cisco-IOS-XR-ipv4-ospf-oper-sub1 { + revision-date 2022-08-29; + } + include Cisco-IOS-XR-ipv4-ospf-oper-sub2 { + revision-date 2022-08-29; + } + + 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-ospf package operational data. + + This module contains definitions + for the following management objects: + ospf: OSPF operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-29 { + description + "Added LSA counters per advertising router + 2022-08-18 + Added number of prefixes redistribted in the ospf summary output + 2021-10-01 + Added Extended Inter-Area ASBR LSA, Added Algo label information received from RIB in Extended Prefix LSA"; + semver:module-version "2.3.0"; + } + revision 2021-06-01 { + description + "Added changes to show if a FAD contains unknown parameters, option to enable SR forwarding MPLS, changes in neighbor sham link or virtual link name"; + semver:module-version "2.2.0"; + } + revision 2020-03-19 { + description + "Added changes for Delay Normalization + 2020-02-04 + Added changes for Conditional Advertising + 2019-09-30 + Added changes for Weighted SRLG"; + semver:module-version "2.0.0"; + } + revision 2019-07-26 { + description + "Added new fields in redistribution container to display more information."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-07 { + description + "Modified for Programmability 2.0"; + } + revision 2018-04-18 { + description + "Added keychain name to be displayed in show ospf interface bag"; + } + revision 2017-10-26 { + description + "Fixed some field name and values for better interpretation"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-01-02 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ospf-prefix-length { + type uint32 { + range "0..32"; + } + description + "Ospf prefix length"; + } + + typedef Ospf-ls { + type enumeration { + enum "router" { + value 1; + description + "Router LSA"; + } + enum "network" { + value 2; + description + "Network LSA"; + } + enum "summary" { + value 3; + description + "Summary LSA"; + } + enum "asbr-summary" { + value 4; + description + "ASBR-Summary LSA"; + } + enum "external" { + value 5; + description + "External LSA"; + } + enum "nssa-external" { + value 7; + description + "NSSA External LSA"; + } + enum "opaque-link" { + value 9; + description + "Opaque LSALink Scope"; + } + enum "opaque-area" { + value 10; + description + "Opaque LSA Area Scope"; + } + enum "opaque-as" { + value 11; + description + "Opaque LSA AS Scope"; + } + } + description + "Ospf ls"; + } + + grouping ROUTE { + description + "Common node of route-table, + multicast-intact-route-table"; + list route { + description + "An OSPF route"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY; + } + } + + grouping FLOOD-LIST { + description + "Common node of flood-list-table, + flood-list-area-table"; + list flood { + key "interface-name"; + description + "Flooding information for a specific interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPF-SH-FLOOD-LIST; + } + } + + grouping BORDER-ROUTER-TABLE { + description + "Common node of default-vrf, vrf"; + container border-routers { + description + "Border router table"; + list border-router { + key "border-router-id"; + description + "Information for a particular border router"; + leaf border-router-id { + type inet:ipv4-address-no-zone; + description + "Router address"; + } + uses OSPF-SH-BORDER-ROUTER; + } + } + } + + grouping SEGMENT-ROUTING { + description + "Common node of default-vrf, vrf"; + container segment-routing { + description + "Container for Segment Routing"; + container adjacency-sids { + description + "Container for SR Adjacency SIDs"; + list adjacency-sid { + key "adj-sid"; + description + "SR Adj SID Bag"; + leaf adj-sid { + type uint32 { + range "0..1048575"; + } + description + "Adjacency SID"; + } + uses OSPF-SH-ADJ-SID; + } + } + container sr-endpoint-policies { + description + "Container for SR Policies"; + list sr-endpoint-policy { + key "endpoint-ip"; + description + "SR Endpoint Policy Bag"; + leaf endpoint-ip { + type inet:ip-address-no-zone; + description + "Endpoint IP Address"; + } + uses OSPF-SH-SR-ENDPOINT; + } + } + } + } + + grouping AREA-TABLE { + description + "Common node of default-vrf, vrf"; + container areas { + description + "Area table"; + list area { + key "area-id"; + description + "Container for per area data"; + container flood-list-area-table { + description + "Area specific flood list table"; + uses FLOOD-LIST; + } + container area-statistics { + description + "Container for Statistics"; + uses INTERFACE-STATS-TABLE; + } + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses NEIGHBOR-TABLE; + uses INTERFACE-BRIEF-TABLE; + uses REQUEST-LIST-TABLE; + uses RETRANSMISSION-LIST-TABLE; + uses NEIGHBOR-DETAIL-TABLE; + uses INTERFACE-TABLE; + } + } + } + + grouping INTERFACE-STATS-TABLE { + description + "Common node of statistics, area-statistics"; + container interface-stats-entries { + description + "Statistics innformation Interface table"; + list interface-stats-entry { + key "interface-name"; + description + "Statistics information for a specific interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPF-SH-IF-STATS; + } + } + } + + grouping STATISTICS { + description + "Common node of default-vrf, vrf"; + container statistics { + description + "Container for Statistics"; + container spf-stats { + description + "OSPF SPF statistics"; + uses OSPF-SH-STATS-SPF; + } + container rib-batch-stats { + description + "Stats concerning RIB route updates using the + Batching API"; + uses OSPF-SH-RIB-BATCH-PRIORITY-QUEUES; + } + container issu-stats { + description + "OSPF ISSU statistics"; + uses OSPF-SH-NSR-STATS; + } + container rib-lc-stats { + description + "OSPF RIB Linecard node information"; + uses OSPF-SH-STATS-RIB-LC; + } + container rib-thread-stats { + description + "OSPF RIB thread statistics"; + uses OSPF-SH-STATS-WORK-QUEUES; + } + container nsr-pl-stats { + description + "OSPF NSR packet library statistics"; + uses OSPF-SH-NCD-STATS; + } + container nsr-stats { + description + "OSPF NSR thread statistics"; + uses OSPF-SH-NSR-STATS; + } + container frr-stats { + description + "OSPF fast-reroute statistics"; + uses OSPF-SH-IPFRR-STATS; + } + container te-stats { + description + "OSPF TE IO statistics"; + uses OSPF-SH-TE-STATS; + } + container protocol-stats { + description + "OSPF Protocol statistics"; + uses OSPF-SH-PROTOPKT-STATS; + } + container raw-io-stats { + description + "OSPF RAW IO statistics"; + uses OSPF-SH-RAW-STATS; + } + uses INTERFACE-STATS-TABLE; + } + } + + grouping OSPF-SUMMARY { + description + "Common node of default-vrf, vrf"; + container ospf-summary { + description + "Fast-reroute topology information"; + uses OSPF-SH-STATS-AGGT; + } + } + + grouping PROCESS-INFORMATION { + description + "Common node of default-vrf, vrf"; + container process-information { + description + "Container for OSPF Process information"; + container protocol-areas { + description + "Protocol Area table"; + list protocol-area { + description + "Area information"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID if in integer format"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Area ID if in IP address format"; + } + uses OSPF-SH-PROTO-AREA; + } + } + container protocol-summary { + description + "Basic OSPF protocol information"; + uses OSPF-SH-PROTOCOL; + } + container redistributions { + description + "Redistribution information table"; + list redistribution { + description + "Redistribution information"; + leaf protocol-name { + type xr:Cisco-ios-xr-string; + description + "Name of the protocol being redistributed"; + } + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "Process/Instance name of the protocol being + redistributed"; + } + uses OSPF-SH-REDIST; + } + } + container process-areas { + description + "Process Area table"; + list process-area { + description + "Detailed information for a particular area"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID if in integer format"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Area ID if in IP address format"; + } + uses OSPF-SH-AREA; + } + } + container process-summary { + description + "Basic OSPF summary information"; + uses OSPF-SH-SUMMARY; + } + } + } + + grouping ADJACENCY-INFORMATION { + description + "Common node of default-vrf, vrf"; + container adjacency-information { + description + "Container for OSPF Interfaces"; + uses NEIGHBOR-TABLE; + uses REQUEST-LIST-TABLE; + uses RETRANSMISSION-LIST-TABLE; + uses NEIGHBOR-DETAIL-TABLE; + } + } + + grouping RETRANSMISSION-LIST-TABLE { + description + "Common node of adjacency-information, area"; + container retransmissions { + description + "Retransmission list table"; + list retransmission { + description + "Retransmission list for a particular adjacency"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the neighbor"; + } + uses OSPF-SH-RETRANS-LIST; + } + } + } + + grouping LSA-SUMMARY-TABLE { + description + "Common node of database, database-area"; + container lsa-summaries { + description + "Link state advertisement summary table"; + list lsa-summary { + description + "LSA summary information"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + leaf ls-type { + type Ospf-ls; + description + "Link state type"; + } + leaf ls-id { + type inet:ipv4-address-no-zone; + description + "Link state ID"; + } + leaf advertising-router { + type inet:ipv4-address-no-zone; + description + "Router ID of the Advertising Router"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPF-SH-DATABASE; + } + } + } + + grouping ROUTE-INFORMATION { + description + "Common node of default-vrf, vrf"; + container route-information { + description + "Container for OSPF routing tables"; + container backup-routes { + description + "OSPF Route Table Including Backup Paths"; + list backup-route { + description + "OSPF route including backup paths"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY-BACKUP; + } + } + container multicast-intact-route-table { + description + "OSPF Route Table including multicast-intact + routes"; + uses ROUTE; + } + container multicast-intact-backup-routes { + description + "OSPF Route Table Including Multicast intact + Backup Paths"; + list multicast-intact-backup-route { + description + "OSPF route including multicast backup paths"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY-BACKUP; + } + } + container summary-information { + description + "OSPF route summary statistics"; + uses OSPF-SH-ROUTE-SUMMARY; + } + container connected-routes { + description + "OSPF Connected Route Table"; + list connected-route { + description + "This is a Connected route"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY; + } + } + container local-routes { + description + "OSPF Local Route Table"; + list local-route { + description + "This is a Local route"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY; + } + } + container route-areas { + description + "OSPF Area Route Table"; + list route-area { + key "area-id"; + description + "OSPF Area Route"; + container multicast-intact-backup-route-areas { + description + "OSPF Route Table Including Multicast Intace + Backup Paths in an area"; + list multicast-intact-backup-route-area { + description + "OSPF route including Multicast intact backup + paths"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY-BACKUP; + } + } + container connected-route-areas { + description + "OSPF Connected Route Table in an area"; + list connected-route-area { + description + "Connected route"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY; + } + } + container backup-route-areas { + description + "OSPF Route Table Including Backup Paths in an + area"; + list backup-route-area { + description + "OSPF route including backup paths"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY-BACKUP; + } + } + container route-area-informations { + description + "OSPF Area Route Entry"; + list route-area-information { + description + "An OSPF route"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY; + } + } + container multicast-intact-route-areas { + description + "OSPF Area multicast-intact included route + entry"; + list multicast-intact-route-area { + description + "A Muliticast OSPF route in an area"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY; + } + } + container summary-area-information { + description + "OSPF route summary statistics"; + uses OSPF-SH-ROUTE-SUMMARY; + } + container local-route-areas { + description + "OSPF Local Route Table"; + list local-route-area { + description + "Local route"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-TOPOLOGY; + } + } + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + } + } + container route-table { + description + "OSPF Route Table"; + uses ROUTE; + } + container external-routes { + description + "OSPF External Route Table"; + list external-route { + description + "This is an OSPF external route"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type Ospf-prefix-length; + description + "Length of the subnet prefix"; + } + uses OSPF-SH-ROUTE-EXT; + } + } + } + } + + grouping FAST-REROUTE { + description + "Common node of default-vrf, vrf"; + container fast-reroute { + description + "Container for FastReroute"; + container topologies { + description + "Fast-reroute topology information table"; + list topology { + key "remote-router-id area-id"; + description + "Fast-reroute topology information"; + leaf remote-router-id { + type inet:ipv4-address-no-zone; + description + "Remote Node Router ID"; + } + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses OSPF-SH-IPFRR-TOPO; + } + } + } + } + + grouping POLICY-MI { + description + "Common node of policy-ipv4-active, + policy-ipv4-backup"; + list policy-mi { + key "mi-id"; + description + "Mapping Item"; + leaf mi-id { + type xr:Cisco-ios-xr-string; + description + "Mapping Item ID (0, 1, 2, ...)"; + } + uses SRMS-MI-T-B; + } + } + + grouping MPLS-TE { + description + "Common node of default-vrf, vrf"; + container mpls-te { + description + "Container for MPLS TE"; + container mpls-te-links { + description + "MPLS TE link information table"; + list mpls-te-link { + key "area-id"; + description + "MPLS TE link information"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses OSPF-SH-MPLS; + } + } + container mpls-te-fragments { + description + "MPLS TE Fragment information table"; + list mpls-te-fragment { + key "area-id"; + description + "MPLS TE Fragment"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses OSPF-SH-MPLS; + } + } + } + } + + grouping FLOOD-LIST-TABLE { + description + "Common node of default-vrf, vrf"; + container flood-list-table { + description + "List of LSAs being flooded"; + uses FLOOD-LIST; + } + } + + grouping SUMMARY-PREFIX-TABLE { + description + "Common node of default-vrf, vrf"; + container summary-prefixes { + description + "Summary prefix table"; + list summary-prefix { + description + "Summary prefix information"; + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Summary Prefix"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + description + "Summary Mask"; + } + uses OSPF-SH-SUMMARY-ADDRESS; + } + } + } + + grouping NEIGHBOR-DETAIL-TABLE { + description + "Common node of adjacency-information, area"; + container neighbor-details { + description + "Neighbor detail table"; + list neighbor-detail { + description + "A single neighbor's detail information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the neighbor"; + } + uses OSPF-SH-NEIGHBOR-DETAIL; + } + } + } + + grouping REQUEST-LIST-TABLE { + description + "Common node of adjacency-information, area"; + container requests { + description + "Request List table"; + list request { + description + "Request list for a particular adjacency"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the neighbor"; + } + uses OSPF-SH-REQUEST-LIST; + } + } + } + + grouping INTERFACE-TABLE { + description + "Common node of interface-information, area"; + container interfaces { + description + "OSPF Interface Table"; + list interface { + key "interface-name"; + description + "OSPF interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPF-SH-INTERFACE; + } + } + } + + grouping INTERFACE-BRIEF-TABLE { + description + "Common node of interface-information, area"; + container interface-briefs { + description + "OSPF Interface Brief Table"; + list interface-brief { + key "interface-name"; + description + "OSPF interface brief information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + uses OSPF-SH-IF-BRIEF; + } + } + } + + grouping DATABASE { + description + "Common node of default-vrf, vrf"; + container database { + description + "OSPF Link State Database"; + container database-lsa-summaries { + description + "Advertising router LSA summary information + table"; + list database-lsa-summary { + key "advertising-router"; + description + "LSA summary count of particular advertising + router"; + leaf advertising-router { + type inet:ipv4-address-no-zone; + description + "Router ID of the Advertising Router"; + } + uses OSPF-SH-ADV-RTR-LSA-SUM; + } + } + container database-areas { + description + "Per-Area view of Link state database"; + list database-area { + key "area-id"; + description + "Per-Area Link State Database data"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses LSA-TABLE; + uses LSA-SUMMARY-TABLE; + } + } + container database-summaries { + description + "Link State database summary table"; + list database-summary { + key "area-id"; + description + "Link State Database summary for a particular + area"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses OSPF-SH-DB-AREA-SUM; + } + } + container database-summary-as { + description + "Link State Database summary for the AS"; + uses OSPF-SH-DB-AS-SUM; + } + uses LSA-TABLE; + uses LSA-SUMMARY-TABLE; + } + } + + grouping INTERFACE-INFORMATION { + description + "Common node of default-vrf, vrf"; + container interface-information { + description + "Container for OSPF Interfaces/links"; + container virtual-links { + description + "Virtual Link table"; + list virtual-link { + key "virtual-link-name"; + description + "Information for one Virtual link"; + leaf virtual-link-name { + type xr:Cisco-ios-xr-string; + description + "Virtual link"; + } + uses OSPF-SH-VIRTUAL-LINKS; + } + } + uses INTERFACE-BRIEF-TABLE; + uses INTERFACE-TABLE; + } + } + + grouping NEIGHBOR-TABLE { + description + "Common node of adjacency-information, area"; + container neighbors { + description + "Neighbor table"; + list neighbor { + description + "Neighbor information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the neighbor"; + } + uses OSPF-SH-NEIGHBOR; + } + } + } + + grouping LSA-TABLE { + description + "Common node of database-area, database"; + container lsas { + description + "Link State Database Table"; + list lsa { + description + "Link State Advertisement information"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + leaf ls-type { + type Ospf-ls; + description + "Link state type"; + } + leaf ls-id { + type inet:ipv4-address-no-zone; + description + "Link state ID"; + } + leaf advertising-router { + type inet:ipv4-address-no-zone; + description + "Router ID of the Advertising Router"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPF-SH-DATABASE-DETAIL; + } + } + } + + container ospf { + config false; + description + "OSPF operational data"; + container processes { + description + "Table for each process"; + list process { + key "process-name"; + description + "Operational data for a particular OSPF process"; + container vrfs { + description + "Table for each VRF"; + list vrf { + key "vrf-name"; + description + "Operational data for a particular VRF + (instance) in the OSPF process"; + container interface-vrf-information { + description + "Container for OSPF Interfaces/links under a + VRF"; + container sham-links { + description + "Sham Link table"; + list sham-link { + key "sham-link-name"; + description + "Information for one Sham link"; + leaf sham-link-name { + type xr:Cisco-ios-xr-string; + description + "Sham link"; + } + uses OSPF-SH-SHAM-LINKS; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses FLOOD-LIST-TABLE; + uses SEGMENT-ROUTING; + uses MPLS-TE; + uses STATISTICS; + uses ADJACENCY-INFORMATION; + uses ROUTE-INFORMATION; + uses INTERFACE-INFORMATION; + uses BORDER-ROUTER-TABLE; + uses PROCESS-INFORMATION; + uses AREA-TABLE; + uses DATABASE; + uses SUMMARY-PREFIX-TABLE; + uses OSPF-SUMMARY; + uses FAST-REROUTE; + } + } + container srms { + description + "Segment Routing Mapping Server operational + data"; + container policy { + description + "Policy operational data"; + container policy-ipv4 { + description + "IPv4 policy operational data"; + container policy-ipv4-backup { + description + "IPv4 backup policy operational data"; + uses POLICY-MI; + } + container policy-ipv4-active { + description + "IPv4 active policy operational data"; + uses POLICY-MI; + } + } + } + } + container default-vrf { + description + "Operational data for the default VRF + (instance) in the OSPF process"; + container srlgs { + description + "Container for Weighted SRLG information"; + list srlg { + key "srlg-name"; + description + "Information for a particular SRLG"; + leaf srlg-name { + type xr:Cisco-ios-xr-string; + description + "Name of SRLG configured"; + } + uses OSPF-SH-WSRLG; + } + } + uses FLOOD-LIST-TABLE; + uses SEGMENT-ROUTING; + uses MPLS-TE; + uses STATISTICS; + uses ADJACENCY-INFORMATION; + uses ROUTE-INFORMATION; + uses INTERFACE-INFORMATION; + uses BORDER-ROUTER-TABLE; + uses PROCESS-INFORMATION; + uses AREA-TABLE; + uses DATABASE; + uses SUMMARY-PREFIX-TABLE; + uses OSPF-SUMMARY; + uses FAST-REROUTE; + } + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "OSPF process"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-cfg.yang new file mode 100644 index 000000000..95923ba7d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-cfg.yang @@ -0,0 +1,1858 @@ +module Cisco-IOS-XR-ipv4-pim-cfg { + 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-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "Add more config changes for pim missed packets + 2022-08-26 + Add new config changes for pim missed packets"; + semver:module-version "2.2.0"; + } + revision 2020-01-30 { + description + "Addition made for Sticky DR CLI/XML operations"; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + 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."; + } + + 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 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 INTERFACE-ENABLE { + description + "Common node of interface, interface, interface"; + leaf interface-enable { + type boolean; + description + "Enable PIM processing on the interface"; + } + } + + grouping BSR-BORDER { + description + "Common node of interface, interface, interface"; + leaf bsr-border { + type boolean; + description + "BSR Border configuration for Interface"; + } + } + + 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 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 RPF { + description + "Common node of ipv4, ipv4, ipv6, ipv6"; + container rpf { + description + "Configure RPF options"; + uses ROUTE-POLICY; + } + } + + 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"; + } + } + } + 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"; + } + } + } + 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"; + } + } + } + + 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"; + } + } + } + } + + 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 EMBEDDED-RP-DISABLE { + description + "Common node of ipv6, ipv6"; + leaf embedded-rp-disable { + type empty; + description + "Set Embedded RP processing support"; + } + } + + 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"; + } + } + uses CANDIDATE-RP-TABLE; + } + } + + 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"; + } + } + uses CANDIDATE-RP-TABLE; + } + } + + 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"; + } + } + } + } + + 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; + } + } + + 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 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"; + } + } + } + + 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 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"; + } + } + } + + 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 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"; + } + } + } + + 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 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"; + } + } + } + } + + 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 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"; + } + } + } + + 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 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 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 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"; + } + } + } + + 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 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 STICKY-DR { + description + "Common node of inheritable-defaults, interface, + interface, interface"; + leaf sticky-dr { + type boolean; + description + "Enables interface sticky-dr feature"; + } + } + + 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; + } + } + + 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 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-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 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 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-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"; + } + } + 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; + } + } + + 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"; + } + } + } + + 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; + } + } + } + + 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"; + } + } + } + + grouping MULTIPATH { + description + "Common node of ipv4, ipv4, ipv6, ipv6"; + leaf multipath { + type Pim-multipath; + description + "Enable equal-cost multipath routing"; + } + } + + 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 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"; + } + } + } + } + + grouping MISSED-PACKETS { + description + "Common node of ipv4, ipv6"; + container missed-packets { + description + "Configure PIM servicability limits"; + leaf cand-bsr { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Override default Maximum number of entries for + PIM Cand BSR packets"; + } + leaf cand-rp { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Override default Maximum number of entries for + PIM Cand RP packets"; + } + leaf hello { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Override default Maximum number of entries for + PIM hello packets"; + } + leaf join-prune { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Override default Maximum number of entries for + PIM JP packets"; + } + } + } + + 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"; + } + } + } + + 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 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"; + } + } + } + + 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 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"; + } + } + } + + 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"; + } + } + } + } + + 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"; + } + } + } + + 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 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 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"; + } + } + } + + 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"; + } + } + } + + 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 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"; + } + } + } + + 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"; + } + } + } + } + + 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 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; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + 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; + } + } + 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 MISSED-PACKETS; + uses CONVERGENCE; + } + container ipv4 { + description + "IPV4 commands"; + container rpf-redirect { + description + "Configure RPF-redirect feature"; + uses ROUTE-POLICY; + } + 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"; + } + } + 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; + } + } + 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 "; + } + } + } + container auto-rp-mapping-agent { + presence "Indicates a auto-rp-mapping-agent node is configured."; + 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 "; + } + } + 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"; + } + } + leaf map-missed-packets { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Override default Maximum number of entries + for AutoRP Map Agent missed packets"; + } + leaf crp-missed-packets { + type uint32 { + range "256..10000"; + } + default "256"; + description + "Override default Maximum number of entries + for AutoRP Cand RP missed packets"; + } + } + 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 MISSED-PACKETS; + uses CONVERGENCE; + uses AUTO-RP-DISABLE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub1.yang new file mode 100644 index 000000000..e1fa5eaaa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub1.yang @@ -0,0 +1,4181 @@ +submodule Cisco-IOS-XR-ipv4-pim-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-pim-oper { + prefix Cisco-IOS-XR-ipv4-pim-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-pim-oper-sub2 { + revision-date 2022-08-26; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-pim package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-pim-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-26 { + description + "Addition made for Event history for periodic pim packets"; + semver:module-version "3.0.0"; + } + revision 2021-01-30 { + description + "Providing pim information"; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Changes to IOS-XR PIM oper + 2019-08-27 + Providing pim information"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-27 { + description + "Removed deprecated leaves under traffic-counters. Added missing leaves under context. Removed checkpoint-statistics container because the corresponding CLI command requires cisco-support permissions."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pim-show-local-interest { + type enumeration { + enum "null" { + value 1; + description + "null"; + } + enum "li" { + value 2; + description + "Local Interest"; + } + enum "ld" { + value 3; + description + "Local Disinterest"; + } + } + description + "Pim show local interest"; + } + + typedef Pim-internal-interest-info { + type enumeration { + enum "null" { + value 21; + description + "null"; + } + enum "ii" { + value 22; + description + "Internal Interest"; + } + enum "id" { + value 23; + description + "Internal Disinterest"; + } + } + description + "Pim internal interest info"; + } + + typedef Pim-show-range-client { + type enumeration { + enum "no-client" { + value 0; + description + "no client"; + } + enum "embedded-config" { + value 1; + description + "embedded config"; + } + enum "embedded" { + value 2; + description + "embedded"; + } + enum "permanent" { + value 3; + description + "permanent"; + } + enum "auto-rp" { + value 4; + description + "auto rp"; + } + enum "bsr" { + value 5; + description + "bsr"; + } + enum "config" { + value 6; + description + "config"; + } + enum "static" { + value 7; + description + "static"; + } + } + description + "Pim show range client"; + } + + typedef Pim-show-protocol { + type enumeration { + enum "no-route" { + value 0; + description + "no route"; + } + enum "sm" { + value 1; + description + "sm"; + } + enum "dm" { + value 2; + description + "dm"; + } + enum "bidir" { + value 3; + description + "bidir"; + } + enum "ssm" { + value 4; + description + "ssm"; + } + enum "maximum" { + value 5; + description + "maximum"; + } + enum "any" { + value 6; + description + "any"; + } + } + description + "Pim show protocol"; + } + + grouping PIM-NBR-BAG { + description + "PIM neighbor information"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expires { + type uint64; + units "second"; + description + "Neighbor expiry in seconds"; + } + leaf expiry-timer { + type uint64; + units "second"; + description + "Expiry timer in seconds"; + } + leaf is-this-neighbor-us { + type boolean; + description + "Is this neighbor us ?"; + } + leaf is-this-neighbor-dr { + type boolean; + description + "Is this neighbor the DR"; + } + leaf is-dr-priority-capable { + type boolean; + description + "Is this neighbor DR priority capable ?"; + } + leaf dr-priority { + type uint32; + description + "DR priority"; + } + leaf is-bidirectional-capable { + type boolean; + description + "Is this neighbor bidir capable ?"; + } + leaf is-proxy-capable { + type boolean; + description + "Is this neighbor proxy capable?"; + } + leaf is-batch-asserts-capable { + type boolean; + description + "Is this neighbor capable of batching asserts?"; + } + leaf is-ecmp-redirect-capable { + type boolean; + description + "Is this neighbor capable of Ecmp Redirect?"; + } + leaf is-bfd-state { + type boolean; + description + "Is the neighbor bfd session created"; + } + leaf sticky-dr-neighbor { + type boolean; + description + "Is Sticky DR advertised on interface by neighbor"; + } + leaf propagation-delay { + type uint16; + description + "Propagation Delay"; + } + leaf override-interval { + type uint16; + description + "Override Interval"; + } + list neighbor-address-xr { + description + "List of Neighbor Addresses"; + uses PIM-ADDRTYPE; + } + } + + grouping PIM-MSTATIC-BAG { + description + "Multicast Static Routes entry"; + container prefix { + description + "Prefix"; + uses PIM-ADDRTYPE; + } + container nexthop { + description + "Next Hop"; + uses PIM-ADDRTYPE; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf distance { + type uint32; + description + "Distance"; + } + leaf prefix-length-xr { + type uint8; + description + "Prefix Length"; + } + leaf is-via-lsm { + type boolean; + description + "LSM flag"; + } + } + + grouping PIM-RPF-RDRCT-BNDL-BAG { + description + "PIM RPF Redirect bundle information"; + leaf rpf-redirect-bundle-name { + type string { + length "0..33"; + } + description + "RPF redirect bundle name"; + } + leaf rpf-redirect-interface-name { + type string { + length "0..33"; + } + description + "RPF redirect interface name"; + } + leaf available-bandwidth { + type int32; + units "kbit/s"; + description + "Bandwidth available in Kbps"; + } + leaf allocated-bandwidth { + type int32; + units "kbit/s"; + description + "Bandwidth allocated in Kbps"; + } + leaf total-bandwidth { + type int32; + units "kbit/s"; + description + "Total bandwidth used in Kbps"; + } + leaf topology-bandwidth-used { + type int32; + units "kbit/s"; + description + "Bandwidth used by topology in Kbps"; + } + leaf snooping-bandwidth-used { + type int32; + units "kbit/s"; + description + "Bandwidth used by snooped entries in Kbps"; + } + leaf allocated-threshold-bandwidth { + type int32; + units "kbit/s"; + description + "Configured threshold in Kbps"; + } + leaf available-threshold-bandwidth { + type int32; + units "kbit/s"; + description + "Available threshold in Kbps"; + } + } + + grouping PIM-RPF-RDRCT-RINTF-BAG { + description + "PIM RPF-redirct bundle non-local route OLE + information"; + container rpf-address { + description + "RPF Address"; + uses PIM-ADDRTYPE; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiry { + type uint64; + units "second"; + description + "Expiry in seconds"; + } + leaf is-rpf-interface { + type boolean; + description + "Is RPF Interface"; + } + leaf is-outgoing-interface { + type boolean; + description + "Is outgoing Interface"; + } + leaf is-snoop-interface { + type boolean; + description + "Is snooping Interface"; + } + } + + grouping PIM-RPF-RDRCT-ROUTE-BAG { + description + "PIM RPF Redirect route information"; + container group-address-xr { + description + "Group ddress"; + uses PIM-ADDRTYPE; + } + container source-address-xr { + description + "Source address"; + uses PIM-ADDRTYPE; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth in Kbps"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + list interface { + description + "Outgoing interface list"; + uses PIM-RPF-RDRCT-RINTF-BAG; + } + } + + grouping PIM-ANYCAST-RP-ENTRY { + description + "PIM Anycast RP entry"; + container prefix { + description + "Anycast-RP Range Prefix"; + uses PIM-ADDRTYPE; + } + leaf prefix-length { + type uint8; + description + "Anycast-RP Range Prefix Length"; + } + leaf ancast-rp-marked { + type boolean; + description + "Anycast-RP Range marked"; + } + } + + grouping PIM-RT-EXTCOMM { + description + "PIM Route-target entry"; + leaf route-target { + type yang:hex-string; + description + "Route Target Extended community value"; + } + leaf configured { + type boolean; + description + "Configured Route Target"; + } + leaf anycast-rp { + type boolean; + description + "Anycast-RP Group"; + } + leaf anycast-rp-marked { + type boolean; + description + "Anycast-RP Group marked"; + } + leaf update-pending { + type boolean; + description + "Update Pending to BGP"; + } + leaf bgp-auto-discovery { + type boolean; + description + "BGP Auto Discovery"; + } + leaf segment-border { + type boolean; + description + "Segment Border"; + } + } + + grouping PIM-CONTEXT-BAG { + description + "PIM Context bag"; + container remote-default-group { + description + "Remote Default Group"; + uses PIM-ADDRTYPE; + } + container rpf-default-table { + description + "RPF Default Table"; + uses PIM-TABLE-CTX-BAG; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf murib-id { + type uint32; + description + "MURIB ID"; + } + leaf rpf-id { + type uint32; + description + "RPF ID"; + } + leaf remote-table-id { + type uint32; + description + "Remote Table ID"; + } + leaf mdt-default-group { + type inet:ipv4-address; + description + "MDT Default group"; + } + leaf mdt-source { + type inet:ipv4-address; + description + "MDT source"; + } + leaf mdt-source-interface { + type string; + description + "MDT Source Interface Name"; + } + leaf mdt-interface { + type xr:Interface-name; + description + "MDT handle"; + } + leaf mdt-gre-rpf-identifier { + type uint32; + description + "GRE-MDT RPF Identifier"; + } + leaf mdt-gre-remote-rpf-identifier { + type uint32; + description + "GRE-MDT Remote RPF Identifier"; + } + leaf is-unicast-rib-registration { + type boolean; + description + "Ucast RIB Registration"; + } + leaf is-multicast-rib-registration { + type boolean; + description + "Mcast RIB Registration"; + } + leaf is-active { + type boolean; + description + "Active"; + } + leaf is-active-ital { + type boolean; + description + "Active ITAL"; + } + leaf is-mrib-register { + type boolean; + description + "MRIB Register"; + } + leaf is-mdt-owner { + type boolean; + description + "MDT Owner"; + } + leaf is-routing-enabled { + type boolean; + description + "Routing Enabled"; + } + leaf is-socket-add-required { + type boolean; + description + "VRF required on Socket"; + } + leaf is-socket-added { + type boolean; + description + "VRF added on Socket"; + } + leaf is-lpts-socket-add-required { + type boolean; + description + "VRF LPTS filter required on Socket"; + } + leaf is-lpts-socket-added { + type boolean; + description + "VRF LPTS filter added on Socket"; + } + leaf is-udp-socket-add-required { + type boolean; + description + "VRF added on UDP Socket"; + } + leaf is-udp-socket-added { + type boolean; + description + "VRF added on UDP Socket"; + } + leaf is-udp-socket-bind-required { + type boolean; + description + "VRF bind required on UDP Socket"; + } + leaf is-udp-socket-bind { + type boolean; + description + "VRF bound on UDP Socket"; + } + leaf is-register-injection-socket-add-required { + type boolean; + description + "VRF required on Register Injection Socket"; + } + leaf is-register-injection-socket-added { + type boolean; + description + "VRF added on Register Injection Socket"; + } + leaf is-register-injection-lpts-socket-add-required { + type boolean; + description + "VRF LPTS filter required on Register Injection + Socket"; + } + leaf is-register-injection-lpts-socket-added { + type boolean; + description + "VRF LPTS filter added on Register Injection + Socket"; + } + leaf is-m-host-publish-pending { + type boolean; + description + "Publish pending for MHost Default interface"; + } + leaf mhost-interface { + type xr:Interface-name; + description + "MHost handle"; + } + leaf mhost-default-interface-config { + type string; + description + "Configured Mhost Defint"; + } + leaf mdt-mtu { + type uint32; + description + "MDT MTU"; + } + leaf maximum-mdt-aggregation { + type uint32; + description + "MDT max aggregation"; + } + leaf mdt-data-switchover-interval { + type uint32; + description + "Data MDT Switchover interval"; + } + leaf mdt-data-announce-interval { + type uint32; + description + "Data MDT Announce interval"; + } + leaf non-default-vrf-count-on-socket { + type uint32; + description + "Count of non-default vrfs on raw socket"; + } + leaf neighbor-filter-name { + type string; + description + "Neighbor Filter Name"; + } + leaf mdt-neighbor-filter-name { + type string; + description + "MDT Neighbor Filter Name"; + } + leaf allow-rp-configured { + type boolean; + description + "Allow RP Configured"; + } + leaf allow-rp-group-list { + type string { + length "0..64"; + } + description + "Allow RP Group-List ACL Name"; + } + leaf allow-rp-rp-list { + type string { + length "0..64"; + } + description + "Allow RP RP-list ACL Name"; + } + leaf sg-expiry-timer-configured { + type boolean; + description + "S,G Expiry Timer Configured"; + } + leaf sg-expiry-time { + type uint16; + units "second"; + description + "S,G Expiry Time Configured, in seconds"; + } + leaf sg-expiry-timer-sg-list { + type string { + length "0..64"; + } + description + "S,G expiry timer ACL name"; + } + leaf mldp-mdt-name { + type string; + description + "MLDP MDT Name"; + } + leaf mldp-mdt-interface { + type xr:Interface-name; + description + "MLDP MDT handle"; + } + leaf mldp-mdt-mtu { + type uint32; + description + "MLDP MDT MTU"; + } + leaf mldp-maximum-mdt-aggregation { + type uint32; + description + "MLDP MDT max aggregation"; + } + leaf mldp-mdt-data-switchover-interval { + type uint32; + description + "MLDP Data MDT Switchover interval"; + } + leaf mldp-mdt-data-announce-interval { + type uint32; + description + "MLDP Data MDT Announce interval"; + } + leaf mldp-mdt-rpf-identifier { + type uint32; + description + "MLDP RPF-ID"; + } + leaf mldp-mdt-remote-rpf-identifier { + type uint32; + description + "MLDP Remote RPF-ID"; + } + leaf is-create-mldp-mdt-interface { + type boolean; + description + "Create MLDP MDT interface"; + } + leaf is-mldp-mdt-owner { + type boolean; + description + "MLDP MDT Owner"; + } + leaf mldp-root-count { + type uint32; + description + "MLDP Root count"; + } + leaf mldp-head-lsm-identifier { + type uint32; + description + "MLDP Head LSM-ID"; + } + leaf mldp-remote-head-lsm-identifier { + type uint32; + description + "MLDP Remote Head LSM-ID"; + } + leaf organization-unique-identifier { + type uint32; + description + "OUI for VPN-ID"; + } + leaf vpn-index { + type uint32; + description + "VPN Index"; + } + leaf mldp-partitioned-mdt-configured { + type boolean; + description + "MLDP Partitioned MDT"; + } + leaf mldp-remote-partitioned-mdt-configured { + type boolean; + description + "MLDP Remote Partitioned MDT"; + } + leaf mldp-partioned-mp2m-ptree { + type boolean; + description + "MP2MP Partitioned MDT tree"; + } + leaf mldp-partitioned-head-lsm-identifier { + type uint32; + description + "Partitioned MDT Head LSM-ID"; + } + leaf mldp-head-local-label { + type uint32; + description + "Partitioned MDT Head local label"; + } + leaf mldp-partitioned-mdt-identifier { + type uint32; + description + "MLDP Partitioned MDT Identifier"; + } + leaf bgp-auto-discovery-configured { + type boolean; + description + "BGP Auto-Discovery configured"; + } + leaf suppress-pim-data-mdt-tlv { + type boolean; + description + "Suppress PIM Data-MDT TLV Announcements"; + } + leaf inter-autonomous-system-enabled { + type boolean; + description + "Inter-AS Enabled"; + } + leaf bgp-source-active-announce { + type boolean; + description + "Send BGP Source-Active Announcements"; + } + leaf bgp-i-pmsi-added { + type boolean; + description + "BGP I-PMSI Added"; + } + leaf mldp-bsr-control-tree-added { + type boolean; + description + "MLDP BSR Control tree added"; + } + leaf mldp-auto-rp-discovery-tree-added { + type boolean; + description + "MLDP Autorp Discovery Control tree added"; + } + leaf mldp-auto-rp-announce-tree-added { + type boolean; + description + "MLDP Autorp Announce Control tree added"; + } + leaf bgp-auto-discovery-type { + type uint32; + description + "BGP Auto Discovery Type"; + } + leaf mdt-partitioned-mdt-control-identifier { + type uint32; + description + "Partitioned MDT Control Identifier"; + } + leaf mdt-partitioned-ir-control-identifier { + type uint32; + description + "Partitioned IR MDT Control Identifier"; + } + leaf mldp-control-head-lsm-identifier { + type uint32; + description + "MLDP MVPN Identifier"; + } + leaf umh { + type boolean; + description + "Join UMH Core-Tree"; + } + leaf suppress-shared-tree-join { + type boolean; + description + "Suppress Shared-Tree Joins"; + } + leaf rsvp-te-mdt-name { + type string; + description + "RSVP-TE MDT Name"; + } + leaf rsvp-te-mdt-interface { + type xr:Interface-name; + description + "RSVP-TEMDT handle"; + } + leaf rsvp-te-mdt-mtu { + type uint32; + description + "RSVP-TEMDT MTU"; + } + leaf rsvp-te-maximum-mdt-aggregation { + type uint32; + description + "RSVP-TE MDT max aggregation"; + } + leaf rsvp-te-mdt-data-switchover-interval { + type uint32; + description + "RSVP-TE Data MDT Switchover interval"; + } + leaf rsvp-te-mdt-data-announce-interval { + type uint32; + description + "RSVP-TE Data MDT Announce interval"; + } + leaf rsvp-te-mdt-rpf-identifier { + type uint32; + description + "RSVP-TE RPF-ID"; + } + leaf is-create-rsvp-te-mdt-interface { + type boolean; + description + "Create RSVP-TE MDT interface"; + } + leaf is-rsvp-te-mdt-owner { + type boolean; + description + "RSVP-TE MDT Owner"; + } + leaf rsvp-te-mdt-static-p2mp-count { + type uint32; + description + "Number of Static P2MP-TE MDT"; + } + leaf p2mpte-li-drop { + type uint32; + description + "Route LI updates dropped for P2MP"; + } + leaf ir-mdt-name { + type string; + description + "IR MDT Name"; + } + leaf ir-mdt-interface { + type xr:Interface-name; + description + "IRMDT handle"; + } + leaf ir-mdt-mtu { + type uint32; + description + "IRMDT MTU"; + } + leaf ir-maximum-mdt-aggregation { + type uint32; + description + "IR MDT max aggregation"; + } + leaf ir-mdt-data-switchover-interval { + type uint32; + description + "IR Data MDT Switchover interval"; + } + leaf ir-mdt-data-announce-interval { + type uint32; + description + "IR Data MDT Announce interval"; + } + leaf ir-mdt-rpf-identifier { + type uint32; + description + "IR RPF-ID"; + } + leaf ir-mdt-tail-label { + type uint32; + description + "IR Tail Label"; + } + leaf is-create-ir-mdt-interface { + type boolean; + description + "Create IR MDT interface"; + } + leaf is-ir-mdt-owner { + type boolean; + description + "IR MDT Owner"; + } + leaf is-sr-local { + type boolean; + description + "SR Local"; + } + leaf is-sr-remote { + type boolean; + description + "SR Remote"; + } + leaf sr-mdt-name { + type string; + description + "SR MDT Name"; + } + leaf sr-mdt-interface { + type xr:Interface-name; + description + "SRMDT handle"; + } + leaf sr-mdt-mtu { + type uint32; + description + "SRMDT MTU"; + } + leaf sr-maximum-mdt-aggregation { + type uint32; + description + "SR MDT max aggregation"; + } + leaf sr-mdt-data-switchover-interval { + type uint32; + description + "SR Data MDT Switchover interval"; + } + leaf sr-mdt-data-announce-interval { + type uint32; + description + "SR Data MDT Announce interval"; + } + leaf sr-mdt-rpf-identifier { + type uint32; + description + "SR RPF-ID"; + } + leaf sr-mdt-tail-label { + type uint32; + description + "SR Tail Label"; + } + leaf is-create-sr-mdt-interface { + type boolean; + description + "Create SR MDT interface"; + } + leaf is-sr-mdt-owner { + type boolean; + description + "SR MDT Owner"; + } + leaf mdt-partitioned-tree-sid-control-identifier { + type uint32; + description + "Partitioned Tree-SID MDT Control Identifier"; + } + leaf in-b-and-mdt-name { + type string; + description + "Inband MDT Name"; + } + leaf in-b-and-mdt-interface { + type xr:Interface-name; + description + "Inband MDT handle"; + } + leaf in-b-and-mdt-mtu { + type uint32; + description + "Inband MDT MTU"; + } + leaf in-band-maximum-mdt-aggregation { + type uint32; + description + "Inband MDT max aggregation"; + } + leaf in-b-and-mdt-data-switchover-interval { + type uint32; + description + "Inband Data MDT Switchover interval"; + } + leaf in-b-and-mdt-data-announce-interval { + type uint32; + description + "Inband Data MDT Announce interval"; + } + leaf in-b-and-mdt-rpf-identifier { + type uint32; + description + "Inband RPF-ID"; + } + leaf is-create-in-b-and-mdt-interface { + type boolean; + description + "Create Inband MDT interface"; + } + leaf is-in-b-and-mdt-owner { + type boolean; + description + "Inband MDT Owner"; + } + leaf in-band-signaling-local-enabled { + type boolean; + description + "Inband signaling Local enabled"; + } + leaf in-band-signaling-remote-enabled { + type boolean; + description + "Inband signaling Remote enabled"; + } + leaf valid-rd-present { + type boolean; + description + "RD is valid"; + } + leaf stale-rd-present { + type boolean; + description + "RD is stale"; + } + leaf route-distinguisher { + type yang:hex-string; + description + "RD value"; + } + leaf gin-b-and-mdt-name { + type string; + description + "Inband MDT Name"; + } + leaf gin-b-and-mdt-interface { + type xr:Interface-name; + description + "Inband MDT handle"; + } + leaf gin-b-and-mdt-mtu { + type uint32; + description + "Inband MDT MTU"; + } + leaf gin-band-maximum-mdt-aggregation { + type uint32; + description + "Inband MDT max aggregation"; + } + leaf gin-b-and-mdt-data-switchover-interval { + type uint32; + description + "Inband Data MDT Switchover interval"; + } + leaf gin-b-and-mdt-data-announce-interval { + type uint32; + description + "Inband Data MDT Announce interval"; + } + leaf gin-b-and-mdt-rpf-identifier { + type uint32; + description + "Inband RPF-ID"; + } + leaf is-create-gin-b-and-mdt-interface { + type boolean; + description + "Create Inband MDT interface"; + } + leaf is-gin-b-and-mdt-owner { + type boolean; + description + "Inband MDT Owner"; + } + leaf is-pim-nsf-rib-converged { + type boolean; + description + "PIM NSF RIB converged"; + } + leaf is-pim-nsf-rib-converge-received { + type boolean; + description + "PIM NSF RIB converge received"; + } + leaf is-rib-multipath-enabled { + type boolean; + description + "PIM RIB multiplath enabled"; + } + leaf is-rib-multipath-interface-hash { + type boolean; + description + "PIM RIB multipath interface hash"; + } + leaf is-rib-multipath-source-hash { + type boolean; + description + "PIM RIB multipath source based hash"; + } + leaf is-rib-multipath-source-next-hop-hash { + type boolean; + description + "PIM RIB multipath source-nexthop hash"; + } + leaf rump-enabled { + type boolean; + description + "PIM is using MuRIB"; + } + leaf is-create-mdt-interface { + type boolean; + description + "Create MDT interface"; + } + leaf is-auto-rp-listen-enabled { + type boolean; + description + "Auto RP Listen Enabled"; + } + leaf is-all-interface-disable-operation { + type boolean; + description + "PIM all interface disable operation"; + } + leaf is-default-granges { + type boolean; + description + "Default granges"; + } + leaf is-auto-rp-listen-sock-add { + type boolean; + description + "Auto RP listen sock add"; + } + leaf is-redistribution-reset { + type boolean; + description + "Pending redist reset"; + } + leaf redistribution-reset-count { + type uint32; + description + "Redist reset count"; + } + leaf rpf-policy-name { + type string; + description + "RPF topology selection route-policy name"; + } + leaf table-count { + type uint32; + description + "Number of configured Tables"; + } + leaf active-table-count { + type uint32; + description + "Number of active Tables"; + } + leaf anycast-rp-policy-name { + type string; + description + "Anycast-RP Policy Name"; + } + leaf anycast-rp-configured { + type boolean; + description + "Anycast-RP config"; + } + leaf bgp-remote-on { + type boolean; + description + "BGP remote interface status"; + } + leaf bgp-remote-interface-name { + type string; + description + "BGP remote interface name"; + } + leaf bgp-remote-interface { + type xr:Interface-name; + description + "BGP remote interface handle"; + } + leaf bgp-remote-address { + type inet:ipv4-address; + description + "BGP remote interface address"; + } + leaf bgp-remote-state { + type uint32; + description + "BGP remote interface state"; + } + leaf physical-interface-count { + type uint64; + description + "Enabled Physical Interface Count"; + } + leaf virtual-interface-count { + type uint64; + description + "Enabled Virtual Interface Count"; + } + leaf virtual-mlc-interface-name { + type string; + description + "Virtual master line card Interface"; + } + leaf mdt-immediate-switch { + type boolean; + description + "MDT Immediate Switch"; + } + leaf remote-mdt-idb-name { + type string; + description + "Remote MDT Interface Handle Name"; + } + leaf remote-mdt-address { + type inet:ipv4-address; + description + "Remote MDT interface address"; + } + leaf-list mldp-root-address { + type uint32; + description + "MLDP Root addresses"; + } + list export-route-target { + description + "Export Route Targets"; + uses PIM-RT-EXTCOMM; + } + list import-route-target { + description + "Import Route Targets"; + uses PIM-RT-EXTCOMM; + } + list anycast-rp-range { + description + "Anycast-RP Ranges"; + uses PIM-ANYCAST-RP-ENTRY; + } + } + + grouping PIM-NBR-SUMM-BAG { + description + "PIM neighbor summary"; + leaf number-of-neighbors { + type int32; + description + "Number of neighbors"; + } + leaf number-of-external-neighbors { + type int32; + description + "Number of external neighbors"; + } + } + + grouping PIM-TABLE-CTX-BAG { + description + "PIM Table context"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf table-name { + type string; + description + "Table name"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf is-active { + type boolean; + description + "Active status"; + } + leaf is-ital-registration-done { + type boolean; + description + "ITAL reg status"; + } + leaf is-rib-registration-done { + type boolean; + description + "RIB reg status"; + } + leaf is-rib-convergence-received { + type boolean; + description + "RIB Convergence receive status"; + } + leaf is-rib-convergence { + type boolean; + description + "RIB Convergence status"; + } + leaf rpf-registrations { + type uint32; + description + "RPF Registration count"; + } + } + + grouping PIM-BIDIR-DF-BAG { + description + "PIM Bidirectional DF entry"; + container rp-address-xr { + description + "RP Address"; + uses PIM-ADDRTYPE; + } + container df-winner { + description + "DF Winner"; + uses PIM-ADDRTYPE; + } + leaf pim-interface-name { + type string; + description + "Interface Name"; + } + leaf are-we-df { + type boolean; + description + "Are we DF"; + } + leaf rp-lan { + type boolean; + description + "Is this the RP LAN"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf metric-preference { + type uint32; + description + "Metric Preference"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + } + + grouping PIM-GRE-PATH-BAG { + description + "PIM GRE path information"; + container gre-neighbor { + description + "GRE neighbor"; + uses PIM-ADDRTYPE; + } + container gre-next-hop { + description + "GRE nexthop"; + uses PIM-ADDRTYPE; + } + leaf gre-interface-name { + type xr:Interface-name; + description + "GRE Interface"; + } + leaf is-gre-interface-disabled { + type boolean; + description + "Is the gre interface disabled ?"; + } + leaf is-via-lsm { + type boolean; + description + "Via LSM"; + } + leaf is-connector-attribute-present { + type boolean; + description + "Connector attribute present"; + } + leaf extranet-vrf-name { + type string { + length "0..33"; + } + description + "Extranet VRF name"; + } + } + + grouping PIM-GRE-INFO-BAG { + description + "PIM GRE information"; + container registered-address { + description + "Address registered"; + uses PIM-ADDRTYPE; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf metric-preference { + type uint32; + description + "Metric preference"; + } + leaf is-connected { + type uint8; + description + "Are we connected ?"; + } + list gre-path { + description + "GRE Paths list"; + uses PIM-GRE-PATH-BAG; + } + } + + grouping PIM-GRP-MAP-INFORPF-BAG { + description + "PIM group-map information"; + container rpf-neighbor { + description + "RPF neighbor to the RP"; + uses PIM-ADDRTYPE; + } + container group-map-information { + description + "Group Mapping information"; + uses PIM-GRP-MAP-BAG; + } + leaf are-we-rp { + type boolean; + description + "Are we the RP?"; + } + leaf rpf-interface-name { + type xr:Interface-name; + description + "RPF interface to the RP"; + } + leaf rpf-vrf-name { + type string { + length "0..33"; + } + description + "RPF VRF Name"; + } + } + + grouping PIM-PKTQ-STATS { + description + "PIM packet queue statistics per priority"; + leaf enqueued-packets { + type uint32; + description + "Total number of packets enqueued to this queue"; + } + leaf dequeued-packets { + type uint32; + description + "Total number of packets dequeued from this queue"; + } + leaf high-water-mark-packets { + type uint32; + description + "Highest number of packets enqueued in this queue"; + } + leaf high-water-mark-bytes { + type uint32; + units "byte"; + description + "Highest number of bytes enqueued in this queue"; + } + leaf tail-drops { + type uint32; + description + "Number packets dropped from this queue due to + max size"; + } + } + + grouping PIM-PKTQ-STATE { + description + "PIM packet queue state per priority"; + leaf max-queue-size { + type uint32; + units "byte"; + description + "Maximum size of queue in bytes"; + } + leaf queue-size-bytes { + type uint32; + units "byte"; + description + "Size of queue in bytes"; + } + leaf queue-size-packets { + type uint32; + description + "Size of queue in number of packets"; + } + } + + grouping PIM-PKTQ { + description + "PIM packet queue state and statistics"; + container packet-queue-state { + description + "State of the queue"; + uses PIM-PKTQ-STATE; + } + container packet-queue-stats { + description + "Statistics about the queue"; + uses PIM-PKTQ-STATS; + } + leaf packet-queue-priority { + type uint32; + description + "Priority of this packet queue"; + } + } + + grouping PIM-TRAFFIC-BAG { + description + "PIM Traffic counters"; + leaf elapsed-time { + type uint32; + units "second"; + description + "Running time for counters in seconds"; + } + leaf inputs { + type uint32; + description + "Packets in"; + } + leaf outputs { + type uint32; + description + "Packets out"; + } + leaf format-error { + type uint32; + description + "Malformed packets in"; + } + leaf pakman-error { + type uint32; + description + "Pakman packets dropped"; + } + leaf standby-packets-error { + type uint32; + description + "Packets received in standby state"; + } + leaf checksum-error { + type uint32; + description + "Checksum errors"; + } + leaf socket-error { + type uint32; + description + "Socket errors"; + } + leaf send-queue-full { + type uint32; + description + "Packets dropped since send queue was full"; + } + leaf boundary-acl-rx-drop { + type uint32; + description + "Inc. JP dropped since boundary ACL confg"; + } + leaf boundary-acl-tx-drop { + type uint32; + description + "Out JP dropped since boundary ACL confg"; + } + leaf no-socket-connection { + type uint32; + description + "Packets dropped since no socket connection"; + } + leaf no-source-address { + type uint32; + description + "Packets dropped since no source address"; + } + leaf input-hello { + type uint32; + description + "Hello packets in"; + } + leaf output-hello { + type uint32; + description + "Hello packets out"; + } + leaf input-jp { + type uint32; + description + "Join Prune packets in"; + } + leaf output-jp { + type uint32; + description + "Join Prune packets out"; + } + leaf input-data-register { + type uint32; + description + "Data Register packets in"; + } + leaf input-null-register { + type uint32; + description + "Null Register packets in"; + } + leaf output-null-register { + type uint32; + description + "Null Register packets out"; + } + leaf input-register-stop { + type uint32; + description + "Register Stop packets in"; + } + leaf output-register-stop { + type uint32; + description + "Register Stop packets out"; + } + leaf input-assert { + type uint32; + description + "Assert packets in"; + } + leaf input-assert-batched { + type uint32; + description + "Batched Assert packets in"; + } + leaf output-assert { + type uint32; + description + "Assert packets out"; + } + leaf output-assert-batched { + type uint32; + description + "Batched Assert packets out"; + } + leaf input-df-election { + type uint32; + description + "DF Election packets in"; + } + leaf output-df-election { + type uint32; + description + "DF Election packets out"; + } + leaf input-bsr-message { + type uint32; + description + "Input BSR Messages"; + } + leaf output-bsr-message { + type uint32; + description + "Output BSR Messages"; + } + leaf input-candidate-rp-advertisement { + type uint32; + description + "Input Candidate-RP Advertisment"; + } + leaf output-candidate-rp-advertisement { + type uint32; + description + "Output Candidate-RP Advertisment"; + } + leaf input-ecmp-redirect { + type uint32; + description + "Input Ecmp Redirect"; + } + leaf output-ecmp-redirect { + type uint32; + description + "Output Ecmp Redirect"; + } + leaf output-loop-error { + type uint32; + description + "Output on loopback error"; + } + leaf mldp-mdt-invalid-lsm-identifier { + type uint32; + description + " Invalid LSM ID"; + } + leaf input-no-idb-error { + type uint32; + description + "No IDB for intf error"; + } + leaf input-no-vrf-error { + type uint32; + description + "No VRF for idb error"; + } + leaf input-no-pim-error { + type uint32; + description + "PIM Disabled on intf error"; + } + leaf input-pim-version-error { + type uint32; + description + "Invalid PIM version error"; + } + leaf output-join-group { + type uint32; + description + "Output Join Groups"; + } + leaf output-prune-group { + type uint32; + description + "Output Prune Groups"; + } + leaf output-join-prune-bytes { + type uint32; + units "byte"; + description + "Output JP Bytes"; + } + leaf output-hello-bytes { + type uint32; + units "byte"; + description + "Output Hello Bytes"; + } + leaf non-supported-packets { + type uint32; + description + "PIM non supported pckets"; + } + leaf invalid-registers { + type uint32; + description + "PIM invalid registers received"; + } + leaf invalid-join-prunes { + type uint32; + description + "PIM invalid Join/Prunes received"; + } + leaf rp-mapping-change { + type uint32; + description + "PIM RP Mapping Change"; + } + leaf packet-packman-error { + type uint32; + description + "Packets Dropped due to Pakman Error"; + } + leaf packet-read-socket-error { + type uint32; + description + "Packet Read Socket Error"; + } + leaf packet-queue-last-clear { + type uint32; + units "second"; + description + "Time in seconds since the last clear of all + packet queues stats"; + } + leaf packets-standby { + type uint32; + description + "Packets Dropped due to Standby Error"; + } + leaf no-mdt-socket-connection { + type uint32; + description + "Packets dropped since no mdt socket connection"; + } + leaf mdt-send-queue-full { + type uint32; + description + "Packets dropped since mdt send queue was full"; + } + leaf mdt-socket-error { + type uint32; + description + "MDT Socket errors"; + } + leaf mdt-join-tlv-sent { + type uint32; + description + "Data MDT Join Msgs sent"; + } + leaf mdt-join-tlv-received { + type uint32; + description + "Data MDT Join Msgs received"; + } + leaf mdt-join-bad-type { + type uint32; + description + "Data MDT TLV bad type"; + } + leaf mdt-drop-local-source-address { + type uint32; + description + "Data MDT Join msgs dropped due to local source + addr"; + } + leaf mdt-drop-null-local-address { + type uint32; + description + "Data MDT Join msgs dropped due to null local + addr"; + } + leaf mdt-drop-no-idb { + type uint32; + description + "Data MDT Join msgs dropped due to idb missing"; + } + leaf mdt-drop-no-vrf { + type uint32; + description + "Data MDT Join msgs dropped due to vrf missing"; + } + leaf invalid-destination-packets { + type uint32; + description + "Control Packets with Invalid Destination"; + } + leaf mdt-joins-drop-multiple-encapsulation { + type uint32; + description + "MDT Join msgs dropped due to multiple Encap + limitation"; + } + leaf truncated-pim-packets { + type uint32; + description + "Packets dropped due to truncated Joins or Prunes"; + } + leaf invalid-source-encodings { + type uint32; + description + "Number of invalid source encodings received"; + } + leaf invalid-hello-options { + type uint32; + description + "Number of invalid hello options received"; + } + list packet-queue { + max-elements "2"; + description + "Packet queue state and statistics"; + uses PIM-PKTQ; + } + } + + grouping PIM-GRP-MAP-BAG { + description + "PIM group-map basic information"; + container prefix { + description + "Group range prefix"; + uses PIM-ADDRTYPE; + } + container rp-address { + description + "Rendezvous Point Address"; + uses PIM-ADDRTYPE; + } + leaf prefix-length { + type int32; + description + "Group range prefix length"; + } + leaf client { + type Pim-show-range-client; + description + "Client mapping learnt from"; + } + leaf protocol { + type Pim-show-protocol; + description + "Protocol mode of the range"; + } + leaf group-count { + type uint32; + description + "No. of groups in this range"; + } + leaf is-used { + type boolean; + description + "Is this mapping being used?"; + } + leaf mrib-active { + type boolean; + description + "Is this mapping active in MRIB?"; + } + leaf is-override { + type boolean; + description + "Is this the override range?"; + } + leaf priority { + type uint32; + description + "Bootstrap priority"; + } + } + + grouping PIM-GRP-MAP-INFOSRC-BAG { + description + "PIM group-map source information"; + container source-of-information { + description + "The source of information"; + uses PIM-ADDRTYPE; + } + container group-map-information { + description + "Group Mapping information"; + uses PIM-GRP-MAP-BAG; + } + leaf holdtime { + type int32; + units "second"; + description + "Holdtime in seconds"; + } + leaf expires { + type uint64; + units "second"; + description + "Mapping expiry time in seconds"; + } + leaf uptime { + type uint64; + units "second"; + description + "Mapping uptime in seconds"; + } + } + + grouping PIM-TT-OLE-BAG { + description + "PIM topology OLE information"; + container assert-winner { + description + "Assert Winner"; + uses PIM-ADDRTYPE; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiry { + type uint64; + units "second"; + description + "Expiry in seconds"; + } + leaf bgp-c-mcast-prune-delay-timer { + type uint64; + units "second"; + description + "BGP C-MCAST Prune Suppression in seconds"; + } + leaf jp-timer { + type int32; + units "second"; + description + "Join-Prune Timer (secs)"; + } + leaf jp-state { + type int32; + description + "Join-Prune State"; + } + leaf assert-timer { + type int32; + units "second"; + description + "Assert Timer in seconds"; + } + leaf local-members { + type int32; + description + "Local Information. Deprecated - use + 'local-members-information' instead"; + } + leaf internal-interest-info { + type int32; + description + "Internal Interest. Deprecated - use + 'internal-interest-information' instead"; + } + leaf forwarding-state { + type int32; + description + "Forward or Prune"; + } + leaf immediate-state { + type int32; + description + "Immediate fwding state"; + } + leaf last-hop { + type boolean; + description + "Are we last hop ?"; + } + leaf mldp-inband-mdt { + type boolean; + description + "MLDP Inband MDT interface"; + } + leaf mldp-stale { + type boolean; + description + "OLE is stale"; + } + leaf sa-prune { + type boolean; + description + "BGP SA Prune state"; + } + leaf admin-boundary { + type boolean; + description + "Is this an administrative boundary ?"; + } + leaf igmp-membership { + type boolean; + description + "IGMP membership"; + } + leaf mdt-safi-join { + type boolean; + description + "MDT Safi join"; + } + leaf mvpn-safi-join { + type boolean; + description + "MVPN Safi join"; + } + leaf local-mdt-join { + type boolean; + description + "Default MDT Join"; + } + leaf data-mdt-join { + type boolean; + description + "Data MDT join"; + } + leaf mvpnv6-safi-join { + type boolean; + description + "MVPN IPv6 Safi join"; + } + leaf bgp-c-mcast-join { + type boolean; + description + "BGP C-Mcast join"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF which physically owns"; + } + leaf extranet-interface { + type boolean; + description + "Is this an Extranet Interface ?"; + } + leaf internal-interest-information { + type Pim-internal-interest-info; + description + "Internal Interest. Replaces + internal-interest-info"; + } + leaf local-members-information { + type Pim-show-local-interest; + description + "Local Information. Replaces local-members"; + } + leaf assert-state { + type boolean; + description + "Assert State"; + } + } + + grouping PIM-TT-ROUTE-BAG { + description + "PIM topology table route"; + container group-address-xr { + description + "Group Address"; + uses PIM-ADDRTYPE; + } + container source-address-xr { + description + "Source Address"; + uses PIM-ADDRTYPE; + } + container rp-address { + description + "RP Address (If rpt)"; + uses PIM-ADDRTYPE; + } + container rpf-neighbor { + description + "RPF Neighbor"; + uses PIM-ADDRTYPE; + } + container secondary-rpf-neighbor { + description + "Secondary RPF Neighbor"; + uses PIM-ADDRTYPE; + } + container rpf-root { + description + "Root of this mcast tree"; + uses PIM-ADDRTYPE; + } + container proxy-address { + description + "RPF Proxy address."; + uses PIM-ADDRTYPE; + } + container orig-src-address { + description + "Orig Src Address."; + uses PIM-ADDRTYPE; + } + leaf limit-reached { + type boolean; + description + "Have we throttled the creation of routes or + interfaces ?"; + } + leaf low-memory { + type boolean; + description + "Node is running low on memory"; + } + leaf protocol { + type Pim-show-protocol; + description + "The PIM protocol"; + } + leaf wildcard { + type boolean; + description + "WC -Wildcard"; + } + leaf rpt-xr { + type boolean; + description + "Is this on the RPT ?"; + } + leaf spt { + type boolean; + description + "Is this on the SPT ?"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiry { + type uint64; + description + "When this entry expires"; + } + leaf alive { + type int32; + units "second"; + description + "Alive time in seconds (-1 if never)"; + } + leaf register-received-timer { + type int32; + units "second"; + description + "Register Received Timer in seconds (-1 if never)"; + } + leaf remote-source { + type boolean; + description + "MSDP told us"; + } + leaf crossed-threshold { + type boolean; + description + "Incoming traffic crossed threshold. MT flag set"; + } + leaf data-mdt-addr-assigned { + type boolean; + description + "PIM has assigned a Data MDT Address"; + } + leaf rpf-interface-name { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf rpf-vrf-name { + type string { + length "0..33"; + } + description + "RPF VRF Name"; + } + leaf rpf-safi { + type uint8; + description + "Unicast or mcast"; + } + leaf rpf-table-name { + type string; + description + "RPF Table name"; + } + leaf rpf-drop { + type boolean; + description + "RPF route-policy drop"; + } + leaf rpf-extranet { + type boolean; + description + "Extranet RPF route-policy"; + } + leaf is-via-lsm { + type boolean; + description + "Via LSM"; + } + leaf secondary-rpf-interface-name { + type xr:Interface-name; + description + "Secondary Interface Identifier"; + } + leaf connected { + type boolean; + description + "Is Connected ?"; + } + leaf proxy { + type boolean; + description + "Is the RPF target a proxy?"; + } + leaf rpf-proxy-enabled { + type boolean; + description + "Is rpf if proxy enabled?"; + } + leaf mofrr-enabled { + type boolean; + description + "Is this SG MoFRR enabled?"; + } + leaf rib-mo-frr-enabled { + type boolean; + description + "Is this SG MoFRR enabled?"; + } + leaf jp-timer { + type int32; + description + "Join-Prune Timer"; + } + leaf jp-status { + type int32; + description + "Join-Prune Status"; + } + leaf suppress-registers { + type int32; + description + "When the Null register probe expires"; + } + leaf assume-alive { + type boolean; + description + "The Assume Alive Bit"; + } + leaf probe-alive { + type boolean; + description + "The Probe Alive Bit"; + } + leaf really-alive { + type boolean; + description + "The Really Alive Bit"; + } + leaf inherit-alive { + type boolean; + description + "The Inherit Alive Bit"; + } + leaf inherit-spt { + type boolean; + description + "The Inherit SPT Bit"; + } + leaf signal-sources { + type boolean; + description + "Signal Sources on route?"; + } + leaf dont-check-connected { + type boolean; + description + "Do we need to make the connected check on this + route ?"; + } + leaf register-received { + type boolean; + description + "Have registers been received for this source ?"; + } + leaf last-hop { + type boolean; + description + "Are we last hop ?"; + } + leaf sending-registers { + type boolean; + description + "Are we sending registers for this route ?"; + } + leaf sending-null-registers { + type boolean; + description + "Are we sending null registers for this route ?"; + } + leaf sa-sent { + type boolean; + description + "BGP SA sent"; + } + leaf sa-received { + type boolean; + description + "BGP SA received"; + } + leaf sa-joined { + type boolean; + description + "BGP SA join"; + } + leaf anycast-rp-match { + type boolean; + description + "Group matches Anycast-RP policy"; + } + leaf anycast-rp-route-target { + type inet:ipv4-address; + description + "Anycast-RP RT"; + } + leaf bgp-join { + type boolean; + description + "BGP C JOIN"; + } + leaf bgp-jp-time { + type uint64; + description + "BGP C JP Time"; + } + leaf customer-routing-type { + type int32; + description + "Type of Customer Routing in the MVPN"; + } + leaf extranet-route { + type boolean; + description + "Is a Extranet route ?"; + } + leaf mofrr-active { + type boolean; + description + "Is MoFRR Active?"; + } + leaf mofrr-primary { + type boolean; + description + "Is this Mofrr Primary?"; + } + leaf mofrr-backup { + type boolean; + description + "Is this Mofrr Backup?"; + } + leaf vxlan { + type boolean; + description + "Is this VXLAN?"; + } + leaf kat-state { + type boolean; + description + "Keep Alive Timer State"; + } + list route-join-recv-event { + max-elements "16"; + description + "Join Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list route-join-send-event { + max-elements "16"; + description + "Join Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list outgoing-interface { + description + "Outgoing interface list"; + uses PIM-TT-OLE-BAG; + } + } + + grouping PIM-BIDIR-DF-STATE-BAG { + description + "PIM Bidirectional DF state"; + container rp-address-xr { + description + "RP Address"; + uses PIM-ADDRTYPE; + } + leaf pim-interface-name { + type string; + description + "Interface Name"; + } + leaf election-state { + type string; + description + "DF Election State"; + } + leaf time-seconds { + type uint64; + units "second"; + description + "Timer expires (seconds)"; + } + leaf time-nano-seconds { + type uint64; + units "nanosecond"; + description + "Timer expires (nseconds)"; + } + leaf our-metric { + type uint32; + description + "Metric"; + } + leaf our-metric-preference { + type uint32; + description + "MetricPreference"; + } + } + + grouping PIM-TUNNEL-INFO-BAG { + description + "PIM tunnel information"; + container source-address { + description + "Source addr known to PIM"; + uses PIM-ADDRTYPE; + } + container rp-address { + description + "RP addr known to PIM"; + uses PIM-ADDRTYPE; + } + container source-address-netio { + description + "Source addr from netio"; + uses PIM-ADDRTYPE; + } + container group-address-netio { + description + "Group addr from netio"; + uses PIM-ADDRTYPE; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF Name"; + } + } + + grouping PIM-RPF-SUMMARY-BAG { + description + "PIM RPF count summary"; + leaf default-safi { + type uint32; + description + "Default RPF Table SAFI"; + } + leaf default-table-name { + type string; + description + "Default RPF Table Name"; + } + leaf is-mbgp-configured { + type boolean; + description + "Is MBGP configured?"; + } + leaf is-ospf-te-configured { + type boolean; + description + "Is OSPF TE configured?"; + } + leaf is-isis-te-configured { + type boolean; + description + "Is ISIS TE configured?"; + } + leaf is-isis-mtr-configured { + type boolean; + description + "Is ISIS MTR configured?"; + } + leaf mo-frr-configured { + type boolean; + description + "Is MoFRR configured?"; + } + leaf rib-mo-frr-configured { + type boolean; + description + "Is MoFRR RIB configured?"; + } + leaf rump-enabled { + type boolean; + description + "Is RUMP MuRIB enabled?"; + } + leaf rib-convergence-timeout { + type uint32; + units "second"; + description + "RIB convergence timeout in seconds"; + } + leaf rib-convergence-time-left { + type uint32; + units "second"; + description + "RIB convergence time left in seconds"; + } + leaf is-multipath-enabled { + type boolean; + description + "Is Multipath Enabled ?"; + } + leaf is-multipath-interface-hash-enabled { + type boolean; + description + "Is Multipath Interface Hash Extension Enabled ?"; + } + leaf is-multipath-source-hash-enabled { + type boolean; + description + "Is Multipath Source based Hash Enabled ?"; + } + leaf is-multipath-source-next-hop-hash-enabled { + type boolean; + description + "Is Multipath Source-Nexthop Hash Enabled ?"; + } + leaf rpf-registrations { + type uint32; + description + "RPF Registration count"; + } + leaf is-rib-convergence { + type boolean; + description + "RIB Convergence status"; + } + } + + grouping PIM-RPF-POLICY-STATS-BAG { + description + "PIM RPF policy statistics"; + leaf policy-name { + type string; + description + "RPF policy name"; + } + leaf requests { + type uint32; + description + "Number of RPF lookup requests"; + } + leaf pass { + type uint32; + description + "Number of RPF pass"; + } + leaf drop { + type uint32; + description + "Number of RPF drops"; + } + leaf default-table { + type uint32; + description + "Number of RPF lookup in default-only Table"; + } + leaf any-table { + type uint32; + description + "Number of RPF lookup in any Table"; + } + } + + grouping PIM-BSR-ELECTION-BAG { + description + "PIM BSR Election State"; + container bsr-address { + description + "BSR address"; + uses PIM-ADDRTYPE; + } + container candidate-bsr-address { + description + "C-BSR address"; + uses PIM-ADDRTYPE; + } + leaf bsr-priority { + type uint8; + description + "BSR Priority"; + } + leaf bsr-mask-length { + type uint8; + description + "Hash Function Mask Length"; + } + leaf bsr-up-time { + type uint16; + description + "BSR Uptime"; + } + leaf bootstrap-timeout { + type uint16; + description + "Bootstrap Timeout"; + } + leaf candidate-bsr-state { + type uint32; + description + "BSR Candidate State"; + } + leaf bsr-election-state { + type uint32; + description + "BSR Election State"; + } + leaf bsr-scope { + type uint16; + description + "BSR Scope"; + } + leaf candidate-bsr-flag { + type boolean; + description + "BSR Candidate Config Flag"; + } + leaf candidate-bsr-priority { + type uint8; + description + "C-BSR Priority"; + } + leaf candidate-bsr-mask-length { + type uint8; + description + "C-BSR Hash Func. Mask Len"; + } + list bsr-send-event { + max-elements "8"; + description + "BSR Send Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list bsr-recv-event { + max-elements "8"; + description + "BSR Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list bsrcrp-adv-recv-event { + max-elements "8"; + description + "BSR CRP Adv Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + } + + grouping PIM-BSR-CRP-ACL-BAG { + description + "PIM BSR Candidate RP Access-list"; + leaf candidate-rp-mode { + type Pim-show-protocol; + description + "Cand-RP Mode"; + } + leaf acl-name { + type string { + length "0..33"; + } + description + "Group Access-List Name"; + } + } + + grouping PIM-BSR-CANDIDATE-RP-BAG { + description + "PIM BSR Candidate RP"; + container candidate-rp { + description + "Cand-RP Address"; + uses PIM-ADDRTYPE; + } + leaf candidate-rp-mode { + type Pim-show-protocol; + description + "Cand-RP Mode"; + } + leaf candidate-rp-scope { + type int32; + description + "Cand-RP Scope"; + } + leaf crp-priority { + type uint8; + description + "Cand-RP Priority"; + } + leaf crp-holdtime { + type uint16; + description + "Cand-RP Holdtime"; + } + leaf candidate-rp-advance-interval { + type uint16; + units "second"; + description + "Cand-RP Adv Interval in seconds"; + } + leaf candidate-rp-uptime { + type uint16; + description + "Cand-RP uptime"; + } + leaf acl-name { + type string { + length "0..33"; + } + description + "Group Access-List Name"; + } + list crp-access { + max-elements "2"; + description + "Group Ranges Using this Cand-RP"; + uses PIM-BSR-CRP-ACL-BAG; + } + list crp-adv-send-event { + max-elements "8"; + description + "CRP Adv Send Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + } + + grouping PIM-BSR-CRP-BAG { + description + "PIM BSR C-RP"; + list pim-bsr-crp-bag { + description + "Next C-RP in the List"; + container candidate-rp-address { + description + "C-RP address"; + uses PIM-ADDRTYPE; + } + leaf candidate-rp-holdtime { + type uint16; + description + "C-RP Holdtime"; + } + leaf candidate-rp-priority { + type uint8; + description + "C-RP Priority"; + } + leaf candidate-rp-up-time { + type uint16; + description + "C-RP Uptime"; + } + leaf candidate-rp-expires { + type uint16; + description + "C-RP Expires"; + } + leaf protocol { + type Pim-show-protocol; + description + "PIM Protocol"; + } + } + } + + grouping PIM-BSR-RP-CACHE-BAG { + description + "PIM BSR RP cache"; + container group-prefix-xr { + description + "Group Prefix"; + uses PIM-ADDRTYPE; + } + container candidate-rp-list { + description + "C-RP list for this prefix"; + uses PIM-BSR-CRP-BAG; + } + leaf group-prefix-length { + type uint32; + description + "Group Prefix Length"; + } + leaf candidate-rp-group-count { + type uint32; + description + "C-RP count for this Prefix"; + } + } + + grouping PIM-RL-RP-RANGE-BAG { + description + "PIM RP range list information"; + container prefix { + description + "Group range prefix"; + uses PIM-ADDRTYPE; + } + container source-of-information { + description + "Source of information"; + uses PIM-ADDRTYPE; + } + leaf prefix-length { + type int32; + description + "Group range prefix length"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expires { + type uint64; + description + "When mapping expires"; + } + } + + grouping PIM-RL-BAG { + description + "PIM range list information"; + container rp-address-xr { + description + "Rendezvous point address"; + uses PIM-ADDRTYPE; + } + container source-of-information { + description + "Source of information"; + uses PIM-ADDRTYPE; + } + leaf protocol { + type Pim-show-protocol; + description + "PIM protocol"; + } + leaf client-xr { + type Pim-show-range-client; + description + "Client mapping learnt via"; + } + leaf expires { + type uint64; + description + "When mapping expires"; + } + list group-range { + description + "List of group ranges"; + uses PIM-RL-RP-RANGE-BAG; + } + } + + grouping PIM-IDB-SUMM-BAG { + description + "PIM IFRS interface summary"; + leaf interface-count { + type uint32; + description + "Number of interfaces"; + } + leaf configuration-count { + type uint32; + description + "Configuration counts"; + } + } + + grouping PIM-MROUTE-BAG { + description + "Multicast Route MIB entry"; + container source-address-xr { + description + "Source Address"; + uses PIM-ADDRTYPE; + } + container group-address-xr { + description + "Group Address"; + uses PIM-ADDRTYPE; + } + container rpf-neighbor { + description + "The RPF Neighbor"; + uses PIM-ADDRTYPE; + } + container rpf-root { + description + "Root of this mcast tree"; + uses PIM-ADDRTYPE; + } + leaf upstream-assert-timer { + type int32; + description + "Upstream Assert Timer"; + } + leaf assert-metric { + type uint32; + description + "Assert Metric"; + } + leaf assert-metric-preference { + type uint32; + description + "Assert Metric Preference"; + } + leaf assert-rpt-bit { + type boolean; + description + "Assert RPT Bit"; + } + leaf spt-bit { + type boolean; + description + "Is SPT bit set ?"; + } + leaf rpf-mask { + type uint32; + description + "Mask of the multicast root"; + } + leaf rpf-safi { + type uint8; + description + "Unicast or mcast"; + } + leaf rpf-table-name { + type string; + description + "RPF Table name"; + } + leaf rpf-drop { + type boolean; + description + "RPF route-policy drop"; + } + leaf rpf-extranet { + type boolean; + description + "Extranet RPF route-policy"; + } + leaf rpf-interface-name { + type xr:Interface-name; + description + "RPF interface name "; + } + leaf rpf-vrf-name { + type string { + length "0..33"; + } + description + "RPF VRF Name"; + } + leaf bidirectional-route { + type boolean; + description + "Is this Bidir ?"; + } + leaf uptime { + type uint64; + description + "Uptime of route"; + } + leaf protocol { + type Pim-show-protocol; + description + "The PIM protocol"; + } + } + + grouping PIM-JPSTATS-BAG { + description + "PIM join-prune statistic"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf mtu { + type uint32; + description + "Interface MTU"; + } + leaf transmitted { + type uint32; + description + "Transmitted"; + } + leaf transmitted100 { + type uint16; + description + "Transmitted 100 average"; + } + leaf transmitted-1k { + type uint16; + description + "Transmitted 1K average"; + } + leaf transmitted-10k { + type uint16; + description + "Transmitted 10K average"; + } + leaf transmitted-50k { + type uint16; + description + "Deprecated by Transmitted100"; + } + leaf received { + type uint32; + description + "Received"; + } + leaf received100 { + type uint16; + description + "Received 100 average"; + } + leaf received-1k { + type uint16; + description + "Received 1K average"; + } + leaf received-10k { + type uint16; + description + "Received 10K average"; + } + leaf received-50k { + type uint16; + description + "Deprecated by Received100"; + } + } + + grouping PIM-TT-SUMM-BAG { + description + "PIM topology table summary"; + leaf group-ranges { + type uint32; + description + "No. of (*,G/M) routes"; + } + leaf active-group-ranges { + type uint32; + description + "No. of (*,G/M) routes active in mrib"; + } + leaf groute-count { + type uint32; + description + "No. of (*,G) routes"; + } + leaf sg-route-count { + type uint32; + description + "No. of (S,G) routes"; + } + leaf sgr-route-count { + type uint32; + description + "No. of (S,G)RPT routes"; + } + leaf is-node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + } + + grouping PIM-IFSTATS-BAG { + description + "PIM Interface Statistics"; + leaf input-hello { + type uint32; + description + "Hello packets in"; + } + leaf output-hello { + type uint32; + description + "Hello packets out"; + } + leaf input-register { + type uint32; + description + "Register packets in"; + } + leaf output-register { + type uint32; + description + "Register packets out"; + } + leaf input-register-stop { + type uint32; + description + "Register Stop packets in"; + } + leaf output-register-stop { + type uint32; + description + "Register Stop packets out"; + } + leaf input-jp { + type uint32; + description + "Join Prune packets in"; + } + leaf output-jp { + type uint32; + description + "Join Prune packets out"; + } + leaf input-bsr-message { + type uint32; + description + "Input BSR Messages"; + } + leaf output-bsr-message { + type uint32; + description + "Output BSR Messages"; + } + leaf input-assert { + type uint32; + description + "Assert packets in"; + } + leaf output-assert { + type uint32; + description + "Assert packets out"; + } + leaf input-graft-message { + type uint32; + description + "Input Graft Messages"; + } + leaf output-graft-message { + type uint32; + description + "Output Graft Messages"; + } + leaf input-graft-ack-message { + type uint32; + description + "Input Graft Ack Messages"; + } + leaf output-graft-ack-message { + type uint32; + description + "Output Graft Ack Messages"; + } + leaf input-candidate-rp-advertisement { + type uint32; + description + "Input Candidate-RP Advertisment"; + } + leaf output-candidate-rp-advertisement { + type uint32; + description + "Output Candidate-RP Advertisment"; + } + leaf input-df-election { + type uint32; + description + "DF Election packets in"; + } + leaf output-df-election { + type uint32; + description + "DF Election packets out"; + } + leaf input-miscellaneous { + type uint32; + description + "Miscellaneous packet in"; + } + } + + grouping PIM-ISSU-BAG { + description + "ISSU information"; + leaf informationvalid { + type boolean; + description + "Is Information valid ?"; + } + leaf role-ha { + type int32; + description + "HA role"; + } + leaf role-issu { + type int32; + description + "ISSU role"; + } + leaf phase-issu { + type int32; + description + "ISSU Phase"; + } + leaf last-ha-role-notification-received { + type uint64; + description + "Time when last HA role nfn was received"; + } + leaf last-issu-role-notification-received { + type uint64; + description + "Time when last ISSU role nfn was received"; + } + leaf last-issu-phase-notification-received { + type uint64; + description + "Time when last ISSU Phase nfn was received"; + } + leaf is-eoc-received { + type boolean; + description + "Was EOC received ?"; + } + leaf eoc-received-timestamp { + type uint64; + description + "Time when EOC was received"; + } + leaf is-ihms-done-received { + type boolean; + description + "Was IHMS done received ?"; + } + leaf ihms-received-timestamp { + type uint64; + description + "Time when IHMS done was received"; + } + leaf is-rib-sync-received { + type boolean; + description + "Was RIB Sync received ?"; + } + leaf rib-sync-received-timestamp { + type uint64; + description + "Time when RIB Sync was received"; + } + leaf is-nbr-sync-received { + type boolean; + description + "Was NBR Sync achieved ?"; + } + leaf nbr-sync-received-timestamp { + type uint64; + description + "Time when NBR Sync was achieved"; + } + leaf is-checkpoint-idt-done { + type boolean; + description + "Was Checkpoint IDT done ?"; + } + leaf checkpoint-idt-timestamp { + type uint64; + description + "Time when Checkpoint IDT done"; + } + } + + grouping PIM-NSF-BAG { + description + "PIM NSF state"; + leaf configured-state { + type boolean; + description + "Is Multicast NSF Configured"; + } + leaf nsf-state { + type boolean; + description + "Are we currently in NSF"; + } + leaf nsf-timeout { + type uint32; + units "second"; + description + "Multicast NSF timeout in seconds"; + } + leaf nsf-time-left { + type uint32; + units "second"; + description + "Multicast NSF time left in seconds"; + } + leaf waiting-timer { + type boolean; + description + "Waiting for NSF timer expiry"; + } + leaf waiting-membership { + type boolean; + description + "Waiting for IGMP/MLD"; + } + leaf respawn-count { + type uint32; + description + "Respawn Count"; + } + leaf last-nsf-on { + type int64; + description + "Last NSF time ON"; + } + leaf last-nsf-off { + type int64; + description + "Last NSF time off"; + } + leaf last-nsf-on-sec { + type int32; + units "second"; + description + "Last NSF time ON in Seconds"; + } + leaf last-nsf-off-sec { + type int32; + units "second"; + description + "Last NSF time OFF in Seconds"; + } + leaf last-icd-notif-recv { + type int64; + description + "Last ICD Notif Recv"; + } + leaf last-icd-notif-recv-sec { + type int32; + units "second"; + description + "Last ICD Notif Recv in Seconds"; + } + } + + grouping PIM-SUMMARY-BAG { + description + "PIM Summary Bag"; + leaf route-limit { + type uint32; + description + "Maximum routes"; + } + leaf route-count { + type uint32; + description + "Current routes"; + } + leaf route-low-water-mark { + type uint32; + description + "The number of routes below which the throttle on + route creation will be lifted"; + } + leaf is-route-limit-reached { + type boolean; + description + "Is route creation throttled"; + } + leaf topology-interface-state-limit { + type uint32; + description + "Maximum Topology Interface State count"; + } + leaf topology-interface-state-count { + type uint32; + description + "Current Topology Interface State count"; + } + leaf rxi-low-water-mark { + type uint32; + description + "The rxi below which the throttle on interface + creation will be lifted"; + } + leaf rxi-limit-reached { + type boolean; + description + "Is interface creation throttled"; + } + leaf register-limit { + type uint32; + description + "Maximum registers"; + } + leaf register-count { + type uint32; + description + "Current registers"; + } + leaf register-limit-reached { + type boolean; + description + "Is PIM SM register handling throttled"; + } + leaf ranges-limit { + type uint32; + description + "Maximum group ranges from Autorp"; + } + leaf ranges-count { + type uint32; + description + "Current group ranges from Autorp"; + } + leaf ranges-threshold { + type uint32; + description + "OOR theshold of grange ranges from AutoRP"; + } + leaf is-ranges-limit-reached { + type boolean; + description + "Is Auto-RP group-to-RP mapping range creation + throttled"; + } + leaf bsr-ranges-limit { + type uint32; + description + "Maximum group ranges from BSR"; + } + leaf bsr-ranges-count { + type uint32; + description + "Current group ranges from BSR"; + } + leaf bsr-range-threshold { + type uint32; + description + "Threshold group range from BSR"; + } + leaf is-bsr-ranges-threshold-reached { + type boolean; + description + "Is VRF-specific BSR group-to-RP mapping range + creation throttled"; + } + leaf bsr-candidate-rp-set-limit { + type uint32; + description + "Maximum crp-set from BSR"; + } + leaf bsr-candidate-rp-set-count { + type uint32; + description + "Current crp-set count from BSR"; + } + leaf bsr-candidate-rp-set-threshold { + type uint32; + description + "Threshold crp-set from BSR"; + } + leaf is-maximum-enforcement-disabled { + type boolean; + description + "Is maximum enforcement disabled"; + } + leaf is-node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + leaf route-threshold { + type uint32; + description + "Threshold routes"; + } + leaf global-auto-rp-ranges-limit { + type uint32; + description + "Global Auto-RP maximum group ranges"; + } + leaf is-global-auto-rp-ranges-limit-reached { + type boolean; + description + "Is global AutoRP group-to-RP mapping range + creation throttled"; + } + leaf global-bsr-ranges-limit { + type uint32; + description + "Global BSR maximum group ranges"; + } + leaf global-bsr-ranges-count { + type uint32; + description + "Global BSR current group ranges"; + } + leaf global-bsr-ranges-threshold { + type uint32; + description + "Global BSR Threshold group ranges"; + } + leaf is-global-bsr-ranges-limit-reached { + type boolean; + description + "Is global BSR group-to-RP mapping range creation + throttled"; + } + leaf global-bsr-candidate-rp-set-limit { + type uint32; + description + "Global BSR maximum crp-set"; + } + leaf global-bsr-candidate-rp-set-count { + type uint32; + description + "Global BSR current crp-set count"; + } + leaf global-bsr-candidate-rp-set-threshold { + type uint32; + description + "Global BSR Threshold crp-set"; + } + leaf is-global-route-limit-reached { + type boolean; + description + "Is global route creation throttled"; + } + leaf topology-interface-state-threshold { + type uint32; + description + "Topology Interface State threshold"; + } + leaf is-global-rxi-limit-reached { + type boolean; + description + "Is global interface creation throttled"; + } + leaf register-threshold { + type uint32; + description + "Threshold registers"; + } + leaf global-register-limit { + type uint32; + description + "Maximum global registers"; + } + leaf is-global-register-limit-reached { + type boolean; + description + "Is global PIM SM register handling throttled"; + } + } + + grouping PIM-NSR-BAG { + description + "NSR Related information"; + leaf state { + type uint8; + description + "NSR state"; + } + leaf partner-connected { + type boolean; + description + "Partner process connected"; + } + leaf rmf-notification-done { + type boolean; + description + "RMF Notification done"; + } + leaf rmf-timer-valid { + type boolean; + description + "Is RMF timer running ?"; + } + leaf rmf-timer-expiry { + type uint64; + description + "Time for RMF timer to expire"; + } + leaf last-connection-up { + type uint64; + description + "Time when connection went up"; + } + leaf last-connection-dn { + type uint64; + description + "Time when connection went down"; + } + leaf last-rmf-ready { + type uint64; + description + "Time when RMF Rdy notif was sent"; + } + leaf last-rmf-not-ready { + type uint64; + description + "Time when RMF Not-Rdy notif was sent"; + } + leaf count-connection-up { + type uint32; + description + "No. of times connection went up"; + } + leaf count-connection-dn { + type uint32; + description + "No. of times connection went down"; + } + leaf count-rmf-ready { + type uint32; + description + "No. of times RMF Ready notif was sent"; + } + leaf count-rmf-not-ready { + type uint32; + description + "No. of times RMF Not Ready notif was sent"; + } + } + + grouping PIM-MISSED-PACKET-BAG { + description + "PIM Missed Packet"; + leaf message-type { + type uint32; + description + "Message Type"; + } + leaf message-string { + type string { + length "0..70"; + } + description + "Message String"; + } + leaf message-time { + type string { + length "0..40"; + } + description + "Message Time"; + } + } + + grouping PIM-MISSED-PACKETS-LIST-BAG { + description + "PIM Missed Packets list information"; + list missed-packets { + description + "List of Missed Packets"; + uses PIM-MISSED-PACKET-BAG; + } + } + + grouping PIM-BAG-EVENT-HISTORY { + description + "PIM BAG EVENT HISTORY"; + leaf event-str { + type string { + length "0..70"; + } + description + "event str"; + } + leaf event-time { + type string { + length "0..40"; + } + description + "event time"; + } + } + + grouping PIM-IDB-BAG { + description + "PIM interface"; + container dr-address { + description + "PIM Designated Router"; + uses PIM-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Identfier"; + } + leaf interface-address-mask { + type uint8; + description + "Interface IP Address Mask"; + } + leaf is-enabled { + type boolean; + description + "Is PIM enabled on this IF ?"; + } + leaf neighbor-count { + type uint16; + description + "No. of neighbors on this IF"; + } + leaf external-neighbor-count { + type uint16; + description + "No. of external neighbors on this IF"; + } + leaf hello-interval { + type uint16; + description + "Hello Interval"; + } + leaf dr-priority { + type uint32; + description + "DR Priority"; + } + leaf hello-expiry { + type uint64; + description + "Hello Timer Expiry"; + } + leaf are-we-dr { + type boolean; + description + "Are we the DR on this IF ?"; + } + leaf bfd-enabled { + type boolean; + description + "BFD state"; + } + leaf bfd-interval { + type uint32; + description + "BFD Interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD Multiplier"; + } + leaf virtual-interface { + type boolean; + description + " is this a Virtual Interfaces ?"; + } + leaf passive-interface { + type boolean; + description + "Passive PIM interface"; + } + leaf neighbor-filter-name { + type string; + description + "Neighbor Filter Name"; + } + leaf sticky-dr-enabled { + type boolean; + description + "Is Sticky DR enabled on Interface"; + } + leaf sticky-dr-active { + type boolean; + description + "Is Sticky DR Active on Interface"; + } + leaf sticky-dr-active-since { + type uint64; + units "second"; + description + "Sticky DR uptime in seconds"; + } + leaf join-prune-interval { + type uint16; + description + "Join-Prune Interval"; + } + leaf prune-delay-enabled { + type boolean; + description + "Prune Delay Enabled"; + } + leaf configured-propagation-delay { + type uint16; + description + "Configured Propagation Delay"; + } + leaf propagation-delay { + type uint16; + description + "Propagation Delay"; + } + leaf configured-override-interval { + type uint16; + description + "Configured Override Interval"; + } + leaf override-interval { + type uint16; + description + "Override Interval"; + } + leaf generation-id { + type uint32; + description + "Generation Identifier"; + } + leaf is-bidirectional-capable { + type boolean; + description + "Bidir Capable"; + } + leaf is-proxy-capable { + type boolean; + description + "Proxy Capable"; + } + leaf is-batch-asserts-capable { + type boolean; + description + "Batch Asserts Capable"; + } + leaf idb-oor-enabled { + type boolean; + description + "Interface oor enabled"; + } + leaf idb-acl-provided { + type boolean; + description + "ACL name provided"; + } + leaf idb-max-count { + type uint32; + description + "Interface ole max count"; + } + leaf idb-threshold-count { + type uint32; + description + "Interface ole threshold count"; + } + leaf idb-current-count { + type uint32; + description + "Interface ole current count"; + } + leaf idb-acl-name { + type string { + length "0..64"; + } + description + "Interface ole ACL Name"; + } + list interface-address { + description + "List of Interface IP Addresses"; + uses PIM-ADDRTYPE; + } + list idb-hello-send-event { + max-elements "8"; + description + "Hello Send Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list idb-hello-recv-event { + max-elements "8"; + description + "Hello Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub2.yang new file mode 100644 index 000000000..abca178d7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper-sub2.yang @@ -0,0 +1,220 @@ +submodule Cisco-IOS-XR-ipv4-pim-oper-sub2 { + belongs-to Cisco-IOS-XR-ipv4-pim-oper { + prefix Cisco-IOS-XR-ipv4-pim-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-pim package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-pim-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-26 { + description + "Addition made for Event history for periodic pim packets"; + semver:module-version "3.0.0"; + } + revision 2021-01-30 { + description + "Providing pim information"; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Changes to IOS-XR PIM oper + 2019-08-27 + Providing pim information"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-27 { + description + "Removed deprecated leaves under traffic-counters. Added missing leaves under context. Removed checkpoint-statistics container because the corresponding CLI command requires cisco-support permissions."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Pim-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + typedef Pim-interface { + type enumeration { + enum "encap-interface" { + value 0; + description + "Encap Interface"; + } + enum "decap-interface" { + value 1; + description + "Decap Interface"; + } + enum "mdt-interface" { + value 2; + description + "MDT Interface"; + } + } + description + "Interface Type"; + } + + grouping PIM-MA-SUMMARY { + description + "PIM MA Summary"; + leaf is-im-connection-open { + type boolean; + description + "IM Connection Open"; + } + leaf is-netio-connection-open { + type boolean; + description + "Netio Connection Open"; + } + leaf is-edm-connection-open { + type boolean; + description + "EDM Connection Open"; + } + leaf is-standby-edm-connection-open { + type boolean; + description + "Standby EDM Connection Open"; + } + leaf encap-interface-count { + type uint32; + description + "Encap Interface Count"; + } + leaf decap-interface-count { + type uint32; + description + "Decap Interface Count"; + } + leaf mdt-interface-count { + type uint32; + description + "MDT Interface Count"; + } + } + + grouping PIM-ADDRTYPE { + description + "PIM ADDRTYPE"; + leaf af-name { + type Pim-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Address"; + } + } + + grouping PIM-MA-IDB { + description + "PIM MA interface"; + container rp-address { + description + "RP Address"; + uses PIM-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses PIM-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf interface-type { + type Pim-interface; + description + "Interface Type"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper.yang new file mode 100644 index 000000000..7ea3715bf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-pim-oper.yang @@ -0,0 +1,1140 @@ +module Cisco-IOS-XR-ipv4-pim-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-pim-oper"; + prefix ipv4-pim-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-pim-oper-sub2 { + revision-date 2022-08-26; + } + include Cisco-IOS-XR-ipv4-pim-oper-sub1 { + revision-date 2022-08-26; + } + + 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 operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-pim-oper.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + pim-ma: PIM MA operational data + pim: PIM operational data + ipv6-pim: IPv6 PIM operational data + pim6-ma: PIM6 MA operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-26 { + description + "Addition made for Event history for periodic pim packets"; + semver:module-version "3.0.0"; + } + revision 2021-01-30 { + description + "Providing pim information"; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Changes to IOS-XR PIM oper + 2019-08-27 + Providing pim information"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-27 { + description + "Removed deprecated leaves under traffic-counters. Added missing leaves under context. Removed checkpoint-statistics container because the corresponding CLI command requires cisco-support permissions."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pim-topology-interface-flag { + type enumeration { + enum "lh" { + value 0; + description + "LH"; + } + enum "ld" { + value 1; + description + "LD"; + } + enum "li" { + value 2; + description + "LI"; + } + enum "ii" { + value 3; + description + "II"; + } + enum "id" { + value 4; + description + "ID"; + } + enum "as" { + value 5; + description + "AS"; + } + enum "ab" { + value 6; + description + "AB"; + } + enum "ex" { + value 7; + description + "EX"; + } + } + description + "Pim topology interface flag"; + } + + typedef Pim-safi { + type enumeration { + enum "unicast" { + value 1; + description + "SAFI unicast"; + } + enum "multicast" { + value 2; + description + "SAFI Multicast"; + } + enum "all" { + value 3; + description + "SAFI all"; + } + enum "default" { + value 4; + description + "SAFI default"; + } + } + description + "Pim safi"; + } + + typedef Pim-client { + type enumeration { + enum "none" { + value 0; + description + "No Client"; + } + enum "configured-embedded-rp" { + value 1; + description + "Embedded RP from configuration"; + } + enum "embedded" { + value 2; + description + "Embedded RP learnt from the Group addr"; + } + enum "permanent" { + value 3; + description + "Permanent"; + } + enum "auto-rp" { + value 4; + description + "AutoRP"; + } + enum "bsr" { + value 5; + description + "BSR"; + } + enum "configured" { + value 6; + description + "Configured"; + } + enum "static" { + value 7; + description + "Static"; + } + } + description + "Pim client"; + } + + typedef Pim-topology-entry-flag { + type enumeration { + enum "kat" { + value 0; + description + "KAT"; + } + enum "aa" { + value 1; + description + "AA"; + } + enum "pa" { + value 2; + description + "PA"; + } + enum "ra" { + value 3; + description + "RA"; + } + enum "ia" { + value 4; + description + "IA"; + } + enum "rr" { + value 5; + description + "RR"; + } + enum "lh" { + value 6; + description + "LH"; + } + enum "dss" { + value 7; + description + "DSS"; + } + enum "dcc" { + value 8; + description + "DCC"; + } + enum "sr" { + value 9; + description + "SR"; + } + enum "e" { + value 10; + description + "E"; + } + enum "ex" { + value 11; + description + "EX"; + } + enum "ma" { + value 12; + description + "MA"; + } + enum "mt" { + value 13; + description + "MT"; + } + enum "mfa" { + value 14; + description + "MFA"; + } + enum "mfp" { + value 15; + description + "MFP"; + } + enum "mfb" { + value 16; + description + "MFB"; + } + } + description + "Pim topology entry flag"; + } + + typedef Pim-protocol { + type enumeration { + enum "non-routable" { + value 0; + description + "Non Routable"; + } + enum "sparse-mode" { + value 1; + description + "Sparse Mode"; + } + enum "dense-mode" { + value 2; + description + "Dense Mode"; + } + enum "bidir" { + value 3; + description + "Bidirectional Mode"; + } + enum "ssm" { + value 4; + description + "Source Specific Multicast Mode"; + } + enum "maximum" { + value 5; + description + "Maximum"; + } + enum "any" { + value 6; + description + "Any"; + } + } + description + "Pim protocol"; + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF name"; + container ifrs-interfaces { + description + "PIM interfaces in forward reference store + table"; + list ifrs-interface { + key "interface-name"; + description + "PIM IFRS interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IDB-BAG; + } + } + container interface-statistics { + description + "PIM interface statistics"; + list interface-statistic { + key "interface-name"; + description + "PIM interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IFSTATS-BAG; + } + } + container topology-route-count { + description + "Topology route count information from PIM + topology table"; + uses PIM-TT-SUMM-BAG; + } + container jp-statistics { + description + "PIM join prune statistics table"; + list jp-statistic { + key "interface-name"; + description + "PIM Join Prune Statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-JPSTATS-BAG; + } + } + container mib-databases { + description + "PIM group database for mroute mibs table"; + list mib-database { + key "source-address group-address source-netmask"; + description + "PIM multicast static route information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Multicast static route source address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Multicast satic route group address"; + } + leaf source-netmask { + type uint32; + description + "Source mask"; + } + uses PIM-MROUTE-BAG; + } + } + container ifrs-summary { + description + "PIM interfaces in forward reference store + summary"; + uses PIM-IDB-SUMM-BAG; + } + container ranges { + description + "PIM range list information"; + list range { + key "rp-address client"; + description + "PIM range list information"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf client { + type Pim-client; + description + "Client"; + } + uses PIM-RL-BAG; + } + } + container bsr { + description + "PIM BSR information"; + container rp-caches { + description + "PIM BSR RP cache table"; + list rp-cache { + key "group-prefix prefix-length"; + description + "PIM BSR RP cache"; + leaf group-prefix { + type inet:ip-address-no-zone; + description + "Group prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses PIM-BSR-RP-CACHE-BAG; + } + } + container candidate-rps { + description + "PIM candidate-RP"; + list candidate-rp { + key "rp-address"; + description + "PIM BSR candidate RP information"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "Candidate-RP address"; + } + uses PIM-BSR-CANDIDATE-RP-BAG; + } + } + container bsr-elections { + description + "PIM BSR election state"; + list bsr-election { + key "pim-scope"; + description + "PIM BSR information"; + leaf pim-scope { + type uint32; + description + "BSR information"; + } + uses PIM-BSR-ELECTION-BAG; + } + } + } + container route-policy { + description + "PIM route policy"; + container route-policy-statistics { + description + "PIM route policy statistics"; + uses PIM-RPF-POLICY-STATS-BAG; + } + } + container rpf-summary { + description + "PIM RPF registration summary"; + uses PIM-RPF-SUMMARY-BAG; + } + container interfaces { + description + "PIM interfaces"; + list interface { + key "interface-name"; + description + "PIM interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IDB-BAG; + } + } + container net-io-tunnels { + description + "Tunnel information that NETIO has "; + list net-io-tunnel { + key "tunnel-name"; + description + "PIM netio tunnel information"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Tunnel name"; + } + uses PIM-TUNNEL-INFO-BAG; + } + } + container bidir-df-states { + description + "Bidirectional PIM DF election state table"; + list bidir-df-state { + key "rp-address interface-name"; + description + "Bidirectional PIM DF Election Table Entry"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-BIDIR-DF-STATE-BAG; + } + } + container topologies { + description + "PIM topology table"; + list topology { + key "source-address group-address rpt"; + description + "PIM topology information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + leaf rpt { + type uint32; + description + "RPT bit"; + } + uses PIM-TT-ROUTE-BAG; + } + } + container topology-interface-flag-route-counts { + description + "Route count for topology with interface flag + set"; + list topology-interface-flag-route-count { + key "interface-flag"; + description + "Route count for topology with interface flag + set"; + leaf interface-flag { + type Pim-topology-interface-flag; + description + "Interface flag"; + } + uses PIM-TT-SUMM-BAG; + } + } + container group-map-sources { + description + "PIM group-mapping with source information"; + list group-map-source { + key "prefix prefix-length client protocol rp-address priority"; + description + "PIM Group Mapping Entry with source + information"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf client { + type Pim-client; + description + "Client"; + } + leaf protocol { + type Pim-protocol; + description + "Protocol"; + } + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf priority { + type uint32; + description + "RP Priority"; + } + uses PIM-GRP-MAP-INFOSRC-BAG; + } + } + container traffic-counters { + description + "PIM message traffic counters"; + uses PIM-TRAFFIC-BAG; + } + container group-map-rpfs { + description + "PIM group mapping information"; + list group-map-rpf { + key "prefix prefix-length client protocol rp-address rp-priority"; + description + "PIM group mapping entry"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf client { + type Pim-client; + description + "Client"; + } + leaf protocol { + type Pim-protocol; + description + "Protocol"; + } + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf rp-priority { + type uint32; + description + "RP priority"; + } + uses PIM-GRP-MAP-INFORPF-BAG; + } + } + container summary { + description + "PIM summary"; + uses PIM-SUMMARY-BAG; + } + container gre { + description + "GRE information"; + container gre-next-hops { + description + "GRE destination neighbor table"; + list gre-next-hop { + key "destination-address"; + description + "PIM GRE address next-hop information"; + leaf destination-address { + type inet:ip-address-no-zone; + description + "GRE destination address"; + } + uses PIM-GRE-INFO-BAG; + } + } + } + container bidir-df-winners { + description + "Bidirectional PIM DF election winner table"; + list bidir-df-winner { + key "rp-address interface-name"; + description + "Bidirectional PIM DF election table entry"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-BIDIR-DF-BAG; + } + } + container table-contexts { + description + "PIM table context list"; + list table-context { + key "saf-name topology-name"; + description + "PIM table context information"; + leaf saf-name { + type Pim-safi; + description + "SAF name"; + } + leaf topology-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Topology name"; + } + uses PIM-TABLE-CTX-BAG; + } + } + container neighbor-summaries { + description + "PIM neighbor summary table"; + list neighbor-summary { + key "interface-name"; + description + "PIM neighbor summary information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-NBR-SUMM-BAG; + } + } + container context { + description + "PIM context information"; + uses PIM-CONTEXT-BAG; + } + container topology-entry-flag-route-counts { + description + "Route count for topology with entry flag set"; + list topology-entry-flag-route-count { + key "entry-flag"; + description + "Route count for topology with entry flag set"; + leaf entry-flag { + type Pim-topology-entry-flag; + description + "entry flag"; + } + uses PIM-TT-SUMM-BAG; + } + } + container rpf-redirect { + description + "PIM ECMP RPF-redirect bundle"; + container redirect-route-databases { + description + "PIM ECMP RPF-redirect route database"; + list redirect-route-database { + key "source-address group-address"; + description + "PIM ECMP RPF-redirect route information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses PIM-RPF-RDRCT-ROUTE-BAG; + } + } + container bundle-interfaces { + description + "PIM ECMP RPF-redirect bundle information"; + list bundle-interface { + key "bundle-name interface-name"; + description + "PIM ECMP RPF-redirect bundle interface + information"; + leaf bundle-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bundle name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + uses PIM-RPF-RDRCT-BNDL-BAG; + } + } + } + container tunnels { + description + "Tunnels information that PIM has"; + list tunnel { + key "tunnel-name"; + description + "PIM tunnel information"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Tunnel name"; + } + uses PIM-TUNNEL-INFO-BAG; + } + } + container multicast-static-routes { + description + "PIM multicast static route table"; + list multicast-static-route { + key "address prefix-length"; + description + "PIM multicast static route information"; + leaf address { + type inet:ip-address-no-zone; + description + "Network address"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + uses PIM-MSTATIC-BAG; + } + } + container neighbors { + description + "PIM neighbor table"; + list neighbor { + key "interface-name neighbor-address"; + description + "PIM neighbor information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor address"; + } + uses PIM-NBR-BAG; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name "; + } + } + } + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container missed-packets-table { + description + "PIM missed packets information"; + container missed-packets-all-table { + description + "PIM missed packets All types information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-hello-table { + description + "PIM missed packets hello information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-candidate-bsr-table { + description + "PIM missed packets candidate BSR information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-candidate-rp-table { + description + "PIM missed packets candidate RP information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-join-prune-table { + description + "PIM missed packets join-prune information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + } + container nsr { + description + "NSR Information"; + uses PIM-NSR-BAG; + } + container summary { + description + "PIM Global Summary"; + uses PIM-SUMMARY-BAG; + } + container nsf { + description + "PIM NSF information"; + uses PIM-NSF-BAG; + } + container issu { + description + "ISSU Information"; + uses PIM-ISSU-BAG; + } + } + } + + grouping GLOBAL-INTERFACE-TABLE { + description + "Common node of active, standby"; + container global-interfaces { + description + "PIM global interface table"; + list global-interface { + key "interface-name"; + description + "PIM interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IDB-BAG; + } + } + } + + grouping PIM-MA-COMMON-OPER-PIM-MA-SUMMARY-MP { + description + "Common node of active, standby"; + container pim-ma-summary { + description + "PIM MA summary"; + uses PIM-MA-SUMMARY; + } + } + + grouping ACTIVE { + description + "Common node of pim-ma, pim6-ma"; + container active { + description + "Active Process"; + uses INTERFACE-TABLE; + uses PIM-MA-COMMON-OPER-PIM-MA-SUMMARY-MP; + } + } + + grouping IPV4-PIM-ROLE-LVL-OPER-ACTIVE { + description + "Common node of pim-ma, pim6-maCommon node of pim, + ipv6-pim"; + container active { + description + "Active Process"; + uses GLOBAL-INTERFACE-TABLE; + uses PROCESS; + uses VRF-TABLE; + } + } + + grouping INTERFACE-TABLE { + description + "Common node of active, standby"; + container interface-table { + description + "Interface Table"; + container interface-by-handles { + description + "Table of PIM MA interfaces indexed by handle"; + list interface-by-handle { + key "interface-handle"; + description + "PIM MA interface referenced by handle"; + leaf interface-handle { + type uint32; + description + "Interface handle"; + } + uses PIM-MA-IDB; + } + } + container interface-by-names { + description + "Table of PIM MA interfaces indexed by name"; + list interface-by-name { + key "interface-name"; + description + "PIM MA interface referenced by name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-MA-IDB; + } + } + } + } + + grouping STANDBY { + description + "Common node of pim-ma, pim6-ma"; + container standby { + description + "Standby Process"; + uses INTERFACE-TABLE; + uses PIM-MA-COMMON-OPER-PIM-MA-SUMMARY-MP; + } + } + + grouping IPV4-PIM-ROLE-LVL-OPER-STANDBY { + description + "Common node of pim-ma, pim6-maCommon node of pim, + ipv6-pim"; + container standby { + description + "Standby Process"; + uses GLOBAL-INTERFACE-TABLE; + uses PROCESS; + uses VRF-TABLE; + } + } + + container pim-ma { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-pim-oper.yang which will provide the + compatible functionalities. PIM MA operational + data"; + uses ACTIVE; + uses STANDBY; + } + container pim { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-pim-oper.yang which will provide the + compatible functionalities. PIM operational data"; + uses IPV4-PIM-ROLE-LVL-OPER-STANDBY; + uses IPV4-PIM-ROLE-LVL-OPER-ACTIVE; + } + container ipv6-pim { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-pim-oper.yang which will provide the + compatible functionalities. IPv6 PIM operational + data"; + uses IPV4-PIM-ROLE-LVL-OPER-STANDBY; + uses IPV4-PIM-ROLE-LVL-OPER-ACTIVE; + } + container pim6-ma { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-pim-oper.yang which will provide the + compatible functionalities. PIM6 MA operational + data"; + uses ACTIVE; + uses STANDBY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ping-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ping-act.yang new file mode 100644 index 000000000..47387b2fa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-ping-act.yang @@ -0,0 +1,298 @@ +submodule Cisco-IOS-XR-ipv4-ping-act { + belongs-to Cisco-IOS-XR-ping-act { + prefix ping-act; + } + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 ping action package configuration. + + Copyright (c) 2016-2019, 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-11 { + description + "Addition of new leaves."; + semver:module-version "1.2.0"; + } + revision 2021-03-05 { + description + "Removed support for use-srv6-op-sid"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-08-20 { + description + "IOS XR 6.2.1 revision."; + } + + grouping PING-COMMON-INPUT-OUTPUT-OPTIONS { + description + "Ping Common Input Output Options"; + leaf destination { + type string; + mandatory true; + description + "Ping destination address or hostname"; + } + leaf repeat-count { + type uint64 { + range "1..64"; + } + default "5"; + description + "Number of ping packets to be sent out"; + } + leaf data-size { + type uint64 { + range "36..18024"; + } + default "100"; + description + "Size of ping packet"; + } + leaf timeout { + type uint64 { + range "0..36"; + } + default "2"; + description + "Timeout in seconds"; + } + leaf interval { + type uint32 { + range "0..3600"; + } + default "10"; + description + "Ping interval in milli seconds"; + } + leaf pattern { + type xr:Hex-integer; + description + "Pattern of payload data"; + } + leaf sweep { + type boolean; + description + "Sweep is enabled"; + } + leaf do-not-resolve { + type boolean; + description + "Do not resolve hostname. When this leaf is set, hostname will not be resolved"; + } + } + + grouping PING-OPTIONS { + description + "Ping Options"; + uses PING-COMMON-INPUT-OUTPUT-OPTIONS; + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf source { + type string; + description + "Source address or interface"; + } + leaf verbose { + type boolean; + description + "Validate return packet"; + } + } + + grouping IPV4-SPECIFIC-OPTIONS { + description + "Ping IPv4 Specific Options"; + leaf type-of-service { + type uint8 { + range "0..255"; + } + description + "Type of Service"; + } + leaf do-not-frag { + type boolean; + description + "Do Not Fragment"; + } + leaf validate { + type boolean; + description + "Validate return packet"; + } + } + + grouping IPV4-PING-OPTIONS { + description + "Ping IPv4 Options"; + uses PING-OPTIONS; + uses IPV4-SPECIFIC-OPTIONS; + } + + grouping IPV4-PING-INPUT { + description + "Ping IPv4 Input"; + uses IPV4-PING-OPTIONS; + } + + grouping IPV4-PING-OUTPUT { + description + "Ping IPv4 Output"; + uses PING-COMMON-INPUT-OUTPUT-OPTIONS; + container replies { + description + "IPv4 ping replies"; + list reply { + key "reply-index"; + description + "IPv4 ping reply"; + leaf reply-index { + type uint64 { + range "1..2147483647"; + } + description + "Index of the reply list"; + } + leaf result { + type string; + description + "Response for each packet"; + } + leaf reply-source { + type string; + description + "Source of each response packet"; + } + leaf time { + type uint64 { + range "1..2147483647"; + } + description + "Time taken to receive each response packet in nanoseconds"; + } + leaf ttl { + type uint64 { + range "1..2147483647"; + } + description + "TTL value for each packet"; + } + leaf bytes { + type uint64 { + range "1..2147483647"; + } + description + "Number of bytes for each packet"; + } + container broadcast-reply-addresses { + description + "IPv4 ping broadcast reply addresses"; + list broadcast-reply-address { + key "reply-address"; + description + "IPv4 ping broadcast reply address"; + leaf reply-address { + type string; + description + "Broadcast reply address"; + } + leaf result { + type string; + description + "Sign for each reply packet"; + } + } + } + } + } + leaf hits { + type uint64; + description + "Number of packets reach to destination and get reply back"; + } + leaf total { + type uint64; + description + "Total number of packets sent out"; + } + leaf success-rate { + type uint64; + description + "Successful rate of ping"; + } + leaf rtt-min { + type uint64; + description + "Minimum value of Round Trip Time"; + } + leaf rtt-avg { + type uint64; + description + "Average value of Round Trip Time"; + } + leaf rtt-max { + type uint64; + description + "Maximum value of Round Trip Time"; + } + leaf std-dev { + type uint64; + units "msec"; + description + "standard deviation of Ping responses"; + } + leaf sweep-min { + type uint32; + description + "Minimum value of sweep size"; + } + leaf sweep-max { + type uint64; + description + "Maximum value of sweep size"; + } + leaf rotate-pattern { + type boolean; + description + "Rotate Pattern is enabled"; + } + leaf ping-error-response { + type string; + description + "Error response for each ping, in case of bulk ping"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-cfg.yang new file mode 100644 index 000000000..50876bdc3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-cfg.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-ipv4-smiap-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-smiap-cfg"; + prefix ipv4-smiap-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ipv4-smiap package configuration. + + This module contains definitions + for the following management objects: + ipv4-virtual: IPv4 virtual address for management interfaces + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-07-04 { + description + "this schema file has all the latest changes."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv4-virtual { + description + "IPv4 virtual address for management interfaces"; + container vrfs { + description + "VRFs for the virtual IPv4 addresses"; + list vrf { + key "vrf-name"; + description + "A VRF for a virtual IPv4 address. Specify + 'default' for VRF default"; + container address { + presence "Indicates a address node is configured."; + description + "IPv4 sddress and mask"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 address"; + } + leaf netmask { + type xr:Ipv4-prefix-length; + mandatory true; + description + "IPv4 address mask"; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of VRF"; + } + } + } + leaf use-as-source-address { + type empty; + description + "Enable use as default source address on sourced + packets"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper-sub1.yang new file mode 100644 index 000000000..1dff1f1ea --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper-sub1.yang @@ -0,0 +1,159 @@ +submodule Cisco-IOS-XR-ipv4-smiap-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-smiap-oper { + prefix Cisco-IOS-XR-ipv4-smiap-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-smiap package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-17 { + description + "this schema file has the changes for oper."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Smiap-address-family { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4 Address family"; + } + enum "ipv6" { + value 10; + description + "IPv6 Address family"; + } + } + description + "SMIAP Address family"; + } + + grouping SMIAP-ACT-INTERFACE { + description + "Active interface information"; + leaf interface-name { + type string; + description + "Active Interface name"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address pf the active interface"; + } + } + + grouping SMIAP-IPV6-ADDR { + description + "SMIAP IPv6 Address"; + leaf address { + type inet:ipv6-address; + description + "IPv6 Address"; + } + leaf prefix-length { + type uint32; + description + "IPv6 Prefix Lenghth"; + } + } + + grouping SMIAP-IPV4-ADDR { + description + "SMIAP IPv4 Address"; + leaf address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf prefix-length { + type uint32; + description + "IPv4 Prefix Length"; + } + } + + grouping SMIAP-VIRTUAL-IP-UNION { + description + "Union of IPV4 and IPV6 address types"; + container ipv4-address { + when "../address-family = 'ipv4'" { + description + "../AddressFamily = 'IPV4'"; + } + description + "IPv4 Address"; + uses SMIAP-IPV4-ADDR; + } + container ipv6-address { + when "../address-family = 'ipv6'" { + description + "../AddressFamily = 'IPV6'"; + } + description + "IPv6 Address"; + uses SMIAP-IPV6-ADDR; + } + leaf address-family { + type Smiap-address-family; + description + "AddressFamily"; + } + } + + grouping SMIAP-VRF-ENTRY { + description + "SMIAP VRF Database entry"; + container virtual-ip { + description + "Virtual IP"; + uses SMIAP-VIRTUAL-IP-UNION; + } + container active-interface { + description + "Active Interface"; + uses SMIAP-ACT-INTERFACE; + } + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper.yang new file mode 100644 index 000000000..5fd88d4c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-smiap-oper.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-ipv4-smiap-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-smiap-oper"; + prefix ipv4-smiap-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-smiap-oper-sub1 { + revision-date 2022-01-17; + } + + 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-smiap package operational data. + + This module contains definitions + for the following management objects: + ipv4-virtual: IPv4 virtual address for management interfaces + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-17 { + description + "this schema file has the changes for oper."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv4-virtual { + config false; + description + "IPv4 virtual address for management interfaces"; + container address { + description + "Address family"; + container vrfs { + description + "VRF entry table"; + list vrf { + key "vrf-name"; + description + "smiap vrf entry"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses SMIAP-VRF-ENTRY; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-cfg.yang new file mode 100644 index 000000000..b91f70ad4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-cfg.yang @@ -0,0 +1,70 @@ +module Cisco-IOS-XR-ipv4-telnet-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-telnet-cfg"; + prefix ipv4-telnet-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 ipv4-telnet package configuration. + + This module contains definitions + for the following management objects: + ipv6-telnet: IPv6 telnet configuration + ipv4-telnet: IPv4 telnet configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CLIENT { + description + "Common node of ipv4-telnet, ipv6-telnet"; + container client { + description + "Telnet client configuration"; + leaf source-interface { + type xr:Interface-name; + description + "Source interface for telnet sessions"; + } + } + } + + container ipv6-telnet { + description + "IPv6 telnet configuration"; + uses CLIENT; + } + container ipv4-telnet { + description + "IPv4 telnet configuration"; + uses CLIENT; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-mgmt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-mgmt-cfg.yang new file mode 100644 index 000000000..919089a78 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-telnet-mgmt-cfg.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-ipv4-telnet-mgmt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-telnet-mgmt-cfg"; + prefix ipv4-telnet-mgmt-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 ipv4-telnet-mgmt package configuration. + + This module contains definitions + for the following management objects: + telnet: Global Telnet configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + revision 2015-10-30 { + description + "Descriptions updated."; + } + + container telnet { + description + "Global Telnet configuration commands"; + container vrfs { + description + "VRF name for telnet service"; + list vrf { + key "vrf-name"; + description + "VRF name for telnet service"; + container ipv4 { + description + "IPv4 configuration"; + leaf dscp { + type uint32 { + range "0..63"; + } + description + "Specify the DSCP value"; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-traceroute-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-traceroute-act.yang new file mode 100644 index 000000000..23f27b349 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-traceroute-act.yang @@ -0,0 +1,214 @@ +submodule Cisco-IOS-XR-ipv4-traceroute-act { + belongs-to Cisco-IOS-XR-traceroute-act { + prefix traceroute-act; + } + + 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 IPv4 traceroute action package configuration. + + Copyright (c) 2016-2019, 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-05 { + description + "Removed support for use-srv6-op-sid"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-09-17 { + description + "IOS XR 6.2.1 revision."; + } + + grouping TRACEROUTE-OPTIONS { + description + "Traceroute options"; + leaf destination { + type string; + mandatory true; + description + "Destination address or hostname"; + } + leaf source { + type string; + description + "Source address or interface"; + } + leaf timeout { + type uint32 { + range "0..36"; + } + default "3"; + description + "Timeout in seconds"; + } + leaf probe { + type uint16 { + range "1..64"; + } + default "3"; + description + "Probe count"; + } + leaf numeric { + type boolean; + description + "Numeric display only"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf min-ttl { + type uint16 { + range "0..255"; + } + default "1"; + description + "minimum time to live"; + } + leaf max-ttl { + type uint16 { + range "0..255"; + } + default "30"; + description + "maximum time to live"; + } + leaf port { + type uint32 { + range "0..65535"; + } + description + "Port numbe"; + } + leaf verbose { + type boolean; + description + "verbose output"; + } + } + + grouping TRACEROUTE-OUTPUT { + description + "Traceroute output"; + leaf destination { + type string; + description + "Destination address or hostname"; + } + container hops { + description + "Hops info"; + list hop { + key "hop-index"; + description + "Hop info"; + leaf hop-index { + type uint32; + description + "Index of the hop"; + } + leaf hop-address { + type string; + description + "Address of the hop"; + } + leaf hop-hostname { + type string; + description + "Hostname of the hop"; + } + container probes { + description + "Probes info"; + list probe { + key "probe-index"; + description + "Probe info"; + leaf probe-index { + type uint32; + description + "Index of the probe"; + } + leaf result { + type string; + description + "Response for each probe"; + } + leaf delta-time { + type uint32; + description + "Delta time in seconds"; + } + leaf hop-address { + type string; + description + "Address of the hop"; + } + leaf hop-hostname { + type string; + description + "Hostname of the hop"; + } + container srv6-header { + description + "SRV6 header"; + leaf destination-address { + type uint32; + description + "Destination address for srv6 header"; + } + leaf segments-left { + type uint32; + description + "Number of segments left"; + } + container segments { + description + "Segments"; + leaf-list segment { + type string; + description + "sid in sidlist"; + } + } + } + } + } + } + } + leaf verbose-output { + type string; + description + "Verbose output"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-cfg.yang new file mode 100644 index 000000000..719ace0a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-cfg.yang @@ -0,0 +1,805 @@ +module Cisco-IOS-XR-ipv4-vrrp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-vrrp-cfg"; + prefix ipv4-vrrp-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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-vrrp package configuration. + + This module contains definitions + for the following management objects: + vrrp: VRRP configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-11-29 { + description + "Added a subnode to virtual-router container and changed path of interface tracking."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-05-19 { + description + "Added new path for router configuration enable."; + } + revision 2018-05-15 { + description + "Modified timer leaf path, removed msec field."; + } + revision 2017-11-05 { + description + "Corrected boolean values in when statements."; + } + revision 2017-05-19 { + description + "Marked delay leafs min-delay and reload-delay as mandatory."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-16 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container vrrp { + description + "VRRP-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable VRRP-MIB notifications"; + } + } + } + container vrrp { + presence "CLI submode compatibility."; + description + "VRRP configuration"; + container logging { + description + "VRRP logging options"; + leaf state-change-disable { + type empty; + description + "VRRP state change IOS messages disable"; + } + } + container interfaces { + description + "Interface configuration table"; + list interface { + key "interface-name"; + description + "The interface being configured"; + container ipv6 { + description + "IPv6 VRRP configuration"; + container version3 { + description + "Version 3 VRRP configuration"; + container virtual-routers { + description + "The VRRP virtual router configuration table"; + list virtual-router { + key "vr-id"; + description + "The VRRP virtual router being configured"; + container global-ipv6-addresses { + description + "The table of VRRP virtual global IPv6 + addresses"; + list global-ipv6-address { + key "ip-address"; + description + "A VRRP virtual global IPv6 IP address"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "VRRP virtual global IPv6 address"; + } + } + } + container tracks { + description + "Track an item, reducing priority if it + goes down"; + list track { + key "interface-name"; + description + "Object to be tracked"; + leaf interface-name { + type xr:Interface-name; + description + "Object to be tracked, interface name for + interfaces"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable this track"; + } + leaf priority-decrement { + type uint32 { + range "1..254"; + } + description + "Priority decrement"; + } + } + } + container timer { + description + "Set advertisement timer"; + leaf advertisement-time-in-msec { + type uint32 { + range "100..40950"; + } + units "millisecond"; + description + "Advertisement time in milliseconds"; + } + leaf advertisement-time-in-sec { + type uint32 { + range "1..40"; + } + units "second"; + description + "Advertisement time in seconds"; + } + leaf forced { + type empty; + units "millisecond"; + description + "TRUE - Force configured timer values to + be used, required when configured in + milliseconds"; + } + } + container tracked-objects { + description + "Track an object, reducing priority if it + goes down"; + list tracked-object { + key "object-name"; + description + "Object to be tracked"; + leaf object-name { + type xr:Cisco-ios-xr-string; + description + "Object to be tracked, interface name for + interfaces"; + } + leaf priority-decrement { + type uint32 { + range "1..254"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container link-local-ipv6-address { + presence "Contains mandatory nodes that used to set default values"; + description + "The VRRP IPv6 virtual linklocal address"; + leaf ip-address { + when "../auto-configure = 'false'" { + description + "../AutoConfigure = 'false'"; + } + type inet:ip-address-no-zone; + description + "VRRP IPv6 virtual linklocal address"; + } + leaf auto-configure { + type boolean; + mandatory true; + description + "TRUE if the virtual linklocal address is + to be autoconfigured FALSE if an IPv6 + virtual linklocal address is configured"; + } + } + leaf group-enable { + type empty; + description + "Enable vrrp process"; + } + leaf bfd { + type inet:ip-address-no-zone; + description + "Enable use of Bidirectional Forwarding + Detection for this IP"; + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Priority value"; + } + leaf accept-mode-disable { + type empty; + description + "Disable Accept Mode for this virtual + IPAddress"; + } + leaf preempt { + type uint32 { + range "0..3600"; + } + default "0"; + description + "Preempt Master router if higher priority"; + } + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "VRRP Session Name"; + } + leaf vr-id { + type uint32 { + range "1..255"; + } + description + "VRID Virtual Router Identifier"; + } + } + } + } + container slave-virtual-routers { + description + "The VRRP slave group configuration table"; + list slave-virtual-router { + key "slave-virtual-router-id"; + description + "The VRRP slave being configured"; + container link-local-ipv6-address { + presence "Contains mandatory nodes that used to set default values"; + description + "The VRRP IPv6 virtual linklocal address"; + leaf ip-address { + when "../auto-configure = 'false'" { + description + "../AutoConfigure = 'false'"; + } + type inet:ip-address-no-zone; + description + "VRRP IPv6 virtual linklocal address"; + } + leaf auto-configure { + type boolean; + mandatory true; + description + "TRUE if the virtual linklocal address is + to be autoconfigured FALSE if an IPv6 + virtual linklocal address is configured"; + } + } + container global-ipv6-addresses { + description + "The table of VRRP virtual global IPv6 + addresses"; + list global-ipv6-address { + key "ip-address"; + description + "A VRRP virtual global IPv6 IP address"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "VRRP virtual global IPv6 address"; + } + } + } + leaf follow { + type string; + description + "VRRP Session name for this slave to follow"; + } + leaf accept-mode-disable { + type empty; + description + "Disable Accept Mode for this virtual + IPAddress"; + } + leaf slave-virtual-router-id { + type uint32 { + range "1..255"; + } + description + "Virtual Router ID"; + } + } + } + } + container delay { + presence "Indicates a delay node is configured."; + description + "Minimum and Reload Delay"; + leaf min-delay { + type uint32 { + range "0..10000"; + } + units "second"; + mandatory true; + description + "Minimum delay in seconds"; + } + leaf reload-delay { + type uint32 { + range "0..10000"; + } + units "second"; + mandatory true; + description + "Reload delay in seconds"; + } + } + container ipv4 { + description + "IPv4 VRRP configuration"; + container version3 { + description + "Version 3 VRRP configuration"; + container virtual-routers { + description + "The VRRP virtual router configuration table"; + list virtual-router { + key "vr-id"; + description + "The VRRP virtual router being configured"; + container timer { + description + "Set advertisement timer"; + leaf advertisement-time-in-msec { + type uint32 { + range "100..40950"; + } + units "millisecond"; + description + "Advertisement time in milliseconds"; + } + leaf advertisement-time-in-sec { + type uint32 { + range "1..40"; + } + units "second"; + description + "Advertisement time in seconds"; + } + leaf forced { + type empty; + units "millisecond"; + description + "TRUE - Force configured timer values to + be used, required when configured in + milliseconds"; + } + } + container secondary-ipv4-addresses { + description + "The table of VRRP secondary IPv4 addresses"; + list secondary-ipv4-address { + key "ip-address"; + description + "A VRRP secondary IPv4 address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "VRRP Secondary IPv4 address"; + } + } + } + container tracked-objects { + description + "Track an object, reducing priority if it + goes down"; + list tracked-object { + key "object-name"; + description + "Object to be tracked"; + leaf object-name { + type xr:Cisco-ios-xr-string; + description + "Object to be tracked, interface name for + interfaces"; + } + leaf priority-decrement { + type uint32 { + range "1..254"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + container tracks { + description + "Track an item, reducing priority if it + goes down"; + list track { + key "interface-name"; + description + "Object to be tracked"; + leaf interface-name { + type xr:Interface-name; + description + "Object to be tracked, interface name for + interfaces"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable this track"; + } + leaf priority-decrement { + type uint32 { + range "1..254"; + } + description + "Priority decrement"; + } + } + } + leaf group-enable { + type empty; + description + "Enable vrrp process"; + } + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "VRRP Session Name"; + } + leaf bfd { + type inet:ipv4-address-no-zone; + description + "Enable use of Bidirectional Forwarding + Detection for this IP"; + } + leaf primary-ipv4-address { + type inet:ipv4-address-no-zone; + description + "The Primary VRRP IPv4 address"; + } + leaf preempt { + type uint32 { + range "0..3600"; + } + default "0"; + description + "Preempt Master router if higher priority"; + } + leaf accept-mode-disable { + type empty; + description + "Disable Accept Mode for this virtual + IPAddress"; + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Priority value"; + } + leaf vr-id { + type uint32 { + range "1..255"; + } + description + "VRID Virtual Router Identifier"; + } + } + } + } + container slave-virtual-routers { + description + "The VRRP slave group configuration table"; + list slave-virtual-router { + key "slave-virtual-router-id"; + description + "The VRRP slave being configured"; + container secondary-ipv4-addresses { + description + "The table of VRRP secondary IPv4 addresses"; + list secondary-ipv4-address { + key "ip-address"; + description + "A VRRP secondary IPv4 address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "VRRP Secondary IPv4 address"; + } + } + } + leaf follow { + type string; + description + "VRRP Session name for this slave to follow"; + } + leaf accept-mode-disable { + type empty; + description + "Disable Accept Mode for this virtual + IPAddress"; + } + leaf primary-ipv4-address { + type inet:ipv4-address-no-zone; + description + "The Primary VRRP IPv4 address"; + } + leaf slave-virtual-router-id { + type uint32 { + range "1..255"; + } + description + "Virtual Router ID"; + } + } + } + container version2 { + description + "Version 2 VRRP configuration"; + container virtual-routers { + description + "The VRRP virtual router configuration table"; + list virtual-router { + key "vr-id"; + description + "The VRRP virtual router being configured"; + container timer { + description + "Set advertisement timer"; + leaf advertisement-time-in-msec { + type uint32 { + range "100..40950"; + } + units "millisecond"; + description + "Advertisement time in milliseconds"; + } + leaf advertisement-time-in-sec { + type uint32 { + range "1..255"; + } + units "second"; + description + "Advertisement time in seconds"; + } + leaf forced { + type empty; + units "millisecond"; + description + "TRUE - Force configured timer values to + be used, required when configured in + milliseconds"; + } + } + container secondary-ipv4-addresses { + description + "The table of VRRP secondary IPv4 addresses"; + list secondary-ipv4-address { + key "ip-address"; + description + "A VRRP secondary IPv4 address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "VRRP Secondary IPv4 address"; + } + } + } + container tracks { + description + "Track an item, reducing priority if it + goes down"; + list track { + key "interface-name"; + description + "Object to be tracked"; + leaf interface-name { + type xr:Interface-name; + description + "Object to be tracked, interface name for + interfaces"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable this track"; + } + leaf priority-decrement { + type uint32 { + range "1..254"; + } + description + "Priority decrement"; + } + } + } + container tracked-objects { + description + "Track an object, reducing priority if it + goes down"; + list tracked-object { + key "object-name"; + description + "Object to be tracked"; + leaf object-name { + type xr:Cisco-ios-xr-string; + description + "Object to be tracked, interface name for + interfaces"; + } + leaf priority-decrement { + type uint32 { + range "1..254"; + } + mandatory true; + description + "Priority decrement"; + } + } + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Priority value"; + } + leaf primary-ipv4-address { + type inet:ipv4-address-no-zone; + description + "The Primary VRRP IPv4 address"; + } + leaf group-enable { + type empty; + description + "Enable vrrp process"; + } + leaf preempt { + type uint32 { + range "0..3600"; + } + default "0"; + description + "Preempt Master router if higher priority"; + } + leaf text-password { + type string; + description + "Authentication password, 8 chars max"; + } + leaf bfd { + type inet:ipv4-address-no-zone; + description + "Enable use of Bidirectional Forwarding + Detection for this IP"; + } + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..16"; + } + description + "VRRP Session Name"; + } + leaf accept-mode-disable { + type empty; + description + "Disable Accept Mode for this virtual + IPAddress"; + } + leaf vr-id { + type uint32 { + range "1..255"; + } + description + "VRID Virtual Router Identifier"; + } + } + } + } + } + container bfd { + description + "BFD configuration"; + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval for BFD sessions created by + vrrp"; + } + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detection multiplier for BFD sessions created + by vrrp"; + } + } + leaf mac-refresh { + type uint32 { + range "0..10000"; + } + units "second"; + default "60"; + description + "VRRP Slave MAC-refresh rate in seconds"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name to configure"; + } + } + } + leaf enable { + type empty; + description + "Enable vrrp process"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper-sub1.yang new file mode 100644 index 000000000..fb053b915 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper-sub1.yang @@ -0,0 +1,1112 @@ +submodule Cisco-IOS-XR-ipv4-vrrp-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv4-vrrp-oper { + prefix Cisco-IOS-XR-ipv4-vrrp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv4-vrrp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-04 { + description + "Added a new state called Activating to virtual-mac state list."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-12 { + description + "Moved router id to a range type."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-16 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vrrp-vmac-state { + type enumeration { + enum "stored" { + value 0; + description + "VMAC stored locally"; + } + enum "reserved" { + value 1; + description + "VMAC reserved in mac table"; + } + enum "active" { + value 2; + description + "VMAC active in mac table"; + } + enum "reserving" { + value 3; + description + "VMAC not yet reserved in mac table"; + } + enum "activating" { + value 4; + description + "VMAC activation in mac table in progress"; + } + } + description + "Vrrp vmac state"; + } + + typedef Vrrp-state-change-reason { + type enumeration { + enum "state-change-bfd-down" { + value 0; + description + "BFD session down"; + } + enum "state-change-virtual-ip-configured" { + value 1; + description + "Virtual IP configured"; + } + enum "state-change-interface-ip" { + value 2; + description + "Interface IP update"; + } + enum "state-change-delay-timer" { + value 3; + description + "Delay timer expired"; + } + enum "state-change-startup" { + value 4; + description + "Ready on startup"; + } + enum "state-change-interface-up" { + value 5; + description + "Interface Up update"; + } + enum "state-change-interface-down" { + value 6; + description + "Interface Down update"; + } + enum "state-change-master-down-timer" { + value 7; + description + "Master down timer expired"; + } + enum "state-change-higher-priority-master" { + value 8; + description + "Higher priority advert received"; + } + enum "state-change-fhrp-admin" { + value 9; + description + "FHRP Admin state change"; + } + enum "state-change-mgo-parent" { + value 10; + description + "Change of MGO parent session"; + } + enum "state-change-chkpt-update" { + value 11; + description + "Checkpoint update from Primary VRRP instance"; + } + enum "state-change-issu-resync" { + value 12; + description + "Resync following ISSU primary event"; + } + } + description + "Vrrp state change reason"; + } + + typedef Vrrp-bfd-session-state { + type enumeration { + enum "bfd-state-none" { + value 0; + description + "None"; + } + enum "bfd-state-inactive" { + value 1; + description + "Inactive"; + } + enum "bfd-state-up" { + value 2; + description + "Up"; + } + enum "bfd-state-down" { + value 3; + description + "Down"; + } + } + description + "Vrrp bfd session state"; + } + + typedef Vrrp-prot-auth { + type enumeration { + enum "authentication-none" { + value 0; + description + "Down"; + } + enum "authentication-text" { + value 1; + description + "Simple Text"; + } + enum "authentication-ip" { + value 2; + description + "IP header"; + } + } + description + "Vrrp prot auth"; + } + + typedef Vrrp-bag-protocol-state { + type enumeration { + enum "state-initial" { + value 1; + description + "Initial"; + } + enum "state-backup" { + value 2; + description + "Backup"; + } + enum "state-master" { + value 3; + description + "Master"; + } + } + description + "VRRP protocol state"; + } + + typedef Vrrp-vip-state { + type enumeration { + enum "virtual-ip-state-down" { + value 0; + description + "Down"; + } + enum "virtual-ip-state-up" { + value 1; + description + "Up"; + } + } + description + "Vrrp vip state"; + } + + typedef Vrrp-b-af { + type enumeration { + enum "address-family-ipv4" { + description + "IPv4 Address Family"; + } + enum "address-family-ipv6" { + description + "IPv6 Address Family"; + } + enum "vrrp-baf-count" { + description + "Number of Adddress Families"; + } + } + description + "Vrrp b af"; + } + + typedef Vrrp-version { + type uint8; + description + "Vrrp version"; + } + + grouping VRRP-SLAVE-INFO-TYPE { + description + "Slave info"; + leaf slave-interface { + type string { + length "0..64"; + } + description + "Interface of slave"; + } + leaf slave-virtual-router-id { + type uint32; + description + "VRID of slave"; + } + } + + grouping VRRP-MGO-INFO { + description + "MGO group data"; + leaf primary-session-name { + type string { + length "0..16"; + } + description + "Session Name"; + } + leaf primary-session-interface { + type xr:Interface-name; + description + "Interface of primary session"; + } + leaf primary-af-name { + type Vrrp-b-af; + description + "Address family of primary session"; + } + leaf primary-session-number { + type uint32; + description + "VRID of primary session"; + } + leaf primary-session-state { + type Vrrp-bag-protocol-state; + description + "State of primary session"; + } + list slave { + description + "List of slaves following this primary session"; + uses VRRP-SLAVE-INFO-TYPE; + } + } + + grouping VRRP-INTERFACE-INFO { + description + "VRRP Interface statistics"; + leaf interface { + type xr:Interface-name; + description + "IM Interface"; + } + leaf invalid-checksum-count { + type uint32; + description + "Invalid checksum"; + } + leaf invalid-version-count { + type uint32; + description + "Unknown/unsupported version"; + } + leaf invalid-vrid-count { + type uint32; + description + "Invalid vrID"; + } + leaf invalid-packet-length-count { + type uint32; + description + "Bad packet lengths"; + } + } + + grouping VRRP-STATE-CHANGE-INFO-TYPE { + description + "State change info"; + container time { + description + "Time of state change"; + uses VRRP-BAG-TIMESTAMP; + } + leaf old-state { + type Vrrp-bag-protocol-state; + description + "Old State"; + } + leaf new-state { + type Vrrp-bag-protocol-state; + description + "New State"; + } + leaf reason { + type Vrrp-state-change-reason; + description + "Reason for state change"; + } + } + + grouping VRRP-BAG-TIMESTAMP { + description + "Timestamp"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } + + grouping IPV6-BAG-ADDR { + description + "IPV6 BAG ADDR"; + leaf ipv6-address { + type inet:ipv6-address; + description + "IPV6Address"; + } + } + + grouping VRRP-VROUTER-INFO { + description + "Detailed vrID specific information"; + container resign-sent-time { + description + "Time last resign was sent"; + uses VRRP-BAG-TIMESTAMP; + } + container resign-received-time { + description + "Time last resign was received"; + uses VRRP-BAG-TIMESTAMP; + } + leaf interface-name-xr { + type string { + length "0..64"; + } + description + "IM Interface Name"; + } + leaf virtual-router-id-xr { + type uint32; + description + "Virtual Router ID"; + } + leaf version { + type Vrrp-version; + description + "VRRP Protocol Version"; + } + leaf address-family { + type Vrrp-b-af; + description + "Address family"; + } + leaf session-name { + type string { + length "0..16"; + } + description + "Session Name"; + } + leaf slaves { + type uint32; + description + "Number of slaves following state"; + } + leaf is-slave { + type boolean; + description + "Group is a slave group"; + } + leaf followed-session-name { + type string { + length "0..16"; + } + description + "Followed Session Name"; + } + leaf secondary-address-count { + type uint8; + description + "Configured VRRP secondary address count"; + } + leaf operational-address-count { + type uint8; + description + "Operational VRRP address count"; + } + leaf primary-virtual-ip { + type inet:ipv4-address; + description + "Configured IPv4 Primary address"; + } + leaf configured-down-address-count { + type uint8; + description + " Configured but Down VRRP address count"; + } + leaf virtual-linklocal-ipv6-address { + type inet:ipv6-address; + description + "Virtual linklocal IPv6 address"; + } + leaf primary-state { + type Vrrp-vip-state; + description + "State of primary IP address"; + } + leaf master-ip-address { + type inet:ipv4-address; + description + "Master router real IP address"; + } + leaf master-ipv6-address { + type inet:ipv6-address; + description + "Master router real IPv6 address"; + } + leaf master-priority { + type uint8; + description + "Master router priority"; + } + leaf vrrp-state { + type Vrrp-bag-protocol-state; + description + "VRRP state"; + } + leaf authentication-type { + type Vrrp-prot-auth; + description + "Authentication type"; + } + leaf authentication-string { + type string; + description + "Authentication data"; + } + leaf configured-advertize-time { + type uint32; + description + "Configured advertize time"; + } + leaf oper-advertize-time { + type uint32; + description + "Operational advertize time"; + } + leaf min-delay-time { + type uint32; + units "millisecond"; + description + "Minimum delay time in msecs"; + } + leaf reload-delay-time { + type uint32; + units "millisecond"; + description + "Reload delay time in msecs"; + } + leaf delay-timer-flag { + type boolean; + description + "Delay timer running flag"; + } + leaf delay-timer-secs { + type uint32; + units "second"; + description + "Delay timer running time secs"; + } + leaf delay-timer-msecs { + type uint32; + units "millisecond"; + description + "Delay timer running time msecs"; + } + leaf authentication-flag { + type boolean; + description + "Text authentication configured flag"; + } + leaf force-timer-flag { + type boolean; + description + "Configured timers forced flag"; + } + leaf preempt-flag { + type boolean; + description + "Preempt configured flag"; + } + leaf ip-address-owner-flag { + type boolean; + description + "IP address owner flag"; + } + leaf is-accept-mode { + type boolean; + description + "Is accept mode"; + } + leaf preempt-delay-time { + type uint16; + description + "Preempt delay time"; + } + leaf configured-priority { + type uint8; + description + "Configured priority"; + } + leaf operational-priority { + type uint8; + description + "Operational priority"; + } + leaf priority-decrement { + type uint32; + description + "Priority decrement"; + } + leaf tracked-interface-count { + type uint32; + description + "Number of items tracked"; + } + leaf tracked-interface-up-count { + type uint32; + description + "Number of tracked items up"; + } + leaf tracked-item-count { + type uint32; + description + "Number of tracked items"; + } + leaf tracked-item-up-count { + type uint32; + description + "Number of tracked items in UP state"; + } + leaf time-in-current-state { + type uint32; + units "second"; + description + "Time in current state secs"; + } + leaf state-change-count { + type uint32; + description + "Number of state changes"; + } + leaf time-vrouter-up { + type uint32; + units "centisecond"; + description + "Time vrouter is up in centiseconds"; + } + leaf master-count { + type uint32; + description + "No. of times become Master"; + } + leaf adverts-received-count { + type uint32; + description + "No. of advertisements received"; + } + leaf advert-interval-error-count { + type uint32; + description + "Advertise interval errors"; + } + leaf adverts-sent-count { + type uint32; + description + "No. of advertisements sent"; + } + leaf authentication-fail-count { + type uint32; + description + "Authentication failures"; + } + leaf ttl-error-count { + type uint32; + description + "TTL errors"; + } + leaf priority-zero-received-count { + type uint32; + description + "No. priority 0 received"; + } + leaf priority-zero-sent-count { + type uint32; + description + "No. priority 0 sent"; + } + leaf invalid-packet-count { + type uint32; + description + "Invalid packets received"; + } + leaf address-list-error-count { + type uint32; + description + "Address list errors"; + } + leaf invalid-auth-type-count { + type uint32; + description + "Invalid authentication type"; + } + leaf auth-type-mismatch-count { + type uint32; + description + "Authentication type mismatches"; + } + leaf pkt-length-errors-count { + type uint32; + description + "Packet length errors"; + } + leaf time-stats-discontinuity { + type uint32; + description + "Time since a statistics discontinuity in ticks + (10ns units)"; + } + leaf bfd-session-state { + type Vrrp-bfd-session-state; + description + "BFD session state"; + } + leaf bfd-interval { + type uint32; + description + "BFD packet send interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD multiplier"; + } + leaf bfd-cfg-remote-ip { + type inet:ipv4-address; + description + "BFD configured remote IP"; + } + leaf bfd-configured-remote-ipv6-address { + type inet:ipv6-address; + description + "BFD configured remote IPv6"; + } + leaf state-from-checkpoint { + type boolean; + description + "Whether state recovered from checkpoint"; + } + leaf interface-ipv4-address { + type inet:ipv4-address; + description + "The Interface Primary IPv4 address"; + } + leaf interface-ipv6-address { + type inet:ipv6-address; + description + "The Interface linklocal IPv6 address"; + } + leaf virtual-mac-address { + type yang:mac-address; + description + "Virtual mac address"; + } + leaf virtual-mac-address-state { + type Vrrp-vmac-state; + description + "Virtual mac address state"; + } + leaf-list operational-address { + type inet:ipv4-address; + description + "Operational IPv4 VRRP addresses"; + } + leaf-list ipv4-configured-down-address { + type inet:ipv4-address; + description + "IPv4 Configured but Down VRRP addresses"; + } + list ipv6-operational-address { + description + "IPv6 Operational VRRP addresses"; + uses IPV6-BAG-ADDR; + } + list ipv6-configured-down-address { + description + "IPv6 Configured but Down VRRP addresses"; + uses IPV6-BAG-ADDR; + } + list track-item-info { + description + "Track Item Info"; + uses VRRP-TRACKITEM-INFO; + } + list state-change-history { + description + "State change history"; + uses VRRP-STATE-CHANGE-INFO-TYPE; + } + } + + grouping VRRP-TRACKITEM-INFO { + description + "Tracked item information"; + leaf interface { + type xr:Interface-name; + description + "IM Interface"; + } + leaf virtual-router-id-xr { + type uint32; + description + "Virtual Router ID"; + } + leaf tracked-item-type { + type uint16; + description + "Type of tracked item"; + } + leaf tracked-item-index { + type string { + length "0..32"; + } + description + "Tracked item index"; + } + leaf state { + type uint8; + description + "State of the tracked item"; + } + leaf priority { + type uint8; + description + "Priority weight of item"; + } + } + + grouping VRRP-SUMMARY-INFO { + description + "VRRP summary statistics"; + leaf ipv4-sessions-master-owner { + type uint32; + description + "Number of IPv4 sessions in MASTER (owner) state"; + } + leaf ipv4-sessions-master { + type uint32; + description + "Number of IPv4 sessions in MASTER state"; + } + leaf ipv4-sessions-backup { + type uint32; + description + "Number of IPv4 sessions in BACKUP state"; + } + leaf ipv4-sessions-init { + type uint32; + description + "Number of IPv4 sessions in INIT state"; + } + leaf ipv4-slaves-master { + type uint32; + description + "Number of IPv4 slaves in MASTER state"; + } + leaf ipv4-slaves-backup { + type uint32; + description + "Number of IPv4 slaves in BACKUP state"; + } + leaf ipv4-slaves-init { + type uint32; + description + "Number of IPv4 slaves in INIT state"; + } + leaf ipv4-virtual-ip-addresses-master-owner-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on + virtual routers in MASTER (owner) state"; + } + leaf ipv4-virtual-ip-addresses-master-owner-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + virtual routers in MASTER (owner) state"; + } + leaf ipv4-virtual-ip-addresses-master-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on + virtual routers in MASTER state"; + } + leaf ipv4-virtual-ip-addresses-master-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + virtual routers in MASTER state"; + } + leaf ipv4-virtual-ip-addresses-backup-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on + virtual routers in BACKUP state"; + } + leaf ipv4-virtual-ip-addresses-backup-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + virtual routers in BACKUP state"; + } + leaf ipv4-virtual-ip-addresses-init-up { + type uint32; + description + "Number of UP IPv4 Virtual IP Addresses on + virtual routers in INIT state"; + } + leaf ipv4-virtual-ip-addresses-init-down { + type uint32; + description + "Number of DOWN IPv4 Virtual IP Addresses on + virtual routers in INIT state"; + } + leaf ipv6-sessions-master-owner { + type uint32; + description + "Number of IPv6 sessions in MASTER (owner) state"; + } + leaf ipv6-sessions-master { + type uint32; + description + "Number of IPv6 sessions in MASTER state"; + } + leaf ipv6-sessions-backup { + type uint32; + description + "Number of IPv6 sessions in BACKUP state"; + } + leaf ipv6-sessions-init { + type uint32; + description + "Number of IPv6 sessions in INIT state"; + } + leaf ipv6-slaves-master { + type uint32; + description + "Number of IPv6 slaves in MASTER state"; + } + leaf ipv6-slaves-backup { + type uint32; + description + "Number of IPv6 slaves in BACKUP state"; + } + leaf ipv6-slaves-init { + type uint32; + description + "Number of IPv6 slaves in INIT state"; + } + leaf ipv6-virtual-ip-addresses-master-owner-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on + virtual routers in MASTER (owner) state"; + } + leaf ipv6-virtual-ip-addresses-master-owner-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + virtual routers in MASTER (owner) state"; + } + leaf ipv6-virtual-ip-addresses-master-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on + virtual routers in MASTER state"; + } + leaf ipv6-virtual-ip-addresses-master-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + virtual routers in MASTER state"; + } + leaf ipv6-virtual-ip-addresses-backup-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on + virtual routers in BACKUP state"; + } + leaf ipv6-virtual-ip-addresses-backup-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + virtual routers in BACKUP state"; + } + leaf ipv6-virtual-ip-addresses-init-up { + type uint32; + description + "Number of UP IPv6 Virtual IP Addresses on + virtual routers in INIT state"; + } + leaf ipv6-virtual-ip-addresses-init-down { + type uint32; + description + "Number of DOWN IPv6 Virtual IP Addresses on + virtual routers in INIT state"; + } + leaf interfaces-ipv4-state-up { + type uint32; + description + "Number of VRRP interfaces with IPv4 caps in UP + state"; + } + leaf interfaces-ipv4-state-down { + type uint32; + description + "Number of VRRP interfaces with IPv4 caps in DOWN + state"; + } + leaf tracked-interfaces-ipv4-state-up { + type uint32; + description + "Number of tracked interfaces with IPv4 caps in + UP state"; + } + leaf tracked-interfaces-ipv4-state-down { + type uint32; + description + "Number of tracked interfaces with IPv4 caps in + DOWN state"; + } + leaf interfaces-ipv6-state-up { + type uint32; + description + "Number of VRRP interfaces with IPv6 caps in UP + state"; + } + leaf interfaces-ipv6-state-down { + type uint32; + description + "Number of VRRP interfaces with IPv6 caps in DOWN + state"; + } + leaf tracked-interfaces-ipv6-state-up { + type uint32; + description + "Number of tracked interfaces with IPv6 caps in + UP state"; + } + leaf tracked-interfaces-ipv6-state-down { + type uint32; + description + "Number of tracked interfaces with IPv6 caps in + DOWN state"; + } + leaf tracked-objects-state-up { + type uint32; + description + "Number of tracked objects in UP state"; + } + leaf tracked-objects-state-down { + type uint32; + description + "Number of tracked objects in DOWN state"; + } + leaf bfd-sessions-up { + type uint32; + description + "Number of VRRP IPv4 BFD sessions in UP state"; + } + leaf bfd-sessions-down { + type uint32; + description + "Number of VRRP IPv4 BFD sessions in DOWN state"; + } + leaf bfd-session-inactive { + type uint32; + description + "Number of VRRP IPv4 BFD sessions in INACTIVE + state"; + } + leaf ipv6bfd-sessions-up { + type uint32; + description + "Number of VRRP IPv6 BFD sessions in UP state"; + } + leaf ipv6bfd-sessions-down { + type uint32; + description + "Number of VRRP IPv6 BFD sessions in DOWN state"; + } + leaf ipv6bfd-session-inactive { + type uint32; + description + "Number of VRRP IPv6 BFD sessions in INACTIVE + state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper.yang new file mode 100644 index 000000000..a5e6df7ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv4-vrrp-oper.yang @@ -0,0 +1,230 @@ +module Cisco-IOS-XR-ipv4-vrrp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-vrrp-oper"; + prefix ipv4-vrrp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-vrrp-oper-sub1 { + revision-date 2022-11-04; + } + + 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-vrrp package operational data. + + This module contains definitions + for the following management objects: + vrrp: VRRP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-04 { + description + "Added a new state called Activating to virtual-mac state list."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-12 { + description + "Moved router id to a range type."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-16 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Virtual-router-id { + type uint32 { + range "1..255"; + } + description + "Virtual router id"; + } + + container vrrp { + config false; + description + "VRRP operational data"; + container summary { + description + "VRRP summary statistics"; + uses VRRP-SUMMARY-INFO; + } + container ipv6 { + description + "IPv6 VRRP configuration"; + container track-items { + description + "The VRRP tracked item table"; + list track-item { + key "interface-name virtual-router-id tracked-interface-name"; + description + "A configured VRRP IP address entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name to track"; + } + leaf virtual-router-id { + type Virtual-router-id; + description + "The VRRP virtual router id"; + } + leaf tracked-interface-name { + type xr:Interface-name; + description + "The name of the tracked interface"; + } + uses VRRP-TRACKITEM-INFO; + } + } + container virtual-routers { + description + "The VRRP virtual router table"; + list virtual-router { + key "interface-name virtual-router-id"; + description + "A VRRP virtual router"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + leaf virtual-router-id { + type Virtual-router-id; + description + "The VRRP virtual router id"; + } + uses VRRP-VROUTER-INFO; + } + } + container interfaces { + description + "The VRRP interface table"; + list interface { + key "interface-name"; + description + "A VRRP interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses VRRP-INTERFACE-INFO; + } + } + } + container ipv4 { + description + "IPv4 VRRP configuration"; + container interfaces { + description + "The VRRP interface table"; + list interface { + key "interface-name"; + description + "A VRRP interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses VRRP-INTERFACE-INFO; + } + } + container track-items { + description + "The VRRP tracked item table"; + list track-item { + key "interface-name virtual-router-id tracked-interface-name"; + description + "A configured VRRP IP address entry"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name to track"; + } + leaf virtual-router-id { + type Virtual-router-id; + description + "The VRRP virtual router id"; + } + leaf tracked-interface-name { + type xr:Interface-name; + description + "The name of the tracked interface"; + } + uses VRRP-TRACKITEM-INFO; + } + } + container virtual-routers { + description + "The VRRP virtual router table"; + list virtual-router { + key "interface-name virtual-router-id"; + description + "A VRRP virtual router"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + leaf virtual-router-id { + type Virtual-router-id; + description + "The VRRP virtual router id"; + } + uses VRRP-VROUTER-INFO; + } + } + } + container mgo-sessions { + description + "VRRP MGO Session information"; + list mgo-session { + key "session-name"; + description + "A VRRP MGO Session"; + leaf session-name { + type xr:Cisco-ios-xr-string; + description + "The name of the session"; + } + uses VRRP-MGO-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ace-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ace-cfg.yang new file mode 100644 index 000000000..91a7b6193 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ace-cfg.yang @@ -0,0 +1,676 @@ +submodule Cisco-IOS-XR-ipv6-ace-cfg { + belongs-to Cisco-IOS-XR-ipv6-acl-cfg { + prefix ipv6-acl-cfg; + } + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ipv6-acl-datatypes { + prefix ipv6-acl-dt; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 IPv6 ACL entry configuration. + + Copyright (c) 2013, 2015-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Deprecated the native model, replaced by UM model."; + } + revision 2022-07-08 { + description + "Added dscp bitmask field"; + semver:module-version "1.0.0"; + } + revision 2021-09-20 { + description + "Adding icmp-on per ace in the schema"; + } + revision 2021-07-28 { + description + "Added new police units"; + } + revision 2021-06-20 { + description + "Adding icmp-off in the schema"; + } + revision 2021-03-23 { + description + "Changing bag version due to fragment-type addition"; + semver:module-version "1.0.0"; + } + revision 2021-03-17 { + description + "Adding rsvp and vrrp keywords for protocols under access-list config CLI"; + } + revision 2020-12-04 { + description + "Fixing Remark Length"; + } + revision 2020-11-23 { + description + "Changing the bag version"; + } + revision 2019-10-22 { + description + "Fixing ICMP TYPE CODE datatype from Enum to RangeEnum"; + } + revision 2019-05-16 { + description + "Add more keywords for protocols under access-list config CLI."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-04-03 { + description + "6.5.1 revision. + Correct enum value for Next-hop-type"; + } + revision 2018-03-23 { + description + "6.5.1 revision. + Removing none-next-type."; + } + revision 2018-03-13 { + description + "6.5.1 revision. + Using YANG bit types for tcp flags."; + } + revision 2018-01-03 { + description + "6.4.1 revision. + Fixed a few typos in the description."; + } + revision 2017-12-04 { + description + "6.4.1 revision. + Updated the when statement for icmp constainer to match + icmpv6 protocol."; + } + revision 2017-11-13 { + description + "6.4.1 revision. + This revision adds the choice statement and a container: + - Dscptypes + - DSCPValues "; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2017-05-11 { + description + "6.3.1 revision. + This revision adds the following new leaf: + - set-ttl"; + } + revision 2016-11-07 { + description + "6.2.1 revision. + This revision adds the following new leaves: + - protocol-operator + - protocol2"; + } + revision 2015-11-09 { + description + "Initial revision."; + } + + typedef Next-hop-type { + type enumeration { + enum "regular-next-hop" { + value 1; + description + "Regular next-hop."; + } + enum "default-next-hop" { + value 2; + description + "Default next-hop."; + } + } + description + "Next-hop type."; + } + + grouping IPV6-ACE { + description + "IPv6 ACL entry."; + leaf grant { + type ipv6-acl-dt:Ipv6-acl-grant-enum; + description + "Forwarding action for the packet. This is required + for any non-remark ACE. Leave unspecified otherwise."; + } + leaf protocol-operator { + type ipv6-acl-dt:Ipv6-acl-operator-enum; + description + "Protocol operator. User can specify equal or leave + it unspecified for singleton protocol match, or + specify range for protocol range match."; + } + leaf protocol { + type ipv6-acl-dt:Ipv6-acl-protocol-number; + description + "Protocol number to match. It can be used for the lower + bound (range operator) or single value (equal operator). + Any value not in the permissible range will be rejected. + When leave unspecified, default value is ipv6."; + reference "RFC 758 - ASSIGNED INTERNET PROTOCOL NUMBERS"; + } + leaf protocol2 { + type ipv6-acl-dt:Ipv6-acl-protocol-number; + description + "Protocol2 to match. It is used in upper bound (range + operator). Any value not in the permissible range will + be rejected."; + reference "RFC 758 - ASSIGNED INTERNET PROTOCOL NUMBERS"; + } + container source-network { + description + "Source network settings."; + leaf source-address { + type inet:ipv6-address; + description + "Source IPv6 address, leave unspecified + if inputting as IPv6 address with wildcarding."; + reference "RFC 4291"; + } + leaf source-wild-card-bits { + type xr:Ipv6-prefix-length; + description + "Wildcard bits to apply to source-address + (if specified), leave unspecified for no + wildcarding."; + reference "RFC 4291"; + } + leaf source-mask { + type inet:ipv6-address-no-zone; + description + "Source address mask. Either + source-wild-card-bits or source-mask is. + supported, not both. Leave unspecified. + for any."; + reference "RFC 4291"; + } + } + container destination-network { + description + "Destination network settings."; + leaf destination-address { + type inet:ipv6-address; + description + "Destination IPv6 address, leave unspecified + if inputting as IPv6 address with + wildcarding."; + reference "RFC 4291"; + } + leaf destination-wild-card-bits { + type xr:Ipv6-prefix-length; + description + "Wildcard bits to apply to destination + destination-address (if specified), + leave unspecified for no wildcarding."; + reference "RFC 4291"; + } + leaf destination-mask { + type inet:ipv6-address-no-zone; + description + "Destination address mask. Either + destination-wild-card-bits or destination-mask. + is supported, not both. Leave unspecified + for any."; + reference "RFC 4291"; + } + } + container source-port { + when "../protocol = '6' or ../protocol = 'tcp' or ../protocol = '17' or ../protocol = 'udp' or ../protocol = '132' or ../protocol = 'sctp'" { + description + "Applicable only to TCP, SCTP and UDP."; + } + description + "Source port settings."; + leaf source-operator { + type ipv6-acl-dt:Ipv6-acl-operator-enum; + description + "Source port comparison operator. This is a required + field if any source port value is given, otherwise, + config will be rejected. Leave unspecified + if no source port comparison is to be done."; + } + leaf first-source-port { + type ipv6-acl-dt:Ipv6-acl-port-number; + description + "Lower source port for comparison. It can be used + for the lower bound (range operator) or single value + (equal, less, greater..etc). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + leaf second-source-port { + type ipv6-acl-dt:Ipv6-acl-port-number; + description + "Upper source port for comparion. It is used + in the upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + } + container destination-port { + when "../protocol = '6' or ../protocol = 'tcp' or ../protocol = '17' or ../protocol = 'udp' or ../protocol = '132' or ../protocol = 'sctp'" { + description + "Applicable only to TCP, SCTP and UDP."; + } + description + "Destination port settings."; + leaf destination-operator { + type ipv6-acl-dt:Ipv6-acl-operator-enum; + description + "Destination port comparison operator. This is a + required field if any destination port value is + given, otherwise, config will be rejected. + Leave unspecified if no destination + port comparison is to be done."; + } + leaf first-destination-port { + type ipv6-acl-dt:Ipv6-acl-port-number; + description + "Lower destination port for comparison. It can be used + for the lower bound (range operator) or single value + (equal, less, greater..etc). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + leaf second-destination-port { + type ipv6-acl-dt:Ipv6-acl-port-number; + description + "Upper destination port for comparison. It is used + in the upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 1700 - WELL KNOWN PORT NUMBERS"; + } + } + container icmp { + when "../protocol = '58' or ../protocol = 'icmpv6'" { + description + "Applicable only to ICMPv6."; + } + description + "ICMP settings."; + leaf icmp-type-code { + type ipv6-acl-dt:Ipv6-acl-icmp-type-code-enum; + description + "Well known ICMP message code types to match, + leave unspecified if ICMP message code type + comparion is not to be performed."; + reference "RFC 2463"; + } + } + container tcp { + when "../protocol = '6' or ../protocol = 'tcp'" { + description + "Applicable only to TCP."; + } + description + "TCP settings."; + leaf tcp-bits-match-operator { + type ipv6-acl-dt:Ipv6-acl-tcp-match-operator-enum; + description + "TCP Bits match operator. Leave unspecified if + flexible comparison of TCP bits is not + required."; + } + leaf tcp-bits { + type ipv6-acl-dt:Ipv6-acl-tcp-bits-number; + description + "TCP bits to match. Leave unspecified if + comparison of TCP bits is not required."; + reference "RFC 793 Section 3.1 Control Bits"; + } + leaf tcp-bits-mask { + type ipv6-acl-dt:Ipv6-acl-tcp-bits-number; + description + "TCP bits mask to use for flexible TCP matching. + Leave unspecified if it is not required."; + } + } + container packet-length { + description + "Packet length settings."; + leaf packet-length-operator { + type ipv6-acl-dt:Ipv6-acl-operator-enum; + description + "Packet length operator applicable if packet length + is to be compared. This is a required field if any + packet-length value is given, otherwise, config + will be rejected."; + } + leaf packet-length-min { + type ipv6-acl-dt:Ipv6-acl-plen-range; + description + "Mininum packet length value for comparison. It can be used + for the lower bound (range operator) or single value + (equal, less, greater..etc). Any value not in the permissible + range will be rejected. Leave unspecified otherwise."; + } + leaf packet-length-max { + type ipv6-acl-dt:Ipv6-acl-plen-range; + description + "Maximum packet length value for comparison. It is used + in the upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + } + } + container time-to-live { + description + "TTL settings."; + leaf time-to-live-operator { + type ipv6-acl-dt:Ipv6-acl-operator-enum; + description + "TTL operator is applicable if TTL is to be compared. + This is a required field if any TTL value is given, + otherwise, config will be rejected. Leave + unspecified if TTL classification is not required."; + } + leaf time-to-live-min { + type ipv6-acl-dt:Ipv6-acl-ttl-range; + description + "Mininum TTL value for comparison. It can be used for the + lower bound (range operator) or single value (equal, less, + greater..etc). Any value not in the permissible range will + be rejected. Leave unspecified otherwise."; + reference "RFC 791 Section 3.2 - Time to Live"; + } + leaf time-to-live-max { + type ipv6-acl-dt:Ipv6-acl-ttl-range; + description + "Maximum TTL value for comparison. It is used in the + upper bound (range operator). Any value not in the + permissible range will be rejected. Leave unspecified + otherwise."; + reference "RFC 791 Section 3.2 - Time to Live"; + } + } + choice Dscptype { + case dscpcontainer { + container DSCPValues { + description + "DSCP settings."; + leaf dscp-operator { + type ipv6-acl-dt:Ipv6-acl-operator-enum; + description + "Enumerated DSCP operator values. Used when + operator needs to be configured. Leave unspecified + if DSCP operator is not required. Note: if the + dscp operator is not set, it logically behaves + same as equal operator."; + } + leaf dscp-lower { + type ipv6-acl-dt:Ipv6-acl-dscp-number; + description + "DSCP value to match (if a value was specified). + It can be used for the lower bound (range operator) or + single value (equal, less, greater..etc) or without + any operator. Any value not in the permissible range + will be rejected. Leave unspecified if DSCP + comparison is not to be performed."; + reference "RFC 2474"; + } + leaf dscp-upper { + type ipv6-acl-dt:Ipv6-acl-dscp-number; + description + "DSCP value to match (if a value was specified). + It can be used in the upper bound (range operator) + Any value not in the permissible range will be rejected. + Leave unspecified if DSCP range comparison is not to be + performed."; + reference "RFC 2474"; + } + } + } + case dscpleaf { + leaf dscp { + type ipv6-acl-dt:Ipv6-acl-dscp-number; + description + "DSCP value to match without any operators. + Any value not in the permissible range will be rejected. + Leave unspecified if DSCP comparison is not to be + performed. For Setting dscp values, use the dscp + container as this leaf will be deprecated soon."; + reference "RFC 2474"; + } + } + } + leaf precedence { + type ipv6-acl-dt:Ipv6-acl-precedence-number; + description + "Precedence value to match (if a protocol was specified). + Any value not in the permissible range will be rejected. + Leave unspecified if precedence comparion is not to be + performed."; + reference "RFC 791 Section 3.1 - Precedence"; + } + container next-hop { + description + "Next-hop settings."; + leaf next-hop-type { + type Next-hop-type; + description + "The nexthop type."; + } + container next-hop-1 { + description + "The first next-hop settings."; + leaf next-hop { + type inet:ipv6-address-no-zone; + description + "The IPv6 address of the next-hop."; + } + leaf vrf-name { + type string { + length "1..32"; + } + description + "The VRF name of the next-hop."; + } + leaf track-name { + type string { + length "1..32"; + } + description + "The object tracking name for the next-hop."; + } + } + container next-hop-2 { + description + "The second next-hop settings."; + leaf next-hop { + type inet:ipv6-address-no-zone; + description + "The IPv6 address of the next-hop."; + } + leaf vrf-name { + type string { + length "1..32"; + } + description + "The VRF name of the next-hop."; + } + leaf track-name { + type string { + length "1..32"; + } + description + "The object tracking name for the next-hop."; + } + } + container next-hop-3 { + description + "The third next-hop settings."; + leaf next-hop { + type inet:ipv6-address-no-zone; + description + "The IPv6 address of the next-hop."; + } + leaf vrf-name { + type string { + length "1..32"; + } + description + "The VRF name of the next-hop."; + } + leaf track-name { + type string { + length "1..32"; + } + description + "The object tracking name for the next-hop."; + } + } + } + leaf counter-name { + type string { + length "1..64"; + } + description + "Name of counter to aggregate hardware statistics."; + } + leaf log-option { + type ipv6-acl-dt:Ipv6-acl-logging-enum; + description + "Log the packet on this access-list-entry/rule."; + } + leaf capture { + type boolean; + description + "Enable capture if set to TRUE."; + } + leaf undetermined-transport { + type boolean; + description + "Enable undetermined-transport if set to TRUE."; + } + leaf icmp-off { + type empty; + description + "To turn off ICMP generation for deny ACEs."; + } + leaf qos-group { + type ipv6-acl-dt:Ipv6-acl-qos-group-number; + description + "Set qos-group number. Any value not in the permissible + range will be rejected."; + } + leaf set-ttl { + type ipv6-acl-dt:Ipv6-acl-ttl-range; + description + "Set TTL Value. Any value not in the permissible range + will be rejected."; + } + container header-flags { + description + "Match if header-flag is present."; + leaf routing { + type empty; + description + "Match if routing header is present."; + reference "RFC 2460 Section 4"; + } + leaf destopts { + type empty; + description + "Match if destops header is present."; + reference "RFC 2460 Section 4"; + } + leaf hop-by-hop { + type empty; + description + "Match if hop-by-hop header is present."; + reference "RFC 2460 Section 4"; + } + leaf fragments { + type empty; + description + "Match if fragments header is present."; + reference "RFC 2460 Section 4"; + } + leaf authen { + type empty; + description + "Match if authen header is present."; + reference "RFC 2460 Section 4"; + } + } + leaf remark { + type string { + length "0..255"; + } + description + "Description for the access-list-entry/rules."; + } + leaf source-prefix-group { + type string { + length "1..64"; + } + description + "IPv6 source network object group name."; + } + leaf destination-prefix-group { + type string { + length "1..64"; + } + description + "IPv6 destination network object group name."; + } + leaf source-port-group { + type string { + length "1..64"; + } + description + "Source port object group name."; + } + leaf destination-port-group { + type string { + length "1..64"; + } + description + "Destination port object group name."; + } + leaf sequence-str { + type string { + length "1..64"; + } + description + "Sequence String for the ace."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-cfg.yang new file mode 100644 index 000000000..49c563e4b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-cfg.yang @@ -0,0 +1,274 @@ +module Cisco-IOS-XR-ipv6-acl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-acl-cfg"; + prefix ipv6-acl-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-common-acl-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ipv6-acl-datatypes { + prefix dt2; + } + include Cisco-IOS-XR-ipv6-ace-cfg { + revision-date 2022-08-16; + } + + 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 ipv6-acl package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-ipv6-access-list-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + ipv6-acl-and-prefix-list: IPv6 ACL configuration data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Deprecated the native model, replaced by UM model. + 2022-07-08 + 7.5.4 revision. Added dscp-bitmask feature + 2021-09-20 + 7.6.1 revision. Adding icmp-on for ace in the schema + 2021-07-28 + 7.5.1 revision. Adding additional units for policer IosSetYangSchemaRev Cisco-IOS-XR-ipv6-acl-cfg"; + semver:module-version "2.0.0"; + } + revision 2021-06-20 { + description + "7.5.1 revision. Adding icmp-off in the schema + 2021-03-23 + 7.5.1 revision. Changing bag version due to fragment-type addition. + 2021-03-17 + 7.3.15 revision. Adding rsvp and vrrp keywords for protocols under access-list config CLI."; + semver:module-version "1.3.0"; + } + revision 2020-12-04 { + description + "7.4.1 revision. Fixing Remark Length + 2020-11-23 + 7.3.2 revision. changing the bag version"; + semver:module-version "1.2.0"; + } + revision 2019-10-22 { + description + "7.0.1 revision. Fixing ICMP TYPE CODE datatype from Enum to RangeEnum"; + semver:module-version "1.1.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-03 { + description + "6.5.1 revision. Correct enum value for Next-hop-type."; + } + revision 2018-03-23 { + description + "6.5.1 revision. Removing none-next-type."; + } + revision 2018-03-13 { + description + "6.5.1 revision. Using YANG bit types for tcp flags."; + } + revision 2018-01-03 { + description + "6.4.1 revision. Fixed a few typos in the description."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv6-acl-and-prefix-list { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-ipv6-access-list-cfg.yang which + will provide the compatible functionalities. + IPv6 ACL configuration data"; + container prefixes { + description + "Table of prefix lists"; + list prefix { + key "name"; + description + "Name of a prefix list"; + container prefix-list-entries { + description + "Sequence of entries forming a prefix list"; + list prefix-list-entry { + key "sequence-number"; + description + "A prefix list entry; either a description + (remark) or a prefix to match against"; + leaf sequence-number { + type dt1:Acl-sequence-number-range; + description + "Sequence number of prefix list"; + } + leaf grant { + type dt2:Ipv6-acl-grant-enum; + description + "Whether to forward or drop packets matching + the prefix list"; + } + leaf ipv6-address-as-string { + type string; + description + "The IPv6 address if entered with the + ZoneMutually exclusive with Prefix and + PrefixMask"; + } + leaf zone { + type string; + description + "IPv6 Zone if entered with the + IPV6AddressMutually exclusive with Prefix + and PrefixMask"; + } + leaf prefix { + type inet:ipv6-address-no-zone; + description + "IPv6 address prefix to match"; + } + leaf prefix-mask { + type xr:Ipv6-prefix-length; + description + "MaskLength of IPv6 address prefix"; + } + leaf match-exact-length { + type dt2:Ipv6-prefix-match-exact-length; + description + "Set to perform an exact prefix length match. + Item is mutually exclusive with minimum and + maximum length match items"; + } + leaf exact-prefix-length { + type xr:Ipv6-prefix-length; + description + "If exact prefix length matching specified, + set the length of prefix to be matched"; + } + leaf match-max-length { + type dt2:Ipv6-prefix-match-max-length; + description + "Set to perform a maximum length prefix match + . Item is mutually exclusive with exact + length match item"; + } + leaf max-prefix-length { + type xr:Ipv6-prefix-length; + description + "If maximum length prefix matching specified, + set the maximum length of prefix to be + matched"; + } + leaf match-min-length { + type dt2:Ipv6-prefix-match-min-length; + description + "Set to perform a minimum length prefix match + . Item is mutually exclusive with exact + length match item"; + } + leaf min-prefix-length { + type xr:Ipv6-prefix-length; + description + "If minimum length prefix matching specified, + set the minimum length of prefix to be + matched"; + } + leaf remark { + type dt2:Ipv6-acl-prefix-remark-name; + description + "Comments or a description for the prefix + list. Item is mutually exclusive with all + others in the object"; + } + } + } + leaf name { + type dt2:Ipv6-acl-prefix-list-name; + description + "Name of a prefix list"; + } + } + } + container log-update { + description + "Control access lists log updates"; + leaf threshold { + type dt2:Ipv6-acl-log-threshold-range; + description + "Log update threshold (number of hits)"; + } + leaf rate { + type dt2:Ipv6-acl-log-rate-range; + description + "Log update rate (log messages per second)"; + } + } + container accesses { + description + "Table of access lists"; + list access { + key "name"; + description + "An ACL"; + container access-list-entries { + description + "ACL entry table; contains list of access list + entries"; + list access-list-entry { + key "sequence-number"; + description + "An ACL entry; either a description (remark) + or anAccess List Entry to match against"; + leaf sequence-number { + type dt2:Ipv6-acl-sequence-number-range; + description + "Sequence number of access list entry"; + } + uses IPV6-ACE; + } + } + leaf name { + type dt2:Ipv6-acl-prefix-list-name; + description + "Name of the access list"; + } + } + } + leaf icmp-off { + type empty; + description + "This is set to disable the icmpoff messages"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-datatypes.yang new file mode 100644 index 000000000..c1d8591d3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-datatypes.yang @@ -0,0 +1,1130 @@ +module Cisco-IOS-XR-ipv6-acl-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-acl-datatypes"; + prefix ipv6-acl-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-23 { + description + "7.5.1 revision. Adding enums for fragment-type addition."; + semver:module-version "2.2.0"; + } + revision 2020-12-04 { + description + "7.4.1 revision. Fixing Remark Length"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6-prefix-match-exact-length { + type enumeration { + enum "match-exact-length" { + value 1; + description + "Prefix Length Exact match"; + } + } + description + "Ipv6 prefix match exact length"; + } + + typedef Ipv6-acl-grant-enum { + type enumeration { + enum "deny" { + value 0; + description + "Deny"; + } + enum "permit" { + value 1; + description + "Permit"; + } + } + description + "Ipv6 acl grant enum"; + } + + typedef Ipv6-acl-logging-enum { + type enumeration { + enum "log" { + value 1; + description + "Log matches against this entry"; + } + enum "log-input" { + value 2; + description + "Log matches against this entry, including input + interface"; + } + } + description + "Ipv6 acl logging enum"; + } + + typedef Ipv6-acl-log-threshold-range { + type uint32 { + range "1..2147483647"; + } + description + "Ipv6 acl log threshold range"; + } + + typedef Ipv6-acl-protocol-number { + type union { + type enumeration { + enum "ip" { + value 0; + description + "Any IP protocol"; + } + enum "icmp" { + value 1; + description + "Internet Control Message Protocol"; + } + enum "igmp" { + value 2; + description + "Internet Gateway Message Protocol"; + } + enum "ip-in-ip" { + value 4; + description + "IP in IP tunneling"; + } + enum "tcp" { + value 6; + description + "Transport Control Protocol"; + } + enum "igrp" { + value 9; + description + "Cisco's IGRP Routing Protocol"; + } + enum "udp" { + value 17; + description + "User Datagram Protocol"; + } + enum "rsvp" { + value 46; + description + "Resource Reservation Protocol"; + } + enum "gre" { + value 47; + description + "Cisco's GRE tunneling"; + } + enum "esp" { + value 50; + description + "Encapsulation Security Protocol"; + } + enum "ahp" { + value 51; + description + "Authentication Header Protocol"; + } + enum "icmpv6" { + value 58; + description + "Internet Control Message Protocol"; + } + enum "eigrp" { + value 88; + description + "Cisco's EIGRP Routing Protocol"; + } + enum "ospf" { + value 89; + description + "OSPF Routing Protocol"; + } + enum "nos" { + value 94; + description + "KA9Q NOS Compatible IP over IP tunneling"; + } + enum "pim" { + value 103; + description + "Protocol Independent Multicast"; + } + enum "pcp" { + value 108; + description + "Payload Compression Protocol"; + } + enum "vrrp" { + value 112; + description + "Virtual Router Redundancy Protocol"; + } + enum "sctp" { + value 132; + description + "Stream Control Transmission Protocol"; + } + } + type uint32 { + range "0..255"; + } + } + description + "Ipv6 acl protocol number"; + } + + typedef Ipv6-acl-icmp-code-range { + type uint32 { + range "0..255"; + } + description + "Ipv6 acl icmp code range"; + } + + typedef Ipv6-acl-icmp-type-code-enum { + type union { + type enumeration { + enum "parameter-problem" { + value 327679; + description + "All parameter problems"; + } + enum "time-exceeded" { + value 262143; + description + "All time exceeds"; + } + enum "router-solicitation" { + value 8716288; + description + "Router discovery solicitations"; + } + enum "router-advertisement" { + value 8781824; + description + "Router discovery advertisements"; + } + enum "echo" { + value 8388608; + description + "Echo ping"; + } + enum "redirect" { + value 8978432; + description + "All redirects"; + } + enum "unreachable" { + value 131071; + description + "All unreachables"; + } + enum "echo-reply" { + value 8454144; + description + "Echo reply"; + } + enum "host-unreachable" { + value 65539; + description + "Host unreachable"; + } + enum "port-unreachable" { + value 65540; + description + "Port unreachable"; + } + enum "administratively-prohibited" { + value 65537; + description + "Administratively prohibited"; + } + enum "no-room-for-option" { + value 262146; + description + "Parameter required but no room"; + } + enum "reassembly-timeout" { + value 196609; + description + "Reassembly timeout"; + } + enum "option-missing" { + value 262145; + description + "Parameter required but not present"; + } + enum "group-membership-query" { + value 8585215; + description + "Multicast listener query"; + } + enum "group-membership-report" { + value 8650751; + description + "Multicast listener report"; + } + enum "group-membership-reduction" { + value 8716287; + description + "Multicast listener done"; + } + enum "packet-too-big" { + value 131072; + description + "packet too big"; + } + enum "ttl-exceeded" { + value 196608; + description + "TTL exceeded"; + } + enum "neighbor-solicitation" { + value 8847360; + description + "Neighbor discovery neighbor solicitations"; + } + enum "neighbor-advertisement" { + value 8912896; + description + "Neighbor discovery neighbor advertisements"; + } + enum "router-renumbering" { + value 9109503; + description + "Router renumbering"; + } + enum "who-are-you-request" { + value 9175039; + description + "Who are you request"; + } + enum "who-are-you-reply" { + value 9240575; + description + "Who are you reply"; + } + enum "erronenous-header-field" { + value 262144; + description + "Erroneous header field"; + } + enum "beyond-scope-of-source-address" { + value 65538; + description + "Unreachable beyond scope of address"; + } + enum "no-route-to-destination" { + value 65536; + description + "No route to destination"; + } + enum "rr-command" { + value 9043968; + description + "Router renumbering command"; + } + enum "rr-result" { + value 9043969; + description + "Router renumbering result"; + } + enum "rr-seqnum-reset" { + value 9044223; + description + "Router renumbering seqnum"; + } + enum "node-information-successful-reply" { + value 9175040; + description + "Node information successful reply"; + } + enum "node-information-request-is-refused" { + value 9175041; + description + "Node information reply rejected"; + } + enum "query-subject-is-ipv6-address" { + value 9109504; + description + "Query subject is ipv6 address"; + } + enum "query-subject-is-domain-name" { + value 9109505; + description + "Query subject is domain name"; + } + enum "query-subject-is-ipv4-address" { + value 9109506; + description + "Query subject is ipv4 address"; + } + enum "unknown-query-type" { + value 9175042; + description + "Unknown query type"; + } + } + type uint32 { + range "0..2147483646"; + } + } + description + "Ipv6 acl icmp type code enum"; + } + + typedef Ipv6-acl-sequence-number-range { + type uint32 { + range "1..2147483643"; + } + description + "Ipv6 acl sequence number range"; + } + + typedef Ipv6-acl-precedence-number { + type union { + type enumeration { + enum "critical" { + value 5; + description + "Match packets with critical precedence"; + } + enum "flash" { + value 3; + description + "Match packets with flash precedence"; + } + enum "flash-override" { + value 4; + description + "Match packets with flash override precedence"; + } + enum "immediate" { + value 2; + description + "Match packets with immediate precedence"; + } + enum "internet" { + value 6; + description + "Match packets with internetwork control + precedence"; + } + enum "network" { + value 7; + description + "Match packets with network control precedence"; + } + enum "priority" { + value 1; + description + "Match packets with priority precedence"; + } + enum "routine" { + value 0; + description + "Match packets with routine precedence"; + } + } + type uint32 { + range "0..7"; + } + } + description + "Ipv6 acl precedence number"; + } + + typedef Ipv6-acl-qos-group-number { + type uint32 { + range "0..512"; + } + description + "Ipv6 acl qos group number"; + } + + typedef Ipv6-acl-frag-flags { + type enumeration { + enum "is-fragment" { + value 2; + description + "Match is fragment flag"; + } + enum "first-fragment" { + value 4; + description + "Match first fragment flag"; + } + } + description + "Ipv6 acl frag flags"; + } + + typedef Ipv6-acl-type-enum { + type enumeration { + enum "acl" { + value 1; + description + "ACL"; + } + enum "prefix-list" { + value 2; + description + "Prefix List"; + } + } + description + "Ipv6 acl type enum"; + } + + typedef Ipv6-prefix-match-min-length { + type enumeration { + enum "match-min-length" { + value 2; + description + "Enable matching of Prefix Lengths greater than + MinPrefixLength"; + } + } + description + "Ipv6 prefix match min length"; + } + + typedef Ipv6-acl-dscp-number { + type union { + type enumeration { + enum "default" { + value 0; + description + "Default DSCP"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 DSCP"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 DSCP"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 DSCP"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 DSCP"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 DSCP"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 DSCP"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 DSCP"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 DSCP"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 DSCP"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 DSCP"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 DSCP"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 DSCP"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1 (precedence 1) DSCP"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2 (precedence 2) DSCP"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3 (precedence 3) DSCP"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4 (precedence 4) DSCP"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5 (precedence 5) DSCP"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6 (precedence 6) DSCP"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7 (precedence 7) DSCP"; + } + enum "ef" { + value 46; + description + "Match packets with EF DSCP"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Ipv6 acl dscp number"; + } + + typedef Ipv6-acl-prefix-remark-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Ipv6 acl prefix remark name"; + } + + typedef Ipv6-acl-max-configurable-sequence-numbers { + type uint32 { + range "50000..350000"; + } + description + "Ipv6 acl max configurable sequence numbers"; + } + + typedef Ipv6-acl-log-rate-range { + type uint32 { + range "1..1000"; + } + description + "Ipv6 acl log rate range"; + } + + typedef Ipv6-acl-tcp-bits-number { + type bits { + bit fin { + position 0; + description + "Match on the FIN bit (0x01)"; + } + bit syn { + position 1; + description + "Match on the SYN bit (0x02)"; + } + bit rst { + position 2; + description + "Match on the RST bit (0x04)"; + } + bit psh { + position 3; + description + "Match on the PSH bit (0x08)"; + } + bit ack { + position 4; + description + "Match on the ACK bit (0x10)"; + } + bit urg { + position 5; + description + "Match on the URG bit (0x20)"; + } + } + description + "Ipv6 acl tcp bits number"; + } + + typedef Ipv6-acl-prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Ipv6 acl prefix list name"; + } + + typedef Ipv6-acl-icmp-type-range { + type uint32 { + range "0..255"; + } + description + "Ipv6 acl icmp type range"; + } + + typedef Ipv6-prefix-match-max-length { + type enumeration { + enum "match-max-length" { + value 3; + description + "Enable matching of Prefix Lengths lesser than + MaxPrefixLength"; + } + } + description + "Ipv6 prefix match max length"; + } + + typedef Ipv6-acl-plen-range { + type uint32 { + range "0..65535"; + } + description + "Ipv6 acl plen range"; + } + + typedef Ipv6-acl-ttl-range { + type uint32 { + range "0..255"; + } + description + "Ipv6 acl ttl range"; + } + + typedef Ipv6-acl-port-number { + type union { + type enumeration { + enum "echo" { + value 7; + description + "Match on the 'echo' port number"; + } + enum "discard" { + value 9; + description + "Match on the 'discard' port number"; + } + enum "daytime" { + value 13; + description + "Match on the 'daytime' port number (TCP/SCTP + only)"; + } + enum "char-gen" { + value 19; + description + "Match on the 'chargen' port number (TCP/SCTP + only)"; + } + enum "ftp-data" { + value 20; + description + "Match on the FTP data connections port number + (TCP/SCTP only)"; + } + enum "ftp" { + value 21; + description + "Match on the 'ftp' port number (TCP/SCTP only)"; + } + enum "telnet" { + value 23; + description + "Match on the 'telnet' port number (TCP/SCTP + only)"; + } + enum "smtp" { + value 25; + description + "Match on the 'smtp' port number (TCP/SCTP + only)"; + } + enum "time" { + value 37; + description + "Match on the 'time' port number"; + } + enum "name-server" { + value 42; + description + "Match on the IEN116 name service port number + (UDP only)"; + } + enum "who-is" { + value 43; + description + "Match on the 'nicname' port number (TCP/SCTP + only)"; + } + enum "tacacs" { + value 49; + description + "Match on the 'tacacs' port number"; + } + enum "dns" { + value 53; + description + "Match on the 'dns' port number"; + } + enum "boot-ps" { + value 67; + description + "Match on the Bootstrap Protocol server port + number (UDP only)"; + } + enum "boot-pc" { + value 68; + description + "Match on the Bootstrap Protocol client port + number (UDP only)"; + } + enum "tftp" { + value 69; + description + "Match on the 'tftp' port number (UDP only)"; + } + enum "gopher" { + value 70; + description + "Match on the 'gopher' port number (TCP/SCTP + only)"; + } + enum "finger" { + value 79; + description + "Match on the 'finger' port number (TCP/SCTP + only)"; + } + enum "www" { + value 80; + description + "Match on the 'http' port number (TCP/SCTP + only)"; + } + enum "host-name" { + value 101; + description + "Match on the NIC hostname server port number + (TCP/SCTP only)"; + } + enum "pop2" { + value 109; + description + "Match on the 'pop2' port number (TCP/SCTP + only)"; + } + enum "pop3" { + value 110; + description + "Match on the 'pop3' port number (TCP/SCTP + only)"; + } + enum "sun-rpc" { + value 111; + description + "Match on the Sun RPC port number"; + } + enum "ident" { + value 113; + description + "Match on the 'ident' port number (TCP/SCTP + only)"; + } + enum "nntp" { + value 119; + description + "Match on the 'nntp' port number (TCP/SCTP + only)"; + } + enum "ntp" { + value 123; + description + "Match on the 'ntp' port number (UDP only)"; + } + enum "net-bios-ns" { + value 137; + description + "Match on the NetBIOS name service port number + (UDP only)"; + } + enum "net-bios-dgs" { + value 138; + description + "Match on the NetBIOS datagram service port + number (UDP only)"; + } + enum "net-bios-ss" { + value 139; + description + "Match on the NetBIOS session service port + number (UDP only)"; + } + enum "snmp" { + value 161; + description + "Match on the 'snmp' port number (UDP only)"; + } + enum "snmp-trap" { + value 162; + description + "Match on the SNMP traps port number (UDP only)"; + } + enum "xdmcp" { + value 177; + description + "Match on the 'xdmcp' port number (UDP only)"; + } + enum "bgp" { + value 179; + description + "Match on the 'bgp' port number (TCP/SCTP only)"; + } + enum "irc" { + value 194; + description + "Match on the 'irc' port number (TCP/SCTP only)"; + } + enum "dnsix" { + value 195; + description + "Match on the DNSIX security protocol auditing + port number (UDP only)"; + } + enum "mobile-ip" { + value 434; + description + "Match on the mobile IP registration port + number (UDP only)"; + } + enum "pim-auto-rp" { + value 496; + description + "Match on the PIM Auto-RP port number"; + } + enum "isakmp" { + value 500; + description + "Match on the 'isakmp' port number (UDP only)"; + } + enum "exec-or-biff" { + value 512; + description + "Match on the port used by TCP/SCTP for 'exec' + and by UDP for 'biff'"; + } + enum "login-or-who" { + value 513; + description + "Match on the port used by TCP/SCTP for 'login' + and by UDP for 'rwho'"; + } + enum "cmd-or-syslog" { + value 514; + description + "Match on the port used by TCP/SCTP for 'rcmd' + and by UDP for 'syslog'"; + } + enum "lpd" { + value 515; + description + "Match on the 'lpd' port number (TCP/SCTP only)"; + } + enum "talk" { + value 517; + description + "Match on the 'talk' port number"; + } + enum "rip" { + value 520; + description + "Match on the 'rip' port number (UDP only)"; + } + enum "uucp" { + value 540; + description + "Match on the 'uucp' port number (TCP/SCTP + only)"; + } + enum "klogin" { + value 543; + description + "Match on the Kerberos login port number + (TCP/SCTP only)"; + } + enum "kshell" { + value 544; + description + "Match on the Kerberos shell port number + (TCP/SCTP only)"; + } + enum "ldp" { + value 646; + description + "Match on the LDP port"; + } + enum "https" { + value 443; + description + "Match on the HTTPS port"; + } + enum "bfd" { + value 3784; + description + "Match on the BFD port"; + } + enum "radius" { + value 1812; + description + "Match on the RADIUS AUTHENTICATION port"; + } + enum "radius-acct" { + value 1813; + description + "Match on the RADIUS ACCOUNTING port"; + } + } + type uint32 { + range "0..65535"; + } + } + description + "Ipv6 acl port number"; + } + + typedef Ipv6-acl-status-enum { + type enumeration { + enum "disabled" { + value 0; + description + "Disabled"; + } + enum "enabled" { + value 1; + description + "Enabled"; + } + } + description + "Ipv6 acl status enum"; + } + + typedef Ipv6-acl-max-configurable-acl { + type uint32 { + range "1000..16000"; + } + description + "Ipv6 acl max configurable acl"; + } + + typedef Ipv6-acl-operator-enum { + type enumeration { + enum "equal" { + value 1; + description + "Match only packets on a given port number"; + } + enum "greater-than" { + value 2; + description + "Match only packet with a greater port number"; + } + enum "less-than" { + value 3; + description + "Match only packet with a lower port number"; + } + enum "not-equal" { + value 4; + description + "Match only packets not on a given port number"; + } + enum "range" { + value 5; + description + "Match only packets in the range of port numbers"; + } + } + description + "Ipv6 acl operator enum"; + } + + typedef Ipv6-acl-tcp-match-operator-enum { + type enumeration { + enum "match-all" { + value 1; + description + "Match only packet with all the given TCP bits"; + } + enum "match-any" { + value 3; + description + "Match only packet with any of the given TCP + bits"; + } + } + description + "Ipv6 acl tcp match operator enum"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper-sub1.yang new file mode 100644 index 000000000..c4c400415 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper-sub1.yang @@ -0,0 +1,935 @@ +submodule Cisco-IOS-XR-ipv6-acl-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-acl-oper { + prefix Cisco-IOS-XR-ipv6-acl-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-acl package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-10 { + description + "Added fields in the bag for byte stats. + 2022-07-08 + 7.5.4 revision. Added dscp-bitmask feature + 2022-05-23 + Added new field for hardware stats for telemetry. + 2021-11-23 + Added icmp-on feature. + 2021-09-14 + Changing vrf name size macro from 32 to 33.CSCve72799"; + semver:module-version "1.3.0"; + } + revision 2021-03-05 { + description + "Adding a new policer stats field.CSCvx54997."; + semver:module-version "1.2.0"; + } + revision 2020-11-13 { + description + "Adding policer and priority. IosSetYangSchemaRev Cisco-IOS-XR-ipv6-acl-oper"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Acl-priority { + type enumeration { + enum "low" { + value 0; + description + "low"; + } + enum "medium" { + value 1; + description + "medium"; + } + enum "high" { + value 2; + description + "high"; + } + enum "critical" { + value 3; + description + "critical"; + } + enum "invalid" { + value 4; + description + "invalid"; + } + enum "acl-priority-unspec" { + value 255; + description + "unspec"; + } + } + description + "Acl priority"; + } + + typedef Bag-acl-rate-unit { + type enumeration { + enum "pps" { + description + "pps"; + } + enum "bps" { + description + "bps"; + } + enum "kbps" { + description + "kbps"; + } + enum "mbps" { + description + "mbps"; + } + enum "gbps" { + description + "gbps"; + } + enum "unit-max" { + description + "unit max"; + } + } + description + "Bag acl rate unit"; + } + + typedef Bag-acl-nh-at-status { + type enumeration { + enum "unknown" { + description + "AT State Unknown"; + } + enum "up" { + description + "AT State UP"; + } + enum "down" { + description + "AT State DOWN"; + } + enum "not-present" { + description + "AT State Not Present"; + } + enum "max" { + description + "invalid status"; + } + } + description + "Bag acl nh at status"; + } + + typedef Bag-acl-nh-status { + type enumeration { + enum "not-present" { + description + "State Not Present"; + } + enum "unknown" { + description + "State Unknown"; + } + enum "down" { + description + "State DOWN"; + } + enum "up" { + description + "State UP"; + } + enum "max" { + description + "invalid status"; + } + } + description + "Bag acl nh status"; + } + + typedef Bag-acl-nh { + type enumeration { + enum "nexthop-none" { + description + "Next Hop None"; + } + enum "nexthop-default" { + description + "Nexthop Default"; + } + enum "nexthop" { + description + "Nexthop"; + } + } + description + "Bag acl nh"; + } + + typedef Acl-ttl-operator { + type Acl-port-operator; + description + "Acl ttl operator"; + } + + typedef Acl-plen-operator { + type Acl-port-operator; + description + "Acl plen operator"; + } + + typedef Acl-tcpflags-operator { + type enumeration { + enum "match-none" { + description + "Match None"; + } + enum "match-all" { + description + "Match All"; + } + enum "match-any-old" { + description + "Match any old"; + } + enum "match-any" { + description + "Match any"; + } + } + description + "Acl tcpflags operator"; + } + + typedef Acl-log { + type enumeration { + enum "log-none" { + value 0; + description + "Log None"; + } + enum "log" { + value 1; + description + "Log Regular"; + } + enum "log-input" { + value 2; + description + "Log Input"; + } + } + description + "Acl log"; + } + + typedef Acl-proto-operator { + type Acl-port-operator; + description + "Acl proto operator"; + } + + typedef Acl-port-operator { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "eq" { + value 1; + description + "Equal"; + } + enum "gt" { + value 2; + description + "Greater than"; + } + enum "lt" { + value 3; + description + "Less than"; + } + enum "neq" { + value 4; + description + "Not Equal"; + } + enum "range" { + value 5; + description + "Range"; + } + enum "onebyte" { + value 8; + description + "One Byte"; + } + enum "twobytes" { + value 9; + description + "Two Bytes"; + } + } + description + "Acl port operator"; + } + + typedef Acl-action { + type enumeration { + enum "deny" { + value 0; + description + "Deny"; + } + enum "permit" { + value 1; + description + "Permit"; + } + enum "encrypt" { + value 2; + description + "Encrypt"; + } + enum "bypass" { + value 3; + description + "Bypass"; + } + enum "fallthrough" { + value 4; + description + "Fallthrough"; + } + enum "invalid" { + value 5; + description + "Invalid"; + } + } + description + "Acl action"; + } + + typedef Acl-ace1 { + type enumeration { + enum "normal" { + description + "This is Normal ACE"; + } + enum "remark" { + description + "This is Remark ACE"; + } + enum "abf" { + description + "This is ABF ACE"; + } + } + description + "ACE Types"; + } + + typedef Acl-ace { + type Acl-ace1; + description + "ACE Types"; + } + + grouping IPV6-ACL-EDM-OOR-DETAIL { + description + "Oor deatil config BAG"; + leaf is-default-maximum-configurable-ac-ls { + type uint32; + description + "default max configurable acls"; + } + leaf is-default-maximum-configurable-ac-es { + type uint32; + description + "default max configurable aces"; + } + leaf is-current-configured-ac-ls { + type uint32; + description + "Current configured acls"; + } + leaf is-current-configured-aces { + type uint32; + description + "Current configured aces"; + } + leaf is-current-maximum-configurable-acls { + type uint32; + description + "Current max configurable acls"; + } + leaf is-current-maximum-configurable-aces { + type uint32; + description + "Current max configurable aces"; + } + leaf is-maximum-configurable-ac-ls { + type uint32; + description + "max configurable acls"; + } + leaf is-maximum-configurable-ac-es { + type uint32; + description + "max configurable aces"; + } + } + + grouping ACL-POLICE-ACE { + description + "ACL POLICE ACE"; + leaf police-value { + type uint32; + description + "Police value"; + } + leaf police-unit { + type Bag-acl-rate-unit; + description + "Police unit"; + } + leaf police-peak-value { + type uint32; + description + "Police peak value"; + } + leaf police-peak-unit { + type Bag-acl-rate-unit; + description + "Police peak unit"; + } + } + + grouping ACL-UDF-ACE { + description + "ACL UDF ACE"; + leaf udf-name { + type string { + length "0..17"; + } + description + "UDF Name"; + } + leaf udf-value { + type uint32; + description + "UDF Value"; + } + leaf udf-mask { + type uint32; + description + "UDF Mask"; + } + } + + grouping IPV6-ACL-BAG-HW-NH-INFO { + description + "HW_NH_Info structure"; + leaf type { + type Bag-acl-nh; + description + "The next-hop type"; + } + leaf next-hop { + type inet:ipv6-address; + description + "The Next Hop"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf vrf-name { + type string { + length "0..32"; + } + description + "Vrf Name"; + } + } + + grouping IPV6-ACL-BAG-NH-INFO { + description + "NH_Info structure"; + leaf next-hop { + type inet:ipv6-address; + description + "The next hop"; + } + leaf vrf-name { + type string { + length "0..32"; + } + description + "Vrf Name"; + } + leaf track-name { + type string { + length "0..33"; + } + description + "Track name"; + } + leaf status { + type Bag-acl-nh-status; + description + "The next hop status"; + } + leaf at-status { + type Bag-acl-nh-at-status; + description + "The next hop at status"; + } + leaf acl-nh-exist { + type int32; + description + "The nexthop exist"; + } + } + + grouping IPV6-ACL-EDM-ACE { + description + "ACLE bag"; + container hw-next-hop-info { + description + "HW Next hop info"; + uses IPV6-ACL-BAG-HW-NH-INFO; + } + container police { + description + "Police"; + uses ACL-POLICE-ACE; + } + leaf is-ace-type { + type Acl-ace; + description + "ACE type (acl, remark)"; + } + leaf is-ace-sequence-number { + type uint32; + description + "ACLE sequence number"; + } + leaf is-packet-allow-or-deny { + type Acl-action; + description + "Grant value permit/deny "; + } + leaf is-protocol-operator { + type Acl-proto-operator; + description + "Protocol operator"; + } + leaf is-ipv6-protocol-type { + type int32; + description + "Protocol 1"; + } + leaf is-ipv6-protocol2-type { + type int32; + description + "Protocol 2"; + } + leaf is-source-address-in-numbers { + type inet:ipv6-address; + description + "IsSourceAddressInNumbers"; + } + leaf is-source-address-prefix-length { + type uint32; + description + "IsSourceAddressPrefixLength"; + } + leaf source-mask { + type inet:ipv6-address; + description + "Source Mask"; + } + leaf is-destination-address-in-numbers { + type inet:ipv6-address; + description + "IsDestinationAddressInNumbers"; + } + leaf is-destination-address-prefix-length { + type uint32; + description + "IsDestinationAddressPrefixLength"; + } + leaf destination-mask { + type inet:ipv6-address; + description + "Destination Mask"; + } + leaf is-source-operator { + type Acl-port-operator; + description + "eq, ne, lt, etc..."; + } + leaf is-source-port1 { + type uint32; + description + "IsSourcePort1"; + } + leaf is-source-port2 { + type uint32; + description + "IsSourcePort2"; + } + leaf is-destination-operator { + type Acl-port-operator; + description + "eq, ne, lt, etc..."; + } + leaf is-destination-port1 { + type uint32; + description + "IsDestinationPort1"; + } + leaf is-destination-port2 { + type uint32; + description + "IsDestinationPort2"; + } + leaf is-log-option { + type Acl-log; + description + "IsLogOption"; + } + leaf counter-name { + type string; + description + "Counter name"; + } + leaf is-tcp-bits-operator { + type Acl-tcpflags-operator; + description + "IsTCPBitsOperator"; + } + leaf is-tcp-bits { + type uint32; + description + "IsTCPBits"; + } + leaf is-tcp-bits-mask { + type uint32; + description + "IsTCPBitsMask"; + } + leaf is-dscp-present { + type int32; + description + "IsDSCPPresent"; + } + leaf dscp-operator { + type uint8; + description + "DSCP Operator"; + } + leaf is-dscp-valu { + type uint8; + description + "IsDSCPValu"; + } + leaf is-dscp-valu2 { + type uint8; + description + "IsDSCPValu2"; + } + leaf dscp-bitmask { + type uint8; + description + "DSCP Bitmask"; + } + leaf is-precedence-present { + type int32; + description + "IsPrecedencePresent"; + } + leaf is-precedence-value { + type uint32; + description + "range from 0 to 7"; + } + leaf is-header-matches { + type uint32; + description + "Match if routing header is presant"; + } + leaf is-packet-length-operator { + type Acl-plen-operator; + description + "Match if routing header is presant"; + } + leaf is-packet-length-start { + type uint32; + description + "IsPacketLengthStart"; + } + leaf is-packet-length-end { + type uint32; + description + "IsPacketLengthEnd"; + } + leaf is-time-to-live-operator { + type Acl-ttl-operator; + description + "IsTimeToLiveOperator"; + } + leaf is-time-to-live-start { + type uint32; + description + "IsTimeToLiveStart"; + } + leaf is-time-to-live-end { + type uint32; + description + "IsTimeToLiveEnd"; + } + leaf no-stats { + type int32; + description + "no stats"; + } + leaf hits { + type uint64; + description + "Slow Path stats"; + } + leaf hardware-hits { + type uint64; + description + "hardware stats used during telemetry"; + } + leaf police-hits { + type uint64; + description + "Police stats"; + } + leaf police-hits-dropped { + type uint64; + description + "Police stats dropped"; + } + leaf byte-hits { + type uint64; + description + "Byte stats"; + } + leaf byte-police-hits { + type uint64; + description + "Police Byte stats"; + } + leaf byte-police-hits-dropped { + type uint64; + description + "Police byte stats dropped"; + } + leaf capture { + type int32; + description + "Capture option, TRUE if enabled"; + } + leaf undetermined-transport { + type int32; + description + "Undetermined transport option, TRUE if enabled"; + } + leaf is-icmp-message-off { + type int32; + description + "Don't generate the icmp message"; + } + leaf qos-group { + type uint16; + description + "Set qos-group"; + } + leaf is-comment-for-entry { + type string; + description + "IsCommentForEntry"; + } + leaf next-hop-type { + type Bag-acl-nh; + description + "Next hop type"; + } + leaf is-flow-id { + type uint32; + description + "IsFlowId"; + } + leaf source-prefix-group { + type string; + description + "Source prefix object-group"; + } + leaf destination-prefix-group { + type string; + description + "Destination prefix object-group"; + } + leaf source-port-group { + type string; + description + "Source port object-group"; + } + leaf destination-port-group { + type string; + description + "Destination port object-group"; + } + leaf acl-name { + type string; + description + "ACL Name"; + } + leaf sequence-str { + type string; + description + "Sequence String"; + } + leaf set-ttl { + type uint16; + description + "SetTTL"; + } + leaf priority { + type Acl-priority; + description + "Priority"; + } + leaf fragment-flags { + type uint8; + description + "Fragment flags"; + } + leaf is-icmp-message-on { + type int32; + description + "Generate the icmp message"; + } + list next-hop-info { + max-elements "3"; + description + "Next hop info"; + uses IPV6-ACL-BAG-NH-INFO; + } + list udf { + description + "UDF"; + uses ACL-UDF-ACE; + } + } + + grouping IPV6-PFX-EDM-ACE { + description + "Prefix list entry BAG"; + leaf is-ace-type { + type Acl-ace; + description + "ACE type (acl, remark)"; + } + leaf is-ace-sequence-number { + type uint32; + description + "ACLE sequence number"; + } + leaf is-packet-allow-or-deny { + type Acl-action; + description + "Grant value permit/deny "; + } + leaf is-address-in-numbers { + type inet:ipv6-address; + description + "IPv6 prefix"; + } + leaf is-address-mask-length { + type uint32; + description + "Prefix length "; + } + leaf is-length-operator { + type Acl-port-operator; + description + "Port Operator"; + } + leaf is-packet-minimum-length { + type uint32; + description + "Min length"; + } + leaf is-packet-maximum-length { + type uint32; + description + "Maximum length"; + } + leaf hits { + type uint32; + description + "Number of hits"; + } + leaf is-comment-for-entry { + type string; + description + "Remark String"; + } + leaf acl-name { + type string; + description + "ACL Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper.yang new file mode 100644 index 000000000..b2fed2727 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-acl-oper.yang @@ -0,0 +1,243 @@ +module Cisco-IOS-XR-ipv6-acl-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-acl-oper"; + prefix ipv6-acl-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-common-acl-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ipv6-acl-datatypes { + prefix dt2; + } + include Cisco-IOS-XR-ipv6-acl-oper-sub1 { + revision-date 2022-08-10; + } + + 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 ipv6-acl package operational data. + + This module contains definitions + for the following management objects: + ipv6-acl-and-prefix-list: Root class of IPv6 Oper schema tree + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-10 { + description + "Added fields in the bag for byte stats. + 2022-07-08 + 7.5.4 revision. Added dscp-bitmask feature + 2022-05-23 + Added new field for hardware stats for telemetry. + 2021-11-23 + Added icmp-on feature. + 2021-09-14 + Changing vrf name size macro from 32 to 33.CSCve72799"; + semver:module-version "1.3.0"; + } + revision 2021-03-05 { + description + "Adding a new policer stats field.CSCvx54997."; + semver:module-version "1.2.0"; + } + revision 2020-11-13 { + description + "Adding policer and priority. IosSetYangSchemaRev Cisco-IOS-XR-ipv6-acl-oper"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv6-acl-and-prefix-list { + config false; + description + "Root class of IPv6 Oper schema tree"; + container access-list-manager { + description + "AccessListManager containing ACLs and prefix + lists"; + container prefixes { + description + "Table of prefix lists"; + list prefix { + key "prefix-list-name"; + description + "Name of the prefix list"; + container prefix-list-sequences { + description + "Table of all the SequenceNumbers per prefix + list"; + list prefix-list-sequence { + key "sequence-number"; + description + "Sequence Number of a prefix list entry"; + leaf sequence-number { + type dt1:Acl-sequence-number-range; + description + "Sequence Number of the prefix list entry"; + } + uses IPV6-PFX-EDM-ACE; + } + } + leaf prefix-list-name { + type dt2:Ipv6-acl-prefix-list-name; + description + "Name of the prefix list"; + } + } + } + container usages { + description + "Table of Usage statistics of ACLs at different + nodes"; + list usage { + description + "Usage statistics of an ACL at a node"; + leaf node-name { + type xr:Node-id; + description + "Node where ACL is applied"; + } + leaf application-id { + type dt1:Acl-usage-app-id-enum; + description + "Application ID"; + } + leaf access-list-name { + type dt2:Ipv6-acl-prefix-list-name; + description + "Name of the ACL"; + } + leaf usage-details { + type string; + mandatory true; + description + "Usage Statistics Details"; + } + } + } + container accesses { + description + "ACL class displaying Usage and Entries"; + list access { + key "access-list-name"; + description + "Name of the Access List"; + container access-list-sequences { + description + "Table of all the sequence numbers per ACL"; + list access-list-sequence { + key "sequence-number"; + description + "Sequence number of an ACL entry"; + leaf sequence-number { + type dt1:Acl-sequence-number-range; + description + "ACL entry sequence number"; + } + uses IPV6-ACL-EDM-ACE; + } + } + leaf access-list-name { + type dt2:Ipv6-acl-prefix-list-name; + description + "Name of the Access List"; + } + } + } + } + container oor { + description + "Out Of Resources, Limits to the resources + allocatable"; + container details { + description + "Details of the overall out of resource limit"; + uses IPV6-ACL-EDM-OOR-DETAIL; + } + container prefix-list-summary { + description + "Summary of the prefix Lists resource + utilization"; + container details { + description + "Summary Detail of the prefix list Resource + Utilisation"; + uses IPV6-ACL-EDM-OOR-DETAIL; + } + } + container oor-accesses { + description + "Resource occupation details for ACLs"; + list oor-access { + key "access-list-name"; + description + "Resource occupation details for a particular + ACL"; + leaf access-list-name { + type dt2:Ipv6-acl-prefix-list-name; + description + "Name of the Access List"; + } + uses IPV6-ACL-EDM-OOR-DETAIL; + } + } + container oor-prefixes { + description + "Resource occupation details for prefix lists"; + list oor-prefix { + key "prefix-list-name"; + description + "Resource occupation details for a particular + prefix list"; + leaf prefix-list-name { + type dt2:Ipv6-acl-prefix-list-name; + description + "Name of a prefix list"; + } + uses IPV6-ACL-EDM-OOR-DETAIL; + } + } + container access-list-summary { + description + "Resource Limits pertaining to ACLs only"; + container details { + description + "Details containing the resource limits of the + ACLs"; + uses IPV6-ACL-EDM-OOR-DETAIL; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-cfg.yang new file mode 100644 index 000000000..3dd4fdde9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-cfg.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-ipv6-io-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-io-cfg"; + prefix ipv6-io-cfg; + + 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 ipv6-io package configuration. + + This module contains definitions + for the following management objects: + ipv6-configuration: IPv6 Configuration Data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-05-10 { + description + "Added top container."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv6-configuration { + description + "IPv6 Configuration Data"; + container ipv6-assembler { + description + "IPv6 fragmented packet assembler"; + leaf timeout { + type uint32 { + range "1..120"; + } + units "second"; + description + "Number of seconds an assembly queue will hold + before timeout"; + } + leaf max-packets { + type uint32 { + range "1..50"; + } + units "percentage"; + description + "Maxinum packets allowed in assembly queues (in + percent)"; + } + } + container ipv6icmp { + presence "Indicates a ipv6icmp node is configured."; + description + "Configure IPv6 ICMP parameters"; + leaf error-interval { + type uint32 { + range "0..2147483647"; + } + units "millisecond"; + mandatory true; + description + "Interval between tokens in milliseconds"; + } + leaf bucket-size { + type uint32 { + range "1..200"; + } + mandatory true; + description + "Bucket size"; + } + } + leaf ipv6-pmtu-time-out { + type uint32 { + range "1..15"; + } + units "minute"; + description + "Configure IPv6 Path MTU timeout value in minutes"; + } + leaf ipv6-source-route { + type boolean; + default "true"; + description + "TRUE if enabled, FALSE if disabled"; + } + leaf ipv6-pmtu-enable { + type boolean; + default "false"; + description + "TRUE if enabled, FALSE if disabled"; + } + leaf ipv6-hop-limit { + type uint32 { + range "1..255"; + } + description + "Configure IPv6 hop count limit"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper-sub1.yang new file mode 100644 index 000000000..528764189 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper-sub1.yang @@ -0,0 +1,536 @@ +submodule Cisco-IOS-XR-ipv6-io-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-io-oper { + prefix Cisco-IOS-XR-ipv6-io-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-io package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-21 { + description + "Added List of VRF IDs for path-mtu cache."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + revision 2015-08-27 { + description + "IOS XR 6.0.0 revision."; + } + + grouping IPV6-PMTU-CACHE { + description + "PMTU Cache"; + leaf interface-handle { + type uint32; + description + "Interface name"; + } + leaf address { + type inet:ipv6-address; + description + "IPv6 Address of Destination"; + } + leaf vrf-name { + type string { + length "0..32"; + } + description + "VRF NAME"; + } + leaf pmtu { + type uint32; + description + "Pmtu value"; + } + leaf age { + type uint64; + description + "Time remaining for this entry"; + } + } + + grouping IPV6-PMTU-CACHE-LIST { + description + "IPv6 PMTU Cache Information"; + list pmtu-cache { + description + "Pmtu Cache list"; + uses IPV6-PMTU-CACHE; + } + } + + grouping IPV6-ND-TRAFFIC { + description + "IPV6 ND Traffic"; + leaf sent-router-solicitation-messages { + type uint32; + description + "ICMP Router Solicitations Sent"; + } + leaf sent-router-advertisement-messages { + type uint32; + description + "ICMP Router Advertisements Sent"; + } + leaf sent-neighbor-solicitation-messages { + type uint32; + description + "ICMP Neighbor Solicitations Sent"; + } + leaf sent-neighbor-advertisement-messages { + type uint32; + description + "ICMP Neighbor Advertisements Sent"; + } + leaf sent-redirect-messages { + type uint32; + description + "ICMP Redirect Sent"; + } + leaf received-router-solicitation-messages { + type uint32; + description + "ICMP Router Solicitations Received"; + } + leaf received-router-advertisement-messages { + type uint32; + description + "ICMP Router Advertisements Received"; + } + leaf received-neighbor-solicitation-messages { + type uint32; + description + "ICMP Neighbor Solicitations Received"; + } + leaf received-neighbor-advertisement-messages { + type uint32; + description + "ICMP Neighbor Advertisements Received"; + } + leaf received-redirect-messages { + type uint32; + description + "ICMP Redirect Received"; + } + } + + grouping IPV6-IO-ICMP-TRAFFIC { + description + "ICMPv6 Traffic Information"; + leaf total-messages { + type uint32; + description + "ICMP Received"; + } + leaf too-short-error-messages { + type uint32; + description + "ICMP Too Short Errors"; + } + leaf checksum-error-messages { + type uint32; + description + "ICMP Checksum Errors"; + } + leaf unknown-error-type-messages { + type uint32; + description + "ICMP Unknown Error"; + } + leaf output-messages { + type uint32; + description + "ICMP Transmitted"; + } + leaf sent-rate-limited-packets { + type uint32; + description + "ICMP Sent Packets Ratelimited"; + } + leaf sent-unreachable-routing-messages { + type uint32; + description + "ICMP Route Unreachable Sent"; + } + leaf sent-unreachable-admin-messages { + type uint32; + description + "ICMP Admin Unreachable Sent"; + } + leaf sent-unreachable-neighbor-messages { + type uint32; + description + "ICMP Host Unreachable Sent"; + } + leaf sent-unreachable-address-messages { + type uint32; + description + "ICMP Addr Unreachable Sent"; + } + leaf sent-unreachable-port-messages { + type uint32; + description + "ICMP Port Unreachable Sent"; + } + leaf received-unreachable-routing-messages { + type uint32; + description + "ICMP Route Unreachable Received"; + } + leaf received-unreachable-admin-messages { + type uint32; + description + "ICMP Admin Unreachable Received"; + } + leaf received-unreachable-neighbor-messages { + type uint32; + description + "ICMP Host Unreachable Received"; + } + leaf received-unreachable-address-messages { + type uint32; + description + "ICMP Addr Unreachable Received"; + } + leaf received-unreachable-port-messages { + type uint32; + description + "ICMP Port Unreachable Received"; + } + leaf sent-hop-count-expired-messages { + type uint32; + description + "ICMP Hop Count Expired Sent"; + } + leaf sent-reassembly-timeouts { + type uint32; + description + "ICMP Reassembly Timeouts"; + } + leaf received-hop-count-expired-messages { + type uint32; + description + "ICMP Hop Count Expired Received"; + } + leaf received-reassembly-timeouts { + type uint32; + description + "ICMP Reassembly Timeouts"; + } + leaf sent-too-big-messages { + type uint32; + description + "ICMP Too Big Messages Sent"; + } + leaf received-too-big-messages { + type uint32; + description + "ICMP Too Big Messages Received"; + } + leaf sent-parameter-error-messages { + type uint32; + description + "ICMP Parameter Error Messages Sent"; + } + leaf sent-parameter-header-messages { + type uint32; + description + "ICMP Parameter Next Header Messages Sent"; + } + leaf sent-parameter-option-messages { + type uint32; + description + "ICMP Parameter Option Messages Sent"; + } + leaf received-parameter-error-messages { + type uint32; + description + "ICMP Parameter Error Messages Received"; + } + leaf received-parameter-header-messages { + type uint32; + description + "ICMP Parameter Next Header Messages Received"; + } + leaf received-parameter-option-messages { + type uint32; + description + "ICMP Parameter Option Problem Received"; + } + leaf sent-echo-request-messages { + type uint32; + description + "ICMP Echo Request Sent"; + } + leaf sent-echo-reply-messages { + type uint32; + description + "ICMP Echo Reply Sent"; + } + leaf received-echo-request-messages { + type uint32; + description + "ICMP Echo Request Received"; + } + leaf received-echo-reply-messages { + type uint32; + description + "ICMP Echo Reply Received"; + } + leaf sent-unknown-timeout-messages { + type uint32; + description + "ICMP Unknown Timeout Messages Sent"; + } + leaf received-unknown-timeout-messages { + type uint32; + description + "ICMP Unknown Timeout Messages Received"; + } + leaf sent-parameter-unknown-type-messages { + type uint32; + description + "ICMP Parameter Unknown Type Messages Sent"; + } + leaf received-parameter-unknown-type-messages { + type uint32; + description + "ICMP Parameter Unknown Type Messages Received"; + } + leaf sent-unreachable-unknown-type-messages { + type uint32; + description + "ICMP Unreachable Unknown Messages Sent"; + } + leaf received-unreachable-unknown-type-messages { + type uint32; + description + "ICMP Unreachable Unknown Messages Received"; + } + } + + grouping IPV6-IO-TRAFFIC { + description + "IPv6 Traffic Information"; + leaf total-packets { + type uint32; + description + "Total number of IPv6 input Packets"; + } + leaf local-destination-packets { + type uint32; + description + "Number of Local IPv6 Destination Packets"; + } + leaf format-errors { + type uint32; + description + "Number of IPv6 Format Errors"; + } + leaf truncated-packets { + type uint32; + description + "Number of Truncated IPv6 Packets"; + } + leaf hop-count-exceeded-packets { + type uint32; + description + "Number of IPv6 Hop Count Exceeded Packets"; + } + leaf bad-source-address-packets { + type uint32; + description + "Number of IPv6 Bad Source Address Packets"; + } + leaf bad-header-packets { + type uint32; + description + "Number of IPv6 Bad Header Packets"; + } + leaf unknown-option-type-packets { + type uint32; + description + "Number of IPv6 Unknown Option Type Packets"; + } + leaf unknown-protocol-packets { + type uint32; + description + "Number of IPv6 Unknown Protocol Packets"; + } + leaf fragments { + type uint32; + description + "Number of IPv6 Packets to be Fragmented"; + } + leaf reassembled-packets { + type uint32; + description + "Number of IPv6 Reassembled Packets"; + } + leaf reassembly-timeouts { + type uint32; + description + "Number of IPv6 Reassembly Timedout packets"; + } + leaf reassembly-failures { + type uint32; + description + "Number of IPv6 Reassembly Failures"; + } + leaf reassembly-maximum-drops { + type uint32; + description + "Reassembly Reach Maximum Drop"; + } + leaf overlap-frag-drops { + type uint32; + description + "Reassembly drop overlap frags"; + } + leaf generated-packets { + type uint32; + description + "Packets Output"; + } + leaf forwarded-packets { + type uint32; + description + "Packets Forwarded"; + } + leaf source-routed-packets { + type uint32; + description + "Packets Source Routed"; + } + leaf fragmented-packets { + type uint32; + description + "Packets Fragmented"; + } + leaf fragment-count { + type uint32; + description + "Fragmented Packet Count"; + } + leaf fragment-failures { + type uint32; + description + "Number of IPv6 Fragment Packet Failures"; + } + leaf no-route-packets { + type uint32; + description + "Number of No Route IPv6 Packets"; + } + leaf too-big-packets { + type uint32; + description + "Packet Too Big"; + } + leaf received-multicast-packets { + type uint32; + description + "Multicast In"; + } + leaf sent-multicast-packets { + type uint32; + description + "Multicast Out"; + } + leaf miscellaneous-drops { + type uint32; + description + "Misc. drops"; + } + leaf lisp-v4-encap-packets { + type uint32; + description + "Locator ID Separation Protocol IPv4 Encapped + packets"; + } + leaf lisp-v4-decap-packets { + type uint32; + description + "Locator ID Separation Protocol IPv4 Decapped + packets"; + } + leaf lisp-v6-encap-packets { + type uint32; + description + "Locator ID Separation Protocol IPv6 Encapped + packets"; + } + leaf lisp-v6-decap-packets { + type uint32; + description + "Locator ID Separation Protocol IPv6 Decapped + packets"; + } + leaf lisp-encap-errors { + type uint32; + description + "Locator ID Separation Protocol Encap errors"; + } + leaf lisp-decap-errors { + type uint32; + description + "Locator ID Separation Protocol Decap errors"; + } + leaf io-puntback { + type uint32; + description + "IPv6 IO Puntback"; + } + } + + grouping IPV6-TRAFFIC { + description + "IPv6 and ICMPv6 Traffic Information"; + container ipv6 { + description + "IPv6 Statistics"; + uses IPV6-IO-TRAFFIC; + } + container icmp { + description + "ICMP Statistics"; + uses IPV6-IO-ICMP-TRAFFIC; + } + container ipv6-node-discovery { + description + "IPv6 Node Discovery Statistics"; + uses IPV6-ND-TRAFFIC; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper.yang new file mode 100644 index 000000000..1d227a051 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-io-oper.yang @@ -0,0 +1,106 @@ +module Cisco-IOS-XR-ipv6-io-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-io-oper"; + prefix ipv6-io-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv6-io-oper-sub1 { + revision-date 2019-10-21; + } + + 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 ipv6-io package operational data. + + This module contains definitions + for the following management objects: + ipv6-io: IPv6 IO Operational Data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-21 { + description + "Added List of VRF IDs for path-mtu cache."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + revision 2015-08-27 { + description + "IOS XR 6.0.0 revision."; + } + + container ipv6-io { + config false; + description + "IPv6 IO Operational Data"; + container nodes { + description + "Node-specific IPv6 IO operational data"; + list node { + key "node-name"; + description + "IPv6 network operational data for a particular + node"; + container statistics { + description + "Statistical IPv6 network operational data for + a node"; + container traffic { + description + "Traffic statistics for a node"; + uses IPV6-TRAFFIC; + } + } + container vrfs { + description + "VRF specific IPv6 IO operational data"; + list vrf { + key "vrf-name"; + description + "VRF name of an IPV6 interface"; + container path-mtu-cache { + description + "IPv6 PMTU Cache Information"; + uses IPV6-PMTU-CACHE-LIST; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The VRF name"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-cfg.yang new file mode 100644 index 000000000..a8cecdb75 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-cfg.yang @@ -0,0 +1,426 @@ +module Cisco-IOS-XR-ipv6-ma-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-ma-cfg"; + prefix ipv6-ma-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ip-iarm-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ipv6-ma package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-25 { + description + "Enabled DHCP client support on physical interface."; + semver:module-version "3.1.0"; + } + revision 2021-09-15 { + description + "Removed POC nodes for Srv6 SegmentRouting PrefixSid."; + semver:module-version "3.0.0"; + } + revision 2021-01-29 { + description + "Removed Yang support for mcast-mac-filter."; + semver:module-version "2.1.0"; + } + revision 2020-02-18 { + description + "Added new leaf icmp-unreach-disable. + 2019-12-12 + New leaf node added."; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-03-03 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Ipv6-self-ping { + type enumeration { + enum "disabled" { + value 0; + description + "Doesn't allow router to ping itself"; + } + enum "enabled" { + value 1; + description + "Allow router to ping itself"; + } + } + description + "Ipv6 self ping"; + } + + typedef Ipv6-reachable { + type enumeration { + enum "any" { + value 0; + description + "Source is reachable via any interface"; + } + enum "received" { + value 1; + description + "Source is reachable via interface on which + packet was received"; + } + } + description + "Ipv6 reachable"; + } + + typedef Ipv6-default-ping { + type enumeration { + enum "disabled" { + value 0; + description + "Default route is not allowed to match when + checking source address"; + } + enum "enabled" { + value 1; + description + "Allow default route to match when checking + source address"; + } + } + description + "Ipv6 default ping"; + } + + typedef Ipv6-qppb { + type enumeration { + enum "none" { + value 0; + description + "No QPPB configuration"; + } + enum "ip-precedence" { + value 1; + description + "Enable ip-precedence based QPPB"; + } + enum "qos-group" { + value 2; + description + "Enable qos-group based QPPB"; + } + enum "both" { + value 3; + description + "Enable both ip-precedence and qos-group based + QPPB"; + } + } + description + "Ipv6 qppb"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv6-network { + description + "Interface IPv6 Network configuration data"; + container bgp-qos-policy-propagation { + presence "Indicates a bgp-qos-policy-propagation node is configured."; + description + "Configure BGP QoS policy propagation"; + leaf source { + type Ipv6-qppb; + mandatory true; + description + "QPPB configuration on source"; + } + leaf destination { + type Ipv6-qppb; + mandatory true; + description + "QPPB configuration on destination"; + } + } + container bgp-policy-accountings { + description + "IPv6 BGP Policy Accounting"; + list bgp-policy-accounting { + key "direction"; + description + "Accounting input or output"; + leaf direction { + type xr:Cisco-ios-xr-string; + description + "Accouting on input or output"; + } + leaf destination-accounting { + type boolean; + mandatory true; + description + "Accounting on Destination IP Address"; + } + leaf source-accounting { + type boolean; + mandatory true; + description + "Accounting on Source IP Address"; + } + } + } + container verify { + presence "Indicates a verify node is configured."; + description + "IPv6 Verify Unicast Souce Reachable"; + leaf reachable { + type Ipv6-reachable; + mandatory true; + description + "Source Reachable Interface"; + } + leaf self-ping { + type Ipv6-self-ping; + mandatory true; + description + "Allow Self Ping"; + } + leaf default-ping { + type Ipv6-default-ping; + mandatory true; + description + "Allow Default Route"; + } + } + container addresses { + description + "Set the IPv6 address of an interface"; + container link-local-address { + presence "Indicates a link-local-address node is configured."; + description + "Link local IPv6 address"; + leaf address { + type inet:ip-address-no-zone; + mandatory true; + description + "IPv6 address"; + } + leaf zone { + type string; + mandatory true; + description + "IPv6 address zone"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "RouteTag"; + } + } + container eui64-addresses { + description + "EUI-64 IPv6 address Table"; + list eui64-address { + key "address"; + description + "EUI-64 IPv6 address"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv6 address"; + } + leaf prefix-length { + type dt1:Ipv6arm-prefix-length; + mandatory true; + description + "Prefix Length"; + } + leaf zone { + type string; + mandatory true; + description + "IPv6 address zone"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "RouteTag"; + } + leaf algorithm { + type uint32 { + range "128..255"; + } + description + "Algorithm"; + } + } + } + container regular-addresses { + description + "Regular IPv6 address Table"; + list regular-address { + key "address"; + description + "Regular IPv6 address"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv6 address"; + } + leaf prefix-length { + type dt1:Ipv6arm-prefix-length; + mandatory true; + description + "Prefix Length"; + } + leaf zone { + type string; + mandatory true; + description + "IPv6 address zone"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "RouteTag"; + } + leaf algorithm { + type uint32 { + range "128..255"; + } + description + "Algorithm"; + } + } + } + container auto-configuration { + description + "Auto IPv6 Interface Configuration"; + leaf enable { + type empty; + description + "The flag to enable auto ipv6 interface + configuration"; + } + leaf auto-config-slaac { + type empty; + description + "Enable slaac on Mgmt interface"; + } + } + leaf ipv6-dhcp-client-config { + type empty; + description + "Enable DHCPv6 Client"; + } + } + container bgp-flow-tag-policy-table { + description + "Interface ipv6 bgp policy propagation flowtag + configuration"; + container bgp-flow-tag-policy { + description + "Input"; + leaf source { + type boolean; + description + "Flow Tag configuration on source"; + } + leaf destination { + type boolean; + description + "Flow Tag configuration on destination"; + } + } + } + leaf mtu { + type uint32 { + range "1280..65535"; + } + description + "MTU Setting of Interface"; + } + leaf unnumbered { + type xr:Interface-name; + description + "Enable IPv6 processing without an explicit + address"; + } + leaf ttl-propagate-disable { + type empty; + description + "Disabled TTL propagate on an interface"; + } + leaf tcp-mss-adjust-enable { + type empty; + description + "Enable TCP MSS adjust on an interface"; + } + leaf icmp-unreach-disable { + type empty; + description + "Disable ICMP unreachable for Nullx interface"; + } + leaf unreachables { + type empty; + description + "Override Sending of ICMP Unreachable Messages"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper-sub1.yang new file mode 100644 index 000000000..82faecd86 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper-sub1.yang @@ -0,0 +1,614 @@ +submodule Cisco-IOS-XR-ipv6-ma-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-ma-oper { + prefix Cisco-IOS-XR-ipv6-ma-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-ma package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-17 { + description + "IPV6 MA added new fields."; + semver:module-version "1.3.0"; + } + revision 2020-09-03 { + description + "Removed event-telemetry annotation from leaves address and prefix-length of grouping IPV6-ADDR-NODE"; + semver:module-version "1.2.0"; + } + revision 2019-09-30 { + description + "Added brief and detail containers specific to interfaces."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2018-07-02 { + description + "IPV6 MA added new fields to bag."; + } + revision 2018-05-16 { + description + "IPV6 MA added new fields to bag."; + } + revision 2017-08-09 { + description + "IPV6 MA schema file has all the latest changes."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Str { + type string; + description + "Str"; + } + + typedef Ipv6-ma-oper-state { + type enumeration { + enum "oper-up" { + value 1; + description + "Interface oper state is up"; + } + enum "oper-down" { + value 2; + description + "Interface oper state is down"; + } + } + description + "Interface oper states"; + } + + typedef Ipv6-ma-if-addr-state { + type enumeration { + enum "active" { + value 1; + description + "This is an active address that can appear as + the destination or source address of a packet"; + } + enum "deprecated" { + value 2; + description + "This is a valid but deprecated address that + should no longer be used as a source address in + new communications"; + } + enum "duplicate" { + value 3; + description + "This is a duplicate (invalid) address because + of conflict"; + } + enum "inaccessible" { + value 4; + description + "This is not accessible because the interface to + which this address is assigned is not + operational"; + } + enum "tentative" { + value 5; + description + "Status can not be determined for some reason"; + } + } + description + "Interface address states"; + } + + typedef Ipv6-ma-if-line-state { + type enumeration { + enum "down" { + value 1; + description + "Interface state is down"; + } + enum "up" { + value 2; + description + "Interface state is up"; + } + enum "unknown" { + value 3; + description + "Interface state is unknown"; + } + enum "error" { + value 4; + description + "Interface state is incorrect"; + } + } + description + "Interface line states"; + } + + grouping IF-SUMMARY { + description + "Count of assigned/unnumbered interfaces"; + leaf ip-assigned { + type uint32; + description + "Number of interfaces with explicit addresses"; + } + leaf ip-unnumbered { + type uint32; + description + "Number of unnumbered interfaces with explicit + addresses"; + } + leaf ip-unassigned { + type uint32; + description + "Number of unassigned interfaces without explicit + address"; + } + } + + grouping IPV6-IF-SUMMARY { + description + "Summary info of IPv6 interfaces"; + container if-up-up { + description + "Number of interfaces (up,up)"; + uses IF-SUMMARY; + } + container if-up-down { + description + "Number of interfaces (up,down)"; + uses IF-SUMMARY; + } + container if-down-down { + description + "Number of interfaces (down,down)"; + uses IF-SUMMARY; + } + container if-shutdown-down { + description + "Number of interfaces (shutdown,down)"; + uses IF-SUMMARY; + } + leaf if-up-down-basecaps-up { + type uint32; + description + "Number of interfaces (up,down) with basecaps up"; + } + } + + grouping BGP-PA-DIR { + description + "BGP PA config for ingress/egress direction"; + leaf enable { + type uint32; + description + "Enable BGP PA for ingress/egress"; + } + leaf source { + type boolean; + description + "Enable source accouting"; + } + leaf destination { + type boolean; + description + "Enable destination accouting"; + } + } + + grouping BGP-PA-CONFIG { + description + "BGP PA config information"; + container input { + description + "BGP PA input config"; + uses BGP-PA-DIR; + } + container output { + description + "BGP PA output config"; + uses BGP-PA-DIR; + } + } + + grouping RPF-CONFIG { + description + "RPF config information"; + leaf enable { + type boolean; + description + "Enable RPF config"; + } + leaf allow-default-route { + type boolean; + description + "Flag to allow the default route"; + } + leaf allow-self-ping { + type boolean; + description + "Allow Self Ping"; + } + leaf mode { + type uint32; + description + "RPF Mode (loose/strict)"; + } + } + + grouping IPV6-MULTI-ACL-CONFIG { + description + "IPV6 MULTI ACL CONFIG"; + list inbound { + max-elements "5"; + description + "Inbound ACLs"; + leaf entry { + type Str; + description + "Inbound ACLs"; + } + } + list outbound { + max-elements "5"; + description + "Outbound ACLs"; + leaf entry { + type Str; + description + "Outbound ACLs"; + } + } + list common { + max-elements "5"; + description + "Common ACLs"; + leaf entry { + type Str; + description + "Common ACLs"; + } + } + } + + grouping IPV6-ACL-CONFIG { + description + "IPV6 ACL CONFIG"; + leaf in-bound { + type string; + description + "ACL applied to incoming packets"; + } + leaf out-bound { + type string; + description + "ACL applied to outgoing packets"; + } + leaf common-in-bound { + type string; + description + "Common ACL applied to incoming packets"; + } + leaf common-out-bound { + type string; + description + "Common ACL applied to outgoing packets"; + } + } + + grouping IPV6-MCAST-GROUP { + description + "MCast Group "; + leaf address { + type inet:ipv6-address; + description + "IPv6 Address of Multicast Group"; + } + } + + grouping IPV6-IF-DETAIL { + description + "Detailed Info of IPv6 Interface"; + container link-local-address { + description + "IPv6 Address which is local to link"; + uses IPV6-ADDR-NODE; + } + container access-control-list { + description + "IPv6 Access Control List"; + uses IPV6-ACL-CONFIG; + } + container multi-access-control-list { + description + "Multi IPv6 Access Control List"; + uses IPV6-MULTI-ACL-CONFIG; + } + container rpf { + description + "RPF config on the interface"; + uses RPF-CONFIG; + } + container bgp-pa { + description + "BGP PA config on the interface"; + uses BGP-PA-CONFIG; + } + leaf line-state { + type Ipv6-ma-if-line-state; + description + "State of Interface Line"; + } + leaf mtu { + type uint32; + description + "IPv6 MTU"; + } + leaf operation-state { + type Ipv6-ma-oper-state; + description + "IPv6 Operation State"; + } + leaf ipv6-config-flag { + type uint32; + description + "Interface Configured Flags"; + } + leaf ipv6-oper-flag { + type uint32; + description + "Interface Operational Flags"; + } + leaf vrf-name { + type string { + length "0..32"; + } + description + "VRF Name"; + } + leaf is-icmp-unreach-enabled { + type boolean; + description + "ICMP unreach Enable"; + } + leaf rg-id-exists { + type boolean; + description + "Does ICCP RG ID exist on the interface?"; + } + leaf mlacp-active { + type boolean; + description + "Is mLACP state Active (valid if RG ID exists)"; + } + leaf flow-tag-src { + type boolean; + description + "Is BGP Flow Tag Source is enable"; + } + leaf flow-tag-dst { + type boolean; + description + "Is BGP Flow Tag Destination is enable"; + } + leaf im-or-state-rcvd { + type Im-state-enum; + description + "Rcvd OR IM state type"; + } + leaf im-or-state-constraint { + type Im-state-enum; + description + "Rcvd OR IM state constraint type"; + } + leaf im-notified-state { + type Im-state-enum; + description + "Rcvd IM state"; + } + leaf idb-pointer { + type uint64; + description + "idb pointer value"; + } + list multicast-group { + description + "IPv6 Multicast Group"; + uses IPV6-MCAST-GROUP; + } + list address { + description + "Address List"; + uses IPV6-ADDR-NODE; + } + list client-multicast-group { + description + "IPv6 Client Multicast Group"; + uses IPV6-MCAST-GROUP; + } + } + + grouping IPV6-ADDR-NODE { + description + "List of IPv6 Addresses "; + leaf address { + type inet:ipv6-address; + description + "IPv6 Address"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length of IPv6 Address"; + } + leaf address-state { + type Ipv6-ma-if-addr-state; + description + "State of Address"; + } + leaf is-anycast { + type boolean; + description + "Anycast address"; + } + leaf route-tag { + type uint32; + description + "Route-tag of the Address"; + } + leaf algorithm { + type uint32; + description + "Algorithm of the Address"; + } + leaf arm-flags { + type uint32; + description + "Bitmap for ARM flags"; + } + } + + grouping IPV6-IF-BRIEF { + description + "Brief Summary of IPv6 Interface"; + container link-local-address { + description + "IPv6 Address which is local to link"; + uses IPV6-ADDR-NODE; + } + leaf line-state { + type Ipv6-ma-if-line-state; + description + "State of Interface Line"; + } + leaf vrf-name { + type string { + length "0..32"; + } + description + "VRF Name"; + } + list address { + description + "Address List"; + uses IPV6-ADDR-NODE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper.yang new file mode 100644 index 000000000..99c912fe8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-oper.yang @@ -0,0 +1,232 @@ +module Cisco-IOS-XR-ipv6-ma-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-ma-oper"; + prefix ipv6-ma-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv6-ma-oper-sub1 { + revision-date 2021-08-17; + } + + 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 ipv6-ma package operational data. + + This module contains definitions + for the following management objects: + ipv6-network: IPv6 network operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-17 { + description + "IPV6 MA added new fields."; + semver:module-version "1.3.0"; + } + revision 2020-09-03 { + description + "Removed event-telemetry annotation from leaves address and prefix-length of grouping IPV6-ADDR-NODE"; + semver:module-version "1.2.0"; + } + revision 2019-09-30 { + description + "Added brief and detail containers specific to interfaces."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2018-07-02 { + description + "IPV6 MA added new fields to bag."; + } + revision 2018-05-16 { + description + "IPV6 MA added new fields to bag."; + } + revision 2017-08-09 { + description + "IPV6 MA schema file has all the latest changes."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container ipv6-network { + config false; + description + "IPv6 network operational data"; + container nodes { + description + "Node-specific IPv6 network operational data"; + list node { + key "node-name"; + description + "IPv6 network operational data for a particular + node"; + container interface-data { + description + "IPv6 network operational interface data"; + container vrfs { + description + "VRF specific IPv6 network operational + interface data"; + list vrf { + key "vrf-name"; + description + "VRF ID of an interface belong to"; + container briefs { + description + "Brief interface IPv6 network operational + data for a node"; + list brief { + key "interface-name"; + description + "Brief interface IPv6 network operational + data for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IPV6-IF-BRIEF; + } + } + container global-details { + description + "Detail interface IPv4 network operational + data for global data"; + list global-detail { + key "interface-name"; + description + "Detail interface IPv6 network operational + data for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IPV6-IF-DETAIL; + } + } + container global-briefs { + description + "Brief interface IPv6 network operational + data from global data"; + list global-brief { + key "interface-name"; + description + "Brief interface IPv6 network operational + data for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IPV6-IF-BRIEF; + } + } + container details { + description + "Detail interface IPv4 network operational + data for a node"; + list detail { + key "interface-name"; + description + "Detail interface IPv6 network operational + data for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IPV6-IF-DETAIL; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The VRF name"; + } + } + } + container summary { + description + "Summary of IPv6 network operational interface + data on a node"; + uses IPV6-IF-SUMMARY; + } + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + container interfaces { + description + "IPv6 network operational interface data"; + list interface { + key "interface-name"; + description + "Interface names with VRF"; + container vrf-names { + description + "List of VRF on the interface"; + list vrf-name { + key "vrf-name"; + description + "VRF information on the interface"; + container detail-data { + description + "Detail IPv6 network operational data for an + interface"; + uses IPV6-IF-DETAIL; + } + container brief-data { + description + "Brief IPv6 network operational data for an + interface"; + uses IPV6-IF-BRIEF; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "The VRF name"; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-subscriber-cfg.yang new file mode 100644 index 000000000..0f83f0626 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ma-subscriber-cfg.yang @@ -0,0 +1,109 @@ +module Cisco-IOS-XR-ipv6-ma-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-ma-subscriber-cfg"; + prefix ipv6-ma-subscriber-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 ipv6-ma-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-01-11 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping IPV6-NETWORK { + description + "Common node of ip-subscriber, ppp, + subscriber-service"; + container ipv6-network { + description + "Interface IPv6 Network configuration data"; + container addresses { + description + "Set the IPv6 address of an interface"; + container auto-configuration { + description + "Auto IPv6 Interface Configuration"; + leaf enable { + type empty; + description + "The flag to enable auto ipv6 interface + configuration"; + } + } + } + leaf mtu { + type uint32 { + range "1280..65535"; + } + units "byte"; + description + "MTU Setting of Interface"; + } + leaf rpf { + type boolean; + description + "TRUE if enabled, FALSE if disabled"; + } + leaf unreachables { + type empty; + description + "Override Sending of ICMP Unreachable Messages"; + } + } + } + + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-NETWORK; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-NETWORK; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-NETWORK; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-cfg.yang new file mode 100644 index 000000000..86bebeb8e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-cfg.yang @@ -0,0 +1,568 @@ +module Cisco-IOS-XR-ipv6-nd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-nd-cfg"; + prefix ipv6-nd-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ipv6-nd package configuration. + + This module contains definitions + for the following management objects: + ipv6-neighbor: IPv6 neighbor or neighbor discovery + configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-17 { + description + "Adding CLI for ND proxy."; + semver:module-version "3.1.0"; + } + revision 2021-06-01 { + description + "Removed SRP Encap value set in Yang/CLI."; + semver:module-version "3.0.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6nd-month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + description + "Ipv6nd month"; + } + + typedef Ipv6srp-encapsulation { + type enumeration { + enum "srpa" { + value 5; + description + "Encapsulation type SRP, prefer side A"; + } + enum "srpb" { + value 6; + description + "Encapsulation type SRP, prefer side B"; + } + } + description + "Ipv6srp encapsulation"; + } + + typedef Ipv6-nd-router-pref { + type enumeration { + enum "high" { + value 1; + description + "High preference"; + } + enum "medium" { + value 2; + description + "Medium preference"; + } + enum "low" { + value 3; + description + "Low preference"; + } + } + description + "Ipv6 nd router pref"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv6-neighbor { + description + "IPv6 interface neighbor or neighbor discovery + configuration"; + container raspecific-route-s { + description + "IPv6 Router Advertisement (RA) Specific Route"; + list raspecific-route { + key "specific-route"; + description + "IPv6 Router Advertisement (RA) Specific Route"; + leaf specific-route { + type inet:ipv6-address-no-zone; + description + "IPv6 Address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Prefix mask length"; + } + leaf lifetime { + type uint32 { + range "0..4294967295"; + } + description + "Lifetime (seconds)"; + } + leaf preference { + type Ipv6-nd-router-pref; + description + "Preference"; + } + } + } + container radns-searches { + description + "IPv6 Router Advertisement (RA) DNS Search List"; + list radns-search { + key "dns-search-list"; + description + "IPv6 Router Advertisement (RA) DNS Search List"; + leaf dns-search-list { + type xr:Cisco-ios-xr-string; + description + "Search List"; + } + leaf lifetime { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "Lifetime value in seconds"; + } + } + } + container radns-servers { + description + "IPv6 Router Advertisement (RA) DNS Servre"; + list radns-server { + key "dns-server"; + description + "IPv6 Router Advertisement (RA) DNS Servre"; + leaf dns-server { + type inet:ipv6-address-no-zone; + description + "IPv6 Address"; + } + leaf lifetime { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "Lifetime value in seconds"; + } + } + } + container ra-interval { + presence "Indicates a ra-interval node is configured."; + description + "Set IPv6 Router Advertisement (RA) interval in + seconds"; + leaf maximum { + type uint32 { + range "4..1800"; + } + mandatory true; + description + "Maximum RA interval in seconds"; + } + leaf minimum { + type uint32 { + range "3..1800"; + } + description + "Minimum RA interval in seconds. Must be less + than 0.75 * maximum interval"; + } + } + container ipv6-prefixes { + description + "Prefixes "; + list ipv6-prefix { + key "prefix"; + description + "Configure prefix with paramemters"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "IPv6 prefix"; + } + leaf prefix-zone { + type string { + length "1..9"; + } + mandatory true; + description + "Prefix zone"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "Prefix mask length"; + } + leaf valid-lifetime { + type uint32 { + range "0..4294967295"; + } + description + "Valid Lifetime (seconds)"; + } + leaf preferred-lifetime { + type uint32 { + range "0..4294967295"; + } + description + "Preferred Lifetime (seconds) must be <= Valid + Lifetime"; + } + leaf off-link { + type boolean; + description + "If set, prefix will not be used for onlink + determination"; + } + leaf no-auto-config { + type boolean; + description + "If set, prefix will not be used for auto + configuration"; + } + leaf no-advertize { + type boolean; + description + "If set, prefix will not be advertized"; + } + leaf expiry-month { + type Ipv6nd-month; + description + "Month to expire valid lifetime"; + } + leaf expiry-date { + type uint32 { + range "1..31"; + } + description + "Date to expire valid lifetime"; + } + leaf expiry-year { + type uint32 { + range "2003..2035"; + } + description + "Year to expire valid lifetime"; + } + leaf expiry-hour { + type uint32 { + range "0..23"; + } + description + "Hour to expire valid lifetime"; + } + leaf expiry-minute { + type uint32 { + range "0..59"; + } + description + "Minute to expire valid lifetime"; + } + leaf pref-expiry-month { + type Ipv6nd-month; + description + "Month to expire preferred lifetime"; + } + leaf pref-expiry-date { + type uint32 { + range "1..31"; + } + description + "Date to expire preferred lifetime"; + } + leaf pref-expiry-year { + type uint32 { + range "2003..2035"; + } + description + "Year to expire preferred lifetime"; + } + leaf pref-expiry-hour { + type uint32 { + range "0..23"; + } + description + "Hour to expire preferred lifetime"; + } + leaf pref-expiry-minute { + type uint32 { + range "0..59"; + } + description + "Minute to expire preferred lifetime"; + } + } + } + leaf reachable-time { + type uint32 { + range "0..3600000"; + } + units "millisecond"; + description + "Set advertised reachability time in + milliseconds"; + } + leaf ra-unspecify-hoplimit { + type empty; + description + "Unspecify IPv6 Router Advertisement (RA) + hop-limit"; + } + leaf dad-attempts { + type uint32 { + range "0..600"; + } + description + "Set IPv6 duplicate address detection transmits"; + } + leaf srp-multicast-encapsulation { + type Ipv6srp-encapsulation; + description + "Set SRP multicast prefer encapsulation"; + } + leaf ns-interval { + type uint32 { + range "1000..4294967295"; + } + units "millisecond"; + description + "Set advertised NS retransmission interval in + milliseconds"; + } + leaf cache-limit { + type uint32 { + range "0..128000"; + } + description + "Set the cache limit for neighbor entries"; + } + leaf redirect { + type empty; + description + "Enable sending of ICMP Redirect messages"; + } + leaf srp-unicast-encapsulation { + type Ipv6srp-encapsulation; + description + "Set SRP unicast prefer encapsulation"; + } + leaf ramtu-suppress { + type empty; + description + "Enable suppress MTU in IPv6 router + advertisement"; + } + leaf managed-config { + type empty; + description + "Host to use stateful protocol for address + configuration"; + } + leaf ra-unicast { + type empty; + description + "Enable unicast IPv6 router advertisement"; + } + leaf ra-lifetime { + type uint32 { + range "0..9000"; + } + units "second"; + description + "Set IPv6 Router Advertisement (RA) lifetime in + seconds"; + } + leaf other-config { + type empty; + description + "Host to use stateful protocol for non-address + configuration"; + } + leaf ra-suppress { + type empty; + description + "Enable suppress IPv6 router advertisement"; + } + leaf router-preference { + type Ipv6-nd-router-pref; + description + "RA Router Preference"; + } + leaf nd-proxy { + type empty; + description + "Enable IPv6 ND proxy"; + } + } + } + container ipv6-neighbor { + description + "IPv6 neighbor or neighbor discovery configuration"; + container neighbors { + description + "IPv6 neighbors"; + list neighbor { + key "neighbor-address interface-name"; + description + "IPv6 neighbor configuration"; + leaf neighbor-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf zone { + type string; + mandatory true; + description + "IPv6 address zone"; + } + leaf mac-address { + type yang:mac-address; + mandatory true; + description + "48-bit hardware address H.H.H"; + } + } + } + leaf scavenge-timeout { + type uint32 { + range "1..43200"; + } + units "second"; + description + "Set lifetime for stale neighbor"; + } + leaf cos { + type uint32 { + range "0..7"; + } + description + "Set cos value for both outer vlan and inner vlan + (if present) in all ougoing ND control packets"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper-sub1.yang new file mode 100644 index 000000000..4f96b1f79 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper-sub1.yang @@ -0,0 +1,843 @@ +submodule Cisco-IOS-XR-ipv6-nd-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-nd-oper { + prefix Cisco-IOS-XR-ipv6-nd-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-nd package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-11-08 { + description + "Modified bag with dns server/searchlist count."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-18 { + description + "Fixing yang usability warnings."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6-nd-sh-vr-flags { + type enumeration { + enum "no-flags" { + description + "None"; + } + enum "final-ra" { + description + "Final RA"; + } + } + description + "IPv6 ND VR Entry Flags Type "; + } + + typedef Ipv6-nd-sh-vr-state { + type enumeration { + enum "deleted" { + description + "Delete"; + } + enum "standby" { + description + "Standby"; + } + enum "active" { + description + "Active"; + } + } + description + "IPv6 ND VR Entry State Type "; + } + + typedef Ipv6-nd-bndl-state { + type enumeration { + enum "run" { + description + "Running state"; + } + enum "error" { + description + "Error state"; + } + enum "wait" { + description + "Wait state"; + } + } + description + "IPv6 ND Bundle State"; + } + + typedef Ipv6-nd-neighbor-origin { + type enumeration { + enum "other" { + description + "Other Address"; + } + enum "static" { + description + "Static Address"; + } + enum "dynamic" { + description + "Dynamic Address"; + } + } + description + "IPv6 ND Neighbor Origin Type"; + } + + typedef Ipv6-nd-media-encap { + type enumeration { + enum "none" { + description + "No encapsulation"; + } + enum "arpa" { + description + "ARPA encapsulation"; + } + enum "snap" { + description + "SNAP encapsulation"; + } + enum "ieee802-1q" { + description + "802_1Q encapsulation"; + } + enum "srp" { + description + "SRP encapsulation"; + } + enum "srpa" { + description + "SRPA encapsulation"; + } + enum "srpb" { + description + "SRPB encapsulation"; + } + enum "ppp" { + description + "PPP encapsulation"; + } + enum "hdlc" { + description + "HDLC encapsulation"; + } + enum "chdlc" { + description + "CHDLC encapsulation"; + } + enum "dot1q" { + description + "DOT1Q encapsulation"; + } + enum "fr" { + description + "FR encapsulation"; + } + enum "gre" { + description + "GRE encapsulation"; + } + } + description + "IPv6 ND Media Encapsulation Type"; + } + + typedef Ipv6-nd-sh-state { + type enumeration { + enum "incomplete" { + description + "Incomplete"; + } + enum "reachable" { + description + "Reachable"; + } + enum "stale" { + description + "Stale"; + } + enum "glean" { + description + "Glean"; + } + enum "delay" { + description + "Delay"; + } + enum "probe" { + description + "Probe"; + } + enum "delete" { + description + "Delete"; + } + } + description + "IPv6 ND Neighbor Reachability State"; + } + + grouping IPV6-ND-PREFIX-Q { + description + "Prefix Queue"; + leaf prefix-address { + type inet:ipv6-address; + description + "IPV6 Prefix address"; + } + leaf eui64 { + type inet:ipv6-address; + description + "IPv6 Auto generated address"; + } + leaf valid-life-time { + type uint32; + description + "IPV6 Prefix Valid Life Time"; + } + leaf preferred-life-time { + type uint32; + description + "IPV6 Prefix Preferred Life Time"; + } + leaf prefix-len { + type uint32; + description + "IPV6 Prefix Length"; + } + leaf flags { + type uint32; + description + "IPv6 Address Specific Flags"; + } + leaf pfx-flags { + type uint32; + description + "Prefix Address Specific Flags"; + } + } + + grouping IPV6-ND-RA-INFO { + description + "RA Info"; + container elapsed-ra-time { + description + "elapsedRATime"; + uses BAG-TIMESPEC; + } + container reachable-time { + description + "common reachabletime"; + uses BAG-TIMESPEC; + } + container retrans-time { + description + "RA retransmit time"; + uses BAG-TIMESPEC; + } + leaf address { + type inet:ipv6-address; + description + "address of type IPV6"; + } + leaf hops { + type uint32; + description + "number of intermediate devices between source + and destination"; + } + leaf flags { + type uint32; + description + "RA flags"; + } + leaf life-time { + type uint32; + description + "active time"; + } + leaf mtu { + type uint32; + description + "maximum transmission unit"; + } + leaf err-msg { + type boolean; + description + "message having the error info"; + } + leaf vrf-id { + type uint32; + description + "virtual routing and forwarding id"; + } + leaf u6-tbl-id { + type uint32; + description + "tbl id"; + } + leaf rib-protoid { + type uint16; + description + "proto id"; + } + leaf default-router { + type boolean; + description + "router"; + } + leaf reachability { + type uint32; + description + "reach"; + } + list prefix-q { + description + "Prefix Queue"; + uses IPV6-ND-PREFIX-Q; + } + } + + grouping IPV6-ND-SLAAC-INTFS-INFO { + description + "Slaac Intfs"; + leaf idb { + type xr:Interface-name; + description + "interface database"; + } + list ra { + description + "slaac db"; + uses IPV6-ND-RA-INFO; + } + } + + grouping IPV6-ND-VR-ENTRY { + description + "Detailed Info of ND IPv6 Virtual Router entry"; + container local-address { + description + "IPV6 Link local address"; + uses IPV6-ND-ADDR; + } + leaf link-layer-address { + type yang:mac-address; + description + "IPV6 Link-Layer Address"; + } + leaf context { + type uint32; + description + "Virtual Router ID"; + } + leaf state { + type Ipv6-nd-sh-vr-state; + description + "VR state"; + } + leaf flags { + type Ipv6-nd-sh-vr-flags; + description + "VR Flags"; + } + leaf vr-gl-addr-ct { + type uint32; + description + "Virtual Global Address Count"; + } + list vr-global-address { + description + "List of ND global addresses"; + uses IPV6-ND-ADDR; + } + } + + grouping IPV6-ND-GSPNODE { + description + "GSP node info "; + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + leaf total-links { + type uint32; + description + "Number of links on the node"; + } + } + + grouping IPV6-ND-ADDR { + description + "List of IPv6 ND Addresses "; + leaf ipv6-address { + type inet:ipv6-address; + description + "Address of type IPV6"; + } + leaf valid-lifetime { + type uint32; + description + "Valid lifetime of a Prefix"; + } + leaf pref-lifetime { + type uint32; + description + "Preffered lifetime of a Prefix"; + } + leaf prefix-length { + type uint32; + description + "IPV6 Prefix length"; + } + leaf flags { + type uint32; + description + "Address flags"; + } + } + + grouping IPV6-ND-IF-PARAMS { + description + "Detailed Info of ND IPv6 Interface"; + leaf is-dad-enabled { + type boolean; + description + "If true, DAD (D.. A.. D..) is enabled otherwise + it is disabled"; + } + leaf dad-attempts { + type uint32; + description + "DAD attempt count"; + } + leaf is-icm-pv6-redirect { + type boolean; + description + "ICMP redirect flag"; + } + leaf is-dhcp-managed { + type boolean; + description + "Flag used for utilising DHCP"; + } + leaf is-route-address-managed { + type boolean; + description + "Flag used to manage routable address"; + } + leaf is-suppressed { + type boolean; + description + "Suppress flag"; + } + leaf send-unicast-ra { + type boolean; + description + "unicast RA send flag"; + } + leaf nd-retransmit-interval { + type uint32; + description + "ND retransmit interval in msec"; + } + leaf nd-min-transmit-interval { + type uint32; + description + "ND router advertisement minimum transmit + interval in sec"; + } + leaf nd-max-transmit-interval { + type uint32; + description + "ND router advertisement maximum transmit + interval in sec"; + } + leaf nd-advertisement-lifetime { + type uint32; + description + "ND router advertisement life time in sec"; + } + leaf nd-reachable-time { + type uint32; + description + "Time to reach ND in msec"; + } + leaf nd-cache-limit { + type uint32; + description + "Completed adjacency limit per interface"; + } + leaf complete-protocol-count { + type uint32; + description + "Completed PROTO entry Count"; + } + leaf complete-glean-count { + type uint32; + description + "Completed GLEAN entry count"; + } + leaf incomplete-protocol-count { + type uint32; + description + "Incomplete PROTO entry count"; + } + leaf incomplete-glean-count { + type uint32; + description + "Incomplete GLEAN entry count"; + } + leaf dropped-protocol-req-count { + type uint32; + description + "Dropped PROTO entry request count"; + } + leaf dropped-glean-req-count { + type uint32; + description + "Dropped GLEAN entry lequest count"; + } + leaf radns-server-address-count { + type uint32; + description + "RA DNS Server Address Count"; + } + leaf radns-search-list-count { + type uint32; + description + "RA DNS Search List Count"; + } + } + + grouping IPV6-ND-IF-ENTRY { + description + "Detailed Info of ND IPv6 Interface entry"; + container nd-parameters { + description + "ND interface parameters"; + uses IPV6-ND-IF-PARAMS; + } + container local-address { + description + "IPV6 Link local address"; + uses IPV6-ND-ADDR; + } + leaf parent-interface-name { + type xr:Interface-name; + description + "Name of the Parent interface"; + } + leaf iftype { + type uint32; + description + "Interface type"; + } + leaf mtu { + type uint32; + description + "MTU"; + } + leaf etype { + type uint32; + description + "etype field"; + } + leaf vlan-tag { + type uint16; + description + "vlan tag/id/ucv"; + } + leaf mac-addr-size { + type uint32; + description + "size of mac address"; + } + leaf mac-addr { + type yang:mac-address; + description + "media access control address"; + } + leaf is-interface-enabled { + type boolean; + description + "If true, interface is enabled"; + } + leaf is-ipv6-enabled { + type boolean; + description + "If true, IPv6 is enabled"; + } + leaf is-mpls-enabled { + type boolean; + description + "If true, MPLS is enabled"; + } + leaf-list member-link { + type uint32; + description + "List of member links"; + } + list global-address { + description + "List of ND global addresses"; + uses IPV6-ND-ADDR; + } + list member-node { + description + "List of member nodes"; + uses IPV6-ND-GSPNODE; + } + } + + grouping IPV6-ND-BL-NODE-ENTRY { + description + "IPv6 node discovery bundle node information"; + container age { + description + "Uptime of node (secs)"; + uses BAG-TIMESPEC; + } + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf process-name { + type string; + description + "Name of the process"; + } + leaf sent-sequence-number { + type uint32; + description + "Sent sequence number for error detection"; + } + leaf received-sequence-number { + type uint32; + description + "Received sequence num for error detection"; + } + leaf state { + type Ipv6-nd-bndl-state; + description + "State"; + } + leaf state-changes { + type uint32; + description + "change of state"; + } + leaf sent-packets { + type uint32; + description + "Total packet sends"; + } + leaf received-packets { + type uint32; + description + "Total packet receives"; + } + } + + grouping BAG-NBR-ENTRY-SUM { + description + "IPv6 ND summary information"; + leaf incomplete-entries { + type uint32; + description + "Total ipv6 neighbhors count which are in INCMP + state"; + } + leaf reachable-entries { + type uint32; + description + "Total ipv6 neighbhors count which are in REACH + state"; + } + leaf stale-entries { + type uint32; + description + "Total ipv6 neighbhors count which are STALE"; + } + leaf delayed-entries { + type uint32; + description + "Total ipv6 neighbhors count which are in DELAY + state"; + } + leaf probe-entries { + type uint32; + description + "Total ipv6 neighbhors count which are in PROBE + state"; + } + leaf deleted-entries { + type uint32; + description + "Total ipv6 neighbhors count which are in DELETE + state"; + } + leaf subtotal-neighbor-entries { + type uint32; + description + "Total number of entries"; + } + } + + grouping IPV6-ND-NEIGHBOR-ENTRY-SUMMARY { + description + "IPv6 ND neighbor entry summary"; + container multicast { + description + "Multicast neighbor summary"; + uses BAG-NBR-ENTRY-SUM; + } + container static { + description + "Static neighbor summary"; + uses BAG-NBR-ENTRY-SUM; + } + container dynamic { + description + "Dynamic neighbor summary"; + uses BAG-NBR-ENTRY-SUM; + } + container sync { + description + "Sync neighbor summary"; + uses BAG-NBR-ENTRY-SUM; + } + container static-sync { + description + "StaticSync neighbor summary"; + uses BAG-NBR-ENTRY-SUM; + } + container dynamic-sync { + description + "DynamicSync neighbor summary"; + uses BAG-NBR-ENTRY-SUM; + } + leaf total-neighbor-entries { + type uint32; + description + "Total number of entries"; + } + } + + grouping BAG-TIMESPEC { + description + "Timespec specifying the number of seconds since + the base time of 00:00:00 GMT, 1 January 1970."; + leaf seconds { + type uint32; + units "second"; + description + "Number of seconds"; + } + } + + grouping IPV6-ND-NEIGHBOR-ENTRY { + description + "IPv6 ND neighbor entry"; + container last-reached-time { + description + "Last time of reachability"; + uses BAG-TIMESPEC; + } + leaf reachability-state { + type Ipv6-nd-sh-state; + description + "Current state"; + } + leaf link-layer-address { + type yang:mac-address; + description + "IPV6 Link-Layer Address"; + } + leaf encapsulation { + type Ipv6-nd-media-encap; + description + "Preferred media encap type"; + } + leaf selected-encapsulation { + type Ipv6-nd-media-encap; + description + "Selected media encap"; + } + leaf origin-encapsulation { + type Ipv6-nd-neighbor-origin; + description + "Neighbor origin"; + } + leaf interface-name { + type string; + description + "Name of Interface"; + } + leaf location { + type xr:Node-id; + description + "Location where the neighbor entry exists"; + } + leaf is-router { + type boolean; + description + "IsRouter"; + } + leaf serg-flags { + type uint32; + description + "ND serg flags for this entry"; + } + leaf vrfid { + type uint32; + description + "VRF name for this entry"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper.yang new file mode 100644 index 000000000..3f16c8fc2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-oper.yang @@ -0,0 +1,206 @@ +module Cisco-IOS-XR-ipv6-nd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-nd-oper"; + prefix ipv6-nd-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv6-nd-oper-sub1 { + revision-date 2019-11-08; + } + + 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 ipv6-nd package operational data. + + This module contains definitions + for the following management objects: + ipv6-node-discovery: IPv6 node discovery operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-11-08 { + description + "Modified bag with dns server/searchlist count."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-18 { + description + "Fixing yang usability warnings."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv6-node-discovery { + config false; + description + "IPv6 node discovery operational data"; + container nodes { + description + "IPv6 node discovery list of nodes"; + list node { + key "node-name"; + description + "IPv6 node discovery operational data for a + particular node"; + container neighbor-interfaces { + description + "IPv6 node discovery list of neighbor + interfaces"; + list neighbor-interface { + key "interface-name"; + description + "IPv6 node discovery neighbor interface"; + container host-addresses { + description + "IPv6 node discovery list of neighbor host + addresses"; + list host-address { + key "host-address"; + description + "IPv6 Neighbor detailed information"; + leaf host-address { + type inet:ipv6-address-no-zone; + description + "Host Address"; + } + uses IPV6-ND-NEIGHBOR-ENTRY; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + container neighbor-summary { + description + "Summary of IPv6 Neighbors"; + uses IPV6-ND-NEIGHBOR-ENTRY-SUMMARY; + } + container bundle-nodes { + description + "IPv6 ND list of bundle nodes for a specific + node"; + list bundle-node { + key "node-name"; + description + "IPv6 ND operational data for a specific + bundle node"; + leaf node-name { + type xr:Node-id; + description + "The bundle node name"; + } + uses IPV6-ND-BL-NODE-ENTRY; + } + } + container bundle-interfaces { + description + "IPv6 ND list of bundle interfaces for a + specific node"; + list bundle-interface { + key "interface-name"; + description + "IPv6 ND operational data for a specific + bundler interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV6-ND-IF-ENTRY; + } + } + container interfaces { + description + "IPv6 node discovery list of interfaces for a + specific node"; + list interface { + key "interface-name"; + description + "IPv6 node discovery operational data for a + specific node and interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV6-ND-IF-PARAMS; + } + } + container nd-virtual-routers { + description + "IPv6 ND virtual router information for a + specific interface"; + list nd-virtual-router { + key "interface-name"; + description + "IPv6 ND virtual router operational data for + a specific interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV6-ND-VR-ENTRY; + } + } + container slaac-interfaces { + description + "IPv6 ND list of SLAAC MGMT interfaces for a + specific node"; + list slaac-interface { + key "interface-name"; + description + "IPv6 ND operational data for a specific slaac + interface"; + container router-advert-detail { + description + "IPv6 ND operational data for a specific + slaac interface"; + uses IPV6-ND-SLAAC-INTFS-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-subscriber-cfg.yang new file mode 100644 index 000000000..2affc4b16 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-nd-subscriber-cfg.yang @@ -0,0 +1,263 @@ +module Cisco-IOS-XR-ipv6-nd-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-nd-subscriber-cfg"; + prefix ipv6-nd-subscriber-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 ipv6-nd-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-12-19 { + description + "IOS XR 6.2.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6-nd-router-pref-template { + type enumeration { + enum "high" { + value 1; + description + "High preference"; + } + enum "medium" { + value 2; + description + "Medium preference"; + } + enum "low" { + value 3; + description + "Low preference"; + } + } + description + "Ipv6 nd router pref template"; + } + + grouping IPV6-NEIGHBOR { + description + "Common node of ip-subscriber, ppp, + subscriber-service"; + container ipv6-neighbor { + description + "Interface IPv6 Network configuration data"; + container ra-interval { + presence "Indicates a ra-interval node is configured."; + description + "Set IPv6 Router Advertisement (RA) interval in + seconds"; + leaf maximum { + type uint32 { + range "4..1800"; + } + units "second"; + mandatory true; + description + "Maximum RA interval in seconds"; + } + leaf minimum { + type uint32 { + range "3..1800"; + } + units "second"; + description + "Minimum RA interval in seconds. Must be less + than 0.75 * maximum interval"; + } + } + container framed-prefix { + presence "Indicates a framed-prefix node is configured."; + description + "Set the IPv6 framed ipv6 prefix for a + subscriber interface "; + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "IPv6 framed prefix length"; + } + leaf prefix { + type string; + mandatory true; + description + "IPV6 framed prefix address"; + } + } + container duplicate-address-detection { + description + "Duplicate Address Detection (DAD)"; + leaf attempts { + type uint32 { + range "0..600"; + } + description + "Set IPv6 duplicate address detection transmits"; + } + } + container ra-initial { + presence "Indicates a ra-initial node is configured."; + description + "IPv6 ND RA Initial"; + leaf count { + type uint32 { + range "0..32"; + } + mandatory true; + description + "Initial RA count"; + } + leaf interval { + type uint32 { + range "4..1800"; + } + units "second"; + mandatory true; + description + "Initial RA interval in seconds"; + } + } + leaf framed-prefix-pool { + type string; + description + "Set the IPv6 framed ipv6 prefix pool for a + subscriber interface "; + } + leaf managed-config { + type empty; + description + "Host to use stateful protocol for address + configuration"; + } + leaf other-config { + type empty; + description + "Host to use stateful protocol for non-address + configuration"; + } + leaf start-ra-on-ipv6-enable { + type empty; + description + "Start RA on ipv6-enable config"; + } + leaf nud-enable { + type empty; + description + "NUD enable"; + } + leaf ra-lifetime { + type uint32 { + range "0..9000"; + } + units "second"; + description + "Set IPv6 Router Advertisement (RA) lifetime in + seconds"; + } + leaf router-preference { + type Ipv6-nd-router-pref-template; + description + "RA Router Preference"; + } + leaf ra-suppress { + type empty; + description + "Enable suppress IPv6 router advertisement"; + } + leaf ra-unicast { + type empty; + description + "Enable RA unicast Flag"; + } + leaf ra-unspecify-hoplimit { + type empty; + description + "Unspecify IPv6 Router Advertisement (RA) + hop-limit"; + } + leaf ra-suppress-mtu { + type empty; + description + "RA suppress MTU flag"; + } + leaf suppress-cache-learning { + type empty; + description + "Suppress cache learning flag"; + } + leaf reachable-time { + type uint32 { + range "0..3600000"; + } + units "millisecond"; + description + "Set advertised reachability time in + milliseconds"; + } + leaf ns-interval { + type uint32 { + range "1000..4294967295"; + } + units "millisecond"; + description + "Set advertised NS retransmission interval in + milliseconds"; + } + } + } + + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-NEIGHBOR; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-NEIGHBOR; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses IPV6-NEIGHBOR; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg.yang new file mode 100644 index 000000000..cbf102298 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg.yang @@ -0,0 +1,1132 @@ +module Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg"; + prefix ipv6-new-dhcpv6d-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ipv6-new-dhcpv6d package configuration. + + This module contains definitions + for the following management objects: + dhcpv6: None + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-25 { + description + "Enabled DHCP client support on physical interface."; + semver:module-version "2.1.0"; + } + revision 2021-05-28 { + description + "Edit config issue seen in Cisco-IOS-XR-ipv6-new-dhcpv6d-cfg model"; + semver:module-version "2.1.0"; + } + revision 2020-04-19 { + description + "Added hop count seed CLI support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-12 { + description + "Added Remote-id config for relay profile"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-10-10 { + description + "Moved augment statement to a separate file"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6dhcp-mode { + type enumeration { + enum "server" { + value 1; + description + "Specify mode-class based Server option"; + } + enum "proxy" { + value 2; + description + "Specify mode-class based Proxy option"; + } + } + description + "Ipv6dhcp mode"; + } + + typedef Insert { + type enumeration { + enum "local" { + value 0; + description + "Insert locally generated/configured Interface + ID value"; + } + enum "received" { + value 1; + description + "Insert received Interface ID value"; + } + enum "pppoe" { + value 2; + description + "Insert received Interface ID value from SADB"; + } + enum "received-nodefault" { + value 3; + description + "No default Interface ID"; + } + } + description + "Insert"; + } + + typedef Ipv6dhcp-default-mode { + type enumeration { + enum "server" { + value 1; + description + "Specify mode-class based Server option"; + } + } + description + "Ipv6dhcp default mode"; + } + + typedef Subscriber-id { + type enumeration { + enum "pppoe" { + value 3; + description + "Insert Received Subscriber-ID Value from SADB"; + } + } + description + "Subscriber id"; + } + + typedef Action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Solicit"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Solicit"; + } + } + description + "Action"; + } + + typedef Link-layer-addr { + type enumeration { + enum "set" { + value 4; + description + "Insert Received LinkLayerAddr Value from SADB"; + } + } + description + "Link layer addr"; + } + + container dhcpv6 { + presence "Indicates a dhcpv6 node is configured."; + description + "None"; + container database { + description + "Enable DHCP binding database storage to file + system"; + leaf proxy { + type empty; + description + "Enable DHCP proxy binding database storage to + file system"; + } + leaf server { + type empty; + description + "Enable DHCP server binding database storage to + file system"; + } + leaf relay { + type empty; + description + "Enable DHCP relay binding database storage to + file system"; + } + leaf full-write-interval { + type uint32 { + range "1..1440"; + } + default "10"; + description + "Full file write interval (default 10 minutes)"; + } + leaf incremental-write-interval { + type uint32 { + range "1..1440"; + } + default "1"; + description + "Incremental file write interval (default 1 + minutes)"; + } + } + container rate-limit-solicit { + description + "Rate limit ingress packets"; + leaf num-period { + type uint32 { + range "1..1000"; + } + description + "Period in msec (Default: 200 msec)"; + } + leaf num-solicit { + type uint32 { + range "0..1000"; + } + description + "Number of Solicit packets (Default: 100, 0: No + limit)"; + } + } + container profiles { + description + "Table of Profile"; + list profile { + key "profile-name"; + description + "None"; + container cnbng { + presence "Indicates a cnbng node is configured."; + description + "None"; + leaf enable { + type empty; + mandatory true; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects + under Cnbng."; + } + } + container relay { + presence "Indicates a relay node is configured."; + description + "None"; + container helper-addresses { + description + "Table of HelperAddress"; + list helper-address { + key "vrf-name helper-address"; + description + "Specify the server helper address"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + leaf helper-address { + type inet:ipv6-address-no-zone; + description + "Server Global unicast address"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable"; + } + leaf src-intf-name { + type xr:Interface-name; + description + "Helper-address Specific Source Interface"; + } + } + } + container option { + description + "Specify relay option configuration"; + leaf remote-id { + type string { + length "1..256"; + } + description + "Enter remote-id value"; + } + } + leaf link-address { + type inet:ip-address-no-zone; + description + "IPv6 address to be filled in link-address"; + } + leaf relay-l2ac-route-add-disable { + type empty; + description + "Disable l2ac route add if interface is down"; + } + leaf src-intf-name { + type xr:Interface-name; + description + "Relay profile Source Interface Name"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects + under Relay."; + } + leaf iana-route-add { + type empty; + description + "Enable route addition for IANA"; + } + leaf relay-route-add-disable { + type empty; + description + "RouteDisable"; + } + } + container base { + presence "Indicates a base node is configured."; + description + "None"; + container dhcpv6-to-aaa { + description + "Enable to provide the list of options need to + send to aaa"; + container base-option { + description + "option type"; + container list { + description + "List of options"; + leaf option-all { + type uint32; + description + "Set constant integer"; + } + leaf-list option-number { + type uint32; + max-elements "12"; + description + "Option number"; + } + } + } + } + container match-default { + description + "Default match option"; + container profile { + description + "None"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Profile name"; + } + leaf default-mode { + type Ipv6dhcp-default-mode; + description + "Set constant integer"; + } + } + } + container match { + description + "Enter match option"; + container mode-classes { + description + "Table of ModeClass"; + list mode-class { + key "class-name"; + description + "Specify PPP/IPoE class option"; + container profile { + description + "Enter proxy or server profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Profile name"; + } + leaf mode { + type Ipv6dhcp-mode; + description + "Set constant integer"; + } + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Class name"; + } + } + } + } + leaf enable { + type empty; + mandatory true; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects + under Base."; + } + } + container proxy { + presence "Indicates a proxy node is configured."; + description + "None"; + container interfaces { + description + "Table of Interface"; + list interface { + key "interface-name"; + description + "None"; + leaf interface-id { + type string; + description + "Physical interface ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface to configure"; + } + } + } + container relay { + description + "Specify relay configuration"; + container option { + description + "Specify relay option configuration"; + container interface-id { + description + "Interface Id option"; + leaf insert { + type Insert; + description + "Configure InterfaceID insert type"; + } + } + leaf subscriber-id { + type Subscriber-id; + description + "Configure Received SubscriberID"; + } + leaf link-layer-addr { + type Link-layer-addr; + description + "Configure Received link-layer-Addr"; + } + leaf remote-i-dreceived { + type uint32; + description + "Set remote-id value from SADB"; + } + leaf remote-id { + type string { + length "1..256"; + } + description + "Enter remote-id value"; + } + } + } + container authentication { + description + "Authentication username format"; + leaf username { + type empty; + description + "Set username as DUID"; + } + } + container classes { + description + "Table of Class"; + list class { + key "class-name"; + description + "None"; + container helper-addresses { + description + "Table of HelperAddress"; + list helper-address { + key "vrf-name helper-address"; + description + "Specify the server helper address"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + leaf helper-address { + type inet:ipv6-address-no-zone; + description + "Server address"; + } + } + } + leaf link-address { + type inet:ip-address-no-zone; + description + "IPv6 address to be filled in link-address"; + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Class name"; + } + } + } + container sessions { + description + "Change sessions configuration"; + container mac { + description + "Throttle DHCP sessions based on MAC address"; + container throttle { + description + "Throttle DHCP sessions from any one MAC + address"; + leaf limit { + type uint32 { + range "1..65535"; + } + description + "Number of solicits at which to throttle"; + } + leaf request { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle request period (in secs)"; + } + leaf block { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle blocking period (in secs)"; + } + } + } + } + container helper-addresses { + description + "Table of HelperAddress"; + list helper-address { + key "vrf-name helper-address"; + description + "DHCPv6 Helper Address"; + leaf out-interface { + type xr:Interface-name; + description + "DHCPv6 HelperAddress Specific Output + Interface"; + } + leaf any-out-interface { + type empty; + description + "DHCPv6 HelperAddress Output Interface"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf helper-address { + type inet:ipv6-address-no-zone; + description + "DHCPv6 Helper Address"; + } + } + } + leaf linkaddress-from-ra-enable { + type empty; + description + "Fill linkaddress in Relay fwd msg with Prefix + from Router Advertisement for PPPoE sessions"; + } + leaf route-add-disable { + type empty; + description + "RouteDisable"; + } + leaf link-address { + type inet:ip-address-no-zone; + description + "IPv6 address to be filled in link-address"; + } + leaf src-intf-name { + type xr:Interface-name; + description + "Create or enter proxy profile Source + Interface Name"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects + under Proxy."; + } + leaf l2ac-route-add-disable { + type empty; + description + "Disable l2ac route add if interface is down"; + } + } + container server { + presence "Indicates a server node is configured."; + description + "None"; + container sessions { + description + "Change sessions configuration"; + container mac { + description + "Throttle DHCP sessions based on MAC address"; + container throttle { + description + "Throttle DHCP sessions from any one MAC + address"; + leaf limit { + type uint32 { + range "1..65535"; + } + description + "Number of solicits at which to throttle"; + } + leaf request { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle request period (in secs)"; + } + leaf block { + type uint32 { + range "1..100"; + } + units "second"; + description + "Throttle blocking period (in secs)"; + } + } + } + } + container dns-servers { + description + "DNS servers"; + leaf-list dns-server { + type inet:ip-address-no-zone; + max-elements "8"; + description + "Server's IPv6 address"; + } + } + container classes { + description + "Table of Class"; + list class { + key "class-name"; + description + "None"; + container dns-servers { + description + "DNS servers"; + leaf-list dns-server { + type inet:ip-address-no-zone; + max-elements "8"; + description + "Server's IPv6 address"; + } + } + container lease { + description + "lease"; + leaf infinite { + type string; + description + "Set string"; + } + leaf days { + type uint32 { + range "0..365"; + } + units "day"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23"; + } + units "hour"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + units "minute"; + description + "Minutes"; + } + } + leaf address-pool { + type string { + length "1..64"; + } + description + "Address pool name"; + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Domain name"; + } + leaf preference { + type uint32 { + range "1..255"; + } + description + "DHCP Server Preference"; + } + leaf prefix-pool { + type string { + length "1..64"; + } + description + "Prefix pool name"; + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "class name"; + } + } + } + container lease { + description + "lease"; + leaf days { + type uint32 { + range "0..365"; + } + units "day"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23"; + } + units "hour"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + units "minute"; + description + "Minutes"; + } + leaf infinite { + type string; + description + "Set string"; + } + } + container dhcpv6duid { + description + "Client DUID"; + leaf allowed-type { + type uint32 { + range "1..4"; + } + description + "Type of DUID to be allowed"; + } + } + container aaa-server { + description + "Enable aaa dhcpv6 option force-insert"; + container dhcpv6-option { + description + "Enable aaa dhcpv6 option force-insert"; + leaf force-insert { + type empty; + description + "Enable aaa dhcpv6 option force-insert"; + } + } + } + container options { + description + "DHCPv6 match"; + list option { + key "type format value"; + description + "DHCPv6 match option"; + container enterprise-id { + description + "match enterprise number"; + container hex-enterprise-id { + description + "defaut action for enterprise number"; + leaf action { + type Action; + description + "Configure Action to be take on match"; + } + } + container default-enterprise-id { + description + "defaut action for enterprise number"; + leaf action { + type Action; + description + "Configure Action to be take on match"; + } + } + } + container vendor-class { + description + "match vendor class"; + container str-vendor-class { + description + "string action for vendor number"; + leaf action { + type Action; + description + "Configure Action to be take on match"; + } + } + container default-vendor-class { + description + "default action for enterprise number"; + leaf action { + type Action; + description + "Configure Action to be take on match"; + } + } + } + leaf type { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + leaf format { + type uint32; + description + "Set constant integer"; + } + leaf value { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + } + } + container dhcpv6-options { + description + "DHCPv6 options"; + container vendor-options { + description + "Vendor options"; + leaf type { + type string; + description + "Set string"; + } + leaf vendor-options { + type string { + length "1..512"; + } + description + "Vendor options"; + } + } + } + leaf address-pool { + type string { + length "1..64"; + } + description + "Address pool name"; + } + leaf aftr-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "AFTR name"; + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Domain name"; + } + leaf preference { + type uint32 { + range "0..255"; + } + description + "DHCP Server Preference"; + } + leaf rapid-commit { + type empty; + description + "Allow RAPID Commit"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects + under Server."; + } + leaf enable-session-limit { + type empty; + description + "Enable vlan or interface session limit"; + } + leaf prefix-pool { + type string { + length "1..64"; + } + description + "Prefix pool name"; + } + leaf dynamic-relay-mac-addr { + type empty; + description + "Handle Relay-Fwd pkts from relay whose + mac-addr has changed"; + } + } + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + } + } + container interfaces { + description + "Table of Interface"; + list interface { + key "interface-name"; + description + "None"; + container pppoe { + description + "PPPoE subscriber interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter profile name"; + } + } + container cnbng { + description + "Assign a cnbng profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter profile name"; + } + } + container proxy { + description + "Assign a proxy profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter profile name"; + } + } + container base { + description + "Assign a base profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter profile name"; + } + } + container server { + description + "Assign a server profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter profile name"; + } + } + container relay { + description + "Assign a relay profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter profile name"; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface to configure"; + } + } + } + leaf inner-cos { + type uint32 { + range "0..7"; + } + description + "Inner cos values for DHCPv6 packets to wards + clients"; + } + leaf handle-jumbo-packet { + type empty; + description + "Handle packets of huge size"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable None. Deletion of this object also causes + deletion of all associated objects under DHCPv6."; + } + leaf hop-count-seed { + type empty; + description + "Start hop count to 0 in relay-forward msg for + SOLICIT"; + } + leaf quiet-on-unspec-fail { + type empty; + description + "Do not send ADVERTISE packet upon UNSPEC-FAIL"; + } + leaf ipoe-dhcp-client-reboot { + type uint32 { + range "10..30"; + } + units "second"; + description + "For BNG, timed wait for term a session"; + } + leaf allow-duid-change { + type empty; + description + "For BNG session, allow duid change for a client + MAC"; + } + leaf outer-cos { + type uint32 { + range "0..7"; + } + description + "Configure outer cos values for DHCPv6 packet to + wards client"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg.yang new file mode 100644 index 000000000..18cbbcbae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg.yang @@ -0,0 +1,177 @@ +module Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-cfg"; + prefix ipv6-new-dhcpv6d-client-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ipv6-new-dhcpv6d-client package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-17 { + description + "Added prefix-len option for dhcpv6 client"; + semver:module-version "1.1.0"; + } + revision 2020-02-18 { + description + "Modified DHCPv6 client timers range."; + semver:module-version "1.0.0"; + } + revision 2019-11-16 { + description + "Added Support for DHCPv6 Client."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Duid { + type enumeration { + enum "duid-ll" { + value 3; + description + "Link Local Address"; + } + } + description + "Duid"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ipv6-dhcp-client-options { + description + "Interface IPv6 dhcp-address-client-options + configuration"; + container options { + description + "DHCPv6 Options"; + leaf dns-option { + type string; + description + "Domain Name Server Option"; + } + leaf user-class-id-option { + type string; + description + "User Class ID String"; + } + leaf vendor-id-option { + type string; + description + "Vendor ID Option String"; + } + leaf domain-list-option { + type string; + description + "Domain List Option"; + } + } + container duidses { + description + "DUID Types"; + leaf-list duids { + type Duid; + max-elements "1"; + description + "DUID Type"; + } + } + container timers { + description + "DHCPv6 Client Timers"; + leaf req-time-out { + type uint32 { + range "1..4"; + } + description + "Initial request timeout"; + } + leaf release-time-out { + type uint32 { + range "1..3"; + } + description + "Initial release timeout value"; + } + leaf sol-max-rt { + type uint32 { + range "10..3600"; + } + description + "Maximum solicit retransmission value"; + } + leaf req-max-rt { + type uint32 { + range "10..30"; + } + description + "Maximum request timeout value"; + } + leaf sol-time-out { + type uint32 { + range "1..4"; + } + description + "Initial solicit timeout"; + } + leaf sol-max-delay { + type uint32 { + range "1..4"; + } + description + "Max delay of first solicit"; + } + } + leaf enable { + type empty; + description + "Enabled"; + } + leaf rapid-commit { + type string; + description + "Rapid-Commit"; + } + leaf prefix-length { + type uint32 { + range "64..127"; + } + description + "Prefix Length"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1.yang new file mode 100644 index 000000000..71c46509b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1.yang @@ -0,0 +1,570 @@ +submodule Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper { + prefix Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-new-dhcpv6d-client package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-17 { + description + "Added prefix-len option for dhcpv6 client"; + semver:module-version "1.1.0"; + } + revision 2019-11-16 { + description + "Added Support for DHCPv6 Client."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bag-duid { + type enumeration { + enum "duid-llt" { + value 1; + description + "DUID LLT"; + } + enum "duid" { + value 2; + description + "DUID EN"; + } + enum "duid-ll" { + value 3; + description + "DUID LL"; + } + } + description + "Bag duid"; + } + + typedef Bag-dhcpv6-client-option { + type enumeration { + enum "rapid-commit" { + value 14; + description + "Rapid Commit"; + } + enum "user-class" { + value 15; + description + "User Class"; + } + enum "vendor-class" { + value 16; + description + "Vendor Class"; + } + enum "dns-servers" { + value 23; + description + "DNS Servers"; + } + enum "domain-list" { + value 24; + description + "Domain List"; + } + } + description + "Bag dhcpv6 client option"; + } + + typedef Bag-dhcpv6-client-cfg-timer { + type enumeration { + enum "sol-max-delay" { + value 0; + description + "Solicit Max Delay"; + } + enum "sol-timeout" { + value 1; + description + "Solicit Timeout"; + } + enum "sol-max-rt" { + value 2; + description + "Solicit Max RT"; + } + enum "req-timeout" { + value 3; + description + "Request Timeout"; + } + enum "req-max-rt" { + value 4; + description + "Request Max RT"; + } + enum "rel-timeout" { + value 5; + description + "Release Timeout"; + } + } + description + "Bag dhcpv6 client cfg timer"; + } + + typedef Bag-dhcpv6-client-state { + type enumeration { + enum "none" { + value 0; + description + "None state"; + } + enum "idle" { + value 1; + description + "Idle state"; + } + enum "solicit" { + value 2; + description + "Solicit state"; + } + enum "request" { + value 3; + description + "Request state"; + } + enum "confirm" { + value 4; + description + "Confirm state"; + } + enum "info-req" { + value 5; + description + "InfoReq state"; + } + enum "bound" { + value 6; + description + "Bound state"; + } + enum "renew" { + value 7; + description + "Renew state"; + } + enum "rebind" { + value 8; + description + "Rebind state"; + } + enum "release" { + value 9; + description + "Release state"; + } + enum "verify" { + value 10; + description + "Verify state"; + } + enum "decline" { + value 11; + description + "Decline state"; + } + } + description + "Bag dhcpv6 client state"; + } + + typedef Rsi-tbl-id { + type uint32; + description + "Rsi tbl id"; + } + + typedef Rsi-vrf-id { + type uint32; + description + "Rsi vrf id"; + } + + grouping DHCPV6-CLIENT-TIMER-STATS-BAG { + description + "DHCPv6 client timer statistics"; + leaf timer-started { + type uint32; + description + "Timer started"; + } + leaf timer-stopped { + type uint32; + description + "Timer stopped"; + } + leaf timer-expired { + type uint32; + description + "Timer expired"; + } + } + + grouping DHCPV6-CLIENT-PACKET-STATS-BAG { + description + "DHCPv6 client packet statistics"; + leaf received-packets { + type uint32; + description + "Received packets"; + } + leaf transmitted-packets { + type uint32; + description + "Transmitted packets"; + } + leaf dropped-packets { + type uint32; + description + "Dropped packets"; + } + } + + grouping DHCPV6-CLIENT-EDM-STATS-BAG { + description + "ipv6 dhcp client statistics"; + container solicit { + description + "DHCPV6 Solicit packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container advertise { + description + "DHCPV6 Advertise packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container request { + description + "DHCPV6 Request packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container reply { + description + "DHCPV6 Reply packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container confirm { + description + "DHCPV6 Confirm packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container renew { + description + "DHCPV6 Renew packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container rebind { + description + "DHCPV6 Rebind packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container release { + description + "DHCPV6 Release packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container reconfig { + description + "DHCPV6 Reconfig packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container inform { + description + "DHCPV6 Inform packets"; + uses DHCPV6-CLIENT-PACKET-STATS-BAG; + } + container init { + description + "DHCPV6 Init timer"; + uses DHCPV6-CLIENT-TIMER-STATS-BAG; + } + container vbind { + description + "DHCPV6 Vbind timer"; + uses DHCPV6-CLIENT-TIMER-STATS-BAG; + } + container t1 { + description + "DHCPV6 T1 timer"; + uses DHCPV6-CLIENT-TIMER-STATS-BAG; + } + container t2 { + description + "DHCPV6 T2 timer"; + uses DHCPV6-CLIENT-TIMER-STATS-BAG; + } + container retrans { + description + "DHCPV6 Retrans timer"; + uses DHCPV6-CLIENT-TIMER-STATS-BAG; + } + container valid { + description + "DHCPV6 Valid timer"; + uses DHCPV6-CLIENT-TIMER-STATS-BAG; + } + leaf interface-name-xr { + type string; + description + "Dhcpv6 Client interface name"; + } + leaf vrfid { + type Rsi-vrf-id; + description + "VRF ID"; + } + } + + grouping DHCPV6-CLIENT-IA-ADDR-BAG { + description + "Dhcpv6 Client IA Address Information"; + leaf ia-na-address { + type string; + description + "Dhcpv6 IA NA Address"; + } + leaf preferred-time { + type uint32; + description + "Dhcpv6 IA NA Preferred Time"; + } + leaf valid-time { + type uint32; + description + "Dhcpv6 IA NA Valid Time"; + } + leaf flags { + type uint32; + description + "Dhcpv6 IA NA Flags"; + } + } + + grouping DHCPV6-CLIENT-IA-NA-BAG { + description + "Dhcpv6 Client IA NA Information"; + leaf status { + type int32; + description + "Dhcpv6 IA NA Status"; + } + leaf iaid { + type uint32; + description + "Dhcpv6 IA NA IAID"; + } + leaf t1 { + type uint32; + description + "Dhcpv6 IA NA T1"; + } + leaf t2 { + type uint32; + description + "Dhcpv6 IA NA T2"; + } + list ia-address { + description + "Dhcpv6 IA Address Information"; + uses DHCPV6-CLIENT-IA-ADDR-BAG; + } + } + + grouping DHCPV6-CLIENT-SERVER-BAG { + description + "Dhcpv6 Server Information"; + leaf server-address { + type string; + description + "Dhcpv6 Server address"; + } + leaf preference { + type uint8; + description + "Dhcpv6 Server Preference"; + } + leaf duid { + type string; + description + "Dhcpv6 Server DUID"; + } + leaf status { + type int32; + description + "Dhcpv6 Server Status"; + } + list ia-na { + description + "Dhcpv6 IA NA Information"; + uses DHCPV6-CLIENT-IA-NA-BAG; + } + } + + grouping DHCPV6-CLIENT-CFG-OPTIONS-BAG { + description + "Dhcpv6 Client Options Configuration"; + leaf type { + type Bag-dhcpv6-client-option; + description + "Dhcpv6 Client Option Type"; + } + leaf value { + type string; + description + "Dhcpv6 Client Option Value"; + } + } + + grouping DHCPV6-CLIENT-CFG-TIMERS-BAG { + description + "Dhcpv6 Client Timers Configuration"; + leaf type { + type Bag-dhcpv6-client-cfg-timer; + description + "Dhcpv6 Client Timer Type"; + } + leaf value { + type uint32; + description + "Dhcpv6 Client Timer Value"; + } + } + + grouping DHCPV6-CLIENT-CFG-BAG { + description + "Dhcpv6 Client Configuration"; + leaf duid-type { + type Bag-duid; + description + "Dhcpv6 Client Duid Type Configuration"; + } + list timer { + description + "Dhcpv6 Client Timers Configuration"; + uses DHCPV6-CLIENT-CFG-TIMERS-BAG; + } + list option { + description + "Dhcpv6 Client Options Configuration"; + uses DHCPV6-CLIENT-CFG-OPTIONS-BAG; + } + } + + grouping DHCPV6-CLIENT-EDM-BAG { + description + "ipv6 dhcp client"; + container client-config { + description + "Dhcpv6 Client Configuration"; + uses DHCPV6-CLIENT-CFG-BAG; + } + leaf interface-name-xr { + type string; + description + "Dhcpv6 Client interface name"; + } + leaf mac-address { + type yang:mac-address; + description + "Dhcpv6 Client mac address"; + } + leaf vrfid { + type Rsi-vrf-id; + description + "VRF ID"; + } + leaf table-id { + type Rsi-tbl-id; + description + "VRF Table Id"; + } + leaf local-address { + type string; + description + "IPV6 Link local address"; + } + leaf global-address { + type string; + description + "Dhcpv6 IPV6 Global address"; + } + leaf prefix-len { + type uint8; + description + "Dhcpv6 Address Prefix Length"; + } + leaf client-state { + type Bag-dhcpv6-client-state; + description + "Dhcpv6 Client State"; + } + leaf ipv6-renew-time { + type uint32; + description + "Dhcpv6 Client Renew time"; + } + leaf ipv6-rebind-time { + type uint32; + description + "Dhcpv6 Client Rebind time"; + } + leaf ipv6-valid-time { + type uint32; + description + "Dhcpv6 Client Valid time"; + } + leaf lease-remain { + type string; + description + "Dhcpv6 Client Lease time remaining"; + } + leaf duid { + type string; + description + "Dhcpv6 Client duid"; + } + list server-info { + description + "Dhcpv6 Server Information"; + uses DHCPV6-CLIENT-SERVER-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper.yang new file mode 100644 index 000000000..6df1736ea --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper.yang @@ -0,0 +1,130 @@ +module Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper"; + prefix ipv6-new-dhcpv6d-client-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv6-new-dhcpv6d-client-oper-sub1 { + revision-date 2020-09-17; + } + + 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 ipv6-new-dhcpv6d-client package operational data. + + This module contains definitions + for the following management objects: + dhcpv6-client: DHCPv6 client operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-17 { + description + "Added prefix-len option for dhcpv6 client"; + semver:module-version "1.1.0"; + } + revision 2019-11-16 { + description + "Added Support for DHCPv6 Client."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dhcpv6-client { + config false; + description + "DHCPv6 client operational data"; + container interfaces { + description + "DHCPv6 client particular interface name"; + list interface { + key "interface-name"; + description + "Interface name"; + container ipv6-binding { + description + "Single DHCPv6 client binding"; + uses DHCPV6-CLIENT-EDM-BAG; + } + container ipv6-statistics { + description + "DHCPv6 client binding statistics"; + uses DHCPV6-CLIENT-EDM-STATS-BAG; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + container nodes { + description + "DHCPv6 client list of nodes"; + list node { + key "node-name"; + description + "DHCPv6 client particular node name"; + container clients { + description + "DHCPv6 client table"; + list client { + key "interface-name"; + description + "Single DHCPv6 client binding"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses DHCPV6-CLIENT-EDM-BAG; + } + } + container client-stats { + description + "DHCPv6 client statistics table"; + list client-stat { + key "interface-name"; + description + "DHCPv6 client binding statistics"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses DHCPV6-CLIENT-EDM-STATS-BAG; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1.yang new file mode 100644 index 000000000..2bb148db3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1.yang @@ -0,0 +1,2101 @@ +submodule Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-new-dhcpv6d-oper { + prefix Cisco-IOS-XR-ipv6-new-dhcpv6d-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-new-dhcpv6d package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-08 { + description + "Fixed oper for dhcp statistics and binding. + 2022-04-06 + taking out statistics data under relay node as it is not supported since day-1 + 2021-10-05 + Migrated LEAF-LIST with duplicate value to LIST type."; + semver:module-version "4.0.0"; + } + revision 2021-09-14 { + description + "Fixed GET-OPER to display interface name in standard format."; + semver:module-version "3.0.0"; + } + revision 2021-03-19 { + description + "Added support for dynamic relay MAC address handling. + 2020-12-20 + Added Yang Support for ADT,to retrive statistcs with help of vrf/interface. + 2020-09-30 + Modified to accommodate cdm changes + 2020-09-29 + Added support to track server that allocated IP for DHCPv6 relay client."; + semver:module-version "2.1.0"; + } + revision 2019-12-18 { + description + "Added IPv6 ND support"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-10-09 { + description + "Added dhcpv6 server disconnect-history class"; + } + revision 2018-09-17 { + description + "Added dhcpv6 proxy disconnect-history class"; + } + revision 2017-12-06 { + description + "Added proxy class and server class oper for class and server profile"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bag-dhcpv6d-fsm-state { + type enumeration { + enum "server-initializing" { + value 0; + description + "Server initializing state for client binding"; + } + enum "server-waiting-dpm" { + value 1; + description + "Server waiting on DPM to validate subscriber"; + } + enum "server-waiting-daps" { + value 2; + description + "Server waiting on DAPS to assign/free + addr/prefix"; + } + enum "server-waiting-client" { + value 3; + description + "Server waiting for a request from the client"; + } + enum "server-waiting-subscriber" { + value 4; + description + "Server waiting for iedge response for the + session"; + } + enum "server-waiting-rib" { + value 5; + description + "Server waiting for RIB response for route add"; + } + enum "server-bound-client" { + value 6; + description + "Server bound state to the client"; + } + enum "proxy-initializing" { + value 10; + description + "Proxy initializing state for client binding"; + } + enum "proxy-waiting-dpm" { + value 11; + description + "Proxy waiting on DPM to validate subscriber"; + } + enum "proxy-waiting-daps" { + value 12; + description + "Proxy waiting on DAPS to assign/free prefix(ND)"; + } + enum "proxy-waiting-client-server" { + value 13; + description + "Proxy waiting for a msg from the client/srv"; + } + enum "proxy-waiting-subscriber" { + value 14; + description + "Proxy waiting on iedge to sub session resp"; + } + enum "proxy-waiting-rib" { + value 15; + description + "Proxy waiting on RIB response"; + } + enum "proxy-bound-client" { + value 16; + description + "Proxy bound state to the client"; + } + } + description + "Bag dhcpv6d fsm state"; + } + + typedef Bag-dhcpv6d-ia-id { + type enumeration { + enum "iana" { + value 0; + description + "Non-temporary Addresses assigned "; + } + enum "iapd" { + value 1; + description + "Prefix delegeated to client "; + } + enum "iata" { + value 2; + description + "Temporary Addresses - not supported "; + } + } + description + "Bag dhcpv6d ia id"; + } + + typedef Bag-dhcpv6d-intf-serg-role { + type enumeration { + enum "none" { + value 0; + description + "DHCPv6 Interface SERG role NONE"; + } + enum "master" { + value 1; + description + "DHCPv6 Interface SERG role Master"; + } + enum "slave" { + value 2; + description + "DHCPv6 Interface SERG role Slave"; + } + } + description + "Bag dhcpv6d intf serg role"; + } + + typedef Bag-dhcpv6d-intf-srg-role { + type enumeration { + enum "none" { + value 0; + description + "DHCPv6 Interface SRG role NONE"; + } + enum "master" { + value 1; + description + "DHCPv6 Interface SRG role Master"; + } + enum "slave" { + value 2; + description + "DHCPv6 Interface SRG role Slave"; + } + } + description + "Bag dhcpv6d intf srg role"; + } + + typedef Lease-limit { + type enumeration { + enum "none" { + description + "Lease limit type none"; + } + enum "interface" { + description + "Lease limit type interface"; + } + enum "circuit-id" { + description + "Lease limit type circuit ID"; + } + enum "remote-id" { + description + "Lease limit type remote ID"; + } + } + description + "Profile lease limit type"; + } + + typedef Bag-dhcpv6d-sub-mode { + type enumeration { + enum "base" { + value 0; + description + "DHCPv6 Base mode"; + } + enum "server" { + value 1; + description + "DHCPv6 Server mode"; + } + enum "proxy" { + value 2; + description + "DHCPv6 Proxy mode"; + } + } + description + "Bag dhcpv6d sub mode"; + } + + typedef String-ifname { + type string { + length "0..65"; + } + description + "String ifname"; + } + + typedef String-vrf { + type string { + length "0..33"; + } + description + "String vrf"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Dhcpv6-issu-version { + type enumeration { + enum "version1" { + value 1; + description + "Version 1"; + } + enum "version2" { + value 2; + description + "Version 2"; + } + } + description + "Dhcpv6 issu version"; + } + + typedef Dhcp-issu-phase { + type enumeration { + enum "phase-not-started" { + value 0; + description + "An ISSU event has not started"; + } + enum "phase-load" { + value 1; + description + "ISSU Load Phase"; + } + enum "phase-run" { + value 2; + description + "ISSU Run Phase"; + } + enum "phase-completed" { + value 3; + description + "An ISSU event has completed successfully"; + } + enum "phase-aborted" { + value 4; + description + "An ISSU event has aborted"; + } + } + description + "Dhcp issu phase"; + } + + typedef Dhcpv6-issu-role { + type enumeration { + enum "role-primary" { + value 0; + description + "Primary role"; + } + enum "role-secondary" { + value 1; + description + "Secondary role"; + } + } + description + "Dhcpv6 issu role"; + } + + grouping IPV6-DHCPV6D-RELAY-ROUTE-BINDING { + description + "DHCPv6 relay route entry"; + leaf duid { + type string; + description + "Client DUID"; + } + leaf client-id-xr { + type uint32; + description + "Client unique identifier"; + } + leaf prefix-length { + type uint8; + description + "length of prefix"; + } + leaf prefix { + type Ipv6-address; + description + "DHCPV6 IPv6 Prefix allotted to client"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCPv6 client/subscriber Vrf name"; + } + leaf lifetime { + type uint32; + description + "Client route lifetime"; + } + leaf rem-life-time { + type uint32; + description + "Client route remaining lifetime"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + leaf next-hop-addr { + type Ipv6-address; + description + "Next hop is our address"; + } + leaf server { + type Ipv6-address; + description + "DHCPV6 Server which allotted IP to client"; + } + leaf ia-id { + type uint32; + description + "IA_ID of this IA"; + } + leaf relay-profile-name { + type string { + length "0..65"; + } + description + "Relay Profile name"; + } + leaf l2-intf-ac-name { + type string { + length "0..65"; + } + description + "L2Intf AC Name"; + } + leaf ifname { + type string { + length "0..65"; + } + description + "DHCP access interface"; + } + leaf serg-state { + type uint32; + description + "DHCPV6 SERG state"; + } + leaf serg-intf-role { + type uint32; + description + "DHCPV6 SERG Intf Role"; + } + } + + grouping IPV6-DHCPV6D-RELAY-BINDINGS-SUMMARY { + description + "DHCPv6 relay binding summary"; + leaf clients { + type uint32; + description + "Total number of clients"; + } + } + + grouping IPV6-DHCPV6D-SERVER-BINDING-OPTIONS { + description + "DHCPv6 server binding inserted option values"; + leaf mac-address-xr { + type string; + description + "Client MAC address"; + } + leaf duid-xr { + type string; + description + "Client DUID"; + } + leaf dns-count { + type uint8; + description + "DNS address count"; + } + leaf opt17 { + type string; + description + "Client Option 17 value"; + } + list dns-address { + max-elements "8"; + description + "DNS addresses"; + leaf entry { + type Ipv6-address; + description + "DNS addresses"; + } + } + } + + grouping IPV6-DHCPV6D-SERVER-INTERFACE { + description + "DHCPv6 server interface"; + leaf server-vrf-name { + type string { + length "0..33"; + } + description + "VRF name"; + } + leaf server-interface-mode { + type Bag-dhcpv6d-sub-mode; + description + "Mode of interface"; + } + leaf is-server-interface-ambiguous { + type uint32; + description + "Is interface ambiguous"; + } + leaf server-interface-profile-name { + type string { + length "0..65"; + } + description + "Name of profile attached to the interface"; + } + leaf server-interface-lease-limit-type { + type Lease-limit; + description + "Lease limit type on interface"; + } + leaf server-interface-lease-limits { + type uint32; + description + "Lease limit count on interface"; + } + leaf srg-role { + type Bag-dhcpv6d-intf-srg-role; + description + "DHCPv6 Interface SRG role"; + } + leaf serg-role { + type Bag-dhcpv6d-intf-serg-role; + description + "DHCPv6 Interface SERG role"; + } + leaf mac-throttle { + type boolean; + description + "Mac Throttle Status"; + } + leaf srg-vrf-name { + type string { + length "0..33"; + } + description + "SRG VRF name"; + } + leaf srgp2p { + type boolean; + description + "SRG P2P Status"; + } + } + + grouping IPV6-DHCPV6D-SERVER-PROFILE-CLASS { + description + "DHCPv6 server profile class parameters"; + leaf class-name-xr { + type string { + length "0..65"; + } + description + "Class name"; + } + leaf domain-name { + type string { + length "0..65"; + } + description + "Server domain name"; + } + leaf profile-dns { + type uint8; + description + "DNS address count"; + } + leaf framed-addr-pool-name { + type string { + length "0..65"; + } + description + "Server framed address pool name"; + } + leaf delegated-prefix-pool-name { + type string { + length "0..65"; + } + description + "Server delegated prefix pool name"; + } + list profile-dns-address { + max-elements "8"; + description + "DNS addresses"; + leaf entry { + type Ipv6-address; + description + "DNS addresses"; + } + } + } + + grouping IPV6-DHCPV6D-SERVER-INTERFACE-REFERENCE { + description + "DHCPv6 server profile reference"; + list ipv6-dhcpv6d-server-interface-reference { + description + "ipv6 dhcpv6d server interface reference"; + leaf server-reference-interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + } + } + + grouping TIME-BAG { + description + "Time in diffrent formats"; + leaf seconds { + type uint32; + units "second"; + description + "DHCPV6 client lease in seconds"; + } + leaf time { + type string { + length "0..10"; + } + description + "Time in format HH:MM:SS"; + } + } + + grouping IPV6-DHCPV6D-SERVER-PROFILE { + description + "DHCPv6 server profile parameters"; + container lease { + description + "Server lease time"; + uses TIME-BAG; + } + container interface-references { + description + "Interface references"; + uses IPV6-DHCPV6D-SERVER-INTERFACE-REFERENCE; + } + leaf profile-name { + type string { + length "0..65"; + } + description + "Server profile name"; + } + leaf profile-allowed-duid-type { + type uint16; + description + "Allowed DUID Type"; + } + leaf domain-name { + type string { + length "0..65"; + } + description + "Server domain name"; + } + leaf profile-dns { + type uint8; + description + "DNS address count"; + } + leaf aftr-name { + type string { + length "0..65"; + } + description + "Server aftr name"; + } + leaf framed-addr-pool-name { + type string { + length "0..65"; + } + description + "Server framed address pool name"; + } + leaf delegated-prefix-pool-name { + type string { + length "0..65"; + } + description + "Server delegated prefix pool name"; + } + leaf rapid-commit { + type boolean; + description + "Rapid Commit"; + } + leaf per-vlan-intf-sess-limit-enable { + type boolean; + description + "Session Limit"; + } + leaf dynamic-relay-mac-addr { + type boolean; + description + "Dynamce Relay Mac Addr"; + } + list profile-dns-address { + max-elements "8"; + description + "DNS addresses"; + leaf entry { + type Ipv6-address; + description + "DNS addresses"; + } + } + } + + grouping IPV6-DHCPV6D-SERVER-STATS { + description + "DHCPv6 server statistics"; + list ipv6-dhcpv6d-server-stat { + description + "ipv6 dhcpv6d server stat"; + container statistics { + description + "Server statistics"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCPv6 L3 VRF name"; + } + } + } + + grouping IPV6-DHCPV6D-SERVER-BINDING { + description + "DHCPv6 server binding entry"; + container ia-id-pd { + description + "List of DHCPv6 IA_ID/PDs"; + uses BAG-DHCPV6D-IA-ID-PD-INFO; + } + leaf duid { + type string; + description + "Client DUID"; + } + leaf client-id-xr { + type uint32; + description + "Client unique identifier"; + } + leaf client-flag { + type uint32; + description + "DHCPV6 client flag"; + } + leaf subscriber-label { + type uint32; + description + "DHCPV6 subscriber label"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCPVV6 client/subscriber VRF name"; + } + leaf mac-address { + type string; + description + "Client MAC address"; + } + leaf ia-id-p-ds { + type uint32; + description + "Number of ia_id/pd"; + } + leaf link-local-address { + type Ipv6-address; + description + "DHCPV6 IPv6 client link local address"; + } + leaf interface-name { + type xr:Interface-name; + description + "DHCPV6 access interface to client"; + } + leaf access-vrf-name { + type string { + length "0..33"; + } + description + "DHCPV6 access VRF name to client"; + } + leaf server-binding-tags { + type uint8; + description + "DHCPV6 VLAN tag count"; + } + leaf server-binding-outer-tag { + type uint32; + description + "DHCPV6 VLAN Outer VLAN"; + } + leaf server-binding-inner-tag { + type uint32; + description + "DHCPV6 VLAN Inner VLAN"; + } + leaf pool-name { + type string { + length "0..64"; + } + description + "DHCPV6 pool name"; + } + leaf profile-name { + type string { + length "0..64"; + } + description + "DHCPV6 profile name"; + } + leaf seleceted-profile-name { + type string { + length "0..64"; + } + description + "DHCPV6 selected profile name"; + } + leaf framed-ipv6-prefix { + type Ipv6-address; + description + "DHCPV6 framed ipv6 addess used by ND"; + } + leaf framed-prefix-length { + type uint8; + description + "DHCPV6 framed ipv6 prefix length used by ND"; + } + leaf class-name { + type string { + length "0..64"; + } + description + "DHCPV6 class name"; + } + leaf rx-remote-id { + type string { + length "0..771"; + } + description + "DHCPV6 received Remote ID"; + } + leaf rx-interface-id { + type string { + length "0..771"; + } + description + "DHCPV6 received Interface ID"; + } + leaf prefix-pool-name { + type string { + length "0..64"; + } + description + "DHCPV6 server prefix pool name"; + } + leaf address-pool-name { + type string { + length "0..64"; + } + description + "DHCPV6 server address pool name"; + } + leaf dns-server-count { + type uint32; + description + "DNS server count"; + } + leaf is-nak-next-renew { + type boolean; + description + "Is true if DHCPv6 next renew from client will be + NAK'd"; + } + leaf srg-state { + type uint32; + description + "DHCPV6 SRG state"; + } + leaf srg-intf-role { + type uint32; + description + "DHCPV6 SRG Intf Role"; + } + leaf srgp2p { + type boolean; + description + "SRG P2P Status"; + } + leaf srg-vrf-name { + type string { + length "0..33"; + } + description + "DHCPV6 SRG VRF NAME"; + } + leaf srg-group-id { + type uint16; + description + "srg group id"; + } + leaf sesrg-state { + type uint32; + description + "DHCPV6 SERG state"; + } + leaf serg-intf-role { + type uint32; + description + "DHCPV6 SERG Intf Role"; + } + } + + grouping BAG-DHCPV6D-SERVER-BINDINGS-SUMMARY { + description + "DHCPv6 server bindings summary for IANA/IAPD"; + leaf initializing-clients { + type uint32; + description + "Number of clients in init state"; + } + leaf dpm-waiting-clients { + type uint32; + description + "Number of clients waiting on DPM to validate + subscriber"; + } + leaf daps-waiting-clients { + type uint32; + description + "Number of clients waiting on DAPS to assign/free + addr/prefix"; + } + leaf request-waiting-clients { + type uint32; + description + "Number of clients waiting for a request from the + client"; + } + leaf iedge-waiting-clients { + type uint32; + description + "Number of clients waiting for iedge for the + session"; + } + leaf rib-waiting-clients { + type uint32; + description + "Number of clients in waiting for RIB response"; + } + leaf bound-clients { + type uint32; + description + "Number of clients in bound state"; + } + } + + grouping IPV6-DHCPV6D-SERVER-BINDINGS-SUMMARY { + description + "DHCPv6 server bindings summary"; + container iana { + description + "IANA server binding summary"; + uses BAG-DHCPV6D-SERVER-BINDINGS-SUMMARY; + } + container iapd { + description + "IAPD server binding summary"; + uses BAG-DHCPV6D-SERVER-BINDINGS-SUMMARY; + } + leaf clients { + type uint32; + description + "Total number of clients"; + } + } + + grouping IPV6-DHCPV6D-BASE-BINDING { + description + "DHCPV6 base binding entry"; + leaf mac-address { + type string; + description + "DHCPV6 client MAC address"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCPV6 client/subscriber VRF name"; + } + leaf server-vrf-name { + type string { + length "0..33"; + } + description + "DHCPV6 server VRF name"; + } + leaf ipv6-address { + type Ipv6-address; + description + "DHCPV6 IPv6 address"; + } + leaf server-ipv6-address { + type Ipv6-address; + description + "DHCPV6 server IPv6 address"; + } + leaf reply-server-ipv6-address { + type Ipv6-address; + description + "DHCPV6 reply server IPv6 address"; + } + leaf lease-time { + type uint32; + units "second"; + description + "Lease time in seconds"; + } + leaf remaining-lease-time { + type uint32; + units "second"; + description + "Remaining lease time in seconds"; + } + leaf state { + type Bag-dhcpv6d-fsm-state; + description + "DHCPV6 client state"; + } + leaf interface-name { + type xr:Interface-name; + description + "DHCPV6 access interface to client"; + } + leaf access-vrf-name { + type string { + length "0..33"; + } + description + "DHCPV6 access interface VRF name"; + } + leaf base-binding-tags { + type uint8; + description + "DHCPV6 VLAN tag count"; + } + leaf base-binding-outer-tag { + type uint32; + description + "DHCPV6 VLAN Outer VLAN"; + } + leaf base-binding-inner-tag { + type uint32; + description + "DHCPV6 VLAN Inner VLAN"; + } + leaf profile-name { + type string { + length "0..64"; + } + description + "DHCPV6 profile name"; + } + leaf is-nak-next-renew { + type boolean; + description + "Is true if DHCPV6 next renew from client will be + NAK'd"; + } + leaf subscriber-label { + type uint32; + description + "DHCPV6 subscriber label"; + } + leaf old-subscriber-label { + type uint32; + description + "DHCPV6 old subscriber label"; + } + leaf rx-client-duid { + type string { + length "0..771"; + } + description + "DHCPV6 received client DUID"; + } + leaf tx-client-uid { + type string { + length "0..771"; + } + description + "DHCPV6 transmitted client DUID"; + } + leaf rx-remote-id { + type string { + length "0..771"; + } + description + "DHCPV6 received Remote ID"; + } + leaf tx-remote-id { + type string { + length "0..771"; + } + description + "DHCPV6 transmitted Remote ID"; + } + leaf rx-interface-id { + type string { + length "0..771"; + } + description + "DHCPV6 received Interface ID"; + } + leaf tx-interface-id { + type string { + length "0..771"; + } + description + "DHCPV6 transmitted Interface ID"; + } + } + + grouping IPV6-DHCPD-DATABASE { + description + "IPv6 DHCP database"; + leaf configured { + type boolean; + description + "Database feature configured"; + } + leaf version { + type uint32; + description + "Current file version"; + } + leaf full-file-write-interval { + type uint32; + units "minute"; + description + "Full file write interval in minutes"; + } + leaf last-full-write-file-name { + type string { + length "0..64"; + } + description + "Last full write file name"; + } + leaf last-full-write-time { + type uint32; + description + "Last full write time since epoch"; + } + leaf full-file-write-count { + type uint32; + description + "Full file write count"; + } + leaf failed-full-file-write-count { + type uint32; + description + "Failed full file write count"; + } + leaf full-file-record-count { + type uint32; + description + "Full file record count"; + } + leaf last-full-file-write-error-timestamp { + type uint32; + description + "Last full file write error timestamp since epoch"; + } + leaf incremental-file-write-interval { + type uint32; + units "minute"; + description + "Incremental file write interval in minutes"; + } + leaf last-incremental-write-file-name { + type string { + length "0..64"; + } + description + "Last incremental write file name"; + } + leaf last-incremental-write-time { + type uint32; + description + "Last incremental write time since epoch"; + } + leaf incremental-file-write-count { + type uint32; + description + "Incremental file write count"; + } + leaf failed-incremental-file-write-count { + type uint32; + description + "Failed incremental file write count"; + } + leaf incremental-file-record-count { + type uint32; + description + "Incremental file record count"; + } + leaf last-incremental-file-write-error-timestamp { + type uint32; + description + "Last incremental file write error timestamp + since epoch"; + } + } + + grouping BAG-DHCPV6D-PROXY-BINDINGS-SUMMARY { + description + "DHCPv6 proxy bindings summary for IANA/IAPD"; + leaf initializing-clients { + type uint32; + description + "Number of clients in init state"; + } + leaf dpm-waiting-clients { + type uint32; + description + "Number of clients waiting on DPM to validate + subscriber"; + } + leaf daps-waiting-clients { + type uint32; + description + "Number of clients waiting on DAPS to assign/free + prefix(ND)"; + } + leaf msg-waiting-clients { + type uint32; + description + "Number of clients waiting for a message from the + client/server"; + } + leaf iedge-waiting-clients { + type uint32; + description + "Number of clients waiting on iedge to subscriber + session"; + } + leaf rib-waiting-clients { + type uint32; + description + "Number of clients in waiting on RIB response"; + } + leaf bound-clients { + type uint32; + description + "Number of clients in bound state"; + } + } + + grouping IPV6-DHCPV6D-PROXY-BINDINGS-SUMMARY { + description + "DHCPv6 proxy bindings summary"; + container iana { + description + "IANA proxy binding summary"; + uses BAG-DHCPV6D-PROXY-BINDINGS-SUMMARY; + } + container iapd { + description + "IAPD proxy binding summary"; + uses BAG-DHCPV6D-PROXY-BINDINGS-SUMMARY; + } + leaf clients { + type uint32; + description + "Total number of clients"; + } + } + + grouping BAG-DHCPV6D-ADDR-ATTRB { + description + "BAG DHCPV6D ADDR ATTRB"; + list bag-dhcpv6d-addr-attrb { + description + "bag dhcpv6d addr attrb"; + leaf prefix { + type inet:ipv6-address; + description + "IPv6 prefix"; + } + leaf prefix-length { + type uint8; + description + "Prefix length"; + } + leaf lease-time { + type uint32; + units "second"; + description + "Lease time in seconds"; + } + leaf remaining-lease-time { + type uint32; + units "second"; + description + "Remaining lease time in seconds"; + } + } + } + + grouping BAG-DHCPV6D-IA-ID-PD-INFO { + description + "BAG DHCPV6D IA ID PD INFO"; + list bag-dhcpv6d-ia-id-pd-info { + description + "bag dhcpv6d ia id pd info"; + container addresses { + description + "List of addresses in this IA"; + uses BAG-DHCPV6D-ADDR-ATTRB; + } + leaf ia-type { + type Bag-dhcpv6d-ia-id; + description + "IA type"; + } + leaf ia-id { + type uint32; + description + "IA_ID of this IA"; + } + leaf flags { + type uint32; + description + "FSM Flag for this IA"; + } + leaf total-address { + type uint16; + description + "Total address in this IA"; + } + leaf state { + type Bag-dhcpv6d-fsm-state; + description + "State"; + } + } + } + + grouping IPV6-DHCPV6D-PROXY-BINDING { + description + "DHCPv6 proxy binding entry"; + container ia-id-pd { + description + "List of DHCPv6 IA_ID/PDs"; + uses BAG-DHCPV6D-IA-ID-PD-INFO; + } + leaf duid { + type string; + description + "Client DUID"; + } + leaf client-flag { + type uint32; + description + "DHCPV6 client flag"; + } + leaf subscriber-label { + type uint32; + description + "DHCPV6 subscriber label"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCPVV6 client/subscriber VRF name"; + } + leaf mac-address { + type string; + description + "Client MAC address"; + } + leaf ia-id-p-ds { + type uint32; + description + "Number of ia_id/pd"; + } + leaf interface-name { + type xr:Interface-name; + description + "DHCPV6 access interface to client"; + } + leaf access-vrf-name { + type string { + length "0..33"; + } + description + "DHCPV6 access VRF name to client"; + } + leaf proxy-binding-tags { + type uint8; + description + "DHCPV6 VLAN tag count"; + } + leaf proxy-binding-outer-tag { + type uint32; + description + "DHCPV6 VLAN Outer VLAN"; + } + leaf proxy-binding-inner-tag { + type uint32; + description + "DHCPV6 VLAN Inner VLAN"; + } + leaf class-name { + type string { + length "0..64"; + } + description + "DHCPV6 class name"; + } + leaf pool-name { + type string { + length "0..64"; + } + description + "DHCPV6 pool name"; + } + leaf rx-remote-id { + type string { + length "0..771"; + } + description + "DHCPV6 received Remote ID"; + } + leaf tx-remote-id { + type string { + length "0..771"; + } + description + "DHCPV6 transmitted Remote ID"; + } + leaf rx-interface-id { + type string { + length "0..771"; + } + description + "DHCPV6 received Interface ID"; + } + leaf tx-interface-id { + type string { + length "0..771"; + } + description + "DHCPV6 transmitted Interface ID"; + } + leaf server-ipv6-address { + type Ipv6-address; + description + "DHCPV6 server IPv6 address"; + } + leaf profile-name { + type string { + length "0..65"; + } + description + "DHCPV6 profile name"; + } + leaf selected-profile-name { + type string { + length "0..65"; + } + description + "DHCPV6 selected profile name"; + } + leaf framed-ipv6-prefix { + type Ipv6-address; + description + "DHCPV6 framed ipv6 addess used by ND"; + } + leaf framed-prefix-length { + type uint8; + description + "DHCPV6 framed ipv6 prefix length used by ND"; + } + leaf is-nak-next-renew { + type boolean; + description + "Is true if DHCP next renew from client will be + NAK'd"; + } + leaf srg-state { + type uint32; + description + "DHCPV6 SRG state"; + } + leaf srg-intf-role { + type uint32; + description + "DHCPV6 SRG Intf Role"; + } + leaf srgp2p { + type boolean; + description + "SRG P2P Status"; + } + leaf srg-vrf-name { + type string { + length "0..33"; + } + description + "DHCPV6 SRG VRF NAME"; + } + leaf srg-group-id { + type uint16; + description + "srg group id"; + } + leaf serg-state { + type uint32; + description + "DHCPV6 SERG state"; + } + leaf serg-intf-role { + type uint32; + description + "DHCPV6 SERG Intf Role"; + } + } + + grouping IPV6-DHCPV6D-PROXY-STATS { + description + "DHCPv6 proxy statistics"; + list ipv6-dhcpv6d-proxy-stat { + description + "ipv6 dhcpv6d proxy stat"; + container statistics { + description + "Proxy statistics"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "DHCPv6 L3 VRF name"; + } + } + } + + grouping IPV6-DHCPV6D-VRF-INTF-STATS { + description + "DHCPv6 interface statistics"; + container packet-info { + description + "Packet Information"; + uses IPV6-DHCPV6D-TYPE; + } + leaf vrf-name-xr { + type string { + length "0..33"; + } + description + "DHCPv6 L3 VRF name"; + } + leaf interface-name-xr { + type string { + length "0..65"; + } + description + "DHCPv6 L3 Interface name"; + } + } + + grouping IPV6-DHCPV6D-PROXY-INTERFACE { + description + "DHCPv6 proxy interface"; + leaf proxy-vrf-name { + type string { + length "0..33"; + } + description + "VRF name"; + } + leaf proxy-interface-mode { + type Bag-dhcpv6d-sub-mode; + description + "Mode of interface"; + } + leaf is-proxy-interface-ambiguous { + type uint32; + description + "Is interface ambiguous"; + } + leaf proxy-interface-profile-name { + type string { + length "0..65"; + } + description + "Name of profile attached to the interface"; + } + leaf proxy-interface-lease-limit-type { + type Lease-limit; + description + "Lease limit type on interface"; + } + leaf proxy-interface-lease-limits { + type uint32; + description + "Lease limit count on interface"; + } + leaf srg-role { + type Bag-dhcpv6d-intf-srg-role; + description + "DHCPv6 Interface SRG role"; + } + leaf serg-role { + type Bag-dhcpv6d-intf-serg-role; + description + "DHCPv6 Interface SERG role"; + } + leaf mac-throttle { + type boolean; + description + "Mac Throttle Status"; + } + leaf srg-vrf-name { + type string { + length "0..33"; + } + description + "SRG VRF name"; + } + leaf srgp2p { + type boolean; + description + "SRG P2P Status"; + } + } + + grouping IPV6-DHCPV6D-DISC-HISTORY { + description + "DHCP IPv6 disconnect history entry"; + leaf session-start-time-epoch { + type uint64; + description + "session start time epoch"; + } + leaf session-end-time-epoch { + type uint64; + description + "session end time epoch"; + } + leaf disc-reason { + type string { + length "0..256"; + } + description + "DiscReason"; + } + leaf sub-label { + type uint32; + description + "sub label"; + } + leaf duid { + type string { + length "0..131"; + } + description + "Client DUID"; + } + leaf ia-type { + type string { + length "0..6"; + } + description + "IAType"; + } + leaf ia-id { + type uint32; + description + "ia id"; + } + leaf mac-address { + type string { + length "0..17"; + } + description + "MACAddress"; + } + } + + grouping IPV6-DHCPV6D-PROXY-INTERFACE-REFERENCE { + description + "DHCPv6 proxy profile reference"; + list ipv6-dhcpv6d-proxy-interface-reference { + description + "ipv6 dhcpv6d proxy interface reference"; + leaf proxy-reference-interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + } + } + + grouping IPV6-DHCPV6D-PROXY-VRF-REFERENCE { + description + "DHCPv6 proxy profile reference"; + list ipv6-dhcpv6d-proxy-vrf-reference { + description + "ipv6 dhcpv6d proxy vrf reference"; + leaf proxy-reference-vrf-name { + type string { + length "0..33"; + } + description + "VRF name"; + } + } + } + + grouping IPV6-DHCPV6D-PROXY-IID-REFERENCE { + description + "DHCPv6 proxy profile iid reference"; + list ipv6-dhcpv6d-proxy-iid-reference { + description + "ipv6 dhcpv6d proxy iid reference"; + leaf proxy-iid-interface-name { + type string { + length "0..65"; + } + description + "Interface name for interface id"; + } + leaf proxy-interface-id { + type string { + length "0..257"; + } + description + "Interface id"; + } + } + } + + grouping IPV6-DHCPV6D-PROXY-PROFILE { + description + "DHCPv6 proxy profile parameters"; + container interface-id-references { + description + "Interface id references"; + uses IPV6-DHCPV6D-PROXY-IID-REFERENCE; + } + container vrf-references { + description + "VRF references"; + uses IPV6-DHCPV6D-PROXY-VRF-REFERENCE; + } + container interface-references { + description + "Interface references"; + uses IPV6-DHCPV6D-PROXY-INTERFACE-REFERENCE; + } + leaf profile-name { + type string { + length "0..65"; + } + description + "Proxy profile name"; + } + leaf remote-id { + type string { + length "0..257"; + } + description + "Remote id"; + } + leaf profile-link-address { + type Ipv6-address; + description + "Link address"; + } + leaf proxy-profile-linkaddress-from-ra-enable { + type boolean; + description + "LinkAddress From RA mesage"; + } + leaf-list vrf-name { + type String-vrf; + max-elements "8"; + description + "VRF names"; + } + leaf-list interface-name { + type String-ifname; + max-elements "8"; + description + "Interface names"; + } + list profile-helper-address { + max-elements "8"; + description + "Helper addresses"; + leaf entry { + type Ipv6-address; + description + "Helper addresses"; + } + } + } + + grouping IPV6-DHCPV6D-PROXY-PROFILE-CLASS { + description + "DHCPv6 proxy profile class parameters"; + leaf class-name-xr { + type string { + length "0..65"; + } + description + "Class name"; + } + leaf-list vrf-name { + type String-vrf; + max-elements "8"; + description + "VRF names"; + } + list profile-helper-address { + max-elements "8"; + description + "Helper addresses"; + leaf entry { + type Ipv6-address; + description + "Helper addresses"; + } + } + } + + grouping IPV6-DHCPV6D-MAC-THROTTLE { + description + "IPv6 DHCP Mac Throttle"; + leaf binding-chaddr { + type yang:hex-string; + description + "Client MAC address"; + } + leaf ifname { + type string { + length "0..65"; + } + description + "DHCP access interface"; + } + leaf state { + type uint32; + description + "State of entry"; + } + leaf time-left { + type uint32; + units "second"; + description + "Time Left in secs"; + } + } + + grouping IPV6-DHCPV6D-FILTERED-STATS { + description + "DHCPv6 filtered statistics"; + leaf received-packets { + type uint64; + description + "Received packets"; + } + leaf transmitted-packets { + type uint64; + description + "Transmitted packets"; + } + leaf dropped-packets { + type uint64; + description + "Dropped packets"; + } + } + + grouping IPV6-DHCPV6D-TYPE { + description + "DHCPv6 packets"; + container solicit { + description + "DHCPV6 solicit packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container advertise { + description + "DHCPV6 advertise packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container request { + description + "DHCPV6 request packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container reply { + description + "DHCPV6 reply packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container confirm { + description + "DHCPV6 confirm packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container decline { + description + "DHCPV6 decline packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container renew { + description + "DHCPV6 renew packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container rebind { + description + "DHCPV6 rebind packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container release { + description + "DHCPV6 release packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container reconfig { + description + "DHCPV6 reconfig packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container inform { + description + "DHCPV6 inform packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container relay-forward { + description + "DHCPV6 relay forward packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container relay-reply { + description + "DHCPV6 relay reply packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container lease-query { + description + "DHCPV6 lease query packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container lease-query-reply { + description + "DHCPV6 lease query reply packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container lease-query-done { + description + "DHCPV6 lease query done packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + container lease-query-data { + description + "DHCPV6 lease query data packets"; + uses IPV6-DHCPV6D-FILTERED-STATS; + } + } + + grouping IPV6-DHCPD-ISSU-STATUS { + description + "ISSU Data"; + leaf process-start-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the process start time in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf issu-sync-complete-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU sync complete in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf issu-sync-start-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU sync start in nanoseconds + since Epoch, i.e. since 00:00:00 UTC, January 1, + 1970"; + } + leaf issu-ready-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the ISSU ready declaration in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf big-bang-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the Big Bang notification time in + nanoseconds since Epoch, i.e. since 00:00:00 UTC + , January 1, 1970"; + } + leaf primary-role-time { + type uint64; + units "nanosecond"; + description + "Timestamp for the change to Primary role + notification time in nanoseconds since Epoch, i + .e. since 00:00:00 UTC, January 1, 1970"; + } + leaf issu-ready-issu-mgr-connection { + type boolean; + description + "Whether or not DHCP is currently connected to + ISSU Manager during the ISSU Load Phase"; + } + leaf role { + type Dhcpv6-issu-role; + description + "The current role of the DHCP process"; + } + leaf phase { + type Dhcp-issu-phase; + description + "The current ISSU phase of the DHCP process"; + } + leaf version { + type Dhcpv6-issu-version; + description + "The current version of the DHCP process in the + context of an ISSU"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper.yang new file mode 100644 index 000000000..34cc84449 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper.yang @@ -0,0 +1,546 @@ +module Cisco-IOS-XR-ipv6-new-dhcpv6d-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-new-dhcpv6d-oper"; + prefix ipv6-new-dhcpv6d-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv6-new-dhcpv6d-oper-sub1 { + revision-date 2022-09-08; + } + + 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 ipv6-new-dhcpv6d package operational data. + + This module contains definitions + for the following management objects: + dhcpv6: IPV6 DHCPD operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-08 { + description + "Fixed oper for dhcp statistics and binding. + 2022-04-06 + taking out statistics data under relay node as it is not supported since day-1 + 2021-10-05 + Migrated LEAF-LIST with duplicate value to LIST type."; + semver:module-version "4.0.0"; + } + revision 2021-09-14 { + description + "Fixed GET-OPER to display interface name in standard format."; + semver:module-version "3.0.0"; + } + revision 2021-03-19 { + description + "Added support for dynamic relay MAC address handling. + 2020-12-20 + Added Yang Support for ADT,to retrive statistcs with help of vrf/interface. + 2020-09-30 + Modified to accommodate cdm changes + 2020-09-29 + Added support to track server that allocated IP for DHCPv6 relay client."; + semver:module-version "2.1.0"; + } + revision 2019-12-18 { + description + "Added IPv6 ND support"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-10-09 { + description + "Added dhcpv6 server disconnect-history class"; + } + revision 2018-09-17 { + description + "Added dhcpv6 proxy disconnect-history class"; + } + revision 2017-12-06 { + description + "Added proxy class and server class oper for class and server profile"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dhcpv6 { + config false; + description + "IPV6 DHCPD operational data"; + container issu-status { + description + "DHCP IssuStatus"; + uses IPV6-DHCPD-ISSU-STATUS; + } + container nodes { + description + "IPv6 DHCP list of nodes"; + list node { + key "node-name"; + description + "IPv6 DHCP particular node name"; + container proxy { + description + "IPv6 DHCP proxy operational data"; + container vrfs { + description + "DHCPV6 proxy list of VRF names"; + list vrf { + key "vrf-name"; + description + "IPv6 DHCP proxy VRF name"; + container statistics { + description + "IPv6 DHCP proxy statistics"; + uses IPV6-DHCPV6D-TYPE; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container profiles { + description + "IPv6 DHCP proxy profile"; + list profile { + key "profile-name"; + description + "IPv6 DHCP proxy profile"; + container throttle-infos { + description + "DHCPV6 throttle table"; + list throttle-info { + key "mac-address"; + description + "IPv6 DHCP proxy profile Throttle Info"; + leaf mac-address { + type xr:Cisco-ios-xr-string; + description + "MAC address"; + } + uses IPV6-DHCPV6D-MAC-THROTTLE; + } + } + container proxy-classes { + description + "IPv6 DHCP proxy class table"; + list proxy-class { + key "class-name"; + description + "IPv6 DHCP proxy class profile"; + leaf class-name { + type xr:Cisco-ios-xr-string; + description + "Class name"; + } + uses IPV6-DHCPV6D-PROXY-PROFILE-CLASS; + } + } + container info { + description + "IPv6 DHCP proxy profile Info"; + uses IPV6-DHCPV6D-PROXY-PROFILE; + } + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + } + } + container disconnect-histories { + description + "DHCPv6 proxy disconnect history"; + list disconnect-history { + key "index"; + description + "Single DHCPv6 proxy disconnect history"; + leaf index { + type xr:Cisco-ios-xr-string; + description + "Index"; + } + uses IPV6-DHCPV6D-DISC-HISTORY; + } + } + container interfaces { + description + "DHCPV6 proxy interface"; + list interface { + key "interface-name"; + description + "IPv6 DHCP proxy interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV6-DHCPV6D-PROXY-INTERFACE; + } + } + container stats { + description + "IPv6 DHCP proxy stats"; + list stat { + description + "Proxy statistics for vrf/interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "L3 VRF Name"; + } + leaf interface-name { + type xr:Interface-name; + description + "L3 Interface Name"; + } + uses IPV6-DHCPV6D-VRF-INTF-STATS; + } + } + container statistics { + description + "DHCPv6 proxy statistics"; + container summary { + description + "DHCPv6 Proxy statistics"; + uses IPV6-DHCPV6D-PROXY-STATS; + } + } + container binding { + description + "DHCPV6 proxy bindings"; + container clients { + description + "DHCPV6 proxy client bindings"; + list client { + key "client-id"; + description + "Single DHCPV6 proxy binding"; + leaf client-id { + type xr:Cisco-ios-xr-string; + description + "Client ID"; + } + uses IPV6-DHCPV6D-PROXY-BINDING; + } + } + container summary { + description + "DHCPV6 proxy binding summary"; + uses IPV6-DHCPV6D-PROXY-BINDINGS-SUMMARY; + } + } + } + container base { + description + "IPv6 DHCP Base"; + container database { + description + "DHCP database"; + uses IPV6-DHCPD-DATABASE; + } + container addr-bindings { + description + "IPv6 DHCP Base Binding"; + list addr-binding { + key "addr-string"; + description + "DHCPv6 base stats debug"; + leaf addr-string { + type xr:Cisco-ios-xr-string; + description + "Address String"; + } + uses IPV6-DHCPV6D-BASE-BINDING; + } + } + container stats { + description + "IPv6 DHCP base stats"; + list stat { + description + "Base statistics for vrf/interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "L3 VRF Name"; + } + leaf interface-name { + type xr:Interface-name; + description + "L3 Interface Name"; + } + uses IPV6-DHCPV6D-VRF-INTF-STATS; + } + } + } + container server { + description + "IPv6 DHCP server operational data"; + container disconnect-histories { + description + "DHCPv6 server disconnect history"; + list disconnect-history { + key "index"; + description + "Single DHCPv6 server disconnect history"; + leaf index { + type xr:Cisco-ios-xr-string; + description + "Index"; + } + uses IPV6-DHCPV6D-DISC-HISTORY; + } + } + container binding { + description + "DHCPV6 server bindings"; + container summary { + description + "DHCPV6 server binding summary"; + uses IPV6-DHCPV6D-SERVER-BINDINGS-SUMMARY; + } + container clients { + description + "DHCPV6 server client bindings"; + list client { + key "client-id"; + description + "Single DHCPV6 server binding"; + leaf client-id { + type xr:Cisco-ios-xr-string; + description + "Client ID"; + } + uses IPV6-DHCPV6D-SERVER-BINDING; + } + } + } + container statistics { + description + "DHCPv6 server statistics"; + container summary { + description + "DHCPv6 Server statistics"; + uses IPV6-DHCPV6D-SERVER-STATS; + } + } + container vrfs { + description + "DHCPV6 server list of VRF names"; + list vrf { + key "vrf-name"; + description + "IPv6 DHCP server VRF name"; + container statistics { + description + "IPv6 DHCP server statistics"; + uses IPV6-DHCPV6D-TYPE; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + container profiles { + description + "IPv6 DHCP server profile"; + list profile { + key "profile-name"; + description + "IPv6 DHCP server profile"; + container info { + description + "IPv6 DHCP server profile Info"; + uses IPV6-DHCPV6D-SERVER-PROFILE; + } + container throttle-infos { + description + "DHCPV6 throttle table"; + list throttle-info { + key "mac-address"; + description + "IPv6 DHCP server profile Throttle Info"; + leaf mac-address { + type xr:Cisco-ios-xr-string; + description + "MAC address"; + } + uses IPV6-DHCPV6D-MAC-THROTTLE; + } + } + container server-classes { + description + "IPv6 DHCP server class table"; + list server-class { + key "class-name"; + description + "IPv6 DHCP server class profile"; + leaf class-name { + type xr:Cisco-ios-xr-string; + description + "Class name"; + } + uses IPV6-DHCPV6D-SERVER-PROFILE-CLASS; + } + } + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + } + } + container interfaces { + description + "DHCPV6 server interface"; + list interface { + key "interface-name"; + description + "IPv6 DHCP server interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV6-DHCPV6D-SERVER-INTERFACE; + } + } + container stats { + description + "IPv6 DHCP server stats"; + list stat { + description + "Server statistics for vrf/interface"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "L3 VRF Name"; + } + leaf interface-name { + type xr:Interface-name; + description + "L3 Interface Name"; + } + uses IPV6-DHCPV6D-VRF-INTF-STATS; + } + } + container binding-options { + description + "DHCPv6 server binding with options"; + container mac-bind-options { + description + "DHCPv6 server binding from MAC address"; + list mac-bind-option { + key "mac-address"; + description + "DHCPv6 server binding with options"; + leaf mac-address { + type xr:Cisco-ios-xr-string; + description + "MAC address"; + } + uses IPV6-DHCPV6D-SERVER-BINDING-OPTIONS; + } + } + container duid-bind-options { + description + "DHCPv6 server binding from DUID"; + list duid-bind-option { + key "duid"; + description + "DHCPv6 server binding with options"; + leaf duid { + type xr:Cisco-ios-xr-string; + description + "DUID of Binding"; + } + uses IPV6-DHCPV6D-SERVER-BINDING-OPTIONS; + } + } + } + } + container relay { + description + "IPv6 DHCP relay operational data"; + container binding { + description + "DHCPV6 relay bindings"; + container summary { + description + "DHCPV6 relay binding summary"; + uses IPV6-DHCPV6D-RELAY-BINDINGS-SUMMARY; + } + container clients { + description + "DHCPV6 relay client bindings"; + list client { + key "client-id"; + description + "Single DHCPV6 relay binding"; + leaf client-id { + type xr:Cisco-ios-xr-string; + description + "Client ID"; + } + uses IPV6-DHCPV6D-RELAY-ROUTE-BINDING; + } + } + } + container vrfs { + description + "DHCPV6 relay list of VRF names"; + list vrf { + key "vrf-name"; + description + "IPv6 DHCP relay VRF name"; + container statistics { + description + "IPv6 DHCP relay statistics"; + uses IPV6-DHCPV6D-TYPE; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg.yang new file mode 100644 index 000000000..6dde6da94 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg.yang @@ -0,0 +1,136 @@ +module Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-new-dhcpv6d-subscriber-cfg"; + prefix ipv6-new-dhcpv6d-subscriber-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 ipv6-new-dhcpv6d-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DHCPV6 { + description + "Common node of ip-subscriber, ppp"; + container dhcpv6 { + description + "Interface dhcpv6 configuration data"; + container delegated-prefix { + presence "Indicates a delegated-prefix node is configured."; + description + "The prefix to be used for Prefix Delegation"; + leaf prefix { + type inet:ipv6-address-no-zone; + mandatory true; + description + "IPv6 Prefix"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "PD Prefix Length"; + } + } + leaf dns-ipv6address { + type inet:ipv6-address-no-zone; + description + "Dns IPv6 Address"; + } + leaf mode-class { + type string; + description + "Select proxy/server profile based on mode class + name"; + } + leaf dhcpv6-iplease { + type string; + description + "Cisco VSA to configure any dhcpv6 ip lease per + subscriber"; + } + leaf dhcpv6-option { + type string; + description + "Cisco VSA to configure any dhcpv6 option per + subscriber"; + } + leaf address-pool { + type string; + description + "The pool to be used for Address assignment"; + } + leaf delegated-prefix-pool { + type string; + description + "The pool to be used for Prefix Delegation"; + } + leaf class { + type string; + description + "The class to be used for proxy/server profile"; + } + leaf stateful-address { + type inet:ipv6-address-no-zone; + description + "Stateful IPv6 Address"; + } + } + } + + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses DHCPV6; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses DHCPV6; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-act.yang new file mode 100644 index 000000000..1f0179c93 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-act.yang @@ -0,0 +1,265 @@ +module Cisco-IOS-XR-ipv6-ospfv3-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-ospfv3-act"; + prefix ospfv3-act; + + 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 IPv6 OSPFv3 action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-13 { + description + "Added xr-task name ospf to restrict unlimited permission"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-09-14 { + description + "IOS XR 6.2.1 revision."; + } + + grouping OSPFv3-STAT-ATTRIBUTES { + description + "OSPFv3 Stat Attributes"; + leaf process { + type empty; + description + "Reset OSPFv3 process"; + } + leaf redistribution { + type empty; + description + "Clear OSPFv3 route redistrbution"; + } + leaf route { + type empty; + description + "Clear OSPFv3 route table"; + } + container stats { + description + "OSPFv3 counters and statistics"; + leaf spf { + type empty; + description + "SPF statistics"; + } + leaf prefix-priority { + type empty; + description + "SPF Prefix Priority statistics"; + } + container neighbor { + description + "Neighbor statistics per interface or neighbor id"; + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + container interface { + description + "Interface"; + leaf interface-name { + type xr:Interface-name; + description + "OSPFv3 interface statistics"; + } + } + } + } + } + + rpc clear-ospfv3-routes { + description + "Clear OSPFv3 route table"; + input { + container instance { + description + "Clear data from OSPFv3 instance"; + leaf instance-identifier { + type string; + description + "OSPFv3 process instance identifier"; + } + } + leaf route { + type empty; + mandatory true; + description + "Clear OSPFv3 route table"; + } + } + } + rpc clear-ospfv3-redistribution { + description + "Clear OSPFv3 route redistribution"; + input { + container instance { + description + "Clear data from OSPFv3 instance"; + leaf instance-identifier { + type string; + description + "OSPFv3 process instance identifier"; + } + } + leaf redistribution { + type empty; + mandatory true; + description + "Clear OSPFv3 route redistribution"; + } + } + } + rpc clear-ospfv3-process { + description + "Clear (reset) OSPFv3 Process"; + input { + container instance { + description + "Clear data from OSPFv3 instance"; + leaf instance-identifier { + type string; + description + "OSPFv3 process instance identifier"; + } + } + leaf process { + type empty; + mandatory true; + description + "Reset OSPFv3 process"; + } + } + } + rpc clear-ospfv3-statistics-neighbor { + description + "Clear OSPFv3 neighbor statistics per interface or neighbor id"; + input { + container instance { + description + "Clear data from OSPFv3 instance"; + leaf instance-identifier { + type string; + description + "OSPFv3 process instance identifier"; + } + } + container neighbor { + description + "Neighbor"; + leaf neighbor-id { + type inet:ipv4-address; + description + "Neighbor ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + rpc clear-ospfv3-statistics { + description + "Clear OSPFv3 counters and statistics"; + input { + container instance { + description + "Clear data from OSPFv3 instance"; + leaf instance-identifier { + type string; + description + "OSPFv3 process instance identifier"; + } + } + leaf prefix-priority { + type empty; + description + "All OSPFv3 counters and statistics"; + } + leaf spf { + type empty; + description + "SPF statistics"; + } + leaf neighbor { + type empty; + description + "Neighbor statistics per neighbor id"; + } + } + } + rpc clear-ospfv3-instance-vrf { + description + "Clear one or more non-default OSPFv3 VRFs in process"; + input { + container instance { + description + "OSPFv3 instance name"; + leaf instance-identifier { + type string; + mandatory true; + description + "OSPFv3 process instance identifier"; + } + container vrf { + description + "Clear one or more non-default OSPFv3 VRFs in process"; + leaf vrf-name { + type string; + mandatory true; + description + "OSPFv3 VRF name"; + } + uses OSPFv3-STAT-ATTRIBUTES; + } + container all { + description + "Clear all non-default OSPFv3 VRFs"; + uses OSPFv3-STAT-ATTRIBUTES; + } + container all-inclusive { + description + "Clear all non-default and default OSPFv3 VRFs"; + uses OSPFv3-STAT-ATTRIBUTES; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-cfg.yang new file mode 100644 index 000000000..4594e265a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-cfg.yang @@ -0,0 +1,3235 @@ +module Cisco-IOS-XR-ipv6-ospfv3-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-ospfv3-cfg"; + prefix ipv6-ospfv3-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 ipv6-ospfv3 package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-ospfv3-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + ospfv3: OSPFv3 configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-14 { + description + "Added CLI to disable LLS capability at instance level"; + semver:module-version "2.1.0"; + } + revision 2020-04-28 { + description + "Modified range for first half of AS number in asdot X.Y format"; + semver:module-version "2.0.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers. + 2019-05-12 + Deprecated the native model, replaced by UM model."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-05-14 { + description + "removed enable leaf nodes that are implicitly set with CLI"; + } + revision 2018-01-15 { + description + "Added naming-union to create sublist for distribute-out."; + } + revision 2017-11-05 { + description + "Corrected boolean values in when statements."; + } + revision 2017-11-01 { + description + "Removed external and summary LSA from rbit and v6bit container."; + } + revision 2017-07-14 { + description + "Trace buffer size enum name modified for intelligible."; + } + revision 2017-06-09 { + description + "Datatype modified to Range for area id, route tag and redistribute tag."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ospfv3-protocol { + type enumeration { + enum "all" { + value 0; + description + "All"; + } + enum "connected" { + value 1; + description + "Connected"; + } + enum "static" { + value 3; + description + "Static"; + } + enum "bgp" { + value 4; + description + "BGP"; + } + enum "isis" { + value 6; + description + "ISIS"; + } + enum "ospfv3" { + value 7; + description + "OSPFv3"; + } + enum "eigrp" { + value 8; + description + "EIGRP"; + } + } + description + "Ospfv3 protocol"; + } + + typedef Ospfv3-fast-reroute-tiebreakers { + type enumeration { + enum "downstream" { + value 0; + description + "Downstream"; + } + enum "line-card-disjoint" { + value 1; + description + "LC Disjoint"; + } + enum "lowest-metric" { + value 2; + description + "Lowest metric"; + } + enum "node-protect" { + value 3; + description + "Node protection"; + } + enum "primary-path" { + value 4; + description + "Primary path"; + } + enum "secondary-path" { + value 5; + description + "Secondar path"; + } + enum "srlg-disjoint" { + value 6; + description + "SRLG"; + } + } + description + "Ospfv3 fast reroute tiebreakers"; + } + + typedef Ospfv3isis-route { + type enumeration { + enum "level1" { + value 64; + description + "IS-IS level-1 routes"; + } + enum "level2" { + value 128; + description + "IS-IS level-2 routes"; + } + enum "level1-and2" { + value 192; + description + "IS-IS level-1 and level-2 routes"; + } + } + description + "Ospfv3isis route"; + } + + typedef Ospfv3bfd-enable-mode { + type enumeration { + enum "disable" { + value 0; + description + "Disable Mode - Prevent inheritance"; + } + enum "default" { + value 1; + description + "Default Mode - Default BFD behavior"; + } + enum "strict" { + value 2; + description + "Strict Mode - Hold down adj until BFD sesion up"; + } + } + description + "Ospfv3bfd enable mode"; + } + + typedef Ospfv3-log-adj { + type enumeration { + enum "suppress" { + value 0; + description + "No output"; + } + enum "brief" { + value 1; + description + "Limited output"; + } + enum "detail" { + value 2; + description + "Verbose output"; + } + } + description + "Ospfv3 log adj"; + } + + typedef Ospfv3-protocol-type2 { + type enumeration { + enum "connected" { + value 1; + description + "Connected"; + } + enum "static" { + value 3; + description + "Static"; + } + enum "bgp" { + value 4; + description + "BGP"; + } + enum "isis" { + value 6; + description + "ISIS"; + } + enum "ospfv3" { + value 7; + description + "OSPFv3"; + } + enum "eigrp" { + value 8; + description + "EIGRP"; + } + enum "subscriber" { + value 9; + description + "Subscriber"; + } + enum "application" { + value 10; + description + "Application"; + } + enum "mobile" { + value 11; + description + "Mobile"; + } + } + description + "Ospfv3 protocol type2"; + } + + typedef Ospfv3-metric { + type enumeration { + enum "type1" { + value 1; + description + "OSPFv3 external type 1 metrics"; + } + enum "type2" { + value 2; + description + "OSPFv3 external type 2 metrics"; + } + } + description + "Ospfv3 metric"; + } + + typedef Ospfv3-trace-buf-size { + type enumeration { + enum "size0" { + value 0; + description + "Disable trace"; + } + enum "size256" { + value 256; + description + "trace buffer size 256"; + } + enum "size512" { + value 512; + description + "trace buffer size 512"; + } + enum "size1024" { + value 1024; + description + "trace buffer size 1024"; + } + enum "size2048" { + value 2048; + description + "trace buffer size 2048"; + } + enum "size4096" { + value 4096; + description + "trace buffer size 4096"; + } + enum "size8192" { + value 8192; + description + "trace buffer size 8192"; + } + enum "size16384" { + value 16384; + description + "trace buffer size 16384"; + } + enum "size32768" { + value 32768; + description + "trace buffer size 32768"; + } + enum "size65536" { + value 65536; + description + "trace buffer size 65536"; + } + } + description + "Ospfv3 trace buf size"; + } + + typedef Ospfv3-external-route { + type enumeration { + enum "external1" { + value 8; + description + "External type 1 routes"; + } + enum "external2" { + value 16; + description + "External type 2 routes"; + } + enum "external" { + value 24; + description + "External (type 1 and 2) routes"; + } + } + description + "Ospfv3 external route"; + } + + typedef Ospfv3-subsequent-address-family { + type enumeration { + enum "unicast" { + value 1; + description + "Unicast subsequent address family"; + } + } + description + "Ospfv3 subsequent address family"; + } + + typedef Ospfv3-internal-route { + type enumeration { + enum "internal" { + value 6; + description + "OSPFv3 internal routes"; + } + } + description + "Ospfv3 internal route"; + } + + typedef Ospfv3-fast-reroute { + type enumeration { + enum "none" { + value 0; + description + "Disable"; + } + enum "per-link" { + value 1; + description + "Per link"; + } + enum "per-prefix" { + value 2; + description + "Per prefix"; + } + } + description + "Ospfv3 fast reroute"; + } + + typedef Ospfv3-domain-id { + type enumeration { + enum "type0005" { + value 5; + description + "Type 0x0005"; + } + enum "type0105" { + value 261; + description + "Type 0x0105"; + } + enum "type0205" { + value 517; + description + "Type 0x0205"; + } + } + description + "Ospfv3 domain id"; + } + + typedef Ospfv3-authentication-type2 { + type enumeration { + enum "null" { + value 0; + description + "NULL authentication"; + } + enum "md5" { + value 1; + description + "MD5 algorithm"; + } + enum "sha1" { + value 2; + description + "SHA1 algorithm"; + } + } + description + "Ospfv3 authentication type2"; + } + + typedef Ospfv3-address-family { + type enumeration { + enum "ipv6" { + value 1; + description + "IPv6 address family"; + } + } + description + "Ospfv3 address family"; + } + + typedef Ospfv3-authentication { + type enumeration { + enum "md5" { + value 1; + description + "MD5 algorithm"; + } + enum "sha1" { + value 2; + description + "SHA1 algorithm"; + } + } + description + "Ospfv3 authentication"; + } + + typedef Ospfv3-encryption-algorithm { + type enumeration { + enum "null" { + value 0; + description + "Use NULL encryption"; + } + enum "des" { + value 1; + description + "Use the DES algorithm"; + } + enum "3des" { + value 2; + description + "Use the triple DES algorithm"; + } + enum "aes" { + value 3; + description + "Use the AES algorithm"; + } + enum "aes192" { + value 4; + description + "Use the 192-bit AES algorithm"; + } + enum "aes256" { + value 5; + description + "Use the 256-bit AES algorithm"; + } + } + description + "Ospfv3 encryption algorithm"; + } + + typedef Ospfv3nsr { + type enumeration { + enum "true" { + value 1; + description + "Enable non-stop routing"; + } + enum "false" { + value 2; + description + "Disable non-stop routing"; + } + } + description + "Ospfv3nsr"; + } + + typedef Ospfv3nssa-external-route { + type enumeration { + enum "external1" { + value 4096; + description + "NSSA external type 1 routes"; + } + enum "external2" { + value 8192; + description + "NSSA external type 2 routes"; + } + enum "external" { + value 12288; + description + "NSSA external (type 1 and 2) routes"; + } + } + description + "Ospfv3nssa external route"; + } + + typedef Ospfv3-eigrp-route { + type enumeration { + enum "internal" { + value 16384; + description + "EIGRP internal routes"; + } + enum "external" { + value 32768; + description + "EIGRP external routes"; + } + } + description + "Ospfv3 eigrp route"; + } + + typedef Ospfv3-fast-reroute-priority { + type enumeration { + enum "critical" { + value 0; + description + "Critical"; + } + enum "high" { + value 1; + description + "High"; + } + enum "medium" { + value 2; + description + "Medium"; + } + enum "low" { + value 3; + description + "Low"; + } + } + description + "Ospfv3 fast reroute priority"; + } + + typedef Ospfv3-network { + type enumeration { + enum "broadcast" { + value 1; + description + "Broadcast multi-access network"; + } + enum "non-broadcast" { + value 2; + description + "Non-broadcast multi-access network"; + } + enum "point-to-point" { + value 3; + description + "Point-to-point network"; + } + enum "point-to-multipoint" { + value 4; + description + "Point-to-multipoint network"; + } + enum "non-broadcast-point-to-multipoint" { + value 5; + description + "Non-broadcast point-to-multipoint network"; + } + } + description + "Ospfv3 network"; + } + + grouping REDISTRIBUTE-TABLE { + description + "Common node of default-vrf, vrf"; + container redistributes { + description + "Redistribute information from another routing + protocol"; + list redistribute { + must "connected-or-static-or-subscriber-or-mobile or bgp or ospfv3-or-isis-or-application or eigrp" { + description + "Connected-or-Static-or-Subscriber-or-Mobile or + BGP or OSPFv3-or-ISIS-or-Application or EIGRP + must be present."; + } + key "protocol-name"; + description + "Redistribute information from another routing + protocol"; + + grouping REDISTRIBUTE-CONTENT { + description + "REDISTRIBUTE CONTENT"; + leaf internal-route-type { + type Ospfv3-internal-route; + description + "Redistribute OSPFv3 routes"; + } + leaf default-metric { + type uint32 { + range "0..16777214"; + } + description + "OSPFv3 default metric"; + } + leaf metric-type { + type Ospfv3-metric; + description + "OSPFv3 exterior metric type for redistributed + routes"; + } + leaf tag { + type uint32 { + range "0..4294967295"; + } + description + "Tag for routes redistributed into OSPFv3"; + } + leaf route-policy-name { + type string; + description + "Route policy to redistribution"; + } + leaf external-route-type { + type Ospfv3-external-route; + description + "Redistribute OSPFv3 external routes"; + } + leaf nssa-external-route-type { + type Ospfv3nssa-external-route; + description + "Redistribute OSPFv3 NSSA external routes"; + } + leaf redistribute-route { + type boolean; + description + "Redistribution of OSPFv3 routes"; + } + leaf isis-route-type { + type Ospfv3isis-route; + description + "ISIS route type"; + } + leaf eigrp-route-type { + type Ospfv3-eigrp-route; + description + "EIGRP route type"; + } + leaf preserve-med { + type boolean; + description + "Preserve (Multi-Exit Discriminator) of BGP + routes"; + } + leaf bgp-preserve-default-info { + type boolean; + description + "Preserve Metric and Metric Type ofBGP Default + Route"; + } + leaf use-rib-metric { + type boolean; + description + "Use metric from RIB for redistributed routes"; + } + } + container connected-or-static-or-subscriber-or-mobile { + when "../protocol-name = 'connected' or ../protocol-name = 'static' or ../protocol-name = 'subscriber' or ../protocol-name = 'mobile'" { + description + "../ProtocolName = Connected or . + ./ProtocolName = Static or ../ProtocolName = + Subscriber or ../ProtocolName = Mobile"; + } + presence "Indicates that this node is configured."; + description + "connected or static or subscriber or mobile"; + uses REDISTRIBUTE-CONTENT; + } + leaf protocol-name { + type Ospfv3-protocol-type2; + description + "Protocol"; + } + list bgp { + when "../protocol-name = 'bgp'" { + description + "../ProtocolName = BGP"; + } + key "as-xx as-yy"; + description + "bgp"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "4-byte AS number in asdot (X.Y) format - + first half (X)"; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "4-byte AS number in asdot (X.Y) format - + second half (Y), or 2-byte AS number, or + 4-byte AS number in asplain format"; + } + uses REDISTRIBUTE-CONTENT; + } + list ospfv3-or-isis-or-application { + when "../protocol-name = 'ospfv3' or ../protocol-name = 'isis' or ../protocol-name = 'application'" { + description + "../ProtocolName = OSPFv3 or ../ProtocolName + = ISIS or ../ProtocolName = Application"; + } + key "process-name"; + description + "ospfv3 or isis or application"; + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "ISIS process name if protocol is ISIS, or + OSPFv3 process name if protocol is OSPFv3"; + } + uses REDISTRIBUTE-CONTENT; + } + list eigrp { + when "../protocol-name = 'eigrp'" { + description + "../ProtocolName = EIGRP"; + } + key "as-xx"; + description + "eigrp"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "4-byte AS number in asdot (X.Y) format - + first half (X)"; + } + uses REDISTRIBUTE-CONTENT; + } + } + } + } + + grouping DISTANCE { + description + "Common node of default-vrf, vrf"; + container distance { + description + "Define an administrative distance"; + container ospfv3 { + description + "OSPFv3 administrative distance"; + leaf intra-area { + type uint32 { + range "1..255"; + } + description + "Distance for intra-area routes"; + } + leaf inter-area { + type uint32 { + range "1..255"; + } + description + "Distance for inter-area routes"; + } + leaf external { + type uint32 { + range "1..255"; + } + description + "Distance for external type 5 and type 7 routes"; + } + } + leaf administrative { + type uint32 { + range "1..255"; + } + description + "Define an administrative distance"; + } + } + } + + grouping DEMAND-CIRCUIT { + description + "Common node of default-vrf, vrf"; + leaf demand-circuit { + type boolean; + description + "Enable/disable demand circuit operation"; + } + } + + grouping ON-PROC-RESTART { + description + "Common node of rbit, v6bit, max-metric"; + leaf on-proc-restart { + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time (in seconds) to stay in stub router + operational state"; + } + } + + grouping EXCLUDE-INTERFACE-TABLE { + description + "Common node of per-link, per-prefix"; + container exclude-interfaces { + description + "Fast-reroute per-link/per-prefix exclude + interface configuration"; + list exclude-interface { + key "interface-name"; + description + "Exclude an interface from becoming a backup"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + + grouping TRANSMIT-DELAY { + description + "Common node of default-vrf, vrf"; + leaf transmit-delay { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit delay in seconds"; + } + } + + grouping PASSIVE { + description + "Common node of default-vrf, vrf"; + leaf passive { + type boolean; + description + "Enable/disable routing updates on an interface"; + } + } + + grouping ALWAYS { + description + "Common node of rbit, v6bit, max-metric"; + leaf always { + type empty; + description + "Unconditionally enter stub router operational + state"; + } + } + + grouping AREA-TABLE { + description + "Common node of default-vrf, vrf"; + container area-addresses { + description + "Area configuration"; + + grouping AREA-CONTENT { + description + "AREA CONTENT"; + container authentication { + description + "Authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec AH authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf algorithm { + type Ospfv3-authentication; + description + "Use the MD5 or SHA1 algorithm"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + container bfd { + description + "Configure BFD parameters"; + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detect multiplier"; + } + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval in milli-seconds"; + } + leaf fast-detect-mode { + type Ospfv3bfd-enable-mode; + description + "Enable or disable BFD fast detection"; + } + } + container ranges { + description + "Range configuration"; + list range { + key "prefix prefix-length"; + description + "Summarize inter-area routes matching + prefix/length"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "IPv6 prefix format"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "IPV6 prefix length"; + } + leaf not-advertise { + type boolean; + default "false"; + description + "Do not advertise address range"; + } + leaf cost { + type uint32 { + range "1..16777214"; + } + description + "Specified metric for this range"; + } + } + } + container encryption { + description + "Encrypt and authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec ESP authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf encryption-algorithm { + type Ospfv3-encryption-algorithm; + description + "Specify the encryption algorithm"; + } + leaf encryption-password { + type xr:Proprietary-password; + description + "Encryption password"; + } + leaf authentication-algorithm { + type Ospfv3-authentication-type2; + description + "Use the NULL, MD5 or SHA1 algorithm"; + } + leaf authentication-password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + container nssa { + description + "Specify area as a NSSA area. Allowed only in + non-backbone areas"; + leaf no-redistribution { + type boolean; + default "false"; + description + "No redistribution into this NSSA area"; + } + leaf default-info-originate { + type boolean; + default "false"; + description + "Originate Type 7 default into NSSA area"; + } + leaf metric { + type uint32 { + range "0..16777214"; + } + description + "Only valid with DefaultInfoOriginate"; + } + leaf metric-type { + type Ospfv3-metric; + description + "Only valid with DefaultInfoOriginate"; + } + leaf no-summary { + type empty; + description + "Do not send summary LSA into NSSA"; + } + } + container database-filter { + description + "Database filter"; + container all { + description + "All"; + leaf out { + type boolean; + description + "Enable or disable database-filter"; + } + } + } + container distribute-list { + description + "Filter prefixes to/from RIB"; + container in { + description + "Filter prefixes installed to RIB"; + leaf prefix-list { + type string; + description + "Filter prefixes based on an IPv6 prefix-list"; + } + } + } + container interfaces { + description + "OSPFv3 interfaces"; + list interface { + key "interface-name"; + description + "OSPFv3 interface"; + container authentication { + description + "Authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec AH authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf algorithm { + type Ospfv3-authentication; + description + "Use the MD5 or SHA1 algorithm"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + container neighbors { + description + "Specify a neighbor router"; + list neighbor { + key "neighbor-address"; + description + "IPv6 address"; + leaf neighbor-address { + type xr:Cisco-ios-xr-string; + description + "IPV6 address"; + } + leaf priority { + type uint32 { + range "0..255"; + } + description + "OSPFv3 priority of non-broadcast neighbor"; + } + leaf poll-interval { + type uint32 { + range "0..65535"; + } + units "second"; + description + "OSPFv3 dead-router polling interval (in + seconds)"; + } + leaf cost { + type uint32 { + range "1..65535"; + } + description + "OSPFv3 cost for point-to-multipoint + neighbor"; + } + leaf database-filter { + type boolean; + description + "Filter OSPFv3 LSA during synchronization + and flooding for point-to-multipoint + neighbor"; + } + leaf zone { + type string; + description + "Zone"; + } + } + } + container encryption { + description + "Encrypt and authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec ESP authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf encryption-algorithm { + type Ospfv3-encryption-algorithm; + description + "Specify the encryption algorithm"; + } + leaf encryption-password { + type xr:Proprietary-password; + description + "Encryption password"; + } + leaf authentication-algorithm { + type Ospfv3-authentication-type2; + description + "Use the NULL, MD5 or SHA1 algorithm"; + } + leaf authentication-password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + container bfd { + description + "Configure BFD parameters"; + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval in milli-seconds"; + } + leaf fast-detect-mode { + type Ospfv3bfd-enable-mode; + description + "Enable or disable BFD fast detection"; + } + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detect multiplier"; + } + } + container database-filter { + description + "Database filter"; + container all { + description + "All"; + leaf out { + type boolean; + description + "Enable or disable database-filter"; + } + } + } + container distribute-list { + description + "Filter prefixes to/from RIB"; + container in { + description + "Filter prefixes installed to RIB"; + leaf prefix-list { + type string; + description + "Filter prefixes based on an IPv6 + prefix-list"; + } + } + } + leaf enable { + type empty; + description + "Enable OSPFv3 interface"; + } + leaf dead-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval after which a neighbor is declared + dead (in seconds)"; + } + leaf advertise-prefix-policy { + type string; + description + "Route policy name for Conditionally + advertising this prefix"; + } + leaf flood-reduction { + type boolean; + description + "Enable/disable flood reduction"; + } + leaf cost { + type uint32 { + range "1..65535"; + } + description + "Interface cost"; + } + leaf transmit-delay { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit delay in seconds"; + } + leaf instance { + type uint32 { + range "0..255"; + } + description + "Instance ID"; + } + leaf ldp-sync { + type boolean; + description + "Enable/Disable MPLS LDP sync"; + } + leaf mtu-ignore { + type boolean; + description + "Enable/disable ignoring of MTU in DBD + packets"; + } + leaf retransmit-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit interval in seconds"; + } + leaf hello-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Time between HELLO packets"; + } + leaf passive { + type boolean; + description + "Enable/disable routing updates on an + interface"; + } + leaf packet-size { + type uint32 { + range "256..10000"; + } + description + "Limit size of OSPFv3 packets"; + } + leaf prefix-suppression { + type boolean; + description + "Enable/disable prefix suppression on an + interface"; + } + leaf priority { + type uint32 { + range "0..255"; + } + description + "Specify router priority"; + } + leaf network { + type Ospfv3-network; + description + "Specify network type"; + } + leaf demand-circuit { + type boolean; + description + "Enable/disable demand circuit operation"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface to configure"; + } + uses IPV6-OSPFV3-INTFOBJ-CFG-FAST-REROUTE; + } + } + container area-scope { + description + "Area Scope Configuration"; + uses IPV6-OSPFV3-INTFOBJ-CFG-FAST-REROUTE; + } + container sham-links { + description + "Sham Link sub-mode"; + list sham-link { + key "source-address destination-address"; + description + "ShamLink local and remote endpoints"; + container authentication { + description + "Authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec AH authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf algorithm { + type Ospfv3-authentication; + description + "Use the MD5 or SHA1 algorithm"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + container encryption { + description + "Encrypt and authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec ESP authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf encryption-algorithm { + type Ospfv3-encryption-algorithm; + description + "Specify the encryption algorithm"; + } + leaf encryption-password { + type xr:Proprietary-password; + description + "Encryption password"; + } + leaf authentication-algorithm { + type Ospfv3-authentication-type2; + description + "Use the NULL, MD5 or SHA1 algorithm"; + } + leaf authentication-password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + leaf enable { + type empty; + description + "Enable sham link"; + } + leaf hello-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Time between HELLO packets"; + } + leaf dead-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval after which a neighbor is declared + dead (in seconds)"; + } + leaf retransmit-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit interval in seconds"; + } + leaf transmit-delay { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit delay in seconds"; + } + leaf source-address { + type inet:ipv6-address-no-zone; + description + "Local sham-link endpoint"; + } + leaf destination-address { + type inet:ipv6-address-no-zone; + description + "Remote sham-link endpoint"; + } + } + } + container virtual-links { + description + "Virtual link sub-mode"; + list virtual-link { + key "virtual-link-address"; + description + "Router ID of virtual link neighbor"; + container authentication { + description + "Authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec AH authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf algorithm { + type Ospfv3-authentication; + description + "Use the MD5 or SHA1 algorithm"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + container encryption { + description + "Encrypt and authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec ESP authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf encryption-algorithm { + type Ospfv3-encryption-algorithm; + description + "Specify the encryption algorithm"; + } + leaf encryption-password { + type xr:Proprietary-password; + description + "Encryption password"; + } + leaf authentication-algorithm { + type Ospfv3-authentication-type2; + description + "Use the NULL, MD5 or SHA1 algorithm"; + } + leaf authentication-password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + leaf enable { + type empty; + description + "Enabled virtual link"; + } + leaf hello-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Time between HELLO packets"; + } + leaf dead-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval after which a neighbor is declared + dead (in seconds)"; + } + leaf retransmit-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit interval in seconds"; + } + leaf transmit-delay { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit delay in seconds"; + } + leaf virtual-link-address { + type inet:ipv4-address-no-zone; + description + "Router ID of virtual link neighbor"; + } + } + } + leaf stub { + type boolean; + description + "Specify area as a stub area. Allowed only in + non-backbone areas"; + } + leaf packet-size { + type uint32 { + range "256..10000"; + } + description + "Limit size of OSPFv3 packets"; + } + leaf instance { + type uint32 { + range "0..255"; + } + description + "Instance ID"; + } + leaf demand-circuit { + type boolean; + description + "Enable/disable demand circuit operation"; + } + leaf priority { + type uint32 { + range "0..255"; + } + description + "Specify router priority"; + } + leaf type7-translate-always { + type boolean; + description + "Translate Type 7 to Type 5, even if not + elected NSSA translator"; + } + leaf prefix-suppression { + type boolean; + description + "Enable/disable prefix suppression on an + interface"; + } + leaf enable { + type empty; + description + "Enable OSPFv3 area"; + } + leaf mtu-ignore { + type boolean; + description + "Enable/disable ignoring of MTU in DBD packets"; + } + leaf passive { + type boolean; + description + "Enable/disable routing updates on an interface"; + } + leaf hello-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Time between HELLO packets"; + } + leaf dead-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval after which a neighbor is declared + dead (in seconds)"; + } + leaf default-cost { + type uint32 { + range "0..16777215"; + } + description + "Set the summary default-cost of a NSSA/stub + area"; + } + leaf flood-reduction { + type boolean; + description + "Enable/disable flood reduction"; + } + leaf retransmit-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit interval in seconds"; + } + leaf ldp-sync { + type boolean; + description + "Enable/Disable MPLS LDP sync"; + } + leaf network { + type Ospfv3-network; + description + "Specify network type"; + } + leaf transmit-delay { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit delay in seconds"; + } + leaf cost { + type uint32 { + range "1..65535"; + } + description + "Interface cost"; + } + } + list area-address { + key "address"; + description + "Configuration for a particular area"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Area ID if in IP address format"; + } + uses AREA-CONTENT; + } + list area-area-id { + key "area-id"; + description + "Configuration for a particular area"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID if in integer format"; + } + uses AREA-CONTENT; + } + } + } + + grouping AUTO-COST { + description + "Common node of default-vrf, vrf"; + container auto-cost { + presence "enable auto-cost"; + description + "Calculate interface cost according to bandwidth"; + leaf disable { + type empty; + description + "Specify 'true' to assign cost based on + interface type"; + } + leaf reference-bandwidth { + type uint32 { + range "1..4294967"; + } + units "Mbit/s"; + description + "Specify reference bandwidth for cost + computations in terms of Mbits per second"; + } + } + } + + grouping TIMERS { + description + "Common node of default-vrf, vrf"; + container timers { + description + "Adjust routing timers"; + container pacing { + description + "Pacing timers"; + leaf flood { + type uint32 { + range "5..100"; + } + units "millisecond"; + description + "The minimum interval in milliseconds to pace + limit flooding on interface"; + } + leaf retransmission { + type uint32 { + range "5..100"; + } + description + "The minimum interval in msec between neighbor + retransmissions"; + } + leaf lsa-group { + type uint32 { + range "10..1800"; + } + units "second"; + description + "Interval in seconds at which LSAs are grouped + and refreshed, checksummed, or aged"; + } + } + container lsa-timers { + description + "LSA timers"; + leaf arrival { + type uint32 { + range "0..60000"; + } + units "millisecond"; + description + "The minimum interval in milliseconds between + accepting the same LSA"; + } + } + container throttle { + description + "Throttle timers"; + container lsa { + description + "LSA throttle timers for all types of OSPF LSAs"; + leaf first-delay { + type uint32 { + range "0..600000"; + } + units "millisecond"; + description + "Delay to generate first occurrence of LSA in + milliseconds"; + } + leaf minimum-delay { + type uint32 { + range "1..600000"; + } + units "millisecond"; + description + "Minimum delay between originating the same + LSA in milliseconds"; + } + leaf maximum-delay { + type uint32 { + range "1..600000"; + } + units "millisecond"; + description + "Maximum delay between originating the same + LSA in milliseconds"; + } + } + container spf { + description + "SPF throttle timers"; + leaf first-delay { + type uint32 { + range "1..600000"; + } + description + "Initial delay between receiving a change and + starting SPF in ms"; + } + leaf minimum-delay { + type uint32 { + range "1..600000"; + } + description + "Minimum hold time between consecutive SPF + calculations in ms"; + } + leaf maximum-delay { + type uint32 { + range "1..600000"; + } + description + "Maximum wait time between consecutive SPF + calculations in ms"; + } + } + } + } + } + + grouping LOG-ADJACENCY-CHANGES { + description + "Common node of default-vrf, vrf"; + leaf log-adjacency-changes { + type Ospfv3-log-adj; + description + "Log changes in adjacency state"; + } + } + + grouping ON-PROC-MIGRATION { + description + "Common node of rbit, v6bit, max-metric"; + leaf on-proc-migration { + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time (in seconds) to stay in stub router + operational state"; + } + } + + grouping DEFAULT-INFORMATION { + description + "Common node of default-vrf, vrf"; + container default-information { + description + "Control distribution of default information"; + container originate { + presence "Indicates a originate node is configured."; + description + "Distribute a default route"; + leaf always { + type boolean; + mandatory true; + description + "Always advertise default route"; + } + leaf metric { + type uint32 { + range "0..16777214"; + } + description + "OSPFv3 default metric"; + } + leaf metric-type { + type uint32 { + range "1..2"; + } + description + "OSPFv3 metric type for default routes"; + } + leaf tag { + type uint32 { + range "0..4294967295"; + } + description + "Tag for default route"; + } + leaf route-policy-name { + type string; + description + "Route policy to default-information + origination"; + } + } + } + } + + grouping STUB-ROUTER { + description + "Common node of default-vrf, vrf"; + container stub-router { + description + "Stub router configuration"; + container rbit { + presence "CLI submode compatibility."; + description + "Stub router R-bit configuration"; + uses ON-SWITCHOVER; + uses ALWAYS; + uses ON-STARTUP; + uses INCLUDE-STUB; + uses ON-PROC-MIGRATION; + uses ON-PROC-RESTART; + } + container v6bit { + presence "CLI submode compatibility."; + description + "Stub router V6-bit configuration"; + uses ON-SWITCHOVER; + uses ALWAYS; + uses ON-STARTUP; + uses ON-PROC-MIGRATION; + uses ON-PROC-RESTART; + } + container max-metric { + presence "CLI submode compatibility."; + description + "Stub router max-metric configuration"; + leaf external-lsa { + type uint32 { + range "1..16777214"; + } + default "16711680"; + description + "Advertise external LSAs with modified metric + in stub router mode"; + } + leaf summary-lsa { + type uint32 { + range "1..16777214"; + } + default "16711680"; + description + "Advertise summary LSAs with modified metric in + stub router mode"; + } + uses ON-SWITCHOVER; + uses ALWAYS; + uses ON-STARTUP; + uses INCLUDE-STUB; + uses ON-PROC-MIGRATION; + uses ON-PROC-RESTART; + } + } + } + + grouping INCLUDE-STUB { + description + "Common node of rbit, max-metric"; + leaf include-stub { + type empty; + description + "Advertise stub links with maximum metric in stub + router mode"; + } + } + + grouping IGNORE { + description + "Common node of default-vrf, vrf"; + container ignore { + description + "Do not complain about a specified event"; + container lsa { + description + "Do not complain upon receiving LSA of the + specified type"; + leaf mospf { + type empty; + description + "Enable ignore of MOSPF type 6 LSA"; + } + } + } + } + + grouping DATABASE-FILTER { + description + "Common node of default-vrf, vrf"; + container database-filter { + description + "Database filter"; + container all { + description + "All"; + leaf out { + type empty; + description + "Enable out"; + } + } + } + } + + grouping CANDIDATE-INTERFACE-TABLE { + description + "Common node of per-link, per-prefix"; + container candidate-interfaces { + description + "Fast-reroute per-link/per-prefix candidate + interface configuration"; + list candidate-interface { + key "interface-name"; + description + "Candidate backup interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + } + } + } + + grouping ENCRYPTION { + description + "Common node of default-vrf, vrf"; + container encryption { + description + "Encrypt and authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec ESP authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf encryption-algorithm { + type Ospfv3-encryption-algorithm; + description + "Specify the encryption algorithm"; + } + leaf encryption-password { + type xr:Proprietary-password; + description + "Encryption password"; + } + leaf authentication-algorithm { + type Ospfv3-authentication-type2; + description + "Use the NULL, MD5 or SHA1 algorithm"; + } + leaf authentication-password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + } + + grouping AUTHENTICATION { + description + "Common node of default-vrf, vrf"; + container authentication { + description + "Authenticate OSPFv3 packets"; + leaf enable { + type boolean; + description + "Authenticate packets"; + } + leaf spi { + type uint32 { + range "256..4294967295"; + } + description + "Use IPSec AH authentication. Specify the + Security Parameter Index (SPI) value"; + } + leaf algorithm { + type Ospfv3-authentication; + description + "Use the MD5 or SHA1 algorithm"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify MD5 or SHA1 password"; + } + } + } + + grouping DISTRIBUTE-LIST-OUT { + description + "Common node of default-vrf, vrf"; + container distribute-list-out { + description + "Filter prefixes from RIB "; + container distribute-outs { + description + "Filter generated type-5 LSAs"; + list distribute-out { + must "all-or-connected-or-static-prefix-list or bgp or ospfv3-or-isis or eigrp" { + description + "All-or-Connected-or-Static or BGP or + OSPFv3-or-ISIS or EIGRP must be present."; + } + key "protocol-name"; + description + "Filter generated type-5 LSAs"; + + grouping DISTRIBUTE-OUT-CONTENT { + description + "DISTRIBUTE OUT CONTENT"; + leaf prefix-list { + type string; + description + "Prefix-list name"; + } + } + leaf all-or-connected-or-static-prefix-list { + when "../protocol-name = 'all' or ../protocol-name = 'connected' or ../protocol-name = 'static'" { + description + "../ProtocolName = All or ../ProtocolName = + Connected or ../ProtocolName = Static"; + } + type string; + description + "Prefix-list name"; + } + leaf protocol-name { + type Ospfv3-protocol; + description + "none"; + } + list bgp { + when "../protocol-name = 'bgp'" { + description + "../ProtocolName = BGP"; + } + key "as-xx as-yy"; + description + "bgp"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "4-byte AS number in asdot (X.Y) format - + first half (X), or 2 byte AS number + .Mandatory if Protocol is BGP or EIGRP and + must not be specified otherwise. Must be a + non-zero value if second half is zero."; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "4-byte AS number in asdot (X.Y) format - + second half (Y), or 2-byte AS number, or + 4-byte AS number in asplain format.Mandatory + if Protocol is BGP and must not be specified + otherwise. Must be a non-zero value if first + half is zero."; + } + uses DISTRIBUTE-OUT-CONTENT; + } + list ospfv3-or-isis { + when "../protocol-name = 'ospfv3' or ../protocol-name = 'isis'" { + description + "../ProtocolName = OSPFv3 or ../ProtocolName + = ISIS"; + } + key "process-name"; + description + "ospfv3 or isis"; + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "If ISIS or OSPFv3, specify the instance name"; + } + uses DISTRIBUTE-OUT-CONTENT; + } + list eigrp { + when "../protocol-name = 'eigrp'" { + description + "../ProtocolName = EIGRP"; + } + key "as-xx"; + description + "eigrp"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "4-byte AS number in asdot (X.Y) format - + first half (X), or 2 byte AS number + .Mandatory if Protocol is BGP or EIGRP and + must not be specified otherwise. Must be a + non-zero value if second half is zero."; + } + uses DISTRIBUTE-OUT-CONTENT; + } + } + } + } + } + + grouping DISTRIBUTE-LIST { + description + "Common node of default-vrf, vrfCommon node of + default-vrf, vrf"; + container distribute-list { + description + "Filter prefixes to/from RIB"; + container in { + description + "Filter prefixes installed to RIB"; + leaf prefix-list { + type string; + description + "Filter prefixes based on an IPv6 prefix-list"; + } + } + } + } + + grouping COST { + description + "Common node of default-vrf, vrf"; + leaf cost { + type uint32 { + range "1..65535"; + } + description + "Interface cost"; + } + } + + grouping PACKET-SIZE { + description + "Common node of default-vrf, vrf"; + leaf packet-size { + type uint32 { + range "256..10000"; + } + description + "Limit size of OSPFv3 packets"; + } + } + + grouping FAST-REROUTE { + description + "Common node of default-vrf, vrf"; + container fast-reroute { + description + "Fast-reroute instance scoped parameters"; + container per-link { + description + "Fast-reroute per-link global configuration"; + uses PRIORITY; + } + container per-prefix { + description + "Fast-reroute per-prefix global configuration"; + container tiebreakers { + description + "Fast-reroute tiebreakers configurations"; + list tiebreaker { + key "tiebreaker-type"; + description + "Fast-reroute tiebreakers configuration"; + leaf tiebreaker-type { + type Ospfv3-fast-reroute-tiebreakers; + description + "Tiebreaker type"; + } + leaf tiebreaker-index { + type uint32 { + range "1..255"; + } + mandatory true; + description + "Index value for a tiebreaker"; + } + } + } + leaf load-sharing-disable { + type empty; + description + "Disable load sharing between multiple backups"; + } + uses PRIORITY; + } + } + } + + grouping IPV6-OSPFV3-INTFOBJ-CFG-FAST-REROUTE { + description + "Common node of default-vrf, vrfCommon node of + process-scope, area-scope, interface"; + container fast-reroute { + description + "Fast-reroute configuration"; + container per-link { + description + "Fast-reroute per-link configuration"; + uses FAST-REROUTE-USE-CANDIDATE-ONLY; + uses CANDIDATE-INTERFACE-TABLE; + uses EXCLUDE-INTERFACE-TABLE; + } + container per-prefix { + description + "Fast-reroute per-link configuration"; + uses FAST-REROUTE-USE-CANDIDATE-ONLY; + uses CANDIDATE-INTERFACE-TABLE; + uses EXCLUDE-INTERFACE-TABLE; + } + leaf fast-reroute-enable { + type Ospfv3-fast-reroute; + description + "Enable/Disable Fast-reroute per-link or + per-prefix"; + } + } + } + + grouping SUMMARY-PREFIX-TABLE { + description + "Common node of default-vrf, vrf"; + container summary-prefixes { + description + "Summarize redistributed routes matching + prefix/length"; + list summary-prefix { + key "prefix prefix-length"; + description + "IPv6 address"; + leaf prefix { + type xr:Cisco-ios-xr-string; + description + "IPv6 prefix string format"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "IPV6 prefix length"; + } + leaf not-advertise { + type boolean; + description + "Suppress routes matching prefix/length"; + } + leaf tag { + type uint32 { + range "1..4294967295"; + } + description + "Tag"; + } + } + } + } + + grouping MAXIMUM { + description + "Common node of default-vrf, vrf"; + container maximum { + description + "Set OSPFv3 limits"; + container redistributed-prefixes { + description + "Limit number of redistributed prefixes"; + leaf prefixes { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of prefixes redistributed to + protocol"; + } + leaf threshold { + type uint32 { + range "1..100"; + } + description + "Threshold value (%) at which to generate a + warning message"; + } + leaf warning-only { + type empty; + description + "Only give warning message when limit is + exceeded"; + } + } + leaf interfaces { + type uint32 { + range "1..4294967295"; + } + description + "Specify maximum number of interfaces"; + } + leaf paths { + type uint32 { + range "1..64"; + } + description + "Specify maximum number of paths per route"; + } + } + } + + grouping NETWORK { + description + "Common node of default-vrf, vrf"; + leaf network { + type Ospfv3-network; + description + "Specify network type"; + } + } + + grouping HELLO-INTERVAL { + description + "Common node of default-vrf, vrf"; + leaf hello-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Time between HELLO packets"; + } + } + + grouping PROCESS-SCOPE { + description + "Common node of default-vrf, vrf"; + container process-scope { + description + "Process scope configuration"; + uses IPV6-OSPFV3-INTFOBJ-CFG-FAST-REROUTE; + } + } + + grouping SPF-PREFIX-PRIORITY-POLICY { + description + "Common node of default-vrf, vrf"; + leaf spf-prefix-priority-policy { + type string; + description + "Route policy for SPF prefix prioritization"; + } + } + + grouping CAPABILITY { + description + "Common node of vrf, default-vrf"; + container capability { + description + "OSPFv3 Capability"; + leaf type7-prefer { + type boolean; + description + "NSSA capability to prefer Type 7 over Type 5"; + } + leaf vrf-lite { + type boolean; + description + "Enable VRF Lite"; + } + leaf type7-translate-zero-forwarding-addr { + type boolean; + description + "Enable capability to translate LSAs with fwd + addr"; + } + leaf lls-disable { + type boolean; + description + "To disable LLS capability"; + } + } + } + + grouping MTU-IGNORE { + description + "Common node of default-vrf, vrf"; + leaf mtu-ignore { + type boolean; + description + "Enable/disable ignoring of MTU in DBD packets"; + } + } + + grouping FAST-REROUTE-USE-CANDIDATE-ONLY { + description + "Common node of per-link, per-prefix"; + leaf fast-reroute-use-candidate-only { + type boolean; + default "false"; + description + "Use only interfaces on the candidate list as a + backup path"; + } + } + + grouping GRACEFUL-RESTART { + description + "Common node of default-vrf, vrf"; + container graceful-restart { + description + "Graceful restart configuration"; + leaf interval { + type uint32 { + range "90..3600"; + } + units "second"; + description + "Minimum interval between graceful restarts + (seconds)"; + } + leaf strict-lsa-checking { + type empty; + description + "Terminate graceful restart helper mode if LSA + changed"; + } + leaf helper { + type empty; + description + "Disable router's helper support"; + } + leaf enable { + type empty; + description + "Enable graceful restart"; + } + leaf lifetime { + type uint32 { + range "90..1800"; + } + units "second"; + description + "Maximum route lifetime following restart + (seconds)"; + } + } + } + + grouping BFD { + description + "Common node of default-vrf, vrf"; + container bfd { + description + "Configure BFD parameters"; + leaf interval { + type uint32 { + range "3..30000"; + } + units "millisecond"; + description + "Hello interval in milli-seconds"; + } + leaf detection-multiplier { + type uint32 { + range "2..50"; + } + description + "Detect multiplier"; + } + leaf fast-detect-mode { + type Ospfv3bfd-enable-mode; + description + "Enable or disable BFD fast detection"; + } + } + } + + grouping SNMP { + description + "Common node of default-vrf, vrf"; + container snmp { + description + "SNMP configuration"; + container trap-rate-limit { + description + "SNMP trap rate configuration"; + leaf window-size { + type uint32 { + range "2..60"; + } + description + "Trap rate limit sliding window size"; + } + leaf max-window-traps { + type uint32 { + range "0..300"; + } + description + "Max number of traps sent in window time"; + } + } + leaf context { + type string; + description + "SNMP context configuration"; + } + } + } + + grouping ON-STARTUP { + description + "Common node of rbit, v6bit, max-metric"; + container on-startup { + description + "Enter stub router operational state on startup"; + leaf wait-for-bgp { + type boolean; + default "false"; + description + "Wait until BGP converges (only applicable to + default VRF)"; + } + leaf wait-time { + when "../wait-for-bgp = 'false'" { + description + "../WaitForBGP = 'false'"; + } + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time (in seconds) to stay in stub router + operational state"; + } + } + } + + grouping FLOOD-REDUCTION { + description + "Common node of default-vrf, vrf"; + leaf flood-reduction { + type boolean; + description + "Enable/disable flood reduction"; + } + } + + grouping ON-SWITCHOVER { + description + "Common node of rbit, v6bit, max-metric"; + leaf on-switchover { + type uint32 { + range "5..86400"; + } + units "second"; + description + "Time (in seconds) to stay in stub router + operational state"; + } + } + + grouping DEAD-INTERVAL { + description + "Common node of default-vrf, vrf"; + leaf dead-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Interval after which a neighbor is declared dead + (in seconds)"; + } + } + + grouping INSTANCE { + description + "Common node of default-vrf, vrf"; + leaf instance { + type uint32 { + range "0..255"; + } + description + "Instance ID"; + } + } + + grouping ROUTER-ID { + description + "Common node of default-vrf, vrf"; + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Specify the router ID for this OSPFv3 process in + IPv4 address format"; + } + } + + grouping DEFAULT-METRIC { + description + "Common node of default-vrf, vrf"; + leaf default-metric { + type uint32 { + range "1..16777214"; + } + description + "Set metric of redistributed routes"; + } + } + + grouping RETRANSMIT-INTERVAL { + description + "Common node of default-vrf, vrf"; + leaf retransmit-interval { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Specify the transmit interval in seconds"; + } + } + + grouping PRIORITY { + description + "Common node of per-link, per-prefix"; + leaf priority { + type Ospfv3-fast-reroute-priority; + description + "Fast-reroute per-link/per-prefix priority-limit + command"; + } + } + + grouping IPV6-OSPFV3-CFG-PRIORITY { + description + "Common node of per-link, per-prefixCommon node of + default-vrf, vrf"; + leaf priority { + type uint32 { + range "0..255"; + } + description + "Specify router priority"; + } + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container ospfv3 { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-ospfv3-cfg.yang which + will provide the compatible functionalities. + OSPFv3-MIB notification configuration"; + container error { + description + "SNMP notifications for OSPF errors"; + leaf config-error { + type empty; + description + "Enable ospfv3IfConfigError notification"; + } + leaf bad-packet { + type empty; + description + "Enable ospfv3IfRxBadPacket notification"; + } + leaf virtual-bad-packet { + type empty; + description + "Enable ospfv3VirtIfRxBadPacket notification"; + } + leaf virtual-config-error { + type empty; + description + "Enable ospfv3VirtIfConfigError notification"; + } + } + container state-change { + description + "SNMP notifications for OSPF state change"; + leaf restart-virtual-helper { + type empty; + description + "Enable ospfv3VirtNbrRestartHelperStatusChange + notification"; + } + leaf nssa-translator { + type empty; + description + "Enable ospfv3NssaTranslatorStatusChange + notification"; + } + leaf interface { + type empty; + description + "Enable ospfv3IfStateChange notification"; + } + leaf restart { + type empty; + description + "Enable ospfv3RestartStatusChange notification"; + } + leaf neighbor { + type empty; + description + "Enable ospfv3NbrStateChange notification"; + } + leaf virtual-interface { + type empty; + description + "Enable ospfv3VirtIfStateChange notification"; + } + leaf restart-helper { + type empty; + description + "Enable ospfv3NbrRestartHelperStatusChange + notification"; + } + leaf virtual-neighbor { + type empty; + description + "Enable ospfv3VirtNbrStateChange notification"; + } + } + } + } + container ospfv3 { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-router-ospfv3-cfg.yang which will + provide the compatible functionalities. OSPFv3 + configuration"; + container processes { + description + "OSPFv3 processes"; + list process { + key "process-name"; + description + "An OSPFv3 process"; + container default-vrf { + description + "Default VRF related configuration"; + leaf ldp-sync { + type boolean; + description + "Enable/Disable MPLS LDP sync"; + } + leaf prefix-suppression { + type boolean; + description + "Enable/disable prefix suppression on an + interface"; + } + leaf spf-prefix-priority-disable { + type empty; + description + "SPF prefix prioritization disabled"; + } + uses AREA-TABLE; + uses TIMERS; + uses SUMMARY-PREFIX-TABLE; + uses SNMP; + uses FAST-REROUTE; + uses RETRANSMIT-INTERVAL; + uses DISTANCE; + uses PASSIVE; + uses DEFAULT-METRIC; + uses FLOOD-REDUCTION; + uses MAXIMUM; + uses REDISTRIBUTE-TABLE; + uses IGNORE; + uses DISTRIBUTE-LIST-OUT; + uses DISTRIBUTE-LIST; + uses HELLO-INTERVAL; + uses STUB-ROUTER; + uses IPV6-OSPFV3-CFG-PRIORITY; + uses BFD; + uses COST; + uses DEAD-INTERVAL; + uses PACKET-SIZE; + uses INSTANCE; + uses SPF-PREFIX-PRIORITY-POLICY; + uses DATABASE-FILTER; + uses ROUTER-ID; + uses CAPABILITY; + uses NETWORK; + uses MTU-IGNORE; + uses LOG-ADJACENCY-CHANGES; + uses AUTHENTICATION; + uses DEMAND-CIRCUIT; + uses GRACEFUL-RESTART; + uses DEFAULT-INFORMATION; + uses PROCESS-SCOPE; + uses ENCRYPTION; + uses AUTO-COST; + uses TRANSMIT-DELAY; + } + container vrfs { + description + "VRF related configuration"; + list vrf { + key "vrf-name"; + description + "Configuration for a particular OSPF VRF"; + container domain-id { + description + "OSPFv3 Domain ID"; + container secondary-domain-ids { + description + "Secondary domain ID Table"; + list secondary-domain-id { + key "domain-id-type domain-id-name"; + description + "OSPF Secondary domain ID"; + leaf domain-id-type { + type Ospfv3-domain-id; + description + "Secondary domain ID type"; + } + leaf domain-id-name { + type xr:Cisco-ios-xr-string; + description + "Secondary domain ID value"; + } + } + } + container primary-domain-id { + description + "OSPF Primary domain ID"; + leaf domain-id-type { + type Ospfv3-domain-id; + description + "Primary domain ID type"; + } + leaf domain-id-name { + type string; + description + "Primary domain ID value"; + } + } + } + leaf snmpvrf-trap { + type empty; + description + "Enable SNMP trap configuration in a VRF"; + } + leaf prefix-suppression { + type boolean; + description + "Enable/disable prefix suppression on an + interface"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name for this VRF"; + } + uses AREA-TABLE; + uses TIMERS; + uses SUMMARY-PREFIX-TABLE; + uses SNMP; + uses FAST-REROUTE; + uses RETRANSMIT-INTERVAL; + uses DISTANCE; + uses PASSIVE; + uses DEFAULT-METRIC; + uses FLOOD-REDUCTION; + uses MAXIMUM; + uses REDISTRIBUTE-TABLE; + uses IGNORE; + uses DISTRIBUTE-LIST-OUT; + uses DISTRIBUTE-LIST; + uses HELLO-INTERVAL; + uses STUB-ROUTER; + uses IPV6-OSPFV3-CFG-PRIORITY; + uses BFD; + uses COST; + uses DEAD-INTERVAL; + uses PACKET-SIZE; + uses INSTANCE; + uses SPF-PREFIX-PRIORITY-POLICY; + uses DATABASE-FILTER; + uses ROUTER-ID; + uses CAPABILITY; + uses NETWORK; + uses MTU-IGNORE; + uses LOG-ADJACENCY-CHANGES; + uses AUTHENTICATION; + uses DEMAND-CIRCUIT; + uses GRACEFUL-RESTART; + uses DEFAULT-INFORMATION; + uses PROCESS-SCOPE; + uses ENCRYPTION; + uses AUTO-COST; + uses TRANSMIT-DELAY; + } + } + container af { + presence "Indicates a af node is configured."; + description + "Address Family (AF)"; + leaf af-name { + type Ospfv3-address-family; + mandatory true; + description + "Address Family (AF) identifier"; + } + leaf saf-name { + type Ospfv3-subsequent-address-family; + description + "Subsequent Address Family (SAF) identifier"; + } + } + container trace-bufs { + description + "Configuration to change size of trace buffer"; + list trace-buf { + key "trace-buf-name"; + description + "Changes the size of the specified trace + buffer"; + leaf trace-buf-name { + type xr:Cisco-ios-xr-string; + description + "Name for this trace buffer"; + } + leaf bufsize { + type Ospfv3-trace-buf-size; + mandatory true; + description + "Buffer size"; + } + } + } + leaf nsr { + type Ospfv3nsr; + default "true"; + description + "Enable non-stop routing"; + } + leaf protocol-shutdown { + type empty; + description + "Enable protocol shutdown"; + } + leaf process-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "OSPFv3 process name"; + } + } + } + leaf dns-name-lookup { + type empty; + description + "Enable OSPFv3 router IDs as DNS names"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper-sub1.yang new file mode 100644 index 000000000..c73682a71 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper-sub1.yang @@ -0,0 +1,5510 @@ +submodule Cisco-IOS-XR-ipv6-ospfv3-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-ospfv3-oper { + prefix Cisco-IOS-XR-ipv6-ospfv3-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-ospfv3 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-16 { + description + "Added LSA counters per advertising router + 2022-09-05 + Added number of prefixes redistributed in ospfv3 summary output + 2022-06-28 + Exposed interface area field in interface brief"; + semver:module-version "2.3.0"; + } + revision 2021-06-16 { + description + "Added neighbor LLS options in neighbor detail"; + semver:module-version "2.2.0"; + } + revision 2020-04-29 { + description + "Added mtu and Bandwidth to show command"; + semver:module-version "2.1.0"; + } + revision 2020-02-04 { + description + "Modified for Conditional Advertising"; + semver:module-version "2.0.0"; + } + revision 2019-07-28 { + description + "Added datalist operation for container fast-reroute topology"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-08 { + description + "Modified for Programmability 2.0"; + } + revision 2018-06-15 { + description + "Added Aggregate statistics under summary container"; + } + revision 2017-10-30 { + description + "Added link information in grace LSA."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ospf-nsr-sched-pri { + type enumeration { + enum "ospf-nsr-stats-sched-pri-hi" { + value 0; + description + "ospf nsr stats sched pri hi"; + } + enum "ospf-nsr-stats-sched-pri-med" { + value 1; + description + "ospf nsr stats sched pri med"; + } + enum "ospf-nsr-stats-sched-pri-low" { + value 2; + description + "ospf nsr stats sched pri low"; + } + enum "ospf-nsr-stats-sched-pri-max" { + value 3; + description + "ospf nsr stats sched pri max"; + } + } + description + "Ospf nsr sched pri"; + } + + typedef Ospfv3-string-array { + type string; + description + "Ospfv3 string array"; + } + + typedef Ospfv3-graceful-shutdown-state { + type enumeration { + enum "init" { + value 0; + description + "Init"; + } + enum "normal" { + value 1; + description + "Normal"; + } + enum "flushing" { + value 2; + description + "Flushing"; + } + enum "empty-hellos" { + value 3; + description + "Empty Hellos"; + } + enum "quiet" { + value 4; + description + "Quiet"; + } + } + description + "Graceful Shutdown state"; + } + + typedef Ipfrr-tbrkr { + type enumeration { + enum "downstream" { + value 0; + description + "Downsteram"; + } + enum "line-card-disjoint" { + value 1; + description + "LC Disjoint"; + } + enum "backup-metric" { + value 2; + description + "Backup metric"; + } + enum "node-protect" { + value 3; + description + "Node protection"; + } + enum "primary-path" { + value 4; + description + "Primary path"; + } + enum "secondary-path" { + value 5; + description + "Secondary path"; + } + enum "srlg-disjoint" { + value 6; + description + "SRLG disjoint"; + } + enum "tunnel" { + value 7; + description + "Tunnel"; + } + } + description + "FRR Tiebreakers"; + } + + typedef Stub-router-abr-off-reason { + type enumeration { + enum "init-delay" { + value 2; + description + "Initial delay when stub router mode is + activated"; + } + enum "no-neighbor" { + value 3; + description + "No neighbor present"; + } + enum "no-full-neighbor" { + value 4; + description + "No neighbor in FULL state present"; + } + enum "new-neighbor" { + value 5; + description + "A new neighbor discovered less than 60 seconds + ago"; + } + enum "full-neighbor" { + value 6; + description + "A neighbor transitioned to FULL state less than + 60 seconds ago"; + } + } + description + "Reason to exiting stub router mode"; + } + + typedef Stub-router-exit-reason { + type enumeration { + enum "none" { + value 0; + description + "No reason"; + } + enum "bgp" { + value 1; + description + "BGP has converged"; + } + enum "timer" { + value 2; + description + "Stub Router timer has expired"; + } + enum "configuration" { + value 3; + description + "Configuration has changed"; + } + enum "cleared" { + value 4; + description + "Process has been cleared"; + } + enum "override" { + value 5; + description + "Preempted by always"; + } + } + description + "Reason to exiting stub router mode"; + } + + typedef Stub-router-trigger { + type enumeration { + enum "on-proc-migration" { + value 0; + description + "Process migration"; + } + enum "on-proc-restart" { + value 1; + description + "Process restart"; + } + enum "on-switchover" { + value 2; + description + "RP switchover"; + } + enum "on-startup" { + value 3; + description + "Router startup"; + } + enum "always" { + value 4; + description + "Always on"; + } + enum "none" { + value 5; + description + "No trigger"; + } + } + description + "Trigger for entering stub router mode"; + } + + typedef Stub-router-mode { + type enumeration { + enum "rbit" { + value 0; + description + "Stub Router mode r-bit"; + } + enum "v6bit" { + value 1; + description + "Stub Router mode v6-bit"; + } + enum "max-metric" { + value 2; + description + "Stub Router mode max-metric"; + } + enum "none" { + value 3; + description + "Stub Router not configured"; + } + } + description + "Stub Router mode"; + } + + typedef Ospfv3-neighbor-state { + type enumeration { + enum "neigbhor-down" { + description + "Down"; + } + enum "attempt" { + description + "Attempting"; + } + enum "init" { + description + "Initializing"; + } + enum "two-way" { + description + "2 Way"; + } + enum "exstart" { + description + "Exstart"; + } + enum "exchange" { + description + "Exchange"; + } + enum "loading" { + description + "Loading"; + } + enum "full" { + description + "Full"; + } + enum "sc-virtual" { + description + "SCVirtual"; + } + } + description + "OSPFv3 neighbor states"; + } + + typedef Ospfv3-interface { + type enumeration { + enum "none" { + description + "None"; + } + enum "broadcast" { + description + "Broadcast"; + } + enum "non-broadcast" { + description + "Non broadcast"; + } + enum "point-to-point" { + description + "Point To Point"; + } + enum "point-to-multipoint" { + description + "Point To Multipoint"; + } + enum "point-to-multipoint-non-broadcast" { + description + "Point-To-Multipoint Non broadcast"; + } + enum "virtual-link" { + description + "Virtual link"; + } + enum "loopback-interface" { + description + "Loopback"; + } + enum "mpls-traffic-engineering" { + description + "MPLS traffic engineering"; + } + enum "sham-link" { + description + "Sham link"; + } + } + description + "OSPFv3 neighbor interface types"; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Ospfv3-interface-state { + type enumeration { + enum "down" { + description + "Down"; + } + enum "loopback" { + description + "Loopback"; + } + enum "waiting" { + description + "Waiting"; + } + enum "point-to-multipoint" { + description + "Point To Multipoint"; + } + enum "point-to-point" { + description + "Point To Point"; + } + enum "designated-router" { + description + "Designated router"; + } + enum "backup-designated-router" { + description + "Backup designated router"; + } + enum "other-designated-router" { + description + "Other designated router"; + } + } + description + "OSPFv3 interface states"; + } + + typedef Ospfv3-graceful-restart-reason { + type enumeration { + enum "grace-reason-unknown" { + description + "Grace reason unknown"; + } + enum "grace-reason-software-restart" { + description + "Grace reason software restart"; + } + enum "grace-reason-software-upgrade" { + description + "Software reload/upgrade, RFC 3623"; + } + enum "grace-reason-switchover" { + description + "Switch to redundant control processor"; + } + } + description + "Reason for router restart"; + } + + typedef Ospfv3-lsa1 { + type enumeration { + enum "link" { + value 8; + description + "Link LSA"; + } + enum "grace" { + value 11; + description + "Grace LSA"; + } + enum "router" { + value 8193; + description + "Router LSA"; + } + enum "network" { + value 8194; + description + "Network LSA"; + } + enum "inter-area-prefix" { + value 8195; + description + "Inter area prefix LSA"; + } + enum "inter-area-router" { + value 8196; + description + "Inter area router LSA"; + } + enum "mospf" { + value 8198; + description + "MOSPF LSA"; + } + enum "type7-external" { + value 8199; + description + "Type-7 External LSA"; + } + enum "lsa-prefix" { + value 8201; + description + "Prefix LSA"; + } + enum "as-external" { + value 16389; + description + "AS external LSA"; + } + enum "unknown-link" { + value 32768; + description + "Unknown link LSA"; + } + enum "unknown-area" { + value 40960; + description + "Unknown area LSA"; + } + enum "unknown-as" { + value 49152; + description + "Unknown AS LSA"; + } + enum "unknown-type" { + value 57344; + description + "Unknown type LSA"; + } + } + description + "OSPFv3 LSA types"; + } + + typedef Prefix-priority { + type enumeration { + enum "critical" { + value 0; + description + "Critical priority"; + } + enum "high" { + value 1; + description + "High priority"; + } + enum "medium" { + value 2; + description + "Medium priority"; + } + enum "low" { + value 3; + description + "Low priority"; + } + } + description + "Prefix priority"; + } + + typedef Ospfv3-link { + type enumeration { + enum "link-router" { + value 1; + description + "Router link"; + } + enum "link-trans-net" { + value 2; + description + "Transit network link"; + } + enum "link-virtual-link" { + value 4; + description + "Virutal link"; + } + } + description + "OSPFV3 Link type"; + } + + typedef Ospf-lsa-sync-state { + type enumeration { + enum "none" { + description + "State not set"; + } + enum "out-of-sync" { + description + "LSA out of sync with active"; + } + enum "in-sync" { + description + "LSA in sync with active"; + } + enum "nsr-ack-pending" { + description + "NSR ack pending for LSA sync"; + } + } + description + "LSA synchronization states"; + } + + typedef Ospfv3-lsa-info-types { + type enumeration { + enum "mgmt-lsa-lsasum-type" { + value 0; + description + "Summary information of LSAs"; + } + enum "mgmt-lsa-link-type" { + value 8; + description + "Link LSA"; + } + enum "mgmt-lsa-gr-type" { + value 11; + description + "Grace LSA"; + } + enum "mgmt-lsa-rtr-type" { + value 8193; + description + "Router LSA"; + } + enum "mgmt-lsa-net-type" { + value 8194; + description + "Network LSA"; + } + enum "mgmt-lsa-iapfx-type" { + value 8195; + description + "Inter Area Prefix Summary LSA"; + } + enum "mgmt-lsa-iartr-type" { + value 8196; + description + "Inter Area Router Summay LSA"; + } + enum "mgmt-lsa-nssaext-type" { + value 8199; + description + "NSSA external LSA"; + } + enum "mgmt-lsa-prefix-type" { + value 8201; + description + "Intra Area Prefix LSA"; + } + enum "mgmt-lsa-ext-type" { + value 16389; + description + "Type 5 External LSA"; + } + enum "mgmt-lsa-unk-link-type" { + value 32768; + description + "Opaque Link scope LSA"; + } + enum "mgmt-lsa-unk-area-type" { + value 40960; + description + "Opaque Area scope LSA"; + } + enum "mgmt-lsa-unk-as-type" { + value 49152; + description + "Opaque AS scope LSA"; + } + enum "mgmt-lsa-unk-type" { + value 57344; + description + "Opaque Reserved scope LSA"; + } + } + description + "OSPFv3 LSA format types"; + } + + typedef Ospfv3-area-range-status { + type enumeration { + enum "advertise" { + value 1; + description + "Advertise this range"; + } + enum "do-not-advertise" { + value 2; + description + "Do not advertise this range"; + } + } + description + "Ospfv3 area range status"; + } + + typedef Ospfv3-border-route { + type enumeration { + enum "abr" { + value 1; + description + "Area border router"; + } + enum "asbr" { + value 2; + description + "Area system boundary router"; + } + enum "abr-asbr" { + value 3; + description + "Area border router and area system boundary + router"; + } + } + description + "OSPFv3 border route destination types"; + } + + typedef Ospfv3-default-metric { + type enumeration { + enum "type-none" { + description + "OSPFv3 default metric type None "; + } + enum "type1" { + description + "OSPFv3 default metric type 1 "; + } + enum "type2" { + description + "OSPFv3 default metric type 2 "; + } + } + description + "OSPFv3 default metric types "; + } + + grouping NSR-PL-RECV-DROP-ARRAY { + description + "Drop count while receiving messages"; + list nsr-pl-recv-drop-array { + max-elements "16"; + description + "nsr pl recv drop array"; + leaf entry { + type uint32; + description + "entry"; + } + } + } + + grouping NSR-PL-SEND-DROP-ARRAY { + description + "Drop count while sending messages"; + list nsr-pl-send-drop-array { + max-elements "7"; + description + "nsr pl send drop array"; + leaf entry { + type uint32; + description + "entry"; + } + } + } + + grouping NSR-PL-CLIENT-STATS-TYPE { + description + "NSR PL stats information"; + leaf prio-queue-level { + type string { + length "0..32"; + } + description + "npl priority queue level"; + } + list num-sent { + max-elements "5"; + description + "Total sent"; + leaf entry { + type uint64; + description + "Total sent"; + } + } + list num-recv { + max-elements "6"; + description + "Total recvd"; + leaf entry { + type uint64; + description + "Total recvd"; + } + } + list num-sent-drop { + max-elements "5"; + description + "Sent Error/drops"; + uses NSR-PL-SEND-DROP-ARRAY; + } + list num-recv-drop { + max-elements "6"; + description + "Recv Errors/drops"; + uses NSR-PL-RECV-DROP-ARRAY; + } + } + + grouping OSPF-SH-NCD-STATS { + description + "OSPF SH NCD STATS"; + list ncd-pri { + max-elements "2"; + description + "NCD statistics for various priorities"; + uses NSR-PL-CLIENT-STATS-TYPE; + } + } + + grouping OSPFV3-EDM-RTHREAD-QUEUE-STATS { + description + "OSPFv3 RIB thread queue statistics"; + leaf wq-eqtime { + type uint64; + description + "Head Entry Enqueue"; + } + leaf wq-dqtime { + type uint64; + description + "Last Entry Dequeue"; + } + leaf wq-first-eqtime { + type uint64; + description + "First Entry Enqueue"; + } + leaf wq-len-cur { + type int32; + description + "Current Work Queue Length"; + } + leaf wq-len-max { + type int32; + description + "Largest Work Queue Length"; + } + leaf wq-total-enqueued { + type uint32; + description + "Total Entries Enqueued"; + } + leaf wq-total-dequeued { + type uint32; + description + "Total Entries Dequeued"; + } + leaf wq-eneueue-errs { + type uint32; + description + "Enqueue Errors"; + } + leaf wq-dequeue-errs { + type uint32; + description + "Dequeue Errors"; + } + leaf wq-max-latency { + type uint64; + description + "Max Time Entry Was In Q"; + } + leaf wq-sum-latency { + type uint64; + description + "Sum Latencies To Calc Average"; + } + } + + grouping OSPFV3-EDM-RTHREAD-STATS { + description + "OSPFv3 RIB thread statistics"; + container thread-q { + description + "Inter Thread Queue"; + uses OSPFV3-EDM-RTHREAD-QUEUE-STATS; + } + container rib-base-time { + description + "Current time stamp"; + uses OSPFV3-EDM-TIME; + } + leaf wq-thread-active { + type boolean; + description + "RIB Thread Active Indicator"; + } + leaf wq-signals { + type uint32; + description + "Signals sent to RIB Thread"; + } + leaf rib-base-clock { + type uint64; + description + "Rib Base Clock value to calculate current time + from the timestamp"; + } + leaf rib-batch-sent { + type uint32; + description + "No. of Rib batches sent"; + } + leaf rib-batch-purged { + type uint32; + description + "No. of Rib batches purged"; + } + leaf rib-drop-version { + type uint32; + description + "No. of Rib batches dropped due to version + mismatch"; + } + leaf rib-drop-conn { + type uint32; + description + "No. of Rib batches dropped due to connection + issues"; + } + leaf rib-batch-ok { + type uint32; + description + "No. of Rib batches where all routes were + installed as active"; + } + leaf rib-batch-backup { + type uint32; + description + "No. of Rib batches where some routes were + installed as backup"; + } + leaf rib-batch-limit { + type uint32; + description + "No. of Rib batches that failed because Batch + limit reached"; + } + leaf rib-batch-no-table { + type uint32; + description + "No. of Rib batches that failed because table is + not created"; + } + leaf rib-batch-some-err { + type uint32; + description + "No. of Rib batches that failed to install + partially, where some routes in the batch were + installed, others failed"; + } + leaf rib-batch-err { + type uint32; + description + "No. of Rib batches that failed install entirely"; + } + leaf rib-route-limit { + type uint32; + description + "No. of routes failed to install due to Route + table limit"; + } + leaf rib-route-some-err { + type uint32; + description + "No. of routes failed to install partially, where + some of the paths in the route got installed, + but others failed"; + } + leaf rib-route-err { + type uint32; + description + "No. of routes that failed install entirely"; + } + leaf rib-path-limit { + type uint32; + description + "No. of routes that failed install due to path + limit"; + } + leaf rib-path-err { + type uint32; + description + "No. of routes that failed install due to errors + other than path limit"; + } + leaf rib-max-latency { + type uint64; + description + "Max time entry was in queue"; + } + leaf rib-sum-latency { + type uint64; + description + "Sum of latencies to calculate average latency"; + } + list holdq { + max-elements "4"; + description + "Rib thread Hold Queues"; + uses OSPFV3-EDM-RTHREAD-QUEUE-STATS; + } + } + + grouping OSPFV3-NSR-ERR-INFO-BAG { + description + "OSPFV3 NSR ERR INFO BAG"; + container last-err-time { + description + "Time this error was last hit"; + uses OSPFV3-EDM-TIME; + } + leaf err-count { + type int32; + description + "Count this error hit during the Nsr Revision"; + } + leaf err-info-string { + type string; + description + "Error Information"; + } + } + + grouping OSPFV3-NSR-ERR-BLOCK-BAG { + description + "OSPFV3 NSR ERR BLOCK BAG"; + leaf nsr-revisionversion { + type uint32; + description + "Revision version number for NSR"; + } + leaf total-errors { + type int32; + description + "Total errors for this nsr revision version"; + } + list nsr-error-info { + description + "List of erros"; + uses OSPFV3-NSR-ERR-INFO-BAG; + } + } + + grouping OSPFV3-ISSU-MILESTONE-BAG { + description + "OSPFV3 ISSU MILESTONE BAG"; + leaf milestone-name { + type string; + description + "Name of the Milestone"; + } + leaf milestone-status { + type string; + description + "Status of the Milestone"; + } + } + + grouping OSPF-SH-NSR-STATS-PRI { + description + "OSPF SH NSR STATS PRI"; + leaf nsr-sched-pri { + type Ospf-nsr-sched-pri; + description + "Priority Type"; + } + leaf nsr-sched-quant { + type uint8; + description + "Priority Queue"; + } + leaf nsr-sched-remain-quant { + type uint8; + description + "Remaining quantum"; + } + leaf nsr-sched-evs-in-q { + type uint16; + description + "Events pending"; + } + leaf nsr-sched-max-evs { + type uint16; + description + "Max Queued"; + } + leaf nsr-sched-peak-q-len { + type uint16; + description + "Peak queue length"; + } + leaf nsr-sched-evs-qd { + type uint64; + description + "Events queued"; + } + leaf nsr-sched-enq-fails { + type uint64; + description + "Event enqueue fails"; + } + leaf nsr-sched-evs-deqd { + type uint64; + description + "Events dequeued"; + } + } + + grouping OSPF-SH-NSR-SCHED-STATS { + description + "OSPF SH NSR SCHED STATS"; + leaf nsr-pulse-quant { + type int32; + description + "Events processed per pulse"; + } + leaf nsr-events-in-q { + type uint32; + description + "Events pending"; + } + leaf nsr-events-tx { + type uint64; + description + "Events to Router thread"; + } + leaf nsr-events-rx { + type uint64; + description + "Events processed"; + } + leaf nsr-bad-pulses-rx { + type uint64; + description + "Bad pulses received"; + } + leaf nsr-good-pulses-rx { + type uint64; + description + "Good pulses received"; + } + leaf nsr-pulses-tx { + type uint64; + description + "Pulses to Router thread"; + } + leaf nsr-pulse-tx-fails { + type uint64; + description + "Pulse send failures"; + } + list nsr-pri { + max-elements "3"; + description + "NSR priority statistics"; + uses OSPF-SH-NSR-STATS-PRI; + } + } + + grouping OSPFV3-EDM-NSR-STATS { + description + "OSPFV3 EDM NSR STATS"; + container nsr-thd-stats { + description + "NSR thread scheduler stats"; + uses OSPF-SH-NSR-SCHED-STATS; + } + container nsr-rtr-thd-sched { + description + "Rtr thread NSR pulse handler stats"; + uses OSPF-SH-NSR-SCHED-STATS; + } + leaf nsr-revision { + type int32; + description + "NSR revision"; + } + leaf nsr-fsm-state { + type int32; + description + "FSM state"; + } + leaf nsr-version { + type uint32; + description + "NSR version"; + } + leaf nsr-node-id { + type uint32; + description + "My nodeid"; + } + leaf nsr-peer-version { + type uint32; + description + "Partner NSR version"; + } + leaf nsr-peer-node-id { + type uint32; + description + "Partner NodeID"; + } + leaf nsr-peer-ep-length { + type uint32; + description + "Peer Endpoint Length"; + } + leaf nsr-peer-ep-ver { + type uint32; + description + "Peer Endpoint Version"; + } + leaf nsr-local-ep-length { + type uint32; + description + "Local Endpoint Length"; + } + leaf nsr-local-ep-ver { + type uint32; + description + "Local Endpoint Version"; + } + leaf nsr-mtu { + type uint32; + description + "Fabric MTU"; + } + leaf nsr-nbr-qad-qid { + type uint32; + description + "NBR QAD queue id"; + } + leaf nsr-lsa-qad-qid { + type uint32; + description + "LSA QAD queue id"; + } + leaf nsr-nbr-qad-mdata-count { + type uint32; + description + "NBR QAD pending msg"; + } + leaf nsr-lsa-qad-mdata-count { + type uint32; + description + "LSA QAD pending msgs"; + } + leaf nsr-nbr-init-sync-pend-count { + type int32; + description + "Pending init-sync NBR msgs"; + } + leaf nsr-lsa-init-sync-pend-count { + type int32; + description + "Pending init-sync LSA msgs"; + } + leaf nsr-nbr-seq-no { + type uint32; + description + "Neighbor TLV sequence no"; + } + leaf nsr-intf-seq-no { + type uint32; + description + "Interface TLV sequence no"; + } + leaf nsr-tmr-quant { + type int32; + description + "Timers processed per pulse"; + } + leaf nsr-peer-hdl { + type uint64; + description + "Peer DS Handle"; + } + leaf nsr-local-hdl { + type uint64; + description + "Local DS Handle"; + } + leaf nsr-conn-to-active-attempts { + type uint64; + description + "No. of Attempts to connect to active"; + } + leaf nsr-conn-to-active-fails { + type uint64; + description + "No. of Failures to connect to active"; + } + leaf nsr-conn-to-active-opens { + type uint64; + description + "No. of active connections opened"; + } + leaf nsr-conn-to-active-closes { + type uint64; + description + "No. of active connections closed"; + } + leaf nsr-conn-to-active-errors { + type uint64; + description + "No. of connections errors"; + } + leaf nsr-peer-ep { + type yang:hex-string; + description + "Peer Endpoint"; + } + leaf nsr-local-ep { + type yang:hex-string; + description + "Local Endpoint"; + } + list nsr-fsm-flag { + description + "Nsr Fsm Flags information"; + leaf entry { + type Ospfv3-string-array; + description + "Nsr Fsm Flags information"; + } + } + list nsr-fsm-running-timer { + description + "Nsr Fsm Running Timers"; + leaf entry { + type Ospfv3-string-array; + description + "Nsr Fsm Running Timers"; + } + } + list nsr-issu-milestone { + description + "Milestones of NSR ISSU"; + uses OSPFV3-ISSU-MILESTONE-BAG; + } + list nsr-err-history { + description + "Error History List of NSR"; + uses OSPFV3-NSR-ERR-BLOCK-BAG; + } + } + + grouping OSPF-SH-IPFRR-TOPO-ENTRY { + description + "OSPF_IPFRR Topology Entry"; + leaf node-id { + type inet:ipv4-address; + description + "IPFRR Topology Node ID"; + } + leaf lsaid { + type uint32; + description + "IPFRR Topology LSA ID"; + } + leaf distance { + type uint32; + description + "IPFRR Topology Distance"; + } + leaf type4 { + type boolean; + description + "IPFRR Topoogy Type-4 entry"; + } + leaf revision { + type uint32; + description + "IPFRR Topology Revision"; + } + leaf neighbor-sourced { + type boolean; + description + "IPFRR Topology Neighbor Sourced"; + } + leaf dr { + type boolean; + description + "IPFRR Topology DR entry"; + } + } + + grouping OSPFV3-SH-IPFRR-TOPO { + description + "OSPF IPFRR Topology Information"; + leaf ipfrr-topo-area-id { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted decimal + format"; + } + leaf ipfrr-local-router-id { + type inet:ipv4-address; + description + "OSPF Local Node Router ID"; + } + leaf ipfrr-area-revision { + type uint32; + description + "IPFRR Topology Revision"; + } + list ipfrr-topo { + description + "IPFRR Topology entries"; + uses OSPF-SH-IPFRR-TOPO-ENTRY; + } + } + + grouping OSPFV3-SH-BAD-CHECKSUM { + description + "OSPFv3 Bad Checksum"; + container timestamp { + description + "Packet Timestamp (relative to 1970/1/1 00:00)"; + uses OSPFV3-EDM-TIME; + } + leaf received-checksum { + type uint16; + description + "Received Checksum value"; + } + leaf computed-checksum { + type uint16; + description + "Computed Checksum value"; + } + leaf received-data { + type yang:hex-string; + description + "Received Hexadecimal Data"; + } + } + + grouping OSPFV3-EDM-ADV-RTR-LSA-SUM { + description + "OSPFv3 LSA summary per advertising router"; + leaf advertising-router-id { + type inet:ipv4-address; + description + "ID of the Advertising Router"; + } + leaf database-router-id { + type inet:ipv4-address; + description + "Self router ID "; + } + leaf is-opaque-database-capable { + type boolean; + description + "If true, opaque database is capable "; + } + leaf total-lsa-count { + type uint32; + description + "Total LSA count from the advertising router"; + } + leaf deleted-maxage-total-count { + type uint32; + description + "Total count of Maxaged LSA to be deleted from + the advertising router"; + } + leaf-list lsa-count { + type uint32; + max-elements "15"; + description + "Counter for each type of LSA"; + } + leaf-list deleted-maxage-count { + type uint32; + max-elements "15"; + description + "Counter for each type of Maxaged LSA to be + deleted"; + } + } + + grouping OSPFV3-SH-STATS-AGGT { + description + "OSPFV3 SH STATS AGGT"; + leaf neighbor-number { + type uint32; + description + "Number of neighbor"; + } + leaf adjacent-neighbor-number { + type uint32; + description + "Number of adjacent neighbor"; + } + leaf interface-number { + type uint32; + description + "Number of interfaces"; + } + leaf interface-up-number { + type uint32; + description + "Number of interfaces in UP state"; + } + leaf virtual-link-up-number { + type uint32; + description + "Number of Virtual link in UP state"; + } + leaf sham-link-up-number { + type uint32; + description + "Number of Sham link in UP state"; + } + leaf area-numaber { + type uint32; + description + "Number of Area"; + } + leaf unknown-lsa-count { + type uint32; + description + "Unknown LSA count"; + } + leaf router-lsa-count { + type uint32; + description + "Router LSA count"; + } + leaf network-lsa-count { + type uint32; + description + "Network LSA count"; + } + leaf inter-area-prefix-lsa-count { + type uint32; + description + "Inter Area Prefix LSA Count"; + } + leaf inter-area-router-lsa-count { + type uint32; + description + "Inter Area Router LSA Count"; + } + leaf ase-lsa-count { + type uint32; + description + "ASE LSA count"; + } + leaf mospf-lsa-count { + type uint32; + description + "MOSPF LSA count"; + } + leaf type7-ase-lsa-count { + type uint32; + description + "Type-7 ASE LSA count "; + } + leaf link-lsa-count { + type uint32; + description + "Link LSA count"; + } + leaf prefix-lsa-count { + type uint32; + description + "Prefix LSA count"; + } + leaf type10lsa-count { + type uint32; + description + "Type-10 LSA count"; + } + leaf grace-lsa-count { + type uint32; + description + "Grace LSA count"; + } + leaf opaque-link-lsa-count { + type uint32; + description + "Opaque Link LSA count"; + } + leaf opaque-area-lsa-count { + type uint32; + description + "Opaque Area LSA count"; + } + leaf opaque-as-lsa-count { + type uint32; + description + "Opaque AS LSA count"; + } + leaf unknown-area-lsa-count { + type uint32; + description + "Unknown Area LSA count"; + } + leaf unknown-link-lsa-count { + type uint32; + description + "Unknown Link LSA count"; + } + leaf unknown-as-lsa-count { + type uint32; + description + "Unknown AS LSA count"; + } + } + + grouping OSPF-SH-IPFRR-TB { + description + "OSPF IPFRR Tiebreakers"; + leaf tiebreaker-type { + type Ipfrr-tbrkr; + description + "Tiebreaker Type used"; + } + leaf tiebreaker-index { + type uint32; + description + "Index of the Tiebreaker"; + } + } + + grouping OSPFV3-SH-STUB-ROUTER-TRIGGER { + description + "OSPFv3 stub router trigger information"; + container unset-time { + description + "Timestamp (relative to 1970/1/1 00:00) when stub + router condition was cleared"; + uses OSPFV3-EDM-TIME; + } + container start-time { + description + "Timestamp (relative to 1970/1/1 00:00) when stub + router mode was activated"; + uses OSPFV3-EDM-TIME; + } + leaf trigger { + type Stub-router-trigger; + description + "Stub Router Trigger type"; + } + leaf wait-for-bgp { + type boolean; + description + "If true, stub router is terminated when BGP + converges"; + } + leaf unset-reason { + type Stub-router-exit-reason; + description + "Reason for clearing stub router condition"; + } + leaf time { + type uint32; + units "second"; + description + "Time (in seconds) to stay in stub router mode"; + } + } + + grouping OSPFV3-EDM-TIME { + description + "OSPFv3 time stamp"; + leaf second { + type uint32; + units "second"; + description + "Seconds "; + } + leaf nanosecond { + type uint32; + units "nanosecond"; + description + "Nano seconds "; + } + } + + grouping OSPFV3-SH-STUB-ROUTER { + description + "OSPFv3 Stub Router Information"; + container unset-time { + description + "Timestamp (relative to 1970/1/1 00:00) when stub + router condition was cleared"; + uses OSPFV3-EDM-TIME; + } + container start-time { + description + "Timestamp (relative to 1970/1/1 00:00) when stub + router mode was activated"; + uses OSPFV3-EDM-TIME; + } + container abr-resume-time { + description + "Timestamp (relative to 1970/1/1 00:00) when ABR + duties were resumed"; + uses OSPFV3-EDM-TIME; + } + leaf mode { + type Stub-router-mode; + description + "Stub router mode"; + } + leaf active { + type boolean; + description + "If true, stub router mode is active"; + } + leaf remaining-time { + type uint32; + units "second"; + description + "Remaining time (in seconds) in stub router mode"; + } + leaf set-reason { + type Stub-router-trigger; + description + "Reason for entering stub router mode"; + } + leaf unset-reason { + type Stub-router-exit-reason; + description + "Reason for clearing stub router condition"; + } + leaf include-stub-links { + type boolean; + description + "If true, advertise maximum metric for stub links"; + } + leaf summary-lsa-metric { + type uint32; + description + "Metric for summary LSAs in max-metric mode"; + } + leaf external-lsa-metric { + type uint32; + description + "Metric for external LSAs in max-metric mode"; + } + leaf abr-off-reason { + type Stub-router-abr-off-reason; + description + "Reason for being in ABR off mode"; + } + list trigger { + description + "Triggers for entering stub router mode"; + uses OSPFV3-SH-STUB-ROUTER-TRIGGER; + } + } + + grouping OSPFV3-SH-DOMAIN-ID-ENTRY { + description + "OSPF Domain ID"; + leaf domain-id-type { + type uint16; + description + "Domain ID Type"; + } + leaf domain-id-value { + type yang:hex-string; + description + "Domain ID value"; + } + } + + grouping OSPFV3-SH-DOMAIN-ID { + description + "OSPF Domain ID entries"; + container primary-domain-id { + description + "Primary Domain ID"; + uses OSPFV3-SH-DOMAIN-ID-ENTRY; + } + list secondary-domain-id { + description + "List of secondary domain IDs"; + uses OSPFV3-SH-DOMAIN-ID-ENTRY; + } + } + + grouping OSPFV3-EDM-SUMMARY { + description + "OSPFv3 summary"; + container domain-id { + description + "Domain ID information"; + uses OSPFV3-SH-DOMAIN-ID; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf is-role-standby { + type boolean; + description + "If true, the process is running as stanby role"; + } + leaf role { + type uint32; + description + "Role, V1/V2 Active/Standby"; + } + leaf is-nsr-enabled { + type boolean; + description + "If true, NSR is enabled"; + } + leaf is-nsr-switchover-on-restart { + type boolean; + description + "Trigger RP Switchover on detectable process + restart"; + } + leaf is-router-id-stalled { + type boolean; + description + "Stalled Router ID "; + } + leaf is-opaque-capable { + type boolean; + description + "Opaque LSA capable "; + } + leaf is-area-border-router { + type boolean; + description + "If true, is an area border router"; + } + leaf is-as-border-router { + type boolean; + description + "If true, is an AS border router"; + } + leaf capability-prefer-type7 { + type boolean; + description + "If true, prefer type 7 LSAs over type 5"; + } + leaf metric { + type uint32; + description + "Redistribution metric "; + } + leaf is-default-originated { + type boolean; + description + "If true, default route LSA is originated"; + } + leaf is-default-always { + type boolean; + description + "If true, default route LSA is originated always"; + } + leaf default-metric { + type uint32; + description + "Metric for the redistributed default route"; + } + leaf default-metric-type { + type Ospfv3-default-metric; + description + "Default metric type to be used if not + specifically configured"; + } + leaf default-tag { + type uint32; + description + "Route tag of the default route LSA"; + } + leaf is-default-policy { + type boolean; + description + "If true, there is a default route policy "; + } + leaf default-policy-name { + type string; + description + "Default route policy name "; + } + leaf spf-start-time { + type uint32; + description + "Scheduling delay for SPF (ms)"; + } + leaf spf-hold-time { + type uint32; + description + "Minimum delay time between SPF runs (ms)"; + } + leaf spf-maximum-time { + type uint32; + description + "Maximum delay time between SPF runs (ms)"; + } + leaf lsa-start-time { + type uint32; + description + "Initial LSA throttle delay (ms)"; + } + leaf lsa-hold-time { + type uint32; + description + "Second delay before generating next LSA (ms)"; + } + leaf lsa-maximum-time { + type uint32; + description + "Maximum delay before generating an LSA (ms)"; + } + leaf minimum-lsa-interval { + type uint32; + description + "Minimum time between LSA regeneration (ms)"; + } + leaf lsa-group-interval { + type uint32; + description + "LSA refresh interval (sec)"; + } + leaf lsa-flood-pacing-interval { + type uint32; + description + "LSA flood pacing timer (ms)"; + } + leaf lsa-retransmission-pacing-interval { + type uint32; + description + "LSA retransmission pacing timer (ms)"; + } + leaf as-ls-as { + type uint32; + description + "Number of AS scope LSAs"; + } + leaf opaque-lsas { + type uint32; + description + "Number of opaque LSAs"; + } + leaf opaque-lsa-checksum { + type uint32; + description + "Sum of opaque LSA checksum"; + } + leaf as-dc-bitless-ls-as { + type uint32; + description + "Number of external and AS opaque LSAs with + demand circut bit not set"; + } + leaf as-do-not-age-ls-as { + type uint32; + description + "Number of external and AS opaque LSAs with do + not age set "; + } + leaf areas { + type uint16; + description + "Number of areas"; + } + leaf normal-areas { + type uint16; + description + "Number of normal areas"; + } + leaf stub-areas { + type uint16; + description + "Number of stub and total stub areas"; + } + leaf nssa-areas { + type uint16; + description + "Number of NSSA areas"; + } + leaf as-lsa-flood-list-length { + type uint32; + description + "Length of AS LSAs flood list"; + } + leaf is-grace-restart-enabled { + type boolean; + description + "If true, grace restart is enabled "; + } + leaf last-nsf-time { + type uint32; + description + " Length of time since the last NSF (s)"; + } + leaf grace-resync-time { + type uint32; + description + "Grace time to resync "; + } + leaf maximum-interfaces { + type uint32; + description + "Maximum number of interfaces"; + } + leaf maximum-paths { + type uint32; + description + "Maximum number of paths"; + } + leaf redistribution-limit { + type uint32; + description + "The number of redistributed prefixes allowed"; + } + leaf redistribution-threshold { + type uint32; + description + "When the number of redistributed prefixes + reaches this threshold, a warning message is + issued "; + } + leaf is-auto-cost { + type boolean; + description + "If true, auto cost is enabled"; + } + leaf reference-bandwidth { + type uint32; + description + "Reference Bandwdith used for metric calculation"; + } + leaf context-name { + type string { + length "0..32"; + } + description + "SNMP Context name"; + } + leaf snmp-trap-enabled { + type boolean; + description + "If true, snmp trap is enabled"; + } + leaf graceful-shutdown-state { + type Ospfv3-graceful-shutdown-state; + description + "Graceful shutdown state of OSPFv3"; + } + leaf redistribution-count { + type uint32; + description + "Current number of prefixes redistributed"; + } + list stub-router { + description + "Stub Router Information"; + uses OSPFV3-SH-STUB-ROUTER; + } + list ipfrr-tiebreakers { + description + "IPFRR-Tiebreakers list"; + uses OSPF-SH-IPFRR-TB; + } + } + + grouping OSPFV3-EDM-PROTOCOL { + description + "OSPFv3 Protocol Information"; + leaf protocol-router-id { + type inet:ipv4-address; + description + "OSPFv3 router ID"; + } + leaf administrative-distance { + type uint32; + description + "Administrative distance of OSPFv3 routes"; + } + leaf administrative-distance-inter-area { + type uint32; + description + "Administrative Distance for Inter Area routes"; + } + leaf administrative-distance-external { + type uint32; + description + "Administrative Distance for External routes"; + } + leaf is-graceful-restart { + type boolean; + description + "If true, Graceful restart is enabled "; + } + leaf distribute-list-in { + type string; + description + "Name of the ACL specified as Distribute List"; + } + } + + grouping OSPFV3-EDM-BATCH-STATS { + description + "OSPFv3 RIB batch statistics"; + leaf batches-sent { + type uint32; + description + "No. of RIB batches sent"; + } + leaf routes-sent { + type uint32; + description + "No. of Routes sent to RIB"; + } + leaf routes-pending { + type uint32; + description + "No of Pending Routes"; + } + leaf max-routes { + type uint32; + description + "Max No. of Routes in a batch"; + } + leaf paths-sent { + type uint32; + description + "No. of Paths sent to RIB"; + } + leaf paths-pending { + type uint32; + description + "No. of paths waiting to be sent to RIB"; + } + leaf paths-add { + type uint32; + description + "No. of paths added to RIB"; + } + leaf paths-add-errs { + type uint32; + description + "No. of paths add errors"; + } + leaf paths-del { + type uint32; + description + "No. of paths del sent to RIB"; + } + leaf paths-del-errs { + type uint32; + description + "No. of Paths del errors"; + } + } + + grouping OSPFV3-EDM-PRIO-STATS { + description + "OSPFv3 SPF prefix priority classification + statistics"; + leaf critical { + type uint32; + description + "Critical priority classifications"; + } + leaf high { + type uint32; + description + "High priority classifications"; + } + leaf medium { + type uint32; + description + "Medium priority classifications"; + } + leaf low { + type uint32; + description + "Low priority classifications"; + } + } + + grouping OSPFV3-EDM-RAW-STATS { + description + "OSPFv3 raw I/O statistics"; + leaf raw-conn-open { + type uint64; + description + "Raw Connections Open"; + } + leaf raw-conn-close { + type uint64; + description + "Raw Connections Close"; + } + leaf raw-conn-error { + type uint64; + description + "Raw Connections Error"; + } + leaf in-packets { + type uint64; + description + "Received Packets"; + } + leaf in-bytes { + type uint64; + units "byte"; + description + "Received Bytes"; + } + leaf in-long-packets { + type uint64; + description + "Received Long Packets"; + } + leaf in-malloc-drops { + type uint64; + description + "In Malloc Drops"; + } + leaf in-handle-drops { + type uint64; + description + "In Handle Drops"; + } + leaf in-short-drops { + type uint64; + description + "In Short Drops"; + } + leaf in-error-drops { + type uint64; + description + "In Error Drops"; + } + leaf in-ipsec-drops { + type uint64; + description + "In IPSEC Drops"; + } + leaf in-queue-drops { + type uint64; + description + "In Queue Drops"; + } + leaf out-packets { + type uint64; + description + "Packets Sent"; + } + leaf out-bytes { + type uint64; + units "byte"; + description + "Sent Bytes"; + } + leaf out-nofd-drops { + type uint64; + description + "No FileDescriptor Drops"; + } + leaf out-error-drops { + type uint64; + description + "Error Drops"; + } + leaf out-ipsec-drops { + type uint64; + description + "Out IPSEC Drops"; + } + leaf out-nopak-drops { + type uint64; + description + "No Packet Buffers"; + } + leaf out-pakapi-errors { + type uint64; + description + "PAK API Errors"; + } + leaf raw-conn-state { + type uint32; + description + "Raw Connection State"; + } + } + + grouping OSPFV3-EDM-SPF-AREA-STATS { + description + "OSPFv3 SPF Area Statistics Information"; + container spf-stat-time { + description + "SPF time calculations"; + uses OSPFV3-SPF-TIME; + } + leaf spf-stat-area-id { + type uint32; + description + "Area ID for area of these SPF statistics"; + } + list spf-stat-lsa-type-count { + max-elements "8"; + description + "Counts of LSA types triggering an SPF + calculation"; + leaf entry { + type uint32; + description + "Counts of LSA types triggering an SPF + calculation"; + } + } + } + + grouping OSPFV3-LSA-CHANGE { + description + "OSPFv3 LSA Change Information"; + leaf lsa-area-id { + type uint32; + description + "Area ID"; + } + leaf lsa-advertising-router { + type inet:ipv4-address; + description + "Advertising router ID"; + } + leaf lsa-id { + type inet:ipv4-address; + description + "LSA ID"; + } + leaf lsa-type { + type uint8; + description + "LSA type"; + } + leaf lsa-flush { + type boolean; + description + "If true, the LSA change is a flush"; + } + } + + grouping OSPFV3-SPF-TIME { + description + "OSPFv3 SPF Time Information"; + leaf dijkstra { + type uint32; + description + "Dijkstra time in msec"; + } + leaf intra-prefix { + type uint32; + description + "Intra-prefix processing time in msec"; + } + leaf intra-prefix-del { + type uint32; + description + "Intra-prefix deletion time in msec"; + } + leaf inter-prefix { + type uint32; + description + "Inter-prefix processing time in msec"; + } + leaf inter-prefix-del { + type uint32; + description + "Intra-prefix deletion time in msec"; + } + leaf external-prefix { + type uint32; + description + "External prefix processing time in msec"; + } + leaf external-prefix-del { + type uint32; + description + "External prefix deletion time in msec"; + } + leaf rib-add { + type uint32; + description + "RIB add processing time in msec"; + } + leaf rib-del { + type uint32; + description + "RIB deletion time in msec"; + } + } + + grouping OSPFV3-RUNTIME-STATS { + description + "OSPFv3 SPF Runtime Statistics Information"; + container global-time { + description + "Global SPF times"; + uses OSPFV3-SPF-TIME; + } + leaf start-time { + type uint32; + description + "SPF calculation start time"; + } + leaf rib-add-routes { + type uint32; + description + "Number of routes added to RIB"; + } + leaf rib-delete-routes { + type uint32; + description + "Number of routes deleted from RIB"; + } + leaf spf-number { + type uint8; + description + "SPF ID"; + } + leaf reason-flags { + type yang:hex-string; + description + "Reasons for triggering an SPF calculation Bit 1 + - Router LSA update Bit 2 - Network LSA update + Bit 3 - Inter-Area Prefix LSA update Bit 4 - + Inter-Area Router LSA update Bit 5 - AS External + LSA update Bit 6 - MOSPF LSA update Bit 7 - Type + 7 AS External LSA update Bit 8 - Link LSA update + Bit 9 - Prefix LSA update"; + } + leaf lsa-changes { + type int16; + description + "Number of LSA changes triggering an SPF + calculation"; + } + list lsa { + max-elements "5"; + description + "List of LSAs triggering the SPF calculation"; + uses OSPFV3-LSA-CHANGE; + } + list area-stat { + description + "List of per-area SPF statistics"; + uses OSPFV3-EDM-SPF-AREA-STATS; + } + } + + grouping OSPFV3-EDM-AREA-SUMM { + description + "OSPFv3 Area SPF Information"; + leaf area-id { + type uint32; + description + "Area ID of the area SPF statistics"; + } + leaf sp-fs { + type uint32; + description + "Number of SPF calculations"; + } + } + + grouping OSPFV3-HEADER-INFO { + description + "OSPFv3 SPF Statistics Header Information"; + leaf header-router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf header-sp-fs { + type uint32; + description + "Number of SPF calculations"; + } + list area-summary { + description + "List of Areas with SPF statistics"; + uses OSPFV3-EDM-AREA-SUMM; + } + } + + grouping OSPFV3-EDM-SPF-STATS { + description + "OSPFv3 SPF statistics"; + container spf-header { + description + "SPF statistics header"; + uses OSPFV3-HEADER-INFO; + } + list spf-runtime { + description + "List of SPF run-time statistics"; + uses OSPFV3-RUNTIME-STATS; + } + } + + grouping OSPFV3-EDM-PROTO-STATS { + description + "OSPFv3 protocol statistics"; + leaf total-in-packets { + type uint64; + description + "Total packets in"; + } + leaf hello-in-packets { + type uint64; + description + "Hello packets in"; + } + leaf dbdes-in-packets { + type uint64; + description + "Database Description Packets in"; + } + leaf dbdes-in-ls-as { + type uint64; + description + "Database Description LSAs in"; + } + leaf ls-req-in-packets { + type uint64; + description + "LSA Requests in"; + } + leaf ls-req-in-ls-as { + type uint64; + description + "LS Requests in"; + } + leaf ls-upd-in-packets { + type uint64; + description + "LS Updates Packets in"; + } + leaf ls-upd-in-ignored { + type uint64; + description + "LS Updates ignored"; + } + leaf ls-upd-in-ls-as { + type uint64; + description + "LS Updates LSAs in"; + } + leaf ls-ack-in-packets { + type uint64; + description + "LS Acks Packets in"; + } + leaf ls-ack-in-ls-as { + type uint64; + description + "LS Ack LSAs in"; + } + leaf total-out-packets { + type uint64; + description + "Total Packets sent out"; + } + leaf hello-out-packets { + type uint64; + description + "Hello Packets sent out"; + } + leaf dbdes-out-packets { + type uint64; + description + "Database Description Packets out"; + } + leaf dbdes-out-ls-as { + type uint64; + description + "Database Description LSAs out"; + } + leaf ls-req-out-packets { + type uint64; + description + "LS Request Packets out"; + } + leaf ls-req-out-ls-as { + type uint64; + description + "LS Reuqests LSAs out"; + } + leaf ls-upd-out-packets { + type uint64; + description + "LS Update Packets out"; + } + leaf ls-upd-out-ls-as { + type uint64; + description + "LS Update LSAs out"; + } + leaf ls-ack-out-packets { + type uint64; + description + "LS Ack Packets out"; + } + leaf ls-ack-out-ls-as { + type uint64; + description + "LS Ack LSAs out"; + } + leaf dropped-in-gs { + type uint64; + description + "Dropped in GS"; + } + leaf checksum-err { + type uint64; + description + "Checksum Errors"; + } + } + + grouping OSPFV3-EDM-TOPOLOGY-CONNECTED { + description + "OSPFv3 Topology Connected Information"; + container route-topology { + description + "Common Route topology information"; + uses OSPFV3-EDM-TOPOLOGY; + } + list route-path { + description + "List of paths to this route"; + uses OSPFV3-EDM-TOP-PATH; + } + } + + grouping OSPFV3-EDM-PROTO-INTF { + description + "OSPFv3 Protocol Interface Information"; + leaf interface-name { + type xr:Interface-name; + description + "Protocol interface name "; + } + leaf distribute-list-in { + type string; + description + "Name of the ACL specified as Distribute List"; + } + } + + grouping OSPFV3-EDM-PROTO-AREA { + description + "OSPFv3 Protocol Area Information"; + leaf protocol-area-id { + type string { + length "0..16"; + } + description + "Area ID string in decimal and dotted-decimal + format"; + } + leaf distribute-list-in { + type string; + description + "Name of the ACL specified as Distribute List"; + } + list protocol-interface { + description + "Interface list"; + uses OSPFV3-EDM-PROTO-INTF; + } + } + + grouping OSPFV3-SH-SLINK-NEIGHBOR { + description + "Sham Link Neighbor Information"; + container sham-link-retransmission { + description + "Neighbor retransmission info"; + uses OSPFV3-EDM-NEIGHBOR-RETRANS; + } + leaf sham-link-suppress-hello { + type boolean; + description + "If true Hellos suppressed"; + } + leaf sham-link-state { + type Ospfv3-neighbor-state; + description + "Adjacency state"; + } + } + + grouping OSPFV3-SH-SHAM-LINKS { + description + "OSPFv3 Sham Link"; + container sham-link-neighbor { + description + "Neighbor information"; + uses OSPFV3-SH-SLINK-NEIGHBOR; + } + leaf sham-link-neighbor-id { + type inet:ipv4-address; + description + "Neighbor on other end of this sham link"; + } + leaf sham-link-source-address { + type inet:ipv6-address; + description + "Sham-link source"; + } + leaf sham-link-dest-address { + type inet:ipv6-address; + description + "Sham-link dest"; + } + leaf sham-link-state { + type Ospfv3-interface-state; + description + "OSPF interface state for the sham link"; + } + leaf sham-link-demand-circuit { + type boolean; + description + "If true, the link runs as demand circuit"; + } + leaf sham-link-dc-bitless-lsa { + type uint32; + description + "Number of LSA's with demand circuit bit not set"; + } + leaf sham-link-ifindex { + type uint32; + description + "Ifindex of the shamlink"; + } + leaf sham-link-area { + type string; + description + "Area id"; + } + leaf sham-link-cost { + type uint16; + description + "Cost of the sham link"; + } + leaf sham-link-transmission-delay { + type uint16; + units "second"; + description + "Transmission delay in seconds"; + } + leaf sham-link-hello-interval { + type uint32; + description + "Hello interval (s)"; + } + leaf sham-link-dead-interval { + type uint32; + description + "Dead interval (s)"; + } + leaf sham-link-wait-interval { + type uint32; + description + "Wait interval (s)"; + } + leaf sham-link-retransmission-interval { + type uint32; + description + "Retransmission interval (s)"; + } + leaf sham-link-next-hello { + type uint32; + description + "Time until next hello (s)"; + } + leaf sham-link-passive { + type boolean; + description + "If true, interface is passive"; + } + leaf is-sham-link-ip-security-required { + type boolean; + description + "If true, sham link IP security is required "; + } + leaf is-sham-link-ip-security-active { + type boolean; + description + "If true, Sham link IP security is active "; + } + leaf is-sham-link-authentication-enabled { + type boolean; + description + "If true, authentication is enabled for the sham + link"; + } + leaf virtual-link-authentication-spi { + type uint32; + description + "Authentication Security Parameter Index for the + sham link"; + } + leaf sham-link-authentication-transmit { + type uint32; + description + "Authentication algorithm for the sham link"; + } + leaf is-sham-link-encryption-enabled { + type boolean; + description + "If true, encryption is enabled for the sham link"; + } + leaf sham-link-encryption-spi { + type uint32; + description + "Encryption Security Parameter Index for the sham + link"; + } + leaf sham-link-encryption-transmitted { + type uint32; + description + "Algorithm for the sham link"; + } + leaf sham-link-encrypted-authentication-transmitted { + type uint32; + description + "Encrypted Authentication algorithm for the sham + link"; + } + leaf sham-link-gr-enabled { + type boolean; + description + "If true, graceful restart is enabled"; + } + leaf sham-link-gr { + type boolean; + description + "If true, Gracefule restart is in progress"; + } + leaf sham-link-last-gr { + type uint32; + units "second"; + description + "Time in seconds since last GR"; + } + } + + grouping OSPFV3-EDM-TOP-SOURCE { + description + "OSPFv3 topology source information"; + leaf route-source-adversting-router { + type inet:ipv4-address; + description + "Source of route for the advertising router"; + } + leaf route-source-id { + type inet:ipv4-address; + description + "Route source ID "; + } + leaf route-source-lsa-type { + type uint32; + description + "Type of LSA advertising the prefix, see RFC5340"; + } + } + + grouping OSPFV3-EDM-TOPOLOGY-INTERNAL { + description + "OSPFv3 Topology Internal Information"; + container route-topology { + description + "Common Route topology information"; + uses OSPFV3-EDM-TOPOLOGY; + } + leaf route-area-id { + type uint32; + description + "Route area ID "; + } + list route-source { + description + "List of topology source information"; + uses OSPFV3-EDM-TOP-SOURCE; + } + list route-path { + description + "List of paths to this route"; + uses OSPFV3-EDM-TOP-PATH; + } + } + + grouping OSPFV3-EDM-RETRANS { + description + "OSPFv3 retransmission list information"; + leaf retransmission-neighbor-address { + type inet:ipv6-address; + description + "Neighbor IP address"; + } + leaf is-retransmissionvirtual-link { + type boolean; + description + "If true, retransmission is over a virtual link"; + } + leaf retransmissionvirtual-link-id { + type uint32; + description + "Virtual link ID if Retransmission is over a + virtual link"; + } + leaf is-retransmission-sham-link { + type boolean; + description + "If true, retransmission is over a sham link"; + } + leaf retransmission-sham-link-id { + type uint32; + description + "Sham link ID if Retransmission is over a sham + link"; + } + leaf retransmission-timer { + type uint32; + description + "Amount of time remaining on retransmission timer + (ms)"; + } + leaf retransmission-length { + type uint32; + description + "Current length of the Retransmission queue"; + } + list retransmissionvirtual-link-db { + description + "List of virtual link scope entries "; + uses OSPFV3-EDM-LSA-SUM; + } + list retransmission-area-db { + description + "List of area scope entries"; + uses OSPFV3-EDM-LSA-SUM; + } + list retransmission-asdb { + description + "List of AS scope entries"; + uses OSPFV3-EDM-LSA-SUM; + } + } + + grouping OSPFV3-EDM-DB-SUMMARY-COUNTERS { + description + "OSPFv3 Database Summary Counters"; + list lsa { + max-elements "15"; + description + "Total LSA count"; + leaf entry { + type uint32; + description + "Total LSA count"; + } + } + list deleted-lsa { + max-elements "15"; + description + "Count of LSAs deleted"; + leaf entry { + type uint32; + description + "Count of LSAs deleted"; + } + } + list max-age-lsa { + max-elements "15"; + description + "Count of LSAs maxaged"; + leaf entry { + type uint32; + description + "Count of LSAs maxaged"; + } + } + list lsa-checksum { + max-elements "15"; + description + "Sum of LSA checksum values"; + leaf entry { + type uint32; + description + "Sum of LSA checksum values"; + } + } + } + + grouping OSPFV3-EDM-DB-SUMMARY-AREA { + description + "OSPFv3 Area Database Summary"; + container area-database-summary { + description + "Summary of Area database"; + uses OSPFV3-EDM-DB-SUMMARY-COUNTERS; + } + leaf lsa-area-id { + type string { + length "0..16"; + } + description + "Area ID in decimal or dotted-decimal format"; + } + } + + grouping OSPFV3-EDM-DB-SUMMARY { + description + "OSPFv3 Database Summary"; + container database-counters { + description + "OSPFv3 database statistics"; + uses OSPFV3-EDM-DB-SUMMARY-COUNTERS; + } + leaf database-router-id { + type inet:ipv4-address; + description + "Self router ID "; + } + leaf is-opaque-database-capable { + type boolean; + description + "If true, opaque database is capable "; + } + list area-database { + description + "OSPFv3 Area Database list "; + uses OSPFV3-EDM-DB-SUMMARY-AREA; + } + } + + grouping OSPFV3-EDM-INTF-BRIEF { + description + "OSPFv3 brief interface information"; + leaf interface-area { + type string { + length "0..16"; + } + description + "Area ID string in decimal or dotted-decimal + format "; + } + leaf interface-address { + type inet:ipv6-address; + description + "IP address of the interface"; + } + leaf interface-link-cost { + type uint16; + description + "Link cost/metric of this interface"; + } + leaf ospf-interface-state { + type Ospfv3-interface-state; + description + "Interface OSPF state"; + } + leaf interface-neighbors { + type uint16; + description + "Total number of neighbors "; + } + leaf interface-adjacent-neighbors { + type uint16; + description + "Total number of adjacent neighbors"; + } + leaf network-type { + type Ospfv3-interface; + description + "OSPFv3 Network type of the interface"; + } + } + + grouping OSPFV3-EDM-NEIGHBOR-BFD { + description + "OSPFv3 Neighbor BFD information"; + leaf bfd-intf-enable-mode { + type uint32; + description + "BFD enable mode - Default/Strict"; + } + leaf bfd-status-flag { + type uint8; + description + "Status of the BFD Session"; + } + } + + grouping OSPFV3-EDM-NEIGHBOR-DETAIL { + description + "Detailed OSPFv3 neighbor information"; + container neighbor-retransmission { + description + "Retransmission information with this neighbor"; + uses OSPFV3-EDM-NEIGHBOR-RETRANS; + } + leaf state-changes { + type uint16; + description + "Number of state changes "; + } + leaf neighbor-cost { + type uint16; + description + "Cost of path to this neighbor "; + } + leaf is-neighbor-filtered { + type boolean; + description + "If true, filter outgoing LSAs "; + } + leaf neighbor-designated-router-address { + type inet:ipv4-address; + description + "Address of designated router"; + } + leaf neighbor-backup-designated-router-address { + type inet:ipv4-address; + description + "Address of backup designated router"; + } + leaf interface-type { + type Ospfv3-interface; + description + "Type of Interface"; + } + leaf poll-interval { + type uint32; + description + "Poll interval (s)"; + } + leaf next-poll-interval { + type uint32; + units "second"; + description + "For NBMA networks, amount of time remaining in + seconds before the next poll interval expires + and Hello is sent (s)"; + } + leaf neighbor-ignore-timer { + type uint32; + description + "Remaining time when ignore timer is running "; + } + leaf neighbor-option { + type uint32; + description + " This is bitmask of neighbor's option field + received "; + } + leaf neighbor-lls-option { + type uint32; + description + " This is bitmask of neighbor's LLS option field + received "; + } + leaf pending-events { + type uint16; + description + "Number of pending events "; + } + } + + grouping OSPFV3-EDM-NEIGHBOR { + description + "OSPFv3 neighbor summary information"; + container neighbor-detail { + description + "Detailed OSPFv3 neighbor information "; + uses OSPFV3-EDM-NEIGHBOR-DETAIL; + } + container neighbor-bfd-info { + description + "Neighbor BFD information"; + uses OSPFV3-EDM-NEIGHBOR-BFD; + } + leaf neighbor-address-xr { + type inet:ipv6-address; + description + "Neighbor IP Address"; + } + leaf neighbor-interface-id { + type uint32; + description + "Interface ID of the neighbor"; + } + leaf neighbor-dr-priority { + type uint8; + description + "DR priority of the neighbor"; + } + leaf neighbor-state { + type Ospfv3-neighbor-state; + description + "NFSM state of the neighbor"; + } + leaf neighbor-designated-router { + type string { + length "0..9"; + } + description + "Designated router "; + } + leaf neighbor-dead-timer { + type uint32; + units "second"; + description + "Time until neighbor's dead timer expires + (seconds)"; + } + leaf neighbor-up-time { + type uint32; + units "second"; + description + "Amount of time since the adjacency is up + (seconds)"; + } + leaf neighbor-virtual-link-id { + type uint32; + description + "Virtual link id of the neighbor if this neighbor + is on a virtual link"; + } + leaf is-neighbor-virtual-link { + type boolean; + description + "If true, neighbor is on a virtual link "; + } + leaf neighbor-sham-link-id { + type uint32; + description + "Sham link id of the neighbor if this neighbor is + on a sham link"; + } + leaf is-neighbor-sham-link { + type boolean; + description + "If true, neighbor is on a sham link "; + } + } + + grouping OSPFV3-EDM-ROUTE-SUM { + description + "OSPFv3 route summary information"; + leaf route-id { + type inet:ipv4-address; + description + "Route summary of a route ID "; + } + leaf intra-area-route { + type uint32; + description + "Intra route summary "; + } + leaf inter-area-route { + type uint32; + description + "Inter route summary "; + } + leaf extern-one-route { + type uint32; + description + "Extern 1 route summary "; + } + leaf extern-two-route { + type uint32; + description + "Extern 2 route summary "; + } + leaf nssa-one-route { + type uint32; + description + "NSSA 1 route summary "; + } + leaf nssa-two-route { + type uint32; + description + "NSSA 2 route summary "; + } + leaf total-sent-route { + type uint32; + description + "Total route summary "; + } + leaf route-connected { + type uint32; + description + "Total connected routes"; + } + leaf redistribution-route { + type uint32; + description + "Redistribution route summary "; + } + leaf total-received-route { + type uint32; + description + "Total route received summary"; + } + } + + grouping OSPFV3-EDM-FLOOD-LIST { + description + "OSPFv3 flood list information"; + leaf ls-transmission-timer { + type uint32; + description + "Time until next LS transmission (ms) "; + } + leaf queue-length { + type uint32; + description + "Number of LSAs currently being flooded "; + } + list link-flood { + description + "Link floodlist"; + uses OSPFV3-EDM-LSA-SUM; + } + list area-flood { + description + "Area scope floodlist"; + uses OSPFV3-EDM-LSA-SUM; + } + list as-flood { + description + "AS scope floodlist"; + uses OSPFV3-EDM-LSA-SUM; + } + } + + grouping OSPFV3-EDM-LSA-SUM { + description + "LSA summary entry"; + leaf header-lsa-type { + type Ospfv3-lsa1; + description + "LSA type"; + } + leaf header-lsa-age { + type uint16; + units "second"; + description + "Age of the LSA (seconds)"; + } + leaf header-lsa-id { + type inet:ipv4-address; + description + "LSA ID"; + } + leaf header-advertising-router { + type inet:ipv4-address; + description + "Router ID of the advertising router"; + } + leaf header-sequence-number { + type uint32; + description + "Current LSA sequence number"; + } + leaf header-lsa-checksum { + type uint16; + description + "Checksum of the LSA"; + } + } + + grouping OSPFV3-EDM-REQUEST { + description + "OSPFv3 request list information"; + leaf request-neighbor-address { + type inet:ipv6-address; + description + "Neighbor IP address"; + } + leaf is-request-virtual-link { + type boolean; + description + "Whether the request list is to be sent over a + virtual link"; + } + leaf request-virtual-link-id { + type uint32; + description + "Virtual link ID in case it is a virtual link"; + } + leaf is-request-sham-link { + type boolean; + description + "Whether the request list is to be sent over a + sham link"; + } + leaf request-sham-link-id { + type uint32; + description + "Sham link ID in case it is a sham link"; + } + list request { + description + "List of request list entries"; + uses OSPFV3-EDM-LSA-SUM; + } + } + + grouping OSPFV3-SH-ROUTE-EXTENDED-COMM { + description + "OSPF External Route Extended Community + Information"; + leaf extended-community-domain-id-value { + type yang:hex-string; + description + "Domain ID value"; + } + leaf extended-communityl-domain-id-type { + type uint16; + description + "Domain ID type"; + } + leaf extended-community-area-id { + type uint32; + description + "Area id"; + } + leaf extended-community-router-id { + type inet:ipv4-address; + description + "Router id"; + } + leaf extended-community-route-type { + type uint8; + description + "Route type"; + } + leaf extended-community-options { + type uint8; + description + "Route Options"; + } + } + + grouping OSPFV3-SH-NNH-INFO { + description + "OSPF Neighbor NextHop Information"; + leaf neighbor-next-hop-intf-index { + type uint32; + description + "Neighbor NextHop Interface Index"; + } + } + + grouping OSPFV3-SH-BACKUP-PATH { + description + "OSPFv3 Route Backup Path Information"; + leaf backup-route-interface-name { + type xr:Interface-name; + description + "Next hop Interface"; + } + leaf backup-route-next-hop-address { + type inet:ipv6-address; + description + "Nexthop IP address"; + } + leaf backup-route-source { + type inet:ipv4-address; + description + "IP address of source of route"; + } + leaf backup-metric { + type uint32; + description + "Metric"; + } + leaf primary-path { + type boolean; + description + "Whether this path is selected as primary path"; + } + leaf line-card-disjoint { + type boolean; + description + "Whether this path is Line Card Disjoint"; + } + leaf downstream { + type boolean; + description + "Whether this path is Downstream"; + } + leaf node-protect { + type boolean; + description + "Whether this path is Node Protecting"; + } + leaf srlg-disjoint { + type boolean; + description + "Whether this path is SRLG Disjoint"; + } + } + + grouping OSPFV3-EDM-TOP-PATH { + description + "OSPFv3 topology path information"; + container route-backup-path { + description + "Backup Path Info"; + uses OSPFV3-SH-BACKUP-PATH; + } + leaf interface-name { + type xr:Interface-name; + description + "Route path interface name "; + } + leaf interface-index { + type uint32; + description + "Route path interface Index "; + } + leaf route-path-next-hop { + type inet:ipv6-address; + description + "Next hop of this path"; + } + leaf route-path-id { + type uint16; + description + "Path ID of path"; + } + list neighbor-next-hop { + description + "NeighborNextHop"; + uses OSPFV3-SH-NNH-INFO; + } + } + + grouping OSPFV3-EDM-TOPOLOGY { + description + "OSPFv3 Topology Information"; + leaf route-id { + type inet:ipv4-address; + description + "Route ID "; + } + leaf route-distance { + type uint32; + description + "Route admin distance "; + } + leaf route-cost { + type uint32; + description + "Route cost/metric "; + } + leaf route-type { + type uint32; + description + "Type of route subtype"; + } + } + + grouping OSPFV3-EDM-TOPOLOGY-EXTERNAL { + description + "OSPFv3 Topology External Information"; + container route-topology { + description + "Common Route topology information"; + uses OSPFV3-EDM-TOPOLOGY; + } + container route-extended-community { + description + "Extended communities in the route"; + uses OSPFV3-SH-ROUTE-EXTENDED-COMM; + } + list route-path { + description + "List of paths to this route"; + uses OSPFV3-EDM-TOP-PATH; + } + } + + grouping OSPFV3-EDM-REDIST { + description + "OSPFv3 Redistribution Information"; + leaf protocol-name-xr { + type string { + length "0..40"; + } + description + "Name of the protocol being redistributed"; + } + leaf process-id { + type string { + length "0..40"; + } + description + "Process ID "; + } + leaf redist-metric-flag { + type boolean; + description + "Redistribution metric flag"; + } + leaf redist-metric { + type uint32; + description + "Redistribution metric"; + } + leaf redist-metric-type-flag { + type boolean; + description + "Whether Redistribution Metric Type is configured"; + } + leaf redist-metric-type { + type uint8; + description + "Redistribution metric type"; + } + leaf redist-tag { + type uint32; + description + "Redistribution Tag"; + } + leaf policy-name { + type string; + description + "Route policy name "; + } + } + + grouping OSPFV3-EDM-INTERFACE-BFD { + description + "Interface BFD information"; + leaf bfd-intf-enable-mode { + type uint32; + description + "BFD Enable Mode on the interface - + Default/Strict"; + } + leaf bfd-interval { + type uint32; + description + "BFD interval (ms) "; + } + leaf bfd-detection-multiplier { + type uint32; + description + "Detection multiplier value used by BFD"; + } + } + + grouping OSPFV3-EDM-INTERFACE-UP { + description + "OSPFv3 interface up-only information"; + leaf wait-time { + type uint32; + description + "Wait time for DR/BDR selection (s)"; + } + leaf interface-area-flood-index { + type uint32; + description + "Area scope LSAs flood index"; + } + leaf interface-as-flood-index { + type uint32; + description + "AS scope LSAs flood index "; + } + leaf interface-link-flood-index { + type uint32; + description + "Interface flood link index "; + } + leaf flood-queue-length { + type uint32; + description + "Length of the Flood queue"; + } + leaf interface-area-next-flood { + type uint32; + description + "Next LSA to flood (Area scope)"; + } + leaf interface-area-next-flood-index { + type uint32; + description + "Index of next LSA to flood (Area scope) "; + } + leaf interface-as-next-flood { + type uint32; + description + "Next LSA to flood (AS scope)"; + } + leaf interface-as-next-flood-index { + type uint32; + description + "Index of next LSA to flood (AS scope)"; + } + leaf interface-link-next-flood { + type uint32; + description + "Interface link next flood information "; + } + leaf interface-link-next-index { + type uint32; + description + "Interface link next information index "; + } + leaf flood-scan-length { + type uint32; + description + "Number of LSAs in the last update packet"; + } + leaf maximum-flood-length { + type uint32; + description + "Maximum number of LSAs sent in an update packet + till now"; + } + leaf last-flood-time { + type uint32; + description + "Time taken for last flooding (ms)"; + } + leaf maximum-flood-time { + type uint32; + description + "Maximum time taken for flooding (ms) till now"; + } + leaf interface-flood-pacing-timer { + type uint32; + description + "Time until next flood pacing timer (ms) "; + } + leaf interface-neighbors { + type uint16; + description + "Total number of neighbors "; + } + leaf suppressed-hellos { + type uint16; + description + "Number of neighbors for which hellos are + suppressed "; + } + } + + grouping OSPFV3-EDM-INTERFACE-NBR { + description + "OSPFv3 interface neighbor information"; + leaf interface-neighbor-id { + type inet:ipv4-address; + description + "Neighbor router ID "; + } + leaf interface-neighbor-cost { + type uint32; + description + "Cost of link to neighbor"; + } + leaf is-neighbor-dr { + type boolean; + description + "If true, designated router is found "; + } + leaf is-neighbor-bdr { + type boolean; + description + "If true, backup designated router is found "; + } + leaf is-hello-suppressed { + type boolean; + description + "If true, hello is suppressed "; + } + } + + grouping OSPFV3-EDM-INTERFACE { + description + "OSPFv3 interface information"; + container active-interface { + description + "Active interface details "; + uses OSPFV3-EDM-INTERFACE-UP; + } + container interface-bfd { + description + "BFD information "; + uses OSPFV3-EDM-INTERFACE-BFD; + } + leaf interface-state { + type Im-state-enum; + description + "State of the interface"; + } + leaf is-interface-line-up { + type boolean; + description + "If true, line protocol is up "; + } + leaf is-interface-ip-security-required { + type boolean; + description + "If true, interface IP security is required "; + } + leaf is-interface-ip-security-active { + type boolean; + description + "If true, interface IP security is active "; + } + leaf interface-address { + type inet:ipv6-address; + description + "IPv6 address of the Interface"; + } + leaf interface-number { + type uint32; + description + "Interface ifindex number "; + } + leaf interface-router-id { + type inet:ipv4-address; + description + "Self router ID "; + } + leaf network-type { + type Ospfv3-interface; + description + "OSPF Network type of the interface"; + } + leaf interface-link-cost { + type uint16; + description + "Link cost/metric of this Interface"; + } + leaf is-interface-flood-reduction { + type boolean; + description + "If true, interface flood reduction is active "; + } + leaf is-demand-circuit-configured { + type boolean; + description + "If true, configured as demand circuit "; + } + leaf is-interface-demand-circuit { + type boolean; + description + "If true, interface running as demand circuit"; + } + leaf interface-dc-bitless-ls-as { + type uint32; + description + "Number of LSAs with demand circuit bit not set + for the area in which the interface is running"; + } + leaf transmission-delay { + type uint16; + description + "Interface transmission delay (sec)"; + } + leaf ospf-interface-state { + type Ospfv3-interface-state; + description + "OSPF IFSM state of this interface"; + } + leaf interface-priority { + type uint8; + description + "DR-priority of this interface"; + } + leaf is-designated-router { + type boolean; + description + "If true, this router is the designated router + for this network"; + } + leaf designated-router-id { + type inet:ipv4-address; + description + "ID of the Designated router of this network"; + } + leaf designated-router-address { + type inet:ipv6-address; + description + "IPv6 address of the Designated router for this + network"; + } + leaf backup-designated-router-id { + type inet:ipv4-address; + description + "ID of the Backup Designated router of this + network"; + } + leaf backup-designated-router-address { + type inet:ipv6-address; + description + "IPv6 address of the Backup Designated router for + this network"; + } + leaf network-lsa-flush-timer { + type uint32; + units "second"; + description + "The amount of time in seconds before flush timer + for old network LSA expires "; + } + leaf is-interface-lsa-filtered { + type boolean; + description + "Filter is configured for out going LSAs "; + } + leaf hello-interval { + type uint32; + description + "Configured hello interval (s)"; + } + leaf dead-interval { + type uint32; + description + "Configured dead interval (s) "; + } + leaf wait-interval { + type uint32; + description + "Configured wait interval (s) "; + } + leaf interface-retransmission-interval { + type uint32; + description + "Configured retransmit interval (s) "; + } + leaf next-hello-time { + type uint32; + description + "Time until next Hello (s) "; + } + leaf interface-authentication-spi { + type uint32; + description + "Authentication Security Parameter Index for this + interface"; + } + leaf interface-authentication-transmit { + type uint32; + description + "Interface authentication algorithm type "; + } + leaf is-interface-encryption-enabled { + type boolean; + description + "Whether encryption is enabled for OSPF packets + on this interface"; + } + leaf is-prefix-suppress { + type boolean; + description + "If true prefix suppression is enabled"; + } + leaf interface-encryption-spi { + type uint32; + description + "Encryption Security Parameter Index for this + interface"; + } + leaf interface-encryption-transmitted { + type uint32; + description + "Interface encryption algorithm type used"; + } + leaf interface-encrypted-authentication-transmitted { + type uint32; + description + "Interface encrypted authentication algorithm + type used"; + } + leaf adjacent-neighbor { + type uint32; + description + "Number of adjacent neighbors"; + } + leaf interface-references { + type uint32; + description + "Interface reference count "; + } + leaf configured-ldp-sync { + type boolean; + description + "If true, configured as LDP sync"; + } + leaf interface-ldp-sync { + type boolean; + description + "If true, interface LDP sync is achieved"; + } + leaf if-rib-l-csync-neede { + type boolean; + description + "rib lc sync needed"; + } + leaf if-rib-l-csync { + type boolean; + description + "rib lc sync state"; + } + leaf conditional-advertising-enabled { + type boolean; + description + "If Conditional advertising based on route-policy + is enabled"; + } + leaf conditional-advertise-policy-name { + type string; + description + "Name of the applied policy for Conditional + advertising"; + } + leaf conditional-advertising-result { + type boolean; + description + "Result of the policy applied for Conditional + advertising"; + } + leaf interface-bandwidth { + type uint32; + description + "Bandwidth of the Interface"; + } + leaf ip-mtu { + type uint16; + description + "IP MTU"; + } + list interface-neighbor { + description + "Information for neighbors on the interface"; + uses OSPFV3-EDM-INTERFACE-NBR; + } + } + + grouping OSPFV3-EDM-NEIGHBOR-RETRANS { + description + "OSPFv3 neighbor retransmission information"; + leaf database-descriptor-retransmissions { + type uint32; + description + "Number of database descriptor retransmissions + during last exchange"; + } + leaf area-flood-index { + type uint32; + description + "Area scope LSA's flood index"; + } + leaf as-flood-index { + type uint32; + description + "AS scope LSA's flood index"; + } + leaf link-flood-index { + type uint32; + description + "Link scope LSA's flood index"; + } + leaf neighbor-retransmissions { + type uint32; + description + "Number of LSAs added to this neighbor's + retransmit list"; + } + leaf retransmissions { + type uint32; + description + "Number of retransmission packets sent to this + neighbor"; + } + leaf area-first-flood { + type uint32; + description + "First flood item for area scope LSAs"; + } + leaf area-first-flood-index { + type uint32; + description + "Index of the first flood item for area scope + LSAs"; + } + leaf as-first-flood { + type uint32; + description + "First flood item for AS scope LSAs"; + } + leaf as-first-flood-index { + type uint32; + description + "Index for first flood item for AS scope LSAs"; + } + leaf link-first-flood { + type uint32; + description + "Link first flood information "; + } + leaf link-first-flood-index { + type uint32; + description + "Link first flood information index"; + } + leaf area-next-flood { + type uint32; + description + "Next flood item for area scope LSAs"; + } + leaf area-next-flood-index { + type uint32; + description + "Index of next flood item for Area scope LSAs"; + } + leaf as-next-flood { + type uint32; + description + "Next flood item for AS scope LSAs"; + } + leaf as-next-flood-index { + type uint32; + description + "Index of next flood item for AS scope LSAs"; + } + leaf link-next-flood { + type uint32; + description + "Link next flood information "; + } + leaf link-next-flood-index { + type uint32; + description + "Link next flood information index "; + } + leaf last-retransmission-length { + type uint32; + description + "Number of LSAs sent in last retransmission"; + } + leaf maximum-retransmission-length { + type uint32; + description + "Maximum number of LSAs sent in a retransmission"; + } + leaf last-retransmission-time { + type uint32; + description + "Time taken for last retransmission (ms)"; + } + leaf maximum-retransmission-time { + type uint32; + description + "Maximum time taken for retransmission (ms) till + now"; + } + leaf lsa-retransmission-timer { + type uint32; + description + "Time until next LSA retransmission (ms)"; + } + } + + grouping OSPFV3-EDM-VLINK-NEIGHBOR { + description + "OSPFv3 virtual link neighbor information"; + container virtual-link-retransmission { + description + "Virtual link retransmission information "; + uses OSPFV3-EDM-NEIGHBOR-RETRANS; + } + leaf is-virtual-link-hello-suppressed { + type boolean; + description + "If true, hello suppressed "; + } + leaf virtual-link-state { + type Ospfv3-interface-state; + description + "OSPF interface state for the virtual link"; + } + } + + grouping OSPFV3-EDM-VIRTUAL-LINKS { + description + "OSPFv3 virtual link information"; + container virtual-link-neighbor { + description + "Neighbor information "; + uses OSPFV3-EDM-VLINK-NEIGHBOR; + } + leaf virtual-link-neighbor-id { + type inet:ipv4-address; + description + "Neighbor on other end of this virtual link"; + } + leaf virtual-link-interface-number { + type uint32; + description + "Interface number of the Virtual link"; + } + leaf virtual-link-state { + type Ospfv3-interface-state; + description + "OSPF interface state for the virtual link"; + } + leaf is-virtual-link-ip-security-required { + type boolean; + description + "If true, virtual link IP security is required "; + } + leaf is-virtual-link-ip-security-active { + type boolean; + description + "If true, Virtual link IP security is active "; + } + leaf virtual-link-neighbor-address { + type inet:ipv6-address; + description + "IPv6 address of the neighbor on this Virtual + link"; + } + leaf is-virtual-link-demand-circuit { + type boolean; + description + "If true, the link runs as demand circuit"; + } + leaf virtual-link-dc-bitless-lsa { + type uint32; + description + "Number of LSA's with demand circuit bit not set "; + } + leaf transit-area-id { + type string; + description + "Area id of the transit area"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface on which this virtual link is formed"; + } + leaf virtual-link-cost { + type uint16; + description + "Cost of the virtual link"; + } + leaf virual-link-transmission-delay { + type uint16; + units "second"; + description + "Transmission delay in seconds"; + } + leaf virtual-link-hello-interval { + type uint32; + description + "Hello interval (s)"; + } + leaf virtual-link-dead-interval { + type uint32; + description + "Dead interval (s)"; + } + leaf virtual-link-wait-interval { + type uint32; + description + "Wait interval (s)"; + } + leaf virtual-link-retransmission-interval { + type uint32; + description + "Retransmission interval (s)"; + } + leaf virtual-link-next-hello { + type uint32; + description + "Time until next hello (s)"; + } + leaf is-virtual-link-passive { + type boolean; + description + "If true, interface is passive"; + } + leaf is-virtual-link-authentication-enabled { + type boolean; + description + "If true, authentication is enabled for this + virtual link"; + } + leaf virtual-link-authentication-spi { + type uint32; + description + "Authentication Security Parameter Index for this + virtual link"; + } + leaf virtual-link-authentication-transmit { + type uint32; + description + "Authentication algorithm for this virtual link"; + } + leaf is-virtual-link-encryption-enabled { + type boolean; + description + "If true, encryption is enabled for this virtual + link "; + } + leaf virtual-link-encryption-spi { + type uint32; + description + "Encryption Security Parameter Index for this + virtual link"; + } + leaf virtual-link-encryption-transmitted { + type uint32; + description + "Encryption algorithm for this virtual link"; + } + leaf virtual-link-encrypted-authentication-transmitted { + type uint32; + description + "Encrypted authentication algorithm for this + virtual link"; + } + } + + grouping OSPFV3-EDM-LSA-UNKNOWN { + description + "OSPFv3 Unknown LSA Database Information"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + leaf is-virtual-link { + type boolean; + description + "If true, it is a virtual link "; + } + leaf virtual-link-id { + type uint32; + description + "virtual link ID if it is a virtual link"; + } + leaf is-sham-link { + type boolean; + description + "If true, it is a sham link "; + } + leaf sham-link-id { + type uint32; + description + "Shamlink ID "; + } + } + + grouping OSPFV3-EDM-LSA-GRACE { + description + "OSPFv3 Grace LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf interface-name { + type xr:Interface-name; + description + "LSA interface handle"; + } + leaf is-virtual-link { + type boolean; + description + "If true, it is a virtual link"; + } + leaf virtual-link-id { + type uint32; + description + "virtual link ID if it is a virtual link"; + } + leaf is-sham-link { + type boolean; + description + "If true, it is a sham link"; + } + leaf sham-link-id { + type uint32; + description + "Sham link ID if it is a sham link"; + } + leaf grace-period { + type uint32; + description + "The grace periord where helper routers should + wait before advertising it fully adjacent(s) "; + } + leaf grace-reason { + type Ospfv3-graceful-restart-reason; + description + "Reason for router restart"; + } + } + + grouping OSPFV3-EDM-LSA-PREFIX { + description + "OSPFv3 Prefix LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf reference-type { + type Ospfv3-lsa1; + description + "Reference LSA type, whether Router or Network"; + } + leaf reference-lsa-id { + type uint32; + description + "LSA ID of the Reference LSA"; + } + leaf reference-advertised-router { + type inet:ipv4-address; + description + "Advertising Router ID of the Reference LSA"; + } + list prefix { + description + "OSPFv3 prefix "; + uses OSPFV3-EDM-PREFIX; + } + } + + grouping OSPFV3-EDM-PREFIX { + description + "OSPFv3 Prefix Type"; + leaf prefix { + type inet:ipv6-address; + description + "OSPFv3 prefix "; + } + leaf ospfv3-prefix-length { + type uint8; + description + "OSPFv3 prefix length of the IPv6 prefix"; + } + leaf ospfv3-prefix-options { + type uint8; + description + "OSPFv3 prefix options in the LSA"; + } + leaf ospfv3-prefix-metric { + type uint16; + description + "OSPFv3 prefix metric/cost"; + } + leaf priority { + type Prefix-priority; + description + "Prefix priority"; + } + } + + grouping OSPFV3-EDM-LSA-LINK { + description + "OSPFv3 Link LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf interface-name { + type xr:Interface-name; + description + "LSA interface handle"; + } + leaf is-virtual-link { + type boolean; + description + "If true, it is a virtual link"; + } + leaf virtual-link-id { + type uint32; + description + "virtual link ID if it is a virtual link"; + } + leaf is-sham-link { + type boolean; + description + "If true, it is a sham link"; + } + leaf sham-link-id { + type uint32; + description + "Sham link ID if it is a sham link"; + } + leaf lsa-link-local { + type inet:ipv6-address; + description + "Link local address"; + } + leaf router-priority { + type uint8; + description + "Router priority on this link"; + } + list prefix { + description + "OSPFv3 prefix "; + uses OSPFV3-EDM-PREFIX; + } + } + + grouping OSPFV3-EDM-LSA-EXTERNAL { + description + "OSPFv3 External LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA Information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf prefix { + type inet:ipv6-address; + description + "IPV6 address prefix "; + } + leaf prefix-length { + type uint8; + description + "Prefix length of the IPv6 address"; + } + leaf metric-type { + type Ospfv3-default-metric; + description + "Metric type, whether Type 1 or Type 2"; + } + leaf tos-cost { + type uint32; + description + "Type of service cost metric "; + } + leaf is-forwarding-address-set { + type boolean; + description + "If true, forwarding address is set "; + } + leaf forwarding-address { + type inet:ipv6-address; + description + "Forwarding Address of the external prefix"; + } + leaf external-tag { + type uint32; + description + "Route Tag"; + } + leaf priority { + type Prefix-priority; + description + "Prefix priority"; + } + } + + grouping OSPFV3-EDM-LSA-IARTR { + description + "OSPFv3 Inter-area Router LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf lsa-router-id { + type uint32; + description + "LSA router ID "; + } + } + + grouping OSPFV3-EDM-LSA-IAPFX { + description + "OSPFv3 Inter-area Prefix LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA Information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf prefix { + type inet:ipv6-address; + description + "LSA address prefix "; + } + leaf prefix-length { + type uint8; + description + "Prefix length of the IPv6 address"; + } + leaf priority { + type Prefix-priority; + description + "Prefix priority"; + } + } + + grouping OSPFV3-EDM-LSA-NETWORK { + description + "OSPFv3 Network LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + list neighbor-router { + description + "Neighbor router list"; + leaf entry { + type inet:ipv4-address; + description + "Neighbor router list"; + } + } + } + + grouping OSPFV3-EDM-RPF-PATH { + description + "OSPFv3 Router LSA Reverse-Path Forwarding + Information"; + leaf rpf-multicast-next-hop { + type uint32; + description + "Next hop for Reverse Path Forwarding Multicast"; + } + leaf interface-name { + type xr:Interface-name; + description + "Reverse Path Forwarding Multicast IDB "; + } + } + + grouping OSPFV3-EDM-LINK { + description + "OSPFv3 Router LSA Links"; + leaf link-type { + type Ospfv3-link; + description + "Type of link"; + } + leaf link-metric { + type uint16; + description + "LSA link metric/cost "; + } + leaf link-interface-id { + type uint32; + description + "LSA link interface ID "; + } + leaf link-neighbor-interface-id { + type uint32; + description + "interface ID of the neighbor"; + } + leaf link-neighbor-router-id { + type inet:ipv4-address; + description + "Router id of the neighbor"; + } + } + + grouping OSPFV3-EDM-LSA-ROUTER { + description + "OSPFv3 Router LSA"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + container rpf-path { + description + "Router LSA Reverse-Path Forwarding information "; + uses OSPFV3-EDM-RPF-PATH; + } + leaf router-la-bits { + type uint8; + description + "Router LA bits in the format V/E/B where V bit + is set for virtual link endpoint, E bit for ASBR + and B bit for ABR"; + } + list link { + description + "List of links in this LSA"; + uses OSPFV3-EDM-LINK; + } + } + + grouping OSPFV3-EDM-DB-DETAIL { + description + "OSPFv3 Detailed LSA Database Information"; + leaf second-table-index { + type uint8; + units "second"; + description + "Table index for Seconds"; + } + leaf minute-table-index { + type uint8; + units "minute"; + description + "Table index for Minutes"; + } + leaf free-time { + type uint32; + description + "The amount of time since the last check was made + to free this LSA (s)"; + } + leaf is-deleted { + type boolean; + description + "If true, flag is set to delete this LSA "; + } + leaf is-routing-bit { + type boolean; + description + "If true, Routing Bit set on the LSA"; + } + leaf is-advertising-router-reachable { + type boolean; + description + "If true, Advertising Router is reachable"; + } + leaf is-no-delete { + type boolean; + description + "If true, the reason not to delete this LSA is + because delete flag not set on this LSA"; + } + leaf is-neighbor-exchange { + type boolean; + description + "If true, the reason not to delete this LSA is + because neighbor is in exchange state"; + } + leaf is-routing-table { + type boolean; + description + "If true, the reason not to delete this LSA is + because it has a contributing entry in the + routing table "; + } + leaf is-acknowledged { + type boolean; + description + "If true, the reason not to delete this LSA is + because it's Acknowledgement list is not empty "; + } + leaf is-maximum-aged { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is in Maxage Queue"; + } + leaf is-partial-spf { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is in partial SPF queue"; + } + leaf is-flood-pending { + type boolean; + description + "If true, the reason not to delete this LSA is + because waiting for flooding or retransmission"; + } + leaf rate-limit { + type boolean; + description + "If true, the reason not to delete this LSA is + because waiting for next wait-interval to expire"; + } + leaf is-nsr-ack-pending { + type boolean; + description + "If true, the reason not to delete this LSA is + because NSR ACK from standby is pending"; + } + leaf nsr-flood-required { + type boolean; + description + "If true, the reason not to delete this LSA is + because it is pending flooding on switchover"; + } + leaf lsa-flood-required-post-fail-over { + type boolean; + description + "LSA flood required after FO"; + } + leaf lsa-length { + type uint16; + description + "Length of the LSA"; + } + leaf lsa-sync-state { + type Ospf-lsa-sync-state; + description + "State of LSA sync with active"; + } + } + + grouping OSPFV3-EDM-DB-HEADER { + description + "OSPFv3 LSA Database Header"; + leaf lsa-type { + type uint16; + description + "LSA type"; + } + leaf lsa-area-id { + type string { + length "0..16"; + } + description + "Area ID in decimal or dotted-decimal format"; + } + leaf lsa-age { + type uint16; + description + "LSA's Age (s)"; + } + leaf is-do-not-age-lsa { + type boolean; + description + "If true, Do Not Age this LSA"; + } + leaf ls-id { + type uint32; + description + "LS ID"; + } + leaf advertising-router { + type inet:ipv4-address; + description + "Router ID of Advertising Router"; + } + leaf sequence-number { + type uint32; + description + "Current Sequence number"; + } + leaf checksum { + type uint16; + description + "Checksum value"; + } + leaf is-graceful-restart-active { + type boolean; + description + "If true, if grace restart is active "; + } + } + + grouping OSPFV3-EDM-DATABASE { + description + "OSPFv3 Database Information"; + container lsa-header { + description + "Header information "; + uses OSPFV3-EDM-DB-HEADER; + } + container lsa-detail { + description + "Detailed LSA information"; + uses OSPFV3-EDM-DB-DETAIL; + } + leaf links { + type uint16; + description + "Number of links"; + } + leaf router-la-bits { + type uint8; + description + "Router LSA flags in the format V/E/B where V bit + is set for virtual link endpoint, E bit for ASBR + and B bit for ABR"; + } + leaf reference-type { + type uint16; + description + "Reference type of the LSA, if it is a prefix LSA"; + } + leaf reference-lsa-id { + type uint32; + description + "Reference LSA ID, if it is a prefix LSA"; + } + leaf lsa-router-id { + type uint32; + description + "Advertised router ID, if it is an inter area + router LSA"; + } + leaf prefix { + type inet:ipv6-address; + description + "OSPFv3 address Prefix"; + } + leaf prefix-length { + type uint8; + description + "Prefix length, if it is a prefix LSA"; + } + leaf interface-name { + type xr:Interface-name; + description + "interface name, if it is a link scope LSA"; + } + leaf is-virtual-link { + type boolean; + description + "If true, it is a virtual link"; + } + leaf virtual-link-id { + type uint32; + description + "virtual link ID if it is a virtual link"; + } + leaf is-sham-link { + type boolean; + description + "If true, it is a sham link"; + } + leaf sham-link-id { + type uint32; + description + "Sham link ID if it is a sham link"; + } + } + + grouping OSPFV3-LSA-INFO-UNION { + description + "Detail LSA information for an LSA"; + container lsa-summary-info { + when "../lsa-info-type = 'mgmt-lsa-lsasum-type'" { + description + "../LSAInfoType = 'MGMT_LSA_LSASUM_TYPE'"; + } + description + "Summary information of LSAs"; + uses OSPFV3-EDM-DATABASE; + } + container router-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-rtr-type'" { + description + "../LSAInfoType = 'MGMT_LSA_RTR_TYPE'"; + } + description + "Router LSA"; + uses OSPFV3-EDM-LSA-ROUTER; + } + container network-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-net-type'" { + description + "../LSAInfoType = 'MGMT_LSA_NET_TYPE'"; + } + description + "Network LSA"; + uses OSPFV3-EDM-LSA-NETWORK; + } + container inter-area-prefix-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-iapfx-type'" { + description + "../LSAInfoType = 'MGMT_LSA_IAPFX_TYPE'"; + } + description + "Inter Area Prefix LSA"; + uses OSPFV3-EDM-LSA-IAPFX; + } + container inter-area-router-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-iartr-type'" { + description + "../LSAInfoType = 'MGMT_LSA_IARTR_TYPE'"; + } + description + "Inter Area Router LSA"; + uses OSPFV3-EDM-LSA-IARTR; + } + container external-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-ext-type'" { + description + "../LSAInfoType = 'MGMT_LSA_EXT_TYPE'"; + } + description + "External LSA"; + uses OSPFV3-EDM-LSA-EXTERNAL; + } + container nssalsa-type { + when "../lsa-info-type = 'mgmt-lsa-nssaext-type'" { + description + "../LSAInfoType = 'MGMT_LSA_NSSAEXT_TYPE'"; + } + description + "NSSA External LSA"; + uses OSPFV3-EDM-LSA-EXTERNAL; + } + container link-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-link-type'" { + description + "../LSAInfoType = 'MGMT_LSA_LINK_TYPE'"; + } + description + "Link LSA"; + uses OSPFV3-EDM-LSA-LINK; + } + container intra-area-prefix-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-prefix-type'" { + description + "../LSAInfoType = 'MGMT_LSA_PREFIX_TYPE'"; + } + description + "Intra Area Prefix LSA"; + uses OSPFV3-EDM-LSA-PREFIX; + } + container grace-lsa { + when "../lsa-info-type = 'mgmt-lsa-gr-type'" { + description + "../LSAInfoType = 'MGMT_LSA_GR_TYPE'"; + } + description + "Grace LSA"; + uses OSPFV3-EDM-LSA-GRACE; + } + container unknown-link-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-unk-link-type'" { + description + "../LSAInfoType = 'MGMT_LSA_UNK_LINK_TYPE'"; + } + description + "Unknown Link Scope LSA"; + uses OSPFV3-EDM-LSA-UNKNOWN; + } + container unknown-area-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-unk-area-type'" { + description + "../LSAInfoType = 'MGMT_LSA_UNK_AREA_TYPE'"; + } + description + "Unknown-Area scope LSA"; + uses OSPFV3-EDM-LSA-UNKNOWN; + } + container unknown-aslsa-type { + when "../lsa-info-type = 'mgmt-lsa-unk-as-type'" { + description + "../LSAInfoType = 'MGMT_LSA_UNK_AS_TYPE'"; + } + description + "Unknown-AS scope LSA"; + uses OSPFV3-EDM-LSA-UNKNOWN; + } + container unknown-lsa-type { + when "../lsa-info-type = 'mgmt-lsa-unk-type'" { + description + "../LSAInfoType = 'MGMT_LSA_UNK_TYPE'"; + } + description + "Unknown LSA"; + uses OSPFV3-EDM-LSA-UNKNOWN; + } + leaf lsa-info-type { + type Ospfv3-lsa-info-types; + description + "LSAInfoType"; + } + } + + grouping OSPFV3-EDM-DATABASE-LSAINFO { + description + "OSPFv3 LSA Information"; + container lsa-info { + description + "Summary of all LSAs or LSA specific information "; + uses OSPFV3-LSA-INFO-UNION; + } + } + + grouping OSPFV3-EDM-AREA-RANGE { + description + "OSPFv3 area range information"; + leaf range-prefix { + type inet:ipv6-address; + description + "IP prefix for summarization"; + } + leaf range-prefix-length { + type uint32; + description + "IP prefix length for summarization"; + } + leaf net-cost { + type uint32; + description + "Prefix cost "; + } + leaf status { + type Ospfv3-area-range-status; + description + "Area range status "; + } + leaf is-cost-configured { + type boolean; + description + "If true, cost is configured "; + } + } + + grouping OSPFV3-EDM-AREA { + description + "OSPFv3 area summary information"; + leaf is-backbone-area-active { + type boolean; + description + "If true, Backbone area is active"; + } + leaf area-interfaces { + type uint16; + description + "Number of interfaces in the area"; + } + leaf is-area-stubbed { + type boolean; + description + "If true, stub area"; + } + leaf is-area-total-stubbed { + type boolean; + description + "If true, totally stubby area"; + } + leaf stub-default-cost { + type uint32; + description + "Default cost for Stub or NSSA area"; + } + leaf is-area-nssa { + type boolean; + description + "If true, area is a NSSA"; + } + leaf nssa-no-redistribution { + type boolean; + description + "If true, No redistribution into this NSSA area"; + } + leaf is-nssa-translated { + type boolean; + description + "If true, perform 7/5 translation"; + } + leaf is-nssa-translated-always { + type boolean; + description + "If true, perform 7/5 translation always"; + } + leaf is-nssa-default { + type boolean; + description + "If true, generate NSSA default route"; + } + leaf is-rrr-enabled { + type boolean; + description + "If true, RRR is enabled"; + } + leaf sp-fs { + type uint32; + description + "Number of SPF calculations run"; + } + leaf area-opaque-lsas { + type uint32; + description + "Number of opaque LSAs in the area"; + } + leaf area-opaque-lsa-checksum { + type uint32; + description + "Sum of opaque LSA checksums"; + } + leaf area-dc-bitless-ls-as { + type uint32; + description + "Number of LSA with demand circuit bit not set"; + } + leaf indication-ls-as { + type uint32; + description + "Number of indication LSAs"; + } + leaf do-not-age-ls-as { + type uint32; + description + "Number of do not age LSAs"; + } + leaf flood-list-length { + type uint32; + description + "Number of LSAs which need to be flooded"; + } + leaf area-lfa-interface-count { + type uint32; + description + "Number of LFA enabled interfaces"; + } + leaf area-per-prefix-lfa-interface-count { + type uint32; + description + "Number of Per Prefix LFA enabled interfaces"; + } + leaf area-lfa-revision { + type uint32; + description + "Area LFA revision"; + } + list area-range { + description + "List of ranges to summarize"; + uses OSPFV3-EDM-AREA-RANGE; + } + } + + grouping OSPFV3-EDM-BR-PATH { + description + "OSPFv3 border router path"; + leaf is-intra-area-router { + type boolean; + description + "If true, intra-area router else inter-area + router"; + } + leaf border-router-route-metric { + type uint32; + description + "Metric"; + } + leaf border-router-next-hop { + type inet:ipv6-address; + description + "Next hop address "; + } + leaf interface-name { + type xr:Interface-name; + description + "Next hop interface name"; + } + leaf border-router-type { + type Ospfv3-border-route; + description + "Border router type, whether ABR or ASBR"; + } + leaf border-router-area-id { + type string { + length "0..16"; + } + description + "Area string in decimal or dotted-decimal format "; + } + leaf spf-version { + type uint32; + description + "SPF version"; + } + } + + grouping OSPFV3-EDM-BORDER-ROUTER { + description + "OSPFv3 border router information"; + list border-router-path { + description + "List of border router paths"; + uses OSPFV3-EDM-BR-PATH; + } + } + + grouping OSPFV3-EDM-SUMMARY-PREFIX { + description + "OSPFv3 summary prefix information"; + leaf prefix-metric { + type uint32; + description + "Metric value for the IPv6 prefix"; + } + leaf prefix-metric-type { + type Ospfv3-default-metric; + description + "Metric type of the prefix"; + } + leaf tag { + type uint32; + description + "Tag value of the prefix"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper.yang new file mode 100644 index 000000000..76ea9dbd7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ospfv3-oper.yang @@ -0,0 +1,1001 @@ +module Cisco-IOS-XR-ipv6-ospfv3-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-ospfv3-oper"; + prefix ipv6-ospfv3-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv6-ospfv3-oper-sub1 { + revision-date 2022-09-16; + } + + 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 ipv6-ospfv3 package operational data. + + This module contains definitions + for the following management objects: + ospfv3: OSPFv3 operational information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-16 { + description + "Added LSA counters per advertising router + 2022-09-05 + Added number of prefixes redistributed in ospfv3 summary output + 2022-06-28 + Exposed interface area field in interface brief"; + semver:module-version "2.3.0"; + } + revision 2021-06-16 { + description + "Added neighbor LLS options in neighbor detail"; + semver:module-version "2.2.0"; + } + revision 2020-04-29 { + description + "Added mtu and Bandwidth to show command"; + semver:module-version "2.1.0"; + } + revision 2020-02-04 { + description + "Modified for Conditional Advertising"; + semver:module-version "2.0.0"; + } + revision 2019-07-28 { + description + "Added datalist operation for container fast-reroute topology"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-08 { + description + "Modified for Programmability 2.0"; + } + revision 2018-06-15 { + description + "Added Aggregate statistics under summary container"; + } + revision 2017-10-30 { + description + "Added link information in grace LSA."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ospfv3-lsa { + type enumeration { + enum "link-lsa" { + value 8; + description + "Link LSA"; + } + enum "grace-lsa" { + value 11; + description + "Grace LSA"; + } + enum "router" { + value 8193; + description + "Router LSA"; + } + enum "network" { + value 8194; + description + "Network LSA"; + } + enum "inter-area-prefix" { + value 8195; + description + "Inter-Area Prefix LSA"; + } + enum "inter-area-router" { + value 8196; + description + "Inter-Area Router LSA"; + } + enum "nssa-external" { + value 8199; + description + "NSSA External LSA"; + } + enum "intra-area-prefix" { + value 8201; + description + "Intra-Area Prefix LSA"; + } + enum "external" { + value 16389; + description + "External LSA"; + } + enum "opaque-link" { + value 32768; + description + "Opaque LSALink Scope"; + } + enum "opaque-area" { + value 40960; + description + "Opaque LSA Area Scope"; + } + enum "opaque-as" { + value 49152; + description + "Opaque LSA AS Scope"; + } + enum "unknown" { + value 57344; + description + "Unknown Reserved Scope LSAs"; + } + } + description + "Ospfv3 lsa"; + } + + grouping FLOOD-LIST-PROCESS-TABLE { + description + "Common node of default-vrf, vrf"; + container flood-list-process-table { + description + "OSPFv3 flood list information table for all + areas"; + uses FLOOD-LIST; + } + } + + grouping FLOOD-LIST { + description + "Common node of flood-list-table, + flood-list-process-table"; + list flood { + key "interface-name"; + description + "OSPFv3 flood list information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPFV3-EDM-FLOOD-LIST; + } + } + + grouping BORDER-ROUTER-TABLE { + description + "Common node of default-vrf, vrf"; + container border-routers { + description + "OSPFv3 border router information table"; + list border-router { + key "border-router-id"; + description + "OSPFv3 border router information"; + leaf border-router-id { + type inet:ipv4-address-no-zone; + description + "Router address"; + } + uses OSPFV3-EDM-BORDER-ROUTER; + } + } + } + + grouping FAST-REROUTE-TABLE { + description + "Common node of default-vrf, vrf"; + container fast-reroutes { + description + "OSPFv3 fast reroute topology information table"; + list fast-reroute { + key "remote-router-id area-id"; + description + "OSPFv3 fast reroute topology information"; + leaf remote-router-id { + type inet:ipv4-address-no-zone; + description + "Remote Node Router ID"; + } + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "AreaID"; + } + uses OSPFV3-SH-IPFRR-TOPO; + } + } + } + + grouping AREA-TABLE { + description + "Common node of default-vrf, vrf"; + container areas { + description + "OSPFv3 area table"; + list area { + key "area-id"; + description + "Per-area information"; + container neighbor-detail-table { + description + "OSPFv3 area neighbor information table"; + uses NEIGHBOR-DETAIL; + } + container interface-brief-table { + description + "OSPFv3 interface brief information table for + an area"; + uses INTERFACE-BRIEF; + } + container request-list-table { + description + "OSPFv3 request list information in an area"; + uses REQUEST-LIST; + } + container neighbor-table { + description + "OSPFv3 neighbor information table"; + uses NEIGHBOR; + } + container interface-table { + description + "OSPFv3 interface information table for an area"; + uses INTERFACE; + } + container flood-list-table { + description + "OSPFv3 flood list information table for an + area"; + uses FLOOD-LIST; + } + container retransmission-list-table { + description + "OSPFv3 retransmission list information table + in an area"; + uses RETRANSMISSION-LIST; + } + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses DATABASE-TABLE; + uses DATABASE-SUMMARY-TABLE; + } + } + } + + grouping EXTERNAL-ROUTE-TABLE { + description + "Common node of default-vrf, vrf"; + container external-routes { + description + "OSPFv3 external route information table"; + list external-route { + description + "OSPFv3 external route information"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Route prefix"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Length of IPv6 Prefix"; + } + uses OSPFV3-EDM-TOPOLOGY-EXTERNAL; + } + } + } + + grouping NEIGHBOR-DETAIL-PROCESS-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbor-detail-process-table { + description + "OSPFv3 neighbor information table for all areas"; + uses NEIGHBOR-DETAIL; + } + } + + grouping VRF-STATISTICS { + description + "Common node of default-vrf, vrf"; + container vrf-statistics { + description + "Container for Statistics"; + container protocol-stats { + description + "Protocol table"; + list protocol-stat { + key "interface-name"; + description + "Protocol statistics for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPFV3-EDM-PROTO-STATS; + } + } + container spf-stats { + description + "OSPFv3 RIB batch statistics"; + uses OSPFV3-EDM-SPF-STATS; + } + container rawio-stats { + description + "OSPF Prefix SPF Prioritization statistics"; + uses OSPFV3-EDM-RAW-STATS; + } + container prefix-priority-stats { + description + "OSPF Prefix SPF Prioritization statistics"; + uses OSPFV3-EDM-PRIO-STATS; + } + container vrf-rib-batch-stats { + description + "OSPFv3 RIB batch statistics"; + uses OSPFV3-EDM-BATCH-STATS; + } + } + } + + grouping DATABASE-LSA-SUMMARY-TABLE { + description + "Common node of default-vrf, vrf"; + container database-lsa-summaries { + description + "Advertising router LSA summary information table"; + list database-lsa-summary { + key "advertising-router"; + description + "LSA summary of particular advertising router"; + leaf advertising-router { + type inet:ipv4-address-no-zone; + description + "Router ID of the Advertising Router"; + } + uses OSPFV3-EDM-ADV-RTR-LSA-SUM; + } + } + } + + grouping INTERFACE { + description + "Common node of interface-table, + interface-process-table"; + list interface { + key "interface-name"; + description + "OSPFv3 interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPFV3-EDM-INTERFACE; + } + } + + grouping INTERFACE-BRIEF { + description + "Common node of interface-brief-table, + interface-brief-process-table"; + list interface-brief { + key "interface-name"; + description + "Interface brief information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses OSPFV3-EDM-INTF-BRIEF; + } + } + + grouping ROUTE-SUMMARY { + description + "Common node of default-vrf, vrf"; + container route-summary { + description + "Summarize OSPFv3 local RIB tables"; + uses OSPFV3-EDM-ROUTE-SUM; + } + } + + grouping NEIGHBOR-DETAIL { + description + "Common node of neighbor-detail-process-table, + neighbor-detail-table"; + list neighbor-detail { + description + "OSPFv3 neighbor detail information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor ID"; + } + uses OSPFV3-EDM-NEIGHBOR; + } + } + + grouping LSA { + description + "Common node of lsa-table, lsa-internal-table"; + list lsa { + description + "Database LSA information"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + leaf ls-type { + type Ospfv3-lsa; + description + "LSA type"; + } + leaf advertising-router { + type inet:ipv4-address-no-zone; + description + "ID of the Advertising Router"; + } + leaf ls-id { + type uint32 { + range "0..4294967295"; + } + description + "Link state ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses OSPFV3-EDM-DATABASE-LSAINFO; + } + } + + grouping RETRANSMISSION-LIST { + description + "Common node of retransmission-list-process-table, + retransmission-list-table"; + list retransmission { + description + "OSPFv3 retransmission list information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor Router ID"; + } + uses OSPFV3-EDM-RETRANS; + } + } + + grouping VIRTUAL-LINK-TABLE { + description + "Common node of default-vrf, vrf"; + container virtual-links { + description + "Virtual link information table"; + list virtual-link { + key "vir-link-name"; + description + "Virtual link information"; + leaf vir-link-name { + type xr:Cisco-ios-xr-string; + description + "Virtual link name"; + } + uses OSPFV3-EDM-VIRTUAL-LINKS; + } + } + } + + grouping RETRANSMISSION-LIST-PROCESS-TABLE { + description + "Common node of default-vrf, vrf"; + container retransmission-list-process-table { + description + "OSPFv3 retransmission list information table for + all areas"; + uses RETRANSMISSION-LIST; + } + } + + grouping SUMMARY-PREFIX-TABLE { + description + "Common node of default-vrf, vrf"; + container summary-prefixes { + description + "Summary prefix information table"; + list summary-prefix { + description + "Summary prefix information"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Summary prefix"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Length of IPv6 Prefix"; + } + uses OSPFV3-EDM-SUMMARY-PREFIX; + } + } + } + + grouping AREA-INFORMATION-TABLE { + description + "Common node of default-vrf, vrf"; + container area-informations { + description + "OSPFv3 area information table"; + list area-information { + key "area-id"; + description + "OSPFv3 area information details"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses OSPFV3-EDM-AREA; + } + } + } + + grouping SHAM-LINK-TABLE { + description + "Common node of default-vrf, vrf"; + container sham-links { + description + "Sham link information table"; + list sham-link { + key "sham-link-name"; + description + "Sham link information"; + leaf sham-link-name { + type xr:Cisco-ios-xr-string; + description + "Sham link name"; + } + uses OSPFV3-SH-SHAM-LINKS; + } + } + } + + grouping NEIGHBOR { + description + "Common node of neighbor-process-table, + neighbor-table"; + list neighbor { + description + "OSPFv3 neighbor detail information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor ID"; + } + uses OSPFV3-EDM-NEIGHBOR; + } + } + + grouping SUMMARY { + description + "Common node of default-vrf, vrf"; + container summary { + description + "OSPFv3 summary"; + container protocol { + description + "OSPFv3 protocol summary"; + uses OSPFV3-EDM-PROTOCOL; + } + container ospfv3 { + description + "OSPFv3 summary"; + uses OSPFV3-EDM-SUMMARY; + } + container aggregate-statistics { + description + "OSPFv3 aggregate statistics information"; + uses OSPFV3-SH-STATS-AGGT; + } + container route { + description + "OSPFv3 route summary"; + uses OSPFV3-EDM-ROUTE-SUM; + } + } + } + + grouping REQUEST-LIST-PROCESS-TABLE { + description + "Common node of default-vrf, vrf"; + container request-list-process-table { + description + "OSPFv3 request list information for all areas"; + uses REQUEST-LIST; + } + } + + grouping DATABASE-TABLE { + description + "Common node of area, default-vrf, vrf"; + container database-table { + description + "OSPF Link State Database"; + container lsa-table { + description + "Database LSA information"; + uses LSA; + } + container lsa-internal-table { + description + "Database LSA information"; + uses LSA; + } + } + } + + grouping CONNECTED-ROUTE-TABLE { + description + "Common node of default-vrf, vrf"; + container connected-routes { + description + "OSPFv3 connected route information table"; + list connected-route { + description + "OSPFv3 connected route information"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Route prefix"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Length of IPv6 Prefix"; + } + uses OSPFV3-EDM-TOPOLOGY-CONNECTED; + } + } + } + + grouping BAD-CHECKSUM-TABLE { + description + "Common node of default-vrf, vrf"; + container bad-checksums { + description + "Bad Checksum Packets information table"; + list bad-checksum { + key "packet-number"; + description + "Bad Checksum Packet information"; + leaf packet-number { + type uint32 { + range "0..9"; + } + description + "Bad Checksum Packets number"; + } + uses OSPFV3-SH-BAD-CHECKSUM; + } + } + } + + grouping DATABASE-SUMMARY-TABLE { + description + "Common node of default-vrf, vrf, area"; + container database-summary-table { + description + "Summary of the entire Database"; + container database-summary { + description + "Database Summary information"; + uses OSPFV3-EDM-DB-SUMMARY; + } + } + } + + grouping REQUEST-LIST { + description + "Common node of request-list-process-table, + request-list-table"; + list request { + description + "OSPFv3 request list information"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor Router ID"; + } + uses OSPFV3-EDM-REQUEST; + } + } + + grouping INTERFACE-BRIEF-PROCESS-TABLE { + description + "Common node of default-vrf, vrf"; + container interface-brief-process-table { + description + "OSPFv3 interface brief information table for all + areas"; + uses INTERFACE-BRIEF; + } + } + + grouping NEIGHBOR-PROCESS-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbor-process-table { + description + "OSPFv3 neighbor information table for all areas"; + uses NEIGHBOR; + } + } + + grouping INTERNAL-ROUTE-TABLE { + description + "Common node of default-vrf, vrf"; + container internal-routes { + description + "OSPFv3 internal route information table"; + list internal-route { + description + "OSPFv3 internal route information"; + leaf prefix { + type inet:ipv6-address-no-zone; + description + "Route prefix"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + description + "Length of IPv6 Prefix"; + } + uses OSPFV3-EDM-TOPOLOGY-INTERNAL; + } + } + } + + grouping REDISTRIBUTION-TABLE { + description + "Common node of default-vrf, vrf"; + container redistributions { + description + "Redistribution information table"; + list redistribution { + description + "Redistribution information"; + leaf protocol-name { + type xr:Cisco-ios-xr-string; + description + "Protocol name that is redistributed"; + } + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "Process name of a protocolbeing redistributed "; + } + uses OSPFV3-EDM-REDIST; + } + } + } + + grouping INTERFACE-PROCESS-TABLE { + description + "Common node of default-vrf, vrf"; + container interface-process-table { + description + "OSPFv3 interface information table for all areas"; + uses INTERFACE; + } + } + + grouping PROTOCOL-AREA-TABLE { + description + "Common node of default-vrf, vrf"; + container protocol-areas { + description + "Protocol area table "; + list protocol-area { + key "area-id"; + description + "Area information "; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Area ID"; + } + uses OSPFV3-EDM-PROTO-AREA; + } + } + } + + container ospfv3 { + config false; + description + "OSPFv3 operational information "; + container processes { + description + "OSPFv3 Process Table"; + list process { + key "process-name"; + description + "OSPFv3 Operational data for a particular OSPFv3 + process "; + container vrfs { + description + "Table for each VRF"; + list vrf { + key "vrf-name"; + description + "Operational data for a particular VRF + (instance) in the OSPFv3 process"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses SUMMARY-PREFIX-TABLE; + uses BORDER-ROUTER-TABLE; + uses AREA-INFORMATION-TABLE; + uses DATABASE-TABLE; + uses VIRTUAL-LINK-TABLE; + uses INTERFACE-PROCESS-TABLE; + uses REDISTRIBUTION-TABLE; + uses EXTERNAL-ROUTE-TABLE; + uses REQUEST-LIST-PROCESS-TABLE; + uses FLOOD-LIST-PROCESS-TABLE; + uses ROUTE-SUMMARY; + uses AREA-TABLE; + uses INTERNAL-ROUTE-TABLE; + uses SHAM-LINK-TABLE; + uses PROTOCOL-AREA-TABLE; + uses CONNECTED-ROUTE-TABLE; + uses VRF-STATISTICS; + uses SUMMARY; + uses RETRANSMISSION-LIST-PROCESS-TABLE; + uses DATABASE-LSA-SUMMARY-TABLE; + uses BAD-CHECKSUM-TABLE; + uses DATABASE-SUMMARY-TABLE; + uses NEIGHBOR-PROCESS-TABLE; + uses FAST-REROUTE-TABLE; + uses INTERFACE-BRIEF-PROCESS-TABLE; + uses NEIGHBOR-DETAIL-PROCESS-TABLE; + } + } + container statistics { + description + "Container for Statistics"; + container nsr-stats { + description + "OSPF NSR statistics"; + uses OSPFV3-EDM-NSR-STATS; + } + container rib-thread-stats { + description + "OSPFv3 RIB thread statistics"; + uses OSPFV3-EDM-RTHREAD-STATS; + } + container issu-stats { + description + "OSPF ISSU statistics"; + uses OSPFV3-EDM-NSR-STATS; + } + container nsr-pl-stats { + description + "OSPF NSR packet library statistics"; + uses OSPF-SH-NCD-STATS; + } + } + container default-vrf { + description + "Operational data for the default VRF + (instance) in the OSPFv3 process"; + uses SUMMARY-PREFIX-TABLE; + uses BORDER-ROUTER-TABLE; + uses AREA-INFORMATION-TABLE; + uses DATABASE-TABLE; + uses VIRTUAL-LINK-TABLE; + uses INTERFACE-PROCESS-TABLE; + uses REDISTRIBUTION-TABLE; + uses EXTERNAL-ROUTE-TABLE; + uses REQUEST-LIST-PROCESS-TABLE; + uses FLOOD-LIST-PROCESS-TABLE; + uses ROUTE-SUMMARY; + uses AREA-TABLE; + uses INTERNAL-ROUTE-TABLE; + uses SHAM-LINK-TABLE; + uses PROTOCOL-AREA-TABLE; + uses CONNECTED-ROUTE-TABLE; + uses VRF-STATISTICS; + uses SUMMARY; + uses RETRANSMISSION-LIST-PROCESS-TABLE; + uses DATABASE-LSA-SUMMARY-TABLE; + uses BAD-CHECKSUM-TABLE; + uses DATABASE-SUMMARY-TABLE; + uses NEIGHBOR-PROCESS-TABLE; + uses FAST-REROUTE-TABLE; + uses INTERFACE-BRIEF-PROCESS-TABLE; + uses NEIGHBOR-DETAIL-PROCESS-TABLE; + } + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "Particular OSPFv3 process"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ping-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ping-act.yang new file mode 100644 index 000000000..6d0f11563 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-ping-act.yang @@ -0,0 +1,203 @@ +submodule Cisco-IOS-XR-ipv6-ping-act { + belongs-to Cisco-IOS-XR-ping-act { + prefix ping-act; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-ping-act; + + 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 IPv6 ping action package configuration. + + Copyright (c) 2016-2019, 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-11 { + description + "Addition of new leaves."; + semver:module-version "2.1.0"; + } + revision 2021-03-05 { + description + "Removed support for use-srv6-op-sid"; + semver:module-version "2.0.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-28 { + description + "IOS XR 7.0.1 revision."; + } + revision 2016-09-13 { + description + "IOS XR 6.2.1 revision."; + } + + grouping IPV6-SPECIFIC-OPTIONS { + description + "IPv6 specific options"; + leaf priority { + type uint8 { + range "0..15"; + } + description + "Priority of the packet"; + } + leaf outgoing-interface { + type string; + description + "Outgoing interface, needed in case of ping to link local address"; + } + container flowlabel { + description + "Flowlabel value or flowlabel random, + if both are given then flowabel value is chosen."; + leaf value { + type uint32 { + range "0..1048575"; + } + description + "Flowlabel of the packet"; + } + leaf random { + type empty; + description + "Random flowlabel value of the packet, + repeats after every 5 packets"; + } + } + } + + grouping IPV6-PING-INPUT { + description + "IPv6 ping input"; + uses PING-OPTIONS; + uses IPV6-SPECIFIC-OPTIONS; + } + + grouping IPV6-PING-OUTPUT { + description + "IPv6 ping output"; + uses PING-COMMON-INPUT-OUTPUT-OPTIONS; + leaf sweep-min { + type uint32; + description + "Minimum value of sweep size"; + } + leaf sweep-max { + type uint64; + description + "Maximum value of sweep size"; + } + leaf rotate-pattern { + type boolean; + description + "Rotate Pattern is enabled"; + } + container replies { + description + "IPv6 ping replies"; + list reply { + key "reply-index"; + description + "IPv6 ping reply"; + leaf reply-index { + type uint64 { + range "1..2147483647"; + } + description + "Index of the reply list"; + } + leaf result { + type string; + description + "Response for each packet"; + } + leaf source { + type string; + description + "Source of each response packet"; + } + leaf time { + type uint64 { + range "1..2147483647"; + } + description + "Time taken to receive each response packet in nanoseconds"; + } + leaf ttl { + type uint64 { + range "1..2147483647"; + } + description + "TTL value for each packet"; + } + leaf bytes { + type uint64 { + range "1..2147483647"; + } + description + "Number of bytes for each packet"; + } + } + } + leaf hits { + type uint64; + description + "Number of packets reach to destination and get reply back"; + } + leaf total { + type uint64; + description + "Total number of packets sent out"; + } + leaf success-rate { + type uint64; + description + "Successful rate of ping"; + } + leaf rtt-min { + type uint64; + description + "Minimum value of Round Trip Time"; + } + leaf rtt-avg { + type uint64; + description + "Average value of Round Trip Time"; + } + leaf rtt-max { + type uint64; + description + "Maximum value of Round Trip Time"; + } + leaf std-dev { + type uint64; + description + "standard deviation of Ping responses in nanoseconds"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-cfg.yang new file mode 100644 index 000000000..1e2dbe080 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-cfg.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-ipv6-smiap-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-smiap-cfg"; + prefix ipv6-smiap-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ipv6-smiap package configuration. + + This module contains definitions + for the following management objects: + ipv6-virtual: IPv6 virtual address for management interfaces + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-07-04 { + description + "this schema file has all the latest changes."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv6-virtual { + description + "IPv6 virtual address for management interfaces"; + container vrfs { + description + "VRFs for the virtual IPv6 addresses"; + list vrf { + key "vrf-name"; + description + "A VRF for a virtual IPv6 address. Specify + 'default' for VRF default"; + container address { + presence "Indicates a address node is configured."; + description + "IPv6 address and mask"; + leaf address { + type inet:ipv6-address-no-zone; + mandatory true; + description + "IPv6 address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "IPv6 address prefix length"; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Name of VRF"; + } + } + } + leaf use-as-source-address { + type empty; + description + "Enable use as default source address on sourced + packets"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper-sub1.yang new file mode 100644 index 000000000..66f45c637 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper-sub1.yang @@ -0,0 +1,158 @@ +submodule Cisco-IOS-XR-ipv6-smiap-oper-sub1 { + belongs-to Cisco-IOS-XR-ipv6-smiap-oper { + prefix Cisco-IOS-XR-ipv6-smiap-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ipv6-smiap package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-05 { + description + "this schema file has the changes for oper."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Smiap-address-family { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4 Address family"; + } + enum "ipv6" { + value 10; + description + "IPv6 Address family"; + } + } + description + "SMIAP Address family"; + } + + grouping SMIAP-ACT-INTERFACE { + description + "Active interface information"; + leaf interface-name { + type string; + description + "Active Interface name"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address pf the active interface"; + } + } + + grouping SMIAP-IPV6-ADDR { + description + "SMIAP IPv6 Address"; + leaf address { + type inet:ipv6-address; + description + "IPv6 Address"; + } + leaf prefix-length { + type uint32; + description + "IPv6 Prefix Lenghth"; + } + } + + grouping SMIAP-IPV4-ADDR { + description + "SMIAP IPv4 Address"; + leaf address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf prefix-length { + type uint32; + description + "IPv4 Prefix Length"; + } + } + + grouping SMIAP-VIRTUAL-IP-UNION { + description + "Union of IPV4 and IPV6 address types"; + container ipv4-address { + when "../address-family = 'ipv4'" { + description + "../AddressFamily = 'IPV4'"; + } + description + "IPv4 Address"; + uses SMIAP-IPV4-ADDR; + } + container ipv6-address { + when "../address-family = 'ipv6'" { + description + "../AddressFamily = 'IPV6'"; + } + description + "IPv6 Address"; + uses SMIAP-IPV6-ADDR; + } + leaf address-family { + type Smiap-address-family; + description + "AddressFamily"; + } + } + + grouping SMIAP-VRF-ENTRY { + description + "SMIAP VRF Database entry"; + container virtual-ip { + description + "Virtual IP"; + uses SMIAP-VIRTUAL-IP-UNION; + } + container active-interface { + description + "Active Interface"; + uses SMIAP-ACT-INTERFACE; + } + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper.yang new file mode 100644 index 000000000..4fd7f527e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-smiap-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-ipv6-smiap-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv6-smiap-oper"; + prefix ipv6-smiap-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv6-smiap-oper-sub1 { + revision-date 2022-04-05; + } + + 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 ipv6-smiap package operational data. + + This module contains definitions + for the following management objects: + ipv6-virtual: IPv6 virtual address for management interfaces + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-05 { + description + "this schema file has the changes for oper."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ipv6-virtual { + config false; + description + "IPv6 virtual address for management interfaces"; + container address { + description + "Address family"; + container vrfs { + description + "VRF entry table"; + list vrf { + key "vrf-name"; + description + "smiap vrf entry"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses SMIAP-VRF-ENTRY; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-traceroute-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-traceroute-act.yang new file mode 100644 index 000000000..3869bf121 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ipv6-traceroute-act.yang @@ -0,0 +1,80 @@ +submodule Cisco-IOS-XR-ipv6-traceroute-act { + belongs-to Cisco-IOS-XR-traceroute-act { + prefix traceroute-act; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-traceroute-act; + + 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 IPv6 traceroute action package configuration. + + Copyright (c) 2016-2019, 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-05 { + description + "Removed support for use-srv6-op-sid"; + semver:module-version "2.0.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-09-17 { + description + "IOS XR 6.2.1 revision."; + } + + grouping IPV6-SPECIFIC-OPTIONS { + description + "IPv6 specific options"; + leaf priority { + type uint16 { + range "0..15"; + } + description + "Priority of hte packet"; + } + leaf outgoing-interface { + type string; + description + "Outgoing interface, needed in case of traceroute to link local address"; + } + leaf flowlabel { + type uint32 { + range "0..1048575"; + } + description + "Flowlabel of hte packet"; + } + } + + grouping IPV6-TRACEROUTE-INPUT { + description + "IPv6 traceroute input"; + uses TRACEROUTE-OPTIONS; + uses IPV6-SPECIFIC-OPTIONS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-isis-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-isis-act.yang new file mode 100644 index 000000000..50470344a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-isis-act.yang @@ -0,0 +1,231 @@ +module Cisco-IOS-XR-isis-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-isis-act"; + prefix isis-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 ISIS action package configuration. + + Copyright (c) 2016-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-06-30 { + description + "IOS XR 6.2.1 revision."; + } + + rpc clear-isis-process { + description + "Clear all IS-IS data structures"; + input { + container instance { + description + "Clear data from single IS-IS instance"; + leaf instance-identifier { + type string; + description + "IS-IS process instance identifier"; + } + } + leaf process { + type empty; + description + "Clear all IS-IS data structures"; + } + } + } + rpc clear-isis-route { + description + "Clear IS-IS routes"; + input { + container instance { + description + "Clear data from single IS-IS instance"; + leaf instance-identifier { + type string; + description + "IS-IS process instance identifier"; + } + } + leaf route { + type empty; + description + "Clear IS-IS routes"; + } + } + } + rpc clear-isis-stat { + description + "Clear IS-IS protocol statistics"; + input { + container instance { + description + "Clear data from single IS-IS instance"; + leaf instance-identifier { + type string; + description + "IS-IS process instance identifier"; + } + } + container statistics { + description + "Clear IS-IS protocol statistics"; + leaf interface-name { + type xr:Interface-name; + mandatory true; + description + "Interface name"; + } + } + } + } + rpc clear-isis-dist { + description + "Reset BGP-LS topology distribution"; + input { + container instance { + description + "Reset BGP-LS topology from single IS-IS instance"; + leaf instance-identifier { + type string; + description + "IS-IS process instance identifier"; + } + } + leaf distribution { + type empty; + description + "Reset BGP-LS topology distribution"; + } + } + } + rpc clear-isis-local-lsp { + description + "Clean and regenerate local LSPs"; + input { + container instance { + description + "Clean and regenerate local LSPs from single IS-IS instance"; + leaf instance-identifier { + type string; + description + "IS-IS process instance identifier"; + } + } + leaf local-lsp { + type empty; + description + "Clean and regenerate local LSPs"; + } + } + } + rpc clear-isis { + description + "Clear IS-IS data structures"; + input { + container instance { + description + "Clear data from single IS-IS instance"; + leaf instance-identifier { + type string; + description + "IS-IS process instance identifier"; + } + } + leaf rt-type { + type enumeration { + enum "AFI-ALL-MULTICAST" { + value 0; + description + "Clear IS-IS rt type AFI all Multicast"; + } + enum "AFI-ALL-SAFI-ALL" { + value 1; + description + "Clear IS-IS rt type all AFI"; + } + enum "AFI-ALL-UNICAST" { + value 2; + description + "Clear IS-IS rt type AFI All unicast"; + } + enum "IPv4-MULTICAST" { + value 3; + description + "Clear IS-IS rt type IPv4 Multicast"; + } + enum "IPv4-SAFI-ALL" { + value 4; + description + "Clear IS-IS rt type IPv4 AFI All"; + } + enum "IPv4-UNICAST" { + value 5; + description + "Clear IS-IS rt type IPv4 unicast"; + } + enum "IPv6-MULTICAST" { + value 6; + description + "Clear IS-IS rt type IPv6 multicast"; + } + enum "IPv6-SAFI-ALL" { + value 7; + description + "Clear IS-IS rt type IPv6 AFI All"; + } + enum "IPv6-UNICAST" { + value 8; + description + "Clear IS-IS rt type IPv6 unicast"; + } + } + description + "Clear data for these route types"; + } + choice route-topology { + description + "Route topology"; + leaf route { + type empty; + description + "Clear IS-IS routes"; + } + leaf topology { + type string; + description + "Topology table information"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper-sub1.yang new file mode 100644 index 000000000..411e6d7e3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper-sub1.yang @@ -0,0 +1,844 @@ +submodule Cisco-IOS-XR-issu-oper-sub1 { + belongs-to Cisco-IOS-XR-issu-oper { + prefix Cisco-IOS-XR-issu-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR issu package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Issu-mgbl-node-status { + type enumeration { + enum "does-not-exist" { + description + "Does not exist"; + } + enum "exists" { + description + "Exists"; + } + enum "connected" { + description + "Connected"; + } + enum "in-sync" { + description + "In sync"; + } + } + description + "Node status type"; + } + + typedef Issu-mgbl-ha-role { + type enumeration { + enum "active" { + description + "Active"; + } + enum "standby" { + description + "Standby"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "HA role information"; + } + + typedef Issu-mgbl-role { + type enumeration { + enum "primary" { + description + "Primary"; + } + enum "secondary" { + description + "Secondary"; + } + enum "tertiary" { + description + "Tertiary"; + } + } + description + "ISSU role information"; + } + + typedef Issu-mgbl-version { + type enumeration { + enum "v1" { + description + "Version 1"; + } + enum "v2" { + description + "Version 2"; + } + } + description + "ISSU version information"; + } + + typedef Issu-mgbl-service { + type enumeration { + enum "none" { + description + "None"; + } + enum "cfg-mgr" { + description + "Config Mgr"; + } + enum "gsp" { + description + "GSP"; + } + enum "install" { + description + "Install"; + } + enum "install-mgr" { + description + "Install Mgr"; + } + enum "install-agt" { + description + "Install Agent"; + } + enum "sdrnm" { + description + "SDR Node Mgr"; + } + enum "sdrsm" { + description + "SDR System Mgr"; + } + enum "im" { + description + "Inventory Mgr"; + } + enum "wd" { + description + "Watchdog"; + } + enum "capi" { + description + "CAPI"; + } + enum "pd-lib" { + description + "PD Lib"; + } + enum "lrd" { + description + "LRD"; + } + enum "chkpt" { + description + "Checkpoint"; + } + enum "process-mgr" { + description + "Process Mgr"; + } + enum "cmpat-infra" { + description + "Compat Infra"; + } + enum "fault-mgr" { + description + "Fault Mgr"; + } + enum "system-mgr" { + description + "System Mgr"; + } + } + description + "Service type"; + } + + typedef Issu-mgbl-trigger-details-options { + type enumeration { + enum "service" { + description + "Service"; + } + enum "client" { + description + "Client"; + } + } + description + "Type of trigger details"; + } + + typedef Issu-mgbl-trigger { + type enumeration { + enum "isdv1" { + description + "ISD V1"; + } + enum "isdv2" { + description + "ISD V2"; + } + enum "ism" { + description + "ISM"; + } + enum "client" { + description + "Client"; + } + } + description + "Trigger type"; + } + + grouping ISSU-NODE-SUBPHASE-DATA { + description + "ISSU node subphase data"; + container completion-time { + description + "Completion time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + leaf ready { + type boolean; + description + "Ready"; + } + leaf complete { + type boolean; + description + "Complete"; + } + } + + grouping ISSU-NODE-DATA { + description + "ISSU NODE DATA"; + container prepare-check-completion { + description + "Prepare check completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container prepare-disk-completion { + description + "Prepare disk completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container load-prepare-completion { + description + "Load prepare completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container load-exec-completion { + description + "Load exec completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container run-prepare-completion { + description + "Run prepare completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container run-exec-completion { + description + "Run exec completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container cleanup-completion { + description + "Cleanup completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container abort-completion { + description + "Abort completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + container abort-cleanup-completion { + description + "Abort cleanup completion"; + uses ISSU-NODE-SUBPHASE-DATA; + } + leaf issuid { + type uint32; + description + "ISSU ID"; + } + leaf node-id { + type uint32; + description + "Node ID"; + } + leaf role { + type Issu-mgbl-role; + description + "ISSU role"; + } + leaf ha-role { + type Issu-mgbl-ha-role; + description + "HA role"; + } + leaf version { + type Issu-mgbl-version; + description + "Version"; + } + leaf partner-node-id { + type uint32; + description + "Partner node ID"; + } + leaf rp { + type boolean; + description + "RP"; + } + leaf status { + type Issu-mgbl-node-status; + description + "Status"; + } + list warning { + description + "Warnings"; + uses ISSU-WARNING-DETAIL-DATA; + } + } + + grouping ISSU-RUN-DATA { + description + "ISSU run phase data"; + container complete { + description + "Complete"; + uses ISSU-PHASE-COMPLETION-DATA; + } + list warning { + description + "Warnings"; + uses ISSU-WARNING-DATA; + } + } + + grouping ISSU-MILESTONE-DATA { + description + "ISSU milestone data"; + container start-timestamp { + description + "Milestone start timestamp"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + container end-timestamp { + description + "Milestone end timestamp"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + leaf id { + type uint32; + description + "Milestone ID"; + } + leaf name { + type string; + description + "Milestone name"; + } + } + + grouping ISSU-LOAD-DATA { + description + "ISSU load phase data"; + container complete { + description + "Complete"; + uses ISSU-PHASE-COMPLETION-DATA; + } + list milestone { + description + "Milestones"; + uses ISSU-MILESTONE-DATA; + } + } + + grouping ISSU-PREP-CHECK-WARNING-DATA { + description + "ISSU client prepare check warning data"; + container time { + description + "Time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + leaf headline { + type string; + description + "Headline"; + } + leaf details { + type string; + description + "Details"; + } + leaf unresolved-impact { + type string; + description + "Unresolved impact"; + } + leaf resolution { + type string; + description + "Resolution"; + } + } + + grouping ISSU-PHASE-COMPLETION-DATA { + description + "ISSU phase completion data"; + container completion-time { + description + "Completion time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + leaf complete { + type boolean; + description + "Complete"; + } + } + + grouping ISSU-PREP-DATA { + description + "ISSU prepare phase data"; + container complete { + description + "Complete"; + uses ISSU-PHASE-COMPLETION-DATA; + } + list warning { + description + "Warnings"; + uses ISSU-PREP-CHECK-WARNING-DATA; + } + } + + grouping ISSU-CLIENT-DATA { + description + "ISSU CLIENT DATA"; + container time-registered { + description + "Time registered"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + container prep-info { + description + "Prepare phase info"; + uses ISSU-PREP-DATA; + } + container load-info { + description + "Load phase info"; + uses ISSU-LOAD-DATA; + } + container run-prep-info { + description + "Run prepare phase info"; + uses ISSU-RUN-DATA; + } + container run-exec-info { + description + "Run exec phase info"; + uses ISSU-RUN-DATA; + } + leaf issuid { + type uint32; + description + "Client ISSU ID"; + } + leaf node-id { + type uint32; + description + "Client node ID"; + } + leaf process-name-xr { + type string; + description + "Client process name"; + } + leaf instance { + type string; + description + "Client instance"; + } + leaf jid-xr { + type uint32; + description + "Client JID"; + } + leaf connected { + type boolean; + description + "Connected"; + } + } + + grouping ISSU-ORCHESTRATION-SUBPHASE-DATA { + description + "ISSU orchestration subphase data"; + container start-time { + description + "Start time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + container end { + description + "End time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + leaf started { + type boolean; + description + "Started"; + } + leaf complete { + type boolean; + description + "Complete"; + } + } + + grouping ISSU-ABORT-REQUEST-DETAIL-DATA { + description + "ISSU orchestration abort request data"; + container trigger-details { + description + "Trigger details"; + uses ISSU-TRIGGER-DATA; + } + container time { + description + "Time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + leaf headline { + type string; + description + "Headline"; + } + leaf details { + type string; + description + "Details"; + } + leaf diagnostics { + type string; + description + "Diagnostics"; + } + leaf next-steps { + type string; + description + "Next steps"; + } + } + + grouping ISSU-MGBL-TIMESTAMP-TYPE { + description + "ISSU MGBL TIMESTAMP TYPE"; + leaf tv-sec { + type int32; + description + "tv sec"; + } + leaf tv-nsec { + type int32; + description + "tv nsec"; + } + } + + grouping ISSU-WARNING-DATA { + description + "ISSU client run warning data"; + container time { + description + "Time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + leaf headline { + type string; + description + "Headline"; + } + leaf details { + type string; + description + "Details"; + } + leaf impact { + type string; + description + "Impact"; + } + leaf diagnostics { + type string; + description + "Diagnostics"; + } + leaf next-steps { + type string; + description + "Next steps"; + } + } + + grouping ISSU-MGBL-CLIENT-KEY { + description + "ISSU client key"; + leaf process-name { + type string; + description + "Client process name"; + } + leaf instance { + type string; + description + "Client instance"; + } + leaf jid { + type uint32; + description + "Client JID"; + } + } + + grouping ISSU-MGBL-TRIGGER-DETAILS { + description + "Trigger details for an abort request or warning"; + container client-key { + when "../option = 'client'" { + description + "../Option = 'Client'"; + } + description + "Client Key"; + uses ISSU-MGBL-CLIENT-KEY; + } + leaf option { + type Issu-mgbl-trigger-details-options; + description + "Option"; + } + leaf service { + when "../option = 'service'" { + description + "../Option = 'Service'"; + } + type Issu-mgbl-service; + description + "Service"; + } + } + + grouping ISSU-TRIGGER-DATA { + description + "ISSU trigger detail data"; + container details { + description + "Trigger Details"; + uses ISSU-MGBL-TRIGGER-DETAILS; + } + leaf trigger { + type Issu-mgbl-trigger; + description + "Trigger"; + } + leaf node-id { + type uint32; + description + "Node ID"; + } + } + + grouping ISSU-WARNING-DETAIL-DATA { + description + "ISSU orchestration warning data"; + container trigger-details { + description + "Trigger details"; + uses ISSU-TRIGGER-DATA; + } + container warning { + description + "Warning"; + uses ISSU-WARNING-DATA; + } + } + + grouping ISSU-ORCHESTRATION-DATA { + description + "ISSU ORCHESTRATION DATA"; + container abort-request-acted { + description + "Abort request acted upon"; + uses ISSU-ABORT-REQUEST-DETAIL-DATA; + } + container start-time { + description + "Start time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + container completion-time { + description + "Completion time"; + uses ISSU-MGBL-TIMESTAMP-TYPE; + } + container prepare-check-data { + description + "Prepare check data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container prepare-disk-data { + description + "Prepare disk data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container load-prepare-data { + description + "Load prepare data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container load-exec-data { + description + "Load exec data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container run-prepare-data { + description + "Run prepare data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container run-exec-data { + description + "Run exec data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container cleanup-data { + description + "Cleanup data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container abort-data { + description + "Abort data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + container abort-cleanup-data { + description + "Abort cleanup data"; + uses ISSU-ORCHESTRATION-SUBPHASE-DATA; + } + leaf issuid { + type uint32; + description + "ISSU ID"; + } + leaf started { + type boolean; + description + "Started"; + } + leaf complete { + type boolean; + description + "Complete"; + } + leaf install-id { + type uint32; + description + "Install ID"; + } + leaf version { + type Issu-mgbl-version; + description + "Version"; + } + leaf milestones-recorded { + type boolean; + description + "Milestones record"; + } + leaf is-smuissu { + type boolean; + description + "Is SMU ISSU?"; + } + leaf software-version-from { + type string; + description + "Software version from"; + } + leaf software-version-to { + type string; + description + "Software version to"; + } + leaf auto-abort-cleanup { + type boolean; + description + "Auto abort cleanup"; + } + leaf aborts-disabled { + type boolean; + description + "Aborts disabled"; + } + list warning { + description + "Warnings"; + uses ISSU-WARNING-DETAIL-DATA; + } + list abort-requests-not-acted { + description + "Abort requests not acted upon"; + uses ISSU-ABORT-REQUEST-DETAIL-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper.yang new file mode 100644 index 000000000..13ce22d7d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-issu-oper.yang @@ -0,0 +1,115 @@ +module Cisco-IOS-XR-issu-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-issu-oper"; + prefix issu-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-issu-oper-sub1 { + revision-date 2019-04-05; + } + + 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 issu package operational data. + + This module contains definitions + for the following management objects: + issu: ISSU operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container issu { + config false; + description + "ISSU operational data"; + container operations { + description + "List of ISSU operations"; + list operation { + key "oper-id"; + description + "ISSU operation information"; + container orchestration-data { + description + "ISSU orchestration data"; + uses ISSU-ORCHESTRATION-DATA; + } + container nodes { + description + "List of nodes"; + list node { + key "node"; + description + "Node information"; + container clients { + description + "List of clients"; + list client { + description + "Client information"; + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "Process name"; + } + leaf instance-id { + type xr:Cisco-ios-xr-string; + description + "Instance ID"; + } + leaf jid { + type uint32; + description + "Job ID"; + } + uses ISSU-CLIENT-DATA; + } + } + container node-data { + description + "Node data"; + uses ISSU-NODE-DATA; + } + leaf node { + type xr:Node-id; + description + "Node ID"; + } + } + } + leaf oper-id { + type uint32; + description + "The operation ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-key-package-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-key-package-act.yang new file mode 100644 index 000000000..bf4f65936 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-key-package-act.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-key-package-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-key-package-act"; + prefix sb-kpkg; + + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 defines procedure to apply key package. + + Copyright (c) 2017 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with + or without modification, is permitted pursuant to, and + subject to the license terms contained in, the Simplified + BSD License set forth in Section 4.c of the IETF Trust''s + Legal Provisions Relating to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of this YANG module is part of RFC VVVV; see + the RFC itself for full legal notices."; + + revision 2021-10-22 { + description + "NSO build related fixes"; + } + revision 2021-09-08 { + description + "Initial revision."; + } + + typedef kpkg_type { + type enumeration { + enum "customer" { + value 1; + description + "Key Package is signed by Customer Key"; + } + } + description + "Signer of the key package"; + } + + rpc kpkg-apply { + description + "Applies a Key Package to the system. + Returns whether operation is succeeded or failed. + When in error condition, error code will be populated."; + input { + leaf keypackage-type { + type kpkg_type; + mandatory true; + description + " Type of key package. In revision 1, only customer key packages + are supported"; + } + leaf keypackage-file { + type string; + mandatory true; + description + "Key package file path on local filesystem"; + } + } + csc:xr-task "system"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-cfg.yang new file mode 100644 index 000000000..3aa58f1be --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-cfg.yang @@ -0,0 +1,162 @@ +module Cisco-IOS-XR-keyring-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-keyring-cfg"; + prefix keyring-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 keyring package configuration. + + This module contains definitions + for the following management objects: + keyring: Keyring config commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2019-02-04 { + description + "Keyring Configuration Yang Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Keyring-encryption { + type enumeration { + enum "type7" { + value 1; + description + "Type 7 encryption"; + } + } + description + "Keyring encryption"; + } + + container keyring { + description + "Keyring config commands"; + list keyring-name { + key "name"; + description + "Keyring name"; + container peer-names { + description + "Keyring peer config commands"; + list peer-name { + key "name"; + description + "Keyring peer name"; + container address { + presence "enable address"; + description + "IP Address to identify the peer"; + leaf ip { + type inet:ipv4-address-no-zone; + description + "IP Address"; + } + leaf subnet { + type inet:ipv4-address-no-zone; + description + "Subnet"; + } + } + container psk { + description + "Pre-shared key for peer"; + container local-remote-key { + description + "Local/Remote pre-shared key for the peer"; + leaf local { + type xr:Proprietary-password; + description + "Local pre-shared key"; + } + leaf remote { + type xr:Proprietary-password; + description + "Remote pre-shared key"; + } + leaf encryption-type { + type Keyring-encryption; + default "type7"; + description + "encryption type used to store key"; + } + } + container both-key { + description + "Both pre-shared key for the peer"; + leaf string { + type xr:Proprietary-password; + description + "Both pre-shared key"; + } + leaf encryption-type { + type Keyring-encryption; + default "type7"; + description + "encryption type used to store key"; + } + } + } + leaf peer-sub { + type empty; + mandatory true; + description + "This indicates existence of keyring-peer"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the keyring-peer"; + } + } + } + leaf keyring-sub { + type empty; + mandatory true; + description + "This indicated existence of keyring"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the keyring"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper-sub1.yang new file mode 100644 index 000000000..90b2c73b3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper-sub1.yang @@ -0,0 +1,92 @@ +submodule Cisco-IOS-XR-keyring-oper-sub1 { + belongs-to Cisco-IOS-XR-keyring-oper { + prefix Cisco-IOS-XR-keyring-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR keyring package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-04 { + description + "Keyring Operational Yang Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IKEV2-EDM-PEER { + description + "IKEV2 EDM PEER"; + leaf peer-name { + type string; + description + "Name of the peer"; + } + leaf ip-address { + type string; + description + "IP Address of the peer"; + } + leaf subnet { + type string; + description + "Subnet mask of the peer"; + } + leaf local-psk { + type string; + description + "Local PSK"; + } + leaf remote-psk { + type string; + description + "Remote PSK"; + } + } + + grouping IKEV2-EDM-KEYRING { + description + "IKEV2 EDM KEYRING"; + leaf keyring-name { + type string; + description + "Name of the Keyring"; + } + leaf total-peers { + type uint32; + description + "Total Peers"; + } + list peer { + description + "List of peers"; + uses IKEV2-EDM-PEER; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper.yang new file mode 100644 index 000000000..fd8ab2c18 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-keyring-oper.yang @@ -0,0 +1,70 @@ +module Cisco-IOS-XR-keyring-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-keyring-oper"; + prefix keyring-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-keyring-oper-sub1 { + revision-date 2019-04-05; + } + + 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 keyring package operational data. + + This module contains definitions + for the following management objects: + keyrings: IKEv2 keyrings operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-04 { + description + "Keyring Operational Yang Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container keyrings { + config false; + description + "IKEv2 keyrings operational data"; + list keyring { + key "name"; + description + "IKEv2 keyring data"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the IKEv2 keyring"; + } + uses IKEV2-EDM-KEYRING; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-kim-tpa-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-kim-tpa-cfg.yang new file mode 100644 index 000000000..81e3f7e8c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-kim-tpa-cfg.yang @@ -0,0 +1,493 @@ +module Cisco-IOS-XR-kim-tpa-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-kim-tpa-cfg"; + prefix kim-tpa-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + 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 kim-tpa package configuration. + + This model is deprecated and will be replaced by + Cisco-IOS-XR-linux-xlnc-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + tpa: tpa configuration commands. This configuration is + deprecated and will be removed in a future release. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-20 { + description + "Added deprecation notice + 2022-03-11 + Updated key ordering so that response order is same as model order"; + semver:module-version "2.0.0"; + } + revision 2019-12-17 { + description + "Option to disable stats synchronization added."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-07-27 { + description + "Added support for protection configuration"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ip-protocol { + type enumeration { + enum "tcp" { + value 6; + description + "Transmission Control Protocol, RFC 793"; + } + enum "udp" { + value 17; + description + "User Datagram Protocol, RFC 768"; + } + } + description + "Ip protocol"; + } + + grouping UPDATE-SOURCE { + description + "Common node of ipv4, ipv6"; + container update-source { + status deprecated; + description + "Interface used for Source Address. This + configuration is deprecated and will be removed + in a future release."; + leaf interface-name { + type xr:Interface-name; + must "not(../active-management)"; + description + "Interface name for source address"; + } + leaf active-management { + type empty; + must "not(../interface-name)"; + description + "Use the management port on the Active RP"; + } + } + } + + grouping PROTECTION { + description + "Common node of ipv4, ipv6"; + container allow-entries { + description + "Traffic protection configuration"; + list allow-entry { + key "protocol local-port"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + } + list allow-entry-local-address { + key "protocol local-port local-address"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + leaf local-address { + type inet:ip-prefix; + description + "local prefix/length"; + } + } + list allow-entry-remote-address { + key "protocol local-port remote-address"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + leaf remote-address { + type inet:ip-prefix; + description + "remote prefix/length"; + } + } + list allow-entry-local-address-remote-address { + key "protocol local-port local-address remote-address"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + leaf local-address { + type inet:ip-prefix; + description + "local prefix/length"; + } + leaf remote-address { + type inet:ip-prefix; + description + "remote prefix/length"; + } + } + list allow-entry-interface-name { + key "protocol local-port interface-name"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + list allow-entry-local-address-interface-name { + key "protocol local-port local-address interface-name"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + leaf local-address { + type inet:ip-prefix; + description + "local prefix/length"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + list allow-entry-remote-address-interface-name { + key "protocol local-port remote-address interface-name"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + leaf remote-address { + type inet:ip-prefix; + description + "remote prefix/length"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + list allow-entry-local-address-remote-address-interface-name { + key "protocol local-port local-address remote-address interface-name"; + description + "Allow traffic matching a filter"; + leaf protocol { + type Ip-protocol; + description + "L4 protocol"; + } + leaf local-port { + type xr:Cisco-ios-xr-port-number; + description + "Local port"; + } + leaf local-address { + type inet:ip-prefix; + description + "local prefix/length"; + } + leaf remote-address { + type inet:ip-prefix; + description + "remote prefix/length"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + + grouping DEFAULT-ROUTE { + description + "Common node of ipv4, ipv6"; + leaf default-route { + type string; + status deprecated; + description + "Default interface used for routing. This + configuration is deprecated and will be removed + in a future release."; + } + } + + grouping EGRESS-UPDATE-SOURCE { + description + "Common node of ipv4, ipv6"; + container interface-names { + status deprecated; + description + "Interface used for source address for egress + interface. This configuration is deprecated and + will be removed in a future release."; + list interface-name { + key "interface-name"; + status deprecated; + description + "Egress interface name"; + leaf egress-interface-source { + type xr:Interface-name; + status deprecated; + description + "Interface name for source address"; + } + leaf interface-name { + type xr:Cisco-ios-xr-string; + description + "Interface"; + } + } + } + } + + container tpa { + status deprecated; + description + "This model is deprecated and will be replaced by + Cisco-IOS-XR-linux-xlnc-cfg.yang which will + provide the compatible functionalities. tpa + configuration commands. This configuration is + deprecated and will be removed in a future + release."; + container vrf-names { + status deprecated; + description + "VRF container. This configuration is deprecated + and will be removed in a future release."; + list vrf-name { + key "vrf-name"; + status deprecated; + description + "VRF name"; + container east-west-names { + status deprecated; + description + "EastWest container. This configuration is + deprecated and will be removed in a future + release."; + list east-west-name { + key "east-west-name"; + status deprecated; + description + "East West interface"; + leaf east-west-name { + type xr:Cisco-ios-xr-string; + description + "Interface"; + } + leaf vrf { + type string; + description + "VRF name"; + } + leaf interface { + type string; + description + "Interface"; + } + } + } + container address-family { + status deprecated; + description + "Address family. This configuration is + deprecated and will be removed in a future + release."; + container ipv6 { + status deprecated; + description + "IPv6 configuration"; + uses DEFAULT-ROUTE; + uses EGRESS-UPDATE-SOURCE; + uses PROTECTION; + uses UPDATE-SOURCE; + } + container ipv4 { + status deprecated; + description + "IPv4 configuration"; + uses DEFAULT-ROUTE; + uses EGRESS-UPDATE-SOURCE; + uses PROTECTION; + uses UPDATE-SOURCE; + } + } + leaf disable { + type empty; + status deprecated; + description + "Disable routes and interfaces. This + configuration is deprecated and will be + removed in a future release."; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + container logging { + status deprecated; + description + "Third party app logging. This configuration is + deprecated and will be removed in a future + release."; + container kim { + status deprecated; + description + "KIM logging"; + leaf rotation-max { + type uint32; + status deprecated; + description + "How many log rotation files to keep"; + } + leaf file-size-max-kb { + type uint32; + units "kilobyte"; + status deprecated; + description + "Size in Kilobytes of the log file"; + } + } + } + container statistics { + status deprecated; + description + "Statistics. This configuration is deprecated and + will be removed in a future release."; + leaf disable { + type empty; + status deprecated; + description + "set this item to disable stats collection. This + configuration is deprecated and will be removed + in a future release."; + } + leaf max-intf-events { + type uint32; + status deprecated; + description + "How many interface events to record"; + } + leaf max-lpts-events { + type uint32; + status deprecated; + description + "How many LPTS events to record"; + } + leaf statistics-update-frequency { + type uint32; + units "second"; + status deprecated; + description + "Statistics update frequency into Linux"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-cfg.yang new file mode 100644 index 000000000..40e1d176b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-cfg.yang @@ -0,0 +1,939 @@ +module Cisco-IOS-XR-l2-eth-infra-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2-eth-infra-cfg"; + prefix l2-eth-infra-cfg; + + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-l2-eth-infra-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2vpn-cfg { + prefix a2; + } + + 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 l2-eth-infra package configuration. + + This module contains definitions + for the following management objects: + ethernet-features: Ethernet Features Configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-l2vpn-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-18 { + description + "Enum Match-tag added. Enum type of outer-tag-type and inner-tag-type of encapsulation-list-extended container is changed to Match-tag, to allow only dot1q or dot1ad tag type. + 2022-04-29 + New Encapsulation config added to support upto 64 vlan-ranges."; + semver:module-version "1.1.0"; + } + revision 2020-04-13 { + description + "Adding enum for 2 port mac relay frame filtering."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2-protocol-name { + type enumeration { + enum "cdp" { + value 0; + description + "CDP"; + } + enum "stp" { + value 1; + description + "STP"; + } + enum "vtp" { + value 2; + description + "VTP"; + } + enum "pvst" { + value 3; + description + "PVST+"; + } + enum "cpsv" { + value 4; + description + "CDP, PVST+, STP, and VTP"; + } + } + description + "L2 protocol name"; + } + + typedef L2-protocol-mode { + type enumeration { + enum "forward" { + value 0; + description + "Forward packets transparently"; + } + enum "drop" { + value 1; + description + "Drop the protocol's packets"; + } + enum "tunnel" { + value 2; + description + "Tunnel ingress frames, untunnel egress frames"; + } + enum "reverse-tunnel" { + value 3; + description + "Tunnel egress frames, untunnel ingress frames"; + } + } + description + "L2 protocol mode"; + } + + typedef Egress-filtering { + type enumeration { + enum "egress-filtering-type-strict" { + value 1; + description + "Strict Egress Filtering"; + } + enum "egress-filtering-type-disable" { + value 2; + description + "Egress Filtering Disabled"; + } + enum "egress-filtering-type-default" { + value 3; + description + "Default Egress Filtering Behavior"; + } + } + description + "Egress filtering"; + } + + typedef Match-tag { + type enumeration { + enum "match-dot1q" { + value 3; + description + "Match Dot1Q tags"; + } + enum "match-dot1ad" { + value 4; + description + "Match Dot1ad tags"; + } + } + description + "Match tag"; + } + + typedef Filtering { + type enumeration { + enum "filtering-type-dot1q" { + value 0; + description + "C-Vlan ingress frame filtering (Table 8-1 of + 802.1ad standard)"; + } + enum "filtering-type-dot1ad" { + value 1; + description + "S-Vlan ingress frame filtering (Table 8-2 of + 802.1ad standard)"; + } + } + description + "Filtering"; + } + + typedef L2-protocol-mpls-exp-bits-value { + type uint32 { + range "0..7"; + } + description + "L2 protocol mpls exp bits value"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf user-network-interface { + type string { + length "1..64"; + } + description + "User-Network Interface ID"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container vlan-sub-configuration { + description + "IEEE 802.1Q VLAN subinterface configuration"; + container vlan-identifier { + presence "Indicates a vlan-identifier node is configured."; + description + "The VLAN tag stack associated with this + sub-interface."; + leaf vlan-type { + type dt1:Vlan; + mandatory true; + description + "Whether this sub-interface is dot1ad or dot1Q"; + } + leaf first-tag { + type dt1:Vlan-tag; + mandatory true; + description + "First (outermost) VLAN tag value"; + } + leaf second-tag { + type dt1:Vlan-tag-or-null; + description + "Second VLAN tag value. The any value may only + be used for Layer 2 subinterfaces"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ethernet-service { + description + "Ethernet service configuration"; + container encapsulation-list-extended { + presence "Indicates a encapsulation-list-extended node is configured."; + description + "The extended encapsulation config. Allows more + than 9 vlan ranges"; + leaf outer-tag-type { + type Match-tag; + mandatory true; + description + "The outer tag type to match, either dot1q or + dot1ad"; + } + leaf outer-ranges { + type string; + mandatory true; + description + "List of comma separated outer ranges like 1 + ,2-5,6,7-10,untagged"; + } + leaf inner-tag-type { + type Match-tag; + description + "Type of tag for inner match (Should be dot1q, + if present)"; + } + leaf inner-ranges { + type string; + description + "List of comma separated inner ranges like 1 + ,2-5,6,7-10"; + } + leaf outer-class-of-service { + type dt1:Class-of-service; + description + "Value to match against Class Of Service bits + for outer tag"; + } + leaf inner-class-of-service { + type dt1:Class-of-service; + description + "Value to match against Class Of Service bits + for inner tag"; + } + leaf payload-ethertype-match { + type dt1:Ethertype-match; + description + "Which payload ethertype values to match"; + } + leaf ingress-source-mac { + type yang:mac-address; + description + "Source MAC address to match on ingress"; + } + leaf ingress-destination-mac { + type yang:mac-address; + description + "Destination MAC address to match on egress"; + } + leaf exact { + type empty; + description + "Only match packets with no more tags than + explicitly matched"; + } + } + container local-traffic-default-encapsulation { + presence "Indicates a local-traffic-default-encapsulation node is configured."; + description + "The default encapsulation to be used for + locally-sourced packets"; + leaf outer-tag-type { + type dt1:Vlan; + mandatory true; + description + "Type of outer tag"; + } + leaf outer-vlan-id { + type dt1:Vlan-tag; + mandatory true; + description + "VLAN id for outer tag"; + } + leaf inner-vlan-id { + type dt1:Vlan-tag; + description + "Optional VLAN Id for inner Dot1Q tag"; + } + } + container encapsulation { + presence "Indicates a encapsulation node is configured."; + description + "The encapsulation of this Ethernet service"; + leaf outer-tag-type { + type dt1:Match; + mandatory true; + description + "Whether to match all unmatched packets, + untagged packets or tagged packets, and if + matching tagged packets, the outer tag type to + match"; + } + leaf outer-range1-low { + type dt1:Vlan-tag-or-any; + description + "Low value of first range for outer tag match"; + } + leaf outer-range1-high { + type dt1:Vlan-tag-or-native; + description + "High value of first range for outer tag match"; + } + leaf inner-tag-type { + type dt1:Match; + description + "Type of tag for inner match (if present)"; + } + leaf inner-range1-low { + type dt1:Vlan-tag-or-any; + description + "Low value of first range for inner tag match"; + } + leaf inner-range1-high { + type dt1:Vlan-tag; + description + "High value of first range for inner tag match"; + } + leaf additional-range1-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of first additional range for tag + match"; + } + leaf additional-range1-high { + type dt1:Vlan-tag; + description + "High value of first additional range for tag + match"; + } + leaf additional-range2-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of second additional range for tag + match"; + } + leaf additional-range2-high { + type dt1:Vlan-tag; + description + "High value of second additional range for tag + match"; + } + leaf additional-range3-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of third additional range for tag + match"; + } + leaf additional-range3-high { + type dt1:Vlan-tag; + description + "High value of third additional range for tag + match"; + } + leaf additional-range4-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of forth additional range for tag + match"; + } + leaf additional-range4-high { + type dt1:Vlan-tag; + description + "High value of forth additional range for tag + match"; + } + leaf additional-range5-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of fifth additional range for tag + match"; + } + leaf additional-range5-high { + type dt1:Vlan-tag; + description + "High value of fifth additional range for tag + match"; + } + leaf additional-range6-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of sixth additional range for tag + match"; + } + leaf additional-range6-high { + type dt1:Vlan-tag; + description + "High value of sixth additional range for tag + match"; + } + leaf additional-range7-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of seventh additional range for tag + match"; + } + leaf additional-range7-high { + type dt1:Vlan-tag; + description + "High value of seventh additional range for tag + match"; + } + leaf additional-range8-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of eighth additional range for tag + match"; + } + leaf additional-range8-high { + type dt1:Vlan-tag; + description + "High value of eighth additional range for tag + match"; + } + leaf outer-class-of-service { + type dt1:Class-of-service; + description + "Value to match against Class Of Service bits + for outer tag"; + } + leaf inner-class-of-service { + type dt1:Class-of-service; + description + "Value to match against Class Of Service bits + for inner tag"; + } + leaf payload-ethertype-match { + type dt1:Ethertype-match; + description + "Which payload ethertype values to match"; + } + leaf ingress-source-mac { + type yang:mac-address; + description + "Source MAC address to match on ingress"; + } + leaf ingress-destination-mac { + type yang:mac-address; + description + "Destination MAC address to match on egress"; + } + leaf exact { + type empty; + description + "Only match packets with no more tags than + explicitly matched"; + } + } + container rewrite { + presence "Indicates a rewrite node is configured."; + description + "The rewrite operation for the Ethernet service"; + leaf rewrite-type { + type dt1:Rewrite; + mandatory true; + description + "The type of rewrite to perform"; + } + leaf outer-tag-type { + type dt1:Match; + description + "Type of outermost tag to be pushed"; + } + leaf outer-tag-value { + type dt1:Vlan-tag; + description + "VLAN Id of outermost tag to be pushed"; + } + leaf inner-tag-type { + type dt1:Match; + description + "Type of innermost tag to be pushed"; + } + leaf inner-tag-value { + type dt1:Vlan-tag; + description + "VLAN Id of innermost tag to be pushed"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ethernet-bng { + description + "Ethernet Infra BNG specific configuration"; + container ambiguous-encapsulation { + presence "Indicates a ambiguous-encapsulation node is configured."; + description + "L3 Ambiguous encapsulation"; + leaf outer-tag-type { + type dt1:Match; + mandatory true; + description + "Whether to match all unmatched packets, + untagged packets or tagged packets, and if + matching tagged packets, the outer tag type to + match"; + } + leaf outer-range1-low { + type dt1:Vlan-tag-or-any; + description + "Low value of first range for outer tag match"; + } + leaf outer-range1-high { + type dt1:Vlan-tag-or-native; + description + "High value of first range for outer tag match"; + } + leaf inner-tag-type { + type dt1:Match; + description + "Type of tag for inner match (if present)"; + } + leaf inner-range1-low { + type dt1:Vlan-tag-or-any; + description + "Low value of first range for inner tag match"; + } + leaf inner-range1-high { + type dt1:Vlan-tag; + description + "High value of first range for inner tag match"; + } + leaf additional-range1-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of first additional range for tag + match"; + } + leaf additional-range1-high { + type dt1:Vlan-tag; + description + "High value of first additional range for tag + match"; + } + leaf additional-range2-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of second additional range for tag + match"; + } + leaf additional-range2-high { + type dt1:Vlan-tag; + description + "High value of second additional range for tag + match"; + } + leaf additional-range3-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of third additional range for tag + match"; + } + leaf additional-range3-high { + type dt1:Vlan-tag; + description + "High value of third additional range for tag + match"; + } + leaf additional-range4-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of forth additional range for tag + match"; + } + leaf additional-range4-high { + type dt1:Vlan-tag; + description + "High value of forth additional range for tag + match"; + } + leaf additional-range5-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of fifth additional range for tag + match"; + } + leaf additional-range5-high { + type dt1:Vlan-tag; + description + "High value of fifth additional range for tag + match"; + } + leaf additional-range6-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of sixth additional range for tag + match"; + } + leaf additional-range6-high { + type dt1:Vlan-tag; + description + "High value of sixth additional range for tag + match"; + } + leaf additional-range7-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of seventh additional range for tag + match"; + } + leaf additional-range7-high { + type dt1:Vlan-tag; + description + "High value of seventh additional range for tag + match"; + } + leaf additional-range8-low { + type dt1:Vlan-tag-or-cvp; + description + "Low value of eighth additional range for tag + match"; + } + leaf additional-range8-high { + type dt1:Vlan-tag; + description + "High value of eighth additional range for tag + match"; + } + leaf outer-class-of-service { + type dt1:Class-of-service; + description + "Value to match against Class Of Service bits + for outer tag"; + } + leaf inner-class-of-service { + type dt1:Class-of-service; + description + "Value to match against Class Of Service bits + for inner tag"; + } + leaf payload-ethertype-match { + type dt1:Ethertype-match; + description + "Which payload ethertype values to match"; + } + leaf ingress-source-mac { + type yang:mac-address; + description + "Source MAC address to match on ingress"; + } + leaf ingress-destination-mac { + type yang:mac-address; + description + "Destination MAC address to match on egress"; + } + leaf exact { + type empty; + description + "Only match packets with no more tags than + explicitly matched"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container mac-accounting { + description + "MAC Accounting Configuration"; + leaf ingress { + type empty; + description + "Per MAC address accounting statistics"; + } + leaf egress { + type empty; + description + "Per MAC address accounting statistics"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ethernet-features { + description + "Ethernet Features Configuration"; + leaf filtering { + type Filtering; + description + "Ingress Ethernet frame filtering"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container carrier-delay { + description + "Set the carrier transition delay on an interface + in msecs"; + leaf carrier-delay-up { + type uint32 { + range "1..65535"; + } + description + "Carrier Delay (up) in msecs"; + } + leaf carrier-delay-down { + type uint32 { + range "0"; + } + description + "Carrier Delay down in msecs, must be set to 0"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container vlan-trunk-configuration { + description + "IEEE 802.1Q VLAN trunk interface configuration"; + container native-vlan-identifier { + presence "Indicates a native-vlan-identifier node is configured."; + description + "The Native VLAN identifier associated with this + trunk interface"; + leaf vlan-type { + type dt1:Vlan; + mandatory true; + description + "Whether this interface is dot1ad or dot1Q"; + } + leaf vlan-identifier { + type dt1:Vlan-tag; + mandatory true; + description + "VLAN identifier"; + } + } + container vlan-switched { + description + "VLAN Switch interface configuration"; + leaf mode { + type dt1:Vs-mode; + description + "VLAN Switch mode"; + } + leaf access-vlan { + when "../mode = 'access'" { + description + "../Mode = Access"; + } + type dt1:Vlan-tag; + description + "Access VLAN Id"; + } + leaf trunk-tag-type { + when "../mode = 'trunk'" { + description + "../Mode = Trunk"; + } + type dt1:Vlan; + description + "Whether to match dot1ad or dot1Q packets"; + } + leaf trunk-vla-ns { + when "../mode = 'trunk'" { + description + "../Mode = Trunk"; + } + type string; + description + "Comma-separated, increasing sequence of VLAN + Ids or VLAN ranges"; + } + } + leaf tunneling-ethertype { + type enumeration { + enum "0x9100" { + value 37120; + description + "0x9100"; + } + enum "0x9200" { + value 37376; + description + "0x9200"; + } + } + description + "The outer ethertype used in Q-in-Q frames. The + default value is 0x8100"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration/a2:l2-transport" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + container l2-protocols { + description + "Interface specific Layer 2 protocol handling"; + list l2-protocol { + key "l2-protocol-name"; + description + "Handling of a specific Layer 2 protocol"; + leaf l2-protocol-name { + type L2-protocol-name; + description + "Protocol name"; + } + leaf mode { + type L2-protocol-mode; + mandatory true; + description + "How to handle the protocol's packets"; + } + leaf mpls-exp-bits-value { + type L2-protocol-mpls-exp-bits-value; + description + "The value to set the MPLS Exp bits to within + the PW.This value may be specified if the mode + is forward or tunnel and must not be specified + if the mode is drop"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration/a2:l2-transport" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + leaf propagate-remote-status { + type empty; + description + "Enable propagation of the remote + attachment-circuit link state to the + localattachment-circuit link state"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration/a2:l2-transport" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + container l2-ethernet-features { + description + "L2 Ethernet Features Configuration"; + leaf egress-filtering { + type Egress-filtering; + default "egress-filtering-type-default"; + description + "Egress Ethernet filtering"; + } + leaf source-bypass-egress-filtering { + type empty; + description + "Mark all ingress packets to bypass any egress + VLAN filter"; + } + } + } + container ethernet-features { + description + "Ethernet Features Configuration"; + container egress-filtering { + description + "Egress Filtering Configuration"; + leaf egress-filtering-default-on { + type empty; + description + "Whether Egress Filtering is on by default"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-datatypes.yang new file mode 100644 index 000000000..533c8e561 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-datatypes.yang @@ -0,0 +1,258 @@ +module Cisco-IOS-XR-l2-eth-infra-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2-eth-infra-datatypes"; + prefix l2-eth-infra-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vs-mode { + type enumeration { + enum "trunk" { + value 1; + description + "VLAN-Switched trunk mode"; + } + enum "access" { + value 2; + description + "VLAN-Switched access mode"; + } + } + description + "Vs mode"; + } + + typedef Vlan-tag-or-cvp { + type union { + type enumeration { + enum "native-with-cvlan-preservation" { + value 65534; + description + "This is the Native VLAN and C-VLAN + preservation is enabled"; + } + } + type uint32 { + range "1..65534"; + } + } + description + "Vlan tag or cvp"; + } + + typedef Class-of-service { + type uint32 { + range "0..7"; + } + description + "Class of service"; + } + + typedef Vlan { + type enumeration { + enum "vlan-type-dot1ad" { + value 1; + description + "An 802.1ad VLAN"; + } + enum "vlan-type-dot1q" { + value 2; + description + "An 802.1q VLAN"; + } + } + description + "Vlan"; + } + + typedef Vlan-tag-or-native { + type union { + type enumeration { + enum "native" { + value 65535; + description + "This is the Native VLAN"; + } + enum "native-with-cvlan-preservation" { + value 65534; + description + "This is the Native VLAN and C-VLAN + preservation is enabled"; + } + } + type uint32 { + range "1..65535"; + } + } + description + "Vlan tag or native"; + } + + typedef Vlan-tag-or-null { + type union { + type enumeration { + enum "any" { + value 0; + description + "Match any inner VLAN tag value"; + } + } + type uint32 { + range "0..4094"; + } + } + description + "Vlan tag or null"; + } + + typedef Rewrite { + type enumeration { + enum "pop1" { + value 1; + description + "Pop 1 tag"; + } + enum "pop2" { + value 2; + description + "Pop 2 tags"; + } + enum "push1" { + value 3; + description + "Push 1 tag"; + } + enum "push2" { + value 4; + description + "Push 2 tags"; + } + enum "translate1to1" { + value 5; + description + "Translate 1-to-1"; + } + enum "translate1to2" { + value 6; + description + "Translate 1-to-2"; + } + enum "translate2to1" { + value 7; + description + "Translate 2-to-1"; + } + enum "translate2to2" { + value 8; + description + "Translate 2-to-2"; + } + } + description + "Rewrite"; + } + + typedef Match { + type enumeration { + enum "match-default" { + value 1; + description + "All otherwise unmatched packets"; + } + enum "match-untagged" { + value 2; + description + "Untagged packets"; + } + enum "match-dot1q" { + value 3; + description + "Match Dot1Q tags"; + } + enum "match-dot1ad" { + value 4; + description + "Match Dot1ad tags"; + } + enum "match-dot1q-priority" { + value 5; + description + "Match Dot1Q priority-tagged packets"; + } + enum "match-dot1ad-priority" { + value 6; + description + "Match Dot1ad priority-tagged packets"; + } + } + description + "Match"; + } + + typedef Ethertype-match { + type enumeration { + enum "ppp-over-ethernet" { + value 34915; + description + "PPP over Ethernet"; + } + } + description + "Ethertype match"; + } + + typedef Vlan-tag { + type uint32 { + range "1..4094"; + } + description + "Vlan tag"; + } + + typedef Vlan-tag-or-any { + type union { + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN tag value"; + } + } + type uint32 { + range "1..4096"; + } + } + description + "Vlan tag or any"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub1.yang new file mode 100644 index 000000000..8d2cf456a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub1.yang @@ -0,0 +1,90 @@ +submodule Cisco-IOS-XR-l2-eth-infra-oper-sub1 { + belongs-to Cisco-IOS-XR-l2-eth-infra-oper { + prefix Cisco-IOS-XR-l2-eth-infra-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2-eth-infra package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-11 { + description + "Added leaf number-of-ranges indicating count of vlan-ranges in tags-to-match. + 2021-07-07 + Added hardware timestamp support for MAC accounting stats."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eth-caps-ucast-mac-mode { + type enumeration { + enum "reserved" { + value 0; + description + "Reserved"; + } + enum "permit" { + value 1; + description + "Permit"; + } + } + description + "Eth caps ucast mac mode"; + } + + grouping ETH-CAPS-UCAST-MAC-ENTRY-TYPE { + description + "ETH CAPS UCAST MAC ENTRY TYPE"; + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf mode { + type Eth-caps-ucast-mac-mode; + description + "Unicast MAC mode"; + } + } + + grouping ETHER-CAPS-UCAST-FILTER { + description + "Per interface unicast MAC filter information"; + list unicast-filter { + description + "Unicast MAC filter information"; + uses ETH-CAPS-UCAST-MAC-ENTRY-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub2.yang new file mode 100644 index 000000000..901c6eb82 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub2.yang @@ -0,0 +1,830 @@ +submodule Cisco-IOS-XR-l2-eth-infra-oper-sub2 { + belongs-to Cisco-IOS-XR-l2-eth-infra-oper { + prefix Cisco-IOS-XR-l2-eth-infra-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2-eth-infra package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-11 { + description + "Added leaf number-of-ranges indicating count of vlan-ranges in tags-to-match. + 2021-07-07 + Added hardware timestamp support for MAC accounting stats."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vlan-service { + type enumeration { + enum "vlan-service-l2" { + value 1; + description + "Layer 2 Transport Service"; + } + enum "vlan-service-l3" { + value 2; + description + "Layer 3 Terminated Service"; + } + } + description + "Layer 2 vs. Layer 3 Terminated Service"; + } + + typedef Vlan-encaps { + type enumeration { + enum "no-encapsulation" { + value 0; + description + "No encapsulation"; + } + enum "dot1q" { + value 1; + description + "IEEE 802.1Q encapsulation"; + } + enum "qinq" { + value 2; + description + "Double 802.1Q encapsulation"; + } + enum "qin-any" { + value 3; + description + "Double 802.1Q wildcarded encapsulation"; + } + enum "dot1q-native" { + value 4; + description + "IEEE 802.1Q native VLAN encapsulation"; + } + enum "dot1ad" { + value 5; + description + "IEEE 802.1ad encapsulation"; + } + enum "dot1ad-native" { + value 6; + description + "IEEE 802.1ad native VLAN encapsulation"; + } + enum "service-instance" { + value 7; + description + "Ethernet Service Instance"; + } + enum "dot1ad-dot1q" { + value 8; + description + "IEEE 802.1ad 802.1Q encapsulation"; + } + enum "dot1ad-any" { + value 9; + description + "IEEE 802.1ad wildcard 802.1Q encapsulation"; + } + } + description + "VLAN encapsulation"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Efp-payload-etype { + type enumeration { + enum "payload-ethertype-any" { + value 0; + description + "Any"; + } + enum "payload-ethertype-ip" { + value 1; + description + "IP"; + } + enum "payload-ethertype-pppoe" { + value 2; + description + "PPPoE"; + } + } + description + "Payload ethertype match"; + } + + typedef Efp-tag-priority { + type enumeration { + enum "priority0" { + value 0; + description + "Priority 0"; + } + enum "priority1" { + value 1; + description + "Priority 1"; + } + enum "priority2" { + value 2; + description + "Priority 2"; + } + enum "priority3" { + value 3; + description + "Priority 3"; + } + enum "priority4" { + value 4; + description + "Priority 4"; + } + enum "priority5" { + value 5; + description + "Priority 5"; + } + enum "priority6" { + value 6; + description + "Priority 6"; + } + enum "priority7" { + value 7; + description + "Priority 7"; + } + enum "priority-any" { + value 8; + description + "Any priority"; + } + } + description + "Priority"; + } + + typedef Efp-tag-etype { + type enumeration { + enum "untagged" { + value 0; + description + "Untagged"; + } + enum "dot1q" { + value 33024; + description + "Dot1Q"; + } + enum "dot1ad" { + value 34984; + description + "Dot1ad"; + } + } + description + "Tag ethertype"; + } + + typedef Vlan-switched-mode { + type enumeration { + enum "none" { + value 0; + description + "Disabled"; + } + enum "trunk-port" { + value 1; + description + "Trunk port"; + } + enum "access-port" { + value 2; + description + "Access port"; + } + } + description + "VLAN-Switched mode"; + } + + typedef Eth-filtering { + type enumeration { + enum "no-filtering" { + value 0; + description + "No IEEE 802.1Q/802.1ad/MAC relay multicast MAC + address filtering"; + } + enum "dot1q-filtering" { + value 1; + description + "IEEE 802.1q C-VLAN filtering"; + } + enum "dot1ad-filtering" { + value 2; + description + "IEEE 802.1ad S-VLAN filtering"; + } + enum "two-port-mac-relay-filtering" { + value 3; + description + "IEEE 802.1aj 2-Port MAC relay filtering"; + } + } + description + "Ethernet frame filtering"; + } + + typedef Vlan-qinq-outer-etype { + type enumeration { + enum "ether-type8100" { + value 33024; + description + "Dot1Q (0x8100)"; + } + enum "ether-type9100" { + value 37120; + description + "0x9100"; + } + enum "ether-type9200" { + value 37376; + description + "0x9200"; + } + } + description + "QinQ Outer Tag Ethertype"; + } + + typedef Vlan-tag-value { + type uint16; + description + "VLAN Tag Value (1 - 4094)"; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + grouping VLAN-DOUBLE-TAG-STACK { + description + "VLAN double tag stack"; + leaf outer-tag { + type Vlan-tag-value; + description + "Outer tag value"; + } + leaf second-tag { + type Vlan-tag-value; + description + "Second tag value"; + } + } + + grouping VLAN-TAG-STACK-TYPE { + description + "VLAN encapsulation and tag stack"; + container stack { + when "../vlan-encapsulation = 'qinq'" { + description + "../VLANEncapsulation = 'QinQ'"; + } + description + "Stack value"; + uses VLAN-DOUBLE-TAG-STACK; + } + container service-instance-details { + when "../vlan-encapsulation = 'service-instance'" { + description + "../VLANEncapsulation = 'ServiceInstance'"; + } + description + "Service Instance encapsulation"; + uses EFP-DESCRIPTION; + } + container dot1ad-dot1q-stack { + when "../vlan-encapsulation = 'dot1ad-dot1q'" { + description + "../VLANEncapsulation = 'Dot1adDot1Q'"; + } + description + "802.1ad 802.1Q stack value"; + uses VLAN-DOUBLE-TAG-STACK; + } + leaf vlan-encapsulation { + type Vlan-encaps; + description + "VLANEncapsulation"; + } + leaf tag { + when "../vlan-encapsulation = 'dot1q'" { + description + "../VLANEncapsulation = 'Dot1Q'"; + } + type Vlan-tag-value; + description + "Tag value"; + } + leaf outer-tag { + when "../vlan-encapsulation = 'qin-any'" { + description + "../VLANEncapsulation = 'QinAny'"; + } + type Vlan-tag-value; + description + "Outer tag value"; + } + leaf native-tag { + when "../vlan-encapsulation = 'dot1q-native'" { + description + "../VLANEncapsulation = 'Dot1QNative'"; + } + type Vlan-tag-value; + description + "Native tag value"; + } + leaf dot1ad-tag { + when "../vlan-encapsulation = 'dot1ad'" { + description + "../VLANEncapsulation = 'Dot1ad'"; + } + type Vlan-tag-value; + description + "802.1ad tag value"; + } + leaf dot1ad-native-tag { + when "../vlan-encapsulation = 'dot1ad-native'" { + description + "../VLANEncapsulation = 'Dot1adNative'"; + } + type Vlan-tag-value; + description + "802.1ad native tag value"; + } + leaf dot1ad-outer-tag { + when "../vlan-encapsulation = 'dot1ad-any'" { + description + "../VLANEncapsulation = 'Dot1adAny'"; + } + type Vlan-tag-value; + description + "802.1ad Outer tag value"; + } + } + + grouping VLAN-INTF { + description + "VLAN Interface information"; + container encapsulation-details { + description + "Encapsulation type and tag stack"; + uses VLAN-TAG-STACK-TYPE; + } + leaf interface-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf parent-interface { + type xr:Interface-name; + description + "Parent interface"; + } + leaf service { + type Vlan-service; + description + "Service type"; + } + leaf state { + type Im-state-enum; + description + "Interface state"; + } + leaf mtu { + type uint16; + description + "L2 MTU"; + } + leaf switched-mtu { + type uint16; + description + "L2 switched MTU"; + } + } + + grouping EFP-TAG-LOCAL-TRAFFIC-STACK { + description + "EFP TAG LOCAL TRAFFIC STACK"; + list local-traffic-tag { + description + "VLAN tags for locally-sourced traffic"; + uses EFP-VLAN-TAG; + } + } + + grouping EFP-VLAN-TAG { + description + "EFP VLAN TAG"; + leaf ethertype { + type Efp-tag-etype; + description + "Ethertype of tag"; + } + leaf vlan-id { + type Vlan-tag-value; + description + "VLAN Id"; + } + } + + grouping EFP-RANGE-TYPE { + description + "EFP RANGE TYPE"; + leaf vlan-id-low { + type Vlan-tag-value; + description + "VLAN ID Low"; + } + leaf vlan-id-high { + type Vlan-tag-value; + description + "VLAN ID High"; + } + } + + grouping EFP-TAG-MATCH { + description + "EFP TAG MATCH"; + leaf ethertype { + type Efp-tag-etype; + description + "Ethertype of tag to match"; + } + leaf priority { + type Efp-tag-priority; + description + "Priority to match"; + } + leaf number-of-ranges { + type uint16; + description + "Number of vlan ranges to match"; + } + list vlan-range { + description + "VLAN Ids to match"; + uses EFP-RANGE-TYPE; + } + } + + grouping EFP-DESCRIPTION { + description + "EFP DESCRIPTION"; + container local-traffic-stack { + description + "VLAN tags for locally-sourced traffic"; + uses EFP-TAG-LOCAL-TRAFFIC-STACK; + } + leaf payload-ethertype { + type Efp-payload-etype; + description + "Payload Ethertype to match"; + } + leaf tags-popped { + type uint16; + description + "Number of tags popped on ingress"; + } + leaf is-exact-match { + type boolean; + description + "Whether the packet must match the encapsulation + exactly, with no further inner tags"; + } + leaf is-native-vlan { + type boolean; + description + "Whether this represents the native VLAN on the + port"; + } + leaf is-native-preserving { + type boolean; + description + "Whether the native VLAN is customer-tag + preserving"; + } + leaf source-mac-match { + type Mac-address; + description + "The source MAC address to match on ingress"; + } + leaf destination-mac-match { + type Mac-address; + description + "The destination MAC address to match on ingress"; + } + list tags-to-match { + description + "Tags to match on ingress packets"; + uses EFP-TAG-MATCH; + } + list pushe { + description + "VLAN tags pushed on egress"; + uses EFP-VLAN-TAG; + } + } + + grouping VLAN-SWITCHED-INFO { + description + "VLAN-Switched information"; + container trunk-vlan-ranges { + description + "VLAN-Switched Trunk VLAN ranges"; + uses EFP-DESCRIPTION; + } + leaf mode { + type Vlan-switched-mode; + description + "VLAN-Switched mode"; + } + leaf access-vlan { + type Vlan-tag-value; + description + "VLAN-Switched Access VLAN"; + } + } + + grouping VLAN-TRUNK-L3-SUB-INTFS { + description + "Layer 3 Terminated Subinterfaces"; + container state-counters { + description + "Numbers of subinterfaces up, down or + administratively shut down"; + uses VLAN-TRUNK-SUB-INTF-STATE-COUNTERS; + } + leaf total-count { + type uint32; + description + "Total number of Layer 3 subinterfaces configured"; + } + leaf dot1q-count { + type uint32; + description + "Number of single tagged subinterfaces"; + } + leaf qin-q-count { + type uint32; + description + "Number of double tagged subinterfaces"; + } + leaf untagged-count { + type uint32; + description + "Number of subinterfaces without VLAN tag + configuration"; + } + leaf native-vlan { + type Vlan-tag-value; + description + "Native VLAN ID configured on trunk"; + } + } + + grouping VLAN-TRUNK-SUB-INTF-STATE-COUNTERS { + description + "Subinterface counters"; + leaf up { + type uint32; + description + "Number of subinterfaces which are up"; + } + leaf down { + type uint32; + description + "Number of subinterfaces which are down"; + } + leaf admin-down { + type uint32; + description + "Number of subinterfaces which are + administrativelyshutdown"; + } + } + + grouping VLAN-TRUNK-L2-SUB-INTFS { + description + "Layer 2 Transport Subinterfaces"; + container state-counters { + description + "Numbers of subinterfaces up, down or + administratively shut down"; + uses VLAN-TRUNK-SUB-INTF-STATE-COUNTERS; + } + leaf total-count { + type uint32; + description + "Total number of Layer 2 subinterfaces configured"; + } + leaf dot1q-count { + type uint32; + description + "Number of single tagged subinterfaces"; + } + leaf qin-q-count { + type uint32; + description + "Number of double tagged subinterfaces with + explicit inner tag"; + } + leaf qin-any-count { + type uint32; + description + "Number of double tagged subinterfaces with + wildcarded inner tag"; + } + leaf untagged-count { + type uint32; + description + "Number of subinterfaces without VLAN tag + configuration"; + } + } + + grouping VLAN-TRUNK { + description + "VLAN trunk interface information"; + container layer2-sub-interfaces { + description + "Layer 2 Transport Subinterfaces"; + uses VLAN-TRUNK-L2-SUB-INTFS; + } + container layer3-sub-interfaces { + description + "Layer 3 Terminated Subinterfaces"; + uses VLAN-TRUNK-L3-SUB-INTFS; + } + container vlan-switched { + description + "VLAN-Switched information"; + uses VLAN-SWITCHED-INFO; + } + leaf interface-xr { + type xr:Interface-name; + description + "Interface name"; + } + leaf state { + type Im-state-enum; + description + "Interface state"; + } + leaf mtu { + type uint16; + description + "L2 MTU"; + } + leaf qinq-outer-ether-type { + type Vlan-qinq-outer-etype; + description + "QinQ Outer Tag Ether Type"; + } + leaf dot1ad-count { + type uint32; + description + "Number of subinterfaces with 802.1ad outer tag"; + } + leaf untagged-interface { + type xr:Interface-name; + description + "Interface/Sub-interface handling untagged frames"; + } + leaf mac-filtering { + type Eth-filtering; + description + "IEEE 802.1Q/802.1ad multicast MAC address + filtering"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub3.yang new file mode 100644 index 000000000..e9bd527f8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper-sub3.yang @@ -0,0 +1,127 @@ +submodule Cisco-IOS-XR-l2-eth-infra-oper-sub3 { + belongs-to Cisco-IOS-XR-l2-eth-infra-oper { + prefix Cisco-IOS-XR-l2-eth-infra-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2-eth-infra package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-11 { + description + "Added leaf number-of-ranges indicating count of vlan-ranges in tags-to-match. + 2021-07-07 + Added hardware timestamp support for MAC accounting stats."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MAC-ACC-STATS { + description + "Per MAC address stats information"; + leaf mac-address { + type yang:mac-address; + description + "48bit MAC address"; + } + leaf packets { + type uint64; + description + "Number of packets counted"; + } + leaf bytes { + type uint64; + units "byte"; + description + "Number of bytes counted"; + } + leaf hardware-timestamp { + type uint64; + units "millisecond"; + description + "Time when MAC counters were last read from + hardware (in msecs)"; + } + } + + grouping MAC-ACC-INTF-INFO { + description + "Per interface MAC accounting information"; + leaf is-ingress-enabled { + type boolean; + description + "MAC accounting on on ingress"; + } + leaf is-egress-enabled { + type boolean; + description + "MAC accounting on on egress"; + } + leaf number-available-ingress { + type uint32; + description + "MAC accounting entries available on ingress"; + } + leaf number-available-egress { + type uint32; + description + "MAC accounting entries available on egress"; + } + leaf number-available-on-node { + type uint32; + description + "MAC accountng entries available across the node"; + } + } + + grouping MAC-ACC-INTF { + description + "All MAC accounting information and statistics for + an interface"; + container state { + description + "MAC accounting state for the interface"; + uses MAC-ACC-INTF-INFO; + } + list ingress-statistic { + description + "Ingress MAC accounting statistics"; + uses MAC-ACC-STATS; + } + list egress-statistic { + description + "Egress MAC accounting statistics"; + uses MAC-ACC-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper.yang new file mode 100644 index 000000000..8019e4411 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-eth-infra-oper.yang @@ -0,0 +1,204 @@ +module Cisco-IOS-XR-l2-eth-infra-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2-eth-infra-oper"; + prefix l2-eth-infra-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-l2-eth-infra-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-l2-eth-infra-oper-sub3 { + revision-date 2022-03-11; + } + include Cisco-IOS-XR-l2-eth-infra-oper-sub2 { + revision-date 2022-03-11; + } + include Cisco-IOS-XR-l2-eth-infra-oper-sub1 { + revision-date 2022-03-11; + } + + 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 l2-eth-infra package operational data. + + This module contains definitions + for the following management objects: + mac-accounting: MAC accounting operational data + vlan: VLAN operational data + ethernet-encapsulation: Ethernet encapsulation operational + data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-11 { + description + "Added leaf number-of-ranges indicating count of vlan-ranges in tags-to-match. + 2021-07-07 + Added hardware timestamp support for MAC accounting stats."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mac-accounting { + config false; + description + "MAC accounting operational data"; + container interfaces { + description + "MAC accounting interface table in MIB + lexicographic order"; + list interface { + key "interface-name"; + description + "Operational data and statistics for an + interface configured with MAC accounting + enabled"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses MAC-ACC-INTF; + } + } + } + container vlan { + config false; + description + "VLAN operational data"; + container nodes { + description + "Per node VLAN operational data"; + list node { + key "node-id"; + description + "The VLAN operational data for a particular node"; + container trunks { + description + "VLAN trunk table (specific to this node)"; + list trunk { + key "interface"; + description + "Operational data for trunk interfaces + configured with VLANs"; + leaf interface { + type xr:Interface-name; + description + "The interface name"; + } + uses VLAN-TRUNK; + } + } + container interfaces { + description + "VLAN interface table (specific to this node)"; + list interface { + key "interface"; + description + "Operational data for a sub-interface + configured with VLANs"; + leaf interface { + type xr:Interface-name; + description + "The interface name"; + } + uses VLAN-INTF; + } + } + container tag-allocations { + description + "VLAN tag allocation table (specific to this + node)"; + list tag-allocation { + description + "Operational data for a sub-interface + configured with VLANs"; + leaf interface { + type xr:Interface-name; + description + "The interface name"; + } + leaf first-tag { + type dt1:Vlan-tag; + description + "The first (outermost) tag"; + } + leaf second-tag { + type dt1:Vlan-tag-or-any; + description + "The second tag"; + } + uses VLAN-INTF; + } + } + leaf node-id { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } + container ethernet-encapsulation { + config false; + description + "Ethernet encapsulation operational data"; + container nodes { + description + "Per node Ethernet encapsulation operational data"; + list node { + key "node-name"; + description + "The Ethernet encaps operational data for a + particular node"; + container unicast-mac-filters { + description + "Unicast MAC filter table (specific to this + node)"; + list unicast-mac-filter { + key "interface-name"; + description + "Operational data for interface with MAC + filters configured"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses ETHER-CAPS-UCAST-FILTER; + } + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-cfg.yang new file mode 100644 index 000000000..940eb86c0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-cfg.yang @@ -0,0 +1,742 @@ +module Cisco-IOS-XR-l2-snoop-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2-snoop-cfg"; + prefix l2-snoop-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 l2-snoop package configuration. + + This module contains definitions + for the following management objects: + igmp-snooping: IGMP snooping configuration + mld-snooping: MLD snooping configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-21 { + description + "Added the Snooping cfg yang model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container igmp-snooping { + description + "IGMP snooping configuration"; + container profiles { + description + "IGMP snooping profile table"; + list profile { + key "profile-name"; + description + "IGMP snoooping profile"; + container static-groups { + description + "Configure a static group ip address"; + list static-group { + key "group-address"; + description + "Enter a valid multicast address"; + container sources { + description + " static group"; + list source { + key "source-address"; + description + "Unicast IP source address"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Unicast IP source adsress"; + } + } + } + leaf star-g { + type empty; + description + "<*,G> static group"; + } + leaf group-address { + type inet:ipv4-address-no-zone; + description + "Group multicast address"; + } + } + } + container group-limit { + presence "Indicates a group-limit node is configured."; + description + "IGMP group limit"; + leaf count { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Enter group limit"; + } + leaf threshold { + type uint32 { + range "0..65535"; + } + description + "Enter group threshold limit"; + } + } + leaf startup-query-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "IGMP startup query max-response-time"; + } + leaf immediate-leave { + type empty; + description + "IGMP immediate-leave"; + } + leaf internal-querier-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "IGMP internal-querier max response time"; + } + leaf internal-querier-tcn-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "60"; + description + "IGMP internal-querier tcn query interval"; + } + leaf startup-query-count { + type uint32 { + range "0..7"; + } + default "2"; + description + "Enter starup query count"; + } + leaf router-alert-check-disable { + type empty; + description + "IGMP router alert check disable"; + } + leaf querier-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "60"; + description + "Enter query interval in seconds"; + } + leaf tcn-flood-query-count { + type uint32 { + range "1..10"; + } + default "2"; + description + "Enter IGMP tcn flood query count"; + } + leaf minimum-version { + type uint32 { + range "2..3"; + } + default "2"; + description + "Enter minimum version"; + } + leaf system-ip-address { + type inet:ipv4-address-no-zone; + description + "System ip address for internal-querier or tcn + query solicit"; + } + leaf tcn-query-solicit { + type empty; + description + "IGMP tcn query solicit"; + } + leaf internal-querier-tcn-query-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "IGMP internal-querier tcn query + max-response-time"; + } + leaf default-profile { + type empty; + description + "Configure this profile as default-profile"; + } + leaf ttl-check-disable { + type empty; + description + "IGMP ttl check disable"; + } + leaf access-group { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter access-list name"; + } + leaf startup-query-port-up-disable { + type empty; + description + "Disable IGMP startup query on port-up"; + } + leaf unsolicited-report-interval { + type uint32 { + range "100..5000"; + } + units "millisecond"; + default "1000"; + description + "Enter unsolicated-report-interval in + milliseconds"; + } + leaf report-suppression-disable { + type empty; + description + "IGMP report suppression disable"; + } + leaf startup-query-tcn { + type empty; + description + "IGMP startup query on topology-change"; + } + leaf mrouter { + type empty; + description + "IGMP static mrouter"; + } + leaf iccp-group-report-standby-state-disable { + type empty; + description + "Disable current-state reports of standby port + state"; + } + leaf mrouter-forwarding-disable { + type empty; + description + "IGMP mrouter forwarding disable"; + } + leaf internal-querier-version { + type uint32 { + range "2..3"; + } + default "3"; + description + "Enter internal querier version"; + } + leaf tcn-flood-disable { + type empty; + description + "IGMP tcn flood disable"; + } + leaf last-member-query-interval { + type uint32 { + range "100..5000"; + } + units "millisecond"; + default "1000"; + description + "Enter last member query interval in + milliseconds"; + } + leaf startup-query-tcn-sync { + type empty; + description + "IGMP startup query TCN sync"; + } + leaf startup-query-tcn-always { + type empty; + description + "IGMP startup query TCN always"; + } + leaf internal-querier { + type empty; + description + "IGMP internal-querier"; + } + leaf startup-query-iccp-group-port-active { + type empty; + description + "IGMP startup query on interchassis-group + port-active"; + } + leaf router-guard { + type empty; + description + "IGMP router-guard"; + } + leaf internal-querier-robustness-variable { + type uint32 { + range "1..7"; + } + default "2"; + description + "Enter robustness-variable"; + } + leaf startup-query-process-start { + type empty; + description + "IGMP startup query on process start"; + } + leaf startup-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "60"; + description + "Enter query interval in seconds"; + } + leaf startup-query-process-start-sync { + type empty; + description + "IGMP startup query process start sync"; + } + leaf internal-querier-timer-expiry { + type uint32 { + range "60..300"; + } + units "second"; + default "255"; + description + "IGMP internal-querier timer expiry"; + } + leaf internal-querier-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "60"; + description + "IGMP internal-querier query interval"; + } + leaf group-policy { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Enter route policy name"; + } + leaf internal-querier-tcn-query-count { + type uint32 { + range "0..7"; + } + default "2"; + description + "IGMP internal-querier tcn query count"; + } + leaf querier-robustness-variable { + type uint32 { + range "1..7"; + } + default "2"; + description + "Enter robustness-variable"; + } + leaf last-member-query-count { + type uint32 { + range "1..7"; + } + default "2"; + description + "Enter last member query count"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Profile Name"; + } + } + } + } + container mld-snooping { + description + "MLD snooping configuration"; + container profiles { + description + "MLD snooping profile table"; + list profile { + key "profile-name"; + description + "MLD snoooping profile"; + container static-groups { + description + "Configure a static group ip address"; + list static-group { + key "group-address"; + description + "Enter a valid multicast address"; + container sgs { + description + " static group"; + list sg { + key "source-address"; + description + "Unicast IP source address"; + leaf source-address { + type inet:ipv6-address-no-zone; + description + "Unicast IP source address"; + } + } + } + leaf star-g { + type empty; + description + "<*,G> static group"; + } + leaf group-address { + type inet:ipv6-address-no-zone; + description + "Group multicast address"; + } + } + } + container group-limit { + presence "Indicates a group-limit node is configured."; + description + "MLD group limit"; + leaf count { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Enter group limit"; + } + leaf threshold { + type uint32 { + range "0..65535"; + } + description + "Enter group threshold limit"; + } + } + leaf system-ip-address { + type inet:ipv6-address-no-zone; + description + "System ip address for internal-querier or tcn + query solicit"; + } + leaf access-group { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Enter access-list name"; + } + leaf last-member-query-interval { + type uint32 { + range "100..5000"; + } + units "millisecond"; + default "1000"; + description + "Enter last member query interval in + milliseconds"; + } + leaf tcn-flood-disable { + type empty; + description + "MLD tcn flood disable"; + } + leaf mrouter { + type empty; + description + "MLD static mrouter"; + } + leaf mrouter-forwarding-disable { + type empty; + description + "MLD mrouter forwarding disable"; + } + leaf startup-query-process-start-sync { + type empty; + description + "MLD startup query process start sync"; + } + leaf tcn-query-solicit { + type empty; + description + "MLD tcn query solicit"; + } + leaf internal-querier-tcn-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "125"; + description + "MLD internal-querier tcn query interval"; + } + leaf startup-query-count { + type uint32 { + range "0..7"; + } + default "2"; + description + "Enter starup query count"; + } + leaf iccp-group-report-standby-state-disable { + type empty; + description + "Disable current-state reports of standby port + state"; + } + leaf last-member-query-count { + type uint32 { + range "1..7"; + } + default "2"; + description + "Enter last member query count"; + } + leaf startup-query-process-start { + type empty; + description + "MLD startup query on process start"; + } + leaf internal-querier-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "125"; + description + "MLD internal-querier query interval"; + } + leaf report-suppression-disable { + type empty; + description + "MLD report suppression disable"; + } + leaf router-alert-check-disable { + type empty; + description + "MLD router alert check disable"; + } + leaf startup-query-port-up-disable { + type empty; + description + "Disable MLD startup query on port-up"; + } + leaf internal-querier-version { + type uint32 { + range "1..2"; + } + default "2"; + description + "Enter internal querier version"; + } + leaf startup-query-tcn-always { + type empty; + description + "MLD startup query TCN always"; + } + leaf immediate-leave { + type empty; + description + "MLD immediate-leave"; + } + leaf tcn-flood-query-count { + type uint32 { + range "1..10"; + } + default "2"; + description + "Enter MLD tcn flood query count"; + } + leaf startup-query-iccp-group-port-active { + type empty; + description + "MLD startup query on interchassis-group + port-active"; + } + leaf router-guard { + type empty; + description + "MLD router-guard"; + } + leaf internal-querier-robustness-variable { + type uint32 { + range "1..7"; + } + default "2"; + description + "Enter robustness-variable"; + } + leaf internal-querier-timer-expiry { + type uint32 { + range "60..300"; + } + units "second"; + default "255"; + description + "MLD internal-querier timer expiry"; + } + leaf ttl-check-disable { + type empty; + description + "MLD ttl check disable"; + } + leaf startup-query-tcn { + type empty; + description + "MLD startup query on topology-change"; + } + leaf startup-query-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "MLD startup query max-response-time"; + } + leaf internal-querier-tcn-query-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "MLD internal-querier tcn query + max-response-time"; + } + leaf internal-querier { + type empty; + description + "MLD internal-querier"; + } + leaf internal-querier-max-response-time { + type uint32 { + range "1..25"; + } + units "second"; + default "10"; + description + "MLD internal-querier max response time"; + } + leaf unsolicited-report-interval { + type uint32 { + range "100..5000"; + } + units "millisecond"; + default "1000"; + description + "Enter unsolicated-report-interval in + milliseconds"; + } + leaf startup-query-tcn-sync { + type empty; + description + "MLD startup query TCN sync"; + } + leaf group-policy { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Enter route policy name"; + } + leaf internal-querier-tcn-query-count { + type uint32 { + range "0..7"; + } + default "2"; + description + "MLD internal-querier tcn query count"; + } + leaf querier-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "125"; + description + "Enter query interval in seconds"; + } + leaf minimum-version { + type uint32 { + range "1..2"; + } + default "1"; + description + "Enter minimum version"; + } + leaf startup-query-interval { + type uint32 { + range "1..18000"; + } + units "second"; + default "125"; + description + "Enter query interval in seconds"; + } + leaf querier-robustness-variable { + type uint32 { + range "1..7"; + } + default "2"; + description + "Enter robustness-variable"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Profile Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper-sub1.yang new file mode 100644 index 000000000..9ee8860b3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper-sub1.yang @@ -0,0 +1,4612 @@ +submodule Cisco-IOS-XR-l2-snoop-oper-sub1 { + belongs-to Cisco-IOS-XR-l2-snoop-oper { + prefix Cisco-IOS-XR-l2-snoop-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2-snoop package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-28 { + description + "backward compatible edit, in interface-name. + 2022-03-30 + backward compatible addition, in leaf l2fib-replay-time was added"; + semver:module-version "1.1.0"; + } + revision 2021-06-21 { + description + "Added the Snooping oper yang model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmpsn-iccp-app-rg-state { + type enumeration { + enum "initializing" { + value 0; + description + "Init"; + } + enum "connecting" { + value 1; + description + "Connecting"; + } + enum "connected-no-peers" { + value 2; + description + "Connected No Peers"; + } + enum "connect-peer-present" { + value 3; + description + "Connect Peer Present"; + } + enum "iccp-down" { + value 4; + description + "ICCP Down"; + } + } + description + "igmp snooping Redundancy Application State"; + } + + typedef Igmpsn-iccp-app-rg-port-state { + type enumeration { + enum "interface-initialized" { + value 0; + description + "Init"; + } + enum "active-no-peers" { + value 1; + description + "Active No Peers"; + } + enum "active-no-peers-congestion" { + value 2; + description + "Active No Peers Congestion"; + } + enum "standby-no-peers" { + value 3; + description + "Standby No Peers"; + } + enum "standby-no-peers-congestion" { + value 4; + description + "Standby No Peers Congestion"; + } + enum "down-no-peers" { + value 5; + description + "Down No Peers"; + } + enum "down-no-peers-congestion" { + value 6; + description + "Down No Peers Congestion"; + } + enum "standby-peers" { + value 7; + description + "Standby Peers"; + } + enum "standby-peers-congestion" { + value 8; + description + "Standby Peers Congestion"; + } + enum "standby-peers-sync-request" { + value 9; + description + "Standby Peers Sync Request"; + } + enum "standby-peers-sync-request-congestion" { + value 10; + description + "Standby Peers Sync Request Congestion"; + } + enum "standby-peers-sync-req-wait" { + value 11; + description + "Standby Peers Sync Request Wait"; + } + enum "active-peers" { + value 12; + description + "Active Peers"; + } + enum "active-peers-congestion" { + value 13; + description + "Active Peers Congestion"; + } + enum "active-peers-sync" { + value 14; + description + "Active Peers Sync"; + } + enum "active-peers-sync-congestion" { + value 15; + description + "Active Peers Sync Congestion"; + } + enum "active-peers-sync-wait" { + value 16; + description + "Active Peers Sync Wait"; + } + enum "down-peers" { + value 17; + description + "Down Peers"; + } + enum "down-peers-congestion" { + value 18; + description + "Down Peers Congestion"; + } + enum "standby-iccp-down" { + value 19; + description + "Standby ICCP Down"; + } + enum "active-iccp-down" { + value 20; + description + "Active ICCP Down"; + } + enum "down-iccp-down" { + value 21; + description + "Down ICCP Down"; + } + } + description + "ICCP Redundancy Group Port State"; + } + + typedef Igmpsn-bag-iccp-app-redundancy-state { + type enumeration { + enum "redundancy-state-down" { + value 0; + description + "Redundancy State Down"; + } + enum "redundancy-state-standby" { + value 1; + description + "Redundancy State Standby"; + } + enum "redundancy-state-active" { + value 2; + description + "Redundancy State Active"; + } + } + description + "ICCP Application Redundancy State"; + } + + typedef Set-bool { + type enumeration { + enum "0" { + value 0; + description + "False"; + } + enum "1" { + value 1; + description + "True"; + } + } + description + "Set bool"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Igmpsn-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + grouping IGMPSN-EDM-PORT-GROUP-SOURCE-BAG { + description + "IGMPSN EDM PORT GROUP SOURCE BAG"; + container source { + description + "Source"; + uses IGMPSN-ADDRTYPE; + } + container expires { + description + "Source expires in seconds"; + uses RUNNING-TIMER; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf static-source { + type boolean; + description + "Static source"; + } + leaf dynamic-source { + type boolean; + description + "Dynamic source"; + } + leaf evpn-source { + type boolean; + description + "EVPN source"; + } + leaf admitted-weight { + type uint32; + description + "Admitted weight"; + } + leaf nv-offload { + type boolean; + description + "Offload enabled"; + } + leaf cli-nv-offload { + type boolean; + description + "CLI Offload disabled"; + } + leaf shg-nv-offload { + type boolean; + description + "SHG Offload disabled"; + } + leaf mrouter-nv-offload { + type boolean; + description + "MRouter Offload disabled"; + } + leaf topo-not-supported-nv-offload { + type boolean; + description + "Topo not supported Offload disabled"; + } + list igmpsn-edm-moi-id { + description + "EVPN moi ID list"; + uses IGMPSN-EDM-MOI-ID-BAG; + } + } + + grouping IGMPSN-EDM-PORT-GROUP-BAG { + description + "IGMPSN EDM PORT GROUP BAG"; + container group-address-xr { + description + "Group address"; + uses IGMPSN-ADDRTYPE; + } + container expires { + description + "Group expires in seconds"; + uses RUNNING-TIMER; + } + container v2-host-present { + description + "IGMP V2/MLD V1 host present timer"; + uses RUNNING-TIMER; + } + leaf bridge-domain-name { + type string { + length "0..65"; + } + description + "Bridge domain name"; + } + leaf interface-name { + type string { + length "0..321"; + } + description + "Port name"; + } + leaf pseudowire { + type boolean; + description + "Pseudowire"; + } + leaf version { + type uint8; + description + "Version"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf static-group { + type boolean; + description + "Static group"; + } + leaf dynamic-group { + type boolean; + description + "Dynamic group"; + } + leaf evpn-group { + type boolean; + description + "BGP learnt group"; + } + leaf port-mode-is-exclude { + type boolean; + description + "Port mode is exclude"; + } + leaf group-mode-is-exclude { + type boolean; + description + "Group mode is exclude"; + } + leaf source-count { + type int32; + description + "Source count"; + } + leaf group-policy-applied { + type boolean; + description + "Group policy applied"; + } + leaf admitted-weight { + type uint32; + description + "Admitted weight"; + } + leaf nv-offload { + type boolean; + description + "Offload enabled"; + } + leaf cli-nv-offload { + type boolean; + description + "CLI Offload disabled"; + } + leaf shg-nv-offload { + type boolean; + description + "SHG Offload disabled"; + } + leaf mrouter-nv-offload { + type boolean; + description + "MRouter Offload disabled"; + } + leaf topo-not-supported-nv-offload { + type boolean; + description + "Topo not supported Offload disabled"; + } + leaf group-id { + type uint32; + description + "ICCP Group ID"; + } + leaf iccp-port-redundancy-state { + type Igmpsn-bag-iccp-app-redundancy-state; + description + "ICCP Group port redundancy state"; + } + list port-group-source { + description + "Port group source list"; + uses IGMPSN-EDM-PORT-GROUP-SOURCE-BAG; + } + list igmpsn-edm-moi-id { + description + "EVPN moi ID list"; + uses IGMPSN-EDM-MOI-ID-BAG; + } + } + + grouping IGMPSN-EDM-SUMMARY-BAG { + description + "IGMP/MLD snooping summary info"; + container packet-statistics { + description + "Summary packet statistics"; + uses IGMPSN-PKT-STATS-BAG; + } + container evpn-statistics { + description + "EVPN statistics"; + uses IGMPSN-EVPN-STATS-BAG; + } + container common-statistics { + description + "Summary common statistics"; + uses IGMPSN-COMMON-STATS-BAG; + } + container iccp-statistics { + description + "Summary ICCP statistics"; + uses IGMPSN-ICCP-STATS-BAG; + } + container iccp-group-port-statistics { + description + "Summary ICCP Group Port statistics"; + uses IGMPSN-ICCP-GROUP-PORT-STATS-BAG; + } + container iccp-traffic-statistics { + description + "Summary ICCP traffic statistics"; + uses IGMPSN-ICCP-TRAFFIC-STATS-BAG; + } + container iccp-app-iccp-state { + description + "Summary ICCP App ICCP state"; + uses ICCP-APP-ICCP-STATE-BAG; + } + container iccp-app-statistics { + description + "Summary ICCP App ICCP statistics"; + uses ICCP-APP-ICCP-STATS-BAG; + } + container iccp-app-iccp-group-statistics { + description + "Summary ICCP App ICCP Group statistics"; + uses ICCP-APP-ICCP-GROUP-STATS-BAG; + } + container iccp-app-ig-port-statistics { + description + "Summary ICCP App ICCP Group Port statistics"; + uses ICCP-APP-IG-PORT-STATS-BAG; + } + leaf number-of-bridge-domains { + type uint32; + description + "Number of bridge domains"; + } + leaf number-of-igmp-snooping-bridge-domain { + type uint32; + description + "Number of bridge domains with IGMP/MLD snooping + enabled"; + } + leaf number-of-ports { + type uint32; + description + "Number of ports"; + } + leaf number-of-igmp-snooping-ports { + type uint32; + description + "Number of ports with IGMP/MLD snooping enabled"; + } + leaf number-of-mrouters { + type uint32; + description + "Number of mrouters"; + } + leaf number-of-stp-ports { + type uint32; + description + "Number of STP ports"; + } + leaf number-of-ig-ports { + type uint32; + description + "Number of ICCP Group ports"; + } + leaf number-of-groups { + type uint32; + description + "Number of groups"; + } + leaf number-of-group-o-ports { + type uint32; + description + "Number of group o-ports"; + } + leaf number-of-group-sources { + type uint32; + description + "Number of group sources"; + } + leaf number-of-group-source-statics { + type uint32; + description + "Number of static group sources"; + } + leaf number-of-group-source-includes { + type uint32; + description + "Number of include group sources"; + } + leaf number-of-group-source-excludes { + type uint32; + description + "Number of exclude group sources"; + } + leaf number-of-group-source-include-ports { + type uint32; + description + "Number of group source include ports"; + } + leaf number-of-group-source-exclude-ports { + type uint32; + description + "Number of group source exclude ports"; + } + leaf number-plfm-oor-cnt { + type uint32; + description + "Number of platform OOR clear notifications + received"; + } + leaf star-star-oor-fail-cnt { + type uint32; + description + "Star Star Mroute OOR Fail Count"; + } + leaf star-goor-fail-cnt { + type uint32; + description + "StarG Mroute OOR Fail Count"; + } + leaf sgoor-fail-cnt { + type uint32; + description + "SG Mroute OOR Fail Count"; + } + leaf l2fib-elapsed-time { + type uint32; + description + "L2FIB elapsed time"; + } + leaf bdxc-created-notifications { + type uint32; + description + "BDXC created notifications"; + } + leaf bdxc-deleted-notifications { + type uint32; + description + "BDXC deleted notifications"; + } + leaf bdxcefp-added-notifications { + type uint32; + description + "BDXC EFP added notifications"; + } + leaf bdxcefp-removed-notifications { + type uint32; + description + "BDXC EFP removed notifications"; + } + leaf bdxcefpstp-change-notifications { + type uint32; + description + "BDXC EFP STP change notifications"; + } + leaf bdxc-topology-change-notifications { + type uint32; + description + "BDXC topology change notifications"; + } + leaf bridge-domain-added { + type uint32; + description + "Bridge domain added"; + } + leaf bridge-domain-deleted { + type uint32; + description + "Bridge domain deleted"; + } + leaf bridge-domain-profile-changed { + type uint32; + description + "Bridge domain profile changed"; + } + leaf bridge-domain-profile-added { + type uint32; + description + "Bridge domain profile added"; + } + leaf bridge-domain-profile-removed { + type uint32; + description + "Bridge domain profile removed"; + } + leaf bridge-domain-profile-update-failed { + type uint32; + description + "Bridge domina profile update failed"; + } + leaf bridge-domain-not-found { + type uint32; + description + "Bridge domain not found"; + } + leaf bridge-domain-port-not-found { + type uint32; + description + "Bridge domain port not found"; + } + leaf efp-added { + type uint32; + description + "EFP added"; + } + leaf efp-deleted { + type uint32; + description + "EFP deleted"; + } + leaf efp-profile-changed { + type uint32; + description + "EFP profile changed"; + } + leaf efp-profile-unchanged { + type uint32; + description + "EFP profile unchanged"; + } + leaf efp-profile-added { + type uint32; + description + "EFP profile added"; + } + leaf efp-profile-removed { + type uint32; + description + "EFP profile removed"; + } + leaf efp-profile-update-failed { + type uint32; + description + "EFP profile update failed"; + } + leaf efp-oper-state-changed-to-up { + type uint32; + description + "EFP oper state changed to up"; + } + leaf efp-oper-state-changed-to-down { + type uint32; + description + "EFP oper state changed to down"; + } + leaf efpstp-state-changed-to-forwarding { + type uint32; + description + "EFP STP state changed to forwarding"; + } + leaf efpstp-state-changed-to-blocked { + type uint32; + description + "EFP STP state changed to blocked"; + } + leaf efpstp-state-changed-to-not-participating { + type uint32; + description + "EFP STP state changed to not participating"; + } + leaf efp-bridge-domain-mismatch { + type uint32; + description + "EFP bridge domain mismatch"; + } + leaf efp-interface-handle-mismatch { + type uint32; + description + "EFP interface handle mismatch"; + } + leaf efp-interface-name-mismatch { + type uint32; + description + "EFP interface name mismatch"; + } + leaf l2fib-no-memory { + type uint32; + description + "L2FIB no memory"; + } + leaf bridge-domain-create-failed { + type uint32; + description + "Bridge domain create failed"; + } + leaf bridge-domain-port-create-failed { + type uint32; + description + "Bridge domain create failed"; + } + leaf bridge-domain-port-state-change-failed { + type uint32; + description + "Bridge domain port state change failed"; + } + leaf bridge-domain-batch-start-called { + type uint32; + description + "Bridge domain start called"; + } + leaf bridge-domain-batch-end-called { + type uint32; + description + "Bridge domain batch end called"; + } + leaf bridge-domain-mark-called { + type uint32; + description + "Bridge domain mark called"; + } + leaf bridge-domain-sweep-called { + type uint32; + description + "Bridge domain sweep called"; + } + leaf efp-batch-start-called { + type uint32; + description + "EFP batch start called"; + } + leaf efp-batch-end-called { + type uint32; + description + "EFP batch end called"; + } + leaf efp-mark-called { + type uint32; + description + "EFP mark called"; + } + leaf efp-sweep-called { + type uint32; + description + "EFP sweep called"; + } + leaf l2fib-replay-called { + type uint32; + description + "L2FIB replay called"; + } + leaf mroute-messages-sent { + type uint32; + description + "Mroute messages sent"; + } + leaf config-messages-sent { + type uint32; + description + "Configure messages sent"; + } + leaf bdxc-send-called { + type uint32; + description + "BDXC send called"; + } + leaf bdxc-send-failures { + type uint32; + description + "BDXC send failures"; + } + leaf mgid-allocations { + type uint32; + description + "MGID allocations"; + } + leaf mgid-free { + type uint32; + description + "MGID frees"; + } + leaf mgid-allocation-failures { + type uint32; + description + "MGID allocation failures"; + } + leaf impossible-errors { + type uint32; + description + "Impossible errors"; + } + leaf bdxc-congestion { + type boolean; + description + "BDXC congestion"; + } + leaf bdxc-congestion-count { + type uint32; + description + "BDXC congestion count"; + } + leaf bdxc-congestion-clear-count { + type uint32; + description + "BDXC congestion clear count"; + } + leaf bdxc-congestion-notify-count { + type uint32; + description + "BDXC congestion notify count"; + } + leaf last-bdxc-congestion-time { + type uint32; + description + "Last BDXC congestion time"; + } + leaf l2fib-replay-time { + type uint32; + description + "L2FIB Replay time"; + } + leaf net-elapsed-time { + type uint32; + description + "Net elapsed time"; + } + leaf connection-open-failed { + type uint32; + description + "Connection open failed"; + } + leaf socket-event { + type uint32; + description + "Socket event"; + } + leaf packet-server-code-abort { + type uint32; + description + "Packet server code abort"; + } + leaf connection-open-event { + type uint32; + description + "Connection open event"; + } + leaf connection-close-event { + type uint32; + description + "Connection close event"; + } + leaf connection-unknown-event { + type uint32; + description + "Connection unknown event"; + } + leaf connection-setretry-failed { + type uint32; + description + "Connection setretry failed"; + } + leaf connection-get-fd-failed { + type uint32; + description + "Connection get fd failed"; + } + leaf packet-event { + type uint32; + description + "Packet event"; + } + leaf packet-event-disconnect { + type uint32; + description + "Packet event disconnect"; + } + leaf packet-event-empty { + type uint32; + description + "Packet event empty"; + } + leaf packet-event-empty-watermark { + type uint32; + description + "Packet event empty watermark"; + } + leaf packet-event-receive-error { + type uint32; + description + "Packet event rx error"; + } + leaf packet-event-receive-error-evm-retry { + type uint32; + description + "Packet event rx error evm retry"; + } + leaf packet-event-receive-chunk-pulse { + type uint32; + description + "Packet event rx chunk pulse"; + } + leaf receive-packet-null { + type uint32; + description + "Receive packet null"; + } + leaf receive-pakman-error { + type uint32; + description + "Receive pakman error"; + } + leaf receive-packet-free-error { + type uint32; + description + "Receive packet free error"; + } + leaf receive-bridge-domain-port-not-found { + type uint32; + description + "Receive bridge domain port not found"; + } + leaf receive-pim-packet-not-hello { + type uint32; + description + "Receive PIM packet not hello"; + } + leaf receive-igmp-packet-attempt { + type uint32; + description + "Receive IGMP/MLD packet attempt"; + } + leaf receive-igmp-packet-success { + type uint32; + description + "Receive IGMP/MLD packet success"; + } + leaf receive-pim-packet-attempt { + type uint32; + description + "Receive PIM packet attempt"; + } + leaf receive-pim-packet-success { + type uint32; + description + "Receive PIM packet success"; + } + leaf transmit-packet-bad-socket { + type uint32; + description + "Transmit packet bad socket"; + } + leaf transmit-packet-no-packet-buffers { + type uint32; + description + "Transmit packet no packet buffers"; + } + leaf transmit-pakman-error { + type uint32; + description + "Transmit pakman error"; + } + leaf transmit-packet-format-error { + type uint32; + description + "Transmit packet format error"; + } + leaf transmit-igmp-packet-attempt { + type uint32; + description + "Transmit IGMP/MLD packet attempt"; + } + leaf transmit-igmp-packet-success { + type uint32; + description + "Transmit IGMP/MLD packet success"; + } + leaf net-no-memory { + type uint32; + description + "Net no memory"; + } + leaf internal-elapsed-time { + type uint32; + description + "Internal elapsed time"; + } + leaf malloc-failure { + type uint32; + description + "Malloc failure"; + } + leaf v3-group-source-specific-query-construct-error { + type uint32; + description + "IGMP V3/MLD V2 group source specific query + construct error"; + } + leaf v3-group-source-specific-query-split { + type uint32; + description + "IGMP V3/MLD V2 group source specific query split"; + } + leaf v3-report-construct-error { + type uint32; + description + "IGMP V3/MLD V2 report construct error"; + } + leaf v3-report-split { + type uint32; + description + "IGMP V3/MLD V2 report split"; + } + leaf v3-record-split { + type uint32; + description + "IGMP V3/MLD V2 record split"; + } + leaf receive-buffers { + type uint32; + description + "Number of AIPC buffers received"; + } + leaf release-buffers { + type uint32; + description + "Number of AIPC buffers released"; + } + leaf send-blocks { + type uint32; + description + "Number of AIPC buffers send blocked"; + } + leaf release-fail-buffers { + type uint32; + description + "Number of AIPC buffers release failed"; + } + leaf null-buffer-handles { + type uint32; + description + "Number of AIPC NULL buffer handles"; + } + leaf rx-ipc-open-notif { + type uint32; + description + "Number of AIPC open notifications received"; + } + leaf rx-ipc-close-notif { + type uint32; + description + "Number of AIPC close notifications received"; + } + leaf rx-ipc-error-notif { + type uint32; + description + "Number of AIPC error notifications received"; + } + leaf rx-ipc-lwm-notif { + type uint32; + description + "Number of AIPC LWM notifications received"; + } + leaf rx-ipc-hwm-notif { + type uint32; + description + "Number of AIPC HWM notifications received"; + } + leaf rx-ipc-input-wait-notif { + type uint32; + description + "Number of AIPC input waiting notifications + received"; + } + leaf rx-ipc-send-status-notif { + type uint32; + description + "Number of AIPC send status notifications + received"; + } + leaf rx-ipc-publish-notif { + type uint32; + description + "Number of AIPC publish notifications received"; + } + leaf rx-ipc-q-full-notif { + type uint32; + description + "Number of AIPC queue full notifications received"; + } + leaf rx-ipc-output-notif { + type uint32; + description + "Number of AIPC output notifications received"; + } + leaf rx-ipc-connect-notif { + type uint32; + description + "Number of AIPC connect notifications received"; + } + leaf rx-igmp-pak-success { + type uint32; + description + "Number of IGMP protocol messages received"; + } + leaf rx-add-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Add messages received"; + } + leaf rx-delete-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Delete messages received"; + } + leaf rx-sweep-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Sweep messages received"; + } + leaf rx-unknown-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Unknown messages received"; + } + leaf tx-buffer-errors { + type uint32; + description + "Number of AIPC transmission errors"; + } + leaf tx-buffers { + type uint32; + description + "Number of AIPC buffers transmited"; + } + leaf tx-protocol-buffers { + type uint32; + description + "Number of IGMP protocol buffers transmitted"; + } + leaf tx-unknown-buffers { + type uint32; + description + "Number of IGMP Unknown buffers transmited"; + } + leaf evpn-up-events { + type uint32; + description + "Total number of time igmpsn connected to EVPN"; + } + leaf evpn-down-events { + type uint32; + description + "Total number of time igmpsn disconnected to EVPN"; + } + leaf evpn-conn-status { + type boolean; + description + "EVPN Connection Status"; + } + } + + grouping SET-INT32 { + description + "Set int32 value union"; + leaf is-set { + type Set-bool; + description + "IsSet"; + } + leaf value { + when "../is-set = '1'" { + description + "../IsSet = '1'"; + } + type int32; + description + "Value"; + } + } + + grouping IGMPSN-EDM-INTF-BAG { + description + "IGMP/MLD snooping port entry"; + container querier-address { + description + "Querier address"; + uses IGMPSN-ADDRTYPE; + } + container group-limit { + description + "Group limit"; + uses SET-INT32; + } + container packet-statistics { + description + "Port packet statistics"; + uses IGMPSN-PKT-STATS-BAG; + } + container evpn-statistics { + description + "EVPN statistics"; + uses IGMPSN-EVPN-STATS-BAG; + } + container common-statistics { + description + "Port common statistics"; + uses IGMPSN-COMMON-STATS-BAG; + } + container iccp-group-port-statistics { + description + "Port ICCP Group Port statistics"; + uses IGMPSN-ICCP-GROUP-PORT-STATS-BAG; + } + container iccp-traffic-statistics { + description + "Port ICCP traffic statistics"; + uses IGMPSN-ICCP-TRAFFIC-STATS-BAG; + } + container iccp-app-ig-port-statistics { + description + "Port ICCP App ICCP Group Port statistics"; + uses ICCP-APP-IG-PORT-STATS-BAG; + } + leaf interface-name { + type string { + length "0..321"; + } + description + "Port name"; + } + leaf operational-state-up { + type boolean; + description + "Operational state up"; + } + leaf bridge-domain-name { + type string { + length "0..65"; + } + description + "Bridge domain name"; + } + leaf stp-port { + type boolean; + description + "STP port"; + } + leaf stp-forwarding { + type boolean; + description + "STP forwarding"; + } + leaf pseudowire { + type boolean; + description + "Pseudowire"; + } + leaf group-id { + type uint32; + description + "ICCP Group ID"; + } + leaf iccp-port-redundancy-state { + type Igmpsn-bag-iccp-app-redundancy-state; + description + "ICCP Group port redundancy state"; + } + leaf ig-port-time-of-last-red-state-change { + type uint32; + description + "ICCP Group Port time of last redundancy state + change"; + } + leaf profile-name { + type string { + length "0..33"; + } + description + "Profile name"; + } + leaf immediate-leave { + type boolean; + description + "Immediate leave"; + } + leaf explicit-tracking { + type boolean; + description + "Explicit tracking"; + } + leaf static-mrouter { + type boolean; + description + "Static mrouter"; + } + leaf router-guard { + type boolean; + description + "Router guard"; + } + leaf mrouter-is-dynamic { + type boolean; + description + "Mrouter is dynamic"; + } + leaf is-querier-port { + type boolean; + description + "Is querier port"; + } + leaf mrouter-expires { + type int32; + description + "Mrouter expires"; + } + leaf number-of-port-groups { + type uint32; + description + "Number of port groups"; + } + leaf number-of-port-groups-static { + type uint32; + description + "Number of static port groups"; + } + leaf number-of-port-groups-dynamic { + type uint32; + description + "Number of dynamic port groups"; + } + leaf number-of-port-groups-source { + type uint32; + description + "Number of dynamic port source groups"; + } + leaf number-of-port-group-sources-static { + type uint32; + description + "Number of static port source groups"; + } + leaf number-of-port-group-sources-include { + type uint32; + description + "Number of include port group sources"; + } + leaf number-of-port-group-sources-exclude { + type uint32; + description + "Number of exclude port group sources"; + } + leaf admitted-weight { + type uint32; + description + "Admitted weight"; + } + leaf num-of-group-source-synced-to-evpn { + type uint32; + description + "Number of port group source synced to EVPN"; + } + leaf num-of-group-synced-to-evpn { + type uint32; + description + "Number of port group synced to EVPN"; + } + leaf is-evpn-enabled { + type boolean; + description + "Is this a EVPN enabled interface"; + } + leaf is-evpn-proxy-enabled { + type boolean; + description + "Is this a EVPN Proxy enabled interface"; + } + list igmpsn-edm-moi-id { + description + "EVPN moi ID list"; + uses IGMPSN-EDM-MOI-ID-BAG; + } + } + + grouping IGMPSN-EDM-PROFILE-SUMMARY-BAG { + description + "IGMP/MLD snoop profile summary parameters"; + leaf profile-count { + type uint32; + description + "Profile count"; + } + leaf bridge-domain-count { + type uint32; + description + "Bridge domain count"; + } + leaf port-count { + type uint32; + description + "Port count"; + } + } + + grouping ICCP-APP-IG-PORT-STATS-BAG { + description + "ICCP Group port statistics"; + leaf port-active-rx { + type uint32; + description + "ICCP Group Port Active events received"; + } + leaf port-standby-rx { + type uint32; + description + "ICCP Group Port Standby events received"; + } + leaf port-down-rx { + type uint32; + description + "ICCP Group Port Down events received"; + } + leaf port-sync-req-rx { + type uint32; + description + "Received ICCP Sync Requests"; + } + leaf port-sync-req-rx-drop { + type uint32; + description + "Received ICCP Sync Requests dropped"; + } + leaf port-sync-req-tx { + type uint32; + description + "Sent ICCP Sync Requests"; + } + leaf port-sync-req-tx-drop { + type uint32; + description + "Sent ICCP Sync Requests dropped"; + } + leaf port-sync-rx { + type uint32; + description + "Received ICCP Syncs"; + } + leaf port-sync-rx-drop { + type uint32; + description + "Received ICCP Syncs dropped"; + } + leaf port-sync-invalid-rx { + type uint32; + description + "Received ICCP Syncs invalid"; + } + leaf port-sync-tx { + type uint32; + description + "Sent ICCP Syncs"; + } + leaf port-sync-tx-drop { + type uint32; + description + "Sent ICCP Syncs dropped"; + } + leaf port-app-state-rx { + type uint32; + description + "Received ICCP App States"; + } + leaf port-app-state-rx-drop { + type uint32; + description + "Received ICCP App States dropped"; + } + leaf port-app-state-tx { + type uint32; + description + "Sent ICCP App States"; + } + leaf port-app-state-tx-drop { + type uint32; + description + "Sent ICCP App States dropped"; + } + leaf port-start-retry-timer { + type uint32; + description + "Retry timer started"; + } + } + + grouping IGMPSN-ICCP-TRAFFIC-STATS-BAG { + description + "ICCP Traffic Statistics"; + leaf elapsed-time { + type uint32; + description + "Running time for statistics"; + } + leaf iccp-rx-buffer-parse-failures { + type uint32; + description + "ICCP Rx buffer parse failures"; + } + leaf iccp-get-tx-buffer-failures { + type uint32; + description + "ICCP Get Tx buffer failures"; + } + leaf iccp-tx-buffer-send-failures { + type uint32; + description + "ICCP Tx buffer send failures"; + } + leaf recvd-iccp-app-data-msgs { + type uint32; + description + "Received ICCP App Data messages"; + } + leaf recvd-iccp-app-data-naks { + type uint32; + description + "Received ICCP App Data NAKs"; + } + leaf recvd-iccp-app-data-tlvs { + type uint32; + description + "Received ICCP App Data TLVs"; + } + leaf recvd-iccp-app-state-tlvs { + type uint32; + description + "Received ICCP App State TLVs"; + } + leaf recvd-iccp-app-state-start-of-sync { + type uint32; + description + "Received ICCP App State start of sync"; + } + leaf recvd-iccp-app-state-end-of-sync { + type uint32; + description + "Received ICCP App State end of sync"; + } + leaf recvd-iccpig-request-sync-tlvs { + type uint32; + description + "Received ICCP ICCP Group Request Sync TLVs"; + } + leaf recvd-iccp-request-sync-tlvs { + type uint32; + description + "Received ICCP Request Sync TLVs"; + } + leaf recvd-iccp-port-membership-tlvs { + type uint32; + description + "Received ICCP Port Membership TLVs"; + } + leaf recvd-iccp-port-membership-adds { + type uint32; + description + "Received ICCP Port Membership adds"; + } + leaf recvd-iccp-port-membership-removes { + type uint32; + description + "Received ICCP Port Membership removes"; + } + leaf recvd-iccp-querier-info-tlvs { + type uint32; + description + "Received ICCP Querier Info TLVs"; + } + leaf recvd-iccp-querier-info-delete-tlvs { + type uint32; + description + "Received ICCP Querier Info delete TLVs"; + } + leaf recvd-iccp-dynamic-mrouter-tlvs { + type uint32; + description + "Received ICCP Dynamic Mrouter TLVs"; + } + leaf recvd-iccp-dynamic-mrouter-delete-tlvs { + type uint32; + description + "Received ICCP Dynamic Mrouter delete TLVs"; + } + leaf recvd-iccp-isolation-info-msgs { + type uint32; + description + "Received ICCP Isolation Info messages"; + } + leaf recvd-iccp-app-state-sync-ignored { + type uint32; + description + "Received ICCP App State sync messages ignored"; + } + leaf recvd-iccp-app-state-ignored { + type uint32; + description + "Received ICCP App State messages ignored"; + } + leaf recvd-iccp-app-data-unknown-ig { + type uint32; + description + "Received ICCP App Data unknownICCP Group"; + } + leaf recvd-iccp-app-data-unknown-ig-port { + type uint32; + description + "Received ICCP App Data unknown ICCP Group port"; + } + leaf recvd-iccp-app-data-wrong-ig { + type uint32; + description + "Received ICCP App Data wrongICCP Group"; + } + leaf recvd-iccp-app-data-bd-inactive { + type uint32; + description + "Received ICCP App Data BD inactive"; + } + leaf recvd-iccp-app-data-bd-port-inactive { + type uint32; + description + "Received ICCP App Data BD port inactive"; + } + leaf recvd-iccp-app-data-ig-port-not-standby { + type uint32; + description + "Received ICCP App Data ICCP Group port not + standby"; + } + leaf recvd-iccp-app-data-ig-port-not-active { + type uint32; + description + "Received ICCP App Data ICCP Group port not + active"; + } + leaf recvd-iccp-app-data-unsupported-ig-tlv-type { + type uint32; + description + "Received ICCP App Data unsupported ICCP Group + TLV type"; + } + leaf recvd-iccp-app-data-truncated { + type uint32; + description + "Received ICCP App Data truncated"; + } + leaf recvd-iccp-app-data-length-error { + type uint32; + description + "Received ICCP App Data length error"; + } + leaf recvd-iccp-app-data-unsupported-tlv-type { + type uint32; + description + "Received ICCP App Data unsupported TLV type"; + } + leaf recvd-iccp-port-membership-no-querier { + type uint32; + description + "Received ICCP Port Membership No Querier"; + } + leaf recvd-iccp-port-membership-tlv-error { + type uint32; + description + "Received ICCP Port Membership TLV error"; + } + leaf recvd-iccp-port-membership-tlv-too-long { + type uint32; + description + "Received ICCP Port Membership TLV too long"; + } + leaf recvd-iccp-querier-info-tlv-error { + type uint32; + description + "Received ICCP Querier Info TLV error"; + } + leaf recvd-iccp-dynamic-mrouter-tlv-error { + type uint32; + description + "Received ICCP Dynamic Mrouter TLV error"; + } + leaf recvd-iccp-isolation-info-unknown-rg { + type uint32; + description + "Received ICCP Isolation Info unknown Redundancy + Group"; + } + leaf iccp-tx-buffer-send-count { + type uint32; + description + "ICCP Tx buffer send count"; + } + leaf iccp-app-state-replay-attempts { + type uint32; + description + "ICCP App State replay attempts"; + } + leaf sent-iccp-group-connect-tlvs { + type uint32; + description + "Sent ICCP Group Connect TLVs"; + } + leaf sent-iccp-group-disconnect-tlvs { + type uint32; + description + "Sent ICCP Group Disconnect TLVs"; + } + leaf sent-iccp-request-sync-tlvs { + type uint32; + description + "Sent ICCP Request Sync TLVs"; + } + leaf sent-iccp-port-membership-tlvs { + type uint32; + description + "Sent ICCP Port Membership TLVs"; + } + leaf sent-iccp-port-membership-adds { + type uint32; + description + "Sent ICCP Port Membership adds"; + } + leaf sent-iccp-port-membership-removes { + type uint32; + description + "Sent ICCP Port Membership removes"; + } + leaf sent-iccp-querier-info-tlvs { + type uint32; + description + "Sent ICCP Querier Info TLVs"; + } + leaf sent-iccp-querier-info-delete-tlvs { + type uint32; + description + "Sent ICCP Querier Info delete TLVs"; + } + leaf sent-iccp-dynamic-mrouter-tlvs { + type uint32; + description + "Sent ICCP Dynamic Mrouter TLVs"; + } + leaf sent-iccp-dynamic-mrouter-delete-tlvs { + type uint32; + description + "Sent ICCP Dynamic Mrouter delete TLVs"; + } + leaf sent-iccp-app-state-refused { + type uint32; + description + "Request to send ICCP App State refused"; + } + leaf iccp-app-state-replay-failures { + type uint32; + description + "ICCP App State replay failures"; + } + leaf iccp-request-sync-tlvs-tx-failures { + type uint32; + description + "ICCP Request Sync TLV Tx failures"; + } + leaf iccp-port-membership-tlvs-tx-failures { + type uint32; + description + "ICCP Port Membership TLV Tx failures"; + } + leaf iccp-querier-info-tlvs-tx-failures { + type uint32; + description + "ICCP Querier Info TLV Tx failures"; + } + leaf iccp-querier-info-delete-tx-failures { + type uint32; + description + "ICCP Querier Info delete TLV Tx failures"; + } + leaf iccp-dynamic-mrouter-tlvs-tx-failures { + type uint32; + description + "ICCP Dynamic Mrouter TLV Tx failures"; + } + leaf iccp-dynamic-mrouter-delete-tlvs-tx-failures { + type uint32; + description + "ICCP Dynamic Mrouter delete TLV Tx failures"; + } + } + + grouping IGMPSN-ICCP-GROUP-PORT-STATS-BAG { + description + "igmp snooping Redundancy Group Port Statistics"; + leaf elapsed-time { + type uint32; + description + "Running time for statistics"; + } + leaf iccp-group-port-create-down-events { + type uint32; + description + "ICCP Group Port Create Down events"; + } + leaf iccp-group-port-create-standby-events { + type uint32; + description + "ICCP Group Port Create Standby events"; + } + leaf iccp-group-port-create-active-events { + type uint32; + description + "ICCP Group Port Create Active events"; + } + leaf iccp-group-port-down-events { + type uint32; + description + "ICCP Group Port Down events"; + } + leaf iccp-group-port-standby-events { + type uint32; + description + "ICCP Group Port Standby events"; + } + leaf iccp-group-port-active-events { + type uint32; + description + "ICCPGroup Port Active events"; + } + } + + grouping IGMPSN-ICCP-STATS-BAG { + description + "igmp snooping Redundancy Statistics"; + leaf elapsed-time { + type uint32; + description + "Running time for statistics"; + } + leaf iccp-up-events { + type uint32; + description + "ICCP Up events"; + } + leaf iccp-down-events { + type uint32; + description + "ICCP Down events"; + } + leaf iccp-congestion-detected-events { + type uint32; + description + "ICCP Congestion Detected events"; + } + leaf iccp-congestion-cleared-events { + type uint32; + description + "ICCP Congestion Cleared events"; + } + leaf iccp-group-peer-up-events { + type uint32; + description + "ICCP Group Peer Up events"; + } + leaf iccp-group-peer-down-events { + type uint32; + description + "ICCP Group Peer Down events"; + } + leaf iccp-group-connect-attempts { + type uint32; + description + "ICCP Group Connect attempts"; + } + leaf iccp-group-connect-failures { + type uint32; + description + "ICCP Group Connect failures"; + } + leaf iccp-group-disconnect-attempts { + type uint32; + description + "ICCP Group Disconnect attempts"; + } + leaf iccp-group-disconnect-failures { + type uint32; + description + "ICCP Group Disconnect failures"; + } + } + + grouping IGMPSN-COMMON-STATS-BAG { + description + "IGMPSN COMMON STATS BAG"; + leaf elapsed-time { + type uint32; + description + "Running time for statistics"; + } + leaf stale-port-groups-deleted { + type uint32; + description + "Stale port groups deleted"; + } + leaf stale-port-group-sources-deleted { + type uint32; + description + "Stale port group sources deleted"; + } + } + + grouping IGMPSN-EVPN-STATS-BAG { + description + "IGMPSN EVPN STATS BAG"; + leaf evpn-reset-time { + type uint32; + description + "EVPN reset time"; + } + leaf evpn-up-events { + type uint32; + description + "EVPN up events"; + } + leaf evpn-down-events { + type uint32; + description + "EVPN down events"; + } + leaf evpn-message-received { + type uint32; + description + "EVPN message received"; + } + leaf evpn-type7-add-received { + type uint32; + description + "Number of Join add received"; + } + leaf evpn-type7-withdraw-received { + type uint32; + description + "Number of join withdraw received"; + } + leaf evpn-type8-add-received { + type uint32; + description + "Number of Leave add received"; + } + leaf evpn-type8-withdraw-received { + type uint32; + description + "Number of Leave withdraw received"; + } + leaf evpn-message-received-ignored { + type uint32; + description + "EVPN message received and ignored"; + } + leaf evpn-message-received-unsupported { + type uint32; + description + "EVPN unsupported message received"; + } + leaf evpn-message-sent { + type uint32; + description + "EVPN message sent"; + } + leaf evpn-type7-add-sent { + type uint32; + description + "Number of Join add sent"; + } + leaf evpn-type7-with-sent { + type uint32; + description + "Number of join withdraw sent"; + } + leaf evpn-type8-add-sent { + type uint32; + description + "Number of Leave add sent"; + } + leaf evpn-type8-withdraw-sent { + type uint32; + description + "Number of Leave withdraw sent"; + } + leaf current-evpn-remove-queue { + type uint32; + description + "EVPN Current Retry queue size"; + } + leaf cumulative-evpn-remove-queue { + type uint32; + description + "EVPN Cumulative Retry queue size"; + } + leaf evpn-replay-time { + type uint32; + description + "EVPN replay time"; + } + } + + grouping IGMPSN-PKT-STATS-BAG { + description + "IGMPSN PKT STATS BAG"; + leaf elapsed-time { + type uint32; + description + "Running time for statistics"; + } + leaf received-igmp-general-queries { + type uint32; + description + "Received IGMP/MLD general queries"; + } + leaf received-igmp-group-specific-queries { + type uint32; + description + "Received IGMP/MLD group specific queriers"; + } + leaf received-igmp-group-source-specific-querier { + type uint32; + description + "Received IGMP group source specific queriers"; + } + leaf received-igmpv1-reports { + type uint32; + description + "Received IGMP V1/MLD reports"; + } + leaf received-igmpv2-reports { + type uint32; + description + "Received IGMP V2/MLD V1 reports"; + } + leaf received-igmpv3-reports { + type uint32; + description + "Received IGMP V3/MLD V2 reports"; + } + leaf received-evpn-igmpv1-reports { + type uint32; + description + "Received EVPN IGMP V1/MLD reports"; + } + leaf received-evpn-igmpv2-reports { + type uint32; + description + "Received EVPN IGMP V2/MLD V1 reports"; + } + leaf received-evpn-igmpv3-reports { + type uint32; + description + "Received EVPN IGMP V3/MLD V2 reports"; + } + leaf received-evpn-proxy-v2-reports { + type uint32; + description + "Received EVPN Proxy V3/MLD V2 reports"; + } + leaf received-evpn-proxy-v3-reports { + type uint32; + description + "Received EVPN Proxy V3/MLD V2 reports"; + } + leaf received-evpn-proxy-del-v2-reports { + type uint32; + description + "Received EVPN Proxy Del V3/MLD V2 reports"; + } + leaf received-evpn-proxy-del-v3-reports { + type uint32; + description + "Received EVPN Proxy Del V3/MLD V2 reports"; + } + leaf received-igmpv2-leaves { + type uint32; + description + "Received IGMP V2/MLD V1 leaves"; + } + leaf received-evpn-igmpv2-leaves { + type uint32; + description + "Received EVPN IGMP V2/MLD V1 leaves"; + } + leaf received-igmp-global-leaves { + type uint32; + description + "Received IGMP/MLD global leaves"; + } + leaf received-pim-hellos { + type uint32; + description + "Received PIM hellos"; + } + leaf received-igmpv3-is-include-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 is include group Records"; + } + leaf received-igmpv3-change-to-include-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 Change to include group + records"; + } + leaf received-igmpv3-is-exclude-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 is exclude group records"; + } + leaf received-igmpv3-change-to-exclude-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 change to exclude group + records"; + } + leaf received-igmpv3-allow-new-sources-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 allow new sources group + records"; + } + leaf received-igmpv3-block-old-sources-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 block old sources group + records"; + } + leaf received-evpn-igmpv3-is-include-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 is include group Records"; + } + leaf received-evpn-igmpv3-change-to-include-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 Change to include group + records"; + } + leaf received-evpn-igmpv3-is-exclude-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 is exclude group records"; + } + leaf received-evpn-igmpv3-change-to-exclude-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 change to exclude group + records"; + } + leaf received-evpn-igmpv3-allow-new-sources-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 allow new sources group + records"; + } + leaf received-evpn-igmpv3-block-old-sources-group-records { + type uint32; + description + "Received IGMP V3/MLD V2 block old sources group + records"; + } + leaf sent-igmp-general-queries { + type uint32; + description + "Sent IGMP/MLD general queriers"; + } + leaf sent-igmp-group-specific-queries { + type uint32; + description + "Sent IGMP/MLD group specific queries"; + } + leaf sent-igmp-group-source-specific-queries { + type uint32; + description + "Sent IGMP/MLD group source specific queries"; + } + leaf sent-igmpv2-reports { + type uint32; + description + "Sent IGMP V2/MLD V1 reports"; + } + leaf sent-igmpv2-leaves { + type uint32; + description + "Sent IGMP V2/MLD V1 leaves"; + } + leaf sent-igmpv3-reports { + type uint32; + description + "Sent IGMP V3/MLD V2 reports"; + } + leaf sent-igmp-global-leaves { + type uint32; + description + "Sent IGMP/MLD global leaves"; + } + leaf received-igmp-general-queries-flooded { + type uint32; + description + "Received IGMP/MLD general queries flooded"; + } + leaf received-igmp-group-specific-queries-flooded { + type uint32; + description + "Received IGMP/MLD group specific queries flooded"; + } + leaf received-igmp-group-source-specific-queries-flooded { + type uint32; + description + "Received IGMP/MLD group source specific queries + flooded"; + } + leaf received-igmpv2-reports-forwarded-to-mrouters { + type uint32; + description + "Received IGMP V2/MLD V1 reports forwarded to + mrouters"; + } + leaf received-igmpv2-reports-flooded { + type uint32; + description + "Received IGMP V2/MLD V1 reports flooded"; + } + leaf received-igmpv3-reports-forwarded-to-mrouters { + type uint32; + description + "Received IGMP V3/MLD V2 reports forwarded to + mrouters"; + } + leaf received-igmpv3-reports-flooded { + type uint32; + description + "Received IGMP V3/MLD V2 reports flooded"; + } + leaf received-igmpv2-leaves-forwarded-to-mrouters { + type uint32; + description + "Received IGMP V2/MLD V1 leaves forwarded to + mrouters"; + } + leaf received-igmpv2-leaves-flooded { + type uint32; + description + "Received IGMP V2/MLD V1 leavs flooded"; + } + leaf received-pim-hellos-flooded { + type uint32; + description + "Received PIM hellos flooded"; + } + leaf received-packets-flooded { + type uint32; + description + "Received packets flooded"; + } + leaf received-packets-forwarded-to-members { + type uint32; + description + "Received packets forwarded to members"; + } + leaf received-packets-forwarded-to-mrouters { + type uint32; + description + "Received packets forwarded to mrouters"; + } + leaf received-packets-consumed { + type uint32; + description + "Received packets consumed"; + } + leaf reports-suppressed { + type uint32; + description + "Received packets suppressed"; + } + leaf blocks-ignored-inv2-compat-mode { + type uint32; + description + "Blocks ignored in IGMP V2/MLD V1 compatibility + mode"; + } + leaf exclude-source-lists-ignored-inv2-compat-mode { + type uint32; + description + "Exclude src lists ignored in IGMP V2/MLD V1 + compatibility mode"; + } + leaf access-group-permits { + type uint32; + description + "Access group permits"; + } + leaf access-group-denials { + type uint32; + description + "Access group denials"; + } + leaf group-limit-exceeds { + type uint32; + description + "Group limits exceeds"; + } + leaf received-ip-packets-on-inactive-bridge-domain { + type uint32; + description + "Received IP packets on inactive bridge domain"; + } + leaf received-ip-packets-on-inactive-port { + type uint32; + description + "Received IP packets on inactive port"; + } + leaf received-ip-packets-martiain { + type uint32; + description + "Received IP packets martian"; + } + leaf received-ip-packets-bad-protocol { + type uint32; + description + "Received IP packets bad protocol"; + } + leaf received-ip-packets-da-not-multicast { + type uint32; + description + "Received IP packets DA not multicast"; + } + leaf received-ip-packets-no-rrt-alert { + type uint32; + description + "Received IP packets no router alert"; + } + leaf received-ip-packets-no-router-alert-check { + type uint32; + description + "Received IP packets no router alert check"; + } + leaf received-ip-packets-bad-igmp-checksum { + type uint32; + description + "Received IP packets bad IGMP checksum"; + } + leaf received-ip-packets-ttl-not-one { + type uint32; + description + "Received IP packets TTL not one"; + } + leaf received-ip-packets-ttl-not-one-check { + type uint32; + description + "Received IP packets TTL not one check"; + } + leaf received-igmp-queries-too-short { + type uint32; + description + "Received IGMP/MLD queries too short"; + } + leaf received-igmp-group-source-specific-queries-too-short { + type uint32; + description + "Received IGMP/MLD V3 GSS queries too short"; + } + leaf received-igmpv1-reports-too-short { + type uint32; + description + "Received IGMP V1/MLD reports too short"; + } + leaf received-igmpv2-reports-too-short { + type uint32; + description + "Received IGMP V2/MLD V1 reports too short"; + } + leaf received-igmpv3-reports-too-short { + type uint32; + description + "Received IGMP V3/MLD V2 reports too short"; + } + leaf received-igmpv2-leaves-too-short { + type uint32; + description + "Received IGMP V2/MLD V1 leaves too short"; + } + leaf received-igmp-msgs-unknown-type { + type uint32; + description + "Received IGMP/MLD messages unknown type"; + } + leaf received-igmp-msgs-greater-than-maximum-version { + type uint32; + description + "Received IGMP/MLD messages greater than maximum + version"; + } + leaf received-igmp-msgs-less-than-minimum-version { + type uint32; + description + "Received IGMP/MLD messages less than minimum + version"; + } + leaf received-igmp-queries-bad-source { + type uint32; + description + "Received IGMP/MLD queries bad source"; + } + leaf received-igmp-queries-dropped-by-router { + type uint32; + description + "Received IGMP/MLD queries fropped by router"; + } + leaf received-igmp-general-queries-da-no-all-nodes { + type uint32; + description + "Received IGMP/MLD general queries DA not all + node"; + } + leaf received-igmp-group-specific-queries-invalid-group { + type uint32; + description + "Received IGMP/MLD group specific queries invalid + group"; + } + leaf received-igmp-group-specific-queries-da-not-group { + type uint32; + description + "Received IGMP/MLD group specific queries DA not + group"; + } + leaf received-igmp-group-specific-queries-not-from-querier { + type uint32; + description + "Received IGMP/MLD group specific queries not + from querier"; + } + leaf received-igmp-group-specific-queries-unknown-group { + type uint32; + description + "Received IGMP/MLD group specific queries unknown + group"; + } + leaf received-igmp-reports-invalid-group { + type uint32; + description + "Received IGMP/MLD reports invalid group"; + } + leaf received-igmp-reports-link-local-group { + type uint32; + description + "Received IGMP/MLD reports link local group"; + } + leaf received-igmp-reports-da-not-group { + type uint32; + description + "Received IGMP/MLD reports da not group"; + } + leaf received-igmp-reports-no-querier { + type uint32; + description + "Received IGMP/MLD reports no querier"; + } + leaf received-igmp-leaves-invalid-group { + type uint32; + description + "Received IGMP/MLD leaves invalid group"; + } + leaf received-igmp-leaves-invalid-da { + type uint32; + description + "Received IGMP/MLD leaves invalid DA"; + } + leaf received-igmp-leaves-no-querier { + type uint32; + description + "Received IGMP/MLD leaves no querier"; + } + leaf received-igmp-leaves-non-member { + type uint32; + description + "Received IGMP/MLD leaves non member"; + } + leaf received-igmp-leaves-non-dynamic-member { + type uint32; + description + "Received IGMP/MLD leaves non-dynamic member"; + } + leaf received-igmp-leaves-nonv2-member { + type uint32; + description + "Received IGMP/MLD leaves non V2/V1 member"; + } + leaf received-igmpv3-reports-invalid-group { + type uint32; + description + "Received IGMP V3/MLD V2 reports invalid group"; + } + leaf received-igmpv3-reports-link-local-group { + type uint32; + description + "Received IGMP V3/MLD V2 reports link local group"; + } + leaf received-igmpv3-reports-da-not-all-v3-routers { + type uint32; + description + "Received IGMP V3/MLD V2 reports DA not all V3 + routers"; + } + leaf received-igmpv3-reports-no-querier { + type uint32; + description + "Received IGMP V3/MLD V2 reports no querier"; + } + leaf received-igmpv3-reports-older-version-querier { + type uint32; + description + "Received IGMP V3/MLD V2 reports older version + querier"; + } + leaf received-igmpv3-reports-invalid-group-record-type { + type uint32; + description + "Received IGMP V3/MLD V2 reports invalid group + record type"; + } + leaf received-igmpv3-reports-no-sources { + type uint32; + description + "Received IGMP V3/MLD V2 reports no sources"; + } + leaf received-igmpv3-leaves-non-member { + type uint32; + description + "Received IGMP V3/MLD V2 leaves non member"; + } + leaf received-pim-msgs-dropped-by-router-guard { + type uint32; + description + "Received PIM messages dropped by router guard"; + } + leaf received-igmp-msgs-p2mp-bud-tail-dropped { + type uint32; + description + "Received IGMP messages in P2MP Bud and Tail node + dropped"; + } + leaf received-igmp-queries-on-multihome-port { + type uint32; + description + "Received IGMP Queries on Multihomed Port"; + } + leaf received-igmpv1-reports-on-multihome-port { + type uint32; + description + "Received IGMP V1 Report on Multihomed Port"; + } + leaf received-igmp-proxy-general-queries { + type uint32; + description + "Received IGMP/MLD proxy general queries"; + } + leaf received-igmp-proxy-gs-queries { + type uint32; + description + "Received IGMP/MLD proxy group specific queries"; + } + leaf received-igmp-proxy-reports { + type uint32; + description + "Received IGMP/MLD proxy reports"; + } + leaf sources-not-reported { + type uint32; + description + "Sources not reported"; + } + leaf tx-error-no-querier-in-bd { + type uint32; + description + "Msg generation failed, no Querier in BD"; + } + leaf tx-error-no-l2-info-for-bd { + type uint32; + description + "Msg generation failed, no L2 Info for BD"; + } + } + + grouping IGMPSN-EDM-INTERNAL-QUERIER-STATS-BAG { + description + "IGMPSN EDM INTERNAL QUERIER STATS BAG"; + leaf elapsed-time { + type uint32; + description + "Running time for statistics"; + } + leaf received-general-queries { + type uint32; + description + "Received general queries"; + } + leaf received-general-queries-when-disabled { + type uint32; + description + "Received general queries when disabled"; + } + leaf received-general-queries-as-queries { + type uint32; + description + "Received general queries as querier"; + } + leaf received-general-queries-as-non-querier { + type uint32; + description + "Received general queries as non querier"; + } + leaf received-general-queries-as-winnder { + type uint32; + description + "Received general queries as winner"; + } + leaf received-general-queries-as-loser { + type uint32; + description + "Received general queries as loser"; + } + leaf received-global-leaves { + type uint32; + description + "Received global leaves"; + } + leaf received-global-leaves-when-disabled { + type uint32; + description + "Received global leaves when disabled"; + } + leaf received-global-leaves-as-non-querier { + type uint32; + description + "Received global leaves as non querier"; + } + leaf received-global-leaves-ignored { + type uint32; + description + "Received global leaves ignored"; + } + leaf received-pim-enabled-notifications { + type uint32; + description + "Received PIM enabled notifications"; + } + leaf received-pim-disabled-notifications { + type uint32; + description + "Received PIM disabled notifications"; + } + leaf receivedy-local-query-solicitations { + type uint32; + description + "Received local query solicitations"; + } + leaf sent-general-queries { + type uint32; + description + "SentGeneralQueries"; + } + } + + grouping IGMPSN-EDM-MRTR-BAG { + description + "IGMPSN EDM MRTR BAG"; + leaf static-m-router { + type boolean; + description + "Static mrouter"; + } + leaf dynamic-m-router { + type boolean; + description + "Dynamic mrouter"; + } + leaf interface-name { + type string { + length "0..321"; + } + description + "Port name"; + } + leaf pseudowire { + type boolean; + description + "Pseudowire"; + } + } + + grouping IGMPSN-EDM-BD-BAG { + description + "IGMP/MLD snooping bridge domain summary info"; + container configured-system-ip-address { + description + "Configured system IP address"; + uses IGMPSN-ADDRTYPE; + } + container querier-address { + description + "Querier address"; + uses IGMPSN-ADDRTYPE; + } + container internal-querier-stats { + description + "Internal querier statistics"; + uses IGMPSN-EDM-INTERNAL-QUERIER-STATS-BAG; + } + container packet-statistics { + description + "Bridge domain packet statistics"; + uses IGMPSN-PKT-STATS-BAG; + } + container evpn-statistics { + description + "EVPN statistics"; + uses IGMPSN-EVPN-STATS-BAG; + } + container common-statistics { + description + "Bridge domain common statistics"; + uses IGMPSN-COMMON-STATS-BAG; + } + container iccp-statistics { + description + "Bridge domain ICCP statistics"; + uses IGMPSN-ICCP-STATS-BAG; + } + container iccp-group-port-statistics { + description + "Bridge domain ICCP Group Port statistics"; + uses IGMPSN-ICCP-GROUP-PORT-STATS-BAG; + } + container iccp-traffic-statistics { + description + "Bridge domain ICCP traffic statistics"; + uses IGMPSN-ICCP-TRAFFIC-STATS-BAG; + } + container iccp-app-ig-port-statistics { + description + "Bridge domain ICCP App ICCP Group Port + statistics"; + uses ICCP-APP-IG-PORT-STATS-BAG; + } + container client-address { + description + "Client address"; + uses IGMPSN-ADDRTYPE; + } + leaf bridge-domain-name { + type string { + length "0..65"; + } + description + "Bridge domain name"; + } + leaf profile-name { + type string { + length "0..33"; + } + description + "Profile name"; + } + leaf snoop-active { + type boolean; + description + "Snooping active in bridge domain"; + } + leaf number-of-ports { + type uint32; + description + "Number of ports in bridge domain"; + } + leaf number-of-mrouters { + type uint32; + description + "Number of mrouters in bridge domain"; + } + leaf number-of-stp-ports { + type uint32; + description + "Number of STP ports in bridge domain"; + } + leaf number-of-ig-ports { + type uint32; + description + "Number of ICCP Group ports in bridge domain"; + } + leaf number-of-groups { + type uint32; + description + "Number of groups in bridge domain"; + } + leaf number-of-group-o-ports { + type uint32; + description + "Number of group o ports in bridge domain"; + } + leaf number-of-group-sources { + type uint32; + description + "Number of group sources in bridge domain"; + } + leaf number-of-group-source-statics { + type uint32; + description + "Number of statics group sources"; + } + leaf number-of-group-source-includes { + type uint32; + description + "Number of include group sources"; + } + leaf number-of-group-source-excludes { + type uint32; + description + "Number of exclude group sources"; + } + leaf number-of-group-source-include-ports { + type uint32; + description + "Number of include group source ports"; + } + leaf number-of-group-source-exclude-ports { + type uint32; + description + "Number of exclude group source ports"; + } + leaf configured-report-suppression { + type boolean; + description + "Configured TCN query suppression"; + } + leaf configured-tcn-query-solicit { + type boolean; + description + "Configured TCN query solicit"; + } + leaf configured-tcn-flood { + type boolean; + description + "Configured TCN flood"; + } + leaf configured-router-alert-check { + type boolean; + description + "Configured router alert check"; + } + leaf configured-ttl-check { + type boolean; + description + "Configured TTL check"; + } + leaf offload-enabled { + type boolean; + description + "nV Multicast Offload enabled"; + } + leaf evpn-proxy-enabled { + type boolean; + description + "EVPN Selective Multicast enabled"; + } + leaf configured-mrouter-forwarding { + type boolean; + description + "Configured Mrouter Forwarding"; + } + leaf configured-igmp-snooping-disabled { + type boolean; + description + "Configured IGMPSnooping status"; + } + leaf configured-p2mp-capability { + type boolean; + description + "Configured P2MP Capability"; + } + leaf configured-default-profile { + type boolean; + description + "Configured Default IGMPSnooping Profile"; + } + leaf configured-internal-querier-supprt { + type boolean; + description + "Configured internal querier support"; + } + leaf configured-internal-querier-version { + type uint8; + description + "Configured internal querier version"; + } + leaf configured-internal-querier-query-timeout { + type uint32; + units "second"; + description + "Configured internal querier timeout (secs)"; + } + leaf configured-internal-querier-query-interval { + type uint16; + units "second"; + description + "Configured internal querier interval (secs)"; + } + leaf configured-internal-querier-max-response-time { + type uint8; + units "second"; + description + "Configured internal querier max response time + (1/10 secs)"; + } + leaf configured-internal-querier-robust-variable { + type uint8; + description + "Configured internal querier robust variable"; + } + leaf configured-internal-querier-tcn-query-interval { + type uint16; + units "second"; + description + "Configured internal querier TCN query interval + (secs)"; + } + leaf configured-internal-querier-tcn-query-count { + type uint8; + description + "Configured internal querier TCN query count"; + } + leaf configured-internal-querier-tcn-query-mrt { + type uint8; + units "second"; + description + "Configured internal querier TCN query MRT 1/10 + secs)"; + } + leaf configured-querier-query-interval { + type uint16; + units "second"; + description + "Configured querier query interval (secs)"; + } + leaf configured-querier-lmq-interval { + type uint16; + units "second"; + description + "Configured querier LMQ interval (1/10 secs)"; + } + leaf configured-querier-lmq-count { + type uint8; + description + "Configured querier LMQ count"; + } + leaf configured-querier-robust-variable { + type uint8; + description + "Configured querier robustness variable"; + } + leaf configured-tcn-flood-query-count { + type uint8; + description + "Configured TCN flood query count"; + } + leaf configured-minimum-version { + type uint8; + description + "Configured minimum version"; + } + leaf configured-maximum-version { + type uint8; + description + "Configured maximum version"; + } + leaf configured-unsolicated-report-interval { + type uint8; + units "second"; + description + "Configured unsolicated report interval (1/10 + secs)"; + } + leaf querier-port-name { + type string { + length "0..321"; + } + description + "Querier port name"; + } + leaf querier-port-pseudowire { + type boolean; + description + "Querier port psweudowire"; + } + leaf querier-version { + type uint8; + description + "Querier version"; + } + leaf querier-query-interval { + type uint16; + description + "Querier query interval"; + } + leaf querier-robust-variable { + type uint8; + description + "Querier robust variable"; + } + leaf querier-max-response-time { + type uint16; + description + "Querier max response time"; + } + leaf querier-time-since-last-g-query { + type int32; + description + "Querier time since last general query"; + } + leaf topology-change-flood-mode { + type boolean; + description + "Topology change flood mode"; + } + leaf gqs-since-topology-change-start { + type uint8; + description + "GQS since topology change start"; + } + leaf ig-report-standby-state-disabled { + type boolean; + description + "ICCP Group report standby state disabled"; + } + leaf startup-query-port-up-disabled { + type boolean; + description + "Startup query on port-up disabled"; + } + leaf startup-query-ig-port-active { + type boolean; + description + "Startup query on ICCP Group port active"; + } + leaf startup-query-tcn { + type boolean; + description + "Startup query on TCN"; + } + leaf startup-query-tcn-sync { + type boolean; + description + "Startup query TCN sync"; + } + leaf startup-query-tcn-always { + type boolean; + description + "Startup query TCN always"; + } + leaf startup-query-process-start { + type boolean; + description + "Startup query on process start"; + } + leaf startup-query-process-start-sync { + type boolean; + description + "Startup query process start sync"; + } + leaf startup-query-interval { + type uint16; + units "second"; + description + "Startup query interval (secs)"; + } + leaf startup-query-count { + type uint8; + description + "Startup query count"; + } + leaf startup-query-mrt { + type uint8; + description + "Startup query MRT (1/10 sec)"; + } + leaf internal-querier-present { + type boolean; + description + "Internal querier present"; + } + leaf star-star-mroute-pd-data { + type yang:hex-string; + description + "Star star mroute platform dependent opaque data"; + } + leaf client-port-name { + type string { + length "0..321"; + } + description + "Client port name"; + } + leaf client-port-pseudowire { + type boolean; + description + "Client port pseudowire"; + } + leaf client-l2-info { + type yang:hex-string; + description + "Client l2 info"; + } + leaf client-packet-priority { + type uint32; + description + "Client packet priority"; + } + leaf querier-l2-info { + type yang:hex-string; + description + "Querier l2 info"; + } + leaf querier-packet-priority { + type uint32; + description + "Querier packet priority"; + } + leaf platform-out-of-resources { + type boolean; + description + "Platform Out Of Resources"; + } + leaf star-star-oor-fail-cnt { + type uint32; + description + "Star Star Mroute OOR Fail Count"; + } + leaf star-goor-fail-cnt { + type uint32; + description + "StarG Mroute OOR Fail Count"; + } + leaf sgoor-fail-cnt { + type uint32; + description + "SG Mroute OOR Fail Count"; + } + list mrouter { + description + "Maximum and current groups accepted for each + interface"; + uses IGMPSN-EDM-MRTR-BAG; + } + } + + grouping IGMPSN-PROFILE-STATIC-GROUP-SOURCE-BAG { + description + "IGMPSN PROFILE STATIC GROUP SOURCE BAG"; + container source-address { + description + "Source address"; + uses IGMPSN-ADDRTYPE; + } + } + + grouping IGMPSN-PROFILE-STATIC-GROUP-BAG { + description + "IGMPSN PROFILE STATIC GROUP BAG"; + container group-address { + description + "Group address"; + uses IGMPSN-ADDRTYPE; + } + leaf star-g { + type boolean; + description + "Star G flag"; + } + list source { + description + "Source list"; + uses IGMPSN-PROFILE-STATIC-GROUP-SOURCE-BAG; + } + } + + grouping IGMPSN-PROFILE-PARAM-FLAGS-BAG { + description + "IGMPSN PROFILE PARAM FLAGS BAG"; + leaf system-ip-address-set { + type boolean; + description + "System IP address set"; + } + leaf minimum-version-set { + type boolean; + description + "Minimum version set"; + } + leaf report-suppression-set { + type boolean; + description + "Report suppression set"; + } + leaf tcn-query-solicit-set { + type boolean; + description + "TCN query solicit set"; + } + leaf tcn-flood-set { + type boolean; + description + "TCN flood set"; + } + leaf tcn-flood-query-count-set { + type boolean; + description + "TCN flood query count set"; + } + leaf router-alert-check-set { + type boolean; + description + "Router alert check set"; + } + leaf ttl-check-set { + type boolean; + description + "TTL check set"; + } + leaf mrouter-forwarding-set { + type boolean; + description + "Mrouter Forwarding set"; + } + leaf internal-querier-support-set { + type boolean; + description + "Internal querier support set"; + } + leaf internal-querier-version-set { + type boolean; + description + "Internal querier version set"; + } + leaf internal-querier-query-timeout-set { + type boolean; + description + "Internal querier timeout set"; + } + leaf internal-querier-query-interval-set { + type boolean; + description + "Internal querier quer interval set"; + } + leaf internal-querier-max-response-time-set { + type boolean; + description + "Internal querier maximum response time set"; + } + leaf internal-querier-robust-variable-set { + type boolean; + description + "Internal querier robustness variable set"; + } + leaf internal-querier-tcn-query-count-set { + type boolean; + description + "Internal querier TCN query count set"; + } + leaf internal-querier-tcn-query-interval-set { + type boolean; + description + "Internal querier TCN query interval set"; + } + leaf internal-querier-tcn-query-mrt-set { + type boolean; + description + "Internal querier TCN query MRT set"; + } + leaf querier-query-interval-set { + type boolean; + description + "Querier query interval set"; + } + leaf querier-robust-variable-set { + type boolean; + description + "Querier robust variable set"; + } + leaf querier-lmq-interval-set { + type boolean; + description + "Querier LMQ interval set"; + } + leaf querier-lmq-count-set { + type boolean; + description + "Querier LMQ count set"; + } + leaf unsolicited-report-interval-set { + type boolean; + description + "Unsolicitated report interval set"; + } + leaf immediate-leave-set { + type boolean; + description + "Immediate leave set"; + } + leaf explicit-tracking-set { + type boolean; + description + "Explicit tracking set"; + } + leaf static-mrouter-set { + type boolean; + description + "Static mrouter set"; + } + leaf router-guard-set { + type boolean; + description + "Router guard set"; + } + leaf access-group-set { + type boolean; + description + "Access group set"; + } + leaf group-policy-set { + type boolean; + description + "Group policy set"; + } + leaf group-limit-set { + type boolean; + description + "Group limit set"; + } + leaf ig-report-standby-state-set { + type boolean; + description + "ICCP Group report standby state set"; + } + leaf startup-query-count-set { + type boolean; + description + "Startup query count set"; + } + leaf startup-query-interval-set { + type boolean; + description + "Startup query interval set"; + } + leaf startup-query-mrt-set { + type boolean; + description + "Startup query MRT set"; + } + leaf startup-query-port-up-set { + type boolean; + description + "Startup query on port-up set"; + } + leaf startup-query-ig-port-active-set { + type boolean; + description + "Startup query on ICCP Group port active set"; + } + leaf startup-query-tcn-set { + type boolean; + description + "Startup query on TCN set"; + } + leaf startup-query-tcn-sync-set { + type boolean; + description + "Startup query TCN sync set"; + } + leaf startup-query-tcn-always-set { + type boolean; + description + "Startup query TCN always set"; + } + leaf startup-query-process-start-set { + type boolean; + description + "Startup query on process start set"; + } + leaf startup-query-process-start-sync-set { + type boolean; + description + "Startup query process start sync set"; + } + leaf default-profile-set { + type boolean; + description + "Default profile set"; + } + } + + grouping IGMPSN-EDM-PROFILE-BAG { + description + "IGMP/MLD snoop profile parameters"; + container set-flags { + description + "Set flags"; + uses IGMPSN-PROFILE-PARAM-FLAGS-BAG; + } + container system-ip-addr { + description + "System ip addr"; + uses IGMPSN-ADDRTYPE; + } + leaf name { + type string { + length "0..33"; + } + description + "Profile name"; + } + leaf is-configured { + type boolean; + description + "Profile is configured"; + } + leaf minimum-version { + type uint8; + description + "Minimum version"; + } + leaf report-suppression { + type boolean; + description + "Report suppression"; + } + leaf tcn-query-solicit { + type boolean; + description + "TCN query solicit"; + } + leaf tcn-flood { + type boolean; + description + "TCN flood"; + } + leaf tcn-flood-query-count { + type uint8; + description + "TCN flood query count"; + } + leaf router-alert-check { + type boolean; + description + "Router alert check"; + } + leaf ttl-check { + type boolean; + description + "TTL check"; + } + leaf mrouter-forwarding { + type boolean; + description + "Mrouter Forwarding"; + } + leaf internal-querier-support { + type boolean; + description + "Internal querier support"; + } + leaf internal-querier-version { + type uint8; + description + "Internal querier version"; + } + leaf internal-querier-query-timeout { + type uint32; + units "second"; + description + "Internal querier query timeout (secs)"; + } + leaf internal-querier-query-interval { + type uint16; + units "second"; + description + "Internal querier query interval (secs)"; + } + leaf internal-querier-max-response-time { + type uint8; + description + "Internal querier max response time (1/10 sec)"; + } + leaf internal-querier-robust-variable { + type uint8; + description + "Internal querier robust variable"; + } + leaf internal-querier-tcn-query-interval { + type uint16; + units "second"; + description + "Internal querier TCN query interval (secs)"; + } + leaf internal-querier-tcn-query-count { + type uint8; + description + "Internal querier TCN query count"; + } + leaf internal-querier-tcn-query-mrt { + type uint8; + description + "Internal querier TCN query MRT (1/10 sec)"; + } + leaf querier-query-interval { + type uint16; + units "second"; + description + "Querier query interval (secs)"; + } + leaf querier-max-response-time { + type uint16; + units "second"; + description + "Querier max response time (1/10 secs)"; + } + leaf querier-lmq-interval { + type uint8; + units "second"; + description + "Querier LMQ interval (1/10 secs)"; + } + leaf querier-lmq-count { + type uint8; + description + "Querier LMQ count"; + } + leaf querier-robust-variable { + type uint8; + description + "Querier robust variable"; + } + leaf unsolicited-report-interval { + type uint8; + units "second"; + description + "Unsolicited report interval(1/10 secs)"; + } + leaf immediate-leave { + type boolean; + description + "Immediate leave"; + } + leaf explicit-tracking { + type boolean; + description + "Explicit tracking"; + } + leaf static-mrouter { + type boolean; + description + "Static mrouter"; + } + leaf router-guard { + type boolean; + description + "Router guard"; + } + leaf access-group-acl-name { + type string { + length "0..33"; + } + description + "Access group ACL name"; + } + leaf access-group-acl-configured { + type boolean; + description + "Access group ACL configured"; + } + leaf group-policy-name { + type string { + length "0..257"; + } + description + "Group policy name"; + } + leaf group-limit { + type int32; + description + "Group limit"; + } + leaf threshold-limit { + type int32; + description + "Threshold limit"; + } + leaf ig-report-standby-state { + type boolean; + description + "ICCP Group report standby state"; + } + leaf startup-query-interval { + type uint16; + units "second"; + description + "Startup query interval (secs)"; + } + leaf startup-query-count { + type uint8; + description + "Startup query count"; + } + leaf startup-query-mrt { + type uint8; + description + "Startup query MRT (1/10 sec)"; + } + leaf startup-query-port-up { + type boolean; + description + "Startup query on port-up"; + } + leaf startup-query-ig-port-active { + type boolean; + description + "Startup query on ICCP Group port active"; + } + leaf startup-query-tcn { + type boolean; + description + "Startup query on TCN"; + } + leaf startup-query-tcn-sync { + type boolean; + description + "Startup query TCN sync"; + } + leaf startup-query-tcn-always { + type boolean; + description + "Startup query TCN always"; + } + leaf startup-query-process-start { + type boolean; + description + "Startup query on process start"; + } + leaf startup-query-process-start-sync { + type boolean; + description + "Startup query process start sync"; + } + leaf bridge-domain-count { + type uint32; + description + "Bridge domain count"; + } + leaf port-count { + type uint32; + description + "Port count"; + } + leaf default-profile { + type boolean; + description + "Default Profile Enable"; + } + list static-group { + description + "Static group list"; + uses IGMPSN-PROFILE-STATIC-GROUP-BAG; + } + } + + grouping ICCP-APP-ICCP-STATS-BAG { + description + "ICCP Application Statistics"; + leaf received-up-events { + type uint32; + description + "ICCP Up events received"; + } + leaf received-down-events { + type uint32; + description + "ICCP Down events received"; + } + leaf received-congestion-clear-events { + type uint32; + description + "ICCP Congestion Clear events received"; + } + leaf congestion-clear-drop-events { + type uint32; + description + "ICCP Congestion Clear events dropped"; + } + leaf received-congestion-detected-events { + type uint32; + description + "ICCP Congestion Detected events received"; + } + leaf congestion-detected-drop-events { + type uint32; + description + "ICCP Congestion Detected events dropped"; + } + leaf sent-failure-events { + type uint32; + description + "ICCP Tx Failure"; + } + } + + grouping IGMPSN-ICCP-APP-STATS-BAG { + description + "ICCP Application Statistics"; + container port-statistics-per-iccp { + description + "Port stats per ICCP"; + uses IGMPSN-ICCP-APP-RG-PORT-STATS-ST; + } + container group-statistics-per-iccp { + description + "ICCP Group stats per ICCP"; + uses ICCP-APP-ICCP-GROUP-STATS-BAG; + } + container iccp-app-statistics { + description + "ICCP stats"; + uses ICCP-APP-ICCP-STATS-BAG; + } + leaf is-initialized { + type boolean; + description + "ICCP Init state"; + } + } + + grouping IGMPSN-ICCP-APP-RG-PORT-STATS-BAG { + description + "ICCP Redundancy Group Port Statistics"; + container port-statistics { + description + "ICCP Group Port stats"; + uses IGMPSN-ICCP-APP-RG-PORT-STATS-ST; + } + leaf is-initialized { + type boolean; + description + "ICCP Init state"; + } + leaf group-id { + type uint32; + description + "ICCP Group ID"; + } + } + + grouping IGMPSN-ICCP-APP-RG-PEER-DATA-BAG { + description + "igmp snooping Redundancy Group Peer data"; + leaf peer-timestamp { + type uint32; + units "second"; + description + "Peer timestamp (realtime in seconds)"; + } + } + + grouping ICCP-APP-ICCP-STATE-BAG { + description + "ICCP Application State"; + leaf is-initialized { + type boolean; + description + "ICCP Init state"; + } + leaf congestion-detected { + type boolean; + description + "ICCP Congestion Detected"; + } + leaf is-up { + type boolean; + description + "ICCP up/down status"; + } + leaf iccp-create-time { + type uint32; + units "second"; + description + "ICCP Creation timestamp (realtime in seconds)"; + } + leaf redundancy-groups { + type uint32; + description + "ICCP Redundancy Group Count"; + } + leaf redundancy-timestamp { + type uint32; + units "second"; + description + "ICCP Redundancy Group table timestamp (realtime + in seconds)"; + } + } + + grouping IGMPSN-ICCP-APP-RG-DATA-BAG { + description + "ICCP Redundancy Group Data"; + leaf is-initialized { + type boolean; + description + "ICCP Init state"; + } + leaf group-id-xr { + type uint32; + description + "ICCP Group Id"; + } + leaf peers { + type uint32; + description + "ICCP Group Peer Count"; + } + leaf group-state { + type Igmpsn-iccp-app-rg-state; + description + "ICCP Group state"; + } + leaf old-group-state { + type Igmpsn-iccp-app-rg-state; + description + "Old ICCP Group state"; + } + leaf number-of-ports { + type uint32; + description + "Redundancy Group Port Count"; + } + leaf standby-ports { + type uint32; + description + "ICCP Group Standby Interface Count"; + } + leaf active-ports { + type uint32; + description + "ICCP Group Active Interface Count"; + } + leaf down-ports { + type uint32; + description + "ICCP Group Down Interface Count"; + } + leaf create-time { + type uint32; + units "second"; + description + "ICCP Group Creation time (realtime in seconds)"; + } + } + + grouping ICCP-APP-ICCP-GROUP-STATS-BAG { + description + "ICCP Group Statistics"; + leaf received-peer-up-events { + type uint32; + description + "ICCP Group Peer Up events received"; + } + leaf received-peer-down-events { + type uint32; + description + "ICCP Group Peer Down events received"; + } + leaf received-sync-events { + type uint32; + description + "ICCP Group Sync Request events received"; + } + leaf connect-transmit-events { + type uint32; + description + "ICCP Group Connect transmit events"; + } + leaf connect-transmit-failure-events { + type uint32; + description + "ICCP Group Connect transmit failure events"; + } + leaf disconnect-transmit-events { + type uint32; + description + "ICCP Group Disconnect transmit events"; + } + leaf disconnect-transmit-failure-events { + type uint32; + description + "ICCP Group Disconnect transmit failure events"; + } + leaf start-retry-timer-events { + type uint32; + description + "ICCP Group Start Retry Timer events"; + } + } + + grouping IGMPSN-ICCP-APP-RG-PORT-STATS-ST { + description + "ICCP Group Port Statistics"; + leaf active-rx { + type uint32; + description + "ICCP Interface Active events received"; + } + leaf standby-rx { + type uint32; + description + "ICCP Interface Standby events received"; + } + leaf down-rx { + type uint32; + description + "ICCP Interface Down events received"; + } + leaf sync-req-rx { + type uint32; + description + "ICCP Interface Sync Request events received"; + } + leaf sync-req-rx-drop { + type uint32; + description + "ICCP Interface Sync Request events received and + dropped"; + } + leaf sync-req-tx { + type uint32; + description + "ICCP Interface Sync Request transmit events"; + } + leaf sync-req-tx-drop { + type uint32; + description + "ICCP Interface Sync Request trasnmit events + dropped"; + } + leaf sync-rx { + type uint32; + description + "ICCP Interface Sync events received"; + } + leaf sync-rx-drop { + type uint32; + description + "ICCP Interface Sync events received and dropped"; + } + leaf sync-start-rx { + type uint32; + description + "ICCP Interface Sync Start events received"; + } + leaf sync-start-rx-drop { + type uint32; + description + "ICCP Interface Sync Start events received and + dropped"; + } + leaf sync-end-rx { + type uint32; + description + "ICCP Interface Sync End events received"; + } + leaf sync-end-rx-drop { + type uint32; + description + "ICCP Interface Sync End events received and + dropped"; + } + leaf sync-unsolicited-rx { + type uint32; + description + "ICCP Interface Sync Unsolicited events received"; + } + leaf sync-end-unsolicited-rx-drop { + type uint32; + description + "ICCP Interface Sync End Unsolicited events + received and dropped"; + } + leaf sync-invalid-rx { + type uint32; + description + "ICCP Interface Sync Invalid event received"; + } + leaf sync-tx { + type uint32; + description + "ICCP Interface Sync transmit events"; + } + leaf sync-tx-drop { + type uint32; + description + "ICCP Interface Sync transmit events dropped"; + } + leaf app-state-rx { + type uint32; + description + "ICCP Interface App State events received"; + } + leaf app-state-rx-drop { + type uint32; + description + "ICCP Interface App State events received and + dropped"; + } + leaf app-state-tx { + type uint32; + description + "ICCP Interface App State transmit events"; + } + leaf app-state-tx-drop { + type uint32; + description + "ICCP Interface App State transmit events dropped"; + } + leaf start-retry-timer { + type uint32; + description + "ICCP Interface Start Retry Timer events"; + } + } + + grouping IGMPSN-ICCP-APP-RG-STATS-BAG { + description + "ICCP Redundancy Group Statistics"; + container port-statistics { + description + "ICCP Group Port stats"; + uses IGMPSN-ICCP-APP-RG-PORT-STATS-ST; + } + container group-statistics { + description + "ICCP Group stats"; + uses ICCP-APP-ICCP-GROUP-STATS-BAG; + } + leaf is-initialized { + type boolean; + description + "ICCP Init state"; + } + leaf group-id-xr { + type uint32; + description + "ICCP Group Id"; + } + } + + grouping IGMPSN-ICCP-APP-RG-PORT-DATA-BAG { + description + "ICCP Redundancy Group Port Data"; + leaf is-initialized { + type boolean; + description + "ICCP Init state"; + } + leaf group-id { + type uint32; + description + "ICCP Group Id"; + } + leaf redundancy-state { + type Igmpsn-bag-iccp-app-redundancy-state; + description + "ICCP Group Port Redundancy state"; + } + leaf port-state { + type Igmpsn-iccp-app-rg-port-state; + description + "ICCP Group Port state"; + } + leaf old-port-state { + type Igmpsn-iccp-app-rg-port-state; + description + "Old ICCP Group Port state"; + } + leaf creation-time { + type uint32; + units "second"; + description + "ICCP Group Port creation timestamp (realtime in + seconds)"; + } + leaf redundancy-state-timestamp { + type uint32; + units "second"; + description + "Port Redundancy state timestamp (realtime in + seconds)"; + } + leaf sync-timestamp { + type uint32; + units "second"; + description + "Sync timstamp (realtime in seconds)"; + } + leaf request-id { + type uint16; + description + "Request Id"; + } + leaf static-m-router { + type boolean; + description + "Static mrouter"; + } + leaf dynamic-m-router { + type boolean; + description + "Dynamic mrouter"; + } + leaf number-of-port-groups { + type uint32; + description + "Number of port groups"; + } + leaf number-of-port-groups-source { + type uint32; + description + "Number of dynamic port source groups"; + } + leaf is-querier-port { + type boolean; + description + "Is querier port"; + } + } + + grouping IGMPSN-EDM-GROUP-SOURCE-PORT-BAG { + description + "IGMPSN EDM GROUP SOURCE PORT BAG"; + container expires { + description + "Source expires in seconds"; + uses RUNNING-TIMER; + } + leaf interface-name { + type string { + length "0..321"; + } + description + "Port name"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf pseudowire { + type boolean; + description + "Pseudwire"; + } + leaf port-exclude { + type boolean; + description + "Port exclude"; + } + leaf static-oport { + type boolean; + description + "Static o-port"; + } + leaf dynamic-oport { + type boolean; + description + "Dynamic o-port"; + } + leaf evpn-remote-oport { + type boolean; + description + "BGP learnt o-port"; + } + leaf explicit-tracking-enabled { + type boolean; + description + "Is explicit tracking enabled"; + } + leaf group-id { + type uint32; + description + "ICCP Group ID"; + } + leaf iccp-port-redundancy-state { + type Igmpsn-bag-iccp-app-redundancy-state; + description + "ICCP Group port redundancy state"; + } + list igmpsn-edm-moi-id { + description + "EVPN moi ID list"; + uses IGMPSN-EDM-MOI-ID-BAG; + } + } + + grouping IGMPSN-EDM-GROUP-SOURCE-BAG { + description + "IGMPSN EDM GROUP SOURCE BAG"; + container source { + description + "Source"; + uses IGMPSN-ADDRTYPE; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf include-port-count { + type int32; + description + "Include port count"; + } + leaf exclude-port-count { + type int32; + description + "Exclude port count"; + } + leaf static-port-count { + type int32; + description + "static port count"; + } + leaf sg-mroute-pd-data { + type yang:hex-string; + description + "SG mroute platform dependent opaque data"; + } + list include-port { + description + "Include port list"; + uses IGMPSN-EDM-GROUP-SOURCE-PORT-BAG; + } + list exclude-port { + description + "Exclude port list"; + uses IGMPSN-EDM-GROUP-SOURCE-PORT-BAG; + } + } + + grouping IGMPSN-EDM-MOI-ID-BAG { + description + "IGMPSN EDM MOI ID BAG"; + leaf moi-id { + type uint32; + description + "EVPN peer moi_id"; + } + leaf label { + type uint32; + description + "Label assigned to EVPN peer"; + } + } + + grouping RUNNING-TIMER { + description + "Running Timer union"; + leaf timer-running { + type Set-bool; + description + "TimerRunning"; + } + leaf value { + when "../timer-running = '1'" { + description + "../TimerRunning = '1'"; + } + type int32; + description + "Value"; + } + } + + grouping IGMPSN-EDM-GROUP-O-PORT-BAG { + description + "IGMPSN EDM GROUP O PORT BAG"; + container expires { + description + "Group expires in seconds"; + uses RUNNING-TIMER; + } + leaf interface-name { + type string { + length "0..321"; + } + description + "Port name"; + } + leaf version { + type uint8; + description + "Version"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf pseudowire { + type boolean; + description + "Pseudowire"; + } + leaf static-oport { + type boolean; + description + "Static o-port"; + } + leaf dynamic-oport { + type boolean; + description + "Dynamic o-port"; + } + leaf evpn-remote-oport { + type boolean; + description + "BGP learnt o-port"; + } + leaf explicit-tracking-enabled { + type boolean; + description + "Is explicit tracking enabled"; + } + leaf group-id { + type uint32; + description + "ICCP Group ID"; + } + leaf iccp-port-redundancy-state { + type Igmpsn-bag-iccp-app-redundancy-state; + description + "ICCP Group port redundancy state"; + } + list igmpsn-edm-moi-id { + description + "EVPN moi ID list"; + uses IGMPSN-EDM-MOI-ID-BAG; + } + } + + grouping IGMPSN-ADDRTYPE { + description + "IGMPSN ADDRTYPE"; + leaf af-name { + type Igmpsn-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + } + + grouping IGMPSN-EDM-GROUP-BAG { + description + "IGMPSN EDM GROUP BAG"; + container group-address-xr { + description + "Group address"; + uses IGMPSN-ADDRTYPE; + } + leaf bridge-domain-name { + type string { + length "0..65"; + } + description + "Bridge domain name"; + } + leaf version { + type uint8; + description + "Version"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf group-exclude { + type boolean; + description + "Group exclude"; + } + leaf oport-count { + type int32; + description + "O port count"; + } + leaf source-count { + type int32; + description + "Source count"; + } + leaf include-source-count { + type int32; + description + "Include source count"; + } + leaf exclude-source-count { + type int32; + description + "Exclude source count"; + } + leaf static-source-count { + type int32; + description + "Static source count"; + } + leaf star-g-mroute-pd-data { + type yang:hex-string; + description + "StarG mroute platform dependent opaque data"; + } + leaf platform-data { + type string { + length "0..128"; + } + description + "Platform Data "; + } + list oport { + description + "O-port list"; + uses IGMPSN-EDM-GROUP-O-PORT-BAG; + } + list source { + description + "Source list"; + uses IGMPSN-EDM-GROUP-SOURCE-BAG; + } + } + + grouping IGMPSN-PORT-NAME-BAG { + description + "IGMPSN PORT NAME BAG"; + leaf name { + type string { + length "0..321"; + } + description + "Port name"; + } + leaf pseudowire { + type boolean; + description + "Pseudowire"; + } + } + + grouping IGMPSN-BD-NAME-BAG { + description + "IGMPSN BD NAME BAG"; + leaf name { + type string { + length "0..65"; + } + description + "Bridge domain name"; + } + } + + grouping IGMPSN-EDM-PROFILE-REFERENCE-BAG { + description + "IGMP/MLD snoop profile reference"; + leaf profile-name-xr { + type string { + length "0..33"; + } + description + "Profile name"; + } + list bridge-domain-name { + description + "Bridge domain name list"; + uses IGMPSN-BD-NAME-BAG; + } + list port-name { + description + "Port name list"; + uses IGMPSN-PORT-NAME-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper.yang new file mode 100644 index 000000000..7de026ace --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2-snoop-oper.yang @@ -0,0 +1,641 @@ +module Cisco-IOS-XR-l2-snoop-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2-snoop-oper"; + prefix l2-snoop-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-l2-snoop-oper-sub1 { + revision-date 2022-06-28; + } + + 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 l2-snoop package operational data. + + This module contains definitions + for the following management objects: + mld-snooping: MLD snooping operational data + igmp-snooping: IGMP snooping operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-28 { + description + "backward compatible edit, in interface-name. + 2022-03-30 + backward compatible addition, in leaf l2fib-replay-time was added"; + semver:module-version "1.1.0"; + } + revision 2021-06-21 { + description + "Added the Snooping oper yang model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mld-snooping { + config false; + description + "MLD snooping operational data"; + container profile-references { + description + "MLD Snooping Profile Reference Table"; + list profile-reference { + key "profile-name"; + description + "MLD Snooping Reference Profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Profile name"; + } + uses IGMPSN-EDM-PROFILE-REFERENCE-BAG; + } + } + container groups { + description + "MLD Snooping Group Table"; + list group { + key "bd-name group-address"; + description + "MLD Snooping Group"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Bridge domain name"; + } + leaf group-address { + type inet:ipv6-address-no-zone; + description + "IP address of group"; + } + uses IGMPSN-EDM-GROUP-BAG; + } + } + container redundancy { + description + "MLD redundancy"; + container iccp { + description + "ICCP information"; + container ports { + description + "MLDSN ICCP ports"; + list port { + key "port-name"; + description + "MLDSN ICCP port"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-DATA-BAG; + } + } + container group-statistics { + description + "ICCP group statistics"; + list group-statistic { + key "group-id"; + description + "ICCP group statistics"; + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + uses IGMPSN-ICCP-APP-RG-STATS-BAG; + } + } + container groups { + description + "ICCP Groups"; + list group { + key "group-id"; + description + "ICCP group"; + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + uses IGMPSN-ICCP-APP-RG-DATA-BAG; + } + } + container general { + description + "MLDSN ICCP general information"; + uses ICCP-APP-ICCP-STATE-BAG; + } + container group-peers { + description + "ICCP group peers"; + list group-peer { + key "group-id"; + description + "ICCP group peer"; + container peers { + description + "ICCP group peers"; + list peer { + key "peer-address"; + description + "ICCP group peer"; + leaf peer-address { + type inet:ipv6-address-no-zone; + description + "Peer IP address"; + } + uses IGMPSN-ICCP-APP-RG-PEER-DATA-BAG; + } + } + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + } + } + container port-statistics { + description + "MLDSN ICCP port statistics"; + list port-statistic { + key "port-name"; + description + "MLDSN ICCP port statistics"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-STATS-BAG; + } + } + container group-ports { + description + "ICCP group ports"; + list group-port { + key "group-id"; + description + "ICCP group port"; + container port-statistics { + description + "ICCP group port statistics"; + list port-statistic { + key "port-name"; + description + "ICCP group port statistics"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-STATS-BAG; + } + } + container ports { + description + "ICCP group ports"; + list port { + key "port-name"; + description + "ICCP group port"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-DATA-BAG; + } + } + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + } + } + container statistics { + description + "MLDSN ICCP statistics"; + uses IGMPSN-ICCP-APP-STATS-BAG; + } + } + } + container profiles { + description + "MLD Snooping Profile Table"; + list profile { + key "profile-name"; + description + "MLD Snooping Profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Profile name"; + } + uses IGMPSN-EDM-PROFILE-BAG; + } + } + container bridge-domains { + description + "MLD Snooping Bridge Domain Table"; + list bridge-domain { + key "bd-name"; + description + "MLD Snooping BridgeDomain"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Bridge domain name"; + } + uses IGMPSN-EDM-BD-BAG; + } + } + container profile-summary { + description + "MLD Snooping Profile Summary"; + uses IGMPSN-EDM-PROFILE-SUMMARY-BAG; + } + container ports { + description + "MLD Snooping Port Table"; + list port { + key "port-name"; + description + "MLD Snooping Port"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-EDM-INTF-BAG; + } + } + container summary { + description + "MLD Snooping Summary"; + uses IGMPSN-EDM-SUMMARY-BAG; + } + container port-groups { + description + "MLD Snooping Group Table"; + list port-group { + key "bd-name port-name group-address"; + description + "MLD Snooping Port Group"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Bridge domain name"; + } + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + leaf group-address { + type inet:ipv6-address-no-zone; + description + "IP address of group"; + } + uses IGMPSN-EDM-PORT-GROUP-BAG; + } + } + } + container igmp-snooping { + config false; + description + "IGMP snooping operational data"; + container ports { + description + "IGMP Snooping Port Table"; + list port { + key "port-name"; + description + "IGMP Snooping Port"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-EDM-INTF-BAG; + } + } + container port-groups { + description + "IGMP Snooping Group Table"; + list port-group { + key "bd-name port-name group-address"; + description + "IGMP Snooping Port Group"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Bridge domain name"; + } + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + leaf group-address { + type inet:ipv4-address-no-zone; + description + "IP address of group"; + } + uses IGMPSN-EDM-PORT-GROUP-BAG; + } + } + container groups { + description + "IGMP Snooping Group Table"; + list group { + key "bd-name group-address"; + description + "IGMP Snooping Group"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Bridge domain name"; + } + leaf group-address { + type inet:ipv4-address-no-zone; + description + "IP address of group"; + } + uses IGMPSN-EDM-GROUP-BAG; + } + } + container summary { + description + "IGMP Snooping Summary"; + uses IGMPSN-EDM-SUMMARY-BAG; + } + container redundancy { + description + "IGMP redundancy"; + container iccp { + description + "ICCP information"; + container group-statistics { + description + "ICCP group statistics"; + list group-statistic { + key "group-id"; + description + "ICCP group statistics"; + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + uses IGMPSN-ICCP-APP-RG-STATS-BAG; + } + } + container ports { + description + "IGMPSN ICCP ports"; + list port { + key "port-name"; + description + "IGMPSN ICCP port"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-DATA-BAG; + } + } + container general { + description + "IGMPSN ICCP general information"; + uses ICCP-APP-ICCP-STATE-BAG; + } + container group-ports { + description + "ICCP group ports"; + list group-port { + key "group-id"; + description + "ICCP group port"; + container port-statistics { + description + "ICCP group port statistics"; + list port-statistic { + key "port-name"; + description + "ICCP group port statistics"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-STATS-BAG; + } + } + container ports { + description + "ICCP group ports"; + list port { + key "port-name"; + description + "ICCP group port"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-DATA-BAG; + } + } + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + } + } + container group-peers { + description + "ICCP group peers"; + list group-peer { + key "group-id"; + description + "ICCP group peer"; + container peers { + description + "ICCP group peers"; + list peer { + key "peer-address"; + description + "ICCP group peer"; + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "Peer IP address"; + } + uses IGMPSN-ICCP-APP-RG-PEER-DATA-BAG; + } + } + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + } + } + container statistics { + description + "IGMPSN ICCP statistics"; + uses IGMPSN-ICCP-APP-STATS-BAG; + } + container port-statistics { + description + "IGMPSN ICCP port statistics"; + list port-statistic { + key "port-name"; + description + "IGMPSN ICCP port statistics"; + leaf port-name { + type xr:Interface-name; + description + "Port name"; + } + uses IGMPSN-ICCP-APP-RG-PORT-STATS-BAG; + } + } + container groups { + description + "ICCP Groups"; + list group { + key "group-id"; + description + "ICCP group"; + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "ICCP group ID"; + } + uses IGMPSN-ICCP-APP-RG-DATA-BAG; + } + } + } + } + container bridge-domains { + description + "IGMP Snooping Bridge Domain Table"; + list bridge-domain { + key "bd-name"; + description + "IGMP Snooping BridgeDomain"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Bridge domain name"; + } + uses IGMPSN-EDM-BD-BAG; + } + } + container profile-references { + description + "IGMP Snooping Profile Reference Table"; + list profile-reference { + key "profile-name"; + description + "IGMP Snooping Reference Profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Profile name"; + } + uses IGMPSN-EDM-PROFILE-REFERENCE-BAG; + } + } + container profiles { + description + "IGMP Snooping Profile Table"; + list profile { + key "profile-name"; + description + "IGMP Snooping Profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Profile name"; + } + uses IGMPSN-EDM-PROFILE-BAG; + } + } + container profile-summary { + description + "IGMP Snooping Profile Summary"; + uses IGMPSN-EDM-PROFILE-SUMMARY-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-cfg.yang new file mode 100644 index 000000000..6132953eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-cfg.yang @@ -0,0 +1,157 @@ +module Cisco-IOS-XR-l2rib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2rib-cfg"; + prefix l2rib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-l2vpn-cfg { + prefix a1; + } + + 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 l2rib package configuration. + + This YANG module augments the + Cisco-IOS-XR-l2vpn-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-09-09 { + description + "New config parameter, reset-freeze-count-interval added."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-09-26 { + description + "Duplicate detection parameters config moved from l2vpn to l2rib."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2rib-retry-count { + type union { + type enumeration { + enum "infinity" { + value 1001; + description + "Infinite retry count"; + } + } + type uint32 { + range "0..1001"; + } + } + description + "L2rib retry count"; + } + + grouping DUPLICATE-DETECTION { + description + "Common node of mac, ipv4, ipv6"; + container duplicate-detection { + description + "EVPN HOST [MAC/IPv4/IPv6] DUP-DETECT + Configuration"; + leaf move-count { + type uint32 { + range "1..1000"; + } + default "5"; + description + "Number of moves to occur within the + MoveInterval before a MAC/IPv4/IPv6 address is + marked as duplicate"; + } + leaf retry-count { + type L2rib-retry-count; + description + "Number of times to automatically clear the + duplicate flag on a MAC/IPV4/IPV6 route before + permanently freezing it"; + } + leaf freeze-time { + type uint32 { + range "5..3600"; + } + default "30"; + description + "Length of time to lock the MAC/IPv4/IPv6 after + a MAC/IPv4/IPv6 has been marked as duplicate"; + } + leaf reset-freeze-count-interval { + type uint32 { + range "1..48"; + } + default "24"; + description + "Interval after which the count of duplicate + detection events used to determine whether + MAC/IPv4/IPv6 needs to be permanently frozen, + is reset."; + } + leaf move-interval { + type uint32 { + range "5..3600"; + } + default "180"; + description + "Interval within which MoveCount number of moves + need to happen before a MAC/IPv4/IPv6 route is + marked as duplicate"; + } + leaf disable { + type empty; + description + "Set to disable duplicate detection"; + } + } + } + + augment "/a1:evpn/a1:evpn-tables" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + container host { + description + "EVPN HOST Configuration"; + container ipv6 { + description + "EVPN HOST IPV6-ADDR Configuration"; + uses DUPLICATE-DETECTION; + } + container ipv4 { + description + "EVPN HOST IPV4-ADDR Configuration"; + uses DUPLICATE-DETECTION; + } + container mac { + description + "EVPN HOST MAC-ADDR Configuration"; + uses DUPLICATE-DETECTION; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper-sub1.yang new file mode 100644 index 000000000..8dc6e3ef1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper-sub1.yang @@ -0,0 +1,1349 @@ +submodule Cisco-IOS-XR-l2rib-oper-sub1 { + belongs-to Cisco-IOS-XR-l2rib-oper { + prefix Cisco-IOS-XR-l2rib-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2rib package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-09 { + description + "Changes made in the bag to display IID next-hop."; + semver:module-version "2.2.0"; + } + revision 2019-11-22 { + description + "Added to path for Mac/IP Table and Mac/IP Detail Table"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2rib-mac-route { + type enumeration { + enum "l2rib-mac-route-type-invalid" { + value 0; + description + "l2rib mac route type invalid"; + } + enum "l2rib-mac-route-type-regular" { + value 1; + description + "l2rib mac route type regular"; + } + enum "l2rib-mac-route-type-evpn-esi" { + value 2; + description + "l2rib mac route type evpn esi"; + } + enum "l2rib-mac-route-type-bmac" { + value 3; + description + "l2rib mac route type bmac"; + } + } + description + "L2rib mac route"; + } + + typedef L2rib-afi { + type enumeration { + enum "l2rib-address-family-ipv4" { + description + "l2rib address family ipv4"; + } + enum "l2rib-address-family-ipv6" { + description + "l2rib address family ipv6"; + } + enum "l2rib-address-family-invalid" { + description + "l2rib address family invalid"; + } + } + description + "L2rib afi"; + } + + typedef L2rib-mac-addr { + type yang:mac-address; + description + "L2rib mac addr"; + } + + typedef L2rib-ipv6-addr { + type inet:ipv6-address; + description + "L2rib ipv6 addr"; + } + + typedef L2rib-next-hop { + type enumeration { + enum "l2rib-next-hop-invalid" { + value 0; + description + "l2rib next hop invalid"; + } + enum "l2rib-next-hop-interface-ordinal" { + value 1; + description + "l2rib next hop interface ordinal"; + } + enum "l2rib-next-hop-interface-index" { + value 2; + description + "l2rib next hop interface index"; + } + enum "l2rib-next-hop-mac" { + value 3; + description + "l2rib next hop mac"; + } + enum "l2rib-next-hop-ipv4" { + value 4; + description + "l2rib next hop ipv4"; + } + enum "l2rib-next-hop-ipv6" { + value 5; + description + "l2rib next hop ipv6"; + } + enum "l2rib-next-hop-overlay" { + value 6; + description + "l2rib next hop overlay"; + } + enum "l2rib-next-hop-site-index" { + value 7; + description + "l2rib next hop site index"; + } + enum "l2rib-next-hop-label-ed" { + value 8; + description + "l2rib next hop label ed"; + } + enum "l2rib-next-hop-xid" { + value 9; + description + "l2rib next hop xid"; + } + enum "l2rib-next-hop-iid" { + value 11; + description + "l2rib next hop iid"; + } + } + description + "L2rib next hop"; + } + + typedef L2rib-bag-producer-state { + type enumeration { + enum "l2rib-bag-prod-state-initial" { + value 0; + description + "Initial"; + } + enum "l2rib-bag-prod-state-staled" { + value 1; + description + "Stale"; + } + enum "l2rib-bag-prod-state-re-connected" { + value 2; + description + "Reconnected"; + } + enum "l2rib-bag-prod-state-converged" { + value 3; + description + "Converged"; + } + enum "l2rib-bag-prod-state-delete-p-end" { + value 4; + description + "Delete Pending"; + } + } + description + "L2RIB Producer States"; + } + + typedef L2rib-bag-producer-id { + type enumeration { + enum "l2rib-bag-prod-none" { + value 0; + description + "None"; + } + enum "l2rib-bag-prod-best-route" { + value 1; + description + "Best Route"; + } + enum "l2rib-bag-prod-static" { + value 2; + description + "Static"; + } + enum "l2rib-bag-prod-local" { + value 3; + description + "Local"; + } + enum "l2rib-bag-prod-isis" { + value 4; + description + "IS IS"; + } + enum "l2rib-bag-prod-bgp" { + value 5; + description + "BGP"; + } + enum "l2rib-bag-prod-igmp" { + value 6; + description + "IGMP"; + } + enum "l2rib-bag-prod-prod-mld" { + value 7; + description + "MLD"; + } + enum "l2rib-bag-prod-prod-otv" { + value 8; + description + "OTV"; + } + enum "l2rib-bag-prod-prod-l2vpn" { + value 9; + description + "L2VPN"; + } + enum "l2rib-bag-prod-prod-mac-mgr" { + value 10; + description + "MAC MGR"; + } + enum "l2rib-bag-prod-prod-vxlan" { + value 11; + description + "VXLAN"; + } + enum "l2rib-bag-prod-gateway-local" { + value 12; + description + "GW Local"; + } + enum "l2rib-bag-prod-prod-arp" { + value 13; + description + "ARP"; + } + enum "l2rib-bag-prod-prod-local-proxy" { + value 14; + description + "Local Proxy"; + } + enum "l2rib-bag-prod-prod-all" { + value 255; + description + "All"; + } + } + description + "L2RIB Producer Types"; + } + + typedef L2rib-bag-obj { + type enumeration { + enum "l2rib-bag-obj-type-min" { + value 0; + description + "Invalid Object Type"; + } + enum "l2rib-bag-obj-type-all" { + value 1; + description + "All"; + } + enum "l2rib-bag-obj-type-mac" { + value 2; + description + "Mac"; + } + enum "l2rib-bag-obj-type-ipv4-mcast" { + value 3; + description + "IPv4 Multicast"; + } + enum "l2rib-bag-obj-type-ipv6-mcast" { + value 4; + description + "IPv6 Multicast"; + } + enum "l2rib-bag-obj-type-topology" { + value 5; + description + "Topology"; + } + enum "l2rib-bag-obj-type-ead" { + value 6; + description + "Ethernet AD"; + } + enum "l2rib-bag-obj-type-evpn-pl" { + value 7; + description + "EVPN Path List"; + } + enum "l2rib-bag-obj-type-topo-attribute" { + value 8; + description + "Topology Attribute"; + } + enum "l2rib-bag-obj-type-imet-route" { + value 9; + description + "IMET"; + } + enum "l2rib-bag-obj-type-mac-ip" { + value 13; + description + "Mac IP"; + } + } + description + "L2RIB Object Types"; + } + + grouping L2RIB-IMET-ROUTE-DETAIL { + description + "L2RIB IMET ROUTE DETAIL"; + container imet-route-base { + description + "Imet Route base information"; + uses L2RIB-IMET-ROUTE; + } + leaf tunnel-id { + type string; + description + "Tunnel Id"; + } + leaf flags { + type uint32; + description + "IMET route flags"; + } + leaf tunnel-type { + type uint32; + description + "IMET route tunnel type"; + } + leaf l2r-label { + type uint32; + description + "Label"; + } + leaf encap-type { + type uint32; + description + "Encap Type"; + } + leaf last-update-timestamp { + type uint64; + description + "Last Update Timestamp"; + } + } + + grouping L2RIB-MAC-ROUTE-DETAIL { + description + "Detailed L2RIB MAC Route"; + container mac-route { + description + "MAC Route"; + uses L2RIB-MAC-ROUTE; + } + container rt-tlv { + description + "Mac Route Opaque Data TLV"; + uses L2RIB-TLV; + } + leaf sequence-number { + type uint32; + description + "MAC route sequence Number"; + } + leaf flags-xr { + type xr:Hex-integer; + description + "MAC route flags"; + } + leaf baseflags { + type xr:Hex-integer; + description + "BASE flags"; + } + leaf soo { + type uint32; + description + "SOO"; + } + leaf slot-id { + type uint32; + description + "Slot ID"; + } + leaf esi { + type string; + description + "ESI"; + } + leaf last-update-timestamp { + type uint64; + description + "Last Update Timestamp"; + } + } + + grouping L2RIB-IMET-ROUTE { + description + "L2RIB IMET ROUTE"; + leaf vtepi-paddr { + type string; + description + "Originating Router IP Address"; + } + leaf producer-id { + type uint8; + description + "Producer of Imet route"; + } + leaf topo-id { + type uint32; + description + "Topo ID"; + } + leaf ethernet-tag-id { + type uint32; + description + "Ethernet Tag ID"; + } + } + + grouping L2RIB-MAC-ROUTE-BMAC { + description + "L2RIB BMAC route"; + container path-list { + description + "Path list information"; + uses L2RIB-PATH-LIST; + } + leaf bmac-address { + type yang:mac-address; + description + "BMAC Address"; + } + leaf forward-state { + type boolean; + description + "Forwarding State. True means forward, False + means drop."; + } + } + + grouping L2RIB-PATH-LIST-MAC { + description + "L2RIB PATH LIST MAC"; + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + } + + grouping L2RIB-PATH-LIST-ESI { + description + "L2RIB PATH LIST ESI"; + container ethernet-segment-id { + description + "Ethernet Segment Identifier"; + uses L2RIB-ESI; + } + leaf resolved { + type boolean; + description + "Path list Resolved"; + } + list mac-update-next-hop-array { + description + "Array of Next Hops from MAC Update"; + uses L2RIB-NEXT-HOP; + } + } + + grouping L2RIB-PL { + description + "L2RIB PL"; + container path-list-esi { + when "../type = 'l2rib-mac-route-type-evpn-esi'" { + description + "../Type = 'L2RIB_MAC_ROUTE_TYPE_EVPN_ESI'"; + } + description + "ESI Path List"; + uses L2RIB-PATH-LIST-ESI; + } + container path-list-mac { + when "../type = 'l2rib-mac-route-type-bmac'" { + description + "../Type = 'L2RIB_MAC_ROUTE_TYPE_BMAC'"; + } + description + "MAC Path List"; + uses L2RIB-PATH-LIST-MAC; + } + leaf type { + type L2rib-mac-route; + description + "Type"; + } + } + + grouping L2RIB-PATH-LIST { + description + "L2RIB PATH LIST"; + container path-list-info { + description + "Type-specific Path List info"; + uses L2RIB-PL; + } + leaf producer-id { + type uint8; + description + "ID of EAD route producer"; + } + leaf mac-count { + type uint32; + description + "Number of MAC routes bound to this Path list"; + } + leaf local-label { + type uint32; + description + "Path list local Label"; + } + list next-hop-array { + description + "Array of Next Hops for MAC Path List"; + uses L2RIB-NEXT-HOP; + } + } + + grouping L2RIB-ESI { + description + "L2RIB ESI"; + leaf system-priority { + type uint16; + description + "LACP System Priority"; + } + leaf system-id { + type yang:mac-address; + description + "LACP System Id"; + } + leaf port-key { + type uint16; + description + "LACP Port Key"; + } + } + + grouping L2RIB-MAC-ROUTE-EVPN-ESI { + description + "L2RIB EVPN ESI MAC route"; + container ethernet-segment-id { + description + "Ethernet Segment Identifier"; + uses L2RIB-ESI; + } + container path-list { + description + "Path list information. Set for detailed MAC + route information"; + uses L2RIB-PATH-LIST; + } + leaf sequence-number { + type uint32; + description + "MAC route sequence number"; + } + leaf forward-state { + type boolean; + description + "Forwarding State. True means forward, False + means drop."; + } + } + + grouping L2RIB-MAC-ROUTE-REGULAR { + description + "L2RIB Regular MAC route"; + container next-hop { + description + "Next Hop"; + uses L2RIB-NEXT-HOP; + } + container backup-next-hop { + description + "Secondary Next Hop"; + uses L2RIB-NEXT-HOP; + } + } + + grouping MAC-ROUTE { + description + "MAC ROUTE"; + container regular { + when "../type = 'l2rib-mac-route-type-regular'" { + description + "../Type = 'L2RIB_MAC_ROUTE_TYPE_REGULAR'"; + } + description + "Regular MAC route"; + uses L2RIB-MAC-ROUTE-REGULAR; + } + container evpn-esi { + when "../type = 'l2rib-mac-route-type-evpn-esi'" { + description + "../Type = 'L2RIB_MAC_ROUTE_TYPE_EVPN_ESI'"; + } + description + "EVPN ESI MAC route"; + uses L2RIB-MAC-ROUTE-EVPN-ESI; + } + container bmac { + when "../type = 'l2rib-mac-route-type-bmac'" { + description + "../Type = 'L2RIB_MAC_ROUTE_TYPE_BMAC'"; + } + description + "BMAC route"; + uses L2RIB-MAC-ROUTE-BMAC; + } + leaf type { + type L2rib-mac-route; + description + "Type"; + } + } + + grouping L2RIB-MAC-ROUTE { + description + "L2RIB MAC Route"; + container route { + description + "MAC route"; + uses MAC-ROUTE; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + leaf admin-distance { + type uint8; + description + "Admin Distance"; + } + leaf producer-id { + type uint8; + description + "Producer ID"; + } + leaf topology-id { + type uint32; + description + "Topology ID"; + } + } + + grouping L2RIB-TLV { + description + "L2RIB Opaque Data TLV"; + leaf tlv-type { + type uint16; + description + "TLV Type"; + } + leaf tlv-len { + type uint16; + description + "TLV Length"; + } + list tlv-val { + description + "TLV Value"; + leaf entry { + type uint8; + description + "TLV Value"; + } + } + } + + grouping LABELED-NEXT-HOP { + description + "LABELED NEXT HOP"; + leaf address-family { + type L2rib-afi; + description + "L2RIB Address Family"; + } + leaf ip-address { + type string; + description + "IP Address"; + } + leaf label { + type uint32; + description + "Label"; + } + leaf internal { + type boolean; + description + "Internal Label"; + } + } + + grouping NEXT-HOP { + description + "NEXT HOP"; + container labeled { + when "../type = 'l2rib-next-hop-label-ed'" { + description + "../Type = 'L2RIB_NEXT_HOP_LABELED'"; + } + description + "Labeled Next Hop"; + uses LABELED-NEXT-HOP; + } + leaf type { + type L2rib-next-hop; + description + "Type"; + } + leaf ipv4 { + when "../type = 'l2rib-next-hop-ipv4'" { + description + "../Type = 'L2RIB_NEXT_HOP_IPV4'"; + } + type inet:ipv4-address; + description + "IPV4 address Next Hop"; + } + leaf ipv6 { + when "../type = 'l2rib-next-hop-ipv6'" { + description + "../Type = 'L2RIB_NEXT_HOP_IPV6'"; + } + type L2rib-ipv6-addr; + description + "IPV6 address Next Hop"; + } + leaf mac { + when "../type = 'l2rib-next-hop-mac'" { + description + "../Type = 'L2RIB_NEXT_HOP_MAC'"; + } + type L2rib-mac-addr; + description + "MAC address Next Hop"; + } + leaf interface-handle { + when "../type = 'l2rib-next-hop-interface-index'" { + description + "../Type = 'L2RIB_NEXT_HOP_INTERFACE_INDEX'"; + } + type xr:Interface-name; + description + "Intefrace Handle Next Hop"; + } + leaf xid { + when "../type = 'l2rib-next-hop-xid'" { + description + "../Type = 'L2RIB_NEXT_HOP_XID'"; + } + type uint32; + description + "XID Next Hop"; + } + leaf iid { + when "../type = 'l2rib-next-hop-iid'" { + description + "../Type = 'L2RIB_NEXT_HOP_IID'"; + } + type uint32; + description + "IID Next Hop"; + } + } + + grouping L2RIB-NEXT-HOP { + description + "L2RIB NEXT HOP"; + container next-hop { + description + "Next hop"; + uses NEXT-HOP; + } + leaf topology-id { + type uint32; + description + "Next-hop TOPOLOGY ID"; + } + leaf flags { + type uint16; + description + "Next-hop flags"; + } + } + + grouping L2RIB-MAC-IP-ROUTE { + description + "L2RIB MAC-IP Route"; + container next-hop { + description + "Next Hop"; + uses L2RIB-NEXT-HOP; + } + container backup-next-hop { + description + "Secondary Next Hop"; + uses L2RIB-NEXT-HOP; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + leaf ip-address { + type string; + description + "IP Address"; + } + leaf admin-distance { + type uint8; + description + "Admin Distance"; + } + leaf producer-id { + type uint8; + description + "Producer ID"; + } + leaf topology-id { + type uint32; + description + "Topology ID"; + } + } + + grouping L2RIB-MAC-IP-ROUTE-DETAIL { + description + "Detailed L2RIB MAC-IP Route"; + container mac-ip-route { + description + "MAC-IP Route"; + uses L2RIB-MAC-IP-ROUTE; + } + container rt-tlv { + description + "Mac-IP Route Opaque Data TLV"; + uses L2RIB-TLV; + } + container nh-tlv { + description + "Mac-IP Route Opaque NH TLV"; + uses L2RIB-TLV; + } + leaf sequence-number { + type uint32; + description + "MAC-IP route sequence Number"; + } + leaf flags-xr { + type xr:Hex-integer; + description + "MAC-IP route flags"; + } + leaf soo { + type uint32; + description + "SOO"; + } + leaf last-update-timestamp { + type uint64; + description + "Last Update Timestamp"; + } + } + + grouping L2RIB-PROD-INFO { + description + "L2RIB PROD INFO"; + leaf object-type { + type L2rib-bag-obj; + description + "Object Type"; + } + leaf producer-id { + type L2rib-bag-producer-id; + description + "Producer ID"; + } + leaf producer-name { + type string; + description + "Producer Name"; + } + leaf admin-distance { + type uint32; + description + "Admin Distance"; + } + leaf purge-time { + type uint32; + description + "Purge Time"; + } + } + + grouping L2RIB-CLIENT-DETAIL { + description + "L2RIB CLIENT DETAIL"; + container client { + description + "Non-detail Client bag"; + uses L2RIB-CLIENT; + } + container registration-table-statistics { + description + "Registration table statistics"; + uses L2RIB-PROD-STATS; + } + leaf producer-count { + type uint8; + description + "Number of Producers"; + } + leaf last-update-timestamp { + type uint64; + description + "Last Update Timestamp"; + } + list producer-array { + description + "List of Producers"; + uses L2RIB-PROD-INFO; + } + } + + grouping L2RIB-TOPOLOGY { + description + "L2RIB TOPOLOGY"; + leaf topology-id { + type uint32; + description + "Topology ID"; + } + leaf topology-name { + type string; + description + "Topology Name"; + } + leaf topology-type { + type uint32; + description + "Topology Type"; + } + } + + grouping L2RIB-TOPOLOGY-DETAIL { + description + "L2RIB TOPOLOGY DETAIL"; + container topology { + description + "Topology"; + uses L2RIB-TOPOLOGY; + } + leaf l2r-vni { + type uint32; + description + "l2r vni"; + } + leaf l2r-encap-type { + type uint16; + description + "l2r encap type"; + } + leaf l2r-nve-iod { + type uint32; + description + "l2r nve iod"; + } + leaf l2r-nve-ifhandle { + type uint32; + description + "l2r nve ifhandle"; + } + leaf vtep-ip { + type string; + description + "VTEP IP"; + } + leaf l2r-topo-txid { + type uint32; + description + "l2r topo txid"; + } + leaf l2r-topo-flags { + type uint32; + description + "Topology Flags"; + } + leaf l2r-subtype { + type uint8; + description + "Topology Subtype"; + } + leaf pad1 { + type yang:hex-string; + description + "pad1"; + } + } + + grouping L2RIB-CLIENT { + description + "L2RIB CLIENT"; + leaf client-id-xr { + type uint32; + description + "Client ID"; + } + leaf process-id { + type uint32; + description + "Process ID"; + } + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + leaf proc-name { + type string; + description + "Process Name"; + } + leaf proc-suffix { + type string; + description + "Process Suffix"; + } + } + + grouping L2RIB-DD-PARAMS { + description + "L2RIB DD PARAMS"; + leaf dd-params-disable { + type boolean; + description + "Disable duplicate detection for MAC, IPv4 or + IPv6 addresses."; + } + leaf dd-params-infinite-retry-count { + type boolean; + description + "Disable permanent freezing for MAC, IPv4 or IPv6 + addresses with infinite retry-count."; + } + leaf dd-params-freeze-time { + type uint16; + description + "Length of time to freeze the mac after it has + been detected as duplicate. Default is 30s."; + } + leaf dd-params-retry-count { + type uint16; + description + "Number of times to unfreeze a MAC before + permanently freezing it. Default is 3 times."; + } + leaf dd-params-reset-freeze-count-interval { + type uint16; + units "hour"; + description + "Interval after which the count of duplicate + detection events used to determine whether MAC + or IP needs to be permanently frozen, is reset. + Default is 24 hours."; + } + leaf dd-params-move-count { + type uint32; + units "second"; + description + "Number of moves to occur in move-interval + seconds before freezing the MAC. Default is 5s."; + } + leaf dd-params-move-interval { + type uint32; + description + "Interval to watch for subsequent moves before + freezing the MAC. Default is 180s."; + } + } + + grouping L2RIB-TBL-SUMMARY { + description + "L2RIB TBL SUMMARY"; + leaf object-type { + type L2rib-bag-obj; + description + "Object Type"; + } + leaf object-count { + type uint32; + description + "Number of Objects"; + } + leaf table-memory { + type uint32; + description + "Allocated Memory"; + } + list producer-stat { + description + "Statistics per producer"; + uses L2RIB-PROD-STATS; + } + } + + grouping L2RIB-SUMMARY { + description + "L2RIB SUMMARY"; + container mac-dd-params { + description + "MAC duplicate detection parameters"; + uses L2RIB-DD-PARAMS; + } + container ipv4-dd-params { + description + "IPv4 duplicate detection parameters"; + uses L2RIB-DD-PARAMS; + } + container ipv6-dd-params { + description + "IPv6 duplicate detection parameters"; + uses L2RIB-DD-PARAMS; + } + leaf converged-tables-count { + type uint32; + description + "Number of Converged Tables"; + } + leaf total-memory { + type uint32; + description + "Total Allocated Memory"; + } + list table-summary { + description + "Per Object Table summary"; + uses L2RIB-TBL-SUMMARY; + } + } + + grouping L2RIB-BAG-EC { + description + "L2RIB BAG EC"; + leaf counter-type { + type uint8; + description + "CounterType"; + } + leaf counter-name { + type string; + description + "CounterName"; + } + leaf l2rb-first-event-ts { + type uint64; + description + "Real-clock timestamp in msec of first event"; + } + leaf l2rb-last-event-ts { + type uint64; + description + "Real-clock timestamp in msec of last event"; + } + leaf l2rb-interval-event-count { + type uint32; + description + "number of events in interval"; + } + leaf l2rb-total-event-count { + type uint32; + description + "total number of events"; + } + } + + grouping L2RIB-PROD-UPDATE-STATS { + description + "L2RIB PROD UPDATE STATS"; + leaf memory-size { + type uint32; + description + "Memory Size"; + } + leaf object-count { + type uint32; + description + "Number of Objects"; + } + leaf endof-interval-ts { + type uint64; + description + "End of Interval Timestamp"; + } + list extended-counter { + description + "Extended Counters"; + uses L2RIB-BAG-EC; + } + } + + grouping L2RIB-PROD-STATS { + description + "L2RIB PROD STATS"; + container statistics { + description + "Statistics"; + uses L2RIB-PROD-UPDATE-STATS; + } + leaf producer-id { + type L2rib-bag-producer-id; + description + "Producer ID"; + } + leaf producer-name { + type string; + description + "Producer Name"; + } + } + + grouping L2RIB-PROD { + description + "L2RIB PROD"; + leaf client-id { + type uint32; + description + "Client ID"; + } + leaf object-type { + type L2rib-bag-obj; + description + "Object Type"; + } + leaf producer-id { + type L2rib-bag-producer-id; + description + "Producer ID"; + } + leaf producer-name { + type string; + description + "Producer Name"; + } + leaf admin-distance { + type uint32; + description + "Admin Distance"; + } + leaf purge-time { + type uint32; + description + "Purge Time"; + } + leaf state { + type L2rib-bag-producer-state; + description + "Producer State"; + } + } + + grouping L2RIB-PROD-DETAIL { + description + "L2RIB PROD DETAIL"; + container producer { + description + "Non-detail Producer Bag"; + uses L2RIB-PROD; + } + container statistics { + description + "Producer Statistics"; + uses L2RIB-PROD-STATS; + } + leaf last-update-timestamp { + type uint64; + description + "Last Update Timestamp"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper.yang new file mode 100644 index 000000000..44cb6ecba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2rib-oper.yang @@ -0,0 +1,397 @@ +module Cisco-IOS-XR-l2rib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2rib-oper"; + prefix l2rib-oper; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-l2rib-oper-sub1 { + revision-date 2021-07-09; + } + + 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 l2rib package operational data. + + This module contains definitions + for the following management objects: + l2rib: L2RIB operational information + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-09 { + description + "Changes made in the bag to display IID next-hop."; + semver:module-version "2.2.0"; + } + revision 2019-11-22 { + description + "Added to path for Mac/IP Table and Mac/IP Detail Table"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container l2rib { + config false; + description + "L2RIB operational information "; + container producers-details { + description + "L2RIB detailed producer table"; + list producers-detail { + description + "L2RIB producers detail information"; + leaf object-id { + type uint32; + description + "Object ID"; + } + leaf product-id { + type uint32; + description + "Product ID"; + } + uses L2RIB-PROD-DETAIL; + } + } + container summary { + description + "L2RIB EVPN Summary"; + uses L2RIB-SUMMARY; + } + container producers { + description + "L2RIB producer table"; + list producer { + description + "L2RIB producers"; + leaf object-id { + type uint32; + description + "Object ID"; + } + leaf product-id { + type uint32; + description + "Product ID"; + } + uses L2RIB-PROD; + } + } + container clients { + description + "L2RIB client table"; + list client { + key "client-id"; + description + "L2RIB clients"; + leaf client-id { + type uint32; + description + "Client ID"; + } + uses L2RIB-CLIENT; + } + } + container evis-xr { + description + "L2RIB EVPN EVI Detail Table"; + list evi { + key "evi"; + description + "L2RIB EVPN EVI Entry"; + leaf evi { + type uint32; + description + "EVI ID"; + } + uses L2RIB-TOPOLOGY-DETAIL; + } + } + container clients-details { + description + "L2RIB detailed client table"; + list clients-detail { + key "client-id"; + description + "L2RIB clients detail information"; + leaf client-id { + type uint32; + description + "Client ID"; + } + uses L2RIB-CLIENT-DETAIL; + } + } + container evi-child-tables { + description + "Container for all EVI Child Tables"; + container macip-details { + description + "L2RIB EVPN EVI MAC IP Detail table"; + list macip-detail { + description + "L2RIB EVPN MAC IP Detail table"; + leaf evi { + type uint32; + description + "EVPN ID"; + } + leaf mac-addr { + type yang:mac-address; + description + "MAC IP Address"; + } + leaf ip-addr { + type inet:ip-address-no-zone; + description + "IP Address"; + } + leaf prod-id { + type uint32; + description + "Producer ID"; + } + leaf admin-dist { + type uint32; + description + "Admin Distance"; + } + leaf flags { + type uint32; + description + "Mac-IP route flags"; + } + leaf seq-num { + type uint32; + description + "Mac-IP route sequence number"; + } + uses L2RIB-MAC-IP-ROUTE-DETAIL; + } + } + container mac-ips { + description + "L2RIB EVPN EVI MAC IP table"; + list mac-ip { + description + "L2RIB EVPN MAC IP table"; + leaf evi { + type uint32; + description + "EVPN ID"; + } + leaf mac-addr { + type yang:mac-address; + description + "MAC-IP Address"; + } + leaf ip-addr { + type inet:ip-address-no-zone; + description + "IP Address"; + } + leaf prod-id { + type uint32; + description + "Producer ID"; + } + leaf admin-dist { + type uint32; + description + "Admin Distance"; + } + leaf flags { + type uint32; + description + "Mac-IP route flags"; + } + leaf seq-num { + type uint32; + description + "Mac-IP route sequence number"; + } + uses L2RIB-MAC-IP-ROUTE; + } + } + container macs { + description + "L2RIB EVPN EVI MAC table"; + list mac { + description + "L2RIB EVPN MAC table"; + leaf evi { + type uint32; + description + "EVPN ID"; + } + leaf mac-addr { + type yang:mac-address; + description + "MAC Address"; + } + leaf prod-id { + type uint32; + description + "Producer ID"; + } + leaf admin-dist { + type uint32; + description + "Admin Distance"; + } + leaf flags { + type uint32; + description + "Mac route flags"; + } + leaf seq-num { + type uint32; + description + "Mac route sequence number"; + } + uses L2RIB-MAC-ROUTE; + } + } + container imets { + description + "L2RIB EVPN EVI IMET table"; + list imet { + description + "L2RIB EVPN IMET table"; + leaf evi { + type uint32; + description + "EVPN ID"; + } + leaf tag-id { + type uint32; + description + "Tag ID"; + } + leaf ip-addr { + type inet:ip-address-no-zone; + description + "Originating Router IP Address"; + } + leaf prod-id { + type uint32; + description + "Producer ID"; + } + uses L2RIB-IMET-ROUTE; + } + } + container mac-details { + description + "L2RIB EVPN EVI MAC Detail table"; + list mac-detail { + description + "L2RIB EVPN MAC Detail table"; + leaf evi { + type uint32; + description + "EVPN ID"; + } + leaf mac-addr { + type yang:mac-address; + description + "MAC Address"; + } + leaf prod-id { + type uint32; + description + "Producer ID"; + } + leaf admin-dist { + type uint32; + description + "Admin Distance"; + } + leaf flags { + type uint32; + description + "Mac route flags"; + } + leaf seq-num { + type uint32; + description + "Mac route sequence number"; + } + uses L2RIB-MAC-ROUTE-DETAIL; + } + } + container imet-details { + description + "L2RIB EVPN EVI IMET Detail table"; + list imet-detail { + description + "L2RIB EVPN IMET Detail table"; + leaf evi { + type uint32; + description + "EVPN ID"; + } + leaf tag-id { + type uint32; + description + "Tag ID"; + } + leaf ip-addr { + type inet:ip-address-no-zone; + description + "Originating Router IP Address"; + } + leaf prod-id { + type uint32; + description + "Producer ID"; + } + uses L2RIB-IMET-ROUTE-DETAIL; + } + } + } + container evis { + description + "L2RIB EVPN EVI Table"; + list evi { + key "evi"; + description + "L2RIB EVPN EVI Entry"; + leaf evi { + type uint32; + description + "EVI ID"; + } + uses L2RIB-TOPOLOGY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-cfg.yang new file mode 100644 index 000000000..edb12c37c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-cfg.yang @@ -0,0 +1,6536 @@ +module Cisco-IOS-XR-l2vpn-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2vpn-cfg"; + prefix l2vpn-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a2; + } + + 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 l2vpn package configuration. + + This module contains definitions + for the following management objects: + l2vpn: L2VPN configuration + generic-interface-lists: Generic Interface List configuration + evpn: EVPN configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-snmp-agent-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-30 { + description + "- Added evpn-wide-function-allocation leaf. + 2022-08-15 + - Added wide-function config support. + 2022-05-11 + - Changed ESI type from uint array to string + 2022-05-09 + - Removed empty VXLAN-TUNNEL-CONTENT grouping + 2022-04-18 + Added support for admission-control bandwidth under EVPN PW + 2022-01-14 + Added support for vxlan tunnel p2p neighbor. + 2021-07-11 + Added support to retrieve evpn-route-targets."; + semver:module-version "6.0.0"; + } + revision 2021-06-25 { + description + "Added support for core isolation group under virtual access evi"; + semver:module-version "5.0.0"; + } + revision 2021-06-09 { + description + "- Added support for enforce-mtu-match CLI globally under evpn submode - Added support for transmit-l2-mtu CLI globally under evpn submode - Added support for enforce-mtu-match CLI under evpn instance submode - Added support for transmit-l2-mtu CLI under evpn instance submode + 2020-08-08 + Added support for ignore-mtu-mismatch and transmit-mtu-zero CLI globally under evpn submode."; + semver:module-version "4.0.0"; + } + revision 2020-06-29 { + description + "Changed key for Pseudowire type to IPv4 neighbor - PW-ID or IPv6 neighbor - PW-id pair. + 2019-12-20 + EVPN SRv6 related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Evpn-encapsulation { + type enumeration { + enum "evpn-encapsulationvxlan" { + value 8; + description + "VXLAN Encapsulation"; + } + enum "evpn-encapsulation-mpls" { + value 10; + description + "MPLS Encapsulation"; + } + enum "evpn-encapsulation-route-sync" { + value 254; + description + "Route Sync Encapsulation"; + } + enum "evpn-encapsulation-srv6" { + value 255; + description + "SRv6 Encapsulation"; + } + } + description + "Evpn encapsulation"; + } + + typedef Interworking { + type enumeration { + enum "ethernet" { + value 1; + description + "Ethernet interworking"; + } + enum "ipv4" { + value 3; + description + "IPv4 interworking"; + } + } + description + "Interworking"; + } + + typedef L2vpn-capability-mode { + type enumeration { + enum "high-mode" { + value 1; + description + "Compute global capability as the highest node + capability"; + } + enum "single-mode" { + value 2; + description + "Disable global capability re-computation"; + } + } + description + "L2vpn capability mode"; + } + + typedef Evpn-side { + type enumeration { + enum "evpn-side-regular" { + value 1; + description + "EVPN Instance side defined as regular"; + } + enum "evpn-side-stitching" { + value 2; + description + "EVPN Instance side defined as stitching"; + } + } + description + "Evpn side"; + } + + typedef Evpnvpws-seamless-integration { + type enumeration { + enum "enabled" { + value 1; + description + "EVPN_VPWS Seamless Integration Enabled"; + } + } + description + "Evpnvpws seamless integration"; + } + + typedef Vpls-id-addr-index { + type uint32 { + range "0..32767"; + } + description + "Vpls id addr index"; + } + + typedef Evpn-core-group-id-range { + type uint32 { + range "1..4294967295"; + } + description + "Evpn core group id range"; + } + + typedef Tag-rewrite-range { + type uint32 { + range "1..4094"; + } + description + "Tag rewrite range"; + } + + typedef Pseudowire-evpnacid-range { + type uint32 { + range "1..16777215"; + } + description + "Pseudowire evpnacid range"; + } + + typedef Evpnvpnid-range { + type uint32 { + range "1..65534"; + } + description + "Evpnvpnid range"; + } + + typedef Pseudowire-label-range { + type uint32 { + range "16..1048575"; + } + description + "Pseudowire label range"; + } + + typedef Bridge-domain-transport-mode { + type enumeration { + enum "vlan-passthrough" { + value 3; + description + "Vlan tagged passthrough mode"; + } + } + description + "Bridge domain transport mode"; + } + + typedef Preferred-path { + type enumeration { + enum "te-tunnel" { + value 2; + description + "TE Tunnel"; + } + enum "ip-tunnel" { + value 3; + description + "IP Tunnel"; + } + enum "tp-tunnel" { + value 4; + description + "TP Tunnel"; + } + enum "sr-te-policy" { + value 5; + description + "SR TE Policy"; + } + enum "named-te-tunnel" { + value 8; + description + "Named TE Tunnel"; + } + } + description + "Preferred path"; + } + + typedef Rd-addr-index { + type uint32 { + range "0..65535"; + } + description + "Rd addr index"; + } + + typedef Vccv-verification { + type enumeration { + enum "none" { + value 0; + description + "No connectivity verification over VCCV"; + } + enum "lsp-ping" { + value 2; + description + "LSP Ping over VCCV"; + } + } + description + "Vccv verification"; + } + + typedef L2vpn-mtu-range { + type uint32 { + range "64..65535"; + } + description + "L2vpn mtu range"; + } + + typedef Mac-secure-shutdown-recovery-time-range { + type uint32 { + range "10..3600"; + } + description + "Mac secure shutdown recovery time range"; + } + + typedef Mac-withdraw-behavior { + type enumeration { + enum "legacy" { + value 1; + description + "MAC Withdrawal sent on state-down (legacy)"; + } + enum "optimized" { + value 2; + description + "Optimized MAC Withdrawal"; + } + } + description + "Mac withdraw behavior"; + } + + typedef Port-down-flush { + type enumeration { + enum "port-down-flush" { + value 0; + description + "MAC Port Down Flush"; + } + enum "enable-port-down-flush" { + value 1; + description + "Enable Port Down Flush"; + } + enum "disable-port-down-flush" { + value 2; + description + "Disable Port Down Flush"; + } + } + description + "Port down flush"; + } + + typedef Storm-control-pps-range { + type uint32 { + range "1..160000"; + } + description + "Storm control pps range"; + } + + typedef Type-of-service-mode { + type enumeration { + enum "none" { + value 0; + description + "Do not reflect the type of service"; + } + enum "reflect" { + value 1; + description + "Reflect the type of service"; + } + } + description + "Type of service mode"; + } + + typedef L2vpn-vs-vlan-tag { + type uint32 { + range "1..4094"; + } + description + "L2vpn vs vlan tag"; + } + + typedef Pseudowire-tag-range { + type uint32 { + range "1..4094"; + } + description + "Pseudowire tag range"; + } + + typedef Interface-access-signal-mode { + type enumeration { + enum "bundle-down" { + value 2; + description + "BundleDown"; + } + } + description + "Interface access signal mode"; + } + + typedef Multicast-p2mp-signaling { + type string { + pattern "(BGP)"; + } + description + "BGP:BGP Signaling"; + } + + typedef Cedge-range { + type uint32 { + range "11..100"; + } + description + "Cedge range"; + } + + typedef Ethernet-segment-load-balance { + type enumeration { + enum "single-active" { + value 1; + description + "Single Active"; + } + enum "port-active" { + value 2; + description + "Port Active"; + } + enum "single-flow-active" { + value 3; + description + "Single Flow Active"; + } + enum "all-active" { + value 4; + description + "All Active"; + } + } + description + "Ethernet segment load balance"; + } + + typedef Mpls-signaling-protocol { + type enumeration { + enum "none" { + value 1; + description + "No signaling"; + } + enum "ldp" { + value 4; + description + "LDP"; + } + } + description + "Mpls signaling protocol"; + } + + typedef Erpaps { + type enumeration { + enum "interface" { + value 1; + description + "ERP APS type interface"; + } + enum "bridge-domain" { + value 2; + description + "ERP APS type bridge domain"; + } + enum "xconnect" { + value 3; + description + "ERP APS type xconnect"; + } + enum "none" { + value 4; + description + "ERP APS type none"; + } + } + description + "Erpaps"; + } + + typedef Mac-secure-action { + type enumeration { + enum "restrict" { + value 1; + description + "MAC Secure Action Restrict"; + } + enum "none" { + value 2; + description + "No Action"; + } + enum "shutdown" { + value 3; + description + "MAC Secure Action Shutdown"; + } + } + description + "Mac secure action"; + } + + typedef Erp-port { + type enumeration { + enum "none" { + value 1; + description + "ERP port type none"; + } + enum "virtual" { + value 2; + description + "ERP port type virtual"; + } + enum "interface" { + value 3; + description + "ERP port type interface"; + } + } + description + "Erp port"; + } + + typedef Resync-threshold-range { + type uint32 { + range "5..65535"; + } + description + "Resync threshold range"; + } + + typedef Bgp-route-target-role { + type enumeration { + enum "both" { + value 0; + description + "Both Import and export roles"; + } + enum "import" { + value 1; + description + "Import role"; + } + enum "export" { + value 2; + description + "Export role"; + } + } + description + "Bgp route target role"; + } + + typedef Backup-disable { + type enumeration { + enum "never" { + value 0; + description + "Never"; + } + enum "delay" { + value 1; + description + "Delay seconds"; + } + } + description + "Backup disable"; + } + + typedef Time-to-live-range { + type uint32 { + range "1..255"; + } + description + "Time to live range"; + } + + typedef Multicast-p2mp-transport { + type string { + pattern "(RSVP_TE)"; + } + description + "RSVP_TE:RSVP-TE Transport"; + } + + typedef Transport-mode { + type enumeration { + enum "ethernet" { + value 1; + description + "Ethernet port mode"; + } + enum "vlan" { + value 2; + description + "Vlan tagged mode"; + } + enum "vlan-passthrough" { + value 3; + description + "Vlan tagged passthrough mode"; + } + } + description + "Transport mode"; + } + + typedef Flow-label-tlv-code { + type enumeration { + enum "17" { + value 4; + description + "Set Flow Label Legacy TLV code (DEPRECATED)"; + } + enum "disable" { + value 8; + description + "Disable Sending Flow Label Legacy TLV"; + } + } + description + "Flow label tlv code"; + } + + typedef Bgp-route-target { + type enumeration { + enum "no-stitching" { + value 0; + description + "RT is default type"; + } + enum "stitching" { + value 1; + description + "RT is for stitching (Golf-L2) (DEPRECATED)"; + } + } + description + "Bgp route target"; + } + + typedef Pseudowire-acid-range { + type uint32 { + range "1..4294967295"; + } + description + "Pseudowire acid range"; + } + + typedef Pseudowire-id-range { + type uint32 { + range "1..4294967295"; + } + description + "Pseudowire id range"; + } + + typedef Interface-profile { + type enumeration { + enum "snoop" { + value 1; + description + "Set the snooping"; + } + enum "dhcp-protocol" { + value 2; + description + "disable DHCP protocol"; + } + } + description + "Interface profile"; + } + + typedef Ethernet-segment-identifier { + type enumeration { + enum "type0" { + value 0; + description + "ESI type 0"; + } + } + description + "Ethernet segment identifier"; + } + + typedef Rpl-role { + type enumeration { + enum "owner" { + value 1; + description + "ERP RPL owner"; + } + enum "neighbor" { + value 2; + description + "ERP RPL neighbor"; + } + enum "next-neighbor" { + value 3; + description + "ERP RPL next neighbor"; + } + } + description + "Rpl role"; + } + + typedef Pw-switching-point-tlv { + type enumeration { + enum "hide" { + value 2; + description + "Hide TLV"; + } + } + description + "Pw switching point tlv"; + } + + typedef Erpaps-level-range { + type uint32 { + range "0..7"; + } + description + "Erpaps level range"; + } + + typedef Evpn-esi-type-range { + type uint32 { + range "1"; + } + description + "Evpn esi type range"; + } + + typedef Storm-control { + type enumeration { + enum "unicast" { + value 1; + description + "Unknown-unicast Storm Control"; + } + enum "multicast" { + value 2; + description + "Multicast Storm Control"; + } + enum "broadcast" { + value 4; + description + "Broadcast Storm Control"; + } + } + description + "Storm control"; + } + + typedef L2tp-session-id-range { + type uint32 { + range "1..65535"; + } + description + "L2tp session id range"; + } + + typedef Ethernet-segment-service-carving { + type enumeration { + enum "mod-n" { + value 0; + description + "MOD N"; + } + enum "manual" { + value 1; + description + "Manual"; + } + enum "hrw" { + value 2; + description + "HRW"; + } + enum "pref-df" { + value 3; + description + "PrefDF"; + } + } + description + "Ethernet segment service carving"; + } + + typedef Mac-learn { + type enumeration { + enum "default-learning" { + value 0; + description + "Mac Learning"; + } + enum "enable-learning" { + value 1; + description + "Enable Learning"; + } + enum "disable-learning" { + value 2; + description + "Disable Learning"; + } + } + description + "Mac learn"; + } + + typedef L2tpv3-sequencing { + type enumeration { + enum "off" { + value 0; + description + "Sequencing is off"; + } + enum "both" { + value 4; + description + "Sequencing on both transmit and receive side"; + } + } + description + "L2tpv3 sequencing"; + } + + typedef Veid-range { + type uint32 { + range "1..16384"; + } + description + "Veid range"; + } + + typedef Load-balance { + type enumeration { + enum "source-dest-mac" { + value 1; + description + "Source and Destination MAC hashing"; + } + enum "source-dest-ip" { + value 2; + description + "Source and Destination IP hashing"; + } + enum "pseudowire-label" { + value 4; + description + "PW Label hashing"; + } + } + description + "Load balance"; + } + + typedef L2tp-signaling-protocol { + type enumeration { + enum "none" { + value 1; + description + "No signaling"; + } + enum "l2tpv3" { + value 2; + description + "L2TPv3"; + } + } + description + "L2tp signaling protocol"; + } + + typedef Bdmac-learn { + type enumeration { + enum "disable-learning" { + value 2; + description + "Disable Learning"; + } + } + description + "Bdmac learn"; + } + + typedef L2mc-src-traffic-enabled { + type enumeration { + enum "l2mc-none" { + value 0; + description + "NONE"; + } + enum "l2mc-ipv4" { + value 1; + description + "Multicast Source - IPv4"; + } + enum "l2mc-ipv6" { + value 2; + description + "Multicast Source - IPv6"; + } + enum "l2mc-ipv4-ipv6" { + value 3; + description + "Multicast Source - IPv4 IPv6"; + } + } + description + "L2mc src traffic enabled"; + } + + typedef L2vpn-verification { + type enumeration { + enum "enable" { + value 1; + description + "enable verification"; + } + enum "disable" { + value 2; + description + "disable verification"; + } + } + description + "L2vpn verification"; + } + + typedef Max-path-mtu-range { + type uint32 { + range "68..65535"; + } + description + "Max path mtu range"; + } + + typedef Interface-traffic-flood { + type enumeration { + enum "traffic-flooding" { + value 0; + description + "Traffic flooding"; + } + enum "enable-flooding" { + value 1; + description + "Enable Flooding"; + } + enum "disable-flooding" { + value 2; + description + "Disable flooding"; + } + } + description + "Interface traffic flood"; + } + + typedef Pbbvid-range { + type uint32 { + range "1..4094"; + } + description + "Pbbvid range"; + } + + typedef L2tp-cookie-value-range { + type uint32 { + range "0..4294967295"; + } + description + "L2tp cookie value range"; + } + + typedef L2-encapsulation { + type enumeration { + enum "vlan" { + value 4; + description + "Vlan tagged mode"; + } + enum "ethernet" { + value 5; + description + "Ethernet port mode"; + } + } + description + "L2 encapsulation"; + } + + typedef L2vpn-logging { + type enumeration { + enum "enable" { + value 1; + description + "enable logging"; + } + enum "disable" { + value 2; + description + "disable logging"; + } + } + description + "L2vpn logging"; + } + + typedef Mac-aging-range { + type uint32 { + range "300..30000"; + } + description + "Mac aging range"; + } + + typedef Vpls-id-as-index { + type uint32 { + range "0..4294967295"; + } + description + "Vpls id as index"; + } + + typedef Pseudowire-gbl-id-range { + type uint32 { + range "1..4294967295"; + } + description + "Pseudowire gbl id range"; + } + + typedef Rdas-index { + type uint32 { + range "0..4294967295"; + } + description + "Rdas index"; + } + + typedef Mac-flush-mode { + type enumeration { + enum "mvrp" { + value 1; + description + "MVRP MAC Flushing"; + } + } + description + "Mac flush mode"; + } + + typedef L2tp-cookie-size { + type enumeration { + enum "zero" { + value 0; + description + "Cookie size is zero bytes"; + } + enum "four" { + value 4; + description + "Cookie size is four bytes"; + } + enum "eight" { + value 8; + description + "Cookie size is eight bytes"; + } + } + description + "L2tp cookie size"; + } + + typedef Mpls-sequencing { + type enumeration { + enum "off" { + value 0; + description + "Sequencing is off"; + } + enum "transmit" { + value 1; + description + "Sequencing on transmit side"; + } + enum "receive" { + value 2; + description + "Sequencing on receive side"; + } + enum "both" { + value 4; + description + "Sequencing on both transmit and receive side"; + } + } + description + "Mpls sequencing"; + } + + typedef Erp-instance-range { + type uint32 { + range "1..2"; + } + description + "Erp instance range"; + } + + typedef Pw-redundancy-initial-delay-range { + type uint32 { + range "0..120"; + } + description + "Pw redundancy initial delay range"; + } + + typedef Vpls-id-as-range { + type uint32 { + range "1..65535"; + } + description + "Vpls id as range"; + } + + typedef Rdas-range { + type uint32 { + range "1..4294967295"; + } + description + "Rdas range"; + } + + typedef Ethernet-segment-service-carving-mcast { + type enumeration { + enum "disabled" { + value 0; + description + "Disabled"; + } + enum "hrw-s-g" { + value 1; + description + "HRW S G"; + } + enum "hrw-g" { + value 2; + description + "HRW G"; + } + } + description + "Ethernet segment service carving mcast"; + } + + typedef Bridge-bd-mtu-range { + type uint32 { + range "46..65535"; + } + description + "Bridge bd mtu range"; + } + + typedef Backup-disable-delay-range { + type uint32 { + range "0..180"; + } + description + "Backup disable delay range"; + } + + typedef Nveid-range { + type uint32 { + range "1..65535"; + } + description + "Nveid range"; + } + + typedef Storm-control-kbps-range { + type uint32 { + range "64..1280000"; + } + description + "Storm control kbps range"; + } + + typedef Mac-limit-action { + type enumeration { + enum "none" { + value 0; + description + "No action"; + } + enum "flood" { + value 1; + description + "Flood Mac Limit Action"; + } + enum "no-flood" { + value 2; + description + "NoFlood Mac Limit Action"; + } + enum "shutdown" { + value 3; + description + "Shutdown Mac Limit Action"; + } + } + description + "Mac limit action"; + } + + typedef Erp-port1 { + type enumeration { + enum "port0" { + value 0; + description + "ERP main port 0"; + } + enum "port1" { + value 1; + description + "ERP main port 1"; + } + } + description + "Erp port1"; + } + + typedef Mac-notification { + type enumeration { + enum "no-notif" { + value 0; + description + "No_Notification Trap"; + } + enum "syslog" { + value 1; + description + "syslog message"; + } + enum "trap" { + value 2; + description + "Snmp Trap"; + } + enum "syslog-snmp" { + value 3; + description + "Syslog_snmp Trap"; + } + } + description + "Mac notification"; + } + + typedef Control-word { + type enumeration { + enum "enable" { + value 1; + description + "Enable control word"; + } + enum "disable" { + value 2; + description + "Disable control word"; + } + } + description + "Control word"; + } + + typedef Preferred-nexthop-mode { + type enumeration { + enum "preferred-nexthop-lowest-ip" { + value 1; + description + "Lowest IP Preferred"; + } + enum "preferred-nexthop-highest-ip" { + value 2; + description + "Highest IP Preferred"; + } + enum "preferred-nexthop-modulo" { + value 3; + description + "Modulo of nexthops Preferred"; + } + } + description + "Preferred nexthop mode"; + } + + typedef Bgp-route-distinguisher { + type enumeration { + enum "auto" { + value 1; + description + "RD automatically assigned"; + } + enum "two-byte-as" { + value 2; + description + "RD in 2 byte AS:nn format"; + } + enum "four-byte-as" { + value 3; + description + "RD in 4 byte AS:nn format"; + } + enum "ipv4-address" { + value 4; + description + "RD in IpV4address"; + } + } + description + "Bgp route distinguisher"; + } + + typedef Bgp-route-target-format { + type enumeration { + enum "none" { + value 0; + description + "No route target"; + } + enum "two-byte-as" { + value 1; + description + "2 Byte AS:nn format"; + } + enum "four-byte-as" { + value 2; + description + "4 byte AS:nn format"; + } + enum "ipv4-address" { + value 3; + description + "IP:nn format"; + } + enum "es-import" { + value 1538; + description + "a.a.i format"; + } + } + description + "Bgp route target format"; + } + + typedef Evpn-group-id-range { + type uint32 { + range "1..4294967295"; + } + description + "Evpn group id range"; + } + + typedef Mac-limit-threshold-range { + type uint32 { + range "1..100"; + } + description + "Mac limit threshold range"; + } + + typedef Vni-range { + type uint32 { + range "1..16777215"; + } + description + "Vni range"; + } + + typedef Vedge-range { + type uint32 { + range "11..100"; + } + description + "Vedge range"; + } + + typedef Vpnid-range { + type uint32 { + range "1..4294967295"; + } + description + "Vpnid range"; + } + + typedef Ldp-vpls-id { + type enumeration { + enum "two-byte-as" { + value 10; + description + "VPLS-ID in 2 byte AS:nn format"; + } + enum "ipv4-address" { + value 266; + description + "VPLS-ID in IPv4 IP:nn format"; + } + } + description + "Ldp vpls id"; + } + + typedef Ce-id-range { + type uint32 { + range "1..16384"; + } + description + "Ce id range"; + } + + typedef Mac-aging { + type enumeration { + enum "absolute" { + value 1; + description + "Absolute aging type"; + } + enum "inactivity" { + value 2; + description + "Inactivity aging type"; + } + } + description + "Mac aging"; + } + + typedef Mac-limit-range { + type uint32 { + range "0..4294967295"; + } + description + "Mac limit range"; + } + + typedef Pbbisid-range { + type uint32 { + range "256..16777214"; + } + description + "Pbbisid range"; + } + + typedef Type-of-service-range { + type uint32 { + range "0..255"; + } + description + "Type of service range"; + } + + typedef Flow-label-load-balance { + type enumeration { + enum "off" { + value 0; + description + "Flow Label load balance is off"; + } + enum "receive" { + value 1; + description + "Delete Flow Label on receive side"; + } + enum "transmit" { + value 2; + description + "Insert Flow Label on transmit side"; + } + enum "both" { + value 3; + description + "Insert/Delete Flow Label on transmit/receive + side"; + } + } + description + "Flow label load balance"; + } + + grouping STORM-CONTROL-UNIT { + description + "Common node of bd-storm-control, + bdac-storm-control-type, bdpw-storm-control-type"; + container storm-control-unit { + must "kbits-per-sec or pkts-per-sec"; + description + "Specify units for Storm Control Configuration"; + leaf kbits-per-sec { + type Storm-control-kbps-range; + units "kbit/s"; + description + "Kilobits Per Second, PktsPerSec and KbitsPerSec + cannot be configured together"; + } + leaf pkts-per-sec { + type Storm-control-pps-range; + units "packet/s"; + description + "Packets Per Second, PktsPerSec and KbitsPerSec + cannot be configured together"; + } + } + } + + grouping EVPN-CORE-ISOLATION-GROUP { + description + "Common node of evpn-interface, + evpn-virtual-access-evi"; + leaf evpn-core-isolation-group { + type Evpn-core-group-id-range; + description + "Enter EVPN Core Isolation Group ID"; + } + } + + grouping MANUAL-SERVICE-CARVING { + description + "Common node of ethernet-segment, + evpn-virtual-ethernet-segment"; + container manual-service-carving { + description + "Enter Manual service carving configuration + submode"; + container service-list { + description + "Manual service carving primary,secondary lists"; + leaf primary { + type string { + length "1..150"; + } + description + "Primary services list"; + } + leaf secondary { + type string { + length "1..150"; + } + description + "Secondary services list"; + } + } + leaf enable { + type empty; + description + "Enable Manual service carving"; + } + } + } + + grouping SERVICE-CARVING-MCAST-TYPE { + description + "Common node of ethernet-segment, + evpn-virtual-ethernet-segment"; + leaf service-carving-mcast-type { + type Ethernet-segment-service-carving-mcast; + description + "Ethernet-Segment Service Carving multicast mode"; + } + } + + grouping ACTION { + description + "Common node of mac-secure, pbb-edge-mac-secure, + interface-mac-secure, pseudowire-mac-secure"; + leaf action { + type Mac-secure-action; + description + "MAC secure enforcement action"; + } + } + + grouping EVPN-ROUTE-DISTINGUISHER { + description + "Common node of evpn-bgp-auto-discovery, + evpn-instance-bgp-auto-discovery, pw-routing-bgp"; + container evpn-route-distinguisher { + description + "Route Distinguisher"; + leaf type { + type Bgp-route-distinguisher; + description + "Router Distinguisher Type"; + } + leaf as { + when "../type = 'two-byte-as' or ../type = 'four-byte-as'" { + description + "../Type = TwoByteAS or ../Type = FourByteAS"; + } + type Rdas-range; + description + "Two byte or 4 byte AS number"; + } + leaf as-index { + when "../type = 'two-byte-as' or ../type = 'four-byte-as'" { + description + "../Type = TwoByteAS or ../Type = FourByteAS"; + } + type Rdas-index; + description + "AS:nn (hex or decimal format)"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IPV4 address"; + } + leaf addr-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type Rd-addr-index; + description + "Addr index"; + } + } + } + + grouping EVPN-VIRTUAL-ETHERNET-SEGMENT { + description + "Common node of evpn-virtual-access-sub-interface, + evpn-virtual-access-pw, evpn-virtual-access-vfi, + evpn-virtual-access-evi"; + container evpn-virtual-ethernet-segment { + description + "Enter Ethernet Segment configuration submode"; + leaf enable { + type empty; + description + "Enable Ethernet Segment"; + } + uses SERVICE-CARVING-MCAST-TYPE; + uses ES-IMPORT-ROUTE-TARGET; + uses SERVICE-CARVING-TYPE; + uses IDENTIFIER; + uses PREFERENCE-BASED-SERVICE-CARVING; + uses MANUAL-SERVICE-CARVING; + } + } + + grouping LOGGING { + description + "Common node of pbb-edge-mac-secure, + interface-mac-secure, pseudowire-mac-secure"; + leaf logging { + type L2vpn-logging; + description + "MAC Secure Logging"; + } + } + + grouping ES-IMPORT-ROUTE-TARGET { + description + "Common node of ethernet-segment, + evpn-virtual-ethernet-segment"; + leaf es-import-route-target { + type yang:mac-address; + description + "ES-Import Route Target"; + } + } + + grouping SERVICE-CARVING-TYPE { + description + "Common node of ethernet-segment, + evpn-virtual-ethernet-segment"; + leaf service-carving-type { + type Ethernet-segment-service-carving; + description + "Ethernet-Segment Service Carving mode"; + } + } + + grouping IDENTIFIER { + description + "Common node of ethernet-segment, + evpn-virtual-ethernet-segment"; + container identifier { + presence "Indicates a identifier node is configured."; + description + "Ethernet segment identifier"; + leaf type { + type Ethernet-segment-identifier; + mandatory true; + description + "Ethernet segment identifier type"; + } + leaf esi { + type string { + length "1..26"; + } + mandatory true; + description + "9-byte ESI value, xx.xx.xx.xx.xx.xx.xx.xx.xx"; + } + } + } + + grouping PREFERENCE-BASED-SERVICE-CARVING { + description + "Common node of ethernet-segment, + evpn-virtual-ethernet-segment"; + container preference-based-service-carving { + description + "Preference-Based DF Election Configuration + Options"; + leaf weight { + type uint32 { + range "0..65535"; + } + description + "Preference DF weight. For Access-Driven DF, use + weights of at most 32767 or less."; + } + leaf enable { + type empty; + description + "Enable Preference Based Service Carving"; + } + leaf access-driven { + type empty; + description + "Enable Access-Driven DF Election"; + } + } + } + + grouping BRIDGE-DOMAIN-TABLE { + description + "Common node of bridge-domain-group, vlan-switch"; + container bridge-domains { + description + "List of Bridge Domain"; + list bridge-domain { + key "name"; + description + "bridge domain"; + container bd-storm-controls { + description + "Storm Control"; + list bd-storm-control { + must "storm-control-unit"; + key "sctype"; + description + "Storm Control Type"; + leaf sctype { + type Storm-control; + description + "Storm Control Type"; + } + uses STORM-CONTROL-UNIT; + } + } + container member-vnis { + description + "Bridge Domain VxLAN Network Identifier Table"; + list member-vni { + key "vni"; + description + "Bridge Domain Member VxLAN Network Identifier"; + container member-vni-static-mac-addresses { + description + "Static Mac Address Table"; + list member-vni-static-mac-address { + key "mac-address"; + description + "Static Mac Address Configuration"; + leaf next-hop-ip { + type inet:ipv4-address-no-zone; + description + "Enable Static Mac Address Configuration"; + } + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + leaf vni { + type uint32 { + range "1..16777215"; + } + description + "VxLAN Network Identifier number"; + } + } + } + container bridge-domain-mac { + description + "MAC configuration commands"; + container bd-mac-limit { + description + "MAC-Limit configuration commands"; + leaf bd-mac-limit-action { + type Mac-limit-action; + description + "MAC address limit enforcement action"; + } + leaf enable { + type empty; + description + "Enable MAC-Limit configuration commands"; + } + leaf bd-mac-limit-notif { + type Mac-notification; + description + "Mac Address Limit Notification"; + } + leaf bd-mac-limit-max { + type Mac-limit-range; + description + "Number of MAC addresses after which MAC + limit action is taken"; + } + } + container bd-mac-filters { + description + "Filter Mac Address"; + list bd-mac-filter { + key "address"; + description + "Static MAC address"; + leaf drop { + type empty; + description + "MAC address for filtering"; + } + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + container mac-secure { + description + "MAC Secure"; + leaf logging { + type empty; + description + "MAC Secure Logging"; + } + leaf enable { + type empty; + description + "Enable MAC Secure"; + } + leaf threshold { + type empty; + description + "MAC Secure Threshold"; + } + uses ACTION; + uses SHUTDOWN-RECOVERY-TIMER; + } + container bd-mac-aging { + description + "MAC-Aging configuration commands"; + leaf bd-mac-aging-type { + type Mac-aging; + description + "MAC address aging type"; + } + leaf enable { + type empty; + description + "Enable MAC-Aging configuration commands"; + } + leaf bd-mac-aging-time { + type Mac-aging-range; + description + "Mac Aging Time"; + } + } + leaf bd-mac-withdraw-relay { + type empty; + description + "Mac withdraw sent from access PW to access PW"; + } + leaf bd-mac-withdraw-access-pw-disable { + type empty; + description + "MAC withdraw on Access PW"; + } + leaf bd-mac-port-down-flush { + type empty; + description + "Disable MAC Flush when Port goes Down"; + } + leaf bd-mac-withdraw { + type empty; + description + "Disable Mac Withdraw"; + } + leaf enable { + type empty; + description + "Enable MAC configuration commands"; + } + leaf bd-mac-withdraw-behavior { + type Mac-withdraw-behavior; + description + "MAC withdraw sent on bridge port down"; + } + leaf bd-mac-learn { + type Bdmac-learn; + description + "Mac Learning Type"; + } + } + container nv-satellite { + description + "nV Satellite"; + leaf offload-ipv4-multicast-enable { + type empty; + description + "Enable IPv4 Multicast Offload to Satellite + Nodes"; + } + leaf enable { + type empty; + description + "Enable nV Satellite Settings"; + } + } + container bridge-domain-pbb { + description + "Bridge Domain PBB"; + container pbb-edges { + description + "PBB Edge"; + list pbb-edge { + key "isid core-bd-name"; + description + "Configure BD as PBB Edge with ISID and + associated PBB Core BD"; + container pbb-edge-split-horizon-group { + description + "Split Horizon Group"; + leaf disable { + type empty; + description + "Disable split horizon group"; + } + } + container pbb-static-mac-mappings { + description + "PBB Static Mac Address Mapping Table"; + list pbb-static-mac-mapping { + key "address"; + description + "PBB Static Mac Address Mapping + Configuration"; + leaf pbb-static-mac-mapping-bmac { + type yang:mac-address; + description + "Static backbone MAC address to map with"; + } + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + container pbb-edge-dhcp-profile { + description + "Attach a DHCP profile"; + leaf profile-id { + type Interface-profile; + description + "Set the snooping profile"; + } + leaf dhcp-snooping-id { + type string; + description + "Disable DHCP snooping"; + } + } + container pbb-edge-mac { + description + "MAC configuration commands"; + container pbb-edge-mac-limit { + description + "MAC-Limit configuration commands"; + leaf pbb-edge-mac-limit-action { + type Mac-limit-action; + description + "MAC address limit enforcement action"; + } + leaf enable { + type empty; + description + "Enable MAC-Limit configuration commands"; + } + leaf pbb-edge-mac-limit-max { + type Mac-limit-range; + description + "Number of MAC addresses after which MAC + limit action is taken"; + } + leaf pbb-edge-mac-limit-notif { + type Mac-notification; + description + "MAC address limit notification action"; + } + } + container pbb-edge-mac-aging { + description + "MAC-Aging configuration commands"; + leaf pbb-edge-mac-aging-type { + type Mac-aging; + description + "MAC address aging type"; + } + leaf pbb-edge-mac-aging-time { + type Mac-aging-range; + description + "Mac Aging Time"; + } + leaf enable { + type empty; + description + "Enable MAC-Aging configuration commands"; + } + } + container pbb-edge-mac-secure { + description + "MAC Secure"; + leaf enable { + type empty; + description + "Enable MAC Secure"; + } + leaf accept-shutdown { + type empty; + description + "Accept Virtual instance port to be + shutdown on mac violation"; + } + uses LOGGING; + uses DISABLE; + uses ACTION; + } + leaf pbb-edge-mac-learning { + type Mac-learn; + description + "Enable Mac Learning"; + } + leaf enable { + type empty; + description + "Enable MAC configuration commands"; + } + } + leaf pbb-edge-igmp-profile { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a IGMP Snooping profile"; + } + leaf unknown-unicast-bmac { + type yang:mac-address; + description + "Configure Unknown Unicast BMAC address for + PBB Edge Port"; + } + leaf isid { + type Pbbisid-range; + description + "ISID"; + } + leaf core-bd-name { + type xr:Cisco-ios-xr-string { + length "1..27"; + } + description + "Core BD Name"; + } + } + } + container pbb-core { + description + "PBB Core"; + container pbb-core-mac { + description + "MAC configuration commands"; + container pbb-core-mac-aging { + description + "MAC-Aging configuration commands"; + leaf pbb-core-mac-aging-type { + type Mac-aging; + description + "MAC address aging type"; + } + leaf enable { + type empty; + description + "Enable MAC-Aging configuration commands"; + } + leaf pbb-core-mac-aging-time { + type Mac-aging-range; + description + "Mac Aging Time"; + } + } + container pbb-core-mac-limit { + description + "MAC-Limit configuration commands"; + leaf enable { + type empty; + description + "Enable MAC-Limit configuration commands"; + } + leaf pbb-core-mac-limit-max { + type Mac-limit-range; + description + "Number of MAC addresses after which MAC + limit action is taken"; + } + leaf pbb-core-mac-limit-notif { + type Mac-notification; + description + "MAC address limit notification action"; + } + leaf pbb-core-mac-limit-action { + type Mac-limit-action; + description + "MAC address limit enforcement action"; + } + } + leaf pbb-core-mac-learning { + type Mac-learn; + description + "Enable Mac Learning"; + } + leaf enable { + type empty; + description + "Enable MAC configuration commands"; + } + } + container pbb-core-evis { + description + "PBB Core EVI Table"; + list pbb-core-evi { + key "eviid"; + description + "PBB Core EVI"; + leaf eviid { + type Vpnid-range; + description + "Ethernet VPN ID"; + } + } + } + container pbb-core-dhcp-profile { + description + "Attach a DHCP profile"; + leaf profile-id { + type Interface-profile; + description + "Set the snooping profile"; + } + leaf dhcp-snooping-id { + type string; + description + "Disable DHCP snooping"; + } + } + leaf pbb-core-mmrp-flood-optimization { + type empty; + description + "Enabling MMRP PBB-VPLS Flood Optimization"; + } + leaf vlan-id { + type Pbbvid-range; + description + "VLAN ID to push"; + } + leaf pbb-core-igmp-profile { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a IGMP Snooping profile"; + } + leaf enable { + type empty; + description + "Enable Bridge Domain PBB Core Configuration"; + } + } + } + container bridge-domain-evis { + description + "Bridge Domain EVI Table"; + list bridge-domain-evi { + key "vpn-id"; + description + "Bridge Domain MPLS EVPN"; + leaf vpn-id { + type Evpnvpnid-range; + description + "MPLS Ethernet VPN-ID"; + } + } + } + container access-vfis { + description + "Specify the access virtual forwarding + interface name"; + list access-vfi { + key "name"; + description + "Name of the Acess Virtual Forwarding + Interface"; + container access-vfi-pseudowires { + description + "List of pseudowires"; + list access-vfi-pseudowire { + key "neighbor pseudowire-id"; + description + "Pseudowire configuration"; + container access-vfi-pseudowire-static-mac-addresses { + description + "Static Mac Address Table"; + list access-vfi-pseudowire-static-mac-address { + key "address"; + description + "Static Mac Address Configuration"; + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + leaf access-vfi-pw-class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Pseudowire class template name to use for + this pseudowire"; + } + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + } + } + leaf access-vfi-shutdown { + type empty; + description + "shutdown the AccessVfi"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the AccessVirtual Forwarding + Interface"; + } + } + } + container access-evis { + description + "Specify the access EVI ID"; + list access-evi { + key "vpn-id"; + description + "Name of the Access Virtual Forwarding + Interface"; + leaf vpn-id { + type Evpnvpnid-range; + description + "MPLS Ethernet VPN-ID"; + } + } + } + container bd-pseudowires { + description + "List of pseudowires"; + list bd-pseudowire { + key "neighbor pseudowire-id"; + description + "Pseudowire configuration"; + container pseudowire-dai { + description + "Access Pseudowire Dynamic ARP Inspection"; + container pseudowire-dai-address-validation { + description + "Address Validation"; + leaf ipv4-verification { + type L2vpn-verification; + description + "IPv4 Verification"; + } + leaf destination-mac-verification { + type L2vpn-verification; + description + "Destination MAC Verification"; + } + leaf source-mac-verification { + type L2vpn-verification; + description + "Source MAC Verification"; + } + leaf enable { + type empty; + description + "Enable Address Validation"; + } + } + leaf logging { + type L2vpn-logging; + description + "Logging Type"; + } + leaf disable { + type empty; + description + "Disable Dynamic ARP Inspection"; + } + leaf enable { + type empty; + description + "Enable Access Pseudowire Dynamic ARP + Inspection"; + } + } + container bdpw-storm-control-types { + description + "Storm Control"; + list bdpw-storm-control-type { + must "storm-control-unit"; + key "sctype"; + description + "Storm Control Type"; + leaf sctype { + type Storm-control; + description + "Storm Control Type"; + } + uses STORM-CONTROL-UNIT; + } + } + container pseudowire-profile { + description + "Attach a DHCP profile"; + leaf profile-id { + type Interface-profile; + description + "Set the snooping profile"; + } + leaf dhcp-snooping-id { + type string; + description + "Disable DHCP snooping"; + } + } + container bd-pw-static-mac-addresses { + description + "Static Mac Address Table"; + list bd-pw-static-mac-address { + key "address"; + description + "Static Mac Address Configuration"; + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + container pseudowire-ip-source-guard { + description + "IP Source Guard"; + leaf logging { + type L2vpn-logging; + description + "Logging Type"; + } + leaf disable { + type empty; + description + "Disable Dynamic IP source guard"; + } + leaf enable { + type empty; + description + "Enable IP Source Guard"; + } + } + container pseudowire-mac { + description + "Bridge-domain Pseudowire MAC configuration + commands"; + container pseudowire-mac-secure { + description + "MAC Secure"; + leaf enable { + type empty; + description + "Enable MAC Secure"; + } + uses LOGGING; + uses DISABLE; + uses ACTION; + uses SHUTDOWN-RECOVERY-TIMER; + } + container pseudowire-mac-aging { + description + "MAC-Aging configuration commands"; + leaf pseudowire-mac-aging-type { + type Mac-aging; + description + "MAC address aging type"; + } + leaf pseudowire-mac-aging-time { + type Mac-aging-range; + description + "MAC Aging Time"; + } + leaf enable { + type empty; + description + "Enable MAC-Aging configuration commands"; + } + } + container pseudowire-mac-limit { + description + "MAC-Limit configuration commands"; + leaf pseudowire-mac-limit-action { + type Mac-limit-action; + description + "Bridge Access Pseudowire MAC address limit + enforcement action"; + } + leaf pseudowire-mac-limit-notif { + type Mac-notification; + description + "MAC address limit notification action in a + Bridge Access Pseudowire"; + } + leaf pseudowire-mac-limit-max { + type Mac-limit-range; + description + "Number of MAC addresses on a Bridge Access + Pseudowire after which MAC limit action is + taken"; + } + leaf enable { + type empty; + description + "Enable MAC-Limit configuration commands"; + } + } + leaf pseudowire-mac-port-down-flush { + type Port-down-flush; + description + "Enable/Disable MAC Flush When Port goes + down"; + } + leaf enable { + type empty; + description + "Bridge-domain Pseudowire MAC configuration + mode"; + } + leaf pseudowire-mac-learning { + type Mac-learn; + description + "Enable MAC Learning"; + } + } + container bd-pw-split-horizon { + description + "Split Horizon"; + container bd-pw-split-horizon-group { + description + "Split Horizon Group"; + leaf enable { + type empty; + description + "Enable split horizon group"; + } + } + } + container bd-pw-mpls-static-labels { + description + "MPLS static labels"; + leaf local-static-label { + type Pseudowire-label-range; + description + "Pseudowire local static label"; + } + leaf remote-static-label { + type Pseudowire-label-range; + description + "Pseudowire remote static label"; + } + } + container bridge-domain-backup-pseudowires { + description + "List of pseudowires"; + list bridge-domain-backup-pseudowire { + key "neighbor pseudowire-id"; + description + "Backup pseudowire configuration"; + leaf bridge-domain-backup-pw-class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "PW class template name to use for this + pseudowire"; + } + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + } + } + leaf pseudowire-mld-snoop { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a MLD Snooping profile"; + } + leaf pseudowire-igmp-snoop { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a IGMP Snooping profile"; + } + leaf pseudowire-flooding { + type Interface-traffic-flood; + description + "Bridge-domain Pseudowire flooding"; + } + leaf bd-pw-class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "PW class template name to use for this + pseudowire"; + } + leaf pseudowire-flooding-unknown-unicast { + type Interface-traffic-flood; + description + "Bridge-domain Pseudowire flooding Unknown + Unicast"; + } + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + } + } + container evpn-bd-e-tree { + description + "Enter EVPN E-Tree configuration submode"; + leaf evpn-bd-e-tree-leaf { + type empty; + description + "Configure BD E-Tree as leaf"; + } + leaf enable { + type empty; + description + "Enable EVPN E-Tree"; + } + } + container vfis { + description + "Specify the virtual forwarding interface name"; + list vfi { + key "name"; + description + "Name of the Virtual Forwarding Interface"; + container multicast-p2mp { + description + "Enable Multicast P2MP in this VFI"; + container transports { + description + "Multicast P2MP Transport"; + list transport { + key "transport-name"; + description + "Multicast P2MP Transport Type"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Multicast P2MP TE Attribute Set Name"; + } + leaf transport-name { + type Multicast-p2mp-transport; + description + "Transport Type"; + } + } + } + container signalings { + description + "Multicast P2MP Signaling Type"; + list signaling { + key "signaling-name"; + description + "Multicast P2MP Signaling Type"; + leaf signaling-name { + type Multicast-p2mp-signaling; + description + "Signaling Type"; + } + } + } + leaf enable { + type empty; + description + "Enable Autodiscovery P2MP"; + } + } + container vfi-pseudowires { + description + "List of pseudowires"; + list vfi-pseudowire { + key "neighbor pseudowire-id"; + description + "Pseudowire configuration"; + container vfi-pw-dhcp-snoop { + description + "Attach a DHCP Snooping profile"; + leaf profile-id { + type Interface-profile; + description + "Set the snooping profile"; + } + leaf dhcp-snooping-id { + type string; + description + "Disable DHCP snooping"; + } + } + container vfi-pw-mpls-static-labels { + description + "MPLS static labels"; + leaf local-static-label { + type Pseudowire-label-range; + description + "Pseudowire local static label"; + } + leaf remote-static-label { + type Pseudowire-label-range; + description + "Pseudowire remote static label"; + } + } + container pseudowire-static-mac-addresses { + description + "Static Mac Address Table"; + list pseudowire-static-mac-address { + key "address"; + description + "Static Mac Address Configuration"; + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + leaf vfi-pw-class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "PW class template name to use for this + pseudowire"; + } + leaf vfi-pw-igmp-snoop { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a IGMP Snooping profile"; + } + leaf vfi-pw-mld-snoop { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a MLD Snooping profile"; + } + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + } + } + container bgp-auto-discovery { + description + "Enable Autodiscovery BGP in this VFI"; + container ldp-signaling-protocol { + description + "Signaling Protocol LDP in this VFI + configuration"; + container vpls-id { + description + "VPLS ID"; + leaf type { + type Ldp-vpls-id; + description + "VPLS-ID Type"; + } + leaf as { + when "../type = 'two-byte-as'" { + description + "../Type = TwoByteAS"; + } + type Vpls-id-as-range; + description + "Two byte AS number"; + } + leaf as-index { + when "../type = 'two-byte-as'" { + description + "../Type = TwoByteAS"; + } + type Vpls-id-as-index; + description + "AS index"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IPV4 address"; + } + leaf address-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type Vpls-id-addr-index; + description + "Address index"; + } + } + container flow-label-load-balance { + description + "Enable Flow Label based load balancing"; + leaf flow-label { + type Flow-label-load-balance; + description + "Flow Label load balance type"; + } + leaf static { + type empty; + description + "Static Flow Label"; + } + } + leaf enable { + type empty; + description + "Enable LDP as Signaling Protocol.Deletion + of this object also causes deletion of all + objects under LDPSignalingProtocol."; + } + } + container bgp-route-policy { + description + "Route policy"; + leaf export { + type string; + description + "Export route policy"; + } + } + container route-distinguisher { + description + "Route Distinguisher"; + leaf type { + type Bgp-route-distinguisher; + description + "Router Distinguisher Type"; + } + leaf as { + when "../type = 'two-byte-as' or ../type = 'four-byte-as'" { + description + "../Type = TwoByteAS or ../Type = + FourByteAS"; + } + type Rdas-range; + description + "Two byte or 4 byte AS number"; + } + leaf as-index { + when "../type = 'two-byte-as' or ../type = 'four-byte-as'" { + description + "../Type = TwoByteAS or ../Type = + FourByteAS"; + } + type Rdas-index; + description + "AS:nn (hex or decimal format)"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IPV4 address"; + } + leaf addr-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type Rd-addr-index; + description + "Addr index"; + } + } + container bgp-signaling-protocol { + description + "Enable Signaling Protocol BGP in this VFI"; + container flow-label-load-balance { + description + "Enable Flow Label based load balancing"; + leaf flow-label { + type Flow-label-load-balance; + description + "Flow Label load balance type"; + } + leaf static { + type empty; + description + "Static Flow Label"; + } + } + leaf ve-range { + type Vedge-range; + description + "Local Virtual Edge Block Configurable + Range"; + } + leaf veid { + type Veid-range; + description + "Local Virtual Edge Identifier"; + } + leaf enable { + type empty; + description + "Enable BGP as Signaling Protocol"; + } + } + container route-targets { + description + "Route Target"; + list route-target { + must "two-byte-as-or-four-byte-as or ipv4-address" { + description + "TwoByteAS-or-FourbyteAS or IPV4Address + must be present."; + } + key "role format"; + description + "Name of the Route Target"; + leaf role { + type Bgp-route-target-role; + description + "Role of the router target type"; + } + leaf format { + type Bgp-route-target-format; + description + "Format of the route target"; + } + list two-byte-as-or-four-byte-as { + when "../format = 'two-byte-as' or ../format = 'four-byte-as'" { + description + "../Format = TwoByteAS or ../Format = + FourbyteAS"; + } + key "as as-index"; + description + "two byte as or four byte as"; + leaf as { + type Rdas-range; + description + "Two byte or 4 byte AS number"; + } + leaf as-index { + type Rdas-index; + description + "AS:nn (hex or decimal format)"; + } + } + list ipv4-address { + when "../format = 'ipv4-address'" { + description + "../Format = IPV4Address"; + } + key "address addr-index"; + description + "ipv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPV4 address"; + } + leaf addr-index { + type Rd-addr-index; + description + "Addr index"; + } + } + } + } + leaf table-policy { + type string; + description + "Table Policy for installation of forwarding + data to L2FIB"; + } + leaf ad-control-word { + type empty; + description + "Enable control-word for this VFI"; + } + leaf enable { + type empty; + description + "Enable Autodiscovery BGP"; + } + } + leaf vfi-shutdown { + type empty; + description + "Enabling Shutdown"; + } + leaf vpnid { + type Vpnid-range; + description + "VPN Identifier"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Virtual Forwarding Interface"; + } + } + } + container bridge-domain-evi-srv6s { + description + "Bridge Domain SRv6 EVI Table"; + list bridge-domain-evi-srv6 { + key "vpn-id"; + description + "Bridge Domain SRv6 EVPN"; + leaf vpn-id { + type Evpnvpnid-range; + description + "SRv6 Ethernet VPN-ID"; + } + } + } + container bridge-domainvnis { + description + "Bridge Domain EVPN VxLAN Network Identifier + Table"; + list bridge-domainvni { + key "vpn-id"; + description + "Bridge Domain VxLAN EVPN"; + leaf vpn-id { + type uint32 { + range "1..16777215"; + } + description + "VxLAN Ethernet VPN-ID"; + } + } + } + container bd-attachment-circuits { + description + "Attachment Circuit table"; + list bd-attachment-circuit { + key "name"; + description + "Name of the Attachment Circuit"; + container interface-ip-source-guard { + description + "IP Source Guard"; + leaf logging { + type L2vpn-logging; + description + "Logging Type"; + } + leaf disable { + type empty; + description + "Disable L2 Interface Dynamic IP source + guard"; + } + leaf enable { + type empty; + description + "Enable IP Source Guard"; + } + } + container interface-dai { + description + "L2 Interface Dynamic ARP Inspection"; + container interface-dai-address-validation { + description + "Address Validation"; + leaf ipv4-verification { + type L2vpn-verification; + description + "IPv4 Verification"; + } + leaf destination-mac-verification { + type L2vpn-verification; + description + "Destination MAC Verification"; + } + leaf source-mac-verification { + type L2vpn-verification; + description + "Source MAC Verification"; + } + leaf enable { + type empty; + description + "Enable Address Validation"; + } + } + leaf logging { + type L2vpn-logging; + description + "Logging Type"; + } + leaf disable { + type empty; + description + "Disable L2 Interface Dynamic ARP Inspection"; + } + leaf enable { + type empty; + description + "Enable L2 Interface Dynamic ARP Inspection"; + } + } + container interface-profile { + description + "Attach a DHCP profile"; + leaf profile-id { + type Interface-profile; + description + "Set the snooping profile"; + } + leaf dhcp-snooping-id { + type string; + description + "Disable DHCP snooping"; + } + } + container bdac-storm-control-types { + description + "Storm Control"; + list bdac-storm-control-type { + must "storm-control-unit"; + key "sctype"; + description + "Storm Control Type"; + leaf sctype { + type Storm-control; + description + "Storm Control Type"; + } + uses STORM-CONTROL-UNIT; + } + } + container split-horizon { + description + "Split Horizon"; + container split-horizon-group-id { + description + "Split Horizon Group ID"; + leaf enable { + type empty; + description + "Enable split horizon group"; + } + } + } + container static-mac-addresses { + description + "Static Mac Address Table"; + list static-mac-address { + key "address"; + description + "Static Mac Address Configuration"; + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + container evpn-ac-e-tree { + description + "Enter EVPN E-Tree configuration submode"; + leaf evpn-ac-e-tree-leaf { + type empty; + description + "Configure E-Tree as leaf"; + } + leaf enable { + type empty; + description + "Enable EVPN E-Tree"; + } + } + container interface-mac { + description + "MAC configuration commands"; + container interface-mac-aging { + description + "MAC-Aging configuration commands"; + leaf interface-mac-aging-time { + type Mac-aging-range; + description + "Mac Aging Time"; + } + leaf enable { + type empty; + description + "Enable MAC-Aging configuration commands"; + } + leaf interface-mac-aging-type { + type Mac-aging; + description + "MAC address aging type"; + } + } + container interface-mac-secure { + description + "MAC Secure"; + leaf enable { + type empty; + description + "Enable MAC Secure"; + } + uses LOGGING; + uses DISABLE; + uses ACTION; + uses SHUTDOWN-RECOVERY-TIMER; + } + container interface-mac-limit { + description + "MAC-Limit configuration commands"; + leaf interface-mac-limit-max { + type Mac-limit-range; + description + "Number of MAC addresses on an Interface + after which MAC limit action is taken"; + } + leaf interface-mac-limit-notif { + type Mac-notification; + description + "MAC address limit notification action in a + Interface"; + } + leaf interface-mac-limit-action { + type Mac-limit-action; + description + "Interface MAC address limit enforcement + action"; + } + leaf enable { + type empty; + description + "Enable MAC-Limit configuration commands"; + } + } + leaf interface-mac-port-down-flush { + type Port-down-flush; + description + "Enable/Disable MAC Flush When Port goes + down"; + } + leaf interface-mac-learning { + type Mac-learn; + description + "Enable Mac Learning"; + } + leaf enable { + type empty; + description + "Enable MAC configuration commands"; + } + } + leaf interface-flooding { + type Interface-traffic-flood; + description + "Enable or Disable Flooding"; + } + leaf interface-igmp-snoop { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a IGMP Snooping profile"; + } + leaf interface-flooding-unknown-unicast { + type Interface-traffic-flood; + description + "Enable or Disable Unknown Unicast Flooding"; + } + leaf interface-mld-snoop { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach a MLD Snooping profile"; + } + leaf name { + type xr:Interface-name; + description + "The name of the Attachment Circuit"; + } + } + } + container bd-pseudowire-evpns { + description + "List of EVPN pseudowires"; + list bd-pseudowire-evpn { + key "eviid acid"; + description + "EVPN Pseudowire configuration"; + leaf eviid { + type Evpnvpnid-range; + description + "Ethernet VPN ID"; + } + leaf acid { + type Pseudowire-acid-range; + description + "AC ID"; + } + } + } + container ip-source-guard { + description + "IP Source Guard"; + leaf logging { + type empty; + description + "Enable Logging"; + } + leaf enable { + type empty; + description + "Enable IP Source Guard"; + } + } + container dai { + description + "Dynamic ARP Inspection"; + container dai-address-validation { + description + "Address Validation"; + leaf ipv4-verification { + type empty; + description + "Enable IPv4 Verification"; + } + leaf destination-mac-verification { + type empty; + description + "Enable Destination MAC Verification"; + } + leaf source-mac-verification { + type empty; + description + "Enable Source MAC Verification"; + } + leaf enable { + type empty; + description + "Enable Address Validation"; + } + } + leaf logging { + type empty; + description + "Enable Logging"; + } + leaf enable { + type empty; + description + "Enable Dynamic ARP Inspection"; + } + } + container routed-interfaces { + description + "Bridge Domain Routed Interface Table"; + list routed-interface { + key "interface-name"; + description + "Bridge Domain Routed Interface"; + container routed-interface-split-horizon-group { + description + "Routed interface split horizon group"; + leaf routed-interface-split-horizon-group-core { + type empty; + description + "Configure BVI under SHG 1"; + } + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the Routed Interface"; + } + } + } + leaf coupled-mode { + type empty; + description + "Coupled-mode configuration"; + } + leaf shutdown { + type empty; + description + "shutdown the Bridge Domain"; + } + leaf flooding-unknown-unicast { + type empty; + description + "Disable Unknown Unicast flooding"; + } + leaf efp-visibility { + type empty; + description + "Enable multicast for multiple VLANs in the + bridge of a BVI"; + } + leaf l2-multicast-source { + type L2mc-src-traffic-enabled; + description + "L2MC Source Traffic Enabled"; + } + leaf igmp-snooping-disable { + type empty; + description + "Disable IGMP Snooping"; + } + leaf transport-mode { + type Bridge-domain-transport-mode; + description + "Bridge Domain Transport mode"; + } + leaf mld-snooping { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach MLD Snooping Profile Name"; + } + leaf bridge-domain-mtu { + type Bridge-bd-mtu-range; + units "byte"; + description + "Maximum transmission unit for this Bridge + Domain"; + } + leaf dhcp { + type string { + length "1..32"; + } + description + "DHCPv4 Snooping profile name"; + } + leaf bridge-description { + type string { + length "1..64"; + } + description + "Bridge-domain description Name"; + } + leaf igmp-snooping { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Attach IGMP Snooping Profile Name"; + } + leaf flooding { + type empty; + description + "Disable flooding"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..27"; + } + description + "Name of the bridge domain"; + } + } + } + } + + grouping SHUTDOWN-RECOVERY-TIMER { + description + "Common node of mac-secure, interface-mac-secure, + pseudowire-mac-secure"; + leaf shutdown-recovery-timer { + type Mac-secure-shutdown-recovery-time-range; + description + "MAC Secure Shutdown Recovery Timer"; + } + } + + grouping DISABLE { + description + "Common node of pbb-edge-mac-secure, + interface-mac-secure, pseudowire-mac-secure"; + leaf disable { + type empty; + description + "Disable MAC Secure"; + } + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container pseudowire-ether { + description + "PW-Ether attributes"; + leaf generic-interface-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the interface list"; + } + leaf l2-overhead { + type uint32 { + range "1..64"; + } + description + "PW Ether L2 overhead requirement"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container pseudowire-iw { + description + "PW-IW attributes"; + leaf l2-overhead { + type uint32 { + range "1..64"; + } + units "byte"; + description + "L2 overhead size in bytes"; + } + leaf generic-interface-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the interface list"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container bvi { + description + "BVI attributes"; + container gratuitous-announcement-timer { + description + "Enter Gratuitous Announcement Timer + configuration submode"; + leaf enable { + type empty; + description + "Enable Gratuitous Announcement Timer"; + } + leaf timer-jitter { + type uint32; + units "percentage"; + description + "Gratuitous announcement jitter percentage"; + } + leaf timer-interval { + type uint32; + units "second"; + description + "Gratuitous announcement timer interval in + seconds"; + } + } + leaf host-routing { + type empty; + description + "Enable host-routing on this BVI"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container l2-transport { + description + "Interface Layer 2 Transport service + configuration data"; + leaf enabled { + type empty; + description + "This object is only valid on physical + interfaces and it controls whether that + interface is a port mode Layer 2 attachment + circuit (note that for subinterfaces, the Layer + 2 property is specified when the subinterface + is created).The object must be set before any + other L2Transport configuration is supplied for + the interface, and must be the last + per-interface configuration object to be + removed."; + } + } + } + augment "/a2:snmp/a2:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container vpls { + description + "CISCO-IETF-VPLS-GENERIC-MIB notification + configuration"; + leaf full-clear { + type empty; + description + "Enable cvplsFwdFullAlarmCleared notification"; + } + leaf status { + type empty; + description + "Enable cvplsStatusChanged notification"; + } + leaf enable { + type empty; + description + "Enable CISCO-IETF-VPLS-GENERIC-MIB + notifications"; + } + leaf full-raise { + type empty; + description + "Enable cvplsFwdFullAlarmRaised notification"; + } + } + } + augment "/a2:snmp/a2:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container l2vpn { + description + "CISCO-IETF-PW-MIB notification configuration"; + leaf cisco { + type empty; + description + "Enable Cisco format including extra varbinds"; + } + leaf enable { + type empty; + description + "Enable CISCO-IETF-PW-MIB notifications"; + } + leaf vc-down { + type empty; + description + "Enable cpwVcDown notification"; + } + leaf vc-up { + type empty; + description + "Enable cpwVcUp notification"; + } + } + } + container l2vpn { + description + "L2VPN configuration"; + container pw-routing { + description + "Pseudowire-routing attributes"; + container pw-routing-bgp { + description + "Enable Autodiscovery BGP Pseudowire-routing BGP"; + leaf enable { + type empty; + description + "Enable Autodiscovery BGP"; + } + uses EVPN-ROUTE-DISTINGUISHER; + } + leaf pw-routing-global-id { + type Pseudowire-gbl-id-range; + description + "Pseudowire-routing Global ID"; + } + } + container neighbor { + description + "L2VPN neighbor submode"; + leaf ldp-flap { + type empty; + description + "Enable targetted LDP session flap action"; + } + } + container database { + description + "L2VPN databases"; + container g8032-rings { + description + "List of G8032 Ring"; + list g8032-ring { + key "g8032-ring-name"; + description + "G8032 Ring"; + container erp-port0s { + description + "Ethernet ring protection port0"; + list erp-port0 { + key "interface-name"; + description + "Configure ERP main port0"; + leaf monitor { + type xr:Interface-name; + description + "Ethernet ring protection port0 monitor"; + } + leaf interface-name { + type xr:Interface-name; + description + "Port0 interface"; + } + } + } + container erp-instances { + description + "List of ethernet ring protection instance"; + list erp-instance { + key "erp-instance-id"; + description + "Ethernet ring protection instance"; + container rpl { + description + "Ring protection link"; + leaf port { + type Erp-port1; + description + "ERP main port number"; + } + leaf role { + type Rpl-role; + description + "RPL role"; + } + } + container aps { + description + "Automatic protection switching"; + container port1 { + description + "APS channel for ERP port1"; + leaf aps-type { + type Erpaps; + description + "Port1 APS type"; + } + leaf aps-channel { + type string; + description + "Port1 APS channel in the format of + InterfaceName, BDName or XconnectName"; + } + } + leaf port0 { + type string; + description + "Port0 APS channel in the format of + InterfaceName"; + } + leaf enable { + type empty; + description + "Enable automatic protection switching"; + } + leaf level { + type Erpaps-level-range; + description + "Automatic protection switching level"; + } + } + leaf description { + type string { + length "1..32"; + } + description + "Ethernet ring protection instance + description"; + } + leaf inclusion-list { + type string; + description + "Associates a set of VLAN IDs with the G + .8032 instance"; + } + leaf profile { + type string { + length "1..32"; + } + description + "Ethernet ring protection instance profile"; + } + leaf erp-instance-id { + type Erp-instance-range; + description + "ERP instance number"; + } + } + } + container erp-port1s { + description + "Ethernet ring protection port0"; + list erp-port1 { + must "none-or-virtual or interface" { + description + "None-or-Virtual or Interface must be + present."; + } + key "erp-port-type"; + description + "Ethernet ring protection port1"; + + grouping ERP-PORT1-CONTENT { + description + "ERP PORT1 CONTENT"; + leaf monitor { + type xr:Interface-name; + description + "Ethernet ring protection port1 monitor"; + } + } + container none-or-virtual { + when "../erp-port-type = 'none' or ../erp-port-type = 'virtual'" { + description + "../ERPPortType = None or ../ERPPortType = + Virtual"; + } + presence "Indicates that this node is configured."; + description + "none or virtual"; + uses ERP-PORT1-CONTENT; + } + leaf erp-port-type { + type Erp-port; + description + "Port1 type"; + } + list interface { + when "../erp-port-type = 'interface'" { + description + "../ERPPortType = Interface"; + } + key "interface-name"; + description + "interface"; + leaf interface-name { + type xr:Interface-name; + description + "Port1 interface"; + } + uses ERP-PORT1-CONTENT; + } + } + } + leaf open-ring { + type empty; + description + "Specify the G.8032 instance as open ring"; + } + leaf exclusion-list { + type string; + description + "Vlan IDs in the format of a-b,c,d,e-f,g + ,untagged"; + } + leaf erp-provider-bridge { + type empty; + description + "Ethernet ring protection provider bridge"; + } + leaf g8032-ring-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the G8032 ring"; + } + } + } + container xconnect-groups { + description + "List of xconnect groups"; + list xconnect-group { + key "name"; + description + "Xconnect group"; + container p2p-xconnects { + description + "List of point to point xconnects"; + list p2p-xconnect { + key "name"; + description + "Point to point xconnect"; + container pseudowire-evpn-srv6s { + description + "List of EVPN SRv6 Services"; + list pseudowire-evpn-srv6 { + key "eviid remote-acid source-acid"; + description + "EVPN SRv6 P2P Service Configuration"; + leaf pseudowire-evpn-srv6-locator { + type xr:Cisco-ios-xr-string { + length "1..58"; + } + description + "Specify SRv6 locator name"; + } + leaf eviid { + type Evpnvpnid-range; + description + "Ethernet VPN ID"; + } + leaf remote-acid { + type Pseudowire-evpnacid-range; + description + "Remote AC ID"; + } + leaf source-acid { + type Pseudowire-evpnacid-range; + description + "Source AC ID"; + } + } + } + container pseudowire-evpn-srv6-services { + description + "List of EVPN SRv6 Services keyed by EVI and + Service ID"; + list pseudowire-evpn-srv6-service { + key "eviid service-id"; + description + "EVPN SRv6 P2P Service Configuration"; + leaf pseudowire-evpn-srv6-locator { + type xr:Cisco-ios-xr-string { + length "1..58"; + } + description + "Specify SRv6 locator name"; + } + leaf eviid { + type Evpnvpnid-range; + description + "Ethernet VPN ID"; + } + leaf service-id { + type Pseudowire-evpnacid-range; + description + "Service ID (Target and Source AC ID)"; + } + } + } + container backup-attachment-circuits { + description + "List of backup attachment circuits"; + list backup-attachment-circuit { + key "interface-name"; + description + "Backup attachment circuit"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the attachment circuit interface"; + } + } + } + container pseudowire-evpns { + description + "List of EVPN Services"; + list pseudowire-evpn { + key "eviid remote-acid source-acid"; + description + "EVPN P2P Service Configuration"; + leaf class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the pseudowire class"; + } + leaf admission-control-bandwidth { + type uint32 { + range "0..4294967295"; + } + description + "EVPN Pseudowire Admission Control + Bandwidth"; + } + leaf eviid { + type Evpnvpnid-range; + description + "Ethernet VPN ID"; + } + leaf remote-acid { + type Pseudowire-evpnacid-range; + description + "Remote AC ID"; + } + leaf source-acid { + type Pseudowire-evpnacid-range; + description + "Source AC ID"; + } + } + } + container pseudowire-neighbor-pseudowire-ids { + description + "List of pseudowires"; + + grouping PSEUDOWIRE-CONTENT { + description + "PSEUDOWIRE CONTENT"; + container mpls-static-labels { + description + "MPLS static labels"; + leaf local-static-label { + type Pseudowire-label-range; + description + "Pseudowire local static label"; + } + leaf remote-static-label { + type Pseudowire-label-range; + description + "Pseudowire remote static label"; + } + } + container backup-pseudowires { + description + "List of pseudowires"; + list backup-pseudowire { + key "neighbor pseudowire-id"; + description + "Backup pseudowire for the cross connect"; + container backup-mpls-static-labels { + description + "MPLS static labels"; + leaf local-static-label { + type Pseudowire-label-range; + description + "Pseudowire local static label"; + } + leaf remote-static-label { + type Pseudowire-label-range; + description + "Pseudowire remote static label"; + } + } + leaf backup-pw-class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "PW class template name to use for the + backup PW"; + } + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + } + } + container l2tp-static-attributes { + description + "L2TP Static Attributes"; + container l2tp-remote-cookie { + description + "L2TP remote cookie"; + leaf size { + type L2tp-cookie-size; + description + "Remote cookie size"; + } + leaf lower-value { + type L2tp-cookie-value-range; + description + "Lower remote cookie value"; + } + leaf higher-value { + type L2tp-cookie-value-range; + description + "Higher remote cookie value"; + } + } + container l2tp-secondary-local-cookie { + description + "L2TP secondary local cookie"; + leaf size { + type L2tp-cookie-size; + description + "Local cookie size"; + } + leaf lower-value { + type L2tp-cookie-value-range; + description + "Lower local cookie value"; + } + leaf higher-value { + type L2tp-cookie-value-range; + description + "Higher local cookie value"; + } + } + container l2tp-local-cookie { + description + "L2TP local cookie"; + leaf size { + type L2tp-cookie-size; + description + "Local cookie size"; + } + leaf lower-value { + type L2tp-cookie-value-range; + description + "Lower local cookie value"; + } + leaf higher-value { + type L2tp-cookie-value-range; + description + "Higher local cookie value"; + } + } + leaf l2tp-remote-session-id { + type L2tp-session-id-range; + description + "L2TP remote session ID"; + } + leaf l2tp-local-session-id { + type L2tp-session-id-range; + description + "L2TP local session ID"; + } + } + container l2tp-static { + description + "Pseudowire L2TPv3 static configuration"; + leaf enable { + type empty; + description + "Enable pseudowire L2TPv3 static + configuration"; + } + } + leaf tag-impose { + type Pseudowire-tag-range; + description + "Tag Impose vlan tagged mode"; + } + leaf class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the pseudowire class"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Value of the Pseudowire source address. + Must be IPv6 only."; + } + leaf bandwidth { + type uint32 { + range "0..4294967295"; + } + description + "Pseudowire Bandwidth"; + } + } + list pseudowire-neighbor-pseudowire-id { + key "neighbor pseudowire-id"; + description + "Pseudowire configuration"; + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Pseudowire IPv4 address"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + uses PSEUDOWIRE-CONTENT; + } + list pseudowire-pseudowire-address-pseudowire-id { + key "pseudowire-address pseudowire-id"; + description + "Pseudowire configuration"; + leaf pseudowire-address { + type inet:ipv6-address-no-zone; + description + "Pseudowire IPv6 address. A pseudowire can + have only one address: IPv4 or IPv6"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + uses PSEUDOWIRE-CONTENT; + } + } + container monitor-sessions { + description + "List of Monitor session segments"; + list monitor-session { + key "name"; + description + "Monitor session segment"; + leaf enable { + type empty; + description + "Enable monitor session segment "; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of the monitor session"; + } + } + } + container pseudowire-routeds { + description + "List of pseudowire-routed"; + list pseudowire-routed { + key "global-id prefix acid sacid"; + description + "Pseudowire configuration"; + leaf tag-impose { + type Pseudowire-tag-range; + description + "Tag Impose vlan tagged mode"; + } + leaf class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the pseudowire class"; + } + leaf global-id { + type Pseudowire-gbl-id-range; + description + "Target Global ID"; + } + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Target Prefix"; + } + leaf acid { + type Pseudowire-acid-range; + description + "Target AC ID"; + } + leaf sacid { + type Pseudowire-acid-range; + description + "Source AC ID"; + } + } + } + container vxlan-tunnel-neighbor-nve-id-vnis { + description + "List of VXLAN tunnels"; + list vxlan-tunnel-neighbor-nve-id-vni { + key "neighbor nve-id vni"; + description + "VXLAN tunnel configuration"; + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "VXLAN Tunnel peer IPv4 address"; + } + leaf nve-id { + type Nveid-range; + description + "NVE ID"; + } + leaf vni { + type Vni-range; + description + "VNI"; + } + } + list vxlan-tunnel-neighbor-ipv6-nve-id-vni { + key "neighbor-ipv6 nve-id vni"; + description + "VXLAN tunnel configuration"; + leaf neighbor-ipv6 { + type inet:ipv6-address-no-zone; + description + "VXLAN tunnel peer IPv6 address. A VXLAN + tunnel can have only one address: IPv4 or + IPv6"; + } + leaf nve-id { + type Nveid-range; + description + "NVE ID"; + } + leaf vni { + type Vni-range; + description + "VNI"; + } + } + } + container pseudowire-evpn-services { + description + "List of EVPN Services keyed by EVI and + Service ID"; + list pseudowire-evpn-service { + key "eviid service-id"; + description + "EVPN P2P Service Configuration"; + leaf class { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the pseudowire class"; + } + leaf admission-control-bandwidth { + type uint32 { + range "0..4294967295"; + } + description + "EVPN Service Pseudowire Admission Control + Bandwidth"; + } + leaf eviid { + type Evpnvpnid-range; + description + "Ethernet VPN ID"; + } + leaf service-id { + type Pseudowire-evpnacid-range; + description + "Service ID (Remote and Source AC ID)"; + } + } + } + container attachment-circuits { + description + "List of attachment circuits"; + list attachment-circuit { + key "name"; + description + "Attachment circuit interface"; + leaf enable { + type empty; + description + "Enable attachment circuit interface"; + } + leaf name { + type xr:Interface-name; + description + "Name of the attachment circuit interface"; + } + } + } + leaf evpnvpws-seamless-integration { + type Evpnvpws-seamless-integration; + description + "Description for EVPN-VPWS Seamless + Integration with Legacy VPWS"; + } + leaf p2p-description { + type string { + length "1..64"; + } + description + "cross connect description Name"; + } + leaf interworking { + type Interworking; + description + "Interworking"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..38"; + } + description + "Name of the point to point xconnect"; + } + } + } + container mp2mp-xconnects { + description + "List of multi point to multi point xconnects"; + list mp2mp-xconnect { + key "name"; + description + "Multi point to multi point xconnect"; + container mp2mp-auto-discovery { + description + "auto-discovery in this MP2MP"; + container route-distinguisher { + description + "Route Distinguisher"; + leaf type { + type Bgp-route-distinguisher; + description + "Router distinguisher type"; + } + leaf as { + when "../type = 'two-byte-as' or ../type = 'four-byte-as'" { + description + "../Type = TwoByteAS or ../Type = + FourByteAS"; + } + type Rdas-range; + description + "Two byte or 4 byte AS number"; + } + leaf as-index { + when "../type = 'two-byte-as' or ../type = 'four-byte-as'" { + description + "../Type = TwoByteAS or ../Type = + FourByteAS"; + } + type Rdas-index; + description + "AS:nn (hex or decimal format)"; + } + leaf address { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "IPV4 address"; + } + leaf addr-index { + when "../type = 'ipv4-address'" { + description + "../Type = IPV4Address"; + } + type Rd-addr-index; + description + "Addr index"; + } + } + container mp2mp-route-policy { + description + "Route policy"; + leaf export { + type string; + description + "Export route policy"; + } + } + container mp2mp-route-targets { + description + "Route Target"; + list mp2mp-route-target { + must "two-byte-as-or-four-byte-as or ipv4-address" { + description + "TwoByteAS-or-FourbyteAS or IPV4Address + must be present."; + } + key "role format"; + description + "Name of the Route Target"; + leaf role { + type Bgp-route-target-role; + description + "Role of the router target type"; + } + leaf format { + type Bgp-route-target-format; + description + "Format of the route target"; + } + list two-byte-as-or-four-byte-as { + when "../format = 'two-byte-as' or ../format = 'four-byte-as'" { + description + "../Format = TwoByteAS or ../Format = + FourbyteAS"; + } + key "as as-index"; + description + "two byte as or four byte as"; + leaf as { + type Rdas-range; + description + "Two byte or 4 byte AS number"; + } + leaf as-index { + type Rdas-index; + description + "AS:nn (hex or decimal format)"; + } + } + list ipv4-address { + when "../format = 'ipv4-address'" { + description + "../Format = IPV4Address"; + } + key "address addr-index"; + description + "ipv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPV4 address"; + } + leaf addr-index { + type Rd-addr-index; + description + "Addr index"; + } + } + } + } + container mp2mp-signaling-protocol { + description + "signaling protocol in this MP2MP"; + container flow-label-load-balance { + description + "Enable Flow Label based load balancing"; + leaf flow-label { + type Flow-label-load-balance; + description + "Flow Label load balance type"; + } + leaf static { + type empty; + description + "Static Flow Label"; + } + } + container ceids { + description + "Local Customer Edge Identifier Table"; + list ceid { + key "ce-id"; + description + "Local Customer Edge Identifier "; + container remote-ceid-attachment-circuits { + description + "AC And Remote Customer Edge Identifier + Table"; + list remote-ceid-attachment-circuit { + key "name remote-ce-id"; + description + "AC And Remote Customer Edge Identifier"; + leaf name { + type xr:Interface-name; + description + "The name of the Attachment Circuit"; + } + leaf remote-ce-id { + type Ce-id-range; + description + "Remote Customer Edge Identifier"; + } + } + } + leaf evpn-vpws-seamless-integration { + type Evpnvpws-seamless-integration; + description + "Description for EVPN-VPWS Seamless + Integration with Legacy VPWS"; + } + leaf ce-id { + type Ce-id-range; + description + "Local Customer Edge Identifier"; + } + } + } + leaf ce-range { + type Cedge-range; + description + "Local Customer Edge Identifier"; + } + leaf enable { + type empty; + description + "Enable signaling protocol"; + } + } + leaf enable { + type empty; + description + "Enable auto-discovery"; + } + } + leaf mp2mpmtu { + type L2vpn-mtu-range; + units "byte"; + description + "Maximum transmission unit for this MP2MP + VPWS instance"; + } + leaf mp2mp-control-word { + type empty; + description + "Disable control word"; + } + leaf mp2mpl2-encapsulation { + type L2-encapsulation; + description + "Configure Layer 2 Encapsulation"; + } + leaf mp2mp-interworking { + type Interworking; + description + "Interworking"; + } + leaf mp2mp-shutdown { + type empty; + description + "shutdown this MP2MP VPWS instance"; + } + leaf mp2mpvpn-id { + type Vpnid-range; + description + "VPN Identifier"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..26"; + } + description + "Name of the multi point to multi point + xconnect"; + } + } + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the xconnect group"; + } + } + } + container bridge-domain-groups { + description + "List of bridge groups"; + list bridge-domain-group { + key "name"; + description + "Bridge group"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Bridge group"; + } + uses BRIDGE-DOMAIN-TABLE; + } + } + container pseudowire-classes { + description + "List of pseudowire classes"; + list pseudowire-class { + key "name"; + description + "Pseudowire class"; + container l2tpv3-encapsulation { + description + "L2TPv3 encapsulation"; + container sequencing { + description + "Sequencing"; + leaf sequencing { + type L2tpv3-sequencing; + default "off"; + description + "Sequencing"; + } + leaf resync-threshold { + type Resync-threshold-range; + default "5"; + description + "Out of sequence threshold"; + } + } + container type-of-service { + description + "Type of service"; + leaf type-of-service-value { + type Type-of-service-range; + description + "Type of service value"; + } + leaf type-of-service-mode { + type Type-of-service-mode; + description + "Type of service mode"; + } + } + container signaling-protocol { + description + "L2TPv3 signaling protocol"; + leaf protocol { + type L2tp-signaling-protocol; + default "l2tpv3"; + description + "L2TPv3 signaling protocol"; + } + leaf l2tpv3-class-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the L2TPv3 class name"; + } + } + container path-mtu { + description + "Path maximum transmission unit"; + leaf enable { + type empty; + description + "Enable path MTU"; + } + leaf max-path-mtu { + type Max-path-mtu-range; + description + "Maximum path maximum transmission unit"; + } + } + leaf df-bit-set { + type empty; + description + "Set the do not fragment bit to 1"; + } + leaf cookie-size { + type L2tp-cookie-size; + default "zero"; + description + "Cookie size"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source IP address"; + } + leaf transport-mode { + type Transport-mode; + description + "Transport mode"; + } + leaf enable { + type empty; + description + "Enable L2TPv3 encapsulation"; + } + leaf time-to-live { + type Time-to-live-range; + description + "Time to live"; + } + } + container backup-disable-delay { + description + "Back Up Pseudowire class"; + leaf type { + type Backup-disable; + description + "Delay or Never"; + } + leaf disable-backup { + when "../type = 'delay'" { + description + "../Type = Delay"; + } + type Backup-disable-delay-range; + description + "Disable backup delay"; + } + } + container mpls-encapsulation { + description + "MPLS encapsulation"; + container sequencing { + description + "Sequencing"; + leaf sequencing { + type Mpls-sequencing; + default "off"; + description + "Sequencing"; + } + leaf resync-threshold { + type Resync-threshold-range; + default "5"; + description + "Out of sequence threshold"; + } + } + container mpls-redundancy { + description + "Redundancy options for MPLS encapsulation"; + leaf redundancy-one-way { + type empty; + description + "Force one-way PW redundancy behavior in + Redundancy Group"; + } + leaf redundancy-initial-delay { + type Pw-redundancy-initial-delay-range; + units "second"; + description + "Initial delay before activating the + redundant PW, in seconds"; + } + } + container preferred-path { + description + "Preferred path"; + leaf type { + type Preferred-path; + description + "Preferred Path Type"; + } + leaf interface-tunnel-number { + when "../type = 'te-tunnel' or ../type = 'ip-tunnel' or ../type = 'tp-tunnel'" { + description + "../Type = TE-Tunnel or ../Type = + IP-Tunnel or ../Type = TP-Tunnel"; + } + type uint32 { + range "0..65535"; + } + description + "Interface Tunnel number for preferred path"; + } + leaf fallback-disable { + when "../type = 'te-tunnel' or ../type = 'ip-tunnel' or ../type = 'tp-tunnel' or ../type = 'sr-te-policy' or ../type = 'named-te-tunnel'" { + description + "../Type = TE-Tunnel or ../Type = + IP-Tunnel or ../Type = TP-Tunnel or . + ./Type = SR-TE-Policy or ../Type = + Named-TE-Tunnel"; + } + type empty; + description + "Fallback disable"; + } + leaf path-name { + when "../type = 'sr-te-policy' or ../type = 'named-te-tunnel'" { + description + "../Type = SR-TE-Policy or ../Type = + Named-TE-Tunnel"; + } + type xr:Cisco-ios-xr-string { + length "1..60"; + } + description + "Name of the SR TE Policy or IFName"; + } + } + container load-balance-group { + description + "Load Balancing"; + container flow-label-load-balance { + description + "Enable Flow Label based load balancing"; + leaf flow-label { + type Flow-label-load-balance; + description + "Flow Label load balance type"; + } + leaf static { + type empty; + description + "Static Flow Label"; + } + } + leaf flow-label-load-balance-code { + type Flow-label-tlv-code; + description + "Enable Legacy Flow Label TLV code"; + } + leaf pw-label-load-balance { + type Load-balance; + description + "Enable PW Label based Load Balancing"; + } + } + leaf pw-switching-tlv { + type Pw-switching-point-tlv; + description + "Pseudowire Switching Point Tlv"; + } + leaf static-tag-rewrite { + type Tag-rewrite-range; + description + "Static Tag rewrite"; + } + leaf signaling-protocol { + type Mpls-signaling-protocol; + default "ldp"; + description + "MPLS signaling protocol"; + } + leaf vccv-type { + type Vccv-verification; + default "lsp-ping"; + description + "VCCV verification type"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source IP address"; + } + leaf transport-mode { + type Transport-mode; + description + "Transport mode"; + } + leaf enable { + type empty; + description + "Enable MPLS encapsulation"; + } + leaf control-word { + type Control-word; + description + "Enable control word"; + } + } + leaf mac-withdraw { + type empty; + description + "Enable backup MAC withdraw"; + } + leaf enable { + type empty; + description + "Enable pseudowire class"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the pseudowire class"; + } + } + } + container vlan-switches { + description + "List of VLAN Switches"; + list vlan-switch { + key "name"; + description + "VLAN Switch"; + container vlan-switch-ports { + description + "List of VLAN Switched Ports"; + list vlan-switch-port { + key "interface-name"; + description + "VLAN Switched Port"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container vni-ranges { + description + "Configure VLAN Switch VxLAN Ethernet VPN-ID + ranges"; + leaf vni-range1-min { + type uint32; + description + "Minimum value of VNI range #1"; + } + leaf vni-range1-max { + type uint32; + description + "Maximum value of VNI range #1"; + } + leaf vni-range2-min { + type uint32; + description + "Minimum value of VNI range #2"; + } + leaf vni-range2-max { + type uint32; + description + "Maximum value of VNI range #2"; + } + leaf vni-range3-min { + type uint32; + description + "Minimum value of VNI range #3"; + } + leaf vni-range3-max { + type uint32; + description + "Maximum value of VNI range #3"; + } + leaf vni-range4-min { + type uint32; + description + "Minimum value of VNI range #4"; + } + leaf vni-range4-max { + type uint32; + description + "Maximum value of VNI range #4"; + } + leaf vni-range5-min { + type uint32; + description + "Minimum value of VNI range #5"; + } + leaf vni-range5-max { + type uint32; + description + "Maximum value of VNI range #5"; + } + leaf vni-range6-min { + type uint32; + description + "Minimum value of VNI range #6"; + } + leaf vni-range6-max { + type uint32; + description + "Maximum value of VNI range #6"; + } + leaf vni-range7-min { + type uint32; + description + "Minimum value of VNI range #7"; + } + leaf vni-range7-max { + type uint32; + description + "Maximum value of VNI range #7"; + } + leaf vni-range8-min { + type uint32; + description + "Minimum value of VNI range #8"; + } + leaf vni-range8-max { + type uint32; + description + "Maximum value of VNI range #8"; + } + leaf vni-range9-min { + type uint32; + description + "Minimum value of VNI range #9"; + } + leaf vni-range9-max { + type uint32; + description + "Maximum value of VNI range #9"; + } + } + container vlan-ranges { + description + "Configure VLAN Switch VLAN ranges"; + leaf vlan-range1-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #1"; + } + leaf vlan-range1-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #1"; + } + leaf vlan-range2-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #2"; + } + leaf vlan-range2-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #2"; + } + leaf vlan-range3-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #3"; + } + leaf vlan-range3-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #3"; + } + leaf vlan-range4-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #4"; + } + leaf vlan-range4-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #4"; + } + leaf vlan-range5-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #5"; + } + leaf vlan-range5-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #5"; + } + leaf vlan-range6-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #6"; + } + leaf vlan-range6-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #6"; + } + leaf vlan-range7-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #7"; + } + leaf vlan-range7-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #7"; + } + leaf vlan-range8-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #8"; + } + leaf vlan-range8-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #8"; + } + leaf vlan-range9-min { + type L2vpn-vs-vlan-tag; + description + "Minimum value of VLAN range #9"; + } + leaf vlan-range9-max { + type L2vpn-vs-vlan-tag; + description + "Maximum value of VLAN range #9"; + } + } + container routed-interface-ranges { + description + "Configure VLAN Switch Routed BVI Interface + ranges"; + leaf interface-range1-min { + type uint32; + description + "Minimum value of Interface range #1"; + } + leaf interface-range1-max { + type uint32; + description + "Maximum value of Interface range #1"; + } + leaf interface-range2-min { + type uint32; + description + "Minimum value of Interface range #2"; + } + leaf interface-range2-max { + type uint32; + description + "Maximum value of Interface range #2"; + } + leaf interface-range3-min { + type uint32; + description + "Minimum value of Interface range #3"; + } + leaf interface-range3-max { + type uint32; + description + "Maximum value of Interface range #3"; + } + leaf interface-range4-min { + type uint32; + description + "Minimum value of Interface range #4"; + } + leaf interface-range4-max { + type uint32; + description + "Maximum value of Interface range #4"; + } + leaf interface-range5-min { + type uint32; + description + "Minimum value of Interface range #5"; + } + leaf interface-range5-max { + type uint32; + description + "Maximum value of Interface range #5"; + } + leaf interface-range6-min { + type uint32; + description + "Minimum value of Interface range #6"; + } + leaf interface-range6-max { + type uint32; + description + "Maximum value of Interface range #6"; + } + leaf interface-range7-min { + type uint32; + description + "Minimum value of Interface range #7"; + } + leaf interface-range7-max { + type uint32; + description + "Maximum value of Interface range #7"; + } + leaf interface-range8-min { + type uint32; + description + "Minimum value of Interface range #8"; + } + leaf interface-range8-max { + type uint32; + description + "Maximum value of Interface range #8"; + } + leaf interface-range9-min { + type uint32; + description + "Minimum value of Interface range #9"; + } + leaf interface-range9-max { + type uint32; + description + "Maximum value of Interface range #9"; + } + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the VLAN Switch"; + } + uses BRIDGE-DOMAIN-TABLE; + } + } + container flexible-xconnect-service-table { + description + "List of Flexible XConnect Services"; + container vlan-unaware-flexible-xconnect-services { + description + "List of Vlan-Unaware Flexible XConnect + Services"; + list vlan-unaware-flexible-xconnect-service { + key "name"; + description + "Flexible XConnect Service"; + container vlan-unaware-fxc-attachment-circuits { + description + "List of attachment circuits"; + list vlan-unaware-fxc-attachment-circuit { + key "name"; + description + "Attachment circuit interface"; + leaf name { + type xr:Interface-name; + description + "Name of the attachment circuit interface"; + } + } + } + container vlan-unaware-fxc-pseudowire-evpns { + description + "List of EVPN Services"; + list vlan-unaware-fxc-pseudowire-evpn { + key "eviid acid"; + description + "EVPN FXC Service Configuration"; + leaf eviid { + type Evpnvpnid-range; + description + "Ethernet VPN ID"; + } + leaf acid { + type Pseudowire-acid-range; + description + "AC ID"; + } + } + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..23"; + } + description + "Name of the Flexible XConnect Service"; + } + } + } + container vlan-aware-flexible-xconnect-services { + description + "List of Vlan-Aware Flexible XConnect Services"; + list vlan-aware-flexible-xconnect-service { + key "eviid"; + description + "Flexible XConnect Service"; + container vlan-aware-fxc-attachment-circuits { + description + "List of attachment circuits"; + list vlan-aware-fxc-attachment-circuit { + key "name"; + description + "Attachment circuit interface"; + leaf name { + type xr:Interface-name; + description + "Name of the attachment circuit interface"; + } + } + } + leaf eviid { + type Evpnvpnid-range; + description + "Ethernet VPN ID"; + } + } + } + } + container redundancy { + description + "Redundancy groups"; + container iccp-redundancy-groups { + description + "List of Inter-Chassis Communication Protocol + redundancy groups"; + list iccp-redundancy-group { + key "group-id"; + description + "ICCP Redundancy group"; + container iccp-interfaces { + description + "List of interfaces"; + list iccp-interface { + key "interface-name"; + description + "Interface name"; + leaf secondary-vlan-range { + type string; + description + "Secondary VLAN range, in the form of 1-3,5 + ,8-11"; + } + leaf recovery-delay { + type uint32 { + range "30..3600"; + } + default "180"; + description + "Failure clear recovery delay"; + } + leaf primary-vlan-range { + type string; + description + "Primary VLAN range, in the form of 1-3,5 + ,8-11"; + } + leaf mac-flush-tcn { + type empty; + description + "Enable STP-TCN MAC flushing"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + leaf multi-homing-node-id { + type uint32 { + range "0..254"; + } + description + "ICCP-based service multi-homing node ID"; + } + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "Group ID"; + } + } + } + leaf enable { + type empty; + description + "Enable redundancy groups"; + } + } + } + container pbb { + description + "L2VPN PBB Global"; + leaf backbone-source-mac { + type yang:mac-address; + description + "Backbone Source MAC"; + } + } + container auto-discovery { + description + "Global auto-discovery attributes"; + container bgp-signaling { + description + "Global bgp signaling attributes"; + leaf mtu-mismatch-ignore { + type empty; + description + "Ignore MTU mismatch for auto-discovered + pseudowires"; + } + } + } + container utility { + description + "L2VPN utilities"; + container logging { + description + "L2VPN logging utility"; + leaf bridge-domain-state-change { + type empty; + description + "Enable Bridge Domain state change logging"; + } + leaf pseudowire-state-change { + type empty; + description + "Enable pseudowire state change logging"; + } + leaf vfi { + type empty; + description + "Enable VFI state change logging"; + } + leaf nsr-state-change { + type empty; + description + "Enable Non Stop Routing state change logging"; + } + leaf pwhe-replication-state-change { + type empty; + description + "Enable PW-HE Replication state change logging"; + } + } + } + container snmp { + description + "SNMP related configuration"; + container mib { + description + "MIB related configuration"; + container mib-interface { + description + "Interface related configuration for MIB"; + container format { + description + "MIB interface name output format"; + leaf external-interface-format { + type empty; + description + "Set MIB interface name output in slash + format (/)"; + } + } + } + container mib-pseudowire { + description + "Pseudowire related configuration for MIB"; + leaf statistics { + type empty; + description + "Enable pseudowire statistics in MIB output"; + } + } + } + } + leaf mtu-mismatch-ignore { + type empty; + description + "Ignore MTU Mismatch for XCs"; + } + leaf tcn-propagation { + type empty; + description + "Topology change notification propagation"; + } + leaf pwoam-refresh { + type uint32 { + range "1..4095"; + } + units "second"; + description + "Configure PW OAM refresh interval"; + } + leaf load-balance { + type Load-balance; + description + "Enable flow load balancing on l2vpn bridges"; + } + leaf mspw-description { + type string { + length "1..64"; + } + description + "MS-PW global description"; + } + leaf mac-limit-threshold { + type Mac-limit-threshold-range; + units "percentage"; + description + "Configure MAC limit threshold percent"; + } + leaf mtu-mismatch-ignore-auto-discovery { + type empty; + description + "Ignore MTU mismatch for auto-discovered PWs"; + } + leaf pw-status-disable { + type empty; + description + "Disable PW status"; + } + leaf enable { + type empty; + description + "Enable L2VPN feature"; + } + leaf pw-grouping { + type empty; + description + "Enable PW grouping"; + } + leaf capability { + type L2vpn-capability-mode; + description + "L2VPN Capability Mode"; + } + leaf l2vpn-router-id { + type inet:ipv4-address-no-zone; + description + "Global L2VPN Router ID"; + } + } + container generic-interface-lists { + description + "Generic Interface List configuration"; + list generic-interface-list { + key "generic-interface-list-name"; + description + "Generic interface list"; + container interfaces { + description + "Interface table"; + list interface { + key "interface-name"; + description + "Interface"; + leaf enable { + type empty; + description + "Enable interface"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + } + } + leaf enable { + type empty; + description + "Enable interface list"; + } + leaf generic-interface-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the interface list"; + } + } + } + container evpn { + description + "EVPN configuration"; + container evpn-tables { + description + "EVPN submodes"; + container evpn-timers { + description + "Enter EVPN timers configuration submode"; + leaf evpn-carving { + type uint32 { + range "0..300"; + } + default "0"; + description + "Global Carving timer"; + } + leaf evpn-core-de-isolation { + type uint32 { + range "60..300"; + } + default "60"; + description + "Global Core de-isolation timer"; + } + leaf evpn-mac-postpone { + type uint32 { + range "0..300"; + } + default "300"; + description + "Global MAC postpone timer"; + } + leaf evpn-ac-debounce { + type uint32 { + range "0..300000"; + } + default "3000"; + description + "Global AC Debounce timer"; + } + leaf evpn-backup-replacement-delay { + type uint32 { + range "0..300000"; + } + units "millisecond"; + default "6000"; + description + "Global Backup Replacement Delay (milliseconds) + timer"; + } + leaf evpn-recovery { + type uint32 { + range "0..3600"; + } + default "30"; + description + "Global Recovery timer"; + } + leaf enable { + type empty; + description + "Enable EVPN timers"; + } + leaf evpn-peering { + type uint32 { + range "0..300"; + } + default "3"; + description + "Global Peering timer"; + } + } + container evpn-virtual-access-sub-interfaces { + description + "Access Sub-interface Virtual Ethernet-Segment"; + list evpn-virtual-access-sub-interface { + key "interface-name"; + description + "Access Sub-interface Virtual Ethernet-Segment"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the sub-interface"; + } + uses EVPN-VIRTUAL-ETHERNET-SEGMENT; + } + } + container evpn-virtual-access-vfis { + description + "Virtual Access VFI interfaces"; + list evpn-virtual-access-vfi { + key "name"; + description + "Virtual Access VFI"; + container evpn-virtual-access-vfi-timers { + description + "Enter Virtual Forwarding Interface timers + configuration submode"; + leaf evpn-virtual-access-vfiac-debounce { + type uint32 { + range "0..300000"; + } + default "3000"; + description + "Virtual Forwarding Interface-specific AC + Debounce timer"; + } + leaf evpn-virtual-access-vfi-recovery { + type uint32 { + range "0..3600"; + } + default "30"; + description + "Virtual Forwarding Interface-specific + Recovery timer"; + } + leaf evpn-virtual-access-vfi-peering { + type uint32 { + range "0..300"; + } + default "3"; + description + "Virtual Forwarding Interface-specific + Peering timer"; + } + leaf evpn-virtual-access-vfi-carving { + type uint32 { + range "0..300"; + } + default "0"; + description + "Virtual Forwarding Interface-specific + Carving timer"; + } + leaf enable { + type empty; + description + "Enable Virtual Forwarding Interface timers"; + } + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Virtual Access VFI"; + } + uses EVPN-VIRTUAL-ETHERNET-SEGMENT; + } + } + container evpn-load-balancing { + description + "Enter EVPN Loadbalancing configuration submode"; + leaf evpn-static-flow-label { + type empty; + description + "Enable Static Flow Label based load balancing"; + } + leaf enable { + type empty; + description + "Enable EVPN Loadbalancing"; + } + } + container evpn-virtual-access-evi { + description + "Virtual Access EVI interfaces"; + leaf enable { + type empty; + description + "Enable Virtual Access EVI Interface"; + } + uses EVPN-CORE-ISOLATION-GROUP; + uses EVPN-VIRTUAL-ETHERNET-SEGMENT; + } + container evpn-bgp-auto-discovery { + description + "Enable Autodiscovery BGP in EVPN"; + leaf enable { + type empty; + description + "Enable Autodiscovery BGP"; + } + uses EVPN-ROUTE-DISTINGUISHER; + } + container evpn-groups { + description + "Enter EVPN Group Table submode"; + list evpn-group { + key "group-id"; + description + "Enter EVPN Group submode"; + container evpn-group-core-interfaces { + description + "EVPN Group core interfaces"; + list evpn-group-core-interface { + key "interface-name"; + description + "EVPN Group Core interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the EVPN Group core interface"; + } + } + } + leaf group-id { + type Evpn-group-id-range; + description + "Group ID"; + } + } + } + container evpn-instances { + description + "Enter EVPN Instance configuration submode"; + list evpn-instance { + key "vpn-id encapsulation side"; + description + "Enter EVPN Instance configuration submode"; + container evpn-instance-bgp-auto-discovery { + description + "Enable Autodiscovery BGP in EVPN Instance"; + container evpn-route-policy { + description + "Route policy"; + leaf export { + type string; + description + "Export route policy"; + } + leaf import { + type string; + description + "Import route policy"; + } + } + container evpn-route-targets { + description + "Route Target"; + list evpn-route-target-none { + key "role stitching"; + description + "Route Target none"; + leaf role { + type Bgp-route-target-role; + description + "Role of the router target type"; + } + leaf stitching { + type Bgp-route-target; + description + "whether RT is Stitching RT (DEPRECATED)"; + } + } + list evpn-route-target-two-byte-as { + key "role as as-index stitching"; + description + "Route Target two byte as"; + leaf role { + type Bgp-route-target-role; + description + "Role of the router target type"; + } + leaf as { + type Rdas-range; + description + "Two byte number"; + } + leaf as-index { + type Rdas-index; + description + "AS:nn (hex or decimal format)"; + } + leaf stitching { + type Bgp-route-target; + description + "whether RT is Stitching RT (DEPRECATED)"; + } + } + list evpn-route-target-four-byte-as { + key "role as as-index stitching"; + description + "Route Target four byte as"; + leaf role { + type Bgp-route-target-role; + description + "Role of the router target type"; + } + leaf as { + type Rdas-range; + description + "Four byte number"; + } + leaf as-index { + type Rdas-index; + description + "AS:nn (hex or decimal format)"; + } + leaf stitching { + type Bgp-route-target; + description + "whether RT is Stitching RT (DEPRECATED)"; + } + } + list evpn-route-target-ipv4-address { + key "role address addr-index stitching"; + description + "Route target ipv4 address"; + leaf role { + type Bgp-route-target-role; + description + "Role of the router target type"; + xr:xr-xml-map "l2vpn_cfg:Role"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IPV4 address"; + } + leaf addr-index { + type Rd-addr-index; + description + "Addr index"; + } + leaf stitching { + type Bgp-route-target; + description + "whether RT is Stitching RT (DEPRECATED)"; + } + } + } + leaf table-policy { + type string; + description + "Table Policy for installation of forwarding + data to L2FIB"; + } + leaf implicit-import-disable { + type empty; + description + "Disables BGP Implicit Import"; + } + leaf enable { + type empty; + description + "Enable Autodiscovery BGP"; + } + uses EVPN-ROUTE-DISTINGUISHER; + } + container evpn-instance-etree { + description + "Enter EVPN E-Tree configuration submode"; + leaf evpn-instance-etree-rt-leaf { + type empty; + description + "Configure E-Tree as Route-Target leaf"; + } + leaf evpn-instance-etree-leaf { + type empty; + description + "Configure E-Tree as leaf"; + } + leaf enable { + type empty; + description + "Enable EVPN E-Tree"; + } + } + container evpn-instance-advertise-mac { + description + "Enter Advertise local MAC-only routes + configuration submode"; + leaf evi-advertise-mac-bvi { + type empty; + description + "Advertise local MAC-only and BVI MAC routes"; + } + leaf enable { + type empty; + description + "Enable Advertise local MAC-only routes"; + } + } + container evpn-instance-multicast { + description + "Enter Multicast configuration submode"; + leaf evi-mcast-source-connected { + type empty; + description + "Enable Multicast source connectivity"; + } + leaf enable { + type empty; + description + "Enable Multicast"; + } + } + container evpn-instance-proxy { + description + "Enter Proxy configuration submode"; + leaf enable { + type empty; + description + "Enable Proxy"; + } + leaf evi-proxy-igmp-snooping { + type empty; + description + "Enable IGMP-snooping proxy mode (selective + replication)"; + } + } + container evpn-instance-load-balancing { + description + "Enter Loadbalancing configuration submode"; + leaf evi-static-flow-label { + type empty; + description + "Enable Static Flow Label based load + balancing"; + } + leaf enable { + type empty; + description + "Enable Loadbalancing"; + } + } + leaf evpn-route-sync-vrf-default { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Set EVI for default VRF"; + } + leaf evi-srv6-locator { + type string { + length "1..58"; + } + description + "Specify SRv6 locator name"; + } + leaf evi-reorig-disable { + type empty; + description + "Disable route re-origination"; + } + leaf evi-preferred-nexthop { + type Preferred-nexthop-mode; + description + "Enable Preferred Nexthop mode on this EVI"; + } + leaf evpn-evi-transmit-mtu-zero { + type boolean; + description + "Transmit MTU zero to remote for this EVPN EVI + ."; + } + leaf evpn-instance-description { + type string { + length "1..64"; + } + description + "Description for EVPN Instance"; + } + leaf evpn-evi-mtu-mismatch-ignore { + type boolean; + description + "Ignore mismatch between local and remote MTUs + for this EVPN EVI."; + } + leaf evi-ecmp-disable { + type empty; + description + "Disable ECMP on the EVI"; + } + leaf evpn-evi-mtu-match-enforce { + type empty; + description + "Enforce matching between local and remote + MTUs for this EVPN EVI."; + } + leaf evpn-instance-vpws-single-active-backup-suppression { + type empty; + description + "Configure EVPN VPWS Single-Active Backup + Suppression"; + } + leaf evpn-evi-transmit-l2-mtu { + type empty; + description + "Transmit L2 MTU to remote for this EVPN EVI."; + } + leaf evi-unknown-unicast-flooding-disable { + type empty; + description + "Disable Unknown Unicast Flooding on this EVI"; + } + leaf evi-bvi-coupled-mode { + type empty; + description + "When configured, the associated EVPN core + port will keep the BVI Up in case of AC + failure"; + } + leaf evpn-evi-cw-disable { + type empty; + description + "CW disable for EVPN EVI"; + } + leaf vpn-id { + type Vpnid-range; + description + "EVPN Instance ID"; + } + leaf encapsulation { + type Evpn-encapsulation; + description + "EVPN Instance Encapsulation"; + } + leaf side { + type Evpn-side; + description + "EVPN Instance Side"; + } + } + } + container evpn-logging { + description + "Enter EVPN Logging configuration submode"; + leaf evpn-df-election { + type empty; + description + "Enable Designated Forwarder election logging"; + } + leaf enable { + type empty; + description + "Enable EVPN Logging"; + } + } + container evpn-segment-routing-srv6 { + description + "Enter EVPN Segment-Routing SRv6 submode"; + container evpn-usid-allocation { + description + "USID global allocation type"; + leaf evpn-wide-function-allocation { + type empty; + description + "Enable global allocation type as wide + function allocation"; + } + } + leaf evpn-srv6-locator { + type string { + length "1..58"; + } + description + "Specify default SRv6 locator name"; + } + leaf enable { + type empty; + description + "Enable EVPN Segment-Routing SRv6"; + } + } + container evpn-interfaces { + description + "Attachment Circuit interfaces"; + list evpn-interface { + key "interface-name"; + description + "Attachment circuit interface"; + container evpn-interface-virtual-ethernet-segment { + description + "Enter Virtual Ethernet Segment configuration + submode"; + leaf evpn-interface-virtual-ethernet-segment-mac { + type yang:mac-address; + description + "6 byte value in MAC format"; + } + leaf enable { + type empty; + description + "Enable Virtual Ethernet Segment"; + } + } + container evpnac-timers { + description + "Enter Interface-specific timers configuration + submode"; + leaf evpnac-peering { + type uint32 { + range "0..300"; + } + default "3"; + description + "Interface-specific Peering timer"; + } + leaf evpnac-debounce { + type uint32 { + range "0..300000"; + } + default "3000"; + description + "Interface-specific AC Debounce timer"; + } + leaf evpnac-carving { + type uint32 { + range "0..300"; + } + default "0"; + description + "Interface-specific Carving timer"; + } + leaf enable { + type empty; + description + "Enable Interface-specific timers"; + } + leaf evpnac-recovery { + type uint32 { + range "0..3600"; + } + default "30"; + description + "Interface-specific Recovery timer"; + } + } + container ethernet-segment { + description + "Enter Ethernet Segment configuration submode"; + container es-convergence { + description + "Convergence mode(s) and configuration + options"; + leaf mac-mobility { + type empty; + description + "Enable MAC-mobility triggered flush"; + } + leaf nh-tracking { + type empty; + description + "Nexthop-tracking influenced DF Election"; + } + leaf reroute { + type empty; + description + "Enable reroute to backup peer"; + } + leaf enable { + type empty; + description + "Enable Convergence configuration options"; + } + } + leaf force-single-homed { + type empty; + description + "Force ethernet segment to remain + single-homed"; + } + leaf load-balancing-mode { + type Ethernet-segment-load-balance; + description + "Ethernet-Segment Load Balancing mode"; + } + leaf enable { + type empty; + description + "Enable Ethernet Segment"; + } + leaf backbone-source-mac { + type yang:mac-address; + description + "Backbone Source MAC"; + } + uses SERVICE-CARVING-MCAST-TYPE; + uses ES-IMPORT-ROUTE-TARGET; + uses SERVICE-CARVING-TYPE; + uses IDENTIFIER; + uses PREFERENCE-BASED-SERVICE-CARVING; + uses MANUAL-SERVICE-CARVING; + } + leaf evpn-access-signal-mode { + type Interface-access-signal-mode; + description + "Override default signal sent to bring down + access circuit"; + } + leaf mac-flush { + type Mac-flush-mode; + description + "Enable MAC Flushing"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the attachment circuit interface"; + } + uses EVPN-CORE-ISOLATION-GROUP; + } + } + container evpn-virtual-access-pws { + description + "Virtual Access Pseudowire interfaces"; + list evpn-virtual-access-pw { + key "neighbor pseudowire-id"; + description + "Virtual Access Pseudowire"; + container evpn-virtual-access-pw-timers { + description + "Enter Virtual Access Pseudowire-specific + timers configuration submode"; + leaf evpn-virtual-access-pw-recovery { + type uint32 { + range "0..3600"; + } + default "30"; + description + "Virtual Access Pseudowire-specific Recovery + timer"; + } + leaf evpn-virtual-access-pw-debounce { + type uint32 { + range "0..300000"; + } + default "3000"; + description + "Virtual Access Pseudowire-specific AC + Debounce timer"; + } + leaf evpn-virtual-access-pw-peering { + type uint32 { + range "0..300"; + } + default "3"; + description + "Virtual Access Pseudowire-specific Peering + timer"; + } + leaf enable { + type empty; + description + "Enable Virtual Access Pseudowire-specific + timers"; + } + leaf evpn-virtual-access-pw-carving { + type uint32 { + range "0..300"; + } + default "0"; + description + "Virtual Access Pseudowire-specific Carving + timer"; + } + } + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + leaf pseudowire-id { + type Pseudowire-id-range; + description + "Pseudowire ID"; + } + uses EVPN-VIRTUAL-ETHERNET-SEGMENT; + } + } + container evpn-ethernet-segment { + description + "EVPN Global Ethernet Segment submode"; + container evpn-esi-types { + description + "EVPN ESI type table"; + list evpn-esi-type { + key "esi-type"; + description + "ESI type"; + leaf disable-auto-generation { + type empty; + description + "Disable ESI Autogeneration"; + } + leaf esi-type { + type Evpn-esi-type-range; + description + "ESI type"; + } + } + } + leaf enable { + type empty; + description + "Enable EVPN Global Ethernet Segment submode"; + } + } + leaf evpn-global-transmit-mtu-zero { + type empty; + description + "Transmit MTU zero to remote for all EVIs"; + } + leaf evpn-global-mtu-mismatch-ignore { + type empty; + description + "Ignore mismatch between local and remote MTUs + for all EVIs."; + } + leaf evpn-global-mtu-match-enforce { + type empty; + description + "Enforce matching between local and remote MTUs + for all EVIs."; + } + leaf evpn-global-transmit-l2-mtu { + type empty; + description + "Transmit L2 MTU to remote for all EVIs"; + } + leaf evpn-staggered-bringup { + type uint32 { + range "0..300000"; + } + units "millisecond"; + default "5000"; + description + "Staggered bringup (milliseconds) timer"; + } + leaf evi-cost-out { + type empty; + description + "Configure node to cost-out"; + } + leaf evpn-source-interface { + type xr:Interface-name; + description + "Configure EVPN router-id implicitly through + Loopback Interface"; + } + leaf evpn-cost-in-startup { + type uint32 { + range "30..86400"; + } + units "second"; + description + "Cost-in node after given time (seconds) on + startup timer"; + } + } + leaf enable { + type empty; + description + "Enable EVPN feature"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub1.yang new file mode 100644 index 000000000..3eb7b1e0f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub1.yang @@ -0,0 +1,264 @@ +submodule Cisco-IOS-XR-l2vpn-oper-sub1 { + belongs-to Cisco-IOS-XR-l2vpn-oper { + prefix Cisco-IOS-XR-l2vpn-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2vpn package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-10 { + description + "- Add more states to l2fib-evpn-ip4mac and l2fib-evpn-ip6mac, remove arp-nd-delete-pending. + 2022-09-28 + - Added Global ID for PWHE IDBs. + 2022-09-14 + - Added evpn-esi-id for bridge port. + 2022-09-12 + - Added Attachment-Circuit to IP Tunnel cross-connect type. + 2022-09-07 + - Added IPv6 fields to VNI info - Added EVPN Peer ES down - Added internal-id to EVPN MOI context + 2022-09-01 + - Added internal-id to pseudowire-headend detail-interface IosSetYangSchemaRev Cisco-IOS-XR-l2vpn-oper + 2022-08-30 + - l2fib-summary: Added VXLAN nexthop information + 2022-08-09 + - Added L2VPN-VXLAN-TUNNEL grouping. - Added vxlan-tunnel container to L2VPN-SEGMENT grouping. + 2022-08-08 + - Added ESI ID for used in ESI filtering + 2022-07-06 + - Added new ID MGR App type for Auto RD per EVI + 2022-06-24 + - Update format of l2fib-message-summary + 2022-06-06 + - l2fib-evpn-incl-mcast-ole: Removed SRv6 SID format and added VNI ID to naming + 2022-05-30 + - Added a new leaf mac-limit-enabled to L2VPN-BRIDGE-SEC-PARAM. + 2022-05-26 + Refactored ES Service Carving Arrays + 2022-05-03 + - Added mac-limit-enabled - Removed duplicate fields + 2022-04-14 + - Add new APP type in IDMGR + 2022-03-21 + - Removed legacy and override ESI types + 2022-03-14 + - Added new members to main-interface-info protect-type + 2022-03-09 + - l2fib-mroute-port: Added hardware-information leaf. + 2022-03-08 + - Add EVPN unicast-label and multicast-label. + 2022-02-24 + - l2fib-mroute-port: Added pin-down-interface-name leaf. + 2022-02-09 + - Added l2fib-l3-sync-interfaces - Update keys of l2fib-mroute-port - Add l2fib-evpn-etree-remote - Update keys of l2fib-evpn-incl-mcast-ole - Add l2fib-mroute-ipv6-summary - Only expose valid keys and members of l2fib-mac-learning-mac, l2fib-mac-learning-mac-ipv4, and l2fib-mac-learning-mac-ipv6"; + semver:module-version "6.0.0"; + } + revision 2021-09-07 { + description + "- Added SRv6 nhop + 2021-08-24 + Updated l2vpn forwarding adjacencies to expose both interface and address information. + 2021-08-13 + - Changed flag-extension to 32bit + 2021-07-20 + - Added support for MAC is-cfm flag"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-04-28 { + description + "- AC Backup related changes + 2020-01-22 + - PWGROUP related changes + 2019-12-20 + - EVPN-VPWS related changes - SR-TE policy related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-03-30 { + description + "- Rename l2fib-mac-learning-mac* interface-handle to interface-name - Rename l2fib-pw-group tunnel-if-handle to tunnel-interface-name - Convert several array from leaf-list to list syntax. - Implement range datatypes for all L2FIB integers."; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Iflist-rep-status { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid"; + } + enum "pending" { + value 1; + description + "Pending"; + } + enum "done" { + value 2; + description + "Done"; + } + enum "not-supported" { + value 3; + description + "Not supported"; + } + enum "failed" { + value 4; + description + "Failed"; + } + } + description + "Interface list replication status"; + } + + grouping IFLIST-IFL { + description + "Generic interface list info"; + leaf interface-list-name { + type string { + length "0..33"; + } + description + "Interface-list name"; + } + leaf interface-list-id { + type uint32; + description + "Interface internal ID"; + } + leaf items { + type uint32; + description + "Number of items on which interface list is + replicated"; + } + leaf is-provisioned { + type boolean; + description + "Is Provisioned"; + } + leaf is-fib-downloaded { + type boolean; + description + "Is Interface list downloaded to FIB"; + } + list interface { + description + "Interfaces"; + uses IFLIST-IF; + } + } + + grouping IFLIST-IF { + description + "Interface info for Generic interface list"; + leaf interface-name { + type string; + description + "Interface name"; + } + leaf pending-replications { + type uint32; + description + "Number of pending replications"; + } + leaf not-supported-replications { + type uint32; + description + "Number of replications failed because + unsupported"; + } + leaf is-fib-downloaded { + type boolean; + description + "Is interface downloaded to FIB"; + } + } + + grouping ITEM-IFLIST-IF { + description + "Interface info for Generic interface list"; + leaf interface-name { + type string; + description + "Interface name"; + } + leaf replicate-status { + type Iflist-rep-status; + description + "Replicate status"; + } + } + + grouping ITEM-IFLIST-IFL { + description + "Generic interface list info"; + leaf interface-list-name { + type string { + length "0..33"; + } + description + "Interface-list name"; + } + leaf interface-list-id { + type uint32; + description + "Interface internal ID"; + } + list interface { + max-elements "32"; + description + "Interfaces"; + uses ITEM-IFLIST-IF; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub2.yang new file mode 100644 index 000000000..510eaf826 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub2.yang @@ -0,0 +1,185 @@ +submodule Cisco-IOS-XR-l2vpn-oper-sub2 { + belongs-to Cisco-IOS-XR-l2vpn-oper { + prefix Cisco-IOS-XR-l2vpn-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2vpn package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-10 { + description + "- Add more states to l2fib-evpn-ip4mac and l2fib-evpn-ip6mac, remove arp-nd-delete-pending. + 2022-09-28 + - Added Global ID for PWHE IDBs. + 2022-09-14 + - Added evpn-esi-id for bridge port. + 2022-09-12 + - Added Attachment-Circuit to IP Tunnel cross-connect type. + 2022-09-07 + - Added IPv6 fields to VNI info - Added EVPN Peer ES down - Added internal-id to EVPN MOI context + 2022-09-01 + - Added internal-id to pseudowire-headend detail-interface IosSetYangSchemaRev Cisco-IOS-XR-l2vpn-oper + 2022-08-30 + - l2fib-summary: Added VXLAN nexthop information + 2022-08-09 + - Added L2VPN-VXLAN-TUNNEL grouping. - Added vxlan-tunnel container to L2VPN-SEGMENT grouping. + 2022-08-08 + - Added ESI ID for used in ESI filtering + 2022-07-06 + - Added new ID MGR App type for Auto RD per EVI + 2022-06-24 + - Update format of l2fib-message-summary + 2022-06-06 + - l2fib-evpn-incl-mcast-ole: Removed SRv6 SID format and added VNI ID to naming + 2022-05-30 + - Added a new leaf mac-limit-enabled to L2VPN-BRIDGE-SEC-PARAM. + 2022-05-26 + Refactored ES Service Carving Arrays + 2022-05-03 + - Added mac-limit-enabled - Removed duplicate fields + 2022-04-14 + - Add new APP type in IDMGR + 2022-03-21 + - Removed legacy and override ESI types + 2022-03-14 + - Added new members to main-interface-info protect-type + 2022-03-09 + - l2fib-mroute-port: Added hardware-information leaf. + 2022-03-08 + - Add EVPN unicast-label and multicast-label. + 2022-02-24 + - l2fib-mroute-port: Added pin-down-interface-name leaf. + 2022-02-09 + - Added l2fib-l3-sync-interfaces - Update keys of l2fib-mroute-port - Add l2fib-evpn-etree-remote - Update keys of l2fib-evpn-incl-mcast-ole - Add l2fib-mroute-ipv6-summary - Only expose valid keys and members of l2fib-mac-learning-mac, l2fib-mac-learning-mac-ipv4, and l2fib-mac-learning-mac-ipv6"; + semver:module-version "6.0.0"; + } + revision 2021-09-07 { + description + "- Added SRv6 nhop + 2021-08-24 + Updated l2vpn forwarding adjacencies to expose both interface and address information. + 2021-08-13 + - Changed flag-extension to 32bit + 2021-07-20 + - Added support for MAC is-cfm flag"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-04-28 { + description + "- AC Backup related changes + 2020-01-22 + - PWGROUP related changes + 2019-12-20 + - EVPN-VPWS related changes - SR-TE policy related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-03-30 { + description + "- Rename l2fib-mac-learning-mac* interface-handle to interface-name - Rename l2fib-pw-group tunnel-if-handle to tunnel-interface-name - Convert several array from leaf-list to list syntax. - Implement range datatypes for all L2FIB integers."; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PWHE-EA-SUM { + description + "PWHE EA SUM"; + leaf eaidb-count { + type uint32; + description + "EA IDB count"; + } + leaf ea-intf-count { + type uint32; + description + "EA Interface count"; + } + } + + grouping PWHE-EA-IDB { + description + "PWHE EA Interface DB Bag"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf interface-type { + type string; + description + "Interface Type"; + } + leaf interface-up { + type boolean; + description + "Interface Up (true/false)"; + } + leaf l2-overhead { + type uint32; + units "byte"; + description + "L2 overhead size in bytes (1-64)"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth in kbps"; + } + leaf mtu { + type uint32; + description + "Maximum Transmission Unit"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub3.yang new file mode 100644 index 000000000..c3df76554 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub3.yang @@ -0,0 +1,466 @@ +submodule Cisco-IOS-XR-l2vpn-oper-sub3 { + belongs-to Cisco-IOS-XR-l2vpn-oper { + prefix Cisco-IOS-XR-l2vpn-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2vpn package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-10 { + description + "- Add more states to l2fib-evpn-ip4mac and l2fib-evpn-ip6mac, remove arp-nd-delete-pending. + 2022-09-28 + - Added Global ID for PWHE IDBs. + 2022-09-14 + - Added evpn-esi-id for bridge port. + 2022-09-12 + - Added Attachment-Circuit to IP Tunnel cross-connect type. + 2022-09-07 + - Added IPv6 fields to VNI info - Added EVPN Peer ES down - Added internal-id to EVPN MOI context + 2022-09-01 + - Added internal-id to pseudowire-headend detail-interface IosSetYangSchemaRev Cisco-IOS-XR-l2vpn-oper + 2022-08-30 + - l2fib-summary: Added VXLAN nexthop information + 2022-08-09 + - Added L2VPN-VXLAN-TUNNEL grouping. - Added vxlan-tunnel container to L2VPN-SEGMENT grouping. + 2022-08-08 + - Added ESI ID for used in ESI filtering + 2022-07-06 + - Added new ID MGR App type for Auto RD per EVI + 2022-06-24 + - Update format of l2fib-message-summary + 2022-06-06 + - l2fib-evpn-incl-mcast-ole: Removed SRv6 SID format and added VNI ID to naming + 2022-05-30 + - Added a new leaf mac-limit-enabled to L2VPN-BRIDGE-SEC-PARAM. + 2022-05-26 + Refactored ES Service Carving Arrays + 2022-05-03 + - Added mac-limit-enabled - Removed duplicate fields + 2022-04-14 + - Add new APP type in IDMGR + 2022-03-21 + - Removed legacy and override ESI types + 2022-03-14 + - Added new members to main-interface-info protect-type + 2022-03-09 + - l2fib-mroute-port: Added hardware-information leaf. + 2022-03-08 + - Add EVPN unicast-label and multicast-label. + 2022-02-24 + - l2fib-mroute-port: Added pin-down-interface-name leaf. + 2022-02-09 + - Added l2fib-l3-sync-interfaces - Update keys of l2fib-mroute-port - Add l2fib-evpn-etree-remote - Update keys of l2fib-evpn-incl-mcast-ole - Add l2fib-mroute-ipv6-summary - Only expose valid keys and members of l2fib-mac-learning-mac, l2fib-mac-learning-mac-ipv4, and l2fib-mac-learning-mac-ipv6"; + semver:module-version "6.0.0"; + } + revision 2021-09-07 { + description + "- Added SRv6 nhop + 2021-08-24 + Updated l2vpn forwarding adjacencies to expose both interface and address information. + 2021-08-13 + - Changed flag-extension to 32bit + 2021-07-20 + - Added support for MAC is-cfm flag"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-04-28 { + description + "- AC Backup related changes + 2020-01-22 + - PWGROUP related changes + 2019-12-20 + - EVPN-VPWS related changes - SR-TE policy related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-03-30 { + description + "- Rename l2fib-mac-learning-mac* interface-handle to interface-name - Rename l2fib-pw-group tunnel-if-handle to tunnel-interface-name - Convert several array from leaf-list to list syntax. - Implement range datatypes for all L2FIB integers."; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2vpn-pwhe-iflist-rep-status { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid"; + } + enum "pending" { + value 1; + description + "Pending"; + } + enum "success" { + value 2; + description + "Success"; + } + enum "failed" { + value 3; + description + "Failed"; + } + enum "not-supported" { + value 4; + description + "Not supported"; + } + } + description + "Interface list replication status"; + } + + typedef L2vpn-pwhe-intf { + type enumeration { + enum "pseudowire-ether" { + value 0; + description + "PW Ether"; + } + enum "pseudowire-iw" { + value 1; + description + "PW IW"; + } + } + description + "Interface type"; + } + + typedef Pwhe-port-im-state { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown"; + } + enum "down" { + value 1; + description + "Down"; + } + enum "up" { + value 2; + description + "Up"; + } + } + description + "Pseudowire headend port states"; + } + + grouping L2VPN-PWHE-SUMMARY { + description + "Pseudowire headend summary"; + leaf interfaces { + type uint32; + description + "Number of PW-HE interfaces"; + } + leaf up-interfaces { + type uint32; + description + "Number of interfaces up"; + } + leaf down-interfaces { + type uint32; + description + "Number of interfaces down"; + } + leaf admin-down-interfaces { + type uint32; + description + "Number of interfaces admin down"; + } + leaf psuedowire-ether-interfaces { + type uint32; + description + "Number of PW-Ether interfaces"; + } + leaf up-psuedowire-ether-interfaces { + type uint32; + description + "Number of PW-Ether interfaces up"; + } + leaf down-pseudowire-ether-interfaces { + type uint32; + description + "Number of PW-Ether interfaces down"; + } + leaf admin-down-pseudowire-ether-interfaces { + type uint32; + description + "Number of PW-Ether interfaces admin down"; + } + leaf pseudowire-iw-interfaces { + type uint32; + description + "Number of PW-IW interfaces"; + } + leaf up-pseudowire-iw-interfaces { + type uint32; + description + "Number of PW-IW interfaces up"; + } + leaf down-pseudowire-iw-interfaces { + type uint32; + description + "Number of PW-IW interfaces down"; + } + leaf admin-down-pseudowire-iw-interfaces { + type uint32; + description + "Number of PW-IW interfaces admin down"; + } + } + + grouping L2VPN-PWHE-GENERIC-IFLIST-INTF { + description + "Pseudowire headend generic interface list"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf bundle-interface-name { + type xr:Interface-name; + description + "Bundle Interface name"; + } + leaf interface-state { + type Pwhe-port-im-state; + description + "Interface Status"; + } + leaf replicate-state { + type L2vpn-pwhe-iflist-rep-status; + description + "Replication status"; + } + leaf misconfigured { + type int32; + description + "Interface misconfigured"; + } + } + + grouping L2VPN-PWHE-GENERIC-IFLIST { + description + "Pseudowire headend generic-interface-list details"; + leaf generic-interface-list-name { + type string; + description + "Generic interface list name"; + } + leaf id { + type uint32; + description + "Generic interface list ID"; + } + list interface-detail { + description + "Interfaces"; + uses L2VPN-PWHE-GENERIC-IFLIST-INTF; + } + } + + grouping L2VPN-PWHE-MAC-ADDR { + description + "MAC Address"; + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + } + + grouping L2VPN-L2-ADDR-PWHE-DETAIL { + description + "L2VPN L2 ADDR PWHE DETAIL"; + container mac-address { + when "../interface-type = 'pseudowire-ether'" { + description + "../InterfaceType = 'PseudowireEther'"; + } + description + "MAC address"; + uses L2VPN-PWHE-MAC-ADDR; + } + leaf interface-type { + type L2vpn-pwhe-intf; + description + "InterfaceType"; + } + } + + grouping L2VPN-PWHE-DETAIL { + description + "Pseudowire headend detail"; + container l2-address { + description + "Layer2 Address"; + uses L2VPN-L2-ADDR-PWHE-DETAIL; + } + container generic-interface-list { + description + "Generic Interface List"; + uses L2VPN-PWHE-GENERIC-IFLIST; + } + leaf interface-state { + type Pwhe-port-im-state; + description + "Interface Status"; + } + leaf admin-state { + type Pwhe-port-im-state; + description + "Interface Admin Status"; + } + leaf mtu { + type uint32; + description + "MTU"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth (Kbps)"; + } + leaf label { + type uint32; + description + "Label"; + } + leaf l2-overhead { + type uint32; + description + "L2 Overhead"; + } + leaf vctype { + type uint32; + description + "VC Type"; + } + leaf control-word { + type int32; + description + "Control Word"; + } + leaf internal-id { + type uint32; + description + "Internal ID"; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type int32; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type int32; + description + "Sticky flag"; + } + list evt-data { + description + "Optional data"; + leaf entry { + type uint32; + description + "Optional data"; + } + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub4.yang new file mode 100644 index 000000000..cb3c1425d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub4.yang @@ -0,0 +1,9346 @@ +submodule Cisco-IOS-XR-l2vpn-oper-sub4 { + belongs-to Cisco-IOS-XR-l2vpn-oper { + prefix Cisco-IOS-XR-l2vpn-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-l2vpn-oper-sub1 { + revision-date 2023-02-10; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2vpn package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-10 { + description + "- Add more states to l2fib-evpn-ip4mac and l2fib-evpn-ip6mac, remove arp-nd-delete-pending. + 2022-09-28 + - Added Global ID for PWHE IDBs. + 2022-09-14 + - Added evpn-esi-id for bridge port. + 2022-09-12 + - Added Attachment-Circuit to IP Tunnel cross-connect type. + 2022-09-07 + - Added IPv6 fields to VNI info - Added EVPN Peer ES down - Added internal-id to EVPN MOI context + 2022-09-01 + - Added internal-id to pseudowire-headend detail-interface IosSetYangSchemaRev Cisco-IOS-XR-l2vpn-oper + 2022-08-30 + - l2fib-summary: Added VXLAN nexthop information + 2022-08-09 + - Added L2VPN-VXLAN-TUNNEL grouping. - Added vxlan-tunnel container to L2VPN-SEGMENT grouping. + 2022-08-08 + - Added ESI ID for used in ESI filtering + 2022-07-06 + - Added new ID MGR App type for Auto RD per EVI + 2022-06-24 + - Update format of l2fib-message-summary + 2022-06-06 + - l2fib-evpn-incl-mcast-ole: Removed SRv6 SID format and added VNI ID to naming + 2022-05-30 + - Added a new leaf mac-limit-enabled to L2VPN-BRIDGE-SEC-PARAM. + 2022-05-26 + Refactored ES Service Carving Arrays + 2022-05-03 + - Added mac-limit-enabled - Removed duplicate fields + 2022-04-14 + - Add new APP type in IDMGR + 2022-03-21 + - Removed legacy and override ESI types + 2022-03-14 + - Added new members to main-interface-info protect-type + 2022-03-09 + - l2fib-mroute-port: Added hardware-information leaf. + 2022-03-08 + - Add EVPN unicast-label and multicast-label. + 2022-02-24 + - l2fib-mroute-port: Added pin-down-interface-name leaf. + 2022-02-09 + - Added l2fib-l3-sync-interfaces - Update keys of l2fib-mroute-port - Add l2fib-evpn-etree-remote - Update keys of l2fib-evpn-incl-mcast-ole - Add l2fib-mroute-ipv6-summary - Only expose valid keys and members of l2fib-mac-learning-mac, l2fib-mac-learning-mac-ipv4, and l2fib-mac-learning-mac-ipv6"; + semver:module-version "6.0.0"; + } + revision 2021-09-07 { + description + "- Added SRv6 nhop + 2021-08-24 + Updated l2vpn forwarding adjacencies to expose both interface and address information. + 2021-08-13 + - Changed flag-extension to 32bit + 2021-07-20 + - Added support for MAC is-cfm flag"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-04-28 { + description + "- AC Backup related changes + 2020-01-22 + - PWGROUP related changes + 2019-12-20 + - EVPN-VPWS related changes - SR-TE policy related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-03-30 { + description + "- Rename l2fib-mac-learning-mac* interface-handle to interface-name - Rename l2fib-pw-group tunnel-if-handle to tunnel-interface-name - Convert several array from leaf-list to list syntax. - Implement range datatypes for all L2FIB integers."; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2vpn-memory-state { + type enumeration { + enum "memory-state-unknown" { + value 0; + description + "Memory state Unknown"; + } + enum "memory-state-normal" { + value 1; + description + "Memory state Normal"; + } + enum "memory-state-minor" { + value 2; + description + "Memory state Minor"; + } + enum "memory-state-severe" { + value 3; + description + "Memory state Severe"; + } + enum "memory-state-critical" { + value 4; + description + "Memory state Critical"; + } + enum "memory-state-invalid" { + value 5; + description + "Memory state Invalid"; + } + } + description + "L2vpn memory state"; + } + + typedef L2vpn-ac-encap { + type enumeration { + enum "unknown-encap" { + value 0; + description + "unknown encap"; + } + enum "vlan" { + value 1; + description + "vlan"; + } + enum "qinq" { + value 2; + description + "qinq"; + } + enum "qin-any" { + value 3; + description + "qin any"; + } + enum "ethernet" { + value 4; + description + "ethernet"; + } + enum "atm-aal0" { + value 5; + description + "atm aal0"; + } + enum "atm-aal5" { + value 6; + description + "atm aal5"; + } + enum "atm-vp" { + value 7; + description + "atm vp"; + } + enum "atm-port" { + value 8; + description + "atm port"; + } + enum "hdlc" { + value 9; + description + "hdlc"; + } + enum "fr-dlci" { + value 10; + description + "fr dlci"; + } + enum "fr-dlci-local" { + value 11; + description + "fr dlci local"; + } + enum "ppp" { + value 12; + description + "ppp"; + } + enum "tdm-sa-to-p-e1" { + value 13; + description + "tdm sa to p e1"; + } + enum "tdm-sa-to-p-t1" { + value 14; + description + "tdm sa to p t1"; + } + enum "tdm-sa-to-p-e3" { + value 15; + description + "tdm sa to p e3"; + } + enum "tdm-sa-to-p-t3" { + value 16; + description + "tdm sa to p t3"; + } + enum "tdm-ce-so-psn" { + value 17; + description + "tdm ce so psn"; + } + enum "ip" { + value 18; + description + "ip"; + } + enum "vlan-encap" { + value 19; + description + "vlan encap"; + } + enum "dot1ad" { + value 20; + description + "dot1ad"; + } + enum "efp" { + value 21; + description + "efp"; + } + enum "bvi" { + value 22; + description + "bvi"; + } + enum "monitor-session" { + value 23; + description + "monitor session"; + } + enum "pseudowire-ether" { + value 24; + description + "pseudowire ether"; + } + enum "pseudowire-iw" { + value 25; + description + "pseudowire iw"; + } + enum "multi-segment-pseudowire" { + value 26; + description + "multi segment pseudowire"; + } + enum "pseudowire-l2-subinterface" { + value 27; + description + "pseudowire l2 subinterface"; + } + enum "virtual-network-interface" { + value 28; + description + "virtual network interface"; + } + enum "vlan-switched-port" { + value 29; + description + "vlan switched port"; + } + enum "vlan-switched-port-vlan" { + value 30; + description + "vlan switched port vlan"; + } + enum "circuit-emulation" { + value 31; + description + "circuit emulation"; + } + enum "encap-types-max" { + value 32; + description + "encap types max"; + } + } + description + "L2vpn ac encap"; + } + + typedef L2vpn-brief-psn { + type enumeration { + enum "ls" { + value 0; + description + "ls"; + } + enum "atom" { + value 1; + description + "atom"; + } + enum "l2tpv3" { + value 2; + description + "l2tpv3"; + } + enum "evpn-vpws" { + value 3; + description + "evpn vpws"; + } + enum "unknown-psn" { + value 4; + description + "unknown psn"; + } + } + description + "L2vpn brief psn"; + } + + typedef L2vpn-src-address-set { + type enumeration { + enum "unset" { + description + "Unset"; + } + enum "set" { + description + "Set"; + } + } + description + "L2vpn src address set"; + } + + typedef L2vpn-transport-mode { + type enumeration { + enum "l2vpn-transport-mode-not-specified" { + description + "Not specified"; + } + enum "l2vpn-transport-mode-ethernet" { + description + "Ethernet"; + } + enum "l2vpn-transport-mode-vlan" { + description + "VLAN"; + } + enum "l2vpn-transport-mode-vlan-passthrough" { + description + "VLAN Passthrough"; + } + } + description + "L2vpn transport mode"; + } + + typedef L2vpn-pw-class-control-word { + type enumeration { + enum "unset" { + value 0; + description + "Unset"; + } + enum "enable" { + value 1; + description + "Enable"; + } + enum "disable" { + value 2; + description + "Disable"; + } + } + description + "L2vpn pw class control word"; + } + + typedef L2vpn-g8032-uncfg-reason { + type enumeration { + enum "reason-none" { + description + "No reason"; + } + enum "ring-mp0-missing" { + description + "Main port0 missing"; + } + enum "ring-mp1-missing" { + description + "Main port1 missing"; + } + enum "inclusion-list-empty" { + description + "Inclusion list empty"; + } + enum "aps0-missing" { + description + "APS port0 missing"; + } + enum "aps0bp-notfound" { + description + "APS port0 not found as valid BP"; + } + enum "aps0-no-ac-ctx" { + description + "APS port0 has no valid AC context"; + } + enum "aps0-not-in-inclusion-list" { + description + "APS port0 not in inclusion list"; + } + enum "aps0-mismatched" { + description + "APS port0 mismatched with main port"; + } + enum "aps1-missing" { + description + "APS port1 missing"; + } + enum "aps1bp-notfound" { + description + "APS port1 not found as valid BP"; + } + enum "aps1-no-ac-ctx" { + description + "APS port1 has no valid AC context"; + } + enum "aps1-not-in-inclusion-list" { + description + "APS port1 not in inclusion list"; + } + enum "aps1-mismatched" { + description + "APS port1 mismatched with main port"; + } + enum "aps-unprovisioned" { + description + "APS AC unrpvosioned"; + } + } + description + "Unresolved reason for G8032 ring instance"; + } + + typedef L2vpn-g8032-rpl { + type enumeration { + enum "rpl-unknown" { + description + "No RPL info"; + } + enum "port0-owner" { + description + "Port 0 owner"; + } + enum "port0-neighbor" { + description + "Port 0 neighbor"; + } + enum "port0-next-neighbor" { + description + "Port 0 next neighbor"; + } + enum "port1-owner" { + description + "Port 1 owner"; + } + enum "port1-neighbor" { + description + "Port 1 neighbor"; + } + enum "port1-next-neighbor" { + description + "Port 1 next neighbor"; + } + } + description + "RPL types in g8032 ring"; + } + + typedef L2vpn-ipc-transport-mode { + type enumeration { + enum "unicast" { + value 0; + description + "L2VPN Unicast IPC transport mode"; + } + enum "broadcast" { + value 1; + description + "L2VPN Broadcast IPC transport mode"; + } + enum "unknown" { + value 2; + description + "L2VPN Unknown IPC transport mode"; + } + } + description + "L2vpn ipc transport mode"; + } + + typedef L2vpn-vni-mode { + type enumeration { + enum "l2vpn-vni-mode-l2-dp" { + description + "Data Plane L2 Service"; + } + enum "l2vpn-vni-mode-l3-dp" { + description + "Data Plane L3 Service"; + } + enum "l2vpn-vni-mode-l2-cp" { + description + "Control Plane L2 Service"; + } + enum "l2vpn-vni-mode-l3-cp" { + description + "Control Plane L3 Service"; + } + } + description + "L2vpn vni mode"; + } + + typedef L2vpn-vni-encaps { + type enumeration { + enum "l2vpn-vni-encap-vxlan" { + description + "VXLAN"; + } + enum "l2vpn-vni-encap-softgre" { + description + "SOFTGRE"; + } + } + description + "L2vpn vni encaps"; + } + + typedef L2vpn-evpn-encap { + type enumeration { + enum "l2vpn-bag-evpn-encap-unknown" { + value 0; + description + "Unknown encapsulation"; + } + enum "l2vpn-bag-evpn-encap-vxlan" { + value 8; + description + "VxLAN Encapsulation"; + } + enum "l2vpn-bag-evpn-encap-mpls" { + value 10; + description + "MPLS Encapsulation"; + } + enum "l2vpn-bag-evpn-encap-es-global" { + value 253; + description + "ES Global"; + } + enum "l2vpn-bag-evpn-encap-route-sync" { + value 254; + description + "EVPN Route Sync"; + } + enum "l2vpn-bag-evpn-encap-srv6" { + value 255; + description + "SRv6 Encapsulation"; + } + } + description + "EVPN Encapsulation Type"; + } + + typedef L2vpn-mirp-lite-protocol-info { + type enumeration { + enum "vlan0" { + description + "MVRP PDU using Vlan0"; + } + enum "none" { + description + "none"; + } + } + description + "L2vpn mirp lite protocol info"; + } + + typedef L2vpn-mirp-lite-status { + type enumeration { + enum "enabled" { + description + "Supported, enabled"; + } + enum "not-supported" { + description + "Not supported"; + } + } + description + "L2vpn mirp lite status"; + } + + typedef L2vpn-virtualport-state { + type enumeration { + enum "l2vpn-vp-state-undefined" { + description + "Undefined"; + } + enum "l2vpn-vp-state-up" { + description + "Up"; + } + enum "l2vpn-vp-state-down" { + description + "Down"; + } + } + description + "L2vpn virtualport state"; + } + + typedef L2vpn-bridge { + type enumeration { + enum "l2vpn-bridge-type-default" { + value 0; + description + "Regular none PBB bridge"; + } + enum "l2vpn-bridge-type-pbb-edge" { + value 1; + description + "PBB edge bridge"; + } + enum "l2vpn-bridge-type-pbb-core" { + value 2; + description + "PBB core bridge"; + } + } + description + "L2vpn bridge"; + } + + typedef P2mp-transport-state { + type enumeration { + enum "none" { + description + "no information about the transport yet"; + } + enum "ok" { + description + "transport up"; + } + enum "error" { + description + "transport error"; + } + enum "tunnel-down" { + description + "tunnel is down"; + } + enum "max-tunnels-reached" { + description + "transport down because the maximum number of + tunnels is reached"; + } + } + description + "P2mp transport state"; + } + + typedef L2vpn-vfi-p2mp-signaling { + type enumeration { + enum "none" { + description + "undefined signaling"; + } + enum "bgp" { + description + "BGP signaling"; + } + } + description + "L2vpn vfi p2mp signaling"; + } + + typedef L2vpn-vfi-p2mp-transport { + type enumeration { + enum "none" { + description + "undefined transport"; + } + enum "rsvp-te" { + description + "RSVP-TE transport"; + } + } + description + "L2vpn vfi p2mp transport"; + } + + typedef L2vpn-vfi-state { + type enumeration { + enum "unknown" { + value 0; + description + "VFI Unknown"; + } + enum "up" { + value 1; + description + "VFI Up"; + } + enum "down" { + value 2; + description + "VFI Down"; + } + enum "admin-down" { + value 3; + description + "VFI Admin Down"; + } + } + description + "L2vpn vfi state"; + } + + typedef L2vpn-bag-mac-withdraw-option { + type enumeration { + enum "mac-withdraw-option-state-up" { + description + "Mac withdraw on state up"; + } + enum "mac-withdraw-option-state-down" { + description + "Mac withdraw on state down"; + } + enum "mac-withdraw-option-optimize" { + description + "Optimized Mac withdraw"; + } + } + description + "L2vpn bag mac withdraw option"; + } + + typedef L2vpn-bridge-coupled-state { + type enumeration { + enum "disabled" { + value 0; + description + "Coupled mode disabled"; + } + enum "down" { + value 2; + description + "Coupled state down"; + } + enum "up" { + value 3; + description + "Coupled state up"; + } + } + description + "L2vpn bridge coupled state"; + } + + typedef L2vpn-bridge-state { + type enumeration { + enum "bridge-init" { + value 0; + description + "Bridge Init State"; + } + enum "bridge-up" { + value 1; + description + "Bridge Up"; + } + enum "bridge-down" { + value 2; + description + "Bridge Down"; + } + enum "bridge-admin-down" { + value 3; + description + "Bridge Admin Down"; + } + } + description + "L2vpn bridge state"; + } + + typedef L2vpn-bag-l2mc-src-traffic { + type enumeration { + enum "l2mc-none" { + value 0; + description + "L2MC Source Traffic None"; + } + enum "l2mcipv4" { + value 1; + description + "L2MC Source Traffic:IPv4"; + } + enum "l2mcipv6" { + value 2; + description + "L2MC Source Traffic:IPv6"; + } + enum "l2mcipv4ipv6" { + value 3; + description + "L2MC Source Traffic:IPv4/IPv6"; + } + } + description + "L2vpn bag l2mc src traffic"; + } + + typedef L2vpn-bag-storm-control-rate-unit { + type enumeration { + enum "pps" { + description + "Packets Per Second"; + } + enum "kb-ps" { + description + "Kilobits Per Second"; + } + } + description + "Storm Control Rate Unit Type"; + } + + typedef L2vpn-bag-mac-secure-action { + type enumeration { + enum "not-set" { + value 0; + description + "MAC Secure Action Not Set"; + } + enum "restrict" { + value 1; + description + "MAC Secure Action Restrict"; + } + enum "none" { + value 2; + description + "MAC Secure Action None"; + } + enum "shutdown" { + value 3; + description + "MAC Secure Action Shutdown"; + } + } + description + "L2vpn bag mac secure action"; + } + + typedef L2vpn-bag-mac-aging-mode { + type enumeration { + enum "aging-none" { + value 0; + description + "MAC Aging None"; + } + enum "aging-absolute" { + value 1; + description + "Mac Aging Absolute"; + } + enum "aging-inactivity" { + value 2; + description + "Mac Aging Inactivity"; + } + } + description + "L2vpn bag mac aging mode"; + } + + typedef L2vpn-bag-mac-limit-notify { + type enumeration { + enum "mac-limit-notify-none" { + value 0; + description + "MAC Limit Notify None"; + } + enum "mac-limit-notify-syslog" { + value 1; + description + "MAC Limit Notify Syslog"; + } + enum "mac-limit-notify-trap" { + value 2; + description + "MAC Limit Notify Trap"; + } + enum "mac-limit-notify-syslog-trap" { + value 3; + description + "MAC Limit Notify Syslog and Trap"; + } + enum "mac-limit-notify-no-config" { + value 4; + description + "MAC Limit Notify No Config"; + } + } + description + "L2vpn bag mac limit notify"; + } + + typedef L2vpn-bag-mac-limit-action { + type enumeration { + enum "limit-none" { + value 0; + description + "MAC Limit Action None"; + } + enum "limit-flood" { + value 1; + description + "MAC Limit Action Flood"; + } + enum "limit-no-flood" { + value 2; + description + "MAC Limit Action No Flood"; + } + enum "limit-shutdown" { + value 3; + description + "MAC Limit Action Shut"; + } + enum "limit-no-config" { + value 4; + description + "Mac Limit Action No Config"; + } + } + description + "L2vpn bag mac limit action"; + } + + typedef L2vpn-msti-state { + type enumeration { + enum "msti-bag-stp-port-state-forwarding" { + description + "msti bag stp port state forwarding"; + } + enum "msti-bag-stp-port-state-blocked" { + description + "msti bag stp port state blocked"; + } + enum "msti-bag-stp-port-state-mac-learning" { + description + "msti bag stp port state mac learning"; + } + enum "msti-bag-stp-port-state-nack" { + description + "msti bag stp port state nack"; + } + enum "msti-bag-stp-port-state-forwarding-not-useful" { + description + "msti bag stp port state forwarding not useful"; + } + enum "msti-bag-stp-port-state-blocked-not-useful" { + description + "msti bag stp port state blocked not useful"; + } + enum "msti-bag-stp-port-state-mac-learning-not-useful" { + description + "msti bag stp port state mac learning not useful"; + } + enum "msti-bag-erp-port-state-blocked-data-only" { + description + "msti bag erp port state blocked data only"; + } + enum "msti-bag-erp-port-state-evpn-mcast-pe2ce-blocked" { + description + "msti bag erp port state evpn mcast pe2ce + blocked"; + } + enum "msti-bag-erp-port-state-evpn-port-state-mcast-blocked" { + description + "msti bag erp port state evpn port state mcast + blocked"; + } + } + description + "L2VPN MSTI state"; + } + + typedef L2vpn-ad-rt { + type enumeration { + enum "l2vpn-ad-rt-none" { + value 0; + description + "Route target not set"; + } + enum "l2vpn-ad-rt-as" { + value 1; + description + "Route Target with 2 Byte AS number"; + } + enum "l2vpn-ad-rt-4byte-as" { + value 2; + description + "Route Target with 4 Byte AS number"; + } + enum "l2vpn-ad-rt-v4-addr" { + value 3; + description + "Route Target with IPv4 Address"; + } + enum "es-import" { + value 1538; + description + "Ethernet Segment Route Target from BGP"; + } + } + description + "L2vpn ad rt"; + } + + typedef L2vpn-bag-ad-encap { + type enumeration { + enum "l2vpn-bag-ad-encap-not-specified" { + description + "Not Specified"; + } + enum "l2vpn-bag-ad-encap-ether-vlan" { + description + "Ether VLAN"; + } + enum "l2vpn-bag-ad-encap-ether" { + description + "Ethernet"; + } + } + description + "L2VPN AD Encapsulation"; + } + + typedef L2vpn-xc-state { + type enumeration { + enum "l2vpn-xc-state-unresolved" { + description + "Unresolved"; + } + enum "l2vpn-xc-state-down" { + description + "Down"; + } + enum "l2vpn-xc-state-up" { + description + "Up"; + } + } + description + "L2vpn xc state"; + } + + typedef L2vpn-ple-cep-options { + type enumeration { + enum "l2-ac-ple-cem-cep-options-invalid" { + value 0; + description + "PLE-CEM CEP Invalid Options "; + } + enum "l2-ac-ple-cem-cep-options-cbr" { + value 3; + description + "PLE-CEM CEP Options Constant Bitrate"; + } + enum "l2-ac-ple-cem-cep-options-byte-aligned" { + value 4; + description + "PLE-CEM CEP Options Byte Aligned"; + } + } + description + "PLE-CEM CEP Options"; + } + + typedef L2vpn-ple-ac { + type enumeration { + enum "l2-ac-ple-cem-invalid" { + value 0; + description + "Invalid type"; + } + enum "l2-ac-ple-cem-ether-1000base-x" { + value 1; + description + "PLE-CEM Ether 1000BaseX"; + } + enum "l2-ac-ple-cem-ether-10gbase-r" { + value 2; + description + "PLE-CEM Ether 10GBaseR"; + } + enum "l2-ac-ple-cem-ether-25gbase-r" { + value 3; + description + "PLE-CEM Ether 25GBaseR"; + } + enum "l2-ac-ple-cem-ether-40gbase-r" { + value 4; + description + "PLE-CEM Ether 40GBaseR"; + } + enum "l2-ac-ple-cem-ether-100gbase-r" { + value 5; + description + "PLE-CEM Ether 100GBaseR"; + } + enum "l2-ac-ple-cem-fc-1gfc" { + value 6; + description + "PLE-CEM Fiber Channel 1G"; + } + enum "l2-ac-ple-cem-fc-2gfc" { + value 7; + description + "PLE-CEM Fiber Channel 2G"; + } + enum "l2-ac-ple-cem-fc-4gfc" { + value 8; + description + "PLE-CEM Fiber Channel 4G"; + } + enum "l2-ac-ple-cem-fc-8gfc" { + value 9; + description + "PLE-CEM Fiber Channel 8G"; + } + enum "l2-ac-ple-cem-fc-10gfc" { + value 10; + description + "PLE-CEM Fiber Channel 10G"; + } + enum "l2-ac-ple-cem-fc-16gfc" { + value 11; + description + "PLE-CEM Fiber Channel 16G"; + } + enum "l2-ac-ple-cem-fc-32gfc" { + value 12; + description + "PLE-CEM Fiber Channel 32G"; + } + enum "l2-ac-ple-cem-otn-odu0" { + value 13; + description + "PLE-CEM OTN ODU0"; + } + enum "l2-ac-ple-cem-otn-odu1" { + value 14; + description + "PLE-CEM OTN ODU1"; + } + enum "l2-ac-ple-cem-otn-odu2" { + value 15; + description + "PLE-CEM OTN ODU2"; + } + enum "l2-ac-ple-cem-otn-odu2e" { + value 16; + description + "PLE-CEM OTN ODU2E"; + } + enum "l2-ac-ple-cem-otn-odu4" { + value 17; + description + "PLE-CEM OTN ODU4"; + } + enum "l2-ac-ple-cem-sonet-oc3" { + value 18; + description + "PLE-CEM Sonet OC3"; + } + enum "l2-ac-ple-cem-sonet-oc12" { + value 19; + description + "PLE-CEM Sonet OC12"; + } + enum "l2-ac-ple-cem-sonet-oc48" { + value 20; + description + "PLE-CEM Sonet OC48"; + } + enum "l2-ac-ple-cem-sonet-oc192" { + value 21; + description + "PLE-CEM Sonet OC192"; + } + enum "l2-ac-ple-cem-sonet-oc768" { + value 22; + description + "PLE-CEM Sonet OC768"; + } + enum "l2-ac-ple-cem-sonet-stm1" { + value 23; + description + "PLE-CEM Sonet STM1"; + } + enum "l2-ac-ple-cem-sonet-stm4" { + value 24; + description + "PLE-CEM Sonet STM4"; + } + enum "l2-ac-ple-cem-sonet-stm16" { + value 25; + description + "PLE-CEM Sonet STM16"; + } + enum "l2-ac-ple-cem-sonet-stm64" { + value 26; + description + "PLE-CEM Sonet STM64"; + } + enum "l2-ac-ple-cem-sonet-stm256" { + value 27; + description + "PLE-CEM Sonet STM256"; + } + } + description + "PLE-CEM AC Type"; + } + + typedef Evpn-vpws-reason { + type enumeration { + enum "none" { + description + "No Issues"; + } + enum "ac-down" { + description + "AC down"; + } + enum "acparent-down" { + description + "AC parent down"; + } + enum "no-remote-ead" { + description + "No remote EVI EAD"; + } + enum "remote-ead-conflict" { + description + "Conflicting remote EADs"; + } + enum "no-remote-esead" { + description + "No remote ES EAD"; + } + enum "remote-unreachable" { + description + "Remote is not reachable"; + } + enum "no-internal-id" { + description + "No internal ID"; + } + enum "no-internal-label" { + description + "No internal label"; + } + enum "waiting-path-resolution" { + description + "Waiting for path resolution"; + } + enum "mtu-mismatch" { + description + "MTU mismatch"; + } + enum "cw-mismatch" { + description + "CW mismatch"; + } + enum "bad-remote-label" { + description + "Bad remote label"; + } + enum "bad-remote-sid" { + description + "Bad remote SID"; + } + enum "no-local-label" { + description + "No local MPLS label"; + } + enum "no-local-sid" { + description + "No local SRv6 SID"; + } + enum "srv6-not-enabled" { + description + "SRv6 is not enabled for EVPN"; + } + enum "locator-not-resolved" { + description + "SRv6 locator not resolved"; + } + enum "no-locator-config" { + description + "SRv6 locator not configured for this service"; + } + enum "waiting-df-election" { + description + "Waiting DF election result"; + } + enum "not-primary-df" { + description + "Not primary DF"; + } + enum "no-pwhe-internal-label" { + description + "No PWHE internal label"; + } + enum "evpn-vpws-reason-cac-reject" { + description + "CAC has not admitted this service"; + } + enum "evpn-vpws-reason-max" { + description + "evpn vpws reason max"; + } + } + description + "Evpn vpws reason"; + } + + typedef L2vpn-p2mp-pw-ptree { + type enumeration { + enum "none" { + description + "None"; + } + enum "rsvp-te" { + description + "RSVP TE"; + } + enum "mldp" { + description + "MLDP"; + } + } + description + "L2vpn p2mp pw ptree"; + } + + typedef L2vpn-pw-flow-label { + type enumeration { + enum "off" { + description + "Flow label is off"; + } + enum "receive" { + description + "Flow label is enabled on the receive side"; + } + enum "transmit" { + description + "Flow label is enabled on the transmit side"; + } + enum "both" { + description + "Flow label is enabled on both transmit and + receive sides"; + } + } + description + "Pseudowire flow label load balance types"; + } + + typedef L2vpn-load-bal { + type enumeration { + enum "not-supported" { + value 0; + description + "Load Balance Flow Not Supported"; + } + enum "source-dest-mac" { + value 1; + description + "Load Balance Flow src-dst-mac"; + } + enum "source-dest-ip" { + value 2; + description + "Load Balance Flow src-dst-ip"; + } + enum "undefined" { + value 3; + description + "Load Balance Flow Undefined"; + } + enum "pseudowire-label" { + value 4; + description + "Load Balance PW Label based"; + } + } + description + "L2vpn load bal"; + } + + typedef L2vpn-prefpath-option { + type enumeration { + enum "l2vpn-pw-mpls-pref-path-not-specified" { + value 0; + description + "Not Secified"; + } + enum "l2vpn-pw-mpls-pref-path-next-hop-ip" { + value 1; + description + "Next Hop IP"; + } + enum "l2vpn-pw-mpls-pref-path-te-tunnel" { + value 2; + description + "TE Tunnel"; + } + enum "l2vpn-pw-mpls-pref-path-ip-tunnel" { + value 3; + description + "IP Tunnel"; + } + enum "l2vpn-pw-mpls-pref-path-tp-tunnel" { + value 4; + description + "TP Tunnel"; + } + enum "l2vpn-pw-mpls-pref-path-sr-te" { + value 5; + description + "SR TE Policy"; + } + enum "l2vpn-pw-mpls-pref-path-te-named-tunnel" { + value 8; + description + "Named TE Tunnel"; + } + } + description + "Preferred Path Option"; + } + + typedef L2vpn-pw { + type enumeration { + enum "l2vpn-pw-type-unknown" { + description + "Unknown"; + } + enum "l2vpn-pw-type-frame-relay-dlci" { + description + "Frame Relay DLCI"; + } + enum "l2vpn-pw-type-atm-aal5-sdu" { + description + "ATM AAL5 SDU VCC transport"; + } + enum "l2vpn-pw-type-atm-trans-cell" { + description + "ATM transparent cell transport"; + } + enum "l2vpn-pw-type-ether-vlan" { + description + "Ethernet VLAN tagged mode "; + } + enum "l2vpn-pw-type-ether" { + description + "Ethernet"; + } + enum "l2vpn-pw-type-hdlc" { + description + "HDLC"; + } + enum "l2vpn-pw-type-ppp" { + description + "PPP"; + } + enum "l2vpn-pw-type-sonet-over-mpls" { + description + "SONET/SDH Circuit Emulation Service Over MPLS + (CEM)"; + } + enum "l2vpn-pw-type-atm-n-vcc-cell" { + description + "ATM n-to-one VCC cell transport"; + } + enum "l2vpn-pw-type-atm-n-vpc-cell" { + description + "ATM n-to-one VPC cell transport"; + } + enum "l2vpn-pw-type-ip" { + description + "IP Layer2 Transport"; + } + enum "l2vpn-pw-type-atm-vcc-cell" { + description + "ATM one-to-one VCC cell transport"; + } + enum "l2vpn-pw-type-atm-vpc-cell" { + description + "ATM one-to-one VPC cell transport"; + } + enum "l2vpn-pw-type-atm-aal5-pdu" { + description + "ATM AAL5 PDU VCC transport"; + } + enum "l2vpn-pw-type-frame-relay" { + description + "Frame Relay port mode"; + } + enum "l2vpn-pw-type-sonet" { + description + "SONET/SDH Circuit"; + } + enum "l2vpn-pw-type-vpls" { + description + "VPLS"; + } + enum "l2vpn-pw-type-tdm-sa-to-p-e1" { + description + "TDM E1"; + } + enum "l2vpn-pw-type-tdm-sa-to-p-t1" { + description + "TDM T1"; + } + enum "l2vpn-pw-type-tdm-sa-to-p-e3" { + description + "TDM E3"; + } + enum "l2vpn-pw-type-tdm-sa-to-p-t3" { + description + "TDM T3"; + } + enum "l2vpn-pw-type-tdm-ce-so-psn" { + description + "TDM CES over PSN"; + } + } + description + "L2vpn pw"; + } + + typedef L2vpn-pw-control-word { + type enumeration { + enum "l2vpn-pw-control-word-unknown" { + description + "Unknown"; + } + enum "l2vpn-pw-control-word-clear" { + description + "Clear"; + } + enum "l2vpn-pw-control-word-set" { + description + "Set"; + } + enum "l2vpn-pw-control-word-mandatory" { + description + "Mandatory"; + } + } + description + "L2vpn pw control word"; + } + + typedef Evpn-bag-path-issues { + type enumeration { + enum "unknown" { + description + "Unknown Issue"; + } + enum "invalid-transport-id" { + description + "Invalid Transport ID"; + } + enum "sid-format-mismatch" { + description + "SIDs Do Not Match Local Format"; + } + enum "control-word-mismatch" { + description + "Control Word Mismatch"; + } + enum "mtu-mismatch" { + description + "MTU Mismatch"; + } + enum "nhafi-not-supported" { + description + "NH AFI Not Supported"; + } + } + description + "Evpn bag path issues"; + } + + typedef Evpn-bag-l2-attr-cw { + type enumeration { + enum "unspecified" { + description + "Control Word Not Specified"; + } + enum "disabled" { + description + "Control Word Disabled"; + } + enum "enabled" { + description + "Control Word Enabled"; + } + } + description + "Evpn bag l2 attr cw"; + } + + typedef Evpn-bag-df-role { + type enumeration { + enum "invalid" { + description + "Designated Forwarder Role Not Specified"; + } + enum "primary" { + description + "Designated Forwarder Role Primary"; + } + enum "backup" { + description + "Designated Forwarder Role Backup"; + } + enum "not-designated-forwarder" { + description + "No Designated Forwarder Role"; + } + } + description + "Evpn bag df role"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Mgmt-srv6-headend { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "transit" { + description + "T (Pure transit)"; + } + enum "h-insert" { + description + "H.Insert"; + } + enum "h-insert-red" { + description + "H.Insert.Red"; + } + enum "h-encaps" { + description + "H.Encaps"; + } + enum "h-encaps-red" { + description + "H.Encaps.Red"; + } + enum "h-encaps-l2" { + description + "H.Encaps.L2"; + } + enum "h-encaps-l2-red" { + description + "H.Encaps.L2.Red"; + } + } + description + "SRv6 Headend Behavior Type"; + } + + typedef L2vpn-l2tp-tunnel-state { + type enumeration { + enum "l2vpn-l2tp-idle" { + description + "Idle"; + } + enum "l2vpn-l2tp-wait-for-connecting" { + description + "Wait for connecting"; + } + enum "l2vpn-l2tp-wait-for-connected" { + description + "Wait for connected"; + } + enum "l2vpn-l2tp-in-coming-call" { + description + "Incoming call"; + } + enum "l2vpn-l2tp-connected" { + description + "Connected"; + } + enum "l2vpn-l2tp-disconnected" { + description + "Disconnected"; + } + } + description + "L2vpn l2tp tunnel state"; + } + + typedef L2vpn-tos-mode { + type enumeration { + enum "l2vpn-pw-ip-tos-none" { + description + "None"; + } + enum "l2vpn-pw-ip-tos-reflect" { + description + "Reflect the TOS"; + } + } + description + "L2vpn tos mode"; + } + + typedef L2vpn-encap-method { + type enumeration { + enum "l2vpn-pw-encaps-not-specified" { + description + "Not Specified"; + } + enum "l2vpn-pw-encaps-l2tpv3" { + description + "L2TPv3 encapsulation"; + } + enum "l2vpn-pw-encaps-l2tpv2" { + description + "L2TPv2 encapsulation"; + } + enum "l2vpn-pw-encaps-mpls" { + description + "MPLS encapsulation"; + } + enum "l2vpn-pw-encaps-srv6" { + description + "SRv6 encapsulation"; + } + enum "l2vpn-pw-encaps-unknown" { + description + "Unknown"; + } + } + description + "Encapsulation Method"; + } + + typedef L2vpn-pw-sequence { + type enumeration { + enum "l2vpn-pw-sequence-off" { + description + "Sequencing is Off"; + } + enum "l2vpn-pw-sequence-xmit" { + description + "Sequencing on the transmit side"; + } + enum "l2vpn-pw-sequence-recv" { + description + "Sequencing on the receive side"; + } + enum "l2vpn-pw-sequence-trans" { + description + "Sequencing is transparent"; + } + enum "l2vpn-pw-sequence-both" { + description + "Sequencing on both sides"; + } + } + description + "L2vpn pw sequence"; + } + + typedef L2vpn-signalling-proto { + type enumeration { + enum "l2vpn-pw-sig-not-specified" { + description + "Not specified"; + } + enum "l2vpn-pw-sig-none" { + description + "Static"; + } + enum "l2vpn-pw-sig-l2tpv3" { + description + "L2TPv3 signaling"; + } + enum "l2vpn-pw-sig-l2tpv2" { + description + "L2TPv2 signaling"; + } + enum "l2vpn-pw-sig-ldp" { + description + "LDP"; + } + enum "l2vpn-pw-sig-bgp" { + description + "BGP"; + } + } + description + "L2vpn signalling proto"; + } + + typedef L2vpn-pw-state { + type enumeration { + enum "l2vpn-pw-state-unresolved" { + description + "Unresolved"; + } + enum "l2vpn-pw-state-idle" { + description + "Idle"; + } + enum "l2vpn-pw-state-provisioned" { + description + "Provisioned"; + } + enum "l2vpn-pw-state-remote-standby" { + description + "Remote standby"; + } + enum "l2vpn-pw-state-local-ready" { + description + "Local ready"; + } + enum "l2vpn-pw-state-all-ready" { + description + "All ready"; + } + enum "l2vpn-pw-state-established" { + description + "Established"; + } + } + description + "L2vpn pw state"; + } + + typedef L2vpn-bag-in6-addr { + type inet:ipv6-address; + description + "L2vpn bag in6 addr"; + } + + typedef L2vpn-peer { + type enumeration { + enum "none" { + description + "None"; + } + enum "ipv4" { + description + "IPv4"; + } + enum "ipv6" { + description + "IPv6"; + } + enum "internal-label" { + description + "Internal Label"; + } + enum "internal-id" { + description + "Internal ID"; + } + } + description + "L2vpn peer"; + } + + typedef L2vpn-protection-role { + type enumeration { + enum "l2vpn-protection-primary" { + description + "Segment configured as primary"; + } + enum "l2vpn-protection-backup" { + description + "Segment configured as backup"; + } + } + description + "L2VPN Configurable protection roles"; + } + + typedef L2vpn-protection { + type enumeration { + enum "l2vpn-protection-unknown" { + description + "Unknown type of protection"; + } + enum "l2vpn-protection-interface" { + description + "Interface protection type"; + } + enum "l2vpn-protection-pseudowire" { + description + "PW protection type"; + } + enum "l2vpn-protection-group" { + description + "Group protection type "; + } + } + description + "L2VPN Protection types"; + } + + typedef L2vpn-rg-state { + type enumeration { + enum "unknown" { + description + "Not defined"; + } + enum "active" { + description + "Active"; + } + enum "standby" { + description + "Standby"; + } + } + description + "L2vpn rg state"; + } + + typedef L2vpn-interworking { + type enumeration { + enum "l2vpn-iw-type-none" { + description + "None"; + } + enum "l2vpn-iw-type-ethernet" { + description + "Ethernet"; + } + enum "l2vpn-iw-type-ppp" { + description + "PPP"; + } + enum "l2vpn-iw-type-ipv4" { + description + "IPv4"; + } + enum "l2vpn-iw-type-voluntary" { + description + "Voluntary"; + } + enum "l2vpn-iw-type-frf8" { + description + "FRF8"; + } + } + description + "L2vpn interworking"; + } + + typedef L2vpn-segment-state { + type enumeration { + enum "l2vpn-segment-state-unresolved" { + description + "Unresolved"; + } + enum "l2vpn-segment-state-up" { + description + "Up"; + } + enum "l2vpn-segment-state-down" { + description + "Down"; + } + enum "l2vpn-segment-state-admin-down" { + description + "Admin down"; + } + enum "l2vpn-segment-state-local-up" { + description + "Local up"; + } + enum "l2vpn-segment-state-remote-up" { + description + "Remote up"; + } + enum "l2vpn-segment-state-connected" { + description + "Connected"; + } + enum "l2vpn-segment-state-standby" { + description + "Standby"; + } + enum "l2vpn-segment-state-standby-ready" { + description + "Standby Ready"; + } + enum "l2vpn-segment-state-standby-inactive" { + description + "Standby Inactive"; + } + } + description + "L2vpn segment state"; + } + + typedef L2vpn-fr-mode { + type enumeration { + enum "l2vpn-fr-port-mode" { + description + "Frame Relay port mode"; + } + enum "l2vpn-fr-dlci-mode" { + description + "Frame Relay DLCI mode"; + } + } + description + "L2vpn fr mode"; + } + + typedef L2vpn-atm-mode { + type enumeration { + enum "l2vpn-atm-port-mode" { + description + "ATM port mode"; + } + enum "l2vpn-atm-vp-mode" { + description + "ATM Virtual Path mode"; + } + enum "l2vpn-atm-vc-mode" { + description + "ATM Virtual Channel mode"; + } + } + description + "L2vpn atm mode"; + } + + typedef L2vpn-time-stamp-mode { + type enumeration { + enum "unknown" { + description + "Unknown time stamp mode"; + } + enum "differential" { + description + "Differential time stamp mode"; + } + enum "absolute" { + description + "Absolute Time Stamp mode"; + } + enum "none" { + description + "time stamp mode none"; + } + } + description + "L2VPN TDM Time stamp modes"; + } + + typedef L2vpn-tdm-rtp-option { + type enumeration { + enum "unknown" { + description + "Unknown RTP option"; + } + enum "present" { + description + "RTP option present"; + } + enum "absent" { + description + "RTP option absent"; + } + } + description + "L2VPN TDM RTP option"; + } + + typedef L2vpn-tdm-mode { + type enumeration { + enum "unknown" { + description + "Unknown mode"; + } + enum "ce-so-psn" { + description + "CESoPSN mode"; + } + enum "sa-to-p-e1" { + description + "SAToP E1 mode"; + } + enum "sa-to-p-t1" { + description + "SAToP T1 mode"; + } + enum "sa-to-p-e3" { + description + "SAToP E3 mode"; + } + enum "sa-to-p-t3" { + description + "SAToP T3 mode"; + } + } + description + "L2VPN TDM modes"; + } + + typedef L2vpn-interface { + type enumeration { + enum "l2vpn-intf-type-unknown" { + description + "Unknown"; + } + enum "l2vpn-intf-type-ethernet" { + description + "Ethernet"; + } + enum "l2vpn-intf-type-vlan" { + description + "Ethernet Vlan"; + } + enum "l2vpn-intf-type-atm" { + description + "ATM"; + } + enum "l2vpn-intf-type-frame-relay" { + description + "Frame Relay"; + } + enum "l2vpn-intf-type-hdlc" { + description + "HDLC"; + } + enum "l2vpn-intf-type-ppp" { + description + "PPP"; + } + enum "l2vpn-intf-type-span" { + description + "SPAN"; + } + enum "l2vpn-intf-type-bvi" { + description + "BVI"; + } + enum "l2vpn-intf-type-cem" { + description + "CEM"; + } + enum "l2vpn-intf-type-pw-ether" { + description + "PsuedowireEther"; + } + enum "l2vpn-intf-type-pw-iw" { + description + "PsuedowireIW"; + } + enum "l2vpn-intf-type-vni" { + description + "VXLAN"; + } + } + description + "L2vpn interface"; + } + + typedef L2vpn-segment { + type enumeration { + enum "l2vpn-segment-type-unresolved" { + description + "Unresolved segment"; + } + enum "l2vpn-segment-type-ac" { + description + "Attachment circuit segment"; + } + enum "l2vpn-segment-type-pw" { + description + "Pseudowire segment"; + } + enum "l2vpn-segment-type-bd-ac" { + description + "Bridge domain attachment circuit"; + } + enum "l2vpn-segment-type-vfi" { + description + "Virtual forwarding instance segment"; + } + enum "l2vpn-segment-type-bd-pw" { + description + "Bridge Pseudowire"; + } + enum "l2vpn-segment-type-bd-pbb" { + description + "Bridge domain PBB segment"; + } + enum "l2vpn-segment-type-bd-evpn" { + description + "Bridge domain EVPN segment"; + } + enum "l2vpn-segment-type-vni" { + description + "VxLAN Network Identifier (VNI) segment"; + } + enum "l2vpn-segment-type-vxlan-tunnel" { + description + "VxLAN tunnel segment"; + } + } + description + "L2vpn segment"; + } + + typedef L2vpn-ad-rd { + type enumeration { + enum "l2vpn-ad-rd-none" { + value 0; + description + "Route Distinguisher not set"; + } + enum "l2vpn-ad-rd-auto" { + value 1; + description + "Route Distinguisher auto-generated"; + } + enum "l2vpn-ad-rd-as" { + value 2; + description + "Route Distinguisher with 2 Byte AS number"; + } + enum "l2vpn-ad-rd-4byte-as" { + value 3; + description + "Route Distinguisher with 4 Byte AS number"; + } + enum "l2vpn-ad-rd-v4-addr" { + value 4; + description + "Route Distinguisher with IPv4 Address"; + } + } + description + "L2vpn ad rd"; + } + + typedef L2vpn-pw-cac-state { + type enumeration { + enum "l2vpn-cac-state-not-configured" { + value 0; + description + "Not Configured"; + } + enum "l2vpn-cac-state-admit" { + value 1; + description + "Admit"; + } + enum "l2vpn-cac-state-reject" { + value 2; + description + "Reject"; + } + } + description + "L2VPN PW CAC state"; + } + + typedef L2vpn-pw-fec { + type enumeration { + enum "l2vpn-pw-fec-128" { + value 0; + description + "FEC 128 pseudowire type"; + } + enum "l2vpn-pw-fec-129" { + value 1; + description + "FEC 129 pseudowire type"; + } + enum "l2vpn-pw-fec-not-applicable" { + value 268435455; + description + "FEC Not Applicable"; + } + } + description + "L2vpn pw fec"; + } + + typedef L2vpn-pw-id { + type enumeration { + enum "l2vpn-pw-id-type-manual" { + value 1; + description + "Manual"; + } + enum "l2vpn-pw-id-type-ad-vpls" { + value 2; + description + "AD VPLS"; + } + enum "l2vpn-pw-id-type-ad-vpws" { + value 3; + description + "AD VPWS"; + } + enum "l2vpn-pw-id-type-ad-vpls-ldp" { + value 4; + description + "AD VPLS-LDP"; + } + enum "l2vpn-pw-id-type-pwr" { + value 5; + description + "PWR"; + } + enum "l2vpn-pw-id-type-evpn" { + value 6; + description + "EVPN"; + } + } + description + "L2vpn pw id"; + } + + typedef L2vpn-preferred { + type enumeration { + enum "te-tunnel" { + value 0; + description + "TE Tunnel"; + } + enum "ip-tunnel" { + value 1; + description + "IP Tunnel"; + } + enum "tp-tunnel" { + value 2; + description + "TP Tunnel"; + } + enum "mte-tunnel" { + value 3; + description + "mTE"; + } + enum "mldp-tunnel" { + value 4; + description + "mLDP"; + } + enum "sr-te-policy" { + value 5; + description + "SR TE Policy"; + } + enum "te-named-tunnel" { + value 8; + description + "Named TE Tunnel"; + } + } + description + "Preferred Type"; + } + + typedef L2vpn-ha-nsr-not-ready-reason { + type enumeration { + enum "collab-time-out" { + description + "Collaborator connection time out"; + } + enum "collab-conntection-idt" { + description + "Collaborator connection down or IDT not done"; + } + enum "nsr-peer-not-connected" { + description + "NSR peer not connected"; + } + enum "nsr-peer-not-in-sync" { + description + "NSR peer not in sync"; + } + } + description + "L2vpn ha nsr not ready reason"; + } + + typedef L2vpn-sync-status { + type enumeration { + enum "not-ready" { + description + "Not Ready"; + } + enum "ready" { + description + "Ready"; + } + } + description + "L2vpn sync status"; + } + + typedef L2vpn-id-mgr-app-bag { + type enumeration { + enum "l2vpn-id-mgr-app-bag-type-virtual-ac" { + description + "Virtual AC"; + } + enum "l2vpn-id-mgr-app-bag-type-ac" { + description + "AC"; + } + enum "l2vpn-id-mgr-app-bag-type-pw" { + description + "PW"; + } + enum "l2vpn-id-mgr-app-bag-type-bd" { + description + "BD"; + } + enum "l2vpn-id-mgr-app-bag-type-fxc" { + description + "FXC"; + } + enum "l2vpn-id-mgr-app-bag-type-mp2mp" { + description + "MP2MP"; + } + enum "l2vpn-id-mgr-app-bag-type-rd" { + description + "RD"; + } + enum "l2vpn-id-mgr-app-bag-type-pbb" { + description + "PBB"; + } + enum "l2vpn-id-mgr-app-bag-type-if-list" { + description + "IFLIST"; + } + enum "l2vpn-id-mgr-app-bag-type-atom" { + description + "ATOM"; + } + enum "l2vpn-id-mgr-app-bag-type-global" { + description + "GLOBAL"; + } + enum "l2vpn-id-mgr-app-bag-type-pw-group" { + description + "PWGROUP"; + } + enum "l2vpn-id-mgr-app-bag-type-evpn" { + description + "EVPN"; + } + enum "l2vpn-id-mgr-app-bag-type-evpn-lbl" { + description + "EVPN LBL"; + } + enum "l2vpn-id-mgr-app-bag-type-evpn-rd" { + description + "EVPN RD"; + } + enum "l2vpn-id-mgr-app-bag-type-ital" { + description + "ITAL"; + } + enum "l2vpn-id-mgr-app-bag-type-bp" { + description + "BP"; + } + enum "l2vpn-id-mgr-app-bag-type-evpn-tep" { + description + "EVPN TEP"; + } + enum "l2vpn-id-mgr-app-bag-type-evpn-es" { + description + "EVPN ES"; + } + enum "l2vpn-id-mgr-app-bag-type-policy" { + description + "Policy"; + } + enum "l2vpn-id-mgr-app-bag-type-evpn-instance-rd" { + description + "EVPN INSTANCE RD"; + } + } + description + "L2VPN ID Manager App Type"; + } + + typedef Iccp-sm-port-state { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "unconfigured" { + description + "Unconfigured"; + } + enum "unsynchronized" { + description + "Unsynchronized"; + } + enum "operational" { + description + "Operational"; + } + enum "failed" { + description + "Failed"; + } + enum "reverting" { + description + "Reverting"; + } + } + description + "ICCP-based service multi-homing port state"; + } + + typedef Iccp-sm-state { + type enumeration { + enum "unresolved" { + description + "Unresolved"; + } + enum "provisioned" { + description + "Provisioned"; + } + enum "connecting" { + description + "Connecting"; + } + enum "connected" { + description + "Connected"; + } + enum "synchronizing" { + description + "Synchronizing"; + } + enum "synchronized" { + description + "Synchronized"; + } + } + description + "ICCP-based service multi-homing group state"; + } + + typedef L2vpn-main-if-protect { + type enumeration { + enum "not-protected" { + description + "Not Protected"; + } + enum "mstp-protected" { + description + "MSTP Protected"; + } + enum "erp-protected" { + description + "ERP Protected"; + } + enum "pmclag-protected" { + description + "PMCLAG Protected"; + } + enum "evpn-protected" { + description + "EVPN Protected"; + } + enum "mst-ag-protected" { + description + "MST-AG Protected"; + } + } + description + "Main port protection type"; + } + + typedef L2vpn-main-if-instance-state { + type enumeration { + enum "forwarding" { + description + "Forwarding state"; + } + enum "blocked" { + description + "Blocked state"; + } + enum "mac-learning" { + description + "Mac learning state"; + } + enum "nack" { + description + "Nack state"; + } + enum "forwarning-not-useful" { + description + "Forwarding not useful state"; + } + enum "blocked-not-useful" { + description + "Blocked not useful state"; + } + enum "mac-learning-not-useful" { + description + "Mac Learning not useful state"; + } + enum "blocked-data-only" { + description + "Blocked data only state"; + } + enum "mcast-pe2-ce-blocked" { + description + "Mcast PE to CE blocked state"; + } + enum "port-state-unknown" { + description + "Port state unknown"; + } + } + description + "State of a main port instance"; + } + + typedef L2vpn-ad-vpls-id { + type enumeration { + enum "l2vpn-ad-vpls-id-none" { + value 0; + description + "VPLS-ID not set"; + } + enum "l2vpn-ad-vpls-id-auto" { + value 1; + description + "Auto generated VPLS-ID"; + } + enum "l2vpn-ad-vpls-id-as" { + value 10; + description + "VPLS-ID with 2 Byte AS number"; + } + enum "l2vpn-ad-vpls-id-v4-addr" { + value 266; + description + "VPLS-ID with IPv4 Address"; + } + } + description + "L2vpn ad vpls id"; + } + + typedef L2vpn-ad-lsd-err { + type enumeration { + enum "l2vpn-ad-lsd-err-type-none" { + value 0; + description + "No Error"; + } + enum "l2vpn-ad-lsd-err-type-rw-create-abort-lbl-alloc" { + value 1; + description + "RW Creation aborted due to related Lbl Alloc + failure"; + } + enum "l2vpn-ad-lsd-err-type-lbl-alloc-abort-rw-create" { + value 2; + description + "Lbl Alloc disallowed due to related RW Creation + failure"; + } + enum "l2vpn-ad-lsd-err-type-lbl-alloc-abort-lbl-alloc" { + value 3; + description + "Lbl Alloc disallowed due to related Lbl Alloc + failure"; + } + enum "l2vpn-ad-lsd-err-type-lbl-alloc-lbl-ctx-mismatch" { + value 4; + description + "Lbl Ctx mismatch"; + } + enum "l2vpn-ad-lsd-err-type-rw-create-fpi-size-mismatch" { + value 5; + description + "FPI Size mismatch"; + } + enum "l2vpn-ad-lsd-err-type-rw-create-fpi-version-mismatch" { + value 6; + description + "FPI Version mismatch"; + } + enum "l2vpn-ad-lsd-err-type-enospc" { + value 7; + description + "Out of Label"; + } + enum "l2vpn-ad-lsd-err-type-enomem" { + value 8; + description + "No Memory"; + } + enum "l2vpn-ad-lsd-err-type-undefined" { + value 9; + description + "LABEL ERR"; + } + } + description + "L2vpn ad lsd err"; + } + + typedef L2vpn-ad-sig-method { + type enumeration { + enum "l2vpn-ad-sig-method-none" { + value 0; + description + "None"; + } + enum "l2vpn-ad-sig-method-bgp" { + value 1; + description + "BGP"; + } + enum "l2vpn-ad-sig-method-ldp" { + value 2; + description + "LDP"; + } + } + description + "L2vpn ad sig method"; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Evpn-vpws { + type enumeration { + enum "vlan-unaware" { + description + "VlanUnaware"; + } + enum "vlan-aware" { + description + "VlanAware"; + } + } + description + "EVPN VU/VA Types"; + } + + grouping L2VPN-XC-BRIEF-LINE { + description + "L2VPN XC BRIEF LINE"; + leaf psn-type { + type L2vpn-brief-psn; + description + "PSN Type"; + } + leaf ac1-encapsulation { + type L2vpn-ac-encap; + description + "AC1 encapsulation"; + } + leaf ac2-encapsulation { + type L2vpn-ac-encap; + description + "AC2 encapsulation"; + } + leaf-list up-count { + type uint32; + max-elements "4"; + description + "Number of active cross-connections array - + Index 0 is LikeToLike, 1 is IPInterworking, 2 is + EthernetInterworking, 3 is Total"; + } + leaf-list down-count { + type uint32; + max-elements "4"; + description + "Number of non-active cross-connections array - + Index 0 is LikeToLike, 1 is IPInterworking, 2 is + EthernetInterworking, 3 is Total"; + } + leaf-list unresolved-count { + type uint32; + max-elements "4"; + description + "Number of unresolved cross-connections array - + Index 0 is LikeToLike, 1 is IPInterworking, 2 is + EthernetInterworking, 3 is Total"; + } + } + + grouping L2VPN-XC-BRIEF-FIRST-LAYER { + description + "L2VPN XC BRIEF FIRST LAYER"; + list ac2 { + description + "Array of l2vpn_xc_brief_line indexed by the AC2 + encapsulation type plus one type for PW"; + uses L2VPN-XC-BRIEF-LINE; + } + } + + grouping L2VPN-XC-BRIEF-MATRIX { + description + "L2VPN XC BRIEF MATRIX"; + list ac1 { + description + "Array of l2vpn_xc_brief_first layer indexed by + the AC1 encapsulation type"; + uses L2VPN-XC-BRIEF-FIRST-LAYER; + } + } + + grouping L2VPN-XC-BRIEF { + description + "L2VPN XC BRIEF"; + leaf main-total-up { + type uint32; + description + "Total Number of active Cross-Conections with + valid encaps"; + } + leaf main-total-down { + type uint32; + description + "Total Number of non-active Cross-Conections with + valid encaps"; + } + leaf main-total-unresolved { + type uint32; + description + "Total Number of unresolved Cross-Conections with + valid encaps"; + } + leaf undefined-xc { + type uint32; + description + "Undefined xc including PW-PW"; + } + leaf memory-state { + type L2vpn-memory-state; + description + "L2VPN memory state"; + } + list encapsulation-report-matrix { + max-elements "4"; + description + "Encapsulation report counters matrix"; + uses L2VPN-XC-BRIEF-MATRIX; + } + list encapsulation-total { + max-elements "4"; + description + "Total summary"; + uses L2VPN-XC-BRIEF-LINE; + } + } + + grouping L2VPN-FXC { + description + "L2VPN FXC"; + leaf fxc-id { + type uint32; + description + "Flexible XConnect ID"; + } + leaf name { + type string; + description + "Flexible XConnect Service Name"; + } + leaf state { + type L2vpn-xc-state; + description + "State of the Flexible XConnect Service"; + } + leaf num-p-ws { + type uint8; + description + "Number of Pseudowires in Pseudowire List"; + } + list pseudowire { + max-elements "2"; + description + "Flexible XConnect Service Pseudowire List"; + uses L2VPN-PW; + } + } + + grouping L2VPN-FXC-AC { + description + "L2VPN FXC AC"; + container attachment-circuit { + description + "Flexible XConnect Service Attachment Circuit"; + uses L2VPN-AC; + } + } + + grouping L2VPN-PBB-BMAC-SA { + description + "L2VPN PBB BMAC SA"; + leaf provisioned { + type boolean; + description + "BMAC SA configured"; + } + leaf chassis-is-provisioned { + type boolean; + description + "Chassis MAC is configured"; + } + leaf bmac-sa { + type yang:mac-address; + description + "BMAC SA"; + } + leaf chassis-mac { + type yang:mac-address; + description + "Chassis MAC"; + } + } + + grouping L2VPN-MSTP-SUBINT { + description + "L2VPN MSTP Subinterfaces"; + leaf interface-name { + type string; + description + "Interface name"; + } + } + + grouping L2VPN-MSTP-VLAN { + description + "L2VPN MSTP VLAN"; + leaf vlan-id-xr { + type uint32; + description + "Vlan id"; + } + leaf msti-id { + type uint32; + description + "MSTI id"; + } + leaf port-count { + type uint32; + description + "Port Count"; + } + list sub-interface { + description + "Sub interfaces"; + uses L2VPN-MSTP-SUBINT; + } + } + + grouping L2VPN-MVRP-BP { + description + "L2VPN MVRP BP"; + leaf bridge-port-interface-name { + type string; + description + "Bridge port Interface name"; + } + leaf bridge-port-xconnect-id { + type uint32; + description + "Bridge port XConnect ID"; + } + leaf mvrp-sequence-number { + type uint16; + description + "MVRP Sequence Number"; + } + list vlan-range { + description + "VLAN IDs"; + uses L2VPN-EFP-RANGE; + } + } + + grouping L2VPN-MVRP { + description + "L2VPN MVRP"; + container default-bridge-port { + description + "Trunk or default Bridge Port"; + uses L2VPN-MVRP-BP; + } + leaf main-port-interface-name { + type string; + description + "Main Port Interface name"; + } + leaf is-trunk { + type boolean; + description + "Is main port a trunk"; + } + leaf is-default-encap { + type boolean; + description + "Is default encap set"; + } + leaf number-of-bridge-ports { + type uint32; + description + "Number of Bridge Ports"; + } + } + + grouping L2VPN-COLLAB-CNTR { + description + "L2VPN collaborator statistics"; + leaf collaborator-name { + type string; + description + "Collaborator Name"; + } + leaf up { + type uint32; + description + "Up"; + } + leaf down { + type uint32; + description + "Down"; + } + leaf is-up { + type boolean; + description + "Is up"; + } + } + + grouping L2VPN-COLLAB-STATS { + description + "L2VPN collaborator statistics"; + list count { + max-elements "1"; + description + "count"; + uses L2VPN-COLLAB-CNTR; + } + } + + grouping L2VPN-GLOBAL-INFO { + description + "L2VPN Global Information"; + container collaborator-statistics { + description + "Collaborator Statistics"; + uses L2VPN-COLLAB-STATS; + } + } + + grouping L2VPN-SOURCE-ADDRESS { + description + "L2VPN SOURCE ADDRESS"; + leaf configuration { + type L2vpn-src-address-set; + description + "Configuration"; + } + leaf address { + when "../configuration = 'set'" { + description + "../Configuration = 'Set'"; + } + type inet:ipv4-address; + description + "Local source address"; + } + } + + grouping L2VPN-L2TPV3-PW-CLASS { + description + "L2VPN L2TPV3 PW CLASS"; + leaf l2tp-class-name { + type string { + length "0..32"; + } + description + "L2TPClassName"; + } + leaf ipv4-source-address { + type inet:ipv4-address; + description + "IPv4 source address"; + } + leaf path-mtu-enabled { + type boolean; + description + "Path MTU enabled"; + } + leaf path-mtu-max-value { + type uint16; + description + "Path MTU Maximum allowable session MTU"; + } + leaf dont-fragment-bit { + type boolean; + description + "Don't Fragment Bit"; + } + leaf tos-mode { + type L2vpn-tos-mode; + description + "Type Of Service Mode"; + } + leaf tos { + type uint8; + description + "Type Of Service Value"; + } + leaf ttl { + type uint8; + description + "Time To Live value"; + } + leaf cookie-size { + type uint8; + description + "Cookie size: 0, 4, or 8 bytes"; + } + } + + grouping L2VPN-ENCAP-PW-CLASS { + description + "L2VPN ENCAP PW CLASS"; + container l2tpv3 { + when "../encapsulation = 'l2vpn-pw-encaps-l2tpv3'" { + description + "../Encapsulation = 'L2VPN_PW_ENCAPS_L2TPV3'"; + } + description + "l2tpv3"; + uses L2VPN-L2TPV3-PW-CLASS; + } + leaf encapsulation { + type L2vpn-encap-method; + description + "Encapsulation"; + } + } + + grouping L2VPN-PW-CLASS { + description + "L2VPN PW CLASS"; + container encapsulation-info { + description + "Encapsulation specific pseudowire information"; + uses L2VPN-ENCAP-PW-CLASS; + } + container preferred-path { + description + "MPLS Preferred Path"; + uses L2VPN-PW-MPLS-PREFPATH; + } + container local-source-address { + description + "Local source address"; + uses L2VPN-SOURCE-ADDRESS; + } + leaf pw-class-name { + type string { + length "0..33"; + } + description + "Pseudowire class name"; + } + leaf control-word { + type L2vpn-pw-class-control-word; + description + "Control word"; + } + leaf transport-mode { + type L2vpn-transport-mode; + description + "Transport mode"; + } + leaf sequencing-type { + type L2vpn-pw-sequence; + description + "Sequencing Type"; + } + leaf resync-enabled { + type boolean; + description + "Resync if packets out of sequence"; + } + leaf resync-threshold { + type uint32; + description + "Number of Packets Out of Seqence to trigger + resync"; + } + leaf protocol { + type L2vpn-signalling-proto; + description + "Protocol"; + } + leaf disable-never { + type boolean; + description + "TRUE if backup is not automatically disabled"; + } + leaf disable-delay { + type uint8; + description + "Disable Deley"; + } + leaf backup-mac-withdraw { + type boolean; + description + "TRUE if MAC withdraw message is sent"; + } + leaf tag-rewrite { + type uint16; + description + "Static tag rewrite"; + } + leaf preferred-path-disable-fallback { + type boolean; + description + "PreferredPathDisableFallback"; + } + leaf load-balance { + type L2vpn-load-bal; + description + "Load Balance Type"; + } + leaf pw-flow-label-type-cfg { + type L2vpn-pw-flow-label; + description + "Configured pseudowire flow label type"; + } + leaf pw-flow-label-code17-disabled { + type boolean; + description + "Disable sending Code 17 TLV"; + } + leaf is-flow-label-static { + type boolean; + description + "is flow label static"; + } + } + + grouping L2VPN-G8032-RING-INSTANCE-DETAIL-INFO { + description + "L2VPN ethernet ring instance info detail"; + leaf ring-instance { + type uint32; + description + "Ring instance number"; + } + leaf ring-description { + type string; + description + "Ring description"; + } + leaf ring-profile { + type string; + description + "Ring Profile"; + } + leaf rpl { + type L2vpn-g8032-rpl; + description + "RPL"; + } + leaf aps-port0 { + type string; + description + "Port 0 of aps-channel"; + } + leaf aps-port1 { + type string; + description + "Port 1 of aps-channel"; + } + leaf config-state { + type boolean; + description + "State of the instance"; + } + leaf unresolved-reason { + type L2vpn-g8032-uncfg-reason; + description + "Reason of unresolved state state"; + } + leaf aps-channel-level { + type uint32; + description + "APS channel level"; + } + leaf-list included-vlan-id { + type uint16; + description + "Inclusion list Vlan Ids"; + } + } + + grouping L2VPN-G8032-RING-SUMMARY-INFO { + description + "L2VPN ethernet ring info summary"; + leaf ring-name { + type string; + description + "Name of the ring"; + } + leaf port0 { + type string; + description + "Port 0"; + } + leaf port1 { + type string; + description + "Port 1"; + } + } + + grouping L2VPN-G8032-RING-INSTANCE-SUMMARY-INFO { + description + "L2VPN ethernet ring instance info summary"; + leaf ring-instance { + type uint32; + description + "Ring instance number"; + } + leaf aps-port0 { + type string; + description + "Port 0 of aps-channel"; + } + leaf aps-port1 { + type string; + description + "Port 1 of aps-channel"; + } + leaf config-state { + type boolean; + description + "State of the instance"; + } + leaf-list included-vlan-id { + type uint16; + description + "Inclusion list Vlan Ids"; + } + } + + grouping L2VPN-G8032-RING-DETAIL-INFO { + description + "L2VPN ethernet ring info detail"; + leaf ring-name { + type string; + description + "Name of the ring"; + } + leaf port0 { + type string; + description + "Port 0"; + } + leaf port1 { + type string; + description + "Port 1"; + } + leaf monitor0 { + type string; + description + "Monitor port 0"; + } + leaf monitor1 { + type string; + description + "Monitor port 1"; + } + leaf is-provider-bridge { + type boolean; + description + "Operating mode Customer/Provider "; + } + leaf is-open-ring { + type boolean; + description + "Flag open ring"; + } + leaf tcn-propagation { + type boolean; + description + "Global TCN propagation"; + } + leaf-list excluded-vlan-id { + type uint16; + description + "Exclusion Vlan ids list "; + } + } + + grouping L2VPN-DISCO-SUMMARY { + description + "L2VPN DISCO SUMMARY"; + leaf number-bridge-domainvpns { + type uint32; + description + "Number of BDs registered"; + } + leaf number-mp2m-pxconnect-vpns { + type uint32; + description + "Number of XCs registered"; + } + leaf number-local-edges-bridge-domain { + type uint32; + description + "Number of local Edges"; + } + leaf number-remote-edges-bridge-domain { + type uint32; + description + "Number of Remote Edges"; + } + leaf number-nlri-bridge-domain { + type uint32; + description + "Number of NLRI"; + } + leaf number-local-edges-xconnect { + type uint32; + description + "Number of local Edges"; + } + leaf number-remote-edges-xconnect { + type uint32; + description + "Number of Remote Edges"; + } + leaf number-nlri-xconnect { + type uint32; + description + "Number of NLRI"; + } + leaf bgp-stateon-active-rp { + type boolean; + description + "BGP state on the active RP"; + } + leaf bgp-stateon-standby-rp { + type boolean; + description + "BGP state on standby RP"; + } + leaf vpls-registered { + type boolean; + description + "Is the VPLS service registered"; + } + leaf vpws-registered { + type boolean; + description + "Is the VPWS service registered"; + } + leaf bgp-ipc-transport-mode { + type L2vpn-ipc-transport-mode; + description + "IPC Transport mode with BGP"; + } + leaf bgp-current-node-id { + type xr:Node-id; + description + "BGP current node id"; + } + } + + grouping L2VPN-BRIDGE-VNI { + description + "L2VPN BRIDGE VNI"; + container security-parameters { + description + "Security Parameters"; + uses L2VPN-BRIDGE-PORT-SEC-PARAM; + } + container statistics { + description + "Statistics"; + uses L2FIB-STATS-BAG-FORWARDING; + } + leaf vni { + type uint32; + description + "VNI"; + } + leaf overlay { + type string; + description + "NVE Overlay"; + } + leaf source-ip-addr { + type inet:ipv4-address; + description + "Source IP Address"; + } + leaf multicast-group-addr { + type inet:ipv4-address; + description + "Multicast Group Address"; + } + leaf anycast-vtep-ip-addr { + type inet:ipv4-address; + description + "Anycast VTEP IP Address"; + } + leaf anycast-mcast-group-addr { + type inet:ipv4-address; + description + "Anycast Multicast Group Address"; + } + leaf udp-port { + type uint32; + description + "UDP Port"; + } + leaf vni-encap-type { + type L2vpn-vni-encaps; + description + "VNI Encapsulation Type"; + } + leaf vni-port-state { + type L2vpn-segment-state; + description + "VNI Port State"; + } + leaf vni-mode { + type L2vpn-vni-mode; + description + "VNI Mode"; + } + leaf ingress-replication { + type boolean; + description + "VNI Ingress Replication is enabled"; + } + leaf xconnect-id { + type uint32; + description + "Xconnect ID"; + } + list static-mac { + description + "Static MAC addresses"; + uses L2VPN-BD-MAC; + } + } + + grouping L2VPN-BD-EVPN-PORT { + description + "L2VPN EVPN port"; + container security-parameters { + description + "Security Parameters"; + uses L2VPN-BRIDGE-PORT-SEC-PARAM; + } + container statistics { + description + "Statistics"; + uses L2FIB-STATS-BAG-FORWARDING; + } + leaf xconnect-id { + type uint32; + description + "Xconnect ID"; + } + leaf evpn-port-state { + type L2vpn-virtualport-state; + description + "EVPN Port State"; + } + } + + grouping L2VPN-BRIDGE-EVPN-PARAMS { + description + "L2VPN BRIDGE EVPN PARAMS"; + container evpn-port { + description + "EVPN Port"; + uses L2VPN-BD-EVPN-PORT; + } + leaf evi { + type uint32; + description + "E-VPN id"; + } + leaf evi-encap { + type L2vpn-evpn-encap; + description + "E-VPN Encapsulation"; + } + } + + grouping L2VPN-BD-PBB-CORE-PORT { + description + "L2VPN PBB core port"; + container security-parameters { + description + "Security Parameters"; + uses L2VPN-BRIDGE-PORT-SEC-PARAM; + } + leaf xconnect-id { + type uint32; + description + "Xconnect ID"; + } + leaf vlan-id { + type uint32; + description + "Vlan ID"; + } + leaf core-port-state { + type L2vpn-virtualport-state; + description + "PBB Core Port State"; + } + } + + grouping L2VPN-BRIDGE-PBB-CORE { + description + "L2VPN BRIDGE PBB CORE"; + container core-port { + description + "PBB Core Port"; + uses L2VPN-BD-PBB-CORE-PORT; + } + leaf num-ass-edge { + type uint32; + description + "Number of Associated PBB Edges"; + } + } + + grouping L2VPN-BD-PBB-EDGE-PORT { + description + "L2VPN PBB edge port"; + container security-parameters { + description + "Security Parameters"; + uses L2VPN-BRIDGE-PORT-SEC-PARAM; + } + container statistics { + description + "Statistics"; + uses L2FIB-STATS-BAG-FORWARDING; + } + leaf xconnect-id { + type uint32; + description + "Xconnect ID"; + } + leaf unknown-unicast-mac-set { + type boolean; + description + "Unknown Unicast MAC Configured"; + } + leaf unknown-unicast-mac { + type yang:mac-address; + description + "Unknown Unicast MAC"; + } + leaf edge-port-state { + type L2vpn-virtualport-state; + description + "PBB Edge Port State"; + } + list bmac-mapping { + description + "CMAC to BMAC Mapping"; + uses L2VPN-BD-MAC; + } + } + + grouping L2VPN-BRIDGE-PBB-EDGE { + description + "L2VPN BRIDGE PBB EDGE"; + container edge-port { + description + "PBB Edge Port"; + uses L2VPN-BD-PBB-EDGE-PORT; + } + leaf i-sid { + type uint32; + description + "SID"; + } + leaf core-bridge-name { + type string; + description + "Core Bridge Domain Name"; + } + leaf core-bridge-state { + type L2vpn-bridge-state; + description + "Core Bridge State"; + } + leaf mirp-lite-status { + type L2vpn-mirp-lite-status; + description + "MIRP-lite Status"; + } + leaf mirp-lite-protocol { + type L2vpn-mirp-lite-protocol-info; + description + "MIRP-lite protocol info"; + } + } + + grouping L2VPN-BRIDGE-PBB-PARAMS { + description + "L2VPN BRIDGE PBB PARAMS"; + container pbb-edge { + when "../type = 'l2vpn-bridge-type-pbb-edge'" { + description + "../Type = 'L2VPN_BRIDGE_TYPE_PBB_EDGE'"; + } + description + "PBB Edge"; + uses L2VPN-BRIDGE-PBB-EDGE; + } + container pbb-core { + when "../type = 'l2vpn-bridge-type-pbb-core'" { + description + "../Type = 'L2VPN_BRIDGE_TYPE_PBB_CORE'"; + } + description + "PBB Core"; + uses L2VPN-BRIDGE-PBB-CORE; + } + leaf type { + type L2vpn-bridge; + description + "Type"; + } + } + + grouping L2VPN-VFI-P2MP { + description + "L2VPN VFI P2MP"; + leaf transport { + type L2vpn-vfi-p2mp-transport; + description + "P2MP transport"; + } + leaf signaling { + type L2vpn-vfi-p2mp-signaling; + description + "P2MP signaling"; + } + leaf ptree-id { + type uint32; + description + "PTree ID"; + } + leaf attribute-set-name { + type string; + description + "TE Attribute Set Name"; + } + leaf transport-status { + type P2mp-transport-state; + description + "Transport Status"; + } + leaf local-label { + type uint32; + description + "P2MP Tunnel Local Label"; + } + leaf tunnel-interface { + type xr:Interface-name; + description + "P2MP Tunnel Interface Name"; + } + } + + grouping L2VPN-BD-DISCO { + description + "L2VPN BD DISCO"; + container rd-value { + description + "Route Distinguisher"; + uses L2VPN-RD; + } + container vpls-id { + description + "VPLS ID"; + uses L2VPN-VPLS-ID; + } + leaf vpn-id { + type uint32; + description + "Vpn ID"; + } + leaf ad-signalling-method { + type uint32; + description + "Signaling protocol"; + } + leaf ad-method { + type uint32; + description + "Autodiscovery method"; + } + leaf ve-id { + type uint32; + description + "VPLS Edge ID"; + } + leaf provisioned-ve-id { + type uint32; + description + "Provisioned VPLS edge ID"; + } + leaf ve-range { + type uint16; + description + "VE range"; + } + leaf as-number { + type uint32; + description + "Autonomous System Number"; + } + leaf l2vpn-router-id { + type inet:ipv4-address; + description + "L2PVN Router ID"; + } + leaf vpn-added { + type boolean; + description + "Is VPN id configured"; + } + leaf service-connected { + type boolean; + description + "Is the BGP service connected?"; + } + leaf vpls-id-conflict { + type boolean; + description + "VPLS-ID Conflict"; + } + leaf export-route-policy { + type string; + description + "Export Route Policy"; + } + list import-rt { + description + "List of import route targets"; + uses L2VPN-RT; + } + list export-rt { + description + "List of export route targets"; + uses L2VPN-RT; + } + } + + grouping L2VPN-VFI { + description + "L2VPN Virtual Forwarding Instance"; + container discovery-information { + description + "Auto Discovery information"; + uses L2VPN-BD-DISCO; + } + leaf vfi-name { + type string; + description + "Virtual forwarding instance name"; + } + leaf shutdown { + type boolean; + description + "Shutdown"; + } + leaf access { + type boolean; + description + "VFI is an Access VFI"; + } + leaf vfi-state { + type L2vpn-vfi-state; + description + "VFI state"; + } + leaf number-pseudowires { + type uint32; + description + "Number of Pseudowires"; + } + list p2mp-information { + description + "Multicast P2MP information"; + uses L2VPN-VFI-P2MP; + } + } + + grouping L2VPN-BRIDGE { + description + "L2VPN BRIDGE"; + container security-parameters { + description + "Security parameters"; + uses L2VPN-BRIDGE-SEC-PARAM; + } + container pbb-parameters { + description + "PBB parameters"; + uses L2VPN-BRIDGE-PBB-PARAMS; + } + container evpn-parameters { + description + "EVPN parameters"; + uses L2VPN-BRIDGE-EVPN-PARAMS; + } + container vni-parameters { + description + "VNI parameters"; + uses L2VPN-BRIDGE-VNI; + } + container rd { + description + "Route Distinguisher"; + uses L2VPN-RD; + } + leaf group-name { + type string; + description + "Group name"; + } + leaf bridge-name { + type string; + description + "Bridge-domain name"; + } + leaf bridge-domain-id { + type uint32; + description + "Identification number"; + } + leaf bridge-description { + type string; + description + "Human-readable bridge-domain description"; + } + leaf bridge-state { + type L2vpn-bridge-state; + description + "Bridge-domain state"; + } + leaf bridge-coupled-state { + type L2vpn-bridge-coupled-state; + description + "Bridge-domain coupled state"; + } + leaf bridge-shg-id { + type uint32; + description + "Bridge-domain shgid"; + } + leaf bridge-msti { + type uint32; + description + "Bridge-domain msti"; + } + leaf acpwup { + type uint32; + description + "Number of bridge ports (AC,PW) which are up"; + } + leaf bridge-internal-msti { + type uint32; + description + "Bridge-domain internal msti"; + } + leaf configured { + type boolean; + description + "Bridge-domain is configured"; + } + leaf number-vf-is { + type uint32; + description + "Number of virtual forwarding interfaces"; + } + leaf number-access-vf-is { + type uint32; + description + "Number of Access VFIs"; + } + leaf number-a-cs { + type uint32; + description + "Number of attachment circuits"; + } + leaf number-a-cs-up { + type uint32; + description + "Number of attachment circuits up"; + } + leaf number-pseudowires { + type uint32; + description + "Number of pseudowires"; + } + leaf number-p-ws-up { + type uint32; + description + "Number of pseudowires up"; + } + leaf standby-pseudowires { + type uint32; + description + "Number of pseudowires standby"; + } + leaf number-pb-bs { + type uint8; + description + "Number of pbbs"; + } + leaf number-pb-bs-up { + type uint8; + description + "Number of pbbs up"; + } + leaf num-vn-is { + type uint32; + description + "Number of VNIs"; + } + leaf num-vn-is-up { + type uint32; + description + "Number of VNIs up"; + } + leaf partially-programmed-pseudowires { + type uint32; + description + "Number of pseudowires partially programmed"; + } + leaf partially-programmed-a-cs { + type uint32; + description + "Number of attachment circuits partially + programmed"; + } + leaf bridge-mtu { + type uint32; + description + "Maximum transmission unit"; + } + leaf shutdown { + type boolean; + description + "Administratively disabled"; + } + leaf mac-limit-down { + type boolean; + description + "Oper down because MAC limit reached"; + } + leaf flodd-group-id-down { + type boolean; + description + "Oper down because no FGID"; + } + leaf mac-withdraw { + type boolean; + description + "MAC withdraw enabled"; + } + leaf mac-withdraw-access { + type boolean; + description + "MAC Access PW withdraw enabled"; + } + leaf mac-withdraw-relay { + type boolean; + description + "MAC Access PW withdraw relaying from access to + access enabled"; + } + leaf mac-withdraw-option { + type L2vpn-bag-mac-withdraw-option; + description + "Event on which MAC withdraw is sent"; + } + leaf p2mp-enabled { + type boolean; + description + "P2MP Enabled on this Bridge Domain"; + } + leaf bridge-type { + type L2vpn-bridge; + description + "Bridge-domain type"; + } + leaf vine-fsm-state { + type string; + description + "VNI, IRB, Native-Evpn state"; + } + leaf time-created { + type string { + length "0..50"; + } + description + "Time when the bridge domain was created"; + } + leaf time-elapsed-creation { + type string { + length "0..50"; + } + description + "Time elapsed since creation"; + } + leaf last-time-status-changed { + type string { + length "0..50"; + } + description + "Last time the bridge domain status changed"; + } + leaf time-elapsed-status-changed { + type string { + length "0..50"; + } + description + "Time elapsed since status changed"; + } + leaf load-balance { + type L2vpn-load-bal; + description + "Load Balance Type"; + } + leaf is-bridge-partially-programmed { + type boolean; + description + "Bridge is partially programmed"; + } + leaf evi { + type uint32; + description + "E-VPN id"; + } + leaf is-rd-configured { + type boolean; + description + "Config or Auto"; + } + leaf imposition-pkt-count { + type uint64; + description + "EVPN Imposition Packet Count"; + } + leaf imposition-byte-count { + type uint64; + description + "EVPN Imposition Byte Count"; + } + leaf disposition-pkt-count { + type uint64; + description + "EVPN Disposition Packet Count"; + } + leaf disposition-bytecount { + type uint64; + description + "EVPN Disposition Byte Count"; + } + leaf as { + type uint32; + description + "BGP AS number"; + } + leaf nv-satellite-offload-ipv4-multicast-disabled { + type boolean; + description + "nV Satellite Offload IPv4 Multicast Disabled"; + } + list mac-filter { + description + "MAC addresses for filtering"; + uses L2VPN-BD-MAC; + } + list bridge-vfi { + description + "Virtual Forwarding Interfaces"; + uses L2VPN-VFI; + } + list bridge-access-vfi { + description + "Access Virtual Forwarding Interfaces"; + uses L2VPN-VFI; + } + } + + grouping L2VPN-BD-AC { + description + "L2VPN Bridge Attachment Circuit"; + container attachment-circuit { + description + "Attachment Circuit"; + uses L2VPN-AC; + } + container security-parameters { + description + "Security Parameters"; + uses L2VPN-BRIDGE-PORT-SEC-PARAM; + } + leaf bvi-mac-index { + type uint16; + description + "MyMac Index"; + } + list static-mac { + description + "Static MAC addresses"; + uses L2VPN-BD-MAC; + } + list bvimac { + description + "BVI MAC addresses"; + uses L2VPN-BD-MAC; + } + } + + grouping L2VPN-BAG-STORM-CONTROL-TYPE { + description + "Storm Control Configuration"; + leaf bd-policer { + type boolean; + description + "Bridge Domain Policer"; + } + leaf unicast { + type boolean; + description + "Unknown-unicast Storm Control"; + } + leaf multicast { + type boolean; + description + "Multicast Storm Control"; + } + leaf broadcast { + type boolean; + description + "Broadcast Storm Control"; + } + } + + grouping L2VPN-BRIDGE-SEC-PARAM { + description + "L2VPN BRIDGE SEC PARAM"; + container storm-control { + description + "Storm Control Configuration"; + uses L2VPN-BAG-STORM-CONTROL-TYPE; + } + leaf mac-limit { + type uint32; + description + "MAC address limit"; + } + leaf mac-limit-action { + type L2vpn-bag-mac-limit-action; + description + "MAC limit action"; + } + leaf mac-limit-notification { + type L2vpn-bag-mac-limit-notify; + description + "MAC limit notification"; + } + leaf mac-limit-enabled { + type boolean; + description + "MAC Address Limit Enabled"; + } + leaf mac-aging-time { + type uint32; + units "second"; + description + "MAC aging time in seconds"; + } + leaf mac-aging-mode { + type L2vpn-bag-mac-aging-mode; + description + "MAC Aging Mode"; + } + leaf mac-flooding { + type boolean; + description + "MAC flooding enabled"; + } + leaf mac-learning { + type boolean; + description + "MAC learning enabled"; + } + leaf learn-disabled-mac-limit-action { + type boolean; + description + "Learning disabled due to MAC limit action"; + } + leaf flood-uu-disabled-mac-limit-action { + type boolean; + description + "Flooding of unknown-unicast disabled due to MAC + limit action"; + } + leaf mac-limit-reached { + type boolean; + description + "MAC limit reached"; + } + leaf mac-limit-threshold { + type uint32; + units "percentage"; + description + "MAC Limit Threshold Percentage"; + } + leaf flood-unknown-unicast-enabled { + type boolean; + description + "Flooding unknown unicast enabled"; + } + leaf mac-port-down-flush-enabled { + type boolean; + description + "MAC Flush when port goes down"; + } + leaf split-horizon-group-id { + type uint32; + description + "Split Horizon Group ID"; + } + leaf split-horizon-group-inherited { + type boolean; + description + "Is Split Horizon Group Inherited"; + } + leaf etree-leaf { + type boolean; + description + "E-Tree Leaf Indication"; + } + leaf etree-leaf-inherited { + type boolean; + description + "Is E-Tree Leaf Indication Inherited"; + } + leaf is-ip-source-guard-enabled { + type boolean; + description + "Is IP Source Guard Enabled"; + } + leaf is-ipsg-logging-enabled { + type boolean; + description + "Is IP Source Guard Logging Enabled"; + } + leaf is-dai-enabled { + type boolean; + description + "Is Dynamic ARP Inspection Enabled"; + } + leaf is-dai-logging-enabled { + type boolean; + description + "Is DAI Logging Enabled"; + } + leaf is-dai-addr-validate-source-mac-enabled { + type boolean; + description + "Is DAI Source MAC Address Validation Enabled"; + } + leaf is-dai-addr-validate-destination-mac-enabled { + type boolean; + description + "Is DAI Dstination MAC Address Validation Enabled"; + } + leaf is-dai-addr-validate-ipv4-enabled { + type boolean; + description + "Is DAI IPv4 Addr Validation Enabled"; + } + leaf is-mac-secure-enabled { + type boolean; + description + "Is MAC Secure Enabled"; + } + leaf mac-secure-action { + type L2vpn-bag-mac-secure-action; + description + "MAC Secure Action"; + } + leaf is-mac-secure-logging-enabled { + type boolean; + description + "Is MAC Secure Logging Enabled"; + } + leaf is-mac-secure-accept-shutdown-enabled { + type boolean; + description + "Is MAC Secure Accept Shutdown Enabled (BP only)"; + } + leaf is-mac-secure-threshold-enabled { + type boolean; + description + "Is MAC Secure Threshold Enabled"; + } + leaf mac-secure-shutdown-recovery-time { + type uint16; + description + "MAC Secure Shutdown Action Recovery Timer"; + } + leaf mac-secure-shutdown-recovery-time-remaining { + type uint16; + description + "Remaining time for MAC Secure shutdown Action + Recovery Timer"; + } + leaf dai-address-validation-mask { + type uint8; + description + "DAI Address Validation mask"; + } + leaf dhcpv4-snoop { + type boolean; + description + "DHCPv4 Snoop Status"; + } + leaf dhcpv4-profile-name { + type string; + description + "DHCPv4 Profile Name"; + } + leaf igm-pv4-disabled { + type boolean; + description + "IGMPv4 Disabled"; + } + leaf igm-pv4-profile-name { + type string; + description + "IGMPv4 Profile Name"; + } + leaf mld-profile-name { + type string; + description + "MLD Profile Name"; + } + leaf mmrp-flood-optimization { + type boolean; + description + "MMRP Flood Optimization Status"; + } + leaf unicast-storm-control-rate-unit { + type L2vpn-bag-storm-control-rate-unit; + description + "Unicast Storm Control Rate Unit"; + } + leaf unicast-storm-control-pps { + type uint64; + description + "Unicast Storm Control PPS"; + } + leaf unicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Unicast Storm Control KbPS"; + } + leaf multicast-storm-control-rate-unit { + type L2vpn-bag-storm-control-rate-unit; + description + "Multicast Storm Control Rate Unit"; + } + leaf multicast-storm-control-pps { + type uint64; + description + "Multicast Storm Control PPS"; + } + leaf multicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Multicast Storm Control KbPS"; + } + leaf broadcast-storm-control-rate-unit { + type L2vpn-bag-storm-control-rate-unit; + description + "Broadcast Storm Control Rate Unit"; + } + leaf broadcast-storm-control-pps { + type uint64; + description + "Broadcast Storm Control PPS"; + } + leaf broadcast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Broadcast Storm Control KbPS"; + } + leaf l2mc-src-traffic-enabled { + type L2vpn-bag-l2mc-src-traffic; + description + "L2MC Src Traffic Enabled"; + } + } + + grouping L2VPN-BRIDGE-PORT-SEC-PARAM { + description + "L2VPN BRIDGE PORT SEC PARAM"; + container base { + description + "Basic Security Parameters"; + uses L2VPN-BRIDGE-SEC-PARAM; + } + container storm-control { + description + "Storm Control Configuration"; + uses L2VPN-BAG-STORM-CONTROL-TYPE; + } + leaf unicast-storm-control-rate-unit { + type L2vpn-bag-storm-control-rate-unit; + description + "Unicast Storm Control Rate Unit"; + } + leaf unicast-storm-control-pps { + type uint64; + description + "Unicast Storm Control PPS"; + } + leaf unicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Unicast Storm Control KbPS"; + } + leaf multicast-storm-control-rate-unit { + type L2vpn-bag-storm-control-rate-unit; + description + "Multicast Storm Control Rate Unit"; + } + leaf multicast-storm-control-pps { + type uint64; + description + "Multicast Storm Control PPS"; + } + leaf multicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Multicast Storm Control KbPS"; + } + leaf broadcast-storm-control-rate-unit { + type L2vpn-bag-storm-control-rate-unit; + description + "Broadcast Storm Control Rate Unit"; + } + leaf broadcast-storm-control-pps { + type uint64; + description + "Broadcast Storm Control PPS"; + } + leaf broadcast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Broadcast Storm Control KbPS"; + } + leaf dhcpv4-trust { + type boolean; + description + "DHCPv4 Trust Status"; + } + } + + grouping L2VPN-BD-MAC { + description + "L2VPN Static MAC Address"; + leaf mac { + type yang:mac-address; + description + "MAC address"; + } + leaf pbb-bmac { + type yang:mac-address; + description + "Backbone MAC address"; + } + leaf nh-addr { + type inet:ipv4-address; + description + "Next Hop IP"; + } + } + + grouping L2VPN-BD-PW { + description + "L2VPN Bridge Pseudowire"; + container pseudowire { + description + "Pseudowire"; + uses L2VPN-PW; + } + container security-parameters { + description + "Security Parameters"; + uses L2VPN-BRIDGE-PORT-SEC-PARAM; + } + leaf is-access { + type boolean; + description + "Is Access PW"; + } + list static-mac { + description + "Static MAC addresses"; + uses L2VPN-BD-MAC; + } + } + + grouping L2VPN-RESOURCE-STATE { + description + "L2VPN Resource State"; + leaf resource-out-of-memory-state { + type uint32; + description + "L2VPN Out of memory state"; + } + } + + grouping L2VPN-PWHE-RANGE { + description + "L2VPN PWHE RANGE"; + leaf lower { + type uint16; + description + "lower range"; + } + leaf upper { + type uint16; + description + "upper range"; + } + } + + grouping L2VPN-GENERIC-IF-LIST { + description + "L2VPN GENERIC IF LIST"; + leaf interface-list-name-xr { + type string { + length "0..33"; + } + description + "Interface-list name"; + } + leaf interface-list-id { + type uint32; + description + "Interface internal ID"; + } + leaf number-of-interfaces { + type uint32; + description + "Number of interfaces"; + } + leaf items { + type uint32; + description + "Number of items"; + } + list interface { + description + "Interfaces"; + uses IFLIST-IF; + } + } + + grouping L2VPN-GENERIC-IF-LIST-DETAIL { + description + "L2VPN GENERIC IF LIST DETAIL"; + container summary { + description + "Summary information"; + uses L2VPN-GENERIC-IF-LIST; + } + leaf items { + type uint32; + description + "Number of items"; + } + leaf is-provisioned { + type boolean; + description + "Is Provisioned"; + } + leaf psedowire-ether-items { + type uint32; + description + "Number PW Ether Items"; + } + leaf pseudowire-iw-items { + type uint32; + description + "Number PW IW Items"; + } + list interface { + max-elements "32"; + description + "Interfaces"; + uses IFLIST-IF; + } + list pseudowire-ether-range { + description + "PW-Ether ranges"; + uses L2VPN-PWHE-RANGE; + } + list pseudowire-iw-range { + description + "PW-IW ranges"; + uses L2VPN-PWHE-RANGE; + } + } + + grouping L2VPN-MSTI-BD-ENTRY { + description + "L2VPN MSTi BD Entry"; + leaf bdid { + type uint32; + description + "BD ID"; + } + leaf bdif-count { + type uint32; + description + "BD Intf Count"; + } + } + + grouping L2VPN-MSTI-ENTRY { + description + "L2VPN MSTI Entry"; + leaf cfg-ms-ti { + type uint32; + description + " Configured MSTi"; + } + leaf rcv-count { + type uint32; + description + "Receive count "; + } + leaf ack-count { + type uint32; + description + "Ack count "; + } + leaf nack-count { + type uint32; + description + "Nack count "; + } + leaf flush-count { + type uint32; + description + "Flush count "; + } + leaf interface-count { + type uint32; + description + "Interface count"; + } + leaf bd-count { + type uint32; + description + "BD count"; + } + leaf msti-flags { + type uint32; + description + "Msti Flags"; + } + leaf msti-state { + type L2vpn-msti-state; + description + "Msti State"; + } + list bd-entry { + description + "BD entries"; + uses L2VPN-MSTI-BD-ENTRY; + } + } + + grouping L2VPN-MSTP-PORT { + description + "L2VPN MSTP PORT"; + leaf mstp-interface-handle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf interface-name { + type string; + description + "Interface name"; + } + leaf protected { + type boolean; + description + "Protected"; + } + leaf reference-count { + type uint32; + description + "Reference Count"; + } + list msti-entry { + description + "MSTI"; + uses L2VPN-MSTI-ENTRY; + } + } + + grouping L2VPN-XC-SUMMARY { + description + "L2VPN XC SUMMARY"; + leaf number-groups { + type uint32; + description + "Number of groups"; + } + leaf number-xconnects { + type uint32; + description + "Number of xconnects"; + } + leaf number-xconnects-up { + type uint32; + description + "Numxber of xconnects whose state is up"; + } + leaf number-xconnects-down { + type uint32; + description + "Number of xconnects whose state is down"; + } + leaf number-xconnects-unresolved { + type uint32; + description + "Number of xconnects whose state is unresolved"; + } + leaf number-xconnects-administratively-down { + type uint32; + description + "Number of xconnects with segments in admin down + state"; + } + leaf number-xconnects-type-attachment-circuit-to-pseudo-wire { + type uint32; + description + "Number of xconnects of type attachment circuit + to pseudowire"; + } + leaf number-xconnects-type-monitor-session-to-pseudo-wire { + type uint32; + description + "Number of xconnects of type monitor session to + pseudowire"; + } + leaf number-xconnects-locally-switched { + type uint32; + description + "Number of locally switched xconnects"; + } + leaf number-xconnects-type-attachment-circuit-to-ip-tunnel { + type uint32; + description + "Number of xconnects of type attachment circuit + to IP tunnel"; + } + leaf number-xconnects-with-backup-pw { + type uint32; + description + "Number of XCs configured with backup PW"; + } + leaf number-xconnects-currently-using-backup { + type uint32; + description + "Number of XCs currently using backup PW (UP + state)"; + } + leaf down-backup-xconnects { + type uint32; + description + "Number of XCs with backup PW in down state"; + } + leaf admin-down-backup-xconnects { + type uint32; + description + "Number of XCs with backup PW in admin down state"; + } + leaf unresolved-backup-xconnects { + type uint32; + description + "Number of XCs with backup PW in unresolved state"; + } + leaf standby-backup-xconnects { + type uint32; + description + "Number of XCs with backup PW in standby state"; + } + leaf standby-ready-backup-xconnects { + type uint32; + description + "Number of XCs with backup PW in standby ready + state"; + } + leaf out-of-memory-state { + type uint32; + description + "L2VPN Out of memory state"; + } + leaf number-xconnects-type-pseudo-wire-to-pseudo-wire { + type uint32; + description + "Number of xconnects of type PseudoWire To + PseudoWire"; + } + leaf number-mp2mp-xconnects { + type uint32; + description + "Number of mp2mp xconnects"; + } + leaf number-mp2mp-xconnects-up { + type uint32; + description + "Number of Mp2mp XCs that have been admined up"; + } + leaf number-mp2mp-xconnects-down { + type uint32; + description + "Number of Mp2mp XCs that have ben admined down"; + } + leaf number-mp2mp-xconnects-advertised { + type uint32; + description + "Number of Mp2mp XCs that have been advertized"; + } + leaf number-mp2mp-xconnectss-not-advertised { + type uint32; + description + "Number of Mp2mp XCs that have not been + advertized"; + } + leaf number-ce2-ceconnections { + type uint32; + description + "Number of Ce2Ce connections"; + } + leaf number-ce2ce-advertized { + type uint32; + description + "Number of CE2CE connections that have been + advertized"; + } + leaf number-ce2ce-not-advertized { + type uint32; + description + "Number of CE2CE connections that have not been + advertized"; + } + leaf partially-programmed-xconnects { + type uint32; + description + "Number of cross-connects partially programmed"; + } + leaf number-xconnects-with-backup-interface { + type uint32; + description + "Number of XCs configured with backup interface"; + } + leaf number-xconnects-currently-using-backup-interface { + type uint32; + description + "Number of XCs currently using backup interface + (UP state)"; + } + leaf down-backup-interface-xconnects { + type uint32; + description + "Number of XCs with backup interface in down + state"; + } + leaf admin-down-backup-interface-xconnects { + type uint32; + description + "Number of XCs with backup interface in admin + down state"; + } + leaf unresolved-backup-interface-xconnects { + type uint32; + description + "Number of XCs with backup interface in + unresolved state"; + } + leaf standby-backup-interface-xconnects { + type uint32; + description + "Number of XCs with backup interface in standby + state"; + } + } + + grouping L2VPN-INDEX-INFO { + description + "L2VPN ID Info"; + leaf pool-id-xr { + type uint32; + description + "Pool Id"; + } + leaf application-type { + type L2vpn-id-mgr-app-bag; + description + "Application Type"; + } + leaf allocated-ids { + type uint32; + description + "Number of IDs allocated"; + } + leaf zombied-ids { + type uint32; + description + "Number of IDs allocated"; + } + leaf pool-size { + type uint32; + description + "Pool size"; + } + leaf max-num-id-mgr { + type uint32; + description + "Maximum number of pool extensions"; + } + leaf num-id-mgr-in-use { + type uint32; + description + "ID mgr instances in use"; + } + } + + grouping L2VPN-SRTE-POLICY { + description + "L2VPN SRTE Policy object"; + leaf color-xr { + type uint32; + description + "SRTE policy color"; + } + leaf endpoint-xr { + type L2vpn-bag-in6-addr; + description + "SRTE policy endpoint address"; + } + leaf policy-state-is-up { + type boolean; + description + "Policy is up"; + } + leaf policy-interface-name { + type xr:Interface-name; + description + "Policy interface"; + } + leaf policy-bsid { + type uint32; + description + "BSID for policy"; + } + leaf service-count { + type uint32; + description + "Count of number of services registered for + policy"; + } + leaf policy-bw { + type uint32; + description + "Bandwidth for policy"; + } + leaf policy-name { + type string; + description + "Policy Name"; + } + } + + grouping L2VPN-RT-ES-IMPORT { + description + "L2VPN RT ES IMPORT"; + leaf high-bytes { + type uint32; + description + "Top 4 bytes of ES Import"; + } + leaf low-bytes { + type uint16; + description + "Low 2 bytes of ES Import"; + } + } + + grouping L2VPN-RT-V4ADDR { + description + "L2VPN RT V4ADDR"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RT-4BYTE-AS { + description + "L2VPN RT 4BYTE AS"; + leaf four-byte-as { + type uint32; + description + "4 Byte AS Number"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RT-2BYTE-AS { + description + "L2VPN RT 2BYTE AS"; + leaf two-byte-as { + type uint16; + description + "2 Byte AS Number"; + } + leaf four-byte-index { + type uint32; + description + "4 Byte Index"; + } + } + + grouping L2VPN-RT { + description + "L2VPN RT"; + container two-byte-as { + when "../rt = 'l2vpn-ad-rt-as'" { + description + "../RT = 'L2VPN_AD_RT_AS'"; + } + description + "two byte as"; + uses L2VPN-RT-2BYTE-AS; + } + container four-byte-as { + when "../rt = 'l2vpn-ad-rt-4byte-as'" { + description + "../RT = 'L2VPN_AD_RT_4BYTE_AS'"; + } + description + "four byte as"; + uses L2VPN-RT-4BYTE-AS; + } + container v4-addr { + when "../rt = 'l2vpn-ad-rt-v4-addr'" { + description + "../RT = 'L2VPN_AD_RT_V4ADDR'"; + } + description + "v4 addr"; + uses L2VPN-RT-V4ADDR; + } + container es-import { + when "../rt = 'es-import'" { + description + "../RT = 'ES_Import'"; + } + description + "es import"; + uses L2VPN-RT-ES-IMPORT; + } + leaf rt { + type L2vpn-ad-rt; + description + "RT"; + } + } + + grouping L2VPN-XC-DISCO { + description + "L2VPN XC DISCO"; + container rd-value { + description + "Route Distinguisher"; + uses L2VPN-RD; + } + leaf ad-method { + type uint32; + description + "Autodiscovery Method"; + } + leaf vpn-added { + type boolean; + description + "VPN Added"; + } + leaf ad-service-connected { + type boolean; + description + "Service Connected"; + } + leaf ad-signalling-method { + type uint32; + description + "Signaling Protocol"; + } + leaf ce-range { + type uint16; + description + "CE Range"; + } + leaf export-route-policy { + type string; + description + "Export Route Policy"; + } + leaf number-a-cs-up { + type uint32; + description + "Number of attachment circuits up"; + } + leaf number-p-ws-up { + type uint32; + description + "Number of pseudowires up"; + } + leaf number-ce2ce-advertised { + type uint32; + description + "Number of ce2ce Advertised"; + } + leaf number-a-cs { + type uint32; + description + "Number of attachment circuits"; + } + leaf number-pseudowires { + type uint32; + description + "Number of pseudowires"; + } + leaf number-ce2c-es { + type uint32; + description + "Number of ce2ce"; + } + list import-rt { + description + "Import Route Targets"; + uses L2VPN-RT; + } + list export-rt { + description + "Export Route Targets"; + uses L2VPN-RT; + } + } + + grouping L2VPN-MP2MP-XC { + description + "L2VPN MP2MP XC"; + container discovery { + description + "l2vpn xc auto discovery info"; + uses L2VPN-XC-DISCO; + } + leaf group-name-xr { + type string; + description + "Group name"; + } + leaf mp2mp-name { + type string; + description + "MP2MP name"; + } + leaf mp2mpid { + type uint32; + description + "Identification Number"; + } + leaf vpn-id { + type uint32; + description + "Vpn ID"; + } + leaf vpn-mtu { + type uint32; + description + "VPN MTU"; + } + leaf l2-encapsulation { + type L2vpn-bag-ad-encap; + description + "L2 Encapsulation"; + } + leaf xconnect-shutdown { + type boolean; + description + "Administratively disabled"; + } + } + + grouping L2VPN-GROUP { + description + "L2VPN GROUP"; + leaf group-name-xr { + type string; + description + "Group name"; + } + leaf number-xconnects { + type uint32; + description + "Number of xconnects"; + } + } + + grouping L2VPN-XC-CE2CE { + description + "L2VPN XC CE2CE"; + leaf local-customer-edge-id { + type uint16; + description + "Local CE ID"; + } + leaf remote-customer-edge-id { + type uint16; + description + "Remote CE ID"; + } + leaf ce-added { + type boolean; + description + "CE2CE Advertised"; + } + } + + grouping L2VPN-VXLAN-TUNNEL { + description + "L2VPN VXLAN TUNNEL"; + container peer-id { + description + "Peer"; + uses L2VPN-PEER; + } + leaf nve-id { + type uint32; + description + "NVE"; + } + leaf vni { + type uint32; + description + "VNI"; + } + leaf state { + type L2vpn-segment-state; + description + "State"; + } + } + + grouping L2VPN-P2MP-PW { + description + "L2VPN P2MP PW"; + leaf local-available { + type boolean; + description + "Local LSM info available"; + } + leaf local-label { + type uint32; + description + "Local Label"; + } + leaf local-ptree-type { + type L2vpn-p2mp-pw-ptree; + description + "Local P-Tree Type"; + } + leaf local-tunnel-id { + type uint32; + description + "Local Tunnel ID"; + } + leaf local-extended-tunnel-id { + type inet:ipv4-address; + description + "Local Extended Tunnel ID"; + } + leaf local-p2mp-id { + type uint32; + description + "Local P2MP ID"; + } + leaf local-flags { + type uint8; + description + "Local Flags (see + draft-ietf-l3vpn-2547bis-mcast-bgp-08)"; + } + leaf remote-available { + type boolean; + description + "Remote LSM info available"; + } + leaf remote-label { + type uint32; + description + "Remote Label"; + } + leaf remote-ptree-type { + type L2vpn-p2mp-pw-ptree; + description + "Remote P-Tree Type"; + } + leaf remote-tunnel-id { + type uint32; + description + "Remote Tunnel ID"; + } + leaf remote-extended-tunnel-id { + type inet:ipv4-address; + description + "Remote Extended Tunnel ID"; + } + leaf remote-p2mp-id { + type uint32; + description + "Remote P2MP ID"; + } + leaf remote-flags { + type uint8; + description + "Remote Flags (see + draft-ietf-l3vpn-2547bis-mcast-bgp-08)"; + } + } + + grouping L2VPN-MS-PW-TLV-INFO { + description + "L2VPN MS PW TLV INFO"; + leaf pw-id { + type uint32; + description + "PW ID of last PW segment traversed"; + } + leaf local-address { + type inet:ipv4-address; + description + "Local IP Address of PW Switching Point"; + } + leaf remote-address { + type inet:ipv4-address; + description + "Remote IP Address of Last PW Switching Point + traversed"; + } + leaf description { + type string; + description + "PW Switching Point description"; + } + } + + grouping L2VPN-MS-PW { + description + "L2VPN MS PW"; + container status-tlv { + description + "PW Status Switching TLV"; + uses L2VPN-MS-PW-TLV-INFO; + } + leaf pw-status { + type uint32; + description + "PW Status"; + } + list tlv { + description + "Switching TLV info"; + uses L2VPN-MS-PW-TLV-INFO; + } + } + + grouping L2VPN-TE-NAMED-TUN-PREFPATH { + description + "L2VPN TE NAMED TUN PREFPATH"; + leaf te-named-tunnel { + type string; + description + "TE Tunnel Name"; + } + } + + grouping L2VPN-SR-TE-PREFPATH { + description + "L2VPN SR TE PREFPATH"; + leaf policy-name { + type string; + description + "SR TE Policy Name"; + } + leaf policy-ifh { + type uint32; + description + "SR TE Policy IFHandle"; + } + leaf policy-bsid { + type uint32; + description + "SR TE Policy Binding-SID"; + } + } + + grouping L2VPN-PW-MPLS-PREFPATH { + description + "L2VPN PW MPLS PREFPATH"; + container srte-policy { + when "../option = 'l2vpn-pw-mpls-pref-path-sr-te'" { + description + "../Option = 'L2VPN_PW_MPLS_PREFPATH_SR_TE'"; + } + description + "srte policy"; + uses L2VPN-SR-TE-PREFPATH; + } + container te-named-tunnel { + when "../option = 'l2vpn-pw-mpls-pref-path-te-named-tunnel'" { + description + "../Option = + 'L2VPN_PW_MPLS_PREFPATH_TE_NAMED_TUNNEL'"; + } + description + "te named tunnel"; + uses L2VPN-TE-NAMED-TUN-PREFPATH; + } + leaf option { + type L2vpn-prefpath-option; + description + "Option"; + } + leaf next-hop-ip { + when "../option = 'l2vpn-pw-mpls-pref-path-next-hop-ip'" { + description + "../Option = + 'L2VPN_PW_MPLS_PREFPATH_NEXT_HOP_IP'"; + } + type uint32; + description + "NextHopIP"; + } + leaf te-tunnel-interface-number { + when "../option = 'l2vpn-pw-mpls-pref-path-te-tunnel'" { + description + "../Option = 'L2VPN_PW_MPLS_PREFPATH_TE_TUNNEL'"; + } + type uint32; + description + "TETunnelInterfaceNumber"; + } + leaf ip-tunnel-interface-number { + when "../option = 'l2vpn-pw-mpls-pref-path-ip-tunnel'" { + description + "../Option = 'L2VPN_PW_MPLS_PREFPATH_IP_TUNNEL'"; + } + type uint32; + description + "IPTunnelInterfaceNumber"; + } + leaf tp-tunnel-interface-number { + when "../option = 'l2vpn-pw-mpls-pref-path-tp-tunnel'" { + description + "../Option = 'L2VPN_PW_MPLS_PREFPATH_TP_TUNNEL'"; + } + type uint32; + description + "TPTunnelInterfaceNumber"; + } + } + + grouping L2VPN-EVPN-L2-ATTRS { + description + "L2VPN EVPN L2 ATTRS"; + leaf mtu { + type uint16; + description + "Maximum Transmission Unit"; + } + leaf designated-forwarder-role { + type Evpn-bag-df-role; + description + "Designated Forwarder Role"; + } + leaf control-word { + type Evpn-bag-l2-attr-cw; + description + "Control Word"; + } + } + + grouping L2VPN-EVPN-SRV6-SID-INFO { + description + "SRv6 SID information for EVPN services"; + leaf srv6-sid { + type inet:ipv6-address; + description + "SRv6 SID"; + } + } + + grouping L2VPN-EVPN-SRTE-INFO { + description + "L2VPN EVPN SRTE INFO"; + leaf sr-te-type { + type uint8; + description + "Type of SR-TE Policy path from ODN"; + } + leaf sr-te-interface-name { + type xr:Interface-name; + description + "SR Traffic Engineering Interface Name"; + } + leaf sr-te-bsid { + type uint32; + description + "SR Traffic Engineering Binding-SID (Label)"; + } + leaf srv6-te-bsid { + type inet:ipv6-address; + description + "SRv6 Traffic Engineering Binding-SID"; + } + } + + grouping L2VPN-LABEL-PATH-BUFFER { + description + "L2VPN LABEL PATH BUFFER"; + container sr-te-info { + description + "SR(v6)-TE Policy info from ODN"; + uses L2VPN-EVPN-SRTE-INFO; + } + container layer2-attributes { + description + "Layer 2 Attributes"; + uses L2VPN-EVPN-L2-ATTRS; + } + leaf next-hop { + type inet:ipv6-address; + description + "Next-hop IP address (v6 format)"; + } + leaf tunnel-endpoint-id { + type uint32; + description + "Tunnel Endpoint Identifier"; + } + leaf output-label { + type uint32; + description + "Output Label"; + } + leaf reroute-label { + type uint32; + description + "Reroute Label"; + } + leaf ges-mac-address { + type yang:mac-address; + description + "Grouping ES MAC address"; + } + leaf originating-pe { + type inet:ipv6-address; + description + "OriginatingPE IP address (v6 format)"; + } + leaf-list issue { + type Evpn-bag-path-issues; + description + "Issues with this path item"; + } + list srv6-sid-info { + description + "Array of SRv6 SID information"; + uses L2VPN-EVPN-SRV6-SID-INFO; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping MGMT-SRV6-HEADEND-BEHAVIOR { + description + "SRv6 Headend Behavior Info"; + leaf type { + type Mgmt-srv6-headend; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping L2VPN-SRV6 { + description + "L2VPN SRV6"; + container srv6-headend-behavior { + description + "Headend behavior in use"; + uses MGMT-SRV6-HEADEND-BEHAVIOR; + } + container srv6-endpoint-behavior { + description + "Endpoint behavior in use"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + leaf srv6-local-sid { + type inet:ipv6-address; + description + "Locally allocated SRv6 SID"; + } + leaf srv6-locator-name { + type string; + description + "Locator Name used for allocation"; + } + list remote-path-buffer { + key "next-hop"; + description + "Remote path buffer containing remote SIDs"; + uses L2VPN-LABEL-PATH-BUFFER; + } + } + + grouping L2VPN-L2TPV3 { + description + "L2VPN L2TPV3"; + leaf l2tp-class-name { + type string { + length "0..32"; + } + description + "L2TPClassName"; + } + leaf ipv4-source-address { + type inet:ipv4-address; + description + "IPv4 source address"; + } + leaf ipv6-source-address { + type inet:ipv6-address; + description + "IPv6 source address"; + } + leaf path-mtu-enabled { + type boolean; + description + "Path MTU enabled"; + } + leaf path-mtu-max-value { + type uint16; + description + "Path MTU Maximum allowable session MTU"; + } + leaf dont-fragment-bit { + type boolean; + description + "Don't Fragment Bit"; + } + leaf tos-mode { + type L2vpn-tos-mode; + description + "Type Of Service Mode"; + } + leaf tos { + type uint8; + description + "Type Of Service Value"; + } + leaf ttl { + type uint8; + description + "Time To Live value"; + } + leaf local-session-id { + type uint32; + description + "Local session id"; + } + leaf remote-session-id { + type uint32; + description + "Remote session id"; + } + leaf local-cookie-size { + type uint8; + description + "Local cookie size: 0, 4, or 8 bytes"; + } + leaf remote-cookie-size { + type uint8; + description + "Remote cookie size: 0, 4, or 8 bytes"; + } + leaf local-cookie-low-value { + type uint32; + description + "Lower 4 bytes of the value of the local cookie"; + } + leaf remote-cookie-low-value { + type uint32; + description + "Lower 4 bytes of the value of the remote cookie"; + } + leaf local-cookie-high-value { + type uint32; + description + "Upper 4 bytes of the value of the local cookie"; + } + leaf remote-cookie-high-value { + type uint32; + description + "Upper 4 bytes of the value of the remote cookie"; + } + leaf remote-circuit-status-up { + type boolean; + description + "RemoteCircuitStatusUp"; + } + leaf tunnel-state { + type L2vpn-l2tp-tunnel-state; + description + "L2TP tunnel state"; + } + leaf local-secondary-cookie-size { + type uint8; + description + "Local secondary cookie size: 0, 4, or 8 bytes"; + } + leaf local-secondary-cookie-low-value { + type uint32; + description + "Lower 4 bytes of the value of the local + secondary cookie"; + } + leaf local-secondary-cookie-high-value { + type uint32; + description + "Upper 4 bytes of the value of the local + secondary cookie"; + } + } + + grouping L2FIB-STATS-BAG-MSPW { + description + "L2FIB Multisegment pseudowire statistics"; + leaf received-packets { + type uint64; + description + "Packets received"; + } + leaf received-bytes { + type uint64; + units "byte"; + description + "Bytes received"; + } + } + + grouping L2VPN-ATOM { + description + "L2VPN ATOM"; + container local-agi { + description + "Local Attachment Group Identifier"; + uses L2VPN-VPLS-ID; + } + container remote-agi { + description + "Remote Attachment Group Identifier"; + uses L2VPN-VPLS-ID; + } + container multi-segment-pseudowire-stats { + description + "Multisegment pseudowire statistics"; + uses L2FIB-STATS-BAG-MSPW; + } + leaf is-pseudowire-headend { + type boolean; + description + "Is this connected to a PW-HE AC"; + } + leaf local-label { + type uint32; + description + "Local label"; + } + leaf remote-label { + type uint32; + description + "Remote label"; + } + leaf local-group-id { + type uint32; + description + "Local group ID"; + } + leaf remote-group-id { + type uint32; + description + "Remote group ID"; + } + leaf local-cv-type { + type uint8; + description + "Local VCCV CV type"; + } + leaf local-c-ctype { + type uint8; + description + "Local VCCV CC type"; + } + leaf remote-cv-type { + type uint8; + description + "Remote VCCV CV type"; + } + leaf remote-c-ctype { + type uint8; + description + "Remote VCCV CC type"; + } + leaf local-veid { + type uint32; + description + "Local VE ID"; + } + leaf remote-veid { + type uint32; + description + "Remote VE ID"; + } + leaf local-ceid { + type uint32; + description + "Local CE ID"; + } + leaf remote-ceid { + type uint32; + description + "Remote CE ID"; + } + leaf source-address { + type inet:ipv4-address; + description + "Local BGP source address"; + } + leaf remote-source-address { + type inet:ipv4-address; + description + "Remote BGP source address"; + } + leaf local-ldp-id { + type inet:ipv4-address; + description + "Local LDP ID"; + } + leaf remote-ldp-id { + type inet:ipv4-address; + description + "Remote LDP ID"; + } + leaf saii { + type inet:ipv4-address; + description + "Source Attachment Individual Identifer"; + } + leaf taii { + type inet:ipv4-address; + description + "Target Attachment Individual Identifer"; + } + leaf is-sai-itype2 { + type boolean; + description + "Is SAII FEC129 Type 2"; + } + leaf local-saii-gbl-id { + type uint32; + description + "Local SAII Global ID"; + } + leaf local-saiiac-id { + type uint32; + description + "Local SAII AC ID"; + } + leaf is-tai-itype2 { + type boolean; + description + "Is TAII type 2"; + } + leaf local-taii-gbl-id { + type uint32; + description + "Local TAII Global ID"; + } + leaf local-taiiac-id { + type uint32; + description + "Local TAII AC ID"; + } + leaf rem-saii-gbl-id { + type uint32; + description + "Remote SAII Global ID"; + } + leaf rem-saiiac-id { + type uint32; + description + "Remote SAII AC ID"; + } + leaf rem-taii-gbl-id { + type uint32; + description + "Remote TAII Global ID"; + } + leaf rem-taiiac-id { + type uint32; + description + "Remote TAII AC ID"; + } + leaf rem-saii { + type inet:ipv4-address; + description + "Remote Source Attachment Individual Identifer"; + } + leaf rem-taii { + type inet:ipv4-address; + description + "Remote Target Attachment Individual Identifer"; + } + leaf lsd-rewrite-failed { + type boolean; + description + "LSD rewrite failed"; + } + leaf ldp-label-advertisment-failed { + type boolean; + description + "LDP label advertisment failed"; + } + leaf pwhe-internal-label { + type uint32; + description + "PWHE Internal Label"; + } + } + + grouping L2VPN-ENCAP-PW { + description + "L2VPN ENCAP PW"; + container atom { + when "../encapsulation = 'l2vpn-pw-encaps-mpls'" { + description + "../Encapsulation = 'L2VPN_PW_ENCAPS_MPLS'"; + } + description + "atom"; + uses L2VPN-ATOM; + } + container l2tpv3 { + when "../encapsulation = 'l2vpn-pw-encaps-l2tpv3'" { + description + "../Encapsulation = 'L2VPN_PW_ENCAPS_L2TPV3'"; + } + description + "l2tpv3"; + uses L2VPN-L2TPV3; + } + container srv6 { + when "../encapsulation = 'l2vpn-pw-encaps-srv6'" { + description + "../Encapsulation = 'L2VPN_PW_ENCAPS_SRV6'"; + } + description + "srv6"; + uses L2VPN-SRV6; + } + leaf encapsulation { + type L2vpn-encap-method; + description + "Encapsulation"; + } + } + + grouping L2VPN-PEER { + description + "L2VPN PEER"; + leaf type { + type L2vpn-peer; + description + "type"; + } + leaf ipv4-peer-id { + when "../type = 'ipv4'" { + description + "../type = 'IPV4'"; + } + type inet:ipv4-address; + description + "Peer IPv4 address"; + } + leaf ipv6-peer-id { + when "../type = 'ipv6'" { + description + "../type = 'IPV6'"; + } + type L2vpn-bag-in6-addr; + description + "Peer IPv6 address"; + } + leaf internal-label { + when "../type = 'internal-label'" { + description + "../type = 'InternalLabel'"; + } + type uint32; + description + "Internal Label"; + } + leaf internal-id { + when "../type = 'internal-id'" { + description + "../type = 'InternalID'"; + } + type uint32; + description + "Internal ID"; + } + } + + grouping L2VPN-PW { + description + "L2VPN PW"; + container peer-id { + description + "Peer"; + uses L2VPN-PEER; + } + container encapsulation-info { + description + "Encapsulation specific pseudowire information"; + uses L2VPN-ENCAP-PW; + } + container local-interface { + description + "Local interface"; + uses L2VPN-INTERFACE; + } + container remote-interface { + description + "Remote interface"; + uses L2VPN-INTERFACE; + } + container preferred-path { + description + "MPLS Preferred Path"; + uses L2VPN-PW-MPLS-PREFPATH; + } + container local-signalling { + description + "Local signalling"; + uses L2VPN-MS-PW; + } + container remote-signalling { + description + "Remote signalling"; + uses L2VPN-MS-PW; + } + container statistics { + description + "Statistics"; + uses L2FIB-STATS-BAG-FORWARDING; + } + container p2mp-pw { + description + "P2MP Pseudowire Information"; + uses L2VPN-P2MP-PW; + } + leaf local-source-address { + type inet:ipv4-address; + description + "Local Source Address"; + } + leaf ipv6-local-source-address { + type inet:ipv6-address; + description + "Local IPv6 Source Address"; + } + leaf pseudo-wire-id { + type uint64; + description + "Pseudowire ID"; + } + leaf evpn-vpws-type { + type Evpn-vpws; + description + "EVPN VPWS Type"; + } + leaf is-pwr-type { + type boolean; + description + "is Pseudowire-routed"; + } + leaf is-evpn-vpws-type { + type boolean; + description + "is EVPN VPWS"; + } + leaf xconnect-id { + type uint32; + description + "XConnect ID"; + } + leaf state { + type L2vpn-segment-state; + description + "State"; + } + leaf pseudo-wire-state { + type L2vpn-pw-state; + description + "Pseudowire state"; + } + leaf protocol { + type L2vpn-signalling-proto; + description + "Protocol"; + } + leaf pw-class-name { + type string { + length "0..33"; + } + description + "Pseudowire class name"; + } + leaf tag-rewrite { + type uint16; + description + "StaticTagRewrite"; + } + leaf interworking { + type L2vpn-interworking; + description + "Interworking type"; + } + leaf fe-ctype { + type L2vpn-pw-fec; + description + "Pseudowire FEC type"; + } + leaf evpn-src-acid { + type uint32; + description + "EVPN VPWS Source AC ID"; + } + leaf mtu-mismatch-ignore { + type boolean; + description + "Ignore MTU Mismatch"; + } + leaf mtu-zero-transmit { + type boolean; + description + "Transmit MTU Zero"; + } + leaf sequencing-type { + type L2vpn-pw-sequence; + description + "Sequencing Type"; + } + leaf resync-enabled { + type boolean; + description + "Resync if packets out of sequence"; + } + leaf resync-threshold { + type uint32; + description + "Number of Packets Out of Seqence to trigger + resync"; + } + leaf local-control-word { + type L2vpn-pw-control-word; + description + "Local control word"; + } + leaf remote-control-word { + type L2vpn-pw-control-word; + description + "Remote control word"; + } + leaf local-pseudo-wire-type { + type L2vpn-pw; + description + "Local pseudowire type"; + } + leaf remote-pseudo-wire-type { + type L2vpn-pw; + description + "Remote pseudowire type"; + } + leaf imposed-vlan-id { + type uint32; + description + "Imposed vlan id"; + } + leaf time-created { + type string { + length "0..50"; + } + description + "Time when the pseudowire was created"; + } + leaf time-elapsed-creation { + type string { + length "0..50"; + } + description + "Time elapsed since creation"; + } + leaf last-time-status-changed { + type string { + length "0..50"; + } + description + "Last time the pseudowire status changed"; + } + leaf time-elapsed-status-changed { + type string { + length "0..50"; + } + description + "Time elapsed since status changed"; + } + leaf last-time-status-down { + type string { + length "0..50"; + } + description + "Last time the pseudowire went down in format + %d/%m/%Y %H:%M:%S"; + } + leaf time-elapsed-status-down { + type uint32; + units "second"; + description + "Time elapsed since last status down in seconds"; + } + leaf shutdown { + type boolean; + description + "Shutdown"; + } + leaf data-path-down { + type boolean; + description + "True if LSP down"; + } + leaf use-tunnel-path { + type boolean; + description + "True if using TE tunnel"; + } + leaf odn-configured { + type boolean; + description + "True if ODN is configured"; + } + leaf pseudo-wire-type-mismatched { + type boolean; + description + "Pseudowire type mismatched"; + } + leaf payload-bytes-mismatched { + type boolean; + description + "Payload bytes mismatched"; + } + leaf bitrate-mismatched { + type boolean; + description + "Bitrate mismatched"; + } + leaf rtp-mismatched { + type boolean; + description + "RTP mismatched"; + } + leaf diff-ts-mismatched { + type boolean; + description + "Differential timestamp mismatched"; + } + leaf sig-pkts-mismatched { + type boolean; + description + "Signalling packets mismatched"; + } + leaf cas-mismatched { + type boolean; + description + "CAS mismatched"; + } + leaf payload-type-mismatched { + type boolean; + description + "Payload bytes mismatched"; + } + leaf freq-mismatched { + type boolean; + description + "Frequency mismatched"; + } + leaf ssrc-mismatched { + type boolean; + description + "SSRC mismatched"; + } + leaf mtu-mismatched { + type boolean; + description + "MTU mismatched"; + } + leaf illegal-control-word { + type boolean; + description + "Illegal control word"; + } + leaf ad-remote-down { + type boolean; + description + "Auto-Discovered PW remote state down"; + } + leaf not-supported-qinq { + type boolean; + description + "A true value indicates that QinQ is not + supported with L2TPv3; A false value indicates + that it is supported. Please note that this + object has been deprecated and will be removed + in the near future since QinQ is supported going + forward."; + } + leaf local-label-failed { + type boolean; + description + "Failed to set BGP advertised local label"; + } + leaf remote-label-failed { + type boolean; + description + "Failed to set BGP advertised remote label"; + } + leaf preferred-path-disable-fallback { + type boolean; + description + "Prefpath fallback enable/disable"; + } + leaf backup-pw { + type boolean; + description + "TRUE if PW is a backup PW"; + } + leaf primary-pw { + type boolean; + description + "TRUE if PW is a primary PW"; + } + leaf backup-active { + type boolean; + description + "TRUE if backup is active"; + } + leaf backup-force-active { + type boolean; + description + "TRUE if backup is active due to switchover"; + } + leaf disable-never { + type boolean; + description + "TRUE if backup is not automatically disabled"; + } + leaf disable-delay { + type uint8; + description + "Backup disable delay"; + } + leaf primary-peer-id { + type inet:ipv4-address; + description + "Primary Peer IP address"; + } + leaf primary-pseudo-wire-id { + type uint64; + description + "Primary Pseudowire ID"; + } + leaf number-ma-cwithdraw-message-sent { + type uint32; + description + "Num MW messages sent over PW"; + } + leaf num-ma-cwithdraw-msg-received { + type uint32; + description + "Num MW messages received over PW"; + } + leaf out-of-memory-state { + type uint32; + description + "L2VPN Out of memory state"; + } + leaf transport-lsp-down { + type boolean; + description + "Oper down due to Transport LSP down"; + } + leaf mac-limit-oper-down { + type boolean; + description + "Oper down because MAC limit reached"; + } + leaf pw-status-use { + type boolean; + description + "PW status in use"; + } + leaf auto-discovery { + type boolean; + description + "Is autodiscovery"; + } + leaf ad-method { + type uint32; + description + "Autodiscovery method"; + } + leaf pwlsd-rewrite-failed { + type boolean; + description + "LSD rewrite failed"; + } + leaf ldp-label-advertise-failed { + type boolean; + description + "LDP label advertisment failed"; + } + leaf is-vfi { + type boolean; + description + "Is VFI interface"; + } + leaf is-multi-segment-pseudowire { + type boolean; + description + "Is Multi-Segment Pseudowire"; + } + leaf pw-redundancy-one-way { + type boolean; + description + "Force one-way PW redundancy behaviour in + Redundancy Group"; + } + leaf load-balance { + type L2vpn-load-bal; + description + "Load Balance Type"; + } + leaf pw-flow-label-type { + type L2vpn-pw-flow-label; + description + "Negotiated pseudowire flow label type"; + } + leaf pw-flow-label-type-cfg { + type L2vpn-pw-flow-label; + description + "Configured pseudowire flow label Type"; + } + leaf pw-flow-label-code17-disabled { + type boolean; + description + "Disable sending Code 17 TLV"; + } + leaf is-flow-label-static { + type boolean; + description + "is flow label static"; + } + leaf is-partially-programmed { + type boolean; + description + "Is Pseudowire partially programmed"; + } + leaf pw-redundancy-initial-delay { + type uint8; + units "second"; + description + "Initial delay for redundant PW in seconds"; + } + leaf bridge-pw-type-mismatch { + type boolean; + description + "Oper down because Bridge has mismatched PW Types"; + } + leaf required-bw { + type uint32; + description + "Required Bandwidth"; + } + leaf admited-bw { + type uint32; + description + "Admited Bandwidth"; + } + leaf forward-class { + type uint8; + description + "Forward Class attribute"; + } + leaf table-policy-name { + type string; + description + "Table-policy Name"; + } + leaf is-fxc-vlan-aware { + type boolean; + description + "Is FXC vlan-aware"; + } + leaf etree-leaf { + type boolean; + description + "E-Tree Leaf Indication"; + } + leaf is-ple-cem-ac { + type boolean; + description + "PLE-CEM Attachment Circuit"; + } + leaf ple-cem-pw-type { + type L2vpn-ple-ac; + description + "PLE-CEM PW Type"; + } + leaf ple-cem-cep-options { + type L2vpn-ple-cep-options; + description + "PLE-CEM CEP Options"; + } + leaf ple-cem-payload-bytes { + type uint32; + units "byte"; + description + "PLE-CEM Payload Bytes"; + } + leaf ple-cem-bitrate { + type uint32; + description + "PLE-CEM Bitrate"; + } + leaf remote-ple-cem-pw-type { + type L2vpn-ple-ac; + description + "PLE-CEM PW Type"; + } + leaf remote-ple-cem-cep-options { + type L2vpn-ple-cep-options; + description + "PLE-CEM CEP Options"; + } + leaf remote-ple-cem-payload-bytes { + type uint32; + units "byte"; + description + "PLE-CEM Payload Bytes"; + } + leaf remote-ple-cem-bitrate { + type uint32; + description + "PLE-CEM Bitrate"; + } + leaf-list evpn-vpws-down-reason { + type Evpn-vpws-reason; + description + "EVPN VPWS down reasons"; + } + } + + grouping L2VPN-PROTECTION { + description + "L2VPN PROTECTION"; + leaf protection-type { + type L2vpn-protection; + description + "Type of the protection"; + } + leaf protection-configured { + type L2vpn-protection-role; + description + "Protection configured"; + } + leaf protection-name { + type string { + length "0..65"; + } + description + "Name of the segment acting as backup"; + } + leaf protected-name { + type string { + length "0..65"; + } + description + "Name of the protected segment"; + } + leaf active { + type boolean; + description + "Active"; + } + } + + grouping L2FIB-STATS-BAG-SEQ-NUM { + description + "L2FIB sequence numbers"; + leaf sequence-number-sent { + type uint32; + description + "sequence number sent"; + } + leaf sequence-number-expected { + type uint32; + description + "sequence number expected"; + } + leaf bypassed-inbound-sequence-packet { + type uint64; + description + "Bypassed inbound sequence packets"; + } + leaf bypassed-out-sequence-packet { + type uint64; + description + "Bypassed outbound sequence packets"; + } + } + + grouping L2FIB-STATS-BAG-DISP { + description + "L2FIB disposition statistics"; + container disposition-stat { + description + "disposition stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container disposition-mtu-drop { + description + "disposition mtu drop stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container disposition-tail-drop { + description + "disposition tail drop stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container multicast-drop { + description + "disposition storm control multicast drop stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container unicast-drop { + description + "disposition storm control unknown unicast drop + stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container broadcast-drop { + description + "disposition storm control broadcast drop stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container received-drops { + description + "tx discards"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container dai-drop { + description + "Disposition dynamic ARP inspection drop + statistics"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container ipsg-drop { + description + "disposition IP source guard drop statistics"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container disposition-oo-o-drops { + description + "Disposition Out-of-Order Drops"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container disposition-p2mp-stats { + description + "Disposition P2MP Stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container known-unicast { + description + "Known Unicast"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container mac-move { + description + "MAC Move"; + uses L2FIB-STATS-BAG-COUNTERS; + } + } + + grouping L2FIB-STATS-BAG-COUNTERS { + description + "L2FIB statistics counters"; + leaf packet-counts { + type uint64; + description + "packets counters"; + } + leaf byte-counts { + type uint64; + units "byte"; + description + "bytes counters"; + } + } + + grouping L2FIB-STATS-BAG-IMP { + description + "L2FIB imposition statistics"; + container imposition-stat { + description + "imposition stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container imposition-mtu-drop { + description + "imposition mtu drop stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container imposition-tail-drop { + description + "imposition tail drop stats"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container l2fsbi-drop { + description + "rx discards"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container multicast { + description + "Multicast"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container broadcast { + description + "Broadcast"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container known-unicast { + description + "Known Unicast"; + uses L2FIB-STATS-BAG-COUNTERS; + } + container unknown-unicast { + description + "Unknown Unicast"; + uses L2FIB-STATS-BAG-COUNTERS; + } + } + + grouping L2FIB-STATS-BAG-FORWARDING { + description + "L2FIB forwarding statistics"; + container imposition-stats { + description + "imposition stats"; + uses L2FIB-STATS-BAG-IMP; + } + container disposition-stats { + description + "disposition stats"; + uses L2FIB-STATS-BAG-DISP; + } + container sequence-number { + description + "sequence numbers"; + uses L2FIB-STATS-BAG-SEQ-NUM; + } + } + + grouping L2VPN-PWHE { + description + "L2VPN PWHE"; + container interface-list { + description + "Interface list data"; + uses ITEM-IFLIST-IFL; + } + leaf is-valid { + type boolean; + description + "Is this Interface list valid"; + } + leaf internal-label { + type uint32; + description + "Internal Label"; + } + } + + grouping L2VPN-FR { + description + "L2VPN FR"; + leaf fr-mode { + type L2vpn-fr-mode; + description + "Frame Relay mode"; + } + leaf dlci { + type uint32; + description + "Data-link connection identifier"; + } + } + + grouping L2VPN-ATM { + description + "L2VPN ATM"; + leaf maximum-number-cells-packed { + type uint16; + description + "Max number of cells packed"; + } + leaf maximum-number-cells-un-packed { + type uint16; + description + "Max number of cells unpacked"; + } + leaf atm-mode { + type L2vpn-atm-mode; + description + "ATM mode"; + } + leaf vpi { + type uint16; + description + "Virtual path identifier"; + } + leaf vci { + type uint16; + description + "Virtual channel identifier"; + } + } + + grouping L2VPN-TDM-OPTION { + description + "L2VPN TDM options"; + leaf payload-bytes { + type uint16; + units "byte"; + description + "TDM payload bytes"; + } + leaf bit-rate { + type uint32; + units "kbit/s"; + description + "TDM bit rate in units of Kbps"; + } + leaf rtp { + type L2vpn-tdm-rtp-option; + description + "RTP header"; + } + leaf timestamp-mode { + type L2vpn-time-stamp-mode; + description + "TDM Timestamping mode"; + } + leaf signalling-packets { + type uint8; + description + "Signalling packets"; + } + leaf cas { + type uint8; + description + "CAS"; + } + leaf rtp-header-payload-type { + type uint8; + description + "RTP header payload type"; + } + leaf timestamp-clock-freq { + type uint16; + description + "Timestamping clock frequency in units of 8Khz"; + } + leaf ssrc { + type uint32; + description + "Synchronization Source identifier"; + } + } + + grouping L2VPN-TDM { + description + "L2VPN TDM parameters"; + container tdm-options { + description + "TDM options"; + uses L2VPN-TDM-OPTION; + } + leaf timeslot-group { + type string; + description + "Timeslots separated by , or - from 1 to 31. : + indicates individual timeslot and - represents a + range.E.g. 1-3,5 represents timeslots 1, 2, 3, + and 5."; + } + leaf timeslot-rate { + type uint8; + units "kbit/s"; + description + "Timeslot rate in units of Kbps"; + } + leaf tdm-mode { + type L2vpn-tdm-mode; + description + "TDM mode"; + } + } + + grouping L2VPN-EFP-RANGE { + description + "EFP range"; + leaf lower { + type uint16; + description + "Lower"; + } + leaf upper { + type uint16; + description + "Upper"; + } + } + + grouping L2VPN-VLAN { + description + "L2VPN VLAN"; + leaf xconnect-tags { + type uint8; + description + "XConnect tags"; + } + leaf vlan-rewrite-tag { + type uint16; + description + "VLAN rewrite tag"; + } + leaf simple-efp { + type uint8; + description + "Simple EFP"; + } + leaf encapsulation-type { + type uint8; + description + "Encapsulation Type"; + } + leaf outer-tag { + type uint16; + description + "Outer Tag"; + } + leaf-list rewrite-tag { + type uint16; + description + "Rewrite Tags"; + } + list vlan-range { + description + "vlan range"; + uses L2VPN-EFP-RANGE; + } + } + + grouping L2VPN-ETHERNET { + description + "L2VPN ETHERNET"; + leaf xconnect-tags { + type uint8; + description + "XConnect tags"; + } + } + + grouping L2VPN-INTERFACE-PARAMS { + description + "L2VPN INTERFACE PARAMS"; + container ethernet { + when "../type = 'l2vpn-intf-type-ethernet'" { + description + "../Type = 'L2VPN_INTF_TYPE_ETHERNET'"; + } + description + "Ethernet"; + uses L2VPN-ETHERNET; + } + container vlan { + when "../type = 'l2vpn-intf-type-vlan'" { + description + "../Type = 'L2VPN_INTF_TYPE_VLAN'"; + } + description + "VLAN"; + uses L2VPN-VLAN; + } + container tdm { + when "../type = 'l2vpn-intf-type-cem'" { + description + "../Type = 'L2VPN_INTF_TYPE_CEM'"; + } + description + "TDM"; + uses L2VPN-TDM; + } + container atm { + when "../type = 'l2vpn-intf-type-atm'" { + description + "../Type = 'L2VPN_INTF_TYPE_ATM'"; + } + description + "ATM"; + uses L2VPN-ATM; + } + container fr { + when "../type = 'l2vpn-intf-type-frame-relay'" { + description + "../Type = 'L2VPN_INTF_TYPE_FRAME_RELAY'"; + } + description + "Frame Relay"; + uses L2VPN-FR; + } + container pseudowire-ether { + when "../type = 'l2vpn-intf-type-pw-ether'" { + description + "../Type = 'L2VPN_INTF_TYPE_PW_ETHER'"; + } + description + "PW Ether"; + uses L2VPN-PWHE; + } + container pseudowire-iw { + when "../type = 'l2vpn-intf-type-pw-iw'" { + description + "../Type = 'L2VPN_INTF_TYPE_PW_IW'"; + } + description + "PW IW"; + uses L2VPN-PWHE; + } + leaf type { + type L2vpn-interface; + description + "Type"; + } + } + + grouping L2VPN-INTERFACE { + description + "L2VPN INTERFACE"; + container parameters { + description + "Interface parameters"; + uses L2VPN-INTERFACE-PARAMS; + } + leaf name { + type string { + length "0..81"; + } + description + "Interface name"; + } + leaf mtu { + type uint32; + description + "Interface MTU"; + } + leaf payload-bytes { + type uint16; + units "byte"; + description + "Payload bytes"; + } + } + + grouping L2VPN-AC { + description + "L2VPN AC"; + container interface { + description + "Interface"; + uses L2VPN-INTERFACE; + } + container statistics { + description + "Statistics"; + uses L2FIB-STATS-BAG-FORWARDING; + } + container l2vpn-protection { + description + "Protection object used for this segment"; + uses L2VPN-PROTECTION; + } + leaf state { + type L2vpn-segment-state; + description + "State"; + } + leaf msti { + type string; + description + "MSTi"; + } + leaf internal-ms-ti { + type string; + description + "Internal MSTi"; + } + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + leaf xconnect-id { + type uint32; + description + "XConnect ID"; + } + leaf ms-ti-mismatch { + type boolean; + description + "MSTi mismatch"; + } + leaf mtu-mismatched { + type boolean; + description + "MTU mismatched"; + } + leaf tdm-media-mismatched { + type boolean; + description + "TDM media parms mismatched"; + } + leaf bvi-mac-conflict { + type boolean; + description + "BVI Mac Conflict"; + } + leaf bvi-no-port-up { + type boolean; + description + "BVI no BP Up"; + } + leaf control-word-mismatched { + type boolean; + description + "Control word mismatched"; + } + leaf encapsulation-mismatched { + type boolean; + description + "Encapsulation mismatched"; + } + leaf encapsulation-error { + type string; + description + "Encapsulation Error"; + } + leaf interworking { + type L2vpn-interworking; + description + "Interworking type"; + } + leaf out-of-memory-state { + type uint32; + description + "L2VPN Out of memory state"; + } + leaf msti-mismatch-down { + type boolean; + description + "Oper down due to MSTI mismatch"; + } + leaf mac-limit-oper-down { + type boolean; + description + "Oper down because MAC limit reached"; + } + leaf redundancy-group-id { + type uint32; + description + "Redundancy Group ID"; + } + leaf redundancy-group-state { + type L2vpn-rg-state; + description + "Redundancy Group State"; + } + leaf redundancy-object-id { + type uint64; + description + "Redundancy Object ID"; + } + leaf is-ac-partially-programmed { + type boolean; + description + "Is attachment-circuit partially programmed"; + } + leaf evpn-internal-label { + type uint32; + description + "EVPN Internal Label"; + } + leaf ac-extra-id { + type uint32; + description + "AC Extra ID"; + } + } + + grouping L2VPN-SEGMENT { + description + "L2VPN SEGMENT"; + container attachment-circuit { + when "../segment-type = 'l2vpn-segment-type-ac'" { + description + "../SegmentType = 'L2VPN_SEGMENT_TYPE_AC'"; + } + description + "Attachment Circuit"; + uses L2VPN-AC; + } + container pseudo-wire { + when "../segment-type = 'l2vpn-segment-type-pw'" { + description + "../SegmentType = 'L2VPN_SEGMENT_TYPE_PW'"; + } + description + "Pseudowire"; + uses L2VPN-PW; + } + container vxlan-tunnel { + when "../segment-type = 'l2vpn-segment-type-vxlan-tunnel'" { + description + "../SegmentType = + 'L2VPN_SEGMENT_TYPE_VXLAN_TUNNEL'"; + } + description + "VxLAN Tunnel"; + uses L2VPN-VXLAN-TUNNEL; + } + leaf segment-type { + type L2vpn-segment; + description + "SegmentType"; + } + } + + grouping L2VPN-XC { + description + "L2VPN XC"; + container backup { + description + "LCR backup"; + uses L2VPN-SEGMENT; + } + container segment1 { + description + "Segment 1"; + uses L2VPN-SEGMENT; + } + container segment2 { + description + "Segment 2"; + uses L2VPN-SEGMENT; + } + container ce2ce { + description + "CE2CE"; + uses L2VPN-XC-CE2CE; + } + leaf group-name-xr { + type string; + description + "Group name"; + } + leaf xconnect-name-xr { + type string; + description + "XConnect name"; + } + leaf number-of-backup-p-ws { + type uint32; + description + "Number of backups"; + } + leaf state { + type L2vpn-xc-state; + description + "State of the xconnect"; + } + leaf interworking { + type L2vpn-interworking; + description + "Interworking type"; + } + leaf diag-mask { + type uint32; + description + "Mask indicating what if anything is missing + before the XC can be provisioned"; + } + leaf description { + type string; + description + "P2P Description"; + } + leaf is-mp2mp { + type boolean; + description + "xconnect is mp2mp"; + } + list backup-segment { + max-elements "1"; + description + "Backup Segment"; + uses L2VPN-SEGMENT; + } + } + + grouping L2VPN-RD-V4ADDR { + description + "L2VPN RD V4ADDR"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RD-4BYTE-AS { + description + "L2VPN RD 4BYTE AS"; + leaf four-byte-as { + type uint32; + description + "4 Byte AS Number"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-RD-2BYTE-AS { + description + "L2VPN RD 2BYTE AS"; + leaf two-byte-as { + type uint16; + description + "2 Byte AS Number"; + } + leaf four-byte-index { + type uint32; + description + "4 Byte Index"; + } + } + + grouping L2VPN-RD-AUTO { + description + "L2VPN RD AUTO"; + leaf router-id { + type inet:ipv4-address; + description + "BGP Router ID"; + } + leaf auto-index { + type uint16; + description + "Auto-generated Index"; + } + } + + grouping L2VPN-RD { + description + "L2VPN RD"; + container auto { + when "../rd = 'l2vpn-ad-rd-auto'" { + description + "../RD = 'L2VPN_AD_RD_AUTO'"; + } + description + "auto"; + uses L2VPN-RD-AUTO; + } + container two-byte-as { + when "../rd = 'l2vpn-ad-rd-as'" { + description + "../RD = 'L2VPN_AD_RD_AS'"; + } + description + "two byte as"; + uses L2VPN-RD-2BYTE-AS; + } + container four-byte-as { + when "../rd = 'l2vpn-ad-rd-4byte-as'" { + description + "../RD = 'L2VPN_AD_RD_4BYTE_AS'"; + } + description + "four byte as"; + uses L2VPN-RD-4BYTE-AS; + } + container v4-addr { + when "../rd = 'l2vpn-ad-rd-v4-addr'" { + description + "../RD = 'L2VPN_AD_RD_V4ADDR'"; + } + description + "v4 addr"; + uses L2VPN-RD-V4ADDR; + } + leaf rd { + type L2vpn-ad-rd; + description + "RD"; + } + } + + grouping L2VPN-ATOM-PWR-SUMMARY { + description + "L2VPN ATOM Pseudowire Routing Information Summary"; + container rd-auto { + description + "Automatic Route Distingtuisher"; + uses L2VPN-RD; + } + container rd-configured { + description + "Configured Route Distinguisher"; + uses L2VPN-RD; + } + leaf bgp-router-id { + type inet:ipv4-address; + description + "BGP Router ID"; + } + leaf cfg-router-id { + type inet:ipv4-address; + description + "Configured Router ID"; + } + leaf bgp-as { + type uint32; + description + "BGP AS number"; + } + leaf cfg-global-id { + type uint32; + description + "Configured Global ID"; + } + leaf l2vpn-has-bgp-eod { + type boolean; + description + "L2VPN got BGP EOD"; + } + } + + grouping L2VPN-CAC-PW-INFO { + description + "Pseudowire info"; + leaf pwid { + type uint64; + description + "Pseudowire ID"; + } + leaf pwid-type { + type L2vpn-pw-id; + description + "Type of the Pseudowire"; + } + leaf required-bw { + type uint64; + description + "Required Bandwidth"; + } + leaf allocated-bw { + type uint64; + description + "Allocated Bandwidth"; + } + leaf cac-state { + type L2vpn-pw-cac-state; + description + "CAC State"; + } + } + + grouping L2VPN-CAC-DB { + description + "L2VPN CAC-DB"; + leaf policy-name-xr { + type string; + description + "Policy Name"; + } + leaf total-bandwidth { + type uint64; + description + "Total Bandwidth"; + } + leaf available-bandwidth { + type uint64; + description + "Available Bandwidth"; + } + leaf reserved-bandwidth { + type uint64; + description + "Reserved Bandwidth"; + } + leaf pw-count { + type uint32; + description + "Pseudowire Count"; + } + list pseudowire { + key "pwid"; + description + "Pseudowire info"; + uses L2VPN-CAC-PW-INFO; + } + } + + grouping L2VPN-GLOBALS { + description + "L2VPN GLOBALS"; + leaf pw-grouping-enabled { + type boolean; + description + "PW Grouping enabled"; + } + leaf pw-status-enabled { + type boolean; + description + "PW Status enabled"; + } + leaf logging-pw-enabled { + type boolean; + description + "Logging PW enabled"; + } + leaf logging-bd-enabled { + type boolean; + description + "Logging BD state changes enabled"; + } + leaf logging-vfi-enabled { + type boolean; + description + "Logging VFI state changes enabled"; + } + leaf logging-nsr-enabled { + type boolean; + description + "Logging NSR state changes enabled"; + } + leaf logging-df-election-enabled { + type boolean; + description + "Logging EVPN Designated Forwarder changes + enabled"; + } + leaf tcn-propagation-enabled { + type boolean; + description + "TCN propagation enabled"; + } + leaf pw-oam-refresh-transmit-time { + type uint32; + units "second"; + description + "PW OAM refresh transmit (seconds)"; + } + leaf ha-role { + type string; + description + "Node redundancy role"; + } + leaf issu-role { + type string; + description + "Node ISSU role"; + } + leaf process-fsm { + type string; + description + "Current L2VPN FSM role"; + } + leaf going-active { + type boolean; + description + "transitioning to Active functional role"; + } + } + + grouping VC-INFO { + description + "VC Info"; + leaf peer-id { + type inet:ipv4-address; + description + "PeerID"; + } + leaf source-address { + type inet:ipv4-address; + description + "SourceAddress"; + } + leaf pwid-type { + type L2vpn-pw-id; + description + "pwid type"; + } + leaf pwid { + type uint64; + description + "PWID"; + } + leaf fe-ctype { + type L2vpn-pw-fec; + description + "FECType"; + } + } + + grouping L2VPN-PREFERRED-PATH { + description + "L2VPN PREFRRED PATH"; + leaf type { + type L2vpn-preferred; + description + "Preferred type"; + } + leaf interface-name-xr { + type string { + length "0..65"; + } + description + "Interface name"; + } + leaf total-bandwidth { + type uint32; + description + "TotalBandwidth"; + } + leaf available-bandwidth { + type uint32; + description + "AvailableBandwidth"; + } + leaf reserved-bandwidth { + type uint32; + description + "ReservedBandwidth"; + } + list virtual-circuit { + description + "virtual circuit"; + uses VC-INFO; + } + } + + grouping L2VPN-MGMT-PROC-FSM-REPORT-CARD { + description + "L2VPN Process FSM report card"; + leaf collaborator-is-connected { + type boolean; + description + "Is the collaborator connected"; + } + leaf connection-change-time { + type uint32; + description + "Time when connection state (UP/DOWN) changed"; + } + leaf collaborator-idt-done { + type boolean; + description + "Is IDT done for this collaborator"; + } + leaf idt-time { + type uint32; + description + "Time when IDT was done"; + } + leaf collaborator-skipped { + type boolean; + description + "Was this collaborator skipped for not connecting + in time"; + } + leaf expect-idt { + type boolean; + description + "Does this collaborator expect an IDT"; + } + } + + grouping L2VPN-IDT-STATUS { + description + "IDT status information"; + leaf sync-status { + type L2vpn-sync-status; + description + "Sync status"; + } + leaf not-ready-reason { + type L2vpn-ha-nsr-not-ready-reason; + description + "Not ready reason"; + } + leaf idt-start-time { + type uint32; + units "second"; + description + "IDT start timestamp in seconds"; + } + leaf idt-end-time { + type uint32; + units "second"; + description + "IDT end timestamp in seconds"; + } + leaf declare-time { + type uint32; + units "second"; + description + "Declare ready timestamp in seconds"; + } + leaf withdraw-time { + type uint32; + units "second"; + description + "Withdraw ready timestamp in seconds"; + } + } + + grouping L2VPN-NSR-ISSU-STATUS-INFO { + description + "NSR/ISSU status information"; + container idt-status { + description + "IDT status"; + uses L2VPN-IDT-STATUS; + } + container previ-ous-idt-status { + description + "Previous IDT status"; + uses L2VPN-IDT-STATUS; + } + leaf nsr-role { + type uint8; + description + "NSR role"; + } + leaf issu-role { + type uint8; + description + "ISSU role"; + } + } + + grouping L2VPN-FAILOVER-STATUS { + description + "L2VPN failover status"; + leaf triggered-time { + type uint32; + description + "Triggered time"; + } + leaf start-time { + type uint32; + description + "Start time"; + } + leaf master-time { + type uint32; + description + "Master time"; + } + } + + grouping L2VPN-MGMT-PROC-FSM-XID-INFO { + description + "L2VPN MGMT PROC FSM XID INFO"; + leaf app-type { + type L2vpn-id-mgr-app-bag; + description + "App type"; + } + leaf sent-ids { + type uint32; + description + "Number of XIDs transferred"; + } + } + + grouping L2VPN-MGMT-PROC-FSM { + description + "L2VPN Process FSM Information"; + container failover-status { + description + "L2VPN failover status"; + uses L2VPN-FAILOVER-STATUS; + } + container nsr-status { + description + "L2VPN NSR status and timestamp"; + uses L2VPN-NSR-ISSU-STATUS-INFO; + } + container issu-status { + description + "L2VPN ISSU Status and timestamp"; + uses L2VPN-NSR-ISSU-STATUS-INFO; + } + leaf ha-role { + type uint8; + description + "Current HA Role"; + } + leaf issu-role { + type uint8; + description + "Current ISSU Role"; + } + leaf sync-flags { + type uint32; + description + "Sync complete flags"; + } + leaf sw-install-in-progress { + type boolean; + description + "Is s/w install currently in progress?"; + } + list xid-info { + description + "XID information"; + uses L2VPN-MGMT-PROC-FSM-XID-INFO; + } + list report-card { + description + "L2VPN Collaborator report card"; + uses L2VPN-MGMT-PROC-FSM-REPORT-CARD; + } + } + + grouping L2VPN-BRIDGE-SUMMARY { + description + "L2VPN BRIDGE SUMMARY"; + leaf number-groups { + type uint32; + description + "Number of groups"; + } + leaf number-vlan-switches { + type uint32; + description + "Number of VLAN Switches"; + } + leaf number-bridge-domains { + type uint32; + description + "Number of bridge-domains"; + } + leaf number-bridge-domains-up { + type uint32; + description + "Number of bridge-domains up"; + } + leaf number-bridge-domains-shut { + type uint32; + description + "Number of bridge-domains admin disabled"; + } + leaf number-default-bridge-doamins { + type uint32; + description + "Number of default bridge-domains"; + } + leaf number-pbb-edge { + type uint32; + description + "Number of PBB Edge"; + } + leaf number-pbb-core { + type uint32; + description + "Number of PBB Core"; + } + leaf number-p2mp { + type uint32; + description + "Number of P2MPs"; + } + leaf number-p2mp-up { + type uint32; + description + "Number of P2MPs whose state is up"; + } + leaf number-p2mp-down { + type uint32; + description + "Number of P2MPs whose state is down"; + } + leaf number-a-cs { + type uint32; + description + "Number of attachment circuits"; + } + leaf number-a-cs-up { + type uint32; + description + "Number of attachment circuits whose state is up"; + } + leaf number-a-cs-down { + type uint32; + description + "Number of attachment circuits whose state is + down"; + } + leaf number-pseudowires { + type uint32; + description + "Number of pseudowires"; + } + leaf number-p-ws-up { + type uint32; + description + "Number of pseudowires whose state is up"; + } + leaf number-p-ws-down { + type uint32; + description + "Number of pseudowires whose state is down"; + } + leaf standby-pseudowires { + type uint32; + description + "Number of pseudowires whose state is standby"; + } + leaf num-vn-is { + type uint32; + description + "Number of VNIs"; + } + leaf num-vn-is-up { + type uint32; + description + "Number of VNIs up"; + } + leaf num-vn-is-down { + type uint32; + description + "Number of VNIs down"; + } + leaf num-vn-is-unresolved { + type uint32; + description + "Number of VNIs unresolved"; + } + leaf out-of-memory-state { + type uint32; + description + "L2VPN Out of memory state"; + } + leaf partially-programmed-bridges { + type uint32; + description + "Number of partially programmed bridge-domains"; + } + leaf partially-programmed-pseudowires { + type uint32; + description + "Number of partially programmed pseudowires"; + } + leaf partially-programmed-a-cs { + type uint32; + description + "Number of partially programmed attachment + circuits"; + } + } + + grouping ICCP-SM-PORT-INFO { + description + "ICCP-based service multi-homing port information"; + leaf port-state { + type Iccp-sm-port-state; + description + "Port state"; + } + leaf port-fail-code { + type uint8; + description + "Port fail code"; + } + leaf fsm-state { + type uint8; + description + "FSM state"; + } + leaf vlan-state { + type uint8; + description + "VLAN state"; + } + leaf vlan-vector { + type yang:hex-string; + description + "VLAN Vector. VLANList::= + FivePackedVLANRoleVectorByte { + ,FivePackedVLANRoleVectorByte}. + FivePackedVLANRoleVectorByte = + (((3*firstVLANRole + secondVLANRole)*3 + + thirdVLANRole)*3 + fourthVLAN Role)*3 + + fifthVLANRole. Role::= Primary | Secondary | + NotConfigured. NotConfigured::= 0. Primary::= 1. + Secondary::= 2"; + } + leaf reversion-time { + type uint32; + description + "Reversion Time"; + } + leaf reversion-time-remaining { + type uint32; + description + "Reversion Time Remaining"; + } + } + + grouping ICCP-SM-PORT { + description + "ICCP-based service multi-homing port"; + container local-port { + description + "Local port info"; + uses ICCP-SM-PORT-INFO; + } + container remote-port { + description + "Remote port info"; + uses ICCP-SM-PORT-INFO; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + leaf mac-flush-tcn { + type boolean; + description + "Is MAC flush through STP-TCN?"; + } + } + + grouping ICCP-SM-GROUP { + description + "ICCP-based service multi-homing group"; + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf local-node-id { + type uint8; + description + "Local Node ID"; + } + leaf remote-node-id { + type uint8; + description + "Remote Node ID"; + } + leaf state { + type Iccp-sm-state; + description + "State"; + } + leaf iccp-transport-up { + type boolean; + description + "ICCP Transport Up"; + } + leaf iccp-member-up { + type boolean; + description + "ICCP Member Up"; + } + list ports { + description + "List of ports in the group"; + uses ICCP-SM-PORT; + } + } + + grouping ICCP-SM-SUMMARY { + description + "ICCP-based service multi-homing group summary + information"; + leaf groups { + type uint32; + description + "Total Number of Groups"; + } + leaf unresolved-groups { + type uint32; + description + "Number of Unresolved Groups"; + } + leaf provisioned-groups { + type uint32; + description + "Number of Provisioned Groups"; + } + leaf connecting-groups { + type uint32; + description + "Number of Connecting Groups"; + } + leaf connected-groups { + type uint32; + description + "Number of Connected Groups"; + } + leaf synchronizing-groups { + type uint32; + description + "Number of Synchronizing Groups"; + } + leaf synchronized-groups { + type uint32; + description + "Number of Synchronized Groups"; + } + leaf ports { + type uint32; + description + "Total Number of Ports"; + } + leaf operational-ports { + type uint32; + description + "Number of Operational Ports"; + } + leaf failed-ports { + type uint32; + description + "Number of Failed Ports"; + } + leaf unknown-ports { + type uint32; + description + "Number of Unknown Ports"; + } + leaf unconfigured-ports { + type uint32; + description + "Number of Unconfigured Ports"; + } + leaf unsynchronized-ports { + type uint32; + description + "Number of Unsynchronized Ports"; + } + leaf reverting-ports { + type uint32; + description + "Number of Reverting Ports"; + } + } + + grouping L2VPN-MAIN-INTERFACE { + description + "L2VPN MAIN INTERFACE PORT"; + leaf main-interface-handle { + type xr:Interface-name; + description + "Main Interface"; + } + leaf is-protected { + type boolean; + description + "IsProtected"; + } + leaf interface-count { + type uint32; + description + "Sub Interface Count"; + } + leaf protect-type { + type L2vpn-main-if-protect; + description + "Protect Type"; + } + } + + grouping L2VPN-MAIN-INTERFACE-INSTANCE-BPORT { + description + "Bridge port of an instance"; + leaf bridge-port-xr { + type xr:Interface-name; + description + "Bridge port ifhandle"; + } + leaf instance-id { + type uint32; + description + "Instance ID"; + } + } + + grouping L2VPN-MAIN-INTERFACE-INSTANCE { + description + "L2VPN MAIN INTERFACE INSTANCE Entry"; + leaf configured-instance { + type uint32; + description + "Configured Instance"; + } + leaf flush-count { + type uint32; + description + "Flush count "; + } + leaf interface-count { + type uint32; + description + "Interface count"; + } + leaf instance-flags { + type uint32; + description + "Instance Flags"; + } + leaf instance-id { + type uint32; + description + "Instance ID"; + } + leaf instance-state { + type L2vpn-main-if-instance-state; + description + "Instance State"; + } + } + + grouping L2VPN-FXC-SUMMARY { + description + "L2VPN FXC SUMMARY"; + leaf number-fxc { + type uint32; + description + "Number of flexible xconnect services"; + } + leaf number-fxc-up { + type uint32; + description + "Number of flexible xconnect services whose state + is up"; + } + leaf number-fxc-down { + type uint32; + description + "Number of flexible xconnect services whose state + is down"; + } + } + + grouping L2VPN-NLRI-LDP-SIG { + description + "L2VPN NLRI LDP SIG"; + leaf nlri-time-created { + type uint32; + description + "NLRI creation time"; + } + leaf local-address { + type inet:ipv4-address; + description + "Local BGP Address"; + } + leaf remote-address { + type inet:ipv4-address; + description + "Remote BGP Address"; + } + leaf remote-l2-router-id { + type inet:ipv4-address; + description + "Remote L2VPN Router ID"; + } + } + + grouping L2VPN-VPLS-ID-V4ADDR { + description + "L2VPN VPLS ID V4ADDR"; + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf two-byte-index { + type uint16; + description + "2 Byte Index"; + } + } + + grouping L2VPN-VPLS-ID-2BYTE-AS { + description + "L2VPN VPLS ID 2BYTE AS"; + leaf two-byte-as { + type uint16; + description + "2 Byte AS Number"; + } + leaf four-byte-index { + type uint32; + description + "4 Byte Index"; + } + } + + grouping L2VPN-VPLS-ID-AUTO { + description + "L2VPN VPLS ID AUTO"; + leaf asn { + type uint16; + description + "2 Byte AS Number"; + } + leaf vpn-id { + type uint32; + description + "VPN ID"; + } + } + + grouping L2VPN-VPLS-ID { + description + "L2VPN VPLS ID"; + container auto { + when "../vpls-id-type = 'l2vpn-ad-vpls-id-auto'" { + description + "../VPLS_ID_TYPE = 'L2VPN_AD_VPLS_ID_AUTO'"; + } + description + "auto"; + uses L2VPN-VPLS-ID-AUTO; + } + container two-byte-as { + when "../vpls-id-type = 'l2vpn-ad-vpls-id-as'" { + description + "../VPLS_ID_TYPE = 'L2VPN_AD_VPLS_ID_AS'"; + } + description + "two byte as"; + uses L2VPN-VPLS-ID-2BYTE-AS; + } + container v4-addr { + when "../vpls-id-type = 'l2vpn-ad-vpls-id-v4-addr'" { + description + "../VPLS_ID_TYPE = 'L2VPN_AD_VPLS_ID_V4ADDR'"; + } + description + "v4 addr"; + uses L2VPN-VPLS-ID-V4ADDR; + } + leaf vpls-id-type { + type L2vpn-ad-vpls-id; + description + "VPLS ID TYPE"; + } + } + + grouping L2VPN-DISCO-LDP-SIG { + description + "L2VPN DISCO LDP SIG"; + container local-vpls-id { + description + "Local VPLS-ID"; + uses L2VPN-VPLS-ID; + } + leaf local-l2-router-id { + type inet:ipv4-address; + description + "Local L2VPN Router ID"; + } + leaf number-remote-edges { + type uint32; + description + "Number of remote Edges"; + } + list remote-nlri { + description + "List of NLRIs"; + uses L2VPN-NLRI-LDP-SIG; + } + } + + grouping L2VPN-LABEL-BLOCK { + description + "L2VPN LABEL BLOCK"; + leaf label-time-created { + type uint32; + description + "Creation time"; + } + leaf label-base { + type uint32; + description + "Label Base"; + } + leaf block-offset { + type uint32; + description + "Block offset"; + } + leaf block-size { + type uint32; + description + "Block size"; + } + leaf local-edge-id { + type uint32; + description + "Local edge ID"; + } + leaf next-hop { + type inet:ipv4-address; + description + " Peer id"; + } + leaf label-error { + type L2vpn-ad-lsd-err; + description + "Label Error"; + } + leaf-list status-vector { + type uint8; + description + "Status Vector"; + } + } + + grouping L2VPN-DISCO-EDGE { + description + "L2VPN DISCO EDGE"; + leaf edge-id { + type uint32; + description + "Edge ids"; + } + leaf label-count { + type uint32; + description + "Number of label blocks"; + } + list label-block { + description + "List of label blocks"; + uses L2VPN-LABEL-BLOCK; + } + } + + grouping L2VPN-DISCO-BGP-SIG { + description + "L2VPN DISCO BGP SIG"; + leaf number-edges { + type uint32; + description + "Number of Edges"; + } + leaf number-remote-edges { + type uint32; + description + "Number of remote Edges"; + } + list edge { + description + "List of edge ids"; + uses L2VPN-DISCO-EDGE; + } + list redge { + description + "List of edge ids"; + uses L2VPN-DISCO-EDGE; + } + } + + grouping L2VPN-DISCO-SIG-INFO { + description + "L2VPN DISCO SIG INFO"; + container bgp-sig-info { + when "../ad-signalling-method = 'l2vpn-ad-sig-method-bgp'" { + description + "../ADSignallingMethod = + 'L2VPN_AD_SIG_METHOD_BGP'"; + } + description + "bgp sig info"; + uses L2VPN-DISCO-BGP-SIG; + } + container ldp-sig-info { + when "../ad-signalling-method = 'l2vpn-ad-sig-method-ldp'" { + description + "../ADSignallingMethod = + 'L2VPN_AD_SIG_METHOD_LDP'"; + } + description + "ldp sig info"; + uses L2VPN-DISCO-LDP-SIG; + } + leaf ad-signalling-method { + type L2vpn-ad-sig-method; + description + "ADSignallingMethod"; + } + } + + grouping L2VPN-DISCO { + description + "L2VPN DISCO"; + container signalling-info { + description + "Info about signalling protocol"; + uses L2VPN-DISCO-SIG-INFO; + } + leaf mtu-mismatch-ignore { + type boolean; + description + "Ignore MTU Mismatch"; + } + leaf number-vpn { + type uint32; + description + "Number of vpns"; + } + leaf vpn-id { + type uint32; + description + "VPN id"; + } + leaf service-name-xr { + type string; + description + "Service Type"; + } + leaf group-name-xr { + type string; + description + "Group name"; + } + leaf vpn-name-xr { + type string; + description + "VPN instance name"; + } + leaf is-service-connected { + type boolean; + description + "Is the service connected"; + } + } + + grouping L2VPN-EVPN-REMOTE-SHG-INFO { + description + "L2VPN EVPN remote split horizon group labels"; + leaf next-hop { + type inet:ipv6-address; + description + "Next-hop IP address (v6 format)"; + } + leaf label { + type uint32; + description + "Split horizon label associated with next-hop + address"; + } + leaf srv6-esi-id { + type uint32; + description + "ESI ID for SRv6 encapsulation"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub5.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub5.yang new file mode 100644 index 000000000..8c01c0d4e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper-sub5.yang @@ -0,0 +1,5700 @@ +submodule Cisco-IOS-XR-l2vpn-oper-sub5 { + belongs-to Cisco-IOS-XR-l2vpn-oper { + prefix Cisco-IOS-XR-l2vpn-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-l2vpn-oper-sub3 { + revision-date 2023-02-10; + } + include Cisco-IOS-XR-l2vpn-oper-sub4 { + revision-date 2023-02-10; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR l2vpn package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-10 { + description + "- Add more states to l2fib-evpn-ip4mac and l2fib-evpn-ip6mac, remove arp-nd-delete-pending. + 2022-09-28 + - Added Global ID for PWHE IDBs. + 2022-09-14 + - Added evpn-esi-id for bridge port. + 2022-09-12 + - Added Attachment-Circuit to IP Tunnel cross-connect type. + 2022-09-07 + - Added IPv6 fields to VNI info - Added EVPN Peer ES down - Added internal-id to EVPN MOI context + 2022-09-01 + - Added internal-id to pseudowire-headend detail-interface IosSetYangSchemaRev Cisco-IOS-XR-l2vpn-oper + 2022-08-30 + - l2fib-summary: Added VXLAN nexthop information + 2022-08-09 + - Added L2VPN-VXLAN-TUNNEL grouping. - Added vxlan-tunnel container to L2VPN-SEGMENT grouping. + 2022-08-08 + - Added ESI ID for used in ESI filtering + 2022-07-06 + - Added new ID MGR App type for Auto RD per EVI + 2022-06-24 + - Update format of l2fib-message-summary + 2022-06-06 + - l2fib-evpn-incl-mcast-ole: Removed SRv6 SID format and added VNI ID to naming + 2022-05-30 + - Added a new leaf mac-limit-enabled to L2VPN-BRIDGE-SEC-PARAM. + 2022-05-26 + Refactored ES Service Carving Arrays + 2022-05-03 + - Added mac-limit-enabled - Removed duplicate fields + 2022-04-14 + - Add new APP type in IDMGR + 2022-03-21 + - Removed legacy and override ESI types + 2022-03-14 + - Added new members to main-interface-info protect-type + 2022-03-09 + - l2fib-mroute-port: Added hardware-information leaf. + 2022-03-08 + - Add EVPN unicast-label and multicast-label. + 2022-02-24 + - l2fib-mroute-port: Added pin-down-interface-name leaf. + 2022-02-09 + - Added l2fib-l3-sync-interfaces - Update keys of l2fib-mroute-port - Add l2fib-evpn-etree-remote - Update keys of l2fib-evpn-incl-mcast-ole - Add l2fib-mroute-ipv6-summary - Only expose valid keys and members of l2fib-mac-learning-mac, l2fib-mac-learning-mac-ipv4, and l2fib-mac-learning-mac-ipv6"; + semver:module-version "6.0.0"; + } + revision 2021-09-07 { + description + "- Added SRv6 nhop + 2021-08-24 + Updated l2vpn forwarding adjacencies to expose both interface and address information. + 2021-08-13 + - Changed flag-extension to 32bit + 2021-07-20 + - Added support for MAC is-cfm flag"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-04-28 { + description + "- AC Backup related changes + 2020-01-22 + - PWGROUP related changes + 2019-12-20 + - EVPN-VPWS related changes - SR-TE policy related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-03-30 { + description + "- Rename l2fib-mac-learning-mac* interface-handle to interface-name - Rename l2fib-pw-group tunnel-if-handle to tunnel-interface-name - Convert several array from leaf-list to list syntax. - Implement range datatypes for all L2FIB integers."; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2fib-g8032-aps-port-status { + type enumeration { + enum "l2fib-aps-port-state-unknown" { + description + "APS port state unknown"; + } + enum "l2fib-aps-port-state-unbound" { + description + "APS port state unbound"; + } + enum "l2fib-aps-port-state-bound" { + description + "APS port state bound"; + } + } + description + "APS port status"; + } + + typedef L2fib-g8032-rpl { + type enumeration { + enum "rpl-unknown" { + description + "No RPL info"; + } + enum "port0-owner" { + description + "Port 0 owner"; + } + enum "port0-neighbor" { + description + "Port 0 neighbor"; + } + enum "port0-next-neighbor" { + description + "Port 0 next neighbor"; + } + enum "port1-owner" { + description + "Port 1 owner"; + } + enum "port1-neighbor" { + description + "Port 1 neighbor"; + } + enum "port1-next-neighbor" { + description + "Port 1 next neighbor"; + } + } + description + "RPL types in g8032 ring"; + } + + typedef L2fib-l2tp-session { + type enumeration { + enum "l2tpv3" { + description + "L2TPv3 session"; + } + enum "l2tpv2" { + description + "L2TPv2 session"; + } + } + description + "L2TPv2 and L2TPv3 session type"; + } + + typedef L2fib-evpn-sc-mcast-mode { + type enumeration { + enum "disabled" { + description + "multicast service carving is disabled"; + } + enum "hrw-s-g" { + description + "Multicast HRW S,G"; + } + enum "hrw-g" { + description + "Multicast HRW *,G"; + } + } + description + "L2FIB EVPN Ethernet-Segment service multicast + carving mode"; + } + + typedef L2fib-main-if-instance-state { + type enumeration { + enum "forwarding" { + description + "Forwarding state"; + } + enum "blocked" { + description + "Blocked state"; + } + enum "mac-learning" { + description + "Mac learning state"; + } + enum "nack" { + description + "Nack state"; + } + enum "forwarning-not-useful" { + description + "Forwarding not useful state"; + } + enum "blocked-not-useful" { + description + "Blocked not useful state"; + } + enum "mac-learning-not-useful" { + description + "Mac Learning not useful state"; + } + enum "blocked-data-only" { + description + "Blocked data only state"; + } + enum "multicast-pe2ce-blocked" { + description + "Multicast PE to CE blocked state"; + } + enum "multicast-blocked" { + description + "Multicast blocked state"; + } + enum "port-state-unknown" { + description + "Port state unknown"; + } + } + description + "State of a main port instance"; + } + + typedef L2vpn-evpn-moi { + type enumeration { + enum "l2vpn-evpn-moi-ipv4-nh-lbl" { + description + "l2vpn evpn moi ipv4 nh lbl"; + } + enum "l2vpn-evpn-moi-srte-ifh" { + description + "l2vpn evpn moi srte ifh"; + } + enum "l2vpn-evpn-moi-srte-bsid" { + description + "l2vpn evpn moi srte bsid"; + } + enum "l2vpn-evpn-moi-srte-bsid-v6" { + description + "l2vpn evpn moi srte bsid v6"; + } + enum "l2vpn-evpn-moi-srv6" { + description + "l2vpn evpn moi srv6"; + } + enum "l2vpn-evpn-moi-iid" { + description + "l2vpn evpn moi iid"; + } + } + description + "EVPN MCAST OLE MOI type"; + } + + typedef Mgmt-l2fib-bridge-mac-evpn-ctx { + type enumeration { + enum "mgmt-l2fib-bridge-mac-evpn-ctx-none" { + description + "mgmt l2fib bridge mac evpn ctx none"; + } + enum "mgmt-l2fib-bridge-mac-evpn-ctx-esi-id" { + description + "mgmt l2fib bridge mac evpn ctx esi id"; + } + enum "mgmt-l2fib-bridge-mac-evpn-ctx-local-label" { + description + "mgmt l2fib bridge mac evpn ctx local label"; + } + enum "mgmt-l2fib-bridge-mac-evpn-ctx-moi" { + description + "mgmt l2fib bridge mac evpn ctx moi"; + } + enum "mgmt-l2fib-bridge-mac-evpn-ctx-bp-ifh" { + description + "mgmt l2fib bridge mac evpn ctx bp ifh"; + } + enum "mgmt-l2fib-bridge-mac-evpn-ctx-internal-id" { + description + "mgmt l2fib bridge mac evpn ctx internal id"; + } + } + description + "Mgmt l2fib bridge mac evpn ctx"; + } + + typedef L2fib-ip-addr { + type enumeration { + enum "ip-none" { + value 0; + description + "ip none"; + } + enum "v4" { + value 4; + description + "v4"; + } + enum "v6" { + value 6; + description + "v6"; + } + } + description + "L2fib ip addr"; + } + + typedef Mgmt-l2fib-stats-data { + type enumeration { + enum "mgmt-l2fib-stats-type-unknown" { + description + "mgmt l2fib stats type unknown"; + } + enum "mgmt-l2fib-stats-type-mcast" { + description + "mgmt l2fib stats type mcast"; + } + } + description + "Mgmt l2fib stats data"; + } + + typedef L2fib-prefix-proto-info { + type enumeration { + enum "l2fib-ipv4-proto" { + description + "l2fib ipv4 proto"; + } + enum "l2fib-ipv6-proto" { + description + "l2fib ipv6 proto"; + } + enum "l2fib-mac-proto" { + description + "l2fib mac proto"; + } + } + description + "L2fib Prefix proto"; + } + + typedef L2vpn-ptree { + type enumeration { + enum "none" { + value 0; + description + "No ptree type"; + } + enum "rsvp-te" { + value 1; + description + "RSVP_TE ptree type"; + } + enum "mldp" { + value 2; + description + "MLDP ptree type"; + } + } + description + "ptree type"; + } + + typedef L2fib-feature { + type enumeration { + enum "l2fib-feature-dhcp-snooping" { + description + "l2fib feature dhcp snooping"; + } + enum "l2fib-feature-igmp-snooping" { + description + "l2fib feature igmp snooping"; + } + enum "l2fib-feature-mld-snooping" { + description + "l2fib feature mld snooping"; + } + enum "l2fib-feature-max" { + description + "l2fib feature max"; + } + } + description + "L2fib feature"; + } + + typedef L2fib-storm-control-rate-unit { + type enumeration { + enum "pps" { + description + "Packets Per Second"; + } + enum "kb-ps" { + description + "Kilobits Per Second"; + } + } + description + "Storm Control Rate Unit Type"; + } + + typedef Mgmt-l2fib-mac-aging { + type enumeration { + enum "mgmt-l2fib-mac-aging-type-in-activity" { + description + "mgmt l2fib mac aging type in activity"; + } + enum "mgmt-l2fib-mac-aging-type-absolute" { + description + "mgmt l2fib mac aging type absolute"; + } + } + description + "Mgmt l2fib mac aging"; + } + + typedef Mgmt-l2fib-mac-sec-action { + type enumeration { + enum "not-set" { + value 0; + description + "MAC Secure Action Not Set"; + } + enum "restrict" { + value 1; + description + "MAC Secure Action Restrict"; + } + enum "none" { + value 2; + description + "MAC Secure Action None"; + } + enum "shutdown" { + value 3; + description + "MAC Secure Action Shutdown"; + } + } + description + "Mgmt l2fib mac sec action"; + } + + typedef Mgmt-l2fib-mac-limit-notify { + type enumeration { + enum "mgmt-l2fib-mac-limit-notify-none" { + description + "mgmt l2fib mac limit notify none"; + } + enum "mgmt-l2fib-mac-limit-notify-syslog" { + description + "mgmt l2fib mac limit notify syslog"; + } + enum "mgmt-l2fib-mac-limit-notify-trap" { + description + "mgmt l2fib mac limit notify trap"; + } + enum "mgmt-l2fib-mac-limit-notify-both" { + description + "mgmt l2fib mac limit notify both"; + } + } + description + "Mgmt l2fib mac limit notify"; + } + + typedef Mgmt-l2fib-mac-limit-action { + type enumeration { + enum "mgmt-l2fib-mac-limit-action-type-none" { + description + "mgmt l2fib mac limit action type none"; + } + enum "mgmt-l2fib-mac-limit-action-type-flood" { + description + "mgmt l2fib mac limit action type flood"; + } + enum "mgmt-l2fib-mac-limit-action-type-no-flood" { + description + "mgmt l2fib mac limit action type no flood"; + } + enum "mgmt-l2fib-mac-limit-action-type-shutdown" { + description + "mgmt l2fib mac limit action type shutdown"; + } + } + description + "Mgmt l2fib mac limit action"; + } + + typedef L2fib-load-bal { + type enumeration { + enum "flow-undef" { + description + "Load Balance Flow Undefined"; + } + enum "src-dst-mac" { + description + "Load Balance Flow src-dst-mac"; + } + enum "src-dst-ip" { + description + "Load Balance Flow src-dst-ip"; + } + enum "vc" { + description + "Load Balance VC based"; + } + } + description + "L2fib load bal"; + } + + typedef L2fib-group-state { + type enumeration { + enum "up" { + description + "Group State Up"; + } + enum "down" { + description + "Group State Down"; + } + } + description + "group state"; + } + + typedef L2fib-pw-redundancy-role { + type enumeration { + enum "primary" { + description + "Primary pseudowire"; + } + enum "backup" { + description + "Backup pseudowire"; + } + } + description + "Pseudowire redundancy role"; + } + + typedef L2fib-pw-id { + type enumeration { + enum "default" { + value 0; + description + "Default value - not set"; + } + enum "manual" { + value 1; + description + "Manual pseudowire ID"; + } + enum "vpls" { + value 2; + description + "VPLS pseudowire ID"; + } + enum "vpws" { + value 3; + description + "VPWS pseudowire ID"; + } + enum "vpls-ldp" { + value 4; + description + "VPLS with LDP signaling pseudowire ID"; + } + enum "l2fib-pw-id-type-pwr" { + value 5; + description + "PW-routing ID"; + } + enum "l2fib-pw-id-type-evpn" { + value 6; + description + "EVPN pseudowire ID"; + } + } + description + "Pseudowire ID type"; + } + + typedef Mgmt-l2fib-bridge { + type enumeration { + enum "mgmt-l2fib-bridge-type-default" { + value 0; + description + "mgmt l2fib bridge type default"; + } + enum "mgmt-l2fib-bridge-type-pbb-edge" { + value 1; + description + "mgmt l2fib bridge type pbb edge"; + } + enum "mgmt-l2fib-bridge-type-pbb-core" { + value 2; + description + "mgmt l2fib bridge type pbb core"; + } + enum "mgmt-l2fib-bridge-type-l3-sync" { + value 3; + description + "mgmt l2fib bridge type l3 sync"; + } + } + description + "Mgmt l2fib bridge"; + } + + typedef L2fib-nhop { + type enumeration { + enum "nexthop-unknown" { + description + "No Nexthop type"; + } + enum "nexthop-ipv4" { + description + "IPv4 Nexthop type"; + } + enum "nexthop-lsm-id" { + description + "LSM ID Nexthop type"; + } + enum "nexthop-te-tunnel" { + description + "TE Tunnel Nexthop type"; + } + enum "nexthop-mpls-internal-label" { + description + "MPLS Internal-Label Nexthop type"; + } + enum "nexthop-vx-lan-internal-label" { + description + "Vxlan Internal-Label Nexthop type"; + } + enum "nexthop-ipv6" { + description + "IPv6 Nexthop type"; + } + enum "nexthop-sr-te-bsid" { + description + "SR-TE BindingSID Nexthop type"; + } + enum "nexthop-iid" { + description + "Internal-ID Nexthop type"; + } + enum "nexthop-per-ipv4-interface-list" { + description + "IP IFList Nexthop type"; + } + enum "nexthop-per-te-tunnel-interface-list" { + description + "IFHandle IFList Nexthop type"; + } + } + description + "Nexthop Type"; + } + + typedef Mgmt-l2fib-data { + type enumeration { + enum "mgmt-l2fib-data-type-min" { + value 0; + description + "mgmt l2fib data type min"; + } + enum "mgmt-l2fib-data-type-all" { + value 1; + description + "mgmt l2fib data type all"; + } + enum "mgmt-l2fib-data-type-xcon" { + value 2; + description + "mgmt l2fib data type xcon"; + } + enum "mgmt-l2fib-data-type-ac" { + value 3; + description + "mgmt l2fib data type ac"; + } + enum "mgmt-l2fib-data-type-atom" { + value 4; + description + "mgmt l2fib data type atom"; + } + enum "mgmt-l2fib-data-type-pbb" { + value 5; + description + "mgmt l2fib data type pbb"; + } + enum "mgmt-l2fib-data-type-vni" { + value 6; + description + "mgmt l2fib data type vni"; + } + enum "mgmt-l2fib-data-type-n-hop" { + value 7; + description + "mgmt l2fib data type n hop"; + } + enum "mgmt-l2fib-data-type-l2tp" { + value 8; + description + "mgmt l2fib data type l2tp"; + } + enum "mgmt-l2fib-data-type-l2tp-session" { + value 9; + description + "mgmt l2fib data type l2tp session"; + } + enum "mgmt-l2fib-data-type-bridge" { + value 10; + description + "mgmt l2fib data type bridge"; + } + enum "mgmt-l2fib-data-type-bridge-shg" { + value 11; + description + "mgmt l2fib data type bridge shg"; + } + enum "mgmt-l2fib-data-type-bridge-port" { + value 12; + description + "mgmt l2fib data type bridge port"; + } + enum "mgmt-l2fib-data-type-bridge-mac" { + value 13; + description + "mgmt l2fib data type bridge mac"; + } + enum "mgmt-l2fib-data-type-msti-main-port" { + value 14; + description + "mgmt l2fib data type msti main port"; + } + enum "mgmt-l2fib-data-type-bridge-main-port" { + value 15; + description + "mgmt l2fib data type bridge main port"; + } + enum "mgmt-l2fib-data-type-mcast-table" { + value 16; + description + "mgmt l2fib data type mcast table"; + } + enum "mgmt-l2fib-data-type-mcast-leaf" { + value 17; + description + "mgmt l2fib data type mcast leaf"; + } + enum "mgmt-l2fib-data-type-mcast-xid" { + value 18; + description + "mgmt l2fib data type mcast xid"; + } + enum "mgmt-l2fib-data-type-pbb-bmac-sa" { + value 19; + description + "mgmt l2fib data type pbb bmac sa"; + } + enum "mgmt-l2fib-data-type-dhcp" { + value 20; + description + "mgmt l2fib data type dhcp"; + } + enum "mgmt-l2fib-data-type-mcast-xid-list" { + value 21; + description + "mgmt l2fib data type mcast xid list"; + } + enum "mgmt-l2fib-data-type-span" { + value 22; + description + "mgmt l2fib data type span"; + } + enum "mgmt-l2fib-data-type-g8032-ring" { + value 23; + description + "mgmt l2fib data type g8032 ring"; + } + enum "mgmt-l2fib-data-type-g8032-ring-inst" { + value 24; + description + "mgmt l2fib data type g8032 ring inst"; + } + enum "mgmt-l2fib-data-type-global" { + value 25; + description + "mgmt l2fib data type global"; + } + enum "mgmt-l2fib-data-type-evpn-mcast-leaf" { + value 26; + description + "mgmt l2fib data type evpn mcast leaf"; + } + enum "mgmt-l2fib-data-type-evpn-mcast-ole" { + value 27; + description + "mgmt l2fib data type evpn mcast ole"; + } + enum "mgmt-l2fib-data-type-pwhe-mp" { + value 28; + description + "mgmt l2fib data type pwhe mp"; + } + enum "mgmt-l2fib-data-type-p2mp-p-tree" { + value 29; + description + "mgmt l2fib data type p2mp p tree"; + } + enum "mgmt-l2fib-data-type-pw-group" { + value 30; + description + "mgmt l2fib data type pw group"; + } + enum "mgmt-l2fib-data-type-p2mp-p-tree-label" { + value 31; + description + "mgmt l2fib data type p2mp p tree label"; + } + enum "mgmt-l2fib-data-type-evpn" { + value 32; + description + "mgmt l2fib data type evpn"; + } + enum "mgmt-l2fib-data-type-mac-mgr-db" { + value 33; + description + "mgmt l2fib data type mac mgr db"; + } + enum "mgmt-l2fib-data-type-mac-mgr-e" { + value 34; + description + "mgmt l2fib data type mac mgr e"; + } + enum "mgmt-l2fib-data-type-evpn-shg" { + value 35; + description + "mgmt l2fib data type evpn shg"; + } + enum "mgmt-l2fib-data-type-evpn-ip4mac" { + value 36; + description + "mgmt l2fib data type evpn ip4mac"; + } + enum "mgmt-l2fib-data-type-evpn-ip6mac" { + value 37; + description + "mgmt l2fib data type evpn ip6mac"; + } + enum "mgmt-l2fib-data-type-collaborator" { + value 38; + description + "mgmt l2fib data type collaborator"; + } + enum "mgmt-l2fib-data-type-l2rib-cache" { + value 39; + description + "mgmt l2fib data type l2rib cache"; + } + enum "mgmt-l2fib-data-type-batch-ing" { + value 40; + description + "mgmt l2fib data type batch ing"; + } + enum "mgmt-l2fib-data-type-l3-sync-intf" { + value 41; + description + "mgmt l2fib data type l3 sync intf"; + } + enum "mgmt-l2fib-data-type-msti-main-port-mac-flood-end" { + value 42; + description + "mgmt l2fib data type msti main port mac flood + end"; + } + enum "mgmt-l2fib-data-type-ac-backup" { + value 43; + description + "mgmt l2fib data type ac backup"; + } + enum "mgmt-l2fib-data-type-notif-batch" { + value 44; + description + "mgmt l2fib data type notif batch"; + } + enum "mgmt-l2fib-data-type-invalid" { + value 45; + description + "mgmt l2fib data type invalid"; + } + enum "mgmt-l2fib-data-type-l2tpv2" { + value 1000; + description + "mgmt l2fib data type l2tpv2"; + } + enum "mgmt-l2fib-data-type-l2tp-ipv6-ts" { + value 1001; + description + "mgmt l2fib data type l2tp ipv6 ts"; + } + enum "mgmt-l2fib-data-type-fxs" { + value 1002; + description + "mgmt l2fib data type fxs"; + } + } + description + "Mgmt l2fib data"; + } + + typedef Mgmt-l2fib-switching { + type enumeration { + enum "mgmt-l2fib-switching-type-unknown" { + description + "mgmt l2fib switching type unknown"; + } + enum "mgmt-l2fib-switching-type-ac-ac" { + description + "mgmt l2fib switching type ac ac"; + } + enum "mgmt-l2fib-switching-type-ac-atom" { + description + "mgmt l2fib switching type ac atom"; + } + enum "mgmt-l2fib-switching-type-ac-vfi" { + description + "mgmt l2fib switching type ac vfi"; + } + enum "mgmt-l2fib-switching-type-ac-l2tp" { + description + "mgmt l2fib switching type ac l2tp"; + } + enum "mgmt-l2fib-switching-type-atom-atom" { + description + "mgmt l2fib switching type atom atom"; + } + enum "mgmt-l2fib-switching-type-vfi-atom" { + description + "mgmt l2fib switching type vfi atom"; + } + enum "mgmt-l2fib-switching-type-vfi-l2tp" { + description + "mgmt l2fib switching type vfi l2tp"; + } + enum "mgmt-l2fib-switching-type-l2tp-atom" { + description + "mgmt l2fib switching type l2tp atom"; + } + enum "mgmt-l2fib-switching-type-l2tp-l2tp" { + description + "mgmt l2fib switching type l2tp l2tp"; + } + enum "mgmt-l2fib-switching-type-max" { + description + "mgmt l2fib switching type max"; + } + } + description + "Mgmt l2fib switching"; + } + + grouping L2FIB-DHCP-BINDING-SUMMARY-INFO { + description + "L2FIB DHCP binding summary info"; + container port { + description + "Union of Port information"; + uses L2FIB-DHCP-BIND-UN; + } + leaf bindings { + type uint32; + description + "DHCP binding count"; + } + } + + grouping L2FIB-VTEP-INFO { + description + "L2FIB vtep info"; + leaf nve-if { + type xr:Interface-name; + description + "Parent NVE IF Handle"; + } + leaf vn-iid { + type uint32; + description + "VNI ID"; + } + leaf vte-pip { + type inet:ipv4-address; + description + "Peer VTEP IP Address"; + } + } + + grouping L2FIB-PWHE-MP-SUMMARY-INFO { + description + "L2VPN PWHE Main-port summary info"; + leaf total-count { + type uint32; + description + "Number of PWHE Main-ports"; + } + } + + grouping L2FIB-PWGROUP-SUMMARY-INFO { + description + "L2VPN PWGROUP summary info"; + leaf plat-grouping-supported { + type boolean; + description + "Platform supports Grouping"; + } + leaf total-pw-groups { + type uint32; + description + "Total number of PWGROUP objects"; + } + leaf pw-groups-down { + type uint32; + description + "Number of PWGROUP objects down"; + } + } + + grouping L2FIB-PTREE-SUMMARY-INFO { + description + "L2VPN PTree summary info"; + leaf total-ptree-count { + type uint32; + description + "Number of PTree objects"; + } + leaf mldp-enabled-ptree-count { + type uint32; + description + "Number of MLDP enabled PTree objects"; + } + leaf lmrib-mldp-ptree-count { + type uint32; + description + "Number of MLDP PTree Objects owned by LMRIB"; + } + leaf rsvp-te-enabled-ptree-count { + type uint32; + description + "Number of RSVP-TE enabled PTree objects"; + } + leaf lmrib-rsvp-te-ptree-count { + type uint32; + description + "Number of RSVP-TE PTree Objects owned by LMRIB"; + } + } + + grouping L2FIB-GLOBAL-CFG-INFO { + description + "L2VPN Global Configuration"; + leaf load-balance-type { + type L2fib-load-bal; + description + "Type of Load-Balancing"; + } + leaf evpn-imc-label-block-base { + type uint32; + description + "Base of label range in use for EVPN IMC PD"; + } + leaf evpn-imc-label-block-size { + type uint16; + description + "Size of label range in use for EVPN IMC PD"; + } + leaf evpn-etree-local-label { + type uint32; + description + "EVPN etree local label"; + } + } + + grouping L2FIB-EVPN-SUMMARY-INFO { + description + "L2VPN evpn summary info"; + leaf total-count { + type uint32; + description + "Number of EVPN Multicast Replication lists"; + } + leaf isid-count { + type uint32; + description + "Number of ISID leaves"; + } + leaf default-count { + type uint32; + description + "Number of default leaves"; + } + leaf stitching-count { + type uint32; + description + "Number of stitching leaves"; + } + } + + grouping L2FIB-OBJ-QUEUES-SUMMARY { + description + "L2FIB OBJ QUEUES SUMMARY"; + leaf inline-cnt { + type uint32; + description + "number of objects in inline queue"; + } + leaf retry-cnt { + type uint32; + description + "number of objects in retry queue"; + } + leaf update-cnt { + type uint32; + description + "number of objects in update queues"; + } + leaf del-cnt { + type uint32; + description + "number of objects in delete queues"; + } + } + + grouping L2FIB-IPMAC-SUMMARY-INFO { + description + "L2FIB bridge ipmac summary info"; + leaf ip-mac-counts-valid { + type boolean; + description + "IPMacCountsValid"; + } + leaf ipv4mac-count-local { + type uint32; + description + "number of local ipv4macs "; + } + leaf ipv4mac-count-remote { + type uint32; + description + "number of remote ipv4macs "; + } + leaf ipv6mac-count-local { + type uint32; + description + "number of local ipv6macs "; + } + leaf ipv6mac-count-remote { + type uint32; + description + "number of remote ipv6macs "; + } + leaf ipmac-count { + type uint32; + description + "number of all ipmacs"; + } + } + + grouping L2FIB-MAC-SUMMARY-INFO { + description + "L2FIB bridge mac summary info"; + leaf mac-counts-invalid { + type boolean; + description + "Flag to show if MAC counts aren't valid"; + } + leaf local-mac-count { + type uint32; + description + "number of locally learnt macs"; + } + leaf remote-mac-count { + type uint32; + description + "number of remotely learned macs"; + } + leaf static-mac-count { + type uint32; + description + "number of static macs"; + } + leaf routed-mac-count { + type uint32; + description + "number of routed macs"; + } + leaf mac-count { + type uint32; + description + "number of all macs"; + } + leaf sbmac-count { + type uint32; + description + "number of Source BMACs"; + } + leaf bmac-count { + type uint32; + description + "number of BMACs"; + } + } + + grouping L2FIB-BD-SUMMARY-INFO { + description + "L2VPN bridge-domain summary info"; + leaf bridge-domain-count { + type uint32; + description + "Number of bridge-domains"; + } + leaf bridge-domain-drop-count { + type uint32; + description + "Number of bridge-domain updates dropped"; + } + leaf bridge-domain-with-bvi-count { + type uint32; + description + "Number of bridge-domains with BVI"; + } + leaf bridge-domain-with-p2mp-enabled { + type uint32; + description + "Number of bridge-domains with P2MP enabled"; + } + leaf bridge-domain-with-pbbevpn-enabled { + type uint32; + description + "Number of bridge-domains with PBB EVPN enabled"; + } + leaf bridge-domain-with-evpn-enabled { + type uint32; + description + "Number of bridge-domains with EVPN enabled"; + } + } + + grouping L2FIB-L2TP-DISP-SUMMARY-INFO { + description + "L2TP disposition session object summary"; + leaf l2tp-disposition-session-count { + type uint32; + description + "number of l2tp disposition session objects"; + } + leaf bound-l2tp-disposition-session-count { + type uint32; + description + "number of bound l2tp disposition objects"; + } + leaf unbound-l2tp-disposition-session-count { + type uint32; + description + "number of unbound l2tp disposition objects"; + } + } + + grouping L2FIB-NH-SUMMARY-INFO2 { + description + "Specific nhop summary"; + leaf next-hop-count { + type uint32; + description + "total number of nhops"; + } + leaf bound-next-hop-count { + type uint32; + description + "number of bound nhops"; + } + leaf unbound-next-hop-count { + type uint32; + description + "number of unbound nhops"; + } + leaf next-hop-pending-registration-count { + type uint32; + description + "number of nhops pending registration with fib "; + } + } + + grouping L2FIB-NH-SUMMARY-INFO { + description + "nhop db summary"; + container internal-label { + description + "Internal Label nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container internal-id { + description + "Internal ID nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container mpls { + description + "MPLS nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container l2tp { + description + "L2TP nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container vxlan { + description + "VXLAN nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container lsm { + description + "LSM nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container p2mp-tunnels { + description + "P2MPtun nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container ipv6 { + description + "IPv6 nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container te-tunnels { + description + "(SR-)TE Tunnel nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + container sr-te-bsid { + description + "SR-TE Binding Label (BSID) nexthop summary"; + uses L2FIB-NH-SUMMARY-INFO2; + } + } + + grouping L2FIB-XC-SUMMARY-INFO { + description + "xconnect db summary"; + leaf xconnect-count { + type uint32; + description + "total number of entries"; + } + leaf xconnect-up-count { + type uint32; + description + "number of up entries"; + } + leaf xconnect-down-count { + type uint32; + description + "number of down entries"; + } + leaf ac-to-pw-count-mpls { + type uint32; + description + "number of ac->pw-mpls entries"; + } + leaf ac-to-pw-count-iid { + type uint32; + description + "number of ac->pw-iid entries"; + } + leaf ac-to-pw-count-l2tp { + type uint32; + description + "number of ac->pw-l2tp entries"; + } + leaf ac-to-pw-count-l2tp-ip-v6 { + type uint32; + description + "number of ac->pw-l2tp-ipv6 entries"; + } + leaf ac-to-pw-count-l2tpv2 { + type uint32; + description + "number of ac->pw-l2tpv2 entries"; + } + leaf ac-to-ac-count { + type uint32; + description + "number of ac->ac entries"; + } + leaf ac-to-unknown-count { + type uint32; + description + "number of ac->unknown type entries"; + } + leaf mon-sess-to-pw-count { + type uint32; + description + "number of monitor_session->pw entries"; + } + leaf mon-sess-to-unknown-count { + type uint32; + description + "number of monitor_session->unknown type entries"; + } + leaf ac-to-bp-count { + type uint32; + description + "number of ac->bp entries"; + } + leaf pw-to-bp-count { + type uint32; + description + "number of pw->bp entries"; + } + leaf pw-to-unknown-count { + type uint32; + description + "number of pw->unknown type entries"; + } + leaf pbb-to-bp-count { + type uint32; + description + "number of pbb->bp entries"; + } + leaf pbb-to-unknown-count { + type uint32; + description + "number of pbb->unknown type entries"; + } + leaf vni-to-bp-count { + type uint32; + description + "number of vni->bp entries"; + } + leaf vni-to-unknown-count { + type uint32; + description + "number of vni->unknown type entries"; + } + leaf evpn-to-bp-count { + type uint32; + description + "number of evpn->bp entries"; + } + leaf evpn-to-unknown-count { + type uint32; + description + "number of evpn->unknown type entries"; + } + leaf ac-down-count-aib { + type uint32; + description + "number of down acs with reason aib"; + } + leaf ac-down-count-l2vpn { + type uint32; + description + "number of down acs with reason l2vpn"; + } + leaf ac-down-count-l3fib { + type uint32; + description + "number of down acs with reason fib"; + } + leaf ac-down-count-vpdn { + type uint32; + description + "number of down acs with reason vpdn"; + } + leaf vpws-pw-invalid-xid-drop-count { + type uint32; + description + "number of xc updates dropped due to VPWS PW + invalid xid"; + } + leaf vpls-pw-invalid-xid-drop-count { + type uint32; + description + "number of xc updates dropped due to VPLS PW + invalid xid"; + } + leaf virtual-ac-invalid-xid-drop-count { + type uint32; + description + "number of xc updates dropped due to Virtual AC + invalid xid"; + } + leaf pbb-invalid-xid-drop-count { + type uint32; + description + "number of xc updates dropped due to PBB invalid + xid"; + } + leaf vni-invalid-xid-drop-count { + type uint32; + description + "number of xc updates dropped due to VNI invalid + xid"; + } + leaf evpn-invalid-xid-drop-count { + type uint32; + description + "number of xc updates dropped due to EVPN invalid + xid"; + } + leaf vpls-pw-max-exceeded-drop-cnt { + type uint32; + description + "number of xc updates dropped due to max VPLS PWs + exceeded"; + } + leaf bundle-ac-max-exceeded-drop-cnt { + type uint32; + description + "number of xc updates dropped due to max Bundle + ACs exceeded"; + } + leaf global-invalid-xid-drop-count { + type uint32; + description + "number of xc updates dropped due to Global + invalid xid"; + } + leaf p2p-count { + type uint32; + description + "number of p2p xconnects"; + } + leaf bp-count { + type uint32; + description + "number of bridge-port xconnects"; + } + leaf pwhe-l2-if-count { + type uint32; + description + "number of PWHE L2IF xconnects"; + } + } + + grouping L2FIB-SUMMARY-INFO { + description + "L2FIB summary info"; + container xconnect-summary { + description + "xconnect db summary info"; + uses L2FIB-XC-SUMMARY-INFO; + } + container next-hop-summary { + description + "nhop db summry info"; + uses L2FIB-NH-SUMMARY-INFO; + } + container l2tp-disposition-summary { + description + "L2TP disposition object summary"; + uses L2FIB-L2TP-DISP-SUMMARY-INFO; + } + container bridge-domain-summary { + description + "Bridge-domain summary info"; + uses L2FIB-BD-SUMMARY-INFO; + } + container mac-summary { + description + "mac summary info"; + uses L2FIB-MAC-SUMMARY-INFO; + } + container ipmac-summary { + description + "ipmac summary info"; + uses L2FIB-IPMAC-SUMMARY-INFO; + } + container queue-summary { + description + "queue summary info"; + uses L2FIB-OBJ-QUEUES-SUMMARY; + } + container evpn-summary { + description + "evpn summary info"; + uses L2FIB-EVPN-SUMMARY-INFO; + } + container global-cfg { + description + "Global configuration"; + uses L2FIB-GLOBAL-CFG-INFO; + } + container ptree-summary { + description + "P2MP PTree summary info"; + uses L2FIB-PTREE-SUMMARY-INFO; + } + container pw-group-summary { + description + "PWGroup summary info"; + uses L2FIB-PWGROUP-SUMMARY-INFO; + } + container pwhe-mp-summary { + description + "PWHE Main-port summary info"; + uses L2FIB-PWHE-MP-SUMMARY-INFO; + } + } + + grouping L2FIB-MCAST-XID-INFO { + description + "L2fib xid info"; + container forward-stats { + description + "Forwarding Statistics"; + uses L2FIB-PLATFORM-STATS-BAG; + } + container source-prefix { + description + "Source Prefix"; + uses L2FIB-PREFIX-INFO; + } + container destination-prefix { + description + "Destination Prefix"; + uses L2FIB-PREFIX-INFO; + } + leaf bridge-id { + type uint32; + description + "Bridge Id"; + } + leaf ac-interface-handle { + type xr:Interface-name; + description + "AC If handle"; + } + leaf df-from-bridge-port { + type boolean; + description + "DF/NDF state derived from Bridge Port"; + } + leaf is-ndf { + type boolean; + description + "Non-Designated Forwarder"; + } + leaf leaf-pointer { + type uint32; + description + "Leaf Ptr"; + } + leaf pw-id { + type string { + length "0..40"; + } + description + "PW ID"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "NHOP IP Address"; + } + leaf isid { + type uint32; + description + "Isid Id"; + } + leaf csfl { + type uint32; + description + "Csfl Id"; + } + leaf sat-id { + type uint16; + description + "Sat Id"; + } + leaf is-ole-offloaded { + type boolean; + description + "Ole Offloaded"; + } + leaf is-ole-master { + type boolean; + description + "Ole Master"; + } + leaf is-topo-hub-and-spoke { + type boolean; + description + "Topo HubAndSpoke"; + } + leaf is-evpn-xid { + type boolean; + description + "EVPN Ole"; + } + leaf is-evpn-moi-xid { + type boolean; + description + "EVPN MOI"; + } + leaf moi-id-xr { + type uint32; + description + "MOI ID"; + } + leaf label-xr { + type uint32; + description + "Label"; + } + leaf evpn-next-hop { + type inet:ipv6-address; + description + "EVPN Ole NextHop"; + } + leaf pin-down-interface-name { + type xr:Interface-name; + description + "Pin-down Interface Name"; + } + leaf hardware-information { + type yang:hex-string; + description + "Platform Hardware info"; + } + } + + grouping L2FIB-BRIDGE-SUMMARY-INFO { + description + "L2VPN bridge summary info"; + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf bridge-name { + type string; + description + "Bridge name"; + } + leaf mac-limit-enabled { + type boolean; + description + "MAC limit enabled"; + } + leaf mac-limit { + type uint32; + description + "MAC limit"; + } + leaf mac-limit-action { + type Mgmt-l2fib-mac-limit-action; + description + "MAC limit action"; + } + leaf flood-disabled { + type boolean; + description + "Is flooding disabled"; + } + leaf mac-learning-disabled { + type boolean; + description + "Is MAC learning disabled"; + } + leaf admin-disabled { + type boolean; + description + "Is administratively disabled"; + } + leaf bridge-port-count { + type uint32; + description + "Number of bridge ports"; + } + leaf number-of-shg { + type uint32; + description + "Number of split horizon groups"; + } + leaf number-of-hwmac { + type uint32; + description + "Number of HW MAC addresses"; + } + leaf number-of-swmac { + type uint32; + description + "Number of SW MAC addresses"; + } + } + + grouping L2FIB-BRIDGE-PORT-SEG-UN { + description + "L2FIB BRIDGE PORT SEG UN"; + container ac { + when "../data-type = 'mgmt-l2fib-data-type-ac'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_AC'"; + } + description + "ac"; + uses L2FIB-AC-INFO; + } + container pbb { + when "../data-type = 'mgmt-l2fib-data-type-pbb'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_PBB'"; + } + description + "pbb"; + uses L2FIB-PBB-INFO; + } + container vni { + when "../data-type = 'mgmt-l2fib-data-type-vni'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_VNI'"; + } + description + "vni"; + uses L2FIB-VNI-INFO; + } + container evpn { + when "../data-type = 'mgmt-l2fib-data-type-evpn'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_EVPN'"; + } + description + "evpn"; + uses L2FIB-EVPN-INFO; + } + container pw { + when "../data-type != 'mgmt-l2fib-data-type-ac' and ../data-type != 'mgmt-l2fib-data-type-pbb' and ../data-type != 'mgmt-l2fib-data-type-vni' and ../data-type != 'mgmt-l2fib-data-type-evpn'" { + description + "../DataType != 'MGMT_L2FIB_DATA_TYPE_AC' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_PBB' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_VNI' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_EVPN'"; + } + description + "pw"; + uses L2FIB-PW-INFO; + } + leaf data-type { + type Mgmt-l2fib-data; + description + "DataType"; + } + } + + grouping L2FIB-BRIDGE-PORT-DETAIL-INFO { + description + "L2VPN bridge port info"; + container segment { + description + "Segment"; + uses L2FIB-BRIDGE-PORT-SEG-UN; + } + container bridge-port-operational-info { + description + "Bridge port operational information"; + uses L2FIB-OPER-BRIDGE-PORT-INFO; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf shg-id { + type uint32; + description + "Split horizon group ID"; + } + leaf xc-id { + type uint32; + description + "xconnect ID"; + } + leaf number-of-hw-mac { + type uint32; + description + "Number of HW MAC addresses"; + } + leaf number-of-sw-mac { + type uint32; + description + "Number of SW MAC addresses"; + } + leaf number-of-mcast-routes { + type uint32; + description + "Number of MCAST Routes"; + } + leaf sw-mac-move-count { + type uint64; + description + "SW MAC move count"; + } + leaf flooding-disabled { + type boolean; + description + "Is flooding disabled"; + } + leaf mac-learning-disabled { + type boolean; + description + "Is MAC learning disabled"; + } + } + + grouping L2FIB-G8032-RING-INSTANCE-DETAIL-INFO { + description + "L2FIB ethernet ring instance info detail"; + leaf ring-instance { + type uint32; + description + "Ring instance number"; + } + leaf vlan-ids { + type string; + description + "Vlan Ids"; + } + leaf ring-profile { + type string; + description + "Ring Profile"; + } + leaf rpl { + type L2fib-g8032-rpl; + description + "RPL"; + } + leaf aps-port0 { + type string; + description + "Port 0 of aps-channel"; + } + leaf aps-port1 { + type string; + description + "Port 1 of aps-channel"; + } + leaf aps-port-status0 { + type L2fib-g8032-aps-port-status; + description + "Status of Port 0"; + } + leaf aps-port-status1 { + type L2fib-g8032-aps-port-status; + description + "Status of Port 1"; + } + leaf aps-channel-level { + type uint32; + description + "APS channel level"; + } + } + + grouping L2FIB-G8032-RING-INSTANCE-SUMMARY-INFO { + description + "L2FIB ethernet ring instance info summary"; + leaf ring-instance { + type uint32; + description + "Ring instance number"; + } + leaf aps-port0 { + type string; + description + "Port 0 of aps-channel"; + } + leaf aps-port1 { + type string; + description + "Port 1 of aps-channel"; + } + } + + grouping L2FIB-G8032-RING-SUMMARY-INFO { + description + "L2FIB ethernet ring info summary"; + leaf ring-name { + type string; + description + "Name of the ring"; + } + leaf port0 { + type string; + description + "Port 0"; + } + leaf port1 { + type string; + description + "Port 1"; + } + } + + grouping L2FIB-G8032-RING-DETAIL-INFO { + description + "L2FIB ethernet ring info detail"; + leaf ring-name { + type string; + description + "Name of the ring"; + } + leaf port0 { + type string; + description + "Port 0"; + } + leaf port1 { + type string; + description + "Port 1"; + } + leaf monitor0 { + type string; + description + "Monitor port 0"; + } + leaf monitor1 { + type string; + description + "Monitor port 1"; + } + leaf is-open-ring { + type boolean; + description + "Open Ring"; + } + } + + grouping L2FIB-L2TP-DISP-INFO { + description + "L2TP session disposition object"; + leaf session-id-xr { + type uint32; + description + "Local Session Id"; + } + leaf interface-name { + type xr:Interface-name; + description + "Egress main interface"; + } + leaf sub-interface-name { + type xr:Interface-name; + description + "SubInterface"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source/Local IP address of the tunnel"; + } + leaf bound { + type boolean; + description + "Bind status"; + } + leaf tunnel-id-xr { + type uint32; + description + "Tunnel ID, l2tpv2"; + } + leaf ipv4-table-id { + type uint32; + description + "IPv4 Table ID"; + } + leaf ipv6-table-id { + type uint32; + description + "IPv6 Table ID"; + } + leaf nhop-ip-addr { + type inet:ipv4-address; + description + "NHOP IP Address of the tunnel"; + } + leaf session-type { + type L2fib-l2tp-session; + description + "L2tp or L2tpv2 session"; + } + } + + grouping L2FIB-MAIN-PORT-MSTP-DETAIL-INFO { + description + "L2FIB main port mstp detail info"; + leaf parent-interface-xr { + type xr:Interface-name; + description + "main port ID"; + } + leaf msti-xr { + type uint32; + description + "multi-spanning tree instance configured value"; + } + leaf internal-msti { + type uint32; + description + "multi-spanning tree instance internal value"; + } + leaf state { + type uint32; + description + "MSTI state"; + } + leaf learn-key { + type uint8; + description + "Learn Key"; + } + leaf evpn-peer-es-down { + type boolean; + description + "Is EVPN peer ES down"; + } + leaf-list bridge-port-array { + type xr:Interface-name; + description + "Bridge port"; + } + } + + grouping L2FIB-HW-INFO { + description + "L2FIB hardware info"; + } + + grouping L2FIB-MAIN-INTERFACE-INSTANCE-BPORT-SUMMARY-INFO { + description + "L2VPN main interface instance bridge port info + summary"; + leaf bridge-port-id { + type xr:Interface-name; + description + "Bridge Port ID"; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf main-interface { + type xr:Interface-name; + description + "Main interface ID"; + } + leaf main-if-type { + type uint8; + description + "Main Interface Type"; + } + leaf virtual-if-name { + type string; + description + "Virtual Main IfName"; + } + leaf bp-type { + type uint8; + description + "Bridge Port Type"; + } + } + + grouping L2FIB-MAIN-INTERFACE-INSTANCE-SUMMARY-INFO { + description + "L2FIB main interface instance summary info + summary"; + leaf main-interface { + type xr:Interface-name; + description + "Main interface ID"; + } + leaf main-if-type { + type uint8; + description + "Main Interface Type"; + } + leaf virtual-if-name { + type string; + description + "Virtual Main IfName"; + } + leaf instance { + type uint32; + description + "Interface instance"; + } + leaf state { + type L2fib-main-if-instance-state; + description + "Instance state"; + } + leaf bridge-port-count { + type uint32; + description + "Number of bridge ports"; + } + leaf instance-provisioned { + type boolean; + description + "Instances provisioned flag"; + } + } + + grouping L2FIB-MAIN-INTERFACE-INSTANCE-BPORT-DETAIL-INFO { + description + "L2VPN main interface instance bridge port info + detail"; + container oper { + description + "Operational information"; + uses L2FIB-OPER-BRIDGE-PORT-INFO; + } + leaf bridge-port-id { + type xr:Interface-name; + description + "Bridge Port ID"; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf state { + type L2fib-main-if-instance-state; + description + "Instance state"; + } + leaf main-interface { + type xr:Interface-name; + description + "Main interface ID"; + } + leaf main-if-type { + type uint8; + description + "Main Interface Type"; + } + leaf virtual-if-name { + type string; + description + "Virtual Main IfName"; + } + leaf bp-type { + type uint8; + description + "Bridge Port Type"; + } + } + + grouping L2FIB-MAIN-INTERFACE-INSTANCE-DETAIL-INFO { + description + "L2FIB main interface instance detail info detail"; + leaf main-interface { + type xr:Interface-name; + description + "Main interface ID"; + } + leaf main-if-type { + type uint8; + description + "Main Interface Type"; + } + leaf virtual-if-name { + type string; + description + "Virtual Main IfName"; + } + leaf instance { + type uint32; + description + "Interface instance"; + } + leaf state { + type L2fib-main-if-instance-state; + description + "Instance state"; + } + leaf bridge-port-count { + type uint32; + description + "Number of bridge ports"; + } + leaf instance-provisioned { + type boolean; + description + "Instances provisioned flag"; + } + } + + grouping L2FIB-MAIN-INTERFACE-SUMMARY-INFO { + description + "L2FIB main interface summary info summary"; + leaf main-interface { + type xr:Interface-name; + description + "Main Interface ID"; + } + leaf main-if-type { + type uint8; + description + "Main Interface Type"; + } + leaf virtual-if-name { + type string; + description + "Virtual Main IfName"; + } + list instance-id { + description + "Instance IDs"; + leaf entry { + type uint32; + description + "Instance IDs"; + } + } + list instances-state { + description + "State for each instance"; + leaf entry { + type L2fib-main-if-instance-state; + description + "State for each instance"; + } + } + list instances-provisioned { + description + "Instances provisioned flag"; + leaf entry { + type boolean; + description + "Instances provisioned flag"; + } + } + list instances-frr { + description + "Instances FRR active flag"; + leaf entry { + type boolean; + description + "Instances FRR active flag"; + } + } + list instances-protecion-enabled { + description + "Instances prot-on flag"; + leaf entry { + type boolean; + description + "Instances prot-on flag"; + } + } + } + + grouping L2FIB-MAIN-INTERFACE-ES-NH-INFO { + description + "l2fib main interface ES nexthop info"; + leaf address { + type inet:ipv6-address; + description + "IP Address"; + } + } + + grouping L2FIB-MAIN-INTERFACE-DETAIL-INFO { + description + "L2FIB main interface detail info detail"; + container rx-adjacency { + description + "RX adjacency"; + uses L2FIB-ADJACENCY-INFO; + } + leaf main-interface { + type xr:Interface-name; + description + "Main Interface ID"; + } + leaf main-if-type { + type uint8; + description + "Main Interface Type"; + } + leaf virtual-if-name { + type string; + description + "Virtual Main IfName"; + } + leaf mac { + type string; + description + "MAC Address"; + } + leaf esi-id { + type uint16; + description + "Ethernet segment ID"; + } + leaf evpn-shg-local-label { + type uint32; + description + "EVPN split horizon group local label"; + } + leaf evpn-rid { + type inet:ipv6-address; + description + "EVPN Router-ID"; + } + leaf evpn-service-carving-mcast-mode { + type L2fib-evpn-sc-mcast-mode; + description + "EVPN Service Carving Mcast Mode"; + } + leaf es-is-frr-protected { + type boolean; + description + "FRR Protection Configured"; + } + list instance-id { + description + "Instance IDs"; + leaf entry { + type uint32; + description + "Instance IDs"; + } + } + list instances-state { + description + "State for each instance"; + leaf entry { + type L2fib-main-if-instance-state; + description + "State for each instance"; + } + } + list instances-provisioned { + description + "Instances provisioned flag"; + leaf entry { + type boolean; + description + "Instances provisioned flag"; + } + } + list bridge-port-count-instance { + description + "Number of bridge ports per instance"; + leaf entry { + type uint32; + description + "Number of bridge ports per instance"; + } + } + list ethernet-segment-identifier { + description + "Ethernet Segment Identifier"; + leaf entry { + type uint8; + description + "Ethernet Segment Identifier"; + } + } + list evpn-shg-remote-info { + description + "EVPN split horizon group remote info"; + uses L2FIB-EVPN-REMOTE-SHG-INFO; + } + list es-next-hop { + description + "ES NextHops"; + uses L2FIB-MAIN-INTERFACE-ES-NH-INFO; + } + list instances-frr { + description + "Instances FRR active flag"; + leaf entry { + type boolean; + description + "Instances FRR active flag"; + } + } + list instances-protecion-enabled { + description + "Instances prot-on flag"; + leaf entry { + type boolean; + description + "Instances prot-on flag"; + } + } + } + + grouping L2FIB-DHCP-BIND-UN { + description + "L2FIB DHCP BIND UN"; + container ac { + when "../data-type = 'mgmt-l2fib-data-type-ac'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_AC'"; + } + description + "ac"; + uses L2FIB-AC-KEY-INFO; + } + container pw { + when "../data-type != 'mgmt-l2fib-data-type-ac'" { + description + "../DataType != 'MGMT_L2FIB_DATA_TYPE_AC'"; + } + description + "pw"; + uses L2FIB-PW-KEY-INFO; + } + leaf data-type { + type Mgmt-l2fib-data; + description + "DataType"; + } + } + + grouping L2FIB-DHCP-BINDING-DETAIL-INFO { + description + "L2FIB DHCP binding detail info"; + container port { + description + "Union of Port information"; + uses L2FIB-DHCP-BIND-UN; + } + } + + grouping L2FIB-PWGROUP-INFO { + description + "l2fib pwgroup info"; + leaf group-state { + type L2fib-group-state; + description + "Group State"; + } + leaf pw-list-count { + type uint32; + description + "Dependent PW List Count"; + } + } + + grouping L2FIB-L3-SYNC-INTF-INFO { + description + "L2VPN bridge port info"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + } + + grouping L2FIB-EVPN-MCAST-LEAF-INFO { + description + "L2FIB evpn mcast leaf info"; + leaf bridge-domain-name { + type string; + description + "Bridge-domain name"; + } + leaf bridge-domain-id { + type uint32; + description + "bdid value"; + } + leaf xcid { + type uint32; + description + "xcid value"; + } + leaf is-bound { + type boolean; + description + "Is bound"; + } + } + + grouping L2FIB-EVPN-MCAST-OLE-INFO { + description + "L2FIB evpn mcast ole info"; + container mcast-ole { + description + "Mcast Ole Info"; + uses L2VPN-EVPN-MOI-INFO; + } + container next-hop { + description + "Next Hop"; + uses L2FIB-NHOP-INFO; + } + container interface-list-next-hop { + description + "IFlist Next Hop"; + uses L2FIB-NHOP-INFO; + } + leaf is-bound { + type boolean; + description + "Is bound"; + } + leaf is-etree-leaf { + type boolean; + description + "Is E-Tree Leaf"; + } + leaf next-hop-valid { + type boolean; + description + "Is Next Hop Valid"; + } + leaf interface-list-next-hop-valid { + type boolean; + description + "Is IFlist Next Hop Valid"; + } + } + + grouping L2FIB-RSRC-SHM-INFO { + description + "Shared memory availability"; + leaf oout-of-resource-mode { + type uint32; + description + "OOR mode"; + } + leaf maximum-available { + type uint64; + units "byte"; + description + "Maximum bytes available"; + } + leaf average-available { + type uint64; + units "byte"; + description + "Average number of bytes available"; + } + leaf average-utility { + type uint64; + description + "Average utilization"; + } + } + + grouping L2FIB-RSRC-INFO { + description + "L2FIB resource availability info"; + container shm-resource { + description + "Shared memory resource info"; + uses L2FIB-RSRC-SHM-INFO; + } + leaf overall-out-of-resource-mode { + type uint32; + description + "Overall OOR mode"; + } + leaf hardware-resource-mode-information { + type yang:hex-string; + description + "Opaque hardware resource info"; + } + list hardware-resource-mode { + description + "Hardware resource mode"; + leaf entry { + type uint32; + description + "Hardware resource mode"; + } + } + } + + grouping L2FIB-MAIN-PORT-MSTP-SUMMARY-INFO { + description + "L2FIB main port mstp summary info"; + leaf parent-interface-xr { + type xr:Interface-name; + description + "main port ID"; + } + leaf msti-xr { + type uint32; + description + "multi-spanning tree instance"; + } + leaf state { + type uint32; + description + "MSTI state"; + } + leaf bridge-port-count { + type uint32; + description + "Number of bridge ports"; + } + } + + grouping L2FIB-BRIDGE-P2MP-PW-INFO { + description + "L2FIB BRIDGE P2MP PW INFO"; + container parent-next-hop { + description + "Parent Next Hop for P2MP PW"; + uses L2FIB-NHOP-INFO; + } + leaf ptree-type { + type L2vpn-ptree; + description + "P2MP ptree type"; + } + leaf lsm-id { + type uint32; + description + "LSM id"; + } + leaf p2mp-te-interface { + type xr:Interface-name; + description + "P2MP TE ifh"; + } + leaf parent-nh-valid { + type boolean; + description + "Is Parent NH Valid"; + } + leaf parent-nh-bound { + type boolean; + description + "Is Parent NH Bound"; + } + leaf local-label { + type uint32; + description + "Local label"; + } + } + + grouping L2FIB-BRIDGE-BVI-INFO { + description + "L2FIB BRIDGE BVI INFO"; + leaf bvi-ifh { + type xr:Interface-name; + description + "BVI interface handle"; + } + leaf bvi-xid { + type uint32; + description + "BVI xconnect id"; + } + leaf bvi-name { + type string { + length "0..65"; + } + description + "BVI name"; + } + leaf bvi-shg-id { + type uint32; + description + "BVI Split Horizon Group ID"; + } + leaf irb-plat-data-len { + type uint32; + units "byte"; + description + "Platform data bytes"; + } + leaf irb-plat-data { + type yang:hex-string; + description + "IRB platform data"; + } + } + + grouping L2FIB-BRIDGE-PBB-CORE { + description + "L2FIB BRIDGE PBB CORE"; + leaf nber-edge-bd { + type uint32; + description + "Number of associated pbb-edge Bds"; + } + } + + grouping L2FIB-BRIDGE-PBB-EDGE { + description + "L2FIB BRIDGE PBB EDGE"; + leaf i-sid { + type uint32; + description + "I SID"; + } + leaf core-bd-name { + type string; + description + "Core Bridge Domain name"; + } + leaf mirp-lite-rx { + type uint64; + description + "MIRP-lite Rx packet counter"; + } + leaf mirp-lite-tx { + type uint64; + description + "MIRP-lite Tx packet counter"; + } + } + + grouping L2FIB-BRIDGE-PBB-UN { + description + "L2FIB BRIDGE PBB UN"; + container edge { + when "../pbb-type = 'mgmt-l2fib-bridge-type-pbb-edge'" { + description + "../PbbType = 'MGMT_L2FIB_BRIDGE_TYPE_PBB_EDGE'"; + } + description + "edge"; + uses L2FIB-BRIDGE-PBB-EDGE; + } + container core { + when "../pbb-type = 'mgmt-l2fib-bridge-type-pbb-core'" { + description + "../PbbType = 'MGMT_L2FIB_BRIDGE_TYPE_PBB_CORE'"; + } + description + "core"; + uses L2FIB-BRIDGE-PBB-CORE; + } + leaf pbb-type { + type Mgmt-l2fib-bridge; + description + "PbbType"; + } + } + + grouping L2FIB-OPER-BRIDGE-INFO { + description + "L2VPN bridge operational information"; + container operational-information { + description + "L2 operational information"; + uses L2FIB-OPER-INFO; + } + leaf unicast-storm-control-pps { + type uint64; + description + "Unicast storm control pps"; + } + leaf unicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Unicast storm control kbps"; + } + leaf broadcast-storm-control-pps { + type uint64; + description + "Broadcast storm control pps"; + } + leaf broadcast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Broadcast storm control kbps"; + } + leaf multicast-storm-control-pps { + type uint64; + description + "Multicast storm control pps"; + } + leaf multicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Multicast storm control kbps"; + } + } + + grouping L2FIB-BRIDGE-INFO { + description + "L2VPN bridge detailed info"; + container oper { + description + "Operational information"; + uses L2FIB-OPER-BRIDGE-INFO; + } + container bd-pbb-union { + description + "Union of bridge Edge and Core info"; + uses L2FIB-BRIDGE-PBB-UN; + } + container bvi-info { + description + "BVI Information"; + uses L2FIB-BRIDGE-BVI-INFO; + } + container p2mppw-info { + description + "P2MP PW Information"; + uses L2FIB-BRIDGE-P2MP-PW-INFO; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf bridge-port-count { + type uint32; + description + "Number of bridge ports"; + } + leaf number-of-hwmac { + type uint32; + description + "Number of HW MAC addresses"; + } + leaf number-of-swmac { + type uint32; + description + "Number of SW MAC addresses"; + } + leaf bridge-name { + type string; + description + "Bridge name"; + } + leaf shg-count { + type uint32; + description + "Number of split horizon groups"; + } + leaf bridge-type { + type Mgmt-l2fib-bridge; + description + "Bridge Type"; + } + leaf learn-key { + type uint8; + description + "Learn Key"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + } + + grouping L2FIB-DHCP-BINDING-COUNT-INFO { + description + "L2FIB DHCP binding count info"; + leaf bindings { + type uint32; + description + "DHCP binding count"; + } + } + + grouping L2FIB-PWHE-MP-SHOW-INFO { + description + "L2FIB PWHE Main-port info"; + leaf next-hop-valid { + type boolean; + description + "Is Next Hop Valid"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next Hop Address"; + } + leaf pseudo-wire-type { + type uint32; + description + "Pseudowire type"; + } + leaf generic-interface-list-id { + type uint32; + description + "Generic Interface List ID"; + } + leaf internal-label { + type uint32; + description + "Internal label"; + } + leaf remote-label { + type uint32; + description + "Remote label"; + } + leaf control-word-enabled { + type boolean; + description + "Control Word Enabled"; + } + } + + grouping L2FIB-EVPN-IPMAC-INFO { + description + "L2FIB EVPN IP-MAC Info"; + container ip-address-xr { + description + "IP Address"; + uses L2FIB-IP-ADDR; + } + leaf bdid-xr { + type uint32; + description + "BD ID"; + } + leaf mac-address-xr { + type yang:mac-address; + description + "MAC Address"; + } + leaf arp-nd-sync-pending { + type boolean; + description + "Sync to ARP/ND Process Pending"; + } + leaf arp-nd-sync-modify-pending { + type boolean; + description + "Sync Modify to ARP/ND Process Pending"; + } + leaf arp-nd-probe-pending { + type boolean; + description + "Probe to ARP/ND Process Pending"; + } + leaf arp-nd-convert-pending { + type boolean; + description + "Convert to ARP/ND Process Pending"; + } + leaf is-local-xr { + type boolean; + description + "Is a Local route, as opposed to Remote"; + } + leaf is-remote-sync { + type boolean; + description + "Is a Remote-Sync route"; + } + } + + grouping L2VPN-EVPN-MOI-INFO { + description + "L2VPN EVPN MOI INFO"; + leaf tunnel-endpoint-id { + type uint32; + description + "Tunnel Endpoint ID"; + } + leaf mcast-encapsulation { + type uint32; + description + "Inclusive mcast transport encap"; + } + leaf moi-type { + type L2vpn-evpn-moi; + description + "MOI Next Hop type"; + } + leaf next-hop-ipv6-addr { + type inet:ipv6-address; + description + "Next Hop IPv6 address"; + } + leaf originating-ip { + type inet:ipv6-address; + description + "Original IP address"; + } + leaf mcast-label { + type uint32; + description + "Inclusive mcast label"; + } + leaf vni-id { + type uint32; + description + "VNI ID"; + } + leaf internal-id { + type uint32; + description + "Internal ID"; + } + leaf sr-te-interface-name { + type xr:Interface-name; + description + "SR-TE Interface"; + } + leaf sr-te-bsid { + type uint32; + description + "SR-TE Binding Label (BSID)"; + } + leaf srv6-te-bsid { + type inet:ipv6-address; + description + "SRv6-TE Binding SID"; + } + leaf srv6-sid { + type inet:ipv6-address; + description + "SRv6 SID"; + } + leaf srv6-sid-format { + type Mgmt-srv6-sid-fmt; + description + "SRv6 SID FORMAT"; + } + } + + grouping L2FIB-BRIDGE-MAC-EVPN-CTX-UN { + description + "L2FIB BRIDGE MAC EVPN CTX UN"; + container mcast-ole { + when "../data-type = 'mgmt-l2fib-bridge-mac-evpn-ctx-moi'" { + description + "../DataType = + 'MGMT_L2FIB_BRIDGE_MAC_EVPN_CTX_MOI'"; + } + description + "mcast ole"; + uses L2VPN-EVPN-MOI-INFO; + } + leaf data-type { + type Mgmt-l2fib-bridge-mac-evpn-ctx; + description + "DataType"; + } + leaf esi-id { + when "../data-type = 'mgmt-l2fib-bridge-mac-evpn-ctx-esi-id'" { + description + "../DataType = + 'MGMT_L2FIB_BRIDGE_MAC_EVPN_CTX_ESI_ID'"; + } + type uint16; + description + "EsiID"; + } + leaf local-label { + when "../data-type = 'mgmt-l2fib-bridge-mac-evpn-ctx-local-label'" { + description + "../DataType = + 'MGMT_L2FIB_BRIDGE_MAC_EVPN_CTX_LOCAL_LABEL'"; + } + type uint32; + description + "LocalLabel"; + } + leaf bp-ifh { + when "../data-type = 'mgmt-l2fib-bridge-mac-evpn-ctx-bp-ifh'" { + description + "../DataType = + 'MGMT_L2FIB_BRIDGE_MAC_EVPN_CTX_BP_IFH'"; + } + type xr:Interface-name; + description + "BP IFH"; + } + leaf internal-id { + when "../data-type = 'mgmt-l2fib-bridge-mac-evpn-ctx-internal-id'" { + description + "../DataType = + 'MGMT_L2FIB_BRIDGE_MAC_EVPN_CTX_INTERNAL_ID'"; + } + type uint32; + description + "InternalID"; + } + } + + grouping L2FIB-PW-KEY-INFO { + description + "L2FIB PW KEY INFO"; + leaf pw-id { + type uint64; + description + "Pseudowire ID"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next Hop Address"; + } + leaf pseudo-wire-id-type { + type L2fib-pw-id; + description + "Pseudowire ID type"; + } + } + + grouping L2FIB-EVPN-KEY-INFO { + description + "L2FIB EVPN KEY INFO"; + leaf xcid { + type uint32; + description + "Xconnect ID"; + } + } + + grouping L2FIB-VNI-KEY-INFO { + description + "L2FIB VNI KEY INFO"; + leaf xcid { + type uint32; + description + "Xconnect ID"; + } + leaf parent-if { + type xr:Interface-name; + description + "Parent NVE Interface"; + } + } + + grouping L2FIB-PBB-KEY-INFO { + description + "L2FIB PBB KEY INFO"; + leaf xcid { + type uint32; + description + "Xconnect ID"; + } + } + + grouping L2FIB-AC-KEY-INFO { + description + "L2FIB AC KEY INFO"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf vsp-vlan { + type uint16; + description + "VLAN-Switched Port VLAN ID"; + } + } + + grouping L2FIB-BRIDGE-PORT-SEG-KEY-UN { + description + "L2FIB BRIDGE PORT SEG KEY UN"; + container ac { + when "../data-type = 'mgmt-l2fib-data-type-ac'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_AC'"; + } + description + "ac"; + uses L2FIB-AC-KEY-INFO; + } + container pbb { + when "../data-type = 'mgmt-l2fib-data-type-pbb'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_PBB'"; + } + description + "pbb"; + uses L2FIB-PBB-KEY-INFO; + } + container vni { + when "../data-type = 'mgmt-l2fib-data-type-vni'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_VNI'"; + } + description + "vni"; + uses L2FIB-VNI-KEY-INFO; + } + container evpn { + when "../data-type = 'mgmt-l2fib-data-type-evpn'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_EVPN'"; + } + description + "evpn"; + uses L2FIB-EVPN-KEY-INFO; + } + container pw { + when "../data-type != 'mgmt-l2fib-data-type-ac' and ../data-type != 'mgmt-l2fib-data-type-pbb' and ../data-type != 'mgmt-l2fib-data-type-vni' and ../data-type != 'mgmt-l2fib-data-type-evpn'" { + description + "../DataType != 'MGMT_L2FIB_DATA_TYPE_AC' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_PBB' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_VNI' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_EVPN'"; + } + description + "pw"; + uses L2FIB-PW-KEY-INFO; + } + leaf data-type { + type Mgmt-l2fib-data; + description + "DataType"; + } + } + + grouping L2FIB-BRIDGE-MAC-INFO { + description + "L2VPN bridge MAC address info"; + container segment { + description + "Segment"; + uses L2FIB-BRIDGE-PORT-SEG-KEY-UN; + } + container evpn-ctx { + description + "Evpn Context"; + uses L2FIB-BRIDGE-MAC-EVPN-CTX-UN; + } + container next-hop { + description + "Next Hop"; + uses L2FIB-NHOP-INFO; + } + leaf platform-is-hw-learn { + type uint8; + description + "Platform is HW Learn"; + } + leaf node-id { + type xr:Node-id; + description + "Nodeid list"; + } + leaf bridge-domain-name { + type string; + description + "Bridge name"; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf bmac-configured { + type boolean; + description + "Flag: Configured BMAC"; + } + leaf vni-l3-flag { + type boolean; + description + "Flag: L3 Vxlan"; + } + leaf pbb-bmac { + type yang:mac-address; + description + "Backbone MAC Address"; + } + leaf l3-encapsulationvlan-id { + type uint16; + description + "L3 encapsulation Vlan ID"; + } + leaf next-hop-valid { + type boolean; + description + "Is Next Hop Valid"; + } + leaf peer-vtep-ip { + type inet:ipv4-address; + description + "Peer VTEP IP for this MAC Address"; + } + leaf flag-extension { + type uint32; + description + "MAC Flag Extension"; + } + leaf vni { + type uint32; + description + "VNI Information"; + } + } + + grouping L2FIB-P2MP-PTREE-INFO { + description + "l2fib p2mp ptree info"; + leaf lsm-id-xr { + type uint32; + description + "MLDP Lsm Id"; + } + leaf tunnel-id-xr { + type uint32; + description + "RSVPTE Tunnel Id"; + } + leaf p2mp-id-xr { + type uint32; + description + "RSVPTE P2MP Id"; + } + leaf extended-tunnel-id-xr { + type inet:ipv4-address; + description + "RSVPTE Ext Tunnel Id"; + } + } + + grouping L2FIB-IP-ADDR { + description + "L2FIB IP ADDR"; + leaf addr-type { + type L2fib-ip-addr; + description + "addr type"; + } + leaf ip { + type inet:ipv6-address; + description + "ip"; + } + } + + grouping L2FIB-MAC-DB-NODE-INFO { + description + "L2FIB MAC DB info per node"; + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + leaf topology-id { + type uint32; + description + "Topology ID"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf xcid { + type uint32; + description + "Cross-connect Identifier"; + } + leaf generation { + type uint8; + description + "HW MAC generation"; + } + leaf sequence { + type uint8; + description + "HW MAC sequence"; + } + leaf is-cfm { + type boolean; + description + "MAC is for CFM"; + } + } + + grouping L2FIB-MAC-DB-INFO { + description + "L2FIB MAC DB info"; + container attributes { + description + "Active node attributes"; + uses L2FIB-MAC-DB-NODE-INFO; + } + container ip-address { + description + "IP Address"; + uses L2FIB-IP-ADDR; + } + leaf element-type { + type uint8; + description + "Element Type"; + } + } + + grouping L2FIB-PBB-BMAC-SA-INFO { + description + "L2FIB PBB BMAC SA INFO"; + leaf configured { + type boolean; + description + "BMAC SA configured"; + } + leaf mac { + type yang:mac-address; + description + "Backbone Source Mac"; + } + leaf chassis-mac { + type yang:mac-address; + description + "Chassis Mac"; + } + } + + grouping L2FIB-MCAST-IRB-INFO { + description + "L2FIB MCAST IRB INFO"; + leaf mxid-ac-interface-handle { + type xr:Interface-name; + description + "Master XID AC If handle"; + } + leaf mxid-pw-id { + type uint32; + description + "Master XID PW ID"; + } + leaf mxid-next-hop-address { + type inet:ipv4-address; + description + "Master XID NHOP IP Address"; + } + leaf irb-plat-data-len { + type uint16; + units "byte"; + description + "Platform data bytes"; + } + list irb-plat-data { + max-elements "16"; + description + "IRB platform data"; + leaf entry { + type uint32; + description + "IRB platform data"; + } + } + } + + grouping L2FIB-MCAST-BAG-COUNTERS { + description + "L2FIB mcast statistics counters"; + leaf packets { + type uint64; + description + "Number of packets"; + } + leaf bytes { + type uint64; + units "byte"; + description + "Number of bytes"; + } + } + + grouping L2FIB-MCAST-STATS-BAG { + description + "L2FIB mcast forwarding statistics"; + container multicast-forward-stat { + description + "forwarded stats"; + uses L2FIB-MCAST-BAG-COUNTERS; + } + container received-stat { + description + "received stats"; + uses L2FIB-MCAST-BAG-COUNTERS; + } + container punt { + description + "punted stats"; + uses L2FIB-MCAST-BAG-COUNTERS; + } + container drop { + description + "dropped stats"; + uses L2FIB-MCAST-BAG-COUNTERS; + } + container multicast-core-forward-stat { + description + "core forwarded stats"; + uses L2FIB-MCAST-BAG-COUNTERS; + } + container core-received-stat { + description + "core received stats"; + uses L2FIB-MCAST-BAG-COUNTERS; + } + } + + grouping L2FIB-PLATFORM-STATS-UNION-BAG { + description + "L2FIB PLATFORM STATS UNION BAG"; + container mulicast { + when "../data-type = 'mgmt-l2fib-stats-type-mcast'" { + description + "../DataType = 'MGMT_L2FIB_STATS_TYPE_MCAST'"; + } + description + "mulicast"; + uses L2FIB-MCAST-STATS-BAG; + } + leaf data-type { + type Mgmt-l2fib-stats-data; + description + "DataType"; + } + } + + grouping L2FIB-PLATFORM-STATS-BAG { + description + "L2FIB platform statistics"; + container forward-stat { + description + "fwd stats"; + uses L2FIB-PLATFORM-STATS-UNION-BAG; + } + } + + grouping L2FIB-PREFIX-INFO { + description + "L2FIB PREFIX INFO"; + leaf proto { + type L2fib-prefix-proto-info; + description + "The prefix protocol"; + } + leaf prefix-length { + type uint16; + description + "The prefix length"; + } + leaf prefix { + type string; + description + "The prefix"; + } + } + + grouping L2FIB-MCAST-LEAF-INFO { + description + "l2fib mcast leaf info"; + container source-prefix { + description + "Source Prefix"; + uses L2FIB-PREFIX-INFO; + } + container destination-prefix { + description + "Destination Prefix"; + uses L2FIB-PREFIX-INFO; + } + container forward-stats { + description + "Forwarding Statistics"; + uses L2FIB-PLATFORM-STATS-BAG; + } + container irb-info { + description + "IRB Information"; + uses L2FIB-MCAST-IRB-INFO; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf xid-count { + type uint16; + description + "Count of XIDs"; + } + leaf platform-data-length { + type uint8; + description + "The mcast platform data len"; + } + leaf platform-data { + type yang:hex-string; + description + "The mcast platform data"; + } + leaf hardware-information { + type yang:hex-string; + description + "Platform Hardware info"; + } + leaf bridge-domain-name { + type string; + description + "Bridge Name"; + } + } + + grouping L2FIB-GBL-PI-OBJ-RTD-ITEM { + description + "PI object round-trip delay"; + container round-trip-delay { + description + "The object PI round-trip delay statistics"; + uses L2FIB-GBL-RTD-ITEM; + } + leaf object-type { + type uint8; + description + "The object type"; + } + } + + grouping L2FIB-GBL-RTD-ITEM { + description + "Round-trip delay statistics"; + leaf number-pd-update { + type uint32; + description + "The number of times PD is called"; + } + leaf number-pd-update-zero { + type uint32; + description + "The number of times PD is called with 0 + round-trip delay"; + } + leaf minimum-round-trip-delay { + type uint64; + description + "The minimum round-trip delay"; + } + leaf maximum-round-trip-delay { + type uint64; + description + "The maximum round-trip delay"; + } + leaf average-round-trip-delay { + type uint64; + description + "The average round-trip delay"; + } + } + + grouping L2FIB-GBL-ACT-RTD-ITEM { + description + "PD action round-trip delay"; + container round-trip-delay { + description + "The action PD round-trip delay statistics"; + uses L2FIB-GBL-RTD-ITEM; + } + leaf action { + type uint8; + description + "The action"; + } + } + + grouping L2FIB-GBL-PD-OBJ-RTD-ITEM { + description + "PD object round-trip delay"; + leaf object-type { + type uint8; + description + "The object type"; + } + list pd-action-rtd { + description + "The object per-action PD round-trip delay + statistics"; + uses L2FIB-GBL-ACT-RTD-ITEM; + } + } + + grouping L2FIB-GBL-RTD { + description + "Round-trip delay measurement"; + container bdxc-rtd { + description + "bdxc rtd"; + uses L2FIB-GBL-RTD-ITEM; + } + container aging-rtd { + description + "aging rtd"; + uses L2FIB-GBL-RTD-ITEM; + } + container punt-rtd { + description + "punt rtd"; + uses L2FIB-GBL-RTD-ITEM; + } + container lock-rtd { + description + "lock rtd"; + uses L2FIB-GBL-RTD-ITEM; + } + container platform-init-rtd { + description + "platform init rtd"; + uses L2FIB-GBL-RTD-ITEM; + } + leaf rtd-max-obj-type { + type uint32; + description + "RTD MAX OBJTYPE"; + } + list pd-object-rtd { + description + "The per-object PD round-trip delay statistics"; + uses L2FIB-GBL-PD-OBJ-RTD-ITEM; + } + list pi-object-rtd { + description + "The per-object PI round-trip delay statistics"; + uses L2FIB-GBL-PI-OBJ-RTD-ITEM; + } + } + + grouping L2FIB-EXT-MSG-SUMMARY-INFO { + description + "L2FIB message counters summary info"; + container event-history { + description + "Event history buffer"; + uses EVT-HIST-INFO; + } + container round-trip-delay { + description + "Round-Trip delay"; + uses L2FIB-GBL-RTD; + } + list message { + description + "message"; + uses L2FIB-GBL-MSG-INFO; + } + } + + grouping L2FIB-GBL-MSG-INFO { + description + "L2FIB message counter item info"; + leaf message-count { + type uint32; + description + "number of message"; + } + leaf time { + type string; + description + "Time string"; + } + leaf information1 { + type uint32; + description + "Extra info 1"; + } + leaf information2 { + type uint32; + description + "Extra info 2"; + } + leaf description { + type string; + description + "Description of the message"; + } + } + + grouping L2FIB-MCAST-SUMMARY-INFO { + description + "l2fib mcast summary info"; + leaf bridge-domain-name { + type string; + description + "Bridge Name"; + } + leaf bridge-domain-id { + type uint32; + description + "Bridge ID"; + } + leaf multicast-update { + type uint32; + description + "Multicast Updates"; + } + leaf multicast-update-dropped { + type uint32; + description + "Multicast Updates"; + } + leaf number-of-routes { + type uint32; + description + "Number of Routes"; + } + leaf number-of-routes-with-ole-offload { + type uint32; + description + "Number of Routes with OleOffload"; + } + leaf number-of-mroute-add { + type uint32; + description + "Number of Mroutes Added"; + } + leaf number-mroute-deleted { + type uint32; + description + "Number of Mroutes Deleted"; + } + leaf number-mroutes-deleted-all { + type uint32; + description + "Number of Mroutes All Deleted"; + } + leaf number-mroute-delete-drop { + type uint32; + description + "Number of Mroutes Delete droped"; + } + leaf number-mroute-all-delete-drop { + type uint32; + description + "Number of Mroutes All Delete droped"; + } + leaf number-xid-add { + type uint32; + description + "Number of XID Added"; + } + leaf number-xid-deleted { + type uint32; + description + "Number of XID Deleted"; + } + leaf number-of-xid { + type uint32; + description + "Number of XIDs"; + } + leaf stale-deleted { + type uint32; + description + "Stale Deleted"; + } + leaf stale-xid-deleted { + type uint32; + description + "Stale XID Deleted"; + } + list message { + description + "Global Message Information"; + uses L2FIB-GBL-MSG-INFO; + } + } + + grouping L2FIB-FXS-INFO { + description + "L2VPN FXS info"; + leaf fxs-id { + type uint32; + description + "FXS ID"; + } + leaf segment-type { + type uint8; + description + "Segment type"; + } + } + + grouping L2FIB-EVPN-REMOTE-SHG-INFO { + description + "L2FIB EVPN Remote Split Horizon Group Info"; + container remote-split-horizon-group-label { + description + "Remote split horizon group label"; + uses L2VPN-EVPN-REMOTE-SHG-INFO; + } + } + + grouping L2FIB-BRIDGE-PORT-P2MP-INFO { + description + "L2FIB BRIDGE PORT P2MP INFO"; + leaf ptree-type { + type L2vpn-ptree; + description + "P2MP ptree type"; + } + leaf lsm-id { + type uint32; + description + "MLDP LSM id"; + } + leaf tunnel-id { + type uint16; + description + "TE Tunnel Id"; + } + leaf p2mp-id { + type uint16; + description + "TE P2MP Id"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "TE Extended Tunnel Id"; + } + leaf ptree-owner-lmrib { + type boolean; + description + "PTree Owner LMRIB"; + } + } + + grouping L2FIB-PROFILE-INFO { + description + "L2VPN feature profile information"; + leaf profile-name { + type string; + description + "Feature profile name"; + } + } + + grouping L2FIB-FEATURE-UN { + description + "L2FIB FEATURE UN"; + container dhcp { + when "../feature-type = 'l2fib-feature-dhcp-snooping'" { + description + "../feature_type = 'L2FIB_FEATURE_DHCP_SNOOPING'"; + } + description + "dhcp"; + uses L2FIB-PROFILE-INFO; + } + container igmp { + when "../feature-type = 'l2fib-feature-igmp-snooping'" { + description + "../feature_type = 'L2FIB_FEATURE_IGMP_SNOOPING'"; + } + description + "igmp"; + uses L2FIB-PROFILE-INFO; + } + container mld { + when "../feature-type = 'l2fib-feature-mld-snooping'" { + description + "../feature_type = 'L2FIB_FEATURE_MLD_SNOOPING'"; + } + description + "mld"; + uses L2FIB-PROFILE-INFO; + } + leaf feature-type { + type L2fib-feature; + description + "feature type"; + } + } + + grouping L2FIB-OPER-INFO { + description + "L2VPN common operational information"; + leaf mtu { + type uint32; + description + "MTU"; + } + leaf mac-aging-time { + type uint32; + units "second"; + description + "MAC aging time in seconds"; + } + leaf mac-limit-enabled { + type boolean; + description + "MAC limit enabled"; + } + leaf mac-limit { + type uint32; + description + "MAC limit"; + } + leaf number-of-macs { + type uint32; + description + "numberOfMacs"; + } + leaf admin-disabled { + type boolean; + description + "Is administratively disabled"; + } + leaf flooding-disabled { + type boolean; + description + "Is flooding disabled"; + } + leaf flood-unknown-unicast-enabled { + type boolean; + description + "Is flooding unknown unicast disabled"; + } + leaf mac-limit-action { + type Mgmt-l2fib-mac-limit-action; + description + "MAC limit action"; + } + leaf mac-limit-threshold { + type uint32; + units "percentage"; + description + "MAC limit percentage recovery threshold"; + } + leaf mac-learning-disabled { + type boolean; + description + "Is MAC learning disabled"; + } + leaf mac-port-down-flush-disabled { + type boolean; + description + "Is MAC port down flush disabled"; + } + leaf mac-limit-notification-type { + type Mgmt-l2fib-mac-limit-notify; + description + "MAC limit notification"; + } + leaf is-mac-secure-enabled { + type boolean; + description + "Is MAC Secure Enabled"; + } + leaf is-mac-secure-logging-enabled { + type boolean; + description + "Is MAC Secure Logging Enabled"; + } + leaf mac-secure-action { + type Mgmt-l2fib-mac-sec-action; + description + "MAC secure action"; + } + leaf is-mac-secure-accept-shutdown { + type boolean; + description + "Is MAC secure accept shutdown (BP only)"; + } + leaf is-mac-secure-threshold-enabled { + type boolean; + description + "Is MAC Secure Threshold Enabled"; + } + leaf mac-aging-type { + type Mgmt-l2fib-mac-aging; + description + "MAC aging type"; + } + leaf l2mc-src-traffic-enabled { + type uint32; + description + "L2MC Source Traffic Enabled"; + } + leaf storm-control-unicast-enabled { + type boolean; + description + "Is unicast storm control enabled"; + } + leaf storm-control-broadcast-enabled { + type boolean; + description + "Is broadcast storm control enabled"; + } + leaf storm-control-multicast-enabled { + type boolean; + description + "Is multicast storm control enabled"; + } + leaf storm-control-unicast-rate-unit { + type L2fib-storm-control-rate-unit; + description + "Storm control unicast rate unit"; + } + leaf storm-control-broadcast-rate-unit { + type L2fib-storm-control-rate-unit; + description + "Storm control broadcast rate unit"; + } + leaf storm-control-multicast-rate-unit { + type L2fib-storm-control-rate-unit; + description + "Storm control multicast rate unit"; + } + leaf dhcp-enabled { + type boolean; + description + "Is DHCP snooping enabled"; + } + leaf dhcp-trusted { + type boolean; + description + "Is DHCP trusted"; + } + leaf is-dai-enabled { + type boolean; + description + "Is Dynamic ARP Inspection Enabled"; + } + leaf is-dai-addr-validation-ipv4-enabled { + type boolean; + description + "Is DAI IPv4 Address Validation Enabled"; + } + leaf is-dai-addr-validation-source-mac-enabled { + type boolean; + description + "Is DAI Source MAC Address Validation Enabled"; + } + leaf is-dai-addr-validation-destination-mac-enabled { + type boolean; + description + "Is DAI Destination MAC Validation enabled"; + } + leaf is-dai-logging-enabled { + type boolean; + description + "Is DAI Logging Enabled"; + } + leaf is-ipsg-enabled { + type boolean; + description + "Is IP Source Guard Enabled"; + } + leaf is-ipsg-logging-enabled { + type boolean; + description + "Is IP Source Guard Logging Enabled"; + } + leaf is-vpls-flood-optimization-enabled { + type boolean; + description + "Is MMRP Flood Optimization Enabled"; + } + leaf igmp-snoop-enabled { + type boolean; + description + "Is IGMP snooping enabled"; + } + leaf igmp-snoop-profile-enabled { + type boolean; + description + "Is IGMP snooping profile enabled"; + } + leaf igmp-flood-forward-enabled { + type boolean; + description + "Is IGMP flood forwarding enabled"; + } + leaf igmp-mroute-port-enabled { + type boolean; + description + "Is mrouter port"; + } + leaf igmp-route-guard-enabled { + type boolean; + description + "Is router gurad enabled"; + } + leaf mld-snoop-enabled { + type boolean; + description + "Is MLD snooping enabled"; + } + leaf mld-snoop-profile-enabled { + type boolean; + description + "Is MLD snooping profile enabled"; + } + leaf mld-flood-forward-enabled { + type boolean; + description + "Is MLD flood forwarding enabled"; + } + leaf mld-mroute-port-enabled { + type boolean; + description + "Is mrouter port"; + } + leaf mld-route-guard-enabled { + type boolean; + description + "Is router gurad enabled"; + } + leaf stp-participating { + type boolean; + description + "Is Spanning Tree Protocol participating"; + } + leaf bvi-configured { + type boolean; + description + "Is BVI Interface configured"; + } + leaf is-bvi-up { + type boolean; + description + "Is BVI state UP"; + } + leaf is-vni-enabled { + type boolean; + description + "Is VNI enabled"; + } + leaf is-evpn-enabled { + type boolean; + description + "Is EVPN enabled"; + } + leaf unknown-unicast-flooding-disabled { + type boolean; + description + "Unknown Unicast Flooding is disabled"; + } + leaf is-pbbevpn-enabled { + type boolean; + description + "Is PBBEVPN enabled"; + } + leaf is-swmac-learning { + type boolean; + description + "Is SW MAC learning enabled"; + } + leaf is-evpn-flow-label { + type boolean; + description + "Is EVPN Flow Label enabled"; + } + leaf is-evpn-cw-disable { + type boolean; + description + "Is EVPN CW disabled"; + } + leaf msti { + type uint32; + description + "Multi-spanning tree instance"; + } + leaf is-p2mp-pw-enabled { + type boolean; + description + "Is P2MP PW enabled"; + } + leaf is-igmp-snoop-enabled { + type boolean; + description + "Is IGMP Snooping admin enabled"; + } + leaf nv-satellite-offload-ipv4-multicast-disabled { + type boolean; + description + "nV Satellite Offload IPv4 Multicast Disabled"; + } + leaf etree-leaf { + type boolean; + description + "E-Tree Leaf Indication"; + } + leaf is-ves { + type boolean; + description + "Is Virtual Ethernet Segement feature enabled"; + } + list feature { + description + "Feature information"; + uses L2FIB-FEATURE-UN; + } + } + + grouping L2FIB-OPER-BRIDGE-PORT-INFO { + description + "L2VPN bridge port operational information"; + container operational-information { + description + "L2 operational information"; + uses L2FIB-OPER-INFO; + } + leaf unicast-storm-control-pps { + type uint64; + description + "Unicast storm control pps"; + } + leaf unicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Unicast storm control kbps"; + } + leaf broadcast-storm-control-pps { + type uint64; + description + "Broadcast storm control pps"; + } + leaf broadcast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Broadcast storm control kbps"; + } + leaf multicast-storm-control-pps { + type uint64; + description + "Multicast storm control pps"; + } + leaf multicast-storm-control-kb-ps { + type uint64; + units "kbit/s"; + description + "Multicast storm control kbps"; + } + } + + grouping L2FIB-BRIDGE-PORT-INFO { + description + "L2VPN bridge port info"; + container oper { + description + "Operational information"; + uses L2FIB-OPER-BRIDGE-PORT-INFO; + } + container p2mp { + description + "BP P2MP PW Information"; + uses L2FIB-BRIDGE-PORT-P2MP-INFO; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf shg-id { + type uint32; + description + "Split horizon group ID"; + } + leaf msti-pointer { + type uint32; + description + "MSTI Pointer"; + } + leaf segment-type { + type uint8; + description + "Segment type"; + } + leaf mvrp-sequence-number { + type uint16; + description + "MVRP Sequence Number"; + } + leaf learn-key { + type uint8; + description + "Learn Key"; + } + leaf bound { + type boolean; + description + "Bound"; + } + leaf evpn-shg-local-label { + type uint32; + description + "EVPN split horizon group local label"; + } + leaf evpn-esi-id { + type uint32; + description + "EVPN ESI ID"; + } + list evpn-shg-remote-info { + description + "EVPN split horizon group remote info"; + uses L2FIB-EVPN-REMOTE-SHG-INFO; + } + } + + grouping L2FIB-SEG2-UN { + description + "L2FIB SEG2 UN"; + container ac { + when "../data-type = 'mgmt-l2fib-data-type-ac'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_AC'"; + } + description + "ac"; + uses L2FIB-AC-INFO; + } + container bp { + when "../data-type = 'mgmt-l2fib-data-type-bridge-port'" { + description + "../DataType = + 'MGMT_L2FIB_DATA_TYPE_BRIDGE_PORT'"; + } + description + "bp"; + uses L2FIB-BRIDGE-PORT-INFO; + } + container fxs { + when "../data-type = 'mgmt-l2fib-data-type-fxs'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_FXS'"; + } + description + "fxs"; + uses L2FIB-FXS-INFO; + } + container pw { + when "../data-type != 'mgmt-l2fib-data-type-ac' and ../data-type != 'mgmt-l2fib-data-type-bridge-port' and ../data-type != 'mgmt-l2fib-data-type-fxs'" { + description + "../DataType != 'MGMT_L2FIB_DATA_TYPE_AC' and . + ./DataType != + 'MGMT_L2FIB_DATA_TYPE_BRIDGE_PORT' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_FXS'"; + } + description + "pw"; + uses L2FIB-PW-INFO; + } + leaf data-type { + type Mgmt-l2fib-data; + description + "DataType"; + } + } + + grouping L2FIB-BACKUP-PW-INFO { + description + "L2FIB BACKUP PW INFO"; + container atom { + description + "atom"; + uses L2FIB-PW-MPLS-INFO; + } + leaf backup-next-hop { + type inet:ipv4-address; + description + "Backup Next Hop"; + } + leaf backup-pseudo-wire-id-type { + type L2fib-pw-id; + description + "Pseudowire ID type"; + } + leaf backup-pseudo-wire-id { + type uint32; + description + "Backup Pseudowire ID"; + } + leaf redundancy-role { + type L2fib-pw-redundancy-role; + description + "Redundancy Role"; + } + leaf active { + type boolean; + description + "PW is active and forwarding"; + } + leaf bound { + type boolean; + description + "Bound"; + } + leaf pw-flow-label-tx { + type boolean; + description + "Pseudowire flow label TX enabled"; + } + leaf grouping-supported { + type boolean; + description + "Grouping supported"; + } + leaf group-id { + type uint32; + description + "PW Group Id"; + } + leaf group-state { + type L2fib-group-state; + description + "Group State"; + } + } + + grouping L2FIB-PW-L2TP-IPV6-TS-SESS-INFO { + description + "L2FIB PW L2TP IPV6 TS SESS INFO"; + leaf cookie-size { + type uint8; + description + "Cookie size"; + } + leaf cookie-low-value { + type uint32; + description + "Cookie low value"; + } + leaf cookie-high-value { + type uint32; + description + "Cookie high value"; + } + leaf secondary-cookie-size { + type uint8; + description + "Secondary Cookie size"; + } + leaf secondary-cookie-low-value { + type uint32; + description + "Secondary Cookie low value"; + } + leaf secondary-cookie-high-value { + type uint32; + description + "Secondary Cookie high value"; + } + leaf session-id { + type uint32; + description + "L2TP session ID"; + } + } + + grouping L2FIB-PW-L2TP-IPV6-TS-INFO { + description + "L2FIB PW L2TP IPV6 TS INFO"; + container local { + description + "Local session info"; + uses L2FIB-PW-L2TP-IPV6-TS-SESS-INFO; + } + container remote { + description + "Remote session info"; + uses L2FIB-PW-L2TP-SESS-INFO; + } + leaf tos-val { + type uint8; + description + "TOS val"; + } + leaf ttl { + type uint8; + description + "TTL"; + } + leaf path-mtu { + type uint16; + description + "Path MTU"; + } + leaf sequence-number-sent { + type uint32; + description + "Number of sequence sent"; + } + leaf sequence-number-expected { + type uint32; + description + "Number of sequence expected"; + } + leaf local-address { + type inet:ipv6-address; + description + "Local address"; + } + leaf remote-address { + type inet:ipv6-address; + description + "Remote address"; + } + } + + grouping L2FIB-PW-L2TPV2-SESS-INFO { + description + "L2FIB PW L2TPV2 SESS INFO"; + leaf session-id { + type uint32; + description + "L2TPv2 session ID"; + } + leaf tunnel-id { + type uint32; + description + "L2TPv2 tunnel ID"; + } + } + + grouping L2FIB-PW-L2TPV2-INFO { + description + "L2FIB PW L2TPV2 INFO"; + container local { + description + "Local session info"; + uses L2FIB-PW-L2TPV2-SESS-INFO; + } + container remote { + description + "Remote session info"; + uses L2FIB-PW-L2TPV2-SESS-INFO; + } + leaf pw-flags { + type uint8; + description + "L2TPv2 PW flags"; + } + leaf tos-val { + type uint8; + description + "TOS val"; + } + leaf ttl { + type uint8; + description + "TTL [Hops number]"; + } + leaf path-mtu { + type uint16; + units "byte"; + description + "Path MTU [Bytes]"; + } + leaf protocol { + type uint16; + description + "Protocol [UDP RFC-768]"; + } + leaf rem-udp-port { + type uint16; + description + "Remote UDP Port"; + } + leaf xconnect-id { + type uint32; + description + "Xconnect ID"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next Hop Address"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source Address"; + } + } + + grouping L2FIB-PW-L2TP-SESS-INFO { + description + "L2FIB PW L2TP SESS INFO"; + leaf session-id { + type uint32; + description + "L2TP session ID"; + } + leaf cookie-size { + type uint8; + description + "Cookie size"; + } + leaf cookie-low-value { + type uint32; + description + "Cookie low value"; + } + leaf cookie-high-value { + type uint32; + description + "Cookie high value"; + } + } + + grouping L2FIB-PW-L2TP-INFO { + description + "L2FIB PW L2TP INFO"; + container local { + description + "Local session info"; + uses L2FIB-PW-L2TP-SESS-INFO; + } + container remote { + description + "Remote session info"; + uses L2FIB-PW-L2TP-SESS-INFO; + } + leaf tos-val { + type uint8; + description + "TOS val"; + } + leaf ttl { + type uint8; + description + "TTL"; + } + leaf path-mtu { + type uint16; + description + "Path MTU"; + } + leaf sequence-number-sent { + type uint32; + description + "Number of sequence sent"; + } + leaf sequence-number-expected { + type uint32; + description + "Number of sequence expected"; + } + } + + grouping L2FIB-PW-MPLS-INFO { + description + "L2FIB PW MPLS INFO"; + leaf pw-label { + type uint32; + description + "PW Label"; + } + leaf pw-local-label { + type uint32; + description + "Local PW Label"; + } + leaf pw-tunnel-interface { + type uint32; + description + "PW tunnel interface"; + } + leaf pw-tunnel-bsid { + type uint32; + description + "PW SR-TE Binding Label (BSID)"; + } + leaf pw-xcid { + type uint32; + description + "PW XCID"; + } + } + + grouping L2FIB-PW-UN { + description + "L2FIB PW UN"; + container mpls { + when "../data-type = 'mgmt-l2fib-data-type-atom'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_ATOM'"; + } + description + "mpls"; + uses L2FIB-PW-MPLS-INFO; + } + container l2tp { + when "../data-type = 'mgmt-l2fib-data-type-l2tp'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_L2TP'"; + } + description + "l2tp"; + uses L2FIB-PW-L2TP-INFO; + } + container l2tpv2 { + when "../data-type = 'mgmt-l2fib-data-type-l2tpv2'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_L2TPV2'"; + } + description + "l2tpv2"; + uses L2FIB-PW-L2TPV2-INFO; + } + container l2tp-ipv6-ts { + when "../data-type = 'mgmt-l2fib-data-type-l2tp-ipv6-ts'" { + description + "../DataType = + 'MGMT_L2FIB_DATA_TYPE_L2TP_IPV6_TS'"; + } + description + "l2tp ipv6 ts"; + uses L2FIB-PW-L2TP-IPV6-TS-INFO; + } + leaf data-type { + type Mgmt-l2fib-data; + description + "DataType"; + } + } + + grouping L2FIB-PW-INFO { + description + "L2FIB PW INFO"; + container next-hop { + description + "Next Hop"; + uses L2FIB-NHOP-INFO; + } + container interface-list-next-hop { + description + "IFlist Next Hop"; + uses L2FIB-NHOP-INFO; + } + container pseudo-wire-union { + description + "Union of MPLS or L2TP"; + uses L2FIB-PW-UN; + } + container backup-pseudo-wire { + description + "Backup Pseudowire"; + uses L2FIB-BACKUP-PW-INFO; + } + leaf pw-id { + type uint64; + description + "Pseudowire ID"; + } + leaf signal-capability-flags { + type uint32; + description + "Sig Capability flags"; + } + leaf context { + type uint16; + description + "Context"; + } + leaf sequence-resync-threshold { + type uint16; + description + "Sequence Resync Threshold"; + } + leaf bound { + type boolean; + description + "Bound"; + } + leaf next-hop-valid { + type boolean; + description + "Is Next Hop Valid"; + } + leaf interface-list-next-hop-valid { + type boolean; + description + "Is IFlist Next Hop Valid"; + } + leaf backup-configured { + type boolean; + description + "Backup Pseudowire Configured"; + } + leaf redundancy-role { + type L2fib-pw-redundancy-role; + description + "Redundancy Role"; + } + leaf active { + type boolean; + description + "PW is active and forwarding"; + } + leaf pseudo-wire-id-type { + type L2fib-pw-id; + description + "Pseudowire ID type"; + } + leaf pw-load-balance-type { + type L2fib-load-bal; + description + "Type of load-balancing"; + } + leaf pw-flow-label-tx { + type boolean; + description + "Pseudowire flow label TX enabled"; + } + leaf grouping-supported { + type boolean; + description + "Grouping supported"; + } + leaf group-id { + type uint32; + description + "PW Group Id"; + } + leaf group-state { + type L2fib-group-state; + description + "Group State"; + } + leaf global-id { + type uint32; + description + "Global Id"; + } + leaf ac-id { + type uint32; + description + "Ac Id"; + } + leaf forward-class { + type uint8; + description + "Forward Class"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next Hop Address"; + } + leaf evpn-vpws-type { + type Evpn-vpws; + description + "EVPN VPWS Type"; + } + leaf is-srv6 { + type boolean; + description + "PW is over SRv6"; + } + } + + grouping L2FIB-MONITOR-SESSION-INFO { + description + "L2FIB MONITOR SESSION INFO"; + leaf xcid { + type uint32; + description + "Xconnect ID"; + } + leaf session-name { + type string; + description + "Monitor Session Name"; + } + leaf hardware-information { + type yang:hex-string; + description + "hardware Information of Monitor Session"; + } + leaf bound { + type boolean; + description + "Bound"; + } + } + + grouping L2FIB-EVPN-INFO { + description + "L2FIB EVPN INFO"; + leaf bound { + type boolean; + description + "Bound"; + } + leaf evi { + type uint32; + description + "EVPN ID"; + } + leaf forward-class { + type uint8; + description + "Forward Class"; + } + leaf unicast-label { + type uint32; + description + "Unicast label"; + } + leaf multicast-label { + type uint32; + description + "Multicast label"; + } + } + + grouping L2FIB-VNI-INFO { + description + "L2FIB VNI INFO"; + leaf srcip { + type inet:ipv4-address; + description + "VNI Src IPv4 Address"; + } + leaf mcastip { + type inet:ipv4-address; + description + "VNI Mcast IP Address"; + } + leaf srcipv6 { + type inet:ipv6-address; + description + "VNI Src IPv6 Address"; + } + leaf mcastipv6 { + type inet:ipv6-address; + description + "VNI Mcast IPv6 Address"; + } + leaf bound { + type boolean; + description + "Bound"; + } + leaf parent-if { + type xr:Interface-name; + description + "Parent NVE Interface"; + } + leaf encap { + type uint32; + description + "Encap type of VNI"; + } + leaf udp-port { + type uint32; + description + "UDP Port"; + } + leaf source-vtep-if { + type xr:Interface-name; + description + "Source IF Handle"; + } + leaf any-cast-ip { + type inet:ipv4-address; + description + "Anycast VTEP IP"; + } + leaf anycast-mcast-ip { + type inet:ipv4-address; + description + "Anycast Multicast IP"; + } + leaf any-cast-ipv6 { + type inet:ipv6-address; + description + "Anycast VTEP IPv6"; + } + leaf anycast-mcast-ipv6 { + type inet:ipv6-address; + description + "Anycast Multicast IP"; + } + leaf ingress-replication { + type boolean; + description + "Ingress Replication supported on VNI"; + } + leaf vx-lan-mode { + type uint32; + description + "Vxlan mode"; + } + leaf is-core-evpn-vni { + type boolean; + description + "Is core EVPN VNI"; + } + leaf is-anycast-ipv6 { + type boolean; + description + "Is anycast v6 address"; + } + } + + grouping L2FIB-PBB-CORE-INFO { + description + "L2FIB PBB CORE INFO"; + leaf vlan-id { + type uint32; + description + "vlan id"; + } + } + + grouping L2FIB-PBB-EDGE-INFO { + description + "L2FIB PBB EDGE INFO"; + leaf mac-configured { + type boolean; + description + "Configured MAC"; + } + leaf mac { + type yang:mac-address; + description + "unknown unicast bmac"; + } + } + + grouping L2FIB-PBB-UN { + description + "L2FIB PBB UN"; + container edge { + when "../pbb-type = 'mgmt-l2fib-bridge-type-pbb-edge'" { + description + "../PbbType = 'MGMT_L2FIB_BRIDGE_TYPE_PBB_EDGE'"; + } + description + "edge"; + uses L2FIB-PBB-EDGE-INFO; + } + container core { + when "../pbb-type = 'mgmt-l2fib-bridge-type-pbb-core'" { + description + "../PbbType = 'MGMT_L2FIB_BRIDGE_TYPE_PBB_CORE'"; + } + description + "core"; + uses L2FIB-PBB-CORE-INFO; + } + leaf pbb-type { + type Mgmt-l2fib-bridge; + description + "PbbType"; + } + } + + grouping L2FIB-PBB-INFO { + description + "L2FIB PBB INFO"; + container pbb-union { + description + "Union of Edge and Core"; + uses L2FIB-PBB-UN; + } + leaf bound { + type boolean; + description + "Bound"; + } + leaf forward-class { + type uint8; + description + "Forward Class"; + } + leaf core-pbb-evpn-enabled { + type boolean; + description + "Core PBB-EVPN enabled"; + } + } + + grouping L2FIB-AC-BACKUP-INFO { + description + "L2FIB AC BACKUP INFO"; + container next-hop { + description + "Next Hop"; + uses L2FIB-NHOP-INFO; + } + leaf next-hop-valid { + type boolean; + description + "Is Next Hop Valid"; + } + leaf vc-label { + type uint32; + description + "Virtual Circuit Label"; + } + } + + grouping L2FIB-NHOP-INFO { + description + "L2FIB NHOP INFO"; + leaf type { + type L2fib-nhop; + description + "Nexthop Type"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "NHOP Address"; + } + leaf next-hop-address-v6 { + type inet:ipv6-address; + description + "NHOP Address V6"; + } + leaf next-hop-te-interface-name { + type xr:Interface-name; + description + "NHOP (SR-)TE Interface"; + } + leaf next-hop-lsm-id { + type uint32; + description + "NHOP LSM ID"; + } + leaf next-hop-sr-te-bsid { + type uint32; + description + "NHOP SR-TE Binding Label (BSID)"; + } + leaf next-hop-internal-label { + type uint32; + description + "NHOP Internal Label"; + } + leaf next-hop-internal-id { + type uint32; + description + "NHOP Internal ID"; + } + leaf pin-down-interface-name { + type xr:Interface-name; + description + "Pin-down Interface Name"; + } + leaf ecd-platform-data-valid { + type boolean; + description + "Is Platform ECD Data Valid"; + } + leaf ecd-platform-data-length { + type uint32; + description + "Platform ECD Data Length"; + } + leaf children-count { + type uint32; + description + "Children Count"; + } + leaf children-evpn-ole-count { + type uint32; + description + "Children EVPN OLE Count"; + } + leaf children-mac-count { + type uint32; + description + "Children MAC Count"; + } + leaf children-pwhe-mp-count { + type uint32; + description + "Children PW-HE MainPort Count"; + } + leaf children-ac-backup-count { + type uint32; + description + "Children AC-BACKUP Count"; + } + leaf children-interface-list-count { + type uint32; + description + "Children IFL Count"; + } + } + + grouping L2FIB-ADJACENCY-INFO { + description + "L2FIB ADJACENCY INFO"; + leaf is-valid { + type boolean; + description + "Whether the adjacency is valid"; + } + leaf ipv4 { + type inet:ipv4-address; + description + "IPv4 address of adjacency"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name of adjacency"; + } + } + + grouping L2FIB-AC-INFO { + description + "L2FIB AC INFO"; + container adjacency { + description + "Adjacency"; + uses L2FIB-ADJACENCY-INFO; + } + container fxc-next-hop { + description + "Flexible XConnect Service Next Hop"; + uses L2FIB-NHOP-INFO; + } + container ac-backup { + description + "AC Backup information"; + uses L2FIB-AC-BACKUP-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf sub-interface-handle { + type xr:Interface-name; + description + "Sub Interface Handle"; + } + leaf attachment-circuit-id { + type uint32; + description + "Attachment Circuit ID"; + } + leaf attachment-circuit-mtu { + type uint16; + description + "MTU of Attachment Circuit"; + } + leaf actype { + type uint8; + description + "Attachment Circuit Type"; + } + leaf inter-working-mode { + type uint8; + description + "Interworking Mode"; + } + leaf bound { + type boolean; + description + "Bound"; + } + leaf ip-inter-working-mac { + type string; + description + "IP Interworking MAC"; + } + leaf redundancy-group-id { + type uint32; + description + "ICCP Redundancy Group ID"; + } + leaf redundancy-object-id { + type uint64; + description + "ICCP Redundancy Object ID"; + } + leaf evpn-internal-label { + type uint32; + description + "EVPN Internal Label"; + } + leaf etree-leaf { + type boolean; + description + "E-Tree Leaf Indication"; + } + leaf fxc-next-hop-valid { + type boolean; + description + "Is Flexible XConnect Service Next Hop Valid"; + } + leaf rewrittenvlan-id-count { + type uint8; + description + "Number of rewritten VLAN IDs"; + } + leaf rewritten-first-vlan-id { + type uint16; + description + "First rewritten VLAN ID"; + } + leaf rewritten-second-vlan-id { + type uint16; + description + "Second rewritten VLAN ID"; + } + } + + grouping L2FIB-SEG1-UN { + description + "L2FIB SEG1 UN"; + container ac { + when "../data-type = 'mgmt-l2fib-data-type-ac'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_AC'"; + } + description + "ac"; + uses L2FIB-AC-INFO; + } + container pbb { + when "../data-type = 'mgmt-l2fib-data-type-pbb'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_PBB'"; + } + description + "pbb"; + uses L2FIB-PBB-INFO; + } + container vni { + when "../data-type = 'mgmt-l2fib-data-type-vni'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_VNI'"; + } + description + "vni"; + uses L2FIB-VNI-INFO; + } + container evpn { + when "../data-type = 'mgmt-l2fib-data-type-evpn'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_EVPN'"; + } + description + "evpn"; + uses L2FIB-EVPN-INFO; + } + container monitor-session { + when "../data-type = 'mgmt-l2fib-data-type-span'" { + description + "../DataType = 'MGMT_L2FIB_DATA_TYPE_SPAN'"; + } + description + "monitor session"; + uses L2FIB-MONITOR-SESSION-INFO; + } + container pw { + when "../data-type != 'mgmt-l2fib-data-type-ac' and ../data-type != 'mgmt-l2fib-data-type-pbb' and ../data-type != 'mgmt-l2fib-data-type-vni' and ../data-type != 'mgmt-l2fib-data-type-evpn' and ../data-type != 'mgmt-l2fib-data-type-span'" { + description + "../DataType != 'MGMT_L2FIB_DATA_TYPE_AC' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_PBB' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_VNI' and . + ./DataType != 'MGMT_L2FIB_DATA_TYPE_EVPN' and + ../DataType != 'MGMT_L2FIB_DATA_TYPE_SPAN'"; + } + description + "pw"; + uses L2FIB-PW-INFO; + } + leaf data-type { + type Mgmt-l2fib-data; + description + "DataType"; + } + } + + grouping L2FIB-XCON-INFO { + description + "L2FIB XCON INFO"; + container segment1 { + description + "Segment1 Information"; + uses L2FIB-SEG1-UN; + } + container segment2 { + description + "Segment2 Information"; + uses L2FIB-SEG2-UN; + } + leaf xcon-name { + type string { + length "0..72"; + } + description + "Xconnect name"; + } + leaf bound { + type boolean; + description + "Bound"; + } + leaf switching-type { + type Mgmt-l2fib-switching; + description + "SW Type"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper.yang new file mode 100644 index 000000000..6aa39cdbb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-l2vpn-oper.yang @@ -0,0 +1,2862 @@ +module Cisco-IOS-XR-l2vpn-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-l2vpn-oper"; + prefix l2vpn-oper; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-l2vpn-oper-sub5 { + revision-date 2023-02-10; + } + include Cisco-IOS-XR-l2vpn-oper-sub4 { + revision-date 2023-02-10; + } + include Cisco-IOS-XR-l2vpn-oper-sub3 { + revision-date 2023-02-10; + } + include Cisco-IOS-XR-l2vpn-oper-sub2 { + revision-date 2023-02-10; + } + include Cisco-IOS-XR-l2vpn-oper-sub1 { + revision-date 2023-02-10; + } + + 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 l2vpn package operational data. + + This module contains definitions + for the following management objects: + l2vpn-forwarding: Show L2VPN forwarding + l2vpnv2: L2VPN operational data to support active and standby. + L2VPN has been deprecated + ea-pwhe: EA PWHE operational data + generic-interface-list-v2: Generic Interface List operational + data + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-10 { + description + "- Add more states to l2fib-evpn-ip4mac and l2fib-evpn-ip6mac, remove arp-nd-delete-pending. + 2022-09-28 + - Added Global ID for PWHE IDBs. + 2022-09-14 + - Added evpn-esi-id for bridge port. + 2022-09-12 + - Added Attachment-Circuit to IP Tunnel cross-connect type. + 2022-09-07 + - Added IPv6 fields to VNI info - Added EVPN Peer ES down - Added internal-id to EVPN MOI context + 2022-09-01 + - Added internal-id to pseudowire-headend detail-interface IosSetYangSchemaRev Cisco-IOS-XR-l2vpn-oper + 2022-08-30 + - l2fib-summary: Added VXLAN nexthop information + 2022-08-09 + - Added L2VPN-VXLAN-TUNNEL grouping. - Added vxlan-tunnel container to L2VPN-SEGMENT grouping. + 2022-08-08 + - Added ESI ID for used in ESI filtering + 2022-07-06 + - Added new ID MGR App type for Auto RD per EVI + 2022-06-24 + - Update format of l2fib-message-summary + 2022-06-06 + - l2fib-evpn-incl-mcast-ole: Removed SRv6 SID format and added VNI ID to naming + 2022-05-30 + - Added a new leaf mac-limit-enabled to L2VPN-BRIDGE-SEC-PARAM. + 2022-05-26 + Refactored ES Service Carving Arrays + 2022-05-03 + - Added mac-limit-enabled - Removed duplicate fields + 2022-04-14 + - Add new APP type in IDMGR + 2022-03-21 + - Removed legacy and override ESI types + 2022-03-14 + - Added new members to main-interface-info protect-type + 2022-03-09 + - l2fib-mroute-port: Added hardware-information leaf. + 2022-03-08 + - Add EVPN unicast-label and multicast-label. + 2022-02-24 + - l2fib-mroute-port: Added pin-down-interface-name leaf. + 2022-02-09 + - Added l2fib-l3-sync-interfaces - Update keys of l2fib-mroute-port - Add l2fib-evpn-etree-remote - Update keys of l2fib-evpn-incl-mcast-ole - Add l2fib-mroute-ipv6-summary - Only expose valid keys and members of l2fib-mac-learning-mac, l2fib-mac-learning-mac-ipv4, and l2fib-mac-learning-mac-ipv6"; + semver:module-version "6.0.0"; + } + revision 2021-09-07 { + description + "- Added SRv6 nhop + 2021-08-24 + Updated l2vpn forwarding adjacencies to expose both interface and address information. + 2021-08-13 + - Changed flag-extension to 32bit + 2021-07-20 + - Added support for MAC is-cfm flag"; + semver:module-version "5.0.0"; + } + revision 2020-05-05 { + description + "changes related to treat SRv6 and SID as well-known when parsing XML for yang"; + semver:module-version "4.0.0"; + } + revision 2020-04-28 { + description + "- AC Backup related changes + 2020-01-22 + - PWGROUP related changes + 2019-12-20 + - EVPN-VPWS related changes - SR-TE policy related changes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-03-30 { + description + "- Rename l2fib-mac-learning-mac* interface-handle to interface-name - Rename l2fib-pw-group tunnel-if-handle to tunnel-interface-name - Convert several array from leaf-list to list syntax. - Implement range datatypes for all L2FIB integers."; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2tpv2-session-id-range { + type uint32 { + range "0..65535"; + } + description + "L2tpv2 session id range"; + } + + typedef Msti-range { + type uint32 { + range "0..1004"; + } + description + "Msti range"; + } + + typedef G8032-ring-instance-range { + type uint32 { + range "0..4294967295"; + } + description + "G8032 ring instance range"; + } + + typedef Main-interface-id-range { + type uint32 { + range "0..4294967295"; + } + description + "Main interface id range"; + } + + typedef L2vpn-service { + type enumeration { + enum "vpws" { + value 0; + description + "VPWS service"; + } + enum "vpls" { + value 1; + description + "VPLS service"; + } + } + description + "L2vpn service"; + } + + typedef Bridge-id-range { + type uint32 { + range "0..262144"; + } + description + "Bridge id range"; + } + + typedef L2fib-evpn-xid { + type enumeration { + enum "none" { + value 0; + description + "Not an EVPN XID"; + } + enum "evpn-xid" { + value 16384; + description + "EVPN XID BUM MOI ID type"; + } + enum "evpn-moi-id" { + value 32768; + description + "EVPN XID to MOI ID type"; + } + } + description + "L2fib evpn xid"; + } + + typedef Lsm-id-range { + type uint32 { + range "1..1048574"; + } + description + "Lsm id range"; + } + + typedef P2mp-id-range { + type uint32 { + range "0..4294967295"; + } + description + "P2mp id range"; + } + + typedef Tunnel-id-range { + type uint32 { + range "0..65535"; + } + description + "Tunnel id range"; + } + + typedef L2tpv3-session-id-range { + type uint32 { + range "0..4294967295"; + } + description + "L2tpv3 session id range"; + } + + typedef Preferred-path-option { + type enumeration { + enum "te-tunnel" { + value 2; + description + "TE Tunnel"; + } + enum "ip-tunnel" { + value 3; + description + "IP Tunnel"; + } + enum "tp-tunnel" { + value 4; + description + "TP Tunnel"; + } + enum "sr-te-policy" { + value 5; + description + "SR TE Policy"; + } + enum "mldp-tunnel" { + value 6; + description + "mLDP Tunnel"; + } + enum "mte-tunnel" { + value 7; + description + "mTE Tunnel"; + } + enum "named-te-tunnel" { + value 8; + description + "Named TE Tunnel"; + } + } + description + "Preferred path option"; + } + + typedef Evpn-main-interface { + type enumeration { + enum "evpn-main-interface-ac" { + value 1; + description + "EVPN main interface type AC"; + } + enum "evpn-main-interface-nve" { + value 2; + description + "EVPN main interface type NVE"; + } + enum "evpn-main-interface-ac-vfi" { + value 3; + description + "EVPN main interface type AC VFI"; + } + enum "evpn-main-interface-ac-pw" { + value 4; + description + "EVPN main interface type AC PW"; + } + } + description + "Evpn main interface"; + } + + typedef L2fib-evpn-incl-mcast-ole-key { + type enumeration { + enum "label" { + value 0; + description + "Label key type"; + } + enum "srv6" { + value 1; + description + "SRv6 key type"; + } + enum "vni" { + value 2; + description + "VNI key type"; + } + } + description + "L2fib evpn incl mcast ole key"; + } + + typedef L2fib-next-hop-key { + type enumeration { + enum "nexthop-ipv4" { + value 1; + description + "IPv4 Nexthop type"; + } + enum "nexthop-mpls-internal-label" { + value 2; + description + "MPLS Internal-Label Nexthop type"; + } + enum "nexthop-ipv6" { + value 3; + description + "IPv6 Nexthop type"; + } + enum "nexthop-vx-lan-internal-label" { + value 4; + description + "Vxlan Internal-Label Nexthop type"; + } + enum "nexthop-sr-te-bsid" { + value 5; + description + "SR-TE BindingSID Nexthop type"; + } + enum "nexthop-te-tunnel" { + value 6; + description + "TE Tunnel Nexthop type"; + } + enum "nexthop-lsm-id" { + value 7; + description + "LSM ID Nexthop type"; + } + enum "nexthop-iid" { + value 8; + description + "Internal-ID Nexthop type"; + } + } + description + "L2fib next hop key"; + } + + typedef Pw-group-id-range { + type uint32 { + range "0..4294967295"; + } + description + "Pw group id range"; + } + + typedef L2vpnp2mp-ptree { + type enumeration { + enum "rsvp-te" { + value 1; + description + "RSVPTE Type"; + } + enum "mldp" { + value 2; + description + "MLDP Type"; + } + } + description + "L2vpnp2mp ptree"; + } + + typedef Rib-iid-range { + type uint32 { + range "0..4294967295"; + } + description + "Rib iid range"; + } + + typedef L2vpnpw { + type enumeration { + enum "manual" { + value 1; + description + "Manual pseudowire"; + } + enum "vpls-autodiscovered" { + value 2; + description + "VPLS autodiscovered pseudowire"; + } + enum "vpws-autodiscovered" { + value 3; + description + "VPWS autodiscovered pseudowire"; + } + enum "vpls-autodiscovered-ldp" { + value 4; + description + "VPLS autodiscovered pseudowire with LDP + signaling"; + } + } + description + "L2vpnpw"; + } + + grouping SRTE-POLICY-TABLE { + description + "Common node of active, standby, node"; + container srte-policies { + description + "SRTE Policy Table"; + list srte-policy { + description + "SRTE Policy information"; + leaf color { + type uint32; + description + "Policy Color"; + } + leaf endpoint { + type inet:ip-address-no-zone; + description + "Policy Endpoint IP Address"; + } + uses L2VPN-SRTE-POLICY; + } + } + } + + grouping FLEXIBLE-XCONNECT-SERVICE-TABLE { + description + "Common node of active, standby, node"; + container flexible-xconnect-services { + description + "Flexible XConnect Service Table"; + list flexible-xconnect-service { + key "name"; + description + "Flexible XConnect Service Information"; + container flexible-xconnect-service-acs { + description + "Flexible XConnect Service Attachment Circuit + Table"; + list flexible-xconnect-service-ac { + key "interface-name"; + description + "Flexible XConnect Service Attachment Circuit"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses L2VPN-FXC-AC; + } + } + container flexible-xconnect-service-info { + description + "Flexible XConnect Service Information"; + uses L2VPN-FXC; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..23"; + } + description + "Flexible XConnect Service Name"; + } + } + } + } + + grouping XCONNECT-MP2MP-TABLE { + description + "Common node of active, standby, node"; + container xconnect-mp2mps { + description + "XConnect MP2MP Table"; + list xconnect-mp2mp { + key "group-name mp2-mp-name"; + description + "XConnect MP2MP information"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "XConnect Group"; + } + leaf mp2-mp-name { + type xr:Cisco-ios-xr-string { + length "1..26"; + } + description + "Mp2Mp Name"; + } + uses L2VPN-MP2MP-XC; + } + } + } + + grouping FLEXIBLE-XCONNECT-SERVICE-SUMMARY { + description + "Common node of active, standby, node"; + container flexible-xconnect-service-summary { + description + "Flexible XConnect Service summary information"; + uses L2VPN-FXC-SUMMARY; + } + } + + grouping DISCOVERY-SUMMARY { + description + "Common node of active, standby, node"; + container discovery-summary { + description + "Discovery summary information"; + uses L2VPN-DISCO-SUMMARY; + } + } + + grouping XCONNECT-GROUP-TABLE { + description + "Common node of active, standby, node"; + container xconnect-groups { + description + "XConnect group Table"; + list xconnect-group { + key "group-name"; + description + "XConnect group information"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "XConnect Group"; + } + uses L2VPN-GROUP; + } + } + } + + grouping MSTP-PORT-TABLE { + description + "Common node of active, standby, node"; + container mstp-ports { + description + "L2VPN MSTP Port Table"; + list mstp-port { + key "interface"; + description + "MSTP Port information"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses L2VPN-MSTP-PORT; + } + } + } + + grouping PWR { + description + "Common node of active, standby, node"; + container pwr { + description + "Pseudowire Routing Table"; + container summary { + description + "L2VPN Pseudowire Routing Summary"; + uses L2VPN-ATOM-PWR-SUMMARY; + } + } + } + + grouping GENERIC-INTERFACE-LIST-TABLE { + description + "Common node of active, standby, node"; + container generic-interface-lists { + description + "L2VPN generic interface list Table"; + list generic-interface-list { + key "interface-list-name"; + description + "Generic Interface List information"; + leaf interface-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Generic Interface List Name"; + } + uses L2VPN-GENERIC-IF-LIST; + } + } + } + + grouping MAIN-INTERFACE-TABLE { + description + "Common node of active, standby, node"; + container main-interfaces { + description + "Main Interface"; + list main-interface { + key "interface-name"; + description + "Main Interface Table"; + container main-interface-instances { + description + "Main Interface Instance table"; + list main-interface-instance { + key "instance"; + description + "Main Interface Instance"; + container main-interface-instance-info { + description + "Main Interface Instance info"; + uses L2VPN-MAIN-INTERFACE-INSTANCE; + } + container main-interface-instance-bridge-ports { + description + "Main Interface Instance Bridge Port table"; + list main-interface-instance-bridge-port { + key "bridge-port"; + description + "Main Interface Bridge Port info"; + leaf bridge-port { + type xr:Interface-name; + description + "Bridge Port"; + } + uses L2VPN-MAIN-INTERFACE-INSTANCE-BPORT; + } + } + leaf instance { + type Msti-range; + description + "Instance"; + } + } + } + container main-interface-info { + description + "Main Interface info"; + uses L2VPN-MAIN-INTERFACE; + } + leaf interface-name { + type xr:Interface-name; + description + "Main interface"; + } + } + } + } + + grouping PREFERRED-PATH-TABLE { + description + "Common node of active, standby, node"; + container preferred-paths { + description + "Preferred path Table"; + list preferred-path { + description + "Preferred path information"; + leaf preferred-type { + type Preferred-path-option; + description + "Preferred type"; + } + leaf interface-name { + type xr:Interface-name; + description + "Main interface"; + } + uses L2VPN-PREFERRED-PATH; + } + } + } + + grouping DISCOVERY-TABLE { + description + "Common node of active, standby, node"; + container discoveries { + description + "Discovery Table"; + list discovery { + description + "VPLS Discovery information"; + leaf service-name { + type L2vpn-service; + description + "Service type"; + } + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Group Name"; + } + leaf vpn-name { + type xr:Cisco-ios-xr-string { + length "1..27"; + } + description + "VPN Name"; + } + uses L2VPN-DISCO; + } + } + } + + grouping XCONNECT-BRIEF { + description + "Common node of active, standby, node"; + container xconnect-brief { + description + "XConnect brief information"; + uses L2VPN-XC-BRIEF; + } + } + + grouping L2FIB-EVPN-INCL-MCAST-LEAF-INFO { + description + "Common node of l2fib-evpn-incl-mcast-leaf, + l2fib-evpn-incl-mcast-leaf-hardware-ingress, + l2fib-evpn-incl-mcast-leaf-hardware-egress"; + container l2fib-evpn-incl-mcast-leaf-info { + description + "L2FIB EVPN inclusive multicast leaf information"; + uses L2FIB-EVPN-MCAST-LEAF-INFO; + } + } + + grouping G8032 { + description + "Common node of active, standby, node"; + container g8032 { + description + "G8032 information"; + container g8032-rings { + description + "G8032 Ring table"; + list g8032-ring { + key "ring-name"; + description + "G8032 Ring"; + container g8032-ring-detail { + description + "G8032 Ring detailed information"; + uses L2VPN-G8032-RING-DETAIL-INFO; + } + container g8032-ring-instance-summaries { + description + "G8032 Ring Instance summary table"; + list g8032-ring-instance-summary { + key "instance"; + description + "G8032 Ring Instance summary information"; + leaf instance { + type uint32; + description + "Instance"; + } + uses L2VPN-G8032-RING-INSTANCE-SUMMARY-INFO; + } + } + container g8032-ring-summary { + description + "G8032 Ring summary information"; + uses L2VPN-G8032-RING-SUMMARY-INFO; + } + container g8032-ring-instance-details { + description + "G8032 Ring Instance detail table"; + list g8032-ring-instance-detail { + key "instance"; + description + "G8032 Ring Instance detailed information"; + leaf instance { + type G8032-ring-instance-range; + description + "Instance"; + } + uses L2VPN-G8032-RING-INSTANCE-DETAIL-INFO; + } + } + leaf ring-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Ring Name"; + } + } + } + } + } + + grouping XCONNECT-SUMMARY { + description + "Common node of active, standby, node"; + container xconnect-summary { + description + "XConnect summary information"; + uses L2VPN-XC-SUMMARY; + } + } + + grouping L2VPN-COLLABORATORS { + description + "Common node of active, standby, node"; + container l2vpn-collaborators { + description + "L2VPN collaborator information"; + uses L2VPN-GLOBAL-INFO; + } + } + + grouping L2VPN-CACDB { + description + "Common node of active, standby, node"; + container policy-names { + description + "L2VPN CAC-DB"; + list policy-name { + key "policy-name"; + description + "Policy Name"; + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy"; + } + uses L2VPN-CAC-DB; + } + } + } + + grouping PROC-FSM { + description + "Common node of active, standby, nodeCommon node + of active, standby, node"; + container proc-fsm { + description + "L2VPN Process FSM information"; + uses L2VPN-MGMT-PROC-FSM; + } + } + + grouping BRIDGE-PW-TABLE { + description + "Common node of bridge-core-vfi-table, + bridge-access-vfi-table"; + container bridge-pws { + description + "Bridge Domain Access/Core Pseudowire Table"; + list bridge-pw { + description + "Bridge Domain Pseudowire"; + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IPv4 address"; + } + leaf pw-type { + type L2vpnpw; + description + "PW Type"; + } + leaf pseudowire-id { + type uint32 { + range "1..4294967295"; + } + description + "Pseudowire ID"; + } + leaf ve-id-vpls-id-0-3 { + type uint32 { + range "0..4294967295"; + } + description + "Zero or concatenation of local and remote + VE-ID or first 4 bytes of VPLS-ID"; + } + leaf vpls-id-4-7 { + type uint32 { + range "0..4294967295"; + } + description + "Zero or Last 4 bytes of VPLS-ID"; + } + uses L2VPN-BD-PW; + } + } + } + + grouping GLOBAL-SETTINGS { + description + "Common node of active, standby, node"; + container global-settings { + description + "L2VPN global settings"; + uses L2VPN-GLOBALS; + } + } + + grouping L2FIB-EVPN-INCL-MCAST-OLE-TABLE { + description + "Common node of l2fib-evpn-incl-mcast-leaf, + l2fib-evpn-incl-mcast-leaf-hardware-ingress, + l2fib-evpn-incl-mcast-leaf-hardware-egress"; + container l2fib-evpn-incl-mcast-oles { + description + "L2FIB EVPN inclusive multicast output list + element table"; + list l2fib-evpn-incl-mcast-ole { + description + "L2FIB EVPN inclusive multicast output list + element"; + leaf key-type { + type L2fib-evpn-incl-mcast-ole-key; + description + "Key type"; + } + leaf moi-id { + type uint32; + description + "MOI ID"; + } + leaf srv6-sid { + type inet:ip-address-no-zone; + description + "SRv6 SID"; + } + leaf label { + type uint32 { + range "0..1048575"; + } + description + "Label"; + } + leaf vniid { + type xr:Hex-integer; + description + "VNI ID"; + } + uses L2FIB-EVPN-MCAST-OLE-INFO; + } + } + } + + grouping BRIDGE-SUMMARY { + description + "Common node of active, standby, node"; + container bridge-summary { + description + "Bridge Domain summary information"; + uses L2VPN-BRIDGE-SUMMARY; + } + } + + grouping XCONNECT-MP2MP-CE2CE-TABLE { + description + "Common node of active, standby, node"; + container xconnect-mp2mp-ce2ces { + description + "XConnect MP2MP CE2CE Table"; + list xconnect-mp2mp-ce2ce { + description + "XConnect MP2MP CE2CE information"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "XConnect Group"; + } + leaf mp2-mp-name { + type xr:Cisco-ios-xr-string { + length "1..26"; + } + description + "Mp2Mp Name"; + } + leaf local-ceid { + type uint32 { + range "1..4294967295"; + } + description + "Local CE ID"; + } + leaf remote-ceid { + type uint32 { + range "1..4294967295"; + } + description + "Remote CE ID"; + } + uses L2VPN-XC; + } + } + } + + grouping L2VPN-OPER-L2VPN-RESOURCE-STATE-MP { + description + "Common node of active, standby, node"; + container l2vpn-resource-state { + description + "L2VPN resource state information"; + uses L2VPN-RESOURCE-STATE; + } + } + + grouping MSTP-VLAN-TABLE { + description + "Common node of active, standby, node"; + container mstp-vlans { + description + "L2VPN MSTP VLAN Table"; + list mstp-vlan { + key "vlan-id"; + description + "L2VPN MSTP VLAN information"; + leaf vlan-id { + type uint32 { + range "0..4098"; + } + description + "vlan id"; + } + uses L2VPN-MSTP-VLAN; + } + } + } + + grouping GENERIC-INTERFACE-LIST-DETAIL-TABLE { + description + "Common node of active, standby, node"; + container generic-interface-list-details { + description + "L2VPN generic interface list Detail Table"; + list generic-interface-list-detail { + key "interface-list-name"; + description + "Generic Interface List detail information"; + leaf interface-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Generic Interface List Name"; + } + uses L2VPN-GENERIC-IF-LIST-DETAIL; + } + } + } + + grouping GENERIC-INTERFACE-LIST-TABLE-V2 { + description + "Common node of active, standby, node"; + container generic-interface-lists { + description + "Generic interface list table"; + list generic-interface-list { + key "generic-interface-list-name"; + description + "Generic Interface List"; + leaf generic-interface-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Generic Interface List Name"; + } + uses IFLIST-IFL; + } + } + } + + grouping XCONNECT-TABLE { + description + "Common node of active, standby, node"; + container xconnects { + description + "XConnect Table"; + list xconnect { + key "group-name xconnect-name"; + description + "XConnect information"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "XConnect Group"; + } + leaf xconnect-name { + type string { + length "1..38"; + } + description + "XConnect Name"; + } + uses L2VPN-XC; + } + } + } + + grouping L2VPN-PBB-BSA { + description + "Common node of active, standby, node"; + container l2vpn-pbb-bsa { + description + "L2VPN PBB Backbone Source MAC information"; + uses L2VPN-PBB-BMAC-SA; + } + } + + grouping BRIDGE-DOMAIN-TABLE { + description + "Common node of active, standby, node"; + container bridge-domains { + description + "Bridge Domain Information"; + list bridge-domain { + key "bridge-domain-group-name bridge-domain-name"; + description + "Bridge Domain Information"; + container bridge-access-vfi-table { + description + "Bridge Domain Access VFI Table"; + uses BRIDGE-PW-TABLE; + } + container bridge-core-vfi-table { + description + "Bridge Domain Core VFI Table"; + uses BRIDGE-PW-TABLE; + } + container bridge-acs { + description + "Bridge Domain Attachment Circuit Table"; + list bridge-ac { + key "interface-name"; + description + "Bridge Domain Attachment Circuit"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses L2VPN-BD-AC; + } + } + container bridge-access-pws { + description + "Bridge Domain Access Pseudowire Table"; + list bridge-access-pw { + description + "Bridge Domain Access Pseudowire"; + leaf neighbor { + type inet:ipv4-address-no-zone; + description + "Neighbor IPv4 address"; + } + leaf pw-type { + type L2vpnpw; + description + "PW Type"; + } + leaf pseudowire-id { + type uint32 { + range "1..4294967295"; + } + description + "Pseudowire ID"; + } + leaf ve-id-vpls-id-0-3 { + type uint32 { + range "0..4294967295"; + } + description + "Zero or concatenation of local and remote + VE-ID or first 4 bytes of VPLS-ID"; + } + leaf vpls-id-4-7 { + type uint32 { + range "0..4294967295"; + } + description + "Zero or Last 4 bytes of VPLS-ID"; + } + uses L2VPN-BD-PW; + } + } + container bridge-domain-info { + description + "Bridge Domain Information"; + uses L2VPN-BRIDGE; + } + leaf bridge-domain-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Domain Group Name"; + } + leaf bridge-domain-name { + type xr:Cisco-ios-xr-string { + length "1..27"; + } + description + "Bridge Domain Name"; + } + } + } + } + + grouping ICCP-SM { + description + "Common node of active, standby, node"; + container iccp-sm { + description + "ICCP-based Service Multi-homing operational data"; + container iccp-sm-summary { + description + "ICCP-based Service Multi-homing database + summary"; + uses ICCP-SM-SUMMARY; + } + container iccp-groups { + description + "ICCP Group Table"; + list iccp-group { + key "group-id"; + description + "ICCP Group"; + container iccp-group-info { + description + "ICCP Group Information"; + uses ICCP-SM-GROUP; + } + container iccp-ports { + description + "ICCP Port Table"; + list iccp-port { + key "interface"; + description + "ICCP Port"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses ICCP-SM-PORT; + } + } + leaf group-id { + type uint32 { + range "1..4294967295"; + } + description + "Group ID"; + } + } + } + } + } + + grouping INDEX-TABLE { + description + "Common node of active, standby, node"; + container indexes { + description + "ID Manager Index Table"; + list index { + key "pool-id"; + description + "ID Manager Index Pool"; + leaf pool-id { + type xr:Hex-integer; + description + "Pool ID"; + } + uses L2VPN-INDEX-INFO; + } + } + } + + grouping NSR { + description + "Common node of active, standby, node"; + container nsr { + description + "L2VPN NSR information"; + uses L2VPN-MGMT-PROC-FSM; + } + } + + grouping PSEUDOWIRE-CLASS-TABLE { + description + "Common node of active, standby, node"; + container pseudowire-classes { + description + "List of pseudowire classes"; + list pseudowire-class { + key "pseudowire-class-name"; + description + "Pseudowire class information"; + leaf pseudowire-class-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Pseudowire Class Name"; + } + uses L2VPN-PW-CLASS; + } + } + } + + grouping MVRP { + description + "Common node of active, standby, node"; + container mvrp { + description + "MVRP"; + container mvrp-main-ports { + description + "MVRP Main Port Table"; + list mvrp-main-port { + key "main-port-interface-name"; + description + "MVRP Main Port"; + container mvrp-main-port-info { + description + "MVRP Main Port Information"; + uses L2VPN-MVRP; + } + container mvrp-bridge-ports { + description + "MVRP Bridge Port Table"; + list mvrp-bridge-port { + key "interface-name"; + description + "MVRP Bridge Port Information"; + leaf interface-name { + type xr:Interface-name; + description + "Bridge Port Interface Name"; + } + uses L2VPN-MVRP-BP; + } + } + leaf main-port-interface-name { + type xr:Interface-name; + description + "Main Port interface"; + } + } + } + } + } + + container l2vpn-forwarding { + config false; + description + "Show L2VPN forwarding"; + container nodes { + description + "Per node L2VPN forwarding Operational data"; + list node { + key "node-id"; + description + "The L2VPN forwarding Operational data for a + particular node"; + container l2fibx-con-locals { + description + "The L2VPN forwarding Local LC XConnect Detail + Table"; + list l2fibx-con-local { + description + "Specify Sub Ifh"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf vsp-vlan-id { + type uint32 { + range "0..4094"; + } + description + "VLAN-Switched Port VLAN ID"; + } + uses L2FIB-XCON-INFO; + } + } + container l2fib-evpn-e-tree-remotes { + description + "EVPN ETREE Remote Information Table"; + list l2fib-evpn-e-tree-remote { + key "next-hop-address"; + description + "EVPN ETREE Remote Information"; + leaf next-hop-address { + type inet:ip-address-no-zone; + description + "NHOP Address"; + } + uses L2FIB-EVPN-REMOTE-SHG-INFO; + } + } + container l2fib-mroute-summaries { + description + "Mroute Summary Table"; + list l2fib-mroute-summary { + description + "Multicast Summary Information"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Group Name"; + } + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-MCAST-SUMMARY-INFO; + } + } + container l2fib-message-summary { + description + "L2FIB Message Summary information"; + uses L2FIB-EXT-MSG-SUMMARY-INFO; + } + container l2fib-mroutes { + description + "multicast information"; + list l2fib-mroute { + description + "Bridge Domain Multicast Information"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf source { + type inet:ipv4-address-no-zone; + description + "Source IP Address"; + } + leaf group { + type inet:ipv4-address-no-zone; + description + "Group IP Address"; + } + uses L2FIB-MCAST-LEAF-INFO; + } + } + container pbb-bmac-sa { + description + "PBB Backbone Source MAC information"; + uses L2FIB-PBB-BMAC-SA-INFO; + } + container l2fib-mac-learning { + description + "The L2VPN forwarding Mac Learning Data"; + container l2fib-mac-learning-macs { + description + "The L2VPN forwarding All Mac Learning Table"; + list l2fib-mac-learning-mac { + description + "The attributes for a particular learned Mac + Route"; + leaf bdid { + type Bridge-id-range; + description + "BD ID"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + uses L2FIB-MAC-DB-INFO; + } + } + container l2fib-mac-learning-mac-ipv4s { + description + "The L2VPN forwarding Mac IPV4 Learning Table"; + list l2fib-mac-learning-mac-ipv4 { + description + "The attributes for a particular learned IPV4 + Mac Route"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf address { + type inet:ip-address-no-zone; + description + "IP Address"; + } + uses L2FIB-MAC-DB-INFO; + } + } + container l2fib-mac-learning-mac-ipv6s { + description + "The L2VPN forwarding Mac IPV6 Learning Table"; + list l2fib-mac-learning-mac-ipv6 { + description + "The attributes for a particular learned IPV6 + Mac Route"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf address { + type inet:ip-address-no-zone; + description + "IP Address"; + } + uses L2FIB-MAC-DB-INFO; + } + } + } + container l2fib-p2mp { + description + "p2mp information"; + container ptrees { + description + "ptree information"; + list ptree { + description + "P2MP PTree Information"; + leaf ptree-type { + type L2vpnp2mp-ptree; + description + "PTree Type"; + } + leaf lsm-id { + type Lsm-id-range; + description + "LSM Id"; + } + leaf tunnel-id { + type Tunnel-id-range; + description + "Tunnel Id"; + } + leaf p2mp-id { + type P2mp-id-range; + description + "P2MP Id"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel Id"; + } + uses L2FIB-P2MP-PTREE-INFO; + } + } + } + container l2fibmac-hardware-ingresses { + description + "Bridge Hardware Ingress information"; + list l2fibmac-hardware-ingress { + description + "MAC Hardware Ingress information"; + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Group Name"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..27"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-BRIDGE-MAC-INFO; + } + } + container l2fib-evpn-ip4macs { + description + "EVPN IPv4-MAC Table"; + list l2fib-evpn-ip4mac { + description + "The attributes for a particular EVPN IPv4-MAC + Entry"; + leaf bdid { + type Bridge-id-range; + description + "BD ID"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP Address"; + } + leaf is-local { + type boolean; + description + "Entry is locally learned"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + uses L2FIB-EVPN-IPMAC-INFO; + } + } + container l2fib-pwhe-main-ports { + description + "PWHE Main-port table"; + list l2fib-pwhe-main-port { + key "interface-name"; + description + "PWHE Main-port"; + leaf interface-name { + type xr:Interface-name; + description + "PWHE Main-port"; + } + uses L2FIB-PWHE-MP-SHOW-INFO; + } + } + container l2fib-dhcp-binding-count { + description + "DHCP binding forwarding total count"; + uses L2FIB-DHCP-BINDING-COUNT-INFO; + } + container l2fib-bridge-domains { + description + "Bridge Domain forwarding detail"; + list l2fib-bridge-domain { + description + "Specify Bridge Domain Name"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Bridge group"; + } + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-BRIDGE-INFO; + } + } + container l2fib-mstp-summaries { + description + "MSTP Summary Table"; + list l2fib-mstp-summary { + description + "MSTP Summary information"; + leaf parent-interface { + type xr:Interface-name; + description + "Parent interface context"; + } + leaf main-interface-type { + type Evpn-main-interface; + description + "Main port interface type"; + } + leaf msti { + type Msti-range; + description + "MSTI context"; + } + uses L2FIB-MAIN-PORT-MSTP-SUMMARY-INFO; + } + } + container l2fib-resource-availability { + description + "Resource availability information"; + uses L2FIB-RSRC-INFO; + } + container l2fibmac-hardware-egresses { + description + "Bridge Hardware Egress information"; + list l2fibmac-hardware-egress { + description + "MAC Hardware Egress information"; + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Group Name"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..27"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-BRIDGE-MAC-INFO; + } + } + container l2fib-evpn-incl-mcast-leaf-hardware-ingresses { + description + "L2FIB hardware egress EVPN inclusive multicast + leaf table"; + list l2fib-evpn-incl-mcast-leaf-hardware-ingress { + description + "L2FIB hardware ingress EVPN inclusive + multicast leaf"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Bridge group"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf xcid { + type xr:Hex-integer; + description + "XC ID"; + } + uses L2FIB-EVPN-INCL-MCAST-OLE-TABLE; + uses L2FIB-EVPN-INCL-MCAST-LEAF-INFO; + } + } + container l2fib-l3-sync-interfaces { + description + "L3-Sync interface table"; + list l2fib-l3-sync-interface { + key "interface-name"; + description + "L3-Sync interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses L2FIB-L3-SYNC-INTF-INFO; + } + } + container l2fibx-con-l2tpv2s { + description + "The L2VPN forwarding XConnect L2TPv2 Detail + Table"; + list l2fibx-con-l2tpv2 { + description + "Specify Sub Ifh"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf vsp-vlan-id { + type uint32 { + range "0..4094"; + } + description + "VLAN-Switched Port VLAN ID"; + } + uses L2FIB-XCON-INFO; + } + } + container l2fib-mroute-ipv6s { + description + "multicast information"; + list l2fib-mroute-ipv6 { + description + "Bridge Domain Multicast Information"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf source { + type inet:ip-address-no-zone; + description + "Source IPv6 Address"; + } + leaf group { + type inet:ip-address-no-zone; + description + "Group IPv6 Address"; + } + uses L2FIB-MCAST-LEAF-INFO; + } + } + container l2fib-mon-sess-x-cons { + description + "The L2VPN forwarding Monitor Session XConnect + Information"; + list l2fib-mon-sess-x-con { + key "monitor-session-name"; + description + "Specify Monitor Session Name"; + leaf monitor-session-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Monitor Session Name"; + } + uses L2FIB-XCON-INFO; + } + } + container l2fib-mmrp-summaries { + description + "Mmrp Summary Table"; + list l2fib-mmrp-summary { + description + "Mmrp Summary Information"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Group Name"; + } + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-MCAST-SUMMARY-INFO; + } + } + container l2fib-pw-groups { + description + "PW Group Table Information"; + list l2fib-pw-group { + description + "PW Group Information"; + leaf next-hop-type { + type L2fib-next-hop-key; + description + "NHOP Type"; + } + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "Peer IP Address"; + } + leaf group-id { + type Pw-group-id-range; + description + "Group Id"; + } + leaf next-hop-address { + type inet:ipv4-address-no-zone; + description + "NHOP Address"; + } + leaf next-hop-te-interface-name { + type xr:Interface-name; + description + "NHOP (SR-)TE Interface"; + } + leaf next-hop-lsm-id { + type Lsm-id-range; + description + "NHOP LSM ID"; + } + leaf next-hop-address-v6 { + type inet:ip-address-no-zone; + description + "NHOP Address V6"; + } + leaf next-hop-internal-label { + type uint32 { + range "0..1048575"; + } + description + "NHOP Internal Label"; + } + leaf next-hop-sr-te-bsid { + type uint32 { + range "0..1048575"; + } + description + "NHOP SR-TE Binding Label (BSID)"; + } + leaf next-hop-internal-id { + type Rib-iid-range; + description + "NHOP Internal ID"; + } + uses L2FIB-PWGROUP-INFO; + } + } + container l2fib-dhcp-binding-details { + description + "DHCP binding forwarding detail"; + list l2fib-dhcp-binding-detail { + description + "Specify DHCP binding detail"; + leaf xcid { + type xr:Hex-integer; + description + "XConnect ID"; + } + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor IPv4 address"; + } + leaf address { + type yang:mac-address; + description + "MAC address"; + } + uses L2FIB-DHCP-BINDING-DETAIL-INFO; + } + } + container l2fibx-cons { + description + "The L2VPN forwarding XConnect Detail Table"; + list l2fibx-con { + key "xcid"; + description + "Specify XConnect ID"; + leaf xcid { + type xr:Hex-integer; + description + "XC ID"; + } + uses L2FIB-XCON-INFO; + } + } + container l2fib-main-interfaces { + description + "Main Interface"; + list l2fib-main-interface { + description + "Main Interface Table"; + container l2fib-main-interface-hardware-egress-detail-info { + description + "Main Interface hardware egress detail info"; + uses L2FIB-MAIN-INTERFACE-DETAIL-INFO; + } + container l2fib-main-interface-hardware-egress-info { + description + "Main Interface hardware egress info"; + uses L2FIB-MAIN-INTERFACE-SUMMARY-INFO; + } + container l2fib-main-interface-instances { + description + "Main Interface Instance table"; + list l2fib-main-interface-instance { + key "instance"; + description + "Main Interface Instance"; + container l2fib-main-interface-instance-detail-info { + description + "Main Interface Instance detail info"; + uses L2FIB-MAIN-INTERFACE-INSTANCE-DETAIL-INFO; + } + container l2fib-main-interface-instance-bridge-port-details { + description + "Main Interface Instance Bridge Port detail + table"; + list l2fib-main-interface-instance-bridge-port-detail { + key "xcid"; + description + "Main Interface Bridge Port detail info"; + leaf xcid { + type xr:Hex-integer; + description + "Bridge Port"; + } + uses L2FIB-MAIN-INTERFACE-INSTANCE-BPORT-DETAIL-INFO; + } + } + container l2fib-main-interface-instance-info { + description + "Main Interface Instance info"; + uses L2FIB-MAIN-INTERFACE-INSTANCE-SUMMARY-INFO; + } + container l2fib-main-interface-instance-hardware-ingress-detail-info { + description + "Main Interface Instance hardware ingress + detail info"; + uses L2FIB-MAIN-INTERFACE-INSTANCE-DETAIL-INFO; + } + container l2fib-main-interface-instance-hardware-egress-info { + description + "Main Interface Instance hardware egress + info"; + uses L2FIB-MAIN-INTERFACE-INSTANCE-SUMMARY-INFO; + } + container l2fib-main-interface-instance-hardware-ingress-info { + description + "Main Interface Instance hardware ingress + info"; + uses L2FIB-MAIN-INTERFACE-INSTANCE-SUMMARY-INFO; + } + container l2fib-main-interface-instance-bridge-ports { + description + "Main Interface Instance Bridge Port table"; + list l2fib-main-interface-instance-bridge-port { + key "xcid"; + description + "Main Interface Bridge Port info"; + leaf xcid { + type xr:Hex-integer; + description + "Bridge Port"; + } + uses L2FIB-MAIN-INTERFACE-INSTANCE-BPORT-SUMMARY-INFO; + } + } + container l2fib-main-interface-instance-hardware-egress-detail-info { + description + "Main Interface Instance hardware egress + detail info"; + uses L2FIB-MAIN-INTERFACE-INSTANCE-DETAIL-INFO; + } + leaf instance { + type Msti-range; + description + "Instance"; + } + } + } + container l2fib-main-interface-info { + description + "Main Interface info"; + uses L2FIB-MAIN-INTERFACE-SUMMARY-INFO; + } + container l2fib-main-interface-detail-info { + description + "Main Interface detail info"; + uses L2FIB-MAIN-INTERFACE-DETAIL-INFO; + } + container l2fib-main-interface-hardware-ingress-detail-info { + description + "Main Interface hardware ingress detail info"; + uses L2FIB-MAIN-INTERFACE-DETAIL-INFO; + } + container l2fib-main-interface-hardware-ingress-info { + description + "Main Interface hardware ingress info"; + uses L2FIB-MAIN-INTERFACE-SUMMARY-INFO; + } + leaf main-interface-id { + type Main-interface-id-range; + description + "Main interface id"; + } + leaf main-interface-type { + type Evpn-main-interface; + description + "Main interface type"; + } + } + } + container l2fib-mroute-ipv6-summaries { + description + "Mroute IPv6 Summary Table"; + list l2fib-mroute-ipv6-summary { + description + "Multicast IPv6 Summary Information"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Group Name"; + } + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-MCAST-SUMMARY-INFO; + } + } + container l2fib-message-hardware-summary { + description + "L2FIB Message Summary information from + hardware"; + uses L2FIB-HW-INFO; + } + container l2fib-mstp-details { + description + "MSTP Detail Table"; + list l2fib-mstp-detail { + description + "MSTP Detail information"; + leaf parent-interface { + type xr:Interface-name; + description + "Parent interface context"; + } + leaf main-interface-type { + type Evpn-main-interface; + description + "Main port interface type"; + } + leaf msti { + type Msti-range; + description + "MSTI context"; + } + uses L2FIB-MAIN-PORT-MSTP-DETAIL-INFO; + } + } + container l2fib-l2tp { + description + "L2TP"; + container l2tpv3-sessions { + description + "L2TPV3 Session table"; + list l2tpv3-session { + key "session-id"; + description + "L2TPV3 Session"; + leaf session-id { + type L2tpv3-session-id-range; + description + "SessionID"; + } + uses L2FIB-L2TP-DISP-INFO; + } + } + container l2tpv2-sessions { + description + "L2TPV2 Session table"; + list l2tpv2-session { + description + "L2TPV2 Session"; + leaf session-id { + type L2tpv2-session-id-range; + description + "SessionID"; + } + leaf tunnel-id { + type Tunnel-id-range; + description + "TunnelID"; + } + uses L2FIB-L2TP-DISP-INFO; + } + } + } + container l2fib-g8032 { + description + "G8032 information"; + container l2fib-g8032-rings { + description + "G8032 Ring table"; + list l2fib-g8032-ring { + key "ring-name"; + description + "G8032 Ring"; + container l2fib-g8032-ring-detail { + description + "G8032 Ring detailed information"; + uses L2FIB-G8032-RING-DETAIL-INFO; + } + container l2fib-g8032-ring-summary { + description + "G8032 Ring summary information"; + uses L2FIB-G8032-RING-SUMMARY-INFO; + } + container l2fib-g8032-ring-instance-summaries { + description + "G8032 Ring Instance summary table"; + list l2fib-g8032-ring-instance-summary { + key "instance"; + description + "G8032 Ring Instance summary information"; + leaf instance { + type G8032-ring-instance-range; + description + "Instance"; + } + uses L2FIB-G8032-RING-INSTANCE-SUMMARY-INFO; + } + } + container l2fib-g8032-ring-instance-details { + description + "G8032 Ring Instance detail table"; + list l2fib-g8032-ring-instance-detail { + key "instance"; + description + "G8032 Ring Instance detailed information"; + leaf instance { + type G8032-ring-instance-range; + description + "Instance"; + } + uses L2FIB-G8032-RING-INSTANCE-DETAIL-INFO; + } + } + leaf ring-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Ring Name"; + } + } + } + } + container l2fib-bridge-ports { + description + "Bridge Port forwarding detail"; + list l2fib-bridge-port { + description + "Specify Bridge Domain Name and XC ID"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Group Name"; + } + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf xc-uint-id { + type xr:Hex-integer; + description + "XC ID"; + } + uses L2FIB-BRIDGE-PORT-DETAIL-INFO; + } + } + container l2fibmac-details { + description + "Bridge MAC detail information"; + list l2fibmac-detail { + description + "MAC Detail information"; + leaf address { + type yang:mac-address; + description + "Static MAC address"; + } + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bridge Group Name"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-BRIDGE-MAC-INFO; + } + } + container l2fib-bridge-domain-names { + description + "Bridge Domain forwarding detail"; + list l2fib-bridge-domain-name { + description + "Specify Bridge Domain Name"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Bridge group"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + uses L2FIB-BRIDGE-SUMMARY-INFO; + } + } + container l2fib-evpn-incl-mcast-leafs { + description + "L2FIB EVPN inclusive multicast leaf table"; + list l2fib-evpn-incl-mcast-leaf { + description + "L2FIB EVPN inclusive multicast leaf"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Bridge group"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf xcid { + type xr:Hex-integer; + description + "XC ID"; + } + uses L2FIB-EVPN-INCL-MCAST-OLE-TABLE; + uses L2FIB-EVPN-INCL-MCAST-LEAF-INFO; + } + } + container l2fib-mroute-ports { + description + "multicast bridge port information "; + list l2fib-mroute-port { + description + "Multicast Port Information"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf xcid { + type xr:Hex-integer; + description + "XConnect ID"; + } + leaf xid-type { + type L2fib-evpn-xid; + description + "XID Type"; + } + leaf moi-id { + type uint32; + description + "MOI ID"; + } + leaf label { + type uint32 { + range "0..1048575"; + } + description + "NextHop Label"; + } + leaf source { + type inet:ipv4-address-no-zone; + description + "Source IP Address"; + } + leaf group { + type inet:ipv4-address-no-zone; + description + "Group IP Address"; + } + uses L2FIB-MCAST-XID-INFO; + } + } + container l2fib-summary { + description + "L2FIB Summary information"; + uses L2FIB-SUMMARY-INFO; + } + container l2fib-nve-peers { + description + "NVE Peer Table"; + list l2fib-nve-peer { + description + "The attributes for a particular NVE Peer"; + leaf xc-uint-id { + type xr:Hex-integer; + description + "XC ID"; + } + leaf vniid { + type xr:Hex-integer; + description + "VNI ID"; + } + leaf vtep-address { + type inet:ipv4-address-no-zone; + description + "VTEP IP Address"; + } + uses L2FIB-VTEP-INFO; + } + } + container l2fib-mmrps { + description + "mmrp information"; + list l2fib-mmrp { + description + "Bridge Domain Mmrp Information"; + leaf bd-name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf source { + type yang:mac-address; + description + "Source Mac Address"; + } + leaf group { + type yang:mac-address; + description + "Group Mac Address"; + } + uses L2FIB-MCAST-LEAF-INFO; + } + } + container l2fib-evpn-ip6macs { + description + "EVPN IPv6-MAC Table"; + list l2fib-evpn-ip6mac { + description + "The attributes for a particular EVPN IPv6-MAC + Entry"; + leaf bdid { + type Bridge-id-range; + description + "BD ID"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP Address"; + } + leaf is-local { + type boolean; + description + "Entry is locally learned"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC Address"; + } + uses L2FIB-EVPN-IPMAC-INFO; + } + } + container l2fib-pwhe-main-port-hardware-egresses { + description + "PWHE Main-port Hardware Egress Table"; + list l2fib-pwhe-main-port-hardware-egress { + key "interface-name"; + description + "PWHE Main-port H/W Egress Info"; + leaf interface-name { + type xr:Interface-name; + description + "PWHE Main-port"; + } + uses L2FIB-PWHE-MP-SHOW-INFO; + } + } + container l2fib-evpn-incl-mcast-leaf-hardware-egresses { + description + "L2FIB hardware ingress EVPN inclusive + multicast leaf table"; + list l2fib-evpn-incl-mcast-leaf-hardware-egress { + description + "L2FIB hardware egress EVPN inclusive + multicast leaf"; + leaf bd-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the Bridge group"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..65"; + } + description + "Bridge Domain Name"; + } + leaf xcid { + type xr:Hex-integer; + description + "XC ID"; + } + uses L2FIB-EVPN-INCL-MCAST-OLE-TABLE; + uses L2FIB-EVPN-INCL-MCAST-LEAF-INFO; + } + } + container l2fib-dhcp-binding-summaries { + description + "DHCP binding forwarding summary"; + list l2fib-dhcp-binding-summary { + key "xcid"; + description + "Specify DHCP binding summary"; + leaf xcid { + type xr:Hex-integer; + description + "XConnect ID"; + } + uses L2FIB-DHCP-BINDING-SUMMARY-INFO; + } + } + container l2fib-pwhe-main-port-hardware-ingresses { + description + "PWHE Main-port Hardware Ingress Table"; + list l2fib-pwhe-main-port-hardware-ingress { + key "interface-name"; + description + "PWHE Main-port H/W Ingress Info"; + leaf interface-name { + type xr:Interface-name; + description + "PWHE Main-port"; + } + uses L2FIB-PWHE-MP-SHOW-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } + container l2vpnv2 { + config false; + description + "L2VPN operational data to support active and + standby. L2VPN has been deprecated"; + container standby { + description + "Standby L2VPN operational data"; + uses DISCOVERY-TABLE; + uses FLEXIBLE-XCONNECT-SERVICE-SUMMARY; + uses MAIN-INTERFACE-TABLE; + uses ICCP-SM; + uses BRIDGE-SUMMARY; + uses NSR; + uses PREFERRED-PATH-TABLE; + uses GLOBAL-SETTINGS; + uses L2VPN-CACDB; + uses PWR; + uses XCONNECT-MP2MP-CE2CE-TABLE; + uses XCONNECT-TABLE; + uses XCONNECT-GROUP-TABLE; + uses XCONNECT-MP2MP-TABLE; + uses SRTE-POLICY-TABLE; + uses INDEX-TABLE; + uses XCONNECT-SUMMARY; + uses PROC-FSM; + uses MSTP-PORT-TABLE; + uses GENERIC-INTERFACE-LIST-DETAIL-TABLE; + uses L2VPN-OPER-L2VPN-RESOURCE-STATE-MP; + uses BRIDGE-DOMAIN-TABLE; + uses DISCOVERY-SUMMARY; + uses G8032; + uses PSEUDOWIRE-CLASS-TABLE; + uses L2VPN-COLLABORATORS; + uses MVRP; + uses GENERIC-INTERFACE-LIST-TABLE; + uses MSTP-VLAN-TABLE; + uses L2VPN-PBB-BSA; + uses FLEXIBLE-XCONNECT-SERVICE-TABLE; + uses XCONNECT-BRIEF; + } + container active { + description + "Active L2VPN operational data"; + container pseudowire-headend { + description + "Pseudowire Headend related operational data"; + container detail-interfaces { + description + "PW-HE Interfaces"; + list detail-interface { + key "interface-name"; + description + "PW-HE Interface detail"; + leaf interface-name { + type xr:Interface-name; + description + "PWHE Interface name"; + } + uses L2VPN-PWHE-DETAIL; + } + } + container summary { + description + "PW-HE interface summary"; + uses L2VPN-PWHE-SUMMARY; + } + } + uses DISCOVERY-TABLE; + uses FLEXIBLE-XCONNECT-SERVICE-SUMMARY; + uses MAIN-INTERFACE-TABLE; + uses ICCP-SM; + uses BRIDGE-SUMMARY; + uses NSR; + uses PREFERRED-PATH-TABLE; + uses GLOBAL-SETTINGS; + uses L2VPN-CACDB; + uses PWR; + uses XCONNECT-MP2MP-CE2CE-TABLE; + uses XCONNECT-TABLE; + uses XCONNECT-GROUP-TABLE; + uses XCONNECT-MP2MP-TABLE; + uses SRTE-POLICY-TABLE; + uses INDEX-TABLE; + uses XCONNECT-SUMMARY; + uses PROC-FSM; + uses MSTP-PORT-TABLE; + uses GENERIC-INTERFACE-LIST-DETAIL-TABLE; + uses L2VPN-OPER-L2VPN-RESOURCE-STATE-MP; + uses BRIDGE-DOMAIN-TABLE; + uses DISCOVERY-SUMMARY; + uses G8032; + uses PSEUDOWIRE-CLASS-TABLE; + uses L2VPN-COLLABORATORS; + uses MVRP; + uses GENERIC-INTERFACE-LIST-TABLE; + uses MSTP-VLAN-TABLE; + uses L2VPN-PBB-BSA; + uses FLEXIBLE-XCONNECT-SERVICE-TABLE; + uses XCONNECT-BRIEF; + } + container nodes { + description + "Table of L2VPN operational data for a particular + node"; + list node { + key "node-id"; + description + "L2VPN operational data for a particular node"; + leaf node-id { + type xr:Node-id; + description + "Location"; + } + uses DISCOVERY-TABLE; + uses FLEXIBLE-XCONNECT-SERVICE-SUMMARY; + uses MAIN-INTERFACE-TABLE; + uses ICCP-SM; + uses BRIDGE-SUMMARY; + uses NSR; + uses PREFERRED-PATH-TABLE; + uses GLOBAL-SETTINGS; + uses L2VPN-CACDB; + uses PWR; + uses XCONNECT-MP2MP-CE2CE-TABLE; + uses XCONNECT-TABLE; + uses XCONNECT-GROUP-TABLE; + uses XCONNECT-MP2MP-TABLE; + uses SRTE-POLICY-TABLE; + uses INDEX-TABLE; + uses XCONNECT-SUMMARY; + uses PROC-FSM; + uses MSTP-PORT-TABLE; + uses GENERIC-INTERFACE-LIST-DETAIL-TABLE; + uses L2VPN-OPER-L2VPN-RESOURCE-STATE-MP; + uses BRIDGE-DOMAIN-TABLE; + uses DISCOVERY-SUMMARY; + uses G8032; + uses PSEUDOWIRE-CLASS-TABLE; + uses L2VPN-COLLABORATORS; + uses MVRP; + uses GENERIC-INTERFACE-LIST-TABLE; + uses MSTP-VLAN-TABLE; + uses L2VPN-PBB-BSA; + uses FLEXIBLE-XCONNECT-SERVICE-TABLE; + uses XCONNECT-BRIEF; + } + } + } + container ea-pwhe { + config false; + description + "EA PWHE operational data"; + container nodes { + description + "Table of EA PWHE operational data for a + particular node"; + list node { + key "node-id"; + description + "EA PWHE operational data for a particular node"; + container ea-pwhe-idbs { + description + "Generic interface list table"; + list ea-pwhe-idb { + key "if-h"; + description + "EA PWHE Interface Database"; + leaf if-h { + type xr:Hex-integer; + description + "Interface Handle"; + } + uses PWHE-EA-IDB; + } + } + container ea-pwhe-summary { + description + "EA PWHE Summary"; + uses PWHE-EA-SUM; + } + leaf node-id { + type xr:Node-id; + description + "Location"; + } + } + } + } + container generic-interface-list-v2 { + config false; + description + "Generic Interface List operational data"; + container nodes { + description + "Table of generic interface list operational data + for a particular node"; + list node { + key "node-id"; + description + "Generic interface list operational data for a + particular node"; + leaf node-id { + type xr:Node-id; + description + "Location"; + } + uses GENERIC-INTERFACE-LIST-TABLE-V2; + } + } + container standby { + description + "Standby generic interface list operational data"; + uses GENERIC-INTERFACE-LIST-TABLE-V2; + } + container active { + description + "Active generic interface list operational data"; + uses GENERIC-INTERFACE-LIST-TABLE-V2; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-cfg.yang new file mode 100644 index 000000000..14b6795bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-cfg.yang @@ -0,0 +1,152 @@ +module Cisco-IOS-XR-lcmode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lcmode-cfg"; + prefix lcmode-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 lcmode package configuration. + + This module contains definitions + for the following management objects: + lcmode-oc: LC MODE OC configuration + lcmode-cli: LC MODE CLI configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-03 { + description + "LCMODE for OTUCn-REGEN added"; + semver:module-version "2.1.0"; + } + revision 2021-06-28 { + description + "LCMODE for OTUCn-REGEN added + 2020-12-24 + LCMODE for FC-MXP added + 2020-03-19 + Initial Revision."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lc-mode { + type enumeration { + enum "10g-grey-mxp" { + value 1; + description + "LCMODE for 10G GREY MXP with QSFP28 Trunk"; + } + enum "100g-txp" { + value 2; + description + "LCMODE for 100G TXP"; + } + enum "4x100g-mxp-400g-txp" { + value 3; + description + "LCMODE for 100G MXP and 400G TXP with CFP2 DCO + Trunk"; + } + enum "40x10g-4x100g-mxp" { + value 4; + description + "LCMODE for 10G/100G MXP With CFP2 DCO Trunk"; + } + enum "4x100ge-mxp-dd" { + value 5; + description + "LCMODE for 100GE MXP with QSFP-DD-ZR Trunk"; + } + enum "400ge-txp-dd" { + value 6; + description + "LCMODE for 400GE TXP with QSFP-DD-ZR Trunk"; + } + enum "fc-mxp" { + value 7; + description + "LCMODE for 24x16G FC and 12x32G FC MXP with + CFP2 Trunk"; + } + enum "otu-cn-regen" { + value 8; + description + "LCMODE for OTUCn (n = 1,2,3,4) Regen"; + } + enum "2x100g-txp-mxp" { + value 9; + description + "LCMODE for 2x100G TXP MXP With Glamdring Trunk"; + } + } + description + "Lc mode"; + } + + container lcmode-oc { + description + "LC MODE OC configuration"; + list slot-info-oc { + key "lc-slot"; + description + "location of LC"; + leaf lcmode-type-oc { + type Lc-mode; + description + "LCMODE config type"; + } + leaf lc-slot { + type xr:Cisco-ios-xr-string; + description + "LC location"; + } + } + } + container lcmode-cli { + description + "LC MODE CLI configuration"; + list slot-info-cli { + key "lc-slot"; + description + "location of LC"; + leaf lcmode-type-cli { + type Lc-mode; + description + "LCMODE config type"; + } + leaf lc-slot { + type xr:Cisco-ios-xr-string; + description + "LC location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper-sub1.yang new file mode 100644 index 000000000..d52d73ee2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper-sub1.yang @@ -0,0 +1,242 @@ +submodule Cisco-IOS-XR-lcmode-oper-sub1 { + belongs-to Cisco-IOS-XR-lcmode-oper { + prefix Cisco-IOS-XR-lcmode-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lcmode package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-03 { + description + "LCMODE for OTUCn-REGEN added"; + semver:module-version "1.2.0"; + } + revision 2021-06-28 { + description + "LCMODE for OTUCn-REGEN added + 2020-12-24 + LCMODE for FC-MXP added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dp-image-descr { + type enumeration { + enum "dp-img-none" { + value 0; + description + "No Image"; + } + enum "c1b-image" { + value 1; + description + "C1B Image"; + } + enum "c2b-image" { + value 2; + description + "C2B Image"; + } + enum "c3b-image" { + value 3; + description + "C3B Image"; + } + enum "c4b-image" { + value 4; + description + "C4B Image"; + } + enum "c7b-image" { + value 7; + description + "C7B Image"; + } + enum "c8b-image" { + value 8; + description + "C8B Image"; + } + enum "c9b-image" { + value 9; + description + "C9B Image"; + } + } + description + "Dp image descr"; + } + + typedef Lcmode-descr { + type enumeration { + enum "lc-mode-none" { + value 0; + description + "LCMODE Not Configured"; + } + enum "lc-mode10g-grey-mxp" { + value 1; + description + "LCMODE for 10G GREY MXP with QSFP28 Trunk"; + } + enum "lc-mode100g-txp" { + value 2; + description + "LCMODE for 100G TXP"; + } + enum "lc-mode4x100g-mxp400g-txp" { + value 3; + description + "LCMODE for 100G MXP and 400G TXP with CFP2 DCO + Trunk"; + } + enum "lc-mode40x10g4x100g-mxp" { + value 4; + description + "LCMODE for 10G/100G MXP With CFP2 DCO Trunk"; + } + enum "lc-mode4x100ge-mxp-dd" { + value 5; + description + "LCMODE for 100GE MXP with QSFP-DD-ZR Trunk"; + } + enum "lc-mode400ge-txp-dd" { + value 6; + description + "LCMODE for 400GE TXP with QSFP-DD-ZR Trunk"; + } + enum "lc-mode-fc-mxp" { + value 7; + description + "LCMODE for 24x16G FC and 12x32G FC MXP with + CFP2 Trunk"; + } + enum "lc-mode-otu-cnregen" { + value 8; + description + "LCMODE for OTUCn (n= 1,2,3,4) regen"; + } + enum "lc-mode2x100ge-txp-mxp" { + value 9; + description + "LCMODE for 2x100GE_TXP_MXP with Glamding Trunk + Pluggable"; + } + } + description + "Lcmode descr"; + } + + typedef Config-owner { + type enumeration { + enum "config-none" { + value 0; + description + "LCMODE Not Configured"; + } + enum "config-cli" { + value 1; + description + "Configured by CLI"; + } + enum "config-oc" { + value 2; + description + "Configured by OC"; + } + } + description + "Config owner"; + } + + grouping LCMODE-CAPABILITY-INFO { + description + "LCMODE Capability data"; + leaf lc-mode { + type uint8; + description + "LcMode"; + } + leaf lcmode-str { + type string { + length "0..24"; + } + description + "LcmodeStr"; + } + leaf dp-image-type { + type Dp-image-descr; + description + "DpImageType"; + } + leaf submode { + type Lcmode-descr; + description + "Submode"; + } + } + + grouping LCMODE-INFO { + description + "LCMODE data"; + leaf lc-mode-supported { + type boolean; + description + "LcModeSupported"; + } + leaf owner { + type Config-owner; + description + "Owner"; + } + leaf running-lcmode { + type Lcmode-descr; + description + "RunningLcmode"; + } + leaf configured-lcmode { + type Lcmode-descr; + description + "ConfiguredLcmode"; + } + leaf lcmode-cap-rcvd-cnt { + type uint8; + description + "LcmodeCapRcvdCnt"; + } + list capab-info { + max-elements "9"; + description + "capab info"; + uses LCMODE-CAPABILITY-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper.yang new file mode 100644 index 000000000..598610125 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lcmode-oper.yang @@ -0,0 +1,81 @@ +module Cisco-IOS-XR-lcmode-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lcmode-oper"; + prefix lcmode-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lcmode-oper-sub1 { + revision-date 2022-03-03; + } + + 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 lcmode package operational data. + + This module contains definitions + for the following management objects: + show-lcmodule: Show lc-module + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-03 { + description + "LCMODE for OTUCn-REGEN added"; + semver:module-version "1.2.0"; + } + revision 2021-06-28 { + description + "LCMODE for OTUCn-REGEN added + 2020-12-24 + LCMODE for FC-MXP added"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-lcmodule { + config false; + description + "Show lc-module"; + container lcmode-gl { + description + "gl"; + container lcmode-slots { + description + "lcmode"; + list lcmode-slot { + key "slot-id"; + description + "Per slot lcmode data"; + leaf slot-id { + type uint32; + description + "Slot Id"; + } + uses LCMODE-INFO; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper-sub1.yang new file mode 100644 index 000000000..854ca6f63 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper-sub1.yang @@ -0,0 +1,63 @@ +submodule Cisco-IOS-XR-ledmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-ledmgr-oper { + prefix Cisco-IOS-XR-ledmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ledmgr package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-15 { + description + "IOS XR 7.0.12 revision."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LED-ATTRIBUTES { + description + "led attributes info bag"; + leaf led-name { + type string; + description + "name of led"; + } + leaf led-mode { + type string; + description + "mode of led"; + } + leaf led-color { + type string; + description + "color of led"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper.yang new file mode 100644 index 000000000..99f2266eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ledmgr-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-ledmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ledmgr-oper"; + prefix ledmgr-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ledmgr-oper-sub1 { + revision-date 2019-10-15; + } + + 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 ledmgr package operational data. + + This module contains definitions + for the following management objects: + led-management: LED operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-15 { + description + "IOS XR 7.0.12 revision."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container led-management { + config false; + description + "LED operational data"; + container locations { + description + "Table of LED Locations"; + list location { + key "name"; + description + "Location"; + container leds { + description + "LED operational data"; + list led { + key "name"; + description + "LED"; + leaf name { + type string; + description + "LED Name"; + } + uses LED-ATTRIBUTES; + } + } + leaf name { + type string; + description + "External node name (as seen in show platform)"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-li-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-li-cfg.yang new file mode 100644 index 000000000..ac3ceaf6d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-li-cfg.yang @@ -0,0 +1,51 @@ +module Cisco-IOS-XR-li-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-li-cfg"; + prefix li-cfg; + + 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 li package configuration. + + This module contains definitions + for the following management objects: + lawful-intercept: Lawful intercept configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lawful-intercept { + description + "Lawful intercept configuration"; + leaf disable { + type empty; + description + "Disable lawful intercept feature"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-act.yang new file mode 100644 index 000000000..46768c0e9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-act.yang @@ -0,0 +1,82 @@ +module Cisco-IOS-XR-lib-keychain-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-keychain-act"; + prefix lib-keychain-act; + + 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 action package configuration. + + Copyright (c) 2017-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-17 { + description + "IOS XR 6.3.1 revision."; + } + + grouping MASTER-KEY { + description + "Master Key"; + leaf old-key { + type string; + mandatory true; + description + "key already added/key to be replaced"; + } + leaf new-key { + type string; + mandatory true; + description + "New master key to be added "; + } + } + + rpc master-key-add { + description + "To add a new master key"; + input { + leaf new-key { + type string; + description + "New master key to be added"; + } + } + } + rpc master-key-delete { + description + "Remove Master key"; + } + rpc master-key-update { + description + "To update master key"; + input { + uses MASTER-KEY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-cfg.yang new file mode 100644 index 000000000..990318c58 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-cfg.yang @@ -0,0 +1,684 @@ +module Cisco-IOS-XR-lib-keychain-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-keychain-cfg"; + prefix lib-keychain-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 lib-keychain package configuration. + + This module contains definitions + for the following management objects: + keychains: Configure a Key Chain + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-25 { + description + "Added Timezone Support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-07-16 { + description + "Server Dead Auth Action"; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2017-07-19 { + description + "Fixing macsec and non macsec keychain error"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Crypto-alg { + type enumeration { + enum "alg-aes-128-cmac-96" { + value 1; + description + "AES 128 CMAC 96"; + } + enum "alg-hmac-sha1-12" { + value 2; + description + "HMAC SHA 1 12"; + } + enum "alg-md5-16" { + value 3; + description + "MD5 16"; + } + enum "alg-sha1-20" { + value 4; + description + "SHA 1 20"; + } + enum "alg-hmac-md5-16" { + value 5; + description + "HMAC MD5 16"; + } + enum "alg-hmac-sha1-20" { + value 6; + description + "HMAC SHA 1 20"; + } + enum "alg-hmac-sha1-96" { + value 9; + description + "HMAC SHA 1 96"; + } + enum "alg-hmac-sha-256" { + value 10; + description + "HMAC SHA 256"; + } + } + description + "Crypto alg"; + } + + typedef Macsec-crypto-alg { + type enumeration { + enum "aes-128-cmac" { + value 7; + description + "aes 128 cmac"; + } + enum "aes-256-cmac" { + value 8; + description + "aes 256 cmac"; + } + } + description + "Macsec crypto alg"; + } + + typedef Key-chain-month { + type enumeration { + enum "jan" { + value 0; + description + "January"; + } + enum "feb" { + value 1; + description + "February"; + } + enum "mar" { + value 2; + description + "March"; + } + enum "apr" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "jun" { + value 5; + description + "June"; + } + enum "jul" { + value 6; + description + "July"; + } + enum "aug" { + value 7; + description + "August"; + } + enum "sep" { + value 8; + description + "September"; + } + enum "oct" { + value 9; + description + "October"; + } + enum "nov" { + value 10; + description + "November"; + } + enum "dec" { + value 11; + description + "December"; + } + } + description + "Key chain month"; + } + + typedef Key-encryption { + type enumeration { + enum "type7" { + value 0; + description + "Type 7 encryption"; + } + enum "type6" { + value 2; + description + "Type 6 encryption"; + } + } + description + "Key encryption"; + } + + typedef Time-zone-value { + type enumeration { + enum "local" { + value 0; + description + "Local Timezone"; + } + enum "gmt" { + value 1; + description + "GMT (UTC) Timezone"; + } + } + description + "Time zone value"; + } + + container keychains { + description + "Configure a Key Chain"; + list keychain { + key "chain-name"; + description + "Name of the key chain"; + container accept-tolerance { + description + "Accept Tolerance in seconds or infinite"; + leaf value { + type uint32 { + range "1..8640000"; + } + units "second"; + must "not(../infinite)"; + description + "Value in seconds"; + } + leaf infinite { + type boolean; + must "not(../value)"; + description + "Infinite tolerance"; + } + } + container macsec-keychain { + description + "Name of the key chain for MACSec"; + container macsec-keys { + description + "Configure a Key"; + list macsec-key { + key "key-id"; + description + "Key Identifier"; + container macsec-lifetime { + presence "Indicates a macsec-lifetime node is configured."; + description + "Configure a key Lifetime"; + leaf start-hour { + type uint32 { + range "0..23"; + } + mandatory true; + description + "Start Hour"; + } + leaf start-minutes { + type uint32 { + range "0..59"; + } + units "minute"; + mandatory true; + description + "Start Minutes"; + } + leaf start-seconds { + type uint32 { + range "0..59"; + } + units "second"; + mandatory true; + description + "Start Seconds"; + } + leaf start-date { + type uint32 { + range "1..31"; + } + mandatory true; + description + "Start Date"; + } + leaf start-month { + type Key-chain-month; + mandatory true; + description + "Start Month"; + } + leaf start-year { + type uint32 { + range "1993..2035"; + } + mandatory true; + description + "Start Year"; + } + leaf life-time { + type uint32 { + range "1..2147483647"; + } + units "second"; + description + "Lifetime duration in seconds"; + } + leaf infinite-flag { + type boolean; + description + "Infinite Lifetime flag"; + } + leaf end-hour { + type uint32 { + range "0..23"; + } + description + "End Hour"; + } + leaf end-minutes { + type uint32 { + range "0..59"; + } + units "minute"; + description + "End Minutes"; + } + leaf end-seconds { + type uint32 { + range "0..59"; + } + units "second"; + description + "End Seconds"; + } + leaf end-date { + type uint32 { + range "1..31"; + } + description + "End Date"; + } + leaf end-month { + type Key-chain-month; + description + "End Month"; + } + leaf end-year { + type uint32 { + range "1993..2035"; + } + description + "End Year"; + } + } + container macsec-key-string { + presence "Indicates a macsec-key-string node is configured."; + description + "Configure a clear text/encrypted Key string + along with cryptographic algorithm"; + leaf string { + type xr:Proprietary-password; + mandatory true; + description + "Key String"; + } + leaf cryptographic-algorithm { + type Macsec-crypto-alg; + mandatory true; + description + "Cryptographic Algorithm"; + } + leaf encryption-type { + type Key-encryption; + default "type7"; + description + "encryption type used to store key"; + } + } + leaf key-id { + type xr:Cisco-ios-xr-string { + length "2..64"; + } + description + "Enter CKN as non-zero hex string of even + length, length range: <02-64>, i.e 32 bytes + of MACsec CKN"; + } + } + } + } + container keys { + description + "Configure a Key"; + list key { + key "key-id"; + description + "Key Identifier"; + container key-string { + description + "Configure a clear text/encrypted Key string "; + leaf key-string { + type xr:Proprietary-password; + description + "Key String"; + } + leaf encrypt-type { + type Key-encryption; + default "type7"; + description + "Encryption Type"; + } + } + container accept-lifetime { + presence "Indicates a accept-lifetime node is configured."; + description + "Configure a key Acceptance Lifetime"; + leaf start-hour { + type uint32 { + range "0..23"; + } + mandatory true; + description + "Start Hour"; + } + leaf start-minutes { + type uint32 { + range "0..59"; + } + units "minute"; + mandatory true; + description + "Start Minutes"; + } + leaf start-seconds { + type uint32 { + range "0..59"; + } + units "second"; + mandatory true; + description + "Start Seconds"; + } + leaf start-date { + type uint32 { + range "1..31"; + } + mandatory true; + description + "Start Date"; + } + leaf start-month { + type Key-chain-month; + mandatory true; + description + "Start Month"; + } + leaf start-year { + type uint32 { + range "1993..2035"; + } + mandatory true; + description + "Start Year"; + } + leaf life-time { + type uint32 { + range "1..2147483647"; + } + units "second"; + description + "Lifetime duration in seconds"; + } + leaf infinite-flag { + type boolean; + description + "Infinite Lifetime flag"; + } + leaf end-hour { + type uint32 { + range "0..23"; + } + description + "End Hour"; + } + leaf end-minutes { + type uint32 { + range "0..59"; + } + units "minute"; + description + "End Minutes"; + } + leaf end-seconds { + type uint32 { + range "0..59"; + } + units "second"; + description + "End Seconds"; + } + leaf end-date { + type uint32 { + range "1..31"; + } + description + "End Date"; + } + leaf end-month { + type Key-chain-month; + description + "End Month"; + } + leaf end-year { + type uint32 { + range "1993..2035"; + } + description + "End Year"; + } + } + container send-lifetime { + presence "Indicates a send-lifetime node is configured."; + description + "Configure a Send Lifetime"; + leaf start-hour { + type uint32 { + range "0..23"; + } + mandatory true; + description + "Start Hour"; + } + leaf start-minutes { + type uint32 { + range "0..59"; + } + units "minute"; + mandatory true; + description + "Start Minutes"; + } + leaf start-seconds { + type uint32 { + range "0..59"; + } + units "second"; + mandatory true; + description + "Start Seconds"; + } + leaf start-date { + type uint32 { + range "1..31"; + } + mandatory true; + description + "Start Date"; + } + leaf start-month { + type Key-chain-month; + mandatory true; + description + "Start Month"; + } + leaf start-year { + type uint32 { + range "1993..2035"; + } + mandatory true; + description + "Start Year"; + } + leaf life-time { + type uint32 { + range "1..2147483647"; + } + units "second"; + description + "Lifetime duration in seconds"; + } + leaf infinite-flag { + type boolean; + description + "Infinite Lifetime flag"; + } + leaf end-hour { + type uint32 { + range "0..23"; + } + description + "End Hour"; + } + leaf end-minutes { + type uint32 { + range "0..59"; + } + units "minute"; + description + "End Minutes"; + } + leaf end-seconds { + type uint32 { + range "0..59"; + } + units "second"; + description + "End Seconds"; + } + leaf end-date { + type uint32 { + range "1..31"; + } + description + "End Date"; + } + leaf end-month { + type Key-chain-month; + description + "End Month"; + } + leaf end-year { + type uint32 { + range "1993..2035"; + } + description + "End Year"; + } + } + leaf cryptographic-algorithm { + type Crypto-alg; + description + "Configure the cryptographic algorithm"; + } + leaf key-id { + type xr:Cisco-ios-xr-string; + description + "48-bit Key identifier"; + } + } + } + leaf timezone { + type Time-zone-value; + default "local"; + description + "Timezone enumerated value"; + } + leaf chain-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the key chain"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper-sub1.yang new file mode 100644 index 000000000..2366f56f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper-sub1.yang @@ -0,0 +1,242 @@ +submodule Cisco-IOS-XR-lib-keychain-oper-sub1 { + belongs-to Cisco-IOS-XR-lib-keychain-oper { + prefix Cisco-IOS-XR-lib-keychain-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lib-keychain package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-25 { + description + "Added Timezone Support IosSetYangSchemaRev Cisco-IOS-XR-lib-keychain-cfg"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Timezone-value { + type enumeration { + enum "local" { + description + "Local Timezone"; + } + enum "gmt" { + description + "GMT (UTC) Timezone"; + } + } + description + "Timezone Value Enum"; + } + + typedef Cryto-algo { + type enumeration { + enum "not-configured" { + description + "Not configured"; + } + enum "aes-128-cmac-96" { + description + "CMAC AES 12 bytes"; + } + enum "hmac-sha1-12" { + description + "HMAC SHA1 12 bytes"; + } + enum "md5" { + description + "MD5 16 bytes"; + } + enum "sha1" { + description + "SHA1 20 bytes"; + } + enum "hmac-md5" { + description + "HMAC MD5 16 bytes"; + } + enum "hmac-sha1-20" { + description + "HMAC SHA1 20 bytes"; + } + enum "aes-128-cmac" { + description + "CMAC AES 32 bytes"; + } + enum "aes-256-cmac" { + description + "CMAC AES 64 bytes"; + } + enum "hmac-sha1-96" { + description + "HMAC SHA1 12 bytes"; + } + enum "hmac-sha-256" { + description + "HMAC SHA256 32 bytes"; + } + } + description + "Cryptographic algorithm type"; + } + + typedef Enc { + type enumeration { + enum "password-type7" { + value 0; + description + "Type 7 password type"; + } + enum "password-type6" { + value 2; + description + "Type 6 Encryption"; + } + } + description + "Type of password encryption"; + } + + grouping LIFETIME { + description + "Life time values associated with a key"; + leaf start { + type string; + description + "Key life start time in format : day-of-week + month date-of-month HH:MM:SS year eg: Thu Feb 1 + 18:32:14 2011"; + } + leaf end { + type string; + description + "Key life end time in format : day-of-week month + date-of-month HH:MM:SS year eg: Thu Feb 1 18:32 + :14 2011"; + } + leaf duration { + type string; + units "second"; + description + "Duration of the key in seconds. value 0xffffffff + reflects infinite, never expires, is configured "; + } + leaf is-always-valid { + type boolean; + description + "Is TRUE if duration is 0xffffffff "; + } + leaf is-valid-now { + type boolean; + description + "Is TRUE if current time is betweenstart and end + lifetime , else FALSE"; + } + } + + grouping MACSEC { + description + "If it's a macsec key"; + leaf is-macsec-key { + type boolean; + description + "To check if it's a macsec key"; + } + } + + grouping KEY-ID { + description + "Key ID information"; + list key-id { + description + "key id"; + container macsec { + description + "To check if it's a macsec key"; + uses MACSEC; + } + container send-lifetime { + description + "Lifetime of the key"; + uses LIFETIME; + } + container accept-lifetime { + description + "Accept Lifetime of the key"; + uses LIFETIME; + } + leaf key-string { + type string; + description + "Key string"; + } + leaf type { + type Enc; + description + "Type of key encryption"; + } + leaf key-id { + type string; + description + "Key ID"; + } + leaf cryptographic-algorithm { + type Cryto-algo; + description + "Cryptographic algorithm"; + } + } + } + + grouping KEY-CHAIN { + description + "Key chain config information"; + container key { + description + "Key properties"; + uses KEY-ID; + } + leaf accept-tolerance { + type string; + description + "Accept tolerance is infinite if value is + 0xffffffff"; + } + leaf timezone { + type Timezone-value; + description + "Timezone of the keychain"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper.yang new file mode 100644 index 000000000..b141756c0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-keychain-oper.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-lib-keychain-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-keychain-oper"; + prefix lib-keychain-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lib-keychain-oper-sub1 { + revision-date 2022-05-25; + } + + 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 lib-keychain package operational data. + + This module contains definitions + for the following management objects: + keychain: Keychain operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-25 { + description + "Added Timezone Support IosSetYangSchemaRev Cisco-IOS-XR-lib-keychain-cfg"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container keychain { + config false; + description + "Keychain operational data"; + container keys { + description + "List of configured key names"; + list key { + key "key-name"; + description + "Configured key name"; + leaf key-name { + type xr:Cisco-ios-xr-string; + description + "Key name"; + } + uses KEY-CHAIN; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-cfg.yang new file mode 100644 index 000000000..770550fcf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-cfg.yang @@ -0,0 +1,295 @@ +module Cisco-IOS-XR-lib-mpp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-mpp-cfg"; + prefix lib-mpp-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 lib-mpp package configuration. + + This module contains definitions + for the following management objects: + control-plane: Configure control Plane + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-04 { + description + "Restricting inband behavior on out-of-band in some scenarios."; + semver:module-version "1.1.0"; + } + revision 2021-01-30 { + description + "Removal of hidden cmd in /lib/mpp/"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-23 { + description + "Removing Third Party Applications schema."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-07-28 { + description + "Fixing Third Party Applications schema."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping HTTP-PROTOCOL { + description + "Common node of interface, all-interfaces"; + container http-protocol { + description + "Configure HTTP on this interface"; + uses PEER-CLASS; + } + } + + grouping SNMP-PROTOCOL { + description + "Common node of interface, all-interfaces"; + container snmp-protocol { + description + "Configure SNMP for this interface"; + uses PEER-CLASS; + } + } + + grouping TFTP-PROTOCOL { + description + "Common node of interface, all-interfaces"; + container tftp-protocol { + description + "Configure TFTP on this interface"; + uses PEER-CLASS; + } + } + + grouping INTERFACE-SELECTION { + description + "Common node of inband, outband"; + container interface-selection { + description + "Configure interfaces"; + container interfaces { + description + "Configure a specific interface"; + list interface { + key "interface-name"; + description + "Specific interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the Interface"; + } + uses HTTP-PROTOCOL; + uses TFTP-PROTOCOL; + uses NETCONF-PROTOCOL; + uses XR-XML; + uses SSH-PROTOCOL; + uses SNMP-PROTOCOL; + uses TELNET-PROTOCOL; + uses ALL-PROTOCOLS; + } + } + container all-interfaces { + description + "Configure all Inband interfaces"; + uses HTTP-PROTOCOL; + uses TFTP-PROTOCOL; + uses NETCONF-PROTOCOL; + uses XR-XML; + uses SSH-PROTOCOL; + uses SNMP-PROTOCOL; + uses TELNET-PROTOCOL; + uses ALL-PROTOCOLS; + } + } + } + + grouping NETCONF-PROTOCOL { + description + "Common node of interface, all-interfaces"; + container netconf-protocol { + description + "Configure NETCONF protocol and peer addresses"; + uses PEER-CLASS; + } + } + + grouping PEER-PREFIX-CLASS { + description + "Common node of peer-v4, peer-v6"; + container peer-prefixes { + description + "Configure peer addresses with prefix"; + list peer-prefix { + key "address-prefix"; + description + "Peer address (with prefix)"; + leaf address-prefix { + type inet:ip-prefix; + description + "prefix/length"; + } + } + } + } + + grouping PEER-NO-PREFIX-CLASS { + description + "Common node of peer-v4, peer-v6"; + container peers { + description + "Configure peer addresses"; + list peer { + key "address"; + description + "Configure peer on the interface"; + leaf address { + type inet:ip-address-no-zone; + description + "prefix"; + } + } + } + } + + grouping XR-XML { + description + "Common node of interface, all-interfaces"; + container xr-xml { + description + "Configure XML and peer addresses"; + uses PEER-CLASS; + } + } + + grouping PEER-CLASS { + description + "Common node of snmp-protocol, http-protocol, + ssh-protocol, telnet-protocol, tftp-protocol, xml + , netconf-protocol, all-protocols"; + container peer-class { + description + "Configure peer addresses"; + container peer-v4 { + description + "Configure v4 peer addresses"; + uses PEER-NO-PREFIX-CLASS; + uses PEER-PREFIX-CLASS; + } + container peer-v6 { + description + "Configure v6 peer addresses"; + uses PEER-NO-PREFIX-CLASS; + uses PEER-PREFIX-CLASS; + } + leaf peer-all { + type empty; + description + "Only takes 'True'"; + } + } + } + + grouping TELNET-PROTOCOL { + description + "Common node of interface, all-interfaces"; + container telnet-protocol { + description + "Configure Telnet for this interface"; + uses PEER-CLASS; + } + } + + grouping ALL-PROTOCOLS { + description + "Common node of interface, all-interfaces"; + container all-protocols { + description + "Configure all protocols on this interface"; + uses PEER-CLASS; + } + } + + grouping SSH-PROTOCOL { + description + "Common node of interface, all-interfaces"; + container ssh-protocol { + description + "Configure SSH protocol and peer addresses"; + uses PEER-CLASS; + } + } + + container control-plane { + description + "Configure control Plane"; + container management-plane-protection { + description + "Configure management plane protection"; + container enable { + description + "Enable Outband Configuration"; + leaf outband-default-deny { + type empty; + description + "Enable inband behavior for out-of-band"; + } + } + container outband { + description + "Outband Configuration"; + leaf outband-vrf { + type string; + description + "Configure outband VRF"; + } + uses INTERFACE-SELECTION; + } + container inband { + description + "Inband Configuration"; + uses INTERFACE-SELECTION; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper-sub1.yang new file mode 100644 index 000000000..019af9e73 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper-sub1.yang @@ -0,0 +1,189 @@ +submodule Cisco-IOS-XR-lib-mpp-oper-sub1 { + belongs-to Cisco-IOS-XR-lib-mpp-oper { + prefix Cisco-IOS-XR-lib-mpp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lib-mpp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + identity Mpp-af-id-base { + description + "Base identity for Mpp-af-id"; + } + + identity ipv4 { + base Mpp-af-id-base; + description + "IPv4 address family"; + } + + identity ipv6 { + base Mpp-af-id-base; + description + "IPv6 address family"; + } + + typedef Mpp-in6-addr { + type inet:ipv6-address; + description + "Mpp in6 addr"; + } + + typedef Mpp-in-addr { + type inet:ipv4-address; + description + "Mpp in addr"; + } + + typedef Mpp-af-id { + type identityref { + base Mpp-af-id-base; + } + description + "MPP address family types"; + } + + typedef Mpp-allow { + type enumeration { + enum "ssh" { + description + "SSH protocol"; + } + enum "telnet" { + description + "TELNET protocol"; + } + enum "snmp" { + description + "SNMP protocol"; + } + enum "tftp" { + description + "TFTP protocol"; + } + enum "http" { + description + "HTTP protocol"; + } + enum "xr-xml" { + description + "XML"; + } + enum "netconf" { + description + "NETCONF protocol"; + } + enum "all" { + description + "All"; + } + } + description + "MPP protocol types"; + } + + grouping IP-ADDR-T-UNION { + description + "IP ADDR T UNION"; + leaf af-name { + type Mpp-af-id; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type Mpp-in-addr; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Mpp-in6-addr; + description + "IPv6 address"; + } + } + + grouping MPP-INFO { + description + "MPP Information"; + leaf allow { + type Mpp-allow; + description + "MPP allow"; + } + leaf is-all-peers-allowed { + type boolean; + description + "If TRUE, all peers are allowed"; + } + list peer-address { + description + "List of peer addresses"; + uses IP-ADDR-T-UNION; + } + } + + grouping MPP-PROTO { + description + "MPP Interface protocols"; + list protocol { + description + "MPP Interface protocols"; + uses MPP-INFO; + } + } + + grouping VRF-INFO { + description + "Outband VRF name"; + leaf vrf-name { + type string; + description + "Outband VRF name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper.yang new file mode 100644 index 000000000..a4516881e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-mpp-oper.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-lib-mpp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-mpp-oper"; + prefix lib-mpp-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lib-mpp-oper-sub1 { + revision-date 2019-04-05; + } + + 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 lib-mpp package operational data. + + This module contains definitions + for the following management objects: + management-plane-protection: Management Plane Protection (MPP) + operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping INTERFACE-TABLE { + description + "Common node of inband, outband"; + container interfaces { + description + "List of inband/outband interfaces"; + list interface { + key "interface-name"; + description + "MPP interface information"; + leaf interface-name { + type string; + description + "Interface name, specify 'all' for all + interfaces"; + } + uses MPP-PROTO; + } + } + } + + container management-plane-protection { + config false; + description + "Management Plane Protection (MPP) operational + data"; + container outband { + description + "Management Plane Protection (MPP) outband + interface data"; + container vrf { + description + "Outband VRF information"; + uses VRF-INFO; + } + uses INTERFACE-TABLE; + } + container inband { + description + "Management Plane Protection (MPP) inband + interface data"; + uses INTERFACE-TABLE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-act.yang new file mode 100644 index 000000000..785edb520 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-act.yang @@ -0,0 +1,135 @@ +module Cisco-IOS-XR-lib-type6-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-type6-act"; + prefix lib-type6-act; + + 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 action package configuration. + + Copyright (c) 2018-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-06 { + description + "Added masterkey update abort support."; + semver:module-version "2.1.0"; + } + revision 2020-10-16 { + description + "Changed the input type of clear-type6-client to enum"; + semver:module-version "2.0.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-19 { + description + "IOS XR 6.3.1 revision."; + } + + typedef Client-name { + type enumeration { + enum "keychain" { + value 0; + description + "keychain"; + } + enum "snmp" { + value 1; + description + "snmp"; + } + enum "radiusd" { + value 2; + description + "radiusd"; + } + enum "tacacsd" { + value 3; + description + "tacacsd"; + } + } + description + "Type6 client name"; + } + + grouping MASTER-KEY { + description + "Master Key Group"; + leaf old-key { + type string; + mandatory true; + description + "key already added/key to be replaced"; + } + leaf new-key { + type string; + mandatory true; + description + "New master key to be added "; + } + } + + rpc master-key-add { + description + "To add a new master key"; + input { + leaf new-key { + type string; + description + "New master key to be added"; + } + } + } + rpc master-key-delete { + description + "Remove Master key"; + } + rpc master-key-update { + description + "To update master key"; + input { + uses MASTER-KEY; + } + } + rpc clear-type6-client { + description + "To clear type6 client"; + input { + leaf client-name { + type Client-name; + mandatory true; + description + "Client Name"; + } + } + } + rpc masterkey-update-abort { + description + "Abort masterkey update operation"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-cfg.yang new file mode 100644 index 000000000..57a9ccdf1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-cfg.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-lib-type6-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-type6-cfg"; + prefix lib-type6-cfg; + + 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 lib-type6 package configuration. + + This module contains definitions + for the following management objects: + password6: Configure masterkey + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-09-22 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Password-encryption { + type enumeration { + enum "type6" { + value 2; + description + "Type6"; + } + } + description + "Password encryption"; + } + + container password6 { + description + "Configure masterkey"; + container encryption { + description + "Enable password encryption"; + leaf aes { + type Password-encryption; + description + "encryption type used to store key"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper-sub1.yang new file mode 100644 index 000000000..ff31349ca --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper-sub1.yang @@ -0,0 +1,133 @@ +submodule Cisco-IOS-XR-lib-type6-server-oper-sub1 { + belongs-to Cisco-IOS-XR-lib-type6-server-oper { + prefix Cisco-IOS-XR-lib-type6-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lib-type6-server package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-09-20 { + description + "Added support for new show CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-09-28 { + description + "Fixed incorrect plural rendering."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef String-array { + type string; + description + "String array"; + } + + grouping TYPE6-CLIENT-INFO { + description + "TYPE6 CLIENT INFO"; + leaf client-name { + type string; + description + "Client Name"; + } + leaf mk-state { + type string; + description + "Client masterkey state"; + } + } + + grouping TYPE6-SERVER-INFO { + description + "TYPE6 SERVER INFO"; + leaf aes-config { + type boolean; + description + "Aes config state"; + } + leaf mk-config { + type boolean; + description + "mk config state"; + } + leaf type6-feature-state { + type boolean; + description + "Type6 feature state"; + } + leaf mk-inprogress-state { + type boolean; + description + "mk inprogress state"; + } + } + + grouping TYPE6-CLIENT-STATE-BAG { + description + "TYPE6 CLIENT STATE BAG"; + leaf-list client-name { + type String-array; + description + "Client Name"; + } + leaf-list client-mkstate { + type String-array; + description + "Client masterkey operation state"; + } + } + + grouping TYPE6-MK-UPDATE-BAG { + description + "TYPE6 MK UPDATE BAG"; + container client-info { + description + "Status of each client"; + uses TYPE6-CLIENT-STATE-BAG; + } + leaf message { + type string; + description + "Masterkey operation status"; + } + } + + grouping TYPE6-MK-OPER-BAG { + description + "TYPE6 MK OPER BAG"; + container update-bag { + description + "Masterkey Update status"; + uses TYPE6-MK-UPDATE-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper.yang new file mode 100644 index 000000000..651c292cf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lib-type6-server-oper.yang @@ -0,0 +1,82 @@ +module Cisco-IOS-XR-lib-type6-server-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lib-type6-server-oper"; + prefix lib-type6-server-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lib-type6-server-oper-sub1 { + revision-date 2019-09-20; + } + + 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 lib-type6-server package operational data. + + This module contains definitions + for the following management objects: + type6: Type6 server operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-09-20 { + description + "Added support for new show CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-09-28 { + description + "Fixed incorrect plural rendering."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container type6 { + config false; + description + "Type6 server operational data"; + container masterkey { + description + "type6 masterkey operation status"; + container update { + description + "type6 masterkey operation status"; + container status { + description + "type6 masterkey operation status"; + uses TYPE6-MK-OPER-BAG; + } + } + } + container server { + description + "type6 server information"; + uses TYPE6-SERVER-INFO; + } + container client { + description + "type6 client information"; + uses TYPE6-CLIENT-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper-sub1.yang new file mode 100644 index 000000000..9fd4c0cf5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper-sub1.yang @@ -0,0 +1,78 @@ +submodule Cisco-IOS-XR-linux-os-heap-summary-oper-sub1 { + belongs-to Cisco-IOS-XR-linux-os-heap-summary-oper { + prefix Cisco-IOS-XR-linux-os-heap-summary-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR linux-os-heap-summary package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-16 { + description + "Structuring the yang response of show memory heap summary all."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHOW-MEM-HEAP-SUM-YANG { + description + "Heap memory summary info for each process"; + leaf heap-size { + type uint64; + description + "Heap Size"; + } + leaf alloc-mem { + type uint64; + description + "Allocated Memory"; + } + leaf free-mem { + type uint64; + description + "Free Memory"; + } + leaf over-head { + type uint64; + description + "Over Head"; + } + leaf allocs { + type uint64; + description + "Allocs"; + } + leaf frees { + type uint64; + description + "Frees"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper.yang new file mode 100644 index 000000000..4b39a9aae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-heap-summary-oper.yang @@ -0,0 +1,98 @@ +module Cisco-IOS-XR-linux-os-heap-summary-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-os-heap-summary-oper"; + prefix linux-os-heap-summary-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-linux-os-heap-summary-oper-sub1 { + revision-date 2021-04-16; + } + + 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 linux-os-heap-summary package operational data. + + This module contains definitions + for the following management objects: + heap-summary: Heap Summary + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-16 { + description + "Structuring the yang response of show memory heap summary all."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PROCESS { + description + "Common node of process-table, all"; + list process { + key "process-name"; + description + "Process Name"; + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "Process name"; + } + uses SHOW-MEM-HEAP-SUM-YANG; + } + } + + container heap-summary { + config false; + description + "Heap Summary"; + container location-descriptions { + description + "Location"; + list location-description { + key "node"; + description + "Location specified in location"; + container process-table { + description + "List of processes"; + uses PROCESS; + } + leaf node { + type xr:Node-id; + description + "Node location"; + } + } + } + container all { + description + "All processes"; + uses PROCESS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper-sub1.yang new file mode 100644 index 000000000..c872af2f8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper-sub1.yang @@ -0,0 +1,88 @@ +submodule Cisco-IOS-XR-linux-os-reboot-history-oper-sub1 { + belongs-to Cisco-IOS-XR-linux-os-reboot-history-oper { + prefix Cisco-IOS-XR-linux-os-reboot-history-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR linux-os-reboot-history package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-03-03 { + description + "Added container last-reboot."; + semver:module-version "1.1.0"; + } + revision 2021-07-28 { + description + "Changed task-name from basic-services to system"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping HISTORY-DETAIL { + description + "Reboot history details"; + leaf no { + type uint32; + description + "Number count"; + } + leaf time { + type string; + description + "Time of reboot"; + } + leaf cause-code { + type uint32; + description + "Cause code for reboot"; + } + leaf reason { + type string; + description + "Reason for reboot"; + } + } + + grouping HISTORY { + description + "Reboot history information"; + container last-reboot { + description + "Last Reboot record"; + uses HISTORY-DETAIL; + } + list reboot-history { + description + "Last Reboots"; + uses HISTORY-DETAIL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper.yang new file mode 100644 index 000000000..e88c2fb45 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-os-reboot-history-oper.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-linux-os-reboot-history-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-os-reboot-history-oper"; + prefix linux-os-reboot-history-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-linux-os-reboot-history-oper-sub1 { + revision-date 2023-03-03; + } + + 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 linux-os-reboot-history package operational data. + + This module contains definitions + for the following management objects: + reboot-history: Reboot History information + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-03-03 { + description + "Added container last-reboot."; + semver:module-version "1.1.0"; + } + revision 2021-07-28 { + description + "Changed task-name from basic-services to system"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container reboot-history { + config false; + description + "Reboot History information"; + list node { + key "node-name"; + description + "Node ID"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses HISTORY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-diskenc-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-diskenc-act.yang new file mode 100644 index 000000000..4584367bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-diskenc-act.yang @@ -0,0 +1,61 @@ +module Cisco-IOS-XR-linux-security-diskenc-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-security-diskenc-act"; + prefix diskenc-act; + + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 action package configuration. + + Copyright (c) 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-06 { + description + "IOS XR 7.6.1 revision."; + } + + rpc diskenc-activate { + description + "Action to start encryption activation"; + input { + leaf location { + type string; + mandatory true; + description + "Location string to start encryption activation"; + } + } + xr:xr-task "cisco-support"; + xr:cli-command "disk-encryption activate location "; + } + rpc diskenc-deactivate { + description + "Action to start encryption deactivation"; + input { + leaf location { + type string; + mandatory true; + description + "Location string to start encryption deactivation"; + } + } + xr:xr-task "cisco-support"; + xr:cli-command "disk-encryption deactivate location "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act-deviations.yang new file mode 100644 index 000000000..9215652ee --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act-deviations.yang @@ -0,0 +1,43 @@ +module Cisco-IOS-XR-linux-security-factory-reset-act-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-security-factory-reset-act-deviations"; + prefix factory-reset-act-dev; + + import Cisco-IOS-XR-linux-security-factory-reset-act { + prefix factory-reset-act; + } + 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 set of deviations for unsupported platforms + for Cisco-IOS-XR-linux-security-factory-reset-act + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-29 { + description + "IOS XR 7.8.1 revision."; + semver:module-version "1.0.0"; + } + + deviation "/factory-reset-act:factory-reset-shut" { + deviate not-supported; + } + deviation "/factory-reset-act:factory-reset-reload" { + deviate not-supported; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act.yang new file mode 100644 index 000000000..771878712 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-factory-reset-act.yang @@ -0,0 +1,65 @@ +module Cisco-IOS-XR-linux-security-factory-reset-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-security-factory-reset-act"; + prefix factory-reset-act; + + 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 action package configuration. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-29 { + description + "IOS XR 7.8.1 revision."; + semver:module-version "1.0.0"; + } + + rpc factory-reset-shut { + description + "Action to start factory reset on location and shut it"; + input { + leaf location { + type string; + mandatory true; + description + "Location string to start reset"; + } + } + xr:xr-task "cisco-support"; + xr:cli-command "factory-reset shutdown location "; + } + rpc factory-reset-reload { + description + "Action to start factory reset on location and reload it"; + input { + leaf location { + type string; + mandatory true; + description + "Location string to start reset"; + } + } + xr:xr-task "cisco-support"; + xr:cli-command "factory-reset reload location "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper-sub1.yang new file mode 100644 index 000000000..c48c7709b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper-sub1.yang @@ -0,0 +1,75 @@ +submodule Cisco-IOS-XR-linux-security-showenc-oper-sub1 { + belongs-to Cisco-IOS-XR-linux-security-showenc-oper { + prefix Cisco-IOS-XR-linux-security-showenc-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR linux-security-showenc package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-01 { + description + "Adding show disk-encryption status yang model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHOW-DISK-ENC-STATUS-DATA { + description + "Show disk-encryption status output"; + leaf lv-mnt-pt { + type string { + length "0..256"; + } + description + "string lv_mntpt"; + } + leaf enc-status { + type string { + length "0..32"; + } + description + "string enc_status"; + } + leaf mnt-status { + type string { + length "0..32"; + } + description + "string mount_status"; + } + leaf prep-status { + type string { + length "0..32"; + } + description + "string prep_status"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper.yang new file mode 100644 index 000000000..b58c07d94 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-security-showenc-oper.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-linux-security-showenc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-security-showenc-oper"; + prefix linux-security-showenc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-linux-security-showenc-oper-sub1 { + revision-date 2021-07-01; + } + + 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 linux-security-showenc package operational data. + + This module contains definitions + for the following management objects: + disk-encryption: ssd encryption status + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-01 { + description + "Adding show disk-encryption status yang model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container disk-encryption { + config false; + description + "ssd encryption status"; + list node { + key "node-name"; + description + "Node ID"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses SHOW-DISK-ENC-STATUS-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-cfg.yang new file mode 100644 index 000000000..966319741 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-cfg.yang @@ -0,0 +1,524 @@ +module Cisco-IOS-XR-linux-xlnc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-xlnc-cfg"; + prefix linux-xlnc-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 linux-xlnc package configuration. + + This module contains definitions + for the following management objects: + linux-networking: Linux Networking interface configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-31 { + description + "Add VRF-disable, East-West, and source hint configuration + 2022-06-29 + Add deprecated options for statistics sync"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Addr-family { + type enumeration { + enum "ipv4" { + value 412; + description + "Internet Protocol version 4, RFC 791"; + } + enum "ipv6" { + value 413; + description + "Internet Protocol version 6, RFC 8200"; + } + } + description + "Addr family"; + } + + typedef L4-proto-family { + type enumeration { + enum "tcp" { + value 104; + description + "Transmission Control Protocol, RFC 793"; + } + enum "udp" { + value 105; + description + "User Datagram Protocol, RFC 768"; + } + } + description + "L4 proto family"; + } + + typedef Statistics-sync-interval { + type enumeration { + enum "5s" { + value 2; + description + "5 seconds"; + } + enum "10s" { + value 3; + description + "10 seconds"; + } + enum "30s" { + value 4; + description + "30 seconds"; + } + enum "60s" { + value 5; + description + "60 seconds"; + } + enum "2m" { + value 6; + description + "2 minutes"; + } + enum "3m" { + value 7; + description + "3 minutes"; + } + enum "4m" { + value 8; + description + "4 minutes"; + } + enum "5m" { + value 9; + description + "5 minutes"; + } + enum "6m" { + value 10; + description + "6 minutes"; + } + enum "7m" { + value 11; + description + "7 minutes"; + } + enum "8m" { + value 12; + description + "8 minutes"; + } + enum "9m" { + value 13; + description + "9 minutes"; + } + enum "10m" { + value 14; + description + "10 minutes"; + } + } + description + "Statistics sync interval"; + } + + typedef Xlnc-sync-dir { + type enumeration { + enum "xr-to-linux" { + value 0; + description + "Set direction to be from XR to Linux"; + } + enum "linux-to-xr" { + value 1; + description + "Set direction to be from Linux to XR"; + } + } + description + "Xlnc sync dir"; + } + + typedef Xlnc-protection-action { + type enumeration { + enum "permit" { + value 7926; + description + "Allow traffic"; + } + enum "deny" { + value 7927; + description + "Deny traffic"; + } + } + description + "Xlnc protection action"; + } + + container linux-networking { + description + "Linux Networking interface configuration"; + container exposed-interfaces { + description + "Configuration for exposed interfaces"; + list exposed-interface { + key "interface-name"; + description + "Configuration for a single exposed interface"; + container statistics-synchronization { + description + "Configure synchronization of this interface's + statistics between IOS-XR and Linux"; + leaf direction { + type Xlnc-sync-dir; + description + "Specify the direction in which statistics + sychronization should be performed. Currently + the only supported value is FromXR"; + } + leaf interval { + type Statistics-sync-interval; + description + "How often statistics sychronization takes + place"; + } + leaf deprecated-interval-in-seconds { + type uint32 { + range "1..99999999"; + } + description + "Deprecated"; + } + } + leaf exposed-interface-sync-direction { + type Xlnc-sync-dir; + description + "Synchronization direction for an exposed + interface."; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container statistics-synchronization { + description + "Configure synchronization of interface + statistics between IOS-XR and Linux"; + leaf direction { + type Xlnc-sync-dir; + description + "Specify the direction in which statistics + sychronization should be performed. Currently + the only supported value is FromXR"; + } + leaf interval { + type Statistics-sync-interval; + description + "How often statistics sychronization takes place"; + } + leaf deprecated-interval-in-seconds { + type uint32 { + range "1..99999999"; + } + description + "Deprecated"; + } + } + container vrf-names { + description + "Table of VRF names"; + list vrf-name { + key "vrf-name"; + description + "VRF name"; + container address-families { + description + "Table of address families"; + list address-family { + key "address-family"; + description + "IP address family"; + container traffic-protection { + description + "Traffic Protection configuration"; + container service-protocol-local-port-nums { + description + "Container for Traffic Protection Services"; + + grouping SERVICE-CONTENT { + description + "SERVICE CONTENT"; + container rules-table { + description + "Container for Traffic Protection Rule"; + + grouping RULE-CONTENT { + description + "RULE CONTENT"; + leaf rule-action { + type Xlnc-protection-action; + mandatory true; + description + "rule action"; + } + } + + grouping REMOTE-ADDRESS-LEAF { + description + "REMOTE ADDRESS LEAF"; + leaf remote-address { + type inet:ip-prefix; + description + "remote prefix/length"; + } + } + + grouping LOCAL-ADDRESS-LEAF { + description + "LOCAL ADDRESS LEAF"; + leaf local-address { + type inet:ip-prefix; + description + "local prefix/length"; + } + } + + grouping INTERFACE-NAME-LEAF { + description + "INTERFACE NAME LEAF"; + leaf interface-name { + type xr:Interface-name; + description + "interface name"; + } + } + list rule-local-address { + key "local-address"; + description + "Represents a single Traffic Protection + Rule, defining an exception to the + parent Service's default action."; + uses LOCAL-ADDRESS-LEAF; + uses RULE-CONTENT; + } + list rule-interface-name { + key "interface-name"; + description + "Represents a single Traffic Protection + Rule, defining an exception to the + parent Service's default action."; + uses INTERFACE-NAME-LEAF; + uses RULE-CONTENT; + } + list rule-remote-address { + key "remote-address"; + description + "Represents a single Traffic Protection + Rule, defining an exception to the + parent Service's default action."; + uses REMOTE-ADDRESS-LEAF; + uses RULE-CONTENT; + } + list rule-remote-address-local-address { + key "remote-address local-address"; + description + "Represents a single Traffic Protection + Rule, defining an exception to the + parent Service's default action."; + uses REMOTE-ADDRESS-LEAF; + uses LOCAL-ADDRESS-LEAF; + uses RULE-CONTENT; + } + list rule-remote-address-interface-name { + key "remote-address interface-name"; + description + "Represents a single Traffic Protection + Rule, defining an exception to the + parent Service's default action."; + uses REMOTE-ADDRESS-LEAF; + uses INTERFACE-NAME-LEAF; + uses RULE-CONTENT; + } + list rule-local-address-interface-name { + key "local-address interface-name"; + description + "Represents a single Traffic Protection + Rule, defining an exception to the + parent Service's default action."; + uses LOCAL-ADDRESS-LEAF; + uses INTERFACE-NAME-LEAF; + uses RULE-CONTENT; + } + list rule-remote-address-local-address-interface-name { + key "remote-address local-address interface-name"; + description + "Represents a single Traffic Protection + Rule, defining an exception to the + parent Service's default action."; + uses REMOTE-ADDRESS-LEAF; + uses LOCAL-ADDRESS-LEAF; + uses INTERFACE-NAME-LEAF; + uses RULE-CONTENT; + } + } + leaf service-default-action { + type Xlnc-protection-action; + description + "Indicates the default action to be taken + for traffic this Traffic Protection + Service."; + } + } + list service-protocol-local-port-num { + key "protocol local-port-num"; + description + "A single Traffic Protection Service, + defining a L4 protocol and local port + value."; + leaf protocol { + type L4-proto-family; + description + "L4 protocol"; + } + leaf local-port-num { + type xr:Cisco-ios-xr-port-number; + description + "Local port number"; + } + uses SERVICE-CONTENT; + } + list service-protocol-local-port-all { + key "protocol local-port-all"; + description + "A single Traffic Protection Service, + defining a L4 protocol and local port + value."; + leaf protocol { + type L4-proto-family; + description + "L4 protocol"; + } + leaf local-port-all { + type xr:Cisco-ios-xr-string; + description + "All ports"; + } + uses SERVICE-CONTENT; + } + } + } + container default-route { + description + "Per-VRF and address family default route + configuration"; + leaf software-forwarding { + type empty; + description + "Enable software forwarding for this VRF and + address family."; + } + } + container source-hint { + description + "Per-VRF and address family source hint + configuration"; + container default-route-source-hint { + description + "Default route source hint configuration"; + leaf active-management { + type empty; + must "not(../interface-name)"; + description + "Use the active RP management interface"; + } + leaf interface-name { + type xr:Interface-name; + must "not(../active-management)"; + description + "Interface name for source address"; + } + } + leaf mgmt-route-source-hint { + type xr:Interface-name; + description + "Management route source hint configuration"; + } + } + leaf address-family { + type Addr-family; + description + "IP address family"; + } + } + } + container east-west-intfs { + description + "Configure an East-West Interface."; + list east-west-intf { + key "interface-name"; + description + "Interface name for the East West interface + configured for this VRF."; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + leaf vrf-disable { + type empty; + description + "VRF disable config"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper-sub1.yang new file mode 100644 index 000000000..6aa97374c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper-sub1.yang @@ -0,0 +1,970 @@ +submodule Cisco-IOS-XR-linux-xlnc-oper-sub1 { + belongs-to Cisco-IOS-XR-linux-xlnc-oper { + prefix Cisco-IOS-XR-linux-xlnc-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR linux-xlnc package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-28 { + description + "Added new conflict reason to enumeration + 2022-09-16 + Added VRF-disable, East-West and source hint support + 2021-12-03 + Added secondary IPv4 addresses"; + semver:module-version "1.3.0"; + } + revision 2020-06-22 { + description + "Added address-only interface types and corresponding inconsistencies"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Xlnc-bag-ew-intf-unused-reason { + type enumeration { + enum "unknown" { + description + "Unknown reason"; + } + enum "interface-does-not-exist" { + description + "Configured East-West interface does not exist"; + } + enum "no-ip-address" { + description + "Configured East-West interface does not have a + suitable IP address"; + } + } + description + "Reason configured East-West interface not used"; + } + + typedef Xlnc-bag-src-hint-unused-reason { + type enumeration { + enum "unknown" { + description + "Unknown reason"; + } + enum "interface-does-not-exist" { + description + "Configured source hint interface does not exist"; + } + enum "no-ip-address" { + description + "Configured source hint interface does not have + a suitable IP address"; + } + enum "interface-not-exported-to-linux" { + description + "Configured source hint interface is not + exported to Linux"; + } + } + description + "Reason configured source hint not used"; + } + + typedef Xlnc-bag-conf-err-per-vrf-category { + type enumeration { + enum "source-hint-interface-unused" { + description + "Configured source hint interface unused"; + } + enum "east-west-interface-unused" { + description + "Configure East-West interface unused"; + } + } + description + "per-VRF config error category"; + } + + typedef Bag-mac-addr { + type yang:mac-address; + description + "Bag mac addr"; + } + + typedef Xlnc-bag-admin-state { + type enumeration { + enum "admin-down" { + description + "Administratively down"; + } + enum "admin-up" { + description + "Administratively up"; + } + enum "admin-unknown" { + description + "Unknown admin state"; + } + } + description + "Administrative state values"; + } + + typedef Xlnc-bag-attr { + type enumeration { + enum "admin-state" { + description + "Interface administrative state"; + } + enum "mac-address" { + description + "MAC address"; + } + enum "l3-mtu" { + description + "L3 MTU"; + } + enum "ipv4-address" { + description + "IPv4 address"; + } + enum "ipv6-enabled" { + description + "IPv6 enabled"; + } + enum "ipv6-address" { + description + "IPv6 address"; + } + enum "unknown-attr" { + description + "Unknown attribute"; + } + } + description + "Interface attribute type"; + } + + typedef Xlnc-bag-op { + type enumeration { + enum "set" { + description + "Set"; + } + enum "delete" { + description + "Delete"; + } + enum "unknown-op" { + description + "Unknown"; + } + } + description + "Operation type (set or delete)"; + } + + typedef Xlnc-bag-error-category { + type enumeration { + enum "default-error-category" { + description + "Default error type"; + } + enum "set-linux-error-category" { + description + "Error setting interface attributes in Linux"; + } + enum "set-ios-xr-error-category" { + description + "Error setting interface attributes in IOS-XR"; + } + enum "im-resync-error-category" { + description + "Error setting interface attribute during IM + resync"; + } + enum "unknown-category" { + description + "Unknown error category"; + } + } + description + "Error category"; + } + + typedef Xlnc-bag-inconsistency-category { + type enumeration { + enum "attribute-conflicting-sync" { + description + "An attempt was made to synchronize interface + attributes in one direction, when they were + already being synchronized in the opposing + direction."; + } + enum "conflicting-im-resync" { + description + "During an IM resync, an attempt was made to + synchronize interface attributes in one + direction when they were already being + synchronized in the opposing direction."; + } + enum "more-than-one-ipv6-link-local-address" { + description + "An attempt was made to configure more than one + link-local IPv6 address on a single interface."; + } + enum "more-than-on-ipv4-address" { + description + "An attempt was made to configure more than one + primary IPv4 address on a single interface."; + } + enum "delete-unknown-ipv6-link-local-address" { + description + "An attempt was made to remove an unknown + link-local IPv6 address from an interface."; + } + enum "delete-unknown-ipv4-address" { + description + "An attempt was made to remove an unknown IPv4 + address from an interface."; + } + enum "attribute-set-in-linux-failure" { + description + "An attempt to set an interface attribute value + in Linux failed."; + } + enum "attribute-set-in-xr-failure" { + description + "An attempt to set an interface attribute value + in IOS-XR failed."; + } + enum "mtu-too-small-for-ipv6" { + description + "The MTU set in Linux is smaller than the + minimum size required for IPv6. The Linux + kernel will remove any IPv6 addresses on the + interface, which must be re-added when the MTU + is increased."; + } + enum "mac-address-change-not-supported" { + description + "MAC address changes are not supported for this + interface type on this platform. The MAC + address has not been changed."; + } + enum "unknown-inconsistency" { + description + "Unknown inconsistency type"; + } + enum "delete-loopback-address" { + description + "An address that was automatically added to a + Linux loopback device to provide L3 + reachability has been unexpectedly removed. + Traffic to/from Linux applications using that + address will be dropped"; + } + enum "delete-secondary-ipv4-address" { + description + "An interface with secondary IPv4 address(es) + was configured to be linux-managed, but the + secondary IPv4 address configuration cannot be + removed from IOS-XR"; + } + } + description + "XLNC inconsistency types"; + } + + typedef Xlnc-bag-sync-dir { + type enumeration { + enum "to-xr" { + description + "From Linux to IOS-XR"; + } + enum "to-linux" { + description + "From IOS-XR to Linux"; + } + enum "unknown-dir" { + description + "Unknown direction"; + } + } + description + "Synchronization direction"; + } + + typedef Xlnc-bag-conf-err-global-category { + type enumeration { + enum "stats-intvl-mapped" { + description + "The desired global statistics sync interval + could not be configured and was mapped to an + alternative value."; + } + } + description + "Global config error category"; + } + + typedef Xlnc-bag-intf-chosen-reason { + type enumeration { + enum "explicitly-configured" { + description + "Explicitly configured"; + } + enum "automatically-selected" { + description + "Automatically selected"; + } + } + description + "Reason why the interface was selected"; + } + + typedef Bag-in6-addr { + type inet:ipv6-address; + description + "Bag in6 addr"; + } + + typedef Xlnc-bag-addr { + type enumeration { + enum "ipv4-address" { + description + "IPv4 address"; + } + enum "ipv6-address" { + description + "IPv6 address"; + } + enum "unknown-address-type" { + description + "Unknown address type"; + } + } + description + "IP address type"; + } + + grouping XLNC-BAG-EW-INTF-UNUSED-TYPE { + description + "East-West interface not being used"; + leaf interface-name { + type string; + description + "IOS-XR interface name"; + } + leaf reason { + type Xlnc-bag-ew-intf-unused-reason; + description + "Reason East-West interface is not being used"; + } + } + + grouping XLNC-BAG-SRC-HINT-UNUSED-TYPE { + description + "Source hint interface not being used"; + leaf interface-name { + type string; + description + "IOS-XR interface name"; + } + leaf address-family { + type Xlnc-bag-addr; + description + "Address family"; + } + leaf reason { + type Xlnc-bag-src-hint-unused-reason; + description + "Reason source hint interface is not being used"; + } + } + + grouping XLNC-VRF-CONFIG-ERROR-TYPE { + description + "XLNC per-VRF configuration error types"; + container source-hint-interface-unused { + when "../category = 'source-hint-interface-unused'" { + description + "../Category = 'SourceHintInterfaceUnused'"; + } + description + "Source hint interface not being used"; + uses XLNC-BAG-SRC-HINT-UNUSED-TYPE; + } + container east-west-interface-unused { + when "../category = 'east-west-interface-unused'" { + description + "../Category = 'EastWestInterfaceUnused'"; + } + description + "East-West interface not being used"; + uses XLNC-BAG-EW-INTF-UNUSED-TYPE; + } + leaf category { + type Xlnc-bag-conf-err-per-vrf-category; + description + "Category"; + } + } + + grouping XLNC-BAG-CONF-ERRS-PER-VRF { + description + "XLNC per_vrf configuration errors"; + list error { + description + "Sequence of configuration errors"; + uses XLNC-VRF-CONFIG-ERROR-TYPE; + } + } + + grouping XLNC-BAG-INTERFACE-INCONSISTENCIES { + description + "XLNC inconsistencies observed for a given + interface and associated interface metadata."; + leaf xr-interface-name { + type string; + description + "IOS-XR interface name"; + } + leaf linux-interface-name { + type string; + description + "Linux interface name of the corresponding + exposed XR interface (EXI)"; + } + leaf vrf-name { + type string; + description + "IOS-XR VRF name the interface is assigned to"; + } + leaf linux-network-namespace-name { + type string; + description + "Linux network namespace name corresponding to + the IOS-XR VRF the interface is assigned to"; + } + leaf inconsistencies-truncated { + type boolean; + description + "The oldest entries are no longer saved, because + the sequence became too long."; + } + list inconsistency { + description + "Sequence of inconsistencies"; + uses XLNC-BAG-INCONSISTENCY; + } + } + + grouping XLNC-BAG-SET-XR-ERROR-TYPE { + description + "Failed operation to set an attribute in XR."; + container operation { + description + "Failed synchronization operation"; + uses XLNC-BAG-SYNC-INTF-ATTRS-OP; + } + leaf ios-xr-error-decode { + type string; + description + "Optional decode string for the IOS-XR error."; + } + leaf error-string { + type string; + description + "Optional error string describing the failure."; + } + } + + grouping XLNC-BAG-SET-LINUX-ERROR-TYPE { + description + "Failed operation to set an attribute in Linux."; + container operation { + description + "Failed synchronization operation"; + uses XLNC-BAG-SYNC-INTF-ATTRS-OP; + } + leaf attribute-value-valid { + type boolean; + description + "Indicates whether the attribute value in the + synchronization operation is valid."; + } + leaf ios-xr-error-decode { + type string; + description + "Decode string for the IOS-XR error."; + } + leaf libnl-error-decode { + type string; + description + "Optional decode string for the libnl error."; + } + } + + grouping XLNC-BAG-V6-ADDR { + description + "IPv6 address type"; + leaf address { + type Bag-in6-addr; + description + "Linux representation of the address"; + } + leaf prefix-length { + type uint8; + description + "Network prefix length"; + } + } + + grouping XLNC-BAG-V4-ADDR { + description + "IPv4 address type"; + leaf address { + type inet:ipv4-address; + description + "Linux representation of the address"; + } + leaf prefix-length { + type uint8; + description + "Network prefix length"; + } + } + + grouping XLNC-ATTR-VALUE-TYPE { + description + "Interface attribute values"; + container ipv4-address { + when "../attribute-type = 'ipv4-address'" { + description + "../AttributeType = 'IPv4Address'"; + } + description + "IPv4 address"; + uses XLNC-BAG-V4-ADDR; + } + container ipv6-address { + when "../attribute-type = 'ipv6-address'" { + description + "../AttributeType = 'IPv6Address'"; + } + description + "IPv6 address"; + uses XLNC-BAG-V6-ADDR; + } + leaf attribute-type { + type Xlnc-bag-attr; + description + "AttributeType"; + } + leaf admin-state { + when "../attribute-type = 'admin-state'" { + description + "../AttributeType = 'AdminState'"; + } + type Xlnc-bag-admin-state; + description + "Interface administrative state"; + } + leaf mac-address { + when "../attribute-type = 'mac-address'" { + description + "../AttributeType = 'MACAddress'"; + } + type Bag-mac-addr; + description + "MAC address"; + } + leaf l3-mtu { + when "../attribute-type = 'l3-mtu'" { + description + "../AttributeType = 'L3_MTU'"; + } + type uint32; + description + "L3 MTU"; + } + leaf ipv6-enabled { + when "../attribute-type = 'ipv6-enabled'" { + description + "../AttributeType = 'IPv6Enabled'"; + } + type boolean; + description + "IPv6 enabled in IOS-XR"; + } + } + + grouping XLNC-BAG-SYNC-INTF-ATTRS-OP { + description + "Interface attributes synchronization operation"; + container attribute-value { + description + "Value of interface attribute"; + uses XLNC-ATTR-VALUE-TYPE; + } + leaf synchronization-direction { + type Xlnc-bag-sync-dir; + description + "Synchronization direction"; + } + leaf operation-type { + type Xlnc-bag-op; + description + "Operation type (set or delete)"; + } + } + + grouping XLNC-ERROR-TYPE { + description + "XLNC error types which may cause an inconsistency"; + container interface-attributes-operation { + when "../error-category = 'default-error-category'" { + description + "../ErrorCategory = 'DefaultErrorCategory'"; + } + description + "Interface attributes synchronization operation"; + uses XLNC-BAG-SYNC-INTF-ATTRS-OP; + } + container set-linux-error { + when "../error-category = 'set-linux-error-category'" { + description + "../ErrorCategory = 'SetLinuxErrorCategory'"; + } + description + "Error type associated with failure to set + interface attributes in Linux."; + uses XLNC-BAG-SET-LINUX-ERROR-TYPE; + } + container set-ios-xr-error { + when "../error-category = 'set-ios-xr-error-category'" { + description + "../ErrorCategory = 'SetIOS_XR_ErrorCategory'"; + } + description + "Error type associated with failure to set + interface attributes in IOS-XR."; + uses XLNC-BAG-SET-XR-ERROR-TYPE; + } + container resync-attributes-operation { + when "../error-category = 'im-resync-error-category'" { + description + "../ErrorCategory = 'ImResyncErrorCategory'"; + } + description + "Resync interface attributes synchronization + operation"; + uses XLNC-BAG-SYNC-INTF-ATTRS-OP; + } + leaf error-category { + type Xlnc-bag-error-category; + description + "ErrorCategory"; + } + } + + grouping XLNC-BAG-INCONSISTENCY { + description + "XLNC inconsistency record"; + container error { + description + "Diagnostic information about the error which + caused the inconsistency."; + uses XLNC-ERROR-TYPE; + } + leaf milliseconds-since-epoch { + type uint64; + units "millisecond"; + description + "How many milliseconds after the Unix epoch the + inconsistency occurred"; + } + leaf inconsistency-category { + type Xlnc-bag-inconsistency-category; + description + "Type of inconsistency which occurred"; + } + } + + grouping XLNC-BAG-VRF-INCONSISTENCIES { + description + "XLNC inconsistencies observed for a given + interface and associated interface metadata."; + leaf vrf-name-xr { + type string; + description + "IOS-XR VRF name"; + } + leaf linux-network-namespace-name { + type string; + description + "Linux network namespace name corresponding to + the IOS-XR VRF"; + } + leaf inconsistencies-truncated { + type boolean; + description + "The oldest entries are no longer saved, because + the sequence became too long."; + } + list inconsistency { + description + "Sequence of inconsistencies"; + uses XLNC-BAG-INCONSISTENCY; + } + } + + grouping XLNC-BAG-INTERFACE-ADDRESS-ONLY { + description + "XLNC Address-only interface"; + leaf interface-name-xr { + type string; + description + "IOS-XR interface name"; + } + leaf vrf-name-xr { + type string; + description + "IOS-XR VRF name the interface is assigned to"; + } + leaf ipv4-address-xr { + type inet:ipv4-address; + description + "IPv4 address which has been added to a Linux + loopback device"; + } + leaf virtual { + type boolean; + description + "Whether this address comes from an IOS-XR + Virtual IP address"; + } + leaf-list ipv4-secondary-address { + type inet:ipv4-address; + description + "IPv4 secondary addresses which have been added + to a Linux loopback device"; + } + leaf-list ipv4-address { + type Bag-in6-addr; + description + "IPv6 addressess which has been added to a Linux + loopback device"; + } + } + + grouping XLNC-BAG-GLOBAL-STATS-SYNC-MAP-TYPE { + description + "Global statistics synchronization mapping"; + leaf synchronization-direction { + type Xlnc-bag-sync-dir; + description + "Synchronization direction"; + } + leaf requested-interval { + type uint32; + description + "Requested interval"; + } + leaf programmed-interval { + type uint32; + description + "Programmed interval"; + } + } + + grouping XLNC-GLOBAL-CONFIG-ERROR-TYPE { + description + "XLNC global configuration error types"; + container global-statistics-sync-mapping { + when "../category = 'stats-intvl-mapped'" { + description + "../Category = 'StatsIntvlMapped'"; + } + description + "Global statistics synchronization mapping"; + uses XLNC-BAG-GLOBAL-STATS-SYNC-MAP-TYPE; + } + leaf category { + type Xlnc-bag-conf-err-global-category; + description + "Category"; + } + } + + grouping XLNC-BAG-CONF-ERRS-GLOBAL { + description + "XLNC global configuration errors"; + list error { + description + "Sequence of configuration errors"; + uses XLNC-GLOBAL-CONFIG-ERROR-TYPE; + } + } + + grouping XLNC-BAG-ROUTE-MTU-INFO-TYPE { + description + "MTU value and (one of) the lowest MTU + interface(s) it was derived from."; + leaf mtu { + type uint16; + description + "MTU hint set on the route"; + } + leaf interface-name { + type string; + description + "IOS-XR interface name of an interface used to + calculate the MTU"; + } + } + + grouping XLNC-ADDR-VALUE-TYPE { + description + "IP address values"; + leaf address-type { + type Xlnc-bag-addr; + description + "AddressType"; + } + leaf ipv4-address { + when "../address-type = 'ipv4-address'" { + description + "../AddressType = 'IPv4Address'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../address-type = 'ipv6-address'" { + description + "../AddressType = 'IPv6Address'"; + } + type Bag-in6-addr; + description + "IPv6 address"; + } + } + + grouping XLNC-BAG-ADDR-INTF-REASON-TYPE { + description + "Address, interface, and a reason they were chosen + for either a source hint or East-West + communication"; + container ip-address { + description + "IP address"; + uses XLNC-ADDR-VALUE-TYPE; + } + leaf interface-name { + type string; + description + "IOS-XR interface name of the interface the + address came from"; + } + leaf reason { + type Xlnc-bag-intf-chosen-reason; + description + "Reason the address and interface were selected"; + } + } + + grouping XLNC-BAG-VRF-STATUS { + description + "XLNC VRF status"; + container default-route-source-hint-ipv4 { + description + "Source hint interface and addresses associated + with the Linux default IPv4 route"; + uses XLNC-BAG-ADDR-INTF-REASON-TYPE; + } + container default-route-mtu-ipv4 { + description + "MTU associated with the Linux default IPv4 route + and an interface used to calculate the MTU."; + uses XLNC-BAG-ROUTE-MTU-INFO-TYPE; + } + container default-route-source-hint-ipv6 { + description + "Source hint interface and addresses associated + with the Linux default IPv6 route"; + uses XLNC-BAG-ADDR-INTF-REASON-TYPE; + } + container default-route-mtu-ipv6 { + description + "MTU associated with the Linux default IPv6 route + and an interface used to calculate the MTU."; + uses XLNC-BAG-ROUTE-MTU-INFO-TYPE; + } + leaf vrf-name-xr { + type string; + description + "IOS-XR VRF name"; + } + leaf rsi-id { + type uint64; + description + "VRF RSI ID (if enabled and globally configured)"; + } + leaf globally-configured { + type boolean; + description + "VRF exists in IOS-XR global configuration"; + } + leaf enabled { + type boolean; + description + "VRF is enabled for synchronization to Linux"; + } + list east-west-ipv4 { + description + "Interfaces and addresses reserved for East-West + communication over IPv4"; + uses XLNC-BAG-ADDR-INTF-REASON-TYPE; + } + list east-west-ipv6 { + description + "Interfaces and addresses reserved for East-West + communication over IPv6"; + uses XLNC-BAG-ADDR-INTF-REASON-TYPE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper.yang new file mode 100644 index 000000000..07ac2ebbd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-linux-xlnc-oper.yang @@ -0,0 +1,172 @@ +module Cisco-IOS-XR-linux-xlnc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-linux-xlnc-oper"; + prefix linux-xlnc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-linux-xlnc-oper-sub1 { + revision-date 2022-09-28; + } + + 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 linux-xlnc package operational data. + + This module contains definitions + for the following management objects: + linux-networking: Linux Networking operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-28 { + description + "Added new conflict reason to enumeration + 2022-09-16 + Added VRF-disable, East-West and source hint support + 2021-12-03 + Added secondary IPv4 addresses"; + semver:module-version "1.3.0"; + } + revision 2020-06-22 { + description + "Added address-only interface types and corresponding inconsistencies"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container linux-networking { + config false; + description + "Linux Networking operational data"; + container global { + description + "Global operational data"; + container vrfs { + description + "Linux Networking VRF and network namespace + information"; + list vrf { + key "vrf-name"; + description + "XR VRF and its corresponding Linux network + namespace"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses XLNC-BAG-VRF-STATUS; + } + } + container global-config-errors { + description + "Errors in Linux networking global configuration"; + uses XLNC-BAG-CONF-ERRS-GLOBAL; + } + container interfaces { + description + "Linux Networking interface information"; + container address-only-interfaces { + description + "Interfaces with addresses addeded to a Linux + Loopback"; + list address-only-interface { + key "vrf-name interface-name"; + description + "Interface with an IP address added to a Linux + Loopback"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses XLNC-BAG-INTERFACE-ADDRESS-ONLY; + } + } + } + container status { + description + "Linux Networking operational status"; + container inconsistencies-per-vrfs { + description + "Global inconsistencies table"; + list inconsistencies-per-vrf { + key "vrf-name"; + description + "Inconsistencies observed for a particular VRF + ."; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses XLNC-BAG-VRF-INCONSISTENCIES; + } + } + container inconsistencies-per-interfaces { + description + "Global inconsistencies table"; + list inconsistencies-per-interface { + key "interface-name"; + description + "Inconsistencies observed for a particular + interface."; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses XLNC-BAG-INTERFACE-INCONSISTENCIES; + } + } + } + container per-vrf-config-errors { + description + "Table of per-VRF errors in Linux networking + configuration"; + list per-vrf-config-error { + key "vrf-name"; + description + "Errors in Linux networking configuration for a + single VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses XLNC-BAG-CONF-ERRS-PER-VRF; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lldp-clear-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lldp-clear-act.yang new file mode 100644 index 000000000..a14a53ab4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lldp-clear-act.yang @@ -0,0 +1,58 @@ +module Cisco-IOS-XR-lldp-clear-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lldp-clear-act"; + prefix lldp-clear-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 clear per-interface adjacencies for lldp module. + + Copyright (c) 2018-2019, 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-04 { + description + "Added task privileges."; + semver:module-version "1.1.0"; + } + revision 2019-11-13 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-09-09 { + description + "IOS XR 6.5.1 revision."; + } + + rpc clear-lldp-adj { + description + "Clear lldp per interface adjacencies"; + input { + leaf interface { + type string; + description + "Interface name in R/S/I/P format"; + } + } + xr:xr-task "ethernet-services | lldp"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-cfg.yang new file mode 100644 index 000000000..8e95c6925 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-cfg.yang @@ -0,0 +1,289 @@ +module Cisco-IOS-XR-lmp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lmp-cfg"; + prefix lmp-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 lmp package configuration. + + This module contains definitions + for the following management objects: + lmp: Main common OLM/LMP configuration container + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Olm-addr { + type enumeration { + enum "ipv4" { + value 101; + description + "IPv4 address"; + } + enum "ipv6" { + value 102; + description + "IPv6 address"; + } + enum "unnumbered" { + value 103; + description + "Unnumbered address"; + } + enum "nsap" { + value 104; + description + "NSAP address"; + } + } + description + "Olm addr"; + } + + typedef Olm-switching-cap { + type enumeration { + enum "lsc" { + value 150; + description + "Lambda switch capable"; + } + enum "fsc" { + value 200; + description + "Fiber switch capable"; + } + } + description + "Olm switching cap"; + } + + container lmp { + description + "Main common OLM/LMP configuration container"; + container gmpls-uni { + description + "GMPLS UNI specific OLM/LMP configuration"; + container neighbors { + description + "Neighbor configuration"; + list neighbor { + key "neighbor-name"; + description + "Neighbor configuration"; + container ipcc { + description + "IPCC configuration"; + container routed { + description + "Routed IPCC configuration"; + leaf enable { + type empty; + description + "Routed IPCC creation"; + } + } + } + leaf enable { + type empty; + description + "Neighbor creation"; + } + leaf neighbor-router-id { + type inet:ipv4-address-no-zone; + description + "Neighbor router ID (IPv4 Address)"; + } + leaf neighbor-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Neighbor name"; + } + } + } + container router-id { + presence "enable router-id"; + description + "Local GMPLS UNI router ID"; + leaf interface-name { + type xr:Interface-name; + description + "Name of interface"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Local router ID (IPv4 Address)"; + } + } + container controllers { + description + "Configure GMPLS UNI OLM/LMP controllers"; + list controller { + key "controller-name"; + description + "Configure an GMPLS UNI OLM/LMP contoller"; + container local-link-id { + description + "Local Link ID configuration"; + leaf address-type { + type Olm-addr; + description + "Local link ID address type"; + } + leaf unnumbered { + when "../address-type = 'unnumbered'" { + description + "../AddressType = Unnumbered"; + } + type uint32; + description + "Local address unnumbered "; + } + leaf address { + when "../address-type = 'ipv4'" { + description + "../AddressType = IPv4"; + } + type inet:ipv4-address-no-zone; + description + "Local link ID address IPv4"; + } + } + container adjacency { + description + "Neighbor controller adjacency configuration"; + container remote-neighbor { + description + "Neighbor data"; + container interface-id { + description + "Neighbor Interface ID configuration"; + leaf address-type { + type Olm-addr; + description + "Local link ID address type"; + } + leaf unnumbered { + when "../address-type = 'unnumbered'" { + description + "../AddressType = Unnumbered"; + } + type uint32; + description + "Local address unnumbered "; + } + leaf address { + when "../address-type = 'ipv4'" { + description + "../AddressType = IPv4"; + } + type inet:ipv4-address-no-zone; + description + "Local link ID address IPv4"; + } + } + container link-id { + description + "Neighbor Link ID configuration"; + leaf address-type { + type Olm-addr; + description + "Neighbor link ID address type"; + } + leaf unnumbered { + when "../address-type = 'unnumbered'" { + description + "../AddressType = Unnumbered"; + } + type uint32; + description + "Neighbor address unnumbered [Not + supported]"; + } + leaf address { + when "../address-type = 'ipv4'" { + description + "../AddressType = IPv4"; + } + type inet:ipv4-address-no-zone; + description + "Neighbor ID address IPv4"; + } + } + leaf neighbor-association { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Create LMP controller to neighbor + association"; + } + leaf link-switching-capability { + type Olm-switching-cap; + default "lsc"; + description + "Neighbor link switching capability + configuration"; + } + leaf flexi-grid-capable { + type uint32; + description + "Remote node flexi grid capability "; + } + } + } + leaf enable { + type empty; + description + "Enable the OLM/LMP application on this + controller"; + } + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + } + } + } + leaf enable { + type empty; + description + "Enable the OLM/LMP application"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-datatypes.yang new file mode 100644 index 000000000..e9c2701b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-datatypes.yang @@ -0,0 +1,81 @@ +module Cisco-IOS-XR-lmp-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lmp-datatypes"; + prefix lmp-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Olm-addr { + type enumeration { + enum "ipv4" { + value 101; + description + "IPv4 address"; + } + enum "ipv6" { + value 102; + description + "IPv6 address"; + } + enum "unnumbered" { + value 103; + description + "Unnumbered address"; + } + enum "nsap" { + value 104; + description + "NSAP address"; + } + } + description + "Olm addr"; + } + + typedef Olm-switching-cap { + type enumeration { + enum "lsc" { + value 150; + description + "Lambda switch capable"; + } + enum "fsc" { + value 200; + description + "Fiber switch capable"; + } + } + description + "Olm switching cap"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper-sub1.yang new file mode 100644 index 000000000..758f21a21 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper-sub1.yang @@ -0,0 +1,857 @@ +submodule Cisco-IOS-XR-lmp-oper-sub1 { + belongs-to Cisco-IOS-XR-lmp-oper { + prefix Cisco-IOS-XR-lmp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lmp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Olmipcc-state { + type enumeration { + enum "ipcc-state-oir-removed" { + description + "OIR Removed"; + } + enum "ipcc-state-admin-down" { + description + "OOS"; + } + enum "ipcc-state-down" { + description + "Down"; + } + enum "ipcc-state-cfg-send" { + description + "ConfigSend"; + } + enum "ipcc-state-cfg-rcv" { + description + "ConfigReceive"; + } + enum "ipcc-state-active" { + description + "Active"; + } + enum "ipcc-state-up" { + description + "Up"; + } + enum "ipcc-state-going-down" { + description + "Going Down"; + } + enum "ipcc-state-unknown" { + description + "Unknown/Invalid"; + } + } + description + "The OLM IPCC state"; + } + + typedef Olm-comp-link-lmp-status { + type enumeration { + enum "comp-link-lmp-status-if-id-mismatch" { + description + "Component link IF ID mismatch"; + } + enum "comp-link-lmp-status-switch-cap-mismatch" { + description + "Component link switching capability ID mismatch"; + } + } + description + "The component link LMP status"; + } + + typedef Olm-link-encoding { + type enumeration { + enum "none" { + description + "None"; + } + enum "packet" { + description + "Packet"; + } + enum "ethernet" { + description + "Ethernet"; + } + enum "ansi-etsi-pdh" { + description + "ANSI/ETSI PDH"; + } + enum "reserved1" { + description + "Reserved"; + } + enum "sdh-sonet" { + description + "SDH ITU-T G.707 / SONET ANSI T1.105"; + } + enum "reserved2" { + description + "Reserved"; + } + enum "digital-wrapper" { + description + "Digital Wrapper"; + } + enum "lambda" { + description + "Lambda (photonic)"; + } + enum "fiber" { + description + "Fiber"; + } + enum "reserved3" { + description + "Reserved"; + } + enum "fiber-channel" { + description + "FiberChannel"; + } + enum "lencode-unknown" { + description + "Unknown"; + } + enum "ethernet2" { + description + "Ethernet Type-2"; + } + } + description + "LMP link encoding type as defined in [RFC3471]"; + } + + typedef Olmte-link-lmp-state { + type enumeration { + enum "te-link-lmp-state-down" { + description + "Down"; + } + enum "te-link-lmp-state-init" { + description + "Init"; + } + enum "te-link-lmp-state-up" { + description + "Up"; + } + enum "te-link-lmp-state-degraded" { + description + "Degraded"; + } + enum "te-link-lmp-state-unknown" { + description + "Unknown/Invalid"; + } + } + description + "The OLM TE link LMP state"; + } + + typedef Olm-comp-link-lmp-state { + type enumeration { + enum "comp-link-lmp-state-down" { + description + "Down"; + } + enum "comp-link-lmp-state-test" { + description + "Test"; + } + enum "comp-link-lmp-state-passive-test" { + description + "Pasv Test"; + } + enum "comp-link-lmp-state-up-free" { + description + "Up Free"; + } + enum "comp-link-lmp-state-up-allocated" { + description + "Up Allocated"; + } + enum "comp-link-lmp-state-unknown" { + description + "Unknown/Invalid"; + } + } + description + "The OLM Component link LMP state"; + } + + typedef Olm-comp-link-im-state { + type enumeration { + enum "comp-link-im-state-oir" { + description + "OIR removed"; + } + enum "comp-link-im-state-down" { + description + "Down"; + } + enum "comp-link-im-state-admin-down" { + description + "Admin Down"; + } + enum "comp-link-im-state-up" { + description + "Up"; + } + enum "comp-link-im-state-unknown" { + description + "Unknown"; + } + } + description + "The OLM Component link IM state"; + } + + typedef Olm-mux-cap { + type enumeration { + enum "psc1" { + description + "PSC 1"; + } + enum "psc2" { + description + "PSC 2"; + } + enum "psc3" { + description + "PSC 3"; + } + enum "psc4" { + description + "PSC 4"; + } + enum "l2sc" { + description + "L2SC"; + } + enum "tdm" { + description + "TDM"; + } + enum "lsc" { + description + "LSC"; + } + enum "fsc" { + description + "FSC"; + } + enum "dcsc" { + description + "DCSC"; + } + enum "unknown-mux-cap" { + description + "Unknown Mux Cap"; + } + } + description + "Multiplexing capability"; + } + + typedef Olmipcc { + type enumeration { + enum "ipcc-type-global-routed" { + description + "Global routed IPCC"; + } + enum "ipcc-type-global-if-bound" { + description + "Global I/F bound IPCC"; + } + enum "ipcc-type-ldcc-sdcc" { + description + "SDCC/LDCC in fiber in band type IPCC"; + } + enum "ipcc-type-unknown" { + description + "Unknown IPCC type"; + } + } + description + "The OLM IPCC type"; + } + + typedef Olm-object-owner { + type enumeration { + enum "unknown" { + description + "Unknown owner"; + } + enum "ouni" { + description + "OIF OUNI"; + } + enum "gmpls-nni" { + description + "GMPLS NNI"; + } + enum "gmpls-uni" { + description + "GMPLS UNI"; + } + } + description + "The OLM object owner"; + } + + typedef Olm-router-id { + type enumeration { + enum "not-configured" { + description + "No router ID configured"; + } + enum "global" { + description + "Global router ID"; + } + enum "protocol-based-address" { + description + "Protocol based CLIrouter ID configured"; + } + enum "interface" { + description + "Protocol based CLI I/Frouter ID configured"; + } + enum "network-element" { + description + "Protocol based CLI I/F routerID configured on + I/F that is not known to the system"; + } + enum "unknown-type" { + description + "Unknown"; + } + } + description + "The OLM router ID type"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "Ipv6 address"; + } + + typedef Olm-addr-type-id { + type enumeration { + enum "unknown-address" { + value 0; + description + "Unknown address type"; + } + enum "ipv4" { + value 101; + description + "IPv4 address type"; + } + enum "ipv6" { + value 102; + description + "IPv6 address type"; + } + enum "unnumbered" { + value 103; + description + "Unnumberedaddress type"; + } + } + description + "OLM Link Address Type"; + } + + grouping OLM-COMPONENT-LINK-ID-INFO { + description + "OLM component link ID information"; + leaf component-interface-id { + type uint32; + description + "LMP component link ID for an I/F"; + } + } + + grouping OLM-IPCC-INFO { + description + "OLM information for a particular IPCC"; + container remote-ipcc-address { + description + "The remote node'sIPCC address"; + uses OLM-ADDR; + } + container source-ip-cc-address { + description + "The local IPCC address"; + uses OLM-ADDR; + } + leaf ipcc-id { + type uint32; + description + "Global active IPCCfor this neighbor"; + } + leaf ipc-ctype { + type Olmipcc; + description + "OLM IPCC type"; + } + leaf interface-name { + type string; + description + "The interface name forI/F IPCCs"; + } + leaf neighbor-name { + type string; + description + "Neighbor name of theIPCCs neighbor"; + } + leaf ipcc-state { + type Olmipcc-state; + description + "OLM IPCC master state"; + } + leaf lmp-hello-interval { + type uint32; + description + "LMP hello send interval in msec [DEPRECATED]"; + } + leaf lmp-hello-interval-minimum { + type uint32; + description + "LMP minimum acceptable hello send interval + [DEPRECATED]"; + } + leaf lmp-hello-interval-maximum { + type uint32; + description + "LMP maximum acceptable hello send interval + [DEPRECATED]"; + } + leaf lmp-hello-dead-interval { + type uint32; + description + "LMP hello dead interval [DEPRECATED]"; + } + leaf lmp-hello-dead-interval-minimum { + type uint32; + description + "LMP minimum acceptable hello dead interval + [DEPRECATED]"; + } + leaf lmp-hello-dead-interval-maximum { + type uint32; + description + "LMP maximum acceptable hello dead interval + [DEPRECATED]"; + } + leaf lmp-hello-transmit-packets { + type uint32; + description + "LMP hello transmit packet count[DEPRECATED]"; + } + leaf lmp-hello-receive-packets { + type uint32; + description + "LMP hello receive packet count [DEPRECATED]"; + } + leaf lmp-hello-transmit-packet-sequence-number { + type uint32; + description + "LMP hello transmit packet sequence number + [DEPRECATED]"; + } + leaf lmp-hello-receive-packet-sequence-number { + type uint32; + description + "LMP hello receive packet sequence + number[DEPRECATED]"; + } + leaf lmp-transmit-msg-id { + type uint32; + description + "LMP transmit message ID[DEPRECATED]"; + } + leaf lmp-receive-msg-id { + type uint32; + description + "LMP receive message ID[DEPRECATED]"; + } + leaf lmp-link-sum-transmit-packets { + type uint32; + description + "LMP link summary transmit packet count + [DEPRECATED]"; + } + leaf lmp-link-sum-receive-packets { + type uint32; + description + "LMP link summary receive packet count + [DEPRECATED]"; + } + } + + grouping OLM-NEIGHBOR-INFO { + description + "OLM information for a particular neighbor"; + container neighbor-address { + description + "The remote node ID of the neighbor"; + uses OLM-ADDR; + } + leaf protocol-owner { + type Olm-object-owner; + description + "Protocol owningthis neighbor"; + } + leaf ipcc-id { + type uint32; + description + "The global active IPCCfor this neighbor"; + } + leaf is-lmp-enabled { + type boolean; + description + "Is LMP enabled on this neighbor [DEPRECATED]"; + } + leaf is-lmp-config-disabled { + type boolean; + description + "Are LMP hellos disabled through configuration + for this neighbor [DEPRECATED]"; + } + leaf lmp-transmit-msg-id { + type uint32; + description + "LMP transmit message ID [DEPRECATED]"; + } + leaf lmp-receive-msg-id { + type uint32; + description + "LMP receive message ID [DEPRECATED]"; + } + leaf lmp-link-sum-transmit-packets { + type uint32; + description + "LMP link summary transmit packet count + [DEPRECATED]"; + } + leaf lmp-link-sum-receive-packets { + type uint32; + description + "LMP link summary receive packet + count[DEPRECATED]"; + } + list te-link { + description + "A list of TE Links connected to this neighbor"; + uses OLM-TE-LINK-INFO; + } + list ipcc { + description + "A list of IPCCs connected to this neighbor"; + uses OLM-IPCC-INFO; + } + } + + grouping OLM-TE-LINK-INFO { + description + "OLM information for a particular TE Link"; + container local-link-id { + description + "The local datalink ID"; + uses OLM-ADDR; + } + container remote-link-id { + description + "The remote datalink ID"; + uses OLM-ADDR; + } + container local-te-link-id { + description + "Local TE-Link ID/ TNA address"; + uses OLM-ADDR; + } + container remote-te-link-id { + description + "Remote TE-Link ID/ TNA address"; + uses OLM-ADDR; + } + container neighbor-address { + description + "The address of the neighbor"; + uses OLM-ADDR; + } + container remote-ipcc-address { + description + "The remote node's IPCC address"; + uses OLM-ADDR; + } + leaf interface-name { + type string; + description + "Interface forOLM info"; + } + leaf protocol-owner { + type Olm-object-owner; + description + "Protocol owningthis te-link"; + } + leaf neighbor-name { + type string; + description + "The name of the neighbor"; + } + leaf ipcc-id { + type uint32; + description + "The IPCC ID"; + } + leaf ipc-ctype { + type Olmipcc; + description + "OLM IPCC type"; + } + leaf ipcc-name { + type string; + description + "The name ofthe IPCC associated with the TE Link"; + } + leaf local-mux-cap { + type Olm-mux-cap; + description + "The local mux capability"; + } + leaf remote-mux-cap { + type Olm-mux-cap; + description + "The remote mux capability"; + } + leaf im-state { + type Olm-comp-link-im-state; + description + "data link IM state"; + } + leaf lmp-state { + type Olm-comp-link-lmp-state; + description + "data link LMP state"; + } + leaf te-link-lmp-state { + type Olmte-link-lmp-state; + description + "TE LinkLMP state"; + } + leaf gmpls-te-link-local-minimum-bandwidth { + type uint64; + units "byte/s"; + description + "GMPLS localminimum B/W in bytes/sec"; + } + leaf gmpls-te-link-local-maximum-bandwidth { + type uint64; + units "byte/s"; + description + "GMPLS localmaximum B/W in bytes/sec"; + } + leaf gmpls-te-link-neighbor-minimum-bandwidth { + type uint64; + units "byte/s"; + description + "GMPLSneighbor minimum B/W in bytes/sec"; + } + leaf gmpls-te-link-neighbor-maximum-bandwidth { + type uint64; + units "byte/s"; + description + "GMPLSneighbor maximum B/W in bytes/sec"; + } + leaf gmpls-te-link-local-encoding-type { + type Olm-link-encoding; + description + "GMPLS locallink encoding type"; + } + leaf gmpls-te-link-neighbor-encoding-type { + type Olm-link-encoding; + description + "GMPLS neighborlink encoding type"; + } + leaf is-lmp-enabled { + type boolean; + description + "Is LMP enabledon this TE link"; + } + leaf lmp-transmit-msg-id { + type uint32; + description + "LMP transmitmessage ID"; + } + leaf lmp-receive-msg-id { + type uint32; + description + "LMP receivemessage ID"; + } + leaf-list lmp-comp-link-status { + type Olm-comp-link-lmp-status; + description + "Component link LMP status indicators"; + } + } + + grouping OLM-TIME { + description + "OLM Time Stamp"; + leaf time-connected { + type uint32; + description + "The time the clientconnected in sec"; + } + } + + grouping OLM-CLIENT-INFO { + description + "OLM information for a particular OLM client"; + container connected-time { + description + "The time the clientconnected in sec"; + uses OLM-TIME; + } + leaf node-name { + type string; + description + "The RP name that the clientprocess is running on"; + } + } + + grouping OLM-ADDR-U { + description + "OLM ADDR U"; + leaf address-type { + type Olm-addr-type-id; + description + "AddressType"; + } + leaf ipv4-address { + when "../address-type = 'ipv4'" { + description + "../AddressType = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../address-type = 'ipv6'" { + description + "../AddressType = 'IPv6'"; + } + type Ipv6-address; + description + "IPv6 address"; + } + leaf unnumbered-address { + when "../address-type = 'unnumbered'" { + description + "../AddressType = 'Unnumbered'"; + } + type uint32; + description + "Unnumberedaddress"; + } + } + + grouping OLM-ADDR { + description + "TE Link or component link address"; + container address { + description + "Address Union"; + uses OLM-ADDR-U; + } + } + + grouping OLM-GLOBAL-INFO { + description + "OLM general information"; + container local-ouni-lmp-node-id { + description + "Local OUNI LMP Node ID"; + uses OLM-ADDR; + } + container local-mpls-te-lmp-node-id { + description + "MPLS TE LMP Node ID"; + uses OLM-ADDR; + } + container local-gmpls-uni-lmp-node-id { + description + "GMPLS UNI LMP Node ID"; + uses OLM-ADDR; + } + leaf local-ouni-lmp-node-id-interface { + type string; + description + "Local OUNI LMP Node ID I/F"; + } + leaf local-ouni-lmp-node-id-type { + type Olm-router-id; + description + "Local OUNI LMP Node ID type"; + } + leaf is-ouni-config-exist { + type boolean; + description + "TRUE if any OLM OUNI config exists"; + } + leaf is-gmpls-nni-config-exist { + type boolean; + description + "TRUE if any OLM/LNP GMPLS NNI config exists"; + } + leaf is-gmpls-uni-config-exist { + type boolean; + description + "TRUE if any OLM/LMP GMPLS UNI config exists"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper.yang new file mode 100644 index 000000000..93142ad60 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lmp-oper.yang @@ -0,0 +1,125 @@ +module Cisco-IOS-XR-lmp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lmp-oper"; + prefix lmp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lmp-oper-sub1 { + revision-date 2019-04-05; + } + + 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 lmp package operational data. + + This module contains definitions + for the following management objects: + lmp: Main common UCP/OLM operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lmp { + config false; + description + "Main common UCP/OLM operational data"; + container global-status { + description + "Global OLM process information"; + uses OLM-GLOBAL-INFO; + } + container clients { + description + "UCP OLM clients container class"; + list client { + key "client-name"; + description + "Information on a particular OLM API client"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client name"; + } + uses OLM-CLIENT-INFO; + } + } + container gmpls-uni { + description + "GMPLS UNI specific OLM/LMP configuration"; + container te-links { + description + "UCP OLM TE Links container class"; + list te-link { + key "controller-name"; + description + "Information on a particular OLM TE Link"; + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + uses OLM-TE-LINK-INFO; + } + } + container neighbors { + description + "UCP OLM neighbors container class"; + list neighbor { + key "neighbor-name"; + description + "Information on a particular OLM neighbor"; + leaf neighbor-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Neighbor name"; + } + uses OLM-NEIGHBOR-INFO; + } + } + } + container component-link-ids { + description + "UCP OLM component link ID container class"; + list component-link-id { + key "controller-name"; + description + "Retrieve the LMP component link ID for a given + controller"; + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + uses OLM-COMPONENT-LINK-ID-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper-sub1.yang new file mode 100644 index 000000000..f25af334f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper-sub1.yang @@ -0,0 +1,172 @@ +submodule Cisco-IOS-XR-lns-ea-oper-sub1 { + belongs-to Cisco-IOS-XR-lns-ea-oper { + prefix Cisco-IOS-XR-lns-ea-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lns-ea package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LNS-EA-PARENT-INTERFACE-INFO { + description + "LNS EA parent interface information"; + container srgv-mac { + description + "SRG VMac-address"; + uses ETHER-MACADDR-TYPE; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf is-in-sync { + type boolean; + description + "Is in sync"; + } + } + + grouping ETHER-MACADDR-TYPE { + description + "ETHER MACADDR TYPE"; + leaf macaddr { + type yang:hex-string; + description + "macaddr"; + } + } + + grouping LNS-EA-INTERFACE-INFO { + description + "LNS EA interface information"; + container peer-mac { + description + "Peer Mac-address"; + uses ETHER-MACADDR-TYPE; + } + container local-mac { + description + "Local Mac-address"; + uses ETHER-MACADDR-TYPE; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf session-id { + type uint16; + description + "Session ID"; + } + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf remote-session-id { + type uint16; + description + "Remote_Session ID"; + } + leaf remote-tunnel-id { + type uint16; + description + "Remote_Tunnel ID"; + } + leaf tcp-mss-adjust { + type uint16; + description + "tcp mss adjust"; + } + leaf parent-interface { + type xr:Interface-name; + description + "Parent Interface"; + } + leaf set-df { + type boolean; + description + "Set DF"; + } + leaf reflect-df { + type boolean; + description + "ReflectDF"; + } + leaf set-tos { + type uint8; + description + "Set tos"; + } + leaf reflect-tos { + type boolean; + description + "Reflecttos"; + } + leaf local-endpt { + type inet:ipv4-address; + description + "local endpt"; + } + leaf remote-endpt { + type inet:ipv4-address; + description + "remote endpt"; + } + leaf table-id { + type uint16; + description + "VrfTableID"; + } + leaf is-in-sync { + type boolean; + description + "Is in sync"; + } + leaf is-platform-created { + type boolean; + description + "Is Platform created"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper.yang new file mode 100644 index 000000000..14e105621 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lns-ea-oper.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-lns-ea-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lns-ea-oper"; + prefix lns-ea-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lns-ea-oper-sub1 { + revision-date 2019-04-05; + } + + 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 lns-ea package operational data. + + This module contains definitions + for the following management objects: + lns-ea: LNS Ea data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lns-ea { + config false; + description + "LNS Ea data"; + container nodes { + description + "LNS_EA list of nodes"; + list node { + key "node-name"; + description + "LNS-EA operational data for a particular node"; + container interface-ids { + description + "LNS interface info"; + list interface-id { + key "interface-name"; + description + "LNS interface info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses LNS-EA-INTERFACE-INFO; + } + } + container parent-interface-ids { + description + "LNS parent interface info"; + list parent-interface-id { + key "parent-interface-name"; + description + "LNS parent interface info"; + leaf parent-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses LNS-EA-PARENT-INTERFACE-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-act.yang new file mode 100644 index 000000000..5255ac674 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-act.yang @@ -0,0 +1,57 @@ +module Cisco-IOS-XR-lpts-ifib-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-ifib-act"; + prefix lpts-ifib-act; + + 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 action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-20 { + description + "Initial revision."; + semver:module-version "1.0.0"; + } + + rpc clear-lpts-ifib-statistics-location { + description + "Clear lpts ifib stats location"; + input { + leaf node-location { + type string; + description + "Node location"; + } + } + } + rpc clear-lpts-ifib-times-location { + description + "Clear ifib times location"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper-sub1.yang new file mode 100644 index 000000000..5d70c2914 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper-sub1.yang @@ -0,0 +1,181 @@ +submodule Cisco-IOS-XR-lpts-ifib-oper-sub1 { + belongs-to Cisco-IOS-XR-lpts-ifib-oper { + prefix Cisco-IOS-XR-lpts-ifib-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lpts-ifib package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-24 { + description + "added task-name to LptsIfib class."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-12-17 { + description + "slice-id/entry type changed from Integer to Hex-integer."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FM-IFIB-ENTRY { + description + "LPTS IFIB Slice Entry Information"; + leaf destination-type { + type string; + description + "Destination Key Type"; + } + leaf destination-value { + type string; + description + "Destination Port/ICMP Type/IGMP Type"; + } + leaf source-port { + type string; + description + "Source port"; + } + leaf destination-addr { + type string; + description + "Destination IP Address"; + } + leaf source-addr { + type string; + description + "Source IP Address"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vid { + type uint32; + description + "VRF ID"; + } + leaf l3protocol { + type uint32; + description + "Layer 3 Protocol"; + } + leaf l4protocol { + type uint32; + description + "Layer 4 Protocol"; + } + leaf intf-name { + type string; + description + "Interface Name"; + } + leaf intf-handle { + type uint32; + description + "Interface Handle"; + } + leaf is-syn { + type uint8; + description + "Is SYN"; + } + leaf opcode { + type string; + description + "Opcode"; + } + leaf accepts { + type uint64; + description + "Packets matched to accept"; + } + leaf drops { + type uint64; + description + "Packets matched to drop"; + } + leaf flow-type { + type string; + description + "Flow type"; + } + leaf listener-tag { + type string; + description + "Listener Tag"; + } + leaf local-flag { + type uint8; + description + "Local Flag"; + } + leaf is-fgid { + type uint8; + description + "Is FGID or not"; + } + leaf deliver-list-short { + type string; + description + "Deliver List Short Format"; + } + leaf deliver-list-long { + type string; + description + "Deliver List Long Format"; + } + leaf min-ttl { + type uint8; + description + "Minimum TTL"; + } + leaf pending-ifibq-delay { + type uint32; + description + "pending ifib queue delay"; + } + leaf sl-ifibq-delay { + type uint32; + description + "sl_ifibq delay"; + } + leaf ifib-program-time { + type string; + description + "ifib program time in netio"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper.yang new file mode 100644 index 000000000..898a5b79d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-ifib-oper.yang @@ -0,0 +1,105 @@ +module Cisco-IOS-XR-lpts-ifib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-ifib-oper"; + prefix lpts-ifib-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lpts-ifib-oper-sub1 { + revision-date 2020-06-24; + } + + 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 lpts-ifib package operational data. + + This module contains definitions + for the following management objects: + lpts-ifib: lpts ifib database + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-24 { + description + "added task-name to LptsIfib class."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-12-17 { + description + "slice-id/entry type changed from Integer to Hex-integer."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lpts-ifib { + config false; + description + "lpts ifib database"; + container nodes { + description + "Node ifib database"; + list node { + key "node-name"; + description + "Per node slice "; + container slice-ids { + description + "Slice specific"; + list slice-id { + key "slice-name"; + description + "slice types"; + leaf slice-name { + type xr:Cisco-ios-xr-string; + description + "Type value"; + } + list entry { + key "entry"; + description + "Data for single pre-ifib entry"; + leaf entry { + type xr:Hex-integer; + description + "Single Pre-ifib entry"; + } + uses FM-IFIB-ENTRY; + } + } + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-lib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-lib-cfg.yang new file mode 100644 index 000000000..5e8597c01 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-lib-cfg.yang @@ -0,0 +1,46 @@ +module Cisco-IOS-XR-lpts-lib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-lib-cfg"; + prefix lpts-lib-cfg; + + 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 lpts-lib package configuration. + + This module contains definitions + for the following management objects: + lpts: lpts configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lpts { + description + "lpts configuration commands"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-act.yang new file mode 100644 index 000000000..92ad8167c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-act.yang @@ -0,0 +1,42 @@ +module Cisco-IOS-XR-lpts-pa-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-pa-act"; + prefix lpts-pa-act; + + 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 action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-20 { + description + "Initial revision"; + semver:module-version "1.0.0"; + } + + rpc clear-lpts-internal-queue-pa-statistics { + description + "Clear lpts internal stats "; + } + rpc clear-lpts-client-times { + description + "Clear lpts client times "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper-sub1.yang new file mode 100644 index 000000000..ecc4d72cf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper-sub1.yang @@ -0,0 +1,251 @@ +submodule Cisco-IOS-XR-lpts-pa-oper-sub1 { + belongs-to Cisco-IOS-XR-lpts-pa-oper { + prefix Cisco-IOS-XR-lpts-pa-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lpts-pa package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-24 { + description + "added new members in binding oper data as location name, vrf name, client id name, etc"; + semver:module-version "1.1.0"; + } + revision 2020-06-24 { + description + "added task-name to LptsPA class."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CLIENT-ENTRY { + description + "Client Structure"; + leaf flags { + type uint32; + description + "Client flags"; + } + leaf open-flags { + type uint32; + description + "Open flags"; + } + leaf location { + type uint32; + description + "Rack/slot/instance"; + } + leaf client-id { + type uint32; + description + "Client ID"; + } + leaf times { + type yang:hex-string; + description + "Transaction statisitics"; + } + } + + grouping TIMESPEC-ENTRY { + description + "Creation or Update Time"; + leaf tv-sec { + type uint32; + description + "Time Sec"; + } + leaf tv-nsec { + type uint32; + description + "Time Nanosec"; + } + } + + grouping BINDING-ENTRY { + description + "LPTS Binding Entry"; + container ctime { + description + "Creation Time"; + uses TIMESPEC-ENTRY; + } + container utime { + description + "Update Time"; + uses TIMESPEC-ENTRY; + } + leaf location { + type uint32; + description + "Node Id"; + } + leaf location-name { + type string; + description + "Rack/slot/instance"; + } + leaf client-id { + type uint32; + description + "Client ID"; + } + leaf client-name { + type string; + description + "Client's Name"; + } + leaf vid { + type uint32; + description + "VR/VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf cookie { + type uint32; + description + "Cookie"; + } + leaf l3protocol { + type uint32; + description + "Layer 3 protocol"; + } + leaf l4protocol { + type uint32; + description + "Layer 4 protocol"; + } + leaf smask { + type uint32; + description + "Filter operation"; + } + leaf ifs { + type uint32; + description + "Ifhandle"; + } + leaf ptype { + type uint32; + description + "Packet type"; + } + leaf local-ip { + type yang:hex-string; + description + "Local address"; + } + leaf local-ip-str { + type string; + description + "Local IP address"; + } + leaf remote-ip { + type yang:hex-string; + description + "Remote address"; + } + leaf remote-ip-str { + type string; + description + "Remote IP address"; + } + leaf local-len { + type uint8; + description + "Local address length"; + } + leaf remote-len { + type uint8; + description + "Remote address length"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf remote-port { + type uint16; + description + "Remote port"; + } + leaf packet-misc { + type uint32; + description + "L5 info"; + } + leaf scope { + type uint32; + description + "Scope"; + } + leaf client-flags { + type uint32; + description + "Client flags"; + } + leaf min-ttl { + type uint8; + description + "Minimum TTL"; + } + leaf ctime-str { + type string; + description + "Creation Time In DateTime Format"; + } + leaf utime-str { + type string; + description + "Update Time In DateTime Format"; + } + leaf lazy-bindq-delay { + type uint32; + description + "Lazy binding queue delay"; + } + leaf ptq-delay { + type uint32; + description + "Pending transactions queue delay"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper.yang new file mode 100644 index 000000000..241992c83 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pa-oper.yang @@ -0,0 +1,93 @@ +module Cisco-IOS-XR-lpts-pa-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-pa-oper"; + prefix lpts-pa-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lpts-pa-oper-sub1 { + revision-date 2021-11-24; + } + + 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 lpts-pa package operational data. + + This module contains definitions + for the following management objects: + lpts-pa: lpts pre-ifib data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-24 { + description + "added new members in binding oper data as location name, vrf name, client id name, etc"; + semver:module-version "1.1.0"; + } + revision 2020-06-24 { + description + "added task-name to LptsPA class."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lpts-pa { + config false; + description + "lpts pre-ifib data"; + container entry-xr { + description + "lpts pa bindings"; + list entry { + key "entry"; + description + "Data for single PA Binding"; + leaf entry { + type xr:Cisco-ios-xr-string; + description + "Single Binding entry"; + } + uses BINDING-ENTRY; + } + } + container entries { + description + "lpts pa clients"; + list entry { + key "entry"; + description + "Data for single PA Client"; + leaf entry { + type xr:Cisco-ios-xr-string; + description + "Single Client entry"; + } + uses CLIENT-ENTRY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-act.yang new file mode 100644 index 000000000..f5e197238 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-act.yang @@ -0,0 +1,75 @@ +module Cisco-IOS-XR-lpts-pre-ifib-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-pre-ifib-act"; + prefix lpts-pre-ifib-act; + + 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 action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-20 { + description + "Initial revision."; + semver:module-version "1.0.0"; + } + + rpc clear-lpts-pifib-statistics-location { + description + "Clear lpts pre-ifib stats location"; + input { + leaf node-location { + type string; + description + "Node location"; + } + } + } + rpc clear-lpts-punt-statistics-interface { + description + "Clear LPTS punt stats interface"; + input { + leaf interface { + type string; + mandatory true; + description + "Interface name"; + } + leaf node-location { + type string; + mandatory true; + description + "Location name"; + } + } + } + rpc clear-lpts-punt-statistics-location { + description + "Clear lpts punt stats location"; + input { + leaf node-location { + type string; + mandatory true; + description + "Node location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-cfg.yang new file mode 100644 index 000000000..361150ac9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-cfg.yang @@ -0,0 +1,1263 @@ +module Cisco-IOS-XR-lpts-pre-ifib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-pre-ifib-cfg"; + prefix lpts-pre-ifib-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-lpts-lib-cfg { + prefix a1; + } + + 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 lpts-pre-ifib package configuration. + + This YANG module augments the + Cisco-IOS-XR-lpts-lib-cfg + Cisco-IOS-XR-config-mda-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-23 { + description + "Added IPv4-TTL2 and IPv6-TTL2 LPTS Punt types. + 2022-02-11 + LPTS Punt Policer per NPU support. + 2021-12-15 + added PM TWAMP NPU flow enum in LPTSFlowType."; + semver:module-version "5.0.0"; + } + revision 2021-06-18 { + description + "added CnBNG flow enum in LPTSFlowType. + 2021-05-20 + LPTS Punt Policer Support for SSFP."; + semver:module-version "4.0.0"; + } + revision 2020-08-26 { + description + "added mandatory to ACL related classes."; + semver:module-version "3.0.0"; + } + revision 2020-01-20 { + description + "LPTS Punt Policer Support for LLDP. + 2019-10-23 + LPTS Punt Policer Support."; + semver:module-version "2.1.0"; + } + revision 2019-07-15 { + description + "added PM TWAMP flow enum in LPTSFlowType."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-26 { + description + "LPTS Domains Support."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lpts-punt { + type enumeration { + enum "mcast" { + value 0; + description + "Multicast packets"; + } + enum "bcast" { + value 1; + description + "Broadcast packets"; + } + enum "arp" { + value 2; + description + "ARP packets"; + } + enum "cdp" { + value 3; + description + "CDP packets"; + } + enum "lacp" { + value 4; + description + "LACP packets"; + } + enum "lldp" { + value 5; + description + "LLDP packets"; + } + enum "ssfp" { + value 6; + description + "SSFP packets"; + } + enum "ipv6-nd-proxy" { + value 7; + description + "IPv6-ND-proxy packets"; + } + enum "ipv4-ttl1" { + value 8; + description + "IPv4 TTL1 packets"; + } + enum "ipv6-ttl1" { + value 9; + description + "IPv6 TTL1 packets"; + } + enum "gdp" { + value 10; + description + "GDP packets"; + } + enum "ipv4-ttl2" { + value 11; + description + "IPv4 TTL2 packets"; + } + enum "ipv6-ttl2" { + value 12; + description + "IPv6 TTL2 packets"; + } + } + description + "Lpts punt"; + } + + typedef Lpts-dynamic-flow-config { + type enumeration { + enum "flows-config" { + value 0; + description + "LPTS Flows Limit"; + } + enum "platform-config" { + value 1; + description + "Platform Limit"; + } + } + description + "Lpts dynamic flow config"; + } + + typedef Lptsnpu-name { + type enumeration { + enum "np0" { + value 0; + description + "NPU 0"; + } + enum "np1" { + value 1; + description + "NPU 1"; + } + enum "np2" { + value 2; + description + "NPU 2"; + } + enum "np3" { + value 3; + description + "NPU 3"; + } + enum "np4" { + value 4; + description + "NPU 4"; + } + enum "np5" { + value 5; + description + "NPU 5"; + } + enum "np6" { + value 6; + description + "NPU 6"; + } + enum "np7" { + value 7; + description + "NPU 7"; + } + } + description + "Lptsnpu name"; + } + + typedef Lpts-pre-i-fib-precedence-number { + type union { + type enumeration { + enum "critical" { + value 5; + description + "Match packets with critical precedence"; + } + enum "flash" { + value 3; + description + "Match packets with flash precedence"; + } + enum "flash-override" { + value 4; + description + "Match packets with flash override precedence"; + } + enum "immediate" { + value 2; + description + "Match packets with immediate precedence"; + } + enum "internet" { + value 6; + description + "Match packets with internetwork control + precedence"; + } + enum "network" { + value 7; + description + "Match packets with network control precedence"; + } + enum "priority" { + value 1; + description + "Match packets with priority precedence"; + } + enum "routine" { + value 0; + description + "Match packets with routine precedence"; + } + } + type uint32 { + range "0..7"; + } + } + description + "Lpts pre i fib precedence number"; + } + + typedef Lpts-flow { + type enumeration { + enum "config-default" { + value 0; + description + "Invalid flow type used for fallback + configuration"; + } + enum "l2tpv2-fragment" { + value 1; + description + "L2TPv2 Fragments"; + } + enum "fragment" { + value 2; + description + "Fragments"; + } + enum "ospf-multicast-known" { + value 3; + description + "OSPF multicast packets on configured interfaces"; + } + enum "ospf-multicast-default" { + value 4; + description + "OSPF multicast packets on unconfigured (or + newly-configured) interfaces"; + } + enum "ospf-unicast-known" { + value 5; + description + "OSPF unicast packets"; + } + enum "ospf-unicast-default" { + value 6; + description + "OSPF unicast packets"; + } + enum "isis-known" { + value 7; + description + "IS-IS packets on configured interfaces"; + } + enum "isis-default" { + value 8; + description + "IS-IS packets on unconfigured (or + newly-configured) interfaces"; + } + enum "bfd-known" { + value 9; + description + "BFD packets on configured interfaces"; + } + enum "bfd-default" { + value 10; + description + "BFD packets on unconfigured (or + newly-configured) interfaces"; + } + enum "bfd-multipath-known" { + value 11; + description + "BFD multipath packets on configured interfaces"; + } + enum "bfd-multipath0" { + value 12; + description + "BFD multipath packets on multiple configured + interfaces"; + } + enum "bfd-blb-known" { + value 13; + description + "BFD packets over Logical Bundle on configured + interfaces"; + } + enum "bfd-blb0" { + value 14; + description + "BFD packets over Logical Bundle 0"; + } + enum "bfd-sp0" { + value 15; + description + "BFD packets over Single Path 0"; + } + enum "bgp-known" { + value 16; + description + "Packets from established BGP peering sessions"; + } + enum "bgp-config-peer" { + value 17; + description + "Packets from a configured BGP peer (SYNs or + newly-established sessions)"; + } + enum "bgp-default" { + value 18; + description + "Packets from unconfigured, newly-configured, or + wild-card BGP peer"; + } + enum "pim-multicast-default" { + value 19; + description + "PIM multicast packets on configured interfaces"; + } + enum "pim-multicast-known" { + value 20; + description + "PIM multicast packets on unconfigured (or + newly-configured) interfaces"; + } + enum "pim-unicast" { + value 21; + description + "PIM unicast packets"; + } + enum "igmp" { + value 22; + description + "IGMP packets"; + } + enum "icmp-local" { + value 23; + description + "ICMP or ICMPv6 packets with local interest"; + } + enum "icmp-app" { + value 24; + description + "ICMP or ICMPv6 packets of interest to + applications"; + } + enum "icmp-control" { + value 25; + description + "ICMP or ICMPv6 packets that are used for + control/signalling purpose"; + } + enum "icmp-default" { + value 26; + description + "Other ICMP or ICMPv6 packets (may be of recent + interest to applications)"; + } + enum "icmp-app-default" { + value 27; + description + "ICMP or ICMPv6 echo reply packets (when + specific entry not present)"; + } + enum "ldp-tcp-known" { + value 28; + description + "Packets from an established LDP TCP peering + session"; + } + enum "ldp-tcp-config-peer" { + value 29; + description + "Packets from a configured LDP TCP peer (SYNs or + newly-established sessions)"; + } + enum "ldp-tcp-default" { + value 30; + description + "Packets from an unconfigured, newly-configured + or wild-card LDP TCP peer"; + } + enum "ldp-udp" { + value 31; + description + "Unicast LDP UDP packets"; + } + enum "all-routers" { + value 32; + description + "Packets sent to the all-routers multicast + address (includes LDP UDP multicast)"; + } + enum "lmp-tcp-known" { + value 33; + description + "Packets from an established LMP TCP peering + session"; + } + enum "lmp-tcp-config-peer" { + value 34; + description + "Packets from a configured LMP TCP peer (SYNs or + newly-established sessions)"; + } + enum "lmp-tcp-default" { + value 35; + description + "Packets from an unconfigured, newly-configured + or wild-card LMP TCP peer"; + } + enum "lmp-udp" { + value 36; + description + "Unicast LMP UDP packets"; + } + enum "rsvp-udp" { + value 37; + description + "RSVP-over-UDP packets"; + } + enum "rsvp-default" { + value 38; + description + "RSVP (IP protocol 46) packets"; + } + enum "rsvp-known" { + value 39; + description + "RSVP (IP protocol 46) packets"; + } + enum "ike" { + value 40; + description + "IKE packets"; + } + enum "ipsec-known" { + value 41; + description + "AH or ESP packets with known SPIs"; + } + enum "ipsec-default" { + value 42; + description + "AH or ESP packets with unknown or + newly-configured SPIs"; + } + enum "ipsec-fragment" { + value 43; + description + "AH or ESP fragmented packets"; + } + enum "msdp-known" { + value 44; + description + "Packets from an established MSDP session"; + } + enum "msdp-config-peer" { + value 45; + description + "Packets from a configured MSDP peer"; + } + enum "msdp-default" { + value 46; + description + "Packets from an uncofigured, newly-configured + or wild-card MSDP peer"; + } + enum "snmp" { + value 47; + description + "SNMP packets"; + } + enum "ssh-known" { + value 48; + description + "Packets from an established SSH session"; + } + enum "ssh-default" { + value 49; + description + "Packets from a new or newly-established SSH + session"; + } + enum "http-known" { + value 50; + description + "Packets from an established HTTP session"; + } + enum "http-default" { + value 51; + description + "Packets from a new or newly-established HTTP + session"; + } + enum "shttp-known" { + value 52; + description + "Packets from an established SHTTP session"; + } + enum "shttp-default" { + value 53; + description + "Packets from a new or newly-established SSHTP + session"; + } + enum "telnet-known" { + value 54; + description + "Packets from an established TELNET session"; + } + enum "telnet-default" { + value 55; + description + "Packets from a new or newly-established TELNET + session"; + } + enum "css-known" { + value 56; + description + "Packets from an established CSS session"; + } + enum "css-default" { + value 57; + description + "Packets from a new or newly-established CSS + session"; + } + enum "rsh-known" { + value 58; + description + "Packets from an established rsh session"; + } + enum "rsh-default" { + value 59; + description + "Packets from a new or newly-established rsh + session"; + } + enum "udp-known" { + value 60; + description + "Packets for established UDP sessions"; + } + enum "udp-listen" { + value 61; + description + "Packets for configured UDP services"; + } + enum "udp-config-peer" { + value 62; + description + "Packets for configured UDP-based protocol + sessions"; + } + enum "udp-default" { + value 63; + description + "Packets for unconfigured or newly-configured + UDP services"; + } + enum "tcp-known" { + value 64; + description + "Packets for established TCP sessions"; + } + enum "tcp-listen" { + value 65; + description + "Packets for configured TCP services"; + } + enum "tcp-config-peer" { + value 66; + description + "Packets for configured TCP peers"; + } + enum "tcp-default" { + value 67; + description + "Packets for unconfigured or newly-configured + TCP services"; + } + enum "multicast-known" { + value 68; + description + "Packets for configured multicast groups"; + } + enum "multicast-default" { + value 69; + description + "Packets for unconfigured or newly-configured + multicast groups"; + } + enum "raw-listen" { + value 70; + description + "Packets for configured IP protocols"; + } + enum "raw-default" { + value 71; + description + "Packets for unconfigured or newly-configured + IPv4 or IPv6 protocols"; + } + enum "ipsla" { + value 72; + description + "IP SLA packets destined to squid Q #4 for + timestamping by squid driver"; + } + enum "eigrp" { + value 73; + description + "EIGRP packets."; + } + enum "rip" { + value 74; + description + "RIP packets."; + } + enum "l2tpv3" { + value 75; + description + "L2TPv3 packets."; + } + enum "pcep-tcp-default" { + value 76; + description + "PCEP packets."; + } + enum "gre" { + value 77; + description + "GRE packets."; + } + enum "vrrp" { + value 78; + description + "VRRP Packets."; + } + enum "hsrp" { + value 79; + description + "HSRP Packets."; + } + enum "mpls-ping" { + value 80; + description + "MPLS ping packet coming or arriving from 3503 + port"; + } + enum "l2tpv2-default" { + value 81; + description + "L2TPv2 default packets."; + } + enum "l2tpv2-known" { + value 82; + description + "L2TPv2 known packets."; + } + enum "dns" { + value 83; + description + "DNS packets."; + } + enum "radius" { + value 84; + description + "RADIUS packets."; + } + enum "tacacs" { + value 85; + description + "TACACS packets."; + } + enum "ntp-default" { + value 86; + description + "NTP packets received at 123 port number any + address."; + } + enum "ntp-known" { + value 87; + description + "NTP packets received at 123 port number known + address."; + } + enum "mobile-ipv6" { + value 88; + description + "Mobile IPV6 packets."; + } + enum "amt" { + value 89; + description + "AMT packets received at UDP port number 2268."; + } + enum "sdac-tcp" { + value 90; + description + "SDAC TCP packets."; + } + enum "radius-coa" { + value 91; + description + "RADIUS Change of Authorization packets."; + } + enum "rel-udp" { + value 92; + description + "REL UDP packets."; + } + enum "dhcp4" { + value 93; + description + "DHCP IPV4 packets."; + } + enum "dhcp6" { + value 94; + description + "DHCP IPV6 packets."; + } + enum "onepk" { + value 95; + description + "ONEPK packets."; + } + enum "exr" { + value 96; + description + "EXR packets."; + } + enum "bob-ietf" { + value 97; + description + "IETF BFD packets over Logical Bundle."; + } + enum "xipc-throt" { + value 98; + description + "XIPC Throttle Flow."; + } + enum "pm-twamp" { + value 99; + description + "PM TWAMP Packets."; + } + enum "cnbng-gtpu" { + value 100; + description + "CnBNG GTPU Packets."; + } + enum "cnbng-pfcp" { + value 101; + description + "CnBNG PFCP Packets."; + } + enum "pm-twamp-npu" { + value 102; + description + "PM TWAMP NPU Packets."; + } + enum "platform-limit" { + value 103; + description + "Platform Limit."; + } + } + description + "Lpts flow"; + } + + typedef Lptsafi { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 type"; + } + enum "ipv6" { + value 2; + description + "IPv6 type"; + } + } + description + "Lptsafi"; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container lpts-local { + description + "lpts node specific configuration commands"; + container ipunt-policer-local { + presence "Indicates a ipunt-policer-local node is configured."; + description + "Node specific Pre IFIB (Internal Forwarding + Information Base) Configuration"; + container punt-type-local-table { + description + "Punt Policer Table"; + uses PUNT-TYPE; + } + container punt-policer-np-table { + description + "Punt Policer NP Table"; + uses PUNT-POLICER-NP; + } + uses ENABLE; + uses PUNT-DOMAIN-TABLE; + uses PUNT-POLICER-IFH; + } + container ipolicer-local-tables { + description + "Node specific Pre IFIB (Internal Forwarding + Information Base) Configuration"; + list ipolicer-local-table { + key "id1"; + description + "Pre IFIB (Internal Forwarding Information + Base) configuration table"; + container np-flows { + description + "NP name"; + list np-flow { + key "flow-type"; + description + "Table of NP Flow names"; + leaf np-rate { + type uint32 { + range "0..4294967295"; + } + description + "Configured rate value"; + } + leaf flow-type { + type Lpts-flow; + description + "LPTS Flow Type"; + } + } + } + leaf id1 { + type xr:Cisco-ios-xr-string; + description + "none"; + } + } + } + container dynamic-flows-tables { + description + "Node specific Pre IFIB (Internal Forwarding + Information Base) Configuration"; + list dynamic-flows-table { + key "table-type"; + description + "Table for Dynamic Flows"; + leaf table-type { + type Lpts-dynamic-flow-config; + description + "LPTS Dynamic Flows Table Type"; + } + list flow-type { + key "flow-type"; + description + "Selected flow type"; + leaf max { + type uint32; + description + "Configured Max TCAM value"; + } + leaf flow-type { + type Lpts-flow; + description + "LPTS Flow Type"; + } + } + } + } + container ipolicer-local { + presence "Indicates a ipolicer-local node is configured."; + description + "Node specific Pre IFIB (Internal Forwarding + Information Base) Configuration"; + uses ENABLE; + uses DOMAIN-TABLE; + uses FLOW-TABLE; + } + } + } + + grouping PUNT-TYPE { + description + "Common node of punt-type-table, + punt-type-local-table, punt-type-domain-table, + punt-type-interface-table, + punt-type-local-np-table"; + list punt-type { + key "punt-id"; + description + "Punt Protocol Type"; + container rate { + presence "Indicates a rate node is configured."; + description + "Enable or Disable Punt Police and corresponding + Rate in PPS"; + leaf is-enabled { + type boolean; + mandatory true; + description + "Is Punt Policer enabled"; + } + leaf rate { + type uint32 { + range "0..4294967295"; + } + description + "Configured rate value"; + } + } + leaf punt-id { + type Lpts-punt; + description + "Punt Type"; + } + } + } + + grouping DOMAIN-TABLE { + description + "Common node of ipolicer, ipolicer-local"; + container policer-domains { + description + "Policer Domain Table"; + list policer-domain { + key "domain-name"; + description + "Domain name"; + leaf domain-name { + type xr:Cisco-ios-xr-string; + description + "Domain name"; + } + uses FLOW-TABLE; + } + } + } + + grouping ENABLE { + description + "Common node of ipolicer, ipolicer-local, + ipunt-policer, ipunt-policer-local, domain-name, + policer-domain, punt-policer-domain, + punt-policer-interface-name"; + leaf enable { + type empty; + mandatory true; + description + "Enabled"; + } + } + + grouping PUNT-POLICER-NP { + description + "Common node of punt-policer-np-table, + punt-policer-domain-np-table"; + list punt-policer-np { + key "npuid"; + description + "NP name"; + container punt-type-local-np-table { + description + "Punt Policer Table For NP"; + uses PUNT-TYPE; + } + leaf npuid { + type Lptsnpu-name; + description + "NP name"; + } + } + } + + grouping FLOW-TABLE { + description + "Common node of ipolicer, ipolicer-local, + policer-domain"; + container flows { + description + "Table for Flows"; + list flow { + key "flow-type"; + description + "selected flow type"; + container precedences { + description + "TOS Precedence value(s)"; + leaf-list precedence { + type Lpts-pre-i-fib-precedence-number; + max-elements "8"; + description + "Precedence values"; + } + } + leaf rate { + type uint32 { + range "0..4294967295"; + } + description + "Configured rate value"; + } + leaf flow-type { + type Lpts-flow; + description + "LPTS Flow Type"; + } + } + } + } + + grouping PUNT-POLICER-IFH { + description + "Common node of ipunt-policer, ipunt-policer-local"; + container punt-policer-interface-names { + description + "Punt Policer Interface"; + list punt-policer-interface-name { + key "punt-interface-name"; + description + "Pre-ifib Punt Policer Interface Configuration"; + container punt-type-interface-table { + description + "Punt Policer Table"; + uses PUNT-TYPE; + } + leaf punt-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } + + grouping PUNT-DOMAIN-TABLE { + description + "Common node of ipunt-policer, ipunt-policer-local"; + container punt-policer-domains { + description + "Punt Policer Domain Table"; + list punt-policer-domain { + key "domain-name"; + description + "Domain name"; + container punt-policer-domain-np-table { + description + "Punt Policer NP Table For Domain"; + uses PUNT-POLICER-NP; + } + container punt-type-domain-table { + description + "Punt Policer Table"; + uses PUNT-TYPE; + } + leaf domain-name { + type xr:Cisco-ios-xr-string; + description + "Domain name"; + } + } + } + } + + augment "/a1:lpts" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-lpts-lib-cfg'"; + container ipolicer { + presence "Indicates a ipolicer node is configured."; + description + "Pre IFiB Policer Configuration "; + container acls { + description + "Table for ACLs"; + list acl { + key "acl-name afi-family-type vrf-name"; + description + "ACL policer rate config commands"; + leaf acl-rate { + type uint32 { + range "0..100000"; + } + mandatory true; + description + "pre-ifib policer rate"; + } + leaf acl-name { + type xr:Cisco-ios-xr-string; + description + "ACL name"; + } + leaf afi-family-type { + type Lptsafi; + description + "AFI Family Type"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + } + } + uses ENABLE; + uses DOMAIN-TABLE; + uses FLOW-TABLE; + } + } + augment "/a1:lpts" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-lpts-lib-cfg'"; + container domain-names { + description + "Pre IFiB Domains Configuration "; + list domain-name { + key "domain-name"; + description + "Domain name"; + container interface-names { + description + "Domain Interface"; + list interface-name { + key "domain-interface-name"; + description + "pre-ifib Domain Single interface + configuration"; + leaf domain-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf domain-interface-name-xr { + type boolean; + mandatory true; + description + "Enabled or disabled"; + } + } + } + leaf domain-name { + type xr:Cisco-ios-xr-string; + description + "Domain name"; + } + } + } + } + augment "/a1:lpts" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-lpts-lib-cfg'"; + container ipunt-policer { + presence "Indicates a ipunt-policer node is configured."; + description + "Pre IFiB Punt Policer Configuration "; + container punt-type-table { + description + "Punt Policer Table"; + uses PUNT-TYPE; + } + uses ENABLE; + uses PUNT-DOMAIN-TABLE; + uses PUNT-POLICER-IFH; + } + } + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper-sub1.yang new file mode 100644 index 000000000..7027ed410 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper-sub1.yang @@ -0,0 +1,815 @@ +submodule Cisco-IOS-XR-lpts-pre-ifib-oper-sub1 { + belongs-to Cisco-IOS-XR-lpts-pre-ifib-oper { + prefix Cisco-IOS-XR-lpts-pre-ifib-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR lpts-pre-ifib package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-01 { + description + "Update LPTS Sub Interface punt policer data. + 2022-08-26 + Added LPTS Sub Interface punt policer data. + 2022-06-20 + Enhanced LPTS Punt Policer Per NPU data. + 2022-02-11 + LPTS Punt Policer per NPU support. + 2021-10-19 + LPTS HW FLow Policer datalist support."; + semver:module-version "2.0.0"; + } + revision 2020-12-03 { + description + "LPTS HW FLow Policer Support."; + semver:module-version "1.2.0"; + } + revision 2020-06-24 { + description + "added task-name to LptsPifib class. + 2019-11-06 + LPTS Punt Policer Support. + 2019-10-23 + LPTS Punt Policer Support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-26 { + description + "LPTS Domains Support."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-11-22 { + description + "Initial revision for pre-ifib oper yang."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PIFIB-HW-FLOW-POLICER-DATA { + description + "Pre-IFIB hw flow police data structure"; + leaf flow-id { + type uint8; + description + "flow id"; + } + leaf flow-name { + type string; + description + "flow name"; + } + leaf type { + type uint8; + description + "type"; + } + leaf type-name { + type string; + description + "type name"; + } + leaf domain-id { + type uint8; + description + "domain id"; + } + leaf domain-name { + type string; + description + "domain name"; + } + leaf npu-id { + type uint8; + description + "npu id"; + } + leaf policer-rate { + type uint32; + description + "policer rate"; + } + leaf burst-size { + type uint32; + description + "burst size"; + } + leaf accepted { + type uint64; + description + "accepted"; + } + leaf dropped { + type uint64; + description + "dropped"; + } + } + + grouping PUNT-POLICER-DOMAIN-LIST { + description + "LPTS Punt Policer Domain Information"; + leaf domain-index { + type uint8; + description + "Domain Index"; + } + leaf domain-name { + type string; + description + "Domain Name"; + } + leaf valid { + type boolean; + description + "Domain is Valid"; + } + leaf number-of-punt-types { + type uint32; + description + "Number of Punt types"; + } + list punt-type { + description + "Punt type List"; + uses PUNT-POLICER-TYPE-ENTRY; + } + list applied-config { + description + "Applied Policer Data"; + uses PUNT-POLICER-CONF-ENTRY; + } + } + + grouping PUNT-POLICER-NPU-CFG-ENTRY { + description + "LPTS Per NPU Configured Data"; + leaf npu-id { + type uint8; + description + "NPU ID"; + } + leaf rate { + type uint32; + description + "Policer Rate Configured On An NPU"; + } + leaf destination { + type uint8; + description + "Destination Configured On An NPU"; + } + } + + grouping PUNT-POLICER-CONF-ENTRY { + description + "LPTS applied punt policer data"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf virtual-interface { + type boolean; + description + "Interface is Virtual"; + } + leaf punt-name { + type string; + description + "Punt Name"; + } + leaf enabled { + type boolean; + description + "Is Enabled"; + } + leaf configured-rate { + type uint32; + description + "Configured Policer Rate"; + } + leaf is-per-npu-enabled { + type boolean; + description + "Is Per NPU Policer Enabled"; + } + leaf domain-index { + type uint8; + description + "Domain Index"; + } + leaf punt-police-program-time { + type string; + description + "Creation or Update Time"; + } + leaf sub-interface { + type boolean; + description + "Sub Interface"; + } + list per-npu-config { + description + "Per NPU Configuration data"; + uses PUNT-POLICER-NPU-CFG-ENTRY; + } + } + + grouping PUNT-POLICER-NPU-DATA-ENTRY { + description + "LPTS Per NPU Data"; + leaf npu-id { + type uint8; + description + "NPU ID"; + } + leaf npu-cfg-state { + type string; + description + "Config State of an NPU"; + } + leaf npu-configured-rate { + type uint32; + description + "Policer Rate Configured on an NPU"; + } + leaf npu-operational-rate { + type uint32; + description + "Operational Policer Rate on an NPU"; + } + leaf npu-operational-burst { + type uint32; + description + "Operational Burst Size on an NPU"; + } + leaf npu-destination { + type uint8; + description + "Destination of an NPU"; + } + leaf npu-accepted { + type uint64; + description + "Packets Accepted by an NPU"; + } + leaf npu-dropped { + type uint64; + description + "Packets Dropped by an NPU"; + } + leaf npu-error { + type uint32; + description + "Error returned during data fetch for an NPU"; + } + } + + grouping PUNT-POLICER-TYPE-ENTRY { + description + "LPTS Punt type data"; + leaf punt-name { + type string; + description + "Punt Name"; + } + leaf configured { + type boolean; + description + "Is Configured"; + } + leaf active-cfg-state { + type string; + description + "Active Cfg State"; + } + leaf enabled { + type boolean; + description + "Is Enabled"; + } + leaf pending { + type boolean; + description + "Is Pending"; + } + leaf is-per-npu-enabled { + type boolean; + description + "Is Per NPU Policer Enabled"; + } + leaf npu-count { + type uint8; + description + "Number of NPUs"; + } + leaf configured-rate { + type uint32; + description + "Configured Policer Rate"; + } + leaf operational-rate { + type uint32; + description + "Operational Policer Rate"; + } + leaf operational-burst { + type uint32; + description + "Operational Burst size"; + } + leaf domain-name { + type string; + description + "Domain Name"; + } + leaf domain-index { + type uint8; + description + "Domain Index"; + } + leaf accepted { + type uint64; + description + "Packets matched to accept"; + } + leaf dropped { + type uint64; + description + "Packets matched for drop"; + } + leaf hw-prog-error { + type uint32; + description + "HW Cfg Programming Error"; + } + leaf hw-stat-error { + type uint32; + description + "HW Stat Error"; + } + leaf hw-prog-error-time { + type string; + description + "HW Cfg Programming Error Time"; + } + list per-npu-stats { + description + "Punt Stats Per NPU"; + uses PUNT-POLICER-NPU-DATA-ENTRY; + } + } + + grouping PUNT-POLICER-INTERFACE-LIST { + description + "LPTS Punt Policer IFH Information"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf virtual-interface { + type boolean; + description + "Interface is Virtual"; + } + leaf number-of-punt-types { + type uint32; + description + "Number of Punt types"; + } + leaf punt-config-count { + type uint32; + description + "Punt Configuration Count"; + } + leaf sub-interface { + type boolean; + description + "Sub Interface"; + } + list punt-type { + description + "Punt type List"; + uses PUNT-POLICER-TYPE-ENTRY; + } + list applied-config { + description + "Applied Policer Data"; + uses PUNT-POLICER-CONF-ENTRY; + } + } + + grouping PUNT-POLICER-CFG-DATA { + description + "LPTS Punt Policer active Data"; + leaf has-config { + type boolean; + description + "config presence"; + } + leaf number-of-interfaces { + type uint32; + description + "Number of Interfaces"; + } + leaf number-of-sub-interfaces { + type uint32; + description + "Number of Sub Interfaces"; + } + leaf number-of-domains { + type uint32; + description + "Number of Domains"; + } + list interface { + description + "Interface List"; + uses PUNT-POLICER-INTERFACE-LIST; + } + list sub-interface { + description + "Sub Interface List"; + uses PUNT-POLICER-INTERFACE-LIST; + } + list domain { + description + "Domain List"; + uses PUNT-POLICER-DOMAIN-LIST; + } + } + + grouping PIFIB-PUNT-POLICER-DATA { + description + "LPTS Punt Policer Information"; + container config-data { + description + "Punt Policer Config Data"; + uses PUNT-POLICER-CFG-DATA; + } + leaf punt-policer-supported { + type boolean; + description + "Punt Policer Supported"; + } + leaf punt-policer-npu-supported { + type boolean; + description + "Punt Policer Per NPU Supported"; + } + } + + grouping DYNFLOWS-FLOW-ENTRY { + description + "LPTS Pre-IFIB Dynamic Flows Entry Data"; + leaf flow-name { + type string; + description + "Flow Name"; + } + leaf configurable { + type boolean; + description + "Is Configurable"; + } + leaf configured { + type boolean; + description + "Is Configured"; + } + leaf default-max { + type uint32; + description + "Default Max"; + } + leaf configured-max { + type string; + description + "Configured Max"; + } + leaf active-max { + type uint32; + description + "Active Max"; + } + leaf hardware-count { + type uint32; + description + "Hardware Count"; + } + leaf software-count { + type uint32; + description + "Software Count"; + } + leaf pending-software-entries { + type boolean; + description + "Pending Software Entries"; + } + } + + grouping PIFIB-DYNFLOWS-DATA { + description + "LPTS Pre-IFIB Dynamic Flows Data"; + leaf dynamic-flows-enabled { + type boolean; + description + "Dynamic Flows Enabled"; + } + leaf platform-supported-max { + type uint32; + description + "Platform Max"; + } + leaf platform-configured-max { + type uint32; + description + "Platform Config Limit"; + } + leaf platform-total-configured { + type uint32; + description + "Platform Total Configured"; + } + leaf total-hw-entries { + type uint32; + description + "Total HW Entries"; + } + leaf total-sw-entries { + type uint32; + description + "Total SW Entries"; + } + list flow { + description + "Flow Datalist"; + uses DYNFLOWS-FLOW-ENTRY; + } + } + + grouping DOMAIN-INTERFACE-LIST { + description + "LPTS Domain IFH Information"; + leaf interface-handle { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf virtual-interface { + type boolean; + description + "Interface is Virtual"; + } + } + + grouping DOMAIN-INFO { + description + "LPTS Domain Information"; + leaf domain-name { + type string; + description + "Domain Name"; + } + leaf domain-index { + type uint8; + description + "Domain Index"; + } + leaf number-of-interfaces { + type uint32; + description + "Number of Interfaces"; + } + list interface { + description + "Interface List"; + uses DOMAIN-INTERFACE-LIST; + } + } + + grouping DOMAINS-CONFIG-DATA { + description + "LPTS Domains Data"; + leaf number-of-active-domains { + type uint8; + description + "Number of Active Domains"; + } + list domains-info { + description + "Domains Info"; + uses DOMAIN-INFO; + } + } + + grouping PIFIB-DOMAINS-DATA { + description + "LPTS interface Entry Information"; + container config-data { + description + "Domain Config Data"; + uses DOMAINS-CONFIG-DATA; + } + leaf domains-enabled { + type boolean; + description + "Domains Enabled"; + } + leaf number-of-supported-domains { + type uint32; + description + "Number of Supported Domains"; + } + } + + grouping PIFIB-SHOW-ENTRY { + description + "LPTS Pre-IFIB Entry Information"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vid { + type uint32; + description + "VRF ID"; + } + leaf l3protocol { + type uint32; + description + "Layer 3 Protocol"; + } + leaf l4protocol { + type uint32; + description + "Layer 4 Protocol"; + } + leaf intf-name { + type string; + description + "Interface Name"; + } + leaf intf-handle { + type uint32; + description + "Interface Handle"; + } + leaf destination-addr { + type string; + description + "Destination IP Address"; + } + leaf source-addr { + type string; + description + "Source IP Address"; + } + leaf destination-type { + type string; + description + "Destination Key Type"; + } + leaf destination-value { + type string; + description + "Destination Port/ICMP Type/IGMP Type"; + } + leaf source-port { + type string; + description + "Source port"; + } + leaf is-frag { + type uint8; + description + "Is Fragment"; + } + leaf is-syn { + type uint8; + description + "Is SYN"; + } + leaf opcode { + type string; + description + "Opcode"; + } + leaf flow-type { + type string; + description + "Flow type"; + } + leaf listener-tag { + type string; + description + "Listener Tag"; + } + leaf local-flag { + type uint8; + description + "Local Flag"; + } + leaf is-fgid { + type uint8; + description + "Is FGID or not"; + } + leaf deliver-list-short { + type string; + description + "Deliver List Short Format"; + } + leaf deliver-list-long { + type string; + description + "Deliver List Long Format"; + } + leaf min-ttl { + type uint8; + description + "Minimum TTL"; + } + leaf accepts { + type uint64; + description + "Packets matched to accept"; + } + leaf drops { + type uint64; + description + "Packets matched for drop"; + } + leaf stale { + type uint8; + description + "Is Stale"; + } + leaf pifib-type { + type uint8; + description + "sub Pre-IFIB type"; + } + leaf pifib-program-time { + type string; + description + "Creation or Update Time"; + } + leaf domain-idx { + type uint8; + description + "Domain Index"; + } + leaf domain-name { + type string; + description + "Domain Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper.yang new file mode 100644 index 000000000..751cbd0d2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-pre-ifib-oper.yang @@ -0,0 +1,229 @@ +module Cisco-IOS-XR-lpts-pre-ifib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-pre-ifib-oper"; + prefix lpts-pre-ifib-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-lpts-pre-ifib-oper-sub1 { + revision-date 2022-11-01; + } + + 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 lpts-pre-ifib package operational data. + + This module contains definitions + for the following management objects: + lpts-pifib: lpts pre-ifib data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-01 { + description + "Update LPTS Sub Interface punt policer data. + 2022-08-26 + Added LPTS Sub Interface punt policer data. + 2022-06-20 + Enhanced LPTS Punt Policer Per NPU data. + 2022-02-11 + LPTS Punt Policer per NPU support. + 2021-10-19 + LPTS HW FLow Policer datalist support."; + semver:module-version "2.0.0"; + } + revision 2020-12-03 { + description + "LPTS HW FLow Policer Support."; + semver:module-version "1.2.0"; + } + revision 2020-06-24 { + description + "added task-name to LptsPifib class. + 2019-11-06 + LPTS Punt Policer Support. + 2019-10-23 + LPTS Punt Policer Support."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-26 { + description + "LPTS Domains Support."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-11-22 { + description + "Initial revision for pre-ifib oper yang."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lpts-pifib { + type enumeration { + enum "isis" { + value 0; + description + "ISIS packets"; + } + enum "ipv4-frag" { + value 1; + description + "IPv4 fragmented packets"; + } + enum "ipv4-echo" { + value 2; + description + "IPv4 ICMP Echo packets"; + } + enum "ipv4-any" { + value 3; + description + "All IPv4 packets"; + } + enum "ipv6-frag" { + value 4; + description + "IPv6 fragmented packets"; + } + enum "ipv6-echo" { + value 5; + description + "IPv6 ICMP Echo packets"; + } + enum "ipv6-nd" { + value 6; + description + "IPv6 ND packets"; + } + enum "ipv6-any" { + value 7; + description + "All IPv6 packets"; + } + enum "bfd-any" { + value 8; + description + "BFD packets"; + } + enum "all" { + value 9; + description + "All packets"; + } + } + description + "Lpts pifib"; + } + + grouping ENTRY { + description + "Common node of type-value, shadow-entries"; + list entry { + key "entry"; + description + "Data for single pre-ifib entry"; + leaf entry { + type xr:Cisco-ios-xr-string; + description + "Single Pre-ifib entry"; + } + uses PIFIB-SHOW-ENTRY; + } + } + + container lpts-pifib { + config false; + description + "lpts pre-ifib data"; + container nodes { + description + "List of Pre-ifib Nodes"; + list node { + key "node-name"; + description + "Pre-ifib data for particular node"; + container shadow-entries { + description + "Pre-IFIB Shadow Entries (PI)"; + uses ENTRY; + } + container type-values { + description + "Type specific"; + list type-value { + key "pifib-type"; + description + "pifib types"; + leaf pifib-type { + type Lpts-pifib; + description + "Type value"; + } + uses ENTRY; + } + } + container domains { + description + "data for pre-ifib domains"; + uses PIFIB-DOMAINS-DATA; + } + container dynamic-flows-stats { + description + "Dynamic Flows Statistics"; + uses PIFIB-DYNFLOWS-DATA; + } + container punt-policer-stats { + description + "Punt Policer Statistics"; + uses PIFIB-PUNT-POLICER-DATA; + } + container pifib-hw-flow-policer-stats { + description + "Pifib HW Flow policer Statistics"; + list pifib-hw-flow-policer-stat { + key "entry"; + description + "Data for single Pifib HW Flow Policer entry"; + leaf entry { + type xr:Cisco-ios-xr-string; + description + "Single Hw Flow Policer entry"; + } + uses PIFIB-HW-FLOW-POLICER-DATA; + } + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-punt-flowtrap-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-punt-flowtrap-cfg.yang new file mode 100644 index 000000000..6bb1cd101 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-lpts-punt-flowtrap-cfg.yang @@ -0,0 +1,274 @@ +module Cisco-IOS-XR-lpts-punt-flowtrap-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-lpts-punt-flowtrap-cfg"; + prefix lpts-punt-flowtrap-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-lpts-lib-cfg { + prefix a1; + } + + 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 lpts-punt-flowtrap package configuration. + + This YANG module augments the + Cisco-IOS-XR-lpts-lib-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lpts-punt-flowtrap-proto-id { + type enumeration { + enum "arp" { + value 1; + description + "ARP"; + } + enum "icmp" { + value 2; + description + "Internet Control Message Protocol"; + } + enum "dhcp" { + value 3; + description + "Dynamic Host Configuration Protocol"; + } + enum "pppoe" { + value 4; + description + "PPP over Ethernet"; + } + enum "ppp" { + value 5; + description + "Point to point Protocol"; + } + enum "igmp" { + value 6; + description + "Internet Gateway Message Protocol"; + } + enum "ipv4" { + value 7; + description + "IPv4"; + } + enum "l2tp" { + value 8; + description + "Layer2 Tunneling Protocol"; + } + enum "unclassified" { + value 9; + description + "Unclassified Source"; + } + enum "ospf" { + value 10; + description + "OSPF"; + } + enum "bgp" { + value 11; + description + "BGP"; + } + enum "default" { + value 12; + description + "All protocols"; + } + } + description + "Lpts punt flowtrap proto id"; + } + + augment "/a1:lpts" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-lpts-lib-cfg'"; + container punt { + description + "Configure penalty timeout value"; + container flowtrap { + description + "excessive punt flow trap configuration commands"; + container penalty-rates { + description + "Configure penalty policing rate"; + list penalty-rate { + key "protocol-name"; + description + "none"; + leaf protocol-name { + type Lpts-punt-flowtrap-proto-id; + description + "none"; + } + leaf rate { + type uint32 { + range "2..100"; + } + mandatory true; + description + "Penalty policer rate in packets-per-second"; + } + } + } + container penalty-timeouts { + description + "Configure penalty timeout value"; + list penalty-timeout { + key "protocol-name"; + description + "none"; + leaf protocol-name { + type Lpts-punt-flowtrap-proto-id; + description + "none"; + } + leaf timeout { + type uint32 { + range "1..1000"; + } + mandatory true; + description + "Timeout value in minutes"; + } + } + } + container exclude { + description + "Exclude an item from all traps"; + container interface-names { + description + "none"; + list interface-name { + key "ifname"; + description + "Name of interface to exclude from all traps"; + leaf ifname { + type xr:Interface-name; + description + "Name of interface to exclude from all traps"; + } + leaf id1 { + type boolean; + mandatory true; + description + "Enabled or disabled"; + } + } + } + } + leaf max-flow-gap { + type uint32 { + range "1..60000"; + } + description + "Maximum flow gap in milliseconds"; + } + leaf et-size { + type uint32 { + range "1..128"; + } + description + "Should be power of 2. Any one of 1,2,4,8,16,32 + ,64,128"; + } + leaf eviction-threshold { + type uint32 { + range "1..65535"; + } + description + "Eviction threshold, should be less than + report-threshold"; + } + leaf report-threshold { + type xr:Cisco-ios-xr-port-number; + description + "Threshold to cross for a flow to be considered + as bad actor flow"; + } + leaf non-subscriber-interfaces { + type uint32; + description + "Enable trap based on source mac on + non-subscriber interface"; + } + leaf sample-prob { + type string { + length "1..32"; + } + description + "Probability of packets to be sampled"; + } + leaf eviction-search-limit { + type uint32 { + range "1..128"; + } + description + "Eviction search limit, should be less than + trap-size"; + } + leaf routing-protocols-enable { + type boolean; + description + "Allow routing protocols to pass through copp + sampler"; + } + leaf subscriber-interfaces { + type boolean; + description + "Enable the trap on subscriber interfaces"; + } + leaf interface-based-flow { + type boolean; + description + "Identify flow based on interface and flowtype"; + } + leaf dampening { + type uint32 { + range "5000..60000"; + } + description + "Dampening period for a bad actor flow in + milliseconds"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper-sub1.yang new file mode 100644 index 000000000..44349f388 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper-sub1.yang @@ -0,0 +1,328 @@ +submodule Cisco-IOS-XR-mab-oper-sub1 { + belongs-to Cisco-IOS-XR-mab-oper { + prefix Cisco-IOS-XR-mab-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mab package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-14 { + description + "Added fields to display AuthRetry Timeout and timer status"; + semver:module-version "1.0.0"; + } + revision 2021-11-23 { + description + "Added field to display Held Timeout and timer status"; + } + revision 2021-10-11 { + description + "New Oper Model added to support MAC Authentication Bypass feature"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MAB-CLIENT-INFO { + description + "MAB CLIENT INFO"; + leaf mac { + type string; + description + "formatted MAC Address"; + } + leaf mab-sm-state { + type string; + description + "MAB SM State"; + } + leaf time-to-next-reauth { + type string; + description + "Remaining time for next reauthentication"; + } + leaf auth-method { + type string; + description + "Authentication method"; + } + leaf reauth-timeout { + type string; + units "second"; + description + "Reauth timeout in seconds"; + } + leaf port-status { + type string; + description + "Auth Client Port Status"; + } + leaf last-authen-time { + type string; + description + "Time of previous authentication"; + } + leaf programming-status { + type string; + description + "Programming Status"; + } + leaf held-timeout { + type string; + units "second"; + description + "Held timeout in seconds and Timer status"; + } + leaf retry-timeout { + type string; + units "second"; + description + "Auth Retry timeout in seconds and Timer status"; + } + leaf time-to-next-auth-retry { + type string; + description + "Remaining time for next authentication retry"; + } + } + + grouping MAB-INTERFACE-DETAIL { + description + "MAB INTERFACE DETAIL"; + leaf interface-name { + type string; + description + "Interface Display name "; + } + leaf interface-handle { + type string; + description + "Interface handle"; + } + leaf host-mode { + type string; + description + "Host Mode"; + } + leaf port-control { + type string; + description + "Port Control"; + } + leaf punt-state { + type string; + description + "Punt State"; + } + leaf punt-summary { + type string; + description + "Punt Summary"; + } + list client { + description + "MAB client list"; + uses MAB-CLIENT-INFO; + } + } + + grouping MAB-CLIENT-AUTH-STATS { + description + "MAB CLIENT AUTH STATS"; + leaf success-count { + type uint32; + description + "Success count"; + } + leaf fail-count { + type uint32; + description + "Fail count"; + } + leaf timeout-count { + type uint32; + description + "Timeout count"; + } + leaf aaa-unreach-count { + type uint32; + description + "AAA Unreachable count"; + } + } + + grouping MAB-CLIENT-STATS { + description + "MAB CLIENT STATS"; + container auth-stats { + description + "MAB Client authentication statistics"; + uses MAB-CLIENT-AUTH-STATS; + } + leaf mac-addr { + type string; + description + "MAB Client MAC Address"; + } + } + + grouping MAB-PC-STATS { + description + "MAB PC STATS"; + leaf enable-success { + type uint32; + description + "EnableSuccess"; + } + leaf enable-fail { + type uint32; + description + "EnableFail"; + } + leaf add-client-success { + type uint32; + description + "Add Client Success"; + } + leaf add-client-fail { + type uint32; + description + "AddClientFail"; + } + leaf remove-client-success { + type uint32; + description + "Remove Client Success"; + } + leaf remove-client-fail { + type uint32; + description + "RemoveClientFail"; + } + leaf update-success { + type uint32; + description + "UpdateSuccess"; + } + leaf update-fail { + type uint32; + description + "UpdateFail"; + } + leaf punt-start-success { + type uint32; + description + "PuntStartSuccess"; + } + leaf punt-start-fail { + type uint32; + description + "PuntStartFail"; + } + leaf punt-stop-success { + type uint32; + description + "PuntStopSuccess"; + } + leaf punt-stop-fail { + type uint32; + description + "PuntStopFail"; + } + } + + grouping MAB-ML-STATS { + description + "MAB ML STATS"; + leaf rx-total { + type uint32; + description + "RxTotal"; + } + leaf rx-no-src-mac { + type uint32; + description + "RxNoSrcMac"; + } + leaf rx-no-idb { + type uint32; + description + "RxNoIdb"; + } + } + + grouping MAB-IF-STATISTICS { + description + "MAB IF STATISTICS"; + container mac-learning-stats { + description + "MAC Learning Statistics"; + uses MAB-ML-STATS; + } + container port-control-stats { + description + "Port Control Statistics"; + uses MAB-PC-STATS; + } + leaf interface-name { + type string; + description + "Interface Display name"; + } + list client-stat { + description + "MAB Clients statistics"; + uses MAB-CLIENT-STATS; + } + } + + grouping MAB-NODE-STATISTICS { + description + "MAB NODE STATISTICS"; + leaf node-name { + type string; + description + "Node Name"; + } + leaf rx-total { + type uint32; + description + "RxTotal"; + } + leaf rx-no-src-mac { + type uint32; + description + "RxNoSrcMac"; + } + leaf rx-no-idb { + type uint32; + description + "RxNoIdb"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper.yang new file mode 100644 index 000000000..247bda342 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mab-oper.yang @@ -0,0 +1,108 @@ +module Cisco-IOS-XR-mab-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mab-oper"; + prefix mab-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mab-oper-sub1 { + revision-date 2022-03-14; + } + + 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 mab package operational data. + + This module contains definitions + for the following management objects: + mab: MAB operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-14 { + description + "Added fields to display AuthRetry Timeout and timer status"; + semver:module-version "1.0.0"; + } + revision 2021-11-23 { + description + "Added field to display Held Timeout and timer status"; + } + revision 2021-10-11 { + description + "New Oper Model added to support MAC Authentication Bypass feature"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mab { + config false; + description + "MAB operational data"; + container nodes { + description + "Node-specific MAB operational data"; + list node { + key "node-name"; + description + "MAB operational data for a particular node"; + container statistics { + description + "MAB Node Specific Statistics"; + uses MAB-NODE-STATISTICS; + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + container interfaces { + description + "List of MAB enabled interfaces"; + list interface { + key "name"; + description + "MAB enabled interface name"; + container statistics { + description + "MAB Interface Statistics"; + uses MAB-IF-STATISTICS; + } + container detail { + description + "MAB Interface Detail"; + uses MAB-INTERFACE-DETAIL; + } + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper-sub1.yang new file mode 100644 index 000000000..0f320b748 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper-sub1.yang @@ -0,0 +1,172 @@ +submodule Cisco-IOS-XR-macsec-ctrlr-oper-sub1 { + belongs-to Cisco-IOS-XR-macsec-ctrlr-oper { + prefix Cisco-IOS-XR-macsec-ctrlr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR macsec-ctrlr package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Macsec-ctrlr-ciphersuit { + type enumeration { + enum "gcm-aes-256" { + value 0; + description + "GCM AES 256"; + } + enum "gcm-aes-128" { + value 1; + description + "GCM AES 128"; + } + enum "gcm-aes-xpn-256" { + value 2; + description + "GCM AES XPN 256"; + } + } + description + "Macsec ctrlr ciphersuit"; + } + + typedef Macsec-ctrlr-state { + type enumeration { + enum "macsec-ctrlr-state-up" { + value 0; + description + "Up"; + } + enum "macsec-ctrlr-state-down" { + value 1; + description + "Down"; + } + enum "macsec-ctrlr-state-admin-down" { + value 2; + description + "Administratively Down"; + } + } + description + "Macsec ctrlr state"; + } + + grouping MACSEC-CTRLR-AN-STATUS { + description + "AN status"; + leaf association-number { + type uint8; + description + "Association Number"; + } + leaf short-secure-channel-id { + type uint32; + description + "Short secure channel id"; + } + } + + grouping MACSEC-CTRLR-SC-STATUS { + description + "Secure Channel status"; + leaf protection-enabled { + type boolean; + description + "Protection Enabled"; + } + leaf secure-channel-id { + type string; + description + "Secure Channel Id"; + } + leaf confidentiality-offset { + type uint32; + description + "Confidentiality offset"; + } + leaf cipher-suite { + type Macsec-ctrlr-ciphersuit; + description + "Cipher Suite"; + } + leaf max-packet-number { + type uint64; + description + "Max packet Number"; + } + leaf recent-packet-number { + type uint64; + description + "Recent Packet Number"; + } + list active-association { + description + "Active Associations"; + uses MACSEC-CTRLR-AN-STATUS; + } + } + + grouping MACSEC-CTRLR-IF-STATUS { + description + "Interface Status details"; + container encrypt-sc-status { + description + "Encrypt Secure Channel Status"; + uses MACSEC-CTRLR-SC-STATUS; + } + container decrypt-sc-status { + description + "Decrypt Secure Channel Status"; + uses MACSEC-CTRLR-SC-STATUS; + } + leaf state { + type Macsec-ctrlr-state; + description + "State"; + } + leaf replay-window-size { + type uint32; + description + "Replay Window Size"; + } + leaf must-secure { + type boolean; + description + "Must Secure"; + } + leaf secure-mode { + type uint32; + description + "Secure Mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper.yang new file mode 100644 index 000000000..e29b66b28 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-macsec-ctrlr-oper.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-macsec-ctrlr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-macsec-ctrlr-oper"; + prefix macsec-ctrlr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-macsec-ctrlr-oper-sub1 { + revision-date 2019-04-05; + } + + 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 macsec-ctrlr package operational data. + + This module contains definitions + for the following management objects: + macsec-ctrlr-oper: Macsec controller data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container macsec-ctrlr-oper { + config false; + description + "Macsec controller data"; + container macsec-ctrlr-ports { + description + "All Macsec Controller Port operational data"; + list macsec-ctrlr-port { + key "name"; + description + "Controller name"; + container macsec-ctrlr-info { + description + "Macsec Controller operational data"; + uses MACSEC-CTRLR-IF-STATUS; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-cfg.yang new file mode 100644 index 000000000..f072d708c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-cfg.yang @@ -0,0 +1,508 @@ +module Cisco-IOS-XR-man-ems-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-ems-cfg"; + prefix man-ems-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 man-ems package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-grpc-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + grpc: GRPC configruation + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Added support for TTL flag + 2022-07-20 + Added support for gRPC TLS version 1.0 flag + 2022-06-21 + Added support for gRPC server name + 2022-06-16 + Removed the enable leafs for P4 Runtime. + 2022-06-07 + Added support for P4 Runtime."; + semver:module-version "2.1.0"; + } + revision 2021-09-21 { + description + "Changed gRPC port range to avoid conflicts with non-Linux applications. + 2021-06-18 + Added support for local connection leaf. + 2021-05-14 + Added gRPC tunnel."; + semver:module-version "2.0.0"; + } + revision 2019-06-02 { + description + "Added support for AAA method lists."; + semver:module-version "1.2.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-02-22 { + description + "Fixed yang evaluator warnings."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dscp { + type union { + type enumeration { + enum "default" { + value 0; + description + "Default (DSCP 000000)"; + } + enum "af11" { + value 10; + description + "AF11 (DSCP 001010)"; + } + enum "af12" { + value 12; + description + "AF12 (DSCP 001100)"; + } + enum "af13" { + value 14; + description + "AF13 (DSCP 001110)"; + } + enum "af21" { + value 18; + description + "AF21 (DSCP 010010)"; + } + enum "af22" { + value 20; + description + "AF22 (DSCP 010100)"; + } + enum "af23" { + value 22; + description + "AF23 (DSCP 010110)"; + } + enum "af31" { + value 26; + description + "AF31 (DSCP 011010)"; + } + enum "af32" { + value 28; + description + "AF32 (DSCP 011100)"; + } + enum "af33" { + value 30; + description + "AF33 (DSCP 011110)"; + } + enum "af41" { + value 34; + description + "AF41 (DSCP 100010)"; + } + enum "af42" { + value 36; + description + "AF42 (DSCP 100100)"; + } + enum "af43" { + value 38; + description + "AF43 (DSCP 100110)"; + } + enum "cs1" { + value 8; + description + "CS1 (Precedence 1) (DSCP 001000)"; + } + enum "cs2" { + value 16; + description + "CS2 (Precedence 2) (DSCP 010000)"; + } + enum "cs3" { + value 24; + description + "CS3 (Precedence 3) (DSCP 011000)"; + } + enum "cs4" { + value 32; + description + "CS4 (Precedence 4) (DSCP 100000)"; + } + enum "cs5" { + value 40; + description + "CS5 (Precedence 5) (DSCP 101000)"; + } + enum "cs6" { + value 48; + description + "CS6 (Precedence 6) (DSCP 110000)"; + } + enum "cs7" { + value 56; + description + "CS7 (Precedence 7) (DSCP 111000)"; + } + enum "ef" { + value 46; + description + "EF (DSCP 101110)"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Dscp"; + } + + typedef Grp-c-tls-cipher-default { + type enumeration { + enum "disable" { + value 1; + description + "Default disable all ciphers"; + } + enum "enable" { + value 2; + description + "Default enable all ciphers"; + } + } + description + "Grp c tls cipher default"; + } + + container grpc { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-grpc-cfg.yang which will provide + the compatible functionalities. GRPC + configruation"; + container aaa { + description + "AAA authentication and authorization for gRPC"; + container authentication { + description + "AAA authentication for gRPC"; + leaf login { + type string; + description + "AAA authentication login method list for gRPC"; + } + } + container authorization { + description + "AAA authorization for gRPC"; + leaf exec { + type string; + description + "AAA authorization exec method list for gRPC"; + } + } + } + container service-layer { + description + "Grpc Service Layer"; + leaf enable { + type empty; + description + "Enable ServiceLayer"; + } + } + container tls-cipher { + description + "TLS ciphers"; + leaf default { + type Grp-c-tls-cipher-default; + description + "Default of all ciphers."; + } + leaf enable { + type string; + description + "Enable ciphers if default is disabled."; + } + leaf disable { + type string; + description + "Disable ciphers if default is enabled."; + } + } + container p4rt { + description + "P4 Runtime"; + container locations { + description + "Location attributes"; + list location { + key "node-id"; + description + "NPU Location"; + container npus { + description + "P4 Runtime NPU attributes"; + list npu { + key "npuid"; + description + "NPU ID in the node"; + container device { + description + "P4 Runtime Device Class"; + leaf device-id { + type uint64; + description + "P4 Runtime Device Identifier"; + } + } + leaf npuid { + type uint32 { + range "0..65535"; + } + description + "NPU ID"; + } + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the location where NPU is present"; + } + } + } + container interfaces { + description + "Configure P4 Runtime Interface attributes"; + list interface { + key "interface-name"; + description + "Interface to configure"; + leaf port { + type uint32 { + range "0..4294967295"; + } + description + "P4 Runtime Interface Port Identifier"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + container tunnel { + description + "gRPC tunnels"; + container destinations { + description + "gRPC tunnel destinations"; + list destination { + key "address port"; + description + "gRPC tunnel destination"; + leaf target { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Target name to register tunnel service"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface for dialout"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF for dialout"; + } + leaf address { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "IPv4 address in dotted-quad notation, or IPv6 + address in full, mixed, shortened, and + shortened-mixed notation."; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "Destination port"; + } + } + } + } + container tls { + description + "Transport Layer Security (TLS)"; + leaf enable { + type empty; + status deprecated; + description + "Enable TLS"; + } + } + leaf port { + type uint32 { + range "57344..57999"; + } + description + "Server listening port"; + } + leaf vrf { + type string; + description + "Server vrf name"; + } + leaf max-streams { + type uint32 { + range "1..128"; + } + default "32"; + description + "Maximum number of streaming gRPCs"; + } + leaf enable { + type empty; + status deprecated; + description + "Enable GRPC"; + } + leaf ttl { + type uint32 { + range "0..255"; + } + description + "TTL settings for outgoing gRPC packets"; + } + leaf cert-auth { + type empty; + status deprecated; + description + "Certificate Authentication"; + } + leaf max-streams-per-user { + type uint32 { + range "1..128"; + } + default "32"; + description + "Maximum number of streaming gRPCs per user"; + } + leaf certificate-id { + type string; + description + "Active Certificate ID"; + } + leaf max-request-per-user { + type uint32 { + range "1..32"; + } + description + "Maximum concurrent requests per user"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "gRPC server name"; + } + leaf no-tls { + type empty; + status deprecated; + description + "No TLS"; + } + leaf tls-trustpoint { + type string; + description + "Trustpoint Name"; + } + leaf tlsv1 { + type empty; + status deprecated; + description + "TLS version 1.0 support"; + } + leaf dscp { + type Dscp; + description + "QoS marking DSCP to be set on transmitted gRPC"; + } + leaf address-family { + type string; + description + "Address family identifier type"; + } + leaf tls-mutual { + type empty; + status deprecated; + description + "TLS mutual authentication"; + } + leaf local-connection { + type empty; + status deprecated; + description + "Enable gRPC server over Unix socket"; + } + leaf max-request-total { + type uint32 { + range "1..256"; + } + description + "Maximum concurrent requests in total"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper-sub1.yang new file mode 100644 index 000000000..ae05f70f0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper-sub1.yang @@ -0,0 +1,553 @@ +submodule Cisco-IOS-XR-man-ems-oper-sub1 { + belongs-to Cisco-IOS-XR-man-ems-oper { + prefix Cisco-IOS-XR-man-ems-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR man-ems package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-20 { + description + "Added support for gRPC TLS version 1.0 flag + 2022-04-26 + Added support for gRPC server name + 2021-10-22 + Added certificate bundle statistics + 2021-10-20 + Added counters for load bundle + 2021-09-13 + Added status string to reflect unavailable port state."; + semver:module-version "1.3.0"; + } + revision 2021-06-10 { + description + "Added gRPC tunnel."; + semver:module-version "1.2.0"; + } + revision 2021-03-22 { + description + "Added keep alive commands."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-22 { + description + "Fixed yang evaluator warnings."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Grpc-tunnel-status { + type enumeration { + enum "not-connected" { + value 0; + description + "Not connected"; + } + enum "connected" { + value 1; + description + "Tunnel session is connected"; + } + } + description + "Grpc tunnel status"; + } + + typedef Grpc-tls-cipher-default { + type enumeration { + enum "none" { + value 0; + description + "Not configured"; + } + enum "disable" { + value 1; + description + "Disable all ciphers"; + } + enum "enable" { + value 2; + description + "Enable all ciphers"; + } + } + description + "Grpc tls cipher default"; + } + + typedef Tlsv1-0-state { + type enumeration { + enum "disabled" { + value 0; + description + "TLS version 1.0 is disabled"; + } + enum "enabled" { + value 1; + description + "TLS version 1.0 is enabled"; + } + } + description + "Tlsv1 0 state"; + } + + typedef Certauth-state { + type enumeration { + enum "disabled" { + value 0; + description + "Certificate authentication is disabled"; + } + enum "enabled" { + value 1; + description + "Certificate authentication is enabled"; + } + } + description + "Certauth state"; + } + + typedef Tls-mutual-state { + type enumeration { + enum "disabled" { + value 0; + description + "TLS mutual is disabled"; + } + enum "enabled" { + value 1; + description + "TLS mutual is enabled"; + } + } + description + "Tls mutual state"; + } + + typedef Tls-state { + type enumeration { + enum "disabled" { + value 0; + description + "TLS is disabled"; + } + enum "enabled" { + value 1; + description + "TLS is enabled"; + } + } + description + "Tls state"; + } + + typedef Af { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4"; + } + enum "ipv6" { + value 1; + description + "IPv6"; + } + enum "dual" { + value 2; + description + "Dual"; + } + } + description + "Af"; + } + + grouping GRPC-STATISTICS-INFO-B { + description + "gRPC statistics"; + leaf ct-show-cmd-txt-req-recv { + type uint64; + description + "CounterShowCmdTxtReqRecv"; + } + leaf ct-show-cmd-txt-res-sent { + type uint64; + description + "CounterShowCmdTxtResSent"; + } + leaf ct-get-config-req-recv { + type uint64; + description + "CounterGetConfigReqRecv"; + } + leaf ct-get-config-res-sent { + type uint64; + description + "CounterGetConfigResSent"; + } + leaf ct-cli-config-req-recv { + type uint64; + description + "CounterCliConfigReqRecv"; + } + leaf ct-cli-config-res-sent { + type uint64; + description + "CounterCliConfigResSent"; + } + leaf ct-merge-config-req-recv { + type uint64; + description + "CounterMergeConfigReq"; + } + leaf ct-merge-config-res-sent { + type uint64; + description + "CounterMergeConfigRes"; + } + leaf ct-commit-replace-req-recv { + type uint64; + description + "CounterCommitReplaceReq"; + } + leaf ct-commit-replace-res-sent { + type uint64; + description + "CounterCommitReplaceRes"; + } + leaf ct-delete-config-req-recv { + type uint64; + description + "CounterDeleteConfigReq"; + } + leaf ct-delete-config-res-sent { + type uint64; + description + "CounterDeleteConfigRes"; + } + leaf ct-remove-config-req-recv { + type uint64; + description + "CounterRemoveConfigReq"; + } + leaf ct-remove-config-res-sent { + type uint64; + description + "CounterRemoveConfigRes"; + } + leaf ct-replace-config-req-recv { + type uint64; + description + "CounterReplaceConfigReq"; + } + leaf ct-replace-config-res-sent { + type uint64; + description + "CounterReplaceConfigSent"; + } + leaf ct-get-oper-req-recv { + type uint64; + description + "CounterGetOperReqRecv"; + } + leaf ct-get-oper-res-sent { + type uint64; + description + "CounterGetOperResSent"; + } + leaf ct-get-current-session { + type uint32; + description + "CounterGetCurrentSession"; + } + leaf ct-commit-config-req-recv { + type uint64; + description + "CounterForHowManyCommitConfigRequests"; + } + leaf ct-commit-config-res-sent { + type uint64; + description + "CounterForHowManyCommitConfigResponses"; + } + leaf ct-action-json-req-recv { + type uint64; + description + "CounterForHowManyActionJsonRequests"; + } + leaf ct-action-json-res-sent { + type uint64; + description + "CounterForHowManyActionJsonResponses"; + } + } + + grouping GRPC-STATUS-INFO-B { + description + "gRPC status"; + leaf transport { + type string; + description + "GRPCTransport"; + } + leaf address-family { + type string; + description + "Address family : ipv4 or ipv6"; + } + leaf tls { + type string; + description + "GRPCTLS"; + } + leaf trustpoint { + type string; + description + "GRPCTrustpoint"; + } + leaf listening-port { + type int32; + description + "GRPCListeningPort"; + } + leaf vrf-socket-ns-path { + type string; + description + "VrfSocketNamespacePath"; + } + leaf max-req-per-user { + type uint32; + description + "MaxReqPerUser"; + } + leaf max-req-total { + type uint32; + description + "MaxReqTotal"; + } + leaf max-streams { + type uint32; + description + "Maximum number of streaming gRPCs"; + } + leaf max-streams-per-user { + type uint32; + description + "Maximum number of streaming gRPCs per user"; + } + leaf min-client-ka-intvl { + type uint32; + description + "Minimum client keep alive interval"; + } + leaf local-connection { + type string; + description + "gRPC Server Unix socket"; + } + leaf svr-name { + type string; + description + "gRPC server name"; + } + } + + grouping GRPC-TUNNEL-SESSIONS { + description + "grpc tunnel session"; + leaf address-xr { + type string; + description + "Destination address"; + } + leaf status { + type Grpc-tunnel-status; + description + "Session status"; + } + leaf status-str { + type string; + description + "Status string in case of error"; + } + leaf source-interface { + type string; + description + "Source interface"; + } + leaf source-ip { + type string; + description + "Source interface ip"; + } + leaf source-vrf { + type string; + description + "Source interface vrf"; + } + leaf vrf { + type string; + description + "Configured vrf"; + } + leaf target { + type string; + description + "Target name"; + } + leaf last-connected-timestamp { + type uint64; + description + "Timestamp when session got connected"; + } + leaf last-attempted-timestamp { + type uint64; + description + "Timestamp when connection attempt was done"; + } + } + + grouping GRPC-STATE { + description + "gRPC state"; + leaf address-family { + type Af; + description + "gRPC address family"; + } + leaf port { + type uint32; + description + "gRPC port"; + } + leaf vrf { + type string; + description + "gRPC VRF"; + } + leaf tls { + type Tls-state; + description + "gRPC TLS state"; + } + leaf tls-mutual { + type Tls-mutual-state; + description + "gRPC TLS mutual"; + } + leaf trustpoint { + type string; + description + "gRPC trustpoint"; + } + leaf cert-auth { + type Certauth-state; + description + "gRPC Certificate Authentication"; + } + leaf tlsv1-0 { + type Tlsv1-0-state; + description + "gRPC TLS v1.0"; + } + leaf max-requests { + type uint32; + description + "Maximum number of requests"; + } + leaf max-requests-per-user { + type uint32; + description + "Maximum number of requests per user"; + } + leaf max-streams { + type uint32; + description + "Maximum number of streaming gRPCs"; + } + leaf max-streams-per-user { + type uint32; + description + "Maximum number of streaming gRPCs per user"; + } + leaf dscp { + type uint8; + description + "QoS marking DSCP on transmitted gRPC"; + } + leaf cipher-default { + type Grpc-tls-cipher-default; + description + "Default of all ciphers"; + } + leaf cipher-enable { + type string; + description + "Comma separated list of enable ciphers, if + cipher-default is disabled'"; + } + leaf cipher-disable { + type string; + description + "Comma separated list of disable ciphers, if + cipher-default is enabled'"; + } + leaf oper-cipher-enable { + type string; + description + "Comma separated list of enable ciphers based on + cipher default, disable, and enable"; + } + leaf oper-cipher-disable { + type string; + description + "Comma separated list of disable ciphers based on + cipher default, disable, and enable"; + } + leaf server { + type uint32; + description + "Server SHUT state"; + } + leaf server-disable-reason { + type uint32; + description + "Server SHUT reason"; + } + leaf ttl { + type uint8; + description + "TTL settings for transmitted gRPC"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper.yang new file mode 100644 index 000000000..3bc19e80c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ems-oper.yang @@ -0,0 +1,122 @@ +module Cisco-IOS-XR-man-ems-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-ems-oper"; + prefix man-ems-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-man-ems-oper-sub1 { + revision-date 2022-07-20; + } + + 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 man-ems package operational data. + + This module contains definitions + for the following management objects: + grpc: grpc commands + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-20 { + description + "Added support for gRPC TLS version 1.0 flag + 2022-04-26 + Added support for gRPC server name + 2021-10-22 + Added certificate bundle statistics + 2021-10-20 + Added counters for load bundle + 2021-09-13 + Added status string to reflect unavailable port state."; + semver:module-version "1.3.0"; + } + revision 2021-06-10 { + description + "Added gRPC tunnel."; + semver:module-version "1.2.0"; + } + revision 2021-03-22 { + description + "Added keep alive commands."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-22 { + description + "Fixed yang evaluator warnings."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container grpc { + config false; + description + "grpc commands"; + container state { + description + "Grpc State"; + uses GRPC-STATE; + } + container tunnel { + description + "Grpc tunnels"; + container destinations { + description + "Grpc tunnel destinations"; + list destination { + description + "Grpc tunnel sessions"; + leaf address { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "IPv4 address in dotted-quad notation, or IPv6 + address in full, mixed, shortened, and + shortened-mixed notation."; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "Destination port"; + } + uses GRPC-TUNNEL-SESSIONS; + } + } + } + container status { + description + "Grpc Status"; + uses GRPC-STATUS-INFO-B; + } + container statistics { + description + "Grpc Statistics"; + uses GRPC-STATISTICS-INFO-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-http-lighttpd-yang-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-http-lighttpd-yang-cfg.yang new file mode 100644 index 000000000..69256f9dd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-http-lighttpd-yang-cfg.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-man-http-lighttpd-yang-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-http-lighttpd-yang-cfg"; + prefix man-http-lighttpd-yang-cfg; + + 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 man-http-lighttpd-yang package configuration. + + This module contains definitions + for the following management objects: + web: Webserver configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container web { + description + "Webserver configuration commands"; + container server { + description + "Webserver configuration commands"; + container service { + description + "Web Service that needs to be activated"; + container restconf { + presence "Indicates a restconf node is configured."; + description + "Restconf specific configurations"; + leaf http-port { + type uint32; + description + "Port number http server is listening on"; + } + leaf http-enable { + type empty; + description + "Enable http connection in addition to https"; + } + leaf https-port { + type uint32; + description + "Port number https server is listening on"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable RESTCONF Service"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-cfg.yang new file mode 100644 index 000000000..d48f86a61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-cfg.yang @@ -0,0 +1,2610 @@ +module Cisco-IOS-XR-man-ipsla-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-ipsla-cfg"; + prefix man-ipsla-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 man-ipsla package configuration. + + This module contains definitions + for the following management objects: + ipsla: IPSLA configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-05-10 { + description + "Change in default value of lsp-selector."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipsla-secondary-frequency { + type enumeration { + enum "connection-loss" { + value 1; + description + "Enable secondary frequency for connection loss"; + } + enum "timeout" { + value 2; + description + "Enable secondary frequency for timeout"; + } + enum "both" { + value 3; + description + "Enable secondary frequency for timeout and + connection loss"; + } + } + description + "Ipsla secondary frequency"; + } + + typedef Ipsla-month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + description + "Ipsla month"; + } + + typedef Ipsla-lsp-ping-reply-mode { + type enumeration { + enum "ipv4-udp-router-alert" { + value 3; + description + "Send replies via IPv4 UDP packets with Router + Alert option"; + } + enum "control-channel" { + value 4; + description + "Send replies via a Control Channel option"; + } + } + description + "Ipsla lsp ping reply mode"; + } + + typedef Ipsla-lsp-trace-reply-mode { + type enumeration { + enum "ipv4-udp-router-alert" { + value 3; + description + "Send replies via IPv4 UDP packets with Router + Alert option"; + } + } + description + "Ipsla lsp trace reply mode"; + } + + typedef Ipsla-lsp-monitor-reply-mode { + type enumeration { + enum "ipv4-udp-router-alert" { + value 3; + description + "Send replies via IPv4 UDP packets with Router + Alert option"; + } + } + description + "Ipsla lsp monitor reply mode"; + } + + typedef Ipsla-sched { + type enumeration { + enum "pending" { + value 1; + description + "Schedule pending for later time"; + } + enum "now" { + value 2; + description + "Schedule operation now"; + } + enum "after" { + value 3; + description + "Schedule operation after specifed duration"; + } + enum "at" { + value 4; + description + "Schedule operation at specified time"; + } + } + description + "Ipsla sched"; + } + + typedef Ipsla-lsp-reply-dscp { + type union { + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp + (001000)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp + (010000)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp + (011000)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp + (100000)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp + (101000)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp + (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp + (111000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Ipsla lsp reply dscp"; + } + + typedef Ipsla-life { + type union { + type enumeration { + enum "forever" { + value 0; + description + "Schedule operation to run forever"; + } + } + type uint32 { + range "0..2147483647"; + } + } + description + "Ipsla life"; + } + + typedef Ipsla-threshold-types { + type enumeration { + enum "immediate" { + value 2; + description + "Take action immediately after threshold is + violated"; + } + enum "consecutive" { + value 3; + description + "Take action after N consecutive threshold + violations"; + } + enum "xof-y" { + value 4; + description + "Take action after X violations in Y probes"; + } + enum "average" { + value 5; + description + "Take action if average of N probes violates the + threshold"; + } + } + description + "Ipsla threshold types"; + } + + typedef Ipsla-lsp-monitor-threshold-types { + type enumeration { + enum "immediate" { + value 2; + description + "Take action immediately after threshold is + violated"; + } + enum "consecutive" { + value 3; + description + "Take action after N consecutive threshold + violations"; + } + } + description + "Ipsla lsp monitor threshold types"; + } + + typedef Ipsla-history-filter { + type enumeration { + enum "failed" { + value 2; + description + "Store data for failed operations"; + } + enum "all" { + value 255; + description + "Store data for all operations"; + } + } + description + "Ipsla history filter"; + } + + grouping TAG { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf tag { + type string { + length "1..128"; + } + description + "Add a tag for this MPLSLM instance"; + } + } + + grouping IPSLA-OP-DEF-COMMON-CFG-TAG { + description + "Common node of mpls-lsp-ping, + mpls-lsp-traceCommon node of icmp-echo, + icmp-path-echo, icmp-path-jitter, udp-echo, + udp-jitter, mpls-lsp-ping, mpls-lsp-trace"; + leaf tag { + type string { + length "1..128"; + } + description + "Add a tag for this operation"; + } + } + + grouping LSR-PATH { + description + "Common node of icmp-path-echo, icmp-path-jitter"; + container lsr-path { + presence "Indicates a lsr-path node is configured."; + description + "Loose source routing path (up to 8 intermediate + nodes)"; + leaf node1 { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 address of the intermediate node"; + } + leaf node2 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the intermediate node"; + } + leaf node3 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the intermediate node"; + } + leaf node4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the intermediate node"; + } + leaf node5 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the intermediate node"; + } + leaf node6 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the intermediate node"; + } + leaf node7 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the intermediate node"; + } + leaf node8 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the intermediate node"; + } + } + } + + grouping VERIFY-DATA { + description + "Common node of udp-echo, udp-jitter"; + leaf verify-data { + type empty; + description + "Check each IPSLA response for corruption"; + } + } + + grouping SOURCE-ADDRESS { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitter, + mpls-lsp-ping, mpls-lsp-trace"; + leaf source-address { + type string; + description + "Enter IPv4 address of the source device"; + } + } + + grouping FREQUENCY { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitter, + mpls-lsp-ping, mpls-lsp-trace"; + leaf frequency { + type uint32 { + range "1..604800"; + } + units "second"; + default "60"; + description + "Probe interval in seconds"; + } + } + + grouping DEST-ADDRESS { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitter"; + leaf dest-address { + type string; + description + "Enter IPv4 address of the destination device"; + } + } + + grouping SCAN { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + container scan { + description + "Scanning parameters configuration"; + leaf interval { + type uint32 { + range "1..70560"; + } + units "minute"; + default "240"; + description + "Time interval for automatic discovery"; + } + leaf delete-factor { + type uint32 { + range "0..2147483647"; + } + default "1"; + description + "Number of times for automatic deletion"; + } + } + } + + grouping DSCP-BITS { + description + "Common node of reply, reply"; + leaf dscp-bits { + type Ipsla-lsp-reply-dscp; + description + "DSCP bits in the reply IP header"; + } + } + + grouping THRESHOLD-TYPE { + description + "Common node of timeout, connection-loss"; + container threshold-type { + description + "Type of thresholding to perform on the monitored + element"; + leaf thresh-type { + type Ipsla-lsp-monitor-threshold-types; + description + "Type of thresholding to perform"; + } + leaf count1 { + when "../thresh-type != 'immediate'" { + description + "../ThreshType != Immediate"; + } + type uint32 { + range "1..16"; + } + description + "Probe count for consecutive"; + } + leaf count2 { + when "../thresh-type != 'immediate' and ../thresh-type != 'consecutive'" { + description + "../ThreshType != Immediate and ../ThreshType + != Consecutive"; + } + type uint32 { + range "1..16"; + } + description + "Y value, when threshold type is XofY"; + } + } + } + + grouping IPSLA-OP-REACT-CFG-THRESHOLD-TYPE { + description + "Common node of timeout, connection-lossCommon + node of timeout, verify-error, connection-loss, + jitter-average-sd, jitter-average-ds, + jitter-average, packet-loss-ds, packet-loss-sd, + rtt"; + container threshold-type { + description + "Type of thresholding to perform on the monitored + element"; + leaf thresh-type { + type Ipsla-threshold-types; + description + "Type of thresholding to perform"; + } + leaf count1 { + when "../thresh-type != 'immediate'" { + description + "../ThreshType != Immediate"; + } + type uint32 { + range "1..16"; + } + description + "Probe count for avarage, consecutive case or X + value for XofY case"; + } + leaf count2 { + when "../thresh-type != 'immediate' and ../thresh-type != 'consecutive' and ../thresh-type != 'average'" { + description + "../ThreshType != Immediate and ../ThreshType + != Consecutive and ../ThreshType != Average"; + } + type uint32 { + range "1..16"; + } + description + "Y value, when threshold type is XofY"; + } + } + } + + grouping ANY-VRF { + description + "Common node of remote-port-number, + any-remote-port"; + leaf any-vrf { + type empty; + description + "Configure any vrf name"; + } + } + + grouping STATISTICS { + description + "Common node of icmp-echo, udp-echo, udp-jitter, + mpls-lsp-ping, mpls-lsp-trace"; + container statistics { + description + "Statistics collection aggregated over an hour"; + leaf hours { + type uint32 { + range "0..25"; + } + units "hour"; + default "2"; + description + "Number of hours for which hourly statistics are + kept"; + } + leaf dist-interval { + type uint32 { + range "1..100"; + } + units "millisecond"; + default "20"; + description + "Specify distribution interval in milliseconds"; + } + leaf dist-count { + type uint32 { + range "1..20"; + } + default "1"; + description + "Count of distribution intervals maintained"; + } + } + } + + grouping IPSLA-MPLSLM-DEF-CFG-STATISTICS { + description + "Common node of icmp-echo, udp-echo, udp-jitter, + mpls-lsp-ping, mpls-lsp-traceCommon node of + mpls-lsp-ping, mpls-lsp-trace"; + container statistics { + description + "Statistics collection aggregated over an hour"; + leaf hours { + type uint32 { + range "0..2"; + } + units "hour"; + default "2"; + description + "Number of hours for which hourly statistics are + kept"; + } + } + } + + grouping TIMEOUT { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf timeout { + type uint32 { + range "1..604800000"; + } + units "millisecond"; + default "5000"; + description + "Probe/Control timeout in milliseconds"; + } + } + + grouping IPSLA-OP-DEF-COMMON-CFG-TIMEOUT { + description + "Common node of mpls-lsp-ping, + mpls-lsp-traceCommon node of icmp-echo, + icmp-path-echo, icmp-path-jitter, udp-echo, + udp-jitter, mpls-lsp-ping, mpls-lsp-trace"; + leaf timeout { + type uint32 { + range "1..604800000"; + } + units "millisecond"; + default "5000"; + description + "Probe/Control timeout in milliseconds"; + } + } + + grouping CONTROL-DISABLE { + description + "Common node of udp-echo, udp-jitter"; + leaf control-disable { + type empty; + description + "Disable control packets"; + } + } + + grouping FORCE-EXPLICIT-NULL { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf force-explicit-null { + type empty; + description + "Forced option for the MPLS LSP operation"; + } + } + + grouping IPSLA-MPLSLM-DEF-CFG-FORCE-EXPLICIT-NULL { + description + "Common node of mpls-lsp-ping, + mpls-lsp-traceCommon node of mpls-lsp-ping, + mpls-lsp-trace"; + leaf force-explicit-null { + type empty; + description + "Forced option for the MPLS LSP operation"; + } + } + + grouping REMOTE-PORT { + description + "Common node of remote-ipv4-address, + remote-ipv6-address, any-remote-ipv4-address-path + , any-remote-ipv6-address-path"; + container remote-port-numbers { + description + "Configuration of remote port"; + list remote-port-number { + key "remote-port"; + description + "Enter value of remote port"; + leaf remote-port { + type inet:port-number; + description + "Remote port"; + } + uses ANY-VRF; + uses IPSLA-RESPONDER-CFG-VRF-MP; + } + } + } + + grouping ENHANCED-STATS-TABLE { + description + "Common node of icmp-echo, udp-echo, udp-jitter, + mpls-lsp-ping"; + container enhanced-stats { + description + "Table of statistics collection intervals"; + list enhanced-stat { + key "interval"; + description + "Statistics for a specified time interval"; + leaf buckets { + type uint32 { + range "1..100"; + } + default "15"; + description + "Buckets of enhanced statistics kept"; + } + leaf interval { + type uint32 { + range "1..3600"; + } + units "second"; + description + "Interval in seconds"; + } + } + } + } + + grouping LSP-SELECTOR { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf lsp-selector { + type inet:ipv4-address-no-zone; + default "1.0.0.127"; + description + "Attributes used for path selection during LSP + load balancing"; + } + } + + grouping IPSLA-MPLSLM-DEF-CFG-LSP-SELECTOR { + description + "Common node of mpls-lsp-ping, + mpls-lsp-traceCommon node of mpls-lsp-ping, + mpls-lsp-trace"; + leaf lsp-selector { + type inet:ipv4-address-no-zone; + default "1.0.0.127"; + description + "Attributes used for path selection during LSP + load balancing"; + } + } + + grouping ACTION-TYPE { + description + "Common node of timeout, verify-error, + connection-loss, jitter-average-sd, + jitter-average-ds, jitter-average, packet-loss-ds + , packet-loss-sd, rtt"; + container action-type { + description + "Type of action to be taken on threshold + violation(s)"; + leaf logging { + type empty; + description + "Generate a syslog alarm on threshold violation"; + } + leaf trigger { + type empty; + description + "Generate trigger to active reaction triggered + operation(s)"; + } + } + } + + grouping IPSLA-MPLSLM-REACT-CFG-ACTION-TYPE { + description + "Common node of timeout, verify-error, + connection-loss, jitter-average-sd, + jitter-average-ds, jitter-average, packet-loss-ds + , packet-loss-sd, rttCommon node of timeout, + connection-loss, lpd-tree-trace, lpd-group"; + container action-type { + description + "Type of action to be taken on threshold + violation(s)"; + leaf logging { + type empty; + description + "Generate a syslog alarm on threshold violation"; + } + } + } + + grouping REPLY { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + container reply { + description + "Echo reply options for the MPLS LSP operation"; + leaf dscp-bits { + type Ipsla-lsp-reply-dscp; + description + "DSCP bits in the reply IP header"; + } + leaf mode { + type Ipsla-lsp-monitor-reply-mode; + description + "Enables use of router alert in echo reply + packets"; + } + } + } + + grouping IPSLA-MPLSLM-DEF-CFG-CREATE { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitter, + mpls-lsp-ping, mpls-lsp-traceCommon node of + mpls-lsp-ping, mpls-lsp-trace"; + leaf create { + type empty; + description + "Create MPLSLM instance with specified type"; + } + } + + grouping IPSLA-MPLSLM-REACT-CFG-CREATE { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitter, + mpls-lsp-ping, mpls-lsp-traceCommon node of + mpls-lsp-ping, mpls-lsp-traceCommon node of + timeout, verify-error, connection-loss, + jitter-average, jitter-average-sd, + jitter-average-ds, packet-loss-sd, packet-loss-ds + , rttCommon node of timeout, connection-loss, + lpd-tree-trace, lpd-group"; + leaf create { + type empty; + description + "Create reaction condition for a particular + MPLSLM"; + } + } + + grouping TOS { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitter"; + leaf tos { + type uint32 { + range "0..255"; + } + default "0"; + description + "Type of service setting in probe packet"; + } + } + + grouping SOURCE-PORT { + description + "Common node of udp-echo, udp-jitter"; + leaf source-port { + type inet:port-number; + description + "Port number on source device"; + } + } + + grouping OUTPUT-NEXTHOP { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf output-nexthop { + type inet:ipv4-address-no-zone; + description + "Echo request output nexthop"; + } + } + + grouping IPSLA-MPLSLM-DEF-CFG-OUTPUT-NEXTHOP { + description + "Common node of mpls-lsp-ping, + mpls-lsp-traceCommon node of mpls-lsp-ping, + mpls-lsp-trace"; + leaf output-nexthop { + type inet:ipv4-address-no-zone; + description + "Echo request output nexthop"; + } + } + + grouping ACCESSLIST { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf accesslist { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Apply access list to filter PE addresses"; + } + } + + grouping OUTPUT-INTERFACE { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf output-interface { + type xr:Interface-name; + description + "Echo request output interface"; + } + } + + grouping IPSLA-OP-DEF-MPLS-LSP-CFG-OUTPUT-INTERFACE { + description + "Common node of mpls-lsp-ping, + mpls-lsp-traceCommon node of mpls-lsp-ping, + mpls-lsp-trace"; + leaf output-interface { + type xr:Interface-name; + description + "Echo request output interface"; + } + } + + grouping EXP-BITS { + description + "Common node of mpls-lsp-ping, mpls-lsp-trace"; + leaf exp-bits { + type uint32 { + range "0..7"; + } + default "0"; + description + "EXP bits in MPLS LSP echo request header"; + } + } + + grouping IPSLA-OP-DEF-MPLS-LSP-CFG-EXP-BITS { + description + "Common node of mpls-lsp-ping, + mpls-lsp-traceCommon node of mpls-lsp-ping, + mpls-lsp-trace"; + leaf exp-bits { + type uint32 { + range "0..7"; + } + default "0"; + description + "EXP bits in MPLS LSP echo reply header"; + } + } + + grouping VRF { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitter"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Configure IPSLA for a VPN Routing/Forwarding + instance)"; + } + } + + grouping IPSLA-MPLSLM-DEF-CFG-VRF { + description + "Common node of icmp-echo, icmp-path-echo, + icmp-path-jitter, udp-echo, udp-jitterCommon node + of mpls-lsp-ping, mpls-lsp-trace"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Specify a VRF instance to be monitored"; + } + } + + grouping HISTORY { + description + "Common node of icmp-echo, udp-echo, mpls-lsp-ping + , mpls-lsp-trace"; + container history { + description + "Configure the history parameters for this + operation"; + leaf lives { + type uint32 { + range "0..2"; + } + default "0"; + description + "Specify number of lives to be kept"; + } + leaf history-filter { + type Ipsla-history-filter; + description + "Choose type of data to be stored in history + buffer"; + } + leaf buckets { + type uint32 { + range "1..60"; + } + default "15"; + description + "Specify number of history buckets"; + } + } + } + + grouping ANY-REMOTE-PORT { + description + "Common node of remote-ipv4-address, + remote-ipv6-address, any-remote-ipv4-address-path + , any-remote-ipv6-address-path"; + container any-remote-port { + description + "Configuration of any remote port"; + uses ANY-VRF; + uses IPSLA-RESPONDER-CFG-VRF-MP; + } + } + + grouping IPSLA-RESPONDER-CFG-VRF-MP { + description + "Common node of remote-port-number, + any-remote-port"; + container vrf-names { + description + "Configuration of vrf"; + list vrf-name { + key "vrf-name"; + description + "Configure vrf name value"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + } + } + } + + grouping THRESHOLD-LIMITS { + description + "Common node of jitter-average-sd, + jitter-average-ds, jitter-average, packet-loss-ds + , packet-loss-sd, rtt"; + container threshold-limits { + presence "Indicates a threshold-limits node is configured."; + description + "Specify threshold limits for the monitored + element"; + leaf lower-limit { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Threshold lower limit value"; + } + leaf upper-limit { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Threshold upper limit value"; + } + } + } + + grouping DEST-PORT { + description + "Common node of udp-echo, udp-jitter"; + leaf dest-port { + type inet:port-number; + description + "Port number on target device"; + } + } + + grouping LOCAL-PORT { + description + "Common node of local-ipv4-address, + local-ipv6-address, any-local-ipv4-address-path, + any-local-ipv6-address-path"; + container local-port-numbers { + description + "Configuration of local port"; + list local-port-number { + key "local-port"; + description + "Enter value of local port"; + container remote-ip { + description + "Configure remote ip address"; + container any-remote-ipv6-address-path { + description + "Configure any ipv6 address"; + uses REMOTE-PORT; + uses ANY-REMOTE-PORT; + } + container remote-ipv4-addresses { + description + "Configure IPV4 address"; + list remote-ipv4-address { + key "remotev4-address"; + description + "Enter value of remote ipv4 address"; + leaf remotev4-address { + type xr:Cisco-ios-xr-string; + description + "Remote IPv4 address"; + } + uses REMOTE-PORT; + uses ANY-REMOTE-PORT; + } + } + container any-remote-ipv4-address-path { + description + "Configure any ipv4 address"; + uses REMOTE-PORT; + uses ANY-REMOTE-PORT; + } + container remote-ipv6-addresses { + description + "Configure IPV6 address"; + list remote-ipv6-address { + key "remotev6-address"; + description + "Enter value of remote ipv6 address"; + leaf remotev6-address { + type xr:Cisco-ios-xr-string; + description + "Remote IPv6 address"; + } + uses REMOTE-PORT; + uses ANY-REMOTE-PORT; + } + } + } + leaf local-port { + type inet:port-number; + description + "Local port"; + } + } + } + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + leaf ipsla { + type boolean; + description + "Enable SNMP RTTMON-MIB IPSLA traps"; + } + } + container ipsla { + description + "IPSLA configuration"; + container common { + description + "IPSLA application common configuration"; + container hardware-timestamp { + description + "Hardware Timestamp configuration"; + leaf disable { + type empty; + description + "states true if hw-timestamp is disabled"; + } + } + container authentication { + description + "Authenticaion configuration"; + leaf key-chain { + type string { + length "1..32"; + } + description + "Use MD5 authentication for IPSLA control + message"; + } + } + leaf low-memory { + type uint32 { + range "0..4294967295"; + } + default "20480"; + description + "Configure low memory water mark (default 20M)"; + } + } + container mpls-lsp-monitor { + description + "MPLS LSP Monitor(MPLSLM) configuration"; + container reactions { + description + "MPLSLM Reaction configuration"; + list reaction { + key "monitor-id"; + description + "Reaction configuration for an MPLSLM instance"; + container condition { + description + "Reaction condition specification"; + container lpd-tree-trace { + presence "CLI submode compatibility."; + description + "React on LPD Tree Trace violation for a + monitored MPLSLM"; + uses IPSLA-MPLSLM-REACT-CFG-ACTION-TYPE; + } + container timeout { + presence "CLI submode compatibility."; + description + "React on probe timeout"; + uses IPSLA-MPLSLM-REACT-CFG-ACTION-TYPE; + uses THRESHOLD-TYPE; + } + container lpd-group { + presence "CLI submode compatibility."; + description + "React on LPD Group violation for a monitored + MPLSLM"; + uses IPSLA-MPLSLM-REACT-CFG-ACTION-TYPE; + } + container connection-loss { + presence "CLI submode compatibility."; + description + "React on connection loss for a monitored + MPLSLM"; + uses IPSLA-MPLSLM-REACT-CFG-ACTION-TYPE; + uses THRESHOLD-TYPE; + } + } + leaf monitor-id { + type uint32 { + range "1..2048"; + } + description + "Monitor identifier"; + } + } + } + container schedules { + description + "MPLSLM schedule configuration"; + list schedule { + key "monitor-id"; + description + "Schedule an MPLSLM instance"; + container start-time { + description + "Start time of MPLSLM instance"; + leaf schedule-type { + type Ipsla-sched; + description + "Type of schedule"; + } + leaf hour { + when "../schedule-type != 'now' and ../schedule-type != 'pending'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending"; + } + type uint32 { + range "0..23"; + } + description + "Hour value(hh) in hh:mm:ss specification"; + } + leaf minute { + when "../schedule-type != 'now' and ../schedule-type != 'pending'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending"; + } + type uint32 { + range "0..59"; + } + description + "Minute value(mm) in hh:mm:ss specification"; + } + leaf second { + when "../schedule-type != 'now' and ../schedule-type != 'pending'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending"; + } + type uint32 { + range "0..59"; + } + description + "Second value(ss) in hh:mm:ss specification"; + } + leaf month { + when "../schedule-type != 'now' and ../schedule-type != 'pending' and ../schedule-type != 'after'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending and ../ScheduleType != After"; + } + type Ipsla-month; + description + "Month of the year (optional. Default current + month)"; + } + leaf day { + when "../schedule-type != 'now' and ../schedule-type != 'pending' and ../schedule-type != 'after'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending and ../ScheduleType != After"; + } + type uint32 { + range "1..31"; + } + description + "Day of the month(optional. Default today)"; + } + leaf year { + when "../schedule-type != 'now' and ../schedule-type != 'pending' and ../schedule-type != 'after'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending and ../ScheduleType != After"; + } + type uint32 { + range "1993..2035"; + } + description + "Year (optional. Default current year)"; + } + } + leaf frequency { + type uint32 { + range "1..604800"; + } + units "second"; + description + "Group schedule frequency of the probing"; + } + leaf period { + type uint32 { + range "1..604800"; + } + units "second"; + description + "Group schedule period range"; + } + leaf monitor-id { + type uint32 { + range "1..2048"; + } + description + "Monitor indentifier"; + } + } + } + container definitions { + description + "MPLS LSP Monitor definition table"; + list definition { + key "monitor-id"; + description + "MPLS LSP Monitor definition"; + container operation-type { + description + "Operation type specification"; + container mpls-lsp-trace { + presence "CLI submode compatibility."; + description + "Perform MPLS LSP Trace operation"; + leaf ttl { + type uint32 { + range "1..255"; + } + default "30"; + description + "Time to live value"; + } + uses EXP-BITS; + uses REPLY; + uses TAG; + uses IPSLA-MPLSLM-DEF-CFG-LSP-SELECTOR; + uses OUTPUT-INTERFACE; + uses ACCESSLIST; + uses IPSLA-MPLSLM-DEF-CFG-OUTPUT-NEXTHOP; + uses IPSLA-MPLSLM-DEF-CFG-STATISTICS; + uses TIMEOUT; + uses IPSLA-MPLSLM-DEF-CFG-FORCE-EXPLICIT-NULL; + uses SCAN; + uses IPSLA-MPLSLM-DEF-CFG-VRF; + } + container mpls-lsp-ping { + presence "CLI submode compatibility."; + description + "Perform MPLS LSP Ping operation"; + container data-size { + description + "Protocol data size in payload of probe + packets"; + leaf request { + type uint32 { + range "100..17986"; + } + units "byte"; + default "100"; + description + "Payload size in request probe packet"; + } + } + container path-discover { + presence "CLI submode compatibility."; + description + "Path discover configuration"; + container session { + description + "Session parameters configuration"; + leaf timeout { + type uint32 { + range "1..900"; + } + units "second"; + default "120"; + description + "Timeout value for path discovery request"; + } + leaf limit { + type uint32 { + range "1..15"; + } + default "1"; + description + "Number of concurrent active path + discovery requests at one time"; + } + } + container path { + description + "Path parameters configuration"; + container secondary-frequency { + presence "Indicates a secondary-frequency node is configured."; + description + "Frequency to be used if path failure + condition is detected"; + leaf type { + type Ipsla-secondary-frequency; + mandatory true; + description + "Condition type of path failure"; + } + leaf frequency { + type uint32 { + range "1..604800"; + } + units "second"; + mandatory true; + description + "Frequency value in seconds"; + } + } + leaf retry { + type uint32 { + range "1..16"; + } + default "1"; + description + "Number of attempts before declaring the + path as down"; + } + } + container echo { + description + "Echo parameters configuration"; + container multipath { + description + "Downstream map multipath settings"; + leaf bitmap-size { + type uint32 { + range "1..256"; + } + default "32"; + description + "Multipath bit size"; + } + } + leaf interval { + type uint32 { + range "0..3600000"; + } + units "millisecond"; + default "0"; + description + "Send interval between echo requests + during path discovery"; + } + leaf timeout { + type uint32 { + range "1..3600"; + } + units "second"; + default "5"; + description + "Timeout value for echo requests during + path discovery"; + } + leaf retry { + type uint32 { + range "0..10"; + } + default "3"; + description + "Number of timeout retry attempts during + path discovery"; + } + leaf maximum-lsp-selector { + type inet:ipv4-address-no-zone; + default "127.255.255.255"; + description + "Maximum IPv4 address used as destination + in echo request"; + } + } + leaf scan-period { + type uint32 { + range "0..7200"; + } + units "minute"; + default "0"; + description + "Time period for finishing path discovery"; + } + } + leaf ttl { + type uint32 { + range "1..255"; + } + default "255"; + description + "Time to live value"; + } + uses EXP-BITS; + uses REPLY; + uses TAG; + uses IPSLA-MPLSLM-DEF-CFG-LSP-SELECTOR; + uses OUTPUT-INTERFACE; + uses ACCESSLIST; + uses IPSLA-MPLSLM-DEF-CFG-OUTPUT-NEXTHOP; + uses IPSLA-MPLSLM-DEF-CFG-STATISTICS; + uses TIMEOUT; + uses IPSLA-MPLSLM-DEF-CFG-FORCE-EXPLICIT-NULL; + uses SCAN; + uses IPSLA-MPLSLM-DEF-CFG-VRF; + } + } + leaf monitor-id { + type uint32 { + range "1..2048"; + } + description + "Monitor identifier"; + } + } + } + } + container operation { + description + "IPSLA Operation configuration"; + container schedules { + description + "Schedule an operation"; + list schedule { + key "operation-id"; + description + "Operation schedule configuration"; + container start-time { + description + "Start time of the operation"; + leaf schedule-type { + type Ipsla-sched; + description + "Type of schedule"; + } + leaf hour { + when "../schedule-type != 'now' and ../schedule-type != 'pending'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending"; + } + type uint32 { + range "0..23"; + } + description + "Hour value(hh) in hh:mm:ss specification"; + } + leaf minute { + when "../schedule-type != 'now' and ../schedule-type != 'pending'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending"; + } + type uint32 { + range "0..59"; + } + description + "Minute value(mm) in hh:mm:ss specification"; + } + leaf second { + when "../schedule-type != 'now' and ../schedule-type != 'pending'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending"; + } + type uint32 { + range "0..59"; + } + description + "Second value(ss) in hh:mm:ss specification"; + } + leaf month { + when "../schedule-type != 'now' and ../schedule-type != 'pending' and ../schedule-type != 'after'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending and ../ScheduleType != After"; + } + type Ipsla-month; + description + "Month of the year (optional. Default current + month)"; + } + leaf day { + when "../schedule-type != 'now' and ../schedule-type != 'pending' and ../schedule-type != 'after'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending and ../ScheduleType != After"; + } + type uint32 { + range "1..31"; + } + description + "Day of the month(optional. Default today)"; + } + leaf year { + when "../schedule-type != 'now' and ../schedule-type != 'pending' and ../schedule-type != 'after'" { + description + "../ScheduleType != Now and ../ScheduleType + != Pending and ../ScheduleType != After"; + } + type uint32 { + range "1993..2035"; + } + description + "Year(optional. Default current year)"; + } + } + leaf life { + type Ipsla-life; + units "second"; + description + "Length of the time to execute (default 3600 + seconds)"; + } + leaf ageout { + type uint32 { + range "0..2073600"; + } + units "second"; + description + "How long to keep this entry after it becomes + inactive"; + } + leaf recurring { + type empty; + description + "probe to be scheduled automatically every day"; + } + leaf operation-id { + type uint32 { + range "1..2048"; + } + description + "Operation number"; + } + } + } + container reactions { + description + "Reaction configuration"; + list reaction { + key "operation-id"; + description + "Reaction configuration for an operation"; + container condition { + description + "Reaction condition specification"; + container jitter-average-ds { + presence "CLI submode compatibility."; + description + "React on destination to source jitter + threshold violation"; + uses THRESHOLD-LIMITS; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container timeout { + presence "CLI submode compatibility."; + description + "React on probe timeout"; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container jitter-average { + presence "CLI submode compatibility."; + description + "React on average round trip jitter threshold + violation"; + uses THRESHOLD-LIMITS; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container verify-error { + presence "CLI submode compatibility."; + description + "React on error verfication violation"; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container rtt { + presence "CLI submode compatibility."; + description + "React on round trip time threshold violation"; + uses THRESHOLD-LIMITS; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container packet-loss-sd { + presence "CLI submode compatibility."; + description + "React on destination to source packet loss + threshold violation"; + uses THRESHOLD-LIMITS; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container jitter-average-sd { + presence "CLI submode compatibility."; + description + "React on average source to destination + jitter threshold violation"; + uses THRESHOLD-LIMITS; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container connection-loss { + presence "CLI submode compatibility."; + description + "React on connection loss for a monitored + operation"; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + container packet-loss-ds { + presence "CLI submode compatibility."; + description + "React on source to destination packet loss + threshold violation"; + uses THRESHOLD-LIMITS; + uses ACTION-TYPE; + uses IPSLA-OP-REACT-CFG-THRESHOLD-TYPE; + } + } + leaf operation-id { + type uint32 { + range "1..2048"; + } + description + "Operation number"; + } + } + } + container reaction-triggers { + description + "Reaction trigger configuration"; + list reaction-trigger { + key "operation-id"; + description + "Reaction trigger for an operation"; + leaf triggered-op-id { + type uint32 { + range "1..2048"; + } + description + "Operation number of the operation to be + triggered"; + } + leaf operation-id { + type uint32 { + range "1..2048"; + } + description + "Operation number of the operation generating + a trigger"; + } + } + } + container definitions { + description + "Operation definition table"; + list definition { + key "operation-id"; + description + "Operation definition"; + container operation-type { + description + "Operation type specification"; + container icmp-echo { + presence "CLI submode compatibility."; + description + "ICMPEcho Operation type"; + container data-size { + description + "Protocol data size in payload of probe + packets"; + leaf request { + type uint32 { + range "0..16384"; + } + units "byte"; + default "36"; + description + "Payload size in request probe packet"; + } + } + leaf source-address-v6 { + type string; + description + "Enter IPv6 address of the source device"; + } + leaf dest-address-v6 { + type string; + description + "Enter IPv6 address of the destination + device"; + } + uses SOURCE-ADDRESS; + uses TOS; + uses STATISTICS; + uses VRF; + uses HISTORY; + uses IPSLA-OP-DEF-COMMON-CFG-TIMEOUT; + uses FREQUENCY; + uses DEST-ADDRESS; + uses ENHANCED-STATS-TABLE; + uses IPSLA-OP-DEF-COMMON-CFG-TAG; + } + container mpls-lsp-ping { + presence "CLI submode compatibility."; + description + "MPLS LSP Ping Operation type"; + container data-size { + description + "Protocol data size in payload of probe + packets"; + leaf request { + type uint32 { + range "100..17986"; + } + default "100"; + description + "Payload size in request probe packet"; + } + } + container reply { + description + "Echo reply options for the MPLS LSP + operation"; + leaf mode { + type Ipsla-lsp-ping-reply-mode; + description + "Enables use of router alert in echo reply + packets"; + } + uses DSCP-BITS; + } + container target { + description + "Target for the MPLS LSP operation"; + container traffic-engineering { + description + "Traffic engineering target"; + leaf tunnel { + type uint32 { + range "0..65535"; + } + description + "Tunnel interface number"; + } + } + container ipv4 { + description + "Target specified as an IPv4 address"; + container fec-address { + presence "Indicates a fec-address node is configured."; + description + "Target FEC address with mask"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address for target"; + } + leaf mask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP netmask for target"; + } + } + } + container pseudowire { + description + "Pseudowire target"; + container target-address { + presence "Indicates a target-address node is configured."; + description + "Target address"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Target address"; + } + leaf vc-id { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Virtual circuit ID"; + } + } + } + } + leaf ttl { + type uint32 { + range "1..255"; + } + default "255"; + description + "Time to live value"; + } + uses SOURCE-ADDRESS; + uses OUTPUT-NEXTHOP; + uses LSP-SELECTOR; + uses STATISTICS; + uses IPSLA-OP-DEF-MPLS-LSP-CFG-EXP-BITS; + uses FORCE-EXPLICIT-NULL; + uses HISTORY; + uses IPSLA-OP-DEF-COMMON-CFG-TIMEOUT; + uses IPSLA-OP-DEF-MPLS-LSP-CFG-OUTPUT-INTERFACE; + uses FREQUENCY; + uses ENHANCED-STATS-TABLE; + uses IPSLA-OP-DEF-COMMON-CFG-TAG; + } + container udp-echo { + presence "CLI submode compatibility."; + description + "UDPEcho Operation type"; + container data-size { + description + "Protocol data size in payload of probe + packets"; + leaf request { + type uint32 { + range "16..1500"; + } + units "byte"; + default "16"; + description + "Payload size in request probe packet"; + } + } + uses SOURCE-ADDRESS; + uses TOS; + uses CONTROL-DISABLE; + uses SOURCE-PORT; + uses STATISTICS; + uses VRF; + uses HISTORY; + uses IPSLA-OP-DEF-COMMON-CFG-TIMEOUT; + uses FREQUENCY; + uses DEST-PORT; + uses VERIFY-DATA; + uses DEST-ADDRESS; + uses ENHANCED-STATS-TABLE; + uses IPSLA-OP-DEF-COMMON-CFG-TAG; + } + container mpls-lsp-trace { + presence "CLI submode compatibility."; + description + "MPLS LSP Trace Operation type"; + container target { + description + "Target for the MPLS LSP operation"; + container traffic-engineering { + description + "Traffic engineering target"; + leaf tunnel { + type uint32 { + range "0..65535"; + } + description + "Tunnel interface number"; + } + } + container ipv4 { + description + "Target specified as an IPv4 address"; + container fec-address { + presence "Indicates a fec-address node is configured."; + description + "Target FEC address with mask"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address for target"; + } + leaf mask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP netmask for target"; + } + } + } + } + container reply { + description + "Echo reply options for the MPLS LSP + operation"; + leaf mode { + type Ipsla-lsp-trace-reply-mode; + description + "Enables use of router alert in echo reply + packets"; + } + uses DSCP-BITS; + } + leaf ttl { + type uint32 { + range "1..255"; + } + default "30"; + description + "Time to live value"; + } + uses SOURCE-ADDRESS; + uses OUTPUT-NEXTHOP; + uses LSP-SELECTOR; + uses STATISTICS; + uses IPSLA-OP-DEF-MPLS-LSP-CFG-EXP-BITS; + uses FORCE-EXPLICIT-NULL; + uses HISTORY; + uses IPSLA-OP-DEF-COMMON-CFG-TIMEOUT; + uses IPSLA-OP-DEF-MPLS-LSP-CFG-OUTPUT-INTERFACE; + uses FREQUENCY; + uses IPSLA-OP-DEF-COMMON-CFG-TAG; + } + container udp-jitter { + presence "CLI submode compatibility."; + description + "UDPJitter Operation type"; + container data-size { + description + "Protocol data size in payload of probe + packets"; + leaf request { + type uint32 { + range "28..1500"; + } + units "byte"; + default "32"; + description + "Payload size in request probe packet"; + } + } + container packet { + description + "Probe packet stream configuration + parameters"; + leaf count { + type uint32 { + range "1..60000"; + } + default "10"; + description + "Number of packets to be transmitted during + a probe"; + } + leaf interval { + type uint32 { + range "1..60000"; + } + units "millisecond"; + default "20"; + description + "Packet interval in milliseconds"; + } + } + uses SOURCE-ADDRESS; + uses TOS; + uses CONTROL-DISABLE; + uses SOURCE-PORT; + uses STATISTICS; + uses VRF; + uses IPSLA-OP-DEF-COMMON-CFG-TIMEOUT; + uses FREQUENCY; + uses DEST-PORT; + uses VERIFY-DATA; + uses DEST-ADDRESS; + uses ENHANCED-STATS-TABLE; + uses IPSLA-OP-DEF-COMMON-CFG-TAG; + } + container icmp-path-echo { + presence "CLI submode compatibility."; + description + "ICMPPathEcho Operation type"; + container history { + description + "Configure the history parameters for this + operation"; + leaf samples { + type uint32 { + range "1..30"; + } + default "16"; + description + "Specify number of samples to keep"; + } + leaf buckets { + type uint32 { + range "1..60"; + } + default "15"; + description + "Specify number of history buckets"; + } + leaf history-filter { + type Ipsla-history-filter; + description + "Choose type of data to be stored in + history buffer"; + } + leaf lives { + type uint32 { + range "0..2"; + } + default "0"; + description + "Specify number of lives to be kept"; + } + } + container data-size { + description + "Protocol data size in payload of probe + packets"; + leaf request { + type uint32 { + range "0..16384"; + } + units "byte"; + default "36"; + description + "Payload size in request probe packet"; + } + } + container statistics { + description + "Statistics collection aggregated over an + hour"; + leaf paths { + type uint32 { + range "1..128"; + } + default "5"; + description + "Maximum number of paths for which + statistics are kept"; + } + leaf dist-interval { + type uint32 { + range "1..100"; + } + units "millisecond"; + default "20"; + description + "Specify distribution interval in + milliseconds"; + } + leaf dist-count { + type uint32 { + range "1..20"; + } + default "1"; + description + "Count of distribution intervals maintained"; + } + leaf hours { + type uint32 { + range "0..25"; + } + units "hour"; + default "2"; + description + "Number of hours for which hourly + statistics are kept"; + } + leaf hops { + type uint32 { + range "1..30"; + } + default "16"; + description + "Maximum hops per path for which statistics + are kept"; + } + } + uses SOURCE-ADDRESS; + uses TOS; + uses LSR-PATH; + uses VRF; + uses IPSLA-OP-DEF-COMMON-CFG-TIMEOUT; + uses FREQUENCY; + uses DEST-ADDRESS; + uses IPSLA-OP-DEF-COMMON-CFG-TAG; + } + container icmp-path-jitter { + presence "CLI submode compatibility."; + description + "ICMPPathJitter Operation type"; + container data-size { + description + "Protocol data size in payload of probe + packets"; + leaf request { + type uint32 { + range "0..16384"; + } + units "byte"; + default "36"; + description + "Payload size in request probe packet"; + } + } + container packet { + description + "Probe packet stream configuration + parameters"; + leaf count { + type uint32 { + range "1..100"; + } + default "10"; + description + "Number of packets to be transmitted during + a probe"; + } + leaf interval { + type uint32 { + range "1..60000"; + } + units "millisecond"; + default "20"; + description + "Packet interval in milliseconds"; + } + } + uses SOURCE-ADDRESS; + uses TOS; + uses LSR-PATH; + uses VRF; + uses IPSLA-OP-DEF-COMMON-CFG-TIMEOUT; + uses FREQUENCY; + uses DEST-ADDRESS; + uses IPSLA-OP-DEF-COMMON-CFG-TAG; + } + } + leaf operation-id { + type uint32 { + range "1..2048"; + } + description + "Operation number"; + } + } + } + } + container responder { + presence "CLI submode compatibility."; + description + "Responder configuration"; + container twamp { + presence "CLI submode compatibility."; + description + "Responder TWAMP configuration"; + leaf timeout { + type uint32 { + range "1..604800"; + } + units "second"; + default "900"; + description + "Configure responder timeout value in seconds"; + } + } + container type { + description + "Configure IPSLA Responder port type"; + container udp { + description + "Configure IPSLA Responder UDP address and port"; + container addresses { + description + "Configure IP address"; + list address { + key "local-address"; + description + "Configure IP address for the permanent port"; + container ports { + description + "Configure port"; + list port { + key "port"; + description + "Configure port number for the permanent + port"; + leaf port { + type inet:port-number; + description + "Port number to be enabled"; + } + } + } + leaf local-address { + type inet:ipv4-address-no-zone; + description + "IP address of the Responder"; + } + } + } + } + } + container twamp-light { + description + "Enter twamp-light session details"; + container session-ids { + description + "Create twamp-light session"; + list session-id { + key "session-id"; + description + "Configure session ID"; + container local-ip { + description + "Configure local ip address"; + container any-local-ipv4-address-path { + description + "Configure any ipv4 address"; + uses LOCAL-PORT; + } + container local-ipv6-addresses { + description + "Configure IPV6 address"; + list local-ipv6-address { + key "localv6-address"; + description + "Enter value of local ip address"; + leaf localv6-address { + type xr:Cisco-ios-xr-string; + description + "Local IPv6 address"; + } + uses LOCAL-PORT; + } + } + container any-local-ipv6-address-path { + description + "Configure any ipv6 address"; + uses LOCAL-PORT; + } + container local-ipv4-addresses { + description + "Configure IPV4 address"; + list local-ipv4-address { + key "localv4-address"; + description + "Enter value of local ipv4 address"; + leaf localv4-address { + type xr:Cisco-ios-xr-string; + description + "Local IPv4 address"; + } + uses LOCAL-PORT; + } + } + } + leaf twamp-light-timeout { + type uint32 { + range "60..86400"; + } + units "second"; + description + "Configure session timeout"; + } + leaf session-id { + type uint32 { + range "1..65535"; + } + description + "SessionID"; + } + } + } + } + } + container mpls-discovery { + description + "Provider Edge(PE) discovery configuration"; + container vpn { + description + "Layer 3 VPN PE discovery configuration"; + leaf interval { + type uint32 { + range "30..70560"; + } + units "minute"; + default "300"; + description + "Specify a discovery refresh interval"; + } + } + } + container server-twamp { + presence "CLI submode compatibility."; + description + "IPPM Server configuration"; + leaf inactivity-timer { + type uint32 { + range "1..6000"; + } + units "second"; + default "900"; + description + "Configure ippmserver inactivity timer value in + seconds"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + default "862"; + description + "Configure port number for ippmserver listening + port"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub1.yang new file mode 100644 index 000000000..bf1aa3587 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub1.yang @@ -0,0 +1,142 @@ +submodule Cisco-IOS-XR-man-ipsla-oper-sub1 { + belongs-to Cisco-IOS-XR-man-ipsla-oper { + prefix Cisco-IOS-XR-man-ipsla-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR man-ipsla package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sla-op-types { + type enumeration { + enum "oper-icmp-echo" { + value 1; + description + "ICMP Echo"; + } + enum "oper-icmp-path-jitter" { + value 2; + description + "ICMP PathJitter"; + } + enum "oper-icmp-path-echo" { + value 4; + description + "ICMP Path Echo"; + } + enum "oper-udp-jitter" { + value 8; + description + "UDP Jitter"; + } + enum "oper-udp-echo" { + value 16; + description + "UDP Echo"; + } + enum "oper-mpls-lsp-ping" { + value 32; + description + "MPLS LSP Ping"; + } + enum "oper-mpls-lsp-trace" { + value 64; + description + "MPLS LSP Trace"; + } + enum "oper-mpls-lsp-group" { + value 128; + description + "MPLS LSP Group"; + } + } + description + "IPSLA Operation Types"; + } + + grouping IPSLA-APPLICATION-BAG { + description + "IPSLA application information"; + leaf version { + type string; + description + "Version of the IPSLA in Version.Release + .Patch-level format"; + } + leaf max-entries { + type uint32; + description + "Maximum number of entries"; + } + leaf entries-configured { + type uint32; + description + "Number of entries configured"; + } + leaf active-entries { + type uint32; + description + "Number of active entries"; + } + leaf pending-entries { + type uint32; + description + "Number of pending entries"; + } + leaf inactive-entries { + type uint32; + description + "Number of inactive entries"; + } + leaf configurable-probes { + type uint32; + description + "Number of configurable probes"; + } + leaf min-memory { + type uint32; + description + "IPSLA low memory watermark in KB"; + } + leaf hw-timestamp-disabled { + type boolean; + description + "IPSLA HW timestamp Disabled flag"; + } + leaf-list operation-type { + type Sla-op-types; + max-elements "8"; + description + "Operation types available in this IPSLA version"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub2.yang new file mode 100644 index 000000000..5e5ecb7e7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub2.yang @@ -0,0 +1,1655 @@ +submodule Cisco-IOS-XR-man-ipsla-oper-sub2 { + belongs-to Cisco-IOS-XR-man-ipsla-oper { + prefix Cisco-IOS-XR-man-ipsla-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR man-ipsla package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Op-type-enum { + type enumeration { + enum "icmp-echo" { + value 1; + description + "icmp echo"; + } + enum "icmp-path-jitter" { + value 2; + description + "icmp path jitter"; + } + enum "icmp-path-echo" { + value 4; + description + "icmp path echo"; + } + enum "udp-jitter" { + value 8; + description + "udp jitter"; + } + enum "udp-echo" { + value 16; + description + "udp echo"; + } + enum "mpls-lsp-ping" { + value 32; + description + "mpls lsp ping"; + } + enum "mpls-lsp-trace" { + value 64; + description + "mpls lsp trace"; + } + enum "mpls-lsp-group" { + value 128; + description + "mpls lsp group"; + } + } + description + "IPSLA Operation Types"; + } + + typedef Ipsla-ret-code { + type enumeration { + enum "ipsla-ret-code-unknown" { + value 0; + description + "ipsla ret code unknown"; + } + enum "ipsla-ret-code-ok" { + value 1; + description + "ipsla ret code ok"; + } + enum "ipsla-ret-code-disconnect" { + value 2; + description + "ipsla ret code disconnect"; + } + enum "ipsla-ret-code-over-threshold" { + value 3; + description + "ipsla ret code over threshold"; + } + enum "ipsla-ret-code-timeout" { + value 4; + description + "ipsla ret code timeout"; + } + enum "ipsla-ret-code-busy" { + value 5; + description + "ipsla ret code busy"; + } + enum "ipsla-ret-code-no-connection" { + value 6; + description + "ipsla ret code no connection"; + } + enum "ipsla-ret-code-dropped" { + value 7; + description + "ipsla ret code dropped"; + } + enum "ipsla-ret-code-sequence-error" { + value 8; + description + "ipsla ret code sequence error"; + } + enum "ipsla-ret-code-verify-error" { + value 9; + description + "ipsla ret code verify error"; + } + enum "ipsla-ret-code-application-specific" { + value 10; + description + "ipsla ret code application specific"; + } + enum "ipsla-ret-code-dns-server-timeout" { + value 11; + description + "ipsla ret code dns server timeout"; + } + enum "ipsla-ret-code-tcp-connect-timeout" { + value 12; + description + "ipsla ret code tcp connect timeout"; + } + enum "ipsla-ret-code-http-transaction-timeout" { + value 13; + description + "ipsla ret code http transaction timeout"; + } + enum "ipsla-ret-code-dns-query-error" { + value 14; + description + "ipsla ret code dns query error"; + } + enum "ipsla-ret-code-http-error" { + value 15; + description + "ipsla ret code http error"; + } + enum "ipsla-ret-code-internal-error" { + value 16; + description + "ipsla ret code internal error"; + } + enum "ipsla-ret-code-mpls-lsp-echo-tx-error" { + value 17; + description + "ipsla ret code mpls lsp echo tx error"; + } + enum "ipsla-ret-code-mpls-lsp-unreachable" { + value 18; + description + "ipsla ret code mpls lsp unreachable"; + } + enum "ipsla-ret-code-mpls-lsp-malformed-request" { + value 19; + description + "ipsla ret code mpls lsp malformed request"; + } + enum "ipsla-ret-code-mpls-lsp-reachable-but-not-fec" { + value 20; + description + "ipsla ret code mpls lsp reachable but not fec"; + } + enum "ipsla-ret-code-mpls-lsp-ds-map-mismatch" { + value 21; + description + "ipsla ret code mpls lsp ds map mismatch"; + } + enum "ipsla-ret-code-mpls-lsp-duplicate" { + value 22; + description + "ipsla ret code mpls lsp duplicate"; + } + enum "ipsla-ret-code-failure" { + value 23; + description + "ipsla ret code failure"; + } + enum "ipsla-ret-code-malloc-failure" { + value 24; + description + "ipsla ret code malloc failure"; + } + enum "ipsla-ret-code-sock-open-error" { + value 25; + description + "ipsla ret code sock open error"; + } + enum "ipsla-ret-code-sock-bind-error" { + value 26; + description + "ipsla ret code sock bind error"; + } + enum "ipsla-ret-code-sock-send-error" { + value 27; + description + "ipsla ret code sock send error"; + } + enum "ipsla-ret-code-sock-recv-error" { + value 28; + description + "ipsla ret code sock recv error"; + } + enum "ipsla-ret-code-sock-connect-error" { + value 29; + description + "ipsla ret code sock connect error"; + } + enum "ipsla-ret-code-sock-set-option-error" { + value 30; + description + "ipsla ret code sock set option error"; + } + enum "ipsla-ret-code-sock-attach-error" { + value 31; + description + "ipsla ret code sock attach error"; + } + enum "ipsla-ret-code-ctrl-msg-error" { + value 32; + description + "ipsla ret code ctrl msg error"; + } + enum "ipsla-ret-code-no-key-chain" { + value 33; + description + "ipsla ret code no key chain"; + } + enum "ipsla-ret-code-key-chain-lib-fail" { + value 34; + description + "ipsla ret code key chain lib fail"; + } + enum "ipsla-ret-code-no-key-id" { + value 35; + description + "ipsla ret code no key id"; + } + enum "ipsla-ret-code-invalid-key-id" { + value 36; + description + "ipsla ret code invalid key id"; + } + enum "ipsla-ret-code-entry-exist" { + value 37; + description + "ipsla ret code entry exist"; + } + enum "ipsla-ret-code-entry-not-found" { + value 38; + description + "ipsla ret code entry not found"; + } + enum "ipsla-ret-code-hop-over-max" { + value 39; + description + "ipsla ret code hop over max"; + } + enum "ipsla-ret-code-hop-dup-address" { + value 40; + description + "ipsla ret code hop dup address"; + } + enum "ipsla-ret-code-vrf-name-error" { + value 41; + description + "ipsla ret code vrf name error"; + } + enum "ipsla-ret-code-resp-failure" { + value 42; + description + "ipsla ret code resp failure"; + } + enum "ipsla-ret-code-auth-failure" { + value 43; + description + "ipsla ret code auth failure"; + } + enum "ipsla-ret-code-format-failure" { + value 44; + description + "ipsla ret code format failure"; + } + enum "ipsla-ret-code-port-in-use" { + value 45; + description + "ipsla ret code port in use"; + } + enum "ipsla-ret-code-no-route" { + value 46; + description + "ipsla ret code no route"; + } + enum "ipsla-ret-code-pending" { + value 47; + description + "ipsla ret code pending"; + } + enum "ipsla-ret-code-invalid-address" { + value 48; + description + "ipsla ret code invalid address"; + } + enum "ipsla-ret-code-max" { + value 49; + description + "ipsla ret code max"; + } + } + description + "Ipsla ret code"; + } + + typedef Ipsla-mpls-lpd-discovery-mode-enum { + type enumeration { + enum "ipsla-mpls-lpd-unknown" { + description + "ipsla mpls lpd unknown"; + } + enum "ipsla-mpls-lpd-initial-running" { + description + "ipsla mpls lpd initial running"; + } + enum "ipsla-mpls-lpd-initial-complete" { + description + "ipsla mpls lpd initial complete"; + } + enum "ipsla-mpls-lpd-rediscovery-running" { + description + "ipsla mpls lpd rediscovery running"; + } + enum "ipsla-mpls-lpd-rediscovery-complete" { + description + "ipsla mpls lpd rediscovery complete"; + } + } + description + "Ipsla mpls lpd discovery mode enum"; + } + + typedef Ipsla-mpls-lpd-path-discovery-status { + type enumeration { + enum "ipsla-mpls-lpd-path-discovery-unknown" { + description + "ipsla mpls lpd path discovery unknown"; + } + enum "ipsla-mpls-lpd-path-discovery-ok" { + description + "ipsla mpls lpd path discovery ok"; + } + enum "ipsla-mpls-lpd-path-discovery-broken" { + description + "ipsla mpls lpd path discovery broken"; + } + enum "ipsla-mpls-lpd-path-discovery-unexplorable" { + description + "ipsla mpls lpd path discovery unexplorable"; + } + } + description + "Ipsla mpls lpd path discovery status"; + } + + typedef Ipsla-mpls-lpd-ret-code { + type enumeration { + enum "ipsla-mpls-lpd-ret-code-unknown" { + value 1; + description + "ipsla mpls lpd ret code unknown"; + } + enum "ipsla-mpls-lpd-ret-code-no-path" { + value 2; + description + "ipsla mpls lpd ret code no path"; + } + enum "ipsla-mpls-lpd-ret-code-all-path-broken" { + value 3; + description + "ipsla mpls lpd ret code all path broken"; + } + enum "ipsla-mpls-lpd-ret-code-all-path-unexplorable" { + value 4; + description + "ipsla mpls lpd ret code all path unexplorable"; + } + enum "ipsla-mpls-lpd-ret-code-all-path-broken-or-unexplorable" { + value 5; + description + "ipsla mpls lpd ret code all path broken or + unexplorable"; + } + enum "ipsla-mpls-lpd-ret-code-timeout" { + value 6; + description + "ipsla mpls lpd ret code timeout"; + } + enum "ipsla-mpls-lpd-ret-code-error" { + value 7; + description + "ipsla mpls lpd ret code error"; + } + enum "ipsla-mpls-lpd-ret-code-ok" { + value 8; + description + "ipsla mpls lpd ret code ok"; + } + } + description + "Ipsla mpls lpd ret code"; + } + + typedef Ipv6addr { + type inet:ipv6-address; + description + "Ipv6addr"; + } + + typedef Ipsla-target-type-enum { + type enumeration { + enum "ipv4-address-target-type" { + value 1; + description + "IPv4 address"; + } + enum "ipv4-prefix-target-type" { + value 2; + description + "IPv4 prefix"; + } + enum "tunnel-id-target-type" { + value 3; + description + "Tunnel ID"; + } + enum "ipv4-pseudowire-target-type" { + value 4; + description + "IPv4 pseudowire"; + } + enum "ipv6-address-target-type" { + value 5; + description + "IPv6 address"; + } + } + description + "IPSLA Target Types"; + } + + typedef Ipsla-oper-state-enum { + type enumeration { + enum "ipsla-oper-state-inactive" { + value 0; + description + "ipsla oper state inactive"; + } + enum "ipsla-oper-state-pending" { + value 1; + description + "ipsla oper state pending"; + } + enum "ipsla-oper-state-active" { + value 2; + description + "ipsla oper state active"; + } + } + description + "Ipsla oper state enum"; + } + + typedef Ipsla-mpls-add-delete-enum { + type enumeration { + enum "ipsla-mpls-add-delete-add-q" { + value 1; + description + "ipsla mpls add delete add q"; + } + enum "ipsla-mpls-add-delete-delete-q" { + value 2; + description + "ipsla mpls add delete delete q"; + } + } + description + "Ipsla mpls add delete enum"; + } + + typedef Ipsla-lsp-grp-path-status-enum { + type enumeration { + enum "ipsla-lsp-grp-path-status-unknown" { + value 0; + description + "ipsla lsp grp path status unknown"; + } + enum "ipsla-lsp-grp-path-status-up" { + value 1; + description + "ipsla lsp grp path status up"; + } + enum "ipsla-lsp-grp-path-status-down" { + value 2; + description + "ipsla lsp grp path status down"; + } + enum "ipsla-lsp-grp-path-status-retry" { + value 3; + description + "ipsla lsp grp path status retry"; + } + enum "ipsla-lsp-grp-path-status-pending" { + value 4; + description + "ipsla lsp grp path status pending"; + } + } + description + "Ipsla lsp grp path status enum"; + } + + typedef Ipsla-lsp-grp-status-enum { + type enumeration { + enum "ipsla-lsp-grp-status-unknown" { + value 1; + description + "ipsla lsp grp status unknown"; + } + enum "ipsla-lsp-grp-status-up" { + value 2; + description + "ipsla lsp grp status up"; + } + enum "ipsla-lsp-grp-status-partial" { + value 3; + description + "ipsla lsp grp status partial"; + } + enum "ipsla-lsp-grp-status-down" { + value 4; + description + "ipsla lsp grp status down"; + } + enum "ipsla-lsp-grp-status-pending" { + value 5; + description + "ipsla lsp grp status pending"; + } + } + description + "Ipsla lsp grp status enum"; + } + + grouping IPSLA-LPD-PATH-STATS-BAG { + description + "IPSLA LPD Path Statistics"; + container path-id { + description + "LPD path identifier"; + uses IPSLA-LPD-PATH-ID-BAG; + } + leaf return-code { + type Ipsla-ret-code; + description + "Path return code"; + } + } + + grouping IPSLA-UDP-JITTER-SPEC-STATS-BAG { + description + "UDP Jitter Specific Statistics"; + leaf jitter-in { + type uint32; + description + "Input Jitter moving average, computed as per + RFC1889"; + } + leaf jitter-out { + type uint32; + description + "Output Jitter moving average, computed as per + RFC1889"; + } + leaf packet-loss-sd { + type uint32; + description + "Packets lost in source to destination (SD) + direction"; + } + leaf packet-loss-ds { + type uint32; + description + "Packets lost in destination to source (DS) + direction"; + } + leaf packet-out-of-sequence { + type uint32; + description + "Packets out of sequence"; + } + leaf packet-mia { + type uint32; + description + "Packets missing in action (cannot determine if + theywere lost in SD or DS direction"; + } + leaf packet-skipped { + type uint32; + description + "Packets which are skipped"; + } + leaf packet-late-arrivals { + type uint32; + description + "Packets arriving late"; + } + leaf packet-invalid-tstamp { + type uint32; + description + "Packets with bad timestamps"; + } + leaf internal-errors-count { + type uint32; + description + "Number of internal errors"; + } + leaf busies-count { + type uint32; + description + "Number of busies"; + } + leaf positive-sd-sum { + type uint32; + units "millisecond"; + description + "Sum of positive jitter values (i.e., network + latency increases for two consecutive packets) + in SD direction Measured in milliseconds"; + } + leaf positive-sd-sum2 { + type uint64; + description + "Sum of squares of positive jitter values in SD + direction"; + } + leaf positive-sd-min { + type uint32; + description + "Minimum of positive jitter values in SD + direction"; + } + leaf positive-sd-max { + type uint32; + description + "Maximum of positive jitter values in SD + direction"; + } + leaf positive-sd-count { + type uint32; + description + "Number of positive jitter values in SD direction"; + } + leaf negative-sd-sum { + type uint32; + units "millisecond"; + description + "Sum of negative jitter values (i.e., network + latency decreases for two consecutive packets) + in SD direction Measured in milliseconds"; + } + leaf negative-sd-sum2 { + type uint64; + description + "Sum of squares of negative jitter values in SD + direction"; + } + leaf negative-sd-min { + type uint32; + description + "Minimum of negative jitter values in SD + direction"; + } + leaf negative-sd-max { + type uint32; + description + "Maximum of negative jitter values in SD + direction"; + } + leaf negative-sd-count { + type uint32; + description + "Number of negative jitter values in SD direction"; + } + leaf positive-ds-sum { + type uint32; + units "millisecond"; + description + "Sum of positive jitter values (i.e., network + latency increases for two consecutive packets) + in DS direction Measured in milliseconds"; + } + leaf positive-ds-sum2 { + type uint64; + description + "Sum of squares of positive jitter values in DS + direction"; + } + leaf positive-ds-min { + type uint32; + description + "Minimum of positive jitter values in DS + direction"; + } + leaf positive-ds-max { + type uint32; + description + "Maximum of positive jitter values in DS + direction"; + } + leaf positive-ds-count { + type uint32; + description + "Number of positive jitter values in DS direction"; + } + leaf negative-ds-sum { + type uint32; + units "millisecond"; + description + "Sum of negative jitter values (i.e., network + latency decreases for two consecutive packets) + in DS direction Measured in milliseconds"; + } + leaf negative-ds-sum2 { + type uint64; + description + "Sum of squares of negative jitter values in DS + direction"; + } + leaf negative-ds-min { + type uint32; + description + "Minimum of negative jitter values in DS + direction"; + } + leaf negative-ds-max { + type uint32; + description + "Maximum of negative jitter values in DS + direction"; + } + leaf negative-ds-count { + type uint32; + description + "Number of negative jitter values in DS direction"; + } + leaf one-way-count { + type uint32; + description + "Number of probe/probe-response pairs used to + compute one-way statistics"; + } + leaf one-way-sd-min { + type uint32; + description + "Minimum of one-way jitter values in SD direction + (msec)"; + } + leaf one-way-sd-max { + type uint32; + description + "Maximum of one-way jitter values in SD direction + (msec)"; + } + leaf one-way-sd-sum { + type uint32; + description + "Sum of one-way jitter values in SD direction + (msec)"; + } + leaf one-way-sd-sum2 { + type uint64; + description + "Sum of squares of one-way jitter values in SD + direction (msec)"; + } + leaf one-way-ds-min { + type uint32; + description + "Minimum of one-way jitter values in DS direction + (msec)"; + } + leaf one-way-ds-max { + type uint32; + description + "Maximum of one-way jitter values in DS direction + (msec)"; + } + leaf one-way-ds-sum { + type uint32; + description + "Sum of one-way jitter values in DS direction + (msec)"; + } + leaf one-way-ds-sum2 { + type uint64; + description + "Sum of squares of the OneWayMinDS and + OneWayMaxDS values (msec)"; + } + } + + grouping IPSLA-ICMP-PATH-JITTER-SPEC-STATS-BAG { + description + "ICMP Path Jitter Statistics for a Hop"; + leaf source-address { + type inet:ipv4-address; + description + "IP Address of the source"; + } + leaf dest-address { + type inet:ipv4-address; + description + "IP Address of the destination"; + } + leaf hop-address { + type inet:ipv4-address; + description + "IP address of the hop in the path"; + } + leaf packet-interval { + type uint32; + description + "Interval between echos in ms"; + } + leaf response-time-count { + type uint32; + description + "Number of RTT samples used for the statistics"; + } + leaf response-time { + type uint32; + description + "RTT"; + } + leaf min-response-time { + type uint32; + description + "Minimum RTT"; + } + leaf max-response-time { + type uint32; + description + "Maximum RTT"; + } + leaf sum-response-time { + type uint32; + description + "Sum of RTT"; + } + leaf sum2-response-time { + type uint64; + description + "Sum of RTT^2"; + } + leaf packet-count { + type uint32; + description + "Number of Echo replies received "; + } + leaf packet-loss-count { + type uint32; + description + "Number of packets lost"; + } + leaf out-of-sequence-count { + type uint32; + description + "Number of out of sequence packets"; + } + leaf discarded-sample-count { + type uint32; + description + "Number of discarded samples"; + } + leaf verify-errors-count { + type uint32; + description + "Number of packets with data corruption"; + } + leaf dropped-error-count { + type uint32; + description + "Number of packets dropped"; + } + leaf jitter { + type uint32; + description + "Jitter value for this node in the path"; + } + leaf pos-jitter-sum { + type uint32; + description + "Sum of positive jitter value"; + } + leaf pos-jitter-sum2 { + type uint64; + description + "Sum of squares of positive jitter values"; + } + leaf pos-jitter-min { + type uint32; + description + "Minimum positive jitter value"; + } + leaf pos-jitter-max { + type uint32; + description + "Maximum positive jitter value"; + } + leaf pos-jitter-count { + type uint32; + description + "Number of positive jitter values"; + } + leaf neg-jitter-sum { + type uint32; + description + "Sum of negative jitter values"; + } + leaf neg-jitter-min { + type uint32; + description + "Minimum negative jitter value"; + } + leaf neg-jitter-max { + type uint32; + description + "Maximum negative jitter value"; + } + leaf neg-jitter-sum2 { + type uint64; + description + "Sum of squares of negative jitter values"; + } + leaf neg-jitter-count { + type uint32; + description + "Number of negative jitter values"; + } + } + + grouping IPSLA-UNION-STATS-BAG { + description + "IPSLA UNION STATS BAG"; + container icmp-path-jitter-stats { + when "../op-type = 'icmp-path-jitter'" { + description + "../op_type = 'ICMPPathJitter'"; + } + description + "icmp path jitter stats"; + uses IPSLA-ICMP-PATH-JITTER-SPEC-STATS-BAG; + } + container udp-jitter-stats { + when "../op-type = 'udp-jitter'" { + description + "../op_type = 'UDPJitter'"; + } + description + "udp jitter stats"; + uses IPSLA-UDP-JITTER-SPEC-STATS-BAG; + } + leaf op-type { + type Op-type-enum; + description + "op type"; + } + } + + grouping IPSLA-COMMON-STATS-BAG { + description + "IPSLA Common Stats"; + leaf operation-time { + type uint64; + description + "Operation Time"; + } + leaf return-code { + type Ipsla-ret-code; + description + "Return code"; + } + leaf response-time-count { + type uint32; + description + "Number of RTT samples used for the statistics"; + } + leaf response-time { + type uint32; + description + "RTT"; + } + leaf min-response-time { + type uint32; + description + "Minimum RTT"; + } + leaf max-response-time { + type uint32; + description + "Maximum RTT"; + } + leaf sum-response-time { + type uint32; + description + "Sum of RTT"; + } + leaf sum2-response-time { + type uint64; + description + "Sum of RTT^2"; + } + leaf update-count { + type uint32; + description + "Number of updates processed"; + } + leaf ok-count { + type uint32; + description + "Number of updates with Okay return code"; + } + leaf disconnect-count { + type uint32; + description + "Number of updates with Disconnected return code"; + } + leaf timeout-count { + type uint32; + description + "Number of updates with Timeout return code"; + } + leaf busy-count { + type uint32; + description + "Number of updates with Busy return code"; + } + leaf no-connection-count { + type uint32; + description + "Number of updates with NotConnected return code"; + } + leaf dropped-count { + type uint32; + description + "Number of updates with Dropped return code"; + } + leaf internal-error-count { + type uint32; + description + "Number of updates with InternalError return code"; + } + leaf sequence-error-count { + type uint32; + description + "Number of updates with SeqError return code"; + } + leaf verify-error-count { + type uint32; + description + "Number of updates with VerifyError return code"; + } + } + + grouping IPSLA-GLOBAL-STATS-BAG { + description + "Global Statistics Bag"; + container common-stats { + description + "Common Stats"; + uses IPSLA-COMMON-STATS-BAG; + } + container specific-stats { + description + "Operation Specific Stats"; + uses IPSLA-UNION-STATS-BAG; + } + } + + grouping IPSLA-HISTORY-BAG { + description + "IP SLA history data bag"; + container target-address { + description + "Target for the operation"; + uses IPSLA-TARGET-UNION; + } + leaf start-time { + type uint64; + description + "Sample Start Time expressed in msec since00:00 + :00 UTC, January 1, 1970"; + } + leaf response-time { + type uint32; + units "millisecond"; + description + "Round Trip Time (milliseconds)"; + } + leaf return-code { + type Ipsla-ret-code; + description + "Response Return Code"; + } + } + + grouping IPSLA-LPD-STATE-BAG { + description + "IPSLA LPD State"; + container target-address { + description + "Target for LPD"; + uses IPSLA-TARGET-UNION; + } + leaf monitor-id { + type uint32; + description + "MPLSLM monitor ID"; + } + leaf discovery-mode { + type Ipsla-mpls-lpd-discovery-mode-enum; + description + "Latest LPD mode"; + } + leaf start-time { + type uint64; + description + "Latest start time"; + } + leaf return-code { + type Ipsla-mpls-lpd-ret-code; + description + "Latest return code"; + } + leaf completion-time { + type uint32; + description + "Latest completion time"; + } + leaf path-count { + type uint32; + description + "Number of discovered paths"; + } + } + + grouping IPSLA-LPD-PATH-STATE-BAG { + description + "IPSLA LPD Path State"; + container path-id { + description + "LPD path identifier"; + uses IPSLA-LPD-PATH-ID-BAG; + } + leaf path-status { + type Ipsla-mpls-lpd-path-discovery-status; + description + "Path status"; + } + } + + grouping IPSLA-IPV4-PW { + description + "IPSLA IPv4 Pseudowire Target"; + leaf address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf virtual-circuit-id { + type uint32; + description + "Virtual circuit ID"; + } + } + + grouping IPSLA-TUNNEL-ID { + description + "IPSLA Tunnel ID Target"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + } + + grouping IPSLA-IPV4-PREFIX { + description + "IPSLA IPv4 Prefix Target"; + leaf address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf mask-length { + type uint8; + description + "Mask length"; + } + } + + grouping IPSLA-TARGET-UNION { + description + "IPSLA TARGET UNION"; + container ipv4-prefix-target { + when "../target-type = 'ipv4-prefix-target-type'" { + description + "../TargetType = 'IPv4PrefixTargetType'"; + } + description + "IPv4 prefix target"; + uses IPSLA-IPV4-PREFIX; + } + container tunnel-id-target { + when "../target-type = 'tunnel-id-target-type'" { + description + "../TargetType = 'TunnelIDTargetType'"; + } + description + "Tunnel ID target"; + uses IPSLA-TUNNEL-ID; + } + container ipv4-pseudowire-target { + when "../target-type = 'ipv4-pseudowire-target-type'" { + description + "../TargetType = 'IPv4PseudowireTargetType'"; + } + description + "IPv4 pseudowire target"; + uses IPSLA-IPV4-PW; + } + leaf target-type { + type Ipsla-target-type-enum; + description + "TargetType"; + } + leaf ipv4-address-target { + when "../target-type = 'ipv4-address-target-type'" { + description + "../TargetType = 'IPv4AddressTargetType'"; + } + type inet:ipv4-address; + description + "IPv4 address target"; + } + leaf ipv6-address-target { + when "../target-type = 'ipv6-address-target-type'" { + description + "../TargetType = 'IPv6AddressTargetType'"; + } + type Ipv6addr; + description + "IPv6 address target"; + } + } + + grouping IPSLA-LPD-STATS-BAG { + description + "IPSLA LPD Statistics"; + container target-address { + description + "LPD target"; + uses IPSLA-TARGET-UNION; + } + leaf start-time { + type uint64; + description + "LPD start time"; + } + leaf return-code { + type Ipsla-mpls-lpd-ret-code; + description + "LPD return code"; + } + leaf completion-time-count { + type uint32; + description + "Number of CompT samples"; + } + leaf completion-time { + type uint32; + description + "LPD Completion time"; + } + leaf min-completion-time { + type uint32; + description + "Minimum CompT"; + } + leaf max-completion-time { + type uint32; + description + "Maximum CompT"; + } + leaf sum-completion-time { + type uint32; + description + "Sum of CompT"; + } + leaf path-count { + type uint32; + description + "Number of paths"; + } + leaf min-path-count { + type uint32; + description + "Minimum number of paths"; + } + leaf max-path-count { + type uint32; + description + "Maximum number of paths"; + } + leaf ok-count { + type uint32; + description + "Number of successes"; + } + leaf no-path-count { + type uint32; + description + "Number of failures due to no path"; + } + leaf all-paths-broken-count { + type uint32; + description + "Number of failures due to all paths broken"; + } + leaf all-paths-unexplorable-count { + type uint32; + description + "Number of failures due to all paths unexplorable"; + } + leaf all-paths-broken-or-unexplorable-count { + type uint32; + description + "Number of failures due to all paths broken or + unexplorable"; + } + leaf timeout-count { + type uint32; + description + "Number of failures due to timeout"; + } + leaf internal-error-count { + type uint32; + description + "Number of failures due to internal error"; + } + leaf unknown-count { + type uint32; + description + "Number of failures due to unknown cause"; + } + } + + grouping IPSLA-OPER-STATE-BAG { + description + "IPSLA Operation State"; + leaf modification-time { + type uint64; + description + "Last modification time of the operation + expressed in msec since 00:00:00 UTC, January 1, + 1970"; + } + leaf start-time { + type uint64; + description + "Last start time of the operation expressedin + msec since 00:00:00 UTC, January 1, 1970"; + } + leaf attempt-count { + type uint32; + description + "Number of data collection attempts"; + } + leaf skipped-count { + type uint32; + description + "Number of data collection cycles skipped"; + } + leaf life-remaining { + type uint32; + units "second"; + description + "Number of seconds left in current life"; + } + leaf frequency { + type uint32; + description + "Number of configured frequency Default 60 "; + } + leaf recurring { + type boolean; + description + "For recurring operation configured"; + } + leaf operational-state { + type Ipsla-oper-state-enum; + description + "Operational state"; + } + leaf flags { + type uint32; + description + "Internal flags"; + } + leaf local-port { + type uint16; + description + "Cached local port"; + } + leaf unexpected-packets { + type uint32; + description + "Unexpected probe pkts punted from LPTS"; + } + leaf unexpected-control-packets { + type uint32; + description + "Unexpected control pkts puntedfrom LPTS"; + } + leaf operation-time { + type uint64; + description + "Start time of current instance of the operation"; + } + } + + grouping IPSLA-DISCOVERY-PREFIX-BAG { + description + "IPSLA MPLS PE Discovery Prefix"; + leaf target-address { + type inet:ipv4-address; + description + "PE target address"; + } + leaf target-mask { + type uint32; + description + "PE target mask length"; + } + } + + grouping IPSLA-DISCOVERY-VRF-BAG { + description + "IPSLA MPLS PE Discovery VRF"; + leaf prefix-count { + type uint32; + description + "Number of prefixes in VRF"; + } + } + + grouping IPSLA-DISCOVERY-STATE-BAG { + description + "IPSLA MPLS PE Discovery State"; + leaf refresh-remaining { + type uint32; + units "second"; + description + "Number of seconds left before next refresh"; + } + } + + grouping IPSLA-MPLSLM-SCAN-QUEUE-BAG { + description + "IPSLA MPLSLM Scan Queue Entry"; + leaf target-address { + type inet:ipv4-address; + description + "PE target address"; + } + leaf target-mask { + type uint32; + description + "PE target mask length"; + } + leaf entry { + type Ipsla-mpls-add-delete-enum; + description + "PE addition or deletion"; + } + } + + grouping IPSLA-LPD-PATH-ID-BAG { + description + "IPSLA LPD Path Identifier"; + leaf lsp-selector { + type inet:ipv4-address; + description + "LSP selector"; + } + leaf output-interface { + type xr:Interface-name; + description + "Output interface"; + } + leaf nexthop-address { + type inet:ipv4-address; + description + "Nexthop address"; + } + leaf-list downstream-label { + type uint32; + max-elements "10"; + description + "Downstream label stacks"; + } + } + + grouping IPSLA-MPLSLM-OP-PATH-STATE-BAG { + description + "IPSLA MPLSLM Operation Path State"; + container path-id { + description + "LPD path identifier"; + uses IPSLA-LPD-PATH-ID-BAG; + } + leaf path-status { + type Ipsla-lsp-grp-path-status-enum; + description + "Latest path status"; + } + leaf operation-time { + type uint64; + description + "Latest operation time"; + } + leaf response-time { + type uint32; + description + "Latest RTT"; + } + leaf success-count { + type uint32; + description + "Number of path successes"; + } + leaf failure-count { + type uint32; + description + "Number of path failures"; + } + } + + grouping IPSLA-MPLSLM-OP-STATE-BAG { + description + "IPSLA MPLSLM Operation State"; + leaf target-address { + type inet:ipv4-address; + description + "PE target address"; + } + leaf target-mask { + type uint32; + description + "PE target mask length"; + } + leaf group-status { + type Ipsla-lsp-grp-status-enum; + description + "Latest LSP group status"; + } + leaf operation-time { + type uint64; + description + "Latest operation time"; + } + } + + grouping IPSLA-MPLSLM-STATE-BAG { + description + "IPSLA MPLSLM State"; + leaf scan-remaining { + type uint32; + units "second"; + description + "Number of seconds left before next scan for + addition (0xffffffff means the timer is not + running)"; + } + leaf delete-scan-remaining { + type uint32; + units "second"; + description + "Number of seconds left before next scan for + deletion (0xffffffff means the timer is not + running)"; + } + leaf rediscovery-remaining { + type uint32; + units "second"; + description + "Number of seconds left before next path + discovery (0xffffffff means the timer is not + running)"; + } + leaf lpd-compeletion-time { + type uint32; + units "second"; + description + "LPD completion time (seconds) for the entire set + of PEs which are discovered in this MPLSLM + instance (0xffffffff means LPD is never + completed yet)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub3.yang new file mode 100644 index 000000000..48f5f9994 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper-sub3.yang @@ -0,0 +1,137 @@ +submodule Cisco-IOS-XR-man-ipsla-oper-sub3 { + belongs-to Cisco-IOS-XR-man-ipsla-oper { + prefix Cisco-IOS-XR-man-ipsla-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR man-ipsla package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping IPSLA-RESP-SENDER-BAG { + description + "IPSLA sender id"; + leaf ip-address { + type inet:ipv4-address; + description + "IP address of Sender"; + } + leaf port { + type uint16; + description + "Port on which Sender is sending"; + } + leaf last-recv-time { + type uint64; + description + "Last received time"; + } + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 address of Sender"; + } + } + + grouping IPSLA-RESP-PORT-INFO-BAG { + description + "IPSLA Responder active ports information"; + leaf port-xr { + type uint16; + description + "Port on which Responder is listening"; + } + leaf local-address { + type inet:ipv4-address; + description + "IP address of Responder"; + } + leaf num-probes { + type uint32; + description + "Number of probes received from remote end"; + } + leaf ctrl-probes { + type uint32; + description + "Number of control probes received from remote + end"; + } + leaf permanent { + type boolean; + description + "Port type if this is permanent or dynamic port"; + } + leaf discard-on { + type boolean; + description + "Current discard socket option flag for the port"; + } + leaf pd-time-stamp-failed { + type boolean; + description + "PD Timestamp failure"; + } + leaf is-ipsla { + type boolean; + description + "IPSLA or TWAMP protocol"; + } + leaf drop-counter { + type uint32; + description + "Drop counter for the Responder port"; + } + leaf socket { + type int32; + description + "Socket"; + } + leaf local-ipv6-address { + type inet:ipv6-address; + description + "IPv6 address of Responder"; + } + leaf family { + type int32; + description + "Represent if v4 or v6"; + } + list sender { + description + "List of senders"; + uses IPSLA-RESP-SENDER-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper.yang new file mode 100644 index 000000000..2c55345bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-ipsla-oper.yang @@ -0,0 +1,685 @@ +module Cisco-IOS-XR-man-ipsla-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-ipsla-oper"; + prefix man-ipsla-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-man-ipsla-oper-sub3 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-man-ipsla-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-man-ipsla-oper-sub1 { + revision-date 2019-04-05; + } + + 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 man-ipsla package operational data. + + This module contains definitions + for the following management objects: + ipsla: IPSLA operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipsla-hour-index { + type uint32; + description + "Ipsla hour index"; + } + + typedef Ipsla-operation-id { + type uint32; + description + "Ipsla operation id"; + } + + typedef Ipsla-distribution-index { + type uint32; + description + "Ipsla distribution index"; + } + + typedef Ipsla-bucket-index { + type uint32; + description + "Ipsla bucket index"; + } + + typedef Ipsla-lsp-monitor-id { + type uint32; + description + "Ipsla lsp monitor id"; + } + + typedef Ipsla-lpd-path-index { + type uint32; + description + "Ipsla lpd path index"; + } + + typedef Ipsla-hop-index { + type uint32; + description + "Ipsla hop index"; + } + + typedef Ipsla-life-index { + type uint32; + description + "Ipsla life index"; + } + + typedef Ipsla-path-index { + type uint32; + description + "Ipsla path index"; + } + + typedef Ipsla-sample-index { + type uint32; + description + "Ipsla sample index"; + } + + typedef Ipsla-enhanced-interval { + type uint32; + description + "Ipsla enhanced interval"; + } + + grouping DISTRIBUTION-INTERVAL-TABLE { + description + "Common node of target, hop"; + container distribution-intervals { + description + "Table of distribution intervals for a particular + hop"; + list distribution-interval { + key "distribution-index"; + description + "1-hour aggregated statistics for a hop in a + path-enabled operation"; + leaf distribution-index { + type Ipsla-distribution-index; + description + "Distribution Interval"; + } + uses IPSLA-GLOBAL-STATS-BAG; + } + } + } + + container ipsla { + config false; + description + "IPSLA operational data"; + container mpls-data { + description + "MPLS operational data"; + container lsp-monitors { + description + "List of MPLS LSP Monitor instances"; + list lsp-monitor { + key "monitor-id"; + description + "Operational data for MPLS LSP Monitor"; + container state { + description + "Operational state of MPLS LSP Monitor"; + uses IPSLA-MPLSLM-STATE-BAG; + } + container operations { + description + "List of operations in MPLS LSP Monitor"; + list operation { + key "operation-id"; + description + "Operation created in MPLS LSP Monitor"; + container state { + description + "Operational state of the created operation"; + uses IPSLA-MPLSLM-OP-STATE-BAG; + } + container lpd-paths { + description + "List of LPD paths in MPLS LPD group + operation"; + list lpd-path { + key "path-index"; + description + "Operational state of LPD path in MPLS LSP + Group operation"; + leaf path-index { + type Ipsla-lpd-path-index; + description + "LPD path index"; + } + uses IPSLA-MPLSLM-OP-PATH-STATE-BAG; + } + } + leaf operation-id { + type Ipsla-operation-id; + description + "Operation ID"; + } + } + } + container scan-queues { + description + "List of Scan Queue entries in MPLS LSP + Monitor"; + list scan-queue { + key "address"; + description + "Provider Edge(PE) addition or deletion + requests in Scan Queue"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Nexthop Address"; + } + uses IPSLA-MPLSLM-SCAN-QUEUE-BAG; + } + } + leaf monitor-id { + type Ipsla-lsp-monitor-id; + description + "Monitor ID"; + } + } + } + container discovery { + description + "Provider Edge(PE) discovery operational data"; + container vpn { + description + "L3 VPN PE discovery operational data"; + container state { + description + "Operational state of PE discovery"; + uses IPSLA-DISCOVERY-STATE-BAG; + } + container nexthops { + description + "List of nexthop addresses for remote PE + routers"; + list nexthop { + key "address"; + description + "Nexthop address for remote PE router"; + container vrfs { + description + "List of VRFs for the nexthop address"; + list vrf { + key "vrf-name"; + description + "VRF information of the nexthop address"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + uses IPSLA-DISCOVERY-VRF-BAG; + } + } + container prefix { + description + "Prefix of the nexthop address"; + uses IPSLA-DISCOVERY-PREFIX-BAG; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Nexthop Address"; + } + } + } + } + } + } + container responder { + description + "Data from responder probe handling"; + container ports { + description + "Statistics maintained by responder"; + list port { + key "port"; + description + "Port data"; + leaf port { + type inet:port-number; + description + "Port"; + } + uses IPSLA-RESP-PORT-INFO-BAG; + } + } + } + container operation-data { + description + "Operations data"; + container operations { + description + "Configured operations"; + list operation { + key "operation-id"; + description + "Operational data for an operation"; + container common { + description + "Common data for all operation types"; + container operational-state { + description + "Operational state for an operation"; + uses IPSLA-OPER-STATE-BAG; + } + } + container lpd { + description + "LPD operational data of MPLS LSP group + operation"; + container statistics { + description + "Statistics collected for LPD group"; + container latest { + description + "LPD statistics collected during the last + sampling cycle"; + container target { + description + "Latest statistics of LPD group"; + uses IPSLA-LPD-STATS-BAG; + } + } + container aggregated { + description + "Statistics aggregated for LPD group + collected over time intervals"; + container hours { + description + "Table of LPD statistics aggregated over + 1-hour intervals"; + list hour { + key "hour-index"; + description + "LPD statistics aggregated for a 1-hour + interval"; + leaf hour-index { + type Ipsla-hour-index; + description + "Hour Index"; + } + uses IPSLA-LPD-STATS-BAG; + } + } + } + } + container status { + description + "Operational status of LPD group"; + container lpd-paths { + description + "Operational path state in LPD group"; + list lpd-path { + key "path-index"; + description + "Current operational path state in LPD + group"; + leaf path-index { + type Ipsla-lpd-path-index; + description + "LPD path index"; + } + uses IPSLA-LPD-PATH-STATE-BAG; + } + } + container state { + description + "Operational status of LPD group"; + uses IPSLA-LPD-STATE-BAG; + } + } + } + container history { + description + "Historical data for an operation"; + container path { + description + "Historical data with multiple hops along the + path"; + container lifes { + description + "Tables of lives for an operation"; + list life { + key "life-index"; + description + "History data for a particular life of the + operation"; + container buckets { + description + "Table of history buckets (samples) for a + particular operation"; + list bucket { + key "bucket-index"; + description + "History bucket for an operation"; + container samples { + description + "Table of samples for a particular cycle"; + list sample { + key "sample-index"; + description + "Data sample for particular cycle"; + leaf sample-index { + type Ipsla-sample-index; + description + "Sample Index"; + } + uses IPSLA-HISTORY-BAG; + } + } + leaf bucket-index { + type Ipsla-bucket-index; + description + "Bucket Index"; + } + } + } + leaf life-index { + type Ipsla-life-index; + description + "Life Index"; + } + } + } + } + container target { + description + "Historical data for the destination node"; + container lifes { + description + "Tables of lives for an operation"; + list life { + key "life-index"; + description + "Operational data for a particular life of + the operation"; + container buckets { + description + "Table of history buckets (samples) for a + particular operation"; + list bucket { + key "bucket-index"; + description + "History bucket for an operation"; + leaf bucket-index { + type Ipsla-bucket-index; + description + "Bucket Index"; + } + uses IPSLA-HISTORY-BAG; + } + } + leaf life-index { + type Ipsla-life-index; + description + "Life Index"; + } + } + } + } + } + container statistics { + description + "Statistics collected for an operation"; + container latest { + description + "Statistics collected during the last + sampling cycle of the operation"; + container target { + description + "Latest statistics for the target node"; + uses IPSLA-GLOBAL-STATS-BAG; + } + container hops { + description + "Latest statistics for hops in a + path-enabled operation"; + list hop { + key "hop-index"; + description + "Latest stats for a hop in a path-enabled + operation"; + leaf hop-index { + type Ipsla-hop-index; + description + "Hop Index"; + } + uses IPSLA-GLOBAL-STATS-BAG; + } + } + container lpd-paths { + description + "List of latest LPD paths"; + list lpd-path { + key "path-index"; + description + "Latest path statistics of MPLS LSP group + operation"; + leaf path-index { + type Ipsla-lpd-path-index; + description + "LPD path index"; + } + uses IPSLA-LPD-PATH-STATS-BAG; + } + } + } + container aggregated { + description + "Statistics aggregated for data collected + over time intervals"; + container enhanced-intervals { + description + "Table of statistics aggregated over + enhanced intervals"; + list enhanced-interval { + key "enhanced-interval"; + description + "Statistics aggregated over an interval + specified in seconds. Specified interval + must be a multiple of the operation + frequency"; + container start-times { + description + "Table of start times for the intervals"; + list start-time { + key "interval-start-time"; + description + "Statistics aggregated over an enhanced + interval which starts at a specific time"; + leaf interval-start-time { + type xr:Cisco-ios-xr-string; + description + "Interval Start Time"; + } + uses IPSLA-GLOBAL-STATS-BAG; + } + } + leaf enhanced-interval { + type Ipsla-enhanced-interval; + units "second"; + description + "Enhanced Interval in seconds"; + } + } + } + container hours { + description + "Table of statistics aggregated over 1-hour + intervals"; + list hour { + key "hour-index"; + description + "Statistics aggregated for a 1-hour + interval"; + container distributed { + description + "Statistics aggregated on distribution + value intervals for in 1-hour intervals"; + container paths { + description + "Table of paths identified in the 1-hour + interval"; + list path { + key "path-index"; + description + "Paths identified in a 1-hour interval"; + container hops { + description + "Table of hops for a particular path"; + list hop { + key "hop-index"; + description + "1-hour aggregated statistics for a + hop in a path-enabled operation"; + leaf hop-index { + type Ipsla-hop-index; + description + "Hop Index"; + } + uses DISTRIBUTION-INTERVAL-TABLE; + } + } + leaf path-index { + type Ipsla-path-index; + description + "Path Index"; + } + } + } + container target { + description + "Distribution statistics for the target + node"; + uses DISTRIBUTION-INTERVAL-TABLE; + } + } + container non-distributed { + description + "Statistics aggregated for the total range + of values in 1-hour intervals"; + container target { + description + "Total 1-hour aggregated statistics for + the target node"; + uses IPSLA-GLOBAL-STATS-BAG; + } + container paths { + description + "Table of paths identified in the 1-hour + interval"; + list path { + key "path-index"; + description + "Paths identified in a 1-hour interval"; + container hops { + description + "Table of hops for a particular path"; + list hop { + key "hop-index"; + description + "Total 1-hour aggregated statistics + for a hop in a path-enabled operation"; + leaf hop-index { + type Ipsla-hop-index; + description + "Hop Index"; + } + uses IPSLA-GLOBAL-STATS-BAG; + } + } + leaf path-index { + type Ipsla-path-index; + description + "Path Index"; + } + } + } + container lpd-paths { + description + "List of latest LPD paths"; + list lpd-path { + key "path-index"; + description + "Latest path statistics of MPLS LSP + group operation"; + leaf path-index { + type Ipsla-lpd-path-index; + description + "LPD path index"; + } + uses IPSLA-LPD-PATH-STATS-BAG; + } + } + } + leaf hour-index { + type Ipsla-hour-index; + description + "Hour Index"; + } + } + } + } + } + leaf operation-id { + type Ipsla-operation-id; + description + "Operation ID"; + } + } + } + } + container application-info { + description + "IPSLA application information"; + uses IPSLA-APPLICATION-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-cfg.yang new file mode 100644 index 000000000..9dfd1864e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-cfg.yang @@ -0,0 +1,149 @@ +module Cisco-IOS-XR-man-netconf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-netconf-cfg"; + prefix man-netconf-cfg; + + 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 man-netconf package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-netconf-yang-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + netconf-yang: NETCONF YANG configuration commands + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-22 { + description + "Added submod-enter at netconf-yang agent level"; + semver:module-version "1.2.0"; + } + revision 2019-12-12 { + description + "Added new container defaults to enable with-defaults support."; + semver:module-version "1.1.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-05-04 { + description + "Provison to disable openconfig."; + } + revision 2016-03-15 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container netconf-yang { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-netconf-yang-cfg.yang which will + provide the compatible functionalities. NETCONF + YANG configuration commands"; + container agent { + presence "CLI submode compatibility."; + description + "NETCONF YANG agent configuration commands"; + container models { + description + "Models to be disabled"; + container openconfig { + description + "Type of models: openconfig"; + leaf disabled { + type empty; + description + "Disable the specified model type"; + } + } + } + container defaults { + description + "Support netconf with-defaults"; + leaf enable { + type empty; + description + "Enable netconf with-defaults support"; + } + } + container ssh { + description + "NETCONF YANG agent over SSH connection"; + leaf enable { + type empty; + description + "Enable NETCONF YANG agent over SSH connection"; + } + } + container session { + description + "Session settings"; + leaf limit { + type uint32 { + range "1..50"; + } + default "50"; + description + "Count of allowable concurrent netconf-yang + sessions"; + } + leaf absolute-timeout { + type uint32 { + range "1..1440"; + } + units "minute"; + description + "Absolute timeout in minutes"; + } + leaf idle-timeout { + type uint32 { + range "1..1440"; + } + units "minute"; + description + "Non-active session lifetime"; + } + } + leaf rate-limit { + type uint32 { + range "4096..4294967295"; + } + units "byte"; + description + "Number of bytes to process per sec"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper-sub1.yang new file mode 100644 index 000000000..be9fa3351 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper-sub1.yang @@ -0,0 +1,238 @@ +submodule Cisco-IOS-XR-man-netconf-oper-sub1 { + belongs-to Cisco-IOS-XR-man-netconf-oper { + prefix Cisco-IOS-XR-man-netconf-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR man-netconf package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NC-STATUS-B { + description + "Netconf status bag"; + leaf yfw-state { + type string; + description + "YFW State"; + } + } + + grouping NC-SESSION-STATS-B { + description + "Netconf session statistics bag"; + list entry { + max-elements "20"; + description + "Per-type statistics"; + uses NC-STATS-B; + } + } + + grouping NC-STATS-B { + description + "Netconf statistics bag"; + leaf type { + type string; + description + "Type name"; + } + leaf request { + type uint32; + description + "Total operations count"; + } + leaf total-time { + type uint64; + units "millisecond"; + description + "Total time for operation in milliseconds since + the system started"; + } + leaf min-time-per-request { + type uint32; + units "millisecond"; + description + "Lowest time for operation in milliseconds since + the system started"; + } + leaf max-time-per-request { + type uint32; + units "millisecond"; + description + "Highest time for operation in milliseconds since + the system started"; + } + leaf avg-time-per-request { + type uint32; + units "millisecond"; + description + "Average time for operation in milliseconds since + the system started"; + } + } + + grouping NC-SUMMARY-STATS-B { + description + "Netconf summary statistics bag"; + list entry { + max-elements "20"; + description + "Per-type statistics"; + uses NC-STATS-B; + } + } + + grouping NC-NTFS-STATS-B { + description + "Netconf notification subscription statistics bag"; + leaf subscribed-stream { + type string; + description + "Stream name"; + } + leaf replay-received { + type uint32; + description + "Number of notifications received during replay"; + } + leaf non-replay-received { + type uint64; + description + "Number of non-replay notifications received"; + } + leaf subscription-state { + type string; + description + "Subscription state"; + } + leaf replay-start-time { + type uint64; + description + "Replay startTime in epoch time"; + } + leaf replay-stop-time { + type uint64; + description + "Replay stopTime in epoch time"; + } + leaf subscription-created { + type uint64; + description + "Time of subscription creation in epoch time"; + } + leaf replay-complete-time { + type uint64; + description + "Time of replayComplete notification arrival"; + } + } + + grouping NC-CAPABILITY-B { + description + "Netconf capability bag"; + leaf namespace { + type string; + description + "Namespace"; + } + leaf module { + type string; + description + "Module"; + } + leaf revision { + type string; + description + "Revision"; + } + leaf deviation { + type string; + description + "Deviation"; + } + } + + grouping NC-CAPABILITIES-B { + description + "Netconf capabilities bag"; + list capability { + description + "Capability list"; + uses NC-CAPABILITY-B; + } + } + + grouping NC-RATELIMIT-STATS-B { + description + "Netconf rate-limit statistics bag"; + leaf total-data-dropped { + type uint64; + units "byte"; + description + "Total Bytes dropped"; + } + } + + grouping NC-SESSION-B { + description + "Netconf client session bag"; + leaf version { + type string; + description + "Netconf version"; + } + leaf connect-time { + type uint64; + units "millisecond"; + description + "How long has a client been connected in + milliseconds since the system started"; + } + leaf last-op-time { + type uint64; + units "second"; + description + "Last operation time in seconds since the system + started"; + } + leaf last-op-type { + type string; + description + "Last operation type"; + } + leaf locked { + type string; + description + "Session locked"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper.yang new file mode 100644 index 000000000..22095b96c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-netconf-oper.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-man-netconf-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-netconf-oper"; + prefix man-netconf-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-man-netconf-oper-sub1 { + revision-date 2019-04-05; + } + + 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 man-netconf package operational data. + + This module contains definitions + for the following management objects: + netconf-yang: Netconf-yang Operation Model + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container netconf-yang { + config false; + description + "Netconf-yang Operation Model"; + container clients { + description + "List of Active Sessions Information"; + list client { + key "session-id"; + description + "Active Session Information"; + leaf session-id { + type xr:Cisco-ios-xr-string; + description + "Session ID"; + } + uses NC-SESSION-B; + } + } + container rate-limit { + description + "Rate-limit Statistics"; + uses NC-RATELIMIT-STATS-B; + } + container capabilities { + description + "List of Capabilities"; + uses NC-CAPABILITIES-B; + } + container notification-subscriptions { + description + "Notification Subscriptions"; + container subscriptions { + description + "List of Notification Subscriptions Statistics"; + list subscription { + key "session-id"; + description + "Subscription Statistics"; + leaf session-id { + type xr:Cisco-ios-xr-string; + description + "Session ID"; + } + uses NC-NTFS-STATS-B; + } + } + } + container statistics { + description + "Summary and Sessions Statistics"; + container summary { + description + "Summary Statistics"; + uses NC-SUMMARY-STATS-B; + } + container sessions { + description + "List of Sessions Statistics"; + list session { + key "session-id"; + description + "Session Statistics"; + leaf session-id { + type xr:Cisco-ios-xr-string; + description + "Session ID"; + } + uses NC-SESSION-STATS-B; + } + } + } + container status { + description + "Netconf Agent Status"; + uses NC-STATUS-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-restconf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-restconf-cfg.yang new file mode 100644 index 000000000..5fe37369f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-restconf-cfg.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-man-restconf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-restconf-cfg"; + prefix man-restconf-cfg; + + 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 man-restconf package configuration. + + This module contains definitions + for the following management objects: + restconf: RESTCONF configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-12-01 { + description + "Range value restrictions adjusted for open-request-limit and per-user-request-limit leafs."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container restconf { + description + "RESTCONF configuration commands"; + container agent { + description + "RESTCONF agent configuration commands"; + leaf open-request-limit { + type uint32 { + range "1..256"; + } + description + "Count of allowable concurrent restconf requests"; + } + leaf enable { + type empty; + description + "Enable RESTCONF agent"; + } + leaf per-user-request-limit { + type uint32 { + range "1..256"; + } + description + "Count of allowable concurrent restconf requests + per user"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations.yang new file mode 100644 index 000000000..ca6d64656 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations.yang @@ -0,0 +1,54 @@ +module Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-xml-ttyagent-cfg-deviations.yang"; + prefix cisco-ios-ttyagent-cfg-dev; + + import Cisco-IOS-XR-man-xml-ttyagent-cfg { + prefix mxt-dev; + } + + 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 set of deviations of leaf memory range data + model set for Cisco IOS-XR. + + Copyright (c) 2016, 2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-13 { + description + "Initial revision applicable to IOS-XR 6.1.2 and older releases"; + } + + deviation "/mxt-dev:xr-xml/mxt-dev:agent/mxt-dev:default/mxt-dev:throttle/mxt-dev:memory" { + deviate replace { + type uint32 { + range "100..1024"; + } + } + } + deviation "/mxt-dev:xr-xml/mxt-dev:agent/mxt-dev:tty/mxt-dev:throttle/mxt-dev:memory" { + deviate replace { + type uint32 { + range "100..1024"; + } + } + } + deviation "/mxt-dev:xr-xml/mxt-dev:agent/mxt-dev:ssl/mxt-dev:throttle/mxt-dev:memory" { + deviate replace { + type uint32 { + range "100..1024"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg.yang new file mode 100644 index 000000000..5c0db62bc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-cfg.yang @@ -0,0 +1,287 @@ +module Cisco-IOS-XR-man-xml-ttyagent-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-xml-ttyagent-cfg"; + prefix man-xml-ttyagent-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 man-xml-ttyagent package configuration. + + This module contains definitions + for the following management objects: + xr-xml: XML + netconf: NETCONF + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping SESSION { + description + "Common node of default, ssl, tty"; + container session { + description + "Session attributes"; + leaf timeout { + type uint32 { + range "1..1440"; + } + units "minute"; + description + "Timeout in minutes"; + } + } + } + + grouping VRF-TABLE { + description + "Common node of default, ssl"; + container vrfs { + description + "List of VRFs"; + list vrf { + key "vrf-name"; + description + "A specific VRF"; + leaf ipv6-access-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "IPv6 Transport Access list for VRF"; + } + leaf ipv4-access-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "IPv4 Transport Access list for VRF"; + } + leaf access-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Access list for XML agent"; + } + leaf shutdown { + type empty; + description + "Shutdown default VRF. This is applicable only + for VRF default."; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + } + + grouping ITERATION-SIZE { + description + "Common node of default, ssl, tty"; + leaf iteration-size { + type uint32 { + range "0..100000"; + } + units "kilobyte"; + default "48"; + description + "Iterator size, in KBytes, of the XML response. + Specify 0 to turn off the XML response iterator."; + } + } + + grouping STREAMING-SIZE { + description + "Common node of default, ssl, tty"; + leaf streaming-size { + type uint32 { + range "1..100000"; + } + units "kilobyte"; + description + "Streaming size, in KBytes, of the XML response."; + } + } + + grouping THROTTLE { + description + "Common node of default, ssl, tty"; + container throttle { + description + "XML agent throttling"; + leaf process-rate { + type uint32 { + range "1000..30000"; + } + description + "Process rate in number of XML tags per second"; + } + leaf memory { + type uint32 { + range "100..1024"; + } + units "megabyte"; + default "300"; + description + "Size of memory usage, in MBytes, per session."; + } + } + } + + grouping ENABLE { + description + "Common node of default, ssl, tty"; + leaf enable { + type empty; + description + "Enable specified XML agent"; + } + } + + container xr-xml { + description + "XML"; + container agent { + description + "XML agent"; + container default { + description + "XML default dedicated agent"; + leaf ipv6-enable { + type boolean; + description + "IPv6 Transport State"; + } + leaf ipv4-disable { + type boolean; + description + "TRUE to disable IPV4"; + } + uses SESSION; + uses ITERATION-SIZE; + uses THROTTLE; + uses ENABLE; + uses STREAMING-SIZE; + uses VRF-TABLE; + } + container tty { + description + "XML TTY agent"; + uses SESSION; + uses ITERATION-SIZE; + uses THROTTLE; + uses ENABLE; + uses STREAMING-SIZE; + } + container ssl { + description + "XML SSL agent"; + uses SESSION; + uses ITERATION-SIZE; + uses THROTTLE; + uses ENABLE; + uses STREAMING-SIZE; + uses VRF-TABLE; + } + } + } + container netconf { + description + "NETCONF"; + container agent { + description + "XML agent"; + container tty { + description + "NETCONF agent over TTY"; + container throttle { + description + "NETCONF agent throttling"; + leaf memory { + type uint32 { + range "100..1024"; + } + units "megabyte"; + default "300"; + description + "Size of memory usage, in MBytes, per session."; + } + leaf offload-memory { + type uint32 { + range "0..12000"; + } + units "megabyte"; + default "0"; + description + "Size of memory usage, in MBytes, per session."; + } + leaf process-rate { + type uint32 { + range "1000..30000"; + } + description + "Process rate in number of XML tags per second"; + } + } + container session { + description + "Session attributes"; + leaf timeout { + type uint32 { + range "1..1440"; + } + units "minute"; + description + "Timeout in minutes"; + } + } + leaf enable { + type empty; + description + "Enable specified NETCONF agent"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper-sub1.yang new file mode 100644 index 000000000..a6e5e16ea --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper-sub1.yang @@ -0,0 +1,151 @@ +submodule Cisco-IOS-XR-man-xml-ttyagent-oper-sub1 { + belongs-to Cisco-IOS-XR-man-xml-ttyagent-oper { + prefix Cisco-IOS-XR-man-xml-ttyagent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR man-xml-ttyagent package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-12-13 { + description + "Fixing Yang Usability Issues."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Xr-xml-session-alarm-register { + type enumeration { + enum "registered" { + value 1; + description + "Registered"; + } + enum "not-registered" { + value 2; + description + "NotRegistered"; + } + } + description + "AlarmNotify"; + } + + typedef Xr-xml-session-state { + type enumeration { + enum "idle" { + value 1; + description + "Idle"; + } + enum "busy" { + value 2; + description + "Busy"; + } + } + description + "SessionState"; + } + + grouping XR-XML-SESSION-INFO { + description + "XML SESSION INFO"; + leaf username { + type string; + description + "Username"; + } + leaf state { + type Xr-xml-session-state; + description + "state of the session idle/busy"; + } + leaf client-address { + type string; + description + "ip address of the client"; + } + leaf client-port { + type uint32; + description + "client's port"; + } + leaf config-session-id { + type string; + description + "Config session ID"; + } + leaf admin-config-session-id { + type string; + description + "Admin config session ID"; + } + leaf alarm-notification { + type Xr-xml-session-alarm-register; + description + "is the session registered for alarm + notifications"; + } + leaf vrf-name { + type string; + description + "VRF name "; + } + leaf start-time { + type uint32; + units "second"; + description + "session start time in seconds since the Unix + Epoch"; + } + leaf elapsed-time { + type uint32; + units "second"; + description + " Elapsed time(seconds) since a session is + created"; + } + leaf last-state-change { + type uint32; + units "second"; + description + "Time(seconds) since last session state change + happened "; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper.yang new file mode 100644 index 000000000..15ff6a675 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-man-xml-ttyagent-oper.yang @@ -0,0 +1,134 @@ +module Cisco-IOS-XR-man-xml-ttyagent-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-man-xml-ttyagent-oper"; + prefix man-xml-ttyagent-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-man-xml-ttyagent-oper-sub1 { + revision-date 2019-04-05; + } + + 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 man-xml-ttyagent package operational data. + + This module contains definitions + for the following management objects: + netconf: NETCONF operational information + xr-xml: xml sessions information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-12-13 { + description + "Fixing Yang Usability Issues."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping SESSION-TABLE { + description + "Common node of default, tty, ssl"; + container sessions { + description + "sessions information"; + list session { + key "session-id"; + description + "xml sessions information"; + leaf session-id { + type uint32 { + range "1..4294967294"; + } + description + "Session Id"; + } + uses XR-XML-SESSION-INFO; + } + } + } + + container netconf { + config false; + description + "NETCONF operational information"; + container agent { + description + "NETCONF agent operational information"; + container tty { + description + "NETCONF agent over TTY"; + container sessions { + description + "Session information"; + list session { + key "session-id"; + description + "Session information"; + leaf session-id { + type uint32 { + range "1..4294967294"; + } + description + "Session ID"; + } + uses XR-XML-SESSION-INFO; + } + } + } + } + } + container xr-xml { + config false; + description + "xml sessions information"; + container agent { + description + "XML agents"; + container tty { + description + "TTY sessions information"; + uses SESSION-TABLE; + } + container default { + description + "Default sessions information"; + uses SESSION-TABLE; + } + container ssl { + description + "SSL sessions information"; + uses SESSION-TABLE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-cfg.yang new file mode 100644 index 000000000..762d95237 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-cfg.yang @@ -0,0 +1,466 @@ +module Cisco-IOS-XR-manageability-object-tracking-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-manageability-object-tracking-cfg"; + prefix manageability-object-tracking-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-manageability-object-tracking-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 manageability-object-tracking package configuration. + + This module contains definitions + for the following management objects: + object-trackings: Object Tracking configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-15 { + description + "Added Support for track type Boolean Expression."; + semver:module-version "2.1.0"; + } + revision 2020-03-26 { + description + "Changed type-route container and leaf nodes under it to accommodate ipv6 route tracks."; + semver:module-version "2.0.0"; + } + revision 2019-09-07 { + description + "Added support for track ipv6 route."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OBJECT { + description + "Common node of threshold-weight-object, + threshold-percentage-object"; + list object { + key "object"; + description + "Track name object"; + leaf object-weight { + type uint32; + default "1"; + description + "Weight of object"; + } + leaf object { + type dt1:Object-tracking-name-string; + description + "Object name"; + } + } + } + + grouping THRESHOLD-LIMITS { + description + "Common node of threshold-weight, + threshold-percentage"; + container threshold-limits { + description + "Threshold Limits"; + leaf up { + type uint32; + description + "Up threshold value"; + } + leaf down { + type uint32; + default "0"; + description + "Down threshold value"; + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf track-name { + type dt1:Object-tracking-name-string; + description + "Track Name"; + } + } + container object-trackings { + description + "Object Tracking configuration"; + list object-tracking { + key "track-name"; + description + "Track name - maximum 32 characters"; + container action { + description + "Actions associated with track state changes"; + container action-err-dis { + description + "The list of all track actions"; + list action-err-di { + key "track-state-type interface-name"; + description + "Error disable track action"; + leaf track-state-type { + type uint32 { + range "0..1"; + } + description + "Track State Type"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface to be error-disabled"; + } + } + } + leaf actions-enable { + type empty; + description + "Enable track actions"; + } + } + container type-bfd-rtr { + description + "Track type BFD RTR (BFD Response Time Reporter)"; + container bfd-rtr { + presence "Indicates a bfd-rtr node is configured."; + description + "BFD session related parameters"; + leaf rate { + type uint32 { + range "1..5000"; + } + mandatory true; + description + "Tx interval in ms"; + } + leaf debounce-count { + type uint32 { + range "1..10"; + } + mandatory true; + description + "Debounce Count"; + } + leaf interface-name { + type xr:Interface-name; + mandatory true; + description + "Interface to be used for BFD session"; + } + leaf dest-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Destination IP Address to track via BFD"; + } + } + } + container type-bool-exp { + description + "Track type Boolean Expression"; + leaf expression { + type string; + description + "Boolean Expression String"; + } + } + container type-bgp-neighbor-address-family-instances { + description + "Track type BGP Neighbor Address Family"; + list type-bgp-neighbor-address-family-instance { + key "instance-name"; + description + "BGP Instance for BGP Neighbor Address Family + Track"; + container address-families { + description + "Track type BGP Neighbor Address Family"; + list address-family { + key "af-name"; + description + "Address Family specific configuration"; + container neighbor { + presence "Indicates a neighbor node is configured."; + description + "A particular BGP neighbor"; + leaf neighbor-address { + type inet:ip-address-no-zone; + mandatory true; + description + "Neighbor address"; + } + leaf vrf-name { + type string; + description + "Neighbor VRF"; + } + leaf disable-fib-check { + type boolean; + description + "TRUE if FIB checking of neighbor + reachability needs to be done, FALSE + otherwise"; + } + } + leaf address-family-enable { + type empty; + description + "Enable Address Family for BGP Neighbor"; + } + leaf af-name { + type dt1:Object-tracking-address-family; + description + "Address family"; + } + } + } + leaf type-bgp-neighbor-address-family-instance-enable { + type empty; + description + "Enable track type BGP Neighbor AF"; + } + leaf instance-name { + type dt1:Object-tracking-name-string; + description + "BGP Instance"; + } + } + } + container type-interface { + description + "Track type line-protocol"; + leaf interface { + type xr:Interface-name; + description + "The name of the interface"; + } + } + container type-rtr { + description + "Track type RTR (Response Time Reporter - IPSLA)"; + leaf rtr { + type uint32 { + range "1..2048"; + } + description + "IPSLA Operation ID"; + } + } + container type-list { + description + "Track type boolean list"; + container threshold-weight { + description + "Track type threshold weight"; + uses THRESHOLD-LIMITS; + } + container threshold-percentage-object { + description + "Track type threshold percentage"; + uses OBJECT; + } + container threshold-percentage { + description + "Track type threshold percentage"; + uses THRESHOLD-LIMITS; + } + container threshold-weight-object { + description + "Track type threshold weight"; + uses OBJECT; + } + leaf threshold-percentage-object-enable { + type empty; + units "percentage"; + description + "Enable threshold based on percentage"; + } + leaf threshold-weight-object-enable { + type empty; + description + "Enable threshold based on weighted sum"; + } + } + container type-route { + description + "Track type route"; + container ip-address { + description + "set track address"; + leaf ip-address { + type inet:ip-address-no-zone; + must "../prefix-length and not(../address or ../mask)"; + description + "IPv4 or IPv6 Address"; + } + leaf prefix-length { + type uint32 { + range "1..128"; + } + must "../ip-address and not(../address or ../mask)"; + description + "Prefix length"; + } + leaf address { + type inet:ipv4-address-no-zone; + must "../mask and not(../ip-address or ../prefix-length)"; + description + "IP address"; + } + leaf mask { + type inet:ipv4-address-no-zone; + must "../address and not(../ip-address or ../prefix-length)"; + description + "Mask"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF tag - use 'default' for the DEFAULT vrf"; + } + } + container type-boolean-list { + description + "Track type boolean list"; + container or-objects { + description + "Track type boolean or list"; + list or-object { + key "object"; + description + "Track name - maximum 32 characters"; + leaf object-sign { + type dt1:Object-tracking-boolean-sign; + description + "Tracked Object sign (with or without not)"; + } + leaf object { + type dt1:Object-tracking-name-string; + description + "Object name"; + } + } + } + container and-objects { + description + "Track type boolean and list"; + list and-object { + key "object-name"; + description + "Track name - maximum 32 characters"; + leaf object-sign { + type dt1:Object-tracking-boolean-sign; + description + "Tracked Object sign (with or without not)"; + } + leaf object-name { + type dt1:Object-tracking-name-string; + description + "Object name"; + } + } + } + } + leaf delay-up { + type dt1:Object-tracking-delay; + units "second"; + description + "Delay up in seconds"; + } + leaf enable { + type empty; + description + "Enable the Track"; + } + leaf delay-down { + type dt1:Object-tracking-delay; + units "second"; + description + "Delay down in seconds"; + } + leaf type-interface-enable { + type empty; + description + "Enable track type Interface"; + } + leaf type-route-enable { + type empty; + description + "Enable track type Route"; + } + leaf type-bool-exp-enable { + type empty; + description + "Enable track type Bool Exp"; + } + leaf type-boolean-list-and-enable { + type empty; + description + "Enable track type boolean list and"; + } + leaf type-boolean-list-or-enable { + type empty; + description + "Enable track type boolean list or"; + } + leaf track-name { + type dt1:Object-tracking-name-string; + description + "Track name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-datatypes.yang new file mode 100644 index 000000000..b10c9b5ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-datatypes.yang @@ -0,0 +1,217 @@ +module Cisco-IOS-XR-manageability-object-tracking-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-manageability-object-tracking-datatypes"; + prefix manageability-object-tracking-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-11-22 { + description + "Changed Track Name type from String to Identifier."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Object-tracking-boolean-sign { + type enumeration { + enum "without-not" { + value 0; + description + "Object without not"; + } + enum "with-not" { + value 1; + description + "Object with not"; + } + } + description + "Object tracking boolean sign"; + } + + typedef Object-tracking-address-family { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IPv4 unicast address family"; + } + enum "ipv4-multicast" { + value 1; + description + "IPv4 multicast address family"; + } + enum "ipv4-labeled-unicast" { + value 2; + description + "IPv4 labeled-unicast address family"; + } + enum "ipv4-tunnel" { + value 3; + description + "IPv4 tunnel address family"; + } + enum "vpnv4-unicast" { + value 4; + description + "VPNv4 unicast address family"; + } + enum "ipv6-unicast" { + value 5; + description + "IPv6 unicast address family"; + } + enum "ipv6-multicast" { + value 6; + description + "IPv6 multicast address family"; + } + enum "ipv6-labeled-unicast" { + value 7; + description + "IPv6 labeled-unicast address family"; + } + enum "vpnv6-unicast" { + value 8; + description + "VPNv6 unicast address family"; + } + enum "ipv4-mdt" { + value 9; + description + "IPv4 MDT address family"; + } + enum "l2vpn-vpls" { + value 10; + description + "L2VPN VPLS-VPWS address family"; + } + enum "ipv4rt-constraint" { + value 11; + description + "IPv4 rt-filter address family"; + } + enum "ipv4-mvpn" { + value 12; + description + "IPv4 MVPN address family"; + } + enum "ipv6-mvpn" { + value 13; + description + "IPv6 MVPN address family"; + } + enum "l2vpn-evpn" { + value 14; + description + "L2VPN EVPN address family"; + } + enum "lsls" { + value 15; + description + "Link-state link-state address family"; + } + enum "vpnv4-multicast" { + value 16; + description + "VPNv4 Multicast address family"; + } + enum "vpnv6-multicast" { + value 17; + description + "VPNv6 Multicast address family"; + } + enum "ipv4-flowspec" { + value 18; + description + "IPv4 flowspec address family"; + } + enum "ipv6-flowspec" { + value 19; + description + "IPv6 flowspec address family"; + } + enum "vpnv4-flowspec" { + value 20; + description + "VPNv4 flowspec address family"; + } + enum "vpnv6-flowspec" { + value 21; + description + "VPNv6 flowspec address family"; + } + enum "l2vpn-mspw" { + value 22; + description + "L2VPN MSPW address family"; + } + enum "ipv4-sr-policy" { + value 23; + description + "IPv4 Segment Routing (SR) policy address family"; + } + enum "ipv6-sr-policy" { + value 24; + description + "IPv6 Segment Routing (SR) policy address family"; + } + enum "all-address-family" { + value 25; + description + "All Address Families"; + } + } + description + "Object tracking address family"; + } + + typedef Object-tracking-name-string { + type string { + length "1..32"; + pattern "[a-zA-Z0-9_\\-]+"; + } + description + "Object tracking name string"; + } + + typedef Object-tracking-delay { + type uint32 { + range "1..3600"; + } + description + "Object tracking delay"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper-sub1.yang new file mode 100644 index 000000000..183f93fc5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper-sub1.yang @@ -0,0 +1,607 @@ +submodule Cisco-IOS-XR-manageability-object-tracking-oper-sub1 { + belongs-to Cisco-IOS-XR-manageability-object-tracking-oper { + prefix Cisco-IOS-XR-manageability-object-tracking-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR manageability-object-tracking package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-11 { + description + "Added support for track type Boolean Expression."; + semver:module-version "2.3.0"; + } + revision 2020-06-17 { + description + "Added support to display delay up/down values in show track."; + semver:module-version "2.2.0"; + } + revision 2019-10-07 { + description + "Added support for track type bgp nbr af."; + semver:module-version "2.1.0"; + } + revision 2019-09-07 { + description + "Removed IPv4 Route type nodes and added generic node for both IPv4 and IPv6."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Track { + type enumeration { + enum "interface-type" { + value 1; + description + "Line protocol type"; + } + enum "route-type" { + value 2; + description + "Route type"; + } + enum "bool-and-type" { + value 3; + description + "Boolean and type"; + } + enum "bool-or-type" { + value 4; + description + "Boolean or type"; + } + enum "ipsla-type" { + value 5; + description + "Ipsla track type"; + } + enum "undefined-type" { + value 6; + description + "type undefined"; + } + enum "threshold-weight" { + value 7; + description + "type threshold weight"; + } + enum "threshold-percentage" { + value 8; + description + "type threshold percentage"; + } + enum "bfd-type" { + value 9; + description + "type bfd rtr"; + } + enum "iflist-bool-and-type" { + value 10; + description + "Interface list boolean and type"; + } + enum "iflist-bool-or-type" { + value 11; + description + "Interface list boolean or type"; + } + enum "iflist-thld-weight" { + value 12; + description + "Interface list threshold weight type"; + } + enum "iflist-thld-percent" { + value 13; + description + "Interface list threshold percent type"; + } + enum "bgp-nbr-af-type" { + value 14; + description + "type bgp nbr af"; + } + enum "bool-exp-type" { + value 15; + description + "type boolean expression"; + } + } + description + "Track"; + } + + grouping TRACK-INFO-BRIEF { + description + "TRACK INFO BRIEF"; + list track-info-brief { + description + "track info brief"; + container track-type-info { + description + "Track type information"; + uses TRACK-TYPE-INFO-UNION; + } + leaf tracke-name { + type string { + length "0..33"; + } + description + "Track Name"; + } + leaf type { + type Track; + description + "Track type"; + } + leaf track-state { + type boolean; + description + "Track state"; + } + } + } + + grouping DELAYED-STATE-STATUS { + description + "DELAYED STATE STATUS"; + leaf time-remaining { + type uint32; + units "second"; + description + "The time remaining in seconds for the counter to + trigger state change"; + } + leaf track-state { + type boolean; + description + "State the track will transition to. Track state. + True means track is up; False means track is + down."; + } + } + + grouping INTERFACE-TRACKING-INFO { + description + "INTERFACE TRACKING INFO"; + list interface-tracking-info { + description + "interface tracking info"; + leaf interface-name { + type string { + length "0..120"; + } + description + "Interface Name"; + } + } + } + + grouping THRESHOLD-TRACK-INFO { + description + "THRESHOLD TRACK INFO"; + list threshold-track-info { + description + "threshold track info"; + leaf object-name { + type string { + length "0..33"; + } + description + "Object name"; + } + leaf track-state { + type boolean; + description + "Track state. True means track is up; False + means track is down."; + } + leaf weight { + type uint32; + units "percentage"; + description + "Weight is the number assigned to a track object + . In case of a type threshold weight( i.e. + weighted sum list), weight is asigned by User + at the time of configuration. In case of a type + threshold percentage (i.e. percentage based + list), weight is internally computed by + (1/N)x100, where N is the number of objects in + the list."; + } + } + } + + grouping BOOL-EXP-TRACK-INFO { + description + "BOOL EXP TRACK INFO"; + list bool-exp-track-info { + description + "bool exp track info"; + leaf object-name { + type string { + length "0..33"; + } + description + "Object Name"; + } + leaf track-state { + type boolean; + description + "Track state"; + } + } + } + + grouping BOOL-TRACK-INFO { + description + "BOOL TRACK INFO"; + list bool-track-info { + description + "bool track info"; + leaf object-name { + type string { + length "0..33"; + } + description + "Object Name"; + } + leaf track-state { + type boolean; + description + "Track state"; + } + leaf with-not { + type boolean; + description + "Track object with Not"; + } + } + } + + grouping BFDRTR-TRACK-INFO { + description + "BFDRTR TRACK INFO"; + leaf interface-name { + type string { + length "0..120"; + } + description + "Interface Name"; + } + leaf destination-address { + type uint32; + description + "Destination Address"; + } + leaf rate { + type uint32; + description + "Rate"; + } + leaf debounce-count { + type uint32; + description + "Debounce Count"; + } + } + + grouping RTR-TRACK-INFO { + description + "RTR TRACK INFO"; + leaf ipsla-op-id { + type uint32; + description + "Op Id"; + } + leaf rtt { + type uint32; + description + "Latest RTT"; + } + leaf return-code { + type uint32; + description + "Latest Return Code"; + } + leaf return-code-string { + type string { + length "0..120"; + } + description + "Latest Ret Code String"; + } + } + + grouping BGP-NBR-AF-TRACK-INFO { + description + "BGP NBR AF TRACK INFO"; + leaf is-neighbor-ipv4 { + type boolean; + description + "Is BGP neighbor addr IPv4"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address; + description + "IPv6 address"; + } + leaf afi { + type uint16; + description + "AFI"; + } + leaf safi { + type uint8; + description + "SAFI"; + } + leaf neighbor-object-state { + type uint32; + description + "BGP neighborship state"; + } + leaf disable-fib-check { + type boolean; + description + "Disable Neighbor's route reachablity state"; + } + leaf neighbor-route-reach-state { + type boolean; + description + "BGP Neighbor's route reachablity state"; + } + leaf vrf { + type string { + length "0..120"; + } + description + "VRF Name"; + } + leaf ins { + type string { + length "0..120"; + } + description + "VRF Name"; + } + } + + grouping ROUTE-TRACK-INFO { + description + "ROUTE TRACK INFO"; + leaf prefix { + type string { + length "0..46"; + } + description + "IPv4 or IPv6 Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + leaf vrf { + type string { + length "0..120"; + } + description + "VRF Name"; + } + leaf next-hop { + type string { + length "0..120"; + } + description + "Next Hop"; + } + } + + grouping INTF-TRACK-INFO { + description + "INTF TRACK INFO"; + leaf interface-name { + type string { + length "0..120"; + } + description + "Interface Name"; + } + } + + grouping TRACK-TYPE-INFO-UNION { + description + "TRACK TYPE INFO UNION"; + container interface-tracks { + when "../discriminant = 'interface-type'" { + description + "../discriminant = 'InterfaceType'"; + } + description + "track type interface info"; + uses INTF-TRACK-INFO; + } + container route-tracks { + when "../discriminant = 'route-type'" { + description + "../discriminant = 'RouteType'"; + } + description + "track type route info"; + uses ROUTE-TRACK-INFO; + } + container bgp-nbr-af-tracks { + when "../discriminant = 'bgp-nbr-af-type'" { + description + "../discriminant = 'BgpNbrAfType'"; + } + description + "track type bgp nbr af info"; + uses BGP-NBR-AF-TRACK-INFO; + } + container ipsla-tracks { + when "../discriminant = 'ipsla-type'" { + description + "../discriminant = 'IpslaType'"; + } + description + "track type rtr info"; + uses RTR-TRACK-INFO; + } + container bfd-tracks { + when "../discriminant = 'bfd-type'" { + description + "../discriminant = 'BfdType'"; + } + description + "track type bfdrtr info"; + uses BFDRTR-TRACK-INFO; + } + leaf discriminant { + type Track; + description + "discriminant"; + } + } + + grouping TRACK-INFO { + description + "TRACK INFO"; + list track-info { + description + "track info"; + container track-type-info { + description + "Track type information"; + uses TRACK-TYPE-INFO-UNION; + } + container bool-tracks { + description + "boolean objects"; + uses BOOL-TRACK-INFO; + } + container bool-exp-tracks { + description + "boolean Expression objects"; + uses BOOL-EXP-TRACK-INFO; + } + container threshold-tracks { + description + "Threshold objects"; + uses THRESHOLD-TRACK-INFO; + } + container tracking-interaces { + description + "Tracking Interfaces"; + uses INTERFACE-TRACKING-INFO; + } + container delayed { + description + "Is the state change delay counter in progress"; + uses DELAYED-STATE-STATUS; + } + leaf tracke-name { + type string { + length "0..33"; + } + description + "Track Name"; + } + leaf type { + type Track; + description + "Track type"; + } + leaf track-state { + type boolean; + description + "Track state"; + } + leaf state-change-counter { + type uint32; + description + "State Change Counter"; + } + leaf seconds-last-change { + type uint64; + units "second"; + description + "Seconds Last Change"; + } + leaf mili-seconds-last-change { + type uint64; + units "second"; + description + "Mili Seconds Last Change"; + } + leaf threshold-up { + type uint32; + description + "User specified threshold upper limit"; + } + leaf threshold-down { + type uint32; + description + "User specified threshold lower limit"; + } + leaf delay-up-time { + type uint16; + units "second"; + description + "Delay up time in Seconds"; + } + leaf delay-up-config { + type boolean; + description + "True, if Delay up is set in config"; + } + leaf delay-down-time { + type uint16; + units "second"; + description + "Delay down time in Seconds"; + } + leaf delay-down-config { + type boolean; + description + "True, if Delay down is set in Config"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper.yang new file mode 100644 index 000000000..ec439d0b1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-object-tracking-oper.yang @@ -0,0 +1,133 @@ +module Cisco-IOS-XR-manageability-object-tracking-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-manageability-object-tracking-oper"; + prefix manageability-object-tracking-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-manageability-object-tracking-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-manageability-object-tracking-oper-sub1 { + revision-date 2021-04-11; + } + + 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 manageability-object-tracking package operational data. + + This module contains definitions + for the following management objects: + object-tracking: Object Tracking operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-11 { + description + "Added support for track type Boolean Expression."; + semver:module-version "2.3.0"; + } + revision 2020-06-17 { + description + "Added support to display delay up/down values in show track."; + semver:module-version "2.2.0"; + } + revision 2019-10-07 { + description + "Added support for track type bgp nbr af."; + semver:module-version "2.1.0"; + } + revision 2019-09-07 { + description + "Removed IPv4 Route type nodes and added generic node for both IPv4 and IPv6."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container object-tracking { + config false; + description + "Object Tracking operational data"; + container track-type-interface { + description + "Object Tracking Type interface info"; + uses TRACK-INFO; + } + container track-briefs { + description + "Object Tracking Track table brief"; + list track-brief { + key "track-name"; + description + "Track name - maximum 32 characters"; + leaf track-name { + type dt1:Object-tracking-name-string; + description + "Track name"; + } + uses TRACK-INFO-BRIEF; + } + } + container track-type-rtr-reachability { + description + "Object Tracking Type RTR Reachability info"; + uses TRACK-INFO; + } + container track-type-rtr-reachability-brief { + description + "Object Tracking Type RTR Reachability brief info"; + uses TRACK-INFO-BRIEF; + } + container tracks { + description + "Object Tracking Track table"; + list track { + key "track-name"; + description + "Track name - maximum 32 characters"; + leaf track-name { + type dt1:Object-tracking-name-string; + description + "Track name"; + } + uses TRACK-INFO; + } + } + container track-type-route { + description + "Object Tracking Type Route info"; + uses TRACK-INFO; + } + container track-type-route-brief { + description + "Object Tracking Type Route brief info"; + uses TRACK-INFO-BRIEF; + } + container track-type-interface-brief { + description + "Object Tracking Type Interface brief info"; + uses TRACK-INFO-BRIEF; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-cfg.yang new file mode 100644 index 000000000..479ef3629 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-cfg.yang @@ -0,0 +1,5423 @@ +module Cisco-IOS-XR-manageability-perfmgmt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-manageability-perfmgmt-cfg"; + prefix manageability-perfmgmt-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 manageability-perfmgmt package configuration. + + This module contains definitions + for the following management objects: + perf-mgmt: Performance Management configuration & operations + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-17 { + description + "Added new leaf node to support Threshold Delta counter."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pm-threshold-val-range { + type uint32 { + range "0..65536"; + } + description + "Pm threshold val range"; + } + + typedef Pm-threshold-val-range-counter32 { + type uint32 { + range "0..4294967295"; + } + description + "Pm threshold val range counter32"; + } + + typedef Pm-threshold-rearm { + type enumeration { + enum "always" { + value 0; + description + "Rearm Always"; + } + enum "window" { + value 1; + description + "Rearm after window of sampling periods"; + } + enum "toggle" { + value 2; + description + "Rearm after the first period when condition is + not met"; + } + } + description + "Pm threshold rearm"; + } + + typedef Pm-threshold-op { + type enumeration { + enum "eq" { + value 1; + description + "Equal to"; + } + enum "ne" { + value 2; + description + "Not equal to"; + } + enum "lt" { + value 3; + description + "Less than"; + } + enum "le" { + value 4; + description + "Less than or equal to"; + } + enum "gt" { + value 5; + description + "Greater than"; + } + enum "ge" { + value 6; + description + "Greater than or equal to"; + } + enum "rg" { + value 7; + description + "Not in Range"; + } + } + description + "Pm threshold op"; + } + + typedef Pid-range { + type uint32 { + range "0..4294967295"; + } + description + "Pid range"; + } + + typedef Pm-threshold-rearm-window { + type uint32 { + range "1..100"; + } + description + "Pm threshold rearm window"; + } + + grouping REG-EXP-GROUP { + description + "Common node of basic-counter-interface-template, + generic-counter-interface-template, + data-rate-interface-template"; + leaf reg-exp-group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Enable instance filtering by regular expression"; + } + } + + grouping OUTPUT-LS-REQUESTS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-ls-requests { + presence "enable output-ls-requests"; + description + "Number of LS Requests sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping OSPF-INSTANCE-TABLE { + description + "Common node of ospfv2-protocol, ospfv3-protocol"; + container ospf-instances { + description + "Monitor an instance"; + list ospf-instance { + key "instance-name"; + description + "Instance being monitored"; + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OSPF Instance Name"; + } + uses MANAGEABILITY-PERF-ENABLE-MONITOR-CFG-TEMPLATE-NAME; + } + } + } + + grouping INPUT-DB-DS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-db-ds { + presence "enable input-db-ds"; + description + "Number of DBD packets received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping NODE-ALL { + description + "Common node of cpu-node, memory-node, + process-node"; + container node-all { + description + "All the the nodes"; + uses TEMPLATE-NAME; + } + } + + grouping MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-ALL { + description + "Common node of cpu-node, memory-node, + process-nodeCommon node of cpu-node, memory-node, + process-node"; + container node-all { + description + "All the the nodes"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + } + + grouping INPUT-LSA-ACKS-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-lsa-acks-lsa { + presence "enable input-lsa-acks-lsa"; + description + "Number of LSA received in LSA Acknowledgements"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping OUTPUT-DB-DS-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-db-ds-lsa { + presence "enable output-db-ds-lsa"; + description + "Number of LSA sent in DBD packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping TEMPLATE-NAME { + description + "Common node of ospfv2-protocol, ospfv3-protocol, + bgp, node, node-all, ldp-mpls, + data-rate-interface, generic-counter-interface, + basic-counter-interface"; + leaf template-name { + type string; + description + "Template name"; + } + } + + grouping MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME { + description + "Common node of ospfv2-protocol, ospfv3-protocol, + bgp, node, node-all, ldp-mpls, + data-rate-interface, generic-counter-interface, + basic-counter-interfaceCommon node of + ospfv2-protocol, ospfv3-protocol, node, node-all, + ldp-mpls, data-rate-interface, + generic-counter-interface, + basic-counter-interface, bgp"; + leaf template-name { + type string; + description + "Template name"; + } + } + + grouping MANAGEABILITY-PERF-ENABLE-MONITOR-CFG-TEMPLATE-NAME { + description + "Common node of ospfv2-protocol, ospfv3-protocol, + bgp, node, node-all, ldp-mpls, + data-rate-interface, generic-counter-interface, + basic-counter-interfaceCommon node of + ospfv2-protocol, ospfv3-protocol, node, node-all, + ldp-mpls, data-rate-interface, + generic-counter-interface, + basic-counter-interface, bgpCommon node of + ospf-instance, session, pid, node, interface, + neighbor"; + leaf template-name { + type string; + description + "Template name"; + } + } + + grouping TEMPLATE-TABLE { + description + "Common node of ospfv2-protocol, ospfv3-protocol, + bgp, generic-counter-interface, + basic-counter-interface, data-rate-interface, + ldp-mpls, cpu-node, memory-node, process-node"; + container templates { + description + "Template name"; + list template { + key "template-name"; + description + "A template instance"; + leaf reg-exp-group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Enable instance filtering by regular + expression"; + } + leaf history-persistent { + type empty; + description + "Enable persistent history statistics"; + } + leaf vrf-group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF group configured in regular expression to + be applied"; + } + leaf sample-interval { + type uint32 { + range "1..60"; + } + units "minute"; + description + "Frequency of each sample in minutes"; + } + leaf sample-size { + type uint32 { + range "1..60"; + } + description + "Number of samples to be taken"; + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + } + } + } + + grouping SAMPLE-INTERVAL { + description + "Common node of data-rate-interface-template, + ldp-mpls-template, cpu-node-template, + memory-node-template, process-node-template"; + leaf sample-interval { + type uint32 { + range "1..60"; + } + units "minute"; + description + "Frequency of sampling in minutes"; + } + } + + grouping MANAGEABILITY-PERF-THRESH-CFG-SAMPLE-INTERVAL { + description + "Common node of data-rate-interface-template, + ldp-mpls-template, cpu-node-template, + memory-node-template, process-node-templateCommon + node of ospfv2-protocol-template, + ospfv3-protocol-template, bgp-template, + basic-counter-interface-template, + generic-counter-interface-template"; + leaf sample-interval { + type uint32 { + range "1..60"; + } + units "minute"; + description + "Frequency of sampling in minutes"; + } + } + + grouping INPUT-PACKETS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-packets { + presence "enable input-packets"; + description + "Total number of packets received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INPUT-LSA-UPDATES-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-lsa-updates-lsa { + presence "enable input-lsa-updates-lsa"; + description + "Number of LSA received in LSA Updates"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping VRF-GROUP { + description + "Common node of basic-counter-interface-template, + generic-counter-interface-template, + data-rate-interface-template"; + leaf vrf-group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Enable instance filtering by VRF name regular + expression "; + } + } + + grouping OUTPUT-LSA-UPDATES-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-lsa-updates-lsa { + presence "enable output-lsa-updates-lsa"; + description + "Number of LSA sent in LSA Updates"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INPUT-LSA-ACKS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-lsa-acks { + presence "enable input-lsa-acks"; + description + "Number of LSA Acknowledgements received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INPUT-LSA-UPDATES { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-lsa-updates { + presence "enable input-lsa-updates"; + description + "Number of LSA Updates received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping OUTPUT-LSA-ACKS-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-lsa-acks-lsa { + presence "enable output-lsa-acks-lsa"; + description + "Number of LSA sent in LSA Acknowledgements"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INTERFACE-TABLE { + description + "Common node of generic-counters, basic-counters, + data-rates"; + container interfaces { + description + "Monitor an Interface"; + list interface { + key "interface-name"; + description + "Interface being Monitored"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MANAGEABILITY-PERF-ENABLE-MONITOR-CFG-TEMPLATE-NAME; + } + } + } + + grouping OUTPUT-PACKETS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-packets { + presence "enable output-packets"; + description + "Total number of packets sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping OUTPUT-LSA-UPDATES { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-lsa-updates { + presence "enable output-lsa-updates"; + description + "Number of LSA Updates sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping OUTPUT-HELLO-PACKETS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-hello-packets { + presence "enable output-hello-packets"; + description + "Total number of packets sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping NODE-TABLE { + description + "Common node of memory, cpu"; + container nodes { + description + "Node specification"; + list node { + key "node-id"; + description + "Node instance"; + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + uses MANAGEABILITY-PERF-ENABLE-MONITOR-CFG-TEMPLATE-NAME; + } + } + } + + grouping MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-TABLE { + description + "Common node of memory, cpuCommon node of cpu-node + , memory-node, process-node"; + container nodes { + description + "Node specification"; + list node { + key "node-id"; + description + "Node instance"; + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + } + } + + grouping MANAGEABILITY-PERF-ENABLE-STATS-CFG-NODE-TABLE { + description + "Common node of memory, cpuCommon node of cpu-node + , memory-node, process-nodeCommon node of + cpu-node, memory-node, process-node"; + container nodes { + description + "Node specification"; + list node { + key "node-id"; + description + "Node instance"; + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + uses TEMPLATE-NAME; + } + } + } + + grouping OUTPUT-DB-DS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-db-ds { + presence "enable output-db-ds"; + description + "Number of DBD packets sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INPUT-LS-REQUESTS-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-ls-requests-lsa { + presence "enable input-ls-requests-lsa"; + description + "Number of LSA received in LS Requests"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping OUTPUT-LS-REQUESTS-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-ls-requests-lsa { + presence "enable output-ls-requests-lsa"; + description + "Number of LSA sent in LS Requests"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping OUTPUT-LSA-ACKS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container output-lsa-acks { + presence "enable output-lsa-acks"; + description + "Number of LSA Acknowledgements sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INPUT-DB-DS-LSA { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-db-ds-lsa { + presence "enable input-db-ds-lsa"; + description + "Number of LSA received in DBD packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INPUT-LS-REQUESTS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-ls-requests { + presence "enable input-ls-requests"; + description + "Number of LS Requests received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + grouping INPUT-HELLO-PACKETS { + description + "Common node of ospfv2-protocol-template, + ospfv3-protocol-template"; + container input-hello-packets { + presence "enable input-hello-packets"; + description + "Number of Hello packets received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, set + to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values are + in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm type + Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is a + Delta between current and previous value"; + } + } + } + + container perf-mgmt { + description + "Performance Management configuration & operations"; + container resources { + description + "Resources configuration"; + container tftp-resources { + presence "Indicates a tftp-resources node is configured."; + description + "Configure the TFTP server IP address and + directory name"; + leaf server-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address of the TFTP server"; + } + leaf directory { + type string; + mandatory true; + description + "Directory name on TFTP server"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + container dump-local { + description + "Configure local dump parameters"; + leaf enable { + type empty; + description + "Enable data dump onto local filesystem"; + } + } + container memory-resources { + description + "Configure the memory usage limits of + performance management"; + leaf max-limit { + type uint32; + units "kilobyte"; + description + "Maximum limit for memory usage (Kbytes) for + data buffers"; + } + leaf min-reserved { + type uint32; + units "kilobyte"; + description + "Specify a minimum free memory (Kbytes) to be + ensured before allowing a collection request"; + } + } + } + container statistics { + description + "Templates for collection of statistics"; + container generic-counter-interface { + description + "Interface Generic GenericCounter collection + templates"; + uses TEMPLATE-TABLE; + } + container process-node { + description + "Node Process collection templates"; + uses TEMPLATE-TABLE; + } + container basic-counter-interface { + description + "Interface BasicCounter collection templates"; + uses TEMPLATE-TABLE; + } + container ospfv3-protocol { + description + "OSPF v3 Protocol collection templates"; + uses TEMPLATE-TABLE; + } + container cpu-node { + description + "Node CPU collection templates"; + uses TEMPLATE-TABLE; + } + container data-rate-interface { + description + "Interface DataRate collection templates"; + uses TEMPLATE-TABLE; + } + container memory-node { + description + "Node Memory collection templates"; + uses TEMPLATE-TABLE; + } + container ldp-mpls { + description + "MPLS LDP collection templates"; + uses TEMPLATE-TABLE; + } + container bgp { + description + "BGP collection templates"; + uses TEMPLATE-TABLE; + } + container ospfv2-protocol { + description + "OSPF v2 Protocol collection templates"; + uses TEMPLATE-TABLE; + } + } + container enable { + description + "Start data collection and/or threshold + monitoring"; + container threshold { + description + "Start threshold monitoring using a defined + template"; + container ospfv3-protocol { + description + "Threshold monitoring for OSPF v3 Protocol"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + container bgp { + description + "Threshold monitoring for BGP"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + container data-rate-interface { + description + "Threshold monitoring for Interface data-rates"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + container ospfv2-protocol { + description + "Threshold monitoring for OSPF v2 Protocol"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + container memory-node { + description + "Threshold monitoring for memory"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-TABLE; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-ALL; + } + container generic-counter-interface { + description + "Threshold monitoring for Interface + generic-counters"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + container cpu-node { + description + "Threshold monitoring for CPU"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-TABLE; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-ALL; + } + container ldp-mpls { + description + "Threshold monitoring for LDP"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + container process-node { + description + "Threshold monitoring for process"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-TABLE; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-NODE-ALL; + } + container basic-counter-interface { + description + "Threshold monitoring for Interface + basic-counters"; + uses MANAGEABILITY-PERF-ENABLE-THRESH-CFG-TEMPLATE-NAME; + } + } + container statistics { + description + "Start periodic collection using a defined a + template"; + container generic-counter-interface { + description + "Statistics collection for generic-counters"; + uses TEMPLATE-NAME; + } + container bgp { + description + "Data collection for BGP"; + uses TEMPLATE-NAME; + } + container ospfv2-protocol { + description + "Data collection for OSPF v2 Protocol"; + uses TEMPLATE-NAME; + } + container ospfv3-protocol { + description + "Data collection for OSPF v3 Protocol"; + uses TEMPLATE-NAME; + } + container cpu-node { + description + "Collection for CPU"; + uses NODE-ALL; + uses MANAGEABILITY-PERF-ENABLE-STATS-CFG-NODE-TABLE; + } + container basic-counter-interface { + description + "Statistics collection for basic-counters"; + uses TEMPLATE-NAME; + } + container process-node { + description + "Collection for process"; + uses NODE-ALL; + uses MANAGEABILITY-PERF-ENABLE-STATS-CFG-NODE-TABLE; + } + container data-rate-interface { + description + "Statistics collection for generic-counters"; + uses TEMPLATE-NAME; + } + container memory-node { + description + "Collection for memory"; + uses NODE-ALL; + uses MANAGEABILITY-PERF-ENABLE-STATS-CFG-NODE-TABLE; + } + container ldp-mpls { + description + "Collection for labels distribution protocol"; + uses TEMPLATE-NAME; + } + } + container monitor-enable { + description + "Start data collection for a monitored instance"; + container ldp-mpls { + description + "Monitoring for LDP"; + container sessions { + description + "LDP session specification"; + list session { + key "session"; + description + "IP address of the LDP Session"; + leaf session { + type inet:ipv4-address-no-zone; + description + "IP address of the LDP Session"; + } + uses MANAGEABILITY-PERF-ENABLE-MONITOR-CFG-TEMPLATE-NAME; + } + } + } + container ospfv3-protocol { + description + "Monitor OSPF v3 Protocol"; + uses OSPF-INSTANCE-TABLE; + } + container generic-counters { + description + "Monitoring for generic-counters"; + uses INTERFACE-TABLE; + } + container process { + description + "Collection for a single process"; + container process-nodes { + description + "Node specification"; + list process-node { + key "node-id"; + description + "Node instance"; + container pids { + description + "Process ID specification"; + list pid { + key "pid"; + description + "Specify an existing template for data + collection"; + leaf pid { + type Pid-range; + description + "Specify Process ID"; + } + uses MANAGEABILITY-PERF-ENABLE-MONITOR-CFG-TEMPLATE-NAME; + } + } + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + container basic-counters { + description + "Monitoring for basic-counters"; + uses INTERFACE-TABLE; + } + container memory { + description + "Collection for memory"; + uses NODE-TABLE; + } + container ospfv2-protocol { + description + "Monitor OSPF v2 Protocol"; + uses OSPF-INSTANCE-TABLE; + } + container cpu { + description + "Collection for CPU"; + uses NODE-TABLE; + } + container bgp { + description + "Monitor BGP protocol"; + container neighbors { + description + "Monitor BGP protocol for a BGP peer"; + list neighbor { + key "peer-address"; + description + "Neighbor being monitored"; + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "IP address of the Neighbor"; + } + uses MANAGEABILITY-PERF-ENABLE-MONITOR-CFG-TEMPLATE-NAME; + } + } + } + container data-rates { + description + "Monitoring for data-rates"; + uses INTERFACE-TABLE; + } + } + } + container reg-exp-groups { + description + "Configure regular expression group"; + list reg-exp-group { + key "reg-exp-group-name"; + description + "Specify regular expression group name"; + container reg-exps { + description + "Configure regular expression"; + list reg-exp { + key "reg-exp-index"; + description + "Specify regular expression index number"; + leaf reg-exp-index { + type uint32 { + range "1..100"; + } + description + "Regular expression index number"; + } + leaf reg-exp-string { + type string { + length "1..128"; + } + mandatory true; + description + "Regular expression string to match"; + } + } + } + leaf reg-exp-group-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Regular expression group name"; + } + } + } + container threshold { + description + "Container for threshold templates"; + container generic-counter-interface { + description + "Interface Generic Counter threshold + configuration"; + container generic-counter-interface-templates { + description + "Interface Generic Counter threshold templates"; + list generic-counter-interface-template { + key "template-name"; + description + "Interface Generic Counter threshold template + instance"; + container in-octets { + presence "enable in-octets"; + description + "Number of inbound octets/bytes"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container in-ucast-pkts { + presence "enable in-ucast-pkts"; + description + "Number of inbound unicast packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container out-ucast-pkts { + presence "enable out-ucast-pkts"; + description + "Number of outbound unicast packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container out-broadcast-pkts { + presence "enable out-broadcast-pkts"; + description + "Number of outbound broadcast packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container out-multicast-pkts { + presence "enable out-multicast-pkts"; + description + "Number of outbound multicast packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-overrun { + presence "enable input-overrun"; + description + "Number of inbound packets with overrun + errors"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container out-octets { + presence "enable out-octets"; + description + "Number of outbound octets/bytes"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-underrun { + presence "enable output-underrun"; + description + "Number of outbound packets with underrun + errors"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-total-errors { + presence "enable input-total-errors"; + description + "Number of inbound incorrect packets + discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-total-drops { + presence "enable output-total-drops"; + description + "Number of outbound correct packets discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-crc { + presence "enable input-crc"; + description + "Number of inbound packets discarded with + incorrect CRC"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container in-broadcast-pkts { + presence "enable in-broadcast-pkts"; + description + "Number of inbound broadcast packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container in-multicast-pkts { + presence "enable in-multicast-pkts"; + description + "Number of inbound multicast packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container out-packets { + presence "enable out-packets"; + description + "Number of outbound packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-total-errors { + presence "enable output-total-errors"; + description + "Number of outbound incorrect packets + discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container in-packets { + presence "enable in-packets"; + description + "Number of inbound packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-unknown-proto { + presence "enable input-unknown-proto"; + description + "Number of inbound packets discarded with + unknown protocol"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-queue-drops { + presence "enable input-queue-drops"; + description + "Number of input queue drops"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-total-drops { + presence "enable input-total-drops"; + description + "Number of inbound correct packets discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-frame { + presence "enable input-frame"; + description + "Number of inbound packets with framing + errors"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses MANAGEABILITY-PERF-THRESH-CFG-SAMPLE-INTERVAL; + uses REG-EXP-GROUP; + uses VRF-GROUP; + } + } + } + container ldp-mpls { + description + "MPLS LDP threshold configuration"; + container ldp-mpls-templates { + description + "MPLS LDP threshold templates"; + list ldp-mpls-template { + key "template-name"; + description + "MPLS LDP threshold template instance"; + container address-withdraw-msgs-rcvd { + presence "enable address-withdraw-msgs-rcvd"; + description + "Number of Address Withdraw messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container label-withdraw-msgs-rcvd { + presence "enable label-withdraw-msgs-rcvd"; + description + "Number of Label Withdraw messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container address-withdraw-msgs-sent { + presence "enable address-withdraw-msgs-sent"; + description + "Number of Address Withdraw messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container label-withdraw-msgs-sent { + presence "enable label-withdraw-msgs-sent"; + description + "Number of Label Withdraw messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container notification-msgs-rcvd { + presence "enable notification-msgs-rcvd"; + description + "Number of Notification messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container total-msgs-rcvd { + presence "enable total-msgs-rcvd"; + description + "Total number of messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container notification-msgs-sent { + presence "enable notification-msgs-sent"; + description + "Number of Notification messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container total-msgs-sent { + presence "enable total-msgs-sent"; + description + "Total number of messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container label-release-msgs-rcvd { + presence "enable label-release-msgs-rcvd"; + description + "Number of LAbel Release messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container init-msgs-rcvd { + presence "enable init-msgs-rcvd"; + description + "Number of Init messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container label-release-msgs-sent { + presence "enable label-release-msgs-sent"; + description + "Number of Label Release messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container init-msgs-sent { + presence "enable init-msgs-sent"; + description + "Number of Init messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container label-mapping-msgs-rcvd { + presence "enable label-mapping-msgs-rcvd"; + description + "Number of Label Mapping messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container keepalive-msgs-rcvd { + presence "enable keepalive-msgs-rcvd"; + description + "Number of Keepalive messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container label-mapping-msgs-sent { + presence "enable label-mapping-msgs-sent"; + description + "Number of Label Mapping messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container keepalive-msgs-sent { + presence "enable keepalive-msgs-sent"; + description + "Number of Keepalive messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container address-msgs-rcvd { + presence "enable address-msgs-rcvd"; + description + "Number of Address messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container address-msgs-sent { + presence "enable address-msgs-sent"; + description + "Number of Address messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses SAMPLE-INTERVAL; + } + } + } + container basic-counter-interface { + description + "Interface Basic Counter threshold configuration"; + container basic-counter-interface-templates { + description + "Interface Basic Counter threshold templates"; + list basic-counter-interface-template { + key "template-name"; + description + "Interface Basic Counter threshold template + instance"; + container in-octets { + presence "enable in-octets"; + description + "Number of inbound octets/bytes"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container out-octets { + presence "enable out-octets"; + description + "Number of outbound octets/bytes"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-queue-drops { + presence "enable output-queue-drops"; + description + "Number of outbound queue drops"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-total-errors { + presence "enable input-total-errors"; + description + "Number of inbound incorrect packets + discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-total-drops { + presence "enable output-total-drops"; + description + "Number of outbound correct packets discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container out-packets { + presence "enable out-packets"; + description + "Number of outbound packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-total-errors { + presence "enable output-total-errors"; + description + "Number of outbound incorrect packets + discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container in-packets { + presence "enable in-packets"; + description + "Number of inbound packets"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-queue-drops { + presence "enable input-queue-drops"; + description + "Number of input queue drops"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-total-drops { + presence "enable input-total-drops"; + description + "Number of inbound correct packets discarded"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses MANAGEABILITY-PERF-THRESH-CFG-SAMPLE-INTERVAL; + uses REG-EXP-GROUP; + uses VRF-GROUP; + } + } + } + container bgp { + description + "BGP threshold configuration"; + container bgp-templates { + description + "BGP threshold templates"; + list bgp-template { + key "template-name"; + description + "BGP threshold template instance"; + container output-update-messages { + presence "enable output-update-messages"; + description + "Number of update messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container errors-received { + presence "enable errors-received"; + description + "Number of error notifications received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container conn-established { + presence "enable conn-established"; + description + "Number of times the connection was + established"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-messages { + presence "enable output-messages"; + description + "Number of messages sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container conn-dropped { + presence "enable conn-dropped"; + description + "Number of times the connection was dropped"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-update-messages { + presence "enable input-update-messages"; + description + "Number of update messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container errors-sent { + presence "enable errors-sent"; + description + "Number of error notifications sent"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-messages { + presence "enable input-messages"; + description + "Number of messages received"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses MANAGEABILITY-PERF-THRESH-CFG-SAMPLE-INTERVAL; + } + } + } + container ospfv2-protocol { + description + "OSPF v2 Protocol threshold configuration"; + container ospfv2-protocol-templates { + description + "OSPF v2 Protocol threshold templates"; + list ospfv2-protocol-template { + key "template-name"; + description + "OSPF v2 Protocol threshold template instance"; + container checksum-errors { + presence "enable checksum-errors"; + description + "Number of packets received with checksum + errors"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses INPUT-LSA-ACKS-LSA; + uses OUTPUT-DB-DS-LSA; + uses INPUT-DB-DS-LSA; + uses INPUT-LSA-UPDATES; + uses OUTPUT-DB-DS; + uses OUTPUT-LSA-UPDATES-LSA; + uses INPUT-DB-DS; + uses INPUT-LSA-UPDATES-LSA; + uses MANAGEABILITY-PERF-THRESH-CFG-SAMPLE-INTERVAL; + uses OUTPUT-PACKETS; + uses INPUT-PACKETS; + uses OUTPUT-HELLO-PACKETS; + uses INPUT-HELLO-PACKETS; + uses OUTPUT-LS-REQUESTS; + uses OUTPUT-LSA-ACKS-LSA; + uses OUTPUT-LSA-ACKS; + uses INPUT-LSA-ACKS; + uses OUTPUT-LSA-UPDATES; + uses OUTPUT-LS-REQUESTS-LSA; + uses INPUT-LS-REQUESTS-LSA; + uses INPUT-LS-REQUESTS; + } + } + } + container cpu-node { + description + "Node CPU threshold configuration"; + container cpu-node-templates { + description + "Node CPU threshold configuration templates"; + list cpu-node-template { + key "template-name"; + description + "Node CPU threshold configuration template + instances"; + container average-cpu-used { + presence "enable average-cpu-used"; + description + "Average %CPU utilization"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32 { + range "0..100"; + } + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32 { + range "0..100"; + } + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container no-processes { + presence "enable no-processes"; + description + "Number of processes"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses SAMPLE-INTERVAL; + } + } + } + container data-rate-interface { + description + "Interface Data Rates threshold configuration"; + container data-rate-interface-templates { + description + "Interface Data Rates threshold templates"; + list data-rate-interface-template { + key "template-name"; + description + "Interface Data Rates threshold template + instance"; + container input-data-rate { + presence "enable input-data-rate"; + description + "Input data rate in kbps"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container bandwidth { + presence "enable bandwidth"; + description + "Bandwidth in kbps"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-packet-rate { + presence "enable output-packet-rate"; + description + "Number of Output packets per second"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-peak-pkts { + presence "enable input-peak-pkts"; + description + "Maximum number of input packets per second"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-peak-rate { + presence "enable output-peak-rate"; + description + "Peak output data rate in kbps"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-data-rate { + presence "enable output-data-rate"; + description + "Output data rate in kbps"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-packet-rate { + presence "enable input-packet-rate"; + description + "Number of input packets per second"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container output-peak-pkts { + presence "enable output-peak-pkts"; + description + "Maximum number of output packets per second"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container input-peak-rate { + presence "enable input-peak-rate"; + description + "Peak input data rate in kbps"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type Pm-threshold-val-range-counter32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type Pm-threshold-val-range-counter32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses SAMPLE-INTERVAL; + uses REG-EXP-GROUP; + uses VRF-GROUP; + } + } + } + container process-node { + description + "Node Process threshold configuration"; + container process-node-templates { + description + "Node Memory threshold templates"; + list process-node-template { + key "template-name"; + description + "Node Memory threshold template instance"; + container average-cpu-used { + presence "enable average-cpu-used"; + description + "Average %CPU utilization"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32 { + range "0..100"; + } + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32 { + range "0..100"; + } + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container peak-memory { + presence "enable peak-memory"; + description + "Max memory (KBytes) used since startup time"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container no-threads { + presence "enable no-threads"; + description + "Number of threads"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32 { + range "0..32767"; + } + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32 { + range "0..32767"; + } + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses SAMPLE-INTERVAL; + } + } + } + container memory-node { + description + "Node Memory threshold configuration"; + container memory-node-templates { + description + "Node Memory threshold configuration templates"; + list memory-node-template { + key "template-name"; + description + "Node Memory threshold configuration template + instance"; + container peak-memory { + presence "enable peak-memory"; + description + "Maximum memory (KBytes) used"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32 { + range "0..4194304"; + } + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32 { + range "0..4194304"; + } + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + container curr-memory { + presence "enable curr-memory"; + description + "Current memory (Bytes) in use"; + leaf operator { + type Pm-threshold-op; + description + "Operator"; + } + leaf value { + type uint32; + description + "Threshold value (or start range value for + operator RG)"; + } + leaf end-range-value { + type uint32; + description + "Threshold end range value (for operator RG, + set to 0 otherwise)"; + } + leaf percent { + type boolean; + description + "Set to TRUE if Specified threshold values + are in percent"; + } + leaf rearm-type { + type Pm-threshold-rearm; + description + "Configure the Rearm type"; + } + leaf rearm-window { + type Pm-threshold-rearm-window; + description + "Configure the rearm window size (for rearm + type Window)"; + } + leaf delta { + type boolean; + description + "Set to TRUE if Specified threshold value is + a Delta between current and previous value"; + } + } + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses SAMPLE-INTERVAL; + } + } + } + container ospfv3-protocol { + description + "OSPF v2 Protocol threshold configuration"; + container ospfv3-protocol-templates { + description + "OSPF v2 Protocol threshold templates"; + list ospfv3-protocol-template { + key "template-name"; + description + "OSPF v2 Protocol threshold template instance"; + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "Template Name"; + } + uses INPUT-LSA-ACKS-LSA; + uses OUTPUT-DB-DS-LSA; + uses INPUT-DB-DS-LSA; + uses INPUT-LSA-UPDATES; + uses OUTPUT-DB-DS; + uses OUTPUT-LSA-UPDATES-LSA; + uses INPUT-DB-DS; + uses INPUT-LSA-UPDATES-LSA; + uses MANAGEABILITY-PERF-THRESH-CFG-SAMPLE-INTERVAL; + uses OUTPUT-PACKETS; + uses INPUT-PACKETS; + uses OUTPUT-HELLO-PACKETS; + uses INPUT-HELLO-PACKETS; + uses OUTPUT-LS-REQUESTS; + uses OUTPUT-LSA-ACKS-LSA; + uses OUTPUT-LSA-ACKS; + uses INPUT-LSA-ACKS; + uses OUTPUT-LSA-UPDATES; + uses OUTPUT-LS-REQUESTS-LSA; + uses INPUT-LS-REQUESTS-LSA; + uses INPUT-LS-REQUESTS; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-datatypes.yang new file mode 100644 index 000000000..c8df7b595 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-datatypes.yang @@ -0,0 +1,45 @@ +module Cisco-IOS-XR-manageability-perfmgmt-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-manageability-perfmgmt-datatypes"; + prefix manageability-perfmgmt-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pid-range { + type uint32 { + range "0..4294967295"; + } + description + "Pid range"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper-sub1.yang new file mode 100644 index 000000000..70ca1941a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper-sub1.yang @@ -0,0 +1,737 @@ +submodule Cisco-IOS-XR-manageability-perfmgmt-oper-sub1 { + belongs-to Cisco-IOS-XR-manageability-perfmgmt-oper { + prefix Cisco-IOS-XR-manageability-perfmgmt-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR manageability-perfmgmt package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-05 { + description + "changed bandwidth type from 32-bit to 64-bit"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PM-INTERFACE-DATARATE-BAG { + description + "Datarate information"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf input-data-rate { + type uint32; + units "bit/s"; + description + "Input datarate in 1000's of bps"; + } + leaf input-packet-rate { + type uint32; + units "packet/s"; + description + "Input packets per second"; + } + leaf output-data-rate { + type uint32; + units "bit/s"; + description + "Output datarate in 1000's of bps"; + } + leaf output-packet-rate { + type uint32; + units "packet/s"; + description + "Output packets per second"; + } + leaf input-peak-rate { + type uint32; + description + "Peak input datarate"; + } + leaf input-peak-pkts { + type uint32; + description + "Peak input packet rate"; + } + leaf output-peak-rate { + type uint32; + description + "Peak output datarate"; + } + leaf output-peak-pkts { + type uint32; + description + "Peak output packet rate"; + } + leaf bandwidth { + type uint64; + units "kbit/s"; + description + "Bandwidth (in kbps)"; + } + } + + grouping PM-INTERFACE-BASIC-STATS { + description + "PM Interface Basic Counters"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds from UCT"; + } + leaf in-packets { + type uint64; + description + "Packets received"; + } + leaf in-octets { + type uint64; + units "byte"; + description + "Bytes received"; + } + leaf out-packets { + type uint64; + description + "Packets sent"; + } + leaf out-octets { + type uint64; + units "byte"; + description + "Bytes sent"; + } + leaf input-total-drops { + type uint64; + description + "Inbound correct packets discarded"; + } + leaf input-queue-drops { + type uint64; + description + "Input queue drops"; + } + leaf input-total-errors { + type uint64; + description + "Inbound incorrect packets discarded"; + } + leaf output-total-drops { + type uint64; + description + "Outbound correct packets discarded"; + } + leaf output-queue-drops { + type uint64; + description + "Output queue drops"; + } + leaf output-total-errors { + type uint64; + description + "Outbound incorrect packets discarded"; + } + } + + grouping PM-INTERFACE-GENERIC-BAG { + description + "PM Interface Generic Counters"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf in-packets { + type uint64; + description + "Packets received"; + } + leaf in-octets { + type uint64; + units "byte"; + description + "Bytes received"; + } + leaf out-packets { + type uint64; + description + "Packets sent"; + } + leaf out-octets { + type uint64; + units "byte"; + description + "Bytes sent"; + } + leaf in-ucast-pkts { + type uint64; + description + "Unicast packets received"; + } + leaf in-multicast-pkts { + type uint64; + description + "Multicast packets received"; + } + leaf in-broadcast-pkts { + type uint64; + description + "Broadcast packets received"; + } + leaf out-ucast-pkts { + type uint64; + description + "Unicast packets sent"; + } + leaf out-multicast-pkts { + type uint64; + description + "Multicast packets sent"; + } + leaf out-broadcast-pkts { + type uint64; + description + "Broadcast packets sent"; + } + leaf output-total-drops { + type uint32; + description + "Outbound correct packets discarded"; + } + leaf input-total-drops { + type uint32; + description + "Inbound correct packets discarded"; + } + leaf input-queue-drops { + type uint32; + description + "Input queue drops"; + } + leaf input-unknown-proto { + type uint32; + description + "Inbound packets discarded with unknown proto"; + } + leaf output-total-errors { + type uint32; + description + "Outbound incorrect packets discarded"; + } + leaf output-underrun { + type uint32; + description + "Output underruns"; + } + leaf input-total-errors { + type uint32; + description + "Inbound incorrect packets discarded"; + } + leaf input-crc { + type uint32; + description + "Inbound packets discarded with incorrect CRC"; + } + leaf input-overrun { + type uint32; + description + "Input overruns"; + } + leaf input-frame { + type uint32; + description + "Inbound framing errors"; + } + } + + grouping PM-BGP-NBR-BAG { + description + "PM BGP Neighbor Information"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf input-messages { + type uint32; + description + "Number of messages received"; + } + leaf output-messages { + type uint32; + description + "Number of messages sent"; + } + leaf input-update-messages { + type uint32; + description + "Number of update messages received"; + } + leaf output-update-messages { + type uint32; + description + "Number of update messages sent"; + } + leaf conn-established { + type uint32; + description + "Number of times the connection was established"; + } + leaf conn-dropped { + type uint32; + description + "Number of times connection was dropped"; + } + leaf errors-received { + type uint32; + description + "Number of error notifications received on the + connection"; + } + leaf errors-sent { + type uint32; + description + "Number of error notifications sent on the + connection"; + } + } + + grouping PM-NODE-MEM-BAG { + description + "PM System Resources Memory Information"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf curr-memory { + type uint32; + units "byte"; + description + "Current application memory (Bytes) in use"; + } + leaf peak-memory { + type uint32; + units "megabyte"; + description + "Max. system memory (MBytes) used since bootup"; + } + } + + grouping PM-NODE-PROCESS-BAG { + description + "PM Process CPU and Memory Information"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf peak-memory { + type uint32; + units "kilobyte"; + description + "Max. dynamic memory (KBytes) used since startup + time"; + } + leaf average-cpu-used { + type uint32; + description + "Average %CPU utilization"; + } + leaf no-threads { + type uint32; + description + "Number of threads"; + } + } + + grouping PM-NODE-CPU-BAG { + description + "PM System Resources CPU Information"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf no-processes { + type uint32; + description + "Number of processes in the system"; + } + leaf average-cpu-used { + type uint32; + description + "Average system %CPU utilization"; + } + } + + grouping PM-MPLS-LDP-BAG { + description + "PM MPLS LDP Neighbor bag"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf total-msgs-sent { + type uint16; + description + "Total messages sent"; + } + leaf total-msgs-rcvd { + type uint16; + description + "Total messages received"; + } + leaf init-msgs-sent { + type uint16; + description + "Init messages sent"; + } + leaf init-msgs-rcvd { + type uint16; + description + "Tnit messages received"; + } + leaf address-msgs-sent { + type uint16; + description + "Address messages sent"; + } + leaf address-msgs-rcvd { + type uint16; + description + "Address messages received"; + } + leaf address-withdraw-msgs-sent { + type uint16; + description + "Address withdraw messages sent"; + } + leaf address-withdraw-msgs-rcvd { + type uint16; + description + "Address withdraw messages received"; + } + leaf label-mapping-msgs-sent { + type uint16; + description + "Label mapping messages sent"; + } + leaf label-mapping-msgs-rcvd { + type uint16; + description + "Label mapping messages received"; + } + leaf label-withdraw-msgs-sent { + type uint16; + description + "Label withdraw messages sent"; + } + leaf label-withdraw-msgs-rcvd { + type uint16; + description + "Label withdraw messages received"; + } + leaf label-release-msgs-sent { + type uint16; + description + "Label release messages sent"; + } + leaf label-release-msgs-rcvd { + type uint16; + description + "Label release messages received"; + } + leaf notification-msgs-sent { + type uint16; + description + "Notification messages sent"; + } + leaf notification-msgs-rcvd { + type uint16; + description + "Notification messages received"; + } + leaf keepalive-msgs-sent { + type uint16; + description + "Keepalive messages sent"; + } + leaf keepalive-msgs-rcvd { + type uint16; + description + "Keepalive messages received"; + } + } + + grouping PM-OSPF-V3PROTO-BAG { + description + "PM OSPF v3 Protocol Information"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf input-packets { + type uint32; + description + "Total number of packets received"; + } + leaf output-packets { + type uint32; + description + "Total number of packets sent"; + } + leaf input-hello-packets { + type uint32; + description + "Number of Hello packets received"; + } + leaf output-hello-packets { + type uint32; + description + "Number of Hello packets sent"; + } + leaf input-db-ds { + type uint32; + description + "Number of DBD packets received"; + } + leaf input-db-ds-lsa { + type uint32; + description + "Number of LSA received in DBD packets"; + } + leaf output-db-ds { + type uint32; + description + "Number of DBD packets sent"; + } + leaf output-db-ds-lsa { + type uint32; + description + "Number of LSA sent in DBD packets"; + } + leaf input-ls-requests { + type uint32; + description + "Number of LS Requests received"; + } + leaf input-ls-requests-lsa { + type uint32; + description + "Number of LSA received in LS Requests"; + } + leaf output-ls-requests { + type uint32; + description + "Number of LS Requests sent"; + } + leaf output-ls-requests-lsa { + type uint32; + description + "Number of LSA sent in LS Requests"; + } + leaf input-lsa-updates { + type uint32; + description + "Number of LSA Updates received"; + } + leaf input-lsa-updates-lsa { + type uint32; + description + "Number of LSA received in LSA Updates"; + } + leaf output-lsa-updates { + type uint32; + description + "Number of LSA Updates sent"; + } + leaf output-lsa-updates-lsa { + type uint32; + description + "Number of LSA sent in LSA Updates"; + } + leaf input-lsa-acks { + type uint32; + description + "Number of LSA Acknowledgements received"; + } + leaf input-lsa-acks-lsa { + type uint32; + description + "Number of LSA received in LSA Acknowledgements"; + } + leaf output-lsa-acks { + type uint32; + description + "Number of LSA Acknowledgements sent"; + } + leaf output-lsa-acks-lsa { + type uint32; + description + "Number of LSA sent in LSA Acknowledgements"; + } + } + + grouping PM-OSPF-V2PROTO-BAG { + description + "PM OSPF v2 Protocol Information"; + leaf time-stamp { + type uint64; + units "second"; + description + "Timestamp of sample in seconds drom UCT"; + } + leaf input-packets { + type uint32; + description + "Total number of packets received"; + } + leaf output-packets { + type uint32; + description + "Total number of packets sent"; + } + leaf input-hello-packets { + type uint32; + description + "Number of Hello packets received"; + } + leaf output-hello-packets { + type uint32; + description + "Number of Hello packets sent"; + } + leaf input-db-ds { + type uint32; + description + "Number of DBD packets received"; + } + leaf input-db-ds-lsa { + type uint32; + description + "Number of LSA received in DBD packets"; + } + leaf output-db-ds { + type uint32; + description + "Number of DBD packets sent"; + } + leaf output-db-ds-lsa { + type uint32; + description + "Number of LSA sent in DBD packets"; + } + leaf input-ls-requests { + type uint32; + description + "Number of LS Requests received"; + } + leaf input-ls-requests-lsa { + type uint32; + description + "Number of LSA received in LS Requests"; + } + leaf output-ls-requests { + type uint32; + description + "Number of LS Requests sent"; + } + leaf output-ls-requests-lsa { + type uint32; + description + "Number of LSA sent in LS Requests"; + } + leaf input-lsa-updates { + type uint32; + description + "Number of LSA Updates received"; + } + leaf input-lsa-updates-lsa { + type uint32; + description + "Number of LSA received in LSA Updates"; + } + leaf output-lsa-updates { + type uint32; + description + "Number of LSA Updates sent"; + } + leaf output-lsa-updates-lsa { + type uint32; + description + "Number of LSA sent in LSA Updates"; + } + leaf input-lsa-acks { + type uint32; + description + "Number of LSA Acknowledgements received"; + } + leaf input-lsa-acks-lsa { + type uint32; + description + "Number of LSA received in LSA Acknowledgements"; + } + leaf output-lsa-acks { + type uint32; + description + "Number of LSA Acknowledgements sent"; + } + leaf output-lsa-acks-lsa { + type uint32; + description + "Number of LSA sent in LSA Acknowledgements"; + } + leaf checksum-errors { + type uint32; + description + "Number of packets received with checksum errors"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper.yang new file mode 100644 index 000000000..194cc8e31 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-manageability-perfmgmt-oper.yang @@ -0,0 +1,419 @@ +module Cisco-IOS-XR-manageability-perfmgmt-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-manageability-perfmgmt-oper"; + prefix manageability-perfmgmt-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-manageability-perfmgmt-oper-sub1 { + revision-date 2020-11-05; + } + + 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 manageability-perfmgmt package operational data. + + This module contains definitions + for the following management objects: + perf-mgmt: Performance Management agent operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-05 { + description + "changed bandwidth type from 32-bit to 64-bit"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pm-process-id { + type uint32; + description + "Pm process id"; + } + + typedef Pm-sample-id { + type uint32; + description + "Pm sample id"; + } + + grouping MPLS { + description + "Common node of periodic, monitor"; + container mpls { + description + "Collected MPLS data"; + container ldp-neighbors { + description + "LDP neighbors for which statistics are + collected"; + list ldp-neighbor { + key "nbr"; + description + "Samples for a particular LDP neighbor"; + container samples { + description + "Samples for a particular LDP neighbor"; + list sample { + key "sample-id"; + description + "LDP neighbor statistics sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-MPLS-LDP-BAG; + } + } + leaf nbr { + type inet:ipv4-address-no-zone; + description + "Neighbor Address"; + } + } + } + } + } + + grouping INTERFACE { + description + "Common node of periodic, monitor"; + container interface { + description + "Collected Interface data"; + container generic-counter-interfaces { + description + "Interfaces for which Generic Counters are + collected"; + list generic-counter-interface { + key "interface-name"; + description + "Samples for a particular interface"; + container samples { + description + "Generic Counter samples for an interface"; + list sample { + key "sample-id"; + description + "Generic Counters sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-INTERFACE-GENERIC-BAG; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + container basic-counter-interfaces { + description + "Interfaces for which Basic Counters are + collected"; + list basic-counter-interface { + key "interface-name"; + description + "Samples for a particular interface"; + container samples { + description + "Basic Counter samples for an interface"; + list sample { + key "sample-id"; + description + "Basic Counters sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-INTERFACE-BASIC-STATS; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + container data-rate-interfaces { + description + "Interfaces for which Data Rates are collected"; + list data-rate-interface { + key "interface-name"; + description + "Samples for a particular interface"; + container samples { + description + "Data Rate samples for an interface"; + list sample { + key "sample-id"; + description + "Data Rates sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-INTERFACE-DATARATE-BAG; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + } + } + + grouping NODE-TABLE { + description + "Common node of periodic, monitor"; + container nodes { + description + "Nodes for which data is collected"; + list node { + key "node-id"; + description + "Node Instance"; + container sample-xr { + description + "Node CPU data"; + list sample { + key "sample-id"; + description + "Node CPU data sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-NODE-CPU-BAG; + } + } + container processes { + description + "Processes data"; + list process { + key "process-id"; + description + "Process data"; + container samples { + description + "Process data"; + list sample { + key "sample-id"; + description + "Process data sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-NODE-PROCESS-BAG; + } + } + leaf process-id { + type Pm-process-id; + description + "Process ID"; + } + } + } + container samples { + description + "Node Memory data"; + list sample { + key "sample-id"; + description + "Node Memory data sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-NODE-MEM-BAG; + } + } + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + + grouping OSPF { + description + "Common node of periodic, monitor"; + container ospf { + description + "Collected OSPF data"; + container ospfv2-protocol-instances { + description + "OSPF v2 instances for which protocol statistics + are collected"; + list ospfv2-protocol-instance { + key "instance-name"; + description + "Protocol samples for a particular OSPF v2 + instance"; + container samples { + description + "Sample Table for an OSPV v2 instance"; + list sample { + key "sample-id"; + description + "Generic Counters sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-OSPF-V2PROTO-BAG; + } + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OSPF Instance Name"; + } + } + } + container ospfv3-protocol-instances { + description + "OSPF v3 instances for which protocol statistics + are collected"; + list ospfv3-protocol-instance { + key "instance-name"; + description + "Protocol samples for a particular OSPF v3 + instance"; + container samples { + description + "Sample Table for an OSPV v3 instance"; + list sample { + key "sample-id"; + description + "Generic Counters sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-OSPF-V3PROTO-BAG; + } + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "OSPF Instance Name"; + } + } + } + } + } + + grouping BGP { + description + "Common node of periodic, monitor"; + container bgp { + description + "Collected BGP data"; + container bgp-neighbors { + description + "Neighbors for which statistics are collected"; + list bgp-neighbor { + key "ip-address"; + description + "Samples for particular neighbor"; + container samples { + description + "Sample Table for a BGP neighbor"; + list sample { + key "sample-id"; + description + "Neighbor statistics sample"; + leaf sample-id { + type Pm-sample-id; + description + "Sample ID"; + } + uses PM-BGP-NBR-BAG; + } + } + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "BGP Neighbor Identifier"; + } + } + } + } + } + + container perf-mgmt { + config false; + description + "Performance Management agent operational data"; + container periodic { + description + "Data from periodic requests"; + uses OSPF; + uses MPLS; + uses NODE-TABLE; + uses BGP; + uses INTERFACE; + } + container monitor { + description + "Data from monitor (one history period) requests"; + uses OSPF; + uses MPLS; + uses NODE-TABLE; + uses BGP; + uses INTERFACE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mdrv-lib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mdrv-lib-cfg.yang new file mode 100644 index 000000000..45c31a7c6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mdrv-lib-cfg.yang @@ -0,0 +1,81 @@ +module Cisco-IOS-XR-mdrv-lib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mdrv-lib-cfg"; + prefix mdrv-lib-cfg; + + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 mdrv-lib package configuration. + + This module contains definitions + for the following management objects: + fast-shutdown: Fast Shutdown configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf fast-shutdown { + type empty; + description + "Enable Fast Shutdown for this interface"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf mac-addr { + type yang:mac-address; + description + "Set the Mac address on an interface"; + } + } + container fast-shutdown { + description + "Fast Shutdown configuration"; + leaf ethernet { + type empty; + description + "Enable Fast Shutdown for all Ethernet interfaces"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper-sub1.yang new file mode 100644 index 000000000..b7b3a4a9b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper-sub1.yang @@ -0,0 +1,83 @@ +submodule Cisco-IOS-XR-mediasvr-linux-oper-sub1 { + belongs-to Cisco-IOS-XR-mediasvr-linux-oper { + prefix Cisco-IOS-XR-mediasvr-linux-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mediasvr-linux package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-11 { + description + "Breaking show media result string into fields"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHOW-MEDIA-EDM-PARTITION { + description + "SHOW MEDIA EDM PARTITION"; + leaf name-xr { + type string { + length "0..32"; + } + description + "string name"; + } + leaf size { + type string { + length "0..16"; + } + description + "string size"; + } + leaf used { + type string { + length "0..16"; + } + description + "string used"; + } + leaf percent { + type string { + length "0..16"; + } + units "percentage"; + description + "string percent"; + } + leaf avail { + type string { + length "0..16"; + } + description + "string avail"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper.yang new file mode 100644 index 000000000..13be8fab7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mediasvr-linux-oper.yang @@ -0,0 +1,82 @@ +module Cisco-IOS-XR-mediasvr-linux-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mediasvr-linux-oper"; + prefix mediasvr-linux-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mediasvr-linux-oper-sub1 { + revision-date 2020-07-11; + } + + 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 mediasvr-linux package operational data. + + This module contains definitions + for the following management objects: + media-svr: Media server CLI operations + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-11 { + description + "Breaking show media result string into fields"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container media-svr { + config false; + description + "Media server CLI operations"; + container nodes { + description + "Media Info for All Nodes"; + list node { + key "node"; + description + "Media Info for a Node"; + leaf node { + type xr:Node-id; + description + "Node Location"; + } + list partition { + key "name"; + description + "Media Partition Info"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Partition Name"; + } + uses SHOW-MEDIA-EDM-PARTITION; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub1.yang new file mode 100644 index 000000000..cf33c08be --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub1.yang @@ -0,0 +1,2311 @@ +submodule Cisco-IOS-XR-mfwd-oper-sub1 { + belongs-to Cisco-IOS-XR-mfwd-oper { + prefix Cisco-IOS-XR-mfwd-oper; + } + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mfwd-oper-sub2 { + revision-date 2022-04-29; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mfwd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-29 { + description + "Backward compatible addition in mfwd_bvi_mroute_bag and new bag table_name + 2021-11-19 + Backward compatible addition in ipv4_mfwd_connection and new bag mfib_timespec"; + semver:module-version "1.2.0"; + } + revision 2020-10-11 { + description + "Backward compatible addition in leaf ul-interface, customer-mdt-data-tree-sidacl-name, is-customer-mdt-data-tree-sidacl-present and ,is-all-customer-routes-for-tree-sid-data-mdt"; + semver:module-version "1.1.0"; + } + revision 2019-08-27 { + description + "Initial IOS-XR MFWD native model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Rsi-vrf-id { + type uint32; + description + "Rsi vrf id"; + } + + typedef Ipv4-mfwd-intf-create-state { + type enumeration { + enum "interface-state-unknown" { + value 0; + description + "Interface create status unknown"; + } + enum "interface-create-received" { + value 1; + description + "Interface created"; + } + enum "interface-delete-received" { + value 2; + description + "Interface deleted"; + } + } + description + "Ipv4 mfwd intf create state"; + } + + typedef Ipv4-mfwd-idb-intf { + type enumeration { + enum "physical-interface" { + value 0; + description + "Physical interface"; + } + enum "vlan-over-bundle-interface" { + value 1; + description + "Vlan over Bundle interface"; + } + enum "layer3-tunnel-interface" { + value 2; + description + "Layer 3 tunnel interface"; + } + enum "layer2-bundle-interface" { + value 3; + description + "Layer 2 bundle interface"; + } + enum "loopback-interface" { + value 4; + description + "Loopback interface"; + } + enum "service-virtual-interface" { + value 5; + description + "Service virtual interface"; + } + enum "mdt-interface" { + value 6; + description + "MDT interface"; + } + enum "unsupported-interface" { + value 7; + description + "Unsupported interface"; + } + enum "bridged-virtual-interface" { + value 8; + description + "Bridged virtual interface"; + } + enum "pointto-point-protocol-over-ethernet-interface" { + value 9; + description + "Point to Point Protocol Over Ethernet"; + } + enum "psuedo-wire-ether-interface" { + value 10; + description + "Psuedo Wire Ether Interface"; + } + enum "vlan-over-psuedo-wire-interface" { + value 11; + description + "Vlan over Psuedo Wire Interface"; + } + enum "csi-interface" { + value 12; + description + "CSI Interface"; + } + } + description + "Ipv4 mfwd idb intf"; + } + + typedef Ipv4-mfwd-show-encap { + type enumeration { + enum "any" { + value 0; + description + "Any Type"; + } + enum "lsmid" { + value 1; + description + "LSM Type"; + } + enum "teifh" { + value 2; + description + "TE Type"; + } + enum "gre" { + value 3; + description + "GRE Type"; + } + enum "nh" { + value 4; + description + "Nexthop Type"; + } + enum "timofrr" { + value 5; + description + "MOFRR Type"; + } + } + description + "Ipv4 mfwd show encap"; + } + + typedef Mfwd-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + typedef Ipv4-mfwd-show-ctid { + type enumeration { + enum "any" { + value 0; + description + "any"; + } + enum "ipv4" { + value 1; + description + "ipv4"; + } + enum "ipv6" { + value 2; + description + "ipv6"; + } + enum "none" { + value 3; + description + "none"; + } + } + description + "Ipv4 mfwd show ctid"; + } + + typedef Ipv4-mfwd-tbl-location { + type enumeration { + enum "remote-table" { + value 0; + description + "Remote table"; + } + enum "pending-local-table" { + value 1; + description + "Pending local table"; + } + enum "local-table" { + value 2; + description + "Local table"; + } + } + description + "Ipv4 mfwd tbl location"; + } + + typedef Ipv4-mfwd-nsf-modes { + type enumeration { + enum "undefined" { + value -1; + description + "undefined"; + } + enum "boot" { + value 0; + description + "boot"; + } + enum "normal" { + value 1; + description + "normal"; + } + enum "no-mfwd" { + value 2; + description + "no mfwd"; + } + enum "mcast-nsf" { + value 3; + description + "mcast nsf"; + } + enum "updating" { + value 4; + description + "updating"; + } + } + description + "Ipv4 mfwd nsf modes"; + } + + grouping MFWD-BVI-INTERFACE-BAG { + description + "MFWD BVI INTERFACE BAG"; + leaf vrf-id { + type Rsi-vrf-id; + description + "Vrf Id"; + } + leaf vrf-name { + type string; + description + "Vrf Name"; + } + } + + grouping IPV4-MFWD-IMDR-BAG { + description + "List of IMDR state"; + leaf imdr-end-of-download-start-received { + type boolean; + description + "IMDR End Of Download Start received state"; + } + leaf fib-end-of-download-received { + type boolean; + description + "FIB End Of Download state"; + } + leaf im-end-of-download-received { + type boolean; + description + "IM End Of Download state"; + } + leaf mfwd-end-of-download-sent { + type boolean; + description + "MFWD End Of Download send state"; + } + } + + grouping IPV4-MFWD-CONNECTION-BAG { + description + "List of connections"; + leaf sync-error { + type boolean; + description + "MFIB PD Programming Sync error flag"; + } + leaf async-error { + type boolean; + description + "MFIB PD Programming Async error flag"; + } + leaf sync-error-update { + type uint64; + description + "Time Sync error state updated"; + } + leaf async-error-update { + type uint64; + description + "Time Async error state updated"; + } + leaf-list connection { + type boolean; + description + "Array containing status of each connection"; + } + } + + grouping IPV4-MFWD-SVD-PENDING-BAG { + description + "SVD Pending table entry"; + leaf pending-table-id { + type uint32; + description + "Table ID"; + } + leaf pending-table-name { + type string; + description + "Table Name"; + } + } + + grouping IPV4-MFWD-SVD-BAG { + description + "MFWD SVD info"; + leaf bcdl-reset-timer { + type uint32; + description + "BCDL reset timer"; + } + leaf is-bcd-just-reset { + type boolean; + description + "BCDL connection state"; + } + leaf is-platform-svd-state { + type boolean; + description + "Platform SVD state"; + } + leaf platform-svd-reason { + type uint32; + description + "Platform SVD update reason"; + } + list pending-local-tbl { + description + "Pending Local table"; + uses IPV4-MFWD-SVD-PENDING-BAG; + } + } + + grouping IPV4-MFWD-ENCAP-BAG { + description + "MFWD Encap Table information"; + container source-xr { + description + "Source address"; + uses IPV4-MFWD-CTID-BAG; + } + container group-prefix { + description + "Group address prefix"; + uses IPV4-MFWD-CTID-BAG; + } + container orig-source { + description + "Orig source address"; + uses MFWD-ADDRTYPE; + } + leaf group-prefix-length { + type uint16; + description + "Group address prefix length"; + } + leaf encapsulation-reference-count { + type uint32; + description + "No of VRF routes using this encap "; + } + leaf mdt-interface { + type xr:Interface-name; + description + "MDT Interface"; + } + leaf associated-table-id { + type uint32; + description + "Associated Table ID"; + } + } + + grouping IPV4-MFWD-COUNTER-BAG { + description + "Counter entry"; + leaf description { + type string { + length "0..128"; + } + description + "Description of the counter"; + } + leaf count { + type uint32; + description + "Value of the counter"; + } + } + + grouping IPV4-MFWD-TABLE-COUNTERS-BAG { + description + "MFIB counters"; + list counters { + description + "Counters in the main MFIB table"; + uses IPV4-MFWD-COUNTER-BAG; + } + } + + grouping IPV4-MFWD-ATTRIB-INTF-BAG { + description + "MFWD Interface level flags"; + leaf is-forward { + type boolean; + description + "Forwarding flag"; + } + leaf is-accept { + type boolean; + description + "Accepting flag"; + } + leaf is-accept-backup { + type boolean; + description + "Backup Accepting flag"; + } + leaf is-internal-copy { + type boolean; + description + "Internal Copy flag"; + } + leaf is-negate-signal { + type boolean; + description + "Negate Signal"; + } + leaf is-donot-preserve { + type boolean; + description + "Don't preserve flag"; + } + leaf is-signal-present { + type boolean; + description + "Signal Present flag"; + } + leaf is-internal-interest { + type boolean; + description + "Internal Interest flag"; + } + leaf is-internal-disinterest { + type boolean; + description + "Internal Disinterest flag"; + } + leaf is-local-interest { + type boolean; + description + "Local Interest flag"; + } + leaf is-local-disinterest { + type boolean; + description + "Local Disinterest flag"; + } + leaf is-decapsulation-interface { + type boolean; + description + "Decaps interface flag"; + } + leaf is-underlying-physical-change { + type boolean; + description + "Underlying physical change flag"; + } + leaf is-encapsulated-interface { + type boolean; + description + "Encapsulated interface flag"; + } + leaf is-egress-interface { + type boolean; + description + "Egress processing flag"; + } + leaf is-mdt-interface { + type boolean; + description + "MDT Interface flag"; + } + leaf is-mldp-mdt-interface { + type boolean; + description + "MLDP MDT Interface flag"; + } + leaf is-rsvp-te-mdt-interface { + type boolean; + description + "RSVP-TE MDT Interface flag"; + } + leaf is-ir-mdt-interface { + type boolean; + description + "IR MDT Interface flag"; + } + leaf is-tr-mdt-interface { + type boolean; + description + "TreeSID MDT Interface flag"; + } + leaf is-mdt-data-triggered { + type boolean; + description + "Data MDT triggered on this interface"; + } + leaf is-label-interface { + type boolean; + description + "Label Interface flag"; + } + leaf is-extranet { + type boolean; + description + "Extranet flag"; + } + leaf turn-around { + type boolean; + description + "Turnaround flag"; + } + leaf amt { + type boolean; + description + "AMT flag"; + } + } + + grouping IPV4-MFWD-INTRF-BAG { + description + "MFIB multicast-forwarding entry"; + container interface-attributes { + description + "Interface attributes"; + uses IPV4-MFWD-ATTRIB-INTF-BAG; + } + leaf type { + type uint32; + description + "Type of Interface"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf ul-interface { + type xr:Interface-name; + description + "Underlying Interface"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf stale-interface { + type boolean; + description + "Interface is stale"; + } + leaf amt-port { + type uint16; + description + "AMT Port"; + } + leaf nexthop { + type inet:ipv4-address; + description + "Nexthop"; + } + leaf amt-nexthop { + type inet:ipv4-address; + description + "AMT Nexthop"; + } + leaf amt-mtu { + type uint16; + description + "AMT MTU"; + } + leaf amt-tos { + type uint8; + description + "AMT TOS"; + } + leaf amt-ttl { + type uint8; + description + "AMT TTL"; + } + leaf amt-source { + type inet:ipv4-address; + description + "AMT Source"; + } + leaf amt-id { + type uint32; + description + " AMT ID"; + } + leaf amt-in-pkts { + type uint64; + description + "Incoming Packtes AMT intterface"; + } + leaf amt-in-byets { + type uint64; + units "byte"; + description + "Incoming Bytes on AMT intterface"; + } + leaf amt-out-pkts { + type uint64; + description + "Outgoing Packtes on AMT intterface"; + } + leaf amt-out-bytes { + type uint64; + units "byte"; + description + "Outgoing Bytes on AMT intterface"; + } + } + + grouping IPV4-MFWD-ATTRIB-ENTRY-BAG { + description + "MFWD Entry level flags"; + leaf is-domain-local-source { + type boolean; + description + "Domain-local source flag"; + } + leaf is-source-external { + type boolean; + description + "Source external to domain"; + } + leaf is-signal-by-default-on { + type boolean; + description + "Signal by default"; + } + leaf is-directly-connected-check-set { + type boolean; + description + "Directly connected check"; + } + leaf is-inherit-accept-set { + type boolean; + description + "Inherit Accept information"; + } + leaf is-inherit-from-set { + type boolean; + description + "Inherit from information"; + } + leaf is-drop { + type boolean; + description + "Drop flag"; + } + leaf is-rpf-neighbor-present { + type boolean; + description + "RPF neighbor present flag"; + } + leaf is-multicast-nsf-on { + type boolean; + description + "Multicast NSF flag"; + } + leaf is-unicast-nsf-on { + type boolean; + description + "Unicast NSF flag"; + } + leaf is-mdt-encapsulation-on { + type boolean; + description + "MDT Encapsulation flag"; + } + leaf is-mdt-decapsulation-on { + type boolean; + description + "MDT Decapsulation flag"; + } + leaf is-mdt-address-on { + type boolean; + description + "MDT Address flag"; + } + leaf is-threshold-crossed { + type boolean; + description + "Data MDT Threshold Crossed"; + } + leaf is-mdt-handle-set { + type boolean; + description + "MDT Handle flag"; + } + leaf is-conditional-decapsulation { + type boolean; + description + "Conditional Decapsulation flag"; + } + leaf is-packet-decapsulation-true { + type boolean; + description + "Should we decapsulation pkt"; + } + leaf is-packet-decapsulation-true-v6 { + type boolean; + description + "decapsulation pkt with v6 payload"; + } + leaf is-via-lsm { + type boolean; + description + "LSM flag"; + } + leaf is-forward-mpls { + type boolean; + description + "MPLS Forward"; + } + leaf is-extranet { + type boolean; + description + "Extranet flag"; + } + leaf encapsulation-identifier { + type boolean; + description + "Encap-id present"; + } + leaf rpf-identifier { + type boolean; + description + "RPF-id present"; + } + leaf mo-frr-enabled { + type boolean; + description + "MoFRR Enable"; + } + leaf mo-frr-state { + type boolean; + description + "MOFRR State"; + } + leaf mo-frr-primary { + type boolean; + description + "MOFRR Primary"; + } + leaf mo-frr-backup { + type boolean; + description + "MOFRR Backup"; + } + leaf amt { + type boolean; + description + "AMT State"; + } + leaf vx-lan { + type boolean; + description + "VxLAN State"; + } + } + + grouping IPV4-MFWD-ROUTE-BAG { + description + "MFIB multicast-routing entry"; + container source { + description + "Source address"; + uses MFWD-ADDRTYPE; + } + container group-prefix { + description + "Group address prefix"; + uses MFWD-ADDRTYPE; + } + container orig-source { + description + "Orig source address"; + uses MFWD-ADDRTYPE; + } + container entry-attributes { + description + "Routing entry attributes"; + uses IPV4-MFWD-ATTRIB-ENTRY-BAG; + } + container parent-group-prefix { + description + "Inherit from Group address prefix"; + uses MFWD-ADDRTYPE; + } + container lsm-rpf-address { + description + "LSM RPF Address"; + uses MFWD-ADDRTYPE; + } + container mdt-default-source { + description + "Source address"; + uses IPV4-MFWD-MDTID-BAG; + } + container mdt-default-group-prefix { + description + "Group address prefix"; + uses IPV4-MFWD-MDTID-BAG; + } + leaf rsi-table-id { + type uint32; + description + "RSI Table ID"; + } + leaf group-prefix-length { + type uint16; + description + "Group address prefix length"; + } + leaf route-version { + type uint16; + description + "Route version"; + } + leaf stale-route { + type boolean; + description + "The route is stale"; + } + leaf incomplete-route { + type boolean; + description + "The route is incomplete"; + } + leaf time-last-used { + type string; + description + "Last time entry was used"; + } + leaf bytes-out { + type uint64; + units "byte"; + description + "No of bytes out"; + } + leaf bytes-rep { + type uint64; + units "byte"; + description + "No of bytes replicated"; + } + leaf packets-in { + type uint32; + description + "No of packets in"; + } + leaf packets-out { + type uint32; + description + "No of packets out"; + } + leaf packets-rep { + type uint32; + description + "No of packets replicated"; + } + leaf packets-failed-rpf { + type uint32; + description + "No of packets which failed rpf"; + } + leaf packets-failed-ttl { + type uint32; + description + "No of packets which failed TTL check"; + } + leaf outgoing-list-failure-packets { + type uint32; + description + "No of packets dropped due to null olist"; + } + leaf encapsulation-ratelimit-drops { + type uint32; + description + "No of encap packets dropped/ratelimited"; + } + leaf other-failures { + type uint32; + description + "No of packets dropped due to misc failures"; + } + leaf hardware-ingress-packets-in { + type uint64; + description + "No of packets input at ingress metro"; + } + leaf hardware-ingress-bytes-in { + type uint64; + units "byte"; + description + "No of bytes input on this interface"; + } + leaf hardware-ingres-packets-drop { + type uint64; + description + "No of packets dropped at ingress metro"; + } + leaf hardware-egress-packets-out { + type uint64; + description + "No of packets sent out at egress metro"; + } + leaf hardware-egress-packets-rep { + type uint64; + description + "No of packets replicated at egress metro"; + } + leaf hardware-egress-packets-drop { + type uint64; + description + "No of packets dropped at egress metro"; + } + leaf hardware-egress-byte-out { + type uint64; + units "byte"; + description + "No of bytes sent out at egress metro"; + } + leaf hardware-egress-byte-rep { + type uint64; + units "byte"; + description + "No of bytes replicated at egress metro"; + } + leaf is-hardware-ingress-input-counter-valid { + type boolean; + description + "Is input counter at ingress metro valid ?"; + } + leaf is-hardware-ingress-drop-counter-valid { + type boolean; + description + "Is drop counter at ingress metro valid ?"; + } + leaf is-hardware-ingress-bytes-counter-valid { + type boolean; + description + "Is bytes counter at egress metro valid ?"; + } + leaf is-hardware-egress-output-counter-valid { + type boolean; + description + "Is output counter at egress metro valid ?"; + } + leaf is-hardware-egress-replicate-counter-valid { + type boolean; + description + "Is replicated counter at egress metro valid ?"; + } + leaf is-hardware-egress-drop-counter-valid { + type boolean; + description + "Is drop counter at egress metro valid ?"; + } + leaf is-hardware-egress-fwd-bytes-counter-valid { + type boolean; + description + "Is bytes counter at egress metro valid ?"; + } + leaf is-hardware-egress-rep-bytes-counter-valid { + type boolean; + description + "Is bytes replicated counter at egress metro + valid ?"; + } + leaf parent-group-prefix-length { + type uint16; + description + "Inherit from Group address prefix length"; + } + leaf mo-frr-active { + type boolean; + description + "MoFRR Active"; + } + leaf mo-frr-sequence-number { + type uint32; + description + "MoFRR Sequence Number"; + } + leaf new-mo-frr-active { + type boolean; + description + "New MoFRR Active"; + } + leaf new-mo-frr-sequence-number { + type uint32; + description + "New MoFRR Sequence Number"; + } + leaf mo-frrhw-event { + type boolean; + description + "Is this an MoFRR Hardware Event"; + } + leaf mdt-interface { + type xr:Interface-name; + description + "MDT Interface"; + } + leaf is-mdt-encapsulation-info { + type boolean; + description + "MDT Encap information"; + } + leaf mdt-default-group-prefix-length { + type uint16; + description + "Group address prefix length"; + } + leaf mdt-associated-table-id { + type uint32; + description + "Associated Table (vrf or Core)"; + } + leaf mdt-associated-remote-table-id { + type uint32; + description + "Associated Remote Table (vrf or Core)"; + } + leaf is-mdt-data-rate-probe { + type boolean; + description + "Are we probing for rate for Data MDT ?"; + } + leaf is-mdt-data-rate-in-list { + type boolean; + description + "Are we in the list for rate calc for Data MDT ?"; + } + leaf is-mdt-data-rate-throttle { + type boolean; + description + "Is Data MDT rate calculation throttled ?"; + } + leaf mdt-data-throttle-left { + type uint32; + description + "Time remaining for throttle to be removed ?"; + } + leaf mdt-decapsulation-egress-count { + type uint32; + description + "No. of pkts decapped on SW egress node"; + } + leaf mdt-encapsulation-ingress-v4-count { + type uint32; + description + "No. of v4 pkts encapped on SW ingress node"; + } + leaf mdt-encapsulation-ingress-v6-count { + type uint32; + description + "No. of v6 pkts encapped on SW ingress node"; + } + leaf incoming-traffic-rate { + type uint64; + description + "Incoming traffic rate when MDT is forwarding"; + } + leaf is-rate-per-route { + type boolean; + description + "Are we doing rate per route ?"; + } + leaf is-prefix-accounting { + type boolean; + description + "Are we doing stats per route ?"; + } + leaf annotation { + type string; + description + "Platform annotation"; + } + leaf is-hardware-egress-bits-per-seconds-average-rate { + type uint64; + units "bit/s"; + description + "Average bps out rate"; + } + leaf is-hardware-ingress-bits-per-seconds-average-rate { + type uint64; + units "bit/s"; + description + "Average bps in rate"; + } + leaf is-hardware-egress-packet-per-seconds-average-rate { + type uint64; + description + "Average pps out rate"; + } + leaf is-hardware-ingress-packet-per-seconds-average-rate { + type uint64; + description + "Average pps in rate"; + } + leaf is-hardware-egress-bytes-rate-counte-valid { + type boolean; + description + "Is egress bits per sec rate valid?"; + } + leaf is-hardware-egress-packets-rate-counter-valid { + type boolean; + description + "Is egress packet per sec rate valid?"; + } + leaf is-hardware-ingress-bytes-rate-counter-valid { + type boolean; + description + "Is ingress bits per sec rate valid?"; + } + leaf is-hardware-ingress-packets-rate-counter-valid { + type boolean; + description + "Is ingress packet per sec rate valid?"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf rpf-table-id { + type uint32; + description + "RPF TID"; + } + leaf route-e-gcount { + type uint16; + description + "Route EG count"; + } + leaf route-encap-id { + type uint32; + description + "Encap Id"; + } + leaf rpf-id { + type uint32; + description + "RPF Id"; + } + leaf local-receiver { + type boolean; + description + "Local Receiver Flag"; + } + leaf turn-around { + type boolean; + description + "Turn Around Flag"; + } + leaf next-amt-route { + type uint64; + description + "Next AMT route"; + } + leaf prev-amt-route { + type uint64; + description + "Prev AMT route"; + } + leaf in-amt-route-list { + type boolean; + description + "Are we in the list of AMT route ?"; + } + list interface { + description + "Interfaces"; + uses IPV4-MFWD-INTRF-BAG; + } + } + + grouping IPV4-MFWD-BUNDLE-MEMBER-BAG { + description + "MFIB bundle member entry"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf ul-identifier { + type If-ul-id; + description + "UL ID"; + } + } + + grouping IPV4-MFWD-BUNDLE-INTF-BAG { + description + "MFIB bundle interface entry"; + leaf bundle-member-count { + type uint32; + description + "No. of bundle members"; + } + list member { + description + "List of currently local and active members of + the bundle"; + uses IPV4-MFWD-BUNDLE-MEMBER-BAG; + } + } + + grouping IPV4-MFWD-TUNNEL-INTF-BAG { + description + "MFIB tunnel interface entry"; + leaf is-active-tunnel { + type boolean; + description + "Is this interface an active tunnel"; + } + } + + grouping IPV4-MFWD-INTF-BAG { + description + "MFIB interface entry"; + leaf interface { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf is-interface-local { + type boolean; + description + "Is interface local to the node ?"; + } + leaf multicast-packets-in { + type uint64; + description + "No. of multicast packets in"; + } + leaf multicast-packets-out { + type uint64; + description + "No. of multicast packets out"; + } + leaf ttl-threshold { + type uint8; + description + "Multicast TTL threshold"; + } + leaf referencecount { + type uint32; + description + "Referencecount of times this interface is + referenced"; + } + leaf is-multicast-interface-enabled { + type boolean; + description + "Is interface multicast enabled"; + } + } + + grouping IPV4-MFWD-INTF-DETAIL-BAG { + description + "MFIB interface detailed entry"; + container interface-info { + description + "Basic interface information"; + uses IPV4-MFWD-INTF-BAG; + } + container tunnel-info { + description + "Tunnel interface information"; + uses IPV4-MFWD-TUNNEL-INTF-BAG; + } + container bundle-info { + description + "Bundle interface information"; + uses IPV4-MFWD-BUNDLE-INTF-BAG; + } + leaf interface { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf vrf-id { + type uint32; + description + "RSI VRF ID"; + } + leaf rsi-table-id { + type uint32; + description + "RSI Table ID"; + } + leaf route-count { + type uint32; + description + "No of routes associated with this interface"; + } + leaf is-explicit-enable { + type boolean; + description + "Is multicast explicitly enabled on the interface"; + } + leaf boundary-acl-name { + type string; + description + "Boundary ACL"; + } + leaf type { + type Ipv4-mfwd-idb-intf; + description + "Interface type"; + } + leaf is-multicast-adjacency-present { + type boolean; + description + "Is adjacency known on this interface ?"; + } + leaf create-status { + type Ipv4-mfwd-intf-create-state; + description + "The create status of this interface"; + } + leaf bundle-parent { + type xr:Interface-name; + description + "Bundle I/F if this I/F is member of the bundle"; + } + leaf underlying-interface { + type xr:Interface-name; + description + "Underlying interface"; + } + leaf mdt-mtu { + type uint32; + description + "MDT MTU"; + } + leaf remote-mdt-mtu { + type uint32; + description + "Remote MDT MTU"; + } + leaf special-referencecount { + type uint32; + description + "Count of Special Updates using this MDT + interface"; + } + leaf mh-referencecount { + type uint32; + description + "Count of Core routes with MH flag & using this + MDT interface"; + } + leaf mi-referencecount { + type uint32; + description + "Count of VRF routes with MI flag MDT interface"; + } + leaf is-data-plane-local { + type boolean; + description + "Is the dataplane for this interface local ?"; + } + leaf mcast-intf-config-vrf-set { + type boolean; + description + "Multicast Interface configuration VRF present"; + } + leaf mcast-intf-config-vrf-error { + type boolean; + description + "Multicast Interface configuration VRF error"; + } + leaf mcast-intf-config-vrf-name { + type string; + description + "Multicast Interface configuration VRF Name"; + } + leaf in-name-tree { + type boolean; + description + "Is interface present in global name tree"; + } + leaf learned-via-gsp { + type boolean; + description + "Is interface learned via gsp"; + } + leaf stale-im { + type boolean; + description + "Does interface has stale im info"; + } + leaf intf-flag { + type uint8; + description + "Interface flag"; + } + } + + grouping IPV4-MFWD-ENCAP-TIMOFRR-BAG { + description + "MFWD Encap Id TIMOFRR"; + container source-address { + description + "Core Source address"; + uses IPV4-MFWD-CTID-BAG; + } + container group-address { + description + "Core Group address"; + uses IPV4-MFWD-CTID-BAG; + } + } + + grouping IPV4-MFWD-ENCAP-NH-BAG { + description + "MFWD encap Id NH"; + leaf next-hop { + type inet:ipv4-address; + description + "Next hop address"; + } + } + + grouping IPV4-MFWD-ENCAP-GRE-BAG { + description + "MFWD Encap Id GRE"; + container source-address { + description + "Core Source address"; + uses IPV4-MFWD-CTID-BAG; + } + container group-address { + description + "Core Group address"; + uses IPV4-MFWD-CTID-BAG; + } + } + + grouping IPV4-MFWD-SHOW-ENCAP { + description + "IPV4 MFWD SHOW ENCAP"; + container encap-gre { + when "../type = 'gre'" { + description + "../Type = 'gre'"; + } + description + "GRE"; + uses IPV4-MFWD-ENCAP-GRE-BAG; + } + container encap-nh { + when "../type = 'nh'" { + description + "../Type = 'nh'"; + } + description + "NH"; + uses IPV4-MFWD-ENCAP-NH-BAG; + } + container encap-timofrr { + when "../type = 'timofrr'" { + description + "../Type = 'timofrr'"; + } + description + "TIMOFRR"; + uses IPV4-MFWD-ENCAP-TIMOFRR-BAG; + } + leaf type { + type Ipv4-mfwd-show-encap; + description + "Type"; + } + leaf lsm-id { + when "../type = 'lsmid'" { + description + "../Type = 'lsmid'"; + } + type uint32; + description + "Core LSM ID"; + } + leaf te-ifhandle { + when "../type = 'teifh'" { + description + "../Type = 'teifh'"; + } + type xr:Interface-name; + description + "Core TE Ifhandle"; + } + } + + grouping IPV4-MFWD-ENCAPLEAF-BAG { + description + "MFWD encap leaf entry"; + container type { + description + "Encap Leaf Type"; + uses IPV4-MFWD-SHOW-ENCAP; + } + leaf leaf-tr { + type boolean; + description + "Encap Leaf Turnaround"; + } + } + + grouping IPV4-MFWD-ENCAPID-BAG { + description + "MFWD encap id entry"; + leaf encap-id-xr { + type uint32; + description + "Encap ID"; + } + leaf stale-flag { + type boolean; + description + "Stale flag"; + } + leaf encap-lookup-flag { + type boolean; + description + "IP Lookup flag"; + } + leaf encap-route-count { + type uint32; + description + "Number of Routes using this Encap"; + } + leaf interface-e-gcount { + type uint32; + description + "Number of egress interfaces using this encapid"; + } + leaf interface-eg-from-v6 { + type boolean; + description + "Egress interfaces indicated by V6"; + } + leaf leaf-count { + type uint32; + description + "Number of Encap OLEs"; + } + leaf vr-flite-flag { + type boolean; + description + "MRIB Update VRFLite"; + } + leaf v6vr-flite-flag { + type boolean; + description + "MRIB Update v6 VRF lite"; + } + list leave { + description + "Encap Leafs"; + uses IPV4-MFWD-ENCAPLEAF-BAG; + } + } + + grouping IPV4-MFWD-ROUTE-SUMM-BAG { + description + "MFIB Route Summary"; + leaf groutes-count { + type uint32; + description + "No. of (*,G) routes"; + } + leaf sg-routes-count { + type uint32; + description + "No. of (S,G) routes"; + } + leaf groutes-stale-count { + type uint32; + description + "No. of stale (*,G) routes"; + } + leaf sg-routes-stale-count { + type uint32; + description + "No. of stale (S,G) routes"; + } + leaf groutes-incomplete-count { + type uint32; + description + "No. of incomplete (*,G) routes"; + } + leaf sg-routes-incomplete-count { + type uint32; + description + "No. of incomplete (S,G) routes"; + } + } + + grouping IPV4-MFWD-REGDB-TIMOFRR-BAG { + description + "MFWD encap reg TI MOFRR entry"; + container source-address { + description + "Core Source address"; + uses IPV4-MFWD-CTID-BAG; + } + container group-address { + description + "Core Group address"; + uses IPV4-MFWD-CTID-BAG; + } + leaf is-timofrr-core-valid { + type boolean; + description + "Is TI MOFRR Core Valid"; + } + } + + grouping IPV4-MFWD-REGDB-NH-BAG { + description + "MFWD encap reg NH entry"; + leaf next-hop { + type inet:ipv4-address; + description + "Next hop address"; + } + } + + grouping IPV4-MFWD-CTID-UNION { + description + "MRIB Core Tree ID"; + leaf mib-type { + type Ipv4-mfwd-show-ctid; + description + "MIBType"; + } + leaf ipv4ctid { + when "../mib-type = 'ipv4'" { + description + "../MIBType = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 CTID"; + } + leaf any-ctid { + when "../mib-type = 'any'" { + description + "../MIBType = 'Any'"; + } + type uint32; + description + "Any CTID"; + } + } + + grouping IPV4-MFWD-CTID-BAG { + description + "MRIB Core Tree ID"; + container ctid { + description + "Core Tree ID"; + uses IPV4-MFWD-CTID-UNION; + } + leaf mib-type { + type Ipv4-mfwd-show-ctid; + description + "MIB type Deprecated by CTID"; + } + leaf id { + type uint32; + description + "ID Deprecated by CTID"; + } + } + + grouping IPV4-MFWD-REGDB-GRE-BAG { + description + "MFWD encap reg GRE entry"; + container source-address { + description + "Core Source address"; + uses IPV4-MFWD-CTID-BAG; + } + container group-address { + description + "Core Group address"; + uses IPV4-MFWD-CTID-BAG; + } + leaf is-gre-core-valid { + type boolean; + description + "Is GRE Core Valid"; + } + } + + grouping IPV4-MFWD-REGDB-TE-BAG { + description + "MFWD encap reg TE entry"; + leaf te-ifhandle { + type xr:Interface-name; + description + "Core TE Ifhandle"; + } + leaf reg-is-ecd-stale { + type boolean; + description + "Encap reg ECD stale flag"; + } + leaf reg-is-ecd-reg { + type boolean; + description + "Encap reg ECD is registered"; + } + } + + grouping IPV4-MFWD-REGDB-LSM-BAG { + description + "MFWD encap reg LSM entry"; + leaf lsm-id { + type uint32; + description + "Core LSM ID"; + } + leaf reg-is-ecd-stale { + type boolean; + description + "encap reg ECD stale flag"; + } + leaf reg-is-ecd-reg { + type boolean; + description + "Encap reg ECD is registered"; + } + } + + grouping IPV4-MFWD-REGTYPE { + description + "IPV4 MFWD REGTYPE"; + container reg-dblsm { + when "../type = 'lsmid'" { + description + "../Type = 'lsmid'"; + } + description + "LSM Type"; + uses IPV4-MFWD-REGDB-LSM-BAG; + } + container reg-dbte { + when "../type = 'teifh'" { + description + "../Type = 'teifh'"; + } + description + "TE Type"; + uses IPV4-MFWD-REGDB-TE-BAG; + } + container reg-dbgre { + when "../type = 'gre'" { + description + "../Type = 'gre'"; + } + description + "GRE Type"; + uses IPV4-MFWD-REGDB-GRE-BAG; + } + container reg-dbnh { + when "../type = 'nh'" { + description + "../Type = 'nh'"; + } + description + "NH Type"; + uses IPV4-MFWD-REGDB-NH-BAG; + } + container reg-dbtimofrr { + when "../type = 'timofrr'" { + description + "../Type = 'timofrr'"; + } + description + "TIMOFRR TYPE"; + uses IPV4-MFWD-REGDB-TIMOFRR-BAG; + } + leaf type { + type Ipv4-mfwd-show-encap; + description + "Type"; + } + } + + grouping IPV4-MFWD-REGDB-BAG { + description + "MFWD encap reg entry"; + container registration-type { + description + "Regdb Type"; + uses IPV4-MFWD-REGTYPE; + } + leaf registration-if-handle { + type xr:Interface-name; + description + "Regdb Ifhandle"; + } + leaf encap-leaf-count { + type uint32; + description + "Encap Leaf Count"; + } + } + + grouping MFWD-BVI-MROUTE-BAG { + description + "MFWD BVI Mroute"; + container source { + description + "Source address"; + uses MFWD-ADDRTYPE; + } + container group-prefix { + description + "Group address prefix"; + uses MFWD-ADDRTYPE; + } + leaf group-prefix-length { + type uint8; + description + "Group address prefix length"; + } + leaf table-name { + type string; + description + "Table Name"; + } + } + + grouping MFWD-ADDRTYPE { + description + "MFWD ADDRTYPE"; + leaf af-name { + type Mfwd-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + } + + grouping MFWD-BVI-ROUTE-BAG { + description + "MFWD BVI DB"; + container source { + description + "Source address"; + uses MFWD-ADDRTYPE; + } + container group-prefix { + description + "Group address prefix"; + uses MFWD-ADDRTYPE; + } + container orig-source { + description + "Orig Source address"; + uses MFWD-ADDRTYPE; + } + leaf group-prefix-length { + type uint8; + description + "Group address prefix length"; + } + leaf bvi-interface { + type xr:Interface-name; + description + "BVI interface"; + } + leaf table-name { + type string; + description + "Table Name"; + } + leaf uptime { + type uint64; + description + "Time entry has been active"; + } + list mroute { + description + "MRoute"; + uses MFWD-BVI-MROUTE-BAG; + } + } + + grouping IPV4-MFWD-MDTID-BAG { + description + "IPV4 MFWD MDTID BAG"; + leaf id-type { + type Ipv4-mfwd-show-ctid; + description + "IDType"; + } + leaf ipv4-mdt-address { + when "../id-type = 'ipv4'" { + description + "../IDType = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf id { + when "../id-type = 'any'" { + description + "../IDType = 'Any'"; + } + type uint32; + description + "ID"; + } + leaf ipv6-mdt-address { + when "../id-type = 'ipv6'" { + description + "../IDType = 'IPv6'"; + } + type inet:ipv4-address; + description + "IPv6 Addr"; + } + } + + grouping IPV4-MFWD-TABLE-BAG { + description + "MFWD Table information"; + container mdt-default-source { + description + "Default MDT Source address"; + uses IPV4-MFWD-MDTID-BAG; + } + container mdt-default-group-prefix { + description + "Default MDT Group address prefix"; + uses IPV4-MFWD-MDTID-BAG; + } + leaf rsi-table-name { + type string; + description + "RSI Table Name"; + } + leaf rsi-table-id { + type uint32; + description + "RSI Table ID"; + } + leaf vrf-id { + type uint32; + description + "RSI VRF ID"; + } + leaf vr-id { + type uint32; + description + "RSI VR ID"; + } + leaf is-table-active { + type boolean; + description + "Is Table active?"; + } + leaf previous-rsi-table-id { + type uint32; + description + "Previous RSI Table ID"; + } + leaf is-linked { + type boolean; + description + "Is linked to sibling table?"; + } + leaf table-type { + type uint8; + description + "table type"; + } + leaf table-location { + type Ipv4-mfwd-tbl-location; + description + "table location"; + } + leaf local-interface-count { + type uint32; + description + "Table local intf count"; + } + leaf route-count { + type uint32; + description + "Total route count"; + } + leaf mdt-default-group-prefix-length { + type uint16; + description + "Default MDT Group address prefix length"; + } + leaf mdt-interface { + type xr:Interface-name; + description + "MDT Interface handle"; + } + leaf mldp-mdt-interface { + type xr:Interface-name; + description + "MLDP MDT Interface handle"; + } + leaf inband-mdt-interface { + type xr:Interface-name; + description + "Inband MDT Interface handle"; + } + leaf star-g-inband-mdt-interface { + type xr:Interface-name; + description + "StarG Inband MDT Interface handle"; + } + leaf p2mpte-mdt-interface { + type xr:Interface-name; + description + "P2MPTE MDT Interface handle"; + } + leaf ir-mdt-interface { + type xr:Interface-name; + description + "IR MDT Interface handle"; + } + leaf tr-mdt-interface { + type xr:Interface-name; + description + "TreeSID MDT Interface handle"; + } + leaf mldp-mdt-turnaround { + type boolean; + description + "MLDP MDT Turnaround"; + } + leaf p2mpte-mdt-turnaround { + type boolean; + description + "P2MPTE MDT Turnaround"; + } + leaf ir-mdt-turnaround { + type boolean; + description + "IR MDT Turnaround"; + } + leaf tr-mdt-turnaround { + type boolean; + description + "TreeSID MDT Turnaround"; + } + leaf mdt-interface-count { + type uint32; + description + "No of routes using MDT handle"; + } + leaf is-mdt-master-linecard { + type boolean; + description + "Is this Master LC table"; + } + leaf local-egress-count { + type uint32; + description + "No of local egress interfaces"; + } + leaf loopback { + type xr:Interface-name; + description + "Loopback interface handle"; + } + leaf customer-mdt-data-acl-name { + type string; + description + "Data MDT ACL Name for customer vrf"; + } + leaf customer-mdt-data-mldpacl-name { + type string; + description + "MLDP Data MDT ACL Name for customer vrf"; + } + leaf customer-mdt-data-p2mpteacl-name { + type string; + description + "P2MPTE Data MDT ACL Name for customer vrf"; + } + leaf customer-mdt-data-iracl-name { + type string; + description + "IR Data MDT ACL Name for customer vrf"; + } + leaf customer-mdt-data-tree-sidacl-name { + type string; + description + "Tree-SID Data MDT ACL Name for customer vrf"; + } + leaf is-customer-mdt-data-acl-present { + type boolean; + description + "Is Data MDT ACL present"; + } + leaf is-customer-mdt-data-mldpacl-present { + type boolean; + description + "Is MLDP Data MDT ACL present"; + } + leaf is-customer-mdt-data-p2mpteacl-present { + type boolean; + description + "Is P2MPTE Data MDT ACL present"; + } + leaf is-customer-mdt-data-iracl-present { + type boolean; + description + "Is IR Data MDT ACL present"; + } + leaf is-customer-mdt-data-tree-sidacl-present { + type boolean; + description + "Is Tree-SID Data MDT ACL present"; + } + leaf data-mdt-threshold { + type uint32; + description + "Data MDT Threshold"; + } + leaf is-all-customer-routes-for-data-mdt { + type boolean; + description + "All customer routes for data mdt ?"; + } + leaf is-all-customer-routes-for-mldp-data-mdt { + type boolean; + description + "All customer routes for MLDP data mdt ?"; + } + leaf is-all-customer-routes-for-p2mpte-data-mdt { + type boolean; + description + "All customer routes for P2MPTE data mdt ?"; + } + leaf is-all-customer-routes-for-ir-data-mdt { + type boolean; + description + "All customer routes for IR data mdt ?"; + } + leaf is-all-customer-routes-for-tree-sid-data-mdt { + type boolean; + description + "All customer routes for Tree-SID data mdt ?"; + } + leaf extranet-child-route-count { + type uint32; + description + "Number of child extranet routes"; + } + } + + grouping IPV4-MFWD-NSF-BAG { + description + "MFIB NSF state"; + leaf multicast-nsf { + type Ipv4-mfwd-nsf-modes; + units "second"; + description + "Multicast NSF state in secs"; + } + leaf multicast-nsf-time-left { + type uint32; + units "second"; + description + "Multicast NSF time remaining in secs"; + } + leaf ifcnsf { + type boolean; + description + "IFC NSF state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub2.yang new file mode 100644 index 000000000..4c64fc188 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper-sub2.yang @@ -0,0 +1,69 @@ +submodule Cisco-IOS-XR-mfwd-oper-sub2 { + belongs-to Cisco-IOS-XR-mfwd-oper { + prefix Cisco-IOS-XR-mfwd-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mfwd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-29 { + description + "Backward compatible addition in mfwd_bvi_mroute_bag and new bag table_name + 2021-11-19 + Backward compatible addition in ipv4_mfwd_connection and new bag mfib_timespec"; + semver:module-version "1.2.0"; + } + revision 2020-10-11 { + description + "Backward compatible addition in leaf ul-interface, customer-mdt-data-tree-sidacl-name, is-customer-mdt-data-tree-sidacl-present and ,is-all-customer-routes-for-tree-sid-data-mdt"; + semver:module-version "1.1.0"; + } + revision 2019-08-27 { + description + "Initial IOS-XR MFWD native model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef If-ul-id { + type uint16; + description + "If ul id"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper.yang new file mode 100644 index 000000000..3898d59d3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mfwd-oper.yang @@ -0,0 +1,469 @@ +module Cisco-IOS-XR-mfwd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mfwd-oper"; + prefix mfwd-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mfwd-oper-sub2 { + revision-date 2022-04-29; + } + include Cisco-IOS-XR-mfwd-oper-sub1 { + revision-date 2022-04-29; + } + + 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 mfwd package operational data. + + This module contains definitions + for the following management objects: + mfwd: MFWD operational data + ipv6-mfwd: IPV6 MFWD operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-29 { + description + "Backward compatible addition in mfwd_bvi_mroute_bag and new bag table_name + 2021-11-19 + Backward compatible addition in ipv4_mfwd_connection and new bag mfib_timespec"; + semver:module-version "1.2.0"; + } + revision 2020-10-11 { + description + "Backward compatible addition in leaf ul-interface, customer-mdt-data-tree-sidacl-name, is-customer-mdt-data-tree-sidacl-present and ,is-all-customer-routes-for-tree-sid-data-mdt"; + semver:module-version "1.1.0"; + } + revision 2019-08-27 { + description + "Initial IOS-XR MFWD native model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Encap { + type enumeration { + enum "any" { + value 0; + description + "Encap Any"; + } + enum "lsm" { + value 1; + description + "Encap LSM"; + } + enum "te" { + value 2; + description + "Encap TE"; + } + enum "gre" { + value 3; + description + "Encap GRE"; + } + } + description + "Encap"; + } + + grouping NODE-TABLE { + description + "Common node of mfwd, ipv6-mfwd"; + container nodes { + description + "All Nodes"; + list node { + key "node-name"; + description + "Multicast Forwarding operational data for this + particular node"; + container process { + description + "MFWD NSF Databases"; + container nsf { + description + "MFWD NSF Information"; + uses IPV4-MFWD-NSF-BAG; + } + container vrfs { + description + "Traversal in VRF Name/ID DB"; + list vrf { + key "vrf-name"; + description + "VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + uses IPV4-MFWD-TABLE-BAG; + } + } + container table-ids { + description + "Traversal using Table ID DB"; + list table-id { + key "table-id"; + description + "Table ID"; + leaf table-id { + type uint32; + description + "Table ID"; + } + uses IPV4-MFWD-TABLE-BAG; + } + } + container bvi-routes { + description + "MFWD BVI route table"; + list bvi-route { + key "interface-name source-address group-address prefix-length"; + description + "MFWD BVI route entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses MFWD-BVI-ROUTE-BAG; + } + } + } + container databases { + description + "MFWD Databases"; + list database { + key "database-name"; + description + "Database Name"; + container encap-registrations { + description + "MFWD Encap Registration"; + list encap-registration { + key "encap-type lsm-id if-handle source-address group-address"; + description + "MFWD Encap Registration"; + leaf encap-type { + type Encap; + description + "Encap Type"; + } + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf if-handle { + type uint32; + description + "IFHandle"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + uses IPV4-MFWD-REGDB-BAG; + } + } + container summary { + description + "MFWD RouteDB Summary Information"; + uses IPV4-MFWD-ROUTE-SUMM-BAG; + } + container encap-identifiers { + description + "MFWD Encap Table"; + list encap-identifier { + key "encap-id"; + description + "MFWD Encap Identifier"; + leaf encap-id { + type uint32; + description + "Encap ID"; + } + uses IPV4-MFWD-ENCAPID-BAG; + } + } + container detail-interfaces { + description + "Detailed information about MFWD Interfaces"; + list detail-interface { + key "interface-name"; + description + "Detailed MFWD Interface info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV4-MFWD-INTF-DETAIL-BAG; + } + } + container interface-routes { + description + "Display MFIB interface specific information"; + list interface-route { + key "interface-name"; + description + "Interface Table"; + container source-group-addresses { + description + "Source,Group Address Table"; + list source-group-address { + key "source-address group-address prefix-length"; + description + "List the routes associated with an + Interface"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "Prefix Length"; + } + uses IPV4-MFWD-ROUTE-BAG; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } + container counters { + description + "MFWD RouteDB Counters Information"; + uses IPV4-MFWD-TABLE-COUNTERS-BAG; + } + container interfaces { + description + "Information about MFWD Interfaces"; + list interface { + key "interface-name"; + description + "MFWD Interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IPV4-MFWD-INTF-BAG; + } + } + container encapsulation-infos { + description + "Encapsulation InformationTable"; + list encapsulation-info { + key "source source-address group group-address"; + description + "Encapsulation Information"; + leaf source { + type xr:Cisco-ios-xr-string { + length "1..9"; + } + description + "prev source CTID type"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "prev source CTID ID 1"; + } + leaf group { + type xr:Cisco-ios-xr-string { + length "1..9"; + } + description + "prev group CTID type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "prev group CTID ID 2"; + } + uses IPV4-MFWD-ENCAP-BAG; + } + } + container routes { + description + "The set of MRIB RouteDB operations"; + list route { + key "source-address group-address prefix-length"; + description + "MFWD Route Entry Information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "Prefix Length"; + } + uses IPV4-MFWD-ROUTE-BAG; + } + } + container svd { + description + "SVD table information"; + uses IPV4-MFWD-SVD-BAG; + } + container connections { + description + "MFWD RouteDB connections information"; + uses IPV4-MFWD-CONNECTION-BAG; + } + container imdr { + description + "MFWD RouteDB IMDR status information"; + uses IPV4-MFWD-IMDR-BAG; + } + container bvi-interfaces { + description + "MFIB BVI interface mapping"; + list bvi-interface { + key "interface-name"; + description + "BVI Interface Handle"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MFWD-BVI-INTERFACE-BAG; + } + } + container route-statistics { + description + "The set of MRIB RouteDB and route statistics + operations"; + list route-statistic { + key "source-address group-address prefix-length"; + description + "MFWD Route Entry and route statistics + Information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "Prefix Length"; + } + uses IPV4-MFWD-ROUTE-BAG; + } + } + leaf database-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Database Name"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + + container mfwd { + config false; + description + "MFWD operational data"; + uses NODE-TABLE; + } + container ipv6-mfwd { + config false; + description + "IPV6 MFWD operational data"; + uses NODE-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-cfg.yang new file mode 100644 index 000000000..ef3dad3dd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-cfg.yang @@ -0,0 +1,61 @@ +module Cisco-IOS-XR-mirror-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mirror-cfg"; + prefix mirror-cfg; + + 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 mirror package configuration. + + This module contains definitions + for the following management objects: + mirror-cfg: mirror directory configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-11-08 { + description + "IOS XR 7.2.1 revision"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mirror-cfg { + description + "mirror directory configuration commands"; + leaf mirror-cfg-checksum { + type empty; + description + "rsync will use --checksum option for determining + if file is in sync"; + } + leaf mirror-cfg-enable { + type empty; + description + "Enable mirror directory syncing to standby RP"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper-sub1.yang new file mode 100644 index 000000000..dec2a7d3b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper-sub1.yang @@ -0,0 +1,259 @@ +submodule Cisco-IOS-XR-mirror-oper-sub1 { + belongs-to Cisco-IOS-XR-mirror-oper { + prefix Cisco-IOS-XR-mirror-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mirror package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Change-bag-reason { + type enumeration { + enum "checksum" { + description + "Checksum"; + } + enum "size" { + description + "Size"; + } + enum "mod-time" { + description + "Modification time"; + } + enum "permissions" { + description + "Permissions changed"; + } + enum "owner" { + description + "Owner changed"; + } + enum "group" { + description + "Group changed"; + } + enum "reserved" { + description + ""; + } + enum "acl" { + description + "ACL changed"; + } + enum "xattr" { + description + "Extended attributes changed"; + } + enum "none" { + description + "Unknown or no mismatch. When UT_UNKNOWN or + UT_NONE."; + } + enum "sub-item" { + description + "Sub item of this dir has a change"; + } + enum "new-item" { + description + "This item is newly created"; + } + } + description + "ChangeReason"; + } + + typedef File-bag { + type enumeration { + enum "file" { + description + "File"; + } + enum "directory" { + description + "Directory"; + } + enum "symlink" { + description + "Symlink"; + } + enum "device" { + description + "Device"; + } + enum "special" { + description + "Special"; + } + enum "unknown" { + description + ""; + } + } + description + "ItemType"; + } + + typedef Update-bag { + type enumeration { + enum "send" { + description + "Send changes to standby"; + } + enum "recv" { + description + "Receive changes from standby"; + } + enum "create" { + description + "Create on standby"; + } + enum "hardlink" { + description + "Hardlink"; + } + enum "unknown" { + description + "Unexpected reason, use update_msg field"; + } + enum "none" { + description + "In sync on both active and standby"; + } + enum "delete" { + description + "Delete on standby"; + } + enum "sub-item" { + description + "Sub item of this dir needs a change"; + } + } + description + "Update"; + } + + typedef Mirror-bag-state { + type enumeration { + enum "no" { + description + "Not mirrored, and no sync in progress"; + } + enum "yes" { + description + "Mirrored"; + } + enum "in-progress" { + description + "Not mirrored, but sync in progress"; + } + } + description + "MirrorState"; + } + + grouping MIRROR-FILE-ENTRY { + description + "One item in the mirror dir"; + leaf path-xr { + type string; + description + "Path item"; + } + leaf state { + type Mirror-bag-state; + description + "What sync state item is in"; + } + leaf update { + type Update-bag; + description + "What update should be done"; + } + leaf update-msg { + type string; + description + "In case of unknown update"; + } + leaf type { + type File-bag; + description + "Item type"; + } + leaf reason { + type Change-bag-reason; + description + "Reason for mismatch"; + } + leaf checksum { + type string; + description + "MD5 checksum for mirrored files"; + } + leaf mod-time { + type uint64; + description + "Mod time for mirrored files"; + } + } + + grouping MIRROR-SYNC-ENTRY { + description + "One sync dir status"; + leaf directory-xr { + type string; + description + "Directory being synced"; + } + leaf sync-in-progress { + type boolean; + description + "True if sync is in progress"; + } + leaf start-time { + type uint64; + description + "Unix Epoch of when sync started"; + } + leaf scan-error { + type string; + description + "Empty if no error, else the dir scanning error + which prevents mirroring on this dir"; + } + leaf standby-up { + type boolean; + description + "If false, standby is not syncable"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper.yang new file mode 100644 index 000000000..7eea20942 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mirror-oper.yang @@ -0,0 +1,100 @@ +module Cisco-IOS-XR-mirror-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mirror-oper"; + prefix mirror-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mirror-oper-sub1 { + revision-date 2019-04-05; + } + + 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 mirror package operational data. + + This module contains definitions + for the following management objects: + mirror-oper: Mirror operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mirror-oper { + config false; + description + "Mirror operational data"; + container show-mirror-sync-entries { + description + "The list of dirs which are being synced"; + list show-mirror-sync-entry { + key "directory"; + description + "The dirs subject to syncing and if they are + currently syncing"; + leaf directory { + type string; + description + "Directory"; + } + uses MIRROR-SYNC-ENTRY; + } + } + container show-mirror-entries { + description + "Entries from show mirror"; + container show-mirror-mismatch-entries { + description + "Only entries which are not mirrored"; + list show-mirror-mismatch-entry { + key "path"; + description + "The individual path entries from show mirror"; + leaf path { + type string; + description + "Path"; + } + uses MIRROR-FILE-ENTRY; + } + } + container show-mirror-entries { + description + "All file entries from show mirror"; + list show-mirror-entry { + key "path"; + description + "The individual path entries from show mirror"; + leaf path { + type string; + description + "Path"; + } + uses MIRROR-FILE-ENTRY; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper-sub1.yang new file mode 100644 index 000000000..f05864b82 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper-sub1.yang @@ -0,0 +1,1796 @@ +submodule Cisco-IOS-XR-mld-oper-sub1 { + belongs-to Cisco-IOS-XR-mld-oper { + prefix Cisco-IOS-XR-mld-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mld package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-21 { + description + "event-history ipv4_igmp.bag/ipv4_igmp_common_oper.sch show mld missed-packet + 2022-08-23 + ts at scale show igmp commands + 2022-04-20 + Getting rid of default context path + 2021-12-01 + Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2021-05-17 { + description + "Added DVMRP packet counter tracking for malloc and free."; + semver:module-version "1.1.0"; + } + revision 2019-08-27 { + description + "Initial IOS-XR MLD native model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmp-edm-protocol { + type enumeration { + enum "no-route" { + value 0; + description + "no route"; + } + enum "sm" { + value 1; + description + "sm"; + } + enum "dm" { + value 2; + description + "dm"; + } + enum "bidir" { + value 3; + description + "bidir"; + } + enum "ssm" { + value 4; + description + "ssm"; + } + enum "any" { + value 6; + description + "any"; + } + } + description + "IGMP Protocol"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Igmp-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + typedef Im-state { + type uint32; + description + "Im state"; + } + + grouping IGMP-EDM-NSF-BAG { + description + "IGMP NSF state"; + leaf is-multicast-nsf-active { + type boolean; + description + "Is Multicast NSF active"; + } + leaf multicast-nsf-timeout { + type uint32; + units "second"; + description + "Multicast NSF timeout in secs"; + } + leaf multicast-nsf-time-left { + type uint32; + units "second"; + description + "Multicast NSF time remaining in secs"; + } + leaf respawn-count { + type uint32; + description + "Respawn Count"; + } + leaf last-nsf-on { + type int64; + description + "Last NSF time ON"; + } + leaf last-nsf-off { + type int64; + description + "Last NSF time off"; + } + leaf last-nsf-on-min { + type int32; + units "second"; + description + "Last NSF time ON in Seconds"; + } + leaf last-nsf-off-min { + type int32; + units "second"; + description + "Last NSF time OFF in Seconds"; + } + leaf last-icd-notif-recv { + type int64; + description + "Last ICD Notif Recv"; + } + leaf last-icd-notif-recv-min { + type int32; + units "second"; + description + "Last ICD Notif Recv in Seconds"; + } + } + + grouping IGMP-MISSED-PACKET-BAG { + description + "IGMP Missed Packet"; + leaf message-type { + type uint32; + description + "Message Type"; + } + leaf message-string { + type string { + length "0..80"; + } + description + "Message String"; + } + leaf message-time { + type string { + length "0..40"; + } + description + "Message Time"; + } + } + + grouping IGMP-MISSED-PACKETS-LIST-BAG { + description + "IGMP Missed Packets list information"; + list missed-packets { + description + "List of Missed Packets"; + uses IGMP-MISSED-PACKET-BAG; + } + } + + grouping IGMP-EDM-BVI-STATS-BAG { + description + "IGMP EDM BVI STATS BAG"; + leaf receive-buffers { + type uint32; + description + "Number of AIPC buffers received"; + } + leaf release-buffers { + type uint32; + description + "Number of AIPC buffers released"; + } + leaf send-blocks { + type uint32; + description + "Number of AIPC buffers send blocked"; + } + leaf release-fail-buffers { + type uint32; + description + "Number of AIPC buffers release failed"; + } + leaf null-buffer-handles { + type uint32; + description + "Number of AIPC NULL buffer handles"; + } + leaf rx-ipc-open-notif { + type uint32; + description + "Number of AIPC open notifications received"; + } + leaf rx-ipc-close-notif { + type uint32; + description + "Number of AIPC close notifications received"; + } + leaf rx-ipc-error-notif { + type uint32; + description + "Number of AIPC error notifications received"; + } + leaf rx-ipc-lwm-notif { + type uint32; + description + "Number of AIPC LWM notifications received"; + } + leaf rx-ipc-hwm-notif { + type uint32; + description + "Number of AIPC HWM notifications received"; + } + leaf rx-ipc-input-wait-notif { + type uint32; + description + "Number of AIPC input waiting notifications + received"; + } + leaf rx-ipc-send-status-notif { + type uint32; + description + "Number of AIPC send status notifications + received"; + } + leaf rx-ipc-publish-notif { + type uint32; + description + "Number of AIPC publish notifications received"; + } + leaf rx-ipc-q-full-notif { + type uint32; + description + "Number of AIPC queue full notifications received"; + } + leaf rx-ipc-output-notif { + type uint32; + description + "Number of AIPC output notifications received"; + } + leaf rx-ipc-connect-notif { + type uint32; + description + "Number of AIPC connect notifications received"; + } + leaf rx-igmp-packet-success { + type uint32; + description + "Number of IGMP protocol messages received"; + } + leaf rx-add-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Add messages received"; + } + leaf rx-delete-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Delete messages received"; + } + leaf rx-sweep-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Sweep messages received"; + } + leaf tx-add-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Add messages transmitted"; + } + leaf tx-delete-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Delete messages + transmitted"; + } + leaf tx-sweep-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Sweep messages received"; + } + leaf rx-unknown-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Unknown messages received"; + } + leaf tx-unknown-mrouter-msg { + type uint32; + description + "Number of IGMP Mrouter Unknown messages + transmitted"; + } + leaf tx-buffer-errors { + type uint32; + description + "Number of AIPC transmission errors"; + } + leaf tx-buffers { + type uint32; + description + "Number of AIPC buffers transmited"; + } + leaf tx-protocol-buffers { + type uint32; + description + "Number of IGMP protocol buffers transmitted"; + } + leaf tx-mrouter-buffers { + type uint32; + description + "Number of IGMP Mrouter buffers transmitted"; + } + leaf tx-unknown-buffers { + type uint32; + description + "Number of IGMP Unknown buffers transmited"; + } + leaf wtx-msg-recvd { + type uint32; + description + "Number of WTX messages received"; + } + leaf wtx-msg-sent { + type uint32; + description + "Number of WTX messages sent"; + } + leaf wtx-msg-proto-sent { + type uint32; + description + "Number of WTX messages sent to Protocol"; + } + leaf wtx-msg-drop-dc { + type uint32; + description + "Number of WTX messages dropped due to disconnect"; + } + leaf wtx-msg-drop-nomem { + type uint32; + description + "Number of WTX messages dropped to memory"; + } + leaf wtx-msg-freed { + type uint32; + description + "Number of WTX messages freed"; + } + } + + grouping IGMP-EDM-I2Q-STATS-BAG { + description + "IGMP Rate Adjust Stats"; + leaf queues { + type uint16; + description + "I2Q Queue count"; + } + leaf batches { + type uint16; + description + "I2Q Rate Batch count"; + } + leaf add-to-batches { + type uint32; + description + "Add to batch count"; + } + leaf delete-to-batches { + type uint32; + description + "Delete to batch count"; + } + leaf send-success { + type uint32; + description + "Send Success count"; + } + leaf send-errors { + type uint32; + description + "Number of Send errors in batch"; + } + leaf send-comm-errors { + type uint32; + description + "Send Error due to comms count"; + } + leaf send-partial-errors { + type uint32; + description + "Send Error due to partial issue count"; + } + leaf received-resync-requests { + type uint32; + description + "Number of Resync request received"; + } + leaf sent-resync-bulks { + type uint32; + description + "Number of bulks sent for last resync received"; + } + leaf is-resync-received { + type boolean; + description + "Is Resync request received"; + } + leaf is-resync-required { + type boolean; + description + "Is Resync required"; + } + leaf is-resync-start-sent { + type boolean; + description + "Is Resync Start message sent"; + } + leaf is-qos-s-sweeped { + type boolean; + description + "Is QOS Sweeped once "; + } + leaf last-sweep-time { + type uint64; + units "second"; + description + "Time elapsed since Last mark and sweep in + seconds"; + } + leaf last-download-time { + type uint64; + units "second"; + description + "Time elapsed since Last download to QOS in + seconds"; + } + } + + grouping AMT-GW-BAG { + description + "AMT GW info"; + leaf amtgw { + type inet:ipv4-address; + description + "GW"; + } + leaf amt-port { + type uint32; + description + "Port"; + } + leaf key-len { + type uint32; + description + "Len"; + } + leaf amtnh { + type uint32; + description + "AMT NH"; + } + leaf amt-nonce { + type uint32; + description + "Nonce"; + } + leaf idb { + type uint64; + description + "IDB"; + } + leaf mem-upd-in { + type uint32; + description + "UpdIn"; + } + leaf mem-upd-out { + type uint32; + description + "UpdOut"; + } + } + + grouping IGMP-EDM-NSR-BAG { + description + "IGMP NSR state"; + leaf state { + type uint8; + description + "NSR state"; + } + leaf partner-proc-connected { + type boolean; + description + "Partner process connected"; + } + leaf collab-conv-done { + type boolean; + description + "Collaborators convergence done"; + } + leaf rmf-notification-done { + type boolean; + description + "RMF Notification done"; + } + leaf last-proc { + type uint64; + description + "Time when process came up"; + } + leaf last-proc-connection-up { + type uint64; + description + "Time when process connection went up"; + } + leaf last-proc-connection-dn { + type uint64; + description + "Time when process connection went down"; + } + leaf last-rmf-ready { + type uint64; + description + "Time when RMF Rdy notif was sent"; + } + leaf last-rmf-not-ready { + type uint64; + description + "Time when RMF Not-Rdy notif was sent"; + } + leaf count-proc-connection-up { + type uint32; + description + "No. of times process connection went up"; + } + leaf count-proc-connection-dn { + type uint32; + description + "No. of times process connection went down"; + } + leaf count-rmf-ready { + type uint32; + description + "No. of times RMF Ready notif was sent"; + } + leaf count-rmf-not-ready { + type uint32; + description + "No. of times RMF Not Ready notif was sent"; + } + } + + grouping AMT-SUMMARY-BAG { + description + "AMT summary info"; + leaf anycast-prefix { + type inet:ipv4-address; + description + "Robustness variable"; + } + leaf prefix-length { + type uint32; + description + "Advertize AMT prefix length"; + } + leaf relay-address { + type inet:ipv4-address; + description + "Advertaisment for AMT Relay address"; + } + leaf mtu { + type uint32; + description + "AMT Tunnel MTU"; + } + leaf tos { + type uint32; + description + "Type Of Service value in AMT header"; + } + leaf ttl { + type uint32; + description + "Time To Live value in AMT header"; + } + leaf query-interval { + type uint32; + description + "AMT Query interval"; + } + leaf gateway-count { + type uint32; + description + "Number of AMT Gateway"; + } + leaf max-gateway { + type uint32; + description + "Maximum Gateway allowed"; + } + leaf tunnel-count { + type uint32; + description + "AMT Tunnel Count"; + } + leaf tunnel-configured-maximum { + type uint32; + description + "AMT Tunnel configured Maximum"; + } + leaf is-acl-configured { + type boolean; + description + "ACL configured under AMT"; + } + leaf is-gateway-simulation { + type boolean; + description + "AMT Gateway Simulation"; + } + leaf is-ou-of-resource { + type boolean; + description + "AMT Out Of Resource"; + } + } + + grouping IGMP-EDM-SSM-MAP-DETAIL-BAG { + description + "IGMP SSM Map Detail List"; + container map-info { + description + "Basic Map Info"; + uses IGMP-EDM-SSM-MAP-BAG; + } + leaf expiration-time { + type uint32; + units "second"; + description + "Expiration Time in Seconds"; + } + leaf response-pending { + type boolean; + description + "Response Pending"; + } + leaf query-interval { + type uint32; + description + "Query interval"; + } + leaf elapsed-time { + type uint64; + description + "Elapsed time"; + } + list sources { + description + "List of sources"; + uses IGMP-ADDRTYPE; + } + } + + grouping IGMP-EDM-IDB-SUMM-BAG { + description + "IGMP Interface DB summary"; + leaf interface-count { + type uint32; + description + "Interface Count"; + } + leaf configuration-count { + type uint32; + description + "Configuration count"; + } + } + + grouping IGMP-EDM-GROUPS-SUMMARY-BAG { + description + "IGMP group summary entry"; + leaf groutes { + type uint32; + description + "No. of (*,G) routes"; + } + leaf sg-routes { + type uint32; + description + "No. of (S,G) routes"; + } + leaf group-count { + type uint32; + description + "Current groups accepted"; + } + leaf is-low-memory { + type boolean; + description + "Node is running low on memory"; + } + } + + grouping IGMP-EDM-TRAFFIC-BAG { + description + "IGMP Traffic Counters bag"; + leaf elapsed-time { + type uint32; + description + "Running time for counters"; + } + leaf packets-in { + type uint32; + description + "Packets in"; + } + leaf packets-out { + type uint32; + description + "Packets out"; + } + leaf format-errors { + type uint32; + description + "Malformed packets in"; + } + leaf packet-manager-input-errors { + type uint32; + description + "Incoming Packet Manager packets dropped"; + } + leaf packet-manager-output-errors { + type uint32; + description + "Outgoing Packet Manager packets dropped"; + } + leaf checksum-errors { + type uint32; + description + "Checksum errors"; + } + leaf receive-socket-errors { + type uint32; + description + "Socket errors on reception"; + } + leaf socket-errors { + type uint32; + description + "Socket errors on send"; + } + leaf bad-scope-errors { + type uint32; + description + "BadScope errors"; + } + leaf auxillary-data-length-errors { + type uint32; + description + "AuxDataLen errors"; + } + leaf invalid-source-address-errors { + type uint32; + description + "Invalid Source Address errors"; + } + leaf no-socket-connection { + type uint32; + description + "Packets dropped since no socket connection"; + } + leaf miscellaneous-errors { + type uint32; + description + "Packets dropped for other reasons"; + } + leaf input-queries { + type uint32; + description + "Query packets in"; + } + leaf input-reports { + type uint32; + description + "Reports in"; + } + leaf input-leaves { + type uint32; + description + "Leaves in"; + } + leaf input-mtrace { + type uint32; + description + "Mtrace packets in"; + } + leaf input-dvmrp { + type uint32; + description + "DVMRP packets in"; + } + leaf dvmrp-alloc { + type uint32; + description + "DVMRP buffer allocations"; + } + leaf dvmrp-free { + type uint32; + description + "DVMRP freed buffers"; + } + leaf dvmrp-drop { + type uint32; + description + "DVMRP packets dropped"; + } + leaf input-pim { + type uint32; + description + "PIM packets in"; + } + leaf output-queries { + type uint32; + description + "Query packets out"; + } + leaf output-reports { + type uint32; + description + "Reports out"; + } + leaf output-leaves { + type uint32; + description + "Leaves out"; + } + leaf output-mtrace { + type uint32; + description + "Mtrace packets out"; + } + leaf output-dvmrp { + type uint32; + description + "DVMRP packets out"; + } + leaf output-pim { + type uint32; + description + "PIM packets out"; + } + leaf get-packet-failure { + type uint32; + description + "Packet get failed"; + } + leaf output-no-parent-interface-handle { + type uint32; + description + "Failures setting 2nd ifhandle"; + } + leaf input-no-idb { + type uint32; + description + "Packets received without idb"; + } + leaf input-no-vrf-in-idb { + type uint32; + description + "Packets received on idb without VRF"; + } + leaf input-disabled-idb { + type uint32; + description + "Packet received on disabled idb"; + } + leaf input-martian-address { + type uint32; + description + "Packets received with Martian Address"; + } + leaf input-no-assigned-vrf-id { + type uint32; + description + "Packets received with no assigned vrf id"; + } + leaf input-no-vrf-mtrace { + type uint32; + description + "mtrace packets with no vrf associated"; + } + leaf input-no-platform-support-mtrace { + type uint32; + description + "mtrace packets without platform support"; + } + leaf packet-allocated { + type uint32; + description + "Number of pak allocated by IGMP"; + } + leaf packet-freed { + type uint32; + description + "Number of pak freed by IGMP"; + } + } + + grouping IGMP-EDM-IDB-IFRS-BAG { + description + "IGMP IFRS interface entry"; + container igmp-interface-entry { + description + "IGMP interface entry"; + uses IGMP-EDM-IDB-BAG; + } + leaf join-group-count { + type uint32; + description + "Join group count"; + } + } + + grouping IGMP-GROUP-RANGE { + description + "IGMP Group-Map Range"; + container group-address-xr { + description + "Group address"; + uses IGMP-ADDRTYPE; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf protocol { + type Igmp-edm-protocol; + description + "Protocol"; + } + leaf is-stale { + type boolean; + description + "Is the entry stale"; + } + } + + grouping IGMP-EDM-I2Q-INTF-RATE-BAG { + description + "IGMP-QOS Interface Rate"; + container source-address { + description + "Source address"; + uses IGMP-ADDRTYPE; + } + container group-address { + description + "Group address"; + uses IGMP-ADDRTYPE; + } + leaf is-add { + type boolean; + description + "Is this a rate increment"; + } + leaf weight { + type uint32; + description + "Weight from policy"; + } + leaf received-time { + type uint64; + description + "Time this update is received"; + } + } + + grouping IGMP-EDM-I2Q-INTF-STATS-BAG { + description + "IGMP-QOS Interface Stats"; + leaf is-virtual-access { + type boolean; + description + "Is VirtualAccess Interface"; + } + leaf rate { + type uint32; + units "kbit/s"; + description + "Overall rate in Kbps"; + } + leaf rate-increments { + type uint32; + description + "Count of rate increments"; + } + leaf rate-decrements { + type uint32; + description + "Count of rate decrements"; + } + list update { + max-elements "5"; + description + "List of updates"; + uses IGMP-EDM-I2Q-INTF-RATE-BAG; + } + } + + grouping IGMP-EDM-GROUPS-HOST-BAG { + description + "IGMP Groups host entry"; + container address { + description + "Host Address"; + uses IGMP-ADDRTYPE; + } + leaf uptime { + type uint32; + units "second"; + description + "Uptime in seconds"; + } + leaf is-exclude { + type boolean; + description + "Exclude flag set"; + } + leaf expiration-time { + type uint32; + units "second"; + description + "Expiration time in seconds"; + } + leaf source-count { + type uint32; + description + "No. of sources in entry"; + } + list source-address { + max-elements "3"; + description + "First 3 source addresses"; + uses IGMP-ADDRTYPE; + } + } + + grouping IGMP-EDM-GROUPS-ET-BAG { + description + "IGMP group explicit-tracking entry"; + container group-info { + description + "Basic Group information"; + uses IGMP-EDM-GROUPS-BAG; + } + leaf include-hosts { + type uint32; + description + "No. of hosts who are included"; + } + leaf exclude-hosts { + type uint32; + description + "No. of hosts who are excluded"; + } + list host { + description + "List of hosts"; + uses IGMP-EDM-GROUPS-HOST-BAG; + } + } + + grouping IGMP-EDM-SSM-MAP-BAG { + description + "IGMP SSM Map List"; + container group-address-xr { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + leaf map-type { + type uint32; + description + "Map Type of group"; + } + leaf source-counts { + type uint32; + description + "Count of Sources"; + } + } + + grouping IGMP-EDM-NOT-ACTIVE-GROUP-BAG { + description + "IGMP Non active group"; + container group-address { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf interface { + type string { + length "0..65"; + } + description + "Interface Name"; + } + leaf reason-for-non-activity { + type string { + length "0..257"; + } + description + "Reason for group join not being processed"; + } + } + + grouping IGMP-EDM-NOT-ACTIVE-ALLGROUPS-BAG { + description + "IGMP Non active groups list"; + list non-active-groups { + description + "List of non-active groups"; + uses IGMP-EDM-NOT-ACTIVE-GROUP-BAG; + } + } + + grouping IGMP-EDM-GROUPS-SOURCE-BAG { + description + "IGMP Groups source entry"; + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiration-time { + type int32; + units "second"; + description + "Expiration time in seconds"; + } + leaf is-local { + type boolean; + description + "Is this a local source"; + } + leaf is-remote { + type boolean; + description + "Is this a remote source"; + } + leaf is-forward { + type boolean; + description + "Should we forward on this entry"; + } + leaf is-we-report { + type boolean; + description + "Should we report the source"; + } + leaf flags { + type int32; + description + "Source flags"; + } + leaf is-added { + type boolean; + description + "Joined"; + } + leaf is-evpn-remote { + type boolean; + description + "Route learnt through EVPN"; + } + } + + grouping IGMP-EDM-GROUPS-BAG { + description + "IGMP group entry"; + container group-address-xr { + description + "Group Address"; + uses IGMP-ADDRTYPE; + } + container last-reporter { + description + "Last reporter address"; + uses IGMP-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses IGMP-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiration-time { + type int32; + units "second"; + description + "Expiration time in seconds"; + } + leaf explicit-tracking-enabled { + type boolean; + description + "Is explicit tracking enabled"; + } + leaf is-self-join { + type boolean; + description + "If local system is member of this group on this + interface"; + } + leaf row-status { + type string { + length "0..16"; + } + description + "interface on or off for the group"; + } + leaf is-low-memory { + type boolean; + description + "Node is running low on memory"; + } + leaf router-filter-mode { + type uint8; + description + "Filter mode"; + } + leaf older-host-version1-timer { + type uint32; + description + "IGMP Hostversion1timer"; + } + leaf older-host-version2-timer { + type uint32; + description + "IGMP Hostversion2timer"; + } + leaf is-added { + type boolean; + description + "Joined"; + } + leaf is-suppressed { + type boolean; + description + "Suppressed"; + } + leaf is-evpn-remote { + type boolean; + description + "EVPN remote flag"; + } + leaf is-evpn-stale { + type boolean; + description + "EVPN stale flag"; + } + } + + grouping IGMP-EDM-GROUPS-DETAIL-BAG { + description + "IGMP group detail entry"; + container group-info { + description + "Basic Group information"; + uses IGMP-EDM-GROUPS-BAG; + } + leaf is-router-exclude-mode { + type boolean; + description + "Group router filter mode"; + } + leaf is-host-exclude-mode { + type boolean; + description + "Group host filter mode"; + } + list source { + description + "List of sources"; + uses IGMP-EDM-GROUPS-SOURCE-BAG; + } + } + + grouping IGMP-ADDRTYPE { + description + "IGMP ADDRTYPE"; + leaf af-name { + type Igmp-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + } + + grouping IGMP-EDM-IDB-BAG { + description + "IGMP interface entry"; + container address { + description + "IP address"; + uses IGMP-ADDRTYPE; + } + container querier-address { + description + "Address of the Querier"; + uses IGMP-ADDRTYPE; + } + container subscriber-address { + description + "Address of subscriber"; + uses IGMP-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf state { + type Im-state; + description + "Interface state"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf is-interface-up { + type boolean; + description + "Is interface up"; + } + leaf is-ip-enabled { + type boolean; + description + "Is IP enabled"; + } + leaf is-router-enabled { + type boolean; + description + "Is Router functionality enabled"; + } + leaf is-multi-homing-enabled { + type boolean; + description + "Is Multihoming enabled"; + } + leaf is-multi-homing-stale { + type boolean; + description + "Is Multihoming Update stale"; + } + leaf igmp-version { + type uint8; + description + "IGMP Router version"; + } + leaf host-version { + type uint8; + description + "IGMP Host version"; + } + leaf query-interval { + type uint16; + units "second"; + description + "Query Interval value in seconds"; + } + leaf query-timeout { + type uint16; + description + "Query Timeout value"; + } + leaf query-maximum-response-time { + type uint16; + description + "Max Response Timeout value"; + } + leaf last-member-query-interval { + type uint16; + description + "Last Member Query Interval"; + } + leaf group-joins { + type uint32; + description + "No. of group joins"; + } + leaf group-leaves { + type uint32; + description + "No. of group leaves"; + } + leaf is-querier { + type boolean; + description + "Are we querier"; + } + leaf total-active-groups { + type uint32; + description + "Actual number of groups on interface"; + } + leaf robustness { + type uint32; + description + "Robustness Variable value"; + } + leaf proxy-interface { + type xr:Interface-name; + description + "Proxy interface index"; + } + leaf querier-uptime { + type uint16; + description + "Time since the last querier took over"; + } + leaf las-ll-registration-count { + type uint32; + description + "LAS reg count"; + } + leaf las-get-address-count { + type uint32; + description + "LAS get addr count"; + } + leaf las-update-count { + type uint32; + description + "LAS Update count"; + } + leaf las-ll-remove-update-count { + type uint32; + description + "LAS LL remove update count"; + } + leaf las-ll-add-update-count { + type uint32; + description + "LAS LL add update count"; + } + leaf las-null-update-count { + type uint32; + description + "LAS Null update count"; + } + leaf las-unregistration-count { + type uint32; + description + "LAS unreg count"; + } + leaf is-las-request { + type boolean; + description + "LAS req"; + } + leaf is-las-registered { + type boolean; + description + "LAS registered"; + } + leaf vrf-id { + type uint32; + description + "VRF id"; + } + leaf mte-vrf-id { + type uint32; + description + "MTE VRF id"; + } + leaf location { + type uint32; + description + "Location"; + } + leaf mtu { + type uint32; + description + "MTU"; + } + leaf vrf-state { + type uint32; + description + "Vrf State"; + } + leaf is-configurationverify { + type boolean; + description + "CFG verify"; + } + leaf configurationvrf-set { + type boolean; + description + "CFG vrf set"; + } + leaf configurationvrf-error { + type boolean; + description + "CFG vrf error"; + } + leaf configuration-mcast-vrf-set { + type boolean; + description + "Is mcast set"; + } + leaf configuration-mcast-vrf-error { + type boolean; + description + "Is mcast error"; + } + leaf is-im-state-registered { + type boolean; + description + "Im state registered"; + } + leaf is-subscriber { + type boolean; + description + "Subscriber interface"; + } + leaf subscriber-mode { + type uint32; + description + "Subscriber mode"; + } + leaf is-identity-present { + type boolean; + description + "Subscriber ID or Address available from AAA"; + } + leaf subscriber-id { + type string { + length "0..257"; + } + description + "ID string of subscriber"; + } + leaf parent-ifhandle { + type xr:Interface-name; + description + "Parent If Handle"; + } + leaf time-since-last-query-in-seconds { + type uint32; + description + "Time elapsed since last query"; + } + leaf time-since-last-report-in-seconds { + type uint32; + description + "Time elapsed since last report"; + } + leaf router-uptime-in-seconds { + type uint32; + description + "Uptime since router enabled event"; + } + leaf mte-tuple-count { + type uint32; + description + "MTE Tuple count"; + } + } + + grouping IGMP-EDM-INTF-SUMMARY-BAG { + description + "IGMP interface summary info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + leaf group-limit { + type uint32; + description + "Maximum groups accepted per interface"; + } + leaf group-count { + type uint32; + description + "Current groups accepted per interface"; + } + leaf parent-ifhandle { + type xr:Interface-name; + description + "Parent if handle"; + } + leaf on-off { + type boolean; + description + "Enabled/Disabled"; + } + leaf time-since-last-query-in-seconds { + type uint32; + description + "Time elapsed since last query"; + } + leaf time-since-last-report-in-seconds { + type uint32; + description + "Time elapsed since last report"; + } + leaf router-uptime-in-seconds { + type uint32; + description + "Time elapsed since router enabled event"; + } + } + + grouping IGMP-EDM-SUMMARY-BAG { + description + "IGMP summary info"; + leaf robustness { + type uint32; + description + "Robustness variable"; + } + leaf group-limit { + type uint32; + description + "Maximum groups accepted"; + } + leaf group-count { + type uint32; + description + "Current groups accepted"; + } + leaf is-disabled { + type boolean; + description + "Is maximum enforcement disabled"; + } + leaf is-evpn-connection-up { + type boolean; + description + "Is EVPN connection up"; + } + leaf supported-interfaces { + type uint32; + description + "No. of supported interfaces"; + } + leaf unsupported-interfaces { + type uint32; + description + "No. of unsupported interfaces"; + } + leaf enabled-interface-count { + type uint32; + description + "No. of enabled interfaces"; + } + leaf disabled-interface-count { + type uint32; + description + "No. of disabled interfaces"; + } + leaf multi-homing-enabled-interfaces { + type uint32; + description + "No. of EVPN MH enabled interfaces"; + } + leaf tunnel-mte-config-count { + type uint32; + description + "No. of static group commands"; + } + leaf node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + leaf querier-number { + type uint32; + description + "Number of querier interfaces"; + } + list interface { + description + "Maximum and current groups accepted for each + interface"; + uses IGMP-EDM-INTF-SUMMARY-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper.yang new file mode 100644 index 000000000..2f9aa11e5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mld-oper.yang @@ -0,0 +1,464 @@ +module Cisco-IOS-XR-mld-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mld-oper"; + prefix mld-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mld-oper-sub1 { + revision-date 2022-09-21; + } + + 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 mld package operational data. + + This module contains definitions + for the following management objects: + mld: MLD operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-21 { + description + "event-history ipv4_igmp.bag/ipv4_igmp_common_oper.sch show mld missed-packet + 2022-08-23 + ts at scale show igmp commands + 2022-04-20 + Getting rid of default context path + 2021-12-01 + Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2021-05-17 { + description + "Added DVMRP packet counter tracking for malloc and free."; + semver:module-version "1.1.0"; + } + revision 2019-08-27 { + description + "Initial IOS-XR MLD native model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Igmpssm-map { + type enumeration { + enum "static" { + value 0; + description + "Static"; + } + enum "dns" { + value 1; + description + "Dns"; + } + enum "all" { + value 2; + description + "All"; + } + } + description + "Igmpssm map"; + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF table Names"; + container summary { + description + "IGMP Summary Information"; + uses IGMP-EDM-SUMMARY-BAG; + } + container interface-state-ons { + description + "IGMP Interface state on"; + list interface-state-on { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + container detail-groups { + description + "IGMP Detail Group Database"; + list detail-group { + key "group-address interface-name source-address"; + description + "IGMP Detail Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source/Host Address"; + } + uses IGMP-EDM-GROUPS-DETAIL-BAG; + } + } + container non-active-groups { + description + "IGMP Non-Active Groups Information"; + uses IGMP-EDM-NOT-ACTIVE-ALLGROUPS-BAG; + } + container ssm-maps { + description + "SSM Map Table"; + list ssm-map { + key "ssm-map-type group-address"; + description + "SSM Map information"; + leaf ssm-map-type { + type Igmpssm-map; + description + "SSM Map Type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses IGMP-EDM-SSM-MAP-BAG; + } + } + container explicit-groups { + description + "IGMP Explicit Group Database"; + list explicit-group { + key "group-address interface-name source-address"; + description + "IGMP Explicit Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source/Host Address"; + } + uses IGMP-EDM-GROUPS-ET-BAG; + } + } + container interface-table { + description + "IGMP Interface specific Table"; + uses INTERFACE; + } + container interface-unicast-qos-adjusts { + description + "IGMP Interface Unicast-Qos-Adjust"; + list interface-unicast-qos-adjust { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-I2Q-INTF-STATS-BAG; + } + } + container ranges { + description + "Range table"; + list range { + key "group-address group-mask"; + description + "Range information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + leaf group-mask { + type uint32; + description + "Group Mask"; + } + uses IGMP-GROUP-RANGE; + } + } + container ifrs-interfaces { + description + "IGMP Interface specific"; + list ifrs-interface { + key "interface-name"; + description + "IGMP IFRS Interface"; + leaf interface-name { + type xr:Interface-name; + description + "IFRS Interface Name"; + } + uses IGMP-EDM-IDB-IFRS-BAG; + } + } + container traffic-counters { + description + "IGMP Message Traffic Counters"; + uses IGMP-EDM-TRAFFIC-BAG; + } + container groups { + description + "IGMP Group Database Table"; + list group { + key "group-address interface-name"; + description + "IGMP Group Entry Information"; + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-GROUPS-BAG; + } + } + container group-summary { + description + "IGMP Groups Summary"; + uses IGMP-EDM-GROUPS-SUMMARY-BAG; + } + container ifrs-interface-summary { + description + "IGMP IFRS Interface summary"; + uses IGMP-EDM-IDB-SUMM-BAG; + } + container global-interface-table { + description + "IGMP Global Interface "; + uses INTERFACE; + } + container ssm-map-details { + description + "SSM Map Detail"; + list ssm-map-detail { + key "ssm-map-type group-address"; + description + "SSM Map Detail Table information"; + leaf ssm-map-type { + type Igmpssm-map; + description + "SSM Map Type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses IGMP-EDM-SSM-MAP-DETAIL-BAG; + } + } + container interface-state-offs { + description + "IGMP Interface state off"; + list interface-state-off { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + } + } + + grouping INTERFACE { + description + "Common node of interface-table, + global-interface-table"; + list interface { + key "interface-name"; + description + "IGMP Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IGMP-EDM-IDB-BAG; + } + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container amt-summary { + description + "MRIB RouteDB Expiry Information"; + uses AMT-SUMMARY-BAG; + } + container nsr { + description + "NSR Information"; + uses IGMP-EDM-NSR-BAG; + } + container amt-gateways { + description + "Table containing AMT Gateway DataBase + information"; + list amt-gateway { + key "gateway-address port"; + description + "AMT Gateway DataBase information"; + leaf gateway-address { + type inet:ipv4-address-no-zone; + description + "Gateway Address"; + } + leaf port { + type uint32; + description + "Port"; + } + uses AMT-GW-BAG; + } + } + container unicast-qos-adjust-stats { + description + "IGMP Unicast-Qos-Adjust Statistics"; + uses IGMP-EDM-I2Q-STATS-BAG; + } + container bvi-statistics { + description + "IGMP BVI Stats"; + uses IGMP-EDM-BVI-STATS-BAG; + } + container missed-packets-table { + description + "Missed packets information"; + container missed-packets-membership-table { + description + "Missed packets membership information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-ssm-query-table { + description + "Missed packets ssm query information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-general-query-table { + description + "Missed packets general query information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-group-specific-table { + description + "Missed packets group specific information"; + uses IGMP-MISSED-PACKETS-LIST-BAG; + } + } + container nsf { + description + "NSF Information"; + uses IGMP-EDM-NSF-BAG; + } + } + } + + grouping ACTIVE { + description + "Common node of igmp, mld"; + container active { + description + "Active Process"; + uses VRF-TABLE; + uses PROCESS; + } + } + + grouping STANDBY { + description + "Common node of igmp, mld"; + container standby { + description + "Standby Process"; + uses VRF-TABLE; + uses PROCESS; + } + } + + container mld { + config false; + description + "MLD operational data"; + uses STANDBY; + uses ACTIVE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-cfg.yang new file mode 100644 index 000000000..be3ee5235 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-cfg.yang @@ -0,0 +1,93 @@ +module Cisco-IOS-XR-mpls-io-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-io-cfg"; + prefix mpls-io-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 mpls-io package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-mpls-cfg.yang which will provide the + compatible functionalities. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-05-18 { + description + "IOS XR 6.2.2 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container mpls { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-if-mpls-cfg.yang which will + provide the compatible functionalities. MPLS + configuration under an interface"; + container label-security { + description + "MPLS label security"; + leaf multi-label-drop { + type empty; + description + "Enable drop of multi-labelled incoming packets + on a Interface"; + } + leaf rpf { + type empty; + description + "Enable MPLS RPF for incoming packets on a + Interface"; + } + } + leaf mtu { + type uint32 { + range "68..65535"; + } + description + "Set the MPLS MTU for the interface"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper-sub1.yang new file mode 100644 index 000000000..8131c5650 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper-sub1.yang @@ -0,0 +1,67 @@ +submodule Cisco-IOS-XR-mpls-io-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-io-oper { + prefix Cisco-IOS-XR-mpls-io-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-io package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-21 { + description + "IOS XR 7.0.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MPLS-IO-SHOW-INTF-INFO { + description + "MPLS EA information for a particular Interface"; + leaf mtu { + type uint32; + description + "MTU for fragmentation"; + } + leaf bkp-label-stack-depth { + type uint8; + description + "Interface Backup Label Stack Depth"; + } + leaf srte-label-stack-depth { + type uint8; + description + "Interface SR-TE Label Stack Depth"; + } + leaf pri-label-stack-depth { + type uint8; + description + "Interface Primary Label Stack Depth"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper.yang new file mode 100644 index 000000000..29f5b14e1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-io-oper.yang @@ -0,0 +1,123 @@ +module Cisco-IOS-XR-mpls-io-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-io-oper"; + prefix mpls-io-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-io-oper-sub1 { + revision-date 2019-04-05; + } + + 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 mpls-io package operational data. + + This module contains definitions + for the following management objects: + mpls-ea: MPLS IO EA operational data + mpls-ma: MPLS IO MA operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-21 { + description + "IOS XR 7.0.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mpls-ea { + config false; + description + "MPLS IO EA operational data"; + container nodes { + description + "NODE container class for MPLS IO EA operational + data"; + list node { + key "node-name"; + description + "Per node MPLS IO EA operational data"; + container interfaces { + description + "MPLS IO EA Interfaces information "; + list interface { + key "interface-name"; + description + "MPLS IO EA NODE Interface data "; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-IO-SHOW-INTF-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + container mpls-ma { + config false; + description + "MPLS IO MA operational data"; + container nodes { + description + "NODE container class for MPLS IO MA operational + data"; + list node { + key "node-name"; + description + "Per node MPLS IO MA operational data"; + container interfaces { + description + "MPLS IO MA Interfaces information "; + list interface { + key "interface-name"; + description + "MPLS IO MA NODE Interface data "; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-IO-SHOW-INTF-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg-datatypes.yang new file mode 100644 index 000000000..f20b2e43f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg-datatypes.yang @@ -0,0 +1,157 @@ +module Cisco-IOS-XR-mpls-ldp-cfg-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-ldp-cfg-datatypes"; + prefix mpls-ldp-cfg-datatypes; + + 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 mpls-ldp-cfg-datat package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-ldp-cfg.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-ldp-nbr-password { + type enumeration { + enum "disable" { + value 1; + description + "Disable the global default password for this + neighbor"; + } + enum "specified" { + value 2; + description + "Specify a password for this neighbor"; + } + } + description + "Mpls ldp nbr password"; + } + + typedef Mpls-ldp-downstream-on-demand { + type enumeration { + enum "peer-acl" { + value 1; + description + "Downstream on Demand peers permitted by ACL"; + } + } + description + "Mpls ldp downstream on demand"; + } + + typedef Mpls-ldp-router-id { + type enumeration { + enum "address" { + value 1; + description + "Use given IP address as LDP Router ID"; + } + } + description + "Mpls ldp router id"; + } + + typedef Mpls-ldp-interval-time { + type uint32 { + range "1..65535"; + } + description + "Mpls ldp interval time"; + } + + typedef Mpls-ldp-hold-time { + type uint32 { + range "1..65535"; + } + description + "Mpls ldp hold time"; + } + + typedef Mpls-ldpaf-name { + type enumeration { + enum "ipv4" { + value 4; + description + "IPv4"; + } + enum "ipv6" { + value 6; + description + "IPv6"; + } + } + description + "Mpls ldpaf name"; + } + + typedef Mpls-ldp-session-protection { + type enumeration { + enum "all" { + value 1; + description + "Protect all peer sessions"; + } + enum "for" { + value 2; + description + "Protect peer session(s) permitted by peer ACL"; + } + enum "all-with-duration" { + value 3; + description + "Protect all peer sessions and holdup protection + for given duration"; + } + enum "for-with-duration" { + value 4; + description + "Protect peer session(s) permitted by peer ACL + and holdup protection for given duration"; + } + enum "all-with-forever" { + value 5; + description + "Protect all peer sessions and holdup protection + forever"; + } + enum "for-with-forever" { + value 6; + description + "Protect peer session(s) permitted by peer ACL + and holdup protection forever"; + } + } + description + "Mpls ldp session protection"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg.yang new file mode 100644 index 000000000..4b9183482 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-cfg.yang @@ -0,0 +1,2006 @@ +module Cisco-IOS-XR-mpls-ldp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-ldp-cfg"; + prefix mpls-ldp-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 mpls-ldp package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-ldp-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + mpls-ldp: MPLS LDP configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-30 { + description + "Corrected config path for clone tunnel + 2021-12-19 + Added new yang element for cloned named tunnels in LDP to be auto-enabled."; + semver:module-version "1.4.0"; + } + revision 2021-07-16 { + description + "Added leaf class containing configuration to disable the advertisement of the Vendor-Private TLV LDP Cisco IOS-XR Capability in MPLS LDP Initialization Message"; + semver:module-version "1.3.0"; + } + revision 2020-08-31 { + description + "New ELC config added."; + semver:module-version "1.2.0"; + } + revision 2019-06-05 { + description + "Added SAC capabilities to schema"; + semver:module-version "1.1.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-ldp-nbr-password { + type enumeration { + enum "disable" { + value 1; + description + "Disable the global default password for this + neighbor"; + } + enum "specified" { + value 2; + description + "Specify a password for this neighbor"; + } + } + description + "Mpls ldp nbr password"; + } + + typedef Mpls-ldp-label-allocation { + type enumeration { + enum "acl" { + value 1; + description + "Allocate label for prefixes permitted by ACL"; + } + enum "host" { + value 2; + description + "Allocate label for host routes only"; + } + } + description + "Mpls ldp label allocation"; + } + + typedef Mpls-ldp-downstream-on-demand { + type enumeration { + enum "peer-acl" { + value 1; + description + "Downstream on Demand peers permitted by ACL"; + } + } + description + "Mpls ldp downstream on demand"; + } + + typedef Mldp-policy-mode { + type enumeration { + enum "inbound" { + value 1; + description + "Inbound route policy"; + } + enum "outbound" { + value 2; + description + "Outbound route policy"; + } + } + description + "Mldp policy mode"; + } + + typedef Mpls-ldp-targeted-accept { + type enumeration { + enum "all" { + value 1; + description + "Accept targeted hello from all"; + } + enum "from" { + value 2; + description + "Accept targeted hello from peer ACL"; + } + } + description + "Mpls ldp targeted accept"; + } + + typedef Mpls-ldp-interval-time { + type uint32 { + range "1..65535"; + } + description + "Mpls ldp interval time"; + } + + typedef Mpls-ldp-mesh-group-id { + type uint32 { + range "0..4294967295"; + } + description + "Mpls ldp mesh group id"; + } + + typedef Mpls-ldp-exp-null { + type enumeration { + enum "all" { + value 1; + description + "Advertise explicit-null for all connected + prefixes to all peers"; + } + enum "for" { + value 2; + description + "Advertise explicit-null for prefix(es) + permitted by prefix ACL"; + } + enum "to" { + value 3; + description + "Advertise explicit-null for all connected + prefixes to peer(s) permitted by peer ACL"; + } + enum "for-to" { + value 4; + description + "Advertise explicit-null for prefix(es) + permitted by prefix ACL to peer(s) permitted by + peer ACL"; + } + } + description + "Mpls ldp exp null"; + } + + typedef Mpls-ldp-hold-time { + type uint32 { + range "1..65535"; + } + description + "Mpls ldp hold time"; + } + + typedef Mpls-ldp-dscp { + type uint32 { + range "0..63"; + } + description + "Mpls ldp dscp"; + } + + typedef Mpls-ldpaf-name { + type enumeration { + enum "ipv4" { + value 4; + description + "IPv4"; + } + enum "ipv6" { + value 6; + description + "IPv6"; + } + } + description + "Mpls ldpaf name"; + } + + typedef Mpls-ldp-transport-address { + type enumeration { + enum "interface" { + value 1; + description + "Use interface IP address"; + } + enum "address" { + value 2; + description + "Use given IP address"; + } + } + description + "Mpls ldp transport address"; + } + + typedef Mpls-ldp-session-protection { + type enumeration { + enum "all" { + value 1; + description + "Protect all peer sessions"; + } + enum "for" { + value 2; + description + "Protect peer session(s) permitted by peer ACL"; + } + enum "all-with-duration" { + value 3; + description + "Protect all peer sessions and holdup protection + for given duration"; + } + enum "for-with-duration" { + value 4; + description + "Protect peer session(s) permitted by peer ACL + and holdup protection for given duration"; + } + enum "all-with-forever" { + value 5; + description + "Protect all peer sessions and holdup protection + forever"; + } + enum "for-with-forever" { + value 6; + description + "Protect peer session(s) permitted by peer ACL + and holdup protection forever"; + } + } + description + "Mpls ldp session protection"; + } + + typedef Mpls-ldp-label-advertise { + type enumeration { + enum "for" { + value 1; + description + "Advertise label for prefix(es) permitted by + prefix ACL"; + } + enum "for-to" { + value 2; + description + "Advertise label for prefix(es) permitted by + prefix ACL to peer(s) permitted by peer ACL"; + } + } + description + "Mpls ldp label advertise"; + } + + typedef Mpls-ldp-advertise-bgp-acl { + type enumeration { + enum "peer-acl" { + value 1; + description + "BGP prefixes advertised to peers permitted by + ACL"; + } + } + description + "Mpls ldp advertise bgp acl"; + } + + grouping ENABLE { + description + "Common node of mldp, vrf"; + leaf enable { + type empty; + description + "Enable Multicast Label Distribution Protocol + (mLDP)"; + } + } + + grouping AF-TABLE { + description + "Common node of default-vrf, vrf"; + container afs { + description + "Address Family specific operational data"; + list af { + key "af-name"; + description + "Operational data for given Address Family"; + container recursive-forwarding { + description + "Enable recursive forwarding"; + leaf enable { + type empty; + description + "Enable recursive forwarding"; + } + leaf policy { + type string { + length "1..64"; + } + description + "Recursive forwarding policy name"; + } + } + container mldp-recursive-fec { + description + "MPLS mLDP Recursive FEC"; + leaf enable { + type empty; + description + "Enable MPLS mLDP Recursive FEC"; + } + leaf policy { + type string { + length "1..64"; + } + description + "Route policy name"; + } + } + container neighbor-policies { + description + "MLDP neighbor policies"; + list neighbor-policy { + key "root-address policy-mode"; + description + "Route Policy"; + leaf root-address { + type inet:ipv4-address-no-zone; + description + "Neighbor Address"; + } + leaf policy-mode { + type Mldp-policy-mode; + description + "Inbound/Outbound Policy"; + } + leaf route-policy { + type string { + length "1..64"; + } + mandatory true; + description + "Route policy name"; + } + } + } + container mo-frr { + description + "MPLS mLDP MoFRR"; + leaf enable { + type empty; + description + "Enable MPLS mLDP MoFRR"; + } + leaf policy { + type string { + length "1..64"; + } + description + "Route policy name"; + } + } + container make-before-break { + description + "MPLS mLDP Make-Before-Break configuration"; + container signaling { + description + "Enable MPLS mLDP MBB signaling"; + leaf forward-delay { + type uint32 { + range "0..600"; + } + units "second"; + description + "Forwarding Delay in Seconds"; + } + leaf delete-delay { + type uint32 { + range "0..60"; + } + units "second"; + description + "Delete Delay in seconds"; + } + } + leaf policy { + type string { + length "1..64"; + } + description + "Route policy name"; + } + } + container csc { + description + "MPLS mLDP CSC"; + leaf enable { + type empty; + description + "Enable MPLS mLDP CSC"; + } + } + leaf enable { + type empty; + description + "Enable Multicast Label Distribution Protocol + (mLDP) under AF."; + } + leaf mldp-rib-unicast-always { + type empty; + description + "Enable MPLS MLDP RIB unicast-always + configuration"; + } + leaf af-name { + type Mpls-ldpaf-name; + description + "Address Family name"; + } + } + } + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-ldp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-ldp-cfg.yang which will + provide the compatible functionalities. + MPLS-LDP-STD-MIB notification configuration"; + leaf session-up { + type empty; + description + "Enable mplsLdpSessionUp notification"; + } + leaf init-session-threshold-exceeded { + type empty; + description + "Enable mplsLdpInitSessionThresholdExceeded + notification"; + } + leaf session-down { + type empty; + description + "Enable mplsLdpSessionDown notification"; + } + } + } + container mpls-ldp { + presence "Indicates a mpls-ldp node is configured."; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-ldp-cfg.yang which will + provide the compatible functionalities. MPLS LDP + configuration"; + container default-vrf { + description + "Global VRF attribute configuration for MPLS LDP"; + container afs { + description + "Address Family specific configuration for MPLS + LDP"; + list af { + key "af-name"; + description + "Configure data for given Address Family"; + container label { + description + "Configure Label policies and control"; + container remote { + description + "Configure remote/peer label policies and + control"; + container accept { + description + "Configure inbound label acceptance"; + container peer-accept-policies { + description + "Configuration related to neighbors for + inbound label acceptance"; + list peer-accept-policy { + key "lsr-id label-space-id"; + description + "Control acceptance of labels from a + neighbor for prefix(es) using ACL"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0"; + } + description + "Label space ID of neighbor"; + } + leaf prefix-acl-name { + type string; + mandatory true; + description + "Name of prefix ACL"; + } + } + } + } + } + container local { + description + "Configure local label policies and control"; + container advertise { + description + "Configure outbound label advertisement"; + container peer-advertise-policies { + description + "Configure peer centric outbound label + advertisement using ACL"; + list peer-advertise-policy { + key "lsr-id label-space-id"; + description + "Control advertisement of prefix(es) using + ACL"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0"; + } + description + "Label space ID of neighbor"; + } + leaf prefix-acl-name { + type string; + mandatory true; + description + "Name of prefix ACL"; + } + } + } + container prefix-advertise-policies { + description + "Configure prefix centric outbound label + advertisement using ACL"; + list prefix-advertise-policy { + key "prefix-acl-name"; + description + "Control advertisement of prefix(es) using + ACL"; + leaf prefix-acl-name { + type xr:Cisco-ios-xr-string; + description + "Name of prefix ACL"; + } + leaf advertise-type { + type Mpls-ldp-label-advertise; + description + "Label advertise type"; + } + leaf peer-acl-name { + when "../advertise-type = 'for-to'" { + description + "../AdvertiseType = ForTo"; + } + type string; + description + "Name of peer ACL"; + } + } + } + container explicit-null { + description + "Configure advertisment of explicit-null + for connected prefixes."; + leaf explicit-null-type { + type Mpls-ldp-exp-null; + description + "Explicit Null command variant"; + } + leaf prefix-acl-name { + when "../explicit-null-type = 'for' or ../explicit-null-type = 'for-to'" { + description + "../ExplicitNullType = For or . + ./ExplicitNullType = ForTo"; + } + type string; + description + "Name of prefix ACL"; + } + leaf peer-acl-name { + when "../explicit-null-type = 'to' or ../explicit-null-type = 'for-to'" { + description + "../ExplicitNullType = To or . + ./ExplicitNullType = ForTo"; + } + type string; + description + "Name of peer ACL"; + } + } + container interfaces { + description + "Configure outbound label advertisement for + an interface"; + list interface { + key "interface-name"; + description + "Control advertisement of interface's host + IP address"; + leaf interface-name { + type xr:Interface-name; + description + "Name of interface"; + } + } + } + leaf disable { + type empty; + description + "Disable label advertisement"; + } + } + container allocate { + description + "Control local label allocation for + prefix(es)"; + leaf allocation-type { + type Mpls-ldp-label-allocation; + description + "Label allocation type"; + } + leaf prefix-acl-name { + when "../allocation-type = 'acl'" { + description + "../AllocationType = ACL"; + } + type string; + description + "Name of prefix ACL"; + } + } + leaf implicit-null-override { + type string; + description + "Control use of implicit-null label for set + of prefix(es)"; + } + leaf default-route { + type empty; + description + "Enable MPLS forwarding for default route"; + } + } + } + container discovery { + description + "Configure Discovery parameters"; + container targeted-hello-accept { + description + "Configure acceptance from and responding to + targeted hellos."; + leaf accept-type { + type Mpls-ldp-targeted-accept; + description + "Type of acceptance"; + } + leaf peer-acl-name { + when "../accept-type = 'from'" { + description + "../AcceptType = From"; + } + type string; + description + "Name of peer ACL"; + } + } + leaf transport-address { + type inet:ip-address-no-zone; + description + "Global discovery transport address for + address family"; + } + } + container traffic-engineering { + description + "MPLS Traffic Engingeering parameters for LDP"; + container auto-tunnel-mesh { + description + "MPLS Traffic Engineering auto-tunnel mesh + parameters for LDP"; + container group-ids { + description + "Enable interfaces in specific MPLS TE + auto-tunnel mesh-groups"; + list group-id { + key "mesh-group-id"; + description + "Auto-mesh group identifier to enable"; + leaf mesh-group-id { + type Mpls-ldp-mesh-group-id; + description + "Mesh group ID"; + } + } + } + leaf group-all { + type empty; + description + "Enable all MPLS TE auto-tunnel mesh-group + interfaces"; + } + } + } + container neighbor { + description + "Configuration related to Neighbors"; + container addresses { + description + "Configuration related to neighbors using + neighbor address"; + list address { + key "ip-address"; + description + "IP address based configuration related to a + neighbor"; + leaf targeted { + type empty; + description + "Establish targeted session with given + address"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "The IP address"; + } + } + } + container segment-routing-policies { + description + "Configuration related to SR policies"; + list segment-routing-policy { + key "name"; + description + "Name based configuration related to a SR + policy"; + leaf targeted { + type empty; + description + "Establish targeted session with given + address"; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "SR Policy Name"; + } + } + } + } + container redistribution-protocol { + description + "MPLS LDP configuration for protocol + redistribution"; + container bgp { + description + "MPLS LDP configuration for protocol + redistribution"; + container as { + description + "MPLS LDP configuration for protocol + redistribution"; + leaf as-xx { + type uint32 { + range "0..65535"; + } + description + "First half of BGP AS number in XX.YY + format. Mandatory Must be a non-zero + value if second half is zero."; + } + leaf as-yy { + type uint32 { + range "0..4294967295"; + } + description + "Second half of BGP AS number in XX.YY + format. Mandatory Must be a non-zero value + if first half is zero."; + } + } + container advertise-to { + description + "ACL containing list of neighbors for BGP + route redistribution"; + leaf type { + type Mpls-ldp-advertise-bgp-acl; + description + "advertise to peer acl type"; + } + leaf peer-acl-name { + when "../type = 'peer-acl'" { + description + "../Type = PeerACL"; + } + type string; + description + "Name of peer ACL"; + } + } + } + } + leaf enable { + type empty; + description + "Enable Address Family"; + } + leaf af-name { + type Mpls-ldpaf-name; + description + "Address Family type"; + } + } + } + container global { + description + "Default VRF Global configuration for MPLS LDP"; + container session { + description + "LDP Session parameters"; + container protection { + description + "Configure Session Protection parameters"; + leaf protection-type { + type Mpls-ldp-session-protection; + description + "Session protection type"; + } + leaf peer-acl-name { + when "../protection-type = 'for' or ../protection-type = 'for-with-duration' or ../protection-type = 'for-with-forever'" { + description + "../ProtectionType = For or . + ./ProtectionType = ForWithDuration or . + ./ProtectionType = ForWithForever"; + } + type string; + description + "Name of peer ACL"; + } + leaf duration { + when "../protection-type = 'all-with-duration' or ../protection-type = 'for-with-duration'" { + description + "../ProtectionType = AllWithDuration or . + ./ProtectionType = ForWithDuration"; + } + type uint32 { + range "30..2147483"; + } + description + "Holdup duration"; + } + } + container downstream-on-demand { + description + "ACL with the list of neighbors configured for + Downstream on Demand"; + leaf type { + type Mpls-ldp-downstream-on-demand; + description + "Downstream on demand type"; + } + leaf peer-acl-name { + when "../type = 'peer-acl'" { + description + "../Type = PeerACL"; + } + type string; + description + "Name of peer ACL"; + } + } + } + container neighbor { + description + "Configuration related to Neighbors"; + container ldp-ids { + description + "Configuration related to Neighbors using LDP + Id"; + list ldp-id { + key "lsr-id label-space-id"; + description + "LDP ID based configuration related to a + neigbor"; + container password { + description + "Password for MD5 authentication for this + neighbor"; + leaf command-type { + type Mpls-ldp-nbr-password; + description + "Command type for password configuration"; + } + leaf password { + when "../command-type = 'specified'" { + description + "../CommandType = Specified"; + } + type xr:Proprietary-password; + description + "The neighbor password"; + } + } + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0"; + } + description + "Label space ID of neighbor"; + } + } + } + container dual-stack { + description + "Configuration related to neighbor transport"; + container transport-connection { + description + "Configuration related to neighbor transport"; + container prefer { + description + "Configuration related to neighbor + dual-stack xport-connection preference"; + leaf ipv4 { + type empty; + description + "Configuration related to neighbor + dual-stack xport-connection preference + ipv4"; + } + } + leaf max-wait { + type uint32 { + range "0..60"; + } + units "second"; + description + "Configuration related to neighbor + dual-stack xport-connection max-wait"; + } + } + leaf tlv-compliance { + type empty; + description + "Configuration to enable neighbor dual-stack + tlv-compliance"; + } + } + leaf password { + type xr:Proprietary-password; + description + "Default password for all neigbors"; + } + } + container graceful-restart { + description + "Configuration for per-VRF LDP Graceful Restart + parameters"; + container helper-peer { + description + "Configure parameters related to GR peer(s) + opearating in helper mode"; + leaf maintain-on-local-reset { + type string; + description + "Maintain the state of a GR peer upon a local + reset"; + } + } + } + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Configuration for LDP Router ID (LDP ID)"; + } + } + container interfaces { + description + "MPLS LDP configuration pertaining to interfaces"; + list interface { + key "interface-name"; + description + "MPLS LDP configuration for a particular + interface"; + container afs { + description + "Address Family specific configuration for + MPLS LDP intf"; + list af { + key "af-name"; + description + "Configure data for given Address Family"; + container discovery { + description + "Configure interface discovery parameters"; + container transport-address { + description + "MPLS LDP configuration for interface + discovery transportaddress."; + leaf address-type { + type Mpls-ldp-transport-address; + description + "Transport address option"; + } + leaf address { + when "../address-type = 'address'" { + description + "../AddressType = Address"; + } + type inet:ip-address-no-zone; + description + "IP address"; + } + } + } + container clone-tunnel { + description + "Auto-Enable cloned TE tunnels for LDP"; + leaf enable { + type empty; + description + "none"; + } + } + container igp { + description + "LDP interface IGP configuration"; + leaf disable-auto-config { + type empty; + description + "Disable IGP Auto-config on this interface"; + } + } + container mldp { + description + "Interface configuration parameters for mLDP"; + leaf disable { + type empty; + description + "Disable mLDP on LDP enabled interface"; + } + } + leaf enable { + type empty; + description + "Enable Address Family"; + } + leaf af-name { + type Mpls-ldpaf-name; + description + "Address Family name"; + } + } + } + container global { + description + "Per VRF interface Global configuration for + MPLS LDP"; + container discovery { + description + "Configure interface discovery parameters"; + container link-hello { + description + "LDP Link Hellos"; + leaf interval { + type Mpls-ldp-interval-time; + units "second"; + default "5"; + description + "Link Hello interval"; + } + leaf dual-stack { + type Mpls-ldpaf-name; + default "ipv4"; + description + "Dual Stack Address Family Preference"; + } + leaf hold-time { + type Mpls-ldp-hold-time; + units "second"; + default "15"; + description + "Time (seconds) - 65535 implies infinite"; + } + } + leaf disable-quick-start { + type empty; + description + "Disable discovery's quick start mode"; + } + } + container igp { + description + "LDP IGP configuration"; + container sync { + description + "LDP IGP synchronization"; + container delay { + description + "LDP IGP synchronization delay time"; + container on-session-up { + description + "Interface sync up delay after session up"; + leaf disable { + type empty; + description + "Disable delay after session up"; + } + leaf timeout { + type uint32 { + range "5..300"; + } + units "second"; + description + "Time (seconds)"; + } + } + } + } + } + } + leaf enable { + type empty; + description + "Enable Label Distribution Protocol (LDP) on + thisinterface"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of interface"; + } + } + } + } + container vrfs { + description + "VRF Table attribute configuration for MPLS LDP"; + list vrf { + key "vrf-name"; + description + "VRF attribute configuration for MPLS LDP"; + container global { + description + "Per VRF Global configuration for MPLS LDP"; + container session { + description + "LDP Session parameters"; + container downstream-on-demand { + description + "ACL with the list of neighbors configured + for Downstream on Demand"; + leaf type { + type Mpls-ldp-downstream-on-demand; + description + "Downstream on demand type"; + } + leaf peer-acl-name { + when "../type = 'peer-acl'" { + description + "../Type = PeerACL"; + } + type string; + description + "Name of peer ACL"; + } + } + } + container neighbor { + description + "Configuration related to Neighbors"; + container dual-stack { + description + "Configuration related to neighbor transport"; + container transport-connection { + description + "Configuration related to neighbor transport"; + container prefer { + description + "Configuration related to neighbor + dual-stack xport-connection preference"; + leaf ipv4 { + type empty; + description + "Configuration related to neighbor + dual-stack xport-connection preference + ipv4"; + } + } + leaf max-wait { + type uint32 { + range "0..60"; + } + units "second"; + description + "Configuration related to neighbor + dual-stack xport-connection max-wait"; + } + } + } + container ldp-ids { + description + "Configuration related to Neighbors using LDP + Id"; + list ldp-id { + key "lsr-id label-space-id"; + description + "LDP ID based configuration related to a + neigbor"; + container password { + description + "Password for MD5 authentication for this + neighbor"; + leaf command-type { + type Mpls-ldp-nbr-password; + description + "Command type for password configuration"; + } + leaf password { + when "../command-type = 'specified'" { + description + "../CommandType = Specified"; + } + type xr:Proprietary-password; + description + "The neighbor password"; + } + } + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0"; + } + description + "Label space ID of neighbor"; + } + } + } + leaf password { + type xr:Proprietary-password; + description + "Default password for all neigbors"; + } + } + container graceful-restart { + description + "Configuration for per-VRF LDP Graceful + Restart parameters"; + container helper-peer { + description + "Configure parameters related to GR peer(s) + opearating in helper mode"; + leaf maintain-on-local-reset { + type string; + description + "Maintain the state of a GR peer upon a + local reset"; + } + } + } + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Configuration for LDP Router ID (LDP ID)"; + } + } + container afs { + description + "Address Family specific configuration for MPLS + LDP vrf"; + list af { + key "af-name"; + description + "Configure data for given Address Family"; + container discovery { + description + "Configure Discovery parameters"; + leaf transport-address { + type inet:ip-address-no-zone; + description + "Global discovery transport address for + address family"; + } + } + container label { + description + "Configure Label policies and control"; + container remote { + description + "Configure remote/peer label policies and + control"; + container accept { + description + "Configure inbound label acceptance"; + container peer-accept-policies { + description + "Configuration related to Neighbors for + inbound label acceptance"; + list peer-accept-policy { + must "peer-accept-policy-data or lsr-id" { + description + "peer-accept-policy-data or lsr-id must + be present."; + } + key "label-space-id"; + description + "Control acceptasnce of labels from a + neighbor for prefix(es) using ACL"; + + grouping PEER-ACCEPT-POLICY-CONTENT { + description + "Content grouping."; + leaf prefix-acl-name { + type string; + mandatory true; + description + "Name of prefix ACL"; + } + } + container peer-accept-policy-data { + description + "Data container."; + uses PEER-ACCEPT-POLICY-CONTENT; + } + leaf label-space-id { + type uint32 { + range "0"; + } + description + "Label space ID of neighbor"; + } + list lsr-id { + key "lsr-id"; + description + "keys: lsr-id"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + uses PEER-ACCEPT-POLICY-CONTENT; + } + } + } + } + } + container local { + description + "Configure local label policies and control"; + container advertise { + description + "Configure outbound label advertisement"; + container peer-advertise-policies { + description + "Configure peer centric outbound label + advertisement using ACL"; + list peer-advertise-policy { + must "peer-advertise-policy-data or lsr-id" { + description + "peer-advertise-policy-data or lsr-id + must be present."; + } + key "label-space-id"; + description + "Control advertisement of prefix(es) + using ACL"; + + grouping PEER-ADVERTISE-POLICY-CONTENT { + description + "Content grouping."; + leaf prefix-acl-name { + type string; + mandatory true; + description + "Name of prefix ACL"; + } + } + container peer-advertise-policy-data { + description + "Data container."; + uses PEER-ADVERTISE-POLICY-CONTENT; + } + leaf label-space-id { + type uint32 { + range "0"; + } + description + "Label space ID of neighbor"; + } + list lsr-id { + key "lsr-id"; + description + "keys: lsr-id"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + uses PEER-ADVERTISE-POLICY-CONTENT; + } + } + } + container interfaces { + description + "Configure outbound label advertisement + for an interface"; + list interface { + key "interface-name"; + description + "Control advertisement of interface's + host IP address"; + leaf interface-name { + type xr:Interface-name; + description + "Name of interface"; + } + } + } + container explicit-null { + description + "Configure advertisment of explicit-null + for connected prefixes."; + leaf explicit-null-type { + type Mpls-ldp-exp-null; + description + "Explicit Null command variant"; + } + leaf prefix-acl-name { + when "../explicit-null-type = 'for' or ../explicit-null-type = 'for-to'" { + description + "../ExplicitNullType = For or . + ./ExplicitNullType = ForTo"; + } + type string; + description + "Name of prefix ACL"; + } + leaf peer-acl-name { + when "../explicit-null-type = 'to' or ../explicit-null-type = 'for-to'" { + description + "../ExplicitNullType = To or . + ./ExplicitNullType = ForTo"; + } + type string; + description + "Name of peer ACL"; + } + } + leaf disable { + type empty; + description + "Disable label advertisement"; + } + } + container allocate { + description + "Control local label allocation for + prefix(es)"; + leaf allocation-type { + type Mpls-ldp-label-allocation; + description + "Label allocation type"; + } + leaf prefix-acl-name { + when "../allocation-type = 'acl'" { + description + "../AllocationType = ACL"; + } + type string; + description + "Name of prefix ACL"; + } + } + leaf implicit-null-override { + type string; + description + "Control use of implicit-null label for set + of prefix(es)"; + } + leaf default-route { + type empty; + description + "Enable MPLS forwarding for default route"; + } + } + } + leaf enable { + type empty; + description + "Enable Address Family"; + } + leaf af-name { + type Mpls-ldpaf-name; + description + "Address Family name"; + } + } + } + container interfaces { + description + "MPLS LDP configuration pertaining to + interfaces"; + list interface { + key "interface-name"; + description + "MPLS LDP configuration for a particular + interface"; + container afs { + description + "Address Family specific configuration for + MPLS LDP vrf intf"; + list af { + key "af-name"; + description + "Configure data for given Address Family"; + container discovery { + description + "Configure interface discovery parameters"; + container transport-address { + description + "MPLS LDP configuration for interface + discovery transportaddress."; + leaf address-type { + type Mpls-ldp-transport-address; + description + "Transport address option"; + } + leaf address { + when "../address-type = 'address'" { + description + "../AddressType = Address"; + } + type inet:ip-address-no-zone; + description + "IP address"; + } + } + } + leaf enable { + type empty; + description + "Enable Address Family"; + } + leaf af-name { + type Mpls-ldpaf-name; + description + "Address Family name"; + } + } + } + leaf enable { + type empty; + description + "Enable Label Distribution Protocol (LDP) on + thisinterface"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of interface"; + } + } + } + leaf enable { + type empty; + description + "Enable VRF"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + } + } + container global { + description + "Global configuration for MPLS LDP"; + container entropy-label { + description + "Configure for LDP Entropy-Label"; + leaf enable { + type empty; + description + "none"; + } + } + container session { + description + "LDP Session parameters"; + container backoff-time { + description + "Configure Session Backoff parameters"; + leaf initial-backoff-time { + type uint32 { + range "5..2147483"; + } + units "second"; + default "15"; + description + "Initial session backoff time (seconds)"; + } + leaf max-backoff-time { + type uint32 { + range "5..2147483"; + } + units "second"; + default "120"; + description + "Maximum session backoff time (seconds)"; + } + } + leaf hold-time { + type uint32 { + range "15..65535"; + } + units "second"; + default "180"; + description + "LDP Session holdtime"; + } + } + container igp { + description + "LDP IGP configuration"; + container sync { + description + "LDP IGP synchronization"; + container delay { + description + "LDP IGP synchronization delay time"; + leaf on-session-up { + type uint32 { + range "5..300"; + } + units "second"; + description + "Interface sync up delay after session up"; + } + leaf on-proc-restart { + type uint32 { + range "60..600"; + } + units "second"; + description + "Global sync up delay to be used after + process restart"; + } + } + } + } + container enable-logging { + description + "Enable logging of events"; + leaf nsr { + type empty; + description + "Enable logging of NSR events"; + } + leaf neighbor-changes { + type empty; + description + "Enable logging of neighbor events"; + } + leaf adjacency { + type empty; + description + "Enable logging of adjacency events"; + } + leaf session-protection { + type empty; + description + "Enable logging of session protection events"; + } + leaf gr-session-changes { + type empty; + description + "Enable logging of Graceful Restart (GR) events"; + } + } + container signalling { + description + "Configure LDP signalling parameters"; + leaf dscp { + type Mpls-ldp-dscp; + default "48"; + description + "DSCP for control packets"; + } + } + container capabilities { + description + "Configure LDP capabilities parameters"; + container sac { + description + "Configure LDP Capability State Announcement + Control"; + leaf disable-ipv4-prefix { + type boolean; + default "false"; + description + "Disable IPv4 Prefix"; + } + leaf disable-ipv6-prefix { + type boolean; + default "false"; + description + "Disable IPv6 Prefix"; + } + leaf disable-fec128 { + type boolean; + default "false"; + description + "Disable FEC128"; + } + leaf disable-fec129 { + type boolean; + default "false"; + description + "Disable FEC128"; + } + } + leaf cisco-iosxr-disable { + type empty; + description + "Configure Disable Announcement of LDP Cisco + IOS-XR Capability"; + } + } + container nsr { + description + "Configure LDP Non-Stop Routing"; + leaf enable { + type empty; + description + "none"; + } + } + container graceful-restart { + description + "Configuration for LDP Graceful Restart + parameters"; + leaf reconnect-timeout { + type uint32 { + range "60..1800"; + } + units "second"; + default "120"; + description + "Configure Graceful Restart Reconnect Timeout + value"; + } + leaf enable { + type empty; + description + "none"; + } + leaf forwarding-hold-time { + type uint32 { + range "60..1800"; + } + units "second"; + default "180"; + description + "Configure Graceful Restart Session holdtime"; + } + } + container discovery { + description + "Configure Discovery parameters"; + container link-hello { + description + "LDP Link Hellos"; + leaf interval { + type Mpls-ldp-interval-time; + units "second"; + default "5"; + description + "Link Hello interval"; + } + leaf hold-time { + type Mpls-ldp-hold-time; + units "second"; + default "15"; + description + "Time (seconds) - 65535 implies infinite"; + } + } + container targeted-hello { + description + "LDP Targeted Hellos"; + leaf interval { + type Mpls-ldp-interval-time; + units "second"; + default "10"; + description + "Targeted Hello interval"; + } + leaf hold-time { + type Mpls-ldp-hold-time; + units "second"; + default "90"; + description + "Time (seconds) - 65535 implies infinite"; + } + } + leaf disable-instance-tlv { + type empty; + description + "Disable transmit and receive processing for + private Instance TLV in LDP discovery hello + messages"; + } + leaf disable-quick-start { + type empty; + description + "Disable discovery's quick start mode"; + } + } + container mldp { + description + "MPLS mLDP configuration"; + container vrfs { + description + "VRF Table attribute configuration for MPLS LDP"; + list vrf { + key "vrf-name"; + description + "VRF attribute configuration for MPLS LDP"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + uses ENABLE; + uses AF-TABLE; + } + } + container default-vrf { + description + "Default VRF attribute configuration for mLDP"; + uses AF-TABLE; + } + container mldp-global { + description + "Global configuration for mLDP"; + container logging { + description + "MPLS mLDP logging"; + leaf notifications { + type empty; + description + "MPLS mLDP logging notifications"; + } + } + } + uses ENABLE; + } + container entropy-label-add-el { + description + "Impose Entropy Label on ELC bindings"; + leaf enable { + type empty; + description + "none"; + } + } + leaf disable-implicit-ipv4 { + type empty; + description + "Disable the implicit enabling for IPv4 address + family"; + } + leaf ltrace-buf-multiplier { + type uint32 { + range "1..5"; + } + default "1"; + description + "Configure Ltrace Buffer Multiplier"; + } + } + leaf enable { + type empty; + mandatory true; + description + "Enable Label Distribution Protocol (LDP) + globally.Without creating this object the LDP + feature will not be enabled. Deleting this + object will stop the LDP feature."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1.yang new file mode 100644 index 000000000..461582538 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1.yang @@ -0,0 +1,1500 @@ +submodule Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-ldp-mldp-oper { + prefix Cisco-IOS-XR-mpls-ldp-mldp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-ldp-mldp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-27 { + description + "Modified arg type for mldp database root address in schema and bgen files. from ipaddress to string"; + semver:module-version "1.2.0"; + } + revision 2021-04-27 { + description + "Added mLDP flex-algo"; + semver:module-version "1.2.0"; + } + revision 2020-10-18 { + description + "Backward compatible removal in telemetry event Cisco-IOS-XR-types, event-telemetry was removed."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-08-30 { + description + "Operational Yang model for mLDP."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MLDP-FIB-REGDB-BAG { + description + "MLDP FIB REGDB"; + leaf address { + type inet:ipv4-address; + description + "address"; + } + leaf registered { + type boolean; + description + "ecd registered"; + } + leaf stale { + type boolean; + description + "ECD Stale flag"; + } + leaf flags { + type uint8; + description + "interested flags"; + } + leaf algo { + type uint8; + description + "algo value"; + } + leaf sid { + type uint32; + description + "Sid"; + } + leaf notified-count { + type uint32; + description + "ecd notified count"; + } + leaf ecd-info { + type uint16; + description + "ecd info length"; + } + leaf notified-ts { + type string { + length "0..40"; + } + description + "notified timestamp"; + } + list path { + description + "path list"; + uses MLDP-ROOT-PATH-BAG; + } + } + + grouping MLDP-FLEX-PEER-BRANCH-BAG { + description + "MLDP Flex peer Branch Information"; + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf branch-type { + type uint32; + description + "Branch Type"; + } + leaf branch-id { + type uint32; + description + "Branch ID"; + } + } + + grouping MLDP-FLEX-PEER-BAG { + description + "MLDP Flex Peer Information"; + leaf fi-bregistered { + type boolean; + description + "Registered with FIB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf algo { + type uint8; + description + "Flex Algo"; + } + leaf sid { + type uint32; + description + "Sid"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf branch-count { + type uint32; + description + "Number of Branches"; + } + leaf path-count { + type uint32; + description + "Paths to reach"; + } + list branch { + description + "Peer Brach list"; + uses MLDP-FLEX-PEER-BRANCH-BAG; + } + list path { + description + "Peer Path list"; + uses MLDP-NEIGHBOR-PATH-BAG; + } + } + + grouping MLDP-FLEX-PEER-RIB-BAG { + description + "MLDP RIB algo"; + leaf ri-bregistered { + type uint8; + description + "RIB registered algo-id"; + } + leaf ri-blocal { + type uint32; + description + "Local Label"; + } + leaf metric { + type uint32; + description + "Metric"; + } + } + + grouping MLDP-NEIGHBOR-IDENT-BAG { + description + "MLDP Neighbor Identity Information"; + leaf address { + type inet:ipv4-address; + description + "MLDP neighbor identity address"; + } + } + + grouping MLDP-NEIGHBOR-ADJ-BAG { + description + "MLDP Neighbor Adjacency Information"; + leaf address { + type inet:ipv4-address; + description + "MLDP neighbor adjacency address"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "MLDP neighbor adjacency interface"; + } + leaf checkpoint-stale { + type boolean; + description + "MLDP neighbor adj info via checkpoint"; + } + leaf graceful-restart-stale { + type boolean; + description + "MLDP neighbor adj stale due to GR"; + } + leaf confict-ignore { + type boolean; + description + "Ignore this adjacency due to conflict"; + } + } + + grouping MLDP-NEIGHBOR-PATH-BAG { + description + "MLDP Neighbor Path Information"; + leaf neighbor-address { + type inet:ipv4-address; + description + "MLDP neighbor path address"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "MLDP neighbor path interface"; + } + leaf interface-name-parent { + type string { + length "0..65"; + } + description + "MLDP neighbor path interface"; + } + leaf mldp-adjacency { + type boolean; + description + "MLDP adjacency present"; + } + leaf checkpoint-stale { + type boolean; + description + "MLDP neighbor path info via checkpoint"; + } + leaf disabled { + type uint32; + description + "MLDP neighbor path is disabled"; + } + leaf rib-disc-id { + type uint16; + description + "RIB Discovery ID"; + } + } + + grouping MLDP-NEIGHBOR-BAG { + description + "MLDP Neighbor Information"; + leaf identity-string { + type string { + length "0..32"; + } + description + "MLDP Identity string"; + } + leaf capabilities { + type uint32; + description + "MLDP neighbor capabilities"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf up-time { + type uint32; + units "millisecond"; + description + "MLDP neighbor uptime in milli-seconds"; + } + leaf down { + type boolean; + description + "MLDP neighbor is marked as down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf target-adjacency { + type boolean; + description + "MLDP neighbor is targetted"; + } + leaf session-handle { + type uint32; + description + "MLDP neighbor session handle"; + } + leaf upstream-count { + type uint32; + description + "MLDP neighbor Upstream LSP count"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf branch-count { + type uint32; + description + "MLDP neighbor branch count"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf graceful-restart-enabled { + type boolean; + description + "Graceful restart enabled"; + } + leaf graceful-restart-active { + type boolean; + description + "LDP is in Graceful restart mode"; + } + leaf graceful-restart-instance { + type uint32; + description + "Graceful restart instance"; + } + leaf graceful-restart-reconnect-time { + type uint32; + description + "GR reconnect time"; + } + leaf label-map-timer { + type int32; + units "millisecond"; + description + "Label Mapping timer in milli-seconds"; + } + leaf checkpoint-stale { + type boolean; + description + "MLDP neighbor information via checkpoint"; + } + leaf path-count { + type uint32; + description + "MLDP neighbor path count"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf adjacency-count { + type uint32; + description + "MLDP neighbor adjacency count"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf inbound-neighbor-policy { + type string { + length "0..256"; + } + description + "Inbound Neighbor Policy"; + } + leaf outbound-neighbor-policy { + type string { + length "0..256"; + } + description + "Outbound Neighbor Policy"; + } + leaf peer-identity-count { + type uint32; + description + "MLDP peer identify count"; + } + leaf peer-upstream-preference { + type uint32; + description + "MLDP peer upstream preference"; + } + list neighbor-path { + description + "Path List"; + uses MLDP-NEIGHBOR-PATH-BAG; + } + list neighbor-adjacency { + description + "Adjacency List"; + uses MLDP-NEIGHBOR-ADJ-BAG; + } + list peer-identity { + description + "Identity List"; + uses MLDP-NEIGHBOR-IDENT-BAG; + } + list numberof-algo { + description + "RIB algo list"; + uses MLDP-FLEX-PEER-RIB-BAG; + } + list flex-peer { + description + "flex peer list"; + uses MLDP-FLEX-PEER-BAG; + } + } + + grouping MLDP-TABLE-BAG { + description + "MLDP Table Information"; + leaf table-name { + type string { + length "0..32"; + } + description + "Table name"; + } + leaf rib-converged { + type boolean; + description + "RIB table converged"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf rib-table-id { + type uint32; + description + "RIB Table ID"; + } + } + + grouping MLDP-CONTEXT-BAG { + description + "MLDP Context Information"; + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF name"; + } + leaf active-table-name { + type string { + length "0..32"; + } + description + "Active RIB Table Name for this VRF"; + } + leaf lsp-count { + type uint32; + description + "Number of P2MP/MP2MP LSPs in the vrf"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf peer-count { + type uint32; + description + "Number of mLDP neighbors in the vrf"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf mu-rib-enabled { + type boolean; + description + "MuRIB is enabled"; + } + leaf multi-path-upstream-enabled { + type boolean; + description + "Multi-path Upstream is enabled"; + } + leaf multi-path-downstream-enabled { + type boolean; + description + "Multi-path Downstream is enabled"; + } + leaf make-before-break-delay { + type uint32; + units "millisecond"; + description + "Make-before-break delay in milli-seconds"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf mldp-table-count { + type uint32; + description + "Number of mLDP tables"; + } + list mldp-table { + description + "List of mLDP tables"; + uses MLDP-TABLE-BAG; + } + } + + grouping MLDP-FLEX-ROOT-DB-BAG { + description + "MLDP Root Flex db information"; + container rootdb-bag-info { + description + "Root Information"; + uses MLDP-ROOT-AFI-BAG; + } + leaf lsmid { + type uint32; + description + "LSM ID of the paths in this LSP binding"; + } + } + + grouping MLDP-FLEX-ROOT-BAG { + description + "MLDP Flex Root Information"; + leaf fi-bregistered { + type boolean; + description + "Registered with FIB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf algo { + type uint8; + description + "Flex Algo"; + } + leaf sid { + type uint32; + description + "Sid"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf distance { + type uint32; + description + "Distance"; + } + leaf fec-count { + type uint32; + description + "LSP's linked to this root"; + } + leaf recursice-fec-count { + type uint32; + description + "Recursive LSP's linked to this root"; + } + leaf path-count { + type uint32; + description + "Paths to reach this root"; + } + list root-path { + description + "Root path list"; + uses MLDP-ROOT-PATH-BAG; + } + list root-info { + description + "Root Information"; + uses MLDP-FLEX-ROOT-DB-BAG; + } + } + + grouping MLDP-FLEX-RIB-BAG { + description + "MLDP RIB algo"; + leaf ri-bregistered { + type uint8; + description + "RIB registered algo-id"; + } + leaf ri-blocal { + type uint32; + description + "Local Label"; + } + leaf metric { + type uint32; + description + "Metric"; + } + } + + grouping MLDP-ROOT-IPMSI-BAG { + description + "MLDP Root I-PMSI Information"; + leaf next-hop-address-ipv4 { + type inet:ipv4-address; + description + "IPMSI IPv4 next-hop address"; + } + leaf next-hop-address-ipv6 { + type inet:ipv4-address; + description + "IPMSI IPv6 next-hop address"; + } + leaf rd-name { + type string { + length "0..65"; + } + description + "RD name"; + } + } + + grouping MLDP-ROOT-PATH-BAG { + description + "MLDP Root Path Information"; + leaf root-address { + type inet:ipv4-address; + description + "Root address"; + } + leaf mldp-identity-string { + type string { + length "0..32"; + } + description + "MLDP neighbor identity"; + } + leaf checkpoint-stale { + type boolean; + description + "MLDP root path information via checkpoint"; + } + leaf flex-root { + type boolean; + description + "Flex Root"; + } + leaf php-next-hop-address { + type inet:ipv4-address; + description + "Penultimate next-hop"; + } + leaf rib-disc-id { + type uint16; + description + "RIB Discovery ID"; + } + leaf algotype { + type uint8; + description + "Algo type"; + } + leaf table-id { + type uint32; + description + "Table ID "; + } + } + + grouping MLDP-ROOT-BAG { + description + "MLDP Root Information"; + leaf address { + type inet:ipv4-address; + description + "Root address"; + } + leaf we-are-root { + type boolean; + description + "We are the root"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf checkpoint-stale { + type boolean; + description + "MLDP root information via checkpoint"; + } + leaf via-bgp { + type boolean; + description + "Route learned via BGP"; + } + leaf via-static { + type boolean; + description + "Route learned via Static"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf distance { + type uint32; + description + "Distance"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Root Interface"; + } + leaf fec-count { + type uint32; + description + "LSP's linked to this root"; + } + leaf recursice-fec-count { + type uint32; + description + "Recursive LSP's linked to this root"; + } + leaf path-count { + type uint32; + description + "Paths to reach this root"; + } + list root-path { + description + "Root path list"; + uses MLDP-ROOT-PATH-BAG; + } + list root-ipmsi { + description + "Root I-PMSI list"; + uses MLDP-ROOT-IPMSI-BAG; + } + list numberof-algo { + description + "RIB algo list"; + uses MLDP-FLEX-RIB-BAG; + } + list flex-path { + description + "Flex path list"; + uses MLDP-FLEX-ROOT-BAG; + } + } + + grouping MLDP-NEIGHBOR-ADDR-IDENT-BAG { + description + "MLDP Neighbor Address Ident"; + leaf identity-string { + type string { + length "0..32"; + } + description + "MLDP Identity"; + } + } + + grouping MLDP-NEIGHBOR-ADDR-BAG { + description + "MLDP neighbor Address Information"; + leaf address-xr { + type inet:ipv4-address; + description + "MLDP neighbor address"; + } + list identity { + description + "Identity List"; + uses MLDP-NEIGHBOR-ADDR-IDENT-BAG; + } + } + + grouping MLDP-BRANCH-BAG { + description + "MLDP Branch Information"; + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf branch-owner { + type string { + length "0..32"; + } + description + "Branch owner string"; + } + leaf up-time { + type uint32; + units "millisecond"; + description + "Branch uptime in milli-seconds"; + } + leaf graceful-restart-stale { + type boolean; + description + "Branch has been marked stale by graceful restart"; + } + leaf graceful-restart-instance { + type uint32; + description + "Branch graceful restart instance"; + } + leaf mpls-label { + type uint32; + description + "Branch Remote label"; + } + leaf mpls-local-label-upstream { + type uint32; + description + "Branch Local label"; + } + leaf head-lsm-id { + type uint32; + description + "Head LSM ID"; + } + leaf recursive-owner-id { + type uint32; + description + "Recursive Branch ownerLSM ID"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Branch next-hop address"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Branch next-hop interface name"; + } + leaf interface-down { + type boolean; + description + "Interface is down"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf egress-interface-name { + type string { + length "0..64"; + } + description + "Egress interface name"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF name"; + } + leaf owner-id { + type uint32; + description + "Branch owner ID"; + } + leaf egress { + type boolean; + description + "Branch is Egress"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf mfi-peek { + type boolean; + description + "Branch Peek is enabled"; + } + leaf ingress { + type boolean; + description + "Branch is Ingress"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf ppmp { + type boolean; + description + "Branch PPMP is enabled"; + } + leaf drop { + type boolean; + description + "Branch DROP is set"; + } + leaf ordered-mode { + type boolean; + description + "Branch is enabled for ordered mode"; + } + leaf mame-before-break-request { + type boolean; + description + "MBB request received on this branch"; + } + leaf application-stale { + type boolean; + description + "Branch marked stale by application"; + } + leaf mfi-duplicate-ignore { + type boolean; + description + "MFI duplicate ignore by forwarding"; + } + leaf rpf-id { + type uint32; + description + "Branch RPF ID"; + } + leaf ldp-message-id { + type uint32; + description + "Branch LDP message ID"; + } + leaf rd-name { + type string { + length "0..65"; + } + description + "Recursive RD name"; + } + } + + grouping MLDP-ACEL-BAG { + description + "MLDP Upstream Neighbor Information"; + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf mldp-peer { + type string { + length "0..32"; + } + description + "MLDP Neighbor Identity"; + } + leaf mpls-local-label { + type uint32; + description + "Local Label"; + } + leaf mpls-label-upstream { + type uint32; + description + "Remote Label"; + } + leaf active { + type boolean; + description + "Neighbor is active"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf delete-pending { + type boolean; + description + "Neighbor is delete pending"; + } + leaf checkpoint-stale { + type boolean; + description + "MLDP neighbor information via checkpoint"; + } + leaf make-before-break-ack { + type boolean; + description + "Make-before-break ack received"; + } + leaf make-before-break-ack-pending { + type boolean; + description + "Make-before-break ack pending"; + } + leaf mfi-duplicate-ignore { + type boolean; + description + "MFI duplicate ignore by forwarding"; + } + leaf peer-change-delay { + type int32; + units "millisecond"; + description + "Neighbor change delay in milli-seconds"; + } + leaf delete-delay { + type int32; + units "millisecond"; + description + "Upstream neighbor delete delay in milli-seconds"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Root Interface"; + } + leaf root-address-next-hop { + type inet:ipv4-address; + description + "Root next-hop address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf up-time { + type uint32; + units "millisecond"; + description + "Neighbor uptime in milli-seconds"; + } + leaf state-change-time { + type uint32; + units "millisecond"; + description + "State change time in milli-seconds"; + } + leaf csi-accepting { + type boolean; + description + "If ACEL is CSI accepting"; + } + } + + grouping MLDP-DATABASE-BAG { + description + "MLDP Database Information"; + container root-info { + description + "Root Information"; + uses MLDP-ROOT-AFI-BAG; + } + leaf lsm-id-xr { + type uint32; + description + "LSM ID"; + } + leaf vrf-name { + type string { + length "0..256"; + } + description + "VRF name"; + } + leaf up-time { + type uint32; + units "millisecond"; + description + "Uptime in milli-seconds"; + } + leaf tree-type { + type uint32; + description + "Tree Type"; + } + leaf root-address-xr { + type inet:ipv4-address; + description + "Root address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf we-are-root { + type boolean; + description + "We are the root"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf fec-opaque-length { + type uint32; + description + "FEC opaque length"; + } + leaf opaque-decoded-string { + type string { + length "0..255"; + } + description + "Opaque value decoded string"; + } + leaf fec-value-length { + type uint32; + description + "FEC Value length"; + } + leaf root-node-redundency-lsm-id { + type uint32; + description + "RNR LSM-ID"; + } + leaf root-node-redundency-active { + type boolean; + description + "RNR Active"; + } + leaf root-node-redundency-is-primary { + type boolean; + description + "RNR Primary is this entry"; + } + leaf root-node-redundency-lsm-id-primary { + type uint32; + description + "RNR Primary LSM ID"; + } + leaf root-node-redundency-root-address { + type inet:ipv4-address; + description + "RNR Root node address"; + } + leaf root-node-redundency-candidate-string { + type string { + length "0..80"; + } + description + "RNR candidate list"; + } + leaf is-ldp-branch { + type boolean; + description + "LDP Branch"; + } + leaf is-local-branch { + type boolean; + description + "Local Branch"; + } + leaf is-local-interface { + type boolean; + description + "Local Interface"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf role-egress { + type boolean; + description + "Role Egress"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf forwarding-peek { + type boolean; + description + "Peek is enabled"; + } + leaf make-before-break-enabled { + type boolean; + description + "MBB feature is enabled"; + } + leaf mo-frr-enabled { + type boolean; + description + "MoFRR feature is enabled"; + } + leaf recursive-fec-enabled { + type boolean; + description + "Recursive FEC is enabled"; + } + leaf trace-enabled { + type boolean; + description + "Trace filter is enabled"; + } + leaf forward-recursive { + type boolean; + description + "Recursive Forwarding is enabled"; + } + leaf peer-change-delay { + type int32; + units "millisecond"; + description + "Neighbor change delay in milli-seconds"; + } + leaf encode-branch-id { + type uint32; + description + "Recursive FEC Encode LSM ID"; + } + leaf decode-branch-id { + type uint32; + description + "Recursive FEC Decode LSM ID"; + } + leaf upstream-neigbbor-count { + type uint32; + description + "Upstream MLDP neighbor count"; + } + leaf downstream-branch-count { + type uint32; + description + "Downstream branch count"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + list upstream-neighbor { + description + "Upstream neighbor List"; + uses MLDP-ACEL-BAG; + } + list branch { + description + "Branch List"; + uses MLDP-BRANCH-BAG; + } + } + + grouping MLDP-BINDING-PATH-BAG { + description + "MLDP Binding path information"; + leaf lsmid { + type uint32; + description + "LSM ID of the paths in this LSP binding"; + } + leaf acel-type { + type boolean; + description + "Binding is Accepting Element"; + } + leaf branch-type { + type boolean; + description + "Binding is a branch"; + } + leaf acel-active { + type boolean; + description + "This ACEL is active"; + } + leaf branch-owner-type { + type uint32; + description + "Which type of branch"; + } + leaf local-label { + type uint32; + description + "Local label allocated for this binding"; + } + leaf remote-label { + type uint32; + description + "Remote label assigned to this binding"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next-hop address"; + } + leaf rpf-id { + type uint32; + description + "RPF Identifier"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + } + + grouping MLDP-ROOT-AFI-BAG { + description + "MLDP Root Information"; + leaf root-afi { + type uint16; + description + "Root AFI"; + } + leaf root-address { + type inet:ipv4-address; + description + "Root address"; + } + leaf mt-algo-type { + type uint8; + description + "MT Algo Type"; + } + leaf mt-algo-id { + type uint8; + description + "MT Algo ID"; + } + leaf mtid { + type uint16; + description + "MT ID"; + } + } + + grouping MLDP-BINDING-DB-OPQ-BAG { + description + "MLDP Binding Opaque information"; + container root-info { + description + "Root Information"; + uses MLDP-ROOT-AFI-BAG; + } + leaf tree-type { + type uint32; + description + "Tree Type"; + } + leaf lsmid { + type uint32; + description + "LSM ID of the paths in this LSP binding"; + } + leaf root-address { + type inet:ipv4-address; + description + "Root address"; + } + leaf opaque-decoded-string { + type string { + length "0..255"; + } + description + "Opaque value decoded string"; + } + } + + grouping MLDP-BINDING-LSP-BAG { + description + "MLDP Binding LSP information"; + leaf binding-id { + type uint32; + description + "ID used for this binding"; + } + leaf num-paths { + type uint32; + description + "Number of paths in this LSP binding"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + list opaque { + description + "FEC Opaque List"; + uses MLDP-BINDING-DB-OPQ-BAG; + } + list binding-path { + description + "Path List"; + uses MLDP-BINDING-PATH-BAG; + } + } + + grouping MLDP-MFI-PATH-BAG { + description + "MFI Label Rewrite Path"; + leaf mpls-label { + type uint32; + description + "Remote Label"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next hop"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + leaf out-info-flags { + type uint32; + description + "Outinfo flags"; + } + leaf role { + type uint32; + description + "Role"; + } + } + + grouping MLDP-MFI-RW-BAG { + description + "MLDP MFI Forwarding Information"; + leaf mpls-local-label { + type uint32; + description + "Local Label"; + } + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf head-lsm-id { + type uint32; + description + "Head LSM ID"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf rpf-id { + type uint32; + description + "RPF Identifier"; + } + leaf interface-name { + type string { + length "0..65"; + } + description + "LSP Virtual interface name"; + } + list forwarding-path { + description + "Path List"; + uses MLDP-MFI-PATH-BAG; + } + } + + grouping MLDP-STATUS-BAG { + description + "MLDP Status Information"; + leaf mldp-active { + type boolean; + description + "MLDP has been activated"; + } + leaf mldp-running { + type boolean; + description + "MLDP is running"; + } + leaf mldp-ready { + type boolean; + description + "MLDP is ready"; + } + leaf mldp-rib-connection-status { + type boolean; + description + "MLDP RIB connection status"; + } + leaf mldp-rib-connection-open { + type boolean; + description + "MLDP RIB connection open"; + } + leaf log-internal { + type boolean; + description + "Logging internal is enabled"; + } + leaf log-notifications { + type boolean; + description + "Logging notifications is enabled"; + } + leaf label-release-delay { + type uint32; + units "millisecond"; + description + "Label release delay in milli-seconds"; + } + leaf lsm-id-delay { + type uint32; + units "millisecond"; + description + "LSM ID scan delay in milli-seconds"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper.yang new file mode 100644 index 000000000..12ce3ec39 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-mldp-oper.yang @@ -0,0 +1,433 @@ +module Cisco-IOS-XR-mpls-ldp-mldp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-ldp-mldp-oper"; + prefix mpls-ldp-mldp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-ldp-mldp-oper-sub1 { + revision-date 2022-01-27; + } + + 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 mpls-ldp-mldp package operational data. + + This module contains definitions + for the following management objects: + mpls-mldp: MPLS MLDP operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-27 { + description + "Modified arg type for mldp database root address in schema and bgen files. from ipaddress to string"; + semver:module-version "1.2.0"; + } + revision 2021-04-27 { + description + "Added mLDP flex-algo"; + semver:module-version "1.2.0"; + } + revision 2020-10-18 { + description + "Backward compatible removal in telemetry event Cisco-IOS-XR-types, event-telemetry was removed."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-08-30 { + description + "Operational Yang model for mLDP."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lsp { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid LSP Type"; + } + enum "any" { + value 1; + description + "Any LSP Type"; + } + enum "p2mp" { + value 2; + description + "P2MP LSP Type"; + } + enum "mp2mp-upstream" { + value 3; + description + "MP2MP Upstream LSP Type"; + } + enum "mp2mp-downstream" { + value 4; + description + "MP2MP Downstream LSP Type"; + } + enum "mp2mp" { + value 5; + description + "MP2MP LSP Type"; + } + } + description + "Lsp"; + } + + typedef Opaque { + type enumeration { + enum "static-id" { + value 0; + description + "Static ID Opaque Type"; + } + enum "global-id" { + value 1; + description + "Global ID Opaque Type"; + } + enum "vpn-id" { + value 2; + description + "VPN ID Opaque Type"; + } + enum "ipv4" { + value 3; + description + "IPv4 Opaque Type"; + } + enum "ipv6" { + value 4; + description + "IPv6 Opaque Type"; + } + enum "ipv4-bidir" { + value 5; + description + "IPv4 Bidir Opaque Type"; + } + enum "ipv6-bidir" { + value 6; + description + "IPv6 Bidir Opaque Type"; + } + enum "recursive" { + value 7; + description + "Recursive Opaque Type"; + } + enum "recursive-route-distinguisher" { + value 8; + description + "Recursive Route Distinguisher Opaque Type"; + } + enum "vpnv4" { + value 250; + description + "VPNv4 Opaque Type"; + } + enum "vpnv6" { + value 251; + description + "VPNv6 Opaque Type"; + } + } + description + "Opaque"; + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF specific operational data"; + list vrf { + key "vrf-name"; + description + "Operational data for given VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF Name"; + } + uses NEIGHBOR-ADDRESS-TABLE; + uses DATABASE-TABLE; + uses ROOT-ADDRESS-TABLE; + uses CONTEXT; + uses NEIGHBOR-TABLE; + } + } + } + + grouping MFI-ENTRY-TABLE { + description + "Common node of active, standby"; + container mfi-entries { + description + "MLDP MFI Table"; + list mfi-entry { + key "mpls-label"; + description + "MLDP MFI Information"; + leaf mpls-label { + type uint32; + description + "MPLS Label"; + } + uses MLDP-MFI-RW-BAG; + } + } + } + + grouping LSM-ID-TABLE { + description + "Common node of active, standby"; + container lsm-ids { + description + "MLDP LSM-ID"; + list lsm-id { + key "lsm-id"; + description + "MLDP LSMID Information"; + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + uses MLDP-DATABASE-BAG; + } + } + } + + grouping NEIGHBOR-ADDRESS-TABLE { + description + "Common node of vrf, default-context"; + container neighbor-addresses { + description + "MLDP Neighbors Addresses"; + list neighbor-address { + key "address"; + description + "Neighbor Address Information"; + leaf address { + type inet:ipv4-address-no-zone; + description + "The Neighbor IP address"; + } + uses MLDP-NEIGHBOR-ADDR-BAG; + } + } + } + + grouping ROOT-ADDRESS-TABLE { + description + "Common node of vrf, default-context"; + container root-addresses { + description + "MLDP Root Table"; + list root-address { + key "root-address"; + description + "MLDP Root Information"; + leaf root-address { + type inet:ipv4-address-no-zone; + description + "Root address"; + } + uses MLDP-ROOT-BAG; + } + } + } + + grouping FIB-REGDB-TABLE { + description + "Common node of active, standby"; + container labels { + description + "MLDP Regdb Table"; + list label { + key "label"; + description + "MLDP Label Information"; + leaf label { + type uint32; + description + "LABEL ID"; + } + uses MLDP-FIB-REGDB-BAG; + } + } + } + + grouping STATUS { + description + "Common node of active, standby"; + container status { + description + "MLDP Status"; + uses MLDP-STATUS-BAG; + } + } + + grouping CONTEXT { + description + "Common node of vrf, default-context"; + container context { + description + "MLDP Context"; + uses MLDP-CONTEXT-BAG; + } + } + + grouping DATABASE-TABLE { + description + "Common node of vrf, default-context"; + container databases { + description + "MLDP Database"; + list database { + key "lsp-type root-address opaque-type opaque-value-string"; + description + "MLDP Database Information"; + leaf lsp-type { + type Lsp; + description + "LSP Type"; + } + leaf root-address { + type inet:ipv4-address-no-zone; + description + "Root address"; + } + leaf opaque-type { + type Opaque; + description + "Opaque Type"; + } + leaf opaque-value-string { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "OpaqueValue"; + } + uses MLDP-DATABASE-BAG; + } + } + } + + grouping LSP-BINDINGS-TABLE { + description + "Common node of active, standby"; + container lsp-bindings { + description + "MLDP LSP Bindings Table"; + list lsp-binding { + key "lsm-id"; + description + "MLDP LSP Binding Information"; + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + uses MLDP-BINDING-LSP-BAG; + } + } + } + + grouping DEFAULT-CONTEXT { + description + "Common node of active, standby"; + container default-context { + description + "Default context specific operational data"; + uses NEIGHBOR-ADDRESS-TABLE; + uses DATABASE-TABLE; + uses ROOT-ADDRESS-TABLE; + uses CONTEXT; + uses NEIGHBOR-TABLE; + } + } + + grouping NEIGHBOR-TABLE { + description + "Common node of vrf, default-context"; + container neighbors { + description + "MLDP Neighbors"; + list neighbor { + key "address"; + description + "Neighbor Information"; + leaf address { + type inet:ipv4-address-no-zone; + description + "The Neighbor IP address"; + } + uses MLDP-NEIGHBOR-BAG; + } + } + } + + container mpls-mldp { + config false; + description + "MPLS MLDP operational data"; + container active { + description + "Active MPLS MLDP operational data"; + uses STATUS; + uses MFI-ENTRY-TABLE; + uses LSP-BINDINGS-TABLE; + uses LSM-ID-TABLE; + uses VRF-TABLE; + uses FIB-REGDB-TABLE; + uses DEFAULT-CONTEXT; + } + container standby { + description + "Standby MPLS MLDP operational data"; + uses STATUS; + uses MFI-ENTRY-TABLE; + uses LSP-BINDINGS-TABLE; + uses LSM-ID-TABLE; + uses VRF-TABLE; + uses FIB-REGDB-TABLE; + uses DEFAULT-CONTEXT; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-datatypes.yang new file mode 100644 index 000000000..6dce3bbb5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-datatypes.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-mpls-ldp-oper-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-ldp-oper-datatypes"; + prefix mpls-ldp-oper-datatypes; + + 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 mpls-ldp-oper-data package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-ldp-oper-af-name { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + enum "all" { + value 65535; + description + "All"; + } + } + description + "Mpls ldp oper af name"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub1.yang new file mode 100644 index 000000000..e68f211c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub1.yang @@ -0,0 +1,3427 @@ +submodule Cisco-IOS-XR-mpls-ldp-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-ldp-oper { + prefix Cisco-IOS-XR-mpls-ldp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-ldp package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-20 { + description + "Added new path for cloned tunnels + 2021-09-20 + Added keys for nbr-br-af-info"; + semver:module-version "2.0.0"; + } + revision 2021-04-06 { + description + "Added BSID data in LDP forwarding"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mgmt-ldp-nbr-bgp-advt-state { + type enumeration { + enum "not-applicable" { + value 0; + description + "Not applicable"; + } + enum "permit" { + value 1; + description + "Advertisement permitted"; + } + enum "deny" { + value 2; + description + "Advertisement denied"; + } + } + description + "MPLS LDP Neighbor BGP Label Advertisement State + Type"; + } + + typedef Mgmt-ldp-nsr-peer-ldp-sync-nack-rsn { + type enumeration { + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-none" { + description + "mgmt ldp nsr peer ldp sync nack rsn none"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-tbl-id-mismatch" { + description + "mgmt ldp nsr peer ldp sync nack rsn tbl id + mismatch"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-pp-exists" { + description + "mgmt ldp nsr peer ldp sync nack rsn pp exists"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-missing-elem" { + description + "mgmt ldp nsr peer ldp sync nack rsn missing + elem"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-no-p-end-sock" { + description + "mgmt ldp nsr peer ldp sync nack rsn no p end + sock"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-p-end-sock-not-synced" { + description + "mgmt ldp nsr peer ldp sync nack rsn p end sock + not synced"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-adj-add" { + description + "mgmt ldp nsr peer ldp sync nack rsn err adj add"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-dhcb-add" { + description + "mgmt ldp nsr peer ldp sync nack rsn err dhcb + add"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-enomem" { + description + "mgmt ldp nsr peer ldp sync nack rsn enomem"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-tp-create" { + description + "mgmt ldp nsr peer ldp sync nack rsn err tp + create"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-pp-create" { + description + "mgmt ldp nsr peer ldp sync nack rsn err pp + create"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-addr-bind" { + description + "mgmt ldp nsr peer ldp sync nack rsn err addr + bind"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-rx-bad-pie" { + description + "mgmt ldp nsr peer ldp sync nack rsn err rx bad + pie"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-rx-notif" { + description + "mgmt ldp nsr peer ldp sync nack rsn err rx + notif"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-rx-unexp-open" { + description + "mgmt ldp nsr peer ldp sync nack rsn err rx + unexp open"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-unexp-peer-down" { + description + "mgmt ldp nsr peer ldp sync nack rsn err unexp + peer down"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-app-not-found" { + description + "mgmt ldp nsr peer ldp sync nack rsn err app not + found"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-app-invalid" { + description + "mgmt ldp nsr peer ldp sync nack rsn err app + invalid"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-adj-grp-not-found" { + description + "mgmt ldp nsr peer ldp sync nack rsn err adj grp + not found"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-invalid-elem" { + description + "mgmt ldp nsr peer ldp sync nack rsn invalid + elem"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-app-data-invalid" { + description + "mgmt ldp nsr peer ldp sync nack rsn err app + data invalid"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-invalid-per-idx" { + description + "mgmt ldp nsr peer ldp sync nack rsn err invalid + per idx"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-pfx-not-found" { + description + "mgmt ldp nsr peer ldp sync nack rsn err pfx not + found"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-bm-size-invalid" { + description + "mgmt ldp nsr peer ldp sync nack rsn err bm size + invalid"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-adv-bm-clear" { + description + "mgmt ldp nsr peer ldp sync nack rsn err adv bm + clear"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-err-tcp-struct-create" { + description + "mgmt ldp nsr peer ldp sync nack rsn err tcp + struct create"; + } + enum "mgmt-ldp-nsr-peer-ldp-sync-nack-rsn-no-ctx" { + description + "mgmt ldp nsr peer ldp sync nack rsn no ctx"; + } + } + description + "Mgmt ldp nsr peer ldp sync nack rsn"; + } + + typedef Mgmt-ldp-nsr-peer-sync-err { + type enumeration { + enum "mgmt-ldp-nsr-peer-sync-err-none" { + description + "mgmt ldp nsr peer sync err none"; + } + enum "mgmt-ldp-nsr-peer-sync-err-ldp-sync-nack" { + description + "mgmt ldp nsr peer sync err ldp sync nack"; + } + enum "mgmt-ldp-nsr-peer-sync-err-sync-prep" { + description + "mgmt ldp nsr peer sync err sync prep"; + } + enum "mgmt-ldp-nsr-peer-sync-err-tcp-peer" { + description + "mgmt ldp nsr peer sync err tcp peer"; + } + enum "mgmt-ldp-nsr-peer-sync-err-tcp-gbl" { + description + "mgmt ldp nsr peer sync err tcp gbl"; + } + enum "mgmt-ldp-nsr-peer-sync-err-ldp-peer" { + description + "mgmt ldp nsr peer sync err ldp peer"; + } + enum "mgmt-ldp-nsr-peer-sync-err-ldp-gbl" { + description + "mgmt ldp nsr peer sync err ldp gbl"; + } + enum "mgmt-ldp-nsr-peer-sync-err-app-fail" { + description + "mgmt ldp nsr peer sync err app fail"; + } + enum "mgmt-ldp-nsr-peer-sync-err-sync-tcp-phase1" { + description + "mgmt ldp nsr peer sync err sync tcp phase1"; + } + enum "mgmt-ldp-nsr-peer-sync-err-sync-tcp-phase2" { + description + "mgmt ldp nsr peer sync err sync tcp phase2"; + } + } + description + "Mgmt ldp nsr peer sync err"; + } + + typedef Mgmt-ldp-nsr-peer-sync-state { + type enumeration { + enum "mgmt-ldp-nsr-peer-sync-st-none" { + description + "mgmt ldp nsr peer sync st none"; + } + enum "mgmt-ldp-nsr-peer-sync-st-wait" { + description + "mgmt ldp nsr peer sync st wait"; + } + enum "mgmt-ldp-nsr-peer-sync-st-ready" { + description + "mgmt ldp nsr peer sync st ready"; + } + enum "mgmt-ldp-nsr-peer-sync-st-prep" { + description + "mgmt ldp nsr peer sync st prep"; + } + enum "mgmt-ldp-nsr-peer-sync-st-app-wait" { + description + "mgmt ldp nsr peer sync st app wait"; + } + enum "mgmt-ldp-nsr-peer-sync-st-oper" { + description + "mgmt ldp nsr peer sync st oper"; + } + enum "mgmt-ldp-nsr-peer-sync-st-tcp-phase1" { + description + "mgmt ldp nsr peer sync st tcp phase1"; + } + enum "mgmt-ldp-nsr-peer-sync-st-tcp-phase2" { + description + "mgmt ldp nsr peer sync st tcp phase2"; + } + } + description + "Mgmt ldp nsr peer sync state"; + } + + typedef Ldp-adj-union-discrim { + type enumeration { + enum "link-hello" { + description + "Link hello"; + } + enum "targeted-hello" { + description + "Targeted hello"; + } + } + description + "MPLS LDP Hello Type"; + } + + typedef Show-nsr-state { + type enumeration { + enum "nsr-ready" { + description + "NSR ready"; + } + enum "nsr-not-ready" { + description + "NSR not ready"; + } + enum "nsr-na" { + description + "NSR not applicable"; + } + } + description + "NSR State Type"; + } + + typedef Ldp-route-path-lbl-owner { + type enumeration { + enum "ip-path-lbl-owner-none" { + value 0; + description + "No label and no owner"; + } + enum "ip-path-lbl-owner-ldp" { + value 1; + description + "Path outgoing label owned by LDP"; + } + enum "ip-path-lbl-owner-bgp" { + value 2; + description + "Path outgoing label owned by BGP"; + } + } + description + "Route path label owner"; + } + + typedef Label-value { + type enumeration { + enum "mpls-label" { + description + "MPLS Label"; + } + enum "un-labelled" { + description + "Unlabelled"; + } + enum "unknown" { + description + "Unknown label"; + } + } + description + "Label Value Type"; + } + + typedef Ldp-fwd-unlbl-rsn { + type enumeration { + enum "ldp-fwd-labelled" { + description + "ldp fwd labelled"; + } + enum "ldp-fwd-un-labelled-vrf-down" { + description + "ldp fwd un labelled vrf down"; + } + enum "ldp-fwd-un-labelled-no-nh" { + description + "ldp fwd un labelled no nh"; + } + enum "ldp-fwd-un-labelled-recursive-path" { + description + "ldp fwd un labelled recursive path"; + } + enum "ldp-fwd-un-labelled-intf-not-ldp" { + description + "ldp fwd un labelled intf not ldp"; + } + enum "ldp-fwd-un-labelled-no-rmt" { + description + "ldp fwd un labelled no rmt"; + } + enum "ldp-fwd-un-labelled-no-ldp-adj" { + description + "ldp fwd un labelled no ldp adj"; + } + enum "ldp-fwd-un-labelled-no-session" { + description + "ldp fwd un labelled no session"; + } + enum "ldp-fwd-un-labelled-unknown" { + description + "ldp fwd un labelled unknown"; + } + } + description + "Ldp fwd unlbl rsn"; + } + + typedef Ldp-route-path-flags { + type enumeration { + enum "ip-path-no-flag" { + value 0; + description + "A primary path with no special flag/attribute"; + } + enum "ip-path-protected" { + value 1; + description + "A primary path with LFA FRR protection"; + } + enum "ip-path-backup" { + value 2; + description + "A non-primary local LFA FRR (pure) backup path"; + } + enum "ip-path-backup-remote" { + value 3; + description + "A non-primary remote LFA FRR (pure) backup path"; + } + enum "ip-path-bgp-backup" { + value 4; + description + "A non-primary BGP backup path"; + } + } + description + "Route path flags"; + } + + typedef Dhcb-state { + type enumeration { + enum "none" { + description + "None"; + } + enum "dhcb-active" { + description + "Active"; + } + enum "dhcb-passive" { + description + "Passive"; + } + enum "dhcb-active-passive" { + description + "Active and Passive"; + } + } + description + "DHCB State Type"; + } + + typedef Ldp-igp-sync-down-reason { + type enumeration { + enum "igp-sync-down-reason-not-applicable" { + description + "Not Applicable"; + } + enum "no-hello-adjacency" { + description + "No hello adjacency"; + } + enum "no-peer-session" { + description + "No peer session"; + } + enum "initial-update-to-peer-not-done" { + description + "Initial update to peer not done yet"; + } + enum "initial-update-from-peer-not-received" { + description + "Initial update from peer not received yet"; + } + enum "internal-reason" { + description + "Internal reason"; + } + } + description + "Reason IGP Sync Not Achieved"; + } + + typedef String-td2 { + type string; + description + "String td2"; + } + + typedef Ldp-igp-sync-state { + type enumeration { + enum "isync-ready" { + description + "Acheived"; + } + enum "isync-not-ready" { + description + "Not acheived"; + } + enum "isync-deferred" { + description + "Deferred due to interface delay or global + restart delay"; + } + } + description + "IGP Sync State"; + } + + typedef Local-label-state { + type enumeration { + enum "local-label-state-none" { + value 1; + description + "None"; + } + enum "local-label-state-assigned" { + value 2; + description + "Assigned"; + } + enum "local-label-state-withdrawn" { + value 3; + description + "Withdrawn"; + } + } + description + "MPLS LDP Local Label State Type"; + } + + typedef Ldp-af { + type enumeration { + enum "ldp-show-af-none" { + value 0; + description + "No Address Family"; + } + enum "ldp-show-af-ipv4" { + value 1; + description + "IPv4 AFI"; + } + enum "ldp-show-af-ipv6" { + value 2; + description + "IPv6 AFI"; + } + enum "ldp-show-af-ipv4-ipv6" { + value 3; + description + "Both IPv4/IPv6 AFIs"; + } + } + description + "Ldp af"; + } + + typedef Ldp-in6-addr { + type inet:ipv6-address; + description + "Ldp in6 addr"; + } + + typedef Ldp-in-addr { + type inet:ipv4-address; + description + "Ldp in addr"; + } + + typedef Ldp-af-id { + type enumeration { + enum "ldp-af-id-none" { + value 0; + description + "No Address Family"; + } + enum "ldp-af-id-ipv4" { + value 2; + description + "IPv4 AFI"; + } + enum "ldp-af-id-ipv6" { + value 10; + description + "IPv6 AFI"; + } + } + description + "Ldp af id"; + } + + grouping LDP-SUMMARY { + description + "MPLS LDP Summarized Information"; + container common { + description + "Common Summary information"; + uses LDP-SUMMARY-COMMON; + } + leaf number-of-vrf { + type uint32; + description + "Number of configured VRFs (including default)"; + } + leaf number-of-vrf-oper { + type uint32; + description + "Number of configured operational VRFs (including + default)"; + } + leaf number-of-interfaces { + type uint32; + description + "Number of known interfaces"; + } + leaf number-of-fwd-ref-interfaces { + type uint32; + description + "Number of Forward Referenc interfaces"; + } + leaf number-of-autocfg-interfaces { + type uint32; + description + "Number of auto-configured interfaces"; + } + leaf is-bound-with-sysdb { + type boolean; + description + "Bound status with sysdb"; + } + leaf is-registered-with-sysdb { + type boolean; + description + "Registration status with Sysdb"; + } + leaf is-bound-with-rsi { + type boolean; + description + "Bound status with rsi"; + } + leaf is-bound-with-interface-manager { + type boolean; + description + "Bound status with Interface Manager"; + } + leaf is-registered-with-interface-manager { + type boolean; + description + "Registration status with Interface Manager"; + } + leaf is-bound-with-ip-arm { + type boolean; + description + "Bound status with IP Arm"; + } + leaf is-bound-with-lsd { + type boolean; + description + "Bound status with LSD"; + } + leaf is-registered-with-lsd { + type boolean; + description + "Registration status with LSD"; + } + leaf is-bound-with-ipv4-rib { + type boolean; + description + "Bound status with IPv4 RIB"; + } + leaf is-registered-with-ipv4-rib { + type boolean; + description + "Registration status with IPv4 RIB"; + } + leaf number-of-ipv4rib-tables { + type uint32; + description + "Total number of ipv4 RIB tables"; + } + leaf number-of-registered-ipv4rib-tables { + type uint32; + description + "Number of ipv4 RIB tables registered"; + } + leaf is-bound-with-ipv6-rib { + type boolean; + description + "Bound status with IPv6 RIB"; + } + leaf is-registered-with-ipv6-rib { + type boolean; + description + "Registration status with IPv6 RIB"; + } + leaf number-of-ipv6rib-tables { + type uint32; + description + "Total number of ipv6 RIB tables"; + } + leaf number-of-registered-ipv6rib-tables { + type uint32; + description + "Number of ipv6 RIB tables registered"; + } + leaf is-bound-with-atom { + type boolean; + description + "Bound status with L2VPN ATOM"; + } + leaf is-bound-with-nsr-mate { + type boolean; + description + "Bound status with NSR Mate"; + } + leaf is-nsr-configured { + type boolean; + description + "NSR configured"; + } + leaf is-mldp-registered { + type boolean; + description + "mLDP registration status"; + } + } + + grouping LDP-MSG-COUNTERS { + description + "MPLS LDP Session Message Counters Information"; + leaf total-count { + type uint32; + description + "Total message count"; + } + leaf init-count { + type uint32; + description + "Init message count"; + } + leaf address-count { + type uint32; + description + "Address message count"; + } + leaf address-withdraw-count { + type uint32; + description + "Address withdraw count"; + } + leaf label-map-count { + type uint32; + description + "Label map count"; + } + leaf label-withdraw-count { + type uint32; + description + "Label withdraw count"; + } + leaf label-release-count { + type uint32; + description + "Label release count"; + } + leaf label-request-count { + type uint32; + description + "Label request count"; + } + leaf label-abort-request-count { + type uint32; + description + "Label abort request count"; + } + leaf notification-count { + type uint32; + description + "Notification count"; + } + leaf keep-alive-count { + type uint32; + description + "Keepalive count"; + } + leaf iccp-rg-conn-count { + type uint32; + description + "ICCP RG Connect count"; + } + leaf iccp-rg-disconn-count { + type uint32; + description + "ICCP RG Disconnect count"; + } + leaf iccp-rg-notif-count { + type uint32; + description + "ICCP RG Notif count"; + } + leaf iccp-rg-app-data-count { + type uint32; + description + "ICCP RG App Data count"; + } + } + + grouping LDP-STATS-INFO { + description + "MPLS LDP Statistics Information"; + container message-out { + description + "Message out count"; + uses LDP-MSG-COUNTERS; + } + container message-in { + description + "Message in count"; + uses LDP-MSG-COUNTERS; + } + leaf iccp-enabled { + type boolean; + description + "Is session ICCP enabled?"; + } + } + + grouping LDP-NBR-CLIENTS-INFO { + description + "MPLS LDP Session client Information"; + leaf name { + type string; + description + "Client's name"; + } + } + + grouping LDP-NBR-DETAILED-INFO { + description + "MPLS LDP Neighbor Detailed Information"; + container capabilities { + description + "Capabilities sent to and received from neighbor"; + uses LDP-NBR-CAP-INFO; + } + leaf peer-holdtime { + type uint32; + units "second"; + description + "Session holdtime value in seconds from the peer"; + } + leaf keep-alive-interval { + type uint32; + units "second"; + description + "Session keepalive interval in seconds"; + } + leaf peer-state { + type string { + length "0..80"; + } + description + "Peer state"; + } + leaf has-ipv4-inbound { + type boolean; + description + "IPv4 Inbound label filtering present"; + } + leaf inbound-ipv4acl { + type string { + length "0..80"; + } + description + "IPv4 Inbound accept ACL"; + } + leaf has-ipv6-inbound { + type boolean; + description + "IPv6 Inbound label filtering present"; + } + leaf inbound-ipv6acl { + type string { + length "0..80"; + } + description + "IPv6 Inbound accept ACL"; + } + leaf has-ipv4-outbound { + type boolean; + description + "IPv4 Outbound label filtering present"; + } + leaf outbound-ipv4acl { + type string { + length "0..80"; + } + description + "IPv4 Outbound advertise ACL"; + } + leaf has-ipv6-outbound { + type boolean; + description + "IPv6 Outbound label filtering present"; + } + leaf outbound-ipv6acl { + type string { + length "0..80"; + } + description + "IPv6 Outbound advertise ACL"; + } + leaf has-sp { + type boolean; + description + "Session Protection enabled"; + } + leaf sp-state { + type string { + length "0..80"; + } + description + "Session Protection state"; + } + leaf sp-has-acl { + type boolean; + description + "Session protection ACL is present"; + } + leaf spacl { + type string { + length "0..80"; + } + description + "Session Protection ACL"; + } + leaf sp-has-duration { + type boolean; + description + "Session Protection has non-default duration"; + } + leaf sp-duration { + type uint32; + units "second"; + description + "Session protection holdup time duration in + seconds"; + } + leaf spht-running { + type boolean; + description + "Session Protection holdup timer is running"; + } + leaf spht-remaining { + type uint32; + units "second"; + description + "Session Protection holdup time remaining value + in seconds"; + } + leaf nsr-sync-state { + type Mgmt-ldp-nsr-peer-sync-state; + description + "NSR Sync State"; + } + leaf nsr-last-sync-error { + type Mgmt-ldp-nsr-peer-sync-err; + description + "Last NSR sync error"; + } + leaf nsr-last-sync-nack-reason { + type Mgmt-ldp-nsr-peer-ldp-sync-nack-rsn; + description + "Last NSR sync NACK reaston"; + } + leaf bgp-advertisement-state { + type Mgmt-ldp-nbr-bgp-advt-state; + description + "BGP labelled prefixes advertisement state"; + } + leaf advertise-bgp-prefixes { + type boolean; + description + "Is BGP labelled prefixes advertised to the + neighbor"; + } + list client { + description + "Targeted Session clients"; + uses LDP-NBR-CLIENTS-INFO; + } + list ipv4-duplicate-address { + description + "Duplicate IPv4 address bound to this peer"; + uses LDP-NBR-ADDR-INFO; + } + list ipv6-duplicate-address { + description + "Duplicate IPv6 address bound to this peer"; + uses LDP-NBR-ADDR-INFO; + } + } + + grouping TARGETED-HELLO { + description + "MPLS LDP Targeted Hello Information"; + container local-address { + description + "Local Address"; + uses LDP-IP-ADDR-T-UNION; + } + container target-address { + description + "Target Address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf state { + type Dhcb-state; + description + "State"; + } + } + + grouping LINK-HELLO { + description + "MPLS LDP Link Hello Information"; + leaf interface { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-name { + type string; + description + "Interface name"; + } + } + + grouping LDP-ADJ-UNION { + description + "LDP ADJ UNION"; + container link-hello-data { + when "../hello-type = 'link-hello'" { + description + "../HelloType = 'LinkHello'"; + } + description + "Link hello"; + uses LINK-HELLO; + } + container target-hello-data { + when "../hello-type = 'targeted-hello'" { + description + "../HelloType = 'TargetedHello'"; + } + description + "Target Hello"; + uses TARGETED-HELLO; + } + leaf hello-type { + type Ldp-adj-union-discrim; + description + "HelloType"; + } + } + + grouping LDP-NBR-ADJ-INFO { + description + "MPLS LDP Neighbor Adjacency Information"; + container adjacency-group { + description + "Adjacency group"; + uses LDP-ADJ-UNION; + } + } + + grouping LDP-NBR-ADDR-INFO { + description + "MPLS LDP Neighbor Bound Address Information"; + container address { + description + "Neighbor Address"; + uses LDP-IP-ADDR-T-UNION; + } + } + + grouping LDP-TCP-INFO { + description + "MPLS LDP Neighbor TCP Information"; + container foreign-host { + description + "Foreign host address"; + uses LDP-IP-ADDR-T-UNION; + } + container local-host { + description + "Local host address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf foreign-port { + type uint16; + description + "Foreign port number"; + } + leaf local-port { + type uint16; + description + "Local port number"; + } + leaf is-md5-on { + type boolean; + description + "Is MD5 Digest on"; + } + } + + grouping LDP-GR-ADJ-INFO { + description + "MPLS LDP Neighbor Graceful Restart Adjacency + Information"; + leaf is-graceful-restartable { + type boolean; + description + "Is graceful restartable"; + } + leaf reconnect-timeout { + type uint32; + description + "Reconnect timeout"; + } + leaf recovery-time { + type uint32; + description + "Recovery time"; + } + } + + grouping LDP-PTCL-ADJ-INFO { + description + "MPLS LDP PTCL Adjacency Information"; + container ta-graceful-restart-adjacency { + description + "Graceful restart information"; + uses LDP-GR-ADJ-INFO; + } + leaf ta-holdtime { + type uint32; + description + "Session holdtime in sec"; + } + leaf ta-state { + type string; + description + "State"; + } + leaf ta-pies-sent { + type uint32; + description + "Number of pies sent"; + } + leaf ta-pies-rcvd { + type uint32; + description + "Number of pies received"; + } + leaf ta-up-time-seconds { + type uint32; + units "second"; + description + "Up time in seconds"; + } + leaf downstream-on-demand { + type boolean; + description + "Is Label advertisment mode in Downstream On + Demand mode or Not"; + } + } + + grouping LDP-NEIGHBOR-INFO { + description + "MPLS LDP Neighbor Information"; + container protocol-information { + description + "Protocol Information"; + uses LDP-PTCL-ADJ-INFO; + } + container tcp-information { + description + "TCP Information"; + uses LDP-TCP-INFO; + } + container detailed-information { + description + "Detailed information with regards to holdtime, + KA, inbound filtering, and Session protection"; + uses LDP-NBR-DETAILED-INFO; + } + list ldp-nbr-bound-ipv4-address-info { + description + "Neighbor IPv4 Address Info"; + uses LDP-NBR-ADDR-INFO; + } + list ldp-nbr-bound-ipv6-address-info { + description + "Neighbor IPv6 Address Info"; + uses LDP-NBR-ADDR-INFO; + } + list ldp-nbr-ipv4-adj-info { + description + "Neighbor's IPv4 Adjacency Information"; + uses LDP-NBR-ADJ-INFO; + } + list ldp-nbr-ipv6-adj-info { + description + "Neighbor's IPv6 Adjacency Information"; + uses LDP-NBR-ADJ-INFO; + } + } + + grouping LDP-NBR-CAP-INFO { + description + "MPLS LDP Neighbor Capability Information"; + list sent { + description + "List of sent capabilities"; + uses LDP-CAP-DESC; + } + list received { + description + "List of received capabilities"; + uses LDP-CAP-DESC; + } + } + + grouping LDP-PARAMETERS-AF { + description + "MPLS LDP per AF Parameters Information"; + container discovery-transport-address { + description + "Discovery transport address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf address-family { + type Ldp-af; + description + "Address Family"; + } + leaf null-label { + type string; + description + "Null label"; + } + leaf label-imp-null-override-acl { + type string; + description + "ACL to override local label to use implicit-null"; + } + leaf is-accepting-targeted-hellos { + type boolean; + description + "Accepting targeted Hellos"; + } + leaf targeted-hello-acl { + type string; + description + "Targeted Hello ACL"; + } + } + + grouping LDP-GRACEFUL-RESTART-INFO { + description + "MPLS LDP Global Graceful Restart Information"; + leaf is-graceful-restart-configured { + type boolean; + description + "Is graceful restart configured"; + } + leaf graceful-restart-reconnect-timeout { + type uint32; + description + "Reconnect timeout value"; + } + leaf graceful-restart-forwarding-state-hold-time { + type uint32; + description + "Graceful restart forward state hold time"; + } + } + + grouping LDP-PARAMETERS { + description + "MPLS LDP Global Parameters"; + container graceful-restart-information { + description + "Graceful restart information"; + uses LDP-GRACEFUL-RESTART-INFO; + } + leaf role-is-active { + type boolean; + description + "Is process role active or standby"; + } + leaf global-md5-password-enabled { + type boolean; + description + "Global MD5 password enabled"; + } + leaf protocol-version { + type uint32; + description + "Protocol version"; + } + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf keepalive-interval { + type uint32; + description + "Keepalive interval"; + } + leaf hello-hold-time { + type uint32; + description + "Hello hold time"; + } + leaf hello-interval { + type uint32; + description + "Hello interval"; + } + leaf targeted-hello-hold-time { + type uint32; + description + "Targeted hello hold time"; + } + leaf targeted-hello-interval { + type uint32; + description + "Targeted hello interval"; + } + leaf session-hold-time { + type uint32; + description + "Session hold time"; + } + leaf housekeeping-timer-interval { + type uint32; + description + "Housekeeping periodic timer interval"; + } + leaf le-no-route-timeout { + type uint32; + description + "LIB entry no route timeout"; + } + leaf ldp-recovery-timeout { + type uint32; + description + "LDP recovery timeout with LSD"; + } + leaf af-binding-withdraw-delay { + type uint32; + description + "Delay (sec) in Binding Withdrawal for an Address + Family"; + } + leaf max-intf-attached { + type uint32; + description + "Maximum number of LDP enabled attached + interfaces"; + } + leaf max-intf-te { + type uint32; + description + "Maximum number of LDP enabled TE interfaces"; + } + leaf max-peer { + type uint32; + description + "Maximum number of LDP peers"; + } + leaf ldp-out-of-mem-state { + type uint32; + description + "LDP Out of memory state"; + } + leaf nsr-enabled { + type boolean; + description + "TRUE if NSR is enabled"; + } + leaf nsr-synced { + type boolean; + description + "TRUE if LDP is standby and is NSR Sync-ed with + active"; + } + leaf igp-sync-delay-time-for-interface { + type uint32; + units "second"; + description + "Interface IGP sync delay time in seconds"; + } + leaf igp-sync-delay-time-on-restart { + type uint32; + units "second"; + description + "IGP sync delay time on process restart in + seconds"; + } + leaf global-discovery-quick-start-disabled { + type boolean; + description + "Discovery quick-start globally disabled"; + } + leaf discovery-quick-start-disabled-on-interfaces { + type boolean; + description + "Discovery quick-start disabled on some + LDP-enabled interfaces"; + } + list address-family-parameter { + description + "Per AF parameters"; + uses LDP-PARAMETERS-AF; + } + } + + grouping LDP-NSR-SUM-SESS { + description + "MPLS LDP NSR session summary"; + leaf total { + type uint32; + description + "Total sessions"; + } + leaf nsr-eligible { + type uint32; + description + "NSR eligible sessions"; + } + leaf nsr-state-none { + type uint32; + description + "Number of sessions in NSR none state"; + } + leaf nsr-state-wait { + type uint32; + description + "Number of sessions in NSR wait state"; + } + leaf nsr-state-ready { + type uint32; + description + "Number of sessions in NSR ready state"; + } + leaf nsr-state-prepare { + type uint32; + description + "Number of sessions in NSR prepare state"; + } + leaf nsr-state-app-wait { + type uint32; + description + "Number of sessions in NSR app-wait state"; + } + leaf nsr-state-operational { + type uint32; + description + "Number of sessions in NSR operational state"; + } + leaf nsr-state-tcp-phase1 { + type uint32; + description + "Number of sessions in NSR TCP phase 1 state"; + } + leaf nsr-state-tcp-phase2 { + type uint32; + description + "Number of sessions in NSR TCP phase 2 state"; + } + } + + grouping LDP-NSR-SUM { + description + "MPLS LDP NSR summary"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + container sessions { + description + "Session summary"; + uses LDP-NSR-SUM-SESS; + } + } + + grouping LDP-BACKOFF-ENTRY-INFO { + description + "MPLS LDP Session Backoff Entry Information"; + leaf backoff-seconds { + type uint32; + units "second"; + description + "Backoff seconds"; + } + leaf waiting-seconds { + type uint32; + units "second"; + description + "Backoff waiting seconds"; + } + } + + grouping LDP-BACKOFF-INFO { + description + "MPLS LDP Session Backoff Information"; + leaf initial-seconds { + type uint32; + units "second"; + description + "Initial backoff value in seconds"; + } + leaf maximum-seconds { + type uint32; + units "second"; + description + "Maximum backoff value in seconds"; + } + } + + grouping LDP-NEIGHBOR-BRIEF-AF-INFO { + description + "MPLS LDP Neighbor Brief AF information"; + leaf address-family { + type Ldp-af; + description + "Neighbor Brief Address Family"; + } + leaf num-of-nbr-discovery { + type uint32; + description + "Number of neighbor discovery sources"; + } + leaf num-of-nbr-addresses { + type uint32; + description + "Number of neighbor addresses"; + } + leaf num-of-nbr-lbl { + type uint32; + description + "Number of neighbor labels"; + } + } + + grouping LDP-NEIGHBOR-BRIEF-INFO { + description + "MPLS LDP Neighbor Brief Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf is-graceful-restartable { + type boolean; + description + "Is graceful restartable"; + } + leaf nsr-state { + type Show-nsr-state; + description + "NSR readiness state"; + } + leaf up-time-seconds { + type uint32; + units "second"; + description + "Up time in seconds"; + } + list nbr-br-af-info { + key "address-family"; + max-elements "2"; + description + "Neighbor Brief AF Info"; + uses LDP-NEIGHBOR-BRIEF-AF-INFO; + } + } + + grouping LDP-FWD-RW-PATH-SUMM { + description + "MPLS LDP fowarding rewrite nexthop/path summary"; + leaf total-paths { + type uint32; + description + "Total path count"; + } + leaf protected-paths { + type uint32; + description + "Count of FRR protected paths"; + } + leaf backup-paths { + type uint32; + description + "Count of non-primary backup paths"; + } + leaf remote-backup-paths { + type uint32; + description + "Count of non-primary remote backup paths"; + } + leaf labeled-paths { + type uint32; + description + "Count of all labeled paths"; + } + leaf labeled-backup-paths { + type uint32; + description + "Count of labeled backup paths"; + } + } + + grouping LDP-FWD-RW-PFX-LBL-SUMM { + description + "MPLS LDP forwarding rewrite prefix nexthops + labeled summary"; + leaf labeled-pfxs { + type uint16; + description + "Count of labeled prefixes with 1 or more paths + labeled"; + } + leaf labeled-pfxs-partial { + type uint16; + description + "Count of labeled prefixes with some (but not + ALL) paths labeled"; + } + leaf unlabeled-pfxs { + type uint16; + description + "Count of labeled prefixes with ALL paths + unlabeled"; + } + } + + grouping LDP-FWD-RW-PFX-SUMM { + description + "MPLS LDP fowarding rewrite prefix summary"; + container labeled-pfxs-aggr { + description + "Labeled prefix count for all paths"; + uses LDP-FWD-RW-PFX-LBL-SUMM; + } + container labeled-pfxs-primary { + description + "Labeled prefix count related to primary paths + only"; + uses LDP-FWD-RW-PFX-LBL-SUMM; + } + container labeled-pfxs-backup { + description + "Labeled prefix count related to backup paths + only"; + uses LDP-FWD-RW-PFX-LBL-SUMM; + } + leaf total-pfxs { + type uint16; + description + "Total Prefix count"; + } + leaf ecmp-pfxs { + type uint16; + description + "Count of prefixes with ECMP"; + } + leaf protected-pfxs { + type uint16; + description + "Count of FRR protected prefixes"; + } + } + + grouping LDP-FWD-RW-SUMM { + description + "MPLS LDP fowarding rewrite summary"; + container pfxs { + description + "Forwarding rewrites prefix summary"; + uses LDP-FWD-RW-PFX-SUMM; + } + container nhs { + description + "Forwarding rewrites nexthops (paths) summary"; + uses LDP-FWD-RW-PATH-SUMM; + } + } + + grouping LDP-FWD-SUMM-INFO { + description + "MPLS LDP fowarding summary"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + container rws { + description + "Forwarding rewrites summary"; + uses LDP-FWD-RW-SUMM; + } + leaf is-lsd-bound { + type boolean; + description + "LDP is connected to LSD server"; + } + leaf fsht { + type uint16; + description + "Forwarding state hold time registered with LSD"; + } + leaf intfs { + type uint16; + description + "MPLS forwarding enabled interface count"; + } + leaf lbls { + type uint16; + description + "Local label allocated count"; + } + } + + grouping LDP-BINDING-ALLOC { + description + "MPLS LDP Binding local label allocation filter"; + leaf has-acl { + type boolean; + description + "Has ACL filter?"; + } + leaf prefix-acl { + type string { + length "0..64"; + } + description + "Prefix ACL"; + } + leaf is-host-route-only { + type boolean; + description + "Host-routes only?"; + } + } + + grouping LDP-BINDING-ADVT-ACL-PAIR { + description + "MPLS LDP Binding advertisement ACL pair"; + leaf prefix-acl { + type string { + length "0..64"; + } + description + "Prefix ACL"; + } + leaf peer-acl { + type string { + length "0..64"; + } + description + "Peer ACL"; + } + } + + grouping LDP-BINDING-ADVT-SPEC { + description + "MPLS LDP Binding advertisement specification ACLs"; + container allocation-acl { + description + "Local label Allocation filter"; + uses LDP-BINDING-ALLOC; + } + list advt-acl { + description + "Advertisement ACLs"; + uses LDP-BINDING-ADVT-ACL-PAIR; + } + } + + grouping LDP-FWD-PATH-RLFA-MOI-INFO { + description + "MPLS LDP Forwarding Path Remote LFA-FRR backup + MPLS MOI info"; + list stack { + description + "Inner label stack info"; + uses LDP-FWD-PATH-MPLS-NH-INFO; + } + } + + grouping LDP-FWD-PATH-RLFA-MPLS-INFO { + description + "MPLS LDP Forwarding Path Remote LFA-FRR backup + MPLS info"; + container mpls-outgoing-info { + description + "Remote LFA MPLS nexthop(s_ info"; + uses LDP-FWD-PATH-RLFA-MOI-INFO; + } + leaf has-remote-lfa-bkup { + type boolean; + description + "Whether path has remote LFA backup"; + } + } + + grouping LDP-FWD-PATH-MPLS-NH-INFO { + description + "Forwarding Path MPLS nexthop info"; + container nexthop-peer-ldp-ident { + description + "Nexthop LDP peer"; + uses LDP-LDPID-INFO; + } + leaf out-label { + type uint32; + description + "Outgoing label"; + } + leaf out-label-rsn { + type Ldp-fwd-unlbl-rsn; + description + "Outgoing label reason"; + } + leaf out-label-type { + type Label-value; + description + "Outgoing Label Type"; + } + leaf out-label-owner { + type Ldp-route-path-lbl-owner; + description + "Outgoing label owner"; + } + leaf is-from-graceful-restartable-neighbor { + type boolean; + description + "Is from a GR neighbor"; + } + leaf is-stale { + type boolean; + description + "Is the entry stale"; + } + leaf entropy-label-capability { + type boolean; + description + "Entropy Label Capability"; + } + } + + grouping LDP-FWD-PATH-MPLS-INFO { + description + "MPLS LDP Forwarding Path MPLS information"; + container mpls-outgoing-info { + description + "MPLS nexthop info"; + uses LDP-FWD-PATH-MPLS-NH-INFO; + } + container remote-lfa { + description + "Remote LFA-FRR backup info"; + uses LDP-FWD-PATH-RLFA-MPLS-INFO; + } + } + + grouping LDP-FWD-PATH-RLFA-ROUTING-INFO { + description + "MPLS LDP Forwarding Path Remote LFA-FRR backup + routing info"; + container remote-p-node-id { + description + "Remote/P node address"; + uses LDP-IP-ADDR-T-UNION; + } + container remote-q-node-id { + description + "Remote/Q node address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf has-remote-lfa-bkup { + type boolean; + description + "Whether path has remote LFA backup"; + } + leaf needs-tldp { + type boolean; + description + "Whether TLDP is needed with remote PQ node"; + } + leaf has-q-node { + type boolean; + description + "Whether remote LFA path has a Q node associated"; + } + } + + grouping LDP-FWD-PATH-ROUTING-INFO { + description + "MPLS LDP Forwarding Path IP Routing information"; + container next-hop { + description + "Next Hop"; + uses LDP-IP-ADDR-T-UNION; + } + container remote-lfa { + description + "Remote LFA-FRR backup info"; + uses LDP-FWD-PATH-RLFA-ROUTING-INFO; + } + leaf interface { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf nh-is-overriden { + type boolean; + description + "Nexthop is overriden by LDP"; + } + leaf nexthop-id { + type uint32; + description + "Nexthop Identifier"; + } + leaf next-hop-table-id { + type uint32; + description + "Table ID for nexthop address"; + } + leaf flags { + type uint32; + description + "Route path flags"; + } + leaf load-metric { + type uint32; + description + "Path's load metric for load balancing"; + } + leaf binding-label { + type uint32; + description + "Binding label obtained via RIB"; + } + leaf path-id { + type uint8; + description + "path Id"; + } + leaf bkup-path-id { + type uint8; + description + "Backup path Id"; + } + leaf path-flags { + type Ldp-route-path-flags; + description + "Routing path flags decoded"; + } + } + + grouping LDP-FWD-PATH-INFO { + description + "MPLS LDP Forwarding Path info"; + container routing { + description + "IP routing information"; + uses LDP-FWD-PATH-ROUTING-INFO; + } + container mpls { + description + "MPLS information"; + uses LDP-FWD-PATH-MPLS-INFO; + } + } + + grouping LDP-FWD-ROUTE-MPLS-INFO { + description + "MPLS LDP Forwarding Route LDP information"; + leaf local-label { + type uint32; + description + "Local label"; + } + leaf forwarding-update-count { + type uint32; + description + "Number of forwarding updates"; + } + leaf forwarding-update-timestamp { + type uint64; + description + "Last Forwarding update nanosec timestamp"; + } + leaf forwarding-update-age { + type uint64; + description + "Last Forwarding update nanosec age"; + } + } + + grouping LDP-FWD-ROUTE-ROUTING-INFO { + description + "MPLS LDP Forwarding Route IP Routing information"; + leaf version { + type uint32; + description + "Route RIB ersion"; + } + leaf priority { + type uint8; + description + "Route priority"; + } + leaf source { + type uint16; + description + "Route source protol Id"; + } + leaf type { + type uint16; + description + "Route type"; + } + leaf flags { + type uint32; + description + "Route RIB flags"; + } + leaf metric { + type uint32; + description + "Route metric"; + } + leaf is-local-vrf-leaked { + type boolean; + description + "Is route leaked across local VRFs?"; + } + leaf routing-update-count { + type uint32; + description + "Number of routing updates"; + } + leaf routing-update-timestamp { + type uint64; + description + "Last Routing update nanosec timestamp"; + } + leaf routing-update-age { + type uint64; + description + "Last Routing update nanosec age"; + } + leaf sr-local-label { + type uint32; + description + "SR Local-label"; + } + } + + grouping LDP-FWD-ROUTE-INFO { + description + "MPLS LDP Forwarding Route information"; + container routing { + description + "IP routing information"; + uses LDP-FWD-ROUTE-ROUTING-INFO; + } + container mpls { + description + "MPLS information"; + uses LDP-FWD-ROUTE-MPLS-INFO; + } + } + + grouping LDP-FWD-PFX-INFO { + description + "MPLS LDP Forwarding Prefix Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + container prefix-xr { + description + "IP Prefix"; + uses LDP-IP-ADDR-T-UNION; + } + container route { + description + "Route"; + uses LDP-FWD-ROUTE-INFO; + } + leaf table-id { + type uint32; + description + "Table ID associated with IP prefix"; + } + leaf prefix-length { + type uint8; + description + "Prefix length"; + } + list paths { + description + "Paths"; + uses LDP-FWD-PATH-INFO; + } + } + + grouping LDP-CLONED-TUNNEL { + description + "MPLS LDP Cloned TE Tunnel Information"; + leaf interface-name { + type string; + description + "Interface name"; + } + } + + grouping LDP-CLONE-ENABLED-TUNNEL { + description + "MPLS LDP Clone TE Tunnel Information"; + leaf interface-name-xr { + type string; + description + "Interface name"; + } + list ldp-cloned-tunnel { + description + "List of clones of this interface"; + uses LDP-CLONED-TUNNEL; + } + } + + grouping LDP-DISCOVERY-ADJ-GRP-INFO { + description + "MPLS LDP Discovery Adjacency Group Information"; + leaf adjacency-group-up-time { + type uint32; + units "second"; + description + "Adjacency group up time in seconds"; + } + leaf tcp-open-count { + type uint32; + description + "Count of attempted TCP opens"; + } + leaf tcp-arb-chg-count { + type uint32; + description + "Count of changes in TCP arbitration"; + } + leaf tcp-role { + type uint32; + description + "TCP Role"; + } + } + + grouping LDP-TARGETED-HELLO-BRIEF-INFO { + description + "MPLS LDP Discovery Targeted Brief Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + container dhcb-target-address { + description + "DHCB target address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf address-family { + type Ldp-af; + description + "Targeted Discovery Address Family"; + } + list hello-information { + description + "LDP hello info"; + uses LDP-HELLO-BRIEF-INFO; + } + } + + grouping LDP-HELLO-BRIEF-INFO { + description + "MPLS LDP Hello Brief Information"; + leaf neighbor-ldp-identifier { + type string; + description + "Neighbor LDP Identifier"; + } + leaf hold-time { + type uint32; + description + "Session hold time in sec"; + } + leaf session-up { + type boolean; + description + "Is session up for this adj"; + } + } + + grouping LDP-DISCOVERY-LINK-BRIEF-INFO { + description + "MPLS LDP Discovery Link Brief Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf address-family { + type Ldp-af; + description + "Discovery Brief Address Family"; + } + leaf address-family-set { + type Ldp-af; + description + "Discovery Brief Address Family Set"; + } + leaf interface { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + list hello-information { + description + "LDP hello info"; + uses LDP-HELLO-BRIEF-INFO; + } + } + + grouping LDP-TARGETED-HELLO-INFO { + description + "MPLS LDP Targeted Hello Information"; + container dhcb-local-address { + description + "DHCB local address"; + uses LDP-IP-ADDR-T-UNION; + } + container dhcb-target-address { + description + "DHCB target address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf state { + type Dhcb-state; + description + "Targeted hello state"; + } + leaf adjacency-ldp-identifier { + type string; + description + "Adjacency LDP Identifier"; + } + leaf interval { + type uint32; + description + "Hello interval in sec"; + } + leaf next-hello { + type uint32; + description + "Next hello due time in msec"; + } + leaf hold-time { + type uint32; + description + "Targeted hello hold time"; + } + leaf local-hold-time { + type uint32; + description + "Local hold time"; + } + leaf neighbor-hold-time { + type uint32; + description + "Neighbor hold time"; + } + leaf disc-expiry { + type uint32; + description + "Discovery expiry time in msec"; + } + leaf quick-start-disabled { + type boolean; + description + "Quick-start disabled"; + } + leaf established-time { + type uint64; + description + "Hello adjacency estabished time in nanosec"; + } + leaf established-age { + type uint64; + description + "Hello adjacency estabished age in nanosec"; + } + leaf session-up { + type boolean; + description + "Is session up for this adj"; + } + leaf session-bringup-failure-reason { + type string; + description + "session bringup failure reason"; + } + list last-session-down-info { + description + "Last session down information"; + uses LDP-LAST-SESS-INFO; + } + } + + grouping LDP-DISCOVERY-SUMMARY-INFO { + description + "MPLS LDP Discovery Summary Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf local-ldp-id { + type string; + description + "Local LDP identifier"; + } + leaf num-of-ldp-interfaces { + type uint32; + description + "Total Number of LDP configured interfaces"; + } + leaf num-of-active-ldp-interfaces { + type uint32; + description + "Number of active LDP enabled interfaces"; + } + leaf num-of-lnk-disc-xmit { + type uint32; + description + "Number of link hello discoveries in xmit state"; + } + leaf num-of-tgt-disc-xmit { + type uint32; + description + "Number of targeted hello discoveries in xmit + state"; + } + leaf num-of-lnk-disc-recv { + type uint32; + description + "Number of link hello discoveries in recv state"; + } + leaf num-of-tgt-disc-recv { + type uint32; + description + "Number of targeted hello discoveries in recv + state"; + } + leaf num-of-disc-with-bad-addr-recv { + type uint32; + description + "Number of hello discoveries received with bad + source address"; + } + leaf num-of-disc-with-bad-hello-pdu { + type uint32; + description + "Number of hello discoveries received with bad + hello PDU"; + } + leaf num-of-disc-with-bad-xport-addr { + type uint32; + description + "Number of hello discoveries received with bad + export address"; + } + leaf num-of-disc-with-same-router-id { + type uint32; + description + "Number of hello discoveries received with the + same router id as this router"; + } + leaf num-of-disc-with-wrong-router-id { + type uint32; + description + "Number of hello discoveries received with the + router id that is not destined for this router"; + } + } + + grouping LDP-DISCOVERY-LINK-AF-INFO { + description + "MPLS LDP Discovery Link Address Family + Information"; + container local-src-address { + description + "Local source address"; + uses LDP-IP-ADDR-T-UNION; + } + container local-transport-address { + description + "Local transport address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf interval { + type uint32; + description + "Hello interval in sec"; + } + } + + grouping LDP-LAST-SESS-INFO { + description + "LDP last down session information"; + leaf last-session-down-reason { + type string; + description + "The reason of last socket failure"; + } + leaf last-session-down-time { + type uint64; + description + "Timestamp of when the last session went down"; + } + leaf last-session-up-time { + type uint32; + description + "The time duration the last session was up"; + } + } + + grouping LDP-HELLO-INFO { + description + "MPLS LDP Hello Information"; + container neighbor-src-address { + description + "Neighbor source address"; + uses LDP-IP-ADDR-T-UNION; + } + container neighbor-transport-address { + description + "Neighbor transport address"; + uses LDP-IP-ADDR-T-UNION; + } + container target { + description + "Target address"; + uses LDP-IP-ADDR-T-UNION; + } + leaf neighbor-ldp-identifier { + type string; + description + "Neighbor LDP Identifier"; + } + leaf is-no-route { + type boolean; + description + "Is route valid"; + } + leaf hold-time { + type uint32; + units "second"; + description + "Session hold time in seconds"; + } + leaf local-hold-time { + type uint32; + units "second"; + description + "Local hold time in seconds"; + } + leaf neighbor-hold-time { + type uint32; + units "second"; + description + "Neighbor hold time in seconds"; + } + leaf disc-expiry { + type uint32; + description + "Discovery expiry time in sec"; + } + leaf is-targeted { + type boolean; + description + "Is session a targeted session"; + } + leaf session-up { + type boolean; + description + "Is session up for this adj"; + } + leaf established-time { + type uint64; + description + "Hello adjacency estabished time in nanosec"; + } + leaf established-age { + type uint64; + description + "Hello adjacency estabished age in nanosec"; + } + leaf session-bringup-failure-reason { + type string; + description + "session bringup failure reason"; + } + list last-session-down-info { + description + "Last session down information"; + uses LDP-LAST-SESS-INFO; + } + } + + grouping LDP-DISCOVERY-LINK-INFO { + description + "MPLS LDP Discovery Link Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf next-hello { + type uint32; + description + "Next hello due time in msec"; + } + leaf interface { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf quick-start-disabled { + type boolean; + description + "Quick-start disabled"; + } + list hello-information { + description + "LDP hello info"; + uses LDP-HELLO-INFO; + } + list discovery-link-af { + max-elements "2"; + description + "LDP hello AF info"; + uses LDP-DISCOVERY-LINK-AF-INFO; + } + } + + grouping LDP-INTF-AUTOCFG { + description + "MPLS LDP auto configure"; + leaf tuple { + type string; + description + "Tuple"; + } + } + + grouping LDP-INTF-TE-MESH-GRP { + description + "MPLS LDP interface tunnel mesh group"; + leaf ldp-te-mesh-group-all-cfgd { + type boolean; + description + "LDP has enabled all TE mesh-groups"; + } + leaf ldp-mesh-group-enabled { + type boolean; + description + "LDP has enabled this TE mesh-group"; + } + leaf te-mesh-group-id { + type uint32; + description + "TE tunnel Mesh Group ID"; + } + } + + grouping LDP-INTF { + description + "MPLS LDP interface information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf interface { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf ldp-enabled { + type boolean; + description + "LDP enabled"; + } + leaf is-im-stale { + type boolean; + description + "Is IM information stale"; + } + leaf ldp-config-mode { + type boolean; + description + "LDP config mode"; + } + leaf ldp-autoconfig-disable { + type boolean; + description + "LDP autoconfig disable"; + } + leaf is-cloned-tunnel { + type boolean; + description + "Is a TE cloned Tunnel"; + } + list te-mesh-grp { + description + "TE tunnel mesh-group"; + uses LDP-INTF-TE-MESH-GRP; + } + list auto-config { + description + "Auto config"; + uses LDP-INTF-AUTOCFG; + } + } + + grouping LDP-BINDING-SUMMARY-AF { + description + "MPLS LDP Binding Summary AF Information"; + leaf address-family { + type Ldp-af; + description + "Binding Summary Address Family"; + } + leaf last-lib-update { + type uint32; + description + "Last update to LIB local binding"; + } + leaf lib-minimum-revision-sent-all { + type uint32; + description + "Last update sent to all peers"; + } + leaf binding-total { + type uint32; + description + "Total bindings"; + } + leaf binding-local { + type uint32; + description + "Number of local bindings"; + } + leaf binding-remote { + type uint32; + description + "Number of remote bindings"; + } + } + + grouping LDP-BINDING-SUMMARY { + description + "MPLS LDP Binding Summary Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf address-family { + type Ldp-af; + description + "Address Family"; + } + leaf binding-no-route { + type uint32; + description + "Bindings with no route"; + } + leaf binding-local-no-route { + type uint32; + description + "Local bindings with no route"; + } + leaf binding-local-null { + type uint32; + description + "Number of local null bindings"; + } + leaf binding-local-implicit-null { + type uint32; + description + "Number of local implicit null bindings"; + } + leaf binding-local-explicit-null { + type uint32; + description + "Number of local explicit null bindings"; + } + leaf binding-local-non-null { + type uint32; + description + "Number of local non-null bindings"; + } + leaf binding-local-oor { + type uint32; + description + "Number of local bindings needing label - + OOR"; + } + leaf lowest-allocated-label { + type uint32; + description + "Lowest allocated label"; + } + leaf highest-allocated-label { + type uint32; + description + "Highest allocated label"; + } + list bind-af { + max-elements "2"; + description + "bind af"; + uses LDP-BINDING-SUMMARY-AF; + } + } + + grouping LDP-IGP-SYNC-DELAY-RESTART-INFO { + description + "MPLS LDP IGP Sync Restart Delay Information"; + leaf configured { + type boolean; + description + "Is restart delay configured"; + } + leaf delay-secs { + type uint32; + description + "Delay time"; + } + leaf timer-running { + type boolean; + description + "Is restart delay timer running"; + } + leaf remaining-secs { + type uint32; + description + "Delay timer remaining time"; + } + } + + grouping LDP-IGP-SYNC-INTF-GR-ONLY { + description + "MPLS LDP IGP Sync Interface GR-only reachable + Peer Information"; + leaf peer-id { + type String-td2; + description + "Peer Identifier"; + } + leaf is-chkpt-created { + type boolean; + description + "Is created due to checkpointing"; + } + } + + grouping LDP-IGP-SYNC-INTF-PEER { + description + "MPLS LDP IGP Sync Interface Peer Information"; + leaf peer-id { + type String-td2; + description + "Peer Identifier"; + } + leaf is-gr-enabled { + type boolean; + description + "Is GR enabled session"; + } + } + + grouping LDP-IGP-SYNC-INFO { + description + "MPLS LDP IGP Sync Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf igp-sync-state { + type Ldp-igp-sync-state; + description + "IGP Sync state"; + } + leaf igp-sync-delay { + type uint32; + units "second"; + description + "IGP sync delay in seconds"; + } + leaf is-delay-timer-running { + type boolean; + description + "Is sync delay timer running"; + } + leaf delay-timer-remaining { + type uint32; + units "second"; + description + "Remaining timer (seconds) till expiry of sync + delay timer"; + } + leaf igp-sync-down-reason { + type Ldp-igp-sync-down-reason; + description + "Reason IGP Sync Not Achieved"; + } + list peers { + description + "Interface Peers"; + uses LDP-IGP-SYNC-INTF-PEER; + } + list gr-only-peer { + description + "Interface GR-only reachable peers"; + uses LDP-IGP-SYNC-INTF-GR-ONLY; + } + } + + grouping LDP-TIB-ENTRY-REMOTE { + description + "MPLS LDP Remote Binding Information"; + container assigning-peer-ldp-ident { + description + "Assigning peer"; + uses LDP-LDPID-INFO; + } + leaf remote-label { + type uint32; + description + "Remote Label"; + } + leaf is-stale { + type boolean; + description + "Is the entry stale"; + } + leaf is-elc { + type boolean; + description + "Is the entry entropy label capable"; + } + } + + grouping LDP-TIB-ENTRY-DETAIL { + description + "MPLS LDP Binding Detail Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + container prefix-xr { + description + "IP Prefix"; + uses LDP-IP-ADDR-T-UNION; + } + leaf prefix-length { + type uint8; + description + "Prefix Length"; + } + leaf local-label { + type uint32; + description + "Local label"; + } + leaf le-local-binding-revision { + type uint32; + description + "Local Binding revision"; + } + leaf le-local-label-state { + type Local-label-state; + description + "Local label state"; + } + leaf is-no-route { + type boolean; + description + "No route"; + } + leaf label-oor { + type boolean; + description + "Label space depletion OOR"; + } + leaf advertise-prefix-acl { + type string; + description + "Advertise Prerfix ACL"; + } + leaf advertise-tsr-acl { + type string; + description + "Advertise TSR ACL"; + } + leaf config-enforced-local-label-value { + type boolean; + description + "Config/User enforced local label value"; + } + leaf is-elc { + type boolean; + description + "Is the entry entropy label capable"; + } + list remote-binding { + description + "Remote binding"; + uses LDP-TIB-ENTRY-REMOTE; + } + list peers-advertised-to { + description + "Peers this entry is advertised to"; + uses LDP-LDPID-INFO; + } + list peers-acked { + description + "Peers that have ACKed this entry"; + uses LDP-LDPID-INFO; + } + } + + grouping LDP-INTF-SUM { + description + "MPLS LDP interface summary"; + leaf known-ip-interface-count { + type uint32; + description + "Number of known IP Interfaces"; + } + leaf known-ip-interface-ldp-enabled { + type uint32; + description + "Number of known IP Interfaces with LDP Enabled"; + } + leaf ldp-configured-attached-interface { + type uint32; + description + "Number of attached interfaces configured in LDP"; + } + leaf ldp-configured-te-interface { + type uint32; + description + "Number of TE tunnel interfaces configured in LDP"; + } + leaf forward-references { + type uint32; + description + "Number of forward referenced interfaces"; + } + leaf auto-config-disabled { + type uint32; + description + "Autoconfigure disabled"; + } + leaf auto-config { + type uint32; + description + "Auto-configured interfaces"; + } + leaf auto-config-forward-reference-interfaces { + type uint32; + description + "Auto-configured forward references"; + } + } + + grouping LDP-SUMMARY-COMMON { + description + "MPLS LDP common summary Information"; + leaf address-families { + type Ldp-af; + description + "Address Families enabled"; + } + leaf number-of-ipv4af { + type uint32; + description + "Number of IPv4 address-families enabled"; + } + leaf number-of-ipv6af { + type uint32; + description + "Number of IPv6 address-families enabled"; + } + leaf number-of-neighbors { + type uint32; + description + "Number of neighbors"; + } + leaf number-of-adj-grps { + type uint32; + description + "Number of Adjacency Groups"; + } + leaf number-of-nsr-synced-neighbors { + type uint32; + description + "Number of NSR-synced/operational neighbors"; + } + leaf number-of-graceful-restart-neighbors { + type uint32; + description + "Number of Graceful Restart neighbors"; + } + leaf number-of-downstream-on-demand-neighbors { + type uint32; + description + "Number of Downstream-On-Demand neighbors"; + } + leaf number-of-ipv4-hello-adj { + type uint32; + description + "Number of LDP discovery IPv4 hello adjacencies"; + } + leaf number-of-ipv6-hello-adj { + type uint32; + description + "Number of LDP discovery IPv6 hello adjacencies"; + } + leaf number-of-ipv4-routes { + type uint32; + description + "Number of resolved IPv4 routes"; + } + leaf number-of-ipv6-routes { + type uint32; + description + "Number of resolved IPv6 routes"; + } + leaf number-of-ipv4-local-addresses { + type uint32; + description + "Number of IPv4 local addresses"; + } + leaf number-of-ipv6-local-addresses { + type uint32; + description + "Number of IPv6 local addresses"; + } + leaf number-of-ldp-interfaces { + type uint32; + description + "Number of LDP configured interfaces"; + } + leaf number-of-ipv4ldp-interfaces { + type uint32; + description + "Number of LDP IPv4 configured interfaces"; + } + leaf number-of-ipv6ldp-interfaces { + type uint32; + description + "Number of LDP IPv6 configured interfaces"; + } + leaf number-of-bindings-ipv4 { + type uint32; + description + "Total number of ipv4 bindings"; + } + leaf number-of-bindings-ipv6 { + type uint32; + description + "Total number of ipv6 bindings"; + } + leaf number-of-local-bindings-ipv4 { + type uint32; + description + "Total number of ipv4 local label bindings"; + } + leaf number-of-local-bindings-ipv6 { + type uint32; + description + "Total number of ipv6 local label bindings"; + } + leaf number-of-remote-bindings-ipv4 { + type uint32; + description + "Total number of ipv4 remote label bindings"; + } + leaf number-of-remote-bindings-ipv6 { + type uint32; + description + "Total number of ipv6 remote label bindings"; + } + } + + grouping LDP-SUMMARY-VRF { + description + "MPLS LDP per VRF summarized Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + container common { + description + "Common Summary information"; + uses LDP-SUMMARY-COMMON; + } + } + + grouping LDP-CAP-DESC { + description + "MPLS LDP Capability Description"; + leaf type { + type uint16; + description + "Capability type (IANA assigned)"; + } + leaf description { + type string { + length "0..80"; + } + description + "Capability description"; + } + leaf capability-data-length { + type uint16; + description + "Capability data length"; + } + leaf capability-data { + type string; + description + "Capability data"; + } + } + + grouping LDP-CAP-INFO { + description + "MPLS LDP Capability Information"; + container capability { + description + "Capability information"; + uses LDP-CAP-DESC; + } + leaf capability-owner { + type string; + description + "Capability owner"; + } + } + + grouping LDP-IP-ADDR-T-UNION { + description + "LDP IP ADDR T UNION"; + leaf afi { + type Ldp-af-id; + description + "AFI"; + } + leaf dummy { + when "../afi = 'ldp-af-id-none'" { + description + "../AFI = 'LDP_AF_ID_NONE'"; + } + type uint8; + description + "No Address"; + } + leaf ipv4 { + when "../afi = 'ldp-af-id-ipv4'" { + description + "../AFI = 'LDP_AF_ID_IPV4'"; + } + type Ldp-in-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../afi = 'ldp-af-id-ipv6'" { + description + "../AFI = 'LDP_AF_ID_IPV6'"; + } + type Ldp-in6-addr; + description + "IPv6 address type"; + } + } + + grouping LDP-GR-DNBR-INTF-INFO { + description + "MPLS LDP GR DownNbr Interface Info"; + leaf address-family { + type Ldp-af-id; + description + "Interface adj Address Family"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interfaces handle"; + } + } + + grouping LDP-LDPID-INFO { + description + "MPLS LDP Identifier Information"; + leaf lsr-id { + type inet:ipv4-address; + description + "LSR identifier"; + } + leaf label-space-id { + type uint16; + description + "Label space identifier"; + } + leaf ldp-id { + type string; + description + "LDP identifier"; + } + } + + grouping LDP-GR-NBR-INFO { + description + "MPLS LDP Graceful Restart Neighbor Information"; + container gr-peer { + description + "GR peer LDP Id"; + uses LDP-LDPID-INFO; + } + leaf connect-count { + type uint32; + description + "ConnectCount"; + } + leaf is-neighbor-up { + type boolean; + description + "Is neighbor up"; + } + leaf is-liveness-timer-running { + type boolean; + description + "Is liveness timer running"; + } + leaf liveness-timer-remaining-seconds { + type uint32; + description + "Remaining time from liveness timer"; + } + leaf is-recovery-timer-running { + type boolean; + description + "Is recovery timer running"; + } + leaf recovery-timer-remaining-seconds { + type uint32; + description + "Recovery timer remining time"; + } + leaf down-nbr-flap-count { + type uint8; + description + "Count of back2back flaps"; + } + leaf down-nbr-flags { + type uint32; + description + "Flags"; + } + leaf down-nbr-down-reason { + type uint32; + description + "Session down reason code"; + } + list down-nbr-interface { + description + "Interfaces bound to GR down Nbr"; + uses LDP-GR-DNBR-INTF-INFO; + } + list down-nbr-address { + description + "Addresses bound to GR down Nbr"; + uses LDP-IP-ADDR-T-UNION; + } + } + + grouping LDP-VRF-INFO { + description + "MPLS LDP VRF information"; + leaf name { + type string; + description + "VRF Name"; + } + leaf id { + type uint32; + description + "VRF Id"; + } + } + + grouping LDP-GR-GLOBAL-INFO { + description + "MPLS LDP Graceful Restart Information"; + container vrf { + description + "VRF information"; + uses LDP-VRF-INFO; + } + leaf is-forwarding-state-hold-timer-running { + type boolean; + description + "Is graceful restart forwarding state hold timer + running"; + } + leaf forwarding-state-hold-timer-remaining-seconds { + type uint32; + units "second"; + description + "Forwarding state hold timer remaining time in + seconds"; + } + list graceful-restartable-neighbor { + description + "Vector of graceful restart neighbor information"; + uses LDP-GR-NBR-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub2.yang new file mode 100644 index 000000000..c03ad4796 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub2.yang @@ -0,0 +1,304 @@ +submodule Cisco-IOS-XR-mpls-ldp-oper-sub2 { + belongs-to Cisco-IOS-XR-mpls-ldp-oper { + prefix Cisco-IOS-XR-mpls-ldp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-ldp package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-20 { + description + "Added new path for cloned tunnels + 2021-09-20 + Added keys for nbr-br-af-info"; + semver:module-version "2.0.0"; + } + revision 2021-04-06 { + description + "Added BSID data in LDP forwarding"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2vpn-ldp-pw-aii { + type enumeration { + enum "local-id" { + description + "AII Type 1"; + } + enum "type2" { + description + "AII Type 2"; + } + } + description + "L2vpn ldp pw aii"; + } + + typedef L2vpn-ldp-pw-agi { + type enumeration { + enum "rd" { + description + "AGI type RD"; + } + } + description + "L2vpn ldp pw agi"; + } + + typedef L2vpn-ldp-pw-fec { + type enumeration { + enum "fec128" { + description + "FEC 128 pseudowire type"; + } + enum "fec129" { + description + "FEC 129 pseudowire type"; + } + enum "fec130" { + description + "FEC 130 pseudowire type"; + } + enum "invalid" { + description + "FEC not applicable"; + } + } + description + "L2vpn ldp pw fec"; + } + + grouping L2VPN-LDP-PW-FEC-130 { + description + "L2VPN LDP PW FEC 130"; + container agi { + description + "AGI"; + uses L2VPN-LDP-PW-AGI; + } + container saii { + description + "Source Attachment Individual Identifier"; + uses L2VPN-LDP-PW-AII; + } + } + + grouping L2VPN-LDP-PW-AII2 { + description + "L2VPN LDP PW AII2"; + leaf gobal-id { + type uint32; + description + "Global ID"; + } + leaf prefix { + type uint32; + description + "Prefix"; + } + leaf ac-id { + type uint32; + description + "AC ID"; + } + } + + grouping L2VPN-LDP-PW-AII1 { + description + "L2VPN LDP PW AII1"; + leaf local-id { + type inet:ipv4-address; + description + "Local Identifier"; + } + } + + grouping L2VPN-LDP-PW-AII { + description + "L2VPN LDP PW AII"; + container aii1 { + when "../aii-type = 'local-id'" { + description + "../AIIType = 'LocalID'"; + } + description + "aii1"; + uses L2VPN-LDP-PW-AII1; + } + container aii2 { + when "../aii-type = 'type2'" { + description + "../AIIType = 'Type2'"; + } + description + "aii2"; + uses L2VPN-LDP-PW-AII2; + } + leaf aii-type { + type L2vpn-ldp-pw-aii; + description + "AIIType"; + } + } + + grouping L2VPN-LDP-PW-AGI1 { + description + "L2VPN LDP PW AGI1"; + leaf rd { + type uint64; + description + "Route Distinguisher"; + } + } + + grouping L2VPN-LDP-PW-AGI { + description + "L2VPN LDP PW AGI"; + container agi1 { + when "../agi-type = 'rd'" { + description + "../AGIType = 'RD'"; + } + description + "agi1"; + uses L2VPN-LDP-PW-AGI1; + } + leaf agi-type { + type L2vpn-ldp-pw-agi; + description + "AGIType"; + } + } + + grouping L2VPN-LDP-PW-FEC-129 { + description + "L2VPN LDP PW FEC 129"; + container agi { + description + "AGI"; + uses L2VPN-LDP-PW-AGI; + } + container saii { + description + "Source Attachment Individual Identifier"; + uses L2VPN-LDP-PW-AII; + } + container taii { + description + "Target Attachment Individual Identifier"; + uses L2VPN-LDP-PW-AII; + } + } + + grouping L2VPN-LDP-PW-FEC-128 { + description + "L2VPN LDP PW FEC 128"; + leaf pseudowire-id { + type uint32; + description + "Pseudowire ID"; + } + } + + grouping L2VPN-LDP-PW-FEC-INFO { + description + "L2VPN LDP PW FEC INFO"; + container fec128 { + when "../fe-ctype = 'fec128'" { + description + "../FECType = 'FEC128'"; + } + description + "fec128"; + uses L2VPN-LDP-PW-FEC-128; + } + container fec129 { + when "../fe-ctype = 'fec129'" { + description + "../FECType = 'FEC129'"; + } + description + "fec129"; + uses L2VPN-LDP-PW-FEC-129; + } + container fec130 { + when "../fe-ctype = 'fec130'" { + description + "../FECType = 'FEC130'"; + } + description + "fec130"; + uses L2VPN-LDP-PW-FEC-130; + } + leaf fe-ctype { + type L2vpn-ldp-pw-fec; + description + "FECType"; + } + } + + grouping L2VPN-LDP-ATOM { + description + "L2VPN AToM-DB information"; + container fec-info { + description + "Pseudowire FEC information"; + uses L2VPN-LDP-PW-FEC-INFO; + } + leaf peer-id-xr { + type inet:ipv4-address; + description + "Peer ID"; + } + leaf mapping-tlv-count { + type uint32; + description + "TLV Count from Label Mapping Message"; + } + leaf notification-tlv-count { + type uint32; + description + "TLV Count from Notification Message"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub3.yang new file mode 100644 index 000000000..070595d52 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper-sub3.yang @@ -0,0 +1,309 @@ +submodule Cisco-IOS-XR-mpls-ldp-oper-sub3 { + belongs-to Cisco-IOS-XR-mpls-ldp-oper { + prefix Cisco-IOS-XR-mpls-ldp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-ldp package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-20 { + description + "Added new path for cloned tunnels + 2021-09-20 + Added keys for nbr-br-af-info"; + semver:module-version "2.0.0"; + } + revision 2021-04-06 { + description + "Added BSID data in LDP forwarding"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LDP-NSR-GBL-SYNCI-INFO { + description + "MPLS LDP NSR Global Init Sync Information"; + leaf nsr-cfged { + type boolean; + description + "TRUE if NSR configured"; + } + leaf nsr-synced { + type boolean; + description + "TRUE if NSR synced"; + } + leaf init-sync-start { + type uint32; + description + "Init Sync Start Time"; + } + leaf init-sync-end { + type uint32; + description + "Init Sync End Time"; + } + leaf num-peers { + type uint32; + description + "Number of Peers"; + } + leaf num-cap-sent { + type uint32; + description + "Number of Sent Capabilities objects"; + } + leaf num-cap-rcvd { + type uint32; + description + "Number of Rcvd Capabilities objects"; + } + leaf num-pfx { + type uint32; + description + "Number of binding prefixes"; + } + leaf num-lbl { + type uint32; + description + "Number of label bindings"; + } + leaf num-lcl-addr-wd { + type uint32; + description + "Num of lcl address withdraw"; + } + leaf num-lbl-adv { + type uint32; + description + "Num of lbl adv"; + } + leaf ipc-msg-tx-cnt { + type uint32; + description + "num IPC msgs sent"; + } + leaf ipc-msg-tx-bytes { + type uint32; + units "byte"; + description + "total IPC bytes sent"; + } + leaf ipc-msg-rx-cnt { + type uint32; + description + "num IPC msgs rxed"; + } + leaf ipc-msg-rx-bytes { + type uint32; + description + "num IPC msgs rxed"; + } + leaf ipc-max-tx-batch-bytes { + type uint32; + units "byte"; + description + "biggest IPC TX bytes"; + } + leaf ipc-max-rx-batch-bytes { + type uint32; + units "byte"; + description + "biggest IPC RX bytes"; + } + leaf ipc-tx-fail-cnt { + type uint32; + description + "number of ipc send failures"; + } + leaf total-ipc-tx-fail-cnt { + type uint32; + description + "total number of ipc send failures"; + } + leaf ipc-restart-cnt { + type uint32; + description + "number of times ipc has been restarted"; + } + leaf ipc-default-mtu { + type uint32; + units "byte"; + description + "default IPC MTU bytes"; + } + leaf ipc-exceeded-mtu-msg-cnt { + type uint32; + description + "ipc exceeded mtu msg cnt"; + } + } + + grouping LDP-NSR-GBL-STATS-INFO { + description + "MPLS LDP NSR Global Stats Information"; + container init-sync { + description + "Init Sync"; + uses LDP-NSR-GBL-SYNCI-INFO; + } + } + + grouping LDP-NSR-NBR-SYNCS-INFO { + description + "MPLS LDP NSR Nbr Steady State Sync Information"; + leaf num-cap-sent { + type uint32; + description + "Num of Sent Capabilities"; + } + leaf num-cap-rcvd { + type uint32; + description + "Num of Rcvd Capabilities"; + } + leaf rem-lbl-wd { + type uint32; + description + "Number of remote label withdraw events"; + } + leaf rem-lbl-rq { + type uint32; + description + "Number of remote label request events"; + } + leaf num-stdby-adj-join { + type uint32; + description + "Number of standby adj join"; + } + leaf num-stdby-adj-leave { + type uint32; + description + "Number of standby adj leave"; + } + } + + grouping LDP-NSR-NBR-SYNCI-INFO { + description + "MPLS LDP NSR Nbr Init Sync Information"; + leaf init-sync-start { + type uint32; + description + "Init Sync Start Time"; + } + leaf init-sync-end { + type uint32; + description + "Init Sync End Time"; + } + leaf num-addr { + type uint32; + description + "Number of peer addresses"; + } + leaf num-duplicate-addr { + type uint32; + description + "Number of duplicate peer addresses"; + } + leaf num-rx-bytes { + type uint32; + units "byte"; + description + "Number of unprocessed Rx buffer bytes"; + } + leaf num-cap-sent { + type uint32; + description + "Num of Sent Capabilities"; + } + leaf num-cap-rcvd { + type uint32; + description + "Num of Rcvd Capabilities"; + } + leaf num-lbl { + type uint32; + description + "Number of peer bindings"; + } + leaf num-app-bytes { + type uint32; + units "byte"; + description + "Number of external App data bytes"; + } + } + + grouping LDP-NSR-STATS-NBR-INFO { + description + "MPLS LDP NSR Neighbor Stats Information"; + container init-sync-info { + description + "NSR Init Sync Info"; + uses LDP-NSR-NBR-SYNCI-INFO; + } + container steady-state-sync-info { + description + "NSR Steady State Sync Info"; + uses LDP-NSR-NBR-SYNCS-INFO; + } + leaf lsr-id-xr { + type uint32; + description + "lsr id xr"; + } + leaf lbl-spc-id { + type uint16; + description + "lbl spc id"; + } + leaf nsr-sync-state { + type int32; + description + "nsr sync state"; + } + leaf num-msg { + type uint32; + description + "Number of sync messages"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper.yang new file mode 100644 index 000000000..77d461df8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ldp-oper.yang @@ -0,0 +1,864 @@ +module Cisco-IOS-XR-mpls-ldp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-ldp-oper"; + prefix mpls-ldp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-ldp-oper-sub3 { + revision-date 2021-12-20; + } + include Cisco-IOS-XR-mpls-ldp-oper-sub2 { + revision-date 2021-12-20; + } + include Cisco-IOS-XR-mpls-ldp-oper-sub1 { + revision-date 2021-12-20; + } + + 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 mpls-ldp package operational data. + + This module contains definitions + for the following management objects: + mpls-ldp: MPLS LDP operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-20 { + description + "Added new path for cloned tunnels + 2021-09-20 + Added keys for nbr-br-af-info"; + semver:module-version "2.0.0"; + } + revision 2021-04-06 { + description + "Added BSID data in LDP forwarding"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-ldp-oper-af-name { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + enum "all" { + value 65535; + description + "All"; + } + } + description + "Mpls ldp oper af name"; + } + + grouping NSR-SUMMARY-ALL { + description + "Common node of active, standby, node"; + container nsr-summary-all { + description + "Summary information regarding LDP NSR State"; + uses LDP-NSR-SUM; + } + } + + grouping LDP-ID { + description + "Common node of default-vrf, vrf"; + container ldp-id { + description + "Local LDP Id"; + uses LDP-LDPID-INFO; + } + } + + grouping CAPABILITY-TABLE { + description + "Common node of default-vrf, vrf"; + container capabilities { + description + "LDP capability database information"; + list capability { + key "capability-type"; + description + "Information on LDP capability"; + leaf capability-type { + type uint32; + description + "The capability type (IANA assigned)"; + } + uses LDP-CAP-INFO; + } + } + } + + grouping NEIGHBOR-CAPABILITY-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbor-capabilities { + description + "LDP Neighbors Capabilities"; + list neighbor-capability { + description + "Information on capabilities of a particular LDP + neighbor"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0..65535"; + } + description + "Label space ID of neighbor"; + } + uses LDP-NBR-CAP-INFO; + } + } + } + + grouping VRF-TABLE { + description + "Common node of active, standby, node"; + container vrfs { + description + "VRF specific operational data"; + list vrf { + key "vrf-name"; + description + "Operational data for given VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses GRACEFUL-RESTART; + uses CAPABILITY-TABLE; + uses SUMMARY; + uses AF-TABLE; + uses NEIGHBOR-BRIEF-TABLE; + uses BACKOFF-PARAMETERS; + uses BACKOFF-TABLE; + uses NSR; + uses PARAMETERS; + uses ISSU; + uses NEIGHBOR-CAPABILITY-TABLE; + uses NEIGHBOR-TABLE; + uses LDP-ID; + uses STATISTICS-TABLE; + } + } + } + + grouping BACKOFF-PARAMETERS { + description + "Common node of default-vrf, vrf"; + container backoff-parameters { + description + "The LDP Backoff Parameters"; + uses LDP-BACKOFF-INFO; + } + } + + grouping HA-SUMMARY { + description + "Common node of nsr, issu"; + container ha-summary { + description + "LDP HA Summary"; + uses LDP-NSR-SUM; + } + } + + grouping STATISTICS-TABLE { + description + "Common node of default-vrf, vrf"; + container statistics { + description + "The LDP Statistics"; + list statistic { + description + "Statistical Information on a particular LDP + neighbor"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0..65535"; + } + description + "Label space ID of neighbor"; + } + uses LDP-STATS-INFO; + } + } + } + + grouping DISCOVERY-SUMMARY-ALL { + description + "Common node of active, standby, node"; + container discovery-summary-all { + description + "Summary information regarding LDP discovery"; + uses LDP-DISCOVERY-SUMMARY-INFO; + } + } + + grouping BINDINGS-SUMMARY-ALL { + description + "Common node of active, standby, node"; + container bindings-summary-all { + description + "Aggregate VRF counters for the LDP Label + Infomation Base (LIB)"; + uses LDP-BINDING-SUMMARY; + } + } + + grouping DEFAULT-VRF { + description + "Common node of active, standby, node"; + container default-vrf { + description + "DefaultVRF specific operational data"; + uses GRACEFUL-RESTART; + uses CAPABILITY-TABLE; + uses SUMMARY; + uses AF-TABLE; + uses NEIGHBOR-BRIEF-TABLE; + uses BACKOFF-PARAMETERS; + uses BACKOFF-TABLE; + uses NSR; + uses PARAMETERS; + uses ISSU; + uses NEIGHBOR-CAPABILITY-TABLE; + uses NEIGHBOR-TABLE; + uses LDP-ID; + uses STATISTICS-TABLE; + } + } + + grouping NEIGHBOR-BRIEF-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbor-briefs { + description + "The LDP Neighbors (brief)"; + list neighbor-brief { + description + "Brief information on a particular LDP neighbor"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0..65535"; + } + description + "Label space ID of neighbor"; + } + uses LDP-NEIGHBOR-BRIEF-INFO; + } + } + } + + grouping ATO-MDB-TABLE { + description + "Common node of active, standby, node"; + container ato-mdb-table-entries { + description + "AToM DB Table"; + list ato-mdb-table-entry { + description + "Entries in AToM DB"; + leaf peer-id { + type inet:ip-address-no-zone; + description + "Peer ID"; + } + leaf fe-ctype { + type uint32; + description + "FEC Type"; + } + leaf pw-id { + type uint32; + description + "PW ID"; + } + leaf agi-type { + type uint32; + description + "AGI Type"; + } + leaf agi { + type uint32; + description + "AGI"; + } + leaf saii-type { + type uint32; + description + "SAII Type"; + } + leaf saii-local-id { + type inet:ip-address-no-zone; + description + "SAII Local ID"; + } + leaf saii-global-id { + type uint32; + description + "SAII Global ID"; + } + leaf saii-prefix { + type xr:Hex-integer; + description + "SAII Prefix"; + } + leaf saii-ac-id { + type uint32; + description + "SAII AC ID"; + } + leaf taii-type { + type uint32; + description + "TAII Type"; + } + leaf taii-local-id { + type inet:ip-address-no-zone; + description + "TAII Local ID"; + } + leaf taii-global-id { + type uint32; + description + "TAII Global ID"; + } + leaf taii-prefix { + type xr:Hex-integer; + description + "TAII Prefix"; + } + leaf taii-ac-id { + type uint32; + description + "TAII AC ID"; + } + uses L2VPN-LDP-ATOM; + } + } + } + + grouping PARAMETERS { + description + "Common node of default-vrf, vrf"; + container parameters { + description + "LDP parameters"; + uses LDP-PARAMETERS; + } + } + + grouping FORWARDING-SUMMARY-ALL { + description + "Common node of active, standby, node"; + container forwarding-summary-all { + description + "Summary information regarding LDP forwarding + setup"; + uses LDP-FWD-SUMM-INFO; + } + } + + grouping SUMMARY { + description + "Common node of default-vrf, vrf"; + container summary { + description + "LDP VRF summary"; + uses LDP-SUMMARY-VRF; + } + } + + grouping MPLS-LDP-OPER-SUMMARY { + description + "Common node of default-vrf, vrfCommon node of + active, standby, node"; + container summary { + description + "LDP summary"; + uses LDP-SUMMARY; + } + } + + grouping HA-STATISTICS { + description + "Common node of nsr, issu"; + container ha-statistics { + description + "LDP NSR Statistics related information"; + container ha-global { + description + "LDP NSR Global Statistics information"; + uses LDP-NSR-GBL-STATS-INFO; + } + uses HA-NEIGHBOR-TABLE; + } + } + + grouping NSR { + description + "Common node of default-vrf, vrf"; + container nsr { + description + "LDP NSR related information"; + container nsr-pending { + description + "LDP NSR Pending related information"; + uses HA-NEIGHBOR-TABLE; + } + uses HA-SUMMARY; + uses HA-STATISTICS; + } + } + + grouping GRACEFUL-RESTART { + description + "Common node of default-vrf, vrf"; + container graceful-restart { + description + "LDP Graceful Restart info"; + uses LDP-GR-GLOBAL-INFO; + } + } + + grouping HA-NEIGHBOR-TABLE { + description + "Common node of nsr-pending, ha-statistics"; + container ha-neighbors { + description + "The LDP HA Neighbors"; + list ha-neighbor { + description + "Information on a particular LDP HA neighbor"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0..65535"; + } + description + "Label space ID of neighbor"; + } + uses LDP-NSR-STATS-NBR-INFO; + } + } + } + + grouping NEIGHBOR-TABLE { + description + "Common node of default-vrf, vrf"; + container neighbors { + description + "The LDP Neighbors"; + list neighbor { + description + "Information on a particular LDP neighbor"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0..65535"; + } + description + "Label space ID of neighbor"; + } + uses LDP-NEIGHBOR-INFO; + } + } + } + + grouping ISSU { + description + "Common node of default-vrf, vrf"; + container issu { + description + "LDP ISSU related information"; + uses HA-SUMMARY; + uses HA-STATISTICS; + } + } + + grouping BACKOFF-TABLE { + description + "Common node of default-vrf, vrf"; + container backoffs { + description + "The LDP backoff"; + list backoff { + description + "LDP Backoff Information"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0..65535"; + } + description + "Label space ID of neighbor"; + } + uses LDP-BACKOFF-ENTRY-INFO; + } + } + } + + grouping AF-TABLE { + description + "Common node of default-vrf, vrf"; + container afs { + description + "Address Family specific operational data"; + list af { + key "af-name"; + description + "Operational data for given Address Family"; + container interface-summary { + description + "IPv4 interface summary information"; + uses LDP-INTF-SUM; + } + container bindings { + description + "The LDP Bindings"; + list binding { + key "prefix"; + description + "Binding Information"; + leaf prefix { + type inet:ip-prefix; + description + "The IP Prefix"; + } + uses LDP-TIB-ENTRY-DETAIL; + } + } + container igp { + description + "LDP IGP related information"; + container syncs { + description + "LDP IGP Sync related information"; + list sync { + key "interface-name"; + description + "LDP-IGP Synchronization related information + for an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The Interface Name"; + } + uses LDP-IGP-SYNC-INFO; + } + } + container sync-delay-restart { + description + "LDP-IGP Synchronization Delay related + information"; + uses LDP-IGP-SYNC-DELAY-RESTART-INFO; + } + } + container bindings-summary { + description + "Counters for the LDP Label Infomation Base + (LIB)"; + uses LDP-BINDING-SUMMARY; + } + container interfaces { + description + "LDP Interface related information"; + list interface { + key "interface-name"; + description + "IPv4 interface information"; + leaf interface-name { + type xr:Interface-name; + description + "The Interface Name"; + } + uses LDP-INTF; + } + } + container discovery { + description + "The LDP Discovery"; + container link-hellos { + description + "The LDP Discovery link"; + list link-hello { + key "interface-name"; + description + "Information on LDP link discovery"; + leaf interface-name { + type xr:Interface-name; + description + "The Interface Name"; + } + uses LDP-DISCOVERY-LINK-INFO; + } + } + container summary { + description + "Summarized information on LDP discovery"; + uses LDP-DISCOVERY-SUMMARY-INFO; + } + container targeted-hellos { + description + "The LDP Discovery Targeted"; + list targeted-hello { + description + "Information on LDP targeted discovery"; + leaf local-address { + type inet:ip-address-no-zone; + description + "Local IP Address"; + } + leaf target-address { + type inet:ip-address-no-zone; + description + "The target IP Address"; + } + uses LDP-TARGETED-HELLO-INFO; + } + } + container brief { + description + "Brief information on LDP discovery"; + container link-hello-briefs { + description + "The LDP Discovery link brief information"; + list link-hello-brief { + key "interface-name"; + description + "Brief information on LDP link discovery"; + leaf interface-name { + type xr:Interface-name; + description + "The Interface Name"; + } + uses LDP-DISCOVERY-LINK-BRIEF-INFO; + } + } + container targeted-hello-briefs { + description + "The LDP Discovery Targeted brief information"; + list targeted-hello-brief { + description + "Brief information on LDP targeted discovery"; + leaf local-address { + type inet:ip-address-no-zone; + description + "Local IP Address"; + } + leaf target-address { + type inet:ip-address-no-zone; + description + "The target IP Address"; + } + uses LDP-TARGETED-HELLO-BRIEF-INFO; + } + } + } + container stats { + description + "The LDP Discovery Statistics"; + list stat { + description + "Information on LDP discovery statistics"; + leaf lsr-id { + type inet:ipv4-address-no-zone; + description + "LSR ID of neighbor"; + } + leaf label-space-id { + type uint32 { + range "0..65535"; + } + description + "Label space ID of neighbor"; + } + uses LDP-DISCOVERY-ADJ-GRP-INFO; + } + } + } + container clone-interfaces { + description + "cloned tunnel information"; + list clone-interface { + key "interface-name"; + description + "Clonned tunnel interface information"; + leaf interface-name { + type xr:Interface-name; + description + "The Interface Name"; + } + uses LDP-CLONE-ENABLED-TUNNEL; + } + } + container forwardings { + description + "The LDP Forwarding rewrites"; + list forwarding { + key "prefix"; + description + "Information on a particular LDP forwarding + rewrite"; + leaf prefix { + type inet:ip-prefix; + description + "The IP Prefix"; + } + uses LDP-FWD-PFX-INFO; + } + } + container bindings-advertise-spec { + description + "Advertisement Spec (ACL) for LDP Label + Infomation Base (LIB)"; + uses LDP-BINDING-ADVT-SPEC; + } + container forwarding-summary { + description + "Summary information regarding LDP forwarding + setup"; + uses LDP-FWD-SUMM-INFO; + } + leaf af-name { + type Mpls-ldp-oper-af-name; + description + "Address Family name"; + } + } + } + } + + container mpls-ldp { + config false; + description + "MPLS LDP operational data"; + container global { + description + "Global MPLS LDP operational data"; + container standby { + description + "Standby MPLS LDP operational data"; + uses DEFAULT-VRF; + uses FORWARDING-SUMMARY-ALL; + uses BINDINGS-SUMMARY-ALL; + uses ATO-MDB-TABLE; + uses NSR-SUMMARY-ALL; + uses MPLS-LDP-OPER-SUMMARY; + uses VRF-TABLE; + uses DISCOVERY-SUMMARY-ALL; + } + container active { + description + "Active MPLS LDP operational data"; + uses DEFAULT-VRF; + uses FORWARDING-SUMMARY-ALL; + uses BINDINGS-SUMMARY-ALL; + uses ATO-MDB-TABLE; + uses NSR-SUMMARY-ALL; + uses MPLS-LDP-OPER-SUMMARY; + uses VRF-TABLE; + uses DISCOVERY-SUMMARY-ALL; + } + } + container nodes { + description + "Location MPLS LDP operational data"; + list node { + key "node-name"; + description + "The MPLD LDP operational data for a particular + node"; + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + uses DEFAULT-VRF; + uses FORWARDING-SUMMARY-ALL; + uses BINDINGS-SUMMARY-ALL; + uses ATO-MDB-TABLE; + uses NSR-SUMMARY-ALL; + uses MPLS-LDP-OPER-SUMMARY; + uses VRF-TABLE; + uses DISCOVERY-SUMMARY-ALL; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-cfg.yang new file mode 100644 index 000000000..196a7e56c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-cfg.yang @@ -0,0 +1,297 @@ +module Cisco-IOS-XR-mpls-lsd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-lsd-cfg"; + prefix mpls-lsd-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 mpls-lsd package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-lsd-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + mpls-lsd: MPLS LSD configuration data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-13 { + description + "Removed previously deprecated app-reg-delay disable and mplslsrmib cache timer/size configs"; + semver:module-version "2.0.0"; + } + revision 2020-11-26 { + description + "Added a new block type PFP under exisiting label blocks config"; + semver:module-version "2.0.0"; + } + revision 2019-08-20 { + description + "MPLS label block config default values added."; + semver:module-version "1.1.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Label-block { + type enumeration { + enum "cbf" { + value 3; + description + "CBF block"; + } + enum "pfp" { + value 4; + description + "PFP block"; + } + } + description + "Label block"; + } + + typedef Label-block-client-name { + type xr:Cisco-ios-xr-string { + length "1..48"; + } + description + "Label block client name"; + } + + typedef Label-range { + type enumeration { + enum "lower-upper" { + value 0; + description + "Start and end of block"; + } + enum "lower-size" { + value 1; + description + "Start and size of block"; + } + } + description + "Label range"; + } + + typedef Mpls-ip-ttl-propagate-disable { + type enumeration { + enum "all" { + value 0; + description + "Disable IP TTL propagation for all MPLS packets"; + } + enum "forward" { + value 1; + description + "Disable IP TTL propagation for only forwarded + MPLS packets"; + } + enum "local" { + value 2; + description + "Disable IP TTL propagation for only locally + generated MPLS packets"; + } + } + description + "Mpls ip ttl propagate disable"; + } + + grouping TTL-EXPIRATION-POP { + description + "Common node of ipv4, ipv6"; + leaf ttl-expiration-pop { + type uint32 { + range "1..10"; + } + description + "Number of labels to pop upon MPLS IP TTL expiry"; + } + } + + container mpls-lsd { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-lsd-cfg.yang which will + provide the compatible functionalities. MPLS LSD + configuration data"; + container ipv6 { + description + "Configure IPv6 parameters"; + uses TTL-EXPIRATION-POP; + } + container ipv4 { + description + "Configure IPv4 parameters"; + uses TTL-EXPIRATION-POP; + } + container label-databases { + description + "Table of label databases"; + list label-database { + key "label-database-id"; + description + "A label database"; + container label-range { + description + "Label range"; + leaf minvalue { + type uint32 { + range "16000..1048575"; + } + description + "Minimum label value"; + } + leaf max-value { + type uint32 { + range "16000..1048575"; + } + description + "Maximum label value"; + } + leaf min-static-value { + type uint32 { + range "0..1048575"; + } + description + "Minimum static label value"; + } + leaf max-static-value { + type uint32 { + range "0..1048575"; + } + description + "Maximum static label value"; + } + } + container label-blocks { + description + "A label blocks database"; + list label-block { + key "block-name"; + description + "Label block"; + leaf block-name { + type xr:Cisco-ios-xr-string; + description + "Label block identifier"; + } + leaf block-type { + type Label-block; + description + "Label block type"; + } + leaf range-type { + type Label-range; + default "lower-upper"; + description + "Label range type"; + } + leaf lower-bound { + type uint32 { + range "16000..1048575"; + } + default "16000"; + description + "Lower bound of block"; + } + leaf upper-bound { + when "../range-type != 'lower-size'" { + description + "../RangeType != LowerSize"; + } + type uint32 { + range "16000..1048575"; + } + default "16000"; + description + "Upper bound of block"; + } + leaf block-size { + when "../range-type != 'lower-upper'" { + description + "../RangeType != LowerUpper"; + } + type uint32 { + range "1..1032576"; + } + default "1"; + description + "Size of block"; + } + leaf client-instance-name { + type Label-block-client-name; + default "any"; + description + "Client instance name"; + } + } + } + leaf label-database-id { + type uint32 { + range "0"; + } + description + "Label database identifier"; + } + } + } + leaf ltrace-multiplier { + type uint32 { + range "2..5"; + } + description + "Multiply the MPLS LSD Ltrace buffer length"; + } + leaf mpls-entropy-label { + type empty; + description + "Enable MPLS Entropy Label"; + } + leaf mpls-ip-ttl-propagate-disable { + type Mpls-ip-ttl-propagate-disable; + description + "Disable Propagation of IP TTL onto the label + stack"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper-sub1.yang new file mode 100644 index 000000000..2de7588ae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper-sub1.yang @@ -0,0 +1,4242 @@ +submodule Cisco-IOS-XR-mpls-lsd-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-lsd-oper { + prefix Cisco-IOS-XR-mpls-lsd-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-lsd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-12 { + description + "Added Label Allocation Table Type for EVPN Label allocation + 2022-06-29 + Add sl_first_label and sl_start_index to mpls_lsd_moi_ipv4"; + semver:module-version "1.5.0"; + } + revision 2021-04-20 { + description + "Add mpls_lsd_moi_evpn as new EVPN moi"; + semver:module-version "1.4.0"; + } + revision 2020-11-26 { + description + "Extend MPLS_LSDLabelContextType to include PFP block type + 2020-11-22 + New Label Context type defined, SR_Pfx_node + 2020-10-29 + Deprecated bag mpls_lsd_first_srgb_allocated_block_size Added bag mpls_lsd_active_block_range + 2020-08-21 + Modify mpls_lsd to include label flags in mpls_lsd_fpi_lbl bag + 2020-06-13 + Modify mpls_lsd to include BIER app type and label context type + 2020-06-02 + Modify mpls_lsd_moi_pw to include platform data"; + semver:module-version "1.3.0"; + } + revision 2020-05-29 { + description + "Extended Application information to include resource complete timestamp"; + semver:module-version "1.2.0"; + } + revision 2019-10-22 { + description + "Modify mpls_lsd_lbl_ctx_recycle_lbl to take 64 bit field instead of 32 Extend mpls_lsd_moi_pop_and_lkup to include QoS fields Extend mpls_lsd_moi_ipv6 to include load metric field Extend mpls_lsd_moi_ipv4 to include recursion length fields Extend mpls_lsd_moi_ipv4 to include QoS fields Extend MPLS_LSDLabelContextType to include CBF block type Extend mpls_lsd_lbl_ctx_l3vpn_nh_set to include type field"; + semver:module-version "1.1.0"; + } + revision 2019-05-22 { + description + "Extended schema for FRRDatabase, Rewrite, LabelHistoryTable"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-01-03 { + description + "Yang evaluator: updates to schema descriptions and ranges"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mgmt-lsd-intf-state { + type enumeration { + enum "mgmt-lsd-intf-state-unknown" { + description + "unknown"; + } + enum "mgmt-lsd-intf-state-up" { + description + "up"; + } + enum "mgmt-lsd-intf-state-down" { + description + "down"; + } + } + description + "Mgmt lsd intf state"; + } + + typedef Mgmt-lsd-app-state { + type enumeration { + enum "mgmt-lsd-app-state-active" { + description + "Active"; + } + enum "mgmt-lsd-app-state-zombie" { + description + "Zombie"; + } + enum "mgmt-lsd-app-state-recover" { + description + "Recover"; + } + } + description + "Mgmt lsd app state"; + } + + typedef Mgmt-lsd-rw-id { + type enumeration { + enum "mgmt-lsd-rw-id-type-none" { + description + "None"; + } + enum "mgmt-lsd-rw-id-type-lbl-ctx" { + description + "Label Context"; + } + enum "mgmt-lsd-rw-id-type-loc-lbl" { + description + "Local Label"; + } + } + description + "Mgmt lsd rw id"; + } + + typedef Mgmt-lsd-tun { + type enumeration { + enum "mgmt-lsd-ipvpn-tunnel-type-invalid" { + value 0; + description + "mgmt lsd ipvpn tunnel type invalid"; + } + enum "mgmt-lsd-ipvpn-tunnel-type-l2tp" { + value 1; + description + "mgmt lsd ipvpn tunnel type l2tp"; + } + enum "mgmt-lsd-ipvpn-tunnel-type-mgre" { + value 2; + description + "mgmt lsd ipvpn tunnel type mgre"; + } + enum "mgmt-lsd-ipvpn-tunnel-type-vxlan-l2" { + value 3; + description + "mgmt lsd ipvpn tunnel type vxlan l2"; + } + enum "mgmt-lsd-ipvpn-tunnel-type-gre" { + value 4; + description + "mgmt lsd ipvpn tunnel type gre"; + } + enum "mgmt-lsd-ipvpn-tunnel-type-ip" { + value 5; + description + "mgmt lsd ipvpn tunnel type ip"; + } + enum "mgmt-lsd-ipvpn-tunnel-type-te" { + value 6; + description + "mgmt lsd ipvpn tunnel type te"; + } + enum "mgmt-lsd-ipvpn-tunnel-type-vxlan-l3" { + value 7; + description + "mgmt lsd ipvpn tunnel type vxlan l3"; + } + } + description + "Mgmt lsd tun"; + } + + typedef Mgmt-lsd-afi { + type enumeration { + enum "mgmt-lsd-afi-ipv4" { + description + "mgmt lsd afi ipv4"; + } + enum "mgmt-lsd-afi-ipv6" { + description + "mgmt lsd afi ipv6"; + } + } + description + "Mgmt lsd afi"; + } + + typedef Mpls-lsd-nnh { + type enumeration { + enum "none" { + description + "None - Invalid"; + } + enum "ipv4-address" { + description + "IPv4 Address"; + } + enum "interface-name" { + description + "Interface"; + } + } + description + "Mpls lsd nnh"; + } + + typedef Mgmt-lsd-moi { + type enumeration { + enum "mgmt-lsd-moi-type-pop-and-lkup-ipv4" { + description + "Pop-and-lookup IPv4"; + } + enum "mgmt-lsd-moi-type-ipv4" { + description + "IPv4"; + } + enum "mgmt-lsd-moi-type-ipv6" { + description + "IPv6"; + } + enum "mgmt-lsd-moi-type-tev4" { + description + "TE IPv4"; + } + enum "mgmt-lsd-moi-type-pw" { + description + "PW"; + } + enum "mgmt-lsd-moi-type-pop-and-lkup-ipv6" { + description + "Pop-and-lookup IPv6"; + } + enum "mgmt-lsd-moi-type-ip-sub" { + description + "IP Subscriber"; + } + enum "mgmt-lsd-moi-type-pwhe" { + description + "PW HE"; + } + enum "mgmt-lsd-moi-type-pw-list" { + description + "PW List"; + } + enum "mgmt-lsd-moi-type-ipv4-stack" { + description + "IPv4 Multi-Label"; + } + enum "mgmt-lsd-moi-type-pop-and-lkup-tp" { + description + "Pop-and-lookup TP"; + } + enum "mgmt-lsd-moi-type-ipv6-stack" { + description + "IPv6 Multi-Label"; + } + enum "mgmt-lsd-moi-type-te-head" { + description + "TE Head"; + } + enum "mgmt-lsd-moi-type-dmtc-ext-intf" { + description + "Demand Matrix Traffic-Collector"; + } + enum "mgmt-lsd-moi-type-ipv4-nnh-stack" { + description + "IPv4 Neighbor-Next-Hop"; + } + enum "mgmt-lsd-moi-type-ipv6-nnh-stack" { + description + "IPv6 Neighbor-Next-Hop"; + } + enum "mgmt-lsd-moi-type-label-range" { + description + "Label Range Opaque Message Data"; + } + enum "mgmt-lsd-moi-type-evpn" { + description + "EVPN"; + } + } + description + "Mgmt lsd moi"; + } + + typedef Mgmt-lsd-fpi { + type enumeration { + enum "mgmt-lsd-fpi-type-label" { + description + "Label"; + } + enum "mgmt-lsd-fpi-type-te" { + description + "TE"; + } + enum "mgmt-lsd-fpi-type-ipv4" { + description + "IPv4"; + } + enum "mgmt-lsd-fpi-type-ipv6" { + description + "IPv6"; + } + enum "mgmt-lsd-fpi-type-pw-list" { + description + "PW List"; + } + enum "mgmt-lsd-fpi-type-te-v2" { + description + "TE v2"; + } + enum "mgmt-lsd-fpi-type-dmtc-ext-intf" { + description + "DMTC External Interface"; + } + enum "mgmt-lsd-fpi-type-label-range" { + description + "Label Range Opaque Message Key"; + } + } + description + "Mgmt lsd fpi"; + } + + typedef Mgmt-lsd-frr-state { + type enumeration { + enum "mgmt-lsd-frr-state-partial" { + description + "Partial"; + } + enum "mgmt-lsd-frr-state-active" { + description + "Active"; + } + enum "mgmt-lsd-frr-state-ready" { + description + "Ready"; + } + enum "mgmt-lsd-frr-state-complete" { + description + "Complete"; + } + enum "mgmt-lsd-frr-state-any" { + description + "Any"; + } + enum "mgmt-lsd-frr-state-igp" { + description + "IGP"; + } + } + description + "Mgmt lsd frr state"; + } + + typedef Mgmt-lsd-lsp-role { + type enumeration { + enum "mgmt-lsd-lsp-role-head" { + description + "Head"; + } + enum "mgmt-lsd-lsp-role-mid" { + description + "Midpoint"; + } + } + description + "Mgmt lsd lsp role"; + } + + typedef Mgmt-lsd-te-binding { + type enumeration { + enum "mgmt-lsd-ident-p2p-tun-id" { + description + "mgmt lsd ident p2p tun id"; + } + enum "mgmt-lsd-ident-p2p-grp-id" { + description + "mgmt lsd ident p2p grp id"; + } + enum "mgmt-lsd-ident-p2mp-tun-id" { + description + "mgmt lsd ident p2mp tun id"; + } + enum "mgmt-lsd-ident-p2mp-grp-id" { + description + "mgmt lsd ident p2mp grp id"; + } + } + description + "Mgmt lsd te binding"; + } + + typedef Mgmt-lsd-lbl-alloc-table { + type enumeration { + enum "mgmt-lsd-label-alloc-table-type-none" { + description + "Label Allocation type None"; + } + enum "mgmt-lsd-label-alloc-table-type-gbl-ipv4" { + description + "IPv4 Label Allocation"; + } + enum "mgmt-lsd-label-alloc-table-type-gbl-ipv6" { + description + "IPv6 Label Allocation"; + } + enum "mgmt-lsd-label-alloc-table-type-gbl-vpnv4" { + description + "VPNv4 Label Allocation"; + } + enum "mgmt-lsd-label-alloc-table-type-gbl-vpnv6" { + description + "VPNv6 Label Allocation"; + } + enum "mgmt-lsd-label-alloc-table-type-srte" { + description + "SRTE Next-hop Label allocation"; + } + enum "mgmt-lsd-label-alloc-table-type-evpn" { + description + "EVPN Label allocation"; + } + } + description + "Mgmt lsd lbl alloc table"; + } + + typedef Lsd-ipv6-address { + type inet:ipv6-address; + description + "Lsd ipv6 address"; + } + + typedef Mgmt-lsd-lbl-ctx { + type enumeration { + enum "mgmt-lsd-lbl-ctx-type-none" { + description + "None"; + } + enum "mgmt-lsd-lbl-ctx-type-ipv4" { + description + "IPv4"; + } + enum "mgmt-lsd-lbl-ctx-type-ipv6" { + description + "IPv6"; + } + enum "mgmt-lsd-lbl-ctx-type-tev4" { + description + "TE IPv4"; + } + enum "mgmt-lsd-lbl-ctx-type-l3vpn-ipv4" { + description + "L3VPN IPv4"; + } + enum "mgmt-lsd-lbl-ctx-type-l3vpn-ipv6" { + description + "L3VPN IPv6"; + } + enum "mgmt-lsd-lbl-ctx-type-l3vpn-vrf" { + description + "L3VPN Per-VRF"; + } + enum "mgmt-lsd-lbl-ctx-type-l3vpn-cev4" { + description + "L3VPN IPv4 Per-CE"; + } + enum "mgmt-lsd-lbl-ctx-type-l3vpn-cev6" { + description + "L3VPN IPv6 Per-CE"; + } + enum "mgmt-lsd-lbl-ctx-type-pw" { + description + "PW"; + } + enum "mgmt-lsd-lbl-ctx-type-lbl-blk" { + description + "LBL BLK"; + } + enum "mgmt-lsd-lbl-ctx-type-ip-sub" { + description + "IP SUB"; + } + enum "mgmt-lsd-lbl-ctx-type-tev4-p2mp" { + description + "TE IPv4 P2MP"; + } + enum "mgmt-lsd-lbl-ctx-type-mldpv4" { + description + "MLDP IPv4"; + } + enum "mgmt-lsd-lbl-ctx-type-pwhe" { + description + "PW HE"; + } + enum "mgmt-lsd-lbl-ctx-type-tp" { + description + "MPLS TP"; + } + enum "mgmt-lsd-lbl-ctx-type-gre" { + description + "GRE"; + } + enum "mgmt-lsd-lbl-ctx-type-evpn" { + description + "EVPN"; + } + enum "mgmt-lsd-lbl-ctx-type-blb-ipv4" { + description + "BLB IPv4"; + } + enum "mgmt-lsd-lbl-ctx-type-blb-ipv6" { + description + "BLB IPv6"; + } + enum "mgmt-lsd-lbl-ctx-type-pim-i-pmsi" { + description + "PIM I-PMSI"; + } + enum "mgmt-lsd-lbl-ctx-type-pim-s-pmsi" { + description + "PIM S-PMSI"; + } + enum "mgmt-lsd-lbl-ctx-type-l3vpn-nh-set" { + description + "L3VPN NH SET"; + } + enum "mgmt-lsd-lbl-ctx-type-sr-pfx-seg" { + description + "SR Prefix Segment"; + } + enum "mgmt-lsd-lbl-ctx-type-sr-adj-seg-ipv4" { + description + "SR Adj Segment IPv4"; + } + enum "mgmt-lsd-lbl-ctx-type-sr-adj-seg-ipv6" { + description + "SR Adj Segment IPv6"; + } + enum "mgmt-lsd-lbl-ctx-type-lbl-blk-srgb" { + description + "LBL BLK SRGB"; + } + enum "mgmt-lsd-lbl-ctx-type-te-binding" { + description + "TE Binding"; + } + enum "mgmt-lsd-lbl-ctx-type-gre-ipv6" { + description + "GRE IPV6"; + } + enum "mgmt-lsd-lbl-ctx-type-any" { + description + "Any"; + } + enum "mgmt-lsd-lbl-ctx-type-lbl-blk-srlb" { + description + "LBL BLK SRLB"; + } + enum "mgmt-lsd-lbl-ctx-type-recycle-lbl" { + description + "Recycle Label"; + } + enum "mgmt-lsd-lbl-ctx-type-lbl-blk-cbf" { + description + "Class Based Forwarding Label Block"; + } + enum "mgmt-lsd-lbl-ctx-type-srte-nh-label-set" { + description + "SRTE NH Label Set"; + } + enum "mgmt-lsd-lbl-ctx-type-lbl-blk-bier" { + description + "BIER Label Block"; + } + enum "mgmt-lsd-lbl-ctx-type-sr-pfx-node" { + description + "SR Prefix Node"; + } + enum "mgmt-lsd-lbl-ctx-type-lbl-blk-pfp" { + description + "Per Flow Policy Label Block"; + } + enum "mgmt-lsd-lbl-ctx-type-sfi" { + description + "SFI Label"; + } + } + description + "Mgmt lsd lbl ctx"; + } + + typedef Mgmt-lsd-app-rsrc-state { + type enumeration { + enum "mgmt-lsd-app-rsrc-state-active" { + description + "Active"; + } + enum "mgmt-lsd-app-rsrc-state-pnd" { + description + "Pending"; + } + enum "mgmt-lsd-app-rsrc-state-pnd-svr" { + description + "Pending Server"; + } + } + description + "Mgmt lsd app rsrc state"; + } + + typedef Mgmt-lsd-app { + type enumeration { + enum "mgmt-lsd-app-type-none" { + description + "None"; + } + enum "mgmt-lsd-app-type-int" { + description + "LSD"; + } + enum "mgmt-lsd-app-type-test" { + description + "Test"; + } + enum "mgmt-lsd-app-type-static" { + description + "Static"; + } + enum "mgmt-lsd-app-type-ldp" { + description + "LDP"; + } + enum "mgmt-lsd-app-type-te" { + description + "TE Control"; + } + enum "mgmt-lsd-app-type-app-controller" { + description + "App Controller"; + } + enum "mgmt-lsd-app-type-bgp-ipv4" { + description + "BGP v4"; + } + enum "mgmt-lsd-app-type-bgp-vpn-ipv4" { + description + "BGP VPNv4"; + } + enum "mgmt-lsd-app-type-l2vpn" { + description + "L2VPN"; + } + enum "mgmt-lsd-app-type-bgp-spkr" { + description + "BGP Spkr"; + } + enum "mgmt-lsd-app-type-bfd" { + description + "BFD"; + } + enum "mgmt-lsd-app-type-pim" { + description + "PIM"; + } + enum "mgmt-lsd-app-type-v2-lsd" { + description + "V2 LSD"; + } + enum "mgmt-lsd-app-type-pim6" { + description + "PIM6"; + } + enum "mgmt-lsd-app-type-isis" { + description + "ISIS"; + } + enum "mgmt-lsd-app-type-ospf" { + description + "OSPF"; + } + enum "mgmt-lsd-app-type-cgn" { + description + "CGN"; + } + enum "mgmt-lsd-app-type-dmtc" { + description + "Traffic Collector"; + } + enum "mgmt-lsd-app-type-cofo-sync-lib" { + description + "COFO Sync Lib"; + } + enum "mgmt-lsd-app-type-bier" { + description + "BIER"; + } + enum "mgmt-lsd-app-type-any" { + description + "Any"; + } + } + description + "Mgmt lsd app"; + } + + typedef Mgmt-lsd-client { + type enumeration { + enum "mgmt-lsd-client-type-app" { + description + "Application"; + } + enum "mgmt-lsd-client-type-ba" { + description + "BCDL Agent"; + } + } + description + "Mgmt lsd client"; + } + + grouping MPLS-LSD-LBL-HIST { + description + "LSD label history information"; + leaf label { + type uint32; + description + "Label"; + } + leaf application-type { + type Mgmt-lsd-app; + description + "Application type"; + } + leaf application-role-primary { + type int32; + description + "Primary/Backup role"; + } + leaf hist-code { + type uint32; + description + "Code for event that happened to label"; + } + leaf label-code { + type uint32; + description + "Code for ctx type or error code"; + } + leaf time-stamp { + type uint64; + description + "Timestamp"; + } + } + + grouping MPLS-LSD-INTF { + description + "LSD interface information"; + leaf interface { + type xr:Interface-name; + description + "LSD Interface name"; + } + leaf interface-state { + type Mgmt-lsd-intf-state; + description + "Interface state"; + } + list application-owner { + description + "The applications that own the interface"; + uses MPLS-LSD-APP-RSRC-STATE; + } + } + + grouping MPLS-LSD-LBL-RANGE { + description + "Label range"; + leaf min-dynamic-label-value { + type uint32; + description + "Minimum dynamic label value"; + } + leaf max-dynamic-label-value { + type uint32; + description + "Maximum dynamic label value"; + } + leaf min-static-label-value { + type uint32; + description + "Minimum static label value"; + } + leaf max-static-label-value { + type uint32; + description + "Maximum static label value"; + } + } + + grouping MPLS-LSD-APP-CONNECTED-STATS { + description + "LSD application connection statistics"; + leaf rt-set-msg-count { + type uint32; + description + "RT set count"; + } + leaf operation-msg-count { + type uint32; + description + "Operation count"; + } + leaf oor-label-count { + type uint32; + description + "Label OOR count"; + } + leaf error-msg-count { + type uint32; + description + "Error count"; + } + } + + grouping MPLS-LSD-APP-STATS { + description + "LSD application statistics"; + container connected { + description + "Connected statistics"; + uses MPLS-LSD-APP-CONNECTED-STATS; + } + leaf interface-enable { + type uint32; + description + "Number of interfaces enabled"; + } + leaf interface-enable-pending { + type uint32; + description + "Number of interfaces with enable pending"; + } + leaf connect-count { + type uint32; + description + "Number of connections made"; + } + list label-context-count { + max-elements "37"; + description + "Active labels contexts count"; + leaf entry { + type uint32; + description + "Active labels contexts count"; + } + } + list label-context-pending-count { + max-elements "37"; + description + "Unclaimed (pending) labels contexts count"; + leaf entry { + type uint32; + description + "Unclaimed (pending) labels contexts count"; + } + } + list label-context-notification-count { + max-elements "37"; + description + "Number of notifications sent to application, per + + ctx type"; + leaf entry { + type uint32; + description + "Number of notifications sent to application, per + + ctx type"; + } + } + } + + grouping MPLS-LSD-APP { + description + "LSD application information"; + container application-statistics { + description + "Application Statistics"; + uses MPLS-LSD-APP-STATS; + } + leaf application-name-xr { + type string; + description + "Application name"; + } + leaf application-type { + type Mgmt-lsd-app; + description + "Application type"; + } + leaf application-role-primary { + type int32; + description + "Primary/Backup role"; + } + leaf application-instance { + type string; + description + "Application instance name"; + } + leaf app-reg-time { + type uint64; + description + "Application registration timestamp"; + } + leaf app-disconnect-time { + type uint64; + description + "Application disconnect timestamp"; + } + leaf app-flow-controlled { + type int32; + description + "Application flow control status"; + } + leaf flow-ctrl-time { + type uint64; + description + "Flow Ctrl timestamp"; + } + leaf flow-ctrl-clr-time { + type uint64; + description + "Flow Ctrl Clr timestamp"; + } + leaf go-act-ts { + type uint64; + description + "Application go active timestamp"; + } + leaf eod-received-ts { + type uint64; + description + "Application resource complete timestamp"; + } + leaf application-state { + type Mgmt-lsd-app-state; + description + "Application state"; + } + leaf recovery-time-remaining-seconds { + type uint32; + units "second"; + description + "Recovery time [secs] remaining if client is + timing out"; + } + leaf recovery-time-elapsed-seconds { + type uint32; + units "second"; + description + "Recovery time [secs] elapsed if client is timing + out"; + } + leaf recovery-time-register-seconds { + type uint32; + units "second"; + description + "Recovery time [secs] specified at registration + or set explicitly"; + } + leaf node-id { + type xr:Node-id; + description + "Node ID where application is/was running"; + } + } + + grouping MPLS-LSD-RW-IP-PATH-SUM { + description + "Rewrite's IP paths summary counts"; + leaf total-paths { + type uint32; + description + "Total number of IP paths"; + } + leaf total-backup-paths { + type uint32; + description + "Total number of non-primary backup paths"; + } + leaf total-remote-backup-paths { + type uint32; + description + "Total number of remote backup paths"; + } + leaf total-protected-paths { + type uint32; + description + "Total number of protected paths"; + } + leaf total-pop-lkup-paths { + type uint32; + description + "Total number of Pop-and-Lookup paths"; + } + } + + grouping MPLS-LSD-RW-SUM { + description + "Rewrite summary"; + container ipv4-paths { + description + "Count for IPv4 paths"; + uses MPLS-LSD-RW-IP-PATH-SUM; + } + container ipv6-paths { + description + "Count for IPv6 paths"; + uses MPLS-LSD-RW-IP-PATH-SUM; + } + leaf num-label-fpi { + type uint32; + description + "Number of label FPI"; + } + leaf num-tefpi { + type uint32; + description + "Number of TE FPI"; + } + leaf num-ipv4fpi { + type uint32; + description + "Number of IPv4 FPI"; + } + leaf num-ipv6fpi { + type uint32; + description + "Number of IPv6 FPI"; + } + leaf num-pw-list-tefpi { + type uint32; + description + "Number of PW List FPI"; + } + leaf num-dmtctefpi { + type uint32; + description + "Number of DMTC FPI"; + } + leaf num-label-range { + type uint32; + description + "Number of Label Range FPI"; + } + leaf num-rewrite { + type uint32; + description + "Number of rewrites"; + } + leaf total-forward-update { + type uint32; + description + "Total number of forward updates"; + } + leaf total-forwad-update-message { + type uint32; + description + "Total number of forward update messages"; + } + leaf total-paths { + type uint32; + description + "Total number of paths"; + } + leaf total-t-ev4-paths { + type uint32; + description + "Total number of Traffic Eng IPv4 paths"; + } + leaf total-te-head-paths { + type uint32; + description + "Total number of Traffic Eng Head paths"; + } + leaf total-pw-paths { + type uint32; + description + "Total number of Pseudo-wire paths"; + } + leaf total-ip-sub-paths { + type uint32; + description + "Total number of IP Subscriber paths"; + } + leaf total-ipv4rpf-neighbors { + type uint32; + description + "Total number of IPv4 RPF Neighbors"; + } + leaf total-ipv6rpf-neighbors { + type uint32; + description + "Total number of IPv6 RPF Neighbors"; + } + leaf num-rewrite-rpf-neighbors { + type uint32; + description + "Number of rewrites with RPF Neighbors"; + } + leaf total-dmtc-intf { + type uint32; + description + "Total number of DMTC External Interfaces"; + } + leaf total-label-range { + type uint32; + description + "Total number of Label Ranges"; + } + leaf total-evpn-paths { + type uint32; + description + "Total number of EVPN paths"; + } + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + } + + grouping MPLS-LSD-RW-ID-LOC-LBL { + description + "Rewrite ID local label"; + list label-data { + description + "label data"; + leaf entry { + type uint32; + description + "label data"; + } + } + } + + grouping MPLS-LSD-RW-ID-GEN { + description + "MPLS LSD RW ID GEN"; + container label-context { + when "../rewrite-id-type = 'mgmt-lsd-rw-id-type-lbl-ctx'" { + description + "../RewriteIDType = + 'MGMT_LSD_RW_ID_TYPE_LBL_CTX'"; + } + description + "Label context"; + uses MPLS-LSD-LBL-CTX-KEY; + } + container local-label-rewrite { + when "../rewrite-id-type = 'mgmt-lsd-rw-id-type-loc-lbl'" { + description + "../RewriteIDType = + 'MGMT_LSD_RW_ID_TYPE_LOC_LBL'"; + } + description + "Local label rewrite information"; + uses MPLS-LSD-RW-ID-LOC-LBL; + } + leaf rewrite-id-type { + type Mgmt-lsd-rw-id; + description + "RewriteIDType"; + } + } + + grouping MPLS-LSD-RW-ID { + description + "Rewrite ID"; + container rewrite-id { + description + "Rewrite ID"; + uses MPLS-LSD-RW-ID-GEN; + } + } + + grouping MPLS-LSD-MOI-EVPN { + description + "EVPN MOI information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing Interface name"; + } + leaf afi { + type Mgmt-lsd-afi; + description + "Address Family Identifier"; + } + leaf ipv4-next-hop { + type inet:ipv4-address; + description + "IPv4 nexthop"; + } + leaf ipv6-next-hop { + type inet:ipv6-address; + description + "IPv6 nexthop"; + } + leaf out-binding-sid { + type uint32; + description + "Outgoing BindingSID"; + } + leaf path-id { + type uint16; + description + "Routing path id"; + } + leaf backup-path-id { + type uint16; + description + "Routing path backup id"; + } + leaf out-label { + type uint32; + description + "Outgoing Label"; + } + leaf out-label-name { + type string; + description + "Outgoing label name"; + } + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf tunnel-type { + type Mgmt-lsd-tun; + description + "Tunnel Type"; + } + } + + grouping MPLS-LSD-MOI-LABEL-RANGE { + description + "Label Range MOI information"; + leaf start-label-active { + type uint32; + description + "Active Label Range Start"; + } + leaf end-label-active { + type uint32; + description + "Active Label Range End"; + } + } + + grouping MPLS-LSD-MOI-IPV6-NNH-STACK { + description + "IPv6 NNH STACK MOI information"; + container ipv6-stack { + description + "IPv6 stack"; + uses MPLS-LSD-MOI-IPV6-STACK; + } + list neighbor-next-hop { + description + "List of Neighbor Next Hops"; + uses MPLS-LSD-MOI-NNH; + } + } + + grouping MPLS-LSD-MOI-NNH { + description + "IPV4/IPV6 NNH installed in LSD"; + leaf nnh-type { + type Mpls-lsd-nnh; + description + "nnh type"; + } + leaf address { + when "../nnh-type = 'ipv4-address'" { + description + "../nnh_type = 'IPv4Address'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf interface-name { + when "../nnh-type = 'interface-name'" { + description + "../nnh_type = 'InterfaceName'"; + } + type xr:Interface-name; + description + "Interface name"; + } + } + + grouping MPLS-LSD-MOI-IPV4-NNH-STACK { + description + "IPv4 NNH STACK MOI information"; + container ipv4-stack { + description + "IPv4 stack"; + uses MPLS-LSD-MOI-IPV4-STACK; + } + list neighbor-next-hop { + description + "List of Neighbor Next Hops"; + uses MPLS-LSD-MOI-NNH; + } + } + + grouping MPLS-LSD-MOI-DMTC-EXT-INTF { + description + "Demand Matrix Traffic-Collector MOI information"; + leaf dmtc-ext-ifh { + type xr:Interface-name; + description + "DMTC External Interface"; + } + } + + grouping MPLS-LSD-MOI-TE-HEAD { + description + "TE Head MOI"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf tunnel-local-label { + type uint32; + description + "Tunnel local label"; + } + leaf tunnel-local-label-str { + type string; + description + "Tunnel local label stringified"; + } + leaf tunnel-fwd-class { + type uint8; + description + "Tunnel forwarding class"; + } + leaf tunnel-load-metric { + type uint32; + description + "Tunnel Load metric"; + } + leaf flags-decode { + type string; + description + "Flags decoded string"; + } + } + + grouping MPLS-LSD-IPV6-LARGE-LABEL-STACK { + description + "IPv6 Split stack"; + container recycle-nexthop { + description + "Recycle Nexthop"; + uses MPLS-LSD-MOI-IPV6; + } + container recycle-inner-stack { + description + "Recycle inner stack (the portion of the stack + moved into the recycle rewrite after split)"; + uses MPLS-LSD-MOI-IPV6-INNER-STACK; + } + container modified-inner-stack { + description + "Modified inner stack (the portion of the stack + that remains after stack split)"; + uses MPLS-LSD-MOI-IPV6-INNER-STACK; + } + leaf recycle-label { + type uint32; + description + "Recycle Label"; + } + } + + grouping MPLS-LSD-MOI-IPV6-INNER-STACK { + description + "IPv6 Inner stack for a Multi-Label MOI + information"; + leaf num-nexthops { + type uint8; + description + "Number of remote nexthop addresses"; + } + leaf num-lbls { + type uint8; + description + "Depth of inner label stack"; + } + leaf flags { + type uint16; + description + "Inner stack flags"; + } + list nexthop { + max-elements "2"; + description + "Remote nexthop addresses"; + leaf entry { + type Lsd-ipv6-address; + description + "Remote nexthop addresses"; + } + } + list label { + max-elements "12"; + description + "Info related to outgoing labels"; + uses MPLS-LSD-MOI-OUT-LABEL-INFO; + } + } + + grouping MPLS-LSD-MOI-IPV6-STACK { + description + "IPv6 Multi-Label MOI information"; + container nexthop { + description + "Nexthop"; + uses MPLS-LSD-MOI-IPV6; + } + container inner-stack { + description + "Inner stack"; + uses MPLS-LSD-MOI-IPV6-INNER-STACK; + } + container split-stack-info { + description + "Split Stack Info"; + uses MPLS-LSD-IPV6-LARGE-LABEL-STACK; + } + leaf recycle-present { + type int32; + description + "Flag to indicate if a recycle label is present"; + } + } + + grouping MPLS-LSD-IPV4-LARGE-LABEL-STACK { + description + "IPv4 Split stack"; + container recycle-nexthop { + description + "Recycle Nexthop"; + uses MPLS-LSD-MOI-IPV4; + } + container recycle-inner-stack { + description + "Recycle inner stack (the portion of the stack + moved into the recycle rewrite after split)"; + uses MPLS-LSD-MOI-IPV4-INNER-STACK; + } + container modified-inner-stack { + description + "Modified inner stack (the portion of the stack + that remains after stack split)"; + uses MPLS-LSD-MOI-IPV4-INNER-STACK; + } + leaf recycle-label { + type uint32; + description + "Recycle Label"; + } + } + + grouping MPLS-LSD-MOI-OUT-LABEL-INFO { + description + "Generic info for an outgoing/remote label"; + leaf outgoing-label { + type uint32; + description + "Remote Label"; + } + leaf outgoing-label-str { + type string; + description + "Remote Label string"; + } + } + + grouping MPLS-LSD-MOI-IPV4-INNER-STACK { + description + "IPv4 Inner stack for a Multi-Label MOI + information"; + leaf num-nexthops { + type uint8; + description + "Number of remote nexthop addresses"; + } + leaf num-lbls { + type uint8; + description + "Depth of inner label stack"; + } + leaf flags { + type uint16; + description + "Inner stack flags"; + } + list nexthop { + max-elements "2"; + description + "Remote nexthop addresses"; + leaf entry { + type inet:ipv4-address; + description + "Remote nexthop addresses"; + } + } + list label { + max-elements "12"; + description + "Info related to outgoing labels"; + uses MPLS-LSD-MOI-OUT-LABEL-INFO; + } + } + + grouping MPLS-LSD-MOI-IPV4-STACK { + description + "IPv4 Multi-Label MOI information"; + container nexthop { + description + "Nexthop"; + uses MPLS-LSD-MOI-IPV4; + } + container inner-stack { + description + "Inner stack"; + uses MPLS-LSD-MOI-IPV4-INNER-STACK; + } + container split-stack-info { + description + "Split Stack Info"; + uses MPLS-LSD-IPV4-LARGE-LABEL-STACK; + } + leaf owner-application-type { + type Mgmt-lsd-app; + description + "Owner application type"; + } + leaf recycle-present { + type int32; + description + "Flag to indicate if a recycle label is present"; + } + } + + grouping MPLS-LSD-MOI-PW-LIST { + description + "Pseudo-wire Head-end List MOI information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf l3-interface { + type xr:Interface-name; + description + "Pseudo-wire Layer 3 interface"; + } + leaf l2-interface { + type xr:Interface-name; + description + "Pseudo-wire Layer 2 interface"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + } + + grouping MPLS-LSD-MOI-PWHE { + description + "Pseudo-wire Head-end MOI information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing interface name"; + } + leaf out-label { + type uint32; + description + "Outgoing Label"; + } + leaf ipv4-next-hop { + type inet:ipv4-address; + description + "IPv4 nexthop"; + } + leaf control-word { + type int32; + description + "Is control word present"; + } + leaf imposition { + type int32; + description + "Is PWHE IMposition"; + } + leaf vctype { + type uint8; + description + "Virtual Circuit Type"; + } + leaf pw-list-id { + type uint16; + description + "Pseudo-wire List Identifier"; + } + leaf pwhe-interface { + type xr:Interface-name; + description + "Pseudo-wire Head-end interface"; + } + leaf out-binding-sid { + type uint32; + description + "Outgoing BindingSID"; + } + } + + grouping MPLS-LSD-MOI-IP-SUB { + description + "IP sub MOI"; + leaf table-id { + type uint32; + description + "VRF table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing interface"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + } + + grouping MPLS-LSD-MOI-PW { + description + "Pseudo-wire MOI information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing interface name"; + } + leaf out-label { + type uint32; + description + "Outgoing Label"; + } + leaf cross-connect-id { + type uint32; + description + "Cross-connect ID"; + } + leaf pseuodo-wire-connect-id { + type uint32; + description + "PseudoWire Cross-connect ID"; + } + leaf ipv4-next-hop { + type inet:ipv4-address; + description + "IPv4 nexthop"; + } + leaf bridge-id { + type uint32; + description + "Bridge ID"; + } + leaf split-horizon-id { + type uint32; + description + "Split horizon group ID"; + } + leaf sub-interface { + type xr:Interface-name; + description + "Sub Interface"; + } + } + + grouping MPLS-LSD-MOI-TEV4 { + description + "TEv4 MOI information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing interface name"; + } + leaf out-label { + type uint32; + description + "Outgoing label"; + } + leaf out-label-name { + type string; + description + "Outgoing label name"; + } + leaf ipv4-next-hop { + type inet:ipv4-address; + description + "IPv4 nexthop"; + } + leaf backup-interface { + type xr:Interface-name; + description + "Backup interface name"; + } + leaf backup-ipv4-next-hop { + type inet:ipv4-address; + description + "Backup IPv4 nexthop"; + } + leaf merge-point-label { + type uint32; + description + "Merge point label"; + } + leaf backup-local-label { + type uint32; + description + "Backup local label"; + } + leaf tunnel-interface { + type xr:Interface-name; + description + "Tunnel interface name"; + } + leaf tunnel-weight { + type uint32; + description + "Tunnel weight"; + } + leaf data-out-parent-interface { + type xr:Interface-name; + description + "Outgoing data parent interface name"; + } + leaf tunnel-class { + type uint32; + description + "Tunnel class"; + } + leaf ipv4-next-next-hop { + type inet:ipv4-address; + description + "IPv4 next nexthop"; + } + } + + grouping MPLS-LSD-MOI-IPV6 { + description + "IPv6 MOI information"; + container path-qos-info { + description + "Path QoS Information"; + uses MPLS-LSD-IP-MOI-PATH-QOS; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing interface name"; + } + leaf out-label { + type uint32; + description + "Outgoing label"; + } + leaf out-label-name { + type string; + description + "Outgoing label name"; + } + leaf ipv6-next-hop { + type Lsd-ipv6-address; + description + "IPv6 nexthop"; + } + leaf path-id { + type uint16; + description + "Routing path id"; + } + leaf is-path-qos-set { + type int32; + description + "Flag to indicate if path QoS is set"; + } + leaf backup-path-id { + type uint16; + description + "Routing path backup id"; + } + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf tunnel-type { + type uint16; + description + "Tunnel Type"; + } + leaf next-hop-id { + type uint32; + description + "Next hop ID"; + } + leaf out-interface-parent { + type xr:Interface-name; + description + "Name of outgoing interface's parent"; + } + leaf minimum-recurse-length { + type uint8; + description + "Minimum netmask length of recursive resolving + route"; + } + leaf load-metric { + type uint32; + description + "Routing path's load metric"; + } + leaf out-binding-sid { + type uint32; + description + "Outgoing BindingSID"; + } + } + + grouping MPLS-LSD-MOI-IPV4 { + description + "IPv4 MOI information"; + container path-qos-info { + description + "Path QoS Information"; + uses MPLS-LSD-IP-MOI-PATH-QOS; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf out-interface { + type xr:Interface-name; + description + "Outgoing Interface name"; + } + leaf out-interface-parent { + type xr:Interface-name; + description + "Outgoing Interface's parent name"; + } + leaf ipv4-next-hop { + type inet:ipv4-address; + description + "IPv4 nexthop"; + } + leaf out-binding-sid { + type uint32; + description + "Outgoing BindingSID"; + } + leaf path-id { + type uint16; + description + "Routing path id"; + } + leaf is-path-qos-set { + type int32; + description + "Flag to indicate if path QoS is set"; + } + leaf backup-path-id { + type uint16; + description + "Routing path backup id"; + } + leaf load-metric { + type uint32; + description + "Routing path's load metric"; + } + leaf out-label { + type uint32; + description + "Outgoing Label"; + } + leaf out-label-name { + type string; + description + "Outgoing label name"; + } + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf tunnel-type { + type uint16; + description + "Tunnel Type"; + } + leaf next-hop-id { + type uint32; + description + "Next hop ID"; + } + leaf local-label { + type uint32; + description + "TE backup path local label"; + } + leaf minimum-recurse-length { + type uint8; + description + "Minimum netmask length of recursive resolving + route"; + } + } + + grouping MPLS-LSD-MOI-POP-AND-LKUP-TP { + description + "Pop and lookup MOI for TP information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf out-label { + type uint32; + description + "Outgoing Label"; + } + } + + grouping MPLS-LSD-IP-MOI-PATH-QOS { + description + "IP MOI path QoS information"; + leaf type { + type string; + description + "Path QoS Type"; + } + leaf value { + type uint8; + description + "Path Qos Value"; + } + leaf is-default { + type int32; + description + "Is path's qos value equal to the default value"; + } + } + + grouping MPLS-LSD-MOI-POP-AND-LKUP { + description + "Pop and lookup MOI information"; + container path-qos-info { + description + "Path QoS Information"; + uses MPLS-LSD-IP-MOI-PATH-QOS; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf table-name { + type string; + description + "VRF table name"; + } + leaf path-flags-decode { + type string; + description + "Path flag decoded string"; + } + leaf is-path-qos-set { + type int32; + description + "Flag to indicate if path QoS is set"; + } + } + + grouping MPLS-LSD-MOI-GEN { + description + "MPLS LSD MOI GEN"; + container pop-and-lookup-ipv4 { + when "../moi-type = 'mgmt-lsd-moi-type-pop-and-lkup-ipv4'" { + description + "../MoiType = + 'MGMT_LSD_MOI_TYPE_POP_AND_LKUP_IPV4'"; + } + description + "Pop-and-lookup IPv4 moi"; + uses MPLS-LSD-MOI-POP-AND-LKUP; + } + container pop-and-lookup-tp { + when "../moi-type = 'mgmt-lsd-moi-type-pop-and-lkup-tp'" { + description + "../MoiType = + 'MGMT_LSD_MOI_TYPE_POP_AND_LKUP_TP'"; + } + description + "Pop-and-lookup TP moi"; + uses MPLS-LSD-MOI-POP-AND-LKUP-TP; + } + container pop-and-lookup-ipv6 { + when "../moi-type = 'mgmt-lsd-moi-type-pop-and-lkup-ipv6'" { + description + "../MoiType = + 'MGMT_LSD_MOI_TYPE_POP_AND_LKUP_IPV6'"; + } + description + "Pop-and-lookup IPv6 moi"; + uses MPLS-LSD-MOI-POP-AND-LKUP; + } + container ipv4-data { + when "../moi-type = 'mgmt-lsd-moi-type-ipv4'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_IPV4'"; + } + description + "IPV4 moi"; + uses MPLS-LSD-MOI-IPV4; + } + container ipv6-data { + when "../moi-type = 'mgmt-lsd-moi-type-ipv6'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_IPV6'"; + } + description + "IPv6 moi"; + uses MPLS-LSD-MOI-IPV6; + } + container tev4-data { + when "../moi-type = 'mgmt-lsd-moi-type-tev4'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_TEV4'"; + } + description + "TEV4 moi"; + uses MPLS-LSD-MOI-TEV4; + } + container pseudowire-data { + when "../moi-type = 'mgmt-lsd-moi-type-pw'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_PW'"; + } + description + "Pseudo-wire moi"; + uses MPLS-LSD-MOI-PW; + } + container ip-sub-data { + when "../moi-type = 'mgmt-lsd-moi-type-ip-sub'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_IP_SUB'"; + } + description + "IP Subscriber moi"; + uses MPLS-LSD-MOI-IP-SUB; + } + container pseudowire-head-end-data { + when "../moi-type = 'mgmt-lsd-moi-type-pwhe'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_PWHE'"; + } + description + "Pseudo-wire head end moi"; + uses MPLS-LSD-MOI-PWHE; + } + container pw-list-data { + when "../moi-type = 'mgmt-lsd-moi-type-pw-list'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_PW_LIST'"; + } + description + "Pseudo-wire list moi"; + uses MPLS-LSD-MOI-PW-LIST; + } + container stackv4-data { + when "../moi-type = 'mgmt-lsd-moi-type-ipv4-stack'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_IPV4_STACK'"; + } + description + "IPv4 stack moi"; + uses MPLS-LSD-MOI-IPV4-STACK; + } + container stackv6-data { + when "../moi-type = 'mgmt-lsd-moi-type-ipv6-stack'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_IPV6_STACK'"; + } + description + "IPv6 stack moi"; + uses MPLS-LSD-MOI-IPV6-STACK; + } + container te-head-data { + when "../moi-type = 'mgmt-lsd-moi-type-te-head'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_TE_HEAD'"; + } + description + "Traffic Engineering head moi"; + uses MPLS-LSD-MOI-TE-HEAD; + } + container dmtc-data { + when "../moi-type = 'mgmt-lsd-moi-type-dmtc-ext-intf'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_DMTC_EXT_INTF'"; + } + description + "Demand Matrix Traffic-Collector (DMTC) moi"; + uses MPLS-LSD-MOI-DMTC-EXT-INTF; + } + container nnh-stackv4-data { + when "../moi-type = 'mgmt-lsd-moi-type-ipv4-nnh-stack'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_IPV4_NNH_STACK'"; + } + description + "IPv4 Next-Next-Hop Stack moi"; + uses MPLS-LSD-MOI-IPV4-NNH-STACK; + } + container nnh-stackv6-data { + when "../moi-type = 'mgmt-lsd-moi-type-ipv6-nnh-stack'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_IPV6_NNH_STACK'"; + } + description + "IPv6 Next-Next-Hop Stack moi"; + uses MPLS-LSD-MOI-IPV6-NNH-STACK; + } + container label-range { + when "../moi-type = 'mgmt-lsd-moi-type-label-range'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_LABEL_RANGE'"; + } + description + "Label range moi"; + uses MPLS-LSD-MOI-LABEL-RANGE; + } + container evpn-data { + when "../moi-type = 'mgmt-lsd-moi-type-evpn'" { + description + "../MoiType = 'MGMT_LSD_MOI_TYPE_EVPN'"; + } + description + "EVPN moi"; + uses MPLS-LSD-MOI-EVPN; + } + leaf moi-type { + type Mgmt-lsd-moi; + description + "MoiType"; + } + } + + grouping MPLS-LSD-MOI { + description + "LSD MOI"; + container moi { + description + "Moi"; + uses MPLS-LSD-MOI-GEN; + } + leaf mpls-feid { + type uint64; + description + "FIB per-path mpls encap id"; + } + } + + grouping MPLS-LSD-MOI-ARR { + description + "LSD MOI array"; + container application-resource { + description + "Application state"; + uses MPLS-LSD-APP-RSRC-STATE; + } + list moi-array { + description + "moi array"; + uses MPLS-LSD-MOI; + } + } + + grouping MPLS-LSD-V6-RPF { + description + "LSD V6 RPF"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf v6-rpf-neighbor { + type Lsd-ipv6-address; + description + "V6 RPF Neighbor"; + } + } + + grouping MPLS-LSD-V4-RPF { + description + "LSD V4 RPF"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf v4-rpf-neighbor { + type inet:ipv4-address; + description + "V4 RPF Neighbor"; + } + } + + grouping MPLS-LSD-FPI-LABEL-RANGE { + description + "Label range FPI information"; + leaf type { + type uint8; + description + "Label Range Type"; + } + leaf index { + type uint8; + description + "Label Ranged Index"; + } + } + + grouping MPLS-LSD-FPI-DMTC-EXT-INTF { + description + "Demand Matrix Traffic-Collector (DMTC) Ext Intf + FPI information"; + leaf dmtc-ext-ifh { + type xr:Interface-name; + description + "DMTC External Interface"; + } + } + + grouping MPLS-LSD-FPI-PW-LIST { + description + "Pseudo-wire list FPI information"; + leaf pwhe-list-id { + type uint16; + description + "Pseudowire List Identifier"; + } + } + + grouping MPLS-LSD-FPI-IPV6 { + description + "IPv6 FPI information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf prefix { + type Lsd-ipv6-address; + description + "IPv6 route prefix for the FPI"; + } + leaf router-flags { + type uint32; + description + "Route flags"; + } + leaf prefix-len { + type uint8; + description + "Length of the subnet prefix"; + } + leaf version { + type uint32; + description + "FPI Version"; + } + } + + grouping MPLS-LSD-FPI-IPV4 { + description + "IPv4 FPI information"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf prefix { + type inet:ipv4-address; + description + "IPv4 route prefix for the FPI"; + } + leaf prefix-length { + type uint8; + description + "Length of the subnet prefix"; + } + leaf version { + type uint32; + description + "FPI version"; + } + leaf sr-local-label { + type uint32; + description + "SR related Local label"; + } + } + + grouping MPLS-LSD-FPI-TE { + description + "TE FPI information"; + leaf tunnel-interface { + type xr:Interface-name; + description + "Tunnel interface name"; + } + leaf local-label { + type uint32; + description + "Local label"; + } + } + + grouping MPLS-LSD-FPI-LBL { + description + "Label FPI information"; + leaf label { + type uint32; + description + "Label value"; + } + leaf security-id { + type uint32; + description + "Security ID"; + } + leaf elc { + type int32; + description + "ELC"; + } + leaf label-flags { + type uint32; + description + "Label Flags"; + } + } + + grouping MPLS-LSD-FPI-GEN { + description + "MPLS LSD FPI GEN"; + container label-data { + when "../fpi-type = 'mgmt-lsd-fpi-type-label'" { + description + "../FPIType = 'MGMT_LSD_FPI_TYPE_LABEL'"; + } + description + "Label FPI"; + uses MPLS-LSD-FPI-LBL; + } + container te-data { + when "../fpi-type = 'mgmt-lsd-fpi-type-te'" { + description + "../FPIType = 'MGMT_LSD_FPI_TYPE_TE'"; + } + description + "TE FPI"; + uses MPLS-LSD-FPI-TE; + } + container ipv4-data { + when "../fpi-type = 'mgmt-lsd-fpi-type-ipv4'" { + description + "../FPIType = 'MGMT_LSD_FPI_TYPE_IPV4'"; + } + description + "IPv4 FPI"; + uses MPLS-LSD-FPI-IPV4; + } + container ipv6-data { + when "../fpi-type = 'mgmt-lsd-fpi-type-ipv6'" { + description + "../FPIType = 'MGMT_LSD_FPI_TYPE_IPV6'"; + } + description + "IPv6 FPI"; + uses MPLS-LSD-FPI-IPV6; + } + container pw-list-data { + when "../fpi-type = 'mgmt-lsd-fpi-type-pw-list'" { + description + "../FPIType = 'MGMT_LSD_FPI_TYPE_PW_LIST'"; + } + description + "Pseudo-wire list FPI"; + uses MPLS-LSD-FPI-PW-LIST; + } + container dmtc-ext-intf-data { + when "../fpi-type = 'mgmt-lsd-fpi-type-dmtc-ext-intf'" { + description + "../FPIType = 'MGMT_LSD_FPI_TYPE_DMTC_EXT_INTF'"; + } + description + "Demand Matrix Traffic-Collector (DMTC) FPI"; + uses MPLS-LSD-FPI-DMTC-EXT-INTF; + } + container label-range { + when "../fpi-type = 'mgmt-lsd-fpi-type-label-range'" { + description + "../FPIType = 'MGMT_LSD_FPI_TYPE_LABEL_RANGE'"; + } + description + "Label range FPI"; + uses MPLS-LSD-FPI-LABEL-RANGE; + } + leaf fpi-type { + type Mgmt-lsd-fpi; + description + "FPIType"; + } + } + + grouping MPLS-LSD-FPI { + description + "LSD FPI"; + container fpi { + description + "FPI"; + uses MPLS-LSD-FPI-GEN; + } + list application-owner { + description + "Application owner instance"; + uses MPLS-LSD-APP-RSRC-STATE; + } + } + + grouping MPLS-LSD-RW { + description + "Rewrite information"; + container fpi-key { + description + "fpi key"; + uses MPLS-LSD-FPI; + } + container rewrite-id { + description + "Rewrite ID"; + uses MPLS-LSD-RW-ID; + } + leaf rewrite-version { + type uint64; + description + "Rewrite version"; + } + leaf bcdl-priority { + type uint8; + description + "BCDL Priority"; + } + leaf lsd-queue { + type uint8; + description + "LSD queue"; + } + leaf rw-install-time { + type uint64; + description + "Rewrite install timestamp"; + } + leaf rw-install-age { + type uint64; + description + "Rewrite install age"; + } + leaf rw-updated { + type int32; + description + "Is rewrite ever updated"; + } + leaf priority-updated { + type int32; + description + "Is rewrite's BCDL priority updated"; + } + leaf rw-redist { + type int32; + description + "Is Rewrite redistributed"; + } + leaf prefix-feid { + type uint64; + description + "FIB per-prefix encap id"; + } + list associated-fpi { + description + "Associated FPI"; + uses MPLS-LSD-FPI; + } + list v4-rpf { + description + "IPv4 RPF neighbors"; + uses MPLS-LSD-V4-RPF; + } + list v6-rpf { + description + "IPv6 RPF neighbors"; + uses MPLS-LSD-V6-RPF; + } + list mois { + description + "Mois"; + uses MPLS-LSD-MOI-ARR; + } + } + + grouping MPLS-LSD-FRR-DB-SUM { + description + "FRR summary"; + leaf active { + type uint32; + description + "Number of FRR rewrites in Active state"; + } + leaf ready { + type uint32; + description + "Number of FRR rewrites in Ready state"; + } + leaf partial { + type uint32; + description + "Number of FRR rewrites in Partial state"; + } + leaf igp { + type uint32; + description + "Number of FRR rewrites in IGP state for SR-TE"; + } + } + + grouping MPLS-LSD-FRR-OUT-PATH { + description + "FRR out path entry"; + leaf out-interface { + type xr:Interface-name; + description + "Outgoing interface"; + } + leaf out-label { + type uint32; + description + "Outgoing label"; + } + leaf ipv4-next-hop { + type inet:ipv4-address; + description + "Next hop IPv4 address"; + } + leaf frr-interface { + type xr:Interface-name; + description + "FRR interface"; + } + leaf frr-label { + type uint32; + description + "FRR output label"; + } + } + + grouping MPLS-LSD-FRR-DB-ENTRY-MID-ID { + description + "FRR midpoint information"; + leaf source-address { + type inet:ipv4-address; + description + "Source IPv4 address"; + } + leaf lspid { + type uint32; + description + "LSP ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + } + + grouping MPLS-LSD-FRR-DB-ENTRY-HEAD-ID { + description + "FRR head information"; + leaf destination-prefix { + type inet:ipv4-address; + description + "Destination prefix for the FRR head"; + } + leaf destination-prefix-length { + type uint8; + description + "Length of the destination subnet prefix"; + } + } + + grouping MPLS-LSD-FRR-DB-ENTRY-GEN-ID { + description + "MPLS LSD FRR DB ENTRY GEN ID"; + container head { + when "../role = 'mgmt-lsd-lsp-role-head'" { + description + "../Role = 'MGMT_LSD_LSP_ROLE_HEAD'"; + } + description + "FRR head"; + uses MPLS-LSD-FRR-DB-ENTRY-HEAD-ID; + } + container midpoint { + when "../role = 'mgmt-lsd-lsp-role-mid'" { + description + "../Role = 'MGMT_LSD_LSP_ROLE_MID'"; + } + description + "FRR midpoint"; + uses MPLS-LSD-FRR-DB-ENTRY-MID-ID; + } + leaf role { + type Mgmt-lsd-lsp-role; + description + "Role"; + } + } + + grouping MPLS-LSD-FRR-DB-ENTRY { + description + "FRR entry"; + container frr-entry-id { + description + "FRR entry ID"; + uses MPLS-LSD-FRR-DB-ENTRY-GEN-ID; + } + leaf tunnel-interface { + type xr:Interface-name; + description + "Tunnel interface name"; + } + leaf input-label { + type uint32; + description + "Input label"; + } + leaf entry-frr-state { + type Mgmt-lsd-frr-state; + description + "MPLS FRR entry state"; + } + list out-path { + description + "Out Path List"; + uses MPLS-LSD-FRR-OUT-PATH; + } + } + + grouping MPLS-LSD-LBL-CTX-SFI { + description + "SFI label context"; + leaf sfi-interface { + type xr:Interface-name; + description + "SFI interface"; + } + leaf sfi-name { + type string { + length "0..41"; + } + description + "SFI name"; + } + leaf sfi-disposition-protocol { + type uint32; + description + "SFI Disposition protocol"; + } + } + + grouping MPLS-LSD-LBL-CTX-LBL-BLK-PFP { + description + "Label block PFP context"; + leaf start-label { + type uint32; + description + "Starting label of label block"; + } + leaf offset { + type uint32; + description + "Offset from starting label of label block"; + } + leaf size { + type uint32; + description + "Size of label block"; + } + leaf owner-app-name { + type string { + length "0..48"; + } + description + "Owner Application Name"; + } + } + + grouping MPLS-LSD-LBL-CTX-SR-PFX-NODE { + description + "SR Prefix Node context"; + leaf segment-routing-label { + type uint32; + description + "Prefix Node Label"; + } + } + + grouping MPLS-LSD-LBL-CTX-LBL-BLK-BIER { + description + "Label BIER context"; + leaf block-length { + type uint32; + description + "Size of label block"; + } + leaf sub-domain-id { + type uint32; + description + "Subdomain ID"; + } + leaf bit-stream-length { + type uint32; + description + "Bit Stream Length"; + } + leaf afi { + type uint16; + description + "Address Family Identifier"; + } + } + + grouping MPLS-LSD-LBL-CTX-SRTE-NH-LABEL-SET { + description + "SRTE NH label set context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf next-hop-set-id { + type uint32; + description + "Next Hop Set ID"; + } + leaf type { + type Mgmt-lsd-lbl-alloc-table; + description + "Next Hop Table Type"; + } + } + + grouping MPLS-LSD-LBL-CTX-LBL-BLK-CBF { + description + "Label block CBF context"; + leaf start-label { + type uint32; + description + "Starting label of label block"; + } + leaf offset { + type uint32; + description + "Offset from starting label of label block"; + } + leaf size { + type uint32; + description + "Size of label block"; + } + leaf owner-app-name { + type string { + length "0..48"; + } + description + "Owner Application Name"; + } + } + + grouping MPLS-LSD-LBL-CTX-RECYCLE-LBL { + description + "Recycle lbl context"; + leaf grid-id { + type uint64; + description + "Grid ID"; + } + } + + grouping MPLS-LSD-LBL-CTX-LBL-BLK-SRLB { + description + "Label block SRLB context"; + leaf start-label { + type uint32; + description + "Start Label"; + } + leaf offset { + type uint32; + description + "Offset"; + } + leaf size { + type uint32; + description + "Number of labels"; + } + } + + grouping MPLS-LSD-LBL-CTX-TE-BINDING { + description + "Traffic Engineering Binding context"; + leaf te-identifier { + type uint32; + description + "MPLS Traffic Engineering Tunnel or Group ID"; + } + leaf te-type { + type Mgmt-lsd-te-binding; + description + "Type of identifier for the binding"; + } + } + + grouping MPLS-LSD-LBL-CTX-LBL-BLK-SRGB { + description + "Label block SRGB context"; + leaf start-label { + type uint32; + description + "Start Label"; + } + leaf offset { + type uint32; + description + "Offset"; + } + leaf size { + type uint32; + description + "Number of labels"; + } + } + + grouping MPLS-LSD-LBL-CTX-SR-ADJ-SEG-IPV6 { + description + "SR Adj Segment ipv6 context"; + leaf index { + type uint32; + description + "Adjacency index"; + } + leaf type { + type uint32; + description + "Adjacency type"; + } + leaf intf { + type xr:Interface-name; + description + "Adjacency interface"; + } + leaf addr { + type Lsd-ipv6-address; + description + "Adjacency nexthop IPv6 address"; + } + } + + grouping MPLS-LSD-LBL-CTX-SR-ADJ-SEG-IPV4 { + description + "SR Adj Segment ipv4 context"; + leaf index { + type uint32; + description + "Adjacency index"; + } + leaf type { + type uint32; + description + "Adjacency type"; + } + leaf intf { + type xr:Interface-name; + description + "Adjacency interface"; + } + leaf addr { + type inet:ipv4-address; + description + "Adjacency nexthop IPv4 address"; + } + } + + grouping MPLS-LSD-LBL-CTX-SR-PFX-SEG { + description + "SR Prefix Segment context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf segment-id { + type uint32; + description + "Prefix Segment ID"; + } + } + + grouping MPLS-LSD-LBL-CTX-L3VPN-NH-SET { + description + "L3VPN NH SET context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf next-hop-set-id { + type uint32; + description + "Next Hop Set ID"; + } + leaf type { + type Mgmt-lsd-lbl-alloc-table; + description + "Next Hop Table Type"; + } + } + + grouping MPLS-LSD-LBL-CTX-PIM-S-PMSI { + description + "PIM S-PMSI label context"; + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf source { + type inet:ipv4-address; + description + "Originating Router"; + } + leaf head { + type int32; + description + "Head"; + } + leaf v6 { + type int32; + description + "PIM6"; + } + leaf hli { + type uint32; + description + "Head LSM-ID"; + } + leaf seg { + type int32; + description + "Segmented Multicast"; + } + } + + grouping MPLS-LSD-LBL-CTX-PIM-I-PMSI { + description + "PIM I-PMSI label context"; + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf head { + type int32; + description + "Head"; + } + leaf v6 { + type int32; + description + "PIM6"; + } + } + + grouping MPLS-LSD-LBL-CTX-BLB-IPV6 { + description + "BFD BLB IPv6 content"; + leaf blb-intf { + type xr:Interface-name; + description + "BFD BLB interface"; + } + leaf prefix { + type Lsd-ipv6-address; + description + "IPv6 prefix"; + } + } + + grouping MPLS-LSD-LBL-CTX-BLB-IPV4 { + description + "BFD BLB IPv4 content"; + leaf blb-intf { + type xr:Interface-name; + description + "BFD BLB interface"; + } + leaf prefix { + type inet:ipv4-address; + description + "IPv4 prefix"; + } + } + + grouping MPLS-LSD-LBL-CTX-EVPN { + description + "EVPN context"; + leaf evpn-id { + type uint32; + description + "EVPN ID"; + } + leaf evpn-tag { + type uint32; + description + "EVPN TAG"; + } + leaf ethernet-segment { + type yang:hex-string; + description + "Ethernet Segment ID"; + } + leaf evpn-encap { + type uint8; + description + "EVPN Encap"; + } + } + + grouping MPLS-LSD-LBL-CTX-GRE-IPV6 { + description + "Generic routing encapsulation context"; + leaf greipv6-interface { + type xr:Interface-name; + description + "Generic routing encapsulation IPv6 interface"; + } + } + + grouping MPLS-LSD-LBL-CTX-GRE { + description + "Generic routing encapsulation context"; + leaf gre-interface { + type xr:Interface-name; + description + "Generic routing encapsulation interface"; + } + } + + grouping MPLS-LSD-LBL-CTX-TP { + description + "TP context"; + leaf source-global-id { + type uint32; + description + "TP source global ID"; + } + leaf source-node-id { + type inet:ipv4-address; + description + "TP source node ID"; + } + leaf dest-global-id { + type uint32; + description + "TP destination global ID"; + } + leaf dest-node-id { + type inet:ipv4-address; + description + "TP destination node ID"; + } + leaf source-tunnel-id { + type uint16; + description + "TP source tunnel ID"; + } + leaf dest-tunnel-id { + type uint16; + description + "TP destination tunnel ID"; + } + leaf lsp-id { + type uint16; + description + "TP LSP ID"; + } + } + + grouping MPLS-LSD-LBL-CTX-PWHE { + description + "Pseudo-wire Head-end context"; + leaf pwhe-intf { + type xr:Interface-name; + description + "Pseudo-wire Head-end interface"; + } + } + + grouping MPLS-LSD-LBL-CTX-MLDPV4 { + description + "MLDP IPv4 context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf type { + type uint16; + description + "LSM ID Type"; + } + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf peer-lsrid { + type inet:ipv4-address; + description + "Peer LSR Id"; + } + leaf peer-label-space-id { + type uint16; + description + "Peer Label Space Id"; + } + } + + grouping MPLS-LSD-LBL-CTX-TEV4-P2MP { + description + "TEv4 p2mp context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf tunnel-source { + type inet:ipv4-address; + description + "Tunnel source"; + } + leaf p2mp-id { + type uint32; + description + "Point to multipoint ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf tunnel-id-extension { + type uint32; + description + "Tunnel ID extension"; + } + leaf tunnel-lsp-id { + type uint32; + description + "Tunnel LSP ID"; + } + leaf previous-hop { + type inet:ipv4-address; + description + "Previous hop"; + } + } + + grouping MPLS-LSD-LBL-CTX-IP-SUB { + description + "IP subscriber context"; + leaf table-id { + type uint32; + description + "Table Id"; + } + leaf parent-interface { + type xr:Interface-name; + description + "Parent interface name"; + } + } + + grouping MPLS-LSD-LBL-CTX-LBL-BLK { + description + "Label block context"; + leaf service { + type uint8; + description + "Service"; + } + leaf vpn-id { + type uint16; + description + "VPN ID"; + } + leaf edge-id { + type uint16; + description + "Edge ID"; + } + leaf offset { + type uint32; + description + "Offset"; + } + leaf size { + type uint32; + description + "Number of labels"; + } + } + + grouping MPLS-LSD-LBL-CTX-PW { + description + "Pseudo-wire context"; + leaf prefix { + type inet:ipv4-address; + description + "Address prefix"; + } + leaf pseudowire-id { + type uint64; + description + "Pseudo-wire ID"; + } + leaf remote-l2-router-id { + type uint32; + description + "Remote L2 Router ID"; + } + leaf subinterface { + type xr:Interface-name; + description + "Sub-interface name for the Pseudo-wire label"; + } + } + + grouping MPLS-LSD-LBL-CTX-L3VPN-CEV6 { + description + "L3VPN CEv6 context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf ipv6-next-hop { + type Lsd-ipv6-address; + description + "IPv6 nexthop"; + } + leaf security-id { + type uint32; + description + "Security ID"; + } + } + + grouping MPLS-LSD-LBL-CTX-L3VPN-CEV4 { + description + "L3VPN CEv4 context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf ipv4-next-hop { + type inet:ipv4-address; + description + "IPv4 nexthop"; + } + leaf security-id { + type uint32; + description + "Security ID"; + } + } + + grouping MPLS-LSD-LBL-CTX-L3VPN-VRF { + description + "L3VPN vrf context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf security-id { + type uint32; + description + "Security ID"; + } + } + + grouping MPLS-LSD-LBL-CTX-L3VPN-IPV6 { + description + "L3VPN IPv6 context"; + leaf prefix { + type Lsd-ipv6-address; + description + "IPv6 prefix"; + } + leaf prefix-length { + type uint8; + description + "Length of the subnet prefix"; + } + leaf route-distinguisher { + type uint64; + description + "Route distinguisher"; + } + } + + grouping MPLS-LSD-LBL-CTX-L3VPN-IPV4 { + description + "L3VPN IPv4 context"; + leaf prefix { + type inet:ipv4-address; + description + "IPv4 prefix"; + } + leaf prefix-length { + type uint8; + description + "Length of the subnet prefix"; + } + leaf route-distinguisher { + type uint64; + description + "Route distinguisher"; + } + } + + grouping MPLS-LSD-LBL-CTX-TEV4 { + description + "LSD TEv4 context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf tunnel-source { + type inet:ipv4-address; + description + "Tunnel source"; + } + leaf tunnel-dest { + type inet:ipv4-address; + description + "Tunnel destination"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf tunnel-id-extension { + type uint32; + description + "Extended tunnel ID"; + } + leaf tunnel-lsp-id { + type uint32; + description + "Tunnel LSP ID"; + } + leaf is-srte { + type int32; + description + "Is this an SRTE head tunnel"; + } + } + + grouping MPLS-LSD-LBL-CTX-IPV6 { + description + "LSD IPv6 context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf prefix { + type inet:ipv6-address; + description + "IPv6 prefix"; + } + leaf prefix-length { + type uint8; + description + "Length of the subnet prefix"; + } + leaf security-id { + type uint32; + description + "Security ID"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF Name"; + } + } + + grouping MPLS-LSD-LBL-CTX-IPV4 { + description + "LSD IPv4 context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf prefix { + type inet:ipv4-address; + description + "IPv4 prefix"; + } + leaf prefix-length { + type uint8; + description + "Length of the subnet prefix"; + } + leaf security-id { + type uint32; + description + "Security ID"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF Name"; + } + } + + grouping MPLS-LSD-LBL-CTX-KEY { + description + "MPLS LSD LBL CTX KEY"; + container ipv4-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-ipv4'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_IPV4'"; + } + description + "IPv4 label context"; + uses MPLS-LSD-LBL-CTX-IPV4; + } + container ipv6-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-ipv6'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_IPV6'"; + } + description + "IPv6 label context"; + uses MPLS-LSD-LBL-CTX-IPV6; + } + container tev4-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-tev4'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_TEV4'"; + } + description + "TEv4 label context"; + uses MPLS-LSD-LBL-CTX-TEV4; + } + container ipv4l3vpn-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-l3vpn-ipv4'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_L3VPN_IPV4'"; + } + description + "L3VPN IPv4 label context"; + uses MPLS-LSD-LBL-CTX-L3VPN-IPV4; + } + container ipv6l3vpn-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-l3vpn-ipv6'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_L3VPN_IPV6'"; + } + description + "L3VPN IPv6 label context"; + uses MPLS-LSD-LBL-CTX-L3VPN-IPV6; + } + container vrf-l3vpn-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-l3vpn-vrf'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_L3VPN_VRF'"; + } + description + "L3VPN VRF label context"; + uses MPLS-LSD-LBL-CTX-L3VPN-VRF; + } + container cev4l3vpn-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-l3vpn-cev4'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_L3VPN_CEV4'"; + } + description + "L3VPN CEv4 label context"; + uses MPLS-LSD-LBL-CTX-L3VPN-CEV4; + } + container cev6l3vpn-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-l3vpn-cev6'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_L3VPN_CEV6'"; + } + description + "L3VPN CEv6 label context"; + uses MPLS-LSD-LBL-CTX-L3VPN-CEV6; + } + container pseudowire-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-pw'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_PW'"; + } + description + "Pseudowire label context"; + uses MPLS-LSD-LBL-CTX-PW; + } + container label-block-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-lbl-blk'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_LBL_BLK'"; + } + description + "Label block context"; + uses MPLS-LSD-LBL-CTX-LBL-BLK; + } + container ip-sub-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-ip-sub'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_IP_SUB'"; + } + description + "IP Subscriber context"; + uses MPLS-LSD-LBL-CTX-IP-SUB; + } + container tev4p2mp-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-tev4-p2mp'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_TEV4_P2MP'"; + } + description + "TEv4 P2MP context"; + uses MPLS-LSD-LBL-CTX-TEV4-P2MP; + } + container mld-pv4-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-mldpv4'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_MLDPV4'"; + } + description + "MLDPv4 LSM-ID context"; + uses MPLS-LSD-LBL-CTX-MLDPV4; + } + container pseudowire-head-end-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-pwhe'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_PWHE'"; + } + description + "Pseudowire Head-end label context"; + uses MPLS-LSD-LBL-CTX-PWHE; + } + container tp-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-tp'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_TP'"; + } + description + "TP context"; + uses MPLS-LSD-LBL-CTX-TP; + } + container generic-routing-encapsulation { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-gre'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_GRE'"; + } + description + "Generic routing encapsulation context"; + uses MPLS-LSD-LBL-CTX-GRE; + } + container ipv6-generic-routing-encapsulation { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-gre-ipv6'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_GRE_IPV6'"; + } + description + "Generic routing encapsulation context"; + uses MPLS-LSD-LBL-CTX-GRE-IPV6; + } + container evpn-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-evpn'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_EVPN'"; + } + description + "EVPN context"; + uses MPLS-LSD-LBL-CTX-EVPN; + } + container ipv4blb-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-blb-ipv4'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_BLB_IPV4'"; + } + description + "BFD BLB label context"; + uses MPLS-LSD-LBL-CTX-BLB-IPV4; + } + container ipv6blb-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-blb-ipv6'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_BLB_IPV6'"; + } + description + "BFD BLB label context"; + uses MPLS-LSD-LBL-CTX-BLB-IPV6; + } + container pi-mi-pmsi-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-pim-i-pmsi'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_PIM_I_PMSI'"; + } + description + "PIM I-PMSI label conext"; + uses MPLS-LSD-LBL-CTX-PIM-I-PMSI; + } + container pi-ms-pmsi-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-pim-s-pmsi'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_PIM_S_PMSI'"; + } + description + "PIM S-PMSI label conext"; + uses MPLS-LSD-LBL-CTX-PIM-S-PMSI; + } + container next-hop-set-l3vpn { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-l3vpn-nh-set'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_L3VPN_NH_SET'"; + } + description + "L3VPN NH SET label context"; + uses MPLS-LSD-LBL-CTX-L3VPN-NH-SET; + } + container sr-prefix-segment { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-sr-pfx-seg'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_SR_PFX_SEG'"; + } + description + "SR Prefix Segment context"; + uses MPLS-LSD-LBL-CTX-SR-PFX-SEG; + } + container sr-adj-segment-ipv4 { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-sr-adj-seg-ipv4'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_SR_ADJ_SEG_IPV4'"; + } + description + "SR Adj Segment ipv4 context"; + uses MPLS-LSD-LBL-CTX-SR-ADJ-SEG-IPV4; + } + container sr-adj-segment-ipv6 { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-sr-adj-seg-ipv6'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_SR_ADJ_SEG_IPV6'"; + } + description + "SR Adj Segment ipv6 context"; + uses MPLS-LSD-LBL-CTX-SR-ADJ-SEG-IPV6; + } + container label-block-srgb-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-lbl-blk-srgb'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_LBL_BLK_SRGB'"; + } + description + "Label block SRGB context"; + uses MPLS-LSD-LBL-CTX-LBL-BLK-SRGB; + } + container te-binding { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-te-binding'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_TE_BINDING'"; + } + description + "MPLS TE tunnel binding context"; + uses MPLS-LSD-LBL-CTX-TE-BINDING; + } + container label-block-srlb-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-lbl-blk-srlb'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_LBL_BLK_SRLB'"; + } + description + "Label block SRLB context"; + uses MPLS-LSD-LBL-CTX-LBL-BLK-SRLB; + } + container recycle-label { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-recycle-lbl'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_RECYCLE_LBL'"; + } + description + "Label stack context"; + uses MPLS-LSD-LBL-CTX-RECYCLE-LBL; + } + container label-block-cbf-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-lbl-blk-cbf'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_LBL_BLK_CBF'"; + } + description + "Label block CBF context"; + uses MPLS-LSD-LBL-CTX-LBL-BLK-CBF; + } + container next-hop-label-set-srte { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-srte-nh-label-set'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_SRTE_NH_LABEL_SET'"; + } + description + "SRTE NH label set context"; + uses MPLS-LSD-LBL-CTX-SRTE-NH-LABEL-SET; + } + container bier { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-lbl-blk-bier'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_LBL_BLK_BIER'"; + } + description + "Label BIER context"; + uses MPLS-LSD-LBL-CTX-LBL-BLK-BIER; + } + container sr-pfx-node { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-sr-pfx-node'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_SR_PFX_NODE'"; + } + description + "SR Prefix Node context"; + uses MPLS-LSD-LBL-CTX-SR-PFX-NODE; + } + container label-block-pfp-data { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-lbl-blk-pfp'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_LBL_BLK_PFP'"; + } + description + "Label block PFP context"; + uses MPLS-LSD-LBL-CTX-LBL-BLK-PFP; + } + container sfi { + when "../label-context-type = 'mgmt-lsd-lbl-ctx-type-sfi'" { + description + "../LabelContextType = + 'MGMT_LSD_LBL_CTX_TYPE_SFI'"; + } + description + "SFI label context"; + uses MPLS-LSD-LBL-CTX-SFI; + } + leaf label-context-type { + type Mgmt-lsd-lbl-ctx; + description + "LabelContextType"; + } + } + + grouping MPLS-LSD-LBL-CTX { + description + "Label context"; + container key { + description + "Label Key"; + uses MPLS-LSD-LBL-CTX-KEY; + } + leaf application-data { + type yang:hex-string; + description + "Application opaque data"; + } + } + + grouping MPLS-LSD-APP-RSRC-STATE { + description + "LSD application state"; + leaf application-name { + type string; + description + "Application name"; + } + leaf application-type { + type Mgmt-lsd-app; + description + "Application type"; + } + leaf application-role-primary { + type int32; + description + "Primary/Backup role"; + } + leaf application-instance { + type string; + description + "Application instance Name"; + } + leaf resource-state { + type Mgmt-lsd-app-rsrc-state; + description + "Application resource state"; + } + } + + grouping MPLS-LSD-LBL { + description + "Label information"; + container label-context { + description + "Label context"; + uses MPLS-LSD-LBL-CTX; + } + leaf label { + type uint32; + description + "Label value"; + } + leaf rewrite-is-bound { + type int32; + description + "Rewrite bound to label"; + } + leaf rewrite-owners { + type uint32; + description + "The applications that own of the rewrite bound + to the label"; + } + leaf rs-iconnected { + type int32; + description + "Is RSI connection open"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + list application-owner { + description + "The applications that own the label"; + uses MPLS-LSD-APP-RSRC-STATE; + } + } + + grouping MPLS-LSD-LBL-SUM-ELEM { + description + "Label summary"; + leaf application-type { + type Mgmt-lsd-app; + description + "Type of application owning the label"; + } + leaf application-name { + type string; + description + "Name of application owning the label"; + } + leaf application-role-primary { + type int32; + description + "Primary/Backup role"; + } + leaf application-instance { + type string; + description + "client-application identifier"; + } + leaf number-of-labels { + type uint32; + description + "Number of labels owned by the application"; + } + } + + grouping MPLS-LSD-LBL-SUM { + description + "Label statistics"; + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + leaf total-labels { + type uint32; + description + "Total number of labels"; + } + leaf rsi-connected { + type int32; + description + "Is RSI connection open"; + } + list owner-count { + description + "Label count by owner"; + uses MPLS-LSD-LBL-SUM-ELEM; + } + } + + grouping MPLS-LSD-CLIENT-BA { + description + "LSD bcdl client information"; + leaf client-conn-index { + type int32; + description + "BCDL Agent client connection index"; + } + leaf parent-client-conn-index { + type int32; + description + "BCDL Agent parent client connection index"; + } + } + + grouping MPLS-LSD-CLIENT-APP { + description + "LSD application client information"; + leaf application-name { + type string; + description + "Application name"; + } + leaf application-type { + type Mgmt-lsd-app; + description + "Application type"; + } + leaf application-instance { + type string; + description + "Application instance name"; + } + leaf application-role-primary { + type int32; + description + "Primary/Backup role"; + } + } + + grouping MGMT-MPLS-LSD-CLIENT-DATA { + description + "LSD client type information"; + container application { + when "../lsd-client-type = 'mgmt-lsd-client-type-app'" { + description + "../LSDClientType = 'MGMT_LSD_CLIENT_TYPE_APP'"; + } + description + "Application client"; + uses MPLS-LSD-CLIENT-APP; + } + container bcdl-agent { + when "../lsd-client-type = 'mgmt-lsd-client-type-ba'" { + description + "../LSDClientType = 'MGMT_LSD_CLIENT_TYPE_BA'"; + } + description + "BCDL agent client"; + uses MPLS-LSD-CLIENT-BA; + } + leaf lsd-client-type { + type Mgmt-lsd-client; + description + "LSDClientType"; + } + } + + grouping MPLS-LSD-CLIENT { + description + "LSD client information"; + container client-union { + description + "LSD client information"; + uses MGMT-MPLS-LSD-CLIENT-DATA; + } + leaf client-index { + type uint32; + description + "Client Index Value"; + } + leaf node-id { + type xr:Node-id; + description + "Node ID"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper.yang new file mode 100644 index 000000000..ed5425eaa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-lsd-oper.yang @@ -0,0 +1,587 @@ +module Cisco-IOS-XR-mpls-lsd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-lsd-oper"; + prefix mpls-lsd-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-lsd-oper-sub1 { + revision-date 2022-07-12; + } + + 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 mpls-lsd package operational data. + + This module contains definitions + for the following management objects: + mpls-lsd-nodes: Location MPLS LSD operational data + mpls-lsd: MPLS LSD operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-12 { + description + "Added Label Allocation Table Type for EVPN Label allocation + 2022-06-29 + Add sl_first_label and sl_start_index to mpls_lsd_moi_ipv4"; + semver:module-version "1.5.0"; + } + revision 2021-04-20 { + description + "Add mpls_lsd_moi_evpn as new EVPN moi"; + semver:module-version "1.4.0"; + } + revision 2020-11-26 { + description + "Extend MPLS_LSDLabelContextType to include PFP block type + 2020-11-22 + New Label Context type defined, SR_Pfx_node + 2020-10-29 + Deprecated bag mpls_lsd_first_srgb_allocated_block_size Added bag mpls_lsd_active_block_range + 2020-08-21 + Modify mpls_lsd to include label flags in mpls_lsd_fpi_lbl bag + 2020-06-13 + Modify mpls_lsd to include BIER app type and label context type + 2020-06-02 + Modify mpls_lsd_moi_pw to include platform data"; + semver:module-version "1.3.0"; + } + revision 2020-05-29 { + description + "Extended Application information to include resource complete timestamp"; + semver:module-version "1.2.0"; + } + revision 2019-10-22 { + description + "Modify mpls_lsd_lbl_ctx_recycle_lbl to take 64 bit field instead of 32 Extend mpls_lsd_moi_pop_and_lkup to include QoS fields Extend mpls_lsd_moi_ipv6 to include load metric field Extend mpls_lsd_moi_ipv4 to include recursion length fields Extend mpls_lsd_moi_ipv4 to include QoS fields Extend MPLS_LSDLabelContextType to include CBF block type Extend mpls_lsd_lbl_ctx_l3vpn_nh_set to include type field"; + semver:module-version "1.1.0"; + } + revision 2019-05-22 { + description + "Extended schema for FRRDatabase, Rewrite, LabelHistoryTable"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-01-03 { + description + "Yang evaluator: updates to schema descriptions and ranges"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping REWRITE-SUMMARY { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container rewrite-summary { + description + "Rewrite Summary across all VRFs"; + uses MPLS-LSD-RW-SUM; + } + } + + grouping LABEL-SUMMARY { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container label-summary { + description + "Dynamic label range"; + uses MPLS-LSD-LBL-SUM; + } + } + + grouping LABEL-TABLE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container labels { + description + "Table of labels"; + list label { + key "label-id"; + description + "Data for label"; + leaf label-id { + type uint32 { + range "0..1048575"; + } + description + "Label value"; + } + uses MPLS-LSD-LBL; + } + } + } + + grouping FRR-DATABASE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container frr-database { + description + "FRR database"; + container tunnel-midpoints { + description + "Table of FRR database entries - Tunnel + midpoints"; + list tunnel-midpoint { + key "label"; + description + "Data for FRR database entry - Tunnel midpoint"; + leaf label { + type uint32 { + range "0..1048575"; + } + description + "Label value"; + } + uses MPLS-LSD-FRR-DB-ENTRY; + } + } + container tunnel-heads { + description + "Table of FRR database entries - Tunnel heads"; + list tunnel-head { + key "interface-name"; + description + "Data for FRR database entry - Tunnel head"; + leaf interface-name { + type xr:Interface-name; + description + "Tunnel interface"; + } + uses MPLS-LSD-FRR-DB-ENTRY; + } + } + container tunnel-head-summary { + description + "Summary data for FRR database entry - Tunnel + head"; + uses MPLS-LSD-FRR-DB-SUM; + } + container summary-protected-interfaces { + description + "Sumary table of Protected Interfaces"; + list summary-protected-interface { + key "interface-name"; + description + "Data for MPLS interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + uses MPLS-LSD-FRR-DB-SUM; + } + } + container summary-backup-interfaces { + description + "Summary Backup Interface Table"; + list summary-backup-interface { + key "interface-name"; + description + "Data for Summary Backup Interface"; + leaf interface-name { + type xr:Interface-name; + description + "Tunnel interface"; + } + uses MPLS-LSD-FRR-DB-SUM; + } + } + container tunnel-summary { + description + "Summary data for FRR database entry"; + uses MPLS-LSD-FRR-DB-SUM; + } + container tunnel-midpoint-summary { + description + "Summary data for FRR database entry - Tunnel + midpoint"; + uses MPLS-LSD-FRR-DB-SUM; + } + } + } + + grouping LABEL-RANGE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container label-range { + description + "MPLS label range information for both static and + dynamic labels"; + uses MPLS-LSD-LBL-RANGE; + } + } + + grouping CLIENT-TABLE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container clients { + description + "Table of MPLS clients using LSD"; + list client { + key "client-name"; + description + "Data for MPLS client using LSD"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client Instance name in the form of + 'Application-' or + 'BCDL_Agent-'"; + } + uses MPLS-LSD-CLIENT; + } + } + } + + grouping LABEL-SUMMARY-VRF-TABLE { + description + "Common node of mpls-lsd, mpls-lsd-nodeCommon node + of mpls-lsd, mpls-lsd-node"; + container label-summary-vrfs { + description + "Dynamic label range summary by VRF"; + list label-summary-vrf { + key "vrf-name"; + description + "Dynamic label range summary by VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses MPLS-LSD-LBL-SUM; + } + } + } + + grouping APPLICATION-TABLE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container applications { + description + "Table of MPLS applications using LSD"; + list application { + key "application-name"; + description + "Data for MPLS application using LSD"; + leaf application-name { + type xr:Cisco-ios-xr-string; + description + "Application Instance name in the form of + '[:]'"; + } + uses MPLS-LSD-APP; + } + } + } + + grouping REWRITE-SUMMARY-VRF-TABLE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container rewrite-summary-vrfs { + description + "Rewrite Summary by VRF"; + list rewrite-summary-vrf { + key "vrf-name"; + description + "Rewrite summary by VRF VRF-name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses MPLS-LSD-RW-SUM; + } + } + } + + grouping INTERFACE-TABLE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container interfaces { + description + "Table of MPLS interfaces"; + list interface { + key "interface-name"; + description + "Data for MPLS interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface"; + } + uses MPLS-LSD-INTF; + } + } + } + + grouping LABEL-HISTORY-TABLE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container label-histories { + description + "MPLS Label Hist"; + list label-history { + key "label-id"; + description + "MPLS Label Tabel Label"; + container label-history-records { + description + "MPLS Label History Record Table"; + list label-history-record { + key "record-num"; + description + "MPLS Label Record Num"; + leaf record-num { + type uint32; + description + "Record Number"; + } + uses MPLS-LSD-LBL-HIST; + } + } + leaf label-id { + type uint32 { + range "0..1048575"; + } + description + "Label value"; + } + } + } + } + + grouping REWRITE { + description + "Common node of mpls-lsd, mpls-lsd-node"; + container rewrite { + description + "Table of rewrites"; + container rewrite-label-range-cnts { + description + "Table of Label Range Counters"; + list rewrite-label-range-cnt { + description + "Label Range Counters"; + leaf label-range-type { + type uint32 { + range "0..5"; + } + description + "Label range type for SRLB/SRGB opaque data to + FIB"; + } + leaf label-range-index { + type uint32 { + range "0..2"; + } + description + "Label range index for SRLB/SRGB opaque data + to FIB"; + } + uses MPLS-LSD-RW; + } + } + container rewrite-ipv6s { + description + "Table of IPv6 Rewrites"; + list rewrite-ipv6 { + description + "FPI rewrite for label"; + leaf rsi-table-id { + type xr:Hex-integer; + description + "RSI table ID"; + } + leaf address { + type inet:ipv6-address-no-zone; + description + "Network Address "; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "IPv6 Prefix length"; + } + uses MPLS-LSD-RW; + } + } + container rewrite-pws { + description + "Table of Rewrites"; + list rewrite-pw { + key "pw-list-id"; + description + "FPI rewrite for PW List"; + leaf pw-list-id { + type uint32 { + range "0..65535"; + } + description + "PW List ID"; + } + uses MPLS-LSD-RW; + } + } + container traffic-collector-interfaces { + description + "Table of Rewrite Table Collector"; + list traffic-collector-interface { + key "interface-name"; + description + "Data for Traffic Collector Interface"; + leaf interface-name { + type xr:Interface-name; + description + "External interface"; + } + uses MPLS-LSD-RW; + } + } + container rewrite-ipv4s { + description + "Table of Rewrites"; + list rewrite-ipv4 { + description + "FPI rewrite for label"; + leaf rsi-table-name { + type xr:Cisco-ios-xr-string; + description + "RSI table name"; + } + leaf rsi-table-id { + type xr:Hex-integer; + description + "RSI table ID"; + } + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 Prefix"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "IPv4 Prefix length"; + } + uses MPLS-LSD-RW; + } + } + container rewrite-tes { + description + "Table of Traffic Engineering Rewrites"; + list rewrite-te { + key "interface-name"; + description + "FPI rewrite for TE"; + leaf interface-name { + type xr:Interface-name; + description + "Tunnel interface"; + } + uses MPLS-LSD-RW; + } + } + container rewrite-labels { + description + "Table of Rewrites"; + list rewrite-label { + key "label-id"; + description + "FPI rewrite for label"; + leaf label-id { + type uint32 { + range "0..1048575"; + } + description + "Label value"; + } + uses MPLS-LSD-RW; + } + } + } + } + + container mpls-lsd-nodes { + config false; + description + "Location MPLS LSD operational data"; + list mpls-lsd-node { + key "node-name"; + description + "The MPLS LSD operational data for a particular + node"; + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + uses CLIENT-TABLE; + uses LABEL-SUMMARY; + uses LABEL-TABLE; + uses FRR-DATABASE; + uses REWRITE; + uses REWRITE-SUMMARY; + uses APPLICATION-TABLE; + uses LABEL-SUMMARY-VRF-TABLE; + uses LABEL-RANGE; + uses REWRITE-SUMMARY-VRF-TABLE; + uses INTERFACE-TABLE; + uses LABEL-HISTORY-TABLE; + } + } + container mpls-lsd { + config false; + description + "MPLS LSD operational data"; + uses CLIENT-TABLE; + uses LABEL-SUMMARY; + uses LABEL-TABLE; + uses FRR-DATABASE; + uses REWRITE; + uses REWRITE-SUMMARY; + uses APPLICATION-TABLE; + uses LABEL-SUMMARY-VRF-TABLE; + uses LABEL-RANGE; + uses REWRITE-SUMMARY-VRF-TABLE; + uses INTERFACE-TABLE; + uses LABEL-HISTORY-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-cfg.yang new file mode 100644 index 000000000..84dc15700 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-cfg.yang @@ -0,0 +1,153 @@ +module Cisco-IOS-XR-mpls-oam-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-oam-cfg"; + prefix mpls-oam-cfg; + + 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 mpls-oam package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-oam-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + mpls-oam: MPLS LSP verification configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-18 { + description + "Unhide revision support and downstream disable."; + semver:module-version "1.2.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-oam-revision { + type enumeration { + enum "draft03-initial" { + value 1; + description + "draft-ietf-mpls-lsp-ping-03 (initial)"; + } + enum "draft03-revision1" { + value 2; + description + "draft-ietf-mpls-lsp-ping-03 (revision 1)"; + } + enum "draft03-revision2" { + value 3; + description + "draft-ietf-mpls-lsp-ping-03 (revision 2)"; + } + enum "draft09-initial" { + value 4; + description + "draft-ietf-mpls-lsp-ping-09 (initial)"; + } + } + description + "Mpls oam revision"; + } + + container mpls-oam { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-oam-cfg.yang which will + provide the compatible functionalities. MPLS LSP + verification configuration"; + container dpm { + description + "MPLS OAM DPM"; + leaf enable-dpm { + type empty; + description + "Enable/Disable MPLS OAM DPM"; + } + leaf interval { + type uint32 { + range "1..3600"; + } + units "minute"; + description + "Running interval of DPM"; + } + leaf rate-limit { + type uint32 { + range "1..250"; + } + units "packet/s"; + description + "Rate limit in packets per second"; + } + leaf downstream-ecmp-faults { + type empty; + description + "Report downstream mismatches"; + } + } + container reply-mode { + description + "Echo request reply mode attributes"; + container control-channel { + description + "Configure control channel reply mode"; + leaf allow-reverse-lsp { + type empty; + description + "Use Reverse LSP as the control channel"; + } + } + } + leaf default-revision { + type Mpls-oam-revision; + default "draft09-initial"; + description + "Echo request default revision"; + } + leaf enable-oam { + type empty; + description + "Enable/Disable MPLS OAM globally.Without + creating this object the MPLS OAM feature will + not be enabled. Deleting this object will stop + the MPLS OAM feature."; + } + leaf disable-vendor-extension { + type empty; + description + "Disable vendor extension"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub1.yang new file mode 100644 index 000000000..6fbc22170 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub1.yang @@ -0,0 +1,797 @@ +submodule Cisco-IOS-XR-mpls-oam-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-oam-oper { + prefix Cisco-IOS-XR-mpls-oam-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-oam package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lspv-dpm-igp { + type enumeration { + enum "ospf" { + description + "OSPF"; + } + enum "isis" { + description + "ISIS"; + } + } + description + "Lspv dpm igp"; + } + + typedef Lspv-dpm-fault-code { + type enumeration { + enum "lspv-dpm-fault-na" { + value 0; + description + "Unset Code"; + } + enum "lspv-dpm-fault-success" { + value 33; + description + "Success"; + } + enum "lspv-dpm-fault-timeout" { + value 46; + description + "Timeout"; + } + enum "lspv-dpm-fault-unlbl-out-intf" { + value 66; + description + "Unlabeled output interface"; + } + enum "lspv-dpm-fault-ds-mismatch" { + value 68; + description + "DS Map mismatch"; + } + enum "lspv-dpm-fault-no-fec" { + value 70; + description + "No FEC mapping"; + } + enum "lspv-dpm-fault-unknown-up-idx" { + value 73; + description + "Unknown upstream index"; + } + enum "lspv-dpm-fault-lbl-out-intf" { + value 76; + description + "Labeled output interface"; + } + enum "lspv-dpm-fault-mal" { + value 77; + description + "Malformed request"; + } + enum "lspv-dpm-fault-no-rx-lbl" { + value 78; + description + "No rx label"; + } + enum "lspv-dpm-fault-no-rx-intf-lbl-prot" { + value 80; + description + "No rx intf label prot"; + } + enum "lspv-dpm-fault-un-sent" { + value 81; + description + "Request not sent"; + } + enum "lspv-dpm-fault-transit" { + value 82; + description + "Transit router"; + } + enum "lspv-dpm-fault-x" { + value 88; + description + "Unknown return code"; + } + enum "lspv-dpm-fault-dd-map" { + value 100; + description + "DDMAP"; + } + enum "lspv-dpm-fault-fec-mismatch" { + value 102; + description + "FEC mismatch"; + } + enum "lspv-dpm-fault-bad-tlv" { + value 109; + description + "Unsupported TLV"; + } + enum "lspv-dpm-fault-pre-lsp" { + value 112; + description + "Premature termination of LSP"; + } + enum "lspv-dpm-fault-rt-0t" { + value 120; + description + "return code 0t"; + } + } + description + "Lspv dpm fault code"; + } + + typedef Lspv-dpm-pfx-validation-status { + type enumeration { + enum "never" { + description + "Never"; + } + enum "complete" { + description + "Complete"; + } + enum "in-progress" { + description + "In Progress"; + } + enum "scheduled" { + description + "Scheduled"; + } + enum "stale" { + description + "Stale"; + } + enum "no-upstreams" { + description + "No Upstreams"; + } + } + description + "Lspv dpm pfx validation status"; + } + + typedef Static-ipv6-address { + type inet:ipv6-address; + description + "Static ipv6 address"; + } + + typedef Lspv-dpm-addr { + type enumeration { + enum "ipv4" { + description + "IPv4"; + } + enum "ipv6" { + description + "IPv6"; + } + } + description + "Lspv dpm addr"; + } + + grouping LSPV-DPM-PFX-DB-SUMMARY { + description + "LSPV DPM Prefix DB summary"; + leaf pfx-db-size { + type uint32; + description + "Size of Prefix DB"; + } + leaf validated-prefixes { + type uint32; + description + "Number of Validated Prefixes"; + } + leaf requests-sent { + type uint32; + description + "Number of Echo Requests Sent"; + } + leaf requests-rcvd { + type uint32; + description + "Number of Echo Requests Received"; + } + leaf validation-errors { + type uint32; + description + "Validation Errors"; + } + leaf validation-start-time { + type uint64; + description + "DPM Start Time"; + } + leaf validation-end-time { + type uint64; + description + "DPM End Time"; + } + } + + grouping LSPV-DPM-ADJ-INFO { + description + "Adjacency Information"; + leaf local-label { + type uint32; + description + "Label"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf protected { + type boolean; + description + "Protected"; + } + leaf static-adj { + type boolean; + description + "Static Adj"; + } + leaf group { + type boolean; + description + "Group"; + } + leaf isis-l1 { + type boolean; + description + "ISIS Level 1"; + } + leaf isis-l2 { + type boolean; + description + "ISIS Level 2"; + } + leaf success { + type boolean; + description + "Sucess"; + } + } + + grouping LSPV-DPM-ADJ { + description + "LSPV DPM Adjacency"; + container local-address { + description + "Local Address"; + uses LSPV-DPM-PREFIX-BAG; + } + container remote-address { + description + "Remote Address"; + uses LSPV-DPM-PREFIX-BAG; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf local-interface-id { + type uint32; + description + "Local Interface Id"; + } + leaf unprotected-local-label { + type uint32; + description + "Unprotected Local Label"; + } + leaf remote-interface-id { + type uint32; + description + "Remote Interface Id"; + } + leaf unprotected-remote-label { + type uint32; + description + "Unprotected Remote Label"; + } + leaf valid-adj { + type uint32; + description + "Valid Adjacencies"; + } + leaf total-adj { + type uint32; + description + "Total Adjacencies"; + } + leaf is-isis { + type boolean; + description + "ISIS enabled"; + } + leaf is-ipv4 { + type boolean; + description + "IPv4 enabled"; + } + leaf is-excluded { + type boolean; + description + "Skipped for the current run"; + } + leaf last-fault-time { + type uint64; + description + "Last Fault Time"; + } + list local-adj { + description + "Local Adjacencies"; + uses LSPV-DPM-ADJ-INFO; + } + list remote-adj { + description + "Remote Adjacencies"; + uses LSPV-DPM-ADJ-INFO; + } + } + + grouping LSPV-DPM-ADJ-FAULT { + description + "LSPV DPM ADJ fault"; + container ip { + description + "IP Address"; + xr:event-telemetry "Subscribe Telemetry Event"; + uses LSPV-DPM-PREFIX-BAG; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf igp { + type Lspv-dpm-igp; + description + "IGP"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf local-adj-sid { + type uint32; + description + "Local Adj SID"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf error-code { + type Lspv-dpm-fault-code; + description + "DPM Error code"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping LSPV-DPM-SUMMARY { + description + "LSPV DPM summary"; + leaf v4rib-reg { + type boolean; + description + "Registration to IPv4 RIB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf v4rib-con { + type boolean; + description + "Connection to IPv4 RIB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf sysdb-reg { + type boolean; + description + "Registration to SYSDB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf sysdb-con { + type boolean; + description + "Connection to SYSDB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf im-reg { + type boolean; + description + "Registration to IM"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf im-con { + type boolean; + description + "Connection to IM"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf lspv-con { + type boolean; + description + "Connection to LSPV"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf num-of-adj { + type uint32; + description + "Number of Adjacencies in DB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf validated-adjs { + type uint32; + description + "Number of Validated Adjacencies"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf dpm-eligible-intfs { + type uint32; + description + "Number of DPM allowed interfaces"; + } + leaf error-adjs { + type uint32; + description + "Errored Adjacencies"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf num-of-pfx { + type uint32; + description + "Number of Prefixes in DB"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf validated-pfxs { + type uint32; + description + "Number of Validated Prefixes"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf error-pfxs { + type uint32; + description + "Errored Prefixes"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf total-requests { + type uint32; + description + "Total Requests"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf total-responses { + type uint32; + description + "Total Responses"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf total-prop-req { + type uint32; + description + "Total Property Requests"; + } + leaf total-prop-errs { + type uint32; + description + "Total Property Errors"; + } + leaf total-prop-resp { + type uint32; + description + "Total Property Responses"; + } + leaf dpm-interval { + type uint32; + description + "DPM Run Interval"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf dpm-packets-per-second { + type uint32; + units "packet/s"; + description + "DPM Packets Per Second"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf total-retries { + type uint32; + description + "Total Retries"; + } + leaf validation-complete { + type boolean; + description + "DPM Validation Complete"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf last-dpm-run-time { + type uint64; + description + "Last DPM interation time in nanosec"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf last-dpm-fault-time { + type uint64; + description + "Last DPM fault time in nanosec"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf last-dpm-fault-time-ever { + type uint64; + description + "Last Ever DPM fault time in nanosec"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping LSPV-DPM-FAULT { + description + "LSPV DPM Pfx NH fault"; + container prefix-xr { + description + "Prefix"; + uses LSPV-DPM-PREFIX-INFO; + } + container downlink-fault { + description + "Downlink associated with the fault"; + xr:event-telemetry "Subscribe Telemetry Event"; + uses LSPV-DPM-PREFIX-BAG; + } + container uplink-fault { + description + "Uplink associated with the fault"; + xr:event-telemetry "Subscribe Telemetry Event"; + uses LSPV-DPM-PREFIX-BAG; + } + leaf prefix-sid { + type uint32; + description + "Prefix SID"; + } + leaf error-code { + type Lspv-dpm-fault-code; + description + "DPM Error code"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping LSPV-DPM-COUNTERS { + description + "LSPV DPM Counters"; + leaf requests-sent { + type uint32; + description + "Requests Last Sent"; + } + leaf requests-last-pending { + type uint32; + description + "Requests Last Pending"; + } + leaf requests-last-returned { + type uint32; + description + "Requests Last Returned"; + } + leaf requests-unsent { + type uint32; + description + "Requests Unsent"; + } + leaf requests-retry-unsent { + type uint32; + description + "Requests Retry Unsent"; + } + leaf requests-pending { + type uint32; + description + "Requests Pending"; + } + } + + grouping LSPV-DPM-PFX-ADJ { + description + "LSPV DPM Prefix Adj"; + container next-hop { + description + "NextHop"; + uses LSPV-DPM-PREFIX-BAG; + } + leaf requests-sent { + type uint32; + description + "Requests Sent"; + } + leaf errors { + type uint32; + description + "Errors"; + } + leaf last-fault-time { + type uint64; + description + "Last Fault Time"; + } + leaf status { + type Lspv-dpm-pfx-validation-status; + description + "Status"; + } + leaf stale { + type boolean; + description + "Stale"; + } + } + + grouping LSPV-DPM-PREFIX-BAG { + description + "LSPV DPM PREFIX BAG"; + leaf af-name { + type Lspv-dpm-addr; + description + "AFName"; + } + leaf ipv4-prefix { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 prefix"; + } + leaf ipv6-prefix { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Static-ipv6-address; + description + "IPv6 prefix"; + } + } + + grouping LSPV-DPM-PREFIX-INFO { + description + "Prefix Information"; + container prefix { + description + "Prefix"; + uses LSPV-DPM-PREFIX-BAG; + } + leaf prefix-length { + type uint8; + description + "Prefix length"; + } + } + + grouping LSPV-DPM-PFX { + description + "LSPV DPM Prefix"; + container prefix-xr { + description + "Prefix"; + xr:event-telemetry "Subscribe Telemetry Event"; + uses LSPV-DPM-PREFIX-INFO; + } + leaf pfx-sid { + type uint32; + description + "Prefix SID"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf requests-sent { + type uint32; + description + "Requests Sent"; + } + leaf requests-rcvd { + type uint32; + description + "Requests Rcvd"; + } + leaf errors { + type uint32; + description + "Errors"; + } + leaf last-fault-time { + type uint64; + description + "Last Fault Time"; + } + leaf status { + type Lspv-dpm-pfx-validation-status; + description + "Status"; + } + list upstream-adj { + description + "Upstream Adjacency"; + uses LSPV-DPM-PREFIX-BAG; + } + list downstream-adj-info { + description + "Downstream Adjacency Info"; + uses LSPV-DPM-PFX-ADJ; + } + } + + grouping LSPV-DPM-ADJ-DB-SUMMARY { + description + "LSPV DPM Adjacency DB summary"; + leaf adj-db-size { + type uint32; + description + "Size of Adjacency DB"; + } + leaf dpm-eligible-intfs { + type uint32; + description + "Number of DPM allowed interfaces"; + } + leaf err-intfs { + type uint32; + description + "Number of Interfaces with Errors"; + } + leaf validation-start-time { + type uint64; + description + "Validation Start Time"; + } + leaf validation-end-time { + type uint64; + description + "Validation End Time"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub2.yang new file mode 100644 index 000000000..496d1da13 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper-sub2.yang @@ -0,0 +1,450 @@ +submodule Cisco-IOS-XR-mpls-oam-oper-sub2 { + belongs-to Cisco-IOS-XR-mpls-oam-oper { + prefix Cisco-IOS-XR-mpls-oam-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-oam package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Lspv-bag-interface-state { + type enumeration { + enum "not-ready" { + description + "Not ready"; + } + enum "admin-down" { + description + "Admin down"; + } + enum "down" { + description + "Down"; + } + enum "up" { + description + "UP"; + } + enum "shutdown" { + description + "Shutdown"; + } + enum "error-disable" { + description + "Error disable"; + } + enum "down-immediate" { + description + "Immediate down"; + } + enum "admin-immediate" { + description + "Immediate admin"; + } + enum "graceful-down" { + description + "Graceful down"; + } + enum "begin-shutdown" { + description + "Begin shutdown"; + } + enum "end-shutdown" { + description + "End shutdown"; + } + enum "begin-error-disable" { + description + "Begin error disable"; + } + enum "end-error-disable" { + description + "End error disable"; + } + enum "begin-graceful-down" { + description + "Begin graceful down"; + } + enum "reset" { + description + "Reset"; + } + enum "operational" { + description + "Operational"; + } + enum "not-operational" { + description + "Not operational"; + } + enum "not-known" { + description + "Unknown"; + } + } + description + "LSPV interface state"; + } + + grouping LSPV-COLLAB-COUNTER { + description + "LSPV collaborator counters"; + leaf ups { + type uint32; + description + "Collaborator up counter"; + } + leaf downs { + type uint32; + description + "Collaborator down counter"; + } + } + + grouping LSPV-COLLAB-STATISTICS { + description + "LSPV collaborator statistics"; + container collaborator-i-parm { + description + "Collaborator IPARM counts"; + uses LSPV-COLLAB-COUNTER; + } + container collaborator-im { + description + "Collaborator IM counts"; + uses LSPV-COLLAB-COUNTER; + } + container collaborator-net-io { + description + "Collaborator NetIO counts"; + uses LSPV-COLLAB-COUNTER; + } + container collaborator-rib { + description + "Collaborator RIB counts"; + uses LSPV-COLLAB-COUNTER; + } + } + + grouping LSPV-MSG-STATISTICS { + description + "LSPV verification process message statistics"; + leaf register-messages { + type uint32; + description + "Message register count"; + } + leaf unregister-messages { + type uint32; + description + "Message unregister count"; + } + leaf echo-submit-messages { + type uint32; + description + "Message echo submit count"; + } + leaf echo-cancel-messages { + type uint32; + description + "Message echo cancel count"; + } + leaf get-result-messages { + type uint32; + description + "Message get results count"; + } + leaf get-config-messages { + type uint32; + description + "Message get configiuration count"; + } + leaf get-response-messages { + type uint32; + description + "Message get response count"; + } + leaf property-response-messages { + type uint32; + description + "Message property response count"; + } + leaf property-request-messages { + type uint32; + description + "Message property request count"; + } + leaf property-block-messages { + type uint32; + description + "Message property block count"; + } + leaf thread-request-messages { + type uint32; + description + "Message thread request count"; + } + } + + grouping LSPV-GLOBAL-TYPE { + description + "LSPV global information"; + container message-statistics { + description + "Message statistics"; + uses LSPV-MSG-STATISTICS; + } + container collaborator-statistics { + description + "Collaborator statistics"; + uses LSPV-COLLAB-STATISTICS; + } + leaf total-clients { + type uint32; + description + "Number of clients"; + } + } + + grouping LSPV-BAG-STATS-TX { + description + "LSPV transmission statistics"; + container transmit-good { + description + "Transmit good packets"; + uses LSPV-PKT-COUNTER; + } + container transmit-drop { + description + "Transmit drop packets"; + uses LSPV-PKT-COUNTER; + } + container transmit-bfd-good { + description + "Transmit good BFD request packets"; + uses LSPV-PKT-COUNTER; + } + container bfd-no-reply { + description + "No Reply action for echo reqeust of BFD + bootstrap"; + uses LSPV-PKT-COUNTER; + } + } + + grouping LSPV-PKT-COUNTER { + description + "LSPV verification packet count"; + leaf packets { + type uint64; + description + "Packet counter"; + } + leaf bytes { + type uint64; + units "byte"; + description + "Byte counter"; + } + } + + grouping LSPV-BAG-STATS-RX { + description + "LSPV reception statistics"; + container received-good-request { + description + "Received good request"; + uses LSPV-PKT-COUNTER; + } + container received-good-reply { + description + "Received good reply"; + uses LSPV-PKT-COUNTER; + } + container received-unknown { + description + "Received unknown packets"; + uses LSPV-PKT-COUNTER; + } + container received-error-ip-header { + description + "IP header error"; + uses LSPV-PKT-COUNTER; + } + container received-error-udp-header { + description + "UDP header error"; + uses LSPV-PKT-COUNTER; + } + container received-error-runt { + description + "RUNT error"; + uses LSPV-PKT-COUNTER; + } + container received-error-queue-full { + description + "Dropped queue full"; + uses LSPV-PKT-COUNTER; + } + container received-error-general { + description + "General error"; + uses LSPV-PKT-COUNTER; + } + container received-error-no-interface { + description + "Error no Interfaces"; + uses LSPV-PKT-COUNTER; + } + container received-error-no-memory { + description + "Error no memory"; + uses LSPV-PKT-COUNTER; + } + container protect-protocol-received-good-request { + description + "Protect Protocol Received good request"; + uses LSPV-PKT-COUNTER; + } + container protect-protocol-received-good-reply { + description + "Protect Protocol Received good reply"; + uses LSPV-PKT-COUNTER; + } + container received-good-bfd-request { + description + "Received Reqeust with BFD TLV"; + uses LSPV-PKT-COUNTER; + } + container received-good-bfd-reply { + description + "Received Reply with BFD TLV"; + uses LSPV-PKT-COUNTER; + } + } + + grouping LSPV-PACKET-STATISTICS { + description + "Receive and transmit packet counts"; + container received { + description + "Packet reception counts"; + uses LSPV-BAG-STATS-RX; + } + container sent { + description + "Packet transmit counts"; + uses LSPV-BAG-STATS-TX; + } + container working-req-sent { + description + "Working Request Packet transmit counts"; + uses LSPV-BAG-STATS-TX; + } + container working-rep-sent { + description + "Working Reply Packet transmit counts"; + uses LSPV-BAG-STATS-TX; + } + container protect-req-sent { + description + "Protect Request Packet transmit counts"; + uses LSPV-BAG-STATS-TX; + } + container protect-rep-sent { + description + "Protect Reply Packet transmit counts"; + uses LSPV-BAG-STATS-TX; + } + } + + grouping LSPV-INTERFACE-INFO { + description + "LSPV interface information"; + container interface-brief { + description + "Interface brief"; + uses LSPV-INTERFACE-INFO-BRIEF; + } + container packet-statistics { + description + "Packet statistics"; + uses LSPV-PACKET-STATISTICS; + } + } + + grouping LSPV-INTERFACE-INFO-BRIEF { + description + "LSPV interface brief information"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface name"; + } + leaf state { + type Lspv-bag-interface-state; + description + "Interface state"; + } + leaf mtu { + type uint32; + description + "Interface MTU"; + } + leaf prefix-length { + type uint32; + description + "Prefix length (IPv4)"; + } + leaf prefix-length-v6 { + type uint32; + description + "Prefix length (IPv6)"; + } + leaf primary-address { + type inet:ipv4-address; + description + "Primary interface address (IPv4)"; + } + leaf primary-address-v6 { + type inet:ipv6-address; + description + "Primary interface address (IPv6)"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper.yang new file mode 100644 index 000000000..e33bc1d7f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-oam-oper.yang @@ -0,0 +1,219 @@ +module Cisco-IOS-XR-mpls-oam-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-oam-oper"; + prefix mpls-oam-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-oam-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-mpls-oam-oper-sub1 { + revision-date 2019-04-05; + } + + 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 mpls-oam package operational data. + + This module contains definitions + for the following management objects: + mpls-oam: MPLS OAM operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container mpls-oam { + config false; + description + "MPLS OAM operational data"; + container interface { + description + "MPLS OAM interface operational data"; + container briefs { + description + "MPLS OAM interface detail data"; + list brief { + key "interface-name"; + description + "MPLS OAM interface operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses LSPV-INTERFACE-INFO-BRIEF; + } + } + container details { + description + "MPLS OAM interface detail data"; + list detail { + key "interface-name"; + description + "MPLS OAM interface operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses LSPV-INTERFACE-INFO; + } + } + } + container packet { + description + "LSPV packet counters operational data"; + uses LSPV-PACKET-STATISTICS; + } + container global { + description + "LSPV global counters operational data"; + uses LSPV-GLOBAL-TYPE; + } + container dpm { + description + "MPLS OAM DPM operational data"; + container adjacency-summary { + description + "LSPV DPM adjacency summary operational data"; + uses LSPV-DPM-ADJ-DB-SUMMARY; + } + container prefixes { + description + "MPLS OAM DPM prefix operational data"; + list prefix { + key "prefix"; + description + "MPLS OAM DPM prefix operational data"; + leaf prefix { + type inet:ip-prefix; + description + "The IP Prefix"; + } + uses LSPV-DPM-PFX; + } + } + container counters { + description + "LSPV DPM counters operational data"; + uses LSPV-DPM-COUNTERS; + } + container prefix-faults { + description + "MPLS OAM DPM prefix fault operational data"; + list prefix-fault { + description + "MPLS OAM DPM prefix fault operational data"; + leaf prefix { + type inet:ip-prefix; + description + "The IP Prefix"; + } + leaf downstream-address { + type inet:ip-address-no-zone; + description + "Downstream IP Address"; + } + leaf upstream-address { + type inet:ip-address-no-zone; + description + "Upstream IP Address"; + } + uses LSPV-DPM-FAULT; + } + } + container adjacency-summary-last { + description + "LSPV last DPM run adjacency summary operational + data"; + uses LSPV-DPM-ADJ-DB-SUMMARY; + } + container summary { + description + "LSPV DPM summary operational data"; + uses LSPV-DPM-SUMMARY; + } + container adjacency-faults { + description + "MPLS OAM DPM adjacency operational data"; + list adjacency-fault { + description + "MPLS OAM DPM adjcency fault operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf local-label-id { + type uint32 { + range "16..1048575"; + } + description + "Local Label"; + } + uses LSPV-DPM-ADJ-FAULT; + } + } + container adjacencies { + description + "MPLS OAM DPM adjacency operational data"; + list adjacency { + key "interface-name"; + description + "MPLS OAM DPM adjcency operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses LSPV-DPM-ADJ; + } + } + container prefix-summary { + description + "LSPV DPM prefix summary operational data"; + uses LSPV-DPM-PFX-DB-SUMMARY; + } + container prefix-summary-last { + description + "LSPV last DPM run prefix summary operational + data"; + uses LSPV-DPM-PFX-DB-SUMMARY; + } + container summary-last { + description + "LSPV last DPM run summary operational data"; + uses LSPV-DPM-SUMMARY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-over-udp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-over-udp-cfg.yang new file mode 100644 index 000000000..9a56a61fe --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-over-udp-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-mpls-over-udp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-over-udp-cfg"; + prefix mpls-over-udp-cfg; + + 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 mpls-over-udp package configuration. + + This module contains definitions + for the following management objects: + hardware-module-pdfib: PD FIB configuration + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-15 { + description + "Schema added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container hardware-module-pdfib { + description + "PD FIB configuration"; + leaf mpls-over-udp-decap { + type empty; + description + "PD FIB Feature RFC 7510 MPLS-over-UDP decap"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ping-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ping-act.yang new file mode 100644 index 000000000..683ea897a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-ping-act.yang @@ -0,0 +1,1005 @@ +module Cisco-IOS-XR-mpls-ping-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-ping-act"; + prefix mpls-ping-act; + + import ietf-inet-types { + prefix inet; + } + 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 mpls ping action package configuration + + Copyright (c) 2020-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-27 { + description + "Added missing descriptions"; + semver:module-version "1.0.0"; + } + revision 2021-04-05 { + description + "Added range values for lsp-id and pseudowire leaf values"; + } + revision 2021-03-25 { + description + "Added IP netmask leaf for MPLS and SR ping"; + } + revision 2021-02-03 { + description + "Range added for EXP leaf"; + } + revision 2021-01-26 { + description + "Changed Pad leaf to Hexadecimal String"; + } + revision 2020-06-13 { + description + "Initial revision."; + } + + typedef mpls-fec-type { + type enumeration { + enum "bgp" { + description + "MPLS BGP FEC"; + } + enum "generic" { + description + "MPLS Generic FEC"; + } + enum "ldp" { + description + "MPLS LDP FEC"; + } + } + description + "MPLS Forwarding Equivalence Class type"; + } + + typedef sr-fec-type { + type enumeration { + enum "bgp" { + description + "SR IGP BGP FEC"; + } + enum "ospf" { + description + "SR IGP OSPF FEC"; + } + enum "isis" { + description + "SR IGP ISIS FEC"; + } + } + description + "SR Forwarding Equivalence Class type"; + } + + typedef request-reply-mode { + type enumeration { + enum "ipv4" { + description + "Reply Mode IPv4"; + } + enum "no-reply" { + description + "Reply Mode No Reply"; + } + enum "router-alert" { + description + "Reply Mode Router Alert"; + } + } + description + "Reply mode"; + } + + rpc mpls-ping { + description + "Send echo messages"; + input { + choice ping-type { + mandatory true; + description + "Specify ping type"; + case type-mpls { + container mpls { + description + "MPLS ping"; + choice mpls-subtype { + mandatory true; + description + "Ping MPLS subtype"; + case subtype-ipv4 { + container ipv4 { + description + "Ping mpls IPv4 address"; + leaf ip { + type inet:ipv4-address; + mandatory true; + description + "destination X.X.X.X of mpls ping"; + } + choice subnet { + mandatory true; + description + "The subnet to be specified as a prefix-length or as + a netmask."; + case prefix-length { + leaf prefix-length { + type uint8 { + range "0..32"; + } + default "32"; + description + "The length of the subnet prefix."; + } + } + case netmask { + leaf netmask { + type inet:ipv4-address; + description + "The subnet specified as a netmask"; + } + } + } + leaf fec-type { + type mpls-fec-type; + description + "TLV FEC type to use in request"; + } + } + } + case subtype-traffic-eng { + container traffic-eng { + description + "MPLS-TE ping"; + choice tunnel-identifier { + mandatory true; + description + "Tunnel Identifier (LSP name or tunnel-interface)"; + case subtype-tunnel-name { + leaf tunnel-name { + type string; + description + "Next hop tunnel lsp name"; + } + } + case subtype-tunnel-interface { + leaf tunnel-interface { + type string; + description + "Next hop Interface with form tunnel-te"; + } + } + } + choice te-lsp-option { + default "te-lsp-option-active"; + description + "Specify which LSP to use"; + case te-lsp-option-active { + leaf active-lsp { + type boolean; + default "true"; + description + "Enforce active LSP selection for tunnel"; + } + } + case te-lsp-option-id { + leaf lsp-id { + type uint32 { + range "1..10000"; + } + default "1"; + description + "Tunnel Label Switched Path Identifier"; + } + } + case te-lsp-option-path-protected { + leaf path-protected { + type boolean; + description + "Test path protected LSP for tunnel"; + } + } + case te-lsp-option-reoptimized { + leaf reoptimized { + type boolean; + description + "Test reoptimized LSP for tunnel"; + } + } + } + } + } + } + } + } + case type-sr { + container sr-mpls { + description + "Ping sr-mpls"; + choice sr-target { + description + "Ping sr-mpls target type"; + case target_ipv4_prefix { + container ipv4 { + description + "Ping sr-mpls IPv4 Prefix SID"; + leaf ip { + type inet:ipv4-address; + mandatory true; + description + "SR LSP Egress IP"; + } + choice subnet { + mandatory true; + description + "The subnet to be specified as a prefix-length or as + a netmask."; + case prefix-length { + leaf prefix-length { + type uint8 { + range "0..32"; + } + default "32"; + description + "The length of the subnet prefix."; + } + } + case netmask { + leaf netmask { + type inet:ipv4-address; + description + "The subnet specified as a netmask"; + } + } + } + leaf fec-type { + type sr-fec-type; + description + "SR OAM IGP FEC TLV type to use in request"; + } + } + } + case target_labels { + container labels { + description + "Ping sr-mpls label stack (up to 12 labels)"; + list label { + key "index"; + description + "Specify label index and value"; + leaf index { + type uint32 { + range "0..9"; + } + mandatory true; + description + "Label index"; + } + leaf label { + type uint32 { + range "16..1048575"; + } + mandatory true; + description + "label value"; + } + } + leaf nil-fec { + type boolean; + description + "Use Nil-FEC TLV and Append Explicit Null"; + } + leaf lsp-endpoint { + type inet:ipv4-address; + description + "Specify the IP of the LSP endpoint"; + } + } + } + case target_policy { + container policy { + description + "Ping sr-mpls policy"; + choice sr-policy-id { + mandatory true; + description + "SR Policy Identifier (binding sid or policy name)"; + case sr-policy-id-bsid { + leaf bsid { + type uint32 { + range "16..1048575"; + } + mandatory true; + description + "SR Policy Binding SID"; + } + } + case sr-policy-id-name { + leaf name { + type string; + mandatory true; + description + "SR Policy Name"; + } + } + } + leaf fec-type { + type sr-fec-type; + description + "SR OAM IGP FEC TLV type to use in request"; + } + leaf nil-fec { + type boolean; + description + "Use Nil-FEC TLV and Append Explicit Null"; + } + leaf lsp-endpoint { + type inet:ipv4-address; + description + "Specify the IP of the LSP endpoint"; + } + } + } + } + } + } + case type-pseudowire { + container pseudowire { + description + "Ping mpls pseudowire"; + choice pw-type { + description + "Ping mpls pseudowire type"; + case type-fec-128 { + container fec-128 { + description + "FEC 128"; + leaf remote-pe-addr { + type inet:ipv4-address; + mandatory true; + description + "PW LSP Egress IPv4 Identifier"; + } + leaf pwid { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Pseudowire Identifier"; + } + leaf deprecated-fec128 { + type boolean; + description + "Force the use of the Deprecated FEC128 described in RFC4379"; + } + container force-control-channel { + description + "Force the use of a VCCV control channel"; + choice force-control-channel-fec128 { + description + "Force control channel type"; + case fcc-128-cw { + leaf control-word { + type boolean; + description + "Force Control Word"; + } + } + case fcc-128-ralabel { + leaf ra-label { + type boolean; + description + "RA Label"; + } + } + case fcc-128-ttl-expiry { + leaf ttl-expiry { + type boolean; + description + "VC Label TTL expiry"; + } + } + } + } + } + } + case type-multisegment { + container multisegment { + description + "Ping mpls pseudowire multisegment"; + leaf remote-pe-addr { + type inet:ipv4-address; + mandatory true; + description + "PW LSP Egress IPv4 Identifier"; + } + leaf pwid { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Pseudowire Identifier"; + } + leaf deprecated-fec128 { + type boolean; + description + "Force the use of the Deprecated FEC128 described in RFC4379"; + } + container destination-fec { + description + "Destination FEC "; + leaf sender-ip { + type inet:ipv4-address; + mandatory true; + description + "Sender address for Destination FEC"; + } + leaf remote-ip { + type inet:ipv4-address; + mandatory true; + description + "Remote address for Destination FEC"; + } + leaf destination-fec-pw-id { + type uint32; + mandatory true; + description + "Destination FEC Pseudowire ID"; + } + } + container force-control-channel { + description + "Force the use of a VCCV control channel"; + choice force-control-channel-mspw { + description + "Force Control Channel type"; + case fcc-mspw-cw { + leaf control-word { + type boolean; + description + "Force Control Word"; + } + } + case fcc-mspw-ttl-expiry { + leaf ttl-expiry { + type boolean; + description + "VC Label TTL expiry"; + } + } + } + } + leaf segment-count { + type uint32 { + range "1..255"; + } + description + "Segement Count for Destination FEC"; + } + } + } + case type-fec-129 { + container fec-129 { + description + "FEC 129"; + choice fec-129-type { + description + "FEC 129 Attachement Identifier Type"; + case fec-129-aii-type1 { + container aii-type1 { + description + "Type 1 Attachment Identifier"; + container vpls-id { + description + "VPLS ID of the bridge domain"; + choice vpls-id-type { + description + "VPLS ID type"; + case vpls-id-2-byte-as { + container byte-as { + description + "Two Byte AS number"; + leaf byte { + type uint16 { + range "1..65535"; + } + mandatory true; + description + "VPLS Byte ID"; + } + leaf space { + type uint32; + mandatory true; + description + "Namespace"; + } + } + } + case vpls-id-ip { + container ip-prefix-as { + description + "IP address"; + leaf ip-prefix { + type inet:ipv4-address; + mandatory true; + description + "VPLS IP Prefix ID"; + } + leaf space { + type uint32 { + range "0..32767"; + } + mandatory true; + description + "Namespace"; + } + } + } + } + } + leaf target { + type inet:ipv4-address; + mandatory true; + description + "L2VPN router-id of the target"; + } + } + } + case fec-129-aii-type2 { + container aii-type2 { + description + "Type 2 Attachment Identifier"; + leaf global-id { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Global ID of the pseudowire"; + } + leaf target { + type inet:ipv4-address; + mandatory true; + description + "Target end address of the pseudowire"; + } + leaf circuit-id { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Attachment Circuit ID"; + } + } + } + } + container force-control-channel { + description + "Force the use of a VCCV control channel"; + choice force-control-channel-fec129 { + description + "Force Control Channel type"; + case fcc-129-cw { + leaf control-word { + type boolean; + description + "Force Control Word"; + } + } + case fcc-129-ralabel { + leaf ra-label { + type boolean; + description + "RA Label"; + } + } + case fcc-129-ttl-expiry { + leaf ttl-expiry { + type boolean; + description + "VC Label TTL expiry"; + } + } + } + } + } + } + } + } + } + } + container request-options-parameters { + description + "MPLS echo request options"; + leaf exp { + type uint8 { + range "0..7"; + } + description + "EXP Bits To Set"; + } + leaf fec { + type boolean; + description + "Force FEC TLV Checks"; + } + leaf interval { + type uint32 { + range "0..3600000"; + } + description + "Time between echo requests in ms"; + } + leaf ddmap { + type boolean; + description + "Use DDMAP (Default is DSMAP)"; + } + leaf force-explicit-null { + type boolean; + description + "Force an explicit null label to be added"; + } + container packet-output { + description + "Packet output options"; + leaf interface-name { + type xr:Interface-name; + description + "Outgoing interface with form R/S/I/P for echo packet"; + } + leaf next-hop { + type inet:ipv4-address; + description + "Outgoing next hop IP (X.X.X.X) for echo packet"; + } + } + leaf pad { + type xr:Hex-integer-16; + description + "HEX Padding 0-ffff"; + } + leaf repeat { + type uint32 { + range "1..2147483647"; + } + default "5"; + description + "Number of echo requests to send"; + } + container reply { + description + "Echo Reply Options"; + leaf dscp { + type uint8 { + range "0..63"; + } + description + "Set DSCP reply value 0-63 (decimal)"; + } + leaf reply-mode { + type request-reply-mode; + description + "Echo Reply Mode"; + } + leaf pad-tlv { + type boolean; + description + "Enable PAD TLV for the request"; + } + } + leaf size { + type uint16 { + range "100..17986"; + } + description + "Define Packet Size for the request"; + } + leaf source { + type inet:ipv4-address; + description + "Source IP address to use in the IP header"; + } + leaf destination { + type inet:ipv4-address; + description + "Destination IP address (127.x.y.z)"; + } + container sweep { + description + "Echo request sweep options"; + leaf minimum { + type uint32 { + range "100..17986"; + } + mandatory true; + description + "Sweep min value"; + } + leaf maximum { + type uint32 { + range "100..17986"; + } + mandatory true; + description + "Sweep max value"; + } + leaf increment { + type uint32 { + range "1..8993"; + } + mandatory true; + description + "Sweep incr value"; + } + } + leaf brief { + type boolean; + description + "Brief mode. Does not include statistical data in result"; + } + leaf timeout { + type uint32 { + range "0..3600"; + } + description + "Time in seconds before the lack of a reply invalidates a request"; + } + leaf ttl { + type uint32 { + range "1..255"; + } + description + "Time to live (hops to until forced punt)"; + } + } + } + output { + container mpls-ping-response { + description + "MPLS ping Response"; + container request-options-parameters { + description + "Echo Request Options"; + leaf exp { + type uint8 { + range "0..7"; + } + description + "EXP Bits To Set"; + } + leaf fec { + type boolean; + description + "Force FEC TLV Checks"; + } + leaf interval { + type uint32 { + range "0..3600000"; + } + description + "Time between echo requests in ms"; + } + leaf ddmap { + type boolean; + description + "Use DDMAP (Default is DSMAP)"; + } + leaf force-explicit-null { + type boolean; + description + "Force an explicit null label to be added"; + } + container packet-output { + description + "Packet output options"; + leaf interface-name { + type xr:Interface-name; + description + "Outgoing interface with form R/S/I/P for echo packet"; + } + leaf next-hop { + type inet:ipv4-address; + description + "Outgoing next hop IP (X.X.X.X) for echo packet"; + } + } + leaf pad { + type xr:Hex-integer-16; + description + "HEX Padding 0-ffff"; + } + leaf repeat { + type uint32 { + range "1..2147483647"; + } + default "5"; + description + "Number of echo requests to send"; + } + container reply { + description + "Reply options"; + leaf dscp { + type uint8 { + range "0..63"; + } + description + "Set DSCP reply value 0-63 (decimal)"; + } + leaf reply-mode { + type request-reply-mode; + description + "Echo Reply Mode"; + } + leaf pad-tlv { + type boolean; + description + "Enable PAD TLV for the request"; + } + } + leaf size { + type uint16 { + range "100..17986"; + } + description + "Define Packet Size for the request"; + } + leaf source { + type inet:ipv4-address; + description + "Source IP address to use in the IP header"; + } + leaf destination { + type inet:ipv4-address; + description + "Destination IP address (127.x.y.z)"; + } + container sweep { + description + "Echo request sweep options"; + leaf minimum { + type uint32 { + range "100..17986"; + } + mandatory true; + description + "Sweep min value"; + } + leaf maximum { + type uint32 { + range "100..17986"; + } + mandatory true; + description + "Sweep max value"; + } + leaf increment { + type uint32 { + range "1..8993"; + } + mandatory true; + description + "Sweep incr value"; + } + } + leaf brief { + type boolean; + description + "Brief mode. Does not include statistical data in result"; + } + leaf timeout { + type uint32 { + range "0..3600"; + } + description + "Time in seconds before the lack of a reply invalidates a request"; + } + leaf ttl { + type uint32 { + range "1..255"; + } + description + "Time to live (hops to until forced punt)"; + } + } + container replies { + description + "MPLS ping replies"; + list reply { + key "reply-index"; + description + "MPLS ping reply"; + leaf reply-index { + type uint64 { + range "1..2147483647"; + } + description + "Index of the reply list"; + } + leaf return-code { + type uint8; + description + "Return Code of the echo request"; + } + leaf return-char { + type string; + description + "Return Char of the echo request"; + } + leaf duration { + type uint32; + description + "Trip duration (msec)"; + } + leaf reply-addr { + type string; + description + "Reply Address"; + } + leaf size { + type uint32; + description + "Packet size"; + } + } + } + container statistics { + description + "Statistics Response"; + leaf tmin { + type uint32; + description + "Minimum Trip Duration"; + } + leaf tmax { + type uint32; + description + "Maximum Trip Duration"; + } + leaf tavg { + type uint32; + description + "Average Trip Duration"; + } + leaf hits { + type uint32; + description + "Number of successful ping requests sent"; + } + leaf tries { + type uint32; + description + "Number of ping requests sent"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-cfg.yang new file mode 100644 index 000000000..d99e05642 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-cfg.yang @@ -0,0 +1,486 @@ +module Cisco-IOS-XR-mpls-static-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-static-cfg"; + prefix mpls-static-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 mpls-static package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-static-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + mpls-static: MPLS Static Configuration Data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-05 { + description + "Added support for disabling default route for resolve nexthops globally."; + semver:module-version "3.1.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-static-path { + type enumeration { + enum "pop-and-lookup" { + value 1; + description + "Pop and Lookup"; + } + enum "cross-connect" { + value 2; + description + "Crossconnect"; + } + } + description + "Mpls static path"; + } + + typedef Mpls-static-address-family { + type enumeration { + enum "ipv4-unicast" { + value 1; + description + "IPv4 Unicast"; + } + } + description + "Mpls static address family"; + } + + typedef Mpls-static-label-mode { + type enumeration { + enum "per-vrf" { + value 1; + description + "Per VRF"; + } + enum "per-prefix" { + value 2; + description + "Per Prefix"; + } + enum "lsp" { + value 3; + description + "Cross connect"; + } + } + description + "Mpls static label mode"; + } + + typedef Mpls-static-path-role { + type enumeration { + enum "primary" { + value 0; + description + "Path is only for primary traffic"; + } + enum "backup" { + value 1; + description + "Path is only for backup traffic"; + } + enum "primary-backup" { + value 2; + description + "Path is for primary and backup traffic"; + } + } + description + "Mpls static path role"; + } + + typedef Mpls-static-nh-address-family { + type enumeration { + enum "none" { + value 0; + description + "No Next Hop"; + } + enum "ipv4" { + value 1; + description + "IPv4 Next Hop"; + } + enum "ipv6" { + value 2; + description + "IPv6 Next Hop"; + } + } + description + "Mpls static nh address family"; + } + + typedef Mpls-static-nh-mode { + type enumeration { + enum "configured" { + value 0; + description + "Explicitly configured next hop path"; + } + enum "resolve" { + value 1; + description + "Resolvable next hop which will result in a path + set"; + } + } + description + "Mpls static nh mode"; + } + + typedef Mpls-static-out-label-types { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "out-label" { + value 1; + description + "OutLabel"; + } + enum "pop" { + value 2; + description + "Pop"; + } + enum "exp-null" { + value 3; + description + "IPv4 explicit-null"; + } + enum "ipv6-explicit-null" { + value 4; + description + "IPv6 explicit-null"; + } + } + description + "Mpls static out label types"; + } + + grouping PATH { + description + "Common node of paths, backup-paths"; + list path { + key "path-id"; + description + "Path Information"; + leaf path-id { + type uint32 { + range "1..16"; + } + description + "Number of paths"; + } + leaf path-type { + type Mpls-static-path; + mandatory true; + description + "Type of Path (PopAndLookup, CrossConnect)"; + } + leaf label-type { + type Mpls-static-out-label-types; + mandatory true; + description + "Type of label (Outlabel, ExpNull or Pop)"; + } + leaf next-hop-label { + type uint32 { + range "16..1048575"; + } + description + "Outgoing/NH Label"; + } + leaf next-hop-address { + type inet:ip-address-no-zone; + description + "Next Hop IP Address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Next hop Interface with form R/S/I/P"; + } + leaf afi { + type Mpls-static-nh-address-family; + mandatory true; + description + "Next hop Address Family"; + } + leaf metric { + type uint32 { + range "0..254"; + } + mandatory true; + description + "NH Path Metric"; + } + leaf nh-mode { + type Mpls-static-nh-mode; + mandatory true; + description + "Next hop mode"; + } + leaf path-role { + type Mpls-static-path-role; + description + "Path Role"; + } + leaf backup-id { + type uint32 { + range "0..16"; + } + description + "Backup ID"; + } + } + } + + grouping LOCAL-LABEL-TABLE { + description + "Common node of af, top-label-hash"; + container local-labels { + description + "Local Label"; + list local-label { + key "local-label-id"; + description + "Specify Local Label"; + container label-type { + description + "MPLS Static Local Label Value"; + leaf label-mode { + type Mpls-static-label-mode; + description + "Label Mode (PerVRF, PerPrefix or LSP)"; + } + leaf prefix { + type inet:ip-address-no-zone; + description + "Address (IPv4/6 depending on AFI)"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + } + leaf local-label-id { + type uint32 { + range "16..1048575"; + } + description + "Local Label"; + } + uses PATH-TABLE; + } + } + } + + grouping LABEL-SWITCHED-PATH-TABLE { + description + "Common node of default-vrf, vrf"; + container label-switched-paths { + description + "Table of the Label Switched Paths"; + list label-switched-path { + key "lsp-name"; + description + "Label Switched Path"; + container backup-paths { + description + "Backup Path Parameters"; + uses PATH; + } + container in-label { + description + "MPLS Static Local Label Value"; + leaf in-label-value { + type uint32 { + range "16..1048575"; + } + description + "Local Label"; + } + leaf label-mode { + type Mpls-static-label-mode; + description + "Label Mode (PerVRF, PerPrefix or LSP)"; + } + leaf prefix { + type inet:ip-address-no-zone; + description + "Address (IPv4/6 depending on AFI)"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf tlh-mode { + type boolean; + description + "Top Label Hashing Mode"; + } + } + leaf lsp-name { + type xr:Cisco-ios-xr-string; + description + "LSP Name"; + } + uses RESOLVE-OPTIONS; + uses PATH-TABLE; + } + } + } + + grouping RESOLVE-OPTIONS { + description + "Common node of default-vrf, label-switched-path"; + container resolve-options { + description + "Resolve Nexthop Options"; + leaf disable-default-route { + type empty; + description + "Disable RIB Default Route"; + } + } + } + + grouping PATH-TABLE { + description + "Common node of local-label, label-switched-path"; + container paths { + description + "Forward Path Parameters"; + uses PATH; + } + } + + grouping AF-TABLE { + description + "Common node of default-vrf, vrf"; + container afs { + description + "Address Family Table"; + list af { + key "afi"; + description + "Address Family"; + container top-label-hash { + description + "Top Label Hash"; + uses LOCAL-LABEL-TABLE; + } + leaf afi { + type Mpls-static-address-family; + description + "Address Family"; + } + uses LOCAL-LABEL-TABLE; + } + } + } + + container mpls-static { + presence "CLI submode compatibility."; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-static-cfg.yang which will + provide the compatible functionalities. MPLS + Static Configuration Data"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "VRF Name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses LABEL-SWITCHED-PATH-TABLE; + uses AF-TABLE; + } + } + container interfaces { + description + "MPLS Static Interface Table"; + list interface { + key "interface-name"; + description + "MPLS Static Interface Enable"; + leaf interface-name { + type xr:Interface-name; + description + "Name of Interface"; + } + } + } + container default-vrf { + description + "Default VRF"; + uses LABEL-SWITCHED-PATH-TABLE; + uses RESOLVE-OPTIONS; + uses AF-TABLE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper-sub1.yang new file mode 100644 index 000000000..a2103f4d1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper-sub1.yang @@ -0,0 +1,534 @@ +submodule Cisco-IOS-XR-mpls-static-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-static-oper { + prefix Cisco-IOS-XR-mpls-static-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-static package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-29 { + description + "Adding Label and RW Op thread filters and counts."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mgmt-mpls-static-path-status { + type enumeration { + enum "path-next-hop-none" { + description + "Path NextHop No Status"; + } + enum "path-next-hop-interface-down" { + description + "Path NextHop Interface Down "; + } + enum "path-next-hop-valid" { + description + "Path NextHop Valid"; + } + enum "resolve-failed" { + description + "Path NextHop Resolve Failed"; + } + enum "frr-backup" { + description + "FRR Backup"; + } + enum "backup" { + description + "Backup"; + } + } + description + "Mgmt mpls static path status"; + } + + typedef Mgmt-static-lsp-afi { + type enumeration { + enum "not-applicable" { + value 0; + description + "Not Applicable"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Mgmt static lsp afi"; + } + + typedef Mpls-static-path-role { + type enumeration { + enum "primary" { + description + "Path is only for primary traffic"; + } + enum "backup" { + description + "Path is only for backup traffic"; + } + enum "primary-and-backup" { + description + "Path is for primary and backup traffic"; + } + } + description + "Mpls static path role"; + } + + typedef Mgmt-static-path { + type enumeration { + enum "cross-connect-path" { + description + "Crossconnect Path"; + } + enum "pop-lookup-path" { + description + "Pop and Lookup Path"; + } + } + description + "Mgmt static path"; + } + + typedef Static-ipv6-address { + type inet:ipv6-address; + description + "Static ipv6 address"; + } + + typedef Mgmt-static-addr { + type enumeration { + enum "not-applicable" { + value 0; + description + "Not Applicable"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Mgmt static addr"; + } + + typedef Mgmt-mpls-static-label-status { + type enumeration { + enum "not-created" { + description + "Label Not Created"; + } + enum "vrf-down" { + description + "Label without active VRF"; + } + enum "rewrite-vrf-down" { + description + "Rewrite without active VRF"; + } + enum "lsd-disconnected" { + description + "LSD is disconnected"; + } + enum "lsd-failed" { + description + "LSD operation failed"; + } + enum "wait-for-lsd-reply" { + description + "Waiting for LSD operation"; + } + enum "label-created" { + description + "Label Created"; + } + enum "label-create-failed" { + description + "Label Creation Failed"; + } + enum "label-rewrite-failed" { + description + "Rewrite Creation Failed"; + } + enum "rewrite-next-hop-interface-down" { + description + "Rewrite NextHop Down "; + } + enum "label-discrepancy" { + description + "Label Discrepancy "; + } + enum "rewrite-discrepancy" { + description + "Rewrite Discrepancy "; + } + enum "rewrite-nexthop-unresolved" { + description + "Rewrite Nexthop Unresolved"; + } + enum "label-status-unknown" { + description + "Label Status Unknown"; + } + } + description + "Mgmt mpls static label status"; + } + + typedef Mgmt-mpls-static-label-mode { + type enumeration { + enum "none" { + description + "No Label Mode"; + } + enum "per-prefix" { + description + "Per-prefix Label"; + } + enum "per-vrf" { + description + "Per-VRF label"; + } + enum "cross-connect" { + description + "Label with crossconnect"; + } + } + description + "Mgmt mpls static label mode"; + } + + grouping MPLS-STATIC-SUMMARY { + description + "Summary Information"; + leaf lsp-count { + type uint32; + description + "Total Number of LSPs"; + } + leaf label-count { + type uint32; + description + "Total Number of Labels"; + } + leaf label-error-count { + type uint32; + description + "Total Number of Labels with Errors"; + } + leaf label-discrepancy-count { + type uint32; + description + "Total Number of Labels with Discrepancies"; + } + leaf vrf-count { + type uint32; + description + "Total Number of VRF configured"; + } + leaf active-vrf-count { + type uint32; + description + "Total Number of Active VRF Active"; + } + leaf interface-count { + type uint32; + description + "Total Number of Interface"; + } + leaf interface-foward-reference-count { + type uint32; + description + "Total Number of Active Interface"; + } + leaf mpls-enabled-interface-count { + type uint32; + description + "Total Number of MPLS enabled Interface"; + } + leaf ipv4-res-nh-count { + type uint32; + description + "Total Number of IPv4 ResolveNextHops"; + } + leaf ipv6-res-nh-count { + type uint32; + description + "Total Number of IPv6 ResoleNextHops"; + } + leaf lsd-connected { + type boolean; + description + "LSD connection is up"; + } + leaf im-connected { + type boolean; + description + "IM is connected"; + } + leaf rsi-connected { + type boolean; + description + "RSI is connected"; + } + leaf ribv4-connected { + type boolean; + description + "RIBv4 is connected"; + } + leaf ribv6-connected { + type boolean; + description + "RIBv6 is connected"; + } + leaf lsd-label-operations-count { + type uint32; + description + "Pending LSD Label Operations"; + } + leaf lsd-rewrite-operations-count { + type uint32; + description + "Pending LSD Rewrite Operations"; + } + } + + grouping MPLS-STATIC-LSP-PATH-NH-INFO { + description + "Path Nexthop Info"; + container address { + description + "Next-Hop IP Address"; + uses MPLS-STATIC-CTX-PREFIX-BAG; + } + leaf label { + type uint32; + description + "Next-Hop Label"; + } + leaf interface-name { + type string; + description + "Next-Hop Interface Name"; + } + leaf afi { + type Mgmt-static-lsp-afi; + description + "Next-Hop AFI"; + } + } + + grouping MPLS-STATIC-LSP-PATH-INFO { + description + "Path Info"; + container nexthop { + description + "Nexthop information"; + uses MPLS-STATIC-LSP-PATH-NH-INFO; + } + leaf path-number { + type uint32; + description + "Path Number"; + } + leaf type { + type Mgmt-static-path; + description + "Path Type"; + } + leaf path-role { + type Mpls-static-path-role; + description + "Path Role"; + } + leaf path-id { + type uint8; + description + "Path Id"; + } + leaf backup-id { + type uint8; + description + "Path Backup Id"; + } + leaf status { + type Mgmt-mpls-static-path-status; + description + "Path Status"; + } + } + + grouping MPLS-STATIC-CTX-PREFIX-BAG { + description + "MPLS STATIC CTX PREFIX BAG"; + leaf af-name { + type Mgmt-static-addr; + description + "AFName"; + } + leaf ipv4-prefix { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 context"; + } + leaf ipv6-prefix { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Static-ipv6-address; + description + "IPv6 context"; + } + } + + grouping MPLS-STATIC-LBL-PREFIX-INFO { + description + "Prefix Information"; + container prefix { + description + "Prefix"; + uses MPLS-STATIC-CTX-PREFIX-BAG; + } + leaf prefix-length { + type uint8; + description + "Prefix length"; + } + } + + grouping MPLS-STATIC-LBL-INFO { + description + "Static Label and Prefix information"; + container prefix { + description + "Prefix Information"; + uses MPLS-STATIC-LBL-PREFIX-INFO; + } + container pathset-resolve-nh { + description + "Primary pathset resolve-nexthop IP Address"; + uses MPLS-STATIC-CTX-PREFIX-BAG; + } + container backup-pathset-resolve-nh { + description + "Backup pathset resolve-nexthop IP Address"; + uses MPLS-STATIC-CTX-PREFIX-BAG; + } + leaf label { + type uint32; + description + "Label value"; + } + leaf label-mode { + type Mgmt-mpls-static-label-mode; + description + "Label Mode"; + } + leaf label-status { + type Mgmt-mpls-static-label-status; + description + "Label Status"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf pathset-via-resolve { + type boolean; + description + "Primary Pathset as a result of resolve"; + } + leaf backup-pathset-via-resolve { + type boolean; + description + "Backup Pathset as a result of resolve"; + } + leaf address-family { + type Mgmt-static-addr; + description + "Address Family"; + } + list path-info { + description + "Path Information"; + uses MPLS-STATIC-LSP-PATH-INFO; + } + list backup-path-info { + description + "Backup Path Information"; + uses MPLS-STATIC-LSP-PATH-INFO; + } + } + + grouping MPLS-STATIC-LSP-INFO { + description + "Static LSP information"; + container label { + description + "Label Information"; + uses MPLS-STATIC-LBL-INFO; + } + leaf lsp-name-xr { + type string; + description + "LSP Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper.yang new file mode 100644 index 000000000..3ec63b311 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-static-oper.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-mpls-static-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-static-oper"; + prefix mpls-static-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-static-oper-sub1 { + revision-date 2022-03-29; + } + + 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 mpls-static package operational data. + + This module contains definitions + for the following management objects: + mpls-static: MPLS STATIC operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-29 { + description + "Adding Label and RW Op thread filters and counts."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LOCAL-LABEL-TABLE { + description + "Common node of mpls-static, vrf"; + container local-labels { + description + "data for static local-label table"; + list local-label { + key "local-label-id"; + description + "Data for static label"; + leaf local-label-id { + type uint32 { + range "16..1048575"; + } + description + "Local Label"; + } + uses MPLS-STATIC-LBL-INFO; + } + } + } + + container mpls-static { + config false; + description + "MPLS STATIC operational data"; + container vrfs { + description + "VRF table"; + list vrf { + key "vrf-name"; + description + "VRF Name"; + container lsps { + description + "data for static lsp table"; + list lsp { + key "lsp-name"; + description + "Data for static lsp"; + leaf lsp-name { + type xr:Cisco-ios-xr-string; + description + "LSP Name"; + } + uses MPLS-STATIC-LSP-INFO; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + uses LOCAL-LABEL-TABLE; + } + } + container summary { + description + "MPLS STATIC summary data"; + uses MPLS-STATIC-SUMMARY; + } + uses LOCAL-LABEL-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-act.yang new file mode 100644 index 000000000..28828df48 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-act.yang @@ -0,0 +1,117 @@ +module Cisco-IOS-XR-mpls-te-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-te-act"; + prefix mpls-te-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 mpls traffic-eng action commands. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-23 { + description + "IOS XR 7.5.4 revision."; + semver:module-version "1.0.0"; + } + + rpc clear-lsp-counters-all { + description + "clear mpls traffic-eng signaling counters for all tunnels"; + csc:xr-task "mpls-te"; + csc:cli-command "clear mpls traffic-eng counters signaling all"; + } + rpc clear-lsp-counters-name { + description + "clear mpls traffic-eng signaling counters for a tunnel with given name"; + input { + leaf name { + type string; + mandatory true; + description + "Tunnel name"; + } + } + csc:xr-task "mpls-te"; + csc:cli-command "clear mpls traffic-eng counters signaling name "; + } + rpc reoptimize-lsp-all { + description + "Force an immediate reoptimization of all mpls traffic-eng tunnels"; + csc:xr-task "mpls-te"; + csc:cli-command "mpls traffic-eng reoptimize all"; + } + rpc reoptimize-lsp-name { + description + "Force an immediate reoptimization of a tunnel with given name"; + input { + leaf name { + type string; + mandatory true; + description + "Tunnel name"; + } + } + csc:xr-task "mpls-te"; + csc:cli-command "mpls traffic-eng reoptimize name "; + } + rpc resetup-lsp-all { + description + "Force an immediate tear down and setup of all mpls traffic-eng tunnels"; + csc:xr-task "mpls-te"; + csc:cli-command "mpls traffic-eng resetup all"; + } + rpc resetup-lsp-name { + description + "Force an immediate tear down and setup a tunnel with given name"; + input { + leaf name { + type string; + mandatory true; + description + "Tunnel name"; + } + } + csc:xr-task "mpls-te"; + csc:cli-command "mpls traffic-eng resetup name "; + } + rpc auto-bw-apply-all { + description + "Apply auto-bandwidth adjustment instantly on all mpls traffic-eng tunnels"; + csc:xr-task "mpls-te"; + csc:cli-command "mpls traffic-eng auto-bw apply all"; + } + rpc auto-bw-apply-name { + description + "Apply auto-bandwidth adjustment instantly on a tunnel with given name"; + input { + leaf name { + type string; + mandatory true; + description + "Tunnel name"; + } + } + csc:xr-task "mpls-te"; + csc:cli-command "mpls traffic-eng auto-bw apply name "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-cfg.yang new file mode 100644 index 000000000..2c179932e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-cfg.yang @@ -0,0 +1,7663 @@ +module Cisco-IOS-XR-mpls-te-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-te-cfg"; + prefix mpls-te-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a2; + } + + 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 mpls-te package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + mpls-te: The root of MPLS TE configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-snmp-agent-cfg + modules with configuration data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-17 + Added leaf sr-traffic-pct, and retry-timer + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-10-20 + Decreased BFD min interval value to 3ms + 2022-03-18 + Added self-ping under named-tunnels + 2021-11-18 + Added attribute sets for path-option under named-tunnels + 2021-10-13 + Added BFD and path protection support for named tunnels."; + semver:module-version "4.0.0"; + } + revision 2021-06-10 { + description + "Removal of leaf oor-recovery-duration and add back as grouping OOR-RECOVERY-DURATION, the grouping is used by multiple parents. add OOR-AVAILABLE-BANDWIDTH-PERCENTAGE add OOR-ACCEPT-LSP-MIN-BANDWIDTH add OOR-ACCEPT-REOPT-LSP add OOR-METRIC-TE-PENALTY add container lsp-oor-green-state add container backoff-timer add grouping OOR-RECOVERY-DURATION"; + semver:module-version "3.0.0"; + } + revision 2021-03-24 { + description + "Added enhancement of auto-tunnel backup capabilities to prevent circuit congestion + 2020-06-11 + new leaf mpls.traffic-eng.timers.backoff-timer"; + semver:module-version "2.2.0"; + } + revision 2020-03-28 { + description + "Added path retry timeout and path error message. + 2020-03-27 + Added PCE redundancy PCC-centric model support."; + semver:module-version "2.1.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes + 2019-09-30 + extra leaves in mpls.traffic-eng.attribute-set.auto-backup.logging.events.lsp-status + 2019-05-12 + Deprecated the native model, replaced by UM model."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-tesrlg-exclude { + type enumeration { + enum "mandatory" { + value 1; + description + "SRLG Mandatory Exclude"; + } + enum "preferred" { + value 2; + description + "SRLG Preferred Exclude"; + } + enum "weighted" { + value 3; + description + "SRLG Weighted Exclude"; + } + } + description + "Mpls tesrlg exclude"; + } + + typedef Mpls-te-affinity-value { + type enumeration { + enum "hex-value" { + value 1; + description + "Affinity value in Hex number"; + } + enum "bit-position" { + value 2; + description + "Affinity value by Bit-Position"; + } + } + description + "Mpls te affinity value"; + } + + typedef Mpls-te-uni-in-place-bit { + type enumeration { + enum "not-set" { + value 0; + description + "NOT SET"; + } + enum "set" { + value 8; + description + "SET"; + } + } + description + "Mpls te uni in place bit"; + } + + typedef Destination-list-name-length { + type string { + length "1..32"; + } + description + "Destination list name length"; + } + + typedef Route-priority-role { + type enumeration { + enum "route-priority-role-head-back-up" { + value 0; + description + "TE Route Priority Role Head Backup"; + } + enum "route-priority-role-head-primary" { + value 1; + description + "TE Route Priority Role Head Primary"; + } + enum "route-priority-role-middle" { + value 2; + description + "TE Route Priority Role Middle"; + } + } + description + "Route priority role"; + } + + typedef Mpls-percent-range { + type uint32 { + range "0..100"; + } + description + "Mpls percent range"; + } + + typedef Otn-signaled-bandwidth-flex-framing { + type enumeration { + enum "cbr" { + value 20; + description + "CBR"; + } + enum "framed-gfp-fixed" { + value 21; + description + "GFP fixed framing type"; + } + enum "framed-gfp-resize" { + value 22; + description + "GFP resizeable framing type"; + } + } + description + "Otn signaled bandwidth flex framing"; + } + + typedef Sr-prepend { + type enumeration { + enum "none-type" { + value 0; + description + "NoneType"; + } + enum "next-label" { + value 1; + description + "Next Label"; + } + enum "bgp-n-hop" { + value 2; + description + "BGP NHOP"; + } + } + description + "Sr prepend"; + } + + typedef Mpls-te-path-selection-tiebreaker { + type enumeration { + enum "min-fill" { + value 1; + description + "Prefer the path with the least-utilized links"; + } + enum "max-fill" { + value 2; + description + "Prefer the path with the most-utilized links"; + } + enum "random" { + value 3; + description + "Prefer a path with links utilized randomly"; + } + } + description + "Mpls te path selection tiebreaker"; + } + + typedef Attribute-set-name-length { + type string { + length "1..64"; + } + description + "Attribute set name length"; + } + + typedef Mpls-te-otn-aps-protection { + type enumeration { + enum "1plus1-unidir-no-aps" { + value 4; + description + "1PLUS1 UNIDIR NO APS"; + } + enum "1plus1-unidir-aps" { + value 8; + description + "1PLUS1 UNIDIR APS"; + } + enum "1plus1-bdir-aps" { + value 16; + description + "1PLUS1 BIDIR APS"; + } + } + description + "Mpls te otn aps protection"; + } + + typedef Ospf-area-mode { + type enumeration { + enum "ospf-int" { + value 0; + description + "OSPF area in integer format"; + } + enum "ospfip-addr" { + value 1; + description + "OSPF area in IP address format"; + } + } + description + "Ospf area mode"; + } + + typedef Mpls-te-path-option-property { + type enumeration { + enum "none" { + value 0; + description + "No property"; + } + enum "lockdown" { + value 1; + description + "Path is not a candidate for reoptimization"; + } + enum "verbatim" { + value 4; + description + "Explicit path does not require topology + database"; + } + enum "pce" { + value 8; + description + "Dynamic path found by PCE server"; + } + enum "segment-routing" { + value 16; + description + "Segment Routing path"; + } + enum "sticky" { + value 32; + description + "Force tunnel to remain on same path"; + } + } + description + "Mpls te path option property"; + } + + typedef Mpls-te-path-computation-method { + type enumeration { + enum "not-set" { + value 0; + description + "NotSet"; + } + enum "dynamic" { + value 1; + description + "Dynamic"; + } + enum "pce" { + value 2; + description + "PCE"; + } + enum "explicit" { + value 3; + description + "Explicit"; + } + } + description + "Mpls te path computation method"; + } + + typedef Mpls-te-signaled-label { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "dwdm" { + value 1; + description + "DWDM Label (RFC 6205), 50GHz channel spacing"; + } + } + description + "Mpls te signaled label"; + } + + typedef Mpls-tebfd-session { + type enumeration { + enum "regular-bfd" { + value 1; + description + "Regular BFD"; + } + enum "sbfd" { + value 2; + description + "Seamless BFD"; + } + enum "redundant-sbfd" { + value 3; + description + "Redundant SBFD"; + } + } + description + "Mpls tebfd session"; + } + + typedef Mpls-te-lsp-switch { + type enumeration { + enum "dcsc" { + value 0; + description + "Data channel switch capable"; + } + enum "lsc" { + value 1; + description + "Lambda switch capable"; + } + enum "fsc" { + value 2; + description + "Fiber switch capable"; + } + } + description + "Mpls te lsp switch"; + } + + typedef Mpls-te-path-option-xro { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "xro-attribute-set-type" { + value 1; + description + "Defined as attribute-set"; + } + } + description + "Mpls te path option xro"; + } + + typedef Otn-destination { + type enumeration { + enum "number-ed" { + value 0; + description + "Destination numbered"; + } + enum "un-number-ed" { + value 1; + description + "Destination unnumbered"; + } + } + description + "Otn destination"; + } + + typedef Mpls-te-tunnel-affinity { + type enumeration { + enum "include" { + value 1; + description + "Include Affinity"; + } + enum "include-strict" { + value 2; + description + "Strictly Include Affinity"; + } + enum "exclude" { + value 3; + description + "Exclude Affinity"; + } + enum "exclude-all" { + value 4; + description + "Exclude All Affinities"; + } + enum "ignore" { + value 5; + description + "Ignore Affinity"; + } + enum "include-any" { + value 6; + description + "Include Any Affinity"; + } + } + description + "Mpls te tunnel affinity"; + } + + typedef Otn-static-uni { + type enumeration { + enum "unknown" { + value 0; + description + "Uni-Type None"; + } + enum "xc" { + value 1; + description + "Uni-Type XC"; + } + enum "termination" { + value 2; + description + "Uni-Type Termination"; + } + } + description + "Otn static uni"; + } + + typedef Mpls-te-lsp-enc { + type enumeration { + enum "ethernet-type1" { + value 0; + description + "Ethernet Type1"; + } + enum "ethernet-type2" { + value 1; + description + "Ethernet Type2"; + } + enum "lambda" { + value 2; + description + "Lambda"; + } + enum "fiber" { + value 3; + description + "Fiber"; + } + } + description + "Mpls te lsp enc"; + } + + typedef Mpls-te-switching-cap { + type enumeration { + enum "psc1" { + value 1; + description + "PSC1"; + } + enum "lsc" { + value 150; + description + "LSC"; + } + enum "fsc" { + value 200; + description + "FSC"; + } + } + description + "Mpls te switching cap"; + } + + typedef Mpls-te-otn-aps-protection-mode { + type enumeration { + enum "revertive" { + value 1; + description + "Revertive"; + } + enum "non-revertive" { + value 2; + description + "Non Revertive"; + } + } + description + "Mpls te otn aps protection mode"; + } + + typedef Mpls-te-config-tunnel { + type enumeration { + enum "p2p" { + value 0; + description + "P2P"; + } + enum "p2mp" { + value 1; + description + "P2MP"; + } + } + description + "Mpls te config tunnel"; + } + + typedef Mpls-te-bfd-session-down-action { + type enumeration { + enum "re-setup" { + value 1; + description + "Tear down and resetup"; + } + } + description + "Mpls te bfd session down action"; + } + + typedef Mpls-te-log-frr-protection { + type enumeration { + enum "frr-active-primary" { + value 1; + description + "Track only FRR active on primary LSP"; + } + enum "backup" { + value 256; + description + "backup tunnel"; + } + enum "frr-ready-primary" { + value 512; + description + "Track only FRR ready on primary LSP"; + } + enum "primary" { + value 513; + description + "primary LSP"; + } + enum "all" { + value 769; + description + "all"; + } + } + description + "Mpls te log frr protection"; + } + + typedef Link-next-hop { + type enumeration { + enum "none" { + value 1; + description + "No next hop"; + } + enum "ipv4-address" { + value 2; + description + "IPv4 next-hop address"; + } + } + description + "Link next hop"; + } + + typedef Mpls-lcac-bandwidth-hold-timer-range { + type uint32 { + range "1..300"; + } + description + "Mpls lcac bandwidth hold timer range"; + } + + typedef Mpls-te-uni-required-bit { + type enumeration { + enum "not-set" { + value 0; + description + "NOT SET"; + } + enum "set" { + value 4; + description + "SET"; + } + } + description + "Mpls te uni required bit"; + } + + typedef Mpls-te-autoroute-metric { + type enumeration { + enum "relative" { + value 1; + description + "Relative"; + } + enum "absolute" { + value 2; + description + "Absolute"; + } + enum "constant" { + value 3; + description + "Constant"; + } + } + description + "Mpls te autoroute metric"; + } + + typedef Bandwidth-constraint { + type enumeration { + enum "bandwidth-constraint-maximum-allocation-model" { + value 1; + description + "Maximum Allocation Bandwidth Constaints Model"; + } + } + description + "Bandwidth constraint"; + } + + typedef Otn-payload { + type enumeration { + enum "unknown" { + value 0; + description + "Payload unknown"; + } + enum "bmp" { + value 50; + description + "Bmp Payload"; + } + enum "gfp-f" { + value 54; + description + "Gfp_F Payload"; + } + enum "gmp" { + value 55; + description + "GMP Payload"; + } + enum "gfp-f-ext" { + value 70; + description + "Gfp_F_EXT Payload"; + } + } + description + "Otn payload"; + } + + typedef Mpls-te-otn-snc-mode { + type enumeration { + enum "snc-n" { + value 1; + description + "SNC N"; + } + enum "snc-i" { + value 2; + description + "SNC I"; + } + enum "snc-s" { + value 3; + description + "SNC S"; + } + } + description + "Mpls te otn snc mode"; + } + + typedef Bfd-reverse-path { + type enumeration { + enum "bfd-reverse-path-binding-label" { + value 1; + description + "BindingLabel"; + } + } + description + "Bfd reverse path"; + } + + typedef Mpls-te-path-selection-metric { + type enumeration { + enum "igp" { + value 1; + description + "IGP Metric"; + } + enum "te" { + value 2; + description + "TE Metric"; + } + enum "delay" { + value 4; + description + "DELAY Metric"; + } + } + description + "Mpls te path selection metric"; + } + + typedef Mpls-te-path-option { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "dynamic" { + value 1; + description + "Dynamic"; + } + enum "explicit-name" { + value 3; + description + "Explicit, identified by name"; + } + enum "explicit-number" { + value 4; + description + "Explicit, identified by number"; + } + enum "no-ero" { + value 5; + description + "No ERO"; + } + enum "sr" { + value 6; + description + "Deprecated"; + } + } + description + "Mpls te path option"; + } + + typedef Mpls-lcac-flooding-igp { + type enumeration { + enum "ospf" { + value 0; + description + "OSPF"; + } + } + description + "Mpls lcac flooding igp"; + } + + typedef Otn-protection-switch-lockout { + type enumeration { + enum "none" { + value 0; + description + "No Lockout"; + } + enum "working" { + value 1; + description + "Lockout Working"; + } + } + description + "Otn protection switch lockout"; + } + + typedef Mpls-te-tunnel-id { + type enumeration { + enum "auto" { + value 0; + description + "Auto"; + } + enum "explicit" { + value 1; + description + "Explicit"; + } + } + description + "Mpls te tunnel id"; + } + + typedef Otn-signaled-bandwidth { + type enumeration { + enum "odu1" { + value 1; + description + "Signalled BW for ODU1"; + } + enum "odu2" { + value 2; + description + "Signalled BW for ODU2"; + } + enum "odu3" { + value 3; + description + "Signalled BW for ODU3"; + } + enum "odu4" { + value 4; + description + "Signalled BW for ODU4"; + } + enum "odu0" { + value 10; + description + "Signalled BW for ODU0"; + } + enum "odu2e" { + value 11; + description + "Signalled BW for ODU2e"; + } + enum "od-uflex-cbr" { + value 20; + description + "Signalled BW for ODUflex CBR"; + } + enum "od-uflex-gfp-resize" { + value 21; + description + "Signalled BW for ODUflex GFP Resizable"; + } + enum "od-uflex-gfp-not-resize" { + value 22; + description + "Signalled BW for ODUflex GFP not Resizable"; + } + enum "odu1e" { + value 23; + description + "Signalled BW for ODU1e"; + } + enum "odu1f" { + value 24; + description + "Signalled BW for ODU1f"; + } + enum "odu2f" { + value 25; + description + "Signalled BW for ODU2f"; + } + enum "odu3e1" { + value 26; + description + "Signalled BW for ODU3e1"; + } + enum "odu3e2" { + value 27; + description + "Signalled BW for ODU3e2"; + } + } + description + "Otn signaled bandwidth"; + } + + typedef Mpls-te-bandwidth-dste { + type enumeration { + enum "standard-dste" { + value 0; + description + "IETF-Standard DSTE"; + } + enum "pre-standard-dste" { + value 1; + description + "Pre-Standard DSTE"; + } + } + description + "Mpls te bandwidth dste"; + } + + typedef Mpls-te-path-selection-invalidation-timer-expire { + type enumeration { + enum "tunnel-action-tear" { + value 1; + description + "Tear down tunnel."; + } + enum "tunnel-action-drop" { + value 2; + description + "Drop tunnel traffic."; + } + } + description + "Mpls te path selection invalidation timer expire"; + } + + typedef Attribute-set-affinity-name-length { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Attribute set affinity name length"; + } + + typedef Mpls-te-path-diversity-conformance { + type enumeration { + enum "strict" { + value 0; + description + "Strict"; + } + enum "best-effort" { + value 1; + description + "Best effort"; + } + } + description + "Mpls te path diversity conformance"; + } + + typedef Mpls-te-uni-lsp-seg-flag { + type enumeration { + enum "unprotected" { + value 0; + description + "UNPROTECTED"; + } + enum "rerouting" { + value 1; + description + "REROUTING"; + } + enum "rerouting-no-et" { + value 2; + description + "REROUTING NO ET"; + } + enum "rerouting-one-to-n-et" { + value 4; + description + "REROUTING ONE TO N ET"; + } + enum "rerouting-one-plus-one-uni" { + value 8; + description + "REROUTING ONE PLUS ONE UNI"; + } + enum "rerouting-one-plus-one-bi" { + value 16; + description + "REROUTING ONE PLUS ONE BI"; + } + } + description + "Mpls te uni lsp seg flag"; + } + + typedef Mpls-lcac-flooding-threshold-percent-range { + type uint32 { + range "0..100"; + } + description + "Mpls lcac flooding threshold percent range"; + } + + typedef Ietf-mode { + type enumeration { + enum "standard" { + value 3; + description + "IETF Standard"; + } + } + description + "Ietf mode"; + } + + typedef Mpls-te-otn-aps-restoration-style { + type enumeration { + enum "keep-failed-lsp" { + value 1; + description + "Keep Failed Lsp"; + } + enum "delete-failed-lsp" { + value 2; + description + "Delete Failed Lsp"; + } + } + description + "Mpls te otn aps restoration style"; + } + + typedef Mpls-te-path-selection-segment-routing-adjacency-protection { + type enumeration { + enum "not-set" { + value 0; + description + "Any segment can be used in a path."; + } + enum "adj-unprotected" { + value 1; + description + "Only unprotected adjacency segments can be used + in a path."; + } + enum "adj-protected" { + value 2; + description + "Only protected adjacency segments can be used + in a path."; + } + } + description + "Mpls te path selection segment routing adjacency + protection"; + } + + typedef Gmplstti-mode { + type enumeration { + enum "sm" { + value 1; + description + "Section Monitoring"; + } + enum "pm" { + value 2; + description + "Path Monitoring"; + } + enum "tcm" { + value 3; + description + "Tandem Connection"; + } + } + description + "Gmplstti mode"; + } + + typedef Mpls-te-switching-encoding { + type enumeration { + enum "packet" { + value 1; + description + "Packet"; + } + enum "ethernet" { + value 2; + description + "Ethernet"; + } + enum "sondet-sdh" { + value 5; + description + "SONET SDH"; + } + } + description + "Mpls te switching encoding"; + } + + typedef Mpls-te-sig-name-option { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "address" { + value 1; + description + "Address"; + } + enum "name" { + value 2; + description + "Name"; + } + } + description + "Mpls te sig name option"; + } + + typedef Mpls-te-policy-class-range { + type uint32 { + range "1..8"; + } + description + "Mpls te policy class range"; + } + + typedef Mesh-group-id { + type uint32 { + range "0..4294967295"; + } + description + "Mesh group id"; + } + + typedef Path-invalidation-action { + type enumeration { + enum "tear" { + value 1; + description + "Tear"; + } + enum "drop" { + value 2; + description + "Drop"; + } + } + description + "Path invalidation action"; + } + + typedef Mpls-te-switching-index { + type union { + type enumeration { + enum "link" { + value 255; + description + "Link"; + } + } + type uint32 { + range "1..255"; + } + } + description + "Mpls te switching index"; + } + + typedef Mpls-te-igp-protocol { + type enumeration { + enum "none" { + value 0; + description + "Not set"; + } + enum "isis" { + value 1; + description + "IS IS"; + } + enum "ospf" { + value 2; + description + "OSPF"; + } + } + description + "Mpls te igp protocol"; + } + + typedef Binding-segment-id { + type enumeration { + enum "any-label" { + value 1; + description + "AnyLabel"; + } + enum "specified-label" { + value 2; + description + "SpecifiedLabel"; + } + } + description + "Binding segment id"; + } + + typedef Mpls-te-backup-bandwidth-pool { + type enumeration { + enum "any-pool" { + value 1; + description + "Any Pool"; + } + enum "global-pool" { + value 2; + description + "Global Pool"; + } + enum "sub-pool" { + value 4; + description + "Sub Pool"; + } + } + description + "Mpls te backup bandwidth pool"; + } + + typedef Mpls-te-switching-encode { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "packet" { + value 1; + description + "Packet"; + } + enum "ethernet" { + value 2; + description + "Ethernet"; + } + enum "sondet-sdh" { + value 5; + description + "SONET SDH"; + } + } + description + "Mpls te switching encode"; + } + + typedef Mpls-te-backup-bandwidth-class { + type enumeration { + enum "class0" { + value 0; + description + "Class 0"; + } + enum "class1" { + value 1; + description + "Class 1"; + } + enum "any-class" { + value 9; + description + "Any Class"; + } + } + description + "Mpls te backup bandwidth class"; + } + + typedef Mpls-te-path-option-protection { + type enumeration { + enum "active" { + value 0; + description + "Active path"; + } + enum "protecting" { + value 1; + description + "Protecting Path"; + } + } + description + "Mpls te path option protection"; + } + + typedef Mpls-te-bandwidth-limit { + type enumeration { + enum "unlimited" { + value 64; + description + "Unlimited"; + } + enum "limited" { + value 128; + description + "Limited"; + } + } + description + "Mpls te bandwidth limit"; + } + + grouping OOR-ACCEPT-REOPT-LSP { + description + "Common node of oor-green-state, oor-yellow-state, + oor-red-state, lsp-oor-green-state, + lsp-oor-yellow-state, lsp-oor-red-state"; + leaf oor-accept-reopt-lsp { + type empty; + description + "Allow the setup of reoptimized LSPs over the + link in this OOR State"; + } + } + + grouping MULTIPLIER { + description + "Common node of bfd-over-lsp, bfd-over-named-lsp"; + leaf multiplier { + type uint32 { + range "3..10"; + } + description + "Specify the multiplier for BFD failure detection"; + } + } + + grouping PATH-ERROR-MESSAGE { + description + "Common node of logging, auto-mesh-logging"; + leaf path-error-message { + type empty; + description + "Log tunnel messages for path error"; + } + } + + grouping PCALC-FAILURE-MESSAGE { + description + "Common node of logging, auto-mesh-logging"; + leaf pcalc-failure-message { + type empty; + description + "Enable logging for path-calculation failures"; + } + } + + grouping POLICY-CLASSES { + description + "Common node of tunnel-te-attributes, + auto-mesh-attribute, auto-backup-attribute"; + container policy-classes { + description + "Policy classes for PBTS"; + leaf-list policy-class { + type Mpls-te-policy-class-range; + max-elements "7"; + description + "Array of Policy class"; + } + } + } + + grouping MINIMUM-INTERVAL { + description + "Common node of bfd-over-lsp, bfd-over-named-lsp"; + leaf minimum-interval { + type uint32 { + range "3..30000"; + } + description + "Specify the minimum interval for BFD failure + detection"; + } + } + + grouping UNPROTECTED-TRANSIT-LSP-THRESHOLD { + description + "Common node of lsp-oor-yellow-state, + lsp-oor-red-state"; + leaf unprotected-transit-lsp-threshold { + type uint32; + description + "Threshold for unprotected transit LSPs"; + } + } + + grouping AFFINITY-MASK { + description + "Common node of tunnel-te-attributes, + tunnel-attributes, auto-mesh-attribute, + auto-backup-attribute, path-option-attribute, + p2mpte-attribute, p2p-te-attribute"; + container affinity-mask { + presence "Indicates a affinity-mask node is configured."; + description + "Set the affinity flags and mask"; + leaf affinity { + type xr:Hex-integer; + mandatory true; + description + "Affinity flags"; + } + leaf mask { + type xr:Hex-integer; + mandatory true; + description + "Affinity mask"; + } + } + } + + grouping BANDWIDTH-CHANGE-MESSAGE { + description + "Common node of logging, auto-backup-logging, + auto-mesh-logging"; + leaf bandwidth-change-message { + type empty; + description + "Log tunnel messages for bandwidth change"; + } + } + + grouping REOPTIMIZE-ATTEMPTS-MESSAGE { + description + "Common node of logging, auto-backup-logging, + auto-mesh-logging"; + leaf reoptimize-attempts-message { + type empty; + description + "Log tunnel reoptimization attempts messages"; + } + } + + grouping OOR-AVAILABLE-BANDWIDTH-PERCENTAGE { + description + "Common node of oor-green-state, oor-yellow-state, + oor-red-state, lsp-oor-green-state, + lsp-oor-yellow-state, lsp-oor-red-state"; + leaf oor-available-bandwidth-percentage { + type uint32 { + range "0..100"; + } + units "percentage"; + default "100"; + description + "Flood a specific percentage of the available + bandwidth"; + } + } + + grouping TIMERS { + description + "Common node of backup, mesh"; + container timers { + description + "Configure auto-tunnel backup timers value"; + container removal { + description + "Configure auto-tunnel backup removal timers + value"; + leaf unused { + type uint32 { + range "0..10080"; + } + units "minute"; + default "3600"; + description + "Auto-tunnel backup unused timeout in minutes + (0=never timeout)"; + } + } + } + } + + grouping TUNNEL-PATH-SELECTION { + description + "Common node of tunnel-te-attributes, + tunnel-attributes"; + container tunnel-path-selection { + description + "Configure path selection properties"; + leaf tiebreaker { + type Mpls-te-path-selection-tiebreaker; + description + "CSPF tiebreaker to use in path calculation"; + } + leaf path-selection-hop-limit { + type uint32 { + range "1..255"; + } + description + "Path selection hop limit configuration for this + specific tunnel"; + } + uses PATH-SELECTION-DELAY-LIMIT; + uses INVALIDATION; + uses PATH-SELECTION-COST-LIMIT; + } + } + + grouping INVALIDATION { + description + "Common node of tunnel-te-attributes, + tunnel-attributesCommon node of + tunnel-path-selection, + att-path-option-path-selection"; + container invalidation { + presence "enable invalidation"; + description + "Deprecated"; + leaf path-invalidation-timeout { + type uint32 { + range "0..60000"; + } + description + "Path Invalidation Timeout"; + } + leaf path-invalidation-action { + type Path-invalidation-action; + description + "Path Invalidation Action"; + } + } + } + + grouping PRECEDENCE { + description + "Common node of peer, pce-attributes"; + leaf precedence { + type uint32 { + range "0..255"; + } + description + "Precedence order"; + } + } + + grouping SOFT-PREEMPTION { + description + "Common node of tunnel-attributes, + tunnel-te-attributes, auto-mesh-attribute, + auto-backup-attribute"; + leaf soft-preemption { + type empty; + description + "Enable the soft-preemption feature on the tunnel"; + } + } + + grouping PATH-SELECTION-COST-LIMIT { + description + "Common node of tunnel-path-selection, + att-path-option-path-selection"; + leaf path-selection-cost-limit { + type uint32 { + range "1..4294967295"; + } + description + "Path selection cost limit configuration for this + specific tunnel"; + } + } + + grouping AUTO-BANDWIDTH { + description + "Common node of tunnel-attributes, + tunnel-te-attributes"; + container auto-bandwidth { + description + "Tunnel Interface Auto-bandwidth configuration + data"; + container underflow { + presence "Indicates a underflow node is configured."; + description + "Configuring the tunnel underflow detection"; + leaf underflow-threshold-percent { + type uint32 { + range "1..100"; + } + units "percentage"; + mandatory true; + description + "Bandwidth change percent to trigger an + underflow"; + } + leaf underflow-threshold-value { + type uint32 { + range "10..4294967295"; + } + units "kbit/s"; + mandatory true; + description + "Bandwidth change value to trigger an underflow + (kbps)"; + } + leaf underflow-threshold-limit { + type uint32 { + range "1..10"; + } + mandatory true; + description + "Number of consecutive collections exceeding + threshold"; + } + } + container overflow { + presence "Indicates a overflow node is configured."; + description + "Configuring the tunnel overflow detection"; + leaf overflow-threshold-percent { + type uint32 { + range "1..100"; + } + units "percentage"; + mandatory true; + description + "Bandwidth change percent to trigger an + overflow"; + } + leaf overflow-threshold-value { + type uint32 { + range "10..4294967295"; + } + units "kbit/s"; + mandatory true; + description + "Bandwidth change value to trigger an overflow + (kbps)"; + } + leaf overflow-threshold-limit { + type uint32 { + range "1..10"; + } + mandatory true; + description + "Number of consecutive collections exceeding + threshold"; + } + } + container bandwidth-limits { + presence "Indicates a bandwidth-limits node is configured."; + description + "Set min/max bandwidth auto-bw can apply on a + tunnel"; + leaf bandwidth-min-limit { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "Set minimum bandwidth auto-bw can apply on a + tunnel"; + } + leaf bandwidth-max-limit { + type uint32 { + range "0..4294967295"; + } + mandatory true; + description + "Set maximum bandwidth auto-bw can apply on a + tunnel"; + } + } + container adjustment-threshold { + presence "Indicates a adjustment-threshold node is configured."; + description + "Set the bandwidth change threshold to trigger + adjustment"; + leaf adjustment-threshold-percent { + type uint32 { + range "1..100"; + } + units "percentage"; + mandatory true; + description + "Bandwidth change percent to trigger adjustment"; + } + leaf adjustment-threshold-value { + type uint32 { + range "10..4294967295"; + } + units "kbit/s"; + mandatory true; + description + "Bandwidth change value to trigger adjustment + (kbps)"; + } + } + container auto-capacity { + description + "Tunnel auto-capacity configuration data"; + leaf nominal-bandwidth { + type uint32 { + range "0..4294967295"; + } + units "kbit/s"; + description + "Bandwidth value used to compute the desired + number of tunnels for auto-capacity"; + } + leaf enable { + type boolean; + description + "Enable auto-capacityThe object must be set + before any other auto capacity configuration + is supplied for the tunnel,and must be the + last auto-capacity configuration object to be + removed."; + } + leaf clones-minimum { + type uint32 { + range "0..63"; + } + default "0"; + description + "Lower limit on the number of clones can be + created for the tunnel"; + } + leaf split-bandwidth { + type uint32 { + range "0..4294967295"; + } + units "kbit/s"; + description + "Upper bandwidth limit that causes the tunnel + to be split"; + } + leaf merge-bandwidth { + type uint32 { + range "0..4294967295"; + } + units "kbit/s"; + description + "Lower bandwidth limit that causes the tunnel + to be merged"; + } + leaf clones-maximum { + type uint32 { + range "0..63"; + } + default "63"; + description + "Upper limit on the number of clones can be + created for the tunnel"; + } + } + leaf underflow-enable { + type boolean; + description + "Enable auto bandwidth underflow detection"; + } + leaf resignal-last-bandwidth-time-out { + type uint32 { + range "1..3600000"; + } + units "second"; + description + "Set the tunnel auto-bw resignal last bandwidth + time-out in seconds"; + } + leaf enabled { + type boolean; + description + "This object is only valid for tunnel interfaces + and it controls whether that interface has + auto-bw enabled on it or not.The object must be + set before any other auto-bw configuration is + supplied for the interface, and must be the + last auto-bw configuration object to be removed + ."; + } + leaf application-frequency { + type uint32 { + range "5..10080"; + } + units "minute"; + description + "Set the tunnel auto-bw application frequency in + minutes"; + } + leaf overflow-enable { + type boolean; + description + "Enable auto bandwidth overflow detection"; + } + uses COLLECTION-ONLY; + } + } + + grouping RECORD-ROUTE { + description + "Common node of tunnel-attributes, + tunnel-te-attributes, auto-mesh-attribute, + auto-backup-attribute, gmpls-unitunnel-head, + p2mpte-attribute, tunnel-head"; + leaf record-route { + type empty; + description + "Record the route used by the tunnel"; + } + } + + grouping OOR-RECOVERY-DURATION { + description + "Common node of oor-green-state, + lsp-oor-green-state"; + leaf oor-recovery-duration { + type uint32 { + range "0..10080"; + } + units "minute"; + default "0"; + description + "Period of time (minutes) during which the action + in Green state are applied. After this period, + the processing in TE goes back to normal state"; + } + } + + grouping SRLG-DIVERSE { + description + "Common node of tunnel-path-protection, + named-tunnel-path-protection"; + leaf srlg-diverse { + type empty; + description + "Enforce SRLG diversity for protection LSP"; + } + } + + grouping OOR-ACCEPT-LSP-MIN-BANDWIDTH { + description + "Common node of oor-green-state, oor-yellow-state, + oor-red-state, lsp-oor-green-state, + lsp-oor-yellow-state, lsp-oor-red-state"; + leaf oor-accept-lsp-min-bandwidth { + type uint32; + units "kbit/s"; + default "0"; + description + "Only accept LSPs with at least the specified + bandwidth (in kbps)."; + } + } + + grouping LOGGING { + description + "Common node of tunnel-te-attributes, + tunnel-attributes, p2p-te-attribute"; + container logging { + description + "Log tunnel LSP messages"; + leaf lsp-switch-over-change-message { + type empty; + description + "Log tunnel messages for bandwidth change"; + } + leaf all { + type empty; + description + "Log all events for a tunnel"; + } + leaf record-route-messsage { + type empty; + description + "Log tunnel record-route messages"; + } + leaf bfd-state-message { + type empty; + description + "Enable BFD session state change alarm"; + } + uses BANDWIDTH-CHANGE-MESSAGE; + uses REOPTIMIZE-ATTEMPTS-MESSAGE; + uses REROUTE-MESSSAGE; + uses STATE-MESSAGE; + uses PATH-ERROR-MESSAGE; + uses INSUFFICIENT-BW-MESSAGE; + uses REOPTIMIZED-MESSAGE; + uses PCALC-FAILURE-MESSAGE; + } + } + + grouping MPLS-MTE-TUNNEL-CFG-LOGGING { + description + "Common node of tunnel-te-attributes, + tunnel-attributes, p2p-te-attributeCommon node of + mte-tunnel-attributes, p2mpte-attribute"; + container logging { + description + "Log tunnel LSP messages"; + leaf insufficient-bw-message { + type empty; + description + "Log tunnel messages for insufficient bandwidth"; + } + leaf reoptimized-message { + type empty; + description + "Log tunnel reoptimized messages"; + } + leaf bandwidth-change-message { + type empty; + description + "Log tunnel bandwidth change messages"; + } + leaf all { + type empty; + description + "Log all events for a tunnel"; + } + leaf pcalc-failure-message { + type empty; + description + "Enable logging for path-calculation failures"; + } + leaf state-message { + type empty; + description + "Log tunnel state messages"; + } + leaf reoptimize-attempts-message { + type empty; + description + "Log tunnel reoptimization attempts messages"; + } + leaf sub-lsp-state-message { + type empty; + description + "Log all tunnel sub-LSP state messages"; + } + leaf reroute-messsage { + type empty; + description + "Log tunnel rereoute messages"; + } + } + } + + grouping COLLECTION-ONLY { + description + "Common node of auto-bandwidth, + auto-mesh-attribute"; + leaf collection-only { + type empty; + description + "Enable bandwidth collection only, no auto-bw + adjustment"; + } + } + + grouping PCE { + description + "Common node of path-option-attribute, + p2p-te-attribute"; + container pce { + description + "Configure pce properties"; + container bidirectional { + presence "Indicates a bidirectional node is configured."; + description + "Bidirectional parameters"; + leaf bd-source-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Bidirectional Source IP Address"; + } + leaf bd-group-id { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Bidirectional Group ID"; + } + } + container disjoint-path { + presence "Indicates a disjoint-path node is configured."; + description + "Disjoint path parameters"; + leaf dp-source-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Disjoint Path Source IP Address"; + } + leaf dp-type { + type uint32 { + range "1..3"; + } + mandatory true; + description + "Disjoint Path Type"; + } + leaf dp-group-id { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Disjoint Path Group ID"; + } + } + leaf enable { + type empty; + description + "Always set to true"; + } + } + } + + grouping DESTINATION { + description + "Common node of tunnel-te-attributes, + tunnel-attributes"; + leaf destination { + type inet:ipv4-address-no-zone; + description + "Set the destination of the tunnel"; + } + } + + grouping STATE-MESSAGE { + description + "Common node of logging, logging, + auto-backup-logging, auto-mesh-logging"; + leaf state-message { + type empty; + description + "Log tunnel state messages"; + } + } + + grouping LOAD-SHARE { + description + "Common node of tunnel-attributes, + tunnel-te-attributes, auto-mesh-attribute"; + leaf load-share { + type uint32 { + range "1..4294967295"; + } + description + "Tunnel loadsharing metric"; + } + } + + grouping PATH-SELECTION { + description + "Common node of auto-mesh-attribute, xro-attribute + , auto-backup-attribute, p2mpte-attribute, + otn-pp-attribute, uni-p-attribute"; + container path-selection { + description + "Configure path selection properties"; + leaf enable { + type empty; + description + "Enable path selection"; + } + } + } + + grouping SIGNALLED-NAME { + description + "Common node of tunnel-te-attributes, + gmpls-unitunnel-head, tunnel-head"; + leaf signalled-name { + type string { + length "1..254"; + } + description + "The name of the tunnel to be included in + signalling messages"; + } + } + + grouping REOPTIMIZED-MESSAGE { + description + "Common node of logging, auto-backup-logging, + auto-mesh-logging"; + leaf reoptimized-message { + type empty; + description + "Log tunnel reoptimized messages"; + } + } + + grouping NEW-STYLE-AFFINITY-TABLE { + description + "Common node of logging, auto-backup-logging, + auto-mesh-loggingCommon node of tunnel-attributes + , tunnel-te-attributes, path-option-attribute, + auto-backup-attribute, auto-mesh-attribute, + p2mpte-attribute, p2p-te-attribute"; + container new-style-affinity-affinity-types { + description + "Tunnel new style affinity attributes table"; + list new-style-affinity-affinity-type { + key "affinity-type"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + } + list new-style-affinity-affinity-type-affinity1 { + key "affinity-type affinity1"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2 { + key "affinity-type affinity1 affinity2"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3 { + key "affinity-type affinity1 affinity2 affinity3"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4 { + key "affinity-type affinity1 affinity2 affinity3 affinity4"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7-affinity8 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7 affinity8"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + leaf affinity8 { + type xr:Cisco-ios-xr-string; + description + "The name of the eighth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7-affinity8-affinity9 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7 affinity8 affinity9"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + leaf affinity8 { + type xr:Cisco-ios-xr-string; + description + "The name of the eighth affinity"; + } + leaf affinity9 { + type xr:Cisco-ios-xr-string; + description + "The name of the nineth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7-affinity8-affinity9-affinity10 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7 affinity8 affinity9 affinity10"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + leaf affinity8 { + type xr:Cisco-ios-xr-string; + description + "The name of the eighth affinity"; + } + leaf affinity9 { + type xr:Cisco-ios-xr-string; + description + "The name of the nineth affinity"; + } + leaf affinity10 { + type xr:Cisco-ios-xr-string; + description + "The name of the tenth affinity"; + } + } + } + } + + grouping FAST-REROUTE { + description + "Common node of tunnel-attributes, + tunnel-te-attributes, auto-mesh-attribute, + p2mpte-attribute"; + container fast-reroute { + presence "Indicates a fast-reroute node is configured."; + description + "Specify MPLS tunnel can be fast-rerouted"; + leaf bandwidth-protection { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Bandwidth Protection"; + } + leaf node-protection { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Node Protection"; + } + } + } + + grouping TUNNEL-RANGE { + description + "Common node of backup, mesh, p2mp-auto-tunnel, + p2p-auto-tunnel, pcc"; + container tunnel-range { + presence "Indicates a tunnel-range node is configured."; + description + "Configure tunnel ID range for auto-tunnel + features"; + leaf min-tunnel-id { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Minimum tunnel ID for auto-tunnels"; + } + leaf max-tunnel-id { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Maximum tunnel ID for auto-tunnels"; + } + } + } + + grouping DELAY-MEASUREMENT { + description + "Common node of tunnel-attributes, + tunnel-te-attributes"; + leaf delay-measurement { + type empty; + description + "Enable the delay-measurement feature on the + tunnel"; + } + } + + grouping ENABLE { + description + "Common node of path-selection, + att-path-option-path-selection"; + leaf enable { + type empty; + description + "Enter path selection configuration"; + } + } + + grouping MPLS-TE-TUNNEL-CFG-ENABLE { + description + "Common node of path-selection, + att-path-option-path-selectionCommon node of + bfd-over-lsp, bfd-over-named-lsp"; + leaf enable { + type empty; + description + "Always set to true"; + } + } + + grouping MPLS-TE-TUNNEL-CFG-ENABLE-MP { + description + "Common node of path-selection, + att-path-option-path-selectionCommon node of + bfd-over-lsp, bfd-over-named-lspCommon node of + tunnel-path-protection, + named-tunnel-path-protection"; + leaf enable { + type empty; + description + "Enable Path Protection"; + } + } + + grouping AUTOROUTE { + description + "Common node of tunnel-attributes, + tunnel-te-attributes"; + container autoroute { + description + "Parameters for IGP routing over tunnel"; + container autoroute-announce { + description + "Announce tunnel to IGP"; + container exclude-traffic { + description + "Exclude traffic on autorouted tunnel"; + leaf segment-routing { + type empty; + description + "Exclude tunnel in IGP for SR prefixes"; + } + } + container metric { + description + "Specify MPLS tunnel metric"; + leaf metric-type { + type Mpls-te-autoroute-metric; + description + "Autoroute tunnel metric type"; + } + leaf absolute-metric { + when "../metric-type = 'absolute'" { + description + "../MetricType = Absolute"; + } + type uint32 { + range "1..2147483647"; + } + description + "The absolute metric value"; + } + leaf relative-metric { + when "../metric-type = 'relative'" { + description + "../MetricType = Relative"; + } + type int32 { + range "-10..10"; + } + description + "The value of the adjustment"; + } + leaf constant-metric { + when "../metric-type = 'constant'" { + description + "../MetricType = Constant"; + } + type uint32 { + range "1..2147483647"; + } + description + "The constant metric value"; + } + } + leaf enable { + type empty; + description + "Enable autoroute announce"; + } + leaf include-ipv6 { + type empty; + description + "Specify that the tunnel should be an IPv6 + autoroute announce also"; + } + } + container destinations { + description + "Tunnel Autoroute Destination(s)"; + list destination { + key "destination-address"; + description + "Destination address to add in RIB"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "IP address of destination"; + } + } + } + } + } + + grouping OOR-NODE-PROTECTION-DISABLE { + description + "Common node of oor-green-state, oor-yellow-state, + oor-red-state"; + leaf oor-node-protection-disable { + type empty; + description + "Disable FRR node-protection when the link is in + this OOR State"; + } + } + + grouping FAST-DETECT { + description + "Common node of bfd-over-lsp, bfd-over-named-lsp"; + leaf fast-detect { + type Mpls-tebfd-session; + description + "Enable BFD Fast Detect On the tunnel"; + } + } + + grouping REROUTE-MESSSAGE { + description + "Common node of logging, auto-mesh-logging"; + leaf reroute-messsage { + type empty; + description + "Log tunnel rereoute messages"; + } + } + + grouping CACHE-TIMER { + description + "Common node of mpls-te-mib, mpls-frr-mib, + mpls-p2mp-mib, mpls-te-ext-mib, + mpls-te-ext-std-mib"; + leaf cache-timer { + type uint32 { + range "0..600"; + } + units "second"; + default "60"; + description + "Configure the cache time for the mib."; + } + } + + grouping PATH-SELECTION-METRIC { + description + "Common node of tunnel-attributes, + tunnel-te-attributes"; + leaf path-selection-metric { + type Mpls-te-path-selection-metric; + description + "Path selection metric to use in path calculation"; + } + } + + grouping PASSWORD { + description + "Common node of peer, pce-attributes"; + leaf password { + type xr:Proprietary-password; + description + "MD5 password"; + } + } + + grouping BANDWIDTH { + description + "Common node of tunnel-attributes, + tunnel-te-attributes, auto-mesh-attribute, + auto-backup-attribute, path-option-attribute, + p2mpte-attribute"; + container bandwidth { + presence "Indicates a bandwidth node is configured."; + description + "Tunnel bandwidth requirement"; + leaf dste-type { + type Mpls-te-bandwidth-dste; + mandatory true; + description + "DSTE-standard flag"; + } + leaf class-or-pool-type { + type uint32 { + range "0..1"; + } + mandatory true; + description + "Class type for the bandwidth allocation"; + } + leaf bandwidth { + type uint32 { + range "0..4294967295"; + } + units "kbit/s"; + mandatory true; + description + "The value of the bandwidth reserved by this + tunnel in kbps"; + } + } + } + + grouping INTERFACE-BANDWIDTH { + description + "Common node of auto-mesh-attribute, + p2mpte-attribute"; + leaf interface-bandwidth { + type uint32 { + range "0..4294967295"; + } + units "kbit/s"; + description + "The bandwidth of the interface in kbps"; + } + } + + grouping FORWARD-CLASS { + description + "Common node of tunnel-attributes, + tunnel-te-attributes, auto-mesh-attribute"; + leaf forward-class { + type uint32 { + range "0..7"; + } + description + "Forward class value"; + } + } + + grouping INSUFFICIENT-BW-MESSAGE { + description + "Common node of logging, auto-mesh-logging"; + leaf insufficient-bw-message { + type empty; + description + "Log tunnel messages for insufficient bandwidth"; + } + } + + grouping PATH-SELECTION-DELAY-LIMIT { + description + "Common node of tunnel-path-selection, + att-path-option-path-selection"; + leaf path-selection-delay-limit { + type uint32 { + range "1..4294967295"; + } + description + "Path selection delay limit (usec) configuration + for this specific tunnel"; + } + } + + grouping OOR-METRIC-TE-PENALTY { + description + "Common node of oor-green-state, oor-yellow-state, + oor-red-state, lsp-oor-green-state, + lsp-oor-yellow-state, lsp-oor-red-state"; + leaf oor-metric-te-penalty { + type uint32; + default "0"; + description + "Penalty applied to the TE metric of a link in + OOR state"; + } + } + + grouping KEYCHAIN { + description + "Common node of peer, pce-attributes"; + leaf keychain { + type string { + length "1..32"; + } + description + "Keychain based authentication"; + } + } + + grouping FORWARDING-ADJACENCY { + description + "Common node of tunnel-attributes, + tunnel-te-attributes"; + container forwarding-adjacency { + description + "Forwarding adjacency announcement to IGP"; + leaf enable { + type empty; + description + "Enable forwarding adjacency"; + } + leaf include-ipv6 { + type empty; + description + "Specify that the tunnel should be an IPv6 + forwarding adjacency also"; + } + leaf hold-time { + type uint32 { + range "0..20000"; + } + description + "Specify the holdtime for the tunnel as + forwarding adjacency"; + } + } + } + + grouping ALL-TRANSIT-LSP-THRESHOLD { + description + "Common node of lsp-oor-yellow-state, + lsp-oor-red-state"; + leaf all-transit-lsp-threshold { + type uint32; + description + "Threshold for all transit LSPs"; + } + } + + grouping PRIORITY { + description + "Common node of tunnel-te-attributes, + tunnel-attributes, auto-mesh-attribute, + gmpls-unitunnel-head, auto-backup-attribute, + p2mpte-attribute"; + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel Setup and Hold Priorities"; + leaf setup-priority { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Setup Priority"; + } + leaf hold-priority { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Hold Priority"; + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container tunnel-te-attributes { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. MPLS + tunnel attributes"; + container backup-bandwidth { + description + "Tunnel backup bandwidth requirement"; + leaf dste-type { + type Mpls-te-bandwidth-dste; + description + "DSTE-standard flag"; + } + leaf pool-type { + type Mpls-te-backup-bandwidth-pool; + description + "Backup bandwidth pool type, relevant only if + DSTEType is PreStandardDSTE"; + } + leaf class-type { + type Mpls-te-backup-bandwidth-class; + description + "Backup bandwidth class type, relevant only if + DSTEType is StandardDSTE"; + } + leaf limit-type { + type Mpls-te-bandwidth-limit; + description + "Backup bandwidth limit type"; + } + leaf backup-bandwidth { + type uint32 { + range "1..4294967295"; + } + description + "Backup bandwidth requested by this tunnel in + kbps. Ignored if bandwidth limit type is + unlimited."; + } + } + container bfd-over-lsp { + description + "BFD over TE LSP"; + leaf dampening-initial-wait { + type uint32 { + range "1..518400000"; + } + description + "Initial delay in milliseconds (default 16000)"; + } + leaf bringup-timeout { + type uint32 { + range "10..3600"; + } + description + "Wait for session to come up in seconds + (default 60)"; + } + leaf periodic-ping-disable { + type empty; + description + "Disable Periodic LSP Ping for BFD over LSP"; + } + leaf dampening-secondary-wait { + type uint32 { + range "1..518400000"; + } + description + "Secondary delay in milliseconds (default + 20000)"; + } + leaf periodic-ping-interval { + type uint32 { + range "60..3600"; + } + description + "Periodic LSP Ping Interval in seconds (default + 120)"; + } + leaf dampening-maximum-wait { + type uint32 { + range "1..518400000"; + } + description + "Maximum delay in milliseconds (default 600000)"; + } + leaf encap-mode { + type uint32 { + range "0..1"; + } + description + "Specify BFD Encap Mode on the tunnel"; + } + uses FAST-DETECT; + uses MPLS-TE-TUNNEL-CFG-ENABLE; + uses MULTIPLIER; + uses MINIMUM-INTERVAL; + } + container binding-segment-id-mpls { + description + "Allocate MPLS binding segment ID"; + leaf segment-id-type { + type Binding-segment-id; + description + "MPLS label value type"; + } + leaf label-value { + when "../segment-id-type = 'specified-label'" { + description + "../SegmentIDType = SpecifiedLabel"; + } + type uint32 { + range "16..4015"; + } + description + "MPLS label"; + } + } + container tunnel-path-protection { + description + "MPLS tunnel path protected configs"; + container protection-mode { + description + "Configure Protection Mode"; + leaf non-revertive { + type empty; + description + "Enable non-revertive mode"; + } + } + uses MPLS-TE-TUNNEL-CFG-ENABLE-MP; + uses SRLG-DIVERSE; + } + container path-option-protects { + description + "Tunnel path protection state"; + list path-option-protect { + key "protection"; + description + "Tunnel path protection"; + container path-options { + description + "Tunnel path options"; + list path-option { + key "preference-level"; + description + "A tunnel path option"; + leaf preference-level { + type uint32 { + range "1..1000"; + } + description + "Preference level for this path option"; + } + leaf path-type { + type Mpls-te-path-option; + mandatory true; + description + "The type of the path option"; + } + leaf path-id { + type uint32 { + range "1..65535"; + } + description + "The ID of the IP explicit path associated + with this option"; + } + leaf path-name { + type string; + description + "The name of the IP explicit path associated + with this option"; + } + leaf path-property { + type uint32; + default "0"; + description + "Deprecated"; + } + leaf interface { + type xr:Interface-name; + description + "Deprecated"; + } + leaf output-label { + type uint32; + default "0"; + description + "Deprecated"; + } + leaf destination { + type inet:ipv4-address-no-zone; + default "0.0.0.0"; + description + "Deprecated"; + } + leaf lockdown { + type Mpls-te-path-option-property; + default "none"; + description + "Lockdown properties"; + } + leaf verbatim { + type Mpls-te-path-option-property; + default "none"; + description + "Verbatim properties"; + } + leaf pce { + type Mpls-te-path-option-property; + default "none"; + description + "PCE properties"; + } + leaf pce-address { + type inet:ipv4-address-no-zone; + default "0.0.0.0"; + description + "PCE address"; + } + leaf igp-type { + type Mpls-te-igp-protocol; + default "none"; + description + "IGP type"; + } + leaf igp-instance { + type string { + length "1..40"; + } + description + "IGP instance name"; + } + leaf igp-area { + type uint32; + default "0"; + description + "IGP area ID in integer format"; + } + leaf igp-area-ip-address-id { + type inet:ipv4-address-no-zone; + default "0.0.0.0"; + description + "IGP area ID in IP address format"; + } + leaf path-option-attribute-set-name { + type string; + description + "Path option attribute set name"; + } + leaf protected-by-preference-level { + type uint32 { + range "1..1000"; + } + default "1"; + description + "Preference level of the protecting explicit + path. Leave unset in order to not use an + explicit protecting path"; + } + leaf segment-routing { + type Mpls-te-path-option-property; + default "none"; + description + "Deprecated"; + } + leaf sticky { + type Mpls-te-path-option-property; + default "none"; + description + "Sticky properties"; + } + } + } + leaf protection { + type Mpls-te-path-option-protection; + description + "Protection type for this path"; + } + } + } + container bidirectional { + description + "Tunnel Interface Bidirectional configuration + data"; + container association-corouted-type { + description + "Association Corouted Type"; + container fault-oam { + description + "Tunnel Fault OAM"; + leaf enable { + type empty; + description + "This object is only valid for bidirectional + tunnel interfaces and it controls whether + that interface has fault OAM enabled on it + or not."; + } + } + leaf wrap-protection-enable { + type empty; + description + "This object is only valid for bidirectional + tunnel interfaces and it controls whether + that interface has LSP Wrap protectionenabled + on it or not."; + } + leaf enable { + type empty; + description + "Controls whether association type is + co-routed."; + } + leaf disable-protection-object { + type empty; + description + "Disable signaling of RSVP Protection Object"; + } + } + container association-parameters { + presence "Indicates a association-parameters node is configured."; + description + "Association ID, Source IP Address, and Global + ID"; + leaf association-id { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Association ID"; + } + leaf association-source-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Association Source IP Address"; + } + leaf association-is-global-id-configured { + type boolean; + description + "Is Association Global ID Configured"; + } + leaf association-global-id { + type uint32 { + range "0..4294967295"; + } + description + "Association Global ID"; + } + } + leaf enabled { + type empty; + description + "This object is only valid for tunnel + interfaces and it controls whether that + interface has bidirectional enabled on it or + not."; + } + } + container admin-mode { + description + "Performs admin operations on the optical tunnel + interface"; + leaf deactivate-tunnel { + type empty; + description + "Performs signalling operation to deactivate + optical tunnel"; + } + } + container switching { + description + "Specify tunnel LSPs switching capability + descriptor"; + container transit { + presence "Indicates a transit node is configured."; + description + "Specify transit switching descriptor + parameters"; + leaf capability { + type Mpls-te-switching-cap; + mandatory true; + description + "Switching capability"; + } + leaf encoding { + type Mpls-te-switching-encode; + description + "LSP encoding"; + } + } + container endpoint { + presence "Indicates a endpoint node is configured."; + description + "Specify end point switching descriptor + parameters"; + leaf capability { + type Mpls-te-switching-cap; + mandatory true; + description + "Switching capability"; + } + leaf encoding { + type Mpls-te-switching-encode; + description + "LSP encoding"; + } + } + } + container pce { + description + "PCE config"; + container delegation { + description + "PCE Delegation config"; + leaf enable { + type empty; + description + "Enable PCE Delegation"; + } + leaf reopt { + type empty; + description + "Enable Reopt for PCE delegated Tunnel"; + } + } + leaf enable { + type empty; + description + "Always set to true"; + } + } + uses DELAY-MEASUREMENT; + uses FORWARD-CLASS; + uses TUNNEL-PATH-SELECTION; + uses AUTO-BANDWIDTH; + uses PRIORITY; + uses DESTINATION; + uses RECORD-ROUTE; + uses AFFINITY-MASK; + uses FORWARDING-ADJACENCY; + uses LOGGING; + uses BANDWIDTH; + uses AUTOROUTE; + uses POLICY-CLASSES; + uses PATH-SELECTION-METRIC; + uses NEW-STYLE-AFFINITY-TABLE; + uses SOFT-PREEMPTION; + uses FAST-REROUTE; + uses LOAD-SHARE; + uses SIGNALLED-NAME; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container transport-profile-tunnel { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. MPLS-TP + tunnel attributes"; + container bfd { + description + "Configure BFD parameters"; + container min-interval { + description + "Hello interval, either in milli-seconds or in + micro-seconds"; + leaf interval-ms { + type uint32 { + range "3..5000"; + } + description + "Hello interval in milli-seconds"; + } + leaf interval-us { + type uint32 { + range "3000..5000000"; + } + description + "Hello interval in micro-seconds"; + } + } + container min-interval-standby { + description + "Hello interval for standby transport profile + LSP, either in milli-seconds or in + micro-seconds"; + leaf interval-standby-ms { + type uint32 { + range "3..5000"; + } + description + "Hello interval in milli-seconds"; + } + leaf interval-standby-us { + type uint32 { + range "3000..5000000"; + } + description + "Hello interval in micro-seconds"; + } + } + leaf detection-multiplier { + type uint32 { + range "2..10"; + } + description + "Detect multiplier"; + } + leaf enable { + type empty; + description + "Configure BFD parameters"; + } + leaf multiplier-standby { + type uint32 { + range "2..10"; + } + description + "Detect multiplier for standby transport + profile LSP"; + } + } + container working-lsp { + description + "Working LSP"; + container out-label { + presence "Indicates a out-label node is configured."; + description + "Outgoing MPLS label of the working LSP"; + leaf label { + type uint32 { + range "16..1048575"; + } + description + "MPLS label"; + } + leaf link { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Transport profile identifier of outgoing link"; + } + } + leaf in-label { + type uint32 { + range "16..4015"; + } + description + "Incoming MPLS label of the working LSP"; + } + leaf lockout { + type empty; + description + "Enable lockout of working LSP"; + } + leaf lsp-id { + type uint32 { + range "0..65535"; + } + default "0"; + description + "LSP Identifier of the working LSP"; + } + } + container destination { + description + "Node identifier and optional global identifier + and tunnel identifier at destination"; + leaf node-id { + type inet:ipv4-address-no-zone; + description + "Node identifier in IPv4 address format"; + } + leaf global-id { + type uint32 { + range "1..65535"; + } + description + "Numeric global identifier"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + description + "Numeric tunnel identifier"; + } + } + container fault { + description + "Fault management"; + container protection-trigger { + description + "OAM events that trigger protection switching"; + leaf ldi { + type boolean; + description + "Enable protection switching due to LDI event"; + } + leaf ais { + type boolean; + description + "Enable protection switching due to AIS event"; + } + leaf lkr { + type boolean; + description + "Enable protection switching due to LKR event"; + } + } + leaf enable { + type empty; + description + "Enter transport profile tunnel fault + configuration"; + } + } + container protect-lsp { + description + "Protect LSP"; + container out-label { + presence "Indicates a out-label node is configured."; + description + "Outgoing MPLS label of the protect LSP"; + leaf label { + type uint32 { + range "16..1048575"; + } + description + "MPLS label"; + } + leaf link { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Transport profile identifier of outgoing link"; + } + } + leaf in-label { + type uint32 { + range "16..4015"; + } + description + "Incoming MPLS label of the protect LSP"; + } + leaf lockout { + type empty; + description + "Enable lockout of protect LSP"; + } + leaf lsp-id { + type uint32 { + range "0..65535"; + } + default "1"; + description + "LSP Identifier of the protect LSP"; + } + } + leaf source { + type inet:ipv4-address-no-zone; + description + "Transport profile node identifier in IPv4 + address format"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container mte-tunnel-attributes { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. MPLS + P2MP tunnel attributes"; + container destination-leafs { + description + "P2MP destination table"; + list destination-leaf { + key "address"; + description + "P2MP destination leaf"; + container s2l-logging { + description + "Log tunnel destination s2l messages"; + leaf s2l-reroute-messsage { + type empty; + description + "Log tunnel destination s2l rereoute messages"; + } + leaf s2l-insufficient-bw-messsage { + type empty; + description + "Log tunnel destination s2l insufficient BW + messages"; + } + leaf s2l-pcalc-failure-message { + type empty; + description + "Enable logging for destination s2l + path-calculation failures"; + } + leaf s2l-state-message { + type empty; + description + "Log tunnel destination s2l state messages"; + } + } + container path-options { + description + "P2MP destination path-options attributes + table"; + list path-option { + key "preference-level"; + description + "P2MP destination path option"; + leaf preference-level { + type uint32 { + range "1..1000"; + } + description + "Preference level for this path option"; + } + leaf path-type { + type Mpls-te-path-option; + description + "The type of the path option"; + } + leaf path-id { + type uint32 { + range "1..65535"; + } + description + "The ID of the IP explicit path associated + with this option"; + } + leaf path-name { + type string; + description + "The name of the IP explicit path associated + with this option"; + } + leaf lockdown { + type Mpls-te-path-option-property; + description + "Path option properties"; + } + leaf verbatim { + type Mpls-te-path-option-property; + description + "Path option properties"; + } + } + } + leaf destination-disable { + type empty; + description + "Disables P2MP destination"; + } + leaf destination { + type empty; + description + "Always set to true"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Address of P2MP destination"; + } + } + } + container priority { + presence "Indicates a priority node is configured."; + description + "P2MP tunnel setup and hold priorities"; + leaf setup-priority { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Setup Priority"; + } + leaf hold-priority { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Hold Priority"; + } + } + container new-style-affinity-affinity-types { + description + "P2MP tunnel new style affinity attributes table"; + list new-style-affinity-affinity-type { + key "affinity-type"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + } + list new-style-affinity-affinity-type-affinity1 { + key "affinity-type affinity1"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2 { + key "affinity-type affinity1 affinity2"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3 { + key "affinity-type affinity1 affinity2 affinity3"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4 { + key "affinity-type affinity1 affinity2 affinity3 affinity4"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7-affinity8 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7 affinity8"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + leaf affinity8 { + type xr:Cisco-ios-xr-string; + description + "The name of the eighth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7-affinity8-affinity9 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7 affinity8 affinity9"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + leaf affinity8 { + type xr:Cisco-ios-xr-string; + description + "The name of the eighth affinity"; + } + leaf affinity9 { + type xr:Cisco-ios-xr-string; + description + "The name of the nineth affinity"; + } + } + list new-style-affinity-affinity-type-affinity1-affinity2-affinity3-affinity4-affinity5-affinity6-affinity7-affinity8-affinity9-affinity10 { + key "affinity-type affinity1 affinity2 affinity3 affinity4 affinity5 affinity6 affinity7 affinity8 affinity9 affinity10"; + description + "Tunnel new style affinity attribute"; + leaf affinity-type { + type Mpls-te-tunnel-affinity; + description + "The type of the affinity entry"; + } + leaf affinity1 { + type xr:Cisco-ios-xr-string; + description + "The name of the first affinity"; + } + leaf affinity2 { + type xr:Cisco-ios-xr-string; + description + "The name of the second affinity"; + } + leaf affinity3 { + type xr:Cisco-ios-xr-string; + description + "The name of the third affinity"; + } + leaf affinity4 { + type xr:Cisco-ios-xr-string; + description + "The name of the fourth affinity"; + } + leaf affinity5 { + type xr:Cisco-ios-xr-string; + description + "The name of the fifth affinity"; + } + leaf affinity6 { + type xr:Cisco-ios-xr-string; + description + "The name of the sixth affinity"; + } + leaf affinity7 { + type xr:Cisco-ios-xr-string; + description + "The name of the seventh affinity"; + } + leaf affinity8 { + type xr:Cisco-ios-xr-string; + description + "The name of the eighth affinity"; + } + leaf affinity9 { + type xr:Cisco-ios-xr-string; + description + "The name of the nineth affinity"; + } + leaf affinity10 { + type xr:Cisco-ios-xr-string; + description + "The name of the tenth affinity"; + } + } + } + container bandwidth { + description + "P2MP tunnel bandwidth requirement"; + leaf dste-type { + type Mpls-te-bandwidth-dste; + description + "DSTE-standard flag"; + } + leaf class-or-pool-type { + type uint32 { + range "0..1"; + } + description + "Class type for the bandwidth allocation"; + } + leaf bandwidth { + type uint32 { + range "0..4294967295"; + } + description + "The value of the bandwidth reserved by this + tunnel in kbps"; + } + } + container affinity-mask { + description + "P2MP tunnel affinity and mask"; + leaf affinity { + type xr:Hex-integer; + description + "Affinity flags"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask"; + } + } + leaf record-route { + type empty; + description + "Record route used by individual P2MP S2L(s)"; + } + leaf signalled-name { + type string { + length "1..254"; + } + description + "The name of the P2MP tunnel to be included in + signalling messages"; + } + leaf path-selection-metric { + type Mpls-te-path-selection-metric; + description + "Path selection configuration for this specific + tunnel"; + } + leaf signalled-payload { + type xr:Hex-integer; + description + "P2MP tunnel ipv6 signalled payload"; + } + leaf fast-reroute { + type empty; + description + "Specify P2MP tunnel can be fast-rerouted"; + } + leaf impose-explicit-null { + type empty; + description + "Impose an explicit null bellow the TE label"; + } + uses MPLS-MTE-TUNNEL-CFG-LOGGING; + } + } + augment "/a2:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-te-mib { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. MPLS TE + MIB configuration"; + leaf cache-garbage-collect-timer { + type uint32 { + range "0..3600"; + } + units "second"; + default "1800"; + description + "Configure the cache garbage collector time for + the mib."; + } + uses CACHE-TIMER; + } + } + augment "/a2:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-p2mp-mib { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. MPLS + P2MP MIB configuration"; + uses CACHE-TIMER; + } + } + augment "/a2:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-te-ext-std-mib { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. MPLS TE + EXT STD MIB configuration"; + uses CACHE-TIMER; + } + } + augment "/a2:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-te-ext-mib { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. MPLS TE + EXT MIB configuration"; + uses CACHE-TIMER; + } + } + augment "/a2:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-frr-mib { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. FRR MIB + configuration"; + uses CACHE-TIMER; + } + } + augment "/a2:snmp/a2:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-te-p2mp { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. + CISCO-MPLS-TE-P2MP-STD-MIB notification + configuration"; + leaf up { + type empty; + description + "Enable cmplsTeP2mpTunnelDestUp notification"; + } + leaf down { + type empty; + description + "Enable cmplsTeP2mpTunnelDestDown notification"; + } + } + } + augment "/a2:snmp/a2:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-te { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. + MPLS-TE-STD-MIB notification configuration"; + container cisco-extension { + description + "CISCO-MPLS-TE-STD-EXT-MIB notification + configuration"; + leaf preempt { + type empty; + description + "Enable cmplsTunnelPreempt notification"; + } + leaf insufficient-bandwidth { + type empty; + description + "Enable cmplsTunnelInsuffBW notification"; + } + leaf re-route-pending-clear { + type empty; + description + "Enable cmplsTunnelReRoutePendingClear + notification"; + } + leaf bringup-fail { + type empty; + description + "Enable cmplsTunnelBringupFail notification"; + } + leaf re-route-pending { + type empty; + description + "Enable cmplsTunnelReRoutePending notification"; + } + } + leaf cisco { + type empty; + description + "Enable MPLS TE tunnel Cisco format (default + IETF) notification"; + } + leaf up { + type empty; + description + "Enable mplsTunnelUp notification"; + } + leaf reoptimize { + type empty; + description + "Enable mplsTunnelReoptimized notification"; + } + leaf reroute { + type empty; + description + "Enable mplsTunnelRerouted notification"; + } + leaf down { + type empty; + description + "Enable mplsTunnelDown notification"; + } + } + } + augment "/a2:snmp/a2:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-frr { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. + CISCO-IETF-FRR-MIB notification configuration"; + leaf unprotected { + type empty; + description + "Enable cmplsFrrUnProtected notification"; + } + leaf enable { + type empty; + description + "Enable cmplsFrrMIB notifications"; + } + leaf protected { + type empty; + description + "Enable cmplsFrrProtected notification"; + } + } + } + container mpls-te { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-te-cfg.yang which will + provide the compatible functionalities. The root + of MPLS TE configuration"; + container diff-serv-traffic-engineering { + description + "Configure Diff-Serv Traffic-Engineering"; + container classes { + description + "Configure Diff-Serv Traffic-Engineering Classes"; + list class { + key "class-number"; + description + "DSTE class number"; + leaf class-number { + type uint32 { + range "0..7"; + } + description + "DS-TE class number"; + } + leaf class-type { + when "../unused = 'false'" { + description + "../Unused = 'false'"; + } + type uint32 { + range "0..1"; + } + mandatory true; + description + "Class type number"; + } + leaf class-priority { + when "../unused = 'false'" { + description + "../Unused = 'false'"; + } + type uint32 { + range "0..7"; + } + mandatory true; + description + "Class-type priority"; + } + leaf unused { + type boolean; + description + "TRUE to skip classtype and class priority + provisioning FALSE to provision them"; + } + } + } + leaf bandwidth-constraint-model { + type Bandwidth-constraint; + description + "Diff-Serv Traffic-Engineering Bandwidth + Constraint Model"; + } + leaf mode-ietf { + type Ietf-mode; + description + "Diff-Serv Traffic-Engineering IETF mode"; + } + } + container named-tunnels { + description + "Configure MPLS TE tunnel"; + container tunnels { + description + "Configure MPLS TE tunnel"; + list tunnel { + key "tunnel-name tunnel-type"; + description + "Configure a MPLS TE tunnel"; + container tunnel-attributes { + description + "MPLS tunnel attributes"; + container path-setups { + description + "Tunnel path setup table"; + list path-setup { + key "path-setup-name"; + description + "Tunnel path setup"; + container path-computation { + presence "Indicates a path-computation node is configured."; + description + "Path computation method"; + leaf path-computation-method { + type Mpls-te-path-computation-method; + mandatory true; + description + "Path computation method"; + } + leaf explicit-path-name { + type string; + description + "Explicit Path Name"; + } + leaf path-computation-server { + type inet:ipv4-address-no-zone; + default "0.0.0.0"; + description + "Path Computation Server Address"; + } + } + leaf preference { + type uint32 { + range "0..255"; + } + description + "Path preference level"; + } + leaf attribute-set { + type string; + description + "Attribute set to be applied to this path"; + } + leaf s2l-retry-timer { + type uint32 { + range "1..600"; + } + units "second"; + description + "S2L retry timer timeout value (seconds)"; + } + leaf path-setup-name { + type xr:Cisco-ios-xr-string; + description + "Path Name"; + } + } + } + container self-ping { + description + "Tunnel self ping configuration data"; + leaf enable { + type boolean; + description + "Enable self-pingThe object must be set + before any other self-ping configuration is + supplied for the tunnel,and must be the + last self-ping configuration object to be + removed."; + } + leaf max-count { + type uint32 { + range "1..180"; + } + description + "Configure maximum number of self-ping + probes"; + } + } + container bfd-over-named-lsp { + description + "BFD over Named TE LSP"; + uses FAST-DETECT; + uses MPLS-TE-TUNNEL-CFG-ENABLE; + uses MULTIPLIER; + uses MINIMUM-INTERVAL; + } + container named-tunnel-path-protection { + description + "MPLS named tunnel path protected configs"; + uses MPLS-TE-TUNNEL-CFG-ENABLE-MP; + uses SRLG-DIVERSE; + } + leaf shutdown { + type empty; + description + "shutdown the tunnel"; + } + uses DELAY-MEASUREMENT; + uses FORWARD-CLASS; + uses TUNNEL-PATH-SELECTION; + uses AUTO-BANDWIDTH; + uses PRIORITY; + uses DESTINATION; + uses RECORD-ROUTE; + uses AFFINITY-MASK; + uses FORWARDING-ADJACENCY; + uses LOGGING; + uses BANDWIDTH; + uses AUTOROUTE; + uses PATH-SELECTION-METRIC; + uses NEW-STYLE-AFFINITY-TABLE; + uses SOFT-PREEMPTION; + uses FAST-REROUTE; + uses LOAD-SHARE; + } + container tunnel-id { + presence "Indicates a tunnel-id node is configured."; + description + "Set the tunnel ID"; + leaf tunnel-id-type { + type Mpls-te-tunnel-id; + mandatory true; + description + "Tunnel ID Type"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + description + "Tunnel ID"; + } + } + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..54"; + } + description + "Tunnel name"; + } + leaf tunnel-type { + type Mpls-te-config-tunnel; + description + "Tunnel Type"; + } + } + } + leaf enable { + type empty; + description + "Enable Named Tunnels"; + } + } + container gmpls-uni { + description + "GMPLS-UNI configuration"; + container timers { + description + "GMPLS-UNI timer configuration"; + container path-option-timers { + description + "GMPLS-UNI path-option timer configuration"; + container holddown { + description + "GMPLS-UNI path-option holddown timer + configuration"; + leaf minimum { + type uint32 { + range "5..3600"; + } + units "second"; + description + "Minimum holddown (seconds)"; + } + leaf maximum { + type uint32 { + range "5..3600"; + } + units "second"; + description + "Maximum holddown (seconds)"; + } + } + } + } + container controllers { + description + "GMPLS-UNI controllers"; + list controller { + key "controller-name"; + description + "Configure a GMPLS controller"; + container announce { + description + "Announce discovered tunnel properties to + system"; + leaf srl-gs { + type empty; + description + "Enable announcement of discovered SRLGs"; + } + } + container controller-logging { + description + "Controller logging"; + leaf discovered-srlg-change-logging { + type empty; + description + "Enable logging of changes to of discovered + SRLGs"; + } + } + container gmpls-unitunnel-head { + description + "GMPLS-UNI tunnel-head properties"; + container path-options { + description + "Path-option configuration"; + list path-option { + key "preference-level"; + description + "A Path-option"; + leaf preference-level { + type uint32 { + range "1..1000"; + } + description + "Preference level for this path option"; + } + leaf path-type { + type Mpls-te-path-option; + mandatory true; + description + "The type of the path option"; + } + leaf path-id { + type uint32 { + range "1..65535"; + } + default "1"; + description + "The ID of the explicit path associated + with this option"; + } + leaf path-name { + type string; + description + "The name of the explicit path associated + with this option"; + } + leaf xro-type { + type Mpls-te-path-option-xro; + mandatory true; + description + "The route-exclusion type"; + } + leaf xro-attribute-set-name { + type Attribute-set-name-length; + description + "The name of the XRO attribute set to be + used for this path-option"; + } + leaf lockdown { + type Mpls-te-path-option-property; + mandatory true; + description + "Path option properties: must be Lockdown"; + } + leaf verbatim { + type Mpls-te-path-option-property; + default "none"; + description + "Path option properties: must be verbatim + if set"; + } + leaf signaled-label { + type Mpls-te-signaled-label; + default "not-set"; + description + "Signaled label type"; + } + leaf dwdm-channel { + type uint32 { + range "1..89"; + } + default "1"; + description + "DWDM channel number"; + } + } + } + container recording { + description + "Tunnel property recording"; + leaf srlg { + type empty; + description + "Enable SRLG-recording during signaling"; + } + } + container logging { + description + "Tunnel event logging"; + uses STATE-MESSAGE; + } + leaf enc-type { + type Mpls-te-lsp-enc; + description + "UNI LSP Encoding type"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + description + "GMPLS-UNI head tunnel-id"; + } + leaf protection-attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "The name of the path-protection profile to + be included in signalling messages"; + } + leaf enable { + type empty; + description + "Set link as a GMPLS tunnel head"; + } + leaf gpid { + type uint32 { + range "0..255"; + } + description + "Generalized Payload type"; + } + leaf destination { + type inet:ipv4-address-no-zone; + description + "Set the destination of the tunnel"; + } + uses PRIORITY; + uses RECORD-ROUTE; + uses SIGNALLED-NAME; + } + leaf switching-type { + type Mpls-te-lsp-switch; + description + "Link Switching type"; + } + leaf mtu { + type uint32 { + range "64..65535"; + } + units "byte"; + description + "MTU on a controller"; + } + leaf enable { + type empty; + description + "Enable GMPLS-UNI on the link"; + } + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + } + } + } + container global-attributes { + description + "Configure MPLS TE global attributes"; + container auto-tunnel { + description + "Configure auto-tunnels feature"; + container pcc { + description + "Configure auto-tunnel PCC (Path Computation + Client) feature"; + uses TUNNEL-RANGE; + } + container p2p-auto-tunnel { + description + "Configure P2P auto-tunnel feature"; + uses TUNNEL-RANGE; + } + container backup { + description + "Configure auto-tunnel backup feature"; + leaf affinity-ignore { + type empty; + description + "Ignore affinity during CSPF for auto backup + tunnels"; + } + uses TIMERS; + uses TUNNEL-RANGE; + } + container mesh { + description + "Configure auto-tunnel mesh feature"; + container mesh-groups { + description + "Configure auto-tunnel mesh group"; + list mesh-group { + key "mesh-group-id"; + description + "Auto-mesh group identifier"; + leaf destination-list { + type Destination-list-name-length; + description + "The name of prefix-list to be applied to + this destination-list"; + } + leaf disable { + type empty; + description + "Disables mesh group"; + } + leaf attribute-set { + type Attribute-set-name-length; + description + "The name of auto-mesh attribute set to be + applied to this group"; + } + leaf one-hop { + type empty; + description + "Automatically create tunnel to all + next-hops"; + } + leaf mesh-group-id { + type Mesh-group-id; + description + "Mesh group ID"; + } + } + } + uses TIMERS; + uses TUNNEL-RANGE; + } + container p2mp-auto-tunnel { + description + "Configure P2MP auto-tunnel feature"; + uses TUNNEL-RANGE; + } + } + container hardware-out-of-resource { + description + "Configure HW OOR processing in MPLS-TE"; + container oor-red-state { + description + "Configuration for HW OOR Red State"; + uses OOR-NODE-PROTECTION-DISABLE; + uses OOR-AVAILABLE-BANDWIDTH-PERCENTAGE; + uses OOR-ACCEPT-LSP-MIN-BANDWIDTH; + uses OOR-ACCEPT-REOPT-LSP; + uses OOR-METRIC-TE-PENALTY; + } + container oor-yellow-state { + description + "Configuration for HW OOR Yellow State"; + uses OOR-NODE-PROTECTION-DISABLE; + uses OOR-AVAILABLE-BANDWIDTH-PERCENTAGE; + uses OOR-ACCEPT-LSP-MIN-BANDWIDTH; + uses OOR-ACCEPT-REOPT-LSP; + uses OOR-METRIC-TE-PENALTY; + } + container oor-green-state { + description + "Configuration for HW OOR Green State"; + uses OOR-RECOVERY-DURATION; + uses OOR-NODE-PROTECTION-DISABLE; + uses OOR-AVAILABLE-BANDWIDTH-PERCENTAGE; + uses OOR-ACCEPT-LSP-MIN-BANDWIDTH; + uses OOR-ACCEPT-REOPT-LSP; + uses OOR-METRIC-TE-PENALTY; + } + } + container secondary-router-ids { + description + "Configure MPLS TE Secondary Router ID"; + list secondary-router-id { + key "secondary-router-id-value"; + description + "Secondary Router ID"; + leaf secondary-router-id-value { + type inet:ipv4-address-no-zone; + description + "Secondary TE Router ID"; + } + } + } + container srlg { + description + "Configure SRLG values and MPLS-TE properties"; + container names { + description + "Configure SRLG identified by names"; + list name { + key "srlg-name"; + description + "SRLG name and its MPLS-TE properties"; + leaf admin-weight { + type uint32; + description + "Administrative weight for the SRLG value"; + } + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRLG membership name"; + } + } + } + leaf default-admin-weight { + type uint32; + default "1"; + description + "Default Admin weight any SRLG value that does + not have one"; + } + leaf enable { + type empty; + description + "Enter SRLG property configuration"; + } + } + container queues { + description + "Configure MPLS TE route priority"; + list queue { + key "role"; + description + "Configure route priority queue value"; + leaf role { + type Route-priority-role; + description + "Route Priority Tunnel Role"; + } + leaf value { + type uint32 { + range "0..12"; + } + mandatory true; + description + "Route priority queue value"; + } + } + } + container backoff-timer { + description + "Backoff timer for delaying sending LSP requests + on the same path after receving path errors"; + leaf initial-interval { + type uint32 { + range "0..600"; + } + default "3"; + description + "Initial interval"; + } + leaf final-interval { + type uint32 { + range "0..600"; + } + default "300"; + description + "Final interval"; + } + } + container mib { + description + "MPLS-TE MIB properties"; + leaf midpoint-lsp-stats-collection-disable { + type empty; + description + "Disables mib midpoint LSP traffic stats + collection"; + } + } + container attribute-set { + description + "Attribute AttributeSets"; + container path-option-attributes { + description + "Path Option Attribute-Set Table"; + list path-option-attribute { + key "attribute-set-name"; + description + "Path Option Attribute"; + container bfd-reverse-path { + presence "Indicates a bfd-reverse-path node is configured."; + description + "Configure BFD reverse path"; + leaf bfd-reverse-path-type { + type Bfd-reverse-path; + description + "BFD reverse path type"; + } + leaf binding-label { + type uint32 { + range "0..1048575"; + } + mandatory true; + description + "BFD reverse path binding label"; + } + } + container att-path-option-path-selection { + description + "Configure path selection properties"; + leaf path-selection-exclude-list { + type string { + length "1..64"; + } + description + "Path selection exclude list name + configuration"; + } + uses ENABLE; + uses PATH-SELECTION-DELAY-LIMIT; + uses INVALIDATION; + uses PATH-SELECTION-COST-LIMIT; + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses PCE; + uses AFFINITY-MASK; + uses BANDWIDTH; + uses NEW-STYLE-AFFINITY-TABLE; + } + } + container p2mpte-attributes { + description + "P2MP-TE Tunnel AttributeSets Table"; + list p2mpte-attribute { + key "attribute-set-name"; + description + "P2MP-TE Tunnel Attribute"; + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses INTERFACE-BANDWIDTH; + uses PRIORITY; + uses RECORD-ROUTE; + uses AFFINITY-MASK; + uses BANDWIDTH; + uses PATH-SELECTION; + uses NEW-STYLE-AFFINITY-TABLE; + uses FAST-REROUTE; + uses MPLS-MTE-TUNNEL-CFG-LOGGING; + } + } + container p2p-te-attributes { + description + "P2P-TE Tunnel AttributeSets Table"; + list p2p-te-attribute { + key "attribute-set-name"; + description + "P2P-TE Tunnel Attribute"; + container path-selection { + description + "Configure path selection properties"; + container segment-routing-prepend { + description + "Deprecated"; + container indexes { + description + "Segment routing prepend index table"; + list index { + key "index-number"; + description + "Prepend index information"; + leaf index-number { + type uint32 { + range "1..10"; + } + description + "Index number"; + } + leaf prepend-type { + type Sr-prepend; + default "none-type"; + description + "Prepend type"; + } + leaf mpls-label { + type uint32; + default "1048577"; + description + "MPLS Label"; + } + } + } + leaf enable { + type empty; + description + "Enter path selection segment routing + prepend submode"; + } + } + container invalidation { + description + "Deprecated"; + leaf invalidation-timer { + type uint32 { + range "0..60000"; + } + units "millisecond"; + description + "Path selection invalidation timer value + (milliseconds)"; + } + leaf invalidation-timer-expire-type { + type Mpls-te-path-selection-invalidation-timer-expire; + default "tunnel-action-tear"; + description + "Path selection invalidation timer expire + type"; + } + } + leaf path-selection-metric { + type Mpls-te-path-selection-metric; + description + "Path selection metric to use in path + calculation"; + } + leaf path-selection-segment-routing-adjacency-protection { + type Mpls-te-path-selection-segment-routing-adjacency-protection; + description + "Segment routing adjacency protection type + to use in path calculation"; + } + uses ENABLE; + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses PCE; + uses AFFINITY-MASK; + uses LOGGING; + uses NEW-STYLE-AFFINITY-TABLE; + } + } + container auto-backup-attributes { + description + "Auto-backup Tunnel Attribute Table"; + list auto-backup-attribute { + key "attribute-set-name"; + description + "Auto-backup Tunnel Attribute"; + container signalled-name { + description + "Signalled name"; + leaf name { + type string; + description + "Signalled name"; + } + leaf source-type { + type Mpls-te-sig-name-option; + description + "Source address or name"; + } + leaf protected-interface-type { + type Mpls-te-sig-name-option; + description + "Protected-interface address or name"; + } + leaf mp-address { + type boolean; + description + "Set if merge-point address is to be + appended"; + } + } + container auto-backup-logging { + description + "Log tunnel LSP messages"; + uses BANDWIDTH-CHANGE-MESSAGE; + uses REOPTIMIZE-ATTEMPTS-MESSAGE; + uses STATE-MESSAGE; + uses REOPTIMIZED-MESSAGE; + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses PRIORITY; + uses RECORD-ROUTE; + uses AFFINITY-MASK; + uses BANDWIDTH; + uses PATH-SELECTION; + uses POLICY-CLASSES; + uses NEW-STYLE-AFFINITY-TABLE; + uses SOFT-PREEMPTION; + } + } + container otn-pp-attributes { + description + "OTN Path Protection Attributes table"; + list otn-pp-attribute { + key "attribute-set-name"; + description + "OTN Path Protection Attribute"; + container revert-schedule-names { + description + "Specify APS revert schedule"; + list revert-schedule-name { + key "schedule-name"; + description + "Name Identifier for revert schedule"; + container schedule-duration { + presence "Indicates a schedule-duration node is configured."; + description + "Set duration in format hh:mm"; + leaf hour { + type uint32 { + range "0..167"; + } + mandatory true; + description + "Hour of day"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + mandatory true; + description + "Minute of the hour"; + } + } + container schedule-date { + presence "Indicates a schedule-date node is configured."; + description + "Set date in format hh:mm MMM DD YYYY"; + leaf hour { + type uint32 { + range "0..23"; + } + mandatory true; + description + "Hour of day"; + } + leaf minutes { + type uint32 { + range "0..59"; + } + mandatory true; + description + "Minute of the hour"; + } + leaf month { + type uint32 { + range "0..11"; + } + mandatory true; + description + "Month of the year"; + } + leaf day { + type uint32 { + range "1..31"; + } + mandatory true; + description + "Day of the month"; + } + leaf year { + type uint32 { + range "2015..2035"; + } + mandatory true; + description + "Year"; + } + } + leaf revert-schedule-max-tries { + type uint32 { + range "1..2016"; + } + description + "Revert Schedule Max tries"; + } + leaf sch-name-enable { + type empty; + description + "Schedule name enable object"; + } + leaf revert-schedule-frequency { + type uint32 { + range "1..3"; + } + description + "Frequency set as Once, Daily, Weekly"; + } + leaf schedule-name { + type xr:Cisco-ios-xr-string { + length "1..254"; + } + description + "Enter 64 characters for revert schedule + name"; + } + } + } + container sub-network-connection-mode { + description + "Sub-network connection mode"; + leaf connection-mode { + type Mpls-te-otn-snc-mode; + description + "The sub-network connection mode"; + } + leaf connection-monitoring-mode { + type uint32 { + range "1..6"; + } + description + "Tandem Connection Monitoring ID for the + interface"; + } + } + container timers { + description + "Timers"; + leaf aps-wait-to-restore { + type uint32 { + range "0..720"; + } + units "second"; + description + "G.709 OTN path protection wait to restore + timer in seconds"; + } + leaf aps-hold-off { + type uint32 { + range "100..10000"; + } + units "millisecond"; + description + "G.709 OTN path protection hold-off timer in + milliseconds"; + } + } + leaf aps-protection-mode { + type Mpls-te-otn-aps-protection-mode; + description + "The APS protecion mode"; + } + leaf aps-restoration-style { + type Mpls-te-otn-aps-restoration-style; + description + "The APS restoration style"; + } + leaf aps-protection-type { + type Mpls-te-otn-aps-protection; + description + "The APS protecion type"; + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses PATH-SELECTION; + } + } + container uni-p-attributes { + description + "UNI Protection Attributes table"; + list uni-p-attribute { + key "attribute-set-name"; + description + "UNI Protection Attribute"; + leaf seg-flag { + type Mpls-te-uni-lsp-seg-flag; + description + "The Seg flag value for uni-protection"; + } + leaf lsp-flag { + type Mpls-te-uni-lsp-seg-flag; + description + "The Lsp flag value for uni-protection"; + } + leaf required-bit { + type Mpls-te-uni-required-bit; + description + "Set Required bit for uni-protection"; + } + leaf in-place-bit { + type Mpls-te-uni-in-place-bit; + description + "Set in place bit for uni-protection"; + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses PATH-SELECTION; + } + } + container auto-mesh-attributes { + description + "Auto-mesh Tunnel AttributeSets Table"; + list auto-mesh-attribute { + key "attribute-set-name"; + description + "Auto-mesh Tunnel Attribute"; + container auto-mesh-logging { + description + "Log tunnel LSP messages"; + uses BANDWIDTH-CHANGE-MESSAGE; + uses REOPTIMIZE-ATTEMPTS-MESSAGE; + uses REROUTE-MESSSAGE; + uses STATE-MESSAGE; + uses PATH-ERROR-MESSAGE; + uses INSUFFICIENT-BW-MESSAGE; + uses REOPTIMIZED-MESSAGE; + uses PCALC-FAILURE-MESSAGE; + } + leaf autoroute-announce { + type empty; + description + "Enable autoroute announce"; + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses INTERFACE-BANDWIDTH; + uses FORWARD-CLASS; + uses PRIORITY; + uses RECORD-ROUTE; + uses AFFINITY-MASK; + uses BANDWIDTH; + uses PATH-SELECTION; + uses COLLECTION-ONLY; + uses POLICY-CLASSES; + uses NEW-STYLE-AFFINITY-TABLE; + uses SOFT-PREEMPTION; + uses FAST-REROUTE; + uses LOAD-SHARE; + } + } + container xro-attributes { + description + "XRO Tunnel Attributes table"; + list xro-attribute { + key "attribute-set-name"; + description + "XRO Attribute"; + container path-diversity { + description + "Path diversity"; + container srlgs { + description + "SRLG-based path diversity"; + list srlg { + key "srlg"; + description + "SRLG-based path-diversity element"; + leaf srlg { + type uint32 { + range "0..4294967295"; + } + description + "SRLG"; + } + leaf conformance { + type Mpls-te-path-diversity-conformance; + mandatory true; + description + "The diversity conformance requirements"; + } + } + } + container lsp { + description + "LSP-based path diversity"; + container fecs { + description + "FEC LSP-based path diversity"; + list fec { + key "source destination tunnel-id extended-tunnel-id lsp-id"; + description + "LSP-based path-diversity, referenced by + FEC"; + leaf source { + type inet:ipv4-address-no-zone; + description + "Source address"; + } + leaf destination { + type inet:ipv4-address-no-zone; + description + "Destination address"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + description + "Tunnel id"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended tunnel-id"; + } + leaf lsp-id { + type uint32 { + range "0..65535"; + } + description + "LSP id"; + } + leaf conformance { + type Mpls-te-path-diversity-conformance; + mandatory true; + description + "The diversity conformance requirements"; + } + } + } + } + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses PATH-SELECTION; + } + } + } + container bfd-over-lsp { + description + "BFD over MPLS TE Global Configurations"; + container tail { + description + "BFD over LSP Tail Global Configurations"; + leaf multiplier { + type uint32 { + range "3..10"; + } + description + "Specify BFD over LSP tail multiplier"; + } + leaf minimum-interval { + type uint32 { + range "3..30000"; + } + description + "Specify BFD over LSP tail minimum interval"; + } + } + container head { + description + "BFD over LSP Head Global Configurations"; + leaf reopt-timeout { + type uint32 { + range "120..4294967295"; + } + description + "BFD session down reopt timeout"; + } + leaf down-action { + type Mpls-te-bfd-session-down-action; + description + "Specify BFD session down action"; + } + } + } + container bandwidth-accounting { + description + "Bandwidth accounting configuration data"; + container application { + description + "Bandwidth accounting application configuration + data"; + leaf application-enforced { + type boolean; + default "false"; + description + "This object enables the application"; + } + leaf application-interval { + type uint32 { + range "30..1800"; + } + units "second"; + default "180"; + description + "This object sets the application interval in + seconds for bandwidth accounting. Default to + 180 seconds."; + } + } + container account-flooding-threshold { + description + "This object sets the flooding threshold as + percentage of total link bandwidth for + bandwidth accounting. Default to 10%, 10%"; + leaf up-threshold { + type Mpls-percent-range; + units "percentage"; + default "10"; + description + "Upward flooding Threshold in percentages of + total bandwidth"; + } + leaf down-threshold { + type Mpls-percent-range; + units "percentage"; + default "10"; + description + "Downward flooding Threshold in percentages of + total bandwidth"; + } + } + leaf sampling-interval { + type uint32 { + range "10..600"; + } + units "second"; + default "60"; + description + "This object sets the sampling interval in + seconds for bandwidth accounting. Default to + 60 seconds."; + } + leaf account-flooding-sr-traffic-pct { + type Mpls-percent-range; + units "percentage"; + description + "This object sets the flooding threshold as + percentage of total Segment Routing traffic + for bandwidth accounting. "; + } + leaf adjustment-factor { + type uint32 { + range "0..200"; + } + units "percentage"; + default "100"; + description + "This object sets the percentage adjustment + factor for the non RSVP-TE bandwidth + accounting. Default is 100%."; + } + leaf collection-type-rsvp-te { + type boolean; + default "false"; + description + "This object enables the bandwidth accounting + RSVP-TE sample collection."; + } + leaf enable { + type empty; + description + "This object controls whether BW accounting is + enabled. This object must be set before + setting any other objects under the + BandwidthAccounting class."; + } + } + container pce-attributes { + description + "Configuration MPLS TE PCE attributes"; + container pce-stateful { + description + "PCE Stateful"; + container stateful-timers { + description + "Configure Stateful PCE (Path Computation + Element) timers"; + leaf redelegation-timeout { + type uint32 { + range "0..1576800000"; + } + units "second"; + default "180"; + description + "Timer for static tunnel redelegation in + seconds, default is 180 seconds"; + } + leaf state-timeout { + type uint32 { + range "0..3600"; + } + units "second"; + default "180"; + description + "State timeout for LSPs without delegation in + seconds, zero means immediate removal, + default is 180 seconds"; + } + leaf delegation-delay { + type uint32 { + range "20..1800"; + } + units "second"; + default "60"; + description + "Time duration before LSP is delegated to PCE + in seconds, default is 60 seconds. Caution + :LSP can be removed if value is smaller than + request timeout"; + } + } + container redundancy { + description + "Configure PCE (Path Computation Element) + redundancy"; + leaf pcc-centric { + type empty; + description + "Enable PCC (Path Computation Client) centric + model"; + } + } + leaf fast-repair { + type empty; + description + "Enable reoptimization by PCC after path + failures"; + } + leaf instantiation { + type empty; + description + "PCE stateful instantiation capability"; + } + leaf cisco-extension { + type empty; + description + "Enable processing of PCEP Cisco extension"; + } + leaf autobw-object-type { + type uint32 { + range "0..255"; + } + default "5"; + description + "BW Object type for auto-bw feature"; + } + leaf delegation { + type empty; + description + "Delegate all statically configured tunnels"; + } + leaf autoroute-announce { + type empty; + description + "Enable autoroute announce for PCE + instantiated tunnels"; + } + leaf report { + type empty; + description + "Report all statically configured tunnels"; + } + leaf fast-reoptimization { + type empty; + description + "Enable head-end to react to path failures"; + } + leaf enable { + type empty; + description + "PCE stateful capability"; + } + } + container peers { + description + "Configure PCE peers"; + list peer { + key "pce-peer-address"; + description + "PCE peer"; + leaf pce-peer-address { + type inet:ipv4-address-no-zone; + description + "Address of PCE Peer"; + } + uses PASSWORD; + uses KEYCHAIN; + uses PRECEDENCE; + } + } + container logging { + description + "Configure PCE (Path Computation Element) + logging feature"; + container events { + description + "Configure logging events"; + leaf peer-status { + type empty; + description + "Peer status changes logging"; + } + } + } + leaf request-timeout { + type uint32 { + range "5..100"; + } + units "second"; + default "10"; + description + "Request timeout value in seconds"; + } + leaf reoptimize-period { + type uint32 { + range "60..604800"; + } + units "second"; + default "60"; + description + "PCE reoptimization period for PCE-based paths"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Address of this PCE"; + } + leaf deadtimer { + type uint32 { + range "0..255"; + } + units "second"; + default "120"; + description + "Deadtimer interval in seconds"; + } + leaf keepalive { + type uint32 { + range "0..255"; + } + units "second"; + default "30"; + description + "Keepalive interval in seconds"; + } + leaf keepalive-tolerance { + type uint32 { + range "0..255"; + } + units "second"; + default "10"; + description + "Keepalive interval tolerance in seconds"; + } + leaf peer-source-addr { + type inet:ipv4-address-no-zone; + description + "PCE Peer Source Address"; + } + leaf speaker-entity-id { + type string { + length "1..256"; + } + description + "PCE speaker entity identifier"; + } + leaf segment-routing { + type empty; + description + "Always set to true"; + } + uses PASSWORD; + uses KEYCHAIN; + uses PRECEDENCE; + } + container lsp-out-of-resource { + description + "Configure LSP OOR attributes in MPLS-TE"; + container lsp-oor-red-state { + description + "Configuration for LSP OOR Red/Major State"; + uses OOR-AVAILABLE-BANDWIDTH-PERCENTAGE; + uses OOR-ACCEPT-LSP-MIN-BANDWIDTH; + uses ALL-TRANSIT-LSP-THRESHOLD; + uses UNPROTECTED-TRANSIT-LSP-THRESHOLD; + uses OOR-ACCEPT-REOPT-LSP; + uses OOR-METRIC-TE-PENALTY; + } + container lsp-oor-green-state { + description + "Configuration for LSP OOR Green/Normal State"; + uses OOR-RECOVERY-DURATION; + uses OOR-AVAILABLE-BANDWIDTH-PERCENTAGE; + uses OOR-ACCEPT-LSP-MIN-BANDWIDTH; + uses OOR-ACCEPT-REOPT-LSP; + uses OOR-METRIC-TE-PENALTY; + } + container lsp-oor-yellow-state { + description + "Configuration for LSP OOR Yellow/Minor State"; + uses OOR-AVAILABLE-BANDWIDTH-PERCENTAGE; + uses OOR-ACCEPT-LSP-MIN-BANDWIDTH; + uses ALL-TRANSIT-LSP-THRESHOLD; + uses UNPROTECTED-TRANSIT-LSP-THRESHOLD; + uses OOR-ACCEPT-REOPT-LSP; + uses OOR-METRIC-TE-PENALTY; + } + } + container soft-preemption { + description + "Soft preemption configuration data"; + leaf timeout { + type uint32 { + range "1..300"; + } + units "second"; + default "60"; + description + "This object sets the timeout in seconds before + hard preemption is triggered."; + } + leaf frr-rewrite { + type empty; + description + "This object controls whether FRR rewrite + during soft preemption is enabled."; + } + leaf enable { + type boolean; + description + "This object controls whether soft preemption + is enabled. This object must be set before + setting any other objects under the + SoftPreemption class."; + } + } + container fast-reroute { + description + "Configure fast reroute attributes"; + container timers { + description + "Configure fast reroute timers"; + leaf hold-backup { + type uint32 { + range "0..604800"; + } + units "second"; + description + "Seconds before backup declared UP (0 disables + hold-timer)"; + } + leaf promotion { + type uint32 { + range "0..604800"; + } + units "second"; + description + "The value of the promotion timer in seconds"; + } + } + } + container path-selection { + description + "Path selection configuration"; + container loose-metrics { + description + "Path selection Loose ERO Metric Class + configuration"; + list loose-metric { + key "class-type"; + description + "Path selection Loose ERO Metric configuration"; + leaf class-type { + type uint32 { + range "0..7"; + } + description + "Path Selection class Type"; + } + leaf metric-type { + type Mpls-te-path-selection-metric; + mandatory true; + description + "Metric to use for ERO Expansion"; + } + } + } + container invalidation { + description + "Deprecated"; + leaf path-invalidation-timeout { + type uint32 { + range "0..60000"; + } + description + "Path Invalidation Timeout"; + } + leaf path-invalidation-action { + type Path-invalidation-action; + description + "Path Invalidation Action"; + } + } + container ignore-overload-role { + description + "Path selection to ignore overload node during + CSPF"; + leaf head { + type boolean; + description + "Set if the OL-bit is to be applied to tunnel + heads"; + } + leaf mid { + type boolean; + description + "Set if the OL-bit is to be applied to tunnel + midpoints"; + } + leaf tail { + type boolean; + description + "Set if the OL-bit is to be applied to tunnel + tails"; + } + } + container loose-affinities { + description + "Path selection Loose ERO Affinity Class + configuration"; + list loose-affinity { + key "class-type"; + description + "Path selection Loose ERO Affinity + configuration"; + leaf class-type { + type uint32 { + range "0..7"; + } + description + "Path Selection class Type"; + } + leaf affinity { + type xr:Hex-integer; + description + "Affinity flags"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask"; + } + } + } + leaf cost-limit { + type uint32 { + range "1..4294967295"; + } + description + "Path selection cost limit configuration for + all tunnels"; + } + leaf tiebreaker { + type Mpls-te-path-selection-tiebreaker; + description + "CSPF tiebreaker to use in path calculation"; + } + leaf metric { + type Mpls-te-path-selection-metric; + description + "Metric to use in path calculation"; + } + leaf loose-domain-match { + type boolean; + description + "Use only the IGP instance of the incoming + interface"; + } + leaf delay-limit { + type uint32 { + range "1..4294967295"; + } + description + "Path selection delay limit configuration for + p2p tunnels (usec)"; + } + } + container affinity-mappings { + description + "Affinity Mapping Table configuration"; + list affinity-mapping { + key "affinity-name"; + description + "Affinity Mapping configuration"; + leaf affinity-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Affinity Name"; + } + leaf value-type { + type Mpls-te-affinity-value; + description + "Affinity value type"; + } + leaf value { + type xr:Hex-integer; + description + "Affinity Value in Hex number or by Bit + position"; + } + } + } + leaf log-nsr-status { + type empty; + description + "Log NSR status messages"; + } + leaf log-issu-status { + type empty; + description + "Log ISSU status messages"; + } + leaf reoptimize-link-up { + type empty; + description + "Enable reoptimization based on link-up events"; + } + leaf reoptimize-delay-cleanup-timer { + type uint32 { + range "0..300"; + } + units "second"; + description + "Reoptimization Delay Cleanup Value (seconds)"; + } + leaf disable-reoptimize-affinity-failure { + type empty; + description + "Disable reoptimization after affinity failures"; + } + leaf maximum-tunnels { + type uint32 { + range "1..65536"; + } + default "4096"; + description + "The maximum number of tunnel heads that will be + allowed."; + } + leaf link-holddown-timer { + type uint32 { + range "0..300"; + } + units "second"; + default "10"; + description + "Holddown time for links which had Path Errors + in seconds"; + } + leaf fault-oam { + type empty; + description + "Enable Fault-OAM functionality for + bidirectional tunnels"; + } + leaf path-retry-timeout { + type uint32 { + range "30..600"; + } + units "second"; + description + "Path message timeout in seconds before a path + retry is attempted"; + } + leaf enable-unequal-load-balancing { + type empty; + description + "Enable unequal load-balancing over tunnels to + the same destination"; + } + leaf log-tail { + type empty; + description + "Log all tail tunnel events"; + } + leaf reoptimize-delay-after-frr-timer { + type uint32 { + range "0..120"; + } + units "second"; + description + "Reoptimization Delay After FRR Value (seconds)"; + } + leaf auto-bandwidth-collect-frequency { + type uint32 { + range "1..10080"; + } + units "minute"; + default "5"; + description + "Auto-bandwidth global collection frequency in + minutes"; + } + leaf reopt-delay-path-protect-switchover-timer { + type uint32 { + range "0..604800"; + } + units "second"; + default "180"; + description + "Seconds between path protect switchover and + tunnel re-optimization. Set to 0 to disable"; + } + leaf log-all { + type empty; + description + "Always set to true"; + } + leaf loose-path-retry-period { + type uint32 { + range "30..600"; + } + default "120"; + description + "Signalling retry for tunnels terminating + outside the headend area"; + } + leaf reoptimize-load-balancing { + type empty; + description + "Load balance bandwidth during reoptimization"; + } + leaf log-head { + type empty; + description + "Log all head tunnel events"; + } + leaf path-selection-ignore-overload { + type empty; + description + "Deprecated - do not use"; + } + leaf graceful-preemption-on-bandwidth-reduction { + type empty; + description + "Enable graceful preemption when there is a + bandwidth reduction"; + } + leaf pce-reoptimize-period { + type uint32 { + range "60..604800"; + } + units "second"; + default "60"; + description + "PCE reoptimization period for PCE-based paths"; + } + leaf advertise-explicit-nulls { + type empty; + description + "Enable explicit-null advertising to PHOP"; + } + leaf reoptimize-delay-install-timer { + type uint32 { + range "0..3600"; + } + units "second"; + description + "Reoptimization Delay Install Value (seconds)"; + } + leaf reoptimize-delay-after-affinity-failure-timer { + type uint32 { + range "1..604800"; + } + units "second"; + description + "Delay reoptimizing current LSP after affinity + failures"; + } + leaf log-frr-protection { + type Mpls-te-log-frr-protection; + description + "Log FRR Protection messages"; + } + leaf reoptimize-timer-frequency { + type uint32 { + range "0..604800"; + } + units "second"; + default "3600"; + description + "Reoptimize timers period in seconds"; + } + leaf log-mid { + type empty; + description + "Log all mid tunnel events"; + } + leaf pce-request-timeout { + type uint32 { + range "5..100"; + } + units "second"; + default "10"; + description + "Request timeout value in seconds"; + } + leaf log-preemption { + type empty; + description + "Log tunnel preemption messages"; + } + } + container transport-profile { + description + "MPLS transport profile configuration data"; + container fault { + description + "Fault management"; + container protection-trigger { + description + "OAM events that trigger protection switching"; + container ldi { + description + "Protection switching due to LDI event"; + leaf disable { + type empty; + description + "Disable protection switching due to LDI + event"; + } + } + container lkr { + description + "Protection switching due to LKR event"; + leaf disable { + type empty; + description + "Disable protection switching due to LKR + event"; + } + } + leaf ais { + type empty; + description + "Enable protection switching due to AIS event"; + } + } + leaf wait-to-restore-interval { + type uint32 { + range "0..2147483647"; + } + units "second"; + default "0"; + description + "Waiting time before restoring working LSP"; + } + leaf refresh-interval { + type uint32 { + range "1..20"; + } + units "second"; + default "20"; + description + "Periodic refresh interval for fault OAM + messages"; + } + } + container alarm { + description + "Alarm management"; + container suppress-event { + description + "Suppress all tunnel/LSP alarms"; + leaf disable { + type empty; + description + "Disable alarm suppression"; + } + } + leaf soak-time { + type uint32 { + range "0..10"; + } + units "second"; + default "3"; + description + "Duration of soaking alarms"; + } + leaf enable-alarm { + type empty; + description + "Enable Transport Profile Alarm"; + } + } + container bfd { + description + "Configure BFD parameters"; + container min-interval-standby { + description + "Hello interval for standby transport profile + LSPs, either in milli-seconds or in + micro-seconds"; + leaf interval-standby-ms { + type uint32 { + range "3..5000"; + } + units "millisecond"; + description + "Hello interval in milli-seconds"; + } + leaf interval-standby-us { + type uint32 { + range "3000..5000000"; + } + units "microsecond"; + description + "Hello interval in micro-seconds"; + } + } + container min-interval { + description + "Hello interval, either in milli-seconds or in + micro-seconds"; + leaf interval-ms { + type uint32 { + range "3..5000"; + } + units "millisecond"; + description + "Hello interval in milli-seconds"; + } + leaf interval-us { + type uint32 { + range "3000..5000000"; + } + units "microsecond"; + description + "Hello interval in micro-seconds"; + } + } + leaf detection-multiplier-standby { + type uint32 { + range "2..10"; + } + description + "Detect multiplier for standby transport + profile LSP"; + } + leaf detection-multiplier { + type uint32 { + range "2..10"; + } + description + "Detect multiplier"; + } + } + container midpoints { + description + "MPLS-TP tunnel mid-point table"; + list midpoint { + key "midpoint-name"; + description + "Transport profile mid-point identifier"; + container source { + presence "Indicates a source node is configured."; + description + "Node identifier, tunnel identifier and + optional global identifier of the source of + the LSP"; + leaf node-id { + type inet:ipv4-address-no-zone; + description + "Node identifier in IPv4 address format"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Tunnel identifier in numeric value"; + } + leaf global-id { + type uint32 { + range "1..65535"; + } + description + "Global identifier in numeric value"; + } + } + container destination { + presence "Indicates a destination node is configured."; + description + "Node identifier, tunnel identifier and + optional global identifier of the destination + of the LSP"; + leaf node-id { + type inet:ipv4-address-no-zone; + description + "Node identifier in IPv4 address format"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Tunnel identifier in numeric value"; + } + leaf global-id { + type uint32 { + range "1..65535"; + } + description + "Global identifier in numeric value"; + } + } + container forward-lsp { + description + "Forward transport profile LSP"; + container forward-io-map { + presence "Indicates a forward-io-map node is configured."; + description + "Label cross-connect of forward transport + profile LSP"; + leaf in-label { + type uint32 { + range "16..4015"; + } + description + "MPLS label"; + } + leaf out-label { + type uint32 { + range "16..1048575"; + } + mandatory true; + description + "Outgoing MPLS label"; + } + leaf out-link { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Transport profile identifier of outgoing + link"; + } + } + leaf forward-bandwidth { + type uint32 { + range "0..4294967295"; + } + units "kbit/s"; + description + "Bandwidth of forward transport profile LSP"; + } + } + container reverse-lsp { + description + "none"; + container reverse-io-map { + presence "Indicates a reverse-io-map node is configured."; + description + "Label cross-connect of reverse transport + profile LSP"; + leaf in-label { + type uint32 { + range "16..4015"; + } + description + "MPLS label"; + } + leaf out-label { + type uint32 { + range "16..1048575"; + } + mandatory true; + description + "Outgoing MPLS label"; + } + leaf out-link { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Transport profile identifier of outgoing + link"; + } + } + leaf reverse-bandwidth { + type uint32 { + range "0..4294967295"; + } + units "kbit/s"; + description + "Bandwidth of reverse transport profile LSP"; + } + } + leaf tunnel-name { + type string; + description + "Tunnel Name"; + } + leaf lsp-protect { + type empty; + description + "Enable LSP protection"; + } + leaf lsp-id { + type uint32 { + range "0..65535"; + } + description + "Numeric identifier"; + } + leaf midpoint-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Name of mid-point"; + } + } + } + leaf global-id { + type uint32 { + range "1..65535"; + } + description + "Transport profile global identifier"; + } + leaf node-id { + type inet:ipv4-address-no-zone; + description + "Node identifier in IPv4 address format"; + } + } + container interfaces { + description + "Configure MPLS TE interfaces"; + list interface { + key "interface-name"; + description + "Configure an MPLS TE interface"; + container transport-profile-link { + description + "MPLS transport profile capable link"; + container links { + description + "Transport profile link table"; + list link { + key "link-id"; + description + "Transport profile link"; + leaf link-id { + type uint32 { + range "1..65535"; + } + description + "Numeric link identifier"; + } + leaf next-hop-type { + type Link-next-hop; + mandatory true; + description + "Next hop type"; + } + leaf next-hop-address { + when "../next-hop-type = 'ipv4-address'" { + description + "../NextHopType = IPV4Address"; + } + type inet:ipv4-address-no-zone; + description + "Next-hop address in IPv4 format"; + } + } + } + } + container lcac { + description + "LCAC specific MPLS interface configuration"; + container switchings { + description + "Set the te-link switching attributes"; + list switching { + key "switching-id"; + description + "The te-link switching attributes"; + leaf encoding { + type Mpls-te-switching-encoding; + description + "Set the local encoding type"; + } + leaf capability { + type Mpls-te-switching-cap; + description + "Set the local switching capability"; + } + leaf switching-id { + type Mpls-te-switching-index; + description + "Switching index"; + } + } + } + container flood-area { + description + "Set the IGP instance into which this + interface is to be flooded (GMPLS only)"; + leaf igp-type { + type Mpls-lcac-flooding-igp; + description + "IGP type"; + } + leaf process-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Process name"; + } + leaf area-id { + type uint32; + description + "Area ID"; + } + } + container attribute-name-xr { + description + "Set the interface attribute names"; + leaf-list attribute-name { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + container attribute-names { + description + "Attribute name table"; + list attribute-name { + key "affinity-index"; + description + "Set the interface attribute names"; + leaf affinity-index { + type uint32 { + range "1..9"; + } + description + "Specify the entry index"; + } + leaf-list value { + type string; + min-elements 1; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + } + container srlgs { + description + "Configure SRLG membership for the interface"; + list srlg { + key "srlg-number"; + description + "SRLG membership number"; + leaf srlg-number { + type uint32 { + range "0..4294967295"; + } + description + "SRLG membership number"; + } + } + } + container up-thresholds { + description + "Set thresholds for increased resource + availability in %"; + leaf-list up-threshold { + type Mpls-lcac-flooding-threshold-percent-range; + units "percentage"; + max-elements "14"; + description + "Array of up threshold percentage"; + } + } + container down-thresholds { + description + "Set thresholds for decreased resource + availability in %"; + leaf-list down-threshold { + type Mpls-lcac-flooding-threshold-percent-range; + units "percentage"; + max-elements "14"; + description + "Array of down threshold percentage"; + } + } + leaf bfd { + type empty; + description + "Enable use of Bidirectional Forwarding + Detection"; + } + leaf fault-oam-lockout { + type empty; + description + "Lockout protection on the interface for Flex + LSP"; + } + leaf attribute-flags { + type xr:Hex-integer; + description + "Set user defined interface attribute flags"; + } + leaf enable { + type empty; + description + "Enable MPLS-TE on the link"; + } + leaf admin-weight { + type uint32 { + range "0..4294967295"; + } + description + "Set administrative weight for the interface"; + } + } + container global-attributes { + description + "MPLS TE global interface configuration"; + container backup-tunnels { + description + "Configure MPLS TE backup tunnels for this + interface"; + list backup-tunnel { + key "tunnel-name"; + description + "Tunnel name"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..54"; + } + description + "Tunnel name"; + } + } + } + container auto-tunnel { + description + "Auto tunnel configuration"; + container backup { + description + "Auto tunnel backup configuration"; + container bandwidth-protection { + description + "Auto-tunnel bandwidth protection"; + leaf maximum-aggregate { + type uint32 { + range "1..4294967295"; + } + units "kbit/s"; + description + "Set maximum aggregated amount of bandwidth + to protect"; + } + } + container exclude { + description + "Auto-tunnel backup exclusion criteria"; + leaf srlg-mode { + type Mpls-tesrlg-exclude; + description + "Set exclude SRLG mode for auto-tunnel + backup on this TE link"; + } + } + leaf enable { + type empty; + description + "Enable auto-tunnel backup on this TE link"; + } + leaf attribute-set { + type Attribute-set-name-length; + description + "The name of attribute set to be applied to + this auto backup lsp"; + } + leaf next-hop-only { + type empty; + description + "Enable NHOP-only mode for auto-tunnel + backup on this TE link"; + } + } + } + container backup-paths { + description + "Configure MPLS TE backup tunnels for this + interface"; + list backup-path { + key "tunnel-number"; + description + "Tunnel interface number"; + leaf tunnel-number { + type uint32 { + range "0..65535"; + } + description + "Tunnel interface number"; + } + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container gmpls-nni { + description + "GMPLS-NNI configuration"; + container topology-instances { + description + "GMPLS-NNI topology instance table"; + list topology-instance { + must "ospf-int or ospfip-addr" { + description + "OSPFInt or OSPFIPAddr must be present."; + } + key "ospf-area-type igp-instance-name igp-type"; + description + "GMPLS-NNI topology instance configuration"; + + grouping TOPOLOGY-INSTANCE-CONTENT { + description + "TOPOLOGY INSTANCE CONTENT"; + container controllers { + description + "GMPLS-NNI controllers"; + list controller { + key "controller-name"; + description + "Configure a GMPLS NNI controller"; + container tti-mode { + description + "Set tandem connection monitoring for the + interface"; + leaf tti-mode-type { + type Gmplstti-mode; + description + "Type of Trail Trace Identifier"; + } + leaf tcmid { + when "../tti-mode-type = 'tcm'" { + description + "../TTIModeType = TCM"; + } + type uint32 { + range "1..6"; + } + description + "Tandem Connection Monitoring ID for the + interface"; + } + } + container affinity-names { + description + "Set the interface affinity names"; + leaf-list affinity-name { + type string; + max-elements "32"; + description + "Array of Attribute Names"; + } + } + leaf admin-weight { + type uint32 { + range "0..65535"; + } + description + "Set administrative weight for the + interface"; + } + leaf enable { + type empty; + description + "Enable GMPLS-NNI on the link"; + } + leaf delay { + type uint32 { + range "1..16777215"; + } + description + "Set link delay for the interface"; + } + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + } + } + } + leaf igp-type { + type Mpls-te-igp-protocol; + description + "IGP type"; + } + leaf igp-instance-name { + type xr:Cisco-ios-xr-string { + length "1..40"; + } + description + "Name of IGP instance"; + } + leaf ospf-area-type { + type Ospf-area-mode; + description + "OSPF area format"; + } + list ospf-int { + when "../ospf-area-type = 'ospf-int'" { + description + "../OSPFAreaType = OSPFInt"; + } + key "igp-area"; + description + "ospf int"; + leaf igp-area { + type uint32; + description + "IGP area"; + } + uses TOPOLOGY-INSTANCE-CONTENT; + } + list ospfip-addr { + when "../ospf-area-type = 'ospfip-addr'" { + description + "../OSPFAreaType = OSPFIPAddr"; + } + key "address"; + description + "ospfip addr"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Area ID if in IP address format"; + } + uses TOPOLOGY-INSTANCE-CONTENT; + } + } + } + container tunnel-heads { + description + "GMPLS-NNI tunnel-head table"; + list tunnel-head { + key "tunnel-id"; + description + "The configuration for a GMPLS NNI tunnel + head-end"; + container signalled-bandwidth { + description + "The existence of this configuration indicates + the signalled bandwidth has been set for the + tunnel"; + leaf signalled-bandwidth-type { + type Otn-signaled-bandwidth; + description + "The g.709 signal type requested"; + } + leaf bitrate { + when "../signalled-bandwidth-type = 'od-uflex-cbr' or ../signalled-bandwidth-type = 'od-uflex-gfp-resize' or ../signalled-bandwidth-type = 'od-uflex-gfp-not-resize'" { + description + "../SignalledBandwidthType = ODUflexCBR or + ../SignalledBandwidthType = + ODUflexGFPResize or . + ./SignalledBandwidthType = + ODUflexGFPNotResize"; + } + type uint32; + units "kbit/s"; + description + "Bitrate value in Kbps for ODUflex framing + type"; + } + leaf od-uflex-framing-type { + when "../signalled-bandwidth-type = 'od-uflex-cbr' or ../signalled-bandwidth-type = 'od-uflex-gfp-resize' or ../signalled-bandwidth-type = 'od-uflex-gfp-not-resize'" { + description + "../SignalledBandwidthType = ODUflexCBR or + ../SignalledBandwidthType = + ODUflexGFPResize or . + ./SignalledBandwidthType = + ODUflexGFPNotResize"; + } + type Otn-signaled-bandwidth-flex-framing; + description + "Framing type in case of ODUflex signal type"; + } + } + container destination { + description + "The existence of this configuration indicates + the destination has been set for the tunnel"; + leaf destination { + type inet:ipv4-address-no-zone; + description + "IPV4 tunnel destination"; + } + leaf destination-type { + type Otn-destination; + description + "Destination type whether it is unicast or + unnumbered"; + } + leaf interface-if-index { + type uint32; + description + "Interface index of port"; + } + } + container protection-switching { + description + "The configuration for a GMPLS NNI tunnel + protection switch"; + leaf lockout { + type Otn-protection-switch-lockout; + description + "The configuration is used to prevent switch + over for a particular path type in tunnel"; + } + } + container logging { + description + "Tunnel event logging"; + leaf active-lsp-message { + type empty; + description + "Log all tunnel messages for changes in + Active LSP"; + } + leaf homepath-state-message { + type empty; + description + "Log all messages for changes in state of + Homepath of Working LSP"; + } + leaf signalling-state-message { + type empty; + description + "Log all tunnel sub-LSP state messages"; + } + leaf path-change-message { + type empty; + description + "Log all tunnel messages for changes in + path-change"; + } + leaf static-cross-connect-message { + type empty; + description + "Log all tunnel messages for static + cross-connect messages"; + } + leaf tunnel-state-message { + type empty; + description + "Log all tunnel messages for changes in + tunnel-state"; + } + leaf insufficient-bw-message { + type empty; + description + "Log tunnel messages for insufficient + bandwidth"; + } + } + container path-options { + description + "GMPLS NNI path options"; + list path-option { + key "preference-level"; + description + "The existence of this configuration + indicates the path options have been set for + the tunnel"; + leaf preference-level { + type uint32 { + range "1..1000"; + } + description + "Preference level for this path option"; + } + leaf path-type { + type Mpls-te-path-option; + description + "The type of the path option"; + } + leaf path-id { + type uint32 { + range "1..65535"; + } + description + "The ID of the IP explicit path associated + with this option"; + } + leaf path-name { + type string; + description + "The name of the IP explicit path associated + with this option"; + } + leaf protected-by-preference-level { + type uint32 { + range "1..1001"; + } + description + "Preference level of the protecting explicit + path. "; + } + leaf restore-by-preference-level { + type uint32 { + range "1..1000"; + } + description + "Preference level of the restore path. "; + } + leaf xro-type { + type Mpls-te-path-option-xro; + mandatory true; + description + "The route-exclusion type"; + } + leaf xro-attribute-set-name { + type Attribute-set-name-length; + description + "The name of the XRO attribute set to be + used for this path-option"; + } + leaf affinity-attribute-set-name { + type Attribute-set-affinity-name-length; + description + "The name of the affinity attribute set to + be used for this path-option"; + } + leaf lockdown { + type Mpls-te-path-option-property; + description + "Lockdown properties"; + } + } + } + container static-uni { + description + "The existence of this configuration indicates + the static UNI endpoints have been set for + the tunnel"; + leaf ingress-controller-name { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Name of ingress controller"; + } + leaf egress-controller-if-index { + type uint32; + description + "Interface index of Egress controller"; + } + leaf ingress-type { + type Otn-static-uni; + description + "Ingress type whether it is xconnect or + terminated"; + } + leaf egress-type { + type Otn-static-uni; + description + "Egress type whether it is xconnect or + terminated"; + } + } + leaf enable { + type empty; + description + "The existence of this configuration indicates + the a new GMPLS NNI tunnel has been enabled"; + } + leaf announce-srlg { + type empty; + description + "Announce SRLG on term interface for the + tunnel"; + } + leaf restore-lsp-shutdown { + type empty; + description + "The existence of this configuration indicates + the restore LSP of tunnel is shutdown"; + } + leaf current-lsp-shutdown { + type empty; + description + "The existence of this configuration indicates + the current/working LSP of tunnel is shutdown"; + } + leaf path-selection-metric { + type Mpls-te-path-selection-metric; + description + "Path selection configuration for this + specific tunnel"; + } + leaf payload { + type Otn-payload; + description + "The existence of this configuration indicates + the Payload type have been set for the tunnel"; + } + leaf standby-lsp-shutdown { + type empty; + description + "The existence of this configuration indicates + the standby/protect LSP of tunnel is shutdown"; + } + leaf shutdown { + type empty; + description + "The existence of this configuration indicates + the tunnel is shutdown"; + } + leaf path-protection-attribute-set-profile { + type string { + length "1..64"; + } + description + "The name of the path-protection profile to be + included in signalling messages"; + } + leaf tunnel-id { + type uint32 { + range "0..65535"; + } + description + "Tunnel ID"; + } + uses RECORD-ROUTE; + uses SIGNALLED-NAME; + } + } + leaf path-selection-metric { + type Mpls-te-path-selection-metric; + description + "Path selection configuration for all gmpls nni + tunnels"; + } + leaf enable-gmpls-nni { + type empty; + description + "Enable MPLS Traffic Engineering GMPLS-NNI"; + } + } + container lcac { + description + "LCAC specific MPLS global configuration"; + container bfd { + description + "BFD configuration"; + leaf interval { + type uint32 { + range "15..200"; + } + units "millisecond"; + description + "Hello interval for BFD sessions created by TE"; + } + leaf detection-multiplier { + type uint32 { + range "2..10"; + } + description + "Detection multiplier for BFD sessions created + by TE"; + } + } + container flooding-threshold { + description + "Configure flooding threshold as percentage of + total link bandwidth."; + leaf up-stream { + type Mpls-percent-range; + units "percentage"; + description + "Upward flooding Threshold in percentages of + total bandwidth"; + } + leaf down-stream { + type Mpls-percent-range; + units "percentage"; + description + "Downward flooding Threshold in percentages of + total bandwidth"; + } + } + leaf bandwidth-hold-timer { + type Mpls-lcac-bandwidth-hold-timer-range; + units "second"; + description + "Bandwidth hold timer value (seconds)"; + } + leaf delay-preempt-bundle-capacity-timer { + type uint32 { + range "0..300"; + } + units "second"; + description + "Bundle capacity preemption timer value + (seconds)"; + } + leaf periodic-flooding-timer { + type uint32 { + range "0..3600"; + } + units "second"; + description + "Periodic flooding value (seconds)"; + } + } + leaf enable-traffic-engineering { + type empty; + description + "Enable MPLS Traffic Engineering"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-datatypes.yang new file mode 100644 index 000000000..586027a7d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-datatypes.yang @@ -0,0 +1,962 @@ +module Cisco-IOS-XR-mpls-te-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-te-datatypes"; + prefix mpls-te-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-03 { + description + "Added include-any under MPLS_TETunnelAffinityType"; + semver:module-version "2.1.0"; + } + revision 2019-09-30 { + description + "extra leaves in mpls.traffic-eng.attribute-set.auto-backup.logging.events.lsp-status"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-tesrlg-exclude { + type enumeration { + enum "mandatory" { + value 1; + description + "SRLG Mandatory Exclude"; + } + enum "preferred" { + value 2; + description + "SRLG Preferred Exclude"; + } + enum "weighted" { + value 3; + description + "SRLG Weighted Exclude"; + } + } + description + "Mpls tesrlg exclude"; + } + + typedef Mpls-te-affinity-value { + type enumeration { + enum "hex-value" { + value 1; + description + "Affinity value in Hex number"; + } + enum "bit-position" { + value 2; + description + "Affinity value by Bit-Position"; + } + } + description + "Mpls te affinity value"; + } + + typedef Mpls-te-uni-in-place-bit { + type enumeration { + enum "not-set" { + value 0; + description + "NOT SET"; + } + enum "set" { + value 8; + description + "SET"; + } + } + description + "Mpls te uni in place bit"; + } + + typedef Destination-list-name-length { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Destination list name length"; + } + + typedef Mpls-percent-range { + type uint32 { + range "0..100"; + } + description + "Mpls percent range"; + } + + typedef Sr-prepend { + type enumeration { + enum "none-type" { + value 0; + description + "NoneType"; + } + enum "next-label" { + value 1; + description + "Next Label"; + } + enum "bgp-n-hop" { + value 2; + description + "BGP NHOP"; + } + } + description + "Sr prepend"; + } + + typedef Mpls-te-path-selection-tiebreaker { + type enumeration { + enum "min-fill" { + value 1; + description + "Prefer the path with the least-utilized links"; + } + enum "max-fill" { + value 2; + description + "Prefer the path with the most-utilized links"; + } + enum "random" { + value 3; + description + "Prefer a path with links utilized randomly"; + } + } + description + "Mpls te path selection tiebreaker"; + } + + typedef Attribute-set-name-length { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Attribute set name length"; + } + + typedef Mpls-te-otn-aps-protection { + type enumeration { + enum "1plus1-unidir-no-aps" { + value 4; + description + "1PLUS1 UNIDIR NO APS"; + } + enum "1plus1-unidir-aps" { + value 8; + description + "1PLUS1 UNIDIR APS"; + } + enum "1plus1-bdir-aps" { + value 16; + description + "1PLUS1 BIDIR APS"; + } + } + description + "Mpls te otn aps protection"; + } + + typedef Mpls-te-path-option-property { + type enumeration { + enum "none" { + value 0; + description + "No property"; + } + enum "lockdown" { + value 1; + description + "Path is not a candidate for reoptimization"; + } + enum "verbatim" { + value 4; + description + "Explicit path does not require topology + database"; + } + enum "pce" { + value 8; + description + "Dynamic path found by PCE server"; + } + enum "segment-routing" { + value 16; + description + "Segment Routing path"; + } + enum "sticky" { + value 32; + description + "Force tunnel to remain on same path"; + } + } + description + "Mpls te path option property"; + } + + typedef Mpls-te-lsp-switch { + type enumeration { + enum "dcsc" { + value 0; + description + "Data channel switch capable"; + } + enum "lsc" { + value 1; + description + "Lambda switch capable"; + } + enum "fsc" { + value 2; + description + "Fiber switch capable"; + } + } + description + "Mpls te lsp switch"; + } + + typedef Mpls-te-path-option-xro { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "xro-attribute-set-type" { + value 1; + description + "Defined as attribute-set"; + } + } + description + "Mpls te path option xro"; + } + + typedef Mpls-te-tunnel-affinity { + type enumeration { + enum "include" { + value 1; + description + "Include Affinity"; + } + enum "include-strict" { + value 2; + description + "Strictly Include Affinity"; + } + enum "exclude" { + value 3; + description + "Exclude Affinity"; + } + enum "exclude-all" { + value 4; + description + "Exclude All Affinities"; + } + enum "ignore" { + value 5; + description + "Ignore Affinity"; + } + enum "include-any" { + value 6; + description + "Include Any Affinity"; + } + } + description + "Mpls te tunnel affinity"; + } + + typedef Mpls-te-lsp-enc { + type enumeration { + enum "ethernet-type1" { + value 0; + description + "Ethernet Type1"; + } + enum "ethernet-type2" { + value 1; + description + "Ethernet Type2"; + } + enum "lambda" { + value 2; + description + "Lambda"; + } + enum "fiber" { + value 3; + description + "Fiber"; + } + } + description + "Mpls te lsp enc"; + } + + typedef Mpls-te-switching-cap { + type enumeration { + enum "psc1" { + value 1; + description + "PSC1"; + } + enum "lsc" { + value 150; + description + "LSC"; + } + enum "fsc" { + value 200; + description + "FSC"; + } + } + description + "Mpls te switching cap"; + } + + typedef Mpls-te-otn-aps-protection-mode { + type enumeration { + enum "revertive" { + value 1; + description + "Revertive"; + } + enum "non-revertive" { + value 2; + description + "Non Revertive"; + } + } + description + "Mpls te otn aps protection mode"; + } + + typedef Mpls-te-bfd-session-down-action { + type enumeration { + enum "re-setup" { + value 1; + description + "Tear down and resetup"; + } + } + description + "Mpls te bfd session down action"; + } + + typedef Mpls-te-log-frr-protection { + type enumeration { + enum "frr-active-primary" { + value 1; + description + "Track only FRR active on primary LSP"; + } + enum "backup" { + value 256; + description + "backup tunnel"; + } + enum "frr-ready-primary" { + value 512; + description + "Track only FRR ready on primary LSP"; + } + enum "primary" { + value 513; + description + "primary LSP"; + } + enum "all" { + value 769; + description + "all"; + } + } + description + "Mpls te log frr protection"; + } + + typedef Mpls-te-uni-required-bit { + type enumeration { + enum "not-set" { + value 0; + description + "NOT SET"; + } + enum "set" { + value 4; + description + "SET"; + } + } + description + "Mpls te uni required bit"; + } + + typedef Mpls-te-autoroute-metric { + type enumeration { + enum "relative" { + value 1; + description + "Relative"; + } + enum "absolute" { + value 2; + description + "Absolute"; + } + enum "constant" { + value 3; + description + "Constant"; + } + } + description + "Mpls te autoroute metric"; + } + + typedef Mpls-te-backup-bandwidth-pool { + type enumeration { + enum "any-pool" { + value 1; + description + "Any Pool"; + } + enum "global-pool" { + value 2; + description + "Global Pool"; + } + enum "sub-pool" { + value 4; + description + "Sub Pool"; + } + } + description + "Mpls te backup bandwidth pool"; + } + + typedef Mpls-te-otn-snc-mode { + type enumeration { + enum "snc-n" { + value 1; + description + "SNC N"; + } + enum "snc-i" { + value 2; + description + "SNC I"; + } + enum "snc-s" { + value 3; + description + "SNC S"; + } + } + description + "Mpls te otn snc mode"; + } + + typedef Bfd-reverse-path { + type enumeration { + enum "bfd-reverse-path-binding-label" { + value 1; + description + "BindingLabel"; + } + } + description + "Bfd reverse path"; + } + + typedef Mpls-te-path-selection-metric { + type enumeration { + enum "igp" { + value 1; + description + "IGP Metric"; + } + enum "te" { + value 2; + description + "TE Metric"; + } + enum "delay" { + value 4; + description + "DELAY Metric"; + } + } + description + "Mpls te path selection metric"; + } + + typedef Mpls-te-path-option { + type enumeration { + enum "not-set" { + value 0; + description + "Not Set"; + } + enum "dynamic" { + value 1; + description + "Dynamic"; + } + enum "explicit-name" { + value 3; + description + "Explicit, identified by name"; + } + enum "explicit-number" { + value 4; + description + "Explicit, identified by number"; + } + enum "no-ero" { + value 5; + description + "No ERO"; + } + enum "sr" { + value 6; + description + "Deprecated"; + } + } + description + "Mpls te path option"; + } + + typedef Mpls-te-bandwidth-pool { + type enumeration { + enum "any-pool" { + value 0; + description + "Any Pool"; + } + enum "sub-pool" { + value 1; + description + "Sub Pool"; + } + } + description + "Mpls te bandwidth pool"; + } + + typedef Mpls-te-bandwidth-dste { + type enumeration { + enum "standard-dste" { + value 0; + description + "IETF-Standard DSTE"; + } + enum "pre-standard-dste" { + value 1; + description + "Pre-Standard DSTE"; + } + } + description + "Mpls te bandwidth dste"; + } + + typedef Mpls-te-path-selection-invalidation-timer-expire { + type enumeration { + enum "tunnel-action-tear" { + value 1; + description + "Tear down tunnel."; + } + enum "tunnel-action-drop" { + value 2; + description + "Drop tunnel traffic."; + } + } + description + "Mpls te path selection invalidation timer expire"; + } + + typedef Ctype { + type enumeration { + enum "ctype-null" { + value 0; + description + "CTYPE NULL"; + } + enum "ctype-ipv4" { + value 1; + description + "CTYPE IPV4"; + } + enum "ctype-ipv4-p2p-tunnel" { + value 7; + description + "CTYPE IPV4 P2P TUNNEL"; + } + enum "ctype-ipv6-p2p-tunnel" { + value 8; + description + "CTYPE IPV6 P2P TUNNEL"; + } + enum "ctype-ipv4-uni" { + value 9; + description + "CTYPE IPV4 UNI"; + } + enum "ctype-ipv4-p2mp-tunnel" { + value 13; + description + "CTYPE IPV4 P2MP TUNNEL"; + } + enum "ctype-ipv6-p2mp-tunnel" { + value 14; + description + "CTYPE IPV6 P2MP TUNNEL"; + } + } + description + "Ctype"; + } + + typedef Attribute-set-affinity-name-length { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Attribute set affinity name length"; + } + + typedef Mpls-te-path-diversity-conformance { + type enumeration { + enum "strict" { + value 0; + description + "Strict"; + } + enum "best-effort" { + value 1; + description + "Best effort"; + } + } + description + "Mpls te path diversity conformance"; + } + + typedef Mpls-te-uni-lsp-seg-flag { + type enumeration { + enum "unprotected" { + value 0; + description + "UNPROTECTED"; + } + enum "rerouting" { + value 1; + description + "REROUTING"; + } + enum "rerouting-no-et" { + value 2; + description + "REROUTING NO ET"; + } + enum "rerouting-one-to-n-et" { + value 4; + description + "REROUTING ONE TO N ET"; + } + enum "rerouting-one-plus-one-uni" { + value 8; + description + "REROUTING ONE PLUS ONE UNI"; + } + enum "rerouting-one-plus-one-bi" { + value 16; + description + "REROUTING ONE PLUS ONE BI"; + } + } + description + "Mpls te uni lsp seg flag"; + } + + typedef Mpls-te-backup-bandwidth-class { + type enumeration { + enum "class0" { + value 0; + description + "Class 0"; + } + enum "class1" { + value 1; + description + "Class 1"; + } + enum "any-class" { + value 9; + description + "Any Class"; + } + } + description + "Mpls te backup bandwidth class"; + } + + typedef Mpls-te-attr-set { + type enumeration { + enum "not-used" { + value 0; + description + "Not used"; + } + enum "static" { + value 1; + description + "Static"; + } + enum "lsp" { + value 2; + description + "LSP"; + } + enum "unassigned" { + value 3; + description + "Unassigned"; + } + enum "auto-backup" { + value 4; + description + "Auto backup"; + } + enum "auto-mesh" { + value 5; + description + "Auto mesh"; + } + enum "xro" { + value 6; + description + "XRO"; + } + enum "p2mp-te" { + value 7; + description + "P2MP TE"; + } + enum "otn-pp" { + value 8; + description + "OTN Path Protection"; + } + enum "p2p-te" { + value 9; + description + "P2P TE"; + } + enum "uni-p" { + value 10; + description + "Uni protection"; + } + } + description + "Mpls te attr set"; + } + + typedef Mpls-te-otn-aps-restoration-style { + type enumeration { + enum "keep-failed-lsp" { + value 1; + description + "Keep Failed Lsp"; + } + enum "delete-failed-lsp" { + value 2; + description + "Delete Failed Lsp"; + } + } + description + "Mpls te otn aps restoration style"; + } + + typedef Mpls-te-path-selection-segment-routing-adjacency-protection { + type enumeration { + enum "not-set" { + value 0; + description + "Any segment can be used in a path."; + } + enum "adj-unprotected" { + value 1; + description + "Only unprotected adjacency segments can be used + in a path."; + } + enum "adj-protected" { + value 2; + description + "Only protected adjacency segments can be used + in a path."; + } + } + description + "Mpls te path selection segment routing adjacency + protection"; + } + + typedef Mpls-te-path-option-protection { + type enumeration { + enum "active" { + value 0; + description + "Active path"; + } + enum "protecting" { + value 1; + description + "Protecting Path"; + } + } + description + "Mpls te path option protection"; + } + + typedef Mpls-te-sig-name-option { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "address" { + value 1; + description + "Address"; + } + enum "name" { + value 2; + description + "Name"; + } + } + description + "Mpls te sig name option"; + } + + typedef Mpls-te-bandwidth-limit { + type enumeration { + enum "unlimited" { + value 64; + description + "Unlimited"; + } + enum "limited" { + value 128; + description + "Limited"; + } + } + description + "Mpls te bandwidth limit"; + } + + typedef Mesh-group-id { + type uint32 { + range "0..4294967295"; + } + description + "Mesh group id"; + } + + typedef Path-invalidation-action { + type enumeration { + enum "tear" { + value 1; + description + "Tear"; + } + enum "drop" { + value 2; + description + "Drop"; + } + } + description + "Path invalidation action"; + } + + typedef Mpls-te-igp-protocol { + type enumeration { + enum "none" { + value 0; + description + "Not set"; + } + enum "isis" { + value 1; + description + "IS IS"; + } + enum "ospf" { + value 2; + description + "OSPF"; + } + } + description + "Mpls te igp protocol"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub1.yang new file mode 100644 index 000000000..91970a347 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub1.yang @@ -0,0 +1,620 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-tp-tunnel-switchover-trig { + type enumeration { + enum "none" { + description + "Deprecated"; + } + enum "bfd" { + description + "Deprecated"; + } + enum "local-lockout" { + description + "Deprecated"; + } + enum "remote-lockout" { + description + "Deprecated"; + } + enum "ais" { + description + "Deprecated"; + } + enum "ldi" { + description + "Deprecated"; + } + enum "lkr" { + description + "Deprecated"; + } + enum "link-down" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + typedef Mpls-tp-tunnel-active-lsp { + type enumeration { + enum "working" { + description + "Deprecated"; + } + enum "protect" { + description + "Deprecated"; + } + enum "none" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + typedef Mpls-tp-lsp-bfd-state { + type enumeration { + enum "down" { + description + "Deprecated"; + } + enum "up" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + typedef Mpls-tp-lsp-oam-state { + type enumeration { + enum "none" { + description + "Deprecated"; + } + enum "ldi" { + description + "Deprecated"; + } + enum "lkr" { + description + "Deprecated"; + } + enum "ais" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + typedef Mpls-tp-lsp-state { + type enumeration { + enum "down" { + description + "Deprecated"; + } + enum "up" { + description + "Deprecated"; + } + enum "active" { + description + "Deprecated"; + } + enum "unknown" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + typedef Mpls-tp-tunnel-state { + type enumeration { + enum "admin-down" { + description + "Deprecated"; + } + enum "admin-up" { + description + "Deprecated"; + } + enum "oper-up" { + description + "Deprecated"; + } + enum "oper-down" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + grouping MPLS-TE-TP-GLOBAL-INFO { + description + "Deprecated"; + container oam-protection-triggers { + description + "Deprecated"; + uses MPLS-TE-TP-OAM-PROT-TRIGGER; + } + leaf node-id { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf global-id { + type uint32; + description + "Deprecated"; + } + leaf oam-refresh { + type uint32; + description + "Deprecated"; + } + leaf bfd-interval { + type uint32; + description + "Deprecated"; + } + leaf bfd-interval-in-micro-sec { + type boolean; + description + "Deprecated"; + } + leaf bfd-interval-standby { + type uint32; + description + "Deprecated"; + } + leaf bfd-interval-standby-in-micro-sec { + type boolean; + description + "Deprecated"; + } + leaf bfd-multiplier { + type uint32; + description + "Deprecated"; + } + leaf bfd-multiplier-standby { + type uint32; + description + "Deprecated"; + } + leaf wait-to-restore-interval { + type uint32; + description + "Deprecated"; + } + leaf alarm-suppression { + type boolean; + description + "Deprecated"; + } + leaf soak-time { + type uint32; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-OAM-PROT-TRIGGER { + description + "Deprecated"; + leaf ais { + type boolean; + description + "Deprecated"; + } + leaf ldi { + type boolean; + description + "Deprecated"; + } + leaf lkr { + type boolean; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-DETAIL-TUNNEL-LSP-INFO { + description + "Deprecated"; + container brief-information { + description + "Deprecated"; + uses MPLS-TE-TP-TUNNEL-LSP-INFO; + } + leaf oam-refresh-interval { + type uint32; + description + "Deprecated"; + } + leaf tp-out-label { + type uint32; + description + "Deprecated"; + } + leaf link-id { + type uint32; + description + "Deprecated"; + } + leaf out-interface-name { + type string; + description + "Deprecated"; + } + leaf out-next-hop { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf in-label { + type uint32; + description + "Deprecated"; + } + leaf reserved-bandwidth { + type uint32; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-TUNNEL-LSP-INFO { + description + "Deprecated"; + leaf lsp-id { + type uint32; + description + "Deprecated"; + } + leaf state { + type Mpls-tp-lsp-state; + description + "Deprecated"; + } + leaf lock-out { + type boolean; + description + "Deprecated"; + } + leaf rx-oam-state { + type Mpls-tp-lsp-oam-state; + description + "Deprecated"; + } + leaf tx-oam-state { + type Mpls-tp-lsp-oam-state; + description + "Deprecated"; + } + leaf bfd-state { + type Mpls-tp-lsp-bfd-state; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-TUNNEL-INFO { + description + "Deprecated"; + container working-lsp { + description + "Deprecated"; + uses MPLS-TE-TP-TUNNEL-LSP-INFO; + } + container protect-lsp { + description + "Deprecated"; + uses MPLS-TE-TP-TUNNEL-LSP-INFO; + } + leaf tunnel-name { + type string; + description + "Deprecated"; + } + leaf source-tunnel-id { + type uint32; + description + "Deprecated"; + } + leaf source-node-id { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf source-global-id { + type uint32; + description + "Deprecated"; + } + leaf destination-node-id { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf destination-global-id { + type uint32; + description + "Deprecated"; + } + leaf remote-tunnel-id { + type uint32; + description + "Deprecated"; + } + leaf admin-status { + type Mpls-tp-tunnel-state; + description + "Deprecated"; + } + leaf operation-status { + type Mpls-tp-tunnel-state; + description + "Deprecated"; + } + leaf active-lsp { + type Mpls-tp-tunnel-active-lsp; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-DETAIL-TUNNEL-INFO { + description + "Deprecated"; + container tunnel { + description + "Deprecated"; + uses MPLS-TE-TP-TUNNEL-INFO; + } + container working-lsp { + description + "Deprecated"; + uses MPLS-TE-TP-DETAIL-TUNNEL-LSP-INFO; + } + container protect-lsp { + description + "Deprecated"; + uses MPLS-TE-TP-DETAIL-TUNNEL-LSP-INFO; + } + container oam-protection-triggers { + description + "Deprecated"; + uses MPLS-TE-TP-OAM-PROT-TRIGGER; + } + leaf req-bandwidth { + type uint32; + description + "Deprecated"; + } + leaf oam-interval { + type uint32; + description + "Deprecated"; + } + leaf bfd-interval-active { + type uint32; + description + "Deprecated"; + } + leaf bfd-interval-active-in-micro-sec { + type boolean; + description + "Deprecated"; + } + leaf bfd-multiplier-active { + type uint32; + description + "Deprecated"; + } + leaf bfd-interval-standby { + type uint32; + description + "Deprecated"; + } + leaf bfd-interval-standby-in-micro-sec { + type boolean; + description + "Deprecated"; + } + leaf bfd-multiplier-standby { + type uint32; + description + "Deprecated"; + } + leaf tunnel-up-time { + type uint32; + description + "Deprecated"; + } + leaf switchover-trig { + type Mpls-tp-tunnel-switchover-trig; + description + "Deprecated"; + } + leaf switch-over-time { + type uint32; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-TUNNEL-SUMMARY { + description + "Deprecated"; + leaf up-working-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf active-working-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf down-working-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf locked-working-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf up-protect-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf active-protect-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf down-protect-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf locked-protect-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf up-tunnels { + type uint32; + description + "Deprecated"; + } + leaf down-tunnels { + type uint32; + description + "Deprecated"; + } + leaf admin-down-tunnels { + type uint32; + description + "Deprecated"; + } + leaf complete-fec-working-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf complete-fec-protect-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf bfd-session-working-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf bfd-session-protect-ls-ps { + type uint32; + description + "Deprecated"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub2.yang new file mode 100644 index 000000000..e418b8878 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub2.yang @@ -0,0 +1,258 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub2 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tp-mid-lsp-status { + type enumeration { + enum "up" { + description + "Deprecated"; + } + enum "down" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + grouping MPLS-TP-MID-SUMMARY-INFO { + description + "Deprecated"; + leaf mid-points { + type uint32; + description + "Deprecated"; + } + leaf up-forward-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf down-forward-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf up-reverse-ls-ps { + type uint32; + description + "Deprecated"; + } + leaf down-reverse-ls-ps { + type uint32; + description + "Deprecated"; + } + } + + grouping MPLS-TP-MID-LSP-INFO { + description + "Deprecated"; + leaf out-label { + type uint32; + description + "Deprecated"; + } + leaf out-link { + type uint32; + description + "Deprecated"; + } + leaf oam-refresh-interval { + type uint32; + description + "Deprecated"; + } + leaf outgoing-interface { + type string; + description + "Deprecated"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf in-label { + type uint32; + description + "Deprecated"; + } + leaf bandwidth { + type uint32; + description + "Deprecated"; + } + } + + grouping MPLS-TP-MID-INFO { + description + "Deprecated"; + leaf midpoint-name { + type string; + description + "Deprecated"; + } + leaf tunnel-name { + type string; + description + "Deprecated"; + } + leaf source-node-id { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf source-global-id { + type uint32; + description + "Deprecated"; + } + leaf source-tunnel-id { + type uint32; + description + "Deprecated"; + } + leaf lsp-id { + type uint32; + description + "Deprecated"; + } + leaf destination-node-id { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf destination-global-id { + type uint32; + description + "Deprecated"; + } + leaf destination-tunnel-id { + type uint32; + description + "Deprecated"; + } + leaf forward-lsp-state { + type Tp-mid-lsp-status; + description + "Deprecated"; + } + leaf reverse-lsp-state { + type Tp-mid-lsp-status; + description + "Deprecated"; + } + } + + grouping MPLS-TP-DETAIL-MID-INFO { + description + "Deprecated"; + container brief-lsp-information { + description + "Deprecated"; + uses MPLS-TP-MID-INFO; + } + container forward-lsp { + description + "Deprecated"; + uses MPLS-TP-MID-LSP-INFO; + } + container reverse-lsp { + description + "Deprecated"; + uses MPLS-TP-MID-LSP-INFO; + } + leaf forward-lsp-reserved-bandwidth { + type uint32; + description + "Deprecated"; + } + leaf reverse-lsp-reserved-bandwidth { + type uint32; + description + "Deprecated"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub3.yang new file mode 100644 index 000000000..634064a11 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub3.yang @@ -0,0 +1,191 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub3 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tp-link-state { + type enumeration { + enum "down" { + description + "Deprecated"; + } + enum "admin-down" { + description + "Deprecated"; + } + enum "up" { + description + "Deprecated"; + } + enum "unknown" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + grouping MPLS-TE-TP-LINK-INFO { + description + "Deprecated"; + leaf link-id { + type uint32; + description + "Deprecated"; + } + leaf interface { + type string; + description + "Deprecated"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf link-state { + type Tp-link-state; + description + "Deprecated"; + } + leaf available-bandwidth { + type uint64; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-LINK-SUMMARY-INFO { + description + "Deprecated"; + leaf links { + type uint32; + description + "Deprecated"; + } + } + + grouping MPLS-TE-TP-DETAIL-LINK-INFO { + description + "Deprecated"; + leaf link-id { + type uint32; + description + "Deprecated"; + } + leaf interface { + type string; + description + "Deprecated"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Deprecated"; + } + leaf link-state { + type Tp-link-state; + description + "Deprecated"; + } + leaf ls-ps { + type uint32; + description + "Deprecated"; + } + leaf reserved-bandwidth { + type uint64; + description + "Deprecated"; + } + leaf available-bandwidth { + type uint64; + description + "Deprecated"; + } + leaf unsupported-linecard { + type boolean; + description + "Deprecated"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub4.yang new file mode 100644 index 000000000..fe4a97f4e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub4.yang @@ -0,0 +1,1191 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub4 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-te-oper-sub6 { + revision-date 2023-02-02; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pce-tunnel-state { + type enumeration { + enum "tunnel-state-none" { + description + "None"; + } + enum "tunnel-state-admin-down" { + description + "AdminDown"; + } + enum "tunnel-state-down" { + description + "Down"; + } + enum "tunnel-state-up" { + description + "Up"; + } + } + description + "PCE Tunnel State"; + } + + typedef Pce-tun-path-state { + type enumeration { + enum "state-none" { + description + "None"; + } + enum "state-pending" { + description + "Request Pending"; + } + enum "state-received-path" { + description + "Path Received"; + } + enum "state-no-peer" { + description + "No peer to forward"; + } + enum "state-pcep-down" { + description + "PCEP to the peer is down"; + } + enum "state-received-no-path" { + description + "Path Received No Path"; + } + } + description + "PCE Request State"; + } + + typedef Pce-state { + type enumeration { + enum "tcp-close" { + description + "TCP close"; + } + enum "tcp-listen" { + description + "TCP listen"; + } + enum "tcp-connect" { + description + "TCP connect"; + } + enum "pcep-closed" { + description + "PCEP closed"; + } + enum "pcep-opening" { + description + "PCEP opening"; + } + enum "pcep-open" { + description + "PCEP open"; + } + } + description + "PCE State"; + } + + typedef Pce-lsp-autoroute-metric { + type enumeration { + enum "none" { + description + "None"; + } + enum "relative" { + description + "Relative"; + } + enum "absolute" { + description + "Absolute"; + } + } + description + "Autoroute Metric Type"; + } + + typedef Pce-sr-sid { + type enumeration { + enum "unknown-segment-id" { + description + "Unknown type"; + } + enum "ipv4-node-segment-id" { + description + "IPv4 Node ID"; + } + enum "ipv4-adjacency-segment-id" { + description + "IPv4 Adjacency ID"; + } + } + description + "PCE SID type"; + } + + typedef Pce-lsp-oper-state { + type enumeration { + enum "down" { + description + "Down"; + } + enum "up" { + description + "Up"; + } + enum "active" { + description + "Active"; + } + enum "going-down" { + description + "Going down"; + } + enum "going-up" { + description + "Going Up"; + } + } + description + "LSP Operational state"; + } + + grouping PCE-TUNNEL-BAG { + description + "PCE Tunnel Summary Information"; + leaf source-address { + type inet:ipv4-address; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination Address"; + } + leaf is-curr-path-option-pce { + type boolean; + description + "True if current path option is PCE based"; + } + leaf curr-path-option-index { + type uint32; + description + "Path Option Index of the current path"; + } + leaf configured-pce-address { + type inet:ipv4-address; + description + "Configured PCE Address"; + } + leaf sender-pce-address { + type inet:ipv4-address; + description + "Sender PCE Address"; + } + leaf path-state { + type Pce-tun-path-state; + description + "Path Request State"; + } + leaf tunnel-state { + type Pce-tunnel-state; + description + "Tunnel State"; + } + leaf admin-weight { + type uint32; + description + "Path metric"; + } + leaf hop-count { + type uint32; + description + "Hop Count"; + } + } + + grouping PCE-NODE-BAG { + description + "PCE Node Information"; + leaf router-id { + type inet:ipv4-address; + description + "Router ID"; + } + leaf igp-area-id { + type uint32; + description + "IGP Area number"; + } + leaf igp-area-format { + type Igp-ospf-area-format; + description + "IGP Area Format"; + } + leaf pce-cost { + type uint32; + description + "PCE cost"; + } + leaf node-id { + type inet:ipv4-address; + description + "Node ID"; + } + leaf is-pce-border-node { + type boolean; + description + "PCE border node"; + } + } + + grouping PCE-TOPOLOGY-GLOBAL-INFO-BAG { + description + "PCE Topology Information"; + list nodes { + description + "Node information"; + uses PCE-NODE-BAG; + } + } + + grouping PCEERR-BAG { + description + "PCE Error information"; + leaf pce-err-type { + type uint32; + description + "PCE Error Type"; + } + leaf pce-err-value { + type uint32; + description + "PCE Error Value"; + } + leaf has-open-object { + type boolean; + description + "Has Open object"; + } + leaf openversion { + type uint32; + description + "Open Version"; + } + leaf open-keepalive { + type uint32; + units "second"; + description + "Open Keepalive (seconds)"; + } + leaf open-dead-time { + type uint32; + units "second"; + description + "Open Deadtime (seconds)"; + } + leaf has-rp-object { + type boolean; + description + "Has RP object"; + } + leaf rp-request-id { + type uint32; + description + "RP request ID"; + } + } + + grouping PCE-PEER-IGP-BAG { + description + "PCE IGP information"; + leaf igp-type { + type Igp-protocol; + description + "Type"; + } + leaf igp-instance-id { + type string; + description + "Instance ID"; + } + } + + grouping PCE-NEIGHBOR-BAG { + description + "PCE Neighbor Information"; + container last-tx-pce-err { + description + "Last sent PCEErr"; + uses PCEERR-BAG; + } + container last-rx-pce-err { + description + "Last received PCEErr"; + uses PCEERR-BAG; + } + leaf error { + type string; + description + "Error (for display only)"; + } + leaf pce-state { + type Pce-state; + description + "PCE State"; + } + leaf precedence { + type uint32; + description + "PCE Precedence"; + } + leaf stateful { + type boolean; + description + "Stateful"; + } + leaf capability-update { + type boolean; + description + "Update capability"; + } + leaf capability-instantiate { + type boolean; + description + "Instantiation capability"; + } + leaf capability-segment-routing { + type boolean; + description + "Segment Routing capability"; + } + leaf triggered-sync-capability { + type boolean; + description + "Triggered Synchronization capability"; + } + leaf capability-db-version { + type boolean; + description + "DB version capability"; + } + leaf delta-sync-capability { + type boolean; + description + "Delta Synchronization capability"; + } + leaf pcep-up-time { + type uint32; + description + "PCEP Up Time"; + } + leaf keepalives { + type uint32; + description + "Keepalive count"; + } + leaf candidate { + type boolean; + description + "Candidate"; + } + leaf statically-configured { + type boolean; + description + "Statically Configured"; + } + leaf md5-enabled { + type boolean; + description + "MD5 Authentication Enabled"; + } + leaf keychain-enabled { + type boolean; + description + "Keychain based Authentication Enabled"; + } + leaf negotiated-keepalive { + type uint32; + description + "Negotiated KA"; + } + leaf negotated-dead-time { + type uint32; + description + "Negotiated DT"; + } + leaf pce-req-rx { + type uint32; + description + "PCEReq Rx"; + } + leaf pce-req-tx { + type uint32; + description + "PCEReq Tx"; + } + leaf pce-rep-rx { + type uint32; + description + "PCERep Rx"; + } + leaf pce-rep-tx { + type uint32; + description + "PCERep Tx"; + } + leaf pce-err-rx { + type uint32; + description + "PCEErr Rx"; + } + leaf pce-err-tx { + type uint32; + description + "PCEErr Tx"; + } + leaf pce-open-tx { + type uint32; + description + "PCEOpen Tx"; + } + leaf pce-open-rx { + type uint32; + description + "PCEOpen Rx"; + } + leaf pce-rpt-rx { + type uint32; + description + "PCERpt Rx"; + } + leaf pce-rpt-tx { + type uint32; + description + "PCERpt Tx"; + } + leaf pce-upd-rx { + type uint32; + description + "PCEUpd Rx"; + } + leaf pce-upd-tx { + type uint32; + description + "PCEUpd Tx"; + } + leaf pce-init-rx { + type uint32; + description + "PCEInit Rx"; + } + leaf pce-init-tx { + type uint32; + description + "PCEInit Tx"; + } + leaf pce-keepalive-tx { + type uint64; + description + "PCE Keepalive Tx"; + } + leaf pce-keepalive-rx { + type uint64; + description + "PCE Keepalive Rx"; + } + leaf req-reply-min { + type uint64; + description + "Mininum reply time from peer in ms"; + } + leaf req-reply-max { + type uint64; + description + "Maximum reply time from peer in ms"; + } + leaf req-reply-avg { + type uint64; + description + "Average reply time from peer in ms"; + } + leaf request-timeouts { + type uint64; + description + "Request timeout count"; + } + leaf local-sid { + type uint8; + description + "Local PCEP session ID"; + } + leaf remote-sid { + type uint8; + description + "Remote PCEP session ID"; + } + leaf min-keepalive-interval { + type uint8; + description + "Minimum keepalive interval for the peer"; + } + leaf max-dead-interval { + type uint8; + description + "Maximum dead interval for the peer"; + } + list ig-ps { + description + "IGPs"; + uses PCE-PEER-IGP-BAG; + } + } + + grouping PCE-IGP-STATS-BAG { + description + "PCE IGP Stats"; + leaf abr-lookup-min { + type uint64; + description + "ABR Lookup Min"; + } + leaf abr-lookup-max { + type uint64; + description + "ABR Lookup Max"; + } + leaf abr-lookup-avg { + type uint64; + description + "ABR Lookup Avg"; + } + leaf abr-lookup-timeout { + type uint64; + description + "ABR Lookup Timeout"; + } + leaf abr-lookup-complete { + type uint64; + description + "ABR Lookup Complete"; + } + } + + grouping PCE-STATS-BAG { + description + "PCE Stats Information"; + container igp-statistics { + description + "IGP Statistics"; + uses PCE-IGP-STATS-BAG; + } + leaf neighbors { + type uint32; + description + "Neighbor Count"; + } + leaf tunnels { + type uint32; + description + "Tunnel Count"; + } + leaf pce-req-total { + type uint32; + description + "Total number of PCEReq"; + } + leaf pce-req-pending { + type uint32; + description + "Number of pending req"; + } + leaf pce-req-timed-out { + type uint32; + description + "Number of timedout req"; + } + leaf max-file-descriptors { + type uint32; + description + "Maximum number of TCP file descriptors used"; + } + leaf current-file-descriptors { + type uint32; + description + "Number of TCP file descriptors currently in use"; + } + leaf current-pceq-length { + type uint32; + description + "Current PCE queue length"; + } + leaf current-teq-length { + type uint32; + description + "Current TE queue length"; + } + leaf max-pceq-length { + type uint32; + description + "Max PCE queue length"; + } + leaf max-teq-length { + type uint32; + description + "Max TE queue length"; + } + list maximum-in-queue-depth { + max-elements "3"; + description + "Max Input Queue Depth"; + leaf entry { + type uint32; + description + "Max Input Queue Depth"; + } + } + list average-in-queue-depth { + max-elements "3"; + description + "Average Input Queue Depth"; + leaf entry { + type uint32; + description + "Average Input Queue Depth"; + } + } + } + + grouping PCE-LSP-AUTOROUTE-BAG { + description + "LSP Autoroute Information"; + leaf is-used { + type boolean; + description + "Autoroute used flag"; + } + leaf announced { + type boolean; + description + "Autoroute announced"; + } + leaf metric-type { + type Pce-lsp-autoroute-metric; + description + "Metric Type"; + } + leaf metric { + type uint32; + description + "Metric Value"; + } + list destination { + description + "Destinations"; + leaf entry { + type inet:ipv4-address; + description + "Destinations"; + } + } + } + + grouping PCE-LSP-METRIC-BAG { + description + "PCE LSP Metric Object"; + leaf type { + type uint8; + description + "Type"; + } + leaf cost { + type uint32; + description + "Cost"; + } + } + + grouping PCE-LSP-LSPA-BAG { + description + "PCE LSP Attributes Object"; + leaf is-used { + type boolean; + description + "LSPA used flag"; + } + leaf exlude-any { + type uint32; + description + "Exclude Any"; + } + leaf include-any { + type uint32; + description + "Include Any"; + } + leaf include-all { + type uint32; + description + "Include All"; + } + leaf setup { + type uint8; + description + "Setup"; + } + leaf hold { + type uint8; + description + "Hold"; + } + leaf lbit { + type boolean; + description + "L flag"; + } + } + + grouping PCE-LSP-ROUTE-HOP-BAG { + description + "PCE LSP Route Subobject"; + leaf subobj-type { + type uint8; + description + "Route Subobject Type"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv4-prefix-len { + type uint32; + description + "IPv4 Address Prefix Length"; + } + leaf strict { + type boolean; + description + "Strict"; + } + leaf global { + type boolean; + description + "Global"; + } + leaf mpls-label { + type uint32; + description + "MPLS Label in case Segment ID type is MPLS"; + } + leaf segment-id-type { + type Pce-sr-sid; + description + "Segment ID Type"; + } + leaf only-valid-mpls-label { + type boolean; + description + "If this flag is true, SID has only MPLS label + value. TC, S, and TTL fields are considered + invalid"; + } + leaf complete-mpls-label-entry { + type boolean; + description + "If this flag is true, all fields of MPLS labe + entry are valid"; + } + leaf missing-segment-id { + type boolean; + description + "If this flag is true, ERO subobject does not + have SegmentID"; + } + leaf missing-node-adjcency-id { + type boolean; + description + "If this flag is true, ERO subobject does not + have NodeAdjacencyID"; + } + leaf segment-id-exists { + type boolean; + description + "If this field is true, the bag contains + SegmentID value"; + } + leaf segment-id-value { + type uint32; + description + "Contains a SegmentID value in case SegmentID is + valid"; + } + leaf node-adjacency-id-exists { + type boolean; + description + "If this flag is true, the bag contains + NodeAdjacencyID information"; + } + leaf node-id { + type inet:ipv4-address; + description + "Address of the node corresponding the node + SegmentID"; + } + leaf local-address { + type inet:ipv4-address; + description + "Address of the local address corresponding the + adjacency SegmentID"; + } + leaf remote-address { + type inet:ipv4-address; + description + "Address of the remote address corresponding the + adjacency SegmentID"; + } + } + + grouping PCE-LSP-ROUTE-BAG { + description + "PCE LSP Route Object)"; + leaf is-used { + type boolean; + description + "Route Object used flag"; + } + leaf cost { + type uint32; + description + "Cost"; + } + list address { + description + "List of Addresses"; + leaf entry { + type inet:ipv4-address; + description + "List of Addresses"; + } + } + list subobject { + description + "List of Route Subobjects"; + uses PCE-LSP-ROUTE-HOP-BAG; + } + } + + grouping PCE-LSP-PATH-BAG { + description + "PCE LSP Path"; + container ero { + description + "Explicit Router Object"; + uses PCE-LSP-ROUTE-BAG; + } + container lspa { + description + "LSP Attributes Object"; + uses PCE-LSP-LSPA-BAG; + } + container rro { + description + "Reported Route Object"; + uses PCE-LSP-ROUTE-BAG; + } + leaf bw { + type uint32; + description + "Bandwidth"; + } + leaf is-bw-used { + type boolean; + description + "Bandwidth used flag"; + } + leaf reopt-bw { + type uint32; + description + "Reoptimize bandwidth"; + } + leaf is-reopt-bw-used { + type boolean; + description + "Reoptimize bandwidth used flag"; + } + leaf applied-bw { + type uint32; + description + "Applied bandwidth"; + } + leaf is-applied-bw-used { + type boolean; + description + "Applied bandwidth used flag"; + } + list metric { + description + "List of Metrics"; + uses PCE-LSP-METRIC-BAG; + } + } + + grouping PCE-LSP-IDENTIFIERS-BAG { + description + "PCE LSP Identifiers TLV Information"; + leaf is-used { + type boolean; + description + "LSP Identifier used flag"; + } + leaf sender { + type inet:ipv4-address; + description + "Sender Address"; + } + leaf te-lsp-id { + type uint16; + description + "TE LSP ID"; + } + leaf tunnel-id { + type uint16; + description + "LSPO Tunnel ID"; + } + leaf ext-tunnel-id { + type uint32; + description + "External Tunnel ID"; + } + } + + grouping PCE-LSP-PEER-BAG { + description + "PCE LSP Peer"; + leaf node-identifier { + type string; + description + "Peer Node Identifier"; + } + leaf address { + type inet:ipv4-address; + description + "Peer Ip Address"; + } + } + + grouping PCE-LSP-BAG { + description + "PCE LSP from LSP Database"; + container creator { + description + "Creator Peer of the LSP"; + uses PCE-LSP-PEER-BAG; + } + container delegated { + description + "Owner Peer of the LSP"; + uses PCE-LSP-PEER-BAG; + } + container identifiers { + description + "LSP Identifiers"; + uses PCE-LSP-IDENTIFIERS-BAG; + } + container autoroute { + description + "Auto Route"; + uses PCE-LSP-AUTOROUTE-BAG; + } + leaf source-address { + type inet:ipv4-address; + description + "Source IP Address"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination IP Address"; + } + leaf symbolic-name-xr { + type string; + description + "Symbolic Name"; + } + leaf session-internal-lsp-id { + type uint32; + description + "Session internal ID"; + } + leaf stateful-request-parameter-id { + type uint32; + description + "SRP ID"; + } + leaf request-queue-size { + type uint8; + description + "Request queue size"; + } + leaf delegatable { + type boolean; + description + "LSP delegatable"; + } + leaf operational { + type Pce-lsp-oper-state; + description + "LSP operational status"; + } + leaf administrative { + type boolean; + description + "LSP administrative status"; + } + leaf cleanup-timer-exp { + type int32; + description + "Deprecated"; + } + leaf delegation-timer-exp { + type int32; + description + "LSP delegation timer expiration in sec"; + } + leaf create { + type boolean; + description + "LSPO create flag"; + } + leaf state-timer-exp { + type int32; + description + "LSP state-timeout time expiration"; + } + leaf lspo-is-used { + type boolean; + description + "LSP Object used flag"; + } + leaf forward-class-id { + type uint32; + description + "Forward Class ID"; + } + leaf load-share { + type uint32; + description + "Load share factor"; + } + leaf path-setup-type { + type uint8; + description + "Path setup type"; + } + leaf binding-sid { + type uint32; + description + "Binding SID"; + } + list backup-path { + description + "Backup Path"; + leaf entry { + type inet:ipv4-address; + description + "Backup Path"; + } + } + list paths { + description + "Array of paths"; + uses PCE-LSP-PATH-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub5.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub5.yang new file mode 100644 index 000000000..4300ad72b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub5.yang @@ -0,0 +1,17009 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub5 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-te-oper-sub6 { + revision-date 2023-02-02; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tunnel-state-enum { + type enumeration { + enum "tunnel-state-unknown" { + description + "No known state"; + } + enum "new" { + description + "Tunnel is new"; + } + enum "preempting" { + description + "Tunnel is being preempted"; + } + enum "admitting" { + description + "Path being admitted"; + } + enum "half-admitted" { + description + "Path was admitted partially and was then + rejected"; + } + enum "admitted" { + description + "Path is already admitted successfully"; + } + enum "reservation-admitting" { + description + "Reservation being admitted"; + } + enum "reservation-half-admitted" { + description + "Reservation was admitted partially and was then + rejected"; + } + enum "reservation-admitted" { + description + "Reservation is already admitted successfully"; + } + } + description + "Types of tunnel admission states"; + } + + typedef Bandwidth-state-enum { + type enumeration { + enum "bandwidth-held" { + description + "Bandwidth is held, is not guaranteed when it is + time to reserve"; + } + enum "bandwidth-reserved" { + description + "Bandwidth is reserved and can be used for + forwarding"; + } + enum "bandwidth-unknown" { + description + "Bandwidth is unknown"; + } + } + description + "Types of bandwidth states"; + } + + typedef Bandwidth-accounting-flooding-trigger { + type enumeration { + enum "bandwidth-threshold" { + description + "Flooding is triggered if bandwidth threshold is + crossed"; + } + enum "segment-routing-traffic" { + description + "Flooding is triggered if segment-routing + traffic change threshold is crossed"; + } + } + description + "Types of flooding triggers for bandwidth + accounting"; + } + + typedef Bandwidth-accounting-collection { + type enumeration { + enum "rsvp-te" { + description + "RSVP TE"; + } + enum "segment-routing" { + description + "Segment Routing"; + } + } + description + "Types of bandwidth accounting collection"; + } + + typedef Mpls-te-reason-not-flooded { + type enumeration { + enum "not-flooded-reason-not-set" { + description + "reason not set"; + } + enum "controller-not-configured" { + description + "Controller not configured"; + } + enum "controller-not-up" { + description + "Controller not up"; + } + enum "no-local-link-id" { + description + "Valid local link id is not populated"; + } + enum "no-remote-link-id" { + description + "Valid remote link id is not populated"; + } + enum "odu-capabilities-not-set" { + description + "ODU capabilities of link not set"; + } + enum "tti-not-enabled" { + description + "TTI info for link is enabled"; + } + enum "link-not-supported" { + description + "This type of link is not suported"; + } + enum "te-proc-fsm-disabled" { + description + "Flooding disabled by TE process fsm"; + } + enum "graceful-shutdown" { + description + "Flooding diabled due to graceful shutdown"; + } + enum "flooding-disabled" { + description + "Flooding is disabled"; + } + enum "label-switch-fabric-disabled" { + description + "Label switching fabric is disabled"; + } + enum "no-igp-area-config" { + description + "No IGP area is configured"; + } + enum "area-not-configured" { + description + "Area is not configured"; + } + enum "area-not-ready" { + description + "Area is not ready for flood"; + } + enum "lsa-error" { + description + "Failure occured while building LSA"; + } + enum "igp-failed" { + description + "IGP failed"; + } + enum "flooding-requested" { + description + "Link is ready to flood and requested for + flooding"; + } + enum "link-flooded" { + description + "Link is flooded"; + } + } + description + "Reason why TE link is not flooded"; + } + + typedef Tti-mode { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "otu-secion-monitoring" { + value 1; + description + "Section Monitoring"; + } + enum "odu-path-monitoring" { + value 2; + description + "Path Monitoring"; + } + enum "odu-tandem-connection-monitoring" { + value 3; + description + "Tandem Connection"; + } + } + description + "GMPLS TTI Mode for controller"; + } + + typedef Bandwidth-type-enum { + type enumeration { + enum "pool0" { + description + "Bandwidth from the pool0"; + } + enum "pool1" { + description + "Pool1 bandwidth"; + } + enum "unknown" { + description + "Unknown Bandwidth"; + } + } + description + "Types of bandwidth pools"; + } + + typedef Admission-policy { + type enumeration { + enum "reject-all" { + description + "Deprecated"; + } + enum "allow-all" { + description + "Deprecated"; + } + enum "reject-huge" { + description + "Deprecated"; + } + enum "allow-if-room" { + description + "Deprecated"; + } + } + description + "Deprecated"; + } + + typedef Signaling-agent-enum { + type enumeration { + enum "no-signaling" { + description + "Deprecated - No signaling protocol configured"; + } + enum "rsvp-signaling" { + description + "Deprecated - RSVP is the signaling protocol"; + } + } + description + "Deprecated - Signaling Agent"; + } + + typedef Resource-provider { + type enumeration { + enum "resource-provider-none" { + description + "Unknown"; + } + enum "packet-switch-capable" { + description + "Packet Switch Capable"; + } + enum "time-division-multiplex" { + description + "TDM - SONET/SDH"; + } + enum "lambda-switch-capable" { + description + "Lambda Switch Capable"; + } + enum "fiber-switch-capable" { + description + "Fiber Switch Capable"; + } + enum "g709odu-capable" { + description + "Resource provider of type G709-ODU"; + } + } + description + "The resource provider type"; + } + + typedef Link-direction-enum { + type enumeration { + enum "link-direction-up-stream" { + description + "Upstream direction, Tail to Head"; + } + enum "link-direction-down-stream" { + description + "Upstream direction, Head to Tail"; + } + enum "link-direction-unknown" { + description + "Unknown direction"; + } + } + description + "Link direction types"; + } + + typedef Bandwidth-unit-enum { + type enumeration { + enum "kilo-bits-per-second" { + description + "kilobits per second"; + } + enum "kilo-bytes-per-second" { + description + "kilobytes per second"; + } + } + description + "Types of bandwidth units"; + } + + typedef Flooding-trigger { + type enumeration { + enum "flooding-reason-unknown" { + description + "Not known what caused flooding"; + } + enum "link-up" { + description + "TE link came Up"; + } + enum "link-down" { + description + "TE link went Down"; + } + enum "threshold-up" { + description + "Up threshold crossed in pool0"; + } + enum "threshold-down" { + description + "Down threshold crossed in pool0"; + } + enum "threshold-up-pool1" { + description + "Up threshold crossed in pool1"; + } + enum "threshold-down-pool1" { + description + "Down threshold crossed in pool1"; + } + enum "timer-expired" { + description + "Periodic timer expired"; + } + enum "bandwidth-change" { + description + "Link BW changed"; + } + enum "user" { + description + "User triggered flooding"; + } + enum "rsvp-timeout" { + description + "RSVP timed out"; + } + enum "rsvp-reconnect" { + description + "RSVP reconnected"; + } + enum "te-exited" { + description + "TE-control process exited"; + } + enum "srlg-change" { + description + "Link SRLG changed"; + } + enum "hw-oor-green" { + description + "HW resources are green"; + } + enum "hw-oor-yellow" { + description + "HW resources are yellow"; + } + enum "hw-oor-red" { + description + "HW resources are red"; + } + enum "hw-oor-recovery-duration-expired" { + description + "HW Resources are back to normal and the + transition period is over"; + } + enum "lsp-oor-green" { + description + "LSP resources are green"; + } + enum "lsp-oor-yellow" { + description + "LSP resources are yellow"; + } + enum "lsp-oor-red" { + description + "LSP resources are red"; + } + enum "lsp-oor-recovery-duration-expired" { + description + "LSP resources are back to normal and the + transition period is over"; + } + enum "max-res-bandwidth-threshold-up" { + description + "Max reservable bandwidth up threshold crossed"; + } + enum "max-res-bandwidth-threshold-down" { + description + "Max reservable bandwidth down threshold crossed"; + } + enum "segment-routing-traffic" { + description + "Segment-routing traffic change percentage + crossed"; + } + } + description + "Types of flooding triggers"; + } + + typedef Te-auto-tun-exp-path-hop { + type enumeration { + enum "ipv4-address-type" { + description + "IPv4 Address Type"; + } + enum "mpls-label-type" { + description + "MPLS Label Type"; + } + enum "ipv4-and-label-type" { + description + "IPv4 Address and MPLS Label Type"; + } + } + description + "Auto tunnel hop type"; + } + + typedef In-addr-ipv6 { + type inet:ipv6-address; + description + "In addr ipv6"; + } + + typedef Lsp-oor-state { + type enumeration { + enum "lsp-oor-green" { + description + "LSP numbers are in normal state"; + } + enum "lsp-oor-yellow" { + description + "LSP numbers exceed the minor threshold"; + } + enum "lsp-oor-red" { + description + "LSP numbers exceed the major threshold"; + } + } + description + "LSP OOR states"; + } + + typedef Te-s2l-output-rw-explicit-null { + type enumeration { + enum "tes2l-output-rw-exp-null" { + value 0; + description + "No explicit null imposed"; + } + enum "tes2l-output-rw-exp-null-v4" { + value 1; + description + "IPv4 explicit null imposed"; + } + enum "tes2l-output-rw-exp-null-v6" { + value 2; + description + "IPv6 explicit null imposed"; + } + } + description + "Explicit-null type"; + } + + typedef Mpls-te-tunnels-process-status { + type enumeration { + enum "not-running" { + description + "MPLS TE process is not running"; + } + enum "running" { + description + "MPLS TE process is running"; + } + enum "not-registered-with-rsvp" { + description + "MPLS TE process has not registered with RSVP"; + } + } + description + "Mpls te tunnels process status"; + } + + typedef Mpls-te-frr-sharing { + type enumeration { + enum "sharing-none" { + description + "No Fate Sharing"; + } + enum "sharing-pri-oi-backup-oi-parent" { + description + "Primary Sharing outgoing interface with the + Parent of the backup outgoing interface"; + } + enum "sharing-pri-oi-parent-backup-oi" { + description + "Primary Sharing Parent of the outgoing + interface with the backup outgoing interface"; + } + enum "sharing-pri-oi-parent-backup-oi-parent" { + description + "Primary Sharing Parent of the outgoing + interface with the Parent of the backup + outgoing interface"; + } + } + description + "FRR sharing type"; + } + + typedef Mpls-te-bw-limit { + type enumeration { + enum "bandwidth-limited" { + description + "Bandwidth is limited"; + } + enum "bandwidth-unlimited" { + description + "Bandwidth is unlimited"; + } + enum "bandwidth-none" { + description + "Bandwidth is None"; + } + } + description + "Bandwidth limit type"; + } + + typedef Mpls-te-backup-usage { + type enumeration { + enum "backup-not-protecting" { + description + "Backup is not protecting any LSP"; + } + enum "backup-protecting" { + description + "Backup is protecting at least one LSP"; + } + } + description + "FRR backup tunnel usage status"; + } + + typedef Mpls-te-backup { + type enumeration { + enum "backup-static" { + description + "Backup type is static"; + } + enum "backup-auto" { + description + "Backup type is auto-tunnel"; + } + } + description + "FRR backup tunnel type"; + } + + typedef Mpls-te-backup-status { + type enumeration { + enum "backup-none" { + description + "Backup not found"; + } + enum "backup-unused" { + description + "Backup status undefined"; + } + enum "backup-next-next-hop" { + description + "Backup is next next hop safe (node protection)"; + } + enum "backup-next-hop" { + description + "Backup is next hop safe (link protection)"; + } + enum "backup-next-next-hop-srlg" { + description + "Backup is next next hop and SRLG safe (node + protection)"; + } + enum "backup-next-hop-srlg" { + description + "Backup is next hop and SRLG safe (link + protection)"; + } + } + description + "FRR backup status"; + } + + typedef Te-sync-pending-reason { + type enumeration { + enum "current-lspoos" { + description + "Current LSP OOS"; + } + enum "reopt-lspoos" { + description + "Reopt LSP OOS"; + } + enum "standby-lspoos" { + description + "Standby LSP OOS"; + } + enum "standby-reopt-lspoos" { + description + "Standby Reopt LSP OOS"; + } + enum "restore-lspoos" { + description + "Restore LSP OOS"; + } + enum "invalid-sync-id" { + description + "Invalid internal ID"; + } + enum "null-pointer" { + description + "Null pointer"; + } + enum "pending-flag" { + description + "Pending flag set"; + } + enum "del-from-act-flag" { + description + "Deleted by Active set"; + } + enum "oos-from-act-flag" { + description + "OOS with Active set"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "Te sync pending reason"; + } + + typedef Te-sync-not-ready-reason { + type enumeration { + enum "idt-in-progress" { + description + "IDT in progress"; + } + enum "standby-not-connected" { + description + "Standby not connected"; + } + enum "collaborator-disconnected" { + description + "Collaborator disconnected"; + } + enum "collaborator-timeout" { + description + "Collaborator timeout"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "Te sync not ready reason"; + } + + typedef Te-sync-status-show { + type enumeration { + enum "master-sync-status-show" { + description + "Master sync status information"; + } + enum "slave-sync-status-show" { + description + "Slave sync status information"; + } + } + description + "Te sync status show"; + } + + typedef Mpls-te-dste-class-status { + type enumeration { + enum "configured" { + description + "The TE class is explicitely configured"; + } + enum "default" { + description + "The TE class is a default"; + } + enum "unused" { + description + "The TE class is unused due to a configuration + conflict"; + } + } + description + "DSTE class status"; + } + + typedef Te-proc-role { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "v1-active" { + description + "V1 Active"; + } + enum "v2-active" { + description + "V2 Active"; + } + enum "v1-standby" { + description + "V1 Standby"; + } + enum "v2-standby" { + description + "V2 Standby"; + } + enum "v1-active-post-big-bang" { + description + "V1 Active post big bang"; + } + enum "v1-standby-post-big-bang" { + description + "V1 Standby post big bang"; + } + enum "number-of-role" { + description + "Number of role"; + } + } + description + "TE Process Role"; + } + + typedef Te-acl { + type enumeration { + enum "acl-type-unknown" { + value 0; + description + "Unknown type of ACL"; + } + enum "acl-type-access-list" { + value 1; + description + "Access-list type of ACL"; + } + enum "acl-type-prefix-list" { + value 2; + description + "Prefix-list type of ACL"; + } + enum "acl-type-unregistered" { + value 3; + description + "ACL failed to register to ACL infra"; + } + } + description + "Te acl"; + } + + typedef Mpls-te-p2mp-timer { + type enumeration { + enum "lmrib-restart" { + value 0; + description + "P2MP Local Multicast RIB restart"; + } + enum "lmrib-recovery" { + value 1; + description + "P2MP LMRIB recovery"; + } + enum "rsvp-restart" { + value 2; + description + "P2MP RSVP restart"; + } + enum "lsd-restart" { + value 3; + description + "LSD restart"; + } + enum "lsd-recovery" { + value 4; + description + "LSD recovery"; + } + enum "clear-in-progress-bandwidth" { + value 5; + description + "Timer to clear the inprogress bandwidth for all + the nodes in the topology"; + } + enum "rsi-restart" { + value 6; + description + "RSI restart"; + } + enum "rsi-recovery" { + value 7; + description + "RSI recovery"; + } + enum "ipv4-caps-replay" { + value 8; + description + "Timer to timeout the replay of IPv4 Caps after + a TE or IM restart"; + } + enum "retry-acl-registration-timer" { + value 9; + description + "Timer to retry ACL registration"; + } + enum "mpls-te-exit" { + value 10; + description + "MPLS TE Exit"; + } + enum "mpls-te-nsr-peer-restart" { + value 11; + description + "MPLS TE NSR Peer Restart"; + } + enum "mpls-te-issu-peer-restart" { + value 12; + description + "MPLS TE ISSU Peer Restart"; + } + enum "bfd-restart" { + value 13; + description + "BFD restart"; + } + enum "bfd-recovery" { + value 14; + description + "BFD recovery"; + } + enum "im-oc-restart" { + value 15; + description + "IM Optical Connection restart"; + } + enum "im-oc-recovery" { + value 16; + description + "IM Optical Connection recovery"; + } + enum "rib-restart" { + value 17; + description + "RIB restart"; + } + enum "rib-recovery" { + value 18; + description + "RIB recovery"; + } + enum "rib-next-hop-route-cleanup" { + value 19; + description + "RIB next-hop route cleanup"; + } + enum "rsi-srlg-producer-retry" { + value 20; + description + "RSI SRLG-producer connection retry"; + } + enum "eoc-reg-retry" { + value 21; + description + "End-of-Config registration retry"; + } + enum "fib-restart" { + value 22; + description + "FIB restart"; + } + enum "fib-recovery" { + value 23; + description + "FIB recovery"; + } + enum "fib-next-hop-route-cleanup" { + value 24; + description + "FIB next-hop route cleanup"; + } + enum "fib-next-hop-register-retry" { + value 25; + description + "FIB next-hop register retry"; + } + enum "tun-backend-scan-retry" { + value 26; + description + "Tunnel Backend Scan Retry"; + } + enum "tunnel-checkpoint-list-service" { + value 27; + description + "Tunnel Checkpoint list service"; + } + enum "tunnel-service-binding-sid-allocation-retry" { + value 28; + description + "Tunnel Service Binding SID Allocation Retry"; + } + enum "im-sync-delay" { + value 29; + description + "IM sync delay"; + } + enum "timer-not-used" { + value 30; + description + "Do not use"; + } + } + description + "P2MP timer types"; + } + + typedef Mpls-te-afi { + type enumeration { + enum "ipv4-unicast" { + description + "MPLS TE IPv4 unicast"; + } + enum "ipv4-multicast" { + description + "MPLS TE IPv4 multicast"; + } + enum "ipv6-unicast" { + description + "MPLS TE IPv6 unicast"; + } + enum "ipv6-multicast" { + description + "MPLS TE IPv6 multicast"; + } + } + description + "Mpls te afi"; + } + + typedef Mpls-te-tunnel-announce { + type enumeration { + enum "announce-type-not-set" { + description + "Tunnel announcement type not set"; + } + enum "autoroute" { + description + "Autoroute-announced tunnel"; + } + enum "forward-adjacency" { + description + "Forwarding-adjacency tunnel"; + } + } + description + "Type of TE tunnel announcement to IGP"; + } + + typedef Te-target-addr { + type enumeration { + enum "invalid-te-target-type" { + description + "Invalid TE Target Type"; + } + enum "te-target-type-ipv4" { + description + "TE Target IPv4 Type"; + } + enum "te-target-type-label" { + description + "TE Target Label Type"; + } + } + description + "TE Target Address Type"; + } + + typedef Flex-lsp-lockout-origination { + type enumeration { + enum "lockout-origination-none" { + description + "Flex LSP Lockout Origination None"; + } + enum "lockout-origination-local" { + description + "Flex LSP Lockout Originated From Local"; + } + enum "lockout-origination-remote" { + description + "Flex LSP Lockout Originated From Remote"; + } + } + description + "TE Flex LSP Lockout Origination"; + } + + typedef Te-rev-ero-reject-reasons { + type enumeration { + enum "none" { + description + "None"; + } + enum "bad-reverse-ero" { + description + "Bad Reverse ERO"; + } + enum "tie-rejected" { + description + "Tie Rejected"; + } + enum "standby-not-required" { + description + "Standby Not Required"; + } + enum "admin-state" { + description + "Admin State"; + } + enum "priority" { + description + "Priority"; + } + enum "class-type" { + description + "Class Type"; + } + enum "bad-association" { + description + "Bad Associated Tunnel"; + } + } + description + "TE Reverse ERO Reject Reasons"; + } + + typedef Mte-path-option { + type enumeration { + enum "none" { + description + "No Path Option type"; + } + enum "dynamic" { + description + "Dynamic Path Option type"; + } + enum "explicit" { + description + "Explicit Path Option type"; + } + enum "no-ero" { + description + "No ERO Path Option type"; + } + enum "segment-routing" { + description + "One SID SegmentRouting Path Option type"; + } + enum "po-count" { + description + "Number of Path option types"; + } + } + description + "Path Option Type"; + } + + typedef Mpls-te-mgmt-gmpls-label-origin { + type enumeration { + enum "not-set" { + description + "Not set"; + } + enum "uni-c" { + description + "UNI C"; + } + enum "uni-n" { + description + "UNI N"; + } + } + description + "GMPLS label source"; + } + + typedef Mpls-te-tunnel-state { + type enumeration { + enum "state-down" { + description + "Tunnel state is down"; + } + enum "state-up" { + description + "Tunnel state is up"; + } + enum "state-down-policy" { + description + "Tunnel state is down as it has been deactivated + administratively"; + } + enum "state-lockout" { + description + "Tunnel state is lockout"; + } + } + description + "Tunnel state"; + } + + typedef Mpls-te-soft-preemption-resolution { + type enumeration { + enum "soft-preemption-resolution-none" { + value 0; + description + "No Soft Preemption Resolution"; + } + enum "soft-preemption-resolution-pending" { + value 1; + description + "Soft Preemption has no resolution since it is + still pending"; + } + enum "soft-preemption-resolution-reopt-completed" { + value 2; + description + "The soft preempted LSP has been reoptimized"; + } + enum "soft-preemption-resolution-teardown" { + value 3; + description + "The soft preempted LSP has been torn"; + } + enum "soft-preemption-resolution-frr-triggered" { + value 4; + description + "The soft preempted LSP has been fast rerouted"; + } + enum "soft-preemption-resolution-path-protetion-switchover" { + value 5; + description + "The soft preempted LSP was switched with the + protection LSP"; + } + } + description + "The possible ways for soft preemption to end"; + } + + typedef Mpls-te-iep-hop { + type enumeration { + enum "iep-hop-type-unknown" { + description + "Unknown IEP hop type"; + } + enum "iep-hop-type-strict-next" { + description + "Strict next IEP hop type"; + } + enum "iep-hop-type-exclude" { + description + "Exclude IEP hop type"; + } + enum "iep-hop-type-exclude-node" { + description + "Exclude Node IEP hop type"; + } + enum "iep-hop-type-exclude-srlg" { + description + "Exclude SRLG IEP hop type"; + } + enum "iep-hop-type-loose-next" { + description + "Loose next IEP hop type"; + } + enum "iep-hop-type-next" { + description + "Next IEP hop type"; + } + enum "iep-hop-type-share-srlg" { + description + "Weighted SRLG IEP hop type"; + } + } + description + "Explicit path hop type"; + } + + typedef Mpls-te-pce-fail-reasons { + type enumeration { + enum "te-pce-fail-no-reason" { + description + "No reason"; + } + enum "te-pce-fail-no-pce" { + description + "No PCE to send request"; + } + enum "te-pce-fail-sub-pool" { + description + "Sub pool bandwidth tunnel"; + } + enum "te-pce-fail-intra-area" { + description + "Intra Area Tunnel"; + } + enum "te-pce-fail-gmpls" { + description + "GMPLS Tunnel"; + } + enum "te-pce-fail-pending" { + description + "Pending request"; + } + enum "te-pce-fail-oor" { + description + "OOR condition"; + } + enum "te-pce-fail-bidirectional" { + description + "Bi directional"; + } + enum "te-pce-fail-no-path" { + description + "No Path received from PCE"; + } + enum "te-pce-fail-request-timeout" { + description + "Request Timeout"; + } + } + description + "PCE failure reasons"; + } + + typedef Self-ping-state { + type enumeration { + enum "self-ping-none" { + value 0; + description + "There is no self-ping operation"; + } + enum "self-ping-underway" { + value 1; + description + "Self ping operation is underway"; + } + enum "self-ping-timed-out" { + value 2; + description + "Self ping operation timed out"; + } + enum "self-ping-terminated" { + value 3; + description + "Self ping operation was terminated"; + } + enum "self-ping-succeeded" { + value 4; + description + "Self ping operation succeeded"; + } + } + description + "Self ping operation state"; + } + + typedef Te-autobw-app-rej { + type enumeration { + enum "application-allowed" { + description + "Application allowed"; + } + enum "auto-bw-disabled" { + description + "Auto-bw disabled"; + } + enum "tunnel-is-down" { + description + "TunnelIsDown"; + } + enum "tunnel-is-frr" { + description + "TunnelIsFRRActive"; + } + enum "tunnel-is-backup" { + description + "TunnelIsBackup"; + } + enum "tunnel-is-lock-down" { + description + "TunnelIsLockdown"; + } + } + description + "Reason for auto-bandwidth application rejection"; + } + + typedef Te-autobw-app-trigger { + type enumeration { + enum "application-none" { + description + "No BW Application"; + } + enum "application-periodic" { + description + "BW Application Periodic"; + } + enum "application-manual" { + description + "BW Application Manual"; + } + enum "application-overflow" { + description + "BW Application Overflow"; + } + enum "application-underflow" { + description + "BW Application Underflow"; + } + } + description + "Auto-bandwidth application trigger"; + } + + typedef Te-hop-limit-ignore { + type enumeration { + enum "ignore-unknown" { + description + "Ignore for an unknown reason"; + } + enum "ignore-explicit" { + description + "Ignore due to explicit path option"; + } + enum "ignore-pce" { + description + "Ignore due to PCE path option"; + } + } + description + "Te hop limit ignore"; + } + + typedef Mpls-te-metric-qualifier { + type enumeration { + enum "metric-default" { + description + "Default metric"; + } + enum "metric-global" { + description + "This metric was specified globally"; + } + enum "metric-interface" { + description + "This metric was specified on this particular + tunnel"; + } + } + description + "Metric qualifier"; + } + + typedef Te-path-selection-tiebreaker { + type enumeration { + enum "min-fill" { + value 1; + description + "Min Fill"; + } + enum "max-fill" { + value 2; + description + "Max Fill"; + } + enum "random" { + value 3; + description + "Random"; + } + } + description + "Path selection tiebreaker type"; + } + + typedef Mpls-te-loadshare { + type enumeration { + enum "loadshare-equal" { + description + "Equal load-sharing on this tunnel"; + } + enum "loadshare-bandwidth-based" { + description + "Loadshare inferred from bandwidth configuration"; + } + enum "loadshare-configured" { + description + "Loadshare determined from explicit + configuration"; + } + } + description + "load-share type"; + } + + typedef Te-destination-state { + type enumeration { + enum "destination-disabled" { + description + "The destination is disabled in configuration"; + } + enum "destination-down" { + description + "The destination is down"; + } + enum "destination-up" { + description + "The destination is up"; + } + } + description + "P2MP destination state"; + } + + typedef Mpls-mte-tunnel-fail-reason { + type enumeration { + enum "mtunnel-fail-reason-unapplicable" { + description + "None of the reasons below is valid"; + } + enum "mtunnel-fail-reason-shutdown" { + description + "Tunnel interface is shutdown"; + } + enum "mtunnel-fail-reason-no-destination" { + description + "No destination is configured"; + } + enum "mtunnel-fail-reason-no-path-option" { + description + "No path option is configured"; + } + enum "mtunnel-fail-reason-no-source" { + description + "No ip source address is configured"; + } + enum "mtunnel-fail-reason-collaborator-disc" { + description + "Collaborator not connected"; + } + enum "mtunnel-fail-reason-unmatched-class-type-priority" { + description + "The class type and priority do not match any of + the TE-classes"; + } + enum "mtunnel-fail-reason-invalid-bidir-cfg" { + description + "Configured bidirectional, incomplete switching + capability config"; + } + enum "mtunnel-fail-reason-po-switchover" { + description + "Manual path-option switchover failed due to + destination(s) down"; + } + enum "mtunnel-fail-reason-no-tunnel-id" { + description + "No tunnel-id is configured"; + } + enum "mtunnel-fail-reason-no-link" { + description + "Tunnel's egress link doesn't exist"; + } + enum "mtunnel-fail-reason-link-shutdown" { + description + "Tunnel's egress link is shut down"; + } + enum "mtunnel-fail-reason-link-lmp-down" { + description + "LMP is down on the tunnel's egress link"; + } + enum "mtunnel-fail-reason-source-destination-same" { + description + "Tunnel source and destination addresses are the + same"; + } + enum "mtunnel-fail-reason-otn-no-odu-level" { + description + "OTN tunnel does not have odu-level set"; + } + enum "mtunnel-fail-reason-bidir-assoc-id-missing" { + description + "Bidirectional is configured without Association + ID"; + } + enum "mtunnel-fail-reason-bfdgal-on-unidirectional" { + description + "BFD GAL mode is supported on bidirectional + tunnels only"; + } + enum "mtunnel-fail-reason-destination-invalid" { + description + "Termination is supported with unnumbered + destination only"; + } + enum "mtunnel-fail-reason-termination-bandwidth-mismatch" { + description + "Termination bandwidth should match signalled + bandwidth"; + } + enum "mtunnel-fail-reason-termination-has-protection" { + description + "Termination supports only working path-option"; + } + enum "mtunnel-fail-reason-termination-has-invalid-src-dest-ifindex" { + description + "Termination case must have source and + destination valid ifindex"; + } + enum "mtunnel-fail-reason-termination-has-invalid-payload-type" { + description + "Termination payload type has to be valid for + configured bandwidth"; + } + } + description + "Reason for tunnel being down"; + } + + typedef Mte-tunnel-oper-state { + type enumeration { + enum "tunnel-state-oper-unknown" { + description + "Tunnel is in unknown state"; + } + enum "operational-down" { + description + "Tunnel is in operational down state"; + } + enum "operational-up" { + description + "Tunnel is in operational up state"; + } + } + description + "Tunnel operational state"; + } + + typedef Mte-tunnel-admin-state { + type enumeration { + enum "tunnel-state-admin-unknown" { + description + "Tunnel is in unknown state"; + } + enum "admin-shutdown" { + description + "Tunnel is in admin shutdown state"; + } + enum "admin-up" { + description + "Tunnel is in admin up state"; + } + } + description + "Tunnel admin state"; + } + + typedef Te-vif-bfd-encap-mode { + type enumeration { + enum "ip" { + description + "BFD Encap Mode IP"; + } + enum "gal" { + description + "BFD Encap Mode GAL"; + } + } + description + "BFD Encap Mode"; + } + + typedef Mpls-te-bfd-session-down-action1 { + type enumeration { + enum "reopt" { + value 0; + description + "BFD session down action reoptimization"; + } + enum "re-setup" { + value 1; + description + "BFD session down action tear down and resetup"; + } + } + description + "BFD session down action"; + } + + typedef Te-lsp-path-protection-role { + type enumeration { + enum "protection-role-not-set" { + description + "Protection role not set"; + } + enum "protection-role-working" { + description + "Working"; + } + enum "protection-role-protecting" { + description + "Protecting"; + } + enum "protection-role-pending" { + description + "Pending"; + } + } + description + "Protection Role"; + } + + typedef Mte-reopt-trigger { + type enumeration { + enum "no-trigger" { + description + "No trigger"; + } + enum "timer-trigger" { + description + "Timer Trigger"; + } + enum "bandwidth-change-trigger" { + description + "Bandwidth Change Trigger"; + } + enum "auto-bandwidth-overflow-trigger" { + description + "Auto Bandwidth Overflow Trigger"; + } + enum "auto-bandwidth-underflow-trigger" { + description + "Auto Bandwidth Underflow Trigger"; + } + enum "auto-bandwidth-adjustment-trigger" { + description + "Auto Bandwidth Adjustment Trigger"; + } + enum "metric-type-change-trigger" { + description + "Metric Type Change Trigger"; + } + enum "user-trigger" { + description + "User Trigger"; + } + enum "frr-trigger" { + description + "FRR Trigger"; + } + enum "remerge-error-trigger" { + description + "Remerge Error Trigger"; + } + enum "preferred-path-trigger" { + description + "Reception of the preferred path exists path + error"; + } + enum "preferred-tree-trigger" { + description + "Reception of the preferred tree exists path + error"; + } + enum "due-to-maximum-metric" { + description + "Reoptimization triggered due to receiving an + LSA with MAX metric"; + } + enum "path-option-switchover-trigger" { + description + "Path option switchover"; + } + enum "path-protection-switchover-trigger" { + description + "Path Protection Switchover Trigger"; + } + enum "reroute-sticky-path-trigger" { + description + "Reroute Sticky Path trigger"; + } + enum "iep-enable-reoptimization-trigger" { + description + "IEP Enable Reoptimization Trigger"; + } + enum "affinity-path-verification-fail-trigger" { + description + "Affinity path verification failure trigger"; + } + enum "cost-limit-path-verification-fail-trigger" { + description + "Cost limit path verification failure trigger"; + } + enum "delay-limit-path-verification-fail-trigger" { + description + "Delay limit path verification failure trigger"; + } + enum "soft-preemption-trigger" { + description + "Soft preemption trigger"; + } + enum "iep-changed" { + description + "Explicit path has changed"; + } + enum "po-changed" { + description + "Path-option has changed"; + } + enum "dest-changed" { + description + "Destination has changed"; + } + enum "reopt-try-to-force-it" { + description + "Reoptimization with try-to-force-it option"; + } + enum "topology-change-trigger" { + description + "Topology change trigger"; + } + enum "reopt-link-up-event" { + description + "Topology link-up event trigger"; + } + enum "bfd-session-down-trigger" { + description + "FRR enabled and BFD session down trigger"; + } + enum "reverse-assoc-s2l-received-trigger" { + description + "Reverse associated S2L received trigger"; + } + enum "gmpls-uni-multilayer-trigger" { + description + "Multilayer recovery for GMPLS-UNI"; + } + enum "gmpls-uni-user-trigger" { + description + "User-triggered GMPLS-UNI reopt request"; + } + enum "path-selection-tiebreaker-change-trigger" { + description + "Path Selection Tiebreaker Change Trigger"; + } + enum "sr-egress-path-change-trigger" { + description + "Segment-Routing Egress Path Change Trigger"; + } + enum "overload-bit-trigger" { + description + "Overload-bit set on current path"; + } + enum "pce-trigger" { + description + "PCE Trigger"; + } + enum "lockout-metric-trigger" { + description + "Reoptimization triggered due to receiving an + LSA with Lockout metric"; + } + enum "bfd-session-config-change-trigger" { + description + "BFD session configuration change"; + } + enum "higher-priority-po-change-trigger" { + description + "Higher priority path option changed"; + } + enum "sr-area-spf-support-change-trigger" { + description + "Segment-Routing IGP Area SPF Support Change + Trigger"; + } + enum "trigger-not-used" { + description + "Not used"; + } + } + description + "Reoptimization trigger"; + } + + typedef Mpls-te-reopt-decision-reason { + type enumeration { + enum "decision-reason-none" { + value 0; + description + "No reason"; + } + enum "not-superset" { + value 1; + description + "Reopt LSP not signalled because it is not a + superset of the current LSP"; + } + enum "superset" { + value 2; + description + "Reopt LSP is signalled because it is a superset + of the current LSP"; + } + enum "lsp-frr-active" { + value 3; + description + "Reopt LSP is signalled because the current LSP + is in FRR"; + } + enum "bandwidth-change" { + value 4; + description + "Reopt LSP is signalled because there is a + bandwidth change"; + } + enum "metric-type-change" { + value 5; + description + "Reopt LSP is signalled because there is a + metric type change"; + } + enum "better-path-option-indexes" { + value 6; + description + "Reopt LSP is signalled because it has better + path option indexes than the current LSP"; + } + enum "inter-area-preferred-path-exists" { + value 7; + description + "Reopt LSP is signalled because an inter-area + preferred path exists"; + } + enum "inter-area-preferred-tree-exists" { + value 8; + description + "Reopt LSP is signalled because an inter-area + preferred tree exists"; + } + enum "worse-path-option-indexes" { + value 9; + description + "Reopt LSP is not signalled because it has worse + path option indexes than the current LSP"; + } + enum "better-cumulative-metric" { + value 10; + description + "Reopt LSP is signalled because it has better + path option indexes than the current LSP"; + } + enum "worse-cumulative-metric" { + value 11; + description + "Reopt LSP is not signalled because it has worse + cumulative metric than the current LSP"; + } + enum "identical" { + value 12; + description + "Reopt LSP is not signalled because it is + identical to the current LSP"; + } + enum "no-s2-ls" { + value 13; + description + "Reopt LSP is not signalled because it has no + S2Ls"; + } + enum "no-current-lsp" { + value 14; + description + "Reopt LSP not signalled, no current LSP"; + } + enum "user-path-option-switchover" { + value 15; + description + "Reopt LSP signalled due to user requested + path-option switchover"; + } + enum "better-hops" { + value 16; + description + "Reopt LSP is signalled because it has more S2Ls + with less hops than the current LSP"; + } + enum "worse-hops" { + value 17; + description + "Reopt LSP is not signalled because it has less + S2Ls with less hops than the current LSP"; + } + enum "pce-force" { + value 18; + description + "PCE based reoptimization triggered by CLI with + force option than the current LSP"; + } + enum "affinity-changed" { + value 19; + description + "Reopt LSP is signalled because there is an + affinity change"; + } + enum "cost-limit" { + value 20; + description + "Reopt LSP is signalled because the path cost + limit is crossed"; + } + enum "sig-timeout" { + value 21; + description + "Re-opt LSP could not be signalled within + signalling timeout"; + } + enum "not-superset-inst-timer-expired" { + value 22; + description + "Re-opt LSP is not a superset when the install + timer expired"; + } + enum "path-verifiction-failed" { + value 23; + description + "Re-opt LSP path verification failed"; + } + enum "soft-preemption-recovery" { + value 24; + description + "Re-opt LSP is signalled because of soft + preemption recovery"; + } + enum "iep-changed" { + value 25; + description + "Re-opt LSP is signalled because the inuse + explicit-path has changed"; + } + enum "po-changed" { + value 26; + description + "Re-opt LSP is signalled because the inuse + path-option has changed"; + } + enum "dest-changed" { + value 27; + description + "Re-opt LSP is signalled because the destination + has changed"; + } + enum "better-igp-area" { + value 28; + description + "Reopt LSP is signalled because its path was + calculated in a preferred IGP-area to the + current LSP"; + } + enum "worse-igp-area" { + value 29; + description + "Reopt LSP is not signalled because its path was + calculated in a worse IGP-area than the current + LSP"; + } + enum "better-bandwidth-load-balancing" { + value 30; + description + "Reopt LSP is signalled because it gives better + bandwidth load balancing than the current LSP"; + } + enum "worse-bandwidth-load-balancing" { + value 31; + description + "Reopt LSP is not signalled because it gives + worse bandwidth load balancing than the current + LSP"; + } + enum "bfd-session-down" { + value 32; + description + "Reopt LSP is signaled because BFD sesssion went + down"; + } + enum "auto-pcc-reopt" { + value 33; + description + "Re-opt LSP is signalled because it was + triggered by a PCE"; + } + enum "sr-egress-path-changed" { + value 34; + description + "Reopt LSP is signaled because the egress + path(s) changed"; + } + enum "overload-bit-set" { + value 35; + description + "Reopt LSP is signalled because the current LSP + uses an OL node"; + } + enum "better-diversity" { + value 36; + description + "Reopt LSP is signalled because it has better + diversity than the current LSP"; + } + enum "worse-diversity" { + value 37; + description + "Reopt LSP is not signalled because it has worse + diversity than the current lsp"; + } + enum "bfd-session-type-changed" { + value 38; + description + "Reopt LSP is signalled because BFD sesssion + tyep is changed"; + } + enum "lsp-drop-mode" { + value 39; + description + "Reopt LSP is signalled because current LSP is + in drop mode"; + } + enum "strict-spf" { + value 40; + description + "Reopt LSP is signalled because it uses strict + SPF while current doesn't"; + } + enum "delay-limit" { + value 41; + description + "Reopt LSP is signalled because the path delay + limit is crossed"; + } + enum "lockout-metric" { + value 42; + description + "Reopt LSP is signalled because one of the + links is locked out"; + } + enum "intra-area" { + value 43; + description + "Reopt LSP is signalled because it has better + intra-areaness"; + } + enum "clear-sticky" { + value 44; + description + "Reopt LSP is signalled because clear sticky + command"; + } + enum "not-used" { + value 45; + description + "Not used, must be last entry"; + } + } + description + "Reoptimization decision"; + } + + typedef Mpls-te-lsp-wrap-state { + type enumeration { + enum "lsp-wrap-not-ready" { + description + "LSP Wrap state is not ready"; + } + enum "lsp-wrap-active" { + description + "LSP Wrap state is active"; + } + enum "lsp-wrap-ready" { + description + "LSP Wrap state is ready"; + } + } + description + "LSP Wrap state"; + } + + typedef Te-sr-sid { + type enumeration { + enum "srsid-not-set" { + description + "Type not set"; + } + enum "srsid-node" { + description + "Segment-Routing Node"; + } + enum "srsid-adj" { + description + "Segment-Routing Link"; + } + enum "srsid-unknown" { + description + "Segment-Routing Unknown"; + } + } + description + "Segment-Routing SID types"; + } + + typedef Te-association-tie-role { + type enumeration { + enum "none" { + description + "Association Role None"; + } + enum "master" { + description + "Association Role Master"; + } + enum "slave" { + description + "Association Role Slave"; + } + } + description + "TE Association Tie Breaker Role"; + } + + typedef Te-vif-bfd { + type enumeration { + enum "bfd-disabled" { + value 0; + description + "BFD Fast Detect Not Enabled"; + } + enum "bfd-enabled" { + value 1; + description + "Regular BFD Enabled"; + } + enum "sbfd-enabled" { + value 2; + description + "SBFD Enabled"; + } + } + description + "BFD Type"; + } + + typedef Te-bfd-lsp-session-state { + type enumeration { + enum "bfd-over-lsp-session-state-none" { + value 0; + description + "BFDOverLSP session state none"; + } + enum "bfd-over-lsp-session-state-created" { + value 1; + description + "BFDOverLSP session state created"; + } + enum "bfd-over-lsp-session-state-up" { + value 2; + description + "BFDOverLSP session state up"; + } + enum "bfd-over-lsp-session-state-down" { + value 3; + description + "BFDOverLSP session state down"; + } + enum "bfd-over-lsp-session-state-admin-down" { + value 4; + description + "BFDOverLSP session state admin down"; + } + enum "bfd-over-lsp-session-state-deleted" { + value 5; + description + "BFDOverLSP sesssion state deleted"; + } + enum "bfd-over-lsp-session-state-create-failed" { + value 6; + description + "BFDOverLSP session state create failed"; + } + } + description + "TE BFDOverLSP Session State"; + } + + typedef Gmpls-uni-mgmt-dwdm-cs { + type enumeration { + enum "not-set" { + description + "Not Set"; + } + enum "dwdm100g-hz" { + description + "100GHz"; + } + enum "dwdm50g-hz" { + description + "50GHz"; + } + enum "dwdm25g-hz" { + description + "25GHz"; + } + enum "dwdm12g-hz" { + description + "12.5GHz"; + } + enum "dwdm6g-hz" { + description + "6.25GHz"; + } + } + description + "GMPLS-UNI DWDM channel spacings"; + } + + typedef Gmpls-uni-mgmt-wdm-grid { + type enumeration { + enum "not-set" { + description + "Not Set"; + } + enum "dwdm" { + description + "DWDM"; + } + enum "cwdm" { + description + "CWDM"; + } + } + description + "GMPLS-UNI WDM grid"; + } + + typedef Mpls-te-mgmt-gmpls-label { + type enumeration { + enum "not-set" { + description + "Not Set"; + } + enum "fixed-wdm" { + description + "Fixed-grid WDM"; + } + enum "fixed-g709otn" { + description + "Fixed-size G709 OTN"; + } + enum "fsc" { + description + "Fiber Switch"; + } + } + description + "GMPLS label type"; + } + + typedef Mpls-te-soft-preemption-state { + type enumeration { + enum "soft-preemption-not-pending" { + description + "Soft Preemption has not been triggered and is + not pending"; + } + enum "soft-preemption-pending" { + description + "Soft Preemption has been triggered and is + pending"; + } + } + description + "The possible states for soft preemption"; + } + + typedef Mpls-te-tunnels-signaling-status { + type enumeration { + enum "down" { + description + "The tunnel is down"; + } + enum "recovering" { + description + "The tunnel is recovering"; + } + enum "recovered" { + description + "The tunnel is recovered"; + } + enum "connected" { + description + "The tunnel is connected"; + } + enum "disabled" { + description + "The tunnel signalling is disabled"; + } + enum "proceeding" { + description + "The tunnel signalling is proceeding"; + } + enum "wait-bfd-session-up" { + description + "The tunnel is waiting for BFD session up"; + } + enum "wait-sr-segment-path-up" { + description + "The tunnel is waiting for SR segment path"; + } + enum "wait-local-label" { + description + "The tunnel is waiting for a local label"; + } + enum "wait-local-label-rewrite" { + description + "The tunnel is waiting for a local label rewrite"; + } + } + description + "Tunnel signalling status"; + } + + typedef Mpls-te-frr-state { + type enumeration { + enum "frr-inactive" { + description + "FRR state is inactive"; + } + enum "frr-active" { + description + "FRR state is active"; + } + enum "frr-ready" { + description + "FRR state is ready"; + } + } + description + "FRR state"; + } + + typedef Te-controller-state { + type enumeration { + enum "notready" { + description + "Controller not ready"; + } + enum "admin-down" { + description + "Controller is admin down"; + } + enum "down" { + description + "Controller is operationally down"; + } + enum "shutdown" { + description + "Controller is shutdown"; + } + enum "error-disabled" { + description + "Controller is disabled due to error"; + } + enum "up" { + description + "Controller is operationally up"; + } + enum "unknown" { + description + "Controller state unknown"; + } + } + description + "Controller States"; + } + + typedef Te-mgmt-generic-fspec { + type enumeration { + enum "te-generic-fspec-type-g709otn" { + description + "TE G709 OTN FSpec type"; + } + } + description + "TE generic FSpec types"; + } + + typedef Te-mgmt-generic-tspec { + type enumeration { + enum "te-generic-tspec-type-g709otn" { + description + "TE G709 OTN TSpec type"; + } + } + description + "TE generic TSpec types"; + } + + typedef Rsvp-mgmt-rro-subobj { + type enumeration { + enum "ipv4rro-type" { + value 1; + description + "IPv4 RRO Type"; + } + enum "label-rro-type" { + value 3; + description + "Label RRO Type"; + } + enum "unnumbered-rro-type" { + value 4; + description + "Unnumbered RRO Type"; + } + enum "srlg-rro-type" { + value 34; + description + "SRLG RRO Type"; + } + } + description + "RSVP RRO Types"; + } + + typedef Rsvp-mgmt-ero-subobj-status { + type enumeration { + enum "rsvp-mgmt-ero-status-not-available" { + value 0; + description + "ERO is not available in topology"; + } + enum "rsvp-mgmt-ero-status-available" { + value 1; + description + "ERO is available in topology"; + } + enum "rsvp-mgmt-ero-status-bw-not-available" { + value 2; + description + "ERO doesn't have bw available in topology"; + } + } + description + "RSVP ERO Status"; + } + + typedef Rsvp-mgmt-ero-subobj { + type enumeration { + enum "rsvp-mgmt-ero-type-ipv4" { + value 1; + description + "IPv4 ERO Type"; + } + enum "rsvp-mgmt-ero-type-un-num" { + value 4; + description + "Unnumbered ERO Type"; + } + } + description + "RSVP ERO Types"; + } + + typedef Mpls-te-metric { + type enumeration { + enum "metric-not-set" { + description + "Metric type not set"; + } + enum "metric-igp" { + description + "Metric for IGP routes"; + } + enum "metric-te" { + description + "Metric for MPLS traffic engineering tunnels"; + } + enum "metric-delay" { + description + "Delay Metric"; + } + } + description + "Metric type"; + } + + typedef Te-path-inval-action { + type enumeration { + enum "none" { + value 0; + description + "TE path selection invalidation action none"; + } + enum "tear" { + value 1; + description + "TE path selection invalidation action tear"; + } + enum "drop" { + value 2; + description + "TE path selection invalidation action drop"; + } + } + description + "Path selection invalidation action type"; + } + + typedef Te-s2l-sr-path-selection { + type enumeration { + enum "te-s2l-sr-path-selection-any" { + value 0; + description + "TE S2L Segment-Routing Path Selection type Any"; + } + enum "te-s2l-sr-path-selection-adj-unprotected" { + value 1; + description + "TE S2L Segment-Routing Path Selection type + Adjacency Unprotected"; + } + enum "te-s2l-sr-path-selection-adj-protected" { + value 2; + description + "TE S2L Segment-Routing Path Selection type + Adjacency Protected"; + } + } + description + "Segment-routing path selection type"; + } + + typedef Te-bfd-reverse-path { + type enumeration { + enum "bfd-reverse-path-none" { + value 0; + description + "BFD reverse path not enabled"; + } + enum "bfd-reverse-path-binding-label" { + value 1; + description + "BFD reverse path binding label"; + } + } + description + "BFD Reverse Path Type"; + } + + typedef Te-pce-disjoint { + type enumeration { + enum "none" { + value 0; + description + "PCE Disjoint Type none"; + } + enum "link" { + value 1; + description + "PCE Disjoint Type link"; + } + enum "node" { + value 2; + description + "PCE Disjoint Type node"; + } + enum "srlg" { + value 3; + description + "PCE Disjoint Type srlg"; + } + } + description + "PCE Disjoint Path type"; + } + + typedef Tunnel-attribute-set { + type enumeration { + enum "tunnel-attribute-set-none" { + value 0; + description + "No Tunnel AttributeSet configured"; + } + enum "tunnel-attribute-set-path-option" { + value 1; + description + "Tunnel AttributeSet Type is Path Option"; + } + enum "tunnel-attribute-set-not-used" { + value 2; + description + "None"; + } + enum "tunnel-attribute-set-auto-backup" { + value 3; + description + "Tunnel AttributeSet Type is AutoBackup"; + } + enum "tunnel-attribute-set-auto-mesh" { + value 4; + description + "Tunnel AttributeSet Type is AutoMesh"; + } + enum "tunnel-attribute-set-xro" { + value 5; + description + "Tunnel AttributeSet Type is XRO"; + } + enum "tunnel-attribute-set-p2mpte" { + value 6; + description + "Tunnel AttributeSet Type is P2MP TE"; + } + enum "tunnel-attribute-aps-pp" { + value 7; + description + "Tunnel AttributeSet Type is APS Path Protection"; + } + enum "tunnel-attribute-set-p2p-te" { + value 8; + description + "Tunnel AttributeSet Type is P2P TE"; + } + enum "tunnel-attribute-uni-p" { + value 9; + description + "Tunnel AttributeSet Type is UNI Protection"; + } + } + description + "Tunnel attribute set"; + } + + typedef Mpls-te-pathoption { + type enumeration { + enum "path-option-unknown" { + description + "Unknown Path Option"; + } + enum "path-option-dynamic" { + description + "Dynamic Path Option"; + } + enum "path-option-explicit-name" { + description + "Explicit name Path Option"; + } + enum "path-option-explicit-id" { + description + "Explicit Identifier Path Option"; + } + enum "path-option-pce" { + description + "PCE Path Option"; + } + enum "path-option-no-ero" { + description + "No-ERO Path Option"; + } + enum "path-option-segment-routing" { + description + "Segment-Routing Path Option"; + } + } + description + "Path-option type"; + } + + typedef Mpls-te-bw-pool { + type enumeration { + enum "te-bandwidth-pool0" { + description + "Bandwidth pool type is pool0"; + } + enum "te-bandwidth-pool1" { + description + "Bandwidth pool type is pool1"; + } + enum "te-bandwidth-any-pool" { + description + "Bandwidth pool type is any pool"; + } + } + description + "Bandwidth pool type"; + } + + typedef Hw-oor-state { + type enumeration { + enum "oor-green" { + description + "NPU resources are in normal state"; + } + enum "oor-yellow" { + description + "NPU resources are in minor state"; + } + enum "oor-red" { + description + "NPU resources are in Major state"; + } + } + description + "NPU resources states"; + } + + grouping MPLS-LM-SOFT-PREEMPTION-LINK-INFO { + description + "Soft Preemption Info per Link"; + leaf link-address { + type inet:ipv4-address; + description + "The link's IPv4 address"; + } + leaf total-soft-preempted-bandwidth-bc0 { + type uint64; + description + "The total BC0 BW that is softly preempted: this + is the sum of bandwidth for all the LSPs that + were soft preempted"; + } + leaf total-soft-preempted-bandwidth-bc1 { + type uint64; + description + "The total BC1 BW that is softly preempted: this + is the sum of bandwidth for all the LSPs that + were soft preempted"; + } + leaf current-soft-preempted-bandwidth-bc0 { + type uint64; + description + "The current BC0 BW that is softly preempted: + this is the sum of bandwidth for the LSPs that + are soft preempted and have not been torn down + yet"; + } + leaf current-soft-preempted-bandwidth-bc1 { + type uint64; + description + "The current BC1 BW that is softly preempted: + this is the sum of bandwidth for the LSPs that + are soft preempted and have not been torn down + yet"; + } + leaf release-soft-preempted-bandwidth-bc0 { + type uint64; + description + "The total released BC0 BW that is softly + preempted: this is the sum of bandwidth for the + LSPs that are soft preempted and are torn down"; + } + leaf release-soft-preempted-bandwidth-bc1 { + type uint64; + description + "The total released BC1 BW that is softly + preempted: this is the sum of bandwidth for the + LSPs that are soft preempted and are torn down"; + } + leaf current-over-subscribed-bandwidth-bc0 { + type uint64; + description + "The BC0 bandwidth that is over subscribed on + this link: this is the difference between the + maximum available BC0 BW on the link and the sum + of the currently reserved BC0 bandwidth and the + currently soft preempted BC0 BW"; + } + leaf current-over-subscribed-bandwidth-bc1 { + type uint64; + description + "The BC1 bandwidth that is over subscribed on + this link: this is the difference between the + maximum available BC1 BW on the link and the sum + of the currently reserved BC1 bandwidth and the + currently soft preempted BC1 BW"; + } + list current-soft-preemption-lsp { + description + "List of the soft preempted LSPs that are not yet + cleaned up"; + uses MPLS-LM-PREEMPTED-LSP; + } + } + + grouping MPLS-TE-SOFT-PREEMPTION-GLOBAL-INFO { + description + "Global Soft Preemption Info"; + leaf is-configured { + type boolean; + description + "Is global soft-preemption configured"; + } + leaf is-timeout-interval-configured { + type boolean; + description + "Is global soft-preemption timeout interval + configured"; + } + leaf timeout-interval { + type uint32; + description + "Global soft-preemption timeout interval"; + } + } + + grouping MPLS-LM-ADMISSION-CONTROL-TUNNEL-INFO { + description + "Information about a given admitted tunnel"; + leaf tunnel-name { + type string; + description + "The admitted tunnel's name"; + } + leaf bandwidth-state { + type Bandwidth-state-enum; + description + "The bandwidth state"; + } + leaf bandwidth-pool { + type Bandwidth-type-enum; + description + "The bandwidth pool"; + } + leaf setup-priority { + type uint8; + description + "The tunnel's setup priority"; + } + leaf hold-priority { + type uint8; + description + "The tunnel's hold priority"; + } + leaf up-link-name { + type string; + description + "The uplink's name for this tunnel"; + } + leaf down-link-name { + type string; + description + "The downlink's name for this tunnel"; + } + leaf tunnel-state { + type Tunnel-state-enum; + description + "The tunnel's state"; + } + leaf bandwidth { + type uint64; + description + "The bandwidth used by this tunnel"; + } + leaf local-label { + type uint32; + description + "The local label"; + } + leaf outgoing-label { + type uint32; + description + "The outgoing label"; + } + leaf backup-interface { + type string; + description + "The backup Interface"; + } + leaf is-rerouted { + type boolean; + description + "TRUE if the tunnel is currently rerouted"; + } + } + + grouping MPLS-LM-ADMISSION-CONTROL-COMMON-INFO { + description + "Global information about admitted tunnels"; + leaf is-role-standby { + type boolean; + description + "TRUE if Role is Standby, Active otherwise"; + } + leaf total-tunnels { + type uint32; + description + "Total p2p tunnels admitted"; + } + leaf total-p2mp-tunnels { + type uint32; + description + "Total p2mp tunnels admitted"; + } + leaf selected-tunnels { + type uint32; + description + "Number of tunnels selected"; + } + leaf bandwidth-units { + type Bandwidth-unit-enum; + description + "Bandwidth units"; + } + } + + grouping MPLS-LM-INTERFACE-HW-OOR-INFO { + description + "Information about NPU Resources state for the + link"; + leaf hw-oor-state { + type Hw-oor-state; + description + "The NPU (Network Processor Unit) HW resource + state"; + } + leaf hw-oor-timestamp { + type uint32; + description + "Timestamp when the OOR state last changed"; + } + leaf hw-o-or-green-recovery-time { + type uint32; + units "second"; + description + "Time Remaining in Green Recovery State (seconds)"; + } + list hw-o-or-link-statistic { + max-elements "3"; + description + "HW OOR statistics for the link"; + uses TE-HW-OOR-STATS; + } + } + + grouping MPLS-LM-INTERFACE-LOCKOUT-INFO { + description + "Information about flex LSP lockout info for the + link"; + leaf is-lockout { + type boolean; + description + "True if link is locked out"; + } + leaf lockout-on-timestamp { + type uint32; + description + "Timestamp when the lockout is set"; + } + leaf lockout-off-timestamp { + type uint32; + description + "Timestamp when the lockout is cleared"; + } + } + + grouping MPLS-LM-INTERFACE-LINK-AREA-INFO { + description + "Information about an area to which the link + belongs"; + leaf area-id { + type string; + description + "Area id"; + } + leaf neighbor-id { + type string; + description + "The interface neighbor id"; + } + leaf neighbor-address { + type inet:ipv4-address; + description + "The interface's neighbor's ip address"; + } + leaf is-neighbor-up { + type boolean; + description + "TRUE if the neighbor is up"; + } + leaf igp-metric { + type uint32; + description + "The link's IGP metric"; + } + } + + grouping MPLS-TE-DARKBW-SAMPLE-SR { + description + "Information about a single Segment Routing + bandwidth accounting sample"; + leaf timestamp { + type uint32; + units "second"; + description + "Timestamp in seconds of this sample"; + } + leaf sr-rate { + type uint64; + units "kbit/s"; + description + "Segment Routing traffic rate measured in + Kilobits per second in this sample"; + } + } + + grouping MPLS-TE-DARKBW-HISTORY-SR { + description + "Segment Routing Bandwidth accounting history"; + list sr-active-interval-sample { + description + "Segment Routing samples in the current + application interval"; + uses MPLS-TE-DARKBW-SAMPLE-SR; + } + list sr-previous-interval-sample { + description + "Segment Routing samples in the previous + application interval"; + uses MPLS-TE-DARKBW-SAMPLE-SR; + } + } + + grouping MPLS-TE-DARKBW-SAMPLE-RSVP { + description + "Information about a single RSVP-TE bandwidth + accounting sample"; + leaf timestamp { + type uint32; + units "second"; + description + "Timestamp in seconds of this sample"; + } + leaf total-rate { + type uint64; + units "kbit/s"; + description + "Total traffic rate measured in Kilobits per + second in this sample"; + } + leaf rsvp-te-rate { + type uint64; + units "kbit/s"; + description + "RSVP-TE traffic rate measured in Kilobits per + second in this sample"; + } + leaf non-rsvp-te-rate { + type uint64; + units "kbit/s"; + description + "Non-RSVP-TE traffic rate measured in Kilobits + per second in this sample"; + } + } + + grouping MPLS-TE-DARKBW-HISTORY-RSVP { + description + "RSVP-TE Bandwidth accounting history"; + list rsvp-te-active-interval-sample { + description + "RSVP-TE samples in the current application + interval"; + uses MPLS-TE-DARKBW-SAMPLE-RSVP; + } + list rsvp-te-previous-interval-sample { + description + "RSVP-TE samples in the previous application + interval"; + uses MPLS-TE-DARKBW-SAMPLE-RSVP; + } + } + + grouping MPLS-TE-DARKBW-BW-UTIL-SR { + description + "Information about Segment Routing bandwidth + utilization in bandwidth accounting"; + leaf sr-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Segment Routing bandwidth utilization measured + in kilobits per second"; + } + leaf sr-adjusted-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Adjusted Segment Routing bandwidth utilization + measured in kilobits per second"; + } + leaf sr-enforced-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Enforced Segment Routing bandwidth utilization + measured in kilobits per second"; + } + } + + grouping MPLS-TE-DARKBW-BW-UTIL-RSVP { + description + "Information about RSVP-TE bandwidth utilization + in bandwidth accounting"; + leaf total-link-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Total bandwidth utilization measured in kilobits + per second"; + } + leaf rsvp-te-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "RSVP-TE bandwidth utilization measured in + kilobits per second"; + } + leaf non-rsvp-te-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Non-RSVP-TE bandwidth utilization measured in + kilobits per second"; + } + leaf rsvp-te-adjusted-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Adjusted RSVP-TE bandwidth utilization measured + in kilobits per second"; + } + leaf rsvp-te-enforced-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Enforced RSVP-TE bandwidth utilization measured + in kilobits per second"; + } + } + + grouping MPLS-LM-DARKBW-LINK-COMMON-INFO { + description + "Information for bandwidth accounting per link"; + container rsvp-te-bandwidth-utilization { + description + "RSVP-TE Bandwidth utilization information"; + uses MPLS-TE-DARKBW-BW-UTIL-RSVP; + } + container sr-bandwidth-utilization { + description + "Segment Routing Bandwidth utilization + information"; + uses MPLS-TE-DARKBW-BW-UTIL-SR; + } + leaf is-bandwidth-account-enabled { + type boolean; + description + "TRUE if bandwidth accounting is enabled"; + } + leaf application-enforced { + type boolean; + description + "TRUE if bandwidth accounting application is + enforced"; + } + leaf collection-type { + type Bandwidth-accounting-collection; + description + "The type of traffic collected for bandwidth + accounting"; + } + leaf sample-interval { + type uint32; + units "second"; + description + "Sampling interval in seconds for bandwidth + accounting stats"; + } + leaf sample-time-remaining { + type uint32; + units "second"; + description + "This value indicates the number of seconds until + the next sampling"; + } + leaf last-sample-collection-timestamp { + type uint32; + description + "Timestamp for the last sample collection"; + } + leaf next-sample-collection { + type uint32; + description + "Timestamp for the next sample collection"; + } + leaf application-interval { + type uint32; + units "second"; + description + "Application interval in seconds for bandwidth + accounting stats"; + } + leaf application-time-remaining { + type uint32; + units "second"; + description + "This value indicates the number of seconds until + the next application"; + } + leaf last-application-timestamp { + type uint32; + description + "Timestamp for the last application"; + } + leaf next-application { + type uint32; + description + "Timestamp for the next application"; + } + leaf adjustment-factor { + type uint32; + description + "This value indicates the adjustment factor + applied to measured non RSVP-TE bandwidth"; + } + leaf max-reservable-bandwidth-threshold-are-default { + type boolean; + description + "TRUE if the maximum reservable bandwidth + flooding thresholds are default"; + } + leaf up-threshold-max-reservable-bandwidth { + type uint8; + description + "The up threshold for flooding the maximum + reservable bandwidth"; + } + leaf down-threshold-max-reservable-bandwidth { + type uint8; + description + "The down threshold for flooding the maximum + reservable bandwidth"; + } + leaf flooding-trigger-type { + type Bandwidth-accounting-flooding-trigger; + description + "The type of flooding triggers for bandwidth + accounting"; + } + leaf sr-traffic-percentage { + type uint8; + units "percentage"; + description + "The percentage of segment-routing traffic as + threshold for flooding"; + } + } + + grouping MPLS-LM-DARKBW-LINK-INFO { + description + "Detail information for bandwidth accounting per + link"; + container bandwidth-account-common-info { + description + "Common info for bandwidth accounting"; + uses MPLS-LM-DARKBW-LINK-COMMON-INFO; + } + container rsvp-te-bandwidth-sample-history { + description + "RSVP-TE Bandwidth samples history"; + uses MPLS-TE-DARKBW-HISTORY-RSVP; + } + container sr-bandwidth-sample-history { + description + "Segment Routing Bandwidth samples history"; + uses MPLS-TE-DARKBW-HISTORY-SR; + } + } + + grouping MPLS-LM-INTERFACE-LINK-INFO { + description + "IGP and area information of a link"; + container link-common { + description + "The link's common info"; + uses MPLS-LM-COMMON-LINK-INFO; + } + container bandwidth-account { + description + "Bandwidth Account info"; + uses MPLS-LM-DARKBW-LINK-INFO; + } + container hw-oor { + description + "The link's NPU OOR info. This field is NULL for + platforms that do not support HW-OOR + notifications"; + uses MPLS-LM-INTERFACE-HW-OOR-INFO; + } + leaf reason-not-flooded { + type string; + description + "Reason why link is not flooded + (area-independent)"; + } + leaf maximum-reservation-bandwidth-rdm { + type uint64; + description + "The link's maximum reservable BW in RDM"; + } + leaf reservable-pool0-bandwidth-rdm { + type uint64; + description + "The link's reservable pool0 BW in RDM"; + } + leaf reservable-pool1-bandwidth-rdm { + type uint64; + description + "The link's reservable pool1 BW in RDM"; + } + leaf maximum-reservation-bandwidth-mam { + type uint64; + description + "The link's maximum reservable BW in MAM"; + } + leaf reservable-pool0-bandwidth-mam { + type uint64; + description + "The link's reservable pool0 BW in MAM"; + } + leaf reservable-pool1-bandwidth-mam { + type uint64; + description + "The link's reservable pool1 BW in MAM"; + } + leaf link-attributes { + type uint32; + description + "Deprecated"; + } + leaf is-attribute-incomplete { + type boolean; + description + "TRUE if one or more affinity definition(s) + is/are unknown"; + } + leaf is-name-based-attribute { + type boolean; + description + "TRUE, if name based attribute style is in effect"; + } + leaf te-metric { + type uint32; + description + "The link's TE metric"; + } + leaf is-te-metric-valid { + type boolean; + description + "Flag to indicate whether the link's TE metric is + a valid value"; + } + list link-extended-attribute { + description + "The link's extended attribute bit map"; + leaf entry { + type uint32; + description + "The link's extended attribute bit map"; + } + } + list link-forwad-ref-value { + description + "Reference bits for undefined affinity names"; + leaf entry { + type uint32; + description + "Reference bits for undefined affinity names"; + } + } + list affinity-map { + description + "Affinity map array"; + uses MPLS-TE-AFFINITY-MAP-INFO; + } + list areas { + description + "Per-area data"; + uses MPLS-LM-INTERFACE-LINK-AREA-INFO; + } + list lockout { + description + "Flex LSP Lockout info"; + uses MPLS-LM-INTERFACE-LOCKOUT-INFO; + } + } + + grouping MPLS-LM-INTERFACE-COMMON-INFO { + description + "Global info about links"; + leaf is-role-standby { + type boolean; + description + "TRUE if Role is Standby, Active otherwise"; + } + leaf links { + type uint16; + description + "The number of links"; + } + leaf maximum-links { + type uint16; + description + "Maximum number of links supported"; + } + } + + grouping MPLS-LM-SUMMARY-DARKBW { + description + "Summary information for bandwidth accounting"; + leaf is-bandwidth-account-enabled { + type boolean; + description + "TRUE if bandwidth accounting is enabled"; + } + leaf sample-interval { + type uint32; + description + "Sample interval for bandwidth accounting stats"; + } + leaf sample-time-remaining { + type uint32; + units "second"; + description + "This value indicates the number of seconds until + the next sample collection"; + } + leaf application-interval { + type uint32; + description + "Application interval for bandwidth accounting + stats"; + } + leaf application-time-remaining { + type uint32; + units "second"; + description + "This value indicates the number of seconds until + the next application"; + } + leaf links-count { + type uint32; + description + "Total number of links"; + } + leaf maximum-links { + type uint32; + description + "Maximum number of links supported"; + } + } + + grouping MPLS-LM-SUMMARY-AREA-INFO { + description + "Summary information of an area"; + leaf area-id { + type string; + description + "Area id"; + } + leaf protocol { + type Igp-protocol; + description + "Protocol running over the area"; + } + leaf is-flooded { + type boolean; + description + "TRUE if flooding occurred in this area"; + } + leaf is-periodic-flooding-on { + type boolean; + description + "TRUE if periodic flooding is on"; + } + leaf periodic-flooding-interval { + type uint16; + units "second"; + description + "Flooding period in seconds"; + } + leaf links-flooded { + type uint16; + description + "Number of flooded links"; + } + leaf system-id { + type string; + description + "IGP id of local node"; + } + leaf local-node-router-id { + type inet:ipv4-address; + description + "Local router id"; + } + leaf igp-neighbors { + type uint16; + description + "Number of IGP neighbors"; + } + } + + grouping MPLS-LM-SUMMARY-COMMON-INFO { + description + "Summary information for all the areas"; + container bandwidth-account-summary { + description + "Bandwidth account summary"; + uses MPLS-LM-SUMMARY-DARKBW; + } + leaf is-role-standby { + type boolean; + description + "TRUE if Role is Standby, Active otherwise"; + } + leaf links { + type uint16; + description + "Total number of links"; + } + leaf maximum-links { + type uint16; + description + "Maximum number of links supported"; + } + leaf is-flooding-enabled { + type boolean; + description + "TRUE if flooding is enabled"; + } + list areas-summary { + description + "Summary info for the areas"; + uses MPLS-LM-SUMMARY-AREA-INFO; + } + } + + grouping MPLS-TE-BANDWIDTH-ACCOUNT-SAMPLE-SR { + description + "Information about a single Segment Routing + bandwidth accounting sample"; + leaf timestamp-nanosec { + type uint64; + units "nanosecond"; + description + "Timestamp in nano-seconds of this sample"; + } + leaf sr-rate { + type uint64; + units "kbit/s"; + description + "Segment Routing traffic rate measured in + Kilobits per second in this sample"; + } + leaf sr-packet-rate { + type uint64; + units "packet/s"; + description + "Segment Routing traffic rate measured in packets + per second in this sample"; + } + } + + grouping MPLS-TE-BANDWIDTH-ACCOUNT-HISTORY-SR { + description + "Segment Routing bandwidth account history"; + list sr-active-interval-sample { + description + "Segment Routing samples in the current + application interval"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-SAMPLE-SR; + } + list sr-previous-interval-sample { + description + "Segment Routing samples in the previous + application interval"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-SAMPLE-SR; + } + } + + grouping MPLS-TE-BANDWIDTH-ACCOUNT-SAMPLE-RSVP { + description + "Information about a single RSVP-TE bandwidth + accounting sample"; + leaf timestamp-nanosec { + type uint64; + units "nanosecond"; + description + "Timestamp in nano-seconds of this sample"; + } + leaf total-rate { + type uint64; + units "kbit/s"; + description + "Total traffic rate measured in Kilobits per + second in this sample"; + } + leaf total-packet-rate { + type uint64; + units "packet/s"; + description + "Total traffic rate measured in packets per + second in this sample"; + } + leaf rsvp-te-rate { + type uint64; + units "kbit/s"; + description + "RSVP-TE traffic rate measured in Kilobits per + second in this sample"; + } + leaf rsvp-te-packet-rate { + type uint64; + units "packet/s"; + description + "RSVP-TE traffic rate measured in packets per + second in this sample"; + } + leaf non-rsvp-te-rate { + type uint64; + units "kbit/s"; + description + "Non-RSVP-TE traffic rate measured in Kilobits + per second in this sample"; + } + leaf non-rsvp-te-packet-rate { + type uint64; + units "packet/s"; + description + "Non-RSVP-TE traffic rate measured in packets per + second in this sample"; + } + } + + grouping MPLS-TE-BANDWIDTH-ACCOUNT-HISTORY-RSVP { + description + "RSVP-TE bandwidth account history"; + list rsvp-te-active-interval-sample { + description + "RSVP-TE samples in the current application + interval"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-SAMPLE-RSVP; + } + list rsvp-te-previous-interval-sample { + description + "RSVP-TE samples in the previous application + interval"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-SAMPLE-RSVP; + } + } + + grouping MPLS-TE-BANDWIDTH-ACCOUNT-BW-UTIL-SR { + description + "Information about Segment Routing bandwidth + utilization in bandwidth accounting"; + leaf sr-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Segment Routing bandwidth utilization measured + in kilobits per second"; + } + leaf sr-adjusted-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Adjusted Segment Routing bandwidth utilization + measured in kilobits per second"; + } + leaf sr-enforced-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Enforced Segment Routing bandwidth utilization + measured in kilobits per second"; + } + } + + grouping MPLS-TE-BANDWIDTH-ACCOUNT-BW-UTIL-RSVP { + description + "Information about RSVP-TE bandwidth utilization + in bandwidth accounting"; + leaf total-link-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Total bandwidth utilization measured in kilobits + per second"; + } + leaf rsvp-te-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "RSVP-TE bandwidth utilization measured in + kilobits per second"; + } + leaf non-rsvp-te-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Non-RSVP-TE bandwidth utilization measured in + kilobits per second"; + } + leaf rsvp-te-adjusted-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Adjusted RSVP-TE bandwidth utilization measured + in kilobits per second"; + } + leaf rsvp-te-enforced-bandwidth-utilization { + type uint64; + units "kbit/s"; + description + "Enforced RSVP-TE bandwidth utilization measured + in kilobits per second"; + } + } + + grouping MPLS-LM-BANDWIDTH-ACCOUNT-LINK-TELEMETRY-INFO { + description + "Telemetry information for bandwidth accounting + per link"; + container rsvp-te-bandwidth-utilization { + description + "RSVP-TE bandwidth utilization information"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-BW-UTIL-RSVP; + } + container sr-bandwidth-utilization { + description + "Segment Routing bandwidth utilization + information"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-BW-UTIL-SR; + } + leaf is-bandwidth-account-enabled { + type boolean; + description + "TRUE if bandwidth accounting is enabled"; + } + leaf application-enforced { + type boolean; + description + "TRUE if application is enforced"; + } + leaf collection-type { + type Bandwidth-accounting-collection; + description + "The type of traffic collected for bandwidth + accounting"; + } + leaf sample-time-remaining-timestamp-nanosec { + type uint64; + units "nanosecond"; + description + "This value indicates the number of nano-seconds + until the next sampling"; + } + leaf last-sample-collection-timestamp-nanosec { + type uint64; + units "nanosecond"; + description + "Timestamp for the last sample collection in + nano-seconds"; + } + leaf next-sample-collection-nanosec { + type uint64; + units "nanosecond"; + description + "Timestamp for the next sample collection in + nano-seconds"; + } + leaf application-time-remaining-nanosec { + type uint64; + units "nanosecond"; + description + "This value indicates the number of nano-seconds + until the next application"; + } + leaf last-application-timestamp-nanosec { + type uint64; + units "nanosecond"; + description + "Timestamp for the last application in + nano-seconds"; + } + leaf next-application-timestamp-nanosec { + type uint64; + units "nanosecond"; + description + "Timestamp for the next application in + nano-seconds"; + } + leaf effective-maximum-reservable-bandwidth { + type uint64; + description + "Maximum reservable bandwidth effective"; + } + } + + grouping MPLS-LM-BANDWIDTH-ACCOUNT-LINK-TEL-DET-INFO { + description + "Detail telemetry bandwidth accounting information + per link"; + container common-info { + description + "Information for bandwidth accounting telemetry"; + uses MPLS-LM-BANDWIDTH-ACCOUNT-LINK-TELEMETRY-INFO; + } + container rsvp-te-sample-history { + description + "History of bandwidth accounting RSVP-TE samples"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-HISTORY-RSVP; + } + container sr-sample-history { + description + "History of bandwidth accounting Segment Routing + samples"; + uses MPLS-TE-BANDWIDTH-ACCOUNT-HISTORY-SR; + } + leaf link-id { + type string; + description + "The link's ID"; + } + } + + grouping MPLS-TE-MGMT-WDM-CAPABILITIES { + description + "GMPLS WDM Capabilities"; + leaf grid { + type Gmpls-uni-mgmt-wdm-grid; + description + "Grid"; + } + leaf channel-spacing { + type Gmpls-uni-mgmt-dwdm-cs; + description + "Channel spacing"; + } + leaf default-channel { + type int16; + description + "Default channel number"; + } + list usable-channel { + description + "List of usable channels"; + leaf entry { + type int16; + description + "List of usable channels"; + } + } + } + + grouping MPLS-TE-MGMT-WDM-UNI-LINK { + description + "GMPLS WDM-UNI link"; + container wdm-capabilities { + description + "WDM capabilities"; + uses MPLS-TE-MGMT-WDM-CAPABILITIES; + } + leaf link-exists { + type boolean; + description + "Flag to indicate whether the link exists in the + system"; + } + leaf admin-state-up { + type boolean; + description + "Is the interface administratively UP"; + } + leaf oper-state-up { + type boolean; + description + "Is the interface operationally UP"; + } + leaf bw-locked-upstream { + type boolean; + description + "Is the interface bandwidth locked in the + upstream direction"; + } + leaf bw-locked-downstream { + type boolean; + description + "Is the interface bandwidth locked in the + downstream direction"; + } + leaf admitted-lsp-id { + type uint16; + description + "LSP-ID admitted on this optical link. Not valid + if neither the upstream nor downstream bandwidth + is locked"; + } + leaf lmp-router-id { + type inet:ipv4-address; + description + "LMP GMPLS Optical-UNI router-id"; + } + leaf lmp-adj-state-up { + type boolean; + description + "Is the LMP optical adjacency UP"; + } + leaf lmpipcc-state-up { + type boolean; + description + "If the LMP IP control channel up ?"; + } + leaf lmp-neighbor-name { + type string; + description + "LMP neighbor Name"; + } + leaf lmp-neighbor-router-id { + type inet:ipv4-address; + description + "LMP neighbor router ID addres"; + } + leaf lmp-neighbor-ipcc-address { + type inet:ipv4-address; + description + "The LMP neighbor's IPCC address"; + } + leaf lmp-local-ipcc-address { + type inet:ipv4-address; + description + "The LMP local IPCC address"; + } + leaf lmp-local-interface-id { + type uint32; + description + "The LMP local interface ID"; + } + leaf lmp-neighbor-interface-id { + type uint32; + description + "The LMP neighbor interface ID"; + } + leaf lmp-local-link-id { + type inet:ipv4-address; + description + "The LMP local Link ID"; + } + leaf lmp-neighbor-link-id { + type inet:ipv4-address; + description + "The LMP neighbor Link ID"; + } + leaf lmp-local-switching-capability { + type Igpte-link-switch-capability; + description + "The LMP local link switching capability"; + } + leaf lmp-neighbor-switching-capability { + type Igpte-link-switch-capability; + description + "The LMP neighbor link switching capability"; + } + leaf lmp-local-encoding { + type Igpte-link-encoding-protocol; + description + "The LMP local link encoding type"; + } + leaf local-link-gpid { + type uint16; + description + "The GPID of the local link"; + } + leaf srl-gs-announced { + type boolean; + description + "TRUE if discovered SRLGs are announced to L3 + interface"; + } + leaf srlg-announced-interface { + type string; + description + "The L3 interface that discovered SRLGs are + announced to"; + } + leaf local-link-switching-type { + type Igpte-link-switch-capability; + description + "Locally-configured switching type on this link"; + } + leaf local-link-mtu { + type uint16; + description + "The MTU of the local link"; + } + list local-srlg { + description + "Locally-configured SRLGs on this link"; + leaf entry { + type uint32; + description + "Locally-configured SRLGs on this link"; + } + } + } + + grouping MPLS-TE-MGMT-WDM-UNI-CONTROLLER { + description + "A GMPLS WDM-UNI controller"; + container link { + description + "Link properties"; + uses MPLS-TE-MGMT-WDM-UNI-LINK; + } + container labels { + description + "Labels"; + uses MPLS-TE-MGMT-GMPLS-LABELS; + } + container tunnel { + description + "Tunnel info"; + uses MPLS-TE-MGMT-WDM-UNI-TUNNEL-INFO; + } + leaf controller-name-xr { + type string; + description + "Interface Name"; + } + leaf controller-name-brief { + type string; + description + "Brief Interface Name"; + } + leaf child-interface-name { + type string; + description + "Child interface name"; + } + leaf child-interface-state { + type Im-state-enum; + description + "Child Interface State"; + } + } + + grouping MPLS-TE-NNI-OTN-LINK-ADMITTED-S2L-INFO { + description + "Info of S2Ls Admitted to NNI OTN link"; + container s2l-fec { + description + "S2L FEC"; + uses TE-S2L-FEC; + } + } + + grouping MPLS-TE-NNI-OTN-ADMISSION-CONTROL-LINK-INFO { + description + "Information about a given admitted tunnel"; + leaf link-name { + type string; + description + "The link's name"; + } + list admitted-s2l { + description + "Admitted S2Ls"; + uses MPLS-TE-NNI-OTN-LINK-ADMITTED-S2L-INFO; + } + } + + grouping MPLS-TE-NNI-LINK-AREA-INFO { + description + "Information about an area to which the link + belongs"; + container remote-te-link-id { + description + "Remote link id in this topology instance"; + uses TE-ADDR; + } + leaf igp-type { + type Igp-protocol; + description + "IGP type"; + } + leaf igp-instance-id { + type string; + description + "Igp instance ID"; + } + leaf igp-area-id-format { + type Igp-ospf-area-format; + description + "Igp area id format"; + } + leaf igp-area-id { + type uint32; + description + "Igp area id"; + } + leaf te-metric { + type uint32; + description + "The link's TE metric"; + } + leaf uni-link-delay-configured { + type uint32; + description + "Unidirectional Link Delay configured in + micro-sec"; + } + leaf uni-link-delay-computed { + type uint32; + description + "Unidirectional Link Delay computed in micro-sec"; + } + leaf uni-link-delay-to-flood { + type uint32; + description + "Unidirectional Link Delay to flood in micro-sec"; + } + leaf reason-not-flooded { + type Mpls-te-reason-not-flooded; + description + "Reason why link is not flooded"; + } + leaf igp-area-address { + type inet:ipv4-address; + description + "IGP's area IP address"; + } + } + + grouping MPLS-TE-NNI-OTN-LINK-INFO { + description + "IGP and area information of a TE NNI OTN link"; + container local-link-id { + description + "Local TE link ID"; + uses TE-ADDR; + } + container odu-link-capabilities { + description + "ODU capabilities of Link"; + uses ODU-LINK-CAPABILITIES; + } + leaf link-name { + type string; + description + "The link's name"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Link interface handle"; + } + leaf link-state { + type Te-controller-state; + description + "Link state"; + } + leaf resource-provider { + type Resource-provider; + description + "The link's resource provider"; + } + leaf physical-bandwidth { + type Otu; + description + "The link's physical bandwidth"; + } + leaf tti-mode { + type Tti-mode; + description + "SM,PM or TCM mode for controller"; + } + leaf tandem-connection-monitoring { + type uint8; + description + "Tandem connection monitoring to carry link id, 0 + if PM"; + } + leaf igp-neighbors-count { + type uint16; + description + "The link's neighbor count"; + } + leaf link-attributes { + type uint32; + description + "Deprecated"; + } + leaf is-attribute-incomplete { + type boolean; + description + "TRUE if one or more affinity definition(s) + is/are unknown"; + } + leaf is-name-based-attribute { + type boolean; + description + "TRUE, if name based attribute style is in effect"; + } + list link-extended-attribute { + description + "The link's extended attribute bit map"; + leaf entry { + type uint32; + description + "The link's extended attribute bit map"; + } + } + list link-forwad-ref-value { + description + "Reference bits for undefined affinity names"; + leaf entry { + type uint32; + description + "Reference bits for undefined affinity names"; + } + } + list srl-gs { + description + "The link's shared risk link groups"; + uses MPLS-SRLG-INFO; + } + list igp-areas { + description + "Per-IGP area data"; + uses MPLS-TE-NNI-LINK-AREA-INFO; + } + list affinity-map { + description + "Affinity map array"; + uses MPLS-TE-AFFINITY-MAP-INFO; + } + } + + grouping MPLS-TE-NNI-OTN-SUMMARY-INFO { + description + "Global info about links"; + leaf is-role-standby { + type boolean; + description + "TRUE if Role is Standby, False if Active"; + } + leaf nni-otn-links { + type uint16; + description + "The number of NNI OTN links"; + } + leaf nni-otn-links-max { + type uint16; + description + "Maximum number of NNI links supported"; + } + } + + grouping MPLS-LM-BW-LINK-BW-POOL-INFO { + description + "Information about the bandwidth of a given pool + and priority"; + leaf hold-priority { + type uint8; + description + "The BW priority"; + } + leaf held-amount { + type uint32; + description + "The held bandwidth"; + } + leaf total-held-amount { + type uint32; + description + "The total held bandwidth"; + } + leaf locked-amount { + type uint32; + description + "The locked bandwidth"; + } + leaf total-locked-amount { + type uint32; + description + "The total locked bandwidth"; + } + } + + grouping MPLS-LM-BW-LINK-DIR-BW-INFO { + description + "Information about the bandwidth of a given link."; + leaf bandwidth-direction { + type Link-direction-enum; + description + "BW Direction"; + } + leaf is-admission-method-allocated-bandwidth { + type boolean; + description + "True if the link's admit method is based on + Allocated BW"; + } + leaf bandwidth-units { + type Bandwidth-unit-enum; + description + "Bandwidth units"; + } + list bandwidth-pool0 { + max-elements "8"; + description + "Pool0 BW info for the different priority levels"; + uses MPLS-LM-BW-LINK-BW-POOL-INFO; + } + list bandwidth-pool1 { + max-elements "8"; + description + "Pool1 BW info for the different priority levels"; + uses MPLS-LM-BW-LINK-BW-POOL-INFO; + } + } + + grouping MPLS-LM-FLOODED-AREA { + description + "Information for the flooded area"; + leaf flooded-area { + type string; + description + "The flooded area information"; + } + } + + grouping MPLS-LM-LINK-FLAGS { + description + "Link properties"; + leaf is-mpls-te-on { + type boolean; + description + "Deprecated - TRUE if the link is a TE-Link"; + } + leaf signaling-agent { + type Signaling-agent-enum; + description + "Deprecated - Signaling agent"; + } + leaf is-admin-up { + type boolean; + description + "TRUE if the link is admin up"; + } + } + + grouping MPLS-LM-INTF-SWITCHING-CAP-INFO { + description + "Information about the Interface Switching + Capability Descriptor (IXCD)"; + leaf key { + type uint8; + description + "The switching capability descriptor key"; + } + leaf switching-capability { + type uint8; + description + "The switching capability"; + } + leaf encoding { + type uint8; + description + "The link encoding type"; + } + } + + grouping MPLS-LM-COMMON-LINK-INFO { + description + "Link information"; + container link-flags { + description + "The link's flags"; + uses MPLS-LM-LINK-FLAGS; + } + leaf link-id { + type string; + description + "The link's id"; + } + leaf link-address { + type inet:ipv4-address; + description + "The link's ip address"; + } + leaf is-unnumbered { + type boolean; + description + "TRUE if the link is unnumbered"; + } + leaf has-protection { + type boolean; + description + "TRUE if the link is protected"; + } + leaf capability { + type uint32; + description + "The link's protection capability"; + } + leaf working-priority { + type uint32; + description + "The link's working priority"; + } + leaf resource-provider { + type Resource-provider; + description + "The link's resource provider"; + } + leaf is-resource-provider-installed { + type boolean; + description + "TRUE if the resource provider is installed"; + } + leaf bandwidth-units { + type Bandwidth-unit-enum; + description + "The bandwidth units"; + } + leaf physical-bandwidth { + type uint64; + description + "The link's physical bandwidth"; + } + leaf bcm-id { + type uint16; + description + "Bandwidth Constraints Model ID"; + } + leaf maximum-reservable-bandwidth { + type uint64; + description + "The link's maximum reservable BW"; + } + leaf last-flooded-effective-maximum-reservable-bandwidth { + type uint64; + description + "Last flooded max reservable bandwidth effective"; + } + leaf incoming-reservable-bandwidth-percentage { + type uint8; + description + "Incoming reserved BW in %"; + } + leaf outgoing-reservable-bandwidth-percentage { + type uint8; + description + "Outgoing reserved BW in %"; + } + leaf maximum-reservable-pool0-bandwidth { + type uint64; + description + "The link's maximum reservable pool0 BW"; + } + leaf incoming-reservable-pool0-bandwidth-percentage { + type uint8; + description + "Incoming reserved pool0 BW in %"; + } + leaf outgoing-reservable-pool0-bandwidth-percentage { + type uint8; + description + "Outgoing reserved pool0 BW in %"; + } + leaf maximum-reservable-pool1-bandwidth { + type uint64; + description + "The link's maximum reservable pool1 BW"; + } + leaf incoming-reservable-pool1-bandwidth-percentage { + type uint8; + description + "Incoming reserved pool1 BW in %"; + } + leaf outgoing-reservable-pool1-bandwidth-percentage { + type uint8; + description + "Outgoing reserved pool1 BW in %"; + } + leaf inbound-admission-method { + type Admission-policy; + description + "Deprecated"; + } + leaf outbound-admission-method { + type Admission-policy; + description + "Deprecated"; + } + leaf igp-neighbors { + type uint16; + description + "The link's neighbor count"; + } + list shared-risk-link-group { + description + "The link's shared risk link groups"; + uses MPLS-SRLG-INFO; + } + list interface-switching-capability-descriptor { + description + "The link's switching capability descriptor"; + uses MPLS-LM-INTF-SWITCHING-CAP-INFO; + } + list flooded-areas { + description + "List of areas into which the link is flooded"; + uses MPLS-LM-FLOODED-AREA; + } + } + + grouping MPLS-LM-BW-ALLOC-LINK-INFO { + description + "Bandwidth allocation information for a given link"; + container link-common { + description + "The link's common info"; + uses MPLS-LM-COMMON-LINK-INFO; + } + container upstream-bandwidth { + description + "BW info in the upstream direction"; + uses MPLS-LM-BW-LINK-DIR-BW-INFO; + } + container downstream-bandwidth { + description + "BW info in the dnstream direction"; + uses MPLS-LM-BW-LINK-DIR-BW-INFO; + } + leaf total-bandwidth-descriptors { + type uint16; + description + "Number of total BW descriptors"; + } + leaf bandwidth-descriptors { + type uint16; + description + "Number of BW descriptor for the given pool"; + } + leaf bandwidth-pool { + type Bandwidth-type-enum; + description + "type of the BW pool"; + } + leaf flooding-up-thresholds-are-default { + type boolean; + description + "TRUE if the up-threshold are default"; + } + leaf flooding-down-thresholds-are-default { + type boolean; + description + "TRUE if the down-threshold are default"; + } + leaf flooding-up-thresholds-are-global { + type boolean; + description + "TRUE if the up-threshold are global"; + } + leaf flooding-down-thresholds-are-global { + type boolean; + description + "TRUE if the down-threshold are global"; + } + list flooding-up-threshold { + description + "Flooding up-thresholds"; + leaf entry { + type uint8; + description + "Flooding up-thresholds"; + } + } + list flooding-down-threshold { + description + "Flooding down-thresholds"; + leaf entry { + type uint8; + description + "Flooding down-thresholds"; + } + } + } + + grouping MPLS-LM-BW-ALLOC-COMMON-INFO { + description + "Common information about bandwidth allocation"; + leaf is-role-standby { + type boolean; + description + "TRUE if Role is Standby, Active otherwise"; + } + leaf links { + type uint16; + description + "Number of links"; + } + leaf bandwidth-hold-time { + type uint16; + units "second"; + description + "How long to hold the bandwidth (seconds)"; + } + } + + grouping MPLS-LM-STATS-LINK-INFO { + description + "Statistics for a link"; + container incoming-path-statistics { + description + "Deprecated"; + uses MPLS-LM-STATS-COUNTERS; + } + container incoming-reservation-statistics { + description + "Deprecated"; + uses MPLS-LM-STATS-COUNTERS; + } + container outgoing-path-statistics { + description + "Deprecated"; + uses MPLS-LM-STATS-COUNTERS; + } + container outgoing-reservation-statistics { + description + "Deprecated"; + uses MPLS-LM-STATS-COUNTERS; + } + container incoming-path-statistics32-bit { + description + "Incoming PATH counters"; + uses MPLS-LM-STATS-COUNTERS-32-BIT; + } + container incoming-reservation-statistics32-bit { + description + "Incoming RESV counters"; + uses MPLS-LM-STATS-COUNTERS-32-BIT; + } + container outgoing-path-statistics32-bit { + description + "Outgoing PATH counters"; + uses MPLS-LM-STATS-COUNTERS-32-BIT; + } + container outgoing-reservation-statistics32-bit { + description + "Outgoing RESV counters"; + uses MPLS-LM-STATS-COUNTERS-32-BIT; + } + leaf interface-name-xr { + type string; + description + "Link name"; + } + leaf link-address { + type inet:ipv4-address; + description + "Link's ip address"; + } + } + + grouping MPLS-LM-STATS-COUNTERS-32-BIT { + description + "Statistics for Setup and Tear processing (32 bit)"; + leaf setup-requests { + type uint32; + description + "Setup requests"; + } + leaf setup-errors { + type uint32; + description + "Setup errors"; + } + leaf setup-admits { + type uint32; + description + "Setup admits"; + } + leaf setup-rejects { + type uint32; + description + "Setup rejects"; + } + leaf tear-requests { + type uint32; + description + "Tear requests"; + } + leaf tear-errors { + type uint32; + description + "Tear errors"; + } + leaf tear-preempts { + type uint32; + description + "Tear preempts"; + } + } + + grouping MPLS-LM-STATS-COUNTERS { + description + "DEPRECATED, use of mpls_lm_stats_counters_32_bit + recommended"; + leaf setup-requests { + type uint16; + description + "Deprecated"; + } + leaf setup-errors { + type uint16; + description + "Deprecated"; + } + leaf setup-admits { + type uint16; + description + "Deprecated"; + } + leaf setup-rejects { + type uint16; + description + "Deprecated"; + } + leaf tear-requests { + type uint16; + description + "Deprecated"; + } + leaf tear-errors { + type uint16; + description + "Deprecated"; + } + leaf tear-preempts { + type uint16; + description + "Deprecated"; + } + } + + grouping MPLS-LM-STATS-SUMMARY-INFO { + description + "Statistics for Path and Reservation processing"; + container path-statistics { + description + "Deprecated"; + uses MPLS-LM-STATS-COUNTERS; + } + container reservation-statistics { + description + "Deprecated"; + uses MPLS-LM-STATS-COUNTERS; + } + container path-statistics32-bit { + description + "Path counters (32-bit)"; + uses MPLS-LM-STATS-COUNTERS-32-BIT; + } + container reservation-statistics32-bit { + description + "Reservation counters (32-bit)"; + uses MPLS-LM-STATS-COUNTERS-32-BIT; + } + leaf is-role-standby { + type boolean; + description + "TRUE if Role is Standby, Active otherwise"; + } + } + + grouping MPLS-LM-ADV-LINK-RESV-BW { + description + "Information about a link bandwidth"; + leaf priority { + type uint8; + description + "The priority level of this bandwidth"; + } + leaf pool0-bandwidth { + type uint32; + description + "The reservable pool0 BW at this priority"; + } + leaf pool1-bandwidth { + type uint32; + description + "The reservable pool1 BW at this priority"; + } + } + + grouping MPLS-LM-ADV-FLOODED-LINK { + description + "Information about a flooded link"; + container odu-link-capabilities { + description + "ODU Link Capabilities"; + uses ODU-LINK-CAPABILITIES; + } + leaf link-id { + type uint16; + description + "The link's id"; + } + leaf interface-name { + type string; + description + "The link's interface name"; + } + leaf link-address { + type inet:ipv4-address; + description + "The link's IPv4 address"; + } + leaf subnet-type { + type Igp-subnet; + description + "The link's subnet type"; + } + leaf outgoing-interface-id { + type uint32; + description + "The link's outgoing interface's id"; + } + leaf is-designated-router { + type boolean; + description + "TRUE if the link belongs to a desig. router"; + } + leaf designated-router-igp-id { + type string; + description + "IGP id of the designated router"; + } + leaf neighbor-igp-id { + type string; + description + "The neighbor's IGP id"; + } + leaf igp-neighbor-address { + type inet:ipv4-address; + description + "The neighbor's ip address"; + } + leaf incoming-interface-id { + type uint32; + description + "The link's incoming interface's id"; + } + leaf te-metric { + type uint32; + description + "The link's TE metric"; + } + leaf igp-metric { + type uint32; + description + "The link's IGP metric"; + } + leaf uni-link-delay { + type uint32; + description + "Unidirectional Link Delay in micro-sec"; + } + leaf bandwidth-units { + type Bandwidth-unit-enum; + description + "The link's bandwidth units"; + } + leaf physical-bandwidth { + type uint32; + description + "The link's physical BW"; + } + leaf bcm-id { + type uint16; + description + "Bandwidth Constraints Model ID"; + } + leaf link-maximum-reservable-bandwidth { + type uint32; + description + "The link's maximum reservable BW"; + } + leaf reservable-pool0-bandwidth { + type uint32; + description + "The link's reservable pool0 BW"; + } + leaf reservable-pool1-bandwidth { + type uint32; + description + "The link's reservable pool1 BW"; + } + leaf is-receiving-reservable-bandwidth-enabled { + type boolean; + description + "TRUE if receiving reservable BW is enabled"; + } + leaf receiving-direction { + type Link-direction-enum; + description + "Upstream or Downstream"; + } + leaf is-transmitting-reservable-bandwidth-enabled { + type boolean; + description + "TRUE if transmitting reservable BW is enabled"; + } + leaf transmitting-direction { + type Link-direction-enum; + description + "Upstream or Downstream"; + } + leaf affinity-attribute-flags { + type uint32; + description + "Deprecated"; + } + list extended-affinity-attribute-flag { + description + "The link's extended affinity bits"; + leaf entry { + type uint32; + description + "The link's extended affinity bits"; + } + } + list shared-risk-link-group { + description + "The link's shared risk link groups"; + uses MPLS-SRLG-INFO; + } + list receiving-reservable-bandwidth { + max-elements "8"; + description + "Receiving reservable BW at each priority + level(priority 0 to priority 7)"; + uses MPLS-LM-ADV-LINK-RESV-BW; + } + list transmitting-reservable-bandwidth { + max-elements "8"; + description + "Transmitting reservable BW at each priority + level (priority 0 to priority 7)"; + uses MPLS-LM-ADV-LINK-RESV-BW; + } + } + + grouping MPLS-LM-ADV-CONFIGURED-AREA { + description + "The information about an advertized area"; + leaf igp-area-id { + type string; + description + "The area id"; + } + leaf protocol { + type Igp-protocol; + description + "The IGP protocol running over this area"; + } + leaf system-id { + type string; + description + "The node's system id"; + } + leaf router-id { + type inet:ipv4-address; + description + "The node's router ID"; + } + list flooded-link { + description + "The array of flooded links in this area"; + uses MPLS-LM-ADV-FLOODED-LINK; + } + } + + grouping MPLS-LM-ADVERTISEMENT-INFO { + description + "Information about all the advertized areas"; + leaf flooding-status-message { + type string; + description + "Flooding status: ready or reason"; + } + leaf last-flooding-time { + type uint32; + units "second"; + description + "Time elapsed since last flooding in seconds"; + } + leaf last-flooding-trigger { + type Flooding-trigger; + description + "Trigger for last flooding"; + } + leaf next-flooding-time { + type uint32; + units "second"; + description + "Time remained for next flooding in seconds"; + } + leaf ds-te-mode { + type Rrr-dste-migration-mode; + description + "DS-TE Mode"; + } + list advertized-areas { + description + "Advertising info for all the IGP areas"; + uses MPLS-LM-ADV-CONFIGURED-AREA; + } + } + + grouping MPLS-LM-PREEMPTED-LSP { + description + "Preempted LSP info"; + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf lsp-id { + type uint16; + description + "LSP ID"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination"; + } + leaf requested-bandwidth { + type uint64; + description + "The path's requested bandwidth"; + } + leaf setup-priority { + type uint8; + description + "The path's setup priority"; + } + leaf hold-priority { + type uint8; + description + "The path's hold priority"; + } + leaf bandwidth-type { + type uint8; + description + "The path's bandwidth type; 0:BC0, 1:BC1, so on"; + } + leaf soft-preempted { + type boolean; + description + "TRUE is the preemption is a soft preemption"; + } + leaf soft-preemption-timeout { + type uint16; + units "second"; + description + "If the soft preemption is underway, this value + indicates the number of seconds before hard + preemption is triggered"; + } + leaf bandwidth-preempted { + type boolean; + description + "LSPs bandwidth is already preempted"; + } + leaf soft-preempted-fr-rrewrite { + type boolean; + description + "FRR-rewrite is done during soft preemption"; + } + } + + grouping MPLS-LM-PREEMPTION-EVENT { + description + "Preemption event info"; + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf lsp-id { + type uint16; + description + "LSP ID"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination"; + } + leaf requested-bandwidth { + type uint64; + description + "The path's requested bandwidth"; + } + leaf setup-priority { + type uint8; + description + "The path's setup priority"; + } + leaf hold-priority { + type uint8; + description + "The path's hold priority"; + } + leaf bandwidth-type { + type uint8; + description + "The path's bandwidth type; 0:CT0, 1:CT1, so on"; + } + leaf old-bandwidth-bc0 { + type uint64; + description + "Old BW for BC0"; + } + leaf old-bandwidth-bc1 { + type uint64; + description + "Old BW for BC1"; + } + leaf new-bandwidth-bc0 { + type uint64; + description + "New BW for BC0"; + } + leaf new-bandwidth-bc1 { + type uint64; + description + "New BW for BC1"; + } + leaf bandwidth-overshoot0 { + type uint64; + description + "BW Overshoot for BC0"; + } + leaf bandwidth-overshoot1 { + type uint64; + description + "BW Overshoot for BC1"; + } + leaf interface-name { + type string; + description + "Interface name"; + } + leaf event-time { + type uint32; + units "second"; + description + "Event time; seconds elapsed since January 1, + 1970"; + } + leaf ls-ps { + type uint16; + description + "Number of LSPs (not all may be present in the + list)"; + } + leaf soft-preempted-ls-ps { + type uint16; + description + "Number of LSPs softly preempted"; + } + leaf soft-preempted-ls-ps-fr-rrewrite { + type uint16; + description + "Number of LSPs softly preempted with traffic + switched to backup"; + } + leaf hard-preempted-ls-ps { + type uint16; + description + "Number of LSPs hardly preempted"; + } + leaf total-preempted-bandwidth-bc0 { + type uint64; + description + "Total amount of preempted class 0 bandwidth"; + } + leaf total-preempted-bandwidth-bc1 { + type uint64; + description + "Total amount of preempted class 1 bandwidth"; + } + leaf softly-preempted-bandwidth-bc0 { + type uint64; + description + "Amount of softly preempted class 0 bandwidth"; + } + leaf softly-preempted-bandwidth-bc1 { + type uint64; + description + "Amount of softly preempted class 1 bandwidth"; + } + leaf soft-preempted-fr-rrewrite-bandwidth-bc0 { + type uint64; + description + "Amount of softly preempted FRR RW class 0 + bandwidth"; + } + leaf soft-preempted-fr-rrewrite-bandwidth-bc1 { + type uint64; + description + "Amount of softly preempted FRR RW class 1 + bandwidth"; + } + leaf hard-preempted-bandwidth-bc0 { + type uint64; + description + "Amount of hard preempted class 0 bandwidth"; + } + leaf hard-preempted-bandwidth-bc1 { + type uint64; + description + "Amount of hard preempted class 1 bandwidth"; + } + leaf tunnels { + type uint16; + description + "Number of Tunnels"; + } + leaf soft-preempted-tunnels { + type uint16; + description + "Number of Tunnels softly preempted"; + } + leaf soft-preempted-tunnels-fr-rrewrite { + type uint16; + description + "Number of Tunnels softly preempted with traffic + switched to backup"; + } + leaf hard-preempted-tunnels { + type uint16; + description + "Number of Tunnels hardly preempted"; + } + list lsp { + description + "List of preempted LSPs"; + uses MPLS-LM-PREEMPTED-LSP; + } + } + + grouping MPLS-LM-IGP-NBR-INFO { + description + "Neighbor information"; + leaf interface-name { + type string; + description + "The interface on which this neighbor is + discovered"; + } + leaf neighbor-id { + type string; + description + "The neighbor's id"; + } + leaf area-id { + type string; + description + "The area id"; + } + leaf neighbor-address { + type inet:ipv4-address; + description + "The neighbor's IP address"; + } + } + + grouping MPLS-LM-IGP-NBRS-LINK-INFO { + description + "Neighbor information based on the link"; + list neighbor { + description + "Neighbors of the specified link id"; + uses MPLS-LM-IGP-NBR-INFO; + } + } + + grouping MPLS-TE-AFFINITY-MAP-BAG { + description + "A set of affinity maps"; + list affinity-map-array { + description + "Affinity map array"; + uses MPLS-TE-AFFINITY-MAP-INFO; + } + } + + grouping TE-AUTO-TUN-EXP-PATH-HOP { + description + "Auto Tunnel Explicit Path Hop"; + leaf hop-type { + type Te-auto-tun-exp-path-hop; + description + "Hop Type"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf mpls-label { + type uint32; + description + "MPLS Label"; + } + } + + grouping TE-AUTO-TUN-REQ-EXP-PATH-TUN-INFO { + description + "Auto tunnel request explicit path tunnel info"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf tunnel-up { + type boolean; + description + "Tunnel Up"; + } + leaf ipv6-caps { + type boolean; + description + "IPv6 Capsulation"; + } + } + + grouping TE-AUTO-TUN-REQ-EXP-PATH { + description + "Auto Tunnel Explicit Path"; + container tunnel-info { + description + "Auto tunnel info"; + uses TE-AUTO-TUN-REQ-EXP-PATH-TUN-INFO; + } + leaf context-id { + type uint32; + description + "Explicit Path Context ID"; + } + leaf path-weight { + type uint32; + description + "Path Weight"; + } + leaf is-stale { + type boolean; + description + "Is Stale"; + } + leaf is-synced { + type boolean; + description + "Is Synced"; + } + leaf programmed-in-fib { + type boolean; + description + "Programmed in FIB"; + } + list hops { + description + "Path Hops"; + uses TE-AUTO-TUN-EXP-PATH-HOP; + } + } + + grouping TE-END-POINT { + description + "TE End Point"; + leaf address-family-type { + type Mpls-te-afi; + description + "AddressFamilyType"; + } + leaf ipv4-address { + when "../address-family-type = 'ipv4-unicast'" { + description + "../AddressFamilyType = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6-address { + when "../address-family-type = 'ipv6-unicast'" { + description + "../AddressFamilyType = 'IPv6Unicast'"; + } + type In-addr-ipv6; + description + "IPv6 Address"; + } + } + + grouping TE-SERVICE-SR-POLICY { + description + "Auto Tunnel Request Context"; + container end-point-xr { + description + "End Point"; + uses TE-END-POINT; + } + leaf sr-policy-id { + type uint32; + description + "SR Policy ID"; + } + leaf policy-active { + type boolean; + description + "Policy Active"; + } + leaf client-id-xr { + type uint32; + description + "Client ID"; + } + leaf client-name { + type string; + description + "Client Name"; + } + leaf color-xr { + type uint32; + description + "Color"; + } + leaf distinguisher-xr { + type uint32; + description + "SR Policy Distinguisher value"; + } + leaf ipv6-caps { + type boolean; + description + "IPv6 Capsulation"; + } + leaf binding-sid-context-id { + type uint32; + description + "Binding SID Context ID"; + } + leaf requested-binding-sid { + type uint32; + description + "Requested Binding SID"; + } + leaf binding-sid-request-pending { + type boolean; + description + "Binding SID Request Pending"; + } + leaf allocated-binding-sid { + type uint32; + description + "Allocated Binding SID"; + } + leaf rewrite-request-pending { + type boolean; + description + "Rewrite Requeste Pending"; + } + leaf rewrite-done { + type boolean; + description + "Rewrite Done"; + } + leaf is-stale { + type boolean; + description + "Is Stale"; + } + leaf is-synced { + type boolean; + description + "Is Synced"; + } + leaf notify-time { + type uint32; + description + "Notify Time"; + } + leaf notify-state-is-active { + type boolean; + description + "Notify State Is Active"; + } + leaf creation-time { + type uint64; + units "nanosecond"; + description + "SR policy structure creation timestamp + (clocktime in nsecs)"; + } + list explicit-path { + description + "Explicit Paths"; + uses TE-AUTO-TUN-REQ-EXP-PATH; + } + } + + grouping MPLS-TE-BFD-SUMMARY { + description + "TE BFD Summary Info"; + leaf tunnel-count-total { + type uint16; + description + "Total number of tunnel interface"; + } + leaf tunnel-count-bfd-enabled { + type uint16; + description + "Number of tunnel interface with BFD enabled"; + } + leaf tunnel-count-session-up { + type uint16; + description + "Number of tunnel with BFD session in up state"; + } + leaf tunnel-count-sbfd-enabled { + type uint16; + description + "Number of tunnel interface with SBFD enabled"; + } + leaf tunnel-count-sbfd-session-up { + type uint16; + description + "Number of tunnel with SBFD session in up state"; + } + leaf head-lsp-count-session-created { + type uint16; + description + "Number of head end LSP with BFD session created"; + } + leaf head-lsp-count-up { + type uint16; + description + "Number of head end LSP with BFD session in up + state"; + } + leaf tail-lsp-count-session-created { + type uint16; + description + "Number of tail end LSP with BFD session created"; + } + leaf tail-lsp-count-session-up { + type uint16; + description + "Number of tail end LSP with BFD session in up + state"; + } + leaf head-lsp-count-sbfd-session-created { + type uint16; + description + "Number of head end LSP with SBFD session created"; + } + leaf head-lsp-count-sbfd-up { + type uint16; + description + "Number of head end LSP with SBFD session in up + state"; + } + leaf link-count-bfd-enabled { + type uint16; + description + "Number of link with BFD enabled"; + } + leaf link-count-session-created { + type uint16; + description + "Number of link with BFD session created"; + } + leaf link-count-session-up { + type uint16; + description + "Number of link with BFD session in state Up"; + } + } + + grouping MPLS-TE-TAIL-BFD-LSP-INFO { + description + "TE Tail End BFDOverLSP Info"; + container lsp-fec { + description + "FEC for the LSP"; + uses TE-LSP-FEC; + } + leaf signaled-name { + type string; + description + "Signaled Name"; + } + leaf bfd-session-state { + type Te-bfd-lsp-session-state; + description + "BFD Session State"; + } + } + + grouping MPLS-TE-HEAD-BFD-LSP-INFO { + description + "TE Head End BFDOverLSP Info"; + leaf lsp-id { + type uint16; + description + "LSP ID"; + } + leaf bfd-session-state { + type Te-bfd-lsp-session-state; + description + "BFD Session State"; + } + } + + grouping MPLS-TE-HEAD-BFD-VIF-INFO { + description + "TE Head End Tunnel BFD Info"; + container current-lspbfd-info { + description + "Current LSP BFD Info"; + uses MPLS-TE-HEAD-BFD-LSP-INFO; + } + container standby-lspbfd-info { + description + "Standby LSP BFD Info"; + uses MPLS-TE-HEAD-BFD-LSP-INFO; + } + container reoptimized-lspbfd-info { + description + "Reoptimized LSP BFD Info"; + uses MPLS-TE-HEAD-BFD-LSP-INFO; + } + leaf tunnel-name-xr { + type string; + description + "Tunnel name"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination Address"; + } + leaf lspbfd-type { + type Te-vif-bfd; + description + "LSP BFD type"; + } + } + + grouping TE-LSP-OOR-STATS { + description + "LSP OOR statistics"; + leaf transitions { + type uint32; + description + "Number of transitions to this state"; + } + leaf rejected-ls-ps-number { + type uint32; + description + "Number of LSPs that were rejected in this state"; + } + leaf accepted-ls-ps-number { + type uint32; + description + "Number of LSPs that were accepted in this state"; + } + leaf accepted-reopt-ls-ps-number { + type uint32; + description + "Number of Reoptimize LSPs that were accepted in + this state"; + } + leaf rejected-reopt-ls-ps-number { + type uint32; + description + "Number of Reoptimize LSPs that were rejected in + this state"; + } + } + + grouping TE-LSP-OOR-STATE-INFO { + description + "LSP OOR State Information"; + container statistics { + description + "LSP OOR Statistics"; + uses TE-LSP-OOR-STATS; + } + leaf lsp-oor-state { + type Lsp-oor-state; + description + "The LSP-OOR state that this information belongs + to"; + } + leaf threshold-transit-all { + type uint32; + description + "The number of transit LSPs that triggers OOR + state transition"; + } + leaf threshold-transit-unprotected { + type uint32; + description + "The number of unprotected transit LSPs that + triggers OOR state transition"; + } + leaf te-metric-penalty { + type uint32; + description + "The TE metric penalty when the link is in this + LSP OOR state"; + } + leaf available-bw-percentage { + type uint32; + units "percentage"; + description + "The flooded percentage of available bandwidth + advertized when the link is in this LSP OOR + state"; + } + leaf transition-duration { + type uint32; + units "minute"; + description + "Recovery in minutes after the green LSP OOR + state is entered."; + } + leaf minimum-lsp-bandwidth { + type uint32; + description + "Minimum LSP bandwidth so the LSP is admitted + when the link is in this LSP OOR state"; + } + leaf accept-reopt { + type boolean; + description + "Make-before-break is allowed for LSPs + reoptimizing over the same link in the LSP OOR + state"; + } + } + + grouping TE-LSP-OOR-INFO { + description + "LSP OOR parameters for MPLS-TE"; + leaf transit-lsp-total-count { + type uint32; + description + "Number of all transit LSPs on the router"; + } + leaf transit-lsp-unprotected-count { + type uint32; + description + "Number of unprotected transit LSPs on the router"; + } + leaf lsp-oor-state { + type Lsp-oor-state; + description + "The current LSP OOR state"; + } + leaf lsp-oor-timestamp { + type uint32; + description + "Timestamp when the OOR state last changed"; + } + leaf lsp-oor-green-recovery-time { + type uint32; + units "second"; + description + "Time Remaining in Green Recovery State (seconds)"; + } + list lsp-oor-state-xr { + max-elements "3"; + description + "Array of LSP OOR info per state"; + uses TE-LSP-OOR-STATE-INFO; + } + } + + grouping MPLS-TE-SR-S2L-PATH-BAG { + description + "Segment-Routing S2L path"; + leaf is-primary { + type boolean; + description + "True if path is primary"; + } + leaf is-backup { + type boolean; + description + "True if path is backup"; + } + leaf outgoing-interface { + type string; + description + "Outgoing Interface Name"; + } + leaf path-id { + type uint32; + description + "Path Identifier"; + } + leaf backup-path-id { + type uint32; + description + "Backup Path Identifier"; + } + leaf next-hop { + type inet:ipv4-address; + description + "Next hop"; + } + list outgoing-labels-stack { + description + "Outgoing Labels Stack"; + leaf entry { + type uint32; + description + "Outgoing Labels Stack"; + } + } + } + + grouping MPLS-TE-S2L-FORWARDING-S2L-ID-BAG { + description + "S2L Forwarding identifiers"; + leaf destination-address { + type inet:ipv4-address; + description + "Destination"; + } + leaf sub-group-id { + type uint16; + description + "S2L Sub-Group ID"; + } + leaf sub-group-original-id { + type inet:ipv4-address; + description + "S2L Sub-Group Originator ID"; + } + } + + grouping TE-S2L-OUTPUT-RW-FIELDS-BAG { + description + "An entry of output label rewrite data"; + container primary-s2l { + description + "Properties of the S2L rewrite"; + uses TE-S2L-OUTPUT-RW-OUTPUT-INFO-BAG; + } + container backup-tunnel-rewrite { + description + "Properties of the S2L's backup tunnel rewrite"; + uses TE-S2L-OUTPUT-RW-OUTPUT-INFO-BAG; + } + leaf timestamp { + type uint32; + units "second"; + description + "Time stamp of the entry (secs since 1/1/70)"; + } + leaf out-rewrite-role { + type Mpls-te-tunnel-role; + description + "Role of the associated S2L"; + } + leaf label { + type uint32; + description + "Local label of the rewrite"; + } + leaf backup-active { + type boolean; + description + "Backup is active"; + } + leaf s2l-source { + type inet:ipv4-address; + description + "Source of the S2L"; + } + leaf explicit-null { + type Te-s2l-output-rw-explicit-null; + description + "Imposition of explicit NULL"; + } + leaf protocol-transported { + type uint16; + description + "Protocol transported in the S2L"; + } + } + + grouping TE-S2L-OUTPUT-RW-FEC-SUBFAMILY-BAG { + description + "LMRIB S2L Output label rewrite FEC subfamily"; + container lsp-fec { + description + "LSP FEC"; + uses TE-LSP-FEC; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next hop address"; + } + leaf previous-hop-address { + type inet:ipv4-address; + description + "Previous hop address"; + } + leaf next-next-hop-address { + type inet:ipv4-address; + description + "Next Next hop address"; + } + } + + grouping MPLS-TE-S2L-OUTPUT-RW-BAG { + description + "S2L output rewrite"; + container subfamily { + description + "Subfamily identifiers"; + uses TE-S2L-OUTPUT-RW-FEC-SUBFAMILY-BAG; + } + container successful-rewrite { + description + "Successful rewrite details"; + uses TE-S2L-OUTPUT-RW-FIELDS-BAG; + } + container failed-rewrite { + description + "Failed rewrite details"; + uses TE-S2L-OUTPUT-RW-FIELDS-BAG; + } + container pending-rewrite { + description + "Pending rewrite details"; + uses TE-S2L-OUTPUT-RW-FIELDS-BAG; + } + } + + grouping MPLS-TE-S2L-FORWARDING-BAG { + description + "Output label forwarding details for S2Ls"; + container s2l-output-rewrite { + description + "Output rewrite shared between S2Ls"; + uses MPLS-TE-S2L-OUTPUT-RW-BAG; + } + leaf original-input-interface { + type string; + description + "Input interface of the S2Ls"; + } + leaf output-interface-name { + type string; + description + "The output interface of the S2Ls"; + } + leaf backup-tunnel-name { + type string; + description + "Backup tunnel name"; + } + leaf is-segment-routing { + type boolean; + description + "TRUE if the s2l path is Segment-Routing"; + } + list s2l { + description + "Unique identifiers for the S2L sharing the + rewrite"; + uses MPLS-TE-S2L-FORWARDING-S2L-ID-BAG; + } + list s2lsr-path { + description + "Segment-Routing Paths"; + uses MPLS-TE-SR-S2L-PATH-BAG; + } + } + + grouping TE-S2L-TUN-RW-FIELDS-P2MP-BAG { + description + "LMRIB Tunnel rewrite fields"; + leaf local-label { + type uint32; + description + "Local Label"; + } + } + + grouping TE-S2L-OUTPUT-RW-OUTPUT-INFO-BAG { + description + "Output rewrite tunnel information"; + leaf physica-interface-name { + type xr:Interface-name; + description + "Physical interface associated with the entry"; + } + leaf tunnel-interface-name { + type xr:Interface-name; + description + "Interface handle of the associated tunnel"; + } + leaf parent-interface-name { + type xr:Interface-name; + description + "Interface name of the parent intf"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next hop address associated with the entry"; + } + leaf out-label { + type uint32; + description + "Output label associated with the entry"; + } + list sr-label-stack { + description + "Segment-Routing labels stack"; + leaf entry { + type uint32; + description + "Segment-Routing labels stack"; + } + } + } + + grouping TE-S2L-TUN-RW-FIELDS-P2P-BAG { + description + "LSD Tunnel rewrite fields"; + container primary-s2l { + description + "Properties of the primary S2L of tunnel rewrite"; + uses TE-S2L-OUTPUT-RW-OUTPUT-INFO-BAG; + } + container backup-tunnel-rewrite { + description + "Properties of the S2L's backup for tunnel + rewrite"; + uses TE-S2L-OUTPUT-RW-OUTPUT-INFO-BAG; + } + leaf local-label { + type uint32; + description + "Local label of the tunnel rewrite"; + } + leaf tunnel-id { + type uint16; + description + "Tunnel ID for this rewrite data"; + } + leaf source-pe { + type inet:ipv4-address; + description + "source address of the tunnel"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "Extended Tunnel ID"; + } + leaf backup-active { + type boolean; + description + "FRR is active on the backup tunnel"; + } + leaf original-input-interface { + type string; + description + "Input interface of the S2Ls"; + } + leaf previous-hop-address { + type inet:ipv4-address; + description + "Previous hop"; + } + leaf output-interface-name { + type string; + description + "The output interface of the S2Ls"; + } + leaf backup-tunnel-name { + type string; + description + "Backup tunnel name"; + } + } + + grouping TE-S2L-TUN-RW-FIELD-CTYPE-BAG { + description + "C-type-specific LSP FEC data"; + container p2p-tunnel-rewrite { + when "../fec-ctype = 'mpls-lib-c-type-ipv4-p2p-tunnel'" { + description + "../FEC_CType = 'MPLS_LIB_CTYPE_IPV4_P2P_TUNNEL'"; + } + description + "Tunnel rewrite data specific to P2P"; + uses TE-S2L-TUN-RW-FIELDS-P2P-BAG; + } + container p2mp-tunnel-rewrite { + when "../fec-ctype = 'mpls-lib-c-type-ipv4-p2mp-tunnel'" { + description + "../FEC_CType = + 'MPLS_LIB_CTYPE_IPV4_P2MP_TUNNEL'"; + } + description + "Tunnel rewrite data specific to P2MP"; + uses TE-S2L-TUN-RW-FIELDS-P2MP-BAG; + } + leaf fec-ctype { + type Mpls-lib-c; + description + "FEC CType"; + } + } + + grouping TE-S2L-TUN-RW-FIELDS-BAG { + description + "LMRIB S2L Tunnel rewrite fields"; + container tunnel-rewrite { + description + "Union of p2p and p2mp tun rewrite data"; + uses TE-S2L-TUN-RW-FIELD-CTYPE-BAG; + } + leaf timestamp { + type uint32; + description + "Time stamp of the entry"; + } + } + + grouping MPLS-TE-S2L-TUN-RW-BAG { + description + "LMRIB S2L Tunnel rewrite"; + container successful-rewrite { + description + "Successful rewrite details"; + uses TE-S2L-TUN-RW-FIELDS-BAG; + } + container failed-rewrite { + description + "Failed rewrite details"; + uses TE-S2L-TUN-RW-FIELDS-BAG; + } + container pending-rewrite { + description + "Pending rewrite details"; + uses TE-S2L-TUN-RW-FIELDS-BAG; + } + leaf tunnel-interface { + type string; + description + "Tunnel interface name"; + } + leaf tunnel-signal-name { + type string; + description + "Tunnel signaled-name"; + } + leaf is-segment-routing { + type boolean; + description + "TRUE if the s2l path is Segment-Routing"; + } + } + + grouping TE-PP-SW-LOG-BAG { + description + "The full log of the path protection switchover + events"; + leaf path-protection-switchovers { + type uint32; + description + "Total number of path protection switchover + events. This could be more than the entries in + the array"; + } + leaf maximum-switchover-millisec { + type uint32; + units "millisecond"; + description + "The maximum delay for a switchover in + milliseconds"; + } + leaf average-switchover-millisec { + type uint32; + units "millisecond"; + description + "The average delay for a switchover in + milliseconds"; + } + list path-protection-switchover-entry { + description + "The array of path protection switchover entries"; + uses TE-PP-SW-LOG-ENTRY-BAG; + } + } + + grouping TUNNEL-MAX-INFO { + description + "Tunnel maximum information bag"; + leaf current-maximum-tunnels { + type uint32; + description + "Current Maximum Tunnels"; + } + leaf current-maximum-destinations { + type uint32; + description + "Current Maximum Destinations"; + } + leaf current-maximum-p2mp-tunnels { + type uint32; + description + "Current Maximum P2MP Tunnel Count"; + } + leaf current-maximum-p2mp-destnation-per-tunnel { + type uint32; + description + "Current Maximum P2MP Destinations Per Tunnel + Count"; + } + leaf absolute-maximum { + type uint32; + description + "Absolute Maximum"; + } + leaf current-maximum-autobackups { + type uint32; + description + "Current Maximum Autotunnel Backups Allowed"; + } + leaf current-maximum-auto-mesh { + type uint32; + description + "Current Maximum Autotunnel Mesh Allowed"; + } + leaf current-tunnel-count { + type uint32; + description + "Current tunnel count"; + } + leaf current-destination-count { + type uint32; + description + "Current Destination Count"; + } + leaf current-p2mp-tunnel-count { + type uint32; + description + "Current P2MP tunnel count"; + } + leaf current-p2mp-destnation-per-tunnel-count { + type uint32; + description + "Current P2MP Destination per tunnel count"; + } + leaf is-autobackup-range-configured { + type boolean; + description + "TRUE if the autobackup range is configured"; + } + leaf current-autobackups { + type uint32; + description + "Current Autotunnel Backup count"; + } + leaf is-auto-mesh-range-configured { + type boolean; + description + "TRUE if the automesh range is configured"; + } + leaf current-auto-mesh { + type uint32; + description + "Current Autotunnel Mesh count"; + } + leaf current-maximum-gmpls-unitunnels { + type uint32; + description + "Current Maximum GMPLS-UNI Tunnel Count"; + } + leaf current-gmpls-uni { + type uint32; + description + "Current GMPLS-UNI tunnel count"; + } + } + + grouping MPLS-TE-S2L-SR-OUTGOING-FWD-INFO { + description + "Segment-routing outgoing fowarding info"; + leaf lsp-output-interface { + type string; + description + "Output interface of LSP"; + } + leaf lsp-output-label { + type uint32; + description + "Output label of the LSP"; + } + } + + grouping MPLS-TE-PATH-PROTECTION-LSP { + description + "MPLS TE Path Protected LSP Information"; + leaf lsp-uptime { + type uint32; + description + "LSP Uptime"; + } + leaf path-protection-lsp-id { + type uint32; + description + "LSP ID "; + } + leaf lsp-local-label { + type uint32; + description + "Local label "; + } + leaf lsp-output-interface { + type string; + description + "Output interface of LSP"; + } + leaf lsp-output-label { + type uint32; + description + "Output label of the LSP"; + } + leaf lsp-state { + type Mpls-te-tunnel-state; + description + "LSP State"; + } + list srlsp-outgoing-info { + description + "Segment-routing iutgoing info of LSP"; + uses MPLS-TE-S2L-SR-OUTGOING-FWD-INFO; + } + list lsp-hop { + description + "Path used by LSP"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + } + + grouping MPLS-TE-PATH-PROTECTION { + description + "MPLS TE Path Protected Information"; + container path-protection { + description + "Path Protect Info"; + uses MPLS-TE-PP-INFO; + } + container current-lsp { + description + " Current LSP info"; + uses MPLS-TE-PATH-PROTECTION-LSP; + } + container standby-lsp { + description + " Standby LSP info"; + uses MPLS-TE-PATH-PROTECTION-LSP; + } + leaf is-tunnel-up { + type boolean; + description + "Tunnel UP"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "Extended Tunnel ID"; + } + } + + grouping MPLS-TE-AUTOTUN-P2P-INFO { + description + "P2P auto-tunnel summary per client information"; + leaf auto-p2p-tunnel { + type uint32; + description + "Total number of client P2P auto-tunnels"; + } + leaf up-auto-p2p-tunnels { + type uint32; + description + "Total number of client P2P auto-tunnels that are + up"; + } + leaf down-auto-p2p-tunnels { + type uint32; + description + "Total number of client P2P auto-tunnels that are + down"; + } + } + + grouping MPLS-TE-AUTOTUN-P2MP-INFO { + description + "P2MP auto-tunnel summary per client information"; + leaf auto-p2mp-tunnel { + type uint32; + description + "Total number of client P2MP auto-tunnels"; + } + leaf auto-p2mp-destinations { + type uint32; + description + "Total number of client P2MP auto-tunnel + destinations"; + } + leaf up-auto-p2mp-destinations { + type uint32; + description + "Total number of client P2MP auto-tunnel + destinations that are up"; + } + leaf down-auto-p2mp-destinations { + type uint32; + description + "Total number of client P2MP auto-tunnel + destinations that are down"; + } + leaf up-auto-p2mp-tunnels { + type uint32; + description + "Total number of client P2MP auto-tunnels that + are up"; + } + leaf down-auto-p2mp-tunnels { + type uint32; + description + "Total number of client P2MP auto-tunnels that + are down"; + } + leaf frr-auto-p2mp-tunnels { + type uint32; + description + "Total number of client P2MP auto-tunnels that + are FRR enabled"; + } + } + + grouping MPLS-TE-AUTOTUN-SVR-INFO { + description + "Auto-tunnel server client summary"; + container p2mp-info { + description + "P2MP info for a client"; + uses MPLS-TE-AUTOTUN-P2MP-INFO; + } + container p2p-info { + description + "P2P info for a client"; + uses MPLS-TE-AUTOTUN-P2P-INFO; + } + leaf protocol-type { + type Te-serv-tun-client; + description + "Client's protocol type"; + } + leaf client-instance-name { + type string; + description + "Client Instance name"; + } + leaf client-id { + type uint32; + description + "Client ID"; + } + } + + grouping MPLS-TE-AUTOTUN-SVR-SUMMARY-INFO { + description + "Auto-tunnel server summary information"; + container total-auto-p2mp-tunnels { + description + "Total number of P2MP auto-tunnels"; + uses MPLS-TE-AUTOTUN-P2MP-INFO; + } + container total-auto-p2p-tunnels { + description + "Total number of P2P auto-tunnels"; + uses MPLS-TE-AUTOTUN-P2P-INFO; + } + list clients-summary { + description + "List of auto-tunnel server clients"; + uses MPLS-TE-AUTOTUN-SVR-INFO; + } + } + + grouping TE-CONV-TBL-SUMMARY-BAG { + description + "TE tunnels convergence summary information bag"; + leaf tunnel-frr-active-count { + type uint32; + description + "FRR active Tunnel count"; + } + leaf tunnel-frr-total-count { + type uint32; + description + "FRR triggered Tunnel count"; + } + leaf tunnel-converged-count { + type uint32; + description + "Tunnel converged count"; + } + leaf tunnel-total-convergence-complete-time { + type uint64; + units "nanosecond"; + description + "Tunnel convergence complete timestamp (clocktime + in nsecs)"; + } + } + + grouping MPLS-TE-GMPLS-NNI-SUMMARY-INFO { + description + "GMPLS-NNI summary information"; + leaf heads-up { + type uint32; + description + "Tunnel heads in up state"; + } + leaf heads-down { + type uint32; + description + "Tunnel heads in down state"; + } + leaf mids-up { + type uint32; + description + "Tunnel mids in up state"; + } + leaf mids-down { + type uint32; + description + "Tunnel mids in down state"; + } + leaf tails-up { + type uint32; + description + "Tunnel tails in up state"; + } + leaf tails-down { + type uint32; + description + "Tunnel tails in down state"; + } + } + + grouping MPLS-TE-GMPLS-UNI-SUMMARY-INFO { + description + "GMPLS-UNI summary information"; + leaf heads-up { + type uint32; + description + "Tunnel heads in up state"; + } + leaf heads-down { + type uint32; + description + "Tunnel heads in down state"; + } + leaf tails-up { + type uint32; + description + "Tunnel tails in up state"; + } + leaf tails-down { + type uint32; + description + "Tunnel tails in down state"; + } + } + + grouping MPLS-TE-TUNNELS-SUMMARY-INFO-BAG { + description + "MPLS TE Tunnel Summary Information"; + container autobackup-summary { + description + "Autobackup summary"; + uses MPLS-TE-AUTOTUN-BACKUP-SUMMARY-INFO; + } + container auto-mesh-summary { + description + "Automesh summary"; + uses MPLS-TE-AUTOTUN-MESH-SUMMARY-INFO; + } + container auto-mesh-one-hop-summary { + description + "Automesh Onehop summary"; + uses MPLS-TE-AUTOTUN-MESH-ONEHOP-SUMMARY-INFO; + } + container gmpls-uni-summary { + description + "GMPLS-UNI summary"; + uses MPLS-TE-GMPLS-UNI-SUMMARY-INFO; + } + container gmpls-nni-summary { + description + "GMPLS-NNI summary"; + uses MPLS-TE-GMPLS-NNI-SUMMARY-INFO; + } + container current-tunnel-convergence-summary { + description + "Current Tunnel convergemce summary information"; + uses TE-CONV-TBL-SUMMARY-BAG; + } + container last-tunnel-convergence-summary { + description + "Last Tunnel convergemce summary information"; + uses TE-CONV-TBL-SUMMARY-BAG; + } + container auto-tun-server-summary { + description + "Auto-tunnel server tunnel summary"; + uses MPLS-TE-AUTOTUN-SVR-SUMMARY-INFO; + } + leaf pcalc-tie-breaker-type { + type Te-path-selection-tiebreaker; + description + "PCALC tiebreaker type"; + } + leaf pcalc-tiebreaker { + type uint32; + description + "Deprecated - replaced by PCALCTiebreakerType"; + } + leaf tiebreaker-qualifier { + type Mpls-te-metric-qualifier; + description + "Describes how the path selection tiebreaker was + specified:default, or globally set"; + } + leaf te-process-status { + type Mpls-te-tunnels-process-status; + description + "Status of te_control"; + } + leaf is-rsvp-process-enabled { + type boolean; + description + "Status of rsvp"; + } + leaf is-forwarding-enabled { + type boolean; + description + "TRUE if forwarding is enabled"; + } + leaf activated-heads { + type uint32; + description + "Total tunnel heads activated"; + } + leaf deactivated-heads { + type uint32; + description + "Total tunnel heads deactivated"; + } + leaf recovered-heads { + type uint32; + description + "Number of heads recovered"; + } + leaf is-periodic-reoptimization-on { + type boolean; + description + "TRUE if periodic reoptimization is on"; + } + leaf reoptimization-period { + type uint32; + units "second"; + description + "Reoptimization period in seconds"; + } + leaf next-reoptimization-timer { + type uint32; + units "second"; + description + "Time left till next reoptimization (seconds)"; + } + leaf auto-bandwidth-tunnels { + type uint32; + description + "Counter with number of auto-bw enabled tunnels"; + } + leaf auto-bandwidth-collection-period { + type uint32; + units "minute"; + description + "Collection period in minutes"; + } + leaf is-promotion-on { + type boolean; + description + "TRUE if periodic frr promotion is on"; + } + leaf promotion-period { + type uint32; + units "second"; + description + "FRR promotion period in seconds"; + } + leaf next-promotion-timer { + type uint32; + units "second"; + description + "Time left till next FRR promotion (seconds)"; + } + leaf tunnel-check-period { + type uint32; + units "second"; + description + "Tunnel head check period (seconds)"; + } + leaf next-check-time { + type uint32; + units "second"; + description + "Time left till next FRR promotion (seconds)"; + } + leaf tunnel-verify-period { + type uint32; + units "second"; + description + "Tunnel head verify period (seconds)"; + } + leaf next-verify-timer { + type uint32; + units "second"; + description + "Time left till next FRR promotion (seconds)"; + } + leaf frr-head-tunnels { + type uint32; + description + "FRR tunnels in Up state at head end"; + } + leaf protected-head-tunnels { + type uint32; + description + "FRR protected tunnels in Up state at head end"; + } + leaf rerouted-head-tunnels { + type uint32; + description + "FRR rerouted tunnels in Up state at head end"; + } + leaf frr-mid-point-tunnels { + type uint32; + description + "FRR tunnels at mid point"; + } + leaf protected-mid-point-tunnels { + type uint32; + description + "FRR protected tunnels at mid point"; + } + leaf rerouted-mid-point-tunnels { + type uint32; + description + "FRR rerouted tunnels at mid point"; + } + leaf link-protected-tunnels { + type uint32; + description + "FRR link protected tunnels"; + } + leaf node-protected-tunnels { + type uint32; + description + "FRR node protected tunnels"; + } + leaf bw-protected-tunnels { + type uint32; + description + "FRR BW protected tunnels"; + } + leaf frr-p2p-head-tunnels { + type uint32; + description + "P2P FRR tunnels in Up state at head end"; + } + leaf protected-p2p-head-tunnels { + type uint32; + description + "P2P FRR protected tunnels in Up state at head + end"; + } + leaf rerouted-p2p-head-tunnels { + type uint32; + description + "P2P FRR rerouted tunnels in Up state at head end"; + } + leaf frr-p2p-mid-point-tunnels { + type uint32; + description + "P2P FRR tunnels at mid point"; + } + leaf protected-p2p-mid-point-tunnels { + type uint32; + description + "P2P FRR protected tunnels at mid point"; + } + leaf rerouted-p2p-mid-point-tunnels { + type uint32; + description + "P2P FRR rerouted tunnels at mid point"; + } + leaf link-protected-p2p-tunnels { + type uint32; + description + "P2P FRR link protected tunnels"; + } + leaf node-protected-p2p-tunnels { + type uint32; + description + "P2P FRR node protected tunnels"; + } + leaf bw-protected-p2p-tunnels { + type uint32; + description + "P2P FRR BW protected tunnels"; + } + leaf backup-tunnels { + type uint32; + description + "FRR backup tunnels in Up state"; + } + leaf backups-assigned { + type uint32; + description + "FRR backup tunnels assigned"; + } + leaf frr-protected-interfaces { + type uint32; + description + "FRR Protected Interfaces"; + } + leaf rerouted-interfaces { + type uint32; + description + "FRR Rerouted Interfaces"; + } + leaf p2p-head-tunnels { + type uint32; + description + "p2p Tunnel interfaces"; + } + leaf up-p2p-head-tunnels { + type uint32; + description + "p2p Tunnel interfaces in Up state"; + } + leaf dynamic-up-p2p-head-tunnels { + type uint32; + description + "p2p Tunnel up via a dynamic path"; + } + leaf frr-config-p2p-head-tunnels { + type uint32; + description + "p2p Tunnel interfaces with FRR configuration"; + } + leaf p2p-head-destinations { + type uint32; + description + "p2p Destinations at Head"; + } + leaf p2p-head-destinations-up { + type uint32; + description + "p2p Destinations in Up state at Head"; + } + leaf bw-protected-p2p-s2-ls { + type uint32; + description + "p2p S2Ls BW Protected"; + } + leaf link-protected-p2p-s2-ls { + type uint32; + description + "p2p S2Ls Link Protected"; + } + leaf up-p2p-head-s2-ls { + type uint32; + description + "p2p S2Ls in Up state at Head"; + } + leaf proceeding-p2p-head-s2-ls { + type uint32; + description + "p2p S2Ls in signalling-proceeding state at Head"; + } + leaf recovering-p2p-head-s2-ls { + type uint32; + description + "p2p S2Ls recovering at Head"; + } + leaf frr-p2p-head-s2-ls { + type uint32; + description + "p2p S2Ls with FRR requested at Head"; + } + leaf protected-p2p-head-s2-ls { + type uint32; + description + "p2p S2Ls FRR Protected at Head"; + } + leaf rerouted-p2p-head-s2-ls { + type uint32; + description + "p2p S2Ls FRR Rerouted at Head"; + } + leaf p2p-mid-point-s2-ls { + type uint32; + description + "p2p S2Ls at Mid"; + } + leaf up-p2p-mid-point-s2-ls { + type uint32; + description + "p2p S2Ls in Up state at Mid"; + } + leaf proceeding-p2p-mid-point-s2-ls { + type uint32; + description + "p2p S2Ls in signalling=proceeding state at Mid"; + } + leaf frr-p2p-mid-point-s2-ls { + type uint32; + description + "p2p S2Ls with FRR requested at Mid"; + } + leaf protected-p2p-mid-point-s2-ls { + type uint32; + description + "p2p S2Ls FRR Protected at Mid"; + } + leaf rerouted-p2p-mid-point-s2-ls { + type uint32; + description + "p2p S2Ls FRR Rerouted at Mid"; + } + leaf p2p-tail-s2-ls { + type uint32; + description + "p2p S2Ls at Tail"; + } + leaf up-p2p-tail-s2-ls { + type uint32; + description + "p2p S2Ls in Up state at Tail"; + } + leaf p2p-tail-tunnels { + type uint32; + description + "p2p Tunnel tail interfaces"; + } + leaf path-protect-configured-tunnels { + type uint16; + description + "Tunnels configured with Path Protect"; + } + leaf path-protect-configured-tunnels-up { + type uint16; + description + "Path Protect configured tunnels connected/up"; + } + leaf path-protect-configured-tunnels-standby-up { + type uint16; + description + "Tunnels with standby LSP up"; + } + leaf link-diverse-paths { + type uint16; + description + "Link diverse paths"; + } + leaf node-diverse-paths { + type uint16; + description + "Node diverse paths"; + } + leaf link-and-node-diverse-paths { + type uint16; + description + "Link and Node diverse paths"; + } + leaf user-defined-paths { + type uint16; + description + "User defined paths"; + } + leaf srlg-diverse-paths { + type uint16; + description + "SRLG diverse paths"; + } + leaf srlg-and-node-diverse-paths { + type uint16; + description + "SRLG and Node diverse paths"; + } + leaf srlg-and-node-and-link-diverse-paths { + type uint16; + description + "SRLG and Node and Link diverse paths"; + } + leaf sticky-paths { + type uint16; + description + "Sticky paths"; + } + leaf p2mp-head-tunnels { + type uint32; + description + "P2MP Tunnel interfaces"; + } + leaf up-p2mp-head-tunnels { + type uint32; + description + "P2MP Tunnel interfaces in Up state"; + } + leaf frr-config-p2mp-head-tunnels { + type uint32; + description + "P2MP Tunnel interfaces with FRR configuration"; + } + leaf p2mp-head-destinations { + type uint32; + description + "P2MP Destinations at Head"; + } + leaf up-p2mp-head-destinations { + type uint32; + description + "P2MP Destinations in Up state at Head"; + } + leaf bw-protected-p2mp-s2-ls { + type uint32; + description + "P2MP S2Ls BW Protected"; + } + leaf link-protected-p2mp-s2-ls { + type uint32; + description + "P2MP S2Ls Link Protected"; + } + leaf up-p2mp-head-s2-ls { + type uint32; + description + "P2MP S2Ls in Up state at Head"; + } + leaf proceeding-p2mp-head-s2-ls { + type uint32; + description + "P2MP S2Ls in signalling-proceeding state at Head"; + } + leaf frr-p2mp-head-s2-ls { + type uint32; + description + "P2MP S2Ls with FRR requested at Head"; + } + leaf protected-p2mp-head-s2-ls { + type uint32; + description + "P2MP S2Ls FRR Protected at Head"; + } + leaf rerouted-p2mp-head-s2-ls { + type uint32; + description + "P2MP S2Ls FRR Rerouted at Head"; + } + leaf p2mp-mid-point-s2-ls { + type uint32; + description + "P2MP S2Ls at Mid"; + } + leaf up-p2mp-mid-point-s2-ls { + type uint32; + description + "P2MP S2Ls in Up state at Mid"; + } + leaf proceeding-p2mp-mid-point-s2-ls { + type uint32; + description + "P2MP S2Ls in signalling=proceeding state at Mid"; + } + leaf frr-p2mp-mid-point-s2-ls { + type uint32; + description + "P2MP S2Ls with FRR requested at Mid"; + } + leaf protected-p2mp-mid-point-s2-ls { + type uint32; + description + "P2MP S2Ls FRR Protected at Mid"; + } + leaf rerouted-p2mp-mid-point-s2-ls { + type uint32; + description + "P2MP S2Ls FRR Rerouted at Mid"; + } + leaf p2mp-tail-s2-ls { + type uint32; + description + "P2MP S2Ls at Tail"; + } + leaf up-p2mp-tail-s2-ls { + type uint32; + description + "P2MP S2Ls in Up state at Tail"; + } + leaf bidir-head-tunnels { + type uint32; + description + "Bidirectional Head Tunnel interfaces"; + } + leaf bidir-head-tunnels-up { + type uint32; + description + "Connected Bidirectional Head Tunnel interfaces"; + } + leaf bidir-head-tunnels-associated { + type uint32; + description + "Associated Bidirectional Head Tunnels"; + } + leaf bidir-head-tunnels-corouted { + type uint32; + description + "Corouted Bidirectional Head Tunnels"; + } + leaf bidir-head-ls-ps-up { + type uint32; + description + "Connected Bidirectional Head Tunnel interfaces"; + } + leaf bidir-head-ls-ps-proceeding { + type uint32; + description + "Proceeding Bidirectional Head LSPs"; + } + leaf bidir-head-ls-ps-associated { + type uint32; + description + "Associated Bidirectional Head LSPs"; + } + leaf bidir-head-ls-ps-standby { + type uint32; + description + "Standby Bidirectional Head LSPs"; + } + leaf bidir-mid-tunnels { + type uint32; + description + "Bidirectional Mid Tunnel interfaces"; + } + leaf bidir-mid-tunnels-up { + type uint32; + description + "Connected Bidirectional Mid Tunnel interfaces"; + } + leaf bidir-mid-ls-ps-proceeding { + type uint32; + description + "Proceeding Bidirectional Mid LSPs"; + } + leaf bidir-mid-ls-ps-associated { + type uint32; + description + "Associated Bidirectional Mid LSPs"; + } + leaf bidir-mid-ls-ps-standby { + type uint32; + description + "Standby Bidirectional Mid LSPs"; + } + leaf bidir-tail-ls-ps { + type uint32; + description + "Bidirectional Tail LSPs"; + } + leaf bidir-tail-ls-ps-up { + type uint32; + description + "Connected Bidirectional Tail LSPs"; + } + leaf bidir-tail-ls-ps-proceeding { + type uint32; + description + "Proceeding Bidirectional Tail LSPs"; + } + leaf bidir-tail-ls-ps-associated { + type uint32; + description + "Associated Bidirectional Tail LSPs"; + } + leaf bidir-tail-ls-ps-standby { + type uint32; + description + "Standby Bidirectional Tail LSPs"; + } + leaf bidir-tail-ls-ps-corouted { + type uint32; + description + "Corouted Bidirectional Tail LSPs"; + } + } + + grouping MPLS-TE-TUNNELS-AUTOBW-BRIEF { + description + "MPLS TE Tunnel AutoBandwidth Brief Information"; + container auto-bandwidth-status { + description + "Tunnels's AutoBandwidth Status information"; + uses MPLS-TE-TUNNELS-AUTOBW-STATUS; + } + leaf tunnel-name-xr { + type string; + description + "Tunnel name"; + } + leaf signaled-name { + type string; + description + "Tunnel signaled name"; + } + leaf tunnel-lsp-id { + type uint32; + description + "Tunnel Lsp Id"; + } + leaf bandwidth-applications { + type uint32; + description + "Total number of bandwidth applications requested + by auto-bw"; + } + leaf last-bandwidth-applied { + type uint32; + description + "Last bandwidth requested by auto-bw for the + tunnel"; + } + leaf tunnel-requested-bandwidth { + type uint32; + description + "Requested Bandwidth for the tunnel"; + } + leaf signalled-bandwidth { + type uint32; + description + "Signalled bandwidth for the tunnel"; + } + leaf highest-bandwidth { + type uint32; + description + "Highest bandwidth registered within current + application period"; + } + leaf last-sample-bandwidth { + type uint32; + description + "Last sample bandwidth collected"; + } + leaf samples-collected { + type uint32; + description + "Number of samples collected within current + application period"; + } + leaf time-left-application { + type uint32; + description + "Time left until next auto-bw application + algorithm is performed"; + } + } + + grouping MPLS-TE-FLEX-LSP-REV-LSP { + description + "MPLS TE Flex LSP Reverse LSP information"; + container reverse-lsp-fec { + description + "Reverse Associated Bidir LSP FEC"; + uses TE-LSP-FEC; + } + container association { + description + "Association Object"; + uses MPLS-TE-S2L-ASSOCIATION-OBJECT; + } + container protection { + description + "Protection Object"; + uses MPLS-TE-S2L-PROTECTION-OBJECT; + } + leaf reverse-lsp-present { + type boolean; + description + "Reverse Associated Bidir LSP Present"; + } + leaf reverse-lsp-connected { + type boolean; + description + "Reverse Associated Bidir LSP Connected"; + } + } + + grouping MPLS-TE-FLEX-LSP-LSP { + description + "MPLS TE FLEX LSP Information"; + container flex-info { + description + "Flex Info"; + uses MPLS-TE-S2L-FLEX-INFO; + } + container association { + description + "Association Object"; + uses MPLS-TE-S2L-ASSOCIATION-OBJECT; + } + container protection { + description + "Protection Object"; + uses MPLS-TE-S2L-PROTECTION-OBJECT; + } + container reverse-lsp { + description + "Reverse LSP information"; + uses MPLS-TE-FLEX-LSP-REV-LSP; + } + leaf is-operational { + type boolean; + description + "Operational"; + } + leaf lsp-uptime { + type uint32; + description + "LSP Uptime"; + } + leaf path-protection-lsp-id { + type uint32; + description + "LSP ID "; + } + leaf lsp-mode { + type Mpls-te-lsp-mode; + description + "LSP mode"; + } + leaf lsp-local-label { + type uint32; + description + "Local label "; + } + leaf lsp-output-interface { + type string; + description + "Output interface of LSP"; + } + leaf lsp-output-label { + type uint32; + description + "Output label of the LSP"; + } + leaf lsp-state { + type Mpls-te-tunnel-state; + description + "LSP State"; + } + list lsp-hop { + description + "Path used by LSP"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + } + + grouping MPLS-TE-FLEX-LSP { + description + "MPLS TE Flex LSP Information"; + container working-lsp { + description + " Working LSP info"; + uses MPLS-TE-FLEX-LSP-LSP; + } + container protect-lsp { + description + " Protect LSP info"; + uses MPLS-TE-FLEX-LSP-LSP; + } + leaf is-tunnel-up { + type boolean; + description + "Tunnel UP"; + } + leaf tun-id { + type uint16; + description + "Tunnel ID"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "Extended Tunnel ID"; + } + } + + grouping MPLS-TE-FASTREROUTE-PROMOTION-BAG { + description + "MPLS TE Fast Reroute Promotion Information"; + leaf promotion-period { + type uint32; + units "second"; + description + "Promotion period in seconds"; + } + leaf remaining-time { + type uint32; + units "second"; + description + "Remaining time for next promotion in seconds"; + } + leaf is-configured { + type boolean; + description + "Indicate if periodic promotion is configured "; + } + } + + grouping MPLS-TE-FASTREROUTE-PROTECTION-BAG { + description + "MPLS TE Fast Reroute Protected LSP Information"; + leaf source-address-xr { + type inet:ipv4-address; + description + "Source"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "Destination"; + } + leaf tunnel-id-xr { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id-xr { + type inet:ipv4-address; + description + "Extended Tunnel ID"; + } + leaf tunnel-name { + type string; + description + "Tunnel Name"; + } + leaf tunnel-instance { + type uint32; + description + "Tunnel instance"; + } + leaf role { + type Mpls-te-tunnel-role; + description + "Role of LSP"; + } + leaf admin-status { + type Mpls-te-tunnel-state; + description + "Tunnel Admin status"; + } + leaf operation-status { + type Mpls-te-tunnel-state; + description + "Tunnel operational status"; + } + leaf is-signalled { + type boolean; + description + "Indicates whether signalled"; + } + leaf is-frr-requested { + type boolean; + description + "TRUE if frr protection is on"; + } + leaf outbound-frr-state { + type Mpls-te-frr-state; + description + "Indicates outbound FRR state"; + } + leaf inbound-frr-state { + type Mpls-te-frr-state; + description + "Indicates inbound FRR state"; + } + leaf output-interface-lsp { + type string; + description + "Output intface of the LSP"; + } + leaf output-label { + type uint32; + description + "Output label"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next hop"; + } + leaf frr-output-tunnel-interface { + type string; + description + "FRR output tunnel intface"; + } + leaf frr-output-label { + type uint32; + description + "FRR output label"; + } + leaf backup-status { + type Mpls-te-backup-status; + description + "Backup status"; + } + leaf bandwidth-pool-type { + type Mpls-te-bw-pool; + description + "Bandwidth pool type"; + } + leaf bandwidth-limit-type { + type Mpls-te-bw-limit; + description + "Bandwidth limit type"; + } + leaf original-input-interface { + type string; + description + "Input intface of the LSP"; + } + leaf input-label { + type uint32; + description + "Input label"; + } + leaf previous-hop-address { + type inet:ipv4-address; + description + "Previous hop"; + } + leaf backup-bandwidth { + type uint32; + description + "Backup bandwidth"; + } + leaf frr-output-interface { + type string; + description + "Output interface of bkup tunnel"; + } + leaf backup-next-hop-address { + type inet:ipv4-address; + description + "S2L Nexthop of the backup tunnel"; + } + leaf lsp-bandwidth-type { + type Mpls-te-bw-pool; + description + "LSP bandwidth type"; + } + leaf sharing-type { + type Mpls-te-frr-sharing; + description + "Outgoing i/f Sharing type"; + } + leaf is-p2mp-tunnel { + type boolean; + description + "Is P2P or P2MP Tunnel"; + } + leaf sub-group-original-id { + type inet:ipv4-address; + description + "S2L Sub-Group Originator ID"; + } + leaf sub-group-id-xr { + type uint16; + description + "S2L Sub-Group ID"; + } + leaf p2mp-id-xr { + type uint32; + description + "S2L P2MP ID"; + } + } + + grouping MPLS-TE-FASTREROUTE-BAG { + description + "MPLS TE Fast Reroute Information"; + leaf backup-tunnel-id { + type uint32; + description + "Backup tunnel ID"; + } + leaf backup-tunnel-name-xr { + type string; + description + "Backup tunnel name"; + } + leaf backup-status { + type Mpls-te-backup-status; + description + "Backup state"; + } + leaf backup-type { + type Mpls-te-backup; + description + "Backup type"; + } + leaf backup-usage { + type Mpls-te-backup-usage; + description + "Backup usage"; + } + leaf prot-interface-autobackup-config { + type Auto-backup-protection; + description + "Protected interface Autobackup config"; + } + leaf prot-interface-srlg-config { + type Auto-backup-srlg-mode; + description + "Protected interface SRLG config"; + } + leaf tunnel-attribute-set-name { + type string; + description + "Attribute Set Name"; + } + leaf has-attribute-set { + type boolean; + description + "TRUE if the auto-backup has an attribute set + defined"; + } + leaf is-attribute-set-in-db { + type boolean; + description + "Flag to indicate the existence of attribute set + found in database"; + } + leaf recreate-timer-is-running { + type boolean; + description + "Indicates if the recreate timer is running"; + } + leaf recreate-remaining-time { + type uint32; + units "second"; + description + "Time Remaining in Recreate Timer (seconds)"; + } + leaf source-address { + type inet:ipv4-address; + description + "Backup's source"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Backup's destination"; + } + leaf general-status { + type Mpls-te-tunnel-state; + description + "Backup's general status"; + } + leaf connection-status { + type Mpls-te-tunnel-state; + description + "Backup's connection's status"; + } + leaf output-interface-name { + type string; + description + "The output intf of the tunnel"; + } + leaf bandwidth-pool-type { + type Mpls-te-bw-pool; + description + "Bandwidth pool type"; + } + leaf bandwidth-limit-type { + type Mpls-te-bw-limit; + description + "Bandwidth limit type"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth (kbps)"; + } + leaf tunnel-instance { + type uint32; + description + "Tunnel instance"; + } + leaf in-use-bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth currently in use (kbps)"; + } + leaf soft-preempted-in-use-bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth soft preempted and rerouted over the + backup(kbps)"; + } + leaf ls-ps { + type uint32; + description + "Number of LSPs"; + } + leaf s2l-families { + type uint32; + description + "Number of S2L Families"; + } + leaf s2-ls { + type uint32; + description + "Number of P2MP S2Ls"; + } + leaf frr-active-ls-ps { + type uint32; + description + "Number of LSPs in FRR active state"; + } + leaf frr-active-soft-preempted-ls-ps { + type uint32; + description + "Number of soft preempted LSPs routed over backup"; + } + } + + grouping TE-TUNNEL-AUTOROUTE-DEST { + description + "TE TUNNEL AUTOROUTE DEST"; + leaf prefix-address { + type inet:ipv4-address; + description + "PrefixAddress"; + } + leaf prefix-length { + type uint32; + description + "PrefixLength"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf install-time { + type uint32; + description + "InstallTime"; + } + leaf interface-handle { + type xr:Interface-name; + description + "InterfaceHandle"; + } + } + + grouping TE-TUNNEL-AUTOROUTE-DESTINATIONS { + description + "TE TUNNEL AUTOROUTE DESTINATIONS"; + leaf tunnel-id-xr { + type uint16; + description + "tunnel id xr"; + } + leaf tunnel-name { + type string; + description + "Tunnel name"; + } + list tunnel-autoroute-dest { + description + "tunnel autoroute dest"; + uses TE-TUNNEL-AUTOROUTE-DEST; + } + } + + grouping TE-SYNC-STATUS-MASTER-INFO { + description + "Master Sync status information"; + container idt { + description + "Sync status IDT information"; + uses TE-SYNC-IDT-INFO; + } + } + + grouping TE-S2L-PENDING-INFO { + description + "Sync pending S2L information"; + leaf pending-reason { + type Te-sync-pending-reason; + description + "Pending reason"; + } + leaf signaled-name { + type string; + description + "Signaled name"; + } + leaf s2l-role { + type Mpls-te-tunnel-role; + description + "S2L role"; + } + } + + grouping TE-VIF-PENDING-INFO { + description + "Sync pending VIF information"; + leaf pending-reason { + type Te-sync-pending-reason; + description + "Pending reason"; + } + leaf tunnel-name { + type string; + description + "Tunnel name"; + } + } + + grouping TE-IDT-STATUS { + description + "IDT status information"; + leaf is-ready-status { + type boolean; + description + "Ready status"; + } + leaf reason { + type Te-sync-not-ready-reason; + description + "Not ready reason"; + } + leaf idt-start-time { + type uint32; + units "second"; + description + "IDT start timestampe in seconds"; + } + leaf idt-end-time { + type uint32; + units "second"; + description + "IDT end timestampe in seconds"; + } + leaf declare-time { + type uint32; + units "second"; + description + "Declare ready timestampe in seconds"; + } + leaf withdraw-time { + type uint32; + units "second"; + description + "Withdraw ready timestampe in seconds"; + } + } + + grouping TE-SYNC-IDT-INFO { + description + "Sync Status information"; + container current-idt-info { + description + "Current IDT information"; + uses TE-IDT-STATUS; + } + container previous-idt-status { + description + "Previous IDT information"; + uses TE-IDT-STATUS; + } + } + + grouping TE-SYNC-STATUS-SLAVE-INFO { + description + "Sync status slave Information"; + container idt { + description + "Sync status IDT information"; + uses TE-SYNC-IDT-INFO; + } + leaf insync-tunnels { + type uint32; + description + "Tunnels in sync"; + } + leaf insync-sub-ls-ps { + type uint32; + description + "Sub-LSPs in sync"; + } + leaf pending-tunnels { + type uint32; + description + "Tunnels in sync pending"; + } + leaf pending-sub-ls-ps { + type uint32; + description + "Sub-LSPs in sync pending"; + } + list vif-pending { + description + "Pending tunnels details"; + uses TE-VIF-PENDING-INFO; + } + list s2l-pending { + description + "Pending sub-LSPs details"; + uses TE-S2L-PENDING-INFO; + } + } + + grouping TE-SYNC-STATUS-INFO { + description + "Sync information for the NSR and ISSU based on + master or slave role"; + container slave-sync-information { + when "../sync-show-type = 'slave-sync-status-show'" { + description + "../SyncShowType = 'SlaveSyncStatusShow'"; + } + description + "Slave sync information"; + uses TE-SYNC-STATUS-SLAVE-INFO; + } + container master-sync-information { + when "../sync-show-type = 'master-sync-status-show'" { + description + "../SyncShowType = 'MasterSyncStatusShow'"; + } + description + "Master sync information"; + uses TE-SYNC-STATUS-MASTER-INFO; + } + leaf sync-show-type { + type Te-sync-status-show; + description + "SyncShowType"; + } + } + + grouping TE-NSR-ISSU-STATUS-INFO { + description + "NSR/ISSU sync status information"; + container sync-status-information { + description + "Sync information for the NSR and ISSU"; + uses TE-SYNC-STATUS-INFO; + } + leaf role { + type Te-proc-role; + description + "Process role"; + } + } + + grouping MPLS-TE-DSTE-CLASS { + description + "A DSTE class"; + leaf class-number { + type uint8; + description + "The DS-TE class number from 0 to 7"; + } + leaf class-type { + type uint8; + description + "The class type of the TE class"; + } + leaf priority { + type uint8; + description + "The priority of the TE class"; + } + leaf class-status { + type Mpls-te-dste-class-status; + description + "The status of the TE class"; + } + } + + grouping MPLS-TE-DSTE-CLASSES { + description + " A set of DSTE classes"; + list te-class { + max-elements "8"; + description + "te class"; + uses MPLS-TE-DSTE-CLASS; + } + } + + grouping MPLS-TE-TOPO-SRLG-LINK { + description + "SRLG link address data"; + container link-address-generic { + description + "Link address"; + uses TE-ADDR; + } + leaf link-address { + type inet:ipv4-address; + description + "Link address"; + } + leaf te-router-id { + type inet:ipv4-address; + description + "Link TE router-id"; + } + } + + grouping MPLS-TE-TOPO-SRLG-AREA { + description + "A MPLS TE topology link in a SRLG"; + leaf igp-type { + type Igp-protocol; + description + "IGP type"; + } + leaf igp-instance { + type string; + description + "IGP Instance name"; + } + leaf igp-area { + type uint32; + description + "IGP Area ID"; + } + leaf igp-area-format { + type Igp-ospf-area-format; + description + "IGP-area format"; + } + list srlg-link { + description + "Links in this SRLG/area"; + uses MPLS-TE-TOPO-SRLG-LINK; + } + } + + grouping MPLS-TE-TOPO-SRLG { + description + "A SRLG entry in the MPLS TE topology"; + leaf srlg-name { + type string; + description + "SRLG name"; + } + leaf admin-weight { + type uint32; + description + "The admin weight that is added to the link if + the SRLG is shared with the protected link"; + } + list srlg-areas { + description + "Topology areas in this SRLG"; + uses MPLS-TE-TOPO-SRLG-AREA; + } + } + + grouping MPLS-TE-TOPO-CFG-SRLG-LINK { + description + "A link associated with configured SRLG"; + leaf local-address { + type inet:ipv4-address; + description + "Local address"; + } + leaf remote-address { + type inet:ipv4-address; + description + "Remote address"; + } + } + + grouping MPLS-TE-TOPO-CFG-SRLG { + description + "A configured SRLG entry"; + leaf srlg-number-xr { + type uint32; + description + "SRLG number"; + } + leaf srlg-name { + type string; + description + "SRLG name"; + } + leaf admin-weight { + type uint32; + description + "The admin weight that is added to the link if + the SRLG is shared with the protected link"; + } + leaf is-admin-weight-configured { + type boolean; + description + "Set to TRUE if the admin weight is explicitely + configured"; + } + list srlg-link { + description + "Link associated with the SRLG"; + uses MPLS-TE-TOPO-CFG-SRLG-LINK; + } + } + + grouping MPLS-TE-TOPOLOGY-PATH-BAG { + description + "MPLS TE Topology Path Information"; + container affinity { + description + "Affinity"; + uses MPLS-TE-TUNNELS-AFFINITY-INFO; + } + leaf tunnel-id-xr { + type uint32; + description + "The tunnel ID to which this path belong"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "The path's destination"; + } + leaf is-partial-path { + type boolean; + description + "TRUE if path is partial"; + } + leaf is-full-path { + type boolean; + description + "TRUE if path is full"; + } + leaf is-topology-checked { + type boolean; + description + "TRUE if checking the topology is enabled"; + } + leaf is-segment-routing-db-checked { + type boolean; + description + "TRUE if checking the Segment-Routing DB is + enabled"; + } + leaf requested-bandwidth { + type uint64; + description + "The path's requested bandwidth"; + } + leaf bandwidth-type { + type uint64; + description + "The path's bandwidth type"; + } + leaf mininum-bandwidth { + type uint64; + description + "The path's minimum bandwidth"; + } + leaf accumulated-admin-weight { + type uint64; + description + "The path's accumulated admin weight"; + } + leaf setup-priority-xr { + type uint32; + description + "The path's setup priority"; + } + leaf hold-priority-xr { + type uint32; + description + "The path's hold priority"; + } + leaf node-hop-count { + type uint8; + description + "Path hop count"; + } + leaf exclude-srlg-address { + type inet:ipv4-address; + description + "The Exclude SRLG IP Addr"; + } + list hop { + description + "The path's array of hops"; + leaf entry { + type inet:ipv4-address; + description + "The path's array of hops"; + } + } + list shared-risk-link-group { + description + "The path's excluded srlg groups"; + uses MPLS-SRLG-INFO; + } + list sr-segment { + description + "The path's array of Segment-Routing segments"; + uses TE-S2L-SR-PATH-HOP; + } + } + + grouping MPLS-TE-AREA-INFO { + description + "Global information for an MPLS-TE area"; + container local-sid-and-srbg { + description + "Local SID and SRBG"; + uses TE-SR-NODE-INFO; + } + leaf protocol { + type Igp-protocol; + description + "Protocol used"; + } + leaf node-id { + type string; + description + "The node's IGP id"; + } + leaf area-id { + type string; + description + "The area's id"; + } + } + + grouping MPLS-TE-TOPOLOGY-GLOBAL-INFO-BAG { + description + "MPLS TE Topology Global Information"; + leaf hold-down-interval { + type uint32; + units "second"; + description + "Interval in seconds to hold down a neighbor + after a signalling error"; + } + leaf link-add-remove-count { + type uint32; + description + "Link add/remove counter"; + } + leaf local-model-id { + type uint32; + description + "Local BC Model ID"; + } + list areas { + description + "Information for areas"; + uses MPLS-TE-AREA-INFO; + } + } + + grouping MPLS-TE-LSP-WRAP-PROTECTION-BAG { + description + "MPLS TE LSP Wrap Protected LSP Information"; + leaf source-address-xr { + type inet:ipv4-address; + description + "Source"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "Destination"; + } + leaf tunnel-id-xr { + type uint16; + description + "Tunnel ID"; + } + leaf extended-tunnel-id-xr { + type inet:ipv4-address; + description + "Extended Tunnel ID"; + } + leaf tunnel-name { + type string; + description + "Tunnel Name"; + } + leaf tunnel-instance { + type uint32; + description + "Tunnel instance"; + } + leaf lsp-wrap-protection-enable { + type boolean; + description + "LSP Wrap protection enabled"; + } + leaf lsp-wrap-protection-label { + type uint32; + description + "LSP Wrap Merge Point Label"; + } + leaf reverse-egress-interface { + type string; + description + "Reverse Egress Interface"; + } + leaf reverse-lsp-label { + type uint32; + description + "Reverse LSP label"; + } + leaf lsp-wrap-protection-state { + type Mpls-te-lsp-wrap-state; + description + "LSP wrap protection state"; + } + leaf sub-group-original-id { + type inet:ipv4-address; + description + "S2L Sub-Group Originator ID"; + } + leaf sub-group-id-xr { + type uint16; + description + "S2L Sub-Group ID"; + } + leaf p2mp-id-xr { + type uint32; + description + "S2L P2MP ID"; + } + } + + grouping TE-NEXTHOP-PATH { + description + "TE NEXTHOP PATH"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf address { + type inet:ipv4-address; + description + "Address"; + } + leaf abr-address { + type inet:ipv4-address; + description + "ABRAddress"; + } + } + + grouping TE-RIB-ROUTE-BAG { + description + "TE RIB ROUTE BAG"; + leaf route-protocol-name { + type string; + description + "RouteProtocolName"; + } + leaf route-distance { + type uint32; + description + "RouteDistance"; + } + leaf route-metric { + type uint32; + description + "RouteMetric"; + } + leaf last-update-time { + type uint32; + description + "LastUpdateTime"; + } + leaf is-registered { + type boolean; + description + "IsRegistered"; + } + leaf is-stale { + type boolean; + description + "IsStale"; + } + leaf is-default { + type boolean; + description + "IsDefault"; + } + leaf is-connected { + type boolean; + description + "IsConnected"; + } + leaf is-populated { + type boolean; + description + "IsPopulated"; + } + leaf route-type { + type uint16; + description + "RouteType"; + } + list next-hop-path { + description + "next hop path"; + uses TE-NEXTHOP-PATH; + } + } + + grouping TE-TUNNEL-PATH { + description + "TE TUNNEL PATH"; + leaf tunnel-id { + type uint16; + description + "TunnelID"; + } + leaf interface-handle { + type xr:Interface-name; + description + "InterfaceHandle"; + } + leaf install-time { + type uint32; + description + "InstallTime"; + } + leaf installed-metric { + type uint32; + description + "InstalledMetric"; + } + } + + grouping TE-NEXTHOP-ROUTE { + description + "TE NEXTHOP ROUTE"; + container active-route { + description + "active route"; + uses TE-RIB-ROUTE-BAG; + } + container backup-route { + description + "backup route"; + uses TE-RIB-ROUTE-BAG; + } + leaf prefix-address-xr { + type inet:ipv4-address; + description + "prefix address xr"; + } + leaf prefix-length-xr { + type uint32; + description + "prefix length xr"; + } + leaf exact-match { + type boolean; + description + "ExactMatch"; + } + leaf create-time { + type uint32; + description + "CreateTime"; + } + leaf last-used-time { + type uint32; + description + "LastUsedTime"; + } + leaf expire-time { + type uint32; + description + "ExpireTime"; + } + leaf installed-tunnel-path-num { + type uint32; + description + "InstalledTunnelPathNum"; + } + list tunnel-path { + description + "tunnel path"; + uses TE-TUNNEL-PATH; + } + } + + grouping TE-SH-IGP-AREA-STATS { + description + "Statistics for an IGP-area"; + leaf area-adjacency-request-messages { + type uint32; + description + "Number of adjacency request messages sent"; + } + leaf area-adjacency-announce-messages { + type uint32; + description + "Number of adjacency announcement messages + received"; + } + leaf area-flood-messages { + type uint32; + description + "Number of local LSA floods sent"; + } + leaf area-lsa-announce-messages { + type uint32; + description + "Number of LSA announcement messages received"; + } + leaf area-lsa-fragment-announce-messages { + type uint32; + description + "Number of LSA fragment announcement messages + received"; + } + leaf area-lsa-delete-messages { + type uint32; + description + "Number of LSA delete messages received"; + } + leaf area-lsa-fragment-delete-messages { + type uint32; + description + "Number of LSA fragment delete messages received"; + } + leaf area-tunnel-announce-messages { + type uint32; + description + "Number of tunnel announcement messages sent"; + } + } + + grouping TE-SH-IGP-AREA-ACTIVE { + description + "Data relating to an active IGP area"; + container area-statistics { + description + "Area communication statistics"; + uses TE-SH-IGP-AREA-STATS; + } + leaf interfaces-count { + type uint32; + description + "Number of interfaces running over this area"; + } + leaf link-idt-received { + type boolean; + description + "Flag to indicate IDT for link adjacencies was + received"; + } + leaf topology-idt-received { + type boolean; + description + "Flag to indicate IDT topology was received"; + } + leaf sr-strict { + type boolean; + description + "Flag to indicate if the area is SR strict"; + } + leaf p2p-heads-count { + type uint32; + description + "Number of p2p tunnel heads whose path was + calculated over this area"; + } + leaf p2p-autoroute-announced-count { + type uint32; + description + "Number of p2p tunnel heads which have been + autoroute-announced into this area"; + } + leaf p2p-forwarding-adjacency-count { + type uint32; + description + "Number of p2p tunnel heads which have been + announced as forwarding adjacencies in this area"; + } + leaf p2mp-destination-count { + type uint32; + description + "Number of P2MP destinations whose path was + calculated over this area"; + } + leaf tunnel-loose-hops { + type uint32; + description + "Number of tunnels with a loose hop ERO expanded + in this area"; + } + } + + grouping TE-SH-IGP-AREA { + description + "An IGP area"; + container active-data { + description + "Data which applies only to an active area"; + uses TE-SH-IGP-AREA-ACTIVE; + } + leaf area-index { + type uint32; + description + "Internal area index"; + } + leaf area-number { + type uint32; + description + "Area number"; + } + leaf area-format { + type Igp-ospf-area-format; + description + "IGP Area Format"; + } + leaf is-config-ready { + type boolean; + description + "Indicates whether or not the area is correctly + configured under the IGP submode to run TE"; + } + } + + grouping TE-SH-IGP { + description + "An IGP instance"; + leaf igp-type { + type Igp-protocol; + description + "IGP type"; + } + leaf instance-name { + type string; + description + " The IGP instance name"; + } + leaf igp-system-id { + type string; + description + " The IGP instance's system/router-id; interpret + appropriately depending on IGP type"; + } + leaf configured-te-router-id { + type inet:ipv4-address; + description + "Configured TE router-id"; + } + leaf global-router-id { + type inet:ipv4-address; + description + "Global router-id"; + } + leaf globall-router-id-optical { + type inet:ipv4-address; + description + "Global router-id for GMPLS (optical TE)"; + } + leaf in-use-te-router-id { + type inet:ipv4-address; + description + "TE router-id in use"; + } + leaf is-connection-up { + type boolean; + description + "Flag to indicate whether the IGP connection is + open or not"; + } + leaf connection-up-count { + type uint32; + description + "Number of times IGP connection has gone up"; + } + leaf connection-down-count { + type uint32; + description + "Number of times IGP connection has gone down"; + } + list secondary-router-id { + description + "Secondary router-ids"; + leaf entry { + type inet:ipv4-address; + description + "Secondary router-ids"; + } + } + list area { + description + "IGP area information"; + uses TE-SH-IGP-AREA; + } + } + + grouping MPLS-TE-FWD-ADJ-INFO { + description + "A forwarding-adjacency"; + leaf tunnel-name { + type string; + description + "The tunnel name"; + } + leaf traffic-share { + type uint32; + description + "Traffic Share"; + } + leaf hold-time { + type uint32; + units "second"; + description + "Hold time in seconds"; + } + leaf is-adjacency-up { + type boolean; + description + "True if adj is up"; + } + list ig-ps { + description + "List of IGPs to which it is announced"; + uses MPLS-TE-AREA-AFI-INFO; + } + } + + grouping MPLS-TE-FWD-ADJ-BAG { + description + " A list of forwarding-adjacencies"; + leaf adjacencies { + type uint32; + description + "Number of Forwarding Adjacencies"; + } + leaf ipv6-adjacencies { + type uint32; + description + "Number of IPv6 Forwarding Adjacencies"; + } + leaf destination-address-xr { + type inet:ipv4-address; + description + "The tunnel destination"; + } + list forward-adjacency { + description + "Forwarding-adjacency list"; + uses MPLS-TE-FWD-ADJ-INFO; + } + } + + grouping MPLS-TE-AUTOTUN-BACKUP-CONFIG-INFO { + description + "Auto-tunnel backup feature configuration + information"; + leaf is-configured { + type boolean; + description + "Indicate if auto-tunnel bacukp feature is + configured "; + } + leaf interface-count { + type uint32; + description + "Number of TE link interfaces with auto-tunnel + backup configured"; + } + leaf unused-removal-timeout-configured { + type uint32; + units "second"; + description + "Configured value of unused removal timer in + seconds"; + } + leaf min-tunnel-id { + type uint16; + description + "Lower bound of configured tunnel ID range"; + } + leaf max-tunnel-id { + type uint16; + description + "Upper bound of configured tunnel ID range"; + } + } + + grouping MPLS-TE-AUTOTUN-BACKUP-SUMMARY-INFO { + description + "Autotunnel backup summary information"; + leaf autobackups { + type uint32; + description + "Total number of autobackup tunnels"; + } + leaf up-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are up"; + } + leaf down-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are down"; + } + leaf unused-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are + unused"; + } + leaf next-hop-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are NHOP"; + } + leaf next-next-hop-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are + NNHOP"; + } + leaf srlg-strict-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are + using SRLG strict"; + } + leaf srlg-preferred-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are + using SRLG preferred"; + } + leaf srlg-weighted-autobackups { + type uint32; + description + "Total number of autobackup tunnels that are + using weighted SRLG"; + } + leaf bandwidth-protection-autobackups { + type uint32; + description + "Total number of autobackup tunnels with + bandwidth protection"; + } + leaf next-hop-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NHOP and no SRLG"; + } + leaf next-next-hop-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NNHOP and no SRLG"; + } + leaf next-hop-srlg-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NHOP and SRLG"; + } + leaf next-next-hop-srlg-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NNHOP and SRLG"; + } + leaf next-hop-bw-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NHOP and BW"; + } + leaf next-next-hop-bw-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NNHOP and BW"; + } + leaf next-hop-bwsrlg-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NHOP, BW and SRLG"; + } + leaf next-next-hop-bwsrlg-autobackup-protected-ls-ps { + type uint32; + description + "Total number of autobackup protected LSPs with + NNHOP, BW and SRLG"; + } + leaf next-hop-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NHOP and no SRLG"; + } + leaf next-next-hop-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NNHOP and no SRLG"; + } + leaf next-hop-srlg-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NHOP and SRLG"; + } + leaf next-next-hop-srlg-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NNHOP and SRLG"; + } + leaf next-hop-bw-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NHOP and BW and no SRLG"; + } + leaf next-next-hop-bw-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NNHOP and BW and no SRLG"; + } + leaf next-hop-bwsrlg-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NHOP and BW and SRLG"; + } + leaf next-next-hop-bwsrlg-autobackup-protected-s2l-families { + type uint32; + description + "Total number of autobackup protected S2L + Families with NNHOP and BW and SRLG"; + } + leaf next-hop-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NHOP and no SRLG"; + } + leaf next-next-hop-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NNHOP and no SRLG"; + } + leaf next-hop-srlg-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NHOP and SRLG"; + } + leaf next-next-hop-srlg-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NNHOP and SRLG"; + } + leaf next-hop-bw-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NHOP and BW and no SRLG"; + } + leaf next-next-hop-bw-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NNHOP and BW and no SRLG"; + } + leaf next-hop-bwsrlg-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NHOP and BW and SRLG"; + } + leaf next-next-hop-bwsrlg-autobackup-protected-s2-ls { + type uint32; + description + "Total number of autobackup protected S2Ls with + NNHOP and BW and SRLG"; + } + } + + grouping MPLS-TE-AUTOTUN-BACKUP-TUNNEL-INFO { + description + "Auto-tunnel backup brief tunnel information"; + leaf tunnel-name { + type string; + description + "Tunnel Name"; + } + leaf operational-status { + type Mpls-te-tunnel-state; + description + "Tunnel operational status"; + } + leaf srlg-mode { + type Auto-backup-srlg-mode; + description + "SRLG exclude mode for this auto-tunnel backup"; + } + leaf atb-protection-type { + type Auto-backup-protection; + description + "Type of protection offered by this auto-tunnel + backup"; + } + leaf protected-flows { + type uint32; + description + "Number of protected flows"; + } + leaf protected-interface-name { + type string; + description + "Interface protected by this auto-tunnel backup"; + } + leaf protected-router-id { + type inet:ipv4-address; + description + "Router ID of node protected by this auto-tunnel + backup"; + } + leaf bandwidth-protection { + type boolean; + description + "Tunnel provides bandwidth protection"; + } + } + + grouping MPLS-TE-AUTOTUN-MESH-ONEHOP-SUMMARY-INFO { + description + "Autotunnel mesh onehop summary information"; + leaf auto-mesh-one-hop-tunnels { + type uint32; + description + "Total number of automesh onehop tunnels"; + } + leaf up-auto-mesh-one-hop-tunnels { + type uint32; + description + "Total number of automesh onehop tunnels that are + up"; + } + leaf down-auto-mesh-one-hop-tunnels { + type uint32; + description + "Total number of automesh onehop tunnels that are + down"; + } + leaf frr-auto-mesh-tunnels { + type uint32; + description + "Total number of automesh onehop tunnels that are + FRR enabled"; + } + leaf auto-mesh-one-hop-groups { + type uint32; + description + "Total number of automesh onehop mesh-groups"; + } + leaf auto-mesh-one-hop-destinations { + type uint32; + description + "Total number of automesh onehop destinations"; + } + } + + grouping MPLS-TE-AUTOMESH-ONEHOP-TUNNEL { + description + "TE Automesh Onehop Tunnel"; + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination Address"; + } + leaf tunnel-lspid { + type uint16; + description + "LSP ID"; + } + leaf mesh-group-id { + type uint32; + description + "Meshgroup ID"; + } + leaf tunnel-state { + type Mpls-te-tunnel-state; + description + "Tunnel state"; + } + } + + grouping MPLS-TE-AUTOMESH-ONEHOP-INTERFACE { + description + "TE Automesh Onehop Interface"; + leaf interface-name-xr { + type string; + description + "Interface name"; + } + list tunnel { + description + "Onehop tunnels created for this interface"; + uses MPLS-TE-AUTOMESH-ONEHOP-TUNNEL; + } + } + + grouping MPLS-TE-AUTOTUN-MESH-CONFIG-INFO { + description + "Auto-tunnel mesh feature configuration + information"; + leaf is-configured { + type boolean; + description + "Indicate if auto-tunnel mesh feature is + configured "; + } + leaf unused-removal-timeout-configured { + type uint32; + units "second"; + description + "Configured value of unused removal timer in + seconds"; + } + leaf min-tunnel-id { + type uint16; + description + "Lower bound of configured tunnel ID range"; + } + leaf max-tunnel-id { + type uint16; + description + "Upper bound of configured tunnel ID range"; + } + } + + grouping MPLS-TE-AUTOTUN-MESH-SUMMARY-INFO { + description + "Autotunnel mesh summary information"; + leaf auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels"; + } + leaf up-auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels that are up"; + } + leaf down-auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels that are down"; + } + leaf frr-auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels that are FRR + enabled"; + } + leaf auto-mesh-groups { + type uint32; + description + "Total number of automesh mesh-groups"; + } + leaf auto-mesh-destinations { + type uint32; + description + "Total number of automesh destinations"; + } + } + + grouping MPLS-TE-MESHGROUP-DEST { + description + "TE Meshgroup destination info"; + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf operational-status { + type Mpls-te-tunnel-state; + description + "Tunnel operational status"; + } + leaf remaining-time { + type uint32; + units "second"; + description + "Remaining time for unused timer in seconds"; + } + } + + grouping MPLS-TE-MESHGROUP { + description + "TE Meshgroup info"; + leaf mesh-group-id-xr { + type uint32; + description + "Meshgroup ID"; + } + leaf is-meshgroup-disabled { + type boolean; + description + "Is the meshgroup disabled"; + } + leaf attribute-set-name { + type string; + description + "Attribute set name"; + } + leaf is-attribute-set-configured { + type boolean; + description + "Is any attribute-set associated to this + meshgroup"; + } + leaf is-attribute-set-in-db { + type boolean; + description + "Flag to indicate the existence of attribute set + found in database"; + } + leaf destination-list-name { + type string; + description + "Destination List name"; + } + leaf is-destination-list-configured { + type boolean; + description + "Is any destiantion-list associated to this + meshgroup"; + } + leaf destination-list-type { + type Te-acl; + description + "Type of the destlist"; + } + leaf remaining-time { + type uint32; + units "second"; + description + "Remaining time for recreate timer in seconds"; + } + leaf auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels"; + } + leaf auto-mesh-total-destinations { + type uint32; + description + "Total number of destinations"; + } + leaf up-auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels that are up"; + } + leaf down-auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels that are down"; + } + leaf frr-auto-mesh-tunnels { + type uint32; + description + "Total number of automesh tunnels that are FRR + enabled"; + } + leaf auto-mesh-group-type { + type Te-meshgroup; + description + "Meshgroup Type"; + } + list destination { + description + "List of destinations for this meshgroup"; + uses MPLS-TE-MESHGROUP-DEST; + } + } + + grouping MPLS-TE-AUTOTUN-PCC-SUMMARY-INFO { + description + "Stateful PCE client auto-tunnel summary + information"; + leaf pcc-auto-tunnel { + type uint32; + description + "Total number of stateful PCE client auto-tunnels"; + } + leaf up-pcc-auto-tunnels { + type uint32; + description + "Total number of stateful PCE client auto-tunnels + that are up"; + } + leaf down-pcc-auto-tunnels { + type uint32; + description + "Total number of stateful PCE client auto-tunnels + that are down"; + } + } + + grouping MPLS-TE-P2MP-TIMER-B { + description + "Description of a P2MP timer"; + leaf timer-type { + type Mpls-te-p2mp-timer; + description + "Timer Type"; + } + leaf timer-name { + type string; + description + "Timer Name"; + } + leaf start-time { + type uint32; + units "second"; + description + "Date when timer was last started in seconds"; + } + leaf expiry-time { + type uint32; + units "second"; + description + "Date when the timer last expired in seconds"; + } + leaf stop-time { + type uint32; + units "second"; + description + "Date when the timer was last stopped in seconds"; + } + leaf duration { + type uint32; + units "second"; + description + "The expiry delay in seconds"; + } + leaf is-running { + type boolean; + description + "True if the timer is running"; + } + } + + grouping MPLS-TE-P2MP-TIMERS-B { + description + "Description of P2MP timers"; + list p2mp-timer { + max-elements "30"; + description + "Description of all P2MP timers"; + uses MPLS-TE-P2MP-TIMER-B; + } + } + + grouping MPLS-TE-AREA-AFI-INFO { + description + "IGP area information including AFI"; + leaf igp-area-id { + type string; + description + "The IGP Instance and Area ID"; + } + leaf afi { + type Mpls-te-afi; + description + "AFI"; + } + } + + grouping MPLS-TE-AUTOROUTE-BAG { + description + "MPLS TE Autoroute Information"; + leaf tunnel-name { + type string; + description + "The tunnel name"; + } + leaf tunnel-sig-name { + type string; + description + "The tunnel signaled-name"; + } + leaf tunnel-loadshare { + type uint32; + description + "Tunnel loadshare"; + } + leaf announce-type { + type Mpls-te-tunnel-announce; + description + "Announcement type"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "The tunnel destination"; + } + leaf mode { + type Igpte-aa-metric-mode; + description + "Autoroute mode"; + } + leaf igp-metric { + type int32; + description + "IGP metric"; + } + leaf hold-time { + type uint32; + units "second"; + description + "Hold time in seconds"; + } + leaf area-format { + type Igp-ospf-area-format; + description + "IGP Area Format"; + } + leaf is-auto-mesh-aa { + type boolean; + description + "True if this is auto-tunnel mesh AA"; + } + leaf is-sr { + type boolean; + description + "True if this is a segment routing tunnel"; + } + leaf is-sr-strict { + type boolean; + description + "True if this is a strict SID SR tunnel"; + } + leaf mesh-group-idaa { + type uint32; + description + "MeshGroup ID for AA"; + } + leaf is-exclude-segment-routing { + type boolean; + description + "True if autoroute-announce has exclude + segment-routing option"; + } + list ig-ps { + description + "List of IGPs to which it is announced"; + uses MPLS-TE-AREA-AFI-INFO; + } + } + + grouping MPLS-TE-ANNOUNCEMENT-DEST-BAG { + description + "The summary info of announcements for a + destination and an IGP area"; + leaf igp-type { + type Igp-protocol; + description + "IGP type"; + } + leaf igp-instance { + type string; + description + "IGP Instance name"; + } + leaf igp-area { + type uint32; + description + "IGP Area ID"; + } + leaf destination { + type inet:ipv4-address; + description + "Destination"; + } + leaf announced-tunnels-count { + type uint16; + description + "The number of announced tunnels"; + } + leaf autorouted-tunnels-count { + type uint16; + description + "The number of tunnels that are announced as + shortcuts"; + } + leaf forwarding-adjacency-tunnels-count { + type uint16; + description + "The number of tunnels that are announced as + forwarding adjacencies"; + } + leaf area-format { + type Igp-ospf-area-format; + description + "The format for the area: IPv4 address or a + positive integer"; + } + list total-tunnel { + description + "Announced tunnels for this destination"; + uses MPLS-TE-AUTOROUTE-BAG; + } + } + + grouping MPLS-TE-TOPOLOGY-LINK-LOSS { + description + "MPLS TE Link Loss Attribute"; + leaf anomalous-bit { + type boolean; + description + "Anomalous (A) Bit"; + } + leaf loss-value { + type uint32; + description + "Loss Value"; + } + } + + grouping MPLS-TE-TOPOLOGY-LINK-MIN-MAX-DELAY { + description + "MPLS TE Link Loss Attribute"; + leaf anomalous-bit { + type boolean; + description + "Anomalous (A) Bit"; + } + leaf minimum-delay { + type uint32; + description + "Mimimum measured link delay value in usec"; + } + leaf maximum-delay { + type uint32; + description + "Maximum measured link delay value in usec"; + } + } + + grouping MPLS-TE-TOPOLOGY-LINK-BW-STD-DETAIL { + description + "Detailed DSTE bandwidth information for a link"; + list topo-link-std-bw-allocated { + max-elements "8"; + description + "Link's allocated bandwidth per class"; + leaf entry { + type uint32; + description + "Link's allocated bandwidth per class"; + } + } + list topo-link-std-bw-available { + max-elements "8"; + description + "Link's available bandwidth per class"; + leaf entry { + type uint32; + description + "Link's available bandwidth per class"; + } + } + } + + grouping MPLS-TE-TOPOLOGY-LINK-BW-STD { + description + "IETF_standard bandwidth information for a link + belonging to a node in the MPLS TE topology"; + container topo-link-std-bw-detail { + description + "Detailed bandwidth information for this link"; + uses MPLS-TE-TOPOLOGY-LINK-BW-STD-DETAIL; + } + leaf topo-link-std-bw-physical { + type uint32; + description + "The link's physical bandwidth"; + } + leaf topo-link-std-bw-res-max { + type uint32; + description + "The link's maximum reservable bandwidth"; + } + leaf topo-link-std-bw-res-pool0 { + type uint32; + description + "The link's reservable BC0 bandwidth"; + } + leaf topo-link-std-bw-res-pool1 { + type uint32; + description + "The link's reservable BC1 bandwidth"; + } + } + + grouping MPLS-TE-TOPOLOGY-LINK-BW-PRESTD-DETAIL { + description + "Detailed pre-standard bandwidth information for a + link"; + list topology-link-prestandard-bandwidth-allocated { + max-elements "8"; + description + "Link's allocated bandwidth at priority levels + + (priority 0 to priority 7)"; + leaf entry { + type uint32; + description + "Link's allocated bandwidth at priority levels + + (priority 0 to priority 7)"; + } + } + list topology-link-prestandard-bandwidth-available-global { + max-elements "8"; + description + "Link's available global-pool bandwidth at + + priority levels (priority 0 to priority 7)"; + leaf entry { + type uint32; + description + "Link's available global-pool bandwidth at + + priority levels (priority 0 to priority 7)"; + } + } + list topology-link-prestandard-bandwidth-available-subpool { + max-elements "8"; + description + "Link's available sub-pool bandwidth at priority + + levels (priority 0 to priority 7)"; + leaf entry { + type uint32; + description + "Link's available sub-pool bandwidth at priority + + levels (priority 0 to priority 7)"; + } + } + } + + grouping MPLS-TE-TOPOLOGY-LINK-BW-PRESTD { + description + "Pre-standard bandwidth information for a link + belonging to a node in the MPLS TE topology"; + container topology-link-prestandard-bandwidth-detail { + description + "Detailed bandwidth information for this link"; + uses MPLS-TE-TOPOLOGY-LINK-BW-PRESTD-DETAIL; + } + leaf topology-link-prestandard-bandwidth-physical { + type uint32; + description + "The link's physical bandwidth"; + } + leaf topology-link-prestandard-bandwidth-reservation-global { + type uint32; + description + "The link's reservable global bandwidth"; + } + leaf topology-link-prestandard-bandwidth-reservation-subpool { + type uint32; + description + "The link's reservable subpool bandwidth"; + } + } + + grouping MPLS-TE-TOPOLOGY-LINK-BW { + description + "Bandwidth information for a link"; + container topology-link-bandwidth-prestandard { + when "../bandwidth-migration-mode = 'rrr-dste-mode-prestandard'" { + description + "../BandwidthMigrationMode = + 'RRR_DSTEModePrestandard'"; + } + description + "Pre-standard bandwidth information for this link"; + uses MPLS-TE-TOPOLOGY-LINK-BW-PRESTD; + } + container topology-link-bandwidth-standard { + when "../bandwidth-migration-mode = 'rrr-dste-mode-standard'" { + description + "../BandwidthMigrationMode = + 'RRR_DSTEModeStandard'"; + } + description + "IETF-standard bandwidth information for this + link"; + uses MPLS-TE-TOPOLOGY-LINK-BW-STD; + } + leaf bandwidth-migration-mode { + type Rrr-dste-migration-mode; + description + "BandwidthMigrationMode"; + } + } + + grouping MPLS-TE-TOPOLOGY-LINK { + description + "A link belonging to a node in the MPLS TE + topology"; + container topology-link-bandwidth { + description + "Bandwidth information for this link"; + uses MPLS-TE-TOPOLOGY-LINK-BW; + } + container odu-link-capabilities { + description + "ODU Link Capabilities"; + uses ODU-LINK-CAPABILITIES; + } + container min-max-delay { + description + "Minimum and maximum measured link delay"; + uses MPLS-TE-TOPOLOGY-LINK-MIN-MAX-DELAY; + } + container loss { + description + "Link Loss"; + uses MPLS-TE-TOPOLOGY-LINK-LOSS; + } + leaf topology-link-type { + type Igp-subnet; + description + "Link type"; + } + leaf topology-link-interface-address { + type inet:ipv4-address; + description + "Link's local interface address"; + } + leaf topology-link-interface-id { + type uint32; + description + "Link's local interface ID"; + } + leaf topology-link-neighbor-address { + type inet:ipv4-address; + description + "Link's neighbor interface address"; + } + leaf topology-link-neighbor-id { + type uint32; + description + "Link's neighbor interface ID"; + } + leaf topology-link-neighbor-system-id { + type string; + description + "System id of neighbor"; + } + leaf topology-link-neighbor-node-id { + type uint32; + description + "Node id of neighbor"; + } + leaf topology-link-neighbor-generation { + type uint32; + description + "Neighbor's link version counter"; + } + leaf topology-link-fragment-id { + type uint32; + description + "Neighbor's link version counter"; + } + leaf topology-link-te-metric { + type uint32; + description + "The link's TE metric"; + } + leaf topology-link-igp-metric { + type uint32; + description + "The link's IGP metric"; + } + leaf topology-link-uni-delay { + type uint32; + description + "Unidirectional Link Delay in micro-sec"; + } + leaf topology-link-affinity-bits { + type uint32; + description + "Deprecated"; + } + leaf topology-link-switching-capability { + type uint8; + description + "The link's switching capability"; + } + leaf topology-link-encoding { + type uint8; + description + "The link's encoding"; + } + leaf topology-link-bandwidth-model { + type Igpte-lib-bw-model; + description + "The link's topology bandwidth model"; + } + leaf delay-variation { + type uint32; + description + "Delay Variation"; + } + leaf residual-bandwidth { + type uint32; + description + "Residual Bandwidth (kbytes per seconds)"; + } + leaf available-bandwidth { + type uint32; + units "byte/s"; + description + "Available Bandwidth (kbytes per second)"; + } + leaf utilized-bandwidth { + type uint32; + units "byte/s"; + description + "Utilized Bandwidth (kbytes per second)"; + } + list topology-link-extended-affinity-bit { + description + "The link's affinity bits (colors)"; + leaf entry { + type uint32; + description + "The link's affinity bits (colors)"; + } + } + list shared-risk-link-group { + description + "The link's shared risk link groups"; + uses MPLS-SRLG-INFO; + } + list adjacency-sid { + description + "Adjacency SIDs assigned for adjacency nodes"; + uses TE-SR-ADJ-SID; + } + } + + grouping MPLS-TE-TOPOLOGY-NODE { + description + "A node in the MPLS TE topology"; + container topology-node-sid-and-srbg { + description + "This node's SID and SRBG information"; + uses TE-SR-NODE-INFO; + } + leaf topology-node-te-router-id { + type inet:ipv4-address; + description + "The node's TE router-id. Not set for network + nodes"; + } + leaf topology-node-overloaded { + type boolean; + description + "Flag to indicate whether this node is overloaded"; + } + list topology-node-te-secondary-router-id { + description + "The node's TE secondary router-ids array"; + leaf entry { + type inet:ipv4-address; + description + "The node's TE secondary router-ids array"; + } + } + list topology-node-link { + description + "This node's link information"; + uses MPLS-TE-TOPOLOGY-LINK; + } + } + + grouping TE-FIB-NH-PATH-BAG { + description + "TE FIB NH PATH BAG"; + leaf interface { + type xr:Interface-name; + description + "Outgoing Interface"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next Hop Address"; + } + leaf path-id { + type uint32; + description + "Path ID"; + } + leaf backup-path-id { + type uint32; + description + "Backup Path Identifier"; + } + leaf pure-backup { + type boolean; + description + "Pure Backup"; + } + list label-stack { + description + "Outgoing Label Stack"; + leaf entry { + type uint32; + description + "Outgoing Label Stack"; + } + } + } + + grouping TE-TARGET-ADDR { + description + "TE Target Address Union"; + leaf type { + type Te-target-addr; + description + "type"; + } + leaf ip-address { + when "../type = 'te-target-type-ipv4'" { + description + "../type = 'TETargetTypeIPv4'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf label { + when "../type = 'te-target-type-label'" { + description + "../type = 'TETargetTypeLabel'"; + } + type uint32; + description + "MPLS Label"; + } + } + + grouping TE-FIB-NH-ROUTE-BAG { + description + "TE FIB NH ROUTE BAG"; + container target-address { + description + "Next Hop Target Address"; + uses TE-TARGET-ADDR; + } + leaf prefix-addr { + type inet:ipv4-address; + description + "Deprecated - replaced by TargetAddress"; + } + leaf create-time { + type uint32; + description + "Create Time"; + } + leaf last-used-time { + type uint32; + description + "Last Used Time"; + } + leaf last-update-time { + type uint32; + description + "Last Update Time"; + } + leaf expire-time { + type uint32; + description + "Expire Time"; + } + leaf is-registered { + type boolean; + description + "Is Registered"; + } + leaf is-notified { + type boolean; + description + "Is Notified"; + } + leaf is-stale { + type boolean; + description + "Is Stale"; + } + leaf route-version { + type uint64; + description + "Route version"; + } + list next-hop-path { + description + "Next Hop Paths"; + uses TE-FIB-NH-PATH-BAG; + } + } + + grouping NODE-ID { + description + "NODE ID"; + leaf node-id { + type string; + description + "Node Identifier"; + } + } + + grouping TE-SR-BACKUP-PATH { + description + "Segment-Routing backup path"; + leaf outgoing-interface { + type string; + description + "Outgoing Interface Name"; + } + leaf next-hop { + type inet:ipv4-address; + description + "Next hop"; + } + list outgoing-labels-stack { + description + "Outgoing Labels Stack"; + leaf entry { + type uint32; + description + "Outgoing Labels Stack"; + } + } + list outgoing-strict-labels-stack { + description + "Outgoing Labels Stack for Strict SPF"; + leaf entry { + type uint32; + description + "Outgoing Labels Stack for Strict SPF"; + } + } + } + + grouping TE-SR-PRIMARY-PATH { + description + "Segment-Routing primary path"; + leaf outgoing-interface { + type string; + description + "Outgoing Interface Name"; + } + leaf outgoing-label { + type uint32; + description + "Outgoing Label"; + } + leaf outgoing-strict-label { + type uint32; + description + "Outgoing Label for Strict SPF"; + } + leaf next-hop { + type inet:ipv4-address; + description + "Next hop"; + } + leaf path-id { + type uint32; + description + "Path Identifier"; + } + leaf backup-path-id { + type uint32; + description + "Backup Path Identifier"; + } + } + + grouping TE-SR-PATH { + description + "Segment-Routing path"; + container primary-path { + description + "Primary Segment-Routing Path"; + uses TE-SR-PRIMARY-PATH; + } + container backup-path { + description + "Backup Segment-Routing Path"; + uses TE-SR-BACKUP-PATH; + } + leaf has-backup-path { + type boolean; + description + "Backup Path is available"; + } + } + + grouping TE-SR-PREFIX { + description + "MPLS TE Segment-Routing Prefix information"; + container igp-area { + description + "An IGP area where the prefix belongs to"; + uses TE-SR-IGP-AREA; + } + leaf prefix-xr { + type inet:ipv4-address; + description + "Prefix"; + } + leaf prefix-length-xr { + type uint8; + description + "Length of the prefix"; + } + leaf prefix-sid { + type uint32; + description + "Segment-Routing prefix SID"; + } + leaf prefix-strict-sid { + type uint32; + description + "Segment-Routing prefix Strict SID"; + } + leaf flag-r { + type boolean; + description + "Prefix-SID subTLV R-flag"; + } + leaf flag-n { + type boolean; + description + "Prefix-SID subTLV N-flag"; + } + leaf flag-p { + type boolean; + description + "Prefix-SID subTLV P-flag"; + } + leaf flag-e { + type boolean; + description + "Prefix-SID subTLV E-flag"; + } + leaf flag-v { + type boolean; + description + "Prefix-SID subTLV V-flag"; + } + leaf flag-l { + type boolean; + description + "Prefix-SID subTLV L-flag"; + } + leaf strict-flag-p { + type boolean; + description + "Prefix-SID subTLV P-flag for strict SID"; + } + leaf strict-flag-e { + type boolean; + description + "Prefix-SID subTLV E-flag for strict SID"; + } + leaf strict-flag-v { + type boolean; + description + "Prefix-SID subTLV V-flag for strict SID"; + } + leaf strict-flag-l { + type boolean; + description + "Prefix-SID subTLV L-flag for strict SID"; + } + list sr-path { + description + "Segment-Routing paths to prefix"; + uses TE-SR-PATH; + } + list advertizing-node { + description + "Advertizing nodes"; + uses NODE-ID; + } + list strict-advertizing-node { + description + "Advertizing nodes for Strict SPF"; + uses NODE-ID; + } + } + + grouping TE-SR-ADJ-SID { + description + "A link's Segment-Routing Adjacency information"; + leaf adjacency-sid { + type uint32; + description + "The adjacency SID assigned for the topology node"; + } + leaf link-type { + type Igp-subnet; + description + "Link Type"; + } + leaf local-addr { + type inet:ipv4-address; + description + "Local Address"; + } + leaf remote-addr { + type inet:ipv4-address; + description + "Remote Address"; + } + leaf nbr-node-igpid { + type string; + description + "The neighbor node's IGP ID"; + } + leaf nbr-node-te-router-id { + type inet:ipv4-address; + description + "The neigbor node's TE router-id"; + } + leaf flag-f { + type boolean; + description + "IGP Flag F"; + } + leaf flag-b { + type boolean; + description + "IGP Flag B"; + } + leaf flag-v { + type boolean; + description + "IGP Flag V"; + } + leaf flag-l { + type boolean; + description + "IGP Flag L"; + } + leaf flag-s { + type boolean; + description + "IGP Flag S"; + } + } + + grouping TE-SR-LINK-INFO { + description + "A link belonging to a node"; + leaf topology-link-type { + type Igp-subnet; + description + "Link type"; + } + leaf topology-link-interface-address { + type inet:ipv4-address; + description + "Link's local interface address"; + } + leaf topology-link-interface-id { + type uint32; + description + "Link's local interface ID"; + } + leaf topology-link-neighbor-address { + type inet:ipv4-address; + description + "Link's neighbor interface address"; + } + leaf topology-link-neighbor-id { + type uint32; + description + "Link's neighbor interface ID"; + } + leaf topology-link-neighbor-system-id { + type string; + description + "System id of neighbor"; + } + leaf topology-link-neighbor-node-id { + type uint32; + description + "Node id of neighbor"; + } + leaf topology-link-neighbor-generation { + type uint32; + description + "Neighbor's link version counter"; + } + leaf topology-link-fragment-id { + type uint32; + description + "Neighbor's link version counter"; + } + leaf topology-link-te-metric { + type uint32; + description + "The link's TE metric"; + } + leaf topology-link-igp-metric { + type uint32; + description + "The link's IGP metric"; + } + list topology-link-extended-affinity-bit { + description + "The link's affinity bits (colors)"; + leaf entry { + type uint32; + description + "The link's affinity bits (colors)"; + } + } + list shared-risk-link-group { + description + "The link's shared risk link groups"; + uses MPLS-SRLG-INFO; + } + list adjacency-sids { + description + "Adjacency SIDs assigned for adjacency nodes"; + uses TE-SR-ADJ-SID; + } + } + + grouping TE-SR-NODE-INFO { + description + "MPLS TE Node's Segment-Routing Information"; + leaf segment-id { + type uint32; + description + "Segment-Routing Node-SID"; + } + leaf segment-id-local-absolute-value { + type uint32; + description + "Node-SID local absolute value"; + } + leaf srgb-start { + type uint32; + description + "Segment-Routring global block start value"; + } + leaf srgb-size { + type uint32; + description + "Segment-Routing global block size"; + } + } + + grouping TE-SR-NODE { + description + "MPLS TE Segment-Routing Node topology information"; + container igp-area { + description + "IGP area which this node belongs to"; + uses TE-SR-IGP-AREA; + } + container sr-node-info { + description + "Segment-Routing Node information"; + uses TE-SR-NODE-INFO; + } + leaf local-node-igp-id { + type string; + description + "The local node's IGP id formatted as string"; + } + leaf topology-node-is-router { + type boolean; + description + "TRUE if this is a router node; FALSE if it's a + network node"; + } + leaf local-node-te-router-id { + type inet:ipv4-address; + description + "The local node's TE router-id"; + } + leaf topology-node-overloaded { + type boolean; + description + "Flag to indicate whether this node is overloaded"; + } + list node-link { + description + "This node's link information"; + uses TE-SR-LINK-INFO; + } + } + + grouping TE-SR-IGP-AREA { + description + "A IGP area information for Segment-Routing"; + leaf segment-routing-enabled { + type boolean; + description + "True if the Segment-Routing is enabled in this + area"; + } + leaf strict-spf-enabled { + type boolean; + description + "True if the strict SPF is enabled in this area"; + } + leaf igp-type { + type Igp-protocol; + description + "IGP type"; + } + leaf igp-instance-xr { + type string; + description + "IGP Instance name"; + } + leaf igp-area { + type uint32; + description + "IGP Area ID"; + } + leaf igp-area-format { + type Igp-ospf-area-format; + description + "IGP-area format"; + } + } + + grouping MPLS-TE-STICKY-PATH { + description + "TE sticky path"; + leaf path-option-id { + type uint16; + description + "Path-option preference level"; + } + list path { + description + "Path ERO"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + } + + grouping MPLS-TE-TUNNEL-FLEX-INFO { + description + "TE Tunnel FlexLSP Information"; + leaf fault-ldi-lockout { + type boolean; + description + "Fault LDI Lockout"; + } + leaf fault-ldi { + type boolean; + description + "Fault LDI"; + } + leaf fault-lkr { + type boolean; + description + "Fault LKR"; + } + leaf fault-ais { + type boolean; + description + "Fault AIS"; + } + leaf fault-time { + type uint32; + description + "Fault Time"; + } + leaf fault-in-label { + type uint32; + description + "Fault In Label"; + } + leaf is-lockout { + type boolean; + description + "Lockout Status"; + } + leaf lockout-timestamp { + type uint32; + description + "The timestamp when the lockout is set"; + } + leaf lockout-lsp-id { + type uint16; + description + "The LSP ID of the locked out LSP"; + } + leaf origination { + type Flex-lsp-lockout-origination; + description + "Flex LSP Lockout Origination Source"; + } + } + + grouping TE-VIF-CONVERGENCE-INFO { + description + "TE tunnel convergence related information"; + container convergence-lsp { + description + "TE LSP convergence related information"; + uses TE-LSP-CONVERGENCE-INFO; + } + leaf is-convergence-in-progress { + type boolean; + description + "TE convergence in progress"; + } + leaf frr-trigger-time { + type uint64; + description + "FRR trigger time"; + } + leaf pcalc-complete-time { + type uint64; + units "nanosecond"; + description + "Path computation completion timestamp (clocktime + in nsecs)"; + } + leaf convergence-complete-time { + type uint64; + description + "TE convergence completion time"; + } + leaf binding-label-rewrite-time { + type uint64; + units "nanosecond"; + description + "Binding label timestamp (clocktime in nsecs)"; + } + leaf vif-creation-time { + type uint64; + units "nanosecond"; + description + "Vif creation timestamp (clocktime in nsecs)"; + } + } + + grouping MPLS-TE-TUNNELS-REVERSE-ERO-ERROR-BAG { + description + "MPLS TE Tunnel Reverse ERO Error Information"; + leaf reverse-lsp-id { + type uint16; + description + "Reverse LSP ID"; + } + leaf path-reject-reason-bw { + type boolean; + description + "Path Reject due to bw"; + } + leaf path-reject-reason-affinity { + type boolean; + description + "Path Reject due to affinity"; + } + leaf path-reject-reason-ip-addr { + type boolean; + description + "Path Reject due to IP address"; + } + leaf path-reject-reason-reverse-link { + type boolean; + description + "Path Reject due to reverse link"; + } + leaf path-reject-reason-ixcd { + type boolean; + description + "Path Reject due to IXCD"; + } + leaf path-reject-reason-holddown { + type boolean; + description + "Path Reject due to holddown"; + } + leaf path-reject-reason-exclude-node { + type boolean; + description + "Path Reject due to exclude node"; + } + leaf path-reject-reason-exclude-link { + type boolean; + description + "Path Reject due to exclude link"; + } + leaf path-reject-reason-exclude-srlg { + type boolean; + description + "Path Reject due to exclude SRLG"; + } + leaf path-reject-reason-hop-limit { + type boolean; + description + "Path Reject due to hop limit"; + } + leaf path-reject-reason-node-ol-unknown { + type boolean; + description + "Path Reject due to unknown node overload"; + } + leaf path-reject-reason-node-ol-head { + type boolean; + description + "Path Reject due to head node overload"; + } + leaf path-reject-reason-node-ol-mid { + type boolean; + description + "Path Reject due to mid node overload"; + } + leaf path-reject-reason-node-ol-tail { + type boolean; + description + "Path Reject due to head node overload"; + } + leaf path-reject-reason-reverse-bw { + type boolean; + description + "Path Reject due to reverse bw"; + } + leaf path-reject-reason-node-unreachable { + type boolean; + description + "Path Reject due to unreachable node"; + } + leaf path-option-index { + type uint16; + description + "Path Option Index"; + } + leaf path-option-type { + type Mte-path-option; + description + "Path Option Type"; + } + leaf ero-reject-reason { + type Te-rev-ero-reject-reasons; + description + "Reverse ERO Reject Reason"; + } + list path-calculation-error { + description + "Path Computation Information"; + uses MPLS-TE-P2MP-PCALC-ERROR; + } + } + + grouping MPLS-TE-TUNNEL-BIDIR-INFO { + description + "MPLS TE Tunnel Bidir Information"; + container reverse-ero-error-current { + description + "Reverse ERO Error Current LSP"; + uses MPLS-TE-TUNNELS-REVERSE-ERO-ERROR-BAG; + } + container reverse-ero-error-reopt { + description + "Reverse ERO Error Reopt LSP"; + uses MPLS-TE-TUNNELS-REVERSE-ERO-ERROR-BAG; + } + container reverse-ero-error-standby { + description + "Reverse ERO Error Standby LSP"; + uses MPLS-TE-TUNNELS-REVERSE-ERO-ERROR-BAG; + } + container reverse-ero-error-standby-reopt { + description + "Reverse ERO Error Standby Reopt LSP"; + uses MPLS-TE-TUNNELS-REVERSE-ERO-ERROR-BAG; + } + leaf reverse-bandwidth { + type uint32; + units "kbit/s"; + description + "Reverse Bandwidth value in kbps"; + } + leaf reverse-bandwidth-standby { + type uint32; + units "kbit/s"; + description + "Reverse Bandwidth value for standby in kbps"; + } + } + + grouping MPLS-TE-TUNNEL-RESTORATION-INFO { + description + "Restoration info of tunnel"; + leaf revert-option { + type Te-pnr-revert-options; + description + "Revertive or non-revertive"; + } + leaf diverse-lsp { + type Mpls-te-lsp-mode; + description + "LSP from which restoration LSP is DIVERSED"; + } + leaf diversity-type { + type Te-pp-diversity; + description + "Restoration path diversity type"; + } + } + + grouping MPLS-TE-TUNNEL-APS-INFO { + description + "APS Protection Info of tunnel"; + container protection-profile { + description + "Protection Profile Information of tunnel"; + uses MPLS-TE-ATTRIBUTE-SET-APS-PP; + } + leaf active-lsp { + type Mpls-te-lsp-mode; + description + "Active LSP for Incoming Data"; + } + leaf diversity-type { + type Te-pp-diversity; + description + "Standby path diversity type"; + } + } + + grouping MPLS-TE-TUNNEL-OTN-BIDIR-INFO { + description + "Bidirectional Tunnel Information"; + container aps { + description + "APS Protection Info"; + uses MPLS-TE-TUNNEL-APS-INFO; + } + container restoration { + description + "Restoration Info"; + uses MPLS-TE-TUNNEL-RESTORATION-INFO; + } + } + + grouping MPLS-TE-PATH-OPTION-DAMPENING-INFO { + description + "MPLS TE Path Option Dampening Information"; + leaf option-index { + type uint32; + description + "Path option index"; + } + leaf hold-down-time { + type uint32; + description + "Hold down time in second"; + } + leaf remained-time { + type uint32; + description + "Remained time to resignal in second"; + } + leaf backoff-count { + type uint32; + description + "Backoff count"; + } + } + + grouping MPLS-TE-TUNNEL-BFD-INFO { + description + "MPLS TE Tunnel BFD Session Information"; + container event-counters { + description + "Per tunnel BFD session event counters"; + uses MPLS-TE-BFD-LSP-COUNTERS; + } + leaf bfd-session-up { + type boolean; + description + "Tunnel BFD session state up or down"; + } + leaf session-up-time { + type uint32; + units "second"; + description + "Time in seconds since the last session state up"; + } + leaf failure-diagnostic-code { + type uint32; + description + "BFD session failure diagnostic code"; + } + leaf failure-reason { + type string; + description + "BFD session failure reason"; + } + leaf minimum-session-up-interval { + type uint32; + description + "Minimum time in mini second for session to come + up"; + } + leaf maximum-session-up-interval { + type uint32; + description + "Maximum time in mini second for session to come + up"; + } + list dampening-info { + description + "Path option dampening info"; + uses MPLS-TE-PATH-OPTION-DAMPENING-INFO; + } + } + + grouping MPLS-TE-TUNNEL-VIF-DIVERSITY-INFO { + description + "Circuit diversity information"; + leaf tunnel-id { + type uint16; + description + "Dependent Tunnel ID"; + } + } + + grouping MPLS-TE-TUNNEL-STATIC-UNI-INFO { + description + "static UNI info for both head and tail"; + container term-interface-srlg { + description + "Termination Interface SRLG"; + uses TE-TERM-INTERFACE-SRLG-CB; + } + leaf client-port { + type string; + description + "Ingress Client Port"; + } + leaf client-if-handle { + type xr:Interface-name; + description + "Ingress Client Port Ifhandle"; + } + leaf client-odu-name { + type string; + description + "Client Odu Name"; + } + leaf client-odu-if-handle { + type xr:Interface-name; + description + "Client Odu Interface"; + } + leaf cross-connect-id { + type uint32; + description + "Cross connect id"; + } + leaf is-connected { + type boolean; + description + "True if client port is connected"; + } + leaf uptime { + type uint32; + description + "Client Port Uptime"; + } + leaf local-termination { + type Mpls-te-termination; + description + "Local Termination Type"; + } + leaf static-uni-type { + type Mpls-te-uni; + description + "Static uni type"; + } + leaf term-client-port { + type string; + description + "Termination Ingress Client Port"; + } + leaf term-client-if-handle { + type xr:Interface-name; + description + "Termination Ingress Client Port Ifhandle"; + } + } + + grouping MPLS-TE-TUNNEL-OTN-INFO { + description + "OTN tunnel's OTN technology information"; + container bandwidth-cfg { + description + "Configured OTN Bandwidth for tunnel"; + uses TE-ODU-V3-BW; + } + leaf config-bit-rate { + type uint32; + units "kbit/s"; + description + "Configured OTN Bandwidth in kbps"; + } + } + + grouping MPLS-TE-TRANSPORT-TUNNEL-INFO { + description + "Transport Tunnel information"; + container otn { + description + "Info Related to OTN technology in S2L"; + uses MPLS-TE-TUNNEL-OTN-INFO; + } + container static-uni { + description + "Tunnel Static UNI Info"; + uses MPLS-TE-TUNNEL-STATIC-UNI-INFO; + } + container egress-static-uni { + description + "Tunnel EgressStatic UNI Info"; + uses MPLS-TE-TUNNEL-EGRESS-STATIC-UNI-INFO; + } + leaf status-homepath-working { + type boolean; + description + "Status of working homepath"; + } + list homepath-ero { + description + "Homepath ero for working lsp"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + list diversity-info { + description + "Diversity Info"; + uses MPLS-TE-TUNNEL-VIF-DIVERSITY-INFO; + } + } + + grouping MPLS-TE-MGMT-WDM-UNI-TUNNEL-INFO { + description + "GMPLS WDM-UNI tunnel information"; + leaf tunnel-state { + type Mpls-te-tunnel-state; + description + "Tunnel state"; + } + leaf tunnel-role { + type Mpls-te-tunnel-role; + description + "Tunnel Role"; + } + leaf tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf lsp-id { + type uint16; + description + "LSP ID"; + } + leaf local-optical-router-id { + type inet:ipv4-address; + description + "Local optical router id"; + } + leaf remote-optical-router-id { + type inet:ipv4-address; + description + "Remote optical router id"; + } + leaf controlled-interface { + type string; + description + "Interface being controlled"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source address"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "Extended tunnel-id"; + } + leaf label-origin { + type Mpls-te-mgmt-gmpls-label-origin; + description + "Label origin"; + } + leaf srlg-discovery { + type boolean; + description + "SRLG-discovery enabled"; + } + } + + grouping MPLS-TE-SOFT-PREEMPTION-HEAD-COUNTERS { + description + "Headend Soft Preemption Counters"; + leaf soft-preemption-events { + type uint32; + description + "The number of soft preemption events"; + } + leaf reopt-completed-ls-ps { + type uint32; + description + "The number of soft preempted LSPs that were torn + down by the ingress router after the reopt LSP + was successfully setup."; + } + leaf torn-down-ls-ps { + type uint32; + description + "The number of soft preempted LSPs that were torn + down by the headend or any remote + node before the reoptimization is done."; + } + leaf path-protection-switchover-ls-ps { + type uint32; + description + "The number of soft preempted LSPs that were + switched over to a standby LSP."; + } + leaf frr-triggered-ls-ps { + type uint32; + description + "The number of soft preempted LSPs that were fast + rerouted at the headend or any + remote node before the reoptimization is done."; + } + leaf time-in-preemption-pending-min { + type uint16; + units "second"; + description + "The minimum time in seconds that an LSP was in + preemption pending state"; + } + leaf time-in-preemption-pending-max { + type uint16; + units "second"; + description + "The maximum time in seconds that an LSP was in + preemption pending state"; + } + leaf time-in-preemption-pending-avg { + type uint16; + units "second"; + description + "The average time in seconds that an LSP was in + preemption pending state"; + } + } + + grouping MPLS-TE-SOFT-PREEMPTION-PATH-ERROR { + description + "Information for a soft preemption path error"; + leaf timestamp { + type uint32; + description + "The POSIX timestamp when the soft preemption + error is received"; + } + leaf preempting-link-address { + type inet:ipv4-address; + description + "The address of the link where the preemption + happened"; + } + } + + grouping MPLS-TE-SOFT-PREEMPTION-TUNNEL-INFO { + description + "Headend Soft Preemption Tunnel Info"; + container soft-preemption-counters { + description + "The soft preemption counters for this tunnel + head"; + uses MPLS-TE-SOFT-PREEMPTION-HEAD-COUNTERS; + } + leaf status { + type Mpls-te-soft-preemption-state; + description + "The preemption state"; + } + leaf time-in-preemption-pending { + type uint16; + units "second"; + description + "The number of seconds that were spent in the + preemption-pending state"; + } + leaf preemption-pending-resolution { + type Mpls-te-soft-preemption-resolution; + description + "Indicates how the soft preemption operation + ended"; + } + list soft-preemption-path-error { + description + "The array of soft preemption path errors info + received for the LSP that is being soft + preempted"; + uses MPLS-TE-SOFT-PREEMPTION-PATH-ERROR; + } + } + + grouping MPLS-TE-PCE-DELEGATION-INFO { + description + "MPLS TE PCE Delegation Information"; + leaf plsp-id { + type uint32; + description + "PLSP ID"; + } + leaf symbolic-name { + type string; + description + "Symbolic name"; + } + leaf owner-address { + type inet:ipv4-address; + description + "Address of owner node"; + } + leaf operationally-up { + type boolean; + description + "Operationally up"; + } + } + + grouping MPLS-TE-AUTOPCC-INFO { + description + "MPLS TE Auto-PCC Information"; + leaf owner-address { + type inet:ipv4-address; + description + "Address of owner node"; + } + leaf creator-address { + type inet:ipv4-address; + description + "Address of creating node"; + } + leaf has-creator-id { + type boolean; + description + "Indicates if the ID of the creating node is set"; + } + leaf creator-id { + type string; + description + "ID of creating node"; + } + leaf plspid { + type uint32; + description + "PLSP ID"; + } + leaf symbolic-name { + type string; + description + "Symbolic name"; + } + leaf operationally-up { + type boolean; + description + "Operationally up"; + } + } + + grouping MPLS-TE-AUTOMESH-INFO { + description + "MPLS TE Automesh Information"; + leaf mesh-group-id { + type uint32; + description + "Auto-mesh tunnel Mesh Group ID"; + } + leaf tunnel-destination-list-name { + type string; + description + "Destination List name"; + } + leaf is-tunnel-unused-timer-running { + type boolean; + description + "Flag to indicate whether unused timer running"; + } + leaf remaining-unused-time { + type uint32; + units "second"; + description + "Remaining time for unused timer in seconds"; + } + leaf mesh-group-type { + type Te-meshgroup; + description + "Auto-tunnel mesh group type"; + } + } + + grouping MPLS-TE-IEP-HOP-BAG { + description + "MPLS IEP Hop information"; + leaf hop-index { + type uint32; + description + "Hop Index"; + } + leaf iep-hop-type { + type Mpls-te-iep-hop; + description + "IEP type"; + } + leaf iep-hop-address { + type inet:ipv4-address; + description + "IEP Hop Address"; + } + } + + grouping MPLS-TE-IEP-BAG { + description + "MPLS TE IEP"; + leaf path-option-id { + type uint32; + description + "Path option ID this IEP is associated with"; + } + list iep-hop { + description + "IEP Hop List"; + uses MPLS-TE-IEP-HOP-BAG; + } + } + + grouping MPLS-TE-WSRLG-HOP-BAG { + description + "Weighted SRLG info for a hop of the autobackup + tunnel"; + leaf from-address { + type inet:ipv4-address; + description + "Local IP address"; + } + leaf to-address { + type inet:ipv4-address; + description + "Remote IP address"; + } + leaf aggregate-admin-weight { + type uint64; + description + "Sum of the admin weights for all the common SRLG + values"; + } + list common-srlg { + description + "Common SRLG between this hop and the protected + + interface"; + leaf entry { + type uint32; + description + "Common SRLG between this hop and the protected + + interface"; + } + } + } + + grouping MPLS-TE-WSRLG-VALUE-BAG { + description + "MPLS TE weighted SRLGs"; + leaf srlg { + type uint32; + description + "SRLG number"; + } + leaf srlg-name { + type string; + description + "SRLG name"; + } + leaf admin-weight { + type uint32; + description + "Admin weight"; + } + } + + grouping MPLS-TE-WSRLG-INFO-BAG { + description + "MPLS TE weighted SRLG information for the + autobackup tunnels"; + list protected-interface-srlg { + description + "SRLG values and admin weight penalties of the + protected interface"; + uses MPLS-TE-WSRLG-VALUE-BAG; + } + list weighted-srlg-hop { + description + "Autobackup hops and the common SRLG with the + protected interface"; + uses MPLS-TE-WSRLG-HOP-BAG; + } + } + + grouping MPLS-TE-AUTOBACKUP-INFO { + description + "MPLS TE Autobackup Information"; + container weighted-srlg-info { + description + "Weighted SRLG info for the autobackup tunnel"; + uses MPLS-TE-WSRLG-INFO-BAG; + } + leaf protected-ls-ps { + type uint32; + description + "Number Of Protected LSPs"; + } + leaf protected-s2-ls { + type uint32; + description + "Number of Protected S2Ls"; + } + leaf sharing-families { + type uint32; + description + "Number of S2L Sharing Families"; + } + leaf ab-protection-type { + type Auto-backup-protection; + description + "Protection type"; + } + leaf is-using-srlg { + type boolean; + description + "Indicates whether SRLG Path Option is in use"; + } + leaf srlg-prot-type { + type Auto-backup-srlg-mode; + description + "SRLG Protection Type"; + } + leaf ab-protected-interface { + type string; + description + "Protected Interface"; + } + leaf protected-address { + type inet:ipv4-address; + description + "Protected Address"; + } + leaf tunnel-attribute-set-name { + type string; + description + "AttributeSet name"; + } + leaf is-unused-removal-timer-running { + type boolean; + description + "Indicates if the unused removal timer is running"; + } + leaf unused-removal-remaining-time { + type uint32; + units "second"; + description + "Time Remaining in Unused Removal Time in seconds"; + } + list iep { + description + "List of IEPs for the path options on this tunnel"; + uses MPLS-TE-IEP-BAG; + } + } + + grouping TE-PP-SW-LOG-ENTRY-BAG { + description + "Path protection log entry"; + leaf path-protection-switchover-event-index { + type uint32; + description + "The index number of the path protection switch + over event"; + } + leaf path-protection-tunnel-id { + type uint16; + description + "The ID of the tunnel that experienced switchover"; + } + leaf from-lsp-id { + type uint16; + description + "The LSP ID from which the traffic was switched + over"; + } + leaf to-lsp-id { + type uint16; + description + "The LSP ID to which the traffic was switched + over"; + } + leaf date-of-error-detection { + type uint32; + units "second"; + description + "The date when the error that caused the + switchover was detected. This date is the number + of seconds since Jan 1st 1970"; + } + leaf date-of-error-detection-millisec { + type uint32; + units "millisecond"; + description + "The milliseconds offset of the date when the + error that caused the switchover was detected."; + } + leaf switchover-duration-millisec { + type uint32; + units "millisecond"; + description + "The time in milliseconds between the detection + of the error and switching the traffic"; + } + leaf path-protection-switchover-reason { + type Te-p2mp-s2l-deletion-subcause; + description + "The reason that caused the path protection + switchover"; + } + } + + grouping MPLS-TE-PP-INFO { + description + "MPLS TE Path Protected Switchover Information"; + container switchover { + description + "Path Protected Switchover Information"; + uses TE-PP-SW-LOG-ENTRY-BAG; + } + leaf time-of-switchover-sec { + type uint32; + units "second"; + description + "The date when the switchover was completed. This + date is the number of seconds since Jan 1st 1970"; + } + leaf switchover-total { + type uint16; + description + "Number of times switchover occurred"; + } + leaf switchover-ready { + type uint16; + description + "Total times, Standby LSP ready for use"; + } + leaf standby-reoptimized-number { + type uint16; + description + "Number of times the standby LSP was reoptimized"; + } + leaf switchover-reason { + type uint16; + description + "Reason for last switchover"; + } + leaf diversity-type { + type Te-pp-diversity; + description + "Standby path diversity type"; + } + leaf is-path-protect-configured { + type boolean; + description + "Is Path Protection Configured"; + } + leaf path-protection-protected-by-id { + type uint32; + description + "The path option ID (level/index) of the + configured explicit protecting path"; + } + leaf valid-path-protection-path-option-exists { + type boolean; + description + "Flag to indicate whether tunnel has a + path-option which is valid for path-protection"; + } + leaf is-path-protect-switch-over-underway { + type boolean; + description + "Is Switchover Underway"; + } + leaf reoptimization-time-remaining { + type uint32; + units "second"; + description + "Remaining time until path protection + reoptimization (seconds)"; + } + } + + grouping MPLS-TE-TUNNELS-TUNNEL-LAST-REOPT-FAIL-INFO { + description + "Last re-opt failure reason/information if + applicable"; + leaf re-opt-last-fail-reason { + type Mpls-te-reopt-decision-reason; + description + "Reason (if any) for the last re-opt attempt + failure"; + } + leaf re-opt-failed-destination { + type inet:ipv4-address; + description + "First tunnel destination (if any) in re-opt LSP + that failed to come up"; + } + leaf re-opt-failed-timestamp { + type uint32; + units "second"; + description + "Time stamp of the last re-opt failure. (seconds + since Jan. 1, 1970)"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-STANDBY-SETUP { + description + "History information for standby setup"; + leaf standby-lsp-uptime { + type uint32; + units "second"; + description + "Time in seconds since the standby LSP was up"; + } + leaf standby-setup-timer { + type uint32; + units "second"; + description + "Time in seconds until the next attempt to + connect this setup"; + } + leaf protection-role { + type Te-lsp-path-protection-role; + description + "Path Protection Role"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-OTHER-SETUP { + description + "History information for additional GMPLS setup"; + leaf path-option-index { + type uint32; + description + "Path option index for the additional setup"; + } + leaf other-setup-error { + type string; + description + "The last error for the additional setup"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-PREVIOUS-PROTECT { + description + "History information for previous protecting GMPLS + current setup"; + leaf previous-protect-path-option { + type string; + description + "The previous protect setup path option"; + } + leaf previous-protect-tunnel-instance { + type uint32; + description + "The previous protect setup's instance"; + } + leaf previous-protect-fail-reason { + type string; + description + "Reason for the previous protect setup's failure"; + } + leaf previous-protect-setup-last-error { + type string; + description + "The last error for the previous setup"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-PREVIOUS { + description + "History information for previous current setup"; + leaf previous-path-option { + type string; + description + "The previous setup path option"; + } + leaf previous-tunnel-instance { + type uint32; + description + "The previous setup's instance"; + } + leaf previous-fail-reason { + type string; + description + "Reason for the previous setup's failure"; + } + leaf previous-setup-last-error { + type string; + description + "The last error for the previous setup"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-PATH-PROTECT { + description + "History information for protecting setup"; + leaf protecting-setup-uptime { + type uint32; + units "second"; + description + "Time in seconds since the protecting setup came + up"; + } + leaf protecting-setup-timer { + type uint32; + units "second"; + description + "Time in seconds until the next attempt to + connect the protecting setup"; + } + leaf protecting-setup-last-error { + type string; + description + "The last error for the protecting setup (for + display purposes only)"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-REOPT { + description + "History information for reoptimized setup"; + leaf reoptimized-setup-uptime { + type uint32; + units "second"; + description + "Time in seconds since the reopt setup came up"; + } + leaf reoptimized-setup-timer { + type uint32; + units "second"; + description + "Time in seconds until the next attempt to + connect the reopt setup"; + } + leaf reoptimized-setup-last-error { + type string; + description + "The last error for the reopt setup"; + } + leaf protection-role { + type Te-lsp-path-protection-role; + description + "Path Protection Role"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-CURRENT-CONNECTED { + description + "History information for currently connected setup"; + leaf current-lsp-uptime { + type uint32; + units "second"; + description + "Time in seconds since the current LSP was up"; + } + leaf current-uptime { + type uint32; + units "second"; + description + "Time in seconds since the tunnel was up"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-CURRENT { + description + "History information for current setup"; + container connected-uptimes { + description + "Uptimes for connected setup"; + uses MPLS-TE-TUNNELS-HISTORY-CURRENT-CONNECTED; + } + leaf current-setup-timer { + type uint32; + units "second"; + description + "Time in seconds until the next attempt to + connect this setup"; + } + leaf selection-reason { + type string; + description + "The reason why this setup is selected. For + display purposes only."; + } + leaf current-setup-last-error { + type string; + description + "The last error for the current setup"; + } + leaf protection-role { + type Te-lsp-path-protection-role; + description + "Path Protection Role"; + } + } + + grouping MPLS-TE-TUNNELS-HISTORY-BAG { + description + "MPLS TE Tunnel History Information"; + container current-setup { + description + "Current setup data"; + uses MPLS-TE-TUNNELS-HISTORY-CURRENT; + } + container reopt-setup { + description + "Reoptimized setup data"; + uses MPLS-TE-TUNNELS-HISTORY-REOPT; + } + container gmpls-path-protect-setup { + description + "GMPLS protecting setup data"; + uses MPLS-TE-TUNNELS-HISTORY-PATH-PROTECT; + } + container previous-setup { + description + "Previous setup data"; + uses MPLS-TE-TUNNELS-HISTORY-PREVIOUS; + } + container previous-gmpls-path-protect-setup { + description + "Previous GMPLS protecting setup data"; + uses MPLS-TE-TUNNELS-HISTORY-PREVIOUS-PROTECT; + } + container gmpls-other-setup { + description + "GMPLS additional setup data"; + uses MPLS-TE-TUNNELS-HISTORY-OTHER-SETUP; + } + container gmpls-other-protect-setup { + description + "GMPLS additional protecting setup data"; + uses MPLS-TE-TUNNELS-HISTORY-OTHER-SETUP; + } + container standby-setup { + description + "Standby setup data"; + uses MPLS-TE-TUNNELS-HISTORY-STANDBY-SETUP; + } + container standby-reopt-setup { + description + "Standby Reopt setup data"; + uses MPLS-TE-TUNNELS-HISTORY-REOPT; + } + container last-re-opt-fail { + description + "Last re-opt attempt failure information"; + uses MPLS-TE-TUNNELS-TUNNEL-LAST-REOPT-FAIL-INFO; + } + container last-stdby-re-opt-fail { + description + "Last standby re-opt attempt failure information"; + uses MPLS-TE-TUNNELS-TUNNEL-LAST-REOPT-FAIL-INFO; + } + } + + grouping MPLS-TE-SELF-PING { + description + "Self-ping information for TE tunnels"; + leaf state { + type Self-ping-state; + description + "The state of the self-ping operation"; + } + leaf lsp-id { + type uint16; + description + "The ID of the LSP for which self-ping is done"; + } + leaf start-timestamp { + type uint32; + description + "The timestamp when the self-ping was initiated + relative to Jan 1, 1970"; + } + leaf stop-timestamp { + type uint32; + description + "The timestamp when the self-ping was stopped + relative to Jan 1, 1970"; + } + leaf probe-received-timestamp { + type uint32; + description + "The timestamp when the self-ping response was + received relative to Jan 1, 1970"; + } + leaf probes-sent { + type uint16; + description + "The number of self-ping probes sent"; + } + } + + grouping MPLS-TE-AUTOCAPACITY-CLONE { + description + "Brief information about a clone tunnel"; + leaf name { + type string; + description + "Name of the clone"; + } + leaf creation-timestamp { + type uint32; + description + "The timestamp when this clone was created + relative to Jan 1, 1970"; + } + leaf state { + type Mte-tunnel-oper-state; + description + "The interface state of the cloned tunnel"; + } + leaf signaled-bandwidth { + type uint32; + units "kbit/s"; + description + "The signaled bandwidth (kbps) of the clone"; + } + leaf current-bandwidth-demand { + type uint32; + units "kbit/s"; + description + "The current demand (kbps) read from the traffic + stats for the clone"; + } + } + + grouping MPLS-TE-AUTOCAPACITY-STATS { + description + "Statistics for auto-capacity"; + leaf splits { + type uint32; + description + "Count of splits events"; + } + leaf merges { + type uint32; + description + "Count of merges events"; + } + leaf total-clones-created { + type uint32; + description + "Total clones created"; + } + leaf total-clones-deleted { + type uint32; + description + "Total clones deleted"; + } + leaf high-watermark-clones { + type uint32; + description + "Highest number of clones reached at any point in + time"; + } + } + + grouping MPLS-TE-AUTOCAPACITY-CONFIG { + description + "Configured properties of auto-capacity"; + leaf minimum-clones { + type uint32; + description + "The minimum number of clones"; + } + leaf maximum-clones { + type uint32; + description + "The maximum number of clones"; + } + leaf merge-bandwidth { + type uint32; + units "kbit/s"; + description + "The merge bandwidth in kbps"; + } + leaf split-bandwidth { + type uint32; + units "kbit/s"; + description + "The split bandwidth in kbps"; + } + leaf nominal-bandwidth { + type uint32; + units "kbit/s"; + description + "The optimal or nominal bandwidth for the clones + in kbps"; + } + } + + grouping MPLS-TE-AUTOCAPACITY { + description + "Auto-capacity information for TE tunnels"; + container auto-capacity-configuration { + description + "The configured properties of auto-capacity"; + uses MPLS-TE-AUTOCAPACITY-CONFIG; + } + container auto-capacity-stats { + description + "The statistic of auto-capacity"; + uses MPLS-TE-AUTOCAPACITY-STATS; + } + list clone { + description + "Table of clones"; + uses MPLS-TE-AUTOCAPACITY-CLONE; + } + } + + grouping MPLS-TE-TUNNELS-AUTOBW-OPER { + description + "MPLS TE Tunnel AutoBandwidth Operational + Information"; + leaf last-bandwidth-applied { + type uint32; + description + "Last bandwidth requested by auto-bw for the + tunnel"; + } + leaf bandwidth-pool-type { + type Mpls-te-bw-pool; + description + "Bandwidth pool type"; + } + leaf bandwidth-applications { + type uint32; + description + "Total number of bandwidth applications requested + by auto-bw"; + } + leaf last-application-trigger { + type Te-autobw-app-trigger; + description + "The reason causing the last BW application"; + } + leaf application-jitter { + type uint32; + description + "Amount of time introduced to delay first + application so that not all tunnels may signal + BW at the same time"; + } + leaf time-left-application { + type uint32; + description + "Time left until next auto-bw application + algorithm is performed"; + } + leaf samples-collected { + type uint32; + description + "Number of samples collected within current + application period"; + } + leaf time-left-collection { + type uint32; + description + "Time left until next auto-bw data collection is + performed"; + } + leaf highest-bandwidth { + type uint32; + description + "Highest bandwidth registered within current + application period"; + } + leaf underflow-highest-bandwidth { + type uint32; + description + "Highest sample collected during an underflow + sequence"; + } + leaf threshold-overflows { + type uint32; + description + "counter for current consecutive collections + exceeding threshold"; + } + leaf overflow-early-bw-applications { + type uint32; + description + "tunnel counter for number of bandwidth + applications due to overflow"; + } + leaf threshold-underflows { + type uint32; + description + "counter for current consecutive collections + exceeding threshold"; + } + leaf underflow-early-bw-applications { + type uint32; + description + "tunnel counter for number of bandwidth + applications due to underflow"; + } + leaf collect-only-requested-bandwidth { + type uint32; + description + "Collect-only Requested Bandwidth for the tunnel"; + } + leaf application-reject-reason { + type Te-autobw-app-rej; + description + "Current application reject reason"; + } + leaf resignal-last-bandwidth-expire-time { + type uint32; + description + "Timestamp when the resignal last bandwidth will + expire and tunnel will use configured bandwidth + to setup"; + } + } + + grouping MPLS-TE-TUNNELS-AUTOBW-CONFIG { + description + "MPLS TE Tunnel AutoBandwidth Configuration + Information"; + leaf is-auto-bandwidth-collect-only { + type boolean; + description + "TRUE if auto-bw collection-only is enabled"; + } + leaf minimum-bandwidth { + type uint32; + description + "Minimum bandwidth auto-bw can apply"; + } + leaf maximum-bandwidth { + type uint32; + description + "Maximum bandwidth auto-bw can apply"; + } + leaf application-frequency { + type uint32; + units "minute"; + description + "Auto-bw application frequency for the tunnel + (mins)"; + } + leaf collection-frequency { + type uint32; + description + "Global auto-bw collection frequency"; + } + leaf adjustment-threshold-percent { + type uint32; + description + "Bandwidth change threshold needed to trigger + bandwidth adjustment"; + } + leaf adjustment-threshold-value { + type uint32; + units "kbit/s"; + description + "Bandwidth change value (kbps) needed to trigger + bandwidth adjustment"; + } + leaf overflow-threshold-percent { + type uint32; + description + "Bandwidth change threshold needed to count a + collection towards overflow limit allowed"; + } + leaf overflow-threshold-value { + type uint32; + description + "Bandwidth change value needed to count a + collection towards overflow limit allowed"; + } + leaf overflow-threshold-limit { + type uint32; + description + "Limit of consecutive collections exceeding + threshold to trigger an immediate overflow + bandwidth adjustment"; + } + leaf underflow-threshold-percent { + type uint32; + description + "Bandwidth change threshold needed to count a + collection towards underflow limit allowed"; + } + leaf underflow-threshold-value { + type uint32; + description + "Bandwidth change value needed to count a + collection towards underflow limit allowed"; + } + leaf underflow-threshold-limit { + type uint32; + description + "Limit of consecutive collections exceeding + threshold to trigger an immediate underflow + bandwidth adjustment"; + } + leaf resignal-last-bandwidth-enabled { + type boolean; + description + "TRUE if resignal last bandwidth is enabled"; + } + leaf resignal-last-bandwidth-timeout { + type uint32; + units "second"; + description + "The configured time-out value in seconds for + resignal last bandwidth after tunnel down"; + } + } + + grouping MPLS-TE-TUNNELS-AUTOBW-STATUS { + description + "MPLS TE Tunnel AutoBandwidth Status Information"; + leaf is-auto-bandwidth-enabled { + type boolean; + description + "TRUE if auto-bw is enabled for the tunnel"; + } + leaf reactivation-time { + type uint32; + description + "Time until auto-bw gets activated if activation + has been delayed due to failover"; + } + } + + grouping MPLS-TE-P2P-INFO-BAG { + description + "P2P tunnel data"; + container auto-bandwidth-status { + description + "Tunnels's AutoBandwidth Status information"; + uses MPLS-TE-TUNNELS-AUTOBW-STATUS; + } + container auto-bandwidth-config { + description + "Tunnels's AutoBandwidth Configuration + information"; + uses MPLS-TE-TUNNELS-AUTOBW-CONFIG; + } + container auto-bandwidth-oper { + description + "Tunnels's AutoBandwidth Operational information"; + uses MPLS-TE-TUNNELS-AUTOBW-OPER; + } + leaf is-bidirectional { + type boolean; + description + "TRUE if the tunnel is bidirectional"; + } + } + + grouping MPLS-TE-INTERAREA-REOPT-INFO { + description + "Counter and time information for reoptimization + of interarea tunnels"; + leaf sent-path-queries { + type uint16; + description + "Number of better path queries sent"; + } + leaf time-since-last-query-sent { + type uint32; + units "second"; + description + "Time since the last better path query was sent + (seconds)"; + } + leaf received-preferred-path-errors { + type uint16; + description + "Number of received Preferred Path Exists Error"; + } + leaf time-since-last-preferred-path-error { + type uint32; + units "second"; + description + "Time since last Preferred Path Exists error + received (seconds)"; + } + leaf received-preferred-tree-errors { + type uint16; + description + "Number of received Preferred Tree Exists Error"; + } + leaf time-since-last-preferred-tree-error { + type uint32; + units "second"; + description + "Time since last Preferred Tree Exists error + received (seconds)"; + } + leaf preferred-path-error-node { + type inet:ipv4-address; + description + "Address of the preferred path error generating + node"; + } + leaf preferred-tree-error-node { + type inet:ipv4-address; + description + "Address of the preferred tree error generating + node"; + } + } + + grouping MPLS-TE-P2MP-DEST { + description + "A P2MP destination"; + container inter-area-reoptimization { + description + "The timing and count information of interarea + reoptimization."; + uses MPLS-TE-INTERAREA-REOPT-INFO; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf destination-state { + type Te-destination-state; + description + "The state of the destination"; + } + leaf active-path-option-index { + type uint32; + description + "Index of active path option"; + } + leaf path-option-exhausted { + type boolean; + description + "Path options are exhausted"; + } + leaf uptime { + type uint32; + units "second"; + description + "Time in seconds since the destination was up"; + } + leaf path-change-time { + type uint32; + description + "Last path change time"; + } + leaf total-uptime { + type uint32; + description + "Unused"; + } + leaf s2l-exist { + type boolean; + description + "Dest state may not be up but S2L may exist"; + } + leaf destination-deletion-cause { + type Te-p2mp-s2l-deletion-cause; + description + "Destination deletion cause"; + } + leaf destination-deletion-sub-cause { + type Te-p2mp-s2l-deletion-subcause; + description + "Destination deletion subcause"; + } + leaf destination-deletion-timestamp { + type uint32; + units "second"; + description + "Destination deletion timestamp in seconds"; + } + leaf is-inter-area { + type boolean; + description + "Indicates whether this destination is in + different area"; + } + list path-option-entry { + description + "Deprecated; replaced by PathOption"; + uses MPLS-TE-P2MP-PATH-OPTION; + } + list path-option { + description + "Destination's list of path options"; + uses MPLS-TE-P2MP-PATH-OPTION; + } + } + + grouping MPLS-TE-TUNNEL-LOGGING { + description + "Tunnel Logging Attributes"; + leaf all { + type boolean; + description + "All tunnel logging enabled"; + } + leaf reoptimize { + type boolean; + description + "Reoptimization Logging"; + } + leaf state { + type boolean; + description + "State Logging"; + } + leaf reroute { + type boolean; + description + "Reroute logging"; + } + leaf bandwidth-change { + type boolean; + description + "Bandwidth change logging"; + } + leaf switchover { + type boolean; + description + "Path protection switchover logging"; + } + leaf record-route { + type boolean; + description + "Record route logging"; + } + leaf path-calculation-failure { + type boolean; + description + "Path calculation failure logging"; + } + leaf reoptimization-attempt { + type boolean; + description + "Reoptimization attempt logging"; + } + leaf insufficient-bandwidth { + type boolean; + description + "Insufficient bandwidth logging"; + } + } + + grouping MPLS-TE-AUTOROUTE-DESTINATION-BAG { + description + "An Autoroute destination"; + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + leaf prefix-length { + type uint16; + description + "Prefix length"; + } + } + + grouping MPLS-TE-TUNNEL-BFD-CONFIG-INFO { + description + "BFD configuration info for a tunnel"; + leaf bfd-fast-detecting-enabled { + type boolean; + description + "Deprecated"; + } + leaf bfd-type { + type Te-vif-bfd; + description + "BFD Type"; + } + leaf min-interval { + type uint32; + units "millisecond"; + description + "Hello interval in milliseconds"; + } + leaf min-interval-default { + type boolean; + description + "Is default hello interval"; + } + leaf multiplier { + type uint8; + description + "Multiplier"; + } + leaf multiplier-default { + type boolean; + description + "Is default multiplier"; + } + leaf bring-up-timeout { + type uint16; + description + "Bring Up Timeout in second"; + } + leaf bring-up-timeout-default { + type boolean; + description + "Is default bring up timeout"; + } + leaf dampening-initial-wait { + type uint32; + units "millisecond"; + description + "Dampening initial wait time in milliseconds"; + } + leaf dampening-initial-wait-default { + type boolean; + description + "Is default dampening inital wait time"; + } + leaf dampening-max-wait { + type uint32; + units "millisecond"; + description + "Dampening max wait time in milliseconds"; + } + leaf dampening-max-wait-default { + type boolean; + description + "Is default dampening max wait time"; + } + leaf dampening-secondary-wait { + type uint32; + units "millisecond"; + description + "Dampening secondary wait time in milliseconds"; + } + leaf dampening-secondary-wait-default { + type boolean; + description + "Is default dampening secondary wait time"; + } + leaf periodic-lsp-ping-disabled { + type boolean; + description + "Periodic LSP Ping disabled"; + } + leaf periodic-lsp-ping-interval { + type uint32; + units "second"; + description + "Periodic LSP Ping interval in seconds"; + } + leaf periodic-lsp-ping-interval-default { + type boolean; + description + "Is default LSP Ping interval"; + } + leaf bfd-session-down-action { + type Mpls-te-bfd-session-down-action1; + description + "BFD Session Down Action"; + } + leaf bfd-session-down-reopt-timeout { + type uint32; + description + "BFD Session Down Reopt Timeout"; + } + leaf bfd-encap-mode { + type Te-vif-bfd-encap-mode; + description + "BFD Encap Mode"; + } + leaf sbfd-target-id { + type inet:ipv4-address; + description + "SBFD Target ID"; + } + } + + grouping MPLS-TE-TUNNEL-BIDIR-CONFIG-INFO { + description + "Bidirectional configuration info for a tunnel"; + leaf association-type { + type uint16; + description + "Association Type (RFC 7751)"; + } + leaf association-id { + type uint16; + description + "The association ID"; + } + leaf association-source { + type inet:ipv4-address; + description + "The association source"; + } + leaf association-global-id { + type uint32; + description + "The association global ID"; + } + leaf association-corouted { + type boolean; + description + "Is the association co-routed"; + } + } + + grouping MPLS-TE-P2MP-TUN-CFG-BAG { + description + "Configured P2MP tunnel data"; + container affinity { + description + "Affinity"; + uses MPLS-TE-TUNNELS-AFFINITY-INFO; + } + container bidirectional-config { + description + "Bidirectional Configuration Information"; + uses MPLS-TE-TUNNEL-BIDIR-CONFIG-INFO; + } + container bfd-config { + description + "BFD Configuration Information"; + uses MPLS-TE-TUNNEL-BFD-CONFIG-INFO; + } + container logging { + description + "Logging configuration"; + uses MPLS-TE-TUNNEL-LOGGING; + } + leaf tunnel-name { + type string; + description + "Tunnel name"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel id"; + } + leaf is-p2mp { + type boolean; + description + "True if tunnel is a P2MP tunnel"; + } + leaf signaled-name { + type string; + description + "Signaled name"; + } + leaf configured-bandwidth { + type uint32; + description + "Configured Bandwidth"; + } + leaf interface-configured-bandwidth { + type uint32; + description + "Configured Interface Bandwidth"; + } + leaf bandwidth-type { + type Mpls-te-bw-pool; + description + "The bandwidth type"; + } + leaf setup-priority { + type uint8; + description + "Setup priority"; + } + leaf hold-priority { + type uint8; + description + "Hold priority"; + } + leaf policy-class { + type uint8; + description + "deprecated"; + } + leaf forward-class { + type uint32; + description + "Forward class"; + } + leaf is-forward-class-configured { + type boolean; + description + "True if Forward class is configured"; + } + leaf backup-bandwidth { + type uint32; + description + "Backup bandwidth"; + } + leaf backup-bandwidth-flags { + type uint8; + description + "Backup bandwidth flags"; + } + leaf config-load-share { + type uint32; + description + "Config loadshare"; + } + leaf load-interval { + type uint32; + description + "Load interval used to compute traffic rate"; + } + leaf payload-type { + type uint16; + description + "Payload type"; + } + leaf is-in-config { + type boolean; + description + "Is in config"; + } + leaf explicit-null-imposition { + type boolean; + description + "Imposition of Explicit NULL"; + } + leaf fast-reroute { + type boolean; + description + "Fast reroute enabled"; + } + leaf is-backup-tunnel { + type boolean; + description + "TRUE if this is a backup tunnel"; + } + leaf record-route { + type boolean; + description + "Record route"; + } + leaf srlg-discovery { + type boolean; + description + "SRLG-discovery enabled"; + } + leaf path-protection-enabled { + type boolean; + description + "Path Protection enabled"; + } + leaf path-protection-srlg-diversity { + type boolean; + description + "SRLG Diversity for Path Protection Enabled"; + } + leaf path-protection-non-revertive { + type boolean; + description + "Non-revertive mode for Path Protection Enabled"; + } + leaf hop-limit { + type uint8; + description + "Hop Limit"; + } + leaf cost-limit { + type uint32; + description + "Cost limit on the tunnel path"; + } + leaf cost-limit-global { + type uint32; + description + "Global Cost Limit"; + } + leaf delay-limit { + type uint32; + description + "Delay limit on the tunnel path (usec)"; + } + leaf delay-limit-global { + type uint32; + description + "Global Delay Limit (usec)"; + } + leaf delay-measurement-enabled { + type boolean; + description + "Delay-measurement enabled"; + } + leaf path-invalidation-timeout-source { + type uint32; + description + "Path invalidation timeout configuration source"; + } + leaf path-invalidation-timeout { + type uint32; + description + "Path invalidation timeout interval on the tunnel + path"; + } + leaf path-invalidation-action-source { + type uint32; + description + "Path invalidation action configuration source"; + } + leaf path-invalidation-action { + type uint32; + description + "Path invalidation action on the tunnel path"; + } + leaf soft-preempt { + type boolean; + description + "Soft preemption enabled"; + } + leaf disable-affinity-failure-reopt { + type boolean; + description + "DisableAffinityFailureReopt"; + } + leaf affinity-failure-reopt-timer { + type uint32; + description + "AffinityFailureReoptTimer"; + } + leaf segment-routing-path-selection { + type Te-s2l-sr-path-selection; + description + "Segment-Routing path selection type"; + } + leaf is-self-ping-configured { + type boolean; + description + "TRUE if self-ping is configured, FALSE otherwise"; + } + leaf self-ping-probes-maximum { + type uint16; + description + "Number of maximum probes sent before failing + self-ping"; + } + leaf self-ping-retry-period { + type uint8; + units "second"; + description + "Number of seconds between self-ping retries"; + } + list policy-class-entry { + description + "PBTS policy classes"; + leaf entry { + type uint8; + description + "PBTS policy classes"; + } + } + list autoroute-destination { + description + "Autoroute Destinations list"; + uses MPLS-TE-AUTOROUTE-DESTINATION-BAG; + } + } + + grouping MPLS-TE-P2MP-TUNNEL-BAG { + description + "P2MP tunnel data"; + container config { + description + "Configuration data"; + uses MPLS-TE-P2MP-TUN-CFG-BAG; + } + container tunnel-current-lsp { + description + "Current LSP"; + uses MPLS-TE-P2MP-LSP; + } + container reoptimized-p2mp-lsp { + description + "Reopt LSP"; + uses MPLS-TE-P2MP-LSP; + } + container tunnel-standby-lsp { + description + "Standby LSP"; + uses MPLS-TE-P2MP-LSP; + } + container reoptimized-standby-p2mp-lsp { + description + "Standby Reopt LSP"; + uses MPLS-TE-P2MP-LSP; + } + container tunnel-restoration-lsp { + description + "Restoration LSP"; + uses MPLS-TE-P2MP-LSP; + } + container delay-clean-pp-lsp { + description + "Delay Clean PP LSP"; + uses MPLS-TE-P2MP-LSP; + } + container cleaned-lsp { + description + "Cleaned LSP"; + uses MPLS-TE-P2MP-LSP; + } + container p2p-info { + description + "P2P specific info"; + uses MPLS-TE-P2P-INFO-BAG; + } + container auto-capacity { + description + "Auto-capacity Info"; + uses MPLS-TE-AUTOCAPACITY; + } + container self-ping { + description + "Self-ping Info"; + uses MPLS-TE-SELF-PING; + } + container history { + description + "Tunnel history"; + uses MPLS-TE-TUNNELS-HISTORY-BAG; + } + container path-protection { + description + "Path Protect Info"; + uses MPLS-TE-PP-INFO; + } + container auto-backup { + description + "Autobackup Information"; + uses MPLS-TE-AUTOBACKUP-INFO; + } + container auto-mesh { + description + "Automesh Information"; + uses MPLS-TE-AUTOMESH-INFO; + } + container auto-pcc { + description + "Auto-PCC Information"; + uses MPLS-TE-AUTOPCC-INFO; + } + container pce-delegation { + description + "PCE Delegation information"; + uses MPLS-TE-PCE-DELEGATION-INFO; + } + container soft-preemption { + description + "Tunnel head soft preemption info. This is NULL + if soft preemption is not configured"; + uses MPLS-TE-SOFT-PREEMPTION-TUNNEL-INFO; + } + container wdm-unitunnel { + description + "WDM-UNI tunnel data. Only exists for WDM-UNI + tunnels"; + uses MPLS-TE-MGMT-WDM-UNI-TUNNEL-INFO; + } + container transport-tunnel-info { + description + "Transport tunnel data. Only exists for Transport + tunnels"; + uses MPLS-TE-TRANSPORT-TUNNEL-INFO; + } + container bfd-info { + description + "BFD session info. This is NULL if BFD is not + configured"; + uses MPLS-TE-TUNNEL-BFD-INFO; + } + container otn-bidir { + description + "OTN bidir info"; + uses MPLS-TE-TUNNEL-OTN-BIDIR-INFO; + } + container bidir { + description + "Bidir info"; + uses MPLS-TE-TUNNEL-BIDIR-INFO; + } + container xro-attribute-set { + description + "XRO attribute-set"; + uses MPLS-TE-ATTRIBUTE-SET; + } + container te-tunnel-convergence { + description + "TE tunnel convergence related information"; + uses TE-VIF-CONVERGENCE-INFO; + } + container flex-info { + description + "Flex Info"; + uses MPLS-TE-TUNNEL-FLEX-INFO; + } + container sticky-working-path { + description + "Sticky working Path"; + uses MPLS-TE-STICKY-PATH; + } + container sticky-protecting-path { + description + "Sticky protecting Path"; + uses MPLS-TE-STICKY-PATH; + } + leaf role-standby { + type boolean; + description + "TRUE if Role is Standby, Active otherwise"; + } + leaf tunnel-interface-name { + type xr:Interface-name; + description + "Interface handle of the associated tunnel"; + } + leaf admin-state { + type Mte-tunnel-admin-state; + description + "Administrative State"; + } + leaf operational-state { + type Mte-tunnel-oper-state; + description + "Operational State"; + } + leaf operational-state-changes { + type uint32; + description + "Counters for operational state changes"; + } + leaf signaled-name { + type string; + description + "Signaled Name"; + } + leaf fail-reason { + type Mpls-mte-tunnel-fail-reason; + description + "The reason why failure occurred"; + } + leaf destination-up-count { + type uint32; + description + "Count of up destinations"; + } + leaf destination-disabled-count { + type uint32; + description + "Count of disabled destinations"; + } + leaf destination-down-count { + type uint32; + description + "Count of down destinations"; + } + leaf re-opt-hold-down-timer-remaining { + type uint32; + units "second"; + description + "Backup hold-down timer remaining time in seconds"; + } + leaf bandwidth-requested { + type uint32; + description + "Bandwidth Requested"; + } + leaf bandwidth-type { + type Mpls-te-bw-pool; + description + "The requested bandwidth type"; + } + leaf is-node-protected { + type boolean; + description + "Node Protection Enabled or Disabled"; + } + leaf is-bandwidth-protect { + type boolean; + description + "BW Protection Enabled or Disabled"; + } + leaf tunnel-recovering { + type boolean; + description + "Tunnel recovering"; + } + leaf reroute-pending { + type boolean; + description + "ReroutePending"; + } + leaf explicit-path-change { + type boolean; + description + "Explicit-path inuse by the current LSP has been + modified"; + } + leaf path-option-change { + type boolean; + description + "Path-Option inuse by the current LSP has been + modified"; + } + leaf affinity-failure-reopt-disabled { + type boolean; + description + "AffinityFailureReoptDisabled"; + } + leaf affinity-failure-reopt-time-remained { + type uint32; + description + "AffinityFailureReoptTimeRemained"; + } + leaf affinity-failure-delayed-tear-time-remained { + type uint32; + description + "Affinity Failure LSP tear down time remaining"; + } + leaf invalidation-time-remained { + type uint32; + description + "Path invalidation time remaining"; + } + leaf drop-mode { + type boolean; + description + "True if tunnel is in drop mode"; + } + leaf auto-route { + type boolean; + description + "IGP Auto route announce enabled"; + } + leaf forwarding-adjacency { + type boolean; + description + "IGP forwarding adjacency enabled"; + } + leaf load-share-factor { + type uint32; + description + "The specified loadsharing for the tunnel"; + } + leaf load-share-type { + type Mpls-te-loadshare; + description + "Loadsharing type"; + } + leaf create-time { + type uint32; + description + "Time at which the tunnel was created"; + } + leaf uptime { + type uint32; + units "second"; + description + "Time in seconds since the tunnel was up"; + } + leaf metric-type { + type Mpls-te-metric; + description + "The path selection metric"; + } + leaf tie-breaker { + type Te-path-selection-tiebreaker; + description + "The path selection tiebreaker"; + } + leaf tiebreaker-type { + type uint32; + description + "Deprecated - replaced by Tiebreaker"; + } + leaf tiebreaker-qualifier { + type Mpls-te-metric-qualifier; + description + "Describes how the path selection tiebreaker was + specified: default, globally set, or per + interface"; + } + leaf metric-qualifier { + type Mpls-te-metric-qualifier; + description + "Describe how the metric was specified: default, + globally set, or per interface"; + } + leaf is-hop-limit-ignore { + type boolean; + description + "Is Hop-limit ignored"; + } + leaf hop-limit-ignored-reason { + type Te-hop-limit-ignore; + description + "Hop-limit ignored reason"; + } + leaf outbound-frr-state { + type Mpls-te-frr-state; + description + "Indicates outbound FRR state"; + } + leaf area-id { + type string; + description + "Indicates the protocol and area used to find + Outgoing ERO"; + } + leaf pce-fail-reason { + type Mpls-te-pce-fail-reasons; + description + "Failure reason for PCE-based tunnels"; + } + leaf snmp-index { + type uint32; + description + "SNMP index for interface"; + } + leaf is-inter-area-tunnel { + type boolean; + description + "Indicates whether this tunnel spans multiple + areas."; + } + leaf is-auto-backup { + type boolean; + description + "Indicates whether this is an automatically + generated backup tunnel"; + } + leaf is-auto-pcc { + type boolean; + description + "Indicates whether this is an automatic PCC + tunnel"; + } + leaf is-pce-delegated { + type boolean; + description + "Indicates whether this tunnel is delegated to a + PCE server or not"; + } + leaf tunnel-attribute-set-name { + type string; + description + "AttributeSet name"; + } + leaf tunnel-attribute-set-type { + type Tunnel-attribute-set; + description + "AttributeSet type"; + } + leaf xro-attribute-set-name { + type string; + description + "Configured XRO attribute-set name"; + } + leaf is-passive { + type boolean; + description + "True for passive tunnel"; + } + leaf passive-tunnel-name { + type string; + description + "Passive tunnel name"; + } + leaf binding-label-exists { + type boolean; + description + "True, if binding label exists"; + } + leaf binding-label { + type uint32; + description + "Binding Label"; + } + leaf last-hop-ifindex { + type uint32; + description + "Termination destination ifindex"; + } + leaf is-named { + type boolean; + description + "Indicates whether this tunnel is named"; + } + leaf lsp-wrap-protection-enabled { + type boolean; + description + "Lsp-wrap Protection enabled"; + } + leaf lsp-wrap-label { + type uint32; + description + "Lsp-wrap label value"; + } + leaf is-interface { + type boolean; + description + "True for tunnel head"; + } + leaf last-path-change { + type uint32; + units "second"; + description + "Time in seconds since the last path change"; + } + leaf persistent-bytes { + type uint64; + units "byte"; + description + "Persistent forwarding statistics for number of + bytes. Clear counters will not reset the counter"; + } + leaf persistent-packets { + type uint64; + description + "Persistent forwarding statistics for Number of + packets. Clear counters will not reset the + counter"; + } + leaf autoroute-announce-exclude-segment-routing { + type boolean; + description + "Indicates whether this tunnel is autoroute + announced with exclude segment-routing option"; + } + leaf last-working-lsp-id { + type uint16; + description + "LSP-id of last working LSP"; + } + list destination { + description + "Destinations array"; + uses MPLS-TE-P2MP-DEST; + } + } + + grouping MPLS-TE-S2L-DELAY-MEASUREMENT { + description + "S2L delay-measurement"; + leaf minimum-delay { + type uint32; + units "microsecond"; + description + "Minimum delay in microseconds"; + } + leaf maximum-delay { + type uint32; + units "microsecond"; + description + "Maximum delay in microseconds"; + } + leaf average-delay { + type uint32; + units "microsecond"; + description + "Average delay in microseconds"; + } + leaf notification-timestamp { + type uint32; + units "second"; + description + "Notification timestamp, seconds since epoch"; + } + } + + grouping MPLS-TE-PATH-METRICS { + description + "Path metrics info"; + leaf te-metric { + type uint64; + description + "Path TE Metric"; + } + leaf igp-metric { + type uint64; + description + "Path IGP Metric"; + } + leaf delay-metric { + type uint64; + description + "Path Delay Metric"; + } + } + + grouping MPLS-TE-S2L-DIVERSITY-INFO { + description + "S2l Diversity info"; + leaf diversity-type { + type Te-pp-diversity; + description + "S2L path diversity type"; + } + } + + grouping TUNNEL-MIDPOINT-LSP-WRAP-INFO-BAG { + description + "Midpoint LSP Wrap Protection LSP Info"; + leaf lsp-wrap-protection-enable { + type boolean; + description + "LSP Wrap protection enabled"; + } + leaf lsp-wrap-protection-label { + type uint32; + description + "LSP Wrap Merge Point Label"; + } + leaf reverse-egress-interface { + type string; + description + "Reverse Egress Interface"; + } + leaf reverse-lsp-label { + type uint32; + description + "Reverse LSP label"; + } + leaf lsp-wrap-protection-state { + type Mpls-te-lsp-wrap-state; + description + "LSP wrap protection state"; + } + } + + grouping TE-S2L-SR-PATH-HOP { + description + "TE Segment-Routing S2L path hop"; + leaf sid-type { + type Te-sr-sid; + description + "Type of the SID"; + } + leaf has-ip-addresses { + type boolean; + description + "Node has IP addresses specified"; + } + leaf local-addr { + type inet:ipv4-address; + description + "Local IP address of adjacency or Node ID"; + } + leaf remote-addr { + type inet:ipv4-address; + description + "Remote IP address of adjacency"; + } + leaf has-mpls-label { + type boolean; + description + "Hop has MPLS label specified"; + } + leaf mpls-label-value { + type uint32; + description + "The MPLS label value"; + } + leaf has-entropy-label { + type boolean; + description + "Hop has EL specified"; + } + } + + grouping MPLS-TE-S2L-FLEX-INFO { + description + "TE Per-S2L FlexLSP Information"; + container flex-fec { + description + "FEC for the FlexLSP Entry"; + uses TE-S2L-FEC; + } + leaf entry-exists { + type boolean; + description + "FlexLSP Entry Exists"; + } + leaf in-label { + type uint32; + description + "In Label"; + } + leaf bfd-created { + type boolean; + description + "GAL BFD Session Created"; + } + leaf bfd-up { + type boolean; + description + "GAL BFD Session Up"; + } + leaf oam-created { + type boolean; + description + "OAM Entry Created"; + } + leaf bfd-next-hop { + type inet:ipv4-address; + description + "BFD Next Hop"; + } + leaf bfd-tun-ifh { + type xr:Interface-name; + description + "BFD Tunnel Interface Handle"; + } + leaf bfd-out-ifh { + type xr:Interface-name; + description + "BFD Out Interface Handle"; + } + leaf bfd-int-label { + type uint32; + description + "BFD Internal Label"; + } + leaf bfd-egress-label { + type uint32; + description + "BFD Egress Label"; + } + leaf fault-ldi-lockout { + type boolean; + description + "Fault LDI Lockout"; + } + leaf fault-ldi { + type boolean; + description + "Fault LDI"; + } + leaf fault-lkr { + type boolean; + description + "Fault LKR"; + } + leaf fault-ais { + type boolean; + description + "Fault AIS"; + } + leaf fault-time { + type uint32; + description + "Fault Time"; + } + } + + grouping MPLS-TE-S2L-PROTECTION-OBJECT { + description + "TE Protection Object"; + leaf s2l-secondary { + type boolean; + description + " S2L Protection Secondary Bit"; + } + leaf s2l-protecting { + type boolean; + description + " S2L Protection Protecting Bit"; + } + leaf s2l-notification { + type boolean; + description + " S2L Protection Notification Bit"; + } + leaf s2l-operational { + type boolean; + description + " S2L Protection Operational Bit"; + } + leaf enhanced { + type boolean; + description + "Indicates Enhanced Protection Scheme"; + } + leaf ded1-plus1 { + type boolean; + description + "Dedicated 1+1 Protection"; + } + leaf ded1-to1 { + type boolean; + description + "Dedicated 1:1 Protection"; + } + leaf shared { + type boolean; + description + "Shared Link Layer Protection"; + } + leaf link-unprotected { + type boolean; + description + "LSP should not use any Link Layer Protection"; + } + leaf extra-traffic { + type boolean; + description + "LSP should use Links that are protecting other + (primary) traffic"; + } + leaf any { + type boolean; + description + "Any"; + } + leaf rerouting { + type boolean; + description + "Full Rerouting"; + } + leaf rerouting-no-et { + type boolean; + description + "Rerouting Without Extra-Traffic"; + } + leaf one-to-n-protection-et { + type boolean; + description + "1:N Protection with Extra-Traffic"; + } + leaf one-plus-one-uni { + type boolean; + description + "1+1 Unidirectional Protection"; + } + leaf one-plus-one-bi { + type boolean; + description + "1+1 Bidirectional Protection"; + } + leaf lsp-unprotected { + type boolean; + description + "LSP Flags Unprotected"; + } + leaf seg-rerouting { + type boolean; + description + "Full Rerouting"; + } + leaf seg-rerouting-no-et { + type boolean; + description + "Rerouting Without Extra-Traffic"; + } + leaf seg-one-to-n-protection-et { + type boolean; + description + "1:N Protection with Extra-Traffic"; + } + leaf seg-one-plus-one-uni { + type boolean; + description + "1+1 Unidirectional Protection"; + } + leaf seg-one-plus-one-bi { + type boolean; + description + "1+1 Bidirectional Protection"; + } + leaf seg-lsp-unprotected { + type boolean; + description + "SEG Flags Unprotected"; + } + leaf in-place-bit { + type boolean; + description + "In-Place Bit"; + } + leaf required-bit { + type boolean; + description + "Required Bit"; + } + } + + grouping MPLS-TE-S2L-ASSOCIATION-OBJECT { + description + "TE Association Object"; + leaf s2l-association-type { + type uint16; + description + "S2L Association Type + (draft-ietf-ccamp-mpls-tp-rsvpte-ext-associated-lsp)"; + } + leaf s2l-association-tie-role { + type Te-association-tie-role; + description + "S2L Association Tie Role"; + } + leaf s2l-association-id { + type uint16; + description + "S2L Association ID"; + } + leaf s2l-association-source { + type inet:ipv4-address; + description + "S2L Association Source"; + } + leaf s2l-global-source { + type uint32; + description + "S2L Global Source"; + } + list s2l-extended-id { + description + "S2L Extended ID Array"; + leaf entry { + type uint32; + description + "S2L Extended ID Array"; + } + } + } + + grouping TE-S2L-SRLG-COLLECT-INFO { + description + "SRLG-collection information"; + leaf srlg-collect-type { + type Te-srlg-collect-request; + description + "SRLG-collection mechanism"; + } + list discovered-srlg { + description + "Discovered SRLGs"; + leaf entry { + type uint32; + description + "Discovered SRLGs"; + } + } + } + + grouping MPLS-TE-TAIL-BFD-INFO { + description + "TE Tail-end BFD information"; + container session-info { + description + "BFD Session Info"; + uses MPLS-TE-BFD-SESSION-INFO; + } + leaf failure-diagnostic-code { + type uint32; + description + "BFD session failure diagnostic code"; + } + leaf failure-reason { + type string; + description + "BFD session failure reason"; + } + leaf local-discriminator { + type uint32; + description + "BFD Local Discriminator"; + } + leaf remote-discriminator { + type uint32; + description + "BFD Remote Discrminator"; + } + leaf min-interval { + type uint32; + description + "Hello interval in mini second"; + } + leaf min-interval-default { + type boolean; + description + "Is default hello interval"; + } + leaf multiplier { + type uint8; + description + "Multiplier"; + } + leaf multiplier-default { + type boolean; + description + "Is default multiplier"; + } + } + + grouping MPLS-TE-BFD-DELETION-HISTORY { + description + "TE Tunnel BFD Session Deletion History"; + leaf lsp-id { + type uint16; + description + "LSP ID of the BFD session get deleted"; + } + leaf deletion-time { + type uint32; + description + "Time stamp of the BFD session get deleted"; + } + leaf deletion-reason { + type string; + description + "Reason for the BFD session get deleted"; + } + leaf deletion-diagnostic-code { + type uint32; + description + "Diagnostic Code for the BFD session get deleted"; + } + } + + grouping MPLS-TE-BFD-SESSION-INFO { + description + "TE BFD Session Info"; + leaf state { + type Te-bfd-lsp-session-state; + description + "BFD session state"; + } + leaf state-change-time { + type uint32; + units "second"; + description + "Time in seconds since the last session state + change"; + } + } + + grouping MPLS-TE-HEAD-BFD-INFO { + description + "TE Head-end BFD information"; + container session-info { + description + "BFD Session Info"; + uses MPLS-TE-BFD-SESSION-INFO; + } + container deletion-history { + description + "BFD Session Deletion History"; + uses MPLS-TE-BFD-DELETION-HISTORY; + } + leaf creation-time { + type uint32; + units "second"; + description + "Time in seconds since the BFD session created"; + } + leaf lspbfd-type { + type Te-vif-bfd; + description + "LSP BFD type"; + } + leaf is-redundant { + type boolean; + description + "sBFD session is redundant"; + } + leaf bfd-reverse-path-stale { + type boolean; + description + "The BFD reverse path is stale compared to + configuration"; + } + list bfd-reverse-path-label { + description + "BFD reverse path labels"; + leaf entry { + type uint32; + description + "BFD reverse path labels"; + } + } + } + + grouping TE-PVT-PROT-OBJ { + description + "Private Protection information signaled"; + leaf sbit { + type boolean; + description + "Secondary bit"; + } + leaf pbit { + type boolean; + description + "Protecting bit"; + } + leaf nbit { + type boolean; + description + "Notification bit "; + } + leaf obit { + type boolean; + description + "Operational bit"; + } + leaf protect-type { + type Te-protect; + description + "LSP Protect Type"; + } + leaf is-wtr-present { + type boolean; + description + "Is Wait-to-Restore timeout present"; + } + leaf wtr-timeout { + type uint32; + description + "Wait-to-Restore timeout"; + } + leaf is-hopresent { + type boolean; + description + "Is Hold-Off timeout present"; + } + leaf ho-timeout { + type uint32; + description + "Hold-Off timeout"; + } + leaf is-snc-mode-present { + type boolean; + description + "Is SNC mode present"; + } + leaf snc-mode { + type Te-aps-snc-mode; + description + "SNC mode"; + } + leaf tcm-id { + type uint32; + description + "TCM ID"; + } + leaf path-prot-profile-type { + type Te-path-prot-profile; + description + "Path protection profile type"; + } + } + + grouping MPLS-TE-S2L-APS-INFO { + description + "APS Protection Info of S2L"; + container protection-info { + description + "Protection Info"; + uses TE-PVT-PROT-OBJ; + } + } + + grouping TE-ODU-FLEX-GFP-F-NON-RES-INFO { + description + "ODU flex info for non-resizable GFP-F framing + type"; + leaf bit-rate { + type uint32; + description + "Bit rate in kbit/s"; + } + } + + grouping TE-ODU-FLEX-GFP-F-RES-INFO { + description + "ODU flex info for resizable GFP-F framing type"; + leaf bit-rate { + type uint32; + description + "Bit rate in kbit/s"; + } + } + + grouping TE-ODU-FLEX-CBR-INFO { + description + "ODU flex info for CBR framing type"; + leaf bit-rate { + type uint32; + description + "Bit rate in kbit/s"; + } + leaf tolerance { + type uint16; + description + "Tolerance"; + } + } + + grouping TE-ODU-V3-BW { + description + "ODU bandwidth union"; + container odu-flex-cbr { + when "../odu-level = 'te-odu-level-flex-cbr'" { + description + "../ODULevel = 'TE_ODULevelFlexCBR'"; + } + description + "Odu flex CBR info"; + uses TE-ODU-FLEX-CBR-INFO; + } + container odu-flex-gfp-f-res { + when "../odu-level = 'te-odu-level-flex-gfpf-resizeable'" { + description + "../ODULevel = 'TE_ODULevelFlexGFPFResizeable'"; + } + description + "Odu flex GFP-F resizable info"; + uses TE-ODU-FLEX-GFP-F-RES-INFO; + } + container odu-flex-gfp-f-non-res { + when "../odu-level = 'te-odu-level-flex-gfpf-non-resizable'" { + description + "../ODULevel = 'TE_ODULevelFlexGFPFNonResizable'"; + } + description + "Odu flex GFP-F non-resizable info"; + uses TE-ODU-FLEX-GFP-F-NON-RES-INFO; + } + leaf odu-level { + type Te-odu-level; + description + "ODULevel"; + } + } + + grouping MPLS-TE-S2L-OTN-INFO { + description + "OTN S2L's Controllers' information"; + container bandwidth { + description + "OTN Bandwidth for s2l"; + uses TE-ODU-V3-BW; + } + container labels { + description + "Labels"; + uses MPLS-TE-MGMT-GMPLS-LABELS; + } + leaf incoming-controller { + type string; + description + "Incoming Controller"; + } + leaf incoming-controller-state { + type Te-controller-state; + description + "State of Incoming Controller"; + } + leaf incoming-sub-controller { + type string; + description + "Incoming Sub Controller"; + } + leaf incoming-sub-controller-state { + type Te-controller-state; + description + "State of Incoming Sub Controller"; + } + leaf outgoing-controller { + type string; + description + "Outgoing Controller"; + } + leaf outgoing-controller-state { + type Te-controller-state; + description + "State of Outgoing Controller"; + } + leaf outgoing-sub-controller { + type string; + description + "Outgoing Sub Controller"; + } + leaf outgoing-sub-controller-state { + type Te-controller-state; + description + "State of Outgoing Sub Controller"; + } + leaf cross-connect-id { + type uint32; + description + "Cross connect id"; + } + leaf is-connected { + type boolean; + description + "True if subcontrollers are connected"; + } + leaf uptime { + type uint32; + description + "XC Uptime"; + } + leaf outgoing-controller-ifhandle { + type xr:Interface-name; + description + "Outgoing Controller Ifhandle"; + } + leaf outgoing-sub-controller-ifhandle { + type xr:Interface-name; + description + "Outgoing Sub Controller Ifhandle"; + } + leaf incoming-controller-ifhandle { + type xr:Interface-name; + description + "Incoming Controller Ifhandle"; + } + leaf incoming-sub-controller-ifhandle { + type xr:Interface-name; + description + "Incoming Sub Controller Ifhandle"; + } + leaf gpid { + type uint16; + description + "Gpid Payload"; + } + } + + grouping MPLS-TE-OTN-S2L-INFO { + description + "OTN S2l information"; + container otn { + description + "Info Related to OTN technology in S2L"; + uses MPLS-TE-S2L-OTN-INFO; + } + container aps { + description + "APS Info for OTN S2L"; + uses MPLS-TE-S2L-APS-INFO; + } + } + + grouping MPLS-TE-MGMT-FSC-LABEL { + description + "GMPLS FSC Label"; + leaf interface-id { + type uint32; + description + "Interface Identifier"; + } + } + + grouping MPLS-TE-MGMT-G709-OTN-FIXED-SIZE-LABEL { + description + "GMPLS G709 OTN fixed-size Label"; + leaf tpn { + type uint16; + description + "Tributary time slot"; + } + leaf bit-map-length { + type uint16; + description + "Bit map length"; + } + list bit-map { + description + "Bit Map"; + leaf entry { + type uint8; + description + "Bit Map"; + } + } + } + + grouping MPLS-TE-MGMT-WDM-FIXED-GRID-LABEL { + description + "GMPLS WDM fixed-grid Label"; + leaf label-set { + type boolean; + description + "Flag to indicate whether label is set"; + } + leaf grid { + type Gmpls-uni-mgmt-wdm-grid; + description + "Grid"; + } + leaf channel-spacing { + type Gmpls-uni-mgmt-dwdm-cs; + description + "Channel spacing"; + } + leaf identifier { + type uint16; + description + "Identifier"; + } + leaf channel { + type int16; + description + "Channel Number"; + } + } + + grouping MPLS-TE-MGMT-GMPLS-LABEL { + description + "A GMPLS label"; + container wdm { + when "../label-type = 'fixed-wdm'" { + description + "../LabelType = 'FixedWDM'"; + } + description + "Fixed-grid WDM label"; + uses MPLS-TE-MGMT-WDM-FIXED-GRID-LABEL; + } + container otn { + when "../label-type = 'fixed-g709otn'" { + description + "../LabelType = 'FixedG709OTN'"; + } + description + "Fixed-size G09 OTN label"; + uses MPLS-TE-MGMT-G709-OTN-FIXED-SIZE-LABEL; + } + container fsc { + when "../label-type = 'fsc'" { + description + "../LabelType = 'FSC'"; + } + description + "FSC label"; + uses MPLS-TE-MGMT-FSC-LABEL; + } + leaf label-type { + type Mpls-te-mgmt-gmpls-label; + description + "LabelType"; + } + } + + grouping MPLS-TE-MGMT-GMPLS-LABELS { + description + "GMPLS Labels"; + container path-ingress-label { + description + "Path message (upstream) ingress label"; + uses MPLS-TE-MGMT-GMPLS-LABEL; + } + container path-egress-label { + description + "Path message (upstream) egress label"; + uses MPLS-TE-MGMT-GMPLS-LABEL; + } + container resv-ingress-label { + description + "Resv message (downstream) ingress label"; + uses MPLS-TE-MGMT-GMPLS-LABEL; + } + container resv-egress-label { + description + "Resv message (downstream) egress label"; + uses MPLS-TE-MGMT-GMPLS-LABEL; + } + } + + grouping MPLS-TE-SOFT-PREEMPTION-LSP-INFO { + description + "Midpoint Soft Preemption LSP Info"; + leaf status { + type Mpls-te-soft-preemption-state; + description + "The current state of the soft preemption + operation"; + } + leaf soft-preemption-timestamp { + type uint32; + description + "The POSIX timestamp when the soft preemption + occurred"; + } + leaf soft-preemption-link { + type string; + description + "Name of the link where the soft preemption + occurred"; + } + leaf preempting-link-address { + type inet:ipv4-address; + description + "The address of the link where the preemption + happened"; + } + leaf time-to-hard-preemption { + type uint16; + units "second"; + description + "The number of seconds until hard preemption is + triggered"; + } + leaf fr-rrewrite { + type boolean; + description + "FRR-rewrite during soft preemption"; + } + leaf fr-rrewrite-tunnel-name { + type string; + description + "The tunnel name of the backup"; + } + } + + grouping TE-LSP-CONVERGENCE-INFO { + description + "TE LSP convergence related information"; + leaf path-in { + type uint64; + units "nanosecond"; + description + "LSP RSVP Path-in timestamp (clocktime in nsecs)"; + } + leaf path-out { + type uint64; + units "nanosecond"; + description + "LSP RSVP Path-in timestamp (clocktime in nsecs)"; + } + leaf resv-in { + type uint64; + units "nanosecond"; + description + "LSP RSVP Resv-in timestamp (clocktime in nsecs)"; + } + leaf resv-out { + type uint64; + units "nanosecond"; + description + "LSP RSVP Resv-out timestamp (clocktime in nsecs)"; + } + leaf label-rewrite { + type uint64; + units "nanosecond"; + description + "LSP Label rewrite timestamp (clocktime in nsecs)"; + } + leaf tunnel-rewrite { + type uint64; + units "nanosecond"; + description + "Tunnel rewrite timestamp (clocktime in nsecs)"; + } + leaf creation-time { + type uint64; + units "nanosecond"; + description + "Tunnel creation timestamp (clocktime in nsecs)"; + } + } + + grouping TE-MGMT-G709-OTN-FSPEC { + description + "TE G709 OTN FSpec"; + leaf signal-type { + type uint8; + description + "Signal Type"; + } + leaf nmc-or-tolerance { + type uint16; + description + "NMC or Tolerance"; + } + leaf nvc { + type uint16; + description + "Number of Virtual Components"; + } + leaf multiplier { + type uint16; + description + "Multiplier"; + } + leaf bit-rate { + type uint32; + units "kbit/s"; + description + "Bit Rate in kbps"; + } + } + + grouping TE-MGMT-GENERIC-FSPEC { + description + "Union of different TE generic FSpec types"; + container otnfspec { + when "../fspec-type = 'te-generic-fspec-type-g709otn'" { + description + "../FSpecType = 'TEGenericFSpecTypeG709OTN'"; + } + description + "TE FSpec for G709 OTN"; + uses TE-MGMT-G709-OTN-FSPEC; + } + leaf fspec-type { + type Te-mgmt-generic-fspec; + description + "FSpecType"; + } + } + + grouping TE-MGMT-G709-OTN-TSPEC { + description + "TE G709 OTN TSpec"; + leaf signal-type { + type uint8; + description + "Signal Type"; + } + leaf nmc-or-tolerance { + type uint16; + description + "NMC or Tolerance"; + } + leaf nvc { + type uint16; + description + "Number of Virtual Components"; + } + leaf multiplier { + type uint16; + description + "Multiplier"; + } + leaf bit-rate { + type uint32; + units "kbit/s"; + description + "Bit Rate in kbps"; + } + } + + grouping TE-MGMT-GENERIC-TSPEC { + description + "Union of different TE generic TSpec types"; + container otntspec { + when "../tspec-type = 'te-generic-tspec-type-g709otn'" { + description + "../TSpecType = 'TEGenericTSpecTypeG709OTN'"; + } + description + "TE TSpec for G709 OTN"; + uses TE-MGMT-G709-OTN-TSPEC; + } + leaf tspec-type { + type Te-mgmt-generic-tspec; + description + "TSpecType"; + } + } + + grouping BANDWIDTH-SPEC-BAG { + description + "Bandwidth information of a flow"; + leaf average-rate { + type uint64; + units "kbit/s"; + description + "Average bandwidth in kbps"; + } + leaf maximum-burst { + type uint64; + units "byte"; + description + "Maximum burst of data in bytes"; + } + leaf peak-rate { + type uint64; + units "kbit/s"; + description + "Peak rate in kbps"; + } + } + + grouping TUNNEL-HOP-INFO { + description + "Hop information"; + leaf hop-address { + type inet:ipv4-address; + description + "Hop address"; + } + leaf hop-affinity { + type uint32; + description + "Deprecated"; + } + list hop-extended-affinity { + description + "Hop affinity"; + leaf entry { + type uint32; + description + "Hop affinity"; + } + } + } + + grouping RSVP-MGMT-RRO-SRLG-SUBOBJ { + description + "RSVP RRO SRLG subobject"; + list srl-gs { + description + "The RRO Subobject SRLGs"; + leaf entry { + type uint32; + description + "The RRO Subobject SRLGs"; + } + } + } + + grouping RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ-FLAGS { + description + "RSVP RRO UNNUMBERED Subobject Flags"; + leaf is-protection-available { + type boolean; + description + "Local Protection Available"; + } + leaf is-protection-in-use { + type boolean; + description + "Local Protection In Use"; + } + leaf is-bandwidth-protected { + type boolean; + description + "Bandwidth Protection Available"; + } + leaf is-node-protection-available { + type boolean; + description + "Node Protection Available"; + } + leaf is-node-id { + type boolean; + description + "Node ID In Use"; + } + } + + grouping RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ { + description + "RSVP RRO Unnumbered subobject"; + container flags { + description + "The RRO Subobject Unnumbered Flags"; + uses RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ-FLAGS; + } + leaf interface-address { + type inet:ipv4-address; + description + "The RRO Interface Address"; + } + leaf interface-id { + type uint32; + description + "The RRO Interface ID"; + } + } + + grouping RSVP-MGMT-RRO-LABEL-SUBOBJ-FLAGS { + description + "RSVP RRO Label Subobject Flags"; + leaf is-global-label { + type boolean; + description + "Label is Global across all interfaces"; + } + } + + grouping RSVP-MGMT-RRO-LABEL-SUBOBJ { + description + "RSVP RRO Label subobject"; + container flags { + description + "The RRO Subobject Label Flags"; + uses RSVP-MGMT-RRO-LABEL-SUBOBJ-FLAGS; + } + leaf label { + type uint32; + description + "The RRO Subobject Label Value"; + } + leaf is-label-variable-length { + type boolean; + description + "Is the RRO Subobject Label Variable Length"; + } + list variable-length-label { + description + "The RRO Subobject Variable Length Label"; + leaf entry { + type uint32; + description + "The RRO Subobject Variable Length Label"; + } + } + } + + grouping RSVP-MGMT-RRO-IPV4-SUBOBJ-FLAGS { + description + "RSVP RRO IPV4 Subobject Flags"; + leaf is-protection-available { + type boolean; + description + "Local Protection Available"; + } + leaf is-protection-in-use { + type boolean; + description + "Local Protection In Use"; + } + leaf is-bandwidth-protected { + type boolean; + description + "Bandwidth Protection Available"; + } + leaf is-node-protection-available { + type boolean; + description + "Node Protection Available"; + } + leaf is-node-id { + type boolean; + description + "Node ID In Use"; + } + } + + grouping RSVP-MGMT-RRO-IPV4-SUBOBJ { + description + "RSVP RRO IPV4 subobject"; + container flags { + description + "The RRO IPV4 Subobject Flags"; + uses RSVP-MGMT-RRO-IPV4-SUBOBJ-FLAGS; + } + leaf rro-address { + type inet:ipv4-address; + description + "The RRO IPV4 Address"; + } + } + + grouping RSVP-MGMT-RRO-SUBOBJ { + description + "Union of the different RSVP RRO types"; + container ipv4rro-sub-object { + when "../rro-type = 'ipv4rro-type'" { + description + "../RROType = 'IPv4RROType'"; + } + description + "IPV4 RRO Sub Object"; + uses RSVP-MGMT-RRO-IPV4-SUBOBJ; + } + container label-rro-sub-object { + when "../rro-type = 'label-rro-type'" { + description + "../RROType = 'LabelRROType'"; + } + description + "Label RRO Sub Object"; + uses RSVP-MGMT-RRO-LABEL-SUBOBJ; + } + container unnumbered-rro-sub-object { + when "../rro-type = 'unnumbered-rro-type'" { + description + "../RROType = 'UnnumberedRROType'"; + } + description + "Unnumbered RRO Sub Object"; + uses RSVP-MGMT-RRO-UNNUMBERED-SUBOBJ; + } + container srlg-rro-sub-object { + when "../rro-type = 'srlg-rro-type'" { + description + "../RROType = 'SRLG_RROType'"; + } + description + "SRLG RRO Sub Object"; + uses RSVP-MGMT-RRO-SRLG-SUBOBJ; + } + leaf rro-type { + type Rsvp-mgmt-rro-subobj; + description + "RROType"; + } + } + + grouping RSVP-MGMT-ERO-UNNUM-SUBOBJ { + description + "RSVP ERO UNNUM subobject"; + leaf is-strict-route { + type boolean; + description + "ERO Entry Is Strict"; + } + leaf ero-interface-id { + type uint32; + description + "The Interface ID in ERO"; + } + leaf ero-router-id { + type inet:ipv4-address; + description + "The Router ID in ERO"; + } + leaf status { + type Rsvp-mgmt-ero-subobj-status; + description + "Status of ERO"; + } + } + + grouping RSVP-MGMT-ERO-IPV4-SUBOBJ { + description + "RSVP ERO IPV4 subobject"; + leaf is-strict-route { + type boolean; + description + "ERO Entry Is Strict"; + } + leaf ero-address { + type inet:ipv4-address; + description + "The ERO IPV4 Address"; + } + leaf prefix-length { + type uint8; + description + "ERO Prefix Length"; + } + } + + grouping RSVP-MGMT-ERO-SUBOBJ { + description + "Union of the different RSVP ERO types"; + container ipv4ero-sub-object { + when "../ero-type = 'rsvp-mgmt-ero-type-ipv4'" { + description + "../EROType = 'RSVP_MGMT_ERO_TYPE_IPv4'"; + } + description + "IPV4 ERO Sub Object"; + uses RSVP-MGMT-ERO-IPV4-SUBOBJ; + } + container unnumbered-ero-sub-object { + when "../ero-type = 'rsvp-mgmt-ero-type-un-num'" { + description + "../EROType = 'RSVP_MGMT_ERO_TYPE_UNNUM'"; + } + description + "Unnumbered ERO Sub Object"; + uses RSVP-MGMT-ERO-UNNUM-SUBOBJ; + } + leaf ero-type { + type Rsvp-mgmt-ero-subobj; + description + "EROType"; + } + } + + grouping MPLS-TE-P2MP-SIG-ERROR { + description + "P2MP signalling error"; + leaf error-node { + type uint32; + description + "Source address of the error generating node"; + } + leaf error { + type uint8; + description + "Path Error code"; + } + leaf sub-code { + type uint16; + description + "Path Error subcode"; + } + leaf lsp-mode { + type Mpls-te-lsp-mode; + description + "LSPMode"; + } + leaf log-time { + type uint32; + units "second"; + description + "Time in seconds when the error message is logged"; + } + leaf signalling-lsp-id { + type uint16; + description + "LSP-id for which the error was received"; + } + leaf error-message { + type string; + description + "Error message (for display purposes only)"; + } + leaf reverse-lsp { + type boolean; + description + "Indicates if error is on the reverse LSP"; + } + } + + grouping MPLS-TE-P2MP-PCALC-ERROR { + description + "Path computation error information"; + leaf error-message { + type string; + description + "Error message (for display purposes only)"; + } + leaf lsp-mode { + type Mpls-te-lsp-mode; + description + "LSP Mode"; + } + leaf log-time { + type uint32; + units "second"; + description + "Time in seconds seconds (since Jan. 1, 1970) + when the error message is logged"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-UNI-P { + description + "UNI protection attribute set"; + leaf lsp-flag { + type Te-protection; + description + "End-end protection type"; + } + leaf seg-flag { + type Te-protection; + description + "Segment protection type"; + } + leaf in-place-bit { + type boolean; + description + "In place bit"; + } + leaf required-bit { + type boolean; + description + "Required Bit"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-SR-PREPEND-ENTRY { + description + "TE segment routing prepend entry"; + leaf type { + type Te-attribute-set-sr-prepend; + description + "Prepend Type"; + } + leaf index { + type uint32; + description + "Prepend index"; + } + leaf next-label { + type uint32; + description + "Prepend next label"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-SR-PREPEND-LIST { + description + "TE segment routing prepend list"; + list prepend-entry { + description + "List of prepend entries"; + uses MPLS-TE-ATTRIBUTE-SET-SR-PREPEND-ENTRY; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-P2P-TE { + description + "TE P2P-TE Attribute Set"; + container affinity { + description + "Affinity"; + uses MPLS-TE-TUNNELS-AFFINITY-INFO; + } + container logging { + description + "Logging attributes"; + uses MPLS-TE-LOGGING-ATTRIBUTES; + } + container prepend-list { + description + "SR prepend list"; + uses MPLS-TE-ATTRIBUTE-SET-SR-PREPEND-LIST; + } + leaf is-affinity-configured { + type boolean; + description + "Is affinity configured"; + } + leaf path-selection-segment-routing-adjacency-protection { + type Te-s2l-sr-path-selection; + description + "Path selection segment-routing type"; + } + leaf is-path-selection-segment-routing-adjacency-protection-configured { + type boolean; + description + "Is path selection segment routing configured"; + } + leaf path-invalidation-timeout { + type uint32; + description + "Path invalidation timeout on the tunnel path"; + } + leaf path-selection-invalidation-action { + type Te-path-inval-action; + description + "Path invalidation action"; + } + leaf is-path-invalidation-timeout-configured { + type boolean; + description + "Is Path Invalidation timeout configured"; + } + leaf is-path-invalidation-action-configured { + type boolean; + description + "Is Path Invalidation action configured"; + } + leaf path-selection-metric { + type Mpls-te-metric; + description + "Path selection metric type"; + } + leaf is-path-selection-metric-configured { + type boolean; + description + "Is path selection metric configured"; + } + leaf path-selection-segment-routing-margin { + type uint32; + description + "Path selection margin"; + } + leaf is-path-selection-segment-routing-margin-relative { + type boolean; + description + "Path selection margin is_relative"; + } + leaf is-path-selection-segment-routing-margin-configured { + type boolean; + description + "Is path selection margin configured"; + } + leaf path-selection-segment-routing-segment-limit { + type uint32; + description + "Is path selection segment limit configured"; + } + leaf is-path-selection-segment-routing-segment-limit-configured { + type boolean; + description + "Is path selection segment limit configured"; + } + leaf is-path-select-configured { + type boolean; + description + "Is any of the path selection parameters + configured"; + } + leaf is-prepend-list-configured { + type boolean; + description + "Is SR prepend list configured"; + } + leaf is-pce-configured { + type boolean; + description + "Is PCE Configured"; + } + leaf is-pce-disj-source-configured { + type boolean; + description + "Is PCE Disjoint Path Source Configured"; + } + leaf is-pce-disj-type-configured { + type boolean; + description + "Is PCE Disjoint Path Type Configured"; + } + leaf is-pce-disj-group-id-configured { + type boolean; + description + "Is PCE Disjoint Path Group ID Configured"; + } + leaf pcedp-source-address { + type uint32; + description + "PCE Disjoint Path Source Address"; + } + leaf pcedp-type { + type Te-pce-disjoint; + description + "PCE Disjoint Path Type"; + } + leaf pcedp-group-id { + type uint32; + description + "PCE Disjoint Path Group ID"; + } + leaf is-pceb-dj-source-configured { + type boolean; + description + "Is PCE Bidirectional Source Configured"; + } + leaf is-pcebd-group-id-configured { + type boolean; + description + "Is PCE Bidirectional Group ID Configured"; + } + leaf pcebd-source-address { + type uint32; + description + "PCE Bidirectional Source Address"; + } + leaf pcebd-group-id { + type uint32; + description + "PCE Bidirectional Group ID"; + } + list tunnel-id { + description + "Tunnel ID"; + leaf entry { + type uint16; + description + "Tunnel ID"; + } + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-APS-PP { + description + "TE OTN path protection attribute set"; + container revert-schedule { + description + "Revert Schedule"; + uses TE-REVERT-SCH; + } + leaf snc-mode { + type Te-aps-snc-mode; + description + "Sub-network Connection Mode"; + } + leaf tcm-id { + type uint32; + description + "Sub-network Connection Monitoring Mode"; + } + leaf protection-type { + type Te-protect; + description + "Protection Type"; + } + leaf protection-mode { + type Te-pnr-revert-options; + description + "Protection Restoration Mode"; + } + leaf wait-to-restore-time { + type uint32; + description + "Wait to restore time"; + } + leaf hold-off-time { + type uint32; + description + "Hold-off time"; + } + leaf path-prot-profile-type { + type Te-path-prot-profile; + description + "Path Protection Profile Type"; + } + leaf restoration-style { + type Te-restoration-style; + description + "Restoration Style"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-P2MP-TE { + description + "TE P2MP-TE Attribute Set"; + container affinity { + description + "Affinity"; + uses MPLS-TE-TUNNELS-AFFINITY-INFO; + } + leaf fast-reroute { + type boolean; + description + "Fast reroute"; + } + leaf frr-bandwidth-protection { + type boolean; + description + "FRR bandwidth protection"; + } + leaf setup-priority { + type uint8; + description + "Setup priority"; + } + leaf hold-priority { + type uint8; + description + "Hold priority"; + } + leaf is-priority-configured { + type boolean; + description + "Is priority configured"; + } + leaf configured-bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth value in kbps"; + } + leaf dste-class-type { + type uint8; + description + "DSTE Class"; + } + leaf is-bandwidth-configured { + type boolean; + description + "Is bandwidth configured"; + } + leaf is-affinity-configured { + type boolean; + description + "Is affinity configured"; + } + list tunnel-id { + description + "Tunnel ID"; + leaf entry { + type uint16; + description + "Tunnel ID"; + } + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-XRO { + description + "TE XRO attribute set"; + container xro { + description + "The XRO specified by this attribute-set"; + uses TE-XRO; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-AUTO-MESH { + description + "TE Auto-mesh Attribute Set"; + container affinity { + description + "Affinity"; + uses MPLS-TE-TUNNELS-AFFINITY-INFO; + } + container logging { + description + "Logging attributes"; + uses MPLS-TE-LOGGING-ATTRIBUTES; + } + leaf configured-bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth value in kbps"; + } + leaf dste-class-type { + type uint8; + description + "DSTE Class"; + } + leaf is-bandwidth-configured { + type boolean; + description + "Is bandwidth configured"; + } + leaf setup-priority { + type uint8; + description + "Setup priority"; + } + leaf hold-priority { + type uint8; + description + "Hold priority"; + } + leaf is-priority-configured { + type boolean; + description + "Is priority configured"; + } + leaf policy-class { + type uint8; + description + "deprecated"; + } + leaf is-policyclass-configured { + type boolean; + description + "Is policy class configured"; + } + leaf forward-class { + type uint32; + description + "Forward class"; + } + leaf is-forward-class-configured { + type boolean; + description + "True if forward-class is configured"; + } + leaf is-affinity-configured { + type boolean; + description + "Is affinity configured"; + } + leaf fast-reroute { + type boolean; + description + "Fast reroute"; + } + leaf frr-node-protection { + type boolean; + description + "FRR Node protection"; + } + leaf frr-bandwidth-protection { + type boolean; + description + "FRR bandwidth protection"; + } + leaf record-route { + type boolean; + description + "Record route"; + } + leaf auto-bandwidth-collect { + type boolean; + description + "Auto bandwidth collect only"; + } + leaf auto-route-announce { + type boolean; + description + "Announce auto route to IGP"; + } + leaf soft-preemption-configured { + type boolean; + description + "Soft preemption is configured"; + } + leaf bandwidth { + type uint32; + description + "IM bandwidth"; + } + leaf load-share { + type uint32; + description + "Load Share"; + } + leaf is-interface-bw-configured { + type boolean; + description + "Is Interface BW configured"; + } + list policy-class-entry { + description + "PBTS policy classes"; + leaf entry { + type uint8; + description + "PBTS policy classes"; + } + } + list mesh-group-id { + description + "Meshgroup ID"; + leaf entry { + type uint32; + description + "Meshgroup ID"; + } + } + list tunnel-id { + description + "Tunnel ID"; + leaf entry { + type uint16; + description + "Tunnel ID"; + } + } + } + + grouping MPLS-TE-PROTECTED-IF-NAME-STR { + description + "TE Protected Interface Name String"; + leaf protected-interface { + type string; + description + "Protected Interface Name"; + } + } + + grouping MPLS-TE-LOGGING-ATTRIBUTES { + description + "TE Logging Attributes"; + leaf lsp-state { + type boolean; + description + "LSP State logging: TRUE - enabled, FALSE - + disabled"; + } + leaf s2l-state { + type boolean; + description + "S2L State logging: TRUE - enabled, FALSE - + disabled"; + } + leaf lsp-re-route { + type boolean; + description + "LSP re-route logging: TRUE - enabled, FALSE - + disabled"; + } + leaf lsp-re-opt { + type boolean; + description + "LSP re-optimization logging: TRUE - enabled, + FALSE - disabled"; + } + leaf lsp-insufficient-bw { + type boolean; + description + "LSP insufficient bandwidth logging: TRUE - + enabled, FALSE - disabled"; + } + leaf lsp-bandwidth-change { + type boolean; + description + "LSP bandwidth change logging: TRUE - enabled, + FALSE - disabled"; + } + leaf lsp-pcalc-failure-logging-enabled { + type boolean; + description + "LSP pcalc failure logging: TRUE - enabled, FALSE + - disabled"; + } + leaf all-logging-enabled { + type boolean; + description + "All logging option: TRUE - enabled, FALSE - + disabled"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-SIG-NAME { + description + "Attribute set signalled name"; + leaf name { + type string; + description + "Signalled name"; + } + leaf source-type { + type Te-sig-name-append; + description + "Source address or name"; + } + leaf protected-interface-type { + type Te-sig-name-append; + description + "Protected interface address or name"; + } + leaf is-mp-addresses { + type boolean; + description + "MP address appended"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-AUTO-BACKUP { + description + "TE Auto-backup Attribute Set"; + container signalled-name { + description + "Signalled name"; + uses MPLS-TE-ATTRIBUTE-SET-SIG-NAME; + } + container affinity { + description + "Affinity"; + uses MPLS-TE-TUNNELS-AFFINITY-INFO; + } + container logging { + description + "Logging attributes"; + uses MPLS-TE-LOGGING-ATTRIBUTES; + } + leaf is-signalled-name-configured { + type boolean; + description + "Is signalled name configured"; + } + leaf setup-priority { + type uint8; + description + "Setup priority"; + } + leaf hold-priority { + type uint8; + description + "Hold priority"; + } + leaf is-priority-configured { + type boolean; + description + "Is priority configured"; + } + leaf policy-class { + type uint8; + description + "deprecated"; + } + leaf is-policyclass-configured { + type boolean; + description + "Is policy class configured"; + } + leaf is-affinity-configured { + type boolean; + description + "Is affinity configured"; + } + leaf record-route { + type boolean; + description + "Record route"; + } + list policy-class-entry { + description + "PBTS policy classes"; + leaf entry { + type uint8; + description + "PBTS policy classes"; + } + } + list tunnel-id { + description + "Tunnel ID"; + leaf entry { + type uint16; + description + "Tunnel ID"; + } + } + list protected-interface { + description + "Array of Protected Interface Names"; + uses MPLS-TE-PROTECTED-IF-NAME-STR; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-BFD-REV-PATH { + description + "TE segment routing path list"; + leaf path-type { + type Te-bfd-reverse-path; + description + "BFD reverse path type"; + } + leaf binding-label { + type uint32; + description + "BFD reverse path binding label"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-VERSION { + description + "TE attribute set versioning info"; + leaf attribute-type { + type string; + description + "Attribute Type"; + } + leaf generation { + type uint32; + description + "Generation"; + } + leaf is-default { + type boolean; + description + "Is default"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-PATH-OPTION { + description + "TE Path Option Attribute Set"; + container affinity { + description + "Affinity"; + uses MPLS-TE-TUNNELS-AFFINITY-INFO; + } + container bfd-reverse-path { + description + "BFD reverse path"; + uses MPLS-TE-ATTRIBUTE-SET-BFD-REV-PATH; + } + leaf configured-bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth value in kbps"; + } + leaf cost-limit { + type uint32; + description + "Cost limit on the tunnel path"; + } + leaf dste-class-type { + type uint8; + description + "DSTE Class"; + } + leaf bandwidth-type { + type Mpls-te-bw-pool; + description + "The bandwidth type"; + } + leaf is-bandwidth-configured { + type boolean; + description + "Is bandwidth configured"; + } + leaf is-cost-limit-configured { + type boolean; + description + "Is Cost Limit configured"; + } + leaf is-affinity-configured { + type boolean; + description + "Is affinity configured"; + } + leaf generation { + type uint32; + description + "Generation"; + } + leaf path-invalidation-timeout { + type uint32; + description + "Path invalidation interval on the tunnel path"; + } + leaf path-invalidation-action { + type uint32; + description + "Path invalidation action"; + } + leaf is-path-invalidation-timeout-configured { + type boolean; + description + "Is path invalidation timeout configured"; + } + leaf is-path-invalidation-action-configured { + type boolean; + description + "Is path invalidation action configured"; + } + leaf exclude-list-name { + type string; + description + "Exclude list name"; + } + leaf is-exclude-list-name-configured { + type boolean; + description + "Is exclude list name configured"; + } + leaf is-pce-configured { + type boolean; + description + "Is PCE Configured"; + } + leaf is-pce-disj-source-configured { + type boolean; + description + "Is PCE Disjoint Path Source Configured"; + } + leaf is-pce-disj-type-configured { + type boolean; + description + "Is PCE Disjoint Path Type Configured"; + } + leaf is-pce-disj-group-id-configured { + type boolean; + description + "Is PCE Disjoint Path Group ID Configured"; + } + leaf pcedp-source-address { + type uint32; + description + "PCE Disjoint Path Source Address"; + } + leaf pcedp-type { + type Te-pce-disjoint; + description + "PCE Disjoint Path Type"; + } + leaf pcedp-group-id { + type uint32; + description + "PCE Disjoint Path Group ID"; + } + leaf is-pceb-dj-source-configured { + type boolean; + description + "Is PCE Bidirectional Source Configured"; + } + leaf is-pcebd-group-id-configured { + type boolean; + description + "Is PCE Bidirectional Group ID Configured"; + } + leaf pcebd-source-address { + type uint32; + description + "PCE Bidirectional Source Address"; + } + leaf pcebd-group-id { + type uint32; + description + "PCE Bidirectional Group ID"; + } + leaf is-bfd-reverse-pat-configured { + type boolean; + description + "Is BFD reverse path configured"; + } + leaf is-delay-limit-configured { + type boolean; + description + "Is Delay Limit configured"; + } + leaf delay-limit { + type uint32; + description + "Delay limit on the tunnel path (usec) When delay + limit is configured"; + } + list tunnel-id { + description + "Tunnel ID"; + leaf entry { + type uint16; + description + "Tunnel ID"; + } + } + list version-info { + description + "Version Info"; + uses MPLS-TE-ATTRIBUTE-SET-VERSION; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET-UNION { + description + "TE Attribute Set Union"; + container attribute-set-path-option { + when "../tunnel-attribute-set-type = 'tunnel-attribute-set-path-option'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeSetPathOption'"; + } + description + "MPLS TE Path Option Attribute Set"; + uses MPLS-TE-ATTRIBUTE-SET-PATH-OPTION; + } + container attribute-set-autobackup { + when "../tunnel-attribute-set-type = 'tunnel-attribute-set-auto-backup'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeSetAutoBackup'"; + } + description + "MPLS TE Auto-backup Attribute Set"; + uses MPLS-TE-ATTRIBUTE-SET-AUTO-BACKUP; + } + container attribute-set-automesh { + when "../tunnel-attribute-set-type = 'tunnel-attribute-set-auto-mesh'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeSetAutoMesh'"; + } + description + "MPLS TE Auto-mesh Attribute Set"; + uses MPLS-TE-ATTRIBUTE-SET-AUTO-MESH; + } + container attribute-set-xro { + when "../tunnel-attribute-set-type = 'tunnel-attribute-set-xro'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeSetXRO'"; + } + description + "Attribute Set XRO"; + uses MPLS-TE-ATTRIBUTE-SET-XRO; + } + container attribute-set-p2mpte { + when "../tunnel-attribute-set-type = 'tunnel-attribute-set-p2mpte'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeSetP2MPTE'"; + } + description + "MPLS TE P2MP-TE Attribute Set"; + uses MPLS-TE-ATTRIBUTE-SET-P2MP-TE; + } + container attribute-set-aps-pp { + when "../tunnel-attribute-set-type = 'tunnel-attribute-aps-pp'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeAPS_PP'"; + } + description + "Attribute Set OTN APS Path Protection"; + uses MPLS-TE-ATTRIBUTE-SET-APS-PP; + } + container attribute-set-p2p-te { + when "../tunnel-attribute-set-type = 'tunnel-attribute-set-p2p-te'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeSetP2P_TE'"; + } + description + "MPLS TE P2P-TE Attribute Set"; + uses MPLS-TE-ATTRIBUTE-SET-P2P-TE; + } + container attribute-set-uni-p { + when "../tunnel-attribute-set-type = 'tunnel-attribute-uni-p'" { + description + "../TunnelAttributeSetType = + 'TunnelAttributeUNI_P'"; + } + description + "Attribute Set UNI protection"; + uses MPLS-TE-ATTRIBUTE-SET-UNI-P; + } + leaf tunnel-attribute-set-type { + type Tunnel-attribute-set; + description + "TunnelAttributeSetType"; + } + } + + grouping MPLS-TE-ATTRIBUTE-SET { + description + "TE Attribute Set"; + container attribute-set-union { + description + "Union of Attribute Sets"; + uses MPLS-TE-ATTRIBUTE-SET-UNION; + } + leaf tunnel-attribute-set-name { + type string; + description + "Attribute Set Name"; + } + leaf tunnel-attribute-set-name-crc32 { + type uint32; + description + "Attribute Set name CRC32 value"; + } + } + + grouping MPLS-TE-P2MP-PATH-OPTION { + description + "P2MP path-option"; + container attribute-set { + description + "The path option attribute set used by this path"; + uses MPLS-TE-ATTRIBUTE-SET; + } + container xro-attribute-set { + description + "The XRO attribute set used by this path-option"; + uses MPLS-TE-ATTRIBUTE-SET; + } + leaf option-index-is-valid { + type boolean; + description + "The path option index is valid"; + } + leaf option-index { + type uint32; + description + "Path option index"; + } + leaf path-option-name { + type string; + description + "Path option name"; + } + leaf path-option-type { + type Mpls-te-pathoption; + description + "Path option type"; + } + leaf explicit-path-name { + type string; + description + "Explicit Path Name, this is the key to table + ExplicitPaths.NameTable"; + } + leaf explicit-path-id { + type uint16; + description + "Explicit Path ID, this is the key to table + ExplicitPaths.IdentifierTable"; + } + leaf holddown-duration { + type uint16; + units "second"; + description + "Holddown Duration (seconds)"; + } + leaf pce-address { + type inet:ipv4-address; + description + "PCE server address"; + } + leaf path-option-area-id { + type string; + description + "The path-option area constraint"; + } + leaf is-strict-explicit-path { + type boolean; + description + "TRUE if explicit path is strict"; + } + leaf is-helddown { + type boolean; + description + "TRUE if path is helddown"; + } + leaf is-lockdown { + type boolean; + description + "TRUE if the path is locked down"; + } + leaf is-sticky { + type boolean; + description + "TRUE if the path is sticky"; + } + leaf is-verbatim { + type boolean; + description + "TRUE if the path is verbatim"; + } + leaf is-disabled { + type boolean; + description + "TRUE if the path option is disabled"; + } + leaf has-attribute-set { + type boolean; + description + "TRUE if the path has an attribute set defined"; + } + leaf attribute-set-found { + type boolean; + description + "TRUE if the path has found the defined attribute + set"; + } + leaf has-xro-attribute-set { + type boolean; + description + "TRUE if the path has an XRO attribute set + configured"; + } + leaf xro-attribute-set-found { + type boolean; + description + "TRUE if the path's XRO attribute set is known"; + } + leaf is-segment-routing { + type boolean; + description + "TRUE if the path is Segment-Routing"; + } + leaf protected-by-path-option-index { + type uint32; + description + "Path option index for Protect path options"; + } + leaf restored-from-path-option-index { + type uint32; + description + "Path option index for Restore path options"; + } + leaf setup-timeout { + type uint16; + description + "Path setup retry timer timeout value"; + } + list path-calculation-error { + description + "Path computation information"; + uses MPLS-TE-P2MP-PCALC-ERROR; + } + list remerge-error { + description + "Path computation remerge resolve info"; + uses MPLS-TE-P2MP-PCALC-ERROR; + } + list signalling-error { + description + "Signalling information"; + uses MPLS-TE-P2MP-SIG-ERROR; + } + } + + grouping MPLS-TE-P2MP-S2L { + description + "A P2MP S2L"; + container s2l-fec { + description + "FEC for the S2L"; + uses TE-S2L-FEC; + } + container active-path-option { + description + "The path option used to find the path for this + S2L"; + uses MPLS-TE-P2MP-PATH-OPTION; + } + container out-xro { + description + "Outgoing XRO for this S2L"; + uses TE-XRO; + } + container in-xro { + description + "Incoming XRO for this S2L"; + uses TE-XRO; + } + container tspec { + description + "The T spec info"; + uses BANDWIDTH-SPEC-BAG; + } + container generic-tspec { + description + "Generic TSpec"; + uses TE-MGMT-GENERIC-TSPEC; + } + container fspec { + description + "The F spec info"; + uses BANDWIDTH-SPEC-BAG; + } + container generic-fspec { + description + "Generic FSpec"; + uses TE-MGMT-GENERIC-FSPEC; + } + container next-hop-address-generic { + description + "Next hop address"; + uses TE-ADDR; + } + container previous-hop-address-generic { + description + "Previous hop address"; + uses TE-ADDR; + } + container incoming-address-generic { + description + "Incoming interface address"; + uses TE-ADDR; + } + container s2l-convergence { + description + "TE LSP convergence related information"; + uses TE-LSP-CONVERGENCE-INFO; + } + container soft-preemption { + description + "The soft preemption info for this LSP."; + uses MPLS-TE-SOFT-PREEMPTION-LSP-INFO; + } + container gmpls-labels { + description + "GMPLS labels"; + uses MPLS-TE-MGMT-GMPLS-LABELS; + } + container otn-s2l { + description + "Otn S2L Information"; + uses MPLS-TE-OTN-S2L-INFO; + } + container head-end-bfd-info { + description + "The Head-end BFD info"; + uses MPLS-TE-HEAD-BFD-INFO; + } + container tail-end-bfd-info { + description + "The Tail-end BFD info"; + uses MPLS-TE-TAIL-BFD-INFO; + } + container srlg-collection { + description + "SRLG-collection data"; + uses TE-S2L-SRLG-COLLECT-INFO; + } + container association { + description + "Association Object"; + uses MPLS-TE-S2L-ASSOCIATION-OBJECT; + } + container protection { + description + "Protection Object"; + uses MPLS-TE-S2L-PROTECTION-OBJECT; + } + container reverse-lsp-fec { + description + "Reverse Associated Bidir LSP FEC"; + uses TE-LSP-FEC; + } + container reverse-tspec { + description + "The Reverse T spec info"; + uses BANDWIDTH-SPEC-BAG; + } + container flex-info { + description + "FlexLSP S2L Information"; + uses MPLS-TE-S2L-FLEX-INFO; + } + container lsp-wrap-info { + description + "Lsp Wrap Related information"; + uses TUNNEL-MIDPOINT-LSP-WRAP-INFO-BAG; + } + container diversity-info { + description + "S2L Diversity Information"; + uses MPLS-TE-S2L-DIVERSITY-INFO; + } + container accumulated-path-metrics { + description + "Accumulated Path Metrics"; + uses MPLS-TE-PATH-METRICS; + } + container accumulated-reverse-path-metrics { + description + "Accumulated Reverse Path Metrics"; + uses MPLS-TE-PATH-METRICS; + } + container delay-measurement { + description + "S2L delay-measurement notification information"; + uses MPLS-TE-S2L-DELAY-MEASUREMENT; + } + leaf pcalc-area { + type string; + description + "IGP-area in which the S2L path was calculated"; + } + leaf is-expanded-ero { + type boolean; + description + "TRUE if this LSR expanded a loose path"; + } + leaf path-reeval-query-mid { + type uint32; + description + "Loose path reevaluation query received at + mid-point"; + } + leaf time-since-last-query-received-mid { + type uint32; + description + "Time since last reevaluation query received at + mid-point"; + } + leaf time-since-last-preferred-path-exists-send-mid { + type uint32; + description + "Time since last preferred path exists msg send + from mid-point"; + } + leaf time-since-last-preferred-tree-exists-send-mid { + type uint32; + description + "Time since last preferred tree exists msg send + from mid-point"; + } + leaf expanded-ero-area-id { + type string; + description + "Indicates the protocol and area used to find + Outgoing ERO"; + } + leaf expanded-ero-affinity-bits { + type uint32; + description + "The Outgoing ERO's affinity bits (colors)"; + } + leaf expanded-ero-affinity-mask { + type uint32; + description + "The Outgoing ERO's affinity mask (colors)"; + } + leaf expanded-ero-metric-type { + type Mpls-te-metric; + description + "The Outgoing ERO's selection metric"; + } + leaf expanded-ero-metric { + type uint32; + description + "The metric value of the expanded path"; + } + leaf abr-auto-discovered { + type inet:ipv4-address; + description + "Next ABR auto discovered"; + } + leaf is-frr-enabled { + type boolean; + description + "FRR Enabled or Disabled"; + } + leaf is-node-protected { + type boolean; + description + "Node Protection Enabled or Disabled"; + } + leaf is-bandwidth-protect { + type boolean; + description + "BW Protection Enabled or Disabled"; + } + leaf path-rro-enabled { + type boolean; + description + "Path RRO Enabled or Disabled"; + } + leaf weight { + type uint64; + description + "The path's weight"; + } + leaf reverse-weight { + type uint64; + description + "The reverse path weight"; + } + leaf uptime { + type uint32; + units "second"; + description + "Time in seconds since the tunnel was up"; + } + leaf egress-interface { + type string; + description + "Egress Interface"; + } + leaf egress-interface-state { + type Te-controller-state; + description + "State of Outgoing Interface"; + } + leaf egress-interface-brief { + type string; + description + "Egress Interface in brief format"; + } + leaf ingress-interface { + type string; + description + "Ingress Interface"; + } + leaf ingress-interface-state { + type Te-controller-state; + description + "State of Incoming Interface"; + } + leaf ingress-interface-brief { + type string; + description + "Ingress Interface in brief format"; + } + leaf s2l-local-label { + type uint32; + description + "Local label"; + } + leaf s2l-out-label { + type uint32; + description + "Outgoing label"; + } + leaf outbound-frr-state { + type Mpls-te-frr-state; + description + "Indicates outbound FRR state"; + } + leaf frr-out-tunnel-interface { + type string; + description + "FRR out tunnel intface"; + } + leaf role { + type Mpls-te-tunnel-role; + description + "Role of S2L"; + } + leaf signalling-status { + type Mpls-te-tunnels-signaling-status; + description + "Signaling status"; + } + leaf local-router-id { + type inet:ipv4-address; + description + "Local router id"; + } + leaf upstream-router-id { + type inet:ipv4-address; + description + "Upstream router id"; + } + leaf downstream-router-id { + type inet:ipv4-address; + description + "Downstream router id"; + } + leaf next-hop-address { + type inet:ipv4-address; + description + "Next hop address"; + } + leaf next-next-hop-address { + type inet:ipv4-address; + description + "Next next hop address"; + } + leaf previous-hop-address { + type inet:ipv4-address; + description + "Previous hop address"; + } + leaf incoming-address { + type inet:ipv4-address; + description + "Incoming interface address"; + } + leaf backup-tunnel-interface { + type xr:Interface-name; + description + "Interface handle of the backup tunnel"; + } + leaf node-hop-count { + type uint8; + description + "Hop count"; + } + leaf is-optical { + type boolean; + description + "Is Optical"; + } + leaf s2l-reverse-ero-obj-present { + type boolean; + description + " S2l Reverse ERO Object Present"; + } + leaf reverse-lsp-present { + type boolean; + description + "Reverse Associated Bidir LSP Present"; + } + leaf reverse-lsp-connected { + type boolean; + description + "Reverse Associated Bidir LSP Connected"; + } + leaf reverse-lsp-name { + type string; + description + "Reverse Associated Bidir LSP Name"; + } + leaf s2l-reverse-tspec-obj-present { + type boolean; + description + " S2L Reverse TSpec Object Present"; + } + leaf path-using-strict-spf { + type boolean; + description + "Path is using Strict SPF"; + } + list s2l-reverse-lsp-sub-obj { + description + "Reverse LSP Sub Objects"; + leaf entry { + type uint8; + description + "Reverse LSP Sub Objects"; + } + } + list shared-risk-link-group { + description + "The S2L's excluded srlg groups"; + uses MPLS-SRLG-INFO; + } + list out-ero { + description + "Outgoing ERO for this S2L"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + list in-ero { + description + "Incoming ERO for this S2L"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + list path-rro { + description + "Path RRO for this S2L"; + uses RSVP-MGMT-RRO-SUBOBJ; + } + list resv-rro { + description + "Resv RRO for this S2L"; + uses RSVP-MGMT-RRO-SUBOBJ; + } + list path-affinity-array { + description + "Tunnel's Path hops with affinity"; + uses TUNNEL-HOP-INFO; + } + list reverse-ero-in { + description + " Reverse Incoming ERO for this S2L"; + uses RSVP-MGMT-ERO-SUBOBJ; + } + list s2l-segment-routing-path { + description + "Segment-Routing S2L path info"; + uses TE-S2L-SR-PATH-HOP; + } + } + + grouping MPLS-TE-P2MP-LSP { + description + "A P2MP LSP"; + container lsp-fec { + description + "FEC for the LSP"; + uses TE-LSP-FEC; + } + leaf signaled-name { + type string; + description + "Signaled Name"; + } + leaf is-frr-failed { + type boolean; + description + "P2MP LSP has FRR Failed"; + } + leaf frr-active-reason { + type uint32; + description + "P2MP LSP FRR active reason"; + } + leaf lsp-bandwidth { + type uint32; + description + "P2MP LSP Bandwidth"; + } + leaf lsp-setup-priority { + type uint8; + description + "LSP setup priority"; + } + leaf lsp-hold-priority { + type uint8; + description + "LSP hold priority"; + } + leaf lsp-bandwidth-type { + type Mpls-te-bw-pool; + description + "The LSP bandwidth type"; + } + leaf dste-class-match { + type boolean; + description + "Do the class type and priority match a DSTE + class"; + } + leaf dste-class-index { + type uint8; + description + "Matching DSTE class index"; + } + leaf type { + type Mpls-te-lsp; + description + "The type of this LSP"; + } + leaf uptime { + type uint32; + units "second"; + description + "Time in seconds since the tunnel was up"; + } + leaf s2-ls-up { + type uint32; + description + "Number of connected S2Ls"; + } + leaf s2-ls-proceeding { + type uint32; + description + "Number of proceeding S2Ls"; + } + leaf s2-ls-down { + type uint32; + description + "Number of down S2Ls"; + } + leaf reoptimize-reason { + type Mpls-te-reopt-decision-reason; + description + "Reason for re-optimization"; + } + leaf reoptimize-trigger { + type Mte-reopt-trigger; + description + "Re-optimize trigger"; + } + leaf timer-left { + type uint32; + units "second"; + description + "Time in seconds left to take next action if any"; + } + leaf is-passive { + type boolean; + description + "True for passive tunnel"; + } + leaf is-interface { + type boolean; + description + "True for tunnel head"; + } + leaf last-path-change { + type uint32; + units "second"; + description + "Time in seconds since the last path change"; + } + leaf persistent-bytes { + type uint64; + units "byte"; + description + "Persistent forwarding statistics for number of + bytes. Clear counters will not reset the counter"; + } + leaf persistent-packets { + type uint64; + description + "Persistent forwarding statistics for Number of + packets. Clear counters will not reset the + counter"; + } + leaf protection-role { + type Te-lsp-path-protection-role; + description + "Path Protection Role"; + } + list s2l { + description + "array of S2L structures"; + uses MPLS-TE-P2MP-S2L; + } + } + + grouping MPLS-TE-P2MP-S2L-BRIEF { + description + "A P2MP S2L"; + container s2l-fec { + description + "FEC for the S2L"; + uses TE-S2L-FEC; + } + leaf uptime { + type uint32; + units "second"; + description + "Time in seconds since the S2L was up"; + } + leaf egress-interface { + type string; + description + "Egress Interface"; + } + leaf ingress-interface { + type string; + description + "Ingress Interface"; + } + leaf role { + type Mpls-te-tunnel-role; + description + "Role of S2L"; + } + leaf oper-state { + type boolean; + description + "Oper state of S2L"; + } + } + + grouping MPLS-TE-P2MP-LSP-BRIEF { + description + "A P2MP LSP"; + container lsp-fec { + description + "FEC for the LSP"; + uses TE-LSP-FEC; + } + leaf signaled-name { + type string; + description + "Signaled Name"; + } + leaf uptime { + type uint32; + units "second"; + description + "Time in seconds since the LSP was up"; + } + list s2l { + description + "array of S2L structures"; + uses MPLS-TE-P2MP-S2L-BRIEF; + } + } + + grouping TE-HW-OOR-STATS { + description + "HW OOR statistics"; + leaf hw-oor-state { + type Hw-oor-state; + description + "The HW-OOR state that these statistics belong to"; + } + leaf transitions { + type uint32; + description + "Number of transitions to this state"; + } + leaf node-protection-disable-number { + type uint32; + description + "Number of times this OOR state disabled node + protection assignment"; + } + leaf rejected-ls-ps-number { + type uint32; + description + "Number of LSPs that were rejected in this state"; + } + leaf accepted-ls-ps-number { + type uint32; + description + "Number of LSPs that were accepted in this state"; + } + leaf accepted-reopt-ls-ps-number { + type uint32; + description + "Number of Reoptimize LSPs that were accepted in + this state"; + } + leaf rejected-reopt-ls-ps-number { + type uint32; + description + "Number of Reoptimize LSPs that were rejected in + this state"; + } + } + + grouping TE-HW-OOR-STATE-INFO { + description + "HW OOR State Information"; + container statistics { + description + "NPU HW OOR Statistics per state"; + uses TE-HW-OOR-STATS; + } + leaf hw-oor-state { + type Hw-oor-state; + description + "The HW-OOR state that this information belong to"; + } + leaf te-metric-penalty { + type uint32; + description + "The TE metric penalty when the link is in this + NPU HW OOR state"; + } + leaf available-bw-percentage { + type uint32; + units "percentage"; + description + "The flooded percentage of available bandwidth + advertized when the link is in this NPU HW OOR + state"; + } + leaf node-protection-disable { + type boolean; + description + "Disable FRR node protection when the link is in + this NPU HW OOR state"; + } + leaf transition-duration { + type uint32; + units "minute"; + description + "Recovery in minutes after the green OOR state is + entered."; + } + leaf minimum-lsp-bandwidth { + type uint32; + description + "Minimum LSP bandwidth so the LSP is admitted + when the link is in this NPU HW OOR state"; + } + leaf accept-reopt { + type boolean; + description + "Make-before-break is allowed for LSPs + reoptimizing over the same link in the NPU HW + OOR state"; + } + } + + grouping TE-HW-OOR-INFO { + description + "NPU HW OOR parameters for MPLS-TE"; + list hardware-out-of-resources-state { + max-elements "3"; + description + "Array of NPU HW OOR info per state"; + uses TE-HW-OOR-STATE-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub6.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub6.yang new file mode 100644 index 000000000..393fd1e40 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub6.yang @@ -0,0 +1,3475 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub6 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Igpte-link-encoding-protocol { + type enumeration { + enum "link-encoding-protocol-none" { + value 0; + description + "None"; + } + enum "link-encoding-protocol-p-acket" { + value 1; + description + "Packet"; + } + enum "link-encoding-protocol-ethernet" { + value 2; + description + "Ethernet"; + } + enum "link-encoding-protocol-ansi-etsi-pdh" { + value 3; + description + "ANSI ETSI PDH"; + } + enum "link-encoding-protocol-reserved4" { + value 4; + description + "Reserved"; + } + enum "link-encoding-protocol-sdh-sonet" { + value 5; + description + "SDH SONET"; + } + enum "link-encoding-protocol-reserved6" { + value 6; + description + "Reserved"; + } + enum "link-encoding-protocol-digital-wrapper" { + value 7; + description + "Digital Wrapper"; + } + enum "link-encoding-protocol-lambda-photonic" { + value 8; + description + "Lambda Photonic"; + } + enum "link-encoding-protocol-fiber" { + value 9; + description + "Fiber"; + } + enum "link-encoding-protocol-reserved10" { + value 10; + description + "Reserved"; + } + enum "link-encoding-protocol-fiber-channel" { + value 11; + description + "Fiber Channel"; + } + enum "link-encoding-protocol-g709otn" { + value 12; + description + "G709 OTN"; + } + enum "link-encoding-protocol-ethernet-type2" { + value 14; + description + "Ethernet Type 2"; + } + enum "link-encoding-protocol-passive-internal" { + value 200; + description + "Derived from ingress node"; + } + } + description + "Link protocol switching capabilities"; + } + + typedef Igpte-link-switch-capability { + type enumeration { + enum "link-switching-capability-none" { + value 0; + description + "None"; + } + enum "link-switching-capability-psc1" { + value 1; + description + "Packet (level 1)"; + } + enum "link-switching-capability-psc2" { + value 2; + description + "Packet (level 2)"; + } + enum "link-switching-capability-psc3" { + value 3; + description + "Packet (level 3)"; + } + enum "link-switching-capability-psc4" { + value 4; + description + "Packet (level 4)"; + } + enum "link-switching-capability-l2sc" { + value 51; + description + "Layer 2"; + } + enum "link-switching-capability-tdm" { + value 100; + description + "TDM"; + } + enum "link-switching-capability-otn-tdm" { + value 110; + description + "OTN TDM"; + } + enum "link-switching-capability-dcsc" { + value 125; + description + "DCSC"; + } + enum "link-switching-capability-lsc" { + value 150; + description + "LSC"; + } + enum "link-switching-capability-fsc" { + value 200; + description + "FSC"; + } + } + description + "Link protocol switching capabilities"; + } + + typedef Otu { + type enumeration { + enum "non-otu" { + description + "Type Non OTU"; + } + enum "otu1" { + description + "Type OTU1"; + } + enum "otu1e" { + description + "Type OTU1E"; + } + enum "otu1f" { + description + "Type OTU1F"; + } + enum "otu2" { + description + "Type OTU2"; + } + enum "otu3" { + description + "Type 0TU3"; + } + enum "otu4" { + description + "Type OTU4"; + } + enum "otu2e" { + description + "Type OTU2E"; + } + enum "otu2f" { + description + "Type OTU2F"; + } + enum "otu3e1" { + description + "Type OTU3E1"; + } + enum "otu3e2" { + description + "Type OTU3E2"; + } + enum "otuc2" { + description + "Type OTUC2"; + } + enum "otuc4" { + description + "Type OTUC4"; + } + } + description + "OTU types"; + } + + typedef Te-affinity-table { + type enumeration { + enum "affinity-table-mapping" { + value 0; + description + "Mapping affinity table"; + } + enum "affinity-table-forward-reference" { + value 1; + description + "Forward reference affinity table"; + } + enum "affinity-table-count" { + value 2; + description + "Number of affinity tables"; + } + } + description + "Affinity Table IDs"; + } + + typedef Te-serv-tun-client { + type enumeration { + enum "te-serv-auto-tun-client-invalid" { + description + "te serv auto tun client invalid"; + } + enum "te-serv-p2mp-tun-client-mvpn" { + description + "te serv p2mp tun client mvpn"; + } + enum "te-serv-p2mp-tun-client-vpls" { + description + "te serv p2mp tun client vpls"; + } + enum "te-serv-p2mp-tun-client-mvpn6" { + description + "te serv p2mp tun client mvpn6"; + } + enum "te-serv-p2p-tun-client-bgp" { + description + "te serv p2p tun client bgp"; + } + enum "te-serv-p2p-tun-client-staticv4" { + description + "te serv p2p tun client staticv4"; + } + enum "te-serv-p2p-tun-client-staticv6" { + description + "te serv p2p tun client staticv6"; + } + enum "te-serv-p2p-tun-client-isis" { + description + "te serv p2p tun client isis"; + } + enum "te-serv-p2p-tun-client-ospf" { + description + "te serv p2p tun client ospf"; + } + enum "te-serv-auto-tun-client-count" { + description + "te serv auto tun client count"; + } + } + description + "Te serv tun client"; + } + + typedef Igpte-aa-metric-mode { + type enumeration { + enum "metric-mode-none" { + description + "No metric type specified"; + } + enum "relative" { + description + "Relative metric"; + } + enum "absolute" { + description + "Absolute metric"; + } + enum "constant" { + description + "Constant metric"; + } + } + description + "Autoroute-announce metric type"; + } + + typedef Te-odu-capability { + type enumeration { + enum "not-set" { + description + "Odu capability Type Not Set"; + } + enum "fixed" { + description + "Fixed ODUs"; + } + enum "flex" { + description + "Flex ODUs"; + } + } + description + "Te ODU Capability Types"; + } + + typedef Rrr-dste-migration-mode { + type enumeration { + enum "rrr-dste-mode-none" { + value 0; + description + "No DSTE mode set"; + } + enum "rrr-dste-mode-prestandard" { + value 1; + description + "Pre-standard DSTE"; + } + enum "rrr-dste-mode-standard" { + value 3; + description + "IETF-standard DSTE"; + } + } + description + "DS-TE migration mode"; + } + + typedef Igpte-lib-bw-model { + type enumeration { + enum "rdm" { + value 0; + description + "Russian Dolls Model"; + } + enum "mam" { + value 1; + description + "Maximum Allocation Model"; + } + enum "not-set" { + value 2; + description + "No model set"; + } + } + description + "Bandwidth model"; + } + + typedef Igp-subnet { + type enumeration { + enum "igp-subnet-type-none" { + description + "No subnet type specified"; + } + enum "p2p" { + description + "Point-to-point subnet"; + } + enum "broadcast" { + description + "Broadcast subnet"; + } + enum "non-broadcast-multiaccess" { + description + "Non-broadcast multi-access subnet"; + } + enum "p2mp" { + description + "Point-to-multipoint subnet"; + } + enum "loopback" { + description + "Loopback subnet"; + } + } + description + "Subnet type"; + } + + typedef Igp-ospf-area-format { + type enumeration { + enum "igp-area-format-number" { + description + "Numbered area format"; + } + enum "igp-area-format-ip-addr" { + description + "IP address area format"; + } + } + description + "OSPF area format"; + } + + typedef Igp-protocol { + type enumeration { + enum "none" { + description + "No IGP protocol specified"; + } + enum "isis" { + description + "IS IS"; + } + enum "ospf" { + description + "OSPF"; + } + } + description + "IGP type"; + } + + typedef Mpls-te-uni { + type enumeration { + enum "none" { + description + "Uni-Type none"; + } + enum "xc" { + description + "Uni-Type type XC"; + } + enum "term" { + description + "Uni-Type Termination"; + } + } + description + "Uni-Type type"; + } + + typedef Mpls-te-termination { + type enumeration { + enum "none" { + description + "Local termination none"; + } + enum "ether" { + description + "Local termination type Ether"; + } + } + description + "Termination type"; + } + + typedef Te-meshgroup { + type enumeration { + enum "meshgroup-type-automesh" { + value 0; + description + "automesh type of Meshgroup"; + } + enum "meshgroup-type-onehop" { + value 1; + description + "onehop type of Meshgroup"; + } + } + description + "Te meshgroup"; + } + + typedef Auto-backup-srlg-mode { + type enumeration { + enum "srlg-not-set" { + description + "Autobackup SRLG type not set"; + } + enum "srlg-strict" { + description + "Autobackup SRLG Strict"; + } + enum "srlg-preferred" { + description + "Autobackup SRLG Preferred"; + } + enum "srlg-weighted" { + description + "Autobackup Weighted SRLG"; + } + } + description + "Auto backup srlg mode"; + } + + typedef Auto-backup-protection { + type enumeration { + enum "protection-none" { + description + "No Autobackup Protection"; + } + enum "protection-next-hop" { + description + "NHOP Autobackup Protection"; + } + enum "protection-next-next-hop" { + description + "NNHOP Autobackup Protection"; + } + enum "protection-next-hop-bandwidth" { + description + "NHOP Autobackup Protection"; + } + enum "protection-next-next-hop-bandwidth" { + description + "NNHOP Autobackup Protection"; + } + } + description + "Auto backup protection"; + } + + typedef Te-p2mp-s2l-deletion-subcause { + type enumeration { + enum "no-subcause" { + description + "No subcause recorded"; + } + enum "cleanup-req" { + description + "Normal cleanup requested"; + } + enum "invalid-data" { + description + "Invalid Data passed"; + } + enum "fsm-inv-ctxt" { + description + "Invalid FSM context passed in"; + } + enum "fsm-inv-ctxt-data" { + description + "Invalid data passed in FSM context"; + } + enum "fsm-inv-role" { + description + "Failed due to Invalid Role"; + } + enum "ll-failure" { + description + "Local Label get failed"; + } + enum "ll-rel-fail" { + description + "Local Label release failed"; + } + enum "ll-mismatch" { + description + "Local label mismatch detected"; + } + enum "ll-invalid" { + description + "Local label invalid"; + } + enum "ll-set-failure" { + description + "Local Label set failed"; + } + enum "bad-out-label" { + description + "Bad label received from neighbor"; + } + enum "sl-err" { + description + "Failed to process suggested label received from + neighbor"; + } + enum "rl-mismatch" { + description + "Incorrect recovery label received from neighbor"; + } + enum "sl-alloc-err" { + description + "Failed to allocate suggested/ acceptable label"; + } + enum "upstream-downstream-label-mismatch" { + description + "Upstream label does not match downstream label"; + } + enum "upstream-label-failure" { + description + "Upstream Label get failed"; + } + enum "upstream-label-rel-fail" { + description + "Upstream Label release failed"; + } + enum "upstream-label-mismatch" { + description + "Upstream label mismatch detected"; + } + enum "upstream-label-invalid" { + description + "Upstream label invalid"; + } + enum "bad-upstream-label" { + description + "Bad Upstream label"; + } + enum "ul-set-failure" { + description + "Upstream Label set failed"; + } + enum "gmpls-label-alloc-err" { + description + "Failed to allocate GMPLS Label"; + } + enum "gmpls-label-clone-err" { + description + "Failed to clone GMPLS Label"; + } + enum "rw-err" { + description + "Unable to perform RW operation"; + } + enum "up-rw-err" { + description + "Unable to perform upstream RW operation"; + } + enum "path-admit" { + description + "Path admission failure"; + } + enum "bw" { + description + "BW allocation failure"; + } + enum "admit-resv" { + description + "Reservation admission failure"; + } + enum "rrrm-err" { + description + "Resource Reservation removal error"; + } + enum "hardware-out-of-resources" { + description + "NPU HW-OOR"; + } + enum "comp-rid" { + description + "Failure to compute RID"; + } + enum "comp-lcl-rid" { + description + "Failure to compute local RID"; + } + enum "comp-up-rid" { + description + "Failure to compute upstream RID"; + } + enum "comp-down-rid" { + description + "Failure to compute downstream RID"; + } + enum "rest-if-hop" { + description + "Failure to reset IF or HOP"; + } + enum "inv-in-if" { + description + "Invalid Ingress IF"; + } + enum "nh-err" { + description + "Outgoing IF or Next Hop failure"; + } + enum "inv-in-ero" { + description + "Invalid incoming ERO"; + } + enum "out-ero-fail" { + description + "Outcoming ERO failure"; + } + enum "frr-bk-asssign" { + description + "Frr backup assignment failure"; + } + enum "frr-bk-rm" { + description + "Frr backup removal failure"; + } + enum "frr-bk-send" { + description + "Frr backup send to RSVP failed"; + } + enum "frr-needs-del" { + description + "FRR deletion required"; + } + enum "frr-reopt-lsp" { + description + "FRR not allowed on reopt LSP"; + } + enum "rsvp-api-h" { + description + "RSVP API Handler Failure"; + } + enum "insane-path" { + description + "Invalid Path message"; + } + enum "remerge-chk-fail" { + description + "Failed in finding remerge"; + } + enum "remerge-detected" { + description + "Remerge detected"; + } + enum "xro" { + description + "XRO processing failed"; + } + enum "resv-bw-set" { + description + "Failed to set Resv Bandwidth"; + } + enum "resv-prep-fail" { + description + "Failed to prepare out Resv"; + } + enum "path-ch-proc" { + description + "Failure in path change Processing"; + } + enum "path-ch-frr" { + description + "Failure in path change for FRR"; + } + enum "path-ch-sess-attri-fl" { + description + "Failure in path change for session attribute + flags"; + } + enum "path-ch-bw-ch" { + description + "Failure in path change: Bandwidth change not + allowed"; + } + enum "path-err-proc" { + description + "Failure in path Error Processing"; + } + enum "path-err" { + description + "Path Error Rcvd"; + } + enum "path-err-wpsr" { + description + "Path Error with PSR flag Rcvd"; + } + enum "path-del" { + description + "Path Delete request"; + } + enum "resv-ch-proc" { + description + "Failure in Resv change processing"; + } + enum "resv-ch-rro" { + description + "Failure in Resv change RRO"; + } + enum "resv-del" { + description + "Resv Delete processing"; + } + enum "resv-err" { + description + "Resv Error processing"; + } + enum "perr-send-fail" { + description + "Failed to send Path Error"; + } + enum "perr-proc-fail" { + description + "Failed to process Path Error"; + } + enum "perr-rcv" { + description + "Received Path Error"; + } + enum "resv-err-rcv" { + description + "Received Resv Error"; + } + enum "flowspec" { + description + "Flowspec failure"; + } + enum "setup-conn-api-fail" { + description + "S2L State set API failed"; + } + enum "path-not-replayed" { + description + "RSVP did not replay the path"; + } + enum "resv-not-replayed" { + description + "RSVP did not replay the resv"; + } + enum "rewrite-not-replayed" { + description + "LMRIB did not replay rewrite"; + } + enum "label-not-replayed" { + description + "RW mgr did not replay rewrite"; + } + enum "connection-not-ready" { + description + "TE connection is not ready with LSD/LMRIB/RSVP"; + } + enum "master-did-not-replay" { + description + "The master TE did not replay this S2L"; + } + enum "head-s2l-has-no-vif" { + description + "S2L head has no associated tunnel VIF"; + } + enum "frr-assigned-s2l-has-no-backup" { + description + "FRR-assigned S2L has no backup"; + } + enum "frr-assigned-s2l-has-down-backup" { + description + "FRR-assigned S2L has down backup"; + } + enum "out-link-down-and-no-frr" { + description + "Outgoing link is down and there is no FRR"; + } + enum "collaborator-timeout-rsvp" { + description + "RSVP connection timed out"; + } + enum "collaborator-timeout-lsd" { + description + "LSD connection timed out"; + } + enum "collaborator-timeout-lmrib" { + description + "LMRIB connection time dout"; + } + enum "collaborator-timeout-im" { + description + "IM connection timed out"; + } + enum "collaborator-timeout-error" { + description + "Error in processing connection timeout"; + } + enum "topo-flush" { + description + "Topology Failure"; + } + enum "area-shut" { + description + "IGP Area Shutdown"; + } + enum "active-po-del" { + description + "active pathoption deleted"; + } + enum "path-verify-failed" { + description + "Path verification failed"; + } + enum "srlg-path-verify-failed" { + description + "Srlg Path verification failed"; + } + enum "affinity-path-verify-failed" { + description + "Affinity Path verification failed"; + } + enum "aff-fail-delayed-tear-timeout-failed" { + description + "Affinity Failure Delayed Tear timeout failed"; + } + enum "cost-limit-verify-failed" { + description + "Cost Limit verification failed"; + } + enum "delay-limit-verify-failed" { + description + "Delay Limit verification failed"; + } + enum "lockout-metric-verify-failed" { + description + "Lockout metric verification failed"; + } + enum "path-setup-timeout" { + description + "Path Setup Timed out"; + } + enum "vif-destroyed" { + description + "tunnel IF destroyed"; + } + enum "vif-shut" { + description + "tunnel IF shutdown"; + } + enum "lsp-shut" { + description + "LSP shutdown"; + } + enum "gmpls-uni-head" { + description + "link configured to run as GMPLS-UNI head"; + } + enum "head-resetup" { + description + "tunnel is to be resetup"; + } + enum "none-head-resetup" { + description + "mid or tail tunnel is to be resetup"; + } + enum "dest-disabled" { + description + "Destination disabled"; + } + enum "iep-ch-act-po" { + description + "Explicit Path changed for inuse path-option"; + } + enum "iep-ch-reopt" { + description + "Reopt LSP affected by Explicit Path change"; + } + enum "iep-ch-standby" { + description + "Standby LSP affected by Explicit Path change"; + } + enum "dste-mode-ch" { + description + "DSTE mode change"; + } + enum "reopt-del-frr-act" { + description + "Deleting reopt LSP on FRR active"; + } + enum "new-reopt-tear-old" { + description + "New Reopt is in progress, tearing old reopt LSP"; + } + enum "reopt-failed-verify" { + description + "Reopt LSP failed verification"; + } + enum "reopt-failed-install" { + description + "Reopt LSP failed at install time"; + } + enum "reopt-failed-rw" { + description + "Rewrite failed for Reopt LSP"; + } + enum "reopt-failed-not-superset" { + description + "Reopt LSP has less number of destinations Up + than the current LSP."; + } + enum "dclean-at-install-time" { + description + "Tear delayed clean LSP at install time"; + } + enum "dclean-at-clean-timer" { + description + "Tear delayed clean LSP at cleanup timer expiry"; + } + enum "dclean-at-reopt-active" { + description + "Tear delayed clean LSP at Reopt Activation"; + } + enum "lcl-notif-head" { + description + "Local Link Failure"; + } + enum "in-if-fail" { + description + "Failure of ingress IF"; + } + enum "out-if-fail" { + description + "Failure of egress IF"; + } + enum "if-fail-lc-oir" { + description + "Failure of IF on LC OIR"; + } + enum "te-rid-rm" { + description + "TE RID removed"; + } + enum "te-rsvp-oos-bkup" { + description + "TE and RSVP are OOS for backup assignment"; + } + enum "in-if-fail-exp-null-cfg-ch" { + description + "Explicit null config changed"; + } + enum "new-curr-lsp-sig" { + description + "Signaling new current LSP, cleanup old LSP"; + } + enum "new-reopt-lsp-sig" { + description + "Signaling new reopt LSP, cleanup old LSP"; + } + enum "new-stdby-lsp-sig" { + description + "Signaling new standby LSP, cleanup old LSP"; + } + enum "new-restore-lsp-sig" { + description + "Signaling new restore LSP, cleanup old LSP"; + } + enum "new-cl-pp-lsp-sig" { + description + "Signaling new clean path-protect LSP, cleanup + old LSP"; + } + enum "chkpt-recovery-failed" { + description + "Failed to recover LSP from check-point"; + } + enum "stdby-cr-failed" { + description + "Failed to create standby LSP"; + } + enum "reopt-lsp-rej" { + description + "Reopt LSP is rejected"; + } + enum "reopt-po-sw-failed" { + description + "Reopt Path-option switchover failed"; + } + enum "failed-to-find-path" { + description + "Failed to find a Path"; + } + enum "sig-rcv-fail-path-cr-ch" { + description + "Signaling API failed to proc Path change or + create"; + } + enum "lsp-db-shut" { + description + "LSP database shutdown"; + } + enum "reopt-hold-start" { + description + "Starting holddown for Reopt LSP"; + } + enum "vif-lspid-mismatch" { + description + "VIF has no LSP with this ID"; + } + enum "s2l-has-no-vif" { + description + "Headend S2L with no associated VIF"; + } + enum "overload-reopt-timeout" { + description + "Reoptimization timeout with OL-bit set at + midpoint"; + } + enum "hop-limit-exceeded" { + description + "Hop Limit Exceeded"; + } + enum "lingering-current-lsp" { + description + "Cleanup lingering current LSP"; + } + enum "lingering-standby-lsp" { + description + "Cleanup lingering standby LSP"; + } + enum "lingering-restore-lsp" { + description + "Cleanup lingering restore LSP"; + } + enum "double-lockout" { + description + "Double lock out on the tunnel"; + } + enum "lockout-no-protection" { + description + "Lock out on the tunnel with no protection + available"; + } + enum "lockout-cleanup" { + description + "Lock out on reopt or delayed clean lsp"; + } + enum "te-ppsw-lsp-mismatch" { + description + "LSP id of the current mismatched with the PP + LSP id in standby"; + } + enum "te-stdbyup-no-curr-lsp" { + description + "Standby LSP up but current LSP not found"; + } + enum "stdby-failed-rw" { + description + "Rewrite failed for Standby LSP"; + } + enum "reopt-lsp-tear-ppsw" { + description + "Reopt LSP teardown because of path protection + switchover"; + } + enum "delay-pp-lsp-tear-ppsw" { + description + "Delay PP LSP teardown on rew results of path + protection switchover"; + } + enum "stdby-failed-verify" { + description + "Stdby LSP failed verification"; + } + enum "stdby-not-needed-due-to-restore" { + description + "Stdby is not needed since the restore LSP is + installed"; + } + enum "restore-failed-verify" { + description + "Restore LSP failed verification"; + } + enum "restore-failed-install" { + description + "Restore LSP failed at install time"; + } + enum "restore-failed-rewrite" { + description + "Restore LSP failed at rewrite"; + } + enum "te-ppsw-cfg-rmvd" { + description + "Path protection configuration remove under the + tunnel I/F"; + } + enum "te-ppsw-manual-ppsw" { + description + "Manual Path protection switchover"; + } + enum "te-ppsw-bidir-p-chg-ppsw" { + description + "Bidirectional Path Change protection switchover"; + } + enum "te-ppsw-bidir-lockout-ppsw" { + description + "Flex LSP lockout metric protection switchover"; + } + enum "dclean-at-pp-clean-timer" { + description + "Tear delayed pp clean LSP at pp cleanup timer + expiry"; + } + enum "reopt-standby-failed" { + description + "Creating the reopt standby failed"; + } + enum "standby-reoptimized" { + description + "Tear down old standby LSP because standby + reoptimized"; + } + enum "standby-reoptimize-aborted" { + description + "Tear down new standby LSP because switchover is + underway"; + } + enum "te-reoptup-no-curr-lsp" { + description + "Reopt LSP up but current LSP not found"; + } + enum "te-reopt-curr-lsp-down" { + description + "destroying reopt as current LSP torn"; + } + enum "te-cleanedt-curr-lsp-down" { + description + "Destroying cleaned as current LSP torn"; + } + enum "te-delay-lsp-up" { + description + "Delay clean or pp clean LSP came up"; + } + enum "no-route-due-to-affinity" { + description + "No route, no RIB due to affinity"; + } + enum "no-rib-lkup-bad-ero-gmpls" { + description + "Skipping RIB Lookup, Bad GMPLS ERO"; + } + enum "cleanup-lingering" { + description + "Cleanup in lingering state"; + } + enum "te-s2l-del-sc-soft-preemption-timeout" { + description + "Soft preemption timed out"; + } + enum "te-s2l-del-sc-soft-preempted-non-current" { + description + "The head S2L was soft preempted while it is not + current"; + } + enum "te-s2l-del-sc-vif-sync-lsp-del" { + description + "The head S2L was deleted due to LSP deleted in + VIF Sync"; + } + enum "rsvp-api-cleanup-req" { + description + "RSVP API cleanup requested"; + } + enum "te-s2l-del-sc-frr-wrong-backup" { + description + "TE and RSVP FRR active on different backups"; + } + enum "te-s2l-del-sc-bfd-session-create-failed" { + description + "The BFD session create failed"; + } + enum "te-s2l-del-sc-bfd-session-bringup-timeout" { + description + "The BFD session failed to up before bringup + timer timeout"; + } + enum "te-s2l-del-sc-bfd-session-down" { + description + "The BFD session went down"; + } + enum "te-s2l-del-sc-bfd-session-not-replayed" { + description + "BFD did not replay the session"; + } + enum "te-s2l-del-sc-reopt-p2mp-egress-info-fail" { + description + "P2MP egress information programming failed for + reoptimized LSP"; + } + enum "non-curr-frr-lcl-notif-event" { + description + "FRR local notification event on non-current LSP"; + } + enum "unsupported-encoding" { + description + "The encoding type is not supported"; + } + enum "unsupported-gpid" { + description + "The GPID is not supported"; + } + enum "unsupported-switching-type" { + description + "The switching type is not supported"; + } + enum "upstream-label-change-not-permitted" { + description + "Upstream label change is not allowed"; + } + enum "encoding-type-change-not-permitted" { + description + "Encoding Type change is not allowed"; + } + enum "aps-protect-info-change-failed" { + description + "Failed to process APS Protect info change"; + } + enum "incorrect-lsp-type" { + description + "Incorrect or unsupported connection type"; + } + enum "local-hop-error" { + description + "Failed to compute local hop"; + } + enum "unsupported-gmpls-attributes" { + description + "Incorrect or unsupported GMPLS attributes"; + } + enum "gmpls-uni-reopt-triggered" { + description + "GMPLS-UNI reoptimization triggered from network"; + } + enum "maximum-acceptable-label-retries" { + description + "Maxed out acceptable upstream label retries"; + } + enum "invalid-direction" { + description + "Invalid direction for GMPLS LSP"; + } + enum "invalid-rewrite-context" { + description + "Invalid RW context in callback"; + } + enum "invalid-label-context" { + description + "Invalid Label context in callback"; + } + enum "dwdm-capability-changed" { + description + "DWDM Capability for TE link changed"; + } + enum "dwdm-capability-removed" { + description + "DWDM Capability for TE link removed"; + } + enum "dwdm-wavelength-removed" { + description + "DWDM wavelength channel attribute for TE link + removed"; + } + enum "gmpls-uni-multilayer-restoration" { + description + "GMPLS-UNI multilayer restoration"; + } + enum "gmpls-uni-user-triggered-reoptimization" { + description + "User-triggered GMPLS-UNI reoptimization"; + } + enum "gmpls-uni-active-path-change-triggered-reopt" { + description + "GMPLS-UNI reoptimization triggered by Active + Path change"; + } + enum "passive-match-err" { + description + "Failed in finding a matching passive vif"; + } + enum "egress-control-err" { + description + "Failed in egress control"; + } + enum "egress-control-map-err" { + description + "Could not resolve egress control"; + } + enum "restore-not-needed-for-current" { + description + "Restore not needed now for current LSP"; + } + enum "restore-not-needed-for-standby" { + description + "Restore not needed now for standby LSP"; + } + enum "restore-dp-down" { + description + "Restore down in data plane"; + } + enum "current-not-needed-dp-down" { + description + "Current not needed now as down in data plane"; + } + enum "bad-protct-obj" { + description + "Bad protection object"; + } + enum "head-flexi-cap-change" { + description + "Flexi-capability changed at Head node"; + } + enum "tail-flexi-cap-change" { + description + "Flexi-capability changed at Tail node"; + } + enum "optical-link-down" { + description + "TE optical link down"; + } + enum "optical-link-lsp-out-of-sync" { + description + "TE optical link and LSP out of sync"; + } + enum "optical-link-owner-out-of-sync" { + description + "TE optical link owner type out of sync"; + } + enum "optical-link-interface-handle-out-of-sync" { + description + "TE optical link interface handle out of sync"; + } + enum "optical-link-hop-out-of-sync" { + description + "TE optical link next/prev hop out of sync"; + } + enum "optical-link-role-out-of-sync" { + description + "TE optical link role out of sync"; + } + enum "optical-link-downstream-router-id-out-of-sync" { + description + "TE optical link downstream router-ID out of + sync"; + } + enum "optical-link-upstream-router-id-out-of-sync" { + description + "TE optical link upstream router-ID out of sync"; + } + enum "optical-link-encoding-type-out-of-sync" { + description + "TE optical link encoding type out of sync"; + } + enum "optical-link-switching-type-out-of-sync" { + description + "TE optical link switching type out of sync"; + } + enum "optical-link-gpid-out-of-sync" { + description + "TE optical link GPID out of sync"; + } + enum "egress-optical-link-not-found" { + description + "Egress optical TE link (head) not found"; + } + enum "ingress-optical-link-not-found" { + description + "Ingress optical TE link (tail) not found"; + } + enum "switch-cap-change-head" { + description + "Local Link Switch cap (head) changed"; + } + enum "switch-cap-change-tail" { + description + "Local Link Switch cap (tail) changed"; + } + enum "mtu-change-head" { + description + "Local Link MTU (head) changed"; + } + enum "mtu-change-tail" { + description + "Local Link MTU (tail) changed"; + } + enum "sync-dest-state" { + description + "Syncing of the destination state change"; + } + enum "prot-object-err" { + description + "Protection Object Error"; + } + enum "reverse-s2l-deleted" { + description + "Reverse Associated S2L Deleted"; + } + enum "cancel-inprogress-by-slave" { + description + "In-progress S2L cancelled by slave"; + } + enum "invalid-reverse-ero" { + description + "Bad Reverse ERO"; + } + enum "reverse-lsp-not-found" { + description + "Switchover Reverse LSP Not Found"; + } + enum "reverse-lsp-not-present" { + description + "Switchover Reverse LSP Not Present"; + } + enum "associated-vif-down" { + description + "Associated VIF moved to Down"; + } + enum "vif-sync-processing" { + description + "Tunnel interface sync processing caused + deletion"; + } + enum "incoming-interface-lockout" { + description + "Incoming interface locked out"; + } + enum "sr-egress-path-changed" { + description + "SR egress path changed on non-current S2L"; + } + enum "in-if-fail-imp-null-cfg-ch" { + description + "Implicit null config changed"; + } + enum "reverse-lsp-failure" { + description + "Reverse LSP Failure"; + } + enum "lsp-wrap-label-error" { + description + "LSP Wrap Label Error"; + } + enum "lsp-wrap-rewrite-error" { + description + "LSP Wrap Rewrite Error"; + } + enum "transit-lsp-out-of-resources" { + description + "LSP OOR"; + } + enum "path-protection-configuration-change" { + description + "Path protection configuration changed under the + tunnel I/F"; + } + enum "better-standby-path" { + description + "Better standby path exists"; + } + enum "path-option-config-change" { + description + "Path-option configuration change"; + } + enum "path-protection-non-revertive-config-changed" { + description + "Path protection non-revertive config changed + under the tunnel I/F"; + } + enum "manually-triggered-non-revertive-recovery" { + description + "Manually triggered non-revertive recovery"; + } + enum "remote-node-triggered-path-protection-switchover" { + description + "Received path protection switchover + notification from remote node"; + } + enum "fsm-sc-must-be-last" { + description + "Not used, must be last entry"; + } + } + description + "S2L deletion subcause"; + } + + typedef Te-p2mp-s2l-deletion-cause { + type enumeration { + enum "no-cause" { + description + "No cause recorded"; + } + enum "hpath-cr-err" { + description + "Head Path creation"; + } + enum "hpath-chg-setup" { + description + "Head Path change setup"; + } + enum "hpath-chg-up-err" { + description + "Head Path change while up"; + } + enum "hresv-cr-err" { + description + "Head RESV creation"; + } + enum "hresv-chg-err" { + description + "Head RESV change"; + } + enum "hresv-chg-err-up" { + description + "Head RESV change while up"; + } + enum "hlbl-avail-err" { + description + "Head Label available"; + } + enum "hup-lbl-avail-err" { + description + "Head upstream Label available"; + } + enum "hfrr-act-err" { + description + "Head FRR active"; + } + enum "hbkup-ch-err" { + description + "Head Backup change"; + } + enum "hpath-ch-frr-err" { + description + "Head Path change FRR"; + } + enum "hcleanup" { + description + "Head Cleanup handling"; + } + enum "hlingering-cleanup" { + description + "Head lingering cleanup"; + } + enum "hpat-err" { + description + "Head Path error"; + } + enum "hresv-err" { + description + "Head Resv error"; + } + enum "hresv-del" { + description + "Head Resv delete"; + } + enum "hrw-fail" { + description + "Head rewrite failure"; + } + enum "hup-rw-fail" { + description + "Head upstream rewrite failure"; + } + enum "ha-failure" { + description + "HA failure"; + } + enum "rw-del" { + description + "Rewrite Delete"; + } + enum "up-rw-del" { + description + "Upstream Rewrite Delete"; + } + enum "mpath-cr" { + description + "Mid path creation"; + } + enum "mpath-chg-setup-err" { + description + "Mid Path change setup"; + } + enum "mpath-chg-up-err" { + description + "Mid Path change while up"; + } + enum "mresv-cr-err" { + description + "Mid Resv creation"; + } + enum "mresv-chg-err" { + description + "Mid Resv change"; + } + enum "mresv-chg-err-up" { + description + "Mid Resv change while up"; + } + enum "mlbl-avail-err" { + description + "Mid: cannot get local label"; + } + enum "mlbl-rel-err" { + description + "Mid: cannot release local label"; + } + enum "mup-lbl-avail-err" { + description + "Mid: cannot get upstream label"; + } + enum "mup-lbl-rel-err" { + description + "Mid: cannot release upstream label"; + } + enum "mfrr-act-err" { + description + "Mid FRR active"; + } + enum "mbkup-ch-err" { + description + "Mid Backup change"; + } + enum "mpath-ch-frr-err" { + description + "Mid Path change FRR"; + } + enum "mresv-del" { + description + "Mid Resv Delete handling"; + } + enum "mresv-err" { + description + "Mid Resv Error handling"; + } + enum "mpreempt" { + description + "Mid Premption"; + } + enum "mcleanup" { + description + "Mid Cleanup handling"; + } + enum "mlingering-cleanup" { + description + "Mid lingering cleanup"; + } + enum "mrw-fail" { + description + "mid rewrite failure"; + } + enum "mup-rw-fail" { + description + "mid upstream rewrite failure"; + } + enum "tpath-cr-err" { + description + "Tail Path creation"; + } + enum "tpath-chg-err" { + description + "Tail Path change"; + } + enum "tresv-cr-err" { + description + "Tail RESV creation"; + } + enum "tlbl-avail-err" { + description + "Tail: cannot release local label"; + } + enum "tcleanup" { + description + "Tail Cleanup"; + } + enum "tlingering-cleanup" { + description + "Tail lingering cleanup"; + } + enum "lbl-err" { + description + "Local label related error"; + } + enum "qfailure" { + description + "FSM Queueing failure"; + } + enum "rsvp-recovery" { + description + "RSVP Recovery"; + } + enum "lsd-recovery" { + description + "LSD Recovery"; + } + enum "lmrib-recovery" { + description + "LMRIB Recovery"; + } + enum "te-restart" { + description + "TE Restart"; + } + enum "switchover" { + description + "Switchover"; + } + enum "master-te-recovery" { + description + "Master TE recovery"; + } + enum "optical-r-mgr-recovery" { + description + "Optical Resource Manager Recovery"; + } + enum "te-exit" { + description + "TE Exited"; + } + enum "bkup-assign-fail" { + description + "RSVP Backup Assign Failed"; + } + enum "bfd-fail" { + description + "BFD Session Failure"; + } + enum "bfd-recovery" { + description + "BFD Recovery"; + } + enum "lsp-wrap-act-err" { + description + "Mid LSP Wrap active"; + } + enum "lsp-wrap-rw-err" { + description + "Mid LSP Wrap Rewrite"; + } + enum "fsm-cause-must-be-last" { + description + "Not used, must be last entry"; + } + } + description + "S2L Deletion location"; + } + + typedef Te-pp-diversity { + type enumeration { + enum "diversity-none" { + description + "Standby LSP not diverse"; + } + enum "link" { + description + "Standby LSP link diverse"; + } + enum "node" { + description + "Standby LSP node diverse"; + } + enum "node-link" { + description + "Standby LSP node and link diverse"; + } + enum "srlg" { + description + "Standby SRLG diverse"; + } + enum "node-srlg" { + description + "Standby LSP node and SRLG diverse"; + } + enum "node-link-srlg" { + description + "Standby LSP node and link and SRLG diverse"; + } + enum "diversity-sticky" { + description + "Standby LSP using sticky explicit path"; + } + enum "diversity-user" { + description + "Standby LSP using user defined explicit path"; + } + enum "diversity-reverse-ero" { + description + "Standby LSP using Reverse ERO"; + } + } + description + "Diversity of Protection or Restoration Path from + Protected Path"; + } + + typedef Te-srlg-collect-request { + type enumeration { + enum "none" { + description + "No SRLG-collection request"; + } + enum "mandatory" { + description + "Mandatory SRLG-collection request"; + } + enum "optional" { + description + "Optional SRLG-collection request"; + } + } + description + "SRLG-collection request machansim"; + } + + typedef Te-odu-level { + type enumeration { + enum "te-odu-level-not-set" { + value 0; + description + "Not set"; + } + enum "te-odu-level-one" { + value 1; + description + "ODU 1"; + } + enum "te-odu-level-two" { + value 2; + description + "ODU 2"; + } + enum "te-odu-level-three" { + value 3; + description + "ODU 3"; + } + enum "te-odu-level-four" { + value 4; + description + "ODU 4"; + } + enum "te-odu-zero" { + value 10; + description + "ODU 0"; + } + enum "te-odu-level-two-e" { + value 11; + description + "ODU 2E"; + } + enum "te-odu-level-flex-cbr" { + value 20; + description + "ODU Flex CBR"; + } + enum "te-odu-level-flex-gfpf-resizeable" { + value 21; + description + "ODU Flex GFP-F resizable"; + } + enum "te-odu-level-flex-gfpf-non-resizable" { + value 22; + description + "ODU Flex GFP-F non resizable"; + } + enum "te-odu-level-one-e" { + value 23; + description + "ODU 1E"; + } + enum "te-odu-level-one-f" { + value 24; + description + "ODU 1F"; + } + enum "te-odu-level-two-f" { + value 25; + description + "ODU 2F"; + } + enum "te-odu-level-three-e-one" { + value 26; + description + "ODU 3E1"; + } + enum "te-odu-level-three-e-two" { + value 27; + description + "ODU 3E2"; + } + enum "te-odu-level-c-two" { + value 38; + description + "ODU C2"; + } + enum "te-odu-level-c-three" { + value 39; + description + "ODU C3"; + } + enum "te-odu-level-c-four" { + value 40; + description + "ODU C4"; + } + } + description + "G.709 OTN ODU levels"; + } + + typedef Te-addr { + type enumeration { + enum "not-set" { + description + "Address not set"; + } + enum "ipv4" { + description + "IPv4"; + } + enum "ipv4-unnumbered" { + description + "IPv4 Unnumbered"; + } + } + description + "TE Address Types"; + } + + typedef Mpls-te-lsp-mode { + type enumeration { + enum "mpls-te-lsp-mode-not-set" { + description + "LSP mode not set"; + } + enum "mpls-te-lsp-mode-current" { + description + "Current LSP"; + } + enum "mpls-te-lsp-mode-reopt" { + description + "Reoptimized LSP"; + } + enum "mpls-te-lsp-mode-clean" { + description + "Cleaned LSP"; + } + enum "mpls-te-lsp-mode-standby" { + description + "Standby LSP"; + } + enum "mpls-te-lsp-mode-pp-clean" { + description + "Delay PP Clean LSP"; + } + enum "mpls-te-lsp-mode-restore" { + description + "Restore LSP"; + } + enum "mpls-te-lsp-mode-reopt-standby" { + description + "Reopt Standby LSP"; + } + } + description + "Mpls te lsp mode"; + } + + typedef Te-protection { + type enumeration { + enum "protection-type-unprotected" { + value 0; + description + "Uni protection unprotected"; + } + enum "protection-type-reroute" { + value 1; + description + "Uni protection full reroute"; + } + enum "protection-reroute-no-et" { + value 2; + description + "Uni protection reroute with no extra traffic"; + } + enum "one-n-protection-extra-traffic" { + value 4; + description + "Uni 1:N protection with extra traffic"; + } + enum "one-plus-one-unidirectional-protection" { + value 8; + description + "Uni 1+1 unidirectional protection"; + } + enum "one-plus-one-bidirectional-protection" { + value 16; + description + "Uni 1+1 bidirectional protection"; + } + } + description + "UNI Protection type"; + } + + typedef Te-attribute-set-sr-prepend { + type enumeration { + enum "te-attribute-set-sr-prepend-not-set" { + value 0; + description + "Not set"; + } + enum "te-attribute-set-sr-prepend-next-label" { + value 1; + description + "Next label"; + } + enum "te-attribute-set-sr-prepend-bgp-nhop" { + value 2; + description + "BGP NHOP"; + } + } + description + "Attribute Set SR prepend type"; + } + + typedef Te-restoration-style { + type enumeration { + enum "restoration-style-not-set" { + value 0; + description + "TE Restoration Style Not Set"; + } + enum "restoration-style-keep-failed-lsp" { + value 1; + description + "TE Restoration Style is to Keep Failed Lsp"; + } + enum "restoration-style-delete-failed-lsp" { + value 2; + description + "TE Restoration Style is to Delete Failed Lsp"; + } + } + description + "PNR Options"; + } + + typedef Te-path-prot-profile { + type enumeration { + enum "path-prot-profile-type1-plus0" { + value 0; + description + "TE Path Option 1PLUS0"; + } + enum "path-prot-profile-type1-plus-r" { + value 1; + description + "TE Path Option 1PLUSR"; + } + enum "path-prot-profile-type1-plus1" { + value 16; + description + "TE Path Option 1PLUS1"; + } + enum "path-prot-profile-type1-plus1-plus-r" { + value 32; + description + "TE Path Option 1PLUS1PLUSR"; + } + enum "path-prot-profile-type-invalid" { + value 255; + description + "TE Path Option Invalid"; + } + } + description + "Path Protection Profile Type"; + } + + typedef Te-sch-freq { + type enumeration { + enum "sch-freq-not-set" { + value 0; + description + "Schedule reversion frequency not set"; + } + enum "sch-freq-set-once" { + value 1; + description + "Schedule reversion frequency set only once"; + } + enum "sch-freq-set-daily" { + value 2; + description + "Schedule reversion frequency set daily"; + } + enum "sch-freq-set-weekly" { + value 3; + description + "Schedule reversion frequency set weekly"; + } + } + description + "Te sch freq"; + } + + typedef Te-pnr-revert-options { + type enumeration { + enum "pnr-optionnot-set" { + value 0; + description + "TE Protection Restore Option Not Set"; + } + enum "pnr-option-revertive" { + value 1; + description + "TE Protection Restore Option Revertive"; + } + enum "pnr-option-non-revertive" { + value 2; + description + "TE Protection Restore Option Non-revertive"; + } + } + description + "PNR Options"; + } + + typedef Te-protect { + type enumeration { + enum "protect-type1-plus1-unidir-no-aps" { + value 4; + description + "Protection Type Uni-directional No APS"; + } + enum "protect-type1-plus1-unidir-aps" { + value 8; + description + "Protection Type Uni-directional APS"; + } + enum "protect-type1-plus1-bidir-aps" { + value 16; + description + "Protection Type Bi-directional APS"; + } + enum "protect-type-not-set" { + value 255; + description + "Protection Type Not Set"; + } + } + description + "Protection Types"; + } + + typedef Te-aps-snc-mode { + type enumeration { + enum "snc-mode-not-set" { + value 0; + description + "TE OTN Subnetwork Connection Mode Not Set"; + } + enum "snc-mode-n" { + value 1; + description + "TE OTN Subnetwork Connection Mode N"; + } + enum "snc-mode-i" { + value 2; + description + "TE OTN Subnetwork Connection Mode I"; + } + enum "snc-mode-s" { + value 3; + description + "TE OTN Subnetwork Connection Mode S"; + } + } + description + "APS ANC Modes"; + } + + typedef Te-xro-exclusion { + type enumeration { + enum "mandatory" { + value 0; + description + "Mandatory exclusion"; + } + enum "best-effort" { + value 1; + description + "Best-effort exclusion"; + } + } + description + "XRO exclusion type"; + } + + typedef Te-xro-attribute { + type enumeration { + enum "interface" { + value 0; + description + "Exclude the interface specified"; + } + enum "node" { + value 1; + description + "Exclude the node specified"; + } + enum "srl-gs" { + value 2; + description + "Exclude all SRLGs related to the data specified"; + } + } + description + "XRO exclusion type"; + } + + typedef Te-xro-subobj { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 prefix"; + } + enum "ipv6" { + value 2; + description + "IPv6 prefix"; + } + enum "unnumbered" { + value 6; + description + "Unnumbered"; + } + enum "as" { + value 32; + description + "Autonomous System"; + } + enum "srlg" { + value 34; + description + "SRLG"; + } + enum "p2p-lsp" { + value 36; + description + "P2P LSP"; + } + } + description + "XRO sub-object type"; + } + + typedef Te-sig-name-append { + type enumeration { + enum "none" { + value 0; + description + "Option is Not Set for appending to + signalled-name"; + } + enum "address" { + value 1; + description + "Option is to append Address to signalled-name"; + } + enum "name" { + value 2; + description + "Option is to append Name to signalled-name"; + } + } + description + "Te sig name append"; + } + + typedef Mpls-te-lsp { + type enumeration { + enum "mpls-te-lsp-type-not-set" { + value 0; + description + "Tunnel type not set"; + } + enum "mpls-te-lsp-type-p2p" { + value 1; + description + "Point-to-point packet TE tunnel"; + } + enum "mpls-te-lsp-type-p2mp" { + value 2; + description + "Point-to-multipoint tunnel"; + } + enum "mpls-te-lsp-type-gmpls-ouni" { + value 3; + description + "Bidirectional GMPLS UNI tunnel"; + } + enum "mpls-te-lsp-type-gmpls-nni" { + value 4; + description + "Bidirectional GMPLS NNI tunnel"; + } + enum "mpls-te-lsp-type-p2p-bidir" { + value 5; + description + "Bidirectional packet point-to-point tunnel"; + } + enum "mpls-te-lsp-type-gmpls-tp" { + value 6; + description + "Bidirectional GMPLS TP tunnel"; + } + enum "mpls-te-lsp-type-gmpls-nni-otn" { + value 7; + description + "Bidirectional GMPLS OTN NNI tunnel"; + } + enum "mpls-te-lsp-type-segment-routing-p2p" { + value 8; + description + "Point-to-point segment-routing packet TE tunnel"; + } + } + description + "LSP Types"; + } + + typedef Mpls-te-tunnel-role { + type enumeration { + enum "tunnel-unknown" { + value 0; + description + "Undefined tunnel role"; + } + enum "tunnel-head" { + value 1; + description + "Tunnel role is head"; + } + enum "tunnel-mid" { + value 2; + description + "Tunnel role is midpoint"; + } + enum "tunnel-tail" { + value 3; + description + "Tunnel role is tail"; + } + } + description + "Mpls te tunnel role"; + } + + typedef Mpls-lib-c { + type enumeration { + enum "mpls-lib-c-type-null" { + value 0; + description + "NULL Ctype"; + } + enum "mpls-lib-c-type-ipv4" { + value 1; + description + "IPv4 UDP"; + } + enum "mpls-lib-c-type-ipv4-p2p-tunnel" { + value 7; + description + "IPv4 point-to-point TE tunnel"; + } + enum "mpls-lib-c-type-ipv6-p2p-tunnel" { + value 8; + description + "IPv6 point-to-point TE tunnel"; + } + enum "mpls-lib-c-type-ipv4-uni" { + value 9; + description + "IPv4 unicast"; + } + enum "mpls-lib-c-type-ipv4-p2mp-tunnel" { + value 13; + description + "IPv4 point-to-point TE tunnel"; + } + enum "mpls-lib-c-type-ipv6-p2mp-tunnel" { + value 14; + description + "IPv6 point-to-point TE tunnel"; + } + enum "mpls-lib-c-type-ipv4-tp-tunnel" { + value 15; + description + "IPv4 transport protocol tunnel"; + } + enum "mpls-lib-c-type-ipv6-tp-tunnel" { + value 16; + description + "IPv6 transport protocol tunnel"; + } + enum "mpls-lib-c-type-p2p-binding-label" { + value 17; + description + "P2P transport tunnel binding label"; + } + } + description + "Mpls lib c"; + } + + grouping MPLS-TE-AFFINITY-MAP-INFO { + description + "Affinity Map"; + leaf affinity-name { + type string; + description + "Affinity name"; + } + leaf affinity-value { + type uint32; + description + "Affinity value"; + } + leaf affinity-bit-position { + type uint8; + description + "Affinity bit position"; + } + leaf affinity-table-id { + type Te-affinity-table; + description + "Affinity table id"; + } + list affinity-extended-value { + description + "EAG value"; + leaf entry { + type uint32; + description + "EAG value"; + } + } + } + + grouping MPLS-LM-BFD-NBR-INFO { + description + "BFD Neighbor information"; + leaf neighbor-address { + type inet:ipv4-address; + description + "The neighbor's IP address"; + } + leaf is-bfd-up { + type boolean; + description + "TRUE if the BFD session is Up on this link"; + } + } + + grouping MPLS-LM-BFD-NBRS-LINK-INFO { + description + "BFD Neighbor information based on the link"; + list neighbor { + description + "Neighbors of the specified link id"; + uses MPLS-LM-BFD-NBR-INFO; + } + } + + grouping ODU-CAPABILITY-FLEX { + description + "odu capability for flex ODUs"; + leaf max-bandwidth { + type uint32; + units "kbit/s"; + description + "Max kbps Bandwidth of this level possible on + this link"; + } + leaf unreserved-bandwidth { + type uint32; + units "kbit/s"; + description + "Unreserved kbps Bandwidth of this level possible + on this link"; + } + leaf max-lsp-bandwidth { + type uint32; + units "kbit/s"; + description + "Per LSP Max kbps Bandwidth of this level + possible on this link"; + } + } + + grouping ODU-CAPABILITY-FIXED { + description + "odu capability for fixed ODUs "; + leaf maximum-od-us { + type uint8; + description + "Maximum Number of ODUs of this level possible on + this link"; + } + leaf unreserved-od-us { + type uint8; + description + "Maximum Number of ODUs of this level possible on + this link"; + } + } + + grouping ODU-CAP-BW { + description + "ODU capability Union for bandwidth"; + container fixed { + when "../type = 'fixed'" { + description + "../type = 'Fixed'"; + } + description + "ODU capability for Fixed ODUs"; + uses ODU-CAPABILITY-FIXED; + } + container flex { + when "../type = 'flex'" { + description + "../type = 'Flex'"; + } + description + "ODU capability for Flex ODUs"; + uses ODU-CAPABILITY-FLEX; + } + leaf type { + type Te-odu-capability; + description + "type"; + } + } + + grouping ODU-CAPABILITY { + description + "Odu capability at a level of multiplex tree for + an ODU type"; + container bandwidth-info { + description + "Bandwidth related info for this ODU level"; + uses ODU-CAP-BW; + } + leaf signal-type { + type Te-odu-level; + description + "Signal Type"; + } + leaf stage1 { + type Te-odu-level; + description + "ODU Type at stage 1, Not Set for HO ODU"; + } + leaf stage2 { + type Te-odu-level; + description + "ODU Type at stage 2, Not Set for single stage + mulitplexing"; + } + leaf stage3 { + type Te-odu-level; + description + "ODU Type at stage 3, Not set up to two levels of + multiplexing"; + } + leaf stage4 { + type Te-odu-level; + description + "ODU Type at stage 4, Not set up to three levels + of multiplexing"; + } + leaf terminable { + type boolean; + description + "True if link is terminable for this ODU level"; + } + leaf switchable { + type boolean; + description + "True if link is switchable for this ODU level"; + } + leaf tsg1p25 { + type boolean; + description + "True if link supports 1.25G TSG for this ODU + level"; + } + leaf tsg2p5 { + type boolean; + description + "True if link supports 2.5G TSG for this ODU + level"; + } + leaf vcat-capable { + type boolean; + description + "True if link VCAT capable for this ODU level"; + } + leaf lcas-capable { + type boolean; + description + "True if link LCAS capable for this ODU level"; + } + } + + grouping ODU-LINK-CAPABILITIES { + description + "Link ODU Capabilities"; + list max-lsp-bandwidth { + description + "Max LSP Bandwidth per priority in kbit/s"; + leaf entry { + type uint32; + description + "Max LSP Bandwidth per priority in kbit/s"; + } + } + list odu-capability { + description + "ODU Capabilities of Link"; + uses ODU-CAPABILITY; + } + } + + grouping MPLS-TE-BFD-LSP-COUNTERS { + description + "TE BFDOverLSP Counters"; + leaf session-create-events { + type uint32; + description + "The number of BFDOverLSP session create events"; + } + leaf session-up-events { + type uint32; + description + "The number of BFDOverLSP session up events"; + } + leaf session-creation-failed-events { + type uint32; + description + "The number of BFDOverLSP session creation failed + events"; + } + leaf session-down-events { + type uint32; + description + "The number of BFDOverLSP session down events"; + } + leaf session-admin-down-events { + type uint32; + description + "The number of BFDOverLSP session admin down + events"; + } + leaf session-gracefully-delete-events { + type uint32; + description + "The number of BFDOverLSP session gracefully + delete events"; + } + leaf session-non-gracefully-delete-events { + type uint32; + description + "The number of BFDOverLSP session non gracefully + delete events"; + } + leaf session-create-timeout-events { + type uint32; + description + "The number of BFDOverLSP session create timeout + events"; + } + leaf session-replay-events { + type uint32; + description + "The number of BFDOverLSP session replay events"; + } + } + + grouping MPLS-TE-TUNNEL-EGRESS-STATIC-UNI-INFO { + description + "Egress Static UNI Info"; + container egress-port { + description + "Egress Client Port of Tunnel"; + uses TE-ADDR; + } + container term-egress-port { + description + "Termination Egress Client Port of Tunnel"; + uses TE-ADDR; + } + leaf local-termination { + type Mpls-te-termination; + description + "Local Termination Type"; + } + leaf remote-uni-type { + type Mpls-te-uni; + description + "Remote uni type"; + } + } + + grouping TE-TERM-INTERFACE-SRLG-CB { + description + "Termination SRLG"; + list discovered-srlg { + description + "Discovered SRLG"; + leaf entry { + type uint32; + description + "Discovered SRLG"; + } + } + } + + grouping TE-ADDR-TYPE-IPV4-UNNUM { + description + "TE IPv4 unnumbered address type"; + leaf router-id { + type inet:ipv4-address; + description + "IPv4 router ID"; + } + leaf interface-index { + type uint32; + description + "Interface index"; + } + } + + grouping ADDR { + description + "ADDR"; + container ipv4-unnumbered-address { + when "../type = 'ipv4-unnumbered'" { + description + "../Type = 'IPv4Unnumbered'"; + } + description + "IPv4 unnumbered address"; + uses TE-ADDR-TYPE-IPV4-UNNUM; + } + leaf type { + type Te-addr; + description + "Type"; + } + leaf ipv4-address { + when "../type = 'ipv4'" { + description + "../Type = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + } + + grouping TE-ADDR { + description + "TE address"; + container te-addr { + description + "TE Address"; + uses ADDR; + } + } + + grouping MPLS-SRLG-INFO { + description + "Information about the Shared Risk Link Group"; + leaf shared-risk-group { + type uint32; + description + "SRLG number"; + } + leaf srlg-name { + type string; + description + "SRLG name"; + } + } + + grouping TE-REVERT-SCH { + description + "Revert Schedule protection attribute set"; + leaf schedulename { + type string { + length "0..255"; + } + description + "Schedule name identifier"; + } + leaf schedule-date { + type uint32; + description + "Schedule time for reversion"; + } + leaf schedule-frequency { + type Te-sch-freq; + description + "Schedule frequency for reversion"; + } + leaf duration { + type uint32; + description + "Duration for scheduled reversion"; + } + leaf max-tries { + type uint32; + description + "Max tries for scheduled reversion"; + } + } + + grouping TE-XRO-SUBOBJ-P2P-LSP { + description + "XRO point-to-point LSP sub-object"; + container fec { + description + "LSP FEC"; + uses TE-LSP-FEC; + } + leaf ignore-lsp-id { + type boolean; + description + "Flag to indicate whether or not the lsp-id in + the FEC is to be ignored"; + } + leaf processing-node-exception { + type boolean; + description + "Processing-node exception flag"; + } + leaf penultimate-node-exception { + type boolean; + description + "Penultimate-node exception flag"; + } + leaf destination-node-exception { + type boolean; + description + "Destination-node exception flag"; + } + leaf exclusion-type { + type Te-xro-exclusion; + description + "Exclusion Type"; + } + } + + grouping TE-XRO-SUBOBJ-SRLG { + description + "XRO SRLG sub-object"; + leaf srlg-id { + type uint32; + description + "SRLG ID"; + } + leaf exclusion-type { + type Te-xro-exclusion; + description + "Exclusion Type"; + } + } + + grouping TE-XRO-SUBOBJ-AS { + description + "XRO AS sub-object"; + leaf as-number { + type uint16; + description + "Autonomous System number"; + } + } + + grouping TE-XRO-SUBOBJ-UNNUM { + description + "XRO unnumbered sub-object"; + leaf te-router-id { + type inet:ipv4-address; + description + "TE router-id"; + } + leaf interface-id { + type uint32; + description + "Interface ID"; + } + leaf attribute { + type Te-xro-attribute; + description + "Attribute"; + } + leaf exclusion-type { + type Te-xro-exclusion; + description + "Exclusion Type"; + } + } + + grouping TE-XRO-SUBOBJ-IPV6 { + description + "XRO IPv6 sub-object"; + leaf address { + type inet:ipv6-address; + description + "IPv6 address"; + } + leaf prefix-len { + type uint8; + description + "Prefix length"; + } + leaf attribute { + type Te-xro-attribute; + description + "Attribute"; + } + leaf exclusion-type { + type Te-xro-exclusion; + description + "Exclusion Type"; + } + } + + grouping TE-XRO-SUBOBJ-IPV4 { + description + "XRO IPv4 sub-object"; + leaf address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf prefix-len { + type uint8; + description + "Prefix length"; + } + leaf attribute { + type Te-xro-attribute; + description + "Attribute"; + } + leaf exclusion-type { + type Te-xro-exclusion; + description + "Exclusion Type"; + } + } + + grouping TE-XRO-SUBOBJ { + description + "XRO sub-object union"; + container ipv4-subobject { + when "../type = 'ipv4'" { + description + "../Type = 'IPv4'"; + } + description + "IPv4 sub-object"; + uses TE-XRO-SUBOBJ-IPV4; + } + container ipv6-subobject { + when "../type = 'ipv6'" { + description + "../Type = 'IPv6'"; + } + description + "IPv6 sub-object"; + uses TE-XRO-SUBOBJ-IPV6; + } + container unnumbered-subobject { + when "../type = 'unnumbered'" { + description + "../Type = 'Unnumbered'"; + } + description + "Unnumbered sub-object"; + uses TE-XRO-SUBOBJ-UNNUM; + } + container as-subobject { + when "../type = 'as'" { + description + "../Type = 'AS'"; + } + description + "AS sub-object"; + uses TE-XRO-SUBOBJ-AS; + } + container srlg-subobject { + when "../type = 'srlg'" { + description + "../Type = 'SRLG'"; + } + description + "SRLG sub-object"; + uses TE-XRO-SUBOBJ-SRLG; + } + container lsp-subobject { + when "../type = 'p2p-lsp'" { + description + "../Type = 'P2P_LSP'"; + } + description + "P2P LSP sub-object"; + uses TE-XRO-SUBOBJ-P2P-LSP; + } + leaf type { + type Te-xro-subobj; + description + "Type"; + } + } + + grouping TE-XRO { + description + "XRO object"; + leaf mutual-diversity-flag { + type boolean; + description + "Mutual Diversity Flag"; + } + list xro-subobject { + description + "List of XRO sub-objects"; + uses TE-XRO-SUBOBJ; + } + } + + grouping AFFINITY-NAME-BAG { + description + "Affinity name constraints"; + leaf constraint-type { + type uint8; + description + "Constraint type"; + } + leaf constraint-value { + type uint32; + description + "Deprecated"; + } + leaf forward-ref-value { + type uint32; + description + "Deprecated"; + } + list constraint-extended-value { + description + "Constraint value"; + leaf entry { + type uint32; + description + "Constraint value"; + } + } + list extended-forward-ref-value { + description + "Reference bits for undefined affinity names"; + leaf entry { + type uint32; + description + "Reference bits for undefined affinity names"; + } + } + } + + grouping MPLS-TE-TUNNELS-AFFINITY-INFO { + description + "MPLS TE tunnel Affinity information"; + leaf affinity-bits { + type uint32; + description + "The affinity bits (colors)"; + } + leaf affinity-mask { + type uint32; + description + "The affinity mask (colors)"; + } + list named-affinity { + description + "Array of name based constratints currently + applied to the tunnel"; + uses AFFINITY-NAME-BAG; + } + } + + grouping TE-S2L-FEC { + description + "A sub-LSP FEC"; + leaf s2l-fec-subgroup-id { + type uint16; + description + "sub-LSP subgroup ID"; + } + leaf s2l-fec-lsp-id { + type uint16; + description + "LSP ID"; + } + leaf s2l-fec-tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf s2l-fec-extended-tunnel-id { + type inet:ipv4-address; + description + "Extended tunnel ID"; + } + leaf s2l-fec-source { + type inet:ipv4-address; + description + "LSP source address"; + } + leaf s2l-fec-dest { + type inet:ipv4-address; + description + "sub-LSP destination address"; + } + leaf s2l-fec-p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf s2l-fec-subgroup-originator { + type inet:ipv4-address; + description + "Subgroup Originator"; + } + leaf s2l-fec-ctype { + type Mpls-lib-c; + description + "Session identifier (ctype)"; + } + leaf s2l-fec-vrf { + type string; + description + "VRF; currently only for GMPLS tunnels"; + } + } + + grouping TE-LSP-FEC-CTYPE-DATA { + description + "C-type-specific LSP FEC data"; + leaf fec-ctype { + type Mpls-lib-c; + description + "FEC CType"; + } + leaf p2p-lsp-destination { + when "../fec-ctype = 'mpls-lib-c-type-ipv4-p2p-tunnel'" { + description + "../FEC_CType = 'MPLS_LIB_CTYPE_IPV4_P2P_TUNNEL'"; + } + type inet:ipv4-address; + description + "P2P LSP destination"; + } + leaf fec-destination-p2mp-id { + when "../fec-ctype = 'mpls-lib-c-type-ipv4-p2mp-tunnel'" { + description + "../FEC_CType = + 'MPLS_LIB_CTYPE_IPV4_P2MP_TUNNEL'"; + } + type uint32; + description + "P2MP ID"; + } + } + + grouping TE-LSP-FEC { + description + "A LSP FEC"; + container fec-destination-info { + description + "Destination or P2MP ID"; + uses TE-LSP-FEC-CTYPE-DATA; + } + leaf fec-lsp-id { + type uint16; + description + "LSP ID"; + } + leaf fec-tunnel-id { + type uint16; + description + "Tunnel ID"; + } + leaf fec-extended-tunnel-id { + type inet:ipv4-address; + description + "Extended tunnel ID"; + } + leaf fec-source { + type inet:ipv4-address; + description + "Tunnel source address"; + } + leaf fec-vrf { + type string; + description + "VRF; currently only for GMPLS tunnels"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub7.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub7.yang new file mode 100644 index 000000000..e66f8a711 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub7.yang @@ -0,0 +1,143 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub7 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MPLS-TE-SELFPING-STATISTICS { + description + "Self-ping statistics"; + leaf operations-count { + type uint32; + description + "Total number of started self-ping operations"; + } + leaf probe-sent-count { + type uint32; + description + "Total number of probes sent"; + } + leaf probe-failed-count { + type uint32; + description + "Total number of failed probes"; + } + leaf probe-received-count { + type uint32; + description + "Total number of responses received"; + } + leaf probe-mismatched-count { + type uint32; + description + "Total number of responses with wrong + identification"; + } + leaf average-response-time-seconds { + type uint64; + units "second"; + description + "Average time in seconds to get a response back + since sending the first probe"; + } + leaf underway-count { + type uint32; + description + "Self-ping operations underway"; + } + leaf success-count { + type uint32; + description + "Self-ping operations finished successfuly"; + } + leaf timeouts-count { + type uint32; + description + "Total number of self-ping timeouts"; + } + leaf terminated-count { + type uint32; + description + "Self-ping operations terminated by TE"; + } + leaf cleared-since { + type int64; + description + "Self-ping statistics cleared timestamp"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub8.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub8.yang new file mode 100644 index 000000000..274dad59e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub8.yang @@ -0,0 +1,886 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub8 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-te-oper-sub5 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub6 { + revision-date 2023-02-02; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Te-stats-sig-filter { + type enumeration { + enum "te-stat-sig-filter-vif" { + description + "te stat sig filter vif"; + } + enum "te-stat-sig-filter-lsp" { + description + "te stat sig filter lsp"; + } + } + description + "TE Signaling Filter types"; + } + + grouping MPLS-TE-BFD-SESSION-COUNTERS { + description + "TE BFDoLM counters"; + leaf session-create-events { + type uint32; + description + "The number of BFDOverLM session create events"; + } + leaf session-up-events { + type uint32; + description + "The number of BFDOverLM session up events"; + } + leaf session-creation-failed-events { + type uint32; + description + "The number of BFDOverLM session creation failed + events"; + } + leaf session-down-events { + type uint32; + description + "The number of BFDOverLM session down events"; + } + leaf session-admin-down-events { + type uint32; + description + "The number of BFDOverLM session admin down + events"; + } + leaf session-gracefully-delete-events { + type uint32; + description + "The number of BFDOverLM session gracefully + delete events"; + } + leaf session-non-gracefully-delete-events { + type uint32; + description + "The number of BFDOverLM session non gracefully + delete events"; + } + leaf session-replay-events { + type uint32; + description + "The number of BFDOverLSP session replay events"; + } + } + + grouping MPLS-TE-BFD-COUNTERS { + description + "TE BFD Counters"; + container bfd-over-lsp-head-counters { + description + "BFD over Head-end LSPs Cumulative Counters"; + uses MPLS-TE-BFD-LSP-COUNTERS; + } + container sbfd-over-lsp-head-counters { + description + "SBFD over Head-end LSPs Cumulative Counters"; + uses MPLS-TE-BFD-LSP-COUNTERS; + } + container bfd-over-lsp-tail-counters { + description + "BFD over Tail-end LSPs Cumulative Counters"; + uses MPLS-TE-BFD-SESSION-COUNTERS; + } + container bf-do-lm-counters { + description + "BFD over Links Cumulative Counters"; + uses MPLS-TE-BFD-SESSION-COUNTERS; + } + leaf last-cleared-timestamp { + type uint32; + description + "The timestamp when these stats are cleared + relative to Jan 1, 1970"; + } + } + + grouping SYNC-RETRY-STATS { + description + "TE Sync Retry Stats"; + leaf num-sync-retry-timer-started { + type uint32; + description + "Number of times the sync retry timer gets + started"; + } + leaf num-sync-retry-timer-expired { + type uint32; + description + "Number of times the sync retry timer expires and + gets processed"; + } + leaf num-sync-retry-vif { + type uint32; + description + "Number of times a re-sync is triggered for all + VIFs"; + } + leaf num-sync-retry-s2l { + type uint32; + description + "Number of times a re-sync is triggered for all + S2Ls"; + } + } + + grouping TE-STATS-DARKBW-INFO { + description + "Dark bandwidth counters"; + leaf last-cleared-timestamp { + type uint32; + description + "The timestamp when these stats are cleared + relative to Jan 1, 1970"; + } + leaf bandwidth-application-count { + type uint32; + description + "Number of bandwidth accounting applications"; + } + leaf bandwidth-sample-count { + type uint32; + description + "Number of bandwidth accounting samples"; + } + leaf invalid-sample-count { + type uint32; + description + "Number of invalid bandwidth accounting samples"; + } + leaf skipped-application-count { + type uint32; + description + "Number of skipped bandwidth accounting + applications"; + } + leaf capped-sample-count { + type uint32; + description + "Number of capped bandwidth accounting samples"; + } + leaf high-latency-count { + type uint32; + description + "Number of statsd requests that returned with + high latency"; + } + } + + grouping TE-P2MP-Q-OP-ARRAY { + description + "Array used to store stats for Q enqueues and + dequeues"; + leaf-list te-p2mp-q-op-array { + type uint32; + max-elements "2"; + description + "te p2mp q op array"; + } + } + + grouping P2MP-Q-ELEM-OP-STATS { + description + "P2MP Q statistics"; + container qdq-counts { + description + "Count of the operations"; + uses TE-P2MP-Q-OP-ARRAY; + } + leaf maximum-delay { + type uint64; + description + "Maximum delay in an event being processed"; + } + leaf failed-enqueues { + type uint32; + description + "Failed enqueue of an event"; + } + leaf high-water-mark { + type uint32; + description + "High water mark of Q'd events"; + } + leaf total-latency { + type uint64; + description + "Total latency of all events"; + } + leaf number-of-reschedules { + type uint32; + description + "Number of DQ reschedules"; + } + leaf failed-reschedules { + type uint32; + description + "Number of failed DQ reschedules"; + } + leaf unfound-s2-ls { + type uint32; + description + "Number of S2Ls unfound for event processing"; + } + leaf deleted-s2-ls { + type uint32; + description + "Number of S2Ls deleted"; + } + leaf propagated-events { + type uint32; + description + "Number of propagated events"; + } + leaf successfull-processed-events { + type uint32; + description + "Number of events successfully processed by the + state machine"; + } + leaf unsuccessfull-processed-events { + type uint32; + description + "Number of events unsuccessfully processed by the + state machine"; + } + leaf drop-for-creation-time { + type uint32; + description + "Number of events dropped due to T of event < T + of S2L creation"; + } + } + + grouping TE-STATS-SIG-FILTER-DATA-U { + description + "Union of TE Signalling Filter data"; + container te-signalling-filter-vif { + when "../statistics-filter = 'te-stat-sig-filter-vif'" { + description + "../StatisticsFilter = 'TE_STAT_SIG_FILTER_VIF'"; + } + description + "VIF data"; + uses TE-STATS-BAG-VIF; + } + container te-signalling-filter-lsp { + when "../statistics-filter = 'te-stat-sig-filter-lsp'" { + description + "../StatisticsFilter = 'TE_STAT_SIG_FILTER_LSP'"; + } + description + "LSP data"; + uses TE-STATS-BAG-LSP; + } + leaf statistics-filter { + type Te-stats-sig-filter; + description + "StatisticsFilter"; + } + } + + grouping TE-STATS-SIG-FILTER { + description + "TE Signaling Filter Data"; + container te-signalling-filter-data { + description + "TE Signaling Filter data"; + uses TE-STATS-SIG-FILTER-DATA-U; + } + } + + grouping TE-STATS-BAG-LSP { + description + "MPLS TE LSP Statistics"; + container statistics { + description + "LSP statistics"; + uses TE-STATS-SIG; + } + leaf tunnel-name { + type string; + description + "Tunnel Name"; + } + list s2l-statistic { + description + "List of S2L Statistics"; + uses TE-STATS-BAG-S2L; + } + } + + grouping TE-STATS-BAG-S2L { + description + "MPLS TE S2L Statistics"; + container statistics { + description + "S2L stats"; + uses TE-STATS-SIG; + } + leaf sub-group-originator { + type inet:ipv4-address; + description + "Subgroup Originator"; + } + leaf sub-group-id { + type uint16; + description + "subgroup ID"; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + } + + grouping TE-STATS-BAG-DEST { + description + "MPLS TE Destination Statistics"; + container statistics { + description + "Destination stats"; + uses TE-STATS-SIG; + } + leaf destination-address { + type inet:ipv4-address; + description + "Destination address"; + } + list s2l-statistic { + description + "List of S2L Stats"; + uses TE-STATS-BAG-S2L; + } + } + + grouping TE-STATS-SIG { + description + "Send-Recv count for TE Signaling"; + leaf tx-event-unknown { + type uint32; + description + "Unknown TX events"; + } + leaf tx-path-create-event { + type uint32; + description + "TX Path Create event"; + } + leaf tx-path-change-event { + type uint32; + description + "TX Path Change event"; + } + leaf tx-path-delete-event { + type uint32; + description + "TX Path Delete event"; + } + leaf tx-path-error-event { + type uint32; + description + "TX Path Error event"; + } + leaf tx-resv-create-event { + type uint32; + description + "TX Resv Create event"; + } + leaf tx-resv-change-event { + type uint32; + description + "TX Resv Change event"; + } + leaf tx-resv-delete-event { + type uint32; + description + "TX Resv Delete event"; + } + leaf tx-resv-error-event { + type uint32; + description + "TX Resv Error event"; + } + leaf tx-path-reeval-query-event { + type uint32; + description + "TX Path Reeval Query event"; + } + leaf rx-event-unknown { + type uint32; + description + "RX Unknown events"; + } + leaf rx-path-create-event { + type uint32; + description + "RX Path Create event"; + } + leaf rx-path-change-event { + type uint32; + description + "RX Path Change event"; + } + leaf rx-path-delete-event { + type uint32; + description + "RX Path Delete event"; + } + leaf rx-path-error-event { + type uint32; + description + "RX Path Error event"; + } + leaf rx-resv-create-event { + type uint32; + description + "RX Resv Create event"; + } + leaf rx-resv-change-event { + type uint32; + description + "RX Resv Change event"; + } + leaf rx-resv-delete-event { + type uint32; + description + "RX Resv Delete event"; + } + leaf rx-resv-error-event { + type uint32; + description + "RX Resv Error event"; + } + leaf rx-path-reeval-query-event { + type uint32; + description + "RX Path Reeval Query event"; + } + leaf tx-backup-assign-event { + type uint32; + description + "Backup Assign event"; + } + leaf rx-backup-assign-err-event { + type uint32; + description + "Error on Backup Assign event"; + } + leaf events-total-count { + type uint32; + description + "Total TE Signalling event count"; + } + leaf events-count { + type uint32; + description + "TE Signaling event count"; + } + } + + grouping TE-STATS-BAG-VIF { + description + "MPLS TE VIF Statistics"; + container statistics { + description + "VIF stats"; + uses TE-STATS-SIG; + } + leaf tunnel-name { + type string; + description + "Tunnel Name"; + } + leaf tunnel-sig-name { + type string; + description + "Tunnel Signalled-Name"; + } + leaf lsp-id { + type uint16; + description + "LSP ID"; + } + list destination-statistic { + description + "List of Destination Stats"; + uses TE-STATS-BAG-DEST; + } + } + + grouping TE-S2L-FSM-EVENT-ARRAY { + description + "Array to store S2L FSM events for a state"; + leaf-list te-s2l-fsm-event-array { + type uint32; + max-elements "55"; + description + "te s2l fsm event array"; + } + } + + grouping TE-S2L-FSM-STATS-ARRAY { + description + "Array to store S2L FSM stats"; + list te-s2l-fsm-stats-array { + max-elements "19"; + description + "te s2l fsm stats array"; + uses TE-S2L-FSM-EVENT-ARRAY; + } + } + + grouping TE-FSM-UNEXPECTED-EVENT-STATS { + description + "TE S2L FSM Unexpected Event Stats"; + container head-fsm-events { + description + "FSM unexpected event stats for headend S2Ls"; + uses TE-S2L-FSM-STATS-ARRAY; + } + container mid-fsm-events { + description + "FSM unexpected event stats for midpoint S2Ls"; + uses TE-S2L-FSM-STATS-ARRAY; + } + container tail-fsm-events { + description + "FSM unexpected event stats for tailend S2Ls"; + uses TE-S2L-FSM-STATS-ARRAY; + } + leaf last-cleared-time { + type uint32; + description + "Timestamp when the stat has been cleared"; + } + leaf unexpected-event-num { + type uint32; + description + "Total number of unexpected events"; + } + } + + grouping MPLS-TE-SYNC-COUNT-INFO { + description + "MPLS TE NSR and ISSU counters"; + leaf last-cleared-timestamp { + type uint32; + units "second"; + description + "The timestamp, in seconds, when these statistics + are cleared since 00:00:00 UTC, + January 1, 1970"; + } + leaf role { + type Te-proc-role; + description + "Process role"; + } + leaf last-idt-states { + type uint32; + description + "Last IDT States"; + } + leaf total-states { + type uint32; + description + "Total states"; + } + leaf total-deletions { + type uint32; + description + "Total deletions"; + } + leaf total-nac-ks { + type uint64; + description + "Total NACKs"; + } + leaf total-id-ts { + type uint32; + description + "Total IDTs"; + } + } + + grouping MPLS-TE-SOFT-PREEMPTION-STATS { + description + "Soft preemption stats "; + leaf last-cleared-timestamp { + type uint32; + description + "The timestamp when these stats are cleared + relative to Jan 1, 1970"; + } + leaf soft-preemption-events { + type uint32; + description + "The number of soft preemption events triggered"; + } + leaf soft-preempted-ls-ps { + type uint32; + description + "The number of LSPs that have been soft preempted + at this node"; + } + leaf timed-out-soft-preempted-lsp-ss { + type uint32; + description + "The number of LSPs that have been soft preempted + and timed out at this node"; + } + leaf torn-down-soft-preempted-ls-ps { + type uint32; + description + "The number of LSPs that have been soft preempted + at this node and torn down before timing out"; + } + leaf frr-triggered-soft-preempted-lsp-ss { + type uint32; + description + "The number of LSPs that have been soft preempted + and then fast rerouted at this node"; + } + leaf minimum-time-in-soft-preempted-state { + type uint16; + units "second"; + description + "The minimum number of seconds an LSP remained in + the soft preempted state"; + } + leaf time-in-soft-preempted-state-max { + type uint16; + units "second"; + description + "The maximum number of seconds an LSP remained in + the soft preempted state without being hard + preempted"; + } + leaf time-in-soft-preempted-state-avg { + type uint16; + units "second"; + description + "The average number of seconds an LSP remained in + the soft preempted state. This excludes the + timed out LSPs"; + } + leaf soft-preempted-head-ls-ps { + type uint32; + description + "Number of soft preempted LSPs at the headend. + This is relevant to the headend"; + } + leaf reoptimized-soft-preempted-ls-ps { + type uint32; + description + "Number of soft preemption LSPs that are + reoptimized. This is relevant to the headend"; + } + leaf torndown-soft-preempted-ls-ps { + type uint32; + description + "Number of soft preemption LSPs that are torn + down instead of being reoptimized. This is + relevant to the headend."; + } + leaf path-protected-switchover-soft-preempted-ls-ps { + type uint32; + description + "Number of soft preemption LSPs that are replaced + with the path protection LSP. This is relevant + to the headend"; + } + } + + grouping TE-STATS-AUTOBACKUP-COUNTERS { + description + "TE Auto Backup Counter Types"; + leaf total-tunnels { + type uint32; + description + "Total auto backup tunnels"; + } + leaf next-hop-tunnels { + type uint32; + description + "Next hop auto backup tunnels only"; + } + leaf next-next-hop-tunnels { + type uint32; + description + "Next next hop auto backup tunnels only"; + } + } + + grouping TE-STATS-AUTOBACKUP { + description + "Counters for TE Autobackup"; + container created { + description + "Number of connected auto backup tunnels"; + uses TE-STATS-AUTOBACKUP-COUNTERS; + } + container connected { + description + "Number of connected auto backup tunnels"; + uses TE-STATS-AUTOBACKUP-COUNTERS; + } + container removed-down { + description + "Number of NNHOP auto backup tunnels removed + while down"; + uses TE-STATS-AUTOBACKUP-COUNTERS; + } + container removed-unused { + description + "Number of auto backup tunnels removed while + unused"; + uses TE-STATS-AUTOBACKUP-COUNTERS; + } + container removed-in-use { + description + "Number of auto backup tunnels removed while up + and in use"; + uses TE-STATS-AUTOBACKUP-COUNTERS; + } + container removed-range-exceeded { + description + "Number of auto backup tunnel attempts rejected + because the total number exceeds the range"; + uses TE-STATS-AUTOBACKUP-COUNTERS; + } + leaf last-cleared-time { + type uint32; + description + "Timestamp when the stat has been cleared"; + } + } + + grouping TE-STATS-AUTOMESH { + description + "Counters for TE Automesh"; + leaf created { + type uint32; + description + "Number of connected automesh tunnels"; + } + leaf connected { + type uint32; + description + "Number of connected automesh tunnels"; + } + leaf removed-unused { + type uint32; + description + "Number of automesh tunnels removed while unused"; + } + leaf removed-in-use { + type uint32; + description + "Number of automesh tunnels removed while up and + in use"; + } + leaf removed-range-exceeded { + type uint32; + description + "Number of automesh tunnel attempts rejected + because the total number exceeds the range"; + } + leaf last-cleared-time { + type uint32; + units "second"; + description + "Time at which these were last cleared in seconds + since (in seconds since 1st Jan 1970 00:00:00)'"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub9.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub9.yang new file mode 100644 index 000000000..e41eb0704 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper-sub9.yang @@ -0,0 +1,110 @@ +submodule Cisco-IOS-XR-mpls-te-oper-sub9 { + belongs-to Cisco-IOS-XR-mpls-te-oper { + prefix Cisco-IOS-XR-mpls-te-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-te package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MPLS-TE-MIB-SCALAR-INFO { + description + "MPLS TE MIB Scalar Information"; + leaf mpls-tunnel-configured { + type uint32; + description + "mpls tunnel configured"; + } + leaf mpls-tunnel-active { + type uint32; + description + "mpls tunnel active"; + } + leaf mpls-tunnel-te-dist-proto { + type uint8; + description + "mpls tunnel te dist proto"; + } + leaf mpls-tunnel-max-hops { + type uint32; + description + "mpls tunnel max hops"; + } + leaf mpls-tunnel-notification-max-rate { + type uint32; + description + "mpls tunnel notification max rate"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper.yang new file mode 100644 index 000000000..4074fba89 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-te-oper.yang @@ -0,0 +1,2775 @@ +module Cisco-IOS-XR-mpls-te-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-te-oper"; + prefix mpls-te-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-te-oper-sub9 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub8 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub7 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub6 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub5 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub4 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub3 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub2 { + revision-date 2023-02-02; + } + include Cisco-IOS-XR-mpls-te-oper-sub1 { + revision-date 2023-02-02; + } + + 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 mpls-te package operational data. + + This module contains definitions + for the following management objects: + mpls-te: MPLS Traffic Engineering operational data + mpls-lcac-standby: MPLS-LCAC operational data on the standby + mpls-lcac: MPLS-LCAC operational data + mpls-pce: MPLS PCE operational data + mpls-pce-stdby: MPLS PCE operational data on standby node + mpls-tp: MPLS transport profile operational data + mpls-te-standby: Standby MPLS TE operational data + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-02 { + description + "Remove hidden commands + 2022-11-07 + Add TE++ over numbered tunnel feature + 2022-08-30 + Extending self-ping statistics bag + 2022-07-07 + Removed TunnelAttributeSetStatic from TunnelAttributeSetType + 2022-03-18 + Added self-ping under named-tunnels"; + semver:module-version "2.0.0"; + } + revision 2021-08-09 { + description + "Added load-interval attribute in the tunnel class. IosSetYangSchemaRev Cisco-IOS-XR-mpls-te-oper"; + semver:module-version "1.2.0"; + } + revision 2021-01-19 { + description + "Added bandwidth-protection for auto-backups. Added signalled-bandwidth and soft-preemption for attribute set of autobackups. + 2020-11-05 + Added secondary router id for TE nodes."; + semver:module-version "1.1.0"; + } + revision 2020-03-28 { + description + "Added dark bandwidth accounting related oper info. Added stateful PCE static delegation related oper info. Added P2MP TE realted oper info. Added new operational leaves sim-rate-set sim-rate pce-address rewrite-lsd-queue tunnel-id-xr controller-handle backup-tunnel-sig-name protected-interface attribute-set-crc32 error delegation-status error context rewrite-lsd-queue simrate-enabled-in-last-application tunnel-id-xr p2mp-id-xr lsp-id-xr source-address-xr simrate-enabled-in-last-application is-expand-timer-running expand-timer-duration expand-timer-remain egress-interface-handle ingress-interface-handle srdb-check-enabled destination-create-time link-if-index create-time is-config-pending attribute-set-crc32 destination-list-crc32 maximum-destination-count maximum-tunnel-count srlg-number-xr tunnel-interface-name lsp-id-xr tunnel-rewrite-ctype tunnel-load-share tunnel-policy-class tunnel-forward-class lmp-is-allocated topology-node-igp-id topology-node-igp-area topology-node-is-router link-id classification-flags current-lsp-bandwidth-requested current-lsp-bandwidth-requested-type standby-lsp-bandwidth-requested standby-lsp-bandwidth-requested-type reopt-lsp-bandwidth-requested reopt-lsp-bandwidth-requested-type standby-reopt-lsp-bandwidth-requested standby-reopt-lsp-bandwidth-requested-type destination-address error tunnel-name-xr interface-name-xr interface-name"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-08-01 { + description + "Removed empty groupings."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Attribute-set-name-length { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Attribute set name length"; + } + + typedef Mpls-te-path-selection-metric { + type enumeration { + enum "igp" { + value 1; + description + "IGP Metric"; + } + enum "te" { + value 2; + description + "TE Metric"; + } + enum "delay" { + value 4; + description + "DELAY Metric"; + } + } + description + "Mpls te path selection metric"; + } + + typedef Mpls-te-path { + type enumeration { + enum "not-set" { + value 0; + description + "Not set"; + } + enum "dynamic" { + value 1; + description + "Dynamic"; + } + enum "explicit-name" { + value 3; + description + "Explicit name"; + } + enum "explicit-id" { + value 4; + description + "Explicit ID"; + } + enum "no-ero" { + value 5; + description + "No ERO"; + } + enum "segment-routing" { + value 6; + description + "Segment Routing"; + } + } + description + "Mpls te path"; + } + + typedef Mpls-te-node { + type enumeration { + enum "router" { + value 1; + description + "Router"; + } + enum "network" { + value 2; + description + "Network"; + } + } + description + "Mpls te node"; + } + + typedef Preemption-event-index-range { + type uint32 { + range "0..1999"; + } + description + "Preemption event index range"; + } + + typedef Mpls-pce-symbolic-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Mpls pce symbolic name"; + } + + typedef Ctype { + type enumeration { + enum "ctype-null" { + value 0; + description + "CTYPE NULL"; + } + enum "ctype-ipv4" { + value 1; + description + "CTYPE IPV4"; + } + enum "ctype-ipv4-p2p-tunnel" { + value 7; + description + "CTYPE IPV4 P2P TUNNEL"; + } + enum "ctype-ipv6-p2p-tunnel" { + value 8; + description + "CTYPE IPV6 P2P TUNNEL"; + } + enum "ctype-ipv4-uni" { + value 9; + description + "CTYPE IPV4 UNI"; + } + enum "ctype-ipv4-p2mp-tunnel" { + value 13; + description + "CTYPE IPV4 P2MP TUNNEL"; + } + enum "ctype-ipv6-p2mp-tunnel" { + value 14; + description + "CTYPE IPV6 P2MP TUNNEL"; + } + } + description + "Ctype"; + } + + typedef Mpls-te-next-hop { + type enumeration { + enum "egress-resolve" { + value 0; + description + "Egress Resolve"; + } + enum "autoroute-dest" { + value 1; + description + "Autoroute Dest"; + } + } + description + "Mpls te next hop"; + } + + typedef Mpls-te-attr-set { + type enumeration { + enum "not-used" { + value 0; + description + "Not used"; + } + enum "static" { + value 1; + description + "Static"; + } + enum "lsp" { + value 2; + description + "LSP"; + } + enum "unassigned" { + value 3; + description + "Unassigned"; + } + enum "auto-backup" { + value 4; + description + "Auto backup"; + } + enum "auto-mesh" { + value 5; + description + "Auto mesh"; + } + enum "xro" { + value 6; + description + "XRO"; + } + enum "p2mp-te" { + value 7; + description + "P2MP TE"; + } + enum "otn-pp" { + value 8; + description + "OTN Path Protection"; + } + enum "p2p-te" { + value 9; + description + "P2P TE"; + } + enum "uni-p" { + value 10; + description + "Uni protection"; + } + } + description + "Mpls te attr set"; + } + + typedef Mesh-group-id { + type uint32 { + range "0..4294967295"; + } + description + "Mesh group id"; + } + + typedef Mpls-te-igp-protocol { + type enumeration { + enum "none" { + value 0; + description + "Not set"; + } + enum "isis" { + value 1; + description + "IS IS"; + } + enum "ospf" { + value 2; + description + "OSPF"; + } + } + description + "Mpls te igp protocol"; + } + + grouping ADVERTISEMENTS { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container advertisements { + description + "The advertisement information in MPLS-LCAC"; + uses MPLS-LM-ADVERTISEMENT-INFO; + } + } + + grouping MAXIMUM-TUNNELS { + description + "Common node of mpls-te, mpls-te-standby"; + container maximum-tunnels { + description + "MPLS Traffic Engineering Tunnels"; + uses TUNNEL-MAX-INFO; + } + } + + grouping ADMISSION-CONTROL { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container admission-control { + description + "The admission control information in MPLS-LCAC"; + container global { + description + "The global admission control information"; + uses MPLS-LM-ADMISSION-CONTROL-COMMON-INFO; + } + container admitted-tunnels { + description + "The table of admitted tunnels information in + MPLS-LCAC"; + list admitted-tunnel { + key "source-address destination-port source-port destination-address extended-tunnel-id next-hop-address ctype p2mp-id"; + description + "The information for a specific admitted tunnel"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "The source IP address of the tunnel"; + } + leaf destination-port { + type uint32; + description + "The tunnel number at the head"; + } + leaf source-port { + type uint32; + description + "The signaling instance number of the tunnel"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "The destination IP address of the tunnel"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended tunnel id"; + } + leaf next-hop-address { + type inet:ipv4-address-no-zone; + description + "The Next hop IP"; + } + leaf ctype { + type Ctype; + description + "C type"; + } + leaf p2mp-id { + type uint32; + description + "P2MP id"; + } + uses MPLS-LM-ADMISSION-CONTROL-TUNNEL-INFO; + } + } + container link-interfaces { + description + "The global admission control information on + Interfaces"; + list link-interface { + key "interface-name"; + description + "The global admission control information on an + interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-ADMISSION-CONTROL-COMMON-INFO; + } + } + } + } + + grouping WRAP-PROTECTION { + description + "Common node of mpls-te, mpls-te-standby"; + container wrap-protection { + description + "Represent all the LSP Wrap Protection info in + MPLS-TE"; + container protected-lsps { + description + "The set of wrap protected LSPs available in + MPLS-TE"; + list protected-lsp { + key "source-address destination-address tunnel-id extended-tunnel-id lsp-id sub-group-id sub-group-originator p2mp-id session-type"; + description + "Wrap protection info for a given protected LSP"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf sub-group-originator { + type inet:ipv4-address-no-zone; + description + "Subgroup Orig ID"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf session-type { + type Ctype; + description + "Session Type"; + } + uses MPLS-TE-LSP-WRAP-PROTECTION-BAG; + } + } + } + } + + grouping DIFF-SERV-TE-CLASSES { + description + "Common node of mpls-te, mpls-te-standby"; + container diff-serv-te-classes { + description + "The configured Diff Serv TE classes"; + uses MPLS-TE-DSTE-CLASSES; + } + } + + grouping PEER-TABLE { + description + "Common node of mpls-pce, mpls-pce-stdby"; + container peers { + description + "The set of PCE peers"; + list peer { + key "peer-address"; + description + "A PCE peer"; + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "The peer address"; + } + uses PCE-NEIGHBOR-BAG; + } + } + } + + grouping LINK-INFORMATION { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container link-information { + description + "The interface information in MPLS-LCAC"; + container global { + description + "The global information for all the interfaces"; + uses MPLS-LM-INTERFACE-COMMON-INFO; + } + container links { + description + "The table of interfaces in MPLS-LCAC"; + list link { + key "interface-name"; + description + "An interface in MPLS-LCAC"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-INTERFACE-LINK-INFO; + } + } + } + } + + grouping LSP-TABLE { + description + "Common node of mpls-pce, mpls-pce-stdby"; + container lsps { + description + "Table of LSPs"; + list lsp { + key "symbolic-name"; + description + "Information of a LSP from LSPDB"; + leaf symbolic-name { + type Mpls-pce-symbolic-name; + description + "Symbolic name"; + } + uses PCE-LSP-BAG; + } + uses PCE-LSP-BAG; + } + } + + grouping PREEMPTION-EVENT-TABLE { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container preemption-events { + description + "Preemption event log in MPLS-LCAC"; + list preemption-event { + key "event-index"; + description + "Preemption event"; + leaf event-index { + type Preemption-event-index-range; + description + "Event index"; + } + uses MPLS-LM-PREEMPTION-EVENT; + } + } + } + + grouping SIGNALLING-COUNTERS { + description + "Common node of mpls-te, mpls-te-standby"; + container signalling-counters { + description + "TE counters"; + container issu { + description + "MPLS TE ISSU counters"; + uses MPLS-TE-SYNC-COUNT-INFO; + } + container fsm-unexpected-event-stats { + description + "TE S2L FSM unexpected event stats"; + uses TE-FSM-UNEXPECTED-EVENT-STATS; + } + container head-signalling-counters { + description + "Sig Head Table TE counters"; + list head-signalling-counter { + key "ctype tunnel-id"; + description + "TE stats"; + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + uses TE-STATS-BAG-VIF; + } + } + container remote-signalling-counters { + description + "Sig mid tail Table TE counters"; + list remote-signalling-counter { + key "ctype tunnel-id extended-tunnel-id p2mp-id lsp-id source-address destination-address sub-group-originator sub-group-id"; + description + "TE stats"; + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf sub-group-originator { + type inet:ipv4-address-no-zone; + description + "Subgroup originator"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + uses TE-STATS-BAG-LSP; + } + } + container signallings { + description + "TE counters"; + list signalling { + key "ctype tunnel-id extended-tunnel-id p2mp-id lsp-id source-address destination-address sub-group-originator sub-group-id"; + description + "TE Sig"; + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf sub-group-originator { + type inet:ipv4-address-no-zone; + description + "Subgroup originator"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + uses TE-STATS-SIG-FILTER; + } + } + container signalling-summary { + description + "Send-Recv count summary for TE Signaling"; + uses TE-STATS-SIG; + } + } + } + + grouping STATISTICS { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container statistics { + description + "The interface statistics information in + MPLS-LCAC"; + container summary { + description + "The statistics summary for all interfaces"; + uses MPLS-LM-STATS-SUMMARY-INFO; + } + container statstics-links { + description + "The table of statistics interfaces in MPLS-LCAC"; + list statstics-link { + key "interface-name"; + description + "An interface in MPLS-LCAC"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-STATS-LINK-INFO; + } + } + } + } + + grouping TE-PCE-OPER-STATISTICS { + description + "Common node of mpls-lcac, mpls-lcac-standbyCommon + node of mpls-pce, mpls-pce-stdby"; + container statistics { + description + "PCE stats info"; + uses PCE-STATS-BAG; + } + } + + grouping PATH-PROTECTION { + description + "Common node of mpls-lcac, mpls-lcac-standbyCommon + node of mpls-pce, mpls-pce-stdbyCommon node of + mpls-te, mpls-te-standby"; + container path-protection { + description + "MPLS TE path protection info"; + container switchover-log { + description + "MPLS TE path protection info"; + uses TE-PP-SW-LOG-BAG; + } + } + } + + grouping FIB-NEXT-HOP-LABEL-ROUTE-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container fib-next-hop-label-routes { + description + "MPLS TE FIB nexthop label route database"; + list fib-next-hop-label-route { + key "label"; + description + "MPLS TE FIB nexthop label route"; + leaf label { + type uint32 { + range "0..1048575"; + } + description + "MPLS Label"; + } + uses TE-FIB-NH-ROUTE-BAG; + } + } + } + + grouping ANNOUNCE-TUNNELS-INFO { + description + "Common node of mpls-te, mpls-te-standby"; + container announce-tunnels-info { + description + "Announced tunnels (forwarding adjacency and + autoroute annonce)"; + container autoroute-announce-table { + description + "Autoroute announce and forwarding adjacency + table"; + uses ANNOUNCE-DEST; + } + container all-autoroute-table { + description + "Autoroute announce and forwarding adjacency + table"; + uses ANNOUNCE-DEST; + } + } + } + + grouping ATTRIBUTE-SET-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container attribute-sets { + description + "AttributeSet information."; + list attribute-set { + key "attribute-set-type attribute-set-name"; + description + "MPLS TE attribute-set information"; + leaf attribute-set-type { + type Mpls-te-attr-set; + description + "Attribute Set Type"; + } + leaf attribute-set-name { + type Attribute-set-name-length; + description + "Attribute Set Name"; + } + uses MPLS-TE-ATTRIBUTE-SET; + } + } + } + + grouping BANDWIDTH-ACCOUNT { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container bandwidth-account { + description + "The bandwidth accounting information in + MPLS-LCAC"; + container bandwidth-account-links { + description + "The interface bandwidth accounting information + table"; + list bandwidth-account-link { + key "interface-name"; + description + "An interface in bandwidth accounting table"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-BANDWIDTH-ACCOUNT-LINK-TEL-DET-INFO; + } + } + } + } + + grouping ANNOUNCE-DEST { + description + "Common node of autoroute-announce-table, + all-autoroute-table"; + list announce-dest { + key "destination-address protocol area igp-id"; + description + "Autoroute tunnels per destination information"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf protocol { + type Mpls-te-igp-protocol; + description + "The IGP protocol used by the tunnel"; + } + leaf area { + type uint32; + description + "Area"; + } + leaf igp-id { + type xr:Cisco-ios-xr-string; + description + "IGP Instance ID"; + } + uses MPLS-TE-ANNOUNCEMENT-DEST-BAG; + } + } + + grouping TOPOLOGY-BRIEF-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container topology-briefs { + description + "MPLS-TE topology brief table"; + list topology-brief { + key "protocol igp-id area topology-node-type igp-node-id"; + description + "A node in MPLS-TE topoogy brief table"; + leaf protocol { + type Mpls-te-igp-protocol; + description + "IGP protocol type"; + } + leaf igp-id { + type xr:Cisco-ios-xr-string; + description + "IGP instance"; + } + leaf area { + type uint32; + description + "IGP area"; + } + leaf topology-node-type { + type Mpls-te-node; + description + "Node type"; + } + leaf igp-node-id { + type string; + description + "IGP Node ID"; + } + uses MPLS-TE-TOPOLOGY-NODE; + } + } + } + + grouping AUTO-TUNNEL { + description + "Common node of mpls-te, mpls-te-standby"; + container auto-tunnel { + description + "Auto tunnel information."; + container pcc { + description + "Auto tunnel PCC (Path Computation Client) + information."; + container summary { + description + "MPLS TE auto-tunnel pcc summary information"; + uses MPLS-TE-AUTOTUN-PCC-SUMMARY-INFO; + } + } + container mesh { + description + "Auto tunnel mesh information."; + container mesh-groups { + description + "Display auto-tunnel mesh group"; + list mesh-group { + key "mesh-group-id"; + description + "Display auto-tunnel mesh group information"; + leaf mesh-group-id { + type Mesh-group-id; + description + "Mesh group ID"; + } + uses MPLS-TE-MESHGROUP; + } + } + container statistics { + description + "MPLS TE auto-tunnel mesh counters (stats) + information"; + uses TE-STATS-AUTOMESH; + } + container summary { + description + "MPLS TE auto-tunnel mesh summary information"; + uses MPLS-TE-AUTOTUN-MESH-SUMMARY-INFO; + } + container config { + description + "MPLS TE auto-tunnel mesh configuration + information"; + uses MPLS-TE-AUTOTUN-MESH-CONFIG-INFO; + } + container one-hop { + description + "MPLS TE auto-tunnel mesh onehop information"; + container interfaces { + description + "Display auto-tunnel onehop interfaces"; + list interface { + key "interface-name"; + description + "Display auto-tunnel mesh onehop interface + information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MPLS-TE-AUTOMESH-ONEHOP-INTERFACE; + } + } + container statistics { + description + "MPLS TE auto-tunnel mesh onehop counters + (stats) information"; + uses TE-STATS-AUTOMESH; + } + container summary { + description + "MPLS TE auto-tunnel mesh onehop summary + information"; + uses MPLS-TE-AUTOTUN-MESH-ONEHOP-SUMMARY-INFO; + } + } + } + container backup { + description + "Auto tunnel backup information."; + container tunnels { + description + "auto-tunnel backup information"; + list tunnel { + key "backup-tunnel-name"; + description + "Display auto tunnel backup tunnel information"; + leaf backup-tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Backup tunnel name"; + } + uses MPLS-TE-AUTOTUN-BACKUP-TUNNEL-INFO; + } + } + container statistics { + description + "MPLS TE auto-tunnel backup counters (stats) + information"; + uses TE-STATS-AUTOBACKUP; + } + container summary { + description + "MPLS TE auto-tunnel backup summary information"; + uses MPLS-TE-AUTOTUN-BACKUP-SUMMARY-INFO; + } + container config { + description + "MPLS TE auto-tunnel backup configuration + information"; + uses MPLS-TE-AUTOTUN-BACKUP-CONFIG-INFO; + } + } + } + } + + grouping BANDWIDTH-ACCOUNTING-COUNTERS { + description + "Common node of mpls-te, mpls-te-standby"; + container bandwidth-accounting-counters { + description + "Bandwidth accounting counters"; + uses TE-STATS-DARKBW-INFO; + } + } + + grouping COLLABORATOR-TIMERS { + description + "Common node of mpls-te, mpls-te-standby"; + container collaborator-timers { + description + "TE Collaborator timer status"; + uses MPLS-TE-P2MP-TIMERS-B; + } + } + + grouping SOFT-PREEMPTION { + description + "Common node of mpls-te, mpls-te-standbyCommon + node of mpls-te, mpls-te-standby"; + container soft-preemption { + description + "Soft Preemption information."; + container statistics { + description + "MPLS TE soft preemption stats information"; + uses MPLS-TE-SOFT-PREEMPTION-STATS; + } + } + } + + grouping HARDWARE-OUT-OF-RESOURCES { + description + "Common node of mpls-te, mpls-te-standby"; + container hardware-out-of-resources { + description + "NPU Hardware OOR Information"; + container summary { + description + "HW OOR Summary information"; + uses TE-HW-OOR-INFO; + } + } + } + + grouping P2P-P2MP-TUNNEL { + description + "Common node of mpls-te, mpls-te-standby"; + container p2p-p2mp-tunnel { + description + "P2P or P2MP tunnels"; + container tunnel-remote-briefs { + description + "Restrict display to P2P or P2MP mid or tail + tunnels"; + list tunnel-remote-brief { + key "lsp-id tunnel-id extended-tunnel-id source-address ctype destination-address p2mp-id"; + description + "P2P or P2MP tunnel that is a mid or tail"; + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + uses MPLS-TE-P2MP-LSP-BRIEF; + } + } + container tunnel-remotes { + description + "Restrict display to P2P or P2MP mid or tail + tunnels"; + list tunnel-remote { + key "lsp-id tunnel-id extended-tunnel-id source-address ctype destination-address p2mp-id"; + description + "P2P or P2MP tunnel that is a mid or tail"; + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + uses MPLS-TE-P2MP-LSP; + } + } + container nni-tunnels { + description + "GMPLS NNI tunnels"; + list nni-tunnel { + key "tunnel-id source-address destination-address"; + description + "GMPLS-NNI tail tunnel"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + uses MPLS-TE-P2MP-TUNNEL-BAG; + } + } + container tunnel-heads { + description + "Restrict display to P2P or P2MP head tunnels"; + list tunnel-head { + key "tunnel-name"; + description + "mpls te p2p or p2mp tunnels"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel Name"; + } + uses MPLS-TE-P2MP-TUNNEL-BAG; + } + } + } + } + + grouping BFD-NEIGHBOR-TABLE { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container bfd-neighbors { + description + "BFD Neighbors"; + list bfd-neighbor { + key "interface-name"; + description + "A BFD Neighbor"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-BFD-NBRS-LINK-INFO; + } + } + } + + grouping SOFT-PREEMPTION-TABLE { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container soft-preemptions { + description + "The soft preemption information for the TE-links"; + list soft-preemption { + key "interface-name"; + description + "The soft preemption info for a TE-link"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-SOFT-PREEMPTION-LINK-INFO; + } + } + } + + grouping TUNNEL-TABLE { + description + "Common node of mpls-pce, mpls-pce-stdby"; + container tunnels { + description + "Table of PCE tunnels"; + list tunnel { + key "tunnel-name"; + description + "Information of a PCE tunnel"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel Name"; + } + uses PCE-TUNNEL-BAG; + } + uses PCE-TUNNEL-BAG; + } + } + + grouping FAST-REROUTE { + description + "Common node of mpls-te, mpls-te-standby"; + container fast-reroute { + description + "Represent all the fastreroute info in MPLS-TE"; + container backup-tunnels { + description + "The set of fastreroute backup tunnels available + in MPLS-TE"; + list backup-tunnel { + key "tunnel-name interface-name"; + description + "Fastreroute info for a given backup tunnel"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Backup tunnel name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Protected interface name"; + } + uses MPLS-TE-FASTREROUTE-BAG; + } + } + container protected-interfaces { + description + "The set of fastreroute protected interfaces + available in MPLS-TE"; + list protected-interface { + key "interface-name backup-tunnel-name"; + description + "Fastreroute info for a given protected + interface"; + leaf interface-name { + type xr:Interface-name; + description + "Protected interface name"; + } + leaf backup-tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Backup tunnel name"; + } + uses MPLS-TE-FASTREROUTE-BAG; + } + } + container protections { + description + "The set of fastreroute protected interfaces + available in MPLS-TE"; + list protection { + key "source-address destination-address tunnel-id extended-tunnel-id lsp-id sub-group-id sub-group-originator p2mp-id session-type"; + description + "Fastreroute info for a given protection + interface"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf sub-group-id { + type uint32; + description + "Subgroup ID"; + } + leaf sub-group-originator { + type inet:ipv4-address-no-zone; + description + "Subgroup Orig ID"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf session-type { + type uint32; + description + "Session Type"; + } + uses MPLS-TE-FASTREROUTE-PROTECTION-BAG; + } + } + container promotion { + description + "The info about the promotion timer of backup + tunnels"; + uses MPLS-TE-FASTREROUTE-PROMOTION-BAG; + } + } + } + + grouping TOPOLOGY { + description + "Common node of mpls-te, mpls-te-standby"; + container topology { + description + "The topology information in MPLS-TE"; + container global { + description + "Global information about the overall MPLS-TE + topology"; + uses MPLS-TE-TOPOLOGY-GLOBAL-INFO-BAG; + } + container destination-paths { + description + "This table models the path calculation + capabilities in MPLS-TE.A GET operation for the + complete table will return no entries.See the + class DestinationPath for more details."; + list destination-path { + description + "A GET operation on this class returns the best + available path in the TE topology to reach the + specified destination while satisfying the + specified constraints."; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf affinity-bits { + type uint32; + description + "Affinity Bits"; + } + leaf affinity-mask { + type uint32; + description + "Affinity Mask"; + } + leaf setup-priority { + type uint32; + description + "Setup Priority"; + } + leaf hold-priority { + type uint32; + description + "Hold Priority"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth in kbps"; + } + leaf igp-type { + type Mpls-te-igp-protocol; + description + "IGP Type"; + } + leaf igp-instance { + type xr:Cisco-ios-xr-string; + description + "IGP Instance"; + } + leaf igp-area { + type uint32; + description + "IGP Area"; + } + leaf hop-limit { + type uint32; + description + "Hop Limit"; + } + leaf exclude-srlg-ip-address { + type inet:ipv4-address-no-zone; + description + "Exclude SRLG IP Address"; + } + leaf path-type { + type Mpls-te-path; + description + "Path Type"; + } + leaf path-id { + type uint32; + description + "This is the ID of the explicit path to be + used for this path calculation query"; + } + leaf path-name { + type xr:Cisco-ios-xr-string; + description + "This is the name of the explicit path to be + used for this path calculation query"; + } + leaf cost-limit { + type uint32; + description + "Cost Limit"; + } + leaf metric-type { + type Mpls-te-path-selection-metric; + description + "Metric Type"; + } + leaf delay-limit { + type uint32; + description + "Delay Limit in usec"; + } + uses MPLS-TE-TOPOLOGY-PATH-BAG; + } + } + container configured-srlgs { + description + "Set of configured SRLG"; + list configured-srlg { + key "srlg-number"; + description + "Configured SRLG value and the addresses using + it"; + leaf srlg-number { + type uint32; + description + "SRLG Number"; + } + uses MPLS-TE-TOPO-CFG-SRLG; + } + } + container srlgs { + description + "Set of SRLG operational value for the overall + MPLS-TE topology"; + list srlg { + key "srlg-number"; + description + "SRLG operational value for the overall MPLS-TE + topology"; + leaf srlg-number { + type uint32; + description + "SRLG Number"; + } + uses MPLS-TE-TOPO-SRLG; + } + } + container path-tunnels { + description + "MPLS-Te topology path info"; + list path-tunnel { + description + "MPLS-TE topology path taken by the specified + tunnel"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel name"; + } + uses MPLS-TE-TOPOLOGY-PATH-BAG; + } + } + } + } + + grouping TE-PCE-OPER-TOPOLOGY { + description + "Common node of mpls-te, mpls-te-standbyCommon + node of mpls-pce, mpls-pce-stdby"; + container topology { + description + "The topology information in PCE"; + container global { + description + "The global information of the overall topology"; + uses PCE-TOPOLOGY-GLOBAL-INFO-BAG; + } + } + } + + grouping FORWARDING-ADJACENCY-DESTINATION-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container forwarding-adjacency-destinations { + description + "Announced Destination tunnel"; + list forwarding-adjacency-destination { + key "destination-address"; + description + "Forwarding Adjacencies for a destination"; + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination address"; + } + uses MPLS-TE-FWD-ADJ-BAG; + } + } + } + + grouping LINK-SUMMARY { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container link-summary { + description + "The global summary for all the interfaces"; + uses MPLS-LM-SUMMARY-COMMON-INFO; + } + } + + grouping BANDWIDTH-ALLOCATION { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container bandwidth-allocation { + description + "The bandwidth allocation information in + MPLS-LCAC"; + container global { + description + "Global bandwidth allocation information for all + interfaces"; + uses MPLS-LM-BW-ALLOC-COMMON-INFO; + } + container bandwidth-allocation-links { + description + "Per-link bandwidth allocation information in + MPLS-LCAC"; + list bandwidth-allocation-link { + key "interface-name"; + description + "The bandwidth allocation for a given interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-BW-ALLOC-LINK-INFO; + } + } + } + } + + grouping AUTO-TUNNEL-SERVICES { + description + "Common node of mpls-te, mpls-te-standby"; + container auto-tunnel-services { + description + "MPLS TE Auto Tunnel Services"; + container sr-policy-entries { + description + "MPLS TE SR Policy Context table "; + list sr-policy-entry { + key "client-id color end-point distinguisher"; + description + "MPLS TE SR Policy information"; + leaf client-id { + type uint32; + description + "Client ID"; + } + leaf color { + type uint32; + description + "Color"; + } + leaf end-point { + type inet:ip-address-no-zone; + description + "End Point"; + } + leaf distinguisher { + type uint32; + description + "SR Policy Distinguisher Value"; + } + uses TE-SERVICE-SR-POLICY; + } + } + } + } + + grouping AUTOROUTE-DESTINATION-TUNNEL-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container auto-route-destination-entries { + description + "MPLS TE autoroute destination table indexed by + tunnel"; + list auto-route-destination-entry { + key "tunnel-id"; + description + "MPLS TE autoroute destination info for one + tunnel"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + uses TE-TUNNEL-AUTOROUTE-DESTINATIONS; + } + } + } + + grouping TUNNELS { + description + "Common node of mpls-te, mpls-te-standby"; + container tunnels { + description + "Failure protection provided for tunnels"; + container tunnel-flex-lsps { + description + "Flex LSP"; + list tunnel-flex-lsp { + description + "Flex LSP"; + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel Name"; + } + uses MPLS-TE-FLEX-LSP; + } + } + container tunnel-auto-bandwidths { + description + "Auto Bandwidth Brief Table"; + list tunnel-auto-bandwidth { + key "tunnel-name"; + description + "Auto Bandwidth info bag"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel Name"; + } + uses MPLS-TE-TUNNELS-AUTOBW-BRIEF; + } + } + container summary { + description + "Summary of tunnel info"; + uses MPLS-TE-TUNNELS-SUMMARY-INFO-BAG; + } + container tunnel-path-protections { + description + "Path protection"; + list tunnel-path-protection { + description + "Path Protection"; + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel Name"; + } + uses MPLS-TE-PATH-PROTECTION; + } + } + } + } + + grouping IGP-AREA-BRIEF-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container igp-area-briefs { + description + "The set of IGP-areas known to MPLS-TE"; + list igp-area-brief { + key "protocol process-tag"; + description + "An IGP instance Brief info"; + leaf protocol { + type Mpls-te-igp-protocol; + description + "The IGP protocol"; + } + leaf process-tag { + type xr:Cisco-ios-xr-string; + description + "IGP Process Tag"; + } + uses TE-SH-IGP; + } + } + } + + grouping IGP-AREA-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container igp-areas { + description + "The set of IGP-areas known to MPLS-TE"; + list igp-area { + key "protocol process-tag"; + description + "An IGP instance"; + leaf protocol { + type Mpls-te-igp-protocol; + description + "The IGP protocol"; + } + leaf process-tag { + type xr:Cisco-ios-xr-string; + description + "IGP Process Tag"; + } + uses TE-SH-IGP; + } + } + } + + grouping P2MP { + description + "Common node of mpls-te, mpls-te-standby"; + container p2mp { + description + "P2MP Information"; + container tunnel-rewrites { + description + "forwarding-adjacency P2MP Tunnel RW"; + list tunnel-rewrite { + key "tunnel-id lsp-id ctype"; + description + "Display only P2MP Information"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf ctype { + type Ctype; + description + "Ctype"; + } + uses MPLS-TE-S2L-TUN-RW-BAG; + } + } + container collaborator-timers { + description + "TE Collaborator timer status"; + uses MPLS-TE-P2MP-TIMERS-B; + } + container forwarding-output-label-rewrites { + description + "forwarding-adjacency P2MP Information"; + list forwarding-output-label-rewrite { + key "tunnel-id lsp-id extended-tunnel-id source-address p2mp-id destination-address next-hop-address previous-hop-address ctype"; + description + "Display only P2MP Information"; + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "extended tunnel ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf next-hop-address { + type inet:ipv4-address-no-zone; + description + "Next Hop"; + } + leaf previous-hop-address { + type inet:ipv4-address-no-zone; + description + "Prev Hop"; + } + leaf ctype { + type Ctype; + description + "Ctype"; + } + uses MPLS-TE-S2L-FORWARDING-BAG; + } + } + } + } + + grouping LSP-OUT-OF-RESOURCES { + description + "Common node of mpls-te, mpls-te-standby"; + container lsp-out-of-resources { + description + "LSP OOR information"; + container summary { + description + "LSP OOR Summary information"; + uses TE-LSP-OOR-INFO; + } + } + } + + grouping NSR { + description + "Common node of mpls-te, mpls-te-standby"; + container nsr { + description + "MPLS TE NSR information"; + container status { + description + "MPLS TE NSR Status information"; + uses TE-NSR-ISSU-STATUS-INFO; + } + container detail { + description + "MPLS TE NSR Status information"; + uses TE-NSR-ISSU-STATUS-INFO; + } + } + } + + grouping AFFINITY-MAP { + description + "Common node of mpls-te, mpls-te-standbyCommon + node of mpls-te, mpls-te-standby"; + container affinity-map { + description + "Affinity name to value mapping"; + uses MPLS-TE-AFFINITY-MAP-BAG; + } + } + + grouping BFD { + description + "Common node of mpls-te, mpls-te-standby"; + container bfd { + description + "MPLS TE BFD Oper Info"; + container head-infos { + description + "MPLS TE Head BFD Over LSP Table"; + list head-info { + key "tunnel-name"; + description + "MPLS TE Head End BFD Over LSP Info"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel Name"; + } + uses MPLS-TE-HEAD-BFD-VIF-INFO; + } + } + container links { + description + "MPLS TE BFD Info"; + list link { + key "interface-name"; + description + "MPLS TE BFD Info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-BFD-NBRS-LINK-INFO; + } + } + container tail-infos { + description + "MPLS TE Tail BFD Over LSP Table"; + list tail-info { + description + "MPLS TE Tail End BFD Over LSP Info"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination Address"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf ctype { + type Ctype; + description + "Ctype"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + uses MPLS-TE-TAIL-BFD-LSP-INFO; + } + } + container summary { + description + "MPLS TE BFD Summary"; + uses MPLS-TE-BFD-SUMMARY; + } + container counters { + description + "MPLS TE BFD Counters"; + uses MPLS-TE-BFD-COUNTERS; + } + } + } + + grouping FSM-COUNTERS { + description + "Common node of mpls-te, mpls-te-standby"; + container fsm-counters { + description + "FSM counters"; + uses P2MP-Q-ELEM-OP-STATS; + } + } + + grouping TOPOLOGY-NODE-TABLE { + description + "Common node of mpls-te, mpls-te-standby"; + container topology-nodes { + description + "A node in the MPLS-TE topology"; + list topology-node { + key "protocol igp-id area topology-node-type igp-node-id"; + description + "A node in the MPLS-TE topology"; + leaf protocol { + type Mpls-te-igp-protocol; + description + "IGP protocol type"; + } + leaf igp-id { + type xr:Cisco-ios-xr-string; + description + "IGP instance"; + } + leaf area { + type uint32; + description + "IGP area"; + } + leaf topology-node-type { + type Mpls-te-node; + description + "Node type"; + } + leaf igp-node-id { + type string; + description + "IGP Node ID"; + } + uses MPLS-TE-TOPOLOGY-NODE; + } + } + } + + grouping SYNC-RETRY-COUNTERS { + description + "Common node of mpls-te, mpls-te-standby"; + container sync-retry-counters { + description + "Sync retry counters"; + uses SYNC-RETRY-STATS; + } + } + + grouping NEIGHBOR-TABLE { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container neighbors { + description + "The neighbor information for the local router"; + list neighbor { + key "interface-name"; + description + "The neighbors connected to a particular + interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses MPLS-LM-IGP-NBRS-LINK-INFO; + } + } + } + + grouping GMPLS { + description + "Common node of mpls-lcac, mpls-lcac-standbyCommon + node of mpls-lcac, mpls-lcac-standby"; + container gmpls { + description + "GMPLS data"; + container nni { + description + "GMPLS NNI data"; + container otn { + description + "GMPLS OTN-NNI data"; + container advertisements { + description + "GMPLS OTN-NNI advertisement information"; + uses MPLS-LM-ADVERTISEMENT-INFO; + } + container summary { + description + "GMPLS NNI OTN summary information"; + uses MPLS-TE-NNI-OTN-SUMMARY-INFO; + } + container controllers { + description + "GMPLS OTN-NNI controllers"; + list controller { + key "controller-name"; + description + "A GMPLS OTN-NNI link"; + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + uses MPLS-TE-NNI-OTN-LINK-INFO; + } + } + container admission-controls { + description + "GMPLS OTN-NNI admission control table"; + list admission-control { + key "controller-name"; + description + "GMPLS OTN-NNI admitted tunnels for a given + controller"; + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + uses MPLS-TE-NNI-OTN-ADMISSION-CONTROL-LINK-INFO; + } + } + } + } + container uni { + description + "GMPLS UNI data"; + container wdm { + description + "GMPLS WDM-UNI data"; + container controllers { + description + "GMPLS WDM-UNI controllers"; + list controller { + key "controller-name"; + description + "A TE GMPLS-UNI WDM controller"; + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + uses MPLS-TE-MGMT-WDM-UNI-CONTROLLER; + } + } + } + } + } + } + + grouping ISSU { + description + "Common node of mpls-te, mpls-te-standby"; + container issu { + description + "MPLS TE ISSU information"; + container status { + description + "MPLS TE ISSU Status information"; + uses TE-NSR-ISSU-STATUS-INFO; + } + container detail { + description + "MPLS TE ISSU Status information"; + uses TE-NSR-ISSU-STATUS-INFO; + } + } + } + + grouping SOFT-PREEMPTION-GLOBAL-INFO { + description + "Common node of mpls-lcac, mpls-lcac-standby"; + container soft-preemption-global-info { + description + "The global soft-preemption information"; + uses MPLS-TE-SOFT-PREEMPTION-GLOBAL-INFO; + } + } + + container mpls-te { + config false; + description + "MPLS Traffic Engineering operational data"; + container segment-routing { + description + "Deprecated"; + container srigp-area-infos { + description + "Segment-Routing information about IGP areas"; + list srigp-area-info { + key "protocol igp-instance area"; + description + "A Segment-Routing IGP area information"; + leaf protocol { + type Mpls-te-igp-protocol; + description + "IGP protocol type"; + } + leaf igp-instance { + type xr:Cisco-ios-xr-string; + description + "IGP instance"; + } + leaf area { + type uint32; + description + "IGP area"; + } + uses TE-SR-IGP-AREA; + } + } + container sr-node-infos { + description + "Segment-Routing nodes database in MPLS-TE"; + list sr-node-info { + key "protocol igp-instance area igp-node-id"; + description + "A Segment-Routing node information"; + leaf protocol { + type Mpls-te-igp-protocol; + description + "IGP protocol type"; + } + leaf igp-instance { + type xr:Cisco-ios-xr-string; + description + "IGP instance"; + } + leaf area { + type uint32; + description + "IGP area"; + } + leaf igp-node-id { + type string; + description + "Node's IGP ID"; + } + uses TE-SR-NODE; + } + } + container sr-prefix-infos { + description + "Segment-Routing prefixes database in MPLS-TE"; + list sr-prefix-info { + key "protocol igp-instance area prefix prefix-length"; + description + "A Segment-Routing prefix information"; + leaf protocol { + type Mpls-te-igp-protocol; + description + "IGP protocol type"; + } + leaf igp-instance { + type xr:Cisco-ios-xr-string; + description + "IGP instance"; + } + leaf area { + type uint32; + description + "IGP area"; + } + leaf prefix { + type inet:ipv4-address-no-zone; + description + "Segment-Routing prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix' length"; + } + uses TE-SR-PREFIX; + } + } + } + container fib-next-hop-routes { + description + "MPLS TE FIB nexthop route database"; + list fib-next-hop-route { + key "prefix-address"; + description + "MPLS TE FIB nexthop route"; + leaf prefix-address { + type inet:ipv4-address-no-zone; + description + "Prefix Address"; + } + uses TE-FIB-NH-ROUTE-BAG; + } + } + container next-hop-routes { + description + "MPLS TE nexthop route database"; + list next-hop-route { + description + "MPLS TE nexthop route"; + leaf prefix-address { + type inet:ipv4-address-no-zone; + description + "Prefix Address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + description + "Prefix Length"; + } + leaf next-hop-type { + type Mpls-te-next-hop; + description + "Next-hop Route Type"; + } + uses TE-NEXTHOP-ROUTE; + } + } + container te-mib { + description + "TE MIB information"; + container scalars { + description + "MIB Scalar information"; + uses MPLS-TE-MIB-SCALAR-INFO; + } + } + container self-ping-statistics { + description + "Self-ping Statistics"; + uses MPLS-TE-SELFPING-STATISTICS; + } + uses HARDWARE-OUT-OF-RESOURCES; + uses P2P-P2MP-TUNNEL; + uses TOPOLOGY-NODE-TABLE; + uses ANNOUNCE-TUNNELS-INFO; + uses COLLABORATOR-TIMERS; + uses AUTO-TUNNEL; + uses SOFT-PREEMPTION; + uses FORWARDING-ADJACENCY-DESTINATION-TABLE; + uses IGP-AREA-TABLE; + uses WRAP-PROTECTION; + uses TOPOLOGY; + uses SIGNALLING-COUNTERS; + uses DIFF-SERV-TE-CLASSES; + uses ISSU; + uses AUTOROUTE-DESTINATION-TUNNEL-TABLE; + uses FSM-COUNTERS; + uses FAST-REROUTE; + uses ATTRIBUTE-SET-TABLE; + uses IGP-AREA-BRIEF-TABLE; + uses BANDWIDTH-ACCOUNTING-COUNTERS; + uses TUNNELS; + uses MAXIMUM-TUNNELS; + uses SYNC-RETRY-COUNTERS; + uses PATH-PROTECTION; + uses FIB-NEXT-HOP-LABEL-ROUTE-TABLE; + uses P2MP; + uses LSP-OUT-OF-RESOURCES; + uses BFD; + uses NSR; + uses AUTO-TUNNEL-SERVICES; + uses AFFINITY-MAP; + uses TOPOLOGY-BRIEF-TABLE; + } + container mpls-lcac-standby { + config false; + description + "MPLS-LCAC operational data on the standby"; + uses NEIGHBOR-TABLE; + uses PREEMPTION-EVENT-TABLE; + uses ADVERTISEMENTS; + uses STATISTICS; + uses BANDWIDTH-ALLOCATION; + uses GMPLS; + uses BFD-NEIGHBOR-TABLE; + uses BANDWIDTH-ACCOUNT; + uses LINK-SUMMARY; + uses LINK-INFORMATION; + uses ADMISSION-CONTROL; + uses SOFT-PREEMPTION-GLOBAL-INFO; + uses SOFT-PREEMPTION-TABLE; + } + container mpls-lcac { + config false; + description + "MPLS-LCAC operational data"; + uses NEIGHBOR-TABLE; + uses PREEMPTION-EVENT-TABLE; + uses ADVERTISEMENTS; + uses STATISTICS; + uses BANDWIDTH-ALLOCATION; + uses GMPLS; + uses BFD-NEIGHBOR-TABLE; + uses BANDWIDTH-ACCOUNT; + uses LINK-SUMMARY; + uses LINK-INFORMATION; + uses ADMISSION-CONTROL; + uses SOFT-PREEMPTION-GLOBAL-INFO; + uses SOFT-PREEMPTION-TABLE; + } + container mpls-pce { + config false; + description + "MPLS PCE operational data"; + uses LSP-TABLE; + uses TE-PCE-OPER-STATISTICS; + uses PEER-TABLE; + uses TE-PCE-OPER-TOPOLOGY; + uses TUNNEL-TABLE; + } + container mpls-pce-stdby { + config false; + description + "MPLS PCE operational data on standby node"; + uses LSP-TABLE; + uses TE-PCE-OPER-STATISTICS; + uses PEER-TABLE; + uses TE-PCE-OPER-TOPOLOGY; + uses TUNNEL-TABLE; + } + container mpls-tp { + config false; + description + "MPLS transport profile operational data"; + container tp-links { + description + "Transport profile links"; + container tp-detail-links { + description + "Detailed table of transport profile links"; + list tp-detail-link { + key "tp-link-id"; + description + "Detailed information of transport profile link"; + leaf tp-link-id { + type uint32; + description + "Numeric transport profile link identifier"; + } + uses MPLS-TE-TP-DETAIL-LINK-INFO; + } + } + container tp-link-summary { + description + "Summary of transport profile links"; + uses MPLS-TE-TP-LINK-SUMMARY-INFO; + } + container tp-links { + description + "Table of transport profile links"; + list tp-link { + key "tp-link-id"; + description + "Brief information of transport profile link"; + leaf tp-link-id { + type uint32; + description + "Numeric transport profile link identifier"; + } + uses MPLS-TE-TP-LINK-INFO; + } + } + } + container tp-tunnels { + description + "Transport profile tunnels"; + container tp-tunnel-summary { + description + "Summary of transport profile tunnels"; + uses MPLS-TE-TP-TUNNEL-SUMMARY; + } + container tp-detail-tunnels { + description + "Detailed table of transport profile tunnels"; + list tp-detail-tunnel { + key "tp-tunnel-name"; + description + "Detailed information of transport profile + tunnel"; + leaf tp-tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel name"; + } + uses MPLS-TE-TP-DETAIL-TUNNEL-INFO; + } + } + container tp-tunnels { + description + "Table of transport profile tunnels"; + list tp-tunnel { + key "tp-tunnel-name"; + description + "Brief information of transport profile tunnel"; + leaf tp-tunnel-name { + type xr:Cisco-ios-xr-string; + description + "Tunnel name"; + } + uses MPLS-TE-TP-TUNNEL-INFO; + } + } + } + container tp-midpoints { + description + "Transport profile mid-point"; + container tp-detail-midpoints { + description + "Detailed table of transport profile mid-points"; + list tp-detail-midpoint { + key "tp-midpoint-name"; + description + "Detailed information of transport profile + mid-point"; + leaf tp-midpoint-name { + type xr:Cisco-ios-xr-string; + description + "Mid-point name"; + } + uses MPLS-TP-DETAIL-MID-INFO; + } + } + container tp-midpoint-summary { + description + "Summary of transport profile mid-points"; + uses MPLS-TP-MID-SUMMARY-INFO; + } + container tp-midpoints { + description + "Table of transport profile mid-points"; + list tp-midpoint { + key "tp-midpoint-name"; + description + "Brief information of transport profile + mid-point"; + leaf tp-midpoint-name { + type xr:Cisco-ios-xr-string; + description + "Mid-point name"; + } + uses MPLS-TP-MID-INFO; + } + } + } + container tp-global-parameters { + description + "Transport profile global parameters"; + uses MPLS-TE-TP-GLOBAL-INFO; + } + } + container mpls-te-standby { + config false; + description + "Standby MPLS TE operational data"; + uses HARDWARE-OUT-OF-RESOURCES; + uses P2P-P2MP-TUNNEL; + uses TOPOLOGY-NODE-TABLE; + uses ANNOUNCE-TUNNELS-INFO; + uses COLLABORATOR-TIMERS; + uses AUTO-TUNNEL; + uses SOFT-PREEMPTION; + uses FORWARDING-ADJACENCY-DESTINATION-TABLE; + uses IGP-AREA-TABLE; + uses WRAP-PROTECTION; + uses TOPOLOGY; + uses SIGNALLING-COUNTERS; + uses DIFF-SERV-TE-CLASSES; + uses ISSU; + uses AUTOROUTE-DESTINATION-TUNNEL-TABLE; + uses FSM-COUNTERS; + uses FAST-REROUTE; + uses ATTRIBUTE-SET-TABLE; + uses IGP-AREA-BRIEF-TABLE; + uses BANDWIDTH-ACCOUNTING-COUNTERS; + uses TUNNELS; + uses MAXIMUM-TUNNELS; + uses SYNC-RETRY-COUNTERS; + uses PATH-PROTECTION; + uses FIB-NEXT-HOP-LABEL-ROUTE-TABLE; + uses P2MP; + uses LSP-OUT-OF-RESOURCES; + uses BFD; + uses NSR; + uses AUTO-TUNNEL-SERVICES; + uses AFFINITY-MAP; + uses TOPOLOGY-BRIEF-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-traceroute-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-traceroute-act.yang new file mode 100644 index 000000000..bb93c85e8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-traceroute-act.yang @@ -0,0 +1,850 @@ +module Cisco-IOS-XR-mpls-traceroute-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-traceroute-act"; + prefix mpls-traceroute-act; + + import ietf-inet-types { + prefix inet; + } + 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 mpls traceroute action package configuration + + Copyright (c) 2020-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-12 { + description + "Added ddmap return code leaf"; + semver:module-version "2.0.0"; + } + revision 2021-04-27 { + description + "Added missing descriptions"; + semver:module-version "1.0.0"; + } + revision 2021-04-05 { + description + "Added range values for lsp-id and pseudowire leaf values"; + } + revision 2021-03-25 { + description + "Added IP netmask leaf for MPLS and SR traceroute"; + } + revision 2021-02-03 { + description + "Range added for EXP leaf"; + } + revision 2020-06-05 { + description + "Initial revision."; + } + + typedef mpls-fec-type { + type enumeration { + enum "bgp" { + description + "MPLS BGP FEC"; + } + enum "generic" { + description + "MPLS Generic FEC"; + } + enum "ldp" { + description + "MPLS LDP FEC"; + } + } + description + "MPLS Forwarding Equivalence Class type"; + } + + typedef sr-fec-type { + type enumeration { + enum "bgp" { + description + "SR IGP BGP FEC"; + } + enum "ospf" { + description + "SR IGP OSPF FEC"; + } + enum "isis" { + description + "SR IGP ISIS FEC"; + } + } + description + "SR Forwarding Equivalence Class type"; + } + + typedef request-reply-mode { + type enumeration { + enum "ipv4" { + description + "Reply Mode IPv4"; + } + enum "router-alert" { + description + "Reply Mode Router Alert"; + } + } + description + "Reply mode"; + } + + rpc mpls-traceroute { + description + "Send echo messages"; + input { + choice traceroute-type { + mandatory true; + description + "Specify traceroute type"; + case type-mpls { + container mpls { + description + "MPLS traceroute"; + choice mpls-subtype { + mandatory true; + description + "Traceroute MPLS subtype"; + case subtype-ipv4 { + container ipv4 { + description + "Traceroute mpls IPv4 address"; + leaf ip { + type inet:ipv4-address; + mandatory true; + description + "Destination x.x.x.x of traceroute"; + } + choice subnet { + mandatory true; + description + "The subnet can be specified as a prefix-length or as + a netmask."; + case prefix-length { + leaf prefix-length { + type uint8 { + range "0..32"; + } + default "32"; + description + "The length of the subnet prefix."; + } + } + case netmask { + leaf netmask { + type inet:ipv4-address; + description + "The subnet specified as a netmask"; + } + } + } + leaf fec-type { + type mpls-fec-type; + description + "TLV FEC type to use in request"; + } + leaf multipath { + type boolean; + default "false"; + description + "Enable LSP multipath traceroute (treetrace)"; + } + } + } + case subtype-traffic-eng { + container traffic-eng { + description + "Trace mpls tunnel"; + choice tunnel-identifier { + mandatory true; + description + "Tunnel Identifier (LSP name or tunnel-interface)"; + case subtype-tunnel-name { + leaf tunnel-name { + type string; + description + "Next hop tunnel lsp name"; + } + } + case subtype-tunnel-interface { + leaf tunnel-interface { + type string; + description + "Next hop Interface with form tunnel-te"; + } + } + } + choice te-lsp-option { + description + "Specify which LSP to use"; + case te-lsp-option-active { + leaf active-lsp { + type boolean; + description + "Enforce active LSP selection for tunnel"; + } + } + case te-lsp-option-id { + leaf lsp-id { + type uint32 { + range "1..10000"; + } + default "1"; + description + "Tunnel Label Switched Path Identifier"; + } + } + case te-lsp-option-path-protected { + leaf path-protected { + type boolean; + description + "Test path protected LSP for tunnel"; + } + } + case te-lsp-option-reoptimized { + leaf reoptimized { + type boolean; + description + "Test reoptimized LSP for tunnel"; + } + } + } + } + } + } + } + } + case type-sr { + container sr-mpls { + description + "Trace sr-mpls"; + choice sr-target { + description + "Trace sr-mpls target type"; + case target_ipv4_prefix { + container ipv4 { + description + "Trace sr-mpls IPv4 Prefix SID"; + leaf ip { + type inet:ipv4-address; + mandatory true; + description + "SR LSP Egress IP x.x.x.x"; + } + choice subnet { + mandatory true; + description + "The subnet can be specified as a prefix-length or as + a netmask."; + case prefix-length { + leaf prefix-length { + type uint8 { + range "0..32"; + } + default "32"; + description + "The length of the subnet prefix."; + } + } + case netmask { + leaf netmask { + type inet:ipv4-address; + description + "The subnet specified as a netmask"; + } + } + } + leaf fec-type { + type sr-fec-type; + description + "SR OAM IGP FEC TLV type to use in request"; + } + leaf multipath { + type boolean; + default "false"; + description + "Enable LSP multipath traceroute (treetrace)"; + } + } + } + case target_labels { + container labels { + description + "Trace sr-mpls label stack (up to 12 labels)"; + list label { + key "index"; + description + "Specify label index and value"; + leaf index { + type uint32 { + range "0..9"; + } + mandatory true; + description + "Label index"; + } + leaf label { + type uint32 { + range "16..1048575"; + } + mandatory true; + description + "Label value"; + } + } + leaf nil-fec { + type boolean; + description + "Use Nil-FEC TLV and Append Explicit Null"; + } + leaf lsp-endpoint { + type inet:ipv4-address; + description + "Specify the IP of the LSP endpoint"; + } + leaf multipath { + type boolean; + default "false"; + description + "Enable LSP multipath traceroute (treetrace)"; + } + } + } + case target_policy { + container policy { + description + "Trace sr-mpls policy"; + choice sr-policy-id { + mandatory true; + description + "SR Policy Identifier (binding sid or policy name)"; + case sr-policy-id-bsid { + leaf bsid { + type uint32 { + range "16..1048575"; + } + default "16"; + description + "SR Policy Binding SID"; + } + } + case sr-policy-id-name { + leaf name { + type string; + description + "SR Policy Name"; + } + } + } + leaf fec-type { + type sr-fec-type; + description + "SR OAM IGP FEC TLV type to use in request"; + } + leaf nil-fec { + type boolean; + description + "Use Nil-FEC TLV and Append Explicit Null"; + } + leaf lsp-endpoint { + type inet:ipv4-address; + description + "Specify the IP of the LSP endpoint"; + } + leaf multipath { + type boolean; + default "false"; + description + "Enable LSP multipath traceroute (treetrace)"; + } + } + } + } + } + } + } + container request-options-parameters { + description + "MPLS echo request options"; + leaf exp { + type uint8 { + range "0..7"; + } + description + "EXP Bits To Set"; + } + leaf fec { + type boolean; + description + "Force FEC TLV Checks"; + } + leaf ddmap { + type boolean; + description + "Use DDMAP (Default is DSMAP)"; + } + leaf force-explicit-null { + type boolean; + description + "Force explicit null to be added"; + } + container packet-output { + description + "Packet output options"; + leaf interface-name { + type string; + description + "Outgoing interface for echo packet"; + } + leaf next-hop { + type inet:ipv4-address; + description + "Outgoing next hop IP for echo packet"; + } + } + container reply { + description + "Echo Reply options"; + leaf dscp { + type uint8 { + range "0..63"; + } + description + "Set DSCP reply value 0-63 (decimal)"; + } + leaf reply-mode { + type request-reply-mode; + description + "Echo Reply Mode"; + } + } + leaf source { + type inet:ipv4-address; + description + "Source IP address to use in the IP header (used as the return address for the reply)"; + } + leaf destination { + type inet:ipv4-address; + description + "Destination IP address (127.x.y.z)"; + } + leaf brief { + type boolean; + description + "Brief mode. Does not include statistical data in result"; + } + leaf timeout { + type uint32 { + range "0..3600"; + } + description + "Time in seconds before the lack of a reply invalidates a request"; + } + leaf ttl { + type uint32 { + range "1..255"; + } + description + "Time to live (hops to until forced punt)"; + } + leaf retry-count { + type uint8 { + range "0..10"; + } + description + "Maximum treetrace retry count"; + } + container hashkey { + description + "Downstream map multipath settings"; + container ipv4 { + description + "IPv4 bitmap options"; + leaf bitmap { + type uint16 { + range "1..256"; + } + description + "Multipath bitmap size"; + } + } + } + leaf interval { + type uint32 { + range "0..3600000"; + } + description + "Send interval between treetrace requests"; + } + } + } + output { + container mpls-traceroute-response { + description + "MPLS traceroute Response"; + container request-options-parameters { + description + "Echo Request Options"; + leaf exp { + type uint8 { + range "0..7"; + } + description + "EXP Bits To Set"; + } + leaf fec { + type boolean; + description + "Force FEC TLV Checks"; + } + leaf ddmap { + type boolean; + description + "Use DDMAP (Default is DSMAP)"; + } + leaf force-explicit-null { + type boolean; + description + "Force an explicit null label to be added"; + } + container packet-output { + description + "Packet output options"; + leaf interface-name { + type string; + description + "Outgoing interface for echo packet"; + } + leaf next-hop { + type inet:ipv4-address; + description + "Outgoing next hop IP for echo packet"; + } + } + container reply { + description + "Reply options"; + leaf dscp { + type uint8 { + range "0..63"; + } + description + "Set DSCP reply value 0-63 (decimal)"; + } + leaf reply-mode { + type request-reply-mode; + description + "Echo Reply Mode"; + } + } + leaf source { + type inet:ipv4-address; + description + "Source IP address to use in the IP header (used as the return address for the reply)"; + } + leaf destination { + type inet:ipv4-address; + description + "Destination IP address (127.x.y.z)"; + } + leaf brief { + type boolean; + description + "Brief mode. Does not include statistical data in result"; + } + leaf timeout { + type uint32 { + range "0..3600"; + } + description + "Time in seconds before the lack of a reply invalidates a request"; + } + leaf ttl { + type uint32 { + range "1..255"; + } + description + "Time to live (hops to until forced punt)"; + } + leaf retry-count { + type uint8 { + range "0..10"; + } + description + "Maximum treetrace retry count"; + } + container hashkey { + description + "Downstream map multipath settings"; + container ipv4 { + description + "IPv4 bitmap options"; + leaf bitmap { + type uint16 { + range "1..256"; + } + description + "Multipath bitmap size"; + } + } + } + leaf interval { + type uint32 { + range "0..3600000"; + } + description + "Send interval between treetrace requests"; + } + } + container paths { + description + "Traceroute paths"; + list path { + key "path-index"; + description + "Traceroute path"; + leaf path-index { + type uint64 { + range "1..2147483647"; + } + description + "Index of the path list"; + } + leaf path-status { + type string; + description + "Treetrace path status (Found, Broken, Unexplored)"; + } + leaf source { + type string; + description + "Source IP address used in the IP header"; + } + leaf destination { + type string; + description + "Destination IP address (127.x.y.z)"; + } + leaf output-interface { + type string; + description + "Outgoing interface for echo packet"; + } + leaf nexthop { + type string; + description + "Outgoing next hop IP for echo packet"; + } + container hops { + description + "Traceroute Hops"; + list hop { + key "hop-index"; + description + "Traceroute Hop"; + leaf hop-index { + type uint64 { + range "1..2147483647"; + } + description + "Index of the hop list"; + } + leaf hop-origin-ip { + type string; + description + "Hop origin interface ip"; + } + leaf hop-destination-ip { + type string; + description + "Hop destination interface ip"; + } + leaf mtu { + type string; + description + "Maximum Transmission Unit"; + } + container dsmap-label-stack { + description + "Label Stack from the DSMAP received + in the Echo Response Payload."; + list dsmap-label { + key "label"; + description + "DSMAP labels"; + leaf label { + type uint32 { + range "16..1048575"; + } + description + "DSMAP label"; + } + } + } + leaf paths-count { + type int32; + description + "Number of outgoing paths. For multipath requests only."; + } + leaf return-code { + type uint8; + description + "Return Code of the echo request"; + } + leaf return-char { + type string; + description + "Return Char of the echo request"; + } + leaf duration { + type uint32; + description + "Trip duration (msec)"; + } + container ddmaps { + description + "Downstream Detailed Mapping received"; + list ddmap { + key "ddmap-index"; + description + "DDMAP"; + leaf ddmap-index { + type uint64 { + range "1..2147483647"; + } + description + "Index of the hop list"; + } + leaf ddmap-mtu { + type int16; + description + "MTU from the DDMAP received in + the Echo Response Payload"; + } + leaf ddmap-downstream-address { + type inet:ipv4-address; + description + "Downstream Address from the DDMAP + received in the Echo Response Payload"; + } + leaf ddmap-downstream-intf-index { + type int32 { + range "1..2147483647"; + } + description + "Downstream Interface Address from the DDMAP + received in the Echo Response Payload."; + } + leaf ddmap-return-char { + type string; + description + "Return Char from the DDMAP received + in the Echo Response Payload."; + } + leaf ddmap-return-code { + type uint8; + description + "Return Code from the DDMAP received + in the Echo Response Payload."; + } + leaf ddmap-return-subcode { + type int16; + description + "Return Sub Code from the DDMAP + received in the Echo Response Payload."; + } + container ddmap-label-stack { + description + "Label Stack from the DDMAP received + in the Echo Response Payload."; + list ddmap-label { + key "label"; + description + "ddmap labels"; + leaf label { + type uint32 { + range "16..1048575"; + } + description + "ddmap label"; + } + } + } + leaf paths-count { + type int32; + description + "Number of outgoing paths. For multipath request only"; + } + } + } + } + } + } + } + container statistics { + description + "Treetrace Statistics"; + leaf paths-found { + type uint32; + description + "Number of paths found"; + } + leaf paths-broken { + type uint32; + description + "Number of paths broken"; + } + leaf paths-unexplored { + type uint32; + description + "Number of paths unexplored"; + } + leaf requests-sent { + type uint32; + description + "Number of echo requests sent"; + } + leaf requests-failed { + type uint32; + description + "Number of echo requests failed"; + } + leaf requests-received { + type uint32; + description + "Number of echo requests received"; + } + leaf requests-timeout { + type uint32; + description + "Number of echo requests timed out"; + } + leaf total-time-elapsed { + type uint64; + description + "The total time taken for the request in ms"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-cfg.yang new file mode 100644 index 000000000..d99dbeaef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-cfg.yang @@ -0,0 +1,115 @@ +module Cisco-IOS-XR-mpls-vpn-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-vpn-cfg"; + prefix mpls-vpn-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 mpls-vpn package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang which will provide the + compatible functionalities. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-03 { + description + "Deprecated the mib cache config"; + semver:module-version "1.0.1"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container mpls-l3vpn { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang which will + provide the compatible functionalities. + MPLS-L3VPN-STD-MIB notification configuration"; + leaf max-threshold-reissue-notification-time { + type uint32; + units "second"; + description + "Time interval (secs) for re-issuing + max-threshold notification"; + } + leaf max-threshold-exceeded { + type empty; + description + "Enable mplsL3VpnVrfNumVrfRouteMaxThreshExceeded + notification"; + } + leaf max-threshold-cleared { + type empty; + description + "Enable mplsL3VpnNumVrfRouteMaxThreshCleared + notification"; + } + leaf mid-threshold-exceeded { + type empty; + description + "Enable mplsL3VpnVrfRouteMidThreshExceeded + notification"; + } + leaf enable { + type empty; + description + "Enable mplsL3VpnMIB notifications"; + } + leaf vrf-down { + type empty; + description + "Enable mplsL3VpnVrfDown notification"; + } + leaf vrf-up { + type empty; + description + "Enable mplsL3VpnVrfUp notification"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper-sub1.yang new file mode 100644 index 000000000..6d84ea913 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper-sub1.yang @@ -0,0 +1,199 @@ +submodule Cisco-IOS-XR-mpls-vpn-oper-sub1 { + belongs-to Cisco-IOS-XR-mpls-vpn-oper { + prefix Cisco-IOS-XR-mpls-vpn-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mpls-vpn package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mpls-vpn-rt { + type enumeration { + enum "import" { + value 1; + description + "VRF Route Target Type Import"; + } + enum "export" { + value 2; + description + "VRF Route Target Type Export"; + } + enum "both" { + value 3; + description + "VRF Route Target Type Import and Export"; + } + } + description + "Layer 3 VPN Route Target Type"; + } + + typedef Mpls-vpn-safi { + type enumeration { + enum "unicast" { + value 1; + description + "VRF Unicast sub-address family"; + } + enum "multicast" { + value 2; + description + "VRF Multicast sub-address family"; + } + enum "flowspec" { + value 133; + description + "VRF Flowspec sub-address family"; + } + } + description + "Layer 3 VPN Sub-Address Family Type"; + } + + typedef Mpls-vpn-afi { + type enumeration { + enum "ipv4" { + value 1; + description + "VRF IPv4 address family"; + } + enum "ipv6" { + value 2; + description + "VRF IPv6 address family"; + } + } + description + "Layer 3 VPN Address Family Type"; + } + + grouping MPLS-VPN-RT { + description + "Layer 3 VPN Route Target"; + leaf route-target-type { + type Mpls-vpn-rt; + description + "Route Target Type"; + } + leaf route-target-value { + type string; + description + "Route Target Value"; + } + leaf af-name { + type Mpls-vpn-afi; + description + "AF name"; + } + leaf saf-name { + type Mpls-vpn-safi; + description + "SAF name"; + } + } + + grouping MPLS-VPN-AFI-SAFI { + description + "Layer 3 VPN AFI/SAFI Info"; + leaf af-name { + type Mpls-vpn-afi; + description + "AF name"; + } + leaf saf-name { + type Mpls-vpn-safi; + description + "SAF name"; + } + leaf import-route-policy { + type string; + description + "Import Route Policy"; + } + leaf export-route-policy { + type string; + description + "Export Route Policy"; + } + list route-target { + description + "Route Targets"; + uses MPLS-VPN-RT; + } + } + + grouping MPLS-VPN-INTERFACES { + description + "Layer 3 VPN Interface Names"; + leaf interface-name { + type string; + description + "Interface Name"; + } + } + + grouping MPLS-VPN-VRF { + description + "Layer 3 VPN VRF"; + leaf vrf-name-xr { + type string; + description + "VRF Name"; + } + leaf vrf-description { + type string; + description + "VRF Description"; + } + leaf route-distinguisher { + type string; + description + "Route Distinguisher"; + } + leaf is-big-vrf { + type boolean; + description + "VRF mode information"; + } + list interface { + description + "Interfaces in VRF"; + uses MPLS-VPN-INTERFACES; + } + list af { + description + "AF/SAF information"; + uses MPLS-VPN-AFI-SAFI; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper.yang new file mode 100644 index 000000000..f3ba6fd6e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mpls-vpn-oper.yang @@ -0,0 +1,85 @@ +module Cisco-IOS-XR-mpls-vpn-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mpls-vpn-oper"; + prefix mpls-vpn-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mpls-vpn-oper-sub1 { + revision-date 2019-04-05; + } + + 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 mpls-vpn package operational data. + + This module contains definitions + for the following management objects: + l3vpn: L3VPN operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container l3vpn { + config false; + description + "L3VPN operational data"; + container invalid-vrfs { + description + "Invalid VRF Table (VRFs that are forward + referenced)"; + list invalid-vrf { + key "vrf-name"; + description + "Invalid VRF (VRF that is forward referenced)"; + leaf vrf-name { + type string { + length "1..33"; + } + description + "Name of the referenced VRF which is invalid"; + } + uses MPLS-VPN-VRF; + } + } + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF"; + leaf vrf-name { + type string { + length "1..33"; + } + description + "Name of the referenced VRF"; + } + uses MPLS-VPN-VRF; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper-sub1.yang new file mode 100644 index 000000000..f788aa36e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper-sub1.yang @@ -0,0 +1,3749 @@ +submodule Cisco-IOS-XR-mrib-oper-sub1 { + belongs-to Cisco-IOS-XR-mrib-oper { + prefix Cisco-IOS-XR-mrib-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mrib package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "CSCwc65497 MRIB Consistency checker additional oper changes + 2022-08-23 + Adding mrib route rate to display route statistics in mrib + 2022-08-15 + CSCwc65497 MRIB Consistency checker oper changes + 2022-04-20 + Getting rid of default context path + 2022-02-09 + Increase in interface name length"; + semver:module-version "3.0.0"; + } + revision 2021-08-27 { + description + "non-backward compatible edit in leaf parent-if-handle. type changed from uint32 to type xr:Hex-integer"; + semver:module-version "2.0.0"; + } + revision 2020-10-29 { + description + "Adding RPFID for PIM-SM design + 2020-10-11 + Backward compatible addition in leaf table-mdt-name-tree-sid,table-tree-sid-turnaround and reference-count."; + semver:module-version "1.1.0"; + } + revision 2020-02-13 { + description + "Fixing CSCvr71562."; + semver:module-version "1.0.0"; + } + revision 2019-08-27 { + description + "Providing MRIB information."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mrib-frr-state { + type enumeration { + enum "ready" { + value 0; + description + "FRR State Ready"; + } + enum "active" { + value 1; + description + "FRR State Active"; + } + } + description + " FRR State"; + } + + typedef Mrib-frr-role { + type enumeration { + enum "head" { + value 1; + description + "FRR Role Head"; + } + enum "mid" { + value 2; + description + "FRR Role Mid"; + } + } + description + " FRR Role"; + } + + typedef Fapid { + type uint32; + description + "Fapid"; + } + + typedef Mrib-ccb-io { + type enumeration { + enum "no-data" { + value 0; + description + "No Data"; + } + enum "io-notify" { + value 1; + description + "I/O Notify"; + } + enum "data-available" { + value 2; + description + "Data Available"; + } + enum "invalid" { + value 3; + description + "Invalid"; + } + } + description + "Mrib ccb io"; + } + + typedef Mrib-evpn-bucket-state { + type enumeration { + enum "unknown" { + value -1; + description + "NO State"; + } + enum "non-forward" { + value 0; + description + "Non Forward"; + } + enum "forward" { + value 1; + description + "Forward"; + } + } + description + "Bucket State"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Mrib-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + typedef Rsi-tbl-id { + type uint32; + description + "Rsi tbl id"; + } + + typedef Mrib-clt { + type enumeration { + enum "bcdl" { + value 0; + description + "BCDL"; + } + enum "routing" { + value 1; + description + "Routing"; + } + enum "membership" { + value 2; + description + "Membership"; + } + enum "anonymous" { + value 3; + description + "Anonymous"; + } + enum "generic" { + value 4; + description + "Generic"; + } + enum "mrib" { + value 5; + description + "MRIB"; + } + enum "rsvp-te" { + value 6; + description + "RSVP TE"; + } + enum "ldp" { + value 7; + description + "LDP"; + } + enum "pim-label" { + value 8; + description + "PIM Label"; + } + enum "pim6-label" { + value 9; + description + "PIM6 Label"; + } + enum "lmrib-bcdl" { + value 10; + description + "LMRIB BCDL"; + } + enum "xtc" { + value 11; + description + "XTC Agent"; + } + enum "maximum" { + value 12; + description + "Maximum"; + } + } + description + "Mrib clt"; + } + + typedef Mrib-show-ctid { + type enumeration { + enum "any" { + value 0; + description + "Any"; + } + enum "spe-ipv4" { + value 1; + description + "IPv4 LSM Source PE"; + } + enum "ifh-ipv4" { + value 2; + description + "IPv4 LSM Interface Handle"; + } + enum "spe-ipv6" { + value 3; + description + "IPv6 LSM Source PE"; + } + enum "ifh-ipv6" { + value 4; + description + "IPv6 LSM Interface Handle"; + } + enum "lsm-id" { + value 5; + description + "LSM ID"; + } + enum "ipv4" { + value 6; + description + "IPv4"; + } + enum "ipv6" { + value 7; + description + "IPv6"; + } + enum "mldp-ifh-ipv4" { + value 8; + description + "IPv4 MLDP Interface Handle"; + } + enum "mldp-ifh-ipv6" { + value 9; + description + "IPv6 MLDP Interface Handle"; + } + enum "none" { + value 10; + description + "None"; + } + } + description + "Mrib show ctid"; + } + + grouping MRIB-AMT-INTRF-BAG { + description + "MRIB route AMT interface"; + container interface-attributes { + description + "Interface attributes"; + uses MRIB-ATTRIB-INTRF-BAG; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf underlying-interface { + type xr:Interface-name; + description + "Underlying interface"; + } + leaf underlying-interface-node { + type xr:Node-id; + description + "Node on which underlying interface is homed"; + } + leaf uptime { + type uint64; + description + "Time entry has been active"; + } + leaf expiry { + type uint64; + description + "Time the interface expires"; + } + leaf type { + type uint32; + description + "Type"; + } + leaf amt-port { + type uint32; + description + "AMT Port"; + } + leaf amt-nexthop { + type inet:ipv4-address; + description + "AMT Nexthop"; + } + leaf amt-mtu { + type uint16; + description + "AMT MTU"; + } + leaf amt-tos { + type uint8; + description + "AMT TOS"; + } + leaf amt-ttl { + type uint8; + description + "AMT TTL"; + } + leaf amt-gateway { + type inet:ipv4-address; + description + "AMT Gateway"; + } + leaf amt-source { + type inet:ipv4-address; + description + "AMT Source"; + } + leaf amt-id { + type uint32; + description + "AMT Identifier"; + } + leaf out-pkts { + type uint64; + description + "Total pkts out"; + } + leaf out-bytes { + type uint64; + units "byte"; + description + "Total bytes out"; + } + } + + grouping MRIB-AMT-ROUTE-BAG { + description + "MRIB multicast-routing entry"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group-range { + description + "Group range"; + uses MRIB-GROUP-RNG-BAG; + } + leaf amtif-count { + type uint32; + description + "AMT Count"; + } + list amt-interface { + description + "AMT Interfaces"; + uses MRIB-AMT-INTRF-BAG; + } + } + + grouping MRIB-DB-SUMM-BAG { + description + "MRIB DB summary"; + leaf group-ranges { + type uint32; + description + "No. of group ranges"; + } + leaf groutes { + type uint32; + description + "No. of (*,G) routes"; + } + leaf sg-routes { + type uint32; + description + "No. of (S,G) routes"; + } + leaf forwarding-interface-count { + type uint32; + description + "No. of RxI"; + } + leaf route-interface-count { + type uint32; + description + "Total interfaces in routes"; + } + } + + grouping MRIB-ATTR-STAT-BAG { + description + "MRIB attr stats"; + leaf add-rcvd-count { + type uint32; + description + "Add received count"; + } + leaf del-rcvd-count { + type uint32; + description + "Del received count"; + } + leaf add-redist-count { + type uint32; + description + "Add redist count"; + } + leaf del-redist-count { + type uint32; + description + "Del redist count"; + } + } + + grouping MRIB-TABLE-INFO-BAG { + description + "MRIB table info"; + container table-mdt-address { + description + "Table MDT group addr"; + uses MRIB-CTID-BAG; + } + container mdt-source { + description + "MDT Source address"; + uses MRIB-ADDRTYPE; + } + container mt-stat { + description + "MT stats"; + uses MRIB-ATTR-STAT-BAG; + } + container ma-stat { + description + "MA stats"; + uses MRIB-ATTR-STAT-BAG; + } + leaf table-id { + type uint32; + description + "Table id"; + } + leaf table-name { + type string; + description + "Table name"; + } + leaf registered-client { + type string; + description + "Registered client"; + } + leaf table-mdt-name-gre { + type xr:Interface-name; + description + "Table GRE MDT handle"; + } + leaf table-gre-turnaround { + type boolean; + description + "Table GRE turnaround"; + } + leaf table-mdt-name-mldp { + type xr:Interface-name; + description + "Table MLDP MDT handle"; + } + leaf table-mldp-turnaround { + type boolean; + description + "Table MLDP turnaround"; + } + leaf table-mdt-name-p2mpte { + type xr:Interface-name; + description + "Table P2MPTE MDT handle"; + } + leaf table-p2mpte-turnaround { + type boolean; + description + "Table P2MPTE turnaround"; + } + leaf table-mdt-name-ir { + type xr:Interface-name; + description + "Table IR MDT handle"; + } + leaf table-ir-turnaround { + type boolean; + description + "Table IR turnaround"; + } + leaf table-mdt-name-tree-sid { + type xr:Interface-name; + description + "Table TreeSID MDT handle"; + } + leaf table-tree-sid-turnaround { + type boolean; + description + "Table TreeSID turnaround"; + } + } + + grouping MRIB-AMT-GW-ID-EX-BAG { + description + "MRIB route AMT expired route interface"; + leaf amt-id { + type uint32; + description + "AMT Identifier"; + } + leaf join-time { + type uint64; + description + "Time at which interface joined the active route"; + } + leaf expire-time { + type uint64; + description + "Time at which interface deleted from active and + added to stale route"; + } + leaf out-pkts { + type uint64; + description + "Total pkts out"; + } + leaf out-bytes { + type uint64; + units "byte"; + description + "Total bytes out"; + } + } + + grouping MRIB-AMT-ROUTE-EX-BAG { + description + "MRIB AMT expired route entry"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group { + description + "Group range"; + uses MRIB-ADDRTYPE; + } + leaf gw-address-xr { + type inet:ipv4-address; + description + "GW address"; + } + leaf gw-port { + type uint32; + description + "GW port"; + } + leaf gwid-count { + type uint32; + description + "AMT Count"; + } + list gw-id { + description + "AMT GW Interfaces"; + uses MRIB-AMT-GW-ID-EX-BAG; + } + } + + grouping MRIB-MPLS-FRR-OB-INFOS-BAG { + description + "MRIB mpls output with backup info"; + leaf output-interface { + type xr:Interface-name; + description + "Output IFH"; + } + leaf backup-tunnel { + type uint32; + description + "Backup Tunnel"; + } + leaf output-label { + type uint32; + description + "OutLabel"; + } + leaf backup-label { + type uint32; + description + "Backup Label"; + } + leaf backup-state { + type Mrib-frr-state; + description + "Backup State"; + } + } + + grouping MRIB-MPLS-FRR-BAG { + description + "MRIB mpls frr"; + leaf in-label { + type uint32; + description + "InLabel"; + } + leaf role { + type Mrib-frr-role; + description + "Role"; + } + leaf tunnel-identifier { + type uint32; + description + "Tunnel ID"; + } + leaf p2mp-identifier { + type uint32; + description + "P2MP ID"; + } + leaf lsp-identifier { + type uint32; + description + "LSP ID"; + } + leaf source-address { + type uint32; + description + "Source Address"; + } + leaf extended-tunnel-identifier { + type uint32; + description + "Extented Tunnel ID"; + } + leaf tunnel-interface { + type xr:Interface-name; + description + "Tunnel IFH"; + } + leaf ob-info-number { + type uint32; + description + "OB Info Num"; + } + list output-information { + description + "Output Information"; + uses MRIB-MPLS-FRR-OB-INFOS-BAG; + } + } + + grouping MRIB-LABEL-TABLE-INFO-BAG { + description + "MRIB label table info"; + leaf table-id { + type uint32; + description + "Table id"; + } + leaf table-name { + type string; + description + "Table name"; + } + leaf registered-client { + type string; + description + "Registered client"; + } + } + + grouping MRIB-RC-EOLE-DB-BAG { + description + "MRIB RC route"; + leaf rc-encapsulation-identifier { + type uint32; + description + "Encap ID"; + } + } + + grouping MRIB-RC-ROUTEDB-BAG { + description + "MRIB RC route"; + container rc-source-address { + description + "Source Address"; + uses MRIB-ADDRTYPE; + } + container rc-group-address { + description + "Group Address"; + uses MRIB-ADDRTYPE; + } + leaf rc-table-id { + type uint32; + description + "Route TID"; + } + leaf rc-group-prefix-length { + type uint16; + description + "Group prefix length"; + } + } + + grouping MRIB-RC-MDT-BAG { + description + "MRIB RC MDT database"; + container rc-mdt-address { + description + "MDT group addr"; + uses MRIB-CTID-BAG; + } + leaf rc-mdt-table-id { + type uint32; + description + "MDT table id"; + } + leaf rc-mdt-remote-table-id { + type uint32; + description + "MDT remote table id"; + } + leaf rc-tlc-table-id { + type uint32; + description + "TLC table id"; + } + leaf rc-remote-tlc-table-id { + type uint32; + description + "Remote TLC table id"; + } + list customer { + description + "List of customer route"; + uses MRIB-RC-ROUTEDB-BAG; + } + list encap-ole { + description + "List of encap oles"; + uses MRIB-RC-EOLE-DB-BAG; + } + list core { + description + "List of core route"; + uses MRIB-RC-ROUTEDB-BAG; + } + list core-egress { + description + "List of core egress node"; + uses MRIB-MDT-NODE-BAG; + } + } + + grouping MRIB-CC-SG-BAG { + description + "MRIB Consistency Checking SG bag"; + container route-group-address { + description + "Group Address"; + uses MRIB-ADDRTYPE; + } + container route-source-address { + description + "Source Address"; + uses MRIB-ADDRTYPE; + } + leaf table-id { + type Rsi-tbl-id; + description + "Table ID"; + } + leaf data { + type string; + description + "Info on what is wrong"; + } + } + + grouping MRIB-CC-RT-SUM-BAG { + description + "MRIB Consistency Checking summary bag"; + leaf node-id { + type xr:Node-id; + description + "NodeID"; + } + leaf pfx-scanned { + type uint32; + description + "Prefix Scanned"; + } + leaf pfx-consistent { + type uint32; + description + "Prefix Consistent"; + } + list sg { + description + "List of SG having issue"; + uses MRIB-CC-SG-BAG; + } + } + + grouping MRIB-CC-RT-BAG { + description + "MRIB Consistency Checking route bag"; + list rt-summary { + description + "Summary entry"; + uses MRIB-CC-RT-SUM-BAG; + } + } + + grouping MRIB-AMT-ROUTE-SUMMARY-BAG { + description + "MRIB amt routing summary"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group-range { + description + "Group range"; + uses MRIB-GROUP-RNG-BAG; + } + leaf amt-gateway-count { + type uint32; + description + "Number of AMT Gateways in this route"; + } + leaf active-packets-sent { + type uint64; + description + "Packets sent for active route"; + } + leaf active-bytes-sent { + type uint64; + units "byte"; + description + "Bytes sent for active route"; + } + leaf ex-packets-sent { + type uint64; + description + "Packets sent for expired route"; + } + leaf ex-bytes-sent { + type uint64; + units "byte"; + description + "Bytes sent for expired route"; + } + } + + grouping MRIB-AMT-GW-EX-ROUTE-BAG { + description + "MRIB amt gw expired route"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group { + description + "Group range"; + uses MRIB-ADDRTYPE; + } + leaf amt-id { + type uint32; + description + "AMT Identifier"; + } + leaf join-time { + type uint64; + description + "Time at which interface joined the active route"; + } + leaf expire-time { + type uint64; + description + "Time at which interface left active route"; + } + leaf out-pkts { + type uint64; + description + "Total pkts out"; + } + leaf out-bytes { + type uint64; + units "byte"; + description + "Total bytes out"; + } + } + + grouping MRIB-AMT-GW-EX-BAG { + description + "MRIB AMT gw expired database"; + leaf gw-addr { + type inet:ipv4-address; + description + "GW address"; + } + leaf gw-port { + type uint32; + description + "PORT"; + } + list expired-route { + description + "AMT Interfaces"; + uses MRIB-AMT-GW-EX-ROUTE-BAG; + } + } + + grouping MRIB-ROUTE-OLE-BAG { + description + "MRIB route OLE informaton"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group-range { + description + "Group range"; + uses MRIB-GROUP-RNG-BAG; + } + container entry-attributes { + description + "Routing entry attributes"; + uses MRIB-ATTRIB-ENTRY-BAG; + } + leaf uptime { + type uint64; + units "second"; + description + "Time (in seconds) route has been active"; + } + leaf ole-count { + type uint32; + description + "Outgoing interface count of the route"; + } + } + + grouping MRIB-AMT-GW-ACTIVE-ROUTE-BAG { + description + "MRIB AMT gw active route"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group { + description + "Group range"; + uses MRIB-ADDRTYPE; + } + leaf amt-id { + type uint32; + description + "AMT Identifier"; + } + leaf join-time { + type uint64; + description + "Time at which interface joined the active route"; + } + leaf out-pkts { + type uint64; + description + "Total pkts out"; + } + leaf out-bytes { + type uint64; + units "byte"; + description + "Total bytes out"; + } + } + + grouping MRIB-AMT-GW-BAG { + description + "MRIB AMT gw entry"; + leaf gw-addr { + type inet:ipv4-address; + description + "GW address"; + } + leaf gw-port { + type uint32; + description + "GW port"; + } + list active-route { + description + "AMT Interfaces"; + uses MRIB-AMT-GW-ACTIVE-ROUTE-BAG; + } + } + + grouping MRIB-IIR-SUB-NODE-BAG { + description + "MRIB IIR sub node"; + leaf sub-interface { + type xr:Interface-name; + description + "IIR sub node interface"; + } + leaf sub-interface-name { + type string { + length "0..65"; + } + description + "IIR sub node interface name"; + } + leaf reference-count { + type uint32; + description + "Reference count of Child"; + } + } + + grouping MRIB-IIR-ROUTE-BAG { + description + "MRIB IIR route"; + container iir-source-address { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container iir-group-address { + description + "Group address"; + uses MRIB-ADDRTYPE; + } + leaf iir-route-table-id { + type uint32; + description + "IIR route table id"; + } + leaf iir-group-prefix-length { + type uint16; + description + "Group prefix length"; + } + leaf virtual-interface-count { + type uint32; + description + "Virtual Interface count"; + } + leaf-list virtual-interface { + type xr:Interface-name; + description + "Virtual interface list"; + } + } + + grouping MRIB-IIR-INTF-BAG { + description + "MRIB IIR interface"; + leaf iir-interface { + type xr:Interface-name; + description + "IIR interface"; + } + leaf iir-interface-name { + type string { + length "0..65"; + } + description + "IIR interface name"; + } + leaf is-virtual-interface { + type boolean; + description + "Is virtual interface entry"; + } + leaf is-iir-notified-interface { + type boolean; + description + "Is IIR recognized interface"; + } + leaf is-delete-in-progress { + type boolean; + description + "Is interface marked delete in progress"; + } + leaf child-count { + type uint32; + description + "Child count"; + } + leaf interface-character { + type uint32; + description + "Value of if_char from pfi"; + } + leaf interface-type { + type uint32; + description + "Interface type"; + } + leaf if-name { + type string { + length "0..65"; + } + description + "Interface name"; + } + leaf interface-ul-index { + type uint32; + description + "Interface UL index"; + } + list route { + description + "List of route associated with this entry"; + uses MRIB-IIR-ROUTE-BAG; + } + list parent { + description + "List of parent sub node"; + uses MRIB-IIR-SUB-NODE-BAG; + } + list child { + description + "List of child sub node"; + uses MRIB-IIR-SUB-NODE-BAG; + } + } + + grouping MRIB-MPLS-FRR-SUMMARY-BAG { + description + " MRIB mpls frr summary bag "; + leaf frr-active-count { + type uint32; + description + "Num of Active FRR"; + } + leaf frr-ready-count { + type uint32; + description + "Num of Ready FRR"; + } + } + + grouping MRIB-TLC-MDT-BAG { + description + "MRIB MDT group"; + container mdt-core-tree-identifier { + description + "MDT Core Tree Identifier"; + uses MRIB-CTID-BAG; + } + leaf mdt-table-id { + type uint32; + description + "MDT table id"; + } + leaf mdt-remote-table-id { + type uint32; + description + "MDT remote table id"; + } + leaf remote-lc-table-id { + type uint32; + description + "MDT Remote TLC Table id"; + } + leaf remote-master-lc-fapid { + type uint32; + description + "MDT Remote Master LC Fapid"; + } + list remote-lc-node { + description + "MDT Remote TLC list of forwarding node"; + uses MRIB-MDT-NODE-BAG; + } + } + + grouping MRIB-MDT-NODE-BAG { + description + "MRIB MDT node"; + leaf fapid { + type uint32; + description + "Fapid"; + } + leaf reference-count1 { + type uint32; + description + "Ref count 1"; + } + leaf reference-count2 { + type uint32; + description + "Ref count 2"; + } + leaf reference-count3 { + type uint32; + description + "Ref count 3"; + } + leaf is-mlc-fallback { + type boolean; + description + "MLC fallback"; + } + leaf is-remote { + type boolean; + description + "Remote interest"; + } + leaf is-nsf-remote { + type boolean; + description + "NSF Remote interest"; + } + leaf is-remote-encap { + type boolean; + description + "Remote Encap interest"; + } + } + + grouping MRIB-TLC-BAG { + description + "MRIB TLC database"; + leaf tlc-table-id { + type uint32; + description + "Table id"; + } + leaf tlc-table-name { + type string; + description + "Table name"; + } + leaf mlc-fapid { + type uint32; + description + "Master LC fapid"; + } + leaf vfallback-master-lc-interface-handle { + type uint32; + description + "Virtual fallback master linecard interface + handle. A non-zero value indicates that there + exists a virtual master line card interface. + Exact value for internal diagnostic"; + } + list node { + description + "List of forwarding node"; + uses MRIB-MDT-NODE-BAG; + } + list mdt { + description + "List of associated MDT route"; + uses MRIB-TLC-MDT-BAG; + } + } + + grouping MRIB-INCOMING-RATE-BAG { + description + "MRIB incoming-route-rate"; + leaf node-id { + type xr:Node-id; + description + "Node of Incoming interface"; + } + leaf node-string { + type string; + description + "Node String"; + } + leaf packets-in-rate { + type uint64; + units "packet/s"; + description + "Packets per second incoming rate"; + } + leaf bits-in-rate { + type uint64; + units "bit/s"; + description + "Bits per second out rate"; + } + leaf hardware-ingress-fwd { + type uint64; + description + "Hardware Ingress Forward Counter"; + } + leaf hardware-ingress-drop { + type uint64; + description + "Hardware Ingress Drop Counter"; + } + } + + grouping MRIB-OUTGOING-RATE-BAG { + description + "MRIB outgoing-route-rate"; + leaf node-id { + type xr:Node-id; + description + "Node of Outgoing interface"; + } + leaf packets-out-rate { + type uint64; + units "packet/s"; + description + "Packets per second out rate"; + } + leaf bits-out-rate { + type uint64; + units "bit/s"; + description + "Bits per second out rate"; + } + leaf hardware-egress-fwd { + type uint64; + description + "Hardware Egress Forward Counter"; + } + leaf hardware-egress-drop { + type uint64; + description + "Hardware Egress Drop Counter"; + } + } + + grouping MRIB-INTRF-BAG { + description + "MRIB multicast-routing entry-interface"; + container interface-attributes { + description + "Interface attributes"; + uses MRIB-ATTRIB-INTRF-BAG; + } + container if-mdf-attr { + description + "Interface modified attributes"; + uses MRIB-ATTRIB-INTRF-BAG; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf underlying-interface { + type xr:Interface-name; + description + "Underlying interface"; + } + leaf underlying-interface-node { + type Fapid; + description + "Fapid on which underlying interface is homed"; + } + leaf uptime { + type uint64; + description + "Time entry has been active"; + } + leaf expiry { + type uint64; + description + "Time the interface expires"; + } + leaf li-add-redist-count { + type uint8; + description + "LI add redist count"; + } + leaf li-del-redist-count { + type uint8; + description + "LI del redist count"; + } + leaf backup-fgid-added { + type boolean; + description + "Interfaec added to backup fgid or not"; + } + leaf head-lsm-identifier { + type uint32; + description + "MLDP Head LSM Identifier"; + } + leaf gre-encapsulation-source-address { + type inet:ipv4-address; + description + "MDT GRE Encapsulation Source Address"; + } + leaf gre-encapsulation-group-address { + type inet:ipv4-address; + description + "MDT GRE Encapsulation Group Address"; + } + leaf type { + type uint32; + description + "Type"; + } + leaf amt-port { + type uint32; + description + "AMT Port"; + } + leaf amt-nexthop { + type inet:ipv4-address; + description + "AMT Nexthop"; + } + leaf amt-mtu { + type uint16; + description + "AMT MTU"; + } + leaf amt-tos { + type uint8; + description + "AMT TOS"; + } + leaf amt-ttl { + type uint8; + description + "AMT TTL"; + } + leaf amt-gateway { + type inet:ipv4-address; + description + "AMT Gateway"; + } + leaf amt-source { + type inet:ipv4-address; + description + "AMT Source"; + } + leaf amt-id { + type uint32; + description + "AMT Identifier"; + } + } + + grouping MRIB-ROUTE-BAG { + description + "MRIB multicast-routing entry"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group-range { + description + "Group range"; + uses MRIB-GROUP-RNG-BAG; + } + container orig-source { + description + "Orig Source address"; + uses MRIB-ADDRTYPE; + } + container parent-range { + description + "Parent if entry is Bidir"; + uses MRIB-GROUP-RNG-BAG; + } + container rpf-neighbor { + description + "RPFneighbour address"; + uses MRIB-ADDRTYPE; + } + container mdt-core-tree-identifier { + description + "MDT CTID - address for v4 and v6 MVPN"; + uses MRIB-CTID-BAG; + } + container entry-attributes { + description + "Routing entry attributes"; + uses MRIB-ATTRIB-ENTRY-BAG; + } + container rc-mdt-ctid { + description + "Route-collapse MDT CTID in use"; + uses MRIB-CTID-BAG; + } + container entry-attr-mdf { + description + "Routing entry attributes mdf"; + uses MRIB-ATTRIB-ENTRY-BAG; + } + container incoming-rates { + description + "Incoming Route rate"; + uses MRIB-INCOMING-RATE-BAG; + } + leaf route-version { + type uint16; + description + "Route Version"; + } + leaf is-customer-encapsulation-route { + type boolean; + description + "Cust Encap route"; + } + leaf rpf-table-id { + type uint32; + description + "RPF TID"; + } + leaf customer-table-id { + type uint32; + description + "Customer table id"; + } + leaf remote-customer-table-id { + type uint32; + description + "Remote Customer table id"; + } + leaf mdt-interface-handle-xr { + type uint32; + description + "MDT interface handle"; + } + leaf mdt-turnaround-enabled { + type boolean; + description + "MDT Turnaround ?"; + } + leaf mdt-bgp-interface-handle { + type uint32; + description + "MDT BGP interface handle"; + } + leaf payload { + type uint32; + description + "The type of the encapsulated payload"; + } + leaf master-lc-fapid { + type uint32; + description + "Master LC Fapid"; + } + leaf master-lc-fallback-fapid { + type uint32; + description + "Master LC Fallback Fapid"; + } + leaf mt-lc-fapid { + type uint32; + description + "MT flag LC Fapid"; + } + leaf annotation { + type string; + description + "Platform annotation"; + } + leaf uptime { + type uint64; + description + "Time entry has been active"; + } + leaf mdt-interface-handle { + type uint32; + description + "Special MDT handle"; + } + leaf rpf-identifier { + type uint32; + description + "RPF-ID for the route"; + } + leaf mo-frr-active { + type uint32; + description + "MOFRR Active Bit"; + } + leaf mo-frr-seq-no { + type uint32; + description + "MoFRR Seq Number"; + } + leaf encapsulation-identifier { + type uint32; + description + "Encap-ID value"; + } + leaf in-expired-db { + type boolean; + description + "Is route present in expired databse"; + } + list interface { + description + "Interfaces"; + uses MRIB-INTRF-BAG; + } + list outgoing-rate { + description + "Outgoing Route rate"; + uses MRIB-OUTGOING-RATE-BAG; + } + } + + grouping MRIB-MPLS-BKUP-TUN-BAG { + description + "MRIB mpls bkup tun"; + leaf protected-interface { + type xr:Interface-name; + description + "Protected Intf IFH"; + } + leaf backup-tunnel { + type uint32; + description + "Backup Tunnel"; + } + leaf backup-out-intf { + type uint32; + description + "Backup Out Interface"; + } + leaf backup-label { + type uint32; + description + "Backup Label"; + } + leaf backup-active { + type boolean; + description + "Backup Active"; + } + leaf-list in-label { + type uint32; + description + "Label Entries using this bkup"; + } + } + + grouping MRIB-MPLS-BKUP-BAG { + description + "MRIB mpls bkup"; + leaf te-client { + type boolean; + description + "TE Client populated"; + } + leaf lmrib-entry { + type boolean; + description + "LMRIB Entry populated"; + } + leaf prot-if-name { + type string; + description + "Protected Intf Name"; + } + list backup-tunnel { + description + "Backup Tunnels"; + uses MRIB-MPLS-BKUP-TUN-BAG; + } + } + + grouping MRIB-AMT-GW-SUMMARY-BAG { + description + "MRIB AMT gw summary route"; + leaf gw-addr { + type inet:ipv4-address; + description + "GW address"; + } + leaf gw-port { + type uint32; + description + "PORT"; + } + leaf active-route-count { + type uint32; + description + "Active routes for this Gateway"; + } + leaf out-pkts { + type uint64; + description + "Total pkts out"; + } + leaf out-bytes { + type uint64; + units "byte"; + description + "Total bytes out"; + } + leaf out-ex-pkts { + type uint64; + description + "Total expired route pkts out"; + } + leaf out-ex-bytes { + type uint64; + units "byte"; + description + "Total expired route bytes out"; + } + } + + grouping MRIB-RC-IPC-BAG { + description + "MRIB RC IPC"; + leaf ipc-name { + type string; + description + "IPC name"; + } + leaf items-in-ring { + type uint32; + description + "Items in Ring"; + } + leaf consumer-waiting { + type boolean; + description + "Consumer Waiting"; + } + leaf producer-flags { + type uint32; + description + "Producer Flags"; + } + leaf node-updates { + type uint32; + description + "Nodes Updated On Producer Channel"; + } + leaf shared-memory-open-failures { + type uint32; + description + "Consumer IPC thread shared memory open failures"; + } + leaf shared-memory-fstat-failures { + type uint32; + description + "Consumer IPC thread shared memory fstat failures"; + } + leaf shared-memory-size-failures { + type uint32; + description + "Consumer IPC thread shared memory size failures"; + } + leaf shared-memory-map-failures { + type uint32; + description + "Consumer IPC thread shared memory mmap failures"; + } + leaf shared-memory-header-failures { + type uint32; + description + "Consumer IPC thread shared memory header + validation failures"; + } + } + + grouping MRIB-ENCAPID-TBLID-BAG { + description + "MRIB Encap Table Entry"; + leaf etable-id { + type uint32; + description + "Encap Table id"; + } + leaf refcount { + type uint32; + description + "Refcount"; + } + } + + grouping MRIB-ENCAPID-NODE-BAG { + description + "MRIB Encap Node Entry"; + leaf node-id { + type xr:Node-id; + description + "NodeID"; + } + leaf refcount { + type uint32; + description + "Refcount"; + } + } + + grouping MRIB-ENCAPID-OLE-BAG { + description + "MRIB Encap Ole Entry"; + leaf type { + type Mrib-show-ctid; + description + "Type"; + } + leaf-list ole-key { + type uint8; + description + "Ole Key"; + } + } + + grouping ENCAPID-REDIST-INFO { + description + "ENCAPID REDIST INFO"; + leaf redist-flags { + type uint8; + description + "redist flags"; + } + leaf client-id { + type uint32; + description + "client id"; + } + leaf client-redist-time { + type uint64; + description + "client redist time"; + } + } + + grouping MRIB-ENCAPID-BAG { + description + "MRIB Encap Entry"; + leaf encap-id-xr { + type uint32; + description + "Encap ID value"; + } + leaf expiration-time { + type uint64; + units "second"; + description + "Expiration time in seconds"; + } + leaf expirationvalid { + type boolean; + description + "Expiration valid or not"; + } + leaf vrf-lite { + type boolean; + description + "Vrf Lite"; + } + leaf v6-vrf-lite { + type boolean; + description + "V6 Vrf Lite"; + } + leaf stale { + type boolean; + description + "Stale Entry"; + } + leaf ipv6-usage { + type boolean; + description + "IPV6 using this encap id"; + } + leaf route-count { + type uint32; + description + "No. of routes using this Encap ID"; + } + leaf annotation { + type string; + description + "Platform annotation"; + } + leaf-list encap-id-key { + type uint8; + description + "EncapID Key"; + } + list redist-info { + max-elements "3"; + description + "Redist Info"; + uses ENCAPID-REDIST-INFO; + } + list encap-id-ole { + description + "EncapID ole"; + uses MRIB-ENCAPID-OLE-BAG; + } + list node-id { + description + "NodeID list"; + uses MRIB-ENCAPID-NODE-BAG; + } + list backup-node-id { + description + "Backup NodeID list"; + uses MRIB-ENCAPID-NODE-BAG; + } + list encap-t-id { + description + "Encap Table Id list"; + uses MRIB-ENCAPID-TBLID-BAG; + } + } + + grouping MRIB-ATTRIB-INTRF-BAG { + description + "MRIB Interface level flags"; + leaf is-forward { + type boolean; + description + "Forwarding flag"; + } + leaf is-accept { + type boolean; + description + "Accepting flag"; + } + leaf is-accept-backup { + type boolean; + description + "Accepting Backup flag"; + } + leaf is-internal-copy { + type boolean; + description + "Internal Copy flag"; + } + leaf is-negate-signal { + type boolean; + description + "NegateSignal"; + } + leaf is-dont-preserve { + type boolean; + description + "Don't preserve flag"; + } + leaf is-signal-present { + type boolean; + description + "Signal Present flag"; + } + leaf is-internal-interest { + type boolean; + description + "Internal Interest flag"; + } + leaf is-internal-disinterest { + type boolean; + description + "Internal Disinterest flag"; + } + leaf is-local-interest { + type boolean; + description + "Local Interest flag"; + } + leaf is-local-disinterest { + type boolean; + description + "Local Disinterest flag"; + } + leaf is-decapsulation-interface { + type boolean; + description + "Decaps interface flag"; + } + leaf is-underlying-physical-change { + type boolean; + description + "Underlying physical change flag"; + } + leaf is-encapsulation-interface { + type boolean; + description + "Encaps interface flag"; + } + leaf is-egress-interface { + type boolean; + description + "Egress processing flag"; + } + leaf is-extranet { + type boolean; + description + "Extranet"; + } + leaf is-mdt-interface { + type boolean; + description + "MDT interface flag"; + } + leaf is-mldp-mdt-interface { + type boolean; + description + "MLDP MDT interface flag"; + } + leaf is-rsvp-te-mdt-interface { + type boolean; + description + "RSVP-TE MDT interface flag"; + } + leaf is-ir-mdt-interface { + type boolean; + description + "IR MDT interface flag"; + } + leaf is-mdt-data-triggered { + type boolean; + description + "Data MDT triggered on this interface"; + } + leaf is-p2mp-interface { + type boolean; + description + "P2MP interface flag"; + } + leaf is-turn-around { + type boolean; + description + "Turnaround candidate"; + } + leaf amt { + type boolean; + description + "AMT"; + } + leaf is-tr-mdt-interface { + type boolean; + description + "TR MDT interface flag"; + } + leaf evpn-mh-interface { + type boolean; + description + "EVPN MH Interface flag"; + } + } + + grouping MRIB-ATTRIB-ENTRY-BAG { + description + "MRIB Entry level flags"; + leaf is-domain-local-source { + type boolean; + description + "Domain-local source flag"; + } + leaf is-source-external { + type boolean; + description + "Source external to domain"; + } + leaf is-signal-by-default-on { + type boolean; + description + "Signal by default"; + } + leaf is-directly-connected-check-set { + type boolean; + description + "Directly connected check"; + } + leaf is-inherit-accept-set { + type boolean; + description + "Inherit Accept info"; + } + leaf is-inherit-from-set { + type boolean; + description + "Inherit from info"; + } + leaf is-drop { + type boolean; + description + "Drop flag"; + } + leaf is-rpf-neighbor-present { + type boolean; + description + "RPF neighbor present flag"; + } + leaf is-multicast-nsf-on { + type boolean; + description + "Multicast NSF flag"; + } + leaf is-mdt-encapsulation-on { + type boolean; + description + "MDT Encap flag"; + } + leaf is-mdt-decapsulation-on { + type boolean; + description + "MDT Decap flag"; + } + leaf is-mdt-interface-on { + type boolean; + description + "MDT ifh flag"; + } + leaf is-mdt-bgp-interface-on { + type boolean; + description + "MDT BGP ifh flag"; + } + leaf is-master-lc-on { + type boolean; + description + "Master LC flag"; + } + leaf is-master-lc-fallback-on { + type boolean; + description + "Master LC FB flag"; + } + leaf is-mdt-address-on { + type boolean; + description + "MDT Address flag"; + } + leaf is-platform-modified { + type boolean; + description + "Platform modified flag"; + } + leaf is-threshold-crossed { + type boolean; + description + "Data MDT Threshold Crossed"; + } + leaf is-conditional-decap { + type boolean; + description + "Conditional Decap"; + } + leaf is-via-lsm { + type boolean; + description + "LSM flag"; + } + leaf is-forward-mpls { + type boolean; + description + "MPLS Forward"; + } + leaf is-extranet { + type boolean; + description + "Extranet"; + } + leaf is-mdt-interface-special-on { + type boolean; + description + "MDT ifh special flag"; + } + leaf encapsulation-identifier-flag { + type boolean; + description + "Encap-ID present"; + } + leaf rpf-identifier-flag { + type boolean; + description + "RPF-ID present"; + } + leaf candidate-mofrr { + type boolean; + description + "MoFRR candidate route"; + } + leaf mofrr-state { + type boolean; + description + "Is the MoFRR bit set"; + } + leaf mofrr-primary { + type boolean; + description + "Is the MoFRR primary bit set"; + } + leaf mofrr-backup { + type boolean; + description + "Is the MoFRR backup bit set"; + } + leaf protocol { + type boolean; + description + "Protocol value set"; + } + leaf amt { + type boolean; + description + "AMT flag"; + } + leaf initial-convergence-done { + type boolean; + description + "ICD flag"; + } + leaf vxlan { + type boolean; + description + "VXLAN flag"; + } + } + + grouping MRIB-SIMPLE-FILTER-BAG { + description + "Mrib client simple-filter"; + list mrib-simple-filter-bag { + description + "Chain of diff filters"; + container entry-attributes { + description + "Per-entry attributes"; + uses MRIB-ATTRIB-ENTRY-BAG; + } + container interface-attributes { + description + "Per-interface attributes"; + uses MRIB-ATTRIB-INTRF-BAG; + } + leaf-list include-interface { + type xr:Interface-name; + description + "Include-mode interfaces"; + } + leaf-list exclude-interface { + type xr:Interface-name; + description + "Exclude-mode interfaces"; + } + list include-group { + description + "Include-mode groups"; + uses MRIB-GROUP-RNG-BAG; + } + list exclude-group { + description + "Exclude-mode groups"; + uses MRIB-GROUP-RNG-BAG; + } + } + } + + grouping MRIB-FILTER-BAG { + description + "Mrib client filter"; + container filter-interest { + description + "Interest filter"; + uses MRIB-SIMPLE-FILTER-BAG; + } + container filter-owned { + description + "Ownership filter"; + uses MRIB-SIMPLE-FILTER-BAG; + } + leaf client-connection-id { + type uint32; + description + "Client-connection id"; + } + leaf client-name-xr { + type string; + description + "Client name"; + } + leaf client-instance-id { + type string; + description + "Client instance ID"; + } + } + + grouping MRIB-RPFID-SPE-INFO { + description + "MRIB RPFID SPE INFO"; + leaf addr { + type inet:ipv4-address; + description + "addr"; + } + leaf rpf-id { + type uint32; + description + "rpf id"; + } + leaf id-alloc { + type boolean; + description + "id alloc"; + } + leaf tbl-id { + type Rsi-tbl-id; + description + "tbl id"; + } + leaf mdt-ifh { + type xr:Interface-name; + description + "mdt ifh"; + } + leaf ipv6-interest { + type boolean; + description + "ipv6 interest"; + } + leaf stale { + type boolean; + description + "stale"; + } + leaf chkpt-obj-id { + type uint32; + description + "chkpt obj id"; + } + leaf dep-route-list-cnt { + type uint32; + description + "dep route list cnt"; + } + leaf dep-core-route-list-cnt { + type uint32; + description + "dep core route list cnt"; + } + leaf dep-label-list-cnt { + type uint32; + description + "dep label list cnt"; + } + leaf in-pd-retry-list { + type boolean; + description + "in pd retry list"; + } + leaf annotation { + type string; + description + "Platform annotation"; + } + } + + grouping MRIB-NSF-BAG { + description + "MRIB NSF state"; + leaf is-multicast-nsf { + type boolean; + description + "Multicast NSF state"; + } + leaf is-multicast-cofonsf { + type boolean; + description + "Multicast COFO NSF state"; + } + leaf multicast-nsf-timeout { + type uint32; + description + "Multicast NSF timeout"; + } + leaf multicast-nsf-time-left { + type uint32; + description + "Multicast NSF time remaining"; + } + leaf respawn-count { + type uint32; + description + "Respawn Count"; + } + leaf last-nsf-on { + type int64; + description + "Last NSF time ON"; + } + leaf last-nsf-off { + type int64; + description + "Last NSF time off"; + } + leaf last-nsf-on-sec { + type int32; + description + "Last NSF time ON in Sec"; + } + leaf last-nsf-off-sec { + type int32; + description + "Last NSF time OFF in Sec"; + } + leaf last-icd-notif-sent { + type int64; + description + "Last ICD Notif Sent"; + } + leaf last-icd-notif-sent-sec { + type int32; + description + "Last ICD Notif Sent in Sec"; + } + leaf last-remote-nsf-on { + type int64; + description + "Last Remote NSF ON"; + } + leaf last-remote-nsf-off { + type int64; + description + "Last Remote NSF OFF"; + } + leaf last-label-mldp-nsf-on { + type int64; + description + "Last Label MLDP NSF ON"; + } + leaf last-label-mldp-nsf-off { + type int64; + description + "Last Label MLDP NSF OFF"; + } + leaf last-label-te-nsf-on { + type int64; + description + "Last Label TE NSF ON"; + } + leaf last-labelte-nsf-off { + type int64; + description + "Last Label TE NSF OFF"; + } + leaf last-label-pim-nsf-on { + type int64; + description + "Last Label PIM NSF ON"; + } + leaf last-label-pim-nsf-off { + type int64; + description + "Last Label PIM NSF OFF"; + } + leaf last-label-pim6nsf-on { + type int64; + description + "Last Label PIM6 NSF ON"; + } + leaf last-label-pim6-nsf-off { + type int64; + description + "Last Label PIM6 NSF OFF"; + } + leaf last-remote-nsf-on-sec { + type int32; + description + "Last Remote NSF ON in Sec"; + } + leaf last-remote-nsf-off-sec { + type int32; + description + "Last Remote NSF OFF in Sec"; + } + leaf last-label-mldp-nsf-on-sec { + type int32; + description + "Last Label MLDP NSF ON in Sec"; + } + leaf last-label-mldp-nsf-off-sec { + type int32; + description + "Last Label MLD NSF OFF in Sec"; + } + leaf last-label-te-nsf-on-sec { + type int32; + description + "Last Label TE NSF ON in Sec"; + } + leaf last-labelte-nsf-off-sec { + type int32; + description + "Last Label TE NSF OFF in Sec"; + } + leaf last-label-pim-nsf-on-sec { + type int32; + description + "Last Label PIM NSF ON in Sec"; + } + leaf last-label-pim-nsf-off-sec { + type int32; + description + "Last Label PIM NSF OFF in Sec"; + } + leaf last-label-pim6nsf-on-sec { + type int32; + description + "Last Label PIM6 NSF ON in Sec"; + } + leaf last-label-pim6-nsf-off-sec { + type int32; + description + "Last Label PIM6 NSF OFF in Sec"; + } + } + + grouping MRIB-MPLS-OUTINFOS-BAG { + description + "MRIB mpls output info"; + leaf output-interface { + type xr:Interface-name; + description + "Output IFH"; + } + leaf output-underlying-interface { + type xr:Interface-name; + description + "Output Underlying IFH"; + } + leaf out-nh { + type uint32; + description + "Nexthop"; + } + leaf out-nhid { + type uint32; + description + "Nexthop ID"; + } + leaf out-nh-sid { + type uint32; + description + "NH SID"; + } + leaf output-label { + type uint32; + description + "OutLabel"; + } + leaf out-fapid { + type uint32; + description + "Output Fapid"; + } + leaf backup { + type uint32; + description + "Backup"; + } + leaf backup-active { + type uint32; + description + "Backup Active"; + } + leaf backup-tunnel { + type uint32; + description + "Backup Tunnel"; + } + leaf backup-interface { + type xr:Interface-name; + description + "Backup IFH"; + } + leaf backup-underlying-interface { + type xr:Interface-name; + description + "Backup Underlying IFH"; + } + leaf backup-label { + type uint32; + description + "Backup Label"; + } + leaf backup-nh { + type uint32; + description + "Backup Nexthop"; + } + leaf bacup-fapid { + type uint32; + description + "Backup Fapid"; + } + leaf s2l-role { + type uint32; + description + "S2L Role"; + } + leaf output-information { + type uint32; + description + "Output Information"; + } + leaf oiis-nh-type { + type boolean; + description + "Output Information is NHType"; + } + leaf selected-output-interface { + type xr:Interface-name; + description + "Selected output innterface"; + } + leaf selected-backup-interface { + type xr:Interface-name; + description + "Selected backup interface"; + } + leaf annotation { + type string; + description + "OutInfo Platform annotation"; + } + } + + grouping MRIB-MPLS-FORWARDING-BAG { + description + "MRIB mpls forwarding"; + leaf table-id { + type uint32; + description + "Table id"; + } + leaf table-name { + type string; + description + "Table name"; + } + leaf total-label-entries { + type uint32; + description + "Total number of label entries"; + } + leaf total-s2l { + type uint32; + description + "Total number of S2L sub-LSPs"; + } + leaf head-s2l { + type uint32; + description + "Head S2L sub-LSP"; + } + leaf mid-s2l { + type uint32; + description + "Mid S2L sub-LSP"; + } + leaf tail-s2l { + type uint32; + description + "Tail S2L sub-LSP"; + } + leaf attribute { + type uint32; + description + "Attribute"; + } + leaf in-label { + type uint32; + description + "InLabel"; + } + leaf client { + type uint32; + description + "Client"; + } + leaf role { + type uint32; + description + "Role"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf p2mp-id { + type uint32; + description + "P2MP ID"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf head-lsm-identifier { + type uint32; + description + "HEAD LSM ID"; + } + leaf e-mvpn-present { + type boolean; + description + "Egress mvpn Param Present"; + } + leaf e-vpls-present { + type boolean; + description + "Egress vpls Param Present"; + } + leaf e-encap-present { + type boolean; + description + "Egress mvpn Encap Param Present"; + } + leaf e-peek { + type boolean; + description + "Egress Peek"; + } + leaf i-drop { + type boolean; + description + "Ingress Drop"; + } + leaf e-drop { + type boolean; + description + "Egress Drop"; + } + leaf rpf-id { + type uint32; + description + "Egress RPF ID"; + } + leaf encap-id { + type uint32; + description + "Egress ENCAP ID"; + } + leaf id-value { + type uint32; + description + "Egress ENCAP ID VALUE"; + } + leaf id-type { + type uint32; + description + "Egress ENCAP TYPE VALUE"; + } + leaf assoc-tid4 { + type uint32; + description + "Associated Table ID v4"; + } + leaf assoc-tid6 { + type uint32; + description + "Associated Table ID v6"; + } + leaf lspvif { + type xr:Interface-name; + description + "LSPVIF"; + } + leaf p2mp-pw-flags { + type uint16; + description + "P2MP PW Flags"; + } + leaf re-serv-e { + type yang:hex-string; + description + "RESV"; + } + leaf bridge-id { + type uint32; + description + "Bridge Id"; + } + leaf shg-id { + type uint32; + description + "SHG ID"; + } + leaf sub-ifh { + type xr:Interface-name; + description + "SUB IFH"; + } + leaf xc-id { + type uint32; + description + "XC ID"; + } + leaf source-address { + type uint32; + description + "Source Address"; + } + leaf extranet-id { + type uint32; + description + "Ext ID"; + } + leaf ip-look-up { + type uint32; + description + "IP lookup"; + } + leaf l3p-id { + type uint32; + description + "L3PID"; + } + leaf explicit-null { + type uint32; + description + "Explicit Null"; + } + leaf tunnel-interface { + type xr:Interface-name; + description + "Tunnel IFH"; + } + leaf incoming-interface { + type xr:Interface-name; + description + "Incoming IFH"; + } + leaf output-information-num { + type uint32; + description + "OutInfo Num"; + } + leaf annotation { + type string; + description + "Platform annotation"; + } + list output-info { + description + "Output Information"; + uses MRIB-MPLS-OUTINFOS-BAG; + } + } + + grouping MRIB-CLIENT-BAG { + description + "MRIB client connection"; + leaf client-connection-id { + type uint32; + description + "Client-connection id"; + } + leaf client-id { + type uint32; + description + "Client id"; + } + leaf is-active { + type boolean; + description + "Active"; + } + leaf registered-table-count { + type uint32; + description + "Registered table count"; + } + leaf client-type { + type Mrib-clt; + description + "Client type"; + } + leaf client-read-state { + type Mrib-ccb-io; + description + "Client read state"; + } + leaf parent-id { + type uint32; + description + "Parent id"; + } + leaf client-name-xr { + type string; + description + "Client name"; + } + leaf client-instance-id { + type string; + description + "Client instance ID"; + } + leaf purge-delay-secs { + type uint32; + units "second"; + description + "Purge delay [secs]"; + } + leaf purge-remain-secs { + type uint32; + units "second"; + description + "Purge time remaining [secs]"; + } + leaf nsf-capable { + type boolean; + description + "NSF Capable"; + } + leaf resync-time-secs { + type uint32; + units "second"; + description + "Resync time [secs]"; + } + leaf nsf-restart-time-secs { + type uint32; + units "second"; + description + "NSF restart time [secs]"; + } + leaf nsf-recovery-time-secs { + type uint32; + units "second"; + description + "NSF recovery time [secs]"; + } + leaf-list nsf-interest { + type Mrib-clt; + description + "Clients of NSF interest"; + } + } + + grouping MRIB-MDT-ROUTEDB-BAG { + description + "MRIB MDT route"; + container mdt-route-source-address { + description + "Source Address"; + uses MRIB-ADDRTYPE; + } + container mdt-route-group-address { + description + "Group Address"; + uses MRIB-ADDRTYPE; + } + leaf mdt-route-group-prefix-length { + type uint16; + description + "Group prefix length"; + } + leaf mdt-route-table-id { + type uint32; + description + "Route TID"; + } + leaf mdt-remote-reprograming { + type boolean; + description + "Need Reprog"; + } + } + + grouping MRIB-MDT-IFH-BAG { + description + "MRIB MDT IFH"; + leaf mdt-interface { + type xr:Interface-name; + description + "MDT handle"; + } + leaf mdt-interface-table-id { + type uint32; + description + "Table ID"; + } + leaf mh-reference-count { + type uint32; + description + "MH refcnt"; + } + leaf intranet-reference-count { + type uint32; + description + "Intranet Refcnt"; + } + leaf extranet-reference-count { + type uint32; + description + "Extranet Refcnt"; + } + leaf mdt-up-time { + type uint64; + description + "UpTime"; + } + list mdt-route-db { + description + "List of MDT routes"; + uses MRIB-MDT-ROUTEDB-BAG; + } + } + + grouping MRIB-CHKPT-TABLE-STATS { + description + "MRIB chkpt table stats"; + leaf table-description { + type string; + description + "Table description"; + } + leaf table-name { + type uint32; + description + "Table name"; + } + leaf is-mirrored { + type boolean; + description + "Table mirrored"; + } + leaf-list statistic { + type uint32; + description + "Stats array"; + } + } + + grouping MRIB-CHKPT-STATS { + description + "MRIB chkpt stats"; + list checkpoint-table { + description + "Array of chkpt table stats"; + uses MRIB-CHKPT-TABLE-STATS; + } + } + + grouping MRIB-EVPN-BKT-BAG { + description + "MRIB EVPN Database"; + leaf bucket-id-xr { + type uint32; + description + "BucketID"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf state { + type Mrib-evpn-bucket-state; + description + "State"; + } + leaf flags { + type uint8; + description + "Flags"; + } + leaf uptime { + type uint64; + description + "Time entry has been active"; + } + } + + grouping MRIB-BVI-MROUTE-BAG { + description + "MRIB BVI Mroute"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group-range { + description + "Group range"; + uses MRIB-GROUP-RNG-BAG; + } + } + + grouping MRIB-GROUP-RNG-BAG { + description + "MRIB group-range"; + container group-prefix { + description + "Group address prefix"; + uses MRIB-ADDRTYPE; + } + leaf group-prefix-length { + type uint32; + description + "Group address prefix length"; + } + } + + grouping MRIB-ADDRTYPE { + description + "MRIB ADDRTYPE"; + leaf af-name { + type Mrib-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + } + + grouping MRIB-BVI-ROUTE-BAG { + description + "MRIB BVI DB"; + container source { + description + "Source address"; + uses MRIB-ADDRTYPE; + } + container group-range { + description + "Group range"; + uses MRIB-GROUP-RNG-BAG; + } + leaf bvi-ifhandle { + type xr:Interface-name; + description + "BVI IFhandle"; + } + leaf bvi-platform-data-length { + type uint8; + units "byte"; + description + "Platform data bytes"; + } + leaf bvi-platform-data { + type yang:hex-string; + description + "BVI platform data"; + } + leaf table-name { + type string; + description + "Table Name"; + } + leaf uptime { + type uint64; + description + "Time entry has been active"; + } + leaf ref-count { + type uint32; + description + "Refcount"; + } + list mroute { + description + "Mroute"; + uses MRIB-BVI-MROUTE-BAG; + } + } + + grouping MRIB-BVI-INTERFACE-BAG { + description + "MRIB BVI INTERFACE BAG"; + leaf table-id { + type Rsi-tbl-id; + description + "Table ID"; + } + leaf table-name { + type string; + description + "Table Name"; + } + } + + grouping MRIB-NSR-END-INFO { + description + "MRIB NSR END INFO"; + container event-tm { + description + "event tm"; + uses MRIB-TIMESPEC; + } + leaf idx { + type uint32; + description + "idx"; + } + leaf client-type { + type Mrib-clt; + description + "ClientType"; + } + leaf num-tbl-with-purged-attr { + type uint32; + description + "num tbl with purged attr"; + } + leaf num-e-with-purged-e-attr { + type uint32; + description + "num e with purged e attr"; + } + leaf num-e-with-purged-if-attr { + type uint32; + description + "num e with purged if attr"; + } + leaf num-if-with-purged-if-attr { + type uint32; + description + "num if with purged if attr"; + } + } + + grouping MRIB-COFO-SUMMARY-BAG { + description + "Summary bag for collapsed forwarding"; + leaf local-star-g { + type uint32; + description + "Number of local *,g entries in cofo"; + } + leaf remote-star-g { + type uint32; + description + "Number of remote *,g entries in cofo"; + } + leaf local-sg { + type uint32; + description + "Number of local SG entries in cofo"; + } + leaf remote-sg { + type uint32; + description + "Number of remote SG entries in cofo"; + } + leaf local-labels { + type uint32; + description + "Number of local label entries in cofo"; + } + leaf remote-labels { + type uint32; + description + "Number of remote label entries in cofo"; + } + leaf local-encap { + type uint32; + description + "Number of local encap entries in cofo"; + } + leaf remote-encap { + type uint32; + description + "Number of remote encap entries in cofo"; + } + } + + grouping MRIB-CTID-BAG { + description + "MRIB Core Tree ID"; + leaf type { + type Mrib-show-ctid; + description + "Type"; + } + leaf id { + type inet:ipv4-address; + description + "ID"; + } + } + + grouping LMRIB-COFO-BAG { + description + "LSM information exchanged for collapsed + forwarding"; + container remote-ctid { + description + "The CTID of the remote label whose nodeset is + recieved in MRIB"; + uses MRIB-CTID-BAG; + } + container send-timestamp { + description + "Unix timestamp when local information was last + sent to connected SDRs"; + uses MRIB-TIMESPEC; + } + container fgid-send-timestamp { + description + "Unix timestamp when local FGID information was + last sent to RIB on connected SDRs"; + uses MRIB-TIMESPEC; + } + container receive-timestamp { + description + "Unix timestamp when information was last + received from connected SDRs"; + uses MRIB-TIMESPEC; + } + leaf annotation { + type string; + description + "Platform annotation"; + } + leaf incoming-label { + type uint32; + description + "Incoming label info"; + } + leaf head-lsm-id { + type uint32; + description + "Head LSM ID"; + } + leaf lsm-id { + type uint32; + description + "LSM ID"; + } + leaf send-count { + type uint16; + description + "Number of updates sent to connected SDRs for + this FEC"; + } + leaf fgid-send-count { + type uint16; + description + "Number of FGID updates sent to RIB on connected + SDRs for this FEC"; + } + leaf receive-count { + type uint16; + description + "Number of updates received from connected SDRs + for this FEC"; + } + leaf local { + type boolean; + description + "Flag set if entry has information originating + from local SDR"; + } + leaf remote { + type boolean; + description + "Flag set if entry has information originating + from remote SDR"; + } + list primary-nodeset { + description + "Primary nodeset for update"; + uses MRIB-FAPID-BAG; + } + list backup-nodeset { + description + "Backup nodeset for update"; + uses MRIB-FAPID-BAG; + } + } + + grouping MRIB-COFO-BAG { + description + "IP multicast information exchanged for collapsed + forwarding"; + container send-timestamp { + description + "Unix timestamp when local information was last + sent to connected SDRs"; + uses MRIB-TIMESPEC; + } + container receive-timestamp { + description + "Unix timestamp when information was last + received from connected SDRs"; + uses MRIB-TIMESPEC; + } + leaf send-count { + type uint16; + description + "Number of updates sent to connected SDRs for + this route"; + } + leaf receive-count { + type uint16; + description + "Number of updates received from connected SDRs + for this route"; + } + leaf local { + type boolean; + description + "Flag set if entry has information originating + from local SDR"; + } + leaf remote { + type boolean; + description + "Flag set if entry has information originating + from remote SDR"; + } + list nodeset { + description + "Nodeset for update"; + uses MRIB-FAPID-BAG; + } + } + + grouping MRIB-TIMESPEC { + description + "MRIB TIMESPEC"; + leaf seconds { + type uint32; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + description + "Nanoseconds"; + } + } + + grouping MRIB-FAPID-BAG { + description + "FAP ID"; + leaf fap-id { + type string { + length "0..32"; + } + description + "FAP ID"; + } + leaf local { + type boolean; + description + "Local or Remote"; + } + } + + grouping MRIB-COFO-ENCAP-BAG { + description + "Encap ID information exchanged for collapsed + forwarding"; + container send-timestamp { + description + "Unix timestamp when local information was last + sent to connected SDRs"; + uses MRIB-TIMESPEC; + } + container receive-timestamp { + description + "Unix timestamp when information was last + received from connected SDRs"; + uses MRIB-TIMESPEC; + } + leaf encap-key-length { + type uint16; + description + "Length of Encap Key"; + } + leaf cofo-key-complete { + type boolean; + description + "TRUE indicates all LSM encap OLEs have been + updated in the key. FALSE indicates pending + updates to LSM encap OLEs."; + } + leaf encap-id-xr { + type uint32; + description + "The Encap ID corresponding to the Encap Key. + Includes 3-bits for SDR-ID (bits 21-23)"; + } + leaf num-ol-es { + type uint32; + description + "Number of OLEs in Encap entry"; + } + leaf send-count { + type uint16; + description + "Number of updates sent to connected SDRs for + this Encap Key"; + } + leaf receive-count { + type uint16; + description + "Number of updates received from connected SDRs + for this Encap Key"; + } + leaf local { + type boolean; + description + "Flag set if entry has information originating + from local SDR"; + } + leaf remote { + type boolean; + description + "Flag set if entry has information originating + from remote SDR"; + } + list primary-nodeset { + description + "Primary nodeset for update"; + uses MRIB-FAPID-BAG; + } + list backup-nodeset { + description + "Backup nodeset for update"; + uses MRIB-FAPID-BAG; + } + } + + grouping MRIB-NH-PATH-BAG { + description + "MRIB NH Path Information"; + leaf mribnh-string { + type string { + length "0..32"; + } + description + "MRIB neighbor identity"; + } + leaf out-intf { + type xr:Interface-name; + description + "Outgoing Interface "; + } + leaf prim-count { + type uint32; + description + "Primary Interface Count"; + } + leaf backup-count { + type uint32; + description + "Backup Interface Count"; + } + } + + grouping MRIB-REGDB-BAG { + description + "MRIB Regdb Entry"; + leaf registration-type { + type int32; + description + "Regdb Type"; + } + leaf nh-addr { + type inet:ipv4-address; + description + "NH addr"; + } + leaf label { + type uint32; + description + "Label NH"; + } + leaf regdb-ip-leaf-count { + type uint32; + description + "Regdb ip Leaf Count"; + } + leaf regdb-lbl-leaf-count { + type uint32; + description + "Regdb label Leaf Count"; + } + leaf regdb-mlcl-leaf-count { + type uint32; + description + "Regdb MLC Leaf Count"; + } + leaf reg-is-ecd-stale { + type boolean; + description + "Regdb ECD stale flag"; + } + leaf reg-is-ecd-reg { + type boolean; + description + "Regdb ECD is registered"; + } + leaf notification-count { + type uint32; + description + "Count of notifications from fib_mgr "; + } + leaf dest-vrf-name { + type string; + description + "Destination Vrf Name"; + } + leaf notified-ts { + type string { + length "0..40"; + } + description + "notified timestamp"; + } + list path { + description + "NH path list"; + uses MRIB-NH-PATH-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper.yang new file mode 100644 index 000000000..99cdc0dac --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mrib-oper.yang @@ -0,0 +1,767 @@ +module Cisco-IOS-XR-mrib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mrib-oper"; + prefix mrib-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mrib-oper-sub1 { + revision-date 2022-10-31; + } + + 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 mrib package operational data. + + This module contains definitions + for the following management objects: + ipv6-mrib: IPv6 MRIB operational data + mrib: MRIB operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "CSCwc65497 MRIB Consistency checker additional oper changes + 2022-08-23 + Adding mrib route rate to display route statistics in mrib + 2022-08-15 + CSCwc65497 MRIB Consistency checker oper changes + 2022-04-20 + Getting rid of default context path + 2022-02-09 + Increase in interface name length"; + semver:module-version "3.0.0"; + } + revision 2021-08-27 { + description + "non-backward compatible edit in leaf parent-if-handle. type changed from uint32 to type xr:Hex-integer"; + semver:module-version "2.0.0"; + } + revision 2020-10-29 { + description + "Adding RPFID for PIM-SM design + 2020-10-11 + Backward compatible addition in leaf table-mdt-name-tree-sid,table-tree-sid-turnaround and reference-count."; + semver:module-version "1.1.0"; + } + revision 2020-02-13 { + description + "Fixing CSCvr71562."; + semver:module-version "1.0.0"; + } + revision 2019-08-27 { + description + "Providing MRIB information."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container registration-database-entries { + description + "MRIB Registration Database Table"; + list registration-database-entry { + key "vrf-name entry-type next-hop-address"; + description + "MRIB Registration Database Entry Information"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + leaf entry-type { + type uint32; + description + "Entry Type"; + } + leaf next-hop-address { + type xr:Cisco-ios-xr-string; + description + "Next-Hop Address"; + } + uses MRIB-REGDB-BAG; + } + } + container cofo { + description + "Collapsed forwarding Information"; + container encap-entries { + description + "EncapID information exchanged for collapsed + forwarding"; + list encap-entry { + key "encap-id"; + description + "EncapID information exchanged for collapsed + forwarding"; + leaf encap-id { + type uint32; + description + "Encap Identifier"; + } + uses MRIB-COFO-ENCAP-BAG; + } + } + container ip-multicast-infos { + description + "IP multicast information exchanged for + collapsed forwarding"; + list ip-multicast-info { + key "source group"; + description + "IP multicast information exchanged for + collapsed forwarding"; + leaf source { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group { + type inet:ip-prefix; + description + "Group Address Prefix"; + } + uses MRIB-COFO-BAG; + } + } + container lsm-infos { + description + "LSM information exchanged for collapsed + forwarding"; + list lsm-info { + key "fec"; + description + "LSM information exchanged for collapsed + forwarding"; + leaf fec { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "The FEC of the local label for which + node-set or FGID data is being exchanged"; + } + uses LMRIB-COFO-BAG; + } + } + container summary { + description + "Summary of statistics for collapsed forwarding"; + uses MRIB-COFO-SUMMARY-BAG; + } + } + container nsr-ends { + description + "NSR End Table"; + list nsr-end { + key "index"; + description + "NSR End"; + leaf index { + type uint32; + description + "Index"; + } + uses MRIB-NSR-END-INFO; + } + } + container mrib-bvi-interfaces { + description + "MRIB BVI interface mapping"; + list mrib-bvi-interface { + key "interface-name"; + description + "BVI Interface Handle"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MRIB-BVI-INTERFACE-BAG; + } + } + container mrib-bvi-routes { + description + "MRIB BVI route table"; + list mrib-bvi-route { + key "interface-name source-address group-address prefix-length"; + description + "MRIB BVI route entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses MRIB-BVI-ROUTE-BAG; + } + } + container evpn { + description + "EVPN information"; + container bucket-entries { + description + "EVPN Bucket DataBase Table information"; + list bucket-entry { + description + "Mrib EVPN Bucket Database Entry"; + leaf bucket-id { + type uint32; + description + "Bucket Identifier"; + } + leaf parent-if-handle { + type xr:Hex-integer; + description + "Parent Handle"; + } + uses MRIB-EVPN-BKT-BAG; + } + } + } + container checkpoint-statistics { + description + "Checkpoint Statistics"; + uses MRIB-CHKPT-STATS; + } + container mdt-interfaces { + description + "MRIB IIR interface DB"; + list mdt-interface { + key "interface-name"; + description + "Interface handle"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MRIB-MDT-IFH-BAG; + } + } + container clients { + description + "MRIB Client Table"; + list client { + key "client-name instance-name"; + description + "MRIB Client DB Entry Information"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client Name"; + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "Instance Name"; + } + uses MRIB-CLIENT-BAG; + } + } + container mpls-forwardings { + description + "MRIB Label Table"; + list mpls-forwarding { + key "label"; + description + "MRIB Label DB Information"; + leaf label { + type uint32; + description + "Label"; + } + uses MRIB-MPLS-FORWARDING-BAG; + } + } + container nsf { + description + "NSF Information"; + uses MRIB-NSF-BAG; + } + container rpf-identifiers { + description + "RPF Identifier Table"; + list rpf-identifier { + key "source-pe-address mrib-allocated"; + description + "RPF Identifier"; + leaf source-pe-address { + type inet:ipv4-address-no-zone; + description + "Source PE Address"; + } + leaf mrib-allocated { + type boolean; + description + "MRIB Allocated"; + } + uses MRIB-RPFID-SPE-INFO; + } + } + container client-filters { + description + "MRIB Client Filter Table"; + list client-filter { + key "client-name instance-name"; + description + "MRIB Client Filter DB Entry Information"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client Name"; + } + leaf instance-name { + type xr:Cisco-ios-xr-string; + description + "Instance Name"; + } + uses MRIB-FILTER-BAG; + } + } + container encap-identifiers { + description + "Encap Identifier Table"; + list encap-identifier { + key "encap-id"; + description + "Encap Identifier"; + leaf encap-id { + type uint32; + description + "Encap Identifier"; + } + uses MRIB-ENCAPID-BAG; + } + } + } + } + + grouping ACTIVE { + description + "Common node of mrib, ipv6-mrib"; + container active { + description + "Active Process"; + uses PROCESS; + uses DATABASE-TABLE; + } + } + + grouping DATABASE-TABLE { + description + "Common node of active, standby"; + container databases { + description + "Database Table"; + list database { + key "database-name"; + description + "MRIB Table Information"; + container route-collapse-ipc-tlc { + description + "Route Collapse IPC TLC Information"; + uses MRIB-RC-IPC-BAG; + } + container gw-summaries { + description + "MRIB AMT Gateway Summary Information"; + list gw-summary { + key "gateway-address gateway-port"; + description + "MRIB AMT Gateway DB Entry"; + leaf gateway-address { + type inet:ip-address-no-zone; + description + "Gateway Address"; + } + leaf gateway-port { + type uint32; + description + "Gateway Port"; + } + uses MRIB-AMT-GW-SUMMARY-BAG; + } + } + container route-collapse-ipc { + description + "MRIB Route Collapse IPC Core-egress-node + Information"; + uses MRIB-RC-IPC-BAG; + } + container mplste-backups { + description + "MRIB MPLS TE Backup Database Information"; + list mplste-backup { + key "interface-name"; + description + "MRIB MPLS TE Backup Database Information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MRIB-MPLS-BKUP-BAG; + } + } + container routes { + description + "The set of MRIB RouteDB operations"; + list route { + key "source-address group-address prefix-length"; + description + "MRIB Route DB Entry Information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses MRIB-ROUTE-BAG; + } + } + container table-line-card { + description + "MRIB Table-LineCard database"; + uses MRIB-TLC-BAG; + } + container frr-summary { + description + "MRIB FRR DB Summary Information"; + uses MRIB-MPLS-FRR-SUMMARY-BAG; + } + container iir-interfaces { + description + "MRIB IIR interface DB"; + list iir-interface { + key "interface-name"; + description + "MRIB Interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses MRIB-IIR-INTF-BAG; + } + } + container amt-gateway-dbs { + description + "The set of AMT Gateway DataBase Table + information"; + list amt-gateway-db { + key "gateway-address gateway-port"; + description + "MRIB AMT Gateway DB Entry"; + leaf gateway-address { + type inet:ip-address-no-zone; + description + "Gateway Address"; + } + leaf gateway-port { + type uint32; + description + "Gateway Port"; + } + uses MRIB-AMT-GW-BAG; + } + } + container route-outgoing-interfaces { + description + "MRIB RouteDB Outgoing Interface Table "; + list route-outgoing-interface { + key "source-address group-address prefix-length"; + description + "MRIB Route DB Outgoing Interface Entry + Information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses MRIB-ROUTE-OLE-BAG; + } + } + container gw-expireds { + description + "MRIB AMT Gateway DB Expired Information"; + list gw-expired { + key "gateway-address gateway-port"; + description + "MRIB AMT Gateway Expired Entry"; + leaf gateway-address { + type inet:ip-address-no-zone; + description + "Gateway Address"; + } + leaf gateway-port { + type uint32; + description + "Gateway Port"; + } + uses MRIB-AMT-GW-EX-BAG; + } + } + container remote-table-line-card { + description + "Show the linked remote entry"; + uses MRIB-TLC-BAG; + } + container amt-routedb-summaries { + description + "MRIB AMT RouteDB Summary Information"; + list amt-routedb-summary { + key "source-address group-address"; + description + "MRIB AMT Route Summary Entry"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + uses MRIB-AMT-ROUTE-SUMMARY-BAG; + } + } + container route-consistency-table { + description + "MRIB route consistency database"; + container route-consistency { + description + "Route Consistency Information"; + uses MRIB-CC-RT-BAG; + } + } + container route-collapses { + description + "MRIB Route Collapse database"; + list route-collapse { + key "type group-address"; + description + "Route Collapse Information"; + leaf type { + type xr:Cisco-ios-xr-string; + description + "Type"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Input MDT grp or prev group"; + } + uses MRIB-RC-MDT-BAG; + } + } + container label-info { + description + "MRIB Label Table Information"; + uses MRIB-LABEL-TABLE-INFO-BAG; + } + container frrs { + description + "FRR Table"; + list frr { + key "start-label"; + description + "MRIB FRR DB Information"; + leaf start-label { + type uint32; + description + "Start Label"; + } + uses MRIB-MPLS-FRR-BAG; + } + } + container amt-routedb-expireds { + description + "MRIB AMT Route Expired Information"; + list amt-routedb-expired { + key "source-address group-address gw-address port"; + description + "MRIB AMT Route Expired Entry"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf gw-address { + type inet:ip-address-no-zone; + description + "GW Address"; + } + leaf port { + type uint32; + description + "Prefix Length"; + } + uses MRIB-AMT-ROUTE-EX-BAG; + } + } + container route-rates { + description + "MRIB RouteDB Rate Table "; + list route-rate { + key "source-address group-address prefix-length"; + description + "MRIB Route DB and Rate information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses MRIB-ROUTE-BAG; + } + } + container table-information { + description + "MRIB VRF table information"; + uses MRIB-TABLE-INFO-BAG; + } + container summary { + description + "MRIB RouteDB Summary Information"; + uses MRIB-DB-SUMM-BAG; + } + container amt-routes { + description + "The set of AMT Route table information"; + list amt-route { + key "source-address group-address prefix-length"; + description + "MRIB AMT Route DB Entry Information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group Address"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses MRIB-AMT-ROUTE-BAG; + } + } + leaf database-name { + type xr:Cisco-ios-xr-string; + description + "Database Name"; + } + } + } + } + + grouping STANDBY { + description + "Common node of mrib, ipv6-mrib"; + container standby { + description + "Standby Process"; + uses PROCESS; + uses DATABASE-TABLE; + } + } + + container ipv6-mrib { + config false; + description + "IPv6 MRIB operational data"; + uses ACTIVE; + uses STANDBY; + } + container mrib { + config false; + description + "MRIB operational data"; + uses ACTIVE; + uses STANDBY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper-sub1.yang new file mode 100644 index 000000000..e636adf0f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper-sub1.yang @@ -0,0 +1,1340 @@ +submodule Cisco-IOS-XR-msdp-oper-sub1 { + belongs-to Cisco-IOS-XR-msdp-oper { + prefix Cisco-IOS-XR-msdp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR msdp package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-22 { + description + "backward compatible addition"; + semver:module-version "2.0.0"; + } + revision 2019-08-27 { + description + "Providing MSDP information."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Msdp-rpf-rule { + type enumeration { + enum "msdp-rpf-rule-failed" { + description + "msdp rpf rule failed"; + } + enum "msdp-rpf-rule-rp" { + description + "msdp rpf rule rp"; + } + enum "msdp-rpf-rule-ebgp" { + description + "msdp rpf rule ebgp"; + } + enum "msdp-rpf-rule-next-hop" { + description + "msdp rpf rule next hop"; + } + enum "msdp-rpf-rule-as-path" { + description + "msdp rpf rule as path"; + } + enum "msdp-rpf-rule-static" { + description + "msdp rpf rule static"; + } + enum "msdp-rpf-rule-local" { + description + "msdp rpf rule local"; + } + enum "msdp-rpf-rule-one-peer" { + description + "msdp rpf rule one peer"; + } + enum "msdp-rpf-rule-mesh-grp" { + description + "msdp rpf rule mesh grp"; + } + enum "msdp-rpf-rule-default-tree" { + description + "msdp rpf rule default tree"; + } + enum "msdp-rpf-rule-max" { + description + "msdp rpf rule max"; + } + } + description + "Msdp rpf rule"; + } + + typedef Msdp-session-sso-state { + type enumeration { + enum "msdp-session-sso-state-unknown" { + value 0; + description + "msdp session sso state unknown"; + } + enum "msdp-session-sso-state-tcp-down" { + value 1; + description + "msdp session sso state tcp down"; + } + enum "msdp-session-sso-state-tcp-synced" { + value 2; + description + "msdp session sso state tcp synced"; + } + enum "msdp-session-sso-state-msdp-synced" { + value 3; + description + "msdp session sso state msdp synced"; + } + enum "msdp-session-sso-state-msdp-synced-hold" { + value 4; + description + "msdp session sso state msdp synced hold"; + } + enum "msdp-session-sso-state-tcp-stop-read" { + value 5; + description + "msdp session sso state tcp stop read"; + } + enum "msdp-session-sso-state-tcp-replicated" { + value 6; + description + "msdp session sso state tcp replicated"; + } + enum "msdp-session-sso-state-nsr-ready" { + value 7; + description + "msdp session sso state nsr ready"; + } + enum "msdp-session-sso-state-max" { + value 8; + description + "msdp session sso state max"; + } + } + description + "Msdp session sso state"; + } + + typedef Msdp-peer-state { + type enumeration { + enum "msdp-null-state" { + description + "msdp null state"; + } + enum "msdp-disabled" { + description + "msdp disabled"; + } + enum "msdp-inactive" { + description + "msdp inactive"; + } + enum "msdp-listening" { + description + "msdp listening"; + } + enum "msdp-connecting" { + description + "msdp connecting"; + } + enum "msdp-established" { + description + "msdp established"; + } + enum "msdp-no-interface" { + description + "msdp no interface"; + } + enum "msdp-intf-no-addr" { + description + "msdp intf no addr"; + } + enum "msdp-same-addr" { + description + "msdp same addr"; + } + enum "msdp-peer-stop" { + description + "msdp peer stop"; + } + enum "msdp-tcp-synced" { + description + "msdp tcp synced"; + } + enum "msdp-max-state" { + description + "msdp max state"; + } + } + description + "Msdp peer state"; + } + + grouping MSDP-NSR-BAG { + description + "NSR Related information"; + leaf state { + type uint8; + description + "NSR state"; + } + leaf rmf-notification-done { + type boolean; + description + "RMF Notification done"; + } + leaf rmf-timer-valid { + type boolean; + description + "Is RMF timer running ?"; + } + leaf rmf-timer-expiry { + type uint64; + description + "Time for RMF timer to expire"; + } + leaf last-rmf-ready { + type uint64; + description + "Time when RMF Rdy notif was sent"; + } + leaf last-rmf-not-ready { + type uint64; + description + "Time when RMF Not-Rdy notif was sent"; + } + leaf count-rmf-ready { + type uint32; + description + "No. of times RMF Ready notif was sent"; + } + leaf count-rmf-not-ready { + type uint32; + description + "No. of times RMF Not Ready notif was sent"; + } + leaf nsr-force-timer-left { + type uint64; + units "second"; + description + "NSR Force Timer left in seconds"; + } + } + + grouping MSDP-PROCESS-SUMM-BAG { + description + "MSDP Peer Summary Global"; + leaf is-maximum-disable { + type boolean; + description + "Is maximum enforcement disabled"; + } + leaf global-maximum-sa { + type uint32; + description + "Global OOR Limit"; + } + leaf external-active-sa { + type uint32; + description + "Current Active Ext. SAs"; + } + leaf is-node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + } + + grouping MSDP-EDM-NSF-BAG { + description + "MSDP NSF state"; + leaf is-multicast-nsf-active { + type boolean; + description + "Is Multicast NSF active"; + } + leaf multicast-nsf-timeout { + type uint64; + description + "MSDP NSF period in sec"; + } + leaf multicast-nsf-time-left { + type uint64; + description + "MSDP NSF expiry time in sec"; + } + leaf last-nsf-on { + type int64; + description + "Time when MSDP went NSF"; + } + leaf last-nsf-off { + type int64; + description + "Time when MSDP came out of NSF"; + } + leaf last-nsf-on-sec { + type int64; + description + "Time in sec since last NSF on event"; + } + leaf last-nsf-off-sec { + type int64; + description + "Time in sec since last NSF off event"; + } + leaf last-icd-notif-recv { + type int64; + description + "Time when last ICD Notif Rcvd"; + } + leaf last-icd-notif-recvsec { + type int64; + description + "Time in sec since last ICD Notif"; + } + } + + grouping MSDP-RP-BAG { + description + "MSDP RP Sources"; + list msdp-rp-bag { + description + "Point to the next one"; + leaf rp-address { + type inet:ipv4-address; + description + "The RP Address"; + } + leaf rp-prefix { + type inet:ipv4-address; + description + "Prefix used for this RP"; + } + leaf rp-prefix-length { + type int32; + description + "Prefix length used for this RP"; + } + leaf advertizing-peer { + type inet:ipv4-address; + description + "The Advertizing Peer"; + } + leaf rpf-peer { + type inet:ipv4-address; + description + "The RPF Peer"; + } + leaf rp-source-count { + type uint32; + description + "Total source count"; + } + leaf rp-sources-active { + type uint32; + description + "Active source count"; + } + leaf heard { + type uint32; + units "second"; + description + "Last Heard From (seconds)"; + } + } + } + + grouping MSDP-GLOBAL-BAG { + description + "Global MSDP state"; + container rp-information { + description + "RP information"; + uses MSDP-RP-BAG; + } + leaf process-id { + type uint32; + description + "MSDP Process ID, 0 if disabled"; + } + leaf local-as-number-string { + type string; + description + "AS number we operate within"; + } + leaf caching { + type int32; + description + "Is SA caching enabled"; + } + leaf default-peer { + type inet:ipv4-address; + description + "The default peer address"; + } + leaf is-pim-connected { + type boolean; + description + "Is MSDP registered with PIM for Registers"; + } + leaf originator-id { + type inet:ipv4-address; + description + "Originator ID"; + } + leaf active-sources { + type uint32; + description + "Total Active Sources"; + } + leaf active-groups { + type uint32; + description + "Total Active Groups"; + } + leaf active-rp { + type uint32; + description + "Number of active RPs (local and remote)"; + } + leaf external-sa { + type uint32; + description + "Number of externally learns SA states"; + } + leaf items-allocated { + type uint64; + description + "Current List Items Allocated"; + } + leaf lists-allocated { + type uint64; + description + "Current Lists Allocated"; + } + leaf items-free { + type uint64; + description + "Total List Items freed"; + } + leaf lists-free { + type uint64; + description + "Total Lists freed"; + } + leaf sa-buffers-allocated { + type uint32; + description + "Total SA buffers allocated"; + } + leaf sa-buffers-free { + type uint32; + description + "Total SA buffers free"; + } + leaf source-buffers-allocated { + type uint32; + description + "Total SA Source buffers allocated"; + } + leaf source-buffers-free { + type uint32; + description + "Total SA Sourcebuffers free"; + } + leaf group-buffers-allocated { + type uint32; + description + "Total SA Group buffers allocated"; + } + leaf group-buffers-free { + type uint32; + description + "Total SA Group buffers free"; + } + leaf rp-buffers-allocated { + type uint32; + description + "Total SA RP buffers allocated"; + } + leaf rp-buffers-free { + type uint32; + description + "Total SA RP buffers free"; + } + leaf maximum-sources { + type uint32; + description + "Maximum Sources Seen"; + } + leaf maximum-groups { + type uint32; + description + "Maximum Groups Seen"; + } + leaf maximum-rp-sources { + type uint32; + description + "Maximum RPs Seen"; + } + leaf maximum-external-sa { + type uint32; + description + "Maximum external SA seen"; + } + } + + grouping MSDP-SUMMARY-AS-BAG { + description + "MSDP Summary AS Bag"; + leaf as-number-string { + type string; + description + "Peer's ASnum"; + } + leaf sa-total { + type uint32; + description + "SA count "; + } + leaf number-of-rp { + type uint32; + description + "Number of RPs"; + } + } + + grouping MSDP-SUMMARY-PREFACE-BAG { + description + "MSDP Summary Preface Bag"; + leaf sa-count { + type uint32; + description + "Active SA count"; + } + leaf rp-count { + type uint32; + description + "RP count "; + } + leaf source-count { + type uint32; + description + "Source count "; + } + leaf group-count { + type uint32; + description + "Group count "; + } + } + + grouping MSDP-SUMMARY-RP-BAG { + description + "MSDP Summary RP Bag"; + leaf rp-address-xr { + type inet:ipv4-address; + description + "Originator RP address"; + } + leaf rp-prefix { + type inet:ipv4-address; + description + "Prefix used for this RP"; + } + leaf rp-prefix-length { + type int32; + description + "Prefix length used for this RP"; + } + leaf sa-total { + type uint32; + description + "SA count "; + } + leaf rpf-peer { + type inet:ipv4-address; + description + "The RPF Peer"; + } + } + + grouping MSDP-CONTEXT { + description + "MSDP Context bag"; + leaf context-name { + type string; + description + "Name of context"; + } + leaf context-id { + type uint32; + description + "Context identifier"; + } + leaf table-id { + type uint32; + description + "Active table identifier"; + } + leaf table-count { + type uint32; + description + "Count of tables"; + } + leaf active-table-count { + type uint32; + description + "Count of active tables"; + } + leaf inheritable-ttl { + type uint32; + description + "TTL inheritable by peers"; + } + leaf inheritable-max-sa { + type uint32; + description + "Maximum SAs inheritable by peers"; + } + leaf inheritable-keepalive-period { + type uint32; + description + "Keepalive period inheritable by peers"; + } + leaf inheritable-peer-timeout-period { + type uint32; + description + "Peer timeout period inheritable by peers"; + } + leaf inheritable-connect-source { + type string; + description + "Connect source interface inheritable by peers"; + } + leaf inheritable-sa-filter-in { + type string; + description + "SA filter in inheritable by peers"; + } + leaf inheritable-sa-filter-out { + type string; + description + "SA filter out inheritable by peers"; + } + leaf inheritable-rp-filter-in { + type string; + description + "RP filter in inheritable by peers"; + } + leaf inheritable-rp-filter-out { + type string; + description + "RP filter out inheritable by peers"; + } + leaf originator-address { + type inet:ipv4-address; + description + "Originator address"; + } + leaf originator-interface-name { + type string; + description + "Originator interface name"; + } + leaf default-peer-address { + type inet:ipv4-address; + description + "Default peer address"; + } + leaf sa-holdtime { + type uint32; + description + "SA holdtime"; + } + leaf allow-encaps-count { + type uint32; + description + "Count of allowed encaps"; + } + leaf context-sa-maximum { + type uint32; + description + "Maximum SA in the context"; + } + leaf as-number { + type uint32; + description + "Local AS Number"; + } + leaf peer-count { + type uint32; + description + "Count of peers"; + } + leaf estasblished-peer-count { + type uint32; + description + "Count of peers in established state"; + } + leaf group-count { + type uint32; + description + "Count of groups present"; + } + leaf source-count { + type uint32; + description + "Count of sources present"; + } + leaf rp-count { + type uint32; + description + "Count of RPs present"; + } + leaf external-source-count { + type uint32; + description + "Count of external sources present"; + } + leaf group-count-hwm { + type uint32; + description + "High water mark of group count"; + } + leaf source-count-hwm { + type uint32; + description + "High water mark of source count"; + } + leaf rp-count-hwm { + type uint32; + description + "High water mark of RP count"; + } + leaf external-source-hwm { + type uint32; + description + "High water mark of external sources count"; + } + leaf mrib-update-count { + type uint32; + description + "Count of MRIB Updates"; + } + leaf mrib-update-no-change-count { + type uint32; + description + "Count of MRIB updates with no change"; + } + leaf mrib-update-group { + type uint32; + description + "Count of MRIB update for *,G routes"; + } + leaf mrib-update-source { + type uint32; + description + "Count of MRIB updates for S,G routes"; + } + leaf mrib-update-drop-invalid-group { + type uint32; + description + "Count of MRIB updates dropped for an invalid + group address"; + } + leaf mrib-update-drop-invalid-group-length { + type uint32; + description + "Count of MRIB updates dropped for an invalid + group length"; + } + leaf mribu-pdate-drop-invalid-source { + type uint32; + description + "Count of MRIB updates dropped for an invalid + source address"; + } + leaf mrib-update-group-auto-rp { + type uint32; + description + "Count of MRIB updates dropped for AutoRP address"; + } + leaf pim-suppress-shared-tree-join { + type boolean; + description + "Suppress shared tree join configured"; + } + } + + grouping MSDP-RPF-BAG { + description + "MSDP RPF Info"; + leaf local-as-number-string { + type string; + description + "Local AS Number"; + } + leaf matching-rule { + type Msdp-rpf-rule; + description + "Matching Rule"; + } + leaf peer-address { + type inet:ipv4-address; + description + "RPF peer"; + } + leaf peer-as-number-string { + type string; + description + "Peers AS Number"; + } + leaf bgp-nexthop { + type inet:ipv4-address; + description + "BGP Nexthop"; + } + leaf as-number-string { + type string; + description + "Nexthop AS Number"; + } + leaf matching-prefix { + type inet:ipv4-address; + description + "Matching Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + leaf as-path { + type yang:hex-string; + description + "The AS Path"; + } + } + + grouping MSDP-SRC-BAG { + description + "MSDP active source cache entry"; + leaf source-address-xr { + type inet:ipv4-address; + description + "Source address"; + } + leaf source-prefix-length { + type uint32; + description + "Prefix length"; + } + leaf source-flag { + type uint32; + description + "Source specific flags"; + } + leaf group-address-xr { + type inet:ipv4-address; + description + "Group address"; + } + leaf group-prefix-length { + type uint32; + description + "Group Prefix length"; + } + leaf group-flag { + type uint32; + description + "Source specific flags"; + } + leaf rp-address-xr { + type inet:ipv4-address; + description + "RP address that orginated this source"; + } + leaf rpf-peer { + type inet:ipv4-address; + description + "The peer we accepted this SA from"; + } + leaf rpf-as-number-string { + type string; + description + "The AS of the peer that advertised this"; + } + leaf advertizing-peer { + type inet:ipv4-address; + description + "The peer we should have"; + } + leaf advertizing-peer-as-string { + type string; + description + "The AS of the peer that advertised this"; + } + leaf matching-rule { + type Msdp-rpf-rule; + description + "The RPF rule used to select this SA"; + } + leaf sa-received-count { + type uint32; + description + "The number of SA messages recv'd"; + } + leaf encapsulated-data-bytes { + type uint32; + units "byte"; + description + "The bytes of encapsulated data recv'd"; + } + leaf encapsulated-data-packets { + type uint32; + description + "No. of encapsulated data pkts recv'd"; + } + leaf created { + type uint64; + description + "Time entry was created"; + } + leaf expires { + type uint64; + description + "When the entry expires"; + } + } + + grouping MSDP-PEER-TIMER-BAG { + description + "MSDP Peer Timer Values"; + leaf connect-retry-interval { + type uint32; + description + "Connect Retry Interval"; + } + leaf holdtime { + type uint32; + description + "SA Holdtime"; + } + leaf keep-alive-interval { + type uint32; + description + "Keepalive Interval"; + } + } + + grouping MSDP-PEER-SUMM-BAG { + description + "MSDP Peer State"; + leaf peer-address-xr { + type inet:ipv4-address; + description + "Peer Address"; + } + leaf as-number-string { + type string; + description + "Peers AS number"; + } + leaf peer-flag { + type uint32; + description + "Peer flags"; + } + leaf peer-state { + type Msdp-peer-state; + description + "Peer state"; + } + leaf description { + type string; + description + "Description"; + } + leaf started { + type uint64; + units "second"; + description + "Time in current state (seconds)"; + } + leaf reset { + type uint32; + description + "Number of times peers has reset"; + } + leaf connect-attempt { + type uint32; + description + "Number of connect attempts"; + } + leaf establish-transition { + type uint32; + description + "No. of transitions to ESTB state"; + } + leaf tlv-sent { + type uint32; + description + "TLV Sent"; + } + leaf tlv-received { + type uint32; + description + "TLV Received"; + } + leaf active-sa-count { + type uint32; + description + "Active SA Count"; + } + leaf max-sa { + type uint32; + description + "Peer Max SA"; + } + leaf peer-sso-state { + type Msdp-session-sso-state; + description + "Peer SSO state"; + } + leaf oper-downs { + type uint32; + description + "Number of TCP SSO oper-downs"; + } + leaf sso-started { + type uint32; + units "second"; + description + "Time in current state (seconds)"; + } + } + + grouping MSDP-PEER-BAG { + description + "MSDP Peer State"; + container peer-sumary-info { + description + "Basic peer Information"; + uses MSDP-PEER-SUMM-BAG; + } + container peer-timer-values { + description + "Peer specific timer values"; + uses MSDP-PEER-TIMER-BAG; + } + container peer-statistics { + description + "Peer statistics"; + uses MSDP-STATS-PEER-BAG; + } + leaf connection-source { + type inet:ipv4-address; + description + "Local Address"; + } + leaf local-port { + type uint16; + description + "Local TCP Port"; + } + leaf remote-port { + type uint16; + description + "Remote TCP Port"; + } + leaf ttl { + type int32; + description + "TTL"; + } + leaf write-queue-length { + type int32; + units "byte"; + description + "Bytes on the writeQ"; + } + leaf read-queue-length { + type int32; + units "byte"; + description + "Bytes on the readQ"; + } + leaf expires { + type uint64; + units "second"; + description + "When the peer times out (seconds)"; + } + leaf cleared { + type uint64; + units "second"; + description + "last time cleared (seconds)"; + } + leaf last-in-message-time-stamp { + type uint64; + description + "last timestamp msg was received"; + } + leaf established-time-stamp { + type uint64; + description + "Timestamp when moved in/out of established state"; + } + leaf sa-sent { + type uint32; + description + "SA Sent"; + } + leaf sa-received { + type uint32; + description + "SA Received"; + } + leaf discarded { + type uint32; + description + "Output Messages blocked"; + } + leaf in-sa-acl { + type string; + description + "Incoming SA ACL"; + } + leaf out-sa-acl { + type string; + description + "Outgoing SA ACL"; + } + leaf in-rp-acl { + type string; + description + "Incoming RP ACL"; + } + leaf out-rp-acl { + type string; + description + "Outgoing RP ACL"; + } + leaf incoming-sa-route-map { + type string; + description + "Incoming SA route-map"; + } + leaf outgoing-sa-route-map { + type string; + description + "Outgoing SA route-map"; + } + leaf incoming-rp-route-map { + type string; + description + "Incoming RP route-map"; + } + leaf outgoing-rp-route-map { + type string; + description + "Outgoing RP route-map"; + } + leaf sa-request-input-filter { + type string; + description + "SA-Req input filter"; + } + leaf mesh-group-name { + type string; + description + "Mesh group name"; + } + leaf is-password-configured { + type boolean; + description + "Has a peer password been configured for this + peer"; + } + leaf is-password-set-on-listen { + type boolean; + description + "Has a peer password been set for this peer on + the listen socket"; + } + leaf is-password-set-on-active { + type boolean; + description + "Has a peer password been set for this peer on + the active socket"; + } + leaf keep-alive-timer-period { + type uint32; + description + "KeepAlive timer period"; + } + leaf peer-time-out-timer-period { + type uint32; + description + "Peer timeout timer period"; + } + } + + grouping MSDP-STATS-PEER-BAG { + description + "MSDP Peer Stats Bag"; + leaf peer-address-xr { + type inet:ipv4-address; + description + "Peer's Address"; + } + leaf as-number-string { + type string; + description + "Peer's ASnum"; + } + leaf peer-state { + type Msdp-peer-state; + description + "Peer's State"; + } + leaf sa-count { + type uint32; + description + "SA count (entries with E flag set)"; + } + leaf rpf-failures { + type uint32; + description + "TLVs which failed RPF"; + } + leaf rpf-enqueued { + type uint32; + description + "TLVs enqueued"; + } + leaf rpf-dequeued { + type uint32; + description + "TLVs dequeued"; + } + leaf keep-alive-received { + type uint32; + description + "Keepalives type TLVs rcvd"; + } + leaf notification-received { + type uint32; + description + "Notification type TLVs rcvd"; + } + leaf tlv-sa-received { + type uint32; + description + "SA type TLVs rcvd"; + } + leaf tlv-sa-request-received { + type uint32; + description + "SA Request type TLVs rcvd"; + } + leaf tlv-sa-response-received { + type uint32; + description + "SA Response type TLVs rcvd"; + } + leaf tlv-encapsulation-data-received { + type uint32; + description + "SA Encap Data TLVs rcvd"; + } + leaf tlv-unknown-received { + type uint32; + description + "Unknown type TLVs rcvd"; + } + leaf keep-alive-sent { + type uint32; + description + "Keepalives type TLVs sent"; + } + leaf notification-sent { + type uint32; + description + "Notification type TLVs sent"; + } + leaf tlv-sa-sent { + type uint32; + description + "SA type TLVs sent"; + } + leaf tlv-sa-request-sent { + type uint32; + description + "SA Request type TLVs sent"; + } + leaf tlv-sa-response { + type uint32; + description + "SA Response type TLVs sent"; + } + leaf tlv-encapsulation-data-sent { + type uint32; + description + "SA Encap Data TLVs sent"; + } + leaf sa-received { + type uint32; + description + "Total SA messages received"; + } + leaf sa-sent { + type uint32; + description + "Total SA messages sent"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper.yang new file mode 100644 index 000000000..84bfe6622 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-msdp-oper.yang @@ -0,0 +1,412 @@ +module Cisco-IOS-XR-msdp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-msdp-oper"; + prefix msdp-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-msdp-oper-sub1 { + revision-date 2021-09-22; + } + + 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 msdp package operational data. + + This module contains definitions + for the following management objects: + msdp: MSDP operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-22 { + description + "backward compatible addition"; + semver:module-version "2.0.0"; + } + revision 2019-08-27 { + description + "Providing MSDP information."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bgp-asn-plain { + type uint32 { + range "1..4294967295"; + } + description + "Bgp asn plain"; + } + + grouping PEER-TABLE { + description + "Common node of default-context, vrf"; + container peers { + description + "MSDP Peers"; + list peer { + key "peer-address"; + description + "MSDP Peer Info"; + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "Peer Address"; + } + uses MSDP-PEER-BAG; + } + } + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF Name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + uses STAT-PEER-TABLE; + uses PEER-TABLE; + uses PEER-SUMMARY-TABLE; + uses SA-CACHE-TABLE; + uses RPF-TABLE; + uses ROUTING-CONTEXT; + uses CACHE-SUMMARY; + uses ALL-SA-CACHE-TABLE; + uses AS-SOURCE-GROUP-SA-CACHE-TABLE; + uses RP-SOURCE-GROUP-SA-CACHE-TABLE; + } + } + } + + grouping SA-CACHE-TABLE { + description + "Common node of default-context, vrf"; + container sa-caches { + description + "MSDP SA Cache table - sources with Local & + External flags Set"; + list sa-cache { + key "source-address group-address"; + description + "MSDP SA Cache Entry - Sources with Local & + External flags set"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Previous Source Address"; + } + leaf group-address { + type inet:ipv4-address-no-zone; + description + "Previous Group Address"; + } + uses MSDP-SRC-BAG; + } + } + } + + grouping AS-SOURCE-GROUP-SA-CACHE-TABLE { + description + "Common node of default-context, vrf"; + container as-source-group-sa-caches { + description + "AS Filtered MSDP SA Cache table"; + list as-source-group-sa-cache { + key "as source-address group-address"; + description + "AS Filtered MSDP SA Cache Entries"; + leaf as { + type Bgp-asn-plain; + description + "AS Number"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ipv4-address-no-zone; + description + "Group Address"; + } + uses MSDP-SRC-BAG; + } + } + } + + grouping ALL-SA-CACHE-TABLE { + description + "Common node of default-context, vrf"; + container all-sa-caches { + description + "All of MSDP SA Cache ignoring source flags"; + list all-sa-cache { + key "source-address group-address"; + description + "MSDP All SA Cache Entries ignoring source flags"; + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ipv4-address-no-zone; + description + "Group Address"; + } + uses MSDP-SRC-BAG; + } + } + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container globals { + description + "MSDP Global Data"; + uses MSDP-GLOBAL-BAG; + } + container nsf { + description + "NSF Information"; + uses MSDP-EDM-NSF-BAG; + } + container summary { + description + "MSDP Process Summary Info"; + uses MSDP-PROCESS-SUMM-BAG; + } + container nsr { + description + "NSR Information"; + uses MSDP-NSR-BAG; + } + } + } + + grouping RPF-TABLE { + description + "Common node of default-context, vrf"; + container rpfs { + description + "MSDP Reverse Path Forwarding Info"; + list rpf { + key "rp-address"; + description + "MSDP Reverse Path Forwarding entries"; + leaf rp-address { + type inet:ipv4-address-no-zone; + description + "RP Address"; + } + uses MSDP-RPF-BAG; + } + } + } + + grouping RP-SOURCE-GROUP-SA-CACHE-TABLE { + description + "Common node of default-context, vrf"; + container rp-source-group-sa-caches { + description + "RP Filtered MSDP SA Cache table"; + list rp-source-group-sa-cache { + key "rp-address source-address group-address"; + description + "RP Filtered MSDP SA Cache Entries"; + leaf rp-address { + type inet:ipv4-address-no-zone; + description + "RP Address"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source Address"; + } + leaf group-address { + type inet:ipv4-address-no-zone; + description + "Group Address"; + } + uses MSDP-SRC-BAG; + } + } + } + + grouping CACHE-SUMMARY { + description + "Common node of default-context, vrf"; + container cache-summary { + description + "Cache Summary"; + container rp-cache-summaries { + description + "RP specific Cache Summary Table"; + list rp-cache-summary { + key "rp-address"; + description + "Cache Summary RP"; + leaf rp-address { + type inet:ipv4-address-no-zone; + description + "RP Address"; + } + uses MSDP-SUMMARY-RP-BAG; + } + } + container cache-summary-preface { + description + "Cache Summary Preface"; + uses MSDP-SUMMARY-PREFACE-BAG; + } + container as-cache-summaries { + description + "AS specific Cache Summary Table"; + list as-cache-summary { + key "as"; + description + "Cache Summary AS"; + leaf as { + type Bgp-asn-plain; + description + "AS Number"; + } + uses MSDP-SUMMARY-AS-BAG; + } + } + } + } + + grouping ROUTING-CONTEXT { + description + "Common node of default-context, vrf"; + container routing-context { + description + "MSDP routing context"; + uses MSDP-CONTEXT; + } + } + + grouping STAT-PEER-TABLE { + description + "Common node of default-context, vrf"; + container stat-peers { + description + "Statistics for MSDP Peers"; + list stat-peer { + key "peer-address"; + description + "MSDP Peer Statistics Info"; + leaf peer-address { + type inet:ip-address-no-zone; + description + "Peer Address"; + } + uses MSDP-STATS-PEER-BAG; + } + } + } + + grouping DEFAULT-CONTEXT { + description + "Common node of active, standby"; + container default-context { + description + "Default Context"; + uses STAT-PEER-TABLE; + uses PEER-TABLE; + uses PEER-SUMMARY-TABLE; + uses SA-CACHE-TABLE; + uses RPF-TABLE; + uses ROUTING-CONTEXT; + uses CACHE-SUMMARY; + uses ALL-SA-CACHE-TABLE; + uses AS-SOURCE-GROUP-SA-CACHE-TABLE; + uses RP-SOURCE-GROUP-SA-CACHE-TABLE; + } + } + + grouping PEER-SUMMARY-TABLE { + description + "Common node of default-context, vrf"; + container peer-summaries { + description + "MSDP Peers summary"; + list peer-summary { + key "peer-address"; + description + "MSDP Peer Summary Info"; + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "Peer Address"; + } + uses MSDP-PEER-SUMM-BAG; + } + } + } + + container msdp { + config false; + description + "MSDP operational data"; + container standby { + description + "Standby Process"; + uses DEFAULT-CONTEXT; + uses PROCESS; + uses VRF-TABLE; + } + container active { + description + "Active Process"; + uses DEFAULT-CONTEXT; + uses PROCESS; + uses VRF-TABLE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper-sub1.yang new file mode 100644 index 000000000..de3317634 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper-sub1.yang @@ -0,0 +1,2864 @@ +submodule Cisco-IOS-XR-mvpn-oper-sub1 { + belongs-to Cisco-IOS-XR-mvpn-oper { + prefix Cisco-IOS-XR-mvpn-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR mvpn package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-09 { + description + "multiple backward compatible additions made. MDT tables, groupings, and leaf changes"; + semver:module-version "2.2.0"; + } + revision 2021-08-17 { + description + "backward compatible addition, in leaf discovery-type was made"; + semver:module-version "2.1.0"; + } + revision 2020-04-02 { + description + "MVPN TreeSID information added."; + semver:module-version "2.0.0"; + } + revision 2019-08-27 { + description + "Providing MVPN information."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pim-seg-leaf-entry { + type enumeration { + enum "i-pmsi" { + value 1; + description + "Intra AS I-PMSI"; + } + enum "inter-as-i-pmsi" { + value 2; + description + "Inter AS I-PMSI"; + } + enum "s-pmsi" { + value 3; + description + "S PMSI"; + } + enum "unsolicited-leaf-ad" { + value 4; + description + "Unsolicited Leaf AD"; + } + enum "unspecified-leaf-ad" { + value 6; + description + "Unspecified Leaf AD"; + } + } + description + "Pim seg leaf entry"; + } + + typedef Pim-seg-entry { + type enumeration { + enum "i-pmsi" { + value 1; + description + "Intra AS I-PMSI"; + } + enum "s-pmsi" { + value 3; + description + "S PMSI"; + } + enum "lib-mvpn-csc" { + value 8; + description + "PIM LIB MVPN CSC"; + } + } + description + "Pim seg entry"; + } + + typedef Pim-mgmt-mvpn-id { + type enumeration { + enum "pim-mgmt-mvpn-id-type-mldp-part-mp2mp" { + value 0; + description + "MLDP Partitioned Multipoint-to-Multipoint"; + } + enum "pim-mgmt-mvpn-id-type-mldp-part-p2mp" { + value 1; + description + "MLDP Partitioned Point-to-Multipoint"; + } + enum "pim-mgmt-mvpn-id-type-mldp-data-mdt" { + value 2; + description + "MLDP Data MDT"; + } + enum "pim-mgmt-mvpn-id-type-mldp-ctrl" { + value 3; + description + "MLDP Control"; + } + enum "pim-mgmt-mvpn-id-type-mldp-part-bidir-mp2mp" { + value 4; + description + "MLDP Partitioned Bidirectional + Multipoint-to-Multipoint"; + } + enum "pim-mgmt-mvpn-id-type-mldp-def" { + value 5; + description + "MLDP Default"; + } + enum "p2mp-rsvp-te-default" { + value 6; + description + "RSVP TE Default"; + } + enum "p2mp-rsvp-te-partitioned" { + value 7; + description + "RSVP TE Partitioned"; + } + enum "p2mp-rsvp-te-data-mdt" { + value 8; + description + "RSVP TE Data MDT"; + } + enum "ingress-replication-default" { + value 9; + description + "IR Default"; + } + enum "ingress-replication-partitioned" { + value 10; + description + "IR Partitioned"; + } + enum "ingress-replication-data-mdt" { + value 11; + description + "IR Data MDT"; + } + enum "ingress-replication-control" { + value 12; + description + "IR Control"; + } + enum "segment-mdt" { + value 13; + description + "Segment MDT"; + } + } + description + "MVPN ID type"; + } + + typedef Pim-bag-mdt { + type enumeration { + enum "in-band" { + value 0; + description + "Inband type MDT"; + } + enum "gre" { + value 1; + description + "GRE type MDT"; + } + enum "mldp" { + value 2; + description + "MLDP type MDT"; + } + enum "p2mp" { + value 3; + description + "P2MP type MDT"; + } + enum "ir" { + value 4; + description + "IR type MDT"; + } + enum "vxlan" { + value 5; + description + "VXLAN type MDT"; + } + enum "gin-band" { + value 6; + description + "GInband type MDT"; + } + enum "tree-sid" { + value 7; + description + "Tree-SID type MDT"; + } + } + description + "MDT type"; + } + + typedef Pim-bag-mldp-opaque { + type enumeration { + enum "opaque-global-identifier" { + value 1; + description + "Global-ID Opaque Type"; + } + enum "opaque-vpn-identifier" { + value 2; + description + "VPN-ID Opaque Type"; + } + } + description + "MLDP Opaque type"; + } + + typedef Pim-bag-mldp-tree { + type enumeration { + enum "p2m-ptree" { + value 6; + description + "MLDP P2MP Tree"; + } + enum "mp2m-ptree" { + value 8; + description + "MLDP MP2MP Tree"; + } + } + description + "MLDP Tree type"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Pim-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + grouping PIM-TIMESPEC-BAG { + description + "PIM timespec bag"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds part of time value"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds part of time value"; + } + } + + grouping PIM-LEAF-AD-BAG { + description + "PIM Leaf AD information"; + container leg-created { + description + "Outgoing leg creation time"; + uses PIM-TIMESPEC-BAG; + } + leaf originating-router { + type inet:ipv4-address; + description + "Originating Router"; + } + leaf label { + type uint32; + description + "MPLS Label"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + } + + grouping PIM-SEGMENT-DB-BAG { + description + "Segment database information"; + container source-address { + description + "Source Address"; + uses PIM-ADDRTYPE; + } + container group-address { + description + "Group Address"; + uses PIM-ADDRTYPE; + } + container upstream-core-context { + description + "Upstream Core Context"; + uses PIM-DATAMDT-CORETYPE; + } + container downstream-core-context { + description + "Downstream Core Context"; + uses PIM-DATAMDT-CORETYPE; + } + container old-upstream-core-context { + description + "Old Upstream Core Context"; + uses PIM-DATAMDT-CORETYPE; + } + container segment-created { + description + "Segment entry creation time"; + uses PIM-TIMESPEC-BAG; + } + container spmsi-rx { + description + "SPMSI entry creation time"; + uses PIM-TIMESPEC-BAG; + } + container spmsi-sent { + description + "SPMSI sent time"; + uses PIM-TIMESPEC-BAG; + } + leaf segmented-entry-type { + type Pim-seg-entry; + description + "Segmented Entry Type"; + } + leaf segmented-entry-leaf-type { + type Pim-seg-leaf-entry; + description + "Segmented Entry Leaf Type"; + } + leaf source-address-length { + type uint32; + description + "Source Address Length"; + } + leaf group-address-length { + type uint32; + description + "Group Address Length"; + } + leaf pe-address { + type inet:ipv4-address; + description + "PE Address"; + } + leaf tree-type { + type uint8; + description + "Tree Type"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF Name"; + } + leaf fec-opaque-type { + type uint8; + description + "FEC Opaque Type"; + } + leaf fec-opaque-length { + type uint16; + description + "FEC Opaque Length"; + } + leaf fec-opaque-value { + type yang:hex-string; + description + "FEC Opaque Value"; + } + leaf rpf-neighbor { + type inet:ipv4-address; + description + "RPF Neighbor Address"; + } + leaf old-rpf-neighbor { + type inet:ipv4-address; + description + "Previous RPF Neighbor Address"; + } + leaf chkpt-object-identifier { + type uint32; + description + "Checkpoint Object ID"; + } + leaf source-route-distinguisher { + type yang:hex-string; + description + "Source RD value"; + } + leaf entry-type { + type uint8; + description + "Segmented Entry Type"; + } + leaf segmented-id { + type uint32; + description + "Segmented ID"; + } + leaf old-segmented-id { + type uint32; + description + "Old Segmented ID"; + } + leaf is-s-pmsi-originated { + type boolean; + description + "Is S PMSI Originated"; + } + leaf is-s-pmsi-sent { + type boolean; + description + "Is S PMSI sent"; + } + leaf is-i-pmsi-sent { + type boolean; + description + "Is I PMSI sent"; + } + leaf is-s-pmsi-received { + type boolean; + description + "Is S PMSI Received"; + } + leaf is-i-pmsi-received { + type boolean; + description + "Is I PMSI Received"; + } + leaf is-unsol-leaf-ad-sent { + type boolean; + description + "Is Unsolicited Leaf AD sent"; + } + leaf is-leaf-ad-sent { + type boolean; + description + "Is Leaf AD sent"; + } + leaf is-upstream-tree-added { + type boolean; + description + "Is Upstream Tree added"; + } + leaf is-downstream-tree-added { + type boolean; + description + "Is Downstream Tree added"; + } + leaf downstream-core-type { + type boolean; + description + "Downstream Core Tree Type"; + } + leaf upstream-core-type { + type boolean; + description + "UpStream Core Tree Type"; + } + leaf route-distinguisher { + type yang:hex-string; + description + "RD value"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf stale { + type boolean; + description + "Stale"; + } + list lead-ad { + description + "Leaf AD list"; + uses PIM-LEAF-AD-BAG; + } + } + + grouping PIM-MVPN-ID-INFO { + description + "MVPN ID information"; + leaf mvpn-identifier-xr { + type uint32; + description + "MVPN ID"; + } + leaf mvpn-identifier-type { + type Pim-mgmt-mvpn-id; + description + "MVPN ID type"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf stale { + type boolean; + description + "TRUE if MVPN ID is stale"; + } + leaf chkpt-object-identifier { + type uint32; + description + "Checkpoint Object ID"; + } + } + + grouping PIM-MDT-DATA-PFX-BAG { + description + "PIM Data MDT prefix bag"; + container mdt-data-prefix { + description + "Data MDT Prefix"; + uses PIM-ADDRTYPE; + } + container mdt-data-source { + description + "Data MDT Source"; + uses PIM-ADDRTYPE; + } + leaf mdt-maximum-aggregation { + type uint32; + description + "Data MDT max aggregation"; + } + leaf is-mdt-delete-in-progress { + type boolean; + description + "Is the entry being deleted ?"; + } + leaf is-mdt-local { + type boolean; + description + "Is the entry locally assigned ?"; + } + leaf mdt-refcount { + type uint32; + description + "No of cust routes using this MDT prefix"; + } + leaf mdt-decapsulation-refcount { + type uint32; + description + "No of cust routes using this MDT prefix on Decap + PE"; + } + } + + grouping PIM-BGP-SAFI-BAG { + description + "PIM BGP SAFI bag"; + container source { + description + "Source address"; + uses PIM-ADDRTYPE; + } + container group { + description + "Group address"; + uses PIM-ADDRTYPE; + } + container next-hop { + description + "Next hop address"; + uses PIM-ADDRTYPE; + } + leaf route-distinguisher { + type string { + length "0..256"; + } + description + "Router ID"; + } + leaf extranet-path-count { + type uint32; + description + "Count of dependent extranet paths"; + } + leaf is-bgp-added { + type boolean; + description + "SAFI learnt from BGP"; + } + } + + grouping PIM-PE-BAG { + description + "PIM MVPN PE"; + leaf ppmp-label { + type uint32; + description + "PPMP Label"; + } + leaf mvpn-identifier { + type uint32; + description + "MVPN ID"; + } + leaf ms-pmsi-head-lsm-identifier { + type uint32; + description + "MS PMSI Head LSM Identifier"; + } + leaf bidir-pmsi-head-lsm-identifier { + type uint32; + description + "Bidir PMSI Head LSM Identifier"; + } + leaf s-pmsi-count { + type uint32; + description + "S PMSI Count"; + } + leaf bidir-pmsi { + type string { + length "0..70"; + } + description + "Bidir PMSI String"; + } + leaf remote-bidir-pmsi { + type string { + length "0..70"; + } + description + "Remote Bidir PMSI String"; + } + leaf i-pmsi { + type string { + length "0..70"; + } + description + "I PMSI String"; + } + leaf i-pmsi-v6 { + type string { + length "0..70"; + } + description + "I PMSI v6 String"; + } + leaf ms-pmsi { + type string { + length "0..70"; + } + description + "MS PMSI String"; + } + leaf bsr-pmsi { + type string { + length "0..70"; + } + description + "BSR PMSI"; + } + leaf auto-rp-discovery-pmsi { + type string { + length "0..70"; + } + description + "AutoRP Discovery PMSI"; + } + leaf auto-rp-announce-pmsi { + type string { + length "0..70"; + } + description + "AutoRP Announce PMSI"; + } + leaf route-distinguisher { + type yang:hex-string; + description + "RD value"; + } + leaf ms-pmsi-state { + type uint32; + description + "MS PMSI State"; + } + leaf rib-head-lsm-identifier { + type uint32; + description + "RIB Head LSM ID"; + } + leaf shared-count { + type uint32; + description + "Shared Count to this Ingress PE"; + } + leaf source-count { + type uint32; + description + "Source count to this Ingress PE"; + } + leaf dm-source-count { + type uint32; + description + "DM Source count to this Ingress PE"; + } + leaf def-md-source-count { + type uint32; + description + "Def MD Source count to this Ingress PE"; + } + leaf srp2m-policy-count { + type uint32; + description + "SR P2MP Policy count to this Ingress PE"; + } + leaf gre-bidir-rp-count { + type uint32; + description + "GRE Bidir RP count to this Ingress PE"; + } + leaf mpls-bidir-rp-count { + type uint32; + description + "MPLS Bidir RP count to this Ingress PE"; + } + leaf number-of-sources { + type uint32; + description + "Source Count"; + } + leaf number-of-rp { + type uint32; + description + "RP count"; + } + leaf number-of-bidir-rp { + type uint32; + description + "Bidir RP Count"; + } + leaf rpf-identifier { + type uint32; + description + "RPF ID"; + } + leaf remote-rpf-identifier { + type uint32; + description + "Remote RPF ID"; + } + leaf bidir-rpf-identifier { + type uint32; + description + "Bidir RPF ID"; + } + leaf remote-bidir-rpf-identifier { + type uint32; + description + "Remote Bidir RPF ID"; + } + leaf checkpoint-object-identifier { + type uint32; + description + "Checkpoint Object ID"; + } + leaf mvpn-label { + type uint32; + description + "IR MVPN Tail Label"; + } + leaf valid-rd-present { + type boolean; + description + "RD is valid"; + } + leaf tail-identifier-tree-added { + type boolean; + description + "Tail ID tree added"; + } + leaf bidir-tail-identifier-tree-added { + type boolean; + description + "Bidir Tail ID Tree Added"; + } + leaf remote-bidir-tail-identifier-tree-added { + type boolean; + description + "Remote Bidir Tail ID Tree added"; + } + leaf tail-rd-tree-added { + type boolean; + description + "Tail RD tree added"; + } + leaf tail-part-rsvpte-added { + type boolean; + description + "Tail Part RSVP TE added"; + } + leaf tail-def-rsvpte-added { + type boolean; + description + "Tail Def RSVP TE added"; + } + leaf te-leg-added { + type boolean; + description + "TE Leg Added"; + } + leaf head-te-ctrl-leg-added { + type boolean; + description + "Head RSVP TE Ctrl Leg added"; + } + leaf tail-part-ir-added { + type boolean; + description + "Tail Part IR added"; + } + leaf head-ir-def-leg-added { + type boolean; + description + "Head IR Def Leg Added"; + } + leaf head-ir-ctrl-leg-added { + type boolean; + description + "Head IR Ctrl Leg added"; + } + leaf head-ir-part-leg-added { + type boolean; + description + "Head IR Part Leg added"; + } + leaf tree-sid-leaf-added { + type boolean; + description + "Tree-SID Default/Partition Leaf Added"; + } + leaf tree-sid-default-egress-added { + type boolean; + description + "Tree-SID Default Egress Added"; + } + leaf tree-sid-partition-egress-added { + type boolean; + description + "Tree-SID Partition Egress Added"; + } + leaf tree-sid-ctrl-leaf-added { + type boolean; + description + "Tree-SID Ctrl Leaf added"; + } + leaf bgp-bidir-pmsi { + type boolean; + description + "BGP Bidir PMSI"; + } + leaf remote-bgp-bidir-pmsi { + type boolean; + description + "Remote BGP Bidir PMSI"; + } + leaf bgp-i-pmsi { + type boolean; + description + "BGP I PMSI"; + } + leaf bgp-i-pmsi-v6 { + type boolean; + description + "BGP I PMSI v6"; + } + leaf i-pmsi-leaf-ad { + type boolean; + description + "I PMSI LEAF AD"; + } + leaf bgp-ms-pmsi { + type boolean; + description + "BGP MS PMSI"; + } + leaf ms-pmsi-leaf-ad { + type boolean; + description + "MS PMSI LEAF AD"; + } + leaf ctrl-bsr-leaf-ad { + type boolean; + description + "CTRL BSR LEAF AD"; + } + leaf ctrl-auto-rp-ann-leaf-ad { + type boolean; + description + "CTRL AUTO RP ANN LEAF AD"; + } + leaf ctrl-auto-rp-disc-leaf-ad { + type boolean; + description + "CTRL AUTO RP DISC LEAF AD"; + } + } + + grouping PIM-RELAY-BAG { + description + "PIM Relay"; + leaf relay-vrf-name { + type string { + length "0..33"; + } + description + "Relay VRF name"; + } + leaf pass-through { + type boolean; + description + "Relay Mode"; + } + } + + grouping PIM-ANYCAST-RP-ENTRY { + description + "PIM Anycast RP entry"; + container prefix { + description + "Anycast-RP Range Prefix"; + uses PIM-ADDRTYPE; + } + leaf prefix-length { + type uint8; + description + "Anycast-RP Range Prefix Length"; + } + leaf ancast-rp-marked { + type boolean; + description + "Anycast-RP Range marked"; + } + } + + grouping PIM-RT-EXTCOMM { + description + "PIM Route-target entry"; + leaf route-target { + type yang:hex-string; + description + "Route Target Extended community value"; + } + leaf configured { + type boolean; + description + "Configured Route Target"; + } + leaf anycast-rp { + type boolean; + description + "Anycast-RP Group"; + } + leaf anycast-rp-marked { + type boolean; + description + "Anycast-RP Group marked"; + } + leaf update-pending { + type boolean; + description + "Update Pending to BGP"; + } + leaf bgp-auto-discovery { + type boolean; + description + "BGP Auto Discovery"; + } + leaf segment-border { + type boolean; + description + "Segment Border"; + } + } + + grouping PIM-TABLE-CTX-BAG { + description + "PIM Table context"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf table-name { + type string; + description + "Table name"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf is-active { + type boolean; + description + "Active status"; + } + leaf is-ital-registration-done { + type boolean; + description + "ITAL reg status"; + } + leaf is-rib-registration-done { + type boolean; + description + "RIB reg status"; + } + leaf is-rib-convergence-received { + type boolean; + description + "RIB Convergence receive status"; + } + leaf is-rib-convergence { + type boolean; + description + "RIB Convergence status"; + } + leaf rpf-registrations { + type uint32; + description + "RPF Registration count"; + } + } + + grouping PIM-CONTEXT-BAG { + description + "PIM Context bag"; + container remote-default-group { + description + "Remote Default Group"; + uses PIM-ADDRTYPE; + } + container rpf-default-table { + description + "RPF Default Table"; + uses PIM-TABLE-CTX-BAG; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf murib-id { + type uint32; + description + "MURIB ID"; + } + leaf rpf-id { + type uint32; + description + "RPF ID"; + } + leaf remote-table-id { + type uint32; + description + "Remote Table ID"; + } + leaf mdt-default-group { + type inet:ipv4-address; + description + "MDT Default group"; + } + leaf mdt-source { + type inet:ipv4-address; + description + "MDT source"; + } + leaf mdt-source-interface { + type string; + description + "MDT Source Interface Name"; + } + leaf mdt-interface { + type xr:Interface-name; + description + "MDT handle"; + } + leaf mdt-gre-rpf-identifier { + type uint32; + description + "GRE-MDT RPF Identifier"; + } + leaf mdt-gre-remote-rpf-identifier { + type uint32; + description + "GRE-MDT Remote RPF Identifier"; + } + leaf is-unicast-rib-registration { + type boolean; + description + "Ucast RIB Registration"; + } + leaf is-multicast-rib-registration { + type boolean; + description + "Mcast RIB Registration"; + } + leaf is-active { + type boolean; + description + "Active"; + } + leaf is-active-ital { + type boolean; + description + "Active ITAL"; + } + leaf is-mrib-register { + type boolean; + description + "MRIB Register"; + } + leaf is-mdt-owner { + type boolean; + description + "MDT Owner"; + } + leaf is-routing-enabled { + type boolean; + description + "Routing Enabled"; + } + leaf is-socket-add-required { + type boolean; + description + "VRF required on Socket"; + } + leaf is-socket-added { + type boolean; + description + "VRF added on Socket"; + } + leaf is-lpts-socket-add-required { + type boolean; + description + "VRF LPTS filter required on Socket"; + } + leaf is-lpts-socket-added { + type boolean; + description + "VRF LPTS filter added on Socket"; + } + leaf is-udp-socket-add-required { + type boolean; + description + "VRF added on UDP Socket"; + } + leaf is-udp-socket-added { + type boolean; + description + "VRF added on UDP Socket"; + } + leaf is-udp-socket-bind-required { + type boolean; + description + "VRF bind required on UDP Socket"; + } + leaf is-udp-socket-bind { + type boolean; + description + "VRF bound on UDP Socket"; + } + leaf is-register-injection-socket-add-required { + type boolean; + description + "VRF required on Register Injection Socket"; + } + leaf is-register-injection-socket-added { + type boolean; + description + "VRF added on Register Injection Socket"; + } + leaf is-register-injection-lpts-socket-add-required { + type boolean; + description + "VRF LPTS filter required on Register Injection + Socket"; + } + leaf is-register-injection-lpts-socket-added { + type boolean; + description + "VRF LPTS filter added on Register Injection + Socket"; + } + leaf is-m-host-publish-pending { + type boolean; + description + "Publish pending for MHost Default interface"; + } + leaf mhost-interface { + type xr:Interface-name; + description + "MHost handle"; + } + leaf mhost-default-interface-config { + type string; + description + "Configured Mhost Defint"; + } + leaf mdt-mtu { + type uint32; + description + "MDT MTU"; + } + leaf maximum-mdt-aggregation { + type uint32; + description + "MDT max aggregation"; + } + leaf mdt-data-switchover-interval { + type uint32; + description + "Data MDT Switchover interval"; + } + leaf mdt-data-announce-interval { + type uint32; + description + "Data MDT Announce interval"; + } + leaf non-default-vrf-count-on-socket { + type uint32; + description + "Count of non-default vrfs on raw socket"; + } + leaf neighbor-filter-name { + type string; + description + "Neighbor Filter Name"; + } + leaf mdt-neighbor-filter-name { + type string; + description + "MDT Neighbor Filter Name"; + } + leaf allow-rp-configured { + type boolean; + description + "Allow RP Configured"; + } + leaf allow-rp-group-list { + type string { + length "0..64"; + } + description + "Allow RP Group-List ACL Name"; + } + leaf allow-rp-rp-list { + type string { + length "0..64"; + } + description + "Allow RP RP-list ACL Name"; + } + leaf sg-expiry-timer-configured { + type boolean; + description + "S,G Expiry Timer Configured"; + } + leaf sg-expiry-time { + type uint16; + units "second"; + description + "S,G Expiry Time Configured, in seconds"; + } + leaf sg-expiry-timer-sg-list { + type string { + length "0..64"; + } + description + "S,G expiry timer ACL name"; + } + leaf mldp-mdt-name { + type string; + description + "MLDP MDT Name"; + } + leaf mldp-mdt-interface { + type xr:Interface-name; + description + "MLDP MDT handle"; + } + leaf mldp-mdt-mtu { + type uint32; + description + "MLDP MDT MTU"; + } + leaf mldp-maximum-mdt-aggregation { + type uint32; + description + "MLDP MDT max aggregation"; + } + leaf mldp-mdt-data-switchover-interval { + type uint32; + description + "MLDP Data MDT Switchover interval"; + } + leaf mldp-mdt-data-announce-interval { + type uint32; + description + "MLDP Data MDT Announce interval"; + } + leaf mldp-mdt-rpf-identifier { + type uint32; + description + "MLDP RPF-ID"; + } + leaf mldp-mdt-remote-rpf-identifier { + type uint32; + description + "MLDP Remote RPF-ID"; + } + leaf is-create-mldp-mdt-interface { + type boolean; + description + "Create MLDP MDT interface"; + } + leaf is-mldp-mdt-owner { + type boolean; + description + "MLDP MDT Owner"; + } + leaf mldp-root-count { + type uint32; + description + "MLDP Root count"; + } + leaf mldp-head-lsm-identifier { + type uint32; + description + "MLDP Head LSM-ID"; + } + leaf mldp-remote-head-lsm-identifier { + type uint32; + description + "MLDP Remote Head LSM-ID"; + } + leaf organization-unique-identifier { + type uint32; + description + "OUI for VPN-ID"; + } + leaf vpn-index { + type uint32; + description + "VPN Index"; + } + leaf mldp-partitioned-mdt-configured { + type boolean; + description + "MLDP Partitioned MDT"; + } + leaf mldp-remote-partitioned-mdt-configured { + type boolean; + description + "MLDP Remote Partitioned MDT"; + } + leaf mldp-partioned-mp2m-ptree { + type boolean; + description + "MP2MP Partitioned MDT tree"; + } + leaf mldp-partitioned-head-lsm-identifier { + type uint32; + description + "Partitioned MDT Head LSM-ID"; + } + leaf mldp-head-local-label { + type uint32; + description + "Partitioned MDT Head local label"; + } + leaf mldp-partitioned-mdt-identifier { + type uint32; + description + "MLDP Partitioned MDT Identifier"; + } + leaf bgp-auto-discovery-configured { + type boolean; + description + "BGP Auto-Discovery configured"; + } + leaf suppress-pim-data-mdt-tlv { + type boolean; + description + "Suppress PIM Data-MDT TLV Announcements"; + } + leaf inter-autonomous-system-enabled { + type boolean; + description + "Inter-AS Enabled"; + } + leaf bgp-source-active-announce { + type boolean; + description + "Send BGP Source-Active Announcements"; + } + leaf bgp-i-pmsi-added { + type boolean; + description + "BGP I-PMSI Added"; + } + leaf mldp-bsr-control-tree-added { + type boolean; + description + "MLDP BSR Control tree added"; + } + leaf mldp-auto-rp-discovery-tree-added { + type boolean; + description + "MLDP Autorp Discovery Control tree added"; + } + leaf mldp-auto-rp-announce-tree-added { + type boolean; + description + "MLDP Autorp Announce Control tree added"; + } + leaf bgp-auto-discovery-type { + type uint32; + description + "BGP Auto Discovery Type"; + } + leaf mdt-partitioned-mdt-control-identifier { + type uint32; + description + "Partitioned MDT Control Identifier"; + } + leaf mdt-partitioned-ir-control-identifier { + type uint32; + description + "Partitioned IR MDT Control Identifier"; + } + leaf mldp-control-head-lsm-identifier { + type uint32; + description + "MLDP MVPN Identifier"; + } + leaf umh { + type boolean; + description + "Join UMH Core-Tree"; + } + leaf suppress-shared-tree-join { + type boolean; + description + "Suppress Shared-Tree Joins"; + } + leaf rsvp-te-mdt-name { + type string; + description + "RSVP-TE MDT Name"; + } + leaf rsvp-te-mdt-interface { + type xr:Interface-name; + description + "RSVP-TEMDT handle"; + } + leaf rsvp-te-mdt-mtu { + type uint32; + description + "RSVP-TEMDT MTU"; + } + leaf rsvp-te-maximum-mdt-aggregation { + type uint32; + description + "RSVP-TE MDT max aggregation"; + } + leaf rsvp-te-mdt-data-switchover-interval { + type uint32; + description + "RSVP-TE Data MDT Switchover interval"; + } + leaf rsvp-te-mdt-data-announce-interval { + type uint32; + description + "RSVP-TE Data MDT Announce interval"; + } + leaf rsvp-te-mdt-rpf-identifier { + type uint32; + description + "RSVP-TE RPF-ID"; + } + leaf is-create-rsvp-te-mdt-interface { + type boolean; + description + "Create RSVP-TE MDT interface"; + } + leaf is-rsvp-te-mdt-owner { + type boolean; + description + "RSVP-TE MDT Owner"; + } + leaf rsvp-te-mdt-static-p2mp-count { + type uint32; + description + "Number of Static P2MP-TE MDT"; + } + leaf p2mpte-li-drop { + type uint32; + description + "Route LI updates dropped for P2MP"; + } + leaf ir-mdt-name { + type string; + description + "IR MDT Name"; + } + leaf ir-mdt-interface { + type xr:Interface-name; + description + "IRMDT handle"; + } + leaf ir-mdt-mtu { + type uint32; + description + "IRMDT MTU"; + } + leaf ir-maximum-mdt-aggregation { + type uint32; + description + "IR MDT max aggregation"; + } + leaf ir-mdt-data-switchover-interval { + type uint32; + description + "IR Data MDT Switchover interval"; + } + leaf ir-mdt-data-announce-interval { + type uint32; + description + "IR Data MDT Announce interval"; + } + leaf ir-mdt-rpf-identifier { + type uint32; + description + "IR RPF-ID"; + } + leaf ir-mdt-tail-label { + type uint32; + description + "IR Tail Label"; + } + leaf is-create-ir-mdt-interface { + type boolean; + description + "Create IR MDT interface"; + } + leaf is-ir-mdt-owner { + type boolean; + description + "IR MDT Owner"; + } + leaf is-sr-local { + type boolean; + description + "SR Local"; + } + leaf is-sr-remote { + type boolean; + description + "SR Remote"; + } + leaf sr-mdt-name { + type string; + description + "SR MDT Name"; + } + leaf sr-mdt-interface { + type xr:Interface-name; + description + "SRMDT handle"; + } + leaf sr-mdt-mtu { + type uint32; + description + "SRMDT MTU"; + } + leaf sr-maximum-mdt-aggregation { + type uint32; + description + "SR MDT max aggregation"; + } + leaf sr-mdt-data-switchover-interval { + type uint32; + description + "SR Data MDT Switchover interval"; + } + leaf sr-mdt-data-announce-interval { + type uint32; + description + "SR Data MDT Announce interval"; + } + leaf sr-mdt-rpf-identifier { + type uint32; + description + "SR RPF-ID"; + } + leaf sr-mdt-tail-label { + type uint32; + description + "SR Tail Label"; + } + leaf is-create-sr-mdt-interface { + type boolean; + description + "Create SR MDT interface"; + } + leaf is-sr-mdt-owner { + type boolean; + description + "SR MDT Owner"; + } + leaf mdt-partitioned-tree-sid-control-identifier { + type uint32; + description + "Partitioned Tree-SID MDT Control Identifier"; + } + leaf in-b-and-mdt-name { + type string; + description + "Inband MDT Name"; + } + leaf in-b-and-mdt-interface { + type xr:Interface-name; + description + "Inband MDT handle"; + } + leaf in-b-and-mdt-mtu { + type uint32; + description + "Inband MDT MTU"; + } + leaf in-band-maximum-mdt-aggregation { + type uint32; + description + "Inband MDT max aggregation"; + } + leaf in-b-and-mdt-data-switchover-interval { + type uint32; + description + "Inband Data MDT Switchover interval"; + } + leaf in-b-and-mdt-data-announce-interval { + type uint32; + description + "Inband Data MDT Announce interval"; + } + leaf in-b-and-mdt-rpf-identifier { + type uint32; + description + "Inband RPF-ID"; + } + leaf is-create-in-b-and-mdt-interface { + type boolean; + description + "Create Inband MDT interface"; + } + leaf is-in-b-and-mdt-owner { + type boolean; + description + "Inband MDT Owner"; + } + leaf in-band-signaling-local-enabled { + type boolean; + description + "Inband signaling Local enabled"; + } + leaf in-band-signaling-remote-enabled { + type boolean; + description + "Inband signaling Remote enabled"; + } + leaf valid-rd-present { + type boolean; + description + "RD is valid"; + } + leaf stale-rd-present { + type boolean; + description + "RD is stale"; + } + leaf route-distinguisher { + type yang:hex-string; + description + "RD value"; + } + leaf gin-b-and-mdt-name { + type string; + description + "Inband MDT Name"; + } + leaf gin-b-and-mdt-interface { + type xr:Interface-name; + description + "Inband MDT handle"; + } + leaf gin-b-and-mdt-mtu { + type uint32; + description + "Inband MDT MTU"; + } + leaf gin-band-maximum-mdt-aggregation { + type uint32; + description + "Inband MDT max aggregation"; + } + leaf gin-b-and-mdt-data-switchover-interval { + type uint32; + description + "Inband Data MDT Switchover interval"; + } + leaf gin-b-and-mdt-data-announce-interval { + type uint32; + description + "Inband Data MDT Announce interval"; + } + leaf gin-b-and-mdt-rpf-identifier { + type uint32; + description + "Inband RPF-ID"; + } + leaf is-create-gin-b-and-mdt-interface { + type boolean; + description + "Create Inband MDT interface"; + } + leaf is-gin-b-and-mdt-owner { + type boolean; + description + "Inband MDT Owner"; + } + leaf is-pim-nsf-rib-converged { + type boolean; + description + "PIM NSF RIB converged"; + } + leaf is-pim-nsf-rib-converge-received { + type boolean; + description + "PIM NSF RIB converge received"; + } + leaf is-rib-multipath-enabled { + type boolean; + description + "PIM RIB multiplath enabled"; + } + leaf is-rib-multipath-interface-hash { + type boolean; + description + "PIM RIB multipath interface hash"; + } + leaf is-rib-multipath-source-hash { + type boolean; + description + "PIM RIB multipath source based hash"; + } + leaf is-rib-multipath-source-next-hop-hash { + type boolean; + description + "PIM RIB multipath source-nexthop hash"; + } + leaf rump-enabled { + type boolean; + description + "PIM is using MuRIB"; + } + leaf is-create-mdt-interface { + type boolean; + description + "Create MDT interface"; + } + leaf is-auto-rp-listen-enabled { + type boolean; + description + "Auto RP Listen Enabled"; + } + leaf is-all-interface-disable-operation { + type boolean; + description + "PIM all interface disable operation"; + } + leaf is-default-granges { + type boolean; + description + "Default granges"; + } + leaf is-auto-rp-listen-sock-add { + type boolean; + description + "Auto RP listen sock add"; + } + leaf is-redistribution-reset { + type boolean; + description + "Pending redist reset"; + } + leaf redistribution-reset-count { + type uint32; + description + "Redist reset count"; + } + leaf rpf-policy-name { + type string; + description + "RPF topology selection route-policy name"; + } + leaf table-count { + type uint32; + description + "Number of configured Tables"; + } + leaf active-table-count { + type uint32; + description + "Number of active Tables"; + } + leaf anycast-rp-policy-name { + type string; + description + "Anycast-RP Policy Name"; + } + leaf anycast-rp-configured { + type boolean; + description + "Anycast-RP config"; + } + leaf bgp-remote-on { + type boolean; + description + "BGP remote interface status"; + } + leaf bgp-remote-interface-name { + type string; + description + "BGP remote interface name"; + } + leaf bgp-remote-interface { + type xr:Interface-name; + description + "BGP remote interface handle"; + } + leaf bgp-remote-address { + type inet:ipv4-address; + description + "BGP remote interface address"; + } + leaf bgp-remote-state { + type uint32; + description + "BGP remote interface state"; + } + leaf physical-interface-count { + type uint64; + description + "Enabled Physical Interface Count"; + } + leaf virtual-interface-count { + type uint64; + description + "Enabled Virtual Interface Count"; + } + leaf virtual-mlc-interface-name { + type string; + description + "Virtual master line card Interface"; + } + leaf mdt-immediate-switch { + type boolean; + description + "MDT Immediate Switch"; + } + leaf remote-mdt-idb-name { + type string; + description + "Remote MDT Interface Handle Name"; + } + leaf remote-mdt-address { + type inet:ipv4-address; + description + "Remote MDT interface address"; + } + leaf-list mldp-root-address { + type uint32; + description + "MLDP Root addresses"; + } + list export-route-target { + description + "Export Route Targets"; + uses PIM-RT-EXTCOMM; + } + list import-route-target { + description + "Import Route Targets"; + uses PIM-RT-EXTCOMM; + } + list anycast-rp-range { + description + "Anycast-RP Ranges"; + uses PIM-ANYCAST-RP-ENTRY; + } + } + + grouping PIM-MDT-DATA-TREESID-BAG { + description + "PIM Tree-SID bag"; + container mdt-data-core-tree-sid { + description + "Data MDT Tree-SID core"; + uses PIM-TREESID-CORE; + } + container mdt-data-source { + description + "Data MDT Source"; + uses PIM-ADDRTYPE; + } + leaf mdt-name-xr { + type string; + description + "Data MDT Name"; + } + leaf is-mdt-delete-in-progress { + type boolean; + description + "Is the entry being deleted ?"; + } + leaf is-mdt-local { + type boolean; + description + "Is the entry locally assigned ?"; + } + leaf mdt-refcount { + type uint32; + description + "No of cust routes using this MDT prefix"; + } + leaf mdt-decapsulation-refcount { + type uint32; + description + "No of cust routes using this MDT prefix on Decap + PE"; + } + leaf on-demand-color { + type uint32; + description + "On-Demand Color"; + } + leaf lfa-protected { + type boolean; + description + "Is the entry Tree-SID protected by LFA FRR?"; + } + list receiver-pe { + description + "Receiver PE list"; + uses PIM-MDT-DATA-LEG-BAG; + } + } + + grouping PIM-MDT-DATA-IR-BAG { + description + "PIM IR bag"; + container mdt-data-core-ir { + description + "Data MDT IR core"; + uses PIM-IR-CORE; + } + container mdt-data-source { + description + "Data MDT Source"; + uses PIM-ADDRTYPE; + } + leaf is-mdt-delete-in-progress { + type boolean; + description + "Is the entry being deleted ?"; + } + leaf is-mdt-local { + type boolean; + description + "Is the entry locally assigned ?"; + } + leaf mdt-refcount { + type uint32; + description + "No of cust routes using this MDT prefix"; + } + leaf mdt-decapsulation-refcount { + type uint32; + description + "No of cust routes using this MDT prefix on Decap + PE"; + } + leaf local-label { + type uint32; + description + "Local Label"; + } + list receiver-pe { + description + "Receiver PE list"; + uses PIM-MDT-DATA-LEG-BAG; + } + } + + grouping PIM-P2MPTE-CORE { + description + "PIM - P2MPTE core"; + leaf tunnel-type { + type uint32; + description + "Tunnel Type"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel Identifier"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "Extended Tunnel ID"; + } + leaf core-id { + type uint32; + description + "Core ID"; + } + leaf if-handle { + type uint32; + description + "Interface Handle"; + } + leaf tunnel-state { + type boolean; + description + "Tunnel State"; + } + } + + grouping PIM-P2MPTE-MDT-TUNNEL-DB-BAG { + description + "PIM P2MP-TE MDT TUNNEL DB bag"; + container mdt-default-p2mpte-core { + description + "Default MDT P2MPTE core"; + uses PIM-P2MPTE-CORE; + } + container default-mdt-source { + description + "Default MDT Source"; + uses PIM-ADDRTYPE; + } + container mdt-partition-p2mpte-core { + description + "Partitioned MDT P2MPTE core"; + uses PIM-P2MPTE-CORE; + } + container part-mdt-source { + description + "Partitioned MDT Source"; + uses PIM-ADDRTYPE; + } + container mdt-control-p2mpte-core { + description + "Cntrl IR core"; + uses PIM-P2MPTE-CORE; + } + leaf ctrl-tree-type { + type uint32; + description + "Ctrl Tree Type"; + } + leaf mdt-type { + type uint32; + description + "MDT Type"; + } + list def-pe { + description + "Default MDT PE list"; + uses PIM-P2MPTE-MDT-DATA-LEG-BAG; + } + list part-pe { + description + "Partitioned MDT PE list"; + uses PIM-P2MPTE-MDT-DATA-LEG-BAG; + } + list ctrl-pe { + description + "Ctrl PE list"; + uses PIM-P2MPTE-MDT-DATA-LEG-BAG; + } + } + + grouping PIM-MDT-CACHE-LEAF-AD-BAG { + description + "PIM MDT CACHE LEAF AD LEGS"; + leaf lead-ad-originator { + type inet:ipv4-address; + description + "Leaf AD Originator"; + } + } + + grouping PIM-GRE-CORE { + description + "PIM - GRE core"; + leaf bgp-auto-discovery-remote-tunnel-type { + type uint32; + description + "Remote tunnel type"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 Addr"; + } + } + + grouping PIM-DATAMDT-CORETYPE { + description + "PIM DATAMDT CORETYPE"; + container core-pim { + when "../mdt-type = 'gre'" { + description + "../MDTType = 'GRE'"; + } + description + "PIM - GRE core"; + uses PIM-GRE-CORE; + } + container core-mldp { + when "../mdt-type = 'mldp'" { + description + "../MDTType = 'MLDP'"; + } + description + "PIM - MLDP core"; + uses PIM-MLDP-CORE; + } + container core-identifier-p2mp { + when "../mdt-type = 'p2mp'" { + description + "../MDTType = 'P2MP'"; + } + description + "Core Identifier for RSVPTE MDT"; + uses PIM-RSVPTE-CORE; + } + container core-identifier-ir { + when "../mdt-type = 'ir'" { + description + "../MDTType = 'IR'"; + } + description + "Core Identifier for IR MDT"; + uses PIM-IR-CORE; + } + container core-identifier-tree-sid { + when "../mdt-type = 'tree-sid'" { + description + "../MDTType = 'TreeSID'"; + } + description + "Core Identifier for Tree-SID MDT"; + uses PIM-TREESID-CORE; + } + leaf mdt-type { + type Pim-bag-mdt; + description + "MDTType"; + } + leaf core-identifier-inband { + when "../mdt-type = 'in-band'" { + description + "../MDTType = 'InBand'"; + } + type uint32; + description + "Core Identifier for Inband MDT"; + } + } + + grouping PIM-MDT-CACHE-BAG { + description + "PIM Data MDT cache"; + container core-context { + description + "Core Context"; + uses PIM-DATAMDT-CORETYPE; + } + container customer-source-address-xr { + description + "Customer Source Address"; + uses PIM-ADDRTYPE; + } + container customer-group-address-xr { + description + "Customer Group Address"; + uses PIM-ADDRTYPE; + } + leaf core-source-address-xr { + type inet:ipv4-address; + description + "Core Source Address"; + } + leaf originator-pe-address { + type inet:ipv4-address; + description + "Originator PE Address"; + } + leaf expires { + type uint64; + units "second"; + description + "Entry expiry in seconds"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf send-count { + type uint32; + description + "Data MDT Join send count"; + } + leaf receive-count { + type uint32; + description + "Data MDT Join receive count"; + } + leaf src-vrf-name { + type string { + length "0..33"; + } + description + "Source VRF NAme"; + } + leaf chkpt-object-identifier { + type uint32; + description + "Checkpoint Object ID"; + } + list receiver-pe { + description + "Receiver PE list"; + uses PIM-MDT-CACHE-LEAF-AD-BAG; + } + } + + grouping PIM-IR-CORE { + description + "PIM - IR core"; + leaf tunnel-type { + type uint32; + description + "Tunnel Type"; + } + leaf label { + type uint32; + description + "MPLS Label"; + } + leaf lsmid { + type uint32; + description + "LSM ID"; + } + } + + grouping PIM-MDT-TUNNEL-DB-BAG { + description + "PIM MDT TUNNEL DB bag"; + container mdt-default-ir-core { + description + "Default MDT IR core"; + uses PIM-IR-CORE; + } + container default-mdt-source { + description + "Default MDT Source"; + uses PIM-ADDRTYPE; + } + container mdt-partition-ir-core { + description + "Partitioned MDT IR core"; + uses PIM-IR-CORE; + } + container part-mdt-source { + description + "Partitioned MDT Source"; + uses PIM-ADDRTYPE; + } + container mdt-control-ir-core { + description + "Cntrl IR core"; + uses PIM-IR-CORE; + } + leaf ctrl-tree-type { + type uint32; + description + "Ctrl Tree Type"; + } + leaf mdt-type { + type uint32; + description + "MDT Type"; + } + list def-pe { + description + "Default MDT PE list"; + uses PIM-MDT-DATA-LEG-BAG; + } + list part-pe { + description + "Partitioned MDT PE list"; + uses PIM-MDT-DATA-LEG-BAG; + } + list ctrl-pe { + description + "Ctrl PE list"; + uses PIM-MDT-DATA-LEG-BAG; + } + } + + grouping PIM-MDT-CACHE-SUMM-BAG { + description + "PIM Data MDT Cache Summary Bag"; + leaf cache-count { + type uint32; + description + "Data MDT Cache count"; + } + } + + grouping PIM-MDT-DATA-LEG-BAG { + description + "PIM MDT DATA LEGS"; + leaf leg-addr { + type inet:ipv4-address; + description + "NH Leg Address"; + } + leaf originator-addr { + type inet:ipv4-address; + description + "Originator Leg Address"; + } + leaf mvpn-label { + type uint32; + description + "MVPN label"; + } + } + + grouping PIM-RSVPTE-CORE { + description + "PIM - RSVPTE core"; + leaf p2mp-identifier { + type uint32; + description + "P2MP ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel Identifier"; + } + leaf extended-tunnel-id { + type inet:ipv4-address; + description + "Extended Tunnel ID"; + } + leaf core-id { + type uint32; + description + "Core ID"; + } + leaf mdt-name { + type string; + description + "Data MDT Name"; + } + } + + grouping PIM-MDT-DATA-RSVPTE-BAG { + description + "PIM RSVP TE bag"; + container mdt-data-core-rsvpte { + description + "Data MDT RSVPTE core"; + uses PIM-RSVPTE-CORE; + } + container mdt-data-source { + description + "Data MDT Source"; + uses PIM-ADDRTYPE; + } + leaf mdt-name-xr { + type string; + description + "Data MDT Name"; + } + leaf is-mdt-delete-in-progress { + type boolean; + description + "Is the entry being deleted ?"; + } + leaf is-mdt-local { + type boolean; + description + "Is the entry locally assigned ?"; + } + leaf mdt-refcount { + type uint32; + description + "No of cust routes using this MDT prefix"; + } + leaf mdt-decapsulation-refcount { + type uint32; + description + "No of cust routes using this MDT prefix on Decap + PE"; + } + list receiver-pe { + description + "Receiver PE list"; + uses PIM-MDT-DATA-LEG-BAG; + } + } + + grouping PIM-P2MPTE-MDT-DATA-LEG-BAG { + description + "PIM P2MPTE/Tree-SID MDT LEGS"; + leaf originator-addr { + type inet:ipv4-address; + description + "Originator Leg Address"; + } + } + + grouping PIM-TREESID-CORE { + description + "PIM - Tree-SID core"; + leaf tree-identifier { + type uint32; + description + "Tree ID"; + } + leaf mdt-name { + type string; + description + "Data MDT Name"; + } + } + + grouping PIM-TREESID-MDT-TUNNEL-DB-BAG { + description + "PIM Tree-SID MDT TUNNEL DB bag"; + container mdt-default-tree-sid-core { + description + "Default MDT Tree-SID"; + uses PIM-TREESID-CORE; + } + container default-mdt-source { + description + "Default MDT Source"; + uses PIM-ADDRTYPE; + } + container mdt-partition-tree-sid-core { + description + "Partitioned MDT Tree-SID core"; + uses PIM-TREESID-CORE; + } + container part-mdt-source { + description + "Partitioned MDT Source"; + uses PIM-ADDRTYPE; + } + container mdt-control-tree-sid-core { + description + "Cntrl Tree-SID core"; + uses PIM-TREESID-CORE; + } + leaf mdt-type { + type uint32; + description + "MDT Type"; + } + leaf tree-sid-color { + type uint32; + description + "On-Demand Color for Tree-SID"; + } + leaf lfa-protected { + type boolean; + description + "LFA Protected Tree-SID"; + } + list def-pe { + description + "Default MDT PE list"; + uses PIM-P2MPTE-MDT-DATA-LEG-BAG; + } + list part-pe { + description + "Partitioned MDT PE list"; + uses PIM-P2MPTE-MDT-DATA-LEG-BAG; + } + list ctrl-pe { + description + "Ctrl PE list"; + uses PIM-P2MPTE-MDT-DATA-LEG-BAG; + } + } + + grouping PIM-MLDP-CORE { + description + "PIM - MLDP core"; + leaf tree-type { + type Pim-bag-mldp-tree; + description + "MLDP Tree Type"; + } + leaf opaque-type { + type Pim-bag-mldp-opaque; + description + "MLDP Opaque Type"; + } + leaf organization-unique-identifier { + type uint32; + description + "OUI for VPN-ID FEC"; + } + leaf vpn-index { + type uint32; + description + "VPN Index"; + } + leaf core-identifier-mldp { + type uint32; + description + "Core Identifier for MLDP MDT"; + } + leaf ingress-lsm-id { + type uint32; + description + "Ingress LSM Identifier for CSC MLDP MDT"; + } + leaf egress-lsm-id { + type uint32; + description + "Egress LSM Identifier for CSC MLDP MDT"; + } + leaf discovery-type { + type uint32; + description + "Discovery Type for MLDP MDT"; + } + leaf discovery-value { + type uint32; + description + "Flex Algo value for MLDP MDT"; + } + leaf mdt-name { + type string; + description + "Data MDT Name"; + } + } + + grouping PIM-MDT-DATA-MLDP-BAG { + description + "PIM Data MDT MLDP bag"; + container mdt-data-core-mldp { + description + "Data MDT MLDP core"; + uses PIM-MLDP-CORE; + } + container mdt-data-source { + description + "Data MDT Source"; + uses PIM-ADDRTYPE; + } + leaf mdt-name-xr { + type string; + description + "Data MDT Name"; + } + leaf mdt-maximum-aggregation { + type uint32; + description + "Data MDT max aggregation"; + } + leaf is-mdt-delete-in-progress { + type boolean; + description + "Is the entry being deleted ?"; + } + leaf is-mdt-local { + type boolean; + description + "Is the entry locally assigned ?"; + } + leaf mdt-refcount { + type uint32; + description + "No of cust routes using this MDT prefix"; + } + leaf mdt-decapsulation-refcount { + type uint32; + description + "No of cust routes using this MDT prefix on Decap + PE"; + } + leaf mldp-identifier { + type uint32; + description + "MLDP LSM-ID"; + } + } + + grouping PIM-SRP2MP-CONFIG-BAG { + description + "PIM SRP2MP CONFIG bag"; + container group { + description + "Group"; + uses PIM-ADDRTYPE; + } + container source { + description + "Source"; + uses PIM-ADDRTYPE; + } + container group-mask { + description + "Group Mask"; + uses PIM-ADDRTYPE; + } + container source-mask { + description + "Source Mask"; + uses PIM-ADDRTYPE; + } + leaf group-count { + type uint32; + description + "Group Count"; + } + leaf source-count { + type uint32; + description + "Source Count"; + } + } + + grouping PIM-ADDRTYPE { + description + "PIM ADDRTYPE"; + leaf af-name { + type Pim-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Addr"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Addr"; + } + } + + grouping PIM-SRP2MP-MDT-TUNNEL-DB-BAG { + description + "PIM SRP2MP MDT TUNNEL DB bag"; + container ingress-node-address { + description + "Ingress Node address"; + uses PIM-ADDRTYPE; + } + leaf policy-name-xr { + type string { + length "0..256"; + } + description + "Policy Name"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "Vrf Name"; + } + leaf lsm-id { + type uint32; + description + "LSM id"; + } + leaf role { + type uint32; + description + "Role"; + } + leaf policy-stale { + type boolean; + description + "Policy Stale"; + } + leaf xtc-update { + type boolean; + description + "XTC Update"; + } + leaf config { + type boolean; + description + "Config"; + } + list static-config { + description + "Static Config List"; + uses PIM-SRP2MP-CONFIG-BAG; + } + } + + grouping PIM-MDT-INTERFACE-BAG { + description + "PIM MDT interface"; + leaf mdt-group-address { + type inet:ipv4-address; + description + "MDT Group Address"; + } + leaf pim-interface-name { + type string; + description + "Interface Name"; + } + leaf source-name { + type string; + description + "Source Name"; + } + leaf vrf-table-name { + type string { + length "0..33"; + } + description + "Vrf Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper.yang new file mode 100644 index 000000000..e7c5dc648 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-mvpn-oper.yang @@ -0,0 +1,1027 @@ +module Cisco-IOS-XR-mvpn-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-mvpn-oper"; + prefix mvpn-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-mvpn-oper-sub1 { + revision-date 2021-12-09; + } + + 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 mvpn package operational data. + + This module contains definitions + for the following management objects: + mvpn: MVPN operational data + ipv6-mvpn: IPv6 MVPN operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-09 { + description + "multiple backward compatible additions made. MDT tables, groupings, and leaf changes"; + semver:module-version "2.2.0"; + } + revision 2021-08-17 { + description + "backward compatible addition, in leaf discovery-type was made"; + semver:module-version "2.1.0"; + } + revision 2020-04-02 { + description + "MVPN TreeSID information added."; + semver:module-version "2.0.0"; + } + revision 2019-08-27 { + description + "Providing MVPN information."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pim-mldp-opaque { + type enumeration { + enum "mldp-global-identifier" { + value 1; + description + "Opaque Global Identifier"; + } + enum "mldpvpn-identifier" { + value 2; + description + "Opaque VPN Identifier"; + } + } + description + "Pim mldp opaque"; + } + + typedef Pim-mdt-mldp { + type enumeration { + enum "mldpp2mp" { + value 6; + description + "P2MP Tree"; + } + enum "mldpmp2mp" { + value 8; + description + "MP2MP Tree"; + } + } + description + "Pim mdt mldp"; + } + + typedef Mdt-core { + type enumeration { + enum "inband" { + value 0; + description + "Inband MDT Type"; + } + enum "gre" { + value 1; + description + "GRE MDT Type"; + } + enum "mldp" { + value 2; + description + "MLDP MDT Type"; + } + enum "rsvp-te" { + value 3; + description + "RSVP_TE MDT Type"; + } + enum "ir" { + value 4; + description + "IR MDT Type"; + } + enum "vxlan" { + value 5; + description + "VXLAN MDT Type"; + } + enum "g-inband" { + value 6; + description + "G_Inband MDT Type"; + } + enum "sr-p2mp" { + value 7; + description + "SR_P2MP MDT Type"; + } + enum "max" { + value 8; + description + "MAX MDT Type"; + } + } + description + "Mdt core"; + } + + typedef Route-distinguisher { + type string; + description + "Route distinguisher"; + } + + grouping LOCAL-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container local-entries { + description + "PIM MDT mldp local table"; + list local-entry { + key "tree-type opaque-type oui vpn-index core-id"; + description + "PIM MDT mldp local table"; + leaf tree-type { + type Pim-mdt-mldp; + description + "Tree Type"; + } + leaf opaque-type { + type Pim-mldp-opaque; + description + "Opaque Type"; + } + leaf oui { + type uint32; + description + "OUI"; + } + leaf vpn-index { + type uint32; + description + "VPN Index"; + } + leaf core-id { + type uint32; + description + "Core ID"; + } + uses PIM-MDT-DATA-MLDP-BAG; + } + } + } + + grouping AUTO-RP { + description + "Common node of vrf, default-context"; + container auto-rp { + description + "PIM Auto-RP information"; + uses RP-RELAY-TABLE; + } + } + + grouping MDT-CACHE-TABLE { + description + "Common node of vrf, default-context"; + container mdt-caches { + description + "PIM MDT cache"; + list mdt-cache { + key "core-type core-source-address customer-source-address customer-group-address"; + description + "PIM MDT cache information"; + leaf core-type { + type Mdt-core; + description + "MDT Core type"; + } + leaf core-source-address { + type inet:ip-address-no-zone; + description + "Core source IP address"; + } + leaf customer-source-address { + type inet:ip-address-no-zone; + description + "Customer source IP address"; + } + leaf customer-group-address { + type inet:ip-address-no-zone; + description + "Customer group IP address"; + } + uses PIM-MDT-CACHE-BAG; + } + } + } + + grouping LOCAL-ENTRY-NAME-TABLE { + description + "Common node of vrf, default-context"; + container local-entry-names { + description + "PIM MDT Name mldp local table"; + list local-entry-name { + key "mdt-name"; + description + "PIM MDT Name mldp local entry"; + leaf mdt-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Data MDT Name"; + } + uses PIM-MDT-DATA-MLDP-BAG; + } + } + } + + grouping MDT-RSVP-TE-LOCAL-ENTRY-NAME-TABLE { + description + "Common node of vrf, default-context"; + container rsvp-te-local-name-entries { + description + "PIM MDT RSVP-TE local name table"; + list rsvp-te-local-name-entry { + key "mdt-name"; + description + "PIM MDT RSVP-TE local name entry"; + leaf mdt-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Data MDT Name"; + } + uses PIM-MDT-DATA-RSVPTE-BAG; + } + } + } + + grouping MDT-IR-LOCAL-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container ir-local-entries { + description + "PIM MDT ir local table"; + list ir-local-entry { + key "core-id"; + description + "PIM MDT ir local table"; + leaf core-id { + type uint32; + description + "Core ID"; + } + uses PIM-MDT-DATA-IR-BAG; + } + } + } + + grouping MDT-RSVP-TE-CACHE-TABLE { + description + "Common node of vrf, default-context"; + container mdt-rsvp-te-caches { + description + "RSVPTE MDT cache"; + list mdt-rsvp-te-cache { + key "core-source-address customer-source-address customer-group-address"; + description + "RSVPTE MDT cache information"; + leaf core-source-address { + type inet:ip-address-no-zone; + description + "Core source IP address"; + } + leaf customer-source-address { + type inet:ip-address-no-zone; + description + "Customer source IP address"; + } + leaf customer-group-address { + type inet:ip-address-no-zone; + description + "Customer group IP address"; + } + uses PIM-MDT-CACHE-BAG; + } + } + } + + grouping MDT-INTERFACE { + description + "Common node of vrf, default-context"; + container mdt-interface { + description + "MDT interface information"; + uses PIM-MDT-INTERFACE-BAG; + } + } + + grouping MDT-GRE-CACHE-TABLE { + description + "Common node of vrf, default-context"; + container mdt-gre-caches { + description + "GRE MDT cache"; + list mdt-gre-cache { + key "core-source-address customer-source-address customer-group-address"; + description + "GRE MDT cache information"; + leaf core-source-address { + type inet:ip-address-no-zone; + description + "Core source IP address"; + } + leaf customer-source-address { + type inet:ip-address-no-zone; + description + "Customer source IP address"; + } + leaf customer-group-address { + type inet:ip-address-no-zone; + description + "Customer group IP address"; + } + uses PIM-MDT-CACHE-BAG; + } + } + } + + grouping BGP-AF-TABLE { + description + "Common node of vrf, default-context"; + container bgp-afs { + description + "PIM BGP SAFI table"; + list bgp-af { + key "source-address group-address"; + description + "PIM BGP SAFI information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source IP address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group IP address"; + } + uses PIM-BGP-SAFI-BAG; + } + } + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF name"; + container mvpn-sr-p2mp-entries { + description + "MVPN SR P2MP database table"; + list mvpn-sr-p2mp-entry { + key "policy-name"; + description + "MVPN SR P2MP database entry"; + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Policy Name"; + } + uses PIM-SRP2MP-MDT-TUNNEL-DB-BAG; + } + } + container mvpn-database-segment-routing { + description + "MVPN MDT Segment Routing tunnel database"; + uses PIM-TREESID-MDT-TUNNEL-DB-BAG; + } + container mvpn-database-rsvp-te { + description + "MVPN MDT RSVPTE tunnel database"; + uses PIM-P2MPTE-MDT-TUNNEL-DB-BAG; + } + container mvpn-context { + description + "MVPN context information"; + uses PIM-CONTEXT-BAG; + } + container mvpn-pes { + description + "MVPN PE Information"; + list mvpn-pe { + key "pe-prefix"; + description + "MVPN PE Address information"; + leaf pe-prefix { + type inet:ip-address-no-zone; + description + "PE address"; + } + uses PIM-PE-BAG; + } + } + container mvpn-database-ir { + description + "MVPN MDT IR tunnel database"; + uses PIM-MDT-TUNNEL-DB-BAG; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name "; + } + uses MDT-INTERFACE; + uses LOCAL-ENTRY-TABLE; + uses MDT-RSVP-TE-REMOTE-ENTRY-TABLE; + uses MDT-CACHE-SUMMARY; + uses MDT-DATABASE-IR; + uses MDT-GRE-CACHE-TABLE; + uses MDT-IR-REMOTE-ENTRY-TABLE; + uses MDT-SEGMENT-ROUTING-LOCAL-ENTRY-NAME-TABLE; + uses MDT-DATABASE-RSVP-TE; + uses BSR; + uses BGP-AF-TABLE; + uses MDT-RSVP-TE-LOCAL-ENTRY-NAME-TABLE; + uses MDT-RSVP-TE-LOCAL-ENTRY-TABLE; + uses MDT-PREFIX-REMOTE-TABLE; + uses MDT-CACHE-TABLE; + uses MDT-RSVP-TE-CACHE-TABLE; + uses LOCAL-ENTRY-NAME-TABLE; + uses AUTO-RP; + uses MDT-SEGMENT-ROUTING-LOCAL-ENTRY-TABLE; + uses REMOTE-ENTRY-TABLE; + uses MDT-IR-CACHE-TABLE; + uses MDT-SR-P2MP-CACHE-TABLE; + uses PE-TABLE; + uses MDT-SEGMENT-ROUTING-REMOTE-ENTRY-TABLE; + uses MDT-MLDP-CACHE-TABLE; + uses MDT-IR-LOCAL-ENTRY-TABLE; + uses MDT-PREFIX-LOCAL-TABLE; + } + } + } + + grouping BSR { + description + "Common node of vrf, default-context"; + container bsr { + description + "PIM BSR information"; + uses RP-RELAY-TABLE; + } + } + + grouping MDT-IR-CACHE-TABLE { + description + "Common node of vrf, default-context"; + container mdt-ir-caches { + description + "IR MDT cache"; + list mdt-ir-cache { + key "core-source-address customer-source-address customer-group-address"; + description + "IR MDT cache information"; + leaf core-source-address { + type inet:ip-address-no-zone; + description + "Core source IP address"; + } + leaf customer-source-address { + type inet:ip-address-no-zone; + description + "Customer source IP address"; + } + leaf customer-group-address { + type inet:ip-address-no-zone; + description + "Customer group IP address"; + } + uses PIM-MDT-CACHE-BAG; + } + } + } + + grouping MDT-PREFIX-REMOTE-TABLE { + description + "Common node of vrf, default-context"; + container mdt-prefix-remotes { + description + "PIM MDT prefix remote table"; + list mdt-prefix-remote { + key "mdt-prefix"; + description + "PIM MDT prefix information"; + leaf mdt-prefix { + type inet:ip-address-no-zone; + description + "MDT data prefix address"; + } + uses PIM-MDT-DATA-PFX-BAG; + } + } + } + + grouping MDT-DATABASE-RSVP-TE { + description + "Common node of vrf, default-context"; + container mdt-database-rsvp-te { + description + "PIM MDT RSVPTE tunnel database"; + uses PIM-P2MPTE-MDT-TUNNEL-DB-BAG; + } + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container mvpn-identifiers { + description + "MVPN Identifier Table"; + list mvpn-identifier { + key "mvpn-identifier"; + description + "MVPN Identifier"; + leaf mvpn-identifier { + type uint32; + description + "MVPN Identifier"; + } + uses PIM-MVPN-ID-INFO; + } + } + container mvpn-segmenteds { + description + "MVPN SEGMENT DB Table"; + list mvpn-segmented { + key "rd network"; + description + "MVPN SEGMENT DB Entry"; + leaf rd { + type Route-distinguisher; + description + "Route Distinguisher value"; + } + leaf network { + type inet:ip-prefix; + description + "Network in prefix/length format"; + } + uses PIM-SEGMENT-DB-BAG; + } + } + } + } + + grouping MDT-IR-REMOTE-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container ir-remote-entries { + description + "PIM MDT ir remote table"; + list ir-remote-entry { + key "tunnel-type label"; + description + "PIM MDT ir remote table"; + leaf tunnel-type { + type uint32; + description + "Tunnel Type"; + } + leaf label { + type uint32; + description + "Label"; + } + uses PIM-MDT-DATA-IR-BAG; + } + } + } + + grouping MDT-RSVP-TE-LOCAL-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container rsvp-te-local-entries { + description + "PIM MDT RSVP-TE local table"; + list rsvp-te-local-entry { + key "p2mp-id tunnel-id extended-tunnel-d core-id"; + description + "PIM MDT RSVP-TE local table"; + leaf p2mp-id { + type uint32; + description + "Core ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-d { + type inet:ip-address-no-zone; + description + "Extended Tunnel ID"; + } + leaf core-id { + type uint32; + description + "Core ID"; + } + uses PIM-MDT-DATA-RSVPTE-BAG; + } + } + } + + grouping MDT-PREFIX-LOCAL-TABLE { + description + "Common node of vrf, default-context"; + container mdt-prefix-locals { + description + "PIM MDT prefix local table"; + list mdt-prefix-local { + key "mdt-prefix"; + description + "PIM MDT prefix information"; + leaf mdt-prefix { + type inet:ip-address-no-zone; + description + "MDT data prefix address"; + } + uses PIM-MDT-DATA-PFX-BAG; + } + } + } + + grouping MDT-MLDP-CACHE-TABLE { + description + "Common node of vrf, default-context"; + container mdt-mldp-caches { + description + "MLDP MDT cache"; + list mdt-mldp-cache { + key "core-source-address customer-source-address customer-group-address"; + description + "MLDP MDT cache information"; + leaf core-source-address { + type inet:ip-address-no-zone; + description + "Core source IP address"; + } + leaf customer-source-address { + type inet:ip-address-no-zone; + description + "Customer source IP address"; + } + leaf customer-group-address { + type inet:ip-address-no-zone; + description + "Customer group IP address"; + } + uses PIM-MDT-CACHE-BAG; + } + } + } + + grouping PE-TABLE { + description + "Common node of vrf, default-context"; + container pes { + description + "PIM MVPN PE Information"; + list pe { + key "pe-prefix"; + description + "PIM PE Address information"; + leaf pe-prefix { + type inet:ip-address-no-zone; + description + "PE address"; + } + uses PIM-PE-BAG; + } + } + } + + grouping RP-RELAY-TABLE { + description + "Common node of auto-rp, bsr"; + container rp-relays { + description + "PIM rp-relay database"; + list rp-relay { + key "vrf-name"; + description + "PIM Relay"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name "; + } + uses PIM-RELAY-BAG; + } + } + } + + grouping ACTIVE { + description + "Common node of mvpn, ipv6-mvpn"; + container active { + description + "Active Process"; + uses VRF-TABLE; + uses DEFAULT-CONTEXT; + uses PROCESS; + } + } + + grouping MDT-SR-P2MP-CACHE-TABLE { + description + "Common node of vrf, default-context"; + container mdt-sr-p2mp-caches { + description + "SR-P2MP MDT cache"; + list mdt-sr-p2mp-cache { + key "core-source-address customer-source-address customer-group-address"; + description + "SR-P2MP MDT cache information"; + leaf core-source-address { + type inet:ip-address-no-zone; + description + "Core source IP address"; + } + leaf customer-source-address { + type inet:ip-address-no-zone; + description + "Customer source IP address"; + } + leaf customer-group-address { + type inet:ip-address-no-zone; + description + "Customer group IP address"; + } + uses PIM-MDT-CACHE-BAG; + } + } + } + + grouping MDT-RSVP-TE-REMOTE-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container rsvp-te-remote-entries { + description + "PIM MDT RSVP-TE remote table"; + list rsvp-te-remote-entry { + key "p2mp-id tunnel-id extended-tunnel-id"; + description + "PIM MDT RSVP-TE remote table"; + leaf p2mp-id { + type uint32; + description + "Core ID"; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf extended-tunnel-id { + type inet:ip-address-no-zone; + description + "Extended Tunnel ID"; + } + uses PIM-MDT-DATA-RSVPTE-BAG; + } + } + } + + grouping MDT-DATABASE-IR { + description + "Common node of vrf, default-context"; + container mdt-database-ir { + description + "PIM MDT IR tunnel database"; + uses PIM-MDT-TUNNEL-DB-BAG; + } + } + + grouping REMOTE-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container remote-entries { + description + "PIM MDT mldp remote table"; + list remote-entry { + key "tree-type opaque-type oui vpn-index core-id"; + description + "PIM MDT mldp remote table"; + leaf tree-type { + type Pim-mdt-mldp; + description + "Tree Type"; + } + leaf opaque-type { + type Pim-mldp-opaque; + description + "Opaque Type"; + } + leaf oui { + type uint32; + description + "OUI"; + } + leaf vpn-index { + type uint32; + description + "VPN Index"; + } + leaf core-id { + type uint32; + description + "Core ID"; + } + uses PIM-MDT-DATA-MLDP-BAG; + } + } + } + + grouping MDT-SEGMENT-ROUTING-LOCAL-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container mdt-segment-routing-local-entries { + description + "PIM MDT Segment Routing local table"; + list mdt-segment-routing-local-entry { + key "tree-id"; + description + "PIM MDT Segment Routing local entry"; + leaf tree-id { + type uint32; + description + "Tree ID"; + } + uses PIM-MDT-DATA-TREESID-BAG; + } + } + } + + grouping MDT-SEGMENT-ROUTING-LOCAL-ENTRY-NAME-TABLE { + description + "Common node of vrf, default-context"; + container mdt-segment-routing-local-entry-names { + description + "PIM MDT Name Segment Routing local table"; + list mdt-segment-routing-local-entry-name { + key "mdt-name"; + description + "PIM MDT Name Segment Routing local entry"; + leaf mdt-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Data MDT Name"; + } + uses PIM-MDT-DATA-TREESID-BAG; + } + } + } + + grouping DEFAULT-CONTEXT { + description + "Common node of active, standby"; + container default-context { + description + "Default Context"; + uses MDT-INTERFACE; + uses LOCAL-ENTRY-TABLE; + uses MDT-RSVP-TE-REMOTE-ENTRY-TABLE; + uses MDT-CACHE-SUMMARY; + uses MDT-DATABASE-IR; + uses MDT-GRE-CACHE-TABLE; + uses MDT-IR-REMOTE-ENTRY-TABLE; + uses MDT-SEGMENT-ROUTING-LOCAL-ENTRY-NAME-TABLE; + uses MDT-DATABASE-RSVP-TE; + uses BSR; + uses BGP-AF-TABLE; + uses MDT-RSVP-TE-LOCAL-ENTRY-NAME-TABLE; + uses MDT-RSVP-TE-LOCAL-ENTRY-TABLE; + uses MDT-PREFIX-REMOTE-TABLE; + uses MDT-CACHE-TABLE; + uses MDT-RSVP-TE-CACHE-TABLE; + uses LOCAL-ENTRY-NAME-TABLE; + uses AUTO-RP; + uses MDT-SEGMENT-ROUTING-LOCAL-ENTRY-TABLE; + uses REMOTE-ENTRY-TABLE; + uses MDT-IR-CACHE-TABLE; + uses MDT-SR-P2MP-CACHE-TABLE; + uses PE-TABLE; + uses MDT-SEGMENT-ROUTING-REMOTE-ENTRY-TABLE; + uses MDT-MLDP-CACHE-TABLE; + uses MDT-IR-LOCAL-ENTRY-TABLE; + uses MDT-PREFIX-LOCAL-TABLE; + } + } + + grouping MDT-CACHE-SUMMARY { + description + "Common node of vrf, default-context"; + container mdt-cache-summary { + description + "PIM MDT cache summary"; + uses PIM-MDT-CACHE-SUMM-BAG; + } + } + + grouping STANDBY { + description + "Common node of mvpn, ipv6-mvpn"; + container standby { + description + "Standby Process"; + uses VRF-TABLE; + uses DEFAULT-CONTEXT; + uses PROCESS; + } + } + + grouping MDT-SEGMENT-ROUTING-REMOTE-ENTRY-TABLE { + description + "Common node of vrf, default-context"; + container mdt-segment-routing-remote-entries { + description + "PIM MDT Segment Routing remote table"; + list mdt-segment-routing-remote-entry { + key "tree-id"; + description + "PIM MDT Segment Routing remote table"; + leaf tree-id { + type uint32; + description + "Tree ID"; + } + uses PIM-MDT-DATA-TREESID-BAG; + } + } + } + + container mvpn { + config false; + description + "MVPN operational data"; + uses ACTIVE; + uses STANDBY; + } + container ipv6-mvpn { + config false; + description + "IPv6 MVPN operational data"; + uses ACTIVE; + uses STANDBY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper-sub1.yang new file mode 100644 index 000000000..2032950b3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper-sub1.yang @@ -0,0 +1,58 @@ +submodule Cisco-IOS-XR-ncs-grid-svr-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs-grid-svr-oper { + prefix Cisco-IOS-XR-ncs-grid-svr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs-grid-svr package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping GRID-SVR-SHOW-CLIENT-DATA { + description + "Client information and resource ID database"; + leaf res-id { + type uint32; + description + "Resource ID"; + } + } + + grouping GRID-SVR-SHOW-CLIENT { + description + "Client information"; + list client-data { + description + "Client information"; + uses GRID-SVR-SHOW-CLIENT-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper.yang new file mode 100644 index 000000000..e6c882e9e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs-grid-svr-oper.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-ncs-grid-svr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs-grid-svr-oper"; + prefix ncs-grid-svr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs-grid-svr-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ncs-grid-svr package operational data. + + This module contains definitions + for the following management objects: + grid: GRID operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container grid { + config false; + description + "GRID operational data"; + container nodes { + description + "Table of nodes"; + list node { + key "node-name"; + description + "Operational data for a particular node"; + container client-xr { + description + "GRID Client Table"; + list client { + key "client-name"; + description + "GRID Client Database"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client name"; + } + uses GRID-SVR-SHOW-CLIENT; + } + } + container clients { + description + "GRID Client Consistency Check"; + list client { + key "client-name"; + description + "GRID Client Consistency Check"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client name"; + } + uses GRID-SVR-SHOW-CLIENT; + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-esd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-esd-cfg.yang new file mode 100644 index 000000000..82c1412d3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-esd-cfg.yang @@ -0,0 +1,135 @@ +module Cisco-IOS-XR-ncs1001-esd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1001-esd-cfg"; + prefix ncs1001-esd-cfg; + + 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 ncs1001-esd package configuration. + + This module contains definitions + for the following management objects: + hardware-module: NCS1k HW module config + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-04 { + description + "first release."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Eth-switch-port { + type enumeration { + enum "sfp-udc3" { + value 0; + description + "SFP slot 3 port ( 0)"; + } + enum "sfp-udc2" { + value 4; + description + "SFP slot 2 port ( 4)"; + } + enum "sfp-udc1" { + value 8; + description + "SFP slot 1 port ( 8)"; + } + enum "rj45-udc1" { + value 12; + description + "UDC1 port (12)"; + } + enum "rj45-udc2" { + value 16; + description + "UDC2 port (16)"; + } + enum "rj45-udc3" { + value 20; + description + "UDC3 port (20)"; + } + enum "cpu-mgmt" { + value 24; + description + "CPU side Mgmt ports (24)"; + } + enum "rj45-mgmt" { + value 26; + description + "RJ45 Mgmt port (26)"; + } + enum "sfp-mgmt" { + value 27; + description + "SFP Mgmt port (27)"; + } + } + description + "Eth switch port"; + } + + container hardware-module { + description + "NCS1k HW module config"; + container node { + description + "Node"; + container ports { + description + "Ethernet switch Config"; + list port { + key "port"; + description + "Port Id"; + leaf enable-loopback { + type empty; + description + "enable internal loopback"; + } + leaf enable-clear-on-read { + type empty; + description + "clear on read enabled"; + } + leaf disable { + type empty; + description + "disable port"; + } + leaf port { + type Eth-switch-port; + description + "Set port"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1.yang new file mode 100644 index 000000000..3d1effe8c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1.yang @@ -0,0 +1,373 @@ +submodule Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1001-hw-module-eth-oper { + prefix Cisco-IOS-XR-ncs1001-hw-module-eth-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1001-hw-module-eth package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-23 { + description + "first release."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping HWMOD-ETH-SWITCH-PORT-STAT-B { + description + "Eth_switch PortStat ascii"; + leaf port-name { + type string { + length "0..32"; + } + description + "port name"; + } + leaf good-octets-rcv { + type uint64; + description + "GoodOctetsRcv"; + } + leaf bad-octets-rcv { + type uint64; + description + "BadOctetsRcv"; + } + leaf mac-transmit-err { + type uint64; + description + "MacTransmitErr"; + } + leaf good-pkts-rcv { + type uint64; + description + "GoodPktsRcv"; + } + leaf bad-pkts-rcv { + type uint64; + description + "BadPktsRcv"; + } + leaf brdc-pkts-rcv { + type uint64; + description + "BrdcPktsRcv"; + } + leaf mc-pkts-rcv { + type uint64; + description + "McPktsRcv"; + } + leaf pkts64-octets { + type uint64; + description + "Pkts64Octets"; + } + leaf pkts65to127-octets { + type uint64; + description + "Pkts65to127Octets"; + } + leaf pkts128to255-octets { + type uint64; + description + "Pkts128to255Octets"; + } + leaf pkts256to511-octets { + type uint64; + description + "Pkts256to511Octets"; + } + leaf pkts512to1023-octets { + type uint64; + description + "Pkts512to1023Octets"; + } + leaf pkts1024tomax-ooctets { + type uint64; + description + "Pkts1024tomaxOoctets"; + } + leaf good-octets-sent { + type uint64; + description + "GoodOctetsSent"; + } + leaf good-pkts-sent { + type uint64; + description + "GoodPktsSent"; + } + leaf excessive-collisions { + type uint64; + description + "ExcessiveCollisions"; + } + leaf mc-pkts-sent { + type uint64; + description + "McPktsSent"; + } + leaf brdc-pkts-sent { + type uint64; + description + "BrdcPktsSent"; + } + leaf unrecog-mac-cntr-rcv { + type uint64; + description + "UnrecogMacCntrRcv"; + } + leaf fc-sent { + type uint64; + description + "FcSent"; + } + leaf good-fc-rcv { + type uint64; + description + "GoodFcRcv"; + } + leaf drop-events { + type uint64; + description + "DropEvents"; + } + leaf undersize-pkts { + type uint64; + description + "UndersizePkts"; + } + leaf fragments-pkts { + type uint64; + description + "FragmentsPkts"; + } + leaf oversize-pkts { + type uint64; + description + "OversizePkts"; + } + leaf jabber-pkts { + type uint64; + description + "JabberPkts"; + } + leaf mac-rcv-error { + type uint64; + description + "MacRcvError"; + } + leaf bad-crc { + type uint64; + description + "BadCrc"; + } + leaf collisions { + type uint64; + description + "Collisions"; + } + leaf late-collisions { + type uint64; + description + "LateCollisions"; + } + leaf bad-fc-rcv { + type uint64; + description + "BadFcRcv"; + } + leaf uc-pkts-rcv { + type uint64; + description + "UcPktsRcv"; + } + leaf uc-pkts-sent { + type uint64; + description + "UcPktsSent"; + } + leaf multiple-pkts-sent { + type uint64; + description + "MultiplePktsSent"; + } + leaf deferred-pkts-sent { + type uint64; + description + "DeferredPktsSent"; + } + leaf pkts1024to1518-octets { + type uint64; + description + "Pkts1024to1518Octets"; + } + leaf pkts1519to-max-octets { + type uint64; + description + "Pkts1519toMaxOctets"; + } + } + + grouping ESD-HWMOD-ETH-SWITCH-PORT-STAT-OP { + description + "HwModule Eth_switch PortStat"; + list eth-switch-port-stat { + key "port-name"; + description + "eth switch port counters statistic"; + uses HWMOD-ETH-SWITCH-PORT-STAT-B; + } + } + + grouping HWMOD-ETH-SWITCH-VLANS-B { + description + "Eth_switch Vlans ascii"; + leaf vlan-index { + type uint32; + description + "Vlan Index"; + } + leaf ports-members { + type uint32; + description + "PortsMembers"; + } + leaf ports-tagging { + type uint32; + description + "portsTagging"; + } + leaf is-valid { + type uint8; + description + "IsValid"; + } + } + + grouping ESD-HWMOD-ETH-SWITCH-VLANS-OP { + description + "HwModule Eth_switch Vlans"; + list eth-switch-vlan { + key "vlan-index"; + description + "eth switch Vlans list"; + uses HWMOD-ETH-SWITCH-VLANS-B; + } + } + + grouping HWMOD-ETH-SWITCH-PORTS-ATTRS-B { + description + "Eth_switch PortsAttrs ascii"; + leaf port-name { + type string { + length "0..32"; + } + description + "port name"; + } + leaf port-num { + type uint16; + description + "PortNum"; + } + leaf status { + type string { + length "0..64"; + } + description + "status "; + } + leaf mru-size { + type uint32; + description + "mrusize "; + } + leaf attrport-link-up { + type string { + length "0..64"; + } + description + "port link up"; + } + leaf attr-port-speed { + type string { + length "0..64"; + } + description + "port speed"; + } + leaf attr-port-duplexity { + type string { + length "0..64"; + } + description + "port duplex"; + } + leaf is-clear-on-read { + type string { + length "0..64"; + } + description + "clear on read"; + } + leaf loopback { + type string { + length "0..64"; + } + description + "loopback"; + } + leaf mode { + type string { + length "0..64"; + } + description + "mode"; + } + leaf mode-num { + type uint8; + description + "mode numeric value"; + } + } + + grouping ESD-HWMOD-ETH-SWITCH-PORTS-ATTRS-OP { + description + "HwModule Eth_switch PortsAttrs"; + list eth-switch-ports-attr { + key "port-name"; + description + "eth switch ports attributes"; + uses HWMOD-ETH-SWITCH-PORTS-ATTRS-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper.yang new file mode 100644 index 000000000..091d8dfeb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-hw-module-eth-oper.yang @@ -0,0 +1,140 @@ +module Cisco-IOS-XR-ncs1001-hw-module-eth-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1001-hw-module-eth-oper"; + prefix ncs1001-hw-module-eth-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1001-hw-module-eth-oper-sub1 { + revision-date 2022-08-23; + } + + 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 ncs1001-hw-module-eth package operational data. + + This module contains definitions + for the following management objects: + hw-module: ncs1001 hw-module command chain + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-23 { + description + "first release."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Esd-hw-module-eth-port { + type enumeration { + enum "sfp-udc3" { + value 0; + description + "SFP slot 3 port ( 0)"; + } + enum "sfp-udc2" { + value 4; + description + "SFP slot 2 port ( 4)"; + } + enum "sfp-udc1" { + value 8; + description + "SFP slot 1 port ( 8)"; + } + enum "rj45-udc1" { + value 12; + description + "UDC1 port (12)"; + } + enum "rj45-udc2" { + value 16; + description + "UDC2 port (16)"; + } + enum "rj45-udc3" { + value 20; + description + "UDC3 port (20)"; + } + enum "cpu-mgmt" { + value 24; + description + "CPU side Mgmt ports (24)"; + } + enum "rj45-mgmt" { + value 26; + description + "RJ45 Mgmt port (26)"; + } + enum "sfp-mgmt" { + value 27; + description + "SFP Mgmt port (27)"; + } + } + description + "Esd hw module eth port"; + } + + container hw-module { + config false; + description + "ncs1001 hw-module command chain"; + container eth-switch { + description + "ethernet operational data"; + container eth-switch-data { + description + "ethernet operational data"; + container eth-switch-action-ports-attrs { + description + "ports attributes"; + uses ESD-HWMOD-ETH-SWITCH-PORTS-ATTRS-OP; + } + container eth-switch-actionvlans { + description + "available vlans"; + uses ESD-HWMOD-ETH-SWITCH-VLANS-OP; + } + container eth-switch-action-stat-ports { + description + "ethernet operational data"; + list eth-switch-action-stat-port { + key "hw-module-eth-port-type"; + description + "ethernet port statistics"; + leaf hw-module-eth-port-type { + type Esd-hw-module-eth-port; + description + "Details associated with a particular Data + type"; + } + uses ESD-HWMOD-ETH-SWITCH-PORT-STAT-OP; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper-sub1.yang new file mode 100644 index 000000000..e961640b5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper-sub1.yang @@ -0,0 +1,420 @@ +submodule Cisco-IOS-XR-ncs1001-otdr-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1001-otdr-oper { + prefix Cisco-IOS-XR-ncs1001-otdr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1001-otdr package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-12 { + description + "XML query for CLI show hw-module ampli-trail-view/channel-trail-view does not return a response"; + semver:module-version "2.0.0"; + } + revision 2019-05-28 { + description + "added OTDR periodic scan and event triggered auto scan"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-03-15 { + description + "first release."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Otdr-status { + type enumeration { + enum "otdr-status-unknown" { + value 0; + description + "Unknown"; + } + enum "otdr-status-ok" { + value 1; + description + "Ok"; + } + enum "otdr-status-orl-progress" { + value 2; + description + "ORL Progress"; + } + enum "otdr-status-otdr-progress" { + value 3; + description + "OTDR Progress"; + } + enum "otdr-status-progress" { + value 4; + description + "Progress"; + } + enum "otdr-status-failure" { + value 5; + description + "Failure"; + } + enum "otdr-status-aborted" { + value 6; + description + "Aborted"; + } + } + description + "Otdr status"; + } + + typedef Otdr-event { + type enumeration { + enum "otdr-event-type-loss" { + value 1; + description + "Loss"; + } + enum "otdr-event-type-reflect-ion" { + value 2; + description + "Reflection"; + } + enum "otdr-event-type-loss-and-reflect-ion" { + value 3; + description + "Loss and Reflection"; + } + enum "otdr-event-type-end-of-fiber" { + value 4; + description + "End Of Fiber"; + } + } + description + "Otdr event"; + } + + typedef Otdr-scan-mode { + type enumeration { + enum "otdr-scan-auto" { + value 0; + description + "Auto"; + } + enum "otdr-scan-expert" { + value 1; + description + "Expert"; + } + } + description + "Otdr scan mode"; + } + + typedef Direction { + type enumeration { + enum "direction-tx" { + value 0; + description + "Tx"; + } + enum "direction-rx" { + value 1; + description + "Rx"; + } + } + description + "Direction"; + } + + grouping HWMOD-OTDR-STATUS-B { + description + "Otdr Status"; + leaf otdr-id { + type uint8; + description + "Otdr Id"; + } + leaf direction { + type Direction; + description + "Direction"; + } + leaf timestamp { + type string { + length "0..16"; + } + description + "Timestamp"; + } + leaf training-status { + type Otdr-status; + description + "Training Status"; + } + leaf measurement-status { + type Otdr-status; + description + "Measurement Status"; + } + leaf progress-pc { + type uint16; + description + "Progress %"; + } + leaf next-scan { + type uint32; + units "minute"; + description + "Minutes from next scan"; + } + leaf abort-status { + type uint32; + description + "Abort status"; + } + } + + grouping HWMOD-OTDR-ML-EVENT-DATA-B { + description + "Otdr ML Event Data"; + leaf event { + type string { + length "0..64"; + } + description + "ML Event type"; + } + leaf position { + type string { + length "0..16"; + } + description + "Event Position in Km"; + } + leaf enabled { + type uint8; + description + "ML enabled flag"; + } + } + + grouping HWMOD-OTDR-EVENT-DATA-B { + description + "Otdr Event Data"; + leaf event-id { + type uint16; + description + "Event Id"; + } + leaf type { + type Otdr-event; + description + "Event Type"; + } + leaf position { + type string { + length "0..16"; + } + description + "Event Position in Km"; + } + leaf accuracy { + type string { + length "0..16"; + } + description + "Event accuracy in meters"; + } + leaf magnitude { + type string { + length "0..16"; + } + description + "Event Magnitude in dB"; + } + leaf attenuation { + type string { + length "0..16"; + } + description + "Event Attenuation in dB"; + } + leaf eof-confidence { + type uint32; + description + "Event End of Fiber Confidence"; + } + leaf threshold-crossing { + type uint8; + description + "Threshold Crossing"; + } + leaf threshold-crossing-rel { + type uint8; + description + "Trelative hreshold Crossing"; + } + } + + grouping HWMOD-OTDR-ITEM-B { + description + "Otdr Item"; + leaf otdr-number { + type uint8; + description + "Otdr Number"; + } + leaf direction { + type Direction; + description + "Scan Direction"; + } + leaf timestamp { + type string { + length "0..16"; + } + description + "Timestamp"; + } + leaf sor-file { + type string { + length "0..128"; + } + description + "Sor file name"; + } + leaf sor-directory { + type string { + length "0..128"; + } + description + "Sor file location"; + } + leaf scan-mode { + type Otdr-scan-mode; + description + "Scan Mode"; + } + leaf distance { + type string { + length "0..16"; + } + description + "Distance in Km"; + } + leaf total-orl { + type string { + length "0..16"; + } + description + "Total Orl in dB"; + } + leaf high-reflection-location { + type string { + length "0..16"; + } + description + "High Reflection Location in Km"; + } + list otdr-event { + description + "Event list"; + uses HWMOD-OTDR-EVENT-DATA-B; + } + list otdr-ml-event { + description + "ML Event list"; + uses HWMOD-OTDR-ML-EVENT-DATA-B; + } + } + + grouping HWMOD-OTDR-SCAN-LIST-B { + description + "Otdr Scan Data"; + leaf index { + type uint16; + description + "Index"; + } + leaf otdr-number { + type uint8; + description + "Otdr Number"; + } + leaf direction { + type Direction; + description + "Direction"; + } + leaf scan-mode { + type Otdr-scan-mode; + description + "Scan Mode"; + } + leaf timestamp { + type string { + length "0..16"; + } + description + "Timestamp"; + } + leaf sor-file { + type string { + length "0..128"; + } + description + "Sor File Name"; + } + } + + grouping OTS-HWMOD-OTDR-OP { + description + "HwModule Otdr data"; + container otdr-item { + description + "Otdr Item"; + xr:event-telemetry "Subscribe Telemetry Event"; + uses HWMOD-OTDR-ITEM-B; + } + list otdr-scan { + description + "Otdr Scan list"; + uses HWMOD-OTDR-SCAN-LIST-B; + } + list otdr-status { + description + "Otdr Status List"; + uses HWMOD-OTDR-STATUS-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper.yang new file mode 100644 index 000000000..fc513dbe2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-otdr-oper.yang @@ -0,0 +1,175 @@ +module Cisco-IOS-XR-ncs1001-otdr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1001-otdr-oper"; + prefix ncs1001-otdr-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1001-otdr-oper-sub1 { + revision-date 2020-12-12; + } + + 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 ncs1001-otdr package operational data. + + This module contains definitions + for the following management objects: + hw-module: ncs1001 hw-module command chain + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-12 { + description + "XML query for CLI show hw-module ampli-trail-view/channel-trail-view does not return a response"; + semver:module-version "2.0.0"; + } + revision 2019-05-28 { + description + "added OTDR periodic scan and event triggered auto scan"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-03-15 { + description + "first release."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-otdr-data { + type enumeration { + enum "status" { + value 0; + description + "Display otdr status"; + } + enum "scan" { + value 1; + description + "Display the list of saved measurements"; + } + enum "base-line" { + value 2; + description + "Display the list of saved baseline"; + } + } + description + "Ots otdr data"; + } + + typedef Ots-otdr-data-type-details { + type enumeration { + enum "scan-details" { + value 1; + description + "Displays Scan Details"; + } + enum "base-line-details" { + value 2; + description + "Displays Baseline Details"; + } + } + description + "Ots otdr data type details"; + } + + container hw-module { + config false; + description + "ncs1001 hw-module command chain"; + container otdr-root { + description + "Otdr Root Info"; + container otdrs { + description + "Otdr Table Info"; + list otdr { + key "slot-id"; + description + "Otdr Info"; + leaf slot-id { + type uint32 { + range "1..3"; + } + description + "Details associated with a particular slot + number"; + } + list data-type { + key "otdr-data-type"; + description + "Dispaly data type list"; + leaf otdr-data-type { + type Ots-otdr-data; + description + "Details associated with a particular Data + type"; + } + uses OTS-HWMOD-OTDR-OP; + } + } + } + container otdr-details { + description + "Otdr Details Root Info"; + list otdr-detail { + key "slot-id"; + description + "Otdr Details"; + leaf slot-id { + type uint32 { + range "1..3"; + } + description + "Details associated with a particular slot + number"; + } + list data-type-detail { + key "otdr-data-type-details"; + description + "Dispaly data type list"; + leaf otdr-data-type-details { + type Ots-otdr-data-type-details; + description + "Details associated with a particular Data + type"; + } + list identifier { + key "scan-detail"; + description + "Dispaly details"; + leaf scan-detail { + type uint32; + description + "Dispaly details"; + } + uses OTS-HWMOD-OTDR-OP; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-act.yang new file mode 100644 index 000000000..19b4e26da --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-act.yang @@ -0,0 +1,201 @@ +module Cisco-IOS-XR-ncs1001-ots-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1001-ots-act"; + prefix ncs1001-ots-act; + + 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 ncs1001-ots-act package configuration. + + This module contains definitions + for the following management objects: + hardware-module-action: NCS1k1 HW module config + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-05-28 { + description + "added OTDR periodic scan and event triggered auto scan"; + } + revision 2019-05-22 { + description + "added OTDR alarm support"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-03-12 { + description + "Added Otdr commands"; + } + revision 2017-08-04 { + description + "IOS XR 6.3.1 revision."; + } + + typedef Ots-psm-manual-switch { + type enumeration { + enum "working" { + value 1; + description + "Working port"; + } + enum "protected" { + value 2; + description + "Protected port"; + } + } + description + "Ots psm manual switch"; + } + + typedef Otdr-direction { + type enumeration { + enum "tx" { + value 0; + description + "Tx Direction"; + } + enum "rx" { + value 1; + description + "Rx Direction"; + } + } + description + "Otdr direction type"; + } + + typedef Otdr-scan-mode { + type enumeration { + enum "auto" { + value 0; + description + "Automatic scan mode"; + } + enum "expert" { + value 1; + description + "Expert scan mode"; + } + } + description + "Otdr scan mode type"; + } + + rpc psm-manual-switch-to { + description + "Psm manual switch to port"; + input { + leaf slot-id { + type uint32 { + range "1..3"; + } + mandatory true; + description + "Set Slot"; + } + leaf manual-switch-to { + type Ots-psm-manual-switch; + mandatory true; + description + "Switch active path to selected port"; + } + } + } + rpc otdr-scan { + description + "Otdr scan commands"; + input { + leaf slot-id { + type uint32 { + range "1..3"; + } + mandatory true; + description + "Set Slot"; + } + leaf port-id { + type uint32 { + range "1..2"; + } + mandatory true; + description + "Set Port"; + } + leaf direction { + type Otdr-direction; + mandatory true; + description + "Set Direction"; + } + leaf scan-mode { + type Otdr-scan-mode; + mandatory true; + description + "Otdr scan mode"; + } + } + } + rpc otdr-scan-abort { + description + "Otdr scan abort command"; + input { + leaf slot-id { + type uint32 { + range "1..3"; + } + mandatory true; + description + "Set Slot"; + } + leaf port-id { + type uint32 { + range "1..2"; + } + mandatory true; + description + "Set Port"; + } + } + } + rpc otdr-save-baseline { + description + "Otdr save baseline command"; + input { + leaf slot-id { + type uint32 { + range "1..3"; + } + mandatory true; + description + "Set Slot"; + } + leaf baseline-id { + type uint32; + mandatory true; + description + "Set Baseline"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-cfg.yang new file mode 100644 index 000000000..af0a8f40e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-cfg.yang @@ -0,0 +1,725 @@ +module Cisco-IOS-XR-ncs1001-ots-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1001-ots-cfg"; + prefix ncs1001-ots-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 ncs1001-ots package configuration. + + This module contains definitions + for the following management objects: + hardware-module: NCS1k HW module config + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-31 { + description + "added refractive index ad back scattering OTDR parameters"; + semver:module-version "2.1.0"; + } + revision 2019-05-28 { + description + "added OTDR periodic scan and event triggered auto scan"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-03-20 { + description + "added Otdr management."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-amplifier-node { + type enumeration { + enum "term" { + value 0; + description + "Nodetype TERM"; + } + enum "ila" { + value 1; + description + "Nodetype InLine Amplifier"; + } + enum "roadm" { + value 2; + description + "Nodetype ROADM"; + } + } + description + "Ots amplifier node"; + } + + typedef Ots-amplifier-grid-mode { + type enumeration { + enum "100g-hz" { + value 0; + description + "100GHz mode"; + } + enum "50g-hz" { + value 1; + description + "50GHz mode"; + } + enum "gr-idle-ss" { + value 2; + description + "Gridless mode"; + } + enum "75ghz" { + value 3; + description + "75GHz mode"; + } + } + description + "Ots amplifier grid mode"; + } + + typedef Ots-otdr-scan { + type enumeration { + enum "auto" { + value 0; + description + "Auto"; + } + } + description + "Ots otdr scan"; + } + + typedef Ots-otdr-direction { + type enumeration { + enum "tx" { + value 0; + description + "Tx"; + } + enum "rx" { + value 1; + description + "Rx"; + } + } + description + "Ots otdr direction"; + } + + typedef Ots-psm-primary-path { + type enumeration { + enum "working" { + value 1; + description + "Working port"; + } + enum "protected" { + value 2; + description + "Protected port"; + } + } + description + "Ots psm primary path"; + } + + typedef Ots-psm-lockout-from { + type enumeration { + enum "working" { + value 1; + description + "Working port"; + } + enum "protected" { + value 2; + description + "Protected port"; + } + } + description + "Ots psm lockout from"; + } + + container hardware-module { + description + "NCS1k HW module config"; + list node { + key "location"; + description + "Node"; + leaf location { + type xr:Cisco-ios-xr-string; + description + "Fully qualified line card specification"; + } + list slot { + key "slot-id"; + description + "Slot Id"; + container otdr-auto-scans { + description + "Otdr Auto Scan"; + list otdr-auto-scan { + key "port"; + description + "Otdr Auto Scan"; + container auto-scan { + presence "Contains mandatory nodes that used to set default values"; + description + "OTDR Event Triggered Automatic Scan + Configuration"; + leaf otdr-ip-address { + type inet:ip-address-no-zone; + description + "IP address of OTDR module host"; + } + leaf otdr-farend-ip-address { + type inet:ip-address-no-zone; + description + "IP address of OTDR far-end host"; + } + leaf otdr-far-end-slot-id { + type uint32 { + range "1..3"; + } + description + "Set OTDR far-end Slot Number"; + } + leaf scan-type { + type Ots-otdr-scan; + description + "Scan Type AUTO"; + } + } + leaf port { + type uint32; + description + "Port Id"; + } + } + } + container otdrs { + description + "OTDR Configs"; + list otdr { + key "port direction"; + description + "Otdr Id"; + container periodic-scan { + description + "Periodic Scan"; + leaf minutes { + type uint32 { + range "30..600000"; + } + units "minute"; + description + "Periodicity in minutes (min value supported + 30 min)"; + } + } + container mode-auto { + description + "Mode Auto"; + leaf loss-rel-threshold { + type uint32 { + range "1..300"; + } + description + "relative Loss Threshold, supported values + [1,300] in units of 0.1dB"; + } + leaf loss-sensitivity { + type uint32 { + range "4..50"; + } + description + "Otdr Loss Sensitivity, supported values [4 + ,50] in units of 0.1dB"; + } + leaf reflection-rel-threshold { + type uint32 { + range "1..300"; + } + description + "Relative Reflection Threshold, supported + values [1,300] in units of 0.1dB"; + } + leaf reflection-sensitivity { + type int32 { + range "-400..-140"; + } + description + "Otdr Reflection Sensitivity, supported + values [-400,-140] in units of 0.1dB"; + } + } + container mode-expert { + description + "Mode Expert"; + leaf fiber-resolution { + type uint32 { + range "0..100"; + } + description + "Fiber Resolution in meters, supported + values [0,100]"; + } + leaf capture-length { + type uint32 { + range "1..150"; + } + description + "Capture Length in Km, supported values [1 + ,150]"; + } + leaf loss-rel-threshold { + type uint32 { + range "1..300"; + } + description + "relative Loss Threshold, supported values + [1,300] in units of 0.1dB"; + } + leaf pulse-width { + type uint32 { + range "8..100000"; + } + units "nanosecond"; + description + "Pulse Width in nanoseconds, supported + values [8,100000]"; + } + leaf measure-time { + type uint32 { + range "1..360"; + } + units "second"; + description + "Measure time in seconds, supported values + [1,360]"; + } + leaf loss-sensitivity { + type uint32 { + range "4..50"; + } + description + "Otdr Loss Sensitivity, supported values [4 + ,50] in units of 0.1dB"; + } + leaf reflection-rel-threshold { + type uint32 { + range "1..300"; + } + description + "Relative Reflection Threshold, supported + values [1,300] in units of 0.1dB"; + } + leaf capture-offset { + type uint32 { + range "0..150"; + } + description + "Capture Offset in Km, supported values [0 + ,150]"; + } + leaf span-length { + type uint32 { + range "1..150"; + } + description + "Span Length in Km, supported values [1,150]"; + } + leaf reflection-sensitivity { + type int32 { + range "-400..-140"; + } + description + "Otdr Reflection Sensitivity, supported + values [-400,-140] in units of 0.1dB"; + } + } + leaf ml-enabled { + type uint32 { + range "0..1"; + } + description + "Otdr enable machine learning event detection"; + } + leaf total-loss { + type uint32 { + range "0..500"; + } + description + "Otdr Insertion Loss, supported values [0 + ,500] in units of 0.1dB"; + } + leaf back-scattering { + type int32 { + range "-1000..0"; + } + description + "Otdr back scattering (BC), supported values + [-1000,0] in units of 0.1dB"; + } + leaf refractive-index { + type uint32 { + range "1000000..2000000"; + } + description + "Otdr refracive index (GI), supported values + [1000000,2000000] "; + } + leaf port { + type uint32 { + range "1..2"; + } + description + "Port Id"; + } + leaf direction { + type Ots-otdr-direction; + description + "Direction Id"; + } + } + } + container otdr-thresholds { + description + "Otdr Threshold"; + list otdr-threshold { + key "port"; + description + "Otdr Threshold"; + leaf loss-abs-threshold { + type uint32 { + range "1..300"; + } + description + "Absolute Loss Threshold, supported values [1 + ,300] in units of 0.1dB"; + } + leaf reflection-abs-threshold { + type int32 { + range "-500..0"; + } + description + "Absolute Reflection Threshold, supported + values [-500,0] in units of 0.1dB"; + } + leaf orl-abs-threshold { + type uint32 { + range "140..400"; + } + description + "Absolute Orl Threshold, supported values + [140,400] in units of 0.1dB"; + } + leaf port { + type uint32; + description + "Port Id"; + } + } + } + container amplifier { + description + "Amplifier Configs"; + container otdr-auto-scan { + presence "Contains mandatory nodes that used to set default values"; + description + "OTDR Event Triggered Automatic Scan + Configuration"; + leaf otdr-ip-address { + type inet:ip-address-no-zone; + description + "IP address of OTDR module host"; + } + leaf otdr-slot-id { + type uint32 { + range "1..3"; + } + description + "Set OTDR Slot Number"; + } + leaf otdr-port-id { + type uint32 { + range "1..2"; + } + description + "Set OTDR Port Number"; + } + leaf ampli-farend-ip-address { + type inet:ip-address-no-zone; + description + "IP address of amplifier far-end host"; + } + leaf ampli-far-end-slot-id { + type uint32 { + range "1..3"; + } + description + "Set amplifier far-end Slot Number"; + } + leaf scan-type { + type Ots-otdr-scan; + description + "Scan Type AUTO"; + } + } + container flex-channel-identifiers { + description + "Amplifier Flex Channel Config"; + list flex-channel-identifier { + key "channel-id"; + description + "Flex Channel Identifier"; + container flex-channel-frequencies { + description + "Channel Frequency"; + list flex-channel-frequency { + key "channel-freq"; + description + "Channel Frequency configuration in units + of 0.1GHz"; + leaf flex-channel-width { + type uint32 { + range "500..8000"; + } + description + "Set Channel Width in units of 0.1GHz, + allowed values in step of 125"; + } + leaf channel-freq { + type uint32 { + range "1913500..1961000"; + } + description + "Set Channel Frequency in units of 0.1GHz"; + } + } + } + leaf channel-id { + type uint32 { + range "1..96"; + } + description + "Channel Identifier"; + } + } + } + container remote-node { + presence "Contains mandatory nodes that used to set default values"; + description + "RemoteNode Configuration"; + leaf local-ip-address { + type inet:ip-address-no-zone; + description + "IP address of local host"; + } + leaf remote-ip-address { + type inet:ip-address-no-zone; + description + "IP address of remote host"; + } + leaf remote-slot-id { + type uint32 { + range "1..3"; + } + description + "Set remote Slot"; + } + } + container span-loss { + description + "SpanLoss configuration"; + leaf enable { + type boolean; + description + "Span Loss enabled"; + } + leaf delta { + type uint32 { + range "0..500"; + } + description + "Set Span Loss change delta value"; + } + } + container channel-widths { + description + "Amplifier Channel Width Configs"; + list channel-width { + key "channel-id"; + description + "Channel Identifier"; + leaf channel-width { + type uint32 { + range "1000..8000"; + } + description + "Set Channel Width in units of 0.1GHz, + allowed values in step of 250"; + } + leaf channel-id { + type uint32 { + range "1..96"; + } + description + "Channel Identifier"; + } + } + } + leaf flex-mode { + type boolean; + description + "FlexMode configuration"; + } + leaf node-type { + type Ots-amplifier-node; + description + "Define the type of node in which the + amplifier is set to work"; + } + leaf auto-threshold { + type boolean; + description + "Amplifier automatic rx-low threshold set + enabled"; + } + leaf grid-mode { + type Ots-amplifier-grid-mode; + description + "Define the working mode for the optical + module"; + } + leaf udc-vlan { + type uint32 { + range "2..4080"; + } + description + "Define the VLAN ID in range <2-4080>"; + } + } + container psm { + description + "PSM Configs"; + container auto-threshold { + description + "Psm Automatic Threshold Setting"; + leaf enable { + type boolean; + description + "PSM revertive enabled"; + } + leaf delta { + type uint32 { + range "0..800"; + } + description + "Set auto threshold delta"; + } + } + container relative-switch-threshold { + description + "Psm Relative Switch Threshold"; + leaf psm-relative-switch-threshold { + type uint32 { + range "0..800"; + } + description + "Set Psm Relative Switch Threshold"; + } + leaf psm-relative-switch-threshold-offset { + type int32 { + range "-300..300"; + } + description + "Set Psm Relative Switch Threshold Offset"; + } + } + container revertive { + description + "PSM Revertive Configuration"; + leaf enable { + type boolean; + description + "PSM revertive enabled"; + } + leaf wtr { + type uint32 { + range "0..4294967295"; + } + units "second"; + description + "Set wait time to restore in seconds"; + } + } + leaf mono-dir { + type boolean; + description + "Psm Uni directional configuration"; + } + leaf primary-path { + type Ots-psm-primary-path; + description + "Select Psm Primary Path"; + } + leaf path-protection { + type boolean; + description + "Psm path protection configuration"; + } + leaf section-protection { + type boolean; + description + "Psm section protection configuration"; + } + leaf lockout-from { + type Ots-psm-lockout-from; + description + "Exclude selected port from protection"; + } + } + leaf slot-id { + type uint32 { + range "1..3"; + } + description + "Set Slot"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper-sub1.yang new file mode 100644 index 000000000..aab73921b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper-sub1.yang @@ -0,0 +1,604 @@ +submodule Cisco-IOS-XR-ncs1001-ots-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1001-ots-oper { + prefix Cisco-IOS-XR-ncs1001-ots-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1001-ots package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-28 { + description + "moved channel-view-slot and ampli-view-slot leaves under the new added parent leaf amplier"; + semver:module-version "3.0.0"; + } + revision 2020-12-12 { + description + "XML query for CLI show hw-module ampli-trail-view/channel-trail-view does not return a response"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-23 { + description + "first release."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Chfilter { + type enumeration { + enum "ch-filter-active" { + value 0; + description + "Active"; + } + enum "ch-filter-all" { + value 1; + description + "All"; + } + enum "ch-filter-active-psd" { + value 2; + description + "ActivePsd"; + } + enum "ch-filter-all-psd" { + value 3; + description + "AllPsd"; + } + } + description + "Chfilter"; + } + + typedef Trailview { + type enumeration { + enum "trail-view-all" { + value 0; + description + "All"; + } + enum "trail-view-bst" { + value 1; + description + "Booster"; + } + enum "trail-view-pre" { + value 2; + description + "Pre"; + } + } + description + "Trailview"; + } + + grouping HWMOD-AMPLI-TRAIL-INFO-PRE-B { + description + "HWMOD AMPLI TRAIL INFO PRE B"; + leaf eqpt-fail { + type uint8; + description + "Eqpt fail"; + } + leaf view { + type Trailview; + description + "View"; + } + leaf com-port-number { + type uint8; + description + "ComPortNumber"; + } + leaf com-port-name { + type string { + length "0..32"; + } + description + "ComPortName"; + } + leaf line-port-number { + type uint8; + description + "LinePortNumber"; + } + leaf line-port-name { + type string { + length "0..32"; + } + description + "LinePortName"; + } + leaf pre-in-rx-power { + type int16; + description + "PreInRxPower"; + } + leaf pre-in-rx-total-power { + type int16; + description + "PreInRxTotalPower"; + } + leaf pre-in-rx-power-th-low { + type int16; + description + "PreInRxPowerThLow"; + } + leaf pre-out-tx-power { + type int16; + description + "PreOutTxPower"; + } + leaf pre-out-tx-total-power { + type int16; + description + "PreOutTxTotalPower"; + } + leaf pre-out-tx-power-th-low { + type int16; + description + "PreOutTxPowerThLow"; + } + leaf pre-working-mode { + type uint16; + description + "PreWorkingMode"; + } + leaf pre-safety-mode { + type uint16; + description + "PreSafetyMode"; + } + leaf pre-gain-range { + type uint16; + description + "PreGainRange"; + } + leaf pre-osri { + type uint16; + description + "PreOsri"; + } + leaf pre-channel-power { + type int16; + description + "PreChannelPower"; + } + leaf pre-gain { + type int16; + description + "PreGain"; + } + leaf pre-tilt { + type int16; + description + "PreTilt"; + } + } + + grouping HWMOD-AMPLI-TRAIL-INFO-BST-B { + description + "HWMOD AMPLI TRAIL INFO BST B"; + leaf eqpt-fail { + type uint8; + description + "Eqpt fail"; + } + leaf view { + type Trailview; + description + "View"; + } + leaf com-port-number { + type uint8; + description + "ComPortNumber"; + } + leaf com-port-name { + type string { + length "0..32"; + } + description + "ComPortName"; + } + leaf line-port-number { + type uint8; + description + "LinePortNumber"; + } + leaf line-port-name { + type string { + length "0..32"; + } + description + "LinePortName"; + } + leaf bst-in-rx-power { + type int16; + description + "BstInRxPower"; + } + leaf bst-in-rx-total-power { + type int16; + description + "BstInRxTotalPower"; + } + leaf bst-in-rx-power-th-low { + type int16; + description + "BstInRxPowerThLow"; + } + leaf bst-out-tx-power { + type int16; + description + "BstOutTxPower"; + } + leaf bst-out-tx-total-power { + type int16; + description + "BstOutTxTotalPower"; + } + leaf bst-out-tx-power-th-low { + type int16; + description + "BstOutTxPowerThLow"; + } + leaf bst-working-mode { + type uint16; + description + "BstWorkingMode"; + } + leaf bst-safety-mode { + type uint16; + description + "BstSafetyMode"; + } + leaf bst-gain-range { + type uint16; + description + "BstGainRange"; + } + leaf bst-osri { + type uint16; + description + "BstOsri"; + } + leaf bst-channel-power { + type int16; + description + "BstChannelPower"; + } + leaf bst-gain { + type int16; + description + "BstGain"; + } + leaf bst-tilt { + type int16; + description + "BstTilt"; + } + } + + grouping HWMOD-CHANNEL-TRAIL-INFO-B { + description + "HWMOD CHANNEL TRAIL INFO B"; + leaf eqpt-fail { + type uint8; + description + "Eqpt fail"; + } + leaf filter { + type Chfilter; + description + "Filter"; + } + leaf och-name { + type string { + length "0..64"; + } + description + "OchName"; + } + leaf wavelength { + type uint32; + description + "Wavelength"; + } + leaf frequency { + type uint32; + description + "Frequency"; + } + leaf com-port-number { + type uint8; + description + "ComPortNumber"; + } + leaf com-port-name { + type string { + length "0..32"; + } + description + "ComPortName"; + } + leaf com-rx-power-th-low { + type int16; + description + "ComRxPowerThLow"; + } + leaf line-port-number { + type uint8; + description + "LinePortNumber"; + } + leaf line-port-name { + type string { + length "0..32"; + } + description + "LinePortName"; + } + leaf line-rx-power-th-low { + type int16; + description + "LineRxPowerThLow"; + } + leaf bst-in-rx-power { + type int32; + description + "BstInRxPower"; + } + leaf bst-out-tx-power { + type int32; + description + "BstOutTxPower"; + } + leaf pre-in-rx-power { + type int32; + description + "PreInRxPower"; + } + leaf pre-out-tx-power { + type int32; + description + "PreOutTxPower"; + } + leaf width { + type uint32; + description + "Width"; + } + leaf no-channels-active { + type boolean; + description + "NoChannelsActive"; + } + leaf no-grid-mode { + type boolean; + description + "NoGridMode"; + } + } + + grouping HWMOD-AMPLI-TRAIL-INFO-B { + description + "HWMOD AMPLI TRAIL INFO B"; + leaf eqpt-fail { + type uint8; + description + "Eqpt fail"; + } + leaf view { + type Trailview; + description + "View"; + } + leaf com-port-number { + type uint8; + description + "ComPortNumber"; + } + leaf com-port-name { + type string { + length "0..32"; + } + description + "ComPortName"; + } + leaf line-port-number { + type uint8; + description + "LinePortNumber"; + } + leaf line-port-name { + type string { + length "0..32"; + } + description + "LinePortName"; + } + leaf bst-in-rx-power { + type int16; + description + "BstInRxPower"; + } + leaf bst-in-rx-total-power { + type int16; + description + "BstInRxTotalPower"; + } + leaf bst-in-rx-power-th-low { + type int16; + description + "BstInRxPowerThLow"; + } + leaf bst-out-tx-power { + type int16; + description + "BstOutTxPower"; + } + leaf bst-out-tx-total-power { + type int16; + description + "BstOutTxTotalPower"; + } + leaf bst-out-tx-power-th-low { + type int16; + description + "BstOutTxPowerThLow"; + } + leaf bst-working-mode { + type uint16; + description + "BstWorkingMode"; + } + leaf bst-safety-mode { + type uint16; + description + "BstSafetyMode"; + } + leaf bst-gain-range { + type uint16; + description + "BstGainRange"; + } + leaf bst-osri { + type uint16; + description + "BstOsri"; + } + leaf bst-channel-power { + type int16; + description + "BstChannelPower"; + } + leaf bst-gain { + type int16; + description + "BstGain"; + } + leaf bst-tilt { + type int16; + description + "BstTilt"; + } + leaf pre-in-rx-power { + type int16; + description + "PreInRxPower"; + } + leaf pre-in-rx-total-power { + type int16; + description + "PreInRxTotalPower"; + } + leaf pre-in-rx-power-th-low { + type int16; + description + "PreInRxPowerThLow"; + } + leaf pre-out-tx-power { + type int16; + description + "PreOutTxPower"; + } + leaf pre-out-tx-total-power { + type int16; + description + "PreOutTxTotalPower"; + } + leaf pre-out-tx-power-th-low { + type int16; + description + "PreOutTxPowerThLow"; + } + leaf pre-working-mode { + type uint16; + description + "PreWorkingMode"; + } + leaf pre-safety-mode { + type uint16; + description + "PreSafetyMode"; + } + leaf pre-gain-range { + type uint16; + description + "PreGainRange"; + } + leaf pre-osri { + type uint16; + description + "PreOsri"; + } + leaf pre-channel-power { + type int16; + description + "PreChannelPower"; + } + leaf pre-gain { + type int16; + description + "PreGain"; + } + leaf pre-tilt { + type int16; + description + "PreTilt"; + } + } + + grouping OTS-HWMOD-OP { + description + "hwmodule trail info"; + list ampli-trail-info { + description + "ampli trail info"; + uses HWMOD-AMPLI-TRAIL-INFO-B; + } + list channel-trail-info { + description + "channel trail info"; + uses HWMOD-CHANNEL-TRAIL-INFO-B; + } + list ampli-trail-info-bst { + description + "ampli trail info bst"; + uses HWMOD-AMPLI-TRAIL-INFO-BST-B; + } + list ampli-trail-info-pre { + description + "ampli trail info pre"; + uses HWMOD-AMPLI-TRAIL-INFO-PRE-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper.yang new file mode 100644 index 000000000..b5e604d5d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-ots-oper.yang @@ -0,0 +1,171 @@ +module Cisco-IOS-XR-ncs1001-ots-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1001-ots-oper"; + prefix ncs1001-ots-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1001-ots-oper-sub1 { + revision-date 2022-09-28; + } + + 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 ncs1001-ots package operational data. + + This module contains definitions + for the following management objects: + hw-module: ncs1001 hw-module command chain + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-28 { + description + "moved channel-view-slot and ampli-view-slot leaves under the new added parent leaf amplier"; + semver:module-version "3.0.0"; + } + revision 2020-12-12 { + description + "XML query for CLI show hw-module ampli-trail-view/channel-trail-view does not return a response"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-23 { + description + "first release."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-ampli-trail-data { + type enumeration { + enum "all" { + value 0; + description + "Displays Booster and Pre trail data"; + } + enum "bst" { + value 1; + description + "Displays Booster trail data"; + } + enum "pre" { + value 2; + description + "Displays Pre trail data"; + } + } + description + "Ots ampli trail data"; + } + + typedef Ots-channels-trail-data { + type enumeration { + enum "all" { + value 0; + description + "Displays all channels trail data (dBm)"; + } + enum "active" { + value 1; + description + "Displays active channels trail data (dBm)"; + } + enum "all-psd" { + value 2; + description + "Displays all channels trail data (psd)"; + } + enum "active-psd" { + value 3; + description + "Displays active channels trail data (psd)"; + } + } + description + "Ots channels trail data"; + } + + container hw-module { + config false; + description + "ncs1001 hw-module command chain"; + container amplifier { + description + "entry point for show hw-module ampli-"; + container amplifier-trails { + description + "Amplifier trail data information"; + list amplifier-trail { + key "slot-id"; + description + "Slot Id"; + leaf slot-id { + type uint32; + description + "Details associated with a particular slot + number"; + } + list amplifier-trail-data { + key "amplifier-trail-data-type"; + description + "Trail data information"; + leaf amplifier-trail-data-type { + type Ots-ampli-trail-data; + description + "Select trail data"; + } + uses OTS-HWMOD-OP; + } + } + } + container channels-trails { + description + "Channels trail data information"; + list channels-trail { + key "slot-id"; + description + "Slot Id"; + leaf slot-id { + type uint32 { + range "1..3"; + } + description + "Details associated with a particular slot + number"; + } + list channels-trail-data { + key "channels-trail-data-type"; + description + "Trail data information"; + leaf channels-trail-data-type { + type Ots-channels-trail-data; + description + "Select trail data"; + } + uses OTS-HWMOD-OP; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper-sub1.yang new file mode 100644 index 000000000..d407235f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper-sub1.yang @@ -0,0 +1,98 @@ +submodule Cisco-IOS-XR-ncs1001-passive-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1001-passive-oper { + prefix Cisco-IOS-XR-ncs1001-passive-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1001-passive package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-12 { + description + "XML query for CLI show hw-module ampli-trail-view/channel-trail-view does not return a response"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping HWMOD-PASSIVE-EEPROM-IL-LIST-B { + description + "Passive il list"; + leaf from { + type string { + length "0..32"; + } + description + "from value"; + } + leaf to { + type string { + length "0..32"; + } + description + "to value"; + } + leaf il-int { + type uint8; + description + "insertion loss inte part"; + } + leaf il-dec { + type uint8; + description + "insertion loss dec part"; + } + } + + grouping HWMOD-PASSIVE-EEPROM-DATA-B { + description + "Passive Eeprom ascii"; + leaf eeprom-image { + type string { + length "0..8192"; + } + description + "Eeprom Image in ascii format"; + } + } + + grouping OTS-HWMOD-PASSIVE-EEPROM-OP { + description + "HwModule Passive Eeprom"; + list passive-eeprom-data { + description + "Passive Eeprom Data"; + uses HWMOD-PASSIVE-EEPROM-DATA-B; + } + list passive-eeprom-il { + description + "Passive Eeprom Il list"; + uses HWMOD-PASSIVE-EEPROM-IL-LIST-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper.yang new file mode 100644 index 000000000..eedaf6e51 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1001-passive-oper.yang @@ -0,0 +1,105 @@ +module Cisco-IOS-XR-ncs1001-passive-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1001-passive-oper"; + prefix ncs1001-passive-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1001-passive-oper-sub1 { + revision-date 2020-12-12; + } + + 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 ncs1001-passive package operational data. + + This module contains definitions + for the following management objects: + hw-module: ncs1001 hw-module command chain + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-12 { + description + "XML query for CLI show hw-module ampli-trail-view/channel-trail-view does not return a response"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ots-passive-eeprom-data { + type enumeration { + enum "all" { + value 0; + description + "Displays all eeprom data"; + } + enum "il" { + value 1; + description + "Displays insertion loss data"; + } + enum "manuf" { + value 2; + description + "Displays manuf data"; + } + } + description + "Ots passive eeprom data"; + } + + container hw-module { + config false; + description + "ncs1001 hw-module command chain"; + container passive-eeproms { + description + "Passive eeprom data information"; + list passive-eeprom { + key "usb-port"; + description + "Passive Eeprom Info"; + leaf usb-port { + type uint32 { + range "0..3"; + } + description + "Details associated with a particular port + number"; + } + list passive-eeprom-data { + key "passive-eeprom-data-type"; + description + "Display data type list"; + leaf passive-eeprom-data-type { + type Ots-passive-eeprom-data; + description + "Details associated with a particular Data + type"; + } + uses OTS-HWMOD-PASSIVE-EEPROM-OP; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1.yang new file mode 100644 index 000000000..c739908de --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1.yang @@ -0,0 +1,180 @@ +submodule Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1k-macsec-ea-oper { + prefix Cisco-IOS-XR-ncs1k-macsec-ea-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1k-macsec-ea package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ncs1k-cipher-suit { + type enumeration { + enum "gcm-aes-256" { + value 0; + description + "GCM AES 256"; + } + enum "gcm-aes-128" { + value 1; + description + "GCM AES 128"; + } + enum "gcm-aes-xpn-256" { + value 2; + description + "GCM AES XPN 256"; + } + } + description + "Ncs1k cipher suit"; + } + + grouping NCS1K-AN-STATUS { + description + "Association Number status"; + leaf association-number { + type uint8; + description + "Assocition Number"; + } + leaf device-association-number { + type uint8; + description + "Devive Association Number"; + } + leaf short-secure-channel-id { + type uint32; + description + "Short Secure Channel Id"; + } + leaf programmed-time { + type string { + length "0..30"; + } + description + "Key Programmed Time"; + } + leaf key-crc { + type xr:Hex-integer; + description + "32bit CRC of Programmed Key"; + } + leaf-list xpn-salt { + type xr:Hex-integer; + description + "XPN Salt"; + } + } + + grouping NCS1K-SC-STATUS { + description + "Secure Channel status"; + leaf protection-enabled { + type boolean; + description + "Protection Enabled"; + } + leaf secure-channel-id { + type uint64; + description + "Secure Channel Id"; + } + leaf confidentiality-offset { + type uint32; + description + "Confidentiality offset"; + } + leaf cipher-suite { + type Ncs1k-cipher-suit; + description + "Cipher Suite"; + } + leaf initial-packet-number { + type uint64; + description + "Initial Packet Number"; + } + leaf secure-tag-length { + type uint32; + description + "Secure Tag Length"; + } + leaf max-packet-number { + type uint64; + description + "Maximum Packet Number"; + } + leaf recent-packet-number { + type uint64; + description + "Recent Packet Number"; + } + list active-association { + description + "Active Associations"; + uses NCS1K-AN-STATUS; + } + } + + grouping NCS1K-MACSEC-IF-STATUS { + description + "Interface Status details"; + container encrypt-sc-status { + description + "Encrypt Secure Channel Status"; + uses NCS1K-SC-STATUS; + } + container decrypt-sc-status { + description + "Decrypt Secure Channel Status"; + uses NCS1K-SC-STATUS; + } + leaf replay-window-size { + type uint32; + description + "Replay Window Size"; + } + leaf must-secure { + type boolean; + description + "Must Secure"; + } + leaf secure-mode { + type uint32; + description + "Secure Mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper.yang new file mode 100644 index 000000000..a77d1a163 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-macsec-ea-oper.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-ncs1k-macsec-ea-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1k-macsec-ea-oper"; + prefix ncs1k-macsec-ea-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1k-macsec-ea-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ncs1k-macsec-ea package operational data. + + This module contains definitions + for the following management objects: + ncs1k-macsec-oper: Macsec data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ncs1k-macsec-oper { + config false; + description + "Macsec data"; + container ncs1k-macsec-ctrlr-names { + description + "All Macsec operational data"; + list ncs1k-macsec-ctrlr-name { + key "name"; + description + "Interface name"; + container ncs1k-status-info { + description + "controller data"; + uses NCS1K-MACSEC-IF-STATUS; + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-cfg.yang new file mode 100644 index 000000000..5b78e92fb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-cfg.yang @@ -0,0 +1,203 @@ +module Cisco-IOS-XR-ncs1k-mxp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1k-mxp-cfg"; + prefix ncs1k-mxp-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 ncs1k-mxp package configuration. + + This module contains definitions + for the following management objects: + hardware-module: NCS1k HW module config + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Trunk-data-rate { + type enumeration { + enum "hundred-gig" { + value 2; + description + "HundredGig"; + } + enum "two-hundred-gig" { + value 3; + description + "TwoHundredGig"; + } + enum "two-hundred-fifty-gig" { + value 4; + description + "TwoHundredFiftyGig"; + } + } + description + "Trunk data rate"; + } + + typedef Ains-soak-hours-range { + type uint32 { + range "0..48"; + } + description + "Ains soak hours range"; + } + + typedef Client-data-rate { + type enumeration { + enum "ten-gig" { + value 1; + description + "TenGig"; + } + enum "forty-gig" { + value 2; + description + "FortyGig"; + } + enum "hundred-gig" { + value 3; + description + "HundredGig"; + } + enum "ten-and-hundred-gig" { + value 4; + description + "TenAndHundredGig"; + } + } + description + "Client data rate"; + } + + typedef Fec { + type enumeration { + enum "sd7" { + value 1; + description + "SoftDecision7"; + } + enum "sd20" { + value 2; + description + "SoftDecision20"; + } + } + description + "Fec"; + } + + typedef Ains-soak-minutes-range { + type uint32 { + range "0..59"; + } + description + "Ains soak minutes range"; + } + + container hardware-module { + description + "NCS1k HW module config"; + list node { + key "location"; + description + "Node"; + leaf location { + type xr:Cisco-ios-xr-string; + description + "Fully qualified line card specification"; + } + list slice { + key "slice-id"; + description + "Slice to be Provisioned"; + container values { + presence "Contains mandatory nodes that used to set default values"; + description + "Data rates & FEC"; + leaf client-rate { + type Client-data-rate; + description + "Client Rate"; + } + leaf trunk-rate { + type Trunk-data-rate; + description + "TrunkRate"; + } + leaf fec { + type Fec; + description + "FEC"; + } + leaf encrypted { + type boolean; + mandatory true; + description + "Encrypted"; + } + } + container client-ains { + description + "AINS Soak Interval Value"; + leaf hours { + type Ains-soak-hours-range; + units "hour"; + description + "Hours"; + } + leaf minutes { + type Ains-soak-minutes-range; + units "minute"; + description + "Minutes"; + } + } + leaf lldp { + type boolean; + description + "Drop LLDP Packets"; + } + leaf slice-id { + type xr:Cisco-ios-xr-string; + description + "Set Slice"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1.yang new file mode 100644 index 000000000..0cbd7c9b8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1.yang @@ -0,0 +1,337 @@ +submodule Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1k-mxp-headless-oper { + prefix Cisco-IOS-XR-ncs1k-mxp-headless-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1k-mxp-headless package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-03-30 { + description + "PRBS stats added"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mxp-otn-prbs-status { + type enumeration { + enum "locked" { + value 0; + description + "Locked"; + } + enum "not-locked" { + value 1; + description + "Not Locked"; + } + enum "not-applicable" { + value 2; + description + "Not Applicable"; + } + enum "locked-with-errors" { + value 3; + description + "Locked With Errors"; + } + } + description + "Mxp otn prbs status"; + } + + grouping MXP-ETHER-PRIM-INFO { + description + "Ether statistics"; + leaf rx-pkts-over-sized { + type uint64; + description + "RxPktsOverSized"; + } + leaf rx-pkts-bad-fcs { + type uint64; + description + "RxPktsBadFcs"; + } + leaf rx-error-jabbers { + type uint64; + description + "RxErrorJabbers"; + } + leaf rx-pkts-multicast { + type uint64; + description + "RxPktsMulticast"; + } + leaf rx-pkts-broadcast { + type uint64; + description + "RxPktsBroadcast"; + } + leaf rx-pkts-under-sized { + type uint64; + description + "RxPktsUnderSized"; + } + leaf rx-packets { + type uint64; + description + "RxPackets"; + } + leaf rx-total-bytes { + type uint64; + description + "RxTotalBytes"; + } + leaf rx-bytes-good { + type uint64; + description + "RxBytesGood"; + } + leaf rx-pkts-good { + type uint64; + description + "RxPktsGood"; + } + leaf tx-bytes-good { + type uint64; + description + "TxBytesGood"; + } + leaf tx-pkts-good { + type uint64; + description + "TxPktsGood"; + } + leaf rx-recv-fragments { + type uint64; + description + "RxRecvFragments"; + } + leaf rx-pkts64-bytes { + type uint64; + description + "RxPkts64Bytes"; + } + leaf rx-pkts65-to127-bytes { + type uint64; + description + "RxPkts65To127Bytes"; + } + leaf rx-pkts128to255-bytes { + type uint64; + description + "RxPkts128to255Bytes"; + } + leaf rx-pkts256-to511-bytes { + type uint64; + description + "RxPkts256To511Bytes"; + } + leaf rx-pkts512-to1023-bytes { + type uint64; + description + "RxPkts512To1023Bytes"; + } + leaf rx-pkts1024-to1518-bytes { + type uint64; + description + "RxPkts1024To1518Bytes"; + } + leaf rx-pkts-unicast { + type uint64; + description + "RxPktsUnicast"; + } + leaf tx-packets { + type uint64; + description + "TxPackets"; + } + leaf tx-total-bytes { + type uint64; + description + "TxTotalBytes"; + } + leaf tx-pkts-under-sized { + type uint64; + description + "TxPktsUnderSized"; + } + leaf tx-pkts-over-sized { + type uint64; + description + "TxPktsOverSized"; + } + leaf tx-fragments { + type uint64; + description + "TxFragments"; + } + leaf tx-jabber { + type uint64; + description + "TxJabber"; + } + leaf tx-bad-fcs { + type uint64; + description + "TxBadFCS"; + } + leaf rx-pkt-drop { + type uint64; + description + "RxPktDrop"; + } + leaf rx-pause { + type uint64; + description + "RxPause"; + } + leaf tx-pause { + type uint64; + description + "TxPause"; + } + leaf rx-lldp-pkt { + type uint64; + description + "RxLldpPkt"; + } + leaf rx8021q-pkt { + type uint64; + description + "Rx8021QPkt"; + } + } + + grouping MXP-HEADLESS-ETHER-PRIM-INFO { + description + "Ether Headless Statistics"; + container ether-statistics { + description + "Ether Statistics"; + uses MXP-ETHER-PRIM-INFO; + } + leaf started-stateful { + type boolean; + description + "Started Stateful"; + } + leaf headless-start-time { + type string { + length "0..64"; + } + description + "Headless Start Time"; + } + leaf headless-end-time { + type string { + length "0..64"; + } + description + "Headless End Time"; + } + } + + grouping MXP-OTN-PRBS-INFO { + description + "PRBS Statistics"; + leaf ebc { + type uint64; + description + "EBC"; + } + leaf sync-status { + type Mxp-otn-prbs-status; + description + "SyncStatus"; + } + } + + grouping MXP-OTN-CNT-INFO { + description + "OTN statistics"; + leaf sm-bip { + type uint64; + description + "SmBip"; + } + leaf sm-bei { + type uint64; + description + "SmBei"; + } + leaf fec-ec { + type uint64; + description + "FecEc"; + } + leaf fec-uc { + type uint64; + description + "FecUc"; + } + } + + grouping MXP-HEADLESS-OTN-CNT-INFO { + description + "OTN Headless Statistics"; + container otn-statistics { + description + "OTN statistics"; + uses MXP-OTN-CNT-INFO; + } + container prbs-statistics { + description + "PRBS Statistics"; + uses MXP-OTN-PRBS-INFO; + } + leaf started-stateful { + type boolean; + description + "Started Stateful"; + } + leaf headless-start-time { + type string { + length "0..64"; + } + description + "Headless Start Time"; + } + leaf headless-end-time { + type string { + length "0..64"; + } + description + "Headless End Time"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper.yang new file mode 100644 index 000000000..df63cdfd8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-headless-oper.yang @@ -0,0 +1,90 @@ +module Cisco-IOS-XR-ncs1k-mxp-headless-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1k-mxp-headless-oper"; + prefix ncs1k-mxp-headless-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1k-mxp-headless-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ncs1k-mxp-headless package operational data. + + This module contains definitions + for the following management objects: + headless-func-data: Information related to headless + functionality + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-03-30 { + description + "PRBS stats added"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container headless-func-data { + config false; + description + "Information related to headless functionality"; + container otn-port-names { + description + "OTN Statistics collected during last headless + operation"; + list otn-port-name { + key "name"; + description + "port Name"; + leaf name { + type xr:Interface-name; + description + "Port name"; + } + uses MXP-HEADLESS-OTN-CNT-INFO; + } + } + container ethernet-port-names { + description + "Ethernet Statistics collected during last + headless operation"; + list ethernet-port-name { + key "name"; + description + "Port Name"; + leaf name { + type xr:Interface-name; + description + "Port name"; + } + uses MXP-HEADLESS-ETHER-PRIM-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1.yang new file mode 100644 index 000000000..f70a796b0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1.yang @@ -0,0 +1,190 @@ +submodule Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1k-mxp-lldp-oper { + prefix Cisco-IOS-XR-ncs1k-mxp-lldp-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1k-mxp-lldp package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-10-13 { + description + "Added Additional bag for show lldp neighbor command."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef In6-addr { + type inet:ipv6-address; + description + "In6 addr"; + } + + typedef Lldp-l3-addr-protocol { + type enumeration { + enum "ipv4" { + description + "IPv4"; + } + enum "ipv6" { + description + "IPv6"; + } + } + description + "Lldp l3 addr protocol"; + } + + grouping LLDP-L3-ADDR { + description + "LLDP L3 ADDR"; + leaf address-type { + type Lldp-l3-addr-protocol; + description + "AddressType"; + } + leaf ipv4-address { + when "../address-type = 'ipv4'" { + description + "../AddressType = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../address-type = 'ipv6'" { + description + "../AddressType = 'IPv6'"; + } + type In6-addr; + description + "IPv6 address"; + } + } + + grouping LLDP-ADDRESS-ENTRY { + description + "LLDP Address entry"; + list lldp-addr-entry { + description + "Next address entry in list"; + container address { + description + "Network layer address"; + uses LLDP-L3-ADDR; + } + leaf ma-subtype { + type uint8; + description + "MA sub type"; + } + leaf if-num { + type uint32; + description + "Interface num"; + } + } + } + + grouping MXP-LLDP-NEIGHBOR { + description + "LLDP neighbor info"; + container network-addresses { + description + "Management Addresses"; + uses LLDP-ADDRESS-ENTRY; + } + leaf source-mac { + type string; + description + "Mac address of the neighbor"; + } + leaf chassis-id { + type string; + description + "Chassis id"; + } + leaf port-id-detail { + type string; + description + "Outgoing port identifier"; + } + leaf hold-time { + type uint16; + description + "Remaining hold time"; + } + leaf port-description { + type string; + description + "Port Description"; + } + leaf system-name { + type string; + description + "System Name"; + } + leaf system-description { + type string; + description + "System Description"; + } + leaf system-capabilities { + type string; + description + "System Capabilities"; + } + leaf enabled-capabilities { + type string; + description + "Enabled Capabilities"; + } + leaf lldp-neighbor { + type string { + length "0..40"; + } + description + "LldpNeighbor"; + } + leaf drop-enabled { + type boolean; + description + "LLDP Packet Drop Enabled"; + } + leaf rx-lldp-pkts { + type uint64; + description + "Received LLDP Packets count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper.yang new file mode 100644 index 000000000..a340a934f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-lldp-oper.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-ncs1k-mxp-lldp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1k-mxp-lldp-oper"; + prefix ncs1k-mxp-lldp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1k-mxp-lldp-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ncs1k-mxp-lldp package operational data. + + This module contains definitions + for the following management objects: + lldp-snoop-data: Information related to LLDP Snoop + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-10-13 { + description + "Added Additional bag for show lldp neighbor command."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container lldp-snoop-data { + config false; + description + "Information related to LLDP Snoop"; + container ethernet-controller-names { + description + "Ethernet controller snoop data"; + list ethernet-controller-name { + key "name"; + description + "port Name"; + leaf name { + type xr:Interface-name; + description + "Port name"; + } + uses MXP-LLDP-NEIGHBOR; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper-sub1.yang new file mode 100644 index 000000000..cbaa06af0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper-sub1.yang @@ -0,0 +1,253 @@ +submodule Cisco-IOS-XR-ncs1k-mxp-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs1k-mxp-oper { + prefix Cisco-IOS-XR-ncs1k-mxp-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs1k-mxp package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-23 { + description + "Removing hidden parameters for some commands."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-20 { + description + "Modify the existing variable name."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Hw-module-slice-status { + type enumeration { + enum "not-provisioned" { + value 0; + description + "Not Provisioned"; + } + enum "provisioning-in-progress" { + value 1; + description + "Provisioning In-Progress"; + } + enum "provisioned" { + value 2; + description + "Provisioned"; + } + enum "provisioning-failed" { + value 3; + description + "Provisioning Failed"; + } + enum "provisioning-scheduled" { + value 4; + description + "Provisioning Scheduled"; + } + enum "reprovisioning-aborted" { + value 5; + description + "Reprovisioning Aborted"; + } + } + description + "Hw module slice status"; + } + + typedef Trunk-data-rate { + type enumeration { + enum "fifty-gig" { + value 1; + description + "FiftyGig"; + } + enum "hundred-gig" { + value 2; + description + "HundredGig"; + } + enum "two-hundred-gig" { + value 3; + description + "TwoHundredGig"; + } + enum "two-hundred-fifty-gig" { + value 4; + description + "TwoHundredFiftyGig"; + } + } + description + "Trunk data rate"; + } + + typedef Client-data-rate { + type enumeration { + enum "ten-gig" { + value 1; + description + "Ten Gig"; + } + enum "forty-gig" { + value 2; + description + "Forty Gig"; + } + enum "hundred-gig" { + value 3; + description + "Hundread Gig"; + } + enum "ten-and-hundred-gig" { + value 4; + description + "Ten and Hundread Gig"; + } + } + description + "Client data rate"; + } + + grouping MXP-HWMOD-OP { + description + "ipsec cli o/p entry"; + list slice-info { + description + "slice info"; + uses HW-MODULE-SLICE-INFO-B; + } + } + + grouping HW-MODULE-SLICE-CLIENT-TRAFFIC-SPLIT-INFO-B { + description + "HW MODULE SLICE CLIENT TRAFFIC SPLIT INFO B"; + leaf trunk-name { + type string { + length "0..64"; + } + description + "TrunkName"; + } + leaf if-index { + type uint32; + description + "IfIndex"; + } + leaf percentage { + type string { + length "0..8"; + } + description + "Percentage"; + } + } + + grouping HW-MODULE-SLICE-CLIENT-PORT-INFO-B { + description + "HW MODULE SLICE CLIENT PORT INFO B"; + leaf client-name { + type string { + length "0..64"; + } + description + "ClientName"; + } + leaf if-index { + type uint32; + description + "IfIndex"; + } + list trunk-port { + description + "trunk port"; + uses HW-MODULE-SLICE-CLIENT-TRAFFIC-SPLIT-INFO-B; + } + } + + grouping HW-MODULE-SLICE-INFO-B { + description + "HW MODULE SLICE INFO B"; + leaf slice-id { + type uint32; + description + "SliceId"; + } + leaf client-rate { + type Client-data-rate; + description + "ClientRate"; + } + leaf trunk-rate { + type Trunk-data-rate; + description + "TrunkRate"; + } + leaf status { + type Hw-module-slice-status; + description + "Status"; + } + leaf dp-fpga-fw-type { + type string { + length "0..10"; + } + description + "DpFpgaFwType"; + } + leaf dp-fpga-fw-ver { + type string { + length "0..10"; + } + description + "DpFpgaFwVer"; + } + leaf need-upg { + type uint32; + description + "NeedUpg"; + } + leaf encryption-supported { + type boolean; + description + "EncryptionSupported"; + } + leaf lldp-drop-status { + type boolean; + description + "LldpDropStatus"; + } + list client-port { + description + "client port"; + uses HW-MODULE-SLICE-CLIENT-PORT-INFO-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper.yang new file mode 100644 index 000000000..19327f58e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs1k-mxp-oper.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-ncs1k-mxp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs1k-mxp-oper"; + prefix ncs1k-mxp-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs1k-mxp-oper-sub1 { + revision-date 2022-06-23; + } + + 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 ncs1k-mxp package operational data. + + This module contains definitions + for the following management objects: + hw-module: mxp hw-module command chain + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-23 { + description + "Removing hidden parameters for some commands."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-20 { + description + "Modify the existing variable name."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container hw-module { + config false; + description + "mxp hw-module command chain"; + container slice-ids { + description + "Slice information"; + list slice-id { + key "slice-num"; + description + "Per slice num data"; + leaf slice-num { + type uint32; + description + "Details associated with a particular slice + number"; + } + uses HW-MODULE-SLICE-INFO-B; + } + } + container slice-all { + description + "Information for all slices"; + uses MXP-HWMOD-OP; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-cfg.yang new file mode 100644 index 000000000..643d86998 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-cfg.yang @@ -0,0 +1,421 @@ +module Cisco-IOS-XR-ncs4k-freqsync-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs4k-freqsync-cfg"; + prefix ncs4k-freqsync-cfg; + + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-freqsync-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a2; + } + + 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 ncs4k-freqsync package configuration. + + This module contains definitions + for the following management objects: + clock-interface: Configuration for a clock interface + frequency-synchronization: Frequency Synchronization global + configuration + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg, + Cisco-IOS-XR-ifmgr-cfg + modules with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-15 { + description + "Fixed must conditions bug."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsync-system-timing-mode { + type enumeration { + enum "line-only" { + value 2; + description + "Line-interfaces only"; + } + enum "clock-only" { + value 3; + description + "Clock-interfaces only"; + } + } + description + "Fsync system timing mode"; + } + + typedef Fsync-clock-source { + type enumeration { + enum "system" { + value 1; + description + "System"; + } + enum "independent" { + value 3; + description + "Independent"; + } + } + description + "Fsync clock source"; + } + + typedef Fsync-source-selection-logging { + type enumeration { + enum "changes" { + value 1; + description + "Log both selection changes and errors"; + } + enum "errors" { + value 2; + description + "Log selection errors"; + } + } + description + "Fsync source selection logging"; + } + + typedef Freq-sync-quality-level { + type enumeration { + enum "dnu" { + value 1; + description + "DNU"; + } + enum "prc" { + value 2; + description + "PRC"; + } + enum "sec" { + value 3; + description + "SEC"; + } + enum "ssua" { + value 4; + description + "SSU A"; + } + enum "ssub" { + value 5; + description + "SSU B"; + } + } + description + "Freq sync quality level"; + } + + augment "/a2:interface-configurations/a2:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container frequency-synchronization { + presence "CLI submode compatibility."; + description + "Frequency Synchronization interface + configuration"; + container input-quality-level { + description + "Set the input quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + container output-quality-level { + description + "Set the output quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + leaf ssm-disable { + type empty; + description + "Disable SSM on this source"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the time-of-day priority of this source"; + } + leaf selection-input { + type empty; + description + "Assign this source as a selection input"; + } + leaf enable { + type empty; + description + "Enable Frequency Synchronization"; + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the priority of this source"; + } + leaf wait-to-restore-time { + type uint32 { + range "0..12"; + } + default "5"; + description + "Set the wait-to-restore time for this source"; + } + } + } + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container frequency-synchronization { + description + "Frequency Synchronization trap configuration"; + leaf enable { + type empty; + description + "Enable Frequency Synchronization traps"; + } + leaf qlt { + type Freq-sync-quality-level; + description + "Enable Frequency Synchronization QLT trap"; + } + } + } + container clock-interface { + description + "Configuration for a clock interface"; + container clocks { + description + "Configuration for a clock interface"; + list clock { + key "clock-name"; + description + "Configuration for a clock interface"; + container frequency-synchronization { + description + "Frequency Synchronization clock configuraiton"; + container input-quality-level { + description + "Set the input quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + container output-quality-level { + description + "Set the output quality level"; + leaf quality-level-option { + type dt1:Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type dt1:Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + leaf ssm-disable { + type empty; + description + "Disable SSM on this source"; + } + leaf wait-to-restore-time { + type uint32 { + range "0..12"; + } + default "5"; + description + "Set the wait-to-restore time for this source"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the time-of-day priority of this source"; + } + leaf priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Set the priority of this source"; + } + leaf selection-input { + type empty; + description + "Assign this source as a selection input"; + } + } + leaf clock-name { + type string; + description + "Clock Name"; + } + } + } + } + container frequency-synchronization { + presence "CLI submode compatibility."; + description + "Frequency Synchronization global configuration"; + leaf clock-identity { + type yang:mac-address; + description + "Local clock ID"; + } + leaf quality-level-option { + type dt1:Fsync-ql-option; + default "option-1"; + description + "Quality level option"; + } + leaf source-selection-logging { + type Fsync-source-selection-logging; + description + "Source selection logging option"; + } + leaf clock-interface-source-type { + type Fsync-clock-source; + description + "Clock interface source type"; + } + leaf system-timing-mode { + type Fsync-system-timing-mode; + description + "System timing mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper-sub1.yang new file mode 100644 index 000000000..842a4197a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper-sub1.yang @@ -0,0 +1,2038 @@ +submodule Cisco-IOS-XR-ncs4k-freqsync-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs4k-freqsync-oper { + prefix Cisco-IOS-XR-ncs4k-freqsync-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs4k-freqsync package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "1.2.0"; + } + revision 2021-01-13 { + description + "Added ePRC QL code."; + semver:module-version "1.2.0"; + } + revision 2019-12-18 { + description + "Added selection point input information, source information, SSM and satellite counters to line interfaces, and information about selection points."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsync-bag-forwardtrace-node { + type enumeration { + enum "forward-trace-node-selection-point" { + description + "A selection point forwardtrace node"; + } + enum "forward-trace-node-source" { + description + "A timing source forwardtrace node"; + } + } + description + "Selection forwardtrace node information"; + } + + typedef Fsync-bag-clock-intf-class { + type enumeration { + enum "clock-class-bitst1" { + value 0; + description + "BITS T1"; + } + enum "clock-class-bitse1" { + value 1; + description + "BITS E1"; + } + enum "clock-class-bits2m" { + value 2; + description + "BITS 2M"; + } + enum "clock-class-bits6m" { + value 3; + description + "BITS 6M"; + } + enum "clock-class-bits64k" { + value 4; + description + "BITS 64K"; + } + enum "clock-class-dti" { + value 5; + description + "DTI"; + } + enum "clock-class-gps" { + value 6; + description + "GPS"; + } + enum "clock-class-chassis-sync" { + value 7; + description + "Inter-Chassis Sync"; + } + enum "clock-class-bitsj1" { + value 8; + description + "Bits J1"; + } + enum "clock-class-unknown" { + value 255; + description + "Unknown"; + } + } + description + "Clock-interface class"; + } + + typedef Fsync-bag-esmc-peer-state { + type enumeration { + enum "peer-down" { + value 1808240398; + description + "Peer state down"; + } + enum "peer-up" { + value 1808240399; + description + "Peer state up"; + } + enum "peer-timed-out" { + value 1808240400; + description + "Peer state timed out"; + } + enum "peer-unknown" { + value 1808240401; + description + "Peer state unknown"; + } + } + description + "ESMC peer state"; + } + + typedef Fsync-clock-id { + type uint64; + description + "Fsync clock id"; + } + + typedef Fsync-bag-damping-state { + type enumeration { + enum "damping-state-down" { + value 0; + description + "Down"; + } + enum "damping-state-coming-up" { + value 1; + description + "Coming up"; + } + enum "damping-state-up" { + value 2; + description + "Up"; + } + enum "damping-state-going-down" { + value 3; + description + "Going down"; + } + } + description + "Damping state"; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Fsync-bag-optional-string { + type string; + description + "Fsync bag optional string"; + } + + typedef Fsync-bag-stream-state { + type enumeration { + enum "stream-invalid" { + value 0; + description + "Invalid stream"; + } + enum "stream-unqualified" { + value 1; + description + "Unqualified stream"; + } + enum "stream-available" { + value 2; + description + "Stream available"; + } + enum "stream-acquiring" { + value 3; + description + "Stream acquiring"; + } + enum "stream-locked" { + value 4; + description + "Stream locked"; + } + enum "stream-holdover" { + value 5; + description + "Stream in holdover"; + } + enum "stream-freerun" { + value 6; + description + "Stream free running"; + } + enum "stream-failed" { + value 7; + description + "Stream failed"; + } + enum "stream-unmonitored" { + value 8; + description + "Unmonitored stream"; + } + enum "stream-error" { + value 9; + description + "Stream error"; + } + } + description + "Platform stream status"; + } + + typedef Fsync-output-id { + type uint8; + description + "Fsync output id"; + } + + typedef Fsync-bag-source-class { + type enumeration { + enum "invalid-source" { + value 0; + description + "Invalid source class"; + } + enum "ethernet-interface-source" { + value 1; + description + "Ethernet interface"; + } + enum "sonet-interface-source" { + value 2; + description + "SONET interface"; + } + enum "clock-interface-source" { + value 3; + description + "Clock interface"; + } + enum "internal-clock-source" { + value 4; + description + "Internal clock"; + } + enum "ptp-source" { + value 5; + description + "PTP clock"; + } + enum "satellite-access-interface-source" { + value 6; + description + "Satellite Access Interface"; + } + enum "ntp-source" { + value 7; + description + "NTP clock"; + } + enum "gnss-receiver" { + value 8; + description + "GNSS Receiver"; + } + } + description + "Source class"; + } + + typedef Fsync-bag-stream-input { + type enumeration { + enum "invalid-input" { + value 0; + description + "Invalid stream input"; + } + enum "source-input" { + value 1; + description + "Source stream input"; + } + enum "selection-point-input" { + value 2; + description + "Selection point stream input"; + } + } + description + "Stream input type"; + } + + typedef Fsync-bag-selection-point-desc { + type string; + description + "Fsync bag selection point desc"; + } + + typedef Fsync-selection-point-type { + type uint8; + description + "Fsync selection point type"; + } + + typedef Fsync-bag-ql-o2-g2-value { + type enumeration { + enum "option2-generation2-invalid" { + value 0; + description + "Invalid"; + } + enum "option2-generation2-do-not-use" { + value 1; + description + "Do not use"; + } + enum "option2-generation2-failed" { + value 2; + description + "Failed"; + } + enum "option2-generation2-none" { + value 3; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option2e-prtc" { + value 60; + description + "Enhanced primary reference timing clock"; + } + enum "option2prtc" { + value 61; + description + "Primary reference timing clock"; + } + enum "option2-generation2prs" { + value 62; + description + "Primary reference source"; + } + enum "option2-generation2stu" { + value 63; + description + "Synchronized - traceability unknown"; + } + enum "option2-generation2-stratum2" { + value 64; + description + "Stratum 2"; + } + enum "option2-generation2tnc" { + value 65; + description + "Transit node clock"; + } + enum "option2-generation2-stratum3e" { + value 66; + description + "Stratum 3E"; + } + enum "option2-generation2-stratum3" { + value 67; + description + "Stratum 3"; + } + enum "option2e-eec" { + value 68; + description + "Enhanced ethernet equipment clock"; + } + enum "option2eec2" { + value 69; + description + "Ethernet equipment clock"; + } + enum "option2-generation2smc" { + value 70; + description + "SONET clock self timed"; + } + enum "option2-generation2-stratum4" { + value 71; + description + "Stratum 4 freerun"; + } + enum "option2e-prc" { + value 73; + description + "Enhanced primary reference clock"; + } + } + description + "Quality level option 2, generation 2 values"; + } + + typedef Fsync-bag-ql-o2-g1-value { + type enumeration { + enum "option2-generation1-invalid" { + value 0; + description + "Invalid"; + } + enum "option2-generation1-do-not-use" { + value 1; + description + "Do not use"; + } + enum "option2-generation1-failed" { + value 2; + description + "Failed"; + } + enum "option2-generation1-none" { + value 3; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option2e-prtc" { + value 40; + description + "Enhanced primary reference timing clock"; + } + enum "option2prtc" { + value 41; + description + "Primary reference timing clock"; + } + enum "option2-generation1prs" { + value 42; + description + "Primary reference source"; + } + enum "option2-generation1stu" { + value 43; + description + "Synchronized - traceability unknown"; + } + enum "option2-generation1-stratum2" { + value 44; + description + "Stratum 2"; + } + enum "option2-generation1-stratum3" { + value 45; + description + "Stratum 3"; + } + enum "option2e-eec" { + value 46; + description + "Enhanced ethernet equipment clock"; + } + enum "option2eec2" { + value 47; + description + "Ethernet equipment clock"; + } + enum "option2-generation1smc" { + value 48; + description + "SONET clock self timed"; + } + enum "option2-generation1-stratum4" { + value 49; + description + "Stratum 4 freerun"; + } + enum "option2e-prc" { + value 51; + description + "Enhanced primary reference clock"; + } + } + description + "Quality level option 2, generation 1 values"; + } + + typedef Fsync-bag-ql-o1-value { + type enumeration { + enum "option1-invalid" { + value 0; + description + "Invalid"; + } + enum "option1-do-not-use" { + value 1; + description + "Do not use"; + } + enum "option1-failed" { + value 2; + description + "Failed"; + } + enum "option1-none" { + value 3; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option1e-prtc" { + value 20; + description + "Enhanced primary reference timing clock"; + } + enum "option1prtc" { + value 21; + description + "Primary reference timing clock"; + } + enum "option1prc" { + value 22; + description + "Primary reference clock"; + } + enum "option1ssu-a" { + value 23; + description + "Type I or V slave clock"; + } + enum "option1ssu-b" { + value 24; + description + "Type VI slave clock"; + } + enum "option1e-eec" { + value 25; + description + "Enhanced ethernet equipment clock"; + } + enum "option1eec1" { + value 26; + description + "Ethernet equipment clock"; + } + enum "option1sec" { + value 27; + description + "SONET equipment clock"; + } + enum "option1e-prc" { + value 28; + description + "Enhanced primary reference clock"; + } + } + description + "Quality level option 1 values"; + } + + typedef Fsync-bag-ql-option { + type enumeration { + enum "no-quality-level-option" { + value 0; + description + "Interface does not support SSMs or no QL has + been received"; + } + enum "option1" { + value 1; + description + "ITU-T Quality level option 1"; + } + enum "option2-generation1" { + value 2; + description + "ITU-T Quality level option 2, generation 1"; + } + enum "option2-generation2" { + value 3; + description + "ITU-T Quality level option 2, generation 2"; + } + enum "invalid-quality-level-option" { + value 4; + description + "Invalid quality level option"; + } + } + description + "Quality level option"; + } + + typedef Fsync-time-pri { + type uint8; + description + "Fsync time pri"; + } + + typedef Fsync-pri { + type uint8; + description + "Fsync pri"; + } + + typedef Fsync-bag-source-state { + type enumeration { + enum "source-state-unknown" { + value 0; + description + "Unknown"; + } + enum "source-state-up" { + value 1; + description + "Up"; + } + enum "source-state-down" { + value 2; + description + "Down"; + } + enum "source-state-unavailable" { + value 3; + description + "Unvailable"; + } + } + description + "Source state"; + } + + grouping FSYNC-BAG-FORWARDTRACE-NODE { + description + "Selection forwardtrace node"; + container selection-point { + when "../node-type = 'forward-trace-node-selection-point'" { + description + "../NodeType = 'ForwardTraceNodeSelectionPoint'"; + } + description + "Selection Point"; + uses FSYNC-BAG-SP-ID; + } + container source { + when "../node-type = 'forward-trace-node-source'" { + description + "../NodeType = 'ForwardTraceNodeSource'"; + } + description + "Timing Source"; + uses FSYNC-BAG-SOURCE-ID; + } + leaf node-type { + type Fsync-bag-forwardtrace-node; + description + "NodeType"; + } + } + + grouping FSYNC-BAG-FORWARDTRACE { + description + "Selection forwardtrace"; + container forward-trace-node { + description + "The source or selection point at this point in + the forwardtrace"; + uses FSYNC-BAG-FORWARDTRACE-NODE; + } + } + + grouping FSYNC-SELECTION-FORWARDTRACE-INFO { + description + "Selection forwardtrace information"; + list forward-trace { + description + "Selection ForwardTrace"; + uses FSYNC-BAG-FORWARDTRACE; + } + } + + grouping FSYNC-SELECTION-BACKTRACE-INFO { + description + "Selection backtrace information"; + container selected-source { + description + "Source which has been selected for output"; + uses FSYNC-BAG-SOURCE-ID; + } + list selection-point { + description + "List of selection points in the backtrace"; + uses FSYNC-BAG-SP-ID; + } + } + + grouping FSYNC-BAG-SUMMARY-TOD-INFO { + description + "Time-of-day summary information"; + container source { + description + "The source associated with this summary + information"; + uses FSYNC-BAG-SOURCE-ID; + } + leaf node-count { + type uint32; + description + "The number of cards having their time-of-day set + by the source"; + } + } + + grouping FSYNC-BAG-SUMMARY-FREQ-INFO { + description + "Frequency summary information"; + container source { + description + "The source associated with this summary + information"; + uses FSYNC-BAG-SOURCE-ID; + } + leaf clock-count { + type uint32; + description + "The number of clock-interfaces being driven by + the source"; + } + leaf ethernet-count { + type uint32; + description + "The number of Ethernet interfaces being driven + by the source"; + } + leaf sonet-count { + type uint32; + description + "The number of SONET/SDH interfaces being driven + by the source"; + } + } + + grouping FSYNC-SUMMARY-INFO { + description + "Frequency Synchronization summary information"; + list frequency-summary { + description + "Summary of sources selected for frequency"; + uses FSYNC-BAG-SUMMARY-FREQ-INFO; + } + list time-of-day-summary { + description + "Summary of sources selected for time-of-day"; + uses FSYNC-BAG-SUMMARY-TOD-INFO; + } + } + + grouping FSYNC-CLOCK-INFO-V2 { + description + "Clock interface information"; + container source { + description + "The source ID for the clock"; + uses FSYNC-BAG-SOURCE-ID; + } + container selected-source { + description + "Timing source selected for clock output"; + uses FSYNC-BAG-SOURCE-ID; + } + container quality-level-received { + description + "Received quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-damped { + description + "Quality level after damping has been applied"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-output { + description + "The effective output quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-selected-source { + description + "The quality level of the source driving this + interface"; + uses FSYNC-BAG-QL; + } + leaf state { + type Fsync-bag-source-state; + description + "Clock state"; + } + leaf down-reason { + type Fsync-bag-optional-string; + description + "Why the clock is down"; + } + leaf description { + type string; + description + "Clock description"; + } + leaf priority { + type Fsync-pri; + description + "Priority"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "Time-of-day priority"; + } + leaf ssm-support { + type boolean; + description + "The clock supports SSMs"; + } + leaf ssm-enabled { + type boolean; + description + "The clock output is squelched"; + } + leaf loopback { + type boolean; + description + "The clock is looped back"; + } + leaf selection-input { + type boolean; + description + "The clock is an input for selection"; + } + leaf squelched { + type boolean; + description + "The clock output is squelched"; + } + leaf damping-state { + type Fsync-bag-damping-state; + description + "Damping state"; + } + leaf damping-time { + type uint32; + description + "Time until damping state changes in ms"; + } + leaf input-disabled { + type boolean; + description + "Timing input is disabled"; + } + leaf output-disabled { + type boolean; + description + "Timing output is disabled"; + } + leaf wait-to-restore-time { + type uint16; + description + "Wait-to-restore time for the clock"; + } + leaf clock-type { + type Fsync-bag-clock-intf-class; + description + "The type of clock"; + } + leaf supports-frequency { + type boolean; + description + "The PTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The PTP clock supports time"; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-BAG-ETH-PEER-INFO { + description + "Ethernet peer information"; + container peer-state-time { + description + "Time of last peer state transition"; + uses FSYNC-BAG-TIMESTAMP; + } + container last-ssm { + description + "Time of last SSM received"; + uses FSYNC-BAG-TIMESTAMP; + } + leaf peer-state { + type Fsync-bag-esmc-peer-state; + description + "Peer state"; + } + leaf peer-up-count { + type uint16; + description + "Number of times the peer has come up"; + } + leaf peer-timeout-count { + type uint16; + description + "Number of times the peer has timed out"; + } + } + + grouping FSYNC-BAG-QL-DATA { + description + "Quality level data"; + leaf originator-clock-id { + type Fsync-clock-id; + description + "Originator clock ID"; + } + leaf sync-e-steps { + type uint8; + description + "SyncE steps"; + } + leaf esync-e-steps { + type uint8; + description + "Enhanced SyncE steps"; + } + leaf all-steps-e-sync-e { + type boolean; + description + "Whether all steps are running enhanced SyncE"; + } + leaf chain-complete { + type boolean; + description + "Whether the chain of extended QL TLVs is + complete"; + } + } + + grouping FSYNC-BAG-SAT-INFO-TYPE { + description + "Satellite info type"; + leaf satellite-id { + type uint16; + description + "The satellite ID"; + } + leaf sdac-key-length { + type uint16; + description + "The length of the SDAC key"; + } + leaf-list sdac-key { + type uint8; + description + "The SDAC key"; + } + } + + grouping FSYNC-BAG-ETH-ESMC-STATS { + description + "ESMC Statistics"; + leaf esmc-events-sent { + type uint16; + description + "Number of event SSMs sent"; + } + leaf esmc-events-received { + type uint16; + description + "Number of event SSMs received"; + } + leaf esmc-infos-sent { + type uint32; + description + "Number of info SSMs sent"; + } + leaf esmc-infos-received { + type uint32; + description + "Number of info SSms received"; + } + leaf esmc-dn-us-sent { + type uint32; + description + "Number of SSMs with DNU QL sent"; + } + leaf esmc-dn-us-received { + type uint32; + description + "Number of SSMs with DNU QL received"; + } + leaf esmc-malformed-received { + type uint16; + description + "Number of malformed packets received"; + } + leaf esmc-received-error { + type uint16; + description + "Number of received packets that failed to be + handled"; + } + } + + grouping FSYNC-IF-INFO-V2 { + description + "Line interface information"; + container source { + description + "The source ID for the interface"; + uses FSYNC-BAG-SOURCE-ID; + } + container selected-source { + description + "Timing source selected for interface output"; + uses FSYNC-BAG-SOURCE-ID; + } + container ssm-counters { + description + "Counters for sent and received SSMs on ESMC + enabled interfaces"; + uses FSYNC-BAG-ETH-ESMC-STATS; + } + container sat-info { + description + "Sat info for the source if source is a sat + access interface"; + uses FSYNC-BAG-SAT-INFO-TYPE; + } + container quality-level-received { + description + "Received quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-damped { + description + "Quality level after damping has been applied"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-effective-output { + description + "The effective output quality level"; + uses FSYNC-BAG-QL; + } + container quality-level-selected-source { + description + "The quality level of the source driving this + interface"; + uses FSYNC-BAG-QL; + } + container ql-data-received { + description + "Received quality level data"; + uses FSYNC-BAG-QL-DATA; + } + container ql-data-to-send { + description + "Quality level data to be sent"; + uses FSYNC-BAG-QL-DATA; + } + container ethernet-peer-information { + description + "Ethernet peer information"; + uses FSYNC-BAG-ETH-PEER-INFO; + } + container esmc-statistics { + description + "ESMC Statistics"; + uses FSYNC-BAG-ETH-ESMC-STATS; + } + leaf name { + type string; + description + "Interface name"; + } + leaf state { + type Im-state-enum; + description + "Interface state"; + } + leaf ssm-enabled { + type boolean; + description + "SSM is enabled on the interface"; + } + leaf squelched { + type boolean; + description + "The interface output is squelched"; + } + leaf selection-input { + type boolean; + description + "The interface is an input for selection"; + } + leaf priority { + type Fsync-pri; + description + "Priority"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "Time-of-day priority"; + } + leaf damping-state { + type Fsync-bag-damping-state; + description + "Damping state"; + } + leaf damping-time { + type uint32; + description + "Time until damping state changes in ms"; + } + leaf wait-to-restore-time { + type uint16; + description + "Wait-to-restore time for the interface"; + } + leaf supports-frequency { + type boolean; + description + "The PTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The PTP clock supports time"; + } + leaf source-flags { + type uint32; + description + "The source flags"; + } + leaf mac-address { + type string { + length "0..6"; + } + description + "The MAC address of the source"; + } + leaf source-config-flags { + type uint8; + description + "The source configuration flags"; + } + leaf last-up-down { + type uint32; + description + "Time the interface last went up or down"; + } + leaf platform-state { + type Fsync-bag-source-state; + description + "Platform state for the source"; + } + leaf pd-down-reason { + type Fsync-bag-optional-string; + description + "Why the stream is down"; + } + list local-stream { + description + "The local streams"; + uses FSYNC-BAG-STREAM-ID; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-SSM-INFO { + description + "SSM summary information"; + leaf ethernet-sources { + type uint32; + description + "Number of ethernet interfaces in synchronous + mode"; + } + leaf ethernet-sources-select { + type uint32; + description + "Number of ethernet interfaces assigned for + selection"; + } + leaf ethernet-sources-enabled { + type uint32; + description + "Number of ethernet interfaces with SSM enabled"; + } + leaf sonet-sources { + type uint32; + description + "Number of SONET interfaces in synchronous mode"; + } + leaf sonet-sources-select { + type uint32; + description + "Number of SONET interfaces assigned for + selection"; + } + leaf sonet-sources-enabled { + type uint32; + description + "Number of SONET interfaces with SSM enabled"; + } + leaf events-sent { + type uint32; + description + "Total event SSMs sent"; + } + leaf events-received { + type uint32; + description + "Total event SSMs received"; + } + leaf infos-sent { + type uint32; + description + "Total information SSMs sent"; + } + leaf infos-received { + type uint32; + description + "Total information SSMs received"; + } + leaf dn-us-sent { + type uint32; + description + "Total DNU SSMs sent"; + } + leaf dn-us-received { + type uint32; + description + "Total DNU SSMs received"; + } + } + + grouping FSYNC-BAG-TIMESTAMP { + description + "Timestamp"; + leaf seconds { + type uint32; + units "second"; + description + "Seconds"; + } + leaf nanoseconds { + type uint32; + units "nanosecond"; + description + "Nanoseconds"; + } + } + + grouping FSYNC-BAG-SP-OUTPUT-DEF-V2 { + description + "Output information for a selection point or + interface"; + leaf local-clock-ouput { + type boolean; + description + "Used for local clock output"; + } + leaf local-line-output { + type boolean; + description + "Used for local line interface output"; + } + leaf local-time-of-day-output { + type boolean; + description + "Used for local time-of-day output"; + } + list spa-selection-point { + description + "SPA selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + list chassis-selection-point { + description + "Chassis selection points"; + uses FSYNC-BAG-SP-INFO; + } + list router-selection-point { + description + "Router selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-SP-INFO-V2 { + description + "Selection point information"; + container output { + description + "Information about the output of the selection + point"; + uses FSYNC-BAG-SP-OUTPUT-DEF-V2; + } + container last-programmed { + description + "Time the SP was last programmed"; + uses FSYNC-BAG-TIMESTAMP; + } + container last-selection { + description + "Time the last selection was made"; + uses FSYNC-BAG-TIMESTAMP; + } + leaf selection-point-type { + type Fsync-selection-point-type; + description + "Selection Point Type"; + } + leaf description { + type string; + description + "Description"; + } + leaf inputs { + type uint32; + description + "Number of inputs"; + } + leaf inputs-selected { + type uint32; + description + "Number of inputs that are selected"; + } + leaf time-of-day-selection { + type boolean; + description + "The selection point is a time-of-day selection + point"; + } + leaf pending-s-ps { + type uint32; + description + "Flags indicating which SPs must be programmed + before this SP"; + } + leaf sp-flags { + type uint8; + description + "Flags for the SP structure"; + } + list stream { + description + "A list of stream IDs which are valid inputs to + this SP"; + uses FSYNC-BAG-STREAM-ID; + } + } + + grouping FSYNC-BAG-ERROR { + description + "Source QL config error information"; + container source { + description + "Source"; + uses FSYNC-BAG-SOURCE-ID; + } + container input-min-ql { + description + "Configured minimum input QL"; + uses FSYNC-BAG-QL; + } + container input-exact-ql { + description + "Configured exact input QL"; + uses FSYNC-BAG-QL; + } + container input-max-ql { + description + "Configured maximum input QL"; + uses FSYNC-BAG-QL; + } + container output-min-ql { + description + "Configured mininum output QL"; + uses FSYNC-BAG-QL; + } + container output-exact-ql { + description + "Configured exact output QL"; + uses FSYNC-BAG-QL; + } + container output-max-ql { + description + "Configured exact maximum QL"; + uses FSYNC-BAG-QL; + } + leaf enable-error { + type boolean; + description + "Frequency Synchronization enable error"; + } + leaf input-min-error { + type boolean; + description + "Minimum input QL option config error"; + } + leaf input-exact-error { + type boolean; + description + "Exact input QL config error"; + } + leaf input-max-error { + type boolean; + description + "Maximum input QL option config error"; + } + leaf ouput-min-error { + type boolean; + description + "Minimum output QL option config error"; + } + leaf output-exact-error { + type boolean; + description + "Exact output QL option config error"; + } + leaf output-max-error { + type boolean; + description + "Maximum output QL option config error"; + } + leaf ext-ql-input-min-error { + type boolean; + description + "Minimum input extended QL config error"; + } + leaf ext-ql-input-exact-error { + type boolean; + description + "Exact input extended QL config error"; + } + leaf ext-ql-input-max-error { + type boolean; + description + "Maximum input extended Ql config error"; + } + leaf ext-ql-ouput-min-error { + type boolean; + description + "Minimum output extended QL config error"; + } + leaf ext-ql-output-exact-error { + type boolean; + description + "Exact output extended QL config error"; + } + leaf ext-ql-output-max-error { + type boolean; + description + "Maximum output extended QL config error"; + } + leaf input-output-mismatch { + type boolean; + description + "Input/Output mismatch error"; + } + } + + grouping FSYNC-CONFIG-ERRORS-INFO { + description + "Configuration error information"; + list error-source { + description + "Configuration errors"; + uses FSYNC-BAG-ERROR; + } + } + + grouping FSYNC-NTP-INFO-V2 { + description + "Frequency Synchronization NTP information"; + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + leaf state { + type Fsync-bag-source-state; + description + "NTP state"; + } + leaf supports-frequency { + type boolean; + description + "The NTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The NTP clock supports time"; + } + leaf frequency-priority { + type Fsync-pri; + description + "The priority of the NTP clock when selected + between frequency sources"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "The priority of the NTP clock when selecting + between time-of-day sources"; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } + + grouping FSYNC-BAG-LAST-SP-ID { + description + "Last selection point ID"; + container selection-point { + description + "Last selection point"; + uses FSYNC-BAG-SP-ID; + } + leaf output-id { + type Fsync-output-id; + description + "Output ID"; + } + } + + grouping FSYNC-BAG-CLOCK-ID { + description + "Clock ID"; + leaf node { + type xr:Node-id; + description + "Node"; + } + leaf id { + type uint32; + description + "ID (port number for clock interface, receiver + number for GNSS receiver)"; + } + leaf clock-name { + type string { + length "0..144"; + } + description + "Name"; + } + } + + grouping FSYNC-BAG-SOURCE-ID { + description + "Source ID"; + container clock-id { + when "../source-class = 'clock-interface-source'" { + description + "../SourceClass = 'ClockInterfaceSource'"; + } + description + "Clock ID"; + uses FSYNC-BAG-CLOCK-ID; + } + container internal-clock-id { + when "../source-class = 'internal-clock-source'" { + description + "../SourceClass = 'InternalClockSource'"; + } + description + "Internal Clock ID"; + uses FSYNC-BAG-CLOCK-ID; + } + container gnss-receiver-id { + when "../source-class = 'gnss-receiver'" { + description + "../SourceClass = 'GNSSReceiver'"; + } + description + "GNSS Receiver ID"; + uses FSYNC-BAG-CLOCK-ID; + } + leaf source-class { + type Fsync-bag-source-class; + description + "SourceClass"; + } + leaf ethernet-interface { + when "../source-class = 'ethernet-interface-source'" { + description + "../SourceClass = 'EthernetInterfaceSource'"; + } + type xr:Interface-name; + description + "Ethernet interface"; + } + leaf sonet-interface { + when "../source-class = 'sonet-interface-source'" { + description + "../SourceClass = 'SONETInterfaceSource'"; + } + type xr:Interface-name; + description + "SONET interfaces"; + } + leaf ptp-node { + when "../source-class = 'ptp-source'" { + description + "../SourceClass = 'PTPSource'"; + } + type xr:Node-id; + description + "PTP Clock Node"; + } + leaf satellite-access-interface { + when "../source-class = 'satellite-access-interface-source'" { + description + "../SourceClass = + 'SatelliteAccessInterfaceSource'"; + } + type xr:Interface-name; + description + "Satellite Access Interface"; + } + leaf ntp-node { + when "../source-class = 'ntp-source'" { + description + "../SourceClass = 'NTPSource'"; + } + type xr:Node-id; + description + "NTP Clock Node"; + } + } + + grouping FSYNC-BAG-STREAM-ID { + description + "Stream ID"; + container source-id { + when "../stream-input = 'source-input'" { + description + "../StreamInput = 'SourceInput'"; + } + description + "Source ID"; + uses FSYNC-BAG-SOURCE-ID; + } + container selection-point-id { + when "../stream-input = 'selection-point-input'" { + description + "../StreamInput = 'SelectionPointInput'"; + } + description + "Selection point ID"; + uses FSYNC-BAG-LAST-SP-ID; + } + leaf stream-input { + type Fsync-bag-stream-input; + description + "StreamInput"; + } + } + + grouping FSYNC-BAG-SP-ID { + description + "Selection point ID"; + leaf selection-point-type { + type Fsync-selection-point-type; + description + "Selection point type"; + } + leaf selection-point-description { + type Fsync-bag-selection-point-desc; + description + "Selection point descrption"; + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + + grouping FSYNC-SP-INPUT-INFO { + description + "Selection point input information"; + container input-selection-point { + description + "The selection point the input is for"; + uses FSYNC-BAG-SP-ID; + } + container stream { + description + "Stream"; + uses FSYNC-BAG-STREAM-ID; + } + container original-source { + description + "Original source"; + uses FSYNC-BAG-SOURCE-ID; + } + container quality-level { + description + "Quality Level"; + uses FSYNC-BAG-QL; + } + leaf supports-frequency { + type boolean; + description + "The selection point input supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The selection point input supports time-of-day"; + } + leaf priority { + type Fsync-pri; + description + "Priority"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "Time-of-day priority"; + } + leaf selected { + type boolean; + description + "The selection point input is selected"; + } + leaf output-id-xr { + type Fsync-output-id; + description + "Platform output ID, if the input is selected"; + } + leaf platform-status { + type Fsync-bag-stream-state; + description + "Platform status"; + } + leaf platform-failed-reason { + type Fsync-bag-optional-string; + description + "Why the stream has failed"; + } + leaf source { + type string { + length "0..144"; + } + description + "Description of the source that this stream + represents (if any)"; + } + leaf stale { + type boolean; + description + "The stream is stale"; + } + leaf removed { + type boolean; + description + "Stream has been removed as input to this SP but + is still selected"; + } + leaf pd-update { + type boolean; + description + "Stream has update that has yet to be processed"; + } + } + + grouping FSYNC-BAG-SP-INFO { + description + "Selection point information"; + leaf selection-point { + type Fsync-selection-point-type; + description + "Selection point ID"; + } + leaf selection-point-description { + type Fsync-bag-selection-point-desc; + description + "Selection point description"; + } + } + + grouping FSYNC-BAG-QL { + description + "Quality level"; + leaf quality-level-option { + type Fsync-bag-ql-option; + description + "QualityLevelOption"; + } + leaf option1-value { + when "../quality-level-option = 'option1'" { + description + "../QualityLevelOption = 'Option1'"; + } + type Fsync-bag-ql-o1-value; + description + "ITU-T Option 1 QL value"; + } + leaf option2-generation1-value { + when "../quality-level-option = 'option2-generation1'" { + description + "../QualityLevelOption = 'Option2Generation1'"; + } + type Fsync-bag-ql-o2-g1-value; + description + "ITU-T Option 2, generation 1 value"; + } + leaf option2-generation2-value { + when "../quality-level-option = 'option2-generation2'" { + description + "../QualityLevelOption = 'Option2Generation2'"; + } + type Fsync-bag-ql-o2-g2-value; + description + "ITU-T Option 2, generation 2 value"; + } + } + + grouping FSYNC-PTP-INFO-V2 { + description + "Frequency Synchronization PTP information"; + container quality-level-effective-input { + description + "The effective input quality level"; + uses FSYNC-BAG-QL; + } + leaf state { + type Fsync-bag-source-state; + description + "PTP state"; + } + leaf supports-frequency { + type boolean; + description + "The PTP clock supports frequency"; + } + leaf supports-time-of-day { + type boolean; + description + "The PTP clock supports time"; + } + leaf frequency-priority { + type Fsync-pri; + description + "The priority of the PTP clock when selected + between frequency sources"; + } + leaf time-of-day-priority { + type Fsync-time-pri; + description + "The priority of the PTP clock when selecting + between time-of-day sources"; + } + list spa-selection-point { + description + "Spa selection points"; + uses FSYNC-BAG-SP-INFO; + } + list node-selection-point { + description + "Node selection points"; + uses FSYNC-BAG-SP-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper.yang new file mode 100644 index 000000000..ac2a6cba5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs4k-freqsync-oper.yang @@ -0,0 +1,393 @@ +module Cisco-IOS-XR-ncs4k-freqsync-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs4k-freqsync-oper"; + prefix ncs4k-freqsync-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs4k-freqsync-oper-sub1 { + revision-date 2021-12-01; + } + + 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 ncs4k-freqsync package operational data. + + This module contains definitions + for the following management objects: + frequency-synchronization: Frequency Synchronization + operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "1.2.0"; + } + revision 2021-01-13 { + description + "Added ePRC QL code."; + semver:module-version "1.2.0"; + } + revision 2019-12-18 { + description + "Added selection point input information, source information, SSM and satellite counters to line interfaces, and information about selection points."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Fsync-stream { + type enumeration { + enum "local" { + value 1; + description + "Stream input from a local source"; + } + enum "selection-point" { + value 2; + description + "Stream input from a selection point on a remote + node"; + } + } + description + "Fsync stream"; + } + + typedef Fsync-source { + type enumeration { + enum "ethernet" { + value 1; + description + "An ethernet interface"; + } + enum "sonet" { + value 2; + description + "A SONET interface"; + } + enum "clock" { + value 3; + description + "A clock interface"; + } + enum "internal" { + value 4; + description + "An internal clock"; + } + enum "ptp" { + value 5; + description + "A PTP clock"; + } + enum "satellite-access" { + value 6; + description + "A satellite access interface clock"; + } + enum "ntp" { + value 7; + description + "An NTP clock"; + } + enum "gnss" { + value 8; + description + "A GNSS receiver"; + } + } + description + "Fsync source"; + } + + container frequency-synchronization { + config false; + description + "Frequency Synchronization operational data"; + container nodes { + description + "Table for node-specific operational data"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container ptp-data { + description + "PTP operational data"; + uses FSYNC-PTP-INFO-V2; + } + container selection-point-inputs { + description + "Table for selection point input operational + data"; + list selection-point-input { + description + "Operational data for a particular selection + point input"; + leaf selection-point { + type uint32 { + range "0..4294967295"; + } + description + "Selection point ID"; + } + leaf stream-type { + type Fsync-stream; + description + "Type of stream"; + } + leaf source-type { + type Fsync-source; + description + "Type of source"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf clock-port { + type uint32 { + range "0..4294967295"; + } + description + "Clock port"; + } + leaf last-node { + type xr:Node-id; + description + "Last node for a selection point stream"; + } + leaf last-selection-point { + type uint32 { + range "0..4294967295"; + } + description + "Last selection point for a selection point + stream"; + } + leaf output-id { + type uint32 { + range "0..4294967295"; + } + description + "Output ID for a selection point stream"; + } + uses FSYNC-SP-INPUT-INFO; + } + } + container ntp-data { + description + "NTP operational data"; + uses FSYNC-NTP-INFO-V2; + } + container configuration-errors { + description + "Configuration error operational data"; + uses FSYNC-CONFIG-ERRORS-INFO; + } + container selection-point-datas { + description + "Selection point data table"; + list selection-point-data { + key "selection-point"; + description + "Operational data for a given selection point"; + leaf selection-point { + type uint32 { + range "0..4294967295"; + } + description + "Selection point ID"; + } + uses FSYNC-SP-INFO-V2; + } + } + container ssm-summary { + description + "SSM operational data"; + uses FSYNC-SSM-INFO; + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + container interface-datas { + description + "Table for interface operational data"; + list interface-data { + key "interface-name"; + description + "Operational data for a particular interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses FSYNC-IF-INFO-V2; + } + } + container clock-datas { + description + "Table for clock operational data"; + list clock-data { + key "clock-name"; + description + "Operational data for a particular clock"; + leaf clock-name { + type string; + description + "Clock Name"; + } + uses FSYNC-CLOCK-INFO-V2; + } + } + container summary { + description + "Summary operational data"; + uses FSYNC-SUMMARY-INFO; + } + container global-nodes { + description + "Table for global node-specific operational data"; + list global-node { + key "node"; + description + "Global node-specific data for a particular node"; + container time-of-day-back-trace { + description + "Selection backtrace operational data for + time-of-day on a particular node"; + uses FSYNC-SELECTION-BACKTRACE-INFO; + } + container ntp-selection-forward-trace { + description + "Selection forwardtrace operational data for a + NTP clock"; + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + container ptp-selection-forward-trace { + description + "Selection forwardtrace operational data for a + PTP clock"; + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + container clock-interface-selection-forward-traces { + description + "Selection forwardtrace operational data for + clock-interfaces"; + list clock-interface-selection-forward-trace { + key "clock-name"; + description + "Selection forwardtrace operational data for a + particular clock-interface"; + leaf clock-name { + type string; + description + "Clock Name"; + } + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + } + container clock-interface-selection-back-traces { + description + "Selection backtrace operational data for + clock-interfaces"; + list clock-interface-selection-back-trace { + key "clock-name"; + description + "Selection backtrace operational data for a + particular clock-interface"; + leaf clock-name { + type string; + description + "Clock Name"; + } + uses FSYNC-SELECTION-BACKTRACE-INFO; + } + } + container global-interfaces { + description + "Table for global interface operational data"; + list global-interface { + key "interface-name"; + description + "Global interface information for a particular + interface"; + container interface-selection-back-trace { + description + "Selection backtrace operational data for a + particular interface"; + uses FSYNC-SELECTION-BACKTRACE-INFO; + } + container interface-selection-forward-trace { + description + "Selection forwardtrace operational data for a + particular interface"; + uses FSYNC-SELECTION-FORWARDTRACE-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container detailed-clock-datas { + description + "Table for detailed clock operational data"; + list detailed-clock-data { + key "clock-name"; + description + "Detailed operational data for a particular + clock"; + leaf clock-name { + type string; + description + "Clock Name"; + } + uses FSYNC-CLOCK-INFO-V2; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1.yang new file mode 100644 index 000000000..78074b17a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1.yang @@ -0,0 +1,811 @@ +submodule Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs5500-coherent-node-oper { + prefix Cisco-IOS-XR-ncs5500-coherent-node-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs5500-coherent-node package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping COH-ETH-INTERFACE-DATA { + description + "Hundredgig interface data"; + leaf ifname { + type string { + length "0..64"; + } + description + "ifname"; + } + leaf intf-handle { + type string { + length "0..128"; + } + description + "intf handle"; + } + leaf admin-state { + type string { + length "0..128"; + } + description + "admin state"; + } + leaf admin-up { + type boolean; + description + "admin up"; + } + leaf is-created { + type boolean; + description + "is created"; + } + } + + grouping COH-ETH-INTERFACE-INFO { + description + "Hundredgig interface info"; + list eth-data { + description + "eth data"; + uses COH-ETH-INTERFACE-DATA; + } + } + + grouping COH-PLUGGABLE-INFO { + description + "Coherent pluggable information"; + leaf deviation { + type string { + length "0..16"; + } + description + "deviation"; + } + leaf part-number { + type string { + length "0..16"; + } + description + "part number"; + } + leaf serial-number { + type string { + length "0..16"; + } + description + "serial number"; + } + leaf date-code-number { + type string { + length "0..10"; + } + description + "date code number"; + } + leaf clei-code-number { + type string { + length "0..10"; + } + description + "CLEI code number"; + } + leaf vendorname { + type string { + length "0..16"; + } + description + "vendorname"; + } + leaf description { + type string { + length "0..64"; + } + description + "description"; + } + leaf pid { + type string { + length "0..20"; + } + description + "pid"; + } + leaf vid { + type string { + length "0..16"; + } + description + "vid"; + } + leaf module-hardware-version-number { + type string { + length "0..16"; + } + description + "module hardware version number"; + } + leaf module-firmware-running-version-number { + type string { + length "0..16"; + } + description + "module firmware running version number"; + } + leaf module-firmware-committed-version-number { + type string { + length "0..16"; + } + description + "module firmware committed version number"; + } + leaf ctp-type { + type uint32; + description + "ctp type"; + } + } + + grouping COH-PORT-DATA { + description + "Coherent front panel port data"; + container ctp-info { + description + "ctp info"; + uses COH-PLUGGABLE-INFO; + } + container interface-info { + description + "interface info"; + uses COH-ETH-INTERFACE-INFO; + } + leaf rsip { + type uint32; + description + "rsip"; + } + leaf optics-ctrl-created { + type boolean; + description + "optics ctrl created"; + } + leaf dsp-ctrl-created { + type boolean; + description + "dsp ctrl created"; + } + leaf has-pluggable { + type boolean; + description + "has pluggable"; + } + leaf optics-admin-up { + type boolean; + description + "optics admin up"; + } + leaf dsp-admin-up { + type boolean; + description + "dsp admin up"; + } + leaf end-of-config { + type boolean; + description + "end of config"; + } + leaf optics-laser-state { + type boolean; + description + "optics laser state"; + } + leaf laser-state { + type boolean; + description + "laser state"; + } + leaf laser-on-pending { + type boolean; + description + "laser on pending"; + } + leaf provisioning-needed { + type boolean; + description + "provisioning needed"; + } + leaf force-reprovision { + type boolean; + description + "force reprovision"; + } + leaf fp-port-idx { + type uint32; + description + "fp port idx"; + } + leaf configured-frequency { + type uint32; + description + "configured frequency"; + } + leaf provisioned-frequency { + type uint32; + description + "provisioned frequency"; + } + leaf configured-tx-power { + type string { + length "0..128"; + } + description + "configured tx power"; + } + leaf provisioned-tx-power { + type string { + length "0..128"; + } + description + "provisioned tx power"; + } + leaf configured-cd-min { + type string { + length "0..128"; + } + description + "configured cd min"; + } + leaf provisioned-cd-min { + type string { + length "0..128"; + } + description + "provisioned cd min"; + } + leaf configured-cd-max { + type string { + length "0..128"; + } + description + "configured cd max"; + } + leaf provisioned-cd-max { + type string { + length "0..128"; + } + description + "provisioned cd max"; + } + leaf configured-traffic-type { + type string { + length "0..128"; + } + description + "configured traffic type"; + } + leaf provisioned-traffic-type { + type string { + length "0..128"; + } + description + "provisioned traffic type"; + } + leaf configured-loopback-mode { + type string { + length "0..128"; + } + description + "configured loopback mode"; + } + leaf provisioned-loopback-mode { + type string { + length "0..128"; + } + description + "provisioned loopback mode"; + } + leaf expected-ctp2-led-state { + type string { + length "0..128"; + } + description + "expected ctp2 led state"; + } + leaf provisioned-ctp2-led-state { + type string { + length "0..128"; + } + description + "provisioned ctp2 led state"; + } + leaf led-op-rc { + type int32; + description + "led op rc"; + } + leaf laser-op-rc { + type int32; + description + "laser op rc"; + } + leaf wlen-op-rc { + type int32; + description + "wlen op rc"; + } + leaf traffic-op-rc { + type int32; + description + "traffic op rc"; + } + leaf loopback-op-rc { + type int32; + description + "loopback op rc"; + } + leaf tx-power-op-rc { + type int32; + description + "tx power op rc"; + } + leaf cd-min-op-rc { + type int32; + description + "cd min op rc"; + } + leaf cd-max-op-rc { + type int32; + description + "cd max op rc"; + } + leaf provisioning-failed { + type boolean; + description + "provisioning failed"; + } + leaf ctp2-hw-alarms { + type string { + length "0..128"; + } + description + "ctp2 hw alarms"; + } + leaf dsp-hw-alarms { + type string { + length "0..256"; + } + description + "dsp hw alarms"; + } + leaf is-pm-port-created-opt { + type boolean; + description + "is pm port created opt"; + } + leaf rc-pm-port-opt { + type int32; + description + "rc pm port opt"; + } + leaf pm-port-state-opt { + type int32; + description + "pm port state opt"; + } + leaf rc-pm-provision-opt { + type int32; + description + "rc pm provision opt"; + } + leaf is-alarm-port-created-opt { + type boolean; + description + "is alarm port created opt"; + } + leaf rc-alarm-port-opt { + type int32; + description + "rc alarm port opt"; + } + leaf is-pm-port-created-dsp { + type boolean; + description + "is pm port created dsp"; + } + leaf rc-pm-port-dsp { + type int32; + description + "rc pm port dsp"; + } + leaf pm-port-state-dsp { + type int32; + description + "pm port state dsp"; + } + leaf rc-pm-provision-dsp { + type int32; + description + "rc pm provision dsp"; + } + leaf is-alarm-port-created-dsp { + type boolean; + description + "is alarm port created dsp"; + } + leaf rc-alarm-port-dsp { + type int32; + description + "rc alarm port dsp"; + } + } + + grouping COH-HEALTH-DATA { + description + "Coherent health Data"; + leaf is-peyto { + type boolean; + description + "is peyto"; + } + leaf im-state { + type boolean; + description + "im state"; + } + leaf aipc-srvr-state { + type boolean; + description + "aipc srvr state"; + } + leaf sysdb-state { + type boolean; + description + "sysdb state"; + } + leaf pm-state { + type boolean; + description + "pm state"; + } + leaf optics-ea-conn { + type boolean; + description + "optics ea conn"; + } + leaf dsp-ea-conn { + type boolean; + description + "dsp ea conn"; + } + leaf vether-state { + type boolean; + description + "vether state"; + } + leaf morgoth-alive { + type boolean; + description + "morgoth alive"; + } + leaf prov-infra-state { + type boolean; + description + "prov infra state"; + } + leaf sdk-fpga-compatible { + type boolean; + description + "sdk fpga compatible"; + } + leaf pending-provision { + type boolean; + description + "pending provision"; + } + leaf pulse-sent { + type boolean; + description + "pulse sent"; + } + leaf inside-prov-loop { + type boolean; + description + "inside prov loop"; + } + leaf fpd-in-progress { + type boolean; + description + "fpd in progress"; + } + leaf prov-run-count { + type uint32; + description + "prov run count"; + } + leaf sdk-version { + type string { + length "0..255"; + } + description + "sdk version"; + } + leaf morgoth-running-version { + type string { + length "0..255"; + } + description + "morgoth running version"; + } + leaf morgoth-downloaded-version { + type string { + length "0..255"; + } + description + "morgoth downloaded version"; + } + leaf morgoth-golden-version { + type string { + length "0..255"; + } + description + "morgoth golden version"; + } + leaf dsp0-version { + type string { + length "0..255"; + } + description + "dsp0 version"; + } + leaf dsp1-version { + type string { + length "0..255"; + } + description + "dsp1 version"; + } + leaf dsp2-version { + type string { + length "0..255"; + } + description + "dsp2 version"; + } + leaf board-type { + type string { + length "0..255"; + } + description + "board type"; + } + leaf jlink-op { + type string { + length "0..6144"; + } + description + "jlink op"; + } + list port-data { + description + "port data"; + uses COH-PORT-DATA; + } + } + + grouping COH-PORT-OP-STATS { + description + "Port specific op stats"; + container laser-on-stats { + description + "laser on stats"; + uses COH-OP-TIME-STATS; + } + container laser-off-stats { + description + "laser off stats"; + uses COH-OP-TIME-STATS; + } + container wl-op-stats { + description + "wl op stats"; + uses COH-OP-TIME-STATS; + } + container txpwr-op-stats { + description + "txpwr op stats"; + uses COH-OP-TIME-STATS; + } + container cdmin-op-stats { + description + "cdmin op stats"; + uses COH-OP-TIME-STATS; + } + container cdmax-op-stats { + description + "cdmax op stats"; + uses COH-OP-TIME-STATS; + } + container traffictype-op-stats { + description + "traffictype op stats"; + uses COH-OP-TIME-STATS; + } + leaf rsip { + type uint32; + description + "rsip"; + } + leaf fp-port-idx { + type uint32; + description + "fp port idx"; + } + leaf laser-state { + type boolean; + description + "laser state"; + } + leaf provisioned-frequency { + type uint32; + description + "provisioned frequency"; + } + leaf tx-power { + type int32; + description + "tx power"; + } + leaf cd-min { + type int32; + description + "cd min"; + } + leaf cd-max { + type int32; + description + "cd max"; + } + leaf traffic-type { + type string { + length "0..128"; + } + description + "traffic type"; + } + } + + grouping COH-OP-TIME-STATS { + description + "Coherent operation stats"; + leaf start { + type string { + length "0..255"; + } + description + "start"; + } + leaf end { + type string { + length "0..255"; + } + description + "end"; + } + leaf time-taken { + type string { + length "0..255"; + } + description + "time taken"; + } + leaf worst-time { + type string { + length "0..255"; + } + description + "worst time"; + } + } + + grouping COH-TIME-STATS { + description + "Coherent driver time stats"; + container opts-ea-bulk-create { + description + "opts ea bulk create"; + uses COH-OP-TIME-STATS; + } + container opts-ea-bulk-update { + description + "opts ea bulk update"; + uses COH-OP-TIME-STATS; + } + container dsp-ea-bulk-create { + description + "dsp ea bulk create"; + uses COH-OP-TIME-STATS; + } + container dsp-ea-bulk-update { + description + "dsp ea bulk update"; + uses COH-OP-TIME-STATS; + } + leaf driver-init { + type string { + length "0..255"; + } + description + "driver init"; + } + leaf driver-operational { + type string { + length "0..255"; + } + description + "driver operational"; + } + leaf device-created { + type string { + length "0..255"; + } + description + "device created"; + } + leaf optics-controllers-created { + type string { + length "0..255"; + } + description + "optics controllers created"; + } + leaf dsp-controllers-created { + type string { + length "0..255"; + } + description + "dsp controllers created"; + } + leaf eth-intf-created { + type string { + length "0..255"; + } + description + "eth intf created"; + } + list port-stat { + description + "port stat"; + uses COH-PORT-OP-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper.yang new file mode 100644 index 000000000..ece7b47e1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-node-oper.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-ncs5500-coherent-node-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs5500-coherent-node-oper"; + prefix ncs5500-coherent-node-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs5500-coherent-node-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ncs5500-coherent-node package operational data. + + This module contains definitions + for the following management objects: + coherent: Coherent node operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container coherent { + config false; + description + "Coherent node operational data"; + container nodes { + description + "Coherent list of nodes"; + list node { + key "node-name"; + description + "Coherent discovery operational data for a + particular node"; + container coherent-time-stats { + description + "Coherent driver performace information"; + uses COH-TIME-STATS; + } + container coherenthealth { + description + "Coherent node data for driver health"; + uses COH-HEALTH-DATA; + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-cfg.yang new file mode 100644 index 000000000..1f8f93aee --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-cfg.yang @@ -0,0 +1,202 @@ +module Cisco-IOS-XR-ncs5500-coherent-portmode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs5500-coherent-portmode-cfg"; + prefix ncs5500-coherent-portmode-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ncs5500-coherent-portmode package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-18 { + description + "Schema added."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Diff-sel { + type enumeration { + enum "disable" { + value 0; + description + "disable differential"; + } + enum "enable" { + value 1; + description + "enable differential"; + } + } + description + "Diff sel"; + } + + typedef Fec-sel { + type enumeration { + enum "15sdfec" { + value 0; + description + "15%-SD Forward Error Correction"; + } + enum "25sdfec" { + value 1; + description + "25%-SD Forward Error Correction"; + } + enum "15sdfecde" { + value 2; + description + "15%-SD Forward Error Correction with Diff"; + } + enum "otu7staircase" { + value 3; + description + "7%-STAIRCASE Forward Error Correction"; + } + enum "cfec" { + value 8; + description + "15 cfec"; + } + enum "ofec" { + value 9; + description + "15 ofec"; + } + } + description + "Fec sel"; + } + + typedef Speed-sel { + type enumeration { + enum "1x100g" { + value 1; + description + "Speed 1x100"; + } + enum "2x100g" { + value 3; + description + "Speed 2x100"; + } + enum "3x100g" { + value 4; + description + "Speed 3x100"; + } + enum "4x100g" { + value 6; + description + "Speed 4x100"; + } + enum "400g" { + value 7; + description + "Speed 1x400"; + } + enum "100g" { + value 100000000; + description + "Speed 100"; + } + enum "150g" { + value 150000000; + description + "Speed 150"; + } + enum "200g" { + value 200000000; + description + "Speed 200"; + } + } + description + "Speed sel"; + } + + typedef Mod-sel { + type enumeration { + enum "qpsk" { + value 1; + description + "select qpsk for modulation"; + } + enum "8qam" { + value 2; + description + "select 8qam for modulation"; + } + enum "16qam" { + value 3; + description + "select 16qam for modulation"; + } + } + description + "Mod sel"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container portmode { + description + "Configure through port-mode"; + leaf speed-sel { + type Speed-sel; + description + "Select speed"; + } + leaf fec-sel { + type Fec-sel; + description + "Select Fec"; + } + leaf diff-sel { + type Diff-sel; + description + "Select Diff"; + } + leaf mod-sel { + type Mod-sel; + description + "Select modulation"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1.yang new file mode 100644 index 000000000..e5e87d9d2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1.yang @@ -0,0 +1,78 @@ +submodule Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs5500-coherent-portmode-oper { + prefix Cisco-IOS-XR-ncs5500-coherent-portmode-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs5500-coherent-portmode package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PORTMODE-INFO { + description + "portmode entry of optics controller"; + leaf intf-name { + type string { + length "0..128"; + } + description + "intf name"; + } + leaf speed { + type string { + length "0..128"; + } + description + "speed"; + } + leaf fec { + type string { + length "0..128"; + } + description + "fec"; + } + leaf diff { + type string { + length "0..128"; + } + description + "diff"; + } + leaf modulation { + type string { + length "0..128"; + } + description + "modulation"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper.yang new file mode 100644 index 000000000..0ddf42ed4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-coherent-portmode-oper.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-ncs5500-coherent-portmode-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs5500-coherent-portmode-oper"; + prefix ncs5500-coherent-portmode-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs5500-coherent-portmode-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ncs5500-coherent-portmode package operational data. + + This module contains definitions + for the following management objects: + controller-port-mode: Coherent PortMode operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container controller-port-mode { + config false; + description + "Coherent PortMode operational data"; + list optics-name { + key "interface-name"; + description + "Name of optics controller"; + container port-mode-info { + description + "PortMode operational data"; + uses PORTMODE-INFO; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub1.yang new file mode 100644 index 000000000..80cc2e164 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub1.yang @@ -0,0 +1,1181 @@ +submodule Cisco-IOS-XR-ncs5500-qos-oper-sub1 { + belongs-to Cisco-IOS-XR-ncs5500-qos-oper { + prefix Cisco-IOS-XR-ncs5500-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs5500-qos package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-01 { + description + "Adding changes for BVI. + 2022-09-27 + qos pfc show cmd. + 2022-08-01 + Adding irb-recycle-bandwidth-config and irb-recycle-bandwidth-enable leaf. + 2022-07-28 + Adding qos-policer-scale-config and qos-policer-scale-enable leaf. + 2022-03-09 + qos hwmodule show cmd."; + semver:module-version "3.0.0"; + } + revision 2019-08-24 { + description + "Fixing pyang compilation error."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dnx-qosea-show-inc-dir { + type enumeration { + enum "direction-input" { + description + "Direction Input"; + } + enum "direction-output" { + description + "Direction Output"; + } + } + description + "Direction"; + } + + typedef Dpa-qosea-show-wred { + type enumeration { + enum "wred-cos" { + description + "WRED based on COS"; + } + enum "wred-dscp" { + description + "WRED based on DSCP"; + } + enum "wred-precedence" { + description + "WRED based on Precedence"; + } + enum "wred-discard-class" { + description + "WRED based on discard class"; + } + enum "wred-mpls-exp" { + description + "WRED based on MPLS EXP"; + } + enum "red-with-user-min-max" { + description + "RED with user defined min and max"; + } + enum "red-with-default-min-max" { + description + "RED with default min and max"; + } + enum "wred-invalid" { + description + "Invalid"; + } + } + description + "WRED type"; + } + + typedef Dpa-qosea-show-action { + type enumeration { + enum "action-none" { + description + "None"; + } + enum "action-transmit" { + description + "Transmit"; + } + enum "action-drop" { + description + "Drop"; + } + enum "action-mark" { + description + "Mark"; + } + } + description + "Policer action type"; + } + + typedef Policy-param-unit { + type enumeration { + enum "policy-param-unit-invalid" { + description + "policy param unit invalid"; + } + enum "policy-param-unit-bytes" { + description + "policy param unit bytes"; + } + enum "policy-param-unit-kbytes" { + description + "policy param unit kbytes"; + } + enum "policy-param-unit-mbytes" { + description + "policy param unit mbytes"; + } + enum "policy-param-unit-gbytes" { + description + "policy param unit gbytes"; + } + enum "policy-param-unit-bitsps" { + description + "policy param unit bitsps"; + } + enum "policy-param-unit-kbitsps" { + description + "policy param unit kbitsps"; + } + enum "policy-param-unit-mbitsps" { + description + "policy param unit mbitsps"; + } + enum "policy-param-unit-gbitsps" { + description + "policy param unit gbitsps"; + } + enum "policy-param-unit-cells-ps" { + description + "policy param unit cells ps"; + } + enum "policy-param-unit-packets-ps" { + description + "policy param unit packets ps"; + } + enum "policy-param-unit-us" { + description + "policy param unit us"; + } + enum "policy-param-unit-ms" { + description + "policy param unit ms"; + } + enum "policy-param-unit-seconds" { + description + "policy param unit seconds"; + } + enum "policy-param-unit-packets" { + description + "policy param unit packets"; + } + enum "policy-param-unit-cells" { + description + "policy param unit cells"; + } + enum "policy-param-unit-percent" { + description + "policy param unit percent"; + } + enum "policy-param-unit-per-thousand" { + description + "policy param unit per thousand"; + } + enum "policy-param-unit-per-million" { + description + "policy param unit per million"; + } + enum "policy-param-unit-hz" { + description + "policy param unit hz"; + } + enum "policy-param-unit-khz" { + description + "policy param unit khz"; + } + enum "policy-param-unit-mhz" { + description + "policy param unit mhz"; + } + enum "policy-param-unit-ratio" { + description + "policy param unit ratio"; + } + enum "policy-param-unit-inverse-ratio" { + description + "policy param unit inverse ratio"; + } + enum "policy-param-unit-max" { + description + "policy param unit max"; + } + } + description + "Policy param unit"; + } + + typedef Dpa-qosea-show-hp-level { + type enumeration { + enum "high-priority-level1" { + description + "High priority queue level 1"; + } + enum "high-priority-level2" { + description + "High priority queue level 2"; + } + enum "high-priority-level3" { + description + "High priority queue level 3"; + } + enum "high-priority-level4" { + description + "High priority queue level 4"; + } + enum "high-priority-level5" { + description + "High priority queue level 5"; + } + enum "high-priority-level6" { + description + "High priority queue level 6"; + } + enum "high-priority-level7" { + description + "High priority queue level 7"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "Priority level"; + } + + typedef Dpa-qosea-show-queue { + type enumeration { + enum "low-priority-default-queue" { + description + "Low priority default queue"; + } + enum "low-priority-queue" { + description + "Low priority queue"; + } + enum "high-priority-queue" { + description + "High priority queue"; + } + enum "unknown-queue-type" { + description + "Queue priority unknown"; + } + } + description + "Priority Queue Type"; + } + + typedef Dpa-qosea-show-mark { + type enumeration { + enum "mark-none" { + description + "None"; + } + enum "dscp" { + description + "DSCP"; + } + enum "precedence" { + description + "Precedence"; + } + enum "mpls-topmost" { + description + "MPLS topmost"; + } + enum "mpls-imposition" { + description + "MPLS imposition"; + } + enum "qos-group" { + description + "Qos group"; + } + enum "discard-class" { + description + "Discard class"; + } + enum "cos" { + description + "COS"; + } + enum "inner-cos" { + description + "Inner COS"; + } + enum "un-supported9" { + description + "Unsupported type 9"; + } + enum "un-supported10" { + description + "Unsupported type 10"; + } + enum "un-supported11" { + description + "Unsupported type 11"; + } + enum "dscp-tunnel" { + description + "DSCP tunnel"; + } + enum "precedence-tunnel" { + description + "Precedence tunnel"; + } + enum "dei" { + description + "DEI"; + } + enum "dei-imposition" { + description + "DEI Imposition"; + } + enum "un-supported16" { + description + "Unsupported type 16"; + } + enum "un-supported17" { + description + "Unsupported type 17"; + } + enum "traffic-class" { + description + "Traffic class"; + } + } + description + "Mark type"; + } + + typedef Dpa-qosea-show-level { + type enumeration { + enum "level1" { + value 0; + description + "QoS level1 class"; + } + enum "level2" { + value 1; + description + "QoS level2 class"; + } + enum "level3" { + value 2; + description + "QoS level3 class"; + } + enum "level4" { + value 3; + description + "QoS level4 class"; + } + enum "level5" { + value 4; + description + "QoS level5 class"; + } + } + description + "Level type"; + } + + typedef Dpa-qosea-show-intf-status { + type enumeration { + enum "state-unknown" { + description + "State is unknown"; + } + enum "state-down" { + description + "State is Down"; + } + } + description + "Intf Status"; + } + + typedef Dpa-qosea-show-policy-status { + type enumeration { + enum "no-error" { + description + "No errors"; + } + enum "policy-in-reset" { + description + "QoS policy is reset"; + } + } + description + "Status"; + } + + typedef Qos-policy-account-enum { + type enumeration { + enum "qos-serv-policy-no-ac-count-pref" { + description + "qos serv policy no ac count pref"; + } + enum "qos-serv-policy-ac-count-l2" { + description + "qos serv policy ac count l2"; + } + enum "qos-serv-policy-no-ac-count-l2" { + description + "qos serv policy no ac count l2"; + } + enum "qos-serv-policy-ac-count-user-def" { + description + "qos serv policy ac count user def"; + } + enum "qos-serv-policy-ac-count-l1" { + description + "qos serv policy ac count l1"; + } + } + description + "Qos policy account enum"; + } + + grouping DNX-QOSEA-SHOW-INC-DETAIL-ELEM { + description + "Inconsistency Info Detail Element"; + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf underlying-interface-handle { + type uint32; + description + "Underlying Interface Handle"; + } + leaf npu-id { + type uint8; + description + "NPU Id"; + } + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy name"; + } + leaf direction { + type Dnx-qosea-show-inc-dir; + description + "Direction"; + } + leaf inc-bitmap { + type uint32; + description + "Inconsistency Type Bitmap"; + } + } + + grouping DNX-QOSEA-SHOW-INC-DETAIL { + description + "Inconsistency Info Detail"; + list detail { + description + "Details of warnings of each interface"; + uses DNX-QOSEA-SHOW-INC-DETAIL-ELEM; + } + } + + grouping DPA-QOSEA-HWMODULESTATUS-INFO-ST { + description + "HWMODULE STATUS Info"; + leaf hqos { + type boolean; + description + "HQOS Enable"; + } + leaf hqos-conf { + type boolean; + description + "HQOS Config"; + } + leaf physical-hqos { + type boolean; + description + "PHYSICAL HQOS Enable"; + } + leaf physical-hqos-conf { + type boolean; + description + "PHYSICAL HQOS Config"; + } + leaf wred-stats { + type boolean; + description + "WRED STATS Enable"; + } + leaf wred-stats-conf { + type boolean; + description + "WRED STATS Config"; + } + leaf qos-stats-model { + type boolean; + description + "QOS STATS MODEL Enable"; + } + leaf qos-stats-model-conf { + type boolean; + description + "QOS STATS MODEL Config"; + } + leaf arp-isis-prio { + type boolean; + description + "ARP ISIS PRIORITY Enable"; + } + leaf arp-isis-prio-conf { + type boolean; + description + "ARP ISIS PRIORITY Config"; + } + leaf conform-aw-are-police { + type boolean; + description + "CONFORM AWARE POLICER Enable"; + } + leaf conform-aw-are-police-conf { + type boolean; + description + "CONFORM AWARE POLICER Config"; + } + leaf ecn-mark-stat { + type boolean; + description + "ECN MARK STATS Enable"; + } + leaf ecn-mark-stat-conf { + type boolean; + description + "ECN MARK STATS Config"; + } + leaf gre-exp-class { + type boolean; + description + "GRE EXP CLASS Enable"; + } + leaf gre-exp-class-conf { + type boolean; + description + "GRE EXP CLASS Config"; + } + leaf shared-police-r-stat { + type boolean; + description + "SHARED POLICER STAT Enable"; + } + leaf shared-police-r-stat-conf { + type boolean; + description + "SHARED POLICER STAT Config"; + } + leaf ipv6-short { + type boolean; + description + "IPV6 SHORT Enable"; + } + leaf ipv6-short-conf { + type boolean; + description + "IPV6 SHORT Config"; + } + leaf ipv6-short-etm { + type boolean; + description + "IPV6 SHORT ETM Enable"; + } + leaf ipv6-short-etm-conf { + type boolean; + description + "IPV6 SHORT ETM Config"; + } + leaf short-l2qos { + type boolean; + description + "SHORT L2QOS Enable"; + } + leaf short-l2qos-conf { + type boolean; + description + "SHORT L2QOS Config"; + } + leaf l2-match-dest-addr { + type boolean; + description + "L2 MATCH DEST ADDR Enable"; + } + leaf l2-match-dest-addr-conf { + type boolean; + description + "L2 MATCH DEST ADDR Config"; + } + leaf qos-enhanced { + type boolean; + description + "STAT QOS ENHANCED Enable"; + } + leaf qos-enhanced-conf { + type boolean; + description + "STAT QOS ENHANCED Config"; + } + leaf ingress-qosm { + type uint32; + description + "INGRESS QOSM Enable"; + } + leaf ingress-qosm-conf { + type uint32; + description + "INGRESS QOSM Config"; + } + leaf max-class-size { + type uint32; + description + "MAX CLASS SIZE Enable"; + } + leaf max-class-size-conf { + type uint32; + description + "MAX CLASS SIZE Config"; + } + leaf free-buffer-int { + type uint32; + description + "FREE BUFFER INT Enable"; + } + leaf free-buffer-int-conf { + type uint32; + description + "FREE BUFFER INT Config"; + } + leaf qosg-dscp-mark { + type uint64; + description + "QOSG DSCP MARK Enable"; + } + leaf qosg-dscp-mark-conf { + type uint64; + description + "QOSG DSCP MARK Config"; + } + leaf qos-policer-scale-enable { + type uint32; + description + "Qos policer scale enable"; + } + leaf qos-policer-scale-config { + type uint32; + description + "Qos policer scale config"; + } + leaf irb-recycle-bandwidth-enable { + type uint32; + description + "IRB recycle bandwidth enable"; + } + leaf irb-recycle-bandwidth-config { + type uint32; + description + "IRB recycle bandwidth config"; + } + } + + grouping DNX-QOSEA-SHOW-INC-SUMMARY { + description + "Inconsistency Info Summary"; + leaf-list summary { + type uint16; + description + "Number of warnings of each type"; + } + } + + grouping QOS-RANGE { + description + "QOS RANGE"; + leaf range-start { + type uint8; + description + "Start value of a range"; + } + leaf range-end { + type uint8; + description + "End value of a range"; + } + } + + grouping DPA-QOSEA-SHOW-RED-MATCH-VALUES { + description + "DPA QOSEA SHOW RED MATCH VALUES"; + list dpa-qosea-show-red-match-value { + description + "dpa qosea show red match value"; + uses QOS-RANGE; + } + } + + grouping PARAMETERS { + description + "WRED parameters"; + container wred-match-value { + description + "WRED match values"; + uses DPA-QOSEA-SHOW-RED-MATCH-VALUES; + } + container config-min-threshold { + description + "Configured minimum threshold"; + uses POLICY-PARAMETER; + } + container config-max-threshold { + description + "Configured maximum threshold"; + uses POLICY-PARAMETER; + } + container config-drop-probability { + description + "Configured drop/mark probability"; + uses POLICY-PARAMETER; + } + leaf wred-match-type { + type Dpa-qosea-show-wred; + description + "WREDMatchType"; + } + leaf hardware-min-threshold-bytes { + type uint32; + description + "Hardware minimum threshold"; + } + leaf hardware-max-threshold-bytes { + type uint32; + description + "Hardware maximum threshold"; + } + leaf hardware-drop-probability { + type uint32; + description + "Hardware drop/mark probability"; + } + leaf first-segment { + type uint16; + description + "First segment"; + } + leaf segment-size { + type uint32; + description + "Segment size"; + } + } + + grouping POLICER-ACTION { + description + "POLICER ACTION"; + leaf action-type { + type Dpa-qosea-show-action; + description + "Policer action type"; + } + list mark { + description + "Action mark"; + uses QOS-MARK; + } + } + + grouping DQL-POLICY-PARAMETER { + description + "DQL Policy parameter"; + leaf class0-policy-value { + type uint32; + description + "Discard Class0 Policy value"; + } + leaf class1-policy-value { + type uint32; + description + "Discard Class1 Policy value"; + } + leaf dql-policy-unit { + type Policy-param-unit; + description + "DQL Policy unit"; + } + } + + grouping POLICY-PARAMETER { + description + "Policy parameter"; + leaf policy-value { + type uint32; + description + "Policy value"; + } + leaf policy-unit { + type Policy-param-unit; + description + "Policy unit"; + } + } + + grouping QOS-MARK { + description + "QoS mark"; + leaf mark-type { + type Dpa-qosea-show-mark; + description + "Mark type"; + } + leaf mark-value { + type uint16; + description + "Mark value"; + } + } + + grouping DPA-QOSEA-SHOW-CLASS-ST { + description + "QoS policy"; + container config-max-rate { + description + "Configured maximum rate"; + uses POLICY-PARAMETER; + } + container config-min-rate { + description + "Configured minimum rate"; + uses POLICY-PARAMETER; + } + container config-queue-limit { + description + "Configured queue limit"; + uses POLICY-PARAMETER; + } + container config-d-queue-limit { + description + "Configured Dual queue limit"; + uses DQL-POLICY-PARAMETER; + } + container config-policer-average-rate { + description + "Configured policer average rate"; + uses POLICY-PARAMETER; + } + container config-policer-peak-rate { + description + "Config policer peak rate"; + uses POLICY-PARAMETER; + } + container config-policer-conform-burst { + description + "Configured policer conform burst"; + uses POLICY-PARAMETER; + } + container config-policer-excess-burst { + description + "Configured policer excess burst"; + uses POLICY-PARAMETER; + } + container conform-action { + description + "Conform action"; + uses POLICER-ACTION; + } + container exceed-action { + description + "Exceed action"; + uses POLICER-ACTION; + } + container violate-action { + description + "Violate action"; + uses POLICER-ACTION; + } + container config-shaper-peak-burst { + description + "Configured shaper peak burst"; + uses POLICY-PARAMETER; + } + container resolved-shaper-peak-burst { + description + "Resolved shaper peak burst"; + uses POLICY-PARAMETER; + } + leaf class-level { + type Dpa-qosea-show-level; + description + "Class level"; + } + leaf egress-queue-id { + type int32; + description + "Egress Queue ID"; + } + leaf queue-type { + type Dpa-qosea-show-queue; + description + "Queue type"; + } + leaf priority-level { + type Dpa-qosea-show-hp-level; + description + "Priority level"; + } + leaf hardware-max-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware maximum rate in kbps"; + } + leaf hardware-min-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware minimum rate in kbps"; + } + leaf config-excess-bandwidth-percent { + type uint32; + units "percentage"; + description + "Configured excess bandwidth percentage"; + } + leaf config-excess-bandwidth-unit { + type uint32; + description + "Configured excess bandwidth unit"; + } + leaf hardware-excess-bandwidth-weight { + type uint32; + description + "Hardware excess bandwidth weight"; + } + leaf network-min-bandwidth-kbps { + type uint32; + description + "Network minimum Bandwith"; + } + leaf hardware-queue-limit-bytes { + type uint64; + units "byte"; + description + "Hardware queue limit in bytes"; + } + leaf hardware-queue-limit-microseconds { + type uint64; + units "microsecond"; + description + "Hardware queue limit in microseconds"; + } + leaf policer-bucket-id { + type uint32; + description + "PolicerBucketID"; + } + leaf policer-stats-handle { + type uint64; + description + "PolicerStatsHandle"; + } + leaf hardware-policer-average-rate-kbps { + type uint32; + units "kbit/s"; + description + "Hardware policer average in kbps"; + } + leaf hardware-policer-peak-rate-kbps { + type uint32; + description + "Hardware policer peak rate"; + } + leaf hardware-policer-conform-burst-bytes { + type uint32; + description + "Hardware policer conform burst"; + } + leaf hardware-policer-excess-burst-bytes { + type uint32; + description + "Hardware policer excess burst"; + } + leaf is-referred { + type boolean; + description + "Is shared policer referred class"; + } + leaf ecn-enabled { + type boolean; + description + "ECN Enabled"; + } + leaf hardware-shaper-peak-burst-bytes { + type uint32; + description + "Hardware shaper peak burst"; + } + leaf low-shaper-enabled { + type boolean; + description + "Low Shaper Enabled"; + } + list ip-mark { + description + "IP mark"; + uses QOS-MARK; + } + list common-mark { + description + "Common mark"; + uses QOS-MARK; + } + list mpls-mark { + description + "MPLS mark"; + uses QOS-MARK; + } + list wred { + description + "WRED parameters"; + uses PARAMETERS; + } + list traffic-class { + description + "Traffic-class mark"; + uses QOS-MARK; + } + list discard-class { + description + "Discard-class mark"; + uses QOS-MARK; + } + list qos-group { + description + "Qos-group mark"; + uses QOS-MARK; + } + list cos-mark { + description + "Cos mark"; + uses QOS-MARK; + } + list dei-mark { + description + "Dei mark"; + uses QOS-MARK; + } + } + + grouping DPA-QOSEA-SHOW-IF-QOS-INFO-ST { + description + "Policy Details"; + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf interface-handle { + type uint32; + description + "InterfaceHandle"; + } + leaf interface-bandwidthkbps { + type uint64; + units "kbit/s"; + description + "Interface Bandwidth (in kbps)"; + } + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy name"; + } + leaf spi-id { + type uint64; + description + "SPI Id"; + } + leaf total-number-of-classes { + type uint16; + description + "Number of Classes"; + } + leaf voq-base-address { + type uint32; + description + "VOQ base address"; + } + leaf voq-stats-handle { + type uint64; + description + "VOQ stats handle"; + } + leaf stats-accounting-type { + type Qos-policy-account-enum; + description + "QoS Statistics Accounting Type"; + } + leaf policy-status { + type Dpa-qosea-show-policy-status; + description + "Policy Status"; + } + leaf interface-status { + type Dpa-qosea-show-intf-status; + description + "Interface Status"; + } + leaf pfc { + type uint8; + description + "Flag to indicate if PFC is enabled on the + interface"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub2.yang new file mode 100644 index 000000000..9358c18b4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub2.yang @@ -0,0 +1,165 @@ +submodule Cisco-IOS-XR-ncs5500-qos-oper-sub2 { + belongs-to Cisco-IOS-XR-ncs5500-qos-oper { + prefix Cisco-IOS-XR-ncs5500-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs5500-qos package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-01 { + description + "Adding changes for BVI. + 2022-09-27 + qos pfc show cmd. + 2022-08-01 + Adding irb-recycle-bandwidth-config and irb-recycle-bandwidth-enable leaf. + 2022-07-28 + Adding qos-policer-scale-config and qos-policer-scale-enable leaf. + 2022-03-09 + qos hwmodule show cmd."; + semver:module-version "3.0.0"; + } + revision 2019-08-24 { + description + "Fixing pyang compilation error."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping WRED-PROFILE { + description + "WRED PROFILE"; + leaf min-threshold { + type uint32; + description + "Minimum Threshold"; + } + leaf max-threshold { + type uint32; + description + "Maximum Threshold"; + } + leaf drop-probability { + type uint32; + description + "Drop Probability"; + } + } + + grouping REMOTE-CLASS { + description + "REMOTE CLASS"; + leaf class-name { + type string { + length "0..64"; + } + description + "Class Name"; + } + leaf class-id { + type uint32; + description + "Class ID"; + } + leaf cos-q { + type uint32; + description + "Class of Service Queue"; + } + leaf queue-limit { + type uint32; + units "byte"; + description + "Default/Configured queue limit in bytes"; + } + leaf hardware-queue-limit { + type uint32; + units "byte"; + description + "Hardware queue limit in bytes"; + } + list wred { + max-elements "4"; + description + "Default/Configured WRED profiles"; + uses WRED-PROFILE; + } + list hw-wred { + max-elements "4"; + description + "Hardware WRED profiles"; + uses WRED-PROFILE; + } + } + + grouping DPA-QOSEA-SHOW-REMOTE-IF-INFO-ST { + description + "Remote Interface Info"; + leaf policy-name { + type string { + length "0..64"; + } + description + "Policy Name"; + } + leaf virtual-output-queue-statistics-handle { + type uint64; + description + "Virtual output queue statistics handle"; + } + leaf interface-handle { + type uint32; + description + "Interface Handle"; + } + leaf number-of-virtual-output-queues { + type uint32; + description + "Number of Virtual Output Queues"; + } + leaf number-of-classes { + type uint32; + description + "Number of Classes"; + } + leaf pfc { + type uint8; + description + "Flag to indicate if PFC is enabled on the + interface"; + } + list remote-class { + description + "Remote Class array"; + uses REMOTE-CLASS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub3.yang new file mode 100644 index 000000000..4f9345d17 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper-sub3.yang @@ -0,0 +1,260 @@ +submodule Cisco-IOS-XR-ncs5500-qos-oper-sub3 { + belongs-to Cisco-IOS-XR-ncs5500-qos-oper { + prefix Cisco-IOS-XR-ncs5500-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ncs5500-qos package operational data. + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-01 { + description + "Adding changes for BVI. + 2022-09-27 + qos pfc show cmd. + 2022-08-01 + Adding irb-recycle-bandwidth-config and irb-recycle-bandwidth-enable leaf. + 2022-07-28 + Adding qos-policer-scale-config and qos-policer-scale-enable leaf. + 2022-03-09 + qos hwmodule show cmd."; + semver:module-version "3.0.0"; + } + revision 2019-08-24 { + description + "Fixing pyang compilation error."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DNX-QOSEA-PFC-TC-CFG { + description + "DNX QOSEA PFC TC CFG"; + leaf in-use { + type boolean; + description + "Flag to indicate if PFC is configured for the tc"; + } + leaf pause-threshold { + type uint32; + description + "Pause-threshold configured"; + } + leaf resume-threshold { + type uint32; + description + "Resume-threshold configured"; + } + leaf tc-headroom { + type uint32; + description + "Headroom configured"; + } + } + + grouping DNX-QOSEA-PFC-CFG { + description + "DNX QOSEA PFC CFG"; + leaf in-use { + type boolean; + description + "Flag to indicate if PFC is configured for the + line-card"; + } + list tc-cfg { + max-elements "8"; + description + "Keeps a record of the PFC configuration for the + line-card"; + uses DNX-QOSEA-PFC-TC-CFG; + } + } + + grouping DNX-QOSEA-PFC-PG-VSQ-OCCUPANCY-INFO { + description + "DNX QOSEA PFC PG VSQ OCCUPANCY INFO"; + leaf shared-pool-bds { + type uint32; + description + "Vsq occupancy Shared pool bds"; + } + leaf headroom-bds { + type uint32; + description + "Vsq occupancy headroom bds"; + } + leaf shared-pool-bytes { + type uint32; + units "byte"; + description + "Vsq occupancy Shared pool bytes"; + } + leaf headroom-bytes { + type uint32; + units "byte"; + description + "Vsq occupancy Headroom bytes"; + } + } + + grouping DNX-QOSEA-PFC-VSQ-INGRESS-REJECT-INFO { + description + "DNX QOSEA PFC VSQ INGRESS REJECT INFO"; + leaf-list val { + type uint64; + max-elements "2"; + description + "Ingress reject info reg val"; + } + } + + grouping DNX-QOSEA-PFC-VSQ-FREE-BUFFS-INFO { + description + "DNX QOSEA PFC VSQ FREE BUFFS INFO"; + leaf ocb-buff { + type uint32; + description + "Vsq available OCB buffer"; + } + leaf mnmc-buff { + type uint32; + description + "Vsq available MNMC buffer"; + } + leaf fmc-buff { + type uint32; + description + "Vsq available FMC buffer"; + } + leaf ocb-buff-percent { + type uint32; + units "percentage"; + description + "Vsq available OCB buffer Percent"; + } + leaf mnmc-buff-percent { + type uint32; + units "percentage"; + description + "Vsq available MNMC buffer Percent"; + } + leaf fmc-buff-percent { + type uint32; + units "percentage"; + description + "Vsq available FMC buffer Percent"; + } + } + + grouping DNX-QOSEA-PFC-PG-VSQ-THRESHOLD-INFO { + description + "DNX QOSEA PFC PG VSQ THRESHOLD INFO"; + leaf id { + type uint32; + description + "VSQ Pg Vsq ID"; + } + leaf xoff-thr { + type uint32; + description + "PgVsq Xoff threshold"; + } + leaf xon-thr { + type uint32; + description + "PgVsq Xon threshold"; + } + leaf headroom { + type uint32; + description + "PgVsq Headroom threshold"; + } + } + + grouping DNX-QOSEA-PFC-VSQ { + description + "DNX QOSEA PFC VSQ"; + leaf intf-handle { + type uint32; + description + "Interface Handle"; + } + leaf pp-port { + type uint32; + description + "PP port number"; + } + leaf npu-id { + type uint8; + description + "NPU number"; + } + leaf core { + type uint8; + description + "Core number"; + } + list is-inuse { + min-elements 8; + max-elements "8"; + description + "Flag to indicate if PFC is configured for the tc"; + leaf entry { + type boolean; + description + "Array entry."; + } + } + list pg-vsg-info { + max-elements "8"; + description + "Keeps a record of vsq threshold info "; + uses DNX-QOSEA-PFC-PG-VSQ-THRESHOLD-INFO; + } + list free-buff { + max-elements "2"; + description + "Keeps a record of available buffer info"; + uses DNX-QOSEA-PFC-VSQ-FREE-BUFFS-INFO; + } + list reject-reason { + max-elements "2"; + description + "Keeps a record of ingress reject info"; + uses DNX-QOSEA-PFC-VSQ-INGRESS-REJECT-INFO; + } + list pgvsq-occupancy-info { + max-elements "8"; + description + "Keeps a record of vsq occupancy info"; + uses DNX-QOSEA-PFC-PG-VSQ-OCCUPANCY-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper.yang new file mode 100644 index 000000000..5057df3ec --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5500-qos-oper.yang @@ -0,0 +1,323 @@ +module Cisco-IOS-XR-ncs5500-qos-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs5500-qos-oper"; + prefix ncs5500-qos-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ncs5500-qos-oper-sub3 { + revision-date 2023-02-01; + } + include Cisco-IOS-XR-ncs5500-qos-oper-sub2 { + revision-date 2023-02-01; + } + include Cisco-IOS-XR-ncs5500-qos-oper-sub1 { + revision-date 2023-02-01; + } + + 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 ncs5500-qos package operational data. + + This module contains definitions + for the following management objects: + platform-qos: DPA QoS EA operational data + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-01 { + description + "Adding changes for BVI. + 2022-09-27 + qos pfc show cmd. + 2022-08-01 + Adding irb-recycle-bandwidth-config and irb-recycle-bandwidth-enable leaf. + 2022-07-28 + Adding qos-policer-scale-config and qos-policer-scale-enable leaf. + 2022-03-09 + qos hwmodule show cmd."; + semver:module-version "3.0.0"; + } + revision 2019-08-24 { + description + "Fixing pyang compilation error."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping QOS-CLASS-TABLE { + description + "Common node of input, output"; + container qos-class-table { + description + "QoS list of class names"; + uses CLASS; + } + } + + grouping CLASS { + description + "Common node of class-table, qos-class-table"; + list class { + key "level-one-class-name"; + description + "QoS policy class"; + leaf level-one-class-name { + type string; + description + "QoS policy class name at level 1"; + } + leaf level-two-class-name { + type string; + description + "QoS policy child class name at level 2"; + } + uses DPA-QOSEA-SHOW-CLASS-ST; + } + } + + grouping POLICY-DETAILS { + description + "Common node of interface, bundle-interface-single + , bundle-interface, member-interface"; + container policy-details { + description + "Policy Details"; + uses DPA-QOSEA-SHOW-IF-QOS-INFO-ST; + } + } + + grouping MEMBER-INTERFACE-TABLE { + description + "Common node of bundle-interface-single, + bundle-interface"; + container member-interfaces { + description + "QoS list of member interfaces"; + list member-interface { + key "interface-name"; + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "Member interface"; + } + uses POLICY-DETAILS; + uses CLASS-TABLE; + } + } + } + + grouping OUTPUT { + description + "Common node of qos-interfaces, interface"; + container output { + description + "QoS policy direction egress"; + uses QOS-CLASS-TABLE; + } + } + + grouping CLASS-TABLE { + description + "Common node of interface, bundle-interface-single + , bundle-interface, member-interface"; + container class-table { + description + "QoS list of class names"; + uses CLASS; + } + } + + container platform-qos { + config false; + description + "DPA QoS EA operational data"; + container nodes { + description + "List of nodes with platform specific QoS + configuration"; + list node { + key "node-name"; + description + "Node with platform specific QoS configuration"; + container pfc-vsqs { + description + "Qos Pfc Vsq datalist"; + list pfc-vsq { + key "interface-name"; + description + "Qos Pfc Vsq Data"; + leaf interface-name { + type xr:Interface-name; + description + "interface Name"; + } + uses DNX-QOSEA-PFC-VSQ; + } + } + container bundle-interfaces { + description + "QoS list of bundle interfaces"; + list bundle-interface { + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + uses POLICY-DETAILS; + uses MEMBER-INTERFACE-TABLE; + uses CLASS-TABLE; + } + } + container qos-inconsistancy-brief { + description + "Inconsistancy Brief"; + uses DNX-QOSEA-SHOW-INC-SUMMARY; + } + container interfaces { + description + "QoS list of interfaces"; + list interface { + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + uses POLICY-DETAILS; + uses OUTPUT; + uses CLASS-TABLE; + } + } + container qos-interfaces { + description + "QoS list of interfaces"; + list qos-interface { + description + "QoS interface names"; + container input { + description + "QoS policy direction ingress"; + uses QOS-CLASS-TABLE; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + leaf qos-direction { + type string; + description + "The interface direction on which QoS is + applied to."; + } + uses OUTPUT; + } + } + container bundle-interface-singles { + description + "QoS list of bundle interfaces"; + list bundle-interface-single { + key "interface-name"; + description + "QoS interface names"; + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + uses POLICY-DETAILS; + uses MEMBER-INTERFACE-TABLE; + uses CLASS-TABLE; + } + } + container pfc-cfg { + description + "Qos Pfc Config data"; + uses DNX-QOSEA-PFC-CFG; + } + container hw-module-status { + description + "Hw Module Status"; + uses DPA-QOSEA-HWMODULESTATUS-INFO-ST; + } + container remote-interfaces { + description + "QoS list of remote interfaces"; + list remote-interface { + key "interface-name"; + description + "QoS remote interface names"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the remote interface"; + } + uses DPA-QOSEA-SHOW-REMOTE-IF-INFO-ST; + } + } + container qos-inconsistancy-details { + description + "Inconsistancy Details"; + uses DNX-QOSEA-SHOW-INC-DETAIL; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg.yang new file mode 100644 index 000000000..d983fcb11 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ncs5k-fea-pfilter-nonatomic-cfg"; + prefix ncs5k-fea-pfilter-nonatomic-cfg; + + 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 ncs5k-fea-pfilter-nonatomic package configuration. + + This module contains definitions + for the following management objects: + hardware: Hardware + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-09-01 { + description + "Implementing Conf Yang Model for Non-Atomic ACL"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Atomic-disable-dflt-actn { + type enumeration { + enum "default-action-deny" { + value 1; + description + "Drops traffic during modification"; + } + enum "default-action-permit" { + value 2; + description + "Forward traffic during modification"; + } + } + description + "Atomic disable dflt actn"; + } + + container hardware { + description + "Hardware"; + container access-list { + description + "Access-list option"; + leaf atomic-disable { + type Atomic-disable-dflt-actn; + description + "Specify Option for Atomic disable"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1.yang new file mode 100644 index 000000000..0426f616f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1.yang @@ -0,0 +1,114 @@ +submodule Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1 { + belongs-to Cisco-IOS-XR-npu-bandwidth-usage-oper { + prefix Cisco-IOS-XR-npu-bandwidth-usage-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR npu-bandwidth-usage package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NPU-INTF-BANDWIDTH-USAGE { + description + "NPU INTF BANDWIDTH USAGE"; + leaf total-bw { + type uint32; + description + "Total Bandwidth"; + } + leaf used-bw { + type uint32; + description + "Used Bandwidth"; + } + leaf available-bw { + type uint32; + description + "Available Bandwidth"; + } + } + + grouping BW-USAGE-STATUS-INFO { + description + "BW USAGE STATUS INFO"; + leaf type { + type string { + length "0..32"; + } + description + "Bandwidth Type"; + } + leaf status { + type string { + length "0..32"; + } + description + "Bandwidth allocation staus"; + } + } + + grouping BW-USAGE-PORT-INFO { + description + "BW USAGE PORT INFO"; + leaf port-name { + type string { + length "0..32"; + } + description + "Port Name"; + } + list bw-info { + description + "Port Bandwidth information"; + uses BW-USAGE-STATUS-INFO; + } + } + + grouping BW-USAGE-INST-INFO { + description + "BW USAGE INST INFO"; + list port-info { + description + "Port information"; + uses BW-USAGE-PORT-INFO; + } + } + + grouping NPU-INTF-BANDWIDTH-USAGE-DETAIL { + description + "NPU INTF BANDWIDTH USAGE DETAIL"; + list inst-info { + description + "Instance information"; + uses BW-USAGE-INST-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper.yang new file mode 100644 index 000000000..74248e459 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-bandwidth-usage-oper.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-npu-bandwidth-usage-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-npu-bandwidth-usage-oper"; + prefix npu-bandwidth-usage-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-npu-bandwidth-usage-oper-sub1 { + revision-date 2019-04-05; + } + + 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 npu-bandwidth-usage package operational data. + + This module contains definitions + for the following management objects: + npu-bw-usage: NPU BW Usage Data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container npu-bw-usage { + config false; + description + "NPU BW Usage Data"; + container nodes { + description + "NPU BW usage data for available nodes"; + list node { + key "node-name"; + description + "NPU BW usage data for a particular node"; + container bw-usage-detail-for-npu-ids { + description + "NPU BW usage detail info"; + list bw-usage-detail-for-npu-id { + key "npu-id"; + description + "BW usage detail info for a particular npu"; + leaf npu-id { + type uint32; + description + "Npu number"; + } + uses NPU-INTF-BANDWIDTH-USAGE-DETAIL; + } + } + container bw-usage-brief-for-npu-ids { + description + "NPU BW usage brief info"; + list bw-usage-brief-for-npu-id { + key "npu-id"; + description + "BW usage brief info for a particular npu"; + leaf npu-id { + type uint32; + description + "Npu number"; + } + uses NPU-INTF-BANDWIDTH-USAGE; + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1.yang new file mode 100644 index 000000000..7b88fcaed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1.yang @@ -0,0 +1,67 @@ +submodule Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1 { + belongs-to Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper { + prefix Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR npu-cfg-macsec-fips-post package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-30 { + description + "Yang Schema added MACSEC FIPS Post"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MACSEC-FIPS-POST-INFO { + description + "macsec_fips_post info"; + leaf location { + type string; + description + "macsec-fips-post location"; + } + leaf configured { + type string; + description + "macsec-fips-post is configured or not"; + } + leaf running { + type string; + description + "macsec-fips-post is running or not"; + } + leaf action { + type string; + description + "next required action"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper.yang new file mode 100644 index 000000000..ba83d6115 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper"; + prefix npu-cfg-macsec-fips-post-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-npu-cfg-macsec-fips-post-oper-sub1 { + revision-date 2022-06-30; + } + + 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 npu-cfg-macsec-fips-post package operational data. + + This module contains definitions + for the following management objects: + show-macsec-fips-post: Macsec FIPS POST operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-30 { + description + "Yang Schema added MACSEC FIPS Post"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-macsec-fips-post { + config false; + description + "Macsec FIPS POST operational data"; + container nodes { + description + "Table of Nodes"; + list node { + key "node-name"; + description + "Information about a particular node"; + container macsec-fips-post { + description + "Macsec FIPS Post for Node"; + uses MACSEC-FIPS-POST-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1.yang new file mode 100644 index 000000000..af5e9dd23 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1.yang @@ -0,0 +1,67 @@ +submodule Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1 { + belongs-to Cisco-IOS-XR-npu-cfg-macsec-mode-oper { + prefix Cisco-IOS-XR-npu-cfg-macsec-mode-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR npu-cfg-macsec-mode package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-30 { + description + "Yang Schema added MACSEC Mode"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MACSEC-MODE-INFO { + description + "macsec_mode info"; + leaf location { + type string; + description + "macsec-mode location"; + } + leaf configured { + type string; + description + "macsec-mode is configured or not"; + } + leaf running { + type string; + description + "macsec-mode is running or not"; + } + leaf action { + type string; + description + "next required action"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper.yang new file mode 100644 index 000000000..d314b79e4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-cfg-macsec-mode-oper.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-npu-cfg-macsec-mode-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-npu-cfg-macsec-mode-oper"; + prefix npu-cfg-macsec-mode-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-npu-cfg-macsec-mode-oper-sub1 { + revision-date 2022-06-30; + } + + 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 npu-cfg-macsec-mode package operational data. + + This module contains definitions + for the following management objects: + show-macsec-mode: Macsec mode operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-30 { + description + "Yang Schema added MACSEC Mode"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-macsec-mode { + config false; + description + "Macsec mode operational data"; + container nodes { + description + "Table of Nodes"; + list node { + key "node-name"; + description + "Information about a particular node"; + container macsec-mode { + description + "Macsec Mode for Node"; + uses MACSEC-MODE-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper-sub1.yang new file mode 100644 index 000000000..b9f35217f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper-sub1.yang @@ -0,0 +1,2027 @@ +submodule Cisco-IOS-XR-npu-fsdb-stats-oper-sub1 { + belongs-to Cisco-IOS-XR-npu-fsdb-stats-oper { + prefix Cisco-IOS-XR-npu-fsdb-stats-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR npu-fsdb-stats package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-03 { + description + "Updated the yang model for link FSM entry + 2022-02-11 + Added weight distribution to npu driver info"; + semver:module-version "3.0.0"; + } + revision 2021-05-14 { + description + "Updated the type of fabric operational mode in the yang model"; + semver:module-version "2.0.0"; + } + revision 2020-10-10 { + description + "Yang Schema for npu driver link info"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Asic-init-method { + type enumeration { + enum "asic-init-method-unset" { + value -1; + description + "asic init method unset"; + } + enum "asic-init-method-no-reset" { + value 0; + description + "asic init method no reset"; + } + enum "asic-init-method-pon-reset" { + value 1; + description + "asic init method pon reset"; + } + enum "asic-init-method-pon-reset-on-intr" { + value 2; + description + "asic init method pon reset on intr"; + } + enum "asic-init-method-hard-reset" { + value 3; + description + "asic init method hard reset"; + } + enum "asic-init-method-warmboot" { + value 4; + description + "asic init method warmboot"; + } + enum "asic-init-method-issu-wb" { + value 5; + description + "asic init method issu wb"; + } + enum "asic-init-method-pci-shutdown" { + value 6; + description + "asic init method pci shutdown"; + } + enum "asic-init-method-quiesce" { + value 7; + description + "asic init method quiesce"; + } + enum "asic-init-method-issu-started" { + value 8; + description + "asic init method issu started"; + } + enum "asic-init-method-issu-rollback" { + value 9; + description + "asic init method issu rollback"; + } + enum "asic-init-method-issu-abort" { + value 10; + description + "asic init method issu abort"; + } + enum "asic-init-method-slice-cleanup" { + value 11; + description + "asic init method slice cleanup"; + } + enum "asic-init-method-lc-remove" { + value 12; + description + "asic init method lc remove"; + } + enum "asic-init-method-node-down" { + value 13; + description + "asic init method node down"; + } + enum "asic-init-method-intr" { + value 14; + description + "asic init method intr"; + } + enum "asic-init-method-board-reload" { + value 15; + description + "asic init method board reload"; + } + enum "asic-init-method-max" { + value 16; + description + "asic init method max"; + } + } + description + "Asic init method"; + } + + typedef Asic-access-state { + type enumeration { + enum "asic-state-unset" { + value -1; + description + "asic state unset"; + } + enum "asic-state-none" { + value 0; + description + "asic state none"; + } + enum "asic-state-device-off-line" { + value 1; + description + "asic state device off line"; + } + enum "asic-state-device-created" { + value 2; + description + "asic state device created"; + } + enum "asic-state-device-online" { + value 3; + description + "asic state device online"; + } + enum "asic-state-warmboot" { + value 4; + description + "asic state warmboot"; + } + enum "asic-state-de-init-start" { + value 5; + description + "asic state de init start"; + } + enum "asic-state-intr-de-init" { + value 6; + description + "asic state intr de init"; + } + enum "asic-state-npu-detach" { + value 7; + description + "asic state npu detach"; + } + enum "asic-state-soc-de-init" { + value 8; + description + "asic state soc de init"; + } + enum "asic-state-de-init-done" { + value 9; + description + "asic state de init done"; + } + enum "asic-state-soc-init" { + value 10; + description + "asic state soc init"; + } + enum "asic-state-npu-init" { + value 11; + description + "asic state npu init"; + } + enum "asic-state-intr-init" { + value 12; + description + "asic state intr init"; + } + enum "asic-state-soc-init-start" { + value 13; + description + "asic state soc init start"; + } + enum "asic-state-npu-init-start" { + value 14; + description + "asic state npu init start"; + } + enum "asic-state-intr-init-start" { + value 15; + description + "asic state intr init start"; + } + enum "asic-state-hard-reset" { + value 16; + description + "asic state hard reset"; + } + enum "asic-state-normal" { + value 17; + description + "asic state normal"; + } + enum "asic-state-exception" { + value 18; + description + "asic state exception"; + } + enum "asic-state-hp-attached" { + value 19; + description + "asic state hp attached"; + } + enum "asic-state-quiesce" { + value 20; + description + "asic state quiesce"; + } + enum "asic-state-issu-started" { + value 21; + description + "asic state issu started"; + } + enum "asic-state-issu-started-nn" { + value 22; + description + "asic state issu started nn"; + } + enum "asic-state-issu-abort" { + value 23; + description + "asic state issu abort"; + } + enum "asic-state-max" { + value 24; + description + "asic state max"; + } + } + description + "Asic access state"; + } + + typedef Asic-oper-state { + type enumeration { + enum "asic-oper-unset" { + value -1; + description + "asic oper unset"; + } + enum "asic-oper-unknown" { + value 0; + description + "asic oper unknown"; + } + enum "asic-oper-up" { + value 1; + description + "asic oper up"; + } + enum "asic-oper-down" { + value 2; + description + "asic oper down"; + } + enum "asic-card-down" { + value 3; + description + "asic card down"; + } + } + description + "Asic oper state"; + } + + typedef Slice-state { + type enumeration { + enum "slice-oper-unset" { + value -1; + description + "slice oper unset"; + } + enum "slice-oper-down" { + value 0; + description + "slice oper down"; + } + enum "slice-oper-up" { + value 1; + description + "slice oper up"; + } + enum "slice-oper-na" { + value 2; + description + "slice oper na"; + } + } + description + "Slice state"; + } + + typedef Power-opt-freq { + type enumeration { + enum "power-opt-freq-none" { + value 0; + description + "power opt freq none"; + } + enum "power-opt-freq-low" { + value 1; + description + "power opt freq low"; + } + enum "power-opt-freq-medium" { + value 2; + description + "power opt freq medium"; + } + enum "power-opt-freq-high" { + value 3; + description + "power opt freq high"; + } + } + description + "Power opt freq"; + } + + typedef Fabric-mode { + type enumeration { + enum "fabric-mode-unknown" { + value 0; + description + "fabric mode unknown"; + } + enum "fabric-mode-fabric" { + value 1; + description + "fabric mode fabric"; + } + enum "fabric-mode-single" { + value 2; + description + "fabric mode single"; + } + enum "fabric-mode-mesh" { + value 3; + description + "fabric mode mesh"; + } + } + description + "Fabric mode"; + } + + typedef Functional-role { + type enumeration { + enum "driver-role-unknown" { + value 0; + description + "driver role unknown"; + } + enum "driver-role-active" { + value 1; + description + "driver role active"; + } + enum "driver-role-standby" { + value 2; + description + "driver role standby"; + } + enum "driver-role-none" { + value 3; + description + "driver role none"; + } + enum "driver-role-max" { + value 4; + description + "driver role max"; + } + } + description + "Functional role"; + } + + typedef Npu-edm-fsm-event { + type enumeration { + enum "fsm-event-create" { + value 0; + description + "fsm event create"; + } + enum "fsm-event-learn-wb" { + value 1; + description + "fsm event learn wb"; + } + enum "fsm-event-create-wb" { + value 2; + description + "fsm event create wb"; + } + enum "fsm-event-create-oper-up" { + value 3; + description + "fsm event create oper up"; + } + enum "fsm-event-create-wb-oper-up" { + value 4; + description + "fsm event create wb oper up"; + } + enum "fsm-event-ena-unshut" { + value 5; + description + "fsm event ena unshut"; + } + enum "fsm-event-dis-shut" { + value 6; + description + "fsm event dis shut"; + } + enum "fsm-event-dis-shut-conf" { + value 7; + description + "fsm event dis shut conf"; + } + enum "fsm-event-dis-destroy" { + value 8; + description + "fsm event dis destroy"; + } + enum "fsm-event-dis-destroy-conf" { + value 9; + description + "fsm event dis destroy conf"; + } + enum "fsm-event-dis-destroy-pending" { + value 10; + description + "fsm event dis destroy pending"; + } + enum "fsm-event-dis-noshut" { + value 11; + description + "fsm event dis noshut"; + } + enum "fsm-event-link-mon" { + value 12; + description + "fsm event link mon"; + } + enum "fsm-event-link-up-intr" { + value 13; + description + "fsm event link up intr"; + } + enum "fsm-event-link-down-intr-be-low-thr" { + value 14; + description + "fsm event link down intr be low thr"; + } + enum "fsm-event-link-down-intr" { + value 15; + description + "fsm event link down intr"; + } + enum "fsm-event-asic-isolate" { + value 16; + description + "fsm event asic isolate"; + } + enum "fsm-event-asic-unisolate" { + value 17; + description + "fsm event asic unisolate"; + } + enum "fsm-event-dis-perm-shut" { + value 18; + description + "fsm event dis perm shut"; + } + enum "fsm-event-any" { + value 19; + description + "fsm event any"; + } + enum "fsm-event-max" { + value 20; + description + "fsm event max"; + } + } + description + "Npu edm fsm event"; + } + + typedef Npu-edm-fsm-state { + type enumeration { + enum "link-state-none" { + value 0; + description + "link state none"; + } + enum "link-state-mac-port-created" { + value 1; + description + "link state mac port created"; + } + enum "link-state-fab-port-created" { + value 2; + description + "link state fab port created"; + } + enum "link-state-port-activate-delayed" { + value 3; + description + "link state port activate delayed"; + } + enum "link-state-activated" { + value 4; + description + "link state activated"; + } + enum "link-state-signal-wait" { + value 5; + description + "link state signal wait"; + } + enum "link-state-go-od-sig" { + value 6; + description + "link state go od sig"; + } + enum "link-state-tune-started" { + value 7; + description + "link state tune started"; + } + enum "link-state-tuned" { + value 8; + description + "link state tuned"; + } + enum "link-state-tune-in-progress" { + value 9; + description + "link state tune in progress"; + } + enum "link-state-tune-check-status" { + value 10; + description + "link state tune check status"; + } + enum "link-state-tune-check-link-state" { + value 11; + description + "link state tune check link state"; + } + enum "link-state-mac-up" { + value 12; + description + "link state mac up"; + } + enum "link-state-peer-discovery" { + value 13; + description + "link state peer discovery"; + } + enum "link-state-peer-detected" { + value 14; + description + "link state peer detected"; + } + enum "link-state-topology-check" { + value 15; + description + "link state topology check"; + } + enum "link-state-sync-wait" { + value 16; + description + "link state sync wait"; + } + enum "link-state-keep-alive-start" { + value 17; + description + "link state keep alive start"; + } + enum "link-state-check-reach" { + value 18; + description + "link state check reach"; + } + enum "link-state-up" { + value 19; + description + "link state up"; + } + enum "link-state-stopped" { + value 20; + description + "link state stopped"; + } + enum "link-state-fab-wb-stopped" { + value 21; + description + "link state fab wb stopped"; + } + enum "link-state-fab-port-permshut" { + value 22; + description + "link state fab port permshut"; + } + enum "link-state-reset" { + value 23; + description + "link state reset"; + } + enum "link-state-error" { + value 24; + description + "link state error"; + } + enum "link-state-destroy-pending" { + value 25; + description + "link state destroy pending"; + } + enum "link-state-destroyed" { + value 26; + description + "link state destroyed"; + } + enum "link-state-api-fail" { + value 27; + description + "link state api fail"; + } + enum "link-state-asic-isolated" { + value 28; + description + "link state asic isolated"; + } + enum "link-state-unknown" { + value 29; + description + "link state unknown"; + } + enum "link-state-max" { + value 30; + description + "link state max"; + } + } + description + "Npu edm fsm state"; + } + + typedef Link-error-state { + type enumeration { + enum "link-error-unset" { + value -1; + description + "link error unset"; + } + enum "link-error-none" { + value 0; + description + "link error none"; + } + enum "link-error-shut" { + value 1; + description + "link error shut"; + } + enum "link-error-max" { + value 2; + description + "link error max"; + } + } + description + "Link error state"; + } + + typedef Oper-state { + type enumeration { + enum "oper-unset" { + value -1; + description + "oper unset"; + } + enum "oper-unknown" { + value 0; + description + "oper unknown"; + } + enum "oper-up" { + value 1; + description + "oper up"; + } + enum "oper-down" { + value 2; + description + "oper down"; + } + enum "card-down" { + value 3; + description + "card down"; + } + } + description + "Oper state"; + } + + typedef Admin-state { + type enumeration { + enum "admin-unset" { + value -1; + description + "admin unset"; + } + enum "admin-up" { + value 0; + description + "admin up"; + } + enum "admin-down" { + value 1; + description + "admin down"; + } + } + description + "Admin state"; + } + + typedef Link-stage { + type enumeration { + enum "link-stage-unset" { + value -1; + description + "link stage unset"; + } + enum "link-stage-unused" { + value 0; + description + "link stage unused"; + } + enum "link-stage-npu" { + value 1; + description + "link stage npu"; + } + enum "link-stage-s1" { + value 2; + description + "link stage s1"; + } + enum "link-stage-s2" { + value 3; + description + "link stage s2"; + } + enum "link-stage-s3" { + value 4; + description + "link stage s3"; + } + enum "link-stage-unknown" { + value 5; + description + "link stage unknown"; + } + } + description + "Link stage"; + } + + typedef Link { + type enumeration { + enum "link-type-unset" { + value -1; + description + "link type unset"; + } + enum "link-type-unavail" { + value 0; + description + "link type unavail"; + } + enum "link-type-tx" { + value 1; + description + "link type tx"; + } + enum "link-type-rx" { + value 2; + description + "link type rx"; + } + } + description + "Link"; + } + + typedef Asic { + type enumeration { + enum "asic-unset" { + value -1; + description + "asic unset"; + } + enum "asic-unavail" { + value 0; + description + "asic unavail"; + } + enum "asic-npu" { + value 1; + description + "asic npu"; + } + enum "asic-s123" { + value 2; + description + "asic s123"; + } + enum "asic-s13" { + value 3; + description + "asic s13"; + } + enum "asic-s2" { + value 4; + description + "asic s2"; + } + enum "asic-b2b" { + value 5; + description + "asic b2b"; + } + enum "asic-type-unknown" { + value 6; + description + "asic type unknown"; + } + } + description + "Asic"; + } + + typedef Rack { + type enumeration { + enum "rack-type-unset" { + value -1; + description + "rack type unset"; + } + enum "rack-type-lcc" { + value 0; + description + "rack type lcc"; + } + enum "rack-type-fcc" { + value 1; + description + "rack type fcc"; + } + } + description + "Rack"; + } + + grouping NPU-EDM-LINK-OVF-COUNTERS { + description + "NPU EDM LINK OVF COUNTERS"; + leaf tx-control-cells-counter { + type string { + length "0..6"; + } + description + "TX Control cells counter"; + } + leaf tx-data-64b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 64b frames counter"; + } + leaf tx-data-65to127b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 65to127b frames counter"; + } + leaf tx-data-128to255b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 128to255b frames counter"; + } + leaf tx-data-256to511b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 256to511b frames counter"; + } + leaf tx-data-512to1023b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 512to1023b frames counter"; + } + leaf tx-data-1024to1518b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 1024to1518b frames counter"; + } + leaf tx-data-1519to2500b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 1519to2500b frames counter"; + } + leaf tx-data-2501to9000b-frames-counter { + type string { + length "0..6"; + } + description + "TX Data 2501to9000b frames counter"; + } + leaf rx-crc-errors-counter { + type string { + length "0..6"; + } + description + "RX CRC errors counter"; + } + leaf rx-lfec-fec-correctable-error { + type string { + length "0..6"; + } + description + "RX LFEC FEC correctable error"; + } + leaf rx-8b-10b-disparity-errors { + type string { + length "0..6"; + } + description + "RX 8b 10b disparity errors"; + } + leaf rx-control-cells-counter { + type string { + length "0..6"; + } + description + "RX Control cells counter"; + } + leaf rx-data-64b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 64b frames counter"; + } + leaf rx-data-65to127b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 65to127b frames counter"; + } + leaf rx-data-128to255b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 128to255b frames counter"; + } + leaf rx-data-256to511b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 256to511b frames counter"; + } + leaf rx-data-512to1023b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 512to1023b frames counter"; + } + leaf rx-data-1024to1518b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 1024to1518b frames counter"; + } + leaf rx-data-1519to2500b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 1519to2500b frames counter"; + } + leaf rx-data-2501to9000b-frames-counter { + type string { + length "0..6"; + } + description + "RX Data 2501to9000b frames counter"; + } + leaf rx-dropped-retransmitted-control { + type string { + length "0..6"; + } + description + "RX dropped retransmitted control"; + } + leaf tx-asyn-fifo-rate { + type string { + length "0..6"; + } + description + "TX Asyn fifo rate"; + } + leaf rx-asyn-fifo-rate { + type string { + length "0..6"; + } + description + "RX Asyn fifo rate"; + } + leaf rx-lfec-fec-uncorrectable-errors { + type string { + length "0..6"; + } + description + "RX LFEC FEC uncorrectable errors"; + } + leaf rx-8b-10b-code-errors { + type string { + length "0..6"; + } + description + "RX 8b 10b code errors"; + } + } + + grouping NPU-EDM-LINK-COUNTERS { + description + "NPU EDM LINK COUNTERS"; + leaf tx-control-cells-counter { + type uint64; + description + "TX Control cells counter"; + } + leaf tx-data-64b-frames-counter { + type uint64; + description + "TX Data 64b frames counter"; + } + leaf tx-data-65to127b-frames-counter { + type uint64; + description + "TX Data 65to127b frames counter"; + } + leaf tx-data-128to255b-frames-counter { + type uint64; + description + "TX Data 128to255b frames counter"; + } + leaf tx-data-256to511b-frames-counter { + type uint64; + description + "TX Data 256to511b frames counter"; + } + leaf tx-data-512to1023b-frames-counter { + type uint64; + description + "TX Data 512to1023b frames counter"; + } + leaf tx-data-1024to1518b-frames-counter { + type uint64; + description + "TX Data 1024to1518b frames counter"; + } + leaf tx-data-1519to2500b-frames-counter { + type uint64; + description + "TX Data 1519to2500b frames counter"; + } + leaf tx-data-2501to9000b-frames-counter { + type uint64; + description + "TX Data 2501to9000b frames counter"; + } + leaf rx-crc-errors-counter { + type uint64; + description + "RX CRC errors counter"; + } + leaf rx-lfec-fec-correctable-error { + type uint64; + description + "RX LFEC FEC correctable error"; + } + leaf rx-8b-10b-disparity-errors { + type uint64; + description + "RX 8b 10b disparity errors"; + } + leaf rx-control-cells-counter { + type uint64; + description + "RX Control cells counter"; + } + leaf rx-data-64b-frames-counter { + type uint64; + description + "RX Data 64b frames counter"; + } + leaf rx-data-65to127b-frames-counter { + type uint64; + description + "RX Data 65to127b frames counter"; + } + leaf rx-data-128to255b-frames-counter { + type uint64; + description + "RX Data 128to255b frames counter"; + } + leaf rx-data-256to511b-frames-counter { + type uint64; + description + "RX Data 256to511b frames counter"; + } + leaf rx-data-512to1023b-frames-counter { + type uint64; + description + "RX Data 512to1023b frames counter"; + } + leaf rx-data-1024to1518b-frames-counter { + type uint64; + description + "RX Data 1024to1518b frames counter"; + } + leaf rx-data-1519to2500b-frames-counter { + type uint64; + description + "RX Data 1519to2500b frames counter"; + } + leaf rx-data-2501to9000b-frames-counter { + type uint64; + description + "RX Data 2501to9000b frames counter"; + } + leaf rx-dropped-retransmitted-control { + type uint64; + description + "RX dropped retransmitted control"; + } + leaf tx-asyn-fifo-rate { + type uint64; + description + "TX Asyn fifo rate"; + } + leaf rx-asyn-fifo-rate { + type uint64; + description + "RX Asyn fifo rate"; + } + leaf rx-lfec-fec-uncorrectable-errors { + type uint64; + description + "RX LFEC FEC uncorrectable errors"; + } + leaf rx-8b-10b-code-errors { + type uint64; + description + "RX 8b 10b code errors"; + } + } + + grouping NPU-EDM-LINK-ERROR-STATUS { + description + "NPU EDM LINK ERROR STATUS"; + leaf link-crc-error { + type uint32; + description + "link crc error"; + } + leaf link-size-error { + type uint32; + description + "link size error"; + } + leaf link-mis-align-error { + type uint32; + description + "link mis align error"; + } + leaf link-code-group-error { + type uint32; + description + "link code group error"; + } + leaf link-no-sig-lock-error { + type uint32; + description + "link no sig lock error"; + } + leaf link-no-sig-accept-error { + type uint32; + description + "link no sig accept error"; + } + leaf link-tokens-error { + type uint32; + description + "link tokens error"; + } + leaf error-token-count { + type uint32; + description + "error token count"; + } + } + + grouping NPU-EDM-STATS-ASIC-FMAC { + description + "NPU EDM STATS ASIC FMAC"; + container link-error-status { + description + "link error status"; + uses NPU-EDM-LINK-ERROR-STATUS; + } + container link-counters { + description + "link counters"; + uses NPU-EDM-LINK-COUNTERS; + } + container ovf-status { + description + "ovf status"; + uses NPU-EDM-LINK-OVF-COUNTERS; + } + } + + grouping NPU-EDM-STATS-ASIC-FMAC-INFO { + description + "NPU EDM STATS ASIC FMAC INFO"; + container aggr-stats { + description + "aggr stats"; + uses NPU-EDM-STATS-ASIC-FMAC; + } + container incr-stats { + description + "incr stats"; + uses NPU-EDM-STATS-ASIC-FMAC; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf rack-no { + type uint32; + description + "rack no"; + } + leaf slot-no { + type uint32; + description + "slot no"; + } + leaf asic-instance { + type uint32; + description + "asic instance"; + } + leaf link-no { + type uint32; + description + "link no"; + } + leaf num-links-in-port { + type uint32; + description + "num links in port"; + } + leaf link-valid { + type boolean; + description + "link valid"; + } + } + + grouping NPU-EDM-TXLINK-STATS { + description + "NPU EDM TXLINK STATS"; + leaf dummy { + type uint32; + description + "dummy"; + } + } + + grouping NPU-EDM-TXLINK { + description + "NPU EDM TXLINK"; + container this-link { + description + "this link"; + uses NPU-EDM-LINK-IDENTITY; + } + container far-end-link { + description + "far end link"; + uses NPU-EDM-LINK-IDENTITY; + } + container stats { + description + "stats"; + uses NPU-EDM-TXLINK-STATS; + } + container history { + description + "history"; + uses NPU-EDM-HISTORY; + } + leaf speed { + type uint32; + description + "speed"; + } + leaf stage { + type uint8; + description + "stage"; + } + leaf is-link-valid { + type boolean; + description + "is link valid"; + } + leaf is-conf-pending { + type boolean; + description + "is conf pending"; + } + leaf is-power-enabled { + type boolean; + description + "is power enabled"; + } + leaf coeff1 { + type uint32; + description + "coeff1"; + } + leaf coeff2 { + type uint32; + description + "coeff2"; + } + leaf admin-state { + type Admin-state; + description + "Admin State"; + } + leaf oper-state { + type Oper-state; + description + "Oper State"; + } + leaf error-state { + type Link-error-state; + description + "Error State"; + } + leaf num-admin-shuts { + type uint32; + description + "num admin shuts"; + } + } + + grouping NPU-EDM-CARD-INFO { + description + "NPU EDM CARD INFO"; + leaf card-name { + type string { + length "0..16"; + } + description + "card name"; + } + leaf si-board-version { + type uint32; + description + "si board version"; + } + leaf si-param-version { + type uint32; + description + "si param version"; + } + leaf si-rt-board-version { + type uint32; + description + "si rt board version"; + } + leaf si-rt-param-version { + type uint32; + description + "si rt param version"; + } + leaf major-hw-ver { + type uint32; + description + "major hw ver"; + } + leaf minor-hw-ver { + type uint32; + description + "minor hw ver"; + } + leaf fp-retimer-type-str { + type string; + description + "fp retimer type str"; + } + } + + grouping NPU-EDM-DEVICE { + description + "NPU EDM DEVICE"; + container asic-id { + description + "asic id"; + uses NPU-EDM-ASIC-IDENTITY; + } + leaf fapid { + type uint32; + description + "fapid"; + } + leaf hotplug-event { + type uint32; + description + "hotplug event"; + } + leaf slice-state { + type Slice-state; + description + "Slice State"; + } + leaf admin-state { + type Admin-state; + description + "Admin State"; + } + leaf oper-state { + type Asic-oper-state; + description + "Oper State"; + } + leaf asic-state { + type Asic-access-state; + description + "Asic State"; + } + leaf last-init-cause { + type Asic-init-method; + description + "last init cause"; + } + leaf num-pon-resets { + type uint32; + description + "num pon resets"; + } + leaf num-hard-resets { + type uint32; + description + "num hard resets"; + } + leaf fw-major-rev { + type uint32; + description + "fw major rev"; + } + leaf fw-minor-rev { + type uint32; + description + "fw minor rev"; + } + } + + grouping NPU-EDM-DRIVER-INFO { + description + "NPU EDM DRIVER INFO"; + leaf driver-version { + type uint32; + description + "driver version"; + } + leaf functional-role { + type Functional-role; + description + "Functional Role"; + } + leaf node-id { + type string; + description + "node id"; + } + leaf rack-type { + type Rack; + description + "Rack Type"; + } + leaf rack-num { + type uint8; + description + "rack num"; + } + leaf is-driver-ready { + type boolean; + description + "is driver ready"; + } + leaf card-avail-mask { + type string { + length "0..16"; + } + description + "card avail mask"; + } + leaf asic-avail-mask { + type string { + length "0..16"; + } + description + "asic avail mask"; + } + leaf exp-asic-avail-mask { + type string { + length "0..16"; + } + description + "exp asic avail mask"; + } + leaf asic-oper-notify-to-fsdb-pending-bmap { + type uint64; + description + "asic oper notify to fsdb pending bmap"; + } + leaf is-full-fgid-download-req { + type boolean; + description + "is full fgid download req"; + } + leaf is-fgid-download-in-progress { + type boolean; + description + "is fgid download in progress"; + } + leaf is-fgid-download-completed { + type boolean; + description + "is fgid download completed"; + } + leaf fsdb-conn-active { + type boolean; + description + "fsdb conn active"; + } + leaf fgid-conn-active { + type boolean; + description + "fgid conn active"; + } + leaf issu-mgr-conn-active { + type boolean; + description + "issu mgr conn active"; + } + leaf fsdb-reg-active { + type boolean; + description + "fsdb reg active"; + } + leaf fgid-reg-active { + type boolean; + description + "fgid reg active"; + } + leaf issu-mgr-reg-active { + type boolean; + description + "issu mgr reg active"; + } + leaf num-pm-conn-reqs { + type uint8; + description + "num pm conn reqs"; + } + leaf num-fsdb-conn-reqs { + type uint8; + description + "num fsdb conn reqs"; + } + leaf num-fgid-conn-reqs { + type uint8; + description + "num fgid conn reqs"; + } + leaf num-cm-conn-reqs { + type uint8; + description + "num cm conn reqs"; + } + leaf num-issu-mgr-conn-reqs { + type uint8; + description + "num issu mgr conn reqs"; + } + leaf num-peer-npu-conn-reqs { + type uint8; + description + "num peer npu conn reqs"; + } + leaf is-sm-registered { + type boolean; + description + "is sm registered"; + } + leaf is-ael-registered { + type boolean; + description + "is ael registered"; + } + leaf drvr-initial-startup-timestamp { + type string; + description + "drvr initial startup timestamp"; + } + leaf drvr-current-startup-timestamp { + type string; + description + "drvr current startup timestamp"; + } + leaf respawn-count { + type uint8; + description + "respawn count"; + } + leaf total-asics { + type uint8; + description + "total asics"; + } + leaf fabric-mode { + type Fabric-mode; + description + "Fixed Vs Distributed"; + } + leaf fabric-oper-mode { + type uint32; + description + "Fabric Operational Mode"; + } + leaf power-opt-freq { + type Power-opt-freq; + description + "Power Optimization Frequency"; + } + leaf is-fwding-supported { + type uint8; + description + "is fwding supported"; + } + leaf is-node-scoped { + type uint8; + description + "is node scoped"; + } + leaf sdk-version { + type string; + description + "sdk version"; + } + leaf unicast-weight { + type uint8; + description + "unicast weight"; + } + leaf multicast-weight { + type uint8; + description + "multicast weight"; + } + list device-info { + description + "device info"; + uses NPU-EDM-DEVICE; + } + list card-info { + description + "card info"; + uses NPU-EDM-CARD-INFO; + } + } + + grouping NPU-EDM-FSM-ENTRY { + description + "NPU EDM FSM ENTRY"; + leaf fsm-state { + type Npu-edm-fsm-state; + description + "FSM State"; + } + leaf fsm-event { + type Npu-edm-fsm-event; + description + "FSM Event"; + } + leaf shown { + type uint8; + description + "shown"; + } + leaf fsm-timestamp { + type string { + length "0..32"; + } + description + "fsm timestamp"; + } + } + + grouping NPU-EDM-FSM { + description + "NPU EDM FSM"; + leaf num-entries { + type uint8; + description + "num entries"; + } + list fsm-entry { + max-elements "15"; + description + "fsm entry"; + uses NPU-EDM-FSM-ENTRY; + } + } + + grouping NPU-EDM-STATE-CHANGE { + description + "NPU EDM STATE CHANGE"; + leaf admin-state { + type Admin-state; + description + "Admin State"; + } + leaf oper-state { + type Oper-state; + description + "Oper State"; + } + leaf error-state { + type Link-error-state; + description + "Error State"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf reasons { + type string; + description + "reasons"; + } + } + + grouping NPU-EDM-HISTORY { + description + "NPU EDM HISTORY"; + leaf histnum { + type uint8; + description + "histnum"; + } + leaf start-index { + type uint8; + description + "start index"; + } + list hist { + max-elements "5"; + description + "hist"; + uses NPU-EDM-STATE-CHANGE; + } + } + + grouping NPU-EDM-ASIC-IDENTITY { + description + "NPU EDM ASIC IDENTITY"; + leaf rack-type { + type Rack; + description + "Rack Type"; + } + leaf asic-type { + type Asic; + description + "Asic Type"; + } + leaf rack-num { + type uint32; + description + "rack num"; + } + leaf slot-num { + type uint32; + description + "slot num"; + } + leaf asic-instance { + type uint32; + description + "asic instance"; + } + } + + grouping NPU-EDM-LINK-IDENTITY { + description + "NPU EDM LINK IDENTITY"; + container asic-id { + description + "asic id"; + uses NPU-EDM-ASIC-IDENTITY; + } + leaf link-type { + type Link; + description + "Link Type"; + } + leaf link-stage { + type Link-stage; + description + "Link Stage"; + } + leaf link-num { + type uint32; + description + "link num"; + } + leaf log-link-num { + type uint32; + description + "log link num"; + } + } + + grouping NPU-EDM-RXLINK { + description + "NPU EDM RXLINK"; + container this-link { + description + "this link"; + uses NPU-EDM-LINK-IDENTITY; + } + container far-end-link { + description + "far end link"; + uses NPU-EDM-LINK-IDENTITY; + } + container far-end-link-in-hw { + description + "far end link in hw"; + uses NPU-EDM-LINK-IDENTITY; + } + container history { + description + "history"; + uses NPU-EDM-HISTORY; + } + container link-fsm { + description + "link fsm"; + uses NPU-EDM-FSM; + } + leaf speed-in-gbps { + type uint32; + description + "speed in gbps"; + } + leaf stage { + type Link-stage; + description + "Stage"; + } + leaf is-link-valid { + type boolean; + description + "is link valid"; + } + leaf is-conf-pending { + type boolean; + description + "is conf pending"; + } + leaf admin-state { + type Admin-state; + description + "Admin State"; + } + leaf oper-state { + type Oper-state; + description + "Oper State"; + } + leaf error-state { + type Link-error-state; + description + "Error State"; + } + leaf flags { + type string; + description + "flags"; + } + leaf flap-cnt { + type uint32; + description + "flap cnt"; + } + leaf num-admin-shuts { + type uint32; + description + "num admin shuts"; + } + leaf correctable-errors { + type uint64; + description + "correctable errors"; + } + leaf uncorrectable-errors { + type uint64; + description + "uncorrectable errors"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper.yang new file mode 100644 index 000000000..19c185d42 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-fsdb-stats-oper.yang @@ -0,0 +1,263 @@ +module Cisco-IOS-XR-npu-fsdb-stats-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-npu-fsdb-stats-oper"; + prefix npu-fsdb-stats-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-npu-fsdb-stats-oper-sub1 { + revision-date 2022-03-03; + } + + 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 npu-fsdb-stats package operational data. + + This module contains definitions + for the following management objects: + npu: Fabric Data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-03 { + description + "Updated the yang model for link FSM entry + 2022-02-11 + Added weight distribution to npu driver info"; + semver:module-version "3.0.0"; + } + revision 2021-05-14 { + description + "Updated the type of fabric operational mode in the yang model"; + semver:module-version "2.0.0"; + } + revision 2020-10-10 { + description + "Yang Schema for npu driver link info"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Link-option-string { + type string { + pattern "(flap)|(topo)|(fsm)"; + } + description + "flap:Display link flap info, topo:Display link + topo info, fsm:Link state FSM info"; + } + + typedef Npu-max-asic-instances { + type uint32 { + range "0..255"; + } + description + "Npu max asic instances"; + } + + typedef Link-info-max-number { + type uint32 { + range "0..255"; + } + description + "Link info max number"; + } + + container npu { + config false; + description + "Fabric Data"; + list node { + key "node-name"; + description + "Data for particular node"; + container rx-link-information { + description + "NPU link rx information"; + container link-options { + description + "Option table for link rx information"; + list link-option { + key "option"; + description + "Option : topo , fsm , flap"; + container rx-asic-instances { + description + "Instance table for rx information"; + list rx-asic-instance { + key "instance"; + description + "Instance number for rx link information"; + container rx-links { + description + "Link table class for rx information"; + list rx-link { + description + "Link number for rx link information"; + leaf start-number { + type Link-info-max-number; + description + "Start number"; + } + leaf end-number { + type Link-info-max-number; + description + "End number"; + } + leaf status-option { + type xr:Cisco-ios-xr-string; + description + "RX link status option"; + } + list rx-link { + key "link"; + description + "Single link information"; + leaf link { + type uint32; + description + "Single link"; + } + uses NPU-EDM-RXLINK; + } + } + } + leaf instance { + type Npu-max-asic-instances; + description + "Receive instance"; + } + } + } + leaf option { + type Link-option-string; + description + "Link option"; + } + } + } + } + container driver-info { + description + "NPU Driver Info"; + uses NPU-EDM-DRIVER-INFO; + } + container tx-link-information { + description + "NPU link TX information"; + container tx-status-option-table { + description + "Link table for tx information"; + container tx-status-option { + description + "Option: data, ctrl, all- for now none"; + container tx-asic-instances { + description + "Instance table for tx information"; + list tx-asic-instance { + key "instance"; + description + "Instance number for tx link information"; + container tx-links { + description + "Link table for tx information"; + list tx-link { + description + "Link number for tx link information"; + leaf start-number { + type Link-info-max-number; + description + "Start number"; + } + leaf end-number { + type Link-info-max-number; + description + "End number"; + } + list tx-link { + key "link"; + description + "Single link information"; + leaf link { + type uint32; + description + "Single Link"; + } + uses NPU-EDM-TXLINK; + } + } + } + leaf instance { + type Npu-max-asic-instances; + description + "Transmit instance"; + } + } + } + } + } + } + container instance-tables { + description + "NPU statistics"; + list instance-table { + key "instance"; + description + "Instance Number"; + container fmac-link-tables { + description + "FMAC statistics"; + list fmac-link-table { + key "link"; + description + "Link Number"; + container fmac-brief-statistics { + description + "NPU FMAC Statistics"; + uses NPU-EDM-STATS-ASIC-FMAC-INFO; + } + leaf link { + type uint32; + description + "Link Number"; + } + } + } + leaf instance { + type uint32; + description + "Instance Number"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-hw-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-hw-profile-cfg.yang new file mode 100644 index 000000000..279ad15d1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-hw-profile-cfg.yang @@ -0,0 +1,613 @@ +module Cisco-IOS-XR-npu-hw-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-npu-hw-profile-cfg"; + prefix npu-hw-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 npu-hw-profile package configuration. + + This module contains definitions + for the following management objects: + macsec-hw-module: Macsec Related HW Module configs, Reload + Card after config + npu-hw-module-profile-config: none + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-22 { + description + "Yang Schema updated for route scale lpm tcam-banks + 2022-09-30 + Yang Schema updated to add LDPoTE scale/label knobs + 2022-09-27 + Yang Schema added for pbr vrfredirect in hw-module config. + 2022-09-08 + Yang Schema updated for route scale lpm tcam-banks + 2022-09-01 + Yang Schema added for flowspec ipv6 packet length in hw-module config. + 2022-08-25 + Yang Schema added for vxlan ipv6 tunnel scale + 2022-07-07 + Yang Schema added for route scale lpm high + 2022-04-28 + Yang Schema added for l2 high scale + 2022-04-25 + Yang Schema added for npu compatibility + 2022-04-06 + Yang Schema added for vxlan-dc-leaf + 2022-02-11 + Yang Schema added for configuring CBF forward-class-list + 2021-12-11 + Yang Schema added for route scale high for IPV6 connected-prefix"; + semver:module-version "2.0.0"; + } + revision 2021-08-15 { + description + "Yang Schema updated to make fair-4/fair-8 options visible + 2021-06-28 + Yang Schema updated to accept a range of values for lpts entry counters + 2021-04-30 + Yang Schema added for bd flush convergence + 2021-03-04 + Yang Schema added for pifib entry counters + 2021-02-16 + Yang Schema added for cbf"; + semver:module-version "1.1.0"; + } + revision 2021-01-26 { + description + "Added CEF profile for punting ip-redirect"; + semver:module-version "1.0.0"; + } + revision 2021-01-11 { + description + "Added profile CEF IPv6 hop-limit punt"; + } + revision 2020-11-13 { + description + "Yang Schema removed block for NPU power profile in hw-module config."; + } + revision 2020-11-09 { + description + "Yang Schema fixed for npu config hw module cli - power profile model."; + } + revision 2020-09-29 { + description + "Yang Schema added for l2-qos-mode"; + } + revision 2020-09-01 { + description + "Yang Schema added new VoQ modes."; + } + revision 2020-07-30 { + description + "Yang Schema added for npu-power-optimize"; + } + revision 2020-06-04 { + description + "Yang Schema added for ttl mode of ip tunnel"; + } + revision 2020-05-27 { + description + "Yang Schema added Macsec Related Yang Config Model."; + } + revision 2020-04-03 { + description + "Yang Schema added for label stats"; + } + revision 2020-02-05 { + description + "Yang Schema updated for reorganized cli knobs."; + } + revision 2020-01-22 { + description + "Yang Schema added for bw-threshold."; + } + revision 2019-12-23 { + description + "Yang Schema adde for VoQ and Counter Sharing modes."; + } + revision 2019-10-14 { + description + "Yang Schema fixed for npu config hw module cli."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Npu-compatibility-mode { + type enumeration { + enum "q100" { + value 1; + description + "Q100 asic"; + } + enum "q200" { + value 2; + description + "Q200 asic"; + } + enum "p100" { + value 4; + description + "P100 asic"; + } + } + description + "Npu compatibility mode"; + } + + typedef Ipv6-hop-limit-action { + type enumeration { + enum "punt" { + value 1; + description + "IPv6 hop-limit punt"; + } + } + description + "Ipv6 hop limit action"; + } + + typedef Qos-voq-mode { + type enumeration { + enum "fair-4" { + value 2; + description + "fair-4 VoQ Mode"; + } + enum "fair-8" { + value 3; + description + "fair-8 VoQ Mode"; + } + enum "4" { + value 4; + description + "4 VoQ Mode"; + } + enum "8" { + value 8; + description + "8 VoQ Mode"; + } + } + description + "Qos voq mode"; + } + + container macsec-hw-module { + description + "Macsec Related HW Module configs, Reload Card + after config"; + container fips-post-location-tables { + description + "Enable macsec-fips-post"; + list fips-post-location-table { + key "location-string"; + description + "none"; + leaf fips-post-location { + type string; + description + "Macsec FIPS"; + } + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of MacsecFipsPost config or all"; + } + } + } + container macsec-mode-location-tables { + description + "Enable macsec-mode"; + list macsec-mode-location-table { + key "location-string"; + description + "none"; + leaf macsec-mode-location { + type string; + description + "Macsec Mode"; + } + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of MacSecMode config or all"; + } + } + } + } + container npu-hw-module-profile-config { + description + "none"; + container profile { + description + "Configure profile."; + container qos { + description + "Configure qos profile"; + leaf l2-mode { + type uint32 { + range "2..3"; + } + description + "value either 2 or 3 (for L2 or L3 mode)"; + } + leaf voq-mode { + type Qos-voq-mode; + description + "voq mode to configure"; + } + } + container flowspec { + description + "Configure flowspec parameters"; + leaf ipv6-packet-len { + type empty; + description + "Enable flowspec for ipv6 packet length + classification"; + } + } + container gue { + description + "Configure gue udp port"; + leaf destport { + type uint32 { + range "1000..64000"; + } + description + "Configure udp destination port for + ipv4/ipv6/mpls payloads"; + } + } + container tcam-table { + description + "Configure profile for TCAM LC cards"; + container fib-table { + description + "FIB table for TCAM LC cards"; + container ipv6-address { + description + "IPv6 table for TCAM LC cards"; + container ipv6-unicast { + description + "Unicast table for TCAM LC cards"; + leaf ipv6-unicast-percent { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "curve out percentage of TCAM table entries"; + } + } + } + container ipv4-address { + description + "IPv4 table for TCAM LC cards"; + container ipv4-unicast { + description + "Unicast table for TCAM LC cards"; + leaf ipv4-unicast-percent { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "curve out percentage of TCAM table entries"; + } + } + } + } + container acl-table { + description + "ACL table for TCAM LC cards"; + leaf acl-percent { + type uint32 { + range "0..100"; + } + units "percentage"; + description + "curve out percentage of TCAM table entries"; + } + } + } + container netflow { + description + "Configure Netflow profile."; + container ipfix-netflow-locations { + description + "none"; + list ipfix-netflow-location { + key "location-string"; + description + "none"; + leaf location-string { + type xr:Cisco-ios-xr-string; + description + "Location of NETFLOW config"; + } + list ipfix-netflow-location-leaf { + key "location-id"; + description + "none"; + leaf location-id { + type uint32; + description + "Location ID"; + } + leaf enable-val { + type uint32; + mandatory true; + description + "If Enabled set value to 65535"; + } + } + } + } + container ipfix-location-all { + description + "IPFIX315 Location All"; + leaf ipfix-location-all-leaf { + type uint32; + description + "If Enabled set value to 65535"; + } + } + } + container route { + description + "route"; + container scale { + description + "scale"; + container lpm { + description + "lpm"; + leaf tcam-banks { + type empty; + description + "Enable profile scale lpm tcam-banks"; + } + } + container ipv6-unicast { + description + "ipv6 unicast"; + container connected-prefix { + description + "connected prefix"; + leaf high { + type empty; + description + "Enable profile ipv6-unicast + connected-prefix high"; + } + } + } + } + } + container stats { + description + "Configure statistics profile"; + leaf voq-sharing-counters { + type uint32 { + range "1..4"; + } + description + "Configure number of voqs (1, 2, 4) sharing + counters"; + } + } + container l2fib { + description + "Configure l2fib profiles"; + leaf data-center { + type empty; + description + "Data center mode"; + } + leaf pw-stats { + type uint32; + description + "If enabled, set value to 1"; + } + leaf bd-flush-conv { + type empty; + description + "BD flush convergence mode"; + } + leaf high-scale { + type boolean; + description + "TRUE if enabled, FALSE if disabled"; + } + } + container cef-forwarding { + description + "Configure cef profiles"; + container te-tunnel { + description + "Configure te-tunnel profile"; + leaf label-over-te-counter { + type uint32; + description + "Configure label counters instead of TE + counters"; + } + leaf high-scale-ldpote { + type uint32; + description + "Configure te-tunnel highscale with ldp over + te feature and disable sr over srte"; + } + leaf high-scale { + type uint32; + description + "Configure te-tunnel highscale and disable ldp + over te feature"; + } + } + container cef-stats { + description + "Configure feature level stats"; + container label { + description + "Configure label stats"; + container app-default { + description + "Applies to - LDP and SR"; + leaf dynamic { + type uint32; + description + "If enabled, set value to 1"; + } + } + } + } + container ttl { + description + "Configure ttl profile"; + container tunnel-ip { + description + "Configure tunnel-ip ttl mode"; + leaf decrement { + type uint32; + description + "Configure tunnel-ip ttl decrement attribute"; + } + } + } + container ipv6 { + description + "IPv6"; + leaf hop-limit { + type Ipv6-hop-limit-action; + description + "IPv6 hop-limit 0 packets"; + } + } + container lpts-xr { + description + "Enable lpts pifib per-entry counters"; + leaf pifib-entry-counters { + type uint32 { + range "256..512"; + } + description + "Configure number of counters"; + } + } + container vxlan { + description + "VXLAN"; + leaf ipv6-tnl-scale { + type empty; + description + "Enable profile CEF VXLAN IPV6-TNL-SCALE"; + } + } + container lpts { + description + "LPTS"; + leaf acl { + type empty; + description + "Enable profile CEF LPTS ACL"; + } + } + leaf sropt { + type uint32 { + range "0..1"; + } + description + "Configure SROPT feature"; + } + leaf cbf { + type empty; + description + "Enable cbf feature"; + } + leaf unipath-surpf { + type uint32; + description + "Configure unipath surpf feature"; + } + leaf forward-class-list { + type uint32 { + range "0..7"; + } + default "0"; + description + "forward class list"; + } + leaf bgplu { + type uint32; + description + "If Enabled set value to 1"; + } + leaf dark-bandwidth { + type uint32 { + range "0..1"; + } + description + "Configure dark-bandwidth feature"; + } + leaf ip-redirect { + type uint32 { + range "0..1"; + } + description + "value either 0 or 1"; + } + } + container pbr { + description + "Configure pbr parameters"; + leaf vrf-redirect { + type empty; + description + "Enable vrf-redirect"; + } + } + leaf bw-threshold { + type string; + units "percentage"; + description + "Configure fabric BW"; + } + leaf npu-compatibility { + type Npu-compatibility-mode; + description + "Configure npu compatibility mode for chassis"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-d-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-d-cfg.yang new file mode 100644 index 000000000..a3e343ca0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-d-cfg.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-npu-power-profile-sf-d-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-npu-power-profile-sf-d-cfg"; + prefix npu-power-profile-sf-d-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 npu-power-profile-sf-d package configuration. + + This module contains definitions + for the following management objects: + npu-hw-module-profile-config: none + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-22 { + description + "Yang Schema updated to handle location format R/S/A instead of R_S_A."; + semver:module-version "2.0.0"; + } + revision 2020-11-13 { + description + "Yang Schema added for SF-D NPU power profile in hw-module config."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Power-mode-enum { + type enumeration { + enum "low" { + value 1; + description + "Low"; + } + enum "medium" { + value 2; + description + "Medium"; + } + enum "high" { + value 3; + description + "High"; + } + } + description + "Power mode enum"; + } + + container npu-hw-module-profile-config { + description + "none"; + container profile { + description + "Configure profile."; + container npu-power-profile { + description + "Configure asic power usage."; + container card-type { + description + "Card Type"; + container fabric-card { + description + "Fabric Cards"; + leaf power-mode { + type Power-mode-enum; + description + "Power Mode"; + } + } + container line-card-locations { + description + "Line Cards"; + list line-card-location { + key "location"; + description + "none"; + leaf power-mode { + type Power-mode-enum; + description + "Power Mode"; + } + leaf location { + type xr:Node-id; + description + "Location of npu-power-profile config"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-f-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-f-cfg.yang new file mode 100644 index 000000000..db2af0656 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-npu-power-profile-sf-f-cfg.yang @@ -0,0 +1,98 @@ +module Cisco-IOS-XR-npu-power-profile-sf-f-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-npu-power-profile-sf-f-cfg"; + prefix npu-power-profile-sf-f-cfg; + + 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 npu-power-profile-sf-f package configuration. + + This module contains definitions + for the following management objects: + npu-hw-module-profile-config: none + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-22 { + description + "Yang Schema updated to handle power mode as enum instead of uint32_t."; + semver:module-version "2.0.0"; + } + revision 2020-11-13 { + description + "Yang Schema added for SF-F NPU power profile in hw-module config."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Power-mode-enum { + type enumeration { + enum "low" { + value 1; + description + "Low"; + } + enum "medium" { + value 2; + description + "Medium"; + } + enum "high" { + value 3; + description + "High"; + } + } + description + "Power mode enum"; + } + + container npu-hw-module-profile-config { + description + "none"; + container profile { + description + "Configure profile."; + container npu-power-profile { + description + "Configure asic power usage."; + container card-type { + description + "Card Type"; + container fixed-board { + description + "Fixed board systems"; + leaf power-mode { + type Power-mode-enum; + description + "Power Mode"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper-sub1.yang new file mode 100644 index 000000000..539b45dd1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper-sub1.yang @@ -0,0 +1,275 @@ +submodule Cisco-IOS-XR-nto-misc-oper-sub1 { + belongs-to Cisco-IOS-XR-nto-misc-oper { + prefix Cisco-IOS-XR-nto-misc-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR nto-misc package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-25 { + description + "Enhance output as per show shmwin summary/detail"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHARED-WINDOW { + description + "Shared window information"; + leaf shared-window { + type string; + description + "Name of shared window"; + } + leaf window-size { + type uint64; + description + "Size of shared window"; + } + leaf window-group { + type uint64; + description + "Shared window ID"; + } + leaf private-window { + type boolean; + description + "Shared window type"; + } + } + + grouping NODE-MEM-INFO-DETAIL { + description + "Detail Node memory information"; + leaf page-size { + type uint32; + units "byte"; + description + "Page size in bytes"; + } + leaf ram-memory { + type uint64; + units "byte"; + description + "Physical memory size in bytes"; + } + leaf free-physical-memory { + type uint64; + units "byte"; + description + "Physical memory available in bytes"; + } + leaf private-physical-memory { + type uint64; + units "byte"; + description + "Private Physical memory in bytes"; + } + leaf system-ram-memory { + type uint64; + units "byte"; + description + "Application memory size in bytes"; + } + leaf free-application-memory { + type uint64; + units "byte"; + description + "Application memory available in bytes"; + } + leaf image-memory { + type uint64; + units "byte"; + description + "Image memory size in bytes"; + } + leaf boot-ram-size { + type uint64; + units "byte"; + description + "Boot RAM size in bytes"; + } + leaf reserved-memory { + type uint64; + units "byte"; + description + "Reserved memory size in bytes"; + } + leaf io-memory { + type uint64; + units "byte"; + description + "IO memory size in bytes"; + } + leaf flash-system { + type uint64; + units "byte"; + description + "Flash System size in bytes"; + } + leaf group1-shmwin-size { + type uint64; + units "byte"; + description + "Shared memory size in bytes"; + } + leaf group1-shmwin-allocated { + type uint64; + units "byte"; + description + "Shared memory allocated in bytes"; + } + leaf group1-shmwin-free { + type uint64; + units "byte"; + description + "Shared memory available in bytes"; + } + leaf group2-shmwin-size { + type uint64; + units "byte"; + description + "Shared memory size in bytes"; + } + leaf group2-shmwin-allocated { + type uint64; + units "byte"; + description + "Shared memory allocated in bytes"; + } + leaf group2-shmwin-free { + type uint64; + units "byte"; + description + "Shared memory available in bytes"; + } + leaf total-shared-window { + type uint64; + description + "Total Shared window"; + } + leaf allocated-memory { + type uint64; + description + "Allocated Memory Size"; + } + leaf program-text { + type uint64; + description + "Program Text Size"; + } + leaf program-data { + type uint64; + description + "Program Data Size"; + } + leaf program-stack { + type uint64; + description + "Program Stack Size"; + } + leaf total-used { + type uint64; + description + "Total Used"; + } + list shared-window { + description + "Available Shared windows"; + uses SHARED-WINDOW; + } + } + + grouping NODE-MEM-INFO { + description + "Node memory information"; + leaf page-size { + type uint32; + units "byte"; + description + "Page size in bytes"; + } + leaf ram-memory { + type uint64; + units "byte"; + description + "Physical memory size in bytes"; + } + leaf free-physical-memory { + type uint64; + units "byte"; + description + "Physical memory available in bytes"; + } + leaf system-ram-memory { + type uint64; + units "byte"; + description + "Application memory size in bytes"; + } + leaf free-application-memory { + type uint64; + units "byte"; + description + "Application memory available in bytes"; + } + leaf image-memory { + type uint64; + units "byte"; + description + "Image memory size in bytes"; + } + leaf boot-ram-size { + type uint64; + units "byte"; + description + "Boot RAM size in bytes"; + } + leaf reserved-memory { + type uint64; + units "byte"; + description + "Reserved memory size in bytes"; + } + leaf io-memory { + type uint64; + units "byte"; + description + "IO memory size in bytes"; + } + leaf flash-system { + type uint64; + units "byte"; + description + "Flash System size in bytes"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper.yang new file mode 100644 index 000000000..2152a0cc3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-nto-misc-oper.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-nto-misc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-nto-misc-oper"; + prefix nto-misc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-nto-misc-oper-sub1 { + revision-date 2022-01-25; + } + + 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 nto-misc package operational data. + + This module contains definitions + for the following management objects: + memory-summary: Memory summary information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-25 { + description + "Enhance output as per show shmwin summary/detail"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container memory-summary { + config false; + description + "Memory summary information"; + container nodes { + description + "List of nodes"; + list node { + key "node-name"; + description + "Name of nodes"; + container summary { + description + "Memory summary information for a specific node"; + uses NODE-MEM-INFO; + } + container detail { + description + "Detail Memory summary information for a + specific node"; + uses NODE-MEM-INFO-DETAIL; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-cfg.yang new file mode 100644 index 000000000..f8ca11c26 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-cfg.yang @@ -0,0 +1,82 @@ +module Cisco-IOS-XR-nvgen-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-nvgen-cfg"; + prefix nvgen-cfg; + + 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 nvgen package configuration. + + This module contains definitions + for the following management objects: + nvgen-cfg: nvgen config commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container nvgen-cfg { + description + "nvgen config commands"; + container sanitize-flags { + description + "nvgen default sanitize flags"; + leaf passwords { + type empty; + description + "nvgen will default sanitize passwords"; + } + leaf comments { + type empty; + description + "nvgen will default sanitize comments"; + } + leaf ip-addrs { + type empty; + description + "nvgen will default sanitize ip addresses and + masks"; + } + leaf strings { + type empty; + description + "nvgen will default sanitize strings which are + not passwords/comments/usernames"; + } + leaf usernames { + type empty; + description + "nvgen will default sanitize usernames"; + } + } + leaf enter { + type empty; + description + "nvgen submode enter tuple"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper-sub1.yang new file mode 100644 index 000000000..2fe6d1de0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper-sub1.yang @@ -0,0 +1,63 @@ +submodule Cisco-IOS-XR-nvgen-partition-oper-sub1 { + belongs-to Cisco-IOS-XR-nvgen-partition-oper { + prefix Cisco-IOS-XR-nvgen-partition-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR nvgen-partition package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NVGEN-PARTITION-INFO { + description + "All nvgen partition information"; + leaf p-name { + type string; + description + "Partition name"; + } + leaf root-dir { + type string; + description + "root dir name"; + } + leaf p-subtrees { + type string; + description + "Subtree"; + } + leaf time-modified { + type string; + description + "Last time modified "; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper.yang new file mode 100644 index 000000000..812dc94fa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-nvgen-partition-oper.yang @@ -0,0 +1,65 @@ +module Cisco-IOS-XR-nvgen-partition-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-nvgen-partition-oper"; + prefix nvgen-partition-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-nvgen-partition-oper-sub1 { + revision-date 2019-04-05; + } + + 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 nvgen-partition package operational data. + + This module contains definitions + for the following management objects: + nvgen-partition: nvgen partition details + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container nvgen-partition { + config false; + description + "nvgen partition details"; + container nvgen-partition-tables { + description + "All partitions"; + list nvgen-partition-table { + key "path"; + description + "nvgen partition details"; + leaf path { + type string; + description + "Path"; + } + uses NVGEN-PARTITION-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub1.yang new file mode 100644 index 000000000..5c131c227 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub1.yang @@ -0,0 +1,297 @@ +submodule Cisco-IOS-XR-ofa-netflow-oper-sub1 { + belongs-to Cisco-IOS-XR-ofa-netflow-oper { + prefix Cisco-IOS-XR-ofa-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ofa-netflow package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-08-26 { + description + "Update leaf fields"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Flow-monitor-name { + type string; + description + "Flow monitor name"; + } + + grouping NFSVR-COLLECTOR-INFO { + description + "Per collector information"; + leaf exporter-state { + type string; + description + "Exporter state"; + } + leaf destination-address { + type string; + description + "Destination IPv4 address in AAA.BBB.CCC.DDD + format"; + } + leaf source-address { + type string; + description + "Source IPv4 address in AAA.BBB.CCC.DDD format"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf destination-port { + type uint16; + description + "Destination port number"; + } + leaf souce-port { + type uint16; + description + "Source port number"; + } + leaf transport-protocol { + type string; + description + "Transport protocol"; + } + leaf packets-sent { + type uint64; + description + "Packets sent"; + } + leaf flows-sent { + type uint64; + description + "Flows sent"; + } + leaf templates-sent { + type uint64; + description + "Templates sent"; + } + leaf option-templates-sent { + type uint64; + description + "Option templates sent"; + } + leaf option-data-sent { + type uint64; + description + "Option data sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Bytes sent"; + } + leaf flow-bytes-sent { + type uint64; + units "byte"; + description + "Flow bytes sent"; + } + leaf template-bytes-sent { + type uint64; + units "byte"; + description + "Template bytes sent"; + } + leaf option-template-bytes-sent { + type uint64; + units "byte"; + description + "Option template bytes sent"; + } + leaf option-data-bytes-sent { + type uint64; + units "byte"; + description + "Option data bytes sent"; + } + leaf packets-dropped { + type uint64; + description + "Packets dropped"; + } + leaf flows-dropped { + type uint64; + description + "Flows dropped"; + } + leaf templates-dropped { + type uint64; + description + "Templates dropped"; + } + leaf option-templates-dropped { + type uint64; + description + "Option templates dropped"; + } + leaf option-data-dropped { + type uint64; + description + "Option data dropped"; + } + leaf bytes-dropped { + type uint64; + units "byte"; + description + "Bytes dropped"; + } + leaf flow-bytes-dropped { + type uint64; + units "byte"; + description + "Flow bytes dropped"; + } + leaf template-bytes-dropped { + type uint64; + units "byte"; + description + "Template bytes dropped"; + } + leaf option-template-bytes-dropped { + type uint64; + units "byte"; + description + "Option template bytes dropped"; + } + leaf option-data-bytes-dropped { + type uint64; + description + "Option data dropped"; + } + leaf last-hour-packest-sent { + type uint64; + description + "Total packets exported over the last one hour"; + } + leaf last-hour-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one hour"; + } + leaf last-hour-flows-sent { + type uint64; + description + "Total flows exported over the of last one hour"; + } + leaf last-minute-packets { + type uint64; + description + "Total packets exported over the last one minute"; + } + leaf last-minute-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one minute"; + } + leaf last-minute-flows-sent { + type uint64; + description + "Total flows exported over the last one minute"; + } + leaf last-second-packets-sent { + type uint64; + description + "Total packets exported over the last one second"; + } + leaf last-second-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one second"; + } + leaf last-second-flows-sent { + type uint64; + description + "Total flows exported over the last one second"; + } + leaf is-standby { + type boolean; + description + "Exporter is in standby mode"; + } + leaf standby-packets-dropped { + type uint64; + description + "Total export packets dropped while beingin + standby mode"; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS { + description + "Flow exporter information"; + leaf name { + type string; + description + "Exporter name"; + } + leaf protocol { + type string; + description + "Export Protocol Name"; + } + leaf memory-usage { + type uint32; + description + "Memory usage"; + } + leaf-list used-by-flow-monitor { + type Flow-monitor-name; + description + "List of flow monitors that use the exporter"; + } + list collector { + description + "Statistics of all collectors"; + uses NFSVR-COLLECTOR-INFO; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY { + description + "Flow exporter information"; + list statistic { + description + "Array of flow exporters"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub2.yang new file mode 100644 index 000000000..80a23106d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper-sub2.yang @@ -0,0 +1,123 @@ +submodule Cisco-IOS-XR-ofa-netflow-oper-sub2 { + belongs-to Cisco-IOS-XR-ofa-netflow-oper { + prefix Cisco-IOS-XR-ofa-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ofa-netflow package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-08-26 { + description + "Update leaf fields"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NF-PRODUCER-STATS { + description + "Netflow Platform Producer Process statistics"; + leaf ipv4-ingress-flows { + type uint64; + description + "IPv4 ingress flows"; + } + leaf ipv4-egress-flows { + type uint64; + description + "IPv4 egress flows"; + } + leaf ipv6-ingress-flows { + type uint64; + description + "IPv6 ingress flows"; + } + leaf ipv6-egress-flows { + type uint64; + description + "IPv6 egress flows"; + } + leaf mpls-ingress-flows { + type uint64; + description + "MPLS ingress flows"; + } + leaf mpls-egress-flows { + type uint64; + description + "MPLS egress flows"; + } + leaf ipfix315-ingress-flows { + type uint64; + description + "IPFIX315 ingress flows"; + } + leaf ipfix315-egress-flows { + type uint64; + description + "IPFIX315 egress flows"; + } + leaf sflow-ingress-flows { + type uint64; + description + "sFlow ingress flows"; + } + leaf sflow-egress-flows { + type uint64; + description + "sFlow egress flows"; + } + leaf drops-no-space { + type uint64; + description + "Drops (no space)"; + } + leaf drops-others { + type uint64; + description + "Drops (others)"; + } + leaf unknown-ingress-flows { + type uint64; + description + "Unknown ingress flows"; + } + leaf unknown-egress-flows { + type uint64; + description + "Unknown egress flows"; + } + leaf last-cleared { + type string; + description + "Last time Statistics cleared in 'Mon Jan 1 12:00 + :00 2xxx' format"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper.yang new file mode 100644 index 000000000..150daa6eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-netflow-oper.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-ofa-netflow-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ofa-netflow-oper"; + prefix ofa-netflow-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ofa-netflow-oper-sub2 { + revision-date 2019-08-26; + } + include Cisco-IOS-XR-ofa-netflow-oper-sub1 { + revision-date 2019-08-26; + } + + 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 ofa-netflow package operational data. + + This module contains definitions + for the following management objects: + net-flow: NetFlow operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-08-26 { + description + "Update leaf fields"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container net-flow { + config false; + description + "NetFlow operational data"; + container statistics { + description + "Node-specific NetFlow statistics information"; + list statistic { + key "node"; + description + "NetFlow statistics information for a particular + node"; + container producer { + description + "NetFlow producer statistics"; + container statistics { + description + "Statistics information"; + uses NF-PRODUCER-STATS; + } + } + container server { + description + "NetFlow server statistics"; + container flow-exporters { + description + "Flow exporter information"; + list flow-exporter { + key "exporter-name"; + description + "Exporter information"; + container exporter { + description + "Statistics information for the exporter"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY; + } + leaf exporter-name { + type xr:Cisco-ios-xr-string; + description + "Exporter name"; + } + } + } + } + leaf node { + type xr:Node-id; + description + "Node location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper-sub1.yang new file mode 100644 index 000000000..3e596c722 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper-sub1.yang @@ -0,0 +1,134 @@ +submodule Cisco-IOS-XR-ofa-npu-pfc-oper-sub1 { + belongs-to Cisco-IOS-XR-ofa-npu-pfc-oper { + prefix Cisco-IOS-XR-ofa-npu-pfc-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ofa-npu-pfc package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-10 { + description + "Added PFC related fields, ecn, ecn-max, tc-pause-threshold, tc-ecn-max, tc-prob-per, tc-pause-threshold-unit, tc-headroom-unit, tc-ecn-unit and tc-ecn-max-unit."; + semver:module-version "1.0.0"; + } + revision 2021-08-19 { + description + "Create the initial priority-flow-control oper yang model."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OFA-PFC-TC-CFG { + description + "OFA PFC TC CFG"; + leaf in-use { + type boolean; + description + "Flag to indicate if PFC is configured for the tc"; + } + leaf tc-pause-threshold { + type uint32; + description + "Pause-threshold configured"; + } + leaf tc-headroom { + type uint32; + description + "Headroom configured"; + } + leaf tc-ecn { + type uint32; + description + "ECN configured"; + } + leaf tc-ecn-max { + type uint32; + description + "ECN Max configured"; + } + leaf tc-prob-per { + type uint32; + description + "ECN Prob Per configured"; + } + leaf tc-pause-threshold-unit { + type string { + length "0..6"; + } + description + "Pause-threshold Unit"; + } + leaf tc-headroom-unit { + type string { + length "0..6"; + } + description + "Headroom Unit"; + } + leaf tc-ecn-unit { + type string { + length "0..6"; + } + description + "Ecn Unit"; + } + leaf tc-ecn-max-unit { + type string { + length "0..6"; + } + description + "Ecn Max Unit"; + } + } + + grouping OFA-PFC-CFG { + description + "OFA PFC CFG"; + leaf in-use { + type boolean; + description + "Flag to indicate if PFC is configured for the + line-card"; + } + leaf pfc-mode { + type string { + length "0..16"; + } + description + "pfc mode configured"; + } + list tc-cfg { + max-elements "8"; + description + "Keeps a record of the PFC configuration for the + line-card"; + uses OFA-PFC-TC-CFG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper.yang new file mode 100644 index 000000000..fc1dd0b77 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-pfc-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-ofa-npu-pfc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ofa-npu-pfc-oper"; + prefix ofa-npu-pfc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ofa-npu-pfc-oper-sub1 { + revision-date 2021-10-10; + } + + 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 ofa-npu-pfc package operational data. + + This module contains definitions + for the following management objects: + ofapfc: Stats Data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-10 { + description + "Added PFC related fields, ecn, ecn-max, tc-pause-threshold, tc-ecn-max, tc-prob-per, tc-pause-threshold-unit, tc-headroom-unit, tc-ecn-unit and tc-ecn-max-unit."; + semver:module-version "1.0.0"; + } + revision 2021-08-19 { + description + "Create the initial priority-flow-control oper yang model."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ofapfc { + config false; + description + "Stats Data"; + container pfc { + description + "PFC data"; + container nodes { + description + "PFC data for available nodes"; + list node { + key "node-name"; + description + "PFC operational data for a particular node"; + container display { + description + "pfc data"; + uses OFA-PFC-CFG; + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper-sub1.yang new file mode 100644 index 000000000..ff2694982 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper-sub1.yang @@ -0,0 +1,123 @@ +submodule Cisco-IOS-XR-ofa-npu-qos-oper-sub1 { + belongs-to Cisco-IOS-XR-ofa-npu-qos-oper { + prefix Cisco-IOS-XR-ofa-npu-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ofa-npu-qos package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-10 { + description + "Create the initial npu-qos oper yang model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ofa-npu-qos-show-hp-level { + type enumeration { + enum "priority-level1" { + description + "Priority queue level 1"; + } + enum "priority-level2" { + description + "Priority queue level 2"; + } + enum "priority-level3" { + description + "Priority queue level 3"; + } + enum "priority-level4" { + description + "Priority queue level 4"; + } + enum "priority-level5" { + description + "Priority queue level 5"; + } + enum "priority-level6" { + description + "Priority queue level 6"; + } + enum "priority-level7" { + description + "Priority queue level 7"; + } + enum "priority-level8" { + description + "Priority queue level 8"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "Priority level"; + } + + grouping OFA-NPU-QOS-Q-INFO-ST { + description + "OFA NPU QOS Q INFO ST"; + leaf priority-level { + type Ofa-npu-qos-show-hp-level; + description + "Priority level"; + } + leaf config-max-rate { + type uint32; + units "kbit/s"; + description + "Configured maximum rate kbps"; + } + } + + grouping OFA-NPU-QOS-SHOW-ST { + description + "OFA NPU QOS SHOW ST"; + leaf npu-id { + type uint32; + description + "NPU ID"; + } + leaf voq-base-address { + type uint32; + description + "VOQ base address"; + } + list q-config { + key "priority-level"; + max-elements "8"; + description + "Port configuration"; + uses OFA-NPU-QOS-Q-INFO-ST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper.yang new file mode 100644 index 000000000..482c170fe --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-qos-oper.yang @@ -0,0 +1,90 @@ +module Cisco-IOS-XR-ofa-npu-qos-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ofa-npu-qos-oper"; + prefix ofa-npu-qos-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ofa-npu-qos-oper-sub1 { + revision-date 2022-10-10; + } + + 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 ofa-npu-qos package operational data. + + This module contains definitions + for the following management objects: + npu-qos: NPU QOS data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-10 { + description + "Create the initial npu-qos oper yang model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container npu-qos { + config false; + description + "NPU QOS data"; + container nodes { + description + "NPU QOS data for available nodes"; + list node { + key "node-name"; + description + "NPU QOS operational data for a particular node"; + container npu-numbers { + description + "Punt interface type"; + list npu-number { + key "npu-id"; + description + "QOS data for a particular NPU"; + container display { + description + "NPU specific QOS data"; + uses OFA-NPU-QOS-SHOW-ST; + } + leaf npu-id { + type uint32; + description + "Npu number"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang new file mode 100644 index 000000000..93905ed02 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper-sub1.yang @@ -0,0 +1,655 @@ +submodule Cisco-IOS-XR-ofa-npu-stats-oper-sub1 { + belongs-to Cisco-IOS-XR-ofa-npu-stats-oper { + prefix Cisco-IOS-XR-ofa-npu-stats-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ofa-npu-stats package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-09 { + description + "Added edge interface show cmd changes"; + semver:module-version "3.1.0"; + } + revision 2021-02-05 { + description + "Added src-interface show cmd changes"; + semver:module-version "3.0.0"; + } + revision 2020-10-09 { + description + "Added task-id"; + semver:module-version "2.0.0"; + } + revision 2020-06-25 { + description + "Updated task-name"; + semver:module-version "1.2.0"; + } + revision 2019-12-14 { + description + "Updated date for npu stats model"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dpa-qosea-voq-port { + type enumeration { + enum "etm-local" { + value 0; + description + "etm local"; + } + enum "etm-global" { + value 1; + description + "etm global"; + } + enum "etm-remote" { + value 2; + description + "etm remote"; + } + enum "local" { + value 3; + description + "local"; + } + enum "remote" { + value 4; + description + "remote"; + } + } + description + "Dpa qosea voq port"; + } + + grouping DPA-TRAP-STATS { + description + "DPA TRAP STATS"; + leaf trap-strength { + type uint32; + description + "Trap Strength of the trap"; + } + leaf priority { + type uint32; + description + "Priority of the trap"; + } + leaf trap-id-xr { + type uint32; + description + "Id of the trap"; + } + leaf gport { + type uint32; + description + "Gport of the trap"; + } + leaf fec-id { + type uint32; + description + "Fec id of the trap"; + } + leaf policer-id { + type uint32; + description + "Id of the policer on the trap"; + } + leaf stats-id { + type uint32; + description + "Stats Id of the trap"; + } + leaf encap-id { + type uint32; + description + "Encap Id of the trap"; + } + leaf mc-group { + type uint32; + description + "McGroup of the trap"; + } + leaf trap-string { + type string; + description + "Name String of the trap"; + } + leaf id { + type uint32; + description + "Id for internal use"; + } + leaf offset { + type uint64; + description + "Offset for internal use"; + } + leaf npu-id { + type uint64; + description + "NpuId on which trap is enabled"; + } + leaf trap-action { + type string; + description + "Action taken on the Trap"; + } + leaf punt-vo-q { + type uint32; + description + "Punt VoQ for the punted trap packet"; + } + leaf punt-vlan { + type uint16; + description + "Punt VLAN used for the trap"; + } + leaf punt-tc { + type uint8; + description + "Traffic class on the Punt VoQ"; + } + leaf cfg-rate { + type uint32; + description + "User configured rate in pps"; + } + leaf cir-hw-rate { + type uint32; + description + "Programmed HW Cir in pps"; + } + leaf rate-units { + type string; + description + "Policer level at NPU or IFG"; + } + leaf avg-pkt-size { + type uint32; + units "bit/s"; + description + "Avg packet size used for the trap with bps meter"; + } + leaf packet-dropped { + type uint64; + description + "Number of packets dropped after hitting the trap"; + } + leaf packet-accepted { + type uint64; + description + "Number of packets accepted after hitting the + trap"; + } + leaf punt-dest { + type uint32; + description + "Punt destination of this trap"; + } + leaf result { + type uint32; + description + "Error from the call"; + } + } + + grouping DPA-VOQ-INGRESS-PACKET-STATISTICS { + description + "DPA VOQ INGRESS PACKET STATISTICS"; + leaf received-bytes { + type uint64; + units "byte"; + description + "Bytes Received on the port"; + } + leaf received-packets { + type uint64; + description + "Packets Received on the port"; + } + leaf dropped-bytes { + type uint64; + units "byte"; + description + "Bytes Dropped on the port"; + } + leaf dropped-packets { + type uint64; + description + "Packets Dropeed on the port"; + } + leaf yellow-received-bytes { + type uint64; + units "byte"; + description + "YBytes Received on the port"; + } + leaf yellow-received-packets { + type uint64; + description + "YPackets Received on the port"; + } + leaf yellow-dropped-bytes { + type uint64; + units "byte"; + description + "YBytes Dropped on the port"; + } + leaf yellow-dropped-packets { + type uint64; + description + "YPackets Dropeed on the port"; + } + leaf red-received-bytes { + type uint64; + units "byte"; + description + "RBytes Received on the port"; + } + leaf red-received-packets { + type uint64; + description + "RPackets Received on the port"; + } + leaf red-dropped-bytes { + type uint64; + units "byte"; + description + "RBytes Dropped on the port"; + } + leaf red-dropped-packets { + type uint64; + description + "RPackets Dropeed on the port"; + } + } + + grouping DPA-SRC-INTF-PORT-INFO { + description + "DPA SRC INTF PORT INFO"; + leaf npu-num { + type uint8; + description + "NPU of port"; + } + leaf slice { + type uint8; + description + "NPU slice of port"; + } + leaf port-num { + type uint8; + description + "Port Number of port"; + } + leaf if-handle { + type uint32; + description + "IfHandle of port"; + } + leaf sys-port { + type uint32; + description + "System port of port"; + } + leaf pp-port { + type uint32; + description + "PP Port number of port"; + } + leaf port-speed { + type uint32; + description + "Port speed of port"; + } + leaf connector-id { + type uint32; + description + "Connector id of port"; + } + leaf is-local-port { + type boolean; + description + "Flag to indicate if port is local to the node"; + } + } + + grouping DPA-VOQ-INTF-PORT { + description + "DPA VOQ INTF PORT"; + container src-intf { + description + "src intf info"; + uses DPA-SRC-INTF-PORT-INFO; + } + leaf in-use { + type boolean; + description + "Flag to indicate if port is in use"; + } + leaf rack-num { + type uint8; + description + "Rack of port"; + } + leaf slot-num { + type uint8; + description + "Slot of port"; + } + leaf npu-num { + type uint8; + description + "NPU of port"; + } + leaf slice { + type uint8; + description + "NPU slice of port"; + } + leaf port-num { + type uint8; + description + "Port Number of port"; + } + leaf if-handle { + type uint32; + description + "IfHandle of port"; + } + leaf sys-port { + type uint32; + description + "System port of port"; + } + leaf pp-port { + type uint32; + description + "PP Port number of port"; + } + leaf port-speed { + type uint32; + description + "Port speed of port"; + } + leaf voq-base { + type uint32; + description + "Voq Base number of port"; + } + leaf connector-id { + type uint32; + description + "Connector id of port"; + } + leaf is-local-port { + type boolean; + description + "Flag to indicate if port is local to the node"; + } + leaf counter-grp-size { + type uint8; + description + "Number of VoQ sharing counter"; + } + leaf voq-mode { + type uint8; + description + "4 or 8 VoQ Mode"; + } + leaf internal-intf { + type boolean; + description + "Internal interfaces"; + } + leaf all-src-display { + type boolean; + description + "display ALL in fair-voq mode when used without + src-intf"; + } + leaf fair-voq-mode { + type uint8; + description + "Fair-4 or Fair-8 Fair VoQ Mode"; + } + leaf voq-port-type { + type Dpa-qosea-voq-port; + description + "Voq port type on Edge or Core mode"; + } + list voq-stat { + max-elements "8"; + description + "Keeps a record of the received and dropped + packets and bytes on the port"; + uses DPA-VOQ-INGRESS-PACKET-STATISTICS; + } + } + + grouping NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELD-INFO { + description + "NPU statistics field information"; + leaf is-overflow { + type boolean; + description + "Flag to indicate overflow"; + } + leaf field-name { + type string { + length "0..81"; + } + description + "Field name"; + } + leaf field-value { + type uint64; + description + "Field value"; + } + } + + grouping NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELDS { + description + "NPU statistics fields"; + leaf block-name { + type string { + length "0..41"; + } + description + "Block name"; + } + leaf num-fields { + type uint8; + description + "Number of fields"; + } + list field-info { + description + "Field information"; + uses NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELD-INFO; + } + } + + grouping NPU-EDM-DEVICE-STATS-ASIC-BRIEF-INFO { + description + "NPU Brief statistics information"; + leaf num-blocks { + type uint8; + description + "Number of blocks"; + } + list block-info { + description + "Block information"; + uses NPU-EDM-DEVICE-STATS-ASIC-BRIEF-FIELDS; + } + } + + grouping FIA-EDM-STATS-BRIEF-INFO { + description + "ASIC statistics information"; + container npu-statistics { + description + "NPU Statistics"; + uses NPU-EDM-DEVICE-STATS-ASIC-BRIEF-INFO; + } + leaf valid { + type boolean; + description + "Flag to indicate if data is valid"; + } + leaf rack-number { + type uint32; + description + "Rack number"; + } + leaf slot-number { + type uint32; + description + "Slot number"; + } + leaf asic-instance { + type uint32; + description + "ASIC instance"; + } + leaf chip-version { + type uint16; + description + "Chip version"; + } + leaf counters-update-timestamp { + type uint64; + description + "Counters update timestamp in msec"; + } + } + + grouping FIA-EDM-DEVICE-STATS-FIELD-INFO { + description + "Detailed ASIC statistics field information"; + leaf field-name { + type string; + description + "Field name"; + } + leaf field-value { + type uint64; + description + "Field value"; + } + leaf is-overflow { + type boolean; + description + "Flag to indicate overflow"; + } + } + + grouping FIA-EDM-DEVICE-STATS-BLK-INFO { + description + "Detailed ASIC statistics block information"; + leaf block-name { + type string; + description + "Block name"; + } + leaf num-fields { + type uint32; + description + "Number of fields"; + } + list field-info { + description + "Field information"; + uses FIA-EDM-DEVICE-STATS-FIELD-INFO; + } + } + + grouping FIA-EDM-DEVICE-STATS-ASIC-INFO { + description + "Detailed ASIC statistics information"; + leaf num-blocks { + type uint32; + description + "Number of blocks"; + } + list block-info { + description + "Block information"; + uses FIA-EDM-DEVICE-STATS-BLK-INFO; + } + } + + grouping FIA-EDM-STATS-INFO { + description + "Detailed ASIC statistics"; + container statistics { + description + "Statistics"; + uses FIA-EDM-DEVICE-STATS-ASIC-INFO; + } + leaf valid { + type boolean; + description + "Flag to indicate if data is valid"; + } + leaf rack-number { + type uint32; + description + "Rack number"; + } + leaf slot-number { + type uint32; + description + "Slot number"; + } + leaf asic-instance { + type uint32; + description + "ASIC instance"; + } + leaf chip-version { + type uint16; + description + "Chip version"; + } + leaf counters-update-timestamp { + type uint64; + description + "Counters update timestamp in msec"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper.yang new file mode 100644 index 000000000..14bf94595 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ofa-npu-stats-oper.yang @@ -0,0 +1,273 @@ +module Cisco-IOS-XR-ofa-npu-stats-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ofa-npu-stats-oper"; + prefix ofa-npu-stats-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ofa-npu-stats-oper-sub1 { + revision-date 2022-10-09; + } + + 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 ofa-npu-stats package operational data. + + This module contains definitions + for the following management objects: + ofa: Stats Data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-09 { + description + "Added edge interface show cmd changes"; + semver:module-version "3.1.0"; + } + revision 2021-02-05 { + description + "Added src-interface show cmd changes"; + semver:module-version "3.0.0"; + } + revision 2020-10-09 { + description + "Added task-id"; + semver:module-version "2.0.0"; + } + revision 2020-06-25 { + description + "Updated task-name"; + semver:module-version "1.2.0"; + } + revision 2019-12-14 { + description + "Updated date for npu stats model"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Max-trap-s { + type uint32 { + range "0..4294967295"; + } + description + "Max trap s"; + } + + typedef Max-lc-intf-hand-les { + type uint32 { + range "0..4294967295"; + } + description + "Max lc intf hand les"; + } + + container ofa { + config false; + description + "Stats Data"; + container stats { + description + "Voq or Trap Data"; + container nodes { + description + "DPA data for available nodes"; + list node { + key "node-name"; + description + "DPA operational data for a particular node"; + container asic-statistics { + description + "ASIC statistics table"; + container asic-statistics-detail-for-npu-ids { + description + "Detailed ASIC statistics"; + list asic-statistics-detail-for-npu-id { + key "npu-id"; + description + "Detailed ASIC statistics for a particular + NPU"; + leaf npu-id { + type uint32; + description + "NPU number"; + } + uses FIA-EDM-STATS-INFO; + } + } + container asic-statistics-for-npu-ids { + description + "ASIC statistics"; + list asic-statistics-for-npu-id { + key "npu-id"; + description + "ASIC statistics for a particular NPU"; + leaf npu-id { + type uint32; + description + "NPU number"; + } + uses FIA-EDM-STATS-BRIEF-INFO; + } + } + } + container npu-numbers { + description + "Ingress Stats"; + list npu-number { + key "npu-id"; + description + "Stats for a particular npu"; + container display { + description + "show npu specific voq or trap stats"; + container dest-interface-handles { + description + "Voq stats grouped by interface handle"; + list dest-interface-handle { + key "interface-handle"; + description + "Voq stats for a particular interface + handle"; + container src-interface-handles { + description + "Voq stats grouped by src interface + handle"; + list src-interface-handle { + key "interface-handle"; + description + "Voq stats for a particular src + interface handle"; + leaf interface-handle { + type Max-lc-intf-hand-les; + description + "Src Interface Handle"; + } + uses DPA-VOQ-INTF-PORT; + } + } + leaf interface-handle { + type Max-lc-intf-hand-les; + description + "Interface Handle"; + } + } + } + container trap-ids { + description + "Trap stats for a particular npu"; + list trap-id { + key "trap-id"; + description + "Filter by specific trap id"; + leaf trap-id { + type Max-trap-s; + description + "Trap ID"; + } + uses DPA-TRAP-STATS; + } + } + container fair-voq-base-numbers { + description + "Voq stats grouped by voq base numbers"; + list fair-voq-base-number { + key "base-number"; + description + "Voq Base Number for a particular voq"; + container src-slice-numbers { + description + "show npu specific src slice stats"; + list src-slice-number { + key "src-slice-id"; + description + "Stats for a particular voq on given src + slice"; + leaf src-slice-id { + type uint32; + description + "Src Slice number"; + } + uses DPA-VOQ-INTF-PORT; + } + } + leaf base-number { + type Max-lc-intf-hand-les; + description + "Interface handle"; + } + } + } + container interface-handles { + description + "Voq stats grouped by interface handle"; + list interface-handle { + key "interface-handle"; + description + "Voq stats for a particular interface + handle"; + leaf interface-handle { + type Max-lc-intf-hand-les; + description + "Interface Handle"; + } + uses DPA-VOQ-INTF-PORT; + } + } + container base-numbers { + description + "Voq stats grouped by voq base numbers"; + list base-number { + key "base-number"; + description + "Voq Base Number for a particular voq"; + leaf base-number { + type Max-lc-intf-hand-les; + description + "Interface handle"; + } + uses DPA-VOQ-INTF-PORT; + } + } + } + leaf npu-id { + type uint32; + description + "Npu number"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-olc-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-act.yang new file mode 100644 index 000000000..c9184be5c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-act.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-olc-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-olc-act"; + prefix olc-act; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 olc-act package configuration. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-10 { + description + "Added BFR Initialize command"; + } + revision 2022-06-22 { + description + "Added Gain Estimator commands"; + } + revision 2021-11-19 { + description + "First revision, establish semantic version baseline"; + semver:module-version "1.0.0"; + } + + rpc start-raman-tuning { + description + "Start Raman Tuning"; + input { + leaf controller { + type string; + description + "Controller name in Ots R/S/I/P format"; + } + } + csc:xr-task "root-lr"; + csc:cli-command "olc start-raman-tuning controller "; + } + rpc start-gain-estimation { + description + "Start gain estimator"; + input { + leaf controller { + type string; + description + "Controller name in Ots R/S/I/P format"; + } + } + csc:xr-task "root-lr"; + csc:cli-command "olc start-gain-estimation controller "; + } + rpc bfr-initialize { + description + "Initialize Band Failure and Recovery State Machine"; + input { + leaf controller { + type string; + description + "Controller name in Ots R/S/I/P format"; + } + } + csc:xr-task "root-lr"; + csc:cli-command "olc bfr-initialize controller "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-olc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-cfg.yang new file mode 100644 index 000000000..b759aab75 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-cfg.yang @@ -0,0 +1,431 @@ +module Cisco-IOS-XR-olc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-olc-cfg"; + prefix olc-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 olc package configuration. + + This module contains definitions + for the following management objects: + olc: Optical Application Configurations + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-21 { + description + "APC Dual Band PSD configuration CLI"; + semver:module-version "1.0.0"; + } + revision 2022-06-01 { + description + "C+L band partner band IPV4 configurations CLI"; + } + revision 2022-05-31 { + description + "Automatic link config CLI addition."; + } + revision 2022-02-28 { + description + "Enhancement to fiber_type configuration by adding new fiber type."; + } + revision 2022-01-19 { + description + "Enhancement to Span length config tx direction CLI addition."; + } + revision 2022-01-17 { + description + "Enhancement to Link tuner config CLI addition."; + } + revision 2021-12-07 { + description + "Link tuner config CLI addition."; + } + revision 2021-01-19 { + description + "APC config CLI addition."; + } + revision 2020-11-04 { + description + "Initial Revision."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cfg-state { + type enumeration { + enum "none" { + value 0; + description + "NONE"; + } + enum "disable" { + value 1; + description + "DISABLE"; + } + enum "enable" { + value 2; + description + "ENABLE"; + } + } + description + "Cfg state"; + } + + typedef Fiber { + type enumeration { + enum "smf" { + value 1; + description + "SMF"; + } + enum "smf-28e" { + value 2; + description + "SMF 28E"; + } + enum "tw-rs" { + value 3; + description + "TW RS"; + } + enum "tw-reach" { + value 4; + description + "TW Reach"; + } + enum "e-leaf" { + value 5; + description + "E LEAF"; + } + enum "free-light" { + value 6; + description + "FREE LIGHT"; + } + enum "metro-core" { + value 7; + description + "METRO CORE"; + } + enum "tera-light" { + value 8; + description + "TERA LIGHT"; + } + enum "tw-minus" { + value 9; + description + "TW minus"; + } + enum "tw-plus" { + value 10; + description + "TW plus"; + } + enum "ull-smf28" { + value 11; + description + "ULL SMF28"; + } + } + description + "Fiber"; + } + + grouping APC-LOCAL-DIR-DISABLE { + description + "Common node of apc-local-dir-tx, apc-local-dir-rx"; + leaf apc-local-dir-disable { + type empty; + description + "Configuration to disable local APC regulation. + APC is enabled on by default."; + } + } + + container olc { + description + "Optical Application Configurations"; + container controller-rsips { + description + "Global scope configurations"; + list controller-rsip { + key "controller"; + description + "Controller specific configurations"; + container apc { + description + "APC configuration"; + container dual-band-psds { + description + "Dual Band Power spectral density + configuration"; + list dual-band-psd { + key "psd-index"; + description + "Dual Band PSD Configuration"; + leaf psd-index { + type uint32 { + range "1..33"; + } + description + "PSD Index"; + } + leaf psd-value { + type int32 { + range "-300..230"; + } + mandatory true; + description + "Value in increments of 0.1 dBm per 12.5 GHz + , between -30.0 to 23.0."; + } + } + } + container psds { + description + "Power spectral density configuration"; + list psd { + key "psd-index"; + description + "PSD Configuration"; + leaf psd-index { + type uint32 { + range "1..33"; + } + description + "PSD Index"; + } + leaf psd-value { + type int32 { + range "-300..230"; + } + mandatory true; + description + "Value in increments of 0.1 dBm per 12.5 GHz + , between -30.0 to 23.0."; + } + } + } + leaf drop-psd { + type int32 { + range "-300..230"; + } + description + "Configuration for drop psd in increments of 0 + .1 dBm per 12.5 GHz, between -30.0 to 23.0."; + } + leaf apc-pause { + type empty; + description + "Pause APC on the domain"; + } + leaf apc-cfg-state { + type Cfg-state; + default "none"; + description + "Change config state of APC."; + } + leaf psd-min { + type int32 { + range "-400..230"; + } + description + "Configuration for minimum psd in increments + of 0.1 dBm per 12.5 GHz, between -40.0 to 23 + .0."; + } + } + container apc-local { + description + "APC agent per direction disable configuration"; + container apc-local-dir-tx { + description + "Disable APC agent in TX direction"; + uses APC-LOCAL-DIR-DISABLE; + } + container apc-local-dir-rx { + description + "Disable APC agent in RX direction"; + uses APC-LOCAL-DIR-DISABLE; + } + } + container partner-band-config { + description + "Partner band port configuration"; + container partner-band-ipv4 { + description + "Partner band port IPv4 address configuration"; + container partner-port-ipv4-info { + presence "enable partner-port-ipv4-info"; + description + "IPv4 address of partner node and OTS + controller port information"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the partner band"; + } + leaf controller { + type xr:Interface-name; + description + "Controller RSIP"; + } + } + } + container partner-band-local { + description + "Partner band port IPv4 address configuration"; + leaf partner-port-local-info { + type xr:Interface-name; + description + "IPv4 address of partner node and OTS + controller port information"; + } + } + } + container raman { + description + "Raman configuration"; + leaf raman-tune-target-gain { + type uint32 { + range "0..300"; + } + description + "Gain Value in increments of 0.1 dB, between 0 + .0 and 30.0 dB"; + } + leaf raman-tune-cfg-state { + type Cfg-state; + default "none"; + description + "Change config state of Automatic Raman Tuning"; + } + } + container link-tuner { + description + "Link tuner configuration"; + leaf spectrum-density { + type uint32 { + range "1..100"; + } + default "81"; + description + "Spectrum density configuration for the given + controller"; + } + leaf link-tuner-cfg-state { + type Cfg-state; + default "none"; + description + "Change config state of Link Tuner"; + } + } + container span-loss { + description + "Span loss configuration"; + leaf max-threshold { + type uint32 { + range "0..420"; + } + description + "Maximum threshold configuration for the given + controller"; + } + leaf min-threshold { + type uint32 { + range "0..420"; + } + description + "Minimum threshold configuration for the given + controller"; + } + } + container gain-estimator { + description + "Gain estimator configuration"; + leaf gain-estimator-cfg-state { + type Cfg-state; + default "none"; + description + "Change config state of Gain Estimator"; + } + } + leaf rx-connector-loss { + type string { + length "1..6"; + } + description + "Rx connector loss in dB"; + } + leaf tx-connector-loss { + type string { + length "1..6"; + } + description + "Tx connector loss in dB"; + } + leaf fiber-type { + type Fiber; + default "smf"; + description + "Fiber Type for given controller"; + } + leaf span-length { + type uint32 { + range "1..2000"; + } + description + "Span length in 0.1 km"; + } + leaf controller { + type xr:Interface-name; + description + "Controller RSIP"; + } + } + } + container global-config { + description + "Global scope configurations"; + leaf auto-link-bringup { + type empty; + description + "Enable Automatic link bringup."; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper-sub1.yang new file mode 100644 index 000000000..a280aca51 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper-sub1.yang @@ -0,0 +1,1239 @@ +submodule Cisco-IOS-XR-olc-oper-sub1 { + belongs-to Cisco-IOS-XR-olc-oper { + prefix Cisco-IOS-XR-olc-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR olc package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-20 { + description + "Comments added for all the fields in bag"; + semver:module-version "1.0.0"; + } + revision 2022-10-10 { + description + "raman tune status details CLI addition"; + } + revision 2022-10-06 { + description + "Enhanced APC domain CLI for partial topology support"; + } + revision 2022-06-30 { + description + "C+L band status CLI addition"; + } + revision 2022-06-03 { + description + "L Band Path Loss information."; + } + revision 2022-04-18 { + description + "Link tuner bag modification include PSD index."; + } + revision 2021-12-07 { + description + "Link tuner CLI modification."; + } + revision 2021-03-26 { + description + "Span-loss CLI modification."; + } + revision 2021-01-19 { + description + "APC oper CLI addition."; + } + revision 2020-11-05 { + description + "Initial Revision."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Link-tuner-status { + type enumeration { + enum "blocked" { + value 0; + description + "Link Tuner current state is Blocked"; + } + enum "disabled" { + value 1; + description + "Link Tuner current state is Disabled"; + } + enum "operational" { + value 2; + description + "Link Tuner current state is Operational"; + } + } + description + "Link tuner status"; + } + + typedef Gain-estimator-status { + type enumeration { + enum "blocked" { + value 0; + description + "Gain Estimator current state is Blocked"; + } + enum "disabled" { + value 1; + description + "Gain Estimator current state is Disabled"; + } + enum "operational" { + value 2; + description + "Gain Estimator current state is Operational"; + } + enum "idle" { + value 3; + description + "Gain Estimator current state is Idle"; + } + } + description + "Gain estimator status"; + } + + typedef Apc-target-psd-source { + type enumeration { + enum "link-tuner" { + value 0; + description + "Target PSD Source is Link Tuner"; + } + enum "configuration" { + value 1; + description + "Target PSD Source is Configuration"; + } + } + description + "Apc target psd source"; + } + + typedef Apc-agent-source-port { + type enumeration { + enum "ase" { + value 0; + description + "Source static noise loaded channel"; + } + enum "och" { + value 1; + description + "Source optical channel"; + } + } + description + "Apc agent source port"; + } + + typedef Apc-agent-direction { + type enumeration { + enum "tx" { + value 0; + description + "APC agent in TX direction"; + } + enum "rx" { + value 1; + description + "APC agent in RX direction"; + } + } + description + "Apc agent direction"; + } + + typedef Apc-block-reason { + type enumeration { + enum "hw-fail" { + value 1; + description + "Node reporting HW failure"; + } + enum "edfa-shutdown" { + value 2; + description + "EDFA is shutdown on node"; + } + enum "apr-enabled" { + value 4; + description + "APR is enabled on node"; + } + enum "user-disabled" { + value 8; + description + "APC disabled by user on node"; + } + enum "edfa-apr" { + value 16; + description + "EDFA is in APR on node"; + } + enum "gain-estimation-in-progress" { + value 32; + description + "Gain estimation in progress on node"; + } + enum "band-failure" { + value 64; + description + "Band Failure"; + } + enum "partial-topology" { + value 128; + description + "Partial topology"; + } + enum "node-blocked" { + value 256; + description + "Node blocked in the domain"; + } + } + description + "Apc block reason"; + } + + typedef Apc-internal-state { + type enumeration { + enum "blocked" { + value 0; + description + "APC node is Blocked"; + } + enum "idle" { + value 1; + description + "APC node in Idle state"; + } + enum "oor" { + value 2; + description + "APC node in Out Of Range state"; + } + enum "discrepancy" { + value 3; + description + "APC node reporting Discrepancy "; + } + enum "correcting" { + value 4; + description + "APC node in Correcting state"; + } + enum "chan-startup" { + value 5; + description + "APC node in starting up channel"; + } + } + description + "Apc internal state"; + } + + typedef Apc-status { + type enumeration { + enum "disabled" { + value 0; + description + "APC current state is Disabled"; + } + enum "idle" { + value 1; + description + "APC current state is Idle"; + } + enum "blocked" { + value 2; + description + "APC current state is Blocked"; + } + enum "working" { + value 3; + description + "APC current state is Working"; + } + enum "enable" { + value 4; + description + "APC current state is Enabled"; + } + enum "paused" { + value 5; + description + "APC current state is Paused"; + } + } + description + "Apc status"; + } + + typedef Olc-bs-status { + type enumeration { + enum "status-unknown" { + value 0; + description + "BFR Agent Status is Unknown"; + } + enum "status-running" { + value 1; + description + "BFR Agent Status is Running"; + } + enum "status-paused" { + value 2; + description + "BFR Agent Status is Paused"; + } + } + description + "Olc bs status"; + } + + typedef Olc-bs-parter-band-conn-state { + type enumeration { + enum "conn-unknown" { + value 0; + description + "Unknown partner band connection state"; + } + enum "conn-up" { + value 1; + description + "Partner band connection UP"; + } + enum "conn-down" { + value 2; + description + "Partner band connection DOWN"; + } + } + description + "Olc bs parter band conn state"; + } + + typedef Olc-bs-psd { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Configured PSD for Single Band"; + } + enum "single-band" { + value 1; + description + "Configured PSD for Single Band"; + } + enum "dual-band" { + value 2; + description + "Configured PSD for Dual Band"; + } + } + description + "Olc bs psd"; + } + + typedef Olc-bs-band-status { + type enumeration { + enum "unknown" { + value 0; + description + "Band in Unknown status"; + } + enum "active" { + value 1; + description + "Band in Active status"; + } + enum "failed" { + value 2; + description + "Band in Failed status"; + } + enum "recovering" { + value 3; + description + "Band in Recovering status"; + } + } + description + "Olc bs band status"; + } + + typedef Olc-bs-band { + type enumeration { + enum "none" { + value 0; + description + "None Band type defined"; + } + enum "c-band" { + value 1; + description + "C-Band type"; + } + enum "l-band" { + value 2; + description + "L-Band type"; + } + } + description + "Olc bs band"; + } + + typedef String1 { + type string; + description + "String1"; + } + + typedef Raman-tuning-fail-reason { + type enumeration { + enum "measurement-failed" { + value 0; + description + "Raman-Tuning has failed because of failure in + measurement collection"; + } + enum "calculation-failed" { + value 1; + description + "Raman-Tuning has failed because of failure in + calculation"; + } + enum "optimization-failed" { + value 2; + description + "Raman-Tuning has failed because of failure in + optimization"; + } + } + description + "Raman tuning fail reason"; + } + + typedef Raman-tuning-block-reason { + type enumeration { + enum "fibre-cut-present" { + value 0; + description + "Raman-Tuning is blocked due to fibre cut + presence"; + } + enum "peer-node-comm-down" { + value 1; + description + "Raman-Tuning is blocked due to no communication + with peer node"; + } + enum "can-not-enable-raman-pumps" { + value 2; + description + "Raman-Tuning is blocked because cannot enable + Raman pumps"; + } + enum "blocked-due-to-multi-cond-itions" { + value 3; + description + "Raman-Tuning is blocked due to multiple + conditions"; + } + } + description + "Raman tuning block reason"; + } + + typedef Raman-tuning-status { + type enumeration { + enum "startup" { + value 0; + description + "Raman-Tuning current state is in startup"; + } + enum "disabled" { + value 1; + description + "Raman-Tuning current state is Disabled"; + } + enum "blocked" { + value 2; + description + "Raman-Tuning current state is Blocked"; + } + enum "failed" { + value 3; + description + "Raman-Tuning current state is Failed"; + } + enum "measurement-in-prog" { + value 4; + description + "Raman-Tuning current state is measurement in + progress"; + } + enum "calculation-in-prog" { + value 5; + description + "Raman-Tuning current state is calculation in + progress"; + } + enum "optimization-in-prog" { + value 6; + description + "Raman-Tuning current state is optimization in + progress"; + } + enum "tuned" { + value 7; + description + "Raman-Tuning current state is Tuned"; + } + } + description + "Raman tuning status"; + } + + grouping OLC-CONTROLLER-SPAN-LOSS { + description + "OLC CONTROLLER SPAN LOSS"; + leaf-list neighbour-rid { + type inet:ipv4-address; + description + "RID of the neighboring node"; + } + leaf-list rx-span-loss { + type String1; + description + "RX span loss (dB)"; + } + leaf-list apparent-rx-span-loss { + type String1; + description + "Apparent RX span loss (dB)"; + } + leaf-list tx-span-loss { + type String1; + description + "TX span loss (dB)"; + } + leaf-list apparent-tx-span-loss { + type String1; + description + "Apparent TX span loss (dB)"; + } + leaf-list dfb-rx-span-loss-with-pumps-off { + type String1; + description + "DFB RX span loss (dB)"; + } + leaf-list ts-dfb-rx-span-loss-with-pumps-off { + type String1; + description + "Timestamp for when DFB RX span loss was computed + previously"; + } + leaf-list dfb-tx-span-loss-with-pumps-off { + type String1; + description + "DFB TX span loss (dB)"; + } + leaf-list ts-dfb-tx-span-loss-with-pumps-off { + type String1; + description + "Timestamp for when DFB TX span loss was computed + previously"; + } + leaf-list est-rx-span-loss { + type String1; + description + "Estimated RX span loss (dB)"; + } + leaf-list est-tx-span-loss { + type String1; + description + "Estimated TX span loss (dB)"; + } + } + + grouping OLC-LINK-TUNER-PSD-INFO { + description + "OLC LINK TUNER PSD INFO"; + leaf setpoint { + type uint32; + description + "PSD setpoint (1-33)"; + } + leaf computed-optimum-psd { + type string { + length "0..10"; + } + description + "Optimum PSD computed for given setpoint (dB)"; + } + } + + grouping OLC-LINK-TUNER-STATUS-SUMMARY { + description + "OLC LINK TUNER STATUS SUMMARY"; + leaf status { + type Link-tuner-status; + description + "Link Tuner current status"; + } + leaf last-psd-cmpt-time-stamp { + type string { + length "0..40"; + } + description + "Timestamp for last PSD computation by Link Tuner"; + } + list psd-info { + description + "PSD information of Link Tuner"; + uses OLC-LINK-TUNER-PSD-INFO; + } + } + + grouping OLC-LINK-TUNER-STATUS-DETAIL { + description + "OLC LINK TUNER STATUS DETAIL"; + container link-tuner-info { + description + "Link tuner summary information"; + uses OLC-LINK-TUNER-STATUS-SUMMARY; + } + leaf computed-total-noise { + type string { + length "0..16"; + } + description + "Total computed noise by Link Tuner (dB)"; + } + } + + grouping OLC-AMPLI-GAIN-ESTIMATOR-STATUS { + description + "OLC AMPLI GAIN ESTIMATOR STATUS"; + leaf status { + type Gain-estimator-status; + description + "Gain estimator current status"; + } + leaf computed-gain { + type string { + length "0..10"; + } + description + "Gain computed by gain estimator (dB)"; + } + leaf computed-gain-mode { + type string { + length "0..10"; + } + description + "Gain mode configured by gain estimator + (Normal/Extended)"; + } + leaf-list last-gain-cmpt-time-stamp { + type String1; + description + "Timestamp when that gain was computed by gain + estimator the last time"; + } + } + + grouping OLC-GAIN-ESTIMATOR-STATUS { + description + "OLC GAIN ESTIMATOR STATUS"; + list egress-status { + description + "Gain estimator status in egress direction"; + uses OLC-AMPLI-GAIN-ESTIMATOR-STATUS; + } + list ingress-status { + description + "Gain estimator status in ingress direction"; + uses OLC-AMPLI-GAIN-ESTIMATOR-STATUS; + } + } + + grouping OLC-CONTROLLER-PARTNERBAND { + description + "OLC CONTROLLER PARTNERBAND"; + leaf partner-controller { + type string { + length "0..64"; + } + description + "Partner Controller name (OTS)"; + } + leaf-list partner-ip { + type inet:ipv4-address; + description + "Partner Controller IP address"; + } + leaf-list cl-patch-loss { + type String1; + description + "L-Band Patchcord Loss (dB)"; + } + leaf-list cl-path-loss { + type String1; + description + "L-Band Path Loss (dB)"; + } + leaf-list ts-loss { + type String1; + description + "Timestamp of Path and Patchord losses + calculation"; + } + } + + grouping OLC-APC-AGENT-TARGET-PSD-SET-POINTS { + description + "target psd profile set_points information"; + leaf-list set-point { + type uint32; + description + "Set Point in value between 1 to 33"; + } + leaf-list target-psd { + type String1; + description + "Target PSD in units of dBm/12 GHz"; + } + leaf-list frequency { + type String1; + description + "frequency in the units of THz"; + } + } + + grouping OLC-APC-AGENT-TARGET-PSD-PROFILE { + description + "target psd profile information"; + leaf source { + type Apc-target-psd-source; + description + "Target PSD Source as either Link Tuner or User + Config"; + } + list psd-info { + description + "Value of target psd, frequency, setpoint"; + uses OLC-APC-AGENT-TARGET-PSD-SET-POINTS; + } + } + + grouping OLC-APC-AGENT-STATUS { + description + "OLC APC AGENT STATUS"; + leaf tx-status { + type Apc-status; + description + "TxStatus"; + } + leaf-list rx-status { + type Apc-status; + description + "rx status"; + } + } + + grouping APC-DISCRPANCY { + description + "APC DISCRPANCY"; + leaf cent-freq { + type string { + length "0..12"; + } + description + "Channel center frequency (THz)"; + } + leaf width { + type string { + length "0..10"; + } + description + "Channel width (GHz)"; + } + leaf channel-id { + type string { + length "0..5"; + } + description + "Channel ID"; + } + leaf channel-source { + type Apc-agent-source-port; + description + "Channel source (OCH/ASE)"; + } + leaf spectrum-slice-num { + type uint32; + description + "Channel slice index"; + } + leaf ampli-input-psd { + type string { + length "0..10"; + } + description + "Channel input PSD in units of 0.1 dBm/12.5 GHz"; + } + leaf tgt-psd { + type string { + length "0..10"; + } + description + "Channel target PSD in units of 0.1 dBm/12.5 GHz"; + } + leaf cur-psd { + type string { + length "0..10"; + } + description + "Channel current PSD in units of 0.1 dBm/12.5 GHz"; + } + leaf chnl-slice-attn-cfg { + type string { + length "0..10"; + } + description + "Channel slice attenuation config (dB)"; + } + leaf discrepancy { + type string { + length "0..10"; + } + description + "Channel discrepancy in units of 0.1 dBm"; + } + } + + grouping APC-AMPLIFIER-STATUS { + description + "APC AMPLIFIER STATUS"; + leaf edfa-gain { + type string { + length "0..8"; + } + description + "Amplifier gain (dB)"; + } + leaf edfa-out-pwr { + type string { + length "0..8"; + } + description + "Amplifier output power (dB)"; + } + leaf edfa-tilt { + type string { + length "0..8"; + } + description + "Amplifier tilt (dB)"; + } + leaf dge-attn-max { + type string { + length "0..8"; + } + description + "DGE/WSS attenuation (dB)"; + } + leaf voa-attn { + type string { + length "0..8"; + } + description + "VOA attenuation (dB)"; + } + } + + grouping APC-AMPLIFIER-CAPAB { + description + "APC AMPLIFIER CAPAB"; + leaf ampli-range-min { + type string { + length "0..8"; + } + description + "Minimum amplifier gain for given range mode (dB)"; + } + leaf ampli-range-max { + type string { + length "0..8"; + } + description + "Maximum amplifier gain for given range mode (dB)"; + } + leaf ampli-power-min { + type string { + length "0..8"; + } + description + "Minimum amplifier power for given range mode + (dB)"; + } + leaf ampli-power-max { + type string { + length "0..8"; + } + description + "Maximum amplifier power for given range mode + (dB)"; + } + leaf ampli-tilt-min { + type string { + length "0..8"; + } + description + "Minimum amplifier tilt for given range mode (dB)"; + } + leaf ampli-tilt-max { + type string { + length "0..8"; + } + description + "Maximum amplifier tilt for given range mode (dB)"; + } + leaf dge-attn-min { + type string { + length "0..8"; + } + description + "Minimum DGE/WSS attenuation (dB)"; + } + leaf dge-attn-max { + type string { + length "0..8"; + } + description + "Maximum DGE/WSS attenuation (dB)"; + } + leaf voa-attn-min { + type string { + length "0..8"; + } + description + "Minimum VOA attenuation (dB)"; + } + leaf voa-attn-max { + type string { + length "0..8"; + } + description + "Maximum VOA attenuation (dB)"; + } + } + + grouping OLC-APC-AGENT-REG-INFO { + description + "OLC APC AGENT REG INFO"; + container capab { + description + "Capability information"; + uses APC-AMPLIFIER-CAPAB; + } + container configuration { + description + "APC configured values"; + uses APC-AMPLIFIER-STATUS; + } + container operational-data { + description + "Operational data after regulation cycle"; + uses APC-AMPLIFIER-STATUS; + } + leaf controller { + type string { + length "0..64"; + } + description + "Controller name (OTS)"; + } + leaf domain-apc-manager { + type inet:ipv4-address; + description + "APC Domain manager Router ID"; + } + leaf direction-xr { + type Apc-agent-direction; + description + "Regulation info direction (TX/RX)"; + } + leaf internal-state { + type Apc-internal-state; + description + "APC agent internal state"; + } + leaf psd-minimum { + type string { + length "0..8"; + } + description + "PSD minimum (dBm/12.5 GHz)"; + } + leaf last-correction-timestamp { + type string { + length "0..40"; + } + description + "Timestamp for last correction by APC"; + } + leaf gain-range { + type string { + length "0..10"; + } + description + "Gain range configured"; + } + leaf-list block-reason { + type Apc-block-reason; + description + "APC agent blocked reason"; + } + list channel-info { + description + "Every channel information with respect to + regulation"; + uses APC-DISCRPANCY; + } + } + + grouping APC-NODE-STATUS-B { + description + "APC NODE STATUS B"; + leaf node-id { + type inet:ipv4-address; + description + "RID of the agent node"; + } + leaf-list internal-state { + type Apc-internal-state; + description + "Internal status of the agent node"; + } + leaf-list block-reason { + type Apc-block-reason; + description + "Blocked reason of the agent node (if any)"; + } + } + + grouping OLC-APC-STATUS { + description + "OLC APC STATUS"; + leaf status { + type Apc-status; + description + "Current APC domain status"; + } + leaf-list corr-node { + type inet:ipv4-address; + description + "RID of current correcting node"; + } + leaf-list block-reason { + type Apc-block-reason; + description + "APC Blocked reason (if any)"; + } + list node-status { + description + "Status of event node in the APC domain"; + uses APC-NODE-STATUS-B; + } + } + + grouping OLC-BS-BAND-INFO { + description + "OLC BS BAND INFO"; + leaf-list band-type { + type Olc-bs-band; + description + "Band Type"; + } + leaf-list band-status { + type Olc-bs-band-status; + description + "Band status"; + } + leaf-list psd-type { + type Olc-bs-psd; + description + "Psd Type"; + } + } + + grouping OLC-BS-BAND-NODE-INFO { + description + "OLC BS BAND NODE INFO"; + leaf partner-controller { + type string { + length "0..64"; + } + description + "Partner Controller name (OTS)"; + } + leaf-list node-rid { + type inet:ipv4-address; + description + "OSPF RID IP address"; + } + leaf-list partner-ip { + type inet:ipv4-address; + description + "Partner Controller IP address"; + } + leaf-list partner-band-conn-state { + type Olc-bs-parter-band-conn-state; + description + "Partner band connection state"; + } + list band-info { + max-elements "2"; + description + "C and L Band Status Information"; + uses OLC-BS-BAND-INFO; + } + } + + grouping OLC-CONTROLLER-BAND-STATUS { + description + "Band Status information"; + leaf self-band { + type Olc-bs-band; + description + "Local Band type"; + } + leaf bfr-status { + type Olc-bs-status; + description + "BFR Manager Status"; + } + list band-node-info { + description + "Node's Bands Status list"; + uses OLC-BS-BAND-NODE-INFO; + } + } + + grouping RAMAN-TUNING-STATE-REASON { + description + "RAMAN TUNING STATE REASON"; + leaf-list block-reason { + type Raman-tuning-block-reason; + description + "Block reason for Raman Tuning"; + } + leaf-list fail-reason { + type Raman-tuning-fail-reason; + description + "Failure reason for Raman Tuning"; + } + leaf-list block-descr { + type String1; + description + "Block reason description for Raman Tuning"; + } + leaf-list last-fail-descr { + type String1; + description + "Failure reason description for Raman Tuning"; + } + } + + grouping OLC-RAMAN-STATUS { + description + "OLC RAMAN STATUS"; + leaf status { + type Raman-tuning-status; + description + "Raman Tuning current status"; + } + leaf-list tuning-complete-timestamp { + type String1; + description + "Timestamp for the last Raman Tuning completion"; + } + leaf-list target-gain { + type String1; + description + "Target gain for Raman Tuning (dB)"; + } + leaf-list max-gain { + type String1; + description + "Maximum gain possible by Raman Tuning (dB)"; + } + leaf-list tuning-complete-gain { + type String1; + description + "Gain achieved at the completion of Raman Tuning + (dB)"; + } + leaf-list last-fail-timestamp { + type String1; + description + "Timestamp for the last Raman Tuning failure"; + } + leaf-list last-tuned-gain { + type String1; + description + "Last tuned gain by Raman Tuning (dB)"; + } + leaf-list last-tuned-timestamp { + type String1; + description + "Timestamp for last tuning by Raman Tuning"; + } + list reason { + description + "Reason description for current Raman Tuning + status (Blocked/Failed)"; + uses RAMAN-TUNING-STATE-REASON; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper.yang new file mode 100644 index 000000000..e0e5bc49d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-olc-oper.yang @@ -0,0 +1,300 @@ +module Cisco-IOS-XR-olc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-olc-oper"; + prefix olc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-olc-oper-sub1 { + revision-date 2022-12-20; + } + + 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 olc package operational data. + + This module contains definitions + for the following management objects: + olc: Optical Application oper data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-20 { + description + "Comments added for all the fields in bag"; + semver:module-version "1.0.0"; + } + revision 2022-10-10 { + description + "raman tune status details CLI addition"; + } + revision 2022-10-06 { + description + "Enhanced APC domain CLI for partial topology support"; + } + revision 2022-06-30 { + description + "C+L band status CLI addition"; + } + revision 2022-06-03 { + description + "L Band Path Loss information."; + } + revision 2022-04-18 { + description + "Link tuner bag modification include PSD index."; + } + revision 2021-12-07 { + description + "Link tuner CLI modification."; + } + revision 2021-03-26 { + description + "Span-loss CLI modification."; + } + revision 2021-01-19 { + description + "APC oper CLI addition."; + } + revision 2020-11-05 { + description + "Initial Revision."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Apc-reg-info-dir { + type enumeration { + enum "tx" { + value 0; + description + "TX Direction"; + } + enum "rx" { + value 1; + description + "RX Direction"; + } + } + description + "Apc reg info dir"; + } + + container olc { + config false; + description + "Optical Application oper data"; + container raman-tuning-ctrlr-tables { + description + "Raman Tuning per controller status information"; + list raman-tuning-ctrlr-table { + key "name"; + description + "Controller Raman Tuning status oper data"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-RAMAN-STATUS; + } + } + container band-status-ctrlr-tables { + description + "Band Status per controller information"; + list band-status-ctrlr-table { + key "name"; + description + "Controller Band Status information"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-CONTROLLER-BAND-STATUS; + } + } + container apc-status-ctrlr-tables { + description + "APC per controller status information"; + list apc-status-ctrlr-table { + key "name"; + description + "Controller APC status oper data"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-APC-STATUS; + } + } + container apc-local-table { + description + "APC local agent per controller status + information"; + container apc-local-reg-info-ctrlr-tables { + description + "APC local agent regulation information"; + list apc-local-reg-info-ctrlr-table { + key "name"; + description + "Controller selection for APC local regulation + info"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + list apc-local-reg-info-dir-table { + key "direction"; + description + "APC Local regulation oper data"; + leaf direction { + type Apc-reg-info-dir; + description + "TX/RX direction for APC regulation info"; + } + uses OLC-APC-AGENT-REG-INFO; + } + } + } + container apc-local-status-ctrlr-tables { + description + "APC local agent per controller status + information"; + list apc-local-status-ctrlr-table { + key "name"; + description + "Controller APC local agent status oper data"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-APC-AGENT-STATUS; + } + } + container apc-local-target-psd-profile-ctrlr-tables { + description + "APC local agent per controller target psd + profile information"; + list apc-local-target-psd-profile-ctrlr-table { + key "name"; + description + "Controller APC local agent target psd profile + oper data"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-APC-AGENT-TARGET-PSD-PROFILE; + } + } + } + container partnerband-loss-ctrlr-tables { + description + "Partnerband per controller information"; + list partnerband-loss-ctrlr-table { + key "name"; + description + "Controller Partnerband loss oper data in dB"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-CONTROLLER-PARTNERBAND; + } + } + container gain-estimator-ctrlr-tables { + description + "Gain Estimator per controller status information"; + list gain-estimator-ctrlr-table { + key "name"; + description + "Controller Gain Estimator status oper data"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-GAIN-ESTIMATOR-STATUS; + } + } + container link-tuner-table { + description + "Link Tuner status information"; + container link-tuner-detail-ctrlr-tables { + description + "Link Tuner per controller status information in + detail"; + list link-tuner-detail-ctrlr-table { + key "name"; + description + "Controller Link Tuner status oper data in + detail"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-LINK-TUNER-STATUS-DETAIL; + } + } + container link-tuner-brief-ctrlr-tables { + description + "Link Tuner per controller status information"; + list link-tuner-brief-ctrlr-table { + key "name"; + description + "Controller Link Tuner status oper data summary"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-LINK-TUNER-STATUS-SUMMARY; + } + } + } + container span-loss-ctrlr-tables { + description + "Span loss per controller information"; + list span-loss-ctrlr-table { + key "name"; + description + "Controller span loss oper data in dB"; + leaf name { + type xr:Interface-name; + description + "Controller RSIP"; + } + uses OLC-CONTROLLER-SPAN-LOSS; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-isis-ext.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-isis-ext.yang new file mode 100644 index 000000000..86402615d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-isis-ext.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-openconfig-isis-ext { + yang-version 1; + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-openconfig-isis-ext"; + prefix oc-isis-cisco-xr-ext; + + import openconfig-extensions { + prefix oc-ext; + } + import openconfig-network-instance { + prefix oc-ni; + } + + 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 adds extensions to the OpenConfig ISIS model to + provide extensions which allow index option for SR prefix sid + configuration. It augments the existing OpenConfig ISIS + model where required."; + + revision 2021-02-13 { + description + "Initial version"; + reference "0.1.0"; + } + + grouping prefix-sid-ext-info { + description + "perfix sid type and index value for prefix sid"; + leaf sid-type { + type enumeration { + enum "INDEX" { + value 1; + description + "sid as an index"; + } + enum "ABSOLUTE" { + value 2; + description + "sid as an absolute label or address"; + } + } + description + "sid type"; + } + leaf sid-index { + type uint32 { + range "0..1048575"; + } + description + "Sid index value"; + } + } + + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:protocols/oc-ni:protocol/oc-ni:isis/oc-ni:interfaces/oc-ni:interface/oc-ni:levels/oc-ni:level/oc-ni:afi-safi/oc-ni:af/oc-ni:segment-routing/oc-ni:prefix-sids/oc-ni:prefix-sid/oc-ni:config" { + description + "Add sid option and sid-index parameters to prefix-sid + configuration hierarchy."; + uses prefix-sid-ext-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:protocols/oc-ni:protocol/oc-ni:isis/oc-ni:interfaces/oc-ni:interface/oc-ni:levels/oc-ni:level/oc-ni:afi-safi/oc-ni:af/oc-ni:segment-routing/oc-ni:prefix-sids/oc-ni:prefix-sid/oc-ni:state" { + description + "Add sid option and sid-index parameters to prefix-sid + configuration hierarchy."; + uses prefix-sid-ext-info; + } + oc-ext:openconfig-version "0.1.0"; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-mpls-static-ext.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-mpls-static-ext.yang new file mode 100644 index 000000000..d1e7ac230 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-mpls-static-ext.yang @@ -0,0 +1,251 @@ +module Cisco-IOS-XR-openconfig-mpls-static-ext { + yang-version 1; + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-openconfig-mpls-static-ext"; + prefix oc-mpls-static-cisco-xr-ext; + + import openconfig-extensions { + prefix oc-ext; + } + import openconfig-network-instance { + prefix oc-ni; + } + import openconfig-mpls { + prefix oc-mpls; + } + import openconfig-mpls-types { + prefix oc-mplst; + } + import openconfig-inet-types { + prefix inet; + } + import openconfig-interfaces { + prefix oc-if; + } + + 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 adds extensions to the OpenConfig MPLS Static model to + provide extensions which allow non-resolve nexthops to be adequately + configured and operated. It augments the existing OpenConfig MPLS Static + model where required."; + + revision 2022-05-12 { + description + "Initial version"; + reference "0.1.0"; + } + + grouping mpls-static-interface-attributes-config { + description + "global level definitions for interfaces + on which MPLS is run"; + leaf enabled-interface { + type oc-if:interface-id; + description + "Indentifier for the MPLS interface"; + } + } + + grouping mpls-static-interfaces-top { + description + "Top level grouping for attributes + for MPLS static ingress-enabled interfaces."; + container interface-attributes { + description + "Parameters related to MPLS interfaces"; + list interface { + key "enabled-interface"; + description + "List of MPLS static interfaces"; + leaf enabled-interface { + type leafref { + path "../config/enabled-interface"; + } + description + "Reference to the interface id list key"; + } + container config { + description + "Configuration parameters related to MPLS interfaces:"; + uses mpls-static-interface-attributes-config; + } + container state { + config false; + description + "State parameters related to MPLS static interfaces"; + uses mpls-static-interface-attributes-config; + } + } + } + } + + grouping static-lsp-extended-paths-path { + description + "common definitions for static LSPs with multiple out-going paths."; + leaf path-id { + type uint32; + description + "Path id key"; + } + leaf next-hop { + type inet:ip-address; + description + "next hop IP address for the LSP"; + } + leaf push-label { + type oc-mplst:mpls-label; + description + "label value to push at the current hop for the + LSP"; + } + leaf push-interface { + type string; + description + "interface name of outgoing traffic"; + } + } + + grouping static-lsp-ext-paths-top { + description + "common definitions for additional static LSP push paths"; + container paths { + description + "Additional push LSP paths"; + list path { + key "path-id"; + description + "list of additional static LSP push paths"; + leaf path-id { + type leafref { + path "../config/path-id"; + } + description + "Path id of the out-going path."; + } + container config { + description + "Configuration parameters relating push path."; + uses static-lsp-extended-paths-path; + } + container state { + config false; + description + "State parameters relating to push path"; + uses static-lsp-extended-paths-path; + } + } + } + } + + grouping static-lsp-ingress-interface-info { + description + "static lsp ingress interface enable info"; + container static-lsp-ingress-interfaces { + description + "static lsp enabled ingress interfaces "; + uses mpls-static-interfaces-top; + } + } + + grouping static-lsp-ext-info { + description + "push interface option for non-resolve nexthops"; + leaf push-interface { + type string; + description + "interface name of outgoing traffic"; + } + } + + grouping static-lsp-ingress-ext-info { + description + "incoming-prefix and incoming-prefix-length values"; + leaf incoming-prefix { + type inet:ip-address; + description + "incoming IP address for the LSP"; + } + leaf incoming-prefix-length { + type uint32; + description + "length of incoming IP address for the LSP"; + } + uses static-lsp-ext-info; + } + + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:ingress/oc-ni:config" { + description + "Add incoming-prefix, incomfing-prefix length, + and push-interface to ingress + configuration hierarchy."; + uses static-lsp-ingress-ext-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:transit/oc-ni:config" { + description + "Add push-interface to transit + configuration hierarchy."; + uses static-lsp-ext-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:egress/oc-ni:config" { + description + "Add push-interface to egress + configuration hierarchy."; + uses static-lsp-ext-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:ingress/oc-ni:state" { + description + "Add incoming-prefix, incomfing-prefix length, + and push-interface to ingress + state hierarchy."; + uses static-lsp-ingress-ext-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:transit/oc-ni:state" { + description + "Add push-interface to transit + state hierarchy."; + uses static-lsp-ext-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:egress/oc-ni:state" { + description + "Add push-interface to egress + state hierarchy."; + uses static-lsp-ext-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls" { + description + "Add list of static lsp ingress interfaces to the + mpls configuration hierarchy."; + uses static-lsp-ingress-interface-info; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:ingress" { + description + "Add incoming-prefix, incomfing-prefix length, + and push-interface to ingress + configuration hierarchy."; + uses static-lsp-ext-paths-top; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:transit" { + description + "Add push-interface to transit + configuration hierarchy."; + uses static-lsp-ext-paths-top; + } + augment "/oc-ni:network-instances/oc-ni:network-instance/oc-ni:mpls/oc-ni:lsps/oc-ni:static-lsps/oc-ni:static-lsp/oc-ni:egress" { + description + "Add push-interface to egress + configuration hierarchy."; + uses static-lsp-ext-paths-top; + } + oc-ext:openconfig-version "1.0.0"; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-system-terminal-ext.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-system-terminal-ext.yang new file mode 100644 index 000000000..1d394932c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-system-terminal-ext.yang @@ -0,0 +1,130 @@ +module Cisco-IOS-XR-openconfig-system-terminal-ext { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-openconfig-system-terminal-ext"; + prefix oc-term-ext; + + import openconfig-system { + prefix oc-sys; + } + 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 defines IPv4/Ipv6 and vrf specific configuration data + for telnet server. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-12 { + description + "Initial version"; + reference "0.1.0"; + semver:module-version "1.0.0"; + } + + grouping system-telnet-server-config { + description + "Configuration data for telnet server"; + leaf session-limit { + type uint16; + mandatory true; + description + "Set a limit on the number of simultaneous active terminal + sessions to the system for the protocol (e.g., ssh, + telnet, ...) "; + } + } + + grouping system-telnet-server-state { + description + "State data for telnet server"; + leaf enable { + type boolean; + default "false"; + description + "Enables the telnet server. Telnet is disabled by + default"; + } + leaf session-limit { + type uint16; + mandatory true; + description + "Set a limit on the number of simultaneous active terminal + sessions to the system for the protocol (e.g., ssh, + telnet, ...) "; + } + } + + augment "/oc-sys:system/oc-sys:telnet-server" { + description + "This augment extends the configuration data of + 'oc-sys:telnet-server'"; + container ipv4 { + description + "Configuration for IPv4"; + list vrf { + key "vrf-name"; + description + "Configuration for a particular VRF"; + leaf vrf-name { + type string { + length "1..64"; + } + description + "VRF Name"; + } + container config { + description + "Configuration data for telnet"; + uses system-telnet-server-config; + } + container state { + config false; + description + "Operational state data for telnet"; + uses system-telnet-server-state; + } + } + } + container ipv6 { + description + "Configuration for IPv6"; + list vrf { + key "vrf-name"; + description + "Configuration for a particular VRF"; + leaf vrf-name { + type string { + length "1..64"; + } + description + "VRF Name"; + } + container config { + description + "Configuration data for telnet"; + uses system-telnet-server-config; + } + container state { + config false; + description + "Operational state data for telnet"; + uses system-telnet-server-state; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-terminal-device-ext.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-terminal-device-ext.yang new file mode 100644 index 000000000..9ea6adb91 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-openconfig-terminal-device-ext.yang @@ -0,0 +1,223 @@ +module Cisco-IOS-XR-openconfig-terminal-device-ext { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-openconfig-terminal-device-ext"; + prefix oc-opt-ext; + + import openconfig-platform { + prefix oc-platform; + } + import openconfig-terminal-device { + prefix oc-opt-term; + } + + 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 is an extension of optical terminal device model + and contains the definition of extended parameters for Optical + Channels in order to optimize the AC1200 settings to get the highest + performance and spectral efficiency. + + This module contains definitions for the following management objects: + General Parameters + Submarine Parameters + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-30 { + description + "IOS XR 6.0 revision"; + reference "7.3.1"; + } + + grouping terminal-device-optical-channel-ext-info { + description + "Submarine parameteres for optical channel"; + leaf optics-cd-max { + type int32 { + range "-350000..350000"; + } + description + "Select max chromatic dispersion (in units of + ps/nm)"; + } + leaf optics-cd-low-threshold { + type int32 { + range "-350000..350000"; + } + description + "Select chromatic dispersion low threshold(in + units of ps/nm)"; + } + leaf optics-cd-high-threshold { + type int32 { + range "-350000..350000"; + } + description + "Select chromatic dispersion high threshold(in + units of ps/nm)"; + } + leaf filter-roll-off-factor { + type string { + length "5"; + } + description + "RRC Filter Roll-Off factor in increments of 0 + .001 and default value is 0.1"; + } + leaf enh-colorless-mode { + type uint32 { + range "1..3"; + } + description + "Enhanced Colorless Mode + 0 - Disabled (Colored Rx) + 1 - Weak colorless interface + 2 - Medium colorless interface + 3 - Strong colorless interface + Default value is 0"; + } + leaf enh-sop-tol-mode { + type uint32 { + range "1..3"; + } + description + "Enhanced SOP Tolerance Mode + 0 - Disabled + 1 - Mode A (enhanced SOP mode) + Mode A can only be used in the pure modulation modes such as two BPS, + three BPS, and four BPS. It does not support fraction QAM modes. + 2 - Mode B (unused) + 3 - Mode C (submarine mode) + Default value is 0 + When the enhanced SOP tolerance mode is set to 1 (Mode A), + the carrier phase recovery cross polarization gain mode must + also be set to a value of 10 on the optics controller. "; + } + leaf nleq-compensation { + type uint32 { + range "1..4"; + } + description + "Non Linear Effect Compenstation + 1 - Compensation optimized for D+ High Dispersion + fiber transmission 60 G to 72 Gbaud + 2 - Compensation optimized for D+ High Dispersion + \t fiber transmission 30 G to 72 Gbaud + 3 - Compensation optimized for D+ Low Dispersion + fiber transmission + 4 - Compensation optimized for D+ Low Dispersion + \t fiber transmission longer distance + Default value is 0"; + } + leaf cross-pol-gain-mode { + type uint32 { + range "1..15"; + } + description + "Carrier Phase Recovery Cross Polarization Gain + Mode 0, 1, 2, and 7 through 15 are allowed but not optimal values + Default value is 0"; + } + leaf cross-pol-weight-mode { + type uint32 { + range "1..7"; + } + description + "Carrier Phase Recovery Cross Polarization Weight + Mode 1,2,3, and 4 are preferred optimal values + 0,5,6, and 7 are allowed but not optimal values + Default value is 0"; + } + leaf cpr-win-mode { + type uint32 { + range "1..4"; + } + description + "Carrier Phase Recovery Window Mode + 0 - 160 symbols + 1 - 8 symbols + 2 - 16 symbols + 3 - 32 symbols + 4 - 4 symbols + Default value is 0"; + } + leaf cpr-ext-win-mode { + type uint32 { + range "1..9"; + } + description + "Carrier Phase Recovery Extended Window Mode + 0 - 160 Symbols (288 symbols if the baud rate is greater than 52 Gbaud) + 1 - 64 symbols + 2 - 65 symbols + 3 - 66 symbols + 4 - 69 symbols + 5 - 75 symbols + 6 - 96 symbols + 7 - 160 symbols + 8 - 288 symbols + 9 - 544 symbols + Default value is 0"; + } + } + + augment "/oc-platform:components/oc-platform:component/oc-opt-term:optical-channel" { + description + "This augment extends the configuration data of + 'oc-opt-term:terminal-optical-channel-top'"; + container extended { + description + "Enclosing container for the list of Subsea parameters"; + container config { + description + "Extended Configuration parameters"; + leaf rx-voa-target-power { + type int32 { + range "-190..30"; + } + description + "Receive Target Power in increments of 0.1 dBm + Default value is -5 dBm"; + } + leaf rx-voa-fixed-ratio { + type int32 { + range "100..1700"; + } + description + "Receive Ratio of Optical Attenuation in + increments of 0.01 dB Default value is 15 dB"; + } + uses terminal-device-optical-channel-ext-info; + } + container state { + config false; + description + "Extended Operational parameters"; + leaf rx-voa-target-power { + type string; + description + "Receive Target Power in increments of 0.1 dBm + Default value is -5 dBm"; + } + leaf rx-voa-fixed-ratio { + type string; + description + "Receive Ratio of Optical Attenuation in + increments of 0.01 dB Default value is 15 dB"; + } + uses terminal-device-optical-channel-ext-info; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-opendns-deviceid-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-opendns-deviceid-cfg.yang new file mode 100644 index 000000000..4c147e235 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-opendns-deviceid-cfg.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-opendns-deviceid-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-opendns-deviceid-cfg"; + prefix opendns-deviceid-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 opendns-deviceid package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + container subscriber-attribute { + description + "Subscriber attribute configuration data"; + container open-dns { + description + "OpenDNS configuration data"; + leaf device-id { + type string; + description + "Specify deviceID to be used for applying + OpenDNS policies"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-opticalmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-opticalmib-cfg.yang new file mode 100644 index 000000000..d93c633bd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-opticalmib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-opticalmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-opticalmib-cfg"; + prefix opticalmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 opticalmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container optical { + description + "CISCO-OPTICAL-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable Opticalmib notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-opticalotsmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-opticalotsmib-cfg.yang new file mode 100644 index 000000000..a9bfd2038 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-opticalotsmib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-opticalotsmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-opticalotsmib-cfg"; + prefix opticalotsmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 opticalotsmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container optical-ots { + description + "CISCO-OPTICAL-OTS-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable OpticalOtsmib notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper-sub1.yang new file mode 100644 index 000000000..24cb66e00 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper-sub1.yang @@ -0,0 +1,119 @@ +submodule Cisco-IOS-XR-optics-breakout-details-oper-sub1 { + belongs-to Cisco-IOS-XR-optics-breakout-details-oper { + prefix Cisco-IOS-XR-optics-breakout-details-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR optics-breakout-details package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-21 { + description + "Schema added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Breakout-speed { + type enumeration { + enum "zero-gig" { + value 0; + description + "zero gig"; + } + enum "one-gig" { + value 1; + description + "one gig"; + } + enum "ten-gig" { + value 2; + description + "ten gig"; + } + enum "twenty-five-gig" { + value 3; + description + "twenty five gig"; + } + enum "forty-gig" { + value 4; + description + "forty gig"; + } + enum "fifty-gig" { + value 5; + description + "fifty gig"; + } + enum "hundred-gig" { + value 6; + description + "hundred gig"; + } + enum "one-fifty-gig" { + value 7; + description + "one fifty gig"; + } + enum "two-hundred-gig" { + value 8; + description + "two hundred gig"; + } + enum "four-hundred-gig" { + value 9; + description + "four hundred gig"; + } + } + description + "Breakout speed"; + } + + grouping BREAKOUT-DETAILS-OP { + description + "Breakout Details"; + leaf num-of-breakouts { + type uint8; + description + " No:of breakouts"; + } + leaf breakout-speed { + type Breakout-speed; + description + " Breakout Speed"; + } + leaf num-of-physical-channels { + type uint8; + description + " No:of Physical channels"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper.yang new file mode 100644 index 000000000..5bc47b567 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-breakout-details-oper.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-optics-breakout-details-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-breakout-details-oper"; + prefix optics-breakout-details-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-optics-breakout-details-oper-sub1 { + revision-date 2022-08-21; + } + + 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 optics-breakout-details package operational data. + + This module contains definitions + for the following management objects: + optics-breakout-details: Optics Breakout Details + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-21 { + description + "Schema added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container optics-breakout-details { + config false; + description + "Optics Breakout Details"; + container controllers { + description + "Optics driver optics controller Table"; + list controller { + key "controller-name"; + description + "Optics Controller Name"; + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + uses BREAKOUT-DETAILS-OP; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-dac-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-dac-cfg.yang new file mode 100644 index 000000000..a5bf31ecc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-dac-cfg.yang @@ -0,0 +1,96 @@ +module Cisco-IOS-XR-optics-dac-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-dac-cfg"; + prefix optics-dac-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 optics-dac package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-09 { + description + "Removed unused module."; + semver:module-version "1.1.0"; + } + revision 2021-02-16 { + description + "Schema added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Optics-dac-rate { + type enumeration { + enum "1:1" { + value 0; + description + "DAC Rate 1:1 Sampling off"; + } + enum "1:1.25" { + value 1; + description + "DAC Rate 1:1.25"; + } + enum "1:1.50" { + value 2; + description + "DAC Rate 1:1.50"; + } + enum "1:1.75" { + value 3; + description + "DAC Rate 1:1.75"; + } + enum "1:2" { + value 4; + description + "DAC Rate 1:2"; + } + } + description + "Optics dac rate"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf optics-dac-rate { + type Optics-dac-rate; + description + "Configure optics sampling rate "; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-cfg.yang new file mode 100644 index 000000000..56ecbe4c8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-cfg.yang @@ -0,0 +1,90 @@ +module Cisco-IOS-XR-optics-driver-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-driver-cfg"; + prefix optics-driver-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 optics-driver package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-30 { + description + "New breakout modes of 8x100 added. + 2022-05-09 + Removed unused module."; + semver:module-version "3.1.0"; + } + revision 2021-01-15 { + description + "Order of the breakout modes of 4x100 and 4x10 interchanged"; + semver:module-version "3.0.0"; + } + revision 2020-04-22 { + description + "Augmentation to Cisco-IOS-XR-ifmgr-cfg. New breakout modes of 4x100 and 8x50 added"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-03-21 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Breakout-type-list { + type string { + pattern "(4x100)|(4x25)|(4x10)|(2x50)|(8x50)|(3x100)|(2x100)|(1x100)|(8x100)"; + } + description + "4x100:4x100 optics breakout config, 4x25:4x25 + optics breakout config, 4x10:4x10 optics breakout + config, 2x50:2x50 optics breakout config, 8x50 + :8x50 optics breakout config, 3x100:3x100 optics + breakout config, 2x100:2x100 optics breakout + config, 1x100:1x100 optics breakout config, 8x100 + :8x100 optics breakout config"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf breakout { + type Breakout-type-list; + description + "breakout mode configuration"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-quad-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-quad-cfg.yang new file mode 100644 index 000000000..caa564ab5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-quad-cfg.yang @@ -0,0 +1,114 @@ +module Cisco-IOS-XR-optics-driver-quad-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-driver-quad-cfg"; + prefix optics-driver-quad-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 optics-driver-quad package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-15 { + description + "Changed type of NodeName from String to StringNodeID, added pathformat of quad as decimal in schema file"; + semver:module-version "3.0.0"; + } + revision 2021-03-02 { + description + "Augment MDA schema"; + semver:module-version "3.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-21 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping QUAD-CONFIG-TABLE { + description + "Common node of active-node, preconfigured-node"; + container instances { + description + "quad configuration"; + list instance { + key "inst-id"; + description + "0 for LC ports, 1+ for MPA instances"; + leaf inst-id { + type uint32 { + range "0..5"; + } + description + "Instance number"; + } + list quad-config { + key "quad-id"; + description + "none"; + container mode { + description + "select mode 10g or 25g for a quad(group of 2 + or 4 ports)."; + leaf speed { + type string; + description + "speed 10g or 25g"; + } + } + leaf quad-id { + type uint32 { + range "0..11"; + } + description + "Quad number"; + } + } + } + } + } + + augment "/a1:preconfigured-nodes/a1:preconfigured-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses QUAD-CONFIG-TABLE; + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses QUAD-CONFIG-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-xponder-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-xponder-cfg.yang new file mode 100644 index 000000000..39480366e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-driver-xponder-cfg.yang @@ -0,0 +1,75 @@ +module Cisco-IOS-XR-optics-driver-xponder-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-driver-xponder-cfg"; + prefix optics-driver-xponder-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 optics-driver-xponder package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-09 { + description + "Removed unused module"; + semver:module-version "1.1.0"; + } + revision 2021-06-17 { + description + "Implemented common cli - xponder to apply different modes, wrapper for breakout/portmode cli IosSetYangSchemaRev Cisco-IOS-XR-optics-quad-cfg"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Xponder-type-list { + type string { + pattern "(400)|(4x100)|(3x100)|(2x100)|(1x100)"; + } + description + "400:400 optics xponder config, 4x100:4x100 optics + xponder config, 3x100:3x100 optics xponder config + , 2x100:2x100 optics xponder config, 1x100:1x100 + optics xponder config"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf xponder { + type Xponder-type-list; + description + "Xponder config for optics"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-fan-control-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-fan-control-cfg.yang new file mode 100644 index 000000000..0312c3ef1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-fan-control-cfg.yang @@ -0,0 +1,87 @@ +module Cisco-IOS-XR-optics-fan-control-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-fan-control-cfg"; + prefix optics-fan-control-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 optics-fan-control package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-29 { + description + "Initial revision"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OPTICS { + description + "Common node of active-node, preconfigured-node"; + container optics { + description + "Fan speed control offset for all optics"; + container fan { + description + "Fan speed control offset for all optics"; + container control { + description + "Fan speed control offset for all optics"; + leaf offset { + type uint32 { + range "1..20"; + } + description + "This value will be decremented from maximum + allowed temperature warning threshold in + EEPROM"; + } + } + } + } + } + + augment "/a1:preconfigured-nodes/a1:preconfigured-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses OPTICS; + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses OPTICS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-media-type-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-media-type-cfg.yang new file mode 100644 index 000000000..ea3403365 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-media-type-cfg.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-optics-media-type-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-media-type-cfg"; + prefix optics-media-type-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 optics-media-type package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-23 { + description + "Removed unused imports"; + semver:module-version "1.0.0"; + } + revision 2020-07-23 { + description + "Schema added."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Media-type-list { + type string { + pattern "(rj45)"; + } + description + "rj45:rj45 optics media type config"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf media-type { + type Media-type-list; + description + "MediaType config for optics"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-centralized-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-centralized-cfg.yang new file mode 100644 index 000000000..ad5c5ce40 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-centralized-cfg.yang @@ -0,0 +1,104 @@ +module Cisco-IOS-XR-optics-port-mode-centralized-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-port-mode-centralized-cfg"; + prefix optics-port-mode-centralized-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 optics-port-mode-centralized package configuration. + + This module contains definitions + for the following management objects: + port-mode-configs: none + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-19 { + description + "Initial Revision"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container port-mode-configs { + description + "none"; + container locations { + description + "Configure port mode."; + list location { + key "nodeid"; + description + "Node Id of portmode configuration"; + leaf nodeid { + type xr:Node-id; + description + "Specify location"; + } + list port-range { + key "first-port sec-port"; + description + "Hardware Module Portmode configuration"; + leaf first-port { + type uint32; + description + "Specify first port number of port-range"; + } + leaf sec-port { + type uint32; + description + "Specify second port number of port-range"; + } + list instance { + key "inst-id"; + description + "MPA number if a MPA supported card"; + container mode { + description + "Mode"; + leaf speed { + type string; + description + "speed 40-100, 400, 2x100, 4x10-4x25, 4x10, + 4x25, 1x100, 2x100-PAM4, 3x100, 4x100"; + } + } + leaf inst-id { + type uint32 { + range "0..5"; + } + description + "Instance number"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-cfg.yang new file mode 100644 index 000000000..b21da8bed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-port-mode-cfg.yang @@ -0,0 +1,118 @@ +module Cisco-IOS-XR-optics-port-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-port-mode-cfg"; + prefix optics-port-mode-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + + 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 optics-port-mode package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-19 { + description + "Added new container for location for port mode configuration"; + semver:module-version "2.0.0"; + } + revision 2021-02-24 { + description + "Augment MDA schema"; + semver:module-version "2.0.0"; + } + revision 2020-05-12 { + description + "New port modes of 4x10-4x25, 4x10, 4x25 added."; + semver:module-version "1.0.2"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PORT-MODE-CONFIG-TABLE { + description + "Common node of active-node, preconfigured-node"; + container port-ranges { + description + "port mode configuration"; + list port-range { + key "first-port sec-port"; + description + "Hardware Module Portmode configuration"; + leaf first-port { + type uint32; + description + "Specify port number"; + } + leaf sec-port { + type uint32; + description + "Specify port number"; + } + list instance { + key "inst-id"; + description + "MPA number if a MPA supported card"; + container mode { + description + "Mode"; + leaf speed { + type string; + description + "speed 40-100, 400, 2x100, 4x10-4x25, 4x10, + 4x25, 1x100, 2x100-PAM4, 3x100, 4x100"; + } + } + leaf inst-id { + type uint32 { + range "0..5"; + } + description + "Instance number"; + } + } + } + } + } + + augment "/a1:preconfigured-nodes/a1:preconfigured-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses PORT-MODE-CONFIG-TABLE; + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + uses PORT-MODE-CONFIG-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-optics-speed-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-speed-cfg.yang new file mode 100644 index 000000000..483a58595 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-optics-speed-cfg.yang @@ -0,0 +1,114 @@ +module Cisco-IOS-XR-optics-speed-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-optics-speed-cfg"; + prefix optics-speed-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 optics-speed package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-19 { + description + "Added breakout config options under speed tuple"; + semver:module-version "1.1.0"; + } + revision 2021-06-16 { + description + "updated SpeedModeList with speed strings to make case insensitive"; + semver:module-version "1.0.0"; + } + revision 2021-04-19 { + description + "Implement speed none CLI"; + } + revision 2020-06-18 { + description + "Schema added."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Speed-breakout-type-list { + type string { + pattern "(4x10)|(4x25)|(2x50)|(8x50)|(4x100)|(3x100)|(2x100)|(1x100)"; + } + description + "4x10:4x10 optics breakout config, 4x25:4x25 + optics breakout config, 2x50:2x50 optics breakout + config, 8x50:8x50 optics breakout config, 4x100 + :4x100 optics breakout config, 3x100:3x100 optics + breakout config, 2x100:2x100 optics breakout + config, 1x100:1x100 optics breakout config"; + } + + typedef Speed-mode-list { + type string { + pattern "(1g)|(1G)|(10g)|(10G)|(25g)|(25G)|(40g)|(40G)|(50g)|(50G)|(100g)|(100G)|(200g)|(200G)|(400g)|(400G)|(none)"; + } + description + "1g:set optics 1g speed config, 1G:set optics 1G + speed config, 10g:set optics 10g speed config, + 10G:set optics 10G speed config, 25g:set optics + 25g speed config, 25G:set optics 25G speed config + , 40g:set optics 40g speed config, 40G:set optics + 40G speed config, 50g:set optics 50g speed config + , 50G:set optics 50G speed config, 100g:set + optics 100g speed config, 100G:set optics 100G + speed config, 200g:set optics 200g speed config, + 200G:set optics 200G speed config, 400g:set + optics 400g speed config, 400G:set optics 400G + speed config, none:delete the interface"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf speed-breakout { + type Speed-breakout-type-list; + description + "Speed breakout mode configuration"; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf speed { + type Speed-mode-list; + description + "optics speed set configuration"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper-sub1.yang new file mode 100644 index 000000000..014cce260 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper-sub1.yang @@ -0,0 +1,372 @@ +submodule Cisco-IOS-XR-orrspf-oper-sub1 { + belongs-to Cisco-IOS-XR-orrspf-oper { + prefix Cisco-IOS-XR-orrspf-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR orrspf package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Orrspf-ipv6-addr { + type inet:ipv6-address; + description + "Orrspf ipv6 addr"; + } + + typedef Orrspf-ipv4-addr { + type inet:ipv4-address; + description + "Orrspf ipv4 addr"; + } + + typedef Orrspf-af-id { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Orrspf af id"; + } + + typedef Orrspf-sh-node-id { + type yang:hex-string; + description + "Orrspf sh node id"; + } + + grouping ORRSPF-SH-TOPO { + description + "ORRSPF show topology bag"; + leaf spt-node { + type Orrspf-sh-node-id; + description + "SPT node data"; + } + leaf cost { + type uint32; + description + "SPT node cost"; + } + leaf next-hop { + type Orrspf-sh-node-id; + description + "SPT node next hop"; + } + leaf next-hop-valid { + type boolean; + description + "SPT node next hop valid"; + } + } + + grouping ORRSPF-SH-POLICY { + description + "ORRSPF show policy bag"; + container root-ip { + description + "Root IP Address"; + uses ORRSPF-IP-ADDR; + } + container primary-root-ip { + description + "Primary Root IP"; + uses ORRSPF-IP-ADDR; + } + container secondary-root-ip { + description + "Secondary Root IP"; + uses ORRSPF-IP-ADDR; + } + container tertiary-root-ip { + description + "Tertiary Root IP"; + uses ORRSPF-IP-ADDR; + } + leaf policy-name { + type string { + length "0..33"; + } + description + "Policy name"; + } + leaf af-id { + type uint8; + description + "Address family"; + } + leaf protocol-id { + type uint8; + description + "Protocol ID"; + } + leaf fa-num { + type uint8; + description + "Flex algo number"; + } + leaf fad-valid { + type boolean; + description + "Flex algo definition valid"; + } + leaf table-id { + type uint32; + description + "RIB Table ID"; + } + leaf root-node { + type Orrspf-sh-node-id; + description + "Root node ID"; + } + leaf fad-node { + type Orrspf-sh-node-id; + description + "Flex algo definition node ID"; + } + leaf num-spt-nodes { + type uint32; + description + "Number of nodes in SPT"; + } + leaf num-spt-calc { + type uint32; + description + "Number of SPT calculations"; + } + leaf num-spt-reset { + type uint32; + description + "Number of SPT reset"; + } + } + + grouping ORRSPF-IPV6-PFX { + description + "IPv6 prefix"; + leaf prefix { + type inet:ipv6-address; + description + "Prefix"; + } + leaf prefix-length { + type uint8; + description + "Prefix length"; + } + } + + grouping ORRSPF-IPV4-PFX { + description + "IPv4 prefix"; + leaf prefix { + type inet:ipv4-address; + description + "Prefix"; + } + leaf prefix-length { + type uint8; + description + "Prefix length"; + } + } + + grouping ORRSPF-IP-PFX { + description + "ORRSPF IP PFX"; + container ipv4 { + when "../af-id = 'ipv4'" { + description + "../AFId = 'IPv4'"; + } + description + "IPV4 prefix type"; + uses ORRSPF-IPV4-PFX; + } + container ipv6 { + when "../af-id = 'ipv6'" { + description + "../AFId = 'IPv6'"; + } + description + "IPV6 prefix type"; + uses ORRSPF-IPV6-PFX; + } + leaf af-id { + type Orrspf-af-id; + description + "AFId"; + } + } + + grouping ORRSPF-SH-PFX { + description + "ORRSPF show prefix bag"; + container prefix { + description + "IP Prefix"; + uses ORRSPF-IP-PFX; + } + leaf cost { + type uint32; + description + "Prefix cost"; + } + } + + grouping ORRSPF-SH-FAD { + description + "ORRSPF show fad data"; + leaf fa-num { + type uint8; + description + "Flex algo number"; + } + leaf fad-unsupported { + type boolean; + description + "Flex algo not supported"; + } + leaf fad-node { + type Orrspf-sh-node-id; + description + "Flex algo definition node ID"; + } + } + + grouping ORRSPF-SH-CTX { + description + "ORRSPF show context bag"; + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf protocol-id { + type uint8; + description + "Protocol ID"; + } + leaf mt-id { + type uint16; + description + "Multi-Topology ID"; + } + leaf area-id { + type uint32; + description + "Area ID"; + } + list fad-data { + description + "Flex algo definition"; + uses ORRSPF-SH-FAD; + } + } + + grouping ORRSPF-SH-LINK { + description + "ORRSPF show link data"; + leaf remote-node { + type Orrspf-sh-node-id; + description + "Remote node ID"; + } + leaf metric { + type uint32; + description + "Link metric"; + } + } + + grouping ORRSPF-IP-ADDR { + description + "ORRSPF IP ADDR"; + leaf af-id { + type Orrspf-af-id; + description + "AFId"; + } + leaf ipv4 { + when "../af-id = 'ipv4'" { + description + "../AFId = 'IPv4'"; + } + type Orrspf-ipv4-addr; + description + "IPV4 address type"; + } + leaf ipv6 { + when "../af-id = 'ipv6'" { + description + "../AFId = 'IPv6'"; + } + type Orrspf-ipv6-addr; + description + "IPV6 address type"; + } + } + + grouping ORRSPF-SH-GRAPH { + description + "ORRSPF show graph bag"; + container router-id { + description + "Router ID"; + uses ORRSPF-IP-ADDR; + } + leaf local-node { + type Orrspf-sh-node-id; + description + "Local node ID"; + } + list link-data { + description + "Link Data"; + uses ORRSPF-SH-LINK; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper.yang new file mode 100644 index 000000000..7bf88ae2a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-orrspf-oper.yang @@ -0,0 +1,160 @@ +module Cisco-IOS-XR-orrspf-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-orrspf-oper"; + prefix orrspf-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-orrspf-oper-sub1 { + revision-date 2019-04-05; + } + + 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 orrspf package operational data. + + This module contains definitions + for the following management objects: + orrspf: ORRSPF operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Orr-group-name { + type xr:Cisco-ios-xr-string { + length "1..33"; + } + description + "Orr group name"; + } + + container orrspf { + config false; + description + "ORRSPF operational data"; + container contexts { + description + "ORR Context table"; + list context { + key "name"; + description + "Information about one ORR Context"; + container context-graphs { + description + "Graph table of an ORR Context"; + list context-graph { + key "name"; + description + "Graph data in graph table of an ORR Context"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "NodeId"; + } + uses ORRSPF-SH-GRAPH; + } + } + container context-info { + description + "Information about one ORR Context"; + uses ORRSPF-SH-CTX; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Context Name"; + } + } + } + container orr-groups { + description + "ORRGroup table"; + list orr-group { + key "group-name"; + description + "Information about one ORR Group"; + container prefixes { + description + "Prefix table of an ORR Group"; + list prefix { + key "name"; + description + "Prefix in prefix table of an ORR group"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Prefix"; + } + uses ORRSPF-SH-PFX; + } + } + container policy { + description + "Policy of an ORR group"; + uses ORRSPF-SH-POLICY; + } + container topologies { + description + "Topology table of an ORR Group"; + list topology { + key "name"; + description + "Topology data in topology table of an ORR + Group"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "NodeId"; + } + uses ORRSPF-SH-TOPO; + } + } + container graphs { + description + "Graph table of an ORR Group"; + list graph { + key "name"; + description + "Graph data in graph table of an ORR Group"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "NodeId"; + } + uses ORRSPF-SH-GRAPH; + } + } + leaf group-name { + type Orr-group-name; + description + "ORR Group Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-cfg.yang new file mode 100644 index 000000000..492166710 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-cfg.yang @@ -0,0 +1,543 @@ +module Cisco-IOS-XR-osa-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-osa-cfg"; + prefix osa-cfg; + + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + 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 osa package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-10 { + description + "Added new CLI-trunk-mode for Openroadm in Skinny BO + 2022-09-08 + Fixing the Attention LED in Netconf + 2022-06-01 + Updated Attention LED CLI Port Range for supporting Skinny BO Ports + 2022-05-11 + Updated set of client rates supported in breakout configurations + 2022-03-16 + Enhancement to support hw-module operation for selecting the protection graph with available trunk-rate. + 2021-10-17 + Add New faceplate mapping support. + 2021-10-04 + Incremented MxponderSlice count from 2 to 8 + 2021-02-21 + Add Attention LED Support for NCS1004 Linecards."; + semver:module-version "3.0.0"; + } + revision 2020-10-09 { + description + "Initial Revision."; + semver:module-version "2.1.0"; + } + revision 2019-10-11 { + description + "Enhancement in CLI for 50G trunk-rate"; + semver:module-version "1.2.0"; + } + revision 2019-08-13 { + description + "Aligning modifications to 7.1.1."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-09-26 { + description + "Ains DTHO caveats fix."; + } + revision 2018-08-30 { + description + "Add Ains support."; + } + revision 2018-05-23 { + description + "Initial Revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Trunk-data-rate { + type enumeration { + enum "fifty-gig" { + value 1; + description + "FiftyGig"; + } + enum "hundred-gig" { + value 2; + description + "HundredGig"; + } + enum "one-hundred-fifty-gig" { + value 3; + description + "OneHundredFiftyGig"; + } + enum "two-hundred-gig" { + value 4; + description + "TwoHundredGig"; + } + enum "two-hundred-fifty-gig" { + value 5; + description + "TwoHundredFifty"; + } + enum "three-hundred-gig" { + value 6; + description + "ThreeHundredGig"; + } + enum "three-hundred-fifty-gig" { + value 7; + description + "ThreeHundredFiftyGig"; + } + enum "four-hundred-gig" { + value 8; + description + "FourHundredGig"; + } + enum "four-hundred-fifty-gig" { + value 9; + description + "FourHundredFiftyGig"; + } + enum "five-hundred-gig" { + value 10; + description + "FiveHundredGig"; + } + enum "five-hundred-fifty-gig" { + value 11; + description + "FiveHundredFiftyGig"; + } + enum "six-hundred-gig" { + value 12; + description + "SixHundredGig"; + } + } + description + "Trunk data rate"; + } + + typedef Trunk-mode { + type enumeration { + enum "open-roadm" { + value 1; + description + "OpenRoadm"; + } + enum "zr" { + value 2; + description + "ZR"; + } + } + description + "Trunk mode"; + } + + typedef Lane-client-data-rate { + type enumeration { + enum "ten-gig-e" { + value 1; + description + "TenGigE"; + } + enum "hundred-gig-e" { + value 2; + description + "HundredGigE"; + } + enum "otu2" { + value 4; + description + "OTU2"; + } + enum "otu2e" { + value 5; + description + "OTU2E"; + } + enum "fc16" { + value 9; + description + "FC16"; + } + enum "fc32" { + value 10; + description + "FC32"; + } + } + description + "Lane client data rate"; + } + + typedef Ains-soak-hours-range { + type uint32 { + range "0..48"; + } + description + "Ains soak hours range"; + } + + typedef Client-data-rate { + type enumeration { + enum "ten-gig-e" { + value 1; + description + "TenGigE"; + } + enum "hundred-gig-e" { + value 2; + description + "HundredGigE"; + } + enum "otu4" { + value 3; + description + "OTU4"; + } + enum "otu2" { + value 4; + description + "OTU2"; + } + enum "otu2e" { + value 5; + description + "OTU2E"; + } + enum "otu3" { + value 6; + description + "OTU3"; + } + enum "forty-gig-e" { + value 7; + description + "FortyGigE"; + } + enum "four-hundred-gig-e" { + value 8; + description + "FourHundredGigE"; + } + enum "fc16" { + value 9; + description + "FC16"; + } + enum "fc32" { + value 10; + description + "FC32"; + } + } + description + "Client data rate"; + } + + typedef Ains-soak-minutes-range { + type uint32 { + range "0..59"; + } + description + "Ains soak minutes range"; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container regen { + description + "Regenerator Module configuration"; + leaf trunk-rates { + type Trunk-data-rate; + description + "Trunk data rates"; + } + } + container attention-led { + description + "Attention LED configuration"; + container att-led-ports { + description + "Attention LED configuration"; + list att-led-port { + key "port-num"; + description + "Attention LED configuration on given Port + Number"; + leaf port-list { + type boolean; + description + "Enable Attention LED on given Port Number of + Line Card"; + } + leaf port-num { + type uint32 { + range "0..15"; + } + description + "Enable Attention LED on given Port Number of + Line Card"; + } + } + } + leaf all-port { + type boolean; + description + "Enable Attention LED on all the Ports of Line + Card"; + } + } + container mxponder-slices { + description + "Mxponder slice configuration"; + list mxponder-slice { + key "slice-id"; + description + "Slice configuration"; + container client-ains { + description + "AINS Soak Interval Value"; + leaf hours { + type Ains-soak-hours-range; + units "hour"; + description + "Hours"; + } + leaf minutes { + type Ains-soak-minutes-range; + units "minute"; + description + "Minutes"; + } + } + container mxp-slice-client-ports { + description + "Client Mode"; + list mxp-slice-client-port { + key "mxp-slice-port-id"; + description + "client port number"; + container mxp-slice-client-port-mode { + description + "Client Port Mode"; + leaf client-type { + type Client-data-rate; + description + "client traffic type"; + } + } + container mxp-slice-client-optics-lanes { + description + "Client Port"; + list mxp-slice-client-optics-lane { + key "optics-lane-id"; + description + "client lane number"; + leaf client-type { + type Lane-client-data-rate; + description + "client traffic type"; + } + leaf optics-lane-id { + type uint32 { + range "1..4"; + } + description + "Set client optics lane"; + } + } + } + leaf mxp-slice-port-id { + type uint32 { + range "0..12"; + } + description + "Set client port number"; + } + } + } + leaf trunk-rates { + type Trunk-data-rate; + description + "Trunk data rates"; + } + leaf lldp { + type boolean; + description + "Drop LLDP Packets"; + } + leaf trunk-mode { + type Trunk-mode; + description + "Trunk mode for graph"; + } + leaf arp-snoop { + type boolean; + description + "Enable ARP Snooping"; + } + leaf client-rates { + type Client-data-rate; + description + "Client data rates"; + } + leaf slice-id { + type uint32 { + range "0..7"; + } + description + "Set Slice"; + } + } + } + container mxponder { + description + "Mxponder module configuration"; + container client-ports { + description + "Client Mode"; + list client-port { + key "port-id"; + description + "client port number"; + container client-port-mode { + description + "Client Port Mode"; + leaf client-type { + type Client-data-rate; + description + "client traffic type"; + } + } + container client-optics-lanes { + description + "Client Port"; + list client-optics-lane { + key "lane-id"; + description + "client lane number"; + leaf client-type { + type Lane-client-data-rate; + description + "client traffic type"; + } + leaf lane-id { + type uint32 { + range "1..4"; + } + description + "Set client optics lane"; + } + } + } + leaf port-id { + type uint32 { + range "0..12"; + } + description + "Set client port number"; + } + } + } + container client-ains { + description + "AINS Soak Interval Value"; + leaf hours { + type Ains-soak-hours-range; + units "hour"; + description + "Hours"; + } + leaf minutes { + type Ains-soak-minutes-range; + units "minute"; + description + "Minutes"; + } + } + leaf trunk-rates { + type Trunk-data-rate; + description + "Trunk data rates"; + } + leaf lldp { + type boolean; + description + "Drop LLDP Packets"; + } + leaf arp-snoop { + type boolean; + description + "Enable ARP Snoop"; + } + leaf protected { + type boolean; + description + "Enable Protected"; + } + leaf split-client-port-map { + type boolean; + description + "New split client port mapping config"; + } + leaf client-rates { + type Client-data-rate; + description + "Client data rates"; + } + } + } + + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper-sub1.yang new file mode 100644 index 000000000..d5d1d9e8d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper-sub1.yang @@ -0,0 +1,226 @@ +submodule Cisco-IOS-XR-osa-controller-optics-oper-sub1 { + belongs-to Cisco-IOS-XR-osa-controller-optics-oper { + prefix Cisco-IOS-XR-osa-controller-optics-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR osa-controller-optics package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-18 { + description + "Initial Revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2019-02-16 { + description + "Initial Revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Osa-edm-fec { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "standard" { + value 1; + description + "Standard"; + } + enum "sd7" { + value 2; + description + "SD7"; + } + enum "sd15" { + value 3; + description + "SD15"; + } + enum "sd20" { + value 4; + description + "SD20"; + } + enum "sd27" { + value 5; + description + "SD27"; + } + enum "sd29" { + value 6; + description + "SD29"; + } + enum "staircase" { + value 7; + description + "Staircase"; + } + enum "sd15-de" { + value 8; + description + "SD15 DE"; + } + enum "staircase-de" { + value 9; + description + "Staircase DE"; + } + enum "c-fec" { + value 10; + description + "C FEC"; + } + enum "o-fec" { + value 11; + description + "O FEC"; + } + } + description + "Osa edm fec"; + } + + typedef Osa-edm-trunk-bitrate { + type enumeration { + enum "none" { + value 0; + description + "No Trunk Config"; + } + enum "fifty-gig" { + value 1; + description + "Fifty Gig"; + } + enum "hundred-gig" { + value 2; + description + "Hundred Gig"; + } + enum "one-fifty-gig" { + value 3; + description + "One Fifty Gig"; + } + enum "two-hundred-gig" { + value 4; + description + "Two Hundred Gig"; + } + enum "two-fifty-gig" { + value 5; + description + "Two Fifty Gig"; + } + enum "three-hundred-gig" { + value 6; + description + "Three Hundred Gig"; + } + enum "three-fifty-gig" { + value 7; + description + "Three Fifty Gig"; + } + enum "four-hundred-gig" { + value 8; + description + "Four Hundred Gig"; + } + enum "four-fifty-gig" { + value 9; + description + "Four Fifty Gig"; + } + enum "five-hundred-gig" { + value 10; + description + "Five Hundred Gig"; + } + enum "five-fifty-gig" { + value 11; + description + "Five Fifty Gig"; + } + enum "six-hundred-gig" { + value 12; + description + "Six Hundred Gig"; + } + } + description + "Osa edm trunk bitrate"; + } + + grouping OSA-OPTICS-BPS-GBD-CAPAB-INFO-B { + description + "OSA OPTICS BPS GBD CAPAB INFO B"; + leaf trunk-rate { + type Osa-edm-trunk-bitrate; + description + "Trunk Rate"; + } + leaf fec-type { + type Osa-edm-fec; + description + "Fec Type"; + } + leaf bps { + type string { + length "0..10"; + } + units "bit/s"; + description + "BPS"; + } + leaf baud-rate-approx { + type string { + length "0..11"; + } + description + "Approximated Baudrate"; + } + } + + grouping OSA-OPTICS-BPS-GBD-CAPAB-B { + description + "OSA Optics bps-gbd capab entries"; + list bps-baud-rate-capab-info { + description + "bps baud rate capab info"; + uses OSA-OPTICS-BPS-GBD-CAPAB-INFO-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper.yang new file mode 100644 index 000000000..7b0aa9c15 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-controller-optics-oper.yang @@ -0,0 +1,86 @@ +module Cisco-IOS-XR-osa-controller-optics-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-osa-controller-optics-oper"; + prefix osa-controller-optics-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-osa-controller-optics-oper-sub1 { + revision-date 2020-05-18; + } + + 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 osa-controller-optics package operational data. + + This module contains definitions + for the following management objects: + osa-controller-operational-info: OSA controller Operational + Information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-18 { + description + "Initial Revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2019-02-16 { + description + "Initial Revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container osa-controller-operational-info { + config false; + description + "OSA controller Operational Information"; + container osa-optics-controller { + description + "Optics Controller"; + container controller-names { + description + "OSA optics controller Table"; + list controller-name { + key "name"; + description + "Controller Name"; + container bps-baud-rate-info { + description + "Fetch all BPS-GBD Capability Info"; + uses OSA-OPTICS-BPS-GBD-CAPAB-B; + } + leaf name { + type xr:Interface-name; + description + "Controller name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-ct-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-ct-cfg.yang new file mode 100644 index 000000000..ae108918d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-ct-cfg.yang @@ -0,0 +1,173 @@ +module Cisco-IOS-XR-osa-ct-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-osa-ct-cfg"; + prefix osa-ct-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 osa-ct package configuration. + + This module contains definitions + for the following management objects: + resrv-cli: Reserve Slot Cli Configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-01 { + description + "Adding new bellatrix licenced LC in BH + 2022-08-25 + Updating new PID for ncs1010 Line and Amplifier cards and SkinnyBO license card + 2022-02-07 + Updating new PID Skinny BO LC for BH + 2022-01-17 + Adding new Skinny BO LC for BH + 2021-11-12 + Enhancement in CLI for NCS1010"; + semver:module-version "1.1.0"; + } + revision 2020-05-28 { + description + "Initial Revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Card { + type enumeration { + enum "ncs1k4-1.2t-k9" { + value 1; + description + "C Band Card"; + } + enum "ncs1k4-1.2t-l-k9" { + value 2; + description + "Licensed Card"; + } + enum "ncs1k4-1.2tl-k9" { + value 3; + description + "L Band Card"; + } + enum "ncs1k4-otn-xp" { + value 4; + description + "BO Card"; + } + enum "ncs1k4-otn-xpl" { + value 5; + description + "BO Licensed Card"; + } + enum "ncs1k4-2-qdd-c-k9" { + value 6; + description + "BELLATRIX C Band Card"; + } + enum "ncs1k4-lc-filler" { + value 7; + description + "Filler Card"; + } + enum "ncs1k-olt-c" { + value 8; + description + "Line Terminal Card"; + } + enum "ncs1k-olt-r-c" { + value 9; + description + "Line Terminal + Raman Card"; + } + enum "ncs1k-ila-c" { + value 10; + description + "Line Amplifier Card"; + } + enum "ncs1k-ila-r-c" { + value 11; + description + "Line Amplifier + Raman Card"; + } + enum "ncs1k-ila-2r-c" { + value 12; + description + "Line Amplifier + 2Raman Card"; + } + enum "ncs1k4-qxp-k9" { + value 13; + description + "SKINNY BO Card"; + } + enum "ncs1k4-qxp-l-k9" { + value 14; + description + "SKINNY BO Licen"; + } + enum "ncs1k-olt-l" { + value 15; + description + "L-Band Line Terminal Card"; + } + enum "ncs1k-ila-l" { + value 16; + description + "L-Band Line Amplifier Card"; + } + enum "ncs1k4-2-qdd-ck9l" { + value 17; + description + "BELLATRIX Licensed C Band Card"; + } + } + description + "Card"; + } + + container resrv-cli { + description + "Reserve Slot Cli Configuration"; + list slot-info-cli { + key "lc-slot"; + description + "location of LC"; + leaf card-type-cli { + type Card; + description + "CardType config type"; + } + leaf lc-slot { + type xr:Cisco-ios-xr-string; + description + "LC location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1.yang new file mode 100644 index 000000000..dc9af64d3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1.yang @@ -0,0 +1,213 @@ +submodule Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1 { + belongs-to Cisco-IOS-XR-osa-hwmod-linesys-oper { + prefix Cisco-IOS-XR-osa-hwmod-linesys-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR osa-hwmod-linesys package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-08 { + description + "Show Hwmod Enhancement."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Osa-data-chan-state { + type enumeration { + enum "nxc" { + value 0; + description + "Channel not cross-connected"; + } + enum "active" { + value 1; + description + "Channel cross-connected to data port"; + } + enum "fail" { + value 2; + description + "Channel filled with ASE"; + } + enum "ase" { + value 3; + description + "Data channel failed, pending transition to ASE"; + } + } + description + "Osa data chan state"; + } + + typedef Slice-config-states { + type enumeration { + enum "slice-no-config" { + value 0; + description + "Not Provisioned"; + } + enum "slice-config-in-progress" { + value 1; + description + "Provisioning In Progress"; + } + enum "slice-config-complete" { + value 2; + description + "Provisioned"; + } + enum "slice-config-failure" { + value 3; + description + "Provisioning Failed"; + } + enum "slice-unconfig-in-progress" { + value 4; + description + "Unprovisioning In Progress"; + } + } + description + "Slice config states"; + } + + grouping OSA-FLEXI-CHAN-INLINE-AMPLI-INFO-B { + description + "Inline Ampli Flexi Channel Information"; + leaf channel-number { + type uint32; + description + "ChannelNumber"; + } + leaf centre-frequency-thz { + type string { + length "0..11"; + } + description + "CentreFrequencyThz"; + } + leaf channel-width-ghz { + type string { + length "0..11"; + } + description + "ChannelWidthGhz"; + } + list overlapping-channel-info { + description + "overlapping channel info"; + uses OSA-FLEXI-CHAN-OVERLAPPING-CHANNEL-INFO-B; + } + } + + grouping OSA-HWMOD-INLINE-AMPLI-INFO-B { + description + "HWMOD In-Line Amplifier Information"; + leaf status { + type Slice-config-states; + description + "Status"; + } + list flexi-grid-info { + description + "flexi grid info"; + uses OSA-FLEXI-CHAN-INLINE-AMPLI-INFO-B; + } + } + + grouping OSA-FLEXI-CHAN-OVERLAPPING-CHANNEL-INFO-B { + description + "Overlapping Channels Information"; + leaf left-overlapping-channel { + type string { + length "0..5"; + } + description + "LeftOverlappingChannel"; + } + leaf right-overlapping-channel { + type string { + length "0..5"; + } + description + "RightOverlappingChannel"; + } + } + + grouping OSA-FLEXI-CHAN-TERMINAL-AMPLI-INFO-B { + description + "Terminal Ampli Flexi Channel Information"; + leaf channel-number { + type uint32; + description + "ChannelNumber"; + } + leaf centre-frequency-thz { + type string { + length "0..11"; + } + description + "CentreFrequencyThz"; + } + leaf channel-width-ghz { + type string { + length "0..11"; + } + description + "ChannelWidthGhz"; + } + leaf channel-status { + type Osa-data-chan-state; + description + "ChannelStatus"; + } + list overlapping-channel-info { + description + "overlapping channel info"; + uses OSA-FLEXI-CHAN-OVERLAPPING-CHANNEL-INFO-B; + } + } + + grouping OSA-HWMOD-TERMINAL-AMPLI-INFO-B { + description + "HWMOD Terminal Amplifier Information"; + leaf status { + type Slice-config-states; + description + "Status"; + } + list flexi-grid-info { + description + "flexi grid info"; + uses OSA-FLEXI-CHAN-TERMINAL-AMPLI-INFO-B; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper.yang new file mode 100644 index 000000000..a8be230cd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-hwmod-linesys-oper.yang @@ -0,0 +1,81 @@ +module Cisco-IOS-XR-osa-hwmod-linesys-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-osa-hwmod-linesys-oper"; + prefix osa-hwmod-linesys-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-osa-hwmod-linesys-oper-sub1 { + revision-date 2022-06-08; + } + + 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 osa-hwmod-linesys package operational data. + + This module contains definitions + for the following management objects: + osa: Show hw-module location + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-08 { + description + "Show Hwmod Enhancement."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container osa { + config false; + description + "Show hw-module location"; + container node-ids { + description + "Per-node OSA operational data"; + list node-id { + key "node-name"; + description + "Node ID of LC"; + container terminal-ampli { + description + "Display Terminal Amplifier Information"; + uses OSA-HWMOD-TERMINAL-AMPLI-INFO-B; + } + container inline-ampli { + description + "Display Inline Amplifier Information"; + uses OSA-HWMOD-INLINE-AMPLI-INFO-B; + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-linesystem-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-linesystem-cfg.yang new file mode 100644 index 000000000..cc9f55600 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-linesystem-cfg.yang @@ -0,0 +1,141 @@ +module Cisco-IOS-XR-osa-linesystem-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-osa-linesystem-cfg"; + prefix osa-linesystem-cfg; + + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + 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 osa-linesystem package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-03-30 { + description + "Initial Revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container inline-amplifier { + description + "Inline Amplifier Configuration"; + container ila-grid-mode { + description + "Grid Mode Type"; + container ila-channel-identifiers { + description + "Flex Grid"; + list ila-channel-identifier { + key "channel-number"; + description + "Channel Identifier"; + leaf channel-number { + type uint32; + description + "Channel Number"; + } + leaf centre-frequency { + type string { + length "1..11"; + } + description + "Centre Frequency in THz (Max Length 11, + resolution 1 MHz)"; + } + leaf channel-width { + type string { + length "1..9"; + } + description + "Channel Width in GHz (Max Length 9, + resolution 1 MHz)"; + } + } + } + } + } + container terminal-amplifier { + description + "Terminal Amplifier Configuration"; + container olt-grid-mode { + description + "Grid Mode Type"; + container olt-channel-identifiers { + description + "Flex Grid"; + list olt-channel-identifier { + key "channel-number"; + description + "Channel Identifier"; + leaf channel-number { + type uint32; + description + "Channel Number"; + } + leaf centre-frequency { + type string { + length "1..11"; + } + description + "Centre Frequency in THz (Max Length 11, + resolution 1 MHz)"; + } + leaf channel-width { + type string { + length "1..9"; + } + description + "Channel Width in GHz (Max Length 9, + resolution 1 MHz)"; + } + } + } + } + } + } + + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper-sub1.yang new file mode 100644 index 000000000..164870ea1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper-sub1.yang @@ -0,0 +1,578 @@ +submodule Cisco-IOS-XR-osa-oper-sub1 { + belongs-to Cisco-IOS-XR-osa-oper { + prefix Cisco-IOS-XR-osa-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR osa package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-16 { + description + "Enhancement to support hw-module working and protection path info."; + semver:module-version "1.5.0"; + } + revision 2020-06-01 { + description + "Enhancement to support LC startup config complete"; + semver:module-version "1.4.0"; + } + revision 2019-10-11 { + description + "Enhancement in CLI for 50G trunk-rate"; + semver:module-version "1.2.0"; + } + revision 2019-08-13 { + description + "Aligning modifications to 7.1.1."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-05-23 { + description + "Initial Revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Port-group-bitrate { + type enumeration { + enum "none" { + value 0; + description + "Invalid Port Group BW"; + } + enum "hundred-gig" { + value 1; + description + "Hundred Gig"; + } + enum "two-hundred-gig" { + value 2; + description + "Two Hundred Gig"; + } + enum "three-hundred-gig" { + value 3; + description + "Three Hundred Gig"; + } + enum "four-hundred-gig" { + value 4; + description + "Four Hundred Gig"; + } + } + description + "Port group bitrate"; + } + + typedef Capab { + type enumeration { + enum "txp" { + value 0; + description + "Transponder"; + } + enum "mxp" { + value 1; + description + "Muxponder"; + } + } + description + "Capab"; + } + + typedef Slice-config-states { + type enumeration { + enum "slice-no-config" { + value 0; + description + "Not Provisioned"; + } + enum "slice-config-in-progress" { + value 1; + description + "Provisioning In Progress"; + } + enum "slice-config-complete" { + value 2; + description + "Provisioned"; + } + enum "slice-config-failure" { + value 3; + description + "Provisioning Failed"; + } + enum "slice-unconfig-in-progress" { + value 4; + description + "Unprovisioning In Progress"; + } + } + description + "Slice config states"; + } + + typedef Slice-trunk-bitrate { + type enumeration { + enum "none" { + value 0; + description + "No Trunk Config"; + } + enum "fifty-gig" { + value 1; + description + "Fifty Gig"; + } + enum "hundred-gig" { + value 2; + description + "Hundred Gig"; + } + enum "one-fifty-gig" { + value 3; + description + "One Fifty Gig"; + } + enum "two-hundred-gig" { + value 4; + description + "Two Hundred Gig"; + } + enum "two-fifty-gig" { + value 5; + description + "Two Fifty Gig"; + } + enum "three-hundred-gig" { + value 6; + description + "Three Hundred Gig"; + } + enum "three-fifty-gig" { + value 7; + description + "Three Fifty Gig"; + } + enum "four-hundred-gig" { + value 8; + description + "Four Hundred Gig"; + } + enum "four-fifty-gig" { + value 9; + description + "Four Fifty Gig"; + } + enum "five-hundred-gig" { + value 10; + description + "Five Hundred Gig"; + } + enum "five-fifty-gig" { + value 11; + description + "Five Fifty Gig"; + } + enum "six-hundred-gig" { + value 12; + description + "Six Hundred Gig"; + } + } + description + "Slice trunk bitrate"; + } + + typedef Slice-client-bitrate { + type enumeration { + enum "none" { + value 0; + description + "No Client Config"; + } + enum "ten-gig-e" { + value 1; + description + "Ten Gig Ether"; + } + enum "hundred-gig-e" { + value 2; + description + "Hundred Gig Ether"; + } + enum "otu4" { + value 3; + description + "Hundred Gig OTU4"; + } + enum "otu2" { + value 4; + description + "Ten Gig OTU2"; + } + enum "otu2e" { + value 5; + description + "Ten Gig OTU2e"; + } + enum "otu3" { + value 6; + description + "Forty Gig OTU3"; + } + enum "forty-gig-e" { + value 7; + description + "Forty Gig Ether"; + } + enum "four-hundred-gig-e" { + value 8; + description + "FourHundred Gig Ether"; + } + enum "fibre-channel16g" { + value 9; + description + "Fibre Channel 16G"; + } + enum "fibre-channel32g" { + value 10; + description + "Fibre Channel 32G"; + } + enum "mixed" { + value 51; + description + "Mixed"; + } + } + description + "Slice client bitrate"; + } + + grouping OSA-HWMOD-MXPONDER-OP { + description + "Hwmod Mxponder Information"; + list slice-info { + description + "slice info"; + uses HW-MODULE-SLICE-INFO-B; + } + list module-info { + description + "module info"; + uses HW-MODULE-SLICE-INFO-B; + } + } + + grouping OSA-HWMOD-XPONDER-PORT-GROUP-B { + description + "Port Group Restrictions Information"; + leaf port-group-id { + type uint32; + description + "PortGroupId"; + } + leaf port-group-bandwidth { + type Port-group-bitrate; + description + "PortGroupBandwidth"; + } + list client-port { + description + "client port"; + uses OSA-HWMOD-XPONDER-PORT-B; + } + } + + grouping CLIENT-RATE-CAPAB-INFO-B { + description + "CLIENT RATE CAPAB INFO B"; + leaf client-rate { + type Slice-client-bitrate; + description + "ClientRate"; + } + leaf capab-type { + type Capab; + description + "CapabType"; + } + } + + grouping OSA-HWMOD-XPONDER-CLIENT-INFO-B { + description + "Client Port Information"; + leaf client-port { + type string { + length "0..64"; + } + description + "ClientPort"; + } + list client-rate-capab-info { + description + "client rate capab info"; + uses CLIENT-RATE-CAPAB-INFO-B; + } + } + + grouping OSA-HWMOD-XPONDER-GRAPH-CAPAB-INFO-B { + description + "Hardware capabilities Per Trunk Rate"; + leaf trunk-rate { + type Slice-trunk-bitrate; + description + "TrunkRate"; + } + list client-info { + description + "client info"; + uses OSA-HWMOD-XPONDER-CLIENT-INFO-B; + } + } + + grouping OSA-HWMOD-XPONDER-PORT-B { + description + "Port Number And Lane Information"; + leaf port-name { + type string { + length "0..64"; + } + description + "PortName"; + } + } + + grouping OSA-HWMOD-XPONDER-SLICE-CAPAB-INFO-B { + description + "Supported HW Capabilities For A Given Slice"; + list trunk-port { + description + "trunk port"; + uses OSA-HWMOD-XPONDER-PORT-B; + } + list graph-capab-info { + description + "graph capab info"; + uses OSA-HWMOD-XPONDER-GRAPH-CAPAB-INFO-B; + } + list port-group-restriction { + description + "port group restriction"; + uses OSA-HWMOD-XPONDER-PORT-GROUP-B; + } + } + + grouping HW-MODULE-EAST-PORT-ASSOCN-INFO-B { + description + "East Port Association Information"; + leaf west-port-name { + type string { + length "0..64"; + } + description + "WestPortName"; + } + } + + grouping HW-MODULE-REGEN-EAST-PORT-INFO-B { + description + "East Port Information"; + container east-port-association { + description + "east port association"; + uses HW-MODULE-EAST-PORT-ASSOCN-INFO-B; + } + leaf east-port-name { + type string { + length "0..64"; + } + description + "EastPortName"; + } + } + + grouping HW-MOD-REGEN-INFO-B { + description + "HWMOD Regen Module information"; + leaf trunk-rate { + type Slice-trunk-bitrate; + description + "TrunkRate"; + } + leaf status { + type Slice-config-states; + description + "Status"; + } + leaf-list slice-id { + type uint32; + description + "slice id"; + } + list east-port { + description + "east port"; + uses HW-MODULE-REGEN-EAST-PORT-INFO-B; + } + } + + grouping OSA-HWMOD-REGEN-OP { + description + "HWMOD Regen Information"; + list regen-slice-info { + description + "regen slice info"; + uses HW-MOD-REGEN-INFO-B; + } + list regen-module-info { + description + "regen module info"; + uses HW-MOD-REGEN-INFO-B; + } + } + + grouping HW-MODULE-SLICE-CLIENT-TRAFFIC-SPLIT-INFO-B { + description + "HW MODULE SLICE CLIENT TRAFFIC SPLIT INFO B"; + leaf trunk-name { + type string { + length "0..64"; + } + description + "TrunkName"; + } + leaf percentage { + type uint32; + description + "Percentage"; + } + } + + grouping HW-MODULE-SLICE-CLIENT-PORT-INFO-B { + description + "HW MODULE SLICE CLIENT PORT INFO B"; + leaf client-name { + type string { + length "0..64"; + } + description + "ClientName"; + } + leaf mapper-name { + type string; + description + "MapperName"; + } + leaf peer-name { + type string; + description + "PeerName"; + } + list trunk-port { + description + "trunk port"; + uses HW-MODULE-SLICE-CLIENT-TRAFFIC-SPLIT-INFO-B; + } + } + + grouping HW-MODULE-SLICE-INFO-B { + description + "Hwmod Slice Information"; + leaf client-rate { + type Slice-client-bitrate; + description + "ClientRate"; + } + leaf trunk-rate { + type Slice-trunk-bitrate; + description + "TrunkRate"; + } + leaf status { + type Slice-config-states; + description + "Status"; + } + leaf aps-working { + type string { + length "0..20"; + } + description + "ApsWorking"; + } + leaf aps-protection { + type string { + length "0..20"; + } + description + "ApsProtection"; + } + leaf-list slice-id-xr { + type uint32; + description + "slice id xr"; + } + leaf-list lldp-drop-status { + type boolean; + description + "lldp drop status"; + } + leaf-list mac-snoop-status { + type boolean; + description + "mac snoop status"; + } + leaf-list isprotection { + type boolean; + description + "isprotection"; + } + list client-port { + description + "client port"; + uses HW-MODULE-SLICE-CLIENT-PORT-INFO-B; + } + } + + grouping OSA-HWMOD-LC-STARTUP-CFG-B { + description + "LC Startup cfg complete"; + leaf lc-startup-complete { + type boolean; + description + "LcStartupComplete"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper.yang new file mode 100644 index 000000000..d10c2667b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-oper.yang @@ -0,0 +1,145 @@ +module Cisco-IOS-XR-osa-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-osa-oper"; + prefix osa-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-osa-oper-sub1 { + revision-date 2022-03-16; + } + + 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 osa package operational data. + + This module contains definitions + for the following management objects: + osa: Show hw-module location + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-16 { + description + "Enhancement to support hw-module working and protection path info."; + semver:module-version "1.5.0"; + } + revision 2020-06-01 { + description + "Enhancement to support LC startup config complete"; + semver:module-version "1.4.0"; + } + revision 2019-10-11 { + description + "Enhancement in CLI for 50G trunk-rate"; + semver:module-version "1.2.0"; + } + revision 2019-08-13 { + description + "Aligning modifications to 7.1.1."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-05-23 { + description + "Initial Revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container osa { + config false; + description + "Show hw-module location"; + container node-ids { + description + "Per-node OSA operational data"; + list node-id { + key "node-name"; + description + "Node ID of LC"; + container startup-config-complete { + description + "Display LC startup config complete"; + uses OSA-HWMOD-LC-STARTUP-CFG-B; + } + container mxponder-slices { + description + "Display Muxponder Slice Information"; + list mxponder-slice { + key "slice-id"; + description + "Per slice num data"; + leaf slice-id { + type uint32; + description + "Slice Id"; + } + uses HW-MODULE-SLICE-INFO-B; + } + } + container regen { + description + "Display Regeneration Module Information"; + uses OSA-HWMOD-REGEN-OP; + } + container xponder-capabilities { + description + "HW capability container"; + container mxponder-slice-hw-capabilities { + description + "MXP/TXP slice HW capabilities"; + list mxponder-slice-hw-capability { + key "slice-id"; + description + "Per slice HW capabilities"; + leaf slice-id { + type uint32; + description + "Slice Id"; + } + uses OSA-HWMOD-XPONDER-SLICE-CAPAB-INFO-B; + } + } + container mxponder-hw-capabilities { + description + "MXP/TXP bundle HW capabilities"; + uses OSA-HWMOD-XPONDER-SLICE-CAPAB-INFO-B; + } + } + container mxponder { + description + "Display Muxponder Information"; + uses OSA-HWMOD-MXPONDER-OP; + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-osa-sp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-sp-cfg.yang new file mode 100644 index 000000000..804f8d9e0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-osa-sp-cfg.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-osa-sp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-osa-sp-cfg"; + prefix osa-sp-cfg; + + 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 osa-sp package configuration. + + This module contains definitions + for the following management objects: + ains: AINS Soak Interval Value + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-03-09 { + description + "Initial Revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ains-soak-hrs-range { + type uint32 { + range "0..48"; + } + description + "Ains soak hrs range"; + } + + typedef Ains-soak-mins-range { + type uint32 { + range "0..59"; + } + description + "Ains soak mins range"; + } + + container ains { + description + "AINS Soak Interval Value"; + leaf hours { + type Ains-soak-hrs-range; + units "hour"; + description + "Hours"; + } + leaf minutes { + type Ains-soak-mins-range; + units "minute"; + description + "Minutes"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-otnifmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-otnifmib-cfg.yang new file mode 100644 index 000000000..56ba57c12 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-otnifmib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-otnifmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-otnifmib-cfg"; + prefix otnifmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 otnifmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container otn { + description + "CISCO-OTN-IF-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable ciscoOtnIfMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-cfg.yang new file mode 100644 index 000000000..95fbaf492 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-cfg.yang @@ -0,0 +1,172 @@ +module Cisco-IOS-XR-otnsec-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-otnsec-cfg"; + prefix otnsec-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 otnsec package configuration. + + This module contains definitions + for the following management objects: + otnsec-policies: Global scoped configuration for otnsec + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-01-07 { + description + "Should secure support removal from security policy"; + } + revision 2018-12-13 { + description + "Restricting sak-rekey-interval to 1209600"; + } + revision 2018-09-02 { + description + "Initial Config schema support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Cipher-suite { + type enumeration { + enum "aes-gcm-256" { + value 0; + description + "AES GCM 256"; + } + } + description + "Cipher suite"; + } + + typedef Secure-policy { + type enumeration { + enum "must-secure" { + value 1; + description + "Mandatory security"; + } + } + description + "Secure policy"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container odu-otnsec { + description + "ODU controller otnsec configuration"; + container ipv4 { + description + "Ipv4 address"; + leaf session-id { + type uint32 { + range "1..65535"; + } + description + "IKEv2 session ID"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + description + "Destination IP address"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + description + "Source IP address"; + } + } + leaf ik-ev2-profile { + type string; + description + "IKEv2 profile"; + } + leaf policy { + type string { + length "1..32"; + } + description + "Otnsec policy string"; + } + } + } + container otnsec-policies { + description + "Global scoped configuration for otnsec"; + list otnsec-policy { + key "policy-string"; + description + "Otnsec policy global configuration"; + leaf cipher-suite { + type Cipher-suite; + description + "Encryption/decryption datapath algorithm."; + } + leaf sak-rekey-interval { + type uint32 { + range "30..1209600"; + } + units "second"; + description + "Rekey timeout in seconds"; + } + leaf security-policy { + type Secure-policy; + description + "Securing policy"; + } + leaf exist { + type empty; + description + "Otnsec policy global configuration"; + } + leaf policy-string { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Policy string"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper-sub1.yang new file mode 100644 index 000000000..eb1721c84 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper-sub1.yang @@ -0,0 +1,230 @@ +submodule Cisco-IOS-XR-otnsec-oper-sub1 { + belongs-to Cisco-IOS-XR-otnsec-oper { + prefix Cisco-IOS-XR-otnsec-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR otnsec package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-07-24 { + description + "Addition for leaf Time to Rekey to display the key expiry time"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-10 { + description + "Initial Operational Schema Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Security-policy { + type enumeration { + enum "should-secure" { + value 0; + description + "Should Secure"; + } + enum "must-secure" { + value 1; + description + "Must Secure"; + } + } + description + "security policy"; + } + + typedef Cipher-suite { + type enumeration { + enum "aes-gcm-256" { + value 0; + description + "AES GCM 256"; + } + enum "aes-gcm-128" { + value 1; + description + "AES GCM 128"; + } + } + description + "cipher suite"; + } + + typedef Session-state { + type enumeration { + enum "init" { + value 0; + description + "INIT"; + } + enum "pending" { + value 1; + description + "PENDING"; + } + enum "secured" { + value 2; + description + "SECURED"; + } + enum "rekeying" { + value 3; + description + "REKEYING"; + } + } + description + "session state"; + } + + grouping OTNSEC-EDM-SUMMARY { + description + "otnsec summary bag"; + leaf source-ip { + type string; + description + "Source IP Address"; + } + leaf destination-ip { + type string; + description + "Destination IP Address"; + } + leaf session-state { + type Session-state; + description + "Session State"; + } + leaf session-id { + type uint16; + description + "Session ID"; + } + } + + grouping OTNSEC-PROGRAM-STATUS { + description + "otnsec programming status"; + leaf valid { + type boolean; + description + "valid"; + } + leaf spi { + type uint64; + description + "spi"; + } + leaf bn { + type uint64; + description + "bn"; + } + leaf install-time { + type string; + description + "install time"; + } + } + + grouping OTNSEC-EDM-DETAIL { + description + "otnsec details bag"; + leaf source-ip { + type string; + description + "Source IP Address"; + } + leaf destination-ip { + type string; + description + "Destination IP Address"; + } + leaf session-state { + type Session-state; + description + "Session State"; + } + leaf session-id { + type uint16; + description + "Session ID"; + } + leaf ik-ev2-profile { + type string; + description + "IKEv2 Profile"; + } + leaf otnsec-policy { + type string; + description + "IKEv2 Profile"; + } + leaf rekey-interval { + type uint32; + description + "Rekey Interval"; + } + leaf cipher-suite { + type Cipher-suite; + description + "cipher suite"; + } + leaf security-policy { + type Security-policy; + description + "security policy"; + } + leaf rekey-time { + type uint32; + description + "Rekey Time"; + } + leaf key-exipry { + type uint64; + description + "Time to key expiry"; + } + list inbound-sa { + max-elements "4"; + description + "Inbound SA"; + uses OTNSEC-PROGRAM-STATUS; + } + list outbound-sa { + max-elements "4"; + description + "Outbound SA"; + uses OTNSEC-PROGRAM-STATUS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper.yang new file mode 100644 index 000000000..f385325a6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-otnsec-oper.yang @@ -0,0 +1,86 @@ +module Cisco-IOS-XR-otnsec-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-otnsec-oper"; + prefix otnsec-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-otnsec-oper-sub1 { + revision-date 2019-07-24; + } + + 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 otnsec package operational data. + + This module contains definitions + for the following management objects: + odu-otnsec: Otnsec operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-07-24 { + description + "Addition for leaf Time to Rekey to display the key expiry time"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-10 { + description + "Initial Operational Schema Support"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container odu-otnsec { + config false; + description + "Otnsec operational data"; + container controllers { + description + "ALL Otnsec Port oper data"; + list controller { + key "controller-name"; + description + "Otnsec Port oper data"; + container detail { + description + "Otnsec detail operational data"; + uses OTNSEC-EDM-DETAIL; + } + container summary { + description + "Otnsec summary operational data"; + uses OTNSEC-EDM-SUMMARY; + } + leaf controller-name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-act.yang new file mode 100644 index 000000000..1b487c868 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-act.yang @@ -0,0 +1,183 @@ +module Cisco-IOS-XR-ownership-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ownership-act"; + prefix sb-ownership; + + import Cisco-IOS-XR-types { + prefix csc; + } + + 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 defines procedure to apply device ownership. + + Copyright (c) 2017 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with + or without modification, is permitted pursuant to, and + subject to the license terms contained in, the Simplified + BSD License set forth in Section 4.c of the IETF Trust''s + Legal Provisions Relating to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of this YANG module is part of RFC VVVV; see + the RFC itself for full legal notices."; + + revision 2021-11-25 { + description + "Removed signer from session-terminate"; + } + revision 2021-10-22 { + description + "NSO build related fixes"; + } + revision 2021-09-22 { + description + "Initial revision."; + } + + typedef Bool-Input { + type enumeration { + enum "false" { + value 0; + description + "No"; + } + enum "true" { + value 1; + description + "Yes"; + } + } + description + "Input true or false"; + } + + rpc oshp-ovoc-apply { + description + "Establishes ownership of the device/system. + Returns whether operation is succeeded or failed."; + input { + leaf ov-path { + type string; + mandatory true; + description + "Path to tar file containing Ownership Vouchers(OV) on local storage"; + } + leaf oc-path { + type string; + mandatory true; + description + "Path to Ownership Certificate(OC) CMS on local storage"; + } + leaf crl-optional { + type Bool-Input; + description + "CRL check enforcement ignore enable/disable"; + } + leaf cert-chain-partial-match { + type Bool-Input; + description + "Perform partial/full match of OC against trustpoint"; + } + csc:xr-task "system"; + csc:cli-command "platform security device-ownership [certificate-chain partial-match ] [ crl optional ]"; + } + csc:xr-task "system"; + } + rpc oshp-ct-session-terminate { + description + "Terminate an existing Re-Image Protection Session."; + csc:xr-task "system"; + csc:cli-command "platform security reimage-protection session-terminate"; + } + rpc oshp-reimage-protection-challenge { + description + "Enable or Disable Re-Image Protection - Challenge"; + input { + leaf reimage-protection { + type enumeration { + enum "enable" { + value 1; + description + "Enable re-image protection"; + } + enum "disable" { + value 2; + description + "Disable re-image protection"; + } + } + mandatory true; + description + "Re-image protection"; + } + leaf signer { + type enumeration { + enum "cisco" { + value 1; + description + "Use Cisco consent token key for challenge"; + } + enum "customer" { + value 2; + description + "Use Customer consent token key for challenge"; + } + } + mandatory true; + description + "Generate challenge string"; + } + } + output { + leaf challenge-string { + type string; + description + "Challenge string output"; + } + } + csc:xr-task "system"; + csc:cli-command "platform security reimage-protection [ enable | disable ] challenge [ cisco | customer ] "; + csc:xr-task "system"; + } + rpc oshp-reimage-protection-response { + description + "Enable or Disable Re-Image Protection - Response"; + input { + leaf reimage-protection { + type enumeration { + enum "enable" { + value 1; + description + "Enable re-image protection"; + } + enum "disable" { + value 2; + description + "Disable re-image protection"; + } + } + mandatory true; + description + "Re-image protection"; + } + leaf challenge-response { + type string; + mandatory true; + description + "Accept challenge response string"; + } + } + csc:xr-task "system"; + csc:cli-command "platform security reimage-protection [ enable | disable ] response "; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper-sub1.yang new file mode 100644 index 000000000..cb2369a9c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper-sub1.yang @@ -0,0 +1,78 @@ +submodule Cisco-IOS-XR-ownership-oper-sub1 { + belongs-to Cisco-IOS-XR-ownership-oper { + prefix Cisco-IOS-XR-ownership-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ownership package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OV-INFO { + description + "OV INFO"; + leaf serial-no { + type int32; + description + "serial number of OV"; + } + leaf pdc { + type string; + description + "PDC of OV"; + } + } + + grouping OWNERSHIP-INFO { + description + "ownership information bag "; + container ov-summary { + description + "ov summary"; + uses OV-INFO; + } + leaf oc-info { + type string; + description + "ownership certificate info"; + } + } + + grouping ANTITHEFT-INFO { + description + "ANTITHEFT INFO"; + leaf reimage-status { + type string; + description + "status of reimage flag"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper.yang new file mode 100644 index 000000000..3fcea8dd3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ownership-oper.yang @@ -0,0 +1,60 @@ +module Cisco-IOS-XR-ownership-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ownership-oper"; + prefix ownership-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ownership-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ownership package operational data. + + This module contains definitions + for the following management objects: + ownership: Ownership Operational Data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ownership { + config false; + description + "Ownership Operational Data"; + container anti-theft { + description + "operational Data for re-image status"; + uses ANTITHEFT-INFO; + } + container device-ownership { + description + "Oper Data for the device ownership"; + uses OWNERSHIP-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-parser-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-parser-cfg.yang new file mode 100644 index 000000000..615f567d8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-parser-cfg.yang @@ -0,0 +1,231 @@ +module Cisco-IOS-XR-parser-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-parser-cfg"; + prefix parser-cfg; + + 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 parser package configuration. + + This module contains definitions + for the following management objects: + parser: Parser configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-11-08 { + description + "IOS XR 7.2.1 revision"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2017-05-09 { + description + "IOS XR 6.3.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container parser { + description + "Parser configuration"; + container indentation { + description + "indentation tracking"; + leaf indentation-disable { + type boolean; + description + "disable the indentation"; + } + } + container alias { + description + "Alias for command mapping"; + container execs { + description + "Exec command alias"; + list exec { + key "identifier"; + description + "Exec alias name"; + leaf identifier { + type string { + length "1..30"; + } + description + "Exec Alias name"; + } + leaf identifier-xr { + type string; + mandatory true; + description + "Aliased exec command"; + } + } + } + container configurations { + description + "Configuration command alias"; + list configuration { + key "identifier"; + description + "Configuration Alias name"; + leaf identifier { + type string { + length "1..30"; + } + description + "Configuration alias name"; + } + leaf identifier-xr { + type string; + mandatory true; + description + "Aliased config command"; + } + } + } + container alls { + description + "Table of all aliases configured"; + list all { + key "identifier"; + description + "Alias name to command mapping"; + leaf identifier { + type string { + length "1..30"; + } + description + "Alias name"; + } + leaf identifier-xr { + type string; + mandatory true; + description + "The actual command"; + } + } + } + } + container logging-suppress { + description + "logging suppress deprecated"; + leaf deprecated { + type boolean; + description + "deprecating the logging suppress"; + } + } + container history { + description + "cli commands history"; + leaf size { + type uint32 { + range "1000..5000"; + } + description + "maximum number of commands in history"; + } + } + container interactive { + description + "interactive mode"; + leaf interactive-disable { + type boolean; + description + "disable interactive mode"; + } + } + container delete-optimize { + description + "Enable delete optimization for regular commit"; + leaf delete-optimize-enable { + type boolean; + description + "Enable the feature"; + } + } + container commit-optimized { + description + "Enable optimization for regular commit"; + leaf commit-optimized-enable { + type boolean; + description + "Enable the feature"; + } + } + container sysadmin-login-banner { + description + "Configuration to disable sysadmin login banner"; + leaf sysadmin-login-banner-disable { + type boolean; + description + "Disable sysadmin login banner"; + } + } + container interface-display { + description + "Configure the Interface display order"; + leaf slot-order { + type boolean; + description + "Configure Interface display order as slot order"; + } + } + container netmask-format { + description + "Ipv4 netmask-format to be configured"; + leaf bit-count { + type boolean; + description + "Enable ipv4 netmask-format as bit-count"; + } + } + container configuration { + description + "cli configuration services"; + container disable { + description + "disable for read-only access users"; + leaf usergroup { + type string; + description + "Disable config mode for usergroup"; + } + } + } + container submode-exit { + description + "Exit submode when only '!' seen in interactive + mode"; + leaf enable { + type boolean; + description + "Enable the feature"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-patch-panel-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-patch-panel-cfg.yang new file mode 100644 index 000000000..e1d1446ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-patch-panel-cfg.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-patch-panel-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-patch-panel-cfg"; + prefix patch-panel-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 patch-panel package configuration. + + This module contains definitions + for the following management objects: + patch-panel: patch-panel service submode + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container patch-panel { + presence "Indicates a patch-panel node is configured."; + description + "patch-panel service submode"; + leaf enable { + type empty; + mandatory true; + description + "Enable patch-panel service"; + } + leaf user-name { + type string; + description + "User name to be used for Authentication with + Patch-Panel"; + } + leaf password { + type xr:Proprietary-password; + description + "Password name to be used for Authentication with + Patch-Panel"; + } + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IP address for patch-panel"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-bng-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-bng-cfg.yang new file mode 100644 index 000000000..68c12e036 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-bng-cfg.yang @@ -0,0 +1,111 @@ +module Cisco-IOS-XR-pbr-bng-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-bng-cfg"; + prefix pbr-bng-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 pbr-bng package configuration. + + This module contains definitions + for the following management objects: + bng-pbr: Subscriber PBR configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Bng-pbr-http-enrichment-params { + type enumeration { + enum "subscriber-mac" { + value 1; + description + "Subscriber Mac"; + } + enum "subscriber-ip" { + value 2; + description + "Subscriber IPv4/IPv6 address"; + } + enum "host-name" { + value 4; + description + "Bng Router Hostname"; + } + enum "bng-identifier-interface" { + value 8; + description + "Bng Identifier interface"; + } + } + description + "Bng pbr http enrichment params"; + } + + container bng-pbr { + description + "Subscriber PBR configuration"; + container http-enrichment { + description + "HTTP Enrichment"; + container parameters { + presence "Indicates a parameters node is configured."; + description + "HTTP Enrichment parameters"; + leaf arg1 { + type Bng-pbr-http-enrichment-params; + mandatory true; + description + "first argument "; + } + leaf arg2 { + type Bng-pbr-http-enrichment-params; + description + "second argument "; + } + leaf arg3 { + type Bng-pbr-http-enrichment-params; + description + "Third argument "; + } + leaf arg4 { + type Bng-pbr-http-enrichment-params; + description + "Fourth argument "; + } + } + } + leaf bng-interface { + type xr:Interface-name; + description + "Interface for source address"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-cfg.yang new file mode 100644 index 000000000..ad2b9ec1d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-cfg.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-pbr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-cfg"; + prefix pbr-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 pbr package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-19 { + description + "PBR Flowspec config rollback error in module."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-05-17 { + description + "CSCvi93168 PBR commit replace feature."; + } + revision 2016-03-08 { + description + "Moved augment statement to a separate file"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container pbr { + description + "Interface PBR configuration"; + container service-policies { + description + "Ingress service policy"; + list service-policy { + key "service-policy"; + description + "Service policy details"; + leaf service-policy { + type string { + length "1..64"; + } + description + "Name of policy-map"; + } + } + } + leaf service-policy-in { + type string; + description + "Class for subscriber ingress policy"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-datatypes.yang new file mode 100644 index 000000000..bdf82720d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-datatypes.yang @@ -0,0 +1,53 @@ +module Cisco-IOS-XR-pbr-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-datatypes"; + prefix pbr-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vservice-nsh-path-id-range { + type uint32 { + range "1..16777215"; + } + description + "Vservice nsh path id range"; + } + + typedef Vservice-nsh-service-index-range { + type uint32 { + range "1..255"; + } + description + "Vservice nsh service index range"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper-sub1.yang new file mode 100644 index 000000000..8f154b5c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper-sub1.yang @@ -0,0 +1,302 @@ +submodule Cisco-IOS-XR-pbr-oper-sub1 { + belongs-to Cisco-IOS-XR-pbr-oper { + prefix Cisco-IOS-XR-pbr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pbr package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-02-21 { + description + "Adding HTTP Redirect stats per subs interface"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Policy-state { + type enumeration { + enum "active" { + value 0; + description + "active"; + } + enum "suspended" { + value 1; + description + "suspended"; + } + } + description + "Different Interface states"; + } + + grouping HTTP-ENRICH-STATS-ST { + description + "HTTP Enrichment Stats"; + leaf rqst-rcvd-packets { + type uint64; + description + "TotalNum of pkts HTTP request received"; + } + leaf rqst-rcvd-bytes { + type uint64; + units "byte"; + description + "TotalNum of Bytes HTTP request received"; + } + leaf drop-packets { + type uint64; + description + "Dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes"; + } + leaf resp-sent-packets { + type uint64; + description + "TotalNum of pkts HTTP Enrichment response sent"; + } + leaf resp-sent-bytes { + type uint64; + units "byte"; + description + "TotalNum of Bytes HTTP Enrichment response sent"; + } + leaf req-sent-packets { + type uint64; + description + "TotalNum of pkts HTTP Enrichment request sent"; + } + leaf tcp-sent-packets { + type uint64; + description + "TotalNum of pkts HTTP Enrichment TCP packet sent"; + } + leaf redirected-http-requests { + type uint64; + description + "TotalNum of HTTP requests redirected to client"; + } + } + + grouping HTTPR-STATS-ST { + description + "HTTPR Stats"; + leaf rqst-rcvd-packets { + type uint64; + description + "TotalNum of pkts HTTP request received"; + } + leaf rqst-rcvd-bytes { + type uint64; + units "byte"; + description + "TotalNum of Bytes HTTP request received"; + } + leaf drop-packets { + type uint64; + description + "Dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes"; + } + leaf resp-sent-packets { + type uint64; + description + "TotalNum of pkts HTTPR response sent"; + } + leaf resp-sent-bytes { + type uint64; + units "byte"; + description + "TotalNum of Bytes HTTPR response sent"; + } + } + + grouping GEN-STATS-ST { + description + "Counters common to all features"; + leaf transmit-packets { + type uint64; + units "byte"; + description + "Transmitted packets (packets/bytes)"; + } + leaf transmit-bytes { + type uint64; + units "byte"; + description + "Transmitted bytes (packets/bytes)"; + } + leaf total-drop-packets { + type uint64; + units "byte"; + description + "Dropped packets (packets/bytes)"; + } + leaf total-drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes (packets/bytes)"; + } + leaf total-drop-rate { + type uint32; + units "byte"; + description + "Total drop rate (packets/bytes)"; + } + leaf match-data-rate { + type uint32; + units "kbit/s"; + description + "Incoming matched data rate in kbps"; + } + leaf total-transmit-rate { + type uint32; + units "kbit/s"; + description + "Total transmit rate in kbps"; + } + leaf pre-policy-matched-packets { + type uint64; + description + "Matched pkts before applying policy"; + } + leaf pre-policy-matched-bytes { + type uint64; + units "byte"; + description + "Matched bytes before applying policy"; + } + } + + grouping CLASS-STATS { + description + "CLASS STATS"; + container general-stats { + description + "general stats"; + uses GEN-STATS-ST; + } + container httpr-stats { + description + "HTTPR stats"; + uses HTTPR-STATS-ST; + } + container http-enrich-stats { + description + "HTTP Enrichment stats"; + uses HTTP-ENRICH-STATS-ST; + } + leaf counter-validity-bitmask { + type uint64; + units "byte"; + description + " Bitmask to indicate which counter or counters + are undetermined. Counters will be marked + undetermined when one or more classes share + queues with class-default because in such cases + the value of counters for each class is invalid. + Based on the flag(s) set, the following counters + will be marked undetermined. For example, if + value of this object returned is 0x00000101, + counters + TransmitPackets/TransmitBytes/TotalTransmitRate + and DropPackets/DropBytes are undetermined + .0x00000001 - Transmit + (TransmitPackets/TransmitBytes/TotalTransmitRate + ), 0x00000002 - Drop + (TotalDropPackets/TotalDropBytes/TotalDropRate), + 0x00000004 - Httpr + (HttprTransmitPackets/HttprTransmitBytes), + 0x00000020 - HttpErich + (HttpErichTransmitPackets + /HttpEnrichTransmitBytes), "; + } + leaf class-name { + type string { + length "0..65"; + } + description + "ClassName"; + } + leaf class-id { + type uint32; + description + "ClassId"; + } + } + + grouping PBR-STATS { + description + "policy map statistics"; + leaf node-name { + type string { + length "0..42"; + } + description + "NodeName"; + } + leaf policy-name { + type string { + length "0..65"; + } + description + "PolicyName"; + } + leaf state { + type Policy-state; + description + "State"; + } + leaf state-description { + type string { + length "0..128"; + } + description + "StateDescription"; + } + list class-stat { + description + "Array of classes contained in policy"; + uses CLASS-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper.yang new file mode 100644 index 000000000..e7415d183 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-oper.yang @@ -0,0 +1,99 @@ +module Cisco-IOS-XR-pbr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-oper"; + prefix pbr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pbr-oper-sub1 { + revision-date 2020-02-21; + } + + 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 pbr package operational data. + + This module contains definitions + for the following management objects: + pbr: PBR operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-02-21 { + description + "Adding HTTP Redirect stats per subs interface"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container pbr { + config false; + description + "PBR operational data"; + container nodes { + description + "Node-specific PBR operational data"; + list node { + key "node-name"; + description + "PBR operational data for a particular node"; + container policy-map { + description + "Operational data for policymaps"; + container interfaces { + description + "Operational data for all interfaces"; + list interface { + key "interface-name"; + description + "PBR action data for a particular interface"; + container direction { + description + "PBR direction"; + container input { + description + "PBR policy statistics"; + uses PBR-STATS; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "The node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-subscriber-cfg.yang new file mode 100644 index 000000000..342e93579 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-subscriber-cfg.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-pbr-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-subscriber-cfg"; + prefix pbr-subscriber-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 pbr-subscriber package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PBR { + description + "Common node of ip-subscriber, subscriber-service, + ppp"; + container pbr { + description + "Dynamic Template PBR configuration"; + container service-policies { + description + "Ingress service policy"; + list service-policy { + key "service-policy"; + description + "Service policy details"; + leaf service-policy { + type string { + length "1..64"; + } + description + "Name of policy-map"; + } + } + } + leaf service-policy-in { + type string; + description + "Class for subscriber ingress policy"; + } + } + } + + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses PBR; + } + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses PBR; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses PBR; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vrf-policy-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vrf-policy-cfg.yang new file mode 100644 index 000000000..b85e4e88c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vrf-policy-cfg.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-pbr-vrf-policy-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-vrf-policy-cfg"; + prefix pbr-vrf-policy-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 pbr-vrf-policy package configuration. + + This module contains definitions + for the following management objects: + vrf-policy: VRF Policy PBR configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pbr-afi { + type string { + pattern "(ipv4)|(ipv6)"; + } + description + "ipv4: Comment: v4 string for , ipv6: + Comment: v6 string for "; + } + + container vrf-policy { + description + "VRF Policy PBR configuration"; + list vrf { + key "vrf-name"; + description + "VRF Name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + list afi { + key "afi-type"; + description + "address family"; + leaf service-policy-in { + type string; + description + "Policy map name"; + } + leaf afi-type { + type Pbr-afi; + description + "AFI name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper-sub1.yang new file mode 100644 index 000000000..fab364a43 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper-sub1.yang @@ -0,0 +1,293 @@ +submodule Cisco-IOS-XR-pbr-vservice-ea-oper-sub1 { + belongs-to Cisco-IOS-XR-pbr-vservice-ea-oper { + prefix Cisco-IOS-XR-pbr-vservice-ea-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pbr-vservice-ea package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vs-nsh-stats { + type enumeration { + enum "vs-nsh-stats-spi-si" { + description + "vs nsh stats spi si"; + } + enum "vs-nsh-stats-ter-min-ate" { + description + "vs nsh stats ter min ate"; + } + enum "vs-nsh-stats-sf" { + description + "vs nsh stats sf"; + } + enum "vs-nsh-stats-sff" { + description + "vs nsh stats sff"; + } + enum "vs-nsh-stats-sff-local" { + description + "vs nsh stats sff local"; + } + enum "vs-nsh-stats-sfp" { + description + "vs nsh stats sfp"; + } + enum "vs-nsh-stats-sfp-detail" { + description + "vs nsh stats sfp detail"; + } + enum "vs-nsh-stats-max" { + description + "vs nsh stats max"; + } + } + description + "Vs nsh stats"; + } + + grouping VS-NSH-SI-DATA { + description + "Service index stats counters"; + container spi-si { + when "../type = 'vs-nsh-stats-spi-si'" { + description + "../type = 'VS_NSH_STATS_SPI_SI'"; + } + description + "SF/SFF stats"; + uses VSERVICE-NSH-SPI-SI; + } + container term { + when "../type = 'vs-nsh-stats-ter-min-ate'" { + description + "../type = 'VS_NSH_STATS_TERMINATE'"; + } + description + "Terminate stats"; + uses VSERVICE-NSH-SPI-SI-TERMINATE; + } + leaf type { + type Vs-nsh-stats; + description + "type"; + } + } + + grouping VSERVICE-NSH-SI { + description + "si supported counters"; + container data { + description + "Stats counter for this index"; + uses VS-NSH-SI-DATA; + } + leaf si { + type uint8; + description + "Service index"; + } + } + + grouping VSERVICE-NSH-SFF-LOCAL { + description + "Local service-function-forwarder counters"; + leaf malformed-err-pkts { + type uint64; + description + "Number of packets with invalid NSH header"; + } + leaf lookup-err-pkts { + type uint64; + description + "Number of packets with unknown spi-si"; + } + leaf malformed-err-bytes { + type uint64; + units "byte"; + description + "Total bytes with invalid NSH header"; + } + leaf lookup-err-bytes { + type uint64; + units "byte"; + description + "Total bytes with unknown spi-si"; + } + } + + grouping VSERVICE-NSH-SF { + description + "Service function/forwarder counters"; + leaf processed-pkts { + type uint64; + description + "Number of packets processed"; + } + leaf processed-bytes { + type uint64; + units "byte"; + description + "Total bytes processed"; + } + } + + grouping VSERVICE-NSH-SPI-SI-TERMINATE { + description + "spi-si supported counters"; + leaf terminated-pkts { + type uint64; + description + "Number of terminated packets"; + } + leaf terminated-bytes { + type uint64; + units "byte"; + description + "Total bytes terminated"; + } + } + + grouping VSERVICE-NSH-SPI-SI { + description + "spi-si supported counters"; + leaf processed-pkts { + type uint64; + description + "Number of packets processed"; + } + leaf processed-bytes { + type uint64; + units "byte"; + description + "Total bytes processed"; + } + } + + grouping VSERVICE-NSH-SFP { + description + "spf supported counters"; + container spi-si { + description + "Service index counters"; + uses VSERVICE-NSH-SPI-SI; + } + container term { + description + "Terminate counters"; + uses VSERVICE-NSH-SPI-SI-TERMINATE; + } + } + + grouping VS-NSH-STATS-DATA { + description + "Union for stats counter"; + container sfp { + when "../type = 'vs-nsh-stats-sfp'" { + description + "../type = 'VS_NSH_STATS_SFP'"; + } + description + "SFP stats"; + uses VSERVICE-NSH-SFP; + } + container spi-si { + when "../type = 'vs-nsh-stats-spi-si'" { + description + "../type = 'VS_NSH_STATS_SPI_SI'"; + } + description + "SPI SI stats"; + uses VSERVICE-NSH-SPI-SI; + } + container term { + when "../type = 'vs-nsh-stats-ter-min-ate'" { + description + "../type = 'VS_NSH_STATS_TERMINATE'"; + } + description + "Terminate stats"; + uses VSERVICE-NSH-SPI-SI-TERMINATE; + } + container sf { + when "../type = 'vs-nsh-stats-sf'" { + description + "../type = 'VS_NSH_STATS_SF'"; + } + description + "Service function stats"; + uses VSERVICE-NSH-SF; + } + container sff { + when "../type = 'vs-nsh-stats-sff'" { + description + "../type = 'VS_NSH_STATS_SFF'"; + } + description + "Service function forwarder stats"; + uses VSERVICE-NSH-SF; + } + container sff-local { + when "../type = 'vs-nsh-stats-sff-local'" { + description + "../type = 'VS_NSH_STATS_SFF_LOCAL'"; + } + description + "Local service function forwarder stats"; + uses VSERVICE-NSH-SFF-LOCAL; + } + leaf type { + type Vs-nsh-stats; + description + "type"; + } + } + + grouping VSERVICE-EDM-NSH-STATS-INFO { + description + "NSH stats bag"; + container data { + description + "Statistics data"; + uses VS-NSH-STATS-DATA; + } + list si-arr { + description + "SI array in case of detail stats"; + uses VSERVICE-NSH-SI; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper.yang new file mode 100644 index 000000000..0aedffafb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-ea-oper.yang @@ -0,0 +1,182 @@ +module Cisco-IOS-XR-pbr-vservice-ea-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-vservice-ea-oper"; + prefix pbr-vservice-ea-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-pbr-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-pbr-vservice-ea-oper-sub1 { + revision-date 2019-04-05; + } + + 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 pbr-vservice-ea package operational data. + + This module contains definitions + for the following management objects: + service-function-chaining: NSH Service Function Chaining + operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container service-function-chaining { + config false; + description + "NSH Service Function Chaining operational data"; + container nodes { + description + "Node-specific NSH Service Function Chaining + operational data"; + list node { + key "node-name"; + description + "NSH operational data for a particular node"; + container process { + description + "Client Process"; + container service-function-path { + description + "Service Function Path operational data"; + container path-ids { + description + "Service Function Path Id "; + list path-id { + key "id"; + description + "Specific Service-Function-Path identifier "; + container service-indexes { + description + "Service Index Belonging to Path"; + list service-index { + key "index"; + description + "Service index operational data belonging + to this path"; + leaf index { + type dt1:Vservice-nsh-service-index-range; + description + "Service Index"; + } + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + container stats { + description + "SFP Statistics"; + container detail { + description + "Detail statistics per service index "; + uses VSERVICE-EDM-NSH-STATS-INFO; + } + container summarized { + description + "Combined statistics of all service index + in service functionpath"; + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + leaf id { + type dt1:Vservice-nsh-path-id-range; + description + "Specific Service-Function-Path identifier"; + } + } + } + } + container service-function { + description + "Service Function operational data"; + container sf-names { + description + "List of Service Function Names"; + list sf-name { + key "name"; + description + "Name of Service Function"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name"; + } + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + } + container service-function-forwarder { + description + "Service Function Forwarder operational data"; + container local { + description + "Local Service Function Forwarder operational + data"; + container error { + description + "Error Statistics for local service function + forwarder"; + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + container sff-names { + description + "List of Service Function Forwarder Names"; + list sff-name { + key "name"; + description + "Name of Service Function Forwarder"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name"; + } + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node to collect statistics from"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1.yang new file mode 100644 index 000000000..7f2105d13 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1.yang @@ -0,0 +1,293 @@ +submodule Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1 { + belongs-to Cisco-IOS-XR-pbr-vservice-mgr-oper { + prefix Cisco-IOS-XR-pbr-vservice-mgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pbr-vservice-mgr package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vs-nsh-stats { + type enumeration { + enum "vs-nsh-stats-spi-si" { + description + "vs nsh stats spi si"; + } + enum "vs-nsh-stats-ter-min-ate" { + description + "vs nsh stats ter min ate"; + } + enum "vs-nsh-stats-sf" { + description + "vs nsh stats sf"; + } + enum "vs-nsh-stats-sff" { + description + "vs nsh stats sff"; + } + enum "vs-nsh-stats-sff-local" { + description + "vs nsh stats sff local"; + } + enum "vs-nsh-stats-sfp" { + description + "vs nsh stats sfp"; + } + enum "vs-nsh-stats-sfp-detail" { + description + "vs nsh stats sfp detail"; + } + enum "vs-nsh-stats-max" { + description + "vs nsh stats max"; + } + } + description + "Vs nsh stats"; + } + + grouping VS-NSH-SI-DATA { + description + "Service index stats counters"; + container spi-si { + when "../type = 'vs-nsh-stats-spi-si'" { + description + "../type = 'VS_NSH_STATS_SPI_SI'"; + } + description + "SF/SFF stats"; + uses VSERVICE-NSH-SPI-SI; + } + container term { + when "../type = 'vs-nsh-stats-ter-min-ate'" { + description + "../type = 'VS_NSH_STATS_TERMINATE'"; + } + description + "Terminate stats"; + uses VSERVICE-NSH-SPI-SI-TERMINATE; + } + leaf type { + type Vs-nsh-stats; + description + "type"; + } + } + + grouping VSERVICE-NSH-SI { + description + "si supported counters"; + container data { + description + "Stats counter for this index"; + uses VS-NSH-SI-DATA; + } + leaf si { + type uint8; + description + "Service index"; + } + } + + grouping VSERVICE-NSH-SFF-LOCAL { + description + "Local service-function-forwarder counters"; + leaf malformed-err-pkts { + type uint64; + description + "Number of packets with invalid NSH header"; + } + leaf lookup-err-pkts { + type uint64; + description + "Number of packets with unknown spi-si"; + } + leaf malformed-err-bytes { + type uint64; + units "byte"; + description + "Total bytes with invalid NSH header"; + } + leaf lookup-err-bytes { + type uint64; + units "byte"; + description + "Total bytes with unknown spi-si"; + } + } + + grouping VSERVICE-NSH-SF { + description + "Service function/forwarder counters"; + leaf processed-pkts { + type uint64; + description + "Number of packets processed"; + } + leaf processed-bytes { + type uint64; + units "byte"; + description + "Total bytes processed"; + } + } + + grouping VSERVICE-NSH-SPI-SI-TERMINATE { + description + "spi-si supported counters"; + leaf terminated-pkts { + type uint64; + description + "Number of terminated packets"; + } + leaf terminated-bytes { + type uint64; + units "byte"; + description + "Total bytes terminated"; + } + } + + grouping VSERVICE-NSH-SPI-SI { + description + "spi-si supported counters"; + leaf processed-pkts { + type uint64; + description + "Number of packets processed"; + } + leaf processed-bytes { + type uint64; + units "byte"; + description + "Total bytes processed"; + } + } + + grouping VSERVICE-NSH-SFP { + description + "spf supported counters"; + container spi-si { + description + "Service index counters"; + uses VSERVICE-NSH-SPI-SI; + } + container term { + description + "Terminate counters"; + uses VSERVICE-NSH-SPI-SI-TERMINATE; + } + } + + grouping VS-NSH-STATS-DATA { + description + "Union for stats counter"; + container sfp { + when "../type = 'vs-nsh-stats-sfp'" { + description + "../type = 'VS_NSH_STATS_SFP'"; + } + description + "SFP stats"; + uses VSERVICE-NSH-SFP; + } + container spi-si { + when "../type = 'vs-nsh-stats-spi-si'" { + description + "../type = 'VS_NSH_STATS_SPI_SI'"; + } + description + "SPI SI stats"; + uses VSERVICE-NSH-SPI-SI; + } + container term { + when "../type = 'vs-nsh-stats-ter-min-ate'" { + description + "../type = 'VS_NSH_STATS_TERMINATE'"; + } + description + "Terminate stats"; + uses VSERVICE-NSH-SPI-SI-TERMINATE; + } + container sf { + when "../type = 'vs-nsh-stats-sf'" { + description + "../type = 'VS_NSH_STATS_SF'"; + } + description + "Service function stats"; + uses VSERVICE-NSH-SF; + } + container sff { + when "../type = 'vs-nsh-stats-sff'" { + description + "../type = 'VS_NSH_STATS_SFF'"; + } + description + "Service function forwarder stats"; + uses VSERVICE-NSH-SF; + } + container sff-local { + when "../type = 'vs-nsh-stats-sff-local'" { + description + "../type = 'VS_NSH_STATS_SFF_LOCAL'"; + } + description + "Local service function forwarder stats"; + uses VSERVICE-NSH-SFF-LOCAL; + } + leaf type { + type Vs-nsh-stats; + description + "type"; + } + } + + grouping VSERVICE-EDM-NSH-STATS-INFO { + description + "NSH stats bag"; + container data { + description + "Statistics data"; + uses VS-NSH-STATS-DATA; + } + list si-arr { + description + "SI array in case of detail stats"; + uses VSERVICE-NSH-SI; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper.yang new file mode 100644 index 000000000..901f4b87d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pbr-vservice-mgr-oper.yang @@ -0,0 +1,164 @@ +module Cisco-IOS-XR-pbr-vservice-mgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pbr-vservice-mgr-oper"; + prefix pbr-vservice-mgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-pbr-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-pbr-vservice-mgr-oper-sub1 { + revision-date 2019-04-05; + } + + 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 pbr-vservice-mgr package operational data. + + This module contains definitions + for the following management objects: + global-service-function-chaining: NSH Service Function + Chaining global operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container global-service-function-chaining { + config false; + description + "NSH Service Function Chaining global operational + data"; + container service-function-path { + description + "Service Function Path operational data"; + container path-ids { + description + "Service Function Path Id "; + list path-id { + key "id"; + description + "Specific Service-Function-Path identifier "; + container stats { + description + "SFP Statistics"; + container detail { + description + "Detail statistics per service index "; + uses VSERVICE-EDM-NSH-STATS-INFO; + } + container summarized { + description + "Combined statistics of all service index in + service functionpath"; + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + container service-indexes { + description + "Service Index Belonging to Path"; + list service-index { + key "index"; + description + "Service index operational data belonging to + this path"; + leaf index { + type dt1:Vservice-nsh-service-index-range; + description + "Service Index"; + } + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + leaf id { + type dt1:Vservice-nsh-path-id-range; + description + "Specific Service-Function-Path identifier"; + } + } + } + } + container service-function { + description + "Service Function operational data"; + container sf-names { + description + "List of Service Function Names"; + list sf-name { + key "name"; + description + "Name of Service Function"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name"; + } + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + } + container service-function-forwarder { + description + "Service Function Forwarder operational data"; + container sff-names { + description + "List of Service Function Forwarder Names"; + list sff-name { + key "name"; + description + "Name of Service Function Forwarder"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name"; + } + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + container local { + description + "Local Service Function Forwarder operational + data"; + container error { + description + "Error Statistics for local service function + forwarder"; + uses VSERVICE-EDM-NSH-STATS-INFO; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-cfg.yang new file mode 100644 index 000000000..3083b30b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-cfg.yang @@ -0,0 +1,1389 @@ +module Cisco-IOS-XR-perf-meas-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-perf-meas-cfg"; + prefix perf-meas-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 perf-meas package configuration. + + This module contains definitions + for the following management objects: + performance-measurement: The root of performance-measurement + configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-15 { + description + "Added support for npu offload. + 2021-11-18 + Deprecate trnasport specific delay and liveness detection name profile configuration. + 2021-10-27 + Added tx-interval to profile configuration."; + semver:module-version "5.1.0"; + } + revision 2021-09-28 { + description + "Deprecate measurement-mode in liveness profile. + 2021-06-15 + TWAMP-Light querier source and destination port range updated to 1024 - 14999."; + semver:module-version "5.0.0"; + } + revision 2020-12-19 { + description + "Updated liveness profile for endpoint support. + 2020-12-12 + Add interface delay-profile name schema class and hide delay-profile liveness-detction. + 2020-12-02 + Added sr-policy liveness profile config schema. + 2020-11-16 + Added default keyword for default profile configuration. + 2020-10-27 + Endpoint support. + 2020-10-27 + Added anomaly support for sr-policy min delay metrics. + 2020-10-02 + Added anomaly support for interface min delay metrics + 2020-07-21 + Remove deprecated interface profile probe interval and burst interval."; + semver:module-version "4.0.0"; + } + revision 2020-03-31 { + description + "721 nohelp CLI for liveness, loopback, endpoint, src-port, named profile, distribution. + 2020-02-24 + Modifid type of service knobs from array to integer. + 2020-02-20 + Modifid type of service knobs from array to integer. + 2020-01-08 + Added new configure knob to specify source port for end-to-end DM session on RP. + 2019-11-29 + Revision IOS XR 7.2.1 Added PM named profile development. + 2019-11-14 + Revision IOS XR 7.2.1 Upate PM advertise delay config range."; + semver:module-version "3.0.0"; + } + revision 2019-09-18 { + description + "Hid and disabled unsupported features for 7.1.1."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-17 { + description + "Revision Zero."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pm-vrf-name-max-length { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Pm vrf name max length"; + } + + typedef Profile-name-max-length { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Profile name max length"; + } + + typedef Pm-measurement-mode { + type enumeration { + enum "pm-measurement-mode-type-one-way" { + value 0; + description + "One-way measurement collecting only timestamp 1 + and 2"; + } + enum "pm-measurement-mode-type-two-way" { + value 1; + description + "two-way measurement collecting only timestamp 1 + , 2, 3 and 4"; + } + enum "pm-measurement-mode-type-loop-back" { + value 2; + description + "loopback measurement collecting only timestamp + 1 and 4"; + } + } + description + "Pm measurement mode"; + } + + typedef Pm-afi { + type string { + pattern "(ipv4)|(ipv6)"; + } + description + "ipv4: Comment: v4 address family string, ipv6: + Comment: v6 address family string"; + } + + typedef Pm-protocol-and-encap { + type enumeration { + enum "pm-payload-protocol-type-pm-mpls" { + value 1; + description + "Use RF6374 with MPLS Encapsulation"; + } + enum "pm-payload-protocol-type-twamp-light" { + value 3; + description + "Use RFC5357"; + } + } + description + "Pm protocol and encap"; + } + + typedef Pm-ip-address { + type enumeration { + enum "pm-ip-address-type-ipv4" { + value 0; + description + "IPv4 nexthop address"; + } + enum "pm-ip-address-type-ipv6" { + value 1; + description + "IPv6 nexthop address"; + } + enum "pm-ip-address-type-unknown" { + value 2; + description + "unknown nexthop addrss type"; + } + } + description + "Pm ip address"; + } + + typedef Pm-ld-measurement-mode { + type enumeration { + enum "pm-measurement-mode-type-loop-back" { + value 2; + description + "loopback measurement collecting only timestamp + 1 and 4"; + } + } + description + "Pm ld measurement mode"; + } + + grouping LIVENESS-DETECTION { + description + "Common node of liveness-profile-endpoint, + liveness-name-profile-endpoint"; + container liveness-detection { + description + "PM Endpoint Liveness Detection"; + container logging { + description + "Enable syslog for liveness detection"; + leaf state-change { + type empty; + description + "Emit syslog when the liveness state change + detected"; + } + } + leaf multiplier { + type uint32 { + range "2..10"; + } + description + "Liveness detection multiplier"; + } + } + } + + grouping THRESHOLD-CROSSING-CHECK-MINIMUM-DELAY { + description + "Common node of delay-profile-rsvp-te, + delay-profile-sr-policy, delay-profile-endpoint, + delay-name-profile-sr-policy, + delay-name-profile-endpoint, delay-name-profile"; + leaf threshold-crossing-check-minimum-delay { + type boolean; + description + "Enable Minimum-delay Threshold-check."; + } + } + + grouping NPU-OFFLOAD { + description + "Common node of liveness-profile-sr-policy, + liveness-name-profile-sr-policy"; + container npu-offload { + description + "PM NPU offload"; + leaf enable { + type boolean; + description + "Set to true to enable and false to disable"; + } + } + } + + grouping THRESHOLD-CROSSING-CHECK-AVERAGE-DELAY { + description + "Common node of delay-profile-rsvp-te, + delay-profile-sr-policy, delay-profile-endpoint, + delay-name-profile-sr-policy, + delay-name-profile-endpoint, delay-name-profile"; + leaf threshold-crossing-check-average-delay { + type boolean; + description + "Enable Average-delay Threshold-check."; + } + } + + grouping PM-LIVENESS-DETECTION { + description + "Common node of liveness-profile-sr-policy, + liveness-name-profile-sr-policy"; + container pm-liveness-detection { + description + "PM Liveness Detection"; + leaf multiplier { + type uint32 { + range "2..10"; + } + description + "Liveness detection multiplier"; + } + } + } + + grouping ADVERTISEMENT { + description + "Common node of delay-profile-interface, + delay-profile-sr-policy, delay-profile-rsvp-te, + delay-profile-endpoint, + delay-name-profile-interface, + delay-name-profile-sr-policy, + delay-name-profile-endpoint, delay-name-profile"; + container advertisement { + description + "Advertisement Profile"; + container logging { + description + "Syslog configuration options"; + leaf delay-exceeded { + type empty; + description + "Emit syslog when the delay exceeds the + threshold"; + } + } + container anomaly-check { + description + "Anomaly Check Advertisement Profile"; + container bounds { + description + "Range of upper and lower bound in uSec"; + leaf upper-bound { + type uint32 { + range "0..200000"; + } + description + "Upper Bound in uSec"; + } + leaf lower-bound { + type uint32 { + range "0..200000"; + } + description + "Lower Bound in uSec"; + } + } + } + container accelerated { + description + "Accelerated Advertisement Profile"; + leaf threshold { + type uint32 { + range "0..100"; + } + units "percentage"; + default "20"; + description + "Accelerated advertisement threshold percentage"; + } + leaf minimum-change { + type uint32 { + range "0..100000"; + } + default "500"; + description + "Accelerated advertisement minimum value in + uSec"; + } + leaf enable { + type empty; + description + "Enable Accelerated Advertisement"; + } + } + container periodic { + description + "Periodic Advertisement Profile"; + leaf interval { + type uint32 { + range "30..3600"; + } + units "second"; + default "120"; + description + "Periodic advertisement and metric aggregation + interval in seconds"; + } + leaf threshold { + type uint32 { + range "0..100"; + } + units "percentage"; + default "10"; + description + "Periodic advertisement threshold percentage + change (compared to last advertisement)"; + } + leaf minimum-change { + type uint32 { + range "0..100000"; + } + description + "Periodic advertisement minimum change in uSec + (compared to last advertisement)"; + } + leaf disable { + type empty; + description + "Enable Performance Measurement Periodic + Advertisement"; + } + } + } + } + + grouping THRESHOLD-CROSSING-CHECK-MAXIMUM-DELAY { + description + "Common node of delay-profile-rsvp-te, + delay-profile-sr-policy, delay-profile-endpoint, + delay-name-profile-sr-policy, + delay-name-profile-endpoint, delay-name-profile"; + leaf threshold-crossing-check-maximum-delay { + type boolean; + description + "Enable Maximum-delay Threshold-check."; + } + } + + grouping PROBE { + description + "Common node of delay-profile-endpoint, + delay-name-profile-endpoint"; + container probe { + description + "PM Delay Profile Probe"; + container type-of-service { + description + "PM Delay Profile Type Of Service"; + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + } + leaf tx-interval { + type uint32 { + range "30000..15000000"; + } + description + "The value for delay profile probe packet + transmission interval in uSec"; + } + leaf computation-interval { + type uint32 { + range "1..3600"; + } + units "second"; + description + "The value for delay profile probe computation + interval in seconds"; + } + leaf measurement-mode { + type Pm-measurement-mode; + description + "Configuration for measurement mode"; + } + leaf burst-interval { + type uint32 { + range "30..15000"; + } + status deprecated; + description + "PM Delay Profile Probe Burst Interval + (Deprecated in IOS-XR 7.6.1. Please use + TXInterval.)"; + } + } + } + + grouping PM-SRPOLICY-PROBE-CFG-PROBE { + description + "Common node of delay-profile-endpoint, + delay-name-profile-endpointCommon node of + delay-profile-sr-policy, + delay-name-profile-sr-policy"; + container probe { + description + "PM Delay Profile Probe"; + container type-of-service { + description + "PM Delay Profile Type Of Service"; + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + leaf traffic-class-value { + type uint32 { + range "0..7"; + } + description + "Traffic Class value indicating TOS level used + by protocol pm-mpls"; + } + } + container sweep { + description + "Enable ECMP hashing by sweeping a field in the + probe packet"; + container destination { + description + "Configuration for destination address sweeping + range, only IPv4 address is supported. Used by + IPv4, IPv6 and NULL endpoint SR Policy."; + leaf address-type { + type Pm-ip-address; + description + "Type of address (Only supports + PM_IP_ADDRESS_TYPE_IPV4)"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Starting address for destination sweeping"; + } + leaf range { + type uint32 { + range "0..128"; + } + description + "Sweeping range"; + } + } + } + container protocol { + description + "Protocol used for measurement probe messages"; + leaf protocol-type { + type Pm-protocol-and-encap; + description + "Type of protocol"; + } + } + leaf tx-interval { + type uint32 { + range "30000..15000000"; + } + description + "The value for delay profile probe packet + transmission interval in uSec"; + } + leaf computation-interval { + type uint32 { + range "1..3600"; + } + units "second"; + description + "The value for delay profile probe computation + interval in seconds"; + } + leaf measurement-mode { + type Pm-measurement-mode; + description + "Configuration for measurement mode"; + } + leaf burst-interval { + type uint32 { + range "30..15000"; + } + status deprecated; + description + "PM Delay Profile Probe Burst Interval + (Deprecated in IOS-XR 7.6.1. Please use + TXInterval.)"; + } + } + } + + grouping PM-PROBE-CFG-PROBE { + description + "Common node of delay-profile-endpoint, + delay-name-profile-endpointCommon node of + delay-profile-sr-policy, + delay-name-profile-sr-policyCommon node of + delay-profile-interface, + delay-name-profile-interface"; + container probe { + description + "PM Delay Profile Probe"; + container type-of-service { + description + "PM Delay Profile Type Of Service"; + leaf traffic-class-value { + type uint32 { + range "0..7"; + } + description + "Traffic Class value indicating TOS level used + by protocol pm-mpls"; + } + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + } + container protocol { + description + "Protocol used for measurement probe messages"; + leaf protocol-type { + type Pm-protocol-and-encap; + description + "Type of protocol"; + } + } + leaf measurement-mode { + type Pm-measurement-mode; + description + "Configuration for measurement mode"; + } + leaf tx-interval { + type uint32 { + range "30000..15000000"; + } + description + "The value for delay profile probe packet + transmission interval in uSec"; + } + leaf burst-interval { + type uint32 { + range "30..15000"; + } + default "3000"; + status deprecated; + description + "PM Delay Profile Burst Interval (Deprecated in + IOS-XR 7.6.1. Please use TXInterval.)"; + } + leaf computation-interval { + type uint32 { + range "1..3600"; + } + units "second"; + default "30"; + description + "The value for delay profile probe computation + interval in seconds"; + } + } + } + + grouping PM-SRPOLICY-LIVE-PROBE-CFG-PROBE { + description + "Common node of delay-profile-endpoint, + delay-name-profile-endpointCommon node of + delay-profile-sr-policy, + delay-name-profile-sr-policyCommon node of + delay-profile-interface, + delay-name-profile-interfaceCommon node of + liveness-profile-sr-policy, + liveness-name-profile-sr-policy"; + container probe { + description + "PM Liveness Profile Probe"; + container type-of-service { + description + "PM Liveness Profile Type Of Service"; + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + } + container sweep { + description + "Enable ECMP hashing by sweeping a field in the + probe packet"; + container destination { + description + "Configuration for destination address sweeping + range, only IPv4 address is supported. Used by + IPv4, IPv6 and NULL endpoint SR Policy."; + leaf address-type { + type Pm-ip-address; + description + "Type of address (Only supports + PM_IP_ADDRESS_TYPE_IPV4)"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Starting address for destination sweeping"; + } + leaf range { + type uint32 { + range "0..128"; + } + description + "Sweeping range"; + } + } + } + leaf measurement-mode { + type Pm-ld-measurement-mode; + status deprecated; + description + "Deprecated in release 7.4.2"; + } + leaf burst-interval { + type uint32 { + range "30..15000"; + } + status deprecated; + description + "PM Liveness Profile Probe Burst Interval + (Deprecated in IOS-XR 7.6.1. Please use + TXInterval.)"; + } + leaf tx-interval { + type uint32 { + range "3300..15000000"; + } + description + "The value for liveness profile probe packet + transmission interval in uSec"; + } + } + } + + grouping PM-ENDPOINT-LIVENESS-DETECTION-PROBE-CFG-PROBE { + description + "Common node of delay-profile-endpoint, + delay-name-profile-endpointCommon node of + delay-profile-sr-policy, + delay-name-profile-sr-policyCommon node of + delay-profile-interface, + delay-name-profile-interfaceCommon node of + liveness-profile-sr-policy, + liveness-name-profile-sr-policyCommon node of + liveness-profile-endpoint, + liveness-name-profile-endpoint"; + container probe { + description + "PM Endpoint Liveness Profile Probe"; + container type-of-service { + description + "PM Liveness Profile Type Of Service"; + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + } + leaf tx-interval { + type uint32 { + range "30000..15000000"; + } + description + "The value for liveness profile probe packet + transmission interval in uSec"; + } + leaf burst-interval { + type uint32 { + range "30..15000"; + } + status deprecated; + description + "PM Liveness Profile Probe Burst Interval + (Deprecated in IOS-XR 7.6.1. Please use + TXInterval.)"; + } + leaf measurement-mode { + type Pm-ld-measurement-mode; + status deprecated; + description + "Deprecated in release 7.4.2"; + } + } + } + + container performance-measurement { + description + "The root of performance-measurement configuration"; + container liveness-profile-sr-policy { + description + "Performance-measurement SR Policy liveness + profile"; + uses PM-LIVENESS-DETECTION; + uses NPU-OFFLOAD; + uses PM-SRPOLICY-LIVE-PROBE-CFG-PROBE; + } + container liveness-name-profile-endpoints { + status deprecated; + description + "Endpoint liveness name profile table. + (Deprecated in IOS-XR 7.6.1.)"; + list liveness-name-profile-endpoint { + key "profile-name"; + description + "Endpoint liveness name profile"; + leaf profile-name { + type Profile-name-max-length; + description + "Profile name"; + } + uses LIVENESS-DETECTION; + uses PM-ENDPOINT-LIVENESS-DETECTION-PROBE-CFG-PROBE; + } + } + container protocol { + description + "PM protocols"; + container twamp-light { + description + "Twamp-light protocol"; + container delay-measurement { + description + "Delay measurement"; + container unauthenticated { + description + "Unauthenticated mode"; + leaf querier-source-port { + type uint32 { + range "1024..14999"; + } + description + "UDP port opened on Route Processor to be + used as source port in queries, support + range from 1024 to 14999"; + } + leaf ipv4-timestamp1 { + type uint32 { + range "256..23999"; + } + description + "Label to put timestamp 1 on a IPv4 packet"; + } + leaf ipv6-timestamp2 { + type uint32 { + range "256..23999"; + } + description + "Label to put timestamp2 on a IPv6 packet"; + } + leaf ipv4-timestamp2 { + type uint32 { + range "256..23999"; + } + description + "Label to put timestamp2 on a IPv4 packet"; + } + leaf querier-destination-port { + type uint32 { + range "1024..14999"; + } + description + "UDP port opened to be used as destination + port in queries, support reserved 862 port + for TWAMP or 1024 to 14999"; + } + leaf ipv6-timestamp1 { + type uint32 { + range "256..23999"; + } + description + "Label to put timestamp 1 on a IPv6 packet"; + } + } + } + } + } + container delay-profile-endpoint { + description + "Performance-measurement Endpoint delay profile"; + uses THRESHOLD-CROSSING-CHECK-AVERAGE-DELAY; + uses ADVERTISEMENT; + uses THRESHOLD-CROSSING-CHECK-MAXIMUM-DELAY; + uses PROBE; + uses THRESHOLD-CROSSING-CHECK-MINIMUM-DELAY; + } + container liveness-name-profiles { + description + "Liveness name profile table"; + list liveness-name-profile { + key "profile-name"; + description + "Liveness name profile"; + container liveness-detection { + description + "Liveness Detection"; + container logging { + description + "Enable syslog for liveness detection"; + leaf state-change { + type empty; + description + "Emit syslog when the liveness state change + detected"; + } + } + leaf multiplier { + type uint32 { + range "2..10"; + } + description + "Liveness detection multiplier"; + } + } + container probe { + description + "PM Liveness Profile Probe"; + container type-of-service { + description + "PM Liveness Profile Type Of Service"; + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + } + container sweep { + description + "Enable ECMP hashing by sweeping a field in + the probe packet"; + container destination { + description + "Configuration for destination address + sweeping range, only IPv4 address is + supported. Used by IPv4, IPv6 and NULL + endpoint SR Policy."; + leaf address-type { + type Pm-ip-address; + description + "Type of address (Only supports + PM_IP_ADDRESS_TYPE_IPV4)"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Starting address for destination sweeping"; + } + leaf range { + type uint32 { + range "0..128"; + } + description + "Sweeping range"; + } + } + } + leaf tx-interval { + type uint32 { + range "30000..15000000"; + } + description + "The value for liveness profile probe packet + transmission interval in uSec"; + } + } + leaf profile-name { + type Profile-name-max-length; + description + "Profile name"; + } + } + } + container delay-name-profile-sr-policies { + status deprecated; + description + "SR Policy delay name profile table (Deprecated + in IOS-XR 7.6.1.)"; + list delay-name-profile-sr-policy { + key "profile-name"; + description + "SR Policy delay name profile"; + leaf profile-name { + type Profile-name-max-length; + description + "Profile name"; + } + uses THRESHOLD-CROSSING-CHECK-AVERAGE-DELAY; + uses ADVERTISEMENT; + uses THRESHOLD-CROSSING-CHECK-MAXIMUM-DELAY; + uses PM-SRPOLICY-PROBE-CFG-PROBE; + uses THRESHOLD-CROSSING-CHECK-MINIMUM-DELAY; + } + } + container delay-profile-rsvp-te { + description + "Performance-measurement RSVP-TE delay profile"; + container probe { + description + "PM Delay Profile Probe"; + container type-of-service { + description + "PM Delay Profile Type Of Service"; + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + leaf traffic-class-value { + type uint32 { + range "0..7"; + } + description + "Traffic Class value indicating TOS level used + by protocol pm-mpls"; + } + } + container protocol { + description + "Protocol used for measurement probe messages"; + leaf protocol-type { + type Pm-protocol-and-encap; + description + "Type of protocol"; + } + } + leaf tx-interval { + type uint32 { + range "30000..15000000"; + } + description + "The value for delay profile probe packet + transmission interval in uSec"; + } + leaf burst-interval { + type uint32 { + range "30..15000"; + } + status deprecated; + description + "PM Delay Profile Probe Burst Interval + (Deprecated in IOS-XR 7.6.1. Please use + TXInterval.)"; + } + leaf measurement-mode { + type Pm-measurement-mode; + description + "Configuration for measurement mode"; + } + leaf computation-interval { + type uint32 { + range "1..3600"; + } + units "second"; + description + "The value for delay profile probe computation + interval in seconds"; + } + } + uses THRESHOLD-CROSSING-CHECK-AVERAGE-DELAY; + uses ADVERTISEMENT; + uses THRESHOLD-CROSSING-CHECK-MAXIMUM-DELAY; + uses THRESHOLD-CROSSING-CHECK-MINIMUM-DELAY; + } + container delay-name-profile-endpoints { + status deprecated; + description + "Endpoint delay name profile table (Deprecated in + IOS-XR 7.6.1.)"; + list delay-name-profile-endpoint { + key "profile-name"; + description + "Endpoint delay name profile"; + leaf profile-name { + type Profile-name-max-length; + description + "Profile name"; + } + uses THRESHOLD-CROSSING-CHECK-AVERAGE-DELAY; + uses ADVERTISEMENT; + uses THRESHOLD-CROSSING-CHECK-MAXIMUM-DELAY; + uses PROBE; + uses THRESHOLD-CROSSING-CHECK-MINIMUM-DELAY; + } + } + container liveness-profile-endpoint { + description + "Performance-measurement Endpoint liveness + profile"; + uses LIVENESS-DETECTION; + uses PM-ENDPOINT-LIVENESS-DETECTION-PROBE-CFG-PROBE; + } + container delay-profile-interface { + description + "Performance-measurement interface delay profile"; + uses ADVERTISEMENT; + uses PM-PROBE-CFG-PROBE; + } + container delay-name-profiles { + description + "Delay name profile table"; + list delay-name-profile { + key "profile-name"; + description + "Delay name profile"; + container probe { + description + "PM Delay Profile Probe"; + container sweep { + description + "Enable ECMP hashing by sweeping a field in + the probe packet"; + container destination { + description + "Configuration for destination address + sweeping range, only IPv4 address is + supported. Used by IPv4, IPv6 and NULL + endpoint SR Policy."; + leaf address-type { + type Pm-ip-address; + description + "Type of address (Only supports + PM_IP_ADDRESS_TYPE_IPV4)"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Starting address for destination sweeping"; + } + leaf range { + type uint32 { + range "0..128"; + } + description + "Sweeping range"; + } + } + } + container type-of-service { + description + "PM Delay Profile Type Of Service"; + leaf traffic-class-value { + type uint32 { + range "0..7"; + } + description + "Traffic Class value indicating TOS level + used by protocol pm-mpls"; + } + leaf dscp-value { + type uint32 { + range "0..63"; + } + description + "DSCP value indicating TOS level used by + protocol twamp-light"; + } + } + container protocol { + description + "Protocol used for measurement probe messages"; + leaf protocol-type { + type Pm-protocol-and-encap; + description + "Type of protocol"; + } + } + leaf computation-interval { + type uint32 { + range "1..3600"; + } + units "second"; + default "30"; + description + "The value for delay profile probe computation + interval in seconds"; + } + leaf measurement-mode { + type Pm-measurement-mode; + description + "Configuration for measurement mode"; + } + leaf tx-interval { + type uint32 { + range "30000..15000000"; + } + description + "The value for delay profile probe packet + transmission interval in uSec"; + } + } + leaf profile-name { + type Profile-name-max-length; + description + "Profile name"; + } + uses THRESHOLD-CROSSING-CHECK-AVERAGE-DELAY; + uses ADVERTISEMENT; + uses THRESHOLD-CROSSING-CHECK-MAXIMUM-DELAY; + uses THRESHOLD-CROSSING-CHECK-MINIMUM-DELAY; + } + } + container delay-name-profile-interfaces { + status deprecated; + description + "Interface delay name profile table (Deprecated + in IOS-XR 7.6.1.)"; + list delay-name-profile-interface { + key "profile-name"; + description + "Interface delay name profile"; + leaf profile-name { + type Profile-name-max-length; + description + "Profile name"; + } + uses ADVERTISEMENT; + uses PM-PROBE-CFG-PROBE; + } + } + container endpoints { + description + "Configure performance-measurement Endpoint"; + list endpoint { + key "dst-addr-type dst-addr vrf"; + description + "Configure performance-measurement Endpoint"; + container endpoint-delay-measurement { + description + "Endpoint delay measurement"; + leaf endpoint-profile-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Endpoint delay profile name"; + } + leaf endpoint-enable-delay-measurement { + type empty; + description + "Enable endpoint delay measurement"; + } + } + container source-address { + presence "Indicates a source-address node is configured."; + description + "Endpoint source address"; + leaf src-addr-type { + type Pm-ip-address; + mandatory true; + description + "Type of IP Address"; + } + leaf src-addr { + type inet:ip-address-no-zone; + mandatory true; + description + "Source IP Address"; + } + } + leaf enable-endpoint { + type empty; + description + "Enable endpoint submode"; + } + leaf description { + type string { + length "1..255"; + } + description + "A textual description of the Endpoint"; + } + leaf dst-addr-type { + type Pm-afi; + description + "Type of IP Address"; + } + leaf dst-addr { + type inet:ip-address-no-zone; + description + "Destination IP address"; + } + leaf vrf { + type Pm-vrf-name-max-length; + description + "VRF name"; + } + } + } + container delay-profile-sr-policy { + description + "Performance-measurement SR Policy delay profile"; + uses THRESHOLD-CROSSING-CHECK-AVERAGE-DELAY; + uses ADVERTISEMENT; + uses THRESHOLD-CROSSING-CHECK-MAXIMUM-DELAY; + uses PM-SRPOLICY-PROBE-CFG-PROBE; + uses THRESHOLD-CROSSING-CHECK-MINIMUM-DELAY; + } + container interfaces { + description + "Configure performance-measurement interfaces"; + list interface { + key "interface-name"; + description + "Configure a performance-measurement interface"; + container delay-measurement { + description + "Interface delay measurement"; + container delay-profile { + description + "Interface delay profile"; + leaf pm-profile-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Interface delay profile name"; + } + } + leaf enable-delay-measurement { + type empty; + description + "Enable interface delay measurement"; + } + leaf advertise-delay { + type uint32 { + range "1..16777215"; + } + description + "The value for interface delay measurement + advertisement delay in uSec"; + } + } + container nexthop-address { + description + "PM Delay Nexthop Address"; + leaf nexthop-address-type { + type Pm-ip-address; + description + "Type of IP Address of nexthop"; + } + leaf nexthop-address { + type inet:ip-address-no-zone; + description + "Address of nexthop"; + } + } + leaf enable-interface { + type empty; + description + "Enable interface submode"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + container liveness-name-profile-sr-policies { + status deprecated; + description + "SR Policy liveness name profile table. + (Deprecated in IOS-XR 7.6.1.)"; + list liveness-name-profile-sr-policy { + key "profile-name"; + description + "SR Policy liveness name profile"; + leaf profile-name { + type Profile-name-max-length; + description + "Profile name"; + } + uses PM-LIVENESS-DETECTION; + uses NPU-OFFLOAD; + uses PM-SRPOLICY-LIVE-PROBE-CFG-PROBE; + } + } + leaf enable-performance-measurement { + type empty; + description + "Enable the performance measurement feature"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub1.yang new file mode 100644 index 000000000..ee027b660 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub1.yang @@ -0,0 +1,306 @@ +submodule Cisco-IOS-XR-perf-meas-oper-sub1 { + belongs-to Cisco-IOS-XR-perf-meas-oper { + prefix Cisco-IOS-XR-perf-meas-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR perf-meas package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-31 { + description + "Remove non-related fields for interface PT bag + 2022-05-15 + Change npu-offload-session-eabled to npu-offload-session-enabled in pm_srpolicy_candidate_path_bag. + 2022-04-25 + Add new advertisement reason for PM interface path tracing attribute + 2022-04-06 + Change hardware to npu in offload elements. + 2022-04-05 + Updated error reason for UDP port failure and capability timestamp to usec. + 2022-03-16 + Add new data points. + 2022-03-15 + NPU effective burst and tx timer in profile. + 2022-03-09 + Per transport CPU counters for generic profile. + 2022-02-22 + Change display format in show performance measure profile. + 2022-01-28 + Remove packet counters and add pm_npu_session_packet_counters_bag in pm_npu_counters_info_bag. + 2022-01-15 + npu offload support, npu ports and distribution retry queue. + 2021-11-18 + Added transport specific parameters to profile information. + 2021-10-27 + Added tx-interval to profile information."; + semver:module-version "6.0.0"; + } + revision 2021-06-15 { + description + "Added default TWAMP port entry in pm_rx_udp_ports_bag."; + semver:module-version "5.0.0"; + } + revision 2021-06-02 { + description + "Added session id to endpoint liveness bag. + 2021-04-17 + Removed liveness parameters from delay profile bag. + 2021-02-26 + Remove PM hidden show cli, loss, history packet. + 2021-02-16 + Remove liveness history and liveness detection verbose from sr-policy delay schema. + 2021-01-08 + Added srpolicy liveness schema. + 2021-01-08 + Added srpolicy liveness history schema and renamed liveness detection schema. + 2020-12-19 + Added schema for endpoint liveness profile. + 2020-12-02 + Add sr-policy liveness profile bag and oper schema. + 2020-11-26 + Update endpoint show command bags in order to support liveness-detection. + 2020-11-17 + Added new bag for PPS info. IosSetYangSchemaRev Cisco-IOS-XR-perf-meas-oper + 2020-10-27 + Added anomaly support for sr-policy min delay metrics. + 2020-10-27 + Added all endpoint show commands support and respective bags. + 2020-10-15 + Update probe running reason name for link down. + 2020-10-02 + Added anomaly support for interface min delay metrics. + 2020-08-06 + Added liveness session state history information. + 2020-07-23 + Fixed typos in perf-meas oper bag."; + semver:module-version "4.0.0"; + } + revision 2020-06-24 { + description + "Update perf-meas oper schema task group. + 2020-04-10 + Added new TX error counter for next hop MAC missing. + 2020-03-31 + 721 nohelp CLI for liveness, loopback, endpoint, src-port, named profile, distribution. + 2020-03-25 + Add trace id in PM session bag. + 2020-03-17 + Added new types counters to count different types of PM DM sessions. + 2020-03-09 + Added new types of probe running errors and counters for probe running errors. + 2020-02-24 + Modifid type of service knobs from array to integer. + 2020-02-21 + Modify router alert type + 2020-02-19 + Modifiy periodic minimum change value. + 2020-02-13 + Modifiy delay-measurement hisotry key words. + 2020-01-22 + Added a new advertisement reason for interface delay-measurement. + 2019-12-16 + Revision IOS XR 7.2.1 Added responder src address and num of hops for PM DM. + 2019-12-09 + Added new reason for DM probe not running. + 2019-11-18 + Revision IOS XR 7.2.1 Added EDT for Liveness state for SR Policy Candidate path atmoic path."; + semver:module-version "3.0.0"; + } + revision 2019-10-19 { + description + "Added burst-interval-effective to oper data."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-13 { + description + "Revision IOS XR 7.0.1 Added delay measurment for SR Policy and RSVP-TE LSP."; + } + revision 2017-10-17 { + description + "Revision Zero."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PM-RESP-INTF-BAG { + description + "PM Responder Interface bag"; + container interface-counters { + description + "Per interface responder counters"; + uses PM-COUNTER-RESP-BAG; + } + leaf interface-name-xr { + type string; + description + "Name of the interface"; + } + leaf interface-handle { + type uint32; + description + "Ifhandle of the interface"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source Address of the interface"; + } + leaf source-v6-address { + type inet:ipv6-address; + description + "Source V6 Address of the interface"; + } + leaf link-local-iv6-address { + type inet:ipv6-address; + description + "Link local IPv6 of the interface"; + } + leaf packet-rate { + type uint32; + description + "Incoming packet rate of the interface"; + } + leaf packet-rate-high-water-mark { + type uint32; + description + "Incoming packet rate high water mark of the + interface"; + } + leaf cleanup-time-remaining { + type uint32; + units "second"; + description + "Seconds until an inactive interface is cleaned + up"; + } + } + + grouping PM-COUNTER-RESP-BAG { + description + "PM Responder counters"; + leaf reply-packet-sent { + type uint64; + description + "Number of response packets sent"; + } + leaf reply-packet-sent-error { + type uint64; + description + "Number of response packets sent error"; + } + leaf query-packet-received { + type uint64; + description + "Number of response packets received"; + } + leaf received-packet-error-uro-tlv-not-present { + type uint64; + description + "Number of received packet error caused by URO + TLV not present"; + } + leaf received-packet-error-invalid-source-port-number { + type uint64; + description + "Number of received packet error caused by source + port number is invaid"; + } + leaf received-packet-error-no-source-address { + type uint64; + description + "Number of received packet error caused by no + source address"; + } + leaf received-packet-error-no-return-path { + type uint64; + description + "Number of received packet error caused by no + return path"; + } + leaf received-packet-error-invalid-querier-control-code { + type uint64; + description + "Number of received packet error caused by + querier control code is invalid"; + } + leaf received-packet-error-unsupported-timestamp-format { + type uint64; + description + "Number of received packet error caused by + timestamp format in the packet is not supported"; + } + leaf received-packet-error-timestamp-not-available { + type uint64; + description + "Number of packet error caused by timestamp in + received packet is not available"; + } + leaf received-packet-error-unsupported-mandatory-tlv { + type uint64; + description + "Number of received packet error caused by + unsupported mandatory TLV"; + } + leaf received-packet-error-invalid-packet { + type uint64; + description + "Number of received packet error caused by + invalid packet"; + } + } + + grouping PM-RESP-SUMMARY-BAG { + description + "PM Responder summary bag"; + container responder-counters { + description + "Global counters of responder"; + uses PM-COUNTER-RESP-BAG; + } + leaf total-interfaces { + type uint32; + description + "Number of interfaces in the responder cache"; + } + leaf packet-rate { + type uint32; + description + "Global incoming packet rate"; + } + leaf packet-rate-high-water-mark { + type uint32; + description + "Global incoming packet rate high water mark"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub2.yang new file mode 100644 index 000000000..216f69f55 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper-sub2.yang @@ -0,0 +1,5643 @@ +submodule Cisco-IOS-XR-perf-meas-oper-sub2 { + belongs-to Cisco-IOS-XR-perf-meas-oper { + prefix Cisco-IOS-XR-perf-meas-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR perf-meas package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-31 { + description + "Remove non-related fields for interface PT bag + 2022-05-15 + Change npu-offload-session-eabled to npu-offload-session-enabled in pm_srpolicy_candidate_path_bag. + 2022-04-25 + Add new advertisement reason for PM interface path tracing attribute + 2022-04-06 + Change hardware to npu in offload elements. + 2022-04-05 + Updated error reason for UDP port failure and capability timestamp to usec. + 2022-03-16 + Add new data points. + 2022-03-15 + NPU effective burst and tx timer in profile. + 2022-03-09 + Per transport CPU counters for generic profile. + 2022-02-22 + Change display format in show performance measure profile. + 2022-01-28 + Remove packet counters and add pm_npu_session_packet_counters_bag in pm_npu_counters_info_bag. + 2022-01-15 + npu offload support, npu ports and distribution retry queue. + 2021-11-18 + Added transport specific parameters to profile information. + 2021-10-27 + Added tx-interval to profile information."; + semver:module-version "6.0.0"; + } + revision 2021-06-15 { + description + "Added default TWAMP port entry in pm_rx_udp_ports_bag."; + semver:module-version "5.0.0"; + } + revision 2021-06-02 { + description + "Added session id to endpoint liveness bag. + 2021-04-17 + Removed liveness parameters from delay profile bag. + 2021-02-26 + Remove PM hidden show cli, loss, history packet. + 2021-02-16 + Remove liveness history and liveness detection verbose from sr-policy delay schema. + 2021-01-08 + Added srpolicy liveness schema. + 2021-01-08 + Added srpolicy liveness history schema and renamed liveness detection schema. + 2020-12-19 + Added schema for endpoint liveness profile. + 2020-12-02 + Add sr-policy liveness profile bag and oper schema. + 2020-11-26 + Update endpoint show command bags in order to support liveness-detection. + 2020-11-17 + Added new bag for PPS info. IosSetYangSchemaRev Cisco-IOS-XR-perf-meas-oper + 2020-10-27 + Added anomaly support for sr-policy min delay metrics. + 2020-10-27 + Added all endpoint show commands support and respective bags. + 2020-10-15 + Update probe running reason name for link down. + 2020-10-02 + Added anomaly support for interface min delay metrics. + 2020-08-06 + Added liveness session state history information. + 2020-07-23 + Fixed typos in perf-meas oper bag."; + semver:module-version "4.0.0"; + } + revision 2020-06-24 { + description + "Update perf-meas oper schema task group. + 2020-04-10 + Added new TX error counter for next hop MAC missing. + 2020-03-31 + 721 nohelp CLI for liveness, loopback, endpoint, src-port, named profile, distribution. + 2020-03-25 + Add trace id in PM session bag. + 2020-03-17 + Added new types counters to count different types of PM DM sessions. + 2020-03-09 + Added new types of probe running errors and counters for probe running errors. + 2020-02-24 + Modifid type of service knobs from array to integer. + 2020-02-21 + Modify router alert type + 2020-02-19 + Modifiy periodic minimum change value. + 2020-02-13 + Modifiy delay-measurement hisotry key words. + 2020-01-22 + Added a new advertisement reason for interface delay-measurement. + 2019-12-16 + Revision IOS XR 7.2.1 Added responder src address and num of hops for PM DM. + 2019-12-09 + Added new reason for DM probe not running. + 2019-11-18 + Revision IOS XR 7.2.1 Added EDT for Liveness state for SR Policy Candidate path atmoic path."; + semver:module-version "3.0.0"; + } + revision 2019-10-19 { + description + "Added burst-interval-effective to oper data."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-13 { + description + "Revision IOS XR 7.0.1 Added delay measurment for SR Policy and RSVP-TE LSP."; + } + revision 2017-10-17 { + description + "Revision Zero."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pm-dr-session { + type enumeration { + enum "cpu-hosted-session" { + description + "Session hosted on CPU"; + } + enum "npu-hosted-session" { + description + "Session hosted on NPU"; + } + enum "unknown-session" { + description + "Unknown session hosted location"; + } + } + description + "Session host type"; + } + + typedef Pm-rl-pps-pool { + type enumeration { + enum "single-pps-pool" { + description + "Single PPS Pool"; + } + enum "multiple-pps-pool" { + description + "Multiple PPS Pool"; + } + } + description + "PM PPS Pool Type"; + } + + typedef Pm-payload { + type enumeration { + enum "payload-type-pm-dm" { + description + "Payload type PM DM"; + } + enum "payload-type-twamp-test" { + description + "Payload type TWAMP test"; + } + enum "payload-type-pm-lm" { + description + "Payload type PM LM"; + } + } + description + "PM Payload Type"; + } + + typedef Pm-encap-mode { + type enumeration { + enum "encap-mode-mpls" { + description + "Encap-mode MPLS"; + } + enum "encap-mode-udp" { + description + "Encap-mode UDP"; + } + } + description + "PM Packet Encapsulation"; + } + + typedef Pm-delay-mode { + type enumeration { + enum "delay-mode-one-way" { + description + "One-way delay-measurement mode"; + } + enum "delay-mode-two-way" { + description + "Two-way delay-measurement mode"; + } + enum "delay-mode-loopback" { + description + "Loopback delay-measurement mode"; + } + enum "delay-mode-not-set" { + description + "Delay-measurement mode has not been set"; + } + } + description + "PM Delay Mode Type"; + } + + typedef Pm-dr-retry-reason { + type enumeration { + enum "pm-profile-not-configured" { + description + "Profile has not been configured in PM"; + } + enum "no-npu-capacity" { + description + "No NPU capacity available"; + } + } + description + "Reason for not distributing the session"; + } + + typedef Pm-measurement { + type enumeration { + enum "delay-measurement-type" { + description + "Delay Measurement Type"; + } + enum "loss-measurement-type" { + description + "Loss Measurement Type"; + } + enum "liveness-detection-type" { + description + "Liveness Detection Type"; + } + } + description + "PM Measurement Type"; + } + + typedef Pm-transport { + type enumeration { + enum "interface-transport-type" { + description + "Transport type for interface"; + } + enum "rsvp-te-transport-type" { + description + "Transport type for RSVP-TE LSP"; + } + enum "sr-policy-transport-type" { + description + "Transport type for SR Policy"; + } + enum "endpoiont-transport-type" { + description + "Transport type for endpoint"; + } + enum "generic-transport-type" { + description + "Generic transport type"; + } + } + description + "PM Transport Type"; + } + + typedef Pm-history { + type enumeration { + enum "history-type-probe" { + description + "History type for delay measurement probe info"; + } + enum "history-type-packet" { + description + "History type for delay measurement packet info"; + } + enum "history-type-aggregated" { + description + "History type for delay measurement aggregated + info"; + } + enum "history-type-advertisement" { + description + "History type for delay measurement + advertisement info"; + } + enum "history-type-liveness-state" { + description + "History type for liveness state change info"; + } + enum "history-type-lm-probe" { + description + "History type for loss measurement probe info"; + } + enum "history-type-lm-packet" { + description + "History type for loss measurement aggregation + info"; + } + enum "history-type-lm-aggregated" { + description + "History type for loss measurement advertisement + info"; + } + enum "history-type-lm-advertisement" { + description + "History type for loss measurement advertisement + info"; + } + } + description + "PM history types"; + } + + typedef Pm-npu-session-running-state { + type enumeration { + enum "npu-session-invalid" { + description + "No NPU session"; + } + enum "npu-session-created" { + description + "NPU session created without error"; + } + enum "npu-session-pending-create" { + description + "NPU session create pending"; + } + enum "npu-session-pending-update" { + description + "NPU session update pending"; + } + enum "npu-session-pending-delete" { + description + "NPU session delete pending"; + } + } + description + "PM npu session running state"; + } + + typedef Pm-probe-running-error-reason { + type enumeration { + enum "probe-is-running" { + description + "Probe is running without error"; + } + enum "platform-not-supported" { + description + "Measurement is not supported on this plaftorm"; + } + enum "nonv1-active-node" { + description + "Node is not V1 active"; + } + enum "control-code-error" { + description + "An uncleared control code error was received"; + } + enum "interface-admin-down" { + description + "Interface admin down"; + } + enum "mpls-capability-not-present" { + description + "MPLS is not enabled on interface"; + } + enum "interface-not-present" { + description + "Interface not present or preconfigured"; + } + enum "ip-address-not-configured" { + description + "IP address is not present on interface"; + } + enum "next-hop-not-configured" { + description + "Nexthop address not configured."; + } + enum "wrong-next-hop-ip-address-type" { + description + "Wrong nexthop address type configured"; + } + enum "protocol-port-not-configured" { + description + "Protocol querier destination port missing"; + } + enum "protocol-port-failed-to-open" { + description + "Protocol querier destination port failed to + open"; + } + enum "pm-mpls-protocol-not-supported" { + description + "Does not support delay measurement based on + RFC6374 with MPLS encap"; + } + enum "high-total-interface-packets-per-second" { + description + "Total interface delay packets per second + exceeds 80% of the total maximum packets per + second allowed"; + } + enum "client-end-of-data-not-received" { + description + "Client end of data message has not been + received"; + } + enum "missing-reverse-path" { + description + "Missing reverse path for loopback measurement + mode"; + } + enum "reverse-path-exceeds-sid-limit" { + description + "Reverse path for loopback measurement mode + exceeds max SID limit"; + } + enum "process-not-in-run-state" { + description + "Process is not in run state"; + } + enum "session-suspended" { + description + "Measurement has been suspended by user using + exec command"; + } + enum "profile-not-configured" { + description + "Profile is not configured"; + } + enum "missing-source-address" { + description + "Endpoint source address is missing"; + } + enum "interface-type-not-supported" { + description + "Delay measurement is not supported for this + interface type"; + } + enum "interface-non-default-vrf" { + description + "Interface is not in default VRF"; + } + enum "interface-down" { + description + "Interface down"; + } + enum "invalid-vrf" { + description + "unable to resolve (non-existing) VRF"; + } + enum "invalid-source-address" { + description + "Endpoint source address is invalid - cannot be + same as endpoint destination"; + } + enum "invalid-seg-list" { + description + "Segment list is invalid or not created"; + } + enum "invalid-seg-list-version" { + description + "Segment list data is outdated"; + } + enum "interface-ipv4-protocol-down" { + description + "IPv4 protocol is down for this interface"; + } + enum "interface-ipv6-protocol-down" { + description + "IPv6 protocol is down for this interface"; + } + enum "interface-ip-protocol-down" { + description + "Both IPv4 protocol and IPv6 protocol are down + for this interface"; + } + enum "interface-next-hop-mac-missing" { + description + "Next hop MAC address missing"; + } + enum "ep-loopback-without-seglist" { + description + "Endpoint Loopback mode without segment list"; + } + enum "protocol-src-port-failed-to-open" { + description + "Protocol querier source port failed to open"; + } + } + description + "PM probe not running reason"; + } + + typedef Pm-advert-reason { + type enumeration { + enum "no-advertisements" { + description + "Periodic timer expired. No advertisements have + occured"; + } + enum "periodic-advertisement-threshold-average" { + description + "Periodic timer expired. Average value threshold + crossed"; + } + enum "periodic-advertisement-threshold-minimum" { + description + "Periodic timer expired. Minimum value threshold + crossed"; + } + enum "periodic-advertisement-threshold-maximum" { + description + "Periodic timer expired. Maximum value threshold + crossed"; + } + enum "periodic-advertisement-threshold-variance" { + description + "Periodic timer expired. Variance value + threshold crossed"; + } + enum "accelerated-advertisement-threshold-average" { + description + "Accelerated average value threshold crossed"; + } + enum "accelerated-advertisement-threshold-minimum" { + description + "Accelerated minimum value threshold crossed"; + } + enum "accelerated-advertisement-threshold-maximum" { + description + "Accelerated maximum value threshold crossed"; + } + enum "accelerated-advertisement-upper-bound-average" { + description + "Accelerated average value upper bound crossed"; + } + enum "accelerated-advertisement-upper-bound-minimum" { + description + "Accelerated minimum value upper bound crossed"; + } + enum "accelerated-advertisement-upper-bound-maximum" { + description + "Accelerated maximum value upper bound crossed"; + } + enum "anomaly-check-advertisement-min-dynamic-delay" { + description + "Min delay A flag toggled and dynamic delay + measurement is in effect"; + } + enum "anomaly-check-advertisement-min-static-delay" { + description + "Min delay A flag toggled and static delay is in + effect"; + } + enum "advertisement-enabled" { + description + "Advertisement enabled"; + } + enum "advertisement-disabled" { + description + "Advertisement disabled"; + } + enum "session-unconfigured" { + description + "Session unconfigured"; + } + enum "clear-cli-command" { + description + "Session cleared via CLI"; + } + enum "advertise-delay-config" { + description + "Advertise delay config"; + } + enum "advertise-delay-unconfig" { + description + "Advertise delay unconfig"; + } + enum "received-control-code-error" { + description + "Recevied control code error, as per RFC 6374, + from the responder"; + } + enum "first-advertisement" { + description + "First advertisement"; + } + enum "link-is-down" { + description + "Link is in down state"; + } + enum "new-child-session" { + description + "Advertisement occured due to a new child + session"; + } + enum "invalid-measurement" { + description + "Performance measurement metrics withdrawn due + to measurement error"; + } + enum "dynamic-delay-measurement-in-effect" { + description + "Advertisement occured due to dynamic delay + measurement is in effect"; + } + enum "path-tracing-config" { + description + "Path tracing config"; + } + enum "path-tracing-unconfig" { + description + "Path tracing unconfig"; + } + enum "path-tracing-intf-ready" { + description + "Path tracing interface ready"; + } + } + description + "PM advertisement reason"; + } + + typedef Pm-xtc-srpolicy-origin { + type enumeration { + enum "candidate-path-origin-invalid" { + value 0; + description + "Invalid Origin Type"; + } + enum "candidate-path-origin-pce" { + value 10; + description + "Candidate-path From PCE"; + } + enum "candidate-path-origin-bgp" { + value 20; + description + "Candidate-path From BGP"; + } + enum "candidate-path-origin-configured" { + value 30; + description + "Candidate-path From Configuration"; + } + } + description + "Candidate-path Orign Type Shared By PM And XTC"; + } + + typedef Pm-ipv6-addr { + type inet:ipv6-address; + description + "Pm ipv6 addr"; + } + + typedef Pm-ipv4-addr { + type inet:ipv4-address; + description + "Pm ipv4 addr"; + } + + typedef Pm-addr { + type enumeration { + enum "ipv4" { + description + "IPv4"; + } + enum "ipv6" { + description + "IPv6"; + } + enum "unknown" { + description + "Unknown"; + } + } + description + "Type of PM address"; + } + + grouping PM-NAME-PROFILE-UNION { + description + "PM Name profile union"; + container delay { + when "../measurement-type = 'delay-measurement-type'" { + description + "../MeasurementType = 'DelayMeasurementType'"; + } + description + "Delay-Measurement name profile bag"; + uses PM-DELAY-TRANSPORT-PROFILE-BAG; + } + container loss { + when "../measurement-type = 'loss-measurement-type'" { + description + "../MeasurementType = 'LossMeasurementType'"; + } + description + "Loss-Measurement name profile bag"; + uses PM-LOSS-TRANSPORT-PROFILE-BAG; + } + container liveness { + when "../measurement-type = 'liveness-detection-type'" { + description + "../MeasurementType = 'LivenessDetectionType'"; + } + description + "Liveness-detection name profile bag"; + uses PM-LIVENESS-TRANSPORT-PROFILE-BAG; + } + leaf measurement-type { + type Pm-measurement; + description + "MeasurementType"; + } + } + + grouping PM-NAME-PROFILE-BAG { + description + "PM Name Profile bag"; + container profile { + description + "Profile bag"; + uses PM-NAME-PROFILE-UNION; + } + leaf name { + type string; + description + "Profile name"; + } + leaf transport-type { + type Pm-transport; + description + "Transport type"; + } + } + + grouping PM-SL-SESSION-ID-MAP-INFO { + description + "Session ID information bag for distribution + module"; + leaf segment-list-name { + type string; + description + "Name of the Segment-list"; + } + leaf session-id { + type uint16; + description + "Session ID"; + } + } + + grouping PM-DR-SESSION-INFO { + description + "PM DR SESSION INFO"; + leaf distribution-record-name { + type string; + description + "Name of the distribution record"; + } + leaf linecard-name { + type string; + description + "Name of the linecard"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf profile-name { + type string; + description + "Profile name"; + } + leaf delay-notification-received { + type boolean; + description + "True if the delay notification message was + received"; + } + leaf liveness-notification-received { + type boolean; + description + "True if the liveness notification message was + received"; + } + leaf node-id { + type uint32; + description + "Node ID of the distribution location"; + } + leaf npu-id { + type uint16; + description + "NPU ID of the distribution location"; + } + leaf session-host-type { + type Pm-dr-session; + description + "Session host type"; + } + leaf distribution-pending { + type boolean; + description + "Distribution pending"; + } + leaf liveness-session-state-up { + type boolean; + description + "True if liveness session state is UP"; + } + list session-id-pair { + description + "Session ID information"; + uses PM-SL-SESSION-ID-MAP-INFO; + } + } + + grouping PM-DR-INFO { + description + "PM session distribution record information"; + leaf distribution-record-name { + type string; + description + "Name of the distribution record"; + } + leaf record-creation-timestamp { + type uint64; + units "second"; + description + "Time when the distribution record were created + (seconds since Jan. 1, 1970)"; + } + list session { + description + "List of DR sessions"; + uses PM-DR-SESSION-INFO; + } + list npu-offload-session { + description + "List of NPU offloaded sessions"; + uses PM-DR-SESSION-INFO; + } + } + + grouping PM-PPS-NPU-SUMMARY-INFO { + description + "PM NPU Summary Rate Limiting information"; + container pps-pool { + description + "PPS resource pool"; + uses PM-PPS-POOL-UNION; + } + container sr-policy-session-info { + description + "Information for SR Policy performance + measurement sessions"; + uses PM-PPS-TRANSPORT-INFO; + } + leaf npu-id { + type uint16; + description + "Npu id"; + } + } + + grouping PM-PPS-SUMMARY-NPU-PTR { + description + "PM NPU Rate Limiting information ptr"; + list np-uinfo { + description + "np uinfo"; + uses PM-PPS-NPU-SUMMARY-INFO; + } + } + + grouping PM-PPS-TRANSPORT-INFO { + description + "PPS resource information bag for one type of + session"; + leaf pps-budget { + type uint32; + units "packet/s"; + description + "Packets per second resource assigned for this + type of session"; + } + leaf requested-pps { + type uint32; + units "packet/s"; + description + "Packets per second requested"; + } + leaf effective-pps { + type uint32; + units "packet/s"; + description + "Packets per second effective"; + } + leaf current-multi-hop-burst-interval-stretch-factor { + type uint32; + units "percentage"; + status deprecated; + description + "Deprecated: Multi hop session's burst interval + stretch factor percentage current value. Use + current-multi-hop-tx-interval-stretch-factor + instead."; + } + leaf dampened-multi-hop-burst-interval-stretch-factor { + type uint32; + units "percentage"; + status deprecated; + description + "Deprecated: Multi hop session's burst interval + stretch factor percentage dampened value. Use + dampened-multi-hop-tx-interval-stretch-factor + instead."; + } + leaf inuse-multi-hop-burst-interval-stretch-factor { + type uint32; + units "percentage"; + status deprecated; + description + "Deprecated: Multi hop session's burst interval + stretch factor percentage inuse value. Use + dampened-multi-hop-tx-interval-stretch-factor + instead."; + } + leaf current-multi-hop-tx-interval-stretch-factor { + type uint32; + units "percentage"; + description + "Multi hop session's TX interval stretch factor + percentage current value"; + } + leaf dampened-multi-hop-tx-interval-stretch-factor { + type uint32; + units "percentage"; + description + "Multi hop session's TX interval stretch factor + percentage dampened value"; + } + leaf inuse-multi-hop-tx-interval-stretch-factor { + type uint32; + units "percentage"; + description + "Multi hop session's TX interval stretch factor + percentage inuse value"; + } + } + + grouping PM-MULTI-PPS-POOL-BAG { + description + "Split type PPS pool"; + leaf maximum-pps-for-interface-session { + type uint32; + units "packet/s"; + description + "Total maximum packets per second allowed for + Interface sessions"; + } + leaf total-pps-requested-for-interface-session { + type uint32; + units "packet/s"; + description + "Total packets per second requested for Interface + sessions"; + } + leaf maximum-pps-for-mutihop-session { + type uint32; + units "packet/s"; + description + "Total maximum packets per second allowed for + multi-hop delay sessions"; + } + leaf total-pps-requested-for-mh-session { + type uint32; + units "packet/s"; + description + "Total packets per second requested for multi-hop + delay sessions"; + } + leaf minimum-pps-budget { + type uint32; + description + "Guaranteed Minimum PPS budget per transport type"; + } + leaf pps-budget-rebalance-threshold { + type uint32; + description + "PPS budget will be rebalanced when the changed + requested PPS crosses this threshold"; + } + } + + grouping PM-SINGLE-PPS-POOL-BAG { + description + "Shared type PPS pool"; + leaf maximum-pps-for-all-session { + type uint32; + units "packet/s"; + description + "Total maximum packets per second allowed for all + the sessions"; + } + leaf total-pps-requested { + type uint32; + units "packet/s"; + description + "Total packets per second requested for all the + sessions"; + } + leaf minimum-pps-budget { + type uint32; + description + "Guaranteed Minimum PPS budget per transport type"; + } + leaf pps-budget-rebalance-threshold { + type uint32; + description + "PPS budget will be rebalanced when the changed + requested PPS crosses this threshold"; + } + } + + grouping PM-PPS-POOL-UNION { + description + "PPS Pool type"; + container single-pps-pool { + when "../pps-pool-type = 'single-pps-pool'" { + description + "../PPSPoolType = 'SinglePPSPool'"; + } + description + "Single PPS pool"; + uses PM-SINGLE-PPS-POOL-BAG; + } + container multiple-pps-pool { + when "../pps-pool-type = 'multiple-pps-pool'" { + description + "../PPSPoolType = 'MultiplePPSPool'"; + } + description + "Multiple PPS pool"; + uses PM-MULTI-PPS-POOL-BAG; + } + leaf pps-pool-type { + type Pm-rl-pps-pool; + description + "PPSPoolType"; + } + } + + grouping PM-PPS-SUMMARY-INFO { + description + "PM Summary Rate Limiting information"; + container pps-pool { + description + "PPS resource pool"; + uses PM-PPS-POOL-UNION; + } + container interface-session-info { + description + "Information for interface performance + measurement sessions"; + uses PM-PPS-TRANSPORT-INFO; + } + container sr-policy-session-info { + description + "Information for SR Policy performance + measurement sessions"; + uses PM-PPS-TRANSPORT-INFO; + } + container rsvp-te-session-info { + description + "Information for RSVP-TE tunnel performance + measurement sessions"; + uses PM-PPS-TRANSPORT-INFO; + } + container endpoint-session-info { + description + "Information for Endpoint performance measurement + sessions"; + uses PM-PPS-TRANSPORT-INFO; + } + } + + grouping PM-PPS-SUMMARY-BAG { + description + "PM Summary Rate Limiting bag"; + container cpu-info { + description + "PPS rate limit info for CPU"; + uses PM-PPS-SUMMARY-INFO; + } + container npu-ptr { + description + "PPS rate limit ptr for NPU info"; + uses PM-PPS-SUMMARY-NPU-PTR; + } + } + + grouping PM-NPU-OFFLOAD { + description + "PM NPU offload bag"; + leaf npu-offload-enabled { + type boolean; + description + "Enable offloading sessions to npu"; + } + list npu-session-count { + description + "Npu session count associated with the profile"; + leaf entry { + type uint32; + description + "Npu session count associated with the profile"; + } + } + } + + grouping PM-LIVENESS-DETECTION-BAG { + description + "Liveness detection state information bag"; + leaf multiplier { + type uint8; + description + "Detect multiplier"; + } + leaf logging-state-change-enabled { + type boolean; + description + "Emit syslog when the state of the session + changes"; + } + } + + grouping PM-LIVENESS-DETECTION-UNION { + description + "PM liveness detection profile union"; + container sr-policy-liveness-detection { + when "../transport-type = 'sr-policy-transport-type'" { + description + "../TransportType = 'SRPolicyTransportType'"; + } + description + "Liveness detection info of SR Policy"; + uses PM-LIVENESS-DETECTION-BAG; + } + container ep-liveness-detection { + when "../transport-type = 'endpoiont-transport-type'" { + description + "../TransportType = 'EndpoiontTransportType'"; + } + description + "Liveness detection info of Endpoint"; + uses PM-LIVENESS-DETECTION-BAG; + } + leaf transport-type { + type Pm-transport; + description + "TransportType"; + } + } + + grouping PM-LIVENESS-TRANSPORT-PROFILE-BAG { + description + "PM interface liveness profile bag"; + container destination-sweeping-address { + description + "IPv4/IPv6 sweeping address"; + uses PM-IP-ADDR-TYPE; + } + container liveness-detection-config { + status deprecated; + description + "Deprecated: Liveness detection configUse + liveness-detection instead"; + uses PM-LIVENESS-DETECTION-UNION; + } + container liveness-detection { + description + "Liveness detection info"; + uses PM-LIVENESS-DETECTION-BAG; + } + container npu-offload-config { + description + "NPU offload config"; + uses PM-NPU-OFFLOAD; + } + leaf tos-dscp-value { + type uint8; + description + "TOS DSCP value specified for protocol + TWAMP-LIGHT"; + } + leaf burst-interval { + type uint32; + status deprecated; + description + "Deprecated: Burst interval (msec). Config + tx-interval and use tx-interval instead"; + } + leaf burst-interval-effective { + type uint32; + status deprecated; + description + "Deprecated: Effective Burst Interval (msec). + Config tx-interval and use tx-interval-effective + instead"; + } + leaf tx-interval { + type uint32; + description + "TX Interval (usec)"; + } + leaf tx-interval-effective-sr-policy { + type uint32; + description + "Effective TX Interval for SR Policy (usec)"; + } + leaf tx-interval-effective-endpoint { + type uint32; + description + "Effective TX Interval for Endpoint (usec)"; + } + leaf delay-measurement-mode { + type Pm-delay-mode; + description + "Delay Measurement Mode Type"; + } + leaf payload-type { + type Pm-payload; + description + "Type of the probe packet payload"; + } + leaf encap-mode { + type Pm-encap-mode; + description + "Encap Mode"; + } + leaf destination-sweeping-mode-enabled { + type boolean; + description + "Measure liveness detection with ECMP hashing by + sweeping destination address"; + } + leaf destination-sweeping-range { + type uint32; + description + "Number of IP addresses to sweep"; + } + leaf session-count { + type uint32; + description + "Session count associated with the transport + profile"; + } + leaf session-count-sr-policy { + type uint32; + description + "Session count for SR Policy associated with the + generic profile"; + } + leaf session-count-endpoint { + type uint32; + description + "Session count for Endpoint associated with the + generic profile"; + } + list burst-interval-npu-effective { + status deprecated; + description + "Deprecated: Effective Burst Interval on NPU + (msec). Config tx-interval and use + tx-interval-effective instead"; + leaf entry { + type uint32; + status deprecated; + description + "Deprecated: Effective Burst Interval on NPU + (msec). Config tx-interval and use + tx-interval-effective instead"; + } + } + list tx-interval-effective-npu-sr-policy { + description + "Effective TX Interval for SR Policy on NPU + (usec)"; + leaf entry { + type uint32; + description + "Effective TX Interval for SR Policy on NPU + (usec)"; + } + } + } + + grouping PM-LIVENESS-PROFILE-BAG { + description + "PM Liveness Profile bag"; + container sr-policy-liveness-profile { + description + "Profile of SR Policy liveness detection "; + uses PM-LIVENESS-TRANSPORT-PROFILE-BAG; + } + container endpoint-liveness-profile { + description + "Profile of Endpoint liveness detection "; + uses PM-LIVENESS-TRANSPORT-PROFILE-BAG; + } + } + + grouping PM-LOSS-TRANSPORT-PROFILE-BAG { + description + "PM interface loss measurement profile bag"; + leaf probe-interval { + type uint32; + description + "Probe Interval (sec)"; + } + leaf encap-mode { + type Pm-encap-mode; + description + "Encap Mode"; + } + leaf periodic-advertisement-enabled { + type boolean; + description + "Advertisement Periodic Enabled"; + } + leaf periodic-advertisement-interval { + type uint32; + description + "Advertisement Periodic Interval (sec)"; + } + leaf effective-periodic-advertisement-interval { + type uint32; + description + "Advertisement Periodic Effective (sec)"; + } + leaf periodic-advertisement-threshold { + type uint32; + description + "Advertisement Periodic Threshold (%)"; + } + leaf periodic-advertisement-minimum-change { + type uint32; + description + "Advertisement Periodic Minimum Change (uSec)"; + } + leaf accelerated-advertisement-threshold { + type uint32; + description + "Advertisement Accelerated Threshold (%)"; + } + leaf accelerated-advertisement-minimum-change { + type uint32; + description + "Advertisement Accelerated Minimum Change (uSec)"; + } + leaf accelerated-advertisement-enabled { + type boolean; + description + "Advertisement Accelerated Enabled"; + } + } + + grouping PM-LOSS-PROFILE-BAG { + description + "PM loss measurement profile bag"; + container interface-delay-profile { + description + "Profile info of Interface loss measurement"; + uses PM-LOSS-TRANSPORT-PROFILE-BAG; + } + } + + grouping PM-DELAY-ADVERTISEMENT-THRESHOLD-CROSSING-CHECK-BAG { + description + "PM delay advertisement threshold crossing check + bag"; + leaf advertisement-threshold-check-average-delay { + type boolean; + description + "Check Average-delay For Advertisement Threshold + Crossing"; + } + leaf advertisement-threshold-check-minimum-delay { + type boolean; + description + "Check Minimum-delay For Advertisement Threshold + Crossing"; + } + leaf advertisement-threshold-check-maximum-delay { + type boolean; + description + "Check Maximum-delay For Advertisement Threshold + Crossing"; + } + } + + grouping PM-DELAY-TRANSPORT-PROFILE-BAG { + description + "PM interface delay profile bag"; + container destination-sweeping-address { + description + "IPv4/IPv6 sweeping address"; + uses PM-IP-ADDR-TYPE; + } + container advertisement-check-sr-policy { + description + "Advertisement Threshold Crossing For SR Policy"; + uses PM-DELAY-ADVERTISEMENT-THRESHOLD-CROSSING-CHECK-BAG; + } + container advertisement-check-endpoint { + description + "Advertisement Threshold Crossing For Endpoint"; + uses PM-DELAY-ADVERTISEMENT-THRESHOLD-CROSSING-CHECK-BAG; + } + container advertisement-check-interface { + description + "Advertisement Threshold Crossing For Interface"; + uses PM-DELAY-ADVERTISEMENT-THRESHOLD-CROSSING-CHECK-BAG; + } + container advertisement-check-rsvp-te { + description + "Advertisement Threshold Crossing For RSVP TE"; + uses PM-DELAY-ADVERTISEMENT-THRESHOLD-CROSSING-CHECK-BAG; + } + leaf probe-computation-interval { + type uint32; + description + "Probe Computation Interval (sec)"; + } + leaf probe-computation-interval-effective { + type uint32; + status deprecated; + description + "Deprecated: Effective Probe Computation Interval + (sec).Use probe-interval-effective instead"; + } + leaf probe-computation-interval-effective-sr-policy { + type uint32; + description + "Effective Probe Computation Interval for SR + Policy (sec)"; + } + leaf probe-computation-interval-effective-endpoint { + type uint32; + description + "Effective Probe Computation Interval for + Endpoint (sec)"; + } + leaf probe-computation-interval-effective-interface { + type uint32; + description + "Effective Probe Computation Interval for + Interface (sec)"; + } + leaf probe-computation-interval-effective-rsvp-te { + type uint32; + description + "Effective Probe Computation Interval for RSVP TE + (sec)"; + } + leaf tos-traffic-class-value { + type uint8; + description + "TOS Traffic Class value specified for protocol + PM-MPLS"; + } + leaf tos-dscp-value { + type uint8; + description + "TOS DSCP value specified for protocol + TWAMP-LIGHT"; + } + leaf burst-interval { + type uint32; + status deprecated; + description + "Deprecated: Burst interval (msec). Config + tx-interval and use tx-interval instead"; + } + leaf burst-interval-effective { + type uint32; + status deprecated; + description + "Deprecated: Effective Burst Interval (msec). + Config tx-interval and use tx-interval-effective + instead"; + } + leaf tx-interval { + type uint32; + description + "TX Interval (usec)"; + } + leaf tx-interval-effective-sr-policy { + type uint32; + description + "Effective TX Interval for SR Policy (usec)"; + } + leaf tx-interval-effective-endpoint { + type uint32; + description + "Effective TX Interval for Endpoint (usec)"; + } + leaf tx-interval-effective-interface { + type uint32; + description + "Effective TX Interval for Interface (usec)"; + } + leaf tx-interval-effective-rsvp-te { + type uint32; + description + "Effective TX Interval for RSVP TE (usec)"; + } + leaf burst-count { + type uint32; + status deprecated; + description + "Deprecated: Number of burst in one probe. Use + packets-per-computation-intvl instead."; + } + leaf packets-per-computation-interval-sr-policy { + type uint32; + description + "Number of packets transmit per computation + interval for SR Policy"; + } + leaf packets-per-computation-interval-endpoint { + type uint32; + description + "Number of packets transmit per computation + interval for Endpoint"; + } + leaf packets-per-computation-interval-interface { + type uint32; + description + "Number of packets transmit per computation + interval for Interface"; + } + leaf packets-per-computation-interval-rsvp-te { + type uint32; + description + "Number of packets transmit per computation + interval for RSVP TE"; + } + leaf delay-measurement-mode { + type Pm-delay-mode; + status deprecated; + description + "Deprecated: Delay Measurement Mode Type.Use + measurement-mode instead"; + } + leaf measurement-mode-sr-policy { + type Pm-delay-mode; + description + "Measurement Mode for SR Policy"; + } + leaf measurement-mode-endpoint { + type Pm-delay-mode; + description + "Measurement Mode for Endpoint"; + } + leaf measurement-mode-interface { + type Pm-delay-mode; + description + "Measurement Mode for Interface"; + } + leaf measurement-mode-rsvp-te { + type Pm-delay-mode; + description + "Measurement Mode for RSVP TE"; + } + leaf router-alert { + type boolean; + description + "IP router alert option"; + } + leaf encap-mode { + type Pm-encap-mode; + description + "Encap Mode"; + } + leaf payload-type { + type Pm-payload; + description + "Type of the probe packet payload"; + } + leaf destination-sweeping-mode-enabled { + type boolean; + description + "Measure the delay with ECMP hashing by sweeping + destination address"; + } + leaf destination-sweeping-range { + type uint32; + description + "Number of IP addresses to sweep"; + } + leaf periodic-advertisement-enabled { + type boolean; + description + "Advertisement Periodic Enabled"; + } + leaf periodic-advertisement-interval { + type uint32; + description + "Advertisement Periodic Interval (sec)"; + } + leaf periodic-advertisement-interval-effective { + type uint32; + status deprecated; + description + "Deprecated: Advertisement Periodic Effective + (sec).Use adv-periodic-effective instead"; + } + leaf periodic-advertisement-interval-effective-sr-policy { + type uint32; + description + "Advertisement Periodic Effective for SR Policy + (sec)"; + } + leaf periodic-advertisement-interval-effective-endpoint { + type uint32; + description + "Advertisement Periodic Effective for Endpoint + (sec)"; + } + leaf periodic-advertisement-interval-effective-interface { + type uint32; + description + "Advertisement Periodic Effective for Interface + (sec)"; + } + leaf periodic-advertisement-interval-effective-rsvp-te { + type uint32; + description + "Advertisement Periodic Effective for RSVP TE + (sec)"; + } + leaf periodic-advertisement-threshold { + type uint32; + description + "Advertisement Periodic Threshold (%)"; + } + leaf periodic-advertisement-minimum-change { + type uint32; + description + "Advertisement Periodic Minimum Change (uSec)"; + } + leaf accelerated-advertisement-threshold { + type uint32; + description + "Advertisement Accelerated Threshold (%)"; + } + leaf accelerated-advertisement-minimum-change { + type uint32; + description + "Advertisement Accelerated Minimum Change (uSec)"; + } + leaf advertisement-logging-delay-exceeded-enabled { + type boolean; + description + "Enable emitting syslog when delay exceeds + threshold"; + } + leaf accelerated-advertisement-enabled { + type boolean; + description + "Advertisement Accelerated Enabled"; + } + leaf advertisement-threshold-check-average-delay { + type boolean; + status deprecated; + description + "Deprecated: Check Average-delay For + Advertisement Threshold Crossing.Use adv-check + instead"; + } + leaf advertisement-threshold-check-minimum-delay { + type boolean; + status deprecated; + description + "Deprecated: Check Minimum-delay For + Advertisement Threshold Crossing.Use adv-check + instead"; + } + leaf advertisement-threshold-check-maximum-delay { + type boolean; + status deprecated; + description + "Deprecated: Check Maximum-delay For + Advertisement Threshold Crossing.Use adv-check + instead"; + } + leaf anomaly-check-advertisement-upper-bound { + type uint32; + description + "Advertisement Anomaly Check Upper Bound (uSec)"; + } + leaf anomaly-check-advertisement-lower-bound { + type uint32; + description + "Advertisement Anomaly Check Lower Bound (uSec)"; + } + leaf anomaly-check-advertisement-enabled { + type boolean; + description + "Advertisement Anomaly Check Enabled"; + } + leaf session-count { + type uint32; + description + "Session count associated with the transport + profile"; + } + leaf session-count-sr-policy { + type uint32; + description + "Session count for SR Policy associated with the + generic profile"; + } + leaf session-count-endpoint { + type uint32; + description + "Session count for Endpoint associated with the + generic profile"; + } + leaf session-count-interface { + type uint32; + description + "Session count for Interface associated with the + generic profile"; + } + leaf session-count-rsvp-te { + type uint32; + description + "Session count for RSVP TE associated with the + generic profile"; + } + } + + grouping PM-DELAY-PROFILE-BAG { + description + "PM Delay Profile bag"; + container interface-delay-profile { + description + "Profile of Interface delay measurement"; + uses PM-DELAY-TRANSPORT-PROFILE-BAG; + } + container sr-policy-delay-profile { + description + "Profile of SR Policy delay measurement"; + uses PM-DELAY-TRANSPORT-PROFILE-BAG; + } + container rsvp-te-delay-profile { + description + "Profile of RSVP-TE delay measurement"; + uses PM-DELAY-TRANSPORT-PROFILE-BAG; + } + container endpoint-delay-profile { + description + "Profile of Endpoint delay measurement"; + uses PM-DELAY-TRANSPORT-PROFILE-BAG; + } + } + + grouping PM-PROFILE-BAG { + description + "PM Profile bag"; + container delay-profile { + description + "Profile info of delay measurement"; + uses PM-DELAY-PROFILE-BAG; + } + container loss-profile { + description + "Profile info of loss measurement"; + uses PM-LOSS-PROFILE-BAG; + } + container liveness-profile { + description + "Profile info of liveness detection"; + uses PM-LIVENESS-PROFILE-BAG; + } + } + + grouping PM-DR-RETRY-ENTRY { + description + "Distribution retry queue entry info"; + leaf distribution-record-name { + type string; + description + "Name of the distribution record"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf retry-reason { + type Pm-dr-retry-reason; + description + "Reason for not distributing the session"; + } + } + + grouping PM-DR-RETRY-QUEUE-INFO { + description + "Distribution retry queue info"; + list retry-entry { + description + "DR session in distribution retry queue"; + uses PM-DR-RETRY-ENTRY; + } + } + + grouping PM-INTF-LAST-ADVERT-BAG { + description + "PM interface delay last advertisement bag"; + container last-advertisement { + description + "Last advertisement info for delay measurement"; + uses PM-SCB-LAST-ADVERT-BAG; + } + } + + grouping PM-INTF-LAST-PROBE-BAG { + description + "PM interface delay last probe bag"; + container last-probe { + description + "Last probe info for delay measurement"; + uses PM-PROBE-SAMPLE-BAG; + } + } + + grouping PM-INTF-LAST-AGGR-BAG { + description + "PM interface delay last aggregation bag"; + container last-aggregation { + description + "Last aggregation interval"; + uses PM-AGGR-SAMPLE-BAG; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf interface-handle { + type uint32; + description + "Interface handle"; + } + } + + grouping PM-INTF-HISTORY-BAG { + description + "PM interface history bag"; + container history-info { + description + "History info of the interface"; + uses PM-HISTORY-SAMPLE-UNION; + } + leaf interface-name-xr { + type string; + description + "Name of the interface"; + } + leaf interface-handle { + type uint32; + description + "Ifhandle of the interface"; + } + } + + grouping PM-INTF-PT-BAG { + description + "Path-Tracing Info"; + leaf interface-id { + type uint32; + description + "Interface ID"; + } + leaf timestamp-template { + type uint32; + description + "Timestamp Template"; + } + leaf load-in { + type uint32; + description + "Load IN"; + } + leaf load-out { + type uint32; + description + "Load OUT"; + } + leaf load-interval { + type uint32; + description + "Load Interval"; + } + leaf time-of-advertisement { + type uint64; + units "millisecond"; + description + "Time of the FIB advertisement + update(milliseconds since Jan. 1, 1970)"; + } + leaf advertisement-reason { + type Pm-advert-reason; + description + "Reason for advertisement"; + } + } + + grouping PM-LOSS-ADVERTISEMENT-BAG { + description + " PM loss advertisement"; + leaf loss-percentage { + type uint32; + units "percentage"; + description + "Packet loss percentage"; + } + leaf timestamp-of-advertisement { + type uint64; + description + "Advertisement timestamp"; + } + leaf advertisement-reason { + type Pm-advert-reason; + description + "Advertisement reason"; + } + } + + grouping PM-LOSS-WINDOW-BAG { + description + "PM loss window"; + leaf last-tx-packet-counter { + type uint64; + description + "Last TX packet counter"; + } + leaf last-rx-packet-counter { + type uint64; + description + "Last RX packet counter"; + } + leaf current-packet-tx-in-window { + type uint64; + description + "Current packet TX in window"; + } + leaf current-packet-rx-in-window { + type uint64; + description + "Current packet RX in window"; + } + leaf loss-percentage { + type uint32; + units "percentage"; + description + "Packet loss percentage"; + } + } + + grouping PM-INTF-LOSS-SUB-SESSION-BAG { + description + "Interface loss-measurement sub-session bag"; + container probe-window { + description + "Probe window loss"; + uses PM-LOSS-WINDOW-BAG; + } + container periodic-window { + description + "Periodic window loss"; + uses PM-LOSS-WINDOW-BAG; + } + leaf interface-name { + type string; + description + "Interface name"; + } + leaf interface-handle { + type uint32; + description + "Interface handle"; + } + leaf interface-state-is-up { + type boolean; + description + "True if interface state is up"; + } + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf rolling-average { + type uint32; + description + "Rolling average"; + } + } + + grouping PM-INTF-LOSS-SESSION-BAG { + description + "Interface loss-measurement session"; + container probe-window { + description + "Probe window loss"; + uses PM-LOSS-WINDOW-BAG; + } + container periodic-window { + description + "Periodic window loss"; + uses PM-LOSS-WINDOW-BAG; + } + container advertisement { + description + "Loss advertisement"; + uses PM-LOSS-ADVERTISEMENT-BAG; + } + leaf session-id { + type uint32; + description + "Session ID"; + } + leaf rolling-average { + type uint32; + description + "Rolling average"; + } + leaf next-probe-start-time-remaining-in-millisec { + type uint32; + units "millisecond"; + description + "Time in milliseconds until the next probe starts"; + } + leaf probe-not-running-reason { + type Pm-probe-running-error-reason; + description + "Reason why probe is not running"; + } + list interface-loss-sub-session { + description + "Interface loss-measurement sub-sessions"; + uses PM-INTF-LOSS-SUB-SESSION-BAG; + } + } + + grouping PM-INTF-BAG { + description + "PM interface bag"; + container in-use-source-ip-address { + description + "Source IP address used for PM probe packet"; + uses PM-IP-ADDR-TYPE; + } + container in-use-destination-ip-address { + description + "Destination IP address used for PM probe packet"; + uses PM-IP-ADDR-TYPE; + } + container next-hop { + description + "Nexthop address of the interface"; + uses PM-IP-ADDR-TYPE; + } + container loss-measurement-session { + description + "Loss-measurement session"; + uses PM-INTF-LOSS-SESSION-BAG; + } + container path-tracing { + description + "Path-Tracing info"; + uses PM-INTF-PT-BAG; + } + leaf interface-name-xr { + type string; + description + "Name of the interface"; + } + leaf interface-handle { + type uint32; + description + "Ifhandle of the interface"; + } + leaf interface-state { + type boolean; + description + "State of the interface"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source address of the interface"; + } + leaf source-v6-address { + type inet:ipv6-address; + description + "Source IPv6 Address of the interface"; + } + leaf link-local-iv6-address { + type inet:ipv6-address; + description + "Link local IPv6 of the interface"; + } + leaf source-mac-address { + type yang:mac-address; + description + "Source Mac address of the interface"; + } + leaf next-hop-mac-address { + type yang:mac-address; + description + "Next-hop Mac address of the next-hop IP address"; + } + leaf primary-vlan-tag { + type uint16; + description + "Primary VLAN Tag of the interface"; + } + leaf secondary-vlan-tag { + type uint16; + description + "Secondary VLAN Tag of the interface"; + } + list delay-measurement-session { + description + "List of all the Delay-measurement sessions of + the interface"; + uses PM-SCB-BAG; + } + } + + grouping PM-NPU-NOTIFICATION-COUNTERS-BAG { + description + "PM NPU offloaded sessions notification counters + bag"; + leaf total-notification-packets { + type uint64; + description + "NPU session notification packets counter"; + } + leaf total-notifications { + type uint64; + description + "NPU notifications counter"; + } + leaf total-liveness-up-notifications { + type uint64; + description + "NPU up notifications counter"; + } + leaf total-liveness-down-notifications { + type uint64; + description + "NPU down notifications counter"; + } + leaf total-malformed-notifications { + type uint64; + description + "NPU malformed notifications counter"; + } + leaf total-invalid-session-id-notifications { + type uint64; + description + "Counter for NPU notifications with invalid + session ID"; + } + } + + grouping PM-NPU-PACKET-COUNTERS-BAG { + description + "PM NPU offloaded sessions packet counters bag"; + leaf total-packets-sent { + type uint64; + description + "Number of total packets sent by npu sessions"; + } + leaf total-packets-received { + type uint64; + description + "Number of total packets received by npu sessions"; + } + leaf total-packets-errors { + type uint64; + description + "Number of total packets have errors"; + } + } + + grouping PM-NPU-GLOBAL-COUNTERS { + description + "PM global counters for NPU offloaded sessions"; + container npu-packet-counters { + description + "NPU packet counters"; + uses PM-NPU-PACKET-COUNTERS-BAG; + } + container npu-notification-counters { + description + "NPU notification counters"; + uses PM-NPU-NOTIFICATION-COUNTERS-BAG; + } + leaf total-sessions { + type uint32; + description + "NPU tatal sessions"; + } + } + + grouping PM-NPU-SRPOLICY-LIVENESS-SESSION-COUNTERS-BAG { + description + "PM NPU offloaded liveness SR Policy session + counters bag"; + leaf total-not-created-sessions { + type uint32; + description + "Number of total npu sessions not created + successfully"; + } + leaf total-created-sessions { + type uint32; + description + "Number of total npu sessions created + successfully"; + } + leaf total-pending-create-sessions { + type uint32; + description + "Number of total npu sessions pending to be + created"; + } + leaf total-pending-update-sessions { + type uint32; + description + "Number of total npu sessions pending to be + updated"; + } + leaf total-pending-delete-sessions { + type uint32; + description + "Number of total npu sessions pending to be + deleteted"; + } + leaf total-sessions { + type uint32; + description + "Number of total npu sessions"; + } + } + + grouping PM-NPU-SRPOLICY-LIVENESS-SUMMARY-BAG { + description + "PM NPU offloaded liveness SR Policy summary bag"; + container npu-liveness-session-counters { + description + "NPU session counters"; + uses PM-NPU-SRPOLICY-LIVENESS-SESSION-COUNTERS-BAG; + } + } + + grouping PM-NPU-LIVENESS-SUMMARY-BAG { + description + "PM NPU offloaded liveness detection sessions + summary bag"; + container npu-sr-policy-liveness-summary { + description + "Summary of NPU SR Policy liveness detection"; + uses PM-NPU-SRPOLICY-LIVENESS-SUMMARY-BAG; + } + } + + grouping PM-NPU-SUMMARY-BAG { + description + "PM NPU offloaded sessions summary bag"; + container npu-liveness-summary { + description + "NPU liveness detection sessions summary"; + uses PM-NPU-LIVENESS-SUMMARY-BAG; + } + container npu-global-counters { + description + "NPU global counters"; + uses PM-NPU-GLOBAL-COUNTERS; + } + leaf npu-id { + type uint16; + description + "NPU ID"; + } + } + + grouping PM-CPU-GLOBAL-COUNTERS-BAG { + description + "PM global counters for PM sessions hosted on CPU"; + leaf query-packets-sent { + type uint64; + description + "Number of query packets sent"; + } + leaf query-packets-received { + type uint64; + description + "Number of received query packets"; + } + leaf received-packet-error-invalid-session-id { + type uint64; + description + "Number of received packet error caused by + invalid session ID"; + } + leaf received-packet-error-no-session { + type uint64; + description + "Number of received packet error caused by no + session"; + } + } + + grouping PM-LOSS-TRANSPORT-SUMMARY-BAG { + description + "PM interface loss summary bag"; + container loss-transport-counters { + description + "TODO: PM loss counters for a transport types"; + uses PM-DELAY-COUNTERS-INFO-BAG; + } + leaf total-loss-sessions { + type uint32; + description + "Number of loss measurement sessions enabled"; + } + } + + grouping PM-LOSS-SUMMARY-BAG { + description + "PM Loss Summary bag"; + container interface-loss-summary { + description + "Interface loss summary"; + uses PM-LOSS-TRANSPORT-SUMMARY-BAG; + } + container delay-global-counters { + status deprecated; + description + "PM delay global counters"; + uses PM-DELAY-GLOBAL-COUNTERS-BAG; + } + } + + grouping PM-SRPOLICY-LIVENESS-SESSION-COUNTERS-BAG { + description + "Session counters info bag for CPU hosted PM SR + Policy liveness detection sessions"; + leaf total-sessions { + type uint32; + description + "Number of liveness detection sessions enabled"; + } + leaf total-probe-running-with-error-sessions { + type uint32; + description + "Number of running with error liveness detection + sessions"; + } + leaf total-probe-running-sessions { + type uint32; + description + "Number of running liveness detection sessions"; + } + leaf total-probe-running-ipv4-sessions { + type uint32; + description + "Number of running ipv4 liveness detection + sessions"; + } + leaf total-probe-running-ipv6-sessions { + type uint32; + description + "Number of running ipv6 liveness detection + sessions"; + } + } + + grouping PM-SRPOLICY-LIVENESS-SUMMARY-BAG { + description + "Summary bag for SR Policy PM liveness detection + sessions hosted on CPU"; + container sr-policy-liveness-session-counters { + description + "Session counters for CPU hosted PM srpolicy + liveness detection sessions"; + uses PM-SRPOLICY-LIVENESS-SESSION-COUNTERS-BAG; + } + container sr-policy-liveness-transport-counters { + description + "Counters for CPU hosted PM srpolicy liveness + detection sessions"; + uses PM-SRPOLICY-LIVENESS-COUNTERS-INFO-BAG; + } + } + + grouping PM-ENDPOINT-LIVENESS-SESSION-COUNTERS-BAG { + description + "Session counters info bag for CPU hosted PM + endpoint liveness detection sessions"; + leaf total-sessions { + type uint32; + description + "Number of liveness detection sessions enabled"; + } + leaf total-probe-running-with-error-sessions { + type uint32; + description + "Number of running with error liveness detection + sessions"; + } + leaf total-probe-running-sessions { + type uint32; + description + "Number of running liveness detection sessions"; + } + leaf total-probe-running-ipv4-sessions { + type uint32; + description + "Number of running ipv4 liveness detection + sessions"; + } + leaf total-probe-running-ipv6-sessions { + type uint32; + description + "Number of running ipv6 liveness detection + sessions"; + } + } + + grouping PM-ENDPOINT-LIVENESS-SUMMARY-BAG { + description + "Summary bag for Endpoint PM liveness detection + sessions hosted on CPU "; + container endpoint-liveness-session-counters { + description + "Session counters for CPU hosted PM endpoint + liveness detection sessions"; + uses PM-ENDPOINT-LIVENESS-SESSION-COUNTERS-BAG; + } + container endpoint-liveness-transport-counters { + description + "Counters for CPU hosted PM endpoint liveness + detection sessions"; + uses PM-ENDPOINT-LIVENESS-COUNTERS-INFO-BAG; + } + } + + grouping PM-LIVENESS-SUMMARY-BAG { + description + "CPU hosted PM liveness detection sessions Summary + bag"; + container endpoint-liveness-summary { + description + "Summary of CPU hosted PM Endpoint liveness + detection sessions"; + uses PM-ENDPOINT-LIVENESS-SUMMARY-BAG; + } + container sr-policy-liveness-summary { + description + "Summary of CPU hosted PM SR Policy liveness + detection sessions"; + uses PM-SRPOLICY-LIVENESS-SUMMARY-BAG; + } + } + + grouping PM-DELAY-GLOBAL-COUNTERS-BAG { + description + "PM global counters"; + leaf query-packets-sent { + type uint64; + description + "Number of query packets sent"; + } + leaf query-packets-received { + type uint64; + description + "Number of received query packets"; + } + leaf received-packet-error-invalid-session-id { + type uint64; + description + "Number of received packet error caused by + invalid session ID"; + } + leaf received-packet-error-no-session { + type uint64; + description + "Number of received packet error caused by no + session"; + } + } + + grouping PM-DELAY-SESSION-COUNTER-BAG { + description + "PM delay session counter info bag"; + leaf total-delay-sessions { + type uint32; + description + "Number of delay measurement sessions enabled"; + } + leaf total-probe-running-with-error-delay-sessions { + type uint32; + description + "Number of running with error delay measurement + sessions"; + } + leaf total-probe-running-delay-sessions { + type uint32; + description + "Number of running delay measurement sessions"; + } + leaf total-probe-running-ipv4-delay-sessions { + type uint32; + description + "Number of running ipv4 delay measurement + sessions"; + } + leaf total-probe-running-ipv6-delay-sessions { + type uint32; + description + "Number of running ipv6 delay measurement + sessions"; + } + leaf total-probe-running-mpls-delay-sessions { + type uint32; + description + "Number of running mpls delay measurement + sessions"; + } + } + + grouping PM-DELAY-TRANSPORT-SUMMARY-BAG { + description + "PM interface delay summary bag"; + container delay-session-counters { + description + "PM delay session counters for a transport type"; + uses PM-DELAY-SESSION-COUNTER-BAG; + } + container delay-transport-counters { + description + "PM delay counters for a transport types"; + uses PM-DELAY-COUNTERS-INFO-BAG; + } + } + + grouping PM-DELAY-SUMMARY-BAG { + description + "PM Delay Summary bag"; + container endpoint-delay-summary { + description + "Summary of Endpoint delay measurement"; + uses PM-DELAY-TRANSPORT-SUMMARY-BAG; + } + container interface-delay-summary { + description + "Summary info of Interface delay measurement"; + uses PM-DELAY-TRANSPORT-SUMMARY-BAG; + } + container sr-policy-delay-summary { + description + "Summary of SR Policy delay measurement"; + uses PM-DELAY-TRANSPORT-SUMMARY-BAG; + } + container rsvp-te-delay-summary { + description + "Summary of RSVP-TE delay measurement"; + uses PM-DELAY-TRANSPORT-SUMMARY-BAG; + } + container delay-global-counters { + status deprecated; + description + "Global counters for PM delay measurement"; + uses PM-DELAY-GLOBAL-COUNTERS-BAG; + } + } + + grouping PM-SUMMARY-BAG { + description + "PM Summary bag"; + container delay-summary { + description + "Summary info of delay measurement"; + uses PM-DELAY-SUMMARY-BAG; + } + container liveness-summary { + description + "Summary info of liveness detection"; + uses PM-LIVENESS-SUMMARY-BAG; + } + container loss-summary { + description + "Loss summary"; + uses PM-LOSS-SUMMARY-BAG; + } + container global-counters { + description + "Global counters for CPU sessions"; + uses PM-CPU-GLOBAL-COUNTERS-BAG; + } + leaf total-endpoints { + type uint32; + description + "Number of endpoints"; + } + leaf total-interfaces { + type uint32; + description + "Number of interfaces"; + } + leaf total-sr-policies { + type uint32; + description + "Number of SR Policies"; + } + leaf total-rsvp-te-tunnels { + type uint32; + description + "Number of RSVP-TE tunnels"; + } + list npu-summary { + description + "NPU sessions summary"; + uses PM-NPU-SUMMARY-BAG; + } + } + + grouping PM-SESSION-ENDPOINT-BAG { + description + "PM Endpoint session"; + container end-point-dest-address { + description + "Endpoint destination address"; + uses PM-IP-ADDR-TYPE; + } + container end-point-src-address { + description + "Endpoint source address"; + uses PM-IP-ADDR-TYPE; + } + container session { + description + "Endpoint session"; + uses PM-SCB-BAG; + } + leaf endpoint-name { + type string; + description + "Endpoint name"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf segment-list-name { + type string; + description + "Segment-list name"; + } + } + + grouping PM-SESSION-SRPOLICY-BAG { + description + "PM SR Policy session"; + container end-point-address { + description + "End point address"; + uses PM-IP-ADDR-TYPE; + } + container atomic-path { + description + "SR Policy atomic path session"; + uses PM-SRPOLICY-ATOMIC-PATH-BAG; + } + leaf color { + type uint32; + description + "Color"; + } + leaf policy-name { + type string; + description + "Policy name"; + } + leaf instance { + type uint32; + description + "Session instance"; + } + leaf preference { + type uint32; + description + "Preference"; + } + leaf origin { + type Pm-xtc-srpolicy-origin; + description + "Protocol origin"; + } + leaf discriminator { + type uint32; + description + "Discriminator"; + } + leaf segment-list-name { + type string; + description + "Segment-list name"; + } + } + + grouping PM-SESSION-RSVPTE-BAG { + description + "PM RSVP-TE session"; + container lsp-session { + description + "RSVP-TE LSP session"; + uses PM-RSVPTE-LSP-DELAY-BAG; + } + leaf tunnel-name { + type string; + description + "RSVP-TE tunnel name"; + } + leaf interface-handle { + type uint32; + description + "Interface handle"; + } + } + + grouping PM-SESSION-INTF-BAG { + description + "PM interface session"; + container next-hop { + description + "Nexthop address"; + uses PM-IP-ADDR-TYPE; + } + container session { + description + "Interface session"; + uses PM-SCB-BAG; + } + leaf interface-name { + type string; + description + "Interface name"; + } + leaf interface-handle { + type uint32; + description + "Interface handle"; + } + } + + grouping PM-SESSION-BAG-UNION { + description + "PM session union"; + container interface-session { + when "../type = 'interface-transport-type'" { + description + "../type = 'InterfaceTransportType'"; + } + description + "Interface session"; + uses PM-SESSION-INTF-BAG; + } + container rsvpte-tunnel-session { + when "../type = 'rsvp-te-transport-type'" { + description + "../type = 'RSVP_TETransportType'"; + } + description + "RSVP-TE tunnel session"; + uses PM-SESSION-RSVPTE-BAG; + } + container sr-policy-session { + when "../type = 'sr-policy-transport-type'" { + description + "../type = 'SRPolicyTransportType'"; + } + description + "SR Policy session"; + uses PM-SESSION-SRPOLICY-BAG; + } + container endpoint-session { + when "../type = 'endpoiont-transport-type'" { + description + "../type = 'EndpoiontTransportType'"; + } + description + "Endpoint session"; + uses PM-SESSION-ENDPOINT-BAG; + } + leaf type { + type Pm-transport; + description + "type"; + } + } + + grouping PM-SESSION-BAG { + description + "PM session"; + container session { + description + "Session union"; + uses PM-SESSION-BAG-UNION; + } + leaf measurement-type { + type Pm-measurement; + description + "Measurement type"; + } + } + + grouping PM-SCB-BAG { + description + "PM interface delay measurement session bag"; + container current-probe { + description + "Information for the current probe"; + uses PM-SCB-PROBE-BAG; + } + container session-counters { + description + "Counters info for the session"; + uses PM-DELAY-COUNTERS-INFO-BAG; + } + container last-advertisement-information { + description + "Last advertisement information of the session"; + uses PM-SCB-LAST-ADVERT-BAG; + } + container next-advertisement-information { + description + "Next advertisement information of the session"; + uses PM-SCB-NEXT-ADVERT-BAG; + } + container last-notification-control-code { + description + "Last notifcation control code received of the + session"; + uses PM-SCB-CONTROL-CODE; + } + container last-error-control-code { + description + "Last error control code received of the session"; + uses PM-SCB-CONTROL-CODE; + } + container responder-address { + description + "Address of the Responder"; + uses PM-IP-ADDR-TYPE; + } + leaf session-id { + type uint32; + description + "ID of the session"; + } + leaf transport-type { + type Pm-transport; + description + "Transport Type of the session"; + } + leaf measurement-type { + type Pm-measurement; + description + "Measurement Type of the session"; + } + leaf profile-name { + type string; + description + "Interface delay-measurement profile name"; + } + leaf periodic-advertisement-interval-in-sec { + type uint32; + units "second"; + description + "Interval of periodic advertisement in seconds"; + } + leaf query-number-of-hops { + type uint8; + description + "Number of hops traversed by the query packet"; + } + list probe-history { + description + "Current probe history"; + uses PM-SCB-SAMPLE-BAG; + } + } + + grouping PM-ENDPOINT-DETAIL-SEGMENT-LIST-BAG { + description + "PM Endpoint segment-list bag"; + leaf segment-list-name { + type string; + description + "Name of the segment-list"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + list delay-measurement-session { + description + "List of all the Delay-measurement sessions of + this segment-list"; + uses PM-SCB-BAG; + } + } + + grouping PM-ENDPOINT-CONSOLIDATED-DETAIL-BAG { + description + "PM endpoint consolidated details bag"; + leaf ep-cons-profile-name { + type string; + description + "Endpoint delay-measurement profile name"; + } + list ep-segment-list { + description + "List of segment-lists in the endpoint"; + uses PM-ENDPOINT-DETAIL-SEGMENT-LIST-BAG; + } + } + + grouping PM-ENDPOINT-DETAIL { + description + "PM Endpoint instance"; + container end-point-address { + description + "IPv4/IPv6 End point address"; + uses PM-IP-ADDR-TYPE; + } + container end-point-session-source-address { + description + "IPv4/IPv6 End point session source address"; + uses PM-IP-ADDR-TYPE; + } + leaf endpoint-name { + type string; + description + "Name of the endpoint session"; + } + leaf destination-udp-port { + type uint16; + description + "Endpoint session destination UDP port"; + } + leaf source-udp-port { + type uint16; + description + "Endpoint session source UDP port"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf description { + type string; + description + "Endpoint session description"; + } + list ep-consolidated-detail { + description + "Consolidated Details to hold all segment lists + of this endpoint"; + uses PM-ENDPOINT-CONSOLIDATED-DETAIL-BAG; + } + } + + grouping PM-ENDPOINT-COMMON { + description + "PM Endpoint common bag"; + leaf endpoint-name-xr { + type string; + description + "Name of the endpoint session"; + } + list endpoint-delay { + description + "List of Endpoint delay measurement"; + uses PM-ENDPOINT-DETAIL; + } + list endpoint-liveness { + description + "List of Endpoint liveness"; + uses PM-ENDPOINT-LIVENESS; + } + } + + grouping PM-ENDPOINT-LIVENESS-COUNTERS-INFO-BAG { + description + "Counters info bag for CPU hosted PM endpoints + liveness detections sessions"; + leaf query-packets-sent { + type uint64; + description + "Number of query packets sent"; + } + leaf query-packet-sent-errors { + type uint64; + description + "Number of query packets sent error"; + } + leaf query-packets-sent-error-sl-label-missing { + type uint64; + description + "Number of query packets sent error caused by + Missing Segment list Labels"; + } + leaf query-packets-received { + type uint64; + description + "Number of received query packets"; + } + leaf received-packet-error-negative-delay { + type uint64; + description + "Number of packet error caused by receiving + negative liveness"; + } + leaf received-packet-error-delay-exceeds-threshold { + type uint64; + description + "Number of packet error caused by measured + liveness is invalid due to exceeding threshold"; + } + leaf received-packet-error-missing-tx-timestamp { + type uint64; + description + "Number of packet error caused by received packet + is missing Tx timestamp"; + } + leaf received-packet-error-missing-rx-timestamp { + type uint64; + description + "Number of packet error caused by received packet + is missing Rx timestamp"; + } + leaf received-packet-error-probe-full { + type uint64; + description + "Number of packet error caused by receiving + packet when probe is full"; + } + leaf received-packet-error-probe-not-started { + type uint64; + description + "Number of packet error caused by receiving + packet when probe is not started"; + } + leaf probes-started { + type uint64; + description + "Number of probes started"; + } + leaf probes-complete { + type uint64; + description + "Number of probes completed"; + } + leaf probes-incomplete { + type uint64; + description + "Number of probes incomplete"; + } + leaf advertisement { + type uint64; + description + "Number of advertisements"; + } + leaf liveness-detection-missed-count { + type uint64; + description + "Number of missed packets"; + } + } + + grouping PM-ENDPOINT-SEGMENT-LIST-COUNTERS-BAG { + description + "PM endpoint segment-list counters bag"; + container counters { + description + "Segment-list delay counters"; + uses PM-DELAY-COUNTERS-INFO-BAG; + } + container liveness-counters { + description + "Segment-list liveness counters"; + uses PM-ENDPOINT-LIVENESS-COUNTERS-INFO-BAG; + } + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + } + + grouping PM-ENDPOINT-CONSOLIDATED-COUNTERS-DATA-BAG { + description + "PM endpoint consolidated counters data bag"; + list segment-list-counter { + description + "List of counters for segment-lists in this + consolidated data"; + uses PM-ENDPOINT-SEGMENT-LIST-COUNTERS-BAG; + } + } + + grouping PM-ENDPOINT-COUNTERS-BAG { + description + "PM endpoint counters bag"; + leaf endpoint-name-xr { + type string; + description + "Name of the endpoint session"; + } + list consolidated-counters-data { + description + "List of consolidated data counters"; + uses PM-ENDPOINT-CONSOLIDATED-COUNTERS-DATA-BAG; + } + } + + grouping PM-ENDPOINT-HISTORY-SEGMENT-LIST-BAG { + description + "PM endpoint segment-list history bag"; + container history-info { + description + "History info of the segment-list"; + uses PM-HISTORY-SAMPLE-UNION; + } + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + } + + grouping PM-ENDPOINT-HISTORY-BAG { + description + "PM endpoint history bag"; + container end-point-address { + description + "IPv4/IPv6 End point address"; + uses PM-IP-ADDR-TYPE; + } + container end-point-session-source-address { + description + "IPv4/IPv6 End point session source address"; + uses PM-IP-ADDR-TYPE; + } + leaf endpoint-name-xr { + type string; + description + "Name of the endpoint session"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + leaf ep-liveness-detection-enabled { + type boolean; + description + "True if liveness detection is enabled for the + endpoint"; + } + list ep-segment-lists-history { + description + "List of segment-lists"; + uses PM-ENDPOINT-HISTORY-SEGMENT-LIST-BAG; + } + } + + grouping PM-ENDPOINT-METRICS-ATOMIC-PATH-BAG { + description + "PM Endpoint atomic path metrics bag"; + leaf session-id { + type uint32; + description + "Endpoint session ID"; + } + leaf packets-sent { + type uint32; + description + "Number of packets sent on the endpoint"; + } + leaf packets-received { + type uint32; + description + "Number of packets received on the endpoint"; + } + } + + grouping PM-ENDPOINT-SEGMENT-LIST-METRICS-BAG { + description + "PM Endpoint segment-list metrics bag"; + container metrics { + description + "Segment-list metrics"; + uses PM-VALUES-BAG; + } + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + leaf timestamp { + type uint64; + units "millisecond"; + description + "Time when the metrics were computed + (milliseconds since Jan. 1, 1970)"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + list atomic-path { + description + "List of atomic paths"; + uses PM-ENDPOINT-METRICS-ATOMIC-PATH-BAG; + } + } + + grouping PM-ENDPOINT-CONSOLIDATED-METRICS-BAG { + description + "PM Endpoint consolidated metrics bag"; + list ep-segment-list { + description + "List of segment-lists"; + uses PM-ENDPOINT-SEGMENT-LIST-METRICS-BAG; + } + } + + grouping PM-ENDPOINT-METRICS-BAG { + description + "PM Endpoint metrics bag"; + container endpoint-address { + description + "IPv4/IPv6 endpoint address"; + uses PM-IP-ADDR-TYPE; + } + container source-address { + description + "IPv4/IPv6 endpoint source address"; + uses PM-IP-ADDR-TYPE; + } + leaf endpoint-name-xr { + type string; + description + "Name of the Endpoint"; + } + leaf destination-udp-port { + type uint16; + description + "Endpoint destination UDP port"; + } + leaf source-udp-port { + type uint16; + description + "Endpoint source UDP port"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + list ep-consolidated-metric { + description + "List of Consolidated Metrics of all segment + lists"; + uses PM-ENDPOINT-CONSOLIDATED-METRICS-BAG; + } + } + + grouping PM-ENDPOINT-LIVENESS-SEGMENT-LIST-BAG { + description + "PM endpoint liveness segment list bag"; + container ep-liveness-info { + description + "Information of endpoint liveness detection + session"; + uses PM-LIVENESS-STATE-INFO-BAG; + } + leaf segment-list-name { + type string; + description + "Name of the segment-list"; + } + leaf session-id { + type uint32; + description + "ID of the session"; + } + leaf liveness-detection-enabled { + type boolean; + description + "Liveness detection is enabled"; + } + leaf probe-not-running-reason { + type Pm-probe-running-error-reason; + description + "Reason why probe is not running"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + } + + grouping PM-ENDPOINT-CONSOLIDATED-LIVENESS-BAG { + description + "PM endpoint consolidated liveness bag"; + leaf ep-live-profile-name { + type string; + description + "Endpoint liveness-detection profile name"; + } + list ep-liveness-segment-list { + description + "List of liveness segment-lists in the endpoint"; + uses PM-ENDPOINT-LIVENESS-SEGMENT-LIST-BAG; + } + } + + grouping PM-ENDPOINT-LIVENESS { + description + "PM Endpoint liveness-detection bag"; + container end-point-address { + description + "IPv4/IPv6 End point address"; + uses PM-IP-ADDR-TYPE; + } + container end-point-session-source-address { + description + "IPv4/IPv6 End point session source address"; + uses PM-IP-ADDR-TYPE; + } + leaf endpoint-name-xr { + type string; + description + "Name of the endpoint session"; + } + leaf vrf-name { + type string; + description + "Name of the VRF"; + } + list ep-consolidated-liveness { + description + "Consolidated liveness details of this endpoint"; + uses PM-ENDPOINT-CONSOLIDATED-LIVENESS-BAG; + } + } + + grouping PM-CAP-HW-OFFLOAD-INFO { + description + "PM hardware offload capability information bag"; + leaf npu-offload-engine-ready { + type boolean; + description + "True if NPU offload engine has initialized"; + } + leaf npu-offload-npu-count { + type uint32; + description + "Number of NPU available for NPU Offload"; + } + leaf npu-offload-max-supported-inject-pps-limit-per-npu { + type uint32; + units "packet/s"; + description + "Packets per second limit for NPU Offload inject + per NPU"; + } + leaf npu-offload-min-supported-inject-interval-per-npu { + type uint32; + description + "Interval in usec supported for NPU Offload per + NPU"; + } + leaf npu-offload-maxupported-session-number-per-npu { + type uint32; + description + "Max number of sessions supported for NPU Offload + per NPU"; + } + } + + grouping PM-CAP-PDDLL-INFO { + description + "PM PD-DLL capability informaation bag"; + leaf pd-dll-max-supported-inject-pps-limit { + type uint32; + units "packet/s"; + description + "Packets per second limit for PD-DLL inject"; + } + leaf pd-dll-min-supported-inject-interval { + type uint32; + description + "Interval in msec supported for PD-DLL inject"; + } + } + + grouping PM-CAP-SPIO-INFO { + description + "PM SPIO capability informaation bag"; + leaf spio-max-supported-inject-pps-limit { + type uint32; + units "packet/s"; + description + "Packets per second limit for SPIO inject"; + } + leaf spio-min-supported-inject-interval { + type uint32; + description + "Interval in usec supported for SPIO inject"; + } + } + + grouping PM-CAP-NETIO-INFO { + description + "PM NETIO capability informaation bag"; + leaf netio-max-supported-inject-pps-limit { + type uint32; + units "packet/s"; + description + "Packets per second limit for NETIO inject"; + } + leaf netio-min-supported-inject-interval { + type uint32; + description + "Interval in usec supported for NETIO inject"; + } + } + + grouping PM-CAPABILITY-INFO { + description + "Performance-measurement capability information"; + container netio-capability-info { + description + "Capability information for NETIO"; + uses PM-CAP-NETIO-INFO; + } + container spio-capability-info { + description + "Capability information for SPIO"; + uses PM-CAP-SPIO-INFO; + } + container pd-dll-capability-info { + description + "Capability information for PD-DLL"; + uses PM-CAP-PDDLL-INFO; + } + container npu-offload-capability-info { + description + "Capability information for NPU offload"; + uses PM-CAP-HW-OFFLOAD-INFO; + } + leaf netio-supported { + type boolean; + description + "True if NETIO is supported on this location for + Performance-measurement"; + } + leaf spio-supported { + type boolean; + description + "True if SPIO is supported on this location for + Performance-measurement"; + } + leaf spio-twamp-supported { + type boolean; + description + "True if SPIO TWAMP is supported on this location + for Performance-measurement"; + } + leaf pd-dll-supported { + type boolean; + description + "True if PD-DLL is supported on this location for + Performance-measurement"; + } + leaf platform-npu-offload-supported { + type boolean; + description + "True if Platform i.e. device supports NPU + Offload"; + } + leaf local-node-npu-offload-supported { + type boolean; + description + "True if NPU Offload is supported on this + location for Performance-measurement"; + } + leaf remote-punt-supportec { + type boolean; + description + "True if packet remote punt is supported on this + location for Performance-measurement"; + } + leaf linecard-distribution-supported { + type boolean; + description + "True if linecard distribution is supported on + this location"; + } + } + + grouping PM-CAPABILITY-BAG { + description + "PM Capability information bag"; + container performance-measurement-capability-info { + description + "PM capability info"; + uses PM-CAPABILITY-INFO; + } + leaf performance-measurement-supported { + type boolean; + description + "True if performance-measurement is supported on + this location"; + } + } + + grouping PM-RSVPTE-LSP-HISTORY-BAG { + description + "PM RSVP-TE LSP history bag"; + container history-union { + description + "History info of the RSVP-TE LSP"; + uses PM-HISTORY-SAMPLE-UNION; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + } + + grouping PM-RSVPTE-HISTORY-BAG { + description + "PM RSVP-TE tunnel history bag"; + leaf tunnel-name-xr { + type string; + description + "RSVP-TE tunnel name"; + } + list lsp { + description + "List of LSPs"; + uses PM-RSVPTE-LSP-HISTORY-BAG; + } + } + + grouping PM-RSVPTE-LSP-DELAY-METRICS-BAG { + description + "PM RSVP-TE LSP delay metrics bag"; + container metrics { + description + "LSP metrics"; + uses PM-VALUES-BAG; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf timestamp { + type uint64; + units "millisecond"; + description + "Time when the metrics were computed + (milliseconds since Jan. 1, 1970)"; + } + } + + grouping PM-RSVPTE-DELAY-METRICS-BAG { + description + "PM RSVP-TE tunnel delay metrics bag"; + leaf tunnel-name-xr { + type string; + description + "RSVP-TE tunnel name"; + } + list lsp { + description + "List of LSPs"; + uses PM-RSVPTE-LSP-DELAY-METRICS-BAG; + } + } + + grouping PM-RSVPTE-LSP-DELAY-BAG { + description + "PM RSVP-TE LSP delay bag"; + container last-probe-results { + description + "Last probe results of LSP"; + uses PM-SCB-PROBE-RESULTS-BAG; + } + container current-probe { + description + "Information for the current probe of the LSP"; + uses PM-SCB-PROBE-BAG; + } + container last-advertisement-information { + description + "Last advertisement information of the RSVP-TE + LSP"; + uses PM-SCB-LAST-ADVERT-BAG; + } + container next-advertisement-information { + description + "Next advertisement information of the RSVP-TE + LSP"; + uses PM-SCB-NEXT-ADVERT-BAG; + } + container last-notification-control-code { + description + "Last notifcation control code received of the + RSVP-TE LSP"; + uses PM-SCB-CONTROL-CODE; + } + container last-error-control-code { + description + "Last error control code received of the RSVP-TE + LSP"; + uses PM-SCB-CONTROL-CODE; + } + container responder-address { + description + "Address of the Responder"; + uses PM-IP-ADDR-TYPE; + } + leaf session-id { + type uint32; + description + "Session ID of the LSP"; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + leaf lsp-source-ipv4-address { + type inet:ipv4-address; + description + "LSP Source IPv4 Address"; + } + leaf periodic-advertisement-interval-in-sec { + type uint32; + units "second"; + description + "Interval of periodic advertisement in seconds"; + } + leaf query-number-of-hops { + type uint8; + description + "Number of hops traversed by the query packet"; + } + list probe-history { + description + "Current probe history of the LSP"; + uses PM-SCB-SAMPLE-BAG; + } + } + + grouping PM-RSVPTE-BAG { + description + "PM RSVP-TE bag"; + leaf tunnel-name-xr { + type string; + description + "RSVP-TE tunnel name"; + } + leaf interface-handle { + type uint32; + description + "Ifhandle of the tunnel"; + } + leaf tunnel-destination-ipv4-address { + type inet:ipv4-address; + description + "IPv4 address destination of the tunnel"; + } + list rsvptelsp-delay-session { + description + "RSVP-TE LSP delay-measurement sessions"; + uses PM-RSVPTE-LSP-DELAY-BAG; + } + } + + grouping PM-RSVPTE-LSP-DELAY-COUNTERS-BAG { + description + "RSVP-TE LSP delay counters bag"; + container counters { + description + "LSP counters"; + uses PM-DELAY-COUNTERS-INFO-BAG; + } + leaf lsp-id { + type uint32; + description + "LSP ID"; + } + } + + grouping PM-RSVPTE-COUNTERS-BAG { + description + "RSVP-TE tunnel counters bag"; + leaf tunnel-name-xr { + type string; + description + "RSVP-TE tunnel name"; + } + list rsvptelsp-delay-counter { + description + "List of LSPs"; + uses PM-RSVPTE-LSP-DELAY-COUNTERS-BAG; + } + } + + grouping PM-SRPOLICY-NPU-OFFLOAD-SEGMENT-LIST-COUNTERS-BAG { + description + "PM segment-list counters bag"; + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + } + + grouping PM-SRPOLICY-NPU-OFFLOAD-CANDIDATE-PATH-COUNTERS-BAG { + description + "PM candidate-path counters bag"; + leaf instance { + type uint32; + description + "Session instance"; + } + leaf preference { + type uint32; + description + "Preference of the candidate-path"; + } + leaf origin { + type Pm-xtc-srpolicy-origin; + description + "Protocol origin"; + } + leaf discriminator { + type uint32; + description + "Discriminator of the candidate-path"; + } + list npu-segment-list-counter { + description + "List of counters for NPU segment-lists in this + candidate-path"; + uses PM-SRPOLICY-NPU-OFFLOAD-SEGMENT-LIST-COUNTERS-BAG; + } + } + + grouping PM-SRPOLICY-SEGMENT-LIST-COUNTERS-BAG { + description + "PM segment-list counters bag"; + container counters { + description + "Segment-list delay counters"; + uses PM-DELAY-COUNTERS-INFO-BAG; + } + container liveness-counters { + description + "Segment-list liveness counters"; + uses PM-SRPOLICY-LIVENESS-COUNTERS-INFO-BAG; + } + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + } + + grouping PM-SRPOLICY-LIVENESS-COUNTERS-INFO-BAG { + description + "Counters info bag for CPU hosted PM SR Policy + liveness detections sessions"; + leaf query-packets-sent { + type uint64; + description + "Number of query packets sent"; + } + leaf query-packet-sent-errors { + type uint64; + description + "Number of query packets sent error"; + } + leaf query-packets-received { + type uint64; + description + "Number of received query packets"; + } + leaf received-packet-error-negative-delay { + type uint64; + description + "Number of packet error caused by receiving + negative liveness"; + } + leaf received-packet-error-delay-exceeds-threshold { + type uint64; + description + "Number of packet error caused by measured + liveness is invalid due to exceeding threshold"; + } + leaf received-packet-error-missing-tx-timestamp { + type uint64; + description + "Number of packet error caused by received packet + is missing Tx timestamp"; + } + leaf received-packet-error-missing-rx-timestamp { + type uint64; + description + "Number of packet error caused by received packet + is missing Rx timestamp"; + } + leaf received-packet-error-probe-full { + type uint64; + description + "Number of packet error caused by receiving + packet when probe is full"; + } + leaf received-packet-error-probe-not-started { + type uint64; + description + "Number of packet error caused by receiving + packet when probe is not started"; + } + leaf probes-started { + type uint64; + description + "Number of probes started"; + } + leaf probes-complete { + type uint64; + description + "Number of probes completed"; + } + leaf probes-incomplete { + type uint64; + description + "Number of probes incomplete"; + } + leaf advertisement { + type uint64; + description + "Number of advertisements"; + } + leaf liveness-detection-missed-count { + type uint64; + description + "Number of missed packets"; + } + } + + grouping PM-ENDPOINT-EXCLUSIVE-DELAY-COUNTERS-INFO-BAG { + description + "PM exclusive counters bag for Endpoint delay"; + leaf query-packets-sent-error-sl-label-missing { + type uint64; + description + "Number of query packets sent error caused by + Missing Segment list Labels"; + } + leaf liveness-detection-missed-count { + type uint64; + description + "Number of missed packets"; + } + } + + grouping PM-SRPOLICY-EXCLUSIVE-DELAY-COUNTERS-INFO-BAG { + description + "PM exclusive counters bag for SR Policy delay"; + leaf liveness-detection-missed-count { + type uint64; + description + "Number of missed packets"; + } + } + + grouping PM-INTF-EXCLUSIVE-DELAY-COUNTERS-INFO-BAG { + description + "PM exclusive counters bag for interface delay"; + leaf query-packet-sent-error-interface-down { + type uint64; + description + "Number of query packets sent error caused by + interface down"; + } + leaf query-packet-sent-error-no-mpls-caps { + type uint64; + description + "Number of query packets sent error caused by no + MPLS caps"; + } + leaf query-packet-sent-error-ipv4-down-with-v4-next-hop { + type uint64; + description + "Number of query packets sent error caused by + IPv4 protocl in down state with configured IPv4 + next hop"; + } + leaf query-packet-sent-error-ipv6-down-with-v6-next-hop { + type uint64; + description + "Number of query packets sent error caused by + IPv6 protocl in down state with configured IPv6 + next hop"; + } + leaf query-packet-sent-error-ipv4ipv6-down-without-next-hop { + type uint64; + description + "Number of query packets sent error caused by + both IPv4 and IPv6 protocl in down state without + configured next hop"; + } + leaf query-packet-sent-error-next-hop-mac-missing { + type uint64; + description + "Number of query packets sent error caused by + missing next hop MAC"; + } + } + + grouping PM-EXCLUSIVE-DELAY-COUNTERS-INFO-UNION { + description + "Counters info type for interface, RSVP-TE LSP, SR + Policy and Endpoint"; + container interface-exclusive-counters { + when "../transport-type = 'interface-transport-type'" { + description + "../TransportType = 'InterfaceTransportType'"; + } + description + "Counters exclusive for interface"; + uses PM-INTF-EXCLUSIVE-DELAY-COUNTERS-INFO-BAG; + } + container sr-policy-exclusive-counters { + when "../transport-type = 'sr-policy-transport-type'" { + description + "../TransportType = 'SRPolicyTransportType'"; + } + description + "Counters exclusive for SR Policies"; + uses PM-SRPOLICY-EXCLUSIVE-DELAY-COUNTERS-INFO-BAG; + } + container endpoint-exclusive-counters { + when "../transport-type = 'endpoiont-transport-type'" { + description + "../TransportType = 'EndpoiontTransportType'"; + } + description + "Counters exclusive for Endpoint"; + uses PM-ENDPOINT-EXCLUSIVE-DELAY-COUNTERS-INFO-BAG; + } + leaf transport-type { + type Pm-transport; + description + "TransportType"; + } + } + + grouping PM-QUERIER-DELAY-COUNTERS-BAG { + description + "PM delay querier counters"; + leaf query-packets-sent { + type uint64; + description + "Number of query packets sent"; + } + leaf query-packet-sent-errors { + type uint64; + description + "Number of query packets sent error"; + } + leaf query-packet-sent-error-no-ip-address { + type uint64; + description + "Number of query packets sent error caused by no + IP address"; + } + leaf query-packets-received { + type uint64; + description + "Number of received query packets"; + } + leaf received-packet-error-negative-delay { + type uint64; + description + "Number of packet error caused by receiving + negative delay"; + } + leaf received-packet-error-delay-exceeds-threshold { + type uint64; + description + "Number of packet error caused by measured delay + is invalid due to exceeding threshold"; + } + leaf received-packet-error-missing-tx-timestamp { + type uint64; + description + "Number of packet error caused by received packet + is missing Tx timestamp"; + } + leaf received-packet-error-missing-rx-timestamp { + type uint64; + description + "Number of packet error caused by received packet + is missing Rx timestamp"; + } + leaf received-packet-error-probe-full { + type uint64; + description + "Number of packet error caused by receiving + packet when probe is full"; + } + leaf received-packet-error-probe-not-started { + type uint64; + description + "Number of packet error caused by receiving + packet when probe is not started"; + } + leaf received-packet-control-code-error { + type uint64; + description + "Number of packet error caused by a control code + error from responder"; + } + leaf received-packet-control-code-notification { + type uint64; + description + "Number of packet error caused by a control code + notification from responder"; + } + leaf probes-started { + type uint64; + description + "Number of probes started"; + } + leaf probes-complete { + type uint64; + description + "Number of probes completed"; + } + leaf probes-incomplete { + type uint64; + description + "Number of probes incomplete"; + } + leaf advertisement { + type uint64; + description + "Number of advertisements"; + } + } + + grouping PM-DELAY-COUNTERS-INFO-BAG { + description + "PM delay counters info bag"; + container generic-counters { + description + "Generic counters for a PM interface instance"; + uses PM-QUERIER-DELAY-COUNTERS-BAG; + } + container exclusive-counters { + description + "Exclusive counters for a PM interface instance"; + uses PM-EXCLUSIVE-DELAY-COUNTERS-INFO-UNION; + } + } + + grouping PM-SRPOLICY-CANDIDATE-PATH-COUNTERS-BAG { + description + "PM candidate-path counters bag"; + container counters { + description + "Candidate-path delay counters"; + uses PM-DELAY-COUNTERS-INFO-BAG; + } + container liveness-counters { + description + "Candidate-path liveness counters"; + uses PM-SRPOLICY-LIVENESS-COUNTERS-INFO-BAG; + } + leaf instance { + type uint32; + description + "Session instance"; + } + leaf preference { + type uint32; + description + "Preference of the candidate-path"; + } + leaf origin { + type Pm-xtc-srpolicy-origin; + description + "Protocol origin"; + } + leaf discriminator { + type uint32; + description + "Discriminator of the candidate-path"; + } + list segment-list-counter { + description + "List of counters for segment-lists in this + candidate-path"; + uses PM-SRPOLICY-SEGMENT-LIST-COUNTERS-BAG; + } + } + + grouping PM-SRPOLICY-COUNTERS-BAG { + description + "PM SR Policy counters bag"; + leaf policy-name-xr { + type string; + description + "Name of the SR Policy"; + } + list candidate-counter { + description + "List of candidate path counters"; + uses PM-SRPOLICY-CANDIDATE-PATH-COUNTERS-BAG; + } + list npu-offloaded-candidate-path-counter { + description + "List of hwo cp"; + uses PM-SRPOLICY-NPU-OFFLOAD-CANDIDATE-PATH-COUNTERS-BAG; + } + } + + grouping PM-SRPOLICY-ATOMIC-PATH-LIVENESS { + description + "PM SR Policy atomic path liveness detection bag"; + container liveness-detection-info { + description + "Information of liveness detection session state"; + uses PM-LIVENESS-STATE-INFO-BAG; + } + list hop-address { + description + "Hop addresses list"; + uses PM-IP-ADDR-TYPE; + } + list label { + description + "MPLS labels"; + leaf entry { + type uint32; + description + "MPLS labels"; + } + } + } + + grouping PM-SRPOLICY-SEGMENT-LIST-LIVENESS { + description + "PM SR Policy segment-list liveness detection bag"; + container liveness-detection-info { + description + "Information of liveness detection session state"; + uses PM-LIVENESS-STATE-INFO-BAG; + } + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + list atomic-path { + description + "List of atomic paths"; + uses PM-SRPOLICY-ATOMIC-PATH-LIVENESS; + } + } + + grouping PM-SRPOLICY-CANDIDATE-PATH-LIVENESS { + description + "PM SR Policy candidate-path liveness detection + bag"; + container liveness-detection-info { + description + "Information of liveness detection session state"; + uses PM-LIVENESS-STATE-INFO-BAG; + } + leaf instance { + type uint32; + description + "Session instance"; + } + leaf preference { + type uint32; + description + "Preference of the candidate-path"; + } + leaf origin { + type Pm-xtc-srpolicy-origin; + description + "Protocol origin"; + } + leaf discriminator { + type uint32; + description + "Discriminator of the candidate-path"; + } + list segment-list { + description + "List of segment-lists"; + uses PM-SRPOLICY-SEGMENT-LIST-LIVENESS; + } + } + + grouping PM-SRPOLICY-LIVENESS { + description + "PM SR Policy liveness detection bag"; + container end-point-address { + description + "IPv4/IPv6 End point address"; + uses PM-IP-ADDR-TYPE; + } + leaf policy-name { + type string; + description + "Name of the SR Policy"; + } + leaf color { + type uint32; + description + "Color"; + } + leaf liveness-detection-enabled { + type boolean; + description + "True if liveness detection is enabled for the + policy"; + } + list candidate-path { + description + "List of candidate-paths"; + uses PM-SRPOLICY-CANDIDATE-PATH-LIVENESS; + } + } + + grouping PM-SRPOLICY-HISTORY-ATOMIC-PATH-BAG { + description + "PM SR Policy atomic path history bag"; + container history-info { + description + "History info of the atomic path "; + uses PM-HISTORY-SAMPLE-UNION; + } + list hop-address { + description + "Hop addresses list"; + uses PM-IP-ADDR-TYPE; + } + } + + grouping PM-SRPOLICY-HISTORY-SEGMENT-LIST-BAG { + description + "PM SR Policy segment-list history bag"; + container history-info { + description + "History info of the segment-list"; + uses PM-HISTORY-SAMPLE-UNION; + } + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + list atomic-paths-history { + description + "List of atomic paths"; + uses PM-SRPOLICY-HISTORY-ATOMIC-PATH-BAG; + } + } + + grouping PM-LM-ADV-SAMPLE-BAG { + description + "LM advertisement sample"; + leaf timestamp { + type uint64; + units "millisecond"; + description + "Timestamp (milliseconds since Jan. 1, 1970)"; + } + leaf advertisement-reason { + type Pm-advert-reason; + description + "Advertisement reason"; + } + leaf loss-percentage { + type uint32; + units "percentage"; + description + "Packet loss percentage"; + } + } + + grouping PM-LM-ADV-HISTORY-BAG { + description + "PM LM advertisement history"; + list lm-advertisement-history { + description + "LM advertisement history"; + uses PM-LM-ADV-SAMPLE-BAG; + } + } + + grouping PM-LM-AGGR-SAMPLE-BAG { + description + "LM probe sample"; + leaf timestamp { + type uint64; + units "millisecond"; + description + "Timestamp (milliseconds since Jan. 1, 1970)"; + } + leaf num-sent-packet { + type uint64; + description + "Number of packets been sent in this aggregation + interval"; + } + leaf num-received-packet { + type uint64; + description + "Number of packets been received in this + aggregation interval"; + } + leaf loss-percentage { + type uint32; + units "percentage"; + description + "Packet loss percentage"; + } + } + + grouping PM-LM-AGGR-HISTORY-BAG { + description + "PM LM aggregation history"; + list lm-aggregated-hisotry { + description + "LM aggregation history"; + uses PM-LM-AGGR-SAMPLE-BAG; + } + } + + grouping PM-LM-PKT-SAMPLE-BAG { + description + "LM packet sample"; + leaf timestamp { + type uint64; + units "millisecond"; + description + "Timestamp (milliseconds since Jan. 1, 1970)"; + } + leaf tx-counter { + type uint64; + description + "TX counter"; + } + leaf rx-counter { + type uint64; + description + "RX RX counter"; + } + } + + grouping PM-LM-PKT-HISTORY-BAG { + description + "PM LM packet history"; + list lm-packet-hisotry { + description + "LM packet history"; + uses PM-LM-PKT-SAMPLE-BAG; + } + } + + grouping PM-LM-PROBE-SAMPLE-BAG { + description + "LM probe sample"; + leaf timestamp { + type uint64; + units "millisecond"; + description + "Timestamp (milliseconds since Jan. 1, 1970)"; + } + leaf num-sent-packet { + type uint64; + description + "Number of packets been sent in this probe + interval"; + } + leaf num-received-packet { + type uint64; + description + "Number of packets been received in this probe + interval"; + } + leaf loss-percentage { + type uint32; + units "percentage"; + description + "Packet loss percentage"; + } + } + + grouping PM-LM-PROBE-HISTORY-BAG { + description + "PM LM probe history"; + list lm-probe-hisotry { + description + "LM probe history"; + uses PM-LM-PROBE-SAMPLE-BAG; + } + } + + grouping PM-LIVE-SAMPLE-BAG { + description + "PM liveness session history bag"; + leaf liveness-state-change-timestamp { + type uint64; + description + "Time liveness session state was changed"; + } + leaf liveness-state-is-up { + type boolean; + description + "True if liveness session is in UP state"; + } + leaf sent-notification-to-fib { + type boolean; + description + "True if session up/down notification was sent to + FIB"; + } + leaf local-label { + type uint32; + description + "Local label"; + } + } + + grouping PM-LIVE-HISTORY-BAG { + description + "PM liveness history"; + list liveness-hisotry { + description + "List of records of liveness history"; + uses PM-LIVE-SAMPLE-BAG; + } + } + + grouping PM-ADV-SAMPLE-BAG { + description + "PM advertisement history bag"; + container advertised-values { + description + "Advertised delay information"; + uses PM-VALUES-BAG; + } + leaf advertisement-timestamp { + type uint64; + units "millisecond"; + description + "Time advertisement was done (milliseconds since + Jan. 1, 1970)"; + } + leaf advertisement-reason { + type Pm-advert-reason; + description + "Reason for advertisement"; + } + } + + grouping PM-ADV-HISTORY-BAG { + description + "PM advertisement history"; + list advertisement-history { + description + "List of samples of advertisement history records"; + uses PM-ADV-SAMPLE-BAG; + } + } + + grouping PM-AGGR-SAMPLE-BAG { + description + "PM aggregated delay probe history bag"; + container aggregated-probe-values { + description + "Summarised results of the aggregated probe"; + uses PM-VALUES-BAG; + } + leaf aggregation-timestamp { + type uint64; + units "millisecond"; + description + "Time probe aggregation was done (milliseconds + since Jan. 1, 1970)"; + } + } + + grouping PM-AGGR-HISTORY-BAG { + description + "PM aggregated history"; + list aggregated-history { + description + "List of samples of aggregation history records"; + uses PM-AGGR-SAMPLE-BAG; + } + } + + grouping PM-PROBE-SAMPLE-BAG { + description + "PM delay probe history bag"; + container probe-values { + description + "Summarized results of the probe"; + uses PM-VALUES-BAG; + } + leaf probe-start-timestamp { + type uint64; + units "millisecond"; + description + "Time last probe started (milliseconds since Jan. + 1, 1970)"; + } + leaf packets-sent { + type uint32; + description + "Number of query packets sent"; + } + leaf packets-received { + type uint32; + description + "Number of query Packets received"; + } + } + + grouping PM-PROBE-HISTORY-BAG { + description + "PM probe history"; + list probe-history { + description + "List of samples of probe history records"; + uses PM-PROBE-SAMPLE-BAG; + } + } + + grouping PM-HISTORY-SAMPLE-UNION { + description + "PM history sample union"; + container probe-history { + when "../history-type = 'history-type-probe'" { + description + "../HistoryType = 'HistoryTypeProbe'"; + } + description + "Info of delay-measurement probe history"; + uses PM-PROBE-HISTORY-BAG; + } + container aggregated-history { + when "../history-type = 'history-type-aggregated'" { + description + "../HistoryType = 'HistoryTypeAggregated'"; + } + description + "Info of delay-measurement aggregation history"; + uses PM-AGGR-HISTORY-BAG; + } + container advertisement-history { + when "../history-type = 'history-type-advertisement'" { + description + "../HistoryType = 'HistoryTypeAdvertisement'"; + } + description + "Info of delay-measurement advertisement history"; + uses PM-ADV-HISTORY-BAG; + } + container liveness-history { + when "../history-type = 'history-type-liveness-state'" { + description + "../HistoryType = 'HistoryTypeLivenessState'"; + } + description + "Info of liveness session history"; + uses PM-LIVE-HISTORY-BAG; + } + container lm-probe-history { + when "../history-type = 'history-type-lm-probe'" { + description + "../HistoryType = 'HistoryTypeLMProbe'"; + } + description + "Info of loss-measurement probe history"; + uses PM-LM-PROBE-HISTORY-BAG; + } + container lm-packet-history { + when "../history-type = 'history-type-lm-packet'" { + description + "../HistoryType = 'HistoryTypeLMPacket'"; + } + description + "Info of loss-measurement packet history"; + uses PM-LM-PKT-HISTORY-BAG; + } + container lm-aggregated-history { + when "../history-type = 'history-type-lm-aggregated'" { + description + "../HistoryType = 'HistoryTypeLMAggregated'"; + } + description + "Info of loss-measurement aggregation history"; + uses PM-LM-AGGR-HISTORY-BAG; + } + container lm-advertisement-history { + when "../history-type = 'history-type-lm-advertisement'" { + description + "../HistoryType = 'HistoryTypeLMAdvertisement'"; + } + description + "Info of loss-measurement advertisement history"; + uses PM-LM-ADV-HISTORY-BAG; + } + leaf history-type { + type Pm-history; + description + "HistoryType"; + } + } + + grouping PM-SRPOLICY-HISTORY-CANDIDATE-PATH-BAG { + description + "PM SR Policy segment-list history bag"; + container history-info { + description + "History info of the candidate-path"; + uses PM-HISTORY-SAMPLE-UNION; + } + leaf preference { + type uint32; + description + "Preference of the candidate-path"; + } + leaf origin { + type Pm-xtc-srpolicy-origin; + description + "Protocol origin"; + } + leaf discriminator { + type uint32; + description + "Discriminator of the candidate-path"; + } + list segment-lists-history { + description + "List of segment-lists"; + uses PM-SRPOLICY-HISTORY-SEGMENT-LIST-BAG; + } + } + + grouping PM-SRPOLICY-HISTORY-BAG { + description + "PM SR Policy history bag"; + container end-point-address { + description + "IPv4/IPv6 End point address"; + uses PM-IP-ADDR-TYPE; + } + leaf color { + type uint32; + description + "Color"; + } + leaf policy-name { + type string; + description + "Name of the SR Policy"; + } + list candidate-paths-history { + description + "List of candidate-paths"; + uses PM-SRPOLICY-HISTORY-CANDIDATE-PATH-BAG; + } + } + + grouping PM-SRPOLICY-METRICS-ATOMIC-PATH-BAG { + description + "PM SR Policy atomic path metrics bag"; + container metrics { + description + "Atomic Path metrics"; + uses PM-VALUES-BAG; + } + list hop-address { + description + "Hop addresses list"; + uses PM-IP-ADDR-TYPE; + } + list label { + description + "MPLS labels"; + leaf entry { + type uint32; + description + "MPLS labels"; + } + } + } + + grouping PM-SRPOLICY-SEGMENT-LIST-METRICS-BAG { + description + "PM SR Policy segment-list metrics bag"; + container metrics { + description + "Segment-list metrics"; + uses PM-VALUES-BAG; + } + leaf segment-list-name { + type string; + description + "Segment-list name, not set if path is dynamic"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + list atomic-path { + description + "List of atomic paths"; + uses PM-SRPOLICY-METRICS-ATOMIC-PATH-BAG; + } + } + + grouping PM-SRPOLICY-CANDIDATE-PATH-METRICS-BAG { + description + "PM SR Policy candidate-path metrics bag"; + container metrics { + description + "Candidate-path metrics"; + uses PM-VALUES-BAG; + } + leaf instance { + type uint32; + description + "Session instance"; + } + leaf preference { + type uint32; + description + "Preference of the candidate-path"; + } + leaf origin { + type Pm-xtc-srpolicy-origin; + description + "Protocol origin"; + } + leaf discriminator { + type uint32; + description + "Discriminator of the candidate-path"; + } + leaf timestamp { + type uint64; + units "millisecond"; + description + "Time when the metrics were computed + (milliseconds since Jan. 1, 1970)"; + } + list segment-list { + description + "List of segment-lists"; + uses PM-SRPOLICY-SEGMENT-LIST-METRICS-BAG; + } + } + + grouping PM-SRPOLICY-METRICS-BAG { + description + "PM SR Policy metrics bag"; + leaf policy-name { + type string; + description + "Name of the SR Policy"; + } + list candidate-path { + description + "List of candidate-paths"; + uses PM-SRPOLICY-CANDIDATE-PATH-METRICS-BAG; + } + } + + grouping PM-SCB-SAMPLE-BAG { + description + "PM delay probe sample bag"; + leaf measurement-value { + type uint64; + description + "Measurement value (nsec)"; + } + leaf query-timestamp { + type uint64; + units "millisecond"; + description + "Timestamp when the measurement was taken + (milliseconds since Jan. 1, 1970)"; + } + } + + grouping PM-NPU-NOTIF-INFO-BAG { + description + "NPU notification information"; + leaf session-is-up { + type boolean; + description + "True if liveness session state is up"; + } + leaf last-notification-receive-timestamp { + type uint64; + description + "Timestamp of receiving the last NPU notification"; + } + } + + grouping PM-SESSION-NPU-OFFLOAD-INFO-BAG { + description + "PM session NPU offload information"; + container npu-notification-info { + description + "Information of NPU notification"; + uses PM-NPU-NOTIF-INFO-BAG; + } + leaf npu-number { + type uint8; + description + "Number of the NPU where the session is hosted"; + } + leaf npu-session-state { + type Pm-npu-session-running-state; + description + "Session state of NPU offloaded session"; + } + leaf retry-count { + type uint32; + description + "Session retry count on a state"; + } + } + + grouping PM-SRPOLICY-ATOMIC-PATH-BAG { + description + "PM SR Policy atomic path bag"; + container session-npu-offload-info { + description + "PM session NPU offload information"; + uses PM-SESSION-NPU-OFFLOAD-INFO-BAG; + } + container last-advertisement-information { + description + "Last advertisement information of the atomic + path"; + uses PM-SCB-LAST-ADVERT-BAG; + } + container next-advertisement-information { + description + "Current advertisement information of the atomic + path"; + uses PM-SCB-NEXT-ADVERT-BAG; + } + container current-probe-results { + description + "Current probe results of the atomic path"; + uses PM-SCB-PROBE-RESULTS-BAG; + } + container last-probe-results { + description + "Last probe results of the atomic path"; + uses PM-SCB-PROBE-RESULTS-BAG; + } + container liveness-detection-info { + description + "Information for liveness detection"; + uses PM-LIVENESS-STATE-INFO-BAG; + } + container last-notification-control-code { + description + "Last notifcation control code received of the + atomic path"; + uses PM-SCB-CONTROL-CODE; + } + container last-error-control-code { + description + "Last error control code received of the atomic + path"; + uses PM-SCB-CONTROL-CODE; + } + container responder-address { + description + "Address of the Responder"; + uses PM-IP-ADDR-TYPE; + } + leaf npu-offloaded-session { + type boolean; + description + "PM sessions has been offloaded to NPU"; + } + leaf to-be-deleted { + type boolean; + description + "Atomic path is to be deleted"; + } + leaf outgoing-interface { + type uint32; + description + "Outgoing interface of the atomic path"; + } + leaf session-id { + type uint32; + description + "Session ID of the atomic path"; + } + leaf liveness-detection-enabled { + type boolean; + description + "Liveness detection is enabled"; + } + leaf query-number-of-hops { + type uint8; + description + "Number of hops traversed by the query packet"; + } + list hop-address { + description + "Hop addresses list"; + uses PM-IP-ADDR-TYPE; + } + list label { + description + "MPLS labels of the atomic path"; + leaf entry { + type uint32; + description + "MPLS labels of the atomic path"; + } + } + list current-probe-history { + description + "Current probe history of the atomic path"; + uses PM-SCB-SAMPLE-BAG; + } + } + + grouping PM-SEGMENT-BAG { + description + "PM segment information"; + container ip-address { + description + "Segment IP address"; + uses PM-IP-ADDR-TYPE; + } + leaf mpls-label { + type uint32; + description + "Segment mpls label"; + } + } + + grouping PM-SRPOLICY-SEGMENT-LIST-BAG { + description + "PM SR Policy segment-list bag"; + container last-advertisement-information { + description + "Last advertisement information of the + segment-list"; + uses PM-SCB-LAST-ADVERT-BAG; + } + container next-advertisement-information { + description + "Current advertisement information of the + segment-list"; + uses PM-SCB-NEXT-ADVERT-BAG; + } + container current-probe-results { + description + "Current probe results of the segment-list"; + uses PM-SCB-PROBE-RESULTS-BAG; + } + container last-probe-results { + description + "Last probe results of the segment-list"; + uses PM-SCB-PROBE-RESULTS-BAG; + } + container liveness-detection-info { + description + "Information for liveness detection"; + uses PM-LIVENESS-STATE-INFO-BAG; + } + container last-notification-control-code { + description + "Last notifcation control code received of the + segment-list"; + uses PM-SCB-CONTROL-CODE; + } + container last-error-control-code { + description + "Last error control code received of the + segment-list"; + uses PM-SCB-CONTROL-CODE; + } + leaf segment-list-name { + type string; + description + "Name of the segment-list"; + } + leaf reverse-path-segment-list-name { + type string; + description + "Name of the reverse path segment-list"; + } + leaf to-be-deleted { + type boolean; + description + "Segment list is to be deleted"; + } + leaf atomic-path-total-count { + type uint32; + description + "Number of atomic paths in the segment-list"; + } + leaf liveness-detection-enabled { + type boolean; + description + "Liveness detection is enabled"; + } + list segment { + description + "List of segments"; + uses PM-SEGMENT-BAG; + } + list reverse-path-segment { + description + "List of reverse path segments"; + uses PM-SEGMENT-BAG; + } + list atomic-path { + description + "List of atomic paths"; + uses PM-SRPOLICY-ATOMIC-PATH-BAG; + } + } + + grouping PM-LIVENESS-STATE-INFO-BAG { + description + "Liveness detection session state information"; + leaf session-is-up { + type boolean; + description + "Liveness session state"; + } + leaf miss-count { + type uint32; + description + "Number of continuously missed probe packets"; + } + leaf last-session-state-change-timestamp { + type uint64; + description + "Timestamp of the last liveness session state + change"; + } + } + + grouping PM-SCB-CONTROL-CODE { + description + "Last received control code"; + leaf control-code { + type uint8; + description + "MPLS PM RFC 6374 control code"; + } + leaf timestamp { + type uint64; + units "millisecond"; + description + "Received timestamp of the control code + (milliseconds since Jan. 1, 1970)"; + } + } + + grouping PM-SCB-PROBE-BAG { + description + "PM delay probe bag"; + container probe-results { + description + "Summarized results of the current probe"; + uses PM-VALUES-BAG; + } + leaf probe-start-time-stamp { + type uint64; + units "millisecond"; + description + "Timestamp in milliseconds of the current probe + start (milliseconds since Jan. 1, 1970)"; + } + leaf next-probe-start-time-remaining-in-millisec { + type uint32; + units "millisecond"; + description + "Time in milliseconds until the next probe starts"; + } + leaf next-packet-sent-time-remaining-in-millisec { + type uint32; + units "millisecond"; + description + "Time in milliseconds until the next packet is + sent"; + } + leaf burst-interval { + type uint32; + units "millisecond"; + status deprecated; + description + "Deprecated: Burst interval (in milliseconds). + Config tx-interval and use tx-interval instead"; + } + leaf burst-interval-is-stretched { + type boolean; + status deprecated; + description + "Deprecated: True if the burst interval has been + stretched forpacket rate-limiting. Config + tx-interval and usetx-interval-is-stretched + instead."; + } + leaf tx-interval { + type uint32; + units "microsecond"; + description + "TX interval (in microseconds)"; + } + leaf tx-interval-is-stretched { + type boolean; + description + "True if the TX interval has been stretched for + packet rate-limiting"; + } + leaf number-of-packets-sent { + type uint32; + description + "Number of packets sent in the current probe"; + } + leaf number-of-packets-received { + type uint32; + description + "Number of packets received in the current probe"; + } + leaf probe-not-running-reason { + type Pm-probe-running-error-reason; + description + "Reason why probe is not running"; + } + } + + grouping PM-SCB-PROBE-RESULTS-BAG { + description + "PM probe results bag"; + container probe-values { + description + "Summarized results of the probe"; + uses PM-VALUES-BAG; + } + leaf number-of-packets-sent { + type uint32; + description + "Number of packets sent in the probe"; + } + leaf number-of-packets-received { + type uint32; + description + "Number of packets received in the probe"; + } + } + + grouping PM-SCB-NEXT-ADVERT-BAG { + description + "PM delay next advertisement bag"; + container advertisement-interval-values { + description + "Next advertisement values"; + uses PM-VALUES-BAG; + } + leaf advertisement-interval-probes-remaining { + type uint32; + description + "Probes remaining until next periodic + advertisement check"; + } + leaf rolling-average { + type uint32; + description + "Rolling average value (uSec)"; + } + } + + grouping PM-VALUES-BAG { + description + "PM delay summarized delay values"; + leaf average { + type uint32; + description + "Average value (uSec)"; + } + leaf minimum { + type uint32; + description + "Minimum value (uSec)"; + } + leaf maximum { + type uint32; + description + "Maximum value (uSec)"; + } + leaf variance { + type uint32; + description + "Variance value (uSec)"; + } + } + + grouping PM-SCB-LAST-ADVERT-BAG { + description + "PM delay last advertisement bag"; + container advertised-values { + description + "Advertised delay information"; + uses PM-VALUES-BAG; + } + leaf time-of-advertisement { + type uint64; + units "millisecond"; + description + "Time of the advertisement (milliseconds since + Jan. 1, 1970)"; + } + leaf advertisement-reason { + type Pm-advert-reason; + description + "Reason for advertisement"; + } + leaf aflag-set { + type boolean; + description + "A flag is set"; + } + } + + grouping PM-SRPOLICY-CANDIDATE-PATH-BAG { + description + "PM SR Policy candidate-path bag"; + container last-advertisement-information { + description + "Last advertisement information of the + candidate-path"; + uses PM-SCB-LAST-ADVERT-BAG; + } + container next-advertisement-information { + description + "Current advertisement information of the + candidate-path"; + uses PM-SCB-NEXT-ADVERT-BAG; + } + container last-probe-results { + description + "Last probe results of candidate-path"; + uses PM-SCB-PROBE-RESULTS-BAG; + } + container current-probe { + description + "Information for the current probe"; + uses PM-SCB-PROBE-BAG; + } + container last-notification-control-code { + description + "Last notifcation control code received of the + candidate-path"; + uses PM-SCB-CONTROL-CODE; + } + container last-error-control-code { + description + "Last error control code received of the + candidate-path"; + uses PM-SCB-CONTROL-CODE; + } + container liveness-detection-info { + description + "Information for liveness detection"; + uses PM-LIVENESS-STATE-INFO-BAG; + } + leaf instance { + type uint32; + description + "Session instance"; + } + leaf preference { + type uint32; + description + "Preference of the candidate-path"; + } + leaf origin { + type Pm-xtc-srpolicy-origin; + description + "Protocol-origin of the candidate-path"; + } + leaf discriminator { + type uint32; + description + "Discriminator of the candidate-path"; + } + leaf source-address-v4 { + type inet:ipv4-address; + description + "Source address of the candidate-path"; + } + leaf local-label { + type uint32; + description + "Local label"; + } + leaf to-be-deleted { + type boolean; + description + "Candidate path is to be deleted"; + } + leaf notification-to-fib-enabled { + type boolean; + description + "Notification to FIB is enabled"; + } + leaf last-notification-to-fib-timestamp { + type uint64; + description + "Timestamp of the last notification sent to FIB"; + } + leaf profile-name { + type string; + description + "SR Policy delay-measurement profile name"; + } + leaf periodic-advertisement-interval-in-sec { + type uint32; + units "second"; + description + "Interval of periodic advertisement in seconds"; + } + leaf liveness-detection-enabled { + type boolean; + description + "Liveness detection is enabled"; + } + leaf segment-list-total-count { + type uint32; + description + "Number of segment lists in the candidate-path"; + } + leaf npu-offload-session-enabled { + type boolean; + description + "True if NPU offload session is enabled for this + candidate path"; + } + list segment-list { + description + "List of segment-lists"; + uses PM-SRPOLICY-SEGMENT-LIST-BAG; + } + } + + grouping PM-IP-ADDR-TYPE { + description + "IPv4/IPv6 address type"; + leaf ip-address-type { + type Pm-addr; + description + "IPAddressType"; + } + leaf ipv4 { + when "../ip-address-type = 'ipv4'" { + description + "../IPAddressType = 'IPv4'"; + } + type Pm-ipv4-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../ip-address-type = 'ipv6'" { + description + "../IPAddressType = 'IPv6'"; + } + type Pm-ipv6-addr; + description + "IPv6 address type"; + } + } + + grouping PM-SRPOLICY-BAG { + description + "PM SR Policy bag"; + container end-point-address { + description + "IPv4/IPv6 End point address"; + uses PM-IP-ADDR-TYPE; + } + leaf color { + type uint32; + description + "Color"; + } + leaf policy-name-xr { + type string; + description + "Name of the SR Policy"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf to-be-deleted { + type boolean; + description + "Policy is to be deleted"; + } + leaf candidate-path-total-count { + type uint32; + description + "Number of candidate-paths in the SR Policy"; + } + list candidate-path { + description + "List of candidate-paths"; + uses PM-SRPOLICY-CANDIDATE-PATH-BAG; + } + } + + grouping PM-DR-NPU-INFO { + description + "NPU info"; + leaf node-id { + type uint32; + description + "Node ID of Linecard"; + } + leaf npu-id { + type uint16; + description + "ID of the NPU"; + } + leaf npu-offload-supported { + type boolean; + description + "True if NPU supports NPU offload"; + } + leaf npu-offload-engine-ready { + type boolean; + description + "True if NPU offload engine is ready to host + sessions"; + } + leaf max-number-of-sessions-supported { + type uint32; + description + "Max number of sessions supported on this NPU"; + } + leaf current-number-of-sessions { + type uint32; + description + "Current number of sessions on the NPU"; + } + leaf available-number-of-sessions { + type uint32; + description + "Available number of sessions on the NPU"; + } + } + + grouping PM-DR-LC-INFO { + description + "LC bag"; + leaf linecard-location-name { + type string; + description + "Location of the Linecard"; + } + leaf linecard-node-id { + type uint32; + description + "Node ID of the linecard"; + } + list npu-info { + description + "List of NPUs"; + uses PM-DR-NPU-INFO; + } + } + + grouping PM-DR-LC-NPU-INFO { + description + "LC NPU info bag"; + leaf number-of-connected-linecards { + type uint32; + description + "Number of connected LC"; + } + list linecard-info { + description + "List of Linecards"; + uses PM-DR-LC-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper.yang new file mode 100644 index 000000000..0b184914b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-perf-meas-oper.yang @@ -0,0 +1,1058 @@ +module Cisco-IOS-XR-perf-meas-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-perf-meas-oper"; + prefix perf-meas-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-perf-meas-oper-sub2 { + revision-date 2022-05-31; + } + include Cisco-IOS-XR-perf-meas-oper-sub1 { + revision-date 2022-05-31; + } + + 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 perf-meas package operational data. + + This module contains definitions + for the following management objects: + performance-measurement: Performance Measurement operational + data + performance-measurement-responder: Performance Measurement + operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-31 { + description + "Remove non-related fields for interface PT bag + 2022-05-15 + Change npu-offload-session-eabled to npu-offload-session-enabled in pm_srpolicy_candidate_path_bag. + 2022-04-25 + Add new advertisement reason for PM interface path tracing attribute + 2022-04-06 + Change hardware to npu in offload elements. + 2022-04-05 + Updated error reason for UDP port failure and capability timestamp to usec. + 2022-03-16 + Add new data points. + 2022-03-15 + NPU effective burst and tx timer in profile. + 2022-03-09 + Per transport CPU counters for generic profile. + 2022-02-22 + Change display format in show performance measure profile. + 2022-01-28 + Remove packet counters and add pm_npu_session_packet_counters_bag in pm_npu_counters_info_bag. + 2022-01-15 + npu offload support, npu ports and distribution retry queue. + 2021-11-18 + Added transport specific parameters to profile information. + 2021-10-27 + Added tx-interval to profile information."; + semver:module-version "6.0.0"; + } + revision 2021-06-15 { + description + "Added default TWAMP port entry in pm_rx_udp_ports_bag."; + semver:module-version "5.0.0"; + } + revision 2021-06-02 { + description + "Added session id to endpoint liveness bag. + 2021-04-17 + Removed liveness parameters from delay profile bag. + 2021-02-26 + Remove PM hidden show cli, loss, history packet. + 2021-02-16 + Remove liveness history and liveness detection verbose from sr-policy delay schema. + 2021-01-08 + Added srpolicy liveness schema. + 2021-01-08 + Added srpolicy liveness history schema and renamed liveness detection schema. + 2020-12-19 + Added schema for endpoint liveness profile. + 2020-12-02 + Add sr-policy liveness profile bag and oper schema. + 2020-11-26 + Update endpoint show command bags in order to support liveness-detection. + 2020-11-17 + Added new bag for PPS info. IosSetYangSchemaRev Cisco-IOS-XR-perf-meas-oper + 2020-10-27 + Added anomaly support for sr-policy min delay metrics. + 2020-10-27 + Added all endpoint show commands support and respective bags. + 2020-10-15 + Update probe running reason name for link down. + 2020-10-02 + Added anomaly support for interface min delay metrics. + 2020-08-06 + Added liveness session state history information. + 2020-07-23 + Fixed typos in perf-meas oper bag."; + semver:module-version "4.0.0"; + } + revision 2020-06-24 { + description + "Update perf-meas oper schema task group. + 2020-04-10 + Added new TX error counter for next hop MAC missing. + 2020-03-31 + 721 nohelp CLI for liveness, loopback, endpoint, src-port, named profile, distribution. + 2020-03-25 + Add trace id in PM session bag. + 2020-03-17 + Added new types counters to count different types of PM DM sessions. + 2020-03-09 + Added new types of probe running errors and counters for probe running errors. + 2020-02-24 + Modifid type of service knobs from array to integer. + 2020-02-21 + Modify router alert type + 2020-02-19 + Modifiy periodic minimum change value. + 2020-02-13 + Modifiy delay-measurement hisotry key words. + 2020-01-22 + Added a new advertisement reason for interface delay-measurement. + 2019-12-16 + Revision IOS XR 7.2.1 Added responder src address and num of hops for PM DM. + 2019-12-09 + Added new reason for DM probe not running. + 2019-11-18 + Revision IOS XR 7.2.1 Added EDT for Liveness state for SR Policy Candidate path atmoic path."; + semver:module-version "3.0.0"; + } + revision 2019-10-19 { + description + "Added burst-interval-effective to oper data."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-12-13 { + description + "Revision IOS XR 7.0.1 Added delay measurment for SR Policy and RSVP-TE LSP."; + } + revision 2017-10-17 { + description + "Revision Zero."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container performance-measurement { + config false; + description + "Performance Measurement operational data"; + container nodes { + description + "Node table for node-specific operational data"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container lc-npu-info { + description + "Information for Linecard and NPU information"; + uses PM-DR-LC-NPU-INFO; + } + container sr-policies { + description + "SR Policies"; + container sr-policy-details { + description + "Table of SR Policies detail info"; + list sr-policy-detail { + key "policy-name"; + description + "SR Policy information"; + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Policy name"; + } + uses PM-SRPOLICY-BAG; + } + } + container sr-policy-delay { + description + "SR Policy Delay-measurement information"; + container sr-policy-last-advertisements { + description + "Table of last advertisement metrics"; + list sr-policy-last-advertisement { + key "sr-policy-name"; + description + "Last advertisement metrics information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-METRICS-BAG; + } + } + container sr-policy-probe-computation-histories { + description + "Table of probe computation history"; + list sr-policy-probe-computation-history { + key "sr-policy-name"; + description + "Probe computation history information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-HISTORY-BAG; + } + } + container sr-policy-advertisement-histories { + description + "Table of advertisement history"; + list sr-policy-advertisement-history { + key "sr-policy-name"; + description + "Advertisement history information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-HISTORY-BAG; + } + } + container sr-policy-last-probe-verboses { + description + "Table of last probe metrics verbose"; + list sr-policy-last-probe-verbose { + key "sr-policy-name"; + description + "Last probe verbose information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-METRICS-BAG; + } + } + container sr-policy-last-advertisement-verboses { + description + "Table of last advertisement verbose + information"; + list sr-policy-last-advertisement-verbose { + key "sr-policy-name"; + description + "Last advertisement verbose metrics + information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-METRICS-BAG; + } + } + container sr-policy-last-probes { + description + "Table of last probe metrics"; + list sr-policy-last-probe { + key "sr-policy-name"; + description + "Last probe information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-METRICS-BAG; + } + } + container sr-policy-last-aggregation-verboses { + description + "Table of last probe aggregation verbose"; + list sr-policy-last-aggregation-verbose { + key "sr-policy-name"; + description + "Last probe aggregation verbose information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-METRICS-BAG; + } + } + container sr-policy-aggregation-histories { + description + "Table of aggregation history"; + list sr-policy-aggregation-history { + key "sr-policy-name"; + description + "Aggregation history information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-HISTORY-BAG; + } + } + container sr-policy-last-aggregations { + description + "Table of last aggregation"; + list sr-policy-last-aggregation { + key "sr-policy-name"; + description + "Last aggregation information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-METRICS-BAG; + } + } + } + container sr-policy-liveness { + description + "SR Policy Liveness-Detection information"; + container pm-sr-policy-last-liveness-detection-verboses { + description + "Table of last liveness detection information"; + list pm-sr-policy-last-liveness-detection-verbose { + key "sr-policy-name"; + description + "Last liveness verbose information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-LIVENESS; + } + } + container pm-sr-policy-liveness-session-state-histories { + description + "Table of liveness session state history"; + list pm-sr-policy-liveness-session-state-history { + key "sr-policy-name"; + description + "Liveness session state history information"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "SR Policy name"; + } + uses PM-SRPOLICY-HISTORY-BAG; + } + } + } + container sr-policy-counters { + description + "Table of SR Policies counters info"; + list sr-policy-counter { + key "policy-name"; + description + "SR Policy counter information"; + leaf policy-name { + type xr:Cisco-ios-xr-string; + description + "Policy name"; + } + uses PM-SRPOLICY-COUNTERS-BAG; + } + } + } + container rsvpte-tunnels { + description + "RSVP-TE tunnels"; + container rsvpte-counters { + description + "Table of RSVP-TE tunnel counters info"; + list rsvpte-counter { + key "tunnel-name"; + description + "RSVP-TE counter information"; + leaf tunnel-name { + type xr:Interface-name; + description + "Tunnel name"; + } + uses PM-RSVPTE-COUNTERS-BAG; + } + } + container rsvpte-details { + description + "Table of RSVP-TE tunnels detail info"; + list rsvpte-detail { + key "tunnel-name"; + description + "RSVP-TE information"; + leaf tunnel-name { + type xr:Interface-name; + description + "Tunnel name"; + } + uses PM-RSVPTE-BAG; + } + } + container rsvpte-delay { + description + "RSVP-TE tunnel delay-measurement information"; + container rsvpte-last-advertisements { + description + "Table of last advertisement metrics"; + list rsvpte-last-advertisement { + key "tunnel-name"; + description + "Last advertisement metrics information"; + leaf tunnel-name { + type xr:Interface-name; + description + "Tunnel name"; + } + uses PM-RSVPTE-DELAY-METRICS-BAG; + } + } + container rsvpte-last-aggregations { + description + "Table of last probe aggregation"; + list rsvpte-last-aggregation { + key "tunnel-name"; + description + "Last probe aggregation information"; + leaf tunnel-name { + type xr:Interface-name; + description + "SR Policy name"; + } + uses PM-RSVPTE-DELAY-METRICS-BAG; + } + } + container rsvpte-aggregation-histories { + description + "Table of aggregation history"; + list rsvpte-aggregation-history { + key "tunnel-name"; + description + "Aggregation history information"; + leaf tunnel-name { + type xr:Interface-name; + description + "Tunnel name"; + } + uses PM-RSVPTE-HISTORY-BAG; + } + } + container rsvpte-last-probes { + description + "Table of last probe metrics"; + list rsvpte-last-probe { + key "tunnel-name"; + description + "Last probe information"; + leaf tunnel-name { + type xr:Interface-name; + description + "Tunnel name"; + } + uses PM-RSVPTE-DELAY-METRICS-BAG; + } + } + container rsvpte-advertisement-histories { + description + "Table of advertisement history for the + RSVP-TE LSP"; + list rsvpte-advertisement-history { + key "tunnel-name"; + description + "Advertisement history information for the + RSVP-TE LSP"; + leaf tunnel-name { + type xr:Interface-name; + description + "Tunnel name"; + } + uses PM-RSVPTE-HISTORY-BAG; + } + } + container rsvpte-probe-computation-histories { + description + "Table of probe computation history"; + list rsvpte-probe-computation-history { + key "tunnel-name"; + description + "Probe computation history information"; + leaf tunnel-name { + type xr:Interface-name; + description + "Tunnel name"; + } + uses PM-RSVPTE-HISTORY-BAG; + } + } + } + } + container local-capability-info { + description + "Capability information for the local hardware"; + uses PM-CAPABILITY-BAG; + } + container endpoints { + description + "Endpoints"; + container endpoint-liveness { + description + "Endpoint Liveness-Detection information"; + container endpoint-last-liveness-detection-verboses { + description + "Table of last liveness detection information"; + list endpoint-last-liveness-detection-verbose { + key "endpoint-name"; + description + "Last liveness verbose information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-LIVENESS; + } + } + } + container endpoint-delay { + description + "Endpoint Delay-measurement information"; + container endpoint-last-probe-verboses { + description + "Table of last probe metrics verbose"; + list endpoint-last-probe-verbose { + key "endpoint-name"; + description + "Last probe verbose information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-METRICS-BAG; + } + } + container endpoint-probe-computation-histories { + description + "Table of probe computation history"; + list endpoint-probe-computation-history { + key "endpoint-name"; + description + "Probe computation history information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-HISTORY-BAG; + } + } + container endpoint-last-advertisements { + description + "Table of last advertisement metrics"; + list endpoint-last-advertisement { + key "endpoint-name"; + description + "Last advertisement metrics information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-METRICS-BAG; + } + } + container endpoint-last-probes { + description + "Table of last probe metrics"; + list endpoint-last-probe { + key "endpoint-name"; + description + "Last probe information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-METRICS-BAG; + } + } + container endpoint-last-aggregations { + description + "Table of Endpoint last aggregation"; + list endpoint-last-aggregation { + key "endpoint-name"; + description + "Last aggregation information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-METRICS-BAG; + } + } + container endpoint-last-advertisement-verboses { + description + "Table of last advertisement verbose + information"; + list endpoint-last-advertisement-verbose { + key "endpoint-name"; + description + "Last advertisement verbose metrics + information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-METRICS-BAG; + } + } + container endpoint-last-aggregationverboses { + description + "Table of last probe aggregation verbose"; + list endpoint-last-aggregationverbose { + key "endpoint-name"; + description + "Last probe aggregation verbose information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-METRICS-BAG; + } + } + container endpoint-aggregation-histories { + description + "Table of aggregation history"; + list endpoint-aggregation-history { + key "endpoint-name"; + description + "Aggregation history information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-HISTORY-BAG; + } + } + container endpoint-advertisement-histories { + description + "Table of advertisement history"; + list endpoint-advertisement-history { + key "endpoint-name"; + description + "Advertisement history information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-HISTORY-BAG; + } + } + } + container endpoint-counters { + description + "Table of Endpoint counters info"; + list endpoint-counter { + key "endpoint-name"; + description + "Endpoint counter information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-COUNTERS-BAG; + } + } + container endpoint-commons { + description + "Table of Endpoint common info"; + list endpoint-common { + key "endpoint-name"; + description + "Endpoint information"; + leaf endpoint-name { + type xr:Cisco-ios-xr-string; + description + "Endpoint name"; + } + uses PM-ENDPOINT-COMMON; + } + } + } + container sessions { + description + "Table of sessions"; + list session { + key "session-id"; + description + "Session information"; + leaf session-id { + type uint32; + description + "Session ID"; + } + uses PM-SESSION-BAG; + } + } + container summary { + description + "Summary information for all the measurement + and transportation type on querier"; + uses PM-SUMMARY-BAG; + } + container interfaces { + description + "Physical and bundle interfaces"; + container interface-details { + description + "Interface detailed table"; + list interface-detail { + key "interface-name"; + description + "Detailed interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-INTF-BAG; + } + } + container interface-delay { + description + "Delay-measurement information"; + container interface-probe-computation-histories { + description + "Table of probe computation history"; + list interface-probe-computation-history { + key "interface-name"; + description + "Probe computation history information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-INTF-HISTORY-BAG; + } + } + container interface-aggregation-histories { + description + "Table of aggregation history"; + list interface-aggregation-history { + key "interface-name"; + description + "Aggregation history information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-INTF-HISTORY-BAG; + } + } + container interface-advertisement-histories { + description + "Table of advertisement history information"; + list interface-advertisement-history { + key "interface-name"; + description + "Advertisement history information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-INTF-HISTORY-BAG; + } + } + container interface-last-aggregations { + description + "Table of last aggregation"; + list interface-last-aggregation { + key "interface-name"; + description + "Last aggregation information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-INTF-LAST-AGGR-BAG; + } + } + container interface-last-probes { + description + "Table of last probes"; + list interface-last-probe { + key "interface-name"; + description + "Last measurement information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-INTF-LAST-PROBE-BAG; + } + } + container interface-last-advertisements { + description + "Table of last advertisements"; + list interface-last-advertisement { + key "interface-name"; + description + "Last advertisement information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-INTF-LAST-ADVERT-BAG; + } + } + } + } + container distribution-retry-queue-info { + description + "Information for distribution retry queue"; + uses PM-DR-RETRY-QUEUE-INFO; + } + container profile { + description + "Profile information for all the measurement + and transportation type on querier"; + uses PM-PROFILE-BAG; + } + container pps-summary { + description + "Summary information for PPS on querier"; + uses PM-PPS-SUMMARY-BAG; + } + container distribution-records { + description + "Table of linecard session distribution records"; + list distribution-record { + key "record-name"; + description + "linecard session distribution record"; + leaf record-name { + type xr:Cisco-ios-xr-string; + description + "Distribution record name"; + } + uses PM-DR-INFO; + } + } + container name-profile { + description + "Profile Name"; + container delay-profile-rsvptes { + description + "RSVP-TE profile name table"; + list delay-profile-rsvpte { + key "profile-name"; + description + "RSVP-TE delay profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + container delay-profiles { + description + "Delay profile name table"; + list delay-profile { + key "profile-name"; + description + "Delay profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + container delay-profile-endpoints { + description + "Endpoint profile name table"; + list delay-profile-endpoint { + key "profile-name"; + description + "Endpoint delay profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + container liveness-profile-endpoints { + description + "Endpoint liveness profile name table"; + list liveness-profile-endpoint { + key "profile-name"; + description + "Endpoint liveness profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + container liveness-profiles { + description + "Liveness profile name table"; + list liveness-profile { + key "profile-name"; + description + "Liveness profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + container delay-profile-sr-policies { + description + "SR Policy profile name table"; + list delay-profile-sr-policy { + key "profile-name"; + description + "SR Policy delay profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + container delay-profile-interfaces { + description + "Interface profile name table"; + list delay-profile-interface { + key "profile-name"; + description + "Interface delay profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + container liveness-profile-sr-policies { + description + "SR Policy profile name table"; + list liveness-profile-sr-policy { + key "profile-name"; + description + "SR Policy liveness profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile name"; + } + uses PM-NAME-PROFILE-BAG; + } + } + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + } + container performance-measurement-responder { + config false; + description + "Performance Measurement operational data"; + container nodes { + description + "Node table for node-specific operational data"; + list node { + key "node"; + description + "Node-specific data for a particular node"; + container summary { + description + "Summary information for all the measurement + and transportation type on responder"; + uses PM-RESP-SUMMARY-BAG; + } + container interfaces { + description + "Table of interfaces"; + list interface { + key "interface-name"; + description + "Interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PM-RESP-INTF-BAG; + } + } + leaf node { + type xr:Node-id; + description + "Node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1.yang new file mode 100644 index 000000000..5212e9e36 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1.yang @@ -0,0 +1,150 @@ +submodule Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1 { + belongs-to Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper { + prefix Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pfi-im-cmd-ctrlr package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-21 { + description + "Updated the model for correct key type + 2022-07-25 + Updated container names to remove duplicate nested containers + 2022-05-05 + Updated key name and description"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + grouping IM-CTRLR-DESC-INFO { + description + "Controller description information"; + leaf state { + type Im-state-enum; + description + "Operational state with no translation of error + disable or shutdown"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf description { + type string; + description + "Controller description string"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper.yang new file mode 100644 index 000000000..b411a595a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper"; + prefix pfi-im-cmd-ctrlr-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pfi-im-cmd-ctrlr-oper-sub1 { + revision-date 2022-11-21; + } + + 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 pfi-im-cmd-ctrlr package operational data. + + This module contains definitions + for the following management objects: + controllers: Controller operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-21 { + description + "Updated the model for correct key type + 2022-07-25 + Updated container names to remove duplicate nested containers + 2022-05-05 + Updated key name and description"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container controllers { + config false; + description + "Controller operational data"; + container controller-details { + description + "Descriptions for controllers"; + list controller-detail { + key "controller-name"; + description + "Description for a particular controller"; + leaf controller-name { + type string; + description + "The name of the controller"; + } + uses IM-CTRLR-DESC-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub1.yang new file mode 100644 index 000000000..b6fe8ba59 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub1.yang @@ -0,0 +1,6951 @@ +submodule Cisco-IOS-XR-pfi-im-cmd-oper-sub1 { + belongs-to Cisco-IOS-XR-pfi-im-cmd-oper { + prefix Cisco-IOS-XR-pfi-im-cmd-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pfi-im-cmd-oper-sub2 { + revision-date 2022-12-02; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pfi-im-cmd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "added new mediatype for 400G Bright ZRP. + 2022-08-10 + added new mediatype for 25GBASE BXD,BXU. + 2022-05-19 + speed leaf is deprecated + 2022-03-07 + Added leaves is-intf-type-management and is-intf-type-cpu to indicate management interface and cpu interface + 2021-11-15 + Support added for sparse interface container. + 2021-11-08 + New leaf dejitter-buffer-length in microseconds is added and existing leaf dejitter-buffer is deprecated."; + semver:module-version "6.0.0"; + } + revision 2021-08-27 { + description + "added new mediatype for 25GBASE_ER."; + semver:module-version "5.0.0"; + } + revision 2021-05-23 { + description + "Removed container for non-dynamic interfaces. + 2020-12-02 + added new mediatype for 25GBASE_LR. + 2020-10-08 + Unit of last-data-time in milliseconds reverted to seconds for generic stats + 2020-10-01 + 64-bit Bandwidth support + 2020-09-03 + Removed event-telemetry annotation from leaf interface-name of grouping BM-MEMBER-DATA + 2020-04-14 + Unit of last-data-time changed from seconds to milliseconds for generic stats + 2020-04-14 + Support added for non-dynamic interfaces. + 2020-04-14 + Data type of last-data-time changed from uint32 to uint64 for generic and proto stats"; + semver:module-version "4.0.0"; + } + revision 2019-12-03 { + description + "Updated description."; + semver:module-version "3.0.0"; + } + revision 2019-08-14 { + description + "Added last state transition time. + 2019-07-23 + Changes in IosApi version. + 2019-05-30 + 64 bit bandwidth changes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-18 { + description + "Description updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Stats-counter { + type enumeration { + enum "stats-counter-rate" { + value 0; + description + "stats counter rate"; + } + enum "stats-counter-uint32" { + value 1; + description + "stats counter uint32"; + } + enum "stats-counter-uint64" { + value 2; + description + "stats counter uint64"; + } + enum "stats-counter-generic" { + value 3; + description + "stats counter generic"; + } + enum "stats-counter-proto" { + value 4; + description + "stats counter proto"; + } + enum "stats-counter-srp" { + value 5; + description + "stats counter srp"; + } + enum "stats-counter-ipv4-prec" { + value 6; + description + "stats counter ipv4 prec"; + } + enum "stats-counter-ipv4-dscp" { + value 7; + description + "stats counter ipv4 dscp"; + } + enum "stats-counter-mpls-exp" { + value 8; + description + "stats counter mpls exp"; + } + enum "stats-counter-ipv4-bgp-pa" { + value 9; + description + "stats counter ipv4 bgp pa"; + } + enum "stats-counter-src-bgp-pa" { + value 10; + description + "stats counter src bgp pa"; + } + enum "stats-counter-basic" { + value 11; + description + "stats counter basic"; + } + enum "stats-counter-comp-generic" { + value 12; + description + "stats counter comp generic"; + } + enum "stats-counter-comp-proto" { + value 13; + description + "stats counter comp proto"; + } + enum "stats-counter-comp-basic" { + value 14; + description + "stats counter comp basic"; + } + enum "stats-counter-accounting" { + value 15; + description + "stats counter accounting"; + } + enum "stats-counter-comp-accounting" { + value 16; + description + "stats counter comp accounting"; + } + enum "stats-counter-flow" { + value 17; + description + "stats counter flow"; + } + enum "stats-counter-comp-flow" { + value 18; + description + "stats counter comp flow"; + } + enum "stats-counter-timestamp" { + value 19; + description + "stats counter timestamp"; + } + enum "stats-counter-qos" { + value 20; + description + "stats counter qos"; + } + enum "stats-counter-ethernet-l1" { + value 21; + description + "stats counter ethernet l1"; + } + enum "stats-counter-comp-ethernet-l1" { + value 22; + description + "stats counter comp ethernet l1"; + } + enum "stats-counter-comp2-ethernet-l1" { + value 23; + description + "stats counter comp2 ethernet l1"; + } + enum "stats-counter-ethernet-l2" { + value 24; + description + "stats counter ethernet l2"; + } + enum "stats-counter-comp-ethernet-l2" { + value 25; + description + "stats counter comp ethernet l2"; + } + enum "stats-counter-comp2-ethernet-l2" { + value 26; + description + "stats counter comp2 ethernet l2"; + } + } + description + "Stats counter"; + } + + typedef Stats-type-contents { + type enumeration { + enum "stats-type-single" { + value 100; + description + "stats type single"; + } + enum "stats-type-variable" { + value 101; + description + "stats type variable"; + } + } + description + "Stats type contents"; + } + + typedef Stats-id { + type enumeration { + enum "stats-id-type-unknown" { + value 0; + description + "stats id type unknown"; + } + enum "stats-id-type-min" { + value 1; + description + "stats id type min"; + } + enum "stats-id-type-spare" { + value 2; + description + "stats id type spare"; + } + enum "stats-id-type-node" { + value 3; + description + "stats id type node"; + } + enum "stats-id-type-other" { + value 4; + description + "stats id type other"; + } + enum "stats-id-type-feature" { + value 5; + description + "stats id type feature"; + } + enum "stats-id-type-max" { + value 6; + description + "stats id type max"; + } + } + description + "Stats id"; + } + + typedef Stats-type-val { + type uint32; + description + "Stats type val"; + } + + typedef Im-cmd-stats-enum { + type enumeration { + enum "full" { + value 1; + description + "full"; + } + enum "basic" { + value 2; + description + "basic"; + } + } + description + "List of different interface stats structures"; + } + + typedef Gcc-sec-state { + type enumeration { + enum "normal" { + value 0; + description + "Normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance"; + } + enum "ais" { + value 2; + description + "Automatic In Service"; + } + } + description + "Gcc sec state"; + } + + typedef Gcc-der-state { + type enumeration { + enum "in-service" { + value 0; + description + "In Service"; + } + enum "out-of-service" { + value 1; + description + "Out Of Service"; + } + enum "maintenance" { + value 2; + description + "Maintenance"; + } + enum "ais" { + value 3; + description + "Automatic In Service"; + } + } + description + "Gcc der state"; + } + + typedef Tunnel-key-state { + type enumeration { + enum "absent" { + value 0; + description + "Tunnel GRE Key is not present"; + } + enum "present" { + value 1; + description + "Tunnel GRE Key is present"; + } + } + description + "Tunnel key state"; + } + + typedef Tunnel-ka-df-state { + type enumeration { + enum "disable" { + value 0; + description + "Tunnel GRE KA State is Disabled"; + } + enum "enable" { + value 1; + description + "Tunnel GRE KA State is Enabled"; + } + } + description + "Tunnel ka df state"; + } + + typedef Tunl-ip-mode-dir { + type enumeration { + enum "tunl-ip-mode-dir-none" { + description + "tunl ip mode dir none"; + } + enum "tunl-ip-mode-dir-decap" { + description + "tunl ip mode dir decap"; + } + enum "tunl-ip-mode-dir-encap" { + description + "tunl ip mode dir encap"; + } + enum "tunl-ip-mode-dir-max" { + description + "tunl ip mode dir max"; + } + } + description + "Tunl ip mode dir"; + } + + typedef Tunnel-gre-mode { + type enumeration { + enum "unknown" { + value 0; + description + "Tunnel GRE mode is Unknown"; + } + enum "gr-eo-ipv4" { + value 1; + description + "Tunnel GRE Mode is IPv4"; + } + enum "gr-eo-ipv6" { + value 2; + description + "Tunnel GRE Mode is IPv6"; + } + enum "mgr-eo-ipv4" { + value 3; + description + "Tunnel MGRE Mode is IPv4"; + } + enum "mgr-eo-ipv6" { + value 4; + description + "Tunnel MGRE Mode is IPv6"; + } + enum "ipv4" { + value 5; + description + "Tunnel Mode is IPv4"; + } + enum "ipv6" { + value 6; + description + "Tunnel Mode is IPv6"; + } + } + description + "Tunnel gre mode"; + } + + typedef Tunl-pfi-in6-addr { + type inet:ipv6-address; + description + "Tunl pfi in6 addr"; + } + + typedef Tunl-pfi-in-addr { + type inet:ipv4-address; + description + "Tunl pfi in addr"; + } + + typedef Tunl-pfi-af-id { + type enumeration { + enum "tunl-pfi-af-id-none" { + value 0; + description + "Unspecified AFI"; + } + enum "tunl-pfi-af-id-ipv4" { + value 2; + description + "IPv4 AFI"; + } + enum "tunl-pfi-af-id-ipv6" { + value 10; + description + "IPv6 AFI"; + } + } + description + "Tunl pfi af id"; + } + + typedef Sonet-aps-et { + type enumeration { + enum "not-configured" { + value 0; + description + "APS not configured on port"; + } + enum "working-active" { + value 1; + description + "Working port is up "; + } + enum "protect-active" { + value 2; + description + "Protect port is up "; + } + enum "working-inactive" { + value 3; + description + "Working port is down "; + } + enum "protect-inactive" { + value 4; + description + "Protect port is down "; + } + } + description + "APS states"; + } + + typedef Bmd-member-type-enum { + type enumeration { + enum "bmd-mbr-local" { + value 0; + description + "Member has been configured on the local device"; + } + enum "bmd-mbr-foreign" { + value 1; + description + "Member has been configured on an mLACP peer + device"; + } + enum "bmd-mbr-unknown" { + value 2; + description + "Member's type is unknown"; + } + } + description + "Bmd member type enum"; + } + + typedef Bm-muxreason { + type enumeration { + enum "bm-mux-reason-no-reason" { + value 0; + description + "Selection logic has not yet been run for the + bundle this link is a member of"; + } + enum "bm-mux-reason-link-down" { + value 1; + description + "Link is down"; + } + enum "bm-mux-reason-link-deleted" { + value 2; + description + "Link is being removed from the bundle"; + } + enum "bm-mux-reason-duplex" { + value 3; + description + "Link has wrong duplexity"; + } + enum "bm-mux-reason-bandwidth" { + value 4; + description + "Link has wrong bandwidth"; + } + enum "bm-mux-reason-loop-back" { + value 5; + description + "Link is a loopback interface"; + } + enum "bm-mux-reason-activity-type" { + value 6; + description + "Link has wrong activity type"; + } + enum "bm-mux-reason-link-limit" { + value 7; + description + "Link's bundle already has maximum number of + members allowed"; + } + enum "bm-mux-reason-shared" { + value 8; + description + "Link is attached to a shared medium"; + } + enum "bm-mux-reason-lagid" { + value 9; + description + "Link has wrong LAG ID"; + } + enum "bm-mux-reason-no-bundle" { + value 10; + description + "Link's bundle does not exist"; + } + enum "bm-mux-reason-no-primary" { + value 11; + description + "Link's bundle has no primary link"; + } + enum "bm-mux-reason-bundle-down" { + value 12; + description + "Link's bundle is shut down"; + } + enum "bm-mux-reason-individual" { + value 13; + description + "Link is marked individual by partner"; + } + enum "bm-mux-reason-defaulted" { + value 14; + description + "Link is Defaulted, suggesting it is not + receiving LACPDUs from the peer"; + } + enum "bm-mux-reason-in-sync" { + value 15; + description + "Link is in InSync state"; + } + enum "bm-mux-reason-collecting" { + value 16; + description + "Link is in Collecting state"; + } + enum "bm-mux-reason-active-link-limit" { + value 17; + description + "Link exceeds maximum active limit"; + } + enum "bm-mux-reason-distributing" { + value 18; + description + "Link is in Distributing state"; + } + enum "bm-mux-reason-plat-data" { + value 19; + description + "Link platform data is incompatible with + selected members"; + } + enum "bm-mux-reason-count" { + value 20; + description + "Enumeration maximum value"; + } + } + description + "Bm muxreason"; + } + + typedef Bmd-member-state { + type enumeration { + enum "bmd-mbr-state-configured" { + value 1; + description + "Member is configured"; + } + enum "bmd-mbr-state-standby" { + value 2; + description + "Member is standby"; + } + enum "bmd-mbr-state-hot-standby" { + value 3; + description + "Member is hot standby"; + } + enum "bmd-mbr-state-negotiating" { + value 4; + description + "Member is negotiating"; + } + enum "bmd-mbr-state-bfd-running" { + value 5; + description + "Member has a BFD session running"; + } + enum "bmd-mbr-state-active" { + value 6; + description + "Member is active"; + } + } + description + "Bmd member state"; + } + + typedef Bm-severity { + type enumeration { + enum "ok" { + value 0; + description + "OK"; + } + enum "information" { + value 1; + description + "Information"; + } + enum "misconfiguration" { + value 2; + description + "Misconfiguration"; + } + enum "warning" { + value 3; + description + "Warning"; + } + enum "error" { + value 5; + description + "Error"; + } + } + description + "Severity of the member state reason"; + } + + typedef Bm-state-reason-target { + type enumeration { + enum "member-reason" { + description + "Member applicable reason"; + } + enum "bundle-reason" { + description + "Bundle applicable reason"; + } + } + description + "Scope of the state reason"; + } + + typedef Bm-mbr-state-reason { + type enumeration { + enum "bm-mbr-state-reason-unknown" { + value 0; + description + "Reason unavailable (diagnostics error)"; + } + enum "bm-mbr-state-reason-unselectable-unknown" { + value 1; + description + "Link cannot be used (unknown reason)"; + } + enum "bm-mbr-state-reason-link-down" { + value 2; + description + "Link is down"; + } + enum "bm-mbr-state-reason-link-deleting" { + value 3; + description + "Link is being removed from the bundle"; + } + enum "bm-mbr-state-reason-creating" { + value 4; + description + "Link is in the process of being created"; + } + enum "bm-mbr-state-reason-bundle-creating" { + value 5; + description + "Bundle is in the process of being created"; + } + enum "bm-mbr-state-reason-bundle-deleting" { + value 6; + description + "Bundle is in the process of being deleted"; + } + enum "bm-mbr-state-reason-bundle-admin-down" { + value 7; + description + "Bundle has been shut down"; + } + enum "bm-mbr-state-reason-replicating" { + value 8; + description + "Bundle is in the process of being replicated to + this location"; + } + enum "bm-mbr-state-reason-bandwidth" { + value 9; + description + "Incompatible with other links in the bundle + (bandwidth out of range)"; + } + enum "bm-mbr-state-reason-loop-back" { + value 10; + description + "Loopback: Actor and Partner have the same + System ID and Key"; + } + enum "bm-mbr-state-reason-activity-type" { + value 11; + description + "Incompatible with other links in the bundle + (LACP vs non-LACP)"; + } + enum "bm-mbr-state-reason-bundle-shutdown" { + value 12; + description + "Bundle shutdown is configured for the bundle"; + } + enum "bm-mbr-state-reason-min-selected" { + value 13; + description + "Not enough links available to meet + minimum-active threshold"; + } + enum "bm-mbr-state-reason-max-selected" { + value 14; + description + "Link is Standby due to maximum-active links + configuration"; + } + enum "bm-mbr-state-reason-link-limit" { + value 15; + description + "Bundle has too many member links configured"; + } + enum "bm-mbr-state-reason-active-limit" { + value 16; + description + "Bundle has reached maximum supported number of + active links"; + } + enum "bm-mbr-state-reason-standby-unknown" { + value 17; + description + "Link is Standby (unknown reason)"; + } + enum "bm-mbr-state-reason-expired" { + value 18; + description + "Link is Expired; LACPDUs are not being received + from the partner"; + } + enum "bm-mbr-state-reason-defaulted" { + value 19; + description + "Link is Defaulted; LACPDUs are not being + received from the partner"; + } + enum "bm-mbr-state-reason-act-or-not-agg" { + value 20; + description + "Link is Not Aggregatable (unknown reason)"; + } + enum "bm-mbr-state-reason-partner-not-agg" { + value 21; + description + "Partner has marked the link as Not Aggregatable"; + } + enum "bm-mbr-state-reason-lagid" { + value 22; + description + "Partner System ID/Key do not match that of the + Selected links"; + } + enum "bm-mbr-state-reason-bundle-not-cfgd" { + value 23; + description + "Bundle interface is not present in + configuration"; + } + enum "bm-mbr-state-reason-bundle-not-ready" { + value 24; + description + "Wait-while timer is running"; + } + enum "bm-mbr-state-reason-partner-ood" { + value 25; + description + "Partner has not echoed the correct parameters + for this link"; + } + enum "bm-mbr-state-reason-partner-not-in-sync" { + value 26; + description + "Partner is not Synchronized (Waiting, Standby, + or LAG ID mismatch)"; + } + enum "bm-mbr-state-reason-foreign-partner-oos" { + value 27; + description + "Partner is not Synchronized (Waiting, not + Selected, or out-of-date)"; + } + enum "bm-mbr-state-reason-attach-unknown" { + value 28; + description + "Link is Attached and has not gone Collecting + (unknown reason)"; + } + enum "bm-mbr-state-reason-partner-not-collecting" { + value 29; + description + "Partner has not advertized that it is + Collecting"; + } + enum "bm-mbr-state-reason-collect-unknown" { + value 30; + description + "Link is Collecting and has not gone + Distributing (unknown reason)"; + } + enum "bm-mbr-state-reason-standby-foreign" { + value 31; + description + "Link is marked as Standby by mLACP peer"; + } + enum "bm-mbr-state-reason-bfd-starting" { + value 32; + description + "Link is waiting for BFD session to start"; + } + enum "bm-mbr-state-reason-bfd-down" { + value 33; + description + "BFD state of this link is Down"; + } + enum "bm-mbr-state-reason-bfd-nbr-unconfig" { + value 34; + description + "BFD session is unconfigured on the remote end"; + } + enum "bm-mbr-state-reason-mlacp" { + value 35; + description + "Link is not operational as a result of mLACP + negotiations"; + } + enum "bm-mbr-state-reason-pe-isolated" { + value 36; + description + "ICCP group is isolated from the core network"; + } + enum "bm-mbr-state-reason-forced-switchover" { + value 37; + description + "Forced switchover to the mLACP peer"; + } + enum "bm-mbr-state-reason-errdis-unknown" { + value 38; + description + "Link is error disabled (unknown reason)"; + } + enum "bm-mbr-state-reason-mlacp-no-mbr-state-info" { + value 39; + description + "Waiting for member state information from mLACP + peer"; + } + enum "bm-mbr-state-reason-active" { + value 40; + description + "Link is Active"; + } + enum "bm-mbr-state-reason-mlacp-no-bdl-state-info" { + value 41; + description + "Waiting for bundle state information from mLACP + peer"; + } + enum "bm-mbr-state-reason-mlacp-no-bdl-config-info" { + value 42; + description + "Waiting for bundle configuration information + from mLACP peer"; + } + enum "bm-mbr-state-reason-mlacp-no-bdl-sync" { + value 43; + description + "Waiting for bundle to complete initial + synchronization with mLACP peer"; + } + enum "bm-mbr-state-reason-mlacp-bdl-has-no-peer" { + value 44; + description + "mLACP bundle does not have a peer device"; + } + enum "bm-mbr-state-reason-mlacp-nak" { + value 45; + description + "Link is being ignored due to an inconsistency + with mLACP peer"; + } + enum "bm-mbr-state-reason-mlacp-transport-unavailable" { + value 46; + description + "ICCP transport is unavailable"; + } + enum "bm-mbr-state-reason-mlacp-not-configured" { + value 47; + description + "ICCP Group is not fully configured"; + } + enum "bm-mbr-state-reason-recovery-timer" { + value 48; + description + "mLACP recovery delay timer is running"; + } + enum "bm-mbr-state-reason-mlacp-standby" { + value 49; + description + "mLACP peer is active"; + } + enum "bm-mbr-state-reason-maximized-out" { + value 50; + description + "mLACP peer has more links/bandwidth available"; + } + enum "bm-mbr-state-reason-mlacp-peer-selected" { + value 51; + description + "mLACP peer has one or more links Selected"; + } + enum "bm-mbr-state-reason-mlacp-connect-timer-running" { + value 52; + description + "mLACP bundle does not have a peer device + (connect timer running)"; + } + enum "bm-mbr-state-reason-bundle-not-mlacp" { + value 53; + description + "Bundle is not configured to run mLACP"; + } + enum "bm-mbr-state-reason-no-lon" { + value 54; + description + "Bundle has too many working links configured + (more than the maximum-active limit)"; + } + enum "bm-mbr-state-reason-cumul-rel-bw-limit" { + value 55; + description + "Additional bandwidth from link would exceed + load balancing capabilities"; + } + enum "bm-mbr-state-reason-no-mac" { + value 56; + description + "No MAC address available for the bundle"; + } + enum "bm-mbr-state-reason-no-system-id" { + value 57; + description + "No system ID available for use by this bundle"; + } + enum "bm-mbr-state-reason-link-shutdown" { + value 58; + description + "Link is shutdown"; + } + enum "bm-mbr-state-reason-activity-mlacp" { + value 59; + description + "Non-LACP link in mLACP bundle"; + } + enum "bm-mbr-state-reason-activity-iccp" { + value 60; + description + "LACP link in inter-chassis bundle"; + } + enum "bm-mbr-state-reason-bundle-icpe-mlacp" { + value 61; + description + "Parent bundle is both inter-chassis and + configured for mLACP"; + } + enum "bm-mbr-state-reason-no-link-num" { + value 62; + description + "Too many bundle members in system; no link + number available"; + } + enum "bm-mbr-state-reason-standby-peer-higher-prio" { + value 63; + description + "mLACP peer has a higher priority link"; + } + enum "bm-mbr-state-reason-red-state-standby" { + value 64; + description + "Link is in standby redundancy state"; + } + enum "bm-mbr-state-reason-other-red-state-standby" { + value 65; + description + "One or more links in the bundle are in standby + redundancy state"; + } + enum "bm-mbr-state-reason-hold-ing" { + value 66; + description + "Holding down temporary to avoid churn after + restart"; + } + enum "bm-mbr-state-reason-bundle-error-disabled" { + value 67; + description + "Bundle has been error-disabled"; + } + enum "bm-mbr-state-reason-bundle-efd-disabled" { + value 68; + description + "Bundle has been disabled by EFD"; + } + enum "bm-mbr-state-reason-singleton-pe-isolated" { + value 69; + description + "Singleton ICCP group is isolated from the core + network"; + } + enum "bm-mbr-state-reason-bfd-ipv6-starting" { + value 70; + description + "Link is waiting for BFDv6 session to start"; + } + enum "bm-mbr-state-reason-bfd-ipv6-down" { + value 71; + description + "BFDv6 state of this link is Down"; + } + enum "bm-mbr-state-reason-bfd-ipv6-nbr-unconfig" { + value 72; + description + "BFDv6 session is unconfigured on the remote end"; + } + enum "bm-mbr-state-reason-timer-running" { + value 73; + description + "LACP delay timer is running"; + } + enum "bm-mbr-state-reason-client-bundle-ctrl" { + value 74; + description + "Client has configured the bundle state Down"; + } + enum "bm-mbr-state-reason-lacp-oos" { + value 75; + description + "Link is in standby due to bundle out of service + state"; + } + enum "bm-mbr-state-reason-errdis-bundle-oos" { + value 76; + description + "Link is error-disabled due to bundle out of + service state"; + } + enum "bm-mbr-state-reason-plat-data" { + value 77; + description + "Incompatible with other links platform data in + the bundle (Etm vs non ETM)"; + } + enum "bm-mbr-state-reason-fwding-unviable" { + value 78; + description + "Link is not forwarding viable and in standby + state"; + } + enum "bm-mbr-state-reason-min-act-breach-by-bfd" { + value 79; + description + "Link is in standby state due to minimum-active + link configuration (only BFD down on other + members)"; + } + enum "bm-mbr-state-reason-count" { + value 80; + description + "Enumeration maximum value"; + } + } + description + "Bm mbr state reason"; + } + + typedef Bm-muxstate { + type enumeration { + enum "detached" { + value 1; + description + "Port is not attached to a bundle"; + } + enum "waiting" { + value 2; + description + "Port has chosen bundle and is waiting to join"; + } + enum "attached" { + value 3; + description + "Port is attached to the bundle but not active"; + } + enum "collecting" { + value 4; + description + "Port is ready to receive data"; + } + enum "distributing" { + value 5; + description + "Port is distributing data"; + } + enum "collecting-distributing" { + value 6; + description + "Port is active and can send and receive data"; + } + } + description + "Bm muxstate"; + } + + typedef Srp-mgmt-srr-failure { + type enumeration { + enum "idle-srr-failure" { + description + "Idle"; + } + enum "wait-to-restore-srr-failure" { + description + "Wait To Restore"; + } + enum "signal-fail-srr-failure" { + description + "Signal Fail"; + } + enum "forced-switch-srr-failure" { + description + "Forced Switch"; + } + enum "unknown-srr-failure" { + description + "UNKNOWN"; + } + } + description + "SRP SRR failure type"; + } + + typedef Srp-mgmt-srr-node-state { + type enumeration { + enum "idle-srr-state" { + description + "Idle"; + } + enum "discovery-srr-state" { + description + "Discovery"; + } + enum "unknown-srr-state" { + description + "UNKNOWN"; + } + } + description + "SRP SRR node state"; + } + + typedef Srp-mgmt-ips-path-ind { + type enumeration { + enum "short-path" { + description + "SHORT"; + } + enum "long-path" { + description + "LONG"; + } + enum "unknown-path" { + description + "UNKNOWN"; + } + } + description + "SRP IPS path indication"; + } + + typedef Srp-mgmt-failure-state-et { + type enumeration { + enum "idle-failure-state" { + description + "Idle"; + } + enum "wait-to-restore-failure-state" { + description + "Wait To Restore"; + } + enum "manual-switch-failure-state" { + description + "Manual Switch"; + } + enum "signal-degrade-failure-state" { + description + "Signal Degrade"; + } + enum "signal-fail-failure-state" { + description + "Signal Fail"; + } + enum "forced-switch-failure-state" { + description + "Forced Switch"; + } + enum "shutdown-failure-state" { + description + "Shutdown"; + } + enum "invalid-failure-state" { + description + "Invalid"; + } + enum "unknown-failure-state" { + description + "Unknown"; + } + } + description + "SRP failure state type"; + } + + typedef Srp-mgmt-failure-et { + type enumeration { + enum "hardware-missing-failure" { + description + "Hardware missing"; + } + enum "layer1-admin-state-failure" { + description + "L1 admin state"; + } + enum "layer1-error-failure" { + description + "Layer 1 error"; + } + enum "keepalive-missed-failure" { + description + "Keepalive missed"; + } + enum "link-quality-degraded-failure" { + description + "Link quality degraded"; + } + enum "mate-problem-failure" { + description + "Mate problem"; + } + enum "side-mismatch-failure" { + description + "Side mismatch"; + } + enum "unknown-failure" { + description + "Unknown"; + } + } + description + "SRP failure type"; + } + + typedef Srp-mgmt-ips-req { + type enumeration { + enum "idle-ips-request" { + description + "Idle"; + } + enum "wait-to-restore-ips-request" { + description + "Wait To Restore"; + } + enum "manual-switch-ips-request" { + description + "Manual Switch"; + } + enum "signal-degrade-ips-request" { + description + "Signal Degrade"; + } + enum "signal-fail-ips-request" { + description + "Signal Fail"; + } + enum "forced-switch-ips-request" { + description + "Forced Switch"; + } + enum "unknown-ips-request" { + description + "UNKNOWN"; + } + } + description + "SRP IPS request type"; + } + + typedef Srp-mgmt-ips-wrap-state { + type enumeration { + enum "idle-wrap-state" { + description + "Idle"; + } + enum "wrapped-state" { + description + "Wrapped"; + } + enum "locked-out-wrap-state" { + description + "Locked out"; + } + enum "unknown-wrap-state" { + description + "UNKNOWN"; + } + } + description + "SRP IPS side wrap state"; + } + + typedef Im-cmd-intf-type-enum { + type enumeration { + enum "srp" { + description + "srp"; + } + enum "tunnel" { + description + "tunnel"; + } + enum "bundle" { + description + "bundle"; + } + enum "serial" { + description + "serial"; + } + enum "sonet-pos" { + description + "sonet pos"; + } + enum "tunnel-gre" { + description + "tunnel gre"; + } + enum "pseudowire-head-end" { + description + "pseudowire head end"; + } + enum "cem" { + description + "cem"; + } + enum "gcc" { + description + "gcc"; + } + } + description + "Im cmd intf type enum"; + } + + typedef Ncp-ident { + type enumeration { + enum "cdpcp" { + value 1; + description + "CDP control protocol"; + } + enum "ipcp" { + value 2; + description + "IPv4 control protocol"; + } + enum "ipcpiw" { + value 3; + description + "IPv4 Interworking control protocol"; + } + enum "ipv6cp" { + value 4; + description + "IPv6 control protocol"; + } + enum "mplscp" { + value 5; + description + "MPLS control protocol"; + } + enum "osicp" { + value 6; + description + "OSI (CLNS) control protocol"; + } + } + description + "Ncp ident"; + } + + typedef Ppp-fsm-state { + type enumeration { + enum "ppp-fsm-state-initial-0" { + value 0; + description + "Connection Idle"; + } + enum "ppp-fsm-state-starting-1" { + value 1; + description + "This layer required, but lower layer down"; + } + enum "ppp-fsm-state-closed-2" { + value 2; + description + "Lower layer up, but this layer not required"; + } + enum "ppp-fsm-state-stopped-3" { + value 3; + description + "Listening for a Config Request"; + } + enum "ppp-fsm-state-closing-4" { + value 4; + description + "Shutting down due to local change"; + } + enum "ppp-fsm-state-stopping-5" { + value 5; + description + "Shutting down due to peer's actions"; + } + enum "ppp-fsm-state-req-sent-6" { + value 6; + description + "Config Request Sent"; + } + enum "ppp-fsm-state-ack-rcvd-7" { + value 7; + description + "Config Ack Received"; + } + enum "ppp-fsm-state-ack-sent-8" { + value 8; + description + "Config Ack Sent"; + } + enum "ppp-fsm-state-opened-9" { + value 9; + description + "Connection Open"; + } + } + description + "Ppp fsm state"; + } + + typedef Vlan-switched-mode { + type enumeration { + enum "none" { + value 0; + description + "Disabled"; + } + enum "trunk-port" { + value 1; + description + "Trunk port"; + } + enum "access-port" { + value 2; + description + "Access port"; + } + } + description + "VLAN-Switched mode"; + } + + typedef Mac-address { + type yang:mac-address; + description + "MAC address type"; + } + + typedef Efp-payload-etype { + type enumeration { + enum "payload-ethertype-any" { + value 0; + description + "Any"; + } + enum "payload-ethertype-ip" { + value 1; + description + "IP"; + } + enum "payload-ethertype-pppoe" { + value 2; + description + "PPPoE"; + } + } + description + "Payload ethertype match"; + } + + typedef Efp-tag-priority { + type enumeration { + enum "priority0" { + value 0; + description + "Priority 0"; + } + enum "priority1" { + value 1; + description + "Priority 1"; + } + enum "priority2" { + value 2; + description + "Priority 2"; + } + enum "priority3" { + value 3; + description + "Priority 3"; + } + enum "priority4" { + value 4; + description + "Priority 4"; + } + enum "priority5" { + value 5; + description + "Priority 5"; + } + enum "priority6" { + value 6; + description + "Priority 6"; + } + enum "priority7" { + value 7; + description + "Priority 7"; + } + enum "priority-any" { + value 8; + description + "Any priority"; + } + } + description + "Priority"; + } + + typedef Efp-tag-etype { + type enumeration { + enum "untagged" { + value 0; + description + "Untagged"; + } + enum "dot1q" { + value 33024; + description + "Dot1Q"; + } + enum "dot1ad" { + value 34984; + description + "Dot1ad"; + } + } + description + "Tag ethertype"; + } + + typedef Vlan-tag-value { + type uint16; + description + "VLAN Tag Value (1 - 4094)"; + } + + typedef Vlan-encaps { + type enumeration { + enum "no-encapsulation" { + value 0; + description + "No encapsulation"; + } + enum "dot1q" { + value 1; + description + "IEEE 802.1Q encapsulation"; + } + enum "qinq" { + value 2; + description + "Double 802.1Q encapsulation"; + } + enum "qin-any" { + value 3; + description + "Double 802.1Q wildcarded encapsulation"; + } + enum "dot1q-native" { + value 4; + description + "IEEE 802.1Q native VLAN encapsulation"; + } + enum "dot1ad" { + value 5; + description + "IEEE 802.1ad encapsulation"; + } + enum "dot1ad-native" { + value 6; + description + "IEEE 802.1ad native VLAN encapsulation"; + } + enum "service-instance" { + value 7; + description + "Ethernet Service Instance"; + } + enum "dot1ad-dot1q" { + value 8; + description + "IEEE 802.1ad 802.1Q encapsulation"; + } + enum "dot1ad-any" { + value 9; + description + "IEEE 802.1ad wildcard 802.1Q encapsulation"; + } + } + description + "VLAN encapsulation"; + } + + typedef Im-cmd-lmi-type-enum { + type enumeration { + enum "lmi-type-auto" { + description + "lmi type auto"; + } + enum "lmi-type-ansi" { + description + "lmi type ansi"; + } + enum "lmi-type-ccitt" { + description + "lmi type ccitt"; + } + enum "lmi-type-cisco" { + description + "lmi type cisco"; + } + } + description + "Im cmd lmi type enum"; + } + + typedef Im-cmd-fr-type-enum { + type enumeration { + enum "frame-relay-cisco" { + description + "frame relay cisco"; + } + enum "frame-relay-ietf" { + description + "frame relay ietf"; + } + } + description + "Im cmd fr type enum"; + } + + typedef Im-cmd-encaps-enum { + type enumeration { + enum "frame-relay" { + description + "frame relay"; + } + enum "vlan" { + description + "vlan"; + } + enum "ppp" { + description + "ppp"; + } + } + description + "Im cmd encaps enum"; + } + + typedef Im-attr-transport-mode { + type enumeration { + enum "im-attr-transport-mode-unknown" { + value 0; + description + "im attr transport mode unknown"; + } + enum "im-attr-transport-mode-lan" { + value 1; + description + "im attr transport mode lan"; + } + enum "im-attr-transport-mode-wan" { + value 2; + description + "im attr transport mode wan"; + } + enum "im-attr-transport-mode-otn-bt-opu1e" { + value 3; + description + "im attr transport mode otn bt opu1e"; + } + enum "im-attr-transport-mode-otn-bt-opu2e" { + value 4; + description + "im attr transport mode otn bt opu2e"; + } + enum "im-attr-transport-mode-otn-opu3" { + value 5; + description + "im attr transport mode otn opu3"; + } + enum "im-attr-transport-mode-otn-opu4" { + value 6; + description + "im attr transport mode otn opu4"; + } + } + description + "Im attr transport mode"; + } + + typedef Im-cmd-loopback-enum { + type enumeration { + enum "no-loopback" { + description + "no loopback"; + } + enum "internal-loopback" { + description + "internal loopback"; + } + enum "external-loopback" { + description + "external loopback"; + } + enum "line-loopback" { + description + "line loopback"; + } + } + description + "Im cmd loopback enum"; + } + + typedef Im-attr-flow-control { + type enumeration { + enum "im-attr-flow-control-off" { + value 0; + description + "im attr flow control off"; + } + enum "im-attr-flow-control-on" { + value 1; + description + "im attr flow control on"; + } + enum "im-attr-flow-control-not-sup" { + value 2; + description + "im attr flow control not sup"; + } + enum "im-attr-flow-control-priority" { + value 3; + description + "im attr flow control priority"; + } + } + description + "Im attr flow control"; + } + + typedef Im-attr-link { + type enumeration { + enum "im-attr-link-type-auto" { + value 0; + description + "im attr link type auto"; + } + enum "im-attr-link-type-force" { + value 1; + description + "im attr link type force"; + } + } + description + "Im attr link"; + } + + typedef Im-attr-media { + type enumeration { + enum "im-attr-media-other" { + value 0; + description + "im attr media other"; + } + enum "im-attr-media-unknown" { + value 1; + description + "im attr media unknown"; + } + enum "im-attr-media-aui" { + value 2; + description + "im attr media aui"; + } + enum "im-attr-media-10base5" { + value 3; + description + "im attr media 10base5"; + } + enum "im-attr-media-foirl" { + value 4; + description + "im attr media foirl"; + } + enum "im-attr-media-10base2" { + value 5; + description + "im attr media 10base2"; + } + enum "im-attr-media-10broad36" { + value 6; + description + "im attr media 10broad36"; + } + enum "im-attr-media-10base" { + value 7; + description + "im attr media 10base"; + } + enum "im-attr-media-10base-thd" { + value 8; + description + "im attr media 10base thd"; + } + enum "im-attr-media-10base-tfd" { + value 9; + description + "im attr media 10base tfd"; + } + enum "im-attr-media-10base-fp" { + value 10; + description + "im attr media 10base fp"; + } + enum "im-attr-media-10base-fb" { + value 11; + description + "im attr media 10base fb"; + } + enum "im-attr-media-10base-fl" { + value 12; + description + "im attr media 10base fl"; + } + enum "im-attr-media-10base-flhd" { + value 13; + description + "im attr media 10base flhd"; + } + enum "im-attr-media-10base-flfd" { + value 14; + description + "im attr media 10base flfd"; + } + enum "im-attr-media-100base-t4" { + value 15; + description + "im attr media 100base t4"; + } + enum "im-attr-media-100base-tx" { + value 16; + description + "im attr media 100base tx"; + } + enum "im-attr-media-100base-txhd" { + value 17; + description + "im attr media 100base txhd"; + } + enum "im-attr-media-100base-txfd" { + value 18; + description + "im attr media 100base txfd"; + } + enum "im-attr-media-100base-fx" { + value 19; + description + "im attr media 100base fx"; + } + enum "im-attr-media-100base-fxhd" { + value 20; + description + "im attr media 100base fxhd"; + } + enum "im-attr-media-100base-fxfd" { + value 21; + description + "im attr media 100base fxfd"; + } + enum "im-attr-media-100base-ex" { + value 22; + description + "im attr media 100base ex"; + } + enum "im-attr-media-100base-exhd" { + value 23; + description + "im attr media 100base exhd"; + } + enum "im-attr-media-100base-exfd" { + value 24; + description + "im attr media 100base exfd"; + } + enum "im-attr-media-100base-t2" { + value 25; + description + "im attr media 100base t2"; + } + enum "im-attr-media-100base-t2hd" { + value 26; + description + "im attr media 100base t2hd"; + } + enum "im-attr-media-100base-t2fd" { + value 27; + description + "im attr media 100base t2fd"; + } + enum "im-attr-media-1000base-x" { + value 28; + description + "im attr media 1000base x"; + } + enum "im-attr-media-1000base-xhdx" { + value 29; + description + "im attr media 1000base xhdx"; + } + enum "im-attr-media-1000base-xfd" { + value 30; + description + "im attr media 1000base xfd"; + } + enum "im-attr-media-1000base-lx" { + value 31; + description + "im attr media 1000base lx"; + } + enum "im-attr-media-1000base-lxhd" { + value 32; + description + "im attr media 1000base lxhd"; + } + enum "im-attr-media-1000base-lxfdx" { + value 33; + description + "im attr media 1000base lxfdx"; + } + enum "im-attr-media-1000base-sx" { + value 34; + description + "im attr media 1000base sx"; + } + enum "im-attr-media-1000base-sxhd" { + value 35; + description + "im attr media 1000base sxhd"; + } + enum "im-attr-media-1000base-sxfd" { + value 36; + description + "im attr media 1000base sxfd"; + } + enum "im-attr-media-1000base-cx" { + value 37; + description + "im attr media 1000base cx"; + } + enum "im-attr-media-1000base-cxhdx" { + value 38; + description + "im attr media 1000base cxhdx"; + } + enum "im-attr-media-1000base-cxfd" { + value 39; + description + "im attr media 1000base cxfd"; + } + enum "im-attr-media-1000base" { + value 40; + description + "im attr media 1000base"; + } + enum "im-attr-media-1000base-thd" { + value 41; + description + "im attr media 1000base thd"; + } + enum "im-attr-media-1000base-tfd" { + value 42; + description + "im attr media 1000base tfd"; + } + enum "im-attr-media-10gbase-x" { + value 43; + description + "im attr media 10gbase x"; + } + enum "im-attr-media-10gbase-lx4" { + value 44; + description + "im attr media 10gbase lx4"; + } + enum "im-attr-media-10gbase-r" { + value 45; + description + "im attr media 10gbase r"; + } + enum "im-attr-media-10gbase-er" { + value 46; + description + "im attr media 10gbase er"; + } + enum "im-attr-media-10gbase-lr" { + value 47; + description + "im attr media 10gbase lr"; + } + enum "im-attr-media-10gbase-sr" { + value 48; + description + "im attr media 10gbase sr"; + } + enum "im-attr-media-10gbase-csr" { + value 49; + description + "im attr media 10gbase csr"; + } + enum "im-attr-media-10gbase-w" { + value 50; + description + "im attr media 10gbase w"; + } + enum "im-attr-media-10gbase-ew" { + value 51; + description + "im attr media 10gbase ew"; + } + enum "im-attr-media-10gbase-lw" { + value 52; + description + "im attr media 10gbase lw"; + } + enum "im-attr-media-10gbase-sw" { + value 53; + description + "im attr media 10gbase sw"; + } + enum "im-attr-media-10gbase-zr" { + value 54; + description + "im attr media 10gbase zr"; + } + enum "im-attr-media-802-9a" { + value 55; + description + "im attr media 802 9a"; + } + enum "im-attr-media-rj45" { + value 56; + description + "im attr media rj45"; + } + enum "im-attr-media-1000base-zx" { + value 57; + description + "im attr media 1000base zx"; + } + enum "im-attr-media-1000base-cwdm" { + value 58; + description + "im attr media 1000base cwdm"; + } + enum "im-attr-media-1000base-cwdm-1470" { + value 59; + description + "im attr media 1000base cwdm 1470"; + } + enum "im-attr-media-1000base-cwdm-1490" { + value 60; + description + "im attr media 1000base cwdm 1490"; + } + enum "im-attr-media-1000base-cwdm-1510" { + value 61; + description + "im attr media 1000base cwdm 1510"; + } + enum "im-attr-media-1000base-cwdm-1530" { + value 62; + description + "im attr media 1000base cwdm 1530"; + } + enum "im-attr-media-1000base-cwdm-1550" { + value 63; + description + "im attr media 1000base cwdm 1550"; + } + enum "im-attr-media-1000base-cwdm-1570" { + value 64; + description + "im attr media 1000base cwdm 1570"; + } + enum "im-attr-media-1000base-cwdm-1590" { + value 65; + description + "im attr media 1000base cwdm 1590"; + } + enum "im-attr-media-1000base-cwdm-1610" { + value 66; + description + "im attr media 1000base cwdm 1610"; + } + enum "im-attr-media-10gbase-dwdm" { + value 67; + description + "im attr media 10gbase dwdm"; + } + enum "im-attr-media-100gbase-lr4" { + value 68; + description + "im attr media 100gbase lr4"; + } + enum "im-attr-media-1000base-dwdm" { + value 69; + description + "im attr media 1000base dwdm"; + } + enum "im-attr-media-1000base-dwdm-1533" { + value 70; + description + "im attr media 1000base dwdm 1533"; + } + enum "im-attr-media-1000base-dwdm-1537" { + value 71; + description + "im attr media 1000base dwdm 1537"; + } + enum "im-attr-media-1000base-dwdm-1541" { + value 72; + description + "im attr media 1000base dwdm 1541"; + } + enum "im-attr-media-1000base-dwdm-1545" { + value 73; + description + "im attr media 1000base dwdm 1545"; + } + enum "im-attr-media-1000base-dwdm-1549" { + value 74; + description + "im attr media 1000base dwdm 1549"; + } + enum "im-attr-media-1000base-dwdm-1553" { + value 75; + description + "im attr media 1000base dwdm 1553"; + } + enum "im-attr-media-1000base-dwdm-1557" { + value 76; + description + "im attr media 1000base dwdm 1557"; + } + enum "im-attr-media-1000base-dwdm-1561" { + value 77; + description + "im attr media 1000base dwdm 1561"; + } + enum "im-attr-media-40gbase-lr4" { + value 78; + description + "im attr media 40gbase lr4"; + } + enum "im-attr-media-40gbase-er4" { + value 79; + description + "im attr media 40gbase er4"; + } + enum "im-attr-media-100gbase-er4" { + value 80; + description + "im attr media 100gbase er4"; + } + enum "im-attr-media-1000base-ex" { + value 81; + description + "im attr media 1000base ex"; + } + enum "im-attr-media-1000base-bx10-d" { + value 82; + description + "im attr media 1000base bx10 d"; + } + enum "im-attr-media-1000base-bx10-u" { + value 83; + description + "im attr media 1000base bx10 u"; + } + enum "im-attr-media-1000base-dwdm-1561-42" { + value 84; + description + "im attr media 1000base dwdm 1561 42"; + } + enum "im-attr-media-1000base-dwdm-1560-61" { + value 85; + description + "im attr media 1000base dwdm 1560 61"; + } + enum "im-attr-media-1000base-dwdm-1559-79" { + value 86; + description + "im attr media 1000base dwdm 1559 79"; + } + enum "im-attr-media-1000base-dwdm-1558-98" { + value 87; + description + "im attr media 1000base dwdm 1558 98"; + } + enum "im-attr-media-1000base-dwdm-1558-17" { + value 88; + description + "im attr media 1000base dwdm 1558 17"; + } + enum "im-attr-media-1000base-dwdm-1557-36" { + value 89; + description + "im attr media 1000base dwdm 1557 36"; + } + enum "im-attr-media-1000base-dwdm-1556-55" { + value 90; + description + "im attr media 1000base dwdm 1556 55"; + } + enum "im-attr-media-1000base-dwdm-1555-75" { + value 91; + description + "im attr media 1000base dwdm 1555 75"; + } + enum "im-attr-media-1000base-dwdm-1554-94" { + value 92; + description + "im attr media 1000base dwdm 1554 94"; + } + enum "im-attr-media-1000base-dwdm-1554-13" { + value 93; + description + "im attr media 1000base dwdm 1554 13"; + } + enum "im-attr-media-1000base-dwdm-1553-33" { + value 94; + description + "im attr media 1000base dwdm 1553 33"; + } + enum "im-attr-media-1000base-dwdm-1552-52" { + value 95; + description + "im attr media 1000base dwdm 1552 52"; + } + enum "im-attr-media-1000base-dwdm-1551-72" { + value 96; + description + "im attr media 1000base dwdm 1551 72"; + } + enum "im-attr-media-1000base-dwdm-1550-92" { + value 97; + description + "im attr media 1000base dwdm 1550 92"; + } + enum "im-attr-media-1000base-dwdm-1550-12" { + value 98; + description + "im attr media 1000base dwdm 1550 12"; + } + enum "im-attr-media-1000base-dwdm-1549-32" { + value 99; + description + "im attr media 1000base dwdm 1549 32"; + } + enum "im-attr-media-1000base-dwdm-1548-51" { + value 100; + description + "im attr media 1000base dwdm 1548 51"; + } + enum "im-attr-media-1000base-dwdm-1547-72" { + value 101; + description + "im attr media 1000base dwdm 1547 72"; + } + enum "im-attr-media-1000base-dwdm-1546-92" { + value 102; + description + "im attr media 1000base dwdm 1546 92"; + } + enum "im-attr-media-1000base-dwdm-1546-12" { + value 103; + description + "im attr media 1000base dwdm 1546 12"; + } + enum "im-attr-media-1000base-dwdm-1545-32" { + value 104; + description + "im attr media 1000base dwdm 1545 32"; + } + enum "im-attr-media-1000base-dwdm-1544-53" { + value 105; + description + "im attr media 1000base dwdm 1544 53"; + } + enum "im-attr-media-1000base-dwdm-1543-73" { + value 106; + description + "im attr media 1000base dwdm 1543 73"; + } + enum "im-attr-media-1000base-dwdm-1542-94" { + value 107; + description + "im attr media 1000base dwdm 1542 94"; + } + enum "im-attr-media-1000base-dwdm-1542-14" { + value 108; + description + "im attr media 1000base dwdm 1542 14"; + } + enum "im-attr-media-1000base-dwdm-1541-35" { + value 109; + description + "im attr media 1000base dwdm 1541 35"; + } + enum "im-attr-media-1000base-dwdm-1540-56" { + value 110; + description + "im attr media 1000base dwdm 1540 56"; + } + enum "im-attr-media-1000base-dwdm-1539-77" { + value 111; + description + "im attr media 1000base dwdm 1539 77"; + } + enum "im-attr-media-1000base-dwdm-1538-98" { + value 112; + description + "im attr media 1000base dwdm 1538 98"; + } + enum "im-attr-media-1000base-dwdm-1538-19" { + value 113; + description + "im attr media 1000base dwdm 1538 19"; + } + enum "im-attr-media-1000base-dwdm-1537-40" { + value 114; + description + "im attr media 1000base dwdm 1537 40"; + } + enum "im-attr-media-1000base-dwdm-1536-61" { + value 115; + description + "im attr media 1000base dwdm 1536 61"; + } + enum "im-attr-media-1000base-dwdm-1535-82" { + value 116; + description + "im attr media 1000base dwdm 1535 82"; + } + enum "im-attr-media-1000base-dwdm-1535-04" { + value 117; + description + "im attr media 1000base dwdm 1535 04"; + } + enum "im-attr-media-1000base-dwdm-1534-25" { + value 118; + description + "im attr media 1000base dwdm 1534 25"; + } + enum "im-attr-media-1000base-dwdm-1533-47" { + value 119; + description + "im attr media 1000base dwdm 1533 47"; + } + enum "im-attr-media-1000base-dwdm-1532-68" { + value 120; + description + "im attr media 1000base dwdm 1532 68"; + } + enum "im-attr-media-1000base-dwdm-1531-90" { + value 121; + description + "im attr media 1000base dwdm 1531 90"; + } + enum "im-attr-media-1000base-dwdm-1531-12" { + value 122; + description + "im attr media 1000base dwdm 1531 12"; + } + enum "im-attr-media-1000base-dwdm-1530-33" { + value 123; + description + "im attr media 1000base dwdm 1530 33"; + } + enum "im-attr-media-1000base-dwdm-tunable" { + value 124; + description + "im attr media 1000base dwdm tunable"; + } + enum "im-attr-media-10gbase-dwdm-1561-42" { + value 125; + description + "im attr media 10gbase dwdm 1561 42"; + } + enum "im-attr-media-10gbase-dwdm-1560-61" { + value 126; + description + "im attr media 10gbase dwdm 1560 61"; + } + enum "im-attr-media-10gbase-dwdm-1559-79" { + value 127; + description + "im attr media 10gbase dwdm 1559 79"; + } + enum "im-attr-media-10gbase-dwdm-1558-98" { + value 128; + description + "im attr media 10gbase dwdm 1558 98"; + } + enum "im-attr-media-10gbase-dwdm-1558-17" { + value 129; + description + "im attr media 10gbase dwdm 1558 17"; + } + enum "im-attr-media-10gbase-dwdm-1557-36" { + value 130; + description + "im attr media 10gbase dwdm 1557 36"; + } + enum "im-attr-media-10gbase-dwdm-1556-55" { + value 131; + description + "im attr media 10gbase dwdm 1556 55"; + } + enum "im-attr-media-10gbase-dwdm-1555-75" { + value 132; + description + "im attr media 10gbase dwdm 1555 75"; + } + enum "im-attr-media-10gbase-dwdm-1554-94" { + value 133; + description + "im attr media 10gbase dwdm 1554 94"; + } + enum "im-attr-media-10gbase-dwdm-1554-13" { + value 134; + description + "im attr media 10gbase dwdm 1554 13"; + } + enum "im-attr-media-10gbase-dwdm-1553-33" { + value 135; + description + "im attr media 10gbase dwdm 1553 33"; + } + enum "im-attr-media-10gbase-dwdm-1552-52" { + value 136; + description + "im attr media 10gbase dwdm 1552 52"; + } + enum "im-attr-media-10gbase-dwdm-1551-72" { + value 137; + description + "im attr media 10gbase dwdm 1551 72"; + } + enum "im-attr-media-10gbase-dwdm-1550-92" { + value 138; + description + "im attr media 10gbase dwdm 1550 92"; + } + enum "im-attr-media-10gbase-dwdm-1550-12" { + value 139; + description + "im attr media 10gbase dwdm 1550 12"; + } + enum "im-attr-media-10gbase-dwdm-1549-32" { + value 140; + description + "im attr media 10gbase dwdm 1549 32"; + } + enum "im-attr-media-10gbase-dwdm-1548-51" { + value 141; + description + "im attr media 10gbase dwdm 1548 51"; + } + enum "im-attr-media-10gbase-dwdm-1547-72" { + value 142; + description + "im attr media 10gbase dwdm 1547 72"; + } + enum "im-attr-media-10gbase-dwdm-1546-92" { + value 143; + description + "im attr media 10gbase dwdm 1546 92"; + } + enum "im-attr-media-10gbase-dwdm-1546-12" { + value 144; + description + "im attr media 10gbase dwdm 1546 12"; + } + enum "im-attr-media-10gbase-dwdm-1545-32" { + value 145; + description + "im attr media 10gbase dwdm 1545 32"; + } + enum "im-attr-media-10gbase-dwdm-1544-53" { + value 146; + description + "im attr media 10gbase dwdm 1544 53"; + } + enum "im-attr-media-10gbase-dwdm-1543-73" { + value 147; + description + "im attr media 10gbase dwdm 1543 73"; + } + enum "im-attr-media-10gbase-dwdm-1542-94" { + value 148; + description + "im attr media 10gbase dwdm 1542 94"; + } + enum "im-attr-media-10gbase-dwdm-1542-14" { + value 149; + description + "im attr media 10gbase dwdm 1542 14"; + } + enum "im-attr-media-10gbase-dwdm-1541-35" { + value 150; + description + "im attr media 10gbase dwdm 1541 35"; + } + enum "im-attr-media-10gbase-dwdm-1540-56" { + value 151; + description + "im attr media 10gbase dwdm 1540 56"; + } + enum "im-attr-media-10gbase-dwdm-1539-77" { + value 152; + description + "im attr media 10gbase dwdm 1539 77"; + } + enum "im-attr-media-10gbase-dwdm-1538-98" { + value 153; + description + "im attr media 10gbase dwdm 1538 98"; + } + enum "im-attr-media-10gbase-dwdm-1538-19" { + value 154; + description + "im attr media 10gbase dwdm 1538 19"; + } + enum "im-attr-media-10gbase-dwdm-1537-40" { + value 155; + description + "im attr media 10gbase dwdm 1537 40"; + } + enum "im-attr-media-10gbase-dwdm-1536-61" { + value 156; + description + "im attr media 10gbase dwdm 1536 61"; + } + enum "im-attr-media-10gbase-dwdm-1535-82" { + value 157; + description + "im attr media 10gbase dwdm 1535 82"; + } + enum "im-attr-media-10gbase-dwdm-1535-04" { + value 158; + description + "im attr media 10gbase dwdm 1535 04"; + } + enum "im-attr-media-10gbase-dwdm-1534-25" { + value 159; + description + "im attr media 10gbase dwdm 1534 25"; + } + enum "im-attr-media-10gbase-dwdm-1533-47" { + value 160; + description + "im attr media 10gbase dwdm 1533 47"; + } + enum "im-attr-media-10gbase-dwdm-1532-68" { + value 161; + description + "im attr media 10gbase dwdm 1532 68"; + } + enum "im-attr-media-10gbase-dwdm-1531-90" { + value 162; + description + "im attr media 10gbase dwdm 1531 90"; + } + enum "im-attr-media-10gbase-dwdm-1531-12" { + value 163; + description + "im attr media 10gbase dwdm 1531 12"; + } + enum "im-attr-media-10gbase-dwdm-1530-33" { + value 164; + description + "im attr media 10gbase dwdm 1530 33"; + } + enum "im-attr-media-10gbase-dwdm-tunable" { + value 165; + description + "im attr media 10gbase dwdm tunable"; + } + enum "im-attr-media-40gbase-dwdm-1561-42" { + value 166; + description + "im attr media 40gbase dwdm 1561 42"; + } + enum "im-attr-media-40gbase-dwdm-1560-61" { + value 167; + description + "im attr media 40gbase dwdm 1560 61"; + } + enum "im-attr-media-40gbase-dwdm-1559-79" { + value 168; + description + "im attr media 40gbase dwdm 1559 79"; + } + enum "im-attr-media-40gbase-dwdm-1558-98" { + value 169; + description + "im attr media 40gbase dwdm 1558 98"; + } + enum "im-attr-media-40gbase-dwdm-1558-17" { + value 170; + description + "im attr media 40gbase dwdm 1558 17"; + } + enum "im-attr-media-40gbase-dwdm-1557-36" { + value 171; + description + "im attr media 40gbase dwdm 1557 36"; + } + enum "im-attr-media-40gbase-dwdm-1556-55" { + value 172; + description + "im attr media 40gbase dwdm 1556 55"; + } + enum "im-attr-media-40gbase-dwdm-1555-75" { + value 173; + description + "im attr media 40gbase dwdm 1555 75"; + } + enum "im-attr-media-40gbase-dwdm-1554-94" { + value 174; + description + "im attr media 40gbase dwdm 1554 94"; + } + enum "im-attr-media-40gbase-dwdm-1554-13" { + value 175; + description + "im attr media 40gbase dwdm 1554 13"; + } + enum "im-attr-media-40gbase-dwdm-1553-33" { + value 176; + description + "im attr media 40gbase dwdm 1553 33"; + } + enum "im-attr-media-40gbase-dwdm-1552-52" { + value 177; + description + "im attr media 40gbase dwdm 1552 52"; + } + enum "im-attr-media-40gbase-dwdm-1551-72" { + value 178; + description + "im attr media 40gbase dwdm 1551 72"; + } + enum "im-attr-media-40gbase-dwdm-1550-92" { + value 179; + description + "im attr media 40gbase dwdm 1550 92"; + } + enum "im-attr-media-40gbase-dwdm-1550-12" { + value 180; + description + "im attr media 40gbase dwdm 1550 12"; + } + enum "im-attr-media-40gbase-dwdm-1549-32" { + value 181; + description + "im attr media 40gbase dwdm 1549 32"; + } + enum "im-attr-media-40gbase-dwdm-1548-51" { + value 182; + description + "im attr media 40gbase dwdm 1548 51"; + } + enum "im-attr-media-40gbase-dwdm-1547-72" { + value 183; + description + "im attr media 40gbase dwdm 1547 72"; + } + enum "im-attr-media-40gbase-dwdm-1546-92" { + value 184; + description + "im attr media 40gbase dwdm 1546 92"; + } + enum "im-attr-media-40gbase-dwdm-1546-12" { + value 185; + description + "im attr media 40gbase dwdm 1546 12"; + } + enum "im-attr-media-40gbase-dwdm-1545-32" { + value 186; + description + "im attr media 40gbase dwdm 1545 32"; + } + enum "im-attr-media-40gbase-dwdm-1544-53" { + value 187; + description + "im attr media 40gbase dwdm 1544 53"; + } + enum "im-attr-media-40gbase-dwdm-1543-73" { + value 188; + description + "im attr media 40gbase dwdm 1543 73"; + } + enum "im-attr-media-40gbase-dwdm-1542-94" { + value 189; + description + "im attr media 40gbase dwdm 1542 94"; + } + enum "im-attr-media-40gbase-dwdm-1542-14" { + value 190; + description + "im attr media 40gbase dwdm 1542 14"; + } + enum "im-attr-media-40gbase-dwdm-1541-35" { + value 191; + description + "im attr media 40gbase dwdm 1541 35"; + } + enum "im-attr-media-40gbase-dwdm-1540-56" { + value 192; + description + "im attr media 40gbase dwdm 1540 56"; + } + enum "im-attr-media-40gbase-dwdm-1539-77" { + value 193; + description + "im attr media 40gbase dwdm 1539 77"; + } + enum "im-attr-media-40gbase-dwdm-1538-98" { + value 194; + description + "im attr media 40gbase dwdm 1538 98"; + } + enum "im-attr-media-40gbase-dwdm-1538-19" { + value 195; + description + "im attr media 40gbase dwdm 1538 19"; + } + enum "im-attr-media-40gbase-dwdm-1537-40" { + value 196; + description + "im attr media 40gbase dwdm 1537 40"; + } + enum "im-attr-media-40gbase-dwdm-1536-61" { + value 197; + description + "im attr media 40gbase dwdm 1536 61"; + } + enum "im-attr-media-40gbase-dwdm-1535-82" { + value 198; + description + "im attr media 40gbase dwdm 1535 82"; + } + enum "im-attr-media-40gbase-dwdm-1535-04" { + value 199; + description + "im attr media 40gbase dwdm 1535 04"; + } + enum "im-attr-media-40gbase-dwdm-1534-25" { + value 200; + description + "im attr media 40gbase dwdm 1534 25"; + } + enum "im-attr-media-40gbase-dwdm-1533-47" { + value 201; + description + "im attr media 40gbase dwdm 1533 47"; + } + enum "im-attr-media-40gbase-dwdm-1532-68" { + value 202; + description + "im attr media 40gbase dwdm 1532 68"; + } + enum "im-attr-media-40gbase-dwdm-1531-90" { + value 203; + description + "im attr media 40gbase dwdm 1531 90"; + } + enum "im-attr-media-40gbase-dwdm-1531-12" { + value 204; + description + "im attr media 40gbase dwdm 1531 12"; + } + enum "im-attr-media-40gbase-dwdm-1530-33" { + value 205; + description + "im attr media 40gbase dwdm 1530 33"; + } + enum "im-attr-media-40gbase-dwdm-tunable" { + value 206; + description + "im attr media 40gbase dwdm tunable"; + } + enum "im-attr-media-100gbase-dwdm-1561-42" { + value 207; + description + "im attr media 100gbase dwdm 1561 42"; + } + enum "im-attr-media-100gbase-dwdm-1560-61" { + value 208; + description + "im attr media 100gbase dwdm 1560 61"; + } + enum "im-attr-media-100gbase-dwdm-1559-79" { + value 209; + description + "im attr media 100gbase dwdm 1559 79"; + } + enum "im-attr-media-100gbase-dwdm-1558-98" { + value 210; + description + "im attr media 100gbase dwdm 1558 98"; + } + enum "im-attr-media-100gbase-dwdm-1558-17" { + value 211; + description + "im attr media 100gbase dwdm 1558 17"; + } + enum "im-attr-media-100gbase-dwdm-1557-36" { + value 212; + description + "im attr media 100gbase dwdm 1557 36"; + } + enum "im-attr-media-100gbase-dwdm-1556-55" { + value 213; + description + "im attr media 100gbase dwdm 1556 55"; + } + enum "im-attr-media-100gbase-dwdm-1555-75" { + value 214; + description + "im attr media 100gbase dwdm 1555 75"; + } + enum "im-attr-media-100gbase-dwdm-1554-94" { + value 215; + description + "im attr media 100gbase dwdm 1554 94"; + } + enum "im-attr-media-100gbase-dwdm-1554-13" { + value 216; + description + "im attr media 100gbase dwdm 1554 13"; + } + enum "im-attr-media-100gbase-dwdm-1553-33" { + value 217; + description + "im attr media 100gbase dwdm 1553 33"; + } + enum "im-attr-media-100gbase-dwdm-1552-52" { + value 218; + description + "im attr media 100gbase dwdm 1552 52"; + } + enum "im-attr-media-100gbase-dwdm-1551-72" { + value 219; + description + "im attr media 100gbase dwdm 1551 72"; + } + enum "im-attr-media-100gbase-dwdm-1550-92" { + value 220; + description + "im attr media 100gbase dwdm 1550 92"; + } + enum "im-attr-media-100gbase-dwdm-1550-12" { + value 221; + description + "im attr media 100gbase dwdm 1550 12"; + } + enum "im-attr-media-100gbase-dwdm-1549-32" { + value 222; + description + "im attr media 100gbase dwdm 1549 32"; + } + enum "im-attr-media-100gbase-dwdm-1548-51" { + value 223; + description + "im attr media 100gbase dwdm 1548 51"; + } + enum "im-attr-media-100gbase-dwdm-1547-72" { + value 224; + description + "im attr media 100gbase dwdm 1547 72"; + } + enum "im-attr-media-100gbase-dwdm-1546-92" { + value 225; + description + "im attr media 100gbase dwdm 1546 92"; + } + enum "im-attr-media-100gbase-dwdm-1546-12" { + value 226; + description + "im attr media 100gbase dwdm 1546 12"; + } + enum "im-attr-media-100gbase-dwdm-1545-32" { + value 227; + description + "im attr media 100gbase dwdm 1545 32"; + } + enum "im-attr-media-100gbase-dwdm-1544-53" { + value 228; + description + "im attr media 100gbase dwdm 1544 53"; + } + enum "im-attr-media-100gbase-dwdm-1543-73" { + value 229; + description + "im attr media 100gbase dwdm 1543 73"; + } + enum "im-attr-media-100gbase-dwdm-1542-94" { + value 230; + description + "im attr media 100gbase dwdm 1542 94"; + } + enum "im-attr-media-100gbase-dwdm-1542-14" { + value 231; + description + "im attr media 100gbase dwdm 1542 14"; + } + enum "im-attr-media-100gbase-dwdm-1541-35" { + value 232; + description + "im attr media 100gbase dwdm 1541 35"; + } + enum "im-attr-media-100gbase-dwdm-1540-56" { + value 233; + description + "im attr media 100gbase dwdm 1540 56"; + } + enum "im-attr-media-100gbase-dwdm-1539-77" { + value 234; + description + "im attr media 100gbase dwdm 1539 77"; + } + enum "im-attr-media-100gbase-dwdm-1538-98" { + value 235; + description + "im attr media 100gbase dwdm 1538 98"; + } + enum "im-attr-media-100gbase-dwdm-1538-19" { + value 236; + description + "im attr media 100gbase dwdm 1538 19"; + } + enum "im-attr-media-100gbase-dwdm-1537-40" { + value 237; + description + "im attr media 100gbase dwdm 1537 40"; + } + enum "im-attr-media-100gbase-dwdm-1536-61" { + value 238; + description + "im attr media 100gbase dwdm 1536 61"; + } + enum "im-attr-media-100gbase-dwdm-1535-82" { + value 239; + description + "im attr media 100gbase dwdm 1535 82"; + } + enum "im-attr-media-100gbase-dwdm-1535-04" { + value 240; + description + "im attr media 100gbase dwdm 1535 04"; + } + enum "im-attr-media-100gbase-dwdm-1534-25" { + value 241; + description + "im attr media 100gbase dwdm 1534 25"; + } + enum "im-attr-media-100gbase-dwdm-1533-47" { + value 242; + description + "im attr media 100gbase dwdm 1533 47"; + } + enum "im-attr-media-100gbase-dwdm-1532-68" { + value 243; + description + "im attr media 100gbase dwdm 1532 68"; + } + enum "im-attr-media-100gbase-dwdm-1531-90" { + value 244; + description + "im attr media 100gbase dwdm 1531 90"; + } + enum "im-attr-media-100gbase-dwdm-1531-12" { + value 245; + description + "im attr media 100gbase dwdm 1531 12"; + } + enum "im-attr-media-100gbase-dwdm-1530-33" { + value 246; + description + "im attr media 100gbase dwdm 1530 33"; + } + enum "im-attr-media-100gbase-dwdm-tunable" { + value 247; + description + "im attr media 100gbase dwdm tunable"; + } + enum "im-attr-media-40gbase-kr4" { + value 248; + description + "im attr media 40gbase kr4"; + } + enum "im-attr-media-40gbase-cr4" { + value 249; + description + "im attr media 40gbase cr4"; + } + enum "im-attr-media-40gbase-sr4" { + value 250; + description + "im attr media 40gbase sr4"; + } + enum "im-attr-media-40gbase-fr" { + value 251; + description + "im attr media 40gbase fr"; + } + enum "im-attr-media-100gbase-cr10" { + value 252; + description + "im attr media 100gbase cr10"; + } + enum "im-attr-media-100gbase-sr10" { + value 253; + description + "im attr media 100gbase sr10"; + } + enum "im-attr-media-40gbase-csr4" { + value 254; + description + "im attr media 40gbase csr4"; + } + enum "im-attr-media-10gbase-cwdm" { + value 255; + description + "im attr media 10gbase cwdm"; + } + enum "im-attr-media-10gbase-cwdm-tunable" { + value 256; + description + "im attr media 10gbase cwdm tunable"; + } + enum "im-attr-media-10gbase-cwdm-1470" { + value 257; + description + "im attr media 10gbase cwdm 1470"; + } + enum "im-attr-media-10gbase-cwdm-1490" { + value 258; + description + "im attr media 10gbase cwdm 1490"; + } + enum "im-attr-media-10gbase-cwdm-1510" { + value 259; + description + "im attr media 10gbase cwdm 1510"; + } + enum "im-attr-media-10gbase-cwdm-1530" { + value 260; + description + "im attr media 10gbase cwdm 1530"; + } + enum "im-attr-media-10gbase-cwdm-1550" { + value 261; + description + "im attr media 10gbase cwdm 1550"; + } + enum "im-attr-media-10gbase-cwdm-1570" { + value 262; + description + "im attr media 10gbase cwdm 1570"; + } + enum "im-attr-media-10gbase-cwdm-1590" { + value 263; + description + "im attr media 10gbase cwdm 1590"; + } + enum "im-attr-media-10gbase-cwdm-1610" { + value 264; + description + "im attr media 10gbase cwdm 1610"; + } + enum "im-attr-media-40gbase-cwdm" { + value 265; + description + "im attr media 40gbase cwdm"; + } + enum "im-attr-media-40gbase-cwdm-tunable" { + value 266; + description + "im attr media 40gbase cwdm tunable"; + } + enum "im-attr-media-40gbase-cwdm-1470" { + value 267; + description + "im attr media 40gbase cwdm 1470"; + } + enum "im-attr-media-40gbase-cwdm-1490" { + value 268; + description + "im attr media 40gbase cwdm 1490"; + } + enum "im-attr-media-40gbase-cwdm-1510" { + value 269; + description + "im attr media 40gbase cwdm 1510"; + } + enum "im-attr-media-40gbase-cwdm-1530" { + value 270; + description + "im attr media 40gbase cwdm 1530"; + } + enum "im-attr-media-40gbase-cwdm-1550" { + value 271; + description + "im attr media 40gbase cwdm 1550"; + } + enum "im-attr-media-40gbase-cwdm-1570" { + value 272; + description + "im attr media 40gbase cwdm 1570"; + } + enum "im-attr-media-40gbase-cwdm-1590" { + value 273; + description + "im attr media 40gbase cwdm 1590"; + } + enum "im-attr-media-40gbase-cwdm-1610" { + value 274; + description + "im attr media 40gbase cwdm 1610"; + } + enum "im-attr-media-100gbase-cwdm" { + value 275; + description + "im attr media 100gbase cwdm"; + } + enum "im-attr-media-100gbase-cwdm-tunable" { + value 276; + description + "im attr media 100gbase cwdm tunable"; + } + enum "im-attr-media-100gbase-cwdm-1470" { + value 277; + description + "im attr media 100gbase cwdm 1470"; + } + enum "im-attr-media-100gbase-cwdm-1490" { + value 278; + description + "im attr media 100gbase cwdm 1490"; + } + enum "im-attr-media-100gbase-cwdm-1510" { + value 279; + description + "im attr media 100gbase cwdm 1510"; + } + enum "im-attr-media-100gbase-cwdm-1530" { + value 280; + description + "im attr media 100gbase cwdm 1530"; + } + enum "im-attr-media-100gbase-cwdm-1550" { + value 281; + description + "im attr media 100gbase cwdm 1550"; + } + enum "im-attr-media-100gbase-cwdm-1570" { + value 282; + description + "im attr media 100gbase cwdm 1570"; + } + enum "im-attr-media-100gbase-cwdm-1590" { + value 283; + description + "im attr media 100gbase cwdm 1590"; + } + enum "im-attr-media-100gbase-cwdm-1610" { + value 284; + description + "im attr media 100gbase cwdm 1610"; + } + enum "im-attr-media-40gbase-elpb" { + value 285; + description + "im attr media 40gbase elpb"; + } + enum "im-attr-media-100gbase-elpb" { + value 286; + description + "im attr media 100gbase elpb"; + } + enum "im-attr-media-100gbase-lr10" { + value 287; + description + "im attr media 100gbase lr10"; + } + enum "im-attr-media-40gbase" { + value 288; + description + "im attr media 40gbase"; + } + enum "im-attr-media-100gbase-kp4" { + value 289; + description + "im attr media 100gbase kp4"; + } + enum "im-attr-media-100gbase-kr4" { + value 290; + description + "im attr media 100gbase kr4"; + } + enum "im-attr-media-10gbase-lrm" { + value 291; + description + "im attr media 10gbase lrm"; + } + enum "im-attr-media-10gbase-cx4" { + value 292; + description + "im attr media 10gbase cx4"; + } + enum "im-attr-media-10gbase" { + value 293; + description + "im attr media 10gbase"; + } + enum "im-attr-media-10gbase-kx4" { + value 294; + description + "im attr media 10gbase kx4"; + } + enum "im-attr-media-10gbase-kr" { + value 295; + description + "im attr media 10gbase kr"; + } + enum "im-attr-media-10gbase-pr" { + value 296; + description + "im attr media 10gbase pr"; + } + enum "im-attr-media-100base-lx" { + value 297; + description + "im attr media 100base lx"; + } + enum "im-attr-media-100base-zx" { + value 298; + description + "im attr media 100base zx"; + } + enum "im-attr-media-1000base-bx-d" { + value 299; + description + "im attr media 1000base bx d"; + } + enum "im-attr-media-1000base-bx-u" { + value 300; + description + "im attr media 1000base bx u"; + } + enum "im-attr-media-1000base-bx20-d" { + value 301; + description + "im attr media 1000base bx20 d"; + } + enum "im-attr-media-1000base-bx20-u" { + value 302; + description + "im attr media 1000base bx20 u"; + } + enum "im-attr-media-1000base-bx40-d" { + value 303; + description + "im attr media 1000base bx40 d"; + } + enum "im-attr-media-1000base-bx40-da" { + value 304; + description + "im attr media 1000base bx40 da"; + } + enum "im-attr-media-1000base-bx40-u" { + value 305; + description + "im attr media 1000base bx40 u"; + } + enum "im-attr-media-1000base-bx80-d" { + value 306; + description + "im attr media 1000base bx80 d"; + } + enum "im-attr-media-1000base-bx80-u" { + value 307; + description + "im attr media 1000base bx80 u"; + } + enum "im-attr-media-1000base-bx120-d" { + value 308; + description + "im attr media 1000base bx120 d"; + } + enum "im-attr-media-1000base-bx120-u" { + value 309; + description + "im attr media 1000base bx120 u"; + } + enum "im-attr-media-10gbase-bx-d" { + value 310; + description + "im attr media 10gbase bx d"; + } + enum "im-attr-media-10gbase-bx-u" { + value 311; + description + "im attr media 10gbase bx u"; + } + enum "im-attr-media-10gbase-bx10-d" { + value 312; + description + "im attr media 10gbase bx10 d"; + } + enum "im-attr-media-10gbase-bx10-u" { + value 313; + description + "im attr media 10gbase bx10 u"; + } + enum "im-attr-media-10gbase-bx20-d" { + value 314; + description + "im attr media 10gbase bx20 d"; + } + enum "im-attr-media-10gbase-bx20-u" { + value 315; + description + "im attr media 10gbase bx20 u"; + } + enum "im-attr-media-10gbase-bx40-d" { + value 316; + description + "im attr media 10gbase bx40 d"; + } + enum "im-attr-media-10gbase-bx40-u" { + value 317; + description + "im attr media 10gbase bx40 u"; + } + enum "im-attr-media-10gbase-bx80-d" { + value 318; + description + "im attr media 10gbase bx80 d"; + } + enum "im-attr-media-10gbase-bx80-u" { + value 319; + description + "im attr media 10gbase bx80 u"; + } + enum "im-attr-media-10gbase-bx120-d" { + value 320; + description + "im attr media 10gbase bx120 d"; + } + enum "im-attr-media-10gbase-bx120-u" { + value 321; + description + "im attr media 10gbase bx120 u"; + } + enum "im-attr-media-1000base-dr-lx" { + value 322; + description + "im attr media 1000base dr lx"; + } + enum "im-attr-media-100gbase-er4l" { + value 323; + description + "im attr media 100gbase er4l"; + } + enum "im-attr-media-100gbase-sr4" { + value 324; + description + "im attr media 100gbase sr4"; + } + enum "im-attr-media-40gbase-sr-bd" { + value 325; + description + "im attr media 40gbase sr bd"; + } + enum "im-attr-media-25gbase-cr" { + value 326; + description + "im attr media 25gbase cr"; + } + enum "im-attr-media-25gbase-cr-s" { + value 327; + description + "im attr media 25gbase cr s"; + } + enum "im-attr-media-25gbase-kr" { + value 328; + description + "im attr media 25gbase kr"; + } + enum "im-attr-media-25gbase-kr-s" { + value 329; + description + "im attr media 25gbase kr s"; + } + enum "im-attr-media-25gbase-r" { + value 330; + description + "im attr media 25gbase r"; + } + enum "im-attr-media-25gbase-sr" { + value 331; + description + "im attr media 25gbase sr"; + } + enum "im-attr-media-25gbase-csr" { + value 332; + description + "im attr media 25gbase csr"; + } + enum "im-attr-media-25gbase-dwdm" { + value 333; + description + "im attr media 25gbase dwdm"; + } + enum "im-attr-media-25gbase-dwdm-tunable" { + value 334; + description + "im attr media 25gbase dwdm tunable"; + } + enum "im-attr-media-25gbase-cwdm" { + value 335; + description + "im attr media 25gbase cwdm"; + } + enum "im-attr-media-25gbase-cwdm-tunable" { + value 336; + description + "im attr media 25gbase cwdm tunable"; + } + enum "im-attr-media-100gbase-psm4" { + value 337; + description + "im attr media 100gbase psm4"; + } + enum "im-attr-media-100gbase-er10" { + value 338; + description + "im attr media 100gbase er10"; + } + enum "im-attr-media-100gbase-er10l" { + value 339; + description + "im attr media 100gbase er10l"; + } + enum "im-attr-media-100gbase-acc" { + value 340; + description + "im attr media 100gbase acc"; + } + enum "im-attr-media-100gbase-aoc" { + value 341; + description + "im attr media 100gbase aoc"; + } + enum "im-attr-media-100gbase-cwdm4" { + value 342; + description + "im attr media 100gbase cwdm4"; + } + enum "im-attr-media-40gbase-psm4" { + value 343; + description + "im attr media 40gbase psm4"; + } + enum "im-attr-media-100gbase-cr4" { + value 344; + description + "im attr media 100gbase cr4"; + } + enum "im-attr-media-100gbase-act-loop" { + value 345; + description + "im attr media 100gbase act loop"; + } + enum "im-attr-media-100gbase-pas-loop" { + value 346; + description + "im attr media 100gbase pas loop"; + } + enum "im-attr-media-50gbase-cr2" { + value 347; + description + "im attr media 50gbase cr2"; + } + enum "im-attr-media-50gbase-sr2" { + value 348; + description + "im attr media 50gbase sr2"; + } + enum "im-attr-media-50gbase-psm2" { + value 349; + description + "im attr media 50gbase psm2"; + } + enum "im-attr-media-200gbase-cr4" { + value 350; + description + "im attr media 200gbase cr4"; + } + enum "im-attr-media-400gbase-fr4" { + value 351; + description + "im attr media 400gbase fr4"; + } + enum "im-attr-media-400gbase-dr4" { + value 352; + description + "im attr media 400gbase dr4"; + } + enum "im-attr-media-10gbase-cr" { + value 353; + description + "im attr media 10gbase cr"; + } + enum "im-attr-media-10gbase-aoc" { + value 354; + description + "im attr media 10gbase aoc"; + } + enum "im-attr-media-40gbase-aoc" { + value 355; + description + "im attr media 40gbase aoc"; + } + enum "im-attr-media-40gbase-acu" { + value 356; + description + "im attr media 40gbase acu"; + } + enum "im-attr-media-100gbase-acu" { + value 357; + description + "im attr media 100gbase acu"; + } + enum "im-attr-media-10gbase-cu1m" { + value 358; + description + "im attr media 10gbase cu1m"; + } + enum "im-attr-media-10gbase-cu3m" { + value 359; + description + "im attr media 10gbase cu3m"; + } + enum "im-attr-media-10gbase-cu5m" { + value 360; + description + "im attr media 10gbase cu5m"; + } + enum "im-attr-media-10gbase-acu7m" { + value 361; + description + "im attr media 10gbase acu7m"; + } + enum "im-attr-media-10gbase-acu10m" { + value 362; + description + "im attr media 10gbase acu10m"; + } + enum "im-attr-media-4x10g-base-lr" { + value 363; + description + "im attr media 4x10g base lr"; + } + enum "im-attr-media-10gbase-cu1-5m" { + value 364; + description + "im attr media 10gbase cu1 5m"; + } + enum "im-attr-media-10gbase-cu2m" { + value 365; + description + "im attr media 10gbase cu2m"; + } + enum "im-attr-media-10gbase-cu2-5m" { + value 366; + description + "im attr media 10gbase cu2 5m"; + } + enum "im-attr-media-10gbase-aoc1m" { + value 367; + description + "im attr media 10gbase aoc1m"; + } + enum "im-attr-media-10gbase-aoc2m" { + value 368; + description + "im attr media 10gbase aoc2m"; + } + enum "im-attr-media-10gbase-aoc3m" { + value 369; + description + "im attr media 10gbase aoc3m"; + } + enum "im-attr-media-10gbase-aoc5m" { + value 370; + description + "im attr media 10gbase aoc5m"; + } + enum "im-attr-media-10gbase-aoc7m" { + value 371; + description + "im attr media 10gbase aoc7m"; + } + enum "im-attr-media-10gbase-aoc10m" { + value 372; + description + "im attr media 10gbase aoc10m"; + } + enum "im-attr-media-40gbase-acu1m" { + value 373; + description + "im attr media 40gbase acu1m"; + } + enum "im-attr-media-40gbase-acu3m" { + value 374; + description + "im attr media 40gbase acu3m"; + } + enum "im-attr-media-40gbase-acu5m" { + value 375; + description + "im attr media 40gbase acu5m"; + } + enum "im-attr-media-40gbase-acu7m" { + value 376; + description + "im attr media 40gbase acu7m"; + } + enum "im-attr-media-40gbase-acu10m" { + value 377; + description + "im attr media 40gbase acu10m"; + } + enum "im-attr-media-25gbase-cu1m" { + value 378; + description + "im attr media 25gbase cu1m"; + } + enum "im-attr-media-25gbase-cu2m" { + value 379; + description + "im attr media 25gbase cu2m"; + } + enum "im-attr-media-25gbase-cu3m" { + value 380; + description + "im attr media 25gbase cu3m"; + } + enum "im-attr-media-25gbase-cu5m" { + value 381; + description + "im attr media 25gbase cu5m"; + } + enum "im-attr-media-100gbase-sm-sr" { + value 382; + description + "im attr media 100gbase sm sr"; + } + enum "im-attr-media-1000base-2bx-d" { + value 383; + description + "im attr media 1000base 2bx d"; + } + enum "im-attr-media-1000base-2bx-d-i" { + value 384; + description + "im attr media 1000base 2bx d i"; + } + enum "im-attr-media-1000base-2bx-u" { + value 385; + description + "im attr media 1000base 2bx u"; + } + enum "im-attr-media-1000base-2bx-u-i" { + value 386; + description + "im attr media 1000base 2bx u i"; + } + enum "im-attr-media-400gbase-cr8" { + value 387; + description + "im attr media 400gbase cr8"; + } + enum "im-attr-media-100gbase-sr-bd" { + value 388; + description + "im attr media 100gbase sr bd"; + } + enum "im-attr-media-400gbase-lr8" { + value 389; + description + "im attr media 400gbase lr8"; + } + enum "im-attr-media-400gbase-aoc" { + value 390; + description + "im attr media 400gbase aoc"; + } + enum "im-attr-media-400gbase-acc" { + value 391; + description + "im attr media 400gbase acc"; + } + enum "im-attr-media-400gbase-act-loop" { + value 392; + description + "im attr media 400gbase act loop"; + } + enum "im-attr-media-400gbase-pas-loop" { + value 393; + description + "im attr media 400gbase pas loop"; + } + enum "im-attr-media-8x-sfp50gbase-cu" { + value 394; + description + "im attr media 8x sfp50gbase cu"; + } + enum "im-attr-media-2x100gbase-lr8-s" { + value 395; + description + "im attr media 2x100gbase lr8 s"; + } + enum "im-attr-media-2x100gbase-sr4" { + value 396; + description + "im attr media 2x100gbase sr4"; + } + enum "im-attr-media-2x100gbase-psm4" { + value 397; + description + "im attr media 2x100gbase psm4"; + } + enum "im-attr-media-2x100gbase-cwdm4" { + value 398; + description + "im attr media 2x100gbase cwdm4"; + } + enum "im-attr-media-2x100gbase-lr4" { + value 399; + description + "im attr media 2x100gbase lr4"; + } + enum "im-attr-media-100gbase-fr" { + value 400; + description + "im attr media 100gbase fr"; + } + enum "im-attr-media-100gbase-lr" { + value 401; + description + "im attr media 100gbase lr"; + } + enum "im-attr-media-100gbase-er4f" { + value 402; + description + "im attr media 100gbase er4f"; + } + enum "im-attr-media-100gbase-dwdm2" { + value 403; + description + "im attr media 100gbase dwdm2"; + } + enum "im-attr-media-25gbase-aoc1m" { + value 404; + description + "im attr media 25gbase aoc1m"; + } + enum "im-attr-media-25gbase-aoc2m" { + value 405; + description + "im attr media 25gbase aoc2m"; + } + enum "im-attr-media-25gbase-aoc3m" { + value 406; + description + "im attr media 25gbase aoc3m"; + } + enum "im-attr-media-25gbase-aoc5m" { + value 407; + description + "im attr media 25gbase aoc5m"; + } + enum "im-attr-media-25gbase-aoc7m" { + value 408; + description + "im attr media 25gbase aoc7m"; + } + enum "im-attr-media-25gbase-aoc10m" { + value 409; + description + "im attr media 25gbase aoc10m"; + } + enum "im-attr-media-400gbase-aec" { + value 410; + description + "im attr media 400gbase aec"; + } + enum "im-attr-media-4x100gbase-fr" { + value 411; + description + "im attr media 4x100gbase fr"; + } + enum "im-attr-media-400gbase-zr-s" { + value 412; + description + "im attr media 400gbase zr s"; + } + enum "im-attr-media-400gbase-zr-plus-s" { + value 413; + description + "im attr media 400gbase zr plus s"; + } + enum "im-attr-media-100gbase-dr-s" { + value 414; + description + "im attr media 100gbase dr s"; + } + enum "im-attr-media-25gbase-lr" { + value 415; + description + "im attr media 25gbase lr"; + } + enum "im-attr-media-25gbase-pas-loop" { + value 416; + description + "im attr media 25gbase pas loop"; + } + enum "im-attr-media-50gbase-sr" { + value 417; + description + "im attr media 50gbase sr"; + } + enum "im-attr-media-50gbase-cu1m" { + value 418; + description + "im attr media 50gbase cu1m"; + } + enum "im-attr-media-50gbase-pas-loop" { + value 419; + description + "im attr media 50gbase pas loop"; + } + enum "im-attr-media-25g-50g-sr-s" { + value 420; + description + "im attr media 25g 50g sr s"; + } + enum "im-attr-media-400gbase-lr4" { + value 421; + description + "im attr media 400gbase lr4"; + } + enum "im-attr-media-800gbase-cr8" { + value 422; + description + "im attr media 800gbase cr8"; + } + enum "im-attr-media-qsa" { + value 423; + description + "im attr media qsa"; + } + enum "im-attr-media-qsa-28" { + value 424; + description + "im attr media qsa 28"; + } + enum "im-attr-media-100gbase-erl" { + value 425; + description + "im attr media 100gbase erl"; + } + enum "im-attr-media-4x100gbase-lr" { + value 426; + description + "im attr media 4x100gbase lr"; + } + enum "im-attr-media-50gbase-cu1-5m" { + value 427; + description + "im attr media 50gbase cu1 5m"; + } + enum "im-attr-media-50gbase-cu2m" { + value 428; + description + "im attr media 50gbase cu2m"; + } + enum "im-attr-media-50gbase-cu2-5m" { + value 429; + description + "im attr media 50gbase cu2 5m"; + } + enum "im-attr-media-50gbase-cu3m" { + value 430; + description + "im attr media 50gbase cu3m"; + } + enum "im-attr-media-50gbase-cu5m" { + value 431; + description + "im attr media 50gbase cu5m"; + } + enum "im-attr-media-100gbase-zr-plus-s" { + value 432; + description + "im attr media 100gbase zr plus s"; + } + enum "im-attr-media-10gbase-pas-loop" { + value 433; + description + "im attr media 10gbase pas loop"; + } + enum "im-attr-media-gebase-pas-loop" { + value 434; + description + "im attr media gebase pas loop"; + } + enum "im-attr-media-2x200gbase-cu" { + value 435; + description + "im attr media 2x200gbase cu"; + } + enum "im-attr-media-2x400gbase-fr4" { + value 436; + description + "im attr media 2x400gbase fr4"; + } + enum "im-attr-media-8x100gbase-dr" { + value 437; + description + "im attr media 8x100gbase dr"; + } + enum "im-attr-media-800gbase-pas-loop" { + value 438; + description + "im attr media 800gbase pas loop"; + } + enum "im-attr-media-25gbase-er" { + value 439; + description + "im attr media 25gbase er"; + } + enum "im-attr-media-400gbase-sr8" { + value 440; + description + "im attr media 400gbase sr8"; + } + enum "im-attr-media-200gbase-fr4" { + value 441; + description + "im attr media 200gbase fr4"; + } + enum "im-attr-media-8x100gbase-fr" { + value 442; + description + "im attr media 8x100gbase fr"; + } + enum "im-attr-media-800gbase-aec" { + value 443; + description + "im attr media 800gbase aec"; + } + enum "im-attr-media-100gbase-zr4s" { + value 444; + description + "im attr media 100gbase zr4s"; + } + enum "im-attr-media-1000base-lh" { + value 445; + description + "im attr media 1000base lh"; + } + enum "im-attr-media-1000base-lhhd" { + value 446; + description + "im attr media 1000base lhhd"; + } + enum "im-attr-media-1000base-lhfdx" { + value 447; + description + "im attr media 1000base lhfdx"; + } + enum "im-attr-media-25gbase-bx25-d" { + value 448; + description + "im attr media 25gbase bx25 d"; + } + enum "im-attr-media-25gbase-bx25-u" { + value 449; + description + "im attr media 25gbase bx25 u"; + } + enum "im-attr-media-2x400gbase-lr4" { + value 450; + description + "im attr media 2x400gbase lr4"; + } + enum "im-attr-media-100gbase-zr-s" { + value 451; + description + "im attr media 100gbase zr s"; + } + enum "im-attr-media-400gbase-bright-zr-plus-s" { + value 452; + description + "im attr media 400gbase bright zr plus s"; + } + enum "im-attr-media-10gbase-t-x" { + value 453; + description + "im attr media 10gbase t x"; + } + } + description + "Im attr media"; + } + + typedef Im-attr-duplex { + type enumeration { + enum "im-attr-duplex-unknown" { + value 0; + description + "im attr duplex unknown"; + } + enum "im-attr-duplex-half" { + value 1; + description + "im attr duplex half"; + } + enum "im-attr-duplex-full" { + value 2; + description + "im attr duplex full"; + } + } + description + "Im attr duplex"; + } + + grouping IM-DESC-INFO { + description + "Interface description information"; + leaf interface { + type xr:Interface-name; + description + "Interface handle of the Interface"; + } + leaf state { + type Im-state-enum; + description + "Operational state with no translation of error + disable or shutdown"; + } + leaf line-state { + type Im-state-enum; + description + "Line protocol state with no translation of error + disable or shutdown"; + } + leaf description { + type string; + description + "Interface description string"; + } + } + + grouping STATS-BAG-ELEMENT { + description + "STATS BAG ELEMENT"; + leaf key { + type yang:hex-string; + description + "key"; + } + list block-array { + description + "block array"; + uses STATS-BAG-BLOCK; + } + } + + grouping STATS-BAG-BLOCK { + description + "STATS BAG BLOCK"; + leaf type { + type Stats-counter; + description + "type"; + } + leaf count { + type uint32; + description + "count"; + } + leaf data { + type yang:hex-string; + description + "data"; + } + } + + grouping STATS-BAG-ID { + description + "STATS BAG ID"; + leaf id-type { + type Stats-id; + description + "id type"; + } + leaf unused { + when "../id-type = 'stats-id-type-unknown'" { + description + "../id_type = 'STATS_ID_TYPE_UNKNOWN'"; + } + type uint32; + description + "Unused"; + } + leaf interface-handle { + when "../id-type = 'stats-id-type-min'" { + description + "../id_type = 'STATS_ID_TYPE_MIN'"; + } + type xr:Interface-name; + description + "Interface Handle"; + } + leaf node-id { + when "../id-type = 'stats-id-type-node'" { + description + "../id_type = 'STATS_ID_TYPE_NODE'"; + } + type xr:Node-id; + description + "Node ID"; + } + leaf feature-id { + when "../id-type = 'stats-id-type-feature'" { + description + "../id_type = 'STATS_ID_TYPE_FEATURE'"; + } + type uint32; + description + "Feature ID"; + } + leaf id { + when "../id-type = 'stats-id-type-other'" { + description + "../id_type = 'STATS_ID_TYPE_OTHER'"; + } + type uint32; + description + "ID"; + } + } + + grouping STATS-DATA { + description + "Stats Data"; + container stats-id { + description + "Identifier"; + uses STATS-BAG-ID; + } + leaf stats-type { + type Stats-type-val; + description + "Stats type value"; + } + leaf contents { + type Stats-type-contents; + description + "Bag contents"; + } + list block-array { + description + "Block Array"; + uses STATS-BAG-BLOCK; + } + list element-array { + description + "Element Array"; + uses STATS-BAG-ELEMENT; + } + } + + grouping IFSTATSBAG-BASIC { + description + "Basic set of interface counters"; + leaf packets-received { + type uint64; + description + "Total no. of Packets received"; + } + leaf bytes-received { + type uint64; + units "byte"; + description + "Total no. of Bytes received"; + } + leaf packets-sent { + type uint64; + description + "Total no. of Packets sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Total no. of Bytes sent"; + } + leaf input-drops { + type uint32; + description + "Total input drops"; + } + leaf input-queue-drops { + type uint32; + description + "Input queue drops"; + } + leaf input-errors { + type uint32; + description + "Total input errors"; + } + leaf unknown-protocol-packets-received { + type uint32; + description + "Unknown protocol packets received"; + } + leaf output-drops { + type uint32; + description + "Total output drops"; + } + leaf output-queue-drops { + type uint32; + description + "Output queue drops"; + } + leaf output-errors { + type uint32; + description + "Total packets dropped due to internal driver + error"; + } + leaf last-data-time { + type uint32; + units "second"; + description + "Time when counters were last written (in + seconds)"; + } + leaf seconds-since-last-clear-counters { + type uint32; + units "second"; + description + "Time elapsed since last clear command executed + (in Seconds)"; + } + leaf last-discontinuity-time { + type uint32; + units "second"; + description + "SysUpTime when counters were last reset (in + seconds)"; + } + leaf seconds-since-packet-received { + type uint32; + units "second"; + description + "Time elapsed since packet received (in Seconds)"; + } + leaf seconds-since-packet-sent { + type uint32; + units "second"; + description + "Time since packet sent (in Seconds)"; + } + } + + grouping IFSTATSBAG-GENERIC { + description + "Generic set of interface counters"; + leaf packets-received { + type uint64; + description + "Total Packets received"; + } + leaf bytes-received { + type uint64; + units "byte"; + description + "Total Bytes received"; + } + leaf packets-sent { + type uint64; + description + "Total Packets sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Total Bytes sent"; + } + leaf multicast-packets-received { + type uint64; + description + "Total no. of multicast packets received"; + } + leaf broadcast-packets-received { + type uint64; + description + "Total no. of broadcast packets received"; + } + leaf multicast-packets-sent { + type uint64; + description + "Total no. of multicast packets sent"; + } + leaf broadcast-packets-sent { + type uint64; + description + "Total no. of broadcast packets sent"; + } + leaf output-drops { + type uint32; + description + "No. of packet dropped before being transmitted"; + } + leaf output-queue-drops { + type uint32; + description + "Number of packets dropped due to configured + output policy"; + } + leaf input-drops { + type uint32; + description + "Total input drops"; + } + leaf input-queue-drops { + type uint32; + description + "Placeholder for packets dropped due to configure + input policy"; + } + leaf runt-packets-received { + type uint32; + description + "Received packets which are too small to be + handled"; + } + leaf giant-packets-received { + type uint32; + description + "Received packets which are too large to be + handled"; + } + leaf throttled-packets-received { + type uint32; + description + "No. of times the receiver on the port is was + disabled"; + } + leaf parity-packets-received { + type uint32; + description + "No. of parity errors on the interface"; + } + leaf unknown-protocol-packets-received { + type uint32; + description + "No. of packets dropped because they were + destined for higher levelprotocols not configure + or running on the interface"; + } + leaf input-errors { + type uint32; + description + "Total input errors"; + } + leaf crc-errors { + type uint32; + description + "Input CRC errors"; + } + leaf input-overruns { + type uint32; + description + "No. of input packets received with FIFO or DMA + overrun errors"; + } + leaf framing-errors-received { + type uint32; + description + "No. of packets received with framing error"; + } + leaf input-ignored-packets { + type uint32; + description + "Packets dropped due to internal driver error or + hardware errors "; + } + leaf input-aborts { + type uint32; + description + "No. of packets whose reciept was aborted"; + } + leaf output-errors { + type uint32; + description + "Total packets that could not be transmitted due + to internal driver error"; + } + leaf output-underruns { + type uint32; + description + "Transmitted packets with FIFO or DMA underrun + errors"; + } + leaf output-buffer-failures { + type uint32; + description + "No. of no resource error received on output"; + } + leaf output-buffers-swapped-out { + type uint32; + description + "No. of packets swapped to DRAM or main memory"; + } + leaf applique { + type uint32; + description + "No. of unrecoverable error which have occured on + the applique"; + } + leaf resets { + type uint32; + description + "Number of hardware resets"; + } + leaf carrier-transitions { + type uint32; + description + "No. of times the carrier detect signal of + interface has changed state"; + } + leaf availability-flag { + type uint32; + description + "Availability bit mask"; + } + leaf last-data-time { + type uint64; + units "second"; + description + "Time when counters were last written (in + seconds)"; + } + leaf hardware-timestamp { + type uint64; + units "millisecond"; + description + "Time when counters were last read by Primary + collector from hardware (in msecs)"; + } + leaf seconds-since-last-clear-counters { + type uint32; + units "second"; + description + "Time elapsed since last clear command executed + (in Seconds)"; + } + leaf last-discontinuity-time { + type uint32; + units "second"; + description + "SysUpTime when counters were last reset (in + seconds)"; + } + leaf seconds-since-packet-received { + type uint32; + units "second"; + description + "Time elapsed since packet received (in Seconds)"; + } + leaf seconds-since-packet-sent { + type uint32; + units "second"; + description + "Time elapsed since packet sent (in Seconds)"; + } + } + + grouping IM-CMD-IF-STATS { + description + "IM CMD IF STATS"; + container full-interface-stats { + when "../stats-type = 'full'" { + description + "../StatsType = 'Full'"; + } + description + "Packet, byte and all error counters"; + uses IFSTATSBAG-GENERIC; + } + container basic-interface-stats { + when "../stats-type = 'basic'" { + description + "../StatsType = 'Basic'"; + } + description + "Packet, byte and selected error counters"; + uses IFSTATSBAG-BASIC; + } + leaf stats-type { + type Im-cmd-stats-enum; + description + "StatsType"; + } + } + + grouping STATSDBAG-DATARATE { + description + "Datarate information"; + leaf input-data-rate { + type uint64; + units "bit/s"; + description + "Input data rate in 1000's of bps"; + } + leaf input-packet-rate { + type uint64; + units "packet/s"; + description + "Input packets per second"; + } + leaf output-data-rate { + type uint64; + units "bit/s"; + description + "Output data rate in 1000's of bps"; + } + leaf output-packet-rate { + type uint64; + units "packet/s"; + description + "Output packets per second"; + } + leaf peak-input-data-rate { + type uint64; + description + "Peak input data rate, highest spike since last + clear counters"; + } + leaf peak-input-packet-rate { + type uint64; + description + "Peak input packet rate, highest spike since last + clear counters"; + } + leaf peak-output-data-rate { + type uint64; + description + "Peak output data rate, highest spike since last + clear counters"; + } + leaf peak-output-packet-rate { + type uint64; + description + "Peak output packet rate, highest spike since + last clear counters"; + } + leaf bandwidth { + type uint64; + units "kbit/s"; + description + "Bandwidth (in kbps)"; + } + leaf load-interval { + type uint32; + description + "Number of 30-sec intervals less one"; + } + leaf output-load { + type uint8; + description + "Output load as fraction of 255"; + } + leaf input-load { + type uint8; + description + "Input load as fraction of 255"; + } + leaf reliability { + type uint8; + description + "Reliability coefficient"; + } + } + + grouping IM-CMD-GCC-PER-PORT-INFO { + description + "GCC"; + leaf derived-mode { + type Gcc-der-state; + description + "Derived State"; + } + leaf sec-state { + type Gcc-sec-state; + description + "Sec State "; + } + } + + grouping CEM-INTERFACE { + description + "CEM interface information"; + leaf timeslots { + type string; + description + "Timeslots separated by : or - from 1 to 32. : + indicates individual timeslot and - represents a + range. E.g. 1-3:5 represents timeslots 1, 2, 3, + and 5."; + } + leaf payload { + type uint16; + units "byte"; + description + "Payload size in bytes configured on CEM + interface"; + } + leaf dejitter-buffer-length { + type uint32; + units "microsecond"; + description + "Dejitter buffer length configured in + microseconds"; + } + leaf dejitter-buffer { + type uint16; + units "millisecond"; + status deprecated; + description + "Dejitter buffer length configured in + milliseconds, this object is deprecated.Instead + refer DejitterBufferLength (in microseconds)"; + } + leaf framing { + type int32; + description + " If framing is TRUE then the CEM interface is + structure aware ; otherwise it is structure + agnostic"; + } + } + + grouping PWHE-ETHER-INTERFACE-INFO { + description + "PWHE ETHER INTERFACE INFO"; + leaf interface-list-name { + type string; + description + "Interface list Name"; + } + leaf l2-overhead { + type uint32; + description + "L2 Overhead"; + } + leaf internal-label { + type uint32; + description + "Internal Label"; + } + } + + grouping PFI-IP-ADDR-UNION { + description + "PFI IP ADDR UNION"; + leaf afi { + type Tunl-pfi-af-id; + description + "AFI"; + } + leaf ipv4 { + when "../afi = 'tunl-pfi-af-id-ipv4'" { + description + "../AFI = 'TUNL_PFI_AF_ID_IPV4'"; + } + type Tunl-pfi-in-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../afi = 'tunl-pfi-af-id-ipv6'" { + description + "../AFI = 'TUNL_PFI_AF_ID_IPV6'"; + } + type Tunl-pfi-in6-addr; + description + "IPv6 address type"; + } + } + + grouping IM-CMD-TUNL-GRE-INFO { + description + "Tunnel info "; + container source-ip-address { + description + "Tunnel source IP address"; + uses PFI-IP-ADDR-UNION; + } + container destination-ip-address { + description + "Tunnel destination IP address"; + uses PFI-IP-ADDR-UNION; + } + leaf source-name { + type string; + description + "Tunnel source name"; + } + leaf destination-ip-address-length { + type uint8; + description + "Tunnel destination IP address length"; + } + leaf tunnel-tos { + type uint32; + description + "GRE tunnel TOS"; + } + leaf tunnel-ttl { + type uint32; + description + "GRE tunnel TTL"; + } + leaf key { + type uint32; + description + "Key value for GRE Packet"; + } + leaf keepalive-period { + type uint16; + units "second"; + description + "Keepalive period in seconds"; + } + leaf keepalive-maximum-retry { + type uint8; + description + "Keepalive retry"; + } + leaf tunnel-mode { + type Tunnel-gre-mode; + description + "Tunnel GRE Mode"; + } + leaf tunnel-mode-direction { + type Tunl-ip-mode-dir; + description + "Tunnel Mode Direction"; + } + leaf keepalive-state { + type Tunnel-ka-df-state; + description + "Keepalive State"; + } + leaf df-bit-state { + type Tunnel-ka-df-state; + description + "DF Bit State"; + } + leaf key-bit-state { + type Tunnel-key-state; + description + "Key Config State"; + } + } + + grouping IM-SONET-POS-INFO-INTERFACE { + description + "SONET POS interface information"; + leaf aps-state { + type Sonet-aps-et; + description + "APS state"; + } + } + + grouping SERIAL-INTERFACE { + description + "Serial interface information"; + leaf timeslots { + type string; + description + "Timeslots separated by : or - from 1 to 31. : + indicates individual timeslot and - represents a + range. E.g. 1-3:5 represents timeslots 1, 2, 3, + and 5."; + } + } + + grouping BM-MAC-ADDR-ST { + description + "Data on MAC address allocation"; + leaf address { + type yang:mac-address; + description + "MAC address"; + } + } + + grouping BM-MBR-STATE-REASON-DATA-TYPE { + description + "Additional member state reason data"; + leaf reason-type { + type Bm-state-reason-target; + description + "The item the reason applies to"; + } + leaf severity { + type Bm-severity; + description + "The severity of the reason"; + } + } + + grouping BM-MUX-DATA { + description + "bm mux information"; + container member-mux-state-reason-data { + description + "Data regarding the reason for last Mux state + change"; + uses BM-MBR-STATE-REASON-DATA-TYPE; + } + leaf mux-state { + type Bm-muxstate; + description + "Current state of this bundle member"; + } + leaf error { + type uint32; + description + "Internal value indicating if an error occurred + trying to put a link into the desired state"; + } + leaf member-mux-state-reason { + type Bm-mbr-state-reason; + description + "Reason for last Mux state change"; + } + leaf member-state { + type Bmd-member-state; + description + "Current internal state of this bundle member"; + } + leaf mux-state-reason { + type Bm-muxreason; + description + "Reason for last Mux state change (Deprecated)"; + } + } + + grouping BM-LACP-LINK-DATA { + description + "Link properties for a port using LACP "; + leaf interface-handle { + type xr:Interface-name; + description + "Member's interface handle"; + } + leaf actor-system-priority { + type uint16; + description + "System priority of actor system"; + } + leaf actor-system-mac-address { + type yang:mac-address; + description + "MAC Address of the actor system"; + } + leaf actor-operational-key { + type uint16; + description + "Operational key for this port"; + } + leaf partner-system-priority { + type uint16; + description + "System priority of partner system"; + } + leaf partner-system-mac-address { + type yang:mac-address; + description + "MAC Address used to identify the partner system"; + } + leaf partner-operational-key { + type uint16; + description + "Operational key for partner port"; + } + leaf selected-aggregator-id { + type uint32; + description + "MIB ifindex of selected bundle"; + } + leaf attached-aggregator-id { + type uint32; + description + "MIB ifindex of attached bundle"; + } + leaf actor-port-id { + type uint16; + description + "Port number of this port"; + } + leaf actor-port-priority { + type uint16; + description + "Priority of this port"; + } + leaf partner-port-id { + type uint16; + description + "Port number of the partner's port"; + } + leaf partner-port-priority { + type uint16; + description + "Priority of the partner's port"; + } + leaf actor-port-state { + type uint8; + description + "LACP state of this port"; + } + leaf partner-port-state { + type uint8; + description + "LACP state of the partner's port"; + } + } + + grouping BM-LACP-COUNTERS { + description + "Statistics for a port using using LACP"; + leaf lacpd-us-received { + type uint32; + description + "LACPDUs received"; + } + leaf lacpd-us-transmitted { + type uint32; + description + "LACPDUs transmitted"; + } + leaf marker-packets-received { + type uint32; + description + "LACP Marker packets received"; + } + leaf marker-responses-transmitted { + type uint32; + description + "LACP Marker response packets transmitted"; + } + leaf illegal-packets-received { + type uint32; + description + "Illegal and unknown packets received"; + } + leaf excess-lacpd-us-received { + type uint32; + description + "LACPDUs received that exceed the rate limit"; + } + leaf excess-marker-packets-received { + type uint32; + description + "Marker packets received that exceed the rate + limit"; + } + leaf defaulted { + type uint32; + description + "State flag set to Defaulted"; + } + leaf expired { + type uint32; + description + "State flag set to Expired"; + } + leaf last-cleared-sec { + type uint32; + description + "Last time counters cleared (s) (deprecated)"; + } + leaf last-cleared-nsec { + type uint32; + description + "Last time counters cleared (nsec) (deprecated)"; + } + leaf last-change { + type uint64; + units "nanosecond"; + description + "Timestamp of last LACP timeout event in nsecs"; + } + leaf lacp-timeout-transitions { + type uint64; + description + "Total number of LACP timeout transitions"; + } + } + + grouping BM-MEMBER-DATA { + description + "Bundle member data for any member"; + container counters { + description + "Counters data about member link"; + uses BM-LACP-COUNTERS; + } + container link-data { + description + "Lacp data about member link"; + uses BM-LACP-LINK-DATA; + } + container member-mux-data { + description + "Mux state machine data"; + uses BM-MUX-DATA; + } + container mac-address { + description + "MAC address of this member (deprecated)"; + uses BM-MAC-ADDR-ST; + } + leaf interface-name { + type xr:Interface-name; + description + "Member's interface name"; + } + leaf port-priority { + type uint16; + description + "The priority of this member"; + } + leaf port-number { + type uint16; + description + "Member's link number"; + } + leaf underlying-link-id { + type uint16; + description + "Member's underlying link ID"; + } + leaf link-order-number { + type uint16; + description + "Member's link order number"; + } + leaf iccp-node { + type uint32; + description + "Location of member"; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth of this member (kbps)"; + } + leaf lacp-enabled { + type string; + description + "Boolean indicating LACP enabled or not"; + } + leaf member-type { + type Bmd-member-type-enum; + description + "Member's type (local/foreign)"; + } + leaf member-name { + type string; + description + "Member's (short form) name"; + } + leaf replication-error { + type uint32; + description + "Error from final replication attempt"; + } + leaf bandwidth64-bit { + type uint64; + units "kbit/s"; + description + "Bandwidth of this member 64-Bit (kbps)"; + } + } + + grouping IM-CMD-BUNDLE-INFO { + description + "IM CMD BUNDLE INFO"; + list member { + description + "List of bundle members and their properties"; + uses BM-MEMBER-DATA; + } + } + + grouping IM-CMD-TUNNEL-INFO { + description + "IM CMD TUNNEL INFO"; + leaf source-name { + type string; + description + "Tunnel source name"; + } + leaf source-ipv4-address { + type inet:ipv4-address; + description + "Tunnel source IP address"; + } + leaf destination-ipv4-address { + type inet:ipv4-address; + description + "Tunnel destination IP address"; + } + leaf tunnel-type { + type string; + description + "Tunnel protocol/transport"; + } + leaf key { + type uint32; + description + "GRE tunnel key"; + } + leaf ttl { + type uint32; + description + "GRE tunnel TTL"; + } + } + + grouping IFSTATS-SRP-PER-SIDE-ERRORS { + description + "IFSTATS SRP PER SIDE ERRORS"; + leaf error-packets-received { + type uint32; + description + "Error packets received"; + } + leaf crc-errors { + type uint32; + description + "Input CRC errors"; + } + leaf input-insufficient-resource-events { + type uint32; + description + "Input insufficient resources events"; + } + leaf mac-aborts-received { + type uint32; + description + "Aborts received at MAC/RAC"; + } + leaf mac-runt-packets-received { + type uint32; + description + "Too small packets received at MAC/RAC"; + } + leaf mac-giant-packets-received { + type uint32; + description + "Too large packets received at MAC/RAC"; + } + leaf framer-runt-packets-received { + type uint32; + description + "Too small packets received at framer"; + } + leaf framer-giant-packets-received { + type uint32; + description + "Too large packets received at framer"; + } + leaf framer-aborts-received { + type uint32; + description + "Aborts received at framer"; + } + } + + grouping IFSTATS-SRP-PER-SIDE-DATA-RATE { + description + "IFSTATS SRP PER SIDE DATA RATE"; + leaf bit-rate-sent { + type uint32; + description + "Sent bit rate"; + } + leaf packet-rate-sent { + type uint32; + description + "Sent packet rate"; + } + leaf bit-rate-received { + type uint32; + description + "Received bit rate"; + } + leaf packet-rate-received { + type uint32; + description + "Received packet rate"; + } + } + + grouping IFSTATSBAG-SRP { + description + "SRP interface statistics"; + container side-a-data-rate { + description + "Data rates for side A interface"; + uses IFSTATS-SRP-PER-SIDE-DATA-RATE; + } + container side-b-data-rate { + description + "Data rates for side B interface"; + uses IFSTATS-SRP-PER-SIDE-DATA-RATE; + } + container side-a-errors { + description + "Errors for side A interface"; + uses IFSTATS-SRP-PER-SIDE-ERRORS; + } + container side-b-errors { + description + "Errors for side B interface"; + uses IFSTATS-SRP-PER-SIDE-ERRORS; + } + leaf data-rate-interval { + type uint32; + units "second"; + description + "Data rate interval (5 mins or 30 seconds)"; + } + } + + grouping SRP-RATE-LIMIT-DETAIL { + description + "Detailed SRP rate limit information"; + leaf min-priority-value { + type uint16; + description + "Minimum SRP priority for high-priority transmit + queue"; + } + } + + grouping SRP-RATE-LIMIT-INFO { + description + "SRP rate limit information"; + leaf is-admin-down { + type int32; + description + "Is the interfaceadministratively down"; + } + list rate-limit-detailed-info { + description + "SRP rate limit information"; + uses SRP-RATE-LIMIT-DETAIL; + } + } + + grouping SRR-NODE-DATA { + description + "SRR NODE DATA"; + leaf node-name { + type string; + description + "Node name"; + } + leaf srr-entry-exits { + type int32; + description + "Does the SRR information exist for this node"; + } + leaf mac-address { + type string; + description + "node mac address"; + } + leaf outer-failure { + type Srp-mgmt-srr-failure; + description + "Outer failure"; + } + leaf inner-failure { + type Srp-mgmt-srr-failure; + description + "Inner failure"; + } + leaf is-last-announce-received { + type int32; + description + "Announce last received ?"; + } + leaf last-announce-received-time { + type uint32; + description + "Announce last received"; + } + } + + grouping SRP-SRR-DETAIL { + description + "SRP SRR DETAIL"; + leaf version-number { + type uint32; + description + "Version number"; + } + leaf is-wrong-version-received { + type int32; + description + "Wrong version recieved"; + } + leaf last-wrong-version-receive-time { + type uint32; + description + "Time that last wrong version message recieved"; + } + leaf mac-address { + type string; + description + "SRR node mac address"; + } + leaf node-state { + type Srp-mgmt-srr-node-state; + description + "SRR node state"; + } + leaf is-outer-ring-in-use { + type int32; + description + "Is the outer ring in use"; + } + leaf is-inner-ring-in-use { + type int32; + description + " Is the inner ring in use"; + } + leaf is-announce { + type int32; + description + "Is announcing enabled"; + } + leaf outer-fail-type { + type Srp-mgmt-srr-failure; + description + "Outer fail type"; + } + leaf inner-fail-type { + type Srp-mgmt-srr-failure; + description + "Inner fail type"; + } + leaf packet-send-timer { + type uint32; + units "second"; + description + "SRR packet send timer interval in seconds"; + } + leaf next-srr-packet-send-time { + type uint32; + units "second"; + description + "Time remaining in seconds to next SRR packet + send"; + } + leaf single-ring-bw { + type uint32; + units "Mbit/s"; + description + "Single ring bandwidth Mbps"; + } + leaf wtr-time { + type uint32; + units "second"; + description + "SRR Wait To Restore interval delay in seconds"; + } + leaf wtr-timer-remaining-outer-ring { + type uint32; + units "second"; + description + "Time remaining in seconds until next outer ring + wrap removal"; + } + leaf wtr-timer-remaining-inner-ring { + type uint32; + units "second"; + description + "Time remaining in seconds until next inner ring + wrap removal"; + } + list nodes-on-ring { + description + "List of nodes on the ring info"; + uses SRR-NODE-DATA; + } + list nodes-not-on-ring { + description + "nodes not in topology map"; + uses SRR-NODE-DATA; + } + } + + grouping SRP-SRR-INFO { + description + "SRP SRR INFO"; + leaf is-admin-down { + type int32; + description + "Is the interfaceadministratively down"; + } + leaf is-srr-enabled { + type int32; + description + "SRR enabled"; + } + list srr-detailed-info { + description + "SRP information"; + uses SRP-SRR-DETAIL; + } + } + + grouping SRP-TOPOLOGY-NODE-DATA { + description + "SRP TOPOLOGY NODE DATA"; + leaf hop-count { + type uint16; + description + "Outer-ring hops to reach this node"; + } + leaf mac-address { + type string; + description + "MAC address"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf is-wrapped { + type int32; + description + "Wrap state"; + } + leaf is-srr-supported { + type int32; + description + "SRR protocol supported"; + } + leaf node-name { + type string; + description + "Node name"; + } + } + + grouping SRP-TOPOLOGY-MAP { + description + "SRP TOPOLOGY MAP"; + leaf topology-timer { + type uint32; + description + "How often a topology pkt is sent"; + } + leaf next-topology-packet-delay { + type uint32; + description + "Time remaining until next topo pkt sent"; + } + leaf time-since-last-topology-packet-received { + type uint32; + description + "Time since last topo pkt was received"; + } + leaf time-since-last-topology-change { + type uint32; + description + "Time since last topology change"; + } + leaf number-of-nodes-on-ring { + type uint16; + description + "Number of nodes on ring"; + } + list ring-node { + description + "List of nodes on the ring info"; + uses SRP-TOPOLOGY-NODE-DATA; + } + } + + grouping SRP-TOPOLOGY-INFO { + description + "SRP TOPOLOGY INFO"; + leaf is-admin-down { + type int32; + description + "Is the interfaceadministratively down"; + } + list local-information { + description + "Detailed SRP topology information"; + uses SRP-TOPOLOGY-MAP; + } + } + + grouping SRP-FAILURE-INFO { + description + "SRP failure info"; + leaf type { + type Srp-mgmt-failure-et; + description + "Failure type"; + } + leaf reported-state { + type Srp-mgmt-failure-state-et; + description + "Reported state"; + } + leaf debounced-state { + type Srp-mgmt-failure-state-et; + description + "Debounced state"; + } + leaf current-state { + type Srp-mgmt-failure-state-et; + description + "Current state"; + } + leaf stable-time { + type uint64; + description + "Stable time"; + } + leaf debounced-delay { + type uint32; + description + "Debounce delay"; + } + } + + grouping SRP-IPS-SIDE-DETAIL { + description + "SRP IPS SIDE DETAIL"; + leaf mac-address { + type string; + description + "MAC address"; + } + leaf wrap-state { + type Srp-mgmt-ips-wrap-state; + description + "Wrap state"; + } + leaf packet-sent-timer { + type uint32; + units "second"; + description + "SRP IPS packet send interval in seconds"; + } + leaf send-timer-time-remaining { + type uint32; + units "second"; + description + "Time in seconds remaining until next send of an + IPS request"; + } + leaf wtr-timer-remaining { + type uint32; + units "second"; + description + "Time in seconds until wrap removal"; + } + leaf self-detected-request { + type Srp-mgmt-ips-req; + description + "Self Detected Requests"; + } + leaf remote-request { + type Srp-mgmt-ips-req; + description + "Remote Requests"; + } + leaf rx-neighbor-mac-address { + type string; + description + "Neighbour mac address for received message"; + } + leaf rx-message-type { + type Srp-mgmt-ips-req; + description + "Type of message received"; + } + leaf rx-path-type { + type Srp-mgmt-ips-path-ind; + description + "Short/long path for received message"; + } + leaf rx-ttl { + type uint32; + description + "Time to live for received message"; + } + leaf rx-packet-test { + type int32; + description + "Test for existence of an RX packet"; + } + leaf tx-neighbor-mac-address { + type string; + description + "Mac address of node receiving TXed messages"; + } + leaf tx-message-type { + type Srp-mgmt-ips-req; + description + "Type of message transmitted"; + } + leaf tx-path-type { + type Srp-mgmt-ips-path-ind; + description + "Short/long path of transmitted message"; + } + leaf tx-ttl { + type uint32; + description + "Time to live for transmitted message"; + } + leaf tx-packet-test { + type int32; + description + "Test for existence of a TX packet"; + } + leaf delay-keep-alive-trigger { + type uint32; + units "millisecond"; + description + "Number of milliseconds to wait after an L1 + failure is detected before triggering an L2 wrap"; + } + list asserted-failure { + description + "Failures presently asserted"; + uses SRP-FAILURE-INFO; + } + } + + grouping SRP-IPS-DETAIL { + description + "SRP IPS DETAIL"; + container side-a { + description + "Side A IPS details"; + uses SRP-IPS-SIDE-DETAIL; + } + container side-b { + description + "Side B IPS details"; + uses SRP-IPS-SIDE-DETAIL; + } + leaf mac-address { + type string; + description + "MAC address for node"; + } + leaf is-inter-card-bus-enabled { + type int32; + description + "Inter card bus enabled"; + } + leaf wtr-timer-period { + type uint32; + units "second"; + description + "IPS Wait To Restore period in seconds"; + } + } + + grouping SRP-IPS-INFO { + description + "SRP IPS INFO"; + leaf is-admin-down { + type int32; + description + "Is the interfaceadministratively down"; + } + list local-information { + description + "IPS information"; + uses SRP-IPS-DETAIL; + } + } + + grouping SRP-ALL-INFO { + description + "Complete SRP information"; + container ips-info { + description + "SRP IPS information"; + uses SRP-IPS-INFO; + } + container topology-info { + description + "SRP topology information"; + uses SRP-TOPOLOGY-INFO; + } + container srr-info { + description + "SRP SRR information"; + uses SRP-SRR-INFO; + } + container rate-limit-info { + description + "SRP rate limit information"; + uses SRP-RATE-LIMIT-INFO; + } + } + + grouping IM-CMD-SRP-INFO { + description + "IM CMD SRP INFO"; + container srp-information { + description + "SRP-specific data"; + uses SRP-ALL-INFO; + } + container srp-statistics { + description + "SRP-specific packet and byte counters"; + uses IFSTATSBAG-SRP; + } + } + + grouping IM-CMD-INTF-TYPE-INFO { + description + "Interface-specific information"; + container srp-information { + when "../interface-type-info = 'srp'" { + description + "../InterfaceTypeInfo = 'SRP'"; + } + description + "SRP interface information"; + uses IM-CMD-SRP-INFO; + } + container tunnel-information { + when "../interface-type-info = 'tunnel'" { + description + "../InterfaceTypeInfo = 'Tunnel'"; + } + description + "Tunnel interface information"; + uses IM-CMD-TUNNEL-INFO; + } + container bundle-information { + when "../interface-type-info = 'bundle'" { + description + "../InterfaceTypeInfo = 'Bundle'"; + } + description + "Bundle interface information"; + uses IM-CMD-BUNDLE-INFO; + } + container serial-information { + when "../interface-type-info = 'serial'" { + description + "../InterfaceTypeInfo = 'Serial'"; + } + description + "Serial interface information"; + uses SERIAL-INTERFACE; + } + container sonet-pos-information { + when "../interface-type-info = 'sonet-pos'" { + description + "../InterfaceTypeInfo = 'SonetPOS'"; + } + description + "SONET POS interface information"; + uses IM-SONET-POS-INFO-INTERFACE; + } + container tunnel-gre-information { + when "../interface-type-info = 'tunnel-gre'" { + description + "../InterfaceTypeInfo = 'TunnelGRE'"; + } + description + "Tunnel GRE interface information"; + uses IM-CMD-TUNL-GRE-INFO; + } + container pseudowire-head-end-information { + when "../interface-type-info = 'pseudowire-head-end'" { + description + "../InterfaceTypeInfo = 'PseudowireHeadEnd'"; + } + description + "PseudowireHeadEnd interface information"; + uses PWHE-ETHER-INTERFACE-INFO; + } + container cem-information { + when "../interface-type-info = 'cem'" { + description + "../InterfaceTypeInfo = 'CEM'"; + } + description + "Cem interface information"; + uses CEM-INTERFACE; + } + container gcc-information { + when "../interface-type-info = 'gcc'" { + description + "../InterfaceTypeInfo = 'GCC'"; + } + description + "GCC interface information"; + uses IM-CMD-GCC-PER-PORT-INFO; + } + leaf interface-type-info { + type Im-cmd-intf-type-enum; + description + "InterfaceTypeInfo"; + } + } + + grouping PPP-SHOW-INT-NCP-INFO { + description + "NCP state information"; + leaf ncp-state { + type Ppp-fsm-state; + description + "NCP state value"; + } + leaf ncp-identifier { + type Ncp-ident; + description + "NCP state identifier"; + } + } + + grouping PPP-SHOW-INT-INFO { + description + "PPP state information"; + leaf lcp-state { + type Ppp-fsm-state; + description + "LCP State"; + } + leaf is-loopback-detected { + type int32; + description + "Loopback detected"; + } + leaf keepalive-period { + type uint32; + description + "Keepalive value"; + } + leaf is-mp-bundle-member { + type int32; + description + "MP Bundle Member"; + } + leaf is-multilink-open { + type int32; + description + "Is Multilink Open"; + } + list ncp-info-array { + description + "Array of per-NCP data"; + uses PPP-SHOW-INT-NCP-INFO; + } + } + + grouping VLAN-SWITCHED-INFO { + description + "VLAN-Switched information"; + container trunk-vlan-ranges { + description + "VLAN-Switched Trunk VLAN ranges"; + uses EFP-DESCRIPTION; + } + leaf mode { + type Vlan-switched-mode; + description + "VLAN-Switched mode"; + } + leaf access-vlan { + type Vlan-tag-value; + description + "VLAN-Switched Access VLAN"; + } + } + + grouping EFP-TAG-LOCAL-TRAFFIC-STACK { + description + "EFP TAG LOCAL TRAFFIC STACK"; + list local-traffic-tag { + description + "VLAN tags for locally-sourced traffic"; + uses EFP-VLAN-TAG; + } + } + + grouping EFP-VLAN-TAG { + description + "EFP VLAN TAG"; + leaf ethertype { + type Efp-tag-etype; + description + "Ethertype of tag"; + } + leaf vlan-id { + type Vlan-tag-value; + description + "VLAN Id"; + } + } + + grouping EFP-RANGE-TYPE { + description + "EFP RANGE TYPE"; + leaf vlan-id-low { + type Vlan-tag-value; + description + "VLAN ID Low"; + } + leaf vlan-id-high { + type Vlan-tag-value; + description + "VLAN ID High"; + } + } + + grouping EFP-TAG-MATCH { + description + "EFP TAG MATCH"; + leaf ethertype { + type Efp-tag-etype; + description + "Ethertype of tag to match"; + } + leaf priority { + type Efp-tag-priority; + description + "Priority to match"; + } + leaf number-of-ranges { + type uint16; + description + "Number of vlan ranges to match"; + } + list vlan-range { + description + "VLAN Ids to match"; + uses EFP-RANGE-TYPE; + } + } + + grouping EFP-DESCRIPTION { + description + "EFP DESCRIPTION"; + container local-traffic-stack { + description + "VLAN tags for locally-sourced traffic"; + uses EFP-TAG-LOCAL-TRAFFIC-STACK; + } + leaf payload-ethertype { + type Efp-payload-etype; + description + "Payload Ethertype to match"; + } + leaf tags-popped { + type uint16; + description + "Number of tags popped on ingress"; + } + leaf is-exact-match { + type int32; + description + "Whether the packet must match the encapsulation + exactly, with no further inner tags"; + } + leaf is-native-vlan { + type int32; + description + "Whether this represents the native VLAN on the + port"; + } + leaf is-native-preserving { + type int32; + description + "Whether the native VLAN is customer-tag + preserving"; + } + leaf source-mac-match { + type Mac-address; + description + "The source MAC address to match on ingress"; + } + leaf destination-mac-match { + type Mac-address; + description + "The destination MAC address to match on ingress"; + } + list tags-to-match { + description + "Tags to match on ingress packets"; + uses EFP-TAG-MATCH; + } + list pushe { + description + "VLAN tags pushed on egress"; + uses EFP-VLAN-TAG; + } + } + + grouping VLAN-DOUBLE-TAG-STACK { + description + "VLAN double tag stack"; + leaf outer-tag { + type Vlan-tag-value; + description + "Outer tag value"; + } + leaf second-tag { + type Vlan-tag-value; + description + "Second tag value"; + } + } + + grouping VLAN-TAG-STACK-TYPE { + description + "VLAN encapsulation and tag stack"; + container stack { + when "../vlan-encapsulation = 'qinq'" { + description + "../VLANEncapsulation = 'QinQ'"; + } + description + "Stack value"; + uses VLAN-DOUBLE-TAG-STACK; + } + container service-instance-details { + when "../vlan-encapsulation = 'service-instance'" { + description + "../VLANEncapsulation = 'ServiceInstance'"; + } + description + "Service Instance encapsulation"; + uses EFP-DESCRIPTION; + } + container dot1ad-dot1q-stack { + when "../vlan-encapsulation = 'dot1ad-dot1q'" { + description + "../VLANEncapsulation = 'Dot1adDot1Q'"; + } + description + "802.1ad 802.1Q stack value"; + uses VLAN-DOUBLE-TAG-STACK; + } + leaf vlan-encapsulation { + type Vlan-encaps; + description + "VLANEncapsulation"; + } + leaf tag { + when "../vlan-encapsulation = 'dot1q'" { + description + "../VLANEncapsulation = 'Dot1Q'"; + } + type Vlan-tag-value; + description + "Tag value"; + } + leaf outer-tag { + when "../vlan-encapsulation = 'qin-any'" { + description + "../VLANEncapsulation = 'QinAny'"; + } + type Vlan-tag-value; + description + "Outer tag value"; + } + leaf native-tag { + when "../vlan-encapsulation = 'dot1q-native'" { + description + "../VLANEncapsulation = 'Dot1QNative'"; + } + type Vlan-tag-value; + description + "Native tag value"; + } + leaf dot1ad-tag { + when "../vlan-encapsulation = 'dot1ad'" { + description + "../VLANEncapsulation = 'Dot1ad'"; + } + type Vlan-tag-value; + description + "802.1ad tag value"; + } + leaf dot1ad-native-tag { + when "../vlan-encapsulation = 'dot1ad-native'" { + description + "../VLANEncapsulation = 'Dot1adNative'"; + } + type Vlan-tag-value; + description + "802.1ad native tag value"; + } + leaf dot1ad-outer-tag { + when "../vlan-encapsulation = 'dot1ad-any'" { + description + "../VLANEncapsulation = 'Dot1adAny'"; + } + type Vlan-tag-value; + description + "802.1ad Outer tag value"; + } + } + + grouping VLAN-INTF-GENERIC { + description + "VLAN INTF GENERIC"; + container encapsulation-details { + description + "Encapsulation type and tag stack"; + uses VLAN-TAG-STACK-TYPE; + } + container vlan-switched { + description + "VLAN-Switched information"; + uses VLAN-SWITCHED-INFO; + } + } + + grouping IM-CMD-FR-INFO { + description + "IM CMD FR INFO"; + leaf fr-encapsulation-type { + type Im-cmd-fr-type-enum; + description + "Frame Relay encapsulation type"; + } + leaf lmi-type { + type Im-cmd-lmi-type-enum; + description + "The LMI type: Autosense, ANSI, CCITT or CISCO"; + } + leaf lmidlci { + type uint32; + description + "LMI DLCI"; + } + leaf is-nni { + type boolean; + description + "The NNI LMI interface type"; + } + leaf is-dte { + type boolean; + description + "The DTE/DCE LMI interface type"; + } + leaf is-lmi-up { + type boolean; + description + "Flag indicating whether the LMI DTE/DCE/NNI-DTE + state is UP"; + } + leaf is-lmi-nni-dce-up { + type boolean; + description + "Flag indicating whether the LMI NNI-DCE state + is UP"; + } + leaf is-lmi-enabled { + type boolean; + description + "The status of FR LMI for an interface"; + } + leaf enquiries-received { + type uint32; + description + "Number of enquiry messages received"; + } + leaf enquiries-sent { + type uint32; + description + "Number of enquiry messages sent"; + } + leaf status-received { + type uint32; + description + "Number of status messages received"; + } + leaf status-sent { + type uint32; + description + "Number of status messages sent"; + } + leaf update-status-received { + type uint32; + description + "Number of update status messages received"; + } + leaf update-status-sent { + type uint32; + description + "Number of update status messages sent"; + } + } + + grouping IM-CMD-ENCAPS-INFO { + description + "Encapsulation-specific information"; + container frame-relay-information { + when "../encapsulation-type = 'frame-relay'" { + description + "../EncapsulationType = 'FrameRelay'"; + } + description + "Frame Relay information"; + uses IM-CMD-FR-INFO; + } + container dot1q-information { + when "../encapsulation-type = 'vlan'" { + description + "../EncapsulationType = 'VLAN'"; + } + description + "VLAN 802.1q information"; + uses VLAN-INTF-GENERIC; + } + container ppp-information { + when "../encapsulation-type = 'ppp'" { + description + "../EncapsulationType = 'PPP'"; + } + description + "PPP information"; + uses PPP-SHOW-INT-INFO; + } + leaf encapsulation-type { + type Im-cmd-encaps-enum; + description + "EncapsulationType"; + } + } + + grouping IM-CMD-IP-INFO-ST { + description + "IP information"; + leaf ip-address { + type inet:ipv4-address; + description + "Interface IPv4 address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf subnet-mask-length { + type uint32; + description + "Interface subnet mask length"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping IM-CMD-ARP-INFO-ST { + description + "ARP information"; + leaf arp-timeout { + type uint32; + units "second"; + description + "ARP timeout in seconds. Only valid if + 'ARPIsLearningDisabled' is 'false'"; + } + leaf arp-type-name { + type string; + description + "ARP type name"; + } + leaf arp-is-learning-disabled { + type boolean; + description + "Whether the interface has dynamic learning + disabled"; + } + } + + grouping IM-CMD-CARRIER-DELAY-ST { + description + "Carrier Delay Information"; + leaf carrier-delay-up { + type uint32; + description + "Carrier delay on state up (ms)"; + } + leaf carrier-delay-down { + type uint32; + description + "Carrier delay on state down (ms)"; + } + } + + grouping IM-CMD-MAC-ADDR-ST { + description + "Mac Address"; + leaf address { + type yang:mac-address; + description + "MAC Address"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping IM-CMD-DAMP-ST { + description + "Dampening information"; + leaf penalty { + type uint32; + description + "Dampening penalty of the interface"; + } + leaf is-suppressed-enabled { + type boolean; + description + "Flag showing if state is suppressed"; + } + leaf seconds-remaining { + type uint32; + units "second"; + description + "Remaining period of suppression in secs"; + } + leaf half-life { + type uint32; + units "minute"; + description + "Configured decay half life in mins"; + } + leaf reuse-threshold { + type uint32; + description + "Configured reuse threshold"; + } + leaf suppress-threshold { + type uint32; + description + "Value of suppress threshold"; + } + leaf maximum-suppress-time { + type uint32; + units "minute"; + description + "Maximum suppress time in mins"; + } + leaf restart-penalty { + type uint32; + description + "Configured restart penalty"; + } + } + + grouping IM-CMD-INFO { + description + "Full interface information"; + container dampening-information { + description + "State dampening information of interface"; + uses IM-CMD-DAMP-ST; + } + container mac-address { + description + "Interface MAC address"; + uses IM-CMD-MAC-ADDR-ST; + } + container burned-in-address { + description + "Interface burned in address"; + uses IM-CMD-MAC-ADDR-ST; + } + container carrier-delay { + description + "Carrier Delay of the interface"; + uses IM-CMD-CARRIER-DELAY-ST; + } + container arp-information { + description + "Interface ARP type and timeout"; + uses IM-CMD-ARP-INFO-ST; + } + container ip-information { + description + "Interface IP address info"; + uses IM-CMD-IP-INFO-ST; + } + container encapsulation-information { + description + "Information specific to the encapsulation"; + uses IM-CMD-ENCAPS-INFO; + } + container interface-type-information { + description + "Information specific to the interface type"; + uses IM-CMD-INTF-TYPE-INFO; + } + container data-rates { + description + "Packet and byte rates"; + uses STATSDBAG-DATARATE; + } + container interface-statistics { + description + "Packet, byte and error counters"; + uses IM-CMD-IF-STATS; + } + container l2-interface-statistics { + description + "L2 Protocol Statistics"; + uses STATS-DATA; + } + leaf interface-handle { + type string; + description + "Interface name"; + } + leaf interface-type { + type string; + description + "Type of Interface"; + } + leaf hardware-type-string { + type string { + length "0..64"; + } + description + "Hardware type description string"; + } + leaf state { + type Im-state-enum; + description + "Interface state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf line-state { + type Im-state-enum; + description + "Line protocol state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf encapsulation { + type string; + description + "Interface encapsulation"; + } + leaf encapsulation-type-string { + type string { + length "0..32"; + } + description + "Interface encapsulation description string"; + } + leaf mtu { + type uint32; + units "byte"; + description + "MTU in bytes"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf is-l2-transport-enabled { + type boolean; + description + "L2 transport flag"; + } + leaf state-transition-count { + type uint32; + description + "The number of times the state has changed"; + } + leaf last-state-transition-time { + type uint64; + description + "The absolute time of last state change of the + interface"; + } + leaf is-dampening-enabled { + type boolean; + description + "Dampening enabled flag"; + } + leaf speed { + type uint32; + status deprecated; + description + "Interface speed (Kb/s). This leaf is deprecated + .Please migrate to use MaxBandwidth."; + } + leaf crc-length { + type uint32; + description + "Cyclic Redundancy Check length"; + } + leaf is-scramble-enabled { + type boolean; + description + "Interface scramble config"; + } + leaf duplexity { + type Im-attr-duplex; + description + "Interface duplexity"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf media-type { + type Im-attr-media; + description + "Interface media type"; + } + leaf link-type { + type Im-attr-link; + description + "Interface link type"; + } + leaf in-flow-control { + type Im-attr-flow-control; + description + "Input flow control configuration"; + } + leaf out-flow-control { + type Im-attr-flow-control; + description + "Output flow control configuration"; + } + leaf bandwidth { + type uint64; + description + "Interface bandwidth 64-bit (Kb/s)"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf max-bandwidth { + type uint64; + description + "Maximum Interface bandwidth 64-bit (Kb/s)"; + } + leaf keepalive { + type uint32; + description + "Interface keepalive time (s)"; + } + leaf is-l2-looped { + type boolean; + description + "Loopback detected by layer 2"; + } + leaf parent-interface-name { + type xr:Interface-name; + description + "If handle of Parent interface"; + } + leaf loopback-configuration { + type Im-cmd-loopback-enum; + description + "Loopback configuration of Interface"; + } + leaf description { + type string; + description + "Interface description string"; + } + leaf is-maintenance-enabled { + type boolean; + description + "Maintenance embargo flag"; + } + leaf is-data-inverted { + type boolean; + description + "Data invert flag"; + } + leaf transport-mode { + type Im-attr-transport-mode; + description + "Interface transport mode"; + } + leaf fast-shutdown { + type boolean; + description + "Fast Shutdown flag"; + } + leaf if-index { + type uint32; + description + "This is not supposed to be used. It is a dummy + attribute to support ifindex for OC model"; + } + leaf is-intf-logical { + type boolean; + description + "Flag to check if interface is logical or + Physical"; + } + leaf is-intf-type-management { + type boolean; + description + "If set to TRUE, it indicates that interface is a + dedicated management interface"; + } + leaf is-intf-type-cpu { + type boolean; + description + "If set to TRUE, it indicates that interface is + for traffic handled by system CPU"; + } + } + + grouping IM-SPARSE-INTF-INFO { + description + "Interface non-statistics info for non-subscriber + interfaces"; + leaf interface-name-xr { + type string; + description + "Name of the interface"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interface handle of the Interface"; + } + leaf is-subscriber { + type boolean; + description + "When set to true, this indicates that the + interface is a subscriber interface"; + } + leaf description { + type string; + description + "Interface description details"; + } + leaf oper-state { + type Im-state-enum; + description + "Interface Operational state"; + } + leaf admin-state { + type Im-state-enum; + description + "Interface Admin state"; + } + leaf mac-address { + type string; + description + "Interface MAC address"; + } + leaf burned-in-address { + type string; + description + "Interface burned in address"; + } + leaf ipv4-address { + type string; + description + "Interface IPv4 address info"; + } + leaf max-bandwidth { + type uint64; + description + "Maximum Interface bandwidth 64-bit (Kb/s)"; + } + leaf bandwidth { + type uint64; + description + "Interface bandwidth 64-bit (Kb/s)"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf mtu { + type uint32; + units "byte"; + description + "MTU in bytes"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf duplexity { + type Im-attr-duplex; + description + "Interface duplexity"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf link-type { + type string; + description + "Interface link type"; + } + leaf ipv4-prefix-len { + type uint32; + description + "IPv4 Subnet mask length"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub2.yang new file mode 100644 index 000000000..4afca8544 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper-sub2.yang @@ -0,0 +1,329 @@ +submodule Cisco-IOS-XR-pfi-im-cmd-oper-sub2 { + belongs-to Cisco-IOS-XR-pfi-im-cmd-oper { + prefix Cisco-IOS-XR-pfi-im-cmd-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pfi-im-cmd package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "added new mediatype for 400G Bright ZRP. + 2022-08-10 + added new mediatype for 25GBASE BXD,BXU. + 2022-05-19 + speed leaf is deprecated + 2022-03-07 + Added leaves is-intf-type-management and is-intf-type-cpu to indicate management interface and cpu interface + 2021-11-15 + Support added for sparse interface container. + 2021-11-08 + New leaf dejitter-buffer-length in microseconds is added and existing leaf dejitter-buffer is deprecated."; + semver:module-version "6.0.0"; + } + revision 2021-08-27 { + description + "added new mediatype for 25GBASE_ER."; + semver:module-version "5.0.0"; + } + revision 2021-05-23 { + description + "Removed container for non-dynamic interfaces. + 2020-12-02 + added new mediatype for 25GBASE_LR. + 2020-10-08 + Unit of last-data-time in milliseconds reverted to seconds for generic stats + 2020-10-01 + 64-bit Bandwidth support + 2020-09-03 + Removed event-telemetry annotation from leaf interface-name of grouping BM-MEMBER-DATA + 2020-04-14 + Unit of last-data-time changed from seconds to milliseconds for generic stats + 2020-04-14 + Support added for non-dynamic interfaces. + 2020-04-14 + Data type of last-data-time changed from uint32 to uint64 for generic and proto stats"; + semver:module-version "4.0.0"; + } + revision 2019-12-03 { + description + "Updated description."; + semver:module-version "3.0.0"; + } + revision 2019-08-14 { + description + "Added last state transition time. + 2019-07-23 + Changes in IosApi version. + 2019-05-30 + 64 bit bandwidth changes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-18 { + description + "Description updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + grouping IMDS-IFATTR-BASE-INFO { + description + "Basic interface information"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf parent-interface { + type xr:Interface-name; + description + "Parent Interface"; + } + leaf type { + type string; + description + "Interface type"; + } + leaf state { + type Im-state-enum; + description + "Operational state"; + } + leaf actual-state { + type Im-state-enum; + description + "Operational state with no translation of error + disable or shutdown"; + } + leaf line-state { + type Im-state-enum; + description + "Line protocol state"; + } + leaf actual-line-state { + type Im-state-enum; + description + "Line protocol state with no translation of error + disable or shutdown"; + } + leaf encapsulation { + type string; + description + "Interface encapsulation"; + } + leaf encapsulation-type-string { + type string { + length "0..32"; + } + description + "Interface encapsulation description string"; + } + leaf mtu { + type uint32; + units "byte"; + description + "MTU in bytes"; + } + leaf sub-interface-mtu-overhead { + type uint32; + description + "Subif MTU overhead"; + } + leaf l2-transport { + type boolean; + description + "L2 transport"; + } + leaf bandwidth { + type uint32; + description + "Interface bandwidth (Kb/s)"; + } + leaf bandwidth64-bit { + type uint64; + description + "Interface bandwidth 64-bit (Kb/s)"; + } + } + + grouping IM-IF-GROUP-COUNTS { + description + "Interface counts"; + leaf interface-count { + type uint32; + description + "Number of interfaces"; + } + leaf up-interface-count { + type uint32; + description + "Number of interfaces in UP state"; + } + leaf down-interface-count { + type uint32; + description + "Number of interfaces in DOWN state"; + } + leaf admin-down-interface-count { + type uint32; + description + "Number of interfaces in an ADMINDOWN state"; + } + } + + grouping IM-IF-TYPE-SUMMARY { + description + "Interface type summary information"; + container interface-counts { + description + "Counts for interfaces of this type"; + uses IM-IF-GROUP-COUNTS; + } + leaf interface-type-name { + type string; + description + "Name of the interface type"; + } + leaf interface-type-description { + type string; + description + "Description of the interface type"; + } + } + + grouping IM-IF-SUMMARY-INFO { + description + "Interface summary bag"; + container interface-counts { + description + "Counts for all interfaces"; + uses IM-IF-GROUP-COUNTS; + } + list interface-type { + description + "List of per interface type summary information"; + uses IM-IF-TYPE-SUMMARY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper.yang new file mode 100644 index 000000000..778f1681f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pfi-im-cmd-oper.yang @@ -0,0 +1,240 @@ +module Cisco-IOS-XR-pfi-im-cmd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pfi-im-cmd-oper"; + prefix pfi-im-cmd-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pfi-im-cmd-oper-sub2 { + revision-date 2022-12-02; + } + include Cisco-IOS-XR-pfi-im-cmd-oper-sub1 { + revision-date 2022-12-02; + } + + 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 pfi-im-cmd package operational data. + + This module contains definitions + for the following management objects: + interfaces: Interface operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "added new mediatype for 400G Bright ZRP. + 2022-08-10 + added new mediatype for 25GBASE BXD,BXU. + 2022-05-19 + speed leaf is deprecated + 2022-03-07 + Added leaves is-intf-type-management and is-intf-type-cpu to indicate management interface and cpu interface + 2021-11-15 + Support added for sparse interface container. + 2021-11-08 + New leaf dejitter-buffer-length in microseconds is added and existing leaf dejitter-buffer is deprecated."; + semver:module-version "6.0.0"; + } + revision 2021-08-27 { + description + "added new mediatype for 25GBASE_ER."; + semver:module-version "5.0.0"; + } + revision 2021-05-23 { + description + "Removed container for non-dynamic interfaces. + 2020-12-02 + added new mediatype for 25GBASE_LR. + 2020-10-08 + Unit of last-data-time in milliseconds reverted to seconds for generic stats + 2020-10-01 + 64-bit Bandwidth support + 2020-09-03 + Removed event-telemetry annotation from leaf interface-name of grouping BM-MEMBER-DATA + 2020-04-14 + Unit of last-data-time changed from seconds to milliseconds for generic stats + 2020-04-14 + Support added for non-dynamic interfaces. + 2020-04-14 + Data type of last-data-time changed from uint32 to uint64 for generic and proto stats"; + semver:module-version "4.0.0"; + } + revision 2019-12-03 { + description + "Updated description."; + semver:module-version "3.0.0"; + } + revision 2019-08-14 { + description + "Added last state transition time. + 2019-07-23 + Changes in IosApi version. + 2019-05-30 + 64 bit bandwidth changes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-06-26 { + description + "Change identifiers to be more readable."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-18 { + description + "Description updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Interface-type-set { + type enumeration { + enum "hardware-interfaces" { + value 0; + description + "Restrict the output to hardware interfaces only"; + } + enum "non-dynamic-interfaces" { + value 1; + description + "Restrict the output to non-dynamic interfaces + only"; + } + } + description + "Interface type set"; + } + + grouping INTERFACE-SUMMARY { + description + "Common node of node-type-set, interfaces"; + container interface-summary { + description + "Interface summary information"; + uses IM-IF-SUMMARY-INFO; + } + } + + container interfaces { + config false; + description + "Interface operational data"; + container interface-sparses { + description + "Sparse operational data for interfaces"; + list interface-sparse { + key "interface-name"; + description + "Sparse operational data for a particular + interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IM-SPARSE-INTF-INFO; + } + } + container interface-xr { + description + "Detailed operational data for interfaces and + configured features"; + list interface { + key "interface-name"; + description + "Detailed operational data for a particular + interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IM-CMD-INFO; + } + } + container node-type-sets { + description + "Node and/or interface type specific view of + interface summary data"; + list node-type-set { + description + "Summary data for all interfaces on a particular + node"; + leaf node-name { + type xr:Node-id; + description + "The location to filter on"; + } + leaf type-set-name { + type Interface-type-set; + description + "The interface type to filter on"; + } + uses INTERFACE-SUMMARY; + } + } + container interface-briefs { + description + "Brief operational data for interfaces"; + list interface-brief { + key "interface-name"; + description + "Brief operational attributes for a particular + interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IMDS-IFATTR-BASE-INFO; + } + } + container inventory-summary { + description + "Inventory summary information"; + uses IM-IF-SUMMARY-INFO; + } + container interfaces { + description + "Descriptions for interfaces"; + list interface { + key "interface-name"; + description + "Description for a particular interface"; + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + uses IM-DESC-INFO; + } + } + uses INTERFACE-SUMMARY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper-sub1.yang new file mode 100644 index 000000000..dcd1c207c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper-sub1.yang @@ -0,0 +1,97 @@ +submodule Cisco-IOS-XR-pfm-oper-sub1 { + belongs-to Cisco-IOS-XR-pfm-oper { + prefix Cisco-IOS-XR-pfm-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pfm package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-10 { + description + "IOS-XR 7.3.2 revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-03-28 { + description + "IOS-XR 6.3.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PFM-SHOW-DEV-HW-FAULTS-XML { + description + "Hardware fault info for XML"; + leaf db-ver { + type uint32; + description + "DB Version"; + } + leaf proc-id { + type uint32; + description + "Process ID"; + } + leaf slot-num { + type uint32; + description + "Slot Number"; + } + leaf dev-key { + type string; + description + "Device Key"; + } + leaf dev-desc { + type string; + description + "Device Description"; + } + leaf cond-desc { + type string; + description + "Condition Description"; + } + leaf cond-name { + type string; + description + "Condition Name"; + } + leaf cond-sev { + type string; + description + "Condition Severity"; + } + leaf cond-raised-timestamp { + type string; + description + "Condition Raised Time Stamp"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper.yang new file mode 100644 index 000000000..e30d67d50 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pfm-oper.yang @@ -0,0 +1,239 @@ +module Cisco-IOS-XR-pfm-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pfm-oper"; + prefix pfm-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pfm-oper-sub1 { + revision-date 2021-07-10; + } + + 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 pfm package operational data. + + This module contains definitions + for the following management objects: + platform-fault-manager: PFM data space + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-10 { + description + "IOS-XR 7.3.2 revision."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-03-28 { + description + "IOS-XR 6.3.1 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping RACK-TABLE { + description + "Common node of platform-fault-manager, + fault-type1, fault-type2, fault-type3"; + container racks { + description + "Table of racks"; + list rack { + key "rack"; + description + "Number"; + container slots { + description + "Table of slots"; + list slot { + key "slot"; + description + "Name"; + container fault-summary { + description + "Table of Hardware Summary"; + leaf severity-critical-count { + type int32; + description + "Fault Severity Critical count"; + } + leaf severity-emergency-or-alert-count { + type int32; + description + "Fault Severity Emergency count"; + } + leaf total { + type int32; + description + "Faulty Hardware total count"; + } + leaf severity-error-count { + type int32; + description + "Fault Severity Error count"; + } + } + container hardware-fault-devices { + description + "Table of Hardware Failure"; + list hardware-fault-device { + key "hw-fault-device"; + description + "Table of Hardware Failure Device"; + leaf hw-fault-device { + type xr:Cisco-ios-xr-string; + description + "hw fault device list"; + } + list hardware-fault-type { + key "hw-fault-type"; + description + "Table of Hardware Failure Type"; + container hardware-fault-info { + description + "Hardware fault info"; + uses PFM-SHOW-DEV-HW-FAULTS-XML; + } + leaf condition-description { + type string; + description + "Faulty Hardware Condition Description"; + } + leaf condition-name { + type string; + description + "Faulty Hardware Condition Name"; + } + leaf device-key { + type string; + description + "Faulty Hardware Device Key"; + } + leaf device-version { + type int32; + description + "Faulty Hardware Device Version"; + } + leaf condition-raised-timestamp { + type string; + description + "Fault Raised Timestamp"; + } + leaf process-id { + type int32; + description + "Faulty Hardware Process ID"; + } + leaf device-description { + type string; + description + "Faulty Hardware Device Description"; + } + leaf condition-severity { + type string; + description + "Faulty Hardware Condition Severity"; + } + leaf hw-fault-type { + type xr:Cisco-ios-xr-string; + description + "hw fault type list"; + } + } + } + } + leaf slot { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + } + } + leaf rack { + type uint32; + description + "Rack number"; + } + } + } + } + + container platform-fault-manager { + config false; + description + "PFM data space"; + container exclude { + description + "Exclude specic hw fault "; + container fault-type1s { + description + "Table of Hardware Failure Device"; + list fault-type1 { + key "hw-fault-type1"; + description + "Table of Hardware Failure Device"; + container fault-type2s { + description + "Table of Hardware Failure Device"; + list fault-type2 { + key "hw-fault-type2"; + description + "Table of Hardware Failure Device"; + container fault-type3s { + description + "Table of Hardware Failure Device"; + list fault-type3 { + key "hw-fault-type3"; + description + "Table of Hardware Failure Device"; + leaf hw-fault-type3 { + type xr:Cisco-ios-xr-string; + description + "hw fault 3"; + } + uses RACK-TABLE; + } + } + leaf hw-fault-type2 { + type xr:Cisco-ios-xr-string; + description + "hw fault 2"; + } + uses RACK-TABLE; + } + } + leaf hw-fault-type1 { + type xr:Cisco-ios-xr-string; + description + "hw fault 1"; + } + uses RACK-TABLE; + } + } + } + uses RACK-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub1.yang new file mode 100644 index 000000000..cfaded422 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub1.yang @@ -0,0 +1,4174 @@ +submodule Cisco-IOS-XR-pim-oper-sub1 { + belongs-to Cisco-IOS-XR-pim-oper { + prefix Cisco-IOS-XR-pim-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pim-oper-sub2 { + revision-date 2022-12-22; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pim package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-22 { + description + "Path change for Global interface table + 2022-10-31 + New addition made for Event history show command for periodic pim packets + 2022-08-26 + Addition made for Event history for periodic pim packets + 2022-04-20 + Getting rid of default context path + 2022-02-09 + Addition of new field to pim traffic bag Cisco-IOS-XR-pim-oper"; + semver:module-version "2.0.0"; + } + revision 2021-02-17 { + description + "Addition made for Sticky DR neighbor tracking"; + semver:module-version "1.1.0"; + } + revision 2019-12-24 { + description + "Fixed CSCvr52977."; + semver:module-version "1.0.0"; + } + revision 2019-08-27 { + description + "Providing PIM information."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pim-show-local-interest { + type enumeration { + enum "null" { + value 1; + description + "null"; + } + enum "li" { + value 2; + description + "Local Interest"; + } + enum "ld" { + value 3; + description + "Local Disinterest"; + } + } + description + "Pim show local interest"; + } + + typedef Pim-internal-interest-info { + type enumeration { + enum "null" { + value 21; + description + "null"; + } + enum "ii" { + value 22; + description + "Internal Interest"; + } + enum "id" { + value 23; + description + "Internal Disinterest"; + } + } + description + "Pim internal interest info"; + } + + typedef Pim-show-range-client { + type enumeration { + enum "no-client" { + value 0; + description + "no client"; + } + enum "embedded-config" { + value 1; + description + "embedded config"; + } + enum "embedded" { + value 2; + description + "embedded"; + } + enum "permanent" { + value 3; + description + "permanent"; + } + enum "auto-rp" { + value 4; + description + "auto rp"; + } + enum "bsr" { + value 5; + description + "bsr"; + } + enum "config" { + value 6; + description + "config"; + } + enum "static" { + value 7; + description + "static"; + } + } + description + "Pim show range client"; + } + + typedef Pim-show-protocol { + type enumeration { + enum "no-route" { + value 0; + description + "no route"; + } + enum "sm" { + value 1; + description + "sm"; + } + enum "dm" { + value 2; + description + "dm"; + } + enum "bidir" { + value 3; + description + "bidir"; + } + enum "ssm" { + value 4; + description + "ssm"; + } + enum "maximum" { + value 5; + description + "maximum"; + } + enum "any" { + value 6; + description + "any"; + } + } + description + "Pim show protocol"; + } + + grouping PIM-NBR-BAG { + description + "PIM neighbor information"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expires { + type uint64; + units "second"; + description + "Neighbor expiry in seconds"; + } + leaf expiry-timer { + type uint64; + units "second"; + description + "Expiry timer in seconds"; + } + leaf is-this-neighbor-us { + type boolean; + description + "Is this neighbor us ?"; + } + leaf is-this-neighbor-dr { + type boolean; + description + "Is this neighbor the DR"; + } + leaf is-dr-priority-capable { + type boolean; + description + "Is this neighbor DR priority capable ?"; + } + leaf dr-priority { + type uint32; + description + "DR priority"; + } + leaf is-bidirectional-capable { + type boolean; + description + "Is this neighbor bidir capable ?"; + } + leaf is-proxy-capable { + type boolean; + description + "Is this neighbor proxy capable?"; + } + leaf is-batch-asserts-capable { + type boolean; + description + "Is this neighbor capable of batching asserts?"; + } + leaf is-ecmp-redirect-capable { + type boolean; + description + "Is this neighbor capable of Ecmp Redirect?"; + } + leaf is-bfd-state { + type boolean; + description + "Is the neighbor bfd session created"; + } + leaf sticky-dr-neighbor { + type boolean; + description + "Is Sticky DR advertised on interface by neighbor"; + } + leaf propagation-delay { + type uint16; + description + "Propagation Delay"; + } + leaf override-interval { + type uint16; + description + "Override Interval"; + } + list neighbor-address-xr { + description + "List of Neighbor Addresses"; + uses PIM-ADDRTYPE; + } + } + + grouping PIM-MSTATIC-BAG { + description + "Multicast Static Routes entry"; + container prefix { + description + "Prefix"; + uses PIM-ADDRTYPE; + } + container nexthop { + description + "Next Hop"; + uses PIM-ADDRTYPE; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf distance { + type uint32; + description + "Distance"; + } + leaf prefix-length-xr { + type uint8; + description + "Prefix Length"; + } + leaf is-via-lsm { + type boolean; + description + "LSM flag"; + } + } + + grouping PIM-RPF-RDRCT-BNDL-BAG { + description + "PIM RPF Redirect bundle information"; + leaf rpf-redirect-bundle-name { + type string { + length "0..33"; + } + description + "RPF redirect bundle name"; + } + leaf rpf-redirect-interface-name { + type string { + length "0..33"; + } + description + "RPF redirect interface name"; + } + leaf available-bandwidth { + type int32; + units "kbit/s"; + description + "Bandwidth available in Kbps"; + } + leaf allocated-bandwidth { + type int32; + units "kbit/s"; + description + "Bandwidth allocated in Kbps"; + } + leaf total-bandwidth { + type int32; + units "kbit/s"; + description + "Total bandwidth used in Kbps"; + } + leaf topology-bandwidth-used { + type int32; + units "kbit/s"; + description + "Bandwidth used by topology in Kbps"; + } + leaf snooping-bandwidth-used { + type int32; + units "kbit/s"; + description + "Bandwidth used by snooped entries in Kbps"; + } + leaf allocated-threshold-bandwidth { + type int32; + units "kbit/s"; + description + "Configured threshold in Kbps"; + } + leaf available-threshold-bandwidth { + type int32; + units "kbit/s"; + description + "Available threshold in Kbps"; + } + } + + grouping PIM-RPF-RDRCT-RINTF-BAG { + description + "PIM RPF-redirct bundle non-local route OLE + information"; + container rpf-address { + description + "RPF Address"; + uses PIM-ADDRTYPE; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiry { + type uint64; + units "second"; + description + "Expiry in seconds"; + } + leaf is-rpf-interface { + type boolean; + description + "Is RPF Interface"; + } + leaf is-outgoing-interface { + type boolean; + description + "Is outgoing Interface"; + } + leaf is-snoop-interface { + type boolean; + description + "Is snooping Interface"; + } + } + + grouping PIM-RPF-RDRCT-ROUTE-BAG { + description + "PIM RPF Redirect route information"; + container group-address-xr { + description + "Group ddress"; + uses PIM-ADDRTYPE; + } + container source-address-xr { + description + "Source address"; + uses PIM-ADDRTYPE; + } + leaf bandwidth { + type uint32; + units "kbit/s"; + description + "Bandwidth in Kbps"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + list interface { + description + "Outgoing interface list"; + uses PIM-RPF-RDRCT-RINTF-BAG; + } + } + + grouping PIM-ANYCAST-RP-ENTRY { + description + "PIM Anycast RP entry"; + container prefix { + description + "Anycast-RP Range Prefix"; + uses PIM-ADDRTYPE; + } + leaf prefix-length { + type uint8; + description + "Anycast-RP Range Prefix Length"; + } + leaf ancast-rp-marked { + type boolean; + description + "Anycast-RP Range marked"; + } + } + + grouping PIM-RT-EXTCOMM { + description + "PIM Route-target entry"; + leaf route-target { + type yang:hex-string; + description + "Route Target Extended community value"; + } + leaf configured { + type boolean; + description + "Configured Route Target"; + } + leaf anycast-rp { + type boolean; + description + "Anycast-RP Group"; + } + leaf anycast-rp-marked { + type boolean; + description + "Anycast-RP Group marked"; + } + leaf update-pending { + type boolean; + description + "Update Pending to BGP"; + } + leaf bgp-auto-discovery { + type boolean; + description + "BGP Auto Discovery"; + } + leaf segment-border { + type boolean; + description + "Segment Border"; + } + } + + grouping PIM-CONTEXT-BAG { + description + "PIM Context bag"; + container remote-default-group { + description + "Remote Default Group"; + uses PIM-ADDRTYPE; + } + container rpf-default-table { + description + "RPF Default Table"; + uses PIM-TABLE-CTX-BAG; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf murib-id { + type uint32; + description + "MURIB ID"; + } + leaf rpf-id { + type uint32; + description + "RPF ID"; + } + leaf remote-table-id { + type uint32; + description + "Remote Table ID"; + } + leaf mdt-default-group { + type inet:ipv4-address; + description + "MDT Default group"; + } + leaf mdt-source { + type inet:ipv4-address; + description + "MDT source"; + } + leaf mdt-source-interface { + type string; + description + "MDT Source Interface Name"; + } + leaf mdt-interface { + type xr:Interface-name; + description + "MDT handle"; + } + leaf mdt-gre-rpf-identifier { + type uint32; + description + "GRE-MDT RPF Identifier"; + } + leaf mdt-gre-remote-rpf-identifier { + type uint32; + description + "GRE-MDT Remote RPF Identifier"; + } + leaf is-unicast-rib-registration { + type boolean; + description + "Ucast RIB Registration"; + } + leaf is-multicast-rib-registration { + type boolean; + description + "Mcast RIB Registration"; + } + leaf is-active { + type boolean; + description + "Active"; + } + leaf is-active-ital { + type boolean; + description + "Active ITAL"; + } + leaf is-mrib-register { + type boolean; + description + "MRIB Register"; + } + leaf is-mdt-owner { + type boolean; + description + "MDT Owner"; + } + leaf is-routing-enabled { + type boolean; + description + "Routing Enabled"; + } + leaf is-socket-add-required { + type boolean; + description + "VRF required on Socket"; + } + leaf is-socket-added { + type boolean; + description + "VRF added on Socket"; + } + leaf is-lpts-socket-add-required { + type boolean; + description + "VRF LPTS filter required on Socket"; + } + leaf is-lpts-socket-added { + type boolean; + description + "VRF LPTS filter added on Socket"; + } + leaf is-udp-socket-add-required { + type boolean; + description + "VRF added on UDP Socket"; + } + leaf is-udp-socket-added { + type boolean; + description + "VRF added on UDP Socket"; + } + leaf is-udp-socket-bind-required { + type boolean; + description + "VRF bind required on UDP Socket"; + } + leaf is-udp-socket-bind { + type boolean; + description + "VRF bound on UDP Socket"; + } + leaf is-register-injection-socket-add-required { + type boolean; + description + "VRF required on Register Injection Socket"; + } + leaf is-register-injection-socket-added { + type boolean; + description + "VRF added on Register Injection Socket"; + } + leaf is-register-injection-lpts-socket-add-required { + type boolean; + description + "VRF LPTS filter required on Register Injection + Socket"; + } + leaf is-register-injection-lpts-socket-added { + type boolean; + description + "VRF LPTS filter added on Register Injection + Socket"; + } + leaf is-m-host-publish-pending { + type boolean; + description + "Publish pending for MHost Default interface"; + } + leaf mhost-interface { + type xr:Interface-name; + description + "MHost handle"; + } + leaf mhost-default-interface-config { + type string; + description + "Configured Mhost Defint"; + } + leaf mdt-mtu { + type uint32; + description + "MDT MTU"; + } + leaf maximum-mdt-aggregation { + type uint32; + description + "MDT max aggregation"; + } + leaf mdt-data-switchover-interval { + type uint32; + description + "Data MDT Switchover interval"; + } + leaf mdt-data-announce-interval { + type uint32; + description + "Data MDT Announce interval"; + } + leaf non-default-vrf-count-on-socket { + type uint32; + description + "Count of non-default vrfs on raw socket"; + } + leaf neighbor-filter-name { + type string; + description + "Neighbor Filter Name"; + } + leaf mdt-neighbor-filter-name { + type string; + description + "MDT Neighbor Filter Name"; + } + leaf allow-rp-configured { + type boolean; + description + "Allow RP Configured"; + } + leaf allow-rp-group-list { + type string { + length "0..64"; + } + description + "Allow RP Group-List ACL Name"; + } + leaf allow-rp-rp-list { + type string { + length "0..64"; + } + description + "Allow RP RP-list ACL Name"; + } + leaf sg-expiry-timer-configured { + type boolean; + description + "S,G Expiry Timer Configured"; + } + leaf sg-expiry-time { + type uint16; + units "second"; + description + "S,G Expiry Time Configured, in seconds"; + } + leaf sg-expiry-timer-sg-list { + type string { + length "0..64"; + } + description + "S,G expiry timer ACL name"; + } + leaf mldp-mdt-name { + type string; + description + "MLDP MDT Name"; + } + leaf mldp-mdt-interface { + type xr:Interface-name; + description + "MLDP MDT handle"; + } + leaf mldp-mdt-mtu { + type uint32; + description + "MLDP MDT MTU"; + } + leaf mldp-maximum-mdt-aggregation { + type uint32; + description + "MLDP MDT max aggregation"; + } + leaf mldp-mdt-data-switchover-interval { + type uint32; + description + "MLDP Data MDT Switchover interval"; + } + leaf mldp-mdt-data-announce-interval { + type uint32; + description + "MLDP Data MDT Announce interval"; + } + leaf mldp-mdt-rpf-identifier { + type uint32; + description + "MLDP RPF-ID"; + } + leaf mldp-mdt-remote-rpf-identifier { + type uint32; + description + "MLDP Remote RPF-ID"; + } + leaf is-create-mldp-mdt-interface { + type boolean; + description + "Create MLDP MDT interface"; + } + leaf is-mldp-mdt-owner { + type boolean; + description + "MLDP MDT Owner"; + } + leaf mldp-root-count { + type uint32; + description + "MLDP Root count"; + } + leaf mldp-head-lsm-identifier { + type uint32; + description + "MLDP Head LSM-ID"; + } + leaf mldp-remote-head-lsm-identifier { + type uint32; + description + "MLDP Remote Head LSM-ID"; + } + leaf organization-unique-identifier { + type uint32; + description + "OUI for VPN-ID"; + } + leaf vpn-index { + type uint32; + description + "VPN Index"; + } + leaf mldp-partitioned-mdt-configured { + type boolean; + description + "MLDP Partitioned MDT"; + } + leaf mldp-remote-partitioned-mdt-configured { + type boolean; + description + "MLDP Remote Partitioned MDT"; + } + leaf mldp-partioned-mp2m-ptree { + type boolean; + description + "MP2MP Partitioned MDT tree"; + } + leaf mldp-partitioned-head-lsm-identifier { + type uint32; + description + "Partitioned MDT Head LSM-ID"; + } + leaf mldp-head-local-label { + type uint32; + description + "Partitioned MDT Head local label"; + } + leaf mldp-partitioned-mdt-identifier { + type uint32; + description + "MLDP Partitioned MDT Identifier"; + } + leaf bgp-auto-discovery-configured { + type boolean; + description + "BGP Auto-Discovery configured"; + } + leaf suppress-pim-data-mdt-tlv { + type boolean; + description + "Suppress PIM Data-MDT TLV Announcements"; + } + leaf inter-autonomous-system-enabled { + type boolean; + description + "Inter-AS Enabled"; + } + leaf bgp-source-active-announce { + type boolean; + description + "Send BGP Source-Active Announcements"; + } + leaf bgp-i-pmsi-added { + type boolean; + description + "BGP I-PMSI Added"; + } + leaf mldp-bsr-control-tree-added { + type boolean; + description + "MLDP BSR Control tree added"; + } + leaf mldp-auto-rp-discovery-tree-added { + type boolean; + description + "MLDP Autorp Discovery Control tree added"; + } + leaf mldp-auto-rp-announce-tree-added { + type boolean; + description + "MLDP Autorp Announce Control tree added"; + } + leaf bgp-auto-discovery-type { + type uint32; + description + "BGP Auto Discovery Type"; + } + leaf mdt-partitioned-mdt-control-identifier { + type uint32; + description + "Partitioned MDT Control Identifier"; + } + leaf mdt-partitioned-ir-control-identifier { + type uint32; + description + "Partitioned IR MDT Control Identifier"; + } + leaf mldp-control-head-lsm-identifier { + type uint32; + description + "MLDP MVPN Identifier"; + } + leaf umh { + type boolean; + description + "Join UMH Core-Tree"; + } + leaf suppress-shared-tree-join { + type boolean; + description + "Suppress Shared-Tree Joins"; + } + leaf rsvp-te-mdt-name { + type string; + description + "RSVP-TE MDT Name"; + } + leaf rsvp-te-mdt-interface { + type xr:Interface-name; + description + "RSVP-TEMDT handle"; + } + leaf rsvp-te-mdt-mtu { + type uint32; + description + "RSVP-TEMDT MTU"; + } + leaf rsvp-te-maximum-mdt-aggregation { + type uint32; + description + "RSVP-TE MDT max aggregation"; + } + leaf rsvp-te-mdt-data-switchover-interval { + type uint32; + description + "RSVP-TE Data MDT Switchover interval"; + } + leaf rsvp-te-mdt-data-announce-interval { + type uint32; + description + "RSVP-TE Data MDT Announce interval"; + } + leaf rsvp-te-mdt-rpf-identifier { + type uint32; + description + "RSVP-TE RPF-ID"; + } + leaf is-create-rsvp-te-mdt-interface { + type boolean; + description + "Create RSVP-TE MDT interface"; + } + leaf is-rsvp-te-mdt-owner { + type boolean; + description + "RSVP-TE MDT Owner"; + } + leaf rsvp-te-mdt-static-p2mp-count { + type uint32; + description + "Number of Static P2MP-TE MDT"; + } + leaf p2mpte-li-drop { + type uint32; + description + "Route LI updates dropped for P2MP"; + } + leaf ir-mdt-name { + type string; + description + "IR MDT Name"; + } + leaf ir-mdt-interface { + type xr:Interface-name; + description + "IRMDT handle"; + } + leaf ir-mdt-mtu { + type uint32; + description + "IRMDT MTU"; + } + leaf ir-maximum-mdt-aggregation { + type uint32; + description + "IR MDT max aggregation"; + } + leaf ir-mdt-data-switchover-interval { + type uint32; + description + "IR Data MDT Switchover interval"; + } + leaf ir-mdt-data-announce-interval { + type uint32; + description + "IR Data MDT Announce interval"; + } + leaf ir-mdt-rpf-identifier { + type uint32; + description + "IR RPF-ID"; + } + leaf ir-mdt-tail-label { + type uint32; + description + "IR Tail Label"; + } + leaf is-create-ir-mdt-interface { + type boolean; + description + "Create IR MDT interface"; + } + leaf is-ir-mdt-owner { + type boolean; + description + "IR MDT Owner"; + } + leaf is-sr-local { + type boolean; + description + "SR Local"; + } + leaf is-sr-remote { + type boolean; + description + "SR Remote"; + } + leaf sr-mdt-name { + type string; + description + "SR MDT Name"; + } + leaf sr-mdt-interface { + type xr:Interface-name; + description + "SRMDT handle"; + } + leaf sr-mdt-mtu { + type uint32; + description + "SRMDT MTU"; + } + leaf sr-maximum-mdt-aggregation { + type uint32; + description + "SR MDT max aggregation"; + } + leaf sr-mdt-data-switchover-interval { + type uint32; + description + "SR Data MDT Switchover interval"; + } + leaf sr-mdt-data-announce-interval { + type uint32; + description + "SR Data MDT Announce interval"; + } + leaf sr-mdt-rpf-identifier { + type uint32; + description + "SR RPF-ID"; + } + leaf sr-mdt-tail-label { + type uint32; + description + "SR Tail Label"; + } + leaf is-create-sr-mdt-interface { + type boolean; + description + "Create SR MDT interface"; + } + leaf is-sr-mdt-owner { + type boolean; + description + "SR MDT Owner"; + } + leaf mdt-partitioned-tree-sid-control-identifier { + type uint32; + description + "Partitioned Tree-SID MDT Control Identifier"; + } + leaf in-b-and-mdt-name { + type string; + description + "Inband MDT Name"; + } + leaf in-b-and-mdt-interface { + type xr:Interface-name; + description + "Inband MDT handle"; + } + leaf in-b-and-mdt-mtu { + type uint32; + description + "Inband MDT MTU"; + } + leaf in-band-maximum-mdt-aggregation { + type uint32; + description + "Inband MDT max aggregation"; + } + leaf in-b-and-mdt-data-switchover-interval { + type uint32; + description + "Inband Data MDT Switchover interval"; + } + leaf in-b-and-mdt-data-announce-interval { + type uint32; + description + "Inband Data MDT Announce interval"; + } + leaf in-b-and-mdt-rpf-identifier { + type uint32; + description + "Inband RPF-ID"; + } + leaf is-create-in-b-and-mdt-interface { + type boolean; + description + "Create Inband MDT interface"; + } + leaf is-in-b-and-mdt-owner { + type boolean; + description + "Inband MDT Owner"; + } + leaf in-band-signaling-local-enabled { + type boolean; + description + "Inband signaling Local enabled"; + } + leaf in-band-signaling-remote-enabled { + type boolean; + description + "Inband signaling Remote enabled"; + } + leaf valid-rd-present { + type boolean; + description + "RD is valid"; + } + leaf stale-rd-present { + type boolean; + description + "RD is stale"; + } + leaf route-distinguisher { + type yang:hex-string; + description + "RD value"; + } + leaf gin-b-and-mdt-name { + type string; + description + "Inband MDT Name"; + } + leaf gin-b-and-mdt-interface { + type xr:Interface-name; + description + "Inband MDT handle"; + } + leaf gin-b-and-mdt-mtu { + type uint32; + description + "Inband MDT MTU"; + } + leaf gin-band-maximum-mdt-aggregation { + type uint32; + description + "Inband MDT max aggregation"; + } + leaf gin-b-and-mdt-data-switchover-interval { + type uint32; + description + "Inband Data MDT Switchover interval"; + } + leaf gin-b-and-mdt-data-announce-interval { + type uint32; + description + "Inband Data MDT Announce interval"; + } + leaf gin-b-and-mdt-rpf-identifier { + type uint32; + description + "Inband RPF-ID"; + } + leaf is-create-gin-b-and-mdt-interface { + type boolean; + description + "Create Inband MDT interface"; + } + leaf is-gin-b-and-mdt-owner { + type boolean; + description + "Inband MDT Owner"; + } + leaf is-pim-nsf-rib-converged { + type boolean; + description + "PIM NSF RIB converged"; + } + leaf is-pim-nsf-rib-converge-received { + type boolean; + description + "PIM NSF RIB converge received"; + } + leaf is-rib-multipath-enabled { + type boolean; + description + "PIM RIB multiplath enabled"; + } + leaf is-rib-multipath-interface-hash { + type boolean; + description + "PIM RIB multipath interface hash"; + } + leaf is-rib-multipath-source-hash { + type boolean; + description + "PIM RIB multipath source based hash"; + } + leaf is-rib-multipath-source-next-hop-hash { + type boolean; + description + "PIM RIB multipath source-nexthop hash"; + } + leaf rump-enabled { + type boolean; + description + "PIM is using MuRIB"; + } + leaf is-create-mdt-interface { + type boolean; + description + "Create MDT interface"; + } + leaf is-auto-rp-listen-enabled { + type boolean; + description + "Auto RP Listen Enabled"; + } + leaf is-all-interface-disable-operation { + type boolean; + description + "PIM all interface disable operation"; + } + leaf is-default-granges { + type boolean; + description + "Default granges"; + } + leaf is-auto-rp-listen-sock-add { + type boolean; + description + "Auto RP listen sock add"; + } + leaf is-redistribution-reset { + type boolean; + description + "Pending redist reset"; + } + leaf redistribution-reset-count { + type uint32; + description + "Redist reset count"; + } + leaf rpf-policy-name { + type string; + description + "RPF topology selection route-policy name"; + } + leaf table-count { + type uint32; + description + "Number of configured Tables"; + } + leaf active-table-count { + type uint32; + description + "Number of active Tables"; + } + leaf anycast-rp-policy-name { + type string; + description + "Anycast-RP Policy Name"; + } + leaf anycast-rp-configured { + type boolean; + description + "Anycast-RP config"; + } + leaf bgp-remote-on { + type boolean; + description + "BGP remote interface status"; + } + leaf bgp-remote-interface-name { + type string; + description + "BGP remote interface name"; + } + leaf bgp-remote-interface { + type xr:Interface-name; + description + "BGP remote interface handle"; + } + leaf bgp-remote-address { + type inet:ipv4-address; + description + "BGP remote interface address"; + } + leaf bgp-remote-state { + type uint32; + description + "BGP remote interface state"; + } + leaf physical-interface-count { + type uint64; + description + "Enabled Physical Interface Count"; + } + leaf virtual-interface-count { + type uint64; + description + "Enabled Virtual Interface Count"; + } + leaf virtual-mlc-interface-name { + type string; + description + "Virtual master line card Interface"; + } + leaf mdt-immediate-switch { + type boolean; + description + "MDT Immediate Switch"; + } + leaf remote-mdt-idb-name { + type string; + description + "Remote MDT Interface Handle Name"; + } + leaf remote-mdt-address { + type inet:ipv4-address; + description + "Remote MDT interface address"; + } + leaf-list mldp-root-address { + type uint32; + description + "MLDP Root addresses"; + } + list export-route-target { + description + "Export Route Targets"; + uses PIM-RT-EXTCOMM; + } + list import-route-target { + description + "Import Route Targets"; + uses PIM-RT-EXTCOMM; + } + list anycast-rp-range { + description + "Anycast-RP Ranges"; + uses PIM-ANYCAST-RP-ENTRY; + } + } + + grouping PIM-NBR-SUMM-BAG { + description + "PIM neighbor summary"; + leaf number-of-neighbors { + type int32; + description + "Number of neighbors"; + } + leaf number-of-external-neighbors { + type int32; + description + "Number of external neighbors"; + } + } + + grouping PIM-TABLE-CTX-BAG { + description + "PIM Table context"; + leaf afi { + type uint32; + description + "AFI"; + } + leaf safi { + type uint32; + description + "SAFI"; + } + leaf table-name { + type string; + description + "Table name"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf is-active { + type boolean; + description + "Active status"; + } + leaf is-ital-registration-done { + type boolean; + description + "ITAL reg status"; + } + leaf is-rib-registration-done { + type boolean; + description + "RIB reg status"; + } + leaf is-rib-convergence-received { + type boolean; + description + "RIB Convergence receive status"; + } + leaf is-rib-convergence { + type boolean; + description + "RIB Convergence status"; + } + leaf rpf-registrations { + type uint32; + description + "RPF Registration count"; + } + } + + grouping PIM-BIDIR-DF-BAG { + description + "PIM Bidirectional DF entry"; + container rp-address-xr { + description + "RP Address"; + uses PIM-ADDRTYPE; + } + container df-winner { + description + "DF Winner"; + uses PIM-ADDRTYPE; + } + leaf pim-interface-name { + type string; + description + "Interface Name"; + } + leaf are-we-df { + type boolean; + description + "Are we DF"; + } + leaf rp-lan { + type boolean; + description + "Is this the RP LAN"; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf metric-preference { + type uint32; + description + "Metric Preference"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + } + + grouping PIM-GRE-PATH-BAG { + description + "PIM GRE path information"; + container gre-neighbor { + description + "GRE neighbor"; + uses PIM-ADDRTYPE; + } + container gre-next-hop { + description + "GRE nexthop"; + uses PIM-ADDRTYPE; + } + leaf gre-interface-name { + type xr:Interface-name; + description + "GRE Interface"; + } + leaf is-gre-interface-disabled { + type boolean; + description + "Is the gre interface disabled ?"; + } + leaf is-via-lsm { + type boolean; + description + "Via LSM"; + } + leaf is-connector-attribute-present { + type boolean; + description + "Connector attribute present"; + } + leaf extranet-vrf-name { + type string { + length "0..33"; + } + description + "Extranet VRF name"; + } + } + + grouping PIM-GRE-INFO-BAG { + description + "PIM GRE information"; + container registered-address { + description + "Address registered"; + uses PIM-ADDRTYPE; + } + leaf metric { + type uint32; + description + "Metric"; + } + leaf metric-preference { + type uint32; + description + "Metric preference"; + } + leaf is-connected { + type uint8; + description + "Are we connected ?"; + } + list gre-path { + description + "GRE Paths list"; + uses PIM-GRE-PATH-BAG; + } + } + + grouping PIM-GRP-MAP-INFORPF-BAG { + description + "PIM group-map information"; + container rpf-neighbor { + description + "RPF neighbor to the RP"; + uses PIM-ADDRTYPE; + } + container group-map-information { + description + "Group Mapping information"; + uses PIM-GRP-MAP-BAG; + } + leaf are-we-rp { + type boolean; + description + "Are we the RP?"; + } + leaf rpf-interface-name { + type xr:Interface-name; + description + "RPF interface to the RP"; + } + leaf rpf-vrf-name { + type string { + length "0..33"; + } + description + "RPF VRF Name"; + } + } + + grouping PIM-PKTQ-STATS { + description + "PIM packet queue statistics per priority"; + leaf enqueued-packets { + type uint32; + description + "Total number of packets enqueued to this queue"; + } + leaf dequeued-packets { + type uint32; + description + "Total number of packets dequeued from this queue"; + } + leaf high-water-mark-packets { + type uint32; + description + "Highest number of packets enqueued in this queue"; + } + leaf high-water-mark-bytes { + type uint32; + units "byte"; + description + "Highest number of bytes enqueued in this queue"; + } + leaf tail-drops { + type uint32; + description + "Number packets dropped from this queue due to + max size"; + } + } + + grouping PIM-PKTQ-STATE { + description + "PIM packet queue state per priority"; + leaf max-queue-size { + type uint32; + units "byte"; + description + "Maximum size of queue in bytes"; + } + leaf queue-size-bytes { + type uint32; + units "byte"; + description + "Size of queue in bytes"; + } + leaf queue-size-packets { + type uint32; + description + "Size of queue in number of packets"; + } + } + + grouping PIM-PKTQ { + description + "PIM packet queue state and statistics"; + container packet-queue-state { + description + "State of the queue"; + uses PIM-PKTQ-STATE; + } + container packet-queue-stats { + description + "Statistics about the queue"; + uses PIM-PKTQ-STATS; + } + leaf packet-queue-priority { + type uint32; + description + "Priority of this packet queue"; + } + } + + grouping PIM-TRAFFIC-BAG { + description + "PIM Traffic counters"; + leaf elapsed-time { + type uint32; + units "second"; + description + "Running time for counters in seconds"; + } + leaf inputs { + type uint32; + description + "Packets in"; + } + leaf outputs { + type uint32; + description + "Packets out"; + } + leaf format-error { + type uint32; + description + "Malformed packets in"; + } + leaf pakman-error { + type uint32; + description + "Pakman packets dropped"; + } + leaf standby-packets-error { + type uint32; + description + "Packets received in standby state"; + } + leaf checksum-error { + type uint32; + description + "Checksum errors"; + } + leaf socket-error { + type uint32; + description + "Socket errors"; + } + leaf send-queue-full { + type uint32; + description + "Packets dropped since send queue was full"; + } + leaf boundary-acl-rx-drop { + type uint32; + description + "Inc. JP dropped since boundary ACL confg"; + } + leaf boundary-acl-tx-drop { + type uint32; + description + "Out JP dropped since boundary ACL confg"; + } + leaf no-socket-connection { + type uint32; + description + "Packets dropped since no socket connection"; + } + leaf no-source-address { + type uint32; + description + "Packets dropped since no source address"; + } + leaf input-hello { + type uint32; + description + "Hello packets in"; + } + leaf output-hello { + type uint32; + description + "Hello packets out"; + } + leaf input-jp { + type uint32; + description + "Join Prune packets in"; + } + leaf output-jp { + type uint32; + description + "Join Prune packets out"; + } + leaf input-data-register { + type uint32; + description + "Data Register packets in"; + } + leaf input-null-register { + type uint32; + description + "Null Register packets in"; + } + leaf output-null-register { + type uint32; + description + "Null Register packets out"; + } + leaf input-register-stop { + type uint32; + description + "Register Stop packets in"; + } + leaf output-register-stop { + type uint32; + description + "Register Stop packets out"; + } + leaf input-assert { + type uint32; + description + "Assert packets in"; + } + leaf input-assert-batched { + type uint32; + description + "Batched Assert packets in"; + } + leaf output-assert { + type uint32; + description + "Assert packets out"; + } + leaf output-assert-batched { + type uint32; + description + "Batched Assert packets out"; + } + leaf input-df-election { + type uint32; + description + "DF Election packets in"; + } + leaf output-df-election { + type uint32; + description + "DF Election packets out"; + } + leaf input-bsr-message { + type uint32; + description + "Input BSR Messages"; + } + leaf output-bsr-message { + type uint32; + description + "Output BSR Messages"; + } + leaf input-candidate-rp-advertisement { + type uint32; + description + "Input Candidate-RP Advertisment"; + } + leaf output-candidate-rp-advertisement { + type uint32; + description + "Output Candidate-RP Advertisment"; + } + leaf input-ecmp-redirect { + type uint32; + description + "Input Ecmp Redirect"; + } + leaf output-ecmp-redirect { + type uint32; + description + "Output Ecmp Redirect"; + } + leaf output-loop-error { + type uint32; + description + "Output on loopback error"; + } + leaf mldp-mdt-invalid-lsm-identifier { + type uint32; + description + " Invalid LSM ID"; + } + leaf input-no-idb-error { + type uint32; + description + "No IDB for intf error"; + } + leaf input-no-vrf-error { + type uint32; + description + "No VRF for idb error"; + } + leaf input-no-pim-error { + type uint32; + description + "PIM Disabled on intf error"; + } + leaf input-pim-version-error { + type uint32; + description + "Invalid PIM version error"; + } + leaf output-join-group { + type uint32; + description + "Output Join Groups"; + } + leaf output-prune-group { + type uint32; + description + "Output Prune Groups"; + } + leaf output-join-prune-bytes { + type uint32; + units "byte"; + description + "Output JP Bytes"; + } + leaf output-hello-bytes { + type uint32; + units "byte"; + description + "Output Hello Bytes"; + } + leaf non-supported-packets { + type uint32; + description + "PIM non supported pckets"; + } + leaf invalid-registers { + type uint32; + description + "PIM invalid registers received"; + } + leaf invalid-join-prunes { + type uint32; + description + "PIM invalid Join/Prunes received"; + } + leaf rp-mapping-change { + type uint32; + description + "PIM RP Mapping Change"; + } + leaf packet-packman-error { + type uint32; + description + "Packets Dropped due to Pakman Error"; + } + leaf packet-read-socket-error { + type uint32; + description + "Packet Read Socket Error"; + } + leaf packet-queue-last-clear { + type uint32; + units "second"; + description + "Time in seconds since the last clear of all + packet queues stats"; + } + leaf packets-standby { + type uint32; + description + "Packets Dropped due to Standby Error"; + } + leaf no-mdt-socket-connection { + type uint32; + description + "Packets dropped since no mdt socket connection"; + } + leaf mdt-send-queue-full { + type uint32; + description + "Packets dropped since mdt send queue was full"; + } + leaf mdt-socket-error { + type uint32; + description + "MDT Socket errors"; + } + leaf mdt-join-tlv-sent { + type uint32; + description + "Data MDT Join Msgs sent"; + } + leaf mdt-join-tlv-received { + type uint32; + description + "Data MDT Join Msgs received"; + } + leaf mdt-join-bad-type { + type uint32; + description + "Data MDT TLV bad type"; + } + leaf mdt-drop-local-source-address { + type uint32; + description + "Data MDT Join msgs dropped due to local source + addr"; + } + leaf mdt-drop-null-local-address { + type uint32; + description + "Data MDT Join msgs dropped due to null local + addr"; + } + leaf mdt-drop-no-idb { + type uint32; + description + "Data MDT Join msgs dropped due to idb missing"; + } + leaf mdt-drop-no-vrf { + type uint32; + description + "Data MDT Join msgs dropped due to vrf missing"; + } + leaf invalid-destination-packets { + type uint32; + description + "Control Packets with Invalid Destination"; + } + leaf mdt-joins-drop-multiple-encapsulation { + type uint32; + description + "MDT Join msgs dropped due to multiple Encap + limitation"; + } + leaf truncated-pim-packets { + type uint32; + description + "Packets dropped due to truncated Joins or Prunes"; + } + leaf invalid-source-encodings { + type uint32; + description + "Number of invalid source encodings received"; + } + leaf invalid-hello-options { + type uint32; + description + "Number of invalid hello options received"; + } + list packet-queue { + max-elements "2"; + description + "Packet queue state and statistics"; + uses PIM-PKTQ; + } + } + + grouping PIM-GRP-MAP-BAG { + description + "PIM group-map basic information"; + container prefix { + description + "Group range prefix"; + uses PIM-ADDRTYPE; + } + container rp-address { + description + "Rendezvous Point Address"; + uses PIM-ADDRTYPE; + } + leaf prefix-length { + type int32; + description + "Group range prefix length"; + } + leaf client { + type Pim-show-range-client; + description + "Client mapping learnt from"; + } + leaf protocol { + type Pim-show-protocol; + description + "Protocol mode of the range"; + } + leaf group-count { + type uint32; + description + "No. of groups in this range"; + } + leaf is-used { + type boolean; + description + "Is this mapping being used?"; + } + leaf mrib-active { + type boolean; + description + "Is this mapping active in MRIB?"; + } + leaf is-override { + type boolean; + description + "Is this the override range?"; + } + leaf priority { + type uint32; + description + "Bootstrap priority"; + } + } + + grouping PIM-GRP-MAP-INFOSRC-BAG { + description + "PIM group-map source information"; + container source-of-information { + description + "The source of information"; + uses PIM-ADDRTYPE; + } + container group-map-information { + description + "Group Mapping information"; + uses PIM-GRP-MAP-BAG; + } + leaf holdtime { + type int32; + units "second"; + description + "Holdtime in seconds"; + } + leaf expires { + type uint64; + units "second"; + description + "Mapping expiry time in seconds"; + } + leaf uptime { + type uint64; + units "second"; + description + "Mapping uptime in seconds"; + } + } + + grouping PIM-TT-OLE-BAG { + description + "PIM topology OLE information"; + container assert-winner { + description + "Assert Winner"; + uses PIM-ADDRTYPE; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiry { + type uint64; + units "second"; + description + "Expiry in seconds"; + } + leaf bgp-c-mcast-prune-delay-timer { + type uint64; + units "second"; + description + "BGP C-MCAST Prune Suppression in seconds"; + } + leaf jp-timer { + type int32; + units "second"; + description + "Join-Prune Timer (secs)"; + } + leaf jp-state { + type int32; + description + "Join-Prune State"; + } + leaf assert-timer { + type int32; + units "second"; + description + "Assert Timer in seconds"; + } + leaf local-members { + type int32; + description + "Local Information. Deprecated - use + 'local-members-information' instead"; + } + leaf internal-interest-info { + type int32; + description + "Internal Interest. Deprecated - use + 'internal-interest-information' instead"; + } + leaf forwarding-state { + type int32; + description + "Forward or Prune"; + } + leaf immediate-state { + type int32; + description + "Immediate fwding state"; + } + leaf last-hop { + type boolean; + description + "Are we last hop ?"; + } + leaf mldp-inband-mdt { + type boolean; + description + "MLDP Inband MDT interface"; + } + leaf mldp-stale { + type boolean; + description + "OLE is stale"; + } + leaf sa-prune { + type boolean; + description + "BGP SA Prune state"; + } + leaf admin-boundary { + type boolean; + description + "Is this an administrative boundary ?"; + } + leaf igmp-membership { + type boolean; + description + "IGMP membership"; + } + leaf mdt-safi-join { + type boolean; + description + "MDT Safi join"; + } + leaf mvpn-safi-join { + type boolean; + description + "MVPN Safi join"; + } + leaf local-mdt-join { + type boolean; + description + "Default MDT Join"; + } + leaf data-mdt-join { + type boolean; + description + "Data MDT join"; + } + leaf mvpnv6-safi-join { + type boolean; + description + "MVPN IPv6 Safi join"; + } + leaf bgp-c-mcast-join { + type boolean; + description + "BGP C-Mcast join"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF which physically owns"; + } + leaf extranet-interface { + type boolean; + description + "Is this an Extranet Interface ?"; + } + leaf internal-interest-information { + type Pim-internal-interest-info; + description + "Internal Interest. Replaces + internal-interest-info"; + } + leaf local-members-information { + type Pim-show-local-interest; + description + "Local Information. Replaces local-members"; + } + leaf assert-state { + type boolean; + description + "Assert State"; + } + } + + grouping PIM-TT-ROUTE-BAG { + description + "PIM topology table route"; + container group-address-xr { + description + "Group Address"; + uses PIM-ADDRTYPE; + } + container source-address-xr { + description + "Source Address"; + uses PIM-ADDRTYPE; + } + container rp-address { + description + "RP Address (If rpt)"; + uses PIM-ADDRTYPE; + } + container rpf-neighbor { + description + "RPF Neighbor"; + uses PIM-ADDRTYPE; + } + container secondary-rpf-neighbor { + description + "Secondary RPF Neighbor"; + uses PIM-ADDRTYPE; + } + container rpf-root { + description + "Root of this mcast tree"; + uses PIM-ADDRTYPE; + } + container proxy-address { + description + "RPF Proxy address."; + uses PIM-ADDRTYPE; + } + container orig-src-address { + description + "Orig Src Address."; + uses PIM-ADDRTYPE; + } + leaf limit-reached { + type boolean; + description + "Have we throttled the creation of routes or + interfaces ?"; + } + leaf low-memory { + type boolean; + description + "Node is running low on memory"; + } + leaf protocol { + type Pim-show-protocol; + description + "The PIM protocol"; + } + leaf wildcard { + type boolean; + description + "WC -Wildcard"; + } + leaf rpt-xr { + type boolean; + description + "Is this on the RPT ?"; + } + leaf spt { + type boolean; + description + "Is this on the SPT ?"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expiry { + type uint64; + description + "When this entry expires"; + } + leaf alive { + type int32; + units "second"; + description + "Alive time in seconds (-1 if never)"; + } + leaf register-received-timer { + type int32; + units "second"; + description + "Register Received Timer in seconds (-1 if never)"; + } + leaf remote-source { + type boolean; + description + "MSDP told us"; + } + leaf crossed-threshold { + type boolean; + description + "Incoming traffic crossed threshold. MT flag set"; + } + leaf data-mdt-addr-assigned { + type boolean; + description + "PIM has assigned a Data MDT Address"; + } + leaf rpf-interface-name { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf rpf-vrf-name { + type string { + length "0..33"; + } + description + "RPF VRF Name"; + } + leaf rpf-safi { + type uint8; + description + "Unicast or mcast"; + } + leaf rpf-table-name { + type string; + description + "RPF Table name"; + } + leaf rpf-drop { + type boolean; + description + "RPF route-policy drop"; + } + leaf rpf-extranet { + type boolean; + description + "Extranet RPF route-policy"; + } + leaf is-via-lsm { + type boolean; + description + "Via LSM"; + } + leaf secondary-rpf-interface-name { + type xr:Interface-name; + description + "Secondary Interface Identifier"; + } + leaf connected { + type boolean; + description + "Is Connected ?"; + } + leaf proxy { + type boolean; + description + "Is the RPF target a proxy?"; + } + leaf rpf-proxy-enabled { + type boolean; + description + "Is rpf if proxy enabled?"; + } + leaf mofrr-enabled { + type boolean; + description + "Is this SG MoFRR enabled?"; + } + leaf rib-mo-frr-enabled { + type boolean; + description + "Is this SG MoFRR enabled?"; + } + leaf jp-timer { + type int32; + description + "Join-Prune Timer"; + } + leaf jp-status { + type int32; + description + "Join-Prune Status"; + } + leaf suppress-registers { + type int32; + description + "When the Null register probe expires"; + } + leaf assume-alive { + type boolean; + description + "The Assume Alive Bit"; + } + leaf probe-alive { + type boolean; + description + "The Probe Alive Bit"; + } + leaf really-alive { + type boolean; + description + "The Really Alive Bit"; + } + leaf inherit-alive { + type boolean; + description + "The Inherit Alive Bit"; + } + leaf inherit-spt { + type boolean; + description + "The Inherit SPT Bit"; + } + leaf signal-sources { + type boolean; + description + "Signal Sources on route?"; + } + leaf dont-check-connected { + type boolean; + description + "Do we need to make the connected check on this + route ?"; + } + leaf register-received { + type boolean; + description + "Have registers been received for this source ?"; + } + leaf last-hop { + type boolean; + description + "Are we last hop ?"; + } + leaf sending-registers { + type boolean; + description + "Are we sending registers for this route ?"; + } + leaf sending-null-registers { + type boolean; + description + "Are we sending null registers for this route ?"; + } + leaf sa-sent { + type boolean; + description + "BGP SA sent"; + } + leaf sa-received { + type boolean; + description + "BGP SA received"; + } + leaf sa-joined { + type boolean; + description + "BGP SA join"; + } + leaf anycast-rp-match { + type boolean; + description + "Group matches Anycast-RP policy"; + } + leaf anycast-rp-route-target { + type inet:ipv4-address; + description + "Anycast-RP RT"; + } + leaf bgp-join { + type boolean; + description + "BGP C JOIN"; + } + leaf bgp-jp-time { + type uint64; + description + "BGP C JP Time"; + } + leaf customer-routing-type { + type int32; + description + "Type of Customer Routing in the MVPN"; + } + leaf extranet-route { + type boolean; + description + "Is a Extranet route ?"; + } + leaf mofrr-active { + type boolean; + description + "Is MoFRR Active?"; + } + leaf mofrr-primary { + type boolean; + description + "Is this Mofrr Primary?"; + } + leaf mofrr-backup { + type boolean; + description + "Is this Mofrr Backup?"; + } + leaf vxlan { + type boolean; + description + "Is this VXLAN?"; + } + leaf kat-state { + type boolean; + description + "Keep Alive Timer State"; + } + list route-join-recv-event { + max-elements "16"; + description + "Join Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list route-join-send-event { + max-elements "16"; + description + "Join Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list outgoing-interface { + description + "Outgoing interface list"; + uses PIM-TT-OLE-BAG; + } + } + + grouping PIM-BIDIR-DF-STATE-BAG { + description + "PIM Bidirectional DF state"; + container rp-address-xr { + description + "RP Address"; + uses PIM-ADDRTYPE; + } + leaf pim-interface-name { + type string; + description + "Interface Name"; + } + leaf election-state { + type string; + description + "DF Election State"; + } + leaf time-seconds { + type uint64; + units "second"; + description + "Timer expires (seconds)"; + } + leaf time-nano-seconds { + type uint64; + units "nanosecond"; + description + "Timer expires (nseconds)"; + } + leaf our-metric { + type uint32; + description + "Metric"; + } + leaf our-metric-preference { + type uint32; + description + "MetricPreference"; + } + } + + grouping PIM-TUNNEL-INFO-BAG { + description + "PIM tunnel information"; + container source-address { + description + "Source addr known to PIM"; + uses PIM-ADDRTYPE; + } + container rp-address { + description + "RP addr known to PIM"; + uses PIM-ADDRTYPE; + } + container source-address-netio { + description + "Source addr from netio"; + uses PIM-ADDRTYPE; + } + container group-address-netio { + description + "Group addr from netio"; + uses PIM-ADDRTYPE; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "VRF Name"; + } + } + + grouping PIM-RPF-SUMMARY-BAG { + description + "PIM RPF count summary"; + leaf default-safi { + type uint32; + description + "Default RPF Table SAFI"; + } + leaf default-table-name { + type string; + description + "Default RPF Table Name"; + } + leaf is-mbgp-configured { + type boolean; + description + "Is MBGP configured?"; + } + leaf is-ospf-te-configured { + type boolean; + description + "Is OSPF TE configured?"; + } + leaf is-isis-te-configured { + type boolean; + description + "Is ISIS TE configured?"; + } + leaf is-isis-mtr-configured { + type boolean; + description + "Is ISIS MTR configured?"; + } + leaf mo-frr-configured { + type boolean; + description + "Is MoFRR configured?"; + } + leaf rib-mo-frr-configured { + type boolean; + description + "Is MoFRR RIB configured?"; + } + leaf rump-enabled { + type boolean; + description + "Is RUMP MuRIB enabled?"; + } + leaf rib-convergence-timeout { + type uint32; + units "second"; + description + "RIB convergence timeout in seconds"; + } + leaf rib-convergence-time-left { + type uint32; + units "second"; + description + "RIB convergence time left in seconds"; + } + leaf is-multipath-enabled { + type boolean; + description + "Is Multipath Enabled ?"; + } + leaf is-multipath-interface-hash-enabled { + type boolean; + description + "Is Multipath Interface Hash Extension Enabled ?"; + } + leaf is-multipath-source-hash-enabled { + type boolean; + description + "Is Multipath Source based Hash Enabled ?"; + } + leaf is-multipath-source-next-hop-hash-enabled { + type boolean; + description + "Is Multipath Source-Nexthop Hash Enabled ?"; + } + leaf rpf-registrations { + type uint32; + description + "RPF Registration count"; + } + leaf is-rib-convergence { + type boolean; + description + "RIB Convergence status"; + } + } + + grouping PIM-RPF-POLICY-STATS-BAG { + description + "PIM RPF policy statistics"; + leaf policy-name { + type string; + description + "RPF policy name"; + } + leaf requests { + type uint32; + description + "Number of RPF lookup requests"; + } + leaf pass { + type uint32; + description + "Number of RPF pass"; + } + leaf drop { + type uint32; + description + "Number of RPF drops"; + } + leaf default-table { + type uint32; + description + "Number of RPF lookup in default-only Table"; + } + leaf any-table { + type uint32; + description + "Number of RPF lookup in any Table"; + } + } + + grouping PIM-BSR-ELECTION-BAG { + description + "PIM BSR Election State"; + container bsr-address { + description + "BSR address"; + uses PIM-ADDRTYPE; + } + container candidate-bsr-address { + description + "C-BSR address"; + uses PIM-ADDRTYPE; + } + leaf bsr-priority { + type uint8; + description + "BSR Priority"; + } + leaf bsr-mask-length { + type uint8; + description + "Hash Function Mask Length"; + } + leaf bsr-up-time { + type uint16; + description + "BSR Uptime"; + } + leaf bootstrap-timeout { + type uint16; + description + "Bootstrap Timeout"; + } + leaf candidate-bsr-state { + type uint32; + description + "BSR Candidate State"; + } + leaf bsr-election-state { + type uint32; + description + "BSR Election State"; + } + leaf bsr-scope { + type uint16; + description + "BSR Scope"; + } + leaf candidate-bsr-flag { + type boolean; + description + "BSR Candidate Config Flag"; + } + leaf candidate-bsr-priority { + type uint8; + description + "C-BSR Priority"; + } + leaf candidate-bsr-mask-length { + type uint8; + description + "C-BSR Hash Func. Mask Len"; + } + list bsr-send-event { + max-elements "8"; + description + "BSR Send Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list bsr-recv-event { + max-elements "8"; + description + "BSR Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list bsrcrp-adv-recv-event { + max-elements "8"; + description + "BSR CRP Adv Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + } + + grouping PIM-BSR-CRP-ACL-BAG { + description + "PIM BSR Candidate RP Access-list"; + leaf candidate-rp-mode { + type Pim-show-protocol; + description + "Cand-RP Mode"; + } + leaf acl-name { + type string { + length "0..33"; + } + description + "Group Access-List Name"; + } + } + + grouping PIM-BSR-CANDIDATE-RP-BAG { + description + "PIM BSR Candidate RP"; + container candidate-rp { + description + "Cand-RP Address"; + uses PIM-ADDRTYPE; + } + leaf candidate-rp-mode { + type Pim-show-protocol; + description + "Cand-RP Mode"; + } + leaf candidate-rp-scope { + type int32; + description + "Cand-RP Scope"; + } + leaf crp-priority { + type uint8; + description + "Cand-RP Priority"; + } + leaf crp-holdtime { + type uint16; + description + "Cand-RP Holdtime"; + } + leaf candidate-rp-advance-interval { + type uint16; + units "second"; + description + "Cand-RP Adv Interval in seconds"; + } + leaf candidate-rp-uptime { + type uint16; + description + "Cand-RP uptime"; + } + leaf acl-name { + type string { + length "0..33"; + } + description + "Group Access-List Name"; + } + list crp-access { + max-elements "2"; + description + "Group Ranges Using this Cand-RP"; + uses PIM-BSR-CRP-ACL-BAG; + } + list crp-adv-send-event { + max-elements "8"; + description + "CRP Adv Send Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + } + + grouping PIM-BSR-CRP-BAG { + description + "PIM BSR C-RP"; + list pim-bsr-crp-bag { + description + "Next C-RP in the List"; + container candidate-rp-address { + description + "C-RP address"; + uses PIM-ADDRTYPE; + } + leaf candidate-rp-holdtime { + type uint16; + description + "C-RP Holdtime"; + } + leaf candidate-rp-priority { + type uint8; + description + "C-RP Priority"; + } + leaf candidate-rp-up-time { + type uint16; + description + "C-RP Uptime"; + } + leaf candidate-rp-expires { + type uint16; + description + "C-RP Expires"; + } + leaf protocol { + type Pim-show-protocol; + description + "PIM Protocol"; + } + } + } + + grouping PIM-BSR-RP-CACHE-BAG { + description + "PIM BSR RP cache"; + container group-prefix-xr { + description + "Group Prefix"; + uses PIM-ADDRTYPE; + } + container candidate-rp-list { + description + "C-RP list for this prefix"; + uses PIM-BSR-CRP-BAG; + } + leaf group-prefix-length { + type uint32; + description + "Group Prefix Length"; + } + leaf candidate-rp-group-count { + type uint32; + description + "C-RP count for this Prefix"; + } + } + + grouping PIM-RL-RP-RANGE-BAG { + description + "PIM RP range list information"; + container prefix { + description + "Group range prefix"; + uses PIM-ADDRTYPE; + } + container source-of-information { + description + "Source of information"; + uses PIM-ADDRTYPE; + } + leaf prefix-length { + type int32; + description + "Group range prefix length"; + } + leaf uptime { + type uint64; + units "second"; + description + "Uptime in seconds"; + } + leaf expires { + type uint64; + description + "When mapping expires"; + } + } + + grouping PIM-RL-BAG { + description + "PIM range list information"; + container rp-address-xr { + description + "Rendezvous point address"; + uses PIM-ADDRTYPE; + } + container source-of-information { + description + "Source of information"; + uses PIM-ADDRTYPE; + } + leaf protocol { + type Pim-show-protocol; + description + "PIM protocol"; + } + leaf client-xr { + type Pim-show-range-client; + description + "Client mapping learnt via"; + } + leaf expires { + type uint64; + description + "When mapping expires"; + } + list group-range { + description + "List of group ranges"; + uses PIM-RL-RP-RANGE-BAG; + } + } + + grouping PIM-IDB-SUMM-BAG { + description + "PIM IFRS interface summary"; + leaf interface-count { + type uint32; + description + "Number of interfaces"; + } + leaf configuration-count { + type uint32; + description + "Configuration counts"; + } + } + + grouping PIM-MROUTE-BAG { + description + "Multicast Route MIB entry"; + container source-address-xr { + description + "Source Address"; + uses PIM-ADDRTYPE; + } + container group-address-xr { + description + "Group Address"; + uses PIM-ADDRTYPE; + } + container rpf-neighbor { + description + "The RPF Neighbor"; + uses PIM-ADDRTYPE; + } + container rpf-root { + description + "Root of this mcast tree"; + uses PIM-ADDRTYPE; + } + leaf upstream-assert-timer { + type int32; + description + "Upstream Assert Timer"; + } + leaf assert-metric { + type uint32; + description + "Assert Metric"; + } + leaf assert-metric-preference { + type uint32; + description + "Assert Metric Preference"; + } + leaf assert-rpt-bit { + type boolean; + description + "Assert RPT Bit"; + } + leaf spt-bit { + type boolean; + description + "Is SPT bit set ?"; + } + leaf rpf-mask { + type uint32; + description + "Mask of the multicast root"; + } + leaf rpf-safi { + type uint8; + description + "Unicast or mcast"; + } + leaf rpf-table-name { + type string; + description + "RPF Table name"; + } + leaf rpf-drop { + type boolean; + description + "RPF route-policy drop"; + } + leaf rpf-extranet { + type boolean; + description + "Extranet RPF route-policy"; + } + leaf rpf-interface-name { + type xr:Interface-name; + description + "RPF interface name "; + } + leaf rpf-vrf-name { + type string { + length "0..33"; + } + description + "RPF VRF Name"; + } + leaf bidirectional-route { + type boolean; + description + "Is this Bidir ?"; + } + leaf uptime { + type uint64; + description + "Uptime of route"; + } + leaf protocol { + type Pim-show-protocol; + description + "The PIM protocol"; + } + } + + grouping PIM-JPSTATS-BAG { + description + "PIM join-prune statistic"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Identifier"; + } + leaf mtu { + type uint32; + description + "Interface MTU"; + } + leaf transmitted { + type uint32; + description + "Transmitted"; + } + leaf transmitted100 { + type uint16; + description + "Transmitted 100 average"; + } + leaf transmitted-1k { + type uint16; + description + "Transmitted 1K average"; + } + leaf transmitted-10k { + type uint16; + description + "Transmitted 10K average"; + } + leaf transmitted-50k { + type uint16; + description + "Deprecated by Transmitted100"; + } + leaf received { + type uint32; + description + "Received"; + } + leaf received100 { + type uint16; + description + "Received 100 average"; + } + leaf received-1k { + type uint16; + description + "Received 1K average"; + } + leaf received-10k { + type uint16; + description + "Received 10K average"; + } + leaf received-50k { + type uint16; + description + "Deprecated by Received100"; + } + } + + grouping PIM-TT-SUMM-BAG { + description + "PIM topology table summary"; + leaf group-ranges { + type uint32; + description + "No. of (*,G/M) routes"; + } + leaf active-group-ranges { + type uint32; + description + "No. of (*,G/M) routes active in mrib"; + } + leaf groute-count { + type uint32; + description + "No. of (*,G) routes"; + } + leaf sg-route-count { + type uint32; + description + "No. of (S,G) routes"; + } + leaf sgr-route-count { + type uint32; + description + "No. of (S,G)RPT routes"; + } + leaf is-node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + } + + grouping PIM-IFSTATS-BAG { + description + "PIM Interface Statistics"; + leaf input-hello { + type uint32; + description + "Hello packets in"; + } + leaf output-hello { + type uint32; + description + "Hello packets out"; + } + leaf input-register { + type uint32; + description + "Register packets in"; + } + leaf output-register { + type uint32; + description + "Register packets out"; + } + leaf input-register-stop { + type uint32; + description + "Register Stop packets in"; + } + leaf output-register-stop { + type uint32; + description + "Register Stop packets out"; + } + leaf input-jp { + type uint32; + description + "Join Prune packets in"; + } + leaf output-jp { + type uint32; + description + "Join Prune packets out"; + } + leaf input-bsr-message { + type uint32; + description + "Input BSR Messages"; + } + leaf output-bsr-message { + type uint32; + description + "Output BSR Messages"; + } + leaf input-assert { + type uint32; + description + "Assert packets in"; + } + leaf output-assert { + type uint32; + description + "Assert packets out"; + } + leaf input-graft-message { + type uint32; + description + "Input Graft Messages"; + } + leaf output-graft-message { + type uint32; + description + "Output Graft Messages"; + } + leaf input-graft-ack-message { + type uint32; + description + "Input Graft Ack Messages"; + } + leaf output-graft-ack-message { + type uint32; + description + "Output Graft Ack Messages"; + } + leaf input-candidate-rp-advertisement { + type uint32; + description + "Input Candidate-RP Advertisment"; + } + leaf output-candidate-rp-advertisement { + type uint32; + description + "Output Candidate-RP Advertisment"; + } + leaf input-df-election { + type uint32; + description + "DF Election packets in"; + } + leaf output-df-election { + type uint32; + description + "DF Election packets out"; + } + leaf input-miscellaneous { + type uint32; + description + "Miscellaneous packet in"; + } + } + + grouping PIM-ISSU-BAG { + description + "ISSU information"; + leaf informationvalid { + type boolean; + description + "Is Information valid ?"; + } + leaf role-ha { + type int32; + description + "HA role"; + } + leaf role-issu { + type int32; + description + "ISSU role"; + } + leaf phase-issu { + type int32; + description + "ISSU Phase"; + } + leaf last-ha-role-notification-received { + type uint64; + description + "Time when last HA role nfn was received"; + } + leaf last-issu-role-notification-received { + type uint64; + description + "Time when last ISSU role nfn was received"; + } + leaf last-issu-phase-notification-received { + type uint64; + description + "Time when last ISSU Phase nfn was received"; + } + leaf is-eoc-received { + type boolean; + description + "Was EOC received ?"; + } + leaf eoc-received-timestamp { + type uint64; + description + "Time when EOC was received"; + } + leaf is-ihms-done-received { + type boolean; + description + "Was IHMS done received ?"; + } + leaf ihms-received-timestamp { + type uint64; + description + "Time when IHMS done was received"; + } + leaf is-rib-sync-received { + type boolean; + description + "Was RIB Sync received ?"; + } + leaf rib-sync-received-timestamp { + type uint64; + description + "Time when RIB Sync was received"; + } + leaf is-nbr-sync-received { + type boolean; + description + "Was NBR Sync achieved ?"; + } + leaf nbr-sync-received-timestamp { + type uint64; + description + "Time when NBR Sync was achieved"; + } + leaf is-checkpoint-idt-done { + type boolean; + description + "Was Checkpoint IDT done ?"; + } + leaf checkpoint-idt-timestamp { + type uint64; + description + "Time when Checkpoint IDT done"; + } + } + + grouping PIM-NSF-BAG { + description + "PIM NSF state"; + leaf configured-state { + type boolean; + description + "Is Multicast NSF Configured"; + } + leaf nsf-state { + type boolean; + description + "Are we currently in NSF"; + } + leaf nsf-timeout { + type uint32; + units "second"; + description + "Multicast NSF timeout in seconds"; + } + leaf nsf-time-left { + type uint32; + units "second"; + description + "Multicast NSF time left in seconds"; + } + leaf waiting-timer { + type boolean; + description + "Waiting for NSF timer expiry"; + } + leaf waiting-membership { + type boolean; + description + "Waiting for IGMP/MLD"; + } + leaf respawn-count { + type uint32; + description + "Respawn Count"; + } + leaf last-nsf-on { + type int64; + description + "Last NSF time ON"; + } + leaf last-nsf-off { + type int64; + description + "Last NSF time off"; + } + leaf last-nsf-on-sec { + type int32; + units "second"; + description + "Last NSF time ON in Seconds"; + } + leaf last-nsf-off-sec { + type int32; + units "second"; + description + "Last NSF time OFF in Seconds"; + } + leaf last-icd-notif-recv { + type int64; + description + "Last ICD Notif Recv"; + } + leaf last-icd-notif-recv-sec { + type int32; + units "second"; + description + "Last ICD Notif Recv in Seconds"; + } + } + + grouping PIM-SUMMARY-BAG { + description + "PIM Summary Bag"; + leaf route-limit { + type uint32; + description + "Maximum routes"; + } + leaf route-count { + type uint32; + description + "Current routes"; + } + leaf route-low-water-mark { + type uint32; + description + "The number of routes below which the throttle on + route creation will be lifted"; + } + leaf is-route-limit-reached { + type boolean; + description + "Is route creation throttled"; + } + leaf topology-interface-state-limit { + type uint32; + description + "Maximum Topology Interface State count"; + } + leaf topology-interface-state-count { + type uint32; + description + "Current Topology Interface State count"; + } + leaf rxi-low-water-mark { + type uint32; + description + "The rxi below which the throttle on interface + creation will be lifted"; + } + leaf rxi-limit-reached { + type boolean; + description + "Is interface creation throttled"; + } + leaf register-limit { + type uint32; + description + "Maximum registers"; + } + leaf register-count { + type uint32; + description + "Current registers"; + } + leaf register-limit-reached { + type boolean; + description + "Is PIM SM register handling throttled"; + } + leaf ranges-limit { + type uint32; + description + "Maximum group ranges from Autorp"; + } + leaf ranges-count { + type uint32; + description + "Current group ranges from Autorp"; + } + leaf ranges-threshold { + type uint32; + description + "OOR theshold of grange ranges from AutoRP"; + } + leaf is-ranges-limit-reached { + type boolean; + description + "Is Auto-RP group-to-RP mapping range creation + throttled"; + } + leaf bsr-ranges-limit { + type uint32; + description + "Maximum group ranges from BSR"; + } + leaf bsr-ranges-count { + type uint32; + description + "Current group ranges from BSR"; + } + leaf bsr-range-threshold { + type uint32; + description + "Threshold group range from BSR"; + } + leaf is-bsr-ranges-threshold-reached { + type boolean; + description + "Is VRF-specific BSR group-to-RP mapping range + creation throttled"; + } + leaf bsr-candidate-rp-set-limit { + type uint32; + description + "Maximum crp-set from BSR"; + } + leaf bsr-candidate-rp-set-count { + type uint32; + description + "Current crp-set count from BSR"; + } + leaf bsr-candidate-rp-set-threshold { + type uint32; + description + "Threshold crp-set from BSR"; + } + leaf is-maximum-enforcement-disabled { + type boolean; + description + "Is maximum enforcement disabled"; + } + leaf is-node-low-memory { + type boolean; + description + "Is node in low memory condition"; + } + leaf route-threshold { + type uint32; + description + "Threshold routes"; + } + leaf global-auto-rp-ranges-limit { + type uint32; + description + "Global Auto-RP maximum group ranges"; + } + leaf is-global-auto-rp-ranges-limit-reached { + type boolean; + description + "Is global AutoRP group-to-RP mapping range + creation throttled"; + } + leaf global-bsr-ranges-limit { + type uint32; + description + "Global BSR maximum group ranges"; + } + leaf global-bsr-ranges-count { + type uint32; + description + "Global BSR current group ranges"; + } + leaf global-bsr-ranges-threshold { + type uint32; + description + "Global BSR Threshold group ranges"; + } + leaf is-global-bsr-ranges-limit-reached { + type boolean; + description + "Is global BSR group-to-RP mapping range creation + throttled"; + } + leaf global-bsr-candidate-rp-set-limit { + type uint32; + description + "Global BSR maximum crp-set"; + } + leaf global-bsr-candidate-rp-set-count { + type uint32; + description + "Global BSR current crp-set count"; + } + leaf global-bsr-candidate-rp-set-threshold { + type uint32; + description + "Global BSR Threshold crp-set"; + } + leaf is-global-route-limit-reached { + type boolean; + description + "Is global route creation throttled"; + } + leaf topology-interface-state-threshold { + type uint32; + description + "Topology Interface State threshold"; + } + leaf is-global-rxi-limit-reached { + type boolean; + description + "Is global interface creation throttled"; + } + leaf register-threshold { + type uint32; + description + "Threshold registers"; + } + leaf global-register-limit { + type uint32; + description + "Maximum global registers"; + } + leaf is-global-register-limit-reached { + type boolean; + description + "Is global PIM SM register handling throttled"; + } + } + + grouping PIM-NSR-BAG { + description + "NSR Related information"; + leaf state { + type uint8; + description + "NSR state"; + } + leaf partner-connected { + type boolean; + description + "Partner process connected"; + } + leaf rmf-notification-done { + type boolean; + description + "RMF Notification done"; + } + leaf rmf-timer-valid { + type boolean; + description + "Is RMF timer running ?"; + } + leaf rmf-timer-expiry { + type uint64; + description + "Time for RMF timer to expire"; + } + leaf last-connection-up { + type uint64; + description + "Time when connection went up"; + } + leaf last-connection-dn { + type uint64; + description + "Time when connection went down"; + } + leaf last-rmf-ready { + type uint64; + description + "Time when RMF Rdy notif was sent"; + } + leaf last-rmf-not-ready { + type uint64; + description + "Time when RMF Not-Rdy notif was sent"; + } + leaf count-connection-up { + type uint32; + description + "No. of times connection went up"; + } + leaf count-connection-dn { + type uint32; + description + "No. of times connection went down"; + } + leaf count-rmf-ready { + type uint32; + description + "No. of times RMF Ready notif was sent"; + } + leaf count-rmf-not-ready { + type uint32; + description + "No. of times RMF Not Ready notif was sent"; + } + } + + grouping PIM-MISSED-PACKET-BAG { + description + "PIM Missed Packet"; + leaf message-type { + type uint32; + description + "Message Type"; + } + leaf message-string { + type string { + length "0..70"; + } + description + "Message String"; + } + leaf message-time { + type string { + length "0..40"; + } + description + "Message Time"; + } + } + + grouping PIM-MISSED-PACKETS-LIST-BAG { + description + "PIM Missed Packets list information"; + list missed-packets { + description + "List of Missed Packets"; + uses PIM-MISSED-PACKET-BAG; + } + } + + grouping PIM-BAG-EVENT-HISTORY { + description + "PIM BAG EVENT HISTORY"; + leaf event-str { + type string { + length "0..70"; + } + description + "event str"; + } + leaf event-time { + type string { + length "0..40"; + } + description + "event time"; + } + } + + grouping PIM-IDB-BAG { + description + "PIM interface"; + container dr-address { + description + "PIM Designated Router"; + uses PIM-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Identfier"; + } + leaf interface-address-mask { + type uint8; + description + "Interface IP Address Mask"; + } + leaf is-enabled { + type boolean; + description + "Is PIM enabled on this IF ?"; + } + leaf neighbor-count { + type uint16; + description + "No. of neighbors on this IF"; + } + leaf external-neighbor-count { + type uint16; + description + "No. of external neighbors on this IF"; + } + leaf hello-interval { + type uint16; + description + "Hello Interval"; + } + leaf dr-priority { + type uint32; + description + "DR Priority"; + } + leaf hello-expiry { + type uint64; + description + "Hello Timer Expiry"; + } + leaf are-we-dr { + type boolean; + description + "Are we the DR on this IF ?"; + } + leaf bfd-enabled { + type boolean; + description + "BFD state"; + } + leaf bfd-interval { + type uint32; + description + "BFD Interval"; + } + leaf bfd-multiplier { + type uint32; + description + "BFD Multiplier"; + } + leaf virtual-interface { + type boolean; + description + " is this a Virtual Interfaces ?"; + } + leaf passive-interface { + type boolean; + description + "Passive PIM interface"; + } + leaf neighbor-filter-name { + type string; + description + "Neighbor Filter Name"; + } + leaf sticky-dr-enabled { + type boolean; + description + "Is Sticky DR enabled on Interface"; + } + leaf sticky-dr-active { + type boolean; + description + "Is Sticky DR Active on Interface"; + } + leaf sticky-dr-active-since { + type uint64; + units "second"; + description + "Sticky DR uptime in seconds"; + } + leaf join-prune-interval { + type uint16; + description + "Join-Prune Interval"; + } + leaf prune-delay-enabled { + type boolean; + description + "Prune Delay Enabled"; + } + leaf configured-propagation-delay { + type uint16; + description + "Configured Propagation Delay"; + } + leaf propagation-delay { + type uint16; + description + "Propagation Delay"; + } + leaf configured-override-interval { + type uint16; + description + "Configured Override Interval"; + } + leaf override-interval { + type uint16; + description + "Override Interval"; + } + leaf generation-id { + type uint32; + description + "Generation Identifier"; + } + leaf is-bidirectional-capable { + type boolean; + description + "Bidir Capable"; + } + leaf is-proxy-capable { + type boolean; + description + "Proxy Capable"; + } + leaf is-batch-asserts-capable { + type boolean; + description + "Batch Asserts Capable"; + } + leaf idb-oor-enabled { + type boolean; + description + "Interface oor enabled"; + } + leaf idb-acl-provided { + type boolean; + description + "ACL name provided"; + } + leaf idb-max-count { + type uint32; + description + "Interface ole max count"; + } + leaf idb-threshold-count { + type uint32; + description + "Interface ole threshold count"; + } + leaf idb-current-count { + type uint32; + description + "Interface ole current count"; + } + leaf idb-acl-name { + type string { + length "0..64"; + } + description + "Interface ole ACL Name"; + } + list interface-address { + description + "List of Interface IP Addresses"; + uses PIM-ADDRTYPE; + } + list idb-hello-send-event { + max-elements "8"; + description + "Hello Send Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + list idb-hello-recv-event { + max-elements "8"; + description + "Hello Recv Event String"; + uses PIM-BAG-EVENT-HISTORY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub2.yang new file mode 100644 index 000000000..396da750e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper-sub2.yang @@ -0,0 +1,213 @@ +submodule Cisco-IOS-XR-pim-oper-sub2 { + belongs-to Cisco-IOS-XR-pim-oper { + prefix Cisco-IOS-XR-pim-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pim package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-22 { + description + "Path change for Global interface table + 2022-10-31 + New addition made for Event history show command for periodic pim packets + 2022-08-26 + Addition made for Event history for periodic pim packets + 2022-04-20 + Getting rid of default context path + 2022-02-09 + Addition of new field to pim traffic bag Cisco-IOS-XR-pim-oper"; + semver:module-version "2.0.0"; + } + revision 2021-02-17 { + description + "Addition made for Sticky DR neighbor tracking"; + semver:module-version "1.1.0"; + } + revision 2019-12-24 { + description + "Fixed CSCvr52977."; + semver:module-version "1.0.0"; + } + revision 2019-08-27 { + description + "Providing PIM information."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "IPV6 Address type"; + } + + typedef Pim-afi { + type enumeration { + enum "ipv4-unicast" { + value 0; + description + "IP v4 unicast"; + } + enum "ipv6-unicast" { + value 1; + description + "IP v6 unicast"; + } + } + description + "Address family"; + } + + typedef Pim-interface { + type enumeration { + enum "encap-interface" { + value 0; + description + "Encap Interface"; + } + enum "decap-interface" { + value 1; + description + "Decap Interface"; + } + enum "mdt-interface" { + value 2; + description + "MDT Interface"; + } + } + description + "Interface Type"; + } + + grouping PIM-MA-SUMMARY { + description + "PIM MA Summary"; + leaf is-im-connection-open { + type boolean; + description + "IM Connection Open"; + } + leaf is-netio-connection-open { + type boolean; + description + "Netio Connection Open"; + } + leaf is-edm-connection-open { + type boolean; + description + "EDM Connection Open"; + } + leaf is-standby-edm-connection-open { + type boolean; + description + "Standby EDM Connection Open"; + } + leaf encap-interface-count { + type uint32; + description + "Encap Interface Count"; + } + leaf decap-interface-count { + type uint32; + description + "Decap Interface Count"; + } + leaf mdt-interface-count { + type uint32; + description + "MDT Interface Count"; + } + } + + grouping PIM-ADDRTYPE { + description + "PIM ADDRTYPE"; + leaf af-name { + type Pim-afi; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4-unicast'" { + description + "../AFName = 'IPv4Unicast'"; + } + type inet:ipv4-address; + description + "IPv4 Address"; + } + leaf ipv6-address { + when "../af-name = 'ipv6-unicast'" { + description + "../AFName = 'IPv6Unicast'"; + } + type Ipv6-address; + description + "IPV6 Address"; + } + } + + grouping PIM-MA-IDB { + description + "PIM MA interface"; + container rp-address { + description + "RP Address"; + uses PIM-ADDRTYPE; + } + container source-address { + description + "Source Address"; + uses PIM-ADDRTYPE; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf interface-type { + type Pim-interface; + description + "Interface Type"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper.yang new file mode 100644 index 000000000..e72bcc057 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pim-oper.yang @@ -0,0 +1,1118 @@ +module Cisco-IOS-XR-pim-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pim-oper"; + prefix pim-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pim-oper-sub2 { + revision-date 2022-12-22; + } + include Cisco-IOS-XR-pim-oper-sub1 { + revision-date 2022-12-22; + } + + 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 pim package operational data. + + This module contains definitions + for the following management objects: + pim-ma: PIM MA operational data + pim: PIM operational data + ipv6-pim: IPv6 PIM operational data + pim6-ma: PIM6 MA operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-22 { + description + "Path change for Global interface table + 2022-10-31 + New addition made for Event history show command for periodic pim packets + 2022-08-26 + Addition made for Event history for periodic pim packets + 2022-04-20 + Getting rid of default context path + 2022-02-09 + Addition of new field to pim traffic bag Cisco-IOS-XR-pim-oper"; + semver:module-version "2.0.0"; + } + revision 2021-02-17 { + description + "Addition made for Sticky DR neighbor tracking"; + semver:module-version "1.1.0"; + } + revision 2019-12-24 { + description + "Fixed CSCvr52977."; + semver:module-version "1.0.0"; + } + revision 2019-08-27 { + description + "Providing PIM information."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pim-topology-interface-flag { + type enumeration { + enum "lh" { + value 0; + description + "LH"; + } + enum "ld" { + value 1; + description + "LD"; + } + enum "li" { + value 2; + description + "LI"; + } + enum "ii" { + value 3; + description + "II"; + } + enum "id" { + value 4; + description + "ID"; + } + enum "as" { + value 5; + description + "AS"; + } + enum "ab" { + value 6; + description + "AB"; + } + enum "ex" { + value 7; + description + "EX"; + } + } + description + "Pim topology interface flag"; + } + + typedef Pim-safi { + type enumeration { + enum "unicast" { + value 1; + description + "SAFI unicast"; + } + enum "multicast" { + value 2; + description + "SAFI Multicast"; + } + enum "all" { + value 3; + description + "SAFI all"; + } + enum "default" { + value 4; + description + "SAFI default"; + } + } + description + "Pim safi"; + } + + typedef Pim-client { + type enumeration { + enum "none" { + value 0; + description + "No Client"; + } + enum "configured-embedded-rp" { + value 1; + description + "Embedded RP from configuration"; + } + enum "embedded" { + value 2; + description + "Embedded RP learnt from the Group addr"; + } + enum "permanent" { + value 3; + description + "Permanent"; + } + enum "auto-rp" { + value 4; + description + "AutoRP"; + } + enum "bsr" { + value 5; + description + "BSR"; + } + enum "configured" { + value 6; + description + "Configured"; + } + enum "static" { + value 7; + description + "Static"; + } + } + description + "Pim client"; + } + + typedef Pim-topology-entry-flag { + type enumeration { + enum "kat" { + value 0; + description + "KAT"; + } + enum "aa" { + value 1; + description + "AA"; + } + enum "pa" { + value 2; + description + "PA"; + } + enum "ra" { + value 3; + description + "RA"; + } + enum "ia" { + value 4; + description + "IA"; + } + enum "rr" { + value 5; + description + "RR"; + } + enum "lh" { + value 6; + description + "LH"; + } + enum "dss" { + value 7; + description + "DSS"; + } + enum "dcc" { + value 8; + description + "DCC"; + } + enum "sr" { + value 9; + description + "SR"; + } + enum "e" { + value 10; + description + "E"; + } + enum "ex" { + value 11; + description + "EX"; + } + enum "ma" { + value 12; + description + "MA"; + } + enum "mt" { + value 13; + description + "MT"; + } + enum "mfa" { + value 14; + description + "MFA"; + } + enum "mfp" { + value 15; + description + "MFP"; + } + enum "mfb" { + value 16; + description + "MFB"; + } + } + description + "Pim topology entry flag"; + } + + typedef Pim-protocol { + type enumeration { + enum "non-routable" { + value 0; + description + "Non Routable"; + } + enum "sparse-mode" { + value 1; + description + "Sparse Mode"; + } + enum "dense-mode" { + value 2; + description + "Dense Mode"; + } + enum "bidir" { + value 3; + description + "Bidirectional Mode"; + } + enum "ssm" { + value 4; + description + "Source Specific Multicast Mode"; + } + enum "maximum" { + value 5; + description + "Maximum"; + } + enum "any" { + value 6; + description + "Any"; + } + } + description + "Pim protocol"; + } + + grouping VRF-TABLE { + description + "Common node of active, standby"; + container vrfs { + description + "VRF Table"; + list vrf { + key "vrf-name"; + description + "VRF name"; + container ifrs-interfaces { + description + "PIM interfaces in forward reference store + table"; + list ifrs-interface { + key "interface-name"; + description + "PIM IFRS interface information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IDB-BAG; + } + } + container interface-statistics { + description + "PIM interface statistics"; + list interface-statistic { + key "interface-name"; + description + "PIM interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IFSTATS-BAG; + } + } + container topology-route-count { + description + "Topology route count information from PIM + topology table"; + uses PIM-TT-SUMM-BAG; + } + container jp-statistics { + description + "PIM join prune statistics table"; + list jp-statistic { + key "interface-name"; + description + "PIM Join Prune Statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-JPSTATS-BAG; + } + } + container mib-databases { + description + "PIM group database for mroute mibs table"; + list mib-database { + key "source-address group-address source-netmask"; + description + "PIM multicast static route information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Multicast static route source address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Multicast satic route group address"; + } + leaf source-netmask { + type uint32; + description + "Source mask"; + } + uses PIM-MROUTE-BAG; + } + } + container ifrs-summary { + description + "PIM interfaces in forward reference store + summary"; + uses PIM-IDB-SUMM-BAG; + } + container ranges { + description + "PIM range list information"; + list range { + key "rp-address client"; + description + "PIM range list information"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf client { + type Pim-client; + description + "Client"; + } + uses PIM-RL-BAG; + } + } + container bsr { + description + "PIM BSR information"; + container rp-caches { + description + "PIM BSR RP cache table"; + list rp-cache { + key "group-prefix prefix-length"; + description + "PIM BSR RP cache"; + leaf group-prefix { + type inet:ip-address-no-zone; + description + "Group prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix Length"; + } + uses PIM-BSR-RP-CACHE-BAG; + } + } + container candidate-rps { + description + "PIM candidate-RP"; + list candidate-rp { + key "rp-address"; + description + "PIM BSR candidate RP information"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "Candidate-RP address"; + } + uses PIM-BSR-CANDIDATE-RP-BAG; + } + } + container bsr-elections { + description + "PIM BSR election state"; + list bsr-election { + key "pim-scope"; + description + "PIM BSR information"; + leaf pim-scope { + type uint32; + description + "BSR information"; + } + uses PIM-BSR-ELECTION-BAG; + } + } + } + container route-policy { + description + "PIM route policy"; + container route-policy-statistics { + description + "PIM route policy statistics"; + uses PIM-RPF-POLICY-STATS-BAG; + } + } + container rpf-summary { + description + "PIM RPF registration summary"; + uses PIM-RPF-SUMMARY-BAG; + } + container interfaces { + description + "PIM interfaces"; + list interface { + key "interface-name"; + description + "PIM interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IDB-BAG; + } + } + container net-io-tunnels { + description + "Tunnel information that NETIO has "; + list net-io-tunnel { + key "tunnel-name"; + description + "PIM netio tunnel information"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Tunnel name"; + } + uses PIM-TUNNEL-INFO-BAG; + } + } + container bidir-df-states { + description + "Bidirectional PIM DF election state table"; + list bidir-df-state { + key "rp-address interface-name"; + description + "Bidirectional PIM DF Election Table Entry"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-BIDIR-DF-STATE-BAG; + } + } + container topologies { + description + "PIM topology table"; + list topology { + key "source-address group-address rpt"; + description + "PIM topology information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + leaf rpt { + type uint32; + description + "RPT bit"; + } + uses PIM-TT-ROUTE-BAG; + } + } + container topology-interface-flag-route-counts { + description + "Route count for topology with interface flag + set"; + list topology-interface-flag-route-count { + key "interface-flag"; + description + "Route count for topology with interface flag + set"; + leaf interface-flag { + type Pim-topology-interface-flag; + description + "Interface flag"; + } + uses PIM-TT-SUMM-BAG; + } + } + container group-map-sources { + description + "PIM group-mapping with source information"; + list group-map-source { + key "prefix prefix-length client protocol rp-address priority"; + description + "PIM Group Mapping Entry with source + information"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf client { + type Pim-client; + description + "Client"; + } + leaf protocol { + type Pim-protocol; + description + "Protocol"; + } + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf priority { + type uint32; + description + "RP Priority"; + } + uses PIM-GRP-MAP-INFOSRC-BAG; + } + } + container traffic-counters { + description + "PIM message traffic counters"; + uses PIM-TRAFFIC-BAG; + } + container group-map-rpfs { + description + "PIM group mapping information"; + list group-map-rpf { + key "prefix prefix-length client protocol rp-address rp-priority"; + description + "PIM group mapping entry"; + leaf prefix { + type inet:ip-address-no-zone; + description + "Prefix"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + leaf client { + type Pim-client; + description + "Client"; + } + leaf protocol { + type Pim-protocol; + description + "Protocol"; + } + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf rp-priority { + type uint32; + description + "RP priority"; + } + uses PIM-GRP-MAP-INFORPF-BAG; + } + } + container summary { + description + "PIM summary"; + uses PIM-SUMMARY-BAG; + } + container gre { + description + "GRE information"; + container gre-next-hops { + description + "GRE destination neighbor table"; + list gre-next-hop { + key "destination-address"; + description + "PIM GRE address next-hop information"; + leaf destination-address { + type inet:ip-address-no-zone; + description + "GRE destination address"; + } + uses PIM-GRE-INFO-BAG; + } + } + } + container bidir-df-winners { + description + "Bidirectional PIM DF election winner table"; + list bidir-df-winner { + key "rp-address interface-name"; + description + "Bidirectional PIM DF election table entry"; + leaf rp-address { + type inet:ip-address-no-zone; + description + "RP address"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-BIDIR-DF-BAG; + } + } + container table-contexts { + description + "PIM table context list"; + list table-context { + key "saf-name topology-name"; + description + "PIM table context information"; + leaf saf-name { + type Pim-safi; + description + "SAF name"; + } + leaf topology-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Topology name"; + } + uses PIM-TABLE-CTX-BAG; + } + } + container neighbor-summaries { + description + "PIM neighbor summary table"; + list neighbor-summary { + key "interface-name"; + description + "PIM neighbor summary information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-NBR-SUMM-BAG; + } + } + container context { + description + "PIM context information"; + uses PIM-CONTEXT-BAG; + } + container topology-entry-flag-route-counts { + description + "Route count for topology with entry flag set"; + list topology-entry-flag-route-count { + key "entry-flag"; + description + "Route count for topology with entry flag set"; + leaf entry-flag { + type Pim-topology-entry-flag; + description + "entry flag"; + } + uses PIM-TT-SUMM-BAG; + } + } + container rpf-redirect { + description + "PIM ECMP RPF-redirect bundle"; + container redirect-route-databases { + description + "PIM ECMP RPF-redirect route database"; + list redirect-route-database { + key "source-address group-address"; + description + "PIM ECMP RPF-redirect route information"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source address"; + } + leaf group-address { + type inet:ip-address-no-zone; + description + "Group address"; + } + uses PIM-RPF-RDRCT-ROUTE-BAG; + } + } + container bundle-interfaces { + description + "PIM ECMP RPF-redirect bundle information"; + list bundle-interface { + key "bundle-name interface-name"; + description + "PIM ECMP RPF-redirect bundle interface + information"; + leaf bundle-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Bundle name"; + } + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + uses PIM-RPF-RDRCT-BNDL-BAG; + } + } + } + container tunnels { + description + "Tunnels information that PIM has"; + list tunnel { + key "tunnel-name"; + description + "PIM tunnel information"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Tunnel name"; + } + uses PIM-TUNNEL-INFO-BAG; + } + } + container multicast-static-routes { + description + "PIM multicast static route table"; + list multicast-static-route { + key "address prefix-length"; + description + "PIM multicast static route information"; + leaf address { + type inet:ip-address-no-zone; + description + "Network address"; + } + leaf prefix-length { + type uint32; + description + "Prefix length"; + } + uses PIM-MSTATIC-BAG; + } + } + container neighbors { + description + "PIM neighbor table"; + list neighbor { + key "interface-name neighbor-address"; + description + "PIM neighbor information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf neighbor-address { + type inet:ip-address-no-zone; + description + "Neighbor address"; + } + uses PIM-NBR-BAG; + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name "; + } + } + } + } + + grouping PROCESS { + description + "Common node of active, standby"; + container process { + description + "Process"; + container missed-packets-table { + description + "PIM missed packets information"; + container missed-packets-all-table { + description + "PIM missed packets All types information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-hello-table { + description + "PIM missed packets hello information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-candidate-bsr-table { + description + "PIM missed packets candidate BSR information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-candidate-rp-table { + description + "PIM missed packets candidate RP information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + container missed-packets-join-prune-table { + description + "PIM missed packets join-prune information"; + uses PIM-MISSED-PACKETS-LIST-BAG; + } + } + container nsr { + description + "NSR Information"; + uses PIM-NSR-BAG; + } + container summary { + description + "PIM Global Summary"; + uses PIM-SUMMARY-BAG; + } + container nsf { + description + "PIM NSF information"; + uses PIM-NSF-BAG; + } + container issu { + description + "ISSU Information"; + uses PIM-ISSU-BAG; + } + } + } + + grouping GLOBAL-INTERFACE-TABLE { + description + "Common node of active, standby"; + container global-interfaces { + description + "PIM global interface table"; + list global-interface { + key "interface-name"; + description + "PIM interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-IDB-BAG; + } + } + } + + grouping PIM-MA-COMMON-OPER-PIM-MA-SUMMARY-MP { + description + "Common node of active, standby"; + container pim-ma-summary { + description + "PIM MA summary"; + uses PIM-MA-SUMMARY; + } + } + + grouping ACTIVE { + description + "Common node of pim-ma, pim6-ma"; + container active { + description + "Active Process"; + uses INTERFACE-TABLE; + uses PIM-MA-COMMON-OPER-PIM-MA-SUMMARY-MP; + } + } + + grouping IPV4-PIM-ROLE-LVL-OPER-ACTIVE { + description + "Common node of pim-ma, pim6-maCommon node of pim, + ipv6-pim"; + container active { + description + "Active Process"; + uses GLOBAL-INTERFACE-TABLE; + uses PROCESS; + uses VRF-TABLE; + } + } + + grouping INTERFACE-TABLE { + description + "Common node of active, standby"; + container interface-table { + description + "Interface Table"; + container interface-by-handles { + description + "Table of PIM MA interfaces indexed by handle"; + list interface-by-handle { + key "interface-handle"; + description + "PIM MA interface referenced by handle"; + leaf interface-handle { + type uint32; + description + "Interface handle"; + } + uses PIM-MA-IDB; + } + } + container interface-by-names { + description + "Table of PIM MA interfaces indexed by name"; + list interface-by-name { + key "interface-name"; + description + "PIM MA interface referenced by name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PIM-MA-IDB; + } + } + } + } + + grouping STANDBY { + description + "Common node of pim-ma, pim6-ma"; + container standby { + description + "Standby Process"; + uses INTERFACE-TABLE; + uses PIM-MA-COMMON-OPER-PIM-MA-SUMMARY-MP; + } + } + + grouping IPV4-PIM-ROLE-LVL-OPER-STANDBY { + description + "Common node of pim-ma, pim6-maCommon node of pim, + ipv6-pim"; + container standby { + description + "Standby Process"; + uses GLOBAL-INTERFACE-TABLE; + uses PROCESS; + uses VRF-TABLE; + } + } + + container pim-ma { + config false; + description + "PIM MA operational data"; + uses ACTIVE; + uses STANDBY; + } + container pim { + config false; + description + "PIM operational data"; + uses IPV4-PIM-ROLE-LVL-OPER-STANDBY; + uses IPV4-PIM-ROLE-LVL-OPER-ACTIVE; + } + container ipv6-pim { + config false; + description + "IPv6 PIM operational data"; + uses IPV4-PIM-ROLE-LVL-OPER-STANDBY; + uses IPV4-PIM-ROLE-LVL-OPER-ACTIVE; + } + container pim6-ma { + config false; + description + "PIM6 MA operational data"; + uses ACTIVE; + uses STANDBY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ping-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ping-act.yang new file mode 100644 index 000000000..31a7db96b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ping-act.yang @@ -0,0 +1,99 @@ +module Cisco-IOS-XR-ping-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ping-act"; + prefix ping-act; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-ping-act; + include Cisco-IOS-XR-ipv6-ping-act; + + 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 ping action package configuration. + + Copyright (c) 2016-2019, 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-11 { + description + "Addition of new leaves."; + semver:module-version "2.1.0"; + } + revision 2021-03-05 { + description + "Removed support for use-srv6-op-sid"; + semver:module-version "2.0.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-01 { + description + "IOS XR 6.2.1 revision."; + } + + rpc ping { + description + "Send echo messages"; + input { + container destination { + presence "ping input"; + description + "Ping destination"; + uses PING-OPTIONS; + uses IPV4-SPECIFIC-OPTIONS; + uses IPV6-SPECIFIC-OPTIONS; + } + list ipv4 { + key "destination"; + description + "Ping IPv4"; + uses IPV4-PING-INPUT; + } + container ipv6 { + presence "ipv6 ping input"; + description + "Ping IPv6"; + uses IPV6-PING-INPUT; + } + } + output { + container ping-response { + description + "Ping response"; + list ipv4 { + key "destination"; + description + "Ping IPv4 response"; + uses IPV4-PING-OUTPUT; + } + container ipv6 { + presence "ipv6 ping output"; + description + "Ping IPv6 response"; + uses IPV6-PING-OUTPUT; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang new file mode 100644 index 000000000..51381c7c7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1.yang @@ -0,0 +1,709 @@ +submodule Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 { + belongs-to Cisco-IOS-XR-plat-chas-invmgr-ng-oper { + prefix Cisco-IOS-XR-plat-chas-invmgr-ng-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR plat-chas-invmgr-ng package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-14 { + description + "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper"; + semver:module-version "2.1.0"; + } + revision 2019-10-15 { + description + "Added oper-state leaf to PLATFORM-INFO."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-22 { + description + "Fixing incorrect spelling for node-description in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Inv-reset-reason { + type enumeration { + enum "module-reset-reason-unknown" { + value 0; + description + "module reset reason unknown"; + } + enum "module-reset-reason-powerup" { + value 1; + description + "module reset reason powerup"; + } + enum "module-reset-reason-user-shutdown" { + value 2; + description + "module reset reason user shutdown"; + } + enum "module-reset-reason-user-reload" { + value 3; + description + "module reset reason user reload"; + } + enum "module-reset-reason-auto-reload" { + value 4; + description + "module reset reason auto reload"; + } + enum "module-reset-reason-environment" { + value 5; + description + "module reset reason environment"; + } + enum "module-reset-reason-user-unpower" { + value 6; + description + "module reset reason user unpower"; + } + } + description + "Inv reset reason"; + } + + typedef Inv-monitor-state { + type enumeration { + enum "unmonitored" { + value 0; + description + "unmonitored"; + } + enum "monitored" { + value 1; + description + "monitored"; + } + } + description + "Inv monitor state"; + } + + typedef Inv-card-state { + type enumeration { + enum "inv-card-not-present" { + value 0; + description + "inv card not present"; + } + enum "inv-card-present" { + value 1; + description + "inv card present"; + } + enum "inv-card-reset" { + value 2; + description + "inv card reset"; + } + enum "inv-card-booting" { + value 3; + description + "inv card booting"; + } + enum "inv-card-mbi-booting" { + value 4; + description + "inv card mbi booting"; + } + enum "inv-card-running-mbi" { + value 5; + description + "inv card running mbi"; + } + enum "inv-card-running-ena" { + value 6; + description + "inv card running ena"; + } + enum "inv-card-bring-down" { + value 7; + description + "inv card bring down"; + } + enum "inv-card-ena-failure" { + value 8; + description + "inv card ena failure"; + } + enum "inv-card-f-diag-run" { + value 9; + description + "inv card f diag run"; + } + enum "inv-card-f-diag-failure" { + value 10; + description + "inv card f diag failure"; + } + enum "inv-card-powered" { + value 11; + description + "inv card powered"; + } + enum "inv-card-unpowered" { + value 12; + description + "inv card unpowered"; + } + enum "inv-card-mdr" { + value 13; + description + "inv card mdr"; + } + enum "inv-card-mdr-running-mbi" { + value 14; + description + "inv card mdr running mbi"; + } + enum "inv-card-main-t-mode" { + value 15; + description + "inv card main t mode"; + } + enum "inv-card-admin-down" { + value 16; + description + "inv card admin down"; + } + enum "inv-card-no-mon" { + value 17; + description + "inv card no mon"; + } + enum "inv-card-unknown" { + value 18; + description + "inv card unknown"; + } + enum "inv-card-failed" { + value 19; + description + "inv card failed"; + } + enum "inv-card-ok" { + value 20; + description + "inv card ok"; + } + enum "inv-card-missing" { + value 21; + description + "inv card missing"; + } + enum "inv-card-field-diag-downloading" { + value 22; + description + "inv card field diag downloading"; + } + enum "inv-card-field-diag-unmonitor" { + value 23; + description + "inv card field diag unmonitor"; + } + enum "inv-card-fabric-field-diag-unmonitor" { + value 24; + description + "inv card fabric field diag unmonitor"; + } + enum "inv-card-field-diag-rp-launching" { + value 25; + description + "inv card field diag rp launching"; + } + enum "inv-card-field-diag-running" { + value 26; + description + "inv card field diag running"; + } + enum "inv-card-field-diag-pass" { + value 27; + description + "inv card field diag pass"; + } + enum "inv-card-field-diag-fail" { + value 28; + description + "inv card field diag fail"; + } + enum "inv-card-field-diag-timeout" { + value 29; + description + "inv card field diag timeout"; + } + enum "inv-card-disabled" { + value 30; + description + "inv card disabled"; + } + enum "inv-card-spa-booting" { + value 31; + description + "inv card spa booting"; + } + enum "inv-card-not-allowed-online" { + value 32; + description + "inv card not allowed online"; + } + enum "inv-card-stopped" { + value 33; + description + "inv card stopped"; + } + enum "inv-card-incompatible-fw-ver" { + value 34; + description + "inv card incompatible fw ver"; + } + enum "inv-card-fpd-hold" { + value 35; + description + "inv card fpd hold"; + } + enum "inv-card-node-prep" { + value 36; + description + "inv card node prep"; + } + enum "inv-card-updating-fpd" { + value 37; + description + "inv card updating fpd"; + } + enum "inv-card-num-states" { + value 38; + description + "inv card num states"; + } + } + description + "Inv card state"; + } + + typedef Inv-power-admin-state { + type enumeration { + enum "admin-power-invalid" { + value 0; + description + "admin power invalid"; + } + enum "admin-on" { + value 2; + description + "admin on"; + } + enum "admin-off" { + value 3; + description + "admin off"; + } + } + description + "Inv power admin state"; + } + + typedef Inv-admin-state { + type enumeration { + enum "admin-state-invalid" { + value 0; + description + "admin state invalid"; + } + enum "admin-up" { + value 1; + description + "admin up"; + } + enum "admin-down" { + value 2; + description + "admin down"; + } + } + description + "Inv admin state"; + } + + grouping INV-XML-DISK-ATTRIBUTE { + description + "Disk attribute"; + leaf disk-name { + type string { + length "0..255"; + } + description + "Disk name"; + } + leaf disk-size { + type uint32; + units "megabyte"; + description + "Disk size in mega-bytes"; + } + leaf sector-size { + type uint32; + units "byte"; + description + "Disk sector size in bytes"; + } + } + + grouping INV-XML-DISK-INFO { + description + "Disk information"; + leaf disk-name { + type string { + length "0..255"; + } + description + "(Deprecated) Disk name"; + } + leaf disk-size { + type uint32; + units "megabyte"; + description + "(Deprecated) Disk size in mega-bytes"; + } + leaf sector-size { + type uint32; + units "byte"; + description + "(Deprecated) Disk sector size in bytes"; + } + list disks { + description + "Disk attributes"; + uses INV-XML-DISK-ATTRIBUTE; + } + } + + grouping INV-BOOTFLASH { + description + "Bootflash information"; + leaf image-name { + type string { + length "0..255"; + } + description + "Image name"; + } + leaf platform-type { + type string { + length "0..255"; + } + description + "Platform Type"; + } + leaf major-version { + type uint32; + description + "Major version"; + } + leaf minor-version { + type uint32; + description + "Minor version"; + } + leaf micro-image-version { + type string { + length "0..255"; + } + description + "Micro image version"; + } + leaf platform-specific { + type string { + length "0..255"; + } + description + "Platform specific text"; + } + leaf release-type { + type string { + length "0..255"; + } + description + "Release type"; + } + leaf bootflash-type { + type string { + length "0..255"; + } + description + "Bootflash type e.g. SIMM"; + } + leaf bootflash-size { + type uint32; + units "kilobyte"; + description + "Bootflash size in kilo-bytes"; + } + leaf sector-size { + type uint32; + units "byte"; + description + "Sector size in bytes"; + } + } + + grouping INV-IMAGE { + description + "Image information"; + leaf image-name { + type string { + length "0..255"; + } + description + "Image name"; + } + leaf major-version { + type uint32; + description + "Major version"; + } + leaf minor-version { + type uint32; + description + "Minor version"; + } + leaf micro-image-version { + type string { + length "0..255"; + } + description + "Micro image version"; + } + leaf platform-specific { + type string { + length "0..255"; + } + description + "Platform specific text"; + } + leaf release-type { + type string { + length "0..255"; + } + description + "Release type"; + } + } + + grouping INV-XML-MOTHERBOARD-INFO { + description + "Motherboard information"; + container rom { + description + "ROM information"; + uses INV-IMAGE; + } + container bootflash { + description + "Bootflash information"; + uses INV-BOOTFLASH; + } + container processor { + description + "Processor information"; + uses INV-PROCESSOR; + } + leaf main-memory-size { + type uint64; + units "byte"; + description + "Memory size in bytes"; + } + leaf nvram-size { + type uint64; + units "byte"; + description + "NVRAM size in bytes"; + } + } + + grouping INV-PROCESSOR { + description + "Processor information"; + leaf processor-type { + type string { + length "0..255"; + } + description + "Type e.g. 7457"; + } + leaf speed { + type string { + length "0..255"; + } + description + "Speed e.g. 1197Mhz"; + } + leaf revision { + type string { + length "0..255"; + } + description + "Revision. e.g 1.1"; + } + } + + grouping INV-TIMESPEC { + description + "Inventory FRU Info Time Spec"; + leaf time-in-seconds { + type int32; + units "second"; + description + "Time Value in Seconds"; + } + leaf time-in-nano-seconds { + type int32; + units "nanosecond"; + description + "Time Value in Nano-seconds"; + } + } + + grouping INV-XML-FRU-INFO { + description + "FRU Information"; + container last-operational-state-change { + description + "Time operational state is last changed"; + uses INV-TIMESPEC; + } + container module-up-time { + description + "Describes the Entity Module up time"; + uses INV-TIMESPEC; + } + leaf module-administrative-state { + type Inv-admin-state; + description + "Describes the Entity Administrative state"; + } + leaf module-power-administrative-state { + type Inv-power-admin-state; + description + "Describes the Entity Power administrative state"; + } + leaf module-operational-state { + type Inv-card-state; + description + "Describes the Entity Operation state"; + } + leaf module-monitor-state { + type Inv-monitor-state; + description + "Describes the Entity Monitor state"; + } + leaf module-reset-reason { + type Inv-reset-reason; + description + "Describes the Entity Reset reason state"; + } + } + + grouping INV-XML-ENTITY-BASIC-INFO { + description + "Bag contains all the basic inventory information + for each entity"; + leaf name { + type string { + length "0..255"; + } + description + "Describes the Entity name string"; + } + leaf description { + type string { + length "0..255"; + } + description + "describes in user-readable termswhat the entity + in question does"; + } + leaf model-name { + type string { + length "0..255"; + } + description + "Describes the Entity model name"; + } + leaf hardware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity hw revision string"; + } + leaf serial-number { + type string { + length "0..255"; + } + description + "Describes the Entity serial number"; + } + leaf firmware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity firmware revision string"; + } + leaf software-revision { + type string { + length "0..255"; + } + description + "Describes the Entity software revision string"; + } + leaf vendor-type { + type string { + length "0..255"; + } + description + "maps to the vendor OID string"; + } + leaf is-field-replaceable-unit { + type boolean; + description + "1 if Field Replaceable Unit 0, if not"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2.yang new file mode 100644 index 000000000..2a5a9e959 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2.yang @@ -0,0 +1,440 @@ +submodule Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2 { + belongs-to Cisco-IOS-XR-plat-chas-invmgr-ng-oper { + prefix Cisco-IOS-XR-plat-chas-invmgr-ng-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR plat-chas-invmgr-ng package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the + compatible functionalities. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-14 { + description + "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper"; + semver:module-version "2.1.0"; + } + revision 2019-10-15 { + description + "Added oper-state leaf to PLATFORM-INFO."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-22 { + description + "Fixing incorrect spelling for node-description in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Node-state { + type enumeration { + enum "not-present" { + value 0; + description + "Not present"; + } + enum "present" { + value 1; + description + "Present"; + } + enum "reset" { + value 2; + description + "Reset"; + } + enum "rommon" { + value 3; + description + "Card booting or rommon"; + } + enum "mbi-boot" { + value 4; + description + "MBI booting"; + } + enum "mbi-run" { + value 5; + description + "Running MBI"; + } + enum "xr-run" { + value 6; + description + "Running ENA"; + } + enum "bring-down" { + value 7; + description + "Bringdown"; + } + enum "xr-fail" { + value 8; + description + "ENA failure"; + } + enum "fdiag-run" { + value 9; + description + "Running FDIAG"; + } + enum "fdiag-fail" { + value 10; + description + "FDIAG failure"; + } + enum "power" { + value 11; + description + "Powered"; + } + enum "unpower" { + value 12; + description + "Unpowered"; + } + enum "mdr-warm-reload" { + value 13; + description + "MDR warm reload"; + } + enum "mdr-mbi-run" { + value 14; + description + "MDR running MBI"; + } + enum "maintenance-mode" { + value 15; + description + "Maintenance mode"; + } + enum "admin-down" { + value 16; + description + "Admin down"; + } + enum "not-monitor" { + value 17; + description + "No MON"; + } + enum "unknown-card" { + value 18; + description + "Unknown"; + } + enum "failed" { + value 19; + description + "Failed"; + } + enum "ok" { + value 20; + description + "OK"; + } + enum "missing" { + value 21; + description + "Missing"; + } + enum "diag-download" { + value 22; + description + "Field diag downloading"; + } + enum "diag-not-monitor" { + value 23; + description + "Field diag unmonitor"; + } + enum "fabric-diag-not-monitor" { + value 24; + description + "Fabric field diag unmonitor"; + } + enum "diag-rp-launch" { + value 25; + description + "Field diag RP launching"; + } + enum "diag-run" { + value 26; + description + "Field diag running"; + } + enum "diag-pass" { + value 27; + description + "Field diag pass"; + } + enum "diag-fail" { + value 28; + description + "Field diag fail"; + } + enum "diag-timeout" { + value 29; + description + "Field diag timeout"; + } + enum "disable" { + value 30; + description + "Disable"; + } + enum "spa-boot" { + value 31; + description + "SPA booting"; + } + enum "not-allowed-online" { + value 32; + description + "Not allowed online"; + } + enum "stop" { + value 33; + description + "Stopped"; + } + enum "incomp-version" { + value 34; + description + "Incompatible FW version"; + } + enum "fpd-hold" { + value 35; + description + "FPD hold"; + } + enum "xr-preparation" { + value 36; + description + "XR preparation"; + } + enum "sync-ready" { + value 37; + description + "Sync ready state"; + } + enum "xr-isolate" { + value 38; + description + "Node isolate state"; + } + enum "ready" { + value 39; + description + "Ready"; + } + enum "invalid" { + value 40; + description + "Invalid"; + } + enum "operational" { + value 41; + description + "Operational"; + } + enum "operational-lock" { + value 42; + description + "Operational lock"; + } + enum "going-down" { + value 43; + description + "Going down"; + } + enum "going-offline" { + value 44; + description + "Going offline"; + } + enum "going-online" { + value 45; + description + "Going online"; + } + enum "offline" { + value 46; + description + "Offline"; + } + enum "up" { + value 47; + description + "Up"; + } + enum "down" { + value 48; + description + "Down"; + } + enum "max" { + value 49; + description + "Max"; + } + enum "unknown" { + value 50; + description + "Unknown"; + } + enum "not-applicable" { + value 51; + description + "N/A"; + } + } + description + "Node state detail"; + } + + typedef Card-redundancy-state { + type enumeration { + enum "red-state-none" { + value 0; + description + "Not Applicable"; + } + enum "active" { + value 1; + description + "Active"; + } + enum "standby" { + value 2; + description + "Standby"; + } + } + description + "Redundancy state detail"; + } + + grouping VM-INFO { + description + "VM Info"; + leaf node-description { + type string; + description + "Node Type"; + } + leaf red-role { + type string; + description + "Node Redundency Role"; + } + leaf partner-name { + type string; + description + "Partner Name"; + } + leaf software-status { + type string; + description + "SW status"; + } + leaf node-ip { + type string; + description + "Node IP Address"; + } + leaf node-name { + type string; + description + "Node name"; + } + } + + grouping PLATFORM-INFO { + description + "Platform information"; + leaf card-type { + type string; + description + "Card type"; + } + leaf card-redundancy-state { + type Card-redundancy-state; + description + "Redundancy state"; + } + leaf plim { + type string; + description + "PLIM"; + } + leaf state { + type Node-state; + description + "State"; + } + leaf is-monitored { + type boolean; + description + "True if monitor state is active"; + } + leaf is-powered { + type boolean; + description + "True if power state is active"; + } + leaf is-shutdown { + type boolean; + description + "True if shutdown state is active"; + } + leaf admin-state { + type string; + description + "Admin state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf node-name { + type string; + description + "Node name"; + } + leaf oper-state { + type string; + description + "Operational state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang new file mode 100644 index 000000000..fd07dca59 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-plat-chas-invmgr-ng-oper.yang @@ -0,0 +1,733 @@ +module Cisco-IOS-XR-plat-chas-invmgr-ng-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-plat-chas-invmgr-ng-oper"; + prefix plat-chas-invmgr-ng-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub2 { + revision-date 2020-05-14; + } + include Cisco-IOS-XR-plat-chas-invmgr-ng-oper-sub1 { + revision-date 2020-05-14; + } + + 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 plat-chas-invmgr-ng package operational data. + + This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang,Cisco-IOS-XR-platform-inventory-oper.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + platform: Platform information + platform-inventory: Inventory operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-14 { + description + "Deprecated the model, replaced by Cisco-IOS-XR-platform-oper and Cisco-IOS-XR-platform-inventory-oper"; + semver:module-version "2.1.0"; + } + revision 2019-10-15 { + description + "Added oper-state leaf to PLATFORM-INFO."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-22 { + description + "Fixing incorrect spelling for node-description in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping STATE { + description + "Common node of instance, slot"; + container state { + description + "State information"; + uses PLATFORM-INFO; + } + } + + grouping PORT-SLOT-TABLE { + description + "Common node of card, module"; + container port-slots { + description + "Table of port slots"; + list port-slot { + key "name"; + description + "Port slot number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port slot name"; + } + uses PORT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping SLOT-TABLE { + description + "Common node of rack, rack"; + container slots { + description + "Table of slots"; + list slot { + key "name"; + description + "Slot name"; + container cards { + description + "Table of cards"; + list card { + key "name"; + description + "Card number"; + container hardware-information { + description + "HardwareInformationDir"; + container processor-information { + description + "ProcesorInformation"; + uses INV-PROCESSOR; + } + container motherboard-information { + description + "MotherboardInformation"; + uses INV-XML-MOTHERBOARD-INFO; + } + container bootflash-information { + description + "BootflashInformation"; + uses INV-BOOTFLASH; + } + container disk-information { + description + "DiskInformation"; + uses INV-XML-DISK-INFO; + } + } + container sub-slots { + description + "Table of subslots"; + list sub-slot { + key "name"; + description + "Subslot number"; + container module { + description + "Module of a subslot"; + uses PORT-SLOT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Subslot name"; + } + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + container modules { + description + "Table of modules"; + list module { + key "module-name"; + description + "A module"; + container sub-modules { + description + "Table of Sub Module components "; + list sub-module { + key "name"; + description + "Sub Module component number"; + container sub-module-l2s { + description + "Table of Sub Module components "; + list sub-module-l2 { + key "name"; + description + "Sub Module component number"; + container sub-module-l3s { + description + "Table of Sub Module components "; + list sub-module-l3 { + key "name"; + description + "Sub Module component number"; + container sub-module-l4s { + description + "Table of Sub Module components "; + list sub-module-l4 { + key "name"; + description + "Sub Module component number"; + container sub-module-l5s { + description + "Table of Sub Module components "; + list sub-module-l5 { + key "name"; + description + "Sub Module component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + container ports { + description + "Table of spirit port slots"; + list port { + key "name"; + description + "Port number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port name"; + } + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + container ports { + description + "Table of spirit port slots"; + list port { + key "name"; + description + "Port number"; + container port-modules { + description + "Table of Module components "; + list port-module { + key "name"; + description + "POrt Module component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "module name"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port name"; + } + uses ATTRIBUTES; + uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses SENSOR-TABLE; + uses ATTRIBUTES; + uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE; + } + } + leaf module-name { + type xr:Cisco-ios-xr-string; + description + "Module name"; + } + uses SENSOR-TABLE; + uses ATTRIBUTES; + uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Card name"; + } + uses PORT-TABLE; + uses PORT-SLOT-TABLE; + uses HW-COMPONENT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping PLATFORM-COMMON-SLOT-TABLE { + description + "Common node of rack, rackCommon node of rack, + rack"; + container slots { + description + "Table of slots"; + list slot { + key "slot-name"; + description + "Slot name"; + container instances { + description + "Table of Instances"; + list instance { + key "instance-name"; + description + "Instance name"; + leaf instance-name { + type string; + description + "Instance name"; + } + uses STATE; + } + } + container vm { + description + "VM information"; + uses VM-INFO; + } + leaf slot-name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses STATE; + } + } + } + + grouping SENSOR-TABLE { + description + "Common node of module, sub-module, hw-component"; + container sensors { + description + "Table of sensors"; + list sensor { + key "name"; + description + "Sensor number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Sensor name"; + } + uses ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT2-OPER-SENSOR-TABLE { + description + "Common node of module, sub-module, + hw-componentCommon node of hw-component, + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5"; + container sensors { + description + "Table of sensors"; + list sensor { + key "name"; + description + "Sensor number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Sensor name"; + } + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + } + } + } + + grouping INVENTORY-COMMON-SENSOR-TABLE { + description + "Common node of module, sub-module, + hw-componentCommon node of hw-component, + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5Common node of card, module, + hw-component, port-slot, ports"; + container sensors { + description + "Table of sensors"; + list sensor { + key "name"; + description + "Sensor number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Sensor name"; + } + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping PORT-TABLE { + description + "Common node of port-slot, card"; + container portses { + description + "Table of port slots"; + list ports { + key "name"; + description + "Port number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port name"; + } + uses HW-COMPONENT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping HW-COMPONENT-TABLE { + description + "Common node of card, ports"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE { + description + "Common node of card, portsCommon node of module, + sub-module, port"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses SENSOR-TABLE; + uses ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE { + description + "Common node of card, portsCommon node of module, + sub-module, portCommon node of sub-module-l2, + sub-module-l3, sub-module-l4, sub-module-l5"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE { + description + "Common node of card, portsCommon node of module, + sub-module, portCommon node of sub-module-l2, + sub-module-l3, sub-module-l4, sub-module-l5Common + node of backplane, module"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT3-OPER-ATTRIBUTES; + } + } + } + + grouping ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-module"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping INVENTORY-EXT2-OPER-ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-moduleCommon node of + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5, sensor, hw-component, port"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping INVENTORY-EXT3-OPER-ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-moduleCommon node of + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5, sensor, hw-component, portCommon + node of backplane, module, hw-component"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping INVENTORY-COMMON-ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-moduleCommon node of + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5, sensor, hw-component, portCommon + node of backplane, module, hw-componentCommon + node of rack, rack, slot, card, sub-slot, module, + port-slot, hw-component, sensor, ports"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping BACKPLANE-TABLE { + description + "Common node of rack, rack"; + container backplanes { + description + "Table of backplane"; + list backplane { + key "name"; + description + "Backplane name"; + container modules { + description + "Table of modules"; + list module { + key "module-name"; + description + "A module"; + leaf module-name { + type xr:Cisco-ios-xr-string; + description + "Module name"; + } + uses INVENTORY-EXT3-OPER-ATTRIBUTES; + uses INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Backplane name"; + } + uses INVENTORY-EXT3-OPER-ATTRIBUTES; + uses INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE; + } + } + } + + container platform { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang + ,Cisco-IOS-XR-platform-inventory-oper.yang which + will provide the compatible functionalities. + Platform information"; + container racks { + description + "Table of racks"; + list rack { + key "rack-name"; + description + "Rack name"; + leaf rack-name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + uses PLATFORM-COMMON-SLOT-TABLE; + } + } + } + container platform-inventory { + config false; + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-platform-oper.yang + ,Cisco-IOS-XR-platform-inventory-oper.yang which + will provide the compatible functionalities. + Inventory operational data"; + container racks { + description + "Table of racks"; + list rack { + key "name"; + description + "Rack name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + uses SLOT-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + uses BACKPLANE-TABLE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper-sub1.yang new file mode 100644 index 000000000..11f804d61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper-sub1.yang @@ -0,0 +1,115 @@ +submodule Cisco-IOS-XR-platform-event-history-oper-sub1 { + belongs-to Cisco-IOS-XR-platform-event-history-oper { + prefix Cisco-IOS-XR-platform-event-history-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR platform-event-history package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-17 { + description + "IOS XR 7.0.14 revision. Deprecate event-discarded field in bag"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping EVENT-HISTORY-ENTRY { + description + "Event History Entry"; + leaf time { + type string; + description + "Time of event"; + } + leaf micro-seconds { + type uint64; + units "microsecond"; + description + "Time Stamp's Micro Seconds"; + } + leaf event-source { + type string; + description + "Event Source"; + } + leaf event { + type string; + description + "Event"; + } + leaf platform-event { + type string; + description + "Platform Event"; + } + leaf state { + type string; + description + "State"; + } + leaf event-log { + type string; + description + "Event Log"; + } + leaf event-discarded { + type boolean; + status deprecated; + description + "Event Discarded"; + } + leaf event-repeat-count { + type uint32; + description + "Number of times event repeated"; + } + } + + grouping EVENT-HISTORY { + description + "Event History List"; + leaf current-state { + type string; + description + "Current State"; + } + leaf state-entry-time { + type string; + description + "Timestamp of state entry"; + } + list event-history { + description + "Event History List"; + uses EVENT-HISTORY-ENTRY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper.yang new file mode 100644 index 000000000..8d53f137d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-event-history-oper.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-platform-event-history-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platform-event-history-oper"; + prefix platform-event-history-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-platform-event-history-oper-sub1 { + revision-date 2020-04-17; + } + + 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 platform-event-history package operational data. + + This module contains definitions + for the following management objects: + platform-event-history: Event History information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-17 { + description + "IOS XR 7.0.14 revision. Deprecate event-discarded field in bag"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container platform-event-history { + config false; + description + "Event History information"; + list node { + key "node-name"; + description + "Node ID"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses EVENT-HISTORY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper-sub1.yang new file mode 100644 index 000000000..d842a0383 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper-sub1.yang @@ -0,0 +1,695 @@ +submodule Cisco-IOS-XR-platform-inventory-oper-sub1 { + belongs-to Cisco-IOS-XR-platform-inventory-oper { + prefix Cisco-IOS-XR-platform-inventory-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR platform-inventory package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-14 { + description + "New model, replaces Cisco-IOS-XR-plat-chas-invmgr-ng-oper"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Inv-reset-reason { + type enumeration { + enum "module-reset-reason-unknown" { + value 0; + description + "module reset reason unknown"; + } + enum "module-reset-reason-powerup" { + value 1; + description + "module reset reason powerup"; + } + enum "module-reset-reason-user-shutdown" { + value 2; + description + "module reset reason user shutdown"; + } + enum "module-reset-reason-user-reload" { + value 3; + description + "module reset reason user reload"; + } + enum "module-reset-reason-auto-reload" { + value 4; + description + "module reset reason auto reload"; + } + enum "module-reset-reason-environment" { + value 5; + description + "module reset reason environment"; + } + enum "module-reset-reason-user-unpower" { + value 6; + description + "module reset reason user unpower"; + } + } + description + "Inv reset reason"; + } + + typedef Inv-monitor-state { + type enumeration { + enum "unmonitored" { + value 0; + description + "unmonitored"; + } + enum "monitored" { + value 1; + description + "monitored"; + } + } + description + "Inv monitor state"; + } + + typedef Inv-card-state { + type enumeration { + enum "inv-card-not-present" { + value 0; + description + "inv card not present"; + } + enum "inv-card-present" { + value 1; + description + "inv card present"; + } + enum "inv-card-reset" { + value 2; + description + "inv card reset"; + } + enum "inv-card-booting" { + value 3; + description + "inv card booting"; + } + enum "inv-card-mbi-booting" { + value 4; + description + "inv card mbi booting"; + } + enum "inv-card-running-mbi" { + value 5; + description + "inv card running mbi"; + } + enum "inv-card-running-ena" { + value 6; + description + "inv card running ena"; + } + enum "inv-card-bring-down" { + value 7; + description + "inv card bring down"; + } + enum "inv-card-ena-failure" { + value 8; + description + "inv card ena failure"; + } + enum "inv-card-f-diag-run" { + value 9; + description + "inv card f diag run"; + } + enum "inv-card-f-diag-failure" { + value 10; + description + "inv card f diag failure"; + } + enum "inv-card-powered" { + value 11; + description + "inv card powered"; + } + enum "inv-card-unpowered" { + value 12; + description + "inv card unpowered"; + } + enum "inv-card-mdr" { + value 13; + description + "inv card mdr"; + } + enum "inv-card-mdr-running-mbi" { + value 14; + description + "inv card mdr running mbi"; + } + enum "inv-card-main-t-mode" { + value 15; + description + "inv card main t mode"; + } + enum "inv-card-admin-down" { + value 16; + description + "inv card admin down"; + } + enum "inv-card-no-mon" { + value 17; + description + "inv card no mon"; + } + enum "inv-card-unknown" { + value 18; + description + "inv card unknown"; + } + enum "inv-card-failed" { + value 19; + description + "inv card failed"; + } + enum "inv-card-ok" { + value 20; + description + "inv card ok"; + } + enum "inv-card-missing" { + value 21; + description + "inv card missing"; + } + enum "inv-card-field-diag-downloading" { + value 22; + description + "inv card field diag downloading"; + } + enum "inv-card-field-diag-unmonitor" { + value 23; + description + "inv card field diag unmonitor"; + } + enum "inv-card-fabric-field-diag-unmonitor" { + value 24; + description + "inv card fabric field diag unmonitor"; + } + enum "inv-card-field-diag-rp-launching" { + value 25; + description + "inv card field diag rp launching"; + } + enum "inv-card-field-diag-running" { + value 26; + description + "inv card field diag running"; + } + enum "inv-card-field-diag-pass" { + value 27; + description + "inv card field diag pass"; + } + enum "inv-card-field-diag-fail" { + value 28; + description + "inv card field diag fail"; + } + enum "inv-card-field-diag-timeout" { + value 29; + description + "inv card field diag timeout"; + } + enum "inv-card-disabled" { + value 30; + description + "inv card disabled"; + } + enum "inv-card-spa-booting" { + value 31; + description + "inv card spa booting"; + } + enum "inv-card-not-allowed-online" { + value 32; + description + "inv card not allowed online"; + } + enum "inv-card-stopped" { + value 33; + description + "inv card stopped"; + } + enum "inv-card-incompatible-fw-ver" { + value 34; + description + "inv card incompatible fw ver"; + } + enum "inv-card-fpd-hold" { + value 35; + description + "inv card fpd hold"; + } + enum "inv-card-node-prep" { + value 36; + description + "inv card node prep"; + } + enum "inv-card-updating-fpd" { + value 37; + description + "inv card updating fpd"; + } + enum "inv-card-num-states" { + value 38; + description + "inv card num states"; + } + } + description + "Inv card state"; + } + + typedef Inv-power-admin-state { + type enumeration { + enum "admin-power-invalid" { + value 0; + description + "admin power invalid"; + } + enum "admin-on" { + value 2; + description + "admin on"; + } + enum "admin-off" { + value 3; + description + "admin off"; + } + } + description + "Inv power admin state"; + } + + typedef Inv-admin-state { + type enumeration { + enum "admin-state-invalid" { + value 0; + description + "admin state invalid"; + } + enum "admin-up" { + value 1; + description + "admin up"; + } + enum "admin-down" { + value 2; + description + "admin down"; + } + } + description + "Inv admin state"; + } + + grouping INV-XML-DISK-ATTRIBUTE { + description + "Disk attribute"; + leaf disk-name { + type string { + length "0..255"; + } + description + "Disk name"; + } + leaf disk-size { + type uint32; + units "megabyte"; + description + "Disk size in mega-bytes"; + } + leaf sector-size { + type uint32; + units "byte"; + description + "Disk sector size in bytes"; + } + } + + grouping INV-XML-DISK-INFO { + description + "Disk information"; + leaf disk-name { + type string { + length "0..255"; + } + description + "(Deprecated) Disk name"; + } + leaf disk-size { + type uint32; + units "megabyte"; + description + "(Deprecated) Disk size in mega-bytes"; + } + leaf sector-size { + type uint32; + units "byte"; + description + "(Deprecated) Disk sector size in bytes"; + } + list disks { + description + "Disk attributes"; + uses INV-XML-DISK-ATTRIBUTE; + } + } + + grouping INV-BOOTFLASH { + description + "Bootflash information"; + leaf image-name { + type string { + length "0..255"; + } + description + "Image name"; + } + leaf platform-type { + type string { + length "0..255"; + } + description + "Platform Type"; + } + leaf major-version { + type uint32; + description + "Major version"; + } + leaf minor-version { + type uint32; + description + "Minor version"; + } + leaf micro-image-version { + type string { + length "0..255"; + } + description + "Micro image version"; + } + leaf platform-specific { + type string { + length "0..255"; + } + description + "Platform specific text"; + } + leaf release-type { + type string { + length "0..255"; + } + description + "Release type"; + } + leaf bootflash-type { + type string { + length "0..255"; + } + description + "Bootflash type e.g. SIMM"; + } + leaf bootflash-size { + type uint32; + units "kilobyte"; + description + "Bootflash size in kilo-bytes"; + } + leaf sector-size { + type uint32; + units "byte"; + description + "Sector size in bytes"; + } + } + + grouping INV-IMAGE { + description + "Image information"; + leaf image-name { + type string { + length "0..255"; + } + description + "Image name"; + } + leaf major-version { + type uint32; + description + "Major version"; + } + leaf minor-version { + type uint32; + description + "Minor version"; + } + leaf micro-image-version { + type string { + length "0..255"; + } + description + "Micro image version"; + } + leaf platform-specific { + type string { + length "0..255"; + } + description + "Platform specific text"; + } + leaf release-type { + type string { + length "0..255"; + } + description + "Release type"; + } + } + + grouping INV-XML-MOTHERBOARD-INFO { + description + "Motherboard information"; + container rom { + description + "ROM information"; + uses INV-IMAGE; + } + container bootflash { + description + "Bootflash information"; + uses INV-BOOTFLASH; + } + container processor { + description + "Processor information"; + uses INV-PROCESSOR; + } + leaf main-memory-size { + type uint64; + units "byte"; + description + "Memory size in bytes"; + } + leaf nvram-size { + type uint64; + units "byte"; + description + "NVRAM size in bytes"; + } + } + + grouping INV-PROCESSOR { + description + "Processor information"; + leaf processor-type { + type string { + length "0..255"; + } + description + "Type e.g. 7457"; + } + leaf speed { + type string { + length "0..255"; + } + description + "Speed e.g. 1197Mhz"; + } + leaf revision { + type string { + length "0..255"; + } + description + "Revision. e.g 1.1"; + } + } + + grouping INV-TIMESPEC { + description + "Inventory FRU Info Time Spec"; + leaf time-in-seconds { + type int32; + units "second"; + description + "Time Value in Seconds"; + } + leaf time-in-nano-seconds { + type int32; + units "nanosecond"; + description + "Time Value in Nano-seconds"; + } + } + + grouping INV-XML-FRU-INFO { + description + "FRU Information"; + container last-operational-state-change { + description + "Time operational state is last changed"; + uses INV-TIMESPEC; + } + container module-up-time { + description + "Describes the Entity Module up time"; + uses INV-TIMESPEC; + } + leaf module-administrative-state { + type Inv-admin-state; + description + "Describes the Entity Administrative state"; + } + leaf module-power-administrative-state { + type Inv-power-admin-state; + description + "Describes the Entity Power administrative state"; + } + leaf module-operational-state { + type Inv-card-state; + description + "Describes the Entity Operation state"; + } + leaf module-monitor-state { + type Inv-monitor-state; + description + "Describes the Entity Monitor state"; + } + leaf module-reset-reason { + type Inv-reset-reason; + description + "Describes the Entity Reset reason state"; + } + } + + grouping INV-XML-ENTITY-BASIC-INFO { + description + "Bag contains all the basic inventory information + for each entity"; + leaf name { + type string { + length "0..255"; + } + description + "Describes the Entity name string"; + } + leaf description { + type string { + length "0..255"; + } + description + "describes in user-readable termswhat the entity + in question does"; + } + leaf model-name { + type string { + length "0..255"; + } + description + "Describes the Entity model name"; + } + leaf hardware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity hw revision string"; + } + leaf serial-number { + type string { + length "0..255"; + } + description + "Describes the Entity serial number"; + } + leaf firmware-revision { + type string { + length "0..255"; + } + description + "Describes the Entity firmware revision string"; + } + leaf software-revision { + type string { + length "0..255"; + } + description + "Describes the Entity software revision string"; + } + leaf vendor-type { + type string { + length "0..255"; + } + description + "maps to the vendor OID string"; + } + leaf is-field-replaceable-unit { + type boolean; + description + "1 if Field Replaceable Unit 0, if not"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper.yang new file mode 100644 index 000000000..3f190dc95 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-inventory-oper.yang @@ -0,0 +1,634 @@ +module Cisco-IOS-XR-platform-inventory-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platform-inventory-oper"; + prefix platform-inventory-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-platform-inventory-oper-sub1 { + revision-date 2020-05-14; + } + + 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 platform-inventory package operational data. + + This module contains definitions + for the following management objects: + platform-inventory: Inventory operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-14 { + description + "New model, replaces Cisco-IOS-XR-plat-chas-invmgr-ng-oper"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PORT-SLOT-TABLE { + description + "Common node of card, module"; + container port-slots { + description + "Table of port slots"; + list port-slot { + key "name"; + description + "Port slot number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port slot name"; + } + uses PORT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping SLOT-TABLE { + description + "Common node of rack, rack"; + container slots { + description + "Table of slots"; + list slot { + key "name"; + description + "Slot name"; + container cards { + description + "Table of cards"; + list card { + key "name"; + description + "Card number"; + container hardware-information { + description + "HardwareInformationDir"; + container processor-information { + description + "ProcesorInformation"; + uses INV-PROCESSOR; + } + container motherboard-information { + description + "MotherboardInformation"; + uses INV-XML-MOTHERBOARD-INFO; + } + container bootflash-information { + description + "BootflashInformation"; + uses INV-BOOTFLASH; + } + container disk-information { + description + "DiskInformation"; + uses INV-XML-DISK-INFO; + } + } + container sub-slots { + description + "Table of subslots"; + list sub-slot { + key "name"; + description + "Subslot number"; + container module { + description + "Module of a subslot"; + uses PORT-SLOT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Subslot name"; + } + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + container modules { + description + "Table of modules"; + list module { + key "module-name"; + description + "A module"; + container sub-modules { + description + "Table of Sub Module components "; + list sub-module { + key "name"; + description + "Sub Module component number"; + container sub-module-l2s { + description + "Table of Sub Module components "; + list sub-module-l2 { + key "name"; + description + "Sub Module component number"; + container sub-module-l3s { + description + "Table of Sub Module components "; + list sub-module-l3 { + key "name"; + description + "Sub Module component number"; + container sub-module-l4s { + description + "Table of Sub Module components "; + list sub-module-l4 { + key "name"; + description + "Sub Module component number"; + container sub-module-l5s { + description + "Table of Sub Module components "; + list sub-module-l5 { + key "name"; + description + "Sub Module component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + container ports { + description + "Table of spirit port slots"; + list port { + key "name"; + description + "Port number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port name"; + } + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + uses INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE; + } + } + container ports { + description + "Table of spirit port slots"; + list port { + key "name"; + description + "Port number"; + container port-modules { + description + "Table of Module components "; + list port-module { + key "name"; + description + "POrt Module component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "module name"; + } + uses ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port name"; + } + uses ATTRIBUTES; + uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses SENSOR-TABLE; + uses ATTRIBUTES; + uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE; + } + } + leaf module-name { + type xr:Cisco-ios-xr-string; + description + "Module name"; + } + uses SENSOR-TABLE; + uses ATTRIBUTES; + uses INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Card name"; + } + uses PORT-TABLE; + uses PORT-SLOT-TABLE; + uses HW-COMPONENT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping SENSOR-TABLE { + description + "Common node of module, sub-module, hw-component"; + container sensors { + description + "Table of sensors"; + list sensor { + key "name"; + description + "Sensor number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Sensor name"; + } + uses ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT2-OPER-SENSOR-TABLE { + description + "Common node of module, sub-module, + hw-componentCommon node of hw-component, + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5"; + container sensors { + description + "Table of sensors"; + list sensor { + key "name"; + description + "Sensor number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Sensor name"; + } + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + } + } + } + + grouping INVENTORY-COMMON-SENSOR-TABLE { + description + "Common node of module, sub-module, + hw-componentCommon node of hw-component, + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5Common node of card, module, + hw-component, port-slot, ports"; + container sensors { + description + "Table of sensors"; + list sensor { + key "name"; + description + "Sensor number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Sensor name"; + } + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping PORT-TABLE { + description + "Common node of port-slot, card"; + container portses { + description + "Table of port slots"; + list ports { + key "name"; + description + "Port number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Port name"; + } + uses HW-COMPONENT-TABLE; + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping HW-COMPONENT-TABLE { + description + "Common node of card, ports"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-COMMON-SENSOR-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT1-OPER-HW-COMPONENT-TABLE { + description + "Common node of card, portsCommon node of module, + sub-module, port"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses SENSOR-TABLE; + uses ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT2-OPER-HW-COMPONENT-TABLE { + description + "Common node of card, portsCommon node of module, + sub-module, portCommon node of sub-module-l2, + sub-module-l3, sub-module-l4, sub-module-l5"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT2-OPER-SENSOR-TABLE; + uses INVENTORY-EXT2-OPER-ATTRIBUTES; + } + } + } + + grouping INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE { + description + "Common node of card, portsCommon node of module, + sub-module, portCommon node of sub-module-l2, + sub-module-l3, sub-module-l4, sub-module-l5Common + node of backplane, module"; + container hw-components { + description + "Table of HW components "; + list hw-component { + key "name"; + description + "HW component number"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "HW component name"; + } + uses INVENTORY-EXT3-OPER-ATTRIBUTES; + } + } + } + + grouping ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-module"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping INVENTORY-EXT2-OPER-ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-moduleCommon node of + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5, sensor, hw-component, port"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping INVENTORY-EXT3-OPER-ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-moduleCommon node of + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5, sensor, hw-component, portCommon + node of backplane, module, hw-component"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping INVENTORY-COMMON-ATTRIBUTES { + description + "Common node of module, sub-module, sensor, + hw-component, port, port-moduleCommon node of + sub-module-l2, sub-module-l3, sub-module-l4, + sub-module-l5, sensor, hw-component, portCommon + node of backplane, module, hw-componentCommon + node of rack, rack, slot, card, sub-slot, module, + port-slot, hw-component, sensor, ports"; + container attributes { + description + "Attributes"; + container basic-info { + description + "Entity attributes"; + uses INV-XML-ENTITY-BASIC-INFO; + } + container fru-info { + description + "Field Replaceable Unit (FRU) attributes"; + uses INV-XML-FRU-INFO; + } + } + } + + grouping BACKPLANE-TABLE { + description + "Common node of rack, rack"; + container backplanes { + description + "Table of backplane"; + list backplane { + key "name"; + description + "Backplane name"; + container modules { + description + "Table of modules"; + list module { + key "module-name"; + description + "A module"; + leaf module-name { + type xr:Cisco-ios-xr-string; + description + "Module name"; + } + uses INVENTORY-EXT3-OPER-ATTRIBUTES; + uses INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Backplane name"; + } + uses INVENTORY-EXT3-OPER-ATTRIBUTES; + uses INVENTORY-EXT3-OPER-HW-COMPONENT-TABLE; + } + } + } + + container platform-inventory { + config false; + description + "Inventory operational data"; + container racks { + description + "Table of racks"; + list rack { + key "name"; + description + "Rack name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + uses SLOT-TABLE; + uses INVENTORY-COMMON-ATTRIBUTES; + uses BACKPLANE-TABLE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper-sub1.yang new file mode 100644 index 000000000..c0352ef9b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper-sub1.yang @@ -0,0 +1,88 @@ +submodule Cisco-IOS-XR-platform-oir-history-oper-sub1 { + belongs-to Cisco-IOS-XR-platform-oir-history-oper { + prefix Cisco-IOS-XR-platform-oir-history-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR platform-oir-history package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-26 { + description + "IOS XR 7.0.14 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping OIR-HISTORY-ENTRY { + description + "OIR History Entry"; + leaf time { + type string; + description + "Time of OIR"; + } + leaf micro-seconds { + type uint64; + units "microsecond"; + description + "Time Stamp's Micro Seconds"; + } + leaf event { + type string; + description + "OIR event"; + } + leaf pid { + type string; + description + "PID of the card"; + } + leaf serial-number { + type string; + description + "Serial Number of the card"; + } + leaf node-string { + type string; + description + "Node String of the card"; + } + } + + grouping OIR-HISTORY { + description + "OIR History List"; + list oir-history { + description + "OIR History List"; + uses OIR-HISTORY-ENTRY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper.yang new file mode 100644 index 000000000..e1a850ebc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oir-history-oper.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-platform-oir-history-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platform-oir-history-oper"; + prefix platform-oir-history-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-platform-oir-history-oper-sub1 { + revision-date 2020-05-26; + } + + 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 platform-oir-history package operational data. + + This module contains definitions + for the following management objects: + platform-oir-history: OIR History information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-26 { + description + "IOS XR 7.0.14 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container platform-oir-history { + config false; + description + "OIR History information"; + list node { + key "node-name"; + description + "Node ID"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses OIR-HISTORY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper-sub1.yang new file mode 100644 index 000000000..5619281c7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper-sub1.yang @@ -0,0 +1,436 @@ +submodule Cisco-IOS-XR-platform-oper-sub1 { + belongs-to Cisco-IOS-XR-platform-oper { + prefix Cisco-IOS-XR-platform-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR platform package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-17 { + description + "Added EDT support for shelfmgr"; + semver:module-version "1.1.0"; + } + revision 2020-07-07 { + description + "Added VM class for Thin XR model"; + semver:module-version "1.0.0"; + } + revision 2020-05-14 { + description + "New model, replaces Cisco-IOS-XR-plat-chas-invmgr-ng-oper"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Node-state { + type enumeration { + enum "not-present" { + value 0; + description + "Not present"; + } + enum "present" { + value 1; + description + "Present"; + } + enum "reset" { + value 2; + description + "Reset"; + } + enum "rommon" { + value 3; + description + "Card booting or rommon"; + } + enum "mbi-boot" { + value 4; + description + "MBI booting"; + } + enum "mbi-run" { + value 5; + description + "Running MBI"; + } + enum "xr-run" { + value 6; + description + "Running ENA"; + } + enum "bring-down" { + value 7; + description + "Bringdown"; + } + enum "xr-fail" { + value 8; + description + "ENA failure"; + } + enum "fdiag-run" { + value 9; + description + "Running FDIAG"; + } + enum "fdiag-fail" { + value 10; + description + "FDIAG failure"; + } + enum "power" { + value 11; + description + "Powered"; + } + enum "unpower" { + value 12; + description + "Unpowered"; + } + enum "mdr-warm-reload" { + value 13; + description + "MDR warm reload"; + } + enum "mdr-mbi-run" { + value 14; + description + "MDR running MBI"; + } + enum "maintenance-mode" { + value 15; + description + "Maintenance mode"; + } + enum "admin-down" { + value 16; + description + "Admin down"; + } + enum "not-monitor" { + value 17; + description + "No MON"; + } + enum "unknown-card" { + value 18; + description + "Unknown"; + } + enum "failed" { + value 19; + description + "Failed"; + } + enum "ok" { + value 20; + description + "OK"; + } + enum "missing" { + value 21; + description + "Missing"; + } + enum "diag-download" { + value 22; + description + "Field diag downloading"; + } + enum "diag-not-monitor" { + value 23; + description + "Field diag unmonitor"; + } + enum "fabric-diag-not-monitor" { + value 24; + description + "Fabric field diag unmonitor"; + } + enum "diag-rp-launch" { + value 25; + description + "Field diag RP launching"; + } + enum "diag-run" { + value 26; + description + "Field diag running"; + } + enum "diag-pass" { + value 27; + description + "Field diag pass"; + } + enum "diag-fail" { + value 28; + description + "Field diag fail"; + } + enum "diag-timeout" { + value 29; + description + "Field diag timeout"; + } + enum "disable" { + value 30; + description + "Disable"; + } + enum "spa-boot" { + value 31; + description + "SPA booting"; + } + enum "not-allowed-online" { + value 32; + description + "Not allowed online"; + } + enum "stop" { + value 33; + description + "Stopped"; + } + enum "incomp-version" { + value 34; + description + "Incompatible FW version"; + } + enum "fpd-hold" { + value 35; + description + "FPD hold"; + } + enum "xr-preparation" { + value 36; + description + "XR preparation"; + } + enum "sync-ready" { + value 37; + description + "Sync ready state"; + } + enum "xr-isolate" { + value 38; + description + "Node isolate state"; + } + enum "ready" { + value 39; + description + "Ready"; + } + enum "invalid" { + value 40; + description + "Invalid"; + } + enum "operational" { + value 41; + description + "Operational"; + } + enum "operational-lock" { + value 42; + description + "Operational lock"; + } + enum "going-down" { + value 43; + description + "Going down"; + } + enum "going-offline" { + value 44; + description + "Going offline"; + } + enum "going-online" { + value 45; + description + "Going online"; + } + enum "offline" { + value 46; + description + "Offline"; + } + enum "up" { + value 47; + description + "Up"; + } + enum "down" { + value 48; + description + "Down"; + } + enum "max" { + value 49; + description + "Max"; + } + enum "unknown" { + value 50; + description + "Unknown"; + } + enum "not-applicable" { + value 51; + description + "N/A"; + } + } + description + "Node state detail"; + } + + typedef Card-redundancy-state { + type enumeration { + enum "red-state-none" { + value 0; + description + "Not Applicable"; + } + enum "active" { + value 1; + description + "Active"; + } + enum "standby" { + value 2; + description + "Standby"; + } + } + description + "Redundancy state detail"; + } + + grouping VM-INFO { + description + "VM Info"; + leaf node-description { + type string; + description + "Node Type"; + } + leaf red-role { + type string; + description + "Node Redundency Role"; + } + leaf partner-name { + type string; + description + "Partner Name"; + } + leaf software-status { + type string; + description + "SW status"; + } + leaf node-ip { + type string; + description + "Node IP Address"; + } + leaf node-name { + type string; + description + "Node name"; + } + } + + grouping PLATFORM-INFO { + description + "Platform information"; + leaf card-type { + type string; + description + "Card type"; + } + leaf card-redundancy-state { + type Card-redundancy-state; + description + "Redundancy state"; + } + leaf plim { + type string; + description + "PLIM"; + } + leaf state { + type Node-state; + description + "State"; + } + leaf is-monitored { + type boolean; + description + "True if monitor state is active"; + } + leaf is-powered { + type boolean; + description + "True if power state is active"; + } + leaf is-shutdown { + type boolean; + description + "True if shutdown state is active"; + } + leaf admin-state { + type string; + description + "Admin state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf node-name { + type string; + description + "Node name"; + } + leaf oper-state { + type string; + description + "Operational state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper.yang new file mode 100644 index 000000000..4c345f9da --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-oper.yang @@ -0,0 +1,132 @@ +module Cisco-IOS-XR-platform-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platform-oper"; + prefix platform-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-platform-oper-sub1 { + revision-date 2022-06-17; + } + + 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 platform package operational data. + + This module contains definitions + for the following management objects: + platform: Platform information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-17 { + description + "Added EDT support for shelfmgr"; + semver:module-version "1.1.0"; + } + revision 2020-07-07 { + description + "Added VM class for Thin XR model"; + semver:module-version "1.0.0"; + } + revision 2020-05-14 { + description + "New model, replaces Cisco-IOS-XR-plat-chas-invmgr-ng-oper"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping STATE { + description + "Common node of instance, slot"; + container state { + description + "State information"; + uses PLATFORM-INFO; + } + } + + grouping SLOT-TABLE { + description + "Common node of rack, rack"; + container slots { + description + "Table of slots"; + list slot { + key "slot-name"; + description + "Slot name"; + container instances { + description + "Table of Instances"; + list instance { + key "instance-name"; + description + "Instance name"; + leaf instance-name { + type string; + description + "Instance name"; + } + uses STATE; + } + } + container vm { + description + "VM information"; + uses VM-INFO; + } + leaf slot-name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + uses STATE; + } + } + } + + container platform { + config false; + description + "Platform information"; + container racks { + description + "Table of racks"; + list rack { + key "rack-name"; + description + "Rack name"; + leaf rack-name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + uses SLOT-TABLE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper-sub1.yang new file mode 100644 index 000000000..d401d13ed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper-sub1.yang @@ -0,0 +1,552 @@ +submodule Cisco-IOS-XR-platform-pifib-oper-sub1 { + belongs-to Cisco-IOS-XR-platform-pifib-oper { + prefix Cisco-IOS-XR-platform-pifib-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR platform-pifib package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-02-22 { + description + "Initial revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PL-PIFIB-HARDWARE-INFO { + description + "PL PIFIB HARDWARE INFO"; + leaf policer { + type uint32; + description + "Policer Pointer"; + } + leaf stats-ptr { + type uint32; + description + "Stats Pointer"; + } + leaf accepted { + type uint64; + description + "Accepted Packets Counter"; + } + leaf dropped { + type uint64; + description + "Dropped Packets Counter"; + } + leaf sort-start-offset { + type int32; + description + "Relative position in sorting order"; + } + leaf tm-start-offset { + type int32; + description + "Relative position in TCAM"; + } + } + + grouping PL-PIFIB-SHOW-ENTRY { + description + "LPTS TCAM Pre-IFIB Entry Information"; + leaf l3protocol { + type uint32; + description + "Layer 3 Protocol"; + } + leaf l4protocol { + type uint32; + description + "Layer 4 Protocol"; + } + leaf intf-handle { + type uint32; + description + "Interface Handle"; + } + leaf intf-name { + type string; + description + "Interface Name"; + } + leaf uidb-index { + type uint32; + description + "Interface uidb index"; + } + leaf local-addr { + type string; + description + "Local IP Address"; + } + leaf local-prefix-len { + type uint32; + description + "Local Prefix Length"; + } + leaf remote-addr { + type string; + description + "Remote IP Address"; + } + leaf remote-prefix-len { + type uint32; + description + "Remote Prefix Length"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf u-value { + type uint32; + description + "Remote Port/ICMP Type/IGMP Type"; + } + leaf u-len { + type uint32; + description + "Union Key Length"; + } + leaf local-port { + type uint32; + description + "Local port"; + } + leaf is-frag { + type uint8; + description + "Is Fragment"; + } + leaf is-syn { + type uint8; + description + "Is SYN"; + } + leaf action { + type uint8; + description + "Action"; + } + leaf action-string { + type string; + description + "Action String"; + } + leaf listener-tag { + type uint8; + description + "Listener Tag"; + } + leaf is-fgid { + type uint8; + description + "Is FGID or not"; + } + leaf is-vrf { + type uint8; + description + "Is VRF or not"; + } + leaf is-optimized { + type uint8; + description + "Is optimized or not"; + } + leaf is-uidb-opt-bit { + type uint8; + description + "Is uidb set for optimized entry or not"; + } + leaf fgid-or-sfp { + type uint32; + description + "fabric group id or swith fabric port"; + } + leaf remote-rack { + type uint8; + description + "Is entry remote or not"; + } + leaf rack-id { + type uint32; + description + "Remote racknum if remote"; + } + leaf rslot { + type uint32; + description + "Remote slotnum if remote"; + } + leaf cir { + type uint64; + description + "Committed Information Rate"; + } + leaf flow-type { + type uint32; + description + "Flow type"; + } + leaf priority { + type uint32; + description + "Flow priority or COS"; + } + leaf sid { + type uint32; + description + "Stream ID"; + } + leaf policer-avgrate { + type uint32; + description + "Policer avg. rate limit"; + } + leaf policer-burst { + type uint32; + description + "Policer burst"; + } + leaf lookup-priority { + type int32; + description + "Lookup priority"; + } + leaf storage-priority { + type int32; + description + "Storage priority"; + } + leaf num-tm-entries { + type int32; + description + "Number of TCAM entries used"; + } + leaf entry-ptr { + type uint32; + description + "ptr to ifib_entry_st"; + } + leaf entry-shadow-ptr { + type uint32; + description + "ptr to ifib_entry_shadow_st"; + } + leaf list-node-ptr { + type uint32; + description + "ptr to dlqueue list node"; + } + leaf state { + type uint8; + description + "state of pifib entry"; + } + leaf retry-fail-cause { + type uint8; + description + "failure cause"; + } + leaf num-retries { + type uint8; + description + "retries count"; + } + leaf min-ttl { + type uint8; + description + "Minimum TTL"; + } + leaf u-type { + type uint8; + description + "Union Key Type"; + } + leaf remote-fgid { + type uint32; + description + "Remote FGID"; + } + leaf acl-str { + type yang:hex-string; + description + "Acl name"; + } + leaf no-stats { + type uint8; + description + "Stats not available"; + } + list hw-info { + description + "Per pipe type hardware info"; + uses PL-PIFIB-HARDWARE-INFO; + } + } + + grouping PL-PIFIB-SHOW-STATS { + description + "Pre-IFIB global statistics"; + leaf accepted { + type uint64; + description + "Deleted-entry accepted packets counter"; + } + leaf dropped { + type uint64; + description + "Deleted-entry dropped packets counter"; + } + leaf clear-ts { + type uint64; + description + "Statistics clear timestamp"; + } + leaf no-stats-mem-err { + type uint64; + description + "No statistics memory error"; + } + } + + grouping PL-PIFIB-SHOW-BFD-DISC-ENTRY-INFO { + description + "PL PIFIB SHOW BFD DISC ENTRY INFO"; + leaf index { + type uint8; + description + "index"; + } + leaf is-mcast { + type uint8; + description + "is mcast"; + } + leaf fgid-or-vqi { + type uint32; + description + "fgid or vqi"; + } + leaf is-valid { + type uint8; + description + "is valid"; + } + leaf policer-id { + type uint32; + description + "policer id"; + } + } + + grouping PL-PIFIB-SHOW-BFD-DISC-ENTRY { + description + "Pre-IFIB platform specific bfd discriminator + table entry data structure"; + list bfd-entry-info { + description + "Per bfd disc entry info"; + uses PL-PIFIB-SHOW-BFD-DISC-ENTRY-INFO; + } + } + + grouping PL-PIFIB-SHOW-STATIC-POLICE-INFO { + description + "PL PIFIB SHOW STATIC POLICE INFO"; + leaf punt-reason { + type uint32; + description + "punt reason"; + } + leaf sid { + type uint32; + description + "sid"; + } + leaf flow-rate { + type uint32; + description + "flow rate"; + } + leaf burst-rate { + type uint32; + description + "burst rate"; + } + leaf accepted { + type uint64; + description + "accepted"; + } + leaf dropped { + type uint64; + description + "dropped"; + } + leaf punt-reason-string { + type yang:hex-string; + description + "punt reason string"; + } + leaf change-type { + type uint8; + description + "change type"; + } + } + + grouping PL-PIFIB-SHOW-STATIC-POLICE { + description + "Pre-IFIB platform specific punt reason data + structure"; + list static-info { + description + "Per punt reason info"; + uses PL-PIFIB-SHOW-STATIC-POLICE-INFO; + } + } + + grouping PL-PIFIB-POLICE-INFO { + description + "PL PIFIB POLICE INFO"; + leaf avgrate { + type uint32; + description + "avgrate"; + } + leaf burst { + type uint32; + description + "burst"; + } + leaf static-avgrate { + type uint32; + description + "static avgrate"; + } + leaf avgrate-type { + type uint32; + description + "avgrate type"; + } + leaf accepted-stats { + type uint64; + description + "accepted stats"; + } + leaf dropped-stats { + type uint64; + description + "dropped stats"; + } + leaf policer { + type uint32; + description + "policer"; + } + leaf iptos-value { + type uint8; + description + "iptos value"; + } + leaf change-type { + type uint8; + description + "change type"; + } + leaf acl-config { + type uint8; + description + "acl config"; + } + leaf acl-str { + type yang:hex-string; + description + "acl str"; + } + } + + grouping PL-PIFIB-SHOW-POLICE { + description + "Pre-IFIB platform specific police data structure"; + list police-info { + description + "Per flow type police info"; + uses PL-PIFIB-POLICE-INFO; + } + } + + grouping PL-PIFIB-USAGE-INFO { + description + "PL PIFIB USAGE INFO"; + leaf pipe-id { + type uint8; + description + "Pipe ID"; + } + leaf region { + type uint8; + description + "Region Type"; + } + leaf region-id { + type uint8; + description + "Region ID"; + } + leaf size { + type uint32; + description + "Maximum Number of Entries in the Region"; + } + leaf used { + type uint32; + description + "Used Number of Entries in the Region"; + } + } + + grouping PL-PIFIB-SHOW-USAGE { + description + "Pre-IFIB platform specific usage data structure"; + list usage-info { + description + "Per TCAM type usage info"; + uses PL-PIFIB-USAGE-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper.yang new file mode 100644 index 000000000..ea5888847 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platform-pifib-oper.yang @@ -0,0 +1,128 @@ +module Cisco-IOS-XR-platform-pifib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platform-pifib-oper"; + prefix platform-pifib-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-lpts-pre-ifib-oper { + prefix a1; + } + include Cisco-IOS-XR-platform-pifib-oper-sub1 { + revision-date 2019-04-05; + } + + 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 platform-pifib package operational data. + + This YANG module augments the + Cisco-IOS-XR-lpts-pre-ifib-oper + module with state data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-02-22 { + description + "Initial revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Usage-address-family { + type enumeration { + enum "ipv4" { + value 0; + description + "Ipv4 af"; + } + enum "ipv6" { + value 1; + description + "Ipv6 af"; + } + } + description + "Usage address family"; + } + + augment "/a1:lpts-pifib/a1:nodes/a1:node" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-lpts-pre-ifib-oper'"; + container hardware { + description + "Hardware specific"; + container usage-entries { + description + "Usage Table options"; + list usage-entry { + key "region-id"; + description + "Usage details"; + leaf region-id { + type Usage-address-family; + description + "Region ID"; + } + uses PL-PIFIB-SHOW-USAGE; + } + } + container police { + description + "Police details"; + uses PL-PIFIB-SHOW-POLICE; + } + container static-police { + description + "Static Police details"; + uses PL-PIFIB-SHOW-STATIC-POLICE; + } + container bfd { + description + "Bfd details"; + uses PL-PIFIB-SHOW-BFD-DISC-ENTRY; + } + container statistics { + description + "Hardware Entry type"; + uses PL-PIFIB-SHOW-STATS; + } + container index-entries { + description + "Hardware Entry options"; + list index-entry { + key "index"; + description + "Entry options"; + leaf index { + type uint32; + description + "Index"; + } + uses PL-PIFIB-SHOW-ENTRY; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1.yang new file mode 100644 index 000000000..93fd6af65 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1.yang @@ -0,0 +1,121 @@ +submodule Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1 { + belongs-to Cisco-IOS-XR-platforms-common-dnx-infra-oper { + prefix Cisco-IOS-XR-platforms-common-dnx-infra-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR platforms-common-dnx-infra package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dnx-mdb-profiles { + type enumeration { + enum "mdb-profile-not-applicable" { + value 0; + description + "MDB Profile Not Applicable"; + } + enum "mdb-profile-l3-max" { + value 1; + description + "MDB Profile L3MAX"; + } + enum "mdb-profile-l3-max-se" { + value 2; + description + "MDB Profile L3MAX-SE"; + } + enum "mdb-profile-l2-max" { + value 3; + description + "MDB Profile L2MAX"; + } + enum "mdb-profile-l2-max-se" { + value 4; + description + "MDB Profile L2MAX_SE"; + } + enum "mdb-profile-balanced" { + value 5; + description + "MDB Profile BALANCED"; + } + enum "mdb-profile-max" { + value 6; + description + "MDB Profile Invalid"; + } + } + description + "Dnx mdb profiles"; + } + + typedef Dnx-npu-op-mode { + type enumeration { + enum "compatibility" { + description + "NPU operating mode - Compatibility mode"; + } + enum "native" { + description + "NPU operating mode - Native mode"; + } + enum "not-applicable" { + description + "NPU operating mode - Not Applicable"; + } + } + description + "Dnx npu op mode"; + } + + grouping DNX-MDB-SCALE-PROFILE-ST { + description + "DNX MDB SCALE PROFILE ST"; + leaf mdb-scale-profile { + type Dnx-mdb-profiles; + description + "mdb scale profile configured/derived on the + system"; + } + } + + grouping DNX-NPU-OP-MODE-ST { + description + "DNX NPU OP MODE ST"; + leaf npu-op-mode { + type Dnx-npu-op-mode; + description + "NPU operating mode - native or compatability + mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper.yang new file mode 100644 index 000000000..c66e3ae1d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-dnx-infra-oper.yang @@ -0,0 +1,61 @@ +module Cisco-IOS-XR-platforms-common-dnx-infra-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platforms-common-dnx-infra-oper"; + prefix platforms-common-dnx-infra-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-platforms-common-dnx-infra-oper-sub1 { + revision-date 2019-04-05; + } + + 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 platforms-common-dnx-infra package operational data. + + This module contains definitions + for the following management objects: + hw-module-profile: hw-mod profile info + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container hw-module-profile { + config false; + description + "hw-mod profile info"; + container npu-operating-mode { + description + "NPU operating mode - native or compatability + mode"; + uses DNX-NPU-OP-MODE-ST; + } + container mdb-scale-profile { + description + "mdb scale profile configured on the system"; + uses DNX-MDB-SCALE-PROFILE-ST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-tams-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-tams-act.yang new file mode 100644 index 000000000..ec7e845ba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-common-tams-act.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-platforms-common-tams-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platforms-common-tams-act"; + prefix platforms-common-tams-act; + + 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 action package configuration. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Made the location input leaf mandatory for all RPCs."; + semver:module-version "2.0.0"; + } + revision 2010-10-01 { + description + "Intial revesion"; + semver:module-version "1.0.0"; + } + + rpc tam-app-data-clean-backup-start { + description + "To start clean appdb then backup"; + input { + leaf location { + type string; + mandatory true; + description + "XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } + rpc tam-app-data-restore-start { + description + "To start the appdb restore"; + input { + leaf location { + type string; + mandatory true; + description + "XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-oper.yang new file mode 100644 index 000000000..b5454dcd7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-oper.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-platforms-ofa-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platforms-ofa-oper"; + prefix platforms-ofa-oper; + + 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 platforms-ofa package operational data. + + This module contains definitions + for the following management objects: + ofa: OFA Data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-10 { + description + "Added task-id"; + semver:module-version "1.0.1"; + } + revision 2020-06-25 { + description + "Updated task-name"; + semver:module-version "1.0.1"; + } + revision 2019-12-14 { + description + "Updated date for ofa yang path"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ofa { + config false; + description + "OFA Data"; + container stats { + description + "OFA Stats Data"; + container nodes { + description + "OFA data for available nodes"; + list node { + key "node-name"; + description + "OFA operational data for a particular node"; + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1.yang new file mode 100644 index 000000000..6ca490dce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1.yang @@ -0,0 +1,351 @@ +submodule Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1 { + belongs-to Cisco-IOS-XR-platforms-ofa-table-stats-oper { + prefix Cisco-IOS-XR-platforms-ofa-table-stats-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR platforms-ofa-table-stats package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-12 { + description + "Removal of olist, mcolist, rpfif, ipmcfhop, ipmcmergedolist tidl objects IosSetYangSchemaRev Cisco-IOS-XR-platforms-ofa-table-stats-oper + 2021-07-07 + Added Quaratine DB counters to ofa table stats"; + semver:module-version "4.0.0"; + } + revision 2020-06-19 { + description + "Bwalk Error Counters IosSetYangSchemaRev Cisco-IOS-XR-platforms-ofa-table-stats-oper"; + semver:module-version "3.0.0"; + } + revision 2019-12-14 { + description + "Added the Yang Model for ofa sw resources"; + semver:module-version "1.1.0"; + } + revision 2019-06-06 { + description + "Added the Yang Model for ofa sw resources"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Crud-scope { + type enumeration { + enum "ofa-display-per-npu-crud-counter-s" { + value 0; + description + "ofa display per npu crud counter s"; + } + enum "ofa-display-global-crud-counter-s" { + value 1; + description + "ofa display global crud counter s"; + } + } + description + "HW CRUD COUNTERS SCOPE"; + } + + grouping OFA-USER-DEFINED-STATS-VALUE { + description + "Content of user defined stats"; + leaf npu-id { + type uint32; + description + "NPU ID for which stats are present"; + } + leaf value { + type uint64; + description + "Value of the stats"; + } + leaf timestamp { + type uint64; + description + "Timestamp value of the stats"; + } + } + + grouping OFA-USER-DEFINED-STATS { + description + "User defined stats information"; + leaf description { + type string { + length "0..256"; + } + description + "Description to print for each user defined stats"; + } + list user-defined-stats-value { + description + "Per npu content of each user defined stats"; + uses OFA-USER-DEFINED-STATS-VALUE; + } + } + + grouping OFA-SYSDB-GLOBAL-CRUD-STATS-ST { + description + "OFA SYSDB GLOBAL CRUD STATS ST"; + leaf create-hw-fail { + type uint64; + description + "Number of failed create requests in the hw - + global scope"; + } + leaf update-hw-fail { + type uint64; + description + "Number of failed update requests in the hw - + global scope"; + } + leaf delete-hw-fail { + type uint64; + description + "Number of failed delete requests in the hw - + global scope"; + } + } + + grouping OFA-SYSDB-NPU-CRUD-STATS-ST { + description + "OFA SYSDB NPU CRUD STATS ST"; + leaf npu-id { + type uint32; + description + "NPU id of the current stats instance"; + } + leaf create-hw-fail { + type uint32; + description + "Number of failed create requests in the hw - per + NPU scope"; + } + leaf update-hw-fail { + type uint32; + description + "Number of failed update requests in the hw per + NPU scope"; + } + leaf delete-hw-fail { + type uint32; + description + "Number of failed delete requests in the hw per + NPU scope"; + } + } + + grouping OFA-SYSDB-NPU-CRUD-LIST { + description + "OFA SYSDB NPU CRUD LIST"; + list ofa-sysdb-npu-crud { + description + "ofa sysdb npu crud"; + uses OFA-SYSDB-NPU-CRUD-STATS-ST; + } + } + + grouping UNION-HW-CRUD-COUNTER-S { + description + "UNION HW CRUD COUNTERS"; + container npu-crud-list { + when "../discriminator = 'ofa-display-per-npu-crud-counter-s'" { + description + "../discriminator = + 'OFA_DISPLAY_PER_NPU_CRUD_COUNTERS'"; + } + description + "npu crud list"; + uses OFA-SYSDB-NPU-CRUD-LIST; + } + container global-crud-st { + when "../discriminator = 'ofa-display-global-crud-counter-s'" { + description + "../discriminator = + 'OFA_DISPLAY_GLOBAL_CRUD_COUNTERS'"; + } + description + "global crud st"; + uses OFA-SYSDB-GLOBAL-CRUD-STATS-ST; + } + leaf discriminator { + type Crud-scope; + description + "discriminator"; + } + } + + grouping OFA-SYSDB-TABLE-RESOURCE { + description + "OFA SYSDB TABLE RESOURCE"; + container hw-crud-counters { + description + "Global / Per NPU HW CRUD counters"; + uses UNION-HW-CRUD-COUNTER-S; + } + leaf table-id { + type uint32; + description + "Table id"; + } + leaf name { + type string { + length "0..64"; + } + description + "Table name"; + } + leaf is-global { + type boolean; + description + "Is Table scope global"; + } + leaf display-per-npu { + type uint8; + description + "Is CRUD stats' display scope per NPU or global"; + } + leaf num-npus { + type uint32; + description + "Number of NPUs"; + } + leaf table-specific-list { + type string; + description + "Table specific data"; + } + leaf create-req { + type uint64; + description + "Number of create requests"; + } + leaf delete-req { + type uint64; + description + "Number of delete requests"; + } + leaf update-req { + type uint64; + description + "Number of update requests"; + } + leaf get-req { + type uint64; + description + "Number of get requests"; + } + leaf err-ref-resolve { + type uint32; + description + "OFA Error - Resolve Reference"; + } + leaf err-db-notfound { + type uint32; + description + "OFA Error - Not found in DB"; + } + leaf err-db-exists { + type uint32; + description + "OFA Error - Entry exists in DB"; + } + leaf err-db-nomem { + type uint32; + description + "OFA Error - Out of memory"; + } + leaf err-id-reserve { + type uint32; + description + "OFA Error - Reserve ID"; + } + leaf err-id-release { + type uint32; + description + "OFA Error - Release ID"; + } + leaf err-id-update { + type uint32; + description + "OFA Error - Update ID"; + } + leaf retry-count { + type uint32; + description + "Num retry attempts in update"; + } + leaf err-recovery { + type uint32; + description + "OFA object recovers from error"; + } + leaf bwalk-error { + type uint32; + description + "Table had error in child during bwalk"; + } + leaf bwalk-update { + type uint64; + description + "Number of bwalk update requests"; + } + leaf bwalk-skipped { + type uint64; + description + "Number of bwalk requests skipped"; + } + leaf quarantine-db-insert { + type uint64; + description + "Number of inserts into Quarantine DB"; + } + leaf quarantine-db-delete { + type uint64; + description + "Number of deletes from Quarantine DB"; + } + } + + grouping OFA-NPD-SYSDB-TABLE-RESOURCE { + description + "Table resources"; + container tbl-resources-stats { + description + "Generic OFA infra counters"; + uses OFA-SYSDB-TABLE-RESOURCE; + } + list user-defined-stat { + description + "Platform specific user defined stats"; + uses OFA-USER-DEFINED-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper.yang new file mode 100644 index 000000000..77b279d5b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-platforms-ofa-table-stats-oper.yang @@ -0,0 +1,1829 @@ +module Cisco-IOS-XR-platforms-ofa-table-stats-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-platforms-ofa-table-stats-oper"; + prefix platforms-ofa-table-stats-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-platforms-ofa-table-stats-oper-sub1 { + revision-date 2022-09-12; + } + + 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 platforms-ofa-table-stats package operational data. + + This module contains definitions + for the following management objects: + ofa: OFA Data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-12 { + description + "Removal of olist, mcolist, rpfif, ipmcfhop, ipmcmergedolist tidl objects IosSetYangSchemaRev Cisco-IOS-XR-platforms-ofa-table-stats-oper + 2021-07-07 + Added Quaratine DB counters to ofa table stats"; + semver:module-version "4.0.0"; + } + revision 2020-06-19 { + description + "Bwalk Error Counters IosSetYangSchemaRev Cisco-IOS-XR-platforms-ofa-table-stats-oper"; + semver:module-version "3.0.0"; + } + revision 2019-12-14 { + description + "Added the Yang Model for ofa sw resources"; + semver:module-version "1.1.0"; + } + revision 2019-06-06 { + description + "Added the Yang Model for ofa sw resources"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ofa-table { + type enumeration { + enum "test-if" { + value 0; + description + "test if"; + } + enum "test-if-with-create-reject" { + value 1; + description + "testifwithcreatereject"; + } + enum "test-nh" { + value 2; + description + "test nh"; + } + enum "test-global-discard" { + value 3; + description + "testglobaldiscard"; + } + enum "test-nhg" { + value 4; + description + "test nhg"; + } + enum "test-rt" { + value 5; + description + "test rt"; + } + enum "test-dynhg" { + value 6; + description + "testdynhg"; + } + enum "test-async-nhg" { + value 7; + description + "testasyncnhg"; + } + enum "test-async-nhgstats" { + value 8; + description + "testasyncnhgstats"; + } + enum "test-ip-punt-policy" { + value 9; + description + "test ippuntpolicy"; + } + enum "test-punt" { + value 10; + description + "test punt"; + } + enum "test-punt-policy-stats" { + value 11; + description + "testpuntpolicystats"; + } + enum "test-async-update" { + value 12; + description + "testasyncupdate"; + } + enum "test-o-fast-ats" { + value 13; + description + "testofastats"; + } + enum "test-o-fast-ats1" { + value 14; + description + "testofastats1"; + } + enum "test-o-fast-ats2" { + value 15; + description + "testofastats2"; + } + enum "test-dpastats1" { + value 16; + description + "testdpastats1"; + } + enum "test-dpastats2" { + value 17; + description + "testdpastats2"; + } + enum "test-srvgrid" { + value 18; + description + "testsrvgrid"; + } + enum "test-ddel-q" { + value 19; + description + "test ddel q"; + } + enum "test-mco-list" { + value 20; + description + "testmcolist"; + } + enum "test-syncmco-list" { + value 21; + description + "testsyncmcolist"; + } + enum "test-syncmctblstats" { + value 22; + description + "testsyncmctblstats"; + } + enum "test-dddp" { + value 23; + description + "testdddp"; + } + enum "test-grid1" { + value 24; + description + "testgrid1"; + } + enum "test-ssm" { + value 25; + description + "testssm"; + } + enum "test-encap-mgr" { + value 26; + description + "testencapmgr"; + } + enum "test-mplsrte" { + value 27; + description + "testmplsrte"; + } + enum "sys" { + value 28; + description + "sys"; + } + enum "npu" { + value 29; + description + "npu"; + } + enum "npu-host-port" { + value 30; + description + "npuhostport"; + } + enum "npuhwid" { + value 31; + description + "npuhwid"; + } + enum "optics-port" { + value 32; + description + "opticsport"; + } + enum "gi-port" { + value 33; + description + "giport"; + } + enum "l1-port" { + value 34; + description + "l1port"; + } + enum "mac-port" { + value 35; + description + "macport"; + } + enum "l2-port" { + value 36; + description + "l2port"; + } + enum "eth-port" { + value 37; + description + "ethport"; + } + enum "eth-ports-tats" { + value 38; + description + "ethportstats"; + } + enum "l2intf" { + value 39; + description + "l2intf"; + } + enum "l2if" { + value 40; + description + "l2if"; + } + enum "mplspwe-port" { + value 41; + description + "mplspweport"; + } + enum "l2xc" { + value 42; + description + "l2xc"; + } + enum "l2vpnstats" { + value 43; + description + "l2vpnstats"; + } + enum "l1-ports-tats" { + value 44; + description + "l1portstats"; + } + enum "mac-ports-tats" { + value 45; + description + "macportstats"; + } + enum "l3intf" { + value 46; + description + "l3intf"; + } + enum "l3if" { + value 47; + description + "l3if"; + } + enum "l3intfrxstats" { + value 48; + description + "l3intfrxstats"; + } + enum "ip-route" { + value 49; + description + "iproute"; + } + enum "ip6-route" { + value 50; + description + "ip6route"; + } + enum "punt-policy-stats" { + value 51; + description + "puntpolicystats"; + } + enum "lpts-policy-stats" { + value 52; + description + "lptspolicystats"; + } + enum "tep" { + value 53; + description + "tep"; + } + enum "ip-punt-policy" { + value 54; + description + "ippuntpolicy"; + } + enum "ip6-punt-policy" { + value 55; + description + "ip6puntpolicy"; + } + enum "iplpts-policy" { + value 56; + description + "iplptspolicy"; + } + enum "ip6lpts-policy" { + value 57; + description + "ip6lptspolicy"; + } + enum "isis-punt-policy" { + value 58; + description + "isispuntpolicy"; + } + enum "isislpts-policy" { + value 59; + description + "isislptspolicy"; + } + enum "nh-group" { + value 60; + description + "nhgroup"; + } + enum "ipnh-group" { + value 61; + description + "ipnhgroup"; + } + enum "ip6nh-group" { + value 62; + description + "ip6nhgroup"; + } + enum "ipnh" { + value 63; + description + "ipnh"; + } + enum "ip6nh" { + value 64; + description + "ip6nh"; + } + enum "macllnh" { + value 65; + description + "macllnh"; + } + enum "ipvrf" { + value 66; + description + "ipvrf"; + } + enum "vrfid" { + value 67; + description + "vrfid"; + } + enum "mplsnh" { + value 68; + description + "mplsnh"; + } + enum "lspnh" { + value 69; + description + "lspnh"; + } + enum "encap-mgr" { + value 70; + description + "encapmgr"; + } + enum "mpls-label" { + value 71; + description + "mplslabel"; + } + enum "punt" { + value 72; + description + "punt"; + } + enum "punt-police-r" { + value 73; + description + "puntpolicer"; + } + enum "lpts-police-r" { + value 74; + description + "lptspolicer"; + } + enum "punt-lpts-police-r" { + value 75; + description + "puntlptspolicer"; + } + enum "punt-stats" { + value 76; + description + "puntstats"; + } + enum "tm-port" { + value 77; + description + "tmport"; + } + enum "span-session" { + value 78; + description + "spansession"; + } + enum "police-rstats" { + value 79; + description + "policerstats"; + } + enum "tm-ports-tats" { + value 80; + description + "tmportstats"; + } + enum "voq-grp" { + value 81; + description + "voqgrp"; + } + enum "l3intftxstats" { + value 82; + description + "l3intftxstats"; + } + enum "mplstetxstats" { + value 83; + description + "mplstetxstats"; + } + enum "mplslblstats" { + value 84; + description + "mplslblstats"; + } + enum "police-r" { + value 85; + description + "policer"; + } + enum "l2intfrxstats" { + value 86; + description + "l2intfrxstats"; + } + enum "l2intftxstats" { + value 87; + description + "l2intftxstats"; + } + enum "pbr-tt-ipv4" { + value 88; + description + "pbr tt ipv4"; + } + enum "pbr-tt-ipv6" { + value 89; + description + "pbr tt ipv6"; + } + enum "bfdhwoff" { + value 90; + description + "bfdhwoff"; + } + enum "bfdoff" { + value 91; + description + "bfdoff"; + } + enum "bfdoffstats" { + value 92; + description + "bfdoffstats"; + } + enum "global" { + value 93; + description + "global"; + } + enum "lag-port" { + value 94; + description + "lagport"; + } + enum "agg-port" { + value 95; + description + "aggport"; + } + enum "agg-member" { + value 96; + description + "aggmember"; + } + enum "qos-profile" { + value 97; + description + "qosprofile"; + } + enum "acl-profile" { + value 98; + description + "acl profile"; + } + enum "tmrate-profile" { + value 99; + description + "tmrateprofile"; + } + enum "ipacl" { + value 100; + description + "ipacl"; + } + enum "ip6acl" { + value 101; + description + "ip6acl"; + } + enum "sched-tree" { + value 102; + description + "schedtree"; + } + enum "tmcos" { + value 103; + description + "tmcos"; + } + enum "statsagg" { + value 104; + description + "statsagg"; + } + enum "nhprotect" { + value 105; + description + "nhprotect"; + } + enum "sampler" { + value 106; + description + "sampler"; + } + enum "l2qos" { + value 107; + description + "l2qos"; + } + enum "peer-qos" { + value 108; + description + "peerqos"; + } + enum "ipqos" { + value 109; + description + "ipqos"; + } + enum "ip6qos" { + value 110; + description + "ip6qos"; + } + enum "mplsqos" { + value 111; + description + "mplsqos"; + } + enum "qos-group" { + value 112; + description + "qosgroup"; + } + enum "qosid" { + value 113; + description + "qosid"; + } + enum "extlif" { + value 114; + description + "extlif"; + } + enum "elif" { + value 115; + description + "elif"; + } + enum "ingaclstats" { + value 116; + description + "ingaclstats"; + } + enum "egraclstats" { + value 117; + description + "egraclstats"; + } + enum "edpl" { + value 118; + description + "edpl"; + } + enum "l2protect" { + value 119; + description + "l2protect"; + } + enum "sat" { + value 120; + description + "sat"; + } + enum "satstats" { + value 121; + description + "satstats"; + } + enum "cfmoam-profile-def" { + value 122; + description + "cfmoamprofiledef"; + } + enum "cfmmaid" { + value 123; + description + "cfmmaid"; + } + enum "cfmdefmps" { + value 124; + description + "cfmdefmps"; + } + enum "cfmofflmep" { + value 125; + description + "cfmofflmep"; + } + enum "cfmoffrmep" { + value 126; + description + "cfmoffrmep"; + } + enum "cfmnonoff" { + value 127; + description + "cfmnonoff"; + } + enum "cfmhwoffrxstats" { + value 128; + description + "cfmhwoffrxstats"; + } + enum "cfmnonoff-load" { + value 129; + description + "cfmnonoffload"; + } + enum "cfm-default-s" { + value 130; + description + "cfmdefaults"; + } + enum "cfmmntassocid" { + value 131; + description + "cfmmntassocid"; + } + enum "ipmc-route" { + value 132; + description + "ipmcroute"; + } + enum "l2ipmc-route" { + value 133; + description + "l2ipmcroute"; + } + enum "ipmco-list" { + value 134; + description + "ipmcolist"; + } + enum "l2mco-list" { + value 135; + description + "l2mcolist"; + } + enum "meshmc" { + value 136; + description + "meshmc"; + } + enum "l2-bridge" { + value 137; + description + "l2bridge"; + } + enum "l2-bridge-port" { + value 138; + description + "l2bridgeport"; + } + enum "l2-bridge-mac" { + value 139; + description + "l2bridgemac"; + } + enum "l2brmac" { + value 140; + description + "l2brmac"; + } + enum "ip-tunnel-decap" { + value 141; + description + "iptunneldecap"; + } + enum "l2vlan-range" { + value 142; + description + "l2vlanrange"; + } + enum "ip-tunnel-encap" { + value 143; + description + "iptunnelencap"; + } + enum "iptnl-encap" { + value 144; + description + "iptnlencap"; + } + enum "iptnl-encap-vni" { + value 145; + description + "iptnlencapvni"; + } + enum "iptnldecap" { + value 146; + description + "iptnldecap"; + } + enum "iptnldecapvni" { + value 147; + description + "iptnldecapvni"; + } + enum "iptnlnh" { + value 148; + description + "iptnlnh"; + } + enum "rawget" { + value 149; + description + "rawget"; + } + enum "ip6mc-route" { + value 150; + description + "ip6mcroute"; + } + enum "ip6mc-comp-grp" { + value 151; + description + "ip6mc comp grp"; + } + enum "l2evpnact-remote-peer-id" { + value 152; + description + "l2evpnactremotepeerid"; + } + enum "l2evpnact-local-shl" { + value 153; + description + "l2evpnactlocalshl"; + } + enum "l2evpnact-remote-shl" { + value 154; + description + "l2evpnactremoteshl"; + } + enum "evpn-iml-range" { + value 155; + description + "evpn imlrange"; + } + enum "l2-bridge-o-list" { + value 156; + description + "l2bridgeolist"; + } + enum "l2acl" { + value 157; + description + "l2acl"; + } + enum "l2evpn-nh" { + value 158; + description + "l2evpn nh"; + } + enum "l2-bridge-port-sc" { + value 159; + description + "l2bridgeport sc"; + } + enum "l3intfmctxstats" { + value 160; + description + "l3intfmctxstats"; + } + enum "tidl-sample" { + value 161; + description + "tidl sample"; + } + enum "tidl-ref-sample" { + value 162; + description + "tidl ref sample"; + } + enum "ipacl-prefix" { + value 163; + description + "ipaclprefix"; + } + enum "ip6acl-prefix" { + value 164; + description + "ip6aclprefix"; + } + enum "ipacl-port" { + value 165; + description + "ipaclport"; + } + enum "scaleacl" { + value 166; + description + "scaleacl"; + } + enum "bundle-swoff" { + value 167; + description + "bundle swoff"; + } + enum "mcidswoff" { + value 168; + description + "mcidswoff"; + } + enum "dest-map" { + value 169; + description + "destmap"; + } + enum "l2evpnact-local-shlstats" { + value 170; + description + "l2evpnactlocalshlstats"; + } + enum "test-hidden" { + value 171; + description + "testhidden"; + } + enum "test-local" { + value 172; + description + "testlocal"; + } + enum "test-repeated" { + value 173; + description + "testrepeated"; + } + enum "limd" { + value 174; + description + "limd"; + } + enum "litap" { + value 175; + description + "litap"; + } + enum "l3ifstats" { + value 176; + description + "l3ifstats"; + } + enum "mplsstats" { + value 177; + description + "mplsstats"; + } + enum "sr-test-ats" { + value 178; + description + "srtestats"; + } + enum "srteifstats" { + value 179; + description + "srteifstats"; + } + enum "exception-nh" { + value 180; + description + "exceptionnh"; + } + enum "srv6-global" { + value 181; + description + "srv6 global"; + } + enum "srv6sid" { + value 182; + description + "srv6sid"; + } + enum "srv6nhstats" { + value 183; + description + "srv6nhstats"; + } + enum "srv6nh" { + value 184; + description + "srv6nh"; + } + enum "sr6sid" { + value 185; + description + "sr6sid"; + } + enum "sr6nh" { + value 186; + description + "sr6nh"; + } + enum "sr6-global" { + value 187; + description + "sr6 global"; + } + enum "redirect-vrf" { + value 188; + description + "redirectvrf"; + } + enum "test-xtf" { + value 189; + description + "test xtf"; + } + enum "ippbr" { + value 190; + description + "ippbr"; + } + enum "ippbrstats" { + value 191; + description + "ippbrstats"; + } + enum "mpls-mdt-bud" { + value 192; + description + "mplsmdtbud"; + } + enum "mpls-label-rxstats" { + value 193; + description + "mplslabelrxstats"; + } + enum "l2mac-static" { + value 194; + description + "l2macstatic"; + } + enum "dot1x" { + value 195; + description + "dot1x"; + } + enum "iprte" { + value 196; + description + "iprte"; + } + enum "ip6rte" { + value 197; + description + "ip6rte"; + } + enum "llnh" { + value 198; + description + "llnh"; + } + enum "urpfintf" { + value 199; + description + "urpfintf"; + } + enum "ipmcrxstats" { + value 200; + description + "ipmcrxstats"; + } + enum "mplsrte" { + value 201; + description + "mplsrte"; + } + enum "protectnh" { + value 202; + description + "protectnh"; + } + enum "ipllnh" { + value 203; + description + "ipllnh"; + } + enum "ip6llnh" { + value 204; + description + "ip6llnh"; + } + enum "macnh" { + value 205; + description + "macnh"; + } + enum "qos-match-stats" { + value 206; + description + "qosmatchstats"; + } + enum "ofal2xc" { + value 207; + description + "ofal2xc"; + } + enum "ofamplspwe-port" { + value 208; + description + "ofamplspweport"; + } + enum "pwenh" { + value 209; + description + "pwenh"; + } + enum "pwenh-group" { + value 210; + description + "pwenhgroup"; + } + enum "ipmcrte" { + value 211; + description + "ipmcrte"; + } + enum "ip6mcrte" { + value 212; + description + "ip6mcrte"; + } + enum "ipmcr-test-ats" { + value 213; + description + "ipmcrtestats"; + } + enum "ip6mcr-test-ats" { + value 214; + description + "ip6mcrtestats"; + } + enum "transport-nh" { + value 215; + description + "transportnh"; + } + enum "port-range" { + value 216; + description + "portrange"; + } + enum "mcid" { + value 217; + description + "mcid"; + } + enum "mc-gid" { + value 218; + description + "mc gid"; + } + enum "mcgidole" { + value 219; + description + "mcgidole"; + } + enum "test-da" { + value 220; + description + "testda"; + } + enum "test-ca" { + value 221; + description + "testca"; + } + enum "test-ba" { + value 222; + description + "testba"; + } + enum "test-aa" { + value 223; + description + "testaa"; + } + enum "test-async-aa" { + value 224; + description + "testasyncaa"; + } + enum "test-reliable-notif" { + value 225; + description + "testreliablenotif"; + } + enum "test-de" { + value 226; + description + "testde"; + } + enum "test-ce" { + value 227; + description + "testce"; + } + enum "test-be" { + value 228; + description + "testbe"; + } + enum "test-db" { + value 229; + description + "testdb"; + } + enum "test-cb" { + value 230; + description + "testcb"; + } + enum "test-bb" { + value 231; + description + "testbb"; + } + enum "test-df" { + value 232; + description + "testdf"; + } + enum "test-cf" { + value 233; + description + "testcf"; + } + enum "test-bf" { + value 234; + description + "testbf"; + } + enum "test-af" { + value 235; + description + "testaf"; + } + enum "test-cz" { + value 236; + description + "testcz"; + } + enum "test-ax" { + value 237; + description + "testax"; + } + enum "test-ay" { + value 238; + description + "testay"; + } + enum "test-ef" { + value 239; + description + "testef"; + } + enum "test-ff" { + value 240; + description + "testff"; + } + enum "test-npurc" { + value 241; + description + "testnpurc"; + } + enum "test-gf" { + value 242; + description + "testgf"; + } + enum "test-eastwestscheduling" { + value 243; + description + "testeastwestscheduling"; + } + enum "test-transnh" { + value 244; + description + "testtransnh"; + } + enum "test-eth-port" { + value 245; + description + "testethport"; + } + enum "test-eastwest" { + value 246; + description + "testeastwest"; + } + enum "test-ifstats" { + value 247; + description + "testifstats"; + } + enum "test-async-oor" { + value 248; + description + "testasyncoor"; + } + enum "test-async-db" { + value 249; + description + "testasyncdb"; + } + enum "test-syncmcas-too-r" { + value 250; + description + "testsyncmcastoor"; + } + enum "test-syncdeviceoor" { + value 251; + description + "testsyncdeviceoor"; + } + enum "test-az" { + value 252; + description + "testaz"; + } + enum "test-by" { + value 253; + description + "testby"; + } + enum "police-r-group" { + value 254; + description + "policergroup"; + } + enum "meter-profile" { + value 255; + description + "meterprofile"; + } + enum "acl-mirror" { + value 256; + description + "acl mirror"; + } + enum "meter-action-profile" { + value 257; + description + "meteractionprofile"; + } + enum "voqrm" { + value 258; + description + "voqrm"; + } + enum "port-wfq-profile" { + value 259; + description + "portwfqprofile"; + } + enum "brmac" { + value 260; + description + "brmac"; + } + enum "br-static-mac" { + value 261; + description + "brstaticmac"; + } + enum "xconnect" { + value 262; + description + "xconnect"; + } + enum "bridge" { + value 263; + description + "bridge"; + } + enum "pwe-port" { + value 264; + description + "pweport"; + } + enum "lsmprotect" { + value 265; + description + "lsmprotect"; + } + enum "monitor-session" { + value 266; + description + "monitorsession"; + } + enum "monitor-session-stats" { + value 267; + description + "monitorsessionstats"; + } + enum "mplsmcast" { + value 268; + description + "mplsmcast"; + } + enum "l2ifstats" { + value 269; + description + "l2ifstats"; + } + enum "member-list" { + value 270; + description + "memberlist"; + } + enum "test-oor" { + value 271; + description + "testoor"; + } + enum "hwre-source-s-oor" { + value 272; + description + "hwresources oor"; + } + enum "qospfcstats" { + value 273; + description + "qospfcstats"; + } + enum "pfctc" { + value 274; + description + "pfctc"; + } + enum "pfc-watchdog" { + value 275; + description + "pfc watchdog"; + } + enum "qos-shared" { + value 276; + description + "qosshared"; + } + enum "ecntxstats" { + value 277; + description + "ecntxstats"; + } + enum "tm-remote-credit" { + value 278; + description + "tmremotecredit"; + } + enum "ipmcole" { + value 279; + description + "ipmcole"; + } + enum "ip6mcole" { + value 280; + description + "ip6mcole"; + } + enum "pbr" { + value 281; + description + "pbr"; + } + enum "pbrstats" { + value 282; + description + "pbrstats"; + } + enum "punt-stormcontrol" { + value 283; + description + "puntstormcontrol"; + } + enum "ip6mcrxstats" { + value 284; + description + "ip6mcrxstats"; + } + enum "ipmctxintf" { + value 285; + description + "ipmctxintf"; + } + enum "ipmc-mdt-encap" { + value 286; + description + "ipmcmdtencap"; + } + enum "ipmc-mdt-decap" { + value 287; + description + "ipmcmdtdecap"; + } + enum "op2tap" { + value 288; + description + "op2tap"; + } + enum "mplsole" { + value 289; + description + "mplsole"; + } + enum "syncrpc" { + value 290; + description + "syncrpc"; + } + enum "tnlstats" { + value 291; + description + "tnlstats"; + } + enum "l2dhcp" { + value 292; + description + "l2dhcp"; + } + enum "pbrsbf" { + value 293; + description + "pbrsbf"; + } + enum "statsrpc" { + value 294; + description + "statsrpc"; + } + enum "oglpts" { + value 295; + description + "oglpts"; + } + enum "oglpts-prefix" { + value 296; + description + "oglptsprefix"; + } + enum "og6lpts-prefix" { + value 297; + description + "og6lptsprefix"; + } + enum "stormcontrol" { + value 298; + description + "stormcontrol"; + } + enum "acl-police-r" { + value 299; + description + "aclpolicer"; + } + enum "acl-police-rstats" { + value 300; + description + "aclpolicerstats"; + } + enum "aclkey-profile" { + value 301; + description + "aclkeyprofile"; + } + enum "acl-action-profile" { + value 302; + description + "aclactionprofile"; + } + enum "dummytable" { + value 303; + description + "dummytable"; + } + enum "ip-sub" { + value 304; + description + "ipsub"; + } + enum "test-silverfoxsync" { + value 305; + description + "testsilverfoxsync"; + } + enum "test-statsreplication" { + value 306; + description + "teststatsreplication"; + } + enum "dot1x-mac" { + value 307; + description + "dot1x mac"; + } + enum "mpa" { + value 308; + description + "mpa"; + } + enum "featacl-group" { + value 309; + description + "feataclgroup"; + } + enum "l2ipmcrte" { + value 310; + description + "l2ipmcrte"; + } + enum "l2ip6mcrte" { + value 311; + description + "l2ip6mcrte"; + } + enum "l2ipmcole" { + value 312; + description + "l2ipmcole"; + } + enum "l2ip6mcole" { + value 313; + description + "l2ip6mcole"; + } + enum "pmhwoff" { + value 314; + description + "pmhwoff"; + } + enum "eoam" { + value 315; + description + "eoam"; + } + enum "evi" { + value 316; + description + "evi"; + } + enum "evi-sh-tunnel" { + value 317; + description + "evi sh tunnel"; + } + enum "l2vni" { + value 318; + description + "l2vni"; + } + enum "l2vni-mbr" { + value 319; + description + "l2vni mbr"; + } + enum "l2ipul" { + value 320; + description + "l2ipul"; + } + enum "evpn-ole" { + value 321; + description + "evpn ole"; + } + enum "evpn-shg" { + value 322; + description + "evpn shg"; + } + enum "l2vpn-mh-n-hop" { + value 323; + description + "l2vpn mh nhop"; + } + enum "msti" { + value 324; + description + "msti"; + } + enum "gil" { + value 325; + description + "gil"; + } + enum "pwhe" { + value 326; + description + "pwhe"; + } + enum "pwhe-port" { + value 327; + description + "pwhe port"; + } + enum "l2ip6mc-route" { + value 328; + description + "l2ip6mcroute"; + } + enum "pbr-vrf-redirect" { + value 329; + description + "pbr vrfredirect"; + } + enum "srv6-pt-intf" { + value 330; + description + "srv6 pt intf"; + } + enum "test-sdkgetopt" { + value 331; + description + "testsdkgetopt"; + } + enum "gi-list" { + value 332; + description + "gilist"; + } + enum "gi-member" { + value 333; + description + "gimember"; + } + enum "test-async-barrier" { + value 334; + description + "testasyncbarrier"; + } + enum "test-async-barrier-legacy" { + value 335; + description + "testasyncbarrierlegacy"; + } + enum "erpl2protect" { + value 336; + description + "erpl2protect"; + } + enum "test-silverfoxit" { + value 337; + description + "testsilverfoxit"; + } + enum "iptnldecapsaf" { + value 338; + description + "iptnldecapsaf"; + } + enum "l3intfrx-bgp-pastats" { + value 339; + description + "l3intfrxbgppastats"; + } + enum "ack-mark-er" { + value 340; + description + "ack marker"; + } + enum "fhrp" { + value 341; + description + "fhrp"; + } + enum "vxlanstats" { + value 342; + description + "vxlanstats"; + } + } + description + "Ofa table"; + } + + container ofa { + config false; + description + "OFA Data"; + container stats { + description + "OFA Stats Data"; + container nodes { + description + "OFA data for available nodes"; + list node { + key "node-name"; + description + "OFA operational data for a particular node"; + container table-datas { + description + "OFA Resources table"; + list table-data { + key "resource"; + description + "OFA Resources table"; + leaf resource { + type Ofa-table; + description + "Resource type"; + } + uses OFA-NPD-SYSDB-TABLE-RESOURCE; + } + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-cfg.yang new file mode 100644 index 000000000..0253da8c8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-cfg.yang @@ -0,0 +1,6776 @@ +module Cisco-IOS-XR-pmengine-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pmengine-cfg"; + prefix pmengine-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 pmengine package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-17 { + description + "Added config support for Host PM parameters in FEC layer. + 2021-10-06 + Support added for new counters in Optics layer."; + semver:module-version "4.0.0"; + } + revision 2021-07-09 { + description + "Support added for cem layer. Containers second30cem, minute15cem and hour24cem added. + 2021-04-26 + Support added for E1 controller. + 2021-02-24 + Support added for fc layer. Containers second30fc, minute15fc and hour24fc added."; + semver:module-version "3.1.0"; + } + revision 2020-04-17 { + description + "Added Instantaneous Q Margin in fec layer. + 2020-04-07 + Threshold and report config support provided for OTU PRBS layer parameters."; + semver:module-version "3.0.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Secyif-report { + type enumeration { + enum "report-if-inpkts-untagged" { + value 134217728; + description + "PM SECYIF if InPktsUntagged report"; + } + enum "report-if-inpkts-not-ag" { + value 134217729; + description + "PM SECYIF if InPktsNoTag report"; + } + enum "report-if-inpktsbadtag" { + value 134217730; + description + "PM SECYIF if InPktsBadTag report"; + } + enum "report-if-inpkts-unknown-sci" { + value 134217731; + description + "PM SECYIF if InPktsUnknownSCI report"; + } + enum "report-if-inpktsnosci" { + value 134217732; + description + "PM SECYIF if InPktsNoSCI report"; + } + enum "report-if-inpkts-overrun" { + value 134217733; + description + "PM SECYIF if InPktsOverrun report"; + } + enum "report-if-inoctets-validate-d" { + value 134217734; + description + "PM SECYIF if InOctetsValidated report"; + } + enum "report-if-inoctetsdecrypted" { + value 134217735; + description + "PM SECYIF if InOctetsDecrypted report"; + } + enum "report-if-outpkts-untagged" { + value 134217736; + description + "PM SECYIF if OutPktsUntagged report"; + } + enum "report-if-outpkts-too-long" { + value 134217737; + description + "PM SECYIF if OutPktsTooLong report"; + } + enum "report-if-outoctetsprotected" { + value 134217738; + description + "PM SECYIF if OutOctetsProtected report"; + } + enum "report-if-outoctetsencrypted" { + value 134217739; + description + "PM SECYIF if OutOctetsEncrypted report"; + } + } + description + "Secyif report"; + } + + typedef Gfp-report { + type enumeration { + enum "report-rx-bit-err" { + value 6291456; + description + "PM GFP rx bit err report"; + } + enum "report-rx-inv-typ" { + value 6291457; + description + "PM GFP rx inv type report"; + } + enum "report-rx-crc" { + value 6291458; + description + "PM GFP rx crc report"; + } + enum "report-rx-lfd" { + value 6291459; + description + "PM GFP rx lfd report"; + } + enum "report-rx-csf" { + value 6291460; + description + "PM GFP rx csf report"; + } + } + description + "Gfp report"; + } + + typedef Pcs-threshold { + type enumeration { + enum "thresh-bip" { + value 100663296; + description + "PM PCS Bip thresh"; + } + enum "thresh-frm-err" { + value 100663297; + description + "PM PCS frm-err thresh"; + } + enum "thresh-bad-sh" { + value 100663298; + description + "PM PCS bad-sh thresh"; + } + enum "thresh-es" { + value 100663299; + description + "PM PCS es thresh"; + } + enum "thresh-ses" { + value 100663300; + description + "PM PCS ses thresh"; + } + enum "thresh-uas" { + value 100663301; + description + "PM PCS uas thresh"; + } + enum "thresh-es-fe" { + value 100663302; + description + "PM PCS es-fe thresh"; + } + enum "thresh-ses-fe" { + value 100663303; + description + "PM PCS ses-fe thresh"; + } + enum "thresh-uas-fe" { + value 100663304; + description + "PM PCS uas-fe thresh"; + } + } + description + "Pcs threshold"; + } + + typedef Ho-vc-threshold { + type enumeration { + enum "thresh-eb" { + value 33554432; + description + "PM EB threshold"; + } + enum "thresh-es" { + value 33554433; + description + "PM ES threshold"; + } + enum "thresh-esr" { + value 33554434; + description + "PM ESR threshold"; + } + enum "thresh-ses" { + value 33554435; + description + "PM SES threshold"; + } + enum "thresh-sesr" { + value 33554436; + description + "PM SESR threshold"; + } + enum "thresh-bbe" { + value 33554437; + description + "PM BBE threshold"; + } + enum "thresh-bber" { + value 33554438; + description + "PM BBER threshold"; + } + enum "thresh-uass" { + value 33554439; + description + "PM UASS threshold"; + } + } + description + "Ho vc threshold"; + } + + typedef Ether-threshold { + type enumeration { + enum "thresh-rx-pkt" { + value 8388608; + description + "PM Ether rx pkt threshold"; + } + enum "thresh-rx-util" { + value 8388609; + description + "PM Ether rx util threshold"; + } + enum "thresh-tx-util" { + value 8388610; + description + "PM Ether tx util threshold"; + } + enum "thresh-stat-pkt" { + value 8388611; + description + "PM ether stat pkt threshold"; + } + enum "thresh-octet-stat" { + value 8388612; + description + "PM Ether octet stat threshold"; + } + enum "thresh-over-size-pkt" { + value 8388613; + description + "PM Ether oversize pkt threshold"; + } + enum "thresh-fcs-err" { + value 8388614; + description + "PMEther fcs error threshold"; + } + enum "thresh-long-frame-s" { + value 8388615; + description + "PM Ether long frames threshold"; + } + enum "thresh-jabber-stats" { + value 8388616; + description + "PM Ether jabber stats threshold"; + } + enum "thresh-64-octet" { + value 8388617; + description + "PM Ether 64 octet threshold"; + } + enum "thresh-65-127-octet" { + value 8388618; + description + "PM Ether 65 to 127 octet threshold"; + } + enum "thresh-128-255-octet" { + value 8388619; + description + "PM Ether 128 to 255 octet threshold"; + } + enum "thresh-256-511-octet" { + value 8388620; + description + "PM Ether 256 to 511 octet threshold"; + } + enum "thresh-512-1023-octet" { + value 8388621; + description + "PM Ether 512 to 1023 octet threshold"; + } + enum "thresh-1024-1518-octet" { + value 8388622; + description + "PM Ether 1024 to 1518 threshold"; + } + enum "thresh-in-ucast" { + value 8388623; + description + "PM Ether rx ucast threshold"; + } + enum "thresh-in-mcast" { + value 8388624; + description + "PM Ether rx mcast threshold"; + } + enum "thresh-in-bcast" { + value 8388625; + description + "PM Ether rx bcast threshold"; + } + enum "thresh-out-ucast" { + value 8388626; + description + "PM Ether tx ucast threshold"; + } + enum "thresh-out-mcast" { + value 8388627; + description + "PM Ether tx mcast threshold"; + } + enum "thresh-out-bcast" { + value 8388628; + description + "PM Ether tx bcast threshold"; + } + enum "thresh-tx-pkt" { + value 8388629; + description + "PM Ether tx pkt threshold"; + } + enum "thresh-ifin-error-s" { + value 8388630; + description + "PM ether ifIn errors threshold"; + } + enum "thresh-ifin-octets" { + value 8388631; + description + "PM ether ifInOctets threshold"; + } + enum "thresh-ether-stat-multicast-pkt" { + value 8388632; + description + "PM ether stat multicast pkt threshold"; + } + enum "thresh-ether-stat-broadcast-pkt" { + value 8388633; + description + "PM ether stat broadcast pkt threshold"; + } + enum "thresh-ether-stat-under-size-d-pkt" { + value 8388634; + description + "PM ether stat undersized pkt threshold"; + } + enum "thresh-out-octet" { + value 8388635; + description + "PM ether out octets threshold"; + } + enum "thresh-in-pause-frame" { + value 8388636; + description + "PM in pause frame threshold"; + } + enum "thresh-in-go-od-bytes" { + value 8388637; + description + "PM in good bytes threshold"; + } + enum "thresh-in-802-1q-frame-s" { + value 8388638; + description + "PM in 802_1 Q threshold"; + } + enum "thresh-in-pkts-1519-max-octets" { + value 8388639; + description + "PM in pkts 1519 max octets threshold"; + } + enum "thresh-in-go-od-pkts" { + value 8388640; + description + "PM in good pkts threshold"; + } + enum "thresh-in-drop-overrun" { + value 8388641; + description + "PM in drop overrun threshold"; + } + enum "thresh-in-drop-abort" { + value 8388642; + description + "PM in drop abort threshold"; + } + enum "thresh-in-drop-invalid-vlan" { + value 8388643; + description + "PM in drop invalid vlan threshold"; + } + enum "thresh-in-drop-invalid-dmac" { + value 8388644; + description + "PM in drop invalid DMAC threshold"; + } + enum "thresh-in-drop-invalid-encap" { + value 8388645; + description + "PM in drop invalid encap threshold"; + } + enum "thresh-in-drop-other" { + value 8388646; + description + "PM in drop other threshold"; + } + enum "thresh-in-mib-giant" { + value 8388647; + description + "PM in MIB giant threshold"; + } + enum "thresh-in-mib-jabber" { + value 8388648; + description + "PM in MIB jabber threshold"; + } + enum "thresh-in-mib-crc" { + value 8388649; + description + "PM in MIB CRC threshold"; + } + enum "thresh-in-error-collision-s" { + value 8388650; + description + "PM in error collisions threshold"; + } + enum "thresh-in-error-symbol" { + value 8388651; + description + "PM in error symbol threshold"; + } + enum "thresh-out-go-od-bytes" { + value 8388652; + description + "PM out good bytes threshold"; + } + enum "thresh-out-802-1q-frame-s" { + value 8388653; + description + "PM out 802_1 Q threshold"; + } + enum "thresh-out-pause-frame-s" { + value 8388654; + description + "PM out pause frame threshold"; + } + enum "thresh-out-pkts-1519-max-octets" { + value 8388655; + description + "PM out pkts 1519 max octets threshold"; + } + enum "thresh-out-go-od-pkts" { + value 8388656; + description + "PM out good pkts threshold"; + } + enum "thresh-out-drop-under-run" { + value 8388657; + description + "PM out drop underrun threshold"; + } + enum "thresh-out-drop-abort" { + value 8388658; + description + "PM out drop abort threshold"; + } + enum "thresh-out-drop-other" { + value 8388659; + description + "PM out drop other threshold"; + } + enum "thresh-out-error-other" { + value 8388660; + description + "PM out error other threshold"; + } + enum "thresh-in-error-giant" { + value 8388661; + description + "PM in error giant threshold"; + } + enum "thresh-in-error-runt" { + value 8388662; + description + "PM in error runt threshold"; + } + enum "thresh-in-error-jabbers" { + value 8388663; + description + "PM in error jabber threshold"; + } + enum "thresh-in-error-fragments" { + value 8388664; + description + "PM in error fragments threshold"; + } + enum "thresh-in-error-other" { + value 8388665; + description + "PM in error other threshold"; + } + enum "thresh-in-pkt-64-octet" { + value 8388666; + description + "PM in pkt 64 octet threshold"; + } + enum "thresh-in-pkts-65-127octets" { + value 8388667; + description + "PM in pkts 65_127 octets threshold"; + } + enum "thresh-in-pkts-128-255-octets" { + value 8388668; + description + "PM in pkts 128_255 octets threshold"; + } + enum "thresh-in-pkts-256-511-octets" { + value 8388669; + description + "PM in pkts 256_511 octets threshold"; + } + enum "thresh-in-pkts-512-1023-octets" { + value 8388670; + description + "PM in pkts 512_1023 octets threshold"; + } + enum "thresh-in-pkts-1024-1518-octets" { + value 8388671; + description + "PM in pkts 1024_1058 octets threshold"; + } + enum "thresh-out-pkt-64-octet" { + value 8388672; + description + "PM out pkt 64 octet threshold"; + } + enum "thresh-out-pkts-65-127octets" { + value 8388673; + description + "PM out pkts 65_127 octets threshold"; + } + enum "thresh-out-pkts-128-255-octets" { + value 8388674; + description + "PM out pkts 128_255 octets threshold"; + } + enum "thresh-out-pkts-256-511-octets" { + value 8388675; + description + "PM out pkts 256_511 octets threshold"; + } + enum "thresh-out-pkts-512-1023-octets" { + value 8388676; + description + "PM out pkts 512_1023 octets threshold"; + } + enum "thresh-out-pkts-1024-1518-octets" { + value 8388677; + description + "PM out pkts 1024_1058 octets threshold"; + } + enum "thresh-tx-under-size-d-pkt" { + value 8388678; + description + "PM tx undersized pkt threshold"; + } + enum "thresh-tx-over-size-d-pkt" { + value 8388679; + description + "PM tx oversized pkt threshold"; + } + enum "thresh-tx-fragments" { + value 8388680; + description + "PM tx fragments threshold"; + } + enum "thresh-tx-jabber" { + value 8388681; + description + "PM tx jabber threshold"; + } + enum "thresh-tx-bad-fcs" { + value 8388682; + description + "PM tx bad fcs threshold"; + } + } + description + "Ether threshold"; + } + + typedef Path-threshold { + type enumeration { + enum "thresh-cv" { + value 5242880; + description + "PM CV threshold"; + } + enum "thresh-es" { + value 5242881; + description + "PM ES threshold"; + } + enum "thresh-ses" { + value 5242882; + description + "PM SES threshold"; + } + enum "thresh-uas" { + value 5242883; + description + "PM UAS threshold"; + } + } + description + "Path threshold"; + } + + typedef Fc-report { + type enumeration { + enum "report-ifin-octets" { + value 20971520; + description + "PM FC ifIn-Octets report"; + } + enum "report-rx-pkts" { + value 20971521; + description + "PM FC rx-pkt report"; + } + enum "report-ifin-error-s" { + value 20971522; + description + "PM FC ifIn-Errors report"; + } + enum "report-rx-bad-fcs" { + value 20971523; + description + "PM FC rx-bad-fcs report"; + } + enum "report-ifout-octets" { + value 20971524; + description + "PM FC ifOut-Octets report"; + } + enum "report-tx-pkts" { + value 20971525; + description + "PM FC tx-pkt report"; + } + enum "report-tx-bad-fcs" { + value 20971526; + description + "PM FC tx-bad-fcs report"; + } + enum "report-rx-frame-s-too-long" { + value 20971527; + description + "PM FC rx-frames-too-long report"; + } + enum "report-rx-frame-s-trunc" { + value 20971528; + description + "PM FC rx-frames-trunc report"; + } + enum "report-tx-frame-s-too-long" { + value 20971529; + description + "PM FC tx-frames-too-long report"; + } + enum "report-tx-frame-s-trunc" { + value 20971530; + description + "PM FC tx-frames-trunc report"; + } + } + description + "Fc report"; + } + + typedef Sts-threshold { + type enumeration { + enum "thresh-cv" { + value 4194304; + description + "PM CV threshold"; + } + enum "thresh-es" { + value 4194305; + description + "PM ES threshold"; + } + enum "thresh-ses" { + value 4194306; + description + "PM SES threshold"; + } + enum "thresh-uas" { + value 4194307; + description + "PM UAS threshold"; + } + } + description + "Sts threshold"; + } + + typedef Secytx-report { + type enumeration { + enum "report-tx-outpktsprotected" { + value 150994944; + description + "PM SECYTX tx OutPktsProtected report"; + } + enum "report-tx-outpktsencrypted" { + value 150994945; + description + "PM SECYTX tx OutPktsEncrypted report"; + } + enum "report-tx-outoctetsprotected" { + value 150994946; + description + "PM SECYTX tx OutOctetsProtected report"; + } + enum "report-tx-outoctetsencrypted" { + value 150994947; + description + "PM SECYTX tx OutOctetsEncrypted report"; + } + enum "report-tx-outpkts-too-long" { + value 150994948; + description + "PM SECYTX tx OutPktsTooLong report"; + } + } + description + "Secytx report"; + } + + typedef Prbs-threshold { + type enumeration { + enum "thresh-ebc" { + value 17825792; + description + "PM Prbs ebc threshold"; + } + enum "thresh-found-count" { + value 17825793; + description + "PM Prbs found count threshold"; + } + enum "thresh-lost-count" { + value 17825794; + description + "PM Prbs lost count threshold"; + } + } + description + "Prbs threshold"; + } + + typedef Cem-report { + type enumeration { + enum "report-missing-pkts" { + value 24117248; + description + "PM CEM missing-pkts report"; + } + enum "report-pkts-re-order" { + value 24117249; + description + "PM CEM pkts-reorder report"; + } + enum "report-jtr-bfr-under" { + value 24117250; + description + "PM CEM jtr-bfr-underrun report"; + } + enum "report-mis-order-drop" { + value 24117251; + description + "PM CEM mis-order-drop report"; + } + enum "report-malformed-pkt" { + value 24117252; + description + "PM CEM malformed-pkts report"; + } + enum "report-es" { + value 24117253; + description + "PM CEM ES report"; + } + enum "report-ses" { + value 24117254; + description + "PM CEM SES report"; + } + enum "report-uas" { + value 24117255; + description + "PM CEM UAS report"; + } + enum "report-fc" { + value 24117256; + description + "PM CEM FC report"; + } + enum "report-input-errs" { + value 24117257; + description + "PM CEM input-errs report"; + } + enum "report-output-errs" { + value 24117258; + description + "PM CEM output-errs report"; + } + enum "report-jtr-bfr-over" { + value 24117259; + description + "PM CEM jtr-bfr-overruns report"; + } + enum "report-tx-lbits" { + value 24117260; + description + "PM CEM tx-lbits report"; + } + enum "report-tx-rbits" { + value 24117261; + description + "PM CEM tx-rbits report"; + } + enum "report-rx-lbits" { + value 24117262; + description + "PM CEM rx-lbits report"; + } + enum "report-rx-rbits" { + value 24117263; + description + "PM CEM rx-rbits report"; + } + enum "report-in-pkts" { + value 24117264; + description + "PM CEM ingress-pkts report"; + } + enum "report-eg-pkts" { + value 24117265; + description + "PM CEM egress-pkts report"; + } + enum "report-in-pkts-drop" { + value 24117266; + description + "PM CEM ingress-pkts-dropped report"; + } + enum "report-eg-pkts-drop" { + value 24117267; + description + "PM CEM egress-pkts-dropped report"; + } + } + description + "Cem report"; + } + + typedef Ocn-report { + type enumeration { + enum "report-sefss" { + value 3145728; + description + "PM SEFSS threshold"; + } + enum "report-cvs" { + value 3145729; + description + "PM CVS threshold"; + } + enum "report-ess" { + value 3145730; + description + "PM ESS threshold"; + } + enum "report-sess" { + value 3145731; + description + "PM SESS threshold"; + } + enum "report-cvl-ne" { + value 3145734; + description + "PM CVL-NE threshold"; + } + enum "report-esl-ne" { + value 3145735; + description + "PM ESL-NE threshold"; + } + enum "report-sesl-ne" { + value 3145736; + description + "PM SESL-NE threshold"; + } + enum "report-uasl-ne" { + value 3145738; + description + "PM UASL-NE threshold"; + } + enum "report-fcl-ne" { + value 3145739; + description + "PM FCL-NE threshold"; + } + enum "report-fcl-fe" { + value 3145751; + description + "PM FCL_FE threshold"; + } + enum "report-cvl-fe" { + value 3145752; + description + "PM CVL-FE threshold"; + } + enum "report-esl-fe" { + value 3145753; + description + "PM ESL_FE threshold"; + } + enum "report-sesl-fe" { + value 3145754; + description + "PM SESL_FE threshold"; + } + enum "report-uasl-fe" { + value 3145756; + description + "PM UASL_FEthreshold"; + } + } + description + "Ocn report"; + } + + typedef Ho-vc-report { + type enumeration { + enum "report-eb" { + value 33554432; + description + "PM EB report"; + } + enum "report-es" { + value 33554433; + description + "PM ES report"; + } + enum "report-esr" { + value 33554434; + description + "PM ESR report"; + } + enum "report-ses" { + value 33554435; + description + "PM SES report"; + } + enum "report-sesr" { + value 33554436; + description + "PM SESR report"; + } + enum "report-bbe" { + value 33554437; + description + "PM BBE report"; + } + enum "report-bber" { + value 33554438; + description + "PM BBER report"; + } + enum "report-uass" { + value 33554439; + description + "PM UASS report"; + } + } + description + "Ho vc report"; + } + + typedef Otnsec-report { + type enumeration { + enum "report-in-block-s" { + value 327680; + description + "PM OTNSEC Inblocks report"; + } + enum "report-in-block-senc" { + value 327681; + description + "PM OTNSEC InblocksEnc report"; + } + enum "report-in-block-sunencrypted" { + value 327682; + description + "PM OTNSEC InblocksUnEncrypted report"; + } + enum "report-in-block-sprotected" { + value 327683; + description + "PM OTNSEC InblocksProtected report"; + } + enum "report-in-block-sunprotected" { + value 327684; + description + "PM OTNSEC InblocksUnProtected report"; + } + enum "report-in-block-ssequence-error-s" { + value 327685; + description + "PM OTNSEC InblocksSequenceErrors report"; + } + enum "report-in-block-sreplay-error-s" { + value 327686; + description + "PM OTNSEC InblocksReplayErrors report"; + } + enum "report-in-block-sauth-error-s" { + value 327687; + description + "PM OTNSEC InblocksAuthErrors report"; + } + enum "report-in-block-s-zero-ed" { + value 327688; + description + "PM OTNSEC InblocksZeroed report"; + } + enum "report-out-block-s" { + value 327689; + description + "PM OTNSEC Outblocks report"; + } + enum "report-out-block-senc" { + value 327690; + description + "PM OTNSEC OutblocksEnc report"; + } + enum "report-out-block-sunencrypted" { + value 327691; + description + "PM OTNSEC OUTBLOCKSUNENCRYPTED report"; + } + enum "report-out-block-ssequence-error-s" { + value 327692; + description + "PM OTNSEC OutblocksSequenceErrors report"; + } + enum "report-out-block-s-zero-ed" { + value 327693; + description + "PM OTNSEC OutblocksZeroed report"; + } + enum "report-out-block-sprotected" { + value 327694; + description + "PM OTNSEC OutblocksProtected report"; + } + enum "report-out-block-sunprotected" { + value 327695; + description + "PM OTNSEC OutblocksUnProtected report"; + } + } + description + "Otnsec report"; + } + + typedef Otn-threshold { + type enumeration { + enum "thresh-es-sm-ne" { + value 262144; + description + "PM Otn es sm ne threshold"; + } + enum "thresh-ses-sm-ne" { + value 262145; + description + "PM Otn ses sm ne threshold"; + } + enum "thresh-uas-sm-ne" { + value 262146; + description + "PM Otn uas sm ne threshold"; + } + enum "thresh-bbe-sm-ne" { + value 262147; + description + "PM Otn bbe sm ne threshold"; + } + enum "thresh-fc-sm-ne" { + value 262148; + description + "PM Otn fc sm ne threshold"; + } + enum "thresh-esr-sm-ne" { + value 262149; + description + "PM Otn esr sm ne threshold"; + } + enum "thresh-sesr-sm-ne" { + value 262150; + description + "PM Otn sesr sm ne threshold"; + } + enum "thresh-bber-sm-ne" { + value 262151; + description + "PM Otn bber sm ne threshold"; + } + enum "thresh-es-pm-ne" { + value 524288; + description + "PM Otn es pm ne threshold"; + } + enum "thresh-ses-pm-ne" { + value 524289; + description + "PM Otn ses pm ne threshold"; + } + enum "thresh-uas-pm-ne" { + value 524290; + description + "PM Otn uas pm ne threshold"; + } + enum "thresh-bbe-pm-ne" { + value 524291; + description + "PM Otn bbe pm ne threshold"; + } + enum "thresh-fc-pm-ne" { + value 524292; + description + "PM Otn fc pm ne threshold"; + } + enum "thresh-esr-pm-ne" { + value 524293; + description + "PM Otn esr pm ne threshold"; + } + enum "thresh-sesr-pm-ne" { + value 524294; + description + "PM Otn sesr pm ne threshold"; + } + enum "thresh-bber-pm-ne" { + value 524295; + description + "PM Otn bber pm ne threshold"; + } + enum "thresh-es-sm-fe" { + value 1048584; + description + "PM Otn es sm fe threshold"; + } + enum "thresh-ses-sm-fe" { + value 1048585; + description + "PM Otn ses sm fe threshold"; + } + enum "thresh-uas-sm-fe" { + value 1048586; + description + "PM Otn uas sm fe threshold"; + } + enum "thresh-bbe-sm-fe" { + value 1048587; + description + "PM Otn bbe sm fe threshold"; + } + enum "thresh-fc-sm-fe" { + value 1048588; + description + "PM Otn fc sm fe threshold"; + } + enum "thresh-esr-sm-fe" { + value 1048589; + description + "PM Otn esr sm fe threshold"; + } + enum "thresh-sesr-sm-fe" { + value 1048590; + description + "PM Otn sesr sm fe threshold"; + } + enum "thresh-bber-sm-fe" { + value 1048591; + description + "PM Otn bber sm fe threshold"; + } + enum "thresh-es-pm-fe" { + value 2097160; + description + "PM Otn es pm fe threshold"; + } + enum "thresh-ses-pm-fe" { + value 2097161; + description + "PM Otn ses pm fe threshold"; + } + enum "thresh-uas-pm-fe" { + value 2097162; + description + "PM Otn uas pm fe threshold"; + } + enum "thresh-bbe-pm-fe" { + value 2097163; + description + "PM Otn bbe pm fe threshold"; + } + enum "thresh-fc-pm-fe" { + value 2097164; + description + "PM Otn fc pm fe threshold"; + } + enum "thresh-esr-pm-fe" { + value 2097165; + description + "PM Otn esr pm fe threshold"; + } + enum "thresh-sesr-pm-fe" { + value 2097166; + description + "PM Otn sesr pm fe threshold"; + } + enum "thresh-bber-pm-fe" { + value 2097167; + description + "PM Otn bber pm fe threshold"; + } + } + description + "Otn threshold"; + } + + typedef E1-report { + type enumeration { + enum "report-lcv" { + value 18874368; + description + "PM E1 lcv report"; + } + enum "report-pcv" { + value 18874369; + description + "PM E1 pcv report"; + } + enum "report-sels" { + value 18874370; + description + "PM E1 sels report"; + } + enum "report-les" { + value 18874371; + description + "PM E1 les report"; + } + enum "report-aiss-sef" { + value 18874372; + description + "PM E1 aiss-sef report"; + } + enum "report-fcp" { + value 18874373; + description + "PM E1 fcp report"; + } + enum "report-es" { + value 18874374; + description + "PM E1 es report"; + } + enum "report-ses" { + value 18874375; + description + "PM E1 ses report"; + } + enum "report-uas" { + value 18874376; + description + "PM E1 uas report"; + } + enum "report-es-fe" { + value 18874377; + description + "PM E1 es-fe report"; + } + enum "report-ses-fe" { + value 18874378; + description + "PM E1 ses-fe report"; + } + enum "report-uas-fe" { + value 18874379; + description + "PM E1 uas-fe report"; + } + } + description + "E1 report"; + } + + typedef Optics-threshold { + type enumeration { + enum "thresh-opt-min" { + value 65577; + description + "PM Optics opt min threshold in dbm or uW"; + } + enum "thresh-opr-min" { + value 65578; + description + "PM Optics opr min threshold in dbm or uW"; + } + enum "thresh-lbc-min" { + value 65579; + description + "PM Optics lbc min threshold"; + } + enum "thresh-lbc-pc-min" { + value 65580; + description + "PM Optics lbcpc min threshold"; + } + enum "thresh-cd-min" { + value 65584; + description + "PM Optics cd min threshold"; + } + enum "thresh-dgd-min" { + value 65585; + description + "PM Optics dgd min threshold"; + } + enum "thresh-pmd-min" { + value 65586; + description + "PM Optics sopmd min threshold"; + } + enum "thresh-osnr-min" { + value 65587; + description + "PM Optics osnr min threshold"; + } + enum "thresh-pdl-min" { + value 65588; + description + "PM Optics pdl min threshold"; + } + enum "thresh-pcr-min" { + value 65589; + description + "PM Optics pcr min threshold"; + } + enum "thresh-pn-min" { + value 65590; + description + "PM Optics pn min threshold"; + } + enum "thresh-rx-sig-pow-min" { + value 65591; + description + "PM Optics rx sig pow min threshold"; + } + enum "thresh-low-sig-freq-off-min" { + value 65592; + description + "PM Optics low sig freq off min threshold"; + } + enum "thresh-ampli-gain-min" { + value 65593; + description + "PM Optics ampli gain min threshold"; + } + enum "thresh-ampli-gain-tilt-min" { + value 65594; + description + "PM Optics ampli gain tilt min threshold"; + } + enum "thresh-snr-min" { + value 65595; + description + "PM Optics snr min threshold"; + } + enum "thresh-snr-ax-min" { + value 65596; + description + "PM Optics snr ax min threshold"; + } + enum "thresh-snr-bx-min" { + value 65597; + description + "PM Optics snr bx min threshold"; + } + enum "thresh-snr-ay-min" { + value 65598; + description + "PM Optics snr ay min threshold"; + } + enum "thresh-snr-by-min" { + value 65599; + description + "PM Optics snr by min threshold"; + } + enum "thresh-sop-s1-min" { + value 65600; + description + "PM Optics sop s1 min threshold"; + } + enum "thresh-sop-s2-min" { + value 65601; + description + "PM Optics sop s2 min threshold"; + } + enum "thresh-sop-s3-min" { + value 65602; + description + "PM Optics sop s3 min threshold"; + } + enum "thresh-opt-cl-min" { + value 65603; + description + "PM Optics opt-cl min threshold in dbm or uW"; + } + enum "thresh-opr-cl-min" { + value 65604; + description + "PM Optics opr-cl min threshold in dbm or uW"; + } + enum "thresh-opt-s-min" { + value 65605; + description + "PM Optics opt-s min threshold in dbm or uW"; + } + enum "thresh-opr-s-min" { + value 65606; + description + "PM Optics opr-s min threshold in dbm or uW"; + } + enum "thresh-opbr-min" { + value 65607; + description + "PM Optics opbr min threshold in dbm or uW"; + } + enum "thresh-eagn-min" { + value 65608; + description + "PM Optics eagn min threshold in dbm"; + } + enum "thresh-eatl-min" { + value 65609; + description + "PM Optics eatl min threshold in dbm"; + } + enum "thresh-iagn-min" { + value 65610; + description + "PM Optics iagn min threshold in dbm"; + } + enum "thresh-iatl-min" { + value 65611; + description + "PM Optics iatl min threshold in dbm"; + } + enum "thresh-raman-tot-min" { + value 65612; + description + "PM Optics raman-tot min threshold in mW"; + } + enum "thresh-raman-1-min" { + value 65613; + description + "PM Optics raman-1 min threshold in mW"; + } + enum "thresh-raman-2-min" { + value 65614; + description + "PM Optics raman-2 min threshold in mW"; + } + enum "thresh-raman-3-min" { + value 65615; + description + "PM Optics raman-3 min threshold in mW"; + } + enum "thresh-raman-4-min" { + value 65616; + description + "PM Optics raman-4 min threshold in mW"; + } + enum "thresh-raman-5-min" { + value 65617; + description + "PM Optics raman-5 min threshold in mW"; + } + enum "thresh-opt-max" { + value 65618; + description + "PM Optics opt max threshold in dbm or uW"; + } + enum "thresh-opr-max" { + value 65619; + description + "PM Optics opr max threshold in dbm or uW"; + } + enum "thresh-lbc-max" { + value 65620; + description + "PM Optics lbc max threshold"; + } + enum "thresh-lbc-pc-max" { + value 65621; + description + "PM Optics lbcpc max threshold"; + } + enum "thresh-cd-max" { + value 65625; + description + "PM Optics cd max threshold"; + } + enum "thresh-dgd-max" { + value 65626; + description + "PM Optics dgd max threshold"; + } + enum "thresh-pmd-max" { + value 65627; + description + "PM Optics sopmd max threshold"; + } + enum "thresh-osnr-max" { + value 65628; + description + "PM Optics osnr max threshold"; + } + enum "thresh-pdl-max" { + value 65629; + description + "PM Optics pdl max threshold"; + } + enum "thresh-pcr-max" { + value 65630; + description + "PM Optics pcr max threshold"; + } + enum "thresh-pn-max" { + value 65631; + description + "PM Optics pn max threshold"; + } + enum "thresh-rx-sig-pow-max" { + value 65632; + description + "PM Optics rx sig pow max threshold"; + } + enum "thresh-low-sig-freq-off-max" { + value 65633; + description + "PM Optics low sig freq off max threshold"; + } + enum "thresh-ampli-gain-max" { + value 65634; + description + "PM Optics ampli gain max threshold"; + } + enum "thresh-ampli-gain-tilt-max" { + value 65635; + description + "PM Optics ampli gain tilt max threshold"; + } + enum "thresh-snr-max" { + value 65636; + description + "PM Optics snr max threshold"; + } + enum "thresh-snr-ax-max" { + value 65637; + description + "PM Optics snr ax max threshold"; + } + enum "thresh-snr-bx-max" { + value 65638; + description + "PM Optics snr bx max threshold"; + } + enum "thresh-snr-ay-max" { + value 65639; + description + "PM Optics snr ay max threshold"; + } + enum "thresh-snr-by-max" { + value 65640; + description + "PM Optics snr by max threshold"; + } + enum "thresh-sop-s1-max" { + value 65641; + description + "PM Optics sop s1 max threshold"; + } + enum "thresh-sop-s2-max" { + value 65642; + description + "PM Optics sop s2 max threshold"; + } + enum "thresh-sop-s3-max" { + value 65643; + description + "PM Optics sop s3 max threshold"; + } + enum "thresh-opt-cl-max" { + value 65644; + description + "PM Optics opt-cl max threshold in dbm or uW"; + } + enum "thresh-opr-cl-max" { + value 65645; + description + "PM Optics opr-cl max threshold in dbm or uW"; + } + enum "thresh-opt-s-max" { + value 65646; + description + "PM Optics opt-s max threshold in dbm or uW"; + } + enum "thresh-opr-s-max" { + value 65647; + description + "PM Optics opr-s max threshold in dbm or uW"; + } + enum "thresh-opbr-max" { + value 65648; + description + "PM Optics opbr max threshold in dbm or uW"; + } + enum "thresh-eagn-max" { + value 65649; + description + "PM Optics eagn max threshold in dbm"; + } + enum "thresh-eatl-max" { + value 65650; + description + "PM Optics eatl max threshold in dbm"; + } + enum "thresh-iagn-max" { + value 65651; + description + "PM Optics iagn max threshold in dbm"; + } + enum "thresh-iatl-max" { + value 65652; + description + "PM Optics iatl max threshold in dbm"; + } + enum "thresh-raman-tot-max" { + value 65653; + description + "PM Optics raman-tot max threshold in mW"; + } + enum "thresh-raman-1-max" { + value 65654; + description + "PM Optics raman-1 max threshold in mW"; + } + enum "thresh-raman-2-max" { + value 65655; + description + "PM Optics raman-2 max threshold in mW"; + } + enum "thresh-raman-3-max" { + value 65656; + description + "PM Optics raman-3 max threshold in mW"; + } + enum "thresh-raman-4-max" { + value 65657; + description + "PM Optics raman-4 max threshold in mW"; + } + enum "thresh-raman-5-max" { + value 65658; + description + "PM Optics raman-5 max threshold in mW"; + } + } + description + "Optics threshold"; + } + + typedef Ocn-threshold { + type enumeration { + enum "thresh-sefss" { + value 3145728; + description + "PM SEFSS threshold"; + } + enum "thresh-cvs" { + value 3145729; + description + "PM CVS threshold"; + } + enum "thresh-ess" { + value 3145730; + description + "PM ESS threshold"; + } + enum "thresh-sess" { + value 3145731; + description + "PM SESS threshold"; + } + enum "thresh-cvl-ne" { + value 3145734; + description + "PM CVL-NE threshold"; + } + enum "thresh-esl-ne" { + value 3145735; + description + "PM ESL-NE threshold"; + } + enum "thresh-sesl-ne" { + value 3145736; + description + "PM SESL-NE threshold"; + } + enum "thresh-uasl-ne" { + value 3145738; + description + "PM UASL-NE threshold"; + } + enum "thresh-fcl-ne" { + value 3145739; + description + "PM FCL-NE threshold"; + } + enum "thresh-fcl-fe" { + value 3145751; + description + "PM FCL_FE threshold"; + } + enum "thresh-cvl-fe" { + value 3145752; + description + "PM CVL-FE threshold"; + } + enum "thresh-esl-fe" { + value 3145753; + description + "PM ESL_FE threshold"; + } + enum "thresh-sesl-fe" { + value 3145754; + description + "PM SESL_FE threshold"; + } + enum "thresh-uasl-fe" { + value 3145756; + description + "PM UASL_FEthreshold"; + } + } + description + "Ocn threshold"; + } + + typedef E1-threshold { + type enumeration { + enum "thresh-lcv" { + value 18874368; + description + "PM E1 lcv thresh"; + } + enum "thresh-pcv" { + value 18874369; + description + "PM E1 pcv thresh"; + } + enum "thresh-sels" { + value 18874370; + description + "PM E1 sels thresh"; + } + enum "thresh-les" { + value 18874371; + description + "PM E1 les thresh"; + } + enum "thresh-aiss-sef" { + value 18874372; + description + "PM E1 aiss-sef thresh"; + } + enum "thresh-fcp" { + value 18874373; + description + "PM E1 fcp thresh"; + } + enum "thresh-es" { + value 18874374; + description + "PM E1 es thresh"; + } + enum "thresh-ses" { + value 18874375; + description + "PM E1 ses thresh"; + } + enum "thresh-uas" { + value 18874376; + description + "PM E1 uas thresh"; + } + enum "thresh-es-fe" { + value 18874377; + description + "PM E1 es-fe thresh"; + } + enum "thresh-ses-fe" { + value 18874378; + description + "PM E1 ses-fe thresh"; + } + enum "thresh-uas-fe" { + value 18874379; + description + "PM E1 uas-fe thresh"; + } + } + description + "E1 threshold"; + } + + typedef Otnsec-threshold { + type enumeration { + enum "thresh-in-block-s" { + value 327680; + description + "PM OTNSEC Inblocks thresh"; + } + enum "thresh-in-block-senc" { + value 327681; + description + "PM OTNSEC InblocksEnc thresh"; + } + enum "thresh-in-block-sunencrypted" { + value 327682; + description + "PM OTNSEC InblocksUnEncrypted thresh"; + } + enum "thresh-in-block-sprotected" { + value 327683; + description + "PM OTNSEC InblocksProtected thresh"; + } + enum "thresh-in-block-sunprotected" { + value 327684; + description + "PM OTNSEC InblocksUnProtected thresh"; + } + enum "thresh-in-block-ssequence-error-s" { + value 327685; + description + "PM OTNSEC InblocksSequenceErrors thresh"; + } + enum "thresh-in-block-sreplay-error-s" { + value 327686; + description + "PM OTNSEC InblocksReplayErrors thresh"; + } + enum "thresh-in-block-sauth-error-s" { + value 327687; + description + "PM OTNSEC InblocksAuthErrors thresh"; + } + enum "thresh-in-block-s-zero-ed" { + value 327688; + description + "PM OTNSEC InblocksZeroed thresh"; + } + enum "thresh-out-block-s" { + value 327689; + description + "PM OTNSEC Outblocks thresh"; + } + enum "thresh-out-block-senc" { + value 327690; + description + "PM OTNSEC OutblocksEnc thresh"; + } + enum "thresh-out-block-sunencrypted" { + value 327691; + description + "PM OTNSEC OUTBLOCKSUNENCRYPTED thresh"; + } + enum "thresh-out-block-ssequence-error-s" { + value 327692; + description + "PM OTNSEC OutblocksSequenceErrors thresh"; + } + enum "thresh-out-block-s-zero-ed" { + value 327693; + description + "PM OTNSEC OutblocksZeroed thresh"; + } + enum "thresh-out-block-sprotected" { + value 327694; + description + "PM OTNSEC OutblocksProtected thresh"; + } + enum "thresh-out-block-sunprotected" { + value 327695; + description + "PM OTNSEC OutblocksUnProtected thresh"; + } + } + description + "Otnsec threshold"; + } + + typedef Optics-report { + type enumeration { + enum "report-opt-min" { + value 65577; + description + "PM Optics opt min report"; + } + enum "report-opr-min" { + value 65578; + description + "PM Optics opr min report"; + } + enum "report-lbc-min" { + value 65579; + description + "PM Optics lbc min report"; + } + enum "report-lbc-pc-min" { + value 65580; + description + "PM Optics lbcpc min report"; + } + enum "report-cd-min" { + value 65584; + description + "PM Optics cd min report"; + } + enum "report-dgd-min" { + value 65585; + description + "PM Optics dgd min report"; + } + enum "report-pmd-min" { + value 65586; + description + "PM Optics sopmd min report"; + } + enum "report-osnr-min" { + value 65587; + description + "PM Optics osnr min report"; + } + enum "report-pdl-min" { + value 65588; + description + "PM Optics pdl min report"; + } + enum "report-pcr-min" { + value 65589; + description + "PM Optics pcr min report"; + } + enum "report-pn-min" { + value 65590; + description + "PM Optics pn min report"; + } + enum "report-rx-sig-pow-min" { + value 65591; + description + "PM Optics rx sig pow min report"; + } + enum "report-low-sig-freq-off-min" { + value 65592; + description + "PM Optics low sig freq off min report"; + } + enum "report-ampli-gain-min" { + value 65593; + description + "PM Optics ampli gain min report"; + } + enum "report-ampli-gain-tilt-min" { + value 65594; + description + "PM Optics ampli gain tilt min report"; + } + enum "report-snr-min" { + value 65595; + description + "PM Optics snr min report"; + } + enum "report-snr-ax-min" { + value 65596; + description + "PM Optics snr ax min report"; + } + enum "report-snr-bx-min" { + value 65597; + description + "PM Optics snr bx min report"; + } + enum "report-snr-ay-min" { + value 65598; + description + "PM Optics snr ay min report"; + } + enum "report-snr-by-min" { + value 65599; + description + "PM Optics snr by min report"; + } + enum "report-sop-s1-min" { + value 65600; + description + "PM Optics sop s1 min report"; + } + enum "report-sop-s2-min" { + value 65601; + description + "PM Optics sop s2 min report"; + } + enum "report-sop-s3-min" { + value 65602; + description + "PM Optics sop s3 min report"; + } + enum "report-opt-cl-min" { + value 65603; + description + "PM Optics opt-cl min report"; + } + enum "report-opr-cl-min" { + value 65604; + description + "PM Optics opr-cl min report"; + } + enum "report-opt-s-min" { + value 65605; + description + "PM Optics opt-s min report"; + } + enum "report-opr-s-min" { + value 65606; + description + "PM Optics opr-s min report"; + } + enum "report-opbr-min" { + value 65607; + description + "PM Optics opbr min report"; + } + enum "report-eagn-min" { + value 65608; + description + "PM Optics eagn min report"; + } + enum "report-eatl-min" { + value 65609; + description + "PM Optics eatl min report"; + } + enum "report-iagn-min" { + value 65610; + description + "PM Optics iagn min report"; + } + enum "report-iatl-min" { + value 65611; + description + "PM Optics iatl min report"; + } + enum "report-raman-tot-min" { + value 65612; + description + "PM Optics raman_tot min report"; + } + enum "report-raman-1-min" { + value 65613; + description + "PM Optics raman_1 min report"; + } + enum "report-raman-2-min" { + value 65614; + description + "PM Optics raman_2 min report"; + } + enum "report-raman-3-min" { + value 65615; + description + "PM Optics raman_3 min report"; + } + enum "report-raman-4-min" { + value 65616; + description + "PM Optics raman_4 min report"; + } + enum "report-raman-5-min" { + value 65617; + description + "PM Optics raman_5 min report"; + } + enum "report-opt-max" { + value 65618; + description + "PM Optics opt max report"; + } + enum "report-opr-max" { + value 65619; + description + "PM Optics opr max report"; + } + enum "report-lbc-max" { + value 65620; + description + "PM Optics lbc max report"; + } + enum "report-lbc-pc-max" { + value 65621; + description + "PM Optics lbcpc max report"; + } + enum "report-cd-max" { + value 65625; + description + "PM Optics cd max report"; + } + enum "report-dgd-max" { + value 65626; + description + "PM Optics dgd max report"; + } + enum "report-pmd-max" { + value 65627; + description + "PM Optics sopmd max report"; + } + enum "report-osnr-max" { + value 65628; + description + "PM Optics osnr max report"; + } + enum "report-pdl-max" { + value 65629; + description + "PM Optics pdl max report"; + } + enum "report-pcr-max" { + value 65630; + description + "PM Optics pcr max report"; + } + enum "report-pn-max" { + value 65631; + description + "PM Optics pn max report"; + } + enum "report-rx-sig-pow-max" { + value 65632; + description + "PM Optics rx sig pow max report"; + } + enum "report-low-sig-freq-off-max" { + value 65633; + description + "PM Optics low sig freq off max report"; + } + enum "report-ampli-gain-max" { + value 65634; + description + "PM Optics ampli gain max report"; + } + enum "report-ampli-gain-tilt-max" { + value 65635; + description + "PM Optics ampli gain tilt max report"; + } + enum "report-snr-max" { + value 65636; + description + "PM Optics snr max report"; + } + enum "report-snr-ax-max" { + value 65637; + description + "PM Optics snr ax max report"; + } + enum "report-snr-bx-max" { + value 65638; + description + "PM Optics snr bx max report"; + } + enum "report-snr-ay-max" { + value 65639; + description + "PM Optics snr ay max report"; + } + enum "report-snr-by-max" { + value 65640; + description + "PM Optics snr by max report"; + } + enum "report-sop-s1-max" { + value 65641; + description + "PM Optics sop s1 max report"; + } + enum "report-sop-s2-max" { + value 65642; + description + "PM Optics sop s2 max report"; + } + enum "report-sop-s3-max" { + value 65643; + description + "PM Optics sop s3 max report"; + } + enum "report-opt-cl-max" { + value 65644; + description + "PM Optics opt-cl max report"; + } + enum "report-opr-cl-max" { + value 65645; + description + "PM Optics opr-cl max report"; + } + enum "report-opt-s-max" { + value 65646; + description + "PM Optics opt-s max report"; + } + enum "report-opr-s-max" { + value 65647; + description + "PM Optics opr-s max report"; + } + enum "report-opbr-max" { + value 65648; + description + "PM Optics opbr max report"; + } + enum "report-eagn-max" { + value 65649; + description + "PM Optics eagn max report"; + } + enum "report-eatl-max" { + value 65650; + description + "PM Optics eatl max report"; + } + enum "report-iagn-max" { + value 65651; + description + "PM Optics iagn max report"; + } + enum "report-iatl-max" { + value 65652; + description + "PM Optics iatl max report"; + } + enum "report-raman-tot-max" { + value 65653; + description + "PM Optics raman-tot max report"; + } + enum "report-raman-1-max" { + value 65654; + description + "PM Optics raman-1 max report"; + } + enum "report-raman-2-max" { + value 65655; + description + "PM Optics raman-2 max report"; + } + enum "report-raman-3-max" { + value 65656; + description + "PM Optics raman-3 max report"; + } + enum "report-raman-4-max" { + value 65657; + description + "PM Optics raman-1 max report"; + } + enum "report-raman-5-max" { + value 65658; + description + "PM Optics raman-5 max report"; + } + } + description + "Optics report"; + } + + typedef Ether-report { + type enumeration { + enum "report-rx-pkt" { + value 524288; + description + "PM Ether rx pkt report"; + } + enum "report-rx-util" { + value 524289; + description + "PM Ether rx util report"; + } + enum "report-tx-util" { + value 524290; + description + "PM Ether tx util report"; + } + enum "report-stat-pkt" { + value 524291; + description + "PM ether stat pkt threshold"; + } + enum "report-octet-stat" { + value 524292; + description + "PM Ether octet stat report"; + } + enum "report-over-size-pkt" { + value 524293; + description + "PM Ether oversize pkt report"; + } + enum "report-fcs-err" { + value 524294; + description + "PM Ether fcs error report"; + } + enum "report-long-frame-s" { + value 524295; + description + "PM Ether long frames report"; + } + enum "report-jabber-stats" { + value 524296; + description + "PM Ether jabber stats report"; + } + enum "report-64-octet" { + value 524297; + description + "PM Ether 64 octet report"; + } + enum "report-65-127-octet" { + value 524298; + description + "PM Ether 65 to 127 octet report"; + } + enum "report-128-255-octet" { + value 524299; + description + "PM Ether 128 to 255 octet report"; + } + enum "report-256-511-octet" { + value 524300; + description + "PM Ether 256 to 511 octet report"; + } + enum "report-512-1023-octet" { + value 524301; + description + "PM Ether 512 to 1023 octet report"; + } + enum "report-1024-1518-octet" { + value 524302; + description + "PM Ether 1024 to 1518 report"; + } + enum "report-in-ucast" { + value 524303; + description + "PM Ether rx ucast report"; + } + enum "report-in-mcast" { + value 524304; + description + "PM Ether rx mcast report"; + } + enum "report-in-bcast" { + value 524305; + description + "PM Ether rx bcast report"; + } + enum "report-out-ucast" { + value 524306; + description + "PM Ether tx ucast report"; + } + enum "report-out-mcast" { + value 524307; + description + "PM Ether tx mcast report"; + } + enum "report-out-bcast" { + value 524308; + description + "PM Ether tx bcast report"; + } + enum "report-tx-pkt" { + value 524309; + description + "PM Ether tx pkt threshold"; + } + enum "report-ifin-error-s" { + value 524310; + description + "PM ether ifIn errors threshold"; + } + enum "report-ifin-octets" { + value 524311; + description + "PM ether ifInOctets threshold"; + } + enum "report-ether-stat-multicast-pkt" { + value 524312; + description + "PM ether stat multicast pkt threshold"; + } + enum "report-ether-stat-broadcast-pkt" { + value 524313; + description + "PM ether stat broadcast pkt threshold"; + } + enum "report-ether-stat-under-size-d-pkt" { + value 524314; + description + "PM ether stat undersized pkt threshold"; + } + enum "report-out-octet" { + value 524315; + description + "PM ether out octets threshold"; + } + enum "report-in-pause-frame" { + value 524316; + description + "PM ether in pause frame report"; + } + enum "report-in-go-od-bytes" { + value 524317; + description + "PM in good bytes report"; + } + enum "report-in-802-1q-frame-s" { + value 524318; + description + "PM in 802_1 Q report"; + } + enum "report-in-pkts-1519-max-octets" { + value 524319; + description + "PM in pkts 1519 max octets report"; + } + enum "report-in-go-od-pkts" { + value 524320; + description + "PM in good pkts report"; + } + enum "report-in-drop-overrun" { + value 524321; + description + "PM in drop overrun report"; + } + enum "report-in-drop-abort" { + value 524322; + description + "PM in drop abort report"; + } + enum "report-in-drop-invalid-vlan" { + value 524323; + description + "PM in drop invalid vlan report"; + } + enum "report-in-drop-invalid-dmac" { + value 524324; + description + "PM in drop invalid DMAC report"; + } + enum "report-in-drop-invalid-encap" { + value 524325; + description + "PM in drop invalid encap report"; + } + enum "report-in-drop-other" { + value 524326; + description + "PM in drop other report"; + } + enum "report-in-mib-giant" { + value 524327; + description + "PM in MIB giant report"; + } + enum "report-in-mib-jabber" { + value 524328; + description + "PM in MIB jabber report"; + } + enum "report-in-mib-crc" { + value 524329; + description + "PM in MIB CRC report"; + } + enum "report-in-error-collision-s" { + value 524330; + description + "PM in error collisions report"; + } + enum "report-in-error-symbol" { + value 524331; + description + "PM in error symbol report"; + } + enum "report-out-go-od-bytes" { + value 524332; + description + "PM out good bytes report"; + } + enum "report-out-802-1q-frame-s" { + value 524333; + description + "PM out 802_1 Q report"; + } + enum "report-out-pause-frame-s" { + value 524334; + description + "PM out pause frame report"; + } + enum "report-out-pkts-1519-max-octets" { + value 524335; + description + "PM out pkts 1519 max octets report"; + } + enum "report-out-go-od-pkts" { + value 524336; + description + "PM out good pkts report"; + } + enum "report-out-drop-under-run" { + value 524337; + description + "PM out drop underrun report"; + } + enum "report-out-drop-abort" { + value 524338; + description + "PM out drop abort report"; + } + enum "report-out-drop-other" { + value 524339; + description + "PM out drop other report"; + } + enum "report-out-error-other" { + value 524340; + description + "PM out error other report"; + } + enum "report-in-error-giant" { + value 524341; + description + "PM in error giant report"; + } + enum "report-in-error-runt" { + value 524342; + description + "PM in error runt report"; + } + enum "report-in-error-jabbers" { + value 524343; + description + "PM in error jabber report"; + } + enum "report-in-error-fragments" { + value 524344; + description + "PM in error fragments report"; + } + enum "report-in-error-other" { + value 524345; + description + "PM in error other report"; + } + enum "report-in-pkt-64-octet" { + value 524346; + description + "PM in pkt 64 octet report"; + } + enum "report-in-pkts-65-127octets" { + value 524347; + description + "PM in pkts 65_127 octets report"; + } + enum "report-in-pkts-128-255-octets" { + value 524348; + description + "PM in pkts 128_255 octets report"; + } + enum "report-in-pkts-256-511-octets" { + value 524349; + description + "PM in pkts 256_511 octets report"; + } + enum "report-in-pkts-512-1023-octets" { + value 524350; + description + "PM in pkts 512_1023 octets report"; + } + enum "report-in-pkts-1024-1518-octets" { + value 524351; + description + "PM in pkts 1024_1058 octets report"; + } + enum "report-out-pkt-64-octet" { + value 524352; + description + "PM out pkt 64 octet report"; + } + enum "report-out-pkts-65-127octets" { + value 524353; + description + "PM out pkts 65_127 octets report"; + } + enum "report-out-pkts-128-255-octets" { + value 524354; + description + "PM out pkts 128_255 octets report"; + } + enum "report-out-pkts-256-511-octets" { + value 524355; + description + "PM out pkts 256_511 octets report"; + } + enum "report-out-pkts-512-1023-octets" { + value 524356; + description + "PM out pkts 512_1023 octets report"; + } + enum "report-out-pkts-1024-1518-octets" { + value 524357; + description + "PM out pkts 1024_1058 octets report"; + } + enum "report-tx-under-size-d-pkt" { + value 524358; + description + "PM tx undersized pkt report"; + } + enum "report-tx-over-size-d-pkt" { + value 524359; + description + "PM tx oversized pkt report"; + } + enum "report-tx-fragments" { + value 524360; + description + "PM tx fragments report"; + } + enum "report-tx-jabber" { + value 524361; + description + "PM tx jabber report"; + } + enum "report-tx-bad-fcs" { + value 524362; + description + "PM tx bad fcs report"; + } + } + description + "Ether report"; + } + + typedef Otn-tcm-report { + type enumeration { + enum "report-es-tcm-fe" { + value 16777224; + description + "PM Otn es TCM fe report"; + } + enum "report-ses-tcm-fe" { + value 16777225; + description + "PM Otn ses TCM fe report"; + } + enum "report-uas-tcm-fe" { + value 16777226; + description + "PM Otn uas TCM fe report"; + } + enum "report-bbe-tcm-fe" { + value 16777227; + description + "PM Otn bbe TCM fe report"; + } + enum "report-fc-tcm-fe" { + value 16777228; + description + "PM Otn fc TCM fe report"; + } + enum "report-esr-tcm-fe" { + value 16777229; + description + "PM Otn esr TCM fe report"; + } + enum "report-sesr-tcm-fe" { + value 16777230; + description + "PM Otn sesr TCM fe report"; + } + enum "report-bber-tcm-fe" { + value 16777231; + description + "PM Otn bber TCM fe report"; + } + enum "report-es-tcm-ne" { + value 33554432; + description + "PM Otn es TCM ne report"; + } + enum "report-ses-tcm-ne" { + value 33554433; + description + "PM Otn ses TCM ne report"; + } + enum "report-uas-tcm-ne" { + value 33554434; + description + "PM Otn uas TCM ne report"; + } + enum "report-bbe-tcm-ne" { + value 33554435; + description + "PM Otn bbe TCM ne report"; + } + enum "report-fc-tcm-ne" { + value 33554436; + description + "PM Otn fc TCM ne report"; + } + enum "report-esr-tcm-ne" { + value 33554437; + description + "PM Otn esr TCM ne report"; + } + enum "report-sesr-tcm-ne" { + value 33554438; + description + "PM Otn sesr TCM ne report"; + } + enum "report-bber-tcm-ne" { + value 33554439; + description + "PM Otn bber TCM ne report"; + } + } + description + "Otn tcm report"; + } + + typedef Fec-threshold { + type enumeration { + enum "thresh-ec-bits" { + value 131072; + description + "PM Fec ec bits threshold"; + } + enum "thresh-uc-words" { + value 131076; + description + "PM Fec uc words threshold"; + } + enum "thresh-ec-words" { + value 131077; + description + "PM Fec ec words threshold"; + } + enum "thresh-pre-fec-ber-max" { + value 131085; + description + "PM Fec pre-fe-ber max threshold"; + } + enum "thresh-post-fec-ber-max" { + value 131086; + description + "PM Fec post-fec-ber max threshold"; + } + enum "thresh-q-max" { + value 131087; + description + "PM Fec Q max threshold"; + } + enum "thresh-q-margin-max" { + value 131088; + description + "PM Fec uc words max threshold"; + } + enum "thresh-q-margin-inst-max" { + value 131089; + description + "PM Fec Q margin instantaneuos max threshold"; + } + enum "thresh-ber-lane-max" { + value 131090; + description + "PM Fec ber-lane max threshold"; + } + enum "thresh-ferc-lane-max" { + value 131091; + description + "PM Fec ferc-lane max threshold"; + } + enum "thresh-pre-fec-ber-min" { + value 131092; + description + "PM Fec pre-fe-ber min threshold"; + } + enum "thresh-post-fec-ber-min" { + value 131093; + description + "PM Fec post-fec-ber min threshold"; + } + enum "thresh-q-min" { + value 131094; + description + "PM Fec Q min threshold"; + } + enum "thresh-q-margin-min" { + value 131095; + description + "PM Fec uc words min threshold"; + } + enum "thresh-q-margin-inst-min" { + value 131096; + description + "PM Fec Q margin instantaneuos min threshold"; + } + enum "thresh-ber-lane-min" { + value 131097; + description + "PM Fec ber-lane min threshold"; + } + enum "thresh-ferc-lane-min" { + value 131098; + description + "PM Fec ferc-lane min threshold"; + } + } + description + "Fec threshold"; + } + + typedef Secyif-threshold { + type enumeration { + enum "thresh-if-inpkts-untagged" { + value 150994944; + description + "PM SECYIF if InPktsUntagged thresh"; + } + enum "thresh-if-inpkts-not-ag" { + value 150994945; + description + "PM SECYIF if InPktsNoTag thresh"; + } + enum "thresh-if-inpktsbadtag" { + value 150994946; + description + "PM SECYIF if InPktsBadTag thresh"; + } + enum "thresh-if-inpktsunkownsci" { + value 150994947; + description + "PM SECYIF if InPktsUnknownSCI thresh"; + } + enum "thresh-if-inpktsnosci" { + value 150994948; + description + "PM SECYIF if InPktsNoSCI thresh"; + } + enum "thresh-if-inpkts-overrun" { + value 150994949; + description + "PM SECYIF if InPktsOverrun thresh"; + } + enum "thresh-if-inoctets-validate-d" { + value 150994950; + description + "PM SECYIF if InOctetsValidated thresh"; + } + enum "thresh-if-inoctetsdecrypted" { + value 150994951; + description + "PM SECYIF if InOctetsDecrypted thresh"; + } + enum "thresh-if-outpkts-untagged" { + value 150994952; + description + "PM SECYIF if OutPktsUntagged thresh"; + } + enum "thresh-if-thresh-outpkts-too-long" { + value 150994953; + description + "PM SECYIF if OutPktsTooLong thresh"; + } + enum "thresh-if-outoctetsprotected" { + value 150994954; + description + "PM SECYIF if OutOctetsProtected thresh"; + } + enum "thresh-if-outoctetsencrypted" { + value 150994955; + description + "PM SECYIF if OutOctetsEncrypted thresh"; + } + } + description + "Secyif threshold"; + } + + typedef Sts-report { + type enumeration { + enum "report-cv" { + value 4194304; + description + "PM CV threshold"; + } + enum "report-es" { + value 4194305; + description + "PM ES threshold"; + } + enum "report-ses" { + value 4194306; + description + "PM SES threshold"; + } + enum "report-uas" { + value 4194307; + description + "PM UAS threshold"; + } + } + description + "Sts report"; + } + + typedef Fc-threshold { + type enumeration { + enum "thresh-ifin-octets" { + value 20971520; + description + "PM FC ifIn-Octets threshold"; + } + enum "thresh-rx-pkts" { + value 20971521; + description + "PM FC rx-pkt threshold"; + } + enum "thresh-ifin-error-s" { + value 20971522; + description + "PM FC ifIn-Errors threshold"; + } + enum "thresh-rx-bad-fcs" { + value 20971523; + description + "PM FC rx-bad-fcs threshold"; + } + enum "thresh-ifout-octets" { + value 20971524; + description + "PM FC ifOut-Octets threshold"; + } + enum "thresh-tx-pkts" { + value 20971525; + description + "PM FC tx-pkt threshold"; + } + enum "thresh-tx-bad-fcs" { + value 20971526; + description + "PM FC tx-bad-fcs threshold"; + } + enum "thresh-rx-frame-s-too-long" { + value 20971527; + description + "PM FC rx-frames-too-long threshold"; + } + enum "thresh-rx-frame-s-trunc" { + value 20971528; + description + "PM FC rx-frames-trunc threshold"; + } + enum "thresh-tx-frame-s-too-long" { + value 20971529; + description + "PM FC tx-frames-too-long threshold"; + } + enum "thresh-tx-frame-s-trunc" { + value 20971530; + description + "PM FC tx-frames-trunc threshold"; + } + } + description + "Fc threshold"; + } + + typedef Stm-threshold { + type enumeration { + enum "thresh-ebs" { + value 16777217; + description + "PM EBS threshold"; + } + enum "thresh-ess" { + value 16777218; + description + "PM ESS threshold"; + } + enum "thresh-esrs" { + value 16777219; + description + "PM ESRS threshold"; + } + enum "thresh-sess" { + value 16777220; + description + "PM SES threshold"; + } + enum "thresh-sesrs" { + value 16777221; + description + "PM SESR threshold"; + } + enum "thresh-bbes" { + value 16777222; + description + "PM BBES threshold"; + } + enum "thresh-bbesr" { + value 16777223; + description + "PM BBESR threshold"; + } + enum "thresh-uass" { + value 16777224; + description + "PM UASS threshold"; + } + enum "thresh-ebl-ne" { + value 16777225; + description + "PM EBLNE threshold"; + } + enum "thresh-esl-ne" { + value 16777226; + description + "PM ESLNE threshold"; + } + enum "thresh-eslr-ne" { + value 16777227; + description + "PM ESLRNE threshold"; + } + enum "thresh-sesl-ne" { + value 16777228; + description + "PM SESL threshold"; + } + enum "thresh-sesrl-ne" { + value 16777229; + description + "PM SESRL threshold"; + } + enum "thresh-bbel-ne" { + value 16777230; + description + "PM BBERLNE threshold"; + } + enum "thresh-bberl-ne" { + value 16777231; + description + "PM BBERLNE threshold"; + } + enum "thresh-uasl-ne" { + value 16777232; + description + "PM UASNE threshold"; + } + enum "thresh-ebl-fe" { + value 16777245; + description + "PM EBFE threshold"; + } + enum "thresh-esl-fe" { + value 16777246; + description + "PM ESFE threshold"; + } + enum "thresh-esrl-fe" { + value 16777247; + description + "PM EBFE threshold"; + } + enum "thresh-sesl-fe" { + value 16777248; + description + "PM SESFE threshold"; + } + enum "thresh-sesrl-fe" { + value 16777249; + description + "PM SESRLFE threshold"; + } + enum "thresh-bbel-fe" { + value 16777250; + description + "PM BBEL threshold"; + } + enum "thresh-bberl-fe" { + value 16777251; + description + "PM BBELFE threshold"; + } + enum "thresh-uasl-fe" { + value 16777252; + description + "PM UASLFE threshold"; + } + } + description + "Stm threshold"; + } + + typedef Otn-tcm-threshold { + type enumeration { + enum "thresh-es-tcm-fe" { + value 16777224; + description + "PM Otn es TCM fe threshold"; + } + enum "thresh-ses-tcm-fe" { + value 16777225; + description + "PM Otn ses TCM fe threshold"; + } + enum "thresh-uas-tcm-fe" { + value 16777226; + description + "PM Otn uas TCM fe threshold"; + } + enum "thresh-bbe-tcm-fe" { + value 16777227; + description + "PM Otn bbe TCM fe threshold"; + } + enum "thresh-fc-tcm-fe" { + value 16777228; + description + "PM Otn fc TCM fe threshold"; + } + enum "thresh-esr-tcm-fe" { + value 16777229; + description + "PM Otn esr TCM fe threshold"; + } + enum "thresh-sesr-tcm-fe" { + value 16777230; + description + "PM Otn sesr TCM fe threshold"; + } + enum "thresh-bber-tcm-fe" { + value 16777231; + description + "PM Otn bber TCM fe threshold"; + } + enum "thresh-es-tcm-ne" { + value 33554432; + description + "PM Otn es TCM ne threshold"; + } + enum "thresh-ses-tcm-ne" { + value 33554433; + description + "PM Otn ses TCM ne threshold"; + } + enum "thresh-uas-tcm-ne" { + value 33554434; + description + "PM Otn uas TCM ne threshold"; + } + enum "thresh-bbe-tcm-ne" { + value 33554435; + description + "PM Otn bbe TCM ne threshold"; + } + enum "thresh-fc-tcm-ne" { + value 33554436; + description + "PM Otn fc TCM ne threshold"; + } + enum "thresh-esr-tcm-ne" { + value 33554437; + description + "PM Otn esr TCM ne threshold"; + } + enum "thresh-sesr-tcm-ne" { + value 33554438; + description + "PM Otn sesr TCM ne threshold"; + } + enum "thresh-bber-tcm-ne" { + value 33554439; + description + "PM Otn bber TCM ne threshold"; + } + } + description + "Otn tcm threshold"; + } + + typedef Report { + type enumeration { + enum "false" { + value 0; + description + "Performance Monitoring Disabled"; + } + enum "true" { + value 1; + description + "Performance Monitoring Enabled"; + } + } + description + "Report"; + } + + typedef Prbs-report { + type enumeration { + enum "report-ebc" { + value 17825792; + description + "PM Prbs ebc bits report"; + } + enum "report-found-count" { + value 17825793; + description + "PM Prbs found count report"; + } + enum "report-lost-count" { + value 17825794; + description + "PM Prbs lost count report"; + } + } + description + "Prbs report"; + } + + typedef Otn-report { + type enumeration { + enum "report-es-sm-ne" { + value 262144; + description + "PM Otn es sm ne report"; + } + enum "report-ses-sm-ne" { + value 262145; + description + "PM Otn ses sm ne report"; + } + enum "report-uas-sm-ne" { + value 262146; + description + "PM Otn uas sm ne report"; + } + enum "report-bbe-sm-ne" { + value 262147; + description + "PM Otn bbe sm ne report"; + } + enum "report-fc-sm-ne" { + value 262148; + description + "PM Otn fc sm ne report"; + } + enum "report-esr-sm-ne" { + value 262149; + description + "PM Otn esr sm ne report"; + } + enum "report-sesr-sm-ne" { + value 262150; + description + "PM Otn sesr sm ne report"; + } + enum "report-bber-sm-ne" { + value 262151; + description + "PM Otn bber sm ne report"; + } + enum "report-es-pm-ne" { + value 524288; + description + "PM Otn es pm ne report"; + } + enum "report-ses-pm-ne" { + value 524289; + description + "PM Otn ses pm ne report"; + } + enum "report-uas-pm-ne" { + value 524290; + description + "PM Otn uas pm ne report"; + } + enum "report-bbe-pm-ne" { + value 524291; + description + "PM Otn bbe pm ne report"; + } + enum "report-fc-pm-ne" { + value 524292; + description + "PM Otn fc pm ne report"; + } + enum "report-esr-pm-ne" { + value 524293; + description + "PM Otn esr pm ne report"; + } + enum "report-sesr-pm-ne" { + value 524294; + description + "PM Otn sesr pm ne report"; + } + enum "report-bber-pm-ne" { + value 524295; + description + "PM Otn bber pm ne report"; + } + enum "report-es-sm-fe" { + value 1048584; + description + "PM Otn es sm fe report"; + } + enum "report-ses-sm-fe" { + value 1048585; + description + "PM Otn ses sm fe report"; + } + enum "report-uas-sm-fe" { + value 1048586; + description + "PM Otn uas sm fe report"; + } + enum "report-bbe-sm-fe" { + value 1048587; + description + "PM Otn bbe sm fe report"; + } + enum "report-fc-sm-fe" { + value 1048588; + description + "PM Otn fc sm fe report"; + } + enum "report-esr-sm-fe" { + value 1048589; + description + "PM Otn esr sm fe report"; + } + enum "report-sesr-sm-fe" { + value 1048590; + description + "PM Otn sesr sm fe report"; + } + enum "report-bber-sm-fe" { + value 1048591; + description + "PM Otn bber sm fe report"; + } + enum "report-es-pm-fe" { + value 2097160; + description + "PM Otn es pm fe report"; + } + enum "report-ses-pm-fe" { + value 2097161; + description + "PM Otn ses pm fe report"; + } + enum "report-uas-pm-fe" { + value 2097162; + description + "PM Otn uas pm fe report"; + } + enum "report-bbe-pm-fe" { + value 2097163; + description + "PM Otn bbe pm fe report"; + } + enum "report-fc-pm-fe" { + value 2097164; + description + "PM Otn fc pm fe report"; + } + enum "report-esr-pm-fe" { + value 2097165; + description + "PM Otn esr pm fe report"; + } + enum "report-sesr-pm-fe" { + value 2097166; + description + "PM Otn sesr pm fe report"; + } + enum "report-bber-pm-fe" { + value 2097167; + description + "PM Otn bber pm fe report"; + } + } + description + "Otn report"; + } + + typedef Secytx-threshold { + type enumeration { + enum "thresh-tx-outpktsprotected" { + value 134217728; + description + "PM SECYTX tx OutPktsProtected thresh"; + } + enum "thresh-tx-outpktsencrypted" { + value 134217729; + description + "PM SECYTX tx OutPktsEncrypted thresh"; + } + enum "thresh-tx-outoctetsprotected" { + value 134217730; + description + "PM SECYTX tx OutOctetsProtected thresh"; + } + enum "thresh-tx-outoctetsencrypted" { + value 134217731; + description + "PM SECYTX tx OutOctetsEncrypted thresh"; + } + enum "thresh-tx-outpkts-too-long" { + value 134217732; + description + "PM SECYTX tx OutPktsTooLong thresh"; + } + } + description + "Secytx threshold"; + } + + typedef Pcs-report { + type enumeration { + enum "report-bip" { + value 100663296; + description + "PM PCS Bip report"; + } + enum "report-frm-err" { + value 100663297; + description + "PM PCS frm-err report"; + } + enum "report-bad-sh" { + value 100663298; + description + "PM PCS bad-sh report"; + } + enum "report-es" { + value 100663299; + description + "PM PCS es report"; + } + enum "report-ses" { + value 100663300; + description + "PM PCS ses report"; + } + enum "report-uas" { + value 100663301; + description + "PM PCS uas report"; + } + enum "report-es-fe" { + value 100663302; + description + "PM PCS es-fe report"; + } + enum "report-ses-fe" { + value 100663303; + description + "PM PCS ses-fe_report"; + } + enum "report-uas-fe" { + value 100663304; + description + "PM PCS uas-fe report"; + } + } + description + "Pcs report"; + } + + typedef Cem-threshold { + type enumeration { + enum "thresh-missing-pkts" { + value 24117248; + description + "PM CEM missing-pkts threshold"; + } + enum "thresh-pkts-re-order" { + value 24117249; + description + "PM CEM pkts-reorder threshold"; + } + enum "thresh-jtr-bfr-under" { + value 24117250; + description + "PM CEM jtr-bfr-underrun threshold"; + } + enum "thresh-mis-order-drop" { + value 24117251; + description + "PM CEM mis-order-drop threshold"; + } + enum "thresh-malformed-pkt" { + value 24117252; + description + "PM CEM malformed-pkts threshold"; + } + enum "thresh-es" { + value 24117253; + description + "PM CEM ES threshold"; + } + enum "thresh-ses" { + value 24117254; + description + "PM CEM SES threshold"; + } + enum "thresh-uas" { + value 24117255; + description + "PM CEM UAS threshold"; + } + enum "thresh-fc" { + value 24117256; + description + "PM CEM FC threshold"; + } + enum "thresh-input-errs" { + value 24117257; + description + "PM CEM input-errs threshold"; + } + enum "thresh-output-errs" { + value 24117258; + description + "PM CEM output-errs threshold"; + } + enum "thresh-jtr-bfr-over" { + value 24117259; + description + "PM CEM jtr-bfr-overruns threshold"; + } + enum "thresh-tx-lbits" { + value 24117260; + description + "PM CEM tx-lbits threshold"; + } + enum "thresh-tx-rbits" { + value 24117261; + description + "PM CEM tx-rbits threshold"; + } + enum "thresh-rx-lbits" { + value 24117262; + description + "PM CEM rx-lbits threshold"; + } + enum "thresh-rx-rbits" { + value 24117263; + description + "PM CEM rx-rbits threshold"; + } + enum "thresh-in-pkts" { + value 24117264; + description + "PM CEM ingress-pkts threshold"; + } + enum "thresh-eg-pkts" { + value 24117265; + description + "PM CEM egress-pkts threshold"; + } + enum "thresh-in-pkts-drop" { + value 24117266; + description + "PM CEM ingress-pkts-dropped threshold"; + } + enum "thresh-eg-pkts-drop" { + value 24117267; + description + "PM CEM egress-pkts-dropped threshold"; + } + } + description + "Cem threshold"; + } + + typedef Fec-report { + type enumeration { + enum "report-ec-bits" { + value 131072; + description + "PM Fec ec bits report"; + } + enum "report-uc-words" { + value 131076; + description + "PM Fec uc words report"; + } + enum "report-ec-words" { + value 131077; + description + "PM Fec ec words report"; + } + enum "report-pre-fec-ber-max" { + value 131085; + description + "PM Fec pre fec ber max report"; + } + enum "report-post-fec-ber-max" { + value 131086; + description + "PM Fec post fec ber max report"; + } + enum "report-q-max" { + value 131087; + description + "PM Fec Q max report"; + } + enum "report-q-margin-max" { + value 131088; + description + "PM Fec Q_margin max report"; + } + enum "report-q-margin-inst-max" { + value 131089; + description + "PM Fec Q_margin_inst max report"; + } + enum "report-ber-lane-max" { + value 131090; + description + "PM Fec ber lane max report"; + } + enum "report-ferc-lane-max" { + value 131091; + description + "PM Fec ferc lane max report"; + } + enum "report-pre-fec-ber-min" { + value 131092; + description + "PM Fec pre fec ber min report"; + } + enum "report-post-fec-ber-min" { + value 131093; + description + "PM Fec post fec ber min report"; + } + enum "report-q-min" { + value 131094; + description + "PM Fec Q min report"; + } + enum "report-q-margin-min" { + value 131095; + description + "PM Fec Q_margin min report"; + } + enum "report-q-margin-inst-min" { + value 131096; + description + "PM Fec Q_margin_inst min report"; + } + enum "report-ber-lane-min" { + value 131097; + description + "PM Fec ber lane min report"; + } + enum "report-ferc-lane-min" { + value 131098; + description + "PM Fec ferc lane min report"; + } + } + description + "Fec report"; + } + + typedef Path-report { + type enumeration { + enum "report-cv" { + value 5242880; + description + "PM CV threshold"; + } + enum "report-es" { + value 5242881; + description + "PM ES threshold"; + } + enum "report-ses" { + value 5242882; + description + "PM SES threshold"; + } + enum "report-uas" { + value 5242883; + description + "PM UAS threshold"; + } + } + description + "Path report"; + } + + typedef Secyrx-report { + type enumeration { + enum "report-rx-inpktsun-check-ed" { + value 117440512; + description + "PM SECYRX rx InPktsUnchecked report"; + } + enum "report-rx-inpkts-delayed" { + value 117440513; + description + "PM SECYRX rx InPktsDelayed report"; + } + enum "report-rx-inpktslate" { + value 117440514; + description + "PM SECYRX rx InPktsLate report"; + } + enum "report-rx-inpktsok" { + value 117440515; + description + "PM SECYRX rx InPktsOK report"; + } + enum "report-rx-inpkts-invalid" { + value 117440516; + description + "PM SECYRX rx InPktsInvalid report"; + } + enum "report-rx-inpkts-not-valid" { + value 117440517; + description + "PM SECYRX rx InPktsNotValid report"; + } + enum "report-rx-inpkts-not-usingsa" { + value 117440518; + description + "PM SECYRX rx InPktsNotUsingSA sa report"; + } + enum "report-rx-inpktsunusedsa" { + value 117440519; + description + "PM SECYRX rx InPktsUnusedSA report"; + } + enum "report-rx-inpkts-untagged-hit" { + value 117440520; + description + "PM SECYRX rx InPktsUntaggedHit report"; + } + enum "report-rx-inoctets-validate-d" { + value 117440521; + description + "PM SECYRX rx InOctetsValidated report"; + } + enum "report-rx-inoctetsdecrypted" { + value 117440522; + description + "PM SECYRX rx InOctetsDecrypted report"; + } + } + description + "Secyrx report"; + } + + typedef Secyrx-threshold { + type enumeration { + enum "thresh-rx-inpktsun-check-ed" { + value 117440512; + description + "PM SECYRX rx InPktsUnchecked thresh"; + } + enum "thresh-rx-inpkts-delayed" { + value 117440513; + description + "PM SECYRX rx InPktsDelayed thresh"; + } + enum "thresh-rx-inpktslate" { + value 117440514; + description + "PM SECYRX rx InPktsLate thresh"; + } + enum "thresh-rx-inpktsok" { + value 117440515; + description + "PM SECYRX rx InPktsOK thresh"; + } + enum "thresh-rx-inpkts-invalid" { + value 117440516; + description + "PM SECYRX rx InPktsInvalid thresh"; + } + enum "thresh-rx-inpkts-not-valid" { + value 117440517; + description + "PM SECYRX rx InPktsNotValid thresh"; + } + enum "thresh-rx-inpkts-not-usingsa" { + value 117440518; + description + "PM SECYRX rx InPktsNotUsingSA thresh"; + } + enum "thresh-rx-inpktsunusedsa" { + value 117440519; + description + "PM SECYRX rx InPktsUnusedSA thresh"; + } + enum "thresh-rx-inpkts-untagged-hit" { + value 117440520; + description + "PM SECYRX rx InPktsUntaggedHit thresh"; + } + enum "thresh-rx-inoctets-validate-d" { + value 117440521; + description + "PM SECYRX rx InOctetsValidated thresh"; + } + enum "thresh-rx-inoctetsdecrypted" { + value 117440522; + description + "PM SECYRX rx InOctetsDecrypted thresh"; + } + } + description + "Secyrx threshold"; + } + + typedef Gfp-threshold { + type enumeration { + enum "thresh-rx-bit-err" { + value 67108864; + description + "PM GFP rx bit err threshold"; + } + enum "thresh-rx-inv-typ" { + value 67108865; + description + "PM GFP rx inv type threshold"; + } + enum "thresh-rx-crc" { + value 67108866; + description + "PM GFP rx crc threshold"; + } + enum "thresh-rx-lfd" { + value 67108867; + description + "PM GFP rx lfd threshold"; + } + enum "thresh-rx-csf" { + value 67108868; + description + "PM GFP rx csf threshold"; + } + } + description + "Gfp threshold"; + } + + typedef Stm-report { + type enumeration { + enum "report-ebs" { + value 16777217; + description + "PM EBS REPORT"; + } + enum "report-ess" { + value 16777218; + description + "PM ESS REPORT"; + } + enum "report-esrs" { + value 16777219; + description + "PM ESRS REPORT"; + } + enum "report-sess" { + value 16777220; + description + "PM SES REPORT"; + } + enum "report-sesrs" { + value 16777221; + description + "PM SESR REPORT"; + } + enum "report-bbes" { + value 16777222; + description + "PM BBES REPORT"; + } + enum "report-bbesr" { + value 16777223; + description + "PM BBESR REPORT"; + } + enum "report-uass" { + value 16777224; + description + "PM UASS REPORT"; + } + enum "report-ebl-ne" { + value 16777225; + description + "PM EBLNE REPORT"; + } + enum "report-esl-ne" { + value 16777226; + description + "PM ESLNE REPORT"; + } + enum "report-eslr-ne" { + value 16777227; + description + "PM ESLRNE REPORT"; + } + enum "report-sesl-ne" { + value 16777228; + description + "PM SESL REPORT"; + } + enum "report-sesrl-ne" { + value 16777229; + description + "PM SESRL REPORT"; + } + enum "report-bbel-ne" { + value 16777230; + description + "PM BBELNE REPORT"; + } + enum "report-bberl-ne" { + value 16777231; + description + "PM BBERLNE REPORT"; + } + enum "report-uasl-ne" { + value 16777232; + description + "PM UASNE REPORT"; + } + enum "report-ebl-fe" { + value 16777245; + description + "PM EBFE REPORT"; + } + enum "report-esl-fe" { + value 16777246; + description + "PM ESFE REPORT"; + } + enum "report-esrl-fe" { + value 16777247; + description + "PM EBFE REPORT"; + } + enum "report-sesl-fe" { + value 16777248; + description + "PM SESFE REPORT"; + } + enum "report-sesrl-fe" { + value 16777249; + description + "PM SESRLFE REPORT"; + } + enum "report-bbel-fe" { + value 16777250; + description + "PM BBELFE REPORT"; + } + enum "report-bberl-fe" { + value 16777251; + description + "PM ESFE REPORT"; + } + enum "report-uasl-fe" { + value 16777252; + description + "PM UASLFE REPORT"; + } + } + description + "Stm report"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container performance-management { + description + "Configure pm parameters"; + container stm-hour24 { + description + "set STM threshold"; + container stm-hour24-stm { + description + "Configure stm performance monitoring"; + container stm-hour24-stm-reports { + description + "set stm TCA reporting status"; + list stm-hour24-stm-report { + key "stm-report"; + description + "none"; + leaf stm-report { + type Stm-report; + description + "Stm Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Stm Report"; + } + } + } + container stm-hour24-stm-thresholds { + description + "Configure threshold on stm parameters"; + list stm-hour24-stm-threshold { + key "stm-threshold"; + description + "none"; + leaf stm-threshold { + type Stm-threshold; + description + "Stm Threshold Type"; + } + leaf stm-threshold-value { + type uint32; + mandatory true; + description + "Stm Thresh Value"; + } + } + } + } + } + container second30-gfp { + description + "set opr min threshold"; + container second30-gfp { + description + "Configure gfp performance monitoring"; + container second30-gfp-thresholds { + description + "Configure threshold on gfp parameters"; + list second30-gfp-threshold { + key "gfp-threshold"; + description + "none"; + leaf gfp-threshold { + type Gfp-threshold; + description + "Gfp Threshold Type"; + } + leaf gfp-threshold-value { + type uint32; + mandatory true; + description + "Gfp Threshold Value"; + } + } + } + container second30-gfp-reports { + description + "set gfp TCA reporting status"; + list second30-gfp-report { + key "gfp-report"; + description + "none"; + leaf gfp-report { + type Gfp-report; + description + "Gfp Report Type"; + } + } + } + } + } + container minute15-gfp { + description + "set opr min threshold"; + container minute15-gfp { + description + "Configure gfp performance monitoring"; + container minute15-gfp-reports { + description + "set gfp TCA reporting status"; + list minute15-gfp-report { + key "gfp-report"; + description + "none"; + leaf gfp-report { + type Gfp-report; + description + "Gfp Report Type"; + } + } + } + container minute15-gfp-thresholds { + description + "Configure threshold on gfp parameters"; + list minute15-gfp-threshold { + key "gfp-threshold"; + description + "none"; + leaf gfp-threshold { + type Gfp-threshold; + description + "Gfp Threshold Type"; + } + leaf gfp-threshold-value { + type uint32; + mandatory true; + description + "Gfp Threshold Value"; + } + } + } + } + } + container second30-path { + description + "set opr min threshold"; + container second30otn-path { + description + "configure otn g709 performance monitoring"; + container sec30-otn-path-threshes { + description + "Configure threshold on otn parameters"; + list sec30-otn-path-thresh { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + container second30otn-path-reports { + description + "set otn TCA reporting status"; + list second30otn-path-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + } + } + container sonet-minute15 { + description + "set Sonet threshold"; + container sonet-minute15-path { + description + "Configure Path performance monitoring"; + container sonet-minute15-path-reports { + description + "set Path TCA reporting status"; + list sonet-minute15-path-report { + key "path-report"; + description + "none"; + leaf path-report { + type Path-report; + description + "Path Report Type"; + } + } + } + container sonet-minute15-path-thresholds { + description + "Configure threshold on Path parameters"; + list sonet-minute15-path-threshold { + key "path-threshold"; + description + "none"; + leaf path-threshold { + type Path-threshold; + description + "Path Threshold Type"; + } + leaf path-threshold-value { + type uint32; + mandatory true; + description + "Path Threshold Value"; + } + } + } + } + container sonet-minute15-ocn { + description + "Configure ocn performance monitoring"; + container sonet-minute15-ocn-reports { + description + "set ocn TCA reporting status"; + list sonet-minute15-ocn-report { + key "ocn-report"; + description + "none"; + leaf ocn-report { + type Ocn-report; + description + "Ocn Report Type"; + } + } + } + container sonet-minute15-ocn-thresholds { + description + "Configure threshold on ocn parameters"; + list sonet-minute15-ocn-threshold { + key "ocn-threshold"; + description + "none"; + leaf ocn-threshold { + type Ocn-threshold; + description + "Ocn Threshold Type"; + } + leaf ocn-threshold-value { + type uint32; + mandatory true; + description + "Ocn Threshold Value"; + } + } + } + } + } + container hour24-gfp { + description + "Configure pm parameters of gfp 24 hour interval"; + container hour24-gfp { + description + "Configure gfp performance monitoring"; + container hour24-gfp-reports { + description + "set gfp TCA reporting status"; + list hour24-gfp-report { + key "gfp-report"; + description + "none"; + leaf gfp-report { + type Gfp-report; + description + "Gfp Report Type"; + } + } + } + container hour24-gfp-thresholds { + description + "Configure threshold on gfp parameters"; + list hour24-gfp-threshold { + key "gfp-threshold"; + description + "none"; + leaf gfp-threshold { + type Gfp-threshold; + description + "Gfp Threshold Type"; + } + leaf gfp-threshold-value { + type uint32; + mandatory true; + description + "Gfp Thresh Value"; + } + } + } + } + } + container second30otn-tcms { + description + "set opr min threshold"; + list second30otn-tcm { + key "tcm-number"; + description + "configure otn g709 tcm's performance + monitoring"; + container sec30-otn-tcm-threshes { + description + "Configure threshold on otn parameters"; + list sec30-otn-tcm-thresh { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-tcm-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + container second30otn-tcm-reports { + description + "set otn TCA reporting status"; + list second30otn-tcm-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-tcm-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + leaf tcm-number { + type uint32; + description + "TCM number"; + } + } + } + container ethernet-hour24 { + description + "Configure pm parameters of 24 hour interval"; + container hour24-ether { + description + "Configure ether performance monitoring"; + container hour24-ether-thresholds { + description + "Configure threshold on ether parameters"; + list hour24-ether-threshold { + key "ether-threshold"; + description + "none"; + leaf ether-threshold { + type Ether-threshold; + description + "Ether Threshold Type"; + } + leaf ether-threshold-value { + type uint32; + mandatory true; + description + "Ether Thresh Value"; + } + } + } + container hour24-ether-reports { + description + "set ether TCA reporting status"; + list hour24-ether-report { + key "ether-report"; + description + "none"; + leaf ether-report { + type Ether-report; + description + "Ether Report Type"; + } + } + } + } + } + container minute15otn-tcms { + description + "set opr min threshold"; + list minute15otn-tcm { + key "tcm-number"; + description + "configure otn g709 tcm's performance + monitoring"; + container min15-otn-tcm-threshes { + description + "Configure threshold on otn parameters"; + list min15-otn-tcm-thresh { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-tcm-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + container minute15otn-tcm-reports { + description + "set otn TCA reporting status"; + list minute15otn-tcm-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-tcm-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + leaf tcm-number { + type uint32; + description + "TCM number"; + } + } + } + container oc-hour24 { + description + "set Oc threshold"; + container oc-hour24-ocn { + description + "Configure ocn performance monitoring"; + container oc-hour24-ocn-reports { + description + "set ocn TCA reporting status"; + list oc-hour24-ocn-report { + key "ocn-report"; + description + "none"; + leaf ocn-report { + type Ocn-report; + description + "Ocn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Ocn Report"; + } + } + } + container oc-hour24-ocn-thresholds { + description + "Configure threshold on ocn parameters"; + list oc-hour24-ocn-threshold { + key "ocn-threshold"; + description + "none"; + leaf ocn-threshold { + type Ocn-threshold; + description + "Ocn Threshold Type"; + } + leaf ocn-threshold-value { + type uint32; + mandatory true; + description + "Ocn Thresh Value"; + } + } + } + } + } + container ethernet-minute15 { + description + "set opr min threshold"; + container minute15-ether { + description + "Configure ether performance monitoring"; + container minute15-ether-thresholds { + description + "Configure threshold on ether parameters"; + list minute15-ether-threshold { + key "ether-threshold"; + description + "none"; + leaf ether-threshold { + type Ether-threshold; + description + "Ether Threshold Type"; + } + leaf ether-threshold-value { + type uint32; + mandatory true; + description + "Ether Threshold Value"; + } + } + } + container minute15-ether-reports { + description + "set ether TCA reporting status"; + list minute15-ether-report { + key "ether-report"; + description + "none"; + leaf ether-report { + type Ether-report; + description + "Ether Report Type"; + } + } + } + } + } + container ho-vc-hour24 { + description + "set HO_VC threshold"; + container ho-vc-hour24ho-vc { + description + "Configure ho_vc performance monitoring"; + container ho-vc-hour24ho-vc-reports { + description + "set ho_vc TCA reporting status"; + list ho-vc-hour24ho-vc-report { + key "ho-vc-report"; + description + "none"; + leaf ho-vc-report { + type Ho-vc-report; + description + "ho_vc Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "ho_vc Report"; + } + } + } + container ho-vc-hour24ho-vc-thresholds { + description + "Configure threshold on ho_vc parameters"; + list ho-vc-hour24ho-vc-threshold { + key "ho-vc-threshold"; + description + "none"; + leaf ho-vc-threshold { + type Ho-vc-threshold; + description + "ho_vc Threshold Type"; + } + leaf ho-vc-threshold-value { + type uint32; + mandatory true; + description + "ho_vc Thresh Value"; + } + } + } + } + } + container second30 { + description + "Configure optics performance monitoring for 30 + sec"; + container second30cem { + description + "Configure cem performance monitoring"; + container second30cem-reports { + description + "set cem TCA reporting status"; + list second30cem-report { + key "cem-report"; + description + "none"; + leaf cem-report { + type Cem-report; + description + "CEM Report Type"; + } + } + } + container second30cem-thresholds { + description + "Configure threshold on cem parameters"; + list second30cem-threshold { + key "cem-threshold"; + description + "none"; + leaf cem-threshold { + type Cem-threshold; + description + "CEM Threshold Type"; + } + leaf cem-threshold-value { + type uint32; + mandatory true; + description + "CEM Threshold Value"; + } + } + } + } + container second30otnsec { + description + "Configure otnsec performance monitoring"; + container second30otnsec-reports { + description + "set otnsec TCA reporting status"; + list second30otnsec-report { + key "otnsec-report"; + description + "none"; + leaf otnsec-report { + type Otnsec-report; + description + "OTNSEC pm Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "OTNSEC pm Report"; + } + } + } + container second30otnsec-thresholds { + description + "Configure otnsec threshold"; + list second30otnsec-threshold { + key "otnsec-threshold"; + description + "none"; + leaf otnsec-threshold { + type Otnsec-threshold; + description + "OTNSEC Threshold Type"; + } + leaf otnsec-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "OTNSEC Threshold Value"; + } + } + } + } + container second30pcs { + description + "Configure pcs performance monitoring"; + container second30pcs-thresholds { + description + "Configure pcs threshold"; + list second30pcs-threshold { + key "pcs-threshold"; + description + "none"; + leaf pcs-threshold { + type Pcs-threshold; + description + "Pcs Threshold Type"; + } + leaf pcs-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Pcs Threshold Value"; + } + } + } + container second30pcs-reports { + description + "set pcs TCA reporting status"; + list second30pcs-report { + key "pcs-report"; + description + "none"; + leaf pcs-report { + type Pcs-report; + description + "Pcs Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "PCS Report"; + } + } + } + } + container second30fec { + description + "Configure fec g709 performance monitoring"; + container second30fec-thresholds { + description + "Configure fec threshold"; + list second30fec-threshold { + key "fec-threshold"; + description + "none"; + leaf fec-threshold { + type Fec-threshold; + description + "Fec Threshold Type"; + } + leaf fec-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Fec Threshold Value"; + } + } + } + container second30fec-reports { + description + "set fec TCA reporting status"; + list second30fec-report { + key "fec-report"; + description + "none"; + leaf fec-report { + type Fec-report; + description + "Fec Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Fec Report"; + } + } + } + } + container second30-optics { + description + "Configure optics performance monitoring"; + container second30-optics-reports { + description + "set optics TCA reporting status"; + list second30-optics-report { + key "optics-report"; + description + "none"; + leaf optics-report { + type Optics-report; + description + "Optics Report Type"; + } + } + } + container second30-optics-thresholds { + description + "Configure threshold on optics parameters"; + list second30-optics-threshold { + key "optics-threshold"; + description + "none"; + leaf optics-threshold { + type Optics-threshold; + description + "Optics Threshold Type"; + } + leaf optics-threshold-value { + type int32; + description + "Optics Thresh Value"; + } + leaf dbm { + type uint32; + mandatory true; + description + "Used only for Opt and Opr,To Enter + Threshold in dbm use 1"; + } + } + } + } + container second30secyif { + description + "Configure secy-if performance monitoring"; + container second30secyif-thresholds { + description + "Configure threshold on secyif parameters"; + list second30secyif-threshold { + key "secyif-threshold"; + description + "none"; + leaf secyif-threshold { + type Secyif-threshold; + description + "Secyif Threshold Type"; + } + leaf secyif-threshold-value { + type uint32; + mandatory true; + description + "Secyif Threshold Value"; + } + } + } + container second30secyif-reports { + description + "set secyif TCA reporting status"; + list second30secyif-report { + key "secyif-report"; + description + "none"; + leaf secyif-report { + type Secyif-report; + description + "Secyif Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Enabled Secyif Report"; + } + } + } + } + container second30secyrx { + description + "Configure secy-rx performance monitoring"; + container second30secyrx-thresholds { + description + "Configure threshold on secyrx parameters"; + list second30secyrx-threshold { + key "secyrx-threshold"; + description + "none"; + leaf secyrx-threshold { + type Secyrx-threshold; + description + "Secyrx Threshold Type"; + } + leaf secyrx-threshold-value { + type uint32; + mandatory true; + description + "Secyrx Threshold Value"; + } + } + } + container second30secyrx-reports { + description + "set secyrx TCA reporting status"; + list second30secyrx-report { + key "secyrx-report"; + description + "none"; + leaf secyrx-report { + type Secyrx-report; + description + "Secyrx Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Enabled Secyrx Report"; + } + } + } + } + container second30prbs { + description + "Configure prbs performance monitoring data"; + container second30prbs-thresholds { + description + "Configure prbs threshold"; + list second30prbs-threshold { + key "prbs-threshold"; + description + "none"; + leaf prbs-threshold { + type Prbs-threshold; + description + "Prbs Threshold Type"; + } + leaf prbs-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Prbs Threshold Value"; + } + } + } + container second30prbs-reports { + description + "set prbs TCA reporting status"; + list second30prbs-report { + key "prbs-report"; + description + "none"; + leaf prbs-report { + type Prbs-report; + description + "Prbs Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Prbs Report"; + } + } + } + } + container second30otn { + description + "configure otn g709 performance monitoring"; + container second30-otn-threshes { + description + "Configure threshold on otn parameters"; + list second30-otn-thresh { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + container second30otn-reports { + description + "set otn TCA reporting status"; + list second30otn-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + } + container second30secytx { + description + "Configure secy-tx performance monitoring"; + container second30secytx-thresholds { + description + "Configure threshold on secytx parameters"; + list second30secytx-threshold { + key "secytx-threshold"; + description + "none"; + leaf secytx-threshold { + type Secytx-threshold; + description + "Secytx Threshold Type"; + } + leaf secytx-threshold-value { + type uint32; + mandatory true; + description + "Secytx Threshold Value"; + } + } + } + container second30secytx-reports { + description + "set secytx TCA reporting status"; + list second30secytx-report { + key "secytx-report"; + description + "none"; + leaf secytx-report { + type Secytx-report; + description + "Secytx Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Enabled Secytx Report"; + } + } + } + } + container second30fc { + description + "Configure fc performance monitoring"; + container second30fc-thresholds { + description + "Configure threshold on fc parameters"; + list second30fc-threshold { + key "fc-threshold"; + description + "none"; + leaf fc-threshold { + type Fc-threshold; + description + "Fc Threshold Type"; + } + leaf fc-threshold-value { + type uint32; + mandatory true; + description + "Fc Threshold Value"; + } + } + } + container second30fc-reports { + description + "set fc TCA reporting status"; + list second30fc-report { + key "fc-report"; + description + "none"; + leaf fc-report { + type Fc-report; + description + "Fc Report Type"; + } + } + } + } + } + container hour24otn-tcms { + description + "Configure pm parameters of tcm's 24 hour + interval"; + list hour24otn-tcm { + key "tcm-number"; + description + "configure otn g709 tcm's performance + monitoring"; + container hour24otn-tcm-thresholds { + description + "Configure threshold on otn parameters"; + list hour24otn-tcm-threshold { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-tcm-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + container hour24otn-tcm-reports { + description + "set otn TCA reporting status"; + list hour24otn-tcm-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-tcm-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + leaf tcm-number { + type uint32; + description + "TCM number"; + } + } + } + container sts-minute15 { + description + "set STS threshold"; + container sts-minute15-path { + description + "Configure Path performance monitoring"; + container sts-minute15-path-reports { + description + "set Path TCA reporting status"; + list sts-minute15-path-report { + key "path-report"; + description + "none"; + leaf path-report { + type Sts-report; + description + "Path Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Path Report"; + } + } + } + container sts-minute15-path-thresholds { + description + "Configure threshold on Path parameters"; + list sts-minute15-path-threshold { + key "path-threshold"; + description + "none"; + leaf path-threshold { + type Sts-threshold; + description + "Path Threshold Type"; + } + leaf path-threshold-value { + type uint32; + mandatory true; + description + "Path Threshold Value"; + } + } + } + } + } + container hour24 { + description + "Configure pm parameters of 24 hour interval"; + container hour24otn { + description + "configure otn g709 performance monitoring"; + container hour24otn-thresholds { + description + "Configure threshold on otn parameters"; + list hour24otn-threshold { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + container hour24otn-reports { + description + "set otn TCA reporting status"; + list hour24otn-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + } + container hour24fc { + description + "Configure fc performance monitoring"; + container hour24fc-reports { + description + "set fc TCA reporting status"; + list hour24fc-report { + key "fc-report"; + description + "none"; + leaf fc-report { + type Fc-report; + description + "Fc Report Type"; + } + } + } + container hour24fc-thresholds { + description + "Configure threshold on fc parameters"; + list hour24fc-threshold { + key "fc-threshold"; + description + "none"; + leaf fc-threshold { + type Fc-threshold; + description + "Fc Threshold Type"; + } + leaf fc-threshold-value { + type uint32; + mandatory true; + description + "Fc Thresh Value"; + } + } + } + } + container hour24cem { + description + "Configure cem performance monitoring"; + container hour24cem-reports { + description + "set cem TCA reporting status"; + list hour24cem-report { + key "cem-report"; + description + "none"; + leaf cem-report { + type Cem-report; + description + "CEM Report Type"; + } + } + } + container hour24cem-thresholds { + description + "Configure threshold on cem parameters"; + list hour24cem-threshold { + key "cem-threshold"; + description + "none"; + leaf cem-threshold { + type Cem-threshold; + description + "CEM Threshold Type"; + } + leaf cem-threshold-value { + type uint32; + mandatory true; + description + "CEM Thresh Value"; + } + } + } + } + container hour24-optics { + description + "Configure optics performance monitoring"; + container hour24-optics-thresholds { + description + "Configure threshold on optics parameters"; + list hour24-optics-threshold { + key "optics-threshold"; + description + "none"; + leaf optics-threshold { + type Optics-threshold; + description + "Optics Threshold Type"; + } + leaf optics-threshold-value { + type int32; + description + "Optics Thresh Value"; + } + leaf dbm { + type uint32; + mandatory true; + description + "Used only for Opt and Opr,To Enter + Threshold in dbm use 1"; + } + } + } + container hour24-optics-reports { + description + "set optics TCA reporting status"; + list hour24-optics-report { + key "optics-report"; + description + "none"; + leaf optics-report { + type Optics-report; + description + "Optics Report Type"; + } + } + } + } + container hour24pcs { + description + "Configure pcs performance monitoring"; + container hour24pcs-thresholds { + description + "Configure pcs threshold"; + list hour24pcs-threshold { + key "pcs-threshold"; + description + "none"; + leaf pcs-threshold { + type Pcs-threshold; + description + "Pcs Threshold Type"; + } + leaf pcs-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Pcs Threshold Value"; + } + } + } + container hour24pcs-reports { + description + "set pcs TCA reporting status"; + list hour24pcs-report { + key "pcs-report"; + description + "none"; + leaf pcs-report { + type Pcs-report; + description + "Pcs Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "PCS Report"; + } + } + } + } + container hour24fec { + description + "Configure fec g709 performance monitoring"; + container hour24fec-thresholds { + description + "Configure fec threshold"; + list hour24fec-threshold { + key "fec-threshold"; + description + "none"; + leaf fec-threshold { + type Fec-threshold; + description + "Fec Threshold Type"; + } + leaf fec-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Fec threshold value"; + } + } + } + container hour24fec-reports { + description + "set fec TCA reporting status"; + list hour24fec-report { + key "fec-report"; + description + "none"; + leaf fec-report { + type Fec-report; + description + "Fec Report type"; + } + leaf enable { + type Report; + mandatory true; + description + "Fec Report"; + } + } + } + } + container hour24secyif { + description + "Configure secy-if performance monitoring"; + container hour24secyif-reports { + description + "set secyif TCA reporting status"; + list hour24secyif-report { + key "secyif-report"; + description + "none"; + leaf secyif-report { + type Secyif-report; + description + "Secyif Report type"; + } + leaf enable { + type Report; + mandatory true; + description + "Secyif Report"; + } + } + } + container hour24secyif-thresholds { + description + "Configure secyif threshold"; + list hour24secyif-threshold { + key "secyif-threshold"; + description + "none"; + leaf secyif-threshold { + type Secyif-threshold; + description + "Secyif Threshold Type"; + } + leaf secyif-threshold-value { + type uint32; + mandatory true; + description + "Secyif threshold value"; + } + } + } + } + container hour24e1 { + description + "Configure e1 performance monitoring"; + container hour24e1-thresholds { + description + "Configure e1 threshold"; + list hour24e1-threshold { + key "e1-threshold"; + description + "none"; + leaf e1-threshold { + type E1-threshold; + description + "E1 Threshold Type"; + } + leaf e1-threshold-value { + type uint32; + mandatory true; + description + "E1 Threshold Value"; + } + } + } + container hour24e1-reports { + description + "set e1 TCA reporting status"; + list hour24e1-report { + key "e1-report"; + description + "none"; + leaf e1-report { + type E1-report; + description + "E1 Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "E1 Report"; + } + } + } + } + container hour24secyrx { + description + "Configure secy-rx performance monitoring"; + container hour24secyrx-reports { + description + "set secyrx TCA reporting status"; + list hour24secyrx-report { + key "secyrx-report"; + description + "none"; + leaf secyrx-report { + type Secyrx-report; + description + "Secyrx Report type"; + } + leaf enable { + type Report; + mandatory true; + description + "Secyrx Report"; + } + } + } + container hour24secyrx-thresholds { + description + "Configure secyrx threshold"; + list hour24secyrx-threshold { + key "secyrx-threshold"; + description + "none"; + leaf secyrx-threshold { + type Secyrx-threshold; + description + "Secyrx Threshold Type"; + } + leaf secyrx-threshold-value { + type uint32; + mandatory true; + description + "Secyrx threshold value"; + } + } + } + } + container hour24secytx { + description + "Configure secy-tx performance monitoring"; + container hour24secytx-thresholds { + description + "Configure secytx threshold"; + list hour24secytx-threshold { + key "secytx-threshold"; + description + "none"; + leaf secytx-threshold { + type Secytx-threshold; + description + "Secytx Threshold Type"; + } + leaf secytx-threshold-value { + type uint32; + mandatory true; + description + "Secytx threshold value"; + } + } + } + container hour24secytx-reports { + description + "set secytx TCA reporting status"; + list hour24secytx-report { + key "secytx-report"; + description + "none"; + leaf secytx-report { + type Secytx-report; + description + "Secytx Report type"; + } + leaf enable { + type Report; + mandatory true; + description + "Secytx Report"; + } + } + } + } + container hour24prbs { + description + "Configure prbs performance monitoring data"; + container hour24prbs-thresholds { + description + "Configure prbs threshold"; + list hour24prbs-threshold { + key "prbs-threshold"; + description + "none"; + leaf prbs-threshold { + type Prbs-threshold; + description + "Prbs Threshold Type"; + } + leaf prbs-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "PRBS threshold value"; + } + } + } + container hour24prbs-reports { + description + "set prbs TCA reporting status"; + list hour24prbs-report { + key "prbs-report"; + description + "none"; + leaf prbs-report { + type Prbs-report; + description + "Prbs Report type"; + } + leaf enable { + type Report; + mandatory true; + description + "Prbs Report"; + } + } + } + } + container hour24otnsec { + description + "Configure otnsec performance monitoring"; + container hour24otnsec-reports { + description + "set otnsec TCA reporting status"; + list hour24otnsec-report { + key "otnsec-report"; + description + "none"; + leaf otnsec-report { + type Otnsec-report; + description + "OTNSEC Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "OTNSEC Report"; + } + } + } + container hour24otnsec-thresholds { + description + "Configure otnsec threshold"; + list hour24otnsec-threshold { + key "otnsec-threshold"; + description + "none"; + leaf otnsec-threshold { + type Otnsec-threshold; + description + "OTNSEC Threshold Type"; + } + leaf otnsec-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "OTNSEC Threshold Value"; + } + } + } + } + } + container ho-vc-minute15 { + description + "set HO_VC threshold"; + container ho-vc-minute15ho-vc { + description + "Configure ho_vc performance monitoring"; + container ho-vc-minute15ho-vc-reports { + description + "set ho_vc TCA reporting status"; + list ho-vc-minute15ho-vc-report { + key "ho-vc-report"; + description + "none"; + leaf ho-vc-report { + type Ho-vc-report; + description + "ho_vc Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "ho_vc Report"; + } + } + } + container ho-vc-minute15ho-vc-thresholds { + description + "Configure threshold on ho_vc parameters"; + list ho-vc-minute15ho-vc-threshold { + key "ho-vc-threshold"; + description + "none"; + leaf ho-vc-threshold { + type Ho-vc-threshold; + description + "ho_vc Threshold Type"; + } + leaf ho-vc-threshold-value { + type uint32; + mandatory true; + description + "ho_vc Threshold Value"; + } + } + } + } + } + container sts-hour24 { + description + "set STS threshold"; + container sts-hour24-path { + description + "Configure Path performance monitoring"; + container sts-hour24-path-thresholds { + description + "Configure threshold on Path parameters"; + list sts-hour24-path-threshold { + key "path-threshold"; + description + "none"; + leaf path-threshold { + type Sts-threshold; + description + "Path Threshold Type"; + } + leaf path-threshold-value { + type uint32; + mandatory true; + description + "Path Thresh Value"; + } + } + } + container sts-hour24-path-reports { + description + "set Path TCA reporting status"; + list sts-hour24-path-report { + key "path-report"; + description + "none"; + leaf path-report { + type Sts-report; + description + "Path Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Path Report"; + } + } + } + } + } + container stm-minute15 { + description + "set STM threshold"; + container stm-minute15-stm { + description + "Configure stm performance monitoring"; + container stm-minute15-stm-reports { + description + "set stm TCA reporting status"; + list stm-minute15-stm-report { + key "stm-report"; + description + "none"; + leaf stm-report { + type Stm-report; + description + "Stm Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Stm Report"; + } + } + } + container stm-minute15-stm-thresholds { + description + "Configure threshold on stm parameters"; + list stm-minute15-stm-threshold { + key "stm-threshold"; + description + "none"; + leaf stm-threshold { + type Stm-threshold; + description + "Stm Threshold Type"; + } + leaf stm-threshold-value { + type uint32; + mandatory true; + description + "Stm Threshold Value"; + } + } + } + } + } + container sonet-hour24 { + description + "set Sonet threshold"; + container sonet-hour24-path { + description + "Configure Path performance monitoring"; + container sonet-hour24-path-thresholds { + description + "Configure threshold on Path parameters"; + list sonet-hour24-path-threshold { + key "path-threshold"; + description + "none"; + leaf path-threshold { + type Path-threshold; + description + "Path Threshold Type"; + } + leaf path-threshold-value { + type uint32; + mandatory true; + description + "Path Thresh Value"; + } + } + } + container sonet-hour24-path-reports { + description + "set Path TCA reporting status"; + list sonet-hour24-path-report { + key "path-report"; + description + "none"; + leaf path-report { + type Path-report; + description + "Path Report Type"; + } + } + } + } + container sonet-hour24-ocn { + description + "Configure ocn performance monitoring"; + container sonet-hour24-ocn-thresholds { + description + "Configure threshold on ocn parameters"; + list sonet-hour24-ocn-threshold { + key "ocn-threshold"; + description + "none"; + leaf ocn-threshold { + type Ocn-threshold; + description + "Ocn Threshold Type"; + } + leaf ocn-threshold-value { + type uint32; + mandatory true; + description + "Ocn Thresh Value"; + } + } + } + container sonet-hour24-ocn-reports { + description + "set ocn TCA reporting status"; + list sonet-hour24-ocn-report { + key "ocn-report"; + description + "none"; + leaf ocn-report { + type Ocn-report; + description + "Ocn Report Type"; + } + } + } + } + } + container minute15-path { + description + "set opr min threshold"; + container minute15otn-path { + description + "configure otn g709 performance monitoring"; + container minute15otn-path-reports { + description + "set otn TCA reporting status"; + list minute15otn-path-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + container min15-otn-path-threshes { + description + "Configure threshold on otn parameters"; + list min15-otn-path-thresh { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + } + } + container oc-minute15 { + description + "set OC threshold"; + container oc-minute15-ocn { + description + "Configure ocn performance monitoring"; + container oc-minute15-ocn-reports { + description + "set ocn TCA reporting status"; + list oc-minute15-ocn-report { + key "ocn-report"; + description + "none"; + leaf ocn-report { + type Ocn-report; + description + "Ocn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Ocn Report"; + } + } + } + container oc-minute15-ocn-thresholds { + description + "Configure threshold on ocn parameters"; + list oc-minute15-ocn-threshold { + key "ocn-threshold"; + description + "none"; + leaf ocn-threshold { + type Ocn-threshold; + description + "Ocn Threshold Type"; + } + leaf ocn-threshold-value { + type uint32; + mandatory true; + description + "Ocn Threshold Value"; + } + } + } + } + } + container ethernet-second30 { + description + "Configure ethernet performance monitoring for + 30 sec"; + container second30-ether { + description + "Configure ether performance monitoring"; + container second30-ether-thresholds { + description + "Configure threshold on ether parameters"; + list second30-ether-threshold { + key "ether-threshold"; + description + "none"; + leaf ether-threshold { + type Ether-threshold; + description + "Ether Threshold Type"; + } + leaf ether-threshold-value { + type uint32; + mandatory true; + description + "Ether Threshold Value"; + } + } + } + container second30-ether-reports { + description + "set ether TCA reporting status"; + list second30-ether-report { + key "ether-report"; + description + "none"; + leaf ether-report { + type Ether-report; + description + "Ether Report Type"; + } + } + } + } + } + container hour24-path { + description + "Configure pm parameters of pathmonitor 24 hour + interval"; + container hour24otn-path { + description + "configure otn g709 performance monitoring"; + container hour24otn-path-reports { + description + "set otn TCA reporting status"; + list hour24otn-path-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + container hour24otn-path-thresholds { + description + "Configure threshold on otn parameters"; + list hour24otn-path-threshold { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + } + } + container minute15 { + description + "set opr min threshold"; + container minute15cem { + description + "Configure cem performance monitoring"; + container minute15cem-reports { + description + "set cem TCA reporting status"; + list minute15cem-report { + key "cem-report"; + description + "none"; + leaf cem-report { + type Cem-report; + description + "CEM Report Type"; + } + } + } + container minute15cem-thresholds { + description + "Configure threshold on cem parameters"; + list minute15cem-threshold { + key "cem-threshold"; + description + "none"; + leaf cem-threshold { + type Cem-threshold; + description + "CEM Threshold Type"; + } + leaf cem-threshold-value { + type uint32; + mandatory true; + description + "CEM Threshold Value"; + } + } + } + } + container minute15e1 { + description + "Configure e1 performance monitoring"; + container minute15e1-thresholds { + description + "Configure e1 threshold"; + list minute15e1-threshold { + key "e1-threshold"; + description + "none"; + leaf e1-threshold { + type E1-threshold; + description + "E1 Threshold Type"; + } + leaf e1-threshold-value { + type uint32; + mandatory true; + description + "E1 Threshold Value"; + } + } + } + container minute15e1-reports { + description + "set e1 TCA reporting status"; + list minute15e1-report { + key "e1-report"; + description + "none"; + leaf e1-report { + type E1-report; + description + "E1 Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "E1 Report"; + } + } + } + } + container minute15-optics { + description + "Configure optics performance monitoring"; + container minute15-optics-thresholds { + description + "Configure threshold on optics parameters"; + list minute15-optics-threshold { + key "optics-threshold"; + description + "none"; + leaf optics-threshold { + type Optics-threshold; + description + "Optics Threshold Type"; + } + leaf optics-threshold-value { + type int32; + description + "Optics Threshold Value"; + } + leaf dbm { + type uint32; + mandatory true; + description + "Used only for Opt and Opr,To Enter + Threshold in dbm use 1"; + } + } + } + container minute15-optics-reports { + description + "set optics TCA reporting status"; + list minute15-optics-report { + key "optics-report"; + description + "none"; + leaf optics-report { + type Optics-report; + description + "Optics Report Type"; + } + } + } + } + container minute15secyif { + description + "Configure secy-if performance monitoring"; + container minute15secyif-reports { + description + "set secyif TCA reporting status"; + list minute15secyif-report { + key "secyif-report"; + description + "none"; + leaf secyif-report { + type Secyif-report; + description + "Secyif Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Enabled Secyif Report"; + } + } + } + container minute15secyif-thresholds { + description + "Configure threshold on secyif parameters"; + list minute15secyif-threshold { + key "secyif-threshold"; + description + "none"; + leaf secyif-threshold { + type Secyif-threshold; + description + "Secyif Threshold Type"; + } + leaf secyif-threshold-value { + type uint32; + mandatory true; + description + "Secyif Threshold Value"; + } + } + } + } + container minute15secyrx { + description + "Configure secy-rx performance monitoring"; + container minute15secyrx-reports { + description + "set secyrx TCA reporting status"; + list minute15secyrx-report { + key "secyrx-report"; + description + "none"; + leaf secyrx-report { + type Secyrx-report; + description + "Secyrx Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Enabled Secyrx Report"; + } + } + } + container minute15secyrx-thresholds { + description + "Configure threshold on secyrx parameters"; + list minute15secyrx-threshold { + key "secyrx-threshold"; + description + "none"; + leaf secyrx-threshold { + type Secyrx-threshold; + description + "Secyrx Threshold Type"; + } + leaf secyrx-threshold-value { + type uint32; + mandatory true; + description + "Secyrx Threshold Value"; + } + } + } + } + container minute15pcs { + description + "Configure pcs performance monitoring"; + container minute15pcs-reports { + description + "set pcs TCA reporting status"; + list minute15pcs-report { + key "pcs-report"; + description + "none"; + leaf pcs-report { + type Pcs-report; + description + "Pcs Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "PCS Report"; + } + } + } + container minute15pcs-thresholds { + description + "Configure pcs threshold"; + list minute15pcs-threshold { + key "pcs-threshold"; + description + "none"; + leaf pcs-threshold { + type Pcs-threshold; + description + "Pcs Threshold Type"; + } + leaf pcs-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Pcs Threshold Value"; + } + } + } + } + container minute15fec { + description + "Configure fec g709 performance monitoring"; + container minute15fec-thresholds { + description + "Configure fec threshold"; + list minute15fec-threshold { + key "fec-threshold"; + description + "none"; + leaf fec-threshold { + type Fec-threshold; + description + "Fec Threshold Type"; + } + leaf fec-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Fec Threshold Value"; + } + } + } + container minute15fec-reports { + description + "set fec TCA reporting status"; + list minute15fec-report { + key "fec-report"; + description + "none"; + leaf fec-report { + type Fec-report; + description + "Fec Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Fec Report"; + } + } + } + } + container minute15secytx { + description + "Configure secy-tx performance monitoring"; + container minute15secytx-reports { + description + "set secytx TCA reporting status"; + list minute15secytx-report { + key "secytx-report"; + description + "none"; + leaf secytx-report { + type Secytx-report; + description + "Secytx Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Enabled Secytx Report"; + } + } + } + container minute15secytx-thresholds { + description + "Configure threshold on secytx parameters"; + list minute15secytx-threshold { + key "secytx-threshold"; + description + "none"; + leaf secytx-threshold { + type Secytx-threshold; + description + "Secytx Threshold Type"; + } + leaf secytx-threshold-value { + type uint32; + mandatory true; + description + "Secytx Threshold Value"; + } + } + } + } + container minute15fc { + description + "Configure fc performance monitoring"; + container minute15fc-reports { + description + "set fc TCA reporting status"; + list minute15fc-report { + key "fc-report"; + description + "none"; + leaf fc-report { + type Fc-report; + description + "Fc Report Type"; + } + } + } + container minute15fc-thresholds { + description + "Configure threshold on fc parameters"; + list minute15fc-threshold { + key "fc-threshold"; + description + "none"; + leaf fc-threshold { + type Fc-threshold; + description + "Fc Threshold Type"; + } + leaf fc-threshold-value { + type uint32; + mandatory true; + description + "Fc Threshold Value"; + } + } + } + } + container minute15otnsec { + description + "Configure otnsec performance monitoring"; + container minute15otnsec-thresholds { + description + "Configure otnsec threshold"; + list minute15otnsec-threshold { + key "otnsec-threshold"; + description + "none"; + leaf otnsec-threshold { + type Otnsec-threshold; + description + "OTNSEC Threshold Type"; + } + leaf otnsec-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "OTNSEC Threshold Value"; + } + } + } + container minute15otnsec-reports { + description + "set otnsec TCA reporting status"; + list minute15otnsec-report { + key "otnsec-report"; + description + "none"; + leaf otnsec-report { + type Otnsec-report; + description + "OTNSEC Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "OTNSEC Report"; + } + } + } + } + container minute15prbs { + description + "Configure prbs performance monitoring data"; + container minute15prbs-reports { + description + "set prbs TCA reporting status"; + list minute15prbs-report { + key "prbs-report"; + description + "none"; + leaf prbs-report { + type Prbs-report; + description + "Prbs Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Prbs Report"; + } + } + } + container minute15prbs-thresholds { + description + "Configure prbs threshold"; + list minute15prbs-threshold { + key "prbs-threshold"; + description + "none"; + leaf prbs-threshold { + type Prbs-threshold; + description + "Prbs Threshold Type"; + } + leaf prbs-threshold-value { + type string { + length "1..20"; + } + mandatory true; + description + "Prbs Threshold Value"; + } + } + } + } + container minute15otn { + description + "configure otn g709 performance monitoring"; + container min15-otn-threshes { + description + "Configure threshold on otn parameters"; + list min15-otn-thresh { + key "otn-threshold"; + description + "none"; + leaf otn-threshold { + type Otn-threshold; + description + "Otn Threshold Type"; + } + leaf otn-threshold-value { + type uint32; + mandatory true; + description + "Otn Threshold Value"; + } + } + } + container minute15otn-reports { + description + "set otn TCA reporting status"; + list minute15otn-report { + key "otn-report"; + description + "none"; + leaf otn-report { + type Otn-report; + description + "Otn Report Type"; + } + leaf enable { + type Report; + mandatory true; + description + "Otn Report"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-clear-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-clear-act.yang new file mode 100644 index 000000000..6668a0bec --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-clear-act.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-pmengine-clear-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pmengine-clear-act"; + prefix pmengine-clear-act; + + 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 clear statistics for pm-engine module. + + Copyright (c) 2018-2020, 2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-03-18 { + description + "mandatory true"; + semver:module-version "2.0.0"; + } + revision 2020-09-13 { + description + "Clear per layer support for otu controllers"; + semver:module-version "1.2.0"; + } + revision 2019-10-15 { + description + "Added support for flexible interval"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-01-09 { + description + "IOS XR 6.5.1 revision."; + } + + rpc clear-controller-pm { + description + "Clear pm-engine statistics"; + input { + leaf controller { + type string; + mandatory true; + description + "Controller name in R/S/I/P format"; + } + leaf pm { + type empty; + mandatory true; + description + "clear pm counters"; + } + leaf interval { + type uint8 { + range "0..4"; + } + description + "Clear 24-hour(0)/15-min(1)/30-sec(2)/Flexible-Interval(3)/all(4) pm statistics"; + } + leaf layer { + type string; + description + "Layer name to clear PM counter for specific layer"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-gl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-gl-cfg.yang new file mode 100644 index 000000000..c50ace5d3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-gl-cfg.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-pmengine-gl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pmengine-gl-cfg"; + prefix pmengine-gl-cfg; + + 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 pmengine-gl package configuration. + + This module contains definitions + for the following management objects: + performance-monitor: Configure flex-bin interval + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-20 { + description + "Added new global config for flexbin interval."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container performance-monitor { + description + "Configure flex-bin interval"; + container flex-bin { + description + "Configure flex-bin interval"; + leaf interval { + type uint32 { + range "1..10"; + } + units "second"; + description + "Configure the flex-bin interval in seconds <1 + ,10>"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper-sub1.yang new file mode 100644 index 000000000..1fd42f4a8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper-sub1.yang @@ -0,0 +1,3835 @@ +submodule Cisco-IOS-XR-pmengine-oper-sub1 { + belongs-to Cisco-IOS-XR-pmengine-oper { + prefix Cisco-IOS-XR-pmengine-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pmengine package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-20 { + description + "Added 30-sec bucket history yang support for ODU controllers + 2022-08-16 + Changed data type of some leaf nodes from uint32 to uint64 + 2022-05-10 + Removed unsupported parameters for OSC controller + 2022-05-10 + Removed unsupported parameters for OMS controller + 2022-05-10 + Removed unsupported parameters for OCH controller + 2022-05-10 + Removed unsupported parameters for DFB controller + 2022-04-03 + Added opt_min_50dbm_cap caps to set dBm Optics Parameter mininal value to -50.0dBm + 2022-03-06 + Support added for user-defined and pn9 patterns in prbs layer. + 2021-12-17 + Added oper support for Host PM parameters in FEC layer. + 2021-10-13 + Support added for cumulative-bad-sh and cumulative-frm-err in pcs layer. + 2021-10-06 + Support added for new counters in Optics layer."; + semver:module-version "1.5.0"; + } + revision 2021-07-09 { + description + "Support added for prbs layer for fibre-channel, ocn, stm and ethernet controllers. Support added for cem layer and controller. Container cem added. + 2021-04-26 + Support added for E1 controller. + 2021-04-14 + Support added for pcs and fec layers for fibre-channel controller. + 2021-02-24 + Support added for fc layer and controller. Container fibre-channel added."; + semver:module-version "1.4.0"; + } + revision 2020-09-02 { + description + "Added PM support for PRBS direction feature. + 2020-07-20 + Added parameter for cumulative BIP count in pcs pmengine bag. + 2020-04-17 + Added Instantaneous Q Margin in fec layer. + 2020-04-07 + Changes made to support TCA for OTU PRBS layer."; + semver:module-version "1.3.0"; + } + revision 2019-10-10 { + description + "Added support for flexible bin."; + semver:module-version "1.2.0"; + } + revision 2019-09-30 { + description + "Existing optics parameter PMD is deprecated and SOPMD is added to use instead. + 2019-08-28 + Max and Min time support for fec and optics layer parameters. + 2019-06-01 + Added Range attribute for the history buckets."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-03-30 { + description + "OTU PRBS Stats Added"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pm-sonet-path-width-enum { + type enumeration { + enum "none" { + value 0; + description + "Sonet Path Width NONE "; + } + enum "sts1" { + value 1; + description + "Sonet Path Width STS1 "; + } + enum "sts3c-stm1" { + value 2; + description + "Sonet Path Width sts3cSTM1 "; + } + enum "sts12c-stm4" { + value 3; + description + "Sonet Path Width sts12cSTM4 "; + } + enum "sts24c" { + value 4; + description + "Sonet Path Width sts24 "; + } + enum "sts48c-stm16" { + value 5; + description + "Sonet Path Width sts48cSTM16 "; + } + enum "sts192c-stm64" { + value 6; + description + "Sonet Path Width sts192cSTM64 "; + } + enum "sts768c-stm256" { + value 7; + description + "Sonet Path Width sts768cSTM256 "; + } + } + description + "Sonet Path Width Enum"; + } + + typedef Pm-prbs-status-et { + type enumeration { + enum "not-applicable" { + value 0; + description + "not applicable"; + } + enum "locked" { + value 1; + description + "locked"; + } + enum "un-locked" { + value 2; + description + "unlocked"; + } + } + description + "PM PRBS Status Mode Enum"; + } + + typedef Pm-prbs-pattern-et { + type enumeration { + enum "prbs-none" { + value 0; + description + "pn none"; + } + enum "pn31" { + value 1; + description + "pn31"; + } + enum "pn23" { + value 2; + description + "pn23"; + } + enum "pn11" { + value 4; + description + "pn11"; + } + enum "inv-pn31" { + value 8; + description + "inv pn31"; + } + enum "inv-pn11" { + value 16; + description + "inv pn11"; + } + enum "pn15" { + value 32; + description + "pn15"; + } + enum "pn7" { + value 64; + description + "pn7"; + } + enum "pn9" { + value 128; + description + "PRBS Pattern pn9"; + } + enum "user-defined" { + value 256; + description + "User Defined PRBS Pattern"; + } + } + description + "PM PRBS Pattern Mode Enum"; + } + + typedef Pm-prbs-direction-et { + type enumeration { + enum "none" { + value 0; + description + "none"; + } + enum "line" { + value 1; + description + "line"; + } + enum "system" { + value 2; + description + "system"; + } + } + description + "PM PRBS Direction Mode Enum"; + } + + grouping PM-E1-PARAM { + description + "PM E1 PARAM"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf valid { + type boolean; + description + "valid"; + } + } + + grouping PM-E1-PARAS { + description + "all paras in e1"; + container line-code-violations { + description + "Line Code Violations"; + uses PM-E1-PARAM; + } + container path-code-violations { + description + "Path Code Violations"; + uses PM-E1-PARAM; + } + container sels { + description + "SELS"; + uses PM-E1-PARAM; + } + container les { + description + "LES"; + uses PM-E1-PARAM; + } + container aiss-sef { + description + "AISS SEF"; + uses PM-E1-PARAM; + } + container fcp { + description + "FCP"; + uses PM-E1-PARAM; + } + container es { + description + "ES "; + uses PM-E1-PARAM; + } + container ses { + description + "SES"; + uses PM-E1-PARAM; + } + container uas { + description + "UAS"; + uses PM-E1-PARAM; + } + container es-fe { + description + "ES FE"; + uses PM-E1-PARAM; + } + container ses-fe { + description + "SES FE"; + uses PM-E1-PARAM; + } + container uas-fe { + description + "UAS FE"; + uses PM-E1-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string; + description + "timestamp"; + } + leaf last-clear-time { + type string; + description + "last clear time"; + } + leaf last-clear15-min-timep { + type string; + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string; + description + "last clear time"; + } + } + + grouping PM-CEM-PARAM { + description + "PM CEM PARAM"; + leaf data { + type uint64; + description + "the value contained in the parameter"; + } + leaf threshold { + type uint64; + description + "the threshold set for the parameter by user"; + } + leaf tca-report { + type uint8; + description + "flag to enable reporting of TCA"; + } + leaf supp-flag { + type uint8; + description + "flag to check if parameter is supported"; + } + } + + grouping PM-CEM-PARAS { + description + "PM CEM PARAS"; + container missing-pkts { + description + "Number of missing packets"; + uses PM-CEM-PARAM; + } + container pkts-reorder { + description + "Number of packets detected out of sequence, but + successfully re-ordered."; + uses PM-CEM-PARAM; + } + container jtr-bfr-under { + description + "Number of times a packet needed to be played out + and the jitter buffer was empty."; + uses PM-CEM-PARAM; + } + container mis-order-drop { + description + "Number of packets detected out of order, and + could not be re-ordered, or could not fit in the + jitter buffer."; + uses PM-CEM-PARAM; + } + container malformed-pkt { + description + "Number of packets detected with unexpected size, + or bad headers stack."; + uses PM-CEM-PARAM; + } + container es { + description + "number of Error Seconds encountered."; + uses PM-CEM-PARAM; + } + container ses { + description + "number of Severely Error Seconds"; + uses PM-CEM-PARAM; + } + container uas { + description + "number of UnAvailable Seconds."; + uses PM-CEM-PARAM; + } + container fc { + description + "number of TDM failure events"; + uses PM-CEM-PARAM; + } + container input-errs { + description + "number of input errors"; + uses PM-CEM-PARAM; + } + container output-errs { + description + "number of output errors"; + uses PM-CEM-PARAM; + } + container jtr-bfr-overrun { + description + "Number of jitter buffer overruns."; + uses PM-CEM-PARAM; + } + container tx-lbits { + description + "Number of generated lbits."; + uses PM-CEM-PARAM; + } + container tx-rbits { + description + "Number of generated rbits."; + uses PM-CEM-PARAM; + } + container rx-lbits { + description + "Number of received lbits."; + uses PM-CEM-PARAM; + } + container rx-rbits { + description + "Number of received rbits."; + uses PM-CEM-PARAM; + } + container in-pkts { + description + "Number of ingress packets."; + uses PM-CEM-PARAM; + } + container eg-pkts { + description + "Number of egress packets."; + uses PM-CEM-PARAM; + } + container in-drop { + description + "Number of ingress packets dropped."; + uses PM-CEM-PARAM; + } + container eg-drop { + description + "Number of egress packets dropped."; + uses PM-CEM-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + } + + grouping PM-OPTICS-PARAMETER-STRING { + description + "one parameter in optics"; + leaf valid { + type boolean; + description + "valid"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum { + type string; + description + "minimum"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf average { + type string; + description + "average"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum { + type string; + description + "maximum"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum-threshold { + type string; + description + "minimun threshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf configured-min-thresh { + type string; + description + "minimunthreshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum-tca-report { + type boolean; + description + "enable/disable to report TCA on min"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum-threshold { + type string; + description + "maximum threshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf configured-max-thresh { + type string; + description + "maximumthreshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum-tca-report { + type boolean; + description + "enable/disable to report TCA on max"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf min-time { + type uint64; + description + "minimum time"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf max-time { + type uint64; + description + "maximum time"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping PM-OPTICS-PARAMETER { + description + "one parameter in optics"; + leaf valid { + type boolean; + description + "valid"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum { + type int32; + description + "minimum"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf average { + type int32; + description + "average"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum { + type int32; + description + "maximum"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum-threshold { + type int32; + description + "minimun threshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf configured-min-thresh { + type string; + description + "minimunthreshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum-tca-report { + type boolean; + description + "enable/disable to report TCA on min"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum-threshold { + type int32; + description + "maximum threshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf configured-max-thresh { + type string; + description + "maximumthreshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum-tca-report { + type boolean; + description + "enable/disable to report TCA on max"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf min-time { + type uint64; + description + "minimum time"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf max-time { + type uint64; + description + "maximum time"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping PM-OPTICS-PARAS { + description + "all paras in optics"; + container lbc { + description + "LBC"; + uses PM-OPTICS-PARAMETER; + } + container lbc-pc { + description + "LBC in percentage"; + uses PM-OPTICS-PARAMETER-STRING; + } + container opt { + description + "OPT"; + uses PM-OPTICS-PARAMETER-STRING; + } + container opr { + description + "OPR"; + uses PM-OPTICS-PARAMETER-STRING; + } + container cd { + description + "Chromatic Dispersion"; + uses PM-OPTICS-PARAMETER; + } + container dgd { + description + "Differential group Delay"; + uses PM-OPTICS-PARAMETER-STRING; + } + container pmd { + description + "Polarization Mode Dispersion , deprecated , use + sopmd instead which is duplicate of pmd"; + uses PM-OPTICS-PARAMETER-STRING; + } + container sopmd { + description + "Second order Polarization Mode Dispersion"; + uses PM-OPTICS-PARAMETER-STRING; + } + container osnr { + description + "Optical Signal to Noise Ratio"; + uses PM-OPTICS-PARAMETER-STRING; + } + container center-wavelength { + description + "Center Wavelength/Frequency"; + uses PM-OPTICS-PARAMETER-STRING; + } + container pdl { + description + "Polarization Dependent Loss"; + uses PM-OPTICS-PARAMETER-STRING; + } + container pcr { + description + "Polarization Change Rate"; + uses PM-OPTICS-PARAMETER-STRING; + } + container pn { + description + "Phase Noise"; + uses PM-OPTICS-PARAMETER-STRING; + } + container rx-sig-pow { + description + "Rx signal power"; + uses PM-OPTICS-PARAMETER-STRING; + } + container low-sig-freq-off { + description + "low freq sig off"; + uses PM-OPTICS-PARAMETER; + } + container ampli-gain { + description + "Ampli Gain"; + uses PM-OPTICS-PARAMETER-STRING; + } + container ampli-gain-tilt { + description + "Ampli Gain Tilt"; + uses PM-OPTICS-PARAMETER-STRING; + } + container snr { + description + "SNR"; + uses PM-OPTICS-PARAMETER-STRING; + } + container snrax { + description + "SNR AX"; + uses PM-OPTICS-PARAMETER-STRING; + } + container snrbx { + description + "SNR BX"; + uses PM-OPTICS-PARAMETER-STRING; + } + container snray { + description + "SNR AY"; + uses PM-OPTICS-PARAMETER-STRING; + } + container snrby { + description + "SNR BY"; + uses PM-OPTICS-PARAMETER-STRING; + } + container sops1 { + description + "SOP S1"; + uses PM-OPTICS-PARAMETER-STRING; + } + container sops2 { + description + "SOP S2"; + uses PM-OPTICS-PARAMETER-STRING; + } + container sops3 { + description + "SOP S3"; + uses PM-OPTICS-PARAMETER-STRING; + } + container opt-cl { + description + "TX Power (C+L)"; + uses PM-OPTICS-PARAMETER-STRING; + } + container opr-cl { + description + "RX Power (C+L)"; + uses PM-OPTICS-PARAMETER-STRING; + } + container opt-s { + description + "TX Power (S)"; + uses PM-OPTICS-PARAMETER-STRING; + } + container opr-s { + description + "RX Power (S)"; + uses PM-OPTICS-PARAMETER-STRING; + } + container opbr { + description + "OPBR"; + uses PM-OPTICS-PARAMETER-STRING; + } + container eagn { + description + "Egress Ampli Gain"; + uses PM-OPTICS-PARAMETER-STRING; + } + container eatl { + description + "Egress Ampli Tilt"; + uses PM-OPTICS-PARAMETER-STRING; + } + container iagn { + description + "Ingress Ampli Gain"; + uses PM-OPTICS-PARAMETER-STRING; + } + container iatl { + description + "Ingress Ampli Tilt"; + uses PM-OPTICS-PARAMETER-STRING; + } + container raman-tot { + description + "RAMAN TOT"; + uses PM-OPTICS-PARAMETER-STRING; + } + container raman-1 { + description + "RAMAN 1"; + uses PM-OPTICS-PARAMETER-STRING; + } + container raman-2 { + description + "RAMAN 2"; + uses PM-OPTICS-PARAMETER-STRING; + } + container raman-3 { + description + "RAMAN 3"; + uses PM-OPTICS-PARAMETER-STRING; + } + container raman-4 { + description + "RAMAN 4"; + uses PM-OPTICS-PARAMETER-STRING; + } + container raman-5 { + description + "RAMAN 5"; + uses PM-OPTICS-PARAMETER-STRING; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string; + description + "timestamp"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf last-clear-time { + type string; + description + "last clear time"; + } + leaf last-clear15-min-time { + type string; + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string; + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string; + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string; + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + } + + grouping SONET-FAR-END-LINE-ENTRY { + description + "SONET FAR END LINE ENTRY"; + container far-end-line-e-ss { + description + "The number of Errored Seconds"; + uses PM-SONET-PARAMETER; + } + container far-end-line-se-ss { + description + "The number of Severely Errored Seconds"; + uses PM-SONET-PARAMETER; + } + container far-end-line-c-vs { + description + "The number of Coding Violations"; + uses PM-SONET-PARAMETER; + } + container far-end-line-ua-ss { + description + "The number of Unavailable Seconds"; + uses PM-SONET-PARAMETER; + } + container far-end-line-fc-ls { + description + "The number of Failure counts Seconds"; + uses PM-SONET-PARAMETER; + } + } + + grouping SONET-LINE-ENTRY { + description + "SONET LINE ENTRY"; + container line-e-ss { + description + "The number of Errored Seconds"; + uses PM-SONET-PARAMETER; + } + container line-se-ss { + description + "The number of Severely Errored Seconds"; + uses PM-SONET-PARAMETER; + } + container line-c-vs { + description + "The number of Coding Violations"; + uses PM-SONET-PARAMETER; + } + container line-ua-ss { + description + "The number of Unavailable Seconds"; + uses PM-SONET-PARAMETER; + } + container line-fc-ls { + description + "The number of Failure counts Seconds"; + uses PM-SONET-PARAMETER; + } + leaf line-status { + type int32; + description + " status of the interface"; + } + } + + grouping PM-SONET-PARAMETER { + description + "pm one parameter"; + leaf data { + type uint32; + description + "the number in the interval"; + } + leaf threshold { + type uint32; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping SONET-SECTION-ENTRY { + description + "SONET SECTION ENTRY"; + container section-e-ss { + description + "The number of Errored Seconds"; + uses PM-SONET-PARAMETER; + } + container section-se-ss { + description + "The number of Severely Errored Seconds"; + uses PM-SONET-PARAMETER; + } + container section-sef-ss { + description + "The number of Severely Errored Framing Seconds"; + uses PM-SONET-PARAMETER; + } + container section-c-vs { + description + "The number of Coding Violations"; + uses PM-SONET-PARAMETER; + } + leaf section-status { + type int32; + description + " status of the interface"; + } + } + + grouping PM-SONET-PARAS { + description + "all paras in ocn"; + container section { + description + "SECTION"; + uses SONET-SECTION-ENTRY; + } + container line { + description + "LINE"; + uses SONET-LINE-ENTRY; + } + container fe-line { + description + "FarEnd LINE"; + uses SONET-FAR-END-LINE-ENTRY; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + } + + grouping SONET-FAR-END-PATH-ENTRY { + description + "SONET FAR END PATH ENTRY"; + leaf far-end-path-e-ss { + type uint32; + units "second"; + description + "The number of Errored Seconds"; + } + leaf far-end-path-se-ss { + type uint32; + units "second"; + description + "The number of Severely Errored Seconds"; + } + leaf far-end-path-c-vs { + type uint32; + description + "The number of Coding Violations"; + } + leaf far-end-path-ua-ss { + type uint32; + units "second"; + description + "The number of Unavailable Seconds"; + } + } + + grouping PM-SONET-PATH-PARAMETER { + description + "pm one parameter"; + leaf data { + type uint32; + description + "the number in the interval"; + } + leaf threshold { + type uint32; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping SONET-PATH-ENTRY { + description + "SONET PATH ENTRY"; + container path-e-ss { + description + "The number of Errored Seconds"; + uses PM-SONET-PATH-PARAMETER; + } + container path-se-ss { + description + "The number of Severely Errored Seconds"; + uses PM-SONET-PATH-PARAMETER; + } + container path-c-vs { + description + "The number of Coding Violations"; + uses PM-SONET-PATH-PARAMETER; + } + container path-ua-ss { + description + "The number of Unavailable Seconds"; + uses PM-SONET-PATH-PARAMETER; + } + leaf path-width { + type Pm-sonet-path-width-enum; + description + "Indicates the type of the SONET/SDH Path"; + } + leaf path-status { + type int32; + description + " status of the interface"; + } + } + + grouping PM-SONET-PATH-PARAS { + description + "all paras in sts"; + container path { + description + "PATH"; + uses SONET-PATH-ENTRY; + } + container fe-path { + description + "Far End PATH"; + uses SONET-FAR-END-PATH-ENTRY; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + } + + grouping STM-FAR-END-LINE-ENTRY { + description + "STM FAR END LINE ENTRY"; + container far-end-line-e-ss { + description + "The number of Errored Seconds"; + uses PM-STM-PARAMETER; + } + container far-end-line-es-rs { + description + "The number of Errored Seconds Ratio"; + uses PM-STM-PARAMETER-RATIO; + } + container far-end-line-ebb-es { + description + "The number of Background Block Errors"; + uses PM-STM-PARAMETER; + } + container far-end-line-bbe-rs { + description + "The number of Background Block Errors"; + uses PM-STM-PARAMETER-RATIO; + } + container far-end-line-se-ss { + description + "The number of Severely Errored Second"; + uses PM-STM-PARAMETER; + } + container far-end-line-ses-rs { + description + "The number of Severely Errored Second Ratio"; + uses PM-STM-PARAMETER-RATIO; + } + container far-end-line-ua-ss { + description + "The number of Unavailable Second"; + uses PM-STM-PARAMETER; + } + container far-end-line-e-bs { + description + "The number of Errored Block Second"; + uses PM-STM-PARAMETER; + } + } + + grouping STM-LINE-ENTRY { + description + "STM LINE ENTRY"; + container line-e-ss { + description + "The number of Errored Seconds"; + uses PM-STM-PARAMETER; + } + container line-es-rs { + description + "The number of Errored Seconds Ratio"; + uses PM-STM-PARAMETER-RATIO; + } + container line-bb-es { + description + "The number of Background Block Errors"; + uses PM-STM-PARAMETER; + } + container line-bbe-rs { + description + "The number of Background Block Errors"; + uses PM-STM-PARAMETER-RATIO; + } + container line-se-ss { + description + "The number of Severely Errored Second"; + uses PM-STM-PARAMETER; + } + container line-ses-rs { + description + "The number of Severely Errored Second Ratio"; + uses PM-STM-PARAMETER-RATIO; + } + container line-ua-ss { + description + "The number of Unavailable Second"; + uses PM-STM-PARAMETER; + } + container line-e-bs { + description + "The number of Errored Block Second"; + uses PM-STM-PARAMETER; + } + leaf line-status { + type int32; + description + " status of the interface"; + } + } + + grouping PM-STM-PARAMETER-RATIO { + description + "pm one parameter"; + leaf data { + type string { + length "0..8"; + } + description + "the number in the interval"; + } + leaf threshold { + type string { + length "0..8"; + } + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping PM-STM-PARAMETER { + description + "pm one parameter"; + leaf data { + type uint32; + description + "the number in the interval"; + } + leaf threshold { + type uint32; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping STM-SECTION-ENTRY { + description + "STM SECTION ENTRY"; + container section-e-ss { + description + "The number of Errored Seconds"; + uses PM-STM-PARAMETER; + } + container section-es-rs { + description + "The number of Errored Seconds Ratio"; + uses PM-STM-PARAMETER-RATIO; + } + container section-bb-es { + description + "The number of Background Block Errors"; + uses PM-STM-PARAMETER; + } + container section-bbe-rs { + description + "The number of Background Block Errors"; + uses PM-STM-PARAMETER-RATIO; + } + container section-se-ss { + description + "The number of Severely Errored Second"; + uses PM-STM-PARAMETER; + } + container section-ses-rs { + description + "The number of Severely Errored Second Ratio"; + uses PM-STM-PARAMETER-RATIO; + } + container section-ua-ss { + description + "The number of Unavailable Second"; + uses PM-STM-PARAMETER; + } + container section-e-bs { + description + "The number of Errored Block Second"; + uses PM-STM-PARAMETER; + } + leaf section-status { + type int32; + description + " status of the interface"; + } + } + + grouping PM-STM-PARAS { + description + "all paras in stm"; + container section { + description + "SECTION"; + uses STM-SECTION-ENTRY; + } + container line { + description + "LINE"; + uses STM-LINE-ENTRY; + } + container fe-line { + description + "FarEnd LINE"; + uses STM-FAR-END-LINE-ENTRY; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + } + + grouping PM-GFP-PARAM { + description + "PM GFP PARAM"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping PM-GFP-PARAS { + description + "PM GFP PARAS"; + container rx-bit-err { + description + "RX BIT ERR"; + uses PM-GFP-PARAM; + } + container rx-inv-typ { + description + "RX INV TYP"; + uses PM-GFP-PARAM; + } + container rx-crc { + description + "RX CRC"; + uses PM-GFP-PARAM; + } + container rx-lfd { + description + "RX LFD"; + uses PM-GFP-PARAM; + } + container rx-csf { + description + "RX CSF"; + uses PM-GFP-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + } + + grouping PM-OTNSEC-PARAMETER { + description + "otnsec parameter bag"; + leaf data { + type uint64; + description + "PM data"; + } + leaf threshold { + type uint64; + description + "Configured Threshold"; + } + leaf tca-report { + type boolean; + description + "Enable/Disable of TCA"; + } + } + + grouping PM-OTNSEC-PARAS { + description + "pm otnsec statistics"; + container in-blocks { + description + "Frames"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-enc { + description + "Enc Frames"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-un-encrypted { + description + "UnEnc Frames"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-protected { + description + "Auth Count"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-un-protected { + description + "UnAuth Count"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-sequence-errors { + description + "Trouble"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-replay-errors { + description + "Replay"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-auth-errors { + description + "Auth Fail"; + uses PM-OTNSEC-PARAMETER; + } + container in-blocks-zeroed { + description + "Null Count"; + uses PM-OTNSEC-PARAMETER; + } + container out-blocks { + description + "Frames Encrypt"; + uses PM-OTNSEC-PARAMETER; + } + container out-blocks-enc { + description + "Auth Count"; + uses PM-OTNSEC-PARAMETER; + } + container out-blocks-un-encrypted { + description + "UnEnc count"; + uses PM-OTNSEC-PARAMETER; + } + container out-blocks-sequence-errors { + description + "OutBlocksSequenceErrors"; + uses PM-OTNSEC-PARAMETER; + } + container out-blocks-zeroed { + description + "Null Count"; + uses PM-OTNSEC-PARAMETER; + } + container out-blocks-protected { + description + "Auth Count"; + uses PM-OTNSEC-PARAMETER; + } + container out-blocks-un-protected { + description + "UnAuth Count"; + uses PM-OTNSEC-PARAMETER; + } + leaf valid { + type boolean; + description + "Bucket state"; + } + leaf index { + type uint32; + description + "current or history"; + } + leaf timestamp { + type string; + description + "Bucket timestamp"; + } + leaf last-clear-time { + type string; + description + "Last Clearing of Bucket"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + } + + grouping PM-OTN-ALL-CHANS { + description + "all channels in otn layer"; + leaf num-chans { + type uint32; + description + "number of otn channels"; + } + list otn-all-chans { + description + "otn channels"; + uses PM-OTN-PARAS; + } + } + + grouping PM-OTN-PARAMETER-RATIO { + description + "pm one parameter"; + leaf data { + type string; + description + "the number in the interval"; + } + leaf threshold { + type string; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping PM-OTN-PARAMETER { + description + "pm one parameter"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping PM-OTN-PARAS { + description + "all paras in otn"; + container lbc { + description + "LBC"; + uses PM-OTN-PARAMETER; + } + container es-ne { + description + "ES SM NE"; + uses PM-OTN-PARAMETER; + } + container esr-ne { + description + "ESR PM NE"; + uses PM-OTN-PARAMETER-RATIO; + } + container ses-ne { + description + "SES SM NE"; + uses PM-OTN-PARAMETER; + } + container sesr-ne { + description + "SESR SM NE"; + uses PM-OTN-PARAMETER-RATIO; + } + container uas-ne { + description + "UAS SM NE"; + uses PM-OTN-PARAMETER; + } + container bbe-ne { + description + "BBE SM NE"; + uses PM-OTN-PARAMETER; + } + container bber-ne { + description + "BBER SM NE"; + uses PM-OTN-PARAMETER-RATIO; + } + container fc-ne { + description + "FC SM NE"; + uses PM-OTN-PARAMETER; + } + container es-fe { + description + "ES SM FE"; + uses PM-OTN-PARAMETER; + } + container esr-fe { + description + "ESR PM FE"; + uses PM-OTN-PARAMETER-RATIO; + } + container ses-fe { + description + "SES SM FE"; + uses PM-OTN-PARAMETER; + } + container sesr-fe { + description + "SESR SM FE"; + uses PM-OTN-PARAMETER-RATIO; + } + container uas-fe { + description + "UAS SM FE"; + uses PM-OTN-PARAMETER; + } + container bbe-fe { + description + "BBE SM FE"; + uses PM-OTN-PARAMETER; + } + container bber-fe { + description + "BBER SM FE"; + uses PM-OTN-PARAMETER-RATIO; + } + container fc-fe { + description + "FC SM FE"; + uses PM-OTN-PARAMETER; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string; + description + "timestamp"; + } + leaf last-clear-time { + type string; + description + "last clear time"; + } + leaf last-clear15-min-time { + type string; + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string; + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string; + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string; + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + } + + grouping PM-PCS-PARAMETER-COUNT { + description + "pm pcs parameter count"; + leaf name { + type string { + length "0..19"; + } + description + "pcs param name"; + } + leaf data { + type uint64; + description + "the threshold users set"; + } + } + + grouping PM-PCS-PARAMETER { + description + "pm pcs parameter"; + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + list count { + description + "param count"; + uses PM-PCS-PARAMETER-COUNT; + } + } + + grouping PM-PCS-PARAS { + description + "all paras in pcs"; + container bip { + description + "Bip "; + uses PM-PCS-PARAMETER; + } + container frm-err { + description + "Frm Err"; + uses PM-PCS-PARAMETER; + } + container bad-sh { + description + "Bad Sh"; + uses PM-PCS-PARAMETER; + } + container es-ne { + description + "Es Ne"; + uses PM-PCS-PARAMETER; + } + container ses-ne { + description + "Ses Ne"; + uses PM-PCS-PARAMETER; + } + container uas-ne { + description + "Uas Ne"; + uses PM-PCS-PARAMETER; + } + container es-fe { + description + "Es Fe"; + uses PM-PCS-PARAMETER; + } + container ses-fe { + description + "Ese Fe"; + uses PM-PCS-PARAMETER; + } + container uas-fe { + description + "Uas Fe"; + uses PM-PCS-PARAMETER; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string; + description + "timestamp"; + } + leaf last-clear-time { + type string; + description + "last clear time"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + leaf cumulative-bip { + type uint64; + description + "Cumulative Bip"; + } + leaf cumulative-frm-err { + type uint64; + description + "Cumulative Frm Err"; + } + leaf cumulative-bad-sh { + type uint64; + description + "Cumulative Bad Sh"; + } + } + + grouping PM-PRBS-STATUS-PARAMETER { + description + "one parameter in optics"; + leaf valid { + type boolean; + description + "valid"; + } + leaf prbs-status { + type Pm-prbs-status-et; + description + "Prbs Status"; + } + } + + grouping PM-PRBS-PARAMETER { + description + "one parameter in optics"; + leaf valid { + type boolean; + description + "valid"; + } + leaf rcv-patt { + type Pm-prbs-pattern-et; + description + "RCVD PTRN"; + } + } + + grouping PM-PRBS-TCA-PARAMETER { + description + "one parameter in optics"; + leaf threshold { + type uint64; + description + "the threshold users set"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping PM-PRBS-PARAS { + description + "all paras in prbs"; + container ebc-tca { + description + "EBC TCA"; + uses PM-PRBS-TCA-PARAMETER; + } + container found-count-tca { + description + "FOUND COUNT TCA"; + uses PM-PRBS-TCA-PARAMETER; + } + container lost-count-tca { + description + "LOST COUNT TCA"; + uses PM-PRBS-TCA-PARAMETER; + } + container rcv-patt { + description + "RCVD PTRN"; + uses PM-PRBS-PARAMETER; + } + container prbs-status { + description + "PRBS STATUS"; + uses PM-PRBS-STATUS-PARAMETER; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + leaf prbs-direction { + type Pm-prbs-direction-et; + description + "prbs direction"; + } + leaf ebc { + type uint64; + description + "EBC"; + } + leaf found-count { + type uint32; + description + "FOUND COUNT"; + } + leaf lost-count { + type uint32; + description + "LOST COUNT"; + } + leaf found-at-time { + type uint64; + description + "FOUND AT TS"; + } + leaf lost-at-time { + type uint64; + description + "LOST AT TS"; + } + leaf conf-patt { + type Pm-prbs-pattern-et; + description + "CONFIG PTRN"; + } + leaf user-pattern { + type uint64; + description + "PRBS user pattern configured"; + } + } + + grouping PM-FC-PARAM { + description + "PM FC PARAM"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf supp-flag { + type boolean; + description + "Support Flag"; + } + leaf valid { + type boolean; + description + "valid"; + } + } + + grouping PM-FC-PARAS { + description + "PM FC PARAS"; + container if-in-octets { + description + "Number of bytes received since the last counter + reset."; + uses PM-FC-PARAM; + } + container rx-pkt { + description + "Total number of receive packets."; + uses PM-FC-PARAM; + } + container if-in-errors { + description + "Total number of receive errors."; + uses PM-FC-PARAM; + } + container rx-bad-fcs { + description + "Number of Rx frames with bad FCS, no coding + error"; + uses PM-FC-PARAM; + } + container if-out-octets { + description + "The total number of octets transmitted out of + the interface, including framing characters."; + uses PM-FC-PARAM; + } + container tx-pkt { + description + "Total number of transmitted packets."; + uses PM-FC-PARAM; + } + container tx-bad-fcs { + description + "Number of Tx frames with bad FCS, no coding + error"; + uses PM-FC-PARAM; + } + container rx-frames-too-long { + description + "Number of too long rx frames."; + uses PM-FC-PARAM; + } + container rx-frames-trunc { + description + "Number of truncated rx frames."; + uses PM-FC-PARAM; + } + container tx-frames-too-long { + description + "Number of too long tx frames."; + uses PM-FC-PARAM; + } + container tx-frames-trunc { + description + "Number of truncated tx frames."; + uses PM-FC-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear 15-min interval time"; + } + leaf last-clear-flex-bin-time { + type string { + length "0..64"; + } + description + "last clear flex-bin interval time"; + } + leaf last-clear30-sec-time { + type string { + length "0..64"; + } + description + "last clear 30-sec interval time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear 25-hour interval time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + } + + grouping PM-FEC-PARAMETER-COUNT { + description + "pm fec parameter count"; + leaf name { + type string { + length "0..32"; + } + description + "fec lane parameter name"; + } + leaf minimum { + type string { + length "0..20"; + } + description + "minimum value of the parameter in the bucket"; + } + leaf average { + type string { + length "0..20"; + } + description + "average value of the parameter in the bucket"; + } + leaf maximum { + type string { + length "0..20"; + } + description + "maximum value of the parameter in the bucket"; + } + leaf valid { + type boolean; + description + "Flag indicating validity of the parameter"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf min-time { + type uint64; + description + "time in nsec when minimum value was captured"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf max-time { + type uint64; + description + "time in nsec when maximum value was captured"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping PM-FEC-PARAM-LANES-STRING { + description + "pm fec lanes parameter"; + leaf minimum-threshold { + type string { + length "0..20"; + } + description + "minimum threshold"; + } + leaf minimum-tca-report { + type boolean; + description + "enable/disable to report TCA on min"; + } + leaf maximum-threshold { + type string { + length "0..20"; + } + description + "maximum threshold"; + } + leaf maximum-tca-report { + type boolean; + description + "enable/disable to report TCA on max"; + } + list count { + description + "parameter count"; + uses PM-FEC-PARAMETER-COUNT; + } + } + + grouping PM-FEC-PARAM-STRING { + description + "pm avg fec parameter"; + leaf minimum { + type string; + description + "minimum"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf average { + type string; + description + "average"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum { + type string; + description + "maximum"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum-threshold { + type string; + description + "minimun threshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf minimum-tca-report { + type boolean; + description + "enable/disable to report TCA on min"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum-threshold { + type string; + description + "maximum threshold"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf maximum-tca-report { + type boolean; + description + "enable/disable to report TCA"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf valid { + type boolean; + description + "valid"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf min-time { + type uint64; + description + "minimum time"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf max-time { + type uint64; + description + "maximum time"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping PM-FEC-PARAM { + description + "pm avg fec param"; + leaf data { + type uint64; + description + "the number in the interval"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf valid { + type boolean; + description + "valid"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + } + + grouping PM-FEC-PARAS { + description + "all paras in fec"; + container ec-bits { + description + "EC BITS"; + uses PM-FEC-PARAM; + } + container uc-words { + description + "UC WORDS"; + uses PM-FEC-PARAM; + } + container pre-fec-ber { + description + "Pre FEC BER"; + uses PM-FEC-PARAM-STRING; + } + container post-fec-ber { + description + "Post FEC BER"; + uses PM-FEC-PARAM-STRING; + } + container q { + description + "Q"; + uses PM-FEC-PARAM-STRING; + } + container qmargin { + description + "Q Margin"; + uses PM-FEC-PARAM-STRING; + } + container qmargin-inst { + description + "Q Margin Instantaneous"; + uses PM-FEC-PARAM-STRING; + } + container ec-words { + description + "EC Words"; + uses PM-FEC-PARAM; + } + container ber-lane { + description + "Lane details of Bit Error Rate"; + uses PM-FEC-PARAM-LANES-STRING; + } + container ferc-lane { + description + "Lane details of Frame Error Count"; + uses PM-FEC-PARAM-LANES-STRING; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string; + description + "timestamp"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf last-clear-time { + type string; + description + "last clear time"; + } + leaf last-clear15-min-time { + type string; + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string; + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string; + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string; + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + } + + grouping HO-VC-FAR-END-PATH-ENTRY { + description + "HO VC FAR END PATH ENTRY"; + leaf far-end-path-e-ss { + type uint32; + units "second"; + description + "The number of Errored Seconds"; + } + leaf far-end-path-se-ss { + type uint32; + units "second"; + description + "The number of Severely Errored Seconds"; + } + leaf far-end-path-c-vs { + type uint32; + description + "The number of Coding Violations"; + } + leaf far-end-path-ua-ss { + type uint32; + units "second"; + description + "The number of Unavailable Seconds"; + } + } + + grouping PM-HO-VC-PARAMETER-RATIO { + description + "pm one parameter"; + leaf data { + type string { + length "0..8"; + } + description + "the number in the interval"; + } + leaf threshold { + type string { + length "0..8"; + } + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping PM-HO-VC-PARAMETER { + description + "pm one parameter"; + leaf data { + type uint32; + description + "the number in the interval"; + } + leaf threshold { + type uint32; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + } + + grouping HO-VC-ENTRY { + description + "HO VC ENTRY"; + container path-e-ss { + description + "The number of Errored Seconds"; + uses PM-HO-VC-PARAMETER; + } + container path-es-rs { + description + "The number of Errored Seconds"; + uses PM-HO-VC-PARAMETER-RATIO; + } + container path-se-ss { + description + "The number of Severely Errored Seconds"; + uses PM-HO-VC-PARAMETER; + } + container path-ses-rs { + description + "The number of Severely Errored Seconds"; + uses PM-HO-VC-PARAMETER-RATIO; + } + container path-e-bs { + description + "The number of Errored blocks"; + uses PM-HO-VC-PARAMETER; + } + container path-ua-ss { + description + "The number of Unavailable Seconds"; + uses PM-HO-VC-PARAMETER; + } + container path-bb-es { + description + "The number of background block errors"; + uses PM-HO-VC-PARAMETER; + } + container path-bbe-rs { + description + "The number of background block errors"; + uses PM-HO-VC-PARAMETER-RATIO; + } + leaf path-status { + type int32; + description + " status of the interface"; + } + } + + grouping PM-HO-VC-PARAS { + description + "all paras in ho_vc"; + container path { + description + "PATH"; + uses HO-VC-ENTRY; + } + container fe-path { + description + "Far End PATH"; + uses HO-VC-FAR-END-PATH-ENTRY; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + } + + grouping PM-SECY-TX-PARAM { + description + "PM SECY TX PARAM"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf valid { + type boolean; + description + "valid"; + } + } + + grouping PM-SECY-TX-PARAS { + description + "PM SECY TX PARAS"; + container out-pkts-protected { + description + "Out Packets Protected"; + uses PM-SECY-TX-PARAM; + } + container out-pkts-encrypted { + description + "Out Packets Encrypted"; + uses PM-SECY-TX-PARAM; + } + container out-octets-protected { + description + "Out Octets Protected "; + uses PM-SECY-TX-PARAM; + } + container out-octets-encrypted { + description + "Out Octets Encrypted"; + uses PM-SECY-TX-PARAM; + } + container out-pkts-too-long { + description + "Out Packets Too Long"; + uses PM-SECY-TX-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + leaf sample-count { + type uint64; + description + "Running Sample Count"; + } + } + + grouping PM-SECY-RX-PARAM { + description + "PM SECY RX PARAM"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf valid { + type boolean; + description + "valid"; + } + } + + grouping PM-SECY-RX-PARAS { + description + "PM SECY RX PARAS"; + container in-pkts-unchecked { + description + "In Packet Unchecked"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-delayed { + description + "In Packet Delay"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-late { + description + "In Packet Late"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-ok { + description + "In Packet Ok"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-invalid { + description + "In Packet Invalid"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-not-valid { + description + "In Packet Not Valid"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-not-using-sa { + description + "In Packet Not Using SA"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-unused-sa { + description + "In Packet Unused SA"; + uses PM-SECY-RX-PARAM; + } + container in-pkts-untagged-hit { + description + "In Packet Untagged Hit"; + uses PM-SECY-RX-PARAM; + } + container in-octets-validated { + description + "In Octet Validated"; + uses PM-SECY-RX-PARAM; + } + container in-octets-decrypted { + description + "In Octet Decrypted"; + uses PM-SECY-RX-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + leaf sample-count { + type uint64; + description + "Running Sample Count"; + } + } + + grouping PM-SECY-IF-PARAM { + description + "PM SECY IF PARAM"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf valid { + type boolean; + description + "valid"; + } + } + + grouping PM-SECY-IF-PARAS { + description + "PM SECY IF PARAS"; + container in-pkts-untagged { + description + "In Packet Untagged"; + uses PM-SECY-IF-PARAM; + } + container in-pkts-no-tag { + description + "In Packet No tag"; + uses PM-SECY-IF-PARAM; + } + container in-pkts-bad-tag { + description + "In Packet Bad tag"; + uses PM-SECY-IF-PARAM; + } + container in-pkts-unknown-sci { + description + "In Packet Unknown sci"; + uses PM-SECY-IF-PARAM; + } + container in-pkts-no-sci { + description + "In Packet No sci"; + uses PM-SECY-IF-PARAM; + } + container in-pkts-overrun { + description + "In Packet Overrun"; + uses PM-SECY-IF-PARAM; + } + container in-octets-validated { + description + "In Octet Validated"; + uses PM-SECY-IF-PARAM; + } + container in-octets-decrypted { + description + "In Octet Decrypted"; + uses PM-SECY-IF-PARAM; + } + container out-pkts-untagged { + description + "Out Packet Untagged"; + uses PM-SECY-IF-PARAM; + } + container out-pkts-too-long { + description + "Out Packet Too Long"; + uses PM-SECY-IF-PARAM; + } + container out-octets-protected { + description + "Out Octet Protected"; + uses PM-SECY-IF-PARAM; + } + container out-octets-encrypted { + description + "Out Octet encrypted"; + uses PM-SECY-IF-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear15-min-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string { + length "0..64"; + } + description + "last clear time"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + leaf sample-count { + type uint64; + description + "Running Sample Count"; + } + } + + grouping PM-ETHER-PARAM-STRING { + description + "PM ETHER PARAM STRING"; + leaf data { + type string; + description + "the number in the interval"; + } + leaf threshold { + type string; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf valid { + type boolean; + description + "valid"; + } + } + + grouping PM-ETHER-PARAM { + description + "PM ETHER PARAM"; + leaf data { + type uint64; + description + "the number in the interval"; + } + leaf threshold { + type uint64; + description + "the threshold users set"; + } + leaf tca-report { + type boolean; + description + "enable/disable to report TCA"; + } + leaf valid { + type boolean; + description + "valid"; + } + } + + grouping PM-ETHERNET-PARAS { + description + "all paras in ether"; + container rx-pkt { + description + "RX PKT"; + uses PM-ETHER-PARAM; + } + container stat-pkt { + description + "STAT PKT"; + uses PM-ETHER-PARAM; + } + container octet-stat { + description + "OCTET STAT"; + uses PM-ETHER-PARAM; + } + container oversize-pkt-stat { + description + "OVERSIZE PKT"; + uses PM-ETHER-PARAM; + } + container fcs-errors-stat { + description + "FCS ERR"; + uses PM-ETHER-PARAM; + } + container long-frames-stat { + description + "LONG FRAMES"; + uses PM-ETHER-PARAM; + } + container jabber-stat { + description + "JABBER STATS"; + uses PM-ETHER-PARAM; + } + container ether64-octets { + description + "SIXTY FOUR OCTET"; + uses PM-ETHER-PARAM; + } + container ether65127-octet { + description + "OCTET"; + uses PM-ETHER-PARAM; + } + container ether128255-octet { + description + "TFF OCTET"; + uses PM-ETHER-PARAM; + } + container ether256511-octet { + description + "FOO OCTET"; + uses PM-ETHER-PARAM; + } + container ether5121023-octet { + description + "OZTT OCTET"; + uses PM-ETHER-PARAM; + } + container ether10241518-octet { + description + "OFO OCTET"; + uses PM-ETHER-PARAM; + } + container in-ucast-pkt { + description + "IN UCAST"; + uses PM-ETHER-PARAM; + } + container in-mcast-pkt { + description + "IN MCAST"; + uses PM-ETHER-PARAM; + } + container in-bcast-pkt { + description + "IN BCAST"; + uses PM-ETHER-PARAM; + } + container out-ucast-pkt { + description + "OUT UCAST"; + uses PM-ETHER-PARAM; + } + container out-bcast-pkt { + description + "OUT BCAST"; + uses PM-ETHER-PARAM; + } + container out-mcast-pkt { + description + "OUT MCAST"; + uses PM-ETHER-PARAM; + } + container tx-pkt { + description + "TX PKT"; + uses PM-ETHER-PARAM; + } + container if-in-errors { + description + "IFIN ERRORS"; + uses PM-ETHER-PARAM; + } + container if-in-octets { + description + "IFIN OCTETS"; + uses PM-ETHER-PARAM; + } + container ether-stat-multicast-pkt { + description + "ETHER STAT MULTICAST PKT"; + uses PM-ETHER-PARAM; + } + container ether-stat-broadcast-pkt { + description + "ETHER STAT BROADCAST PKT"; + uses PM-ETHER-PARAM; + } + container ether-stat-undersized-pkt { + description + "ETHER STAT UNDERSIZED PKT"; + uses PM-ETHER-PARAM; + } + container out-octets { + description + "OUT OCTET"; + uses PM-ETHER-PARAM; + } + container in-pause-frame { + description + "INPUT PAUSE FRAME"; + uses PM-ETHER-PARAM; + } + container in-good-bytes { + description + "INPUT GOOD BYTES"; + uses PM-ETHER-PARAM; + } + container in8021q-frames { + description + "INPUT 802 1Q FRAMES"; + uses PM-ETHER-PARAM; + } + container in-pkts1519-max-octets { + description + "INPUT PKTS 1519MAX OCTETS"; + uses PM-ETHER-PARAM; + } + container in-good-pkts { + description + "INPUT GOOD PKTS"; + uses PM-ETHER-PARAM; + } + container in-drop-overrun { + description + "INPUT DROP OVERRUN"; + uses PM-ETHER-PARAM; + } + container in-drop-abort { + description + "INPUT DROP ABORT"; + uses PM-ETHER-PARAM; + } + container in-drop-invalid-vlan { + description + "INPUT DROP INVALID VLAN"; + uses PM-ETHER-PARAM; + } + container in-drop-invalid-dmac { + description + "INPUT DROP INVALID DMAC"; + uses PM-ETHER-PARAM; + } + container in-drop-invalid-encap { + description + "INPUT DROP INVALID ENCAP"; + uses PM-ETHER-PARAM; + } + container in-drop-other { + description + "INPUT DROP OTHER"; + uses PM-ETHER-PARAM; + } + container in-mib-giant { + description + "INPUT MIB GIANT"; + uses PM-ETHER-PARAM; + } + container in-mib-jabber { + description + "INPUT MIB JABBER"; + uses PM-ETHER-PARAM; + } + container in-mibcrc { + description + "IN MIB CRC"; + uses PM-ETHER-PARAM; + } + container in-error-collisions { + description + "IN ERROR COLLISIONS"; + uses PM-ETHER-PARAM; + } + container in-error-symbol { + description + "IN ERROR SYMBOL"; + uses PM-ETHER-PARAM; + } + container out-good-bytes { + description + "OUT GOOD BYTES"; + uses PM-ETHER-PARAM; + } + container out8021q-frames { + description + "OUT 802 1Q FRAMES"; + uses PM-ETHER-PARAM; + } + container out-pause-frames { + description + "OUT PAUSE FRAMES"; + uses PM-ETHER-PARAM; + } + container out-pkts1519-max-octets { + description + "OUT PKTS 1519 MAX OCTETS"; + uses PM-ETHER-PARAM; + } + container out-good-pkts { + description + "OUT GOOD PKTS"; + uses PM-ETHER-PARAM; + } + container out-drop-underrun { + description + "OUT DROP UNDERRUN"; + uses PM-ETHER-PARAM; + } + container out-drop-abort { + description + "OUT DROP ABORT"; + uses PM-ETHER-PARAM; + } + container out-drop-other { + description + "OUT DROP OTHER"; + uses PM-ETHER-PARAM; + } + container out-error-other { + description + "OUT ERROR OTHER"; + uses PM-ETHER-PARAM; + } + container in-error-giant { + description + "IN ERROR GIANT"; + uses PM-ETHER-PARAM; + } + container in-error-runt { + description + "IN ERROR RUNT"; + uses PM-ETHER-PARAM; + } + container in-error-jabbers { + description + "IN ERROR JABBERS"; + uses PM-ETHER-PARAM; + } + container in-error-fragments { + description + "IN ERROR FRAGMENTS"; + uses PM-ETHER-PARAM; + } + container in-error-other { + description + "IN ERROR OTHER"; + uses PM-ETHER-PARAM; + } + container in-pkt64-octet { + description + "IN PKT 64 OCTET"; + uses PM-ETHER-PARAM; + } + container in-pkts65-to127-octets { + description + "IN PKTS 65 127OCTETS"; + uses PM-ETHER-PARAM; + } + container in-pkts128-to255-octets { + description + "IN PKTS 128 255 OCTETS"; + uses PM-ETHER-PARAM; + } + container in-pkts256-to511-octets { + description + "IN PKTS 256 511 OCTETS"; + uses PM-ETHER-PARAM; + } + container in-pkts512-to1023-octets { + description + "IN PKTS 512 1023 OCTETS"; + uses PM-ETHER-PARAM; + } + container in-pkts1024-to1518-octets { + description + "IN PKTS 1024 1518 OCTETS"; + uses PM-ETHER-PARAM; + } + container outpkt64octet { + description + "OUT PKT 64 OCTET"; + uses PM-ETHER-PARAM; + } + container out-pkts65127-octets { + description + "OUT PKTS 65 127OCTETS"; + uses PM-ETHER-PARAM; + } + container out-pkts128255-octets { + description + "OUT PKTS 128 255 OCTETS"; + uses PM-ETHER-PARAM; + } + container out-pkts256511-octets { + description + "OUT PKTS 256 511 OCTETS"; + uses PM-ETHER-PARAM; + } + container out-pkts5121023-octets { + description + "OUT PKTS 512 1023 OCTETS"; + uses PM-ETHER-PARAM; + } + container out-pkts10241518-octets { + description + "OUT PKTS 1024 1518 OCTETS"; + uses PM-ETHER-PARAM; + } + container rx-util { + description + "Rx Utilization in Percent"; + uses PM-ETHER-PARAM-STRING; + } + container tx-util { + description + "Tx Utilization in Percent"; + uses PM-ETHER-PARAM-STRING; + } + container tx-undersized-pkt { + description + "TX Undersized Pkt"; + uses PM-ETHER-PARAM; + } + container tx-oversized-pkt { + description + "TX Oversized Pkt"; + uses PM-ETHER-PARAM; + } + container tx-fragments { + description + "TX Fragments"; + uses PM-ETHER-PARAM; + } + container tx-jabber { + description + "TX Jabber"; + uses PM-ETHER-PARAM; + } + container tx-bad-fcs { + description + "TX Bad Fcs"; + uses PM-ETHER-PARAM; + } + leaf index { + type uint32; + description + "index"; + } + leaf valid { + type boolean; + description + "valid"; + } + leaf timestamp { + type string { + length "0..64"; + } + description + "timestamp"; + } + leaf last-clear-time { + type string; + description + "last clear time"; + } + leaf last-clear-flex-bin-time { + type string; + description + "last clear time"; + } + leaf last-clear30-sec-time { + type string; + description + "last clear time"; + } + leaf last-clear15-min-time { + type string; + description + "last clear time"; + } + leaf last-clear24-hr-time { + type string; + description + "last clear time"; + } + leaf flex-bin-support { + type boolean; + description + "flex bin support"; + } + leaf flex-bin-interval { + type uint16; + description + "flex bin interval"; + } + leaf sec30-support { + type boolean; + description + "30 sec support"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper.yang new file mode 100644 index 000000000..820a473db --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pmengine-oper.yang @@ -0,0 +1,6184 @@ +module Cisco-IOS-XR-pmengine-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pmengine-oper"; + prefix pmengine-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pmengine-oper-sub1 { + revision-date 2022-10-20; + } + + 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 pmengine package operational data. + + This module contains definitions + for the following management objects: + performance-management: performace data + performance-management-history: performace data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-20 { + description + "Added 30-sec bucket history yang support for ODU controllers + 2022-08-16 + Changed data type of some leaf nodes from uint32 to uint64 + 2022-05-10 + Removed unsupported parameters for OSC controller + 2022-05-10 + Removed unsupported parameters for OMS controller + 2022-05-10 + Removed unsupported parameters for OCH controller + 2022-05-10 + Removed unsupported parameters for DFB controller + 2022-04-03 + Added opt_min_50dbm_cap caps to set dBm Optics Parameter mininal value to -50.0dBm + 2022-03-06 + Support added for user-defined and pn9 patterns in prbs layer. + 2021-12-17 + Added oper support for Host PM parameters in FEC layer. + 2021-10-13 + Support added for cumulative-bad-sh and cumulative-frm-err in pcs layer. + 2021-10-06 + Support added for new counters in Optics layer."; + semver:module-version "1.5.0"; + } + revision 2021-07-09 { + description + "Support added for prbs layer for fibre-channel, ocn, stm and ethernet controllers. Support added for cem layer and controller. Container cem added. + 2021-04-26 + Support added for E1 controller. + 2021-04-14 + Support added for pcs and fec layers for fibre-channel controller. + 2021-02-24 + Support added for fc layer and controller. Container fibre-channel added."; + semver:module-version "1.4.0"; + } + revision 2020-09-02 { + description + "Added PM support for PRBS direction feature. + 2020-07-20 + Added parameter for cumulative BIP count in pcs pmengine bag. + 2020-04-17 + Added Instantaneous Q Margin in fec layer. + 2020-04-07 + Changes made to support TCA for OTU PRBS layer."; + semver:module-version "1.3.0"; + } + revision 2019-10-10 { + description + "Added support for flexible bin."; + semver:module-version "1.2.0"; + } + revision 2019-09-30 { + description + "Existing optics parameter PMD is deprecated and SOPMD is added to use instead. + 2019-08-28 + Max and Min time support for fec and optics layer parameters. + 2019-06-01 + Added Range attribute for the history buckets."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-03-30 { + description + "OTU PRBS Stats Added"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container performance-management { + config false; + description + "performace data"; + container macsec { + description + "MACSEC controller performance data"; + container macsec-ports { + description + "Port performance data"; + list macsec-port { + key "name"; + description + "Port performance data"; + container macsec-prev { + description + "port prev performance data"; + container macsec-prev-flex-interval { + description + "port prev performance data"; + container macsec-prev-flex-interval-ether-s { + description + "port prev performance data"; + list macsec-prev-flex-interval-ether { + key "number"; + description + "port flex-sec ether performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + container macsec-prev-flex-interval-secyifs { + description + "port prev performance data"; + list macsec-prev-flex-interval-secyif { + key "number"; + description + "port flex-sec secy-if performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-IF-PARAS; + } + } + container macsec-prev-flex-interval-secyrxes { + description + "port prev performance data"; + list macsec-prev-flex-interval-secyrx { + key "number"; + description + "port flex-sec secy-rx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-RX-PARAS; + } + } + container macsec-prev-flex-interval-secytxes { + description + "port prev performance data"; + list macsec-prev-flex-interval-secytx { + key "number"; + description + "port flex-sec secy-tx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-TX-PARAS; + } + } + } + } + container macsec-current { + description + "port current performance data"; + container macsec-minute15 { + description + "port current performance data"; + container macsec-minute15secyifs { + description + "port current performance data"; + list macsec-minute15secyif { + key "number"; + description + "port 15-minute secy-if performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-IF-PARAS; + } + } + container macsec-minute15secyrxes { + description + "port current performance data"; + list macsec-minute15secyrx { + key "number"; + description + "port 15-minute secy-rx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-RX-PARAS; + } + } + container macsec-minute15secytxes { + description + "port current performance data"; + list macsec-minute15secytx { + key "number"; + description + "port 15-minute secy-tx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-TX-PARAS; + } + } + container macsec-minute15-ether-s { + description + "port current performance data"; + list macsec-minute15-ether { + key "number"; + description + "port 15-minute ether performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + } + container macsec-second30 { + description + "port current performance data"; + container macsec-second30secyifs { + description + "port current performance data"; + list macsec-second30secyif { + key "number"; + description + "port 30-sec secy-if performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-IF-PARAS; + } + } + container macsec-second30secyrxes { + description + "port current performance data"; + list macsec-second30secyrx { + key "number"; + description + "port 30-sec secy-rx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-RX-PARAS; + } + } + container macsec-second30-ether-s { + description + "port current performance data"; + list macsec-second30-ether { + key "number"; + description + "port 30-sec ether performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + container macsec-second30secytxes { + description + "port current performance data"; + list macsec-second30secytx { + key "number"; + description + "port 30-sec secy-tx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-TX-PARAS; + } + } + } + container macsec-flex-interval { + description + "port current performance data"; + container macsec-flex-interval-secyifs { + description + "port current performance data"; + list macsec-flex-interval-secyif { + key "number"; + description + "port flex-sec secy-if performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-IF-PARAS; + } + } + container macsec-flex-interval-secyrxes { + description + "port current performance data"; + list macsec-flex-interval-secyrx { + key "number"; + description + "port flex-sec secy-rx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-RX-PARAS; + } + } + container macsec-flex-interval-ether-s { + description + "port current performance data"; + list macsec-flex-interval-ether { + key "number"; + description + "port flex-sec ether performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + container macsec-flex-interval-secytxes { + description + "port current performance data"; + list macsec-flex-interval-secytx { + key "number"; + description + "port flex-sec secy-tx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-TX-PARAS; + } + } + } + container macsec-hour24 { + description + "port current performance data"; + container macsec-hour24-ether-s { + description + "port current performance data"; + list macsec-hour24-ether { + key "number"; + description + "port 24 hour ether performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + container macsec-hour24secyifs { + description + "port current performance data"; + list macsec-hour24secyif { + key "number"; + description + "port 24 hour secy-if performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-IF-PARAS; + } + } + container macsec-hour24secyrxes { + description + "port current performance data"; + list macsec-hour24secyrx { + key "number"; + description + "port 24 hour secy-rx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-RX-PARAS; + } + } + container macsec-hour24secytxes { + description + "port current performance data"; + list macsec-hour24secytx { + key "number"; + description + "port 24 hour secy-tx performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SECY-TX-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container ho-vc { + description + "HO_VC controller performance data"; + container ho-vc-ports { + description + "Port performance data"; + list ho-vc-port { + key "name"; + description + "Port performance data"; + container ho-vc-current { + description + "port current performance data"; + container ho-vc-hour24 { + description + "port current performance data"; + container ho-vc-hour24-paths { + description + "port current performance data"; + list ho-vc-hour24-path { + key "number"; + description + "port 24 hour Path performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-HO-VC-PARAS; + } + } + } + container ho-vc-minute15 { + description + "port current performance data"; + container ho-vc-minute15-paths { + description + "port current performance data"; + list ho-vc-minute15-path { + key "number"; + description + "port 15-minute Path performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-HO-VC-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container fibre-channel { + description + "Fibre Channel controller performance data"; + container fc-ports { + description + "Port performance data"; + list fc-port { + key "name"; + description + "Port performance data"; + container fc-current { + description + "FC controller current performance data"; + container fc-minute15 { + description + "FC controller current 15 minute performance + data"; + container fc-minute15fecs { + description + "FC controller 15 minute FEC layer current + performance data"; + list fc-minute15fec { + key "slot-number"; + description + "FC controller 15 minute FEC layer current + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FEC-PARAS; + } + } + container minute15fcs { + description + "FC controller 15 minute current FC layer + performance data"; + list minute15fc { + key "slot-number"; + description + "FC controller 15 minute current FC layer + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FC-PARAS; + } + } + container fc-minute15prbses { + description + "FC controller 15 minute PRBS layer current + performance data"; + list fc-minute15prbs { + key "number"; + description + "FC controller 15 minute PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container fc-minute15pcses { + description + "FC controller 15 minute PCS layer current + performance data"; + list fc-minute15pcs { + key "slot-number"; + description + "FC controller 15 minute PCS layer current + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + } + container fc-second30 { + description + "FC controller current 30 second performance + data"; + container fc-second30fecs { + description + "FC controller 30 second FEC layer current + performance data"; + list fc-second30fec { + key "slot-number"; + description + "FC controller 30 second FEC layer current + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FEC-PARAS; + } + } + container second30fcs { + description + "FC controller 30 second current FC layer + performance data"; + list second30fc { + key "slot-number"; + description + "FC controller 30 second current FC layer + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FC-PARAS; + } + } + container fc-second30prbses { + description + "FC controller 30 second PRBS layer current + performance data"; + list fc-second30prbs { + key "number"; + description + "FC controller 30 second PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container fc-second30pcses { + description + "FC controller 30 second PCS layer current + performance data"; + list fc-second30pcs { + key "slot-number"; + description + "FC controller 30 second PCS layer current + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + } + container fc-flex-interval { + description + "FC controller flex-bin current performance + data"; + container fc-flex-interval-pcses { + description + "FC controller flex-bin PCS layer current + performance data"; + list fc-flex-interval-pcs { + key "slot-number"; + description + "FC controller flex-bin PCS layer current + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + container fc-flex-interval-fcs { + description + "FC controller flex-bin FC layer current + performance data"; + list fc-flex-interval-fc { + key "number"; + description + "FC controller flex-bin FC layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FC-PARAS; + } + } + container fc-flex-interval-fecs { + description + "FC controller flex-bin FEC layer current + performance data"; + list fc-flex-interval-fec { + key "slot-number"; + description + "FC controller flex-bin FEC layer current + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FEC-PARAS; + } + } + container fc-flex-interval-prbses { + description + "FC controller flex-bin PRBS layer current + performance data"; + list fc-flex-interval-prbs { + key "number"; + description + "FC controller flex-bin PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + container fc-hour24 { + description + "FC controller current 24 hour performance + data"; + container fc-hour24prbses { + description + "FC controller 24 hour PRBS layer current + performance data"; + list fc-hour24prbs { + key "number"; + description + "FC controller 24 hour PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container fc-hour24fcs { + description + "FC controller 24 hour FC layer current + performance data"; + list fc-hour24fc { + key "number"; + description + "FC controller 24 hour FC layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FC-PARAS; + } + } + container fc-hour24pcses { + description + "FC controller 24 hour PCS layer current + performance data"; + list fc-hour24pcs { + key "number"; + description + "FC controller 24 hour PCS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PCS-PARAS; + } + } + container fc-hour24fecs { + description + "FC controller 24 hour FEC layer current + performance data"; + list fc-hour24fec { + key "number"; + description + "FC controller 24 hour FEC layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + } + } + container fc-prev { + description + "FC controller previous performance data"; + container fc-prev-flex-interval { + description + "FC controller flex-bin previous performance + data"; + container fc-prev-flex-interval-fcs { + description + "FC controller flex-bin previous FC layer + performance data"; + list fc-prev-flex-interval-fc { + key "number"; + description + "FC controller flex-bin previous FC layer + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FC-PARAS; + } + } + container fc-prev-flex-interval-prbses { + description + "FC controller flex-bin PRBS layer previous + performance data"; + list fc-prev-flex-interval-prbs { + key "number"; + description + "FC controller flex-bin PRBS layer previous + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container fc-prev-flex-interval-pcses { + description + "FC controller flex-bin PCS layer previous + performance data"; + list fc-prev-flex-interval-pcs { + key "slot-number"; + description + "FC controller flex-bin PCS layer previous + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + container fc-prev-flex-interval-fecs { + description + "FC controller flex-bin FEC layer previous + performance data"; + list fc-prev-flex-interval-fec { + key "slot-number"; + description + "FC controller flex-bin FEC layer previous + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FEC-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container odu { + description + "ODU controller performance data"; + container odu-ports { + description + "Port performance data"; + list odu-port { + key "name"; + description + "Port performance data"; + container odu-prev { + description + "port prev performance data"; + container odu-prev-flex-interval { + description + "port prev performance data"; + container odu-prev-flex-interval-otns { + description + "port prev performance data"; + list odu-prev-flex-interval-otn { + key "number"; + description + "port flex-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + container odu-prev-flex-interval-prbses { + description + "port prev performance data"; + list odu-prev-flex-interval-prbs { + key "number"; + description + "port flex-sec prbs performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container odu-prev-flex-interval-otn-all-table { + description + "port flex-sec otn all channels performance + data"; + uses PM-OTN-ALL-CHANS; + } + container odu-prev-flex-interval-otnsecs { + description + "flex-sec odu performance data"; + list odu-prev-flex-interval-otnsec { + key "number"; + description + "otnsec flex-sec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTNSEC-PARAS; + } + } + container odu-prev-flex-interval-gfps { + description + "port prev performance data"; + list odu-prev-flex-interval-gfp { + key "number"; + description + "port flex-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-GFP-PARAS; + } + } + } + } + container odu-current { + description + "port current performance data"; + container odu-minute15 { + description + "port current performance data"; + container odu-minute15gfps { + description + "port current performance data"; + list odu-minute15gfp { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-GFP-PARAS; + } + } + container odu-minute15prbses { + description + "port current performance data"; + list odu-minute15prbs { + key "number"; + description + "port 15-minute prbs performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container odu-minute15otnsecs { + description + "15-min odu performance data"; + list odu-minute15otnsec { + key "number"; + description + "otnsec 15-min performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTNSEC-PARAS; + } + } + container odu-minute15otns { + description + "port current performance data"; + list odu-minute15otn { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + } + container odu-flex-interval { + description + "port current performance data"; + container odu-flex-interval-prbses { + description + "port current performance data"; + list odu-flex-interval-prbs { + key "number"; + description + "port flex-sec prbs performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container odu-flex-interval-gfps { + description + "port current performance data"; + list odu-flex-interval-gfp { + key "number"; + description + "port flex-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-GFP-PARAS; + } + } + container odu-flex-interval-otns { + description + "port current performance data"; + list odu-flex-interval-otn { + key "number"; + description + "port flex-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + container odu-flex-interval-otnsecs { + description + "flex-sec odu performance data"; + list odu-flex-interval-otnsec { + key "number"; + description + "otnsec flexi-sec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTNSEC-PARAS; + } + } + } + container odu-second30 { + description + "port current performance data"; + container odu-second30prbses { + description + "30-sec odu performance data"; + list odu-second30prbs { + key "number"; + description + "PRBS 30-sec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container odu-second30otns { + description + "30-sec odu performance data"; + list odu-second30otn { + key "number"; + description + "port 30-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + container odu-second30otnsecs { + description + "30-sec odu performance data"; + list odu-second30otnsec { + key "number"; + description + "otnsec 30-sec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTNSEC-PARAS; + } + } + container odu-second30gfps { + description + "30-sec odu performance data"; + list odu-second30gfp { + key "number"; + description + "GFP 30-sec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-GFP-PARAS; + } + } + } + container odu-hour24 { + description + "port current performance data"; + container odu-hour24prbses { + description + "port 24 hour performance data"; + list odu-hour24prbs { + key "number"; + description + "port 24 hour otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container odu-hour24otnsecs { + description + "24-hr odu performance data"; + list odu-hour24otnsec { + key "number"; + description + "otnsec 24-hr performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTNSEC-PARAS; + } + } + container odu-hour24gfps { + description + "port 24 hour performance data"; + list odu-hour24gfp { + key "number"; + description + "port 24 hour otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-GFP-PARAS; + } + } + container odu-hour24otns { + description + "port 24 hour performance data"; + list odu-hour24otn { + key "number"; + description + "port 24 hour otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container otu { + description + "OTU controller performance data"; + container otu-ports { + description + "Port performance data"; + list otu-port { + key "name"; + description + "Port performance data"; + container otu-prev { + description + "port prev performance data"; + container otu-prev-flex-interval { + description + "port prev performance data"; + container otu-prev-flex-interval-fecs { + description + "port prev performance data"; + list otu-prev-flex-interval-fec { + key "number"; + description + "port flex-sec fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container otu-prev-flex-interval-prbses { + description + "port current performance data"; + list otu-prev-flex-interval-prbs { + key "number"; + description + "port flex-sec prbs performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container otu-prev-flex-interval-otns { + description + "port prev performance data"; + list otu-prev-flex-interval-otn { + key "number"; + description + "port flex-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + } + } + container otu-current { + description + "port current performance data"; + container otu-minute15 { + description + "port current performance data"; + container otu-minute15fecs { + description + "port current performance data"; + list otu-minute15fec { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container otu-minute15otns { + description + "port current performance data"; + list otu-minute15otn { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + container otu-minute15prbses { + description + "port current performance data"; + list otu-minute15prbs { + key "number"; + description + "port 15-minute prbs performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + container otu-second30 { + description + "port current performance data"; + container otu-second30fecs { + description + "port current performance data"; + list otu-second30fec { + key "number"; + description + "port 30-sec fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container otu-second30otns { + description + "port current performance data"; + list otu-second30otn { + key "number"; + description + "port 30-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + container otu-second30prbses { + description + "prbs 30-sec performance data"; + list otu-second30prbs { + key "number"; + description + "prbs 30-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + container otu-flex-interval { + description + "port current performance data"; + container otu-flex-interval-prbses { + description + "port current performance data"; + list otu-flex-interval-prbs { + key "number"; + description + "port flex-sec prbs performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container otu-flex-interval-fecs { + description + "port current performance data"; + list otu-flex-interval-fec { + key "number"; + description + "port flex-sec fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container otu-flex-interval-otns { + description + "port current performance data"; + list otu-flex-interval-otn { + key "number"; + description + "port flex-sec otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + } + container otu-hour24 { + description + "port current performance data"; + container otu-hour24fecs { + description + "port current performance data"; + list otu-hour24fec { + key "number"; + description + "port 24 hour fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container otu-hour24prbses { + description + "port 24 hour performance data"; + list otu-hour24prbs { + key "number"; + description + "port 24 hour otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container otu-hour24otns { + description + "port 24 hour performance data"; + list otu-hour24otn { + key "number"; + description + "port 24 hour otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container stm { + description + "STM controller performance data"; + container stm-ports { + description + "Port performance data"; + list stm-port { + key "name"; + description + "Port performance data"; + container stm-current { + description + "port current performance data"; + container stm-hour24 { + description + "port current performance data"; + container stm-hour24prbses { + description + "STM controller 24 hour PRBS layer current + performance data"; + list stm-hour24prbs { + key "number"; + description + "STM controller 24 hour PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container stm-hour24stms { + description + "port current performance data"; + list stm-hour24stm { + key "number"; + description + "port 24 hour stm performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-STM-PARAS; + } + } + } + container stm-flex-interval { + description + "STM controller flex-bin current performance + data"; + container stm-flex-interval-prbses { + description + "STM controller flex-bin PRBS layer current + performance data"; + list stm-flex-interval-prbs { + key "number"; + description + "STM controller flex-bin PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + container stm-minute15 { + description + "port current performance data"; + container stm-minute15prbses { + description + "STM controller 15 minute PRBS layer current + performance data"; + list stm-minute15prbs { + key "number"; + description + "STM controller 15 minute PRBS layer + current performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container stm-minute15stms { + description + "port current performance data"; + list stm-minute15stm { + key "number"; + description + "port 15-minute stm performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-STM-PARAS; + } + } + } + container stm-second30 { + description + "port current performance data"; + container stm-second30prbses { + description + "STM controller 30 second PRBS layer current + performance data"; + list stm-second30prbs { + key "number"; + description + "STM controller 30 second PRBS layer + current performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + } + container stm-prev { + description + "STM controller previous performance data"; + container stm-prev-flex-interval { + description + "STM controller flex-bin previous performance + data"; + container stm-prev-flex-interval-prbses { + description + "STM controller flex-bin PRBS layer previous + performance data"; + list stm-prev-flex-interval-prbs { + key "number"; + description + "STM controller flex-bin PRBS layer + previous performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container sonet { + description + "SONET controller performance data"; + container sonet-ports { + description + "Port performance data"; + list sonet-port { + key "name"; + description + "Port performance data"; + container sonet-current { + description + "port current performance data"; + container sonet-minute15 { + description + "port current performance data"; + container sonet-minute15-paths { + description + "port current performance data"; + list sonet-minute15-path { + key "number"; + description + "port 15-minute Path performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PATH-PARAS; + } + } + container sonet-minute15ocns { + description + "port current performance data"; + list sonet-minute15ocn { + key "number"; + description + "port 15-minute ocn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PARAS; + } + } + } + container sonet-hour24 { + description + "port current performance data"; + container sonet-hour24ocns { + description + "port current performance data"; + list sonet-hour24ocn { + key "number"; + description + "port 24 hour ocn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PARAS; + } + } + container sonet-hour24-paths { + description + "port current performance data"; + list sonet-hour24-path { + key "number"; + description + "port 24 hour Path performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PATH-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container optics { + description + "OPTICS controller performance data"; + container optics-ports { + description + "Port performance data"; + list optics-port { + key "name"; + description + "Port performance data"; + container optics-current { + description + "port current performance data"; + container optics-flex-interval { + description + "port current performance data"; + container optics-flex-interval-fecs { + description + "port current performance data"; + list optics-flex-interval-fec { + key "number"; + description + "port variable-second fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container optics-flex-interval-optics { + description + "port current performance data"; + list optics-flex-interval-optic { + key "number"; + description + "port variable-second optics performance + data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OPTICS-PARAS; + } + } + } + container optics-hour24 { + description + "port current performance data"; + container optics-hour24-optics { + description + "port 24 hour performance data"; + list optics-hour24-optic { + key "number"; + description + "port 24 hour optics performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OPTICS-PARAS; + } + } + container optics-hour24fecs { + description + "port current performance data"; + list optics-hour24fec { + key "number"; + description + "port 24 hour fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + } + container optics-minute15 { + description + "port current performance data"; + container optics-minute15-optics { + description + "port current performance data"; + list optics-minute15-optic { + key "number"; + description + "port 15-minute optics performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OPTICS-PARAS; + } + } + container optics-minute15fecs { + description + "port current performance data"; + list optics-minute15fec { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + } + container optics-second30 { + description + "port current performance data"; + container optics-second30fecs { + description + "port current performance data"; + list optics-second30fec { + key "number"; + description + "port 30-second fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container optics-second30-optics { + description + "port current performance data"; + list optics-second30-optic { + key "number"; + description + "port 30-second optics performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OPTICS-PARAS; + } + } + } + } + container optics-prev { + description + "port current performance data"; + container optics-prev-flex-interval { + description + "port prev performance data"; + container optics-prev-flex-interval-fecs { + description + "port prev performance data"; + list optics-prev-flex-interval-fec { + key "number"; + description + "port variable-second fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container optics-prev-flex-interval-optics { + description + "port prev performance data"; + list optics-prev-flex-interval-optic { + key "number"; + description + "port variable-second optics performance + data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OPTICS-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container sts { + description + "STS controller performance data"; + container sts-ports { + description + "Port performance data"; + list sts-port { + key "name"; + description + "Port performance data"; + container sts-current { + description + "port current performance data"; + container sts-minute15 { + description + "port current performance data"; + container sts-minute15-paths { + description + "port current performance data"; + list sts-minute15-path { + key "number"; + description + "port 15-minute Path performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PATH-PARAS; + } + } + } + container sts-hour24 { + description + "port current performance data"; + container sts-hour24-paths { + description + "port current performance data"; + list sts-hour24-path { + key "number"; + description + "port 24 hour Path performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PATH-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container cem { + description + "CEM performance data"; + container cem-ports { + description + "Port performance data"; + list cem-port { + key "name"; + description + "Port performance data"; + container cem-current { + description + "CEM controller current performance data"; + container cem-minute15 { + description + "CEM controller current 15 minute performance + data"; + container minute15cems { + description + "CEM controller 15 minute current CEM layer + performance data"; + list minute15cem { + key "slot-number"; + description + "CEM controller 15 minute current CEM layer + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-CEM-PARAS; + } + } + } + container cem-second30 { + description + "CEM controller current 30 second performance + data"; + container second30cems { + description + "CEM controller 30 second current CEM layer + performance data"; + list second30cem { + key "slot-number"; + description + "CEM controller 30 second current CEM layer + performance data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-CEM-PARAS; + } + } + } + container cem-hour24 { + description + "CEM controller current 24 hour performance + data"; + container cem-hour24cems { + description + "CEM controller 24 hour CEM layer current + performance data"; + list cem-hour24cem { + key "number"; + description + "CEM controller 24 hour CEM layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-CEM-PARAS; + } + } + } + container cem-flex-interval { + description + "CEM controller flex-bin current performance + data"; + container cem-flex-interval-cems { + description + "CEM controller flex-bin CEM layer current + performance data"; + list cem-flex-interval-cem { + key "number"; + description + "CEM controller flex-bin CEM layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-CEM-PARAS; + } + } + } + } + container cem-prev { + description + "CEM controller previous performance data"; + container cem-prev-flex-interval { + description + "CEM controller flex-bin previous performance + data"; + container cem-prev-flex-interval-cems { + description + "CEM controller flex-bin previous CEM layer + performance data"; + list cem-prev-flex-interval-cem { + key "number"; + description + "CEM controller flex-bin previous CEM layer + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-CEM-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container dwdm { + description + "DWDM controller performance data"; + container dwdm-ports { + description + "Port performance data"; + list dwdm-port { + key "name"; + description + "Port performance data"; + container dwdm-current { + description + "port current performance data"; + container dwdm-minute15 { + description + "port current performance data"; + container dwdm-minute15fecs { + description + "port current performance data"; + list dwdm-minute15fec { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container dwdm-minute15-optics { + description + "port current performance data"; + list dwdm-minute15-optic { + key "number"; + description + "port 15-minute optics performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OPTICS-PARAS; + } + } + container dwdm-minute15otns { + description + "port current performance data"; + list dwdm-minute15otn { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + } + container dwdm-hour24 { + description + "port current performance data"; + container dwdm-hour24-optics { + description + "port 24 hour performance data"; + list dwdm-hour24-optic { + key "number"; + description + "port 24 hour optics performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OPTICS-PARAS; + } + } + container dwdm-hour24fecs { + description + "port current performance data"; + list dwdm-hour24fec { + key "number"; + description + "port 24 hour fec performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container dwdm-hour24otns { + description + "port 24 hour performance data"; + list dwdm-hour24otn { + key "number"; + description + "port 24 hour otn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-OTN-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container oc { + description + "OC controller performance data"; + container oc-ports { + description + "Port performance data"; + list oc-port { + key "name"; + description + "Port performance data"; + container oc-current { + description + "port current performance data"; + container oc-hour24 { + description + "port current performance data"; + container oc-hour24prbses { + description + "OC controller 24 hour PRBS layer current + performance data"; + list oc-hour24prbs { + key "number"; + description + "OC controller 24 hour PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container oc-hour24ocns { + description + "port current performance data"; + list oc-hour24ocn { + key "number"; + description + "port 24 hour ocn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PARAS; + } + } + } + container oc-minute15 { + description + "port current performance data"; + container oc-minute15prbses { + description + "OC controller 15 minute PRBS layer current + performance data"; + list oc-minute15prbs { + key "number"; + description + "OC controller 15 minute PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container oc-minute15ocns { + description + "port current performance data"; + list oc-minute15ocn { + key "number"; + description + "port 15-minute ocn performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-SONET-PARAS; + } + } + } + container oc-second30 { + description + "port current performance data"; + container oc-second30prbses { + description + "OC controller 30 second PRBS layer current + performance data"; + list oc-second30prbs { + key "number"; + description + "OC controller 30 second PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + container oc-flex-interval { + description + "OC controller flex-bin current performance + data"; + container oc-flex-interval-prbses { + description + "OC controller flex-bin PRBS layer current + performance data"; + list oc-flex-interval-prbs { + key "number"; + description + "OC controller flex-bin PRBS layer current + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + } + container oc-prev { + description + "OC controller previous performance data"; + container oc-prev-flex-interval { + description + "OC controller flex-bin previous performance + data"; + container oc-prev-flex-interval-prbses { + description + "OC controller flex-bin PRBS layer previous + performance data"; + list oc-prev-flex-interval-prbs { + key "number"; + description + "OC controller flex-bin PRBS layer previous + performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container e1 { + description + "E1 controller performance data"; + container e1-ports { + description + "Port performance data"; + list e1-port { + key "name"; + description + "Port performance data"; + container e1-current { + description + "port current performance data"; + container e1-minute15 { + description + "port current performance data"; + container e1-minute15e1s { + description + "port current performance data"; + list e1-minute15e1 { + key "number"; + description + "port 15-minute e1 performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-E1-PARAS; + } + } + } + container e1-hour24 { + description + "port current performance data"; + container e1-hour24e1s { + description + "port current performance data"; + list e1-hour24e1 { + key "number"; + description + "port 24 hour e1 performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-E1-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container ethernet { + description + "EHERNET controller performance data"; + container ethernet-ports { + description + "Port performance data"; + list ethernet-port { + key "name"; + description + "Port performance data"; + container ethernet-current { + description + "port current performance data"; + container ethernet-flex-interval { + description + "port current performance data"; + container ethernet-flex-interval-prbses { + description + "Ethernet controller flex-bin PRBS layer + current performance data"; + list ethernet-flex-interval-prbs { + key "number"; + description + "Ethernet controller flex-bin PRBS layer + current performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container ethernet-flex-interval-pcses { + description + "ETHERNET port interval performance data"; + list ethernet-flex-interval-pcs { + key "slot-number"; + description + "Ethernet port flex second pcs performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + container ethernet-flex-interval-fecs { + description + "port current performance data"; + list ethernet-flex-interval-fec { + key "number"; + description + "port flex sec ethernet performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + container ethernet-flex-interval-ether-s { + description + "port current performance data"; + list ethernet-flex-interval-ether { + key "number"; + description + "port flex sec ethernet performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + } + container ethernet-second30 { + description + "port current performance data"; + container second30-fecs { + description + "ETHERNET port interval performance data"; + list second30-fec { + key "slot-number"; + description + "ETHERNET port 30 second fec performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FEC-PARAS; + } + } + container second30pcses { + description + "ETHERNET port interval performance data"; + list second30pcs { + key "slot-number"; + description + "Ethernet port 30 second pcs performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + container ethernet-second30prbses { + description + "Ethernet controller 30 second PRBS layer + current performance data"; + list ethernet-second30prbs { + key "number"; + description + "Ethernet controller 30 second PRBS layer + current performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container second30-ethers { + description + "ETHERNET port interval performance data"; + list second30-ether { + key "slot-number"; + description + "ETHERNET port 30 second ether performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-ETHERNET-PARAS; + } + } + } + container ethernet-hour24 { + description + "port current performance data"; + container ethernet-hour24-ether-s { + description + "port current performance data"; + list ethernet-hour24-ether { + key "number"; + description + "port 24 hour ethernet performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + container ethernet-hour24prbses { + description + "Ethernet controller 24 hour PRBS layer + current performance data"; + list ethernet-hour24prbs { + key "number"; + description + "Ethernet controller 24 hour PRBS layer + current performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container hour24pcses { + description + "port current performance data"; + list hour24pcs { + key "number"; + description + "Ethernet port 24 hour pcs performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PCS-PARAS; + } + } + container ethernet-hour24fecs { + description + "port current performance data"; + list ethernet-hour24fec { + key "number"; + description + "port 24 hour ethernet performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + } + container minute15 { + description + "port current performance data"; + container minute15-fecs { + description + "ETHERNET port interval performance data"; + list minute15-fec { + key "slot-number"; + description + "ETHERNET port 15-minute fec performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-FEC-PARAS; + } + } + container minute15pcses { + description + "ETHERNET port interval performance data"; + list minute15pcs { + key "slot-number"; + description + "ETHERNET port 15-minute pcs performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + container minute15-ethers { + description + "ETHERNET port interval performance data"; + list minute15-ether { + key "slot-number"; + description + "ETHERNET port 15-minute ether performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-ETHERNET-PARAS; + } + } + container ethernet-minute15prbses { + description + "Ethernet controller 15 minute PRBS layer + current performance data"; + list ethernet-minute15prbs { + key "number"; + description + "Ethernet controller 15 minute PRBS layer + current performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + } + } + container ethernet-prev { + description + "port prev performance data"; + container ethernet-prev-flex-interval { + description + "port prev performance data"; + container ethernet-prev-flex-interval-prbses { + description + "Ethernet controller flex-bin PRBS layer + previous performance data"; + list ethernet-prev-flex-interval-prbs { + key "number"; + description + "Ethernet controller flex-bin PRBS layer + previous performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-PRBS-PARAS; + } + } + container ethernet-prev-flex-interval-ether-s { + description + "port prev performance data"; + list ethernet-prev-flex-interval-ether { + key "number"; + description + "port flex sec ethernet performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-ETHERNET-PARAS; + } + } + container ethernet-prev-flex-interval-pcses { + description + "ETHERNET port interval performance data"; + list ethernet-prev-flex-interval-pcs { + key "slot-number"; + description + "Ethernet port flex second pcs performance + data"; + leaf slot-number { + type uint32; + description + "interval slot number"; + } + uses PM-PCS-PARAS; + } + } + container ethernet-prev-flex-interval-fecs { + description + "port prev performance data"; + list ethernet-prev-flex-interval-fec { + key "number"; + description + "port flex sec ethernet performance data"; + leaf number { + type uint32; + description + "channel number"; + } + uses PM-FEC-PARAS; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + } + container performance-management-history { + config false; + description + "performace data"; + container global { + description + "global History performace data"; + container periodic { + description + "History performace data"; + container sonet-history { + description + "SONET controller History performance data"; + container sonet-port-histories { + description + "Port performance data"; + list sonet-port-history { + key "name"; + description + "Port performance data"; + container sonet-minute15-history { + description + "port current performance data"; + container sonet-minute15ocn-histories { + description + "port current performance data"; + list sonet-minute15ocn-history { + key "number"; + description + "port 15-minute ocn performance data"; + container sonet-minute15ocn-time-line-instances { + description + "port current performance data"; + list sonet-minute15ocn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-SONET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container sonet-minute15-path-histories { + description + "port current performance data"; + list sonet-minute15-path-history { + key "number"; + description + "port 15-minute Path performance data"; + container sonet-minute15-path-time-line-instances { + description + "port current performance data"; + list sonet-minute15-path-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-SONET-PATH-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container sonet-hour24-history { + description + "port current performance data"; + container sonet-hour24-path-histories { + description + "port current performance data"; + list sonet-hour24-path-history { + key "number"; + description + "port 24 hour Path performance data"; + container sonet-hour24-path-time-line-instances { + description + "port current performance data"; + list sonet-hour24-path-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-SONET-PATH-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container sonet-hour24ocn-histories { + description + "port current performance data"; + list sonet-hour24ocn-history { + key "number"; + description + "port 24 hour ocn performance data"; + container sonet-hour24ocn-time-line-instances { + description + "port current performance data"; + list sonet-hour24ocn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-SONET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container sts-history { + description + "STS controller History performance data"; + container sts-port-histories { + description + "Port performance data"; + list sts-port-history { + key "name"; + description + "Port performance data"; + container sts-minute15-history { + description + "port current performance data"; + container sts-minute15-path-histories { + description + "port current performance data"; + list sts-minute15-path-history { + key "number"; + description + "port 15-minute Path performance data"; + container sts-minute15-path-time-line-instances { + description + "port current performance data"; + list sts-minute15-path-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-SONET-PATH-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container sts-hour24-history { + description + "port current performance data"; + container sts-hour24-path-histories { + description + "port current performance data"; + list sts-hour24-path-history { + key "number"; + description + "port 24 hour Path performance data"; + container sts-hour24-path-time-line-instances { + description + "port current performance data"; + list sts-hour24-path-time-line-instance { + key "number"; + description + "port 15-minute sts performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-SONET-PATH-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container cem-history { + description + "CEM controller historical performance data"; + container cem-port-histories { + description + "CEM controller historical performance data"; + list cem-port-history { + key "name"; + description + "CEM controller historical performance data"; + container cem-second30-history { + description + "CEM controller 30 second historical + performance data"; + container second30cem-histories { + description + "CEM controller 30 second CEM layer + historical performance data"; + list second30cem-history { + key "slot-number"; + description + "CEM controller 30 second CEM layer + historical performance data"; + container second30cem-time-line-instances { + description + "CEM controller 30 second CEM layer + historical performance data"; + list second30cem-time-line-instance { + key "number"; + description + "CEM controller 30 second CEM layer + historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-CEM-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + } + container cem-hour24-history { + description + "CEM controller 24 hour historical + performance data"; + container cem-hour24cem-histories { + description + "CEM controller 24 hour CEM layer + historical performance data"; + list cem-hour24cem-history { + key "number"; + description + "CEM controller 24 hour CEM layer + historical performance data"; + container cem-hour24cem-time-line-instances { + description + "CEM controller 24 hour CEM layer + historical performance data"; + list cem-hour24cem-time-line-instance { + key "number"; + description + "CEM controller 24 hour CEM layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-CEM-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container cem-minute15-history { + description + "CEM controller 15 minute historical + performance data"; + container minute15cem-histories { + description + "CEM controller 15 minute CEM layer + historical performance data"; + list minute15cem-history { + key "slot-number"; + description + "CEM controller 15 minute CEM layer + historical performance data"; + container minute15cem-time-line-instances { + description + "CEM controller 15 minute CEM layer + historical performance data"; + list minute15cem-time-line-instance { + key "number"; + description + "CEM controller 15 minute CEM layer + historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-CEM-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container e1-history { + description + "E1 controller History performance data"; + container e1-port-histories { + description + "Port performance data"; + list e1-port-history { + key "name"; + description + "Port performance data"; + container e1-hour24-history { + description + "port current performance data"; + container e1-hour24e1-histories { + description + "port current performance data"; + list e1-hour24e1-history { + key "number"; + description + "port 24 hour e1 performance data"; + container e1-hour24e1-time-line-instances { + description + "port current performance data"; + list e1-hour24e1-time-line-instance { + key "number"; + description + "port 24 hour e1 performance data"; + leaf number { + type uint32; + description + "History Index number"; + } + uses PM-E1-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container e1-minute15-history { + description + "port current performance data"; + container e1-minute15e1-histories { + description + "port current performance data"; + list e1-minute15e1-history { + key "number"; + description + "port 15-minute e1 performance data"; + container e1-minute15e1-time-line-instances { + description + "port current performance data"; + list e1-minute15e1-time-line-instance { + key "number"; + description + "port 15-minute e1 performance data by + index"; + leaf number { + type uint32; + description + "History Index number"; + } + uses PM-E1-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container ethernet-history { + description + "EHERNET controller History performance data"; + container ethernet-port-histories { + description + "Port performance data"; + list ethernet-port-history { + key "name"; + description + "Port performance data"; + container ethernet-second30-history { + description + "port current performance data"; + container ethernet-second30prbs-histories { + description + "Ethernet controller 30 second PRBS layer + historical performance data"; + list ethernet-second30prbs-history { + key "number"; + description + "Ethernet controller 30 second PRBS layer + historical performance data"; + container ethernet-second30prbs-time-line-instances { + description + "Ethernet controller 30 second PRBS layer + historical performance data"; + list ethernet-second30prbs-time-line-instance { + key "number"; + description + "Ethernet controller 30 second PRBS + layer historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container second30pcs-histories { + description + "ETHERNET port interval performance data"; + list second30pcs-history { + key "slot-number"; + description + "ETHERNET port 30 sec pcs performance data"; + container second30pcs-time-line-instances { + description + "port current performance data"; + list second30pcs-time-line-instance { + key "number"; + description + "port 30 sec pcs performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-PCS-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container second30-ether-histories { + description + "ETHERNET port interval performance data"; + list second30-ether-history { + key "slot-number"; + description + "ETHERNET port 30 sec ether performance + data"; + container second30-ether-time-line-instances { + description + "port current performance data"; + list second30-ether-time-line-instance { + key "number"; + description + "port 30 sec otn performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-ETHERNET-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container second30-fec-histories { + description + "ETHERNET port interval performance data"; + list second30-fec-history { + key "slot-number"; + description + "ETHERNET port 30 sec fec performance data"; + container second30-fec-time-line-instances { + description + "port current performance data"; + list second30-fec-time-line-instance { + key "number"; + description + "port 30 sec fec performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + } + container ethernet-hour24-history { + description + "port current performance data"; + container hour24pcs-histories { + description + "port current performance data"; + list hour24pcs-history { + key "number"; + description + "port 24 hour ethernet performance data"; + container hour24pcs-time-line-instances { + description + "port current performance data"; + list hour24pcs-time-line-instance { + key "number"; + description + "port 24-hour ethernet performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PCS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container ethernet-hour24fec-histories { + description + "port current performance data"; + list ethernet-hour24fec-history { + key "number"; + description + "port 24 hour ethernet performance data"; + container ethernet-hour24fec-time-line-instances { + description + "port current performance data"; + list ethernet-hour24fec-time-line-instance { + key "number"; + description + "port 24-hour ethernet performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container ethernet-hour24prbs-histories { + description + "Ethernet controller 24 hour PRBS layer + historical performance data"; + list ethernet-hour24prbs-history { + key "number"; + description + "Ethernet controller 24 hour PRBS layer + historical performance data"; + container ethernet-hour24prbs-time-line-instances { + description + "Ethernet controller 24 hour PRBS layer + historical performance data"; + list ethernet-hour24prbs-time-line-instance { + key "number"; + description + "Ethernet controller 24 hour PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container ethernet-hour24-ether-histories { + description + "port current performance data"; + list ethernet-hour24-ether-history { + key "number"; + description + "port 24 hour ethernet performance data"; + container ethernet-hour24-ether-time-line-instances { + description + "port current performance data"; + list ethernet-hour24-ether-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-ETHERNET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container ethernet-minute15-history { + description + "port current performance data"; + container minute15pcs-histories { + description + "ETHERNET port interval performance data"; + list minute15pcs-history { + key "slot-number"; + description + "ETHERNET port 15-minute pcs performance + data"; + container minute15pcs-time-line-instances { + description + "port current performance data"; + list minute15pcs-time-line-instance { + key "number"; + description + "port 15-minute pcs performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PCS-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container minute15-ether-histories { + description + "ETHERNET port interval performance data"; + list minute15-ether-history { + key "slot-number"; + description + "ETHERNET port 15-minute ether performance + data"; + container minute15-ether-time-line-instances { + description + "port current performance data"; + list minute15-ether-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-ETHERNET-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container minute15-fec-histories { + description + "ETHERNET port interval performance data"; + list minute15-fec-history { + key "slot-number"; + description + "ETHERNET port 15-minute fec performance + data"; + container minute15-fec-time-line-instances { + description + "port current performance data"; + list minute15-fec-time-line-instance { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container ethernet-minute15prbs-histories { + description + "Ethernet controller 15 minute PRBS layer + historical performance data"; + list ethernet-minute15prbs-history { + key "number"; + description + "Ethernet controller 15 minute PRBS layer + historical performance data"; + container ethernet-minute15prbs-time-line-instances { + description + "Ethernet controller 15 minute PRBS layer + historical performance data"; + list ethernet-minute15prbs-time-line-instance { + key "number"; + description + "Ethernet controller 15 minute PRBS + layer historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container dwdm-history { + description + "DWDM controller History performance data"; + container dwdm-port-histories { + description + "Port performance data"; + list dwdm-port-history { + key "name"; + description + "Port performance data"; + container dwdm-minute15-history { + description + "port current performance data"; + container dwdm-minute15otn-histories { + description + "port current performance data"; + list dwdm-minute15otn-history { + key "number"; + description + "port 15-minute otn performance data"; + container dwdm-minute15otn-time-line-instances { + description + "port current performance data"; + list dwdm-minute15otn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container dwdm-minute15fec-histories { + description + "port current performance data"; + list dwdm-minute15fec-history { + key "number"; + description + "port 15-minute fec performance data"; + container dwdm-minute15fec-time-line-instances { + description + "port current performance data"; + list dwdm-minute15fec-time-line-instance { + key "number"; + description + "port 15-minute fec performance data by + index"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container dwdm-minute15-optics-histories { + description + "port current performance data"; + list dwdm-minute15-optics-history { + key "number"; + description + "port 15-minute optics performance data"; + container dwdm-minute15-optics-time-line-instances { + description + "port current performance data"; + list dwdm-minute15-optics-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-OPTICS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container dwdm-hour24-history { + description + "port current performance data"; + container dwdm-hour24otn-histories { + description + "port 24 hour performance data"; + list dwdm-hour24otn-history { + key "number"; + description + "port 24 hour otn performance data"; + container dwdm-hour24otn-time-line-instances { + description + "port current performance data"; + list dwdm-hour24otn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container dwdm-hour24fec-histories { + description + "port current performance data"; + list dwdm-hour24fec-history { + key "number"; + description + "port 24 hour fec performance data"; + container dwdm-hour24fec-time-line-instances { + description + "port current performance data"; + list dwdm-hour24fec-time-line-instance { + key "number"; + description + "port 15-minute fec performance data by + index"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container dwdm-hour24-optics-histories { + description + "port 24 hour performance data"; + list dwdm-hour24-optics-history { + key "number"; + description + "port 24 hour optics performance data"; + container dwdm-hour24-optics-time-line-instances { + description + "port current performance data"; + list dwdm-hour24-optics-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-OPTICS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container stm-history { + description + "STM controller History performance data"; + container stm-port-histories { + description + "Port performance data"; + list stm-port-history { + key "name"; + description + "Port performance data"; + container stm-hour24-history { + description + "port current performance data"; + container stm-hour24stm-histories { + description + "port current performance data"; + list stm-hour24stm-history { + key "number"; + description + "port 24 hour stm performance data"; + container stm-hour24stm-time-line-instances { + description + "port current performance data"; + list stm-hour24stm-time-line-instance { + key "number"; + description + "port 15-minute stm performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-STM-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container stm-hour24prbs-histories { + description + "STM controller 24 hour PRBS layer + historical performance data"; + list stm-hour24prbs-history { + key "number"; + description + "STM controller 24 hour PRBS layer + historical performance data"; + container stm-hour24prbs-time-line-instances { + description + "STM controller 24 hour PRBS layer + historical performance data"; + list stm-hour24prbs-time-line-instance { + key "number"; + description + "STM controller 24 hour PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container stm-minute15-history { + description + "port current performance data"; + container stm-minute15stm-histories { + description + "port current performance data"; + list stm-minute15stm-history { + key "number"; + description + "port 15-minute stm performance data"; + container stm-minute15stm-time-line-instances { + description + "port current performance data"; + list stm-minute15stm-time-line-instance { + key "number"; + description + "port 15-minute stm performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-STM-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container stm-minute15prbs-histories { + description + "STM controller 15 minute PRBS layer + historical performance data"; + list stm-minute15prbs-history { + key "number"; + description + "STM controller 15 minute PRBS layer + historical performance data"; + container stm-minute15prbs-time-line-instances { + description + "STM controller 15 minute PRBS layer + historical performance data"; + list stm-minute15prbs-time-line-instance { + key "number"; + description + "STM controller 15 minute PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container stm-second30-history { + description + "STM controller 30 second historical + performance data"; + container stm-second30prbs-histories { + description + "STM controller 30 second PRBS layer + historical performance data"; + list stm-second30prbs-history { + key "number"; + description + "STM controller 30 second PRBS layer + historical performance data"; + container stm-second30prbs-time-line-instances { + description + "STM controller 30 second PRBS layer + historical performance data"; + list stm-second30prbs-time-line-instance { + key "number"; + description + "STM controller 30 second PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container macsec-history { + description + "MACSEC controller History performance data"; + container macsec-port-histories { + description + "Port performance data"; + list macsec-port-history { + key "name"; + description + "Port performance data"; + container macsec-minute15-history { + description + "port current performance data"; + container macsec-minute15secyrx-histories { + description + "port current performance data"; + list macsec-minute15secyrx-history { + key "number"; + description + "port 15-minute secy_rx performance data"; + container macsec-minute15secyrx-time-line-instances { + description + "port current performance data"; + list macsec-minute15secyrx-time-line-instance { + key "number"; + description + "port 15-minute secy_rx performance data + by index"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-SECY-RX-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-minute15-ether-histories { + description + "port current performance data"; + list macsec-minute15-ether-history { + key "number"; + description + "port 15-minute ether performance data"; + container macsec-minute15-ether-time-line-instances { + description + "port current performance data"; + list macsec-minute15-ether-time-line-instance { + key "number"; + description + "port 15-minute ether performance data + by index"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-ETHERNET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-minute15secytx-histories { + description + "port current performance data"; + list macsec-minute15secytx-history { + key "number"; + description + "port 15-minute secy_tx performance data"; + container macsec-minute15secytx-time-line-instances { + description + "port current performance data"; + list macsec-minute15secytx-time-line-instance { + key "number"; + description + "port 15-minute secy_tx performance data + by index"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-SECY-TX-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-minute15secyif-histories { + description + "port current performance data"; + list macsec-minute15secyif-history { + key "number"; + description + "port 15-minute secy_if performance data"; + container macsec-minute15secyif-time-line-instances { + description + "port current performance data"; + list macsec-minute15secyif-time-line-instance { + key "number"; + description + "port 15-minute secy_if performance data + by index"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-SECY-IF-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container macsec-hour24-history { + description + "port current performance data"; + container macsec-hour24-ether-histories { + description + "port current performance data"; + list macsec-hour24-ether-history { + key "number"; + description + "port 24 hour ether performance data"; + container macsec-hour24-ether-time-line-instances { + description + "port current performance data"; + list macsec-hour24-ether-time-line-instance { + key "number"; + description + "port 24 hour ether performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-ETHERNET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-hour24secytx-histories { + description + "port current performance data"; + list macsec-hour24secytx-history { + key "number"; + description + "port 24 hour secy_tx performance data"; + container macsec-hour24secytx-time-line-instances { + description + "port current performance data"; + list macsec-hour24secytx-time-line-instance { + key "number"; + description + "port 24 hour secy_tx performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-SECY-TX-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-hour24secyif-histories { + description + "port current performance data"; + list macsec-hour24secyif-history { + key "number"; + description + "port 24 hour secy_if performance data"; + container macsec-hour24secyif-time-line-instances { + description + "port current performance data"; + list macsec-hour24secyif-time-line-instance { + key "number"; + description + "port 24 hour secy_if performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-SECY-IF-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-hour24secyrx-histories { + description + "port current performance data"; + list macsec-hour24secyrx-history { + key "number"; + description + "port 24 hour secy_rx performance data"; + container macsec-hour24secyrx-time-line-instances { + description + "port current performance data"; + list macsec-hour24secyrx-time-line-instance { + key "number"; + description + "port 24 hour secy_rx performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-SECY-RX-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container macsec-second30-history { + description + "port current performance data"; + container macsec-second30secyrx-histories { + description + "port current performance data"; + list macsec-second30secyrx-history { + key "number"; + description + "port 30-second secy_rx performance data"; + container macsec-second30secyrx-time-line-instances { + description + "port current performance data"; + list macsec-second30secyrx-time-line-instance { + key "number"; + description + "port 30-second secy_rx performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-SECY-RX-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-second30-ether-histories { + description + "port current performance data"; + list macsec-second30-ether-history { + key "number"; + description + "port 30-second ether performance data"; + container macsec-second30-ether-time-line-instances { + description + "port current performance data"; + list macsec-second30-ether-time-line-instance { + key "number"; + description + "port 30-second ether performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-ETHERNET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-second30secytx-histories { + description + "port current performance data"; + list macsec-second30secytx-history { + key "number"; + description + "port 30-second secy_tx performance data"; + container macsec-second30secytx-time-line-instances { + description + "port current performance data"; + list macsec-second30secytx-time-line-instance { + key "number"; + description + "port 30-second secy_tx performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-SECY-TX-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container macsec-second30secyif-histories { + description + "port current performance data"; + list macsec-second30secyif-history { + key "number"; + description + "port 30-second secy_if performance data"; + container macsec-second30secyif-time-line-instances { + description + "port current performance data"; + list macsec-second30secyif-time-line-instance { + key "number"; + description + "port 30-second secy_if performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-SECY-IF-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container odu-history { + description + "ODU controller History performance data"; + container odu-port-histories { + description + "Port performance data"; + list odu-port-history { + key "name"; + description + "Port performance data"; + container odu-hour24-history { + description + "port current performance data"; + container odu-hour24gfp-histories { + description + "port 24 hour performance data"; + list odu-hour24gfp-history { + key "number"; + description + "port 24 hour otn performance data"; + container odu-hour24gfp-time-line-instances { + description + "port current performance data"; + list odu-hour24gfp-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-GFP-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container odu-hour24prbs-histories { + description + "port 24 hour performance data"; + list odu-hour24prbs-history { + key "number"; + description + "port 24 hour prbs performance data"; + container odu-hour24prbs-time-line-instances { + description + "port current performance data"; + list odu-hour24prbs-time-line-instance { + key "number"; + description + "port 15-minute prbs performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container odu-hour24otn-histories { + description + "port 24 hour performance data"; + list odu-hour24otn-history { + key "number"; + description + "port 24 hour otn performance data"; + container odu-hour24otn-time-line-instances { + description + "port current performance data"; + list odu-hour24otn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container odu-second30-history { + description + "port current performance data"; + container odu-second30otn-histories { + description + "port current performance data"; + list odu-second30otn-history { + key "number"; + description + "port 30-second otn performance data"; + container odu-second30otn-time-line-instances { + description + "port current performance data"; + list odu-second30otn-time-line-instance { + key "number"; + description + "port 30-second otn performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container odu-second30prbs-histories { + description + "port current performance data"; + list odu-second30prbs-history { + key "number"; + description + "port 30-second prbs performance data"; + container odu-second30prbs-time-line-instances { + description + "port current performance data"; + list odu-second30prbs-time-line-instance { + key "number"; + description + "port 30-second prbs performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container odu-second30gfp-histories { + description + "port current performance data"; + list odu-second30gfp-history { + key "number"; + description + "port 30-second otn performance data"; + container odu-second30gfp-time-line-instances { + description + "port current performance data"; + list odu-second30gfp-time-line-instance { + key "number"; + description + "port 30-second otn performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-GFP-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container odu-minute15-history { + description + "port current performance data"; + container odu-minute15prbs-histories { + description + "port current performance data"; + list odu-minute15prbs-history { + key "number"; + description + "port 15-minute prbs performance data"; + container odu-minute15prbs-time-line-instances { + description + "port current performance data"; + list odu-minute15prbs-time-line-instance { + key "number"; + description + "port 15-minute prbs performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container odu-minute15gfp-histories { + description + "port current performance data"; + list odu-minute15gfp-history { + key "number"; + description + "port 15-minute otn performance data"; + container odu-minute15gfp-time-line-instances { + description + "port current performance data"; + list odu-minute15gfp-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-GFP-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container odu-minute15otn-histories { + description + "port current performance data"; + list odu-minute15otn-history { + key "number"; + description + "port 15-minute otn performance data"; + container odu-minute15otn-time-line-instances { + description + "port current performance data"; + list odu-minute15otn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container otu-history { + description + "OTU controller History performance data"; + container otu-port-histories { + description + "Port performance data"; + list otu-port-history { + key "name"; + description + "Port performance data"; + container otu-second30-history { + description + "port current performance data"; + container otu-second30fec-histories { + description + "port current performance data"; + list otu-second30fec-history { + key "number"; + description + "port 30-second fec performance data"; + container otu-second30fec-time-line-instances { + description + "port current performance data"; + list otu-second30fec-time-line-instance { + key "number"; + description + "port 30-second fec performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container otu-second30prbs-histories { + description + "prbs 30-sec performance data"; + list otu-second30prbs-history { + key "number"; + description + "prbs 30-sec prbs performance data"; + container otu-second30prbs-time-line-instances { + description + "prbs 30-sec current performance data"; + list otu-second30prbs-time-line-instance { + key "number"; + description + "prbs 30-sec prbs performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container otu-second30otn-histories { + description + "port current performance data"; + list otu-second30otn-history { + key "number"; + description + "port 30-second otn performance data"; + container otu-second30otn-time-line-instances { + description + "port current performance data"; + list otu-second30otn-time-line-instance { + key "number"; + description + "port 30-second otn performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container otu-minute15-history { + description + "port current performance data"; + container otu-minute15fec-histories { + description + "port current performance data"; + list otu-minute15fec-history { + key "number"; + description + "port 15-minute fec performance data"; + container otu-minute15fec-time-line-instances { + description + "port current performance data"; + list otu-minute15fec-time-line-instance { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container otu-minute15prbs-histories { + description + "port current performance data"; + list otu-minute15prbs-history { + key "number"; + description + "port 15-minute prbs performance data"; + container otu-minute15prbs-time-line-instances { + description + "port current performance data"; + list otu-minute15prbs-time-line-instance { + key "number"; + description + "port 15-minute prbs performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container otu-minute15otn-histories { + description + "port current performance data"; + list otu-minute15otn-history { + key "number"; + description + "port 15-minute otn performance data"; + container otu-minute15otn-time-line-instances { + description + "port current performance data"; + list otu-minute15otn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container otu-hour24-history { + description + "port current performance data"; + container otu-hour24prbs-histories { + description + "port 24 hour performance data"; + list otu-hour24prbs-history { + key "number"; + description + "port 24 hour prbs performance data"; + container otu-hour24prbs-time-line-instances { + description + "port current performance data"; + list otu-hour24prbs-time-line-instance { + key "number"; + description + "port 15-minute prbs performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container otu-hour24otn-histories { + description + "port 24 hour performance data"; + list otu-hour24otn-history { + key "number"; + description + "port 24 hour otn performance data"; + container otu-hour24otn-time-line-instances { + description + "port current performance data"; + list otu-hour24otn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-OTN-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container otu-hour24fec-histories { + description + "port current performance data"; + list otu-hour24fec-history { + key "number"; + description + "port 24 hour fec performance data"; + container otu-hour24fec-time-line-instances { + description + "port current performance data"; + list otu-hour24fec-time-line-instance { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container ho-vc-history { + description + "HO_VC controller History performance data"; + container ho-vc-port-histories { + description + "Port performance data"; + list ho-vc-port-history { + key "name"; + description + "Port performance data"; + container ho-vc-minute15-history { + description + "port current performance data"; + container ho-vc-minute15-path-histories { + description + "port current performance data"; + list ho-vc-minute15-path-history { + key "number"; + description + "port 15-minute Path performance data"; + container ho-vc-minute15-path-time-line-instances { + description + "port current performance data"; + list ho-vc-minute15-path-time-line-instance { + key "number"; + description + "port 15-minute ho_vc performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-HO-VC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container ho-vc-hour24-history { + description + "port current performance data"; + container ho-vc-hour24-path-histories { + description + "port current performance data"; + list ho-vc-hour24-path-history { + key "number"; + description + "port 24 hour Path performance data"; + container ho-vc-hour24-path-time-line-instances { + description + "port current performance data"; + list ho-vc-hour24-path-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-HO-VC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container fc-history { + description + "FC controller historical performance data"; + container fc-port-histories { + description + "FC controller historical performance data"; + list fc-port-history { + key "name"; + description + "FC controller historical performance data"; + container fc-minute15-history { + description + "FC controller 15 minute historical + performance data"; + container fc-minute15fec-histories { + description + "FC controller 15 minute FEC layer + historical performance data"; + list fc-minute15fec-history { + key "slot-number"; + description + "FC controller 15 minute FEC layer + historical performance data"; + container fc-minute15fec-time-line-instances { + description + "FC controller 15 minute FEC layer + historical performance data"; + list fc-minute15fec-time-line-instance { + key "number"; + description + "FC controller 15 minute FEC layer + historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container fc-minute15prbs-histories { + description + "FC controller 15 minute PRBS layer + historical performance data"; + list fc-minute15prbs-history { + key "number"; + description + "FC controller 15 minute PRBS layer + historical performance data"; + container fc-minute15prbs-time-line-instances { + description + "FC controller 15 minute PRBS layer + historical performance data"; + list fc-minute15prbs-time-line-instance { + key "number"; + description + "FC controller 15 minute PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container minute15fc-histories { + description + "FC controller 15 minute FC layer + historical performance data"; + list minute15fc-history { + key "slot-number"; + description + "FC controller 15 minute FC layer + historical performance data"; + container minute15fc-time-line-instances { + description + "FC controller 15 minute FC layer + historical performance data"; + list minute15fc-time-line-instance { + key "number"; + description + "FC controller 15 minute FC layer + historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-FC-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container fc-minute15pcs-histories { + description + "FC controller 15 minute PCS layer + historical performance data"; + list fc-minute15pcs-history { + key "slot-number"; + description + "FC controller 15 minute PCS layer + historical performance data"; + container fc-minute15pcs-time-line-instances { + description + "FC controller 15 minute PCS layer + historical performance data"; + list fc-minute15pcs-time-line-instance { + key "number"; + description + "FC controller 15 minute PCS layer + historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PCS-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + } + container fc-second30-history { + description + "FC controller 30 second historical + performance data"; + container fc-second30fec-histories { + description + "FC controller 30 second FEC layer + historical performance data"; + list fc-second30fec-history { + key "slot-number"; + description + "FC controller 30 second FEC layer + historical performance data"; + container fc-second30fec-time-line-instances { + description + "FC controller 30 second FEC layer + historical performance data"; + list fc-second30fec-time-line-instance { + key "number"; + description + "FC controller 30 second FEC layer + historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-FC-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container fc-second30prbs-histories { + description + "FC controller 30 second PRBS layer + historical performance data"; + list fc-second30prbs-history { + key "number"; + description + "FC controller 30 second PRBS layer + historical performance data"; + container fc-second30prbs-time-line-instances { + description + "FC controller 30 second PRBS layer + historical performance data"; + list fc-second30prbs-time-line-instance { + key "number"; + description + "FC controller 30 second PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container fc-second30pcs-histories { + description + "FC controller 30 second PCS layer + historical performance data"; + list fc-second30pcs-history { + key "slot-number"; + description + "FC controller 30 second PCS layer + historical performance data"; + container fc-second30pcs-time-line-instances { + description + "FC controller 30 second PCS layer + historical performance data"; + list fc-second30pcs-time-line-instance { + key "number"; + description + "FC controller 30 second PCS layer + historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-FC-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + container second30fc-histories { + description + "FC controller 30 second FC layer + historical performance data"; + list second30fc-history { + key "slot-number"; + description + "FC controller 30 second FC layer + historical performance data"; + container second30fc-time-line-instances { + description + "FC controller 30 second FC layer + historical performance data"; + list second30fc-time-line-instance { + key "number"; + description + "FC controller 30 second FC layer + historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-FC-PARAS; + } + } + leaf slot-number { + type uint32; + description + "interval slot number"; + } + } + } + } + container fc-hour24-history { + description + "FC controller 24 hour historical + performance data"; + container fc-hour24pcs-histories { + description + "FC controller 24 hour PCS layer historical + performance data"; + list fc-hour24pcs-history { + key "number"; + description + "FC controller 24 hour PCS layer + historical performance data"; + container fc-hour24pcs-time-line-instances { + description + "FC controller 24 hour PCS layer + historical performance data"; + list fc-hour24pcs-time-line-instance { + key "number"; + description + "FC controller 24 hour PCS layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PCS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container fc-hour24fec-histories { + description + "FC controller 24 hour FEC layer historical + performance data"; + list fc-hour24fec-history { + key "number"; + description + "FC controller 24 hour FEC layer + historical performance data"; + container fc-hour24fec-time-line-instances { + description + "FC controller 24 hour FEC layer + historical performance data"; + list fc-hour24fec-time-line-instance { + key "number"; + description + "FC controller 24 hour FEC layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container fc-hour24fc-histories { + description + "FC controller 24 hour FC layer historical + performance data"; + list fc-hour24fc-history { + key "number"; + description + "FC controller 24 hour FC layer historical + performance data"; + container fc-hour24fc-time-line-instances { + description + "FC controller 24 hour FC layer + historical performance data"; + list fc-hour24fc-time-line-instance { + key "number"; + description + "FC controller 24 hour FC layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-FC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container fc-hour24prbs-histories { + description + "FC controller 24 hour PRBS layer + historical performance data"; + list fc-hour24prbs-history { + key "number"; + description + "FC controller 24 hour PRBS layer + historical performance data"; + container fc-hour24prbs-time-line-instances { + description + "FC controller 24 hour PRBS layer + historical performance data"; + list fc-hour24prbs-time-line-instance { + key "number"; + description + "FC controller 24 hour PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container optics-history { + description + "OPTICS controller History performance data"; + container optics-port-histories { + description + "Port performance data"; + list optics-port-history { + key "name"; + description + "Port performance data"; + container optics-hour24-history { + description + "port current performance data"; + container optics-hour24-optics-histories { + description + "port 24 hour performance data"; + list optics-hour24-optics-history { + key "number"; + description + "port 24 hour optics performance data"; + container optics-hour24-optics-time-line-instances { + description + "port current performance data"; + list optics-hour24-optics-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-OPTICS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container optics-hour24fec-histories { + description + "port current performance data"; + list optics-hour24fec-history { + key "number"; + description + "port 24 hour fec performance data"; + container optics-hour24fec-time-line-instances { + description + "port current performance data"; + list optics-hour24fec-time-line-instance { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container optics-second30-history { + description + "port current performance data"; + container optics-second30-optics-histories { + description + "port current performance data"; + list optics-second30-optics-history { + key "number"; + description + "port 30-second optics performance data"; + container optics-second30-optics-time-line-instances { + description + "port current performance data"; + list optics-second30-optics-time-line-instance { + key "number"; + description + "port 30 second otn performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-OPTICS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container optics-second30fec-histories { + description + "port current performance data"; + list optics-second30fec-history { + key "number"; + description + "port 30-second fec performance data"; + container optics-second30fec-time-line-instances { + description + "port current performance data"; + list optics-second30fec-time-line-instance { + key "number"; + description + "port sec-30 fec performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container optics-minute15-history { + description + "port current performance data"; + container optics-minute15-optics-histories { + description + "port current performance data"; + list optics-minute15-optics-history { + key "number"; + description + "port 15-minute optics performance data"; + container optics-minute15-optics-time-line-instances { + description + "port current performance data"; + list optics-minute15-optics-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-OPTICS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container optics-minute15fec-histories { + description + "port current performance data"; + list optics-minute15fec-history { + key "number"; + description + "port 15-minute fec performance data"; + container optics-minute15fec-time-line-instances { + description + "port current performance data"; + list optics-minute15fec-time-line-instance { + key "number"; + description + "port 15-minute fec performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-FEC-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + container oc-history { + description + "OC controller History performance data"; + container oc-port-histories { + description + "Port performance data"; + list oc-port-history { + key "name"; + description + "Port performance data"; + container oc-second30-history { + description + "OC controller 30 second historical + performance data"; + container oc-second30prbs-histories { + description + "OC controller 30 second PRBS layer + historical performance data"; + list oc-second30prbs-history { + key "number"; + description + "OC controller 30 second PRBS layer + historical performance data"; + container oc-second30prbs-time-line-instances { + description + "OC controller 30 second PRBS layer + historical performance data"; + list oc-second30prbs-time-line-instance { + key "number"; + description + "OC controller 30 second PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1..30"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container oc-hour24-history { + description + "port current performance data"; + container oc-hour24prbs-histories { + description + "OC controller 24 hour PRBS layer + historical performance data"; + list oc-hour24prbs-history { + key "number"; + description + "OC controller 24 hour PRBS layer + historical performance data"; + container oc-hour24prbs-time-line-instances { + description + "OC controller 24 hour PRBS layer + historical performance data"; + list oc-hour24prbs-time-line-instance { + key "number"; + description + "OC controller 24 hour PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container oc-hour24ocn-histories { + description + "port current performance data"; + list oc-hour24ocn-history { + key "number"; + description + "port 24 hour ocn performance data"; + container oc-hour24ocn-time-line-instances { + description + "port current performance data"; + list oc-hour24ocn-time-line-instance { + key "number"; + description + "port 15-minute otn performance data"; + leaf number { + type uint32 { + range "1"; + } + description + "History Index number"; + } + uses PM-SONET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + container oc-minute15-history { + description + "port current performance data"; + container oc-minute15ocn-histories { + description + "port current performance data"; + list oc-minute15ocn-history { + key "number"; + description + "port 15-minute ocn performance data"; + container oc-minute15ocn-time-line-instances { + description + "port current performance data"; + list oc-minute15ocn-time-line-instance { + key "number"; + description + "port 15-minute ocn performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-SONET-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + container oc-minute15prbs-histories { + description + "OC controller 15 minute PRBS layer + historical performance data"; + list oc-minute15prbs-history { + key "number"; + description + "OC controller 15 minute PRBS layer + historical performance data"; + container oc-minute15prbs-time-line-instances { + description + "OC controller 15 minute PRBS layer + historical performance data"; + list oc-minute15prbs-time-line-instance { + key "number"; + description + "OC controller 15 minute PRBS layer + historical performance data"; + leaf number { + type uint32 { + range "1..32"; + } + description + "History Index number"; + } + uses PM-PRBS-PARAS; + } + } + leaf number { + type uint32; + description + "channel number"; + } + } + } + } + leaf name { + type xr:Interface-name; + description + "Port name"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-cfg.yang new file mode 100644 index 000000000..69b333254 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-cfg.yang @@ -0,0 +1,458 @@ +module Cisco-IOS-XR-policy-repository-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-policy-repository-cfg"; + prefix policy-repository-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 policy-repository package configuration. + + This module contains definitions + for the following management objects: + routing-policy: Routing policy configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-22 { + description + "Updating RPL knob for set nexthop with allocate-vpn-label"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixing prepend/append/remove containers."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-08-27 { + description + "IOS XR 5.3.2 revision."; + } + + container routing-policy { + description + "Routing policy configuration"; + container route-policies { + description + "All configured policies"; + list route-policy { + key "route-policy-name"; + description + "Information about an individual policy"; + leaf route-policy-name { + type xr:Cisco-ios-xr-string; + description + "Route policy name"; + } + leaf rpl-route-policy { + type xr:Rpl-policy; + mandatory true; + description + "policy statements"; + } + } + } + container sets { + description + "All configured sets"; + container prefix-sets { + description + "Information about Prefix sets"; + list prefix-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-prefix-set { + type xr:Rpl-set; + mandatory true; + description + "prefix statements"; + } + } + } + container large-community-sets { + description + "Information about Large Community sets"; + list large-community-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf large-community-set-as-text { + type xr:Rpl-set; + mandatory true; + description + "Large Community Set"; + } + } + } + container mac-sets { + description + "Information about Mac sets"; + list mac-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf mac-set-as-text { + type xr:Rpl-set; + mandatory true; + description + "Mac Set"; + } + } + } + container extended-community-opaque-sets { + description + "Information about Opaque sets"; + list extended-community-opaque-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-extended-community-opaque-set { + type xr:Rpl-set; + mandatory true; + description + "Extended Community Opaque Set"; + } + } + } + container ospf-area-sets { + description + "Information about OSPF Area sets"; + list ospf-area-set { + key "set-name"; + description + "Information about an individual OSPF area set. + Usage: OSPF area set allows to define named + set of area numbers which can be + referenced in the route-policy. Area sets + may be used during redistribution of the ospf + protocol. Example: ospf-area-set EXAMPLE + 1, + 192.168.1.255 + end-set + Syntax: OSPF area number can be entered as 32 + bit number or in the ip address + format. See example. + Semantic: Area numbers listed in the set will + be searched for a match. In the + example these are areas 1 and + 192.168.1.255. "; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rplospf-area-set { + type xr:Rpl-set; + mandatory true; + description + "OSPF Area Set"; + } + } + } + container extended-community-cost-sets { + description + "Information about Cost sets"; + list extended-community-cost-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-extended-community-cost-set { + type xr:Rpl-set; + mandatory true; + description + "Extended Community Cost Set"; + } + } + } + container extended-community-soo-sets { + description + "Information about SOO sets"; + list extended-community-soo-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-extended-community-soo-set { + type xr:Rpl-set; + mandatory true; + description + "Extended Community SOO Set"; + } + } + } + container esi-sets { + description + "Information about Esi sets"; + list esi-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf esi-set-as-text { + type xr:Rpl-set; + mandatory true; + description + "Esi Set"; + } + } + } + container extended-community-seg-nh-sets { + description + "Information about SegNH sets"; + list extended-community-seg-nh-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-extended-community-seg-nh-set { + type xr:Rpl-set; + mandatory true; + description + "Extended Community SegNH Set"; + } + } + } + container rd-sets { + description + "Information about RD sets"; + list rd-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rplrd-set { + type xr:Rpl-set; + mandatory true; + description + "RD Set"; + } + } + } + container policy-global-set-table { + description + "Information about PolicyGlobal sets"; + leaf policy-global-set { + type xr:Rpl-set; + description + "Information about an individual set"; + } + } + container extended-community-bandwidth-sets { + description + "Information about Bandwidth sets"; + list extended-community-bandwidth-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-extended-community-bandwidth-set { + type xr:Rpl-set; + mandatory true; + description + "Extended Community Bandwidth Set"; + } + } + } + container community-sets { + description + "Information about Community sets"; + list community-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-community-set { + type xr:Rpl-set; + mandatory true; + description + "Community Set"; + } + } + } + container as-path-sets { + description + "Information about AS Path sets"; + list as-path-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rplas-path-set { + type xr:Rpl-set; + mandatory true; + description + "ASPath Set"; + } + } + } + container tag-sets { + description + "Information about Tag sets"; + list tag-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-tag-set { + type xr:Rpl-set; + mandatory true; + description + "Tag Set"; + } + } + } + container etag-sets { + description + "Information about Etag sets"; + list etag-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf etag-set-as-text { + type xr:Rpl-set; + mandatory true; + description + "Etag Set"; + } + } + } + container extended-community-rt-sets { + description + "Information about RT sets"; + list extended-community-rt-set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + leaf rpl-extended-community-rt-set { + type xr:Rpl-set; + mandatory true; + description + "Extended Community RT Set"; + } + } + } + } + container limits { + description + "Limits for Routing Policy"; + leaf maximum-lines-of-policy { + type uint32; + default "131072"; + description + "Maximum number of lines of policy configuration + that may be configured in total"; + } + leaf maximum-number-of-policies { + type uint32; + default "5000"; + description + "Maximum number of policies that may be + configured"; + } + } + leaf set-exit-as-abort { + type empty; + description + "Set exit under RPL config to abort"; + } + leaf editor { + type string; + description + "'emacs' or 'vim' or 'nano'"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper-sub1.yang new file mode 100644 index 000000000..f2a2e73a9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper-sub1.yang @@ -0,0 +1,491 @@ +submodule Cisco-IOS-XR-policy-repository-oper-sub1 { + belongs-to Cisco-IOS-XR-policy-repository-oper { + prefix Cisco-IOS-XR-policy-repository-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR policy-repository package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-08 { + description + "route-policy-name can contain parameters. Updating route-policy-name type to EncodedString."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-11 { + description + "List or leaflist issue fixed."; + } + revision 2017-09-22 { + description + "Introduced shadow process container."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Group { + type enumeration { + enum "address-family-group" { + value 0; + description + "Address Family Group"; + } + enum "session-group" { + value 1; + description + "Session Group"; + } + enum "neighbor-group" { + value 2; + description + "Neighbor Group"; + } + enum "neighbor" { + value 3; + description + "Neighbor"; + } + enum "error-group" { + value 4; + description + "Error Group"; + } + } + description + "BGP Neighbor Group Type"; + } + + typedef Attach-point-direction { + type enumeration { + enum "in" { + value 0; + description + "Attach Point Direction IN"; + } + enum "out" { + value 1; + description + "Attach Point Direction OUT"; + } + } + description + "Attach Point Direction"; + } + + typedef Sub-address-family { + type enumeration { + enum "unicast" { + value 0; + description + "Unicast"; + } + enum "multicast" { + value 1; + description + "Multicast"; + } + enum "label" { + value 2; + description + "Label"; + } + enum "tunnel" { + value 3; + description + "Tunnel"; + } + enum "vpn" { + value 4; + description + "VPN"; + } + enum "mdt" { + value 5; + description + "MDT"; + } + enum "vpls" { + value 6; + description + "VPLS"; + } + enum "rt-constraint" { + value 7; + description + "RTConstraint"; + } + enum "mvpn" { + value 8; + description + "MVPN"; + } + enum "flow" { + value 9; + description + "FLOW"; + } + enum "vpn-mcast" { + value 10; + description + "VPN Multicast"; + } + enum "evpn" { + value 11; + description + "EVPN"; + } + enum "saf-none" { + value 12; + description + "No SAFI"; + } + enum "saf-unknown" { + value 13; + description + "Unknown"; + } + } + description + "Sub Address Family"; + } + + typedef Address-family { + type enumeration { + enum "ipv4" { + value 0; + description + "IPv4 Address Family"; + } + enum "ipv6" { + value 1; + description + "IPv6 Address Family"; + } + enum "l2vpn" { + value 2; + description + "L2VPN Address Family"; + } + enum "ls" { + value 3; + description + "LINKSTATE Address Family"; + } + enum "af-none" { + value 4; + description + "No Address Family"; + } + enum "af-unknown" { + value 5; + description + "Unknown Address Family"; + } + } + description + "Address Family"; + } + + typedef Object-status { + type enumeration { + enum "active" { + value 0; + description + "The object is in use"; + } + enum "inactive" { + value 1; + description + "The object is referenced by another object, but + not used"; + } + enum "unused" { + value 2; + description + "The object is not used or referenced"; + } + } + description + "Whether an RPL object is used/referenced"; + } + + typedef String { + type string; + description + "String"; + } + + grouping SET-INFO { + description + "List of sets"; + leaf set-domain { + type string; + description + "Domain of sets"; + } + list set-name { + description + "Names of sets in this domain"; + leaf entry { + type String; + description + "Names of sets in this domain"; + } + } + } + + grouping SET-LIST { + description + "List of sets in one domain"; + uses SET-INFO; + } + + grouping RPL-SETS-INFO { + description + "Names of set objects"; + list sets { + description + "List of sets in several domains"; + uses SET-LIST; + } + } + + grouping CLIENT-INFO { + description + "Policy attachment information"; + leaf protocol { + type string; + description + "Protocol to which policy attached"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf proto-instance { + type string; + description + "Protocol instance"; + } + leaf af-name { + type Address-family; + description + "Address Family Identifier"; + } + leaf saf-name { + type Sub-address-family; + description + "Subsequent Address Family Identifier"; + } + leaf neighbor-address { + type string; + description + "Neighbor IP Address"; + } + leaf neighbor-af-name { + type Address-family; + description + "Neighbor IP Address Family"; + } + leaf group-name { + type string; + description + "Neighbor Group Name"; + } + leaf direction { + type Attach-point-direction; + description + "Direction In or Out"; + } + leaf group { + type Group; + description + "Neighbor Group "; + } + leaf source-protocol { + type string; + description + "Source Protocol to redistribute, Source Protocol + can be one of the following values{all, + connected, local, static, bgp, rip, isis, ospf + ,ospfv3, eigrp, unknown }"; + } + leaf aggregate-network-address { + type string; + description + "Aggregate IP address or Network IP Address in + IPv4 or IPv6 Format"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf instance { + type string; + description + "Instance"; + } + leaf area-id { + type string; + description + "OSPF Area ID in Decimal Integer Format"; + } + leaf propogate-from { + type int32; + description + "ISIS Propogate From Level"; + } + leaf propogate-to { + type int32; + description + "ISIS Propogate To Level"; + } + leaf route-policy-name { + type string; + description + "Policy that uses object in question"; + } + leaf attached-policy { + type string; + description + "The attached policy that (maybe indirectly) uses + the object in question"; + } + leaf attach-point { + type string; + description + "Name of attach point where policy is attached"; + } + } + + grouping RPL-ATTACHMENT-INFO { + description + "Places where a policy is attached"; + list binding { + description + "bindings list"; + uses CLIENT-INFO; + } + } + + grouping REF-INFO { + description + "Set reference information"; + leaf route-policy-name { + type string; + description + "Name of policy"; + } + leaf used-directly { + type boolean; + description + "Whether the policy uses this object directly or + indirectly"; + } + leaf status { + type Object-status; + description + "Active, Inactive, or Unused"; + } + } + + grouping RPL-REFERENCES-INFO { + description + "Set references list"; + list reference { + description + "Information about policies referring to this + object"; + uses REF-INFO; + } + } + + grouping RPL-OBJECTS-INFO { + description + "Names of policy objects"; + list object { + description + "Policy objects"; + leaf entry { + type String; + description + "Policy objects"; + } + } + } + + grouping RPL-MAX-LIMITS-INFO { + description + "Policy maximum limits info"; + leaf maximum-lines-of-policy { + type uint32; + description + "Maximum lines of configuration allowable for all + policies and sets"; + } + leaf current-lines-of-policy-limit { + type uint32; + description + "Number of lines of configuration for + policies/sets currently allowed"; + } + leaf current-lines-of-policy-used { + type uint32; + description + "Current number of lines configured for all + policies and sets"; + } + leaf maximum-number-of-policies { + type uint32; + description + "Maximum number of policies allowable"; + } + leaf current-number-of-policies-limit { + type uint32; + description + "Number of policies currently allowed"; + } + leaf current-number-of-policies-used { + type uint32; + description + "Current number of policies configured"; + } + leaf compiled-policies-length { + type uint32; + description + "The total compiled length of all policies"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper.yang new file mode 100644 index 000000000..9db8b2006 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-policy-repository-oper.yang @@ -0,0 +1,388 @@ +module Cisco-IOS-XR-policy-repository-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-policy-repository-oper"; + prefix policy-repository-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-policy-repository-oper-sub1 { + revision-date 2021-02-08; + } + + 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 policy-repository package operational data. + + This module contains definitions + for the following management objects: + routing-policy: Routing policy operational data + routing-policy-shadow: Shadow routing policy operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-08 { + description + "route-policy-name can contain parameters. Updating route-policy-name type to EncodedString."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-11 { + description + "List or leaflist issue fixed."; + } + revision 2017-09-22 { + description + "Introduced shadow process container."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping UNUSED { + description + "Common node of policies, as-path, community, + large-community, extended-community-cost, rd, + extended-community-rt, extended-community-soo, + extended-community-opaque, + extended-community-seg-nh, + extended-community-bandwidth, prefix, esi, etag, + mac, tag, ospf-area"; + container unused { + description + "All objects of a given type that are not + referenced at all"; + uses RPL-OBJECTS-INFO; + } + } + + grouping SET-TABLE { + description + "Common node of as-path, community, + large-community, extended-community-cost, rd, + extended-community-rt, extended-community-soo, + extended-community-opaque, + extended-community-seg-nh, + extended-community-bandwidth, prefix, esi, etag, + mac, tag, ospf-area"; + container sets { + description + "Information about individual sets"; + list set { + key "set-name"; + description + "Information about an individual set"; + leaf set-name { + type xr:Cisco-ios-xr-string; + description + "Set name"; + } + uses USED-BY; + uses ATTACHED; + } + } + } + + grouping SETS { + description + "Common node of routing-policy, + routing-policy-shadow"; + container sets { + description + "Information about configured sets"; + container etag { + description + "Information about Etag sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container ospf-area { + description + "Information about OSPF Area sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container extended-community-opaque { + description + "Information about Extended Community Opaque + sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container extended-community-seg-nh { + description + "Information about Extended Community SegNH sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container extended-community-soo { + description + "Information about Extended Community SOO sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container tag { + description + "Information about Tag sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container prefix { + description + "Information about AS Path sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container community { + description + "Information about Community sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container as-path { + description + "Information about AS Path sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container large-community { + description + "Information about Large Community sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container esi { + description + "Information about Esi sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container extended-community-bandwidth { + description + "Information about Extended Community Bandwidth + sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + } + container extended-community-rt { + description + "Information about Extended Community RT sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container rd { + description + "Information about RD sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container mac { + description + "Information about Mac sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + container extended-community-cost { + description + "Information about Extended Community Cost sets"; + uses SET-TABLE; + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + } + } + + grouping LIMITS { + description + "Common node of routing-policy, + routing-policy-shadow"; + container limits { + description + "Information about configured limits and the + current values"; + uses RPL-MAX-LIMITS-INFO; + } + } + + grouping INACTIVE { + description + "Common node of policies, as-path, community, + large-community, extended-community-cost, rd, + extended-community-rt, extended-community-soo, + extended-community-opaque, + extended-community-seg-nh, + extended-community-bandwidth, prefix, esi, etag, + mac, tag, ospf-area"; + container inactive { + description + "All objects of a given type that are not + attached to a protocol"; + uses RPL-OBJECTS-INFO; + } + } + + grouping POLICIES { + description + "Common node of routing-policy, + routing-policy-shadow"; + container policies { + description + "Information about configured route policies"; + container route-policies { + description + "Information about individual policies"; + list route-policy { + key "route-policy-name"; + description + "Information about an individual policy"; + container policy-uses { + description + "Information about which policies and sets + this policy uses"; + container directly-used-policies { + description + "Policies that this policy uses directly"; + uses RPL-OBJECTS-INFO; + } + container all-used-sets { + description + "Sets used by this policy, or by policies + that it uses"; + uses RPL-SETS-INFO; + } + container directly-used-sets { + description + "Sets that this policy uses directly"; + uses RPL-SETS-INFO; + } + container all-used-policies { + description + "Policies used by this policy, or by policies + that it uses"; + uses RPL-OBJECTS-INFO; + } + } + leaf route-policy-name { + type string; + description + "Route policy name"; + } + uses USED-BY; + uses ATTACHED; + } + } + uses UNUSED; + uses INACTIVE; + uses ACTIVE; + } + } + + grouping USED-BY { + description + "Common node of route-policy, set"; + container used-by { + description + "Policies that use this object, directly or + indirectly"; + uses RPL-REFERENCES-INFO; + } + } + + grouping ACTIVE { + description + "Common node of policies, as-path, community, + large-community, extended-community-cost, rd, + extended-community-rt, extended-community-soo, + extended-community-opaque, + extended-community-seg-nh, prefix, esi, etag, mac + , tag, ospf-area"; + container active { + description + "All objects of a given type that are attached to + a protocol"; + uses RPL-OBJECTS-INFO; + } + } + + grouping ATTACHED { + description + "Common node of route-policy, set"; + container attached { + description + "Information about where this policy or set is + attached"; + uses RPL-ATTACHMENT-INFO; + } + } + + container routing-policy { + config false; + description + "Routing policy operational data"; + uses LIMITS; + uses POLICIES; + uses SETS; + } + container routing-policy-shadow { + config false; + description + "Shadow routing policy operational data"; + uses LIMITS; + uses POLICIES; + uses SETS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-cfg.yang new file mode 100644 index 000000000..27002598d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-cfg.yang @@ -0,0 +1,514 @@ +module Cisco-IOS-XR-portmode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-portmode-cfg"; + prefix portmode-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 portmode package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-04 { + description + "New rate OTU2, OTU2E, OTU4, FC1, FC2, FC4, FC8, FC16 and FC32 are added to Port-mode-rate type."; + semver:module-version "2.0.0"; + } + revision 2020-04-03 { + description + "Portmode Config and Datatype Yang model added. + 2020-04-03 + CPRI role/datarate-list parameters added."; + semver:module-version "1.1.0"; + } + revision 2019-07-05 { + description + "Portmode Config and Datatype Yang model added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Port-mode-mapping { + type enumeration { + enum "none" { + value 0; + description + "No mapping"; + } + enum "gfp-f" { + value 1; + description + "GFP_F mapping"; + } + enum "amp" { + value 2; + description + "AMP mapping"; + } + enum "bmp" { + value 3; + description + "BMP mapping"; + } + enum "gmp" { + value 4; + description + "GMP mapping"; + } + enum "wis" { + value 5; + description + "WIS mapping"; + } + enum "gfp-f-ext" { + value 6; + description + "GFP_F_EXT mapping"; + } + } + description + "Port mode mapping"; + } + + typedef Cpri-role { + type enumeration { + enum "slave" { + value 0; + description + "Slave"; + } + enum "master" { + value 1; + description + "Master"; + } + } + description + "Cpri role"; + } + + typedef Port-mode-rate { + type enumeration { + enum "none" { + value 0; + description + "No Rate"; + } + enum "oc3" { + value 1; + description + "OC3 Rate"; + } + enum "oc12" { + value 2; + description + "OC12 Rate"; + } + enum "oc48" { + value 3; + description + "OC48 Rate"; + } + enum "oc192" { + value 4; + description + "OC192 Rate"; + } + enum "oc768" { + value 5; + description + "OC768 Rate"; + } + enum "stm1" { + value 6; + description + "STM1 Rate"; + } + enum "stm4" { + value 7; + description + "STM4 Rate"; + } + enum "stm16" { + value 8; + description + "STM16 Rate"; + } + enum "stm64" { + value 9; + description + "STM64 Rate"; + } + enum "stm256" { + value 10; + description + "STM256 Rate"; + } + enum "100ge" { + value 11; + description + "100GE Rate"; + } + enum "10ge" { + value 12; + description + "10GE Rate"; + } + enum "40ge" { + value 13; + description + "40GE Rate"; + } + enum "1ge" { + value 14; + description + "1GE Rate"; + } + enum "25ge" { + value 15; + description + "25GE Rate"; + } + enum "otu2" { + value 16; + description + "OTU2 rate"; + } + enum "otu2e" { + value 17; + description + "OTU2E rate"; + } + enum "otu4" { + value 18; + description + "OTU4 rate"; + } + enum "fc1" { + value 19; + description + "FC1 rate"; + } + enum "fc2" { + value 20; + description + "FC2 rate"; + } + enum "fc4" { + value 21; + description + "FC4 rate"; + } + enum "fc8" { + value 22; + description + "FC8 rate"; + } + enum "fc16" { + value 23; + description + "FC16 rate"; + } + enum "fc32" { + value 24; + description + "FC32 rate"; + } + } + description + "Port mode rate"; + } + + typedef Port-mode-types { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid portmode"; + } + enum "ethernet" { + value 1; + description + "Ethernet portmode type"; + } + enum "sonet" { + value 2; + description + "Sonet portmode type"; + } + enum "fc" { + value 3; + description + "FC portmode type"; + } + enum "otn" { + value 4; + description + "OTN portmode type"; + } + enum "sdh" { + value 5; + description + "SDH portmode type"; + } + enum "cpri" { + value 7; + description + "CPRI portmode type"; + } + } + description + "Port mode types"; + } + + typedef Cpri-data-rate { + type enumeration { + enum "2457" { + value 3; + description + "CPRI option 3 - 2457 Mbps"; + } + enum "3072" { + value 4; + description + "CPRI option 4 - 3072 Mbps"; + } + enum "4915" { + value 5; + description + "CPRI option 5 - 4915 Mbps"; + } + enum "6144" { + value 6; + description + "CPRI option 6 - 6144 Mbps"; + } + enum "9830" { + value 7; + description + "CPRI option 7 - 9830 Mbps"; + } + enum "10137" { + value 9; + description + "CPRI option 8 - 10137 Mbps"; + } + } + description + "Cpri data rate"; + } + + typedef Port-mode-framing { + type enumeration { + enum "none" { + value 0; + description + "No framing"; + } + enum "opu0" { + value 1; + description + "OPU0 framing"; + } + enum "opu1" { + value 2; + description + "OPU1 framing"; + } + enum "opu1e" { + value 3; + description + "OPU1e framing"; + } + enum "opu1f" { + value 4; + description + "OPU1f framing"; + } + enum "opu2" { + value 5; + description + "OPU2 framing"; + } + enum "opu2e" { + value 6; + description + "OPU2e framing"; + } + enum "opu2f" { + value 7; + description + "OPU2f framing"; + } + enum "opu3" { + value 8; + description + "OPU3 framing"; + } + enum "opu3e1" { + value 9; + description + "OPU3e1 framing"; + } + enum "opu3e2" { + value 10; + description + "OPU3e2 framing"; + } + enum "opu4" { + value 11; + description + "OPU4 framing"; + } + enum "opu-flex" { + value 12; + description + "OPUFlex framing"; + } + enum "opuc2" { + value 13; + description + "OPUC2 framing"; + } + enum "opuc4" { + value 14; + description + "OPUC4 framing"; + } + enum "packet" { + value 15; + description + "Packet framing"; + } + enum "cem-packetize" { + value 17; + description + "CEM packetization"; + } + } + description + "Port mode framing"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container port-mode { + description + "Portmode configuration"; + container lane-numbers { + description + "Breakout Configuration"; + list lane-number { + key "lane-no"; + description + "Lane number for breakout configuration"; + leaf lane-no { + type uint32 { + range "1..10"; + } + description + "LANE NO"; + } + leaf rate { + type Port-mode-rate; + description + "PortMode rate"; + } + leaf mapping { + type Port-mode-mapping; + description + "PortMode mapping types"; + } + leaf framing { + type Port-mode-framing; + description + "PortMode framing types"; + } + leaf type { + type Port-mode-types; + description + "PortMode types"; + } + } + } + container info { + description + "PortMode configuration"; + leaf rate { + type Port-mode-rate; + description + "PortMode rate"; + } + leaf mapping { + type Port-mode-mapping; + description + "PortMode mapping types"; + } + leaf framing { + type Port-mode-framing; + description + "PortMode framing types"; + } + leaf type { + type Port-mode-types; + description + "PortMode types"; + } + } + container cpri-info { + presence "Indicates a cpri-info node is configured."; + description + "CPRI PortMode configuration"; + leaf type { + type Port-mode-types; + description + "PortMode types"; + } + leaf cpri-role { + type Cpri-role; + mandatory true; + description + "CPRI Role"; + } + leaf-list cpri-rate { + type Cpri-data-rate; + max-elements "4"; + description + "Array of CPRI line rates"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-datatypes.yang new file mode 100644 index 000000000..217961bbb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-datatypes.yang @@ -0,0 +1,409 @@ +module Cisco-IOS-XR-portmode-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-portmode-datatypes"; + prefix portmode-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-01 { + description + "Removed enum none, 614mb, 1228mb, 8110mb, 12165mb and 24330mb from type Cpri-data-rate. Renamed enum 2457mb--2457, 3072mb--3072, 4915mb--4915, 6144mb--6144, 9830mb--9830 and 10137mb--10137 in type Cpri-data-rate."; + semver:module-version "2.0.0"; + } + revision 2019-12-06 { + description + "CPRI role/datarate-list parameters added."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Port-mode-mapping { + type enumeration { + enum "none" { + value 0; + description + "No mapping"; + } + enum "gfp-f" { + value 1; + description + "GFP_F mapping"; + } + enum "amp" { + value 2; + description + "AMP mapping"; + } + enum "bmp" { + value 3; + description + "BMP mapping"; + } + enum "gmp" { + value 4; + description + "GMP mapping"; + } + enum "wis" { + value 5; + description + "WIS mapping"; + } + enum "gfp-f-ext" { + value 6; + description + "GFP_F_EXT mapping"; + } + } + description + "Port mode mapping"; + } + + typedef Cpri-role { + type enumeration { + enum "slave" { + value 0; + description + "Slave"; + } + enum "master" { + value 1; + description + "Master"; + } + } + description + "Cpri role"; + } + + typedef Port-mode-rate { + type enumeration { + enum "none" { + value 0; + description + "No Rate"; + } + enum "oc3" { + value 1; + description + "OC3 Rate"; + } + enum "oc12" { + value 2; + description + "OC12 Rate"; + } + enum "oc48" { + value 3; + description + "OC48 Rate"; + } + enum "oc192" { + value 4; + description + "OC192 Rate"; + } + enum "oc768" { + value 5; + description + "OC768 Rate"; + } + enum "stm1" { + value 6; + description + "STM1 Rate"; + } + enum "stm4" { + value 7; + description + "STM4 Rate"; + } + enum "stm16" { + value 8; + description + "STM16 Rate"; + } + enum "stm64" { + value 9; + description + "STM64 Rate"; + } + enum "stm256" { + value 10; + description + "STM256 Rate"; + } + enum "100ge" { + value 11; + description + "100GE Rate"; + } + enum "10ge" { + value 12; + description + "10GE Rate"; + } + enum "40ge" { + value 13; + description + "40GE Rate"; + } + enum "1ge" { + value 14; + description + "1GE Rate"; + } + enum "25ge" { + value 15; + description + "25GE Rate"; + } + enum "otu2" { + value 16; + description + "OTU2 rate"; + } + enum "otu2e" { + value 17; + description + "OTU2E rate"; + } + enum "otu4" { + value 18; + description + "OTU4 rate"; + } + enum "fc1" { + value 19; + description + "FC1 rate"; + } + enum "fc2" { + value 20; + description + "FC2 rate"; + } + enum "fc4" { + value 21; + description + "FC4 rate"; + } + enum "fc8" { + value 22; + description + "FC8 rate"; + } + enum "fc16" { + value 23; + description + "FC16 rate"; + } + enum "fc32" { + value 24; + description + "FC32 rate"; + } + } + description + "Port mode rate"; + } + + typedef Port-mode-types { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid portmode"; + } + enum "ethernet" { + value 1; + description + "Ethernet portmode type"; + } + enum "sonet" { + value 2; + description + "Sonet portmode type"; + } + enum "fc" { + value 3; + description + "FC portmode type"; + } + enum "otn" { + value 4; + description + "OTN portmode type"; + } + enum "sdh" { + value 5; + description + "SDH portmode type"; + } + enum "cpri" { + value 7; + description + "CPRI portmode type"; + } + } + description + "Port mode types"; + } + + typedef Cpri-data-rate { + type enumeration { + enum "2457" { + value 3; + description + "CPRI option 3 - 2457 Mbps"; + } + enum "3072" { + value 4; + description + "CPRI option 4 - 3072 Mbps"; + } + enum "4915" { + value 5; + description + "CPRI option 5 - 4915 Mbps"; + } + enum "6144" { + value 6; + description + "CPRI option 6 - 6144 Mbps"; + } + enum "9830" { + value 7; + description + "CPRI option 7 - 9830 Mbps"; + } + enum "10137" { + value 9; + description + "CPRI option 8 - 10137 Mbps"; + } + } + description + "Cpri data rate"; + } + + typedef Port-mode-framing { + type enumeration { + enum "none" { + value 0; + description + "No framing"; + } + enum "opu0" { + value 1; + description + "OPU0 framing"; + } + enum "opu1" { + value 2; + description + "OPU1 framing"; + } + enum "opu1e" { + value 3; + description + "OPU1e framing"; + } + enum "opu1f" { + value 4; + description + "OPU1f framing"; + } + enum "opu2" { + value 5; + description + "OPU2 framing"; + } + enum "opu2e" { + value 6; + description + "OPU2e framing"; + } + enum "opu2f" { + value 7; + description + "OPU2f framing"; + } + enum "opu3" { + value 8; + description + "OPU3 framing"; + } + enum "opu3e1" { + value 9; + description + "OPU3e1 framing"; + } + enum "opu3e2" { + value 10; + description + "OPU3e2 framing"; + } + enum "opu4" { + value 11; + description + "OPU4 framing"; + } + enum "opu-flex" { + value 12; + description + "OPUFlex framing"; + } + enum "opuc2" { + value 13; + description + "OPUC2 framing"; + } + enum "opuc4" { + value 14; + description + "OPUC4 framing"; + } + enum "packet" { + value 15; + description + "Packet framing"; + } + enum "cem-packetize" { + value 17; + description + "CEM packetization"; + } + } + description + "Port mode framing"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper-sub1.yang new file mode 100644 index 000000000..dc6453ff4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper-sub1.yang @@ -0,0 +1,535 @@ +submodule Cisco-IOS-XR-portmode-oper-sub1 { + belongs-to Cisco-IOS-XR-portmode-oper { + prefix Cisco-IOS-XR-portmode-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR portmode package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-27 { + description + "New framing type cem-packetize is added."; + semver:module-version "2.0.0"; + } + revision 2020-04-03 { + description + "Portmode Oper Yang and Oper Sub-Yang Model added."; + semver:module-version "1.1.0"; + } + revision 2019-07-05 { + description + "Portmode Oper Yang and Oper Sub-Yang Model added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Port-mode-rate { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "port-mode-rate-oc3" { + value 1; + description + "OC3"; + } + enum "port-mode-rate-oc12" { + value 2; + description + "OC12"; + } + enum "port-mode-rate-oc48" { + value 3; + description + "OC48"; + } + enum "port-mode-rate-oc192" { + value 4; + description + "OC192"; + } + enum "port-mode-rate-oc768" { + value 5; + description + "OC768"; + } + enum "port-mode-rate-stm1" { + value 6; + description + "STM1"; + } + enum "port-mode-rate-stm4" { + value 7; + description + "STM4"; + } + enum "port-mode-rate-stm16" { + value 8; + description + "STM16"; + } + enum "port-mode-rate-stm64" { + value 9; + description + "STM64"; + } + enum "port-mode-rate-stm256" { + value 10; + description + "STM256"; + } + enum "port-mode-rate-100ge" { + value 11; + description + "100GE"; + } + enum "port-mode-rate-10ge" { + value 12; + description + "10GE"; + } + enum "port-mode-rate-40ge" { + value 13; + description + "40GE"; + } + enum "port-mode-rate-1ge" { + value 14; + description + "1GE"; + } + enum "port-mode-rate-25ge" { + value 15; + description + "25GE"; + } + enum "port-mode-rate-otu2" { + value 16; + description + "OTU2"; + } + enum "port-mode-rate-otu2e" { + value 17; + description + "OTU2E"; + } + enum "port-mode-rate-otu4" { + value 18; + description + "OTU4"; + } + enum "port-mode-rate-fc1" { + value 19; + description + "Fibre Channel 1G"; + } + enum "port-mode-rate-fc2" { + value 20; + description + "Fibre Channel 2G"; + } + enum "port-mode-rate-fc4" { + value 21; + description + "Fibre Channel 4G"; + } + enum "port-mode-rate-fc8" { + value 22; + description + "Fibre Channel 8G"; + } + enum "port-mode-rate-fc16" { + value 23; + description + "Fibre Channel 16G"; + } + enum "port-mode-rate-fc32" { + value 24; + description + "Fibre Channel 32G"; + } + } + description + "Port mode rate"; + } + + typedef Pt { + type enumeration { + enum "na" { + value 0; + description + "NA"; + } + enum "two-asynchronous-cbr-mapping" { + value 2; + description + "02 (Asynchronous CBR mapping)"; + } + enum "three-bit-synchronous-cbr-mapping" { + value 3; + description + "03 (Bit synchronous CBR mapping)"; + } + enum "five-gfp-mapping" { + value 5; + description + "05 (GFP mapping)"; + } + enum "six-virtual-concatenated-signal" { + value 6; + description + "06 (Virtual Concatenated Signal)"; + } + enum "seven-pc-scodeword-transparent-ethernet-mapping" { + value 7; + description + "07 (PCS codeword transparent Ethernet mapping)"; + } + enum "nine-gfp-mapping-into-opu2" { + value 9; + description + "09 (GFP mapping into OPU2)"; + } + enum "zero-astm1-mapping-into-opu0" { + value 10; + description + "0A (STM1 mapping into OPU0)"; + } + enum "zero-bstm4-mapping-into-opu0" { + value 11; + description + "0B (STM4 mapping into OPU0)"; + } + enum "twenty-odu-multiplex-structure-supporting-odt-ujk" { + value 32; + description + "20 (ODU multiplex structure supporting ODTUjk)"; + } + enum "twenty-one-odu-multiplex-structure-supporting-odt-ujk-and-odt-ukts" { + value 33; + description + "21 (ODU multiplex structure supporting ODTUjk + and ODTUk.ts)"; + } + enum "traffic-dependent" { + value 34; + description + "Traffic Dependent"; + } + } + description + "Pt"; + } + + typedef Mapping { + type enumeration { + enum "none" { + value 0; + description + "None mapping type"; + } + enum "gfp-f" { + value 1; + description + "GFP-F mapping type"; + } + enum "amp" { + value 2; + description + "AMP mapping type"; + } + enum "bmp" { + value 3; + description + "BMP mapping type"; + } + enum "gmp" { + value 4; + description + "GMP mapping type"; + } + enum "wis" { + value 5; + description + "WIS mapping type"; + } + enum "gfp-f-ext" { + value 6; + description + "GFP-F-Extended mapping type"; + } + } + description + "Mapping"; + } + + typedef Framing { + type enumeration { + enum "none" { + value 0; + description + "None framing type"; + } + enum "opu0" { + value 1; + description + "OPU0 framing type"; + } + enum "opu1" { + value 2; + description + "OPU1 framing type"; + } + enum "opu1e" { + value 3; + description + "OPU1e framing type"; + } + enum "opu1f" { + value 4; + description + "OPU1f framing type"; + } + enum "opu2" { + value 5; + description + "OPU2 framing type"; + } + enum "opu2e" { + value 6; + description + "OPU2e framing type"; + } + enum "opu2f" { + value 7; + description + "OPU2f framing type"; + } + enum "opu3" { + value 8; + description + "OPU3 framing type"; + } + enum "opu3e1" { + value 9; + description + "OPU3e1 framing type"; + } + enum "opu3e2" { + value 10; + description + "OPU3e2 framing type"; + } + enum "opu4" { + value 11; + description + "OPU4 framing type"; + } + enum "opu-flex" { + value 12; + description + "OPU Flex framing type"; + } + enum "opuc2" { + value 13; + description + "OPUC2 framing type"; + } + enum "opuc4" { + value 14; + description + "OPUC4 framing type"; + } + enum "packet" { + value 15; + description + "Packet framing type"; + } + enum "framing-wis" { + value 16; + description + "WIS framing type"; + } + enum "framing-cem" { + value 17; + description + "CEM framing Type"; + } + } + description + "Framing"; + } + + typedef Port-mode { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ethernet" { + value 1; + description + "Ethernet"; + } + enum "sonet" { + value 2; + description + "Sonet"; + } + enum "fibre-channel" { + value 3; + description + "Fibre Channel"; + } + enum "otn" { + value 4; + description + "OTN"; + } + enum "sdh" { + value 5; + description + "SDH"; + } + enum "ethernet-packet" { + value 6; + description + "Ethernet Packet"; + } + enum "cpri" { + value 7; + description + "CPRI"; + } + } + description + "Port mode"; + } + + grouping PORTMODE-CAPABILITY-DETAILS { + description + "PortMode Capability"; + leaf port-num { + type uint32; + description + "Port number"; + } + leaf port-mode-type { + type Port-mode; + description + "PortMode type"; + } + leaf framing { + type Framing; + description + "Framing type"; + } + leaf mapping { + type Mapping; + description + "Mapping type"; + } + leaf pt-type { + type Pt; + description + "Payload type"; + } + leaf port-mode-rate { + type Port-mode-rate; + description + "Portmode Rate"; + } + } + + grouping PORTMODE-CAPABILITY-ALL { + description + "PortMode Capability All"; + list port-mode { + description + "PortMode"; + uses PORTMODE-CAPABILITY-DETAILS; + } + } + + grouping PORTMODE-DETAILS-ALL { + description + "PortMode All"; + list port-mode { + description + "PortMode"; + uses PORTMODE-DETAILS; + } + } + + grouping PORTMODE-DETAILS { + description + "PortMode"; + leaf port-num { + type uint32; + description + "Port number"; + } + leaf port-mode-type { + type Port-mode; + description + "PortMode type"; + } + leaf framing { + type Framing; + description + "Framing type"; + } + leaf mapping { + type Mapping; + description + "Mapping type"; + } + leaf pt-type { + type Pt; + description + "Payload type"; + } + leaf port-mode-rate { + type Port-mode-rate; + description + "Portmode Rate"; + } + leaf port-name { + type string { + length "0..65"; + } + description + "Interface Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper.yang new file mode 100644 index 000000000..69f3fe256 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-portmode-oper.yang @@ -0,0 +1,96 @@ +module Cisco-IOS-XR-portmode-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-portmode-oper"; + prefix portmode-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-portmode-oper-sub1 { + revision-date 2020-10-27; + } + + 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 portmode package operational data. + + This module contains definitions + for the following management objects: + port-mode: PortMode operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-27 { + description + "New framing type cem-packetize is added."; + semver:module-version "2.0.0"; + } + revision 2020-04-03 { + description + "Portmode Oper Yang and Oper Sub-Yang Model added."; + semver:module-version "1.1.0"; + } + revision 2019-07-05 { + description + "Portmode Oper Yang and Oper Sub-Yang Model added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container port-mode { + config false; + description + "PortMode operational data"; + container controllers { + description + "All PortMode Port operational data"; + list controller { + key "controller-name"; + description + "PortMode Port operational data"; + container portmode-info { + description + "PortMode operational data"; + uses PORTMODE-DETAILS; + } + container portmode-info-all { + description + "PortMode operational data"; + uses PORTMODE-DETAILS-ALL; + } + container capability-info { + description + "PortMode operational data"; + uses PORTMODE-CAPABILITY-ALL; + } + leaf controller-name { + type xr:Cisco-ios-xr-string; + description + "Port name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper-sub1.yang new file mode 100644 index 000000000..1b181050b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper-sub1.yang @@ -0,0 +1,233 @@ +submodule Cisco-IOS-XR-ppp-ea-oper-sub1 { + belongs-to Cisco-IOS-XR-ppp-ea-oper { + prefix Cisco-IOS-XR-ppp-ea-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ppp-ea package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ppp-ea-adj-state { + type enumeration { + enum "ppp-ea-adj-state-not-installed" { + value 0; + description + "Ajacency not installed in AIB"; + } + enum "ppp-ea-adj-state-installed" { + value 1; + description + "Adjacency installed in AIB"; + } + } + description + "Ppp ea adj state"; + } + + grouping PPP-EA-INTERFACE-INFO { + description + "PPP EA interface information"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf is-lcp-running { + type boolean; + description + "TRUE if LCP is running in the dataplane for the + interface"; + } + leaf is-ipcp-running { + type boolean; + description + "TRUE if IPCP is running in the dataplane for the + interface"; + } + leaf is-ipv6cp-running { + type boolean; + description + "TRUE if IPV6CP is running in the dataplane for + the interface"; + } + leaf is-mplscp-running { + type boolean; + description + "TRUE if MPLSCP is running in the dataplane for + the interface"; + } + leaf local-mtu { + type uint16; + description + "Local interface MTU"; + } + leaf local-mrru { + type uint16; + description + "Local MRRU"; + } + leaf peer-mrru { + type uint16; + description + "Peer MRRU"; + } + leaf local-magic { + type uint32; + description + "Local magic number"; + } + leaf peer-magic { + type uint32; + description + "Peer magic number"; + } + leaf local-mcmp-classes { + type uint8; + description + "Local number of MCMP Suspension classes"; + } + leaf peer-mcmp-classes { + type uint8; + description + "Peer number of MCMP Suspension classes"; + } + leaf echo-request-interval { + type uint32; + description + "Echo-Request interval"; + } + leaf echo-request-retry-count { + type uint32; + description + "Echo-Request retry count"; + } + leaf is-multilink-bundle { + type boolean; + description + "TRUE if this is a Multilink bundle interface"; + } + leaf synchronized { + type boolean; + description + "MA synchronization"; + } + leaf forwarding-enabled { + type boolean; + description + "Forwarding State"; + } + leaf multilink-interface { + type xr:Interface-name; + description + "Multilink interface that this interface is a + member of, if any"; + } + leaf l2-tunnel-enabled { + type boolean; + description + "L2 Tunnel State"; + } + leaf l2-provisioned { + type boolean; + description + "L2 Provisioned State"; + } + leaf l2ip-interworking-enabled { + type boolean; + description + "L2 IP Interworking State"; + } + leaf is-vpdn-tunneled { + type boolean; + description + "Is VPDN tunneled"; + } + leaf xconnect-id { + type uint32; + description + "XConnect ID"; + } + leaf parent-interface-handle { + type xr:Interface-name; + description + "Parent Interface Handle"; + } + leaf vrf-table-id { + type uint32; + description + "IPCP VRF Table ID"; + } + leaf ipv6vrf-table-id { + type uint32; + description + "IPv6CP VRF Table ID"; + } + leaf l2-adjacency-state { + type Ppp-ea-adj-state; + description + "L2 adjacency state"; + } + leaf l2ip-interworking-adjacency-state { + type Ppp-ea-adj-state; + description + "L2 IP Interworking adjacency state"; + } + leaf lac-adjacency-state { + type Ppp-ea-adj-state; + description + "LAC adjacency state"; + } + leaf interface-adjacency-state { + type Ppp-ea-adj-state; + description + "Interface adjacency state"; + } + leaf ipv4-adjacency-state { + type Ppp-ea-adj-state; + description + "Ipv4 adjacency state"; + } + leaf ipv6-adjacency-state { + type Ppp-ea-adj-state; + description + "IPv6 adjacency state"; + } + leaf mpls-adjacency-state { + type Ppp-ea-adj-state; + description + "MPLS adjacency state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper.yang new file mode 100644 index 000000000..6123e2c9a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ea-oper.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-ppp-ea-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ea-oper"; + prefix ppp-ea-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ppp-ea-oper-sub1 { + revision-date 2019-04-05; + } + + 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 ppp-ea package operational data. + + This module contains definitions + for the following management objects: + pppea: PPPEA operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container pppea { + config false; + description + "PPPEA operational data"; + container nodes { + description + "Per node PPPEA operational data"; + list node { + key "node-name"; + description + "The PPPEA operational data for a particular + node"; + container ea-interface-names { + description + "Show interface related information from the + PPP EA"; + list ea-interface-name { + key "interface-name"; + description + "Interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface running PPPEA"; + } + uses PPP-EA-INTERFACE-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-cfg.yang new file mode 100644 index 000000000..a47ec066c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-cfg.yang @@ -0,0 +1,54 @@ +module Cisco-IOS-XR-ppp-ma-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-cfg"; + prefix ppp-ma-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ppp-ma package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ppp { + description + "Interface PPP configuration data"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-fsm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-fsm-cfg.yang new file mode 100644 index 000000000..587b0e1cd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-fsm-cfg.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-ppp-ma-fsm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-fsm-cfg"; + prefix ppp-ma-fsm-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ppp-ma-fsm package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ppp { + description + "Interface PPP configuration data"; + container fsm { + description + "PPP FSM configuration data"; + leaf retry-timeout { + type uint32 { + range "1..10"; + } + default "3"; + description + "This specifies the maximum time to wait for a + response during PPP negotiation"; + } + leaf max-unacknowledged-term-requests { + type uint32 { + range "2..10"; + } + default "2"; + description + "This specifies the maximum number of + Term-Requests"; + } + leaf max-consecutive-conf-naks { + type uint32 { + range "2..10"; + } + default "5"; + description + "This specifies the maximum number of + consecutive Conf-Naks"; + } + leaf max-unacknowledged-conf-requests { + type uint32 { + range "4..20"; + } + default "10"; + description + "This specifies the maximum number of + unacknowledged Conf-Requests"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-gbl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-gbl-cfg.yang new file mode 100644 index 000000000..094aff22a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-gbl-cfg.yang @@ -0,0 +1,382 @@ +module Cisco-IOS-XR-ppp-ma-gbl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-gbl-cfg"; + prefix ppp-ma-gbl-cfg; + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 ppp-ma-gbl package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-11-05 { + description + "Corrected boolean values in when statements."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ppp-authentication-method-gbl { + type enumeration { + enum "pap" { + value 1; + description + "PAP"; + } + enum "chap" { + value 2; + description + "CHAP"; + } + enum "ms-chap" { + value 3; + description + "MS CHAP"; + } + } + description + "Ppp authentication method gbl"; + } + + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + container ppp-template { + description + "PPP template configuration data"; + container fsm { + description + "PPP FSM global template configuration data"; + leaf max-consecutive-conf-naks { + type uint32 { + range "2..10"; + } + default "5"; + description + "This specifies the maximum number of + consecutive Conf-Naks"; + } + leaf max-unacknowledged-conf-requests { + type uint32 { + range "4..20"; + } + default "10"; + description + "This specifies the maximum number of + unacknowledged Conf-Requests"; + } + leaf retry-timeout { + type uint32 { + range "1..10"; + } + default "3"; + description + "This specifies the maximum time to wait for a + response during PPP negotiation"; + } + leaf protocol-reject-timeout { + type uint32 { + range "1..60"; + } + default "60"; + description + "This specifies the maximum time to wait before + sending Protocol Reject"; + } + } + container lcp { + description + "PPP LCP global template configuration data"; + container absolute-timeout { + description + "This specifies the session absolute timeout + value"; + leaf minutes { + type uint32 { + range "0..35000000"; + } + description + "Minutes"; + } + leaf seconds { + type uint32 { + range "0..59"; + } + description + "Seconds"; + } + } + container delay { + description + "This specifies the time to delay before + starting active LCPnegotiations"; + leaf seconds { + type uint32 { + range "0..255"; + } + description + "Seconds"; + } + leaf milliseconds { + type uint32 { + range "0..999"; + } + description + "Milliseconds"; + } + } + container authentication { + description + "PPP authentication parameters"; + container methods { + description + "This specifies the PPP link authentication + method"; + leaf-list method { + type Ppp-authentication-method-gbl; + max-elements "3"; + description + "Select between one and three authentication + methods in order of preference"; + } + } + leaf chap-host-name { + type string; + description + "This specifies the CHAP hostname"; + } + leaf pap { + type uint32; + description + "<1> for accepting null-passwordduring + authentication"; + } + leaf mschap-host-name { + type string; + description + "This specifies the MS-CHAP hostname"; + } + leaf max-authentication-failures { + type uint32 { + range "0..10"; + } + description + "This specifies whether to allow multiple + authentication failures and, if so, how many"; + } + leaf timeout { + type uint32 { + range "3..30"; + } + default "10"; + description + "Maximum time to wait for an authentication + response"; + } + } + container keepalive { + description + "This specifies the rate at which EchoReq + packets are sent"; + leaf keepalive-disable { + type boolean; + description + "TRUE to disable keepalives, FALSE to specify + a new keepalive interval"; + } + leaf interval { + when "../keepalive-disable = 'false'" { + description + "../KeepaliveDisable = 'false'"; + } + type uint32 { + range "10..180"; + } + description + "The keepalive interval. Leave unspecified + when disabling keepalives"; + } + leaf retry-count { + when "../keepalive-disable = 'false'" { + description + "../KeepaliveDisable = 'false'"; + } + type uint32 { + range "1..255"; + } + description + "The keepalive retry count. Leave unspecified + when disabling keepalives"; + } + } + leaf renegotiation { + type empty; + description + "Specify whether to ignore attempts to + renegotiate LCP"; + } + leaf service-type { + type uint32 { + range "0..15"; + } + default "0"; + description + "This is the Service-Type"; + } + leaf send-term-request-on-shut-down { + type empty; + description + "Enable Sending LCP Terminate request on + shutdown"; + } + leaf mru-ignore { + type empty; + description + "Ignore MRU negotiated with peer while setting + interface BW"; + } + } + container ipv6cp { + description + "PPP IPv6CP global template configuration data"; + leaf passive { + type empty; + description + "Specify whether to run IPv6CP in Passive mode"; + } + leaf renegotiation { + type empty; + description + "Specify whether to ignore attempts to + renegotiate IPv6CP"; + } + leaf peer-interface-id { + type string; + description + "Specify the Interface-Id to impose on the peer"; + } + leaf protocol-reject { + type empty; + description + "Specify whether to protocol reject IPv6CP"; + } + } + container ipcp { + description + "PPP IPCP global template configuration data"; + container wins { + description + "IPCP WINS parameters"; + container wins-addresses { + description + "Specify WINS address(es) to provide"; + leaf primary { + type inet:ipv4-address-no-zone; + description + "Primary WINS IP address"; + } + leaf secondary { + type inet:ipv4-address-no-zone; + description + "Secondary WINS IP address"; + } + } + } + container dns { + description + "IPCP DNS parameters"; + container dns-addresses { + description + "Specify DNS address(es) to provide"; + leaf primary { + type inet:ipv4-address-no-zone; + description + "Primary DNS IP address"; + } + leaf secondary { + type inet:ipv4-address-no-zone; + description + "Secondary DNS IP address"; + } + } + } + container peer-address { + description + "IPCP address parameters"; + leaf default { + type inet:ipv4-address-no-zone; + description + "Specify an IP address to assign to peers + through IPCP"; + } + leaf pool { + type string; + description + "Accepts an IP address from the peer if in the + pool, else allocates one from the pool"; + } + } + leaf renegotiation { + type empty; + description + "Specify whether to ignore attempts to + renegotiate IPCP"; + } + leaf passive { + type empty; + description + "Specify whether to run IPCP in Passive mode"; + } + leaf protocol-reject { + type empty; + description + "Specify whether to protocol reject IPCP"; + } + leaf peer-netmask { + type inet:ipv4-address-no-zone; + description + "Specify the IPv4 netmask to negotiate for the + peer"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcp-cfg.yang new file mode 100644 index 000000000..3ee8dd1bc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcp-cfg.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-ppp-ma-ipcp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-ipcp-cfg"; + prefix ppp-ma-ipcp-cfg; + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ppp-ma-ipcp package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ppp { + description + "Interface PPP configuration data"; + container ipcp { + description + "PPP IPCP configuration data"; + container peer-address { + description + "IPCP address parameters"; + leaf default { + type inet:ipv4-address-no-zone; + description + "Specify an IP address to assign to peers + through IPCP"; + } + } + container dns { + description + "IPCP DNS parameters"; + container dns-addresses { + description + "Specify DNS address(es) to provide"; + leaf primary { + type inet:ipv4-address-no-zone; + description + "Primary DNS IP address"; + } + leaf secondary { + type inet:ipv4-address-no-zone; + description + "Secondary DNS IP address"; + } + } + } + leaf neighbor-route-disable { + type empty; + description + "Disable Neighbor Route installation"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcpiw-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcpiw-cfg.yang new file mode 100644 index 000000000..16bb229e9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ipcpiw-cfg.yang @@ -0,0 +1,67 @@ +module Cisco-IOS-XR-ppp-ma-ipcpiw-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-ipcpiw-cfg"; + prefix ppp-ma-ipcpiw-cfg; + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ppp-ma-ipcpiw package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ppp { + description + "Interface PPP configuration data"; + container ipcpiw { + description + "PPP IPCPIW configuration data"; + leaf proxy-address { + type inet:ipv4-address-no-zone; + description + "Specify an IP address to publish to peers + through IPCPIW"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-lcp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-lcp-cfg.yang new file mode 100644 index 000000000..218c622c8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-lcp-cfg.yang @@ -0,0 +1,265 @@ +module Cisco-IOS-XR-ppp-ma-lcp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-lcp-cfg"; + prefix ppp-ma-lcp-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ppp-ma-lcp package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ppp-authentication-method { + type enumeration { + enum "pap" { + value 1; + description + "PAP"; + } + enum "chap" { + value 2; + description + "CHAP"; + } + enum "ms-chap" { + value 3; + description + "MS CHAP"; + } + } + description + "Ppp authentication method"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ppp { + description + "Interface PPP configuration data"; + container mcmp { + description + "PPP Multiclass Multilink parameters"; + container local { + description + "This specifies the MCMP options for the local + host"; + leaf initial { + type uint32 { + range "1..16"; + } + default "2"; + description + "Local Initial #classes"; + } + leaf maximum { + type uint32 { + range "1..16"; + } + default "4"; + description + "Local Maximum #classes"; + } + } + leaf enable { + type empty; + description + "This specifies that MCMP is enabled on this + interface"; + } + leaf remote { + type uint32 { + range "1..16"; + } + default "2"; + description + "This specifies the MCMP options for the peer"; + } + } + container lcp { + description + "PPP LCP configuration data"; + container multilink { + description + "Multilink configuration"; + container minimum-active { + description + "Minimum criteria for the linestate of a + Multilink PPPinterface to be brought up"; + leaf links { + type uint32 { + range "1..65535"; + } + default "1"; + description + "Number of active links needed to bring up an + MP interface"; + } + } + } + container pap { + description + "Password Authentication Protocol (PAP) + configuration data"; + container send-user-info { + description + "This specifies the outbound PAP username and + password"; + leaf username { + type string; + description + "Outbound PAP username"; + } + leaf password { + type xr:Proprietary-password; + description + "Outbound PAP password"; + } + } + leaf refuse { + type empty; + description + "This specifies whether to refuse to + authenticate using PAP"; + } + } + container loop-back { + description + "Loopback configuration"; + leaf ignore { + type empty; + description + "Allow magic numbers to be equal"; + } + } + container ms-chap { + description + "Microsoft Challenge Handshake Authentication + Protocol (MS-CHAP) configuration data"; + leaf password { + type xr:Proprietary-password; + description + "This specifies the default MS-CHAP password"; + } + leaf host-name { + type string; + description + "This specifies the MS-CHAP hostname"; + } + leaf refuse { + type empty; + description + "This specifies whether to refuse to + authenticate using MS-CHAP"; + } + } + container authentication { + description + "PPP authentication parameters"; + container method { + description + "This specifies the PPP link authentication + method"; + leaf name { + type string; + description + "Use an authentication list with this name"; + } + leaf-list method { + type Ppp-authentication-method; + max-elements "3"; + description + "Select between one and three authentication + methods in order of preference"; + } + } + leaf max-authentication-failures { + type uint32 { + range "0..10"; + } + description + "This specifies whether to allow multiple + authentication failures and, if so, how many"; + } + leaf timeout { + type uint32 { + range "3..30"; + } + default "10"; + description + "Maximum time to wait for an authentication + response"; + } + } + container chap { + description + "Challenge Handshake Authentication Protocol + (CHAP) configuration data"; + leaf password { + type xr:Proprietary-password; + description + "This specifies the default CHAP password"; + } + leaf host-name { + type string; + description + "This specifies the CHAP hostname"; + } + leaf refuse { + type empty; + description + "This specifies whether to refuse to + authenticate using CHAP"; + } + } + leaf service-type { + type uint32; + description + "This specifies whether to allow multiple + authentication failures and, if so, how many"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub1.yang new file mode 100644 index 000000000..b9ec668ee --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub1.yang @@ -0,0 +1,199 @@ +submodule Cisco-IOS-XR-ppp-ma-oper-sub1 { + belongs-to Cisco-IOS-XR-ppp-ma-oper { + prefix Cisco-IOS-XR-ppp-ma-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ppp-ma-oper-sub2 { + revision-date 2021-06-15; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ppp-ma package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-15 { + description + "Added new elements in ppp oper idump bag."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PPP-OPER-SUMMARY-LCP-AUTH-PHASES { + description + "Summary of sessions in each LCP/Auth Phase"; + leaf lcp-not-negotiated { + type uint32; + description + "Number of sessions with LCP not negotiated"; + } + leaf authenticating { + type uint32; + description + "Number of sessions authenticating"; + } + leaf line-held-down { + type uint32; + description + "Number of sessions negotiated but with the line + held down"; + } + leaf up-local-term { + type uint32; + description + "Number of locally terminated sessions brought up"; + } + leaf up-l2-fwded { + type uint32; + description + "Number of L2 forwarded sessions brought up"; + } + leaf up-tunneled { + type uint32; + description + "Number of VPDN tunneled sessions brought up"; + } + } + + grouping PPP-OPER-SUMMARY-FSM-STATES-NCP { + description + "Summary of FSM States for a given NCP"; + leaf ncp-identifier { + type Ncp-ident; + description + "NCP Identifier"; + } + leaf total { + type uint32; + description + "Total number of FSMs running for this NCP"; + } + leaf-list count { + type uint32; + max-elements "10"; + description + "Number of FSMs in each State"; + } + } + + grouping PPP-OPER-SUMMARY-FSM-STATES-LCP { + description + "Summary of FSM States for LCP"; + leaf total { + type uint32; + description + "Total number of LCP FSMs running"; + } + leaf-list count { + type uint32; + max-elements "10"; + description + "Number of FSMs in each State"; + } + } + + grouping PPP-OPER-SUMMARY-FSM-STATES { + description + "Summary of sessions in each FSM State"; + container lcpfsm-states { + description + "Array of per-LCP FSM States"; + uses PPP-OPER-SUMMARY-FSM-STATES-LCP; + } + list ncpfsm-states-array { + description + "Array of per-NCP FSM States"; + uses PPP-OPER-SUMMARY-FSM-STATES-NCP; + } + } + + grouping PPP-OPER-SUMMARY-INTFS { + description + "Interfaces running PPP"; + leaf pos-count { + type uint32; + description + "POS Count"; + } + leaf serial-count { + type uint32; + description + "Serial Count"; + } + leaf pppoe-count { + type uint32; + description + "PPPoE Count"; + } + leaf multilink-bundle-count { + type uint32; + description + "Multilink Bundle Count"; + } + leaf gcc0-count { + type uint32; + description + "GCC0 Count"; + } + leaf gcc1-count { + type uint32; + description + "GCC1 Count"; + } + leaf gcc2-count { + type uint32; + description + "GCC2 Count"; + } + leaf total { + type uint32; + description + "Total Count"; + } + } + + grouping PPP-OPER-SUMMARY { + description + "PPP Summary"; + container intfs { + description + "Interfaces running PPP"; + uses PPP-OPER-SUMMARY-INTFS; + } + container fsm-states { + description + "FSM States"; + uses PPP-OPER-SUMMARY-FSM-STATES; + } + container lcp-auth-phases { + description + "LCP/Auth Phases"; + uses PPP-OPER-SUMMARY-LCP-AUTH-PHASES; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub2.yang new file mode 100644 index 000000000..02da96230 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub2.yang @@ -0,0 +1,392 @@ +submodule Cisco-IOS-XR-ppp-ma-oper-sub2 { + belongs-to Cisco-IOS-XR-ppp-ma-oper { + prefix Cisco-IOS-XR-ppp-ma-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ppp-ma package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-15 { + description + "Added new elements in ppp oper idump bag."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ppp-lcp-mp-mbr-state { + type enumeration { + enum "ppp-lcp-mp-mbr-state-detached" { + description + "Detached member"; + } + enum "ppp-lcp-mp-mbr-state-lcp-not-negotiated" { + description + "LCP has not been negotiated"; + } + enum "ppp-lcp-mp-mbr-state-link-noise" { + description + "Link Noise detected"; + } + enum "ppp-lcp-mp-mbr-state-bundle-shutdown" { + description + "Multilink Bundle is shutdown"; + } + enum "ppp-lcp-mp-mbr-state-mrru-rejected" { + description + "MRRU has been rejected"; + } + enum "ppp-lcp-mp-mbr-state-mrru-mismatch" { + description + "MRRU mismatch"; + } + enum "ppp-lcp-mp-mbr-state-ed-mismatch" { + description + "ED mismatch"; + } + enum "ppp-lcp-mp-mbr-state-auth-name-mismatch" { + description + "Authenticated name mismatch"; + } + enum "ppp-lcp-mp-mbr-state-mcmp-rejected" { + description + "MCMP option rejected by peer"; + } + enum "ppp-lcp-mp-mbr-state-mcmp-not-negotiated" { + description + "MCMP option not negotiated"; + } + enum "ppp-lcp-mp-mbr-state-mcmp-local-mismatch" { + description + "Local MCMP class mismatch"; + } + enum "ppp-lcp-mp-mbr-state-mcmp-peer-mismatch" { + description + "Peer MCMP class mismatch"; + } + enum "ppp-lcp-mp-mbr-state-standby-up" { + description + "SSO Standby up"; + } + enum "ppp-lcp-mp-mbr-state-active" { + description + "Active member"; + } + } + description + "MP member states"; + } + + typedef Ppp-sso-fsm-state { + type enumeration { + enum "ppp-sso-state-not-ready-0" { + value 0; + description + "Not ready"; + } + enum "ppp-sso-state-standby-unnegd-1" { + value 1; + description + "S UnNegd"; + } + enum "ppp-sso-state-active-down-2" { + value 2; + description + "A Down"; + } + enum "ppp-sso-state-deactivating-3" { + value 3; + description + "Deactivating"; + } + enum "ppp-sso-state-active-unnegd-4" { + value 4; + description + "A UnNegd"; + } + enum "ppp-sso-state-standby-negd-5" { + value 5; + description + "S Negd"; + } + enum "ppp-sso-state-activating-6" { + value 6; + description + "Activating"; + } + enum "ppp-sso-state-active-negd-7" { + value 7; + description + "A Negd"; + } + } + description + "Ppp sso fsm state"; + } + + typedef Ppp-fsm-state { + type enumeration { + enum "ppp-fsm-state-initial-0" { + value 0; + description + "Connection Idle"; + } + enum "ppp-fsm-state-starting-1" { + value 1; + description + "This layer required, but lower layer down"; + } + enum "ppp-fsm-state-closed-2" { + value 2; + description + "Lower layer up, but this layer not required"; + } + enum "ppp-fsm-state-stopped-3" { + value 3; + description + "Listening for a Config Request"; + } + enum "ppp-fsm-state-closing-4" { + value 4; + description + "Shutting down due to local change"; + } + enum "ppp-fsm-state-stopping-5" { + value 5; + description + "Shutting down due to peer's actions"; + } + enum "ppp-fsm-state-req-sent-6" { + value 6; + description + "Config Request Sent"; + } + enum "ppp-fsm-state-ack-rcvd-7" { + value 7; + description + "Config Ack Received"; + } + enum "ppp-fsm-state-ack-sent-8" { + value 8; + description + "Config Ack Sent"; + } + enum "ppp-fsm-state-opened-9" { + value 9; + description + "Connection Open"; + } + } + description + "Ppp fsm state"; + } + + typedef Im-state { + type uint32; + description + "Im state"; + } + + typedef Ncp-ident { + type enumeration { + enum "cdpcp" { + value 1; + description + "CDP control protocol"; + } + enum "ipcp" { + value 2; + description + "IPv4 control protocol"; + } + enum "ipcpiw" { + value 3; + description + "IPv4 Interworking control protocol"; + } + enum "ipv6cp" { + value 4; + description + "IPv6 control protocol"; + } + enum "mplscp" { + value 5; + description + "MPLS control protocol"; + } + enum "osicp" { + value 6; + description + "OSI (CLNS) control protocol"; + } + } + description + "Ncp ident"; + } + + grouping PPP-OPER-SSO-FSM-STATE { + description + "PPP SSO FSM State"; + leaf is-running { + type boolean; + description + "Is SSO FSM Running"; + } + leaf state { + type Ppp-sso-fsm-state; + description + "SSO FSM State"; + } + } + + grouping PPP-OPER-SSO-STATE { + description + "PPP SSO State"; + container lcp-state { + description + "LCP SSO State"; + uses PPP-OPER-SSO-FSM-STATE; + } + container of-us-auth-state { + description + "Of-us Authentication SSO State"; + uses PPP-OPER-SSO-FSM-STATE; + } + container of-peer-auth-state { + description + "Of-peer Authentication SSO State"; + uses PPP-OPER-SSO-FSM-STATE; + } + container ipcp-state { + description + "IPCP SSO State"; + uses PPP-OPER-SSO-FSM-STATE; + } + leaf session-id-xr { + type uint32; + description + "SSRP Session ID"; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + } + + grouping PPP-OPER-SSO-SUMMARY-STATES { + description + "Summary of SSO FSM States"; + leaf total { + type uint16; + description + "Total number of SSO FSMs running"; + } + leaf-list count { + type uint16; + max-elements "8"; + description + "Number of SSO FSMs in each State"; + } + } + + grouping PPP-OPER-SSO-SUMMARY { + description + "PPP SSO Summary information"; + container lcp-states { + description + "LCP SSO FSM States"; + uses PPP-OPER-SSO-SUMMARY-STATES; + } + container of-us-auth-states { + description + "Of-us Authentication SSO FSM States"; + uses PPP-OPER-SSO-SUMMARY-STATES; + } + container of-peer-auth-states { + description + "Of-peer Authentication SSO FSM States"; + uses PPP-OPER-SSO-SUMMARY-STATES; + } + container ipcp-states { + description + "IPCP SSO FSM States"; + uses PPP-OPER-SSO-SUMMARY-STATES; + } + } + + grouping PPP-OPER-SSO-ERROR { + description + "PPP SSO Error"; + leaf is-error { + type boolean; + description + "Is SSO Error"; + } + leaf error { + type uint32; + description + "SSO Error"; + } + leaf context { + type uint32; + description + "Context"; + } + } + + grouping PPP-OPER-SSO-ALERTS { + description + "PPP SSO Alerts information"; + container lcp-error { + description + "LCP SSO Error"; + uses PPP-OPER-SSO-ERROR; + } + container of-us-auth-error { + description + "Of-us Authentication SSO Error"; + uses PPP-OPER-SSO-ERROR; + } + container of-peer-auth-error { + description + "Of-peer Authentication SSO Error"; + uses PPP-OPER-SSO-ERROR; + } + container ipcp-error { + description + "IPCP SSO Error"; + uses PPP-OPER-SSO-ERROR; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub3.yang new file mode 100644 index 000000000..477b9d9bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub3.yang @@ -0,0 +1,586 @@ +submodule Cisco-IOS-XR-ppp-ma-oper-sub3 { + belongs-to Cisco-IOS-XR-ppp-ma-oper { + prefix Cisco-IOS-XR-ppp-ma-oper; + } + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ppp-ma-oper-sub2 { + revision-date 2021-06-15; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ppp-ma package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-15 { + description + "Added new elements in ppp oper idump bag."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PPP-OPER-NCP-STATS-INTERFACE { + description + "PPP per-interface NCP statistics"; + leaf ncp-identifier { + type Ncp-ident; + description + "NCP identifier"; + } + leaf conf-req-sent { + type uint16; + description + "Conf Req Packets Sent"; + } + leaf conf-req-rcvd { + type uint16; + description + "Conf Req Packets Received"; + } + leaf conf-ack-sent { + type uint16; + description + "Conf Ack Packets Sent"; + } + leaf conf-ack-rcvd { + type uint16; + description + "Conf Ack Packets Received"; + } + leaf conf-nak-sent { + type uint16; + description + "Conf Nak Packets Sent"; + } + leaf conf-nak-rcvd { + type uint16; + description + "Conf Nak Packets Received"; + } + leaf conf-rej-sent { + type uint16; + description + "Conf Rej Packets Sent"; + } + leaf conf-rej-rcvd { + type uint16; + description + "Conf Rej Packets Received"; + } + } + + grouping PPP-OPER-AUTH-STATS-INTERFACE { + description + "PPP Authentication statistics"; + leaf pap-req-sent { + type uint16; + description + "PAP Request packets sent"; + } + leaf pap-req-rcvd { + type uint16; + description + "PAP Request packets received"; + } + leaf pap-ack-sent { + type uint16; + description + "PAP Ack packets sent"; + } + leaf pap-ack-rcvd { + type uint16; + description + "PAP Ack packets received"; + } + leaf pap-nak-sent { + type uint16; + description + "PAP Nak packets sent"; + } + leaf pap-nak-rcvd { + type uint16; + description + "PAP Nak packets received"; + } + leaf chap-chall-sent { + type uint16; + description + "CHAP challenge packets sent"; + } + leaf chap-chall-rcvd { + type uint16; + description + "CHAP challenge packets received"; + } + leaf chap-resp-sent { + type uint16; + description + "CHAP response packets sent"; + } + leaf chap-resp-rcvd { + type uint16; + description + "CHAP response packets received"; + } + leaf chap-rep-succ-sent { + type uint16; + description + "CHAP reply success packets sent"; + } + leaf chap-rep-succ-rcvd { + type uint16; + description + "CHAP reply success packets received"; + } + leaf chap-rep-fail-sent { + type uint16; + description + "CHAP reply failure packets sent"; + } + leaf chap-rep-fail-rcvd { + type uint16; + description + "CHAP reply failure packets received"; + } + leaf auth-timeout-count { + type uint16; + description + "Authentication timeout count"; + } + } + + grouping PPP-OPER-LCP-STATS-INTERFACE { + description + "PPP per-interface LCP statistics"; + leaf conf-req-sent { + type uint16; + description + "Conf Req Packets Sent"; + } + leaf conf-req-rcvd { + type uint16; + description + "Conf Req Packets Received"; + } + leaf conf-ack-sent { + type uint16; + description + "Conf Ack Packets Sent"; + } + leaf conf-ack-rcvd { + type uint16; + description + "Conf Ack Packets Received"; + } + leaf conf-nak-sent { + type uint16; + description + "Conf Nak Packets Sent"; + } + leaf conf-nak-rcvd { + type uint16; + description + "Conf Nak Packets Received"; + } + leaf conf-rej-sent { + type uint16; + description + "Conf Rej Packets Sent"; + } + leaf conf-rej-rcvd { + type uint16; + description + "Conf Rej Packets Received"; + } + leaf echo-req-sent { + type uint16; + description + "Echo Req Packets Sent"; + } + leaf echo-req-rcvd { + type uint16; + description + "Echo Req Packets Received"; + } + leaf echo-rep-sent { + type uint16; + description + "Echo Rep Packets Sent"; + } + leaf echo-rep-rcvd { + type uint16; + description + "Echo Rep Packets Received"; + } + leaf disc-req-sent { + type uint16; + description + "Disc Req Packets Sent"; + } + leaf disc-req-rcvd { + type uint16; + description + "Disc Req Packets Received"; + } + leaf link-up { + type uint16; + description + "Line Protocol Up count"; + } + leaf link-error { + type uint16; + description + "Keepalive link failure count"; + } + } + + grouping PPP-OPER-STATS-INTERFACE { + description + "PPP interface statistics information"; + container lcp-statistics { + description + "PPP LCP Statistics"; + uses PPP-OPER-LCP-STATS-INTERFACE; + } + container authentication-statistics { + description + "PPP Authentication statistics"; + uses PPP-OPER-AUTH-STATS-INTERFACE; + } + list ncp-statistics-array { + description + "Array of PPP NCP Statistics"; + uses PPP-OPER-NCP-STATS-INTERFACE; + } + } + + grouping PPP-OPER-NCP-STATS-GLOBAL { + description + "PPP Global NCP Statistics"; + leaf ncp-identifier { + type Ncp-ident; + description + "NCP identifier"; + } + leaf conf-req-sent { + type uint64; + description + "Conf Req Packets Sent"; + } + leaf conf-req-rcvd { + type uint64; + description + "Conf Req Packets Received"; + } + leaf conf-ack-sent { + type uint64; + description + "Conf Ack Packets Sent"; + } + leaf conf-ack-rcvd { + type uint64; + description + "Conf Ack Packets Received"; + } + leaf conf-nak-sent { + type uint64; + description + "Conf Nak Packets Sent"; + } + leaf conf-nak-rcvd { + type uint64; + description + "Conf Nak Packets Received"; + } + leaf conf-rej-sent { + type uint64; + description + "Conf Rej Packets Sent"; + } + leaf conf-rej-rcvd { + type uint64; + description + "Conf Rej Packets Received"; + } + leaf term-req-sent { + type uint64; + description + "Term Req Packets Sent"; + } + leaf term-req-rcvd { + type uint64; + description + "Term Req Packets Received"; + } + leaf term-ack-sent { + type uint64; + description + "Term Ack Packets Sent"; + } + leaf term-ack-rcvd { + type uint64; + description + "Term Ack Packets Received"; + } + leaf proto-rej-sent { + type uint64; + description + "Proto Rej Packets Sent"; + } + leaf proto-rej-rcvd { + type uint64; + description + "Proto Rej Packets Received"; + } + } + + grouping PPP-OPER-AUTH-STATS-GLOBAL { + description + "PPP Authentication statistics"; + leaf pap-req-sent { + type uint64; + description + "PAP Request packets sent"; + } + leaf pap-req-rcvd { + type uint64; + description + "PAP Request packets received"; + } + leaf pap-ack-sent { + type uint64; + description + "PAP Ack packets sent"; + } + leaf pap-ack-rcvd { + type uint64; + description + "PAP Ack packets received"; + } + leaf pap-nak-sent { + type uint64; + description + "PAP Nak packets sent"; + } + leaf pap-nak-rcvd { + type uint64; + description + "PAP Nak packets received"; + } + leaf chap-chall-sent { + type uint64; + description + "CHAP challenge packets sent"; + } + leaf chap-chall-rcvd { + type uint64; + description + "CHAP challenge packets received"; + } + leaf chap-resp-sent { + type uint64; + description + "CHAP response packets sent"; + } + leaf chap-resp-rcvd { + type uint64; + description + "CHAP response packets received"; + } + leaf chap-rep-succ-sent { + type uint64; + description + "CHAP reply success packets sent"; + } + leaf chap-rep-succ-rcvd { + type uint64; + description + "CHAP reply success packets received"; + } + leaf chap-rep-fail-sent { + type uint64; + description + "CHAP reply failure packets sent"; + } + leaf chap-rep-fail-rcvd { + type uint64; + description + "CHAP reply failure packets received"; + } + leaf auth-timeout-count { + type uint64; + description + "Authentication timeout count"; + } + } + + grouping PPP-OPER-LCP-STATS-GLOBAL { + description + "PPP Global LCP Statistics"; + leaf conf-req-sent { + type uint64; + description + "Conf Req Packets Sent"; + } + leaf conf-req-rcvd { + type uint64; + description + "Conf Req Packets Received"; + } + leaf conf-ack-sent { + type uint64; + description + "Conf Ack Packets Sent"; + } + leaf conf-ack-rcvd { + type uint64; + description + "Conf Ack Packets Received"; + } + leaf conf-nak-sent { + type uint64; + description + "Conf Nak Packets Sent"; + } + leaf conf-nak-rcvd { + type uint64; + description + "Conf Nak Packets Received"; + } + leaf conf-rej-sent { + type uint64; + description + "Conf Rej Packets Sent"; + } + leaf conf-rej-rcvd { + type uint64; + description + "Conf Rej Packets Received"; + } + leaf term-req-sent { + type uint64; + description + "Term Req Packets Sent"; + } + leaf term-req-rcvd { + type uint64; + description + "Term Req Packets Received"; + } + leaf term-ack-sent { + type uint64; + description + "Term Ack Packets Sent"; + } + leaf term-ack-rcvd { + type uint64; + description + "Term Ack Packets Received"; + } + leaf code-rej-sent { + type uint64; + description + "Code Rej Packets Sent"; + } + leaf code-rej-rcvd { + type uint64; + description + "Code Rej Packets Received"; + } + leaf proto-rej-sent { + type uint64; + description + "Proto Rej Packets Sent"; + } + leaf proto-rej-rcvd { + type uint64; + description + "Proto Rej Packets Received"; + } + leaf echo-req-sent { + type uint64; + description + "Echo Req Packets Sent"; + } + leaf echo-req-rcvd { + type uint64; + description + "Echo Req Packets Received"; + } + leaf echo-rep-sent { + type uint64; + description + "Echo Rep Packets Sent"; + } + leaf echo-rep-rcvd { + type uint64; + description + "Echo Rep Packets Received"; + } + leaf disc-req-sent { + type uint64; + description + "Disc Req Packets Sent"; + } + leaf disc-req-rcvd { + type uint64; + description + "Disc Req Packets Received"; + } + leaf link-up { + type uint64; + description + "Line Protocol Up count"; + } + leaf link-error { + type uint64; + description + "Keepalive link failure count"; + } + } + + grouping PPP-OPER-STATS-GLOBAL { + description + "PPP summary statistics information"; + container lcp-statistics { + description + "PPP LCP Statistics"; + uses PPP-OPER-LCP-STATS-GLOBAL; + } + container authentication-statistics { + description + "PPP Authentication statistics"; + uses PPP-OPER-AUTH-STATS-GLOBAL; + } + list ncp-statistics-array { + description + "Array of PPP NCP Statistics"; + uses PPP-OPER-NCP-STATS-GLOBAL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub4.yang new file mode 100644 index 000000000..37fb5dfae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper-sub4.yang @@ -0,0 +1,575 @@ +submodule Cisco-IOS-XR-ppp-ma-oper-sub4 { + belongs-to Cisco-IOS-XR-ppp-ma-oper { + prefix Cisco-IOS-XR-ppp-ma-oper; + } + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ppp-ma-oper-sub2 { + revision-date 2021-06-15; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ppp-ma package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-15 { + description + "Added new elements in ppp oper idump bag."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ppp-iphc-compression { + type enumeration { + enum "ppp-iphc-compression-fmt-none" { + value 0; + description + "None"; + } + enum "ppp-iphc-compression-fmt-vj" { + value 1; + description + "VJ"; + } + enum "ppp-iphc-compression-fmt-ietf" { + value 2; + description + "IETF"; + } + enum "ppp-iphc-compression-fmt-iphc" { + value 3; + description + "IPHC"; + } + enum "ppp-iphc-compression-fmt-cisco" { + value 4; + description + "CISCO"; + } + } + description + "IPHC compression type"; + } + + grouping PPP-IPV6CP-INFO { + description + "IPv6CP State information"; + leaf local-address { + type inet:ipv6-address; + description + "Local IPv6 address"; + } + leaf peer-address { + type inet:ipv6-address; + description + "Peer IPv6 address"; + } + } + + grouping PPP-IPCPIW-INFO { + description + "IPCPIW State information"; + leaf local-address { + type inet:ipv4-address; + description + "Local IPv4 address"; + } + leaf peer-address { + type inet:ipv4-address; + description + "Peer IPv4 address"; + } + } + + grouping PPP-IPCP-IPHC-INFO { + description + "IPCP IPHC State information"; + leaf compression-type { + type Ppp-iphc-compression; + description + "Compression type"; + } + leaf tcp-space { + type uint16; + description + "TCP space"; + } + leaf non-tcp-space { + type uint16; + description + "Non-TCP space"; + } + leaf max-period { + type uint16; + description + "Max period"; + } + leaf max-time { + type uint16; + description + "Max time"; + } + leaf max-header { + type uint16; + description + "Max header"; + } + leaf rtp-compression { + type boolean; + description + "RTP compression"; + } + leaf ec-rtp-compression { + type boolean; + description + "EcRTP compression"; + } + } + + grouping PPP-IPCP-INFO { + description + "IPCP State information"; + container local-iphc-options { + description + "Local IPHC options"; + uses PPP-IPCP-IPHC-INFO; + } + container peer-iphc-options { + description + "Peer IPHC options"; + uses PPP-IPCP-IPHC-INFO; + } + leaf local-address { + type inet:ipv4-address; + description + "Local IPv4 address"; + } + leaf peer-address { + type inet:ipv4-address; + description + "Peer IPv4 address"; + } + leaf peer-netmask { + type inet:ipv4-address; + description + "Peer IPv4 netmask"; + } + leaf dns-primary { + type inet:ipv4-address; + description + "Peer DNS Primary"; + } + leaf dns-secondary { + type inet:ipv4-address; + description + "Peer DNS Secondary"; + } + leaf wins-primary { + type inet:ipv4-address; + description + "Peer WINS Primary"; + } + leaf wins-secondary { + type inet:ipv4-address; + description + "Peer WINS Secondary"; + } + leaf is-iphc-configured { + type boolean; + description + "Is IPHC Configured"; + } + } + + grouping PPP-NCP { + description + "PPP NCP"; + container ipcp-info { + when "../type = 'ipcp'" { + description + "../Type = 'IPCP'"; + } + description + "Info for IPCP"; + uses PPP-IPCP-INFO; + } + container ipcpiw-info { + when "../type = 'ipcpiw'" { + description + "../Type = 'IPCPIW'"; + } + description + "Info for IPCPIW"; + uses PPP-IPCPIW-INFO; + } + container ipv6cp-info { + when "../type = 'ipv6cp'" { + description + "../Type = 'IPV6CP'"; + } + description + "Info for IPv6CP"; + uses PPP-IPV6CP-INFO; + } + leaf type { + type Ncp-ident; + description + "Type"; + } + } + + grouping PPP-NCP-INFO { + description + "NCP state information"; + container ncp-info { + description + "Specific NCP info"; + uses PPP-NCP; + } + leaf ncp-state { + type Ppp-fsm-state; + description + "NCP state value"; + } + leaf ncpsso-state { + type Ppp-sso-fsm-state; + description + "NCP SSO State"; + } + leaf is-passive { + type boolean; + description + "Is Passive"; + } + leaf ncp-identifier { + type Ncp-ident; + description + "NCP state identifier"; + } + } + + grouping PPP-AUTH-INFO { + description + "Authentication information"; + leaf is-authenticated { + type boolean; + description + "Is authenticated"; + } + leaf is-sso-authenticated { + type boolean; + description + "Is SSO authenticated"; + } + leaf of-us-auth { + type uint8; + description + "Of Us authentication type"; + } + leaf of-peer-auth { + type uint8; + description + "Of Peer authentication type"; + } + leaf of-us-name { + type string; + description + "Local authenticated name"; + } + leaf of-peer-name { + type string; + description + "Peer's authenticated name"; + } + leaf of-us-sso-state { + type Ppp-sso-fsm-state; + description + "Of Us auth SSO FSM State"; + } + leaf of-peer-sso-state { + type Ppp-sso-fsm-state; + description + "Of Peer auth SSO FSM State"; + } + } + + grouping PPP-TIMEOUT-INFO { + description + "Timeout information"; + leaf minutes { + type uint32; + units "minute"; + description + "Minutes"; + } + leaf seconds { + type uint8; + units "second"; + description + "Seconds"; + } + } + + grouping PPP-MP-MBR-INFO { + description + "MP member information"; + leaf interface { + type xr:Interface-name; + description + "Member Interface"; + } + leaf state { + type Ppp-lcp-mp-mbr-state; + description + "Member State"; + } + } + + grouping PPP-MP-INFO { + description + "MP information"; + leaf is-mp-bundle { + type boolean; + description + "Is an MP bundle"; + } + leaf mp-bundle-interface { + type xr:Interface-name; + description + "MP Bundle Interface"; + } + leaf is-mp-bundle-member { + type boolean; + description + "MP Bundle Member"; + } + leaf mp-group { + type uint32; + description + "MP Group"; + } + leaf active-links { + type uint16; + description + "Number of active links"; + } + leaf inactive-links { + type uint16; + description + "Number of inactive links"; + } + leaf minimum-active-links { + type uint16; + description + "Minimum active links required for the MPbundle + to come up"; + } + leaf mp-state { + type Ppp-lcp-mp-mbr-state; + description + "Member State"; + } + list mp-member-info-array { + description + "Array of MP members"; + uses PPP-MP-MBR-INFO; + } + } + + grouping PPP-PROTOCOL-INFO { + description + "PPP state information"; + container mp-info { + description + "MP information"; + uses PPP-MP-INFO; + } + container configured-timeout { + description + "Configured timeout"; + uses PPP-TIMEOUT-INFO; + } + container auth-info { + description + "Authentication information"; + uses PPP-AUTH-INFO; + } + leaf parent-state { + type Im-state; + description + "Parent state"; + } + leaf line-state { + type Im-state; + description + "Line state"; + } + leaf is-loopback-detected { + type boolean; + description + "Loopback detected"; + } + leaf caps-idb-srg-role { + type uint32; + description + "Caps IDB SRG role"; + } + leaf session-srg-role { + type uint32; + description + "Session SRG role"; + } + leaf keepalive-period { + type uint32; + description + "Keepalive value"; + } + leaf keepalive-retry-count { + type uint32; + description + "Keepalive retry count"; + } + leaf is-ssrp-configured { + type boolean; + description + "Is SSRP configured"; + } + leaf is-l2ac { + type boolean; + description + "Is L2 AC"; + } + leaf provisioned { + type boolean; + description + "Provisioned"; + } + leaf ip-interworking-enabled { + type boolean; + description + "IP Interworking Enabled"; + } + leaf xconnect-id { + type uint32; + description + "XConnect ID"; + } + leaf is-tunneled-session { + type boolean; + description + "Is tunneled session"; + } + leaf ssrp-peer-id { + type string; + description + "SSRP Peer ID"; + } + leaf lcp-state { + type Ppp-fsm-state; + description + "PPP/LCP state value"; + } + leaf lcpsso-state { + type Ppp-sso-fsm-state; + description + "LCP SSO state"; + } + leaf is-lcp-delayed { + type boolean; + description + "Is LCP Delayed"; + } + leaf local-mru { + type uint16; + description + "Local MRU"; + } + leaf peer-mru { + type uint16; + description + "Peer MRU"; + } + leaf local-mrru { + type uint16; + description + "Local MRRU"; + } + leaf peer-mrru { + type uint16; + description + "Peer MRRU"; + } + leaf local-ed { + type string { + length "0..41"; + } + description + "Local Endpt Discriminator"; + } + leaf peer-ed { + type string { + length "0..41"; + } + description + "Peer Endpt Discriminator"; + } + leaf is-mcmp-enabled { + type boolean; + description + "Is MCMP enabled"; + } + leaf local-mcmp-classes { + type uint8; + description + "Local MCMP classes"; + } + leaf peer-mcmp-classes { + type uint8; + description + "Peer MCMP classes"; + } + leaf session-expires { + type uint32; + units "second"; + description + "Session expiry time in seconds since 00:00:00 on + January 1, 1970, UTC."; + } + list ncp-info-array { + description + "Array of per-NCP data"; + uses PPP-NCP-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper.yang new file mode 100644 index 000000000..b0199bda0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-oper.yang @@ -0,0 +1,178 @@ +module Cisco-IOS-XR-ppp-ma-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-oper"; + prefix ppp-ma-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ppp-ma-oper-sub4 { + revision-date 2021-06-15; + } + include Cisco-IOS-XR-ppp-ma-oper-sub3 { + revision-date 2021-06-15; + } + include Cisco-IOS-XR-ppp-ma-oper-sub2 { + revision-date 2021-06-15; + } + include Cisco-IOS-XR-ppp-ma-oper-sub1 { + revision-date 2021-06-15; + } + + 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 ppp-ma package operational data. + + This module contains definitions + for the following management objects: + ppp: PPP operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-15 { + description + "Added new elements in ppp oper idump bag."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ppp { + config false; + description + "PPP operational data"; + container nodes { + description + "Per node PPP operational data"; + list node { + key "node-name"; + description + "The PPP operational data for a particular node"; + container statistics { + description + "PPP statistics data for a particular node"; + uses PPP-OPER-STATS-GLOBAL; + } + container node-interfaces { + description + "Per interface PPP operational data"; + list node-interface { + key "interface"; + description + "LCP and summarized NCP data for an interface + running PPP"; + leaf interface { + type xr:Interface-name; + description + "Interface running PPP"; + } + uses PPP-PROTOCOL-INFO; + } + } + container sso-alerts { + description + "PPP SSO Alert data for a particular node"; + list sso-alert { + key "interface"; + description + "PPP SSO Alert data for a particular interface"; + leaf interface { + type xr:Interface-name; + description + "Interface with SSO Alert"; + } + uses PPP-OPER-SSO-ALERTS; + } + } + container node-interface-statistics { + description + "Per interface PPP operational statistics"; + list node-interface-statistic { + key "interface-name"; + description + "LCP and NCP statistics for an interface + running PPP"; + leaf interface-name { + type xr:Interface-name; + description + "Interface running PPP"; + } + uses PPP-OPER-STATS-INTERFACE; + } + } + container sso-summary { + description + "Summarized PPP SSO data for a particular node"; + uses PPP-OPER-SSO-SUMMARY; + } + container sso-groups { + description + "PPP SSO Group data for a particular node"; + list sso-group { + key "group-id"; + description + "PPP SSO state data for a particular group"; + container sso-states { + description + "PPP SSO State data for a particular group"; + list sso-state { + key "session-id"; + description + "PPP SSO State data for a particular + interface"; + leaf session-id { + type uint32 { + range "1..4294967295"; + } + description + "Session ID for the interface with SSO + State"; + } + uses PPP-OPER-SSO-STATE; + } + } + leaf group-id { + type uint32 { + range "1..65535"; + } + description + "The identifier for the group"; + } + } + } + container summary { + description + "Summarized PPP data for a particular node"; + uses PPP-OPER-SUMMARY; + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ssrp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ssrp-cfg.yang new file mode 100644 index 000000000..f81f135be --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-ssrp-cfg.yang @@ -0,0 +1,149 @@ +module Cisco-IOS-XR-ppp-ma-ssrp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-ssrp-cfg"; + prefix ppp-ma-ssrp-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix a1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a2; + } + + 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 ppp-ma-ssrp package configuration. + + This module contains definitions + for the following management objects: + ssrp: Shared plane SSRP configuration data + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg, + Cisco-IOS-XR-ifmgr-cfg + modules with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a2:interface-configurations/a2:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ssrp-session { + description + "SSRP Config"; + container group-id { + description + "This specifies the SSRP group and session-id"; + leaf group { + type uint32 { + range "1..65535"; + } + description + "SSRP Group-ID"; + } + leaf id { + type uint32 { + range "1..4294967295"; + } + description + "SSRP Session-ID"; + } + } + } + } + augment "/a1:active-nodes/a1:active-node" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-config-mda-cfg'"; + container ssrp-group { + description + "Per-node SSRP configuration data"; + container groups { + description + "Table of SSRP Group configuration"; + list group { + key "group-id"; + description + "SSRP Group configuration"; + leaf profile { + type string; + description + "This specifies the SSRP profile to use for + this group"; + } + leaf group-id { + type uint32 { + range "1..65535"; + } + description + "The identifier for this group"; + } + } + } + } + } + container ssrp { + description + "Shared plane SSRP configuration data"; + container profiles { + description + "Table of SSRP Profiles"; + list profile { + key "name"; + description + "SSRP Profile configuration"; + leaf max-hops { + type uint32 { + range "1..255"; + } + description + "This specifies the maximum number of hops for + packets on the SSO channel"; + } + leaf peer-ipv4-address { + type inet:ipv4-address-no-zone; + description + "This specifies the remote end's IPv4-address + for the SSO channel"; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "The name of the profile"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-syslog-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-syslog-cfg.yang new file mode 100644 index 000000000..6e29ba96a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ppp-ma-syslog-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-ppp-ma-syslog-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ppp-ma-syslog-cfg"; + prefix ppp-ma-syslog-cfg; + + 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 ppp-ma-syslog package configuration. + + This module contains definitions + for the following management objects: + ppp: PPP configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ppp { + description + "PPP configuration"; + container syslog { + description + "syslog option for session status"; + leaf enable-session-status { + type empty; + description + "Enable syslog for ppp session status"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper-sub1.yang new file mode 100644 index 000000000..039861493 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper-sub1.yang @@ -0,0 +1,135 @@ +submodule Cisco-IOS-XR-pppoe-ea-oper-sub1 { + belongs-to Cisco-IOS-XR-pppoe-ea-oper { + prefix Cisco-IOS-XR-pppoe-ea-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR pppoe-ea package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PPPOE-EA-INTERFACE-INFO { + description + "PPPoE EA interface information"; + container peer-mac { + description + "Peer Mac-address"; + uses ETHER-MACADDR-TYPE; + } + container local-mac { + description + "Local Mac-address"; + uses ETHER-MACADDR-TYPE; + } + container srgv-mac { + description + "SRG VMac-address"; + uses ETHER-MACADDR-TYPE; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf session-id { + type uint16; + description + "Session ID"; + } + leaf parent-interface { + type xr:Interface-name; + description + "Parent Interface"; + } + leaf is-priority-set { + type boolean; + description + "Is Priority Set"; + } + leaf priority { + type uint8; + description + "Priority"; + } + leaf is-in-sync { + type boolean; + description + "Is in sync"; + } + leaf is-platform-created { + type boolean; + description + "Is Platform created"; + } + leaf-list vlanid { + type uint16; + max-elements "2"; + description + "VLAN Ids"; + } + } + + grouping ETHER-MACADDR-TYPE { + description + "ETHER MACADDR TYPE"; + leaf macaddr { + type yang:hex-string; + description + "macaddr"; + } + } + + grouping PPPOE-EA-PARENT-INTERFACE-INFO { + description + "PPPoE EA parent interface information"; + container srgv-mac { + description + "SRG VMac-address"; + uses ETHER-MACADDR-TYPE; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf is-in-sync { + type boolean; + description + "Is in sync"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper.yang new file mode 100644 index 000000000..27c5004f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pppoe-ea-oper.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-pppoe-ea-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pppoe-ea-oper"; + prefix pppoe-ea-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-pppoe-ea-oper-sub1 { + revision-date 2019-04-05; + } + + 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 pppoe-ea package operational data. + + This module contains definitions + for the following management objects: + pppoe-ea: PPPoE Ea data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container pppoe-ea { + config false; + description + "PPPoE Ea data"; + container nodes { + description + "PPPOE_EA list of nodes"; + list node { + key "node-name"; + description + "PPPOE-EA operational data for a particular node"; + container parent-interface-ids { + description + "PPPoE parent interface info"; + list parent-interface-id { + key "parent-interface-name"; + description + "PPPoE parent interface info"; + leaf parent-interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses PPPOE-EA-PARENT-INTERFACE-INFO; + } + } + container interface-ids { + description + "PPPoE interface info"; + list interface-id { + key "interface-name"; + description + "PPPoE interface info"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses PPPOE-EA-INTERFACE-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-cfg.yang new file mode 100644 index 000000000..88767d26b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-cfg.yang @@ -0,0 +1,85 @@ +module Cisco-IOS-XR-prm-hwmod-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-prm-hwmod-cfg"; + prefix prm-hwmod-cfg; + + 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 prm-hwmod package configuration. + + This module contains definitions + for the following management objects: + hardware-module: HardwareModule + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Urpf-config { + type enumeration { + enum "disable" { + value 0; + description + "Urpf Disable"; + } + enum "enable" { + value 1; + description + "Urpf Enable"; + } + } + description + "Urpf config"; + } + + container hardware-module { + description + "HardwareModule"; + container loadbalancing { + description + "Loadbalance option"; + container bgp3107 { + description + "BGP LU"; + container ecmp { + description + "ECMP "; + leaf enable { + type empty; + description + "Enable Option"; + } + } + } + } + leaf urpf { + type Urpf-config; + description + "Enabled Disabled"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-profile-cfg.yang new file mode 100644 index 000000000..7eb309e61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-profile-cfg.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-prm-hwmod-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-prm-hwmod-profile-cfg"; + prefix prm-hwmod-profile-cfg; + + 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 prm-hwmod-profile package configuration. + + This module contains definitions + for the following management objects: + hardware-module: HardwareModule + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-12-05 { + description + "Implementing Conf Yang Model for profile selection"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Profile-type-data { + type enumeration { + enum "sp" { + value 1; + description + "SP Profile"; + } + enum "dc" { + value 2; + description + "DC Profile"; + } + } + description + "Profile type data"; + } + + container hardware-module { + description + "HardwareModule"; + leaf profile { + type Profile-type-data; + description + "Specify Profile type"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-sr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-sr-cfg.yang new file mode 100644 index 000000000..b571ee56e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-hwmod-sr-cfg.yang @@ -0,0 +1,67 @@ +module Cisco-IOS-XR-prm-hwmod-sr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-prm-hwmod-sr-cfg"; + prefix prm-hwmod-sr-cfg; + + 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 prm-hwmod-sr package configuration. + + This module contains definitions + for the following management objects: + hardware-module: HardwareModule + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Implementing Conf Yang Model for Service label reservation for SR label stack limit"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container hardware-module { + description + "HardwareModule"; + container segment-routing { + description + "Segment Routing"; + container reserve { + description + "Reserve"; + container service-label { + description + "Service Label"; + leaf enable { + type empty; + description + "Enable"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper-sub1.yang new file mode 100644 index 000000000..908fe6264 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper-sub1.yang @@ -0,0 +1,224 @@ +submodule Cisco-IOS-XR-prm-server-oper-sub1 { + belongs-to Cisco-IOS-XR-prm-server-oper { + prefix Cisco-IOS-XR-prm-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR prm-server package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-02-22 { + description + "Initial revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping RESOURCE-EDM-DATA { + description + "Resource Summary Data"; + leaf resource-name { + type string { + length "0..1024"; + } + description + "Resource Name"; + } + leaf resource-type { + type uint32; + description + "Resource Type"; + } + leaf total-num { + type uint32; + description + "Total Resource Count"; + } + leaf free-num { + type uint32; + description + "Free Resource Count"; + } + leaf first-available-index { + type uint32; + description + "Next Free Index"; + } + leaf start-index { + type uint32; + description + "Start Index"; + } + leaf availability-status { + type boolean; + description + "Availability Status"; + } + leaf flags { + type uint8; + description + "Resource Flags"; + } + leaf inconsistent { + type boolean; + description + "Inconsistice Flags"; + } + } + + grouping PLAT-DROP-STATS-INFO { + description + "Plat drop stats data"; + leaf drop-reason { + type string { + length "0..1024"; + } + description + "Drop Reason"; + } + leaf counters { + type uint32; + description + "Counter"; + } + } + + grouping PLAT-DROP-CAPTURED-PAK { + description + "Plat drop captured packets"; + leaf total-captured { + type uint32; + description + "Total packets Captured"; + } + leaf captured-pak { + type string { + length "0..1024"; + } + description + "Captured Packet"; + } + leaf pkt-index { + type uint8; + description + "Packet Index"; + } + leaf ifhandle { + type uint32; + description + "If Handle"; + } + leaf buffer-len { + type uint32; + description + "Buffer Length"; + } + leaf reason-hi { + type uint32; + description + "Reason Hi"; + } + leaf reason { + type uint32; + description + "Reason"; + } + leaf years { + type uint64; + description + "Year"; + } + leaf hours { + type uint64; + units "hour"; + description + "Hours"; + } + leaf days { + type uint64; + units "day"; + description + "Days"; + } + leaf mins { + type uint64; + units "minute"; + description + "Minutes"; + } + leaf secs { + type uint64; + units "second"; + description + "Seconds"; + } + } + + grouping BCM-EDM-COSQ-INFO { + description + "BCM CosQ EDM data"; + leaf cos-q-name { + type string { + length "0..1024"; + } + description + "CosQ Name"; + } + leaf cos-q { + type uint8; + description + "CosQ No"; + } + leaf rx-channel { + type uint32; + description + "Rx DMA Channel"; + } + leaf flow-rate { + type uint32; + description + "Flow Rate"; + } + leaf burst { + type uint32; + description + "Burst"; + } + leaf accepted { + type uint64; + description + "Accepted"; + } + leaf dropped { + type uint64; + description + "Dropped"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper.yang new file mode 100644 index 000000000..08b4ffc17 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-prm-server-oper.yang @@ -0,0 +1,171 @@ +module Cisco-IOS-XR-prm-server-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-prm-server-oper"; + prefix prm-server-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-prm-server-oper-sub1 { + revision-date 2019-04-05; + } + + 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 prm-server package operational data. + + This module contains definitions + for the following management objects: + hardware-module: PRM data + prm: PRM data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-02-22 { + description + "Initial revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container hardware-module { + config false; + description + "PRM data"; + container nodes { + description + "List of PRM Nodes"; + list node { + key "node-name"; + description + "Node Information"; + container np { + description + "Server specific"; + container cpu { + description + "Resource specific"; + container indexes { + description + "Data for software resource"; + list index { + key "index"; + description + "Queue Stats"; + leaf index { + type uint32; + description + "Index value"; + } + uses BCM-EDM-COSQ-INFO; + } + } + } + container platform-drop { + description + "Platform drops"; + container indxes { + description + "Captured Packets"; + list indx { + key "index"; + description + "Captured packets"; + leaf index { + type uint32; + description + "Index value"; + } + uses PLAT-DROP-CAPTURED-PAK; + } + } + container idxes { + description + "Stats for Drop packets"; + list idx { + key "index"; + description + "Drop Stats"; + leaf index { + type uint32; + description + "Index value"; + } + uses PLAT-DROP-STATS-INFO; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } + container prm { + config false; + description + "PRM data"; + container nodes { + description + "List of PRM Nodes"; + list node { + key "node-name"; + description + "Node Information"; + container server { + description + "Server specific"; + container resource { + description + "Resource specific"; + container indexes { + description + "Data for software resource"; + list index { + key "index"; + description + "Data for software resource"; + leaf index { + type uint32; + description + "Index value"; + } + uses RESOURCE-EDM-DATA; + } + } + } + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper-sub1.yang new file mode 100644 index 000000000..6489e3c5c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper-sub1.yang @@ -0,0 +1,82 @@ +submodule Cisco-IOS-XR-procfind-oper-sub1 { + belongs-to Cisco-IOS-XR-procfind-oper { + prefix Cisco-IOS-XR-procfind-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR procfind package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-02-28 { + description + "Added new field PID in schema."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-18 { + description + "Added good description for bag fields."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PROCFIND-PROC { + description + "Procfind information on a single running process"; + leaf nodeid { + type uint32; + description + "Node ID"; + } + leaf nodetype { + type uint32; + description + "Type of the node RP/LC/DRP"; + } + leaf pid { + type int32; + description + "Process ID"; + } + leaf jid { + type int32; + description + "Job ID"; + } + leaf num-threads { + type int32; + description + "Number of threads"; + } + leaf name { + type string; + description + "Process name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper.yang new file mode 100644 index 000000000..9209e2ce7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-procfind-oper.yang @@ -0,0 +1,105 @@ +module Cisco-IOS-XR-procfind-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-procfind-oper"; + prefix procfind-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-procfind-oper-sub1 { + revision-date 2020-02-28; + } + + 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 procfind package operational data. + + This module contains definitions + for the following management objects: + proc-distribution: Process distribution information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-02-28 { + description + "Added new field PID in schema."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-18 { + description + "Added good description for bag fields."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container proc-distribution { + config false; + description + "Process distribution information"; + container nodes { + description + "List of nodes"; + list node { + key "node-name"; + description + "Process distribution information per node"; + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + list process { + key "proc-name"; + description + "Process distribution information"; + leaf proc-name { + type xr:Cisco-ios-xr-string { + length "1..256"; + } + description + "Process Name"; + } + list pid { + key "pid"; + description + "Process distribution information"; + container filter-type { + description + "Process distribution information"; + uses PROCFIND-PROC; + } + leaf pid { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "PID"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper-sub1.yang new file mode 100644 index 000000000..6b17f816a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper-sub1.yang @@ -0,0 +1,110 @@ +submodule Cisco-IOS-XR-procmem-oper-sub1 { + belongs-to Cisco-IOS-XR-procmem-oper { + prefix Cisco-IOS-XR-procmem-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR procmem package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-04 { + description + "Moved proccess id from integer to range."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + revision 2015-07-30 { + description + "IOS XR 6.0.0 revision."; + } + + grouping PROCESSESMEMORY-ENTRY { + description + " Per Process Information"; + leaf name { + type string; + description + "Process name"; + } + leaf jid { + type uint32; + description + "Job ID"; + } + leaf pid { + type uint32; + description + "Process ID"; + } + leaf text-seg-size { + type uint32; + description + "Text Segment Size in KB"; + } + leaf data-seg-size { + type uint32; + description + "Data Segment Size in KB"; + } + leaf stack-seg-size { + type uint32; + description + "Stack Segment Size in KB"; + } + leaf malloc-size { + type uint32; + description + "Malloced Memory Size in KB"; + } + leaf dyn-limit { + type uint32; + description + "Dynamic memory limit in KB (4294967295 for + RLIM_INFINITY)"; + } + leaf shared-mem { + type uint32; + description + "Shared memory size in KB"; + } + leaf physical-mem { + type uint32; + description + "Physical memory size in KB"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper.yang new file mode 100644 index 000000000..6d0a8fc6b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-procmem-oper.yang @@ -0,0 +1,106 @@ +module Cisco-IOS-XR-procmem-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-procmem-oper"; + prefix procmem-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-procmem-oper-sub1 { + revision-date 2019-04-05; + } + + 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 procmem package operational data. + + This module contains definitions + for the following management objects: + processes-memory: Process statistics + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-04 { + description + "Moved proccess id from integer to range."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + revision 2015-07-30 { + description + "IOS XR 6.0.0 revision."; + } + + typedef Proc-mem-pid-range { + type uint32 { + range "1..2147483647"; + } + description + "Proc mem pid range"; + } + + container processes-memory { + config false; + description + "Process statistics"; + container nodes { + description + "List of nodes"; + list node { + key "node-name"; + description + "Node ID"; + container process-ids { + description + "List of jobs"; + list process-id { + key "process-id"; + description + "Process Id"; + leaf process-id { + type Proc-mem-pid-range; + description + "Process Id"; + } + uses PROCESSESMEMORY-ENTRY; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper-sub1.yang new file mode 100644 index 000000000..6eb0de703 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper-sub1.yang @@ -0,0 +1,97 @@ +submodule Cisco-IOS-XR-procthreadname-oper-sub1 { + belongs-to Cisco-IOS-XR-procthreadname-oper { + prefix Cisco-IOS-XR-procthreadname-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR procthreadname package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-07 { + description + "Removed container thread-name."; + semver:module-version "2.0.0"; + } + revision 2019-05-28 { + description + "Initial version."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PROCESSESTHREAD-ENTRY { + description + " Per Thread Information"; + leaf name { + type string; + description + "Thread name"; + } + leaf state { + type string; + description + "Thread State"; + } + leaf stack { + type string; + description + "Stack"; + } + leaf pri { + type uint32; + description + "Priority"; + } + leaf rtpri { + type uint32; + description + "Rt pri"; + } + leaf jid { + type uint32; + description + "Job ID"; + } + leaf tid { + type uint32; + description + "Thread ID"; + } + } + + grouping THREADLIST { + description + " Per node thread list"; + list thread { + description + "Thread list"; + uses PROCESSESTHREAD-ENTRY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper.yang new file mode 100644 index 000000000..78bbb4e7e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-procthreadname-oper.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-procthreadname-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-procthreadname-oper"; + prefix procthreadname-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-procthreadname-oper-sub1 { + revision-date 2022-07-07; + } + + 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 procthreadname package operational data. + + This module contains definitions + for the following management objects: + processes-thread: Process statistics + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-07 { + description + "Removed container thread-name."; + semver:module-version "2.0.0"; + } + revision 2019-05-28 { + description + "Initial version."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container processes-thread { + config false; + description + "Process statistics"; + container nodes { + description + "List of nodes"; + list node { + key "node-name"; + description + "Node ID"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses THREADLIST; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-cfg.yang new file mode 100644 index 000000000..6cefe6335 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-cfg.yang @@ -0,0 +1,1630 @@ +module Cisco-IOS-XR-ptp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ptp-cfg"; + prefix ptp-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ptp-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 ptp package configuration. + + This module contains definitions + for the following management objects: + ptp: PTP global configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-05 { + description + "Add double-failure-clock-class config option"; + semver:module-version "3.2.0"; + } + revision 2021-02-12 { + description + "Marked deprecated uncalibrated-clock-class leaf obsolete"; + semver:module-version "3.1.0"; + } + revision 2020-01-31 { + description + "Added submode-enter enable handling. + 2020-01-15 + Added holdover-spec configuration options and uncalibrated time-traceable override option. + 2020-01-13 + Added servo slow tracking configuration item."; + semver:module-version "3.0.0"; + } + revision 2019-10-31 { + description + "Added mandatory nodes and presence containers."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-02-02 { + description + "Initial version."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container ptp { + presence "CLI submode compatibility."; + description + "Precision Time Protocol interface configuration"; + container source-ipv6-address { + description + "Source IPv6 Address"; + leaf enable { + type boolean; + description + "Enable source IPv6 address"; + } + leaf source-ipv6 { + type inet:ipv6-address-no-zone; + description + "Source IPv6 address to use"; + } + } + container announce-interval { + description + "Announce interval"; + leaf time-type { + type dt1:Ptp-time; + default "interval"; + description + "Interval or Frequency"; + } + leaf time-period { + type dt1:Ptp-time-period; + default "2"; + description + "Time Period"; + } + } + container interop { + description + "Table for interop configuration"; + container egress-conversion { + description + "Iteroperation configuration to be used on + egress"; + container clock-class-mappings { + description + "Table for specific mappings for given clock + class values"; + list clock-class-mapping { + key "clock-class-from"; + description + "Mapping for a given clock class value"; + leaf clock-class-from { + type uint32 { + range "0..255"; + } + description + "Clock Class to map from"; + } + leaf clock-class-to { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Clock class to map to"; + } + } + } + leaf clock-accuracy { + type uint32 { + range "0..254"; + } + description + "Clock Accuracy value to use for the peer + clock"; + } + leaf priority2 { + type uint32 { + range "0..255"; + } + description + "Priority2 value to use for the peer clock"; + } + leaf clock-class-default { + type uint32 { + range "0..255"; + } + description + "Default clock class to use when a more + specific mapping is not available"; + } + leaf offset-scaled-log-variance { + type uint32 { + range "0..65535"; + } + description + "OSLV value to use for the peer clock"; + } + leaf priority1 { + type uint32 { + range "0..255"; + } + description + "Priority1 value to use for the peer clock"; + } + } + container ingress-conversion { + description + "Iteroperation configuration to be used on + ingress"; + container clock-class-mappings { + description + "Table for specific mappings for given clock + class values"; + list clock-class-mapping { + key "clock-class-from"; + description + "Mapping for a given clock class value"; + leaf clock-class-from { + type uint32 { + range "0..255"; + } + description + "Clock Class to map from"; + } + leaf clock-class-to { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Clock class to map to"; + } + } + } + leaf clock-accuracy { + type uint32 { + range "0..254"; + } + description + "Clock Accuracy value to use for the peer + clock"; + } + leaf priority2 { + type uint32 { + range "0..255"; + } + description + "Priority2 value to use for the peer clock"; + } + leaf clock-class-default { + type uint32 { + range "0..255"; + } + description + "Default clock class to use when a more + specific mapping is not available"; + } + leaf offset-scaled-log-variance { + type uint32 { + range "0..65535"; + } + description + "OSLV value to use for the peer clock"; + } + leaf priority1 { + type uint32 { + range "0..255"; + } + description + "Priority1 value to use for the peer clock"; + } + } + leaf profile { + type dt1:Ptp-clock-profile; + description + "Profile to interoperate with"; + } + leaf domain { + type uint32 { + range "0..255"; + } + description + "Domain number of the peer clock"; + } + } + container source-ipv4-address { + description + "Source IPv4 Address"; + leaf enable { + type boolean; + description + "Enable source IP address"; + } + leaf source-ip { + type inet:ipv4-address-no-zone; + description + "Source IP address to use"; + } + } + container slaves { + description + "Table for slave configuration"; + list slave { + must "ethernet or ipv4-or-ipv6" { + description + "Ethernet or IPv4-or-IPv6 must be present."; + } + key "transport"; + description + "Slave configuration"; + + grouping SLAVE-CONTENT { + description + "SLAVE CONTENT"; + leaf non-negotiated { + type boolean; + description + "Enable non-negotiated unicast on this + interface"; + } + } + leaf transport { + type dt1:Ptp-encap; + description + "Slave Transport Type"; + } + list ethernet { + when "../transport = 'ethernet'" { + description + "../Transport = Ethernet"; + } + key "slave-mac-address"; + description + "ethernet"; + leaf slave-mac-address { + type yang:mac-address; + description + "Slave MAC Address"; + } + uses SLAVE-CONTENT; + } + list ipv4-or-ipv6 { + when "../transport = 'ipv4' or ../transport = 'ipv6'" { + description + "../Transport = IPv4 or ../Transport = IPv6"; + } + key "slave-ip-address"; + description + "ipv4 or ipv6"; + leaf slave-ip-address { + type inet:ip-address-no-zone; + description + "Slave IP Address"; + } + uses SLAVE-CONTENT; + } + } + } + container sync-interval { + description + "Sync interval"; + leaf time-type { + type dt1:Ptp-time; + default "interval"; + description + "Interval or Frequency"; + } + leaf time-period { + type dt1:Ptp-time-period; + default "1"; + description + "Time Period"; + } + } + container masters { + description + "Table for master configuration"; + list master { + must "ethernet or ipv4-or-ipv6" { + description + "Ethernet or IPv4-or-IPv6 must be present."; + } + key "transport"; + description + "Master configuration"; + + grouping MASTER-CONTENT { + description + "MASTER CONTENT"; + container delay-asymmetry { + description + "The delay asymmetry for this master"; + leaf magnitude { + type int32 { + range "-500000000..500000000"; + } + default "0"; + description + "How much longer the master to slave path + takes than the reverse"; + } + leaf units { + type dt1:Ptp-delay-asymmetry-units; + default "nanoseconds"; + description + "The units to use for the delay asymmetry"; + } + } + leaf master-clock-class { + type uint32 { + range "0..255"; + } + description + "Master clock class"; + } + leaf non-negotiated { + type boolean; + description + "Enable non-negotiated unicast on this + interface"; + } + leaf priority { + type uint32 { + range "0..255"; + } + description + "Master priority"; + } + leaf communication { + type dt1:Ptp-transport; + default "unicast"; + description + "Communication Model"; + } + } + leaf transport { + type dt1:Ptp-encap; + description + "Master Transport Type"; + } + list ethernet { + when "../transport = 'ethernet'" { + description + "../Transport = Ethernet"; + } + key "master-mac-address"; + description + "ethernet"; + leaf master-mac-address { + type yang:mac-address; + description + "Master MAC Address - only used if Transport + is Ethernet"; + } + uses MASTER-CONTENT; + } + list ipv4-or-ipv6 { + when "../transport = 'ipv4' or ../transport = 'ipv6'" { + description + "../Transport = IPv4 or ../Transport = IPv6"; + } + key "master-ip-address"; + description + "ipv4 or ipv6"; + leaf master-ip-address { + type inet:ip-address-no-zone; + description + "Master IP Address - used if Transport is not + Ethernet"; + } + uses MASTER-CONTENT; + } + } + } + container delay-asymmetry { + description + "Delay asymmetry to apply to all masters on the + interface"; + leaf magnitude { + type int32 { + range "-500000000..500000000"; + } + default "0"; + description + "How much longer the master to slave path takes + than the reverse"; + } + leaf units { + type dt1:Ptp-delay-asymmetry-units; + default "nanoseconds"; + description + "The units to use for the delay asymmetry"; + } + } + container communication { + description + "Communication model"; + leaf model { + type dt1:Ptp-transport; + default "unicast"; + description + "Communication Model"; + } + leaf target-address-set { + type boolean; + default "false"; + description + "Target address set"; + } + leaf target-address { + type string; + description + "Target address"; + } + } + container delay-request-minimum-interval { + description + "Minimum delay request interval"; + leaf time-type { + type dt1:Ptp-time; + default "interval"; + description + "Interval or Frequency"; + } + leaf time-period { + type dt1:Ptp-time-period; + default "1"; + description + "Time Period"; + } + } + leaf sync-grant-duration { + type uint32 { + range "60..1000"; + } + units "second"; + default "300"; + description + "Sync unicast grant duration, in seconds"; + } + leaf general-cos { + type uint32 { + range "0..7"; + } + default "6"; + description + "General COS"; + } + leaf enable { + type empty; + description + "Enable the precision time protocol"; + } + leaf sync-timeout { + type uint32 { + range "100..100000"; + } + units "millisecond"; + default "5000"; + description + "Sync timeout, in milliseconds"; + } + leaf transport { + type dt1:Ptp-encap; + default "ipv4"; + description + "Transport"; + } + leaf profile { + type string; + description + "Precision Time Protocol configuration profile"; + } + leaf announce-timeout { + type uint32 { + range "2..10"; + } + default "3"; + description + "Announce Timeout"; + } + leaf cos { + type uint32 { + range "0..7"; + } + default "6"; + description + "COS"; + } + leaf ipv4ttl { + type uint32 { + range "1..255"; + } + default "255"; + description + "IPv4 TTL"; + } + leaf port-state { + type dt1:Ptp-port-state; + default "any"; + description + "Port state restriction"; + } + leaf delay-response-timeout { + type uint32 { + range "100..100000"; + } + units "millisecond"; + default "5000"; + description + "Delay-Response timeout, in milliseconds"; + } + leaf local-priority { + type uint32 { + range "1..255"; + } + default "128"; + description + "Local priority"; + } + leaf delay-response-grant-duration { + type uint32 { + range "60..1000"; + } + units "second"; + default "300"; + description + "Delay-Response unicast grant duration, in + seconds"; + } + leaf event-cos { + type uint32 { + range "0..7"; + } + default "6"; + description + "Event COS"; + } + leaf dscp { + type uint32 { + range "0..63"; + } + default "46"; + description + "DSCP"; + } + leaf ipv6-hop-limit { + type uint32 { + range "1..255"; + } + default "255"; + description + "IPv6 Hop Limit"; + } + leaf general-dscp { + type uint32 { + range "0..63"; + } + default "46"; + description + "General DSCP"; + } + leaf clock-operation { + type dt1:Ptp-clock-operation; + default "two-step"; + description + "Clock Operation"; + } + leaf announce-grant-duration { + type uint32 { + range "60..1000"; + } + units "second"; + default "300"; + description + "Announce unicast grant duration, in seconds"; + } + leaf unicast-grant-invalid-request { + type dt1:Ptp-invalid-unicast-grant-request-response; + default "reduce"; + description + "Invalid unicast grant request response"; + } + leaf event-dscp { + type uint32 { + range "0..63"; + } + default "46"; + description + "Event DSCP"; + } + } + } + container ptp { + presence "CLI submode compatibility."; + description + "PTP global configuration"; + container clock { + description + "PTP local clock configuration"; + container clock-profile { + description + "Local clock PTP profile"; + leaf clock-profile { + type dt1:Ptp-clock-profile; + default "default"; + description + "Clock profile"; + } + leaf telecom-clock-type { + when "../clock-profile = 'g82651' or ../clock-profile = 'g82751' or ../clock-profile = 'g82752'" { + description + "../ClockProfile = G82651 or ../ClockProfile + = G82751 or ../ClockProfile = G82752"; + } + type dt1:Ptp-telecom-clock; + description + "Telecom clock type"; + } + } + container identity { + description + "Local clock identity"; + leaf clock-id-type { + type dt1:Ptp-clock-id; + default "router-mac"; + description + "Clock identity type"; + } + leaf mac-address { + when "../clock-id-type = 'user-mac'" { + description + "../ClockIDType = UserMAC"; + } + type yang:mac-address; + description + "MAC Address"; + } + leaf eui { + when "../clock-id-type = 'eui'" { + description + "../ClockIDType = EUI"; + } + type string; + description + "EUI-64 number"; + } + } + leaf timescale { + type dt1:Ptp-timescale; + description + "Local clock timescale"; + } + leaf domain { + type uint32 { + range "0..255"; + } + default "0"; + description + "Local clock domain"; + } + leaf priority2 { + type uint32 { + range "0..255"; + } + default "128"; + description + "Local clock priority2"; + } + leaf time-source { + type dt1:Ptp-time-source; + description + "Local clock time source"; + } + leaf priority1 { + type uint32 { + range "0..255"; + } + default "128"; + description + "Local clock priority1"; + } + leaf clock-class { + type uint32 { + range "0..255"; + } + default "0"; + description + "Local clock class"; + } + } + container profiles { + description + "Table for profile configuration"; + list profile { + key "profile-name"; + description + "Profile configuration"; + container announce-interval { + description + "Announce interval"; + leaf time-type { + type dt1:Ptp-time; + default "interval"; + description + "Interval or Frequency"; + } + leaf time-period { + type dt1:Ptp-time-period; + default "2"; + description + "Time Period"; + } + } + container interop { + description + "Table for interop configuration"; + container egress-conversion { + description + "Iteroperation configuration to be used on + egress"; + container clock-class-mappings { + description + "Table for specific mappings for given clock + class values"; + list clock-class-mapping { + key "clock-class-from"; + description + "Mapping for a given clock class value"; + leaf clock-class-from { + type uint32 { + range "0..255"; + } + description + "Clock Class to map from"; + } + leaf clock-class-to { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Clock class to map to"; + } + } + } + leaf clock-accuracy { + type uint32 { + range "0..254"; + } + description + "Clock Accuracy value to use for the peer + clock"; + } + leaf priority2 { + type uint32 { + range "0..255"; + } + description + "Priority2 value to use for the peer clock"; + } + leaf clock-class-default { + type uint32 { + range "0..255"; + } + description + "Default clock class to use when a more + specific mapping is not available"; + } + leaf offset-scaled-log-variance { + type uint32 { + range "0..65535"; + } + description + "OSLV value to use for the peer clock"; + } + leaf priority1 { + type uint32 { + range "0..255"; + } + description + "Priority1 value to use for the peer clock"; + } + } + container ingress-conversion { + description + "Iteroperation configuration to be used on + ingress"; + container clock-class-mappings { + description + "Table for specific mappings for given clock + class values"; + list clock-class-mapping { + key "clock-class-from"; + description + "Mapping for a given clock class value"; + leaf clock-class-from { + type uint32 { + range "0..255"; + } + description + "Clock Class to map from"; + } + leaf clock-class-to { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Clock class to map to"; + } + } + } + leaf clock-accuracy { + type uint32 { + range "0..254"; + } + description + "Clock Accuracy value to use for the peer + clock"; + } + leaf priority2 { + type uint32 { + range "0..255"; + } + description + "Priority2 value to use for the peer clock"; + } + leaf clock-class-default { + type uint32 { + range "0..255"; + } + description + "Default clock class to use when a more + specific mapping is not available"; + } + leaf offset-scaled-log-variance { + type uint32 { + range "0..65535"; + } + description + "OSLV value to use for the peer clock"; + } + leaf priority1 { + type uint32 { + range "0..255"; + } + description + "Priority1 value to use for the peer clock"; + } + } + leaf profile { + type dt1:Ptp-clock-profile; + description + "Profile to interoperate with"; + } + leaf domain { + type uint32 { + range "0..255"; + } + description + "Domain number of the peer clock"; + } + } + container source-ipv4-address { + description + "Source IPv4 Address"; + leaf enable { + type boolean; + description + "Enable source IP address"; + } + leaf source-ip { + type inet:ipv4-address-no-zone; + description + "Source IP address to use"; + } + } + container slaves { + description + "Table for slave configuration"; + list slave { + must "ethernet or ipv4-or-ipv6" { + description + "Ethernet or IPv4-or-IPv6 must be present."; + } + key "transport"; + description + "Slave configuration"; + + grouping SLAVE-CONTENT { + description + "SLAVE CONTENT"; + leaf non-negotiated { + type boolean; + description + "Enable non-negotiated unicast on this + interface"; + } + } + leaf transport { + type dt1:Ptp-encap; + description + "Slave Transport Type"; + } + list ethernet { + when "../transport = 'ethernet'" { + description + "../Transport = Ethernet"; + } + key "slave-mac-address"; + description + "ethernet"; + leaf slave-mac-address { + type yang:mac-address; + description + "Slave MAC Address"; + } + uses SLAVE-CONTENT; + } + list ipv4-or-ipv6 { + when "../transport = 'ipv4' or ../transport = 'ipv6'" { + description + "../Transport = IPv4 or ../Transport = IPv6"; + } + key "slave-ip-address"; + description + "ipv4 or ipv6"; + leaf slave-ip-address { + type inet:ip-address-no-zone; + description + "Slave IP Address"; + } + uses SLAVE-CONTENT; + } + } + } + container sync-interval { + description + "Sync interval"; + leaf time-type { + type dt1:Ptp-time; + default "interval"; + description + "Interval or Frequency"; + } + leaf time-period { + type dt1:Ptp-time-period; + default "1"; + description + "Time Period"; + } + } + container masters { + description + "Table for master configuration"; + list master { + must "ethernet or ipv4-or-ipv6" { + description + "Ethernet or IPv4-or-IPv6 must be present."; + } + key "transport"; + description + "Master configuration"; + + grouping MASTER-CONTENT { + description + "MASTER CONTENT"; + container delay-asymmetry { + description + "The delay asymmetry for this master"; + leaf magnitude { + type int32 { + range "-500000000..500000000"; + } + default "0"; + description + "How much longer the master to slave path + takes than the reverse"; + } + leaf units { + type dt1:Ptp-delay-asymmetry-units; + default "nanoseconds"; + description + "The units to use for the delay asymmetry"; + } + } + leaf master-clock-class { + type uint32 { + range "0..255"; + } + description + "Master clock class"; + } + leaf non-negotiated { + type boolean; + description + "Enable non-negotiated unicast on this + interface"; + } + leaf priority { + type uint32 { + range "0..255"; + } + description + "Master priority"; + } + leaf communication { + type dt1:Ptp-transport; + default "unicast"; + description + "Communication Model"; + } + } + leaf transport { + type dt1:Ptp-encap; + description + "Master Transport Type"; + } + list ethernet { + when "../transport = 'ethernet'" { + description + "../Transport = Ethernet"; + } + key "master-mac-address"; + description + "ethernet"; + leaf master-mac-address { + type yang:mac-address; + description + "Master MAC Address - only used if Transport + is Ethernet"; + } + uses MASTER-CONTENT; + } + list ipv4-or-ipv6 { + when "../transport = 'ipv4' or ../transport = 'ipv6'" { + description + "../Transport = IPv4 or ../Transport = IPv6"; + } + key "master-ip-address"; + description + "ipv4 or ipv6"; + leaf master-ip-address { + type inet:ip-address-no-zone; + description + "Master IP Address - used if Transport is + not Ethernet"; + } + uses MASTER-CONTENT; + } + } + } + container delay-asymmetry { + description + "Delay asymmetry to apply to all masters on an + interface"; + leaf magnitude { + type int32 { + range "-500000000..500000000"; + } + default "0"; + description + "How much longer the master to slave path + takes than the reverse"; + } + leaf units { + type dt1:Ptp-delay-asymmetry-units; + default "nanoseconds"; + description + "The units to use for the delay asymmetry"; + } + } + container communication { + description + "Communication model"; + leaf model { + type dt1:Ptp-transport; + default "unicast"; + description + "Communication Model"; + } + leaf target-address-set { + type boolean; + default "false"; + description + "Target address set"; + } + leaf target-address { + type string; + description + "Target address"; + } + } + container delay-request-minimum-interval { + description + "Minimum delay request interval"; + leaf time-type { + type dt1:Ptp-time; + default "interval"; + description + "Interval or Frequency"; + } + leaf time-period { + type dt1:Ptp-time-period; + default "1"; + description + "Time Period"; + } + } + container source-ipv6-address { + description + "Source IPv6 Address"; + leaf enable { + type boolean; + description + "Enable source IPv6 address"; + } + leaf source-ipv6 { + type inet:ipv6-address-no-zone; + description + "Source IPv6 address to use"; + } + } + leaf sync-grant-duration { + type uint32 { + range "60..1000"; + } + units "second"; + default "300"; + description + "Sync unicast grant duration, in seconds"; + } + leaf general-cos { + type uint32 { + range "0..7"; + } + default "6"; + description + "General COS"; + } + leaf sync-timeout { + type uint32 { + range "100..100000"; + } + units "millisecond"; + default "5000"; + description + "Sync timeout, in milliseconds"; + } + leaf transport { + type dt1:Ptp-encap; + default "ipv4"; + description + "Transport"; + } + leaf announce-timeout { + type uint32 { + range "2..10"; + } + default "3"; + description + "Announce Timeout"; + } + leaf cos { + type uint32 { + range "0..7"; + } + default "6"; + description + "COS"; + } + leaf ipv4ttl { + type uint32 { + range "1..255"; + } + default "255"; + description + "IPv4 TTL"; + } + leaf port-state { + type dt1:Ptp-port-state; + default "any"; + description + "Port state restriction"; + } + leaf delay-response-timeout { + type uint32 { + range "100..100000"; + } + units "millisecond"; + default "5000"; + description + "Delay-Response timeout, in milliseconds"; + } + leaf delay-response-grant-duration { + type uint32 { + range "60..1000"; + } + units "second"; + default "300"; + description + "Delay-Response unicast grant duration, in + seconds"; + } + leaf event-cos { + type uint32 { + range "0..7"; + } + default "6"; + description + "Event COS"; + } + leaf dscp { + type uint32 { + range "0..63"; + } + default "46"; + description + "DSCP"; + } + leaf ipv6-hop-limit { + type uint32 { + range "1..255"; + } + default "255"; + description + "IPv6 Hop Limit"; + } + leaf general-dscp { + type uint32 { + range "0..63"; + } + default "46"; + description + "General DSCP"; + } + leaf clock-operation { + type dt1:Ptp-clock-operation; + default "two-step"; + description + "Clock Operation"; + } + leaf announce-grant-duration { + type uint32 { + range "60..1000"; + } + units "second"; + default "300"; + description + "Announce unicast grant duration, in seconds"; + } + leaf unicast-grant-invalid-request { + type dt1:Ptp-invalid-unicast-grant-request-response; + default "reduce"; + description + "Invalid unicast grant request response"; + } + leaf event-dscp { + type uint32 { + range "0..63"; + } + default "46"; + description + "Event DSCP"; + } + leaf profile-name { + type xr:Cisco-ios-xr-string; + description + "Profile"; + } + } + } + container utc-offset { + description + "UTC offset configuration"; + container leap-second-file { + presence "Indicates a leap-second-file node is configured."; + description + "Source file containing leap second information"; + leaf source-url { + type string; + mandatory true; + description + "URL of source file"; + } + leaf polling-frequency { + type uint32 { + range "1..365"; + } + units "day"; + description + "Polling frequency, in days"; + } + } + container scheduled-offsets { + description + "Table for scheduled UTC offset configuration"; + list scheduled-offset { + key "date"; + description + "Scheduled UTC offset configuration"; + leaf date { + type xr:Cisco-ios-xr-string; + description + "Offset application date, in ISO-8601 format + (YYYY-MM-DD)"; + } + leaf offset { + type uint32 { + range "0..32767"; + } + units "second"; + mandatory true; + description + "UTC offset, in seconds"; + } + } + } + leaf base-offset { + type uint32 { + range "0..32767"; + } + units "second"; + description + "Base UTC offset configuration"; + } + } + container logging { + description + "PTP logging configuration"; + container best-master-clock { + description + "PTP best master clock logging configuration"; + leaf changes { + type empty; + description + "Enable best master clock changes logging"; + } + } + } + leaf uncalibrated-clock-class { + type uint32 { + range "0..255"; + } + status obsolete; + description + "Clock class to be used while acquiring + phase-lock to a parent clock. Note that + this is deprecated and should not be + used."; + } + container uncalibrated-clock-class2 { + presence "Indicates a uncalibrated-clock-class2 node is configured."; + description + "Clock class to be used while acquiring + phase-lock to a parent clock."; + leaf clock-class { + type uint32 { + range "0..255"; + } + mandatory true; + description + "Clock Class"; + } + leaf unless-from-holdover { + type boolean; + description + "Unless from holdover flag"; + } + } + container transparent-clock { + description + "Transparent clock configuration"; + container domains { + description + "Table of domains containing transparent clock + configuration"; + list domain { + key "domain"; + description + "Transparent clock domain configuration"; + leaf domain { + type dt1:Transparent-clock-domain; + description + "Domain"; + } + } + } + } + container virtual-port { + presence "CLI submode compatibility."; + description + "PTP virtual port configuration"; + leaf clock-accuracy { + type uint32 { + range "0..254"; + } + description + "Virtual port clock accuracy"; + } + leaf priority2 { + type uint32 { + range "0..255"; + } + description + "Virtual port priority2"; + } + leaf local-priority { + type uint32 { + range "1..255"; + } + description + "Virtual port local priority"; + } + leaf offset-scaled-log-variance { + type uint32 { + range "0..65535"; + } + description + "Virtual port OSLV"; + } + leaf priority1 { + type uint32 { + range "0..255"; + } + description + "Virtual port priority1"; + } + leaf clock-class { + type uint32 { + range "0..255"; + } + description + "Virtual port clock class"; + } + } + leaf time-of-day-priority { + type uint32 { + range "1..254"; + } + default "100"; + description + "Time-of-day priority"; + } + leaf frequency-priority { + type uint32 { + range "1..254"; + } + default "254"; + description + "Frequency priority"; + } + leaf holdover-spec-clock-class { + type uint32 { + range "0..255"; + } + description + "Holdover spec clock-class"; + } + leaf startup-clock-class { + type uint32 { + range "0..255"; + } + description + "Startup clock class value"; + } + leaf verify-checksum { + type empty; + description + "Enable verify-checksum"; + } + leaf min-clock-class { + type uint32 { + range "0..255"; + } + description + "Clocks with a clock-class higher than the + minimum clock class will not be considered for + selection as a parent clock."; + } + leaf holdover-spec-traceable-override { + type empty; + description + "Override time-traceability while in holdover"; + } + leaf double-failure-clock-class { + type uint32 { + range "0..255"; + } + description + "Double failure clock class value"; + } + leaf assisted-partial-timing-support { + type empty; + description + "Enable assisted partial timing support"; + } + leaf network-type-high-pdv { + type empty; + description + "The network has high packet delay variation"; + } + leaf holdover-spec-duration { + type uint32; + units "second"; + description + "Holdover spec duration (seconds)"; + } + leaf uncalibrated-traceable-override { + type empty; + description + "Override time-traceability to true while + acquiring phase lock to a parent clock."; + } + leaf physical-layer-frequency { + type empty; + description + "Disable PTP as a source for frequency as only + physical layer frequency sources are used"; + } + leaf freerun-clock-class { + type uint32 { + range "0..255"; + } + description + "Freerun clock class value"; + } + leaf servo-slow-tracking { + type uint32 { + range "8..984"; + } + description + "Restrict the rate, in ns per second, at which + the servo may track to update the time and + attain sync"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-datatypes.yang new file mode 100644 index 000000000..aab5a0ffb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-datatypes.yang @@ -0,0 +1,405 @@ +module Cisco-IOS-XR-ptp-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ptp-datatypes"; + prefix ptp-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ptp-time { + type enumeration { + enum "interval" { + value 0; + description + "Time interval in seconds"; + } + enum "frequency" { + value 1; + description + "Frequency per second"; + } + } + description + "Ptp time"; + } + + typedef Ptp-clock-advertisement-mode { + type enumeration { + enum "1588v2" { + value 0; + description + "Use 1588v2 clock selection"; + } + enum "telecom-profile" { + value 1; + description + "Use Telecom Profile clock selection"; + } + } + description + "Ptp clock advertisement mode"; + } + + typedef Ptp-encap { + type enumeration { + enum "ethernet" { + value 1; + description + "Ethernet Encapsulation"; + } + enum "ipv4" { + value 2; + description + "IPv4 Encapsulation"; + } + enum "ipv6" { + value 3; + description + "IPv6 Encapsulation"; + } + } + description + "Ptp encap"; + } + + typedef Ptp-time-period { + type enumeration { + enum "1" { + value 0; + description + "One"; + } + enum "2" { + value 1; + description + "Two"; + } + enum "4" { + value 2; + description + "Four"; + } + enum "8" { + value 3; + description + "Eight"; + } + enum "16" { + value 4; + description + "Sixteen"; + } + enum "32" { + value 5; + description + "Thirty Two"; + } + enum "64" { + value 6; + description + "Sixty Four"; + } + enum "128" { + value 7; + description + "One Hundred and Twenty-Eight"; + } + } + description + "Ptp time period"; + } + + typedef Ptp-clock-operation { + type enumeration { + enum "two-step" { + value 0; + description + "Two-step clock operation"; + } + enum "one-step" { + value 1; + description + "One-step clock operation"; + } + } + description + "Ptp clock operation"; + } + + typedef Ptp-clock-selection-mode { + type enumeration { + enum "1588v2" { + value 0; + description + "Use 1588v2 clock selection"; + } + enum "telecom-profile" { + value 1; + description + "Use Telecom Profile clock selection"; + } + } + description + "Ptp clock selection mode"; + } + + typedef Ptp-timescale { + type enumeration { + enum "ptp" { + value 0; + description + "PTP timescale"; + } + enum "arb" { + value 1; + description + "ARB timescale"; + } + } + description + "Ptp timescale"; + } + + typedef Transparent-clock-domain { + type string { + pattern "(all)"; + } + description + "all: Set for all domains"; + } + + typedef Ptp-delay-asymmetry-units { + type enumeration { + enum "nanoseconds" { + value 0; + description + "Nanoseconds"; + } + enum "microseconds" { + value 1; + description + "Microseconds"; + } + enum "milliseconds" { + value 2; + description + "Milliseconds"; + } + } + description + "Ptp delay asymmetry units"; + } + + typedef Ptp-time-source { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown"; + } + enum "atomic-clock" { + value 16; + description + "Atomic Clock"; + } + enum "gps" { + value 32; + description + "GPS"; + } + enum "terrestrial-radio" { + value 48; + description + "Terrestrial Radio"; + } + enum "ptp" { + value 64; + description + "PTP"; + } + enum "ntp" { + value 80; + description + "NTP"; + } + enum "hand-set" { + value 96; + description + "Hand set"; + } + enum "other" { + value 144; + description + "Other"; + } + enum "internal-oscillator" { + value 160; + description + "Internal Oscillator"; + } + } + description + "Ptp time source"; + } + + typedef Ptp-port-state { + type enumeration { + enum "any" { + value 0; + description + "Any port state allowed"; + } + enum "slave-only" { + value 1; + description + "Restrict to slave"; + } + enum "master-only" { + value 2; + description + "Restrict to master"; + } + } + description + "Ptp port state"; + } + + typedef Ptp-clock-profile { + type enumeration { + enum "default" { + value 0; + description + "Default clock profile"; + } + enum "g82651" { + value 1; + description + "G.8265.1 profile"; + } + enum "g82751" { + value 2; + description + "G.8275.1 profile"; + } + enum "g82752" { + value 3; + description + "G.8275.2 profile"; + } + } + description + "Ptp clock profile"; + } + + typedef Ptp-transport { + type enumeration { + enum "unicast" { + value 0; + description + "Unicast communication"; + } + enum "mixed-mode" { + value 1; + description + "Mixed-mode communication"; + } + enum "multicast" { + value 2; + description + "Multicast communication"; + } + } + description + "Ptp transport"; + } + + typedef Ptp-clock-id { + type enumeration { + enum "router-mac" { + value 0; + description + "Use the router's MAC"; + } + enum "user-mac" { + value 1; + description + "Use a user-specified MAC"; + } + enum "eui" { + value 2; + description + "Use a user-specified EUI-64 number"; + } + } + description + "Ptp clock id"; + } + + typedef Ptp-invalid-unicast-grant-request-response { + type enumeration { + enum "reduce" { + value 0; + description + "Reduce grant parameters"; + } + enum "deny" { + value 1; + description + "Deny grant"; + } + } + description + "Ptp invalid unicast grant request response"; + } + + typedef Ptp-telecom-clock { + type enumeration { + enum "telecom-grandmaster" { + value 0; + description + "Telecom grandmaster clock"; + } + enum "telecom-boundary" { + value 1; + description + "Telecom boundary clock"; + } + enum "telecom-slave" { + value 2; + description + "Telecom slave clock"; + } + } + description + "Ptp telecom clock"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper-sub1.yang new file mode 100644 index 000000000..ea74bb4e1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper-sub1.yang @@ -0,0 +1,2901 @@ +submodule Cisco-IOS-XR-ptp-oper-sub1 { + belongs-to Cisco-IOS-XR-ptp-oper { + prefix Cisco-IOS-XR-ptp-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ptp package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-05 { + description + "Add double-failure-clock-class information to show ptp ctrlr database"; + semver:module-version "2.2.0"; + } + revision 2020-09-07 { + description + "Show command updates for APTS and virtual port"; + semver:module-version "2.2.0"; + } + revision 2020-02-06 { + description + "Added valid flags for receiver clock information, sender clock information and master entry properties. + 2019-12-18 + Added checksum related packet drop reasons and servo status enums."; + semver:module-version "2.1.0"; + } + revision 2019-10-01 { + description + "Corrected enum names for servo. + 2019-09-30 + Added incompatible packet for non-negotiated setting in packet drop reasons."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-02-02 { + description + "Initial version."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ptp-leap-seconds-source { + type uint8; + description + "Ptp leap seconds source"; + } + + typedef Ptp-clock-leap-seconds { + type uint8; + description + "Ptp clock leap seconds"; + } + + typedef Ptp-msg-version { + type uint8; + description + "Ptp msg version"; + } + + typedef Ptp-bag-delay-mechanism { + type enumeration { + enum "e2e" { + value 0; + description + "End to end delay mechanism"; + } + enum "p2p" { + value 1; + description + "Peer to peer delay mechanism"; + } + } + description + "Delay Mechanism"; + } + + typedef Ptp-platform-servo-status { + type enumeration { + enum "ptp-platform-servo-status-unknown" { + value 0; + description + "ptp platform servo status unknown"; + } + enum "ptp-platform-servo-status-freerun" { + value 1; + description + "ptp platform servo status freerun"; + } + enum "ptp-platform-servo-status-acquiring" { + value 2; + description + "ptp platform servo status acquiring"; + } + enum "ptp-platform-servo-status-freq-locked" { + value 3; + description + "ptp platform servo status freq locked"; + } + enum "ptp-platform-servo-status-phase-aligned" { + value 4; + description + "ptp platform servo status phase aligned"; + } + enum "ptp-platform-servo-status-hold-over" { + value 5; + description + "ptp platform servo status hold over"; + } + } + description + "Ptp platform servo status"; + } + + typedef Ptp-bag-telecom-clock { + type enumeration { + enum "grandmaster" { + value 0; + description + "Grandmaster"; + } + enum "boundary" { + value 1; + description + "Boundary"; + } + enum "slave" { + value 2; + description + "Slave"; + } + } + description + "Telecom Clock"; + } + + typedef Ptp-bag-optional-string { + type string; + description + "Ptp bag optional string"; + } + + typedef Ptp-bag-profile { + type enumeration { + enum "default" { + value 0; + description + "1588v2 profile (default)"; + } + enum "g82651" { + value 1; + description + "G.8265.1 profile"; + } + enum "g82751" { + value 2; + description + "G.8275.1 profile"; + } + enum "g82752" { + value 3; + description + "G.8275.2 profile"; + } + } + description + "Profile"; + } + + typedef Ptp-bag-restrict-port-state { + type enumeration { + enum "any" { + value 0; + description + "Any"; + } + enum "slave-only" { + value 1; + description + "Slave only"; + } + enum "master-only" { + value 2; + description + "Master only"; + } + } + description + "Restrict Port State"; + } + + typedef Im-state-enum { + type enumeration { + enum "im-state-not-ready" { + description + "im state not ready"; + } + enum "im-state-admin-down" { + description + "im state admin down"; + } + enum "im-state-down" { + description + "im state down"; + } + enum "im-state-up" { + description + "im state up"; + } + enum "im-state-shutdown" { + description + "im state shutdown"; + } + enum "im-state-err-disable" { + description + "im state err disable"; + } + enum "im-state-down-immediate" { + description + "im state down immediate"; + } + enum "im-state-down-immediate-admin" { + description + "im state down immediate admin"; + } + enum "im-state-down-graceful" { + description + "im state down graceful"; + } + enum "im-state-begin-shutdown" { + description + "im state begin shutdown"; + } + enum "im-state-end-shutdown" { + description + "im state end shutdown"; + } + enum "im-state-begin-error-disable" { + description + "im state begin error disable"; + } + enum "im-state-end-error-disable" { + description + "im state end error disable"; + } + enum "im-state-begin-down-graceful" { + description + "im state begin down graceful"; + } + enum "im-state-reset" { + description + "im state reset"; + } + enum "im-state-operational" { + description + "im state operational"; + } + enum "im-state-not-operational" { + description + "im state not operational"; + } + enum "im-state-unknown" { + description + "im state unknown"; + } + enum "im-state-last" { + description + "im state last"; + } + } + description + "Im state enum"; + } + + typedef Ptp-bag-port-state { + type enumeration { + enum "initializing" { + value 0; + description + "Initializing state"; + } + enum "listen" { + value 1; + description + "Listen state"; + } + enum "passive" { + value 2; + description + "Passive state"; + } + enum "pre-master" { + value 3; + description + "Pre-Master state"; + } + enum "master" { + value 4; + description + "Master state"; + } + enum "uncalibrated" { + value 5; + description + "Uncalibrated state"; + } + enum "slave" { + value 6; + description + "Slave state"; + } + enum "faulty" { + value 7; + description + "Faulty state"; + } + } + description + "Port State"; + } + + typedef Ptp-delay-asymmetry { + type int32; + description + "Ptp delay asymmetry"; + } + + typedef Bag-in6-addr { + type inet:ipv6-address; + description + "Bag in6 addr"; + } + + typedef Ptp-bag-encap { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown encapsulation"; + } + enum "ethernet" { + value 1; + description + "Ethernet encapsulation"; + } + enum "ipv4" { + value 2; + description + "IPv4 encapsulation"; + } + enum "ipv6" { + value 3; + description + "IPv6 encapsulation"; + } + } + description + "Encapsulation"; + } + + typedef Ptp-domain-num { + type uint8; + description + "Ptp domain num"; + } + + typedef Ptp-bag-communication-model { + type enumeration { + enum "unicast" { + value 0; + description + "Unication communication"; + } + enum "mixed-mode" { + value 1; + description + "Mixed-mode communication"; + } + enum "multicast" { + value 2; + description + "Multicast communication"; + } + } + description + "Communication Model"; + } + + typedef Ptp-bag-clock-leap-seconds { + type enumeration { + enum "none" { + value 0; + description + "No leap second"; + } + enum "leap59" { + value 1; + description + "The last minute of the day has 59 seconds"; + } + enum "leap61" { + value 2; + description + "The last minute of the day has 61 seconds"; + } + } + units "second"; + description + "Leap Seconds"; + } + + typedef Ptp-bag-clock-timescale { + type enumeration { + enum "ptp" { + value 0; + description + "PTP timescale"; + } + enum "arb" { + value 1; + description + "ARB timescale"; + } + } + description + "Timescale"; + } + + typedef Ptp-bag-clock-time-source { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown"; + } + enum "atomic" { + value 16; + description + "Atomic clock"; + } + enum "gps" { + value 32; + description + "GPS clock"; + } + enum "terrestrial-radio" { + value 48; + description + "Terrestrial Radio"; + } + enum "ptp" { + value 64; + description + "Precision Time Protocol"; + } + enum "ntp" { + value 80; + description + "Network Time Protocol"; + } + enum "hand-set" { + value 96; + description + "Hand set"; + } + enum "other" { + value 144; + description + "Other Time Source"; + } + enum "internal-oscillator" { + value 160; + description + "Internal Oscillator"; + } + } + description + "Time source"; + } + + typedef Ptp-clock-oslv { + type uint16; + description + "Ptp clock oslv"; + } + + typedef Ptp-clock-accuracy { + type uint8; + description + "Ptp clock accuracy"; + } + + typedef Ptp-clock-class { + type uint8; + description + "Ptp clock class"; + } + + typedef Ptp-clock-priority { + type uint8; + description + "Ptp clock priority"; + } + + typedef Ptp-clock-id1 { + type uint64; + description + "Ptp clock id1"; + } + + typedef Ptp-port-num { + type uint16; + description + "Ptp port num"; + } + + grouping PTP-BAG-LEAP-SECONDS-ENTRY { + description + "Upcoming PTP leap-second entry"; + leaf offset { + type int16; + units "second"; + description + "The UTC offset (TAI - UTC), in seconds"; + } + leaf offset-start-date { + type uint64; + description + "The UNIX timestamp at which the offset becomes + valid"; + } + leaf offset-change { + type int16; + description + "The change in UTC offset on applying this offset"; + } + leaf offset-applied { + type boolean; + description + "Indicates whether the offset has been applied"; + } + } + + grouping PTP-BAG-UTC-OFFSET-INFO { + description + "UTC offset information"; + leaf offset { + type int16; + units "second"; + description + "The UTC offset (TAI - UTC), in seconds"; + } + leaf valid { + type boolean; + description + "Is the UTC offset valid?"; + } + leaf flag { + type Ptp-clock-leap-seconds; + description + "Indicates the duration of the final minute of + the current day"; + } + } + + grouping PTP-LEAP-SECONDS-INFO { + description + "PTP UTC offset information"; + container current-offset-info { + description + "The current UTC offset information"; + uses PTP-BAG-UTC-OFFSET-INFO; + } + container current-gm-offset-info { + description + "The UTC offset information recovered from the + current grandmaster"; + uses PTP-BAG-UTC-OFFSET-INFO; + } + container configured-offset-info { + description + "The currently configured UTC offset information"; + uses PTP-BAG-UTC-OFFSET-INFO; + } + container previous-gm-offset-info { + description + "The UTC offset information recovered from the + prevous grandmaster"; + uses PTP-BAG-UTC-OFFSET-INFO; + } + container hardware-offset-info { + description + "The UTC offset information taken from the + hardware"; + uses PTP-BAG-UTC-OFFSET-INFO; + } + container gm-leap-second { + description + "The upcoming leap second advertised by the + grandmaster (if there is one)"; + uses PTP-BAG-LEAP-SECONDS-ENTRY; + } + leaf source-type { + type Ptp-leap-seconds-source; + description + "The current source of the UTC offset information"; + } + leaf source-file { + type Ptp-bag-optional-string; + description + "The URL of the file containing leap second + information"; + } + leaf source-expiry-date { + type uint32; + units "second"; + description + "Source file expiry timestamp, in seconds since + UNIX epoch"; + } + leaf polling-frequency { + type uint32; + units "day"; + description + "Source file polling frequency, in days"; + } + list configured-leap-second { + description + "The list of upcoming configured leap second + updates"; + uses PTP-BAG-LEAP-SECONDS-ENTRY; + } + } + + grouping PTP-GRANDMASTER-INFO { + description + "Grandmaster clock information"; + container clock-properties { + description + "Grandmaster clock"; + uses PTP-BAG-CLOCK; + } + container address { + description + "The grandmaster's address information"; + uses PTP-BAG-ADDRESS; + } + leaf used-for-time { + type boolean; + description + "Whether the grandmaster is setting time-of-day + on the system"; + } + leaf used-for-frequency { + type boolean; + description + "Whether the grandmaster is setting frequency on + the system"; + } + leaf known-for-time { + type uint32; + units "second"; + description + "How long the clock has been grandmaster for, in + seconds"; + } + leaf domain { + type Ptp-domain-num; + description + "The PTP domain that the grandmaster is in"; + } + leaf running-drrm { + type boolean; + description + "Whether DRRM is running for the grandmaster"; + } + } + + grouping PTP-BAG-GL-CONFIG-ERRORS { + description + "Global Configuration Errors"; + leaf domain { + type boolean; + description + "Domain not compatible with configured profile"; + } + leaf profile-priority1-config { + type boolean; + description + "Priority1 configuration is not compatible with + configured profile"; + } + leaf profile-priority2-value { + type boolean; + description + "Priority2 value is not compatible with + configured profile"; + } + leaf utc-offset-change { + type boolean; + description + "Leap seconds configuration contains an invalid + UTC offset change"; + } + leaf physical-layer-frequency { + type boolean; + description + "Physical Layer Frequency configuration is not + compatible with G.8265.1 profile"; + } + leaf network-type { + type boolean; + description + "Network type high PDV configuration is only + compatible with G.8265.1 profile"; + } + leaf profile-virtual-port { + type boolean; + description + "Virtual Port configuration is not compatible + with default profile"; + } + leaf virtual-port-priority1-config { + type boolean; + description + "Virtual Port priority1 configuration is not + compatible with configured profile"; + } + leaf virtual-port-priority2-value { + type boolean; + description + "Virtual Port priority2 value is not compatible + with configured profile"; + } + leaf virtual-port-profile-clock-class { + type boolean; + description + "Virtual port clock class is not compatible with + configured profile"; + } + leaf virtual-port-clock-accuracy { + type boolean; + description + "Virtual port clock accuracy is not compatible + with configured profile"; + } + leaf virtual-port-oslv { + type boolean; + description + "Virtual port OSLV is not compatible with + configured profile"; + } + leaf virtual-port-local-priority { + type boolean; + description + "Virtual port local priority configuration is not + compatible with configured profile"; + } + leaf apts-clock-type { + type boolean; + description + "APTS configuration is not compatible with + configured clock type"; + } + leaf apts-clock-profile { + type boolean; + description + "APTS configuration is not compatible with + configured profile"; + } + } + + grouping PTP-GL-CONFIG-ERRORS-INFO { + description + "Global configuration errors information"; + container configuration-errors { + description + "Configuration Errors"; + uses PTP-BAG-GL-CONFIG-ERRORS; + } + leaf clock-profile { + type Ptp-bag-profile; + description + "The clock profile"; + } + leaf clock-profile-set { + type boolean; + description + "Is the clock profile set"; + } + leaf telecom-clock-type { + type Ptp-bag-telecom-clock; + description + "Configured telecom clock type"; + } + leaf domain-number { + type Ptp-domain-num; + description + "The PTP domain"; + } + leaf priority2 { + type Ptp-clock-priority; + description + "The configured priority2 value"; + } + leaf virtual-port-priority2 { + type Ptp-clock-priority; + description + "The configured priority2 value of the virtual + port"; + } + leaf virtual-port-clock-class { + type Ptp-clock-class; + description + "The configured clock class of the virtual port"; + } + leaf virtual-port-clock-accuracy { + type Ptp-clock-accuracy; + description + "The configured clock accuracy of the virtual + port"; + } + leaf virtual-port-oslv { + type Ptp-clock-oslv; + description + "The configured oslv of the virtual port"; + } + } + + grouping PTP-TIME-PROPERTIES-DS-INFO { + description + "timeProprtiesDS information"; + leaf current-utc-offset { + type int16; + description + "The current UTC offset"; + } + leaf current-utc-offset-valid { + type boolean; + description + "Whether the current UTC offset is valid"; + } + leaf leap59 { + type boolean; + description + "Whether the last minute of the day has 59 + seconds"; + } + leaf leap61 { + type boolean; + description + "Whether the last minute of the day has 61 + seconds"; + } + leaf time-traceable { + type boolean; + description + "Whether the time-of-day source is traceable"; + } + leaf frequency-traceable { + type boolean; + description + "Whther the frequency source is traceable"; + } + leaf ptp-timescale { + type boolean; + description + "Whether the timescale being used is the PTP + timescale"; + } + leaf time-source { + type Ptp-bag-clock-time-source; + description + "The physical time-source of the GM clock"; + } + } + + grouping PTP-PORT-DS-INFO { + description + "portDS information"; + leaf clock-id { + type Ptp-clock-id1; + description + "The ID of the local-clock"; + } + leaf port-number { + type Ptp-port-num; + description + "The port number"; + } + leaf port-state { + type Ptp-bag-port-state; + description + "The port state"; + } + leaf log-min-delay-req-interval { + type int16; + description + "The log (base 2) of the minimum delay-request + interval"; + } + leaf peer-mean-path-delay { + type int64; + description + "The mean path delay between peers"; + } + leaf log-announce-interval { + type int16; + description + "The log (base 2) of the announce interval"; + } + leaf annoucne-receipt-timeout { + type uint32; + description + "The announce timeout"; + } + leaf log-sync-interval { + type int16; + description + "The log (base 2) of the sync interval"; + } + leaf delay-mechanism { + type Ptp-bag-delay-mechanism; + description + "The delay mechanism being used on this port"; + } + leaf log-min-p-delay-req-interval { + type int16; + description + "The log (base 2) of the minimum + peer-delay-request interval"; + } + leaf version-number { + type Ptp-msg-version; + description + "The version of IEEE 1588 being run"; + } + leaf local-priority { + type uint32; + description + "Local priority of the local clock"; + } + leaf master-only { + type boolean; + description + "Is the port master-only?"; + } + leaf signal-fail { + type boolean; + description + "Signal fail status of the port"; + } + } + + grouping PTP-PARENT-DS-INFO { + description + "parentDS information"; + leaf parent-clock-id { + type Ptp-clock-id1; + description + "The Clock ID of the parent clock"; + } + leaf parent-port-number { + type Ptp-port-num; + description + "The port number on which the parent clock is + received"; + } + leaf parent-stats { + type boolean; + description + "Whether the parentStats is valid"; + } + leaf observed-parent-oslv { + type Ptp-clock-oslv; + description + "The observed parent offset scaled log variance"; + } + leaf observed-parent-clock-phase-change-rate { + type uint32; + description + "The observed rate of change of phase of the + parent clock"; + } + leaf gm-clock-id { + type Ptp-clock-id1; + description + "The Clock ID of the GM"; + } + leaf gm-clock-class { + type Ptp-clock-class; + description + "The clock class of the GM"; + } + leaf gm-clock-accuracy { + type Ptp-clock-accuracy; + description + "The clock accuracy of the GM"; + } + leaf gmoslv { + type Ptp-clock-oslv; + description + "The offset scaled log variance of the GM"; + } + leaf gm-priority1 { + type Ptp-clock-priority; + description + "The priority1 of the GM"; + } + leaf gm-priority2 { + type Ptp-clock-priority; + description + "The priority2 of the GM"; + } + } + + grouping PTP-CURRENT-DS-INFO { + description + "currentDS information"; + leaf steps-removed { + type uint16; + description + "How many steps removed this clock is from the GM"; + } + leaf offset-from-master { + type int64; + description + "The UTC offset of the local-clock from the GM"; + } + leaf mean-path-delay { + type int64; + description + "The mean path delay between the foreign-master + and the local-clock"; + } + } + + grouping PTP-DEFAULT-DS-INFO { + description + "defaultDS information"; + leaf two-step-flag { + type boolean; + description + "Is the twoStepFlag set for this clock"; + } + leaf clock-id { + type Ptp-clock-id1; + description + "The local-clock ID"; + } + leaf number-ports { + type uint32; + description + "The number of active PTP ports on this clock"; + } + leaf clock-class { + type Ptp-clock-class; + description + "The clock class of the local-clock"; + } + leaf clock-accuracy { + type Ptp-clock-accuracy; + description + "The accuracy of the local-clock"; + } + leaf oslv { + type Ptp-clock-oslv; + description + "The offset scaled log variance of the + local-clock"; + } + leaf priority1 { + type Ptp-clock-priority; + description + "The priority1 of the local-clock"; + } + leaf priority2 { + type Ptp-clock-priority; + description + "The priority2 of the local-clock"; + } + leaf domain-number { + type Ptp-domain-num; + description + "The domain of the local-clock"; + } + leaf slave-only { + type boolean; + description + "Whether the local-clock is globally configured + as slave-only"; + } + leaf local-priority { + type uint32; + description + "Local priority of the local clock"; + } + leaf signal-fail { + type boolean; + description + "Signal fail status of the local clock"; + } + } + + grouping PTP-ADVERTISED-CLOCK-INFO { + description + "Advertised clock information"; + container clock-properties { + description + "Advertised Clock"; + uses PTP-BAG-CLOCK; + } + leaf domain { + type Ptp-domain-num; + description + "The PTP domain of that the advertised clock is + in"; + } + leaf time-source-configured { + type boolean; + description + "Whether the advertised time source is configured"; + } + leaf received-time-source { + type Ptp-bag-clock-time-source; + description + "The time source received from the parent clock"; + } + leaf timescale-configured { + type boolean; + description + "Whether the advertised timescale is configured"; + } + leaf received-timescale { + type Ptp-bag-clock-timescale; + description + "The timescale received from the parent clock"; + } + } + + grouping PTP-BAG-PEER-PACKET-COUNTERS { + description + "PTP peer packet counters"; + container address { + description + "Peer address"; + uses PTP-BAG-ADDRESS; + } + container counters { + description + "Packet counters"; + uses PTP-BAG-PACKET-COUNTERS; + } + } + + grouping PTP-IF-PACKET-COUNTER-INFO { + description + "PTP interface packet counters"; + container counters { + description + "Packet counters"; + uses PTP-BAG-PACKET-COUNTERS; + } + list peer-counter { + description + "Packet counters for each peer on this interface"; + uses PTP-BAG-PEER-PACKET-COUNTERS; + } + } + + grouping PTP-BAG-VIRTUAL-PORT { + description + "PTP Virtual Port"; + leaf configured { + type boolean; + description + "Configured"; + } + leaf connected { + type boolean; + description + "Connected"; + } + leaf priority1 { + type Ptp-clock-priority; + description + "Priority 1"; + } + leaf priority2 { + type Ptp-clock-priority; + description + "Priority 2"; + } + leaf class { + type Ptp-clock-class; + description + "Class"; + } + leaf accuracy { + type Ptp-clock-accuracy; + description + "Accuracy"; + } + leaf offset-log-variance { + type Ptp-clock-oslv; + description + "Offset log variance"; + } + leaf local-priority { + type Ptp-clock-priority; + description + "The local priority"; + } + } + + grouping PTP-LOCAL-CLOCK-INFO { + description + "Local clock information"; + container clock-properties { + description + "Local clock"; + uses PTP-BAG-CLOCK; + } + container virtual-port { + description + "Virtual port"; + uses PTP-BAG-VIRTUAL-PORT; + } + leaf domain { + type Ptp-domain-num; + description + "The PTP domain of the local clock"; + } + leaf grandmaster { + type boolean; + description + "Whether the local clock is the grandmaster"; + } + leaf servo-status { + type Ptp-platform-servo-status; + description + "Servo status"; + } + leaf mean-path-delay { + type int64; + units "nanosecond"; + description + "Mean path delay of master (nanoseconds)"; + } + leaf offset-from-master { + type int64; + units "nanosecond"; + description + "Offset from master (nanoseconds)"; + } + leaf apts-enabled { + type boolean; + description + "Whether assisted partial timing support is + enabled"; + } + } + + grouping PTP-BAG-PROFILE-INTEROP { + description + "PTP Profile Interop Status"; + leaf from-priority1 { + type Ptp-clock-priority; + description + "From Priority 1"; + } + leaf to-priority1 { + type Ptp-clock-priority; + description + "To Priority 1"; + } + leaf from-priority2 { + type Ptp-clock-priority; + description + "From Priority 2"; + } + leaf to-priority2 { + type Ptp-clock-priority; + description + "To Priority 2"; + } + leaf from-accuracy { + type Ptp-clock-accuracy; + description + "From Accuracy"; + } + leaf to-accuracy { + type Ptp-clock-accuracy; + description + "To Accuracy"; + } + leaf from-clock-class { + type Ptp-clock-class; + description + "From Clock Class"; + } + leaf to-clock-class { + type Ptp-clock-class; + description + "To Clock Class"; + } + leaf from-offset-log-variance { + type Ptp-clock-oslv; + description + "From Offset log variance"; + } + leaf to-offset-log-variance { + type Ptp-clock-oslv; + description + "To Offset log variance"; + } + } + + grouping PTP-BAG-PROFILE-INTEROP-PEER { + description + "PTP Profile Interop Peer Status"; + container address { + description + "Peer address"; + uses PTP-BAG-ADDRESS; + } + container interop { + description + "Interop information"; + uses PTP-BAG-PROFILE-INTEROP; + } + } + + grouping PTP-IF-INTEROP-INFO { + description + "PTP interface interop information"; + container egress-interop { + description + "Egress interop information"; + uses PTP-BAG-PROFILE-INTEROP; + } + leaf local-domain { + type Ptp-domain-num; + description + "The PTP domain configured for this interface"; + } + leaf interop-domain { + type Ptp-domain-num; + description + "The PTP domain that is being interoperated with"; + } + leaf local-profile { + type Ptp-bag-profile; + description + "The PTP Profile configured for this interface"; + } + leaf interop-profile { + type Ptp-bag-profile; + description + "The PTP profile that is being interoperated with"; + } + list ingress-interop { + description + "Per-peer ingress interop information"; + uses PTP-BAG-PROFILE-INTEROP-PEER; + } + } + + grouping PTP-BAG-CONFIG-ERRORS { + description + "Configuration Errors"; + leaf global-ptp { + type boolean; + description + "PTP enabled on interface but not globally"; + } + leaf ethernet-transport { + type boolean; + description + "Ethernet transport configured but not supported"; + } + leaf one-step { + type boolean; + description + "One step clock operation configured but not + supported"; + } + leaf slave { + type boolean; + description + "Slave-operation configured but not supported"; + } + leaf ipv6 { + type boolean; + description + "IPv6 transport configured but not supported"; + } + leaf multicast { + type boolean; + description + "Multicast configured but not supported"; + } + leaf profile-not-global { + type boolean; + description + "Profile is referenced but not globally + configured"; + } + leaf local-priority { + type boolean; + description + "Local priority configuration is not compatible + with profile"; + } + leaf profile-ethernet { + type boolean; + description + "Ethernet transport is not compatible with + profile"; + } + leaf profile-ipv4 { + type boolean; + description + "IPv6 transport is not compatible with profile"; + } + leaf profile-ipv6 { + type boolean; + description + "IPv6 transport is not compatible with profile"; + } + leaf profile-unicast { + type boolean; + description + "Unicast is not compatible with profile"; + } + leaf profile-multicast { + type boolean; + description + "Multicast is not compatible with profile"; + } + leaf profile-mixed { + type boolean; + description + "Mixed-mode multicast is not compatible with + profile"; + } + leaf profile-master-unicast { + type boolean; + description + "Unicast master is not compatible with profile"; + } + leaf profile-master-multicast { + type boolean; + description + "Multicast master is not compatible with profile"; + } + leaf profile-master-mixed { + type boolean; + description + "Mixed-mode multicast master is not compatible + with profile"; + } + leaf target-address-ipv4 { + type boolean; + description + "Ethernet multicast target-address is configured, + but transport is IPv4"; + } + leaf target-address-ipv6 { + type boolean; + description + "Ethernet multicast target-address is configured, + but transport is IPv6"; + } + leaf ipv4ttl { + type boolean; + description + "IPv4 TTL value configured but transport is not + IPv4"; + } + leaf ipv6-hop-limit { + type boolean; + description + "IPv6 hop limit value configured but transport is + not IPv6"; + } + leaf profile-port-state { + type boolean; + description + "Port state restriction is not compatible with + telecom clock type"; + } + leaf profile-announce-interval { + type boolean; + description + "Announce interval is not compatible with profile"; + } + leaf profile-sync-interval { + type boolean; + description + "Sync interval is not compatible with profile"; + } + leaf profile-delay-req-interval { + type boolean; + description + "Delay request interval is not compatible with + profile"; + } + leaf profile-sync-timeout { + type boolean; + description + "Sync timeout configuration is not compatible + with profile"; + } + leaf profile-delay-resp-timeout { + type boolean; + description + "Delay response timeout configuration is not + compatible with profile"; + } + leaf invalid-grant-reduction { + type boolean; + description + "Reducing invalid unicast grants is not + compatible with configured profile"; + } + leaf invalid-interop-domain { + type boolean; + description + "Domain is not compatible with configured profile + interop"; + } + leaf invalid-interop-ingress-clock-class-default { + type boolean; + description + "Ingress conversion clock class default is not + compatible with configured profile interop"; + } + leaf invalid-interop-ingress-priority1 { + type boolean; + description + "Ingress conversion priority1 is not compatible + with configured profile interop"; + } + leaf invalid-interop-ingress-clock-accuracy { + type boolean; + description + "Ingress conversion clock-accuracy is not + compatible with configured profile interop"; + } + leaf invalid-interop-ingress-oslv { + type boolean; + description + "Ingress conversion OSLV not compatible with + configured profile interop"; + } + leaf invalid-interop-egress-clock-class-default { + type boolean; + description + "Egress conversion clock class default is not + compatible with configured profile interop"; + } + leaf invalid-interop-egress-priority1 { + type boolean; + description + "Egress conversion priority1 is not compatible + with configured profile interop"; + } + leaf invalid-interop-egress-priority2 { + type boolean; + description + "Egress conversion priority2 is not compatible + with configured profile interop"; + } + leaf invalid-interop-egress-clock-accuracy { + type boolean; + description + "Egress conversion clock-accuracy is not + compatible with configured profile interop"; + } + leaf invalid-interop-egress-oslv { + type boolean; + description + "Egress conversion OSLV not compatible with + configured profile interop"; + } + leaf invalid-master-config-clock-type { + type boolean; + description + "Master configuration is not compatible with + configured clock-type"; + } + leaf invalid-slave-config-clock-type { + type boolean; + description + "Slave configuration is not compatible with + configured clock-type"; + } + leaf invalid-master-config-port-state { + type boolean; + description + "Master configuration is not compatible with + configured port-state"; + } + leaf invalid-slave-config-port-state { + type boolean; + description + "Slave configuration is not compatible with + configured port-state"; + } + leaf delay-asymmetry-config-clock-type { + type boolean; + description + "Delay asymmetry configuration is not compatible + with configuredclock-type"; + } + leaf delay-asymmetry-config-port-state { + type boolean; + description + "Delay asymmetry configuration is not compatible + with configuredport-state"; + } + leaf-list invalid-interop-ingress-clock-class-map-from-val { + type Ptp-clock-class; + description + "List of ingress conversion clock class mapping + 'from values' that are not compatible with the + configure profile interop"; + } + leaf-list invalid-interop-ingress-clock-class-map-to-val { + type Ptp-clock-class; + description + "List of ingress conversion clock class mapping + 'to values' that are not compatible with the + configure profile interop"; + } + leaf-list invalid-interop-egress-clock-class-map-from-val { + type Ptp-clock-class; + description + "List of egress conversion clock class mapping + 'from values' that are not compatible with the + configure profile interop"; + } + leaf-list invalid-interop-egress-clock-class-map-to-val { + type Ptp-clock-class; + description + "List of egress conversion clock class mapping + 'to values' that are not compatible with the + configure profile interop"; + } + } + + grouping PTP-IF-CONFIG-ERRORS-ENTRY { + description + "Configuration Errors Entry"; + container configuration-errors { + description + "Configuration Errors"; + uses PTP-BAG-CONFIG-ERRORS; + } + leaf configuration-profile-name { + type Ptp-bag-optional-string; + description + "Configuration profile name, if a profile is + selected"; + } + leaf clock-profile { + type Ptp-bag-profile; + description + "The clock profile"; + } + leaf telecom-clock-type { + type Ptp-bag-telecom-clock; + description + "The telecom clock type"; + } + leaf restrict-port-state { + type Ptp-bag-restrict-port-state; + description + "Restriction on the port state"; + } + leaf interop-profile { + type Ptp-bag-profile; + description + "The clock profile to interoperate with, if + interoperation is configured"; + } + } + + grouping PTP-BAG-DROP-REASONS { + description + "Drop Reasons"; + leaf not-ready { + type uint32; + description + "Not ready for packets"; + } + leaf wrong-domain { + type uint32; + description + "Wrong domain number"; + } + leaf too-short { + type uint32; + description + "Packet too short"; + } + leaf looped-same-port { + type uint32; + description + "Local packet received, same port number"; + } + leaf looped-higher-port { + type uint32; + description + "Local packet received, higher port number"; + } + leaf looped-lower-port { + type uint32; + description + "Local packet received, lower port number"; + } + leaf no-timestamp { + type uint32; + description + "No timestamp received with packet"; + } + leaf zero-timestamp { + type uint32; + description + "Zero timestamp received with packet"; + } + leaf invalid-tl-vs { + type uint32; + description + "Invalid TLVs received in packet"; + } + leaf not-for-us { + type uint32; + description + "Packet not for us"; + } + leaf not-listening { + type uint32; + description + "Not listening for packets on this interface"; + } + leaf wrong-master { + type uint32; + description + "Packet from incorrect master"; + } + leaf unknown-master { + type uint32; + description + "Packet from unknown master"; + } + leaf not-master { + type uint32; + description + "Packet only handled in Master state"; + } + leaf not-slave { + type uint32; + description + "Packet only handled in Slave state"; + } + leaf not-granted { + type uint32; + description + "Packet from peer not granted unicast"; + } + leaf too-slow { + type uint32; + description + "Packet received too late"; + } + leaf invalid-packet { + type uint32; + description + "Invalid packet or packet metadata"; + } + leaf wrong-sequence-id { + type uint32; + description + "Unexpected sequence ID"; + } + leaf no-offload-session { + type uint32; + description + "No offload session"; + } + leaf not-supported { + type uint32; + description + "PTP packet type not supported"; + } + leaf min-clock-class { + type uint32; + description + "Clock class below minimum"; + } + leaf bad-clock-class { + type uint32; + description + "Illegal clock class (255) in announce messages"; + } + leaf reserved-clock-id { + type uint32; + description + "Reserved Clock ID"; + } + leaf steps-removed { + type uint32; + description + "Steps removed too high"; + } + leaf g8265-1-incompatible { + type uint32; + description + "Packet not compatible with G.8265.1 profile"; + } + leaf g8275-1-incompatible { + type uint32; + description + "Packet not compatible with G.8275.1 profile"; + } + leaf g8275-2-incompatible { + type uint32; + description + "Packet not compatible with G.8275.2 profile"; + } + leaf incorrect-address { + type uint32; + description + "Packet sent to incorrect address"; + } + leaf non-negotiated { + type uint32; + description + "Packet not compatible with non-negotiated"; + } + leaf verify-checksum-failed { + type uint32; + description + "Packet IPv6 UDP checksum check failed"; + } + leaf ipv4-verify-checksum { + type uint32; + description + "IPv4 packet has corrupted checksum"; + } + } + + grouping PTP-BAG-PACKET-COUNTERS { + description + "PTP packet counters"; + leaf announce-sent { + type uint32; + description + "Number of announce packets sent"; + } + leaf announce-received { + type uint32; + description + "Number of announce packets received"; + } + leaf announce-dropped { + type uint32; + description + "Number of announce packets dropped"; + } + leaf sync-sent { + type uint32; + description + "Number of sync packets sent"; + } + leaf sync-received { + type uint32; + description + "Number of sync packets received"; + } + leaf sync-dropped { + type uint32; + description + "Number of sync packetsdropped"; + } + leaf follow-up-sent { + type uint32; + description + "Number of follow-up packets sent"; + } + leaf follow-up-received { + type uint32; + description + "Number of follow-up packets received"; + } + leaf follow-up-dropped { + type uint32; + description + "Number of follow-up packets dropped"; + } + leaf delay-request-sent { + type uint32; + description + "Number of delay-request packets sent"; + } + leaf delay-request-received { + type uint32; + description + "Number of delay-request packets received"; + } + leaf delay-request-dropped { + type uint32; + description + "Number of delay-request packets dropped"; + } + leaf delay-response-sent { + type uint32; + description + "Number of delay-response packets sent"; + } + leaf delay-response-received { + type uint32; + description + "Number of delay-response packets received"; + } + leaf delay-response-dropped { + type uint32; + description + "Number of delay-response packets dropped"; + } + leaf peer-delay-request-sent { + type uint32; + description + "Number of peer-delay-request packets sent"; + } + leaf peer-delay-request-received { + type uint32; + description + "Number of peer-delay-request packets received"; + } + leaf peer-delay-request-dropped { + type uint32; + description + "Number of peer-delay-request packets dropped"; + } + leaf peer-delay-response-sent { + type uint32; + description + "Number of peer-delay-response packets sent"; + } + leaf peer-delay-response-received { + type uint32; + description + "Number of peer-delay-response packets received"; + } + leaf peer-delay-response-dropped { + type uint32; + description + "Number of peer-delay-response packets dropped"; + } + leaf peer-delay-response-follow-up-sent { + type uint32; + description + "Number of peer-delay-response follow-up packets + sent"; + } + leaf peer-delay-response-follow-up-received { + type uint32; + description + "Number of peer-delay-response follow-up packets + received"; + } + leaf peer-delay-response-follow-up-dropped { + type uint32; + description + "Number of peer-delay-response follow-up packets + dropped"; + } + leaf signaling-sent { + type uint32; + description + "Number of signaling packets sent"; + } + leaf signaling-received { + type uint32; + description + "Number of signaling packets received"; + } + leaf signaling-dropped { + type uint32; + description + "Number of signaling packets dropped"; + } + leaf management-sent { + type uint32; + description + "Number of management messages sent"; + } + leaf management-received { + type uint32; + description + "Number of management messages received"; + } + leaf management-dropped { + type uint32; + description + "Number of management messages dropped"; + } + leaf other-packets-sent { + type uint32; + description + "Number of other packets sent"; + } + leaf other-packets-received { + type uint32; + description + "Number of other packets received"; + } + leaf other-packets-dropped { + type uint32; + description + "Number of other packets dropped"; + } + leaf total-packets-sent { + type uint32; + description + "Total number of packets sent"; + } + leaf total-packets-received { + type uint32; + description + "Total number of packets received"; + } + leaf total-packets-dropped { + type uint32; + description + "Total number of packets dropped"; + } + } + + grouping PTP-NODE-PACKET-COUNTER-INFO { + description + "PTP node packet counters"; + container counters { + description + "Packet counters"; + uses PTP-BAG-PACKET-COUNTERS; + } + container drop-reasons { + description + "Drop reasons"; + uses PTP-BAG-DROP-REASONS; + } + } + + grouping PTP-BAG-UNICAST-PEER { + description + "PTP Unicast Peer"; + container address { + description + "The address of the unicast peer"; + uses PTP-BAG-ADDRESS; + } + container announce-grant { + description + "Unicast grant information for announce messages"; + uses PTP-BAG-UNICAST-GRANT; + } + container sync-grant { + description + "Unicast grant information for sync messages"; + uses PTP-BAG-UNICAST-GRANT; + } + container delay-response-grant { + description + "Unicast grant information for delay-response + messages"; + uses PTP-BAG-UNICAST-GRANT; + } + } + + grouping PTP-IF-UNICAST-PEER-INFO { + description + "PTP interface unicast peers"; + leaf name { + type string; + description + "Interface name"; + } + leaf port-number { + type Ptp-port-num; + description + "Port number"; + } + list peers { + description + "Unicast Peers"; + uses PTP-BAG-UNICAST-PEER; + } + list foreign-master { + description + "Unicast Foreign Masters"; + uses PTP-BAG-UNICAST-PEER; + } + } + + grouping PTP-BAG-CLOCK-CLASS-MAPPING { + description + "PTP Clock Class Mapping"; + leaf from-clock-class { + type Ptp-clock-class; + description + "From clock class"; + } + leaf to-clock-class { + type Ptp-clock-class; + description + "To clock class"; + } + } + + grouping PTP-BAG-PROFILE-INTEROP-CFG { + description + "PTP Profile Interop Configuration"; + leaf priority1 { + type Ptp-clock-priority; + description + "Priority 1"; + } + leaf priority2 { + type Ptp-clock-priority; + description + "Priority 2"; + } + leaf accuracy { + type Ptp-clock-accuracy; + description + "Accuracy"; + } + leaf class-default { + type Ptp-clock-class; + description + "Class Default"; + } + leaf offset-log-variance { + type Ptp-clock-oslv; + description + "Offset log variance"; + } + list class-mapping { + description + "Class Mapping"; + uses PTP-BAG-CLOCK-CLASS-MAPPING; + } + } + + grouping PTP-BAG-MASTER-TABLE-ENTRY { + description + "PTP Master Table Entry"; + container address { + description + "The address of the master clock"; + uses PTP-BAG-ADDRESS; + } + leaf communication-model { + type Ptp-bag-communication-model; + description + "The configured communication model of the master + clock"; + } + leaf priority { + type uint8; + description + "The priority of the master clock, if it is set"; + } + leaf known { + type boolean; + description + "Whether the interface is receiving messages from + this master"; + } + leaf is-knownvalid { + type boolean; + description + "Does the known boolean contain valid information"; + } + leaf qualified { + type boolean; + description + "The master is qualified for best master clock + selection"; + } + leaf is-qualified-valid { + type boolean; + description + "Does the Qualified boolean contain valid + information"; + } + leaf is-grandmaster { + type boolean; + description + "Whether this is the grandmaster"; + } + leaf is-is-grandmaster-valid { + type boolean; + description + "Does the IsGrandmaster boolean contain valid + information"; + } + leaf ptsf-loss-announce { + type uint8; + description + "Announced messages are not being received from + the master"; + } + leaf ptsf-loss-sync { + type uint8; + description + "Sync messages are not being received from the + master"; + } + leaf are-ptsf-valid { + type boolean; + description + "Do the PTSF values contain valid information"; + } + leaf is-nonnegotiated { + type boolean; + description + "Whether this master uses non-negotiated unicast"; + } + } + + grouping PTP-BAG-IPV4-ADDR-LIST { + description + "List of IPv4 addresses"; + leaf-list addr { + type inet:ipv4-address; + description + "List of IPv4 addresses"; + } + } + + grouping PTP-BAG-IPV6-ADDR-LIST { + description + "List of IPv6 addresses"; + leaf-list addr { + type Bag-in6-addr; + description + "List of IPv6 addresses"; + } + } + + grouping PTP-IF-INFO { + description + "PTP interface information"; + container ipv6-address-array { + description + "List of Ipv6 addresses, if IPv6 encapsulation is + being used. If a source address is configured, + this is the only item in the list"; + uses PTP-BAG-IPV6-ADDR-LIST; + } + container ipv4-address-array { + description + "List of IPv4 addresses, if IPv4 encapsulation is + being used. The first address is the primary + address. If a source address is configured, this + is the only item in the list."; + uses PTP-BAG-IPV4-ADDR-LIST; + } + container mac-address { + description + "MAC address, if Ethernet encapsulation is being + used"; + uses PTP-BAG-MAC-ADDR-TYPE; + } + container ingress-conversion { + description + "Details of any ingress conversion"; + uses PTP-BAG-PROFILE-INTEROP-CFG; + } + container egress-conversion { + description + "Details of any egress conversion"; + uses PTP-BAG-PROFILE-INTEROP-CFG; + } + leaf port-state { + type Ptp-bag-port-state; + description + "Port state"; + } + leaf port-number { + type Ptp-port-num; + description + "Port number"; + } + leaf line-state { + type Im-state-enum; + description + "Line state"; + } + leaf interface-type { + type string; + description + "Interface Type"; + } + leaf encapsulation { + type Ptp-bag-encap; + description + "Encapsulation"; + } + leaf ipv6-address { + type Bag-in6-addr; + description + "Ipv6 source address for interface running PTP, + if IPv6 encapsulation is being used"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPv4 source address for interface running PTP, + if IPv4 encapsulation is being used"; + } + leaf two-step { + type boolean; + description + "Two step delay-request mechanism is being used"; + } + leaf communication-model { + type Ptp-bag-communication-model; + description + "Communication model configured on the interface"; + } + leaf log-sync-interval { + type int32; + description + "Log of the interface's sync interval"; + } + leaf log-announce-interval { + type int32; + description + "Log of the interface's announce interval"; + } + leaf announce-timeout { + type uint32; + description + "Announce timeout"; + } + leaf log-min-delay-request-interval { + type int32; + description + "Log of the interface's Minimum delay-request + interval"; + } + leaf configured-port-state { + type Ptp-bag-restrict-port-state; + description + "The configured port state"; + } + leaf supports-unicast { + type boolean; + description + "The interface supports unicast"; + } + leaf supports-master { + type boolean; + description + "The interface supports operation in master mode"; + } + leaf supports-one-step { + type boolean; + description + "The interface supports one-step operation"; + } + leaf supports-two-step { + type boolean; + description + "The interface supports two-step operation"; + } + leaf supports-ethernet { + type boolean; + description + "The interface supports ethernet transport"; + } + leaf supports-multicast { + type boolean; + description + "The interface supports multicast"; + } + leaf supports-ipv4 { + type boolean; + description + "The interface supports IPv4 transport"; + } + leaf supports-ipv6 { + type boolean; + description + "The interface supports IPv6 transport"; + } + leaf supports-slave { + type boolean; + description + "The interface supports operation in slave mode"; + } + leaf supports-source-ip { + type boolean; + description + "The interface supports source ip configuration"; + } + leaf max-sync-rate { + type uint8; + description + "The maximum rate of sync packets on the + interface"; + } + leaf event-cos { + type uint32; + description + "The class of service used on the interface for + event messages"; + } + leaf general-cos { + type uint32; + description + "The class of service used on the interface for + general messages"; + } + leaf event-dscp { + type uint32; + description + "The DSCP class used on the interface for event + messages"; + } + leaf general-dscp { + type uint32; + description + "The DSCP class used on the interface for general + messages"; + } + leaf unicast-peers { + type uint32; + description + "The number of unicast peers known by the + interface"; + } + leaf local-priority { + type uint8; + description + "Local priority, for the G.8275.1 PTP profile"; + } + leaf signal-fail { + type boolean; + description + "Signal fail status of the interface"; + } + leaf profile-interop { + type boolean; + description + "Indicate whether profile interop is in use"; + } + leaf supports-bvi-slave { + type boolean; + description + "The node supports BVI interfaces as Slaves"; + } + leaf interop-domain { + type Ptp-domain-num; + description + "The PTP domain that is being interoperated with"; + } + leaf interop-profile { + type Ptp-bag-profile; + description + "Profile that is being interoperated with"; + } + list master-table { + description + "The interface's master table"; + uses PTP-BAG-MASTER-TABLE-ENTRY; + } + } + + grouping PTP-SUMMARY-INFO { + description + "PTP summary information"; + leaf port-state-init-count { + type uint32; + description + "Number of interfaces in 'Init' port state"; + } + leaf port-state-listening-count { + type uint32; + description + "Number of interfaces in 'Listening' port state"; + } + leaf port-state-passive-count { + type uint32; + description + "Number of interfaces in 'Passive' port state"; + } + leaf port-state-pre-master-count { + type uint32; + description + "Number of interfaces in 'Pre-Master' port state"; + } + leaf port-state-master-count { + type uint32; + description + "Number of interfaces in 'Master' port state"; + } + leaf port-state-slave-count { + type uint32; + description + "Number of interfaces in 'Slave' port state"; + } + leaf port-state-uncalibrated-count { + type uint32; + description + "Number of interfaces in 'Uncalibrated port state"; + } + leaf port-state-faulty-count { + type uint32; + description + "Number of interfaces in 'Faulty' port state"; + } + leaf total-interfaces { + type uint32; + description + "Total number of interfaces"; + } + leaf total-interfaces-valid-port-num { + type uint32; + description + "Total number of interfaces with a valid port + number"; + } + } + + grouping PTP-BAG-UNICAST-GRANT { + description + "PTP Unicast Grant"; + leaf log-grant-interval { + type int8; + description + "Log of the interval which has been granted"; + } + leaf grant-duration { + type uint32; + description + "Duraction of the grant"; + } + } + + grouping PTP-BAG-IPV6-ADDR-TYPE { + description + "PTP BAG IPV6 ADDR TYPE"; + leaf ipv6-address { + type Bag-in6-addr; + description + "IPv6 Address"; + } + } + + grouping PTP-BAG-MAC-ADDR-TYPE { + description + "Mac Address"; + leaf macaddr { + type yang:mac-address; + description + "macaddr"; + } + } + + grouping PTP-BAG-ADDRESS { + description + "Address"; + container mac-address { + when "../encapsulation = 'ethernet'" { + description + "../Encapsulation = 'Ethernet'"; + } + description + "Ethernet MAC address"; + uses PTP-BAG-MAC-ADDR-TYPE; + } + container ipv6-address { + when "../encapsulation = 'ipv6'" { + description + "../Encapsulation = 'IPv6'"; + } + description + "IPv6 address"; + uses PTP-BAG-IPV6-ADDR-TYPE; + } + leaf encapsulation { + type Ptp-bag-encap; + description + "Encapsulation"; + } + leaf address-unknown { + when "../encapsulation = 'unknown'" { + description + "../Encapsulation = 'Unknown'"; + } + type boolean; + description + "Unknown address type"; + } + leaf ipv4-address { + when "../encapsulation = 'ipv4'" { + description + "../Encapsulation = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + } + + grouping PTP-BAG-PORT-ID { + description + "Port ID"; + leaf clock-id { + type Ptp-clock-id1; + description + "Clock ID"; + } + leaf port-number { + type Ptp-port-num; + description + "Port number"; + } + } + + grouping PTP-BAG-CLOCK-UTC-OFFSET { + description + "PTP Clock UTC offset"; + leaf current-offset { + type int16; + description + "Current offset"; + } + leaf offset-valid { + type boolean; + description + "The current offset is valid"; + } + } + + grouping PTP-BAG-CLOCK { + description + "PTP Clock"; + container utc-offset { + description + "UTC offset"; + uses PTP-BAG-CLOCK-UTC-OFFSET; + } + container receiver { + description + "Receiver"; + uses PTP-BAG-PORT-ID; + } + container sender { + description + "Sender"; + uses PTP-BAG-PORT-ID; + } + leaf clock-id { + type Ptp-clock-id1; + description + "Clock ID"; + } + leaf priority1 { + type Ptp-clock-priority; + description + "Priority 1"; + } + leaf priority2 { + type Ptp-clock-priority; + description + "Priority 2"; + } + leaf class { + type Ptp-clock-class; + description + "Class"; + } + leaf accuracy { + type Ptp-clock-accuracy; + description + "Accuracy"; + } + leaf offset-log-variance { + type Ptp-clock-oslv; + description + "Offset log variance"; + } + leaf steps-removed { + type uint16; + description + "Steps removed"; + } + leaf time-source { + type Ptp-bag-clock-time-source; + description + "Time source"; + } + leaf frequency-traceable { + type boolean; + description + "The clock is frequency traceable"; + } + leaf time-traceable { + type boolean; + description + "The clock is time traceable"; + } + leaf timescale { + type Ptp-bag-clock-timescale; + description + "Timescale"; + } + leaf leap-seconds { + type Ptp-bag-clock-leap-seconds; + units "second"; + description + "Leap Seconds"; + } + leaf is-receiver-valid { + type boolean; + description + "Is the receiver information valid"; + } + leaf is-sender-valid { + type boolean; + description + "Is the sender information valid"; + } + leaf local { + type boolean; + description + "The clock is the local clock"; + } + leaf configured-clock-class { + type Ptp-clock-class; + description + "The configured clock class"; + } + leaf configured-priority { + type Ptp-clock-priority; + description + "The configured priority"; + } + } + + grouping PTP-BAG-FOREIGN-CLOCK { + description + "PTP Foreign Clock"; + container foreign-clock { + description + "Foreign clock information"; + uses PTP-BAG-CLOCK; + } + container address { + description + "The address of the clock"; + uses PTP-BAG-ADDRESS; + } + container announce-grant { + description + "Unicast grant information for announce messages"; + uses PTP-BAG-UNICAST-GRANT; + } + container sync-grant { + description + "Unicast grant information for sync messages"; + uses PTP-BAG-UNICAST-GRANT; + } + container delay-response-grant { + description + "Unicast grant information for delay-response + messages"; + uses PTP-BAG-UNICAST-GRANT; + } + leaf is-qualified { + type boolean; + description + "The clock is qualified for best master clock + selection"; + } + leaf is-grandmaster { + type boolean; + description + "This clock is the currently selected grand + master clock"; + } + leaf communication-model { + type Ptp-bag-communication-model; + description + "The communication model configured on this clock"; + } + leaf is-known { + type boolean; + description + "This clock is known by this router"; + } + leaf time-known-for { + type uint32; + units "second"; + description + "How long the clock has been known by this router + for, in seconds"; + } + leaf foreign-domain { + type Ptp-domain-num; + description + "The PTP domain that the foreign clock is in"; + } + leaf configured-priority { + type Ptp-clock-priority; + description + "Priority configured for the clock, if any"; + } + leaf configured-clock-class { + type Ptp-clock-class; + description + "Clock class configured for the clock, if any"; + } + leaf delay-asymmetry { + type Ptp-delay-asymmetry; + description + "Delay asymmetry configured for the clock, if any"; + } + leaf ptsf-loss-announce { + type boolean; + description + "Announced messages are not being received from + the master"; + } + leaf ptsf-loss-sync { + type boolean; + description + "Sync messages are not being received from the + master"; + } + leaf is-dnu { + type boolean; + description + "The clock has clock class corresponding to + QL-DNU"; + } + } + + grouping PTP-IF-CLOCK-INFO { + description + "PTP foreign clock information"; + leaf port-number { + type Ptp-port-num; + description + "Port number"; + } + list foreign-clock { + description + "Foreign clocks received on this interface"; + uses PTP-BAG-FOREIGN-CLOCK; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper.yang new file mode 100644 index 000000000..2b822b526 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-oper.yang @@ -0,0 +1,319 @@ +module Cisco-IOS-XR-ptp-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ptp-oper"; + prefix ptp-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ptp-oper-sub1 { + revision-date 2021-10-05; + } + + 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 ptp package operational data. + + This module contains definitions + for the following management objects: + ptp: PTP operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-05 { + description + "Add double-failure-clock-class information to show ptp ctrlr database"; + semver:module-version "2.2.0"; + } + revision 2020-09-07 { + description + "Show command updates for APTS and virtual port"; + semver:module-version "2.2.0"; + } + revision 2020-02-06 { + description + "Added valid flags for receiver clock information, sender clock information and master entry properties. + 2019-12-18 + Added checksum related packet drop reasons and servo status enums."; + semver:module-version "2.1.0"; + } + revision 2019-10-01 { + description + "Corrected enum names for servo. + 2019-09-30 + Added incompatible packet for non-negotiated setting in packet drop reasons."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-02-02 { + description + "Initial version."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ptp { + config false; + description + "PTP operational data"; + container nodes { + description + "Table for node-specific operational data"; + list node { + key "node-name"; + description + "Node-specific operational data for a given node"; + container node-interface-foreign-masters { + description + "Table for node foreign master clock + operational data"; + list node-interface-foreign-master { + key "interface-name"; + description + "Node interface foreign master clock + operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-CLOCK-INFO; + } + } + container summary { + description + "Node summary operational data"; + uses PTP-SUMMARY-INFO; + } + container node-interfaces { + description + "Table for node interface operational data"; + list node-interface { + key "interface-name"; + description + "Node interface operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-INFO; + } + } + container node-interface-unicast-peers { + description + "Table for node unicast peers operational data"; + list node-interface-unicast-peer { + key "interface-name"; + description + "Node interface unicast peers operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-UNICAST-PEER-INFO; + } + } + container packet-counters { + description + "Node packet counter operational data"; + uses PTP-NODE-PACKET-COUNTER-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + } + } + container summary { + description + "Summary operational data"; + uses PTP-SUMMARY-INFO; + } + container interface-configuration-errors { + description + "Table for interface configuration error + operational data"; + list interface-configuration-error { + key "interface-name"; + description + "Interface configuration error operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-CONFIG-ERRORS-ENTRY; + } + } + container interface-foreign-masters { + description + "Table for interface foreign master clock + operational data"; + list interface-foreign-master { + key "interface-name"; + description + "Interface foreign master clock operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-CLOCK-INFO; + } + } + container interface-interops { + description + "Table for interface interop operational data"; + list interface-interop { + key "interface-name"; + description + "Interface interop operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-INTEROP-INFO; + } + } + container local-clock { + description + "Local clock operational data"; + uses PTP-LOCAL-CLOCK-INFO; + } + container interface-packet-counters { + description + "Table for interface packet counter operational + data"; + list interface-packet-counter { + key "interface-name"; + description + "Interface packet counter operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-PACKET-COUNTER-INFO; + } + } + container advertised-clock { + description + "Advertised clock operational data"; + uses PTP-ADVERTISED-CLOCK-INFO; + } + container interfaces { + description + "Table for interface operational data"; + list interface { + key "interface-name"; + description + "Interface operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-INFO; + } + } + container dataset { + description + "Global PTP datasets"; + container default-ds { + description + "defaultDS information as described in IEEE + 1588-2008"; + uses PTP-DEFAULT-DS-INFO; + } + container current-ds { + description + "currentDS information as described in IEEE + 1588-2008"; + uses PTP-CURRENT-DS-INFO; + } + container parent-ds { + description + "parentDS information as described in IEEE + 1588-2008"; + uses PTP-PARENT-DS-INFO; + } + container port-dses { + description + "Table for portDS information"; + list port-ds { + key "interface-name"; + description + "PortDS information"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-PORT-DS-INFO; + } + } + container time-properties-ds { + description + "timePropertiesDS information as described in + IEEE 1588-2008"; + uses PTP-TIME-PROPERTIES-DS-INFO; + } + } + container global-configuration-error { + description + "Global configuration error operational data"; + uses PTP-GL-CONFIG-ERRORS-INFO; + } + container grandmaster { + description + "Grandmaster clock operational data"; + uses PTP-GRANDMASTER-INFO; + } + container interface-unicast-peers { + description + "Table for interface unicast peers operational + data"; + list interface-unicast-peer { + key "interface-name"; + description + "Interface unicast peers operational data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses PTP-IF-UNICAST-PEER-INFO; + } + } + container utc-offset-info { + description + "UTC offset information"; + uses PTP-LEAP-SECONDS-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-cfg.yang new file mode 100644 index 000000000..913ab26cb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-cfg.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-ptp-pd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ptp-pd-cfg"; + prefix ptp-pd-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 ptp-pd package configuration. + + This module contains definitions + for the following management objects: + log-servo-root: Servo Log for Platform + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-15 { + description + "Servo-driver-enable added to YANG."; + semver:module-version "1.2.0"; + } + revision 2021-01-30 { + description + "In-memory timestamps buffer size added."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-05-08 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container log-servo-root { + description + "Servo Log for Platform"; + leaf servo-driver-enable { + type boolean; + description + "Enable Servo driver logs streaming"; + } + leaf servo-event-enable { + type boolean; + description + "Enable Servo change log events"; + } + leaf timestamps-memory-size { + type xr:Hex-integer; + description + "Memory size for PTP timestamps logging"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper-sub1.yang new file mode 100644 index 000000000..a4488dfc2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper-sub1.yang @@ -0,0 +1,465 @@ +submodule Cisco-IOS-XR-ptp-pd-oper-sub1 { + belongs-to Cisco-IOS-XR-ptp-pd-oper { + prefix Cisco-IOS-XR-ptp-pd-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR ptp-pd package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-08 { + description + "Schema added for APR log."; + semver:module-version "1.2.0"; + } + revision 2021-08-04 { + description + "Schema added for PTP statistics. + 2021-01-25 + Schema added for timestamps logger."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-06-08 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PTP-PD-TS-LOGGER-INFO { + description + "PTP PD timestamps logger info"; + leaf memory-buffer { + type uint64; + description + "Memory buffer used for timestamps logging"; + } + leaf redzone { + type uint64; + description + "Red zone start offset"; + } + leaf disk-fp { + type uint64; + description + "Disk file pointer"; + } + leaf next-rotating-file-index { + type uint16; + description + "Next rotating file index"; + } + leaf max-rotating-files { + type uint16; + description + "Max rotating files"; + } + leaf mem-fp { + type uint64; + description + "Memory File pointer"; + } + leaf dump-fp { + type uint64; + description + "File pointer to which logs need to be dumped"; + } + leaf current-offset { + type uint64; + description + "Current offset in memory buffer"; + } + leaf end-offset { + type uint64; + description + "Log end offset in red-zone"; + } + leaf mem-buf-size { + type uint32; + description + "Size of Memory buffer"; + } + leaf dumping-to-disk { + type boolean; + description + "Logger dumping logs to disk"; + } + leaf dumping-complete { + type boolean; + description + "Dumping to disk complete"; + } + leaf memory-logging-capable { + type boolean; + description + "Logger capable of in-memory logging"; + } + leaf platform-logging-capable { + type boolean; + description + "Platform capable of in-memory logging"; + } + leaf initialized { + type boolean; + description + "Logger initialized"; + } + leaf buffer-monitor-cnt { + type uint32; + description + "Main thread health check for periodic buffer + monitoring"; + } + leaf buf-mon-discard-cnt { + type uint32; + description + "Main thread discarded buffer monitoring"; + } + leaf buffer-wraps { + type uint32; + description + "Number of times the in-memory buffer wrapped"; + } + leaf curr-ptr-adv-cnt { + type uint32; + description + "Health check for in-memory logging offset + advancing"; + } + leaf dump-disk-req-check { + type uint32; + description + "Health check for dumper-thread to check for dump + req"; + } + leaf red-zone-max-offset { + type uint32; + description + "Max penetration into the red-zone"; + } + leaf red-zone-over-err { + type uint32; + description + "Red-Zone overflow"; + } + leaf num-entries-discard { + type uint32; + description + "Num entries discarded in last dump to disk file"; + } + leaf num-entries-processed { + type uint32; + description + "Num entries processed"; + } + leaf dump-disk-req { + type uint32; + description + "Number of requests to dump the logs to disk"; + } + leaf dump-disk-completes { + type uint32; + description + "Number of times logs dumped to disk"; + } + leaf disk-write-fails { + type uint32; + description + "Number of failures in writing to disk"; + } + leaf last-disk-dump-size { + type uint32; + units "byte"; + description + "Number of bytes written in last dump request"; + } + } + + grouping PTP-PD-APR-LOGS { + description + "APR logs"; + leaf apr-logs { + type string; + description + "APR logs"; + } + } + + grouping PTP-PD-STAT-UNIT { + description + "PTP PD statistics unit"; + leaf min { + type int64; + description + "Minimum value"; + } + leaf max { + type int64; + description + "Maximum value"; + } + leaf mean { + type int64; + description + "Mean value"; + } + leaf num-entries { + type uint32; + description + "Number of entries used to calculate the bucket"; + } + } + + grouping PTP-PD-SERVO-STAT-LIST { + description + "Servo statistics list"; + container delta-t1 { + description + "T1 timestamp difference"; + uses PTP-PD-STAT-UNIT; + } + container delta-t2 { + description + "T2 timestamp difference"; + uses PTP-PD-STAT-UNIT; + } + container delta-t3 { + description + "T3 timestamp difference"; + uses PTP-PD-STAT-UNIT; + } + container delta-t4 { + description + "T4 timestamp difference"; + uses PTP-PD-STAT-UNIT; + } + container fwd-delay { + description + "Forward path delay"; + uses PTP-PD-STAT-UNIT; + } + container rev-delay { + description + "Reverse path delay"; + uses PTP-PD-STAT-UNIT; + } + container offset-from-master { + description + "Offset from Master"; + uses PTP-PD-STAT-UNIT; + } + container mean-path-delay { + description + "Mean path delay"; + uses PTP-PD-STAT-UNIT; + } + } + + grouping PTP-PD-SERVO-STAT-BUCKETS { + description + "Servo statistics buckets"; + container bucket5-sec { + description + "5 second bucket"; + uses PTP-PD-SERVO-STAT-LIST; + } + container bucket10-sec { + description + "10 second bucket"; + uses PTP-PD-SERVO-STAT-LIST; + } + container bucket1-min { + description + "1 minute bucket"; + uses PTP-PD-SERVO-STAT-LIST; + } + } + + grouping PTP-PD-BAG-TIMESTAMP { + description + "PTP PD timestamp"; + leaf second { + type uint32; + description + "value of second"; + } + leaf nano-second { + type uint32; + description + "value of nano second"; + } + } + + grouping PTP-PD-SERVO-INFO { + description + "PTP PD servo status"; + container last-set-time { + description + "last input of setTime"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t1 { + description + "last T1 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t2 { + description + "last T2 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t3 { + description + "last T3 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + container last-received-t4 { + description + "last T4 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t1 { + description + "pre T1 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t2 { + description + "pre T2 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t3 { + description + "pre T3 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + container pre-received-t4 { + description + "pre T4 timestamp received"; + uses PTP-PD-BAG-TIMESTAMP; + } + leaf lock-status { + type uint16; + description + "lock status of device"; + } + leaf running { + type boolean; + description + "running status of apr"; + } + leaf device-status { + type string { + length "0..50"; + } + description + "status of device"; + } + leaf log-level { + type uint16; + description + "log level of apr"; + } + leaf phase-accuracy-last { + type int64; + description + " last phase alignment accuracy"; + } + leaf num-sync-timestamp { + type uint32; + description + "number of sync timestamp received"; + } + leaf num-delay-timestamp { + type uint32; + description + "number of delay timestamp received"; + } + leaf num-set-time { + type uint32; + description + "number of setTime() been called"; + } + leaf num-step-time { + type uint32; + description + "number of stepTime() been called"; + } + leaf num-adjust-freq { + type uint32; + description + "number of adjustFreq() been called"; + } + leaf num-adjust-freq-time { + type uint32; + description + "number of adjustFreqTime() been called"; + } + leaf last-adjust-freq { + type int32; + description + "last input of adjustFreq"; + } + leaf last-step-time { + type int32; + description + "last input of stepTime"; + } + leaf num-discard-sync-timestamp { + type uint32; + description + "number of sync timestamp discarded"; + } + leaf num-discard-delay-timestamp { + type uint32; + description + "number of delay timestamp discarded"; + } + leaf flagof-last-set-time { + type boolean; + description + "last input flag of setTime"; + } + leaf offset-from-master { + type int64; + description + "Time Offset From Master"; + } + leaf mean-path-delay { + type int64; + description + "Mean Path Delay"; + } + leaf servo-mode { + type int32; + description + "Servo Mode"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper.yang new file mode 100644 index 000000000..f36694192 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ptp-pd-oper.yang @@ -0,0 +1,93 @@ +module Cisco-IOS-XR-ptp-pd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ptp-pd-oper"; + prefix ptp-pd-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ptp-oper { + prefix a1; + } + include Cisco-IOS-XR-ptp-pd-oper-sub1 { + revision-date 2021-08-08; + } + + 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 ptp-pd package operational data. + + This YANG module augments the + Cisco-IOS-XR-ptp-oper + module with state data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-08 { + description + "Schema added for APR log."; + semver:module-version "1.2.0"; + } + revision 2021-08-04 { + description + "Schema added for PTP statistics. + 2021-01-25 + Schema added for timestamps logger."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-06-08 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:ptp" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-ptp-oper'"; + container platform { + description + "PTP platform specific data"; + container servo { + description + "PTP servo related parameters"; + uses PTP-PD-SERVO-INFO; + } + container servo-statistics { + description + "PTP servo statistics"; + uses PTP-PD-SERVO-STAT-BUCKETS; + } + container apr-log { + description + "APR log for telemetry"; + uses PTP-PD-APR-LOGS; + } + container timestamps-logger { + description + "PTP timestamps logger information"; + uses PTP-PD-TS-LOGGER-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-action-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-action-cfg.yang new file mode 100644 index 000000000..a3fc777f5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-action-cfg.yang @@ -0,0 +1,56 @@ +module Cisco-IOS-XR-pwrmgmt-action-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pwrmgmt-action-cfg"; + prefix pwrmgmt-action-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-pwrmgmt-cfg { + prefix a1; + } + + 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 pwrmgmt-action package configuration. + + This YANG module augments the + Cisco-IOS-XR-pwrmgmt-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:power-management" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-pwrmgmt-cfg'"; + leaf action-disable { + type boolean; + description + "Config for controlling power budget to not + exceed power capacity"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-cfg.yang new file mode 100644 index 000000000..c47336d9e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-pwrmgmt-cfg.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-pwrmgmt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-pwrmgmt-cfg"; + prefix pwrmgmt-cfg; + + 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 pwrmgmt package configuration. + + This module contains definitions + for the following management objects: + power-management: EnvMon Power Management Config Data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-14 { + description + "IOS XR 7.0.14 revision. Moved action-disable to be valid only for SF-D platforms."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container power-management { + description + "EnvMon Power Management Config Data"; + leaf extended-temp { + type boolean; + description + "Config for setting power budget for extended + temp mode"; + } + leaf single-feed-mode { + type boolean; + description + "Config for suppressing alarms for missing feed + supplies"; + } + leaf red-num-pems { + type uint32; + description + "Number of the redundant PEMS"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-bng-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-bng-cfg.yang new file mode 100644 index 000000000..dec9f424a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-bng-cfg.yang @@ -0,0 +1,262 @@ +module Cisco-IOS-XR-qos-ma-bng-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-qos-ma-bng-cfg"; + prefix qos-ma-bng-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 qos-ma-bng package configuration. + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-04-01 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Qosl2-data-link { + type enumeration { + enum "aal5" { + value 0; + description + "ATM adaption layer AAL5"; + } + } + description + "Qosl2 data link"; + } + + typedef Qosl2-encap { + type enumeration { + enum "snap-pppoa" { + value 1; + description + "snap-pppoa encap used between the DSLAM and CPE"; + } + enum "mux-pppoa" { + value 2; + description + "mux-pppoa encap used between the DSLAM and CPE"; + } + enum "snap1483-routed" { + value 3; + description + "snap-1483routed encap used between the DSLAM + and CPE"; + } + enum "mux1483-routed" { + value 4; + description + "mux-1483routed encap used between the DSLAM and + CPE"; + } + enum "snap-rbe" { + value 5; + description + "snap-rbe encap used between the DSLAM and CPE"; + } + enum "snap-dot1qrbe" { + value 6; + description + "snap-dot1q-rbe encap used between the DSLAM and + CPE"; + } + enum "mux-rbe" { + value 7; + description + "mux-rbe encap used between the DSLAM and CPE"; + } + enum "mux-dot1qrbe" { + value 8; + description + "mux-dot1q-rbe encap used between the DSLAM and + CPE"; + } + } + description + "Qosl2 encap"; + } + + grouping QOS { + description + "Common node of ppp, ip-subscriber, + subscriber-service"; + container qos { + description + "QoS dynamically applied configuration template"; + container service-policy { + description + "Service policy to be applied in ingress/egress + direction"; + container input { + presence "Indicates a input node is configured."; + description + "Subscriber ingress policy"; + leaf policy-name { + type string; + mandatory true; + description + "Name of policy-map"; + } + leaf spi-name { + type string; + description + "Name of the SPI"; + } + leaf merge { + type boolean; + description + "TRUE for merge enabled for service-policy + applied on dynamic template."; + } + leaf merge-id { + type uint32 { + range "0..255"; + } + description + "Merge ID value"; + } + leaf account-stats { + type boolean; + description + "TRUE for account stats enabled for + service-policy applied on dynamic template. + Note: account stats not supported for + subscriber type 'ppp' and 'ipsubscriber'."; + } + } + container output { + presence "Indicates a output node is configured."; + description + "Subscriber egress policy"; + leaf policy-name { + type string; + mandatory true; + description + "Name of policy-map"; + } + leaf spi-name { + type string; + description + "Name of the SPI"; + } + leaf merge { + type boolean; + description + "TRUE for merge enabled for service-policy + applied on dynamic template."; + } + leaf merge-id { + type uint32 { + range "0..255"; + } + description + "Merge ID value"; + } + leaf account-stats { + type boolean; + description + "TRUE for account stats enabled for + service-policy applied on dynamic template. + Note: account stats not supported for + subscriber type 'ppp' and 'ipsubscriber'."; + } + } + } + container account { + description + "QoS L2 overhead accounting"; + leaf aal { + type Qosl2-data-link; + must "../encapsulation and not(../user-defined or ../atm-cell-tax)"; + description + "ATM adaptation layer AAL"; + } + leaf encapsulation { + type Qosl2-encap; + must "../aal and not(../user-defined or ../atm-cell-tax)"; + description + "Specify encapsulation type"; + } + leaf atm-cell-tax { + type empty; + must "../user-defined and not(../aal or ../encapsulation)"; + description + "ATM cell tax to L2 overhead"; + } + leaf user-defined { + type int32 { + range "-63..63"; + } + must "not(../aal or ../encapsulation)"; + description + "Numeric L2 overhead offset"; + } + } + container output { + description + "QoS to be applied in egress direction"; + leaf minimum-bandwidth { + type uint32 { + range "1..4294967295"; + } + units "kbit/s"; + description + "Minimum bandwidth value for the subscriber (in + kbps)"; + } + } + } + } + + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses QOS; + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses QOS; + } + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses QOS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-cfg.yang new file mode 100644 index 000000000..bf31ce0d1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-cfg.yang @@ -0,0 +1,365 @@ +module Cisco-IOS-XR-qos-ma-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-qos-ma-cfg"; + prefix qos-ma-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2vpn-cfg { + prefix a2; + } + + 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 qos package configuration. + + This module contains definitions + for the following management objects: + qos: Global QOS configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-l2vpn-cfg, + modules with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-20 { + description + "7.5.1 service-policy-name length 0-63"; + } + revision 2020-03-10 { + description + "IOS XR 7.2.1 revision."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-02-27 { + description + "Made subscriber-parent a presence container, changed + as part of commit check feature"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-12-23 { + description + "IOS XR 6.2.1 revision."; + } + revision 2016-12-15 { + description + "IOS XR 6.2.1 revision."; + } + revision 2016-11-11 { + description + "IOS XR 6.2.1 revision."; + } + revision 2016-03-03 { + description + "IOS XR 6.1.1 revision."; + } + + typedef Qos-field-not-supported { + type enumeration { + enum "not-supported" { + value 0; + description + "Dummy data type. Leave unspecified"; + } + } + description + "This field is used to specify the unsupported Qos values"; + } + + typedef Qos-policy-account { + type enumeration { + enum "layer1" { + value 8; + description + "Turn on Layer 1 accounting"; + } + enum "layer2" { + value 1; + description + "Turn on Layer 2 accounting"; + } + enum "nolayer2" { + value 2; + description + "Turn on Layer 2 accounting"; + } + enum "user-defined" { + value 4; + description + "User defined accounting"; + } + } + description + "This field is used to specify the type of Layer specific or user + defined Qos accounting."; + } + + grouping QOS { + description + "Common node of interface-configuration, cac, pvp, + pac, pvc, pvc-mode, nv-satellite-access, + nv-satellite-fabric-link, satellites"; + container qos { + description + "Interface QOS configuration"; + container output { + description + "Egress service policy"; + uses SERVICE-POLICY; + } + container input { + description + "Ingress service policy"; + uses SERVICE-POLICY; + } + } + } + + grouping SERVICE-POLICY { + description + "Common node of input, output"; + list service-policy { + key "service-policy-name"; + description + "Service policy details"; + leaf service-policy-name { + type string { + length "0..63"; + } + description + "Name of policy-map"; + } + leaf account-type { + type Qos-policy-account; + description + "Turn off L2 or L3 accounting."; + } + leaf l1-user-defined { + type int32 { + range "-63..63"; + } + description + "User specified value"; + } + leaf spi-name { + type string { + length "0..32"; + } + description + "Name of the SPI"; + } + leaf subscriber-parent-policy { + type boolean; + description + "TRUE if service-policy applied on svlan."; + } + leaf resource-id { + type uint32 { + range "0..3"; + } + description + "Resource ID value"; + } + leaf service-fragment-parent-policy { + type boolean; + description + "TRUE if service-policy applied is a + service-fragment policy)."; + } + } + list service-policy-qos { + key "service-policy-name"; + description + "Service policy details"; + container subscriber-group-names { + description + "Subscriber Group Name Details"; + list subscriber-group-name { + key "subscriber-group-string"; + description + "Subscriber Group details"; + leaf subscriber-group-string { + type string { + length "0..64"; + } + description + "Name of policy-map"; + } + leaf account-type { + type Qos-policy-account; + description + "Turn off L2 or L3 accounting."; + } + leaf l1-user-defined { + type int32 { + range "-63..63"; + } + description + "User specified value"; + } + leaf spi-name { + type string { + length "0..32"; + } + description + "Name of the SPI"; + } + leaf policy-merge { + type Qos-field-not-supported; + description + "Not supported (Leave unspecified)."; + } + leaf subscriber-parent-policy { + type boolean; + description + "TRUE if service-policy applied on svlan."; + } + leaf resource-id { + type uint32 { + range "0..3"; + } + description + "Resource ID value"; + } + leaf service-fragment-parent-policy { + type boolean; + description + "TRUE if service-policy applied is a + service-fragment policy)."; + } + } + } + container subscriber-parent { + presence "Enable feature subscriber-parent"; + description + "Subscriber Parent Details"; + leaf account-type { + type Qos-policy-account; + description + "Turn off L2 or L3 accounting."; + } + leaf l1-user-defined { + type int32 { + range "-63..63"; + } + description + "User specified value"; + } + leaf spi-name { + type string { + length "0..32"; + } + description + "Name of the SPI"; + } + leaf policy-merge { + type Qos-field-not-supported; + description + "Not supported (Leave unspecified)."; + } + leaf subscriber-parent-policy { + type boolean; + description + "TRUE if service-policy applied on svlan."; + } + leaf resource-id { + type uint32 { + range "0..3"; + } + description + "Resource ID value"; + } + leaf service-fragment-parent-policy { + type boolean; + description + "TRUE if service-policy applied is a + service-fragment policy)."; + } + } + leaf service-policy-name { + type string { + length "0..64"; + } + description + "Name of policy-map"; + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration/a2:l2-transport" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + container pac { + description + "Port Attachment Circuit configuration."; + uses QOS; + } + } + augment "/a1:interface-configurations/a1:interface-configuration/a2:l2-transport" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + container cac { + description + "Connection Attachment Circuit configuration."; + uses QOS; + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + uses QOS; + } + container qos { + description + "Global QOS configuration."; + leaf fabric-service-policy { + type xr:Cisco-ios-xr-string { + length "0..63"; + } + description + "Name of the fabric service policy"; + } + } + container ctrlplane { + description + "control plane"; + container locp { + description + "local control-packets"; + container copy-prec-qosgrp { + presence "Copy the precedence group"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-oper.yang new file mode 100644 index 000000000..25b0ee899 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-oper.yang @@ -0,0 +1,1731 @@ +module Cisco-IOS-XR-qos-ma-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-qos-ma-oper"; + prefix qos-ma-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 qos-ma-oper package operational data. + + This module contains definitions + for the following management objects: + qos: QoS operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-27 { + description + "IOS XR 7.3.1 revision."; + } + revision 2020-04-13 { + description + "IOS XR 7.3.1 revision."; + } + revision 2020-03-04 { + description + "IOS XR 7.2.1 revision."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-09-10 { + description + "IOS XR 7.0.1 revision."; + } + revision 2017-09-13 { + description + "IOS XR 6.4.1 revision."; + } + revision 2017-04-10 { + description + "IOS XR 6.3.1 revision."; + } + revision 2016-11-11 { + description + "IOS XR 6.2.1 revision."; + } + revision 2016-03-03 { + description + "IOS XR 6.1.1 revision."; + } + + typedef Wred { + type enumeration { + enum "wred-cos-cmd" { + description + "Weighted random early detection cos cmd"; + } + enum "wred-dscp-cmd" { + description + "Weighted random early detection dscp cmd"; + } + enum "wred-precedence-cmd" { + description + "Weighted random early detection precedence cmd"; + } + enum "wred-discard-class-cmd" { + description + "Weighted random early detection discard class cmd"; + } + enum "wred-mpls-exp-cmd" { + description + "Weighted random early detection mpls exp cmd"; + } + enum "red-with-user-min-max" { + description + "random early detection with user-defined min max values"; + } + enum "red-with-default-min-max" { + description + "random early detection with default min max values"; + } + enum "wred-dei-cmd" { + description + "Weighted random early detection dei cmd"; + } + enum "wred-ecn-cmd" { + description + "Weighted random early detection ecn cmd"; + } + enum "wred-invalid-cmd" { + description + "Weighted random early detection invalid cmd"; + } + } + description + "Weighted random early detection"; + } + + typedef Policy-param-unit { + type enumeration { + enum "policy-param-unit-invalid" { + description + "Data flow rate is invalid"; + } + enum "policy-param-unit-bytes" { + description + "Rate at which data flows in bytes"; + } + enum "policy-param-unit-kbytes" { + description + "Rate at which data flows in kbytes"; + } + enum "policy-param-unit-mbytes" { + description + "Rate at which data flows in mbytes"; + } + enum "policy-param-unit-gbytes" { + description + "Rate at which data flows in gbytes"; + } + enum "policy-param-unit-bitsps" { + description + "Rate at which data flows in bitsps"; + } + enum "policy-param-unit-kbitsps" { + description + "Rate at which data flows in kbitsps"; + } + enum "policy-param-unit-mbitsps" { + description + "Rate at which data flows in mbitsps"; + } + enum "policy-param-unit-gbitsps" { + description + "Rate at which data flows in gbitsps"; + } + enum "policy-param-unit-cells-ps" { + description + "Rate at which data flows in cells ps"; + } + enum "policy-param-unit-packets-ps" { + description + "Rate at which data flows in packets ps"; + } + enum "policy-param-unit-us" { + description + "Rate at which data flows in us"; + } + enum "policy-param-unit-ms" { + description + "Rate at which data flows in ms"; + } + enum "policy-param-unit-seconds" { + description + "Rate at which data flows in seconds"; + } + enum "policy-param-unit-packets" { + description + "Rate at which data flows in packets"; + } + enum "policy-param-unit-cells" { + description + "Rate at which data flows in cells"; + } + enum "policy-param-unit-percent" { + description + "Rate at which data flows in percent"; + } + enum "policy-param-unit-per-thousand" { + description + "Rate at which data flows in per thousand"; + } + enum "policy-param-unit-per-million" { + description + "Rate at which data flows in per million"; + } + enum "policy-param-unit-hz" { + description + "Rate at which data flows in hz"; + } + enum "policy-param-unit-khz" { + description + "Rate at which data flows in khz"; + } + enum "policy-param-unit-mhz" { + description + "Rate at which data flows in mhz"; + } + enum "policy-param-unit-ratio" { + description + "Data flow unit ratio"; + } + enum "policy-param-unit-max" { + description + "Maximum policy param unit "; + } + } + description + "Different units of measurement of Policy parameter"; + } + + typedef Cac-state { + type enumeration { + enum "unknown" { + value 0; + description + "Cac-state value is unknown"; + } + enum "admit" { + value 1; + description + "Cac-state value is admit"; + } + enum "redirect" { + value 2; + description + "Cac-state value is redirect"; + } + enum "ubrl" { + value 3; + description + "Cac-state value is ubrl"; + } + } + description + "CAC/UBRL class states"; + } + + typedef Policy-state { + type enumeration { + enum "active" { + value 0; + description + "Interface state of the policy is active"; + } + enum "suspended" { + value 1; + description + "Interface state of policy is suspended"; + } + } + description + "Different Interface states"; + } + + typedef Qos-caps-operation-enum { + type enumeration { + enum "add" { + value 0; + description + "Add Caps info"; + } + enum "remove" { + value 1; + description + "Remove Caps info"; + } + enum "replace" { + value 2; + description + "Replace the Caps info"; + } + enum "modify" { + value 3; + description + "Modify the Caps info"; + } + enum "unknown" { + value 4; + description + "Caps info is Unknown"; + } + } + description + "Satellite QOS offload operation"; + } + + typedef Qos-ma-sat-caps-type-enum { + type enumeration { + enum "input" { + value 0; + description + "Input satellite caps info"; + } + enum "output" { + value 1; + description + "Output satellite caps info"; + } + enum "unknown" { + value 2; + description + "Satellite Caps info Unknown"; + } + } + description + "Satellite capsulation information"; + } + + typedef String-arr { + type string; + description + "Array of strings"; + } + + grouping CAC-STATS-ST { + description + "CAC statistics"; + leaf drop-packets { + type uint64; + description + "CAC dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "CAC dropped bytes"; + } + leaf drop-rates { + type uint32; + description + "CAC dropped rate"; + } + leaf admitpackets { + type uint64; + units "packets"; + description + "CAC admitted packets"; + } + leaf admit-bytes { + type uint64; + units "byte"; + description + "CAC admitted bytes"; + } + leaf admit-rates { + type uint32; + description + "CAC admitted rate"; + } + } + + grouping IPHC-STATS-ST { + description + "IPHC Stats"; + leaf non-tcp-total-out-packets { + type uint64; + description + "TotalNum of Non tcp pkts sent"; + } + leaf non-tcp-total-out-bytes { + type uint64; + units "byte"; + description + "TotalNum of Non Tcp Bytes sent"; + } + leaf non-tcp-bytes-saved { + type uint64; + units "byte"; + description + "Non Tcp Bytes saved due to compression"; + } + leaf non-tcp-compressed-packets-out { + type uint64; + description + "Num of non tcp compressed pkts sent"; + } + leaf non-tcp-bytes-sent-rate { + type uint32; + units "kbit/s"; + description + "Compressed Non Tcp Bytes sent rate"; + } + leaf non-tcp-full-header-packets-out { + type uint64; + description + "Num of non tcp fullheader pkts sent"; + } + leaf tcp-total-out-packets { + type uint64; + description + "Total Num of tcp pkts sent"; + } + leaf tcp-total-out-bytes { + type uint64; + units "byte"; + description + "TotalNum of Tcp Bytes sent"; + } + leaf tcp-bytes-saved { + type uint64; + units "byte"; + description + "Tcp Bytes saved due to compression"; + } + leaf tcp-compressed-packets-out { + type uint64; + description + "Num of tcp compressed pkts sent"; + } + leaf tcp-bytes-sent-rate { + type uint32; + units "byte"; + description + "Compressed Tcp Bytes sent rate"; + } + leaf tcp-full-header-packets-out { + type uint64; + description + "Num of tcp fullheader pkts sent"; + } + } + + grouping WRED-TYPE-VALUE { + description + "WRED Type Value pairs"; + leaf wred-type { + type Wred; + description + "WRED type DSCP, EXP, PREC etc."; + } + leaf value { + type uint8; + description + "WRED value for this type."; + } + } + + grouping RED-PROFILE-STATS { + description + "Per RED profile stats"; + leaf profile-title { + type string { + length "0..300"; + } + description + "ProfileTitle"; + } + leaf red-transmit-packets { + type uint64; + description + "Transmitted packets"; + } + leaf red-transmit-bytes { + type uint64; + units "byte"; + description + "Transmitted bytes"; + } + leaf random-drop-packets { + type uint64; + description + "Probabilistically dropped packets"; + } + leaf random-drop-bytes { + type uint64; + units "byte"; + description + "Probabilisticallydropped bytes"; + } + leaf max-threshold-packets { + type uint64; + description + "Dropped packets with the average queue size at + the max-threshold"; + } + leaf max-threshold-bytes { + type uint64; + units "byte"; + description + "Dropped bytes with the average queue size at + the max-threshold"; + } + leaf red-ecn-marked-packets { + type uint64; + description + "ECN marked packets "; + } + leaf red-ecn-marked-bytes { + type uint64; + units "byte"; + description + "ECN marked bytes"; + } + list red-label { + description + "Array of WRED Typevalues as in PRP stats is + available per threshold "; + uses WRED-TYPE-VALUE; + } + } + + grouping PLC-COLOR-CLASS-STATS-ST { + description + "Color Aware Policer statistics"; + leaf conform-class-conform-packets { + type uint64; + description + "Packets with classification result conform and + policer result conform"; + } + leaf conform-class-conform-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result conform"; + } + leaf conform-class-conform-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Conform rate in kbps"; + } + leaf conform-class-exceed-packets { + type uint64; + description + "Packets with classification result conform and + policer result exceed"; + } + leaf conform-class-exceed-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result exceed"; + } + leaf conform-class-exceed-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Exceed rate in kbps"; + } + leaf conform-class-violate-packets { + type uint64; + description + "Packets with classification result conform and + policer result violate"; + } + leaf conform-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result violate"; + } + leaf conform-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Violate rate in kbps"; + } + leaf exceed-class-exceed-packets { + type uint64; + description + "Packets with classification result exceed and + policer result exceed"; + } + leaf exceed-class-exceed-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result exceed and + policer result exceed"; + } + leaf exceed-class-exceed-rate { + type uint32; + units "kbit/s"; + description + "Exceed Class Exceed rate in kbps"; + } + leaf exceed-class-violate-packets { + type uint64; + description + "Packets with classification result exceed and + policer result violate"; + } + leaf exceed-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result exceed and + policer result violate"; + } + leaf exceed-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Exceed Class Violate rate in kbps"; + } + leaf violate-class-violate-packets { + type uint64; + description + "Packets with classification result violate and + policer result violate"; + } + leaf violate-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result violate and + policer result violate"; + } + leaf violate-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Violate Class Violate rate in kbps"; + } + } + + grouping PLC-STATS-ST { + description + "Policer statistics"; + container color-class-stats { + description + "Police Packets classified according to color classification"; + uses PLC-COLOR-CLASS-STATS-ST; + } + leaf drop-packets { + type uint64; + description + "Police dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "Police dropped bytes"; + } + leaf conform-packets { + type uint64; + description + "Packets that conform to the policed rate"; + } + leaf conform-bytes { + type uint64; + units "byte"; + description + "Bytes that conform to the policed rate"; + } + leaf exceed-packets { + type uint64; + description + "Packets that exceed the policed rate"; + } + leaf exceed-bytes { + type uint64; + units "byte"; + description + "Bytes that exceed the policed rate"; + } + leaf violate-packets { + type uint64; + description + "Packets violating the policed rate"; + } + leaf violate-bytes { + type uint64; + units "byte"; + description + "Bytes that violate the policed rate"; + } + leaf parent-drop-packets { + type uint64; + description + "Dropped pkts by the parent policer"; + } + leaf parent-drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes by the parent policer"; + } + leaf conform-rate { + type uint32; + units "kbit/s"; + description + "Conform rate in kbps"; + } + leaf exceed-rate { + type uint32; + units "kbit/s"; + description + "Exceed rate in kbps"; + } + leaf violate-rate { + type uint32; + units "kbit/s"; + description + "Violate rate in kbps"; + } + } + + grouping POLICY-PARAM-UINT32-ST { + description + "Policy Parameter Statistics for the queue length"; + leaf value { + type uint32; + description + "value of the policy param stats"; + } + leaf unit { + type Policy-param-unit; + description + "unit of the policy param stats"; + } + } + + grouping Q-STATS-ST { + description + "Queue limit statistics"; + leaf queue-id { + type uint32; + description + "Queue Id used for Fabric Stats"; + } + leaf tail-drop-packets { + type uint64; + description + "Packets tail dropped"; + } + leaf tail-drop-bytes { + type uint64; + units "byte"; + description + "Bytes tail dropped"; + } + leaf atm-clp0-drop-packets { + type uint64; + description + "ATP CLP 0 matched packets dropped"; + } + leaf atm-clp0-drop-bytes { + type uint64; + units "byte"; + description + "ATP CLP 0 matched bytes dropped"; + } + leaf atm-clp1-drop-packets { + type uint64; + description + "ATP CLP 0 matched packets dropped"; + } + leaf atm-clp1-drop-bytes { + type uint64; + units "byte"; + description + "ATP CLP 0 matched bytes dropped"; + } + leaf queue-drop-threshold { + type uint32; + units "byte"; + description + "tail drop threshold of the queue in bytes"; + } + leaf forced-wred-stats-display { + type boolean; + description + "flag to forcedisplay of WRED even when per + WredWRED profile stats is not available"; + } + leaf random-drop-packets { + type uint64; + description + "Packets probabilistically dropped"; + } + leaf random-drop-bytes { + type uint64; + units "byte"; + description + "Bytes probabilistically dropped"; + } + leaf max-threshold-packets { + type uint64; + description + "Dropped packets with the average queue size at + the max-threshold"; + } + leaf max-threshold-bytes { + type uint64; + units "byte"; + description + "Dropped bytes with the average queue size at the + max-threshold"; + } + leaf conform-packets { + type uint64; + description + "Packets that conform to the queue rate"; + } + leaf conform-bytes { + type uint64; + units "byte"; + description + "Bytes that conform to the queue rate"; + } + leaf exceed-packets { + type uint64; + description + "Packets that exceed the queue rate"; + } + leaf exceed-bytes { + type uint64; + units "byte"; + description + "Bytes that exceed the queue rate"; + } + leaf conform-rate { + type uint32; + description + "Rate of the packets that conform to the queue rate"; + } + leaf exceed-rate { + type uint32; + description + "Rate of the packets that exceed the queue rate"; + } + list queue-instance-length { + description + "Length of the Queue Instance"; + uses POLICY-PARAM-UINT32-ST; + } + list queue-average-length { + description + "Average length of the queue"; + uses POLICY-PARAM-UINT32-ST; + } + list queue-max-length { + description + "Maximum length of the Queue"; + uses POLICY-PARAM-UINT32-ST; + } + } + + grouping GEN-STATS-ST { + description + "Counters common to all features"; + leaf transmit-packets { + type uint64; + units "packets"; + description + "Total transmitted packets"; + } + leaf transmit-bytes { + type uint64; + units "byte"; + description + "Total transmitted bytes"; + } + leaf total-drop-packets { + type uint64; + units "packets"; + description + "Total dropped packets"; + } + leaf total-drop-bytes { + type uint64; + units "byte"; + description + "Total dropped bytes"; + } + leaf total-drop-rate { + type uint32; + units "kbit/s"; + description + "Total drop rate in kbps"; + } + leaf match-data-rate { + type uint32; + units "kbit/s"; + description + "Incoming matched data rate in kbps"; + } + leaf total-transmit-rate { + type uint32; + units "kbit/s"; + description + "Total transmit rate in kbps"; + } + leaf pre-policy-matched-packets { + type uint64; + units "packets"; + description + "Matched pkts before applying policy"; + } + leaf pre-policy-matched-bytes { + type uint64; + units "byte"; + description + "Matched bytes before applying policy"; + } + } + + grouping CHILD-POLICY-CLASS-STATS { + description + "Classification of Child Service-policy Stats"; + container general-stats { + description + "general Child policy stats"; + uses GEN-STATS-ST; + } + container iphc-stats { + description + "IPHC stats"; + uses IPHC-STATS-ST; + } + container cac-stats { + description + "bag for cac stats"; + uses CAC-STATS-ST; + } + leaf counter-validity-bitmask { + type uint64; + units "megabyte"; + description + " Bitmask to indicate which counter or counters + are undetermined. Counters will be marked + undetermined when one or more classes share + queues with class-default because in such cases + the value of counters for each class is invalid. + Based on the flag(s) set, the following counters + will be marked undetermined. For example, if + value of this object returned is 0x00000101, + counters + TransmitPackets/TransmitBytes/TotalTransmitRate + and DropPackets/DropBytes are undetermined + .0x00000001 - Transmit + (TransmitPackets/TransmitBytes/TotalTransmitRate + ), 0x00000002 - Total drop + (TotalDropPackets/TotalDropBytes/TotalDropRate), + 0x00000004 - Match + (MatchDataRate/PrepolicyMatchedPackets + /PrepolicyMatchedBytes), 0x00000100 - Police + drop (DropPackets/DropBytes), 0x00000200 - + Police conform + (ConformPackets/ConformBytes/ConformRate), + 0x00000400 - Police exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00000800 - Police violate + (ViolatePackets/ViolateBytes/ViolateRate), + 0x00001000 - Parent policer drop + (ParentDropPackets/ParentDropBytes), 0x00010000 + - Queueing drop (TailDropPackets/TailDropBytes), + 0x00020000 - Red queue drop + (RandomDropPackets/RandomDropBytes), 0x00040000 + - Queue maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes), + 0x00080000 - Queue conform + (ConformPackets/ConformBytes/ConformRate), + 0x00100000 - Queue exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00200000 - CLP limit drop + (ATM_CLP0DropPackets/ATM_CLP0DropBytes + /ATM_CLP1DropPackets/ATM_CLP1DropBytes), + 0x01000000 - RED transmit + (RedTransmitPackets/RedTransmitBytes), + 0x02000000 - RED drop + (RandomDropPackets/RandomDropBytes), 0x04000000 + - RED maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes)"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "ClassName"; + } + leaf shared-queue-id { + type uint32; + description + "q-id of the shared queue for this class"; + } + leaf queue-descr { + type string { + length "0..256"; + } + description + "Description of queue for the class"; + } + leaf cac-state { + type Cac-state; + description + "CACState"; + } + list queue-stats-array { + description + "array of queue stats"; + uses Q-STATS-ST; + } + list police-stats-array { + description + "array of police stats"; + uses PLC-STATS-ST; + } + list wred-stats-array { + description + "array of red stats"; + uses RED-PROFILE-STATS; + } + } + + grouping CHILD-POLICY-QOS-STATS { + description + "policy map statistics"; + leaf policy-name { + type string { + length "0..65"; + } + description + "PolicyName"; + } + leaf state { + type Policy-state; + description + "State"; + } + leaf state-description { + type string { + length "0..128"; + } + description + "Description of the state of child Qos Policy Stats"; + } + leaf satid { + type uint32; + description + "to maintain satellite id"; + } + list class-stats { + description + "array of classes contained in policy"; + uses CHILD-POLICY-CLASS-STATS; + } + } + + grouping CLASS-STATS { + description + "Stats Classification"; + container general-stats { + description + "Stats classified as general statistics"; + uses GEN-STATS-ST; + } + container iphc-stats { + description + "IP header compression statistic information stats"; + uses IPHC-STATS-ST; + } + container child-policy { + description + "Qos child service-policy"; + uses CHILD-POLICY-QOS-STATS; + } + container cac-stats { + description + "bag for cac stats"; + uses CAC-STATS-ST; + } + leaf counter-validity-bitmask { + type uint64; + units "megabyte"; + description + " Bitmask to indicate which counter or counters + are undetermined. Counters will be marked + undetermined when one or more classes share + queues with class-default because in such cases + the value of counters for each class is invalid. + Based on the flag(s) set, the following counters + will be marked undetermined. For example, if + value of this object returned is 0x00000101, + counters + TransmitPackets/TransmitBytes/TotalTransmitRate + and DropPackets/DropBytes are undetermined + .0x00000001 - Transmit + (TransmitPackets/TransmitBytes/TotalTransmitRate + ), 0x00000002 - Total drop + (TotalDropPackets/TotalDropBytes/TotalDropRate), + 0x00000004 - Match + (MatchDataRate/PrepolicyMatchedPackets + /PrepolicyMatchedBytes), 0x00000100 - Police + drop (DropPackets/DropBytes), 0x00000200 - + Police conform + (ConformPackets/ConformBytes/ConformRate), + 0x00000400 - Police exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00000800 - Police violate + (ViolatePackets/ViolateBytes/ViolateRate), + 0x00001000 - Parent policer drop + (ParentDropPackets/ParentDropBytes), 0x00010000 + - Queueing drop (TailDropPackets/TailDropBytes), + 0x00020000 - Red queue drop + (RandomDropPackets/RandomDropBytes), 0x00040000 + - Queue maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes), + 0x00080000 - Queue conform + (ConformPackets/ConformBytes/ConformRate), + 0x00100000 - Queue exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00200000 - CLP limit drop + (ATM_CLP0DropPackets/ATM_CLP0DropBytes + /ATM_CLP1DropPackets/ATM_CLP1DropBytes), + 0x01000000 - RED transmit + (RedTransmitPackets/RedTransmitBytes), + 0x02000000 - RED drop + (RandomDropPackets/RandomDropBytes), 0x04000000 + - RED maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes)"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "ClassName"; + } + leaf shared-queue-id { + type uint32; + description + "q-id of the shared queue for this class"; + } + leaf queue-descr { + type string { + length "0..256"; + } + description + "Description of queue for the class"; + } + leaf cac-state { + type Cac-state; + description + "CACState"; + } + list queue-stats-array { + description + "array of queue stats"; + uses Q-STATS-ST; + } + list police-stats-array { + description + "array of police stats"; + uses PLC-STATS-ST; + } + list wred-stats-array { + description + "array of red stats"; + uses RED-PROFILE-STATS; + } + } + + grouping QOS-STATS { + description + "policy map statistics"; + leaf policy-name { + type string { + length "0..65"; + } + description + "PolicyName"; + } + leaf state { + type Policy-state; + description + "State"; + } + leaf state-description { + type string { + length "0..128"; + } + description + "Description of the state of Qos Policy Stats"; + } + leaf satid { + type uint32; + description + "to maintain satellite id"; + } + list class-stats { + description + "array of classes contained in policy"; + uses CLASS-STATS; + } + } + + grouping QOS-MA-SAT-IF-EDM-INFO-XML { + description + "QoS offload information on Satellite interface"; + leaf policy-name { + type string { + length "0..65"; + } + description + "Service policy name"; + } + leaf direction { + type Qos-ma-sat-caps-type-enum; + description + "Satellite caps type"; + } + leaf last-operation { + type Qos-caps-operation-enum; + description + "Previous caps operation"; + } + leaf status { + type String-arr; + description + "Status of offload"; + } + leaf error-message { + type String-arr; + description + "Error message in case of failure"; + } + } + + grouping STATISTICS { + description + "Common node of input, output"; + container statistics { + description + "Policy-map statistics operational data for an + interface"; + uses QOS-STATS; + } + } + + grouping INTERFACE { + description + "Common node of interface-table, + nv-interface-table"; + list interface { + key "interface-name"; + description + "QoS policy-map operational data for a particular + interface"; + container nodes { + description + "QoS policy-map node table"; + list node { + key "node-name"; + description + "QoS operational data for a particular node"; + leaf node-name { + type xr:Node-id; + description + "The node"; + } + uses QOS-PI-OPER-INPUT; + uses QOS-PI-OPER-OUTPUT; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses MEMBER-INTERFACE-TABLE; + uses SATELLITE-ID-TABLE; + uses QOS-PI-OPER-INPUT; + uses QOS-PI-OPER-OUTPUT; + } + } + + grouping INPUT { + description + "Common node of member-interface, + nv-satellite-interface"; + container input { + description + "A piece of QoS policy-map operational data for + an interface"; + uses STATUS; + } + } + + grouping QOS-PI-OPER-INPUT { + description + "Common node of shared-policy-instance, + member-interface, interface, + nv-satellite-interface, satellite-id"; + container input { + description + "A piece of QoS policy-map operational data for + an interface"; + container service-policy-names { + description + "Operational data for all Policy instance"; + list service-policy-instance { + key "service-policy-name"; + description + "QoS policy-map operational data for a + particular Policy "; + leaf service-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy instance"; + } + uses STATISTICS; + } + } + } + } + + grouping QOS-PI-OPER-SPI-INPUT { + description + "Grouping to display SPI input stats"; + container input { + description + "A piece of QoS policy-map operational data for + an interface"; + uses STATISTICS; + } + } + + grouping VO-Q-STATS { + description + "Common node of locationvo-q, output-vo-q, + vo-qoutput"; + container vo-q-stats { + description + "VoQ statistics operational data for an interface"; + uses QOS-STATS; + } + } + + grouping MEMBER-INTERFACE-TABLE { + description + "Common node of interface, nv-satellite-interface, + shared-policy-instance"; + container member-interfaces { + description + "QoS policy-map member interface table"; + list member-interface { + key "interface-name"; + description + "QoS policy-map member interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Name of member interface"; + } + uses SATELLITE-ID-TABLE; + uses QOS-PI-OPER-INPUT; + uses QOS-PI-OPER-OUTPUT; + } + } + } + + grouping MEMBER-INTERFACE-SPI-TABLE { + description + "Grouping to display SPI member stats"; + container member-interfaces { + description + "QoS policy-map member interface table"; + list member-interface { + key "interface-name"; + description + "QoS policy-map member interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Name of member interface"; + } + uses STATISTICS; + uses QOS-PI-OPER-SPI-INPUT; + uses QOS-PI-OPER-SPI-OUTPUT; + } + } + } + + grouping STATUS { + description + "Common node of input, output, + nv-satellite-interface"; + container status { + description + "Policy-map status operational data for an + interface"; + uses QOS-MA-SAT-IF-EDM-INFO-XML; + } + } + + grouping INTERFACE-TABLE { + description + "Common node of qos, policy-map"; + container interface-table { + description + "Operational data for all interfaces"; + uses INTERFACE; + } + } + + grouping OUTPUT { + description + "Common node of member-interface, + nv-satellite-interface"; + container output { + description + "A piece of QoS policy-map operational data for + an interface"; + uses STATUS; + } + } + + grouping QOS-PI-OPER-SPI-OUTPUT { + description + "Grouping to display SPI output stats"; + container output { + description + "A piece of QoS policy-map operational data for + an interface"; + uses STATISTICS; + } + } + + grouping QOS-PI-OPER-OUTPUT { + description + "Common node of shared-policy-instance, + member-interface, interface, + nv-satellite-interface, satellite-id"; + container output { + description + "A piece of QoS policy-map operational data for + an interface"; + container service-policy-names { + description + "Operational data for all Policy instance"; + list service-policy-instance { + key "service-policy-name"; + description + "QoS policy-map operational data for a + particular Policy "; + leaf service-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy instance"; + } + uses STATISTICS; + } + } + } + } + + grouping SATELLITE-ID-TABLE { + description + "Common node of interface, member-interface"; + container satellite-ids { + description + "Satellite ID information"; + list satellite-id { + key "nv-satellite-id"; + description + "Satellite ID information"; + leaf nv-satellite-id { + type int32 { + range "100..60000"; + } + description + "Satellite ID"; + } + uses QOS-PI-OPER-INPUT; + uses QOS-PI-OPER-OUTPUT; + } + } + } + + container qos { + config false; + description + "QoS operational data"; + container nv-interface-table { + description + "Operational data for satellite interfaces"; + uses INTERFACE; + } + container nv-satellite { + description + "Satellite table"; + container nv-satellite-statistics { + description + "Satellite statistics based on Satellite ID"; + container nv-satellite-ids { + description + "Satellite ID table"; + list nv-satellite-id { + key "satellite-id"; + description + "Satellite ID information"; + container nv-satellite-interfaces { + description + "Operational data of satellite interface of a + particular satellite"; + list nv-satellite-interface { + key "interface-name"; + description + "Operational data for a particular satellite + interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses MEMBER-INTERFACE-TABLE; + uses QOS-PI-OPER-INPUT; + uses QOS-PI-OPER-OUTPUT; + } + } + leaf satellite-id { + type int32; + description + "Satellite ID"; + } + } + } + } + container nv-satellite-status { + description + "Satellite QOS offload status based on Satellite + ID"; + container nv-satellite-ids { + description + "Satellite ID table"; + list nv-satellite-id { + key "satellite-id"; + description + "Satellite ID information"; + container nv-satellite-interfaces { + description + "QOS offload status of satellite interface of + a particular satellite"; + list nv-satellite-interface { + key "interface-name"; + description + "QOS offload status for a particular + satellite interface"; + container member-interfaces { + description + "Satellite member interface table"; + list member-interface { + key "interface-name"; + description + "Satellite member interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Name of member interface"; + } + uses INPUT; + uses OUTPUT; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses INPUT; + uses STATUS; + uses OUTPUT; + } + } + leaf satellite-id { + type int32; + description + "Satellite ID"; + } + } + } + } + } + container nodes { + description + "Node-specific QoS operational data"; + list node { + key "node-name"; + description + "QoS operational data for a particular node"; + container policy-map { + description + "Operational data for policymaps"; + container shared-policy-instances { + description + "Operational data for all SPI"; + list shared-policy-instance { + key "spi-name"; + description + "QoS policy-map operational data for a + particular SPI "; + leaf spi-name { + type xr:Cisco-ios-xr-string; + description + "Name of the shared policy instance"; + } + uses QOS-PI-OPER-SPI-INPUT; + uses QOS-PI-OPER-SPI-OUTPUT; + uses MEMBER-INTERFACE-SPI-TABLE; + } + } + uses INTERFACE-TABLE; + } + leaf node-name { + type xr:Node-id; + description + "The node"; + } + } + } + container qos-global { + description + "For global registrations"; + container vo-q { + description + "For VoQ operational data"; + container vo-q-statistics { + description + "For VoQ statistics"; + container vo-qinterfaces { + description + " For VoQ interface"; + list vo-qinterface { + key "interface-name"; + description + "QoS policy-map operational data for a + particular interface"; + container output-vo-q { + description + "output VoQ interface"; + container locationvo-qs { + description + "QoS policy-map location table"; + list locationvo-q { + key "node-name"; + description + "QoS operational data for a particular + location"; + leaf node-name { + type xr:Node-id; + description + "The node"; + } + uses VO-Q-STATS; + } + } + container service-policy-names { + description + "Operational data for all Policy instance"; + list service-policy-instance { + key "service-policy-name"; + description + "QoS policy-map operational data for a + particular Policy "; + leaf service-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy instance"; + } + uses VO-Q-STATS; + } + } + } + container vo-q-member-interfaces { + description + "VoQ QoS policy-map member interface table"; + list vo-q-member-interface { + key "interface-name"; + description + "QoS policy-map member interface statistics"; + container vo-qoutput { + description + "output VoQ interface"; + container service-policy-names { + description + "Operational data for all Policy instance"; + list service-policy-instance { + key "service-policy-name"; + description + "QoS policy-map operational data for a + particular Policy "; + leaf service-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy instance"; + } + uses VO-Q-STATS; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "Name of member interface"; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + } + } + } + } + } + uses INTERFACE-TABLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-sat-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-sat-cfg.yang new file mode 100644 index 000000000..8a1cb7bf0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-ma-sat-cfg.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-qos-ma-sat-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-qos-ma-sat-cfg"; + prefix qos-ma-sat-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-icpe-infra-cfg { + prefix a2; + } + + 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 qos satellite package configuration. + + This module contains definitions + for the following management objects: + qos satellite: QOS Satellite configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-icpe-infra-cfg + modules with configuration data. + + Copyright (c) 2013-2017, 2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-05-24 { + description + "IOS XR 7.0.1 revision."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2017-03-03 { + description + "IOS XR 6.3.1 revision."; + } + revision 2016-12-15 { + description + "IOS XR 6.2.1 revision."; + } + + grouping QOS { + description + "Common node of interface-configuration, + nv-satellite-access, nv-satellite-fabric-link, + satellites"; + container qos { + description + "Interface QOS configuration"; + container output { + description + "Egress service policy"; + uses SERVICE-POLICY; + } + container input { + description + "Ingress service policy"; + uses SERVICE-POLICY; + } + } + } + + grouping SERVICE-POLICY { + description + "Common node of input, output"; + list service-policy { + key "service-policy-name"; + description + "Service policy details"; + leaf service-policy-name { + type xr:Cisco-ios-xr-string { + length "0..64"; + } + description + "Name of policy-map"; + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration/a2:nv-satellite-access" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-icpe-infra-cfg'"; + uses QOS; + } + augment "/a1:interface-configurations/a1:interface-configuration/a2:nv-satellite-fabric-link" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-icpe-infra-cfg'"; + uses QOS; + } + augment "/a1:interface-configurations/a1:interface-configuration/a2:nv-satellite-fabric-network/a2:satellites" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-icpe-infra-cfg'"; + uses QOS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-qos-mibs-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-mibs-cfg.yang new file mode 100644 index 000000000..a4c0cdac3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-qos-mibs-cfg.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-qos-mibs-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-qos-mibs-cfg"; + prefix qos-mibs-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 qos-mibs package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container cb-qosmib { + description + "CBQoSMIB configuration"; + container cache { + description + "CBQoSMIB statistics data caching"; + leaf enable { + type empty; + description + "Enable CBQoSMIB statistics data caching"; + } + leaf refresh-time { + type uint32 { + range "5..60"; + } + units "second"; + description + "Cache refresh time in seconds"; + } + leaf service-policy-count { + type uint32 { + range "1..5000"; + } + description + "Maximum number of service policies to cache + the statistics for"; + } + } + leaf member-interface-stats { + type empty; + description + "Enable bundle member interface statistics + retrieval."; + } + leaf persist { + type empty; + description + "Persist CBQoSMIB config, service-policy and + object indices"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-remote-attestation-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-remote-attestation-act.yang new file mode 100644 index 000000000..872c58887 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-remote-attestation-act.yang @@ -0,0 +1,869 @@ +module Cisco-IOS-XR-remote-attestation-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-remote-attestation-act"; + prefix sb-attest; + + 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 defines procedure for remote attestation + of a network platform''s security posture. + This is useful to assess trustworthiness of + hardware and software of a network device. + + Copyright (c) 2017 IETF Trust and the persons identified + as authors of the code. All rights reserved. + + Redistribution and use in source and binary forms, with + or without modification, is permitted pursuant to, and + subject to the license terms contained in, the Simplified + BSD License set forth in Section 4.c of the IETF Trust''s + Legal Provisions Relating to IETF Documents + (http://trustee.ietf.org/license-info). + + This version of this YANG module is part of RFC VVVV; see + the RFC itself for full legal notices."; + + revision 2022-09-20 { + description + "Made certificate identifier as mandatory field for get-certificate rpc"; + semver:module-version "2.0.0"; + } + revision 2021-03-18 { + description + "Added attestation-results container and set-rpc for the same"; + semver:module-version "1.3.0"; + } + revision 2020-09-26 { + description + "Added IMA Audit log support"; + semver:module-version "1.2.0"; + } + revision 2020-07-10 { + description + "Added xr-task so that Limited access user should not configure + router using this model"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-08 { + description + "Adding Hardware integrity RPC"; + } + revision 2017-06-08 { + description + "Initial revision."; + } + + grouping PCR-DUMP { + description + "Defines TPM PCR register"; + leaf index { + type uint16; + description + "PCR index"; + } + leaf value { + type binary { + length "20..64"; + } + description + "PCR register content"; + } + } + + grouping hardware-unique-id-digest { + description + "Defines hardware unique id digests"; + leaf index { + type uint16; + description + "Index of the harware digest"; + } + leaf value { + type binary { + length "20..64"; + } + description + "Hardware unique ID digest"; + } + } + + grouping BOOT-EVENT-LOG { + description + "Defines an event log corresponding to the event that extended the PCR"; + leaf event-number { + type uint32; + description + "Unique event number of this event"; + } + leaf event-type { + type uint32; + description + "log event type"; + } + leaf pcr-index { + type uint16; + description + "Defines the PCR index that this event extended"; + } + list digest-list { + key "digest-hash-algorithm"; + description + "Hash of event data"; + leaf digest-hash-algorithm { + type enumeration { + enum "SHA1" { + value 0; + description + "SHA1 Hash Algorithm"; + } + enum "SHA256" { + value 1; + description + "SHA1 Hash Algorithm"; + } + enum "SHA384" { + value 2; + description + "SHA384 Hash Algorithm"; + } + enum "SHA512" { + value 3; + description + "SHA512 Hash Algorithm"; + } + } + description + "Algorithm for this digest"; + } + leaf digest { + type binary; + description + "The hash of the event data"; + } + } + leaf event-size { + type uint32; + description + "Size of the event data"; + } + leaf event-data { + type binary; + description + "the event data size determined by event-size"; + } + } + + grouping IMA-EVENT { + description + "Defines an hash log extend event for IMA measurements"; + leaf event-number { + type uint64; + description + "Unique number for this event for sequencing"; + } + leaf ima-template { + type string; + description + "Name of the template used for event + for e.g. ima, ima-ng"; + } + leaf filename-hint { + type string; + description + "File that was measured"; + } + leaf filedata-hash { + type binary; + description + "Hash of filedata"; + } + leaf template-hash-algorithm { + type string; + description + "Algorithm used for template-hash"; + } + leaf template-hash { + type binary; + description + " hash(filedata-hash, filename-hint)"; + } + leaf pcr-index { + type uint16; + description + "Defines the PCR index that this event extended"; + } + leaf signature { + type binary; + description + "The file signature"; + } + } + + grouping IMA-AUDIT { + description + "Defines a model to display audit event details"; + leaf filename { + type string; + description + "file name of the file that was appraised"; + } + leaf timestamp { + type string; + description + "timestamp of violation"; + } + leaf type { + type string; + description + "Type of data being appraised"; + } + leaf pid { + type uint64; + description + "Process ID"; + } + leaf calling_process { + type string; + description + "calling Process"; + } + leaf subject { + type string; + description + "SELinux file context label"; + } + leaf cause { + type string; + description + "Reason for integrity verification failure + (invalid-signature, invalid-hash, missing-hash)"; + } + } + + grouping system-certificates { + description + "System Certificates"; + container get-certificate-response { + description + "Get Certificate Response"; + list system-certificates { + key "node-location"; + description + "Certificate data of a node in a distributed system + identified by the location"; + leaf node-location { + type string; + description + "Location of the node in the distributed system"; + } + leaf nonce { + type binary { + length "0..64"; + } + description + "Nonce used for this output"; + } + container certificates { + description + "Certificates chain associated with the certificate + being queried"; + list certificate { + key "name"; + description + "A X.509 certificate"; + leaf name { + type string; + description + "A node-unique certificate identifier"; + } + leaf value { + type binary; + description + "Certificate content in DER format."; + } + } + } + leaf signature_version { + type uint32; + description + "Signature version designates + the format of the signed data."; + } + leaf signature { + type binary; + description + "The optional RSA or ECDSA signature across + the certificates,the signature version and + the input nonce.Signed data format is: + Nonce || UINT32 signature version || + [Certificate included in the response in DER format]."; + } + } + } + } + + grouping platform-config-registers { + description + "Platform Config Registers"; + container platform-config-registers { + description + "Attested Platform Config Register values"; + leaf nonce { + type binary { + length "0..64"; + } + description + "Nonce used for this output"; + } + list node-data { + key "tpm-name"; + description + "Certificate data of a node in a distributed system + identified by the location"; + leaf tpm-name { + type string; + description + "TPM name in the distributed system that has recorded and reporting this measurement"; + } + leaf node-location { + type string; + description + "Location of the node in the distributed system that is accessing TPM associated with this measurements"; + } + leaf up-time { + type uint32; + description + "Uptime in seconds of this node reporting its data"; + } + list PCR { + key "index"; + description + "List of requested PCR contents"; + uses PCR-DUMP; + } + leaf pcr-quote { + type binary; + description + "TPM PCR Quote"; + } + leaf pcr-quote-signature { + type binary; + description + "PCR Quote signature using TPM-held + ECC or RSA restricted key"; + } + } + } + } + + grouping system-boot-integrity { + description + "System Boot Integrity"; + container system-boot-integrity { + description + "Boot integrity event logs"; + list node-data { + key "node-location"; + description + "Boot integrity event logs of a node in a distributed system + identified by the location"; + leaf node-location { + type string; + description + "Location of the node in the distributed system"; + } + leaf up-time { + type uint32; + description + "Uptime in seconds of this node reporting its data"; + } + list event_log { + key "event-number"; + description + "Ordered list of TCG described event log + that extended the PCRs in the order they + were logged"; + uses BOOT-EVENT-LOG; + } + } + } + } + + grouping system-ima { + description + "System IMA"; + container system-ima { + description + "Runtime integrity measurement event logs"; + list node-data { + key "node-location"; + description + "IMA event logs of a node in a distributed system + identified by the location"; + leaf node-location { + type string; + description + "Location of the node in the distributed system"; + } + leaf up-time { + type uint32; + description + "Uptime in seconds of this node reporting its data"; + } + leaf start-time { + type string; + description + "start time in asctime format of this node reporting its data"; + } + list ima-event-log { + key "event-number"; + description + "Ordered list of ima event logs by event-number"; + uses IMA-EVENT; + } + } + } + } + + grouping ima-audit-logs { + description + "System IMA Audit Logs"; + container ima-audit-logs { + description + "Audit logs generated from IMA appraisal"; + list node-data { + key "node-location"; + description + "IMA audit event logs of a node in a distributed system + identified by the location"; + leaf node-location { + type string; + description + "Location of the node in the distributed system"; + } + leaf up-time { + type uint32; + description + "Uptime in seconds of this node reporting its data"; + } + leaf start-time { + type string; + description + "Start time of the node in asctime format"; + } + list audit-event-log { + key "filename"; + description + "Ordered list of audit-event logs"; + uses IMA-AUDIT; + } + } + } + } + + grouping hardware-integrity { + description + "Hardware Integrity"; + container hardware-integrity { + description + "Hardware component unique ID digests of the system"; + list hardware-integrity-measurements { + key "tpm-name"; + description + "hardware integrity measurement data of a node in a distributed system"; + leaf tpm-name { + type string; + description + "TPM name in the distributed system that recorded the hardware integrity"; + } + leaf location { + type string; + description + "Node location that is accessing TPM associated with this measurements"; + } + leaf up-time { + type uint32; + description + "Uptime in seconds of this node reporting its data"; + } + list known-good-digest { + key "index"; + description + "List of Digests of Known Good Values of hardware component unique IDs"; + uses hardware-unique-id-digest; + } + list observed-digest { + key "index"; + description + "List of Digests of Observed Values of hardware component unique IDs"; + uses hardware-unique-id-digest; + } + list PCR { + key "index"; + description + "List of PCR contents that were extended for hardware integrity measurements"; + uses PCR-DUMP; + } + leaf pcr-quote { + type binary; + description + "TPM PCR Quote"; + } + leaf attestation-certificate-identifier { + type string; + description + "Identifier of the certificate used for signing PCR"; + } + leaf pcr-quote-signature-format { + type enumeration { + enum "TPM2" { + value 0; + description + "TMP2 format of the pcr-quote-signature"; + } + enum "CISCO" { + value 1; + description + "Cisco format of the pcr-quote-signature"; + } + } + description + "Format of the pcr-quote-signature"; + } + leaf pcr-quote-signature { + type binary; + description + "PCR Quote signature using TPM-held + ECC or RSA restricted key"; + } + } + } + } + + grouping attestation-results { + description + "Attestation results"; + container attestation-results { + description + "Per-node attestation results"; + list node-data { + description + "Per-node attestation data"; + leaf node-location { + type string; + mandatory true; + description + "Location of the node in the distributed system"; + } + leaf result-encode-type { + type enumeration { + enum "cbor" { + value 1; + description + "CBOR RFC: https://tools.ietf.org/html/rfc7049"; + } + } + mandatory true; + description + "Result encode type"; + } + leaf result { + type binary; + mandatory true; + description + "The data is encoded in the sequence of objects as defined by the + attestation-results-data group present in the following CDDL file: + https://wwwin-github.cisco.com/agautham/TPR/blob/master/models/cddl/flat.cddl"; + } + leaf verifier-signature { + type binary; + mandatory true; + description + "Signature of the Verifier across the above blob of encoded data"; + } + } + } + } + + rpc get-certificate { + description + "Query certificate. + Returns certificate chain + associated with the queried certificate. + An optional nonce can be provided, that is then used to + return a signature over the certificate contents returned."; + input { + leaf nonce { + type binary { + length "0..64"; + } + description + "Nonce to be included in the attested output + to prevent replay attacks"; + } + leaf certificate-identifier { + type string; + mandatory true; + description + "Certificate identifier Cisco SUDI or Cisco AIK"; + } + leaf location { + type string; + description + "In a distributed system get the data from a specific node + identified by the location. If this field is not specified + data associated with each node forming the system will be + returned."; + } + } + output { + uses system-certificates; + } + } + rpc attest-platform-config-registers { + description + "Attest Platform Configuration Register(PCRs)"; + input { + leaf-list pcr-index { + type uint16; + min-elements 1; + description + "PCR register indices to be included in the attested output"; + } + leaf nonce { + type binary { + length "0..64"; + } + description + "Nonce to be included in the attested output + to prevent replay attacks"; + } + leaf attestation-certificate-identifier { + type string; + description + "Identifier of the certificate to be used for attestation"; + } + leaf location { + type string; + description + "In a distributed system get the data from a specific node + identified by the location. If this field is not specified + data associated with each node forming the system will be + returned."; + } + } + output { + uses platform-config-registers; + } + } + rpc get-platform-boot-integrity-event-logs { + description + "Get platform's boot integrity"; + input { + leaf location { + type string; + description + "In a distributed system get the data from a specific node + identified by the location. If this field is not specified + data associated with each node forming the system will be + returned."; + } + leaf start-event-number { + type uint64; + description + "To filter event logs to be retrieved. + - If set only events with sequence number + greater than that specified in this argument + will be returned."; + } + leaf end-event-number { + type uint64; + must "current() >= ../start-event-number" { + description + "end-event-number must be used with and be greater than or + equal to "; + } + description + "To control event logs to be retrieved. + - If set only events with sequence number + in the range of start-event-number to end-event-number + will be returned."; + } + } + output { + uses system-boot-integrity; + } + } + rpc get-platform-ima-event-logs { + description + "Get platform IMA event logs"; + input { + leaf location { + type string; + description + "In a distributed system get the data from a specific node + identified by the location. If this field is not specified + data associated with each node forming the system will be + returned."; + } + leaf start-event-number { + type uint64; + description + "To filter event logs to be retrieved. + - If set only events with sequence number + greater than that specified in this argument + will be returned."; + } + leaf end-event-number { + type uint64; + must "current() >= ../start-event-number" { + description + "end-event-number must be used with and be greater than or + equal to "; + } + description + "To control event logs to be retrieved. + - If set only events with sequence number + in the range of start-event-number to end-event-number + will be returned."; + } + } + output { + uses system-ima; + } + } + rpc get-platform-ima-audit-event-logs { + description + "Get platform IMA Audit event logs"; + input { + leaf location { + type string; + description + "In a distributed system get the data from a specific node + identified by the location. If this field is not specified + data associated with each node forming the system will be + returned."; + } + } + output { + uses ima-audit-logs; + } + } + rpc get-platform-hardware-integrity-measurements { + description + "Get platform's hardware integrity measurements"; + input { + leaf nonce { + type binary { + length "0..64"; + } + description + "Nonce to be included in the attested output + to prevent replay attacks"; + } + leaf digest-hash-algorithm { + type enumeration { + enum "SHA1" { + value 0; + description + "SHA1 Hash Algorithm"; + } + enum "SHA256" { + value 1; + description + "SHA256 Hash Algorithm"; + } + enum "SHA384" { + value 2; + description + "SHA384 Hash Algorithm"; + } + enum "SHA512" { + value 3; + description + "SHA512 Hash Algorithm"; + } + } + description + "Algorithm for the digest of hardware unique IDs"; + } + leaf location { + type string; + description + "In a distributed system get the data from a specific node + identified by the location. If this field is not specified + data associated with each node forming the system will be + returned. A node may have multiple TPMs. This will return measurements from all TPMs"; + } + } + output { + uses hardware-integrity; + } + } + rpc set-attestation-results { + description + "Used by the Verifier to push the attestation-results of an Attestee"; + input { + uses attestation-results; + } + } + notification hardware-intergrity-failure { + description + "Notifies failure of hardware integrity check"; + leaf system-identifier { + type string; + description + "System identifier"; + } + } + notification boot-integrity-failure { + description + "Notifies failure of boot integrity checks at + any stage of boot"; + leaf system-identifier { + type string; + description + "System identifier"; + } + } + notification runtime-integrity-failure { + description + "Notifies failure of runtime integrity checks"; + leaf system-identifier { + type string; + description + "System identifier"; + } + leaf filename-hint { + type string; + description + "File that was appraised and failed integrity checks"; + } + leaf filedata-hash { + type binary; + description + "Hash of filedata that failed IMA appraisal"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-cfg.yang new file mode 100644 index 000000000..d527551f8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-cfg.yang @@ -0,0 +1,201 @@ +module Cisco-IOS-XR-rgmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-rgmgr-cfg"; + prefix rgmgr-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 rgmgr package configuration. + + This module contains definitions + for the following management objects: + redundancy-group-manager: Redundancy Group Manager + Configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-08-01 { + description + "Adding CCV support"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Iccp-mode { + type enumeration { + enum "singleton" { + value 1; + description + "Run the ICCP group in Singleton mode"; + } + } + description + "Iccp mode"; + } + + container redundancy-group-manager { + description + "Redundancy Group Manager Configuration"; + container aps { + description + "MR-APS groups"; + container default-redundancy-group { + description + "Default SONET controller backup configuration"; + leaf next-hop-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of remote peer"; + } + leaf backup-interface-name { + type xr:Interface-name; + description + "Backup interface name"; + } + } + container groups { + description + "Redundancy Group Table"; + list group { + key "group-id"; + description + "Redundancy Group Configuration"; + container controllers { + description + "Controller configuration"; + list controller { + key "controller-name"; + description + "none"; + leaf controller-name { + type xr:Interface-name; + description + "Controller Name"; + } + leaf next-hop-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of remote peer"; + } + leaf backup-interface-name { + type xr:Interface-name; + description + "Backup interface name"; + } + } + } + leaf group-id { + type uint32 { + range "1..32"; + } + description + "The redundancy group ID"; + } + } + } + } + container iccp { + description + "ICCP configuration"; + container iccp-groups { + description + "Redundancy Group Table Configuration"; + list iccp-group { + key "group-number"; + description + "Redundancy Group Configuration"; + container backbones { + description + "ICCP backbone configuration"; + list backbone { + key "backbone-name"; + description + "ICCP backbone interface configuration"; + leaf backbone-name { + type xr:Interface-name; + description + "none"; + } + } + } + container members { + description + "ICCP member configuration"; + list member { + key "neighbor-address"; + description + "ICCP member configuration"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor IP address"; + } + } + } + leaf isolation-recovery-delay { + type uint32 { + range "30..600"; + } + units "second"; + description + "ICCP isolation recovery delay"; + } + leaf mode { + type Iccp-mode; + description + "ICCP mode"; + } + leaf group-number { + type uint32 { + range "1..4294967295"; + } + description + "The redundancy icc group number"; + } + } + } + } + leaf enable { + type empty; + description + "Enable redundancy group manager"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper-sub1.yang new file mode 100644 index 000000000..dcee23512 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper-sub1.yang @@ -0,0 +1,97 @@ +submodule Cisco-IOS-XR-rgmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-rgmgr-oper { + prefix Cisco-IOS-XR-rgmgr-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR rgmgr package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping RGMGR-RED-GRP { + description + "RGMGR RED GRP"; + leaf multi-router-aps-group-number { + type string { + length "0..64"; + } + description + "Configured interchassis redundancy group number"; + } + leaf controller-name-xr { + type string { + length "0..64"; + } + description + "Name of controller being backed up"; + } + leaf controller-handle { + type xr:Interface-name; + description + "Handle of controller being backed up"; + } + leaf backup-interface-name { + type string { + length "0..64"; + } + description + "Backup interface name"; + } + leaf backup-interface-handle { + type xr:Interface-name; + description + "Backup interface handle"; + } + leaf backup-interface-next-hop-ip-address { + type inet:ipv4-address; + description + "Backup interface next hop IP address"; + } + leaf inter-chassis-group-state { + type string { + length "0..64"; + } + description + "Configured interchassis redundancy group state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper.yang new file mode 100644 index 000000000..0745d6e0e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rgmgr-oper.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-rgmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-rgmgr-oper"; + prefix rgmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-rgmgr-oper-sub1 { + revision-date 2021-12-01; + } + + 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 rgmgr package operational data. + + This module contains definitions + for the following management objects: + redundancy-group-manager: Redundancy group manager operational + data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container redundancy-group-manager { + config false; + description + "Redundancy group manager operational data"; + container controllers { + description + "Redundancy group manager data"; + list controller { + key "controller-name"; + description + "Display redundancy group by controller name"; + leaf controller-name { + type xr:Interface-name; + description + "Controller name"; + } + uses RGMGR-RED-GRP; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-roe-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-roe-cfg.yang new file mode 100644 index 000000000..beb0615c4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-roe-cfg.yang @@ -0,0 +1,399 @@ +module Cisco-IOS-XR-roe-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-roe-cfg"; + prefix roe-cfg; + + import ietf-yang-types { + prefix yang; + } + 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 roe package configuration. + + This module contains definitions + for the following management objects: + roe: ROE configuration data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-10 { + description + "Added new leaf hfn-sync-disable to list profile."; + semver:module-version "2.0.0"; + } + revision 2020-02-27 { + description + "Initial ROE config yang"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Roe-packet-length { + type enumeration { + enum "2" { + value 2; + description + "Two CPRI basic frames"; + } + enum "4" { + value 4; + description + "Four CPRI basic frames"; + } + enum "8" { + value 8; + description + "Eight CPRI basic frames"; + } + enum "16" { + value 16; + description + "Sixteen CPRI basic frames"; + } + } + description + "Roe packet length"; + } + + typedef Roe-order-info { + type enumeration { + enum "sequence-num" { + value 0; + description + "Sequence Number"; + } + enum "sequence-num-and-time-stamp" { + value 2; + description + "Both sequence number and timestamp"; + } + } + description + "Roe order info"; + } + + typedef Roe-mapper { + type enumeration { + enum "structure-agnostic-tunneling" { + value 0; + description + "Structure agnostic tunneling mode"; + } + enum "structure-agnostic-wo-line-coding" { + value 1; + description + "Structure agnostic without line coding mode"; + } + enum "structure-aware" { + value 2; + description + "Structure aware mode"; + } + } + description + "Roe mapper"; + } + + container roe { + description + "ROE configuration data"; + container ethlinks { + description + "List of ROE Eth link profiles"; + list ethlink { + key "ethlink-id"; + description + "ROE Eth link configuration parameters"; + leaf enable { + type empty; + description + "Enable Ethlink submode"; + } + leaf destination-mac { + type yang:mac-address; + description + "Ethlink destination MAC address"; + } + leaf source-mac { + type yang:mac-address; + description + "Ethlink source MAC address"; + } + leaf ethlink-id { + type uint32 { + range "1..65535"; + } + description + "Ethlink identifier"; + } + } + } + container profiles { + description + "List of ROE Profile"; + list profile { + key "profile-id"; + description + "ROE profile parameters"; + leaf enable { + type empty; + description + "Enable Profile submode"; + } + leaf demapper-sync-threshold { + type uint32 { + range "4..63"; + } + description + "Demapper sync threshold"; + } + leaf demapper-resync-match-threshold { + type uint32 { + range "0..15"; + } + default "0"; + description + "Demapper resync match threshold"; + } + leaf mapper-presync-match-threshold { + type uint32 { + range "0..15"; + } + default "0"; + description + "Mapper presync match threshold"; + } + leaf demapper-resync-mismatch-threshold { + type uint32 { + range "0..15"; + } + default "0"; + description + "Demapper resync mismatch threshold"; + } + leaf compress { + type uint32 { + range "0..1"; + } + default "0"; + description + "enable/disable compression"; + } + leaf hfn-sync-disable { + type empty; + description + "Disable HFN sync. Applicable only for + Structure Agnostic tunneling mode(Type-0) + mapper type config in non auto-neg CPRI port"; + } + leaf mapper-resync-mismatch-threshold { + type uint32 { + range "0..15"; + } + default "0"; + description + "Mapper resync mismatch threshold"; + } + leaf sample-width { + type uint32 { + range "0..255"; + } + default "16"; + description + "Sample width"; + } + leaf mapper-resync-match-threshold { + type uint32 { + range "0..15"; + } + default "0"; + description + "Mapper resync match threshold"; + } + leaf demapper-presync-match-threshold { + type uint32 { + range "0..15"; + } + default "0"; + description + "Demapper presync match threshold"; + } + leaf num-of-containers { + type uint32 { + range "0..255"; + } + default "0"; + description + "Number of Containers"; + } + leaf num-of-prach { + type uint32 { + range "0..255"; + } + default "0"; + description + "Number of PRACH"; + } + leaf num-of-fft { + type uint32 { + range "0..255"; + } + default "0"; + description + "Number of FFT"; + } + leaf packet-length { + type Roe-packet-length; + default "4"; + description + "Packet length in terms of CPRI basic frames"; + } + leaf demapper-flow-id { + type uint32 { + range "0..255"; + } + default "0"; + description + "Demapper flow id"; + } + leaf demapper-drain-threshold { + type uint32 { + range "4..64"; + } + description + "Demapper drain threshold"; + } + leaf mapper-flow-id { + type uint32 { + range "0..255"; + } + default "0"; + description + "Mapper flow id"; + } + leaf num-of-control-containers { + type uint32 { + range "0..255"; + } + default "0"; + description + "Number of control containers"; + } + leaf demapper-resync-mismatch-count { + type uint32 { + range "0..15"; + } + default "0"; + description + "Demapper resync mismatch count"; + } + leaf demapper-resync-match-count { + type uint32 { + range "0..15"; + } + default "0"; + description + "Demapper resync match count"; + } + leaf mapper-type { + type Roe-mapper; + default "structure-agnostic-tunneling"; + description + "Mapper type"; + } + leaf idle-frame-size { + type uint32 { + range "0..255"; + } + default "0"; + description + "Idle Frame Size"; + } + leaf accept-time-window { + type uint32 { + range "0..536870911"; + } + default "0"; + description + "Accept time window"; + } + leaf order-info { + type Roe-order-info; + default "sequence-num"; + description + "Order info type"; + } + leaf ethlink-identifier { + type uint32 { + range "1..65535"; + } + description + "Ethlink profile attached to this ROE profile"; + } + leaf idle-frame-threshold { + type uint32 { + range "0..1048575"; + } + default "0"; + description + "Idle frame threshold (in terms of number of + packets)"; + } + leaf retimer-buffer { + type uint32 { + range "0..255"; + } + default "0"; + description + "Retimer buffer"; + } + leaf encrypt { + type uint32 { + range "0..1"; + } + default "0"; + description + "enable/disable encryption"; + } + leaf demapper-presync-match-count { + type uint32 { + range "0..15"; + } + default "0"; + description + "Demapper presync match count"; + } + leaf profile-id { + type uint32 { + range "1..255"; + } + description + "Profile identifier"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper-sub1.yang new file mode 100644 index 000000000..3e0c5962e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper-sub1.yang @@ -0,0 +1,212 @@ +submodule Cisco-IOS-XR-roe-oper-sub1 { + belongs-to Cisco-IOS-XR-roe-oper { + prefix Cisco-IOS-XR-roe-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR roe package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-10 { + description + "Added leaf hfn-sync-disable to grouping ROE-PROFILE-INFO."; + semver:module-version "2.0.0"; + } + revision 2020-02-27 { + description + "Show command subtype added for ROE"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ROE-ETHLINK-INFO { + description + "ROE ethlink info"; + leaf source-mac-address { + type yang:mac-address; + description + "Source Mac Address"; + } + leaf destionation-mac-address { + type yang:mac-address; + description + "Destination Mac Address"; + } + } + + grouping ROE-PROFILE-INFO { + description + "ROE profile info"; + leaf mapper-flow-identifier { + type uint8; + description + "Mapper Flow Identifier"; + } + leaf demapper-flow-identifier { + type uint8; + description + "Demapper Flow Identifier"; + } + leaf order-info-type { + type uint8; + description + "Sequence number or timestamp or both"; + } + leaf mapper-type { + type uint8; + description + "Structure agnostic or aware"; + } + leaf encrypt { + type boolean; + description + "Encryption supported or not"; + } + leaf compression { + type boolean; + description + "Compression supported or not"; + } + leaf packet-length { + type uint16; + description + "Length of the ROE packet"; + } + leaf accepted-time-window { + type uint32; + description + "Delay within which ROE pkts should reach + destination"; + } + leaf sample-width { + type uint8; + description + "Sample width of I/Q samples"; + } + leaf num-of-containers { + type uint8; + description + "Num of containers"; + } + leaf num-of-control-containers { + type uint8; + description + "Num of control containers"; + } + leaf num-of-fft { + type uint8; + description + "Num of FFT objects"; + } + leaf num-of-prach { + type uint8; + description + "Num of PRACH objects"; + } + leaf retimer-buffer-size { + type uint32; + description + "Retimer buffer size"; + } + leaf idle-frame-size { + type uint32; + description + "Idle frame size"; + } + leaf idle-frame-threshold { + type uint32; + description + "Idle frame threshold"; + } + leaf mapper-presync-match-threshold { + type uint8; + description + "Mapper Presync Match Threshold"; + } + leaf demapper-presync-match-threshold { + type uint8; + description + "Demapper Presync Match Threshold"; + } + leaf mapper-resync-match-threshold { + type uint8; + description + "Mapper Resync Match Threshold"; + } + leaf demapper-resync-match-threshold { + type uint8; + description + "Demapper Resync Match Threshold"; + } + leaf mapper-resync-mismatch-threshold { + type uint8; + description + "Mapper Resync Mismatch Threshold"; + } + leaf demapper-resync-mismatch-threshold { + type uint8; + description + "Demapper Resync Mismatch Threshold"; + } + leaf demapper-sync-threshold { + type uint8; + description + "Demapper Sync Threshold"; + } + leaf demapper-drain-threshold { + type uint8; + description + "Demapper Drain Threshold"; + } + leaf demapper-presync-match-count { + type uint8; + description + "Demapper Presync Match Count"; + } + leaf demapper-resync-match-count { + type uint8; + description + "Demapper Resync Match Count"; + } + leaf demapper-resync-mismatch-count { + type uint8; + description + "Demapper Resync Mismatch Count"; + } + leaf hfn-sync-disable { + type boolean; + description + "HFN Sync disabled when set. Applicable only for + type-0 mapper config in non auto-neg CPRI port"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper.yang new file mode 100644 index 000000000..9ea6e8958 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-roe-oper.yang @@ -0,0 +1,89 @@ +module Cisco-IOS-XR-roe-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-roe-oper"; + prefix roe-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-roe-oper-sub1 { + revision-date 2021-05-10; + } + + 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 roe package operational data. + + This module contains definitions + for the following management objects: + roe: ROE Operational Data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-10 { + description + "Added leaf hfn-sync-disable to grouping ROE-PROFILE-INFO."; + semver:module-version "2.0.0"; + } + revision 2020-02-27 { + description + "Show command subtype added for ROE"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container roe { + config false; + description + "ROE Operational Data"; + container profiles { + description + "List of ROE profiles configured"; + list profile { + key "profile-id"; + description + "ROE profile parameters"; + leaf profile-id { + type uint32; + description + "Profile identifier"; + } + uses ROE-PROFILE-INFO; + } + } + container ethlinks { + description + "List of ROE ethlink profiles configured"; + list ethlink { + key "ethlink-id"; + description + "ROE Eth link profile parameters"; + leaf ethlink-id { + type uint32; + description + "Ethlink identifier"; + } + uses ROE-ETHLINK-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper-sub1.yang new file mode 100644 index 000000000..a2884db1f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper-sub1.yang @@ -0,0 +1,399 @@ +submodule Cisco-IOS-XR-rptiming-dti-oper-sub1 { + belongs-to Cisco-IOS-XR-rptiming-dti-oper { + prefix Cisco-IOS-XR-rptiming-dti-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR rptiming-dti package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DTI-TOD-INFO { + description + "DTI tod status"; + leaf port1-tod-message-mode { + type string { + length "0..50"; + } + description + "port1 tod message mode"; + } + leaf port1-tod-state { + type string { + length "0..50"; + } + description + "port1 tod state"; + } + leaf port1-tod-time-setting-mode { + type string { + length "0..50"; + } + description + "port1 tod time setting mode"; + } + leaf port1-gps-seconds { + type uint32; + units "second"; + description + "port1 gps seconds"; + } + leaf port1-leap-seconds { + type uint8; + units "second"; + description + "port1 leap seconds"; + } + leaf port1-calendar-time-valid { + type string { + length "0..50"; + } + description + "port1 calendar time valid"; + } + leaf port1-modified-julian-date { + type string { + length "0..50"; + } + description + "port1 modified julian date"; + } + leaf port1-date { + type string { + length "0..50"; + } + description + "port1 date"; + } + leaf port1-time { + type string { + length "0..50"; + } + description + "port1 time"; + } + leaf port1-time-zone-offset { + type string { + length "0..50"; + } + description + "port1 time zone offset"; + } + leaf port1-leap-second-indicator { + type uint8; + description + "port1 leap second indicator"; + } + leaf port2-tod-message-mode { + type string { + length "0..50"; + } + description + "port2 tod message mode"; + } + leaf port2-tod-state { + type string { + length "0..50"; + } + description + "port2 tod state"; + } + leaf port2-tod-time-setting-mode { + type string { + length "0..50"; + } + description + "port2 tod time setting mode"; + } + leaf port2-gps-seconds { + type uint32; + units "second"; + description + "port2 gps seconds"; + } + leaf port2-leap-seconds { + type uint8; + units "second"; + description + "port2 leap seconds"; + } + leaf port2-calendar-time-valid { + type string { + length "0..50"; + } + description + "port2 calendar time valid"; + } + leaf port2-modified-julian-date { + type string { + length "0..50"; + } + description + "port2 modified julian date"; + } + leaf port2-date { + type string { + length "0..50"; + } + description + "port2 date"; + } + leaf port2-time { + type string { + length "0..50"; + } + description + "port2 time"; + } + leaf port2-time-zone-offset { + type string { + length "0..50"; + } + description + "port2 time zone offset"; + } + leaf port2-leap-second-indicator { + type uint8; + description + "port2 leap second indicator"; + } + } + + grouping DTI-PORT-INFO { + description + "DTI port status"; + leaf port1-fr-err-rate-greater5-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port1 frame error rate greater than 5 percent"; + } + leaf port1-fr-err-rate-greater2-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port1 frame error rate greater than 2 percent"; + } + leaf port1-dti-signal-detected { + type string { + length "0..50"; + } + description + "port1 DTI signal detected"; + } + leaf port1-server-timing-source { + type string { + length "0..50"; + } + description + "port1 server timing source"; + } + leaf port1-server-type { + type string { + length "0..50"; + } + description + "port1 server type"; + } + leaf port1-server-clock-type { + type string { + length "0..50"; + } + description + "port1 server clock type"; + } + leaf port1-server-state { + type string { + length "0..50"; + } + description + "port1 server state"; + } + leaf port1-client-perf-stable { + type string { + length "0..50"; + } + description + "port1 client performance stable"; + } + leaf port1-cable-advance-valid { + type string { + length "0..50"; + } + description + "port1 cable advance valid"; + } + leaf port2-fr-err-rate-greater5-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port2 frame error rate greater than 5 percent"; + } + leaf port2-fr-err-rate-greater2-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port2 frame error rate greater than 2 percent"; + } + leaf port2-dti-signal-detected { + type string { + length "0..50"; + } + description + "port2 DTI signal detected"; + } + leaf port2-server-timing-source { + type string { + length "0..50"; + } + description + "port2 server timing source"; + } + leaf port2-server-type { + type string { + length "0..50"; + } + description + "port2 server type"; + } + leaf port2-server-clock-type { + type string { + length "0..50"; + } + description + "port2 server clock type"; + } + leaf port2-server-state { + type string { + length "0..50"; + } + description + "port2 server state"; + } + leaf port2-client-perf-stable { + type string { + length "0..50"; + } + description + "port2 client performance stable"; + } + leaf port2-cable-advance-valid { + type string { + length "0..50"; + } + description + "port2 cable advance valid"; + } + } + + grouping DTI-CLIENT-INFO { + description + "DTI client status"; + leaf timestamp-comparator-enable { + type string { + length "0..50"; + } + description + "timestamp comparator enable"; + } + leaf register-write-enable { + type string { + length "0..50"; + } + description + "register write enable"; + } + leaf revertive-mode-enable { + type string { + length "0..50"; + } + description + "revertive mode enable"; + } + leaf port-mode-select { + type string { + length "0..50"; + } + description + "port mode select"; + } + leaf force-freerun { + type string { + length "0..50"; + } + description + "force freerun"; + } + leaf reference-select-port { + type string { + length "0..50"; + } + description + "reference select port"; + } + leaf timestamp-sync-detected { + type string { + length "0..50"; + } + description + "timestamp sync detected"; + } + leaf reference10mhz-detected { + type string { + length "0..50"; + } + description + "10Mhz reference detected"; + } + leaf active-input-port { + type string { + length "0..50"; + } + description + "active input port"; + } + leaf client-state { + type string { + length "0..50"; + } + description + "client state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper.yang new file mode 100644 index 000000000..ea9fe7b82 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-dti-oper.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-rptiming-dti-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-rptiming-dti-oper"; + prefix rptiming-dti-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-rptiming-dti-oper-sub1 { + revision-date 2019-04-05; + } + + 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 rptiming-dti package operational data. + + This module contains definitions + for the following management objects: + dti-controller: DTI interface controller status and + configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dti-controller { + config false; + description + "DTI interface controller status and configuration"; + container nodes { + description + "List of nodes applicable to DTI controller"; + list node { + key "node-name"; + description + "DTI operational data for a single node"; + container client { + description + "Display DTI client status"; + uses DTI-CLIENT-INFO; + } + container port { + description + "Display DTI input port status"; + uses DTI-PORT-INFO; + } + container time-of-day { + description + "Display DTI time-of-day status"; + uses DTI-TOD-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper-sub1.yang new file mode 100644 index 000000000..b716840bd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper-sub1.yang @@ -0,0 +1,1360 @@ +submodule Cisco-IOS-XR-rptiming-oper-sub1 { + belongs-to Cisco-IOS-XR-rptiming-oper { + prefix Cisco-IOS-XR-rptiming-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR rptiming package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "led and utc-offset values added for yang"; + semver:module-version "1.1.0"; + } + revision 2020-05-29 { + description + "Added/Modified to clear the inconsistencies"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TMG-PLL-INFO { + description + "Timing PLL status"; + leaf t0-pll-state { + type string { + length "0..50"; + } + description + "T0 PLL state"; + } + leaf t4-pll-state { + type string { + length "0..50"; + } + description + "T4 PLL state"; + } + leaf ptp-pll-state { + type string { + length "0..50"; + } + description + "1588 PLL state"; + } + leaf t0-pll-selected { + type string { + length "0..50"; + } + description + "T0 PLL selected"; + } + leaf t4-pll-selected { + type string { + length "0..50"; + } + description + "T4 PLL selected"; + } + leaf ptp-pll-selected { + type string { + length "0..50"; + } + description + "1588 PLL selected"; + } + leaf t0-pll-mode { + type string { + length "0..50"; + } + description + "T0 PLL mode"; + } + leaf t4-pll-mode { + type string { + length "0..50"; + } + description + "T4 PLL mode"; + } + leaf ptp-pll-mode { + type string { + length "0..50"; + } + description + "1588 PLL mode"; + } + leaf t0-pll-ic1-prio { + type uint8; + description + "T0 PLL IC1 Priority"; + } + leaf t0-pll-ic2-prio { + type uint8; + description + "T0 PLL IC2 Priority"; + } + leaf t0-pll-ic3-prio { + type uint8; + description + "T0 PLL IC3 Priority"; + } + leaf t0-pll-ic4-prio { + type uint8; + description + "T0 PLL IC4 Priority"; + } + leaf t0-pll-ic5-prio { + type uint8; + description + "T0 PLL IC5 Priority"; + } + leaf t0-pll-ic6-prio { + type uint8; + description + "T0 PLL IC6 Priority"; + } + leaf t0-pll-ic7-prio { + type uint8; + description + "T0 PLL IC7 Priority"; + } + leaf t0-pll-ic8-prio { + type uint8; + description + "T0 PLL IC8 Priority"; + } + leaf t0-pll-ic9-prio { + type uint8; + description + "T0 PLL IC9 Priority"; + } + leaf t0-pll-ic10-prio { + type uint8; + description + "T0 PLL IC10 Priority"; + } + leaf t4-pll-ic1-prio { + type uint8; + description + "T4 PLL IC1 Priority"; + } + leaf t4-pll-ic2-prio { + type uint8; + description + "T4 PLL IC2 Priority"; + } + leaf t4-pll-ic3-prio { + type uint8; + description + "T4 PLL IC3 Priority"; + } + leaf t4-pll-ic4-prio { + type uint8; + description + "T4 PLL IC4 Priority"; + } + leaf t4-pll-ic5-prio { + type uint8; + description + "T4 PLL IC5 Priority"; + } + leaf t4-pll-ic6-prio { + type uint8; + description + "T4 PLL IC6 Priority"; + } + leaf t4-pll-ic7-prio { + type uint8; + description + "T4 PLL IC7 Priority"; + } + leaf t4-pll-ic8-prio { + type uint8; + description + "T4 PLL IC8 Priority"; + } + leaf t4-pll-ic9-prio { + type uint8; + description + "T4 PLL IC9 Priority"; + } + leaf t4-pll-ic10-prio { + type uint8; + description + "T4 PLL IC10 Priority"; + } + leaf ptp-pll-ic1-prio { + type uint8; + description + "PTP PLL IC1 Priority"; + } + leaf ptp-pll-ic2-prio { + type uint8; + description + "PTP PLL IC2 Priority"; + } + leaf ptp-pll-ic3-prio { + type uint8; + description + "PTP PLL IC3 Priority"; + } + leaf ptp-pll-ic4-prio { + type uint8; + description + "PTP PLL IC4 Priority"; + } + leaf ptp-pll-ic5-prio { + type uint8; + description + "PTP PLL IC5 Priority"; + } + leaf ptp-pll-ic6-prio { + type uint8; + description + "PTP PLL IC6 Priority"; + } + leaf ptp-pll-ic7-prio { + type uint8; + description + "PTP PLL IC7 Priority"; + } + leaf ptp-pll-ic8-prio { + type uint8; + description + "PTP PLL IC8 Priority"; + } + leaf ptp-pll-ic9-prio { + type uint8; + description + "PTP PLL IC9 Priority"; + } + leaf ptp-pll-ic10-prio { + type uint8; + description + "PTP PLL IC10 Priority"; + } + leaf ic1-valid { + type boolean; + description + "IC Valid 1"; + } + leaf ic2-valid { + type boolean; + description + "IC Valid 2"; + } + leaf ic3-valid { + type boolean; + description + "IC Valid 3"; + } + leaf ic4-valid { + type boolean; + description + "IC Valid 4"; + } + leaf ic5-valid { + type boolean; + description + "IC Valid 5"; + } + leaf ic6-valid { + type boolean; + description + "IC Valid 6"; + } + leaf ic7-valid { + type boolean; + description + "IC Valid 7"; + } + leaf ic8-valid { + type boolean; + description + "IC Valid 8"; + } + leaf ic9-valid { + type boolean; + description + "IC Valid 9"; + } + leaf ic10-valid { + type boolean; + description + "IC Valid 10"; + } + leaf t0-pll-freq-offset { + type int32; + description + "T0 PLL Frequency Offset"; + } + leaf t4-pll-freq-offset { + type int32; + description + "T4 PLL Frequency Offset"; + } + leaf ptp-pll-freq-offset { + type int32; + description + "PTP PLL Frequency Offset"; + } + leaf t0-pll-bandwidth { + type string { + length "0..50"; + } + description + "T0 PLL Bandwidth"; + } + leaf t4-pll-bandwidth { + type string { + length "0..50"; + } + description + "T4 PLL Bandwidth"; + } + leaf ptp-pll-bandwidth { + type string { + length "0..50"; + } + description + "PTP PLL Bandwidth"; + } + leaf t0-pll-psl { + type string { + length "0..50"; + } + description + "T0 PLL PSL"; + } + leaf t4-pll-psl { + type string { + length "0..50"; + } + description + "T4 PLL PSL"; + } + leaf ptp-pll-psl { + type string { + length "0..50"; + } + description + "PTP PLL PSL"; + } + leaf ic1-qual-min { + type string { + length "0..50"; + } + description + "IC1 Pull-in/Hold-in Min"; + } + leaf ic1-qual-max { + type string { + length "0..50"; + } + description + "IC1 Pull-in/Hold-in Min"; + } + leaf ic2-qual-min { + type string { + length "0..50"; + } + description + "IC2 Pull-in/Hold-in Min"; + } + leaf ic2-qual-max { + type string { + length "0..50"; + } + description + "IC2 Pull-in/Hold-in Min"; + } + leaf ic3-qual-min { + type string { + length "0..50"; + } + description + "IC3 Pull-in/Hold-in Min"; + } + leaf ic3-qual-max { + type string { + length "0..50"; + } + description + "IC3 Pull-in/Hold-in Min"; + } + leaf ic4-qual-min { + type string { + length "0..50"; + } + description + "IC4 Pull-in/Hold-in Min"; + } + leaf ic4-qual-max { + type string { + length "0..50"; + } + description + "IC4 Pull-in/Hold-in Min"; + } + leaf ic5-qual-min { + type string { + length "0..50"; + } + description + "IC5 Pull-in/Hold-in Min"; + } + leaf ic5-qual-max { + type string { + length "0..50"; + } + description + "IC5 Pull-in/Hold-in Min"; + } + leaf ic6-qual-min { + type string { + length "0..50"; + } + description + "IC6 Pull-in/Hold-in Min"; + } + leaf ic6-qual-max { + type string { + length "0..50"; + } + description + "IC6 Pull-in/Hold-in Min"; + } + leaf ic7-qual-min { + type string { + length "0..50"; + } + description + "IC7 Pull-in/Hold-in Min"; + } + leaf ic7-qual-max { + type string { + length "0..50"; + } + description + "IC7 Pull-in/Hold-in Min"; + } + leaf ic8-qual-min { + type string { + length "0..50"; + } + description + "IC8 Pull-in/Hold-in Min"; + } + leaf ic8-qual-max { + type string { + length "0..50"; + } + description + "IC8 Pull-in/Hold-in Min"; + } + leaf ic9-qual-min { + type string { + length "0..50"; + } + description + "IC9 Pull-in/Hold-in Min"; + } + leaf ic9-qual-max { + type string { + length "0..50"; + } + description + "IC9 Pull-in/Hold-in Min"; + } + leaf ic10-qual-min { + type string { + length "0..50"; + } + description + "IC10 Pull-in/Hold-in Min"; + } + leaf ic10-qual-max { + type string { + length "0..50"; + } + description + "IC10 Pull-in/Hold-in Min"; + } + } + + grouping TMG-TOD-INFO { + description + "Timing ToD status"; + leaf io-secs { + type uint64; + units "second"; + description + "ToD Host Seconds"; + } + leaf io-nanosecs { + type uint32; + units "nanosecond"; + description + "ToD Host Nanoseconds"; + } + leaf dp-secs { + type uint64; + units "second"; + description + "ToD DP Seconds"; + } + leaf dp-nanosecs { + type uint32; + units "nanosecond"; + description + "ToD DP Nanoseconds"; + } + leaf ut-coffset { + type uint32; + description + "UTC offset from TAI"; + } + } + + grouping TMG-CLKIN-INFO { + description + "Timing input clock status"; + leaf ic1-valid { + type boolean; + description + "IC Valid 1"; + } + leaf ic2-valid { + type boolean; + description + "IC Valid 2"; + } + leaf ic3-valid { + type boolean; + description + "IC Valid 3"; + } + leaf ic4-valid { + type boolean; + description + "IC Valid 4"; + } + leaf ic5-valid { + type boolean; + description + "IC Valid 5"; + } + leaf ic6-valid { + type boolean; + description + "IC Valid 6"; + } + leaf ic7-valid { + type boolean; + description + "IC Valid 7"; + } + leaf ic8-valid { + type boolean; + description + "IC Valid 8"; + } + leaf ic9-valid { + type boolean; + description + "IC Valid 9"; + } + leaf ic10-valid { + type boolean; + description + "IC Valid 10"; + } + leaf ic1-slot { + type string { + length "0..50"; + } + description + "IC Slot 1"; + } + leaf ic2-slot { + type string { + length "0..50"; + } + description + "IC Slot 2"; + } + leaf ic3-slot { + type string { + length "0..50"; + } + description + "IC Slot 3"; + } + leaf ic4-slot { + type string { + length "0..50"; + } + description + "IC Slot 4"; + } + leaf ic5-slot { + type string { + length "0..50"; + } + description + "IC Slot 5"; + } + leaf ic6-slot { + type string { + length "0..50"; + } + description + "IC Slot 6"; + } + leaf ic7-slot { + type string { + length "0..50"; + } + description + "IC Slot 7"; + } + leaf ic8-slot { + type string { + length "0..50"; + } + description + "IC Slot 8"; + } + leaf ic9-slot { + type string { + length "0..50"; + } + description + "IC Slot 9"; + } + leaf ic10-slot { + type string { + length "0..50"; + } + description + "IC Slot 10"; + } + leaf ic1-pfm { + type string { + length "0..50"; + } + description + "IC1 PFM Status"; + } + leaf ic2-pfm { + type string { + length "0..50"; + } + description + "IC2 PFM Status"; + } + leaf ic3-pfm { + type string { + length "0..50"; + } + description + "IC3 PFM Status"; + } + leaf ic4-pfm { + type string { + length "0..50"; + } + description + "IC4 PFM Status"; + } + leaf ic5-pfm { + type string { + length "0..50"; + } + description + "IC5 PFM Status"; + } + leaf ic6-pfm { + type string { + length "0..50"; + } + description + "IC6 PFM Status"; + } + leaf ic7-pfm { + type string { + length "0..50"; + } + description + "IC7 PFM Status"; + } + leaf ic8-pfm { + type string { + length "0..50"; + } + description + "IC8 PFM Status"; + } + leaf ic9-pfm { + type string { + length "0..50"; + } + description + "IC9 PFM Status"; + } + leaf ic10-pfm { + type string { + length "0..50"; + } + description + "IC10 PFM Status"; + } + leaf ic1-gst { + type string { + length "0..50"; + } + description + "IC1 GST Status"; + } + leaf ic2-gst { + type string { + length "0..50"; + } + description + "IC2 GST Status"; + } + leaf ic3-gst { + type string { + length "0..50"; + } + description + "IC3 GST Status"; + } + leaf ic4-gst { + type string { + length "0..50"; + } + description + "IC4 GST Status"; + } + leaf ic5-gst { + type string { + length "0..50"; + } + description + "IC5 GST Status"; + } + leaf ic6-gst { + type string { + length "0..50"; + } + description + "IC6 GST Status"; + } + leaf ic7-gst { + type string { + length "0..50"; + } + description + "IC7 GST Status"; + } + leaf ic8-gst { + type string { + length "0..50"; + } + description + "IC8 GST Status"; + } + leaf ic9-gst { + type string { + length "0..50"; + } + description + "IC9 GST Status"; + } + leaf ic10-gst { + type string { + length "0..50"; + } + description + "IC10 GST Status"; + } + leaf ic1-cfm { + type string { + length "0..50"; + } + description + "IC1 CFM Status"; + } + leaf ic2-cfm { + type string { + length "0..50"; + } + description + "IC2 CFM Status"; + } + leaf ic3-cfm { + type string { + length "0..50"; + } + description + "IC3 CFM Status"; + } + leaf ic4-cfm { + type string { + length "0..50"; + } + description + "IC4 CFM Status"; + } + leaf ic5-cfm { + type string { + length "0..50"; + } + description + "IC5 CFM Status"; + } + leaf ic6-cfm { + type string { + length "0..50"; + } + description + "IC6 CFM Status"; + } + leaf ic7-cfm { + type string { + length "0..50"; + } + description + "IC7 CFM Status"; + } + leaf ic8-cfm { + type string { + length "0..50"; + } + description + "IC8 CFM Status"; + } + leaf ic9-cfm { + type string { + length "0..50"; + } + description + "IC9 CFM Status"; + } + leaf ic10-cfm { + type string { + length "0..50"; + } + description + "IC10 CFM Status"; + } + leaf ic1-scm { + type string { + length "0..50"; + } + description + "IC1 SCM Status"; + } + leaf ic2-scm { + type string { + length "0..50"; + } + description + "IC2 SCM Status"; + } + leaf ic3-scm { + type string { + length "0..50"; + } + description + "IC3 SCM Status"; + } + leaf ic4-scm { + type string { + length "0..50"; + } + description + "IC4 SCM Status"; + } + leaf ic5-scm { + type string { + length "0..50"; + } + description + "IC5 SCM Status"; + } + leaf ic6-scm { + type string { + length "0..50"; + } + description + "IC6 SCM Status"; + } + leaf ic7-scm { + type string { + length "0..50"; + } + description + "IC7 SCM Status"; + } + leaf ic8-scm { + type string { + length "0..50"; + } + description + "IC8 SCM Status"; + } + leaf ic9-scm { + type string { + length "0..50"; + } + description + "IC9 SCM Status"; + } + leaf ic10-scm { + type string { + length "0..50"; + } + description + "IC10 SCM Status"; + } + leaf ic1-los { + type string { + length "0..50"; + } + description + "IC1 LOS Status"; + } + leaf ic2-los { + type string { + length "0..50"; + } + description + "IC2 LOS Status"; + } + leaf ic3-los { + type string { + length "0..50"; + } + description + "IC3 LOS Status"; + } + leaf ic4-los { + type string { + length "0..50"; + } + description + "IC4 LOS Status"; + } + leaf ic5-los { + type string { + length "0..50"; + } + description + "IC5 LOS Status"; + } + leaf ic6-los { + type string { + length "0..50"; + } + description + "IC6 LOS Status"; + } + leaf ic7-los { + type string { + length "0..50"; + } + description + "IC7 LOS Status"; + } + leaf ic8-los { + type string { + length "0..50"; + } + description + "IC8 LOS Status"; + } + leaf ic9-los { + type string { + length "0..50"; + } + description + "IC9 LOS Status"; + } + leaf ic10-los { + type string { + length "0..50"; + } + description + "IC10 LOS Status"; + } + } + + grouping TMG-LED-INFO { + description + "Timing LED status"; + leaf bits-led { + type uint32; + description + "BITS LED"; + } + leaf gps-led { + type uint32; + description + "GPS LED"; + } + leaf sync-led { + type uint32; + description + "Sync LED"; + } + } + + grouping TMG-PLL-DUMP { + description + "Timing PLL dump"; + leaf chip-id { + type uint32; + description + "SETS Chip ID"; + } + leaf chip-ver { + type uint32; + description + "SETS Chip Version"; + } + leaf dpll0-bandwidth { + type string { + length "0..50"; + } + description + "DPLL0 Bandwidth"; + } + leaf dpll0-psl { + type string { + length "0..50"; + } + description + "DPLL0 PSL"; + } + leaf dpll0-mode { + type string { + length "0..50"; + } + description + "DPLL0 Mode"; + } + leaf dpll0-select { + type string { + length "0..50"; + } + description + "DPLL0 Input Selected"; + } + leaf dpll0-holdover { + type string { + length "0..50"; + } + description + "DPLL0 Holdover Status"; + } + leaf dpll0-lock { + type string { + length "0..50"; + } + description + "DPLL0 Lock Status"; + } + leaf dpll1-bandwidth { + type string { + length "0..50"; + } + description + "DPLL1 Bandwidth"; + } + leaf dpll1-psl { + type string { + length "0..50"; + } + description + "DPLL1 PSL"; + } + leaf dpll1-mode { + type string { + length "0..50"; + } + description + "DPLL1 Mode"; + } + leaf dpll1-select { + type string { + length "0..50"; + } + description + "DPLL1 Input Selected"; + } + leaf dpll1-holdover { + type string { + length "0..50"; + } + description + "DPLL1 Holdover Status"; + } + leaf dpll1-lock { + type string { + length "0..50"; + } + description + "DPLL1 Lock Status"; + } + leaf dpll2-bandwidth { + type string { + length "0..50"; + } + description + "DPLL2 Bandwidth"; + } + leaf dpll2-psl { + type string { + length "0..50"; + } + description + "DPLL2 PSL"; + } + leaf dpll2-mode { + type string { + length "0..50"; + } + description + "DPLL2 Mode"; + } + leaf dpll2-select { + type string { + length "0..50"; + } + description + "DPLL2 Input Selected"; + } + leaf dpll2-holdover { + type string { + length "0..50"; + } + description + "DPLL2 Holdover Status"; + } + leaf dpll2-lock { + type string { + length "0..50"; + } + description + "DPLL2 Lock Status"; + } + leaf ref0-status { + type string { + length "0..50"; + } + description + "Ref0 Status"; + } + leaf ref1-status { + type string { + length "0..50"; + } + description + "Ref1 Status"; + } + leaf ref2-status { + type string { + length "0..50"; + } + description + "Ref2 Status"; + } + leaf ref3-status { + type string { + length "0..50"; + } + description + "Ref3 Status"; + } + leaf ref4-status { + type string { + length "0..50"; + } + description + "Ref4 Status"; + } + leaf ref5-status { + type string { + length "0..50"; + } + description + "Ref5 Status"; + } + leaf ref6-status { + type string { + length "0..50"; + } + description + "Ref6 Status"; + } + leaf ref7-status { + type string { + length "0..50"; + } + description + "Ref7 Status"; + } + leaf ref8-status { + type string { + length "0..50"; + } + description + "Ref8 Status"; + } + leaf ref9-status { + type string { + length "0..50"; + } + description + "Ref9 Status"; + } + leaf ref10-status { + type string { + length "0..50"; + } + description + "Ref10 Status"; + } + leaf ref0-freq { + type string { + length "0..50"; + } + description + "Ref0 Frequency"; + } + leaf ref1-freq { + type string { + length "0..50"; + } + description + "Ref1 Frequency"; + } + leaf ref2-freq { + type string { + length "0..50"; + } + description + "Ref2 Frequency"; + } + leaf ref3-freq { + type string { + length "0..50"; + } + description + "Ref3 Frequency"; + } + leaf ref4-freq { + type string { + length "0..50"; + } + description + "Ref4 Frequency"; + } + leaf ref5-freq { + type string { + length "0..50"; + } + description + "Ref5 Frequency"; + } + leaf ref6-freq { + type string { + length "0..50"; + } + description + "Ref6 Frequency"; + } + leaf ref7-freq { + type string { + length "0..50"; + } + description + "Ref7 Frequency"; + } + leaf ref8-freq { + type string { + length "0..50"; + } + description + "Ref8 Frequency"; + } + leaf ref9-freq { + type string { + length "0..50"; + } + description + "Ref9 Frequency"; + } + leaf ref10-freq { + type string { + length "0..50"; + } + description + "Ref10 Frequency"; + } + leaf-list set-dump { + type uint32; + max-elements "768"; + description + "set dump"; + } + leaf-list dpll0-prio { + type uint32; + max-elements "11"; + description + "dpll0 prio"; + } + leaf-list dpll1-prio { + type uint32; + max-elements "11"; + description + "dpll1 prio"; + } + leaf-list dpll2-prio { + type uint32; + max-elements "11"; + description + "dpll2 prio"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper.yang new file mode 100644 index 000000000..4d4c73793 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-oper.yang @@ -0,0 +1,102 @@ +module Cisco-IOS-XR-rptiming-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-rptiming-oper"; + prefix rptiming-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-rptiming-oper-sub1 { + revision-date 2021-08-27; + } + + 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 rptiming package operational data. + + This module contains definitions + for the following management objects: + timing-card: Timing PLL status and configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "led and utc-offset values added for yang"; + semver:module-version "1.1.0"; + } + revision 2020-05-29 { + description + "Added/Modified to clear the inconsistencies"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container timing-card { + config false; + description + "Timing PLL status and configuration"; + container nodes { + description + "List of nodes applicable to timing"; + list node { + key "node-name"; + description + "Timing operational data for a single node"; + container pll-dump { + description + "Display the timing card PLL dump information"; + uses TMG-PLL-DUMP; + } + container led { + description + "Display timing LED information for the node"; + uses TMG-LED-INFO; + } + container input-clock { + description + "Display the timing card input clock status + information"; + uses TMG-CLKIN-INFO; + } + container tod { + description + "Display the timing card ToD information"; + uses TMG-TOD-INFO; + } + container pll { + description + "Display the timing card PLL status information"; + uses TMG-PLL-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper-sub1.yang new file mode 100644 index 000000000..c4c4740e1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper-sub1.yang @@ -0,0 +1,1732 @@ +submodule Cisco-IOS-XR-rptiming-tmg-oper-sub1 { + belongs-to Cisco-IOS-XR-rptiming-tmg-oper { + prefix Cisco-IOS-XR-rptiming-tmg-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR rptiming-tmg package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "led and utc-offset values added for yang"; + semver:module-version "1.1.0"; + } + revision 2019-11-24 { + description + "Added Yang support for LED Information."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TMG-TOD-INFO { + description + "Timing ToD status"; + leaf secs { + type uint64; + units "second"; + description + "ToD Seconds"; + } + leaf nanosecs { + type uint32; + units "nanosecond"; + description + "ToD Nanoseconds"; + } + leaf ut-coffset { + type uint32; + description + "UTC offset from TAI"; + } + } + + grouping TMG-LED-INFO { + description + "Timing LED status"; + leaf bits0-led { + type uint32; + description + "BITS0 LED"; + } + leaf bits1-led { + type uint32; + description + "BITS1 LED"; + } + leaf gps-led { + type uint32; + description + "GPS LED"; + } + leaf sync-led { + type uint32; + description + "Sync LED"; + } + leaf gnss-led { + type uint32; + description + "GNSS LED"; + } + } + + grouping TMG-PLL-DUMP { + description + "Timing PLL dump"; + leaf chip-id { + type uint32; + description + "SETS Chip ID"; + } + leaf chip-ver { + type uint32; + description + "SETS Chip Version"; + } + leaf dpll0-bandwidth { + type string { + length "0..50"; + } + description + "DPLL0 Bandwidth"; + } + leaf dpll0-psl { + type string { + length "0..50"; + } + description + "DPLL0 PSL"; + } + leaf dpll0-mode { + type string { + length "0..50"; + } + description + "DPLL0 Mode"; + } + leaf dpll0-select { + type string { + length "0..50"; + } + description + "DPLL0 Input Selected"; + } + leaf dpll0-holdover { + type string { + length "0..50"; + } + description + "DPLL0 Holdover Status"; + } + leaf dpll0-lock { + type string { + length "0..50"; + } + description + "DPLL0 Lock Status"; + } + leaf dpll1-bandwidth { + type string { + length "0..50"; + } + description + "DPLL1 Bandwidth"; + } + leaf dpll1-psl { + type string { + length "0..50"; + } + description + "DPLL1 PSL"; + } + leaf dpll1-mode { + type string { + length "0..50"; + } + description + "DPLL1 Mode"; + } + leaf dpll1-select { + type string { + length "0..50"; + } + description + "DPLL1 Input Selected"; + } + leaf dpll1-holdover { + type string { + length "0..50"; + } + description + "DPLL1 Holdover Status"; + } + leaf dpll1-lock { + type string { + length "0..50"; + } + description + "DPLL1 Lock Status"; + } + leaf dpll2-bandwidth { + type string { + length "0..50"; + } + description + "DPLL2 Bandwidth"; + } + leaf dpll2-psl { + type string { + length "0..50"; + } + description + "DPLL2 PSL"; + } + leaf dpll2-mode { + type string { + length "0..50"; + } + description + "DPLL2 Mode"; + } + leaf dpll2-select { + type string { + length "0..50"; + } + description + "DPLL2 Input Selected"; + } + leaf dpll2-holdover { + type string { + length "0..50"; + } + description + "DPLL2 Holdover Status"; + } + leaf dpll2-lock { + type string { + length "0..50"; + } + description + "DPLL2 Lock Status"; + } + leaf ref0-status { + type string { + length "0..50"; + } + description + "Ref0 Status"; + } + leaf ref1-status { + type string { + length "0..50"; + } + description + "Ref1 Status"; + } + leaf ref2-status { + type string { + length "0..50"; + } + description + "Ref2 Status"; + } + leaf ref3-status { + type string { + length "0..50"; + } + description + "Ref3 Status"; + } + leaf ref4-status { + type string { + length "0..50"; + } + description + "Ref4 Status"; + } + leaf ref5-status { + type string { + length "0..50"; + } + description + "Ref5 Status"; + } + leaf ref6-status { + type string { + length "0..50"; + } + description + "Ref6 Status"; + } + leaf ref7-status { + type string { + length "0..50"; + } + description + "Ref7 Status"; + } + leaf ref8-status { + type string { + length "0..50"; + } + description + "Ref8 Status"; + } + leaf ref9-status { + type string { + length "0..50"; + } + description + "Ref9 Status"; + } + leaf ref10-status { + type string { + length "0..50"; + } + description + "Ref10 Status"; + } + leaf ref0-freq { + type string { + length "0..50"; + } + description + "Ref0 Frequency"; + } + leaf ref1-freq { + type string { + length "0..50"; + } + description + "Ref1 Frequency"; + } + leaf ref2-freq { + type string { + length "0..50"; + } + description + "Ref2 Frequency"; + } + leaf ref3-freq { + type string { + length "0..50"; + } + description + "Ref3 Frequency"; + } + leaf ref4-freq { + type string { + length "0..50"; + } + description + "Ref4 Frequency"; + } + leaf ref5-freq { + type string { + length "0..50"; + } + description + "Ref5 Frequency"; + } + leaf ref6-freq { + type string { + length "0..50"; + } + description + "Ref6 Frequency"; + } + leaf ref7-freq { + type string { + length "0..50"; + } + description + "Ref7 Frequency"; + } + leaf ref8-freq { + type string { + length "0..50"; + } + description + "Ref8 Frequency"; + } + leaf ref9-freq { + type string { + length "0..50"; + } + description + "Ref9 Frequency"; + } + leaf ref10-freq { + type string { + length "0..50"; + } + description + "Ref10 Frequency"; + } + list set-dump { + max-elements "2048"; + description + "Sets dumps"; + leaf entry { + type uint32; + description + "Sets dumps"; + } + } + list dpll0-prio { + max-elements "11"; + description + "Dpll0 ref inputs"; + leaf entry { + type uint32; + description + "Dpll0 ref inputs"; + } + } + list dpll1-prio { + max-elements "11"; + description + "Dpll1 ref inputs"; + leaf entry { + type uint32; + description + "Dpll1 ref inputs"; + } + } + list dpll2-prio { + max-elements "11"; + description + "Dpll2 ref inputs"; + leaf entry { + type uint32; + description + "Dpll2 ref inputs"; + } + } + } + + grouping TMG-CLKIN-INFO { + description + "Timing input clock status"; + leaf ic1-valid { + type boolean; + description + "IC Valid 1"; + } + leaf ic2-valid { + type boolean; + description + "IC Valid 2"; + } + leaf ic3-valid { + type boolean; + description + "IC Valid 3"; + } + leaf ic4-valid { + type boolean; + description + "IC Valid 4"; + } + leaf ic5-valid { + type boolean; + description + "IC Valid 5"; + } + leaf ic6-valid { + type boolean; + description + "IC Valid 6"; + } + leaf ic7-valid { + type boolean; + description + "IC Valid 7"; + } + leaf ic8-valid { + type boolean; + description + "IC Valid 8"; + } + leaf ic9-valid { + type boolean; + description + "IC Valid 9"; + } + leaf ic10-valid { + type boolean; + description + "IC Valid 10"; + } + leaf ic11-valid { + type boolean; + description + "IC Valid 11"; + } + leaf ic1-slot { + type string { + length "0..50"; + } + description + "IC Slot 1"; + } + leaf ic2-slot { + type string { + length "0..50"; + } + description + "IC Slot 2"; + } + leaf ic3-slot { + type string { + length "0..50"; + } + description + "IC Slot 3"; + } + leaf ic4-slot { + type string { + length "0..50"; + } + description + "IC Slot 4"; + } + leaf ic5-slot { + type string { + length "0..50"; + } + description + "IC Slot 5"; + } + leaf ic6-slot { + type string { + length "0..50"; + } + description + "IC Slot 6"; + } + leaf ic7-slot { + type string { + length "0..50"; + } + description + "IC Slot 7"; + } + leaf ic8-slot { + type string { + length "0..50"; + } + description + "IC Slot 8"; + } + leaf ic9-slot { + type string { + length "0..50"; + } + description + "IC Slot 9"; + } + leaf ic10-slot { + type string { + length "0..50"; + } + description + "IC Slot 10"; + } + leaf ic11-slot { + type string { + length "0..50"; + } + description + "IC Slot 11"; + } + leaf ic1-split-xom { + type string { + length "0..50"; + } + description + "IC1 Split XO Mode Status"; + } + leaf ic2-split-xom { + type string { + length "0..50"; + } + description + "IC2 Split XO Mode Status"; + } + leaf ic3-split-xom { + type string { + length "0..50"; + } + description + "IC3 Split XO Mode Status"; + } + leaf ic4-split-xom { + type string { + length "0..50"; + } + description + "IC4 Split XO Mode Status"; + } + leaf ic5-split-xom { + type string { + length "0..50"; + } + description + "IC5 Split XO Mode Status"; + } + leaf ic6-split-xom { + type string { + length "0..50"; + } + description + "IC6 Split XO Mode Status"; + } + leaf ic7-split-xom { + type string { + length "0..50"; + } + description + "IC7 Split XO Mode Status"; + } + leaf ic8-split-xom { + type string { + length "0..50"; + } + description + "IC8 Split XO Mode Status"; + } + leaf ic9-split-xom { + type string { + length "0..50"; + } + description + "IC9 Split XO Mode Status"; + } + leaf ic10-split-xom { + type string { + length "0..50"; + } + description + "IC10 Split XO Mode Status"; + } + leaf ic11-split-xom { + type string { + length "0..50"; + } + description + "IC11 Split XO Mode Status"; + } + leaf ic1-eppsm { + type string { + length "0..50"; + } + description + "IC1 ePPSM Status"; + } + leaf ic2-eppsm { + type string { + length "0..50"; + } + description + "IC2 ePPSM Status"; + } + leaf ic3-eppsm { + type string { + length "0..50"; + } + description + "IC3 ePPSM Status"; + } + leaf ic4-eppsm { + type string { + length "0..50"; + } + description + "IC4 ePPSM Status"; + } + leaf ic5-eppsm { + type string { + length "0..50"; + } + description + "IC5 ePPSM Status"; + } + leaf ic6-eppsm { + type string { + length "0..50"; + } + description + "IC6 ePPSM Status"; + } + leaf ic7-eppsm { + type string { + length "0..50"; + } + description + "IC7 ePPSM Status"; + } + leaf ic8-eppsm { + type string { + length "0..50"; + } + description + "IC8 ePPSM Status"; + } + leaf ic9-eppsm { + type string { + length "0..50"; + } + description + "IC9 ePPSM Status"; + } + leaf ic10-eppsm { + type string { + length "0..50"; + } + description + "IC10 ePPSM Status"; + } + leaf ic11-eppsm { + type string { + length "0..50"; + } + description + "IC11 ePPSM Status"; + } + leaf ic1-pfm { + type string { + length "0..50"; + } + description + "IC1 PFM Status"; + } + leaf ic2-pfm { + type string { + length "0..50"; + } + description + "IC2 PFM Status"; + } + leaf ic3-pfm { + type string { + length "0..50"; + } + description + "IC3 PFM Status"; + } + leaf ic4-pfm { + type string { + length "0..50"; + } + description + "IC4 PFM Status"; + } + leaf ic5-pfm { + type string { + length "0..50"; + } + description + "IC5 PFM Status"; + } + leaf ic6-pfm { + type string { + length "0..50"; + } + description + "IC6 PFM Status"; + } + leaf ic7-pfm { + type string { + length "0..50"; + } + description + "IC7 PFM Status"; + } + leaf ic8-pfm { + type string { + length "0..50"; + } + description + "IC8 PFM Status"; + } + leaf ic9-pfm { + type string { + length "0..50"; + } + description + "IC9 PFM Status"; + } + leaf ic10-pfm { + type string { + length "0..50"; + } + description + "IC10 PFM Status"; + } + leaf ic11-pfm { + type string { + length "0..50"; + } + description + "IC11 PFM Status"; + } + leaf ic1-gst { + type string { + length "0..50"; + } + description + "IC1 GST Status"; + } + leaf ic2-gst { + type string { + length "0..50"; + } + description + "IC2 GST Status"; + } + leaf ic3-gst { + type string { + length "0..50"; + } + description + "IC3 GST Status"; + } + leaf ic4-gst { + type string { + length "0..50"; + } + description + "IC4 GST Status"; + } + leaf ic5-gst { + type string { + length "0..50"; + } + description + "IC5 GST Status"; + } + leaf ic6-gst { + type string { + length "0..50"; + } + description + "IC6 GST Status"; + } + leaf ic7-gst { + type string { + length "0..50"; + } + description + "IC7 GST Status"; + } + leaf ic8-gst { + type string { + length "0..50"; + } + description + "IC8 GST Status"; + } + leaf ic9-gst { + type string { + length "0..50"; + } + description + "IC9 GST Status"; + } + leaf ic10-gst { + type string { + length "0..50"; + } + description + "IC10 GST Status"; + } + leaf ic11-gst { + type string { + length "0..50"; + } + description + "IC11 GST Status"; + } + leaf ic1-cfm { + type string { + length "0..50"; + } + description + "IC1 CFM Status"; + } + leaf ic2-cfm { + type string { + length "0..50"; + } + description + "IC2 CFM Status"; + } + leaf ic3-cfm { + type string { + length "0..50"; + } + description + "IC3 CFM Status"; + } + leaf ic4-cfm { + type string { + length "0..50"; + } + description + "IC4 CFM Status"; + } + leaf ic5-cfm { + type string { + length "0..50"; + } + description + "IC5 CFM Status"; + } + leaf ic6-cfm { + type string { + length "0..50"; + } + description + "IC6 CFM Status"; + } + leaf ic7-cfm { + type string { + length "0..50"; + } + description + "IC7 CFM Status"; + } + leaf ic8-cfm { + type string { + length "0..50"; + } + description + "IC8 CFM Status"; + } + leaf ic9-cfm { + type string { + length "0..50"; + } + description + "IC9 CFM Status"; + } + leaf ic10-cfm { + type string { + length "0..50"; + } + description + "IC10 CFM Status"; + } + leaf ic11-cfm { + type string { + length "0..50"; + } + description + "IC11 CFM Status"; + } + leaf ic1-scm { + type string { + length "0..50"; + } + description + "IC1 SCM Status"; + } + leaf ic2-scm { + type string { + length "0..50"; + } + description + "IC2 SCM Status"; + } + leaf ic3-scm { + type string { + length "0..50"; + } + description + "IC3 SCM Status"; + } + leaf ic4-scm { + type string { + length "0..50"; + } + description + "IC4 SCM Status"; + } + leaf ic5-scm { + type string { + length "0..50"; + } + description + "IC5 SCM Status"; + } + leaf ic6-scm { + type string { + length "0..50"; + } + description + "IC6 SCM Status"; + } + leaf ic7-scm { + type string { + length "0..50"; + } + description + "IC7 SCM Status"; + } + leaf ic8-scm { + type string { + length "0..50"; + } + description + "IC8 SCM Status"; + } + leaf ic9-scm { + type string { + length "0..50"; + } + description + "IC9 SCM Status"; + } + leaf ic10-scm { + type string { + length "0..50"; + } + description + "IC10 SCM Status"; + } + leaf ic11-scm { + type string { + length "0..50"; + } + description + "IC11 SCM Status"; + } + leaf ic1-los { + type string { + length "0..50"; + } + description + "IC1 LOS Status"; + } + leaf ic2-los { + type string { + length "0..50"; + } + description + "IC2 LOS Status"; + } + leaf ic3-los { + type string { + length "0..50"; + } + description + "IC3 LOS Status"; + } + leaf ic4-los { + type string { + length "0..50"; + } + description + "IC4 LOS Status"; + } + leaf ic5-los { + type string { + length "0..50"; + } + description + "IC5 LOS Status"; + } + leaf ic6-los { + type string { + length "0..50"; + } + description + "IC6 LOS Status"; + } + leaf ic7-los { + type string { + length "0..50"; + } + description + "IC7 LOS Status"; + } + leaf ic8-los { + type string { + length "0..50"; + } + description + "IC8 LOS Status"; + } + leaf ic9-los { + type string { + length "0..50"; + } + description + "IC9 LOS Status"; + } + leaf ic10-los { + type string { + length "0..50"; + } + description + "IC10 LOS Status"; + } + leaf ic11-los { + type string { + length "0..50"; + } + description + "IC11 LOS Status"; + } + } + + grouping TMG-PLL-INFO { + description + "Timing PLL status"; + leaf pll0-present { + type boolean; + description + "PLL0 present"; + } + leaf pll1-present { + type boolean; + description + "PLL1 present"; + } + leaf pll2-present { + type boolean; + description + "PLL2 present"; + } + leaf t4-spll { + type uint8; + description + "T4 SPLL"; + } + leaf pll0-name { + type string { + length "0..50"; + } + description + "PLL0 name"; + } + leaf pll1-name { + type string { + length "0..50"; + } + description + "PLL1 name"; + } + leaf pll2-name { + type string { + length "0..50"; + } + description + "PLL2 name"; + } + leaf pll0-state { + type string { + length "0..50"; + } + description + "PLL0 state"; + } + leaf pll1-state { + type string { + length "0..50"; + } + description + "PLL1 state"; + } + leaf pll2-state { + type string { + length "0..50"; + } + description + "PLL2 state"; + } + leaf pll0-selected { + type string { + length "0..50"; + } + description + "PLL0 selected"; + } + leaf pll1-selected { + type string { + length "0..50"; + } + description + "PLL1 selected"; + } + leaf pll2-selected { + type string { + length "0..50"; + } + description + "PLL2 selected"; + } + leaf pll0-pll-mode { + type string { + length "0..50"; + } + description + "PLL0 PLL mode"; + } + leaf pll2-pll-mode { + type string { + length "0..50"; + } + description + "PLL2 PLL mode"; + } + leaf pll1-pll-mode { + type string { + length "0..50"; + } + description + "PLL1 PLL mode"; + } + leaf pll0-pll-ic1-prio { + type uint8; + description + "PLL0 PLL IC1 Priority"; + } + leaf pll0-pll-ic2-prio { + type uint8; + description + "PLL0 PLL IC2 Priority"; + } + leaf pll0-pll-ic3-prio { + type uint8; + description + "PLL0 PLL IC3 Priority"; + } + leaf pll0-pll-ic4-prio { + type uint8; + description + "PLL0 PLL IC4 Priority"; + } + leaf pll0-pll-ic5-prio { + type uint8; + description + "PLL0 PLL IC5 Priority"; + } + leaf pll0-pll-ic6-prio { + type uint8; + description + "PLL0 PLL IC6 Priority"; + } + leaf pll0-pll-ic7-prio { + type uint8; + description + "PLL0 PLL IC7 Priority"; + } + leaf pll0-pll-ic8-prio { + type uint8; + description + "PLL0 PLL IC8 Priority"; + } + leaf pll0-pll-ic9-prio { + type uint8; + description + "PLL0 PLL IC9 Priority"; + } + leaf pll0-pll-ic10-prio { + type uint8; + description + "PLL0 PLL IC10 Priority"; + } + leaf pll0-pll-ic11-prio { + type uint8; + description + "PLL0 PLL IC11 Priority"; + } + leaf pll2-pll-ic1-prio { + type uint8; + description + "PLL2 PLL IC1 Priority"; + } + leaf pll2-pll-ic2-prio { + type uint8; + description + "PLL2 PLL IC2 Priority"; + } + leaf pll2-pll-ic3-prio { + type uint8; + description + "PLL2 PLL IC3 Priority"; + } + leaf pll2-pll-ic4-prio { + type uint8; + description + "PLL2 PLL IC4 Priority"; + } + leaf pll2-pll-ic5-prio { + type uint8; + description + "PLL2 PLL IC5 Priority"; + } + leaf pll2-pll-ic6-prio { + type uint8; + description + "PLL2 PLL IC6 Priority"; + } + leaf pll2-pll-ic7-prio { + type uint8; + description + "PLL2 PLL IC7 Priority"; + } + leaf pll2-pll-ic8-prio { + type uint8; + description + "PLL2 PLL IC8 Priority"; + } + leaf pll2-pll-ic9-prio { + type uint8; + description + "PLL2 PLL IC9 Priority"; + } + leaf pll2-pll-ic10-prio { + type uint8; + description + "PLL2 PLL IC10 Priority"; + } + leaf pll2-pll-ic11-prio { + type uint8; + description + "PLL2 PLL IC11 Priority"; + } + leaf pll1-pll-ic1-prio { + type uint8; + description + "PLL1 PLL IC1 Priority"; + } + leaf pll1-pll-ic2-prio { + type uint8; + description + "PLL1 PLL IC2 Priority"; + } + leaf pll1-pll-ic3-prio { + type uint8; + description + "PLL1 PLL IC3 Priority"; + } + leaf pll1-pll-ic4-prio { + type uint8; + description + "PLL1 PLL IC4 Priority"; + } + leaf pll1-pll-ic5-prio { + type uint8; + description + "PLL1 PLL IC5 Priority"; + } + leaf pll1-pll-ic6-prio { + type uint8; + description + "PLL1 PLL IC6 Priority"; + } + leaf pll1-pll-ic7-prio { + type uint8; + description + "PLL1 PLL IC7 Priority"; + } + leaf pll1-pll-ic8-prio { + type uint8; + description + "PLL1 PLL IC8 Priority"; + } + leaf pll1-pll-ic9-prio { + type uint8; + description + "PLL1 PLL IC9 Priority"; + } + leaf pll1-pll-ic10-prio { + type uint8; + description + "PLL1 PLL IC10 Priority"; + } + leaf pll1-pll-ic11-prio { + type uint8; + description + "PLL1 PLL IC11 Priority"; + } + leaf ic1-valid { + type boolean; + description + "IC Valid 1"; + } + leaf ic2-valid { + type boolean; + description + "IC Valid 2"; + } + leaf ic3-valid { + type boolean; + description + "IC Valid 3"; + } + leaf ic4-valid { + type boolean; + description + "IC Valid 4"; + } + leaf ic5-valid { + type boolean; + description + "IC Valid 5"; + } + leaf ic6-valid { + type boolean; + description + "IC Valid 6"; + } + leaf ic7-valid { + type boolean; + description + "IC Valid 7"; + } + leaf ic8-valid { + type boolean; + description + "IC Valid 8"; + } + leaf ic9-valid { + type boolean; + description + "IC Valid 9"; + } + leaf ic10-valid { + type boolean; + description + "IC Valid 10"; + } + leaf ic11-valid { + type boolean; + description + "IC Valid 11"; + } + leaf pll0-pll-freq-offset { + type int32; + description + "PLL0 PLL Frequency Offset"; + } + leaf pll2-pll-freq-offset { + type int32; + description + "PLL2 PLL Frequency Offset"; + } + leaf pll1-pll-freq-offset { + type int32; + description + "PLL1 PLL Frequency Offset"; + } + leaf pll0-pll-bandwidth { + type string { + length "0..50"; + } + description + "PLL0 PLL Bandwidth"; + } + leaf pll2-pll-bandwidth { + type string { + length "0..50"; + } + description + "PLL2 PLL Bandwidth"; + } + leaf pll1-pll-bandwidth { + type string { + length "0..50"; + } + description + "PLL1 PLL Bandwidth"; + } + leaf pll0-pll-psl { + type string { + length "0..50"; + } + description + "PLL0 PLL PSL"; + } + leaf pll2-pll-psl { + type string { + length "0..50"; + } + description + "PLL2 PLL PSL"; + } + leaf pll1-pll-psl { + type string { + length "0..50"; + } + description + "PLL1 PLL PSL"; + } + leaf ic1-qual-min { + type string { + length "0..50"; + } + description + "IC1 Pull-in/Hold-in Min"; + } + leaf ic1-qual-max { + type string { + length "0..50"; + } + description + "IC1 Pull-in/Hold-in Min"; + } + leaf ic2-qual-min { + type string { + length "0..50"; + } + description + "IC2 Pull-in/Hold-in Min"; + } + leaf ic2-qual-max { + type string { + length "0..50"; + } + description + "IC2 Pull-in/Hold-in Min"; + } + leaf ic3-qual-min { + type string { + length "0..50"; + } + description + "IC3 Pull-in/Hold-in Min"; + } + leaf ic3-qual-max { + type string { + length "0..50"; + } + description + "IC3 Pull-in/Hold-in Min"; + } + leaf ic4-qual-min { + type string { + length "0..50"; + } + description + "IC4 Pull-in/Hold-in Min"; + } + leaf ic4-qual-max { + type string { + length "0..50"; + } + description + "IC4 Pull-in/Hold-in Min"; + } + leaf ic5-qual-min { + type string { + length "0..50"; + } + description + "IC5 Pull-in/Hold-in Min"; + } + leaf ic5-qual-max { + type string { + length "0..50"; + } + description + "IC5 Pull-in/Hold-in Min"; + } + leaf ic6-qual-min { + type string { + length "0..50"; + } + description + "IC6 Pull-in/Hold-in Min"; + } + leaf ic6-qual-max { + type string { + length "0..50"; + } + description + "IC6 Pull-in/Hold-in Min"; + } + leaf ic7-qual-min { + type string { + length "0..50"; + } + description + "IC7 Pull-in/Hold-in Min"; + } + leaf ic7-qual-max { + type string { + length "0..50"; + } + description + "IC7 Pull-in/Hold-in Min"; + } + leaf ic8-qual-min { + type string { + length "0..50"; + } + description + "IC8 Pull-in/Hold-in Min"; + } + leaf ic8-qual-max { + type string { + length "0..50"; + } + description + "IC8 Pull-in/Hold-in Min"; + } + leaf ic9-qual-min { + type string { + length "0..50"; + } + description + "IC9 Pull-in/Hold-in Min"; + } + leaf ic9-qual-max { + type string { + length "0..50"; + } + description + "IC9 Pull-in/Hold-in Min"; + } + leaf ic10-qual-min { + type string { + length "0..50"; + } + description + "IC10 Pull-in/Hold-in Min"; + } + leaf ic10-qual-max { + type string { + length "0..50"; + } + description + "IC10 Pull-in/Hold-in Min"; + } + leaf ic11-qual-min { + type string { + length "0..50"; + } + description + "IC11 Pull-in/Hold-in Min"; + } + leaf ic11-qual-max { + type string { + length "0..50"; + } + description + "IC11 Pull-in/Hold-in Min"; + } + leaf ic-freq-present { + type boolean; + description + "IC Freq present"; + } + leaf ic1-freq { + type string { + length "0..50"; + } + description + "IC1 Frequency"; + } + leaf ic2-freq { + type string { + length "0..50"; + } + description + "IC2 Frequency"; + } + leaf ic3-freq { + type string { + length "0..50"; + } + description + "IC3 Frequency"; + } + leaf ic4-freq { + type string { + length "0..50"; + } + description + "IC4 Frequency"; + } + leaf ic5-freq { + type string { + length "0..50"; + } + description + "IC5 Frequency"; + } + leaf ic6-freq { + type string { + length "0..50"; + } + description + "IC6 Frequency"; + } + leaf ic7-freq { + type string { + length "0..50"; + } + description + "IC7 Frequency"; + } + leaf ic8-freq { + type string { + length "0..50"; + } + description + "IC8 Frequency"; + } + leaf ic9-freq { + type string { + length "0..50"; + } + description + "IC9 Frequency"; + } + leaf ic10-freq { + type string { + length "0..50"; + } + description + "IC10 Frequency"; + } + leaf ic11-freq { + type string { + length "0..50"; + } + description + "IC11 Frequency"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper.yang new file mode 100644 index 000000000..49e5f691c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rptiming-tmg-oper.yang @@ -0,0 +1,127 @@ +module Cisco-IOS-XR-rptiming-tmg-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-rptiming-tmg-oper"; + prefix rptiming-tmg-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-rptiming-tmg-oper-sub1 { + revision-date 2021-08-27; + } + + 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 rptiming-tmg package operational data. + + This module contains definitions + for the following management objects: + timing-card: Timing PLL status and configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "led and utc-offset values added for yang"; + semver:module-version "1.1.0"; + } + revision 2019-11-24 { + description + "Added Yang support for LED Information."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container timing-card { + config false; + description + "Timing PLL status and configuration"; + container nodes { + description + "List of nodes applicable to timing"; + list node { + key "node-name"; + description + "Timing operational data for a single node"; + container pll1 { + description + "Display the timing card SPLL1 status + information"; + uses TMG-PLL-INFO; + } + container pll0 { + description + "Display the timing card SPLL0 status + information"; + uses TMG-PLL-INFO; + } + container input-clock2 { + description + "Display the timing card input clock status + information"; + uses TMG-CLKIN-INFO; + } + container input-clock1 { + description + "Display the timing card input clock status + information"; + uses TMG-CLKIN-INFO; + } + container input-clock0 { + description + "Display the timing card input clock status + information"; + uses TMG-CLKIN-INFO; + } + container pll-dump { + description + "Display the timing card PLL dump information"; + uses TMG-PLL-DUMP; + } + container led { + description + "Display the timing card LED information"; + uses TMG-LED-INFO; + } + container tod { + description + "Display the timing card ToD information"; + uses TMG-TOD-INFO; + } + container pll2 { + description + "Display the timing card SPLL2 status + information"; + uses TMG-PLL-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper-sub1.yang new file mode 100644 index 000000000..d9407b9f9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper-sub1.yang @@ -0,0 +1,1290 @@ +submodule Cisco-IOS-XR-rsi-agent-oper-sub1 { + belongs-to Cisco-IOS-XR-rsi-agent-oper { + prefix Cisco-IOS-XR-rsi-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR rsi-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-18 { + description + "Fixed range for producer name"; + semver:module-version "2.1.0"; + } + revision 2019-08-14 { + description + "Fixing yang oper coverage"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-13 { + description + "Fixing yang oper coverage."; + } + revision 2018-11-26 { + description + "Fixing yang usability issues."; + } + revision 2018-01-24 { + description + "Fixed datatype issues"; + } + revision 2018-01-11 { + description + "Add rsip node into schema."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ra-edm-tbl-attr { + type enumeration { + enum "ra-edm-tbl-attr-flow-spec" { + value 0; + description + "Flowspec"; + } + enum "ra-edm-tbl-attr-max" { + value 1; + description + "None"; + } + } + description + "Attribute type"; + } + + typedef Rsi-vr-id { + type uint32; + description + "Rsi vr id"; + } + + typedef Rsi-vrf-id { + type uint32; + description + "Rsi vrf id"; + } + + typedef Rsi-safi { + type enumeration { + enum "mgmt-rsi-safi-ucast" { + value 1; + description + "Unicast"; + } + enum "mgmt-rsi-safi-mcast" { + value 2; + description + "Multicast"; + } + enum "mgmt-rsi-safi-flow-spec" { + value 133; + description + "Flowspec"; + } + enum "mgmt-rsi-safi-bier" { + value 241; + description + "Bier"; + } + } + description + "RSI SAFI type"; + } + + typedef Rsi-afi { + type enumeration { + enum "mgmt-rsi-afi-ipv4" { + value 1; + description + "IPv4"; + } + enum "mgmt-rsi-afi-ipv6" { + value 2; + description + "IPv6"; + } + } + description + "RSI AFI type"; + } + + typedef Rsi-tbl-id { + type uint32; + description + "Rsi tbl id"; + } + + typedef Rsi-role-type-et { + type enumeration { + enum "role-type-invalid" { + value 0; + description + "Invalid Role"; + } + enum "role-type-standard" { + value 1; + description + "Operating in Standard Role"; + } + enum "role-type-core" { + value 2; + description + "Operating in Core Role"; + } + enum "role-type-cust" { + value 3; + description + "Operating in Customer Role"; + } + enum "role-type-no-interest" { + value 4; + description + "Operating in not-interested Role"; + } + enum "role-type-vpn-only-cust" { + value 5; + description + "Operating in VPN Only Customer Role"; + } + } + description + "Role type"; + } + + grouping RA-NOTIF-REG-BY-INTF { + description + "Registrations for RSI agent notification by + Interface"; + leaf mdb-type { + type uint32; + description + "Type of MDB"; + } + leaf reg-hd { + type uint64; + description + "HD registered"; + } + leaf num-notifs-dispatched { + type uint32; + description + "Notifications dispatched"; + } + leaf ifname { + type string; + description + "Interface name"; + } + leaf ifhandle { + type xr:Interface-name; + description + "Interface handle"; + } + leaf address-family-indicator-filter { + type uint32; + description + "AFI filter"; + } + leaf subsequent-address-family-indicator-filter { + type uint32; + description + "SAFI filter"; + } + leaf table-name { + type string; + description + "Name of table"; + } + leaf global { + type boolean; + description + "Global interface"; + } + leaf reg-flags { + type uint32; + description + "Registration flags"; + } + } + + grouping RA-NOTIF-REG-BY-TBL { + description + "Registrations for RSI agent notification by Table"; + leaf mdb-type { + type uint32; + description + "Type of MDB"; + } + leaf reg-hd { + type uint64; + description + "HD registered"; + } + leaf num-notifs-dispatched { + type uint32; + description + "Notifications dispatched"; + } + leaf table-name { + type string; + description + "Name of table"; + } + leaf table-id { + type Rsi-tbl-id; + description + "Identification of table"; + } + } + + grouping RA-NOTIF-REG-BY-VPN { + description + "Registrations for RSI agent notification by VPN"; + container vpn-id { + description + "Identification of VPN"; + uses RSI-VPNID; + } + leaf mdb-type { + type uint32; + description + "Type of MDB"; + } + leaf reg-hd { + type uint64; + description + "HD registered"; + } + leaf num-notifs-dispatched { + type uint32; + description + "Notifications dispatched"; + } + } + + grouping RA-NOTIF-REG-BY-VRF { + description + "Registrations for RSI agent notification by VRF"; + leaf mdb-type { + type uint32; + description + "Type of MDB"; + } + leaf reg-hd { + type uint64; + description + "HD registered"; + } + leaf num-notifs-dispatched { + type uint32; + description + "Notifications dispatched"; + } + leaf vrf-name { + type string; + description + "Name of VRF"; + } + leaf vrf-id { + type uint32; + description + "Identification of VRF"; + } + } + + grouping RA-NOTIF-REG-BY-VR { + description + "Registrations for RSI agent notification by VR"; + leaf mdb-type { + type uint32; + description + "Type of MDB"; + } + leaf reg-hd { + type uint64; + description + "HD registered"; + } + leaf num-notifs-dispatched { + type uint32; + description + "Notifications dispatched"; + } + leaf vr-name { + type string; + description + "Name of VR"; + } + leaf vr-id { + type uint32; + description + "Identification of VR"; + } + leaf flags { + type uint32; + description + "VR flags"; + } + } + + grouping RA-NOTIF-REG-BY-STATE { + description + "Registrations for RSI agent notification by state"; + leaf mdb-type { + type uint32; + description + "Type of MDB"; + } + leaf reg-hd { + type uint64; + description + "HD registered"; + } + leaf num-notifs-dispatched { + type uint32; + description + "Notifications dispatched"; + } + leaf state-id { + type uint64; + description + "State Identification"; + } + } + + grouping RA-NOTIF-REG-ALL { + description + "All registrations for RSI agent notification"; + leaf mdb-type { + type uint32; + description + "Type of MDB"; + } + leaf reg-hd { + type uint64; + description + "HD registered"; + } + leaf num-notifs-dispatched { + type uint32; + description + "Notifications dispatched"; + } + leaf flags { + type uint32; + description + "Notification flags"; + } + } + + grouping RSI-AGENT-CLIENT { + description + "Client for RSI agent"; + leaf name { + type string; + description + "Client Name"; + } + leaf client-ptr { + type uint64; + description + "Pointer to client"; + } + leaf client-type { + type uint32; + description + "Type of client"; + } + leaf zombied { + type boolean; + description + "Zombie flag"; + } + leaf mdbs-processed { + type uint32; + description + "MDBS state"; + } + leaf msgs-received { + type uint32; + description + "Message count"; + } + leaf num-lookups-done { + type uint32; + description + "Total lookups"; + } + leaf num-failed-lookups { + type uint32; + description + "Lookups failed"; + } + leaf num-failed-regs { + type uint32; + description + "Registrations failed"; + } + leaf num-auto-purges { + type uint32; + description + "Purge count"; + } + leaf num-small-reply-buf { + type uint32; + description + "Reply buffer count"; + } + leaf proc-name { + type string; + description + ""; + } + leaf pid { + type uint32; + description + "Process ID"; + } + leaf scoid { + type int32; + description + "Server Connection ID"; + } + leaf coid { + type int32; + description + "Connection ID"; + } + leaf up-time-secs { + type uint32; + description + "connected time in sec"; + } + leaf zombie-secs { + type uint32; + description + "Zombie for sec"; + } + leaf last-rx-msg-type { + type uint32; + description + "RX message type"; + } + leaf pulse-count { + type uint32; + description + "Number of pulse"; + } + leaf async-q-size { + type uint32; + description + "Size of asynchronous queue"; + } + leaf async-q-size-max { + type uint32; + description + "Max size of asynchronous queue"; + } + leaf sync-items-returned { + type uint32; + description + "Items returned Synchronously"; + } + leaf async-items-returned { + type uint32; + description + "Items returned Asynchronously"; + } + leaf batch-enabled { + type boolean; + description + "Batch enable flag"; + } + leaf batch-size { + type uint32; + description + "Size of batch"; + } + leaf num-active-regs { + type uint32; + description + "Active registrations count"; + } + leaf num-owned-objs-tdl { + type uint32; + description + "TDLs owned by producer client"; + } + list by-all { + description + "Notif registration by all"; + uses RA-NOTIF-REG-ALL; + } + list by-state { + description + "Notif registration by state"; + uses RA-NOTIF-REG-BY-STATE; + } + list by-vr { + description + "Notif registration by VR"; + uses RA-NOTIF-REG-BY-VR; + } + list by-vrf { + description + "Notif registration by VRF"; + uses RA-NOTIF-REG-BY-VRF; + } + list by-vpn { + description + "Notif registration by VPN"; + uses RA-NOTIF-REG-BY-VPN; + } + list by-table { + description + "Notif registration by table"; + uses RA-NOTIF-REG-BY-TBL; + } + list by-intf { + description + "Notif registration by interface"; + uses RA-NOTIF-REG-BY-INTF; + } + list local-table-buf { + description + "LTBLs owned by producer client"; + leaf entry { + type Rsi-tbl-id; + description + "LTBLs owned by producer client"; + } + } + } + + grouping RSI-AGENT-STATE { + description + "State for RSI agent"; + leaf state-id { + type uint32; + description + "Agent state ID"; + } + leaf state-val { + type uint32; + description + "Agent state value"; + } + leaf svd-is-enabled { + type uint32; + description + "SVD state"; + } + leaf intf-caps-v4-count { + type uint32; + description + "IPV4 caps count for Interface"; + } + leaf intf-caps-v6-count { + type uint32; + description + "IPV6 caps count for Interface"; + } + leaf vrf-intf-caps-v4-count { + type uint32; + description + "IPV4 caps count for Interface VRF"; + } + leaf vrf-intf-caps-v6-count { + type uint32; + description + "IPV6 caps count for Interface VRF"; + } + list state-ctx { + description + "Context for state"; + leaf entry { + type uint32; + description + "Context for state"; + } + } + } + + grouping RSI-AGENT-TBL-REF { + description + "Table reference for RSI agent"; + leaf vrf-table-id { + type uint32; + description + "VRF Table Index"; + } + leaf address-family-indicator { + type Rsi-afi; + description + "AFI"; + } + leaf subsequent-address-family-indicator { + type Rsi-safi; + description + "SAFI"; + } + leaf table-name { + type string; + description + "Table Name"; + } + } + + grouping RSI-VPNID { + description + "VPN ID for RSI"; + leaf oui { + type uint32; + description + "VPNID OUI"; + } + leaf index { + type uint32; + description + "VPNID Index"; + } + } + + grouping RSI-AGENT-VRF { + description + "VRF for RSI agent"; + container vpn-id { + description + "VPN ID"; + uses RSI-VPNID; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf vr-id { + type uint32; + description + "VR ID"; + } + leaf submode-flag { + type uint32; + description + "Sub_mode Flag"; + } + leaf fallback-vrf-name { + type string; + description + "Fallback VRF_Name"; + } + leaf vr-name { + type string; + description + "VR Name"; + } + leaf refcount { + type int32; + description + "Reference count"; + } + leaf intf-count-local { + type int32; + description + "Locally significant Intf Count"; + } + leaf intf-count-global { + type int32; + description + "Total Interfaces"; + } + leaf num-real-tbls { + type int32; + description + "Tbl Count"; + } + leaf num-fwd-ref-tbls { + type int32; + description + "Fwd Ref Tbl Count"; + } + leaf vrf-by-vrf-id-regs { + type int32; + description + "vrf by vrf id registration count"; + } + leaf vrf-by-vrf-name-regs { + type int32; + description + "vrf by vrf name registration count"; + } + leaf table-by-vrf-regs { + type int32; + description + "table by vrf registration count"; + } + leaf table-by-vrf-name-regs { + type int32; + description + "table by vrf name registration count"; + } + leaf vrf-flags { + type uint32; + description + "VRF Flags"; + } + leaf intf-cnt-local { + type uint32; + description + "Local Intf Count"; + } + leaf vrf-groups { + type uint32; + description + "Number of VRF groups"; + } + leaf parentvrf-cnt { + type uint32; + description + "Number of parent VRF"; + } + list table-array { + description + "Array of tables in VRF"; + uses RSI-AGENT-TBL-REF; + } + } + + grouping RSI-AGENT-TBL-ATTR { + description + "RSI AGENT TBL ATTR"; + leaf flags { + type uint32; + description + "Attribute flags"; + } + leaf type { + type Ra-edm-tbl-attr; + description + "Attribute type"; + } + leaf length { + type uint32; + description + "Attribute data length"; + } + leaf data { + type uint64; + description + "Attribute data"; + } + } + + grouping RSI-AGENT-TBL { + description + "RSI AGENT TBL"; + leaf tbl-name { + type string; + description + "Table Name"; + } + leaf tbl-id { + type Rsi-tbl-id; + description + "Table ID"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vr-id { + type uint32; + description + "VR ID"; + } + leaf vr-name { + type string; + description + "VR Name"; + } + leaf afi { + type Rsi-afi; + description + "AFI"; + } + leaf safi { + type Rsi-safi; + description + "SAFI"; + } + leaf refcount { + type int32; + description + "Reference Count"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf lst-flags { + type uint32; + description + "LST Flags"; + } + leaf tbl-by-tbl-id-regs { + type int32; + description + "Table Reg by Table ID"; + } + leaf vrf-tbl-idx { + type uint32; + description + "VRF Table Index"; + } + leaf tcm-idx { + type uint32; + description + "TCM Index"; + } + list attr { + description + "Table attribute inforamtion"; + uses RSI-AGENT-TBL-ATTR; + } + } + + grouping RSI-AGENT-TDL-INFO { + description + "RSI AGENT TDL INFO"; + leaf tbl-id { + type Rsi-tbl-id; + description + "Table ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf tdl-type { + type uint32; + description + "TDL Type"; + } + leaf owner-ctx { + type uint64; + description + "Owner Context"; + } + } + + grouping RSI-AGENT-TBL-TDL { + description + "RSI AGENT TBL TDL"; + container dependant { + description + "Dependant Table"; + uses RSI-AGENT-TBL-INFO; + } + leaf num-tdl { + type uint32; + description + "Num TDL in Array"; + } + list tdl-array { + description + "TDL Array"; + uses RSI-AGENT-TDL-INFO; + } + } + + grouping RSI-AGENT-INTF { + description + "RSI agent interface"; + leaf ifhandle { + type xr:Interface-name; + description + "Interface by handle"; + } + leaf ifname { + type string; + description + "Name of the interface"; + } + leaf vrf-id { + type Rsi-vrf-id; + description + "VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vr-id { + type Rsi-vr-id; + description + "VR ID"; + } + leaf vr-name { + type string; + description + "VR Name"; + } + leaf is-virtual { + type boolean; + description + "Virtual"; + } + leaf is-local { + type boolean; + description + "Local"; + } + leaf is-licensed { + type boolean; + description + "Licensed"; + } + leaf flags { + type uint32; + description + "Flag value"; + } + leaf refcount { + type int32; + description + "Reference count"; + } + leaf intf-by-ifh-regs { + type int32; + description + "Registered Interface by ifhandle"; + } + leaf interface-table-by-ifh { + type int32; + description + "Registered Table by interface handle"; + } + list ra-table-set { + description + "RSI agent tables"; + leaf entry { + type uint8; + description + "RSI agent tables"; + } + } + } + + grouping RSI-AGENT-REQ-DEP-TBL-INFO { + description + "RSI AGENT REQ DEP TBL INFO"; + leaf tbl-name { + type string; + description + "Table Name"; + } + leaf tbl-id { + type Rsi-tbl-id; + description + "Table ID"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf lst-flags { + type uint32; + description + "LST Flags"; + } + } + + grouping RSI-AGENT-TBL-INFO { + description + "RSI AGENT TBL INFO"; + leaf tbl-name { + type string; + description + "Table Name"; + } + leaf tbl-id { + type Rsi-tbl-id; + description + "Table ID"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vr-id { + type uint32; + description + "VR ID"; + } + leaf vr-name { + type string; + description + "VR Name"; + } + leaf afi { + type Rsi-afi; + description + "AFI"; + } + leaf safi { + type Rsi-safi; + description + "SAFI"; + } + } + + grouping RSI-AGENT-TBL-REQ-DEP { + description + "RSI AGENT TBL REQ DEP"; + container show-tbl { + description + "Show Table"; + uses RSI-AGENT-TBL-INFO; + } + list tbl-array { + description + "Depedent TBL Array"; + uses RSI-AGENT-REQ-DEP-TBL-INFO; + } + } + + grouping RSI-AGENT-PROD { + description + "RSI agent producer"; + leaf item-id { + type uint32; + description + "Item identification"; + } + leaf name { + type string; + description + "Producer name"; + } + leaf flags { + type uint32; + description + "Producer flags"; + } + leaf num-owned-objs-vr { + type uint32; + description + "Number Owned Objects VR"; + } + leaf num-owned-objs-vrf { + type uint32; + description + "Number Owned Objects VRF"; + } + leaf num-owned-objs-table { + type uint32; + description + "Number Owned Object Table"; + } + leaf num-owned-objs-intf { + type uint32; + description + "Number Owned Objects Interface"; + } + leaf num-owned-objs-tdl { + type uint32; + description + "Number Owned Objects TDL"; + } + leaf num-saved-msgs { + type uint32; + description + "Number Saved Messages"; + } + } + + grouping RA-ROLE { + description + "RA ROLE"; + leaf afi-role { + type Rsi-role-type-et; + description + "Address Family Identifier role"; + } + leaf time { + type uint64; + description + "Time of role change"; + } + leaf rolecalctype { + type uint32; + description + "Role calculated type"; + } + leaf eod { + type boolean; + description + "End of download status"; + } + } + + grouping RSI-AGENT-ROLE { + description + "RSI AGENT ROLE"; + container afi-v4-role { + description + "AFI v4 role"; + uses RA-ROLE; + } + container afi-v6-role { + description + "AFI v6 role"; + uses RA-ROLE; + } + leaf converged-v4 { + type uint32; + description + "Is v4 role converged"; + } + leaf converged-v6 { + type uint32; + description + "Is v6 role converged"; + } + leaf afi-v4-role-change-num { + type uint32; + description + "Num of Role change v4"; + } + leaf afi-v6-role-change-num { + type uint32; + description + "Num of Role change v6"; + } + list afi-v4-role-history { + description + "Role history v4"; + uses RA-ROLE; + } + list afi-v6-role-history { + description + "Role history v6"; + uses RA-ROLE; + } + } + + grouping RSI-AGENT-VR { + description + "VR for RSI agent"; + leaf vr-name-xr { + type string; + description + "VR Name"; + } + leaf vr-id { + type uint32; + description + "VR ID"; + } + leaf refcount { + type int32; + description + "Reference count"; + } + leaf num-real-vrfs { + type int32; + description + "Number of real vrfs"; + } + leaf num-fwd-ref-vrfs { + type int32; + description + "Fwd ref vrfs"; + } + leaf vr-by-vr-id-regs { + type int32; + description + "vr by vr id registrations"; + } + leaf vr-by-vr-name-regs { + type int32; + description + "vr by vr name registrations"; + } + leaf vrf-by-vr-regs { + type int32; + description + "vrf by vr registrations"; + } + leaf table-by-vr-regs { + type int32; + description + "table by vr registrations"; + } + leaf vrf-cnt-local { + type int32; + description + "vrf count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper.yang new file mode 100644 index 000000000..b4a7805dd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-rsi-agent-oper.yang @@ -0,0 +1,480 @@ +module Cisco-IOS-XR-rsi-agent-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-rsi-agent-oper"; + prefix rsi-agent-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-rsi-agent-oper-sub1 { + revision-date 2020-12-18; + } + + 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 rsi-agent package operational data. + + This module contains definitions + for the following management objects: + rsi-agent: RSI operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-18 { + description + "Fixed range for producer name"; + semver:module-version "2.1.0"; + } + revision 2019-08-14 { + description + "Fixing yang oper coverage"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-13 { + description + "Fixing yang oper coverage."; + } + revision 2018-11-26 { + description + "Fixing yang usability issues."; + } + revision 2018-01-24 { + description + "Fixed datatype issues"; + } + revision 2018-01-11 { + description + "Add rsip node into schema."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping VIRTUAL-ROUTING-FORWARDING-ID { + description + "Common node of virtual-router-id-info, + virtual-router-name-info"; + container virtual-routing-forwarding-id-infos { + description + "Virtual Routing and Forwarding ID"; + list virtual-routing-forwarding-id-info { + key "vrfid"; + description + "Virtual Router and Forwarding ID details"; + leaf vrfid { + type xr:Cisco-ios-xr-string; + description + "Virtual Router Forwarding ID"; + } + uses TABLE-NAME-DB-FILTER; + uses TABLE-ID-DB-FILTER; + uses INTERFACE-HANDLE-DB-TABLE; + uses GLOBAL-INTERFACE-HANDLE-DB-TABLE; + } + } + } + + grouping TABLE-NAME-DB-FILTER { + description + "Common node of virtual-routing-forwarding-id-info + , virtual-routing-forwarding-name-info"; + container table-name-db-filter-infos { + description + "Table Name database"; + list table-name-db-filter-info { + description + "Table name List"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "Table Name"; + } + leaf afi { + type uint32; + description + "Address Family Indicator"; + } + leaf safi { + type uint32; + description + "Subsequent Address Family Indicator"; + } + list table-name-db-filter-info-table { + description + "Table name details"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "Table Name"; + } + leaf afi { + type uint32; + description + "Address Family Indicator"; + } + leaf safi { + type uint32; + description + "Subsequent Address Family Indicator"; + } + uses RSI-AGENT-TBL-TDL; + } + } + } + } + + grouping VRF-NAME-TABLE { + description + "Common node of virtual-router-name-info, + virtual-router-id-info"; + container vrf-names { + description + "List of Virtual Router"; + list vrf-name { + key "name"; + description + "VRF details by name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "vrf name"; + } + uses RSI-AGENT-VRF; + } + } + } + + grouping VRFID-TABLE { + description + "Common node of node, virtual-router-name-info, + virtual-router-id-info"; + container vrfids { + description + "List of Virtual Router Forwarding ID"; + list vrfid { + key "id"; + description + "VRF details by ID"; + leaf id { + type xr:Cisco-ios-xr-string; + description + "vrf id"; + } + uses RSI-AGENT-VRF; + } + } + } + + grouping INTERFACE-HANDLE-DB-TABLE { + description + "Common node of node, + virtual-routing-forwarding-id-info, + virtual-routing-forwarding-name-info"; + container interfaces { + description + "Interface handle database"; + list interface { + key "interface"; + description + "Client details"; + leaf interface { + type xr:Interface-name; + description + "Unique Identifer for Interface"; + } + uses RSI-AGENT-INTF; + } + } + } + + grouping VIRTUAL-ROUTING-FORWARDING-NAME { + description + "Common node of virtual-router-id-info, + virtual-router-name-info"; + container virtual-routing-forwarding-name-infos { + description + "Virtual Routing and Forwarding Name"; + list virtual-routing-forwarding-name-info { + key "vrf-name"; + description + "Virtual Router and Forwarding Name details"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Virtual Router Forwarding Name"; + } + uses TABLE-NAME-DB-FILTER; + uses TABLE-ID-DB-FILTER; + uses INTERFACE-HANDLE-DB-TABLE; + uses GLOBAL-INTERFACE-HANDLE-DB-TABLE; + } + } + } + + grouping TABLE-ID-DB-FILTER { + description + "Common node of node, + virtual-routing-forwarding-id-info, + virtual-routing-forwarding-name-info"; + container table-id-db-filter-infos { + description + "Table ID database"; + list table-id-db-filter-info { + description + "Table id filters"; + leaf table-name { + type xr:Cisco-ios-xr-string; + description + "Table Name"; + } + leaf afi { + type uint32; + description + "Address Family Indicator"; + } + leaf safi { + type uint32; + description + "Subsequent Address Family Indicator"; + } + list table-id-db-filter-info-table-id { + key "table-id"; + description + "Table id details"; + leaf table-id { + type uint32; + description + "Table ID"; + } + uses RSI-AGENT-TBL; + } + } + } + } + + grouping GLOBAL-INTERFACE-HANDLE-DB-TABLE { + description + "Common node of node, + virtual-routing-forwarding-id-info, + virtual-routing-forwarding-name-info"; + container global-interface-handles { + description + "Global Interface handle database"; + list global-interface-handle { + key "interface"; + description + "Interface handle details"; + leaf interface { + type xr:Interface-name; + description + "Unique Identifier for Interface"; + } + uses RSI-AGENT-INTF; + } + } + } + + container rsi-agent { + config false; + description + "RSI operational data"; + container nodes { + description + "Node operational data"; + list node { + key "node-name"; + description + "Node details"; + container virtual-routers { + description + "List of Virtual Router Name"; + list virtual-router { + key "vr-name"; + description + "Producer details"; + leaf vr-name { + type xr:Cisco-ios-xr-string; + description + "virtual router name"; + } + uses RSI-AGENT-VR; + } + } + container rsi-agent-role { + description + "RSI Agent role database"; + uses RSI-AGENT-ROLE; + } + container virtual-router-ids { + description + "List of Virtual Router"; + list virtual-router-id { + key "vrid"; + description + "Producer details"; + leaf vrid { + type xr:Cisco-ios-xr-string; + description + "virtual router ID"; + } + uses RSI-AGENT-VR; + } + } + container producers { + description + "List of Producers"; + list producer { + key "producer-name"; + description + "Producer details"; + leaf producer-name { + type uint32 { + range "0..4294967295"; + } + description + "producer name"; + } + uses RSI-AGENT-PROD; + } + } + container table-id-db-dependent-infos { + description + "Table ID Dependent database"; + list table-id-db-dependent-info { + key "table-id"; + description + "Table id details"; + leaf table-id { + type uint32; + description + "Table ID"; + } + uses RSI-AGENT-TBL-REQ-DEP; + } + } + container interface-names { + description + "Interface name database"; + list interface-name { + key "interface"; + description + "Interface name details"; + leaf interface { + type xr:Cisco-ios-xr-string; + description + "Name of the Interface"; + } + uses RSI-AGENT-INTF; + } + } + container virtual-router-name-infos { + description + "Virtual Router Name"; + list virtual-router-name-info { + key "vr-name"; + description + "Virtual Router Name details"; + leaf vr-name { + type xr:Cisco-ios-xr-string; + description + "Virtual Router Name"; + } + uses VIRTUAL-ROUTING-FORWARDING-ID; + uses VIRTUAL-ROUTING-FORWARDING-NAME; + uses VRF-NAME-TABLE; + uses VRFID-TABLE; + } + } + container state { + description + "SVD state details"; + uses RSI-AGENT-STATE; + } + container virtual-router-id-infos { + description + "Virtual Router ID"; + list virtual-router-id-info { + key "vrid"; + description + "Virtual Router ID details"; + leaf vrid { + type xr:Cisco-ios-xr-string; + description + "Virtual Router ID"; + } + uses VIRTUAL-ROUTING-FORWARDING-ID; + uses VIRTUAL-ROUTING-FORWARDING-NAME; + uses VRF-NAME-TABLE; + uses VRFID-TABLE; + } + } + container clients { + description + "RSI Clients table"; + list client { + key "client-name"; + description + "Client details"; + leaf client-name { + type xr:Cisco-ios-xr-string; + description + "Client name"; + } + uses RSI-AGENT-CLIENT; + } + } + container stale-producer-infos { + description + "RSI Stale Producer database"; + list stale-producer-info { + key "index"; + description + "Stale producer details"; + leaf index { + type uint32; + description + "Producer Index"; + } + uses RSI-AGENT-PROD; + } + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + uses TABLE-ID-DB-FILTER; + uses VRFID-TABLE; + uses INTERFACE-HANDLE-DB-TABLE; + uses GLOBAL-INTERFACE-HANDLE-DB-TABLE; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-cfg.yang new file mode 100644 index 000000000..9673a808d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-cfg.yang @@ -0,0 +1,79 @@ +module Cisco-IOS-XR-sandbox-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sandbox-cfg"; + prefix sandbox-cfg; + + 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 sandbox package configuration. + + This module contains definitions + for the following management objects: + sandbox: System Health Check operational data space + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-13 { + description + "sandbox resource memory limit configuration added"; + semver:module-version "1.0.0"; + } + revision 2022-07-08 { + description + "sandbox configuration added"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sandbox { + description + "System Health Check operational data space"; + container resources { + description + "SandBoxMgr resources"; + container limit { + description + "SandBoxMgr resources limits"; + leaf memory { + type uint32 { + range "1024..8192"; + } + default "4096"; + description + "set Sandbox containers memory limits"; + } + } + } + container ordz { + description + "SandBoxMgr config"; + leaf enable { + type empty; + description + "Enable or disable container"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper-sub1.yang new file mode 100644 index 000000000..304f43440 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper-sub1.yang @@ -0,0 +1,168 @@ +submodule Cisco-IOS-XR-sandbox-oper-sub1 { + belongs-to Cisco-IOS-XR-sandbox-oper { + prefix Cisco-IOS-XR-sandbox-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR sandbox package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-08 { + description + "sandbox show CLI added"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Config-state { + type enumeration { + enum "disabled" { + value 0; + description + "Sandbox disabled"; + } + enum "enabled" { + value 1; + description + "Sandbox enabled"; + } + enum "unknown" { + value 2; + description + "unknown"; + } + } + description + "Config state"; + } + + grouping SANDBOXMGR-SERVICES { + description + "SANDBOXMGR SERVICES"; + leaf output { + type string { + length "0..8000"; + } + description + "App Services"; + } + } + + grouping SANDBOXMGR-STATS-INTERNAL-INFO { + description + "Container Statistics"; + leaf cpu-percentage { + type string; + units "percentage"; + description + "CPU percentage"; + } + leaf memory-usage { + type string; + description + "Memory usage"; + } + leaf net-io { + type string; + description + "Net Io"; + } + leaf block-io { + type string; + description + "Block Io"; + } + leaf mem-percentage { + type string; + units "percentage"; + description + "Memory percentage"; + } + leaf pids { + type string; + description + "process PIDs"; + } + } + + grouping SANDBOXMGR-DETAILS { + description + "SANDBOXMGR DETAILS"; + container app-info { + description + "app info"; + uses SANDBOXMGR-INTERNAL-INFO; + } + container stats-info { + description + "stats info"; + uses SANDBOXMGR-STATS-INTERNAL-INFO; + } + leaf state { + type Config-state; + description + "Configuration state sandbox"; + } + } + + grouping SANDBOXMGR-INTERNAL-INFO { + description + "Sandbox app internal info"; + leaf error-string { + type string; + description + "App error string"; + } + leaf state { + type Config-state; + description + "Configuration state sandbox"; + } + leaf config-state { + type string; + description + "App config state"; + } + leaf container-state { + type string; + description + "App container state"; + } + leaf image { + type string; + description + "Image"; + } + leaf run-options { + type string; + description + "Run Options"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper.yang new file mode 100644 index 000000000..b0981210c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sandbox-oper.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-sandbox-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sandbox-oper"; + prefix sandbox-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-sandbox-oper-sub1 { + revision-date 2022-07-08; + } + + 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 sandbox package operational data. + + This module contains definitions + for the following management objects: + sandbox: Sandbox Operational data space + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-08 { + description + "sandbox show CLI added"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sandbox { + config false; + description + "Sandbox Operational data space"; + container info { + description + "Info data bag"; + uses SANDBOXMGR-INTERNAL-INFO; + } + container detail { + description + "Detail data bag"; + uses SANDBOXMGR-DETAILS; + } + container services { + description + "Services data bag"; + uses SANDBOXMGR-SERVICES; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1.yang new file mode 100644 index 000000000..19ec350c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1.yang @@ -0,0 +1,498 @@ +submodule Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1 { + belongs-to Cisco-IOS-XR-sdr-invmgr-diag-oper { + prefix Cisco-IOS-XR-sdr-invmgr-diag-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR sdr-invmgr-diag package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-07 { + description + "Improved description for certain fields."; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DIAG-CARD { + description + "Card Instance"; + container card-instance { + description + "Description of Entity Card instance"; + uses DIAG-EEPROM; + } + leaf node-operational-state { + type string { + length "0..255"; + } + description + "Description of Entity Node operational state "; + } + } + + grouping RMA-DETAIL { + description + "EEPROM RMA data content"; + leaf test-history { + type string { + length "0..255"; + } + description + "RMA detail Test history innformation"; + } + leaf rma-number { + type string { + length "0..255"; + } + description + "RMA tracking number format is N-N-N"; + } + leaf rma-history { + type string { + length "0..255"; + } + description + "RMA history infromation"; + } + } + + grouping DIAG-EEPROM { + description + "Diag EEPROM data content"; + container rma { + description + "Description of Entity RMA Data"; + uses RMA-DETAIL; + } + leaf description { + type string { + length "0..255"; + } + description + "A textual description of physical entity"; + } + leaf idprom-format-rev { + type string { + length "0..255"; + } + description + "Description of Entity IDPROM Format Revision"; + } + leaf controller-family { + type string { + length "0..255"; + } + description + "Description of Entity Controller family"; + } + leaf controller-type { + type string { + length "0..255"; + } + description + "Description of Entity Controller type"; + } + leaf vid { + type string { + length "0..255"; + } + description + "Description of Entity Version ID"; + } + leaf hwid { + type string { + length "0..255"; + } + description + "Description of Entity Hardware Revision"; + } + leaf pid { + type string { + length "0..255"; + } + description + "Description of Entity Product ID"; + } + leaf udi-description { + type string { + length "0..255"; + } + description + "Description of Entity UDI"; + } + leaf udi-name { + type string { + length "0..255"; + } + description + "Description of Entity UDI name"; + } + leaf clei { + type string { + length "0..255"; + } + description + "Common Language Equipment Identifier (CLEI) code"; + } + leaf eci { + type string { + length "0..255"; + } + description + "Equipment Catalog Item (ECI) number"; + } + leaf top-assem-part-num { + type string { + length "0..255"; + } + description + "Description of Top assembly part number"; + } + leaf top-assem-vid { + type string { + length "0..255"; + } + description + "Description of Top assembly revision number"; + } + leaf pca-num { + type string { + length "0..255"; + } + description + "Description of Entity PCA number"; + } + leaf pcavid { + type string { + length "0..255"; + } + description + "Description of Entity PCA revision ID"; + } + leaf chassis-sid { + type string { + length "0..255"; + } + description + "Description of Entity Chassis serial number"; + } + leaf dev-num1 { + type string { + length "0..255"; + } + description + "Deviation Number # 1"; + } + leaf dev-num2 { + type string { + length "0..255"; + } + description + "Deviation Number # 2"; + } + leaf dev-num3 { + type string { + length "0..255"; + } + description + "Deviation Number # 3"; + } + leaf dev-num4 { + type string { + length "0..255"; + } + description + "Deviation Number # 4"; + } + leaf dev-num5 { + type string { + length "0..255"; + } + description + "Deviation Number # 5"; + } + leaf dev-num6 { + type string { + length "0..255"; + } + description + "Deviation Number # 6"; + } + leaf dev-num7 { + type string { + length "0..255"; + } + description + "Deviation Number # 7"; + } + leaf manu-test-data { + type string { + length "0..255"; + } + description + "Manufacturing Test Data"; + } + leaf asset-id { + type string { + length "0..255"; + } + description + "Description of Entity Asset ID"; + } + leaf asset-alias { + type string { + length "0..255"; + } + description + "Description of Entity Asset Alias"; + } + leaf base-mac-address1 { + type string { + length "0..255"; + } + description + "Base Mac Address #1"; + } + leaf mac-add-blk-size1 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #1"; + } + leaf base-mac-address2 { + type string { + length "0..255"; + } + description + "Base Mac Address #2"; + } + leaf mac-add-blk-size2 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #2"; + } + leaf base-mac-address3 { + type string { + length "0..255"; + } + description + "Base Mac Address #3"; + } + leaf mac-add-blk-size3 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #3"; + } + leaf base-mac-address4 { + type string { + length "0..255"; + } + description + "Base Mac Address #4"; + } + leaf mac-add-blk-size4 { + type string { + length "0..255"; + } + description + "Mac Address Block Size #4"; + } + leaf pcb-serial-num { + type string { + length "0..255"; + } + description + "Description of Entity PCB Serial Number"; + } + leaf power-supply-type { + type string { + length "0..255"; + } + description + "Description of Entity Power Supply Type"; + } + leaf power-consumption { + type string { + length "0..255"; + } + description + "Description of Entity Power Consumption"; + } + leaf block-signature { + type string { + length "0..255"; + } + description + "Description of Entity Block Signature"; + } + leaf block-version { + type string { + length "0..255"; + } + description + "Description of Entity Block Version"; + } + leaf block-length { + type string { + length "0..255"; + } + description + "Description of Entity Block Length"; + } + leaf block-checksum { + type string { + length "0..255"; + } + description + "Description of Entity Block Checksum"; + } + leaf eeprom-size { + type string { + length "0..255"; + } + description + "Description of Entity EEPROM Size"; + } + leaf block-count { + type string { + length "0..255"; + } + description + "Description of Entity Block Count"; + } + leaf fru-major-type { + type string { + length "0..255"; + } + description + "Description of Entity FRU Major Type"; + } + leaf fru-minor-type { + type string { + length "0..255"; + } + description + "Description of Entity FRU Minor Type"; + } + leaf oem-string { + type string { + length "0..255"; + } + description + "Description of Entity OEM String"; + } + leaf product-id { + type string { + length "0..255"; + } + description + "Description of Entity Product ID"; + } + leaf serial-number { + type string { + length "0..255"; + } + description + "Description of Entity Serial Number"; + } + leaf part-number { + type string { + length "0..255"; + } + description + "Description of Entity Part Number"; + } + leaf part-revision { + type string { + length "0..255"; + } + description + "Description of Entity Part Revision"; + } + leaf mfg-deviation { + type string { + length "0..255"; + } + description + "Description of Entity MFG Deviation"; + } + leaf hw-version { + type string { + length "0..255"; + } + description + "Description of Entity Hardware Version"; + } + leaf mfg-bits { + type string { + length "0..255"; + } + description + "Description of Entity MFG Bits"; + } + leaf engineer-use { + type string { + length "0..255"; + } + description + "Description of Entity Engineer Use"; + } + leaf snmpoid { + type string { + length "0..255"; + } + description + "Description of Entity SNMP OID"; + } + leaf rma-code { + type string { + length "0..255"; + } + description + "Description of Entity RMA Code"; + } + leaf eci-alpha-number { + type string { + length "0..255"; + } + description + "AlphaNumeric Equipment Catalog Item (ECI) number"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper.yang new file mode 100644 index 000000000..547834c9d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-diag-oper.yang @@ -0,0 +1,181 @@ +module Cisco-IOS-XR-sdr-invmgr-diag-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sdr-invmgr-diag-oper"; + prefix sdr-invmgr-diag-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-sdr-invmgr-diag-oper-sub1 { + revision-date 2019-04-05; + } + + 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 sdr-invmgr-diag package operational data. + + This module contains definitions + for the following management objects: + diag: Diag information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-07 { + description + "Improved description for certain fields."; + } + revision 2018-01-31 { + description + "Fixed incorrect plural rendering."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping INFORMATION { + description + "Common node of power-supply, fans"; + container information { + description + "Basic information"; + uses DIAG-EEPROM; + } + } + + container diag { + config false; + description + "Diag information"; + container racks { + description + "Table of racks"; + list rack { + key "rack-name"; + description + "Rack name"; + container power-shelfs { + description + "Table for rack power shelf "; + list power-shelf { + key "power-shelf-name"; + description + "Power shelf name"; + container power-supplies { + description + "Table for rack power supply "; + list power-supply { + key "power-supply-name"; + description + "Power Supply name"; + leaf power-supply-name { + type xr:Cisco-ios-xr-string; + description + "Power Supply name"; + } + uses INFORMATION; + } + } + leaf power-shelf-name { + type xr:Cisco-ios-xr-string; + description + "Power Shelf name"; + } + } + } + container fan-trays { + description + "Table for rack fan trays"; + list fan-tray { + key "fan-tray-name"; + description + "Fan tray name"; + container fanses { + description + "Table for rack fans "; + list fans { + key "fans-name"; + description + "Fan name"; + leaf fans-name { + type xr:Cisco-ios-xr-string; + description + "Fans name"; + } + uses INFORMATION; + } + } + leaf fan-tray-name { + type xr:Cisco-ios-xr-string; + description + "Fan tray name"; + } + } + } + container slots { + description + "Table of slots"; + list slot { + key "slot-name"; + description + "Slot name"; + container instances { + description + "Table of instances"; + list instance { + key "name"; + description + "instance number"; + container detail { + description + "Detail information"; + uses DIAG-CARD; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Instance name"; + } + } + } + leaf slot-name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + } + } + container chassis { + description + "Chassis information"; + uses DIAG-EEPROM; + } + leaf rack-name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper-sub1.yang new file mode 100644 index 000000000..ce2cd1dbd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper-sub1.yang @@ -0,0 +1,63 @@ +submodule Cisco-IOS-XR-sdr-invmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-sdr-invmgr-oper { + prefix Cisco-IOS-XR-sdr-invmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR sdr-invmgr package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-08 { + description + "Deprecated Memory container."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-07 { + description + "Improved description for certain fields."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping INV-ADMIN-MEMPOOL-DATA { + description + "Inv Admin Mempool Data"; + leaf total-memory { + type uint32; + description + "Total Memory of the inventory admin Memory Pool"; + } + leaf available-memory { + type uint32; + description + "Avaialble Memory of the inventory admin Memory + Pool"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper.yang new file mode 100644 index 000000000..2d1805f90 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sdr-invmgr-oper.yang @@ -0,0 +1,254 @@ +module Cisco-IOS-XR-sdr-invmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sdr-invmgr-oper"; + prefix sdr-invmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-sdr-invmgr-oper-sub1 { + revision-date 2020-04-08; + } + + 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 sdr-invmgr package operational data. + + This module contains definitions + for the following management objects: + sdr-inventory: SDR information + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-08 { + description + "Deprecated Memory container."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-07 { + description + "Improved description for certain fields."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sdr-inventory { + config false; + description + "SDR information"; + container racks { + description + "RackTable"; + list rack { + key "name"; + description + "Rack name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + list slot { + key "name"; + description + "Slot name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Slot name"; + } + list card { + key "name"; + description + "Card"; + container attributes { + description + "Shows the different attributes or status of + each entity or component in inventory"; + leaf config-state-string { + type string { + length "1..100"; + } + description + "Entity Config State String Attribute"; + } + leaf power { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Indicate Entity Power"; + } + leaf config-state { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Entity Config State Attribute"; + } + leaf card-state { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Entity CardState Attribute"; + } + leaf vm-state { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "VM State information"; + } + leaf card-admin-state { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Entity Card Admin State Attribute"; + } + leaf card-type { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Entity CardType Attribute"; + } + leaf card-type-string { + type string { + length "1..100"; + } + description + "Entity Card Type String Attribute"; + } + leaf node-name-string { + type xr:Node-id; + description + "Entity Node Name String Attribute"; + } + leaf card-valid { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Indicates weather Entity Card is Valid"; + } + leaf pi-slot-number { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Pi Slot Number"; + } + leaf shutdown { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Indicates whether the Entity is in Shutdown + State"; + } + leaf ctype { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Entity CType Attribute"; + } + leaf card-state-string { + type string { + length "1..100"; + } + description + "Entity Card State String Attribute"; + } + leaf monitor { + type uint32 { + range "0..4294967295"; + } + default "0"; + description + "Entity Monitor Attribute"; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Card"; + } + } + } + } + } + container memory { + status deprecated; + description + "Memory related information"; + container racks { + status deprecated; + description + "RackTable"; + list rack { + key "name"; + status deprecated; + description + "Rack name"; + container node-ids { + status deprecated; + description + "NodeIDTable"; + list node-id { + key "name"; + status deprecated; + description + "Inventory Admin Mempool Data Bag"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "nodeid"; + } + uses INV-ADMIN-MEMPOOL-DATA; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Rack name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-se-cgn-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-se-cgn-cfg.yang new file mode 100644 index 000000000..5bf6d2534 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-se-cgn-cfg.yang @@ -0,0 +1,166 @@ +module Cisco-IOS-XR-se-cgn-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-se-cgn-cfg"; + prefix se-cgn-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 se-cgn package configuration. + + This module contains definitions + for the following management objects: + cgns: Table of CGN + cgv6s: Table of CGv6 + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SERVICE-INTF { + description + "Common node of cgn, cgv6"; + container service-intf { + description + "Interface on which service to be started"; + container active-intf-names { + description + "Table of ActiveIntfName"; + list active-intf-name { + key "active-intf-name"; + description + "Interface name"; + leaf active-intf-name { + type xr:Interface-name; + description + "Interface through which CGN policy to be + downloaded"; + } + } + } + } + } + + container cgns { + description + "Table of CGN"; + list cgn { + key "cgn-name"; + description + "CGN Configurations"; + container protocol { + description + "Select a protocol"; + container icmp { + description + "ICMP protocol"; + leaf rate-limit { + type uint32 { + range "0..65472"; + } + description + "ICMP rate limit per second.On CRS or C12k + ,rate limit should be multiple of 64 and less + than 65472.On ASR9k, rate limit should be + multiple of 48 and less than 49104. "; + } + } + } + container service-node { + presence "Indicates a service-node node is configured."; + description + "Location on which service to be started"; + leaf active-node-name { + type xr:Node-id; + mandatory true; + description + "Location on which active cgn to be + instantiated"; + } + leaf standby-node-name { + type xr:Node-id; + description + "Location on which standby cgn to be + instantiated"; + } + } + container service-type { + description + "Select a service to configure"; + } + leaf cgn-name { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "Name of the CGN"; + } + uses SERVICE-INTF; + } + } + container cgv6s { + description + "Table of CGv6"; + list cgv6 { + key "cgv6-name"; + description + "CGv6 Configurations"; + container cgv6-service-type { + description + "Select a service to configure"; + } + container service-node { + presence "Indicates a service-node node is configured."; + description + "Location on which service to be started"; + leaf active-node-name { + type xr:Node-id; + mandatory true; + description + "Location on which active cgn to be + instantiated"; + } + leaf standby-node-name { + type xr:Node-id; + description + "Location on which standby cgn to be + instantiated"; + } + } + leaf cgv6-name { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "Name of the CGv6"; + } + uses SERVICE-INTF; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-act.yang new file mode 100644 index 000000000..988f150c3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-act.yang @@ -0,0 +1,60 @@ +module Cisco-IOS-XR-segment-routing-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-segment-routing-act"; + prefix segment-routing-act; + + 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 Segment Routing action package. + + Copyright (c) 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-05 { + description + "Initial revision."; + reference "Segment Routing reference."; + semver:module-version "1.0.0"; + } + + rpc segment-routing-protect-policy-override-lock { + description + "Execute segment routing command"; + input { + choice sr-policy-option { + mandatory true; + description + "Choose to run switchover on all or a specific policy"; + case sr-policy-all { + leaf all { + type boolean; + description + "Attempt a switchover on all protection locked SR Policies"; + } + } + case sr-policy-name { + leaf name { + type string; + description + "Attempt a switchover on named protection locked SR Policy"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-cfg.yang new file mode 100644 index 000000000..319ec0907 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-cfg.yang @@ -0,0 +1,308 @@ +module Cisco-IOS-XR-segment-routing-ms-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-segment-routing-ms-cfg"; + prefix segment-routing-ms-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 segment-routing-ms package configuration. + + This module contains definitions + for the following management objects: + sr: Segment Routing + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-06-19 { + description + "Additional options added to configuration model."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Srms-mi-flag { + type enumeration { + enum "disable" { + value 0; + description + "Disable flag"; + } + enum "enable" { + value 1; + description + "Enable flag"; + } + } + description + "Srms mi flag"; + } + + typedef Srms-address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "IP version 4"; + } + enum "ipv6" { + value 2; + description + "IP version 6"; + } + } + description + "Srms address family"; + } + + typedef Srlb-string { + type string { + pattern "(srlb_default)"; + } + description + "srlb_default:Default SRLB block"; + } + + typedef Sid-type-list { + type enumeration { + enum "absolute" { + value 1; + description + "Absolute SID"; + } + enum "index" { + value 2; + description + "Index SID"; + } + } + description + "Sid type list"; + } + + container sr { + description + "Segment Routing"; + container local-block { + presence "Indicates a local-block node is configured."; + description + "Segment Routing Local Block of Labels"; + leaf lower-bound { + type uint32 { + range "15000..1048574"; + } + mandatory true; + description + "SRLB Lower Bound"; + } + leaf upper-bound { + type uint32 { + range "15001..1048575"; + } + mandatory true; + description + "SRLB Upper Bound"; + } + } + container mappings { + description + "Mapping Server"; + list mapping { + key "af ip mask"; + description + "IP prefix to SID mapping"; + leaf af { + type Srms-address-family; + description + "Address Family"; + } + leaf ip { + type inet:ip-address-no-zone; + description + "IP prefix"; + } + leaf mask { + type uint32 { + range "1..128"; + } + description + "Mask"; + } + leaf sid-start { + type uint32 { + range "0..1048575"; + } + description + "Start of SID index range"; + } + leaf sid-range { + type uint32 { + range "0..65535"; + } + description + "Range (number of SIDs)"; + } + leaf flag-attached { + type Srms-mi-flag; + description + "Enable/Disable Attached flag"; + } + } + } + container adjacency-sid { + description + "Segment Routing Adjacency SID"; + container interfaces { + description + "Segment Routing Adjacency SID Interface Table"; + list interface { + key "interface"; + description + "Segment Routing Adjacency SID Interface"; + container address-families { + description + "Segment Routing Adjacency SID Interface + Address Family Table"; + list address-family { + key "address-family"; + description + "Segment Routing Adjacency SID Interface + Address Family"; + container next-hops { + description + "Segment Routing Adjacency SID Interface + Address Family NextHop Table"; + list next-hop { + must "(count(../next-hop)=1) or ((count(../next-hop[ip-addr='0.0.0.0'])=0) and (count(../next-hop[ip-addr='::0'])=0))"; + key "ip-addr"; + unique "l2-adjacency-sid/sid-type l2-adjacency-sid/index-sid l2-adjacency-sid/absolute-sid l2-adjacency-sid/srlb"; + description + "Segment Routing Adjacency SID Interface + Address Family NextHop, use a single + ANYADDR (0.0.0.0 or ::) NextHop for point + to point links"; + container l2-adjacency-sid { + description + "L2 Adjacency SID type and value"; + leaf sid-type { + type Sid-type-list; + description + "SID type"; + } + leaf absolute-sid { + when "../sid-type = 'absolute'" { + description + "../SIDType = absolute"; + } + type uint32 { + range "15000..1048575"; + } + description + "SID value"; + } + leaf index-sid { + when "../sid-type = 'index'" { + description + "../SIDType = index"; + } + type uint32 { + range "0..1048575"; + } + description + "SID value"; + } + leaf srlb { + when "../sid-type = 'absolute' or ../sid-type = 'index'" { + description + "../SIDType = absolute or ../SIDType = + index"; + } + type Srlb-string; + mandatory true; + description + "SRLB block name"; + } + } + leaf ip-addr { + type inet:ip-address-no-zone; + description + "NextHop IP address"; + } + } + } + leaf address-family { + type Srms-address-family; + description + "Address Family"; + } + } + } + leaf interface { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + container global-block { + presence "Indicates a global-block node is configured."; + description + "Global Block Segment Routing"; + leaf lower-bound { + type uint32 { + range "16000..1048574"; + } + mandatory true; + description + "SRGB Lower Bound"; + } + leaf upper-bound { + type uint32 { + range "16001..1048575"; + } + mandatory true; + description + "SRGB Upper Bound"; + } + } + leaf enable { + type empty; + description + "enable SR"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-common-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-common-cfg.yang new file mode 100644 index 000000000..61074c440 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-common-cfg.yang @@ -0,0 +1,46 @@ +module Cisco-IOS-XR-segment-routing-ms-common-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-segment-routing-ms-common-cfg"; + prefix segment-routing-ms-common-cfg; + + 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 segment-routing-ms-common package configuration. + + This module contains definitions + for the following management objects: + sr: Segment Routing + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sr { + description + "Segment Routing"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub1.yang new file mode 100644 index 000000000..f74d4c3e9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub1.yang @@ -0,0 +1,67 @@ +submodule Cisco-IOS-XR-segment-routing-ms-oper-sub1 { + belongs-to Cisco-IOS-XR-segment-routing-ms-oper { + prefix Cisco-IOS-XR-segment-routing-ms-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR segment-routing-ms package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2019-07-19 { + description + "Additional items added to operational model."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping MPLS-LSD-SRLB-INCONSISTENCY { + description + "SRLB Inconsistency"; + leaf start-srlb-range { + type uint32; + description + "Start label of Segment Routing Local Block range"; + } + leaf end-srlb-range { + type uint32; + description + "End label of Segment Routing Local Block range"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub2.yang new file mode 100644 index 000000000..a8967dd3b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub2.yang @@ -0,0 +1,155 @@ +submodule Cisco-IOS-XR-segment-routing-ms-oper-sub2 { + belongs-to Cisco-IOS-XR-segment-routing-ms-oper { + prefix Cisco-IOS-XR-segment-routing-ms-oper; + } + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-segment-routing-ms-oper-sub3 { + revision-date 2021-12-01; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR segment-routing-ms package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2019-07-19 { + description + "Additional items added to operational model."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Srms-af { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Srms af"; + } + + grouping ADDR1 { + description + "ADDR1"; + leaf af { + type Srms-af; + description + "AF"; + } + leaf ipv4 { + when "../af = 'ipv4'" { + description + "../AF = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4"; + } + leaf ipv6 { + when "../af = 'ipv6'" { + description + "../AF = 'IPv6'"; + } + type In6-addr-t-b; + description + "IPv6"; + } + } + + grouping SRMS-L2-ADJ-T-B { + description + "SRMA show bag"; + container nexthop-address { + description + "Nexthop address"; + uses ADDR1; + } + leaf interface-name { + type string { + length "0..64"; + } + description + "Interface name"; + } + leaf sid-value-xr { + type uint32; + description + "SID Value"; + } + leaf sid-type-xr { + type uint32; + description + "SID type"; + } + leaf address-family { + type uint32; + description + "Interface address family"; + } + leaf has-nexthop { + type boolean; + description + "Has nexthop"; + } + leaf interface-count { + type int32; + description + "Interface count"; + } + leaf interface-delete-count { + type int32; + description + "Interface delete count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub3.yang new file mode 100644 index 000000000..a767e57e0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper-sub3.yang @@ -0,0 +1,211 @@ +submodule Cisco-IOS-XR-segment-routing-ms-oper-sub3 { + belongs-to Cisco-IOS-XR-segment-routing-ms-oper { + prefix Cisco-IOS-XR-segment-routing-ms-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR segment-routing-ms package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2019-07-19 { + description + "Additional items added to operational model."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Srms-mi-flag-e-b { + type enumeration { + enum "false" { + value 0; + description + "False"; + } + enum "true" { + value 1; + description + "True"; + } + } + description + "Srms mi flag e b"; + } + + typedef In6-addr-t-b { + type inet:ipv6-address; + description + "In6 addr t b"; + } + + typedef Srms-mi-af-e-b { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "Srms mi af e b"; + } + + typedef Srms-mi-src-e-b { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "local" { + value 1; + description + "Local"; + } + enum "remote" { + value 2; + description + "Remote"; + } + } + description + "Srms mi src e b"; + } + + grouping ADDR { + description + "ADDR"; + leaf af { + type Srms-mi-af-e-b; + description + "AF"; + } + leaf ipv4 { + when "../af = 'ipv4'" { + description + "../AF = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4"; + } + leaf ipv6 { + when "../af = 'ipv6'" { + description + "../AF = 'IPv6'"; + } + type In6-addr-t-b; + description + "IPv6"; + } + } + + grouping SRMS-MI-T-B { + description + "SRMS show bag"; + container addr { + description + "Ipv4 address"; + uses ADDR; + } + leaf src { + type Srms-mi-src-e-b; + description + "Source of this prefix, whether local or remote"; + } + leaf router { + type string { + length "0..30"; + } + description + "Router ID"; + } + leaf area { + type string { + length "0..30"; + } + description + "Area (OSPF) or Level (ISIS)"; + } + leaf prefixlen-xr { + type uint8; + description + "Prefix length"; + } + leaf sid-start { + type uint32; + description + "Starting SID"; + } + leaf sid-count { + type uint32; + description + "SID range"; + } + leaf last-prefix { + type string { + length "0..50"; + } + description + "Last IP Prefix"; + } + leaf last-sid-index { + type uint32; + description + "Last SID Index"; + } + leaf flag-attached { + type Srms-mi-flag-e-b; + description + "Attached flag"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper.yang new file mode 100644 index 000000000..149225f2f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-ms-oper.yang @@ -0,0 +1,282 @@ +module Cisco-IOS-XR-segment-routing-ms-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-segment-routing-ms-oper"; + prefix segment-routing-ms-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-segment-routing-ms-oper-sub3 { + revision-date 2021-12-01; + } + include Cisco-IOS-XR-segment-routing-ms-oper-sub2 { + revision-date 2021-12-01; + } + include Cisco-IOS-XR-segment-routing-ms-oper-sub1 { + revision-date 2021-12-01; + } + + 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 segment-routing-ms package operational data. + + This module contains definitions + for the following management objects: + standby-srms: Standby Segment Routing Mapping Server + operational data + srms: Active Segment Routing Mapping Server operational data + srlb: Segment Routing Local Block operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-01 { + description + "Increase in interface name length"; + semver:module-version "2.0.0"; + } + revision 2019-07-19 { + description + "Additional items added to operational model."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sid-type-enum { + type enumeration { + enum "absolute" { + value 1; + description + "Absolute SID"; + } + enum "index" { + value 2; + description + "Index SID"; + } + } + description + "Sid type enum"; + } + + grouping MAPPING-MI { + description + "Common node of mapping-ipv4, mapping-ipv6"; + list mapping-mi { + description + "IP prefix to SID mapping item. It's not possible + to list all of the IP prefix to SID mappings, as + the set of valid prefixes could be very large. + Instead, SID map information must be retrieved + individually for each prefix of interest."; + leaf ip { + type xr:Cisco-ios-xr-string; + description + "IP"; + } + leaf prefixlen { + type uint32 { + range "1..128"; + } + description + "Prefixlen"; + } + uses SRMS-MI-T-B; + } + } + + grouping SID-RECORD-TABLE { + description + "Common node of l2-adjacency, ipv4, ipv6, all-afi"; + container sid-records { + description + "SID directory"; + list sid-record { + description + "SID record"; + leaf sid-type { + type Sid-type-enum; + description + "SID type"; + } + leaf sid-value { + type uint32 { + range "0..1048575"; + } + description + "SID value"; + } + uses SRMS-L2-ADJ-T-B; + } + } + } + + grouping POLICY-MI { + description + "Common node of policy-ipv4-active, + policy-ipv4-backup, policy-ipv6-active, + policy-ipv6-backup"; + list policy-mi { + key "mi-id"; + description + "Mapping Item"; + leaf mi-id { + type xr:Cisco-ios-xr-string; + description + "Mapping Item ID (0, 1, 2, ...)"; + } + uses SRMS-MI-T-B; + } + } + + grouping POLICY { + description + "Common node of srms, standby-srms"; + container policy { + description + "Policy operational data"; + container policy-ipv4 { + description + "IPv4 policy operational data"; + container policy-ipv4-backup { + description + "IPv4 backup policy operational data"; + uses POLICY-MI; + } + container policy-ipv4-active { + description + "IPv4 active policy operational data"; + uses POLICY-MI; + } + } + container policy-ipv6 { + description + "IPv6 policy operational data"; + container policy-ipv6-backup { + description + "IPv6 backup policy operational data"; + uses POLICY-MI; + } + container policy-ipv6-active { + description + "IPv6 active policy operational data"; + uses POLICY-MI; + } + } + } + } + + grouping MAPPING { + description + "Common node of srms, standby-srms"; + container mapping { + description + "IP prefix to SID mappings"; + container mapping-ipv4 { + description + "IPv4 prefix to SID mappings"; + uses MAPPING-MI; + } + container mapping-ipv6 { + description + "IPv6 prefix to SID mappings"; + uses MAPPING-MI; + } + } + } + + container standby-srms { + config false; + description + "Standby Segment Routing Mapping Server + operational data"; + uses MAPPING; + uses POLICY; + } + container srms { + config false; + description + "Active Segment Routing Mapping Server operational + data"; + container adjacency-sid { + description + "Adjacency SID"; + container l2-adjacency { + description + "L2 Adjacency Option"; + container interfaces { + description + "Interface directory"; + list interface { + key "interface-name"; + description + "Segment Routing Adjacency SID Interface"; + container address-family { + description + "address family container"; + container all-afi { + description + "both IPv4 and IPv6"; + uses SID-RECORD-TABLE; + } + container ipv4 { + description + "IP version 4"; + uses SID-RECORD-TABLE; + } + container ipv6 { + description + "IP version 6"; + uses SID-RECORD-TABLE; + } + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + uses SID-RECORD-TABLE; + } + } + uses MAPPING; + uses POLICY; + } + container srlb { + config false; + description + "Segment Routing Local Block operational data"; + container srlb-inconsistency { + description + "SRLB Inconsistencies"; + uses MPLS-LSD-SRLB-INCONSISTENCY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-cfg.yang new file mode 100644 index 000000000..fd73a1387 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-cfg.yang @@ -0,0 +1,331 @@ +module Cisco-IOS-XR-segment-routing-srv6-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-segment-routing-srv6-cfg"; + prefix segment-routing-srv6-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-segment-routing-srv6-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-segment-routing-ms-cfg { + prefix a1; + } + + 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 segment-routing-srv6 package configuration. + + This YANG module augments the + Cisco-IOS-XR-segment-routing-ms-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-03 { + description + "Deprecated merge overlay underlay sids config + 2022-05-19 + Added support for uSID LIB ranges config + 2022-03-23 + Added support for static adjacency SID configuration + 2021-11-23 + Added support for locator delayed delete configuration + 2021-09-17 + Extend config knob propagate traffic-class and hoplimit for SRv6 encap to support being explicitly disabled"; + semver:module-version "1.3.0"; + } + revision 2020-08-25 { + description + "Added MicroSegmentGlobalParams container and MergeOverlayUnderlaySIDS leaf"; + semver:module-version "1.2.0"; + } + revision 2019-11-21 { + description + "Support for anycast locator flag + 2019-10-08 + Support config knob to set traffic-class for SRv6 encap + 2019-04-22 + Flex-Algo support + 2019-04-22 + Flex-Algo specific changes"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:sr" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-segment-routing-ms-cfg'"; + container srv6 { + description + "Segment Routing with IPv6 dataplane"; + container static { + description + "Configure SRv6 static routing parameters"; + container endpoints { + description + "Configure SRv6 static endpoints"; + list endpoint { + key "prefix"; + description + "Configure an SRv6 static SID endpoint"; + container allocation-context { + presence "Indicates a allocation-context node is configured."; + description + "Configure SRv6 Static SID allocation context"; + leaf behavior { + type dt1:Srv6-static-sid-behavior; + description + "SID Behavior"; + } + leaf interface-name { + type xr:Interface-name; + mandatory true; + description + "Name of the interface"; + } + leaf algo-id { + type dt1:Srv6-algo-value; + description + "Algorithm ID"; + } + leaf protected { + type boolean; + description + "Protected"; + } + leaf differentiator { + type dt1:Srv6-differentiator; + description + "Differentiator"; + } + } + leaf prefix { + type inet:ip-address-no-zone; + description + "IPv6 prefix"; + } + } + } + } + container logging { + description + "Enable logging"; + leaf locator-status { + type empty; + description + "Enable logging for locator status changes"; + } + } + container formats { + description + "Configure SRv6 format parameters"; + container formats { + description + "Configure table of SRv6 formats"; + list format { + key "name"; + description + "Configure a SRv6 format"; + container usid { + description + "Specify uSID specific parameters"; + container local-id-block-ranges { + description + "Specify uSID LIB ranges (start, + explicit-start)"; + leaf lib-start { + type dt1:Srv6u-sid-lib-start-range; + default "57344"; + description + "Start of LIB"; + } + leaf explict-lib-start { + type dt1:Srv6u-sid-elib-start-range; + default "65024"; + description + "Start of Explicit LIB"; + } + } + leaf wide-local-id-block-explicit-range { + type dt1:Srv6u-sid-ewlib-start-range; + default "65527"; + description + "Specify uSID WLIB explicit range"; + } + } + leaf format-enable { + type empty; + description + "Enable a SRv6 format"; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Format name"; + } + } + } + } + container micro-segment-global-params { + description + "Configure micro-segment related parameters"; + leaf merge-overlay-underlay-sids { + type empty; + status deprecated; + description + "DEPRECATED - DO NOT USE"; + } + } + container locators { + description + "Configure SRv6 locators parameters"; + container locators { + description + "Configure SRv6 table of locators"; + list locator { + key "name"; + description + "Configure a SRv6 locator"; + container micro-segment { + description + "Configure micro-segments (uSID) related + parameters"; + leaf behavior { + type dt1:Srv6u-behavior; + description + "Specify Locator's behavior"; + } + } + container prefix { + description + "Specify locator prefix value"; + leaf prefix { + type inet:ip-address-no-zone; + description + "IPv6 Prefix"; + } + leaf prefix-length { + type dt1:Srv6-locator-len; + description + "Prefix length"; + } + } + leaf delayed-delete { + type empty; + description + "Specify locator to maintain SID forwarding + until holdtime for stale/freed SID has + passed"; + } + leaf locator-enable { + type empty; + description + "Enable a SRv6 locator"; + } + leaf anycast { + type empty; + description + "Specify locator to be anycast type"; + } + leaf algorithm { + type dt1:Srv6-algo-value; + description + "Specify locator algorithm"; + } + leaf name { + type dt1:Srv6-locator-name; + description + "Locator name"; + } + } + } + } + container encapsulation { + description + "Configure encapsulation related parameters"; + container traffic-class { + description + "Configure IPv6 header traffic-class"; + leaf option { + type dt1:Srv6-encapsulation-tc-option; + description + "Config option"; + } + leaf value { + when "../option = 'value'" { + description + "../Option = Value"; + } + type dt1:Srv6-encapsulation-tc-value; + default "0"; + description + "Field Value"; + } + } + container hop-limit { + description + "Configure IPv6 Hop-Limit options"; + leaf option { + type dt1:Srv6-encapsulation-hop-limit-option; + description + "Hop-Limit config option"; + } + leaf value { + when "../option = 'count'" { + description + "../Option = Count"; + } + type dt1:Srv6-encapsulation-hop-limit-value; + default "0"; + description + "Count for Hop-limit"; + } + } + leaf source-address { + type inet:ip-address-no-zone; + description + "Configure a source address"; + } + } + leaf enable { + type empty; + description + "Enable SRv6"; + } + leaf sid-holdtime { + type dt1:Srv6sid-holdtime; + description + "Configure SID holdtime for a stale/freed SID"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-datatypes.yang new file mode 100644 index 000000000..256fe2606 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-datatypes.yang @@ -0,0 +1,222 @@ +module Cisco-IOS-XR-segment-routing-srv6-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-segment-routing-srv6-datatypes"; + prefix segment-routing-srv6-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-02 { + description + "Extended SRv6EncapsulationHopLimitOption to include Propagate-disable + 2022-05-19 + New datatypes for uSID LIB ranges + 2022-03-08 + Static endpoint related changes"; + semver:module-version "1.3.0"; + } + revision 2019-11-19 { + description + "Support config knob to specify locator behavior."; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Srv6-differentiator { + type string { + length "1..46"; + } + description + "Srv6 differentiator"; + } + + typedef Srv6u-sid-ewlib-start-range { + type uint32 { + range "65520..65527"; + } + description + "Srv6u sid ewlib start range"; + } + + typedef Srv6-locator-name { + type xr:Cisco-ios-xr-string { + length "1..58"; + } + description + "Srv6 locator name"; + } + + typedef Srv6sid-holdtime { + type uint32 { + range "0..60"; + } + description + "Srv6sid holdtime"; + } + + typedef Srv6-locator-len { + type uint32 { + range "32..112"; + } + description + "Srv6 locator len"; + } + + typedef Srv6-encapsulation-hop-limit-value { + type uint32 { + range "0..255"; + } + description + "Srv6 encapsulation hop limit value"; + } + + typedef Srv6u-sid-lib-start-range { + type uint32 { + range "57344"; + } + description + "Srv6u sid lib start range"; + } + + typedef Srv6-static-sid-behavior { + type enumeration { + enum "end-x-psp" { + value 6; + description + "end x psp"; + } + enum "end-x-psp-usd" { + value 33; + description + "end x psp usd"; + } + enum "ua-psp" { + value 53; + description + "ua psp"; + } + enum "ua-psp-usd" { + value 57; + description + "ua psp usd"; + } + } + description + "Srv6 static sid behavior"; + } + + typedef Srv6-encapsulation-tc-value { + type uint32 { + range "0..255"; + } + description + "Srv6 encapsulation tc value"; + } + + typedef Srv6-encapsulation-tc-option { + type enumeration { + enum "value" { + value 1; + description + "Set Value"; + } + enum "propagate" { + value 2; + description + "Set value by propagation"; + } + enum "propagate-disable" { + value 3; + description + "Disable set value by propagation"; + } + } + description + "Srv6 encapsulation tc option"; + } + + typedef Srv6u-sid-elib-start-range { + type uint32 { + range "57444..65279"; + } + description + "Srv6u sid elib start range"; + } + + typedef Srv6-encapsulation-hop-limit-option { + type enumeration { + enum "count" { + value 1; + description + "Set Value"; + } + enum "propagate" { + value 2; + description + "Propagate IP TLL"; + } + enum "propagate-disable" { + value 3; + description + "Disable Propagate IP TLL"; + } + } + description + "Srv6 encapsulation hop limit option"; + } + + typedef Srv6u-behavior { + type enumeration { + enum "unode-shift-only" { + value 42; + description + "uNode (shift keyword: unode-only)"; + } + enum "unode-psp-usd" { + value 48; + description + "uNode (PSP/USD variant)"; + } + } + description + "Srv6u behavior"; + } + + typedef Srv6-algo-value { + type uint32 { + range "128..255"; + } + description + "Srv6 algo value"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper-sub1.yang new file mode 100644 index 000000000..e734e652b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper-sub1.yang @@ -0,0 +1,2188 @@ +submodule Cisco-IOS-XR-segment-routing-srv6-oper-sub1 { + belongs-to Cisco-IOS-XR-segment-routing-srv6-oper { + prefix Cisco-IOS-XR-segment-routing-srv6-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR segment-routing-srv6 package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-19 { + description + "New uSID LIB ranges information + 2022-05-19 + New uSID End.B6 variants with PSP_USD + 2022-05-12 + Platform capabilities extended for displaying if shift-only drop route is supported + 2022-03-23 + Added support for static adjacency SID status + 2021-11-23 + Display locators delayed-delete status + 2021-11-19 + Platform capabilities report extended with Max Locator supported + 2021-10-15 + New SID CTX type supported uDT46 and DT46 + 2021-09-16 + Manager will display platform requested defaults for traffic-class and hoplimit SRv6 encap parameters"; + semver:module-version "5.0.0"; + } + revision 2021-06-23 { + description + "Added id name to OOR summary"; + semver:module-version "4.0.0"; + } + revision 2020-12-11 { + description + "Update manager show command for 2 passes + 2020-10-16 + Rename SID count fields in SID manager summary. sids_count only includes non auto-generated SIDs. + 2020-05-06 + changes in def for some endpoint types and headend types + 2020-04-16 + Changes due to common Srv6 bag and renaming some leaf"; + semver:module-version "3.0.0"; + } + revision 2019-11-20 { + description + "Changes for SRv6 end function + 2019-04-22 + Flex-Algo specific changes"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sid-state { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "in-use" { + description + "In Use"; + } + enum "pending" { + description + "Pending"; + } + enum "stale" { + description + "Stale"; + } + } + description + "SID manager SID state"; + } + + typedef Sid-allocation { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "dynamic" { + description + "Dynamic"; + } + enum "explicit" { + description + "Explicit"; + } + } + description + "SID allocation type"; + } + + typedef In6-addr { + type inet:ipv6-address; + description + "In6 addr"; + } + + typedef Srv6af { + type enumeration { + enum "no-af" { + description + "No AF"; + } + enum "ipv4-af" { + description + "IPv4 AF"; + } + enum "ipv6-af" { + description + "IPv6 AF"; + } + } + description + "SRv6 AF type"; + } + + typedef Mgmt-srv6-endpoint { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown Endpoint type"; + } + enum "end" { + value 1; + description + "End (no PSP/USP)"; + } + enum "end-with-psp" { + value 2; + description + "End with PSP"; + } + enum "end-with-usp" { + value 3; + description + "End with USP"; + } + enum "end-with-psp-usp" { + value 4; + description + "End with PSP/USP"; + } + enum "end-x" { + value 5; + description + "End.X (no PSP/USP)"; + } + enum "end-x-with-psp" { + value 6; + description + "End.X with PSP"; + } + enum "end-x-with-usp" { + value 7; + description + "End.X with USP"; + } + enum "end-x-with-psp-usp" { + value 8; + description + "End.X with PSP/USP"; + } + enum "end-tbl" { + value 9; + description + "End.T (no PSP/USP)"; + } + enum "end-tbl-with-psp" { + value 10; + description + "End.T with PSP"; + } + enum "end-tbl-with-usp" { + value 11; + description + "End.T with USP"; + } + enum "end-tbl-with-psp-usp" { + value 12; + description + "End.T with PSP/USP"; + } + enum "end-b6-insert" { + value 13; + description + "End.B6.Insert"; + } + enum "end-b6-encaps" { + value 14; + description + "End.B6.Encaps"; + } + enum "end-bm" { + value 15; + description + "End.BM"; + } + enum "end-dx6" { + value 16; + description + "End.DX6"; + } + enum "end-dx4" { + value 17; + description + "End.DX4"; + } + enum "end-dt6" { + value 18; + description + "End.DT6"; + } + enum "end-dt4" { + value 19; + description + "End.DT4"; + } + enum "end-dt46" { + value 20; + description + "End.DT46"; + } + enum "end-dx2" { + value 21; + description + "End.DX2"; + } + enum "end-dx2v" { + value 22; + description + "End.DX2V"; + } + enum "end-dt2u" { + value 23; + description + "End.DT2U"; + } + enum "end-dt2m" { + value 24; + description + "End.DT2M"; + } + enum "end-s" { + value 25; + description + "End.S"; + } + enum "end-b6-insert-red" { + value 26; + description + "End.B6.Insert.Reduced"; + } + enum "end-b6-encaps-red" { + value 27; + description + "End.B6.Encaps.Reduced"; + } + enum "end-with-usd" { + value 28; + description + "End with USD"; + } + enum "end-with-psp-usd" { + value 29; + description + "End with PSP/USD"; + } + enum "end-with-usp-usd" { + value 30; + description + "End with USP/USD"; + } + enum "end-with-psp-usp-usd" { + value 31; + description + "End with PSP/USP/USD"; + } + enum "end-x-with-usd" { + value 32; + description + "End.X with USD"; + } + enum "end-x-with-psp-usd" { + value 33; + description + "End.X with PSP/USD"; + } + enum "end-x-with-usp-usd" { + value 34; + description + "End.X with USP/USD"; + } + enum "end-x-with-psp-usp-usd" { + value 35; + description + "End.X with PSP/USP/USD"; + } + enum "end-tbl-with-usd" { + value 36; + description + "End.T with USD"; + } + enum "end-tbl-with-psp-usd" { + value 37; + description + "End.T with PSP/USD"; + } + enum "end-tbl-with-usp-usd" { + value 38; + description + "End.T with USP/USD"; + } + enum "end-tbl-with-psp-usp-usd" { + value 39; + description + "End.T with PSP/USP/USD"; + } + enum "end-op" { + value 40; + description + "End.OP"; + } + enum "end-otp" { + value 41; + description + "End.OTP"; + } + enum "un-shift-only" { + value 42; + description + "uN Shift-only"; + } + enum "un" { + value 43; + description + "uN"; + } + enum "un-psp" { + value 44; + description + "uN with PSP"; + } + enum "un-usp" { + value 45; + description + "uN with USP"; + } + enum "un-psp-usp" { + value 46; + description + "uN with PSP-USP"; + } + enum "un-usd" { + value 47; + description + "uN with USD"; + } + enum "un-psp-usd" { + value 48; + description + "uN with PSP-USD"; + } + enum "un-usp-usd" { + value 49; + description + "uN with USP-USD"; + } + enum "un-psp-usp-usd" { + value 50; + description + "uN with PSP_USP-USD"; + } + enum "ua-shift-only" { + value 51; + description + "uA Shift-only"; + } + enum "ua" { + value 52; + description + "uA"; + } + enum "ua-psp" { + value 53; + description + "uA with PSP"; + } + enum "ua-usp" { + value 54; + description + "uA with USP"; + } + enum "ua-psp-usp" { + value 55; + description + "uA with PSP-USP"; + } + enum "ua-usd" { + value 56; + description + "uA with USD"; + } + enum "ua-psp-usd" { + value 57; + description + "uA with PSP-USD"; + } + enum "ua-usp-usd" { + value 58; + description + "uA with USP-USD"; + } + enum "ua-psp-usp-usd" { + value 59; + description + "uA with PSP_USP-USD"; + } + enum "udx6" { + value 60; + description + "uDX6"; + } + enum "udx4" { + value 61; + description + "uDX4"; + } + enum "udt6" { + value 62; + description + "uDT6"; + } + enum "udt4" { + value 63; + description + "uDT4"; + } + enum "udt46" { + value 64; + description + "uDT46"; + } + enum "udx2" { + value 65; + description + "uDX2"; + } + enum "udx2v" { + value 66; + description + "uDX2V"; + } + enum "udt2u" { + value 67; + description + "uDT2U"; + } + enum "udt2m" { + value 68; + description + "uDT2M"; + } + enum "ub6-insert" { + value 69; + description + "uB6 Insert"; + } + enum "ub6-encaps" { + value 70; + description + "uB6 Encaps"; + } + enum "ub6-insert-red" { + value 71; + description + "uB6 Insert.Red"; + } + enum "ub6-encaps-red" { + value 72; + description + "uB6 Encaps.Red"; + } + enum "ubm" { + value 73; + description + "uBM"; + } + enum "ub6-psp-usd-insert-red" { + value 79; + description + "uB6 with PSP-USD Insert.Red"; + } + enum "ub6-psp-usd-encaps-red" { + value 80; + description + "uB6 with PSP-USD Encaps.Red"; + } + } + description + "SRv6 Endpoint Behavior Type"; + } + + typedef Srv6-out-of-resource-state { + type enumeration { + enum "oor-green" { + description + "Resources Available"; + } + enum "oor-yellow" { + description + "Resources Warning. Have exceeded minor + threshold"; + } + enum "oor-red" { + description + "Out of Resources. Have exceeded major threshold"; + } + } + description + "SRv6 Out of Resource State"; + } + + typedef Mgmt-srv6-sid-fmt { + type enumeration { + enum "none" { + value 0; + description + "No format"; + } + enum "base" { + value 1; + description + "Base Format"; + } + enum "f3216" { + value 2; + description + "Micro-segment F3216 Format"; + } + } + description + "SRv6 SID Format Type"; + } + + typedef Srv6-op-mode { + type enumeration { + enum "none" { + description + "No mode"; + } + enum "srv6-base" { + description + "SRv6 base"; + } + enum "srv6-micro-segment" { + description + "SRv6 micro-segment"; + } + } + description + "SRv6 operational mode"; + } + + grouping SRV6-STATIC-ENDPOINT-INFO { + description + "SRv6 SID Manager Static Endpoint info"; + container sid-behavior { + description + "SID Behavior Type"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container sid-context { + description + "SID Context"; + uses MGMT-SRV6-SID-CTX; + } + leaf sid { + type string; + description + "SID Value"; + } + leaf is-locator-up { + type boolean; + description + "Is Locator Up?"; + } + leaf is-locator-oor { + type boolean; + description + "Is Locator OOR?"; + } + leaf is-sid-allocated { + type boolean; + description + "Is a SID allocated?"; + } + leaf algo-match { + type boolean; + description + "Does the locator algo match configured algo?"; + } + } + + grouping SRV6-LOCATOR-INTF-INFO { + description + "SRv6 locator interface"; + leaf name { + type string; + description + "Interface name"; + } + leaf if-handle { + type xr:Hex-integer; + description + "Interface handle"; + } + leaf programmed-prefix { + type string; + description + "Interface prefix/addr programmed"; + } + } + + grouping SRV6-LOCATOR-INFO { + description + "SRv6 Locator info"; + container micro-segment-behavior { + description + "Micro-segment behavior"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container interface { + description + "Locator IM intf info"; + uses SRV6-LOCATOR-INTF-INFO; + } + container create-timestamp { + description + "Creation timestamp"; + uses MGMT-SIDMGR-TIMESTAMP; + } + leaf name { + type string; + description + "Locator Name"; + } + leaf id { + type uint32; + description + "Locator ID"; + } + leaf prefix { + type string; + description + "Locator Prefix"; + } + leaf algorithm-id { + type uint8; + description + "Algorithm Id"; + } + leaf is-operational { + type boolean; + description + "Locator status is Up or Down"; + } + leaf is-micro-segment { + type boolean; + description + "A Micro-segment locator"; + } + leaf is-anycast { + type boolean; + description + "An Anycast locator"; + } + leaf is-delayed-delete { + type boolean; + description + "Locator will delay deleting route after SID free + during migration"; + } + leaf out-of-resources-state { + type Srv6-out-of-resource-state; + description + "Locator Resources State for SIDs"; + } + leaf sids-count { + type uint32; + description + "Number of allocated SIDs"; + } + } + + grouping SID-OWNER { + description + "SID Owner"; + leaf owner { + type string; + description + "Owner"; + } + } + + grouping SRV6-SID-INFO { + description + "SRv6 SID Manager SID info"; + container sid-behavior { + description + "SID Behavior Type"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container sid-context { + description + "SID Context"; + uses MGMT-SRV6-SID-CTX; + } + container create-timestamp { + description + "Creation timestamp"; + uses MGMT-SIDMGR-TIMESTAMP; + } + leaf sid { + type string; + description + "SID Value"; + } + leaf allocation-type { + type Sid-allocation; + description + "Allocation Type"; + } + leaf state { + type Sid-state; + description + "State"; + } + leaf has-forwarding { + type boolean; + description + "Rewrite done or not"; + } + leaf locator { + type string; + description + "Associated locator"; + } + leaf sid-functionvalue { + type uint32; + description + "SID function value"; + } + list owner { + description + "Owner"; + uses SID-OWNER; + } + } + + grouping MGMT-SIDMGR-TIMESTAMP { + description + "SID Manager Generic Timestamp"; + leaf time-in-nano-seconds { + type uint64; + units "nanosecond"; + description + "Timestamp in nano seconds"; + } + leaf age-in-nano-seconds { + type uint64; + units "nanosecond"; + description + "Age in nano seconds"; + } + } + + grouping MGMT-SRV6-SID-CTX-U-DX { + description + "SRv6 uDX4/6 SID context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf next-hop-set-id { + type uint32; + description + "Next Hop Set ID"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-U-DT2M { + description + "SRv6 uDT2M SID context"; + container dt2-base-ctx { + description + "Common DT2 context"; + uses MGMT-SRV6-SID-CTX-DT2-BASE; + } + } + + grouping MGMT-SRV6-SID-CTX-U-DT2U { + description + "SRv6 uDT2U SID context"; + container dt2-base-ctx { + description + "Common DT2 context"; + uses MGMT-SRV6-SID-CTX-DT2-BASE; + } + } + + grouping MGMT-SRV6-SID-CTX-U-DX2 { + description + "SRv6 uDX2 SID context"; + leaf evi { + type uint32; + description + "EVI"; + } + leaf eth-tag { + type uint32; + description + "Ethernet Tag ID"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-ADDR-UNION { + description + "SRv6 IP address union"; + leaf af-type { + type Srv6af; + description + "AFType"; + } + leaf ipv4 { + when "../af-type = 'ipv4-af'" { + description + "../AFType = 'IPv4_AF'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6 { + when "../af-type = 'ipv6-af'" { + description + "../AFType = 'IPv6_AF'"; + } + type In6-addr; + description + "IPv6 address"; + } + } + + grouping MGMT-SRV6-SID-CTX-U-B6 { + description + "SRv6 uB6 SID context"; + container policy-endpoint { + description + "Policy Endpoint address"; + uses MGMT-SRV6-ADDR-UNION; + } + leaf policy-name { + type string; + description + "Policy name"; + } + leaf policy-color { + type uint32; + description + "Color associated with the policy"; + } + leaf policy-endpoint-is-null { + type boolean; + description + "Policy endpoint is null"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-U-DT46 { + description + "SRv6 uDT46 SID context"; + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-DT-BASE { + description + "SRv6 uDTx/End.DTx SID base context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-U-DT { + description + "SRv6 uDT4/6 SID context"; + container u-dt-base-ctx { + description + "Common uDT context"; + uses MGMT-SRV6-SID-CTX-DT-BASE; + } + } + + grouping MGMT-SRV6-SID-CTX-U-N { + description + "SRv6 uN SID context"; + container u-n-base-ctx { + description + "Common uN context"; + uses MGMT-SRV6-SID-CTX1; + } + } + + grouping MGMT-SRV6-SID-CTX-U-A-PSP-USD { + description + "SRv6 End.X (PSP) SID context"; + container u-a-base-ctx { + description + "Common uA context"; + uses MGMT-SRV6-SID-CTX-U-A; + } + } + + grouping MGMT-SRV6-SID-CTX-U-A { + description + "SRv6 uA SID context"; + leaf is-protected { + type boolean; + description + "Is protected?"; + } + leaf opaque-id { + type uint8; + description + "Additional differentiator - opaque to SIDMgr"; + } + leaf algo-id { + type uint8; + description + "Algorithm Id"; + } + leaf nexthop-address { + type inet:ipv6-address; + description + "Nexthop IP address"; + } + leaf if-name { + type string; + description + "Interface name"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-U-A-SHIFT-ONLY { + description + "SRv6 End.X (USP) SID context"; + container u-a-base-ctx { + description + "Common uA context"; + uses MGMT-SRV6-SID-CTX-U-A; + } + } + + grouping MGMT-SRV6-SID-CTX-X-PSP-USD { + description + "SRv6 End.X (PSP-USD) SID context"; + container xctx { + description + "Common End.X context for End.X (PSP-USD) SID"; + uses MGMT-SRV6-SID-CTX-X; + } + } + + grouping MGMT-SRV6-SID-CTX-E-PSP-USD { + description + "SRv6 End (PSP-USD) SID context"; + container ectx { + description + "Common End context for End (PSP-USD) SID"; + uses MGMT-SRV6-SID-CTX1; + } + } + + grouping MGMT-SRV6-SID-CTX-DT2M { + description + "SRv6 End.DT2M SID context"; + container dt2-base-ctx { + description + "Common DT2 context"; + uses MGMT-SRV6-SID-CTX-DT2-BASE; + } + } + + grouping MGMT-SRV6-SID-CTX-DT2-BASE { + description + "SRv6 uDT2x/End.DT2x SID base context"; + leaf evi { + type uint32; + description + "EVI"; + } + leaf opaque-id { + type uint32; + description + "Additional differentiator - opaque to SIDMgr"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-DT2U { + description + "SRv6 End.DT2U SID context"; + container dt2-base-ctx { + description + "Common DT2 context"; + uses MGMT-SRV6-SID-CTX-DT2-BASE; + } + } + + grouping MGMT-SRV6-SID-CTX-DX2 { + description + "SRv6 End.DX2 SID context"; + leaf evi { + type uint32; + description + "EVI"; + } + leaf eth-tag { + type uint32; + description + "Ethernet Tag ID"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-DT46 { + description + "SRv6 End.DT46 SID context"; + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-DT { + description + "SRv6 End.DT4/6 SID context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-DX { + description + "SRv6 End.DX4/6 SID context"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf next-hop-set-id { + type uint32; + description + "Next Hop Set ID"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-X { + description + "SRv6 End.X SID base context"; + leaf is-protected { + type boolean; + description + "Is protected?"; + } + leaf opaque-id { + type uint8; + description + "Additional differentiator - opaque to SIDMgr"; + } + leaf nexthop-address { + type inet:ipv6-address; + description + "Nexthop IP address"; + } + leaf if-name { + type string; + description + "Interface name"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-X-PSP { + description + "SRv6 End.X (PSP) SID context"; + container xctx { + description + "Common End.X context for End.X (PSP) SID"; + uses MGMT-SRV6-SID-CTX-X; + } + } + + grouping MGMT-SRV6-SID-CTX-RSVD { + description + "SRv6 Reserved SID context"; + leaf table-id { + type uint32; + description + "Table Id"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-OP { + description + "SRv6 End.OP SID context"; + container op-ctx { + description + "Common reserved context for End.OP SID"; + uses MGMT-SRV6-SID-CTX-RSVD; + } + } + + grouping MGMT-SRV6-SID-CTX1 { + description + "SRv6 End SID context"; + leaf table-id { + type uint32; + description + "Table Id"; + } + leaf opaque-id { + type uint16; + description + "Additional differentiator - opaque to SIDMgr"; + } + leaf differentiator { + type string { + length "0..46"; + } + description + "Additional differentiator"; + } + } + + grouping MGMT-SRV6-SID-CTX-E-PSP { + description + "SRv6 End (PSP) SID context"; + container ectx { + description + "Common End context for End (PSP) SID"; + uses MGMT-SRV6-SID-CTX1; + } + } + + grouping MGMT-SRV6-SID-CTX-KEY { + description + "MGMT SRV6 SID CTX KEY"; + container e-psp { + when "../sid-context-type = 'end-with-psp'" { + description + "../SIDContextType = 'EndWithPSP'"; + } + description + "End (PSP) SID context"; + uses MGMT-SRV6-SID-CTX-E-PSP; + } + container op { + when "../sid-context-type = 'end-op'" { + description + "../SIDContextType = 'EndOP'"; + } + description + "End.OP SID context"; + uses MGMT-SRV6-SID-CTX-OP; + } + container x-psp { + when "../sid-context-type = 'end-x-with-psp'" { + description + "../SIDContextType = 'EndXWithPSP'"; + } + description + "End.X (PSP) SID context"; + uses MGMT-SRV6-SID-CTX-X-PSP; + } + container dx4 { + when "../sid-context-type = 'end-dx4'" { + description + "../SIDContextType = 'EndDX4'"; + } + description + "End.DX4 SID context"; + uses MGMT-SRV6-SID-CTX-DX; + } + container dt4 { + when "../sid-context-type = 'end-dt4'" { + description + "../SIDContextType = 'EndDT4'"; + } + description + "End.DT4 SID context"; + uses MGMT-SRV6-SID-CTX-DT; + } + container dx6 { + when "../sid-context-type = 'end-dx6'" { + description + "../SIDContextType = 'EndDX6'"; + } + description + "End.DX6 SID context"; + uses MGMT-SRV6-SID-CTX-DX; + } + container dt6 { + when "../sid-context-type = 'end-dt6'" { + description + "../SIDContextType = 'EndDT6'"; + } + description + "End.DT6 SID context"; + uses MGMT-SRV6-SID-CTX-DT; + } + container dt46 { + when "../sid-context-type = 'end-dt46'" { + description + "../SIDContextType = 'EndDT46'"; + } + description + "End.DT46 SID context"; + uses MGMT-SRV6-SID-CTX-DT46; + } + container dx2 { + when "../sid-context-type = 'end-dx2'" { + description + "../SIDContextType = 'EndDX2'"; + } + description + "End.DX2 SID context"; + uses MGMT-SRV6-SID-CTX-DX2; + } + container dt2u { + when "../sid-context-type = 'end-dt2u'" { + description + "../SIDContextType = 'EndDT2U'"; + } + description + "End.DT2U SID context"; + uses MGMT-SRV6-SID-CTX-DT2U; + } + container dt2m { + when "../sid-context-type = 'end-dt2m'" { + description + "../SIDContextType = 'EndDT2M'"; + } + description + "End.DT2M SID context"; + uses MGMT-SRV6-SID-CTX-DT2M; + } + container e-psp-usd { + when "../sid-context-type = 'end-with-psp-usd'" { + description + "../SIDContextType = 'EndWithPSP_USD'"; + } + description + "End (PSP-USD) SID context"; + uses MGMT-SRV6-SID-CTX-E-PSP-USD; + } + container x-psp-usd { + when "../sid-context-type = 'end-x-with-psp-usd'" { + description + "../SIDContextType = 'EndXWithPSP_USD'"; + } + description + "End.X (PSP-USD) SID context"; + uses MGMT-SRV6-SID-CTX-X-PSP-USD; + } + container u-a-shift-only { + when "../sid-context-type = 'ua-shift-only'" { + description + "../SIDContextType = 'UA_ShiftOnly'"; + } + description + "uA Shift-only SID context"; + uses MGMT-SRV6-SID-CTX-U-A-SHIFT-ONLY; + } + container u-a-psp-usd { + when "../sid-context-type = 'ua-psp-usd'" { + description + "../SIDContextType = 'UA_PSP_USD'"; + } + description + "uA PSP-USD SID context"; + uses MGMT-SRV6-SID-CTX-U-A-PSP-USD; + } + container u-n-shift-only { + when "../sid-context-type = 'un-shift-only'" { + description + "../SIDContextType = 'UN_ShiftOnly'"; + } + description + "uN Shift-only SID context"; + uses MGMT-SRV6-SID-CTX-U-N; + } + container u-n-psp-usd { + when "../sid-context-type = 'un-psp-usd'" { + description + "../SIDContextType = 'UN_PSP_USD'"; + } + description + "uN PSP-USD SID context"; + uses MGMT-SRV6-SID-CTX-U-N; + } + container u-dt4 { + when "../sid-context-type = 'udt4'" { + description + "../SIDContextType = 'UDT4'"; + } + description + "uDT4 SID context"; + uses MGMT-SRV6-SID-CTX-U-DT; + } + container u-dt6 { + when "../sid-context-type = 'udt6'" { + description + "../SIDContextType = 'UDT6'"; + } + description + "uDT6 SID context"; + uses MGMT-SRV6-SID-CTX-U-DT; + } + container u-dt46 { + when "../sid-context-type = 'udt46'" { + description + "../SIDContextType = 'UDT46'"; + } + description + "uDT46 SID context"; + uses MGMT-SRV6-SID-CTX-U-DT46; + } + container u-b6-insert-red { + when "../sid-context-type = 'ub6-insert-red'" { + description + "../SIDContextType = 'UB6_InsertRed'"; + } + description + "uB6 Insert.Red SID context"; + uses MGMT-SRV6-SID-CTX-U-B6; + } + container u-b6-encaps-red { + when "../sid-context-type = 'ub6-encaps-red'" { + description + "../SIDContextType = 'UB6_EncapsRed'"; + } + description + "uB6 Encaps.Red SID context"; + uses MGMT-SRV6-SID-CTX-U-B6; + } + container udx2 { + when "../sid-context-type = 'udx2'" { + description + "../SIDContextType = 'UDX2'"; + } + description + "UDX2 SID context"; + uses MGMT-SRV6-SID-CTX-U-DX2; + } + container udt2u { + when "../sid-context-type = 'udt2u'" { + description + "../SIDContextType = 'UDT2U'"; + } + description + "uDT2U SID context"; + uses MGMT-SRV6-SID-CTX-U-DT2U; + } + container udt2m { + when "../sid-context-type = 'udt2m'" { + description + "../SIDContextType = 'UDT2M'"; + } + description + "uDT2M SID context"; + uses MGMT-SRV6-SID-CTX-U-DT2M; + } + container udx4 { + when "../sid-context-type = 'udx4'" { + description + "../SIDContextType = 'UDX4'"; + } + description + "UDX4 SID context"; + uses MGMT-SRV6-SID-CTX-U-DX; + } + container udx6 { + when "../sid-context-type = 'udx6'" { + description + "../SIDContextType = 'UDX6'"; + } + description + "UDX6 SID context"; + uses MGMT-SRV6-SID-CTX-U-DX; + } + container u-b6-psp-usd-insert-red { + when "../sid-context-type = 'ub6-psp-usd-insert-red'" { + description + "../SIDContextType = 'UB6_PSP_USD_InsertRed'"; + } + description + "uB6 PSP-USD Insert.Red SID context"; + uses MGMT-SRV6-SID-CTX-U-B6; + } + container u-b6-psp-usd-encaps-red { + when "../sid-context-type = 'ub6-psp-usd-encaps-red'" { + description + "../SIDContextType = 'UB6_PSP_USD_EncapsRed'"; + } + description + "uB6 PSP-USD Encaps.Red SID context"; + uses MGMT-SRV6-SID-CTX-U-B6; + } + leaf sid-context-type { + type Mgmt-srv6-endpoint; + description + "SIDContextType"; + } + } + + grouping MGMT-SRV6-SID-CTX { + description + "SRv6 SID context"; + container key { + description + "SID Key"; + uses MGMT-SRV6-SID-CTX-KEY; + } + leaf application-data { + type yang:hex-string; + description + "Application opaque data"; + } + } + + grouping MGMT-SRV6-ENDPOINT-BEHAVIOR { + description + "SRv6 Endpoint Behavior Info"; + leaf type { + type Mgmt-srv6-endpoint; + description + "Behavior type"; + } + leaf description { + type string; + description + "Behavior description"; + } + } + + grouping SRV6-LOCAL-SID-INFO { + description + "SRv6 SID Manager Local SID info"; + container sid-behavior { + description + "SID Behavior"; + uses MGMT-SRV6-ENDPOINT-BEHAVIOR; + } + container sid-context { + description + "SID Context"; + uses MGMT-SRV6-SID-CTX; + } + container create-timestamp { + description + "Creation timestamp"; + uses MGMT-SIDMGR-TIMESTAMP; + } + leaf sid { + type string; + description + "SID Value"; + } + leaf sid-block-prefix { + type string; + description + "SID Block Prefix"; + } + leaf sid-functionvalue { + type uint32; + description + "SID function value"; + } + leaf locator-ref-count { + type uint32; + description + "Number of Locators sharing this Local SID"; + } + } + + grouping SRV6-IDBLOCK-INFO { + description + "SRv6 ID Block info"; + container local-sids-oor-summary { + description + "ID Blocks Local SID Out of Resource info"; + uses SRV6-OOR-SUMMARY; + } + leaf prefix { + type string; + description + "ID Block Prefix"; + } + leaf index { + type uint32; + description + "ID Block Index"; + } + leaf sids-count { + type uint32; + description + "Number of SIDs"; + } + leaf locator-ref-count { + type uint32; + description + "Number of Locators Sharing this Block"; + } + } + + grouping SRV6-PER-BEH-INFO { + description + "SRv6 SID HW resource consumption"; + leaf endpoint-behavior { + type string; + description + "End function"; + } + leaf value { + type uint32; + description + "Value associated with the end function"; + } + } + + grouping SRV6-PLATFORM-SET-OR-PROPAGATE { + description + "SRv6 Platform default encap parameters value set + or propagate"; + leaf do-propagate { + type boolean; + description + "Propagate from incoming packet or frame"; + } + leaf value { + type uint8; + description + "Specific value set"; + } + } + + grouping MGMT-SRV6-PLATFORM-USID-ENDP-SUPPORT { + description + "Platform SRv6 uSID endpoint FIB support"; + leaf local-only { + type boolean; + description + "Local only support"; + } + leaf global-local-combo { + type boolean; + description + "Global-Local combo support"; + } + leaf separate-shift-and-non-shift { + type boolean; + description + "Separate Shift and Non-shift support"; + } + leaf shift-only-drop { + type boolean; + description + "Shift-Only Drop route support"; + } + } + + grouping MGMT-SRV6-PLATFORM-SIG-PARAMS { + description + "Platform SRv6 params to be signaled"; + leaf max-sl { + type uint8; + description + "Max value of SegmentLeft field in received SRH"; + } + leaf max-end-pop-srh { + type uint8; + description + "Max num of SIDs in rcvd SRH for pop"; + } + leaf max-h-insert { + type uint8; + description + "Max num of SIDs for H.Insert op"; + } + leaf max-h-encap { + type uint8; + description + "Max num of SIDs for H.Encaps op"; + } + leaf max-end-d { + type uint8; + description + "Max num of SIDs in rcvd SRH for decap"; + } + } + + grouping MGMT-SIDMGR-STRING { + description + "Generic string"; + leaf string { + type string; + description + "String"; + } + } + + grouping SRV6-PLATFORM-SUPPORT { + description + "SRv6 Platform Support"; + container signaled-parameters { + description + "Signaled Parameters"; + uses MGMT-SRV6-PLATFORM-SIG-PARAMS; + } + container endpoint-entries { + description + "Supported endpoint entries"; + uses MGMT-SRV6-PLATFORM-USID-ENDP-SUPPORT; + } + leaf srv6 { + type boolean; + description + "SRv6 support"; + } + leaf tilfa { + type boolean; + description + "TI LFA support"; + } + leaf microloop-avoidance { + type boolean; + description + "Microloop-avoidance support"; + } + list endpoint-behavior { + description + "Supported end functions"; + uses MGMT-SIDMGR-STRING; + } + list headend-behavior { + description + "Supported headend functions"; + uses MGMT-SIDMGR-STRING; + } + list security-rule { + description + "Security rules"; + uses MGMT-SIDMGR-STRING; + } + list counter { + description + "Counters"; + uses MGMT-SIDMGR-STRING; + } + } + + grouping SRV6-PLATFORM-CFG-SUPPORT { + description + "SRv6 Platform Configurable Parameters under srv6 + mode"; + leaf encap-sa { + type boolean; + description + "SRv6 Encap Source Address"; + } + leaf encap-hop-limit-value { + type boolean; + description + "SRv6 Encap Hoplimit value"; + } + leaf encap-hop-limit-propagate { + type boolean; + description + "SRv6 Encap Hoplimit propagate"; + } + leaf encap-traffic-class-value { + type boolean; + description + "SRv6 value Encap TC value"; + } + leaf encap-traffic-class-propagate { + type boolean; + description + "SRv6 Encap TC propagate"; + } + leaf lib-range { + type boolean; + description + "SRv6 LIB and ELIB range support"; + } + leaf wlib-range { + type boolean; + description + "SRv6 WLIB range support"; + } + } + + grouping SRV6-PLATFORM-CAPABILITY { + description + "Platform Capabilities for SRv6"; + container cfg-support { + description + "Configurable param support"; + uses SRV6-PLATFORM-CFG-SUPPORT; + } + container support { + description + "Feature support"; + uses SRV6-PLATFORM-SUPPORT; + } + container encap-hop-limit-default { + description + "Platform Encap Hop-limit default info"; + uses SRV6-PLATFORM-SET-OR-PROPAGATE; + } + container encap-traffic-class-default { + description + "Platform Encap Traffic-class default info"; + uses SRV6-PLATFORM-SET-OR-PROPAGATE; + } + leaf max-sids { + type uint32; + description + "Maximum Sids"; + } + leaf sid-holdtime-mins { + type uint32; + units "minute"; + description + "Freed SID holdtime in mins"; + } + leaf max-locators { + type uint32; + description + "Maximum Locators"; + } + list sid-resource-usage { + description + "SID resource usage info for each supported + behavior"; + uses SRV6-PER-BEH-INFO; + } + } + + grouping SRV6-OOR-SUMMARY { + description + "SRv6 SID Manager Out of Resource Summary"; + leaf identifer-name { + type string; + description + "OOR Identifier Name"; + } + leaf oor-state { + type Srv6-out-of-resource-state; + description + "OOR State for SIDs"; + } + leaf oor-maximum-sid-count { + type uint32; + description + "Maximum Number of SIDs"; + } + leaf oor-current-free-sid-count { + type uint32; + description + "Current Number of Free SIDs"; + } + leaf oor-yellow-free-sid-threshold { + type uint32; + description + "Threshold for Number of Free SID below which OOR + Yellow State is reached"; + } + leaf oor-green-free-sid-threshold { + type uint32; + description + "Threshold for Number of Free SID above which OOR + Green State is restored"; + } + leaf oor-green-count { + type uint32; + description + "Number of times Resources Warning or Out of + Resources state has been cleared"; + } + leaf oor-yellow-count { + type uint32; + description + "Number of times system went into Resources + Warning state"; + } + leaf oor-red-count { + type uint32; + description + "Number of times system went into Out of + Resources state"; + } + } + + grouping SRV6-SIDMGR-SUMMARY { + description + "SRv6 SID Manager summary"; + container sids-out-of-resource-summary { + description + "SID resources global Out of Resource info"; + uses SRV6-OOR-SUMMARY; + } + leaf locators-count { + type uint16; + description + "Number of locators"; + } + leaf oper-locators-count { + type uint16; + description + "Number of operational locators"; + } + leaf sids-count { + type uint32; + description + "Number of allocated SIDs"; + } + leaf stale-sids-count { + type uint32; + description + "Number of Stale SIDs"; + } + leaf maximum-sids-count { + type uint32; + description + "Global Maximum number of SIDs"; + } + list block-local-sid-oor-summary { + description + "SIDs local (per block) Out of Resource info"; + uses SRV6-OOR-SUMMARY; + } + } + + grouping SRV6-SIDMGR-USID-WLIB-RANGES { + description + "SRv6 SID Manager uSID Wide Local ID Ranges"; + leaf ewlib-start { + type uint32; + description + "Start Value for Explicit Wide Local ID Block"; + } + leaf configured { + type boolean; + description + "True if start values are configured, otherwise + default"; + } + } + + grouping SRV6-SIDMGR-USID-LIB-RANGES { + description + "SRv6 SID Manager uSID Local ID Block Ranges"; + leaf lib-start { + type uint32; + description + "Start Value for Local ID Block"; + } + leaf elib-start { + type uint32; + description + "Start Value for Explicit Local ID Block"; + } + leaf configured { + type boolean; + description + "True if start values are configured, otherwise + default"; + } + } + + grouping MGMT-SRV6-SID-FMT { + description + "SRv6 SID Format Info"; + leaf type { + type Mgmt-srv6-sid-fmt; + description + "Format type"; + } + leaf description { + type string; + description + "Format description"; + } + } + + grouping SRV6-SIDMGR-SID-FMT-INFO { + description + "SRv6 SID Manager Per Format Operational Data"; + container format { + description + "SRv6 SID Format"; + uses MGMT-SRV6-SID-FMT; + } + container usidlib-ranges { + description + "SRv6 uSID Local ID Block Ranges"; + uses SRV6-SIDMGR-USID-LIB-RANGES; + } + container usidwlib-ranges { + description + "SRv6 uSID Wide Local ID Block Ranges"; + uses SRV6-SIDMGR-USID-WLIB-RANGES; + } + } + + grouping MGMT-SRV6-OP-MODE { + description + "SRv6 operational mode Info"; + leaf type { + type Srv6-op-mode; + description + "Mode type"; + } + leaf description { + type string; + description + "Mode description"; + } + } + + grouping MGMT-SRV6-OP-MODE-INFO { + description + "SRv6 SID Manager parameters related to operation + mode"; + container srv6-operational-mode { + description + "SRv6 operational mode"; + uses MGMT-SRV6-OP-MODE; + } + leaf srv6-operational-mode-enabled { + type boolean; + description + "SRv6 operational mode enabled"; + } + } + + grouping SRV6-SIDMGR-PARAMS-SET-OR-PROPAGATE { + description + "SRv6 SID Manager parameters value set or + propagate"; + leaf use-default { + type boolean; + description + "Use default value"; + } + leaf do-propagate { + type boolean; + description + "Propagate from incoming packet or frame"; + } + leaf value { + type uint8; + description + "Specific value set"; + } + } + + grouping SRV6-SIDMGR-PARAMS { + description + "SRv6 SID Manager parameters"; + container encap-hop-limit { + description + "Encap Hop-limit info"; + uses SRV6-SIDMGR-PARAMS-SET-OR-PROPAGATE; + } + container encap-traffic-class { + description + "Encap Traffic-class info"; + uses SRV6-SIDMGR-PARAMS-SET-OR-PROPAGATE; + } + leaf srv6-enabled { + type boolean; + description + "Is SRv6 enabled?"; + } + leaf configured-encap-source-address { + type inet:ipv6-address; + description + "Configured Encap Source address"; + } + leaf default-encap-source-address { + type inet:ipv6-address; + description + "Default Encap Source address"; + } + leaf is-sid-holdtime-configured { + type boolean; + description + "Is SID Holdtime configured?"; + } + leaf sid-holdtime-mins-configured { + type uint32; + units "minute"; + description + "Configured SID Holdtime in mins"; + } + list srv6-operational-mode { + description + "SRv6 operational modes"; + uses MGMT-SRV6-OP-MODE-INFO; + } + list sid-formats-info { + description + "SRv6 SID Formats Information"; + uses SRV6-SIDMGR-SID-FMT-INFO; + } + } + + grouping SRV6-SIDMGR-INFO { + description + "SRv6 SID Manager info"; + container sid-mgr-params { + description + "SID Mgr parameters"; + uses SRV6-SIDMGR-PARAMS; + } + container sid-mgr-summary { + description + "SID Mgr summary info"; + uses SRV6-SIDMGR-SUMMARY; + } + container platform-capabilities { + description + "Platform Capabilities"; + uses SRV6-PLATFORM-CAPABILITY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper.yang new file mode 100644 index 000000000..b6ed282e2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-segment-routing-srv6-oper.yang @@ -0,0 +1,327 @@ +module Cisco-IOS-XR-segment-routing-srv6-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-segment-routing-srv6-oper"; + prefix segment-routing-srv6-oper; + + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-segment-routing-srv6-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-segment-routing-srv6-oper-sub1 { + revision-date 2022-05-19; + } + + 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 segment-routing-srv6 package operational data. + + This module contains definitions + for the following management objects: + srv6: Segment Routing with IPv6 dataplane + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-19 { + description + "New uSID LIB ranges information + 2022-05-19 + New uSID End.B6 variants with PSP_USD + 2022-05-12 + Platform capabilities extended for displaying if shift-only drop route is supported + 2022-03-23 + Added support for static adjacency SID status + 2021-11-23 + Display locators delayed-delete status + 2021-11-19 + Platform capabilities report extended with Max Locator supported + 2021-10-15 + New SID CTX type supported uDT46 and DT46 + 2021-09-16 + Manager will display platform requested defaults for traffic-class and hoplimit SRv6 encap parameters"; + semver:module-version "5.0.0"; + } + revision 2021-06-23 { + description + "Added id name to OOR summary"; + semver:module-version "4.0.0"; + } + revision 2020-12-11 { + description + "Update manager show command for 2 passes + 2020-10-16 + Rename SID count fields in SID manager summary. sids_count only includes non auto-generated SIDs. + 2020-05-06 + changes in def for some endpoint types and headend types + 2020-04-16 + Changes due to common Srv6 bag and renaming some leaf"; + semver:module-version "3.0.0"; + } + revision 2019-11-20 { + description + "Changes for SRv6 end function + 2019-04-22 + Flex-Algo specific changes"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping LOCATOR-ALL-SID-TABLE { + description + "Common node of active, standby"; + container locator-all-sids { + description + "Operational container for all (Active and Stale) + SIDs across all Locators"; + list locator-all-sid { + key "locator-name sid-opcode"; + description + "Operational data for given locator and SID + opcode"; + leaf locator-name { + type dt1:Srv6-locator-name; + description + "Locator name"; + } + leaf sid-opcode { + type uint32; + description + "Sid opcode"; + } + uses SRV6-SID-INFO; + } + } + } + + grouping LOCATOR-TABLE { + description + "Common node of active, standby"; + container locators { + description + "SRv6 locators related information"; + list locator { + key "name"; + description + "Operational data for given SRv6 locator"; + container info { + description + "Operational data for given SRv6 locator"; + uses SRV6-LOCATOR-INFO; + } + container sids { + description + "SRv6 locator SID table"; + list sid { + key "address"; + description + "Operational data for given SRv6 SID"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv6 address"; + } + uses SRV6-SID-INFO; + } + } + leaf name { + type dt1:Srv6-locator-name; + description + "Locator name"; + } + } + } + } + + grouping BLOCK-TABLE { + description + "Common node of active, standby"; + container blocks { + description + "SRv6 SID blocks"; + list block { + key "prefix prefix-len"; + description + "A SRv6 SID block"; + container info { + description + "Operational data for given SRv6 SID block"; + uses SRV6-IDBLOCK-INFO; + } + leaf prefix { + type inet:ip-address-no-zone; + description + "Prefix address"; + } + leaf prefix-len { + type uint32 { + range "16..64"; + } + description + "Prefix mask length"; + } + } + } + } + + grouping MANAGER { + description + "Common node of active, standby"; + container manager { + description + "SID Manager information"; + uses SRV6-SIDMGR-INFO; + } + } + + grouping MICRO-SEGMENT { + description + "Common node of active, standby"; + container micro-segment { + description + "SRv6 Micro-segment info"; + container local-sids { + description + "SRv6 Micro-segment local-uSIDs info"; + list local-sid { + key "sid-prefix sid-prefix-len"; + description + "SRv6 Micro-segment local-uSID info"; + leaf sid-prefix { + type inet:ip-address-no-zone; + description + "SID Prefix address"; + } + leaf sid-prefix-len { + type uint32 { + range "16..64"; + } + description + "SID Prefix mask length"; + } + uses SRV6-LOCAL-SID-INFO; + } + } + } + } + + grouping STATIC-ENDPOINT-TABLE { + description + "Common node of active, standby"; + container static-endpoints { + description + "SRv6 static endpoint related information"; + list static-endpoint { + key "prefix"; + description + "Operational data for given SRv6 static endpoint"; + leaf prefix { + type inet:ip-address-no-zone; + description + "SID Prefix"; + } + uses SRV6-STATIC-ENDPOINT-INFO; + } + } + } + + grouping LOCATOR-ALL-ACTIVE-SID-TABLE { + description + "Common node of active, standby"; + container locator-all-active-sids { + description + "Operational container for Active SIDs across all + Locators"; + list locator-all-active-sid { + key "locator-name sid-opcode"; + description + "Operational data for given locator and SID + opcode"; + leaf locator-name { + type dt1:Srv6-locator-name; + description + "Locator name"; + } + leaf sid-opcode { + type uint32; + description + "Sid opcode"; + } + uses SRV6-SID-INFO; + } + } + } + + container srv6 { + config false; + description + "Segment Routing with IPv6 dataplane"; + container active { + description + "Active SRv6 operational data"; + container locator-all-stale-sids { + description + "Operational container for all Stale SIDs across + all Locators"; + list locator-all-stale-sid { + key "locator-name sid-opcode"; + description + "Operational data for given locator and SID + opcode"; + leaf locator-name { + type dt1:Srv6-locator-name; + description + "Locator name"; + } + leaf sid-opcode { + type uint32; + description + "Sid opcode"; + } + uses SRV6-SID-INFO; + } + } + uses MANAGER; + uses BLOCK-TABLE; + uses MICRO-SEGMENT; + uses LOCATOR-TABLE; + uses LOCATOR-ALL-SID-TABLE; + uses STATIC-ENDPOINT-TABLE; + uses LOCATOR-ALL-ACTIVE-SID-TABLE; + } + container standby { + description + "Standby SRv6 operational data"; + uses MANAGER; + uses BLOCK-TABLE; + uses MICRO-SEGMENT; + uses LOCATOR-TABLE; + uses LOCATOR-ALL-SID-TABLE; + uses STATIC-ENDPOINT-TABLE; + uses LOCATOR-ALL-ACTIVE-SID-TABLE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-cfg.yang new file mode 100644 index 000000000..c641c6039 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-cfg.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-sfi-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sfi-cfg"; + prefix sfi-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 sfi package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-06 { + description + "Initial version"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container sfi { + description + "SFI attributes"; + leaf group { + type xr:Cisco-ios-xr-string { + length "1..50"; + } + description + "Configure group on this SFI"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper-sub1.yang new file mode 100644 index 000000000..74df3ea57 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper-sub1.yang @@ -0,0 +1,162 @@ +submodule Cisco-IOS-XR-sfi-ma-oper-sub1 { + belongs-to Cisco-IOS-XR-sfi-ma-oper { + prefix Cisco-IOS-XR-sfi-ma-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR sfi-ma package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-25 { + description + "Added registered-table-id and registered-proto-id leafs to SFI VRF RIB AFI registration information"; + semver:module-version "1.1.0"; + } + revision 2021-08-12 { + description + "Added MPLS v4/v6 label leaves to SFI-DETAIL"; + semver:module-version "1.0.0"; + } + revision 2020-12-08 { + description + "Added SFI VRF Bag and respective oper commands"; + } + revision 2020-01-06 { + description + "Initial version"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sfi-state { + type enumeration { + enum "unknown" { + value 0; + description + "Unknown"; + } + enum "down" { + value 1; + description + "Down"; + } + enum "up" { + value 2; + description + "Up"; + } + } + description + "SFI states"; + } + + grouping SFI-DETAIL { + description + "Service Function Interface Detailed Information"; + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf interface-state { + type Sfi-state; + description + "Interface state"; + } + leaf admin-state { + type Sfi-state; + description + "Interface admin state"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf group-name { + type string; + description + "Group name"; + } + leaf mpls-v4-label { + type uint32; + description + "MPLS V4 Label"; + } + leaf mpls-v6-label { + type uint32; + description + "MPLS V6 Label"; + } + } + + grouping SFI-VRF-RIB-AF-INFO { + description + "SFI VRF RIB AFI registration information bag"; + leaf table-id { + type uint32; + description + "Table ID"; + } + leaf registered-table-id { + type uint32; + description + "Registered Table ID"; + } + leaf registered-proto-id { + type uint32; + description + "Registered Proto ID"; + } + leaf sfi-count { + type uint32; + description + "SFI Count"; + } + } + + grouping SFI-VRF-INFO { + description + "SFI VRF bag"; + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf vrf-id { + type uint32; + description + "VRF ID"; + } + list rib-afi-info { + description + "per AFI RIB conn handles"; + uses SFI-VRF-RIB-AF-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper.yang new file mode 100644 index 000000000..2f36eead7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sfi-ma-oper.yang @@ -0,0 +1,102 @@ +module Cisco-IOS-XR-sfi-ma-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sfi-ma-oper"; + prefix sfi-ma-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-sfi-ma-oper-sub1 { + revision-date 2021-08-25; + } + + 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 sfi-ma package operational data. + + This module contains definitions + for the following management objects: + sfi: SFI operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-25 { + description + "Added registered-table-id and registered-proto-id leafs to SFI VRF RIB AFI registration information"; + semver:module-version "1.1.0"; + } + revision 2021-08-12 { + description + "Added MPLS v4/v6 label leaves to SFI-DETAIL"; + semver:module-version "1.0.0"; + } + revision 2020-12-08 { + description + "Added SFI VRF Bag and respective oper commands"; + } + revision 2020-01-06 { + description + "Initial version"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sfi { + config false; + description + "SFI operational data"; + container sfi-vrfs { + description + "SFI VRFs"; + list sfi-vrf { + key "name"; + description + "SFI VRF detail"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + uses SFI-VRF-INFO; + } + } + container detail-interfaces { + description + "SFI Interfaces"; + list detail-interface { + key "interface-name"; + description + "SFI Interface detail"; + leaf interface-name { + type xr:Interface-name; + description + "SFI Interface name"; + } + uses SFI-DETAIL; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-cfg.yang new file mode 100644 index 000000000..27cc3fcc6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-shellutil-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-shellutil-cfg"; + prefix shellutil-cfg; + + 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 shellutil package configuration. + + This module contains definitions + for the following management objects: + host-names: Container Schema for hostname configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-10-12 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container host-names { + description + "Container Schema for hostname configuration"; + leaf host-name { + type string; + description + "Configure system's hostname"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-copy-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-copy-act.yang new file mode 100644 index 000000000..e118e7d46 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-copy-act.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-shellutil-copy-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-shellutil-copy-act"; + prefix shellutil-copy-act; + + 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 action package configuration. + + Copyright (c) 2016-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-07 { + description + "Updated the task group for copy *-ext.yang"; + } + revision 2018-05-20 { + description + "Updated the module name as per CISCO format"; + } + revision 2018-01-20 { + description + "IOS XR 7.0.1 revision."; + } + + rpc copy { + description + "Copy"; + input { + leaf sourcename { + type string; + description + "source file name to copy"; + } + leaf destinationname { + type string; + mandatory true; + description + "destination file name"; + } + leaf sourcefilesystem { + type string; + mandatory true; + description + "source file system e.g disk0: tftp"; + } + leaf destinationfilesystem { + type string; + mandatory true; + description + "destination file system e.g disk0:, tftp:"; + } + leaf sourcelocation { + type string; + description + "source location"; + } + leaf destinationlocation { + type string; + description + "destination location"; + } + leaf vrf { + type string; + description + "vrf name"; + } + leaf recurse { + type boolean; + description + "recurse files to copy"; + } + } + output { + leaf response { + type string; + description + "Status of copy operation"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-delete-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-delete-act.yang new file mode 100644 index 000000000..9f426af08 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-delete-act.yang @@ -0,0 +1,76 @@ +module Cisco-IOS-XR-shellutil-delete-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-shellutil-delete-act"; + prefix shellutil-delete-act; + + 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 action package configuration. + + Copyright (c) 2016-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-07 { + description + "Updated the task group for delete *-ext.yang"; + } + revision 2018-01-20 { + description + "IOS XR 7.0.1 revision."; + } + + rpc delete { + description + "Delete"; + input { + leaf name { + type string; + mandatory true; + description + "file name"; + } + leaf location { + type string; + description + "location"; + } + leaf recurse { + type boolean; + description + "Files in dir"; + } + } + output { + leaf response { + type string; + description + "Status of delete operation"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper-sub1.yang new file mode 100644 index 000000000..9a7ffdad8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper-sub1.yang @@ -0,0 +1,153 @@ +submodule Cisco-IOS-XR-shellutil-dir-oper-sub1 { + belongs-to Cisco-IOS-XR-shellutil-dir-oper { + prefix Cisco-IOS-XR-shellutil-dir-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR shellutil-dir package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-14 { + description + "Initial version."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHELLUTIL-DIR-LAST-MODIFIED { + description + "last modified time"; + leaf date { + type uint32; + description + "Modified Date"; + } + leaf month { + type string; + description + "Modified Month"; + } + leaf year { + type uint32; + description + "Modified Year"; + } + leaf hour { + type uint32; + description + "Modified Hour"; + } + leaf min { + type uint32; + description + "Modified Minute"; + } + leaf sec { + type uint32; + units "second"; + description + "Modified Seconds"; + } + } + + grouping SHELLUTIL-DIR-CONTENT { + description + "file Info"; + leaf inode { + type uint32; + description + "Inode number"; + } + leaf permission { + type string; + description + "File permission"; + } + leaf links { + type uint32; + description + "Links"; + } + leaf size { + type string; + description + "File size"; + } + leaf name { + type string; + description + "File name"; + } + leaf link-name { + type string; + description + "Link name"; + } + list last-modified { + description + "Last modified time"; + uses SHELLUTIL-DIR-LAST-MODIFIED; + } + } + + grouping SHELLUTIL-DIR-UTIL { + description + "Directories Info"; + leaf path { + type string; + description + "Directory path"; + } + list content { + description + "List of directory contents"; + uses SHELLUTIL-DIR-CONTENT; + } + } + + grouping SHELLUTIL-DIR { + description + "List of directories"; + leaf total-size { + type string; + description + "Total size"; + } + leaf free-size { + type string; + description + "Free size"; + } + list directory { + description + "Available directories"; + uses SHELLUTIL-DIR-UTIL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper.yang new file mode 100644 index 000000000..242fad497 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-dir-oper.yang @@ -0,0 +1,101 @@ +module Cisco-IOS-XR-shellutil-dir-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-shellutil-dir-oper"; + prefix shellutil-dir-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-shellutil-dir-oper-sub1 { + revision-date 2020-10-14; + } + + 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 shellutil-dir package operational data. + + This module contains definitions + for the following management objects: + dir: List of directories + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-14 { + description + "Initial version."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dir { + config false; + description + "List of directories"; + container nodes { + description + "List of nodes"; + list node { + key "node-name"; + description + "Node ID"; + container dir-paths { + description + "Directory info"; + list dir-path { + key "name"; + description + "Directory path"; + leaf name { + type string; + description + "PATH"; + } + uses SHELLUTIL-DIR; + } + } + container dir-path-recs { + description + "Directory info with recusive option"; + list dir-path-rec { + key "name"; + description + "Directory path with recursive option"; + leaf name { + type string; + description + "PATHREC"; + } + uses SHELLUTIL-DIR; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper-sub1.yang new file mode 100644 index 000000000..28018fcf5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper-sub1.yang @@ -0,0 +1,85 @@ +submodule Cisco-IOS-XR-shellutil-filesystem-oper-sub1 { + belongs-to Cisco-IOS-XR-shellutil-filesystem-oper { + prefix Cisco-IOS-XR-shellutil-filesystem-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR shellutil-filesystem package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-22 { + description + "Changing type of size and free from string to uint64_t."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FILESYSTEM-UTIL { + description + "File System Description"; + leaf size { + type uint64; + units "byte"; + description + "Size of the file system in bytes"; + } + leaf free { + type uint64; + units "byte"; + description + "Free space in the file system in bytes"; + } + leaf type { + type string; + description + "Type of file system"; + } + leaf flags { + type string; + description + "Flags of file system"; + } + leaf prefixes { + type string; + description + "Prefixes of file system"; + } + } + + grouping FILESYSTEM { + description + "File Systems"; + list file-system { + description + "Available file systems"; + uses FILESYSTEM-UTIL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper.yang new file mode 100644 index 000000000..fefc6f974 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-filesystem-oper.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-shellutil-filesystem-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-shellutil-filesystem-oper"; + prefix shellutil-filesystem-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-shellutil-filesystem-oper-sub1 { + revision-date 2021-03-22; + } + + 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 shellutil-filesystem package operational data. + + This module contains definitions + for the following management objects: + file-system: List of filesystems + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-22 { + description + "Changing type of size and free from string to uint64_t."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container file-system { + config false; + description + "List of filesystems"; + list node { + key "node-name"; + description + "Node ID"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses FILESYSTEM; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper-sub1.yang new file mode 100644 index 000000000..73bf79898 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper-sub1.yang @@ -0,0 +1,142 @@ +submodule Cisco-IOS-XR-shellutil-oper-sub1 { + belongs-to Cisco-IOS-XR-shellutil-oper { + prefix Cisco-IOS-XR-shellutil-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR shellutil package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Time-source { + type enumeration { + enum "error" { + value 0; + description + "Error"; + } + enum "none" { + value 1; + description + "Unsynchronized time"; + } + enum "ntp" { + value 2; + description + "Network time protocol"; + } + enum "manual" { + value 3; + description + "User configured"; + } + enum "calendar" { + value 4; + description + "Hardware calendar"; + } + } + description + "Time source"; + } + + grouping SYSTEM-UPTIME { + description + "System uptime"; + leaf host-name { + type string; + description + "Host name"; + } + leaf uptime { + type uint32; + units "second"; + description + "Amount of time in seconds since this system + was last initialized"; + } + } + + grouping TIME-DATE { + description + "Date and time"; + leaf year { + type uint16; + description + "Year [0..65535]"; + } + leaf month { + type uint8; + description + "Month [1..12]"; + } + leaf day { + type uint8; + description + "Day [1..31]"; + } + leaf hour { + type uint8; + description + "Hour [0..23]"; + } + leaf minute { + type uint8; + description + "Minute [0..59]"; + } + leaf second { + type uint8; + description + "Second [0..60], use 60 for leap-second"; + } + leaf millisecond { + type uint16; + description + "Millisecond [0..999]"; + } + leaf wday { + type uint16; + description + "Week Day [0..6]"; + } + leaf time-zone { + type string; + description + "Time zone"; + } + leaf time-source { + type Time-source; + description + "Time source"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper.yang new file mode 100644 index 000000000..011ed3d2d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-shellutil-oper.yang @@ -0,0 +1,60 @@ +module Cisco-IOS-XR-shellutil-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-shellutil-oper"; + prefix shellutil-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-shellutil-oper-sub1 { + revision-date 2019-04-05; + } + + 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 shellutil package operational data. + + This module contains definitions + for the following management objects: + system-time: System time information + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container system-time { + config false; + description + "System time information"; + container clock { + description + "System clock information"; + uses TIME-DATE; + } + container uptime { + description + "System uptime information"; + uses SYSTEM-UPTIME; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1.yang new file mode 100644 index 000000000..0808c979f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1.yang @@ -0,0 +1,224 @@ +submodule Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1 { + belongs-to Cisco-IOS-XR-show-fpd-loc-ng-oper { + prefix Cisco-IOS-XR-show-fpd-loc-ng-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR show-fpd-loc-ng package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-18 { + description + "IOS XR 7.3.1 revision"; + semver:module-version "2.0.0"; + } + revision 2020-03-01 { + description + "IOS XR 7.0.13 revision + 2020-01-21 + IOS XR 7.2.1 revision"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping FPD-LOCATION-NAME { + description + "card location name string"; + leaf location-name { + type string; + description + "card location"; + } + } + + grouping FPD-SHOW-LOCATION-NAME-LIST { + description + "card location name string list"; + list location-name { + description + "card location list"; + uses FPD-LOCATION-NAME; + } + } + + grouping FPD-PKG-INFO { + description + "fpd pkg info"; + leaf card-type { + type string; + description + "card type"; + } + leaf fpd-desc { + type string; + description + "fpd desc"; + } + leaf upgrade-method { + type string; + description + "reload or not"; + } + leaf fpd-ver { + type string; + description + "fpd version"; + } + leaf min-sw-ver { + type string; + description + "minimum sw version"; + } + leaf min-hw-ver { + type string; + description + "minimum hw version"; + } + leaf cap-bitmap { + type uint32; + description + "capability attribute bitmask"; + } + leaf reload-type { + type uint32; + description + "reload type"; + } + } + + grouping FPD-PKG-INFO-LIST { + description + "fpd pkg info list "; + list fpd-pkg-data { + description + " fpd pkg list "; + uses FPD-PKG-INFO; + } + } + + grouping FPD-LOC-INFO { + description + "fpd loc info"; + leaf location { + type string; + description + "fpd location"; + } + leaf fpd-name { + type string; + description + "fpd name"; + } + } + + grouping FPD-LOC-INFO-LIST { + description + "card location name string list"; + list fpd-name { + description + "Fpd name list"; + uses FPD-LOC-INFO; + } + } + + grouping FPD-INFO { + description + "fpd info"; + leaf location { + type string; + description + "fpd location"; + } + leaf card-name { + type string; + description + "Name of card on which fpd is located"; + } + leaf fpd-name { + type string; + description + "fpd name"; + } + leaf hw-version { + type string; + description + "hadware version"; + } + leaf secure-boot-attr { + type string; + description + "secure boot attribute"; + } + leaf status { + type string; + description + "status of the fpd"; + } + leaf running-version { + type string; + description + "image running version "; + } + leaf programd-version { + type string; + description + "image programd version"; + } + leaf reload-location { + type string; + description + "location to be reloaded to activate"; + } + } + + grouping FPD-INFO-LIST { + description + "fpd info list"; + leaf upgrade-status { + type string; + description + "Either Upgrading or free used by CTC "; + } + leaf auto-upgrade-cfg { + type boolean; + description + "Auto upgrade config"; + } + list fpd-info-detail { + description + "fpd list with all details"; + uses FPD-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper.yang new file mode 100644 index 000000000..d60ac15f5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-show-fpd-loc-ng-oper.yang @@ -0,0 +1,144 @@ +module Cisco-IOS-XR-show-fpd-loc-ng-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-show-fpd-loc-ng-oper"; + prefix show-fpd-loc-ng-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-show-fpd-loc-ng-oper-sub1 { + revision-date 2020-09-18; + } + + 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 show-fpd-loc-ng package operational data. + + This module contains definitions + for the following management objects: + show-fpd: Show hw-module fpd + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-18 { + description + "IOS XR 7.3.1 revision"; + semver:module-version "2.0.0"; + } + revision 2020-03-01 { + description + "IOS XR 7.0.13 revision + 2020-01-21 + IOS XR 7.2.1 revision"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-fpd { + config false; + description + "Show hw-module fpd"; + container locations { + description + "location table"; + list location { + key "location-name"; + description + "location"; + container fpds { + description + "Display fpds on given locations"; + list fpd { + key "fpd-name"; + description + "Display fpds detail"; + leaf fpd-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Fpd Name"; + } + uses FPD-INFO-LIST; + } + } + leaf location-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Fpd location"; + } + } + } + container hw-module-fpd { + description + "Display fpds on all locations -show hw-module + fpd"; + uses FPD-INFO-LIST; + } + container help-locations { + description + "help location table"; + list help-location { + key "location-name"; + description + "location"; + container help-fpd { + description + "Display fpds on given locations"; + uses FPD-LOC-INFO-LIST; + } + leaf location-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Fpd location"; + } + } + } + container hw-module-fpd-help-fpd { + description + "Display help-fpd -show hw-module fpd help-fpd"; + uses FPD-LOC-INFO-LIST; + } + container package { + description + "gets fpd package info"; + uses FPD-PKG-INFO-LIST; + } + container location-help { + description + "fpd upgradable locations"; + uses FPD-SHOW-LOCATION-NAME-LIST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sirius-ptp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sirius-ptp-cfg.yang new file mode 100644 index 000000000..5b2a60d20 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sirius-ptp-cfg.yang @@ -0,0 +1,70 @@ +module Cisco-IOS-XR-sirius-ptp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sirius-ptp-cfg"; + prefix sirius-ptp-cfg; + + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + 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 sirius-ptp package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-10 { + description + "PTP port-mode config"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + leaf phy-hwmod-ptp { + type empty; + description + "Enable port-mode ptp"; + } + } + + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub1.yang new file mode 100644 index 000000000..9fcf8d9ea --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub1.yang @@ -0,0 +1,888 @@ +submodule Cisco-IOS-XR-skp-qos-oper-sub1 { + belongs-to Cisco-IOS-XR-skp-qos-oper { + prefix Cisco-IOS-XR-skp-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR skp-qos package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-07 { + description + "Added new policy param unit for inverse ratio"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-02-18 { + description + "Implementing Oper Yang Model"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Action { + type enumeration { + enum "police-transmit" { + description + "Police action transmit"; + } + enum "police-set-transmit" { + description + "Police action set transmit"; + } + enum "police-drop" { + description + "Police action drop"; + } + enum "police-unknown" { + description + "Police action unknown"; + } + } + description + "Action type"; + } + + typedef Action-opcode { + type enumeration { + enum "precedence" { + value 0; + description + "Precedence"; + } + enum "dscp" { + value 1; + description + "DSCP"; + } + enum "discard-class" { + value 2; + description + "Discard class"; + } + enum "qos-group" { + value 3; + description + "QoS group"; + } + enum "cos-inner" { + value 4; + description + "COS inner"; + } + enum "cos" { + value 5; + description + "COS"; + } + enum "exp-top" { + value 6; + description + "EXP top"; + } + enum "exp-imp" { + value 7; + description + "EXP IMP"; + } + enum "tunnel-precedence" { + value 8; + description + "Tunnel precedence"; + } + enum "tunnel-dscp" { + value 9; + description + "Tunnel DSCP"; + } + enum "itag-dei" { + value 10; + description + "ITAG DEI"; + } + enum "itag-cos" { + value 11; + description + "ITAG COS"; + } + enum "cos-imposition" { + value 12; + description + "COS imposition"; + } + enum "dei-imposition" { + value 13; + description + "DEI imposition"; + } + enum "dei" { + value 14; + description + "DEI"; + } + enum "no-marking" { + value 15; + description + "No marking"; + } + } + description + "Action opcode"; + } + + typedef Tb-algorithm { + type enumeration { + enum "inactive" { + value 0; + description + "Inactive, configured but disabled"; + } + enum "single" { + value 1; + description + "Single token bucket"; + } + enum "single-rate-tcm" { + value 2; + description + "Single rate three color marker"; + } + enum "two-rate-tcm" { + value 3; + description + "Two rate three color marker"; + } + enum "mef-tcm" { + value 4; + description + "Allows coupling between CIR and PIR tb's"; + } + enum "dummy" { + value 5; + description + "Internal dummy token bucket for coupled-policer + child"; + } + } + description + "Tokenbucket type"; + } + + typedef Qos-unit { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid type"; + } + enum "bytes" { + value 1; + description + "Bytes"; + } + enum "kilobytes" { + value 2; + description + "Kilobytes"; + } + enum "megabytes" { + value 3; + description + "Megabytes"; + } + enum "gigabytes" { + value 4; + description + "Gigabytes"; + } + enum "bps" { + value 5; + description + "Bits per second"; + } + enum "kbps" { + value 6; + description + "Kilo bits per second"; + } + enum "mbps" { + value 7; + description + "Mega bits per second"; + } + enum "gbps" { + value 8; + description + "Giga bits per second"; + } + enum "cells-per-second" { + value 9; + description + "Cells per second"; + } + enum "packets-per-second" { + value 10; + description + "Packets per second"; + } + enum "microsecond" { + value 11; + description + "Microsecond"; + } + enum "millisecond" { + value 12; + description + "Millisecond"; + } + enum "packets" { + value 13; + description + "Number of packets"; + } + enum "cells" { + value 14; + description + "Number of cells"; + } + enum "percentage" { + value 15; + description + "Percentage"; + } + enum "ratio" { + value 16; + description + "Ratio"; + } + } + description + "QoS parameter unit"; + } + + grouping QOS-SHOW-EA-POLICE-RESULT-ST { + description + "QoS EA Policer Result"; + leaf token-bucket-id { + type uint32; + description + "Token Bucket ID"; + } + leaf conform { + type uint32; + description + "Conform Rate"; + } + leaf exceed { + type uint32; + description + "Exceed Rate"; + } + leaf violate { + type uint32; + description + "Violate Rate"; + } + } + + grouping QOS-SHOW-EA-QUEUE-RESULT-ST { + description + "QoS EA Queue Result"; + leaf queue-id { + type uint32; + description + "Queue ID"; + } + leaf commit-tx { + type uint32; + description + "Commit Tx"; + } + leaf excess-tx { + type uint32; + description + "Excess Tx"; + } + leaf drop { + type uint32; + description + "Drop"; + } + } + + grouping QOS-SHOW-EA-RESULT-ST { + description + "QoS EA Class Result"; + container queue { + description + "QoS EA Queue Result"; + uses QOS-SHOW-EA-QUEUE-RESULT-ST; + } + container police { + description + "QoS EA Policer Result"; + uses QOS-SHOW-EA-POLICE-RESULT-ST; + } + leaf stats-id { + type uint32; + description + "Stats ID"; + } + } + + grouping QOS-SHOW-EA-POLICE-PARAMS-ST { + description + "QoS EA Policer parameters"; + container cir { + description + "CIR"; + uses QOS-PARAM; + } + container cbs { + description + "CBS"; + uses QOS-PARAM; + } + leaf color-aware { + type boolean; + description + "Color Aware"; + } + leaf policer-type { + type Tb-algorithm; + description + "Policer type"; + } + } + + grouping QOS-SHOW-EA-CONFIG-ST { + description + "QoS EA Class Configuration"; + container police { + description + "QoS EA Policer parameters"; + uses QOS-SHOW-EA-POLICE-PARAMS-ST; + } + container shape { + description + "QoS EA Shaper parameters"; + uses QOS-SHOW-EA-SHAPER-PARAMS-ST; + } + container wfq { + description + "QoS EA WFQ parameters"; + uses QOS-SHOW-EA-WFQ-PARAMS-ST; + } + leaf node-config { + type string { + length "0..101"; + } + description + "Node Config"; + } + } + + grouping QOS-SHOW-EA-PCLASS-ST { + description + "Skywarp QoS EA policy class details"; + list qos-show-ea-pclass-st { + description + "qos show ea pclass st"; + container config { + description + "QoS EA Class Configuration"; + uses QOS-SHOW-EA-CONFIG-ST; + } + container result { + description + "QoS EA Class Result"; + uses QOS-SHOW-EA-RESULT-ST; + } + leaf index { + type uint16; + description + "Class Index"; + } + leaf class-level { + type uint8; + description + "Class level"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "Class name"; + } + leaf policy-name { + type string { + length "0..65"; + } + description + "Policy name"; + } + leaf node-flags { + type string { + length "0..101"; + } + description + "Node Flags"; + } + leaf stats-flags { + type string { + length "0..101"; + } + description + "Statistical Flags"; + } + } + } + + grouping QOS-SHOW-EA-IF-QOS-PARAM-ST { + description + "QoS EA Interface Parameters"; + leaf policy-name { + type string { + length "0..65"; + } + description + "Policy name"; + } + leaf hierarchical-depth { + type uint8; + description + "Max Hierarchial Depth"; + } + leaf interface-type { + type string { + length "0..101"; + } + description + "Interface Type"; + } + leaf interface-rate { + type uint32; + description + "Interface Programmed Rate"; + } + leaf port-shaper-rate { + type uint32; + description + "Port Shaper Rate"; + } + leaf interface-handle { + type xr:Interface-name; + description + "Interface Handle"; + } + leaf under-line-interface-handle { + type xr:Interface-name; + description + "UnderLineInterface Handle"; + } + leaf bundle-id { + type uint16; + description + "Bundle Interface ID"; + } + leaf uidb-index { + type uint16; + description + "UIDB Index"; + } + leaf qos-interface-handle { + type uint64; + description + "QoS Interface handle"; + } + leaf port { + type uint32; + description + "Local Port"; + } + leaf policy-map-id { + type uint16; + description + "Policy Map ID"; + } + } + + grouping QOS-SHOW-EA-POLICY-ST { + description + "QoS EA policy"; + container header { + description + "QoS EA policy header"; + uses QOS-SHOW-EA-HEADER-ST; + } + container interface-parameters { + description + "QoS EA Interface Parameters"; + uses QOS-SHOW-EA-IF-QOS-PARAM-ST; + } + container skywarp-qos-policy-class { + description + "Skywarp QoS EA policy class details"; + uses QOS-SHOW-EA-PCLASS-ST; + } + } + + grouping QOS-EA-CAPABILITY { + description + "QoS capability"; + leaf max-policy-maps { + type uint32; + description + "Maximum policy maps per system"; + } + leaf max-policy-hierarchy { + type uint32; + description + "Maximum policy hierarchy"; + } + leaf max-policy-name-length { + type uint32; + description + "Maximum policy name length"; + } + leaf max-classes-per-policy { + type uint32; + description + "Maximum classes per policy"; + } + leaf max-police-actions-per-class { + type uint32; + description + "Maximum police actions per class"; + } + leaf max-marking-actions-per-class { + type uint32; + description + "Maximum marking action per class"; + } + leaf max-matches-per-class { + type uint32; + description + "Maximum matches per class"; + } + leaf max-classmap-name-length { + type uint32; + description + "Maximum classmap name length"; + } + leaf max-bundle-members { + type uint32; + description + "Maximum bundle members"; + } + } + + grouping MARK-ACTION { + description + "Marking parameters"; + leaf mark-value { + type uint8; + description + "Mark value"; + } + leaf action-opcode { + type Action-opcode; + description + "Action opcode"; + } + } + + grouping MARK-ACTION-PER-CATEGORY { + description + "Marking action"; + leaf action-type { + type Action; + description + "Action type"; + } + list mark-detail { + max-elements "2"; + description + "Mark value"; + uses MARK-ACTION; + } + } + + grouping QOS-CLASS-MARK-ACTIONS { + description + "QoS Mark parameters"; + container mark-only { + description + "Mark Only"; + uses MARK-ACTION-PER-CATEGORY; + } + container police-conform { + description + "Police conform mark"; + uses MARK-ACTION-PER-CATEGORY; + } + container police-exceed { + description + "Police exceed mark"; + uses MARK-ACTION-PER-CATEGORY; + } + } + + grouping QOS-SHOW-POLICE-PARAMS-ST { + description + "QoS Policer parameters"; + container cir { + description + "CIR"; + uses QOS-PARAM; + } + container cbs { + description + "CBS"; + uses QOS-PARAM; + } + leaf policer-id { + type uint32; + description + "policer ID"; + } + leaf policer-type { + type Tb-algorithm; + description + "Policer type"; + } + } + + grouping QOS-SHOW-EA-WFQ-PARAMS-ST { + description + "QoS EA WFQ parameters"; + container bandwidth { + description + "Bandwidth"; + uses QOS-PARAM; + } + container sum-of-bandwidth { + description + "Sum of Bandwidth"; + uses QOS-PARAM; + } + leaf excess-ratio { + type uint16; + description + "Excess Ratio"; + } + } + + grouping QOS-SHOW-WFQ-PARAMS-ST { + description + "QoS WFQ parameters"; + container committed-weight { + description + "Committed Weight"; + uses QOS-PARAM; + } + container programmed-wfq { + description + "QoS Programmed WFQ parameters"; + uses QOS-SHOW-EA-WFQ-PARAMS-ST; + } + leaf excess-weight { + type uint16; + description + "Excess Weight"; + } + } + + grouping QOS-SHOW-EA-SHAPER-PARAMS-ST { + description + "QoS EA Shaper parameters"; + container pir { + description + "PIR in kbps"; + uses QOS-PARAM; + } + container pbs { + description + "PBS in bytes"; + uses QOS-PARAM; + } + } + + grouping QOS-SHOW-QUEUE-PARAMS-ST { + description + "QoS Queue parameters"; + leaf queue-id { + type uint32; + description + "Queue ID"; + } + leaf queue-type { + type string { + length "0..101"; + } + description + "Queue Type"; + } + } + + grouping QOS-SHOW-PCLASS-ST { + description + "Skywarp QoS policy class details"; + list qos-show-pclass-st { + description + "qos show pclass st"; + container queue { + description + "QoS Queue parameters"; + uses QOS-SHOW-QUEUE-PARAMS-ST; + } + container shape { + description + "QoS EA Shaper parameters"; + uses QOS-SHOW-EA-SHAPER-PARAMS-ST; + } + container wfq { + description + "QoS WFQ parameters"; + uses QOS-SHOW-WFQ-PARAMS-ST; + } + container police { + description + "QoS Policer parameters"; + uses QOS-SHOW-POLICE-PARAMS-ST; + } + container marking { + description + "QoS Mark parameters"; + uses QOS-CLASS-MARK-ACTIONS; + } + leaf class-level { + type uint8; + description + "Class level"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "Class name"; + } + } + } + + grouping QOS-PARAM { + description + "Config details"; + leaf value { + type uint32; + description + "Config value"; + } + leaf unit { + type Qos-unit; + description + "Config unit"; + } + } + + grouping QOS-SHOW-IF-QOS-PARAM-ST { + description + "QoS Interface Parameters"; + container interface-config-rate { + description + "Interface Configured Rate"; + uses QOS-PARAM; + } + container interface-program-rate { + description + "Interface Programmed Rate"; + uses QOS-PARAM; + } + container port-shaper-rate { + description + "Port Shaper Rate"; + uses QOS-PARAM; + } + } + + grouping QOS-SHOW-EA-HEADER-ST { + description + "QoS EA policy header"; + leaf interface-name { + type string { + length "0..101"; + } + description + "Interface Name"; + } + leaf policy-name { + type string { + length "0..65"; + } + description + "Policy name"; + } + leaf direction { + type string { + length "0..11"; + } + description + "Direction"; + } + leaf classes { + type uint16; + description + "Number of classes"; + } + } + + grouping QOS-SHOW-POLICY-ST { + description + "QoS policy"; + container header { + description + "QoS EA policy header"; + uses QOS-SHOW-EA-HEADER-ST; + } + container interface-parameters { + description + "QoS Interface Parameters"; + uses QOS-SHOW-IF-QOS-PARAM-ST; + } + container skywarp-qos-policy-class { + description + "Skywarp QoS policy class details"; + uses QOS-SHOW-PCLASS-ST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub2.yang new file mode 100644 index 000000000..3edc6a03b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper-sub2.yang @@ -0,0 +1,993 @@ +submodule Cisco-IOS-XR-skp-qos-oper-sub2 { + belongs-to Cisco-IOS-XR-skp-qos-oper { + prefix Cisco-IOS-XR-skp-qos-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR skp-qos package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-07 { + description + "Added new policy param unit for inverse ratio"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-02-18 { + description + "Implementing Oper Yang Model"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Wred { + type enumeration { + enum "wred-cos-cmd" { + description + "wred cos cmd"; + } + enum "wred-dscp-cmd" { + description + "wred dscp cmd"; + } + enum "wred-precedence-cmd" { + description + "wred precedence cmd"; + } + enum "wred-discard-class-cmd" { + description + "wred discard class cmd"; + } + enum "wred-mpls-exp-cmd" { + description + "wred mpls exp cmd"; + } + enum "red-with-user-min-max" { + description + "red with user min max"; + } + enum "red-with-default-min-max" { + description + "red with default min max"; + } + enum "wred-dei-cmd" { + description + "wred dei cmd"; + } + enum "wred-ecn-cmd" { + description + "wred ecn cmd"; + } + enum "wred-invalid-cmd" { + description + "wred invalid cmd"; + } + } + description + "Wred"; + } + + typedef Policy-param-unit { + type enumeration { + enum "policy-param-unit-invalid" { + description + "policy param unit invalid"; + } + enum "policy-param-unit-bytes" { + description + "policy param unit bytes"; + } + enum "policy-param-unit-kbytes" { + description + "policy param unit kbytes"; + } + enum "policy-param-unit-mbytes" { + description + "policy param unit mbytes"; + } + enum "policy-param-unit-gbytes" { + description + "policy param unit gbytes"; + } + enum "policy-param-unit-bitsps" { + description + "policy param unit bitsps"; + } + enum "policy-param-unit-kbitsps" { + description + "policy param unit kbitsps"; + } + enum "policy-param-unit-mbitsps" { + description + "policy param unit mbitsps"; + } + enum "policy-param-unit-gbitsps" { + description + "policy param unit gbitsps"; + } + enum "policy-param-unit-cells-ps" { + description + "policy param unit cells ps"; + } + enum "policy-param-unit-packets-ps" { + description + "policy param unit packets ps"; + } + enum "policy-param-unit-us" { + description + "policy param unit us"; + } + enum "policy-param-unit-ms" { + description + "policy param unit ms"; + } + enum "policy-param-unit-seconds" { + description + "policy param unit seconds"; + } + enum "policy-param-unit-packets" { + description + "policy param unit packets"; + } + enum "policy-param-unit-cells" { + description + "policy param unit cells"; + } + enum "policy-param-unit-percent" { + description + "policy param unit percent"; + } + enum "policy-param-unit-per-thousand" { + description + "policy param unit per thousand"; + } + enum "policy-param-unit-per-million" { + description + "policy param unit per million"; + } + enum "policy-param-unit-hz" { + description + "policy param unit hz"; + } + enum "policy-param-unit-khz" { + description + "policy param unit khz"; + } + enum "policy-param-unit-mhz" { + description + "policy param unit mhz"; + } + enum "policy-param-unit-ratio" { + description + "policy param unit ratio"; + } + enum "policy-param-unit-inverse-ratio" { + description + "policy param unit inverse ratio"; + } + enum "policy-param-unit-max" { + description + "policy param unit max"; + } + } + description + "Policy param unit"; + } + + typedef Cac-state { + type enumeration { + enum "unknown" { + value 0; + description + "unknown"; + } + enum "admit" { + value 1; + description + "admit"; + } + enum "redirect" { + value 2; + description + "redirect"; + } + enum "ubrl" { + value 3; + description + "ubrl"; + } + } + description + "CAC/UBRL class states"; + } + + typedef Policy-state { + type enumeration { + enum "active" { + value 0; + description + "active"; + } + enum "suspended" { + value 1; + description + "suspended"; + } + } + description + "Different Interface states"; + } + + grouping CAC-STATS-ST { + description + "CAC statistics"; + leaf drop-packets { + type uint64; + description + "CAC dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "CAC dropped bytes"; + } + leaf drop-rates { + type uint32; + description + "CAC dropped rate"; + } + leaf admitpackets { + type uint64; + units "byte"; + description + "Admitted packets (pkts/bytes)"; + } + leaf admit-bytes { + type uint64; + units "byte"; + description + "Admitted bytes (pkts/bytes)"; + } + leaf admit-rates { + type uint32; + description + "CAC admit rate"; + } + } + + grouping IPHC-STATS-ST { + description + "IPHC Stats"; + leaf non-tcp-total-out-packets { + type uint64; + description + "TotalNum of Non tcp pkts sent"; + } + leaf non-tcp-total-out-bytes { + type uint64; + units "byte"; + description + "TotalNum of Non Tcp Bytes sent"; + } + leaf non-tcp-bytes-saved { + type uint64; + units "byte"; + description + "Non Tcp Bytes saved due to compression"; + } + leaf non-tcp-compressed-packets-out { + type uint64; + description + "Num of non tcp compressed pkts sent"; + } + leaf non-tcp-bytes-sent-rate { + type uint32; + units "byte"; + description + "Compressed Non Tcp Bytes sent rate"; + } + leaf non-tcp-full-header-packets-out { + type uint64; + description + "Num of non tcp fullheader pkts sent"; + } + leaf tcp-total-out-packets { + type uint64; + description + "Total Num of tcp pkts sent"; + } + leaf tcp-total-out-bytes { + type uint64; + units "byte"; + description + "TotalNum of Tcp Bytes sent"; + } + leaf tcp-bytes-saved { + type uint64; + units "byte"; + description + "Tcp Bytes saved due to compression"; + } + leaf tcp-compressed-packets-out { + type uint64; + description + "Num of tcp compressed pkts sent"; + } + leaf tcp-bytes-sent-rate { + type uint32; + units "byte"; + description + "Compressed Tcp Bytes sent rate"; + } + leaf tcp-full-header-packets-out { + type uint64; + description + "Num of tcp fullheader pkts sent"; + } + } + + grouping WRED-TYPE-VALUE { + description + "WRED Type Value pairs"; + leaf wred-type { + type Wred; + description + "WRED type DSCP, EXP, PREC etc."; + } + leaf value { + type uint8; + description + "WRED value for this type."; + } + } + + grouping RED-PROFILE-STATS { + description + "Per RED profile stats"; + leaf profile-title { + type string { + length "0..300"; + } + description + "ProfileTitle"; + } + leaf red-transmit-packets { + type uint64; + description + "Transmitted packets"; + } + leaf red-transmit-bytes { + type uint64; + units "byte"; + description + "Transmitted bytes"; + } + leaf random-drop-packets { + type uint64; + description + "Probabilistically dropped packets"; + } + leaf random-drop-bytes { + type uint64; + units "byte"; + description + "Probabilisticallydropped bytes"; + } + leaf max-threshold-packets { + type uint64; + description + "Dropped packets with the average queue size at + the max-threshold"; + } + leaf max-threshold-bytes { + type uint64; + units "byte"; + description + "Dropped bytes with the average queue size at + the max-threshold"; + } + leaf red-ecn-marked-packets { + type uint64; + description + "ECN marked packets "; + } + leaf red-ecn-marked-bytes { + type uint64; + units "byte"; + description + "ECN marked bytes"; + } + list red-label { + description + "Array of WRED Typevalues as in PRP stats is + available per threshold "; + uses WRED-TYPE-VALUE; + } + } + + grouping PLC-COLOR-CLASS-STATS-ST { + description + "Color Aware Policer statistics"; + leaf conform-class-conform-packets { + type uint64; + description + "Packets with classification result conform and + policer result conform"; + } + leaf conform-class-conform-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result conform"; + } + leaf conform-class-conform-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Conform rate in kbps"; + } + leaf conform-class-exceed-packets { + type uint64; + description + "Packets with classification result conform and + policer result exceed"; + } + leaf conform-class-exceed-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result exceed"; + } + leaf conform-class-exceed-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Exceed rate in kbps"; + } + leaf conform-class-violate-packets { + type uint64; + description + "Packets with classification result conform and + policer result violate"; + } + leaf conform-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result conform and + policer result violate"; + } + leaf conform-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Conform Class Violate rate in kbps"; + } + leaf exceed-class-exceed-packets { + type uint64; + description + "Packets with classification result exceed and + policer result exceed"; + } + leaf exceed-class-exceed-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result exceed and + policer result exceed"; + } + leaf exceed-class-exceed-rate { + type uint32; + units "kbit/s"; + description + "Exceed Class Exceed rate in kbps"; + } + leaf exceed-class-violate-packets { + type uint64; + description + "Packets with classification result exceed and + policer result violate"; + } + leaf exceed-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result exceed and + policer result violate"; + } + leaf exceed-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Exceed Class Violate rate in kbps"; + } + leaf violate-class-violate-packets { + type uint64; + description + "Packets with classification result violate and + policer result violate"; + } + leaf violate-class-violate-bytes { + type uint64; + units "byte"; + description + "Bytes with classification result violate and + policer result violate"; + } + leaf violate-class-violate-rate { + type uint32; + units "kbit/s"; + description + "Violate Class Violate rate in kbps"; + } + } + + grouping PLC-STATS-ST { + description + "Policer statistics"; + container color-class-stats { + description + "color class stats"; + uses PLC-COLOR-CLASS-STATS-ST; + } + leaf drop-packets { + type uint64; + description + "Police dropped packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "Police dropped bytes"; + } + leaf conform-packets { + type uint64; + description + "Packets that conform to the policed rate"; + } + leaf conform-bytes { + type uint64; + units "byte"; + description + "Bytes that conform to the policed rate"; + } + leaf exceed-packets { + type uint64; + description + "Packets that exceed the policed rate"; + } + leaf exceed-bytes { + type uint64; + units "byte"; + description + "Bytes that exceed the policed rate"; + } + leaf violate-packets { + type uint64; + description + "Packets violating the policed rate"; + } + leaf violate-bytes { + type uint64; + units "byte"; + description + "Bytes that violate the policed rate"; + } + leaf parent-drop-packets { + type uint64; + description + "Dropped pkts by the parent policer"; + } + leaf parent-drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes by the parent policer"; + } + leaf conform-rate { + type uint32; + units "kbit/s"; + description + "Conform rate in kbps"; + } + leaf exceed-rate { + type uint32; + units "kbit/s"; + description + "Exceed rate in kbps"; + } + leaf violate-rate { + type uint32; + units "kbit/s"; + description + "Violate rate in kbps"; + } + } + + grouping POLICY-PARAM-UINT32-ST { + description + "POLICY PARAM UINT32 ST"; + leaf value { + type uint32; + description + "value"; + } + leaf unit { + type Policy-param-unit; + description + "unit"; + } + } + + grouping Q-STATS-ST { + description + "Queue limit statistics"; + leaf queue-id { + type uint32; + description + "Queue Id used for Fabric Stats"; + } + leaf tail-drop-packets { + type uint64; + description + "Packets tail dropped"; + } + leaf tail-drop-bytes { + type uint64; + units "byte"; + description + "Bytes tail dropped"; + } + leaf atm-clp0-drop-packets { + type uint64; + description + "ATP CLP 0 matched packets dropped"; + } + leaf atm-clp0-drop-bytes { + type uint64; + units "byte"; + description + "ATP CLP 0 matched bytes dropped"; + } + leaf atm-clp1-drop-packets { + type uint64; + description + "ATP CLP 0 matched packets dropped"; + } + leaf atm-clp1-drop-bytes { + type uint64; + units "byte"; + description + "ATP CLP 0 matched bytes dropped"; + } + leaf queue-drop-threshold { + type uint32; + units "byte"; + description + "tail drop threshold of the queue in bytes"; + } + leaf forced-wred-stats-display { + type boolean; + description + "flag to forcedisplay of WRED even when per + WredWRED profile stats is not available"; + } + leaf random-drop-packets { + type uint64; + description + "Packets probabilistically dropped"; + } + leaf random-drop-bytes { + type uint64; + units "byte"; + description + "Bytes probabilistically dropped"; + } + leaf max-threshold-packets { + type uint64; + description + "Dropped packets with the average queue size at + the max-threshold"; + } + leaf max-threshold-bytes { + type uint64; + units "byte"; + description + "Dropped bytes with the average queue size at the + max-threshold"; + } + leaf conform-packets { + type uint64; + description + "Packets that conform to the queue rate"; + } + leaf conform-bytes { + type uint64; + units "byte"; + description + "Bytes that conform to the queue rate"; + } + leaf exceed-packets { + type uint64; + description + "Packets that exceed the queue rate"; + } + leaf exceed-bytes { + type uint64; + units "byte"; + description + "Bytes that exceed the queue rate"; + } + leaf conform-rate { + type uint32; + description + "Conform rate"; + } + leaf exceed-rate { + type uint32; + description + "Exceed rate"; + } + list queue-instance-length { + description + "Queue instance length"; + uses POLICY-PARAM-UINT32-ST; + } + list queue-average-length { + description + "Queue average length"; + uses POLICY-PARAM-UINT32-ST; + } + list queue-max-length { + description + "Queue maximum length"; + uses POLICY-PARAM-UINT32-ST; + } + } + + grouping GEN-STATS-ST { + description + "Counters common to all features"; + leaf transmit-packets { + type uint64; + units "byte"; + description + "Transmitted packets (packets/bytes)"; + } + leaf transmit-bytes { + type uint64; + units "byte"; + description + "Transmitted bytes (packets/bytes)"; + } + leaf total-drop-packets { + type uint64; + units "byte"; + description + "Dropped packets (packets/bytes)"; + } + leaf total-drop-bytes { + type uint64; + units "byte"; + description + "Dropped bytes (packets/bytes)"; + } + leaf total-drop-rate { + type uint32; + units "byte"; + description + "Total drop rate (packets/bytes)"; + } + leaf match-data-rate { + type uint32; + units "kbit/s"; + description + "Incoming matched data rate in kbps"; + } + leaf total-transmit-rate { + type uint32; + units "kbit/s"; + description + "Total transmit rate in kbps"; + } + leaf pre-policy-matched-packets { + type uint64; + description + "Matched pkts before applying policy"; + } + leaf pre-policy-matched-bytes { + type uint64; + units "byte"; + description + "Matched bytes before applying policy"; + } + } + + grouping CLASS-STATS { + description + "CLASS STATS"; + container general-stats { + description + "general stats"; + uses GEN-STATS-ST; + } + container iphc-stats { + description + "IPHC stats"; + uses IPHC-STATS-ST; + } + container child-policy { + description + "child policy"; + } + container cac-stats { + description + "bag for cac stats"; + uses CAC-STATS-ST; + } + leaf counter-validity-bitmask { + type uint64; + units "megabyte"; + description + " Bitmask to indicate which counter or counters + are undetermined. Counters will be marked + undetermined when one or more classes share + queues with class-default because in such cases + the value of counters for each class is invalid. + Based on the flag(s) set, the following counters + will be marked undetermined. For example, if + value of this object returned is 0x00000101, + counters + TransmitPackets/TransmitBytes/TotalTransmitRate + and DropPackets/DropBytes are undetermined + .0x00000001 - Transmit + (TransmitPackets/TransmitBytes/TotalTransmitRate + ), 0x00000002 - Total drop + (TotalDropPackets/TotalDropBytes/TotalDropRate), + 0x00000004 - Match + (MatchDataRate/PrepolicyMatchedPackets + /PrepolicyMatchedBytes), 0x00000100 - Police + drop (DropPackets/DropBytes), 0x00000200 - + Police conform + (ConformPackets/ConformBytes/ConformRate), + 0x00000400 - Police exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00000800 - Police violate + (ViolatePackets/ViolateBytes/ViolateRate), + 0x00001000 - Parent policer drop + (ParentDropPackets/ParentDropBytes), 0x00010000 + - Queueing drop (TailDropPackets/TailDropBytes), + 0x00020000 - Red queue drop + (RandomDropPackets/RandomDropBytes), 0x00040000 + - Queue maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes), + 0x00080000 - Queue conform + (ConformPackets/ConformBytes/ConformRate), + 0x00100000 - Queue exceed + (ExceedPackets/ExceedBytes/ExceedRate), + 0x00200000 - CLP limit drop + (ATM_CLP0DropPackets/ATM_CLP0DropBytes + /ATM_CLP1DropPackets/ATM_CLP1DropBytes), + 0x01000000 - RED transmit + (RedTransmitPackets/RedTransmitBytes), + 0x02000000 - RED drop + (RandomDropPackets/RandomDropBytes), 0x04000000 + - RED maximum threshold drop + (MaxThresholdPackets/MaxThresholdBytes)"; + } + leaf class-name { + type string { + length "0..65"; + } + description + "ClassName"; + } + leaf shared-queue-id { + type uint32; + description + "q-id of the shared queue for this class"; + } + leaf queue-descr { + type string { + length "0..256"; + } + description + "Description of queue for the class"; + } + leaf cac-state { + type Cac-state; + description + "CACState"; + } + list queue-stats-array { + description + "array of queue stats"; + uses Q-STATS-ST; + } + list police-stats-array { + description + "array of police stats"; + uses PLC-STATS-ST; + } + list wred-stats-array { + description + "array of red stats"; + uses RED-PROFILE-STATS; + } + } + + grouping QOS-STATS { + description + "policy map statistics"; + leaf policy-name { + type string { + length "0..65"; + } + description + "PolicyName"; + } + leaf subscriber-group { + type string { + length "0..34"; + } + description + "SubscriberGroup"; + } + leaf state { + type Policy-state; + description + "State"; + } + leaf state-description { + type string { + length "0..128"; + } + description + "StateDescription"; + } + leaf satid { + type uint32; + description + "to maintain satellite id"; + } + leaf policy-timestamp { + type uint64; + description + "per policy timestamp"; + } + list class-stat { + description + "array of classes contained in policy"; + uses CLASS-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper.yang new file mode 100644 index 000000000..afabd5c51 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-skp-qos-oper.yang @@ -0,0 +1,404 @@ +module Cisco-IOS-XR-skp-qos-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-skp-qos-oper"; + prefix skp-qos-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-skp-qos-oper-sub2 { + revision-date 2021-04-07; + } + include Cisco-IOS-XR-skp-qos-oper-sub1 { + revision-date 2021-04-07; + } + + 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 skp-qos package operational data. + + This module contains definitions + for the following management objects: + platform-qos: QoS Skywarp platform operational data + platform-qos-ea: QoS-EA Skywarp platform operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-07 { + description + "Added new policy param unit for inverse ratio"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-02-18 { + description + "Implementing Oper Yang Model"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NV-SATELLITE-INPUT { + description + "Common node of nv-satellite-interface, + satellite-id, member-interface"; + container nv-satellite-input { + description + "A piece of Satellite QoS policy-map operational + data for input"; + uses NV-SAT-STATISTICS; + } + } + + grouping DETAILS { + description + "Common node of output, input, bundle-input, + bundle-output"; + container details { + description + "QoS-EA policy details"; + uses QOS-SHOW-EA-POLICY-ST; + } + } + + grouping STATISTICS { + description + "Common node of input, output, policy-name"; + container statistics { + description + "Policy-map statistics operational data for an + interface"; + uses QOS-STATS; + } + } + + grouping INTERFACE { + description + "Common node of interface-table, + nv-interface-table"; + list interface { + key "interface-name"; + description + "QoS policy-map operational data for a particular + interface"; + leaf interface-name { + type xr:Interface-name; + description + "Name of the interface"; + } + uses OUTPUT; + uses INPUT; + uses MEMBER-INTERFACE-TABLE; + uses SATELLITE-ID-TABLE; + } + } + + grouping INPUT { + description + "Common node of shared-policy-instance, + member-interface, interface"; + container input { + description + "A piece of QoS policy-map operational data for + an interface"; + uses POLICY-NAME-TABLE; + uses STATISTICS; + } + } + + grouping MEMBER-INTERFACE-TABLE { + description + "Common node of interface, nv-satellite-interface, + shared-policy-instance"; + container member-interfaces { + description + "QoS policy-map member interface table"; + list member-interface { + key "interface-name"; + description + "QoS policy-map member interface statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Name of member interface"; + } + uses OUTPUT; + uses NV-SATELLITE-OUTPUT; + uses INPUT; + uses NV-SATELLITE-INPUT; + uses SATELLITE-ID-TABLE; + } + } + } + + grouping POLICY-NAME-TABLE { + description + "Common node of input, output"; + container policy-names { + description + "Policy-map statistics operational data for an + interface"; + list policy-name { + key "service-policy-name"; + description + "Policy-map statistics operational data for an + interface"; + leaf service-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the policy"; + } + uses STATISTICS; + } + } + } + + grouping NV-SATELLITE-OUTPUT { + description + "Common node of nv-satellite-interface, + satellite-id, member-interface"; + container nv-satellite-output { + description + "A piece of Satellite QoS policy-map operational + data for an interface"; + uses NV-SAT-STATISTICS; + } + } + + grouping OUTPUT { + description + "Common node of shared-policy-instance, + member-interface, interface"; + container output { + description + "A piece of QoS policy-map operational data for + an interface"; + uses POLICY-NAME-TABLE; + uses STATISTICS; + } + } + + grouping NV-SAT-STATISTICS { + description + "Common node of nv-satellite-input, + nv-satellite-output"; + container nv-sat-statistics { + description + "Policy-map statistics operational data for + satellite interface"; + uses QOS-STATS; + } + } + + grouping SATELLITE-ID-TABLE { + description + "Common node of interface, member-interface"; + container satellite-ids { + description + "Satellite ID information"; + list satellite-id { + key "nv-satellite-id"; + description + "Satellite ID information"; + leaf nv-satellite-id { + type uint32; + description + "Satellite ID"; + } + uses NV-SATELLITE-OUTPUT; + uses NV-SATELLITE-INPUT; + } + } + } + + container platform-qos { + config false; + description + "QoS Skywarp platform operational data "; + container nodes { + description + "List of nodes with platform specific QoS + configuration"; + list node { + key "node-name"; + description + "Node with platform specific QoS configuration"; + container bundle-interfaces { + description + "QoS list of bundle interfaces"; + list bundle-interface { + key "interface-name"; + description + "QoS interface name"; + container member-interfaces { + description + "QoS list of member interfaces"; + list member-interface { + key "interface-name"; + description + "QoS interface name"; + container bundle-input { + description + "QoS policy direction input"; + uses QOS-SHOW-POLICY-ST; + } + container bundle-output { + description + "QoS policy direction output"; + uses QOS-SHOW-POLICY-ST; + } + leaf interface-name { + type xr:Interface-name; + description + "Memeber interface"; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + } + } + container capability { + description + "QoS system capability"; + uses QOS-EA-CAPABILITY; + } + container interfaces { + description + "QoS list of interfaces"; + list interface { + key "interface-name"; + description + "QoS interface name"; + container output { + description + "QoS policy direction egress"; + uses QOS-SHOW-POLICY-ST; + } + container input { + description + "QoS policy direction ingress"; + uses QOS-SHOW-POLICY-ST; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container platform-qos-ea { + config false; + description + "QoS-EA Skywarp platform operational data "; + container nodes { + description + "List of nodes with platform specific QoS-EA + configuration"; + list node { + key "node-name"; + description + "Node with platform specific QoS-EA + configuration"; + container bundle-interfaces { + description + "QoS-EA list of bundle interfaces"; + list bundle-interface { + key "interface-name"; + description + "QoS-EA interface name"; + container member-interfaces { + description + "QoS-EA list of member interfaces"; + list member-interface { + key "interface-name"; + description + "QoS-EA interface name"; + container bundle-output { + description + "QoS-EA policy direction output"; + uses DETAILS; + } + container bundle-input { + description + "QoS-EA policy direction input"; + uses DETAILS; + } + leaf interface-name { + type xr:Interface-name; + description + "Memeber interface"; + } + } + } + leaf interface-name { + type xr:Interface-name; + description + "Bundle interface name"; + } + } + } + container interfaces { + description + "QoS-EA list of interfaces"; + list interface { + key "interface-name"; + description + "QoS-EA interface name"; + container output { + description + "QoS-EA policy direction egress"; + uses DETAILS; + } + container input { + description + "QoS-EA policy direction ingress"; + uses DETAILS; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sks-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-act.yang new file mode 100644 index 000000000..547344a9a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-act.yang @@ -0,0 +1,137 @@ +module Cisco-IOS-XR-sks-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sks-act"; + prefix sks-act; + + 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 action package configuration. + + Copyright (c) 2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-14 { + description + "IOS XR 7.4.1 revision."; + semver:module-version "1.0.0"; + } + + rpc key-generate-mceliece { + description + "Generate a mceliece key pair used for exporting/importing sks seeds"; + input { + leaf key-label { + type string; + description + "Mceliece key label"; + } + } + } + rpc key-zeroize-mceliece { + description + "Remove the generated mceliece key pair"; + input { + leaf key-label { + type string; + description + "Mceliece key label"; + } + } + } + rpc key-import-peer-mceliece { + description + "Import a peer's mceliece pubkey used for exporting sks seeds"; + input { + leaf peer-label { + type string; + mandatory true; + description + "Name of the peer"; + } + leaf path { + type string; + mandatory true; + description + "Path to Mceliece pubkey file"; + } + } + } + rpc key-remove-peer-mceliece { + description + "Remove a peer's imported mceliece pubkey"; + input { + leaf peer-label { + type string; + mandatory true; + description + "Name of the peer"; + } + } + } + rpc key-export-self-mceliece { + description + "Export self mceliece pubkey"; + input { + leaf key-label { + type string; + description + "Name of the peer"; + } + leaf path { + type string; + description + "Path to Mceliece pubkey file"; + } + } + } + rpc seed-import-peer-mceliece { + description + "Import sks seed for a peer"; + input { + leaf peer-label { + type string; + mandatory true; + description + "Name of the peer to which the seed has to be imported"; + } + leaf path { + type string; + mandatory true; + description + "Path to the seed file(Encrypted using peers Mceliece key)"; + } + } + } + rpc seed-export-peer-mceliece { + description + "Export sks seed for a peer"; + input { + leaf peer-label { + type string; + mandatory true; + description + "Name of the peer to which the seed has to be exported"; + } + leaf path { + type string; + description + "Path to the seed file(Encrypted using peers Mceliece key)"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-cfg.yang new file mode 100644 index 000000000..571fc53c0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-cfg.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-sks-server-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sks-server-cfg"; + prefix sks-server-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 sks-server package configuration. + + This module contains definitions + for the following management objects: + sks: Session key server configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sks { + description + "Session key server configuration"; + list profile-name { + key "name"; + description + "Profile name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Profile Name"; + } + list device-identifier-name { + key "name"; + description + "Device identifier name"; + container peer-identifier-names { + description + "peer identifier"; + list peer-identifier-name { + key "name"; + description + "peer identifier name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "peer identifier name"; + } + leaf master { + type uint32 { + range "0..1"; + } + mandatory true; + description + "1 for master, 0 for slave"; + } + } + } + leaf pool { + type uint32 { + range "0..1"; + } + default "0"; + description + "1 for single pool, 0 for double pool"; + } + leaf live-keys { + type uint32 { + range "1..120"; + } + default "1"; + description + "value between 1-120, default is 1"; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "device identifier name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper-sub1.yang new file mode 100644 index 000000000..c06ac7a9f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper-sub1.yang @@ -0,0 +1,599 @@ +submodule Cisco-IOS-XR-sks-server-oper-sub1 { + belongs-to Cisco-IOS-XR-sks-server-oper { + prefix Cisco-IOS-XR-sks-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR sks-server package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-22 { + description + "Added support for http proxy. + 2022-11-22 + Added new fields for refresh reason. + 2022-08-27 + Added new fields for remote profile support."; + semver:module-version "2.0.0"; + } + revision 2021-08-11 { + description + "Added string bound check."; + semver:module-version "1.0.0"; + } + revision 2020-10-14 { + description + "Initial yang support for sks oper."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Sks-profile { + type enumeration { + enum "profile-type-unknown" { + description + "Profile type unknown"; + } + enum "profile-type-local" { + description + "Profile type local"; + } + enum "profile-type-remote" { + description + "Profile type remote"; + } + } + description + "SKS profile Type"; + } + + typedef Sks-httpc-transaction { + type enumeration { + enum "transaction-unknown" { + description + "Transaction unknown"; + } + enum "transaction-get-capability" { + description + "Transaction get capability"; + } + enum "transaction-get-key" { + description + "Transaction get key"; + } + enum "transaction-get-key-with-id" { + description + "Transaction get key with id"; + } + enum "transaction-get-entropy" { + description + "Transaction get key with entropy"; + } + } + description + "SKS http transaction type"; + } + + typedef Sks-httpc-server-refresh-reason { + type enumeration { + enum "refresh-unknown" { + description + "Refresh reason unknown"; + } + enum "refresh-vrf-update" { + description + "Refresh vrf update"; + } + enum "refresh-server-update" { + description + "Refresh server update"; + } + enum "refresh-server-removed" { + description + "Refresh server removed"; + } + enum "refresh-src-interface-update" { + description + "Refresh src interface updated"; + } + enum "refresh-src-interface-removed" { + description + "Refresh src interface removed"; + } + enum "refresh-httpc-registration-failed" { + description + "Refresh http registration failed"; + } + enum "refresh-httpc-send-req-failed" { + description + "Refresh http send request failed"; + } + enum "refresh-httpc-send-req" { + description + "Refresh http sent request"; + } + enum "refresh-httpc-recv-res-failed" { + description + "Refresh http receive response failed"; + } + enum "refresh-httpc-recv-res" { + description + "Refresh http received response "; + } + enum "refresh-httpc-recv-key-res-failed" { + description + "Refresh http receive key response failed"; + } + enum "refresh-httpc-down" { + description + "Refresh http client is down"; + } + enum "refresh-httpc-up" { + description + "Refresh http client is now up"; + } + enum "refresh-proxy-update" { + description + "Refresh proxy updated"; + } + enum "refresh-proxy-removed" { + description + "Refresh proxy removed"; + } + } + description + "SKS http connection refresh reasons"; + } + + typedef Sks-httpc-server-connection-status { + type enumeration { + enum "state-unknown" { + description + "Server not configured"; + } + enum "state-connecting" { + description + "Connecting to server"; + } + enum "state-connected" { + description + "Connected to server"; + } + enum "state-capability-refresh" { + description + "Capability refresh needed"; + } + enum "state-capability-failed" { + description + "Capability fetch failed"; + } + enum "state-registration-failed" { + description + "httpc Registration failed"; + } + } + description + "SKS http connection status"; + } + + grouping SKS-MCELIECE-PUBKEY-INFO { + description + "Info for a sks pubkey"; + leaf key-label { + type string; + description + "Label for pubkey"; + } + leaf key-type { + type string; + description + "Type of pubkey"; + } + leaf key-size { + type uint32; + description + "Size of pubkey"; + } + leaf key-hash { + type string; + description + "SHA1 hash of pubkey"; + } + } + + grouping SKS-LOCAL-PROFILE-INFO { + description + "SKS local profile information"; + leaf live-keys { + type uint32; + description + "Live keys for this profile"; + } + leaf single-pool { + type boolean; + description + "Single/Double pool for this profile"; + } + leaf prf-done { + type boolean; + description + "PRF done for this profile"; + } + } + + grouping SKS-PEER-INFO { + description + "Info for a sks peer"; + leaf peer-name-xr { + type string; + description + "Peer identifier"; + } + leaf profile-name { + type string; + description + "Profile Name for the peer"; + } + leaf seed-done { + type boolean; + description + "Seed done for this peer"; + } + leaf pubkey-imp-done { + type boolean; + description + "Pubkey import done for this peer"; + } + leaf master { + type boolean; + description + "This peer is master"; + } + } + + grouping SKS-PROFILE-INFO { + description + "Info for a sks profile"; + container local-profile-info { + description + "Local profile information"; + uses SKS-LOCAL-PROFILE-INFO; + } + container remote-profile-info { + description + "Remote profile information"; + uses SKS-REMOTE-PROFILE-INFO; + } + leaf profile-name-xr { + type string; + description + "Profile Name"; + } + leaf my-identifier { + type string; + description + "My identifier"; + } + leaf reg-client-count { + type uint32; + description + "Number of clients registered for change in this + profile"; + } + leaf profile-type { + type Sks-profile; + description + "Type of profile"; + } + list peer { + description + "Peers configured in this profile"; + uses SKS-PEER-INFO; + } + } + + grouping SKS-PROFILE-LAST-TRANSACTION-INFO { + description + "SKS remote profile last transaction status + information"; + leaf tid { + type uint32; + description + "Transaction Id"; + } + leaf trans-type { + type Sks-httpc-transaction; + description + "Transaction type"; + } + leaf status { + type uint32; + description + "Httpc status"; + } + leaf status-code { + type uint32; + description + "Http response code"; + } + leaf status-string { + type string; + description + "Http response code string"; + } + } + + grouping SKS-REMOTE-PROFILE-RESPONSE-TIME-STATS { + description + "SKS remote profile transaction response time + statistics"; + leaf max-time { + type uint64; + description + "Maximum response time"; + } + leaf min-time { + type uint64; + description + "Minimum response time"; + } + leaf avg-time { + type uint64; + description + "Average response time"; + } + leaf last-time { + type uint64; + description + "Last transaction response time"; + } + } + + grouping SKS-REMOTE-PROFILE-TRANSACTION-TYPE-COUNTERS { + description + "SKS remote profile transaction type counters"; + leaf get-capability { + type uint32; + description + "Total capability count"; + } + leaf get-key { + type uint32; + description + "Total get key count"; + } + leaf get-key-with-id { + type uint32; + description + "Total get key with id count"; + } + leaf get-entropy { + type uint32; + description + "Total get entropy count"; + } + } + + grouping SKS-REMOTE-PROFILE-GENERIC-COUNTERS { + description + "SKS remote profile generic counters"; + leaf request-total { + type uint32; + description + "Total request count"; + } + leaf request-failed { + type uint32; + description + "Request failed"; + } + leaf request-success { + type uint32; + description + "Request success"; + } + leaf response-total { + type uint32; + description + "Total response count"; + } + leaf response-failed { + type uint32; + description + "Response failed"; + } + leaf response-success { + type uint32; + description + "Response success"; + } + leaf retry-count { + type uint32; + description + "Retry count"; + } + leaf ignored-count { + type uint32; + description + "ignored count"; + } + leaf cancel-count { + type uint32; + description + "Cancel count"; + } + } + + grouping SKS-REMOTE-PROFILE-HTTP-PROXY-INFO { + description + "SKS remote profile http proxy information"; + leaf http-proxy-host-name { + type string; + description + "Http proxy hostname"; + } + leaf http-proxy-port { + type uint16; + description + "Http proxy port"; + } + } + + grouping SKS-REMOTE-PROFILE-CAPABILITY-REMOTE-IDS { + description + "SKS remote profile capability remote idenfitier + list"; + leaf remote-identifier { + type string; + description + "Remote Identifier"; + } + } + + grouping SKS-REMOTE-PROFILE-CAPABILITY { + description + "SKS remote profile capability"; + leaf entropy-supported { + type boolean; + description + "Entropy support"; + } + leaf key-supported { + type boolean; + description + "Key support"; + } + leaf algorithm { + type string; + description + "Algorithm"; + } + leaf local-identifier { + type string; + description + "Local identifier"; + } + list remote-id { + description + "Remote identifier list"; + uses SKS-REMOTE-PROFILE-CAPABILITY-REMOTE-IDS; + } + } + + grouping SKS-REMOTE-PROFILE-INFO { + description + "SKS remote profile information"; + container capability { + description + "Server capability"; + uses SKS-REMOTE-PROFILE-CAPABILITY; + } + container http-proxy { + description + "http proxy information"; + uses SKS-REMOTE-PROFILE-HTTP-PROXY-INFO; + } + leaf server-addr { + type string; + description + "Server ip address"; + } + leaf server-port { + type uint16; + description + "Server port"; + } + leaf server-vrf { + type string; + description + "Server Vrf"; + } + leaf server-intf { + type string; + description + "Server source interface"; + } + leaf state { + type Sks-httpc-server-connection-status; + description + "http session state"; + } + leaf reason { + type Sks-httpc-server-refresh-reason; + description + "http refresh reason"; + } + } + + grouping SKS-PROFILE-STATS { + description + "Info for a sks profile"; + container remote-profile-info { + description + "Remote profile information"; + uses SKS-REMOTE-PROFILE-INFO; + } + container http-counters { + description + "Remote profile http generic counters"; + uses SKS-REMOTE-PROFILE-GENERIC-COUNTERS; + } + container http-transaction-request-counters { + description + "Remote profile http transaction type request + counters"; + uses SKS-REMOTE-PROFILE-TRANSACTION-TYPE-COUNTERS; + } + container http-transaction-response-counters { + description + "Remote profile http transaction type response + counters"; + uses SKS-REMOTE-PROFILE-TRANSACTION-TYPE-COUNTERS; + } + container response-time { + description + "Remote profile http transaction response time"; + uses SKS-REMOTE-PROFILE-RESPONSE-TIME-STATS; + } + container last-tran-info { + description + "Last transaction status info"; + uses SKS-PROFILE-LAST-TRANSACTION-INFO; + } + leaf profile-name-xr { + type string; + description + "Profile Name"; + } + leaf my-identifier { + type string; + description + "My identifier"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper.yang new file mode 100644 index 000000000..a607b0e3e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sks-server-oper.yang @@ -0,0 +1,157 @@ +module Cisco-IOS-XR-sks-server-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sks-server-oper"; + prefix sks-server-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-sks-server-oper-sub1 { + revision-date 2022-12-22; + } + + 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 sks-server package operational data. + + This module contains definitions + for the following management objects: + sks: Secure Key Server(SKS) data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-22 { + description + "Added support for http proxy. + 2022-11-22 + Added new fields for refresh reason. + 2022-08-27 + Added new fields for remote profile support."; + semver:module-version "2.0.0"; + } + revision 2021-08-11 { + description + "Added string bound check."; + semver:module-version "1.0.0"; + } + revision 2020-10-14 { + description + "Initial yang support for sks oper."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sks { + config false; + description + "Secure Key Server(SKS) data"; + container profile-stats { + description + "Secure Key Server(SKS) Profile statistics info"; + list profile-stat { + key "profile-name"; + description + "Secure Key Server(SKS) Stats bag"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..127"; + } + description + "Enter Profile name"; + } + uses SKS-PROFILE-STATS; + } + } + container profiles { + description + "Secure Key Server(SKS) Profile info"; + list profile { + key "profile-name"; + description + "Secure Key Server(SKS) Peer bag"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..127"; + } + description + "Enter Profile name"; + } + uses SKS-PROFILE-INFO; + } + } + container self-mc-pubkeys { + description + "Secure Key Server(SKS) self pubkey data"; + list self-mc-pubkey { + key "label"; + description + "Secure Key Server(SKS) self mceliece pubkey + details"; + leaf label { + type xr:Cisco-ios-xr-string { + length "1..23"; + } + description + "Enter Pubkey label"; + } + uses SKS-MCELIECE-PUBKEY-INFO; + } + } + container peers { + description + "Secure Key Server(SKS) Peer info"; + list peer { + key "peer-name"; + description + "Secure Key Server(SKS) Peer bag"; + leaf peer-name { + type xr:Cisco-ios-xr-string { + length "1..23"; + } + description + "Enter Peer name"; + } + uses SKS-PEER-INFO; + } + } + container peer-mc-pubkeys { + description + "Secure Key Server(SKS) peer pubkey data"; + list peer-mc-pubkey { + key "label"; + description + "Secure Key Server(SKS) peer mceliece pubkey + details"; + leaf label { + type xr:Cisco-ios-xr-string { + length "1..23"; + } + description + "Enter Pubkey label"; + } + uses SKS-MCELIECE-PUBKEY-INFO; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub1.yang new file mode 100644 index 000000000..188ecb850 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub1.yang @@ -0,0 +1,303 @@ +submodule Cisco-IOS-XR-skywarp-netflow-oper-sub1 { + belongs-to Cisco-IOS-XR-skywarp-netflow-oper { + prefix Cisco-IOS-XR-skywarp-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR skywarp-netflow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics when exporter is in standby mode"; + semver:module-version "1.2.0"; + } + revision 2020-02-19 { + description + "sFlow Development for spitfire"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Flow-monitor-name { + type string; + description + "Flow monitor name"; + } + + grouping NFSVR-COLLECTOR-INFO { + description + "Per collector information"; + leaf exporter-state { + type string; + description + "Exporter state"; + } + leaf destination-address { + type string; + description + "Destination IPv4 address in AAA.BBB.CCC.DDD + format"; + } + leaf source-address { + type string; + description + "Source IPv4 address in AAA.BBB.CCC.DDD format"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf destination-port { + type uint16; + description + "Destination port number"; + } + leaf souce-port { + type uint16; + description + "Source port number"; + } + leaf transport-protocol { + type string; + description + "Transport protocol"; + } + leaf packets-sent { + type uint64; + description + "Packets sent"; + } + leaf flows-sent { + type uint64; + description + "Flows sent"; + } + leaf templates-sent { + type uint64; + description + "Templates sent"; + } + leaf option-templates-sent { + type uint64; + description + "Option templates sent"; + } + leaf option-data-sent { + type uint64; + description + "Option data sent"; + } + leaf bytes-sent { + type uint64; + units "byte"; + description + "Bytes sent"; + } + leaf flow-bytes-sent { + type uint64; + units "byte"; + description + "Flow bytes sent"; + } + leaf template-bytes-sent { + type uint64; + units "byte"; + description + "Template bytes sent"; + } + leaf option-template-bytes-sent { + type uint64; + units "byte"; + description + "Option template bytes sent"; + } + leaf option-data-bytes-sent { + type uint64; + units "byte"; + description + "Option data bytes sent"; + } + leaf packets-dropped { + type uint64; + description + "Packets dropped"; + } + leaf flows-dropped { + type uint64; + description + "Flows dropped"; + } + leaf templates-dropped { + type uint64; + description + "Templates dropped"; + } + leaf option-templates-dropped { + type uint64; + description + "Option templates dropped"; + } + leaf option-data-dropped { + type uint64; + description + "Option data dropped"; + } + leaf bytes-dropped { + type uint64; + units "byte"; + description + "Bytes dropped"; + } + leaf flow-bytes-dropped { + type uint64; + units "byte"; + description + "Flow bytes dropped"; + } + leaf template-bytes-dropped { + type uint64; + units "byte"; + description + "Template bytes dropped"; + } + leaf option-template-bytes-dropped { + type uint64; + units "byte"; + description + "Option template bytes dropped"; + } + leaf option-data-bytes-dropped { + type uint64; + description + "Option data dropped"; + } + leaf last-hour-packest-sent { + type uint64; + description + "Total packets exported over the last one hour"; + } + leaf last-hour-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one hour"; + } + leaf last-hour-flows-sent { + type uint64; + description + "Total flows exported over the of last one hour"; + } + leaf last-minute-packets { + type uint64; + description + "Total packets exported over the last one minute"; + } + leaf last-minute-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one minute"; + } + leaf last-minute-flows-sent { + type uint64; + description + "Total flows exported over the last one minute"; + } + leaf last-second-packets-sent { + type uint64; + description + "Total packets exported over the last one second"; + } + leaf last-second-bytes-sent { + type uint64; + units "byte"; + description + "Total bytes exported over the last one second"; + } + leaf last-second-flows-sent { + type uint64; + description + "Total flows exported over the last one second"; + } + leaf is-standby { + type boolean; + description + "Exporter is in standby mode"; + } + leaf standby-packets-dropped { + type uint64; + description + "Total export packets dropped while beingin + standby mode"; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS { + description + "Flow exporter information"; + leaf name { + type string; + description + "Exporter name"; + } + leaf protocol { + type string; + description + "Export Protocol Name"; + } + leaf memory-usage { + type uint32; + description + "Memory usage"; + } + leaf-list used-by-flow-monitor { + type Flow-monitor-name; + description + "List of flow monitors that use the exporter"; + } + list collector { + description + "Statistics of all collectors"; + uses NFSVR-COLLECTOR-INFO; + } + } + + grouping NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY { + description + "Flow exporter information"; + list statistic { + description + "Array of flow exporters"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-STATS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub2.yang new file mode 100644 index 000000000..245c36663 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper-sub2.yang @@ -0,0 +1,94 @@ +submodule Cisco-IOS-XR-skywarp-netflow-oper-sub2 { + belongs-to Cisco-IOS-XR-skywarp-netflow-oper { + prefix Cisco-IOS-XR-skywarp-netflow-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR skywarp-netflow package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics when exporter is in standby mode"; + semver:module-version "1.2.0"; + } + revision 2020-02-19 { + description + "sFlow Development for spitfire"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NF-PRODUCER-STATS { + description + "Netflow Platform Producer Process statistics"; + leaf ethernet-pkts { + type uint64; + description + "Ethernet Packets"; + } + leaf drops-no-space { + type uint64; + description + "Drops (no space)"; + } + leaf drops-others { + type uint64; + description + "Drops (others)"; + } + leaf unknown-ingress-flows { + type uint64; + description + "Unknown ingress flows"; + } + leaf waiting-servers { + type uint64; + description + "Number of waiting servers"; + } + leaf spp-rx-counts { + type uint64; + description + "Number of Rxed SPP Packets"; + } + leaf flow-packet-counts { + type uint64; + description + "Number of Rxed Flow Packets"; + } + leaf last-cleared { + type string; + description + "Last time Statistics cleared in 'Mon Jan 1 12:00 + :00 2xxx' format"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper.yang new file mode 100644 index 000000000..833bc1586 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-skywarp-netflow-oper.yang @@ -0,0 +1,113 @@ +module Cisco-IOS-XR-skywarp-netflow-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-skywarp-netflow-oper"; + prefix skywarp-netflow-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-skywarp-netflow-oper-sub2 { + revision-date 2022-01-03; + } + include Cisco-IOS-XR-skywarp-netflow-oper-sub1 { + revision-date 2022-01-03; + } + + 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 skywarp-netflow package operational data. + + This module contains definitions + for the following management objects: + net-flow: NetFlow operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-03 { + description + "Added new fields for statistics when exporter is in standby mode"; + semver:module-version "1.2.0"; + } + revision 2020-02-19 { + description + "sFlow Development for spitfire"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container net-flow { + config false; + description + "NetFlow operational data"; + container statistics { + description + "Node-specific NetFlow statistics information"; + list statistic { + key "node"; + description + "NetFlow statistics information for a particular + node"; + container producer { + description + "NetFlow producer statistics"; + container statistics { + description + "Statistics information"; + uses NF-PRODUCER-STATS; + } + } + container server { + description + "NetFlow server statistics"; + container flow-exporters { + description + "Flow exporter information"; + list flow-exporter { + key "exporter-name"; + description + "Exporter information"; + container exporter { + description + "Statistics information for the exporter"; + uses NFSVR-SHOW-FLOW-EXPORTER-RESP-ARRAY; + } + leaf exporter-name { + type xr:Cisco-ios-xr-string; + description + "Exporter name"; + } + } + } + } + leaf node { + type xr:Node-id; + description + "Node location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-act.yang new file mode 100644 index 000000000..199aaad36 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-act.yang @@ -0,0 +1,382 @@ +module Cisco-IOS-XR-smart-license-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-smart-license-act"; + prefix smart-license-act; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-smart-license-errors; + + 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 action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-09 { + description + "IOS XR 7.4.1 revision."; + semver:module-version "1.0.0"; + } + + typedef operation-status-enum { + type enumeration { + enum "success" { + value 0; + description + "Operation was a success"; + } + enum "failed" { + value 1; + description + "Operation failed"; + } + } + description + "Smart license operation status"; + } + + typedef request-type-enum { + type enumeration { + enum "None" { + value 0; + description + "ReservationSystemTypeNone"; + } + enum "local" { + value 1; + description + "ReservationSystemTypeLocal"; + } + enum "all" { + value 2; + description + "ReservationSystemTypeAll"; + } + enum "universal" { + value 3; + description + "ReservationSystemTypeUniversal"; + } + } + description + "Smart license reservation request type"; + } + + grouping overall-op-status { + description + "Overall operation status"; + leaf operation-status { + type operation-status-enum; + description + "Status of operation: Success or Failure"; + } + leaf return-code { + type error-enum; + description + "The return code"; + } + } + + grouping smartagent-udi { + description + "smartagent udi"; + leaf pid { + type string; + description + "The Product Identifier. Always combined with sn."; + } + leaf sn { + type string; + description + "The system serial number. Always combined with + pid."; + } + leaf vid { + type string; + description + "The version identifier. Usually combined with + pid & sn."; + } + leaf uuid { + type string; + description + "A 32 byte hex value generated by the system. + This will be in proper UUID format 8-4-4-4-12. + Often used by VMs or other systems that do not + have a hardware identifier."; + } + leaf suvi { + type string; + description + "Free form virtual identifier often used by + software only devices like software routers or + VMs."; + } + leaf host-identifier { + type string; + description + "Host identifier available on some systems. + Typically 8 hex digits."; + } + leaf mac-address { + type string; + description + "The MAC address of the system. This is usually + only used if there is nothing else available to + be used as an identifier."; + } + } + + grouping udi-string-data-list { + description + "Return codes"; + container udi { + description + "UDI"; + uses smartagent-udi; + } + leaf data { + type string; + description + "Reservation codes: Example: request code if + reservation request is being carried out,return + code in case of reservation return etc"; + } + } + + grouping res-codes { + description + "Return codes for SLR-PLR"; + container response { + description + "Contains the overall status of operation and error code"; + uses overall-op-status; + } + leaf display-string { + type string; + description + "Reservation display string"; + } + container udi { + description + "UDI"; + uses smartagent-udi; + } + leaf request-code { + type string; + description + "Reservation request code"; + } + leaf confirmation-code { + type string; + description + "Reservation request code"; + } + leaf reservation-return-code { + type string; + description + "Reservation request code"; + } + } + + rpc de-register { + description + "De-register. This will immediately de-register the device. + If state:operational-mode=opr-mode-reporting then this will return + notsupported in output:return-code"; + output { + container response { + description + "Contains the overall status of operation and error code"; + uses overall-op-status; + } + } + } + rpc renew-id { + description + "Under normal operations smart licensing will automatically renew + the ID certificates used for regsitration. This command can + be used if the customer wants to initiate a manual + registration renewal. + If state:operational-mode=opr-mode-reporting then this + will return notsupported in output:return-code"; + output { + container response { + description + "Contains the overall status of operation and error code"; + uses overall-op-status; + } + } + } + rpc renew-auth { + description + "Under normal operations smart licensing will automatically renew + the license authorization every 30 days. This command can + be used if the customer wants to initiate a manual + renewal. + If state:operational-mode=opr-mode-reporting then this + will return notsupported in output:return-code"; + output { + container response { + description + "Contains the overall status of operation and error code"; + uses overall-op-status; + } + } + } + rpc register-id-token { + description + "Register with an ID token. + This will begin the registration process. Since the registration + process will take somewhere between seconds and hours you must get the + registration-success or registration-fail notifications + or check the registration status in smart-license:state + to know the status of the registration. + If state:operational-mode=opr-mode-reporting then this + will return notsupported in output:return-code"; + input { + leaf id-token { + type string { + length "1..255"; + } + description + "The ID token used to register."; + } + leaf force { + type boolean; + default "false"; + description + "Force the registration if set."; + } + } + output { + container response { + description + "Contains the overall status of operation and error code"; + uses overall-op-status; + } + } + } + rpc reservation-request { + description + "Reservation request for PLR/SLR mode"; + input { + leaf request-type { + type request-type-enum; + description + "Reservation request type"; + } + } + output { + container reservation-codes { + description + "Contains return code information of operation"; + uses res-codes; + } + } + } + rpc reservation-return { + description + "Return reservation for the active system"; + input { + leaf request-type { + type request-type-enum; + description + "Reservation request type"; + } + } + output { + container reservation-codes { + description + "Contains return code information of operation"; + uses res-codes; + } + } + } + rpc reservation-return-authorization { + description + "Return a smart license reservation from an authorization code."; + input { + leaf auth-code { + type string; + description + "Auth code to be returned"; + } + container file { + description + "Return auth code from file"; + leaf file-path { + type string; + description + "File containing auth code to be returned"; + } + } + } + output { + container reservation-codes { + description + "Contains return code information of operation"; + uses res-codes; + } + } + } + rpc reservation-install { + description + "Install a smart license reservation authorization code"; + input { + leaf authorization-code { + type string; + description + "Install the auth code"; + } + container file { + description + "Install auth code from file"; + leaf file-path { + type string; + description + "File containing auth code to be installed"; + } + } + } + output { + container reservation-codes { + description + "Contains return code information of operation"; + uses res-codes; + } + } + } + rpc reservation-cancel { + description + "Cancel reservation for the active system"; + input { + leaf request-type { + type request-type-enum; + description + "Reservation request type"; + } + } + output { + container response { + description + "Contains the overall status of operation and error code"; + uses overall-op-status; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-cfg.yang new file mode 100644 index 000000000..6e2e8fc85 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-cfg.yang @@ -0,0 +1,140 @@ +module Cisco-IOS-XR-smart-license-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-smart-license-cfg"; + prefix smart-license-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 smart-license package configuration. + + This module contains definitions + for the following management objects: + licensing: SmartLicense Root + flex-consumption: FCM configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-22 { + description + "Changed parent class of flex-consumption"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-07-21 { + description + "Initial version."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Transport-type-enum { + type enumeration { + enum "transport-type-callhome" { + value 0; + description + "Use the Callhome as transport"; + } + enum "transport-type-smart" { + value 1; + description + "Use the smart as transport"; + } + } + description + "Transport type enum"; + } + + container licensing { + description + "SmartLicense Root"; + container transport { + description + "Select the type of message transport for Smart + Agent"; + container transport-smart { + description + "Smart transport config for Smart Agent"; + container proxy { + description + "Proxy related commands"; + leaf port { + type inet:port-number; + description + "The proxy port"; + } + leaf host-name { + type xr:Cisco-ios-xr-string { + length "1..200"; + } + description + "The IP address or hostname of the Proxy"; + } + } + container urls { + description + "URL for smart transport"; + leaf url-registration { + type string { + length "1..200"; + } + description + "Use the URL for Smart Transport registration"; + } + } + } + leaf transport-type { + type Transport-type-enum; + description + "Select the type of message transport for Smart + Licensing"; + } + } + } + container flex-consumption { + description + "FCM configuration"; + leaf fcm-enable { + type boolean; + description + "Enable or disable"; + } + leaf software-upgrade-enable { + type boolean; + description + "Software-upgrade mode enabled"; + } + leaf reservation { + type boolean; + description + "License Smart Reservation Enabled"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-errors.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-errors.yang new file mode 100644 index 000000000..8b75313a4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-errors.yang @@ -0,0 +1,983 @@ +submodule Cisco-IOS-XR-smart-license-errors { + belongs-to Cisco-IOS-XR-smart-license-act { + prefix smart-license-act; + } + + import cisco-semver { + prefix semver; + } + + organization + "Cisco Systems, Inc."; + contact + "Cisco Systems, Inc. + Customer Service + Postal: 170 W Tasman Drive + San Jose, CA 95134 + Tel: +1 1800 553-NETS + E-mail: cs-yang@cisco.com"; + description + "Smart licensing error codes. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-02-03 { + description + "Added support for policies & usage reporting. + deprecated some functionality."; + reference "https://software.cisco.com/"; + semver:module-version "1.0.0"; + } + revision 2017-10-11 { + description + "Initial Revision of the error codes"; + } + + typedef error-enum { + type enumeration { + enum "success" { + value 0; + description + "Success"; + } + enum "malloc" { + value 1; + description + "Malloc Error"; + } + enum "nullpointer" { + value 2; + description + "Null pointer Error, + it may also mean non existence of file + in cases where files are provided as input"; + } + enum "error3" { + value 3; + description + "deprecated DO NOT remove"; + } + enum "error4" { + value 4; + description + "deprecated DO NOT remove"; + } + enum "error5" { + value 5; + description + "deprecated DO NOT remove"; + } + enum "BadInputParams" { + value 6; + description + "Bad input parameter"; + } + enum "error7" { + value 7; + description + "deprecated DO NOT remove"; + } + enum "badhandle" { + value 8; + description + "Bad handle"; + } + enum "notfound" { + value 9; + description + "The requested item was not found"; + } + enum "notsupported" { + value 10; + description + "The requested operation is not supported"; + } + enum "alreadyinit" { + value 11; + description + "Init failed because the agent is already initialized"; + } + enum "notinit" { + value 12; + description + "API failed because the agent is not initialized"; + } + enum "smfailtocreate" { + value 13; + description + "State machine creation failed"; + } + enum "smfailtorun" { + value 14; + description + "State machine not running"; + } + enum "smfailtoinit" { + value 15; + description + "State machine failed to init"; + } + enum "smfailtodestroy" { + value 16; + description + "State machine failed to destroy"; + } + enum "msgparse" { + value 17; + description + "message parsing error"; + } + enum "msgbuild" { + value 18; + description + "message building error"; + } + enum "notenabled" { + value 19; + description + "Smart Agent not enabled"; + } + enum "invalidrequest" { + value 20; + description + "Smart Agent request invalid"; + } + enum "init" { + value 21; + description + "General initialization error. We call a number of + system routines to + initialize system resources and we can't translate their error + codes to Smart Agent error codes. The log should have a detailed + description of the error."; + } + enum "failtosetstate" { + value 22; + description + "Smart Agent Fail to set state"; + } + enum "unsupportedresponse" { + value 23; + description + "Unsupported response type"; + } + enum "invalidresponse" { + value 24; + description + "Invalid response type"; + } + enum "storagefailtostore" { + value 25; + description + "Smart Agent Trusted Storage failed to store*"; + } + enum "storagefailtoretrieve" { + value 26; + description + "Smart Agent Trusted Storage failed to retrieve*"; + } + enum "nullccoidtoken" { + value 27; + description + "Null CCOId and IdToken"; + } + enum "matchidentifier" { + value 28; + description + "Product Instance identifier failed to match"; + } + enum "matchvendor" { + value 29; + description + "Vendor string failed to match"; + } + enum "matchnonce" { + value 30; + description + "nonce failed to match"; + } + enum "commdisabled" { + value 31; + description + "communication channel error. Comm layer (call home) is disabled "; + } + enum "commsend" { + value 32; + description + "Call Home message send error. probably a timeout so we + will retry the send. any other error from the comm send should + be a permanent failure"; + } + enum "commresponse" { + value 33; + description + "Call Home message send response error"; + } + enum "communkown" { + value 34; + description + "Call Home unknown error"; + } + enum "smpostnotallow" { + value 35; + description + "State machine Operation not permitted"; + } + enum "reqmsgmissingmandatoryfield" { + value 36; + description + "Missing mandatory field in request message"; + } + enum "responsefailed" { + value 37; + description + "We received a failure status in a response message. + The log will contain a error message"; + } + enum "pinotinit" { + value 38; + description + "PI not initialized "; + } + enum "alreadyenabled" { + value 39; + description + "The agent cannot be enabled more than once"; + } + enum "alreadyregistered" { + value 40; + description + "The agent is already registered"; + } + enum "certinvalid" { + value 41; + description + "The certificate is invalid "; + } + enum "certexpired" { + value 42; + description + "The certificate has expired "; + } + enum "notregistered" { + value 43; + description + "The agent is not registered "; + } + enum "csrgenerationfailed" { + value 44; + description + "The CSR generation failed "; + } + enum "verifysignaturefailed" { + value 45; + description + "Signature Verification failed "; + } + enum "generatesignaturefailed" { + value 46; + description + "Signature Generation failed "; + } + enum "signcertverificationfailed" { + value 47; + description + "Signing Certificate Verification failed "; + } + enum "nodecertverificationfailed" { + value 48; + description + "Node Certificate Verification failed "; + } + enum "parsecertificatefailed" { + value 49; + description + "Certificate Parsing failed "; + } + enum "cryptorootcaimportfailed" { + value 50; + description + "Root Certificate Import failed "; + } + enum "taginvalid" { + value 51; + description + "The tag is invalid "; + } + enum "standby" { + value 52; + description + "Smart agent is running on a standby RP "; + } + enum "registrationinprogress" { + value 53; + description + "Smart agent id token registration is in progress"; + } + enum "commretry" { + value 54; + description + "Call Home is not ready because it is in restart ipc"; + } + enum "authrenewinprogress" { + value 55; + description + "Smart agent authorization renew is in progress"; + } + enum "idcertrenewinprogress" { + value 56; + description + "Smart agent id certificate renew is in progress"; + } + enum "noudichange" { + value 57; + description + "Udi List Has Not been changed "; + } + enum "callhomeserviceoff" { + value 58; + description + "Call home service cannot be turned on. "; + } + enum "msgexecinprogress" { + value 59; + description + "message execution already in progress"; + } + enum "msgexecinproglocked" { + value 60; + description + "message execution in progress flag is locked"; + } + enum "certmatchessubsetudis" { + value 61; + description + "The ID cert only matches some of the system Udi's"; + } + enum "storagegroupchangeincomplete" { + value 62; + description + "A Storage group has not all been changed"; + } + enum "storagemgmtnotinit" { + value 63; + description + "Storage Management is not Init"; + } + enum "tspathnotchanged" { + value 64; + description + "TS System Path list is not changed "; + } + enum "cryptoinitnotcompleted" { + value 65; + description + "Crypto Initialization is not completed"; + } + enum "notinunidentified" { + value 66; + description + "The agent is not in unidentified state "; + } + enum "platformpathinvalid" { + value 67; + description + "The platform provided path is invalid "; + } + enum "platformudiinvalid" { + value 68; + description + "The platform provided UDI is invalid "; + } + enum "storageobjfailtocreate" { + value 69; + description + "failed to create Trusted Store object "; + } + enum "storageobjfailtoerase" { + value 70; + description + "failed to erase trusted store object "; + } + enum "storageobjdoesnotexist" { + value 71; + description + "trusted storage object/file does not exist"; + } + enum "messageeventexceedspeer" { + value 72; + description + "The message event is beyond the peer "; + } + enum "codevalidationfailed" { + value 73; + description + "Validation of the authorization key failed. + It probably does not match the UDI. The device will go to + the unidentified state (not registered)"; + } + enum "reserved" { + value 74; + description + "operation not supported because the agent is running in + permanent License reservation mode"; + } + enum "noreservationinprogress" { + value 75; + description + "No license reservation is in progress "; + } + enum "noauthorizationinstalled" { + value 76; + description + "No authorization code instaled in device "; + } + enum "reservationmismatch" { + value 77; + description + "The reservation authorization code does not match the + reservation request code"; + } + enum "notreservationmode" { + value 78; + description + "not in license reservation mode "; + } + enum "reservationerror" { + value 79; + description + " General reservation error. This is used with the API + functions that are called by the CLI. the API will return a + very specific displayString that describes the error."; + } + enum "sysmgrinit" { + value 80; + description + "Sysmgr Init Failed "; + } + enum "alreadyexists" { + value 81; + description + "Generic error for something already existing "; + } + enum "listinsertfailed" { + value 82; + description + "Error in object insert to xos list "; + } + enum "sessionmgmtnotinit" { + value 83; + description + "Session management not initialized"; + } + enum "listinitfailed" { + value 84; + description + "Error Creating Linked List"; + } + enum "listbusy" { + value 85; + description + "List in use"; + } + enum "noclients" { + value 86; + description + "No Connected Clients "; + } + enum "ipc" { + value 87; + description + "Generic IPC layer error "; + } + enum "ipcopen" { + value 88; + description + "The IPC socket open error "; + } + enum "ipcinit" { + value 89; + description + "The IPC Initialization error "; + } + enum "ipcconnect" { + value 90; + description + "The IPC Connection error "; + } + enum "ipcevents" { + value 91; + description + "The IPC Server Event error "; + } + enum "ipcmgmt" { + value 92; + description + "The IPC Management error "; + } + enum "ipcsend" { + value 93; + description + "The IPC Send error "; + } + enum "ipcreceive" { + value 94; + description + "The IPC Receive error "; + } + enum "ipctimeout" { + value 95; + description + "The IPC timeout error "; + } + enum "enqueuefailed" { + value 96; + description + "Failed to enqueue a message to the IPC Queue"; + } + enum "dequeuefailed" { + value 97; + description + "Failed to dequeue a message from the IPC queue"; + } + enum "shuttingdown" { + value 98; + description + "Fail because we are about to shutdown and we need + to stop processing any more messages or responses"; + } + enum "couldnotvalidatetrustchain" { + value 99; + description + "Could not validate Trust Chain"; + } + enum "reservationalreadyinstalled" { + value 100; + description + "The reservation authorization code is already installed "; + } + enum "reservationinstallparsefail" { + value 101; + description + "Failed to parse reservation authorization code "; + } + enum "base64encoding" { + value 102; + description + "Base64 encoding failed "; + } + enum "base64decoding" { + value 103; + description + "Base64 decoding failed "; + } + enum "invalidsoftwareidtag" { + value 104; + description + "Failed to find UUID inside software id tag "; + } + enum "certificatemismatch" { + value 105; + description + "Development certificates are being used with Production + Root certificate "; + } + enum "noreservation" { + value 106; + description + "No License Reservation "; + } + enum "agentunreachable" { + value 107; + description + "the agent Daemon is unreachable "; + } + enum "ignoreevent" { + value 108; + description + "the agent ignores event "; + } + enum "b58overflow" { + value 109; + description + "Base58 overflow, number too large. "; + } + enum "b58decode" { + value 110; + description + "Base58 decode error. "; + } + enum "b58badlen" { + value 111; + description + "Bad base58 length. "; + } + enum "b58invdigit" { + value 112; + description + "Invalid base58 digit. "; + } + enum "b58decodeoverflow" { + value 113; + description + "Overflow detected during base58 decode. "; + } + enum "reservationversionoutofbound" { + value 114; + description + "Reservation version out of bound "; + } + enum "base58encode" { + value 115; + description + "General Base58 encoding error "; + } + enum "duplicatedentry" { + value 116; + description + "General error code for adding item that already exists. + Used in App HA setup when adding an HA peer device info that + is already added "; + } + enum "missingentry" { + value 117; + description + "General error code for trying to remove item that do + not exist. Used in App HA setup when removing an HA peer device + info that does not exist"; + } + enum "badpeerinfoformat" { + value 118; + description + "The given peer info contain incorrect data format "; + } + enum "badapplicationhaattributedataset" { + value 119; + description + "The given handle attribute list contains incomplete + application HA attributes"; + } + enum "reservationinprogress" { + value 120; + description + "license reservation is in progress "; + } + enum "xdmcreatehandle" { + value 121; + description + "The xos_dm_create() failure causes this error code to be return "; + } + enum "versionmismatchinentitlementrsp" { + value 122; + description + "Version in entitlement response message does not match + with the + one already saved from last completed response message. We need + to send entitlement request again with proper version and data"; + } + enum "harolenotsupported" { + value 123; + description + "Given valid HA Role is not supported by this operation. + For Application HA valid roles are Active or Standby."; + } + enum "apphainvalidcharacter" { + value 124; + description + "Application HA attribute contains invalid character. + Character set supported is alphanumeric."; + } + enum "apphaaddpeerfromsamedevice" { + value 125; + description + "The peer info given is from the same device. "; + } + enum "apphaappduplicatedinstance" { + value 126; + description + "When setting Application HA Attribute, a different + handle with exactly + same tag, app ha name, app ha id exists in the agent."; + } + enum "versionmismatchinregresponse" { + value 127; + description + "Backend server does not support AppHA enabled message + version. So + registration response (from backend) received with status set as + FAILED or VERSION_TOO_HIGH."; + } + enum "conversionnocb" { + value 128; + description + "Migration function was called but there are no i + call backs registered "; + } + enum "conversionnotallowed" { + value 129; + description + "Migration was not enabled with the + MIGRATION_ALLOWED property "; + } + enum "conversioninprogress" { + value 130; + description + "Migration is in progress "; + } + enum "conversionalreadystarted" { + value 131; + description + "Migration has already been started "; + } + enum "conversionnotenabled" { + value 132; + description + "Migration is not enabled "; + } + enum "versionconversionnotsupported" { + value 133; + description + "The backend server this device is connected to does + not support conversion"; + } + enum "noconversioninprogress" { + value 134; + description + "No conversion in progress"; + } + enum "cryptoversionmismatch" { + value 135; + description + "Loaded OpenSSL version is not the same as used for + development"; + } + enum "conversionstoppedpartially" { + value 136; + description + "Some Smart Licensing Conversion jobs stopped successfully"; + } + enum "utilityenabled" { + value 137; + description + "Operation is not supported because Utility management + is enabled"; + } + enum "utilitynotenabled" { + value 138; + description + "Utility is not enabled"; + } + enum "transportnotavailable" { + value 139; + description + "Transport layer not abvailable"; + } + enum "fqdn" { + value 140; + description + "Unable to get FQDN"; + } + enum "thirdparty" { + value 141; + description + "The current transport type does not support this feature"; + } + enum "transporttype" { + value 142; + description + "The transport type needed is not configured"; + } + enum "transportconfig" { + value 143; + description + "A feature required a specific transport configuration + which is not configured"; + } + enum "IPCMsgVersion" { + value 144; + description + "Internal IPC error indicating an IPC version mismatch"; + } + enum "IPCFeatureDisabled" { + value 145; + description + "Internal IPC error. + The feature related to the IPC message is not available"; + } + enum "IPCErrorCode" { + value 146; + description + "Internal IPC error. + The other side does not understand this error code"; + } + enum "NotAuthorized" { + value 147; + description + "Entitlement not authorized. + Returned from the entitlement request call if the + entitlement tag (license) cannot be authorized. + The feature should not run if it gets this return code. + This error code will only be returned under the + following conditions: + - Specific License Reservation (SLR) mode is in use + - The authorization code installed does not contain + the requested entitlement tag. + - The authorization code installed does not contain + enough counts to satisfy the request. + - The entitlement tag is export restricted and is + not export authorized."; + } + enum "ExportAllowed" { + value 148; + description + "When the global export compliance flag is set to true, + this error code be returned when calling export control + APIs functions"; + } + enum "NotExportRestricted" { + value 149; + description + "This error code will be returned when calling export + control API functions to request or return export + authorization key for a feature + that is not export restricted."; + } + enum "NoKey" { + value 150; + description + "No authorization key to be returned. + This error code will be returned when there is a + request for export return key but the authorization + key for the feature does not exist."; + } + enum "OperationInProgress" { + value 151; + description + "The requested operation is already in progress"; + } + enum "ReservationNoAuthCodeFound" { + value 152; + description + "No authorization code found in meta file for the devices + in this High Availability (HA) stack. + Returned from the reservation install routine."; + } + enum "PreviouslyInstalled" { + value 153; + description + "The user tried to install a reservation authorization + code but it has been used previously"; + } + enum "IsExportRestricted" { + value 154; + description + "The Entitlement tag is export restricted"; + } + enum "ExportRestrictedAuth" { + value 155; + description + "Export authorization keys are installed"; + } + enum "NoOperation" { + value 156; + description + "There is no export key request or export return request + in progress."; + } + enum "MsgSizeExceed" { + value 157; + description + "Message size exceed the limit"; + } + enum "TelemetryNotEnabled" { + value 158; + description + "Telemetry not enabled"; + } + enum "NoURL" { + value 159; + description + "No URL is configured"; + } + enum "AuthKeyRequestInProgress" { + value 160; + description + "The export authorization key request is in progress"; + } + enum "AuthKeyReturnInProgress" { + value 161; + description + "The export authorization key return is in progress"; + } + enum "ErrorOkTryAgain" { + value 162; + description + "CSSM requested to try again"; + } + enum "MismatchEntitlementRequest" { + value 163; + description + "Mismatch in the entitlement request"; + } + enum "InvalidAuthCodeType" { + value 164; + description + "Invalid authorization code type for a particular operation"; + } + enum "InvalidXML" { + value 165; + description + "XML PArser fails to get an expected Node"; + } + enum "ThreadDeadLock" { + value 166; + description + "Mutex Error, This Thread already owns this lock"; + } + enum "MutexPreviouslyInit" { + value 167; + description + "Mutex Error. This Mutex was previously initialized"; + } + enum "MutexInvalid" { + value 168; + description + "Mutex Error, This is an invalid Mutex"; + } + enum "MutexBusy" { + value 169; + description + "Mutex Error. This Mutex is still busy and canot be destroyed"; + } + enum "MutexNotOwner" { + value 170; + description + "Mutex Error. The current thread is not the owner of the mutex"; + } + enum "LicenseInUse" { + value 171; + description + "Enforced/ExportRestricted License is in use"; + } + enum "FailedToStoreInTheFile" { + value 172; + description + "Error if it failed to store the data in the given file path"; + } + enum "TrustCodeAlreadyInstalled" { + value 173; + description + "Error if the user tries to generate trust request + but trust code has already been installed"; + } + enum "ErrorMax" { + description + "max error code"; + } + } + description + "Smart License error codes returned by + Smart Licensing RPC calls"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper-sub1.yang new file mode 100644 index 000000000..4c6c998ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper-sub1.yang @@ -0,0 +1,467 @@ +submodule Cisco-IOS-XR-smart-license-platform-oper-sub1 { + belongs-to Cisco-IOS-XR-smart-license-platform-oper { + prefix Cisco-IOS-XR-smart-license-platform-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR smart-license-platform package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-28 { + description + "Added zr-zrp-dco under ft-feature-name-enum enum. + 2022-07-27 + Renamed node-deactivated enum to perpetual-without-sia-renewal in Sia-status-enum type. + 2022-05-09 + Traffic-Eng Advantage license feature renamed to SR-TE Advantage license in feature-details container."; + semver:module-version "2.0.0"; + } + revision 2021-06-03 { + description + "Added support for enum node-deactivated."; + semver:module-version "1.1.0"; + } + revision 2020-09-15 { + description + "Structured the yang response for show CLIs."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ft-feature-name-enum { + type enumeration { + enum "essential" { + description + "essential"; + } + enum "l3vpn-advantage" { + description + "l3vpn advantage"; + } + enum "macsec-advantage" { + description + "macsec advantage"; + } + enum "peering-scale-advantage" { + description + "peering scale advantage"; + } + enum "sr-te-advantage" { + description + "sr te advantage"; + } + enum "flex-algo-advantage" { + description + "flex algo advantage"; + } + enum "service-layer-advantage" { + description + "service layer advantage"; + } + enum "evpn-advantage" { + description + "evpn advantage"; + } + enum "vpls-advantage" { + description + "vpls advantage"; + } + enum "iccp-advantage" { + description + "iccp advantage"; + } + enum "l2vpn-advantage" { + description + "l2vpn advantage"; + } + enum "zr-zrp-dco" { + description + "zr zrp dco"; + } + } + description + "Feature Name in the feature table"; + } + + typedef Feature-status-enum { + type enumeration { + enum "active" { + description + "active"; + } + enum "inactive" { + description + "inactive"; + } + } + description + "Feature Name"; + } + + typedef Feature-name-enum { + type enumeration { + enum "fcm" { + description + "fcm"; + } + enum "system" { + description + "system"; + } + } + description + "Feature Name"; + } + + typedef Bool-state { + type enumeration { + enum "no" { + value 0; + description + "No"; + } + enum "yes" { + value 1; + description + "Yes"; + } + } + description + "Boolean State "; + } + + typedef Sia-status-enum { + type enumeration { + enum "incompliance" { + description + "incompliance"; + } + enum "out-of-compliance" { + description + "out of compliance"; + } + enum "perpetual-without-sia-renewal" { + description + "perpetual without sia renewal"; + } + } + description + "SIA Status"; + } + + grouping FEATURE-LIST { + description + "FEATURE LIST"; + container count { + description + "Count"; + uses PLAT-ENTITLEMENT; + } + leaf feature-area { + type Feature-name-enum; + description + "Feature Name"; + } + leaf entitlement { + type string; + description + "Entitlement"; + } + } + + grouping PLAT-SL-SUMMARY { + description + "SL Summary"; + container collection { + description + "Last and Next collection times"; + uses PLAT-INTERVALS; + } + container reporting { + description + "Last and Next reporting times"; + uses PLAT-INTERVALS; + } + container sia-status { + description + "SIA Status"; + uses PLAT-SIA-STATUS; + } + container upgrade-license-status { + description + "Upgrade License Status"; + uses PLAT-UPGRADE-LICENSE-STATUS; + } + list license { + description + "List of licenses consumed"; + uses FEATURE-LIST; + } + } + + grouping PLAT-ENTITLEMENT { + description + "PLAT ENTITLEMENT"; + leaf last { + type uint32; + description + "Last count"; + } + leaf next { + type uint32; + description + "Next count"; + } + } + + grouping PLAT-ENTITLEMENT-LIST { + description + "PLAT ENTITLEMENT LIST"; + container count { + description + "Count"; + uses PLAT-ENTITLEMENT; + } + leaf name { + type string; + description + "Entitlement Name"; + } + leaf entitlement-tag { + type string; + description + "Entitlement Tag"; + } + } + + grouping PLAT-FEATURE-TABLE { + description + "PLAT FEATURE TABLE"; + leaf feature { + type Ft-feature-name-enum; + description + "Feature Name"; + } + leaf location { + type string; + description + "Location"; + } + leaf interface-list { + type string; + description + "Interface List"; + } + } + + grouping PLAT-DETAIL-FLAGS { + description + "PLAT DETAIL FLAGS"; + leaf need-running-config { + type Bool-state; + description + "Is running config needed"; + } + leaf need-throughput { + type Bool-state; + description + "Is throughput needed"; + } + } + + grouping FEATURE-DETAILS { + description + "FEATURE DETAILS"; + container flags { + description + "Flags for is running config and is throughput"; + uses PLAT-DETAIL-FLAGS; + } + leaf name { + type Feature-name-enum; + description + "Feature Name"; + } + leaf status { + type Feature-status-enum; + description + "Status"; + } + list feature-table { + description + "Feature Table"; + uses PLAT-FEATURE-TABLE; + } + list entitlement { + description + "List of entitlements"; + uses PLAT-ENTITLEMENT-LIST; + } + } + + grouping PLAT-PARAMETERS { + description + "PLAT PARAMETERS"; + leaf collection-interval { + type int32; + units "minute"; + description + "Collection Interval in minutes"; + } + leaf reporting-interval { + type int32; + units "minute"; + description + "Reporting Interval minutes"; + } + leaf throughput-guage { + type int32; + units "kbit/s"; + description + "Throughput Guage in Kbps"; + } + } + + grouping PLAT-UPGRADE-LICENSE-STATUS { + description + "PLAT UPGRADE LICENSE STATUS"; + container grace-period-remaining { + description + "Remaining grace period"; + uses PLAT-GRACE-PERIOD; + } + leaf upgrade-license-state { + type Sia-status-enum; + description + "Upgrade License status enum"; + } + leaf grace-period-expired { + type Bool-state; + description + "Has grace period expired"; + } + leaf ooc-reason { + type string; + description + "Reason for Upgrade License ooc"; + } + } + + grouping PLAT-GRACE-PERIOD { + description + "PLAT GRACE PERIOD"; + leaf days { + type int32; + units "day"; + description + "Number of days remaining in grace period"; + } + leaf hours { + type int32; + units "hour"; + description + "Number of hours remaining in grace period"; + } + } + + grouping PLAT-SIA-STATUS { + description + "PLAT SIA STATUS"; + container grace-period-remaining { + description + "Remaining grace period"; + uses PLAT-GRACE-PERIOD; + } + leaf sia-state { + type Sia-status-enum; + description + "SIA status enum"; + } + leaf grace-period-expired { + type Bool-state; + description + "Has grace period expired"; + } + leaf ooc-reason { + type string; + description + "Reason for SIA ooc"; + } + } + + grouping PLAT-INTERVALS { + description + "PLAT INTERVALS"; + leaf last { + type string; + description + "Last collection or reporting interval"; + } + leaf next { + type string; + description + "Next collection or reporting interval"; + } + } + + grouping PLAT-SL-DETAIL { + description + "SL Detail"; + container collection { + description + "Last and Next collection times"; + uses PLAT-INTERVALS; + } + container reporting { + description + "Last and Next reporting times"; + uses PLAT-INTERVALS; + } + container sia-status { + description + "SIA Status"; + uses PLAT-SIA-STATUS; + } + container upgrade-license-status { + description + "Upgrade License Status"; + uses PLAT-UPGRADE-LICENSE-STATUS; + } + container parameters { + description + "Parameters"; + uses PLAT-PARAMETERS; + } + container feature-details { + description + "Feature Details"; + uses FEATURE-DETAILS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper.yang new file mode 100644 index 000000000..795b8fcff --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-smart-license-platform-oper.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-smart-license-platform-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-smart-license-platform-oper"; + prefix smart-license-platform-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-smart-license-platform-oper-sub1 { + revision-date 2022-09-28; + } + + 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 smart-license-platform package operational data. + + This module contains definitions + for the following management objects: + plat-smart-license: Smart License info + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-28 { + description + "Added zr-zrp-dco under ft-feature-name-enum enum. + 2022-07-27 + Renamed node-deactivated enum to perpetual-without-sia-renewal in Sia-status-enum type. + 2022-05-09 + Traffic-Eng Advantage license feature renamed to SR-TE Advantage license in feature-details container."; + semver:module-version "2.0.0"; + } + revision 2021-06-03 { + description + "Added support for enum node-deactivated."; + semver:module-version "1.1.0"; + } + revision 2020-09-15 { + description + "Structured the yang response for show CLIs."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container plat-smart-license { + config false; + description + "Smart License info"; + container detail { + description + "Node Detail"; + uses PLAT-SL-DETAIL; + } + container summary { + description + "Node Summary"; + uses PLAT-SL-SUMMARY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-cfg.yang new file mode 100644 index 000000000..e35123f0f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-cfg.yang @@ -0,0 +1,2425 @@ +module Cisco-IOS-XR-snmp-agent-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-agent-cfg"; + prefix snmp-agent-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 snmp-agent package configuration. + + This module contains definitions + for the following management objects: + snmp: The heirarchy point for all the SNMP configurations + mib: The heirarchy point for all the MIB configurations + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-15 { + description + "New config for OPS Script OID added + 2021-05-15 + New config snmp tcp added"; + semver:module-version "3.2.0"; + } + revision 2020-09-15 { + description + "New config snmp trap delay timer added"; + semver:module-version "3.1.0"; + } + revision 2020-03-31 { + description + "CSCvs82990 Native yang model support for uncovered snmp-server cmds"; + semver:module-version "3.0.0"; + } + revision 2019-11-21 { + description + "CSCvs07760 Changed host config schema default values in sync with cli + 2019-11-06 + Yang Support for snmp-agent components via bug CSCvk56072 + 2019-10-31 + Added mandatory nodes. + 2019-06-13 + Added new option under host config via bug CSCvq13863"; + semver:module-version "2.0.0"; + } + revision 2019-05-29 { + description + "Type6 algorithm support to configure SNMP community, community-map, host, vrf host and user via bug CSCvp30991."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-06-27 { + description + "Error while configuring snmp-server host via netconf bug CSCvj92659."; + } + revision 2018-03-12 { + description + "Yang model support to configure snmp-server timeouts threshold 100000"; + } + revision 2017-12-20 { + description + "Removed nonstateful class from correlator config"; + } + revision 2017-10-15 { + description + "Removed presence statement generated from internal CLI data."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-10-27 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Snmp-tos { + type enumeration { + enum "precedence" { + value 0; + description + "SNMP TOS type Precedence"; + } + enum "dscp" { + value 1; + description + "SNMP TOS type DSCP"; + } + } + description + "Snmp tos"; + } + + typedef Snmp-hash-algorithm { + type enumeration { + enum "none" { + value 0; + description + "No authentication required"; + } + enum "md5" { + value 1; + description + "Standard Message Digest algorithm"; + } + enum "sha" { + value 2; + description + "SHA algorithm"; + } + } + description + "Snmp hash algorithm"; + } + + typedef Snmp-priv-algorithm { + type enumeration { + enum "none" { + value 0; + description + "No Privacy"; + } + enum "des" { + value 1; + description + "Des algorithm"; + } + enum "3des" { + value 2; + description + "3des algorithm"; + } + enum "aes128" { + value 3; + description + "aes128 algorithm"; + } + enum "aes192" { + value 4; + description + "aes192 algorithm"; + } + enum "aes256" { + value 5; + description + "aes256 algorithm"; + } + } + description + "Snmp priv algorithm"; + } + + typedef Snmp-owner-access { + type enumeration { + enum "sdr-owner" { + value 0; + description + "Secure Domain Router Owner permissions"; + } + enum "system-owner" { + value 1; + description + "System owner permissions"; + } + } + description + "Snmp owner access"; + } + + typedef Snmp-bulkstat-schema { + type enumeration { + enum "exact-interface" { + value 1; + description + "Exact Interface"; + } + enum "exact-oid" { + value 2; + description + "Exact OID"; + } + enum "wild-interface" { + value 3; + description + "Wild Interface"; + } + enum "wild-oid" { + value 4; + description + "Wild OID"; + } + enum "range-oid" { + value 5; + description + "Range of OID"; + } + enum "repeat-oid" { + value 6; + description + "Repeated the instance"; + } + } + description + "Snmp bulkstat schema"; + } + + typedef Snmpacl { + type enumeration { + enum "ipv4" { + value 1; + description + "Ipv4 Access-list"; + } + enum "ipv6" { + value 2; + description + "Ipv6 Access-list"; + } + } + description + "Snmpacl"; + } + + typedef Snmp-dscp-value { + type union { + type enumeration { + enum "default" { + value 0; + description + "Applicable to DSCP: bits 000000"; + } + enum "af11" { + value 10; + description + "Applicable to DSCP: bits 001010"; + } + enum "af12" { + value 12; + description + "Applicable to DSCP: bits 001100"; + } + enum "af13" { + value 14; + description + "Applicable to DSCP: bits 001110"; + } + enum "af21" { + value 18; + description + "Applicable to DSCP: bits 010010"; + } + enum "af22" { + value 20; + description + "Applicable to DSCP: bits 010100"; + } + enum "af23" { + value 22; + description + "Applicable to DSCP: bits 010110"; + } + enum "af31" { + value 26; + description + "Applicable to DSCP: bits 011010"; + } + enum "af32" { + value 28; + description + "Applicable to DSCP: bits 011100"; + } + enum "af33" { + value 30; + description + "Applicable to DSCP: bits 011110"; + } + enum "af41" { + value 34; + description + "Applicable to DSCP: bits 100010"; + } + enum "af42" { + value 36; + description + "Applicable to DSCP: bits 100100"; + } + enum "af43" { + value 38; + description + "Applicable to DSCP: bits 100110"; + } + enum "ef" { + value 46; + description + "Applicable to DSCP: bits 101110"; + } + enum "cs1" { + value 8; + description + "Applicable to DSCP: bits 001000"; + } + enum "cs2" { + value 16; + description + "Applicable to DSCP: bits 010000"; + } + enum "cs3" { + value 24; + description + "Applicable to DSCP: bits 011000"; + } + enum "cs4" { + value 32; + description + "Applicable to DSCP: bits 100000"; + } + enum "cs5" { + value 40; + description + "Applicable to DSCP: bits 101000"; + } + enum "cs6" { + value 48; + description + "Applicable to DSCP: bits 110000"; + } + enum "cs7" { + value 56; + description + "Applicable to DSCP: bits 111000"; + } + } + type uint32 { + range "0..63"; + } + } + description + "Snmp dscp value"; + } + + typedef Snmp-precedence-value1 { + type union { + type enumeration { + enum "routine" { + value 0; + description + "Applicable to Precedence: value 0"; + } + enum "priority" { + value 1; + description + "Applicable to Precedence: value 1"; + } + enum "immediate" { + value 2; + description + "Applicable to Precedence: value 2"; + } + enum "flash" { + value 3; + description + "Applicable to Precedence: value 3"; + } + enum "flash-override" { + value 4; + description + "Applicable to Precedence: value 4"; + } + enum "critical" { + value 5; + description + "Applicable to Precedence: value 5"; + } + enum "internet" { + value 6; + description + "Applicable to Precedence: value 6"; + } + enum "network" { + value 7; + description + "Applicable to Precedence: value 7"; + } + } + type uint32 { + range "0..7"; + } + } + description + "Snmp precedence value1"; + } + + typedef Snmp-security-model { + type enumeration { + enum "no-authentication" { + value 0; + description + "No Authentication required"; + } + enum "authentication" { + value 1; + description + "Authentication password alone required for + access"; + } + enum "privacy" { + value 2; + description + "Authentication and privacy password required + for access"; + } + } + description + "Snmp security model"; + } + + typedef Snmp-mib-view-inclusion { + type enumeration { + enum "included" { + value 1; + description + "MIB View to be included"; + } + enum "excluded" { + value 2; + description + "MIB View to be excluded"; + } + } + description + "Snmp mib view inclusion"; + } + + typedef Snmp-bulkstat-file-format { + type enumeration { + enum "schema-ascii" { + value 1; + description + "Tranfer file in schema Ascii format"; + } + enum "bulk-ascii" { + value 2; + description + "Tranfer file in Bulk Ascii format"; + } + enum "bulk-binary" { + value 3; + description + "Tranfer file in Bulk binary format"; + } + } + description + "Snmp bulkstat file format"; + } + + typedef Snmp-access-level { + type enumeration { + enum "read-only" { + value 0; + description + "Read Only Access for a community string"; + } + enum "read-write" { + value 1; + description + "Read Write Access for a community string"; + } + } + description + "Snmp access level"; + } + + typedef Snmp-context { + type enumeration { + enum "vrf" { + value 1; + description + "VRF feature"; + } + enum "bridge" { + value 4; + description + "BRIDGE feature"; + } + enum "ospf" { + value 5; + description + "OSPF feature"; + } + enum "ospfv3" { + value 6; + description + "OSPFv3 feature"; + } + } + description + "Snmp context"; + } + + typedef Group-snmp-version { + type enumeration { + enum "v1" { + value 0; + description + "SNMP version 1"; + } + enum "v2c" { + value 1; + description + "SNMP version 2"; + } + enum "v3" { + value 2; + description + "SNMP version 3"; + } + } + description + "Group snmp version"; + } + + typedef User-snmp-version { + type enumeration { + enum "v1" { + value 1; + description + "SNMP version 1"; + } + enum "v2c" { + value 2; + description + "SNMP version 2"; + } + enum "v3" { + value 3; + description + "SNMP version 3"; + } + } + description + "User snmp version"; + } + + grouping APPLIED-TO { + description + "Common node of rule, rule-set"; + container applied-to { + description + "Applied to the Rule or Ruleset"; + container hosts { + description + "Table of configured hosts to apply rules to"; + list host { + key "ip-address port"; + description + "A destination host"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "Port (specify 162 for default)"; + } + } + } + leaf all { + type empty; + description + "Apply to all of the device"; + } + } + } + + grouping CONTEXT-TABLE { + description + "Common node of snmp, vrf"; + container contexts { + description + "List of Context Names"; + list context { + key "context-name"; + description + "Context Name"; + leaf context-name { + type xr:Cisco-ios-xr-string; + description + "Context Name"; + } + } + } + } + + grouping VAR-BIND-TABLE { + description + "Common node of root-cause, non-root-cause"; + container var-binds { + description + "Varbinds to match"; + list var-bind { + key "oid"; + description + "Varbind match conditions"; + container match { + description + "VarBind match conditions"; + leaf value { + type string; + description + "Regular Expression to match value"; + } + leaf index { + type string; + description + "Regular Expression to match index"; + } + } + leaf oid { + type string; + description + "OID of varbind (dotted decimal)"; + } + } + } + } + + grouping TRAP-HOST-TABLE { + description + "Common node of snmp, vrf"; + container trap-hosts { + description + "Specify hosts to receive SNMP notifications"; + list trap-host { + key "ip-address"; + description + "Specify hosts to receive SNMP notifications"; + container encrypted-user-communities { + description + "Container class for defining default + Clear/encrypt communities for a trap host"; + list encrypted-user-community { + key "community-name"; + description + "Default Clear/Encrypt Community name + associated with a trap host"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMPv1/v2c community string or SNMPv3 user"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + leaf version { + type string; + mandatory true; + description + "SNMP Version to be used 1/2c/3"; + } + leaf security-level { + type Snmp-security-model; + description + "Security level to be used noauth/auth/priv"; + } + leaf basic-trap-types { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setBasicTrapTypes is used for + all traps except copy-completeSet this value + to an integer corresponding to the trapBGP + 8192, CONFIG 4096,SYSLOG 131072,SNMP_TRAP + 1COPY_COMPLETE_TRAP 64To provide a + combination of trap Add the respective + numbersValue must be set to 0 for all traps"; + } + leaf advanced-trap-types1 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setUse this for providing + copy-complete trapValue must be set to 0 if + not used"; + } + leaf advanced-trap-types2 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setvalue should always to set as + 0"; + } + leaf dying-gasp { + type boolean; + description + "Enable dying gasp trap for this host"; + } + } + } + container type6-encrypted-user-communities { + description + "Container class for defining type6 + Clear/encrypt communities for a trap host"; + list type6-encrypted-user-community { + key "community-name"; + description + "Type6 Clear/Encrypt Community name associated + with a trap host"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMPv1/v2c community string or SNMPv3 user"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + leaf version { + type string; + mandatory true; + description + "SNMP Version to be used 1/2c/3"; + } + leaf security-level { + type Snmp-security-model; + description + "Security level to be used noauth/auth/priv"; + } + leaf basic-trap-types { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setBasicTrapTypes is used for + all traps except copy-completeSet this value + to an integer corresponding to the trapBGP + 8192, CONFIG 4096,SYSLOG 131072,SNMP_TRAP + 1COPY_COMPLETE_TRAP 64To provide a + combination of trap Add the respective + numbersValue must be set to 0 for all traps"; + } + leaf advanced-trap-types1 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setUse this for providing + copy-complete trapValue must be set to 0 if + not used"; + } + leaf advanced-trap-types2 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setvalue should always to set as + 0"; + } + leaf dying-gasp { + type boolean; + description + "Enable dying gasp trap for this host"; + } + } + } + container inform-host { + description + "Container class for defining notification type + for a Inform host"; + container inform-user-communities { + description + "Container class for defining communities for + a inform host"; + list inform-user-community { + key "community-name"; + description + "Unencrpted Community name associated with a + inform host"; + leaf community-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "SNMPv2c community string or SNMPv3 user"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + leaf version { + type string; + mandatory true; + description + "SNMP Version to be used 2c/3"; + } + leaf security-level { + type Snmp-security-model; + description + "Security level to be used noauth/auth/priv"; + } + leaf basic-trap-types { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setBasicTrapTypes is used for + all traps except copy-completeSet this + value to an integer corresponding to the + trapBGP 8192, CONFIG 4096,SYSLOG 131072 + ,SNMP_TRAP 1COPY_COMPLETE_TRAP 64To provide + a combination of trap Add the respective + numbersValue must be set to 0 for all traps"; + } + leaf advanced-trap-types1 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setUse this for providing + copy-complete trapValue must be set to 0 if + not used"; + } + leaf advanced-trap-types2 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setvalue should always to set + as 0"; + } + leaf dying-gasp { + type boolean; + description + "Enable dying gasp trap for this host"; + } + } + } + container inform-type6-encrypted-user-communities { + description + "Container class for defining type6 + Clear/encrypt communities for a inform host"; + list inform-type6-encrypted-user-community { + key "community-name"; + description + "Type6 Clear/Encrypt Community name + associated with a inform host"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMPv2c community string or SNMPv3 user"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + leaf version { + type string; + mandatory true; + description + "SNMP Version to be used 2c/3"; + } + leaf security-level { + type Snmp-security-model; + description + "Security level to be used noauth/auth/priv"; + } + leaf basic-trap-types { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setBasicTrapTypes is used for + all traps except copy-completeSet this + value to an integer corresponding to the + trapBGP 8192, CONFIG 4096,SYSLOG 131072 + ,SNMP_TRAP 1COPY_COMPLETE_TRAP 64To provide + a combination of trap Add the respective + numbersValue must be set to 0 for all traps"; + } + leaf advanced-trap-types1 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setUse this for providing + copy-complete trapValue must be set to 0 if + not used"; + } + leaf advanced-trap-types2 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setvalue should always to set + as 0"; + } + leaf dying-gasp { + type boolean; + description + "Enable dying gasp trap for this host"; + } + } + } + container inform-encrypted-user-communities { + description + "Container class for defining default + Clear/encrypt communities for a inform host"; + list inform-encrypted-user-community { + key "community-name"; + description + "Clear/Encrypt Community name associated with + a inform host"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMPv2c community string or SNMPv3 user"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + leaf version { + type string; + mandatory true; + description + "SNMP Version to be used 2c/3"; + } + leaf security-level { + type Snmp-security-model; + description + "Security level to be used noauth/auth/priv"; + } + leaf basic-trap-types { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setBasicTrapTypes is used for + all traps except copy-completeSet this + value to an integer corresponding to the + trapBGP 8192, CONFIG 4096,SYSLOG 131072 + ,SNMP_TRAP 1COPY_COMPLETE_TRAP 64To provide + a combination of trap Add the respective + numbersValue must be set to 0 for all traps"; + } + leaf advanced-trap-types1 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setUse this for providing + copy-complete trapValue must be set to 0 if + not used"; + } + leaf advanced-trap-types2 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setvalue should always to set + as 0"; + } + leaf dying-gasp { + type boolean; + description + "Enable dying gasp trap for this host"; + } + } + } + } + container default-user-communities { + description + "Container class for defining communities for a + trap host"; + list default-user-community { + key "community-name"; + description + "Unencrpted Community name associated with a + trap host"; + leaf community-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "SNMPv1/v2c community string or SNMPv3 user"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + leaf version { + type string; + mandatory true; + description + "SNMP Version to be used 1/2c/3"; + } + leaf security-level { + type Snmp-security-model; + description + "Security level to be used noauth/auth/priv"; + } + leaf basic-trap-types { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setBasicTrapTypes is used for + all traps except copy-completeSet this value + to an integer corresponding to the trapBGP + 8192, CONFIG 4096,SYSLOG 131072,SNMP_TRAP + 1COPY_COMPLETE_TRAP 64To provide a + combination of trap Add the respective + numbersValue must be set to 0 for all traps"; + } + leaf advanced-trap-types1 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setUse this for providing + copy-complete trapValue must be set to 0 if + not used"; + } + leaf advanced-trap-types2 { + type uint32; + mandatory true; + description + "Number to signify the feature traps that + needs to be setvalue should always to set as + 0"; + } + leaf dying-gasp { + type boolean; + description + "Enable dying gasp trap for this host"; + } + } + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address of SNMP notification host"; + } + } + } + } + + grouping CONTEXT-MAPPING-TABLE { + description + "Common node of snmp, vrf"; + container context-mappings { + description + "List of context names"; + list context-mapping { + key "context-mapping-name"; + description + "Context mapping name"; + leaf context-mapping-name { + type xr:Cisco-ios-xr-string; + description + "Context mapping name"; + } + leaf context { + type Snmp-context; + description + "SNMP context feature type"; + } + leaf instance-name { + type string; + description + "OSPF protocol instance"; + } + leaf vrf-name { + type string; + description + "VRF name associated with the context"; + } + leaf topology-name { + type string; + description + "Topology name associated with the context"; + } + } + } + } + + container snmp { + description + "The heirarchy point for all the SNMP + configurations"; + container encrypted-community-maps { + description + "Container class to hold clear/encrypted + communitie maps"; + list encrypted-community-map { + key "community-name"; + description + "Clear/encrypted SNMP community map"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMP community map"; + } + leaf context { + type string; + description + "SNMP Context Name "; + } + leaf security { + type string; + description + "SNMP Security Name "; + } + leaf target-list { + type string; + description + "target list name "; + } + } + } + container views { + description + "Class to configure a SNMPv2 MIB view"; + list view { + key "view-name family"; + description + "Name of the view"; + leaf view-name { + type xr:Cisco-ios-xr-string; + description + "Name of the view"; + } + leaf family { + type string; + description + "MIB view family name"; + } + leaf view-inclusion { + type Snmp-mib-view-inclusion; + mandatory true; + description + "MIB view to be included or excluded"; + } + } + } + container logging { + description + "SNMP logging"; + container threshold { + description + "SNMP logging threshold"; + leaf oid-processing { + type uint32 { + range "0..20000"; + } + default "500"; + description + "SNMP logging threshold for OID processing"; + } + leaf pdu-processing { + type uint32 { + range "0..20000"; + } + default "20000"; + description + "SNMP logging threshold for PDU processing"; + } + } + } + container script-inputs { + description + "SNMP script OID config"; + list script-input { + key "script-oid"; + description + "Input to Script"; + leaf script-oid { + type xr:Cisco-ios-xr-string; + description + "Input OID to Script"; + } + leaf script-file-name { + type string; + mandatory true; + description + "Script File Path"; + } + } + } + container administration { + description + "Container class for SNMP administration"; + container default-communities { + description + "Container class to hold unencrpted communities"; + list default-community { + key "community-name"; + description + "Unencrpted SNMP community string and access + priviledges"; + leaf community-name { + type string { + length "1..128"; + } + description + "SNMP community string"; + } + leaf priviledge { + type Snmp-access-level; + description + "Read/Write Access"; + } + leaf view-name { + type string; + description + "MIB view to which the community has access"; + } + leaf v4acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v4-access-list { + type string; + description + "Ipv4 Access-list name"; + } + leaf v6acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v6-access-list { + type string; + description + "Ipv6 Access-list name"; + } + leaf owner { + type Snmp-owner-access; + description + "Logical Router or System owner access"; + } + } + } + container type6-encrypted-communities { + description + "Container class to hold type6 clear/encrypted + communities"; + list type6-encrypted-community { + key "community-name"; + description + "Type6 Clear/encrypted SNMP community string + and access priviledges"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMP community string"; + } + leaf priviledge { + type Snmp-access-level; + description + "Read/Write Access"; + } + leaf view-name { + type string; + description + "MIB view to which the community has access"; + } + leaf v4acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v4-access-list { + type string; + description + "Ipv4 Access-list name"; + } + leaf v6acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v6-access-list { + type string; + description + "Ipv6 Access-list name"; + } + leaf owner { + type Snmp-owner-access; + description + "Logical Router or System owner access"; + } + } + } + container encrypted-communities { + description + "Container class to hold clear/encrypted + communities"; + list encrypted-community { + key "community-name"; + description + "Clear/encrypted SNMP community string and + access priviledges"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMP community string"; + } + leaf priviledge { + type Snmp-access-level; + description + "Read/Write Access"; + } + leaf view-name { + type string; + description + "MIB view to which the community has access"; + } + leaf v4acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v4-access-list { + type string; + description + "Ipv4 Access-list name"; + } + leaf v6acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v6-access-list { + type string; + description + "Ipv6 Access-list name"; + } + leaf owner { + type Snmp-owner-access; + description + "Logical Router or System owner access"; + } + } + } + } + container agent { + description + "The heirarchy point for SNMP Agent + configurations"; + container engine-id { + description + "SNMPv3 engineID"; + container remotes { + description + "SNMPv3 remote SNMP Entity"; + list remote { + key "remote-address"; + description + "engineID of the remote agent"; + leaf remote-address { + type inet:ip-address-no-zone; + description + "IP address of remote SNMP entity"; + } + leaf remote-engine-id { + type string; + description + "engine ID octet string"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + } + } + leaf local { + type string; + description + "engineID of the local agent"; + } + } + } + container trap { + description + "Class to hold trap configurations"; + leaf timeout { + type uint32 { + range "1..1000"; + } + description + "Timeout for TRAP message retransmissions"; + } + leaf throttle-time { + type uint32 { + range "10..500"; + } + units "millisecond"; + description + "Set throttle time for handling traps"; + } + leaf queue-length { + type uint32 { + range "1..5000"; + } + description + "Message queue length for each TRAP host"; + } + leaf trap-delay-time { + type uint32 { + range "30..240"; + } + units "minute"; + description + "Set time to delay sending traps on init"; + } + } + container type6-encrypted-community-maps { + description + "Container class to hold type6 clear/encrypted + communitie maps"; + list type6-encrypted-community-map { + key "community-name"; + description + "Type6 Clear/encrypted SNMP community map"; + leaf community-name { + type xr:Cisco-ios-xr-string; + description + "SNMP community map"; + } + leaf context { + type string; + description + "SNMP Context Name "; + } + leaf security { + type string; + description + "SNMP Security Name "; + } + leaf target-list { + type string; + description + "target list name "; + } + } + } + container drop-packet { + description + "SNMP packet drop config"; + container report { + description + "SNMP drop report"; + container acl { + description + "SNMP drop report for ACL"; + leaf v4acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v4-access-list { + type string; + description + "Ipv4 Access-list name"; + } + leaf v6acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v6-access-list { + type string; + description + "Ipv6 Access-list name"; + } + } + } + leaf unknown-user { + type empty; + description + "Enable drop unknown user name"; + } + } + container ipv6 { + description + "SNMP TOS bit for outgoing packets"; + container tos { + description + "Type of TOS"; + leaf type { + type Snmp-tos; + description + "SNMP TOS type DSCP or Precedence"; + } + leaf precedence { + when "../type = 'precedence'" { + description + "../Type = Precedence"; + } + type Snmp-precedence-value1; + description + "SNMP Precedence value"; + } + leaf dscp { + when "../type = 'dscp'" { + description + "../Type = DSCP"; + } + type Snmp-dscp-value; + description + "SNMP DSCP value"; + } + } + } + container ipv4 { + description + "SNMP TOS bit for outgoing packets"; + container tos { + description + "Type of TOS"; + leaf type { + type Snmp-tos; + description + "SNMP TOS type DSCP or Precedence"; + } + leaf precedence { + when "../type = 'precedence'" { + description + "../Type = Precedence"; + } + type Snmp-precedence-value1; + description + "SNMP Precedence value"; + } + leaf dscp { + when "../type = 'dscp'" { + description + "../Type = DSCP"; + } + type Snmp-dscp-value; + description + "SNMP DSCP value"; + } + } + } + container system { + description + "container to hold system information"; + leaf chassis-id { + type string { + length "1..255"; + } + description + "String to uniquely identify this chassis"; + } + leaf location { + type string { + length "1..255"; + } + description + "The physical location of this node"; + } + leaf contact { + type string { + length "1..255"; + } + description + "identification of the contact person for this + managed node"; + } + } + container target { + description + "SNMP target configurations"; + container targets { + description + "List of targets"; + list target { + key "target-list-name"; + description + "Name of the target list"; + container vrf-names { + description + "List of VRF Name for a target list"; + list vrf-name { + key "name"; + description + "VRF name of the target"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + } + } + container target-addresses { + description + "SNMP Target address configurations"; + list target-address { + key "ip-address"; + description + "IP Address to be configured for the Target"; + leaf ip-address { + type inet:ip-address-no-zone; + description + "IPv4/Ipv6 address"; + } + } + } + leaf target-list-name { + type xr:Cisco-ios-xr-string; + description + "Name of the target list"; + } + } + } + } + container notification { + description + "Enable SNMP notifications"; + container snmp { + description + "SNMP notification configuration"; + leaf authentication { + type empty; + description + "Enable authentication notification"; + } + leaf cold-start { + type empty; + description + "Enable cold start notification"; + } + leaf warm-start { + type empty; + description + "Enable warm start notification"; + } + leaf enable { + type empty; + description + "Enable SNMP notifications"; + } + } + } + container correlator { + description + "Configure properties of the trap correlator"; + container rules { + description + "Table of configured rules"; + list rule { + key "name"; + description + "Rule name"; + container non-stateful { + description + "The Non-Stateful Rule Type"; + container root-causes { + description + "Table of configured rootcause (only one + entry allowed)"; + list root-cause { + key "oid"; + description + "The rootcause - maximum of one can be + configured per rule"; + leaf created { + type empty; + description + "Create rootcause"; + } + leaf oid { + type string; + description + "OID of rootcause trap (dotted decimal)"; + } + uses VAR-BIND-TABLE; + } + } + container non-root-causes { + description + "Table of configured non-rootcause"; + list non-root-cause { + key "oid"; + description + "A non-rootcause"; + leaf created { + type empty; + description + "Create nonrootcause"; + } + leaf oid { + type string; + description + "OID of nonrootcause trap (dotted decimal)"; + } + uses VAR-BIND-TABLE; + } + } + leaf timeout { + type uint32 { + range "1..600000"; + } + units "millisecond"; + description + "Timeout (time to wait for active + correlation) in milliseconds"; + } + } + leaf created { + type empty; + description + "Create rule"; + } + leaf name { + type string { + length "1..32"; + } + description + "Rule name"; + } + uses APPLIED-TO; + } + } + container rule-sets { + description + "Table of configured rulesets"; + list rule-set { + key "name"; + description + "Ruleset name"; + container rulenames { + description + "Table of configured rulenames"; + list rulename { + key "rulename"; + description + "A rulename"; + leaf rulename { + type string { + length "1..32"; + } + description + "Rule name"; + } + } + } + leaf name { + type string { + length "1..32"; + } + description + "Ruleset name"; + } + uses APPLIED-TO; + } + } + leaf buffer-size { + type uint32 { + range "1024..52428800"; + } + description + "Configure size of the correlator buffer"; + } + } + container bulk-stats { + description + "SNMP bulk stats configuration commands"; + container schemas { + description + "Configure schema definition"; + list schema { + key "schema-name"; + description + "The name of the Schema"; + container instance { + presence "Indicates a instance node is configured."; + description + "Object instance information"; + leaf type { + type Snmp-bulkstat-schema; + mandatory true; + description + "Type of the instance"; + } + leaf instance { + type xr:Interface-name; + description + "Instance of the schema"; + } + leaf start { + type string; + mandatory true; + description + "Start Instance OID for repetition"; + } + leaf end { + type string; + mandatory true; + description + "End Instance OID for repetition"; + } + leaf max { + type uint32; + mandatory true; + description + "Max value of Instance repetition"; + } + leaf sub-interface { + type boolean; + mandatory true; + description + "Include all the subinterface"; + } + } + leaf type { + type empty; + description + "Configure schema name"; + } + leaf schema-object-list { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of an object List"; + } + leaf poll-interval { + type uint32 { + range "1..20000"; + } + units "minute"; + description + "Periodicity for polling of objects in this + schema in minutes"; + } + leaf schema-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "The name of the schema"; + } + } + } + container objects { + description + "Configure an Object List "; + list object { + key "object-list-name"; + description + "Name of the object List"; + container objects { + description + "Configure an object List"; + list object { + key "oid"; + description + "Object name or OID"; + leaf oid { + type string; + description + "Object name or OID "; + } + } + } + leaf type { + type empty; + description + "Configure object list name"; + } + leaf object-list-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of the object List"; + } + } + } + container transfers { + description + "Periodicity for the transfer of bulk data in + minutes"; + list transfer { + key "transfer-name"; + description + "Name of bulk transfer"; + container transfer-schemas { + description + "Schema that contains objects to be collected"; + list transfer-schema { + key "schema-name"; + description + "Schema that contains objects to be collected"; + leaf schema-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Schema that contains objects to be + collected"; + } + } + } + leaf secondary { + type string; + description + "FTP or rcp or TFTP can be used for file + transfer"; + } + leaf type { + type empty; + description + "Configure transfer list name"; + } + leaf buffer-size { + type uint32 { + range "1024..2147483647"; + } + units "byte"; + description + "Bulkstat data file maximum size in bytes"; + } + leaf retain { + type uint32 { + range "0..20000"; + } + units "minute"; + description + "Retention period in minutes"; + } + leaf format { + type Snmp-bulkstat-file-format; + description + "Format of the bulk data file"; + } + leaf retry { + type uint32 { + range "0..100"; + } + description + "Number of transmission retries"; + } + leaf enable { + type empty; + description + "Start Data Collection for this Configuration"; + } + leaf primary { + type string; + description + "FTP or rcp or TFTP can be used for file + transfer"; + } + leaf interval { + type uint32; + units "minute"; + description + "Periodicity for the transfer of bulk data in + minutes"; + } + leaf transfer-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Name of bulk transfer"; + } + } + } + leaf memory { + type uint32 { + range "100..200000"; + } + units "kilobyte"; + description + "per process memory limit in kilo bytes"; + } + } + container default-community-maps { + description + "Container class to hold unencrpted community map"; + list default-community-map { + key "community-name"; + description + "Unencrpted SNMP community map name "; + leaf community-name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "SNMP community map"; + } + leaf context { + type string; + description + "SNMP Context Name "; + } + leaf security { + type string; + description + "SNMP Security Name "; + } + leaf target-list { + type string; + description + "target list name "; + } + } + } + container overload-control { + presence "Indicates a overload-control node is configured."; + description + "Set overload control params for handling + incoming messages"; + leaf drop-time { + type uint32 { + range "0..300"; + } + units "second"; + mandatory true; + description + "Drop time in seconds for incoming queue + (default 1 sec)"; + } + leaf throttle-rate { + type uint32 { + range "0..1000"; + } + units "millisecond"; + mandatory true; + description + "Throttle time in milliseconds for incoming + queue (default 500 msec)"; + } + } + container timeouts { + description + "SNMP timeouts"; + leaf duplicates { + type uint32 { + range "0..20"; + } + units "second"; + default "1"; + description + "Duplicate request feature timeout"; + } + leaf in-qdrop { + type uint32 { + range "0..20"; + } + units "second"; + default "10"; + description + "incoming queue drop feature timeout"; + } + leaf threshold { + type uint32 { + range "0..100000"; + } + units "second"; + default "50000"; + description + "Threshold request feature timeout"; + } + leaf subagent { + type uint32 { + range "1..20"; + } + units "second"; + default "10"; + description + "Sub-Agent Request timeout"; + } + leaf pdu-stats { + type uint32 { + range "1..10"; + } + units "second"; + default "2"; + description + "SNMP pdu statistics timeout"; + } + } + container users { + description + "Define a user who can access the SNMP engine"; + list user { + key "user-name"; + description + "Name of the user"; + leaf user-name { + type string; + description + "Name of the user"; + } + leaf group-name { + type string; + mandatory true; + description + "Group to which the user belongs"; + } + leaf version { + type User-snmp-version; + mandatory true; + description + "SNMP version to be used. v1,v2c or v3"; + } + leaf authentication-password-configured { + type empty; + description + "Flag to indicate that authentication password + is configred for version 3"; + } + leaf algorithm { + type Snmp-hash-algorithm; + description + "The algorithm used md5 or sha"; + } + leaf authentication-password { + type xr:Proprietary-password; + description + "The authentication password"; + } + leaf privacy-password-configured { + type empty; + description + "Flag to indicate that the privacy password is + configured for version 3"; + } + leaf priv-algorithm { + type Snmp-priv-algorithm; + description + "The algorithm used des56 or aes128 or aes192or + aes256 or 3des"; + } + leaf privacy-password { + type xr:Proprietary-password; + description + "The privacy password"; + } + leaf v4acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v4-access-list { + type string; + description + "Ipv4 Access-list name"; + } + leaf v6acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v6-access-list { + type string; + description + "Ipv6 Access-list name"; + } + leaf owner { + type Snmp-owner-access; + description + "The system access either SDROwner or + SystemOwner"; + } + leaf remote-address { + type inet:ip-address-no-zone; + description + "IP address of remote SNMP entity"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "UDP port number"; + } + leaf user-auth-type { + type uint32; + description + "User Authentication Type"; + } + leaf user-priv-auth-type { + type uint32; + description + "User Priv Authentication Type"; + } + } + } + container vrfs { + description + "SNMP VRF configuration commands"; + list vrf { + key "name"; + description + "VRF name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses TRAP-HOST-TABLE; + uses CONTEXT-TABLE; + uses CONTEXT-MAPPING-TABLE; + } + } + container snmp-tcp-vrfs { + description + "Enable TCP transport for SNMP"; + list snmp-tcp-vrf { + key "vrf-name"; + description + "Enable TCP transport for SNMP on vrf"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "vrf name"; + } + } + } + container groups { + description + "Define a User Security Model group"; + list group { + key "name"; + description + "Name of the group"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Name of the group"; + } + leaf snmp-version { + type Group-snmp-version; + mandatory true; + description + "snmp version"; + } + leaf security-model { + type Snmp-security-model; + description + "security model like auth/noAuth/Priv + applicable for v3"; + } + leaf notify-view { + type string; + description + "notify view name"; + } + leaf read-view { + type string; + description + "read view name"; + } + leaf write-view { + type string; + description + "write view name"; + } + leaf v4acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v4-access-list { + type string; + description + "Ipv4 Access-list name"; + } + leaf v6acl-type { + type Snmpacl; + description + "Access-list type"; + } + leaf v6-access-list { + type string; + description + "Ipv6 Access-list name"; + } + leaf context-name { + type string; + description + "Context name"; + } + } + } + leaf inform-retries { + type uint32 { + range "0..100"; + } + description + "Number of times to retry an Inform request + (default 3)"; + } + leaf trap-port { + type uint32 { + range "1024..65535"; + } + description + "Change the source port of all traps"; + } + leaf oid-poll-stats { + type empty; + description + "Enable Poll OID statistics"; + } + leaf trap-source { + type xr:Interface-name; + description + "Assign an interface for the source address of + all traps"; + } + leaf vrf-authentication-trap-disable { + type empty; + description + "Disable authentication traps for packets on a + vrf"; + } + leaf inform-timeout { + type uint32 { + range "1..42949671"; + } + units "second"; + description + "Timeout value in seconds for Inform request + (default 15 sec)"; + } + leaf trap-source-ipv6 { + type xr:Interface-name; + description + "Assign an interface for the source IPV6 address + of all traps"; + } + leaf packet-size { + type uint32 { + range "484..65500"; + } + description + "Largest SNMP packet size"; + } + leaf throttle-time { + type uint32 { + range "50..1000"; + } + description + "Throttle time for incoming queue (default 0 + msec)"; + } + leaf trap-source-ipv4 { + type xr:Interface-name; + description + "Assign an interface for the source address of + all traps"; + } + leaf inform-pending { + type uint32 { + range "0..4294967295"; + } + description + "Max nmber of informs to hold in queue, (default + 25)"; + } + uses TRAP-HOST-TABLE; + uses CONTEXT-TABLE; + uses CONTEXT-MAPPING-TABLE; + } + container mib { + description + "The heirarchy point for all the MIB + configurations"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub1.yang new file mode 100644 index 000000000..01b9895a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub1.yang @@ -0,0 +1,74 @@ +submodule Cisco-IOS-XR-snmp-agent-oper-sub1 { + belongs-to Cisco-IOS-XR-snmp-agent-oper { + prefix Cisco-IOS-XR-snmp-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping SNMP-IFINDEX-IFNAME { + description + "SNMP IFINDEX IFNAME"; + leaf interface-name { + type string; + description + "Interface Name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub2.yang new file mode 100644 index 000000000..cb1ef2113 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub2.yang @@ -0,0 +1,307 @@ +submodule Cisco-IOS-XR-snmp-agent-oper-sub2 { + belongs-to Cisco-IOS-XR-snmp-agent-oper { + prefix Cisco-IOS-XR-snmp-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Snmp-corr-vbind-match { + type enumeration { + enum "index" { + value 0; + description + "Match regexp to varbind index"; + } + enum "value" { + value 1; + description + "Match regexp to varbind value"; + } + } + description + "Snmp corr vbind match"; + } + + typedef Snmp-corr-rule-state { + type enumeration { + enum "rule-unapplied" { + value 0; + description + "Rule is in Unapplied state"; + } + enum "rule-applied" { + value 1; + description + "Rule is Applied to specified hosts"; + } + enum "rule-applied-all" { + value 2; + description + "Rule is Applied to all of router"; + } + } + description + "Snmp corr rule state"; + } + + grouping SNMP-CORR-VBIND { + description + "Varbind"; + leaf oid { + type string; + description + "OID of the varbind"; + } + leaf value { + type string; + description + "Value of the varbind"; + } + } + + grouping SNMP-CORR-TRAP-BAG { + description + "Trap Information"; + leaf oid { + type string; + description + "Object ID"; + } + leaf relative-timestamp { + type uint32; + units "second"; + description + "Number of hsecs elapsed since snmpd was started"; + } + leaf timestamp { + type uint64; + units "millisecond"; + description + "Time when the trap was generated. It is + expressed in number of milliseconds since 00:00 + :00 UTC, January 1, 1970"; + } + list var-bind { + description + "VarBinds on the trap"; + uses SNMP-CORR-VBIND; + } + } + + grouping SNMP-CORR-TRAP-BUFFER-BAG { + description + "Trap Buffer Record"; + container trap-info { + description + "Correlated trap information"; + uses SNMP-CORR-TRAP-BAG; + } + leaf correlation-id { + type uint32; + description + "Correlation ID"; + } + leaf is-root-cause { + type boolean; + description + "True if this is the rootcause"; + } + leaf rule-name { + type string; + description + "Correlation rule name"; + } + } + + grouping SNMP-CORR-RULESET-DETAIL-BAG { + description + "Correlation Ruleset detail information"; + leaf rule-set-name-xr { + type string; + description + "Ruleset Name"; + } + list rules { + description + "Rules contained in a ruleset"; + uses SNMP-CORR-RULE-SUMMARY-BAG; + } + } + + grouping SNMP-CORR-BUFFER-INFO-BAG { + description + "Correlator buffer usage information"; + leaf current-size { + type uint32; + description + "Current buffer usage"; + } + leaf configured-size { + type uint32; + description + "Configured buffer size"; + } + } + + grouping SNMP-CORR-HOST { + description + "Host Definition"; + leaf ip-address { + type string; + description + "IP address of the host"; + } + leaf port { + type uint16; + description + "Port of the host"; + } + } + + grouping SNMP-CORR-VBIND-MATCH { + description + "Varbind Match Parameters"; + leaf oid { + type string; + description + "OID of the varbind"; + } + leaf match-type { + type Snmp-corr-vbind-match; + description + "Varbind match type"; + } + leaf reg-exp { + type string; + description + "Regular expression to match"; + } + } + + grouping SNMP-CORR-TRAP-MATCH { + description + "Trap Match Definition"; + leaf oid { + type string; + description + "OID of the trap"; + } + list var-bind { + description + "VarBinds of the trap"; + uses SNMP-CORR-VBIND-MATCH; + } + } + + grouping SNMP-CORR-RULE-SUMMARY-BAG { + description + "Correlation Rule summary information"; + leaf rule-name { + type string; + description + "Correlation Rule Name"; + } + leaf rule-state { + type Snmp-corr-rule-state; + description + "Applied state of the rule It could be not + applied, applied or applied to all"; + } + leaf buffered-traps-count { + type uint32; + description + "Number of buffered traps correlated to this rule"; + } + } + + grouping SNMP-CORR-RULE-DETAIL-BAG { + description + "Correlation Rule detail information"; + container rule-summary { + description + "Rule summary, name, etc"; + uses SNMP-CORR-RULE-SUMMARY-BAG; + } + container root-cause { + description + "OID/VarBinds defining the rootcause match + conditions."; + uses SNMP-CORR-TRAP-MATCH; + } + leaf timeout { + type uint32; + description + "Time window (in ms) for which root/all messages + are kept in correlater before sending them to + hosts"; + } + list non-root-cause { + description + "OIDs/VarBinds defining the nonrootcause match + conditions."; + uses SNMP-CORR-TRAP-MATCH; + } + list apply-host { + description + "Hosts (IP/port) to which the rule is applied"; + uses SNMP-CORR-HOST; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub3.yang new file mode 100644 index 000000000..a198b8494 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub3.yang @@ -0,0 +1,1143 @@ +submodule Cisco-IOS-XR-snmp-agent-oper-sub3 { + belongs-to Cisco-IOS-XR-snmp-agent-oper { + prefix Cisco-IOS-XR-snmp-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Dup-req-drop-status { + type enumeration { + enum "disabled" { + description + "Disabled"; + } + enum "enabled" { + description + "Enabled"; + } + } + description + "Dup req drop status"; + } + + grouping SNMP-TRAPQUE { + description + "SNMP Trap queue statistics"; + leaf trap-min { + type uint32; + description + "trap min"; + } + leaf trap-avg { + type uint32; + description + "trap avg"; + } + leaf trap-max { + type uint32; + description + "trap max"; + } + list trap-q { + max-elements "300"; + description + "trap q"; + uses SNMP-QUEUE; + } + } + + grouping SNMP-SYSOBJID { + description + "SNMP sysObjID"; + leaf sys-obj-id { + type string; + description + "sysObjID 1.3.6.1.2.1.1.2"; + } + } + + grouping SNMP-SYSDESCR { + description + "SNMP sysDescr"; + leaf sys-descr { + type string; + description + "sysDescr 1.3.6.1.2.1.1.1"; + } + } + + grouping SNMP-UDP-STATS-INFO { + description + "SNMP udp_statistics"; + leaf in-event { + type uint32; + description + "Event"; + } + leaf in-buferr { + type uint32; + description + "Buffer Error"; + } + leaf in-node { + type uint32; + description + "No Data"; + } + leaf in-recverr { + type uint32; + description + "Receive Error"; + } + leaf in-badarg { + type uint32; + description + "Invalid Argument"; + } + leaf in-pkt { + type uint32; + description + "Packet"; + } + leaf inm-badarg { + type uint32; + description + "Invalid Argument"; + } + leaf inm-pac-conn { + type uint32; + description + "Packet connection error"; + } + leaf inm-pak-nodata { + type uint32; + description + "Packet no data"; + } + leaf inm-pak-recerr { + type uint32; + description + "Packet receive error"; + } + leaf inm-pak-null { + type uint32; + description + "Packet Null"; + } + leaf inm-pak-vrfid { + type uint32; + description + "Packet VRF error"; + } + leaf inm-pak-tblid { + type uint32; + description + "Packet table error"; + } + leaf inm-pak-ifinput { + type uint32; + description + "Packet ifinput error"; + } + leaf inm-pak-offnet { + type uint32; + description + "Packet network Offset error"; + } + leaf inm-pak-readnet { + type uint32; + description + "Packet network read error"; + } + leaf inm-pak-offtrans { + type uint32; + description + "Packet transport offset error"; + } + leaf inm-pak-readtrans { + type uint32; + description + "Packet read transport error "; + } + leaf inm-pak-offapp { + type uint32; + description + "Packet application offset error"; + } + leaf inm-pak-readapp { + type uint32; + description + "Packet application read error"; + } + leaf inm-pak-trunc { + type uint32; + description + "Packet Truncated"; + } + leaf out-toobig { + type uint32; + description + "Too Big"; + } + leaf out-pkt { + type uint32; + description + "Packet"; + } + leaf out-senderr { + type uint32; + description + "Send Error"; + } + leaf outm-badarg { + type uint32; + description + "Invalid argument"; + } + leaf outm-pak-buf { + type uint32; + description + "Packet Buffer Error"; + } + leaf outm-pak-vrfid { + type uint32; + description + "Packet VRF Error"; + } + leaf outm-pak-tblid { + type uint32; + description + "Packet table error"; + } + leaf outm-pak-write { + type uint32; + description + "Packet write error"; + } + leaf outm-pak-trunc { + type uint32; + description + "Packet connection Error"; + } + leaf outm-pak-conn { + type uint32; + description + "Packet Send Error"; + } + } + + grouping SNMP-PDU-DROP-STATS { + description + "SNMP Agent Req PDU Drop Stats"; + leaf nms-address { + type string; + description + "NMS address of server"; + } + leaf incoming-q-count { + type uint32; + description + "Drop Count at Incoming Q"; + } + leaf threshold-incoming-q-count { + type uint32; + description + "Drop Count at Incoming Q after threshold limit"; + } + leaf encode-count { + type uint32; + description + "Drop Count with Encode errors"; + } + leaf duplicate-count { + type uint32; + description + "Duplicate request drop count"; + } + leaf stack-count { + type uint32; + description + "Drop Count at snmp Stack"; + } + leaf aipc-count { + type uint32; + description + "drop count with AIPC Buffer Full"; + } + leaf overload-count { + type uint32; + description + "Drop Count with overload notification"; + } + leaf timeout-count { + type uint32; + description + "Drop count with timeout"; + } + leaf internal-count { + type uint32; + description + " drop with Internal Errors"; + } + } + + grouping SNMP-PDU-STATS { + description + "SNMP PDU STATS"; + leaf nms { + type string; + description + " NMS address Rx PDU"; + } + leaf request-id { + type uint32; + description + " SNMP request id per PDU"; + } + leaf port-xr { + type uint16; + description + "NMS port number"; + } + leaf pdu-type { + type uint16; + description + " PDU type"; + } + leaf error-status { + type uint16; + description + "Is reques dropped due to error"; + } + leaf serial-num { + type uint32; + description + "Serial number per PDU processing"; + } + leaf input-q { + type string; + description + "Request inserted into input queue"; + } + leaf output-q { + type uint32; + description + "De-queue the request from the input queue"; + } + leaf pending-q { + type uint32; + description + "Enqueue the request into pending queue"; + } + leaf response-out { + type uint32; + description + "Response sent"; + } + } + + grouping SNMP-MIB-INFO { + description + "SNMP MIB Information"; + leaf mib-name { + type string; + description + "Name of the MIB module"; + } + leaf dll-name { + type string; + description + "MIB DLL filename, non-DLL MIBs will have no + value"; + } + leaf mib-config-filename { + type string; + description + "MIB config filename, non-DLL MIBs will have no + value"; + } + leaf is-mib-loaded { + type boolean; + description + "TRUE if MIB DLL is currently loaded, will always + be TRUE for non-DLL MIBs"; + } + leaf dll-capabilities { + type uint32; + description + "DLL capabilities"; + } + leaf trap-strings { + type string; + description + "List of trapstring configured"; + } + leaf timeout { + type boolean; + description + "TRUE is mib is in phase 1 timeout"; + } + leaf load-time { + type uint32; + description + "Load time"; + } + } + + grouping SNMP-TRAPS-COUNT { + description + "SNMP TRAPS COUNT"; + leaf trap-oid-count { + type uint32; + description + "Total number of OID's sent"; + } + leaf trap-oid-xr { + type string; + description + "TRAP OID"; + } + } + + grouping SNMP-CTX-MAPPING-ENTRY-XML { + description + "SNMP context mapping entry xml"; + leaf context { + type string; + description + "Context name"; + } + leaf feature-name { + type string; + description + "Feature name"; + } + leaf instance { + type string; + description + "Instance name"; + } + leaf topology { + type string; + description + "Topology name"; + } + leaf feature { + type string; + description + "Feature"; + } + } + + grouping SNMP-CTX-MAPPING-XML { + description + "SNMP context mapping"; + list contex-mapping { + description + "Context Mapping"; + uses SNMP-CTX-MAPPING-ENTRY-XML; + } + } + + grouping SNMP-INQ-DETAIL { + description + "SNMP Address Information"; + leaf address-of-queue { + type string; + description + "Address of NMS Q"; + } + leaf request-count { + type uint32; + description + "Request Count of Each Queue."; + } + leaf processed-request-count { + type uint32; + description + "Processed request Count."; + } + leaf last-access-time { + type string; + description + "Last Access time of Each Queue."; + } + leaf priority { + type uint8; + description + "Priority of Each Queue."; + } + } + + grouping SNMP-INCOMING-Q-STATS-ENTRY { + description + "SNMP IncomingQ Stats Entry"; + leaf queue-count { + type uint32; + description + "Number of NMS Queues Exist."; + } + list inq-entry { + max-elements "16"; + description + "Each Entry Details."; + uses SNMP-INQ-DETAIL; + } + } + + grouping SNMP-STATS { + description + "SNMP statistics"; + leaf packets-received { + type uint32; + description + "snmpInPkts"; + } + leaf bad-versions-received { + type uint32; + description + "snmpInBadVersions"; + } + leaf bad-community-names-received { + type uint32; + description + "snmpInBadCommunityNames"; + } + leaf bad-community-uses-received { + type uint32; + description + "snmpInBadCommunityUses"; + } + leaf asn-parse-errors-received { + type uint32; + description + "snmpInASNParseErrs"; + } + leaf silent-drop-count { + type uint32; + description + "snmpSilentDrops"; + } + leaf proxy-drop-count { + type uint32; + description + "snmpProxyDrops"; + } + leaf too-big-packet-received { + type uint32; + description + "snmpInTooBigs"; + } + leaf max-packet-size { + type uint32; + description + "snmp maximum packet size"; + } + leaf no-such-names-received { + type uint32; + description + "snmpInNoSuchNames"; + } + leaf bad-values-received { + type uint32; + description + "snmpInBadValues"; + } + leaf read-only-received { + type uint32; + description + "snmpInReadOnlys"; + } + leaf total-general-errors { + type uint32; + description + "snmpInGenErrs"; + } + leaf total-requested-variables { + type uint32; + description + "snmpInTotalReqVars"; + } + leaf total-set-variables-received { + type uint32; + description + "snmpInTotalSetVars"; + } + leaf get-requests-received { + type uint32; + description + "snmpInGetRequests"; + } + leaf get-next-requests-received { + type uint32; + description + "snmpInGetNexts"; + } + leaf set-requests-received { + type uint32; + description + "snmpInSetRequests"; + } + leaf get-responses-received { + type uint32; + description + "snmpInGetResponses"; + } + leaf traps-received { + type uint32; + description + "snmpInTraps"; + } + leaf total-packets-sent { + type uint32; + description + "snmpOutPkts"; + } + leaf too-big-packets-sent { + type uint32; + description + "snmpOutTooBigs"; + } + leaf no-such-names-sent { + type uint32; + description + "snmpOutNoSuchNames"; + } + leaf bad-values-sent { + type uint32; + description + "snmpOutBadValues"; + } + leaf general-errors-sent { + type uint32; + description + "snmpOutGenErrs"; + } + leaf get-requests-sent { + type uint32; + description + "snmpOutGetRequests"; + } + leaf get-next-request-sent { + type uint32; + description + "snmpOutGetNexts"; + } + leaf set-requests-sent { + type uint32; + description + "snmpOutSetRequests"; + } + leaf get-responses-sent { + type uint32; + description + "snmpOutGetResponses"; + } + leaf traps-sent { + type uint32; + description + "snmpOutTraps"; + } + } + + grouping SNMP-TRAP-OID-INFO { + description + "SNMP TRAP OID INFO"; + leaf trap-oid { + type string; + description + "TRAP OID"; + } + leaf count { + type uint32; + description + "Number of traps sent"; + } + leaf drop-count { + type uint32; + description + "Number of Traps Dropped at InternalQ"; + } + leaf drop-host-count { + type uint32; + description + "Number of Traps Dropped at HostQ"; + } + leaf drop-delay-timer { + type uint32; + description + "Number of Traps Dropped due to trap delay timer + expiry"; + } + leaf retry-count { + type uint32; + description + "Num of times retry"; + } + leaf lastsent-time { + type string; + description + "Timestamp of latest successfully sent"; + } + leaf lastdrop-time { + type string; + description + "Timestamp of latest dropped"; + } + leaf last-hostdrop-time { + type string; + description + "Timestamp of latest dropped at host"; + } + leaf last-host-delay-time { + type string; + description + "Timestamp of latest dropped due to delay timer + expiry"; + } + } + + grouping SNMP-TRAPS-INFO { + description + "SNMP TRAPS INFO"; + leaf host { + type string; + description + "NMS/Host address"; + } + leaf port-xr { + type uint16; + description + "udp port number"; + } + leaf vrf-name { + type string; + description + "vrf name"; + } + leaf time { + type uint32; + description + "Trap delay time Left"; + } + leaf trap-oid-count { + type uint32; + description + "Total number of OID's sent"; + } + list trap-oi-dinfo { + description + "Per trap OID statistics"; + uses SNMP-TRAP-OID-INFO; + } + } + + grouping SNMP-BULKSTATS-B { + description + "SNMP Bulkstats transfer Information"; + leaf transfer-name-xr { + type string; + description + "Name of the bulkstats transfer session"; + } + leaf url-primary { + type string; + description + "Bulkstats transfer primary URL"; + } + leaf url-secondary { + type string; + description + "Bulkstats transfer secondary URL"; + } + leaf retained-file { + type string; + description + "Bulkstats transfer retained file name"; + } + leaf time-left { + type uint32; + units "second"; + description + "Bulkstats transfer retry time left in seconds"; + } + leaf retry-left { + type uint32; + description + "Bulkstats transfer retry attempt left"; + } + } + + grouping SNMP-STATISTICS { + description + "SNMP Statistics extension"; + leaf duplicate-request-status { + type Dup-req-drop-status; + description + "Duplicate requests drop feature status."; + } + leaf last-status-change-time { + type string; + description + "Duplicate request drop feature last enable + disable time (Day Mon Date HH:MM:SS)"; + } + leaf duplicate-drop-configured-timeout { + type uint32; + description + "Configured Duplicate Drop feature Timeout."; + } + leaf duplicate-dropped-requests { + type uint32; + description + "Number of duplicate SNMP requests are dropped."; + } + leaf retry-processed-requests { + type uint32; + description + "Number of Retry SNMP requests are Processed."; + } + leaf first-enable-time { + type string; + description + "Duplicate request drop feature first enable + time (Day Mon Date HH:MM:SS)"; + } + leaf latest-duplicate-dropped-requests { + type uint32; + description + "Number of duplicate SNMP requests dropped, from + the last enable time."; + } + leaf latest-retry-processed-requests { + type uint32; + description + "Number of retry SNMP requests processed, from + the last enable time."; + } + leaf duplicate-request-latest-enable-time { + type string; + description + "Duplicate request drop feature last enable + time(Day Mon Date HH:MM:SS)"; + } + leaf duplicate-drop-enable-count { + type uint32; + description + " Number of times duplicate request drop feature + is enabled."; + } + leaf duplicate-drop-disable-count { + type uint32; + description + " Number of times duplicate request drop feature + is disabled."; + } + } + + grouping SNMP-Q-STATS-B { + description + "SNMP incomming/processing queue statistics"; + leaf total-count { + type uint32; + description + "Total request count for each managment station + or client"; + } + leaf agent-request-count { + type uint32; + description + "Processing agent request count for each client + for particluar managment station"; + } + leaf interface-request-count { + type uint32; + description + "Processing interfce request count for each + client for particluar managment station"; + } + leaf entity-request-count { + type uint32; + description + "Processing entity request count for each client + for particluar managment station"; + } + leaf route-request-count { + type uint32; + description + "Processing route request count for each client + for particluar Managment station"; + } + leaf infra-request-count { + type uint32; + description + "Processing infra request count for each client + for particluar Managment station"; + } + } + + grouping SNMP-SYSNAME { + description + "SNMP sysName"; + leaf system-name { + type string; + description + "sysName 1.3.6.1.2.1.1.5"; + } + } + + grouping SNMP-QUEUE { + description + "SNMP QUEUE"; + leaf min { + type uint32; + description + "min"; + } + leaf avg { + type uint32; + description + "avg"; + } + leaf max { + type uint32; + description + "max"; + } + } + + grouping SNMP-RXQUE { + description + "SNMP Incoming queue statistics"; + leaf qlen { + type uint32; + description + "qlen"; + } + leaf in-min { + type uint32; + description + "in min"; + } + leaf in-avg { + type uint32; + description + "in avg"; + } + leaf in-max { + type uint32; + description + "in max"; + } + leaf pend-min { + type uint32; + description + "pend min"; + } + leaf pend-avg { + type uint32; + description + "pend avg"; + } + leaf pend-max { + type uint32; + description + "pend max"; + } + list incoming-q { + max-elements "300"; + description + "incoming q"; + uses SNMP-QUEUE; + } + list pending-q { + max-elements "300"; + description + "pending q"; + uses SNMP-QUEUE; + } + } + + grouping SNMP-SUB-AGENT-MIB-OBJ-INFO { + description + "SNMP SubAgent MIB object detail"; + leaf object-name { + type string; + description + "Name of MIB object"; + } + } + + grouping SNMP-SUB-AGENT-MIB-INFO { + description + "SNMP SubAgent MIB details"; + leaf mib-name { + type string; + description + "Name of the SubAgent MIB module"; + } + list mib-object-name { + description + "Object Names in MIB"; + uses SNMP-SUB-AGENT-MIB-OBJ-INFO; + } + } + + grouping SNMP-SUB-AGENT-GROUP-INFO { + description + "SNMP sub-agent Details"; + leaf sub-agent-group { + type string; + description + "Snmp SubAgent name"; + } + leaf sub-agent-client-id { + type uint16; + description + "Client ID of SubAgent"; + } + leaf mib-count { + type uint16; + description + "Total Number of MIB in each SubAgent"; + } + list mib-detail { + description + "MIB details (MIB name, OID count and Object + Names)"; + uses SNMP-SUB-AGENT-MIB-INFO; + } + } + + grouping SNMP-ENGINEID { + description + "SNMPv3 engineID Information"; + leaf engine-id { + type string; + description + "SNMPv3 engineID"; + } + } + + grouping SNMP-REQ-NMS-SUM { + description + "SNMP Agent Req NMS Summary "; + leaf nms-address { + type string; + description + "NMS address of server"; + } + leaf get-request-count { + type uint32; + description + "Get Request Count"; + } + leaf getnext-request-count { + type uint32; + description + "Getnext Request Count"; + } + leaf getbulk-request-count { + type uint32; + description + "Getbulk Request Count"; + } + leaf set-request-count { + type uint32; + description + "Set Request Count"; + } + leaf test-request-count { + type uint32; + description + "Test Request Count"; + } + } + + grouping SNMP-SUB-AGENT-INFO { + description + "SNMP SubAgent Details"; + leaf sub-agent-group { + type string; + description + "Snmp SubAgent Name"; + } + leaf sub-agent-client-id { + type uint16; + description + "Client ID of SubAgent"; + } + leaf mib-count { + type uint16; + description + "Total Number of MIB in each SubAgent"; + } + } + + grouping SNMP-SYSUPTIME-EDM { + description + "SNMP sysUpTime in days time format for edm"; + leaf system-up-time-edm { + type string; + description + "sysUpTime 1.3.6.1.2.1.1.3"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub4.yang new file mode 100644 index 000000000..0c7b8f72a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub4.yang @@ -0,0 +1,159 @@ +submodule Cisco-IOS-XR-snmp-agent-oper-sub4 { + belongs-to Cisco-IOS-XR-snmp-agent-oper { + prefix Cisco-IOS-XR-snmp-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping SNMP-USM-USER-ENTRY { + description + "SNMP usmUserTable Information"; + leaf usm-user-storage-type { + type uint32; + description + "Storage type"; + } + leaf usm-user-status { + type uint32; + description + "Status of this user"; + } + } + + grouping SNMP-VACM-ACCESS-ENTRY { + description + "SNMP vacmAccessTable Information"; + leaf vacm-access-read-view-name { + type string; + description + "Read view name"; + } + leaf vacm-access-write-view-name { + type string; + description + "Write view name"; + } + leaf vacm-access-notify-view-name { + type string; + description + "Notify view name"; + } + leaf vacm-access-status { + type uint32; + description + "Status of this view configuration"; + } + } + + grouping SNMP-SNMP-VIEW-XML-ENTRY { + description + "SNMP SNMPViewXmlTable Information"; + leaf snmp-view-family-type { + type string; + description + "Include or exclude"; + } + leaf snmp-view-family-storage-type { + type string; + description + "Storage type"; + } + leaf snmp-view-family-status { + type string; + description + "Status of this entry"; + } + } + + grouping SNMP-SNMP-HOST-XML { + description + "SNMP host xml information"; + leaf snmp-target-address-t-host { + type string; + description + "Transport type of address"; + } + leaf snmp-target-address-port { + type string; + description + "Target UDP port"; + } + leaf snmp-target-addresstype { + type string; + description + "Target host type (Inform or Trap)"; + } + leaf snmp-target-params-security-model { + type string; + description + "Security model"; + } + leaf snmp-target-params-security-name { + type string; + description + "Security name"; + } + leaf snmp-target-params-security-level { + type string; + description + "Security level"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub5.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub5.yang new file mode 100644 index 000000000..b03d06abf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub5.yang @@ -0,0 +1,90 @@ +submodule Cisco-IOS-XR-snmp-agent-oper-sub5 { + belongs-to Cisco-IOS-XR-snmp-agent-oper { + prefix Cisco-IOS-XR-snmp-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping SNMP-OVERLOAD-STATS { + description + "SNMP Overload statastics"; + leaf number-of-nmsq-pkts-dropped { + type uint32; + description + "Number of packets which are currently enqueued + within the NMS queues"; + } + leaf number-of-pkts-dropped { + type uint32; + description + "Number of packets dropped"; + } + leaf overload-start-time { + type string; + description + "Time of overload contol begin"; + } + leaf overload-end-time { + type string; + description + "Time of overload contol End"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub6.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub6.yang new file mode 100644 index 000000000..f6e4bdc4e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub6.yang @@ -0,0 +1,92 @@ +submodule Cisco-IOS-XR-snmp-agent-oper-sub6 { + belongs-to Cisco-IOS-XR-snmp-agent-oper { + prefix Cisco-IOS-XR-snmp-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Nms-ip { + type string; + description + "Nms ip"; + } + + grouping SNMP-OID-STATS-B { + description + "SNMP incomming/processing queue statistics"; + leaf nms-count { + type uint32; + description + " Managment station count"; + } + leaf-list nms { + type Nms-ip; + max-elements "15"; + description + "Network Managment station ipadress"; + } + leaf-list request-count { + type uint32; + max-elements "15"; + description + "OID request count for each Managment station "; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub7.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub7.yang new file mode 100644 index 000000000..d843d5640 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper-sub7.yang @@ -0,0 +1,89 @@ +submodule Cisco-IOS-XR-snmp-agent-oper-sub7 { + belongs-to Cisco-IOS-XR-snmp-agent-oper { + prefix Cisco-IOS-XR-snmp-agent-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-agent package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping SNMP-TRAP-STATS { + description + "SNMP Trap statistics"; + leaf number-of-pkts-in-trap-q { + type uint32; + description + "No. of trap packets in trapQ"; + } + leaf max-q-length-of-trap-q { + type uint32; + description + "Maximum Queue length of trapQ"; + } + leaf number-of-pkts-sent { + type uint32; + description + "No. of trap packets sent"; + } + leaf number-of-pkts-dropped { + type uint32; + description + "No. of trap packets dropped"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper.yang new file mode 100644 index 000000000..4076fe9d8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-agent-oper.yang @@ -0,0 +1,655 @@ +module Cisco-IOS-XR-snmp-agent-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-agent-oper"; + prefix snmp-agent-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-snmp-agent-oper-sub7 { + revision-date 2020-09-15; + } + include Cisco-IOS-XR-snmp-agent-oper-sub6 { + revision-date 2020-09-15; + } + include Cisco-IOS-XR-snmp-agent-oper-sub5 { + revision-date 2020-09-15; + } + include Cisco-IOS-XR-snmp-agent-oper-sub4 { + revision-date 2020-09-15; + } + include Cisco-IOS-XR-snmp-agent-oper-sub3 { + revision-date 2020-09-15; + } + include Cisco-IOS-XR-snmp-agent-oper-sub2 { + revision-date 2020-09-15; + } + include Cisco-IOS-XR-snmp-agent-oper-sub1 { + revision-date 2020-09-15; + } + + 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 snmp-agent package operational data. + + This module contains definitions + for the following management objects: + snmp: SNMP operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-15 { + description + "Updated oper path for show snmp traps details"; + semver:module-version "2.0.0"; + } + revision 2020-03-31 { + description + "Fixing backward compatibility error in module."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-07-20 { + description + "Fixed English plural name transformation error."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-06-01 { + description + "IOS XR 6.0.1 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container snmp { + config false; + description + "SNMP operational data"; + container trap-servers { + description + "List of trap hosts"; + list trap-server { + description + "Trap server and port to which the trap is to be + sent and statistics"; + leaf trap-host { + type string; + description + "Trap Host"; + } + leaf port { + type inet:port-number; + description + "Trap port"; + } + uses SNMP-TRAP-STATS; + } + } + container information { + description + "SNMP operational information"; + container hosts { + description + "SNMP host information"; + list host { + key "name"; + description + "SNMP target host name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Group name"; + } + list host-information { + key "user"; + description + "Host name ,udp-port , user, security model + and level"; + leaf user { + type xr:Cisco-ios-xr-string; + description + "SNMP host user"; + } + uses SNMP-SNMP-HOST-XML; + } + } + } + container system-up-time { + description + "System up time"; + uses SNMP-SYSUPTIME-EDM; + } + container sub-agent-names { + description + "SNMP sub-agent details"; + list sub-agent-name { + key "sub-agent-name"; + description + "Subagent Name"; + leaf sub-agent-name { + type xr:Cisco-ios-xr-string; + description + "Subagent Name"; + } + uses SNMP-SUB-AGENT-INFO; + } + } + container nms-addresses { + description + "SNMP request type summary "; + list nms-address { + key "nms-addr"; + description + "NMS address"; + leaf nms-addr { + type xr:Cisco-ios-xr-string; + description + "NMS address"; + } + uses SNMP-REQ-NMS-SUM; + } + } + container engine-id { + description + "SNMP engine ID"; + uses SNMP-ENGINEID; + } + container sub-agent-group-names { + description + "SNMP sub-agent details"; + list sub-agent-group-name { + key "sub-agent-group-name"; + description + "Subagent Group Name"; + leaf sub-agent-group-name { + type xr:Cisco-ios-xr-string; + description + "Subagent Group Name"; + } + uses SNMP-SUB-AGENT-GROUP-INFO; + } + } + container rx-queue { + description + "SNMP rx queue statistics"; + uses SNMP-RXQUE; + } + container system-name { + description + "System name"; + uses SNMP-SYSNAME; + } + container request-type-detail { + description + "SNMP request type details "; + container nms-addresses { + description + "snmp request type details "; + list nms-address { + key "nms-addr"; + description + "NMS address"; + leaf nms-addr { + type xr:Cisco-ios-xr-string; + description + "NMS address"; + } + uses SNMP-Q-STATS-B; + } + } + } + container duplicate-drop { + description + "Duplicate request status, count, time "; + uses SNMP-STATISTICS; + } + container bulk-stats-transfers { + description + "List of bulkstats transfer on the system"; + list bulk-stats-transfer { + key "transfer-name"; + description + "SNMP bulkstats transfer name"; + leaf transfer-name { + type xr:Cisco-ios-xr-string; + description + "Transfer name"; + } + uses SNMP-BULKSTATS-B; + } + } + container trap-infos { + description + "SNMP trap OID"; + list trap-info { + description + "SNMP Trap infomation like server , port and + trapOID"; + leaf trap-host { + type string; + description + "Trap Host"; + } + leaf port { + type inet:port-number; + description + "Trap port"; + } + uses SNMP-TRAPS-INFO; + } + } + container poll-oids { + description + "OID list for poll PDU"; + list poll-oid { + key "object-id"; + description + "PDU drop info for OID"; + leaf object-id { + type xr:Cisco-ios-xr-string; + description + "Object ID"; + } + uses SNMP-OID-STATS-B; + } + } + container infom-details { + description + "SNMP trap OID"; + list infom-detail { + description + "SNMP Trap infomation like server , port and + trapOID"; + leaf trap-host { + type string; + description + "Trap Host"; + } + leaf port { + type inet:port-number; + description + "Trap port"; + } + uses SNMP-TRAPS-INFO; + } + } + container statistics { + description + "SNMP statistics"; + uses SNMP-STATS; + } + container incoming-queue { + description + "Incoming queue details "; + uses SNMP-INCOMING-Q-STATS-ENTRY; + } + container context-mapping { + description + "Context name, features name, topology name, + instance"; + uses SNMP-CTX-MAPPING-XML; + } + container trap-oids { + description + "SNMP trap OID"; + list trap-oid { + key "trap-oid"; + description + "SNMP trap "; + leaf trap-oid { + type xr:Cisco-ios-xr-string; + description + "Trap object ID"; + } + uses SNMP-TRAPS-COUNT; + } + } + container nm-spackets { + description + "SNMP overload statistics "; + list nm-spacket { + key "packetcount"; + description + "NMS packet drop count"; + leaf packetcount { + type xr:Cisco-ios-xr-string; + description + "NMS packet drop count"; + } + uses SNMP-OVERLOAD-STATS; + } + } + container mibs { + description + "List of MIBS supported on the system"; + list mib { + key "name"; + description + "SNMP MIB Name"; + container oids { + description + "List of OIDs per MIB"; + list oid { + key "oid"; + description + "Object identifiers of a mib"; + leaf oid { + type string; + description + "Object Identifier"; + } + leaf oid-name { + type string; + mandatory true; + description + "MIB OID Name"; + } + } + } + container mib-information { + description + "MIB state and information"; + uses SNMP-MIB-INFO; + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "MIB Name"; + } + } + } + container serial-numbers { + description + "SNMP statistics pdu "; + list serial-number { + description + "Serial number"; + leaf number { + type xr:Cisco-ios-xr-string; + description + "Serial number"; + } + leaf req-id { + type uint32; + description + "Request ID"; + } + leaf port { + type inet:port-number; + description + "Port"; + } + uses SNMP-PDU-STATS; + } + } + container drop-nms-addresses { + description + "NMS list for drop PDU"; + list drop-nms-address { + key "nms-addr"; + description + "PDU drop info for NMS"; + leaf nms-addr { + type xr:Cisco-ios-xr-string; + description + "NMS address"; + } + uses SNMP-PDU-DROP-STATS; + } + } + container views { + description + "SNMP view information"; + list view { + key "name"; + description + "SNMP target view name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "View name"; + } + list view-information { + key "object-id"; + description + "View name ,familytype, storagetype and status"; + leaf object-id { + type xr:Cisco-ios-xr-string; + description + "SNMP view OID"; + } + uses SNMP-SNMP-VIEW-XML-ENTRY; + } + } + } + container udp-statistics { + description + "SNMP UDP statistics"; + uses SNMP-UDP-STATS-INFO; + } + container system-descr { + description + "System description"; + uses SNMP-SYSDESCR; + } + container tables { + description + "List of table"; + container groups { + description + "List of vacmAccessTable"; + list group { + key "name"; + description + "SNMP group name"; + container group-informations { + description + "Group Model"; + list group-information { + description + "Group name ,status and information"; + leaf modelnumber { + type xr:Cisco-ios-xr-string; + description + "Model number"; + } + leaf level { + type xr:Cisco-ios-xr-string; + description + "Level"; + } + uses SNMP-VACM-ACCESS-ENTRY; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Group Name"; + } + } + } + container user-engine-ids { + description + "List of User"; + list user-engine-id { + key "engine-id"; + description + "SNMP engineId"; + leaf engine-id { + type xr:Cisco-ios-xr-string; + description + "SNMP Engine ID"; + } + list user-name { + key "user-name"; + description + "User name ,storage type ,status "; + leaf user-name { + type xr:Cisco-ios-xr-string; + description + "User name"; + } + uses SNMP-USM-USER-ENTRY; + } + } + } + } + container system-oid { + description + "System object ID"; + uses SNMP-SYSOBJID; + } + container trap-queue { + description + "SNMP trap queue statistics"; + uses SNMP-TRAPQUE; + } + } + container interfaces { + description + "List of interfaces"; + list interface { + key "name"; + description + "Interface Name"; + leaf name { + type xr:Interface-name; + description + "Interface Name"; + } + leaf interface-index { + type uint32; + mandatory true; + description + "Interface Index as used by MIB tables"; + } + } + } + container correlator { + description + "Trap Correlator operational data"; + container rule-details { + description + "Table that contains the database of correlation + rule details"; + list rule-detail { + key "rule-name"; + description + "Details of one of the correlation rules"; + leaf rule-name { + type string { + length "1..32"; + } + description + "Correlation Rule Name"; + } + uses SNMP-CORR-RULE-DETAIL-BAG; + } + } + container buffer-status { + description + "Describes buffer utilization and parameters + configured"; + uses SNMP-CORR-BUFFER-INFO-BAG; + } + container rule-set-details { + description + "Table that contains the ruleset detail info"; + list rule-set-detail { + key "rule-set-name"; + description + "Detail of one of the correlation rulesets"; + leaf rule-set-name { + type string { + length "1..32"; + } + description + "Ruleset Name"; + } + uses SNMP-CORR-RULESET-DETAIL-BAG; + } + } + container traps { + description + "Correlated traps Table"; + list trap { + key "entry-id"; + description + "One of the correlated traps"; + leaf entry-id { + type uint32; + description + "Entry ID"; + } + uses SNMP-CORR-TRAP-BUFFER-BAG; + } + } + } + container interface-indexes { + description + "List of index"; + list interface-index { + key "interface-index"; + description + "Interface Index"; + leaf interface-index { + type uint32; + description + "Interface Index as used by MIB tables"; + } + leaf interface-name { + type string; + mandatory true; + description + "Interface Name"; + } + } + } + container if-indexes { + description + "List of ifnames"; + list if-index { + key "interface-index"; + description + "Interface Index"; + leaf interface-index { + type uint32; + description + "Interface Index as used by MIB tables"; + } + uses SNMP-IFINDEX-IFNAME; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-bridgemib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-bridgemib-cfg.yang new file mode 100644 index 000000000..dbe1cf515 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-bridgemib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-snmp-bridgemib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-bridgemib-cfg"; + prefix snmp-bridgemib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-bridgemib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container bridge { + description + "BRIDGE-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable dot1dBridge notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg.yang new file mode 100644 index 000000000..0877d56e4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-ciscopkimib-traps-cfg"; + prefix snmp-ciscopkimib-traps-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-ciscopkimib-traps package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + leaf pki { + type empty; + description + "Enable Enable SNMP traps for certificate expiry"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscosensormib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscosensormib-cfg.yang new file mode 100644 index 000000000..34205ef84 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ciscosensormib-cfg.yang @@ -0,0 +1,79 @@ +module Cisco-IOS-XR-snmp-ciscosensormib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-ciscosensormib-cfg"; + prefix snmp-ciscosensormib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-ciscosensormib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-25 { + description + "Removed deprecated command CSCvx05102"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + leaf sensor-mib-cache { + type empty; + description + "Get cached Sesnsor MIB statistics"; + } + } + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container sensor { + description + "CISCO-ENTITY-SENSOR-MIB notification + configuration"; + leaf enable { + type empty; + description + "Enable entitySensorMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entityextmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entityextmib-cfg.yang new file mode 100644 index 000000000..a494d548f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entityextmib-cfg.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-snmp-entityextmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-entityextmib-cfg"; + prefix snmp-entityextmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-entityextmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container cisco-entity-ext { + description + "Enable CISCO-ENTITY-EXT-MIB notifications"; + leaf enable { + type empty; + description + "Enable CISCO-ENTITY-EXT-MIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-cfg.yang new file mode 100644 index 000000000..5cbccc23a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-cfg.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-snmp-entitymib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-entitymib-cfg"; + prefix snmp-entitymib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-entitymib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container entity-mib { + description + "Entity MIB"; + leaf entity-index-persistence { + type empty; + description + "Enable entPhysicalIndex persistence"; + } + } + } + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container entity { + description + "Enable ENTITY-MIB notifications"; + leaf enable { + type empty; + description + "Enable entityMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper-sub1.yang new file mode 100644 index 000000000..2af01acc0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper-sub1.yang @@ -0,0 +1,93 @@ +submodule Cisco-IOS-XR-snmp-entitymib-oper-sub1 { + belongs-to Cisco-IOS-XR-snmp-entitymib-oper { + prefix Cisco-IOS-XR-snmp-entitymib-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-entitymib package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ENTMIB-NODE2PATH-INFO { + description + "ENTITY-MIB Node To Path Map Record"; + leaf physical-index { + type uint32; + description + "entPhysicalIndex"; + } + leaf ent-physical-name { + type string; + description + "entPhysicalName"; + } + leaf location { + type string; + description + "invmgr EDM path"; + } + leaf ent-physical-descr { + type string; + description + "EntPhysicalDescription"; + } + leaf ent-physical-firmware-rev { + type string; + description + "entphysicalFirmwareRev"; + } + leaf ent-physical-hardware-rev { + type string; + description + "entphysicalHardwareRev"; + } + leaf ent-physical-modelname { + type string; + description + "entphysicalModelName"; + } + leaf ent-physical-serial-num { + type string; + description + "entphysicalSerialNum"; + } + leaf ent-physical-software-rev { + type string; + description + "entphysicalSoftwareRev"; + } + leaf ent-physical-mfg-name { + type string; + description + "entphysicalMfgName"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper.yang new file mode 100644 index 000000000..055e01d04 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entitymib-oper.yang @@ -0,0 +1,75 @@ +module Cisco-IOS-XR-snmp-entitymib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-entitymib-oper"; + prefix snmp-entitymib-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-oper { + prefix a1; + } + include Cisco-IOS-XR-snmp-entitymib-oper-sub1 { + revision-date 2019-04-05; + } + + 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 snmp-entitymib package operational data. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-oper + module with state data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-snmp-agent-oper'"; + container entity-mib { + description + "SNMP entity mib"; + container entity-physical-indexes { + description + "SNMP entity mib"; + list entity-physical-index { + key "entity-phynum"; + description + "SNMP entPhysical index number"; + leaf entity-phynum { + type xr:Cisco-ios-xr-string; + description + "Entity physical index"; + } + uses ENTMIB-NODE2PATH-INFO; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entstatemib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entstatemib-cfg.yang new file mode 100644 index 000000000..e178901be --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-entstatemib-cfg.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-snmp-entstatemib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-entstatemib-cfg"; + prefix snmp-entstatemib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-entstatemib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-07-27 { + description + "IOS XR 6.0.0 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container entity-state { + description + "ENTITY-STATE-MIB notification configuration"; + leaf switchover { + type empty; + description + "Enable ceStateExtStandbySwitchover notification"; + } + leaf oper-status { + type empty; + description + "Enable entStateOperEnable and + entStateOperDisable notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-frucontrolmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-frucontrolmib-cfg.yang new file mode 100644 index 000000000..ed759e878 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-frucontrolmib-cfg.yang @@ -0,0 +1,60 @@ +module Cisco-IOS-XR-snmp-frucontrolmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-frucontrolmib-cfg"; + prefix snmp-frucontrolmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-frucontrolmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container fru-control { + description + "CISCO-ENTITY-FRU-CONTROL-MIB notification + configuration"; + leaf enable { + type empty; + description + "Enable ciscoEntityFRUControlMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-cfg.yang new file mode 100644 index 000000000..ee9da7144 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-cfg.yang @@ -0,0 +1,179 @@ +module Cisco-IOS-XR-snmp-ifmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-ifmib-cfg"; + prefix snmp-ifmib-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-ifmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg, + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-03 { + description + "Deprecated and unused hidden configurations removed."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-05-14 { + description + "IOS XR 5.3.2 revision."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container interface-mib { + description + "Interface MIB configuration"; + container interfaces { + description + "Enter the SNMP interface configuration commands"; + list interface { + key "interface-name"; + description + "Interface to configure"; + leaf link-up-down { + type boolean; + description + "Enable or disable LinkUpDown notification"; + } + leaf interface-name { + type xr:Interface-name; + description + "The name of the interface"; + } + } + } + container notification { + description + "MIB notification configuration"; + leaf link-ietf { + type empty; + description + "Set the varbind of linkupdown trap to the RFC + specified varbinds (default cisco)"; + } + } + container subsets { + description + "Add configuration for an interface subset"; + list subset { + key "subset-id"; + description + "Subset priorityID to group ifNames based on + Regular Expression"; + container link-up-down { + description + "SNMP linkUp and linkDown notifications"; + leaf enable { + type boolean; + description + "Enable or disable linkupdown notification"; + } + leaf regular-expression { + type string; + description + "Regular expression to match ifName"; + } + } + leaf subset-id { + type uint32 { + range "1..255"; + } + description + "The interface subset PriorityID"; + } + } + } + leaf internal-cache { + type uint32 { + range "0..60"; + } + default "15"; + description + "Get cached interface statistics"; + } + leaf interface-alias-long { + type empty; + description + "Enable support for ifAlias values longer than + 64 characters"; + } + leaf ip-subscriber { + type empty; + description + "Enable IP subscriber interfaces in IFMIB"; + } + leaf interface-index-persistence { + type empty; + description + "Enable ifindex persistence"; + } + leaf statistics-cache { + type empty; + description + "Enable cached interface statistics"; + } + } + } + augment "/a1:snmp/a1:notification/a1:snmp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + leaf link-down { + type empty; + description + "Enable link down notification"; + } + } + augment "/a1:snmp/a1:notification/a1:snmp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + leaf link-up { + type empty; + description + "Enable link up notification"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper-sub1.yang new file mode 100644 index 000000000..79739c382 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper-sub1.yang @@ -0,0 +1,80 @@ +submodule Cisco-IOS-XR-snmp-ifmib-oper-sub1 { + belongs-to Cisco-IOS-XR-snmp-ifmib-oper { + prefix Cisco-IOS-XR-snmp-ifmib-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-ifmib package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-14 { + description + "Deprecated and unused hidden operational data removed."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Link-up-down-status { + type enumeration { + enum "enabled" { + value 1; + description + "LinkUpDown notification is enabled"; + } + enum "disabled" { + value 2; + description + "LinkUpDown notification is disabled"; + } + } + description + "Link up down status"; + } + + grouping IFMIB-NOTIF-STATUS-ENTRY { + description + "IF-MIB ifname ifindex entry"; + leaf link-up-down-notif-status { + type Link-up-down-status; + description + "LinkUpDown notification status"; + } + } + + grouping IFMIB-IFNAME-IFINDEX-ENTRY { + description + "IF-MIB ifname ifindex entry"; + leaf if-index { + type uint32; + description + "Interface Index"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper.yang new file mode 100644 index 000000000..40ef74619 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-ifmib-oper.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-snmp-ifmib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-ifmib-oper"; + prefix snmp-ifmib-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-oper { + prefix a1; + } + include Cisco-IOS-XR-snmp-ifmib-oper-sub1 { + revision-date 2022-02-14; + } + + 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 snmp-ifmib package operational data. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-oper + module with state data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-14 { + description + "Deprecated and unused hidden operational data removed."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:snmp" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-snmp-agent-oper'"; + container interface-mib { + description + "SNMP IF-MIB information"; + container interfaces { + description + "Interfaces ifIndex information"; + list interface { + key "interface-name"; + description + "ifIndex for a specific Interface Name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IFMIB-IFNAME-IFINDEX-ENTRY; + } + } + container notification-interfaces { + description + "Interfaces Notification information"; + list notification-interface { + key "interface-name"; + description + "Notification for specific Interface Name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses IFMIB-NOTIF-STATUS-ENTRY; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-mib-rfmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-mib-rfmib-cfg.yang new file mode 100644 index 000000000..3fed288c9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-mib-rfmib-cfg.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-snmp-mib-rfmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-mib-rfmib-cfg"; + prefix snmp-mib-rfmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-mib-rfmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-05-13 { + description + "Descriptions updated."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container rf { + description + "CISCO-RF-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable ciscoRFMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub1.yang new file mode 100644 index 000000000..df801fd56 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub1.yang @@ -0,0 +1,120 @@ +submodule Cisco-IOS-XR-snmp-sensormib-oper-sub1 { + belongs-to Cisco-IOS-XR-snmp-sensormib-oper { + prefix Cisco-IOS-XR-snmp-sensormib-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-sensormib package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-15 { + description + "Fixing backward compatibility error in module."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SNMP-SENSOR-INFO-XML { + description + "SNMP sensor Info"; + leaf field-validity-bitmap { + type uint32; + description + "Sensor valid bitmap"; + } + leaf device-description { + type string { + length "0..64"; + } + description + "Device Name"; + } + leaf units { + type string { + length "0..64"; + } + description + "Units of variable being read"; + } + leaf device-id { + type uint32; + description + "Identifier for this device"; + } + leaf value { + type uint32; + description + "Current reading of sensor"; + } + leaf alarm-type { + type uint32; + description + "Indicates threshold violation"; + } + leaf data-type { + type uint32; + description + "Sensor data type enums"; + } + leaf scale { + type uint32; + description + "Sensor scale enums"; + } + leaf precision { + type uint32; + description + "Sensor precision range"; + } + leaf status { + type uint32; + description + "Sensor operation state enums"; + } + leaf age-time-stamp { + type uint32; + description + "Age of the sensor value; set to the current time + if directly access the value from sensor"; + } + leaf update-rate { + type uint32; + description + "Sensor value update rate;set to 0 if sensor + value is updated and evaluated immediately"; + } + leaf measured-entity { + type uint32; + description + "physical entity for which the sensor is taking + measurements"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub2.yang new file mode 100644 index 000000000..487ea9404 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper-sub2.yang @@ -0,0 +1,76 @@ +submodule Cisco-IOS-XR-snmp-sensormib-oper-sub2 { + belongs-to Cisco-IOS-XR-snmp-sensormib-oper { + prefix Cisco-IOS-XR-snmp-sensormib-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR snmp-sensormib package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-15 { + description + "Fixing backward compatibility error in module."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ENVMON-THRESHOLD-INFO { + description + "ENVMON threshold Info"; + leaf threshold-severity { + type uint32; + description + "Indicates minor, major, critical severities"; + } + leaf threshold-relation { + type uint32; + description + "Indicates relation between sensor value and + threshold"; + } + leaf threshold-value { + type int32; + description + "Value of the configured threshold"; + } + leaf threshold-evaluation { + type boolean; + description + "Indicates the result of the most recent + evaluation of the thresholD"; + } + leaf threshold-notification-enabled { + type boolean; + description + "Indicates whether or not a notification should + result, in case of threshold violation"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper.yang new file mode 100644 index 000000000..872addffb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-sensormib-oper.yang @@ -0,0 +1,117 @@ +module Cisco-IOS-XR-snmp-sensormib-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-sensormib-oper"; + prefix snmp-sensormib-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-oper { + prefix a1; + } + include Cisco-IOS-XR-snmp-sensormib-oper-sub2 { + revision-date 2020-05-15; + } + include Cisco-IOS-XR-snmp-sensormib-oper-sub1 { + revision-date 2020-05-15; + } + + 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 snmp-sensormib package operational data. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-oper + module with state data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-15 { + description + "Fixing backward compatibility error in module."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-snmp-agent-oper'"; + container sensor-mib { + description + "SNMP sensor MIB information"; + container physical-indexes { + description + "List of physical index table for threshold + value"; + list physical-index { + key "index"; + description + "Threshold value for physical index"; + container threshold-indexes { + description + "List of threshold index"; + list threshold-index { + description + "Threshold value for threshold index"; + leaf phy-index { + type xr:Cisco-ios-xr-string; + description + "Physical Index"; + } + leaf thre-index { + type xr:Cisco-ios-xr-string; + description + "Threshold index"; + } + uses ENVMON-THRESHOLD-INFO; + } + } + leaf index { + type xr:Cisco-ios-xr-string; + description + "Physical index"; + } + } + } + container ent-phy-indexes { + description + "List of physical index "; + list ent-phy-index { + key "index"; + description + "Sensor value for physical index"; + leaf index { + type xr:Cisco-ios-xr-string; + description + "Physical index"; + } + uses SNMP-SENSOR-INFO-XML; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-syslogmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-syslogmib-cfg.yang new file mode 100644 index 000000000..a0c5ee8f3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-syslogmib-cfg.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-snmp-syslogmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-syslogmib-cfg"; + prefix snmp-syslogmib-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 snmp-syslogmib package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-12-01 { + description + "IOS XR 6.0 revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container syslog { + description + "CISCO-SYSLOG-MIB notification configuration"; + leaf enable { + type empty; + description + "Enable ciscoSyslogMIB notifications"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-test-trap-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-test-trap-act.yang new file mode 100644 index 000000000..59f9a32ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-snmp-test-trap-act.yang @@ -0,0 +1,487 @@ +module Cisco-IOS-XR-snmp-test-trap-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-snmp-test-trap-act"; + prefix snmp-test-trap-act; + + import cisco-semver { + prefix semver; + } + 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 action package configuration. + + Copyright (c) 2017-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-10-25 { + description + "IOS XR 6.2.1 revision."; + } + + rpc snmp-cold-start { + description + "Generate SNMPv2-MIB::coldStart"; + } + rpc snmp-warm-start { + description + "Generate SNMPv2-MIB::warmStart"; + } + rpc interface-link-up { + description + "Generate IF-MIB::linkUp"; + input { + leaf ifindex { + type uint32 { + range "1..2147483647"; + } + description + "interface index for which to generate LinkUp trap"; + } + } + } + rpc interface-link-down { + description + "Generate IF-MIB::linkDown"; + input { + leaf ifindex { + type uint32 { + range "1..2147483647"; + } + description + "interface index for which to generate LinkDown trap"; + } + } + } + rpc sonet-section-status { + description + "Generate CISCO-SONET-MIB::ciscoSonetSectionStatusChange"; + input { + leaf ifindex { + type uint32 { + range "1..2147483647"; + } + description + "interface index for which to generate ciscoSonetSectionStatusChange trap"; + } + } + } + rpc sonet-line-status { + description + "Generate CISCO-SONET-MIB::ciscoSonetLineStatusChange"; + input { + leaf ifindex { + type uint32 { + range "1..2147483647"; + } + description + "interface index for which to generate ciscoSonetLineStatusChange trap"; + } + } + } + rpc sonet-path-status { + description + "Generate CISCO-SONET-MIB::ciscoSonetPathStatusChange"; + input { + leaf ifindex { + type uint32 { + range "1..2147483647"; + } + description + "interface index for which to generate ciscoSonetPathStatusChange trap"; + } + } + } + rpc infra-syslog-message-generated { + description + "Generate CISCO-SYSLOG-MIB::clogMessageGenerated"; + } + rpc infra-flash-device-inserted { + description + "Generate CISCO-FLASH-MIB::ciscoFlashDeviceInsertedNotif"; + } + rpc infra-flash-device-removed { + description + "Generate CISCO-FLASH-MIB::ciscoFlashDeviceRemovedNotif"; + } + rpc infra-redundancy-progression { + description + "Generate CISCO-RF-MIB::ciscoRFProgressionNotif"; + } + rpc infra-redundancy-switch { + description + "Generate CISCO-RF-MIB::ciscoRFSwactNotif"; + } + rpc infra-bridge-new-root { + description + "Generate BRIDGE-MIB::newRoot"; + } + rpc infra-bridge-topology-change { + description + "Generate BRIDGE-MIB::topologyChange"; + } + rpc infra-config-event { + description + "Generate CISCO-CONFIG-MAN-MIB::ciscoConfigManEvent"; + } + rpc entity-sensor-threshold-notification { + description + "Generate CISCO-ENTITY-SENSOR-MIB::entSensorThresholdNotification"; + input { + leaf entindex { + type uint32 { + range "1..2147483647"; + } + description + "entity Physical Index for which to generate trap"; + } + } + } + rpc entity-fru-power-status-change-failed { + description + "oper status changed to failed"; + input { + leaf entindex { + type uint32 { + range "1..2147483647"; + } + description + "entity Physical Index for which to generate trap"; + } + } + } + rpc entity-fru-module-status-change-up { + description + "fu trap module status changed as ok"; + input { + leaf entindex { + type uint32 { + range "1..2147483647"; + } + description + "entity Physical Index for which to generate trap"; + } + } + } + rpc entity-fru-module-status-change-down { + description + "fu trap module status changed as failed"; + input { + leaf entindex { + type uint32 { + range "1..2147483647"; + } + description + "entity Physical Index for which to generate trap"; + } + } + } + rpc entity-fru-fan-tray-oper-status-up { + description + "Generate CISCO-ENTITY-FRU-CONTROL-MIB::cefcFanTrayStatusChange"; + input { + leaf entindex { + type uint32 { + range "1..2147483647"; + } + description + "entity Physical Index for which to generate trap"; + } + } + } + rpc entity-fru-fan-tray-inserted { + description + "Generate CISCO-ENTITY-FRU-CONTROL-MIB::cefcFRUInserted"; + input { + leaf entindex { + type uint32 { + range "1..2147483647"; + } + description + "entity Physical Index for which to generate trap"; + } + } + } + rpc entity-fru-fan-tray-removed { + description + "Generate CISCO-ENTITY-FRU-CONTROL-MIB::cefcFRURemoved"; + input { + leaf entindex { + type uint32 { + range "1..2147483647"; + } + description + "entity Physical Index for which to generate trap"; + } + } + } + rpc platform-hfr-bundle-downed-link { + description + "Generate CISCO-FABRIC-HFR-MIB::cfhBundleDownedLinkNotification"; + input { + leaf bundle-name { + type string; + description + "bundle name for which to generate the trap"; + } + } + } + rpc platform-hfr-bundle-state { + description + "Generate CISCO-FABRIC-HFR-MIB::cfhBundleStateNotification"; + input { + leaf bundle-name { + type string; + description + "bundle name for which to generate the trap"; + } + } + } + rpc platform-hfr-plane-state { + description + "Generate CISCO-FABRIC-HFR-MIB::cfhPlaneStateNotification"; + input { + leaf plane-id { + type uint32; + description + "plane identifier for which to generate the trap"; + } + } + } + rpc routing-bgp-established { + description + "Generate BGP4-MIB::bglEstablishedNotification"; + } + rpc routing-bgp-established-remote-peer { + description + "Generate BGP4-MIB::bglEstablishedNotification remote peer"; + input { + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "BGP remote peer IP address for which to generate the trap"; + } + } + } + rpc routing-bgp-state-change { + description + "Generate CISCO-BGP-MIB::cbgpBackwardTransition"; + } + rpc routing-bgp-state-change-remote-peer { + description + "Generate CISCO-BGP-MIB::cbgpBackwardTransition remote peer"; + input { + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "BGP remote peer IP address for which to generate the trap"; + } + } + } + rpc routing-ospf-neighbor-state-change { + description + "Generate OSPF-TRAP-MIB::ospfNbrStateChange"; + } + rpc routing-ospf-neighbor-state-change-address { + description + "Generate OSPF-TRAP-MIB::ospfNbrStateChange address"; + input { + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "neighbor's IP source address for which to generate the trap"; + } + leaf ifindex { + type uint32 { + range "0..2147483647"; + } + mandatory true; + description + "0 for interfaces having IP addresses or IF-MIB ifindex of addressless interface"; + } + } + } + rpc routing-mpls-ldp-session-down { + description + "Generate MPLS-LDP-STD-MIB::mplsLdpSessionDown"; + } + rpc routing-mpls-ldp-session-down-entity-id { + description + "Generate MPLS-LDP-STD-MIB::mplsLdpSessionDown entity-id"; + input { + leaf entity-id { + type string { + length "23"; + } + mandatory true; + description + "entity ldp-id in x.x.x.x.y.y format where x.x.x.x is the entity IP address and y.y is the label space"; + } + leaf entity-index { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "entity index for which to generate the trap"; + } + leaf peer-id { + type string { + length "23"; + } + mandatory true; + description + "peer ldp-id in x.x.x.x.y.y format where x.x.x.x is the entity IP address and y.y is the label space"; + } + } + } + rpc routing-mpls-tunnel-re-routed { + description + "Generate MPLS-TE-STD-MIB::mplsTunnelRerouted"; + } + rpc routing-mpls-tunnel-re-routed-index { + description + "Generate MPLS-TE-STD-MIB::mplsTunnelRerouted index"; + input { + leaf index { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "tunnel index for which to generate the trap"; + } + leaf instance { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "tunnel instance for which to generate the trap"; + } + leaf source { + type inet:ipv4-address-no-zone; + mandatory true; + description + "source address for which to generate the trap"; + } + leaf destination { + type inet:ipv4-address-no-zone; + mandatory true; + description + "destination address for which to generate the trap"; + } + } + } + rpc routing-mpls-tunnel-re-optimized { + description + "Generate MPLS-TE-STD-MIB::mplsTunnelReoptimized"; + } + rpc routing-mpls-tunnel-re-optimized-index { + description + "Generate MPLS-TE-STD-MIB::mplsTunnelReoptimized index"; + input { + leaf index { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "tunnel index for which to generate the trap"; + } + leaf instance { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "tunnel instance for which to generate the trap"; + } + leaf source { + type inet:ipv4-address-no-zone; + mandatory true; + description + "source address for which to generate the trap"; + } + leaf destination { + type inet:ipv4-address-no-zone; + mandatory true; + description + "destination address for which to generate the trap"; + } + } + } + rpc routing-mpls-tunnel-down { + description + "Generate MPLS-TE-STD-MIB::mplsTunnelDown"; + } + rpc routing-mpls-tunnel-down-index { + description + "Generate MPLS-TE-STD-MIB::mplsTunnelDown index"; + input { + leaf index { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "tunnel index for which to generate the trap"; + } + leaf instance { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "tunnel instance for which to generate the trap"; + } + leaf source { + type inet:ipv4-address-no-zone; + mandatory true; + description + "src address"; + } + leaf destination { + type inet:ipv4-address-no-zone; + mandatory true; + description + "destination address for which to generate the trap"; + } + } + } + rpc all { + description + "generate all the supported traps"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper-sub1.yang new file mode 100644 index 000000000..921be75c0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper-sub1.yang @@ -0,0 +1,514 @@ +submodule Cisco-IOS-XR-spio-oper-sub1 { + belongs-to Cisco-IOS-XR-spio-oper { + prefix Cisco-IOS-XR-spio-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR spio package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-25 { + description + "Introduced yang support for spio"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Spio-offload-platform { + type enumeration { + enum "software" { + description + "Software offload process"; + } + enum "hardware" { + description + "Hardware offload"; + } + } + description + "SPIO Offload Platform"; + } + + typedef Spio-direction { + type enumeration { + enum "detached" { + description + "None"; + } + enum "receive" { + description + "Receive"; + } + enum "transmit" { + description + "Transmit"; + } + enum "both" { + description + "Receive and Transmit"; + } + } + description + "SPIO Attach direction"; + } + + typedef Spio-protocol-id1 { + type enumeration { + enum "none" { + description + "No protocol"; + } + enum "cfm" { + description + "CFM"; + } + enum "stp" { + description + "STP"; + } + enum "stp-pb" { + description + "STP (Provider Bridge)"; + } + enum "ppp" { + description + "PPP"; + } + enum "pppoe" { + description + "PPPoE"; + } + enum "debug-trace" { + description + "ucode Debug/Trace"; + } + enum "stats" { + description + "Statistics"; + } + enum "afmon-upd" { + description + "AFMON Update"; + } + enum "afmon-add" { + description + "AFMON Add"; + } + enum "mofrr" { + description + "MOFRR"; + } + enum "ip-sub" { + description + "IP Subscriber"; + } + enum "ether-oam" { + description + "Ethernet Link OAM"; + } + enum "lacp" { + description + "LACP"; + } + enum "sync-e" { + description + "Synchronous Ethernet"; + } + enum "chdlc" { + description + "Cisco HDLC"; + } + enum "spa-ipc" { + description + "SPA IPC Messaging"; + } + enum "net-flow" { + description + "Netflow"; + } + enum "mvrp" { + description + "Multiple VLAN Registration"; + } + enum "mvrp-pb" { + description + "MVRP (Provider Bridge)"; + } + enum "ptp-eth" { + description + "Precision Time Protocol (Ethernet)"; + } + enum "ptpipv4" { + description + "Precision Time Protocol (IPv4)"; + } + enum "ptpipv6" { + description + "Precision Time Protocol (IPv6)"; + } + enum "efpsec-notify" { + description + "EFP Security Notify"; + } + enum "cluster-lmp" { + description + "Cluster Data Link Protocol"; + } + enum "cluster-tst" { + description + "Cluster Data Link Test Client"; + } + enum "cluster-dsc" { + description + "Cluster DSC Data Link Client"; + } + enum "efpsec-notify-shut" { + description + "EFP Security Notify Shut"; + } + enum "arp" { + description + "ARP"; + } + enum "l2tpv2" { + description + "L2TPv2"; + } + enum "lldp" { + description + "Link Layer Discovery"; + } + enum "oam" { + description + "ATM OAM"; + } + enum "pvst" { + description + "PVST"; + } + enum "httpr" { + description + "HTTPR"; + } + enum "sdac-discovery" { + description + "SDAC Discovery"; + } + enum "erp" { + description + "Ethernet Ring Protection"; + } + enum "udld" { + description + "UDLD"; + } + enum "fhrp" { + description + "FHRP"; + } + enum "unclassified" { + description + "Unclassified"; + } + enum "httpripv6" { + description + "HTTPR IPV6"; + } + enum "mac-cache-msg" { + description + "MAC Cache Msg"; + } + enum "mirp-lite" { + description + "Multiple I-SID Registration Lite"; + } + enum "pagent1" { + description + "PAGENT1"; + } + enum "pagent2" { + description + "PAGENT2"; + } + enum "mvrp-lite" { + description + "Multiple VLAN Registration Lite"; + } + enum "cdp" { + description + "Cisco Discovery Protocol"; + } + enum "dpss" { + description + "DPSS"; + } + enum "mmrp" { + description + "Multiple MAC Registration"; + } + enum "mka" { + description + "EAPoL Macsec MKA Control Pkt"; + } + enum "an" { + description + "Autonomous Networks"; + } + enum "exr" { + description + "Third Party Application"; + } + enum "elmi" { + description + "Ethernet Local Management Interface"; + } + enum "dot1x" { + description + "EAPoL Dot1x Control Pkt"; + } + enum "pmdm" { + description + "Performance Measurement Protocol"; + } + enum "pp-health" { + description + "Packet Path Health Monitoring Protocol"; + } + enum "smart-sfp" { + description + "SMART SFP"; + } + enum "ipv6-nd" { + description + "IPV6 ND"; + } + enum "dot1x-mab" { + description + "EAPoL Dot1x MAB"; + } + enum "pmdmoff" { + description + "Performance Measurement Protocol"; + } + enum "p4rt" { + description + "P4RT"; + } + enum "ztp" { + description + "ZTP Application"; + } + enum "proto-max-count" { + description + "Max proto count"; + } + } + description + "SPIO Protocol ID"; + } + + grouping SPIO-VI-INFO { + description + "SPIO VI information"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface name"; + } + leaf vi-type { + type uint32; + description + "VI type"; + } + leaf intf-count { + type uint32; + description + "Interface count"; + } + leaf session-count { + type uint32; + description + "Session count"; + } + leaf primary-interface-name { + type xr:Interface-name; + description + "Primary interface"; + } + leaf backup-interface-name { + type xr:Interface-name; + description + "Backup interface"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf primary-node-name { + type xr:Node-id; + description + "Primary Node ID"; + } + leaf backup-node-name { + type xr:Node-id; + description + "Backup Node ID"; + } + } + + grouping SPIO-SESSION-INFO { + description + "SPIO session information"; + leaf protocol-id { + type Spio-protocol-id1; + description + "Protocol ID"; + } + leaf node-name { + type xr:Node-id; + description + "Node ID"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf platform { + type Spio-offload-platform; + description + "Offload platform"; + } + leaf key-xr { + type string; + description + "Session key"; + } + leaf data { + type string; + description + "Opaque session data"; + } + leaf last-update-id { + type uint32; + description + "Last update ID"; + } + leaf is-marked { + type boolean; + description + "Mark/Sweep mark"; + } + leaf present-in-interface-manager { + type boolean; + description + "Whether session has been installed in Interface + Manager"; + } + } + + grouping SPIO-CLIENT-INFO { + description + "SPIO client information"; + leaf protocol-id-xr { + type Spio-protocol-id1; + description + "Protocol ID"; + } + leaf node-name-xr { + type xr:Node-id; + description + "Node ID"; + } + leaf interface-count { + type uint32; + description + "Interface count"; + } + leaf is-marked { + type boolean; + description + "Mark/Sweep mark"; + } + } + + grouping SPIO-INTERFACE-INFO { + description + "SPIO interface information"; + leaf protocol-id-xr { + type Spio-protocol-id1; + description + "Protocol ID"; + } + leaf node-name-xr { + type xr:Node-id; + description + "Node ID"; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface name"; + } + leaf attach-direction { + type Spio-direction; + description + "Attach location"; + } + leaf hardware-sessions { + type uint32; + description + "Number of offload sessions running in hardware"; + } + leaf software-sessions { + type uint32; + description + "Number of offload sessions running in software"; + } + leaf last-update-id { + type uint32; + description + "Last update ID"; + } + leaf is-marked { + type boolean; + description + "Mark/Sweep mark"; + } + leaf vi-handle { + type xr:Interface-name; + description + "VI handle"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper.yang new file mode 100644 index 000000000..f698c21b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spio-oper.yang @@ -0,0 +1,209 @@ +module Cisco-IOS-XR-spio-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spio-oper"; + prefix spio-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-spio-oper-sub1 { + revision-date 2022-08-25; + } + + 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 spio package operational data. + + This module contains definitions + for the following management objects: + spio: SPIO operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-25 { + description + "Introduced yang support for spio"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Spio-protocol-id { + type enumeration { + enum "cfm" { + value 1; + description + "CFM"; + } + enum "stp" { + value 2; + description + "STP"; + } + enum "stp-(provider-bridge)" { + value 3; + description + "STP (Provider Bridge)"; + } + enum "arp" { + value 28; + description + "ARP"; + } + enum "udld" { + value 36; + description + "UDLD"; + } + } + description + "Spio protocol id"; + } + + container spio { + config false; + description + "SPIO operational data"; + container nodes { + description + "Per node SPIO operational data"; + list node { + key "node-name"; + description + "SPIO operational data for particular node. The + data for the node relates to clients using + interfaces whose control plane resides on the + node."; + container interfaces { + description + "SPIO attached interface operational data for + the client"; + list interface { + description + "SPIO operational data for a particular + interface"; + leaf protocol-id { + type Spio-protocol-id; + description + "The protocol ID for the client"; + } + leaf node-name { + type xr:Node-id; + description + "The node that the client is running on"; + } + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses SPIO-INTERFACE-INFO; + } + } + container clients { + description + "Per client SPIO operational data"; + list client { + description + "SPIO operational data for a particular client"; + leaf protocol-id { + type Spio-protocol-id; + description + "The protocol ID for the client"; + } + leaf node-name { + type xr:Node-id; + description + "The node that the client is running on"; + } + uses SPIO-CLIENT-INFO; + } + } + container offload-interfaces { + description + "SPIO interfaces with offload sessions for the + client"; + list offload-interface { + description + "SPIO offload operational data for a + particular interface"; + container sessions { + description + "SPIO offload sessions operational data for + an interface"; + list session { + key "key"; + description + "SPIO operational data for a particular + session"; + leaf key { + type xr:Cisco-ios-xr-string; + description + "The key for the session, in hex format"; + } + uses SPIO-SESSION-INFO; + } + } + leaf protocol-id { + type Spio-protocol-id; + description + "The protocol ID for the client"; + } + leaf node-name { + type xr:Node-id; + description + "The node that the client is running on"; + } + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + } + } + container vis { + description + "SPIO virtual interface operational data"; + list vi { + key "interface-name"; + description + "SPIO virtual interface operational data for + an interface"; + leaf interface-name { + type xr:Interface-name; + description + "The interface name"; + } + uses SPIO-VI-INFO; + } + } + leaf node-name { + type xr:Node-id; + description + "The identifier for the node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-bfd-hw-offload-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-bfd-hw-offload-cfg.yang new file mode 100644 index 000000000..003e1ce43 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-bfd-hw-offload-cfg.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-spirit-bfd-hw-offload-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spirit-bfd-hw-offload-cfg"; + prefix spirit-bfd-hw-offload-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + 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 spirit-bfd-hw-offload package configuration. + + This YANG module augments the + Cisco-IOS-XR-config-mda-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container bfd-hardware-offload { + description + "Configure BFD offload parameters"; + list node { + key "node-name"; + description + "Node id to filter out trient card"; + leaf enable { + type empty; + description + "Enable BFD HW offload mode"; + } + leaf node-name { + type xr:Node-id; + description + "NodeName"; + } + } + } + } + + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg.yang new file mode 100644 index 000000000..66fdc905f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg.yang @@ -0,0 +1,523 @@ +module Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spirit-cgn-nat64-stless-cfg"; + prefix spirit-cgn-nat64-stless-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-se-cgn-cfg { + prefix a1; + } + + 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 spirit-cgn-nat64-stless package configuration. + + This YANG module augments the + Cisco-IOS-XR-se-cgn-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Algorithm { + type enumeration { + enum "hash" { + value 1; + description + "Hashing"; + } + enum "ttl" { + value 2; + description + "Time to live"; + } + enum "random" { + value 3; + description + "Randomly generate"; + } + } + description + "Algorithm"; + } + + grouping TCP-MSS { + description + "Common node of ipv6, ipv4"; + leaf tcp-mss { + type uint32 { + range "28..1500"; + } + units "byte"; + description + "Maximum segment size to be used in bytes"; + } + } + + grouping AF { + description + "Common node of stateless, mapt"; + container af { + description + "Address family related configuration"; + container ipv6 { + description + "IPv6 address faimly"; + container protocol { + description + "Select a protocol"; + container icmp { + description + "ICMP protocol"; + leaf reset-mtu { + type empty; + description + "Reset maximum transmission unit when packet + is too big"; + } + } + } + leaf traffic-class { + type uint32 { + range "0..255"; + } + description + "Traffic class to be set when translating from + IPv4 to IPv6"; + } + leaf df-override { + type empty; + description + "Override DF bit"; + } + uses INTERFACE; + uses TCP-MSS; + } + container ipv4 { + description + "IPv4 address faimly"; + leaf tos { + type uint32 { + range "0..255"; + } + description + "Type of service value to be set when + translating IPv6 to IPv4"; + } + uses INTERFACE; + uses TCP-MSS; + } + } + } + + grouping INTERFACE { + description + "Common node of ipv6, ipv4"; + leaf interface { + type xr:Interface-name; + description + "ServiceApp interface to be used"; + } + } + + grouping IPV6 { + description + "Common node of external-domain, cpe-domain"; + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "ipv6 parameters"; + container prefix { + presence "Indicates a prefix node is configured."; + description + "CPE IPv6 Prefix"; + leaf prefix { + type inet:ip-address-no-zone; + mandatory true; + description + "IPv6 address and prefix"; + } + leaf length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "Prefix of the IP Address"; + } + } + container ipv6-prefix { + description + "prefix"; + leaf ipv6-prefix-length { + type uint32 { + range "1..128"; + } + description + "prefix length (must be in the range of 1-64 or + 128)"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "ipv6 vrf name"; + } + } + } + + grouping CPE-DOMAIN { + description + "Common node of mapt, map-t-cisco"; + container cpe-domain { + description + "CPE domain parameters"; + container ipv4 { + description + "ipv4 parameters"; + container ipv4-prefix { + description + "prefix"; + leaf ipv4-prefix-length { + type uint32 { + range "0..32"; + } + description + "prefix length"; + } + } + container prefix { + presence "Indicates a prefix node is configured."; + description + "CPE domain ipv4 prefix"; + leaf start-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 address prefix"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 address prefix"; + } + } + } + uses IPV6; + } + } + + augment "/a1:cgns/a1:cgn/a1:service-type" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-se-cgn-cfg'"; + container nat64 { + description + "IPv4 to IPv6 network address translation"; + container statelesses { + description + "Table of Stateless"; + list stateless { + key "stateless-name"; + description + "IPv4 to IPv6 stateless translation"; + container ipv6-prefix { + presence "Indicates a ipv6-prefix node is configured."; + description + "IPv6 prefix to be used to translate IPv4 + address to IPv6 address"; + leaf prefix { + type inet:ip-address-no-zone; + mandatory true; + description + "IPv6 address and prefix"; + } + leaf length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "Prefix of the IP Address"; + } + } + container traceroute { + description + "Traceroute related configurations"; + container translation { + description + "Configurations related translating + traceroute addresses"; + container address-pool { + presence "Indicates a address-pool node is configured."; + description + "IPv4 address pool for traceroute addresses"; + leaf start-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Start address and prefix for the address + pool"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Start address and prefix for the address + pool"; + } + } + leaf algorithm { + type Algorithm; + description + "Algorithm to translate IPv6 address to IPv4 + address"; + } + } + } + leaf ubit-reserved { + type empty; + description + "Enable reserving ubits in IPv6 address"; + } + leaf stateless-name { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "Name of the NAT64 stateless instance"; + } + uses AF; + } + } + } + } + augment "/a1:cgns/a1:cgn/a1:service-type" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-se-cgn-cfg'"; + container mapts { + description + "Table of mapt"; + list mapt { + key "mapt-name"; + description + "map-t translations"; + container external-domain { + description + "external domain parameters"; + uses IPV6; + } + leaf contiguous-ports { + type uint32 { + range "1..65536"; + } + description + "number of contiguous ports (must be power of + 2)"; + } + leaf sharing-ratio { + type uint32 { + range "1..32768"; + } + description + "port sharing ratio (must be power of 2)"; + } + leaf mapt-name { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "Name of map-t instance"; + } + uses CPE-DOMAIN; + uses AF; + } + } + } + augment "/a1:cgv6s/a1:cgv6/a1:cgv6-service-type" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-se-cgn-cfg'"; + container map-t-ciscos { + description + "Table of MAPT_Cisco"; + list map-t-cisco { + key "map-t-cisco-name"; + description + "map-t translations"; + container ext-domain-names { + description + "Table of ExtDomainName"; + list ext-domain-name { + key "ext-domain-name"; + description + "Domain name"; + leaf ext-domain-name { + type xr:Cisco-ios-xr-string; + description + "Domain Name"; + } + list ext-ipv6-prefix { + key "ext-ip-v6-prefix length"; + description + "External domain ipv6 prefix"; + leaf ipv4vrf { + type string; + description + "IPv4 VRF"; + } + leaf ext-ip-v6-prefix { + type inet:ip-address-no-zone; + description + "External domain ipv6 prefix and length"; + } + leaf length { + type xr:Ipv6-prefix-length; + description + "Prefix of the IP Address"; + } + } + } + } + container cpe-domain-names { + description + "Table of CPEDomainName"; + list cpe-domain-name { + key "cpe-domain-name"; + description + "CPE Domain name"; + leaf cpe-domain-name { + type xr:Cisco-ios-xr-string; + description + "CPE Domain Name"; + } + list cpe-ipv4-prefix { + key "cpe-ipv4-prefix"; + description + "CPE domain ipv4 prefix"; + leaf cpe-ipv6-prefix { + type inet:ip-address-no-zone; + description + "CPE Domain IPv6 prefix"; + } + leaf cpe-ipv4-prefix { + type inet:ipv4-address-no-zone; + description + "CPE Domain IPv4 Prefix"; + } + } + } + } + container map-t-cisco-af { + description + "Address family related configuration"; + container map-t-cisco-ipv6 { + presence "Indicates a map-t-cisco-ipv6 node is configured."; + description + "IPv6 address family"; + leaf path-mtu { + type uint32 { + range "1280..9216"; + } + mandatory true; + description + "Path-MTU for IPv6 to be used for ServiceApp"; + } + leaf interface { + type xr:Interface-name; + description + "ServiceApp interface to be used"; + } + leaf tcp-mss { + type uint32 { + range "28..1500"; + } + units "byte"; + description + "Maximum segment size to be used in bytes"; + } + } + container map-t-cisco-ipv4 { + presence "Indicates a map-t-cisco-ipv4 node is configured."; + description + "IPv4 address family"; + leaf path-mtu { + type uint32 { + range "65..9216"; + } + mandatory true; + description + "Path-MTU for IPv4 to be used for ServiceApp"; + } + leaf interface { + type xr:Interface-name; + description + "ServiceApp interface to be used"; + } + leaf tcp-mss { + type uint32 { + range "28..1500"; + } + units "byte"; + description + "Maximum segment size to be used in bytes"; + } + } + } + leaf contiguous-ports { + type uint32 { + range "1..65536"; + } + description + "number of contiguous ports (must be power of + 2)"; + } + leaf sharing-ratio { + type uint32 { + range "1..32768"; + } + description + "port sharing ratio (must be power of 2)"; + } + leaf map-t-cisco-name { + type xr:Cisco-ios-xr-string { + length "1..24"; + } + description + "Name of map-t instance"; + } + uses CPE-DOMAIN; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-cfg.yang new file mode 100644 index 000000000..7028a03a0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-cfg.yang @@ -0,0 +1,65 @@ +module Cisco-IOS-XR-spirit-corehelper-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spirit-corehelper-cfg"; + prefix spirit-corehelper-cfg; + + 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 spirit-corehelper package configuration. + + This module contains definitions + for the following management objects: + exception: Core dump configuration commands + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container exception { + description + "Core dump configuration commands"; + container file { + description + "Container for the order of preference"; + leaf choice2 { + type string; + description + "Preference of the dump location"; + } + leaf choice1 { + type string; + description + "Preference of the dump location"; + } + leaf choice3 { + type string; + description + "Preference of the dump location"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper-sub1.yang new file mode 100644 index 000000000..d9b30cac0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper-sub1.yang @@ -0,0 +1,54 @@ +submodule Cisco-IOS-XR-spirit-corehelper-context-oper-sub1 { + belongs-to Cisco-IOS-XR-spirit-corehelper-context-oper { + prefix Cisco-IOS-XR-spirit-corehelper-context-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR spirit-corehelper-context package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-01 { + description + "Adding show context yang model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping COREHELPER-CONTEXT-CONTEXT { + description + "Show context output"; + leaf context { + type string { + length "0..4096"; + } + description + "output of show context"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper.yang new file mode 100644 index 000000000..0544cc5f9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-corehelper-context-oper.yang @@ -0,0 +1,82 @@ +module Cisco-IOS-XR-spirit-corehelper-context-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spirit-corehelper-context-oper"; + prefix spirit-corehelper-context-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-spirit-corehelper-context-oper-sub1 { + revision-date 2020-10-01; + } + + 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 spirit-corehelper-context package operational data. + + This module contains definitions + for the following management objects: + core-helper: Corehelper operational data space + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-01 { + description + "Adding show context yang model"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container core-helper { + config false; + description + "Corehelper operational data space"; + container node-ids { + description + "Show Context"; + list node-id { + key "node"; + description + "Show Context Location "; + leaf node { + type xr:Node-id; + description + "Node location"; + } + list context-id { + key "context-id"; + description + "Contexts for a node"; + leaf context-id { + type uint32; + description + "Node context"; + } + uses COREHELPER-CONTEXT-CONTEXT; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper-sub1.yang new file mode 100644 index 000000000..76ccfca31 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper-sub1.yang @@ -0,0 +1,154 @@ +submodule Cisco-IOS-XR-spirit-ether-ea-oper-sub1 { + belongs-to Cisco-IOS-XR-spirit-ether-ea-oper { + prefix Cisco-IOS-XR-spirit-ether-ea-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR spirit-ether-ea package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-02 { + description + "Added Stream Name."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping VKG-ETHER-EA-SHOW-STATUS-ENTRY { + description + "PD Interface Database Status info"; + leaf intf-valid { + type boolean; + description + "intf valid"; + } + leaf num-nps { + type uint8; + description + "num nps"; + } + leaf channel-id { + type uint8; + description + "channelId"; + } + leaf admin-up { + type uint8; + description + "admin up"; + } + leaf if-state { + type uint8; + description + "if state"; + } + leaf pd-if-status { + type uint32; + description + "pd if status"; + } + leaf is-virtual { + type uint8; + description + "is virtual"; + } + leaf ifhandle { + type uint32; + description + "ifhandle"; + } + leaf parent-ifhandle { + type uint32; + description + "parent ifhandle"; + } + leaf np-map { + type uint16; + description + "np map"; + } + leaf np-map-pm { + type uint16; + description + "np map pm"; + } + leaf parent-np-map-pm { + type uint16; + description + "parent np map pm"; + } + leaf num-tcam-entries { + type uint16; + description + "num tcam entries"; + } + leaf tcam-warning-status { + type boolean; + description + "tcam warning status"; + } + leaf parent-np-map-mismatch-pm { + type boolean; + description + "parent np map mismatch pm"; + } + leaf np-map-mismatch-pm { + type boolean; + description + "np map mismatch pm"; + } + leaf pm-ifhandle-not-found { + type boolean; + description + "pm ifhandle not found"; + } + leaf uidb-state-mismatch { + type boolean; + description + "uidb state mismatch"; + } + leaf-list vlan-tcam-status { + type uint32; + description + "vkg eth pd status t"; + } + leaf-list ingress-uidb-index { + type uint16; + max-elements "10"; + description + "ingress uidb index"; + } + leaf-list egress-uidb-index { + type uint16; + max-elements "10"; + description + "egress uidb index"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper.yang new file mode 100644 index 000000000..02ab7724d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-ether-ea-oper.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-spirit-ether-ea-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spirit-ether-ea-oper"; + prefix spirit-ether-ea-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-spirit-ether-ea-oper-sub1 { + revision-date 2021-12-02; + } + + 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 spirit-ether-ea package operational data. + + This module contains definitions + for the following management objects: + ethernet-hardware: ethernet operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-02 { + description + "Added Stream Name."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ethernet-hardware { + config false; + description + "ethernet operational data"; + container nodes { + description + "List of nodes with platform specific ether-ea + data"; + list node { + key "node-name"; + description + "Pre-ifib data for particular node"; + container status { + description + "ether_ea status data"; + uses VKG-ETHER-EA-SHOW-STATUS-ENTRY; + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-act.yang new file mode 100644 index 000000000..d553744ca --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-act.yang @@ -0,0 +1,806 @@ +module Cisco-IOS-XR-spirit-install-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spirit-install-act"; + prefix spirit-install-act; + + 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 action package configuration. + + Copyright (c) 2016-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-12-03 { + description + "Prefix changed from install-act to spirit-install-act"; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-09-10 { + description + "Added output container with op-id and Error as leaf node"; + } + revision 2017-10-23 { + description + "Yang support for all install action cli's"; + } + revision 2017-07-27 { + description + "IOS XR 6.4.1 revision."; + } + + rpc install-add { + description + "Cli-command install add source"; + input { + leaf packagepath { + type string; + description + "install add source Package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install add source Package name"; + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-commit { + description + "Cli-command install commit"; + input { + leaf sdr { + type empty; + description + "commit packages in the system"; + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-remove { + description + "Cli-command remove"; + input { + container packages { + description + "install remove packages"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install remove package name"; + } + } + container ids { + description + "install remove ids"; + leaf-list id-no { + type string; + max-elements "32"; + description + "install remove id number"; + } + } + leaf inactive { + type empty; + description + "Remove inactive packages from XR repo"; + } + leaf inactiveall { + type empty; + description + "Remove inactive packages from Host,Sysadmin and XR repo"; + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-prepare { + description + "Cli-command prepare"; + input { + container packages { + description + "install prepare packages"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install prepare package name"; + } + } + container ids { + description + "install prepare ids"; + leaf-list id-no { + type string; + max-elements "32"; + description + "install prepare id number"; + } + } + leaf clean { + type empty; + description + "Clean the prepared packages"; + } + container prepare-force { + description + "install prepare force"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install prepare force package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install prepare force ids"; + } + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-activate { + description + "Cli-command activate"; + input { + container warm { + description + "install warm"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install warm package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install warm ids"; + } + } + container warm-force { + description + "install warm force"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install warm force package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install warm force ids"; + } + } + container warm-replace { + description + "install warm replace"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install warm replace package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install warm replace ids"; + } + } + container warm-replace-force { + description + "install warm replace force"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install warm replace force package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install warm replace force ids"; + } + } + container reload { + description + "install reload"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install reload package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install reload ids"; + } + } + container reload-force { + description + "install reload force"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install reload force package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install reload force ids"; + } + } + container replace { + description + "install replace"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install replace package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install replace ids"; + } + } + container replace-force { + description + "install replace force"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install replace force package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install replace force ids"; + } + } + container activate-force { + description + "install activate force"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install activate force package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install activate force ids"; + } + } + container packages { + description + "install activate packages"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install activate package name"; + } + } + container ids { + description + "install activate ids"; + leaf-list id-no { + type string; + max-elements "32"; + description + "install activate id number"; + } + } + leaf activate_prepared_pkg { + type empty; + description + "Activate the prepared package"; + } + leaf force { + type empty; + description + "Activate the prepared package with force option"; + } + leaf activate-reload { + type empty; + description + "Activate the prepared package with reload option"; + } + leaf activate-reload-force { + type empty; + description + "Activate the prepared package with reload force option"; + } + leaf activate_warm_prepared_pkg { + type empty; + description + "Activate the prepared package with warm option"; + } + leaf activate_warm_force_prepared_pkg { + type empty; + description + "Activate the prepared package with warm force option"; + } + leaf activate_warm_replace_prepared_pkg { + type empty; + description + "Activate the prepared package with warm replace option"; + } + leaf activate_warm_force_replace_prepared_pkg { + type empty; + description + "Activate the prepared package with warm force replace option"; + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-deactivate { + description + "Cli-command deactivate"; + input { + container reload { + description + "install deactivate reload"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install deactivate reload package name"; + } + leaf-list ids { + type string; + max-elements "32"; + description + "install deactivate reload ids"; + } + } + container packages { + description + "install deactivate packages"; + leaf-list packagename { + type string; + max-elements "32"; + description + "install deactivate package name"; + } + } + container ids { + description + "install deactivate ids"; + leaf-list id-no { + type string; + max-elements "32"; + description + "install deactivate id number"; + } + } + leaf superseded { + type empty; + description + "Deactivate all superseded packages"; + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-extract { + description + "Cli-command extract"; + input { + container packages { + description + "install extract packages"; + leaf-list packagename { + type string; + max-elements "1"; + description + "install extract package name"; + } + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-verify { + description + "Cli-command install verify packages"; + input { + leaf-list location { + type string; + max-elements "32"; + description + "install verify packages location"; + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-update { + description + "Cli-command install update"; + input { + leaf packagepath { + type string; + description + "install update package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update package name"; + } + container warm { + description + "install update warm"; + leaf packagepath { + type string; + description + "install update warm package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update warm package name"; + } + } + container warm-force { + description + "install update warm force"; + leaf packagepath { + type string; + description + "install update warm force package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update warm force package name"; + } + } + container warm-replace { + description + "install update warm replace"; + leaf packagepath { + type string; + description + "install update warm replace package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update warm replace package name"; + } + } + container warm-replace-force { + description + "install update warm replace force"; + leaf packagepath { + type string; + description + "install update warm replace force package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update warm replace force package name"; + } + } + container force { + description + "install update force"; + leaf packagepath { + type string; + description + "install update force package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update force package name"; + } + } + container replace { + description + "install update replace"; + leaf packagepath { + type string; + description + "install update replace package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update replace package name"; + } + } + container replace-force { + description + "install update replace force"; + leaf packagepath { + type string; + description + "install update replace force package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update replace force package name"; + } + } + container replace-commit { + description + "install update replace commit"; + leaf packagepath { + type string; + description + "install update replace commit package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update replace commit package name"; + } + } + container replace-commit-force { + description + "install update replace commit force"; + leaf packagepath { + type string; + description + "install update replace commit force package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install update replace commit force package name"; + } + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-replace { + description + "Add & Activate packages in given GISO"; + input { + leaf packagepath { + type string; + description + "install replace package patch"; + } + container commit { + description + "install replace commit"; + leaf packagepath { + type string; + description + "install replace commit package path"; + } + } + container commit-force { + description + "install replace commit force"; + leaf packagepath { + type string; + description + "install replace commit force package path"; + } + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } + rpc install-source { + description + "Cli-command install source"; + input { + leaf packagepath { + type string; + description + "install source package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install source package name"; + } + container reload { + description + "install source reload"; + leaf packagepath { + type string; + description + "install source reload package path"; + } + leaf-list packagename { + type string; + max-elements "31"; + description + "install source reload package name"; + } + } + container warm { + leaf packagepath { + type string; + } + leaf-list packagename { + type string; + max-elements "31"; + } + } + } + output { + leaf op-id { + type string; + description + "operation id of the triggered action"; + } + leaf Error { + type string; + description + "case when op-id is not triggered"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub1.yang new file mode 100644 index 000000000..82cad5187 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub1.yang @@ -0,0 +1,995 @@ +submodule Cisco-IOS-XR-spirit-install-instmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-spirit-install-instmgr-oper { + prefix Cisco-IOS-XR-spirit-install-instmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR spirit-install-instmgr package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-08 { + description + "Add optional fields for show request cli"; + semver:module-version "3.2.0"; + } + revision 2021-01-08 { + description + "Deprecating ISSU show commands in Install code as the information is already provided by the ISSU infra."; + semver:module-version "3.1.0"; + } + revision 2020-10-06 { + description + "Fixing backward compatible addition of new leafs."; + semver:module-version "3.0.0"; + } + revision 2020-03-03 { + description + "Fixing schema-describe support. + 2019-06-28 + Common yang action model between lindt and eXR install."; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-11-29 { + description + "Structured the yang response for show CLIs."; + } + revision 2018-08-24 { + description + "Changed model structure for software version and deprecated img-info node."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-07-24 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Inst-req-state { + type enumeration { + enum "in-progress" { + value 0; + description + "In progress"; + } + enum "success" { + value 1; + description + "Success"; + } + enum "failure" { + value 2; + description + "Failure"; + } + } + description + "Install request state type"; + } + + typedef Inst-fp-request-status { + type enumeration { + enum "generation-up-to-date" { + value 0; + description + "Runtime fingerprint generation up to date."; + } + enum "generation-in-progress" { + value 1; + description + "Runtime fingerprint generation in progress"; + } + enum "to-be-regenerated-at-apply" { + value 2; + description + "Runtime fingerprints will be regenerated on + apply"; + } + } + description + "package Fingerprint request status"; + } + + typedef Install-opt-string { + type string; + description + "Install opt string"; + } + + typedef Install-bag-optional-string { + type string; + description + "Install bag optional string"; + } + + typedef Inst-state { + type enumeration { + enum "success" { + value 1; + description + "Success"; + } + enum "failure" { + value 2; + description + "Failure"; + } + } + description + "Install request state type"; + } + + grouping INST-STRING-PTR { + description + "inst string ptr"; + leaf package { + type string; + description + "package"; + } + } + + grouping INSTMGR-SHOW-INSTALL-PREPARE { + description + "show install prepare"; + leaf no-prepare-done { + type string; + description + "NoPrepareDone"; + } + leaf prepared-boot-image { + type string; + description + "PreparedBootImage"; + } + leaf prepared-boot-partition { + type string; + description + "PreparedBootPartition"; + } + leaf restart-type { + type string; + description + "RestartType"; + } + leaf activate-message { + type string; + description + "ActivateMessage"; + } + leaf prepare-clean-message { + type string; + description + "PrepareCleanMessage"; + } + leaf error-message { + type string; + description + "ErrorMessage"; + } + list rpm { + description + "rpm"; + uses INST-STRING-PTR; + } + list package { + description + "package"; + uses INST-STRING-PTR; + } + } + + grouping INST-ALL-PKG-TYPE { + description + "Information for all nodes"; + leaf node { + type string; + description + "Node"; + } + list package { + description + "Details of package"; + uses INST-PKG-TYPE; + } + } + + grouping INST-ALL-PACKAGES-BAG { + description + "Package result bag"; + list node { + description + "node name"; + uses INST-ALL-PKG-TYPE; + } + } + + grouping INSTMGR-SHOW-INST-LOG { + description + "show install log info"; + container input-packages { + description + "packages given when triggering the operation"; + uses PACKAGE-LIST; + } + container skipped-packages { + description + "packages skipped"; + uses PACKAGE-LIST; + } + leaf raw-data { + type string; + description + "RawData"; + } + leaf op-id { + type uint32; + description + "OpId"; + } + leaf action { + type string; + description + "Operation triggered"; + } + leaf status { + type Inst-req-state; + description + "Status of operation"; + } + leaf error { + type string; + description + "Error"; + } + } + + grouping INSTMGR-SHOW-INST-SUP-SUMMARY { + description + "show install superseded summary info"; + container packages { + description + "List of packages"; + uses PACKAGE-LIST-SUP; + } + leaf number-of-packages { + type uint32; + description + "NumberOfPackages"; + } + leaf error { + type string; + description + "Error"; + } + } + + grouping INST-REQUEST-BAG { + description + "Request result bag"; + leaf request { + type string; + description + "The last user request"; + } + leaf state { + type Inst-req-state; + description + "The state of the last user request. Added + telemetry event for operation state"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf timestamp { + type string; + description + "The time the current state was entered"; + } + leaf error { + type string; + description + "String describing the error, if any"; + } + leaf operation-id { + type Install-opt-string; + description + "Operation ID of the ongoing or previous + completed install operation. Added + telemetry event for install operation id"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf warning { + type Install-opt-string; + description + "String describing a warning, if any"; + } + } + + grouping INSTMGR-REPO { + description + "contains packages in repository"; + container packages { + description + "Package in repository"; + uses PACKAGE-LIST; + } + leaf number-of-packages { + type uint32; + description + "NumberOfPackages"; + } + } + + grouping INSTMGR-SHOW-INST-REPO { + description + "show install repository info"; + container host { + description + "Host packages"; + uses INSTMGR-REPO; + } + container admin { + description + "Admin packages"; + uses INSTMGR-REPO; + } + container xr { + description + "XR packages"; + uses INSTMGR-REPO; + } + leaf error { + type string; + description + "Error"; + } + } + + grouping INST-VER-PKG-TYPE { + description + "Install package type"; + leaf name { + type string; + description + "Name"; + } + leaf version { + type string; + description + "Version"; + } + leaf built-by { + type string; + description + "User built by"; + } + leaf built-on { + type string; + description + "Time built"; + } + leaf workspace { + type string; + description + "Workspace built in"; + } + leaf build-host { + type string; + description + "Build host"; + } + } + + grouping INST-VERSION-BAG { + description + "Install version bag"; + leaf label { + type string; + description + "Added telemetry event on Label field"; + xr:event-telemetry "Subscribe Telemetry Event"; + } + leaf copyright-info { + type string; + description + "Copyright information"; + } + leaf hardware-info { + type string; + description + "Hardware information"; + } + leaf uptime { + type string; + description + "System uptime"; + } + leaf location { + type Install-opt-string; + description + "Prefix for the path where packages will be + installed"; + } + leaf processor { + type Install-opt-string; + description + "Processor"; + } + leaf chassis-pid { + type Install-opt-string; + description + "Chassis PID"; + } + leaf chassis-description { + type Install-opt-string; + description + "Chassis Unique Device Identifier description"; + } + leaf xr-host-name { + type Install-opt-string; + description + "Configured XR hostname"; + } + leaf total-ram { + type uint64; + description + "Total physical memory in GB"; + } + list package { + description + "Packages"; + uses INST-VER-PKG-TYPE; + } + } + + grouping INST-TOP-LEVEL-PKG-TYPE { + description + "Install user-installable package type"; + container rpm-fingerprint { + description + "RPM Fingerprint at install and run time"; + uses INST-RPM-FINGER-PRINT; + } + leaf name { + type string; + description + "Package name"; + } + leaf architecture { + type string; + description + "Architecture"; + } + leaf version { + type string; + description + "Version"; + } + leaf release { + type string; + description + "Release"; + } + leaf epoch { + type Install-opt-string; + description + "Epoch"; + } + leaf xr-mandatory { + type boolean; + description + "XR Mandatory"; + } + leaf xr-optional { + type boolean; + description + "XR Optional"; + } + leaf gpg-key-id { + type Install-opt-string; + description + "The GPG key ID at install time. A key ID of '0' + indicates a package with no GPG signature."; + } + } + + grouping INST-SUMMARY-PACKAGES-BAG { + description + "Summary packages result bag"; + leaf xr-packages-hash { + type string; + description + "Hash of XR packages"; + } + leaf label { + type Install-opt-string; + description + "Label of image"; + } + leaf rpm-fingerprint-status { + type Inst-fp-request-status; + description + "Package Fingerprint request status"; + } + leaf rpm-fingerprint-timestamp { + type Install-opt-string; + description + "Package run time fingerprint collection time"; + } + list package { + description + "Added telemetry event at packages level"; + uses INST-TOP-LEVEL-PKG-TYPE; + } + } + + grouping INST-PACKAGES-BAG { + description + "Package result bag"; + leaf rpm-fingerprint-status { + type Inst-fp-request-status; + description + "Package Fingerprint request status"; + } + leaf rpm-fingerprint-timestamp { + type Install-opt-string; + description + "Package run time fingerprint collection time"; + } + leaf label { + type Install-opt-string; + description + "Label of image"; + } + leaf xr-packages-hash { + type Install-opt-string; + description + "Hash of XR packages in this bag"; + } + list package { + description + "Packages"; + uses INST-PKG-TYPE; + } + } + + grouping INSTMGR-CALV-SHOW-INST-ACT-ROW { + description + "calvados show install active"; + leaf error-message { + type string; + description + "ErrorMessage"; + } + leaf location { + type string; + description + "Location"; + } + leaf node-type { + type string; + description + "NodeType"; + } + leaf boot-partition-name { + type string; + description + "BootPartitionName"; + } + leaf number-of-active-packages { + type uint32; + description + "NumberOfActivePackages"; + } + leaf active-packages { + type string; + description + "ActivePackages"; + } + } + + grouping INSTMGR-CALV-SHOW-INST-ACT { + description + "Calvados show install active info"; + leaf label { + type string; + description + "Label"; + } + list active-package-info { + description + "active package info"; + uses INSTMGR-CALV-SHOW-INST-ACT-ROW; + } + } + + grouping INSTMGR-YANG-SHOW-INSTALL-PREPARE { + description + "show install prepare"; + container packages { + description + "prepared packages"; + uses PACKAGE-LIST; + } + leaf no-prepare-done { + type string; + description + "NoPrepareDone"; + } + leaf prepared-boot-image { + type string; + description + "boot image name"; + } + leaf prepared-boot-partition { + type string; + description + "boot partition name"; + } + leaf restart-type { + type string; + description + "RestartType"; + } + } + + grouping INSTMGR-CALV-SHOW-INST-COMMIT-ROW { + description + "calvados show install committed"; + leaf error-message { + type string; + description + "ErrorMessage"; + } + leaf location { + type string; + description + "Location"; + } + leaf node-type { + type string; + description + "NodeType"; + } + leaf boot-partition-name { + type string; + description + "BootPartitionName"; + } + leaf number-of-committed-packages { + type uint32; + description + "NumberOfCommittedPackages"; + } + leaf committed-packages { + type string; + description + "CommittedPackages"; + } + } + + grouping INSTMGR-CALV-SHOW-INST-COMMIT { + description + "Calvados show install commit info"; + leaf label { + type string; + description + "Label"; + } + list committed-package-info { + description + "committed package info"; + uses INSTMGR-CALV-SHOW-INST-COMMIT-ROW; + } + } + + grouping PACKAGE-LIST { + description + "List of packages"; + list package { + description + "Details of package"; + uses INST-PKG-TYPE; + } + } + + grouping INSTMGR-SHOW-INST-INACTIVE { + description + "show install inactive/inactive summary info"; + container packages { + description + "inactive packages"; + uses PACKAGE-LIST; + } + leaf number-of-packages { + type uint32; + description + "NumberOfPackages"; + } + leaf node { + type string; + description + "Node"; + } + leaf error { + type string; + description + "Error"; + } + } + + grouping INSTMGR-SHOW-INST-SUP-ROW { + description + "show install superseded"; + leaf error-message { + type string; + description + "ErrorMessage"; + } + leaf location { + type string; + description + "Location"; + } + leaf node-type { + type string; + description + "NodeType"; + } + leaf boot-partition-name { + type string; + description + "BootPartitionName"; + } + leaf superseded-packages { + type string; + description + "SupersededPackages"; + } + leaf number-of-packages { + type uint32; + description + "NumberOfPackages"; + } + } + + grouping INSTMGR-SHOW-INST-SUP { + description + " show install superseded info"; + list superseded-package-info { + description + "superseded package info"; + uses INSTMGR-SHOW-INST-SUP-ROW; + } + } + + grouping INSTMGR-SHOW-VALID-LOGID { + description + "show valid lod ids"; + leaf from { + type uint32; + description + "From"; + } + leaf to { + type uint32; + description + "To"; + } + leaf error { + type string; + description + "Error"; + } + } + + grouping SUPERSEDED-INFO { + description + "contains superseded-by details of a package"; + list package { + description + "Details of package"; + uses INST-PKG-TYPE; + } + } + + grouping INST-RPM-FINGER-PRINT { + description + "Install package fingerprint type"; + leaf rpm-fingerprint-install-time { + type Install-opt-string; + description + "Package fingerprint at install time."; + } + leaf rpm-fingerprint-run-time { + type Install-opt-string; + description + "Package fingerprint at run time. A runtime + fingerprint of '0' indicates that the runtime + fingerprint for this package has not yet been + calculated."; + } + } + + grouping INST-PKG-TYPE { + description + "Install package type"; + container rpm-fingerprint { + description + "RPM Fingerprint at install and run time"; + uses INST-RPM-FINGER-PRINT; + } + leaf name { + type string; + description + "Package name"; + } + leaf architecture { + type string; + description + "Architecture"; + } + leaf version { + type string; + description + "Version"; + } + leaf release { + type string; + description + "Release"; + } + leaf epoch { + type Install-opt-string; + description + "Epoch"; + } + leaf gpg-key-id { + type Install-opt-string; + description + "The GPG key ID at install time. A key ID of '0' + indicates a package with no GPG signature."; + } + } + + grouping PACKAGE-INFO-SUP { + description + "List of packages"; + list package { + description + "superseded package"; + uses INST-PKG-TYPE; + } + list superseded-by { + description + "superseding packages"; + uses SUPERSEDED-INFO; + } + } + + grouping PACKAGE-LIST-SUP { + description + "List of packages"; + list superseded-package { + description + "info of packages superseded"; + uses PACKAGE-INFO-SUP; + } + } + + grouping INSTMGR-SHOW-INST-SUPERSEDED-ROW { + description + "show install superseded"; + container packages { + description + "Superseded packages"; + uses PACKAGE-LIST-SUP; + } + leaf location { + type string; + description + "node location"; + } + leaf node-type { + type string; + description + "type of node"; + } + leaf boot-partition-name { + type string; + description + "name of boot partition"; + } + leaf number-of-packages { + type uint32; + description + "package count"; + } + leaf error { + type string; + description + "Error"; + } + } + + grouping INSTMGR-SHOW-INST-SUPERSEDED { + description + "show install superseded info"; + list package-info { + description + "Superseded package info"; + uses INSTMGR-SHOW-INST-SUPERSEDED-ROW; + } + } + + grouping CURRENT-INSTALL-OPERATION { + description + "Show install request info"; + leaf curr-inst-oper { + type string; + description + "CurrInstOper"; + } + leaf status { + type Inst-state; + description + "Status"; + } + leaf request { + type Install-bag-optional-string; + description + "Request"; + } + leaf operation-id { + type uint32; + description + "OperationId"; + } + leaf error { + type Install-bag-optional-string; + description + "Error"; + } + } + + grouping INSTALL-LOG { + description + "Install Log"; + leaf log { + type string; + description + "operation log"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub2.yang new file mode 100644 index 000000000..592bd0f92 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper-sub2.yang @@ -0,0 +1,476 @@ +submodule Cisco-IOS-XR-spirit-install-instmgr-oper-sub2 { + belongs-to Cisco-IOS-XR-spirit-install-instmgr-oper { + prefix Cisco-IOS-XR-spirit-install-instmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR spirit-install-instmgr package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-08 { + description + "Add optional fields for show request cli"; + semver:module-version "3.2.0"; + } + revision 2021-01-08 { + description + "Deprecating ISSU show commands in Install code as the information is already provided by the ISSU infra."; + semver:module-version "3.1.0"; + } + revision 2020-10-06 { + description + "Fixing backward compatible addition of new leafs."; + semver:module-version "3.0.0"; + } + revision 2020-03-03 { + description + "Fixing schema-describe support. + 2019-06-28 + Common yang action model between lindt and eXR install."; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-11-29 { + description + "Structured the yang response for show CLIs."; + } + revision 2018-08-24 { + description + "Changed model structure for software version and deprecated img-info node."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-07-24 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Node-role-et { + type enumeration { + enum "node-unknown" { + description + "Unknown"; + } + enum "node-active" { + description + "Active"; + } + enum "node-standby" { + description + "Standby"; + } + enum "node-unusable" { + description + "Unusable"; + } + } + description + "node role"; + } + + typedef Issudir-node-status-et { + type enumeration { + enum "not-issu-ready" { + description + "Not ISSU Ready"; + } + enum "issu-ready" { + description + "ISSU Ready"; + } + enum "isus-go" { + description + "ISSU Go"; + } + enum "node-fail" { + description + "Node Fail"; + } + } + description + "ISSU node status"; + } + + typedef Issu-node-role-et { + type enumeration { + enum "unknown-role" { + description + "Unknown"; + } + enum "primary-role" { + description + "Primary"; + } + enum "secondary-role" { + description + "Secondary"; + } + enum "tertiary-role" { + description + "Tertiary"; + } + } + description + "ISSU role"; + } + + typedef Card-type-et { + type enumeration { + enum "card-rp" { + description + "Card RP"; + } + enum "card-drp" { + description + "Card DRP"; + } + enum "card-lc" { + description + "Card LC"; + } + enum "card-sc" { + description + "Card SC"; + } + enum "card-sp" { + description + "Card SP"; + } + enum "card-other" { + description + "Card Other"; + } + } + description + "card type"; + } + + typedef Isd-error-et { + type enumeration { + enum "none" { + description + "ISD ERROR NONE"; + } + enum "not-compatible" { + description + "ISD ERROR NOT COMPATIBLE"; + } + enum "not-enough-resource" { + description + "ISD ERROR NOT ENOUGH RESOURCE"; + } + enum "not-nsr-ready" { + description + "ISD ERROR NOT NSR READY"; + } + enum "not-conn-sdrsm" { + description + "ISD ERROR NOT CONNECTED SDR SM"; + } + enum "cmd-invalid" { + description + "ISD ERROR INST CMD INVALID"; + } + enum "load-prep-fail" { + description + "ISD ERROR INST LOAD PREP FAILURE"; + } + enum "error-timeout" { + description + "ISD ERROR TIMEOUT"; + } + enum "err-node-down" { + description + "ISD ERROR NODE DOWN"; + } + enum "node-not-ready" { + description + "ISD ERROR NODE NOT READY"; + } + enum "err-node-new" { + description + "ISD ERROR NODE NEW"; + } + enum "err-card-oir" { + description + "ISD ERROR CARD OIR"; + } + enum "invalid-evt" { + description + "ISD ERROR INVALID EVT"; + } + enum "disconn-from-calv" { + description + "ISD ERROR DISCONN FROM CALVADOS"; + } + enum "gsp-down" { + description + "ISD ERROR GSP DOWN"; + } + enum "abort-by-ism" { + description + "ISD ERROR ABORT BY ISM"; + } + enum "rpfo" { + description + "ISD ERROR RPFO"; + } + enum "pkg-null" { + description + "ISD ERROR PKG NULL"; + } + enum "error-general" { + description + "ISD ERROR GENERAL"; + } + enum "fsa-error" { + description + "ISD ERROR FSA ERROR"; + } + enum "err-post-issu" { + description + "ISD ERROR POST ISSU"; + } + enum "err-issu-dir-restart" { + description + "ISD ERROR ISSUDIR RESTART"; + } + } + description + "isd error"; + } + + typedef Isd-issu-status-et { + type enumeration { + enum "ok" { + description + "ISSU STATUS OK"; + } + enum "prep-done" { + description + "ISSU STATUS PREP DONE"; + } + enum "big-bang" { + description + "ISSU STATUS BIG BANG"; + } + enum "done" { + description + "ISSU STATUS DONE"; + } + enum "abort" { + description + "ISSU STATUS ABORT"; + } + enum "cmd-reject" { + description + "ISSU STATUS CMD REJECT"; + } + enum "unknown" { + description + "ISSU STATUS UNKNOWN"; + } + enum "abort-cleanup" { + description + "ISSU STATUS ABORT CLEANUP"; + } + enum "abort-cmd-reject" { + description + "ISSU STATUS CMD ABORT REJECT"; + } + } + description + "isd status"; + } + + typedef Isd-state-et { + type enumeration { + enum "none" { + description + "ISSU ST NONE"; + } + enum "idle" { + description + "ISSU ST IDLE"; + } + enum "init" { + description + "ISSU ST INIT"; + } + enum "init-done" { + description + "ISSU ST INIT DONE"; + } + enum "load-prep" { + description + "ISSU ST LOAD PREP"; + } + enum "load-exec" { + description + "ISSU ST LOAD EXEC"; + } + enum "load-issu-go" { + description + "ISSU ST LOAD ISSU GO"; + } + enum "load-done" { + description + "ISSU ST LOAD DONE"; + } + enum "run-prep-isd" { + description + "ISSU ST RUN PREP ISD"; + } + enum "run-prep-ism" { + description + "ISSU ST RUN PREP ISM"; + } + enum "big-bang" { + description + "ISSU ST RUN BIG BANG"; + } + enum "run-done" { + description + "ISSU ST RUN DONE"; + } + enum "cleanup" { + description + "ISSU ST CLEANUP"; + } + enum "cleanup-done" { + description + "ISSU ST CLEANUP DONE"; + } + enum "abort" { + description + "ISSU ST ABORT"; + } + enum "abort-done" { + description + "ISSU ST ABORT DONE"; + } + enum "abort-cleanup" { + description + "ISSU ST ABORT CLEANUP"; + } + enum "unknown-state" { + description + "ISSU UNKNOWN STATE"; + } + } + description + "isd state"; + } + + grouping ISD-INV-INFO { + description + "ISSU Inventory Information"; + leaf node-id { + type int32; + description + "Node ID"; + } + leaf node-type { + type Card-type-et; + description + "Node Type"; + } + leaf issu-node-role { + type Issu-node-role-et; + description + "ISSU Node Role"; + } + leaf node-state { + type Issudir-node-status-et; + description + "Node State"; + } + leaf node-role { + type Node-role-et; + description + "Node role"; + } + } + + grouping ISD-INV-INFO-CONTAINER { + description + "ISSU Inventory Information all nodes"; + list invinfo { + status deprecated; + description + "invinfo"; + uses ISD-INV-INFO; + } + } + + grouping ISD-STAGE-INFO { + description + "ISSU Director stage Information"; + leaf state { + type Isd-state-et; + status deprecated; + description + "State"; + } + leaf issu-node-cnt { + type int32; + status deprecated; + description + "ISSU Node Count"; + } + leaf issu-ready-node-cnt { + type int32; + status deprecated; + description + "ISSU Ready Node Count"; + } + leaf percentage { + type int32; + units "percentage"; + status deprecated; + description + "Percentage"; + } + leaf issu-status { + type Isd-issu-status-et; + status deprecated; + description + "Abort Status"; + } + leaf issu-error { + type Isd-error-et; + status deprecated; + description + "ISSU Error"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper.yang new file mode 100644 index 000000000..be83f74ef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-spirit-install-instmgr-oper.yang @@ -0,0 +1,349 @@ +module Cisco-IOS-XR-spirit-install-instmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-spirit-install-instmgr-oper"; + prefix spirit-install-instmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-spirit-install-instmgr-oper-sub2 { + revision-date 2021-12-08; + } + include Cisco-IOS-XR-spirit-install-instmgr-oper-sub1 { + revision-date 2021-12-08; + } + + 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 spirit-install-instmgr package operational data. + + This module contains definitions + for the following management objects: + install: Install operations info + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-08 { + description + "Add optional fields for show request cli"; + semver:module-version "3.2.0"; + } + revision 2021-01-08 { + description + "Deprecating ISSU show commands in Install code as the information is already provided by the ISSU infra."; + semver:module-version "3.1.0"; + } + revision 2020-10-06 { + description + "Fixing backward compatible addition of new leafs."; + semver:module-version "3.0.0"; + } + revision 2020-03-03 { + description + "Fixing schema-describe support. + 2019-06-28 + Common yang action model between lindt and eXR install."; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-11-29 { + description + "Structured the yang response for show CLIs."; + } + revision 2018-08-24 { + description + "Changed model structure for software version and deprecated img-info node."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-07-24 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SUMMARY { + description + "Common node of committed, active"; + container summary { + description + "Summary information"; + uses INST-SUMMARY-PACKAGES-BAG; + } + } + + grouping NODE-TABLE { + description + "Common node of active, committed"; + container nodes { + description + "Table for per-node package data"; + list node { + key "node"; + description + "Per-node package data"; + leaf node { + type xr:Node-id; + description + "Node name"; + } + uses INST-PACKAGES-BAG; + } + } + } + + container install { + config false; + description + "Install operations info"; + container request-str { + description + "Show current request"; + uses CURRENT-INSTALL-OPERATION; + } + container superseded { + description + "Show superseded packages"; + uses INSTMGR-SHOW-INST-SUPERSEDED; + } + container inactives-str { + description + "Show XR inactive packages"; + uses INSTALL-LOG; + } + container valid-log-id { + description + "Show valid log ids for XR"; + uses INSTMGR-SHOW-VALID-LOGID; + } + container supersede-str { + description + "Show superseded packages"; + uses INSTMGR-SHOW-INST-SUP; + } + container package-xr { + description + "Show the list of installed packages"; + list package { + key "package-name"; + description + "Show the info for a installed package"; + container verbose { + description + "Show the verbose info for a installed package"; + uses INSTALL-LOG; + } + container brief { + description + "Show the info for a installed package"; + uses INSTALL-LOG; + } + container detail { + description + "Show the deatil info for a installed package"; + uses INSTALL-LOG; + } + leaf package-name { + type string { + length "1..256"; + } + description + "Package name"; + } + } + } + container inactives-summary-str { + description + "Show XR inactive packages"; + uses INSTALL-LOG; + } + container inactive-summary { + description + "Show XR inactive packages"; + uses INSTMGR-SHOW-INST-INACTIVE; + } + container committed-summary-str { + description + "Show Committed packages installed"; + uses INSTMGR-CALV-SHOW-INST-COMMIT; + } + container prepare { + description + "Show prepared packages ready for activation"; + uses INSTMGR-YANG-SHOW-INSTALL-PREPARE; + } + container active-summary-str { + description + "Show active packages installed"; + uses INSTMGR-CALV-SHOW-INST-ACT; + } + container packages { + description + "Show packages installed"; + container active { + description + "Information about active packages"; + uses NODE-TABLE; + uses SUMMARY; + } + container committed { + description + "Information about committed packages"; + uses NODE-TABLE; + uses SUMMARY; + } + } + container version { + description + "Show install version"; + uses INST-VERSION-BAG; + } + container repository { + description + "Show install repository all"; + uses INSTMGR-SHOW-INST-REPO; + } + container inactive { + description + "Show XR inactive packages"; + uses INSTMGR-SHOW-INST-INACTIVE; + } + container request { + description + "Show current request"; + uses INST-REQUEST-BAG; + } + container supersededsummary-str { + description + "Show superseded packages"; + uses INSTALL-LOG; + } + container superseded-summary { + description + "Show superseded summary packages"; + uses INSTMGR-SHOW-INST-SUP-SUMMARY; + } + container issu { + status deprecated; + description + "ISSU operation"; + container stage { + status deprecated; + description + "Show XR install issu stage"; + uses ISD-STAGE-INFO; + } + container inventory { + status deprecated; + description + "Show XR install issu inventory"; + uses ISD-INV-INFO-CONTAINER; + } + } + container committed-str { + description + "Show Committed packages installed"; + uses INSTMGR-CALV-SHOW-INST-COMMIT; + } + container last-operation-log { + description + "It shows the log of last operation performed"; + uses INSTMGR-SHOW-INST-LOG; + } + container admin-packages { + description + "Show packages installed"; + container admin-active-summary { + description + "Show Calvados Active packages summary"; + uses INST-ALL-PACKAGES-BAG; + } + container admin-active { + description + "Show calvados active packages installed"; + uses INST-ALL-PACKAGES-BAG; + } + container admin-committed-summary { + description + "Show Calvados Committed packages summary"; + uses INST-ALL-PACKAGES-BAG; + } + container admin-inactive { + description + "Show calvados inactive packages"; + uses INSTMGR-SHOW-INST-INACTIVE; + } + container admin-committed { + description + "Show Calvados Committed packages installed"; + uses INST-ALL-PACKAGES-BAG; + } + container admin-inactive-summary { + description + "Show calvados inactive packages"; + uses INSTMGR-SHOW-INST-INACTIVE; + } + container admin-superseded { + description + "Show calvados superseded packages"; + uses INST-ALL-PACKAGES-BAG; + } + } + container version-str { + description + "Show install version"; + uses INST-VERSION-BAG; + } + container prepare-str { + description + "Show prepared packages ready for activation"; + uses INSTMGR-SHOW-INSTALL-PREPARE; + } + container active-str { + description + "Information about active packages"; + uses INSTMGR-CALV-SHOW-INST-ACT; + } + container operation-logs { + description + "Show log file"; + list operation-log { + key "operation-id"; + description + "Show log file for the specified install ID"; + leaf operation-id { + type uint32 { + range "0..134217728"; + } + description + "Op ID number"; + } + uses INSTMGR-SHOW-INST-LOG; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ssh-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ssh-act.yang new file mode 100644 index 000000000..a72e68c8e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ssh-act.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-ssh-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ssh-act"; + prefix ssh-act; + + 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 action package configuration. + + Copyright (c) 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-02 { + description + "Action model for SSH"; + semver:module-version "1.0.0"; + } + + rpc clear-ssh-session { + description + "clears specific incoming session based on the session id"; + input { + leaf incoming-session-id { + type uint32 { + range "1..4294967295"; + } + description + "incoming session id"; + } + } + } + rpc clear-ssh-all { + description + "clears all incoming SSH session"; + } + rpc clear-ssh-outgoing-session { + description + "Disconnect client connection"; + input { + leaf outgoing-session-id { + type uint32 { + range "1..4294967295"; + } + description + "outgoing session id"; + } + } + } + rpc clear-ssh-stale-session { + description + "clear stale incoming SSH sessions"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-ssm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-ssm-cfg.yang new file mode 100644 index 000000000..ae4d4a5c6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-ssm-cfg.yang @@ -0,0 +1,51 @@ +module Cisco-IOS-XR-ssm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ssm-cfg"; + prefix ssm-cfg; + + 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 ssm package configuration. + + This module contains definitions + for the following management objects: + ssmenable: Container Schema for ssm configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ssmenable { + description + "Container Schema for ssm configuration"; + leaf service { + type empty; + description + "Configure ssm monitoring"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-cfg.yang new file mode 100644 index 000000000..2cdbaf83c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-cfg.yang @@ -0,0 +1,316 @@ +module Cisco-IOS-XR-subscriber-accounting-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-accounting-cfg"; + prefix subscriber-accounting-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 subscriber-accounting package configuration. + + This module contains definitions + for the following management objects: + subscriber-accounting: Subscriber Configuration + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ACCOUNTING { + description + "Common node of subscriber-service, ip-subscriber"; + container accounting { + description + "Subscriber accounting dynamic-template commands"; + container service-accounting { + description + "Subscriber accounting service accounting"; + leaf method-list-name { + type string; + description + "Service accounting method list name"; + } + leaf accounting-interim-interval { + type uint32; + units "minute"; + description + "Accounting interim interval in minutes"; + } + } + container session { + description + "Subscriber accounting session accounting"; + leaf method-list-name { + type string; + description + "Session accounting method list name"; + } + leaf periodic-interval { + type uint32; + units "minute"; + description + "Interim accounting interval in minutes"; + } + leaf dual-stack-delay { + type uint32; + units "second"; + description + "Dual stack wait delay in seconds"; + } + leaf hold-acct-start { + type enumeration { + enum "ipv6-prefix-delegation" { + value 3; + description + "Based on ipv6 delegated prefix"; + } + } + description + "Hold Accounting start based on IA_PD"; + } + } + container idle-timeout { + description + "Subscriber accounting idle timeout"; + leaf timeout-value { + type uint32 { + range "60..4320000"; + } + units "second"; + description + "Idle timeout value in seconds"; + } + leaf threshold { + type uint32 { + range "1..10000"; + } + description + "Threshold in minute(s) per packet"; + } + leaf direction { + type string; + description + "Idle timeout traffic direction"; + } + } + leaf monitor-feature { + type string; + description + "Subscriber monitor feature"; + } + leaf prepaid-feature { + type string; + description + "Subscriber accounting prepaid feature"; + } + } + } + + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + container accounting { + description + "Subscriber accounting dynamic-template commands"; + container idle-timeout { + description + "Subscriber accounting idle timeout"; + leaf timeout-value { + type uint32 { + range "60..4320000"; + } + description + "Idle timeout value in seconds"; + } + leaf threshold { + type uint32 { + range "1..10000"; + } + description + "Threshold in minute(s) per packet"; + } + leaf direction { + type string; + description + "Idle timeout traffic direction"; + } + } + container session { + description + "Subscriber accounting session accounting"; + leaf method-list-name { + type string; + description + "Session accounting method list name"; + } + leaf periodic-interval { + type uint32; + description + "Interim accounting interval in minutes"; + } + leaf dual-stack-delay { + type uint32; + description + "Dual stack wait delay in seconds"; + } + leaf hold-acct-start { + type enumeration { + enum "ipv6-prefix-delegation" { + value 3; + description + "Based on ipv6 delegated prefix"; + } + } + description + "Hold Accounting start based on IA_PD"; + } + } + container service-accounting { + description + "Subscriber accounting service accounting"; + leaf method-list-name { + type string; + description + "Service accounting method list name"; + } + leaf accounting-interim-interval { + type uint32; + description + "Accounting interim interval in minutes"; + } + } + leaf monitor-feature { + type string; + description + "Subscriber monitor feature"; + } + leaf prepaid-feature { + type string; + description + "Subscriber accounting prepaid feature"; + } + } + } + augment "/a1:dynamic-template/a1:ip-subscribers/a1:ip-subscriber" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses ACCOUNTING; + } + augment "/a1:dynamic-template/a1:subscriber-services/a1:subscriber-service" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + uses ACCOUNTING; + } + container subscriber-accounting { + description + "Subscriber Configuration"; + container prepaid-configurations { + description + "Subscriber Prepaid Feature Configuration"; + list prepaid-configuration { + key "prepaid-config-name"; + description + "Prepaid configuration name or default"; + leaf password { + type string { + length "1..64"; + } + description + "Password to be used when placing prepaid + (re)authorization requests"; + } + leaf volume-threshold { + type uint32; + description + "Threshold at which to send prepaid volume + quota request"; + } + leaf accounting-method-list { + type string { + length "1..64"; + } + description + "Method list to be used when placing prepaid + accounting requests"; + } + leaf time-hold { + type uint32; + description + "Idle Threshold for which prepaid quota is + valid"; + } + leaf author-method-list { + type string { + length "1..64"; + } + description + "Method list to be used when placing prepaid + (re)authorization requests"; + } + leaf traffic-direction { + type string; + description + "Prepaid quota traffic direction"; + } + leaf time-threshold { + type uint32; + description + "Threshold at which to send prepaid time quota + request"; + } + leaf time-valid { + type uint32; + description + "Threshold for which prepaid quota is valid"; + } + leaf prepaid-config-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Prepaid configuration name or default"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper-sub1.yang new file mode 100644 index 000000000..522fe15f1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper-sub1.yang @@ -0,0 +1,1139 @@ +submodule Cisco-IOS-XR-subscriber-accounting-oper-sub1 { + belongs-to Cisco-IOS-XR-subscriber-accounting-oper { + prefix Cisco-IOS-XR-subscriber-accounting-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR subscriber-accounting package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-16 { + description + "Added support for srg group id and transient role per access interface in srg summary."; + semver:module-version "2.1.0"; + } + revision 2021-02-10 { + description + "New cli added to list accouting statistics for all subscribers"; + semver:module-version "2.0.0"; + } + revision 2019-12-16 { + description + "Fixed for service acct stats i.e leaf nodes are deleted for session accounting stats from service acct stats bag and maintained unique stats for session and service accounting."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-10-30 { + description + "Fixed for CSCvm83576."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ACCT-MA-SRG-STATS-INFO-BAG-DATA { + description + "ACCT MA SRG STATS INFO BAG DATA"; + leaf interface-name { + type string; + description + "Interface name"; + } + leaf access-interface-handle { + type uint32; + description + "Access Interface handle"; + } + leaf srg-node-role { + type uint32; + description + "SRG Role for given access interface"; + } + leaf srg-master-eoms-pending-flag { + type boolean; + description + "True/False,if SRG Master Node Sync is still + pending"; + } + leaf srg-diameter-up-flag { + type boolean; + description + "True/False,SRG Node Diameter Notification flag"; + } + leaf srg-role-upd-time { + type uint32; + description + "SRG Role Update Notif time in DDD MMM DD HH:MM + :SS YYYY format eg: Tue Apr 11 21:30:47 2011"; + } + leaf diameter-up-ts { + type uint32; + description + "Diameter UP Notif time in DDD MMM DD HH:MM:SS + YYYY format eg: Tue Apr 11 21:30:47 2011"; + } + leaf srg-transient-role { + type uint32; + description + "SRG Transient Role for given access interface"; + } + leaf srg-group-id { + type uint32; + description + "SRG Group id "; + } + } + + grouping ACCT-MA-SRG-STATS { + description + "ACCT MA SRG STATS"; + container srg-status-counters { + description + "Accounting's SRG Statistics Info Bag"; + uses ACCT-MA-SRG-STATS-INFO-BAG-DATA; + } + } + + grouping ACCT-MA-FLOW-FEAT-BAG-DATA { + description + "ACCT MA FLOW FEAT BAG DATA"; + leaf flow-accounting-enabled-flag { + type boolean; + description + "True if flow accounting is enabled"; + } + leaf scan-complete-flag { + type boolean; + description + "Scan Complete is done"; + } + leaf disc-pending-flag { + type boolean; + description + "Disc Pending Flag"; + } + leaf flow-idle-timeout-enabled-flag { + type boolean; + description + "True if flow idle timeout is enabled"; + } + leaf prepaid-enabled-flag { + type boolean; + description + "True if prepaid is enabled"; + } + leaf prepaid-reauth-timer-enabled { + type boolean; + description + "Flag to specify if absolute timeout for ervice + is enabled."; + } + leaf prepaid-idle-timeout-enabled { + type boolean; + description + "Flag to specify if idle timeout for service is + enabled"; + } + leaf prepaid-final-unit { + type boolean; + description + "Prepaid final unit indication flag"; + } + leaf stats-pending-flag { + type boolean; + description + "True if Prepaid Stats is Pending"; + } + leaf srg-trans-in-progress { + type boolean; + description + "True if SRG Transition Progress Status"; + } + leaf prepaid-retry-cnt { + type boolean; + description + "True if Prepaid Start Retry is set"; + } + leaf prepaid-start-retry { + type boolean; + description + "True if Prepaid Start Retry is set"; + } + leaf prepaid-start-queued { + type boolean; + description + "True if Prepaid Start Queue is set"; + } + leaf prepaid-start-post-poned { + type boolean; + description + "True if Prepaid Start Postpone is set"; + } + leaf prepaid-zero-quota-arrived { + type boolean; + description + "True if zero quota is arrived"; + } + leaf unique-class-label { + type uint32; + description + "Unique class label used to identify the flow"; + } + leaf subscriber-label { + type uint32; + description + "Subscriber label"; + } + leaf interface-handle { + type uint32; + description + "If Handle"; + } + leaf flow-direction { + type uint32; + description + "Direction of the flow. 0 = Ingress, 1 = Egress"; + } + leaf transaction-id { + type uint32; + description + "Transaction ID"; + } + leaf service-id { + type uint32; + description + "ServiceID"; + } + leaf reporting-reason { + type uint32; + description + "Reporting Reason"; + } + leaf policy-map-name { + type string { + length "0..256"; + } + description + "Policy-Map name"; + } + leaf class-map-name { + type string { + length "0..256"; + } + description + "ClassMap name"; + } + leaf flow-acct-dyn-template-name { + type string { + length "0..256"; + } + description + "Flow accounting Dynamic Template name"; + } + leaf flow-accounting-periodic-interval { + type uint32; + description + "Flow accounting periodic interval"; + } + leaf flow-idle-timeout-value { + type uint32; + units "second"; + description + "Flow idle timeout value in seconds"; + } + leaf prepaid-pending-event { + type uint32; + description + "Prepaid Pending AAA Event"; + } + leaf prepaid-start-req-status { + type uint32; + description + "Prepaid Start Request status"; + } + leaf prepaid-start-sent-timestamp { + type uint32; + description + "Session Start sent time in DDD MMM DD HH:MM:SS + YYYY format eg: Tue Apr 11 21:30:47 2011"; + } + leaf prepaid-start-ac-kd-timestamp { + type uint32; + description + "Session Accounting Start Response time in DDD + MMM DD HH:MM:SS YYYY format eg: Tue Apr 11 21:30 + :47 2011"; + } + leaf prepaid-stop-req-status { + type uint32; + description + "Prepaid Stop Request status"; + } + leaf prepaid-stop-sent-timestamp { + type uint32; + description + "Session Accounting Stop Sent time in DDD MMM DD + HH:MM:SS YYYY format eg: Tue Apr 11 21:30:47 + 2011"; + } + leaf prepaid-time-quota { + type uint32; + units "second"; + description + "Current prepaid time quota in seconds"; + } + leaf prepaid-time-threshold { + type uint32; + units "second"; + description + "Current prepaid time threshold in seconds"; + } + leaf prepaid-total-time-quota { + type uint32; + description + "Total accumulated prepaid time quota"; + } + leaf prepaid-volume-threshold { + type uint32; + units "byte"; + description + "Current prepaid volume threshold in bytes"; + } + leaf prepaid-remaining-qt { + type uint32; + description + "The time remaing for QT timer to fire."; + } + leaf prepaid-remaining-qat { + type uint32; + description + "The time remaing for quota absolute timer to + fire."; + } + leaf prepaid-remaining-qit { + type uint32; + description + "The time remaing for quota holding timer to fire + ."; + } + leaf prepaid-remaining-qtt { + type uint32; + description + "The time remaining for tariff timer to fire."; + } + leaf prepaid-remaining-wheel { + type uint32; + description + "The time remaining for idle timer wheel to fire."; + } + leaf prepaid-tariff-time { + type uint32; + description + "The absolute time at which the traffic switch + will occur expressed in UNIX time"; + } + leaf prepaid-idle-timeout-value { + type uint32; + units "second"; + description + "Prepaid idle timeout value in seconds"; + } + leaf prepaid-reauth-timeout-value { + type uint32; + description + "The time at which the re-authorization will + occur"; + } + leaf prepaid-ccfh { + type uint32; + description + "Prepaid CCFH flag"; + } + leaf prepaid-result-code { + type uint32; + description + "Prepaid authorization operation result code"; + } + leaf prepaid-volumei-quota { + type uint64; + units "byte"; + description + "Current prepaid input volume quota in bytes"; + } + leaf prepaid-volumeo-quota { + type uint64; + units "byte"; + description + "Current prepaid output volume quota in bytes"; + } + leaf prepaid-volumeb-quota { + type uint64; + units "byte"; + description + "Current prepaid total volume quota in bytes"; + } + leaf prepaid-total-volumei-quota { + type uint64; + units "byte"; + description + "Total accumulated input volume quota in bytes"; + } + leaf prepaid-total-volumeo-quota { + type uint64; + units "byte"; + description + "Total accumulated output volume quota in bytes"; + } + leaf prepaid-total-volumeb-quota { + type uint64; + units "byte"; + description + "Total accumulated total volume quota in bytes"; + } + leaf prepaid-volume-usedi-quota { + type uint64; + units "byte"; + description + "Accumulated input volume used quota in bytes"; + } + leaf prepaid-volume-usedo-quota { + type uint64; + units "byte"; + description + "Accumulated output volume used quota in bytes"; + } + leaf prepaid-volume-refi-quota { + type uint64; + units "byte"; + description + "Accumulated input volume reference quota in + bytes"; + } + leaf prepaid-volume-refo-quota { + type uint64; + units "byte"; + description + "Accumulated output volume reference quota in + bytes"; + } + leaf prepaid-volume-refb-quota { + type uint64; + units "byte"; + description + "Accumulated bi-directional volume reference + quota in bytes"; + } + leaf prepaid-volume-agg-refi-quota { + type uint64; + units "byte"; + description + "Total Accumulated input volume reference quota + in bytes"; + } + leaf prepaid-volume-agg-refo-quota { + type uint64; + units "byte"; + description + "Total Accumulated output volume reference quota + in bytes"; + } + leaf prepaid-volume-agg-refb-quota { + type uint64; + units "byte"; + description + "Total Accumulated bi-directional volume + reference quota in bytes"; + } + leaf prepaid-volume-rem-refi-quota { + type uint64; + units "byte"; + description + "Total Accumulated input volume reference quota + in bytes"; + } + leaf prepaid-volume-rem-refo-quota { + type uint64; + units "byte"; + description + "Total Accumulated output volume reference quota + in bytes"; + } + leaf prepaid-volume-rem-refb-quota { + type uint64; + units "byte"; + description + "Total Accumulated bi-directional volume + reference quota in bytes"; + } + leaf prepaid-volume-newi-quota { + type uint64; + units "byte"; + description + "Newly arrvied input volume quota in bytes"; + } + leaf prepaid-volume-newo-quota { + type uint64; + units "byte"; + description + "Newly arrvied output volume quota in bytes"; + } + leaf prepaid-volume-newb-quota { + type uint64; + units "byte"; + description + "Newly arrvied bi-directional volume quota in + bytes"; + } + leaf prepaid-tariff-volumei-quota { + type uint64; + units "byte"; + description + "Total accumulated prepaid pre-tarrif input + volume quota in bytes"; + } + leaf prepaid-tariff-volumeo-quota { + type uint64; + units "byte"; + description + "Total accumulated prepaid pre-tarrif output + volume quota in bytes"; + } + leaf prepaid-tariff-volumeb-quota { + type uint64; + units "byte"; + description + "Total accumulated prepaid pre-tarrif total + volume quota in bytes"; + } + leaf flow-accounting-method-list-name { + type string { + length "0..256"; + } + description + "Flow accounting method list name"; + } + leaf prepaid-cfg { + type string { + length "0..256"; + } + description + "Prepaid Config"; + } + leaf prepaid-time-state { + type string { + length "0..256"; + } + description + "Prepaid time state machine state"; + } + leaf prepaid-volume-state { + type string { + length "0..256"; + } + description + "Prepaid volume state machine state"; + } + leaf prepaid-charging-rule { + type string { + length "0..256"; + } + description + "Prepaid charging rule name string"; + } + } + + grouping ACCT-MA-FLOW-FEATURES { + description + "ACCT MA FLOW FEATURES"; + container flow-feature-data { + description + "Accouting flow feature display data"; + uses ACCT-MA-FLOW-FEAT-BAG-DATA; + } + } + + grouping ACCT-MA-CTX-BAG-SUM-COUNTS { + description + "ACCT MA CTX BAG SUM COUNTS"; + leaf active-sessions { + type uint32; + description + "Number of Active Sessions"; + } + leaf disconnected-sessions { + type uint32; + description + "Number of Disconnected Sessions"; + } + leaf active-session-accounting-sessions { + type uint32; + description + "Number of Active Sessions with Accounting"; + } + leaf active-flows { + type uint32; + description + "Number of Active Flows"; + } + leaf quota-received { + type uint32; + description + "Number of flows for which Quota is received"; + } + } + + grouping ACCT-MA-SESS-TO-BAG-SUM-COUNTS { + description + "ACCT MA SESS TO BAG SUM COUNTS"; + leaf active-session-timers { + type uint32; + description + "Number of Active Session Timers"; + } + leaf expired-session-timers { + type uint32; + description + "Number of Expired Session Timers"; + } + } + + grouping ACCT-MA-IDLE-TO-BAG-SUM-COUNTS { + description + "ACCT MA IDLE TO BAG SUM COUNTS"; + leaf active-session-idle-timers { + type uint32; + description + "Number of Sessions with Idle Timeout Feature"; + } + leaf idle-sessions { + type uint32; + description + "Number of Idle Sessions"; + } + leaf transitions-to-idle { + type uint32; + description + "Number of Sessions Transitions to Idle State"; + } + leaf transitions-to-awake { + type uint32; + description + "Number of Sessions Transitions to Awake State"; + } + leaf active-flow-idle-timers { + type uint32; + description + "Number of Active Flow Idle Timers"; + } + leaf expired-flow-idle-timers { + type uint32; + description + "Number of Flow Expired Idle Timers"; + } + leaf active-prepaid-idle-timers { + type uint32; + description + "Number of Active Prepaid Idle Timers"; + } + leaf expired-prepaid-idle-timers { + type uint32; + description + "Number of Expired Prepaid Idle Timers"; + } + } + + grouping ACCT-MA-AAA-BAG-SUM-COUNTS { + description + "ACCT MA AAA BAG SUM COUNTS"; + leaf flow-start { + type uint32; + description + "Number of Flow Start Requests Sent"; + } + leaf flow-disconnect { + type uint32; + description + "Number of Flow Disconnect Requests Sent"; + } + leaf session-accounting-start { + type uint32; + description + "Number of Session Accounting Start Requests Sent"; + } + leaf session-accounting-stop { + type uint32; + description + "Number of Session Accounting Stop Requests Sent"; + } + leaf session-accounting-update { + type uint32; + description + "Number of Session Accounting Update Requests + Sent"; + } + leaf service-accounting-start { + type uint32; + description + "Number of Service Accounting Start Requests Sent"; + } + leaf service-accounting-stop { + type uint32; + description + "Number of Service Accounting Stop Requests Sent"; + } + leaf service-accounting-update { + type uint32; + description + "Number of Service Accounting Update Requests + Sent"; + } + leaf flow-accounting-start { + type uint32; + description + "Number of Flow Accounting Start Requests Sent"; + } + leaf flow-accounting-stop { + type uint32; + description + "Number of Flow Accounting Stop Requests Sent"; + } + leaf flow-accounting-update { + type uint32; + description + "Number of Flow Accounting Update Requests Sent"; + } + leaf accounting-callback { + type uint32; + description + "Number of Accounting Callbacks Received"; + } + leaf session-acct-trans-pending { + type uint32; + description + "Number of Session Accounting transactions + pending"; + } + leaf session-acct-reqs-failed { + type uint32; + description + "Number of Session Accounting requests that + failed"; + } + leaf session-acct-out-of-sync { + type uint32; + description + "Number of Session Accounting sessions out of + sync"; + } + leaf session-idle-to-trans-pending { + type uint32; + description + "Number of Session Idle Timeout transactions + pending"; + } + leaf session-idle-to-reqs-failed { + type uint32; + description + "Number of Session Idle Timeout requests that + failed"; + } + leaf session-idle-to-out-of-sync { + type uint32; + description + "Number of Session Idle Timeout sessions out of + sync"; + } + leaf service-acct-trans-pending { + type uint32; + description + "Number of Service Accounting transactions + pending"; + } + leaf service-acct-reqs-failed { + type uint32; + description + "Number of Service Accounting requests that + failed"; + } + leaf service-acct-out-of-sync { + type uint32; + description + "Number of Service Accounting services out of + sync"; + } + leaf service-idle-to-trans-pending { + type uint32; + description + "Number of Service Idle Timeout transactions + pending"; + } + leaf service-idle-to-reqs-failed { + type uint32; + description + "Number of Service Idle Timeout requests that + failed"; + } + leaf service-idle-to-out-of-sync { + type uint32; + description + "Number of Service Idle Timeout services out of + sync"; + } + leaf prepaid-start { + type uint32; + description + "Number of Prepaid Start Requests Sent"; + } + leaf prepaid-stop { + type uint32; + description + "Number of Prepaid Stop Requests Sent"; + } + leaf prepaid-accounting-start { + type uint32; + description + "Number of Prepaid Accounting Start Requests Sent"; + } + leaf prepaid-accounting-stop { + type uint32; + description + "Number of Prepaid Accounting Stop Requests Sent"; + } + leaf prepaid-volume-threshold-reached { + type uint32; + description + "Number of Prepaid Volume Threshold Reached + Requests Sent"; + } + leaf prepaid-time-threshold-reached { + type uint32; + description + "Number of Prepaid Time Threshold Reached + Requests Sent"; + } + leaf prepaid-quota-depleted { + type uint32; + description + "Number of Prepaid Quota Depleted Requests Sent"; + } + leaf prepaid-reauthorization { + type uint32; + description + "Number of Prepaid Authorization Requests Sent"; + } + leaf idle-timeout { + type uint32; + description + "Number of Idle Timeout Events Sent"; + } + leaf idle-timeout-response-callback { + type uint32; + description + "Number of Idle Timeout Callbacks Received"; + } + leaf owned-resource-start { + type uint32; + description + "Number of Owned Resource Starts"; + } + } + + grouping ACCT-MA-FEATURE-SUMMARY { + description + "ACCT MA FEATURE SUMMARY"; + container aaa-counters { + description + "Accounting feature AAA summary counters"; + uses ACCT-MA-AAA-BAG-SUM-COUNTS; + } + container idle-timeout-counters { + description + "Accounting feature idle timeout summary counters"; + uses ACCT-MA-IDLE-TO-BAG-SUM-COUNTS; + } + container session-timeout-counters { + description + "Accounting feature session timeout summary + counters"; + uses ACCT-MA-SESS-TO-BAG-SUM-COUNTS; + } + container session-flow-counters { + description + "Accounting feature session context summary + counters"; + uses ACCT-MA-CTX-BAG-SUM-COUNTS; + } + } + + grouping ACCT-MA-SERV-FEAT-BAG-DATA { + description + "ACCT MA SERV FEAT BAG DATA"; + leaf service-accounting-enabled-flag { + type boolean; + description + "True if service accounting is enabled"; + } + leaf service-accounting-service-id { + type uint32; + description + "Service accounting service ID"; + } + leaf service-accounting-method-list { + type string { + length "0..256"; + } + description + "Service accounting method list name"; + } + leaf service-accounting-periodic-interval { + type uint32; + description + "Service accounting periodic interval"; + } + leaf session-accounting-aaa-trans-pending { + type uint32; + description + "Number of Service Accounting AAA transactions + pending for the service"; + } + leaf service-accounting-start-sent { + type uint32; + description + "Number of Service Accounting AAA request + failures for the service"; + } + leaf session-accounting-aaa-request-failed { + type uint32; + description + "Number of Service Accounting AAA request + failures for the service"; + } + leaf service-accounting-start-ackd { + type boolean; + description + "True if Service accounting started for the + service"; + } + leaf service-accounting-start-sent-timestamp { + type uint32; + description + "Service Accounting Start Sent time in DDD MMM DD + HH:MM:SS YYYY format eg: Tue Apr 11 21:30:47 + 2011"; + } + leaf service-acct-start-ac-kd-timestamp { + type uint32; + description + "Service Accounting Start Response time in DDD + MMM DD HH:MM:SS YYYY format eg: Tue Apr 11 21:30 + :47 2011"; + } + leaf service-accounting-stop-sent-timestamp { + type uint32; + description + "Service Accounting Stop Sent time in DDD MMM DD + HH:MM:SS YYYY format eg: Tue Apr 11 21:30:47 + 2011"; + } + } + + grouping ACCT-MA-SESS-FEAT-BAG-DATA { + description + "ACCT MA SESS FEAT BAG DATA"; + leaf unique-subscriber-label { + type uint32; + description + "Unique subscriber label used to identify the + session"; + } + leaf interface-handle { + type uint32; + description + "Handle of interface associated with the session"; + } + leaf session-disconnected { + type boolean; + description + "True if session is disconnected"; + } + leaf session-accounting-enabled-flag { + type boolean; + description + "True if session accounting is enabled"; + } + leaf session-accounting-method-list { + type string { + length "0..256"; + } + description + "Session accounting method list name"; + } + leaf session-accounting-periodic-interval { + type uint32; + description + "Session accounting periodic interval"; + } + leaf session-accounting-aaa-trans-pending { + type uint32; + description + "Number of Session Accounting AAA transactions + pending"; + } + leaf session-accounting-start-sent { + type uint32; + description + "True if session accounting started"; + } + leaf session-accounting-aaa-request-failed { + type uint32; + description + "Number of Session Accounting AAA request + failures"; + } + leaf session-accounting-start-ackd { + type boolean; + description + "True if session accounting started"; + } + leaf session-start-sent-timestamp { + type uint32; + description + "Session Start sent time in DDD MMM DD HH:MM:SS + YYYY format eg: Tue Apr 11 21:30:47 2011"; + } + leaf session-acct-start-ac-kd-timestamp { + type uint32; + description + "Session Accounting Start Response time in DDD + MMM DD HH:MM:SS YYYY format eg: Tue Apr 11 21:30 + :47 2011"; + } + leaf session-accounting-stop-sent-timestamp { + type uint32; + description + "Session Accounting Stop Sent time in DDD MMM DD + HH:MM:SS YYYY format eg: Tue Apr 11 21:30:47 + 2011"; + } + leaf session-idle-timeout-enabled-flag { + type boolean; + description + "True if session idle timeout is enabled"; + } + leaf idle-timeout-value { + type uint32; + units "second"; + description + "Idle timeout value in seconds"; + } + leaf idle-timeout-threshold { + type uint32; + units "minute"; + description + "Idle timeout threshold in minutes per packets"; + } + leaf idle-timeout-direction { + type string { + length "0..256"; + } + description + "Idle timeout direction"; + } + leaf session-is-idle { + type boolean; + description + "True if session is idle"; + } + leaf session-stats-changed-time { + type uint32; + description + "Last time session data was received"; + } + leaf session-total-idle-time { + type uint32; + description + "Total time session has been idle"; + } + leaf session-to-idle-count { + type uint32; + description + "Number of Session Idle AAA events"; + } + leaf session-to-awake-count { + type uint32; + description + "Number of Session Awake AAA events"; + } + leaf session-idle-to-aaa-trans-pending { + type uint32; + description + "Number of Session Idle AAA transactions pending"; + } + leaf session-idle-to-aaa-request-failed { + type uint32; + description + "Number of Session Idle AAA request failures"; + } + leaf session-timeout-enabled-flag { + type boolean; + description + "True if session timeout is enabled"; + } + leaf session-timeout-value { + type uint32; + units "second"; + description + "Session timeout value in seconds"; + } + leaf session-timeout-time-remaining { + type uint32; + units "second"; + description + "Number seconds remaining before session times + out"; + } + list service-accounting-feature { + description + "List of service accounting features"; + uses ACCT-MA-SERV-FEAT-BAG-DATA; + } + } + + grouping ACCT-MA-SESSION-FEATURES { + description + "ACCT MA SESSION FEATURES"; + container session-feature-data { + description + "Accounting session feature display data"; + uses ACCT-MA-SESS-FEAT-BAG-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper.yang new file mode 100644 index 000000000..672d60bf9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-accounting-oper.yang @@ -0,0 +1,145 @@ +module Cisco-IOS-XR-subscriber-accounting-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-accounting-oper"; + prefix subscriber-accounting-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-subscriber-accounting-oper-sub1 { + revision-date 2022-03-16; + } + + 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 subscriber-accounting package operational data. + + This module contains definitions + for the following management objects: + subscriber-accounting: Subscriber accounting operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-16 { + description + "Added support for srg group id and transient role per access interface in srg summary."; + semver:module-version "2.1.0"; + } + revision 2021-02-10 { + description + "New cli added to list accouting statistics for all subscribers"; + semver:module-version "2.0.0"; + } + revision 2019-12-16 { + description + "Fixed for service acct stats i.e leaf nodes are deleted for session accounting stats from service acct stats bag and maintained unique stats for session and service accounting."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-10-30 { + description + "Fixed for CSCvm83576."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container subscriber-accounting { + config false; + description + "Subscriber accounting operational data"; + container nodes { + description + "Subscriber accounting operational data for a + particular location"; + list node { + key "node-id"; + description + "Location. For example, 0/1/CPU0"; + container subscriber-accounting-session-features { + description + "Subscriber accounting session feature data"; + list subscriber-accounting-session-feature { + key "sub-label"; + description + "Display accounting session features by unique + subscriber label"; + leaf sub-label { + type uint32; + description + "Unique subscriber label"; + } + uses ACCT-MA-SESSION-FEATURES; + } + } + container subscriber-accounting-summary { + description + "Display subscriber accounting summary data"; + uses ACCT-MA-FEATURE-SUMMARY; + } + container subscriber-accounting-flow-features { + description + "Subscriber accounting flow feature data"; + list subscriber-accounting-flow-feature { + key "class-label"; + description + "Display accounting flow features by unique + subscriber label"; + leaf class-label { + type uint32; + description + "Unique subscriber class label"; + } + uses ACCT-MA-FLOW-FEATURES; + } + } + container subscriber-accounting-srg-features { + description + "Subscriber accounting SRG feature data"; + list subscriber-accounting-srg-feature { + key "interface-name"; + description + "Display accounting SRG features by unique + access interface-name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses ACCT-MA-SRG-STATS; + } + } + leaf node-id { + type xr:Node-id; + description + "The node id to filter on. For example, + 0/1/CPU0"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg.yang new file mode 100644 index 000000000..57d3abb97 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg.yang @@ -0,0 +1,91 @@ +module Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg"; + prefix subscriber-infra-tmplmgr-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 subscriber-infra-tmplmgr package configuration. + + This module contains definitions + for the following management objects: + dynamic-template: All dynamic template configurations + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container dynamic-template { + description + "All dynamic template configurations"; + container ppps { + description + "Templates of the PPP Type"; + list ppp { + key "template-name"; + description + "A Template of the PPP Type"; + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "The name of the template"; + } + } + } + container ip-subscribers { + description + "The IP Subscriber Template Table"; + list ip-subscriber { + key "template-name"; + description + "A IP Subscriber Type Template "; + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "The name of the template"; + } + } + } + container subscriber-services { + description + "The Service Type Template Table"; + list subscriber-service { + key "template-name"; + description + "A Service Type Template "; + leaf template-name { + type xr:Cisco-ios-xr-string; + description + "The name of the template"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-cfg.yang new file mode 100644 index 000000000..bbbef5de9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-cfg.yang @@ -0,0 +1,238 @@ +module Cisco-IOS-XR-subscriber-ipsub-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-ipsub-cfg"; + prefix subscriber-ipsub-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 subscriber-ipsub package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container subscriber { + description + "Subscribers on interface"; + container ip-subscriber { + description + "IP subscribers on interface"; + container ipv4 { + description + "IPv4 subscriber"; + container l2-connected { + description + "L2 connected IPv4 subscriber"; + container initiator { + description + "Configure IP subscriber initiator"; + container unclassified-source-fsol { + presence "Indicates a unclassified-source-fsol node is configured."; + description + "Configure IP subscriber unclassified source + initiator"; + leaf enable { + type empty; + mandatory true; + description + "Enable unclassified source"; + } + leaf address-unique { + type boolean; + mandatory true; + description + "Check for subscriber IP uniqueness during + first sign of life"; + } + } + leaf dhcp { + type empty; + description + "Configure IP subscriber DHCP initiator"; + } + } + } + container routed { + description + "Routed IPv4 subscriber"; + container initiator { + description + "Configure IP subscriber initiator"; + leaf unclassified-ip { + type empty; + description + "Configure IPv4 subscriber unclassified + source initiator"; + } + leaf dhcp { + type empty; + description + "Configure IPv4 subscriber DHCP initiator"; + } + leaf dhcp-snoop { + type empty; + description + "Configure IPv4 subscriber DHCP Snoop + initiator"; + } + } + } + } + container session-limit { + description + "IP subscriber session limit"; + container total { + description + "Session limit for all sources"; + leaf per-vlan { + type uint32; + default "0"; + description + "Configure per-vlan session limit for all + sources"; + } + } + container unclassified-source { + description + "Session limit for unclassified sources"; + leaf per-vlan { + type uint32; + default "0"; + description + "Configure per-vlan session limit for + unclassified sources"; + } + } + } + container ipv6 { + description + "IPv6 subscriber"; + container l2-connected { + description + "L2 connected IPv6 subscriber"; + container initiator { + description + "Configure IPv6 subscriber initiator"; + container unclassified-source-fsol { + presence "Indicates a unclassified-source-fsol node is configured."; + description + "Configure IP subscriber unclassified source + initiator"; + leaf enable { + type empty; + mandatory true; + description + "Enable unclassified source"; + } + leaf address-unique { + type boolean; + mandatory true; + description + "Check for subscriber IP uniqueness during + first sign of life"; + } + } + leaf dhcp { + type empty; + description + "Configure IPv6 subscriber DHCP initiator"; + } + } + } + container routed { + description + "Routed IPv6 subscriber"; + container initiator { + description + "Configure IP subscriber initiator"; + leaf unclassified-ip { + type uint32 { + range "1..128"; + } + default "128"; + description + "Configure unclassified packets as + first-sign-of-life for IPv6 subscriber"; + } + leaf dhcp { + type uint32 { + range "1..128"; + } + default "128"; + description + "Configure IPv6 subscriber DHCP initiator"; + } + leaf dhcp-snoop { + type uint32 { + range "1..128"; + } + default "128"; + description + "Configure IPv6 subscriber DHCP Snoop + initiator"; + } + } + } + } + leaf subscriber-templates { + type uint32 { + range "1..10"; + } + default "10"; + description + "Enable subscriber templates on this access + interface"; + } + leaf interface { + type empty; + description + "Enable IP Static subscriber"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper-sub1.yang new file mode 100644 index 000000000..eccf480cc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper-sub1.yang @@ -0,0 +1,716 @@ +submodule Cisco-IOS-XR-subscriber-ipsub-oper-sub1 { + belongs-to Cisco-IOS-XR-subscriber-ipsub-oper { + prefix Cisco-IOS-XR-subscriber-ipsub-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR subscriber-ipsub package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Ipsub-ma-parent-intf-vlan { + type enumeration { + enum "plain" { + description + "Plain"; + } + enum "ambiguous" { + description + "Ambiguous"; + } + } + description + "Access interface VLAN type"; + } + + typedef Ipsub-ma-parent-intf-state-data { + type enumeration { + enum "deleted" { + description + "Interface being deleted"; + } + enum "down" { + description + "Interface operationally down"; + } + enum "up" { + description + "Interface up"; + } + } + description + "Parent interface state"; + } + + typedef Ipsub-ma-intf-state-data { + type enumeration { + enum "invalid" { + value 0; + description + "Invalid state"; + } + enum "initialized" { + value 1; + description + "Initial state"; + } + enum "session-creation-started" { + value 2; + description + "Interface creation started"; + } + enum "control-policy-executing" { + value 3; + description + "Interface created in IM, AAA session start + called"; + } + enum "control-policy-executed" { + value 4; + description + "AAA session created"; + } + enum "session-features-applied" { + value 5; + description + "Interface config activated"; + } + enum "vrf-configured" { + value 6; + description + "Interface address and VRF information received + from IPv4"; + } + enum "adding-adjacency" { + value 7; + description + "VRF configuration received and interface config + activated"; + } + enum "adjacency-added" { + value 8; + description + "Subscriber AIB adjacency added"; + } + enum "up" { + value 9; + description + "Session up"; + } + enum "down" { + value 10; + description + "Session down"; + } + enum "address-family-down" { + value 11; + description + "Session down in progress"; + } + enum "address-family-down-complete" { + value 12; + description + "Session down complete"; + } + enum "disconnecting" { + value 13; + description + "Session teardown in progress"; + } + enum "disconnected" { + value 14; + description + "Session disconnected"; + } + enum "error" { + value 15; + description + "Session in error state"; + } + } + description + "Interface states"; + } + + typedef Ipsub-ma-intf-initiator-data { + type enumeration { + enum "dhcp" { + value 0; + description + "Session creation via DHCP discover packet"; + } + enum "packet-trigger" { + value 1; + description + "Session creation via unclassified IPv4 packet"; + } + enum "invalid-trigger" { + value 2; + description + "Invalid Trigger"; + } + } + description + "Ipsub ma intf initiator data"; + } + + grouping TOTAL-SOURCE { + description + "Session limits for all categories of all packet + sources"; + leaf per-vlan { + type uint32; + description + "Per-VLAN limit category"; + } + } + + grouping UNCLASSIFIED-SOURCE { + description + "Session limits for all categories for + unclassified-source packets"; + leaf per-vlan { + type uint32; + description + "Per-VLAN limit category"; + } + } + + grouping IPSUB-MA-PARENT-INTF-SESSION-LIMIT-DATA { + description + "Session limits for various categories by packet + source"; + container unclassified-source { + description + "Unclassified source session limits"; + uses UNCLASSIFIED-SOURCE; + } + container total { + description + "All sources session limits"; + uses TOTAL-SOURCE; + } + } + + grouping IPSUB-MA-PARENT-INTF-INITIATOR-DATA { + description + "IPSUB MA PARENT INTF INITIATOR DATA"; + leaf is-configured { + type boolean; + description + "Ture if the initiator is configred"; + } + leaf unique-ip-check { + type boolean; + description + "True if check for subscriber address + uniquenessduring first sign of life is enabled"; + } + leaf sessions { + type uint32; + description + "Number of sessions currently up for each + initiator"; + } + leaf fsol-packets { + type uint32; + description + "Number of first sign of life packets received + for initiating protocol on this interface"; + } + leaf fsol-bytes { + type uint32; + units "byte"; + description + "Number of first sign of life bytes received for + initiating protocol on this interface"; + } + leaf fsol-dropped-packets { + type uint32; + description + "Number of first sign of life packets received + for initiating protocol on this interface that + were dropped"; + } + leaf fsol-dropped-bytes { + type uint32; + units "byte"; + description + "Number of first sign of life bytes received for + initiating protocol on this interface that were + dropped"; + } + leaf fsol-dropped-packets-flow { + type uint32; + description + "Number of first sign of life packets received + for initiating protocol on this interface that + were dropped due to exceeding creation rate"; + } + leaf fsol-dropped-packets-session-limit { + type uint32; + description + "Number of first sign of life packets received + for initiating protocol on this interface that + were dropped due to exceeding one or more of the + configured session limits"; + } + leaf fsol-dropped-packets-dup-addr { + type uint32; + description + "Number of first sign of life packets received + for initiating protocol on this interface that + were dropped due to duplicate source address"; + } + } + + grouping IPSUB-MA-PARENT-INTF-INITIATORS { + description + "Initiator protocol details"; + container dhcp { + description + "DHCP information"; + uses IPSUB-MA-PARENT-INTF-INITIATOR-DATA; + } + container packet-trigger { + description + "packet trigger information"; + uses IPSUB-MA-PARENT-INTF-INITIATOR-DATA; + } + } + + grouping IPSUB-MA-PARENT-INTF-DATA { + description + "Parent interface data"; + container initiators { + description + "Configurational state-statistics for each + initiating protocol enabled on this parent + interface"; + uses IPSUB-MA-PARENT-INTF-INITIATORS; + } + container ipv6-initiators { + description + "Configurational state-statistics for each + initiating protocol enabled on this parent + interface for IPv6 session"; + uses IPSUB-MA-PARENT-INTF-INITIATORS; + } + container session-limit { + description + "Configuration session limits for each session + limit source and type"; + uses IPSUB-MA-PARENT-INTF-SESSION-LIMIT-DATA; + } + leaf interface-creation-time { + type string; + description + "Interface creation time in Month Date HH:MM:SS + format"; + } + leaf age { + type string; + description + "Age in HH:MM:SS format"; + } + leaf interface-type { + type string; + description + "Interface Type"; + } + leaf state { + type Ipsub-ma-parent-intf-state-data; + description + "Operational state of this interface"; + } + leaf ipv6-state { + type Ipsub-ma-parent-intf-state-data; + description + "Operational ipv6 state of this interface"; + } + leaf vlan-type { + type Ipsub-ma-parent-intf-vlan; + description + "The VLAN type on the access interface"; + } + } + + grouping VRF-DATA { + description + "VRF details"; + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf table-name { + type string; + description + "Table"; + } + } + + grouping IPSUB-MA-INTF-DATA { + description + "Interface details"; + container vrf { + description + "IPv4 VRF details"; + uses VRF-DATA; + } + container ipv6vrf { + description + "IPv6 VRF details"; + uses VRF-DATA; + } + leaf access-interface { + type xr:Interface-name; + description + "Access interface through which this subscriber + is accessible"; + } + leaf subscriber-ipv4-address { + type inet:ipv4-address; + description + "IPv4 Address of the subscriber"; + } + leaf subscriber-ipv6-address { + type string; + description + "IPv6 Address of the subscriber"; + } + leaf subscriber-mac-addres { + type yang:mac-address; + description + "MAC address of the subscriber"; + } + leaf subscriber-label { + type uint32; + description + "Subscriber label for this subscriber interface"; + } + leaf interface-creation-time { + type string; + description + "Interface creation time in month day hh:mm:ss + format"; + } + leaf age { + type string; + description + "Age in hh:mm:ss format"; + } + leaf initiator { + type Ipsub-ma-intf-initiator-data; + description + "Protocol trigger for creation of this subscriber + session"; + } + leaf state { + type Ipsub-ma-intf-state-data; + description + "State of the subscriber session"; + } + leaf old-state { + type Ipsub-ma-intf-state-data; + description + "Previous state of the subscriber session"; + } + leaf last-state-change-time { + type string; + description + "Interface's last state change time in month day + hh:mm:ss format"; + } + leaf current-change-age { + type string; + description + "Current change age in hh:mm:ss format"; + } + leaf ipv6-initiator { + type Ipsub-ma-intf-initiator-data; + description + "Protocol trigger for creation of this + subscriber's IPv6 session"; + } + leaf ipv6-state { + type Ipsub-ma-intf-state-data; + description + "State of the subscriber's IPv6 session"; + } + leaf ipv6-old-state { + type Ipsub-ma-intf-state-data; + description + "Previous state of the subscriber's IPv6 session"; + } + leaf ipv6-last-state-change-time { + type string; + description + "Interface's IPV6 last state change time in month + day hh:mm:ss format"; + } + leaf ipv6-current-change-age { + type string; + description + "IPV6 Current change age in hh:mm:ss format"; + } + leaf is-l2-connected { + type boolean; + description + "True if L2 connected"; + } + leaf session-type { + type string; + description + "Session Type"; + } + } + + grouping IPSUB-MA-INTF-VRF-SUMMARY-DATA { + description + "IPSUB MA INTF VRF SUMMARY DATA"; + leaf vrf-name { + type string; + description + "IPv4 VRF"; + } + leaf ipv6vrf-name { + type string; + description + "IPv6 VRF"; + } + leaf interfaces { + type uint64; + description + "Number of IP subscriber interfaces in the VRF + table"; + } + leaf ipv6-interfaces { + type uint64; + description + "Number of IPv6 subscriber interfaces in the VRF + table"; + } + } + + grouping INTERFACE-COUNTS { + description + "Interface state values"; + leaf invalid { + type uint32; + description + "Invalid"; + } + leaf initialized { + type uint32; + description + "Initialized"; + } + leaf session-creation-started { + type uint32; + description + "Session creation started"; + } + leaf control-policy-executing { + type uint32; + description + "Control policy executing"; + } + leaf control-policy-executed { + type uint32; + description + "Control policy executed"; + } + leaf session-features-applied { + type uint32; + description + "Session features applied"; + } + leaf vrf-configured { + type uint32; + description + "VRF configured"; + } + leaf adding-adjacency { + type uint32; + description + "Adding adjacency"; + } + leaf adjacency-added { + type uint32; + description + "Adjacency added"; + } + leaf up { + type uint32; + description + "Up"; + } + leaf down { + type uint32; + description + "Down"; + } + leaf disconnecting { + type uint32; + description + "Disconnecting"; + } + leaf disconnected { + type uint32; + description + "Disconnected"; + } + leaf error { + type uint32; + description + "Error"; + } + leaf total-interfaces { + type uint32; + description + "Total number of interfaces in all states"; + } + } + + grouping INTF-INITIATOR-STATS { + description + "Initiator statistics"; + container dhcp { + description + "DHCP"; + uses INTERFACE-COUNTS; + } + container packet-trigger { + description + "Packet trigger"; + uses INTERFACE-COUNTS; + } + } + + grouping INTF-INTITIATORS { + description + "Initiators"; + container initiators { + description + "Initiators"; + uses INTF-INITIATOR-STATS; + } + container ipv6-initiators { + description + "IPv6 Initiators"; + uses INTF-INITIATOR-STATS; + } + } + + grouping IPSUB-MA-PARENT-INTF-SUMMARY-INITIATOR-DATA { + description + "IPSUB MA PARENT INTF SUMMARY INITIATOR DATA"; + leaf fsol-packets { + type uint32; + description + "Number of first sign of life packets received + for initiating protocol"; + } + leaf fsol-bytes { + type uint32; + units "byte"; + description + "Number of first sign of life bytes received for + initiating protocol"; + } + } + + grouping IPSUB-MA-INITITATORS { + description + "Initiators"; + container dhcp { + description + "DHCP summary statistics"; + uses IPSUB-MA-PARENT-INTF-SUMMARY-INITIATOR-DATA; + } + container packet-trigger { + description + "Packet trigger summary statistics"; + uses IPSUB-MA-PARENT-INTF-SUMMARY-INITIATOR-DATA; + } + } + + grouping IPSUB-MA-PARENT-INTF-SUMMARY { + description + "Access interface summary statistics"; + container initiators { + description + "Summary counts per initiator"; + uses IPSUB-MA-INITITATORS; + } + container ipv6-initiators { + description + "Summary counts per initiator for ipv6 session"; + uses IPSUB-MA-INITITATORS; + } + leaf interfaces { + type uint32; + description + "Number of interfaces with subscriber + configuration"; + } + } + + grouping IPSUB-MA-INTF-SUMMARY-DATA { + description + "Interface summary statistics"; + container access-interface-summary { + description + "Access interface summary statistics"; + uses IPSUB-MA-PARENT-INTF-SUMMARY; + } + container interface-counts { + description + "Initiator interface counts"; + uses INTF-INTITIATORS; + } + list vrf { + description + "Array of VRFs with IPSUB interfaces"; + uses IPSUB-MA-INTF-VRF-SUMMARY-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper.yang new file mode 100644 index 000000000..13d195318 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-ipsub-oper.yang @@ -0,0 +1,103 @@ +module Cisco-IOS-XR-subscriber-ipsub-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-ipsub-oper"; + prefix subscriber-ipsub-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-subscriber-ipsub-oper-sub1 { + revision-date 2019-04-05; + } + + 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 subscriber-ipsub package operational data. + + This module contains definitions + for the following management objects: + ip-subscriber: IP subscriber operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container ip-subscriber { + config false; + description + "IP subscriber operational data"; + container nodes { + description + "IP subscriber operational data for a particular + location"; + list node { + key "node-name"; + description + "Location. For eg., 0/1/CPU0"; + container summary { + description + "IP subscriber interface summary"; + uses IPSUB-MA-INTF-SUMMARY-DATA; + } + container interfaces { + description + "IP subscriber interface table"; + list interface { + key "interface-name"; + description + "IP subscriber interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses IPSUB-MA-INTF-DATA; + } + } + container access-interfaces { + description + "IP subscriber access interface table"; + list access-interface { + key "interface-name"; + description + "IP subscriber access interface entry"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + uses IPSUB-MA-PARENT-INTF-DATA; + } + } + leaf node-name { + type xr:Node-id; + description + "The node ID to filter on. For eg., 0/1/CPU0"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-nal-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-nal-cfg.yang new file mode 100644 index 000000000..a79081390 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-nal-cfg.yang @@ -0,0 +1,626 @@ +module Cisco-IOS-XR-subscriber-nal-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-nal-cfg"; + prefix subscriber-nal-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 subscriber-nal package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-config-mda-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-04 { + description + "Added stats batch timer interval config CLI + 2022-03-03 + Removed headless timer interval config CLI + 2022-02-10 + Added SRG related configurations. + 2022-01-20 + Moved in-flight configurations from CMD file to ui file"; + semver:module-version "2.1.0"; + } + revision 2021-09-28 { + description + "Augmented MDA common config schema + 2021-08-18 + Added support for tcp mss adjust config + 2021-07-13 + Added support for l2tp enable CLI + 2021-07-07 + Added support for pre-configuration. + 2021-05-05 + Added support for storing tr459 mode. + 2021-04-01 + NAL access interface config for LNS."; + semver:module-version "2.0.0"; + } + revision 2020-12-01 { + description + "NAL access interface config."; + semver:module-version "1.0.0"; + } + revision 2020-11-24 { + description + "Auto loopback primary address."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE-CFG { + description + "active/preconfigured nodes configuration"; + container subscriber-cnbng-nal-loc { + presence "Indicates a subscriber-cnbng-nal-loc node is configured."; + description + "Table of SubscriberCnbngNalLoc"; + container nal-auto-lb-classes { + description + "Table of NALAutoLBClass"; + list nal-auto-lb-class { + key "vrf-name"; + description + "NAL Auto-Loopback configurations"; + container nal-auto-lb-int-classes { + description + "Table of NALAutoLBIntClass"; + list nal-auto-lb-int-class { + key "nal-auto-lb-int-name"; + description + "None"; + leaf nal-auto-lb-int-addr-class { + type inet:ipv4-address-no-zone; + description + "NAL auto-loopback Interface Primary-IP + address"; + } + leaf nal-auto-lb-int-name { + type xr:Interface-name; + description + "NAL auto-loopback Interface"; + } + } + } + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "Set constant string"; + } + } + } + container subscriber-redundancy { + presence "Indicates a subscriber-redundancy node is configured."; + description + "Subscriber redundancy configuration"; + container srg-groups { + description + "Table of SRGGroup"; + list srg-group { + key "srg-group-name"; + description + "SRG group configuration"; + container access-interfaces { + presence "Indicates a access-interfaces node is configured."; + description + "Access interface list for this SRG Group"; + leaf enable { + type empty; + mandatory true; + description + "Enable Access interface list for this SRG + Group. Deletion of this object also causes + deletion of all associated objects under + SRGGroupAccessIntfList."; + } + list access-interface { + key "intf-name"; + description + "Access interface"; + leaf intf-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf intf-name-xr { + type xr:Interface-name; + mandatory true; + description + "Interface name"; + } + } + } + leaf core-tracking-object { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Core Tracking Object for this SRG Group"; + } + leaf damping-timer { + type uint32 { + range "60..600"; + } + units "second"; + description + "Damping timer value for this SRG Group"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "Route tag for subnets belonging to this + group"; + } + leaf fast-switchover-disable { + type uint32; + description + "Disable fast switchover for this SRG group"; + } + leaf access-tracking-object { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Access Tracking Object for this SRG Group"; + } + leaf vmac-address { + type yang:mac-address; + description + "Virtual MAC address for this SRG Group"; + } + leaf srg-group-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "SRG Group ID"; + } + } + } + leaf srg-damping-timer { + type uint32 { + range "60..600"; + } + units "second"; + description + "Timer value (in secs)"; + } + leaf nal-stats-request-rate-timeout { + type uint32 { + range "10..8000"; + } + description + "Timeout rate of stats request(Restricted to + development)"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable Subscriber redundancy configuration. + Deletion of this object also causes deletion + of all associated objects under + SubscriberRedundancy."; + } + leaf nal-stats-request-rate { + type uint32 { + range "10..8000"; + } + description + "rate of stats request(Restricted to + development)"; + } + leaf nal-stats-request-svm-timeout { + type uint32 { + range "10..8000"; + } + description + "SVM timeout of stats request(Restricted to + development)"; + } + } + container nal-trans-cp-server-cfg { + description + "None"; + leaf nal-cp-primary-srv-cfg { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the CP's primary-server"; + } + } + container groups { + description + "Table of Group"; + list group { + key "group-id"; + description + "CnBNG NAL Group configuration"; + container interfaces { + description + "Table of Interface"; + list interface { + key "interface-name interface-id"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-id { + type uint32 { + range "1..65535"; + } + description + "ID for the interface to be mapped on to + slave"; + } + leaf mac-address { + type yang:mac-address; + mandatory true; + description + "MAC address"; + } + } + } + leaf description { + type string { + length "1..256"; + } + description + "Description for this Group"; + } + leaf tracking-object { + type string; + description + "Core Tracking Object for this Group"; + } + leaf group-id { + type uint32 { + range "1..4000"; + } + description + "Group ID"; + } + } + } + container nal-trans-up-server-cfg { + description + "None"; + leaf prefix-string { + type inet:ipv4-address-no-zone; + description + "IPv4 address for the UP-Server source + connection"; + } + leaf intf-name { + type xr:Interface-name; + description + "Source Interface"; + } + leaf gtp-port-num { + type uint32 { + range "15002..15051"; + } + description + "UP-server source GTP port-number"; + } + leaf pcfp-port-num { + type uint32 { + range "15002..15051"; + } + description + "UP-server source PFCP port-number"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "UP server's VRF Name"; + } + } + leaf nal-host-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "NAL Host-name"; + } + leaf nal-ipoe-fsol-flow-ctrl { + type uint32 { + range "50..400"; + } + description + "None"; + } + leaf nal-max-sub-create-in-progress { + type uint32 { + range "200..800"; + } + description + "Create request range"; + } + leaf nal-pppoe-fsol-flow-ctrl { + type uint32 { + range "50..400"; + } + description + "None"; + } + leaf nal-route-summary-tag { + type uint32 { + range "1..4294967295"; + } + description + "Tag value"; + } + leaf enable-tr459-mode { + type uint32; + description + "Set constant integer"; + } + leaf nal-max-delete-batch-timer { + type uint32 { + range "200..600"; + } + description + "Subscriber bulk disconnect timer timeout range"; + } + leaf nal-enable-sec-addr-upd { + type uint32; + description + "Enable secondary address update"; + } + leaf description { + type string { + length "1..256"; + } + description + "Config User-description"; + } + leaf nal-up-cp-stats-flow-ctrl { + type uint32 { + range "20..500"; + } + description + "limit"; + } + leaf nall2tp-tcp-mss-config { + type uint32 { + range "1280..1460"; + } + description + "Tcp mss adjust range"; + } + leaf nal-trace-level { + type uint32; + description + "Set constant integer"; + } + leaf nal-disconnect-history-file-logging { + type uint32; + description + "Set constant integer"; + } + leaf disable-secondary-address-notification { + type uint32; + description + "Set constant integer"; + } + leaf nal-max-delete-batch-size { + type uint32 { + range "600..1000"; + } + description + "Subscriber bulk disconnect range"; + } + leaf nal-cp-assoc-retry-cnt { + type uint32 { + range "5..20"; + } + description + "Retry count"; + } + leaf nall2tp-subscriber-config { + type uint32; + description + "Set constant integer"; + } + leaf spa-request-response-history-file-logging { + type uint32; + description + "Set constant integer"; + } + leaf nal-max-sub-delete-in-progress { + type uint32 { + range "2000..4000"; + } + description + "Delete request range"; + } + leaf nal-max-sub-update-in-progress { + type uint32 { + range "600..1400"; + } + description + "Update request range"; + } + leaf nal-up-cp-notif-flow-ctrl { + type uint32 { + range "20..400"; + } + description + "limit"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable Location Specification. Deletion of this + object also causes deletion of all associated + objects under SubscriberCnbngNalLoc."; + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + list cnbng-nal-ip-subscriber { + key "ip-sub"; + description + "None"; + leaf enable { + type empty; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects under + CnbngNalIpSubscriber."; + } + leaf ip-sub { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + list cnbng-nal-ipv4-sub-enable { + key "ipv4 ipv4l2-conn"; + description + "None"; + leaf enable { + type empty; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects + under CnbngNalIpv4SubEnable."; + } + leaf cnbng-nal-ipv4-sub-init-dhcp { + type empty; + description + "Enable"; + } + leaf ipv4 { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + leaf ipv4l2-conn { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + } + list cnbng-nal-ipv6-sub-enable { + key "ipv6 ipv6l2-conn"; + description + "None"; + leaf cnbng-nal-ipv6-sub-init-dhcp { + type empty; + description + "Enable"; + } + leaf enable { + type empty; + description + "Enable None. Deletion of this object also + causes deletion of all associated objects + under CnbngNalIpv6SubEnable."; + } + leaf ipv6 { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + leaf ipv6l2-conn { + type xr:Cisco-ios-xr-string; + description + "Set string"; + } + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container cnbng-nal-pppoe-subscriber { + description + "None"; + leaf pppoe { + type uint32; + description + "Set constant integer"; + } + leaf bba-group { + type string; + description + "The bba-group to use"; + } + } + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + leaf cnbng-nal-lns-subscriber { + type empty; + description + "Enable"; + } + } + augment "/node:active-nodes/node:active-node" { + description + "This augment extends active nodes configuration"; + uses NODE-CFG; + } + augment "/node:preconfigured-nodes/node:preconfigured-node" { + description + "This augment extends preconfigured nodes + configuration"; + uses NODE-CFG; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg.yang new file mode 100644 index 000000000..b7d18c72a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-pppoe-ma-cmd-cfg"; + prefix subscriber-pppoe-ma-cmd-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 subscriber-pppoe-ma-cmd package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container pppoe { + description + "Interface PPPoE configuration data"; + container enable-bba-group { + presence "Indicates a enable-bba-group node is configured."; + description + "Use this BBA-Group to enable PPPoE on this + interface"; + leaf enable { + type boolean; + mandatory true; + description + "Enable PPPoE on this interface"; + } + leaf bba-group-name { + type string; + description + "Name of the BBA-Group"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg.yang new file mode 100644 index 000000000..099c7bf7b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg.yang @@ -0,0 +1,940 @@ +module Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-pppoe-ma-gbl-cfg"; + prefix subscriber-pppoe-ma-gbl-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg { + prefix a1; + } + + 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 subscriber-pppoe-ma-gbl package configuration. + + This module contains definitions + for the following management objects: + pppoe-cfg: PPPOE configuration data + + This YANG module augments the + Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-07 { + description + "Added new cli under bba-group to disconnect existing sessions,if same host-uniq tag padi packet come."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-30 { + description + "Ensure propagation of MDA mandatory state to YANG model."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pppoe-invalid-session-id-behavior { + type enumeration { + enum "drop" { + value 0; + description + "Drop packets with an invalid session ID"; + } + enum "log" { + value 1; + description + "Log packets with an invalid session ID"; + } + } + description + "Pppoe invalid session id behavior"; + } + + augment "/a1:dynamic-template/a1:ppps/a1:ppp" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-subscriber-infra-tmplmgr-cfg'"; + container pppoe-template { + presence "Indicates a pppoe-template node is configured."; + description + "PPPoE template configuration data"; + leaf port-limit { + type xr:Cisco-ios-xr-port-number; + mandatory true; + description + "Specify the Port limit (attr 62) to apply to + the subscriber"; + } + } + } + container pppoe-cfg { + description + "PPPOE configuration data"; + container pppoe-bba-groups { + description + "PPPoE BBA-Group configuration data"; + list pppoe-bba-group { + key "bba-group"; + description + "PPPoE BBA-Group configuration data"; + container tag { + description + "PPPoE tag configuration data"; + container padr { + description + "PADR packets"; + leaf session-unique-relay-session-id { + type empty; + description + "Allow sessions to come up with unique + relay-session-id in padr"; + } + leaf invalid-payload-allow { + type empty; + description + "Allow sessions to come up with + invalid-payload"; + } + } + container service-name-configureds { + description + "Service name"; + list service-name-configured { + key "name"; + description + "Service name supported on this group"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Service name"; + } + } + } + container ppp-max-payload { + presence "Indicates a ppp-max-payload node is configured."; + description + "Minimum and maximum payloads"; + leaf min { + type uint32 { + range "500..2000"; + } + mandatory true; + description + "Minimum payload"; + } + leaf max { + type uint32 { + range "500..2000"; + } + mandatory true; + description + "Maximum payload"; + } + } + leaf ppp-max-payload-deny { + type empty; + description + "Ignore the ppp-max-payload tag"; + } + leaf service-selection-disable { + type empty; + description + "Disable advertising of unrequested service + names"; + } + leaf ac-name { + type string; + description + "The name to include in the AC tag"; + } + } + container sessions { + description + "PPPoE session configuration data"; + container vlan-throttle { + presence "Indicates a vlan-throttle node is configured."; + description + "Set VLAN (inner + outer tags) session + throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container inner-vlan-throttle { + presence "Indicates a inner-vlan-throttle node is configured."; + description + "Set Inner VLAN session throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container remote-id-limit { + presence "Indicates a remote-id-limit node is configured."; + description + "Set Remote ID session limit and threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-Remote ID limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-Remote ID threshold"; + } + } + container mac-iwf-access-interface-throttle { + presence "Indicates a mac-iwf-access-interface-throttle node is configured."; + description + "Set per-MAC/Access interface throttle for IWF + sessions"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container access-interface-limit { + presence "Indicates a access-interface-limit node is configured."; + description + "Set per-access interface limit"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-access interface session limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-access interface session threshold"; + } + } + container mac-access-interface-throttle { + presence "Indicates a mac-access-interface-throttle node is configured."; + description + "Set per-MAC/Access Interface throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container outer-vlan-limit { + presence "Indicates a outer-vlan-limit node is configured."; + description + "Set Outer VLAN session limit and threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-Outer VLAN limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-Outer VLAN threshold"; + } + } + container circuit-id-throttle { + presence "Indicates a circuit-id-throttle node is configured."; + description + "Set Circuit ID session throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container mac-limit { + presence "Indicates a mac-limit node is configured."; + description + "Set per-MAC address session limit and + threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-MAC session limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-MAC session threshold"; + } + } + container circuit-id-limit { + presence "Indicates a circuit-id-limit node is configured."; + description + "Set Circuit ID session limit and threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-Circuit ID limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-Circuit ID threshold"; + } + } + container mac-iwf-limit { + presence "Indicates a mac-iwf-limit node is configured."; + description + "Set per-MAC session limit and threshold for + IWF sessions"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-MAC session limit for IWF sessions"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-MAC session threshold for IWF sessions"; + } + } + container mac-iwf-access-interface-limit { + presence "Indicates a mac-iwf-access-interface-limit node is configured."; + description + "Set per-MAC access interface session limit + and threshold for IWF sessions"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-MAC access interface session limit for + IWF sessions"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-MAC access interface session threshold + for IWF sessions"; + } + } + container inner-vlan-limit { + presence "Indicates a inner-vlan-limit node is configured."; + description + "Set Inner VLAN session limit and threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-Inner VLAN limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-Inner VLAN threshold"; + } + } + container outer-vlan-throttle { + presence "Indicates a outer-vlan-throttle node is configured."; + description + "Set Outer VLAN session throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container mac-throttle { + presence "Indicates a mac-throttle node is configured."; + description + "Set per-MAC throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container circuit-id-and-remote-id-limit { + presence "Indicates a circuit-id-and-remote-id-limit node is configured."; + description + "Set Circuit ID and Remote ID session + limit/threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-Circuit ID limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-Circuit ID threshold"; + } + } + container vlan-limit { + presence "Indicates a vlan-limit node is configured."; + description + "Set VLAN (inner + outer tags) session limit + and threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-VLAN (inner + outer tags) limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-VLAN (inner + outer tags) threshold"; + } + } + container mac-access-interface-limit { + presence "Indicates a mac-access-interface-limit node is configured."; + description + "Set per-MAC access interface session limit + and threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-MAC access interface session limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-MAC access interface session threshold"; + } + } + container remote-id-throttle { + presence "Indicates a remote-id-throttle node is configured."; + description + "Set Remote ID session throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + container max-limit { + presence "Indicates a max-limit node is configured."; + description + "Set per-card session limit and threshold"; + leaf limit { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Per-card session limit"; + } + leaf threshold { + type uint32 { + range "1..65535"; + } + description + "Per-card session threshold"; + } + } + container circuit-id-and-remote-id-throttle { + presence "Indicates a circuit-id-and-remote-id-throttle node is configured."; + description + "Set Circuit ID and Remote ID session throttle"; + leaf throttle { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Number of requests at which to throttle"; + } + leaf request-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle request period"; + } + leaf blocking-period { + type uint32 { + range "1..100"; + } + mandatory true; + description + "Throttle blocking period"; + } + } + } + container control-packets { + description + "PPPoE control-packet configuration data"; + leaf priority { + type uint32 { + range "0..7"; + } + description + "Set the Priority to use for PPP and PPPoE + control packets"; + } + } + container pa-do-delay { + presence "Indicates a pa-do-delay node is configured."; + description + "PPPoE PADO delay configuration data"; + container remote-id-substrings { + description + "Delay the PADO response when the received + Remote ID contains the given string"; + list remote-id-substring { + key "name"; + description + "Delay the PADO response when the received + Remote ID contains the given string"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "The string to be contained within the + received Remote ID"; + } + leaf delay { + type uint32 { + range "0..10000"; + } + units "millisecond"; + mandatory true; + description + "PADO delay (in milliseconds)"; + } + } + } + container remote-id-strings { + description + "Delay the PADO response when there is an + exact match on the received Remote ID"; + list remote-id-string { + key "name"; + description + "Delay the PADO response when there is an + exact match on the received Remote ID"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "The string to exactly match the received + Remote ID"; + } + leaf delay { + type uint32 { + range "0..10000"; + } + units "millisecond"; + mandatory true; + description + "PADO delay (in milliseconds)"; + } + } + } + container service-name-strings { + description + "Delay the PADO response when there is an + exact match on the received Service Name"; + list service-name-string { + key "name"; + description + "Delay the PADO response when there is an + exact match on the received Service Name"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "The string to exactly match the received + Service Name"; + } + leaf delay { + type uint32 { + range "0..10000"; + } + units "millisecond"; + mandatory true; + description + "PADO delay (in milliseconds)"; + } + } + } + container circuit-id-substrings { + description + "Delay the PADO response when the received + Circuit ID contains the given string"; + list circuit-id-substring { + key "name"; + description + "Delay the PADO response when the received + Circuit ID contains the given string"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "The string to be contained within the + received Circuit ID"; + } + leaf delay { + type uint32 { + range "0..10000"; + } + units "millisecond"; + mandatory true; + description + "PADO delay (in milliseconds)"; + } + } + } + container service-name-substrings { + description + "Delay the PADO response when the received + Service Name contains the given string"; + list service-name-substring { + key "name"; + description + "Delay the PADO response when the received + Service Name contains the given string"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "The string to be contained within the + received Service Name"; + } + leaf delay { + type uint32 { + range "0..10000"; + } + units "millisecond"; + mandatory true; + description + "PADO delay (in milliseconds)"; + } + } + } + container circuit-id-strings { + description + "Delay the PADO response when there is an + exact match on the received Circuit ID"; + list circuit-id-string { + key "name"; + description + "Delay the PADO response when there is an + exact match on the received Circuit ID"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "The string to exactly match the received + Circuit ID"; + } + leaf delay { + type uint32 { + range "0..10000"; + } + units "millisecond"; + mandatory true; + description + "PADO delay (in milliseconds)"; + } + } + } + leaf default { + type uint32 { + range "0..10000"; + } + units "millisecond"; + mandatory true; + description + "PADO delay (in milliseconds)"; + } + leaf circuit-id { + type uint32 { + range "0..10000"; + } + units "millisecond"; + description + "Configure PADO delay dependent on the + received Circuit ID"; + } + leaf remote-id { + type uint32 { + range "0..10000"; + } + units "millisecond"; + description + "Configure PADO delay dependent on the + received Remote ID"; + } + } + leaf enable-renegotiate-on-padi { + type empty; + description + "Disconnect on padi with same host_uniq"; + } + leaf completion-timeout { + type uint32 { + range "30..600"; + } + description + "PPPoE session completion timeout"; + } + leaf invalid-session-id { + type Pppoe-invalid-session-id-behavior; + description + "Invalid session-ID behavior"; + } + leaf enable-padt-after-shut-down { + type empty; + description + "Enable padt after shutdown"; + } + leaf mtu { + type uint32 { + range "500..2000"; + } + description + "PPPoE default MTU"; + } + leaf bba-group { + type xr:Cisco-ios-xr-string; + description + "BBA-Group name"; + } + } + } + leaf session-id-space-flat { + type empty; + description + "Disable per-parent session ID spaces"; + } + leaf in-flight-window { + type uint32 { + range "1..20000"; + } + description + "Set the PPPoE in-flight window size"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1.yang new file mode 100644 index 000000000..4e047a1b9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1.yang @@ -0,0 +1,1702 @@ +submodule Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1 { + belongs-to Cisco-IOS-XR-subscriber-pppoe-ma-oper { + prefix Cisco-IOS-XR-subscriber-pppoe-ma-oper; + } + + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR subscriber-pppoe-ma package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-03 { + description + "Introduced an new bag element to display HA state"; + semver:module-version "4.0.0"; + } + revision 2021-07-01 { + description + "Introduced an new enum in cleanup count"; + semver:module-version "3.0.0"; + } + revision 2019-10-07 { + description + "Introduced an new cli pppoe bba-group padi host-uniq-disconnect"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Pppoe-ma-throttle-state { + type enumeration { + enum "idle" { + value 0; + description + "Idle State"; + } + enum "monitor" { + value 1; + description + "Monitor State"; + } + enum "block" { + value 2; + description + "Block State"; + } + } + description + "Pppoe ma throttle state"; + } + + typedef Pppoe-ma-limit-state { + type enumeration { + enum "ok" { + value 0; + description + "OK State"; + } + enum "warning" { + value 1; + description + "Warn State"; + } + enum "block" { + value 2; + description + "Block State"; + } + } + description + "Pppoe ma limit state"; + } + + typedef Pppoe-ma-bag-optional-string { + type string; + description + "String which may be optionally present."; + } + + typedef Im-state { + type uint32; + description + "Im state"; + } + + typedef Pppoe-ma-session-trig { + type enumeration { + enum "pppoe-ma-session-trig-error" { + value 0; + description + "pppoe ma session trig error"; + } + enum "pppoe-ma-session-trig-publish-encaps-attr-fail" { + value 1; + description + "pppoe ma session trig publish encaps attr fail"; + } + enum "pppoe-ma-session-trig-if-create-fail" { + value 2; + description + "pppoe ma session trig if create fail"; + } + enum "pppoe-ma-session-trig-iedge-session-start-fail" { + value 3; + description + "pppoe ma session trig iedge session start fail"; + } + enum "pppoe-ma-session-trig-iedge-session-update-fail" { + value 4; + description + "pppoe ma session trig iedge session update fail"; + } + enum "pppoe-ma-session-trig-sub-db-activate-fail" { + value 5; + description + "pppoe ma session trig sub db activate fail"; + } + enum "pppoe-ma-session-trig-in-flight-timeout" { + value 6; + description + "pppoe ma session trig in flight timeout"; + } + enum "pppoe-ma-session-trig-down" { + value 7; + description + "pppoe ma session trig down"; + } + enum "pppoe-ma-session-trig-parent" { + value 8; + description + "pppoe ma session trig parent"; + } + enum "pppoe-ma-session-trig-padt" { + value 9; + description + "pppoe ma session trig padt"; + } + enum "pppoe-ma-session-trig-session-pak" { + value 10; + description + "pppoe ma session trig session pak"; + } + enum "pppoe-ma-session-trig-final" { + value 11; + description + "pppoe ma session trig final"; + } + enum "pppoe-ma-session-trig-no-im-or" { + value 12; + description + "pppoe ma session trig no im or"; + } + enum "pppoe-ma-session-trig-restart" { + value 13; + description + "pppoe ma session trig restart"; + } + enum "pppoe-ma-session-trig-admissions-config-change" { + value 14; + description + "pppoe ma session trig admissions config change"; + } + enum "pppoe-ma-session-trig-iedge-disconnect" { + value 15; + description + "pppoe ma session trig iedge disconnect"; + } + enum "pppoe-ma-session-trig-invalid-vlan-tags" { + value 16; + description + "pppoe ma session trig invalid vlan tags"; + } + enum "pppoe-ma-session-trig-port-limit-disconnect" { + value 17; + description + "pppoe ma session trig port limit disconnect"; + } + enum "pppoe-ma-session-trig-srg-disconnect" { + value 18; + description + "pppoe ma session trig srg disconnect"; + } + enum "pppoe-ma-session-trig-srg-sweep" { + value 19; + description + "pppoe ma session trig srg sweep"; + } + enum "pppoe-ma-session-trig-renegotiation" { + value 20; + description + "pppoe ma session trig renegotiation"; + } + enum "pppoe-ma-session-trig-destroy-ing-cleanup-timer" { + value 21; + description + "pppoe ma session trig destroy ing cleanup timer"; + } + enum "pppoe-ma-session-trig-stopping-cleanup-timer" { + value 22; + description + "pppoe ma session trig stopping cleanup timer"; + } + enum "pppoe-ma-session-trig-deleting-cleanup-timer" { + value 23; + description + "pppoe ma session trig deleting cleanup timer"; + } + enum "pppoe-ma-session-trig-host-uniq-insert-fail" { + value 24; + description + "pppoe ma session trig host uniq insert fail"; + } + enum "pppoe-ma-session-trig-count" { + value 25; + description + "pppoe ma session trig count"; + } + } + description + "Pppoe ma session trig"; + } + + typedef Pppoe-ma-session-idb-srg-state { + type enumeration { + enum "none" { + value 0; + description + "SRG-None state"; + } + enum "active" { + value 1; + description + "SRG-Active state"; + } + enum "standby" { + value 2; + description + "SRG-Standby state"; + } + } + description + "Pppoe ma session idb srg state"; + } + + typedef Pppoe-ma-session-state { + type enumeration { + enum "destroying" { + value 0; + description + "Destroying session"; + } + enum "deleting" { + value 1; + description + "Deleting interface"; + } + enum "initializing" { + value 2; + description + "Initializing"; + } + enum "created" { + value 3; + description + "Interface created"; + } + enum "stopping" { + value 4; + description + "Stopping AAA session"; + } + enum "started" { + value 5; + description + "AAA session started"; + } + enum "activated" { + value 6; + description + "SubDB Config activated"; + } + enum "complete" { + value 7; + description + "Complete"; + } + } + description + "Pppoe ma session state"; + } + + grouping PPPOE-MA-SUMMARY-TOTAL-INFO { + description + "PPPoE MA Summary Total information"; + leaf ready-access-interfaces { + type uint32; + description + "Ready Access Interface Count"; + } + leaf not-ready-access-interfaces { + type uint32; + description + "Not Ready Access Interface Count"; + } + leaf complete-sessions { + type uint32; + description + "Complete Session Count"; + } + leaf incomplete-sessions { + type uint32; + description + "Incomplete Session Count"; + } + leaf flow-control-limit { + type uint32; + description + "Flow Control credit limit"; + } + leaf flow-control-in-flight-sessions { + type uint32; + description + "Flow Control In-Flight Count"; + } + leaf flow-control-dropped-sessions { + type uint64; + description + "Flow Control Drop Count"; + } + leaf flow-control-disconnected-sessions { + type uint64; + description + "Flow Control Disconnected Count"; + } + leaf flow-control-successful-sessions { + type uint64; + description + "Flow Control Success Count, sessions completing + call flow"; + } + leaf pppoema-subscriber-infra-flow-control { + type uint32; + description + "PPPoEMASubscriberInfraFlowControl"; + } + } + + grouping PPPOE-MA-THROTTLE-CONFIG-SINGLE { + description + "PPPoE MA Single Throttle Config Information"; + leaf limit { + type uint32; + description + "Limit"; + } + leaf request-period { + type uint32; + description + "Request Period"; + } + leaf blocking-period { + type uint32; + description + "Blocking Period"; + } + } + + grouping PPPOE-MA-THROTTLE-CONFIG-INFO { + description + "PPPoE MA Throttle Config Information"; + container mac { + description + "MAC"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container mac-access-interface { + description + "MAC Access Interface"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container mac-iwf-access-interface { + description + "MAC IWF Access Interface"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container circuit-id { + description + "Circuit ID"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container remote-id { + description + "Remote ID"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container circuit-id-and-remote-id { + description + "Circuit ID and Remote ID"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container outer-vlan-id { + description + "Outer VLAN ID"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container inner-vlan-id { + description + "Inner VLAN ID"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + container vlan-id { + description + "VLAN ID"; + uses PPPOE-MA-THROTTLE-CONFIG-SINGLE; + } + } + + grouping PPPOE-MA-THROTTLE-INFO { + description + "PPPoE MA Throttle information"; + leaf state { + type Pppoe-ma-throttle-state; + description + "State"; + } + leaf time-left { + type uint32; + units "second"; + description + "Time left in seconds"; + } + leaf since-reset { + type uint32; + units "second"; + description + "Number of seconds since counters reset"; + } + leaf padi-count { + type uint32; + description + "PADI Count"; + } + leaf padr-count { + type uint32; + description + "PADR Count"; + } + } + + grouping PPPOE-MA-LIMIT-INFO { + description + "PPPoE MA Limit information"; + leaf state { + type Pppoe-ma-limit-state; + description + "State"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + leaf radius-override-set { + type int32; + description + "Overridden limit has been set"; + } + leaf override-limit { + type uint32; + description + "Overridden limit if set"; + } + } + + grouping PPPOE-MA-LIMIT-CONFIG-SINGLE { + description + "PPPoE MA Single Limit Config information"; + leaf max-limit { + type uint32; + description + "Max Limit"; + } + leaf threshold { + type uint32; + description + "Threshold"; + } + leaf radius-override-enabled { + type int32; + description + "Radius override is enabled"; + } + } + + grouping PPPOE-MA-LIMIT-CONFIG-INFO { + description + "PPPoE MA Limit Configuration Information"; + container card { + description + "Card"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container access-intf { + description + "Access Interface"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container mac { + description + "MAC"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container mac-iwf { + description + "MAC IWF"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container mac-access-interface { + description + "MAC Access Interface"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container mac-iwf-access-interface { + description + "MAC IWF Access Interface"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container circuit-id { + description + "Circuit ID"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container remote-id { + description + "Remote ID"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container circuit-id-and-remote-id { + description + "Circuit ID and Remote ID"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container outer-vlan-id { + description + "Outer VLAN ID"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container inner-vlan-id { + description + "Inner VLAN ID"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + container vlan-id { + description + "VLAN ID"; + uses PPPOE-MA-LIMIT-CONFIG-SINGLE; + } + } + + grouping PPPOE-MA-TAGS-INFO { + description + "Tags information"; + container access-loop-encapsulation { + description + "Access Loop Encapsulation"; + uses PPPOE-MA-TAGS-ALE-INFO; + } + leaf service-name { + type Pppoe-ma-bag-optional-string; + description + "Service Name"; + } + leaf max-payload { + type uint16; + description + "Max Payload"; + } + leaf host-uniq { + type yang:hex-string; + description + "Host Uniq"; + } + leaf relay-session-id { + type yang:hex-string; + description + "Relay Session ID"; + } + leaf remote-id { + type Pppoe-ma-bag-optional-string; + description + "Remote ID"; + } + leaf circuit-id { + type Pppoe-ma-bag-optional-string; + description + "Circuit ID"; + } + leaf is-iwf { + type int32; + description + "Is IWF"; + } + leaf dsl-actual-up { + type uint32; + description + "DSL Actual Up"; + } + leaf dsl-actual-down { + type uint32; + description + "DSL Actual Down"; + } + leaf dsl-min-up { + type uint32; + description + "DSL Min Up"; + } + leaf dsl-min-down { + type uint32; + description + "DSL Min Down"; + } + leaf dsl-attain-up { + type uint32; + description + "DSL Attain Up"; + } + leaf dsl-attain-down { + type uint32; + description + "DSL Attain Down"; + } + leaf dsl-max-up { + type uint32; + description + "DSL Max Up"; + } + leaf dsl-max-down { + type uint32; + description + "DSL Max Down"; + } + leaf dsl-min-up-low { + type uint32; + description + "DSL Min Up Low"; + } + leaf dsl-min-down-low { + type uint32; + description + "DSL Min Down Low"; + } + leaf dsl-max-delay-up { + type uint32; + description + "DSL Max Delay Up"; + } + leaf dsl-actual-delay-up { + type uint32; + description + "DSL Actual Delay Up"; + } + leaf dsl-max-delay-down { + type uint32; + description + "DSL Max Delay Down"; + } + leaf dsl-actual-delay-down { + type uint32; + description + "DSL Actual Delay Down"; + } + } + + grouping PPPOE-MA-INTERFACE-INFO { + description + "PPPoE MA interface information"; + container tags { + description + "Tags"; + uses PPPOE-MA-TAGS-INFO; + } + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf access-interface-name { + type xr:Interface-name; + description + "Access Interface"; + } + leaf bba-group-name { + type string; + description + "BBA Group"; + } + leaf session-id { + type uint16; + description + "Session ID"; + } + leaf local-mac-address { + type yang:mac-address; + description + "Local Mac-Address"; + } + leaf peer-mac-address { + type yang:mac-address; + description + "Peer Mac-Address"; + } + leaf is-complete { + type int32; + description + "Is Complete"; + } + leaf vlan-outer-id { + type uint16; + description + "VLAN Outer ID"; + } + leaf vlan-inner-id { + type uint16; + description + "VLAN Inner ID"; + } + leaf srg-state { + type Pppoe-ma-session-idb-srg-state; + description + "SRG state"; + } + } + + grouping PPPOE-MA-ACCESS-INTERFACE-INFO { + description + "PPPoE MA Access interface information"; + leaf interface-name-xr { + type xr:Interface-name; + description + "Interface"; + } + leaf interface-state { + type Im-state; + description + "Interface State"; + } + leaf mac-address { + type yang:mac-address; + description + "Mac Address"; + } + leaf bba-group-name { + type string; + description + "BBA Group"; + } + leaf is-ready { + type int32; + description + "Is Ready"; + } + leaf sessions { + type uint32; + description + "Session Count"; + } + leaf incomplete-sessions { + type uint32; + description + "Incomplete Session Count"; + } + } + + grouping PPPOE-MA-PACKET-ERROR-COUNTS { + description + "PPPoE MA Packet Error Counts"; + leaf no-interface-handle { + type uint32; + description + "No interface handle"; + } + leaf no-packet-payload { + type uint32; + description + "No packet payload"; + } + leaf no-packet-mac-address { + type uint32; + description + "No packet mac-address"; + } + leaf invalid-version-type-value { + type uint32; + description + "Invalid version-type value"; + } + leaf bad-packet-length { + type uint32; + description + "Bad packet length"; + } + leaf unknown-interface { + type uint32; + description + "Unknown interface"; + } + leaf pado-received { + type uint32; + description + "PADO received"; + } + leaf pads-received { + type uint32; + description + "PADS received"; + } + leaf unknown-packet-type-received { + type uint32; + description + "Unknown packet type received"; + } + leaf unexpected-session-id-in-packet { + type uint32; + description + "Unexpected Session-ID in packet"; + } + leaf no-service-name-tag { + type uint32; + description + "No Service-Name Tag"; + } + leaf padt-for-unknown-session { + type uint32; + description + "PADT for unknown session"; + } + leaf padt-with-wrong-peer-mac { + type uint32; + description + "PADT with wrong peer-mac"; + } + leaf padt-with-wrong-vlan-tags { + type uint32; + description + "PADT with wrong VLAN tags"; + } + leaf zero-length-host-uniq { + type uint32; + description + "Zero-length Host-Uniq tag"; + } + leaf padt-before-pads-sent { + type uint32; + description + "PADT before PADS sent"; + } + leaf session-stage-packet-for-unknown-session { + type uint32; + description + "Session-stage packet for unknown session"; + } + leaf session-stage-packet-with-wrong-mac { + type uint32; + description + "Session-stage packet with wrong mac"; + } + leaf session-stage-packet-with-wrong-vlan-tags { + type uint32; + description + "Session-stage packet with wrong VLAN tags"; + } + leaf session-stage-packet-with-no-error { + type uint32; + description + "Session-stage packet with no error"; + } + leaf tag-too-short { + type uint32; + description + "Tag too short"; + } + leaf bad-tag-length-field { + type uint32; + description + "Bad tag-length field"; + } + leaf multiple-service-name-tags { + type uint32; + description + "Multiple Service-Name tags"; + } + leaf multiple-max-payload-tags { + type uint32; + description + "Multiple Max-Payload tags"; + } + leaf invalid-max-payload-tag { + type uint32; + description + "Invalid Max-Payload tag"; + } + leaf multiple-vendor-specific-tags { + type uint32; + description + "Multiple Vendor-specific tags"; + } + leaf unexpected-ac-name-tag { + type uint32; + description + "Unexpected AC-Name tag"; + } + leaf unexpected-error-tags { + type uint32; + description + "Unexpected error tags"; + } + leaf unknown-tag-received { + type uint32; + description + "Unknown tag received"; + } + leaf no-iana-code-invendor-tag { + type uint32; + description + "No IANA code in vendor tag"; + } + leaf invalid-iana-code-invendor-tag { + type uint32; + description + "Invalid IANA code in vendor tag"; + } + leaf vendor-tag-too-short { + type uint32; + description + "Vendor tag too short"; + } + leaf bad-vendor-tag-length-field { + type uint32; + description + "Bad vendor tag length field"; + } + leaf multiple-host-uniq-tags { + type uint32; + description + "Multiple Host-Uniq tags"; + } + leaf multiple-relay-session-id-tags { + type uint32; + description + "Multiple relay-session-id tags"; + } + leaf multiple-circuit-id-tags { + type uint32; + description + "Multiple Circuit-ID tags"; + } + leaf multiple-remote-id-tags { + type uint32; + description + "Multiple Remote-ID tags"; + } + leaf invalid-dsl-tag { + type uint32; + description + "Invalid DSL tag"; + } + leaf multiple-of-the-same-dsl-tag { + type uint32; + description + "Multiple of the same DSL tag"; + } + leaf invalid-iwf-tag { + type uint32; + description + "Invalid IWF tag"; + } + leaf multiple-iwf-tags { + type uint32; + description + "Multiple IWF tags"; + } + leaf unknownvendor-tag { + type uint32; + description + "Unknown vendor-tag"; + } + leaf no-space-left-in-packet { + type uint32; + description + "No space left in packet"; + } + leaf duplicate-host-uniq-tag-received { + type uint32; + description + "Duplicate Host-Uniq tag received"; + } + leaf duplicate-relay-session-id-tag-received { + type uint32; + description + "Duplicate Relay Session ID tag received"; + } + leaf packet-too-long { + type uint32; + description + "Packet too long"; + } + leaf invalid-ale-tag { + type uint32; + description + "Invalid ALE tag"; + } + leaf multiple-ale-tags { + type uint32; + description + "Multiple ALE tags"; + } + leaf invalid-service-name { + type uint32; + description + "Invalid Service Name"; + } + leaf invalid-peer-mac { + type uint32; + description + "Invalid Peer MAC"; + } + leaf invalid-vlan-tags { + type uint32; + description + "Invalid VLAN Tags"; + } + leaf packet-on-srg-slave { + type uint32; + description + "Packet Received on SRG Slave"; + } + } + + grouping PPPOE-MA-TOTAL-STATS-INFO { + description + "PPPoE MA Total Statistics Information"; + container packet-counts { + description + "Packet Counts"; + uses PPPOE-MA-PACKET-COUNTS; + } + container packet-error-counts { + description + "Packet Error Counts"; + uses PPPOE-MA-PACKET-ERROR-COUNTS; + } + } + + grouping PPPOE-MA-DISC-HISTORY-UNIQUE { + description + "Wrapping history of disconnected subscribers"; + leaf-list disconnect-count { + type uint32; + max-elements "25"; + description + "The total number of disconnects"; + } + list entry { + max-elements "25"; + description + "Array of disconnected subscribers"; + uses PPPOE-MA-DISC-ENTRY; + } + } + + grouping PPPOE-MA-VLAN-TAG-TYPE { + description + "VLAN Tag Information"; + leaf ether-type { + type uint16; + description + "Ethertype. See IEEE 802.1Q for more information."; + } + leaf user-priority { + type uint8; + description + "User Priority"; + } + leaf cfi { + type uint8; + description + "CFI"; + } + leaf vlan-id { + type uint16; + description + "VLAN ID"; + } + } + + grouping PPPOE-MA-TAGS-ALE-INFO { + description + "Access-Loop-Encapsulation tag. See RFC-4679 for + more detail"; + leaf data-link { + type uint8; + description + "Data Link"; + } + leaf encaps1 { + type uint8; + description + "Encaps 1"; + } + leaf encaps2 { + type uint8; + description + "Encaps 2"; + } + } + + grouping PPPOE-MA-INTERNAL-TAGS-INFO { + description + "Tags information"; + container access-loop-encapsulation { + description + "Access Loop Encapsulation"; + uses PPPOE-MA-TAGS-ALE-INFO; + } + leaf is-service-name { + type int32; + description + "Is Service Name"; + } + leaf is-max-payload { + type int32; + description + "Is Max Payload"; + } + leaf is-host-uniq { + type int32; + description + "Is Host Uniq"; + } + leaf is-relay-session-id { + type int32; + description + "Is Relay Session ID"; + } + leaf is-vendor-specific { + type int32; + description + "Is Vendor Specific"; + } + leaf is-iwf { + type int32; + description + "Is IWF"; + } + leaf is-remote-id { + type int32; + description + "Is Remote ID"; + } + leaf is-circuit-id { + type int32; + description + "Is Circuit ID"; + } + leaf is-dsl-tag { + type int32; + description + "Is DSL Tag"; + } + leaf service-name { + type string; + description + "Service Name"; + } + leaf max-payload { + type uint32; + description + "Max Payload"; + } + leaf host-uniq { + type yang:hex-string; + description + "Host Uniq"; + } + leaf relay-session-id { + type yang:hex-string; + description + "Relay Session ID"; + } + leaf remote-id { + type string; + description + "Remote ID"; + } + leaf circuit-id { + type string; + description + "Circuit ID"; + } + leaf is-dsl-actual-up { + type int32; + description + "Is DSL Actual Up"; + } + leaf is-dsl-actual-down { + type int32; + description + "Is DSL Actual Down"; + } + leaf is-dsl-min-up { + type int32; + description + "Is DSL Min Up"; + } + leaf is-dsl-min-down { + type int32; + description + "Is DSL Min Down"; + } + leaf is-dsl-attain-up { + type int32; + description + "Is DSL Attain Up"; + } + leaf is-dsl-attain-down { + type int32; + description + "Is DSL Attain Down"; + } + leaf is-dsl-max-up { + type int32; + description + "Is DSL Max Up"; + } + leaf is-dsl-max-down { + type int32; + description + "Is DSL Max Down"; + } + leaf is-dsl-min-up-low { + type int32; + description + "Is DSL Min Up Low"; + } + leaf is-dsl-min-down-low { + type int32; + description + "Is DSL Min Down Low"; + } + leaf is-dsl-max-delay-up { + type int32; + description + "Is DSL Max Delay Up"; + } + leaf is-dsl-actual-delay-up { + type int32; + description + "Is DSL Actual Delay Up"; + } + leaf is-dsl-max-delay-down { + type int32; + description + "Is DSL Max Delay Down"; + } + leaf is-dsl-actual-delay-down { + type int32; + description + "Is DSL Actual Delay Down"; + } + leaf is-access-loop-encapsulation { + type int32; + description + "Is Access Loop Encapsulation"; + } + leaf dsl-actual-up { + type uint32; + description + "DSL Actual Up"; + } + leaf dsl-actual-down { + type uint32; + description + "DSL Actual Down"; + } + leaf dsl-min-up { + type uint32; + description + "DSL Min Up"; + } + leaf dsl-min-down { + type uint32; + description + "DSL Min Down"; + } + leaf dsl-attain-up { + type uint32; + description + "DSL Attain Up"; + } + leaf dsl-attain-down { + type uint32; + description + "DSL Attain Down"; + } + leaf dsl-max-up { + type uint32; + description + "DSL Max Up"; + } + leaf dsl-max-down { + type uint32; + description + "DSL Max Down"; + } + leaf dsl-min-up-low { + type uint32; + description + "DSL Min Up Low"; + } + leaf dsl-min-down-low { + type uint32; + description + "DSL Min Down Low"; + } + leaf dsl-max-delay-up { + type uint32; + description + "DSL Max Delay Up"; + } + leaf dsl-actual-delay-up { + type uint32; + description + "DSL Actual Delay Up"; + } + leaf dsl-max-delay-down { + type uint32; + description + "DSL Max Delay Down"; + } + leaf dsl-actual-delay-down { + type uint32; + description + "DSL Actual Delay Down"; + } + } + + grouping PPPOE-MA-SESSION-IDB-INFO { + description + "PPPoE MA Session IDB information"; + container tags { + description + "Tags"; + uses PPPOE-MA-INTERNAL-TAGS-INFO; + } + container vlan-outer-tag { + description + "VLAN Outer Tag"; + uses PPPOE-MA-VLAN-TAG-TYPE; + } + container vlan-inner-tag { + description + "VLAN Inner Tag"; + uses PPPOE-MA-VLAN-TAG-TYPE; + } + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + leaf access-interface { + type xr:Interface-name; + description + "Access Interface"; + } + leaf session-id { + type uint16; + description + "Session ID"; + } + leaf sub-label { + type uint32; + description + "Sub Label"; + } + leaf peer-mac-address { + type yang:mac-address; + description + "Peer Mac-Address"; + } + leaf state { + type Pppoe-ma-session-state; + description + "State"; + } + leaf cdm-object-handle { + type uint32; + description + "CDM Object Handle"; + } + leaf chkpt-id { + type uint32; + description + "Chkpt ID"; + } + leaf punted-count { + type uint32; + description + "Punted Count"; + } + leaf port-limit { + type uint32; + description + "Port Limit"; + } + leaf is-counted { + type int32; + description + "Is BBA Counted"; + } + leaf is-vlan-outer-tag { + type int32; + description + "Is VLAN Outer Tag"; + } + leaf is-vlan-inner-tag { + type int32; + description + "Is VLAN Inner Tag"; + } + leaf is-cleanup-pending { + type int32; + description + "Is Cleanup Pending"; + } + leaf is-disconnect-done-pending { + type int32; + description + "Is Disconnect Done Pending"; + } + leaf is-delete-done-pending { + type int32; + description + "Is Delete Done Pending"; + } + leaf is-intf-create-callback-pending { + type int32; + description + "Is Interface Create Callback pending"; + } + leaf is-publish-encaps-attr-pending { + type int32; + description + "Is Publish Encaps Attr pending"; + } + leaf is-publish-encaps-attr-cb-pending { + type int32; + description + "Is Publish Encaps Attr Callback pending"; + } + leaf is-intf-delete-callback-pending { + type int32; + description + "Is Interface Delete Callback pending"; + } + leaf is-intf-delete-pending { + type int32; + description + "Is Interface Delete pending"; + } + leaf is-im-owned-resource { + type int32; + description + "Is IM Owned Resource"; + } + leaf is-im-final-received { + type int32; + description + "Is IM Final received"; + } + leaf is-im-owned-resource-missing { + type int32; + description + "Is IM Owned Resource missing"; + } + leaf is-aaa-start-request-callback-pending { + type int32; + description + "Is AAA Start request callback pending"; + } + leaf is-aaa-owned-resource { + type int32; + description + "Is AAA Owned Resource"; + } + leaf is-aaa-disconnect-requested { + type int32; + description + "Is AAA Disconnect Requested"; + } + leaf is-aaa-disconnect-received { + type int32; + description + "Is AAA Disconnect Received"; + } + leaf is-sub-db-activate-callback-pending { + type int32; + description + "Is SubDB Activate callback pending"; + } + leaf is-pads-sent { + type int32; + description + "Is PADS Sent"; + } + leaf is-padt-received { + type int32; + description + "Is PADT Received"; + } + leaf is-in-flight { + type int32; + description + "Is Session In Flight"; + } + leaf is-radius-override { + type int32; + description + "Is RADIUS override enabled"; + } + leaf expected-notifications { + type uint8; + description + "Expected Notifications"; + } + leaf received-notifications { + type uint8; + description + "Received Notifications"; + } + leaf srg-state { + type Pppoe-ma-session-idb-srg-state; + description + "SRG state"; + } + leaf is-srg-data-received { + type int32; + description + "Is SRG Data Received"; + } + leaf is-iedge-data-received { + type int32; + description + "Is IEDGE Data Received"; + } + } + + grouping PPPOE-MA-DISC-ENTRY { + description + "PPPoE disconnected subscriber information"; + container session-idb { + description + "Session IDB"; + uses PPPOE-MA-SESSION-IDB-INFO; + } + leaf timestamp { + type uint64; + description + "Time when disconnected"; + } + leaf ifname { + type string; + description + "Interface name"; + } + leaf trigger { + type Pppoe-ma-session-trig; + description + "Disconnect Trigger"; + } + } + + grouping PPPOE-MA-DISC-HISTORY { + description + "Wrapping history of disconnected subscribers"; + leaf current-idx { + type uint32; + description + "Current index of history"; + } + list entry { + description + "Array of disconnected subscribers"; + uses PPPOE-MA-DISC-ENTRY; + } + } + + grouping PPPOE-MA-PACKET-TYPE-COUNTS { + description + "PPPoE MA Packet type counts"; + leaf sent { + type uint32; + description + "Sent"; + } + leaf received { + type uint32; + description + "Received"; + } + leaf dropped { + type uint32; + description + "Dropped"; + } + } + + grouping PPPOE-MA-PACKET-COUNTS { + description + "PPPoE MA Packet Counts"; + container padi { + description + "PADI counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + container pado { + description + "PADO counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + container padr { + description + "PADR counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + container pads-success { + description + "PADS Success counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + container pads-error { + description + "PADS Error counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + container padt { + description + "PADT counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + container session-state { + description + "Session Stage counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + container other { + description + "Other counts"; + uses PPPOE-MA-PACKET-TYPE-COUNTS; + } + } + + grouping PPPOE-MA-ACCESS-INTERFACE-STATS-INFO { + description + "PPPoE MA Access Interface Statistics Information"; + container packet-counts { + description + "Packet Counts"; + uses PPPOE-MA-PACKET-COUNTS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper.yang new file mode 100644 index 000000000..65abccc6d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-pppoe-ma-oper.yang @@ -0,0 +1,277 @@ +module Cisco-IOS-XR-subscriber-pppoe-ma-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-pppoe-ma-oper"; + prefix subscriber-pppoe-ma-oper; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-subscriber-pppoe-ma-oper-sub1 { + revision-date 2022-03-03; + } + + 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 subscriber-pppoe-ma package operational data. + + This module contains definitions + for the following management objects: + pppoe: PPPoE operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-03 { + description + "Introduced an new bag element to display HA state"; + semver:module-version "4.0.0"; + } + revision 2021-07-01 { + description + "Introduced an new enum in cleanup count"; + semver:module-version "3.0.0"; + } + revision 2019-10-07 { + description + "Introduced an new cli pppoe bba-group padi host-uniq-disconnect"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container pppoe { + config false; + description + "PPPoE operational data"; + container access-interface-statistics { + description + "PPPoE access interface statistics information"; + list access-interface-statistic { + key "interface-name"; + description + "Statistics information for a PPPoE-enabled + access interface"; + leaf interface-name { + type xr:Interface-name; + description + "PPPoE Access Interface"; + } + uses PPPOE-MA-ACCESS-INTERFACE-STATS-INFO; + } + } + container nodes { + description + "Per-node PPPoE operational data"; + list node { + key "node-name"; + description + "PPPoE operational data for a particular node"; + container disconnect-history { + description + "PPPoE disconnect history for a given node"; + uses PPPOE-MA-DISC-HISTORY; + } + container disconnect-history-unique { + description + "PPPoE unique disconnect history for a given + node"; + uses PPPOE-MA-DISC-HISTORY-UNIQUE; + } + container statistics { + description + "PPPoE statistics for a given node"; + uses PPPOE-MA-TOTAL-STATS-INFO; + } + container access-interface { + description + "PPPoE access interface information"; + container summaries { + description + "PPPoE access interface summary information"; + list summary { + key "interface-name"; + description + "Summary information for a PPPoE-enabled + access interface"; + leaf interface-name { + type xr:Interface-name; + description + "PPPoE Access Interface"; + } + uses PPPOE-MA-ACCESS-INTERFACE-INFO; + } + } + } + container interfaces { + description + "Per interface PPPoE operational data"; + list interface { + key "interface-name"; + description + "Data for a PPPoE interface"; + leaf interface-name { + type xr:Interface-name; + description + "PPPoE Interface"; + } + uses PPPOE-MA-INTERFACE-INFO; + } + } + container bba-groups { + description + "PPPoE BBA-Group information"; + list bba-group { + key "bba-group-name"; + description + "PPPoE BBA-Group information"; + container limit-config { + description + "BBA-Group limit configuration information"; + uses PPPOE-MA-LIMIT-CONFIG-INFO; + } + container limits { + description + "PPPoE session limit information"; + list limit { + description + "PPPoE session limit state"; + leaf interface-name { + type xr:Interface-name; + description + "Access Interface"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf iwf { + type boolean; + description + "IWF flag"; + } + leaf circuit-id { + type xr:Cisco-ios-xr-string; + description + "Circuit ID"; + } + leaf remote-id { + type xr:Cisco-ios-xr-string; + description + "Remote ID"; + } + leaf outer-vlan-id { + type uint32 { + range "0..4095"; + } + description + "Outer VLAN ID"; + } + leaf inner-vlan-id { + type uint32 { + range "0..4095"; + } + description + "Inner VLAN ID"; + } + uses PPPOE-MA-LIMIT-INFO; + } + } + container throttles { + description + "PPPoE throttle information"; + list throttle { + description + "PPPoE session throttle state"; + leaf interface-name { + type xr:Interface-name; + description + "Access Interface"; + } + leaf mac-address { + type yang:mac-address; + description + "MAC address"; + } + leaf iwf { + type boolean; + description + "IWF flag"; + } + leaf circuit-id { + type xr:Cisco-ios-xr-string; + description + "Circuit ID"; + } + leaf remote-id { + type xr:Cisco-ios-xr-string; + description + "Remote ID"; + } + leaf outer-vlan-id { + type uint32 { + range "0..4095"; + } + description + "Outer VLAN ID"; + } + leaf inner-vlan-id { + type uint32 { + range "0..4095"; + } + description + "Inner VLAN ID"; + } + uses PPPOE-MA-THROTTLE-INFO; + } + } + container throttle-config { + description + "BBA-Group throttle configuration information"; + uses PPPOE-MA-THROTTLE-CONFIG-INFO; + } + leaf bba-group-name { + type xr:Cisco-ios-xr-string; + description + "BBA Group"; + } + } + } + container summary-total { + description + "PPPoE statistics for a given node"; + uses PPPOE-MA-SUMMARY-TOTAL-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-mibs-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-mibs-cfg.yang new file mode 100644 index 000000000..72b34902c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-mibs-cfg.yang @@ -0,0 +1,219 @@ +module Cisco-IOS-XR-subscriber-session-mon-mibs-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-session-mon-mibs-cfg"; + prefix subscriber-session-mon-mibs-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 subscriber-session-mon-mibs package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE-TABLE { + description + "Common node of rising, falling, percent, + evaluation"; + container nodes { + description + "Table of Node"; + list node { + key "node-name"; + description + "Rising node level"; + leaf session-count { + type uint32 { + range "1..4294967294"; + } + description + "Session count"; + } + leaf interval { + type uint32 { + range "30..3600"; + } + description + "interval value in multiples of 10"; + } + leaf node-name { + type xr:Node-id; + description + "location"; + } + } + } + } + + grouping ACCESS-INTERFACE-TABLE { + description + "Common node of rising, falling, percent, + evaluation"; + container access-interfaces { + description + "Table of AccessInterface"; + list access-interface { + key "interface-name"; + description + "Access interface"; + leaf session-count { + type uint32 { + range "1..4294967294"; + } + description + "Session count"; + } + leaf interval { + type uint32 { + range "30..3600"; + } + description + "Interval value in multiples of 10"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + } + } + + augment "/a1:mib" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container subscriber { + description + "Subscriber threshold commands"; + container threshold { + description + "Subscriber threshold commands"; + container delta { + description + "Delta loss keyword"; + container evaluation { + description + "Evaluation keyword"; + uses ACCESS-INTERFACE-TABLE; + uses NODE-TABLE; + } + container percent { + description + "Delta loss percent"; + uses ACCESS-INTERFACE-TABLE; + uses NODE-TABLE; + } + } + container access-interface-sub { + description + "Access interface for regular expression"; + container subsets { + description + "Table of Subset"; + list subset { + key "subset-id"; + description + "Subset command"; + container regular-expression { + description + "Regular expression"; + container notification { + description + "Notification keyword"; + container rising-falling { + description + "Rising-falling threshold"; + leaf disable { + type string; + description + "Disable the notifications on access + interfaces"; + } + } + } + } + leaf subset-id { + type uint32 { + range "1..255"; + } + description + "Subset number"; + } + } + } + } + container falling { + description + "Falling threshold"; + uses ACCESS-INTERFACE-TABLE; + uses NODE-TABLE; + } + container rising { + description + "Rising threshold"; + uses ACCESS-INTERFACE-TABLE; + uses NODE-TABLE; + } + } + } + } + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container subscriber-mib { + description + "Subscriber notification commands"; + container session-aggregate { + description + "Session aggregation"; + leaf node { + type empty; + description + "Subscriber notification at node level"; + } + leaf access-interface { + type empty; + description + "Subscriber notification at access interface + level"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper-sub1.yang new file mode 100644 index 000000000..69bfd1298 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper-sub1.yang @@ -0,0 +1,108 @@ +submodule Cisco-IOS-XR-subscriber-session-mon-oper-sub1 { + belongs-to Cisco-IOS-XR-subscriber-session-mon-oper { + prefix Cisco-IOS-XR-subscriber-session-mon-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR subscriber-session-mon package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHOW-SESSIONMON-STAT { + description + "show session_mon statistics"; + leaf total { + type uint32; + description + "total"; + } + leaf pppoe { + type uint32; + description + "pppoe"; + } + leaf pppoe-ds { + type uint32; + description + "pppoe ds"; + } + leaf dhcpv4 { + type uint32; + description + "dhcpv4"; + } + leaf dhcpv6 { + type uint32; + description + "dhcpv6"; + } + leaf dhcp-ds { + type uint32; + description + "dhcp ds"; + } + leaf ippkt { + type uint32; + description + "ippkt"; + } + leaf active-sessions { + type uint32; + description + "active sessions"; + } + leaf standby-sessions { + type uint32; + description + "standby sessions"; + } + leaf peak-active-sessions { + type uint32; + description + "peak active sessions"; + } + leaf peak-standby-sessions { + type uint32; + description + "peak standby sessions"; + } + leaf peak-start-time { + type uint32; + description + "peak start time"; + } + leaf timeout-value { + type uint32; + description + "timeout value"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper.yang new file mode 100644 index 000000000..9e4614c2a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-session-mon-oper.yang @@ -0,0 +1,93 @@ +module Cisco-IOS-XR-subscriber-session-mon-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-session-mon-oper"; + prefix subscriber-session-mon-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-subscriber-session-mon-oper-sub1 { + revision-date 2019-04-05; + } + + 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 subscriber-session-mon package operational data. + + This module contains definitions + for the following management objects: + session-mon: Sessionmon + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container session-mon { + config false; + description + "Sessionmon"; + container nodes { + description + "Subscriber Sessionmon list of nodes"; + list node { + key "node-id"; + description + "Subscriber sessionmon operational data for a + particular node"; + container session-mon-statistics { + description + "Session Mon Statistics"; + uses SHOW-SESSIONMON-STAT; + } + container interface-all-statistics { + description + "Statistics Table"; + list interface-all-statistic { + key "interface-name"; + description + "Statistics"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses SHOW-SESSIONMON-STAT; + } + } + container license-statistics { + description + "Smart license"; + uses SHOW-SESSIONMON-STAT; + } + leaf node-id { + type xr:Node-id; + description + "Nodeid location "; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-cfg.yang new file mode 100644 index 000000000..260a49c64 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-cfg.yang @@ -0,0 +1,615 @@ +module Cisco-IOS-XR-subscriber-srg-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-srg-cfg"; + prefix subscriber-srg-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 subscriber-srg package configuration. + + This module contains definitions + for the following management objects: + subscriber-redundancy: Subscriber Redundancy configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-14 { + description + "Sub Interface Start Range start value changed."; + semver:module-version "2.0.0"; + } + revision 2020-11-25 { + description + "dscp value is set in bgen."; + semver:module-version "1.3.0"; + } + revision 2020-05-02 { + description + "hold timer default disable cfg modified in bgen."; + semver:module-version "1.2.0"; + } + revision 2019-10-01 { + description + "added Null interface in state control route."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Dscp-value { + type enumeration { + enum "dscp-af11" { + value 10; + description + "AF11"; + } + enum "dscp-ef" { + value 11; + description + "EF"; + } + } + description + "Dscp value"; + } + + typedef Subscriber-redundancy-group-slave-mode { + type enumeration { + enum "warm" { + value 1; + description + "Warm Mode"; + } + enum "hot" { + value 2; + description + "Hot Mode"; + } + } + description + "Subscriber redundancy group slave mode"; + } + + typedef Subscriber-redundancy-group-role { + type enumeration { + enum "master" { + value 1; + description + "Master Role"; + } + enum "slave" { + value 2; + description + "Slave Role"; + } + } + description + "Subscriber redundancy group role"; + } + + typedef Srg-addr-family { + type enumeration { + enum "ipv4" { + value 2; + description + "IPv4"; + } + enum "ipv6" { + value 10; + description + "IPv6"; + } + } + description + "Srg addr family"; + } + + container subscriber-redundancy { + presence "Indicates a subscriber-redundancy node is configured."; + description + "Subscriber Redundancy configuration"; + container groups { + description + "Table of Group"; + list group { + key "group-id"; + description + "Redundancy Group configuration"; + container interface-list { + presence "Indicates a interface-list node is configured."; + description + "List of Interfaces for this Group"; + container interfaces { + description + "Table of Interface"; + list interface { + key "interface-name"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf interface-id { + type uint32 { + range "1..65535"; + } + mandatory true; + description + "Interface Id for the interface"; + } + } + } + container interface-ranges { + description + "Table of InterfaceRange"; + list interface-range { + key "interface-name sub-interface-range-start sub-interface-range-end"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + leaf sub-interface-range-start { + type uint32 { + range "1..2147483647"; + } + description + "Sub Interface Start Range"; + } + leaf sub-interface-range-end { + type uint32 { + range "1..2147483647"; + } + description + "Sub Interface End Range"; + } + leaf interface-id-range-start { + type uint32 { + range "1..65535"; + } + description + "Interface ID Start Range"; + } + leaf interface-id-range-end { + type uint32 { + range "1..65535"; + } + description + "Interface ID End Range"; + } + } + } + leaf enable { + type empty; + mandatory true; + description + "Enable List of Interfaces for this Group. + Deletion of this object also causes deletion + of all associated objects under InterfaceList + ."; + } + } + container peer { + description + "None"; + container ipaddress { + description + "IPv4 or IPv6 Address of SRG Peer"; + leaf address-family { + type Srg-addr-family; + description + "Type of IPv4/IPv6 address"; + } + leaf prefix-string { + type inet:ip-address-no-zone; + description + "IPv4/IPv6 address"; + } + } + leaf route-add-disable { + type empty; + description + "Set Route add disable"; + } + leaf peer-object { + type string; + description + "Peer to use for this group"; + } + } + container revertive-timer { + description + "None"; + leaf max-value { + type uint32 { + range "1..65535"; + } + description + "Value of MAX Revertive Timer"; + } + leaf value { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Value of revertive time in minutes"; + } + } + container virtual-mac { + description + "Virtual MAC Address for this Group"; + leaf address { + type yang:mac-address; + description + "Virtual MAC Address for this Group"; + } + leaf disable { + type empty; + description + "Disable Virtual MAC Address for this Group"; + } + } + container state-control-route { + description + "None"; + container ipv4-routes { + description + "Table of IPv4Route"; + list ipv4-route { + key "vrfname prefix-length prefix-string"; + description + "None"; + leaf vrfname { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf prefix-length { + type uint32; + description + "Prefix of the IP Address"; + } + leaf prefix-string { + type inet:ip-address-no-zone; + description + "IPv4 address with prefix-length"; + } + leaf tagvalue { + type uint32 { + range "1..4294967295"; + } + description + "Tag value"; + } + leaf outgoing-intf-name { + type xr:Interface-name; + description + "Outgoing Interface"; + } + } + } + container ipv6-route { + description + "None"; + container ipv6na-routes { + description + "Table of IPv6NARoute"; + list ipv6na-route { + key "vrfname prefix-length prefix-string"; + description + "None"; + leaf vrfname { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf prefix-length { + type uint32; + description + "Prefix of the IP Address"; + } + leaf prefix-string { + type inet:ip-address-no-zone; + description + "IPv6 address with prefix-length"; + } + leaf tagvalue { + type uint32 { + range "1..4294967295"; + } + description + "Tag value"; + } + leaf outgoing-intf-name { + type xr:Interface-name; + description + "Outgoing Interface"; + } + } + } + container ipv6pd-routes { + description + "Table of IPv6PDRoute"; + list ipv6pd-route { + key "vrfname prefix-length prefix-string"; + description + "None"; + leaf vrfname { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf prefix-length { + type uint32; + description + "Prefix of the IP Address"; + } + leaf prefix-string { + type inet:ip-address-no-zone; + description + "IPv6 address with prefix-length"; + } + leaf tagvalue { + type uint32 { + range "1..4294967295"; + } + description + "Tag value"; + } + leaf outgoing-intf-name { + type xr:Interface-name; + description + "Outgoing Interface"; + } + } + } + } + } + leaf disable-tracking-object { + type empty; + description + "Disable Tracking Object for this Group"; + } + leaf core-tracking-object { + type string; + description + "Core Tracking Object for this Group"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable Redundancy Group configuration. + Deletion of this object also causes deletion + of all associated objects under Group."; + } + leaf preferred-role { + type Subscriber-redundancy-group-role; + description + "Set preferred role"; + } + leaf description { + type string; + description + "Description for this Group"; + } + leaf l2tp-source-ip-address { + type inet:ipv4-address-no-zone; + description + "Enter an IP address"; + } + leaf slave-mode { + type Subscriber-redundancy-group-slave-mode; + description + "Set Slave Mode"; + } + leaf hold-timer { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Set hold time (in Minutes)"; + } + leaf access-tracking-object { + type string; + description + "Access Tracking Object for this Group"; + } + leaf enable-fast-switchover { + type empty; + description + "Enable fast switchover for this Group"; + } + leaf redundancy-disable { + type empty; + description + "Disable"; + } + leaf group-id { + type uint32 { + range "1..4000"; + } + description + "Group ID"; + } + } + } + container revertive-timer { + description + "None"; + leaf max-value { + type uint32 { + range "1..65535"; + } + description + "Value of MAX Revertive Timer"; + } + leaf value { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Value of revertive time in minutes"; + } + } + container keepalive-timer { + description + "None"; + leaf retry-count { + type uint32 { + range "1..100"; + } + description + "Keepalive retry count"; + } + leaf interval { + type uint32 { + range "3..300"; + } + units "second"; + description + "Keepalive interval in seconds"; + } + } + container peer-classes { + description + "Table of PeerClass"; + list peer-class { + key "peer-name"; + description + "None"; + leaf peer-name { + type xr:Cisco-ios-xr-string; + description + "Peer Name"; + } + leaf port-value { + type uint32 { + range "2001..4000"; + } + description + "TCP port"; + } + leaf address-family { + type Srg-addr-family; + description + "Type of IPv4/IPv6 address for the peer"; + } + leaf prefix-string { + type inet:ip-address-no-zone; + description + "IPv4/IPv6 address for the peer"; + } + } + } + leaf cpe-tracking { + type empty; + description + "Enable"; + } + leaf enable { + type empty; + mandatory true; + description + "Enable Subscriber Redundancy configuration. + Deletion of this object also causes deletion of + all associated objects under + SubscriberRedundancy."; + } + leaf virtual-mac-prefix { + type yang:mac-address; + description + "Virtual MAC Prefix for Subscriber Redundancy"; + } + leaf preferred-role { + type Subscriber-redundancy-group-role; + description + "Set preferred role"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source Interface for Redundancy Peer + Communication"; + } + leaf dscp-value { + type Dscp-value; + description + "Set DSCP Value"; + } + leaf slave-mode { + type Subscriber-redundancy-group-slave-mode; + description + "Set slave"; + } + leaf hold-timer { + type uint32 { + range "1..65535"; + } + units "minute"; + description + "Set hold time (in Minutes)"; + } + leaf sync-timer { + type uint32 { + range "1..255"; + } + units "minute"; + description + "Set sync time (in Minutes)"; + } + leaf hold-timer-default-disable { + type empty; + description + "Set constant integer"; + } + leaf redundancy-disable { + type empty; + description + "Disable"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper-sub1.yang new file mode 100644 index 000000000..9e485eab5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper-sub1.yang @@ -0,0 +1,1355 @@ +submodule Cisco-IOS-XR-subscriber-srg-oper-sub1 { + belongs-to Cisco-IOS-XR-subscriber-srg-oper { + prefix Cisco-IOS-XR-subscriber-srg-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR subscriber-srg package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-24 { + description + "added srg nack request and reply time. + 2022-05-22 + last error component id is added. + 2021-11-21 + stale stats are updated."; + semver:module-version "1.2.0"; + } + revision 2021-07-21 { + description + "EOMS time is updated in cli."; + semver:module-version "1.1.0"; + } + revision 2019-10-03 { + description + "added new bags and bag elements in srg-show bag."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Srg-show-so-reason { + type enumeration { + enum "internal" { + value 0; + description + "SwitchOver for Internal Reason"; + } + enum "admin" { + value 1; + description + "SwitchOver for Admin"; + } + enum "peer-up" { + value 2; + description + "SwitchOver for Peer UP"; + } + enum "peer-down" { + value 3; + description + "SwitchOver for Peer Down"; + } + enum "object-tracking-status-change" { + value 4; + description + "SwitchOver for Object Tracking status change"; + } + enum "srg-show-so-reason-max" { + value 5; + description + "Unknown Switchover Reason"; + } + } + description + "Subscriber Redundancy Switchover Reason"; + } + + typedef Srg-show-session-error { + type enumeration { + enum "none" { + value 0; + description + "Invalid Error"; + } + enum "hard" { + value 1; + description + "Hard Error"; + } + enum "soft" { + value 2; + description + "Soft Error"; + } + } + description + "SRG Session Error Operation"; + } + + typedef Srg-show-session-operation { + type enumeration { + enum "none" { + value 0; + description + "No Operation"; + } + enum "update" { + value 1; + description + "SRG Session Update Operation"; + } + enum "delete" { + value 2; + description + "SRG Session Delete Operation"; + } + enum "in-sync" { + value 3; + description + "SRG Session In Sync"; + } + } + description + "SRG Session Operation"; + } + + typedef Srg-show-comp { + type enumeration { + enum "srga" { + value 0; + description + "SRG Agent"; + } + enum "dhcpv4" { + value 1; + description + "DHCPv4"; + } + enum "dhcpv6" { + value 2; + description + "DHCPv6"; + } + enum "pppoe" { + value 3; + description + "PPPoE"; + } + enum "ppp" { + value 4; + description + "PPP"; + } + enum "l2tp" { + value 5; + description + "L2TP"; + } + enum "iedge" { + value 6; + description + "iEdge"; + } + } + description + "SRG Components"; + } + + typedef Srg-peer-status { + type enumeration { + enum "not-configured" { + value 0; + description + "Peer not configured"; + } + enum "initialize" { + value 1; + description + "Peer initialization"; + } + enum "retry" { + value 2; + description + "Peer retry pending"; + } + enum "connect" { + value 3; + description + "Connection in Progress"; + } + enum "listen" { + value 4; + description + "Listening in Progress"; + } + enum "registration" { + value 5; + description + "Awaiting Registration from Peer"; + } + enum "cleanup" { + value 6; + description + "Peer cleanup in progress"; + } + enum "connected" { + value 7; + description + "Peer Connected"; + } + enum "established" { + value 8; + description + "Peer Established"; + } + } + description + "SRG Peer Status"; + } + + typedef Srg-show-slave-mode { + type enumeration { + enum "none" { + value 0; + description + "Not Configured"; + } + enum "warm" { + value 1; + description + "Warm Modem"; + } + enum "hot" { + value 2; + description + "Hot Mode"; + } + } + description + "SRG Slave Mode"; + } + + typedef Srg-show-role { + type enumeration { + enum "none" { + value 0; + description + "Not Configured"; + } + enum "master" { + value 1; + description + "Master Role"; + } + enum "slave" { + value 2; + description + "Slave Role"; + } + } + description + "SRG Role"; + } + + typedef Srg-show-im-role { + type enumeration { + enum "none" { + value 0; + description + "Not Determined"; + } + enum "master" { + value 1; + description + "Master Role"; + } + enum "slave" { + value 2; + description + "Slave Role"; + } + } + description + "SRG Interface Management Role"; + } + + grouping SRG-SHOW-GROUP-ROUTE-IPV6 { + description + "srg static route ipv6"; + leaf ipv6 { + type inet:ipv6-address; + description + "ipv6"; + } + leaf vrf-name { + type string { + length "0..33"; + } + description + "vrf name"; + } + leaf prefix-len { + type uint8; + description + "prefix len"; + } + leaf type { + type uint8; + description + "type"; + } + leaf tag { + type uint32; + description + "tag"; + } + } + + grouping SRG-SHOW-GROUP-ROUTE-IPV4 { + description + "srg static route ipv4"; + leaf vrf-name { + type string { + length "0..33"; + } + description + "vrf name"; + } + leaf prefix-len { + type uint8; + description + "prefix len"; + } + leaf ipv4 { + type inet:ipv4-address; + description + "ipv4"; + } + leaf tag { + type uint32; + description + "tag"; + } + } + + grouping SRG-SHOW-GRP-SWITCHOVER-HISTORY { + description + "srg switchover history"; + leaf group-switchover-time { + type uint64; + description + "Group Switchover Time"; + } + leaf role { + type Srg-show-im-role; + description + "SRG Role"; + } + leaf reason { + type Srg-show-so-reason; + description + "Switchover reason"; + } + } + + grouping SRG-SHOW-GROUP-INTF-INFO { + description + "Subscriber Redundancy Group Interface-List + Information"; + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf interface-synchronization-id { + type uint32; + description + "Interface Synchronization ID"; + } + leaf forward-referenced { + type boolean; + description + "Forward Referenced"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + } + + grouping SRG-SHOW-GROUP-ENTRY { + description + "Subscriber Redundancy Group Information"; + container event-history { + description + "Event history of group"; + uses EVT-HIST-INFO; + } + leaf group-id-xr { + type uint32; + description + "Group ID"; + } + leaf description { + type string; + description + "Group Description"; + } + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf init-role { + type Srg-show-role; + description + "Preferred Init Role"; + } + leaf negotiating-role { + type Srg-show-role; + description + "Negotiating Role"; + } + leaf current-role { + type Srg-show-role; + description + "Current Role"; + } + leaf slave-mode { + type Srg-show-slave-mode; + description + "Slave Mode"; + } + leaf hold-timer { + type uint32; + description + "Switch Over Hold Time"; + } + leaf virtual-mac-address { + type string; + description + "Virtual MAC Address"; + } + leaf virtual-mac-address-disable { + type boolean; + description + "Virtual MAC Address Disable"; + } + leaf l2tp-source-ip { + type inet:ipv4-address; + description + "L2TP Souce IP Address"; + } + leaf core-tracking-object-name { + type string; + description + "Core Object Tracking Name"; + } + leaf core-tracking-object-status { + type boolean; + description + "Core Object Tracking Status"; + } + leaf access-tracking-object-name { + type string; + description + "Access Object Tracking Name"; + } + leaf access-tracking-object-status { + type boolean; + description + "Access Object Tracking Status"; + } + leaf object-tracking-status { + type boolean; + description + "Object Tracking Status (Enabled/Disabled)"; + } + leaf peer-ipv4-address { + type inet:ipv4-address; + description + "Peer IPv4 Address"; + } + leaf peer-ipv6-address { + type inet:ipv6-address; + description + "Peer IPv6 Address"; + } + leaf peer-name { + type string; + description + "Peer name"; + } + leaf peer-status { + type Srg-peer-status; + description + "Peer Status"; + } + leaf peer-last-negotiation-time-epoch { + type uint64; + units "second"; + description + "Last Negotiation time of Peer in epoch seconds"; + } + leaf peer-last-up-time-epoch { + type uint64; + units "second"; + description + "Last UP time of Peer in epoch seconds"; + } + leaf peer-last-down-time-epoch { + type uint64; + units "second"; + description + "Last Down time of Peer in epoch seconds"; + } + leaf peer-init-role { + type Srg-show-role; + description + "Peer Preferred Init Role"; + } + leaf peer-negotiating-role { + type Srg-show-role; + description + "Peer Negotiating Role"; + } + leaf peer-current-role { + type Srg-show-role; + description + "Peer Current Role"; + } + leaf peer-object-tracking-status { + type boolean; + description + "Peer Object Tracking Status"; + } + leaf last-switchover-time-epoch { + type uint64; + units "second"; + description + "Last Switchover time in epoch seconds"; + } + leaf switchover-count { + type uint32; + description + "Switchover Count"; + } + leaf last-switchover-reason { + type Srg-show-so-reason; + description + "Last Switchover Reason"; + } + leaf switchover-hold-time { + type uint32; + units "second"; + description + "Switchover Hold Time in seconds"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + leaf slave-update-failure-count { + type uint32; + description + "Slave Session update fail count"; + } + leaf tunnel-count { + type uint32; + description + "Tunnel Count"; + } + leaf pending-session-update-count { + type uint32; + description + "Pending Session Update Count"; + } + leaf pending-session-delete-count { + type uint32; + description + "Pending Session Delete Count"; + } + leaf interface-count { + type uint32; + description + "No. of Configured Interfaces"; + } + leaf revertive-timer { + type uint32; + description + "Revertive timer for SWO back"; + } + leaf switchover-revert-time { + type uint32; + units "second"; + description + "Switchover Revert Time in seconds"; + } + leaf last-hitory-index { + type uint8; + description + "Index of last switchover timestamp"; + } + list interface { + description + "Interface List"; + uses SRG-SHOW-GROUP-INTF-INFO; + } + list history-array { + description + "Array of switchover history "; + uses SRG-SHOW-GRP-SWITCHOVER-HISTORY; + } + list route-ipv4-array { + description + "Array of ipv4 static route"; + uses SRG-SHOW-GROUP-ROUTE-IPV4; + } + list route-ipv6-array { + description + "Array of ipv6 static route"; + uses SRG-SHOW-GROUP-ROUTE-IPV6; + } + } + + grouping SRG-AGT-SHOW-GROUP-LIST-ENTRY { + description + "Subscriber Redundancy Agent Group Summary + Information"; + leaf group-id-xr { + type uint32; + description + "Group ID"; + } + leaf role { + type Srg-show-im-role; + description + "SRG Role"; + } + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf peer-ipv4-address { + type inet:ipv4-address; + description + "Peer IPv4 Address"; + } + leaf peer-ipv6-address { + type inet:ipv6-address; + description + "Peer IPv6 Address"; + } + leaf peer-name { + type string; + description + "Peer name"; + } + leaf peer-status { + type Srg-peer-status; + description + "Peer Status"; + } + leaf preferred-role { + type Srg-show-role; + description + "Preferred Role"; + } + leaf slave-mode { + type Srg-show-slave-mode; + description + "Slave Mode"; + } + leaf object-tracking-status { + type boolean; + description + "Object Tracking Status (Enabled/Disabled)"; + } + leaf interface-count { + type uint32; + description + "Interface Count"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + leaf pending-add-session-count { + type uint32; + description + "Pending Session Count for Synchornization"; + } + } + + grouping BAG-TIMESPEC { + description + "Timespec specifying the number of seconds since + the base time of 00:00:00 GMT, 1 January 1970."; + leaf seconds { + type uint32; + units "second"; + description + "Number of seconds"; + } + } + + grouping SRG-SHOW-AGT-INTF-ENTRY-HIST { + description + "IDB statistics history"; + container time-updated { + description + "Time stamp when the stats was updated"; + uses BAG-TIMESPEC; + } + leaf interface-enable-error-count-hist { + type uint32; + description + "Interface Enable Error Count History"; + } + leaf interface-disable-error-count-hist { + type uint32; + description + "Interface Disable Error Count History"; + } + leaf interface-caps-add-error-count-hist { + type uint32; + description + "Interface Caps Add Error Count History"; + } + leaf interface-caps-remove-error-count-hist { + type uint32; + description + "Interface Caps Remove Error Count History"; + } + leaf interface-attribute-update-error-count-hist { + type uint32; + description + "Interface Attribute Update Error Count History"; + } + leaf-list client-status-hist { + type uint8; + description + "Interface status history for each client"; + } + leaf-list client-count-hist { + type uint32; + description + "Session count history per client"; + } + } + + grouping EVT-HIST-ENTRY { + description + "Event history Entry"; + leaf evt-timestamp { + type string; + description + "The timestamp of the event"; + } + leaf evt-name { + type string; + description + "Event name"; + } + leaf evt-type { + type uint8; + description + "Event type"; + } + leaf evt-many { + type boolean; + description + "Multiple instance flag"; + } + leaf evt-sticky { + type boolean; + description + "Sticky flag"; + } + leaf-list evt-data { + type uint32; + description + "Optional data"; + } + } + + grouping EVT-HIST-INFO { + description + "Per object event history"; + leaf evt-class-name { + type string; + description + "Class name string"; + } + list evt-entry { + description + "Array of event entries"; + uses EVT-HIST-ENTRY; + } + } + + grouping SRG-SHOW-AGT-INTF-CLIENT-STATUS { + description + "srg show agt intf client status"; + leaf component { + type Srg-show-comp; + description + "Component"; + } + leaf srg-show-idb-client-eoms-pending { + type boolean; + description + "SRG SHOW IDB CLIENT EOMS PENDING"; + } + leaf srg-show-idb-client-sync-eod-pending { + type boolean; + description + "SRG SHOW IDB CLIENT SYNC EOD PENDING"; + } + leaf session-count { + type uint32; + description + "session count"; + } + } + + grouping SRG-SHOW-INTF-STATUS { + description + "Subscriber Redundancy Interface Status"; + leaf idb-state-fwd-ref { + type boolean; + description + "Interface Forward Referenced"; + } + leaf idb-state-stale { + type boolean; + description + "Interface State Stale"; + } + leaf idb-state-registered { + type boolean; + description + "Interface State Registered"; + } + leaf idb-state-caps-added { + type boolean; + description + "Interface State Caps Added"; + } + leaf idb-state-owned-re-source { + type boolean; + description + "Interface State Owned Resource"; + } + leaf idb-client-eoms-pending { + type boolean; + description + "Interface Client EOMS Pending"; + } + leaf idb-state-p-end-caps-rem { + type boolean; + description + "Interface Caps Remove Pending"; + } + leaf idb-state-p-end-reg-disable { + type boolean; + description + "Interface Registration Disable Pending"; + } + } + + grouping SRG-SHOW-INTF-OPER { + description + "Subscriber Redundancy Interface Operational + Status"; + leaf idb-oper-reg-enable { + type boolean; + description + "Operational Registration Enabled"; + } + leaf idb-oper-reg-disable { + type boolean; + description + "Operational Registration Disabled"; + } + leaf idb-oper-caps-add { + type boolean; + description + "Operational Caps Add"; + } + leaf idb-oper-caps-remove { + type boolean; + description + "Operational Caps Remove"; + } + leaf idb-oper-attr-update { + type boolean; + description + "Operational Attribute Update"; + } + } + + grouping SRG-SHOW-AGT-INTF-ENTRY { + description + "Subscriber Redundancy Agent Interface Information"; + container interface-oper { + description + "Interface Batch Operation"; + uses SRG-SHOW-INTF-OPER; + } + container interface-status { + description + "Interface Status"; + uses SRG-SHOW-INTF-STATUS; + } + container event-history { + description + "Event history of interface"; + uses EVT-HIST-INFO; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf interface-synchronization-id { + type uint32; + description + "Interface Sync ID"; + } + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf role { + type Srg-show-im-role; + description + "SRG Role"; + } + leaf forward-referenced { + type boolean; + description + "Forward Referenced"; + } + leaf session-count { + type uint32; + description + "Session Count"; + } + leaf interface-enable-error-count { + type uint32; + description + "Interface Enable Error Count"; + } + leaf interface-disable-error-count { + type uint32; + description + "Interface Disable Error Count"; + } + leaf interface-caps-add-error-count { + type uint32; + description + "Interface Caps Add Error Count"; + } + leaf interface-caps-remove-error-count { + type uint32; + description + "Interface Caps Remove Error Count"; + } + leaf interface-attribute-update-error-count { + type uint32; + description + "Interface Attribute Update Error Count"; + } + list client-status { + description + "Interface status for each client"; + uses SRG-SHOW-AGT-INTF-CLIENT-STATUS; + } + list history { + description + "IDB statistics history"; + uses SRG-SHOW-AGT-INTF-ENTRY-HIST; + } + } + + grouping SRG-SHOW-SESSION-ERROR-INFO { + description + "Subscriber Redundancy Session Verbose Client + Error Information"; + leaf sync-error-count { + type uint16; + description + "No. of Errors occured during Synchronization"; + } + leaf last-error-code { + type uint32; + description + "Last Error Code"; + } + leaf last-error-type { + type Srg-show-session-error; + description + "Last Error Type"; + } + leaf last-error-comp { + type uint32; + description + "Last Error Component"; + } + } + + grouping SRG-SHOW-SESSION-CLIENT { + description + "Subscriber Redundancy Session Verbose Client + Information"; + leaf component { + type Srg-show-comp; + description + "Component"; + } + leaf operation { + type Srg-show-session-operation; + description + "Operation Code"; + } + leaf tx-list-queue-fail { + type boolean; + description + "Tx List Queue Failed"; + } + leaf marked-for-sweeping { + type boolean; + description + "Marked For Sweeping"; + } + leaf marked-for-cleanup { + type boolean; + description + "Marked For Cleanup"; + } + } + + grouping SRG-SHOW-SESSION-ENTRY { + description + "Subscriber Redundancy Session Information"; + leaf group-id-xr { + type uint32; + description + "Group ID"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf outer-vlan { + type uint32; + description + "Outer VLAN Information"; + } + leaf inner-vlan { + type uint32; + description + "Inner VLAN Information"; + } + leaf session-mac-address { + type string; + description + "Session MAC Address"; + } + leaf pppoe-session-id { + type uint16; + description + "PPPoE Session ID"; + } + leaf l2tp-tunnel-id { + type uint32; + description + "L2TP Tunnel local ID"; + } + leaf role-master { + type boolean; + description + "Master Role is Set"; + } + leaf valid-mac-address { + type boolean; + description + "Holds a Valid MAC Address"; + } + leaf negative-acknowledgement-update-all { + type boolean; + description + "Negative Acknowledgement Update Flag is Set"; + } + list session-detailed-information { + description + "More Session Information"; + uses SRG-SHOW-SESSION-CLIENT; + } + list session-sync-error-information { + description + "Session Synchroniation Error Information"; + uses SRG-SHOW-SESSION-ERROR-INFO; + } + } + + grouping SRG-SHOW-AGT-PEER-ENTRY { + description + "Subscriber Redundancy Agent Peer Summary + Information"; + leaf name { + type string; + description + "Object Name"; + } + leaf peer-ipv4-address { + type inet:ipv4-address; + description + "Peer IPv4 Address"; + } + leaf peer-ipv6-address { + type inet:ipv6-address; + description + "Peer IPv6 Address"; + } + leaf tcp-port { + type uint32; + description + "TCP port"; + } + leaf peer-status { + type Srg-peer-status; + description + "Peer Status"; + } + } + + grouping SRG-SHOW-MGR-INTF-ENTRY { + description + "Subscriber Redundancy Manager Interface + Information"; + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf interface-mapping-id { + type uint32; + description + "Interface Mapping ID"; + } + leaf forward-referenced { + type boolean; + description + "Forward Referenced"; + } + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf role { + type Srg-show-im-role; + description + "SRG Role"; + } + } + + grouping SRG-SHOW-MGR-SUMMARY { + description + "Subscriber Redundancy Manager Summary Information"; + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf active-state { + type boolean; + description + "Process Active State"; + } + leaf preferred-role { + type Srg-show-role; + description + "Preferred Role"; + } + leaf slave-mode { + type Srg-show-slave-mode; + description + "Slave Mode"; + } + leaf hold-timer { + type uint32; + description + "Switch Over Hold Time"; + } + leaf sync-time { + type uint32; + description + "Sync Time"; + } + leaf source-interface-name { + type string; + description + "Source Interface Name"; + } + leaf vrf-name { + type string; + description + "VRF Name"; + } + leaf source-interface-ipv4-address { + type inet:ipv4-address; + description + "Source Interface IPv4 Address"; + } + leaf source-interface-ipv6-address { + type inet:ipv6-address; + description + "Source Interface IPv6 Address"; + } + leaf group-count { + type uint32; + description + "No. of Configured Groups"; + } + leaf disabled-group-count { + type uint32; + description + "No. of Disabled Groups by Config"; + } + leaf master-group-count { + type uint32; + description + "No. of Master/Active Groups"; + } + leaf slave-group-count { + type uint32; + description + "No. of Slave Groups"; + } + leaf interface-count { + type uint32; + description + "No. of Configured Interfaces"; + } + leaf master-interface-count { + type uint32; + description + "No. of Master/Active Interfaces"; + } + leaf slave-interface-count { + type uint32; + description + "No. of Slave Interfaces"; + } + } + + grouping SRG-SHOW-MGR-GROUP-ENTRY { + description + "Subscriber Redundancy Manager Group Information"; + leaf group-id { + type uint32; + description + "Group ID"; + } + leaf description { + type string; + description + "Group Description"; + } + leaf disabled { + type boolean; + description + "Disabled by Config"; + } + leaf role { + type Srg-show-im-role; + description + "SRG Role"; + } + leaf peer-ipv4-address { + type inet:ipv4-address; + description + "Peer IPv4 Address"; + } + leaf peer-ipv6-address { + type inet:ipv6-address; + description + "Peer IPv6 Address"; + } + leaf interface-count { + type uint32; + description + "Interface Count"; + } + leaf preferred-role { + type Srg-show-role; + description + "Preferred Role"; + } + leaf slave-mode { + type Srg-show-slave-mode; + description + "Slave Mode"; + } + leaf object-tracking-status { + type boolean; + description + "Object Tracking Status (Enabled/Disabled)"; + } + leaf virtual-mac-address { + type string; + description + "Virtual MAC Address"; + } + leaf virtual-mac-address-disable { + type boolean; + description + "Virtual MAC Address Disable"; + } + leaf node-name { + type string; + description + "Node Information"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper.yang new file mode 100644 index 000000000..c79568e7b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-subscriber-srg-oper.yang @@ -0,0 +1,205 @@ +module Cisco-IOS-XR-subscriber-srg-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-subscriber-srg-oper"; + prefix subscriber-srg-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-subscriber-srg-oper-sub1 { + revision-date 2022-08-24; + } + + 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 subscriber-srg package operational data. + + This module contains definitions + for the following management objects: + subscriber-redundancy-manager: Subscriber Redundancy Manager + information + subscriber-redundancy-agent: Subscriber Redundancy Agent + information + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-24 { + description + "added srg nack request and reply time. + 2022-05-22 + last error component id is added. + 2021-11-21 + stale stats are updated."; + semver:module-version "1.2.0"; + } + revision 2021-07-21 { + description + "EOMS time is updated in cli."; + semver:module-version "1.1.0"; + } + revision 2019-10-03 { + description + "added new bags and bag elements in srg-show bag."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container subscriber-redundancy-manager { + config false; + description + "Subscriber Redundancy Manager information"; + container groups { + description + "Subscriber Redundancy Manager group table"; + list group { + key "group"; + description + "Subscriber redundancy manager group"; + leaf group { + type xr:Cisco-ios-xr-string; + description + "Group"; + } + uses SRG-SHOW-MGR-GROUP-ENTRY; + } + } + container summary { + description + "Subscriber redundancy manager summary"; + uses SRG-SHOW-MGR-SUMMARY; + } + container interfaces { + description + "Subscriber Redundancy Manager interface table"; + list interface { + key "interface"; + description + "Subscriber redundancy manager interface"; + leaf interface { + type xr:Cisco-ios-xr-string; + description + "Interface"; + } + uses SRG-SHOW-MGR-INTF-ENTRY; + } + } + } + container subscriber-redundancy-agent { + config false; + description + "Subscriber Redundancy Agent information"; + container nodes { + description + "List of nodes for which subscriber data is + collected"; + list node { + key "node-name"; + description + "Subscriber data for a particular node"; + container peer-summaries { + description + "List of peer objects"; + list peer-summary { + key "peer-name"; + description + "Subscriber redundancy agent peer summary"; + leaf peer-name { + type xr:Cisco-ios-xr-string; + description + "PeerName"; + } + uses SRG-SHOW-AGT-PEER-ENTRY; + } + } + container group-id-xr { + description + "Data for particular subscriber group session"; + list group-id { + key "group-id"; + description + "Group id for subscriber group session"; + leaf group-id { + type xr:Cisco-ios-xr-string; + description + "GroupId"; + } + uses SRG-SHOW-SESSION-ENTRY; + } + } + container interfaces { + description + "List of interfaces"; + list interface { + key "interface"; + description + "Specify interface name"; + leaf interface { + type xr:Interface-name; + description + "Interface"; + } + uses SRG-SHOW-AGT-INTF-ENTRY; + } + } + container group-summaries { + description + "Subscriber data for a particular node"; + list group-summary { + key "group-id"; + description + "Subscriber redundancy agent group summary"; + leaf group-id { + type xr:Cisco-ios-xr-string; + description + "GroupId"; + } + uses SRG-AGT-SHOW-GROUP-LIST-ENTRY; + } + } + container group-ids { + description + "Data for particular subscriber group "; + list group-id { + key "group-id"; + description + "Group id for subscriber group"; + leaf group-id { + type xr:Cisco-ios-xr-string; + description + "Group Id"; + } + uses SRG-SHOW-GROUP-ENTRY; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-switch-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-switch-act.yang new file mode 100644 index 000000000..7ac4ce8b0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-switch-act.yang @@ -0,0 +1,151 @@ +module Cisco-IOS-XR-switch-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-switch-act"; + prefix switch-act; + + 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 controller ethernet switch. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-23 { + description + "Added an entry for clear controller emon statistics."; + semver:module-version "1.0.0"; + } + revision 2020-03-26 { + description + "Added an entry for clear controller switch txq."; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-02-14 { + description + "Initial revision."; + } + + rpc clear-switch-bridge-statistics { + description + "Clear switch bridge statistics"; + input { + leaf instance { + type string; + mandatory true; + description + "Location information for switch, XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } + rpc clear-switch-fdb { + description + "Clear switch forwarding database"; + input { + leaf instance { + type string; + mandatory true; + description + "Location information for switch, XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } + rpc clear-switch-policing-statistics { + description + "Clear switch policing statistics"; + input { + leaf instance { + type string; + mandatory true; + description + "Location information for switch, XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + leaf port { + type uint16 { + range "0..65534"; + } + description + "Port number"; + } + } + } + rpc clear-switch-statistics { + description + "Clear switch statistics"; + input { + leaf instance { + type string; + mandatory true; + description + "Location information for switch, XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } + rpc set-switch-port-reset { + description + "Set port reset"; + input { + leaf instance { + type string; + mandatory true; + description + "Location information for switch, XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + leaf port { + type uint16 { + range "0..65534"; + } + mandatory true; + description + "Port number"; + } + } + } + rpc clear-switch-txq-statistics { + description + "Clear switch txq statistics"; + input { + leaf instance { + type string; + mandatory true; + description + "Location information for switch, XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + leaf port { + type uint16 { + range "0..65534"; + } + description + "Port number"; + } + } + } + rpc clear-controller-emon-statistics { + description + "clear controller emon statistics"; + input { + leaf instance { + type string; + description + "Location information for switch, XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper-sub1.yang new file mode 100644 index 000000000..73264490d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper-sub1.yang @@ -0,0 +1,2480 @@ +submodule Cisco-IOS-XR-switch-oper-sub1 { + belongs-to Cisco-IOS-XR-switch-oper { + prefix Cisco-IOS-XR-switch-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR switch package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-13 { + description + "Added an entry for show controller switch data-integrity errror"; + semver:module-version "1.0.0"; + } + revision 2020-07-16 { + description + "Added an entry for show controller switch debug counters"; + } + revision 2020-06-30 { + description + "Added an entry for show controller switch events"; + } + revision 2020-05-22 { + description + "Added an entry for show controller switch health state"; + } + revision 2020-03-16 { + description + "Added an entry for show controller switch txq"; + } + revision 2019-10-30 { + description + "Change class name VLANInfoLnstance to VLANInfoInstance"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-03-08 { + description + "and entry for show controller switch bridge"; + } + revision 2019-03-01 { + description + "Rename esdma-oper to switch-oper, esdma-emon-oper to emon-oper"; + } + revision 2019-02-07 { + description + "Rework clear and set operations."; + } + revision 2019-01-30 { + description + "Schema rework to match the CLI."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping ESDMA-SHOW-ETHSW-EVENT-DATA { + description + "ethernet switch event info"; + leaf id { + type uint32; + description + "Identifier"; + } + leaf name { + type string { + length "0..64"; + } + description + "Name"; + } + leaf received { + type uint32; + description + "Received"; + } + leaf dropped { + type uint32; + description + "Dropped"; + } + leaf queued { + type uint32; + description + "Queued"; + } + leaf notified { + type uint32; + description + "Notified"; + } + leaf handled { + type uint32; + description + "Handled"; + } + } + + grouping ESDMA-SHOW-ETHSW-EVENTS-INFO { + description + "show ethernet switch events info"; + container ethsw-location-info { + description + "Ethernet Switch Location Info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + leaf max-queued-events { + type uint32; + description + "Max Queued Events"; + } + leaf max-queued-events-time { + type string { + length "0..64"; + } + description + "Max Queued Events Time"; + } + leaf total-received { + type uint64; + description + "Total Received"; + } + leaf total-dropped { + type uint64; + description + "Total Dropped"; + } + leaf total-queued { + type uint64; + description + "Total Queued"; + } + leaf total-notified { + type uint64; + description + "Total Notified"; + } + leaf total-handled { + type uint64; + description + "Total Handled"; + } + list ethsw-event-info { + description + "Ethernet switch event info"; + uses ESDMA-SHOW-ETHSW-EVENT-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-COLOR-DATA { + description + "ethernet switch tx queue statistics detailed + color info"; + leaf color { + type string { + length "0..8"; + } + description + "Traffic class color"; + } + leaf pass-packets { + type uint64; + description + "Pass packets"; + } + leaf pass-bytes { + type uint64; + units "byte"; + description + "Pass bytes"; + } + leaf drop-packets { + type uint64; + description + "Drop packets"; + } + leaf drop-bytes { + type uint64; + units "byte"; + description + "Drop bytes"; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-TRAFFIC-CLASS-DATA { + description + "ethernet switch tx queue statistics detailed + traffic class info"; + leaf traffic-class { + type string { + length "0..4"; + } + description + "Traffic class"; + } + list ethsw-txq-statistics-detailed-color-info { + description + "Ethernet switch Tx queue statistics detailed + color info"; + uses ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-COLOR-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-PORT-DATA { + description + "ethernet switch tx queue statistics detailed port + info"; + leaf port { + type uint32; + description + "Port"; + } + leaf traffic-class { + type string { + length "0..4"; + } + description + "Traffic class"; + } + leaf traffic-class-color { + type string { + length "0..8"; + } + description + "Traffic class color"; + } + leaf total-queued-packets { + type uint64; + description + "Total queued packets"; + } + leaf total-queued-bytes { + type uint64; + units "byte"; + description + "Total queued bytes"; + } + leaf total-drop-packets { + type uint64; + description + "Total drop packets"; + } + leaf total-drop-bytes { + type uint64; + units "byte"; + description + "Total drop bytes"; + } + list ethsw-txq-statistics-detailed-traffic-class-info { + description + "Ethernet switch Tx queue statistics detailed + traffic class info"; + uses ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-TRAFFIC-CLASS-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-DATA { + description + "ethernet switch tx queue statistics detailed info"; + list ethsw-txq-statistics-detailed-port-info { + description + "Ethernet switch Tx queue statistics detailed + port info"; + uses ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-PORT-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-STATISTICS-SUMMARY-PORT-DATA { + description + "ethernet switch tx queue statistics summary port + info"; + leaf port { + type uint32; + description + "Port"; + } + leaf traffic-class { + type string { + length "0..4"; + } + description + "Traffic class"; + } + leaf traffic-class-color { + type string { + length "0..8"; + } + description + "Traffic class color"; + } + leaf total-queued-packets { + type uint64; + description + "Total queued packets"; + } + leaf total-queued-bytes { + type uint64; + units "byte"; + description + "Total queued bytes"; + } + leaf total-drop-packets { + type uint64; + description + "Total drop packets"; + } + leaf total-drop-bytes { + type uint64; + units "byte"; + description + "Total drop bytes"; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-STATISTICS-SUMMARY-DATA { + description + "ethernet switch tx queue statistics summary info"; + list ethsw-txq-statistics-summary-port-info { + description + "Ethernet switch Tx queue statistics summary port + info"; + uses ESDMA-SHOW-ETHSW-TXQ-STATISTICS-SUMMARY-PORT-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-PORT-DATA { + description + "ethernet switch tx queue configuration port info"; + leaf port { + type uint32; + description + "Port"; + } + leaf config-drop-profile { + type uint32; + description + "Configured drop profile"; + } + leaf config-scheduler-profile { + type uint32; + description + "Configured scheduler profile"; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-PROFILE-PER-TRAFFIC-CLASS-DATA { + description + "ethernet switch tx queue configuration profile + per traffic class info"; + leaf traffic-class { + type uint32; + description + "Traffic class"; + } + leaf arbitration-group { + type string { + length "0..8"; + } + description + "Traffic arbitration group"; + } + leaf weighted-round-robin-weight { + type uint32; + description + "Weighted round robin weight"; + } + leaf sharing { + type string { + length "0..8"; + } + description + "Traffic class sharing"; + } + leaf drop-profile0-max-buffers { + type uint32; + description + "Drop profile 0 max buffers"; + } + leaf drop-profile1-max-buffers { + type uint32; + description + "Drop profile 1 max buffers"; + } + leaf drop-profile2-max-buffers { + type uint32; + description + "Drop profile 2 max buffers"; + } + leaf drop-profile0-max-traffic-descriptors { + type uint32; + description + "Drop profile 0 max traffic descriptors"; + } + leaf drop-profile1-max-traffic-descriptors { + type uint32; + description + "Drop profile 1 max traffic descriptors"; + } + leaf drop-profile2-max-traffic-descriptors { + type uint32; + description + "Drop profile 2 max traffic descriptors"; + } + leaf traffic-class-max-buffers { + type uint32; + description + "Traffic class max buffers"; + } + leaf traffic-class-max-traffic-descriptors { + type uint32; + description + "Traffic class max traffic descriptors"; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-PROFILE-DATA { + description + "ethernet switch tx queue configuration profile + info"; + leaf id { + type uint32; + description + "Id"; + } + leaf sharing { + type string { + length "0..8"; + } + description + "Profile sharing"; + } + leaf max-buffers { + type uint32; + description + "Max buffers"; + } + leaf max-traffic-descriptors { + type uint32; + description + "Max traffic descriptors"; + } + list ethsw-txq-configuration-profile-per-traffic-class-info { + description + "Ethernet switch Tx queue configured profile per + traffic class info"; + uses ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-PROFILE-PER-TRAFFIC-CLASS-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-GLOBAL-DATA { + description + "ethernet switch tx queue configuration global + info"; + leaf global-traffic-descriptors { + type uint32; + description + "Global traffic descriptors"; + } + leaf global-buffers { + type uint32; + description + "Global buffers"; + } + leaf shared-pool0-traffic-descriptors { + type uint32; + description + "Shared pool 0 traffic descriptors"; + } + leaf shared-pool0-buffers { + type uint32; + description + "Shared pool 0 buffers"; + } + leaf multi-target-traffic-descriptors { + type uint32; + description + "Multi target traffic descriptors"; + } + leaf multi-target-buffers { + type uint32; + description + "Multi target buffers"; + } + leaf sniffed-ingress-traffic-descriptors { + type uint32; + description + "Sniffed ingress traffic descriptors"; + } + leaf sniffed-ingress-buffers { + type uint32; + description + "Sniffed ingress buffers"; + } + leaf sniffed-egress-traffic-descriptors { + type uint32; + description + "Sniffed egress traffic descriptors"; + } + leaf sniffed-egress-buffers { + type uint32; + description + "Sniffed egress buffers"; + } + leaf weighted-round-robin-schedule-mode { + type string { + length "0..12"; + } + description + "Weighted round robin schedule mode"; + } + leaf weighted-round-robin-schedule-mtu { + type string { + length "0..8"; + } + description + "Weighted round robin Schedule mtu"; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-DATA { + description + "ethernet switch tx queue configuration info"; + list ethsw-txq-configuration-global-info { + description + "Ethernet switch Tx queue configured global info"; + uses ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-GLOBAL-DATA; + } + list ethsw-txq-configuration-profile-info { + description + "Ethernet switch Tx queue configured profile info"; + uses ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-PROFILE-DATA; + } + list ethsw-txq-configuration-port-info { + description + "Ethernet switch Tx queue configured port info"; + uses ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-PORT-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TXQ-INFO { + description + "show ethernet switch txq info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + leaf initial-configuration { + type string { + length "0..64"; + } + description + "Disabled"; + } + list ethsw-txq-configuration-info { + description + "Ethernet switch Tx queue config info"; + uses ESDMA-SHOW-ETHSW-TXQ-CONFIGURATION-DATA; + } + list ethsw-txq-statistics-summary-info { + description + "Ethernet switch Tx queue statistics summary info"; + uses ESDMA-SHOW-ETHSW-TXQ-STATISTICS-SUMMARY-DATA; + } + list ethsw-txq-statistics-detailed-info { + description + "Ethernet switch Tx queue statistics detailed + info"; + uses ESDMA-SHOW-ETHSW-TXQ-STATISTICS-DETAILED-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-VLAN-MEMBERSHIP-DATA { + description + "show ethernet switch vlan membership info"; + leaf vlan { + type uint32; + description + "Vlan number"; + } + leaf-list ports { + type uint8; + description + "Port number"; + } + } + + grouping ESDMA-SHOW-ETHSW-VLANMEMBERSHIP-INFO { + description + "show ethernet switch VLAN port membership"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-vlan-memb-info { + description + "Ethernet switch vlan membership info"; + uses ESDMA-SHOW-ETHSW-VLAN-MEMBERSHIP-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-VLAN-DATA { + description + "show ethernet switch vlan info"; + leaf vlan { + type uint32; + description + "Vlan number"; + } + leaf vlan-use { + type string { + length "0..64"; + } + description + "Vlan use"; + } + } + + grouping ESDMA-SHOW-ETHSW-VLANINFO-INFO { + description + "show ethernet switch VLAN info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-vlan-info { + description + "Ethernet switch vlan info"; + uses ESDMA-SHOW-ETHSW-VLAN-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-DETAILED-STATISTICS-DATA { + description + "show ethernet switch detailed statistics info"; + leaf port { + type uint8; + description + "Port number"; + } + leaf port-state { + type string { + length "0..8"; + } + description + "Port state"; + } + leaf port-speed { + type string { + length "0..8"; + } + description + "Port speed"; + } + leaf connects-to { + type string { + length "0..64"; + } + description + "Connects to"; + } + leaf rx-unicast-packets { + type uint64; + description + "Rx unicast packets"; + } + leaf rx-multicast-packets { + type uint64; + description + "Rx multicast packets"; + } + leaf rx-broadcast-packets { + type uint64; + description + "Rx broadcast packets"; + } + leaf rx-flow-control { + type uint64; + description + "Rx flow control"; + } + leaf rx-good-octets { + type uint64; + description + "Rx good octets"; + } + leaf rx-bad-octets { + type uint64; + description + "Rx bad octets"; + } + leaf rx-fifo-overrun { + type uint64; + description + "Rx FIFO overrun"; + } + leaf rx-undersize { + type uint64; + description + "Rx undersize"; + } + leaf rx-fragments { + type uint64; + description + "Rx fragments"; + } + leaf rx-oversize { + type uint64; + description + "Rx oversize"; + } + leaf rx-jabber { + type uint64; + description + "Rx jabber"; + } + leaf rx-errors { + type uint64; + description + "Rx errors"; + } + leaf rx-bad-crc { + type uint64; + description + "Rx bad CRC"; + } + leaf rx-collisons { + type uint64; + description + "Rx collisopns"; + } + leaf rx-policing-drops { + type uint64; + description + "Rx policing drops"; + } + leaf tx-unitcast-packets { + type uint64; + description + "Tx unicast packets"; + } + leaf tx-multicast-packets { + type uint64; + description + "Tx multicast packets"; + } + leaf tx-broadcast-packets { + type uint64; + description + "Tx broadcast packets"; + } + leaf txflow-control { + type uint64; + description + "Tx flow control"; + } + leaf tx-good-octets { + type uint64; + description + "Tx good octets"; + } + leaf tx-deferred { + type uint64; + description + "Tx deferred packets"; + } + leaf tx-fifo-unrun { + type uint64; + description + "Tx FIFO underrun/CRC"; + } + leaf tx-multi-collision { + type uint64; + description + "Tx Multiple collisions"; + } + leaf tx-excess-collision { + type uint64; + description + "Tx excess collisions"; + } + leaf tx-late-collisions { + type uint64; + description + "Tx late collisions"; + } + leaf tx-policing-drops { + type uint64; + description + "Tx policing drops"; + } + leaf tx-queue-drops { + type uint64; + description + "Tx queueing drops"; + } + leaf rx-tx-packets-64 { + type uint64; + description + "RxTx Packets 64"; + } + leaf rx-tx-packets-65-127 { + type uint64; + description + "RxTx Packets 65 to 127"; + } + leaf rx-tx-packets-128-255 { + type uint64; + description + "RxTx Packets 128 to 255"; + } + leaf rx-tx-packets-256-511 { + type uint64; + description + "RxTx Packets 256 to 511"; + } + leaf rx-tx-packets-512-1023 { + type uint64; + description + "RxTx Packets 512 1023"; + } + leaf rx-tx-packets-1024-max { + type uint64; + description + "RxTx Packets 1024 to max."; + } + } + + grouping ESDMA-SHOW-ETHSW-SUMMARY-STATISTICS-DATA { + description + "show ethernet switch summary statistics info"; + leaf port { + type uint8; + description + "Port number"; + } + leaf port-state { + type string { + length "0..8"; + } + description + "Port state"; + } + leaf port-state-changes { + type uint32; + description + "Port state changes"; + } + leaf tx-packets { + type uint64; + description + "Tx packets"; + } + leaf rx-packets { + type uint64; + description + "Rx packets"; + } + leaf tx-drops-errors { + type uint64; + description + "Tx drops errors"; + } + leaf rx-drops-errors { + type uint64; + description + "Rx drops errors"; + } + leaf connects-to { + type string { + length "0..64"; + } + description + "Connects to"; + } + } + + grouping ESDMA-SHOW-ETHSW-STATISTICS-INFO { + description + "show ethernet switch statistics info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-summary-stat-info { + description + "Ethernet switch summary statistics info"; + uses ESDMA-SHOW-ETHSW-SUMMARY-STATISTICS-DATA; + } + list ethsw-detailed-stat-info { + description + "Ethernet switch detailed statistics info"; + uses ESDMA-SHOW-ETHSW-DETAILED-STATISTICS-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-POLICING-PORT-DATA { + description + "ethernet switch policing port data"; + leaf policing-port { + type string { + length "0..64"; + } + description + "Policing Port"; + } + leaf policing-port-speed { + type string { + length "0..64"; + } + description + "Policing Port Speed"; + } + leaf policing-id { + type uint32; + description + "Policing Id"; + } + leaf policing-dir { + type string { + length "0..8"; + } + description + "Policing Direction"; + } + leaf policing-count-only { + type string { + length "0..8"; + } + description + "Policing Count Only"; + } + leaf policing-vid { + type uint32; + description + "Policing VID"; + } + leaf policing-vid-mask { + type uint32; + description + "Policing VID Mask"; + } + leaf policing-up { + type uint32; + description + "Policing Up"; + } + leaf policing-up-mask { + type uint32; + description + "Policing Up Mask"; + } + leaf policing-config-cir { + type uint64; + description + "Policing Config CIR"; + } + leaf policing-config-cir-pcnt { + type uint32; + units "percentage"; + description + "Policing Config CIR Percent"; + } + leaf policing-config-pir { + type uint64; + description + "Policing Config PIR"; + } + leaf policing-config-pir-pcnt { + type uint32; + units "percentage"; + description + "Policing Config PIR Percent"; + } + leaf policing-config-cbs { + type uint64; + description + "Policing Config CBS"; + } + leaf policing-config-pbs { + type uint64; + description + "Policing Config PBS"; + } + leaf policing-stats-total { + type uint64; + description + "Policing Stats Total"; + } + leaf policing-stats-green { + type uint64; + description + "Policing Stats Green"; + } + leaf policing-stats-yellow { + type uint64; + description + "Policing Stats Yellow"; + } + leaf policing-stats-red { + type uint64; + description + "Policing Stats Red"; + } + leaf policing-desc { + type string { + length "0..64"; + } + description + "Policing Description"; + } + } + + grouping ESDMA-SHOW-ETHSW-POLICING-INFO { + description + "show ethernet switch policing info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + leaf policing-config-ingress0 { + type string { + length "0..32"; + } + description + "Policing Config Ingress 0"; + } + leaf policing-config-ingress0-mru { + type uint32; + description + "Policing Config Ingress 0 MRU"; + } + leaf policing-config-ingress1 { + type string { + length "0..32"; + } + description + "Policing Config Ingress 1"; + } + leaf policing-config-ingress1-mru { + type uint32; + description + "Policing Config Ingress 1 MRU"; + } + leaf policing-config-egress { + type string { + length "0..32"; + } + description + "Policing Config Egress"; + } + leaf policing-config-egress-mru { + type uint32; + description + "Policing Config Egress MRU"; + } + list ethsw-policing-port-data { + description + "Ethernet switch policing port data"; + uses ESDMA-SHOW-ETHSW-POLICING-PORT-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-ALL-INFO { + description + "show ethernet switch"; + container ethsw-trunk { + description + "Ethernet switch trunk info"; + uses ESDMA-SHOW-ETHSW-TRUNK-INFO; + } + container ethsw-bridge { + description + "Ethernet switch bridge info"; + uses ESDMA-SHOW-ETHSW-BRIDGE-INFO; + } + container ethsw-summay { + description + "Ethernet switch summary info"; + uses ESDMA-SHOW-ETHSW-SUMMARY-INFO; + } + container ethsw-fdb { + description + "Ethernet switch FDB info"; + uses ESDMA-SHOW-ETHSW-FDB-INFO; + } + container ethsw-policing { + description + "Ethernet switch policing info"; + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + container ethsw-statistics { + description + "Ethernet switch statistics info"; + uses ESDMA-SHOW-ETHSW-STATISTICS-INFO; + } + container ethsw-vlan-ifo { + description + "Ethernet switch VLAN info"; + uses ESDMA-SHOW-ETHSW-VLANINFO-INFO; + } + container ethsw-vlan-membership { + description + "Ethernet switch VLAN membership info"; + uses ESDMA-SHOW-ETHSW-VLANMEMBERSHIP-INFO; + } + container ethsw-serdes { + description + "Ethernet switch SERDES info"; + uses ESDMA-SHOW-ETHSW-REGISTER-INFO; + } + container ethsw-mac { + description + "Ethernet switch MAC info"; + uses ESDMA-SHOW-ETHSW-REGISTER-INFO; + } + container ethsw-txq { + description + "Ethernet switch Tx queue info"; + uses ESDMA-SHOW-ETHSW-TXQ-INFO; + } + container ethsw-health-state { + description + "Ethernet switch health state info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-INFO; + } + container ethsw-events { + description + "Ethernet switch events info"; + uses ESDMA-SHOW-ETHSW-EVENTS-INFO; + } + container ethsw-debug-counters { + description + "Ethernet switch debug counters info"; + uses ESDMA-SHOW-ETHSW-DEBUG-COUNTERS-INFO; + } + container ethsw-data-integrity-error { + description + "Ethernet switch data integrity error info"; + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + + grouping ESDMA-SHOW-ETHSW-SUMMARY-DATA { + description + "show ethernet switch summary info"; + leaf port { + type uint8; + description + "Port number"; + } + leaf port-state { + type string { + length "0..8"; + } + description + "Port state"; + } + leaf port-admin-state { + type string { + length "0..8"; + } + description + "Port admin state"; + } + leaf port-speed { + type string { + length "0..8"; + } + description + "Port speed"; + } + leaf port-protocol-state { + type string { + length "0..8"; + } + description + "Port protocol state"; + } + leaf port-forwarding { + type string { + length "0..16"; + } + description + "Port is forwarding"; + } + leaf connects-to { + type string { + length "0..64"; + } + description + "Connects to"; + } + } + + grouping ESDMA-SHOW-ETHSW-SUMMARY-INFO { + description + "show ethernet switch summary info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-sum-info { + description + "Ethernet switch summary info"; + uses ESDMA-SHOW-ETHSW-SUMMARY-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-TRUNK-DATA { + description + "show ethernet switch trunk info"; + leaf port { + type uint8; + description + "Port number"; + } + leaf port-status { + type uint8; + description + "Port status"; + } + } + + grouping ESDMA-SHOW-ETHSW-TRUNK-INFO { + description + "show ethernet switch trunk info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + leaf member-count { + type uint8; + description + "Member count"; + } + leaf trunk-name { + type string { + length "0..64"; + } + description + "Trunk name"; + } + list ethsw-trunk-info { + description + "Ethernet switch trunk info"; + uses ESDMA-SHOW-ETHSW-TRUNK-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-HEALTH-STATE-HISTORY-ENTRY-DATA { + description + "ethernet switch health state history entry info"; + leaf instance { + type uint32; + description + "Instance"; + } + leaf type { + type string { + length "0..8"; + } + description + "Type"; + } + leaf new-state { + type string { + length "0..64"; + } + description + "New state"; + } + leaf fault { + type string { + length "0..64"; + } + description + "Fault"; + } + leaf epoch { + type string { + length "0..64"; + } + description + "Epoch time"; + } + } + + grouping ESDMA-SHOW-ETHSW-HEALTH-STATE-PARTNER-DATA { + description + "ethernet switch health state partner info"; + leaf card-type { + type uint32; + description + "Card type"; + } + leaf logical-slot { + type uint32; + description + "Logical slot"; + } + leaf present { + type uint32; + description + "Present"; + } + leaf active { + type uint32; + description + "Active"; + } + leaf epoch { + type string { + length "0..64"; + } + description + "Epoch time"; + } + leaf card-name { + type string { + length "0..16"; + } + description + "Card name"; + } + } + + grouping ESDMA-SHOW-ETHSW-HEALTH-STATE-PARTNER-ACTIVE-DATA { + description + "ethernet switch health state partner active info"; + leaf card-type { + type uint32; + description + "Card type"; + } + leaf logical-slot { + type uint32; + description + "Logical slot"; + } + } + + grouping ESDMA-SHOW-ETHSW-HEALTH-STATE-DETAILED-STATE-DATA { + description + "ethernet switch health state link state info"; + leaf state { + type string { + length "0..16"; + } + description + "State"; + } + leaf fault { + type string { + length "0..64"; + } + description + "Fault"; + } + leaf epoch { + type string { + length "0..64"; + } + description + "Epoch time"; + } + leaf count { + type uint32; + description + "Count"; + } + } + + grouping ESDMA-SHOW-ETHSW-HEALTH-STATE-PORT-DATA { + description + "ethernet switch health state port info"; + leaf port { + type uint32; + description + "Port"; + } + leaf port-name { + type string { + length "0..64"; + } + description + "Port name"; + } + leaf polling-mode { + type string { + length "0..16"; + } + description + "Polling mode"; + } + leaf polling-count { + type uint32; + description + "Polling count"; + } + leaf polling-interval-ms { + type uint32; + description + "Polling interval in milli second"; + } + leaf monitor-mode { + type string { + length "0..16"; + } + description + "Monitor mode"; + } + leaf monitor-enabled { + type string { + length "0..16"; + } + description + "Monitor enabled"; + } + leaf recovery-mode { + type string { + length "0..64"; + } + description + "Recovery mode"; + } + leaf recovery-enabled { + type string { + length "0..64"; + } + description + "Recovery enabled"; + } + leaf recovery-attempts { + type uint32; + description + "Recovery attempts"; + } + list ethsw-health-state-link-state-info { + description + "Ethernet switch health state link state info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-DETAILED-STATE-DATA; + } + list ethsw-health-state-sync-state-info { + description + "Ethernet switch health state sync state info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-DETAILED-STATE-DATA; + } + list ethsw-health-state-admin-state-info { + description + "Ethernet switch health state admin state info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-DETAILED-STATE-DATA; + } + list ethsw-health-state-phy-sync-state-info { + description + "Ethernet switch health state phy sync state info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-DETAILED-STATE-DATA; + } + list ethsw-health-state-health-state-info { + description + "Ethernet switch health state's health status + info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-DETAILED-STATE-DATA; + } + list ethsw-health-state-partner-state-info { + description + "Ethernet switch health state partner state info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-DETAILED-STATE-DATA; + } + list ethsw-health-state-partner-active-info { + description + "Ethernet switch health state partner active info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-PARTNER-ACTIVE-DATA; + } + list ethsw-health-state-partner-info { + description + "Ethernet switch health state partner info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-PARTNER-DATA; + } + list ethsw-health-state-history-entry-info { + description + "Ethernet switch health state history entry info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-HISTORY-ENTRY-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-HEALTH-STATE-INFO { + description + "show ethernet switch health state info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-health-state-port-info { + description + "Ethernet switch health state port info"; + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-PORT-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-DEBUG-COUNTERS-CORE-STATISTICS-DATA { + description + "ethernet switch debug counters core statistics + info"; + leaf core { + type uint32; + description + "Core"; + } + leaf msi-count { + type uint64; + description + "MSI count"; + } + leaf aer-count { + type uint64; + description + "AER count"; + } + leaf hotplug-count { + type uint64; + description + "Hotplug count"; + } + leaf watchdog-count { + type uint64; + description + "Watchdog count"; + } + leaf task-lock-longest-wait-time { + type uint64; + description + "Task lock longest wait time"; + } + leaf task-lock-longest-held-time { + type uint64; + description + "Task lock longest held time"; + } + leaf task-unlock-longest-wait-time { + type uint64; + description + "Task unlock longest wait time"; + } + } + + grouping ESDMA-SHOW-ETHSW-DEBUG-COUNTERS-INFO { + description + "show ethernet switch debug counters info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + leaf tx-thread-watchdog-count { + type uint64; + description + "Tx thread watchdog count"; + } + leaf rx-thread-watchdog-count { + type uint64; + description + "Rx thread watchdog count"; + } + leaf task-lock-longest-wait-time { + type uint64; + description + "Task lock longest wait time"; + } + leaf task-lock-longest-wait-event { + type uint32; + description + "Task lock longest wait event"; + } + leaf task-lock-longest-held-time { + type uint64; + description + "Task lock longest held time"; + } + leaf task-lock-longest-held-event { + type uint32; + description + "Task lock longest held event"; + } + leaf task-unlock-longest-wait-time { + type uint64; + description + "Task unlock longest wait time"; + } + leaf task-unlock-longest-wait-event { + type uint32; + description + "Task unlock longest wait event"; + } + leaf dma-health-checks { + type string { + length "0..16"; + } + description + "DMA health checks status"; + } + leaf dma-max-rx-packets-dequeued-per-interrupt { + type uint64; + description + "DMA max Rx packets dequeued per interrupt"; + } + leaf dma-rx-packets-dequeued { + type uint64; + description + "DMA Rx packets dequeued"; + } + leaf dma-rx-packet-dequeue-errors { + type uint64; + description + "DMA Rx packet dequeue errors"; + } + leaf dma-tx-packets-queued { + type uint64; + description + "DMA Tx packets queued"; + } + leaf dma-tx-packets-completed { + type uint64; + description + "DMA Tx packets completed"; + } + leaf dma-tx-packet-no-message-errors { + type uint64; + description + "DMA Tx packet no message errors"; + } + leaf dma-tx-packet-message-too-big-errors { + type uint64; + description + "DMA Tx packet message too big errors"; + } + leaf dma-tx-packet-no-buffer-errors { + type uint64; + description + "DMA Tx packet no buffer errors"; + } + leaf dma-tx-packet-queue-errors { + type uint64; + description + "DMA Tx packet queue errors"; + } + leaf dma-tx-packet-completion-errors { + type uint64; + description + "DMA Tx packet completion errors"; + } + leaf dma-max-tx-packets-freed-per-interrupt { + type uint64; + description + "DMA max Tx packets freed per interrupt"; + } + leaf dma-tx-buffer-allocation-count { + type uint64; + description + "DMA Tx buffer allocation count"; + } + leaf dma-tx-buffer-free-count { + type uint64; + description + "DMA Tx buffer free count"; + } + list ethsw-debug-counters-core-statistics-info { + description + "Ethernet switch debug counters core statistics + info"; + uses ESDMA-SHOW-ETHSW-DEBUG-COUNTERS-CORE-STATISTICS-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-BRIDGE-EGRESS-DATA { + description + "ethernet switch bridge egress info"; + leaf entry-number { + type uint8; + description + "Entry number"; + } + leaf egress-port-vlan-tc-dp { + type string { + length "0..32"; + } + description + "Egress port, vlan, TC and DP"; + } + leaf egress-unicast-frames { + type uint64; + description + "Egress unicast frames"; + } + leaf egress-multicast-frames { + type uint64; + description + "Egress multicast frames"; + } + leaf egress-broadcast-frames { + type uint64; + description + "Egress broadcast frames"; + } + leaf egress-discarded-frames { + type uint64; + description + "Egress discarded frames"; + } + leaf egress-transmit-q-cong { + type uint64; + description + "Egress transmit q congestion"; + } + leaf egress-control-packets { + type uint64; + description + "Egress control packats"; + } + leaf egress-other-drops { + type uint64; + description + "Egress other drops"; + } + } + + grouping ESDMA-SHOW-ETHSW-BRIDGE-INGRESS-DATA { + description + "ethernet switch bridge ingress info"; + leaf entry-number { + type uint8; + description + "Entry number"; + } + leaf ingress-port-vlan { + type string { + length "0..32"; + } + description + "Ingress port and vlan"; + } + leaf ingress-frames { + type uint64; + description + "Ingress frames"; + } + leaf ingress-vlan-discards { + type uint64; + description + "Ingress vlan discards"; + } + leaf ingress-sec-discards { + type uint64; + description + "Ingress security discards"; + } + leaf ingress-other-discards { + type uint64; + description + "Ingress other discards"; + } + } + + grouping ESDMA-SHOW-ETHSW-BRIDGE-INFO { + description + "show ethernet switch bridge info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-bridge-ingress-info { + description + "Ethernet switch bridge ingress info"; + uses ESDMA-SHOW-ETHSW-BRIDGE-INGRESS-DATA; + } + list ethsw-bridge-egress-info { + description + "Ethernet switch bridge egress info"; + uses ESDMA-SHOW-ETHSW-BRIDGE-EGRESS-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-FDB-CORE-DATA { + description + "ethernet switch fdb core info"; + leaf fdb-instance { + type string { + length "0..32"; + } + description + "Fdb Instance"; + } + leaf fdb-entries { + type uint32; + description + "Total entries"; + } + leaf fdb-static-entries { + type uint32; + description + "Static entries"; + } + } + + grouping ESDMA-SHOW-ETHSW-FDB-STATISTICS-DATA { + description + "ethernet switch fdb statistics info"; + leaf fdb-shadow-entries { + type uint32; + description + "Current shadow table entries"; + } + leaf fdb-max-shadow-entries { + type uint32; + description + "Maximum shadow table entries"; + } + leaf fdb-max-hash-chain { + type uint32; + description + "Maximum hash chain depth"; + } + leaf fdb-entries-added { + type uint32; + description + "Number of entries added"; + } + leaf fdb-entries-deleted { + type uint32; + description + "Number of entries deleted"; + } + leaf fdb-entries-updated { + type uint32; + description + "Number of entries updated"; + } + leaf fdb-flushed { + type uint32; + description + "Number of FDB flushes"; + } + leaf fdb-address-updates { + type uint32; + description + "Address update messages"; + } + leaf fdb-new-address { + type uint32; + description + "New addresses"; + } + leaf fdb-aged-updates { + type uint32; + description + "Aged addresses"; + } + leaf fdb-transplant-updates { + type uint32; + description + "Transplanted updates"; + } + leaf fdb-forwarding-updates { + type uint32; + description + "Forwarding updates"; + } + leaf fdb-addr-insert-errors { + type uint32; + description + "Address insert errors"; + } + leaf fdb-addr-update-errors { + type uint32; + description + "Address update errors"; + } + leaf fdbmemory-errors { + type uint32; + description + "FDB memory errors"; + } + leaf fdb-allocation-errors { + type uint32; + description + "FDB allocation errors"; + } + leaf fdb-addr-updates-q { + type uint32; + description + "Address updates queued"; + } + leaf fdb-addr-q-full { + type string { + length "0..32"; + } + description + "Address queue full"; + } + leaf fdbforwarding-updates-qed { + type uint32; + description + "Forwarding updates queued"; + } + leaf fdb-forwarding-q-full { + type string { + length "0..32"; + } + description + "Forwarding queue full"; + } + } + + grouping ESDMA-SHOW-ETHSW-FDB-DATA { + description + "ethernet switch fdb info"; + leaf fdb-mac-addr { + type string { + length "0..32"; + } + description + "Fdb MAC address"; + } + leaf fdb-vlan { + type uint32; + description + "Fdb VLAN"; + } + leaf fdb-port { + type string { + length "0..32"; + } + description + "Fdb port"; + } + leaf fdb-trap-entry { + type string { + length "0..32"; + } + description + "Fdb trap entry"; + } + leaf fdb-static-entry { + type string { + length "0..32"; + } + description + "Fdb static entry"; + } + leaf fdb-synced-cores { + type uint32; + description + "Fdb synced cores"; + } + leaf fdb-index { + type uint32; + description + "Fdb index"; + } + } + + grouping ESDMA-SHOW-ETHSW-FDB-INFO { + description + "show ethernet switch forwarding data base info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + leaf has-trunk-entry { + type string { + length "0..32"; + } + description + "Has trunk entry"; + } + leaf trunk-entry-message { + type string { + length "0..256"; + } + description + "Trunk entry message"; + } + list ethsw-fdb-info { + description + "Ethernet switch FDB info"; + uses ESDMA-SHOW-ETHSW-FDB-DATA; + } + list ethsw-fdb-statistic { + description + "Ethernet switch FDB statistics info"; + uses ESDMA-SHOW-ETHSW-FDB-STATISTICS-DATA; + } + list ethsw-fdb-core-info { + description + "Ethernet switch FDB core info"; + uses ESDMA-SHOW-ETHSW-FDB-CORE-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-REGISTER-DATA { + description + "ethernet switch register data"; + leaf base-reg { + type string { + length "0..16"; + } + description + "Register address"; + } + leaf description { + type string { + length "0..64"; + } + description + "Register description"; + } + leaf value { + type string { + length "0..16"; + } + description + "Register value"; + } + } + + grouping ESDMA-SHOW-ETHSW-PORT-DATA { + description + "ethernet switch port info"; + leaf port { + type uint8; + description + "Port number"; + } + list ethsw-register-data { + description + "Register data"; + uses ESDMA-SHOW-ETHSW-REGISTER-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-REGISTER-INFO { + description + "show ethernet switch register info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-port-info { + description + "Ethernet switch port info"; + uses ESDMA-SHOW-ETHSW-PORT-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-HISTORY-ENTRY-DATA { + description + "ethernet switch data integrity error history + entry info"; + leaf instance { + type uint32; + description + "Entry instance"; + } + leaf memory-type { + type uint32; + description + "Memory type"; + } + leaf memory-type-name { + type string { + length "0..64"; + } + description + "Memory type name"; + } + leaf memory-row { + type uint32; + description + "Memory row"; + } + leaf tcam-rule-index { + type string { + length "0..16"; + } + description + "TCAM rule index"; + } + leaf hardware-table { + type string { + length "0..16"; + } + description + "Hardware table"; + } + leaf hardware-table-name { + type string { + length "0..64"; + } + description + "Hardware table name"; + } + leaf hardware-table-index { + type string { + length "0..16"; + } + description + "Hardware table index"; + } + leaf logical-table { + type string { + length "0..16"; + } + description + "Logical table"; + } + leaf logical-table-name { + type string { + length "0..64"; + } + description + "Logical table name"; + } + leaf logical-table-index { + type string { + length "0..16"; + } + description + "Logical table index"; + } + leaf interrupt { + type uint32; + description + "Interrupt"; + } + leaf error-type { + type string { + length "0..64"; + } + description + "Error type"; + } + leaf memory-usage { + type string { + length "0..64"; + } + description + "Memory usage"; + } + leaf correction-method { + type string { + length "0..64"; + } + description + "Correction method"; + } + leaf error-status { + type string { + length "0..64"; + } + description + "Error status"; + } + leaf error-time { + type string { + length "0..64"; + } + description + "Error time"; + } + } + + grouping ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-HISTORY-DATA { + description + "ethernet switch data integrity error history data"; + leaf number-of-entries { + type uint32; + description + "Number of entries"; + } + list ethsw-data-integrity-error-history-entry-info { + description + "Ethernet switch data integrity error history + entry info"; + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-HISTORY-ENTRY-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFORMATION-ENTRY-DATA { + description + "ethernet switch data integrity error information + entry"; + leaf instance { + type uint32; + description + "Entry instance"; + } + leaf memory-type { + type uint32; + description + "Memory type"; + } + leaf memory-type-name { + type string { + length "0..64"; + } + description + "Memory type name"; + } + leaf hardware-table { + type string { + length "0..16"; + } + description + "Hardware table"; + } + leaf hardware-table-name { + type string { + length "0..64"; + } + description + "Hardware table name"; + } + leaf logical-table { + type string { + length "0..16"; + } + description + "Logical table"; + } + leaf logical-table-name { + type string { + length "0..64"; + } + description + "Logical table name"; + } + leaf protection-type { + type string { + length "0..16"; + } + description + "Protection type"; + } + leaf parity-error-count { + type uint32; + description + "Parity error count"; + } + leaf single-bit-error-correction-code-error-count { + type uint32; + description + "Single bit error correction code error count"; + } + leaf multi-bit-error-correction-code-error-count { + type uint32; + description + "Multi bit error correction code error count"; + } + leaf corrected-error-count { + type uint32; + description + "Corrected error count"; + } + leaf uncorrected-error-count { + type uint32; + description + "Uncorrected error count"; + } + leaf last-error-time { + type string { + length "0..64"; + } + description + "Last error time"; + } + } + + grouping ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFORMATION-DATA { + description + "ethernet switch data integrity error information"; + leaf number-of-entries { + type uint32; + description + "Number of entries"; + } + list ethsw-data-integrity-error-information-entry-info { + description + "Ethernet switch data integrity error information + entry details"; + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFORMATION-ENTRY-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-SUMMARY-ENTRY-DATA { + description + "ethernet switch data integrity error summary + entry info"; + leaf memory-type { + type uint32; + description + "Memory type"; + } + leaf memory-type-name { + type string { + length "0..64"; + } + description + "Memory type name"; + } + leaf parity-error-count { + type uint32; + description + "Parity error count"; + } + leaf single-bit-error-correction-code-error-count { + type uint32; + description + "Single bit error correction code error count"; + } + leaf multi-bit-error-correction-code-error-count { + type uint32; + description + "Multi bit error correction code error count"; + } + leaf corrected-error-count { + type uint32; + description + "Corrected error count"; + } + leaf uncorrected-error-count { + type uint32; + description + "Uncorrected error count"; + } + } + + grouping ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-SUMMARY-DATA { + description + "ethernet switch data integrity error summary info"; + leaf number-of-entries { + type uint32; + description + "Number of entries"; + } + leaf total-parity-error-count { + type uint64; + description + "Total parity error count"; + } + leaf total-single-bit-error-correction-code-error-count { + type uint64; + description + "Total single bit error correction code error + count"; + } + leaf total-multi-bit-error-correction-code-error-count { + type uint64; + description + "Total multi bit error correction code error + count"; + } + leaf total-corrected-error-count { + type uint64; + description + "Total corrected error count"; + } + leaf total-uncorrected-error-count { + type uint64; + description + "Total uncorrected error count"; + } + list ethsw-data-integrity-error-summary-entry-info { + description + "Ethernet switch data integrity error summary + entry info"; + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-SUMMARY-ENTRY-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO { + description + "show ethernet switch data integrity error info"; + container ethsw-location-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + list ethsw-data-integrity-error-summary-info { + description + "Ethernet switch data integrity error summary + info"; + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-SUMMARY-DATA; + } + list ethsw-data-integrity-error-information { + description + "Ethernet switch data integrity error information"; + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFORMATION-DATA; + } + list ethsw-data-integrity-error-history-info { + description + "Ethernet switch data integrity error history + info"; + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-HISTORY-DATA; + } + } + + grouping ESDMA-SHOW-ETHSW-LOCATION-DATA { + description + "ethernet switch location info"; + leaf rack { + type uint8; + description + "Rack number"; + } + leaf card { + type string { + length "0..16"; + } + description + "Card name"; + } + leaf switch { + type string { + length "0..8"; + } + description + "Switch name"; + } + leaf serial-num { + type string { + length "0..20"; + } + description + "Serial number"; + } + } + + grouping ESDMA-SHOW-ETHSW-REACHABLE-INFO { + description + "show ethernet switch reachable info"; + list ethsw-reachable-info { + description + "Ethernet switch location info"; + uses ESDMA-SHOW-ETHSW-LOCATION-DATA; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper.yang new file mode 100644 index 000000000..9739756ac --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-switch-oper.yang @@ -0,0 +1,1586 @@ +module Cisco-IOS-XR-switch-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-switch-oper"; + prefix switch-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-switch-oper-sub1 { + revision-date 2020-08-13; + } + + 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 switch package operational data. + + This module contains definitions + for the following management objects: + show-switch: Control plane Ethernet switch data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-13 { + description + "Added an entry for show controller switch data-integrity errror"; + semver:module-version "1.0.0"; + } + revision 2020-07-16 { + description + "Added an entry for show controller switch debug counters"; + } + revision 2020-06-30 { + description + "Added an entry for show controller switch events"; + } + revision 2020-05-22 { + description + "Added an entry for show controller switch health state"; + } + revision 2020-03-16 { + description + "Added an entry for show controller switch txq"; + } + revision 2019-10-30 { + description + "Change class name VLANInfoLnstance to VLANInfoInstance"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2019-03-08 { + description + "and entry for show controller switch bridge"; + } + revision 2019-03-01 { + description + "Rename esdma-oper to switch-oper, esdma-emon-oper to emon-oper"; + } + revision 2019-02-07 { + description + "Rework clear and set operations."; + } + revision 2019-01-30 { + description + "Schema rework to match the CLI."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-switch { + config false; + description + "Control plane Ethernet switch data"; + container reachable { + description + "Lists all control plane Ethernet switches"; + uses ESDMA-SHOW-ETHSW-REACHABLE-INFO; + } + container data-integrity { + description + "Display switch data-integrity database"; + container data-integrity-error { + description + "Display switch data-integrity error database"; + container data-integrity-error-info { + description + "Display switch data-integrity error + information database"; + container data-integrity-error-info-log-table-numbers { + description + "Filter data integrity based on logical table"; + list data-integrity-error-info-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-info-log-table-location-instances { + description + "switch location"; + list data-integrity-error-info-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + container data-integrity-error-info-mem-type-numbers { + description + "Filter data integrity based on memory type"; + list data-integrity-error-info-mem-type-number { + key "mem-type"; + description + "Memory type number"; + container data-integrity-error-info-mem-type-location-instances { + description + "switch location"; + list data-integrity-error-info-mem-type-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-info-mem-type-hw-table-numbers { + description + "Filter data integrity based on hardware + table"; + list data-integrity-error-info-mem-type-hw-table-number { + key "hw-table"; + description + "Hardware table number"; + container data-integrity-error-info-mem-type-hw-table-log-table-numbers { + description + "Filter data integrity based on logical + table"; + list data-integrity-error-info-mem-type-hw-table-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-info-mem-type-hw-table-log-table-location-instances { + description + "switch location"; + list data-integrity-error-info-mem-type-hw-table-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + container data-integrity-error-info-mem-type-hw-table-location-instances { + description + "switch location"; + list data-integrity-error-info-mem-type-hw-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf hw-table { + type uint32; + description + "Hardware Table"; + } + } + } + leaf mem-type { + type uint32; + description + "Memory Type"; + } + } + } + container data-integrity-error-info-hw-table-numbers { + description + "Filter data integrity based on hardware table"; + list data-integrity-error-info-hw-table-number { + key "hw-table"; + description + "Hardware table number"; + container data-integrity-error-info-hw-table-location-instances { + description + "switch location"; + list data-integrity-error-info-hw-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-info-hw-table-log-table-numbers { + description + "Filter data integrity based on logical + table"; + list data-integrity-error-info-hw-table-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-info-hw-table-log-table-location-instances { + description + "switch location"; + list data-integrity-error-info-hw-table-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + leaf hw-table { + type uint32; + description + "Hardware Table"; + } + } + } + container data-integrity-error-info-location-instances { + description + "switch location"; + list data-integrity-error-info-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + } + container data-integrity-error-history { + description + "Display switch data-integrity error history + database"; + container data-integrity-error-history-log-table-numbers { + description + "Filter data integrity based on logical table"; + list data-integrity-error-history-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-history-log-table-location-instances { + description + "switch location"; + list data-integrity-error-history-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + container data-integrity-error-history-mem-type-numbers { + description + "Filter data integrity based on memory type"; + list data-integrity-error-history-mem-type-number { + key "mem-type"; + description + "Memory type number"; + container data-integrity-error-history-mem-type-location-instances { + description + "switch location"; + list data-integrity-error-history-mem-type-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-history-mem-type-hw-table-numbers { + description + "Filter data integrity based on hardware + table"; + list data-integrity-error-history-mem-type-hw-table-number { + key "hw-table"; + description + "Hardware table number"; + container data-integrity-error-history-mem-type-hw-table-log-table-numbers { + description + "Filter data integrity based on logical + table"; + list data-integrity-error-history-mem-type-hw-table-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-history-mem-type-hw-table-log-table-location-instances { + description + "switch location"; + list data-integrity-error-history-mem-type-hw-table-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + container data-integrity-error-history-mem-type-hw-table-location-instances { + description + "switch location"; + list data-integrity-error-history-mem-type-hw-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf hw-table { + type uint32; + description + "Hardware Table"; + } + } + } + leaf mem-type { + type uint32; + description + "Memory Type"; + } + } + } + container data-integrity-error-history-hw-table-numbers { + description + "Filter data integrity based on hardware table"; + list data-integrity-error-history-hw-table-number { + key "hw-table"; + description + "Hardware table number"; + container data-integrity-error-history-hw-table-location-instances { + description + "switch location"; + list data-integrity-error-history-hw-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-history-hw-table-log-table-numbers { + description + "Filter data integrity based on logical + table"; + list data-integrity-error-history-hw-table-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-history-hw-table-log-table-location-instances { + description + "switch location"; + list data-integrity-error-history-hw-table-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + leaf hw-table { + type uint32; + description + "Hardware Table"; + } + } + } + container data-integrity-error-history-location-instances { + description + "switch location"; + list data-integrity-error-history-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + } + container data-integrity-error-summary { + description + "Display switch data-integrity error summary + database"; + container data-integrity-error-summary-mem-type-numbers { + description + "Filter data integrity based on memory type"; + list data-integrity-error-summary-mem-type-number { + key "mem-type"; + description + "Memory type number"; + container data-integrity-error-summary-mem-type-location-instances { + description + "switch location"; + list data-integrity-error-summary-mem-type-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-summary-mem-type-hw-table-numbers { + description + "Filter data integrity based on hardware + table"; + list data-integrity-error-summary-mem-type-hw-table-number { + key "hw-table"; + description + "Hardware table number"; + container data-integrity-error-summary-mem-type-hw-table-location-instances { + description + "switch location"; + list data-integrity-error-summary-mem-type-hw-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-summary-mem-type-hw-table-log-table-numbers { + description + "Filter data integrity based on logical + table"; + list data-integrity-error-summary-mem-type-hw-table-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-summary-mem-type-hw-table-log-table-location-instances { + description + "switch location"; + list data-integrity-error-summary-mem-type-hw-table-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + leaf hw-table { + type uint32; + description + "Hardware Table"; + } + } + } + leaf mem-type { + type uint32; + description + "Memory Type"; + } + } + } + container data-integrity-error-summary-location-instances { + description + "switch location"; + list data-integrity-error-summary-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-summary-hw-table-numbers { + description + "Filter data integrity based on hardware table"; + list data-integrity-error-summary-hw-table-number { + key "hw-table"; + description + "Hardware table number"; + container data-integrity-error-summary-hw-table-location-instances { + description + "switch location"; + list data-integrity-error-summary-hw-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + container data-integrity-error-summary-hw-table-log-table-numbers { + description + "Filter data integrity based on logical + table"; + list data-integrity-error-summary-hw-table-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-summary-hw-table-log-table-location-instances { + description + "switch location"; + list data-integrity-error-summary-hw-table-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + leaf hw-table { + type uint32; + description + "Hardware Table"; + } + } + } + container data-integrity-error-summary-log-table-numbers { + description + "Filter data integrity based on logical table"; + list data-integrity-error-summary-log-table-number { + key "log-table"; + description + "Logical table number"; + container data-integrity-error-summary-log-table-location-instances { + description + "switch location"; + list data-integrity-error-summary-log-table-location-instance { + key "node-id"; + description + "Location information for switch data + integrity information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DATA-INTEGRITY-ERROR-INFO; + } + } + leaf log-table { + type uint32; + description + "Logical Table"; + } + } + } + } + } + } + container mac { + description + "Display mac information"; + container mac-instances { + description + "switch location"; + list mac-instance { + key "node-id"; + description + "Location information for switch MAC + information"; + container mac-port-numbers { + description + "MAC filter type: Port"; + list mac-port-number { + key "port"; + description + "Port number filter for switch MAC + information"; + leaf port { + type uint32; + description + "Port number"; + } + uses ESDMA-SHOW-ETHSW-REGISTER-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + container fdb { + description + "Display switch forwarding database"; + container fdb-mac-addresses { + description + "FDB filter type: Mac"; + list fdb-mac-address { + key "mac"; + description + "Mac Address"; + container fdb-mac-instances { + description + "switch location"; + list fdb-mac-instance { + key "node-id"; + description + "Location information for switch FDB MAC + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-FDB-INFO; + } + } + leaf mac { + type xr:Cisco-ios-xr-string; + description + "Mac address"; + } + } + } + container fdb-statistics { + description + "FDB request type: Statistics"; + container fdb-statistics-instances { + description + "switch location"; + list fdb-statistics-instance { + key "node-id"; + description + "Location information for switch FDB + statistics information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-FDB-INFO; + } + } + } + container fdb-instances { + description + "switch location"; + list fdb-instance { + key "node-id"; + description + "Location information for switch FDB + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-FDB-INFO; + } + } + container fdb-port-numbers { + description + "FDB filter type: Port"; + list fdb-port-number { + key "port"; + description + "Port number"; + container fdb-port-instances { + description + "switch location"; + list fdb-port-instance { + key "node-id"; + description + "Location information for switch FDB port + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-FDB-INFO; + } + } + leaf port { + type uint32; + description + "Port number"; + } + } + } + container fdb-vlan-ids { + description + "FDB filter type: VLAN"; + list fdb-vlan-id { + key "vlan"; + description + "VLAN ID"; + container fdb-vlan-instances { + description + "switch location"; + list fdb-vlan-instance { + key "node-id"; + description + "Location information for switch FDB VLAN + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-FDB-INFO; + } + } + leaf vlan { + type uint32; + description + "VLAN Id"; + } + } + } + } + container bridge { + description + "Display switch bridge information"; + container bridge-statistics { + description + "Bridge request type, currently one option, + statistics"; + container bridge-statistics-instances { + description + "switch location"; + list bridge-statistics-instance { + key "node-id"; + description + "Location information for switch bridge + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-BRIDGE-INFO; + } + } + } + container bridge-instances { + description + "switch location"; + list bridge-instance { + key "node-id"; + description + "Location information for switch bridge + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-BRIDGE-INFO; + } + } + } + container debug { + description + "Display switch debug info"; + container debug-counters { + description + "Display switch debug counters"; + container debug-counters-instances { + description + "Switch location"; + list debug-counters-instance { + key "node-id"; + description + "Location information for switch debug + counters information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-DEBUG-COUNTERS-INFO; + } + } + } + } + container health { + description + "Display switch health info"; + container health-state { + description + "Display switch health state"; + container health-state-instances { + description + "Switch location"; + list health-state-instance { + key "node-id"; + description + "Location information for switch health + information"; + container health-state-port-numbers { + description + "Filter health state based on Port"; + list health-state-port-number { + key "port-num"; + description + "Port Number"; + leaf port-num { + type uint32; + description + "Port Num"; + } + uses ESDMA-SHOW-ETHSW-HEALTH-STATE-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + } + container trunk { + description + "Display the switch trunk group information"; + container trunk-instances { + description + "switch location"; + list trunk-instance { + key "node-id"; + description + "Location information for switch trunk group + information"; + container trunk-port-numbers { + description + "Filter Trunk based on Port"; + list trunk-port-number { + key "port"; + description + "Port number filter for switch trunk group + information"; + leaf port { + type uint32; + description + "Port number"; + } + uses ESDMA-SHOW-ETHSW-TRUNK-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + container summary { + description + "Show summary switch status"; + container summary-instances { + description + "switch location"; + list summary-instance { + key "node-id"; + description + "Location information for switch summary status"; + container summary-port-numbers { + description + "Filter summary based on Port"; + list summary-port-number { + key "port"; + description + "Port information"; + leaf port { + type uint32; + description + "Port number"; + } + uses ESDMA-SHOW-ETHSW-SUMMARY-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + container all { + description + "Display all switch data"; + container all-instances { + description + "switch location"; + list all-instance { + key "node-id"; + description + "Location information for switch data"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-ALL-INFO; + } + } + } + container txq { + description + "Display switch Txq info"; + container txq-statistics { + description + "Display txq statistics"; + container txq-statistics-instances { + description + "Switch location"; + list txq-statistics-instance { + key "node-id"; + description + "Location information for switch txq + information"; + container txq-statistics-port-numbers { + description + "Filter txq Statistics based on Port"; + list txq-statistics-port-number { + key "port-num"; + description + "Port Number"; + leaf port-num { + type uint32; + description + "Port Num"; + } + uses ESDMA-SHOW-ETHSW-TXQ-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + container txq-statistics-detail { + description + "Detailed switch txq statistics"; + container txq-statistics-detail-instances { + description + "Switch location"; + list txq-statistics-detail-instance { + key "node-id"; + description + "Location information for switch txq + information"; + container txq-statistics-detail-port-numbers { + description + "Filter txq Statistics based on Port"; + list txq-statistics-detail-port-number { + key "port-num"; + description + "Port Number"; + leaf port-num { + type uint32; + description + "Port Num"; + } + uses ESDMA-SHOW-ETHSW-TXQ-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + } + container txq-config { + description + "Display switch Txq config"; + container txq-config-instances { + description + "Switch location"; + list txq-config-instance { + key "node-id"; + description + "Location information for switch txq + information"; + container txq-config-port-numbers { + description + "Filter txq config based on Port"; + list txq-config-port-number { + key "port-num"; + description + "Port Number"; + leaf port-num { + type uint32; + description + "Port Num"; + } + uses ESDMA-SHOW-ETHSW-TXQ-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + } + container events { + description + "Display all events data"; + container events-instances { + description + "switch location"; + list events-instance { + key "node-id"; + description + "Location information for switch data"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-EVENTS-INFO; + } + } + } + container vlan { + description + "Control Plane Ethernet VLAN Information"; + container vlan-info { + description + "VLAN use information"; + container vlan-info-instances { + description + "switch location"; + list vlan-info-instance { + key "node-id"; + description + "Location information for switch VLAN + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-VLANINFO-INFO; + } + } + } + container vlan-membership { + description + "List switch port membership of VLANs"; + container vlan-membership-instances { + description + "switch location"; + list vlan-membership-instance { + key "node-id"; + description + "Location information for switch VLAN + membership"; + container vlan-membership-vlan-ids { + description + "Filter VLAN membership based on VLAN"; + list vlan-membership-vlan-id { + key "vlan"; + description + "VLAN ID filter for VLAN membership + information"; + leaf vlan { + type uint32; + description + "VLAN ID"; + } + uses ESDMA-SHOW-ETHSW-VLANMEMBERSHIP-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + } + container statistics { + description + "Show switch statistics"; + container statistics-detail { + description + "Detailed switch port statistics"; + container statistics-detail-instances { + description + "switch location"; + list statistics-detail-instance { + key "node-id"; + description + "Location for detailed switch port statistics"; + container statistics-detail-port-numbers { + description + "Filter statistics detail based on Port"; + list statistics-detail-port-number { + key "port"; + description + "Port number filter for detailed switch port + statistics"; + leaf port { + type uint32; + description + "Port number"; + } + uses ESDMA-SHOW-ETHSW-STATISTICS-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + container statistics-instances { + description + "switch location"; + list statistics-instance { + key "node-id"; + description + "Location information for switch statistics"; + container statistics-port-numbers { + description + "Filter statistics based on Port"; + list statistics-port-number { + key "port"; + description + "Port number filter for switch port + statistics"; + leaf port { + type uint32; + description + "Port number"; + } + uses ESDMA-SHOW-ETHSW-STATISTICS-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + container policing { + description + "Display switch policing database"; + container policing-statistics { + description + "Display policing Statistics"; + container policing-statistics-port-numbers { + description + "Filter policing Statistics based on Port"; + list policing-statistics-port-number { + key "port-num"; + description + "Port Number"; + container policing-statistics-port-instances { + description + "switch location"; + list policing-statistics-port-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + container policing-statistics-port-vlan-ids { + description + "Filter policing Statistics based on source + vlan"; + list policing-statistics-port-vlan-id { + key "vlan-id"; + description + "VLAN ID"; + container policing-statistics-port-vlan-instances { + description + "switch location"; + list policing-statistics-port-vlan-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + leaf vlan-id { + type uint32; + description + "VLAN Id"; + } + } + } + leaf port-num { + type uint32; + description + "Port Num"; + } + } + } + container policing-statistics-vlan-ids { + description + "Filter policing Statistics based on source + vlan"; + list policing-statistics-vlan-id { + key "vlan-id"; + description + "VLAN ID"; + container policing-statistics-vlan-instances { + description + "switch location"; + list policing-statistics-vlan-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + leaf vlan-id { + type uint32; + description + "VLAN Id"; + } + } + } + container policing-statistics-instances { + description + "switch location"; + list policing-statistics-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + } + container policing-config { + description + "Display policing config"; + container policing-config-port-numbers { + description + "Filter policing config based on Port"; + list policing-config-port-number { + key "port-num"; + description + "Port Number"; + container policing-config-port-instances { + description + "switch location"; + list policing-config-port-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + container policing-config-port-vlan-ids { + description + "Filter policing config based on source vlan"; + list policing-config-port-vlan-id { + key "vlan-id"; + description + "VLAN ID"; + container policing-config-port-vlan-instances { + description + "switch location"; + list policing-config-port-vlan-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + leaf vlan-id { + type uint32; + description + "VLAN Id"; + } + } + } + leaf port-num { + type uint32; + description + "Port Num"; + } + } + } + container policing-config-vlan-ids { + description + "Filter policing config based on source vlan"; + list policing-config-vlan-id { + key "vlan-id"; + description + "VLAN ID"; + container policing-config-vlan-instances { + description + "switch location"; + list policing-config-vlan-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + leaf vlan-id { + type uint32; + description + "VLAN Id"; + } + } + } + container policing-config-instances { + description + "switch location"; + list policing-config-instance { + key "node-id"; + description + "Location information for switch policing + information"; + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + uses ESDMA-SHOW-ETHSW-POLICING-INFO; + } + } + } + } + container serdes { + description + "Display serdes information"; + container serdes-instances { + description + "switch location"; + list serdes-instance { + key "node-id"; + description + "Location information for switch SERDES + information"; + container serdes-port-numbers { + description + "SERDES filter type: Port"; + list serdes-port-number { + key "port"; + description + "Port number filter for switch Serdes + information"; + leaf port { + type uint32; + description + "Port number"; + } + uses ESDMA-SHOW-ETHSW-REGISTER-INFO; + } + } + leaf node-id { + type xr:Node-id; + description + "NodeID of the Location"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-controller-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-controller-cfg.yang new file mode 100644 index 000000000..54e3124e6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-controller-cfg.yang @@ -0,0 +1,325 @@ +module Cisco-IOS-XR-syncc-controller-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-syncc-controller-cfg"; + prefix syncc-controller-cfg; + + import Cisco-IOS-XR-config-mda-cfg { + prefix node; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-freqsync-cfg { + prefix a1; + } + + 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 syncc-controller package configuration. + + This YANG module augments the + Cisco-IOS-XR-freqsync-cfg + Cisco-IOS-XR-config-mda-cfg + modules with configuration data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-08 { + description + "Schema added for servo driver"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-06-22 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SYNC-CONTROLLER { + container sync-controller { + description + "sync-controller value"; + container transport-mode { + description + "Transport mode"; + container frequency-mode { + description + "Frequency Mode"; + container port-mode { + presence "Indicates a port-mode node is configured."; + description + "clock-interface sync location + port-parameters bits-input 2m -> Option1=0, + Option2=2, Option3=0, Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-input 2m -> Option1=0, + Option2=2, Option3=0, Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-input 64k-input-only -> + Option1=0, Option2=3, Option3=0, Option4=0, + Option5=0 clock-interface sync + location port-parameters bits-input + e1 crc-4 sa4 ami -> Option1=0, Option2=1, + Option3=1, Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-input e1 crc-4 sa4 hdb3 + -> Option1=0, Option2=1, Option3=1, Option4=0 + , Option5=1 clock-interface sync + location port-parameters bits-input + e1 crc-4 sa5 ami -> Option1=0, Option2=1, + Option3=1, Option4=0, Option5=1 + clock-interface sync location + port-parameters bits-input e1 crc-4 sa5 hdb3 + -> Option1=0, Option2=1, Option3=1, Option4=1 + , Option5=1 clock-interface sync + location port-parameters bits-input + e1 crc-4 sa6 ami -> Option1=0, Option2=1, + Option3=1, Option4=0, Option5=2 + clock-interface sync location + port-parameters bits-input e1 crc-4 sa6 hdb3 + -> Option1=0, Option2=1, Option3=1, Option4=1 + , Option5=2 clock-interface sync + location port-parameters bits-input + e1 crc-4 sa7 ami -> Option1=0, Option2=1, + Option3=1, Option4=0, Option5=3 + clock-interface sync location + port-parameters bits-input e1 crc-4 sa7 hdb3 + -> Option1=0, Option2=1, Option3=1, Option4=1 + , Option5=3 clock-interface sync + location port-parameters bits-input + e1 crc-4 sa8 ami -> Option1=0, Option2=1, + Option3=1, Option4=0, Option5=4 + clock-interface sync location + port-parameters bits-input e1 crc-4 sa8 hdb3 + -> Option1=0, Option2=1, Option3=1, Option4=1 + , Option5=4 clock-interface sync + location port-parameters bits-input + e1 non-crc-4 ami -> Option1=0, Option2=1, + Option3=0, Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-input e1 non-crc-4 hdb3 + -> Option1=0, Option2=1, Option3=0, Option4=1 + , Option5=0 clock-interface sync + location port-parameters bits-input + t1 d4 ami -> Option1=0, Option2=0, Option3=1, + Option4=0, Option5=0 clock-interface sync + location port-parameters + bits-input t1 d4 b8zs -> Option1=0, Option2=0 + , Option3=1, Option4=1, Option5=0 + clock-interface sync location + port-parameters bits-input t1 esf ami -> + Option1=0, Option2=0, Option3=0, Option4=0, + Option5=0 clock-interface sync + location port-parameters bits-input + t1 esf b8zs -> Option1=0, Option2=0, + Option3=0, Option4=1, Option5=0 + clock-interface sync location + port-parameters bits-output 2m -> Option1=1 , + Option2=2, Option3=0, Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-output 6m-output-only -> + Option1=1 , Option2=4, Option3=0 , Option4=0, + Option5=0 clock-interface sync + location port-parameters bits-output + e1 crc-4 sa4 ami -> Option1=1 , Option2=1, + Option3=1 , Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-output e1 crc-4 sa4 hdb3 + -> Option1=1 , Option2=1, Option3=1 , + Option4=1, Option5=0 clock-interface sync + location port-parameters + bits-output e1 crc-4 sa5 ami -> Option1=1 , + Option2=1, Option3=1 , Option4=0, Option5=1 + clock-interface sync location + port-parameters bits-output e1 crc-4 sa5 hdb3 + -> Option1=1 , Option2=1, Option3=1 , + Option4=1, Option5=1 clock-interface sync + location port-parameters + bits-output e1 crc-4 sa6 ami -> Option1=1 , + Option2=1, Option3=1 , Option4=0, Option5=2 + clock-interface sync location + port-parameters bits-output e1 crc-4 sa6 hdb3 + -> Option1=1 , Option2=1, Option3=1 , + Option4=1, Option5=2 clock-interface sync + location port-parameters + bits-output e1 crc-4 sa7 ami -> Option1=1 , + Option2=1, Option3=1 , Option4=0, Option5=3 + clock-interface sync location + port-parameters bits-output e1 crc-4 sa7 hdb3 + -> Option1=1 , Option2=1, Option3=1 , + Option4=1, Option5=3 clock-interface sync + location port-parameters + bits-output e1 crc-4 sa8 ami -> Option1=1 , + Option2=1, Option3=1 , Option4=0, Option5=4 + clock-interface sync location + port-parameters bits-output e1 crc-4 sa8 hdb3 + -> Option1=1 , Option2=1, Option3=1 , + Option4=1, Option5=4 clock-interface sync + location port-parameters + bits-output e1 non-crc-4 ami -> Option1=1 , + Option2=1, Option3=0 , Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-output e1 non-crc-4 hdb3 + -> Option1=1 , Option2=1, Option3=0 , + Option4=1, Option5=0 clock-interface sync + location port-parameters + bits-output t1 d4 ami 0 -> Option1=1 , + Option2=0, Option3=1 , Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-output t1 d4 ami 1 -> + Option1=1 , Option2=0, Option3=1 , Option4=0, + Option5=1 clock-interface sync + location port-parameters bits-output + t1 d4 ami 2 -> Option1=1 , Option2=0, + Option3=1 , Option4=0, Option5=2 + clock-interface sync location + port-parameters bits-output t1 d4 ami 3 -> + Option1=1 , Option2=0, Option3=1 , Option4=0, + Option5=3 clock-interface sync + location port-parameters bits-output + t1 d4 ami 4 -> Option1=1 , Option2=0, + Option3=1 , Option4=0, Option5=4 + clock-interface sync location + port-parameters bits-output t1 d4 b8zs 0 -> + Option1=1 , Option2=0, Option3=1 , Option4=1, + Option5=0 clock-interface sync + location port-parameters bits-output + t1 d4 b8zs 1 -> Option1=1 , Option2=0, + Option3=1 , Option4=1, Option5=1 + clock-interface sync location + port-parameters bits-output t1 d4 b8zs 2 -> + Option1=1 , Option2=0, Option3=1 , Option4=1, + Option5=2 clock-interface sync + location port-parameters bits-output + t1 d4 b8zs 3 -> Option1=1 , Option2=0, + Option3=1 , Option4=1, Option5=3 + clock-interface sync location + port-parameters bits-output t1 d4 b8zs 4 -> + Option1=1 , Option2=0, Option3=1 , Option4=1, + Option5=4 clock-interface sync + location port-parameters bits-output + t1 esf ami 0 -> Option1=1 , Option2=0, + Option3=0 , Option4=0, Option5=0 + clock-interface sync location + port-parameters bits-output t1 esf ami 1 -> + Option1=1 , Option2=0, Option3=0 , Option4=0, + Option5=1 clock-interface sync + location port-parameters bits-output + t1 esf ami 2 -> Option1=1 , Option2=0, + Option3=0 , Option4=0, Option5=2 + clock-interface sync location + port-parameters bits-output t1 esf ami 3 -> + Option1=1 , Option2=0, Option3=0 , Option4=0, + Option5=3 clock-interface sync + location port-parameters bits-output + t1 esf ami 4 -> Option1=1 , Option2=0, + Option3=0 , Option4=0, Option5=4 + clock-interface sync location + port-parameters bits-output t1 esf b8zs 0 -> + Option1=1 , Option2=0, Option3=0 , Option4=1, + Option5=0 clock-interface sync + location port-parameters bits-output + t1 esf b8zs 1 -> Option1=1 , Option2=0, + Option3=0 , Option4=1, Option5=1 + clock-interface sync location + port-parameters bits-output t1 esf b8zs 2 -> + Option1=1 , Option2=0, Option3=0 , Option4=1, + Option5=2 clock-interface sync + location port-parameters bits-output + t1 esf b8zs 3 -> Option1=1 , Option2=0, + Option3=0 , Option4=1, Option5=3 + clock-interface sync location + port-parameters bits-output t1 esf b8zs 4 -> + Option1=1 , Option2=0, Option3=0 , Option4=1, + Option5=4 clock-interface sync + location port-parameters + port-parameters uti -> Option1=2 , Option2=0, + Option3=0 , Option4=0, Option5=0 + clock-interface sync location + port-parameters port-parameters gps-input -> + Option1=3, Option2=0, Option3=0 , Option4=0, + Option5=0 "; + leaf option1 { + type uint32 { + range "0..3"; + } + mandatory true; + description + "Option value #1"; + } + leaf option2 { + type uint32 { + range "0..10"; + } + mandatory true; + description + "Option value #2"; + } + leaf option3 { + type uint32 { + range "0..10"; + } + mandatory true; + description + "Option value #3"; + } + leaf option4 { + type uint32 { + range "0..10"; + } + mandatory true; + description + "Option value #4"; + } + leaf option5 { + type uint32 { + range "0..4"; + } + mandatory true; + description + "Option value #5"; + } + } + leaf shutdown { + type empty; + description + "Disable the SyncE Port"; + } + } + } + } + } + + augment "/node:active-nodes/node:active-node/a1:clock-interface/a1:clocks/a1:clock" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-freqsync-cfg'"; + uses SYNC-CONTROLLER; + } + augment "/node:preconfigured-nodes/node:preconfigured-node/a1:clock-interface/a1:clocks/a1:clock" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-freqsync-cfg'"; + uses SYNC-CONTROLLER; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper-sub1.yang new file mode 100644 index 000000000..89c19b032 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper-sub1.yang @@ -0,0 +1,785 @@ +submodule Cisco-IOS-XR-syncc-oper-sub1 { + belongs-to Cisco-IOS-XR-syncc-oper { + prefix Cisco-IOS-XR-syncc-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR syncc package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-17 { + description + "Schema added for gps and smode changes."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-06-08 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Source-state-name { + type enumeration { + enum "not-valid" { + description + "Invalid"; + } + enum "unqualified" { + description + "Unqualified state"; + } + enum "available" { + description + "Available state"; + } + enum "failed" { + description + "Failed state"; + } + enum "unmonitored" { + description + "Unmonitored state"; + } + enum "error" { + description + "Error state"; + } + } + description + "Syncc source state name"; + } + + typedef Source { + type enumeration { + enum "invalid" { + description + "Invalid state"; + } + enum "ethernet-line-interface" { + description + "Ethernet interface "; + } + enum "sonet-line-interface" { + description + "SONET interface "; + } + enum "clock-interface" { + description + "Clock interface state"; + } + enum "internal" { + description + "Internal state"; + } + enum "ptp" { + description + "PTP"; + } + enum "satellite-access" { + description + "Satellite Access"; + } + enum "ntp" { + description + "NTP"; + } + enum "gnss-receiver" { + description + "Gnss Receiver"; + } + } + description + "Syncc source type"; + } + + typedef Interface-state { + type enumeration { + enum "up" { + description + "Up state"; + } + enum "down" { + description + "Down state"; + } + enum "admin-down" { + description + "Admin down state"; + } + } + description + "Interface state"; + } + + typedef Ql-option-1 { + type enumeration { + enum "quality-level-none" { + description + "No value"; + } + enum "o1" { + description + "Option 1"; + } + enum "o2-g1" { + description + "Option 2 Gen 1"; + } + enum "o2-g2" { + description + "Option 2 Gen 2"; + } + } + description + "Quality level options"; + } + + typedef Direct { + type enumeration { + enum "receive-transmit" { + description + "Receive or transmit"; + } + enum "transmit" { + description + "Transmit"; + } + enum "receive" { + description + "Receive"; + } + } + description + "Direction status"; + } + + typedef Smode2 { + type enumeration { + enum "ami-mode" { + description + "AMI"; + } + enum "b8zs" { + description + "B8ZS submode"; + } + enum "hdb3" { + description + "HDB3 submode"; + } + enum "submode2-none" { + description + "No mode is selected"; + } + enum "rs422" { + description + "RS422 1PPS input"; + } + enum "utc" { + description + "ToD provides UTC time"; + } + } + description + "Second mode type"; + } + + typedef Smode1 { + type enumeration { + enum "extended-super-frame" { + description + "Extended Superframe(ESF)"; + } + enum "d4" { + description + "D4 channel unit"; + } + enum "non-crc4" { + description + "Non CRC 4 mode"; + } + enum "crc4" { + description + "CRC 4"; + } + enum "submode1-none" { + description + "No mode is selected"; + } + enum "cisco" { + description + "TOD msg in Cisco ASCII format"; + } + enum "ntp4" { + description + "TOD msg in NTP Type 4 format"; + } + enum "gprmc" { + description + "TOD msg in NMEA GPRMC format"; + } + } + description + "First mode type"; + } + + typedef Clock-modes { + type enumeration { + enum "t1" { + description + "T1 mode"; + } + enum "e1" { + description + "E1 mode"; + } + enum "two-m" { + description + "2048M mode"; + } + enum "input64k" { + description + "64kCC input"; + } + enum "output6m" { + description + "6312M output"; + } + enum "uti" { + description + "Universal transport interface(UTI)"; + } + enum "gps" { + description + "ToD provides GPS time"; + } + enum "none" { + description + "No mode is selected"; + } + } + description + "Different clock modes"; + } + + typedef Node-state { + type enumeration { + enum "active" { + value 1; + description + "Node in active mode"; + } + enum "standby" { + value 2; + description + "Node in standby mode"; + } + } + description + "Different modes of a node"; + } + + typedef Syncc-states { + type enumeration { + enum "initializing" { + description + "Initial state"; + } + enum "running" { + description + "Running state"; + } + enum "normal" { + description + "Normal state"; + } + enum "shutdown" { + description + "Shutdown state"; + } + } + description + "Different syncc states"; + } + + grouping SYNCC-TIMING-SOURCE { + description + "Controllers timing source status"; + leaf input { + type uint8; + description + "Input number"; + } + leaf slot { + type uint8; + description + "Slot number"; + } + leaf port { + type uint8; + description + "Port number"; + } + leaf clock-source { + type Source; + description + "Status of syncc source type"; + } + leaf rank { + type uint8; + description + "Rank of sync timing source table"; + } + leaf quality-level-option { + type uint8; + description + "Quality level option"; + } + leaf quality-level-value { + type uint8; + description + "Quality level value"; + } + leaf user-priority { + type uint8; + description + "User priority of sync timing source table"; + } + leaf clock-state { + type Source-state-name; + description + "Status of clock state"; + } + leaf is-select { + type boolean; + description + "True if selected"; + } + } + + grouping SYNCC-TIMING-SRC-TBL1 { + description + "Structure containing timing source table"; + list timing-status-t0 { + max-elements "11"; + description + "Scheduling PLL T0 "; + uses SYNCC-TIMING-SOURCE; + } + list timing-status-t4 { + max-elements "11"; + description + "Scheduling PLL T4 "; + uses SYNCC-TIMING-SOURCE; + } + list timing-status1588 { + max-elements "11"; + description + "Scheduling PLL 1588 "; + uses SYNCC-TIMING-SOURCE; + } + } + + grouping SYNCC-TIMING-SRC-TBL { + description + "Syncc timing source table information"; + list syncc-instance { + description + "List of syncc timing table information"; + uses SYNCC-TIMING-SRC-TBL1; + } + } + + grouping SYNCC-CLOCK-SETTING { + description + "SYNCC clock information"; + leaf is-configured-port0 { + type boolean; + description + "True if clock is configured for port 0"; + } + leaf is-configured-port1 { + type boolean; + description + "True if clock is configured for port 1"; + } + leaf is-configured-port2 { + type boolean; + description + "True if clock is configured for port 2"; + } + leaf is-configured-port3 { + type boolean; + description + "True if clock is configured for port 3"; + } + leaf mode-port0 { + type Clock-modes; + description + "Clock setting mode for port 0"; + } + leaf mode-port1 { + type Clock-modes; + description + "Clock setting mode for port 1"; + } + leaf mode-port2 { + type Clock-modes; + description + "Clock setting mode for port 2"; + } + leaf mode-port3 { + type Clock-modes; + description + "Clock setting mode for port 3"; + } + leaf submode1-port0 { + type Smode1; + description + "First submode for port 0"; + } + leaf submode1-port1 { + type Smode1; + description + "First submode for port 1"; + } + leaf submode1-port2 { + type Smode1; + description + "First submode for port 2"; + } + leaf submode1-port3 { + type Smode1; + description + "First submode for port 3"; + } + leaf submode2-port0 { + type Smode2; + description + "Second submode for port 0"; + } + leaf submode2-port1 { + type Smode2; + description + "Second submode for port 1"; + } + leaf submode2-port2 { + type Smode2; + description + "Second submode for port 2"; + } + leaf submode2-port3 { + type Smode2; + description + "Second submode for port 3"; + } + leaf submode3-port0 { + type uint32; + description + "Third submode for port 0"; + } + leaf submode3-port1 { + type uint32; + description + "Third submode for port 1"; + } + leaf submode3-port2 { + type uint32; + description + "Third submode for port 2"; + } + leaf submode3-port3 { + type uint32; + description + "Third submode for port 3"; + } + leaf shutdown-port0 { + type uint32; + description + "Configure disable value for port 0"; + } + leaf shutdown-port1 { + type uint32; + description + "Configure disable value for port 1"; + } + leaf shutdown-port2 { + type uint32; + description + "Configure disable value for port 2"; + } + leaf shutdown-port3 { + type uint32; + description + "Configure disable value for port 3"; + } + leaf direction-port0 { + type Direct; + description + "Direction of interface for port 0"; + } + leaf direction-port1 { + type Direct; + description + "Direction of interface for port 1"; + } + leaf direction-port2 { + type Direct; + description + "Direction of interface for port 2"; + } + leaf direction-port3 { + type Direct; + description + "Direction of interface for port 3"; + } + leaf baudrate-port0 { + type uint32; + description + "Baudrate for port 0"; + } + leaf baudrate-port1 { + type uint32; + description + "Baudrate for port 1"; + } + leaf baudrate-port2 { + type uint32; + description + "Baudrate for port 2"; + } + leaf baudrate-port3 { + type uint32; + description + "Baudrate for port 3"; + } + leaf quality-option-port0 { + type Ql-option-1; + description + "Quality Level option of port 0"; + } + leaf quality-option-port1 { + type Ql-option-1; + description + "Quality Level option of the port 1"; + } + leaf quality-option-port2 { + type Ql-option-1; + description + "Quality Level option of the port 2"; + } + leaf quality-option-port3 { + type Ql-option-1; + description + "Quality Level option of the port 3"; + } + leaf transmit-ssm-port0 { + type uint32; + description + "Transmit SSM for port 0"; + } + leaf transmit-ssm-port1 { + type uint32; + description + "Transmit SSM for port 1"; + } + leaf transmit-ssm-port2 { + type uint32; + description + "Transmit SSM for port 2"; + } + leaf transmit-ssm-port3 { + type uint32; + description + "Transmit SSM for port 3"; + } + leaf recieve-ssm-port0 { + type uint32; + description + "Receive SSM for port 0"; + } + leaf recieve-ssm-port1 { + type uint32; + description + "Receive SSM for port 1"; + } + leaf recieve-ssm-port2 { + type uint32; + description + "Receive SSM for port 2"; + } + leaf recieve-ssm-port3 { + type uint32; + description + "Receive SSM for port 3"; + } + leaf interface-state-port0 { + type Interface-state; + description + "Interface state for port 0"; + } + leaf interface-state-port1 { + type Interface-state; + description + "Interface state for port 1"; + } + leaf interface-state-port2 { + type Interface-state; + description + "Interface state for port 2"; + } + leaf interface-state-port3 { + type Interface-state; + description + "Interface state for port 3"; + } + } + + grouping SYNCC-CLOCK-SETTING-TBLN { + description + "Clock table information"; + list clock { + max-elements "1"; + description + "Clock table for an RP"; + uses SYNCC-CLOCK-SETTING; + } + } + + grouping SYNCC-CLOCK-SETTING-NEWTBL { + description + "SYNCC interface information"; + list syncc-instance { + description + "List of syncc clock information "; + uses SYNCC-CLOCK-SETTING-TBLN; + } + } + + grouping SYNCC-INTERNAL-STATE1 { + description + "Structure containing SYNCC internal state"; + leaf controller-state { + type Syncc-states; + description + "Syncc controller state"; + } + leaf syncc-node-state { + type Node-state; + description + "Status of syncc node mode"; + } + leaf verbose-level { + type uint32; + description + "Verbose level number"; + } + leaf initial-count { + type uint32; + description + "Initial count number"; + } + leaf shutdown-count { + type uint32; + description + "Shutdown count number"; + } + leaf set-input-count { + type uint32; + description + "Set the value of input count"; + } + leaf set-capability-count { + type uint32; + description + "Set the value of display count"; + } + leaf get-clock-count { + type uint32; + description + "Clock count number"; + } + leaf set-clock-out-count { + type uint32; + description + "Set clock count"; + } + leaf sync-enable-count { + type uint32; + description + "Sync enable count number"; + } + leaf sync-disable-count { + type uint32; + description + "Sync disable count number"; + } + leaf capability-count { + type uint32; + description + "Interface capability count"; + } + leaf set-quality-level-count { + type uint32; + description + "Value of quality level count"; + } + leaf input-notification { + type uint32; + description + "Selects proper input result notification"; + } + leaf capability-notification { + type uint32; + description + "Value of interface capability notification"; + } + leaf status-notification { + type uint32; + description + "Notification of source status"; + } + leaf resync-notification { + type uint32; + description + "Value of resync notification"; + } + } + + grouping SYNCC-INTERNAL-STATE { + description + "Syncc internal state information"; + list syncc-instance { + description + "List of syncc states"; + uses SYNCC-INTERNAL-STATE1; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper.yang new file mode 100644 index 000000000..508b54128 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-syncc-oper.yang @@ -0,0 +1,91 @@ +module Cisco-IOS-XR-syncc-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-syncc-oper"; + prefix syncc-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-syncc-oper-sub1 { + revision-date 2020-06-17; + } + + 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 syncc package operational data. + + This module contains definitions + for the following management objects: + timing-controller: Timing controller operational data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-17 { + description + "Schema added for gps and smode changes."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-06-08 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container timing-controller { + config false; + description + "Timing controller operational data"; + container nodes { + description + "List of nodes applicable to timing controller"; + list node { + key "node-name"; + description + "Syncc operational data for a single node"; + container state { + description + "Syncc state for a node"; + uses SYNCC-INTERNAL-STATE; + } + container clock { + description + "Syncc clock information for a node"; + uses SYNCC-CLOCK-SETTING-NEWTBL; + } + container timing-source { + description + "Syncc timing information for a node"; + uses SYNCC-TIMING-SRC-TBL; + } + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-aaa-show.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-aaa-show.yang new file mode 100644 index 000000000..be8ecadcd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-aaa-show.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-sysadmin-aaa-aaa-show { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-aaa-aaa-show"; + prefix aaa_show; + + import tailf-aaa { + prefix aaa; + } + import cisco-semver { + prefix semver; + } + + organization + "Cisco Systems Inc."; + contact + "clos-mgbl@cisco.com"; + description + "This module defines yang model + for logging user/date who accessed + shell last time + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-10 { + description + "Namespace changed from aaa_show to Cisco-IOS-XR-sysadmin-aaa-aaa-show"; + } + revision 2011-06-20 { + description + "Initial revision"; + } + + augment "/aaa:aaa" { + container privileged-access { + config false; + leaf shell-access { + type string; + mandatory false; + } + leaf first-user { + type string; + mandatory false; + } + leaf first-user-change { + type string; + mandatory false; + } + leaf current-disaster-recovery-user { + type string; + mandatory false; + } + } + container accounting { + config false; + leaf log-data { + type string; + mandatory false; + } + } + container user-group { + config false; + leaf grp-data { + type string; + mandatory false; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-command-accounting.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-command-accounting.yang new file mode 100644 index 000000000..5e741231f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-command-accounting.yang @@ -0,0 +1,46 @@ +module Cisco-IOS-XR-sysadmin-aaa-command-accounting { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-aaa-command-accounting"; + prefix admin-accounting; + + import tailf-aaa { + prefix aaa; + } + 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 is used to enable/disable the command accounting via XR + Copyright(c) 2016 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-11-15 { + description + "Initial revision"; + semver:module-version "1.0.0"; + } + + augment "/aaa:aaa" { + container admin-accounting { + leaf enable { + type boolean; + default "false"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-disaster-recovery.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-disaster-recovery.yang new file mode 100644 index 000000000..7870fa954 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-aaa-disaster-recovery.yang @@ -0,0 +1,53 @@ +module Cisco-IOS-XR-sysadmin-aaa-disaster-recovery { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-aaa-disaster-recovery"; + prefix disaster-recovery; + + import tailf-common { + prefix tailf; + } + import tailf-aaa { + prefix aaa; + } + import cisco-semver { + prefix semver; + } + + organization + "Cisco Systems Inc."; + contact + "clos-mgbl@cisco.com"; + description + "This module defines the system users authentication + credentials and virtual IP that can be modified in + runtime. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-10 { + description + "Namespace changed from disaster-recovery to Cisco-IOS-XR-sysadmin-aaa-disaster-recovery"; + } + revision 2011-06-20 { + description + "Initial revision"; + } + + augment "/aaa:aaa" { + container disaster-recovery { + leaf username { + type leafref { + path "/aaa:aaa/aaa:authentication/aaa:users/aaa:user/aaa:name"; + } + } + leaf password { + type tailf:md5-digest-string; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-alarm-mgr.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-alarm-mgr.yang new file mode 100644 index 000000000..b5591f3e7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-alarm-mgr.yang @@ -0,0 +1,648 @@ +module Cisco-IOS-XR-sysadmin-alarm-mgr { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-alarm-mgr"; + prefix alarms; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + Alarm management YANG model + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-10-11 { + description + "Removed alarm group LAST"; + semver:module-version "4.0.0"; + } + revision 2021-09-15 { + description + "Removed alarm group LAST + 2021-05-17 + Alarm support for CEM interface + 2021-04-14 + PTAH support for E1 controller"; + semver:module-version "4.0.0"; + } + revision 2020-12-02 { + description + "PTAH support for Fibre Channel controller + 2020-09-02 + rackid type change from uint32 to string"; + semver:module-version "3.0.0"; + } + revision 2019-06-28 { + description + "PTAH support for CPRI controller in Felidae 5G platform"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2012-03-27 { + description + "Initial Revision"; + } + + typedef severity_td { + type enumeration { + enum "unknown" { + value 0; + } + enum "not_reported" { + value 1; + } + enum "not_alarmed" { + value 2; + } + enum "minor" { + value 3; + } + enum "major" { + value 4; + } + enum "critical" { + value 5; + } + } + description + "The severity enumeration type of an alarm "; + } + + typedef status_td { + type enumeration { + enum "unknown" { + value 0; + } + enum "set" { + value 1; + } + enum "clear" { + value 2; + } + enum "suppress" { + value 3; + } + } + description + "The status enumeration type of an alarm "; + } + + typedef group_td { + type enumeration { + enum "unknown" { + value 0; + } + enum "environ" { + value 1; + } + enum "ethernet" { + value 2; + } + enum "fabric" { + value 3; + } + enum "power" { + value 4; + } + enum "software" { + value 5; + } + enum "slice" { + value 7; + } + enum "cpu" { + value 8; + } + enum "controller" { + value 9; + } + enum "sonet" { + value 10; + } + enum "otn" { + value 11; + } + enum "sdh_controller" { + value 12; + } + enum "asic" { + value 13; + } + enum "fpd_infra" { + value 14; + } + enum "shelf" { + value 15; + } + enum "mpa" { + value 16; + } + enum "ots" { + value 17; + } + enum "timing" { + value 18; + } + enum "cpri" { + value 19; + } + enum "fibre_channel" { + value 20; + } + enum "e1" { + value 21; + } + enum "cem" { + value 22; + } + } + description + "The group enumeration type of an alarm "; + } + + typedef agent_state_td { + type enumeration { + enum "start" { + value 0; + } + enum "init" { + value 1; + } + enum "connecting" { + value 2; + } + enum "connected" { + value 3; + } + enum "registered" { + value 4; + } + enum "disconnected" { + value 5; + } + } + } + + typedef agent_type_td { + type enumeration { + enum "unknown" { + value 0; + } + enum "producer" { + value 1; + } + enum "consumer" { + value 2; + } + enum "subscriber" { + value 3; + } + } + } + + typedef timestamp_td { + type yang:date-and-time; + description + "The Alarm timestamp type for all times in alarm"; + } + + grouping alarmBasicFilters { + leaf aid { + type string; + description + "The AID for the current alarm"; + } + leaf tag { + type string; + description + "The Fault Tag for the current alarm"; + } + leaf module { + type string; + description + "The Module for the current alarm"; + } + leaf gen_location { + type string; + description + "The location for the current alarm"; + } + leaf eid { + type string; + description + "The Object Id for the current alarm"; + } + leaf severity { + type severity_td; + description + "The alarm severity."; + } + leaf group { + type group_td; + description + "The alarm grouping "; + } + leaf description { + type string; + description + "Alarm description"; + } + leaf set_time { + type string; + description + "Alarm set time stamp"; + } + } + + grouping alarmBasicHistoryFilters { + leaf clear_time { + type string; + description + "Alarm clear time stamp"; + } + } + + grouping alarmBasicSuppressedFilters { + leaf suppressed_time { + type string; + description + "Alarm suppressed time stamp"; + } + } + + grouping alarmExtFilters { + leaf state { + type status_td; + description + "The current state of the bi-state alarm"; + } + leaf reporting_agent_id { + type uint32; + description + "The reporting agent id."; + } + leaf resynced { + type uint32; + description + "The condition bit-flags of the alarm"; + } + leaf detail_desc { + type string; + description + "Alarm detailed description"; + } + } + + grouping alarmFilters { + description + "Alarm attributes that can be used to filter."; + uses alarmBasicFilters; + uses alarmExtFilters; + uses alarmBasicHistoryFilters; + } + + grouping alarmDetailSuppressedFilters { + description + "Suppressed alarm detail attributes that can be used to filter."; + uses alarmBasicFilters; + uses alarmExtFilters; + uses alarmBasicSuppressedFilters; + } + + grouping alarmBriefFilters { + description + "Alarm brief attributes that can be used to filter."; + uses alarmBasicFilters; + uses alarmBasicHistoryFilters; + } + + grouping alarmBriefActiveFilters { + description + "Alarm brief attributes that can be used to filter."; + uses alarmBasicFilters; + } + + grouping alarmBriefSuppressedFilters { + description + "Suppressed alarm brief attributes that can be used to filter."; + uses alarmBasicFilters; + uses alarmBasicSuppressedFilters; + } + + grouping alarmStats { + description + "Alarm Statistics."; + leaf attime { + type string; + description + "Alarms statistics at specified time"; + } + leaf reported { + type uint64; + description + "Total alarms reported into this service."; + } + leaf dropped { + type uint64; + description + "Alarms dropped due to some error or other."; + } + leaf bi_set { + type uint64; + description + "Total active alarms current in this service."; + } + leaf bi_clear { + type uint64; + description + "Alarms that are currently in the cleared state."; + } + leaf suppressed { + type uint64; + description + "Alarms that are currently in the suppressed state."; + } + leaf drop_inv_aid { + type uint64; + description + "Alarms dropped due to invalid aid in the alarm report."; + } + leaf drop_no_mem { + type uint64; + description + "Alarms dropped due to low memory condition."; + } + leaf drop_db_error { + type uint64; + description + "Alarms dropped due to database internal error."; + } + leaf drop_clear_no_set { + type uint64; + description + "Alarms dropped due to clear without a set."; + } + leaf drop_dup { + type uint64; + description + "Alarms dropped due to duplicate alarm report."; + } + leaf cache_hit { + type uint64; + description + "Alarms present in the cached for show"; + } + leaf cache_miss { + type uint64; + description + "Alarms not present in the cached for show"; + } + } + + grouping alarmClients { + description + "Alarm clients."; + leaf agent_name { + type string; + description + "Alarms client"; + } + leaf agent_id { + type uint32; + description + "Alarms agent id of the client"; + } + leaf agent_location { + type string; + description + "The location of this client"; + } + leaf agent_handle { + type string; + description + "The client handle through which interface"; + } + leaf agent_state { + type agent_state_td; + description + "The current state of the client"; + } + leaf agent_type { + type agent_type_td; + description + "The type of the client"; + } + leaf agent_filter_disp { + type boolean; + description + "The current subscription status of the client"; + } + leaf agent_subs_id { + type uint32; + description + "The subscriber id of the client"; + } + leaf agent_filter_state { + type status_td; + description + "The filter used for alarm bi-state state"; + } + leaf agent_filter_severity { + type severity_td; + description + "The filter used for alarm severity"; + } + leaf agent_filter_group { + type group_td; + description + "The filter used for alarm group"; + } + leaf agent_sdr_id { + type uint32; + description + "agent alarm_sm register with sdr_id in SOMT mode"; + } + leaf agent_connect_count { + type uint64; + description + "Number of times the agent connected to the alarm mgr"; + } + leaf agent_connect_time { + type string; + description + "Agent connect timestamp"; + } + leaf agent_get_count { + type uint64; + description + "Number of times the agent queried for alarms"; + } + leaf agent_subscribe_count { + type uint64; + description + "Number of times the agent subscribed for alarms"; + } + leaf agent_report_count { + type uint64; + description + "Number of times the agent reported alarms"; + } + } + + grouping scope_brief_shows { + list active { + key "aid eid"; + max-elements "1024"; + uses alarmBriefActiveFilters; + } + list history { + key "aid eid"; + max-elements "1024"; + uses alarmBriefFilters; + } + list suppressed { + key "aid eid"; + max-elements "1024"; + uses alarmBriefSuppressedFilters; + } + } + + grouping scope_detail_shows { + list active { + key "aid eid"; + max-elements "1024"; + uses alarmFilters; + } + list history { + key "aid eid"; + max-elements "1024"; + uses alarmFilters; + } + list stats { + key "attime"; + max-elements "1024"; + uses alarmStats; + } + list clients { + key "agent_handle"; + max-elements "1024"; + uses alarmClients; + } + list suppressed { + key "aid eid"; + max-elements "1024"; + uses alarmDetailSuppressedFilters; + } + } + + container alarm_mgr { + config false; + description + "Calvados alarms operational data model"; + uses show_trace:traceable; + container brief { + description + "A set of brief alarm commands"; + container card { + description + "Alarms reported at the local card as + specified by the location parameter"; + list location { + key "locations"; + leaf locations { + type calvados:location-id; + } + uses scope_brief_shows; + } + } + container rack { + description + "Alarms reported at the rack scope + specified by the rack-id"; + list rack_locations { + key "rackid"; + leaf rackid { + type string; + } + uses scope_brief_shows; + } + } + container system { + description + "Alarms reported at the system scope"; + uses scope_brief_shows; + } + } + container detail { + description + "A set of detail alarm commands"; + container card { + description + "Alarms reported at the local card as + specified by the location parameter"; + list location { + key "locations"; + leaf locations { + type calvados:location-id; + } + uses scope_detail_shows; + } + } + container rack { + description + "Alarms reported at the rack as + specified by the location parameter"; + list rack_locations { + key "rackid"; + leaf rackid { + type string; + } + uses scope_detail_shows; + } + } + container system { + description + "Alarms reported at the system as + specified by the location parameter"; + uses scope_detail_shows; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asic-errors-ael.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asic-errors-ael.yang new file mode 100644 index 000000000..88bddc249 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asic-errors-ael.yang @@ -0,0 +1,329 @@ +module Cisco-IOS-XR-sysadmin-asic-errors-ael { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-asic-errors-ael"; + prefix ael; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-07-05 { + description + "Namespace change to fix comply with Cisco guidelines on namespace"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping clear-asic-errors { + tailf:action "counter"; + } + + grouping ael-history-ap-grp { + container history { + list location { + key "location-name"; + leaf location-name { + type calvados:location-id; + } + uses clear-asic-errors; + } + } + } + + grouping ael-history-grp { + container history { + list location { + key "location-name"; + leaf location-name { + type calvados:location-id; + } + list log-lst { + leaf log-line { + type string; + } + } + } + } + } + + grouping ael-non-history-grp { + list location { + key "location-name"; + leaf location-name { + type calvados:location-id; + } + list log-lst { + leaf log-line { + type string; + } + } + } + } + + grouping ael-save-option-grp { + container save-all-inst-asic-errors { + uses ael-non-history-grp; + } + } + + grouping ael-non-history-ap-grp { + list location { + key "location-name"; + leaf location-name { + type calvados:location-id; + } + uses clear-asic-errors; + } + } + + grouping ael-all-error-types-grp { + container sbe { + uses ael-non-history-grp; + } + container mbe { + uses ael-non-history-grp; + } + container parity { + uses ael-non-history-grp; + } + container generic { + uses ael-non-history-grp; + } + container crc { + uses ael-non-history-grp; + } + container reset { + uses ael-non-history-grp; + } + container barrier { + uses ael-non-history-grp; + } + container unexpected { + uses ael-non-history-grp; + } + container link { + uses ael-non-history-grp; + } + container oor-thresh { + uses ael-non-history-grp; + } + container bp { + uses ael-non-history-grp; + } + container io { + uses ael-non-history-grp; + } + container ucode { + uses ael-non-history-grp; + } + container config { + uses ael-non-history-grp; + } + container indirect { + uses ael-non-history-grp; + } + container nonerr { + uses ael-non-history-grp; + } + container summary { + uses ael-non-history-grp; + } + container all { + uses ael-save-option-grp; + uses ael-history-grp; + uses ael-non-history-grp; + } + } + + grouping ael-all-error-types-wo-history-grp { + container sbe { + uses ael-non-history-grp; + } + container mbe { + uses ael-non-history-grp; + } + container parity { + uses ael-non-history-grp; + } + container generic { + uses ael-non-history-grp; + } + container crc { + uses ael-non-history-grp; + } + container reset { + uses ael-non-history-grp; + } + container barrier { + uses ael-non-history-grp; + } + container unexpected { + uses ael-non-history-grp; + } + container link { + uses ael-non-history-grp; + } + container oor-thresh { + uses ael-non-history-grp; + } + container bp { + uses ael-non-history-grp; + } + container io { + uses ael-non-history-grp; + } + container ucode { + uses ael-non-history-grp; + } + container config { + uses ael-non-history-grp; + } + container indirect { + uses ael-non-history-grp; + } + container nonerr { + uses ael-non-history-grp; + } + container summary { + uses ael-non-history-grp; + } + container all { + uses ael-save-option-grp; + uses ael-non-history-grp; + } + } + + grouping ael-all-error-types-ap-grp { + container sbe { + uses ael-non-history-ap-grp; + } + container mbe { + uses ael-non-history-ap-grp; + } + container parity { + uses ael-non-history-ap-grp; + } + container generic { + uses ael-non-history-ap-grp; + } + container crc { + uses ael-non-history-ap-grp; + } + container reset { + uses ael-non-history-ap-grp; + } + container barrier { + uses ael-non-history-ap-grp; + } + container unexpected { + uses ael-non-history-ap-grp; + } + container link { + uses ael-non-history-ap-grp; + } + container oor-thresh { + uses ael-non-history-ap-grp; + } + container bp { + uses ael-non-history-ap-grp; + } + container io { + uses ael-non-history-ap-grp; + } + container ucode { + uses ael-non-history-ap-grp; + } + container config { + uses ael-non-history-ap-grp; + } + container indirect { + uses ael-non-history-ap-grp; + } + container nonerr { + uses ael-non-history-ap-grp; + } + container summary { + uses ael-non-history-ap-grp; + } + container all { + uses ael-save-option-grp; + uses ael-history-ap-grp; + uses ael-non-history-ap-grp; + } + } + + grouping ael-show-asic-errors-grp { + list asic-errors { + key "device-name"; + config false; + leaf device-name { + type string; + } + list instance { + key "instance-num"; + leaf instance-num { + type uint32; + } + uses ael-all-error-types-grp; + } + container show-all-instances { + uses ael-all-error-types-wo-history-grp; + } + } + } + + grouping ael-clear-asic-errors-grp { + container clear-asic-errors-grp { + list clear-device { + key "device-name"; + config false; + leaf device-name { + type string; + } + list instance { + key "instance-num"; + leaf instance-num { + type uint32; + } + uses ael-all-error-types-ap-grp; + } + container all-instances { + uses ael-all-error-types-ap-grp; + } + } + } + } + + uses ael-show-asic-errors-grp; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-types.yang new file mode 100644 index 000000000..18bcdc24a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-types.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-sysadmin-asr9k-envmon-types { + namespace "http://www.cisco.com/ns/Cisco-IOS-XR-sysadmin-asr9k-envmon-types"; + prefix envmon-types; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + typedef num_pm { + type uint32 { + range "0..12"; + } + } + + grouping fan-speed-group { + leaf raise-fan-speed { + type uint32 { + range "0..100"; + } + config false; + } + } + + grouping fan-ctrl-optics-group { + leaf fan-ctrl-optics { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping vin-uv-shut-group { + leaf graceful-shutdown { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping gen2-common-lowpower-group { + leaf gen2-common-lowpower { + type uint32 { + range "0..1"; + } + config false; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-ui.yang new file mode 100644 index 000000000..72f4ab859 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-asr9k-envmon-ui.yang @@ -0,0 +1,951 @@ +module Cisco-IOS-XR-sysadmin-asr9k-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-asr9k-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-asr9k-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-12 { + description + "Required changes to add single mode config location specific"; + semver:module-version "1.0.0"; + } + revision 2020-05-05 { + description + "Adjusting power consumed due to multi output for 9903"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2018-02-06 { + description + "Adding CLI input validation for LC priority shutdown feature"; + } + revision 2018-01-25 { + description + "Initial revision of LC priority shutdown feature"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-07-31 { + description + "Changing the namespace to follow Cisco guidelines on naming convention"; + } + revision 2017-04-10 { + description + "Adding the source leaf to altitude value, + this is to distinguish the source of the altitude value "; + } + revision 2017-03-31 { + description + "Renamed module and namespace"; + } + revision 2017-03-30 { + description + "commenting the sensor_attributes callpoints for the oper sensors, + using only the location based callpoints for sensor_attributes "; + } + revision 2016-10-12 { + description + "unhide commands and configs. moved to advanced-grp"; + } + revision 2011-11-24 { + description + "Initial revision of show environment commands"; + } + + grouping pm-location { + leaf all { + type empty; + } + list location { + key "pmId"; + leaf pmId { + type string { + pattern "0/PT[0-3]-PM[0-3]"; + } + } + } + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type uint32; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container pm_loc { + uses pm-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + container progressive { + list enable { + key "enabled"; + leaf enabled { + type enumeration { + enum "enable"; + } + config true; + } + leaf syslog-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + leaf shutdown-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + container priority { + list location { + key "loc"; + leaf loc { + type string { + pattern "0/([0-9]|1[0-9])"; + } + } + leaf prior { + type uint32 { + range "0 .. 19"; + } + } + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-card-mgr.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-card-mgr.yang new file mode 100644 index 000000000..f9d2e0603 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-card-mgr.yang @@ -0,0 +1,728 @@ +module Cisco-IOS-XR-sysadmin-card-mgr { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-card-mgr"; + prefix card_mgr; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + 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 + "The 'card_mgr' module provides support for access to detail card HW information like power status, card state, inventory info, etc. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-07 { + description + "Moving onie and eobc port status to DCC specific yang"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2015-03-29 { + description + "Initial revision."; + } + + typedef startHexOffset { + type string; + description + "Start address in Hex between 0x0 and 0x400"; + } + + typedef endHexOffset { + type string; + description + "End address in Hex between 0x0 and 0x400"; + } + + typedef HexOffset { + type string; + description + "Address in Hex between 0x0 and 0x400"; + } + + grouping card_mgr-group { + description + "Card Manager module information"; + container card_mgr { + description + "Card Manager module information"; + uses show_trace:traceable; + uses inventory-group; + uses event-hist-group; + uses notif-hist-group; + uses oir-hist-group; + uses iofpga-group; + uses bootldr-group; + } + } + + grouping inventory-group { + description + "Card inventory Group"; + container inventory { + config false; + description + "Card inventory information"; + uses inventory-summary-group; + uses inventory-detail-group; + } + } + + grouping inventory-summary-group { + description + "Card Inventory Summary Group"; + container summary { + config false; + description + "Card inventory summary"; + list card_mgr_inv_summary { + key "location"; + description + "Card Manager Inventory Summary"; + leaf location { + type string; + mandatory true; + description + "Card location"; + } + leaf card_mgr_inv_PID_string { + type string; + description + "Card inventory PID"; + } + leaf card_mgr_inv_slot_number { + type uint32; + description + "Card inventory BP ID"; + } + leaf card_mgr_inv_serial_number { + type string; + description + "Card inventory Serial Number"; + } + leaf card_mgr_inv_hw_version { + type string; + description + "Card inventory HW Ver"; + } + leaf card_mgr_inv_card_state { + type string; + description + "Card inventory Card State"; + } + } + } + } + + grouping inventory-detail-group { + description + "Card Manager Inventory Detail Group"; + container detail { + config false; + description + "Card Manager inventory detail information"; + list card_mgr_inv_detail { + key "location"; + description + "Card location"; + leaf location { + type string; + description + "Card location"; + } + container card_mgr_inv_detail_list { + description + "card_mgr inventory detail list"; + leaf-list card_mgr_inv_detail_values { + type string; + description + "card_mgr inventory detail value"; + } + } + } + } + } + + grouping event-hist-group { + description + "Card Event History Group"; + container event-history { + config false; + description + "Card Event History"; + container brief { + config false; + description + "Show all events in brief format"; + uses event-hist-group-brief; + } + container detail { + config false; + description + "Show all events with additional detail information"; + uses event-hist-group-detail; + } + } + } + + grouping event-hist-group-brief { + description + "Card Event History Group Brief"; + list location { + key "location"; + description + "Select Location"; + leaf location { + type string; + description + "Location"; + } + container card_event_hist_brief { + description + "Card Event History Brief"; + leaf-list card_event_hist_brief_values { + type string; + description + "Card Event History Brief Values"; + } + } + } + } + + grouping event-hist-group-detail { + description + "Card Event History Group Detail"; + list location { + key "location"; + description + "Select Location"; + leaf location { + type string; + description + "Location"; + } + container card_event_hist_detail { + description + "Card Event History Detail"; + leaf-list card_event_hist_detail_values { + type string; + description + "Card Event History Detail Values"; + } + } + } + } + + grouping notif-hist-group { + description + "Card State Notification History Group"; + container notif-history { + config false; + description + "Card State Notification History"; + container brief { + config false; + description + "Show all state notifications in brief format"; + uses notif-hist-group-brief; + } + container detail { + config false; + description + "Show all state notifications with additional detail information"; + uses notif-hist-group-detail; + } + } + } + + grouping notif-hist-group-brief { + description + "Notify Histroy Group Brief"; + list location { + key "location"; + description + "Select Location"; + leaf location { + type string; + description + "Location"; + } + container card_notif_hist_brief { + description + "Notify Histroy Brief"; + leaf-list card_notif_hist_brief_values { + type string; + description + "Notify Histroy Brief Values"; + } + } + } + } + + grouping notif-hist-group-detail { + description + "Notify Histroy Group Detail"; + list location { + key "location"; + description + "Select Location"; + leaf location { + type string; + description + "Location"; + } + container card_notif_hist_detail { + description + "Notify Histroy Detail"; + leaf-list card_notif_hist_detail_values { + type string; + description + "Notify Histroy Detail Values"; + } + } + } + } + + grouping oir-hist-group { + description + "Cards OIR History Group"; + container oir-history { + config false; + description + "Cards OIR History"; + list rack { + key "rack"; + description + "Select Rack"; + leaf rack { + type string; + description + "Rack"; + } + container card_oir_hist { + description + "Cards OIR History"; + leaf-list card_oir_events { + type string; + description + "Cards OIR Events"; + } + } + } + } + } + + grouping iofpga-group { + description + "IOFPGA Information Group"; + container iofpga { + config false; + description + "IOFPGA information"; + uses iofpga-register-group; + uses iofpga-flash-group; + } + } + + grouping iofpga-register-group { + description + "IOFPGA Register Information Group"; + container register { + config false; + description + "IOFPGA Register information"; + uses cpu-register-group; + uses mb-register-group; + uses dc-register-group; + } + } + + grouping cpu-register-group { + description + "CPU-IOFPGA Register Information Group"; + container cpu { + config false; + description + "CPU-IOFPGA Register information"; + list register_location { + key "register_location"; + config false; + description + "Card location"; + leaf register_location { + type string; + description + "Location"; + } + uses iofpga-block-number-group; + uses iofpga-offset-group; + uses iofpga-address-group; + } + } + } + + grouping mb-register-group { + description + "Mother Board(MB)-IOFPGA Register Information Group"; + container mb { + config false; + description + "Mother Board(MB)-IOFPGA Register information"; + list register_location { + key "register_location"; + config false; + description + "Card location"; + leaf register_location { + type string; + description + "Location"; + } + uses iofpga-block-number-group; + uses iofpga-offset-group; + uses iofpga-address-group; + } + } + } + + grouping dc-register-group { + description + "Daughter Card(DC)-IOFPGA Register Information Group"; + container dc { + config false; + description + "Daughter Card(DC)-IOFPGA Register information"; + list register_location { + key "register_location"; + config false; + description + "Card location"; + leaf register_location { + type string; + description + "Location"; + } + uses iofpga-block-number-group; + uses iofpga-offset-group; + uses iofpga-address-group; + } + } + } + + grouping iofpga-block-number-group { + description + "IOFPGA Block Number Group"; + list iofpga_block_number { + key "iofpga_block_num"; + config false; + description + "Register Group ID"; + leaf iofpga_block_num { + type uint32; + description + "GP"; + } + leaf block_location { + type string; + description + "Location"; + } + leaf iofpga_block_nm { + type string; + description + "Block NM"; + } + list iofpga_register_number { + key "index"; + description + "Register Number"; + leaf index { + type uint32; + description + "Register IDX"; + } + leaf iofpga_register_name { + type string; + description + "Register Name"; + } + list iofpga_data { + description + "IOFPGA DATA"; + leaf name { + type string; + description + "Register Name"; + } + leaf offset { + type uint32; + description + "Register Offset"; + } + leaf value { + type uint32; + description + "Register Value"; + } + } + } + } + } + + grouping iofpga-offset-group { + description + "IOFPGA Offset Group"; + list iofpga_offset { + key "hex_offset"; + config false; + description + "Register Offset Address"; + leaf hex_offset { + type HexOffset; + description + "Register Hex Offset"; + } + list iofpga_reg_offset_data { + description + "Register Offset Data"; + leaf iofpga_reg_off_addr { + type uint32; + description + "Register Offset Address"; + } + leaf reg_off_value { + type string; + description + "Register Offset Value"; + } + } + } + } + + grouping iofpga-address-group { + description + "IOFPGA Address Group"; + list iofpga_address { + key "start_hex_addr end_hex_addr"; + config false; + description + "Register Range to fetch data"; + leaf start_hex_addr { + type startHexOffset; + description + "Register Start Hex Address"; + } + leaf end_hex_addr { + type endHexOffset; + description + "Register End Hex Address"; + } + list iofpga_reg_range_addr_list { + key "iofpga_reg_range_addr"; + description + "Register Range Hex Address"; + leaf iofpga_reg_range_addr { + type uint32; + description + "Register Offset"; + } + list iofpga_reg_data { + description + "Register Data"; + leaf iofpga_reg_addr { + type uint32; + description + "Register Address"; + } + leaf reg_value { + type string; + description + "Register Value"; + } + } + } + } + } + + grouping iofpga-flash-group { + description + "IOFPGA SPI Flash Group"; + container flash { + config false; + description + "IOFPGA SPI flash information"; + uses iofpga-flash-info-group; + uses iofpga-flash-status-group; + } + } + + grouping iofpga-flash-info-group { + description + "IOFPGA SPI Flash Information Group"; + container info { + config false; + description + "IOFPGA SPI flash content"; + list flash_location { + key "flash_location"; + description + "Select Location"; + leaf flash_location { + type calvados:location-id; + description + "IOFPGA Flash Location"; + } + container iofpga_flash_info { + description + "IOFPGA Flash Information"; + leaf-list iofpga_flash_info_values { + type string; + description + "IOFPGA Flash Information Values"; + } + } + } + } + } + + grouping iofpga-flash-status-group { + description + "IOFPGA SPI Flash Status Group"; + container status { + config false; + description + "IOFPGA SPI flash status"; + list flash_location { + key "flash_location"; + description + "IOFPGA Flash Location"; + leaf flash_location { + type calvados:location-id; + description + "IOFPGA Flash Location ID"; + } + container iofpga_flash_status { + description + "IOFPGA Flash Status"; + leaf-list iofpga_flash_status_values { + type string; + description + "IOFPGA Flash Status Values"; + } + } + } + } + } + + grouping bootldr-group { + description + "Bootloader Group"; + container bootloader { + config false; + description + "Bootloader information"; + uses bootldr-flash-group; + } + } + + grouping bootldr-flash-group { + description + "Bootloader SPI Flash Group"; + container flash { + config false; + description + "Bootloader SPI flash information"; + uses bootldr-flash-info-group; + uses bootldr-flash-status-group; + } + } + + grouping bootldr-flash-info-group { + description + "Bootloader SPI Flash Information Group"; + container info { + config false; + description + "Bootloader SPI flash content"; + list flash_location { + key "flash_location"; + description + "Select Location"; + leaf flash_location { + type calvados:location-id; + description + "Location ID"; + } + container bootldr_flash_info { + description + "Bootloader Flash Information"; + leaf-list bootldr_flash_info_values { + type string; + description + "Bootloader Flash Information Values"; + } + } + } + } + } + + grouping bootldr-flash-status-group { + description + "Bootloader SPI Flash Group"; + container status { + config false; + description + "Bootloader SPI flash status"; + list flash_location { + key "flash_location"; + description + "Select Location"; + leaf flash_location { + type calvados:location-id; + description + "Location ID"; + } + container bootldr_flash_status { + description + "Bootloader flash status"; + leaf-list bootldr_flash_status_values { + type string; + description + "Bootloader Flash Status Values"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg.yang new file mode 100644 index 000000000..2ba882b72 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-chassis-mode-ptmode-cfg"; + prefix chassis-mode; + + 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 YANG + definitions for Cisco IOS-XR SysAdmin chassis-mode + configuration. + + This module holds chassis PT-mode data. + + Copyright (c) 2021-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-17 { + description + "Changing the cli option."; + semver:module-version "1.0.0"; + } + revision 2021-10-29 { + description + "Initial revision."; + } + + grouping mode { + description + "chassis mode"; + container config { + description + "chassis-mode config mode"; + uses global-chassis-config-group; + } + } + + grouping global-chassis-config-group { + description + "Enable/Disable 100G IM support on slot 6 & 8"; + leaf pass-through-mode { + type enumeration { + enum "disable"; + enum "enable"; + } + default "disable"; + config true; + description + "Pass through mode; disabled by default"; + } + } + + container chassis-mode { + description + "chassis-mode container"; + uses mode; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-asr9k.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-asr9k.yang new file mode 100644 index 000000000..fb311170f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-asr9k.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-sysadmin-clear-asr9k { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-clear-ASR9K"; + prefix calvados_clear; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k { + prefix esdma; + } + import canb_cli_clear { + prefix canb_clear; + } + import cisco-semver { + prefix semver; + } + + organization + "Cisco Systems Inc."; + contact + "Cisco Systems, Inc. + Customer Service + \t + 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 SysAdmin configuration. + + This module defines the top level container for + all 'clear' commands for Sysadmin. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-10 { + description + "Changed the namespace for ASR9K platform"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2015-10-15 { + description + "Created initial 'clear' implementation"; + } + + container clear { + container controller { + container switch { + uses esdma:switch_clear; + } + } + uses canb_clear:canb-clear-grp; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-iosxrwbd.yang new file mode 100644 index 000000000..4e291c0bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-iosxrwbd.yang @@ -0,0 +1,65 @@ +module Cisco-IOS-XR-sysadmin-clear-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-clear-iosxrwbd"; + prefix calvados_clear; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd { + prefix esdma; + } + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-fabric-iosxrwbd { + prefix fabric; + } + import Cisco-IOS-XR-sysadmin-asic-errors-ael { + prefix aelclear; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'clear' commands for Sysadmin. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-10 { + description + "Created initial 'clear' implementation for Whitebox"; + semver:module-version "1.0.0"; + } + + grouping asic_clear { + tailf:action "statistics"; + } + + container clear { + container controller { + container switch { + uses esdma:switch_clear; + } + uses fabric:fabric_clear; + } + uses aelclear:ael-clear-asic-errors-grp; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie.yang new file mode 100644 index 000000000..01b476c24 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie.yang @@ -0,0 +1,58 @@ +module Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-clear-ncs5500-eyrie"; + prefix calvados_clear; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500 { + prefix esdma; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'clear' commands for Sysadmin. + + Copyright (c) 2021-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-24 { + description + "removed the unnecessary import"; + semver:module-version "1.0.0"; + } + revision 2021-01-29 { + description + "Changed the implementation to not to have SFE asic errors and to have Switch"; + } + + grouping asic_clear { + tailf:action "statistics"; + } + + container clear { + container controller { + container switch { + uses esdma:switch_clear; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500.yang new file mode 100644 index 000000000..2c8d11b3e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5500.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-sysadmin-clear-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-clear-ncs5500"; + prefix calvados_clear; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500 { + prefix esdma; + } + import Cisco-IOS-XR-sysadmin-asic-errors-ael { + prefix aelclear; + } + import Cisco-IOS-XR-sysadmin-fabric-ncs5500 { + prefix fabric; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'clear' commands for Sysadmin. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-30 { + description + "Changed the namespace to be consistent with module name"; + } + revision 2017-10-11 { + description + "Changed the namespace to unique namespace per unique model"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2015-03-20 { + description + "Created initial 'clear' implementation for Fretta"; + } + + grouping asic_clear { + tailf:action "statistics"; + } + + container clear { + container controller { + container switch { + uses esdma:switch_clear; + } + uses fabric:fabric_clear; + } + uses aelclear:ael-clear-asic-errors-grp; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5502.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5502.yang new file mode 100644 index 000000000..18692fba6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs5502.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-sysadmin-clear-ncs5502 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-clear-ncs5502"; + prefix calvados_clear; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500 { + prefix esdma; + } + import Cisco-IOS-XR-sysadmin-asic-errors-ael { + prefix aelclear; + } + import Cisco-IOS-XR-sysadmin-fabric-ncs5502 { + prefix fabric; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'clear' commands for Sysadmin. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-30 { + description + "Changed the namespace to be consistent with module name"; + } + revision 2017-10-11 { + description + "Changed the namespace to unique namespace per unique model"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2015-03-20 { + description + "Created initial 'clear' implementation for Fretta"; + } + + grouping asic_clear { + tailf:action "statistics"; + } + + container clear { + container controller { + container switch { + uses esdma:switch_clear; + } + uses fabric:fabric_clear; + } + uses aelclear:ael-clear-asic-errors-grp; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs55A1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs55A1.yang new file mode 100644 index 000000000..3e3a864b4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-clear-ncs55A1.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-sysadmin-clear-ncs55A1 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-clear-NCS55A1"; + prefix calvados_clear; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-asic-errors-ael { + prefix aelclear; + } + import Cisco-IOS-XR-sysadmin-fabric-ncs5502 { + prefix fabric; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'clear' commands for Sysadmin. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-11 { + description + "Changed the namespace to unique namespace per unique model"; + } + revision 2015-03-20 { + description + "Created initial 'clear' implementation for Fretta"; + } + + grouping asic_clear { + tailf:action "statistics"; + } + + container clear { + container controller { + uses fabric:fabric_clear; + } + uses aelclear:ael-clear-asic-errors-grp; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-cm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-cm.yang new file mode 100644 index 000000000..14ad6e45b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-cm.yang @@ -0,0 +1,531 @@ +module Cisco-IOS-XR-sysadmin-cm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-cm"; + prefix cmh; + + import tailf-common { + prefix tailf; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import ietf-yang-types { + prefix yang; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-sysadmin-show-trace-cm { + prefix cm; + } + 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 SysAdmin configuration. + + The System Admin Manager (CM) + + Copyright (c) 2010-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-07-03 { + description + "Suppress Tail-f warnings in ConfD 6.4.5"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-05-11 { + description + "Initial version"; + } + + typedef area_type { + type enumeration { + enum "SYSTEM"; + enum "RACK"; + enum "UNKNOWN"; + } + } + + typedef hex8ValueType { + type xs:hexBinary; + } + + grouping nodeInfoGroup { + container summary { + config false; + description + "System Admin Manager Node Inventory. All accesses are + read-only. CLI show command looks like show node-inventory + location "; + list node_locations { + key "node_location"; + leaf node_location { + type calvados:location-id; + } + list nodei { + key "ip_address"; + uses nodeInfoSummary; + } + } + } + container detail { + config false; + description + "System Admin Manager Node Inventory. All accesses are + read-only. CLI show command looks like show node-inventory + location "; + list node_locations { + key "node_location"; + leaf node_location { + type calvados:location-id; + } + list nodei { + key "ip_address"; + uses nodeInfoSummary; + uses nodeInfoDetail; + } + } + } + } + + grouping nodeInfoSummary { + description + "All the parameters needed to describe a node as + represented in CM."; + leaf type { + type string; + description + "Node Type"; + } + leaf ip_address { + type inet:ip-address; + description + "IP address of the node"; + } + leaf mac_address { + type yang:mac-address; + description + "Node MAC"; + } + leaf card_serial { + type string; + description + "Card serial# the node belongs to"; + } + leaf nti { + type uint32; + description + "Node NTI"; + } + } + + grouping nodeInfoDetail { + description + "All the parameters needed to describe a node as + represented in CM."; + leaf restart { + type boolean; + description + "Node in Restart"; + } + leaf data { + type hex8ValueType; + description + "Node Data"; + } + leaf sdr { + type string; + description + "SDR Name the node belongs to"; + } + } + + grouping cardInfo { + description + "All the parameters needed to describe a card as + represented in CM."; + leaf node_id { + type string; + description + "Node name"; + } + leaf card_type { + type string; + description + "Card Type"; + } + leaf hw_state { + type string; + description + "Card State"; + } + leaf sw_state { + type string; + description + "Card Software State"; + } + leaf slot { + type uint32; + description + "Card Slot Number"; + } + leaf card_serial { + type string; + description + "Serial Number of the Card"; + } + leaf cti { + type uint32; + description + "Card CTI"; + } + } + + grouping rackInfo { + description + "All the parameters needed to describe a rack as + represented in CM."; + leaf rack_number { + type int32; + description + "Rack Number"; + } + leaf rack_serial { + type string; + description + "Serial Number of the Rack"; + } + leaf rack_state { + type int32; + description + "Rack State"; + } + } + + grouping serviceInfo { + description + "All the parameters needed to describe a service as + represented in CM."; + leaf svc_name { + type string; + description + "Service Name"; + } + leaf placement_first { + type string; + description + "Serial Number of the first card selected"; + } + leaf nodeid_first { + type string; + description + "Node id of the first card selected"; + } + leaf placement_second { + type string; + description + "Serial Number of the second card selected"; + } + leaf nodeid_second { + type string; + description + "Node id of the second card selected"; + } + leaf svc_load { + type uint8; + description + "Service Load"; + } + } + + grouping sdrInfo { + description + "All the parameters needed to describe a SDR as + represented in CM."; + leaf sdr_id { + type uint32; + description + "SDR ID"; + } + leaf sdr_name { + type string; + description + "SDR NAME"; + } + leaf sdr_vlan_baseid { + type uint8; + description + "SDR VLAN ID"; + } + leaf sdr_version { + type uint64; + description + "SDR Image Version"; + } + } + + grouping ldrInfo { + description + "All the parameters needed to describe leader statistics."; + leaf syslead { + type string; + description + "Primary System Leader"; + } + leaf bkup_syslead { + type string; + description + "Backup System Leader"; + } + leaf racklead { + type string; + description + "Primary Rack Leader"; + } + leaf bkup_racklead { + type string; + description + "Backup Rack Leader"; + } + leaf l1_dis { + type string; + description + "L1 DIS"; + } + leaf l2_dis { + type string; + description + "L2 DIS"; + } + } + + grouping nbrInfo { + description + "All the parameters needed to describe a topology neighbor"; + leaf nbr_system_id { + type string; + description + "Neighbor System ID"; + } + leaf nbr_area_type { + type string; + description + "Neighbor Area Type"; + } + leaf nbr_interface { + type string; + description + "Adjacency Interface"; + } + leaf nbr_state { + type string; + description + "Neighbor State"; + } + leaf nbr_holdtime { + type uint64; + description + "Neighbor Hold Time"; + } + leaf nbr_uptime { + type xs:duration; + description + "Neighbor Up Time"; + } + } + + grouping lspdbInfo { + description + "All the parameters needed to describe a lsps from lspdb"; + leaf lsp_id { + type string; + description + "LSP System ID"; + } + leaf lsp_area_type { + type area_type; + description + "LSP Area Type"; + } + leaf lsp_sequence { + type uint32; + description + "LSP sequence number"; + } + leaf lsp_core { + type string; + description + "LSP core data bits"; + } + leaf-list lsp_tlvs { + type string; + description + "LSP TLV data"; + } + } + + augment "/cm:cm" { + container lsp { + config false; + description + "System Admin Manager lspdb of a location"; + list lspdb_locations { + key "lspdb_location"; + leaf lspdb_location { + type calvados:location-id; + } + list lspdbi { + key "lsp_id lsp_area_type"; + uses lspdbInfo; + } + } + } + } + container node-inventory { + config false; + description + "System Admin Manager Node Inventory. All accesses are + read-only. CLI show command looks like show node-inventory + location "; + uses nodeInfoGroup; + } + container card-inventory { + config false; + description + "System Admin Manager Card Inventory. All accesses are + read-only. CLI show command looks like show card-inventory + location "; + list card_locations { + key "card_location"; + leaf card_location { + type calvados:location-id; + } + list cardi { + key "card_serial"; + uses cardInfo; + } + } + } + container rack-inventory { + config false; + description + "System Admin Manager Rack Inventory"; + list rack_locations { + key "rack_location"; + leaf rack_location { + type calvados:location-id; + } + list racki { + key "rack_serial"; + uses rackInfo; + } + } + } + container system-service-inventory { + config false; + description + "System Admin Manager System Services Inventory"; + list ssvc_locations { + key "ssvc_location"; + leaf ssvc_location { + type calvados:location-id; + } + list ssvci { + key "svc_name"; + uses serviceInfo; + } + } + } + container rack-service-inventory { + config false; + description + "System Admin Manager Rack Services Inventory"; + list rsvc_locations { + key "rsvc_location"; + leaf rsvc_location { + type calvados:location-id; + } + list rsvci { + key "svc_name"; + uses serviceInfo; + } + } + } + container sdr-inventory { + config false; + description + "System Admin Manager SDR Inventory"; + list sdr_locations { + key "sdr_location"; + leaf sdr_location { + type calvados:location-id; + } + list sdri { + key "sdr_name"; + uses sdrInfo; + } + } + } + container leader-statistics { + config false; + description + "System Admin Manager Leader Statistics"; + list ldr_locations { + key "ldr_location"; + leaf ldr_location { + type calvados:location-id; + } + uses ldrInfo; + } + } + container topology-neighbors { + config false; + description + "System Admin Manager Neighbors of a location"; + list nbr_locations { + key "nbr_location"; + leaf nbr_location { + type calvados:location-id; + } + list nbri { + key "nbr_system_id nbr_area_type"; + uses nbrInfo; + } + } + } + container placement { + tailf:action "reoptimize" { + description + "Reoptimize Placement for System Scope Services"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-asr9k.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-asr9k.yang new file mode 100644 index 000000000..5011f5ff8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-asr9k.yang @@ -0,0 +1,57 @@ +module Cisco-IOS-XR-sysadmin-controllers-asr9k { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-controllers-ASR9K"; + prefix calvados_controllers_asr9k; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k { + prefix esdma; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all hardware devices managed in Sysadmin. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-10 { + description + "Changed the namespace for ASR9K platform"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2015-02-23 { + description + "Initial Revision"; + } + + container controller { + container switch { + uses esdma:switch; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-iosxrwbd.yang new file mode 100644 index 000000000..4bb3acbf6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-iosxrwbd.yang @@ -0,0 +1,96 @@ +module Cisco-IOS-XR-sysadmin-controllers-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-controllers-iosxrwbd"; + prefix calvados_controllers; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd { + prefix esdma; + } + import Cisco-IOS-XR-sysadmin-fabric-iosxrwbd { + prefix fabric; + } + import fit { + prefix fit; + } + import Cisco-IOS-XR-sysadmin-card-mgr { + prefix card_mgr; + } + import Cisco-IOS-XR-sysadmin-uptime { + prefix uptime; + } + import Cisco-IOS-XR-sysadmin-eobc-iosxrwbd { + prefix eobc-iosxrwbd; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all hardware devices managed in Sysadmin. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-06 { + description + "Display sfp eeprom info for EOBC ports and move ONIE/EOBC port status to DDC specific yang"; + semver:module-version "1.0.0"; + } + revision 2020-12-10 { + description + "Changes for checking onie and eobc port status in DCC"; + } + revision 2020-11-18 { + description + "Card Mgr uptime implementation for Whitebox"; + } + revision 2020-05-19 { + description + "Card Mgr event history implementation for Whitebox"; + } + revision 2020-01-10 { + description + "Created initial 'controller' implementation for Whitebox"; + } + + container set { + container controller { + uses fit:fit-grp; + } + } + container controller { + container switch { + uses esdma:switch; + } + uses fabric:fabric; + uses fabric:fabric_action_cmds; + uses card_mgr:card_mgr-group; + uses eobc-iosxrwbd:onie-port-group; + uses eobc-iosxrwbd:eobc-port-group; + } + container uptime { + config false; + description + "System Admin Node Uptime. All accesses are read-only. + CLI show command looks like show uptime."; + uses uptime:node_uptime; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie.yang new file mode 100644 index 000000000..6597abcdf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie.yang @@ -0,0 +1,53 @@ +module Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-controllers-ncs5500-eyrie"; + prefix calvados_controllers; + + import Cisco-IOS-XR-sysadmin-fabric-ncs5501 { + prefix fabric; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500 { + prefix esdma; + } + import Cisco-IOS-XR-sysadmin-card-mgr { + prefix card_mgr; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all hardware devices managed in Sysadmin. + + Copyright (c) 2021-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-29 { + description + "Changed the implementation to not to have SFE and to have Switch"; + semver:module-version "1.0.0"; + } + + container controller { + uses fabric:fabric; + container switch { + uses esdma:switch; + } + uses card_mgr:card_mgr-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500.yang new file mode 100644 index 000000000..10f86da69 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5500.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-sysadmin-controllers-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-controllers-ncs5500"; + prefix calvados_controllers; + + import Cisco-IOS-XR-sysadmin-fabric-ncs5500 { + prefix fabric; + } + import fit { + prefix fit; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500 { + prefix esdma; + } + import Cisco-IOS-XR-sysadmin-card-mgr { + prefix card_mgr; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all hardware devices managed in Sysadmin. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-30 { + description + "Changed the namespace to be consistent with module name"; + } + revision 2017-10-11 { + description + "Changed the namespace to unique namespace per unique model"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2015-03-20 { + description + "Created initial 'controller' implementation for Fretta"; + } + + container set { + container controller { + uses fit:fit-grp; + } + } + container controller { + uses fabric:fabric; + container switch { + uses esdma:switch; + } + uses fabric:fabric_action_cmds; + uses card_mgr:card_mgr-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5501.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5501.yang new file mode 100644 index 000000000..c3d7667ea --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5501.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-sysadmin-controllers-ncs5501 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-controllers-NCS5501"; + prefix calvados_controllers; + + import Cisco-IOS-XR-sysadmin-fabric-ncs5501 { + prefix fabric; + } + import Cisco-IOS-XR-sysadmin-card-mgr { + prefix card_mgr; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all hardware devices managed in Sysadmin. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-11 { + description + "Changed the namespace to unique namespace per unique model"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2016-01-12 { + description + "Created initial 'controller' implementation for Turin"; + } + + container controller { + uses fabric:fabric; + uses card_mgr:card_mgr-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5502.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5502.yang new file mode 100644 index 000000000..2034e5262 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs5502.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-sysadmin-controllers-ncs5502 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-controllers-ncs5502"; + prefix calvados_controllers; + + import Cisco-IOS-XR-sysadmin-fabric-ncs5502 { + prefix fabric; + } + import fit { + prefix fit; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500 { + prefix esdma; + } + import Cisco-IOS-XR-sysadmin-card-mgr { + prefix card_mgr; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all hardware devices managed in Sysadmin. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-30 { + description + "Changed the namespace to be consistent with module name"; + } + revision 2017-10-11 { + description + "Changed the namespace to unique namespace per unique model"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2015-03-20 { + description + "Created initial 'controller' implementation for Fretta"; + } + + container set { + container controller { + uses fit:fit-grp; + } + } + container controller { + uses fabric:fabric; + container switch { + uses esdma:switch; + } + uses fabric:fabric_action_cmds; + uses card_mgr:card_mgr-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs55A1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs55A1.yang new file mode 100644 index 000000000..5531bd8df --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-controllers-ncs55A1.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-sysadmin-controllers-ncs55A1 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-controllers-NCS55A1"; + prefix calvados_controllers; + + import Cisco-IOS-XR-sysadmin-fabric-ncs5502 { + prefix fabric; + } + import fit { + prefix fit; + } + import Cisco-IOS-XR-sysadmin-card-mgr { + prefix card_mgr; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all hardware devices managed in Sysadmin. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-10-11 { + description + "Changed the namespace to unique namespace per unique model"; + } + revision 2015-03-20 { + description + "Created initial 'controller' implementation for Fretta"; + } + + container set { + container controller { + uses fit:fit-grp; + } + } + container controller { + uses fabric:fabric; + uses fabric:fabric_action_cmds; + uses card_mgr:card_mgr-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-debug-trace.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-debug-trace.yang new file mode 100644 index 000000000..9f4758605 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-debug-trace.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-sysadmin-debug-trace { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-debug-trace"; + prefix debug_trace; + + 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 SysAdmin configuration. + This module contains definitions + for the following management objects: + debug_trace: Calvados debug trace. + + Copyright (c) 2015-2020, 2019-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-06-24 { + description + "PYANG error update with canonical order and revision update"; + semver:module-version "1.0.1"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2015-12-03 { + description + "Initial version."; + } + + grouping config-debug-trace-group { + container config { + config true; + container debug { + list trace { + key "connection_type"; + max-elements "16"; + leaf connection_type { + type string; + } + choice trace-output { + leaf enable { + type empty; + } + leaf disable { + type empty; + } + } + } + } + } + } + + uses config-debug-trace-group; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ds.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ds.yang new file mode 100644 index 000000000..ff3bbdc8c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ds.yang @@ -0,0 +1,223 @@ +module Cisco-IOS-XR-sysadmin-ds { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ds"; + prefix xr-ds; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + The Directory Services (DS). + + Copyright (c) 2010-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Changed prefix due to conflict with ietf-datastores"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-05-21 { + description + "Added string description for some show options"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + revision 2016-05-11 { + description + "Initial version."; + } + + typedef service-scope { + type enumeration { + enum "None"; + enum "Rack"; + enum "System"; + enum "Node"; + } + } + + typedef process-role { + type enumeration { + enum "NoRole"; + enum "Active"; + enum "Standby"; + enum "None"; + enum "Unknown" { + value 254; + } + } + } + + typedef process-issu-role { + type enumeration { + enum "Primary" { + value 1; + } + enum "Secondary" { + value 2; + } + enum "Tertiary" { + value 3; + } + enum "Unknown" { + value 254; + } + } + } + + grouping servicesGroup { + list services { + key "name"; + leaf name { + type string; + description + "Name of the service"; + } + list endpoint { + description + "endpoint info for a service in DS"; + leaf scope { + type service-scope; + } + leaf ip { + type inet:ipv4-address; + } + leaf port { + type inet:port-number; + } + leaf role { + type process-role; + } + leaf issu_role { + type process-issu-role; + } + leaf node { + type string; + description + "Ethernet address of the node hosting the endpoint"; + } + } + list registrations { + description + "clients registered for a service in DS"; + leaf client { + type string; + } + leaf pid { + type uint32; + } + } + } + } + + container services { + config false; + description + "Directory Services Entries"; + list all-locations { + key "location"; + leaf location { + type string; + description + "Node Location"; + } + uses servicesGroup; + } + } + container services-stats { + config false; + description + "Directory Services Stats"; + container ds { + config false; + uses show_trace:traceable; + } + list all-locations { + key "location"; + leaf location { + type string; + } + list stats { + key "name"; + leaf name { + type string; + description + "Name of the service"; + } + leaf published { + type uint32; + description + "number of endpoints published for this service"; + } + leaf deleted { + type uint32; + description + "number of endpoints deleted for this service"; + } + leaf modified { + type uint32; + description + "number of endpoints modified for this service"; + } + leaf registered { + type uint32; + description + "number of clients registered for this service"; + } + leaf unregistered { + type uint32; + description + "number of clients un-registered for this service"; + } + leaf notifications { + type uint32; + description + "number of clients notified for this service"; + } + leaf remote_sent { + type uint32; + description + "number of remote service updates sent to remote nodes"; + } + leaf remote_recv { + type uint32; + description + "number of remote service received from remote nodes"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-dumper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-dumper.yang new file mode 100644 index 000000000..73f37d99f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-dumper.yang @@ -0,0 +1,58 @@ +module Cisco-IOS-XR-sysadmin-dumper { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-dumper"; + prefix dumper; + + 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 SysAdmin dumper to + configure file path options to copy the core files to. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-09 { + description + "Modified module name, namespace and filename + to adhere to standard notation"; + } + revision 2016-05-12 { + description + "Initial Version"; + } + + container exception { + list choice { + key "order"; + leaf order { + type int32 { + range "1 .. 3"; + } + } + leaf filepath { + type string; + mandatory true; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-mib.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-mib.yang new file mode 100644 index 000000000..2b943358e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-mib.yang @@ -0,0 +1,353 @@ +module Cisco-IOS-XR-sysadmin-entity-mib { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-entity-mib"; + prefix ENTITY_MIB; + + import ietf-yang-types { + prefix yang; + } + import tailf-common { + prefix tailf; + } + import SNMPv2-TC { + prefix SNMPv2-TC; + } + import SNMP-FRAMEWORK-MIB { + prefix SNMP-FRAMEWORK-MIB; + } + 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 SysAdmin configuration. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 1999-12-07 { + description + ""; + } + + typedef PhysicalIndex { + type int32 { + range "1 .. 2147483647"; + } + } + + typedef PhysicalClass { + type enumeration { + enum "other" { + value 1; + } + enum "unknown" { + value 2; + } + enum "chassis" { + value 3; + } + enum "backplane" { + value 4; + } + enum "container" { + value 5; + } + enum "powerSupply" { + value 6; + } + enum "fan" { + value 7; + } + enum "sensor" { + value 8; + } + enum "module" { + value 9; + } + enum "port" { + value 10; + } + enum "stack" { + value 11; + } + } + } + + typedef SnmpEngineIdOrNone { + type tailf:hex-list; + } + + typedef entPhysicalContainedInType { + type int32 { + range "0 .. 2147483647"; + } + } + + typedef entPhysicalParentRelPosType { + type int32 { + range "-1 .. 2147483647"; + } + } + + typedef entPhysicalSerialNumType { + type string { + length "min .. 32"; + } + } + + typedef entPhysicalAliasType { + type string { + length "min .. 32"; + } + } + + typedef entPhysicalAssetIDType { + type string { + length "min .. 32"; + } + } + + typedef entLogicalIndexType { + type int32 { + range "1 .. 2147483647"; + } + } + + typedef entLogicalCommunityType { + type tailf:hex-list; + } + + typedef entAliasLogicalIndexOrZeroType { + type int32 { + range "0 .. 2147483647"; + } + } + tailf:id "http://tail-f.com/ns/mibs/ENTITY-MIB/199912070000Z"; + tailf:snmp-mib-module-name "ENTITY-MIB"; + + container ENTITY-MIB { + container entityGeneral { + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.4"; + leaf entLastChangeTime { + type yang:timestamp; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.4.1"; + } + } + container entPhysicalTable { + config false; + list entPhysicalEntry { + key "entPhysicalIndex"; + config false; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1"; + leaf entPhysicalIndex { + type PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf entPhysicalDescr { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.2"; + } + leaf entPhysicalVendorType { + type SNMPv2-TC:AutonomousType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.3"; + } + leaf entPhysicalContainedIn { + type entPhysicalContainedInType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.4"; + } + leaf entPhysicalClass { + type PhysicalClass; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.5"; + } + leaf entPhysicalParentRelPos { + type entPhysicalParentRelPosType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.6"; + } + leaf entPhysicalName { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.7"; + } + leaf entPhysicalHardwareRev { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.8"; + } + leaf entPhysicalFirmwareRev { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.9"; + } + leaf entPhysicalSoftwareRev { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.10"; + } + leaf entPhysicalSerialNum { + type entPhysicalSerialNumType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.11"; + } + leaf entPhysicalMfgName { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.12"; + } + leaf entPhysicalModelName { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.13"; + } + leaf entPhysicalAlias { + type entPhysicalAliasType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.14"; + } + leaf entPhysicalAssetID { + type entPhysicalAssetIDType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.15"; + } + leaf entPhysicalIsFRU { + type SNMPv2-TC:TruthValue; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.16"; + } + } + } + container entLogicalTable { + config false; + list entLogicalEntry { + key "entLogicalIndex"; + config false; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1"; + leaf entLogicalIndex { + type entLogicalIndexType; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.1"; + } + leaf entLogicalDescr { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.2"; + } + leaf entLogicalType { + type SNMPv2-TC:AutonomousType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.3"; + } + leaf entLogicalCommunity { + type entLogicalCommunityType; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.4"; + } + leaf entLogicalTAddress { + type SNMPv2-TC:TAddress; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.5"; + } + leaf entLogicalTDomain { + type SNMPv2-TC:TDomain; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.6"; + } + leaf entLogicalContextEngineID { + type SnmpEngineIdOrNone; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.7"; + } + leaf entLogicalContextName { + type SNMP-FRAMEWORK-MIB:SnmpAdminString; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.8"; + } + } + } + container entLPMappingTable { + config false; + list entLPMappingEntry { + key "entLogicalIndex entLPPhysicalIndex"; + config false; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.2.1.47.1.3.1"; + leaf entLogicalIndex { + type entLogicalIndexType; + tailf:snmp-oid "1.3.6.1.2.1.47.1.2.1.1.1"; + } + leaf entLPPhysicalIndex { + type PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.3.1.1.1"; + } + } + } + container entAliasMappingTable { + config false; + list entAliasMappingEntry { + key "entPhysicalIndex entAliasLogicalIndexOrZero"; + config false; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.2.1.47.1.3.2"; + leaf entPhysicalIndex { + type PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf entAliasLogicalIndexOrZero { + type entAliasLogicalIndexOrZeroType; + tailf:snmp-oid "1.3.6.1.2.1.47.1.3.2.1.1"; + } + leaf entAliasMappingIdentifier { + type SNMPv2-TC:RowPointer; + config false; + tailf:snmp-oid "1.3.6.1.2.1.47.1.3.2.1.2"; + } + } + } + container entPhysicalContainsTable { + config false; + list entPhysicalContainsEntry { + key "entPhysicalIndex entPhysicalChildIndex"; + config false; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.2.1.47.1.3.3"; + leaf entPhysicalIndex { + type PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf entPhysicalChildIndex { + type PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.3.3.1.1"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-sensor-mib.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-sensor-mib.yang new file mode 100644 index 000000000..2611ffa6b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-sensor-mib.yang @@ -0,0 +1,307 @@ +module Cisco-IOS-XR-sysadmin-entity-sensor-mib { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-entity-sensor-mib"; + prefix CISCO_ENTITY_SENSOR_MIB; + + import ietf-yang-types { + prefix yang; + } + import SNMPv2-TC { + prefix SNMPv2-TC; + } + import Cisco-IOS-XR-sysadmin-entity-mib { + prefix ENTITY-MIB; + } + 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 SysAdmin configuration. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2002-10-16 { + description + ""; + } + + typedef SensorDataType { + type enumeration { + enum "other" { + value 1; + } + enum "unknown" { + value 2; + } + enum "voltsAC" { + value 3; + } + enum "voltsDC" { + value 4; + } + enum "amperes" { + value 5; + } + enum "watts" { + value 6; + } + enum "hertz" { + value 7; + } + enum "celsius" { + value 8; + } + enum "percentRH" { + value 9; + } + enum "rpm" { + value 10; + } + enum "cmm" { + value 11; + } + enum "truthvalue" { + value 12; + } + enum "specialEnum" { + value 13; + } + } + } + + typedef SensorDataScale { + type enumeration { + enum "yocto" { + value 1; + } + enum "zepto" { + value 2; + } + enum "atto" { + value 3; + } + enum "femto" { + value 4; + } + enum "pico" { + value 5; + } + enum "nano" { + value 6; + } + enum "micro" { + value 7; + } + enum "milli" { + value 8; + } + enum "units" { + value 9; + } + enum "kilo" { + value 10; + } + enum "mega" { + value 11; + } + enum "giga" { + value 12; + } + enum "tera" { + value 13; + } + enum "exa" { + value 14; + } + enum "peta" { + value 15; + } + enum "zetta" { + value 16; + } + enum "yotta" { + value 17; + } + } + } + + typedef SensorPrecision { + type int32 { + range "-8 .. 9"; + } + } + + typedef SensorValue { + type int32 { + range "-1000000000 .. 1000000000"; + } + } + + typedef SensorStatus { + type enumeration { + enum "ok" { + value 1; + } + enum "unavailable" { + value 2; + } + enum "nonoperational" { + value 3; + } + } + } + + typedef SensorValueUpdateRate { + type int32 { + range "0 .. 999999999"; + } + } + + typedef SensorThresholdSeverity { + type enumeration { + enum "other" { + value 1; + } + enum "minor" { + value 10; + } + enum "major" { + value 20; + } + enum "critical" { + value 30; + } + } + } + + typedef SensorThresholdRelation { + type enumeration { + enum "lessThan" { + value 1; + } + enum "lessOrEqual" { + value 2; + } + enum "greaterThan" { + value 3; + } + enum "greaterOrEqual" { + value 4; + } + enum "equalTo" { + value 5; + } + enum "notEqualTo" { + value 6; + } + } + } + + typedef entSensorMeasuredEntityType { + type int32 { + range "0 .. 2147483647"; + } + } + + typedef entSensorThresholdIndexType { + type int32 { + range "1 .. 99999999"; + } + } + + container CISCO-ENTITY-SENSOR-MIB { + container entSensorValueTable { + config false; + list entSensorValueEntry { + key "entPhysicalIndex"; + config false; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + } + leaf entSensorType { + type SensorDataType; + config false; + } + leaf entSensorScale { + type SensorDataScale; + config false; + } + leaf entSensorPrecision { + type SensorPrecision; + config false; + } + leaf entSensorValue { + type SensorValue; + config false; + } + leaf entSensorStatus { + type SensorStatus; + config false; + } + leaf entSensorValueTimeStamp { + type yang:timestamp; + config false; + } + leaf entSensorValueUpdateRate { + type SensorValueUpdateRate; + config false; + } + leaf entSensorMeasuredEntity { + type entSensorMeasuredEntityType; + config false; + } + } + } + container entSensorThresholdTable { + config false; + list entSensorThresholdEntry { + key "entPhysicalIndex entSensorThresholdIndex"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + } + leaf entSensorThresholdIndex { + type entSensorThresholdIndexType; + } + leaf entSensorThresholdSeverity { + type SensorThresholdSeverity; + } + leaf entSensorThresholdRelation { + type SensorThresholdRelation; + } + leaf entSensorThresholdValue { + type SensorValue; + } + leaf entSensorThresholdEvaluation { + type SNMPv2-TC:TruthValue; + config false; + } + leaf entSensorThresholdNotificationEnable { + type SNMPv2-TC:TruthValue; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-mib.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-mib.yang new file mode 100644 index 000000000..9d8f25036 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-mib.yang @@ -0,0 +1,101 @@ +module Cisco-IOS-XR-sysadmin-entity-state-mib { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-entity-state-mib"; + prefix ENTITY_STATE_MIB; + + import ietf-yang-types { + prefix yang; + } + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-entity-state-tc-mib { + prefix ENTITY-STATE-TC-MIB; + } + import Cisco-IOS-XR-sysadmin-entity-mib { + prefix ENTITY-MIB; + } + 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 SysAdmin configuration. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2005-11-22 { + description + ""; + } + tailf:id "http://tail-f.com/ns/mibs/ENTITY-STATE-MIB/200511220000Z"; + tailf:snmp-mib-module-name "ENTITY-STATE-MIB"; + + container ENTITY-STATE-MIB { + container entStateTable { + config false; + list entStateEntry { + key "entPhysicalIndex"; + config false; + tailf:sort-order "snmp"; + tailf:snmp-oid "1.3.6.1.2.1.131.1.1"; + leaf entPhysicalIndex { + type ENTITY-MIB:PhysicalIndex; + tailf:snmp-oid "1.3.6.1.2.1.47.1.1.1.1.1"; + } + leaf entStateLastChanged { + type yang:date-and-time; + config false; + tailf:snmp-oid "1.3.6.1.2.1.131.1.1.1.1"; + } + leaf entStateAdmin { + type ENTITY-STATE-TC-MIB:EntityAdminState; + config false; + tailf:snmp-oid "1.3.6.1.2.1.131.1.1.1.2"; + } + leaf entStateOper { + type ENTITY-STATE-TC-MIB:EntityOperState; + config false; + tailf:snmp-oid "1.3.6.1.2.1.131.1.1.1.3"; + } + leaf entStateUsage { + type ENTITY-STATE-TC-MIB:EntityUsageState; + config false; + tailf:snmp-oid "1.3.6.1.2.1.131.1.1.1.4"; + } + leaf entStateAlarm { + type ENTITY-STATE-TC-MIB:EntityAlarmStatus; + config false; + tailf:snmp-oid "1.3.6.1.2.1.131.1.1.1.5"; + } + leaf entStateStandby { + type ENTITY-STATE-TC-MIB:EntityStandbyStatus; + config false; + tailf:snmp-oid "1.3.6.1.2.1.131.1.1.1.6"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-tc-mib.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-tc-mib.yang new file mode 100644 index 000000000..a1004d0d9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-entity-state-tc-mib.yang @@ -0,0 +1,140 @@ +module Cisco-IOS-XR-sysadmin-entity-state-tc-mib { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-entity-state-tc-mib"; + prefix ENTITY_STATE_TC_MIB; + + import tailf-common { + prefix tailf; + } + 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 SysAdmin configuration. + + Copyright (c) 2015-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2005-11-22 { + description + ""; + } + + typedef EntityAdminState { + type enumeration { + enum "unknown" { + value 1; + } + enum "locked" { + value 2; + } + enum "shuttingDown" { + value 3; + } + enum "unlocked" { + value 4; + } + } + } + + typedef EntityOperState { + type enumeration { + enum "unknown" { + value 1; + } + enum "disabled" { + value 2; + } + enum "enabled" { + value 3; + } + enum "testing" { + value 4; + } + } + } + + typedef EntityUsageState { + type enumeration { + enum "unknown" { + value 1; + } + enum "idle" { + value 2; + } + enum "active" { + value 3; + } + enum "busy" { + value 4; + } + } + } + + typedef EntityAlarmStatus { + type bits { + bit unknown { + position 0; + } + bit underRepair { + position 1; + } + bit critical { + position 2; + } + bit major { + position 3; + } + bit minor { + position 4; + } + bit warning { + position 5; + } + bit indeterminate { + position 6; + } + } + } + + typedef EntityStandbyStatus { + type enumeration { + enum "unknown" { + value 1; + } + enum "hotStandby" { + value 2; + } + enum "coldStandby" { + value 3; + } + enum "providingService" { + value 4; + } + } + } + tailf:id "http://tail-f.com/ns/mibs/ENTITY-STATE-TC-MIB/200511220000Z"; + tailf:snmp-mib-module-name "ENTITY-STATE-TC-MIB"; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-eobc-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-eobc-iosxrwbd.yang new file mode 100644 index 000000000..e69de29bb diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec.yang new file mode 100644 index 000000000..b5b4a2944 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec.yang @@ -0,0 +1,163 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec"; + prefix esdma_admin_exec; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'controller switch port-state' command. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-22 { + description + "New grouping for iosxrwbd"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-exec-admin { + container port-state { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + tailf:action "down" { + output { + leaf result { + type string; + mandatory true; + } + } + } + tailf:action "up" { + output { + leaf result { + type string; + mandatory true; + } + } + } + tailf:action "test" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + } + } + + grouping switch-exec-admin-iosxrwbd { + container port-state { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter-rsip { + key "port-rsip"; + leaf port-rsip { + type string; + description + "Switch port RSIP"; + } + tailf:action "down" { + output { + leaf result { + type string; + mandatory true; + } + } + } + tailf:action "up" { + output { + leaf result { + type string; + mandatory true; + } + } + } + tailf:action "test" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell.yang new file mode 100644 index 000000000..feef57c39 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell"; + prefix esdma_bcmshell; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR Sysadmin + 'show controller switch bcmshell location <> ' commands. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-22 { + description + "Initial revision"; + semver:module-version "1.0.0"; + } + + grouping switch-bcmshell-group { + container bcmshell { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list bcm_cmd { + key "bcm_cmd_str"; + leaf bcm_cmd_str { + type esdma_types:esdma_diag_shell_cmd_type; + } + leaf bcm_output { + type esdma_types:esdma_diag_shell_cmd_type; + description + "Output"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge.yang new file mode 100644 index 000000000..244375415 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge.yang @@ -0,0 +1,119 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge"; + prefix esdma_bridge; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch bridge' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-bridge-group { + container bridge { + container statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list ingress-set-id { + key "ingress-set"; + leaf ingress-set { + type uint32; + } + leaf ingress-set-name { + type string; + } + leaf ingress-frames { + type uint64; + } + leaf ingress-vlan-discards { + type uint64; + } + leaf ingress-security-discards { + type uint64; + } + leaf ingress-other-discards { + type uint64; + } + } + list egress-set-id { + key "egress-set"; + leaf egress-set { + type uint32; + } + leaf egress-set-name { + type string; + } + leaf egress-ucast-frames { + type uint64; + } + leaf egress-mcast-frames { + type uint64; + } + leaf egress-bcast-frames { + type uint64; + } + leaf egress-discarded-frames { + type uint64; + } + leaf egress-txq-congestion { + type uint64; + } + leaf egress-ctrl-packets { + type uint64; + } + leaf egress-other-drops { + type uint64; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-clear.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-clear.yang new file mode 100644 index 000000000..d4e5787f2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-clear.yang @@ -0,0 +1,152 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-clear { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-clear"; + prefix esdma_clear; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'clear controller switch' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-clear-statistics { + container statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + tailf:action "all" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + } + + grouping switch-clear-mlap { + container mlap { + container statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + tailf:action "all" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + } + } + + grouping switch-clear-sdr { + container sdr { + container statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + tailf:action "all" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + } + } + + grouping switch-clear-fdb { + container fdb { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + tailf:action "all" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k.yang new file mode 100644 index 000000000..9bef86de1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-asr9k"; + prefix esdma; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec { + prefix esdma_admin_exec; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge { + prefix esdma_bridge; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-clear { + prefix esdma_clear; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb { + prefix esdma_fdb; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-mac { + prefix esdma_mac; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent { + prefix esdma_mgmt_agent; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable { + prefix esdma_reachable; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics { + prefix esdma_statistics; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-summary { + prefix esdma_summary; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-trace { + prefix esdma_trace; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk { + prefix esdma_trunk; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan { + prefix esdma_vlan; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-debug { + prefix esdma_debug; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr { + prefix esdma_sdr; + } + 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 SysAdmin configuration. + + The 'switch' module provides support for configuring and + monitoring the control Ethernet switches and ports. + Support includes basic switch and port statistics. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-09-20 { + description + "Created separate asr9k yang file."; + } + revision 2016-07-06 { + description + "Moved command implementations to separate yang module files."; + } + revision 2013-02-04 { + description + "Initial revision."; + } + + grouping switch_clear { + container oper { + config false; + description + "Control Ethernet switch operational data."; + uses esdma_clear:switch-clear-fdb; + uses esdma_clear:switch-clear-statistics; + } + } + + grouping switch { + container oper { + config false; + description + "Control Ethernet switch operational data."; + uses esdma_reachable:switch-reachable-data; + uses esdma_summary:switch-summary-group; + uses esdma_statistics:switch-statistics-group; + uses esdma_mac:switch-mac-group; + uses esdma_bridge:switch-bridge-group; + uses esdma_fdb:switch-fdb-group; + uses esdma_vlan:switch-vlan-group; + uses esdma_trace:esd-ctrace; + uses esdma_mgmt_agent:esdma-mgmt-group; + uses esdma_sdr:switch-sdr-group; + uses esdma_admin_exec:switch-exec-admin; + uses esdma_trunk:switch-trunk-group; + uses esdma_debug:switch-debug-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd.yang new file mode 100644 index 000000000..e386f19d5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd.yang @@ -0,0 +1,127 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-iosxrwbd"; + prefix esdma; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec { + prefix esdma_admin_exec; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-clear { + prefix esdma_clear; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb { + prefix esdma_fdb; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent { + prefix esdma_mgmt_agent; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd { + prefix esdma_mlap; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable { + prefix esdma_reachable; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp { + prefix esdma_sfp; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics { + prefix esdma_statistics; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-summary { + prefix esdma_summary; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-trace { + prefix esdma_trace; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan { + prefix esdma_vlan; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-bcmshell { + prefix esdma_bcmshell; + } + 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 SysAdmin configuration. + + The 'switch' module provides support for configuring and + monitoring the control Ethernet switches, ports, + and port PHYs. Support includes basic switch and port + statistics as well as detailed connectivity information + between connected nodes from Cisco's MLAP control + protocol. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-19 { + description + "Added support for admin exec CLI"; + semver:module-version "1.1.0"; + } + revision 2020-12-22 { + description + "Adding bcmshell group and file"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Moved command implementations to separate yang module files."; + } + revision 2013-02-04 { + description + "Initial revision."; + } + + grouping switch_clear { + container oper { + config false; + description + "Control Ethernet switch operational data."; + uses esdma_clear:switch-clear-fdb; + uses esdma_clear:switch-clear-mlap; + uses esdma_clear:switch-clear-statistics; + } + } + + grouping switch { + container oper { + config false; + description + "Control Ethernet switch operational data."; + uses esdma_reachable:switch-reachable-data; + uses esdma_summary:switch-summary-group-iosxrwbd; + uses esdma_statistics:switch-statistics-group-iosxrwbd; + uses esdma_fdb:switch-fdb-group; + uses esdma_vlan:switch-vlan-group; + uses esdma_sfp:switch-sfp-group-iosxrwbd; + uses esdma_mlap:mlap-oper-group-iosxrwbd; + uses esdma_trace:esd-ctrace; + uses esdma_mgmt_agent:esdma-mgmt-group; + uses esdma_admin_exec:switch-exec-admin-iosxrwbd; + uses esdma_bcmshell:switch-bcmshell-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500.yang new file mode 100644 index 000000000..bd0996536 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500.yang @@ -0,0 +1,115 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-cli-ncs5500"; + prefix esdma; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-admin-exec { + prefix esdma_admin_exec; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-bridge { + prefix esdma_bridge; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-clear { + prefix esdma_clear; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb { + prefix esdma_fdb; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-mac { + prefix esdma_mac; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent { + prefix esdma_mgmt_agent; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable { + prefix esdma_reachable; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics { + prefix esdma_statistics; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-summary { + prefix esdma_summary; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-trace { + prefix esdma_trace; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk { + prefix esdma_trunk; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan { + prefix esdma_vlan; + } + 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 SysAdmin configuration. + + The 'switch' module provides support for configuring and + monitoring the control Ethernet switches, ports, + and port PHYs. Support includes basic switch and port + statistics. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Moved command implementations to separate yang module files."; + } + revision 2013-02-04 { + description + "Initial revision."; + } + + grouping switch_clear { + container oper { + config false; + description + "Control Ethernet switch operational data."; + uses esdma_clear:switch-clear-fdb; + uses esdma_clear:switch-clear-statistics; + } + } + + grouping switch { + container oper { + config false; + description + "Control Ethernet switch operational data."; + uses esdma_reachable:switch-reachable-data; + uses esdma_summary:switch-summary-group; + uses esdma_statistics:switch-statistics-group; + uses esdma_mac:switch-mac-group; + uses esdma_bridge:switch-bridge-group; + uses esdma_fdb:switch-fdb-group; + uses esdma_vlan:switch-vlan-group-ncs5500; + uses esdma_trace:esd-ctrace-ncs5500; + uses esdma_mgmt_agent:esdma-mgmt-group; + uses esdma_admin_exec:switch-exec-admin; + uses esdma_trunk:switch-trunk-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-debug.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-debug.yang new file mode 100644 index 000000000..788f13248 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-debug.yang @@ -0,0 +1,169 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-debug { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-debug"; + prefix esdma_debug; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the hidden Cisco IOS-XR SysAdmin + 'show controller switch debug counters' command. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-debug-data { + container debug { + container counters { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + container counters { + leaf phy-polling-enabled { + type boolean; + } + leaf tx-thread-wdog-cnt { + type uint64; + } + leaf rx-thread-wdog-cnt { + type uint64; + } + leaf task-lock-longest-wait-time { + type uint64; + } + leaf task-lock-longest-wait-event { + type uint32; + } + leaf task-lock-longest-held-time { + type uint64; + } + leaf task-lock-longest-held-event { + type uint32; + } + leaf task-unlock-longest-wait-time { + type uint64; + } + leaf task-unlock-longest-wait-event { + type uint32; + } + leaf dma-max-rx-dequeued-per-int { + type uint64; + } + leaf dma-rx-packets-dequeued { + type uint64; + } + leaf dma-rx-packet-dequeue-errors { + type uint64; + } + leaf dma-tx-packets-queued { + type uint64; + } + leaf dma-tx-packets-completed { + type uint64; + } + leaf dma-tx-packet-no-msg-errors { + type uint64; + } + leaf dma-tx-packet-msg-too-big-errors { + type uint64; + } + leaf dma-tx-packet-no-buffer-errors { + type uint64; + } + leaf dma-tx-packet-queue-errors { + type uint64; + } + leaf dma-tx-packet-completion-errors { + type uint64; + } + leaf dma-max-tx-freed-per-int { + type uint64; + } + leaf dma-tx-buf-alloc-count { + type uint64; + } + leaf dma-tx-buf-free-count { + type uint64; + } + list switch-core { + key "core"; + leaf core { + type uint8; + } + leaf msi-count { + type uint64; + } + leaf aer-count { + type uint64; + } + leaf hp-count { + type uint64; + } + leaf wdog-count { + type uint64; + } + leaf core-task-lock-longest-wait-time { + type uint64; + } + leaf core-task-lock-longest-held-time { + type uint64; + } + leaf core-task-unlock-longest-wait-time { + type uint64; + } + } + } + } + } + } + } + + grouping switch-debug-group { + container switch-debug-cont { + uses switch-debug-data; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb.yang new file mode 100644 index 000000000..f8cfb9839 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb.yang @@ -0,0 +1,253 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-fdb"; + prefix esdma_fdb; + + import ietf-yang-types { + prefix ietf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch fdb' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-14 { + description + "Added incomplete command tailf statement for few containers"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-26 { + description + "Modified FDB port leaf to use new ESDMA type esdma-switch-fdb-ports"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-fdb-location { + container switch-fdb-common { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card to list the switch FDB information for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf num-entries { + type uint32; + description + "Number of FDB entries in the table."; + } + leaf has-trunk-entry { + type uint8; + description + "FDB entries contain an entry from the trunk"; + } + leaf trunk-entry-message { + type string; + description + "Message displayed when an FDB entry contains an entry for a trunk member port"; + } + container fdb-block { + list fdb-entry { + key "fdb-index"; + leaf fdb-index { + type uint32; + } + leaf fdb-mac-addr { + type ietf:mac-address; + } + leaf fdb-vlan { + type esdma_types:vlan-id-type; + } + leaf fdb-vlan-hex { + type leafref { + path "../fdb-vlan"; + } + } + leaf fdb-port { + type esdma_types:esdma-switch-fdb-ports; + description + "Switch port MAC address learned on."; + } + leaf fdb-trap-entry { + type esdma_types:esdma-switch-yes-no-enum; + } + leaf fdb-static-entry { + type esdma_types:esdma-switch-yes-no-enum; + } + leaf-list fdb-synced-cores { + type uint8; + } + } + } + } + } + } + + grouping switch-fdb-group { + container fdb { + container vlan { + list vlan-iter { + key "vlan"; + leaf vlan { + type esdma_types:vlan-id-type; + } + uses switch-fdb-location; + } + } + container mac { + list mac-iter { + key "mac"; + leaf mac { + type ietf:mac-address; + } + uses switch-fdb-location; + } + } + container port { + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port used for filtering"; + } + uses switch-fdb-location; + } + } + container statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + container counter-info { + leaf fdb-shadow-entries { + type uint32; + } + leaf fdb-max-shadow-entries { + type uint32; + } + leaf fdb-max-hash-chain { + type uint32; + } + leaf fdb-entries-added { + type uint32; + } + leaf fdb-entries-deleted { + type uint32; + } + leaf fdb-entries-updated { + type uint32; + } + leaf fdb-flushes { + type uint32; + } + leaf fdb-address-updates { + type uint32; + } + leaf fdb-new-addresses { + type uint32; + } + leaf fdb-aged-updates { + type uint32; + } + leaf fdb-transplant-updates { + type uint32; + } + leaf fdb-forwarding-updates { + type uint32; + } + leaf fdb-address-insert-errors { + type uint32; + } + leaf fdb-address-update-errors { + type uint32; + } + leaf fdb-memory-errors { + type uint32; + } + leaf fdb-allocation-errors { + type uint32; + } + leaf fdb-address-updates-queued { + type uint32; + } + leaf fdb-address-queue-full { + type esdma_types:esdma-switch-yes-no-enum; + } + leaf fdb-forwarding-updates-queued { + type uint32; + } + leaf fdb-forwarding-queue-full { + type esdma_types:esdma-switch-yes-no-enum; + } + } + list core-id { + key "core"; + leaf core { + type int32; + } + leaf core-entries { + type uint32; + } + leaf core-static-entries { + type uint32; + } + } + } + } + uses switch-fdb-location; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mac.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mac.yang new file mode 100644 index 000000000..6bc05d7a1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mac.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-mac { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-mac"; + prefix esdma_mac; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch mac' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-mac-group { + container mac { + container mac-statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card to list the switch MAC information for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + list mac-entry { + key "id"; + leaf id { + type uint32; + } + leaf base-reg { + type string; + } + leaf desc { + type string; + } + leaf value { + type string; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent.yang new file mode 100644 index 000000000..9e69b8298 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-mgmt-agent"; + prefix esdma_mgmt_agent; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-trace { + prefix esdma_trace; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch mgmt-agent' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping esdma-debug { + container connections { + container esdma-info { + leaf active-esdma-address { + type inet:ip-address; + } + } + list sdr-nm-client-id { + leaf sdr-nm-ip-address { + type inet:ip-address; + } + leaf sdr-nm-port-num { + type inet:port-number; + } + } + leaf sdr-nm-num-clients { + type uint32; + } + list esd-client-id { + leaf esd-client-ip-address { + type inet:ip-address; + } + leaf esd-client-port-num { + type inet:port-number; + } + leaf esd-client-location { + type string; + } + leaf esd-client-switch-info-cached { + type esdma_types:esdma-switch-yes-no-enum; + } + leaf esd-client-sdr-info-cached { + type esdma_types:esdma-switch-yes-no-enum; + } + } + leaf esd-client-num-clients { + type uint32; + } + list mlap-client-id { + leaf mlap-client-ip-address { + type inet:ip-address; + } + leaf mlap-client-port-num { + type inet:port-number; + } + leaf mlap-client-location { + type string; + } + leaf mlap-client-switch-info-cached { + type esdma_types:esdma-switch-yes-no-enum; + } + } + leaf mlap-client-num-clients { + type uint32; + } + } + } + + grouping esdma-mgmt-group { + container mgmt-agent { + uses esdma_trace:esdma-ctrace; + uses esdma-debug; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd.yang new file mode 100644 index 000000000..f56036627 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd.yang"; + prefix esdma_cluster_connectivity; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show cluster connectivity ethernet control' command. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-01 { + description + "Removed unused imports from this yang file"; + semver:module-version "1.0.0"; + } + revision 2021-02-05 { + description + "Modified ethernet control to control-ethernet for better correalation"; + } + revision 2020-05-27 { + description + "Initial revision for changes to whitebox esdma-cluster connectivity CLI"; + } + + grouping cluster-connectivity-iosxrwbd { + container connectivity { + container control-ethernet { + list location { + key "rack card"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf port-name { + type string; + description + "Switch port"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + leaf expected-endpoint { + type string; + description + "Indicates what this port is expected to connect to"; + } + leaf mismatch-string { + type string; + description + "Indicates whether there is a mismatch"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd.yang new file mode 100644 index 000000000..5951e92aa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd.yang @@ -0,0 +1,577 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-iosxrwbd"; + prefix esdma_mlap; + + import ietf-yang-types { + prefix ietf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch mlap' commands. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-09 { + description + "Add optics-health in MLAP endpoint details"; + semver:module-version "1.1.0"; + } + revision 2021-01-07 { + description + "Added new leaves for debuggability"; + semver:module-version "1.0.0"; + } + revision 2020-05-27 { + description + "Initial revision for changes to whitebox esdma-mlap cli outputs"; + } + + grouping mlap-endpoint-state-info { + leaf valid { + type boolean; + description + "Indicates whether this endpoint information contains valid data."; + } + leaf chassis-type { + when "../valid = 'true'"; + type esdma_types:esdma-rack-type-enum; + description + "The chassis type of this endpoint is in"; + } + leaf endpoint-type { + when "../valid = 'true'"; + type esdma_types:esdma-switch-type-enum; + description + "The type of endpoint this endpoint switch is on"; + } + leaf endpoint-slot-number { + when "../valid = 'true'"; + type uint32; + description + "Slot number of this endpoint"; + } + leaf endpoint-switch-number { + when "../valid = 'true'"; + type uint32; + description + "Switch number for the endpoint"; + } + leaf endpoint-switch-port-number { + when "../valid = 'true'"; + type uint32; + description + "Port number on the switch for the endpoint"; + } + leaf endpoint-switch-port-name { + when "../valid = 'true'"; + type string; + description + "Port number on the switch for the endpoint"; + } + leaf endpoint-chassis-serial-number { + when "../valid = 'true'"; + type string; + description + "Serial number for the endpoint"; + } + leaf mlap-state { + when "../valid = 'true'"; + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf inter-fcc_sw-port { + when "../valid = 'true'"; + type boolean; + description + "Indicates whether this port is used for an inter-F-SW connection"; + } + leaf fcc_sw-indirectly-reachable { + when "../valid = 'true'"; + type boolean; + description + "Indicates whether this port can indirectly reach an F-SW"; + } + leaf optics-health { + when "../valid = 'true'"; + type string; + description + "Optics Health of the port"; + } + } + + grouping mlap-internal-details { + container mlap-internal-details { + container info { + leaf port-owner { + type esdma_types:esdma-cpu; + description + "Indicates which switch data path the port belongs to"; + } + leaf current-active-owner { + type esdma_types:esdma-cpu; + description + "Indicates which switch is currently mastering chassis data"; + } + leaf mlap-peer-flags { + type bits { + bit Valid { + position 0; + } + bit FCC-Active { + position 1; + } + bit Force-Active { + position 2; + } + bit Ignore-Data { + position 31; + } + } + description + "Peer's port MLAP protocol flags"; + } + leaf mlap-peer-idle-count { + type uint32; + description + "Time intervals peer has not updated information"; + } + leaf my-connection-active-mask { + type uint64; + description + "My port active mask view"; + } + leaf peer-connection-active-mask { + type uint64; + description + "Peer's port active mask view"; + } + leaf endpoint-card-type { + type esdma_types:mlap-ep-type; + description + "Indicates the high-level card type this switch port is peering with"; + } + leaf endpoint-mac-address { + type ietf:mac-address; + description + "MAC addess of device of the protocol peer for this switch port"; + } + } + } + } + + grouping mlap-external-details { + container mlap-external-details { + container local-state-information { + description + "MLAP state information from this port's perspective"; + uses mlap-endpoint-state-info; + } + container peer-state-information { + description + "MLAP state information from peer port's perspective"; + uses mlap-endpoint-state-info; + } + container peer-other-link-state-information { + description + "MLAP state information for peer's other uplink perspective (RP/SC only)"; + uses mlap-endpoint-state-info; + } + } + } + + grouping mlap-detail-data-iosxrwbd { + container detail { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + container gen-data { + leaf serial-num { + type string; + description + "Rack serial number"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf admin-state { + type esdma_types:esdma-switch-port-state; + description + "Administrative port state"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf forwarding { + type esdma_types:switch-forwarding-state; + description + "Indicates whether this port is allowed to forward traffic"; + } + leaf mlap-protocol { + type esdma_types:mlap-protocol-enum; + description + "Indicates whether the internal or external MLAP protocol is active on this port"; + } + leaf protocol-pkt-sent { + type uint64; + description + "Number of protocol packets sent"; + } + leaf protocol-pkt-recv { + type uint64; + description + "Number of protocol packets received"; + } + leaf protocol-send-error { + type uint64; + description + "Number of protocol packet send errors"; + } + leaf protocol-recv-error { + type uint64; + description + "Number of protocol packet receive errors"; + } + leaf protocol-state-changes { + type uint32; + description + "Number of state changes"; + } + leaf protocol-RxErrorPktLenMismatch { + type uint64; + description + "Number of recevied packet length mismatch error"; + } + leaf protocol-RxErrorPktBadVlanEtype { + type uint64; + description + "Number of recevied packet with bad vlan data"; + } + leaf protocol-RxErrPktBadVlanData { + type uint64; + description + "Number of recevied packet with bad vlan data"; + } + leaf protocol-RxErrPktBadMlapEtype { + type uint64; + description + "Number of recevied packet with bad mlap Etpye"; + } + leaf protocol-RxErrPktBadMlapVersion { + type uint64; + description + "Number of recevied packet with bad mlap version"; + } + leaf protocol-RxErrPktMlapEtypeLenMismatch { + type uint64; + description + "Number of recevied packets with MLap Eptype mismatch(interchassis)"; + } + leaf protocol-RxErrPktLenError { + type uint64; + description + "Number of recevied packet length error"; + } + } + choice detail-type { + case internal-detail { + uses mlap-internal-details; + } + case external-detail { + uses mlap-external-details; + } + } + } + } + } + } + + grouping mlap-summary-data-iosxrwbd { + container summary-data { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + } + leaf port-name { + type string; + description + "Switch port"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf admin-state { + type esdma_types:esdma-switch-port-state; + description + "Administrative port state"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf forwarding { + type esdma_types:switch-forwarding-state; + description + "Indicates whether this port is allowed to forward traffic"; + } + leaf mlap-protocol { + type esdma_types:mlap-protocol-enum; + description + "Indicates whether the internal or external MLAP protocol is active on this port"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + leaf mismatch-string { + type string; + description + "Indicates whether there is a mismatch"; + } + } + } + } + } + + grouping mlap-statistics-data-iosxrwbd { + container statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + } + leaf port-name { + type string; + description + "Switch port"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf protocol-state-changes { + type uint32; + description + "Number of state changes"; + } + leaf protocol-pkt-sent { + type uint64; + description + "Number of protocol packets sent"; + } + leaf protocol-pkt-recv { + type uint64; + description + "Number of protocol packets received"; + } + leaf protocol-send-error { + type uint64; + description + "Number of protocol packet send errors"; + } + leaf protocol-recv-error { + type uint64; + description + "Number of protocol packet receive errors"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + leaf mismatch-string { + type string; + description + "Indicates whether there is a mismatch"; + } + } + } + } + } + + grouping mlap-reachable-data { + container reachable { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + } + } + } + + grouping mlap-debug-counters-iosxrwbd { + container debug { + container counters { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + container counters { + leaf eval-all-links-called { + type uint64; + } + leaf timer-event-queued { + type uint64; + } + leaf rx-packet-event-queued { + type uint64; + } + leaf eval-all-links-queued { + type uint64; + } + leaf link-status-queued { + type uint64; + } + leaf admin-status-queued { + type uint64; + } + leaf fwd-status-queued { + type uint64; + } + leaf current-fifo-depth { + type uint64; + } + leaf max-fifo-depth { + type uint64; + } + leaf current-mlap-timeout-ms-interval { + type uint32; + } + leaf aging-debug-enabled { + type boolean; + } + leaf trace-verbosity { + type esdma_types:mlap-trace-verbosity; + } + } + } + } + } + } + + grouping mlap-oper-group-iosxrwbd { + container mlap { + description + "MLAP switch data"; + uses mlap-reachable-data; + uses mlap-detail-data-iosxrwbd; + uses mlap-statistics-data-iosxrwbd; + uses mlap-summary-data-iosxrwbd; + uses mlap-debug-counters-iosxrwbd; + uses show_trace:traceable; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap.yang new file mode 100644 index 000000000..2fba497cc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap.yang @@ -0,0 +1,660 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap"; + prefix esdma_mlap; + + import ietf-yang-types { + prefix ietf; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch mlap' commands. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-09 { + description + "Add optics-health in MLAP endpoint details"; + semver:module-version "1.2.0"; + } + revision 2020-01-10 { + description + "Changes for whitebox esdma-mlap cli outputs"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping mlap-endpoint-state-info { + leaf valid { + type boolean; + description + "Indicates whether this endpoint information contains valid data."; + } + leaf chassis-type { + when "../valid = 'true'"; + type esdma_types:esdma-rack-type-enum; + description + "The chassis type of this endpoint is in"; + } + leaf endpoint-type { + when "../valid = 'true'"; + type esdma_types:esdma-switch-type-enum; + description + "The type of endpoint this endpoint switch is on"; + } + leaf endpoint-slot-number { + when "../valid = 'true'"; + type uint32; + description + "Slot number of this endpoint"; + } + leaf endpoint-switch-number { + when "../valid = 'true'"; + type uint32; + description + "Switch number for the endpoint"; + } + leaf endpoint-switch-port-number { + when "../valid = 'true'"; + type uint32; + description + "Port number on the switch for the endpoint"; + } + leaf endpoint-switch-port-name { + type string; + description + "Port number on the switch for the endpoint"; + } + leaf endpoint-chassis-serial-number { + when "../valid = 'true'"; + type string; + description + "Serial number for the endpoint"; + } + leaf mlap-state { + when "../valid = 'true'"; + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf inter-fcc_sw-port { + when "../valid = 'true'"; + type boolean; + description + "Indicates whether this port is used for an inter-F-SW connection"; + } + leaf fcc_sw-indirectly-reachable { + when "../valid = 'true'"; + type boolean; + description + "Indicates whether this port can indirectly reach an F-SW"; + } + leaf optics-health { + type string; + description + "Optics Health of the port"; + } + } + + grouping mlap-internal-details { + container mlap-internal-details { + container info { + leaf port-owner { + type esdma_types:esdma-cpu; + description + "Indicates which switch data path the port belongs to"; + } + leaf current-active-owner { + type esdma_types:esdma-cpu; + description + "Indicates which switch is currently mastering chassis data"; + } + leaf mlap-peer-flags { + type bits { + bit Valid { + position 0; + } + bit FCC-Active { + position 1; + } + bit Force-Active { + position 2; + } + bit Ignore-Data { + position 31; + } + } + description + "Peer's port MLAP protocol flags"; + } + leaf mlap-peer-idle-count { + type uint32; + description + "Time intervals peer has not updated information"; + } + leaf my-connection-active-mask { + type uint64; + description + "My port active mask view"; + } + leaf peer-connection-active-mask { + type uint64; + description + "Peer's port active mask view"; + } + leaf endpoint-card-type { + type esdma_types:mlap-ep-type; + description + "Indicates the high-level card type this switch port is peering with"; + } + leaf endpoint-mac-address { + type ietf:mac-address; + description + "MAC addess of device of the protocol peer for this switch port"; + } + } + } + } + + grouping mlap-external-details { + container mlap-external-details { + container local-state-information { + description + "MLAP state information from this port's perspective"; + uses mlap-endpoint-state-info; + } + container peer-state-information { + description + "MLAP state information from peer port's perspective"; + uses mlap-endpoint-state-info; + } + container peer-other-link-state-information { + description + "MLAP state information for peer's other uplink perspective (RP/SC only)"; + uses mlap-endpoint-state-info; + } + } + } + + grouping mlap-detail-data { + container detail { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + container gen-data { + leaf serial-num { + type string; + description + "Rack serial number"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf admin-state { + type esdma_types:esdma-switch-port-state; + description + "Administrative port state"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf forwarding { + type esdma_types:switch-forwarding-state; + description + "Indicates whether this port is allowed to forward traffic"; + } + leaf mlap-protocol { + type esdma_types:mlap-protocol-enum; + description + "Indicates whether the internal or external MLAP protocol is active on this port"; + } + leaf protocol-pkt-sent { + type uint64; + description + "Number of protocol packets sent"; + } + leaf protocol-pkt-recv { + type uint64; + description + "Number of protocol packets received"; + } + leaf protocol-set-color-pkts-sent { + type uint64; + description + "Number of set-active-VLAN requests"; + } + leaf protocol-set-color-pkts-recv { + type uint64; + description + "Number of set-active-VLAN responses"; + } + leaf protocol-send-error { + type uint64; + description + "Number of protocol packet send errors"; + } + leaf protocol-recv-error { + type uint64; + description + "Number of protocol packet receive errors"; + } + leaf protocol-state-changes { + type uint32; + description + "Number of state changes"; + } + leaf protocol-RxErrorPktLenMismatch { + type uint64; + description + "Number of recevied packet length mismatch error"; + } + leaf protocol-RxErrorPktBadVlanEtype { + type uint64; + description + "Number of recevied packet with bad vlan data"; + } + leaf protocol-RxErrPktBadVlanData { + type uint64; + description + "Number of recevied packet with bad vlan data"; + } + leaf protocol-RxErrPktBadMlapEtype { + type uint64; + description + "Number of recevied packet with bad mlap Etpye"; + } + leaf protocol-RxErrPktBadMlapVersion { + type uint64; + description + "Number of recevied packet with bad mlap version"; + } + leaf protocol-RxErrPktMlapEtypeLenMismatch { + type uint64; + description + "Number of recevied packets with MLap Eptype mismatch(interchassis)"; + } + leaf protocol-RxErrPktLenError { + type uint64; + description + "Number of recevied packet length error"; + } + leaf protocol-RxPktBadCCCEtype { + type uint64; + description + "Number of recevied packet with Bad CCC etype"; + } + leaf protocol-RxPktBadMlapCCCVersion { + type uint64; + description + "Number of recevied packet with Bad mlap ccc version"; + } + leaf protocol-RxPktEtypeCCCLenErr { + type uint64; + description + "Number of recevied ccc packet with Etype len error"; + } + leaf protocol-RxErrPktBadSeqCCCMagicIntraChassisProtocalId { + type uint64; + description + "Number of recevied ccc packets with bad seq magic for protocal ID "; + } + leaf protocol-RxErrPktCCCMagicIntraChassisSetVlanId { + type uint64; + description + "Number of recevied ccc packet with set vlan ID magic number error"; + } + leaf protocol-RxErrPktCCCPktTypeErr { + type uint64; + description + "Number of recevied with ccc packet type error"; + } + leaf protocol-RxErrPktCCCUnsupportedResponse { + type uint64; + description + "Number of recevied with ccc pkt unsupported response error"; + } + } + choice detail-type { + case internal-detail { + uses mlap-internal-details; + } + case external-detail { + uses mlap-external-details; + } + } + } + } + } + } + + grouping mlap-summary-data { + container summary-data { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf port-name { + type string; + description + "Switch port"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf admin-state { + type esdma_types:esdma-switch-port-state; + description + "Administrative port state"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf forwarding { + type esdma_types:switch-forwarding-state; + description + "Indicates whether this port is allowed to forward traffic"; + } + leaf mlap-protocol { + type esdma_types:mlap-protocol-enum; + description + "Indicates whether the internal or external MLAP protocol is active on this port"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + leaf expected-endpoint { + type string; + description + "Indicates what this port is expected to connect to"; + } + leaf mismatch-string { + type string; + description + "Indicates whether there is a mismatch"; + } + } + } + } + } + + grouping mlap-statistics-data { + container statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf port-name { + type string; + description + "Switch port"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf protocol-state-changes { + type uint32; + description + "Number of state changes"; + } + leaf protocol-pkt-sent { + type uint64; + description + "Number of protocol packets sent"; + } + leaf protocol-pkt-recv { + type uint64; + description + "Number of protocol packets received"; + } + leaf protocol-set-color-pkts-sent { + type uint64; + description + "Number of set-active-VLAN requests"; + } + leaf protocol-set-color-pkts-recv { + type uint64; + description + "Number of set-active-VLAN responses"; + } + leaf protocol-send-error { + type uint64; + description + "Number of protocol packet send errors"; + } + leaf protocol-recv-error { + type uint64; + description + "Number of protocol packet receive errors"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + leaf expected-endpoint { + type string; + description + "Indicates what this port is expected to connect to"; + } + leaf mismatch-string { + type string; + description + "Indicates whether there is a mismatch"; + } + } + } + } + } + + grouping mlap-reachable-data { + container reachable { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + } + } + } + + grouping mlap-debug-counters { + container debug { + container counters { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + container counters { + leaf eval-all-links-called { + type uint64; + } + leaf timer-event-queued { + type uint64; + } + leaf rx-packet-event-queued { + type uint64; + } + leaf eval-all-links-queued { + type uint64; + } + leaf link-status-queued { + type uint64; + } + leaf admin-status-queued { + type uint64; + } + leaf fwd-status-queued { + type uint64; + } + leaf current-fifo-depth { + type uint64; + } + leaf max-fifo-depth { + type uint64; + } + leaf vlan-color-changes { + type uint32; + } + leaf current-mlap-timeout-ms-interval { + type uint32; + } + leaf aging-debug-enabled { + type boolean; + } + leaf trace-verbosity { + type esdma_types:mlap-trace-verbosity; + } + } + } + } + } + } + + grouping mlap-oper-group { + container mlap { + description + "MLAP switch data"; + uses mlap-reachable-data; + uses mlap-detail-data; + uses mlap-statistics-data; + uses mlap-summary-data; + uses mlap-debug-counters; + uses show_trace:traceable; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable.yang new file mode 100644 index 000000000..39c9c111d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable.yang @@ -0,0 +1,62 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-reachable"; + prefix esdma_reachable; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch reachable' command. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-reachable-data { + container reachable { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr.yang new file mode 100644 index 000000000..11dea54e0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr.yang @@ -0,0 +1,352 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-sdr"; + prefix esdma_sdr; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch sdr' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping sdr-detail-group { + container sdr-detail { + list sdr-id { + key "sdr"; + leaf sdr { + type esdma_types:esdma-sdr-id; + } + container port-statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + list traffic-type-id { + key "traffic-type"; + leaf traffic-type { + type esdma_types:esdma-sdr-traffic-type; + } + list direction-id { + key "direction"; + leaf direction { + type esdma_types:switch-data-direction-enum; + description + "Packet direction this rule applies to"; + } + list traffic-class-id { + key "tc"; + leaf tc { + type esdma_types:switch-traffic-class-enum; + description + "Traffic class (0->7) for these statistics."; + } + leaf green-packets { + type uint64; + description + "Counts packets within the committed information rate for a traffic class on this VLAN."; + } + leaf yellow-packets { + type uint64; + description + "Counts packets above the committed information rate, but within the excess information rate for a traffic class on this VLAN."; + } + leaf red-packets { + type uint64; + description + "Counts packets above the excess information rate for a traffic class on this VLAN. Generally, these packets are dropped."; + } + } + } + } + } + } + } + } + } + } + + grouping sdr-summary-port-stats { + container port-statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest to display the SDR configuration for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + list sdr-id { + key "sdr"; + leaf sdr { + type esdma_types:esdma-sdr-id; + } + leaf esd-sdr-name { + type string; + } + list traffic-type-id { + key "traffic-type"; + leaf traffic-type { + type esdma_types:esdma-sdr-traffic-type; + } + list direction-id { + key "direction"; + leaf direction { + type esdma_types:switch-data-direction-enum; + description + "Packet direction this rule applies to"; + } + leaf green-packets { + type uint64; + description + "Counts packets within the committed information rate for all traffic classes on this SDR."; + } + leaf yellow-packets { + type uint64; + description + "Counts packets above the committed information rate, but within the excess information rate for all traffic classes on this SDR."; + } + leaf red-packets { + type uint64; + description + "Counts packets above the excess information rate for all traffic classes on this SDR. Generally, these packets are dropped."; + } + } + } + } + } + } + } + } + + grouping sdr-summary-global-stats { + container global-statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest to display the SDR configuration for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list sdr-id { + key "sdr"; + leaf sdr { + type esdma_types:esdma-sdr-id; + } + leaf esd-sdr-name { + type string; + } + list traffic-type-id { + key "traffic-type"; + leaf traffic-type { + type esdma_types:esdma-sdr-traffic-type; + } + list traffic-class-id { + key "tc"; + leaf tc { + type esdma_types:switch-traffic-class-enum; + description + "Traffic class (0->7) for these statistics."; + } + leaf green-packets { + type uint64; + description + "Counts packets within the committed information rate for a traffic class on this VLAN."; + } + leaf yellow-packets { + type uint64; + description + "Counts packets above the committed information rate, but within the excess information rate for a traffic class on this VLAN."; + } + leaf red-packets { + type uint64; + description + "Counts packets above the excess information rate for a traffic class on this VLAN. Generally, these packets are dropped."; + } + } + } + } + } + } + } + + grouping sdr-summary-policers { + container policers { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + container esd-policer-status { + container indent-group { + leaf esd-port-policing-enabled { + type esdma_types:esdma-switch-yes-no-enum; + } + leaf esd-port-committed-burst-size { + type uint32; + } + leaf esd-port-peak-burst-size { + type uint32; + } + leaf esd-port-policer-mru { + type uint32; + } + leaf esd-global-policing-enabled { + type esdma_types:esdma-switch-yes-no-enum; + } + leaf esd-global-committed-burst-size { + type uint32; + } + leaf esd-global-peak-burst-size { + type uint32; + } + leaf esd-global-policer-mru { + type uint32; + } + } + } + list sdr-id { + key "sdr"; + leaf sdr { + type esdma_types:esdma-sdr-id; + } + leaf esd-sdr-name { + type string; + } + leaf esd-sdr-cir { + type esdma_types:esd-percentage; + } + leaf esd-sdr-pir { + type esdma_types:esd-percentage; + } + list esd-sdr-cos-type-iter { + key "esd-sdr-cos-type"; + leaf esd-sdr-cos-type { + type esdma_types:esd-cir-eir-type; + } + leaf esd-sdr-cos-0 { + type esdma_types:esd-percentage; + } + leaf esd-sdr-cos-1 { + type esdma_types:esd-percentage; + } + leaf esd-sdr-cos-2 { + type esdma_types:esd-percentage; + } + leaf esd-sdr-cos-3 { + type esdma_types:esd-percentage; + } + leaf esd-sdr-cos-4 { + type esdma_types:esd-percentage; + } + leaf esd-sdr-cos-5 { + type esdma_types:esd-percentage; + } + leaf esd-sdr-cos-6 { + type esdma_types:esd-percentage; + } + leaf esd-sdr-cos-7 { + type esdma_types:esd-percentage; + } + } + } + } + } + } + + grouping sdr-summary-group { + uses sdr-summary-port-stats; + uses sdr-summary-global-stats; + uses sdr-summary-policers; + } + + grouping switch-sdr-group { + container sdr { + uses sdr-detail-group; + uses sdr-summary-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes.yang new file mode 100644 index 000000000..20e32576b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes.yang @@ -0,0 +1,104 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-serdes"; + prefix esdma_serdes; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch serdes' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-serdes-group { + container serdes { + container serdes-statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card to list the switch Serdes information for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + list serdes-entry { + key "id"; + leaf id { + type uint32; + } + leaf base-reg { + type string; + } + leaf desc { + type string; + } + leaf lane-0 { + type string; + } + leaf lane-1 { + type string; + } + leaf lane-2 { + type string; + } + leaf lane-3 { + type string; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp.yang new file mode 100644 index 000000000..33b04be94 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp.yang @@ -0,0 +1,1773 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-sfp"; + prefix esdma_sfp; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch sfp' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-23 { + description + "Addition of new grouping for iosxrwbd detail"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-sfp-summary-group { + container summary { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list sfp-port-iter { + key "sfp-port"; + leaf sfp-port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf sfp-inserted { + type esdma_types:esdma-switch-sfp-inserted-enum; + } + leaf sfp-controller { + type esdma_types:esdma-switch-sfp-controller-enum; + } + leaf sfp-type { + type esdma_types:esdma-switch-sfp-type-enum; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + } + } + } + } + + grouping switch-sfp-detail-group { + container detail { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + list sfp-port-iter { + key "sfp-port"; + leaf sfp-port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf sfp-inserted { + type esdma_types:esdma-switch-sfp-inserted-enum; + } + leaf sfp-type { + type esdma_types:esdma-switch-sfp-type-enum; + } + container sfp-details { + container sfp-port-detail { + leaf sfp-tranceiver-type { + type esdma_types:esdma-switch-sfp-tranceiver-type-enum; + } + leaf sfp-tranceiver-code { + type esdma_types:esdma-switch-sfp-type-enum; + } + leaf sfp-encoding { + type esdma_types:esdma-sfp-encoding-enum; + } + leaf sfp-bit-rate { + type uint32; + } + leaf sfp-link-reach-9u-fiber_KM { + when "../sfp-link-reach-9u-fiber_KM != '0'"; + type uint32; + } + leaf sfp-link-reach-9u-fiber_M { + when "../sfp-link-reach-9u-fiber_M != '0'"; + type uint32; + } + leaf sfp-link-reach-50u-fiber_M { + when "../sfp-link-reach-50u-fiber_M != '0'"; + type uint32; + } + leaf sfp-link-reach-62_5u-fiber_M { + when "../sfp-link-reach-62_5u-fiber_M != '0'"; + type uint32; + } + leaf sfp-link-reach-copper_M { + when "../sfp-link-reach-copper_M != '0'"; + type uint32; + } + leaf sfp-vendor-name { + type string; + } + leaf sfp-vendor-oui { + type string; + } + leaf sfp-vendor-part-num { + type string; + } + leaf sfp-laser-wavelength { + when "../sfp-laser-wavelength != '0'"; + type uint32; + } + leaf sfp-options { + type bits { + bit LRO { + position 0; + } + bit PowerLvl2 { + position 1; + } + bit CooledXcvr { + position 2; + } + bit LOS { + position 9; + } + bit SignalDet { + position 10; + } + bit TxFault { + position 11; + } + bit TxDisable { + position 12; + } + bit RateSel { + position 13; + } + } + } + leaf sfp-vendor-serial-num { + type string; + } + leaf sfp-data-code { + type string; + } + leaf sfp-diag-monitoring { + type bits { + bit AvePwrMon { + position 3; + } + bit External { + position 4; + } + bit Internal { + position 5; + } + bit DigDiagMon { + position 6; + } + } + } + leaf sfp-enhanced-options { + type bits { + bit RateSelCtrl { + position 1; + } + bit ApplSelect { + position 2; + } + bit RateSelCtrlMon { + position 3; + } + bit RxLosMon { + position 4; + } + bit TxFaultMon { + position 5; + } + bit TxDisableCtrlMon { + position 6; + } + bit AlarmWarningFlags { + position 7; + } + } + } + } + container sfp-msa-data { + leaf sfp-msa-0x00 { + type string; + } + leaf sfp-msa-0x10 { + type string; + } + leaf sfp-msa-0x20 { + type string; + } + leaf sfp-msa-0x30 { + type string; + } + leaf sfp-msa-0x40 { + type string; + } + leaf sfp-msa-0x50 { + type string; + } + } + container sfp-diag-analog-info { + container Thresholds { + container Temperature { + leaf temp-alarm-high { + type string; + } + leaf temp-warning-high { + type string; + } + leaf temp-warning-low { + type string; + } + leaf temp-alarm-low { + type string; + } + } + container Voltage { + leaf volt-alarm-high { + type string; + } + leaf volt-warning-high { + type string; + } + leaf volt-warning-low { + type string; + } + leaf volt-alarm-low { + type string; + } + } + container Bias { + leaf bias-alarm-high { + type string; + } + leaf bias-warning-high { + type string; + } + leaf bias-warning-low { + type string; + } + leaf bias-alarm-low { + type string; + } + } + container Tx-Power { + leaf tx-power-alarm-high { + type string; + } + leaf tx-power-warning-high { + type string; + } + leaf tx-power-warning-low { + type string; + } + leaf tx-power-alarm-low { + type string; + } + } + container Rx-Power { + leaf rx-power-alarm-high { + type string; + } + leaf rx-power-warning-high { + type string; + } + leaf rx-power-warning-low { + type string; + } + leaf rx-power-alarm-low { + type string; + } + } + } + container Real-Time-Data { + container Current { + leaf cur-temperature { + type string; + } + leaf cur-voltage { + type string; + } + leaf cur-bias { + type string; + } + leaf cur-tx-power { + type string; + } + leaf cur-rx-power { + type string; + } + leaf optional-status-control { + type bits { + bit DataReadyBar { + position 0; + } + bit RxLOS { + position 1; + } + bit TxFault { + position 2; + } + bit SoftRateSel0Eq1 { + position 3; + } + bit RateSel0Eq1 { + position 4; + } + bit RateSel1Eq1 { + position 5; + } + bit SoftTxDisable { + position 6; + } + bit TxDisable { + position 7; + } + } + } + } + } + } + container sfp-diag-data1 { + container optical-sfp-diag { + leaf sfp-diag-0x00 { + type string; + } + leaf sfp-diag-0x10 { + type string; + } + leaf sfp-diag-0x20 { + type string; + } + leaf sfp-diag-0x30 { + type string; + } + leaf sfp-diag-0x40 { + type string; + } + leaf sfp-diag-0x50 { + type string; + } + leaf sfp-diag-0x60 { + type string; + } + leaf sfp-diag-0x70 { + type string; + } + } + } + container sfp-diag-user-info { + container cisco-data { + leaf cisco-clei-code { + type string; + } + leaf cisco-part-number { + type string; + } + leaf cisco-min-temperature { + type int8; + } + leaf cisco-max-temperature { + type int8; + } + leaf cisco-product-id { + type string; + } + } + } + container sfp-diag-data2 { + container optical-sfp-diag { + leaf sfp-diag-0x80 { + type string; + } + leaf sfp-diag-0x90 { + type string; + } + leaf sfp-diag-0xA0 { + type string; + } + leaf sfp-diag-0xB0 { + type string; + } + leaf sfp-diag-0xC0 { + type string; + } + leaf sfp-diag-0xD0 { + type string; + } + leaf sfp-diag-0xE0 { + type string; + } + leaf sfp-diag-0xF0 { + type string; + } + } + } + } + container qsfp-details { + container qsfp_page_A0_data { + container qsfp-real-time-data { + container qsfp-temp-volt { + leaf module-monitor-temperature { + type string; + } + leaf module-monitor-voltage { + type string; + } + } + container qsfp-tx-channel-bias { + leaf channel-monitor-Tx1-Bias { + type string; + } + leaf channel-monitor-Tx2-Bias { + type string; + } + leaf channel-monitor-Tx3-Bias { + type string; + } + leaf channel-monitor-Tx4-Bias { + type string; + } + } + container qsfp-tx-output-power { + leaf channel-monitor-Tx1-Power { + type string; + } + leaf channel-monitor-Tx2-Power { + type string; + } + leaf channel-monitor-Tx3-Power { + type string; + } + leaf channel-monitor-Tx4-Power { + type string; + } + } + container qsfp-rx-input-power { + leaf channel-monitor-Rx1-Power { + type string; + } + leaf channel-monitor-Rx2-Power { + type string; + } + leaf channel-monitor-Rx3-Power { + type string; + } + leaf channel-monitor-Rx4-Power { + type string; + } + } + } + container qsfp-real-time-status-flags { + container qsfp-real-time-status { + leaf qsfp-page-select { + type string; + } + leaf qsfp-status { + type bits { + bit DataNotReady { + position 8; + } + bit INTL { + position 9; + } + bit FlatMemory { + position 10; + } + } + description + "Status Indicator"; + } + } + container qsfp-real-time-interrupt-flags { + leaf qsfp-int-flags-LOS-Indicator { + type bits { + bit L-Rx1-LOS { + position 0; + } + bit L-Rx2-LOS { + position 1; + } + bit L-Rx3-LOS { + position 2; + } + bit L-Rx4-LOS { + position 3; + } + bit L-Tx1-LOS { + position 4; + } + bit L-Tx2-LOS { + position 5; + } + bit L-Tx3-LOS { + position 6; + } + bit L-Tx4-LOS { + position 7; + } + } + description + "Interrupt Flag for TX/RX LOS Indicator"; + } + leaf qsfp-int-flags-Fault-Indicator { + type bits { + bit L-Tx1-Fault { + position 0; + } + bit L-Tx2-Fault { + position 1; + } + bit L-Tx3-Fault { + position 2; + } + bit L-Tx4-Fault { + position 3; + } + } + description + "Interrupt Flag for TX Fault Indicator"; + } + leaf qsfp-int-flags-Temperature-Indicator { + type bits { + bit Initialization-Complete-Flag { + position 0; + } + bit L-Temp-Low-Warning { + position 4; + } + bit L-Temp-High-Warning { + position 5; + } + bit L-Temp-Low-Alarm { + position 6; + } + bit L-Temp-High-Alarm { + position 7; + } + } + description + "Interrupt Flag for high/low alarm/warning temperature Indicator"; + } + leaf qsfp-int-flags-Supply-Voltage-Indicator { + type bits { + bit L-Vcc-Low-Warning { + position 4; + } + bit L-Vcc-High-Warning { + position 5; + } + bit L-Vcc-Low-Alarm { + position 6; + } + bit L-Vcc-High-Alarm { + position 7; + } + } + description + "Interrupt Flag for high/low alarm/warning Voltage Indicator"; + } + leaf qsfp-int-flags-Rx-Power-Indicator { + type bits { + bit L-Rx2-Power-Low-Warning { + position 0; + } + bit L-Rx2-Power-High-Warning { + position 1; + } + bit L-Rx2-Power-Low-Alarm { + position 2; + } + bit L-Rx2-Power-High-Alarm { + position 3; + } + bit L-Rx1-Power-Low-Warning { + position 4; + } + bit L-Rx1-Power-High-Warning { + position 5; + } + bit L-Rx1-Power-Low-Alarm { + position 6; + } + bit L-Rx1-Power-High-Alarm { + position 7; + } + bit L-Rx4-Power-Low-Warning { + position 8; + } + bit L-Rx4-Power-High-Warning { + position 9; + } + bit L-Rx4-Power-Low-Alarm { + position 10; + } + bit L-Rx4-Power-High-Alarm { + position 11; + } + bit L-Rx3-Power-Low-Warning { + position 12; + } + bit L-Rx3-Power-High-Warning { + position 13; + } + bit L-Rx3-Power-Low-Alarm { + position 14; + } + bit L-Rx3-Power-High-Alarm { + position 15; + } + } + description + "Interrupt Flag for high/low alarm/warning Rx Power in Channel 1/2/3/4 Indicator"; + } + leaf qsfp-int-flags-Tx-Bias-Indicator { + type bits { + bit L-Tx2-Bias-Low-Warning { + position 0; + } + bit L-Tx2-Bias-High-Warning { + position 1; + } + bit L-Tx2-Bias-Low-Alarm { + position 2; + } + bit L-Tx2-Bias-High-Alarm { + position 3; + } + bit L-Tx1-Bias-Low-Warning { + position 4; + } + bit L-Tx1-Bias-High-Warning { + position 5; + } + bit L-Tx1-Bias-Low-Alarm { + position 6; + } + bit L-Tx1-Bias-High-Alarm { + position 7; + } + bit L-Tx4-Bias-Low-Warning { + position 8; + } + bit L-Tx4-Bias-High-Warning { + position 9; + } + bit L-Tx4-Bias-Low-Alarm { + position 10; + } + bit L-Tx4-Bias-High-Alarm { + position 11; + } + bit L-Tx3-Bias-Low-Warning { + position 12; + } + bit L-Tx3-Bias-High-Warning { + position 13; + } + bit L-Tx3-Bias-Low-Alarm { + position 14; + } + bit L-Tx3-Bias-High-Alarm { + position 15; + } + } + description + "Interrupt Flag for high/low alarm/warning Tx Bias in Channel 1/2/3/4 Indicator"; + } + } + } + } + container qsfp_page_A0_0_data { + leaf qsfp-identifier { + type esdma_types:esdma-switch-sfp-tranceiver-type-enum; + } + leaf qsfp-transceiver { + type esdma_types:esdma-qsfp-transceiver-enum; + } + leaf qsfp-extended-transceiver { + type string; + } + leaf qsfp-encoding { + type esdma_types:esdma-sfp-encoding-enum; + } + leaf qsfp-bit-rate { + type uint32; + } + leaf qsfp-link-length-standard-SM-fiber_KM { + when "../qsfp-link-length-standard-SM-fiber_KM != '0'"; + type uint32; + } + leaf qsfp-link-length-OM3-50u-fiber_M { + when "../qsfp-link-length-OM3-50u-fiber_M != '0'"; + type uint32; + } + leaf qsfp-link-length-OM2-50u-fiber_M { + when "../qsfp-link-length-OM2-50u-fiber_M != '0'"; + type uint32; + } + leaf qsfp-link-length-OM1-62_5u-fiber_M { + when "../qsfp-link-length-OM1-62_5u-fiber_M != '0'"; + type uint32; + } + leaf qsfp-link-length-Copper-Cable-Assembly-fiber_M { + when "../qsfp-link-length-Copper-Cable-Assembly-fiber_M != '0'"; + type uint32; + } + leaf qsfp-device-tech { + type string; + } + leaf qsfp-vendor-name { + type string; + } + leaf qsfp-vendor-oui { + type string; + } + leaf qsfp-vendor-part-num { + type string; + } + leaf qsfp-laser-wavelength { + when "../qsfp-laser-wavelength != '0'"; + type uint32; + } + leaf qsfp-wavelength_tolerance { + type uint32; + } + leaf qsfp-max-case-temperature { + type string; + } + leaf qsfp-option-value-Rx-amplitude { + type bits { + bit RX-Output-Amplitude-Programming-Implemented { + position 0; + } + } + description + "Option value for Rx amplitude "; + } + leaf qsfp-option-values-Indicator { + type bits { + bit TxSqlch { + position 0; + } + bit TxSqlchDisable { + position 1; + } + bit RxOutputDisable { + position 2; + } + bit RxSqlchDisable { + position 3; + } + bit TxLOS { + position 9; + } + bit TxSqlchReducePave { + position 10; + } + bit TxFaultSignal { + position 11; + } + bit TxDisable { + position 12; + } + bit RateSelect { + position 13; + } + bit MemPg01 { + position 14; + } + bit MemPg02 { + position 15; + } + } + description + "Options Implemented in the QSFP Module"; + } + leaf qsfp-vendor-serial-num { + type string; + } + leaf qsfp-date-code { + type string; + } + leaf qsfp-diag-monitoring-type { + type bits { + bit AvgPwrMon { + position 3; + } + } + } + } + container qsfp_page_A0_3_data { + container qsfp-temperature { + leaf qsfp-temp-alarm-high { + type string; + } + leaf qsfp-temp-warning-high { + type string; + } + leaf qsfp-temp-warning-low { + type string; + } + leaf qsfp-temp-alarm-low { + type string; + } + } + container qsfp-voltage { + leaf qsfp-volt-alarm-high { + type string; + } + leaf qsfp-volt-warning-high { + type string; + } + leaf qsfp-volt-warning-low { + type string; + } + leaf qsfp-volt-alarm-low { + type string; + } + } + container qsfp-tx-bias { + leaf qsfp-tx-bias-alarm-high { + type string; + } + leaf qsfp-tx-bias-warning-high { + type string; + } + leaf qsfp-tx-bias-warning-low { + type string; + } + leaf qsfp-tx-bias-alarm-low { + type string; + } + } + container qsfp-tx-power { + leaf qsfp-tx-power-alarm-high { + type string; + } + leaf qsfp-tx-power-warning-high { + type string; + } + leaf qsfp-tx-power-warning-low { + type string; + } + leaf qsfp-tx-power-alarm-low { + type string; + } + } + container qsfp-rx-power { + leaf qsfp-rx-power-alarm-high { + type string; + } + leaf qsfp-rx-power-warning-high { + type string; + } + leaf qsfp-rx-power-warning-low { + type string; + } + leaf qsfp-rx-power-alarm-low { + type string; + } + } + } + } + } + } + } + } + + grouping switch-sfp-summary-group-iosxrwbd { + container summary { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list sfp-port-iter-rsip { + key "sfp-port-rsip"; + leaf sfp-port-rsip { + type string; + description + "Switch port"; + } + leaf sfp-inserted { + type esdma_types:esdma-switch-sfp-inserted-enum; + } + leaf sfp-controller { + type esdma_types:esdma-switch-sfp-controller-enum; + } + leaf sfp-type { + type esdma_types:esdma-switch-sfp-type-enum; + } + } + } + } + } + + grouping switch-sfp-detail-group-iosxrwbd { + container detail { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + } + list sfp-port-iter-rsip { + key "sfp-port-rsip"; + leaf sfp-port-rsip { + type string; + description + "Switch port"; + } + leaf sfp-inserted { + type esdma_types:esdma-switch-sfp-inserted-enum; + } + leaf sfp-type { + type esdma_types:esdma-switch-sfp-type-enum; + } + container sfp-details { + container sfp-port-detail { + leaf sfp-tranceiver-type { + type esdma_types:esdma-switch-sfp-tranceiver-type-enum; + } + leaf sfp-tranceiver-code { + type esdma_types:esdma-switch-sfp-type-enum; + } + leaf sfp-encoding { + type esdma_types:esdma-sfp-encoding-enum; + } + leaf sfp-bit-rate { + type uint32; + } + leaf sfp-vendor-name { + type string; + } + leaf sfp-vendor-oui { + type string; + } + leaf sfp-vendor-part-num { + type string; + } + leaf sfp-options { + type bits { + bit LRO { + position 0; + } + bit PowerLvl2 { + position 1; + } + bit CooledXcvr { + position 2; + } + bit LOS { + position 9; + } + bit SignalDet { + position 10; + } + bit TxFault { + position 11; + } + bit TxDisable { + position 12; + } + bit RateSel { + position 13; + } + } + } + leaf sfp-vendor-serial-num { + type string; + } + leaf sfp-data-code { + type string; + } + leaf sfp-diag-monitoring { + type bits { + bit AvePwrMon { + position 3; + } + bit External { + position 4; + } + bit Internal { + position 5; + } + bit DigDiagMon { + position 6; + } + } + } + leaf sfp-enhanced-options { + type bits { + bit RateSelCtrl { + position 1; + } + bit ApplSelect { + position 2; + } + bit RateSelCtrlMon { + position 3; + } + bit RxLosMon { + position 4; + } + bit TxFaultMon { + position 5; + } + bit TxDisableCtrlMon { + position 6; + } + bit AlarmWarningFlags { + position 7; + } + } + } + } + container sfp-msa-data { + leaf sfp-msa-0x00 { + type string; + } + leaf sfp-msa-0x10 { + type string; + } + leaf sfp-msa-0x20 { + type string; + } + leaf sfp-msa-0x30 { + type string; + } + leaf sfp-msa-0x40 { + type string; + } + leaf sfp-msa-0x50 { + type string; + } + } + container sfp-diag-analog-info { + container Thresholds { + container Temperature { + leaf temp-alarm-high { + type string; + } + leaf temp-warning-high { + type string; + } + leaf temp-warning-low { + type string; + } + leaf temp-alarm-low { + type string; + } + } + container Voltage { + leaf volt-alarm-high { + type string; + } + leaf volt-warning-high { + type string; + } + leaf volt-warning-low { + type string; + } + leaf volt-alarm-low { + type string; + } + } + container Bias { + leaf bias-alarm-high { + type string; + } + leaf bias-warning-high { + type string; + } + leaf bias-warning-low { + type string; + } + leaf bias-alarm-low { + type string; + } + } + container Tx-Power { + leaf tx-power-alarm-high { + type string; + } + leaf tx-power-warning-high { + type string; + } + leaf tx-power-warning-low { + type string; + } + leaf tx-power-alarm-low { + type string; + } + } + container Rx-Power { + leaf rx-power-alarm-high { + type string; + } + leaf rx-power-warning-high { + type string; + } + leaf rx-power-warning-low { + type string; + } + leaf rx-power-alarm-low { + type string; + } + } + } + container Real-Time-Data { + container Current { + leaf cur-temperature { + type string; + } + leaf cur-voltage { + type string; + } + leaf cur-bias { + type string; + } + leaf cur-tx-power { + type string; + } + leaf cur-rx-power { + type string; + } + leaf optional-status-control { + type bits { + bit DataReadyBar { + position 0; + } + bit RxLOS { + position 1; + } + bit TxFault { + position 2; + } + bit SoftRateSel0Eq1 { + position 3; + } + bit RateSel0Eq1 { + position 4; + } + bit RateSel1Eq1 { + position 5; + } + bit SoftTxDisable { + position 6; + } + bit TxDisable { + position 7; + } + } + } + } + } + } + container sfp-diag-data1 { + container optical-sfp-diag { + leaf sfp-diag-0x00 { + type string; + } + leaf sfp-diag-0x10 { + type string; + } + leaf sfp-diag-0x20 { + type string; + } + leaf sfp-diag-0x30 { + type string; + } + leaf sfp-diag-0x40 { + type string; + } + leaf sfp-diag-0x50 { + type string; + } + leaf sfp-diag-0x60 { + type string; + } + leaf sfp-diag-0x70 { + type string; + } + } + } + container sfp-diag-user-info { + container cisco-data { + leaf cisco-clei-code { + type string; + } + leaf cisco-part-number { + type string; + } + leaf cisco-min-temperature { + type int8; + } + leaf cisco-max-temperature { + type int8; + } + leaf cisco-product-id { + type string; + } + } + } + container sfp-diag-data2 { + container optical-sfp-diag { + leaf sfp-diag-0x80 { + type string; + } + leaf sfp-diag-0x90 { + type string; + } + leaf sfp-diag-0xA0 { + type string; + } + leaf sfp-diag-0xB0 { + type string; + } + leaf sfp-diag-0xC0 { + type string; + } + leaf sfp-diag-0xD0 { + type string; + } + leaf sfp-diag-0xE0 { + type string; + } + leaf sfp-diag-0xF0 { + type string; + } + } + } + } + container qsfp-details { + container qsfp_page_A0_data { + container qsfp-real-time-data { + container qsfp-temp-volt { + leaf module-monitor-temperature { + type string; + } + leaf module-monitor-voltage { + type string; + } + } + container qsfp-tx-channel-bias { + leaf channel-monitor-Tx1-Bias { + type string; + } + leaf channel-monitor-Tx2-Bias { + type string; + } + leaf channel-monitor-Tx3-Bias { + type string; + } + leaf channel-monitor-Tx4-Bias { + type string; + } + } + container qsfp-tx-output-power { + leaf channel-monitor-Tx1-Power { + type string; + } + leaf channel-monitor-Tx2-Power { + type string; + } + leaf channel-monitor-Tx3-Power { + type string; + } + leaf channel-monitor-Tx4-Power { + type string; + } + } + container qsfp-rx-input-power { + leaf channel-monitor-Rx1-Power { + type string; + } + leaf channel-monitor-Rx2-Power { + type string; + } + leaf channel-monitor-Rx3-Power { + type string; + } + leaf channel-monitor-Rx4-Power { + type string; + } + } + } + container qsfp-real-time-status-flags { + container qsfp-real-time-status { + leaf qsfp-page-select { + type string; + } + leaf qsfp-status { + type bits { + bit DataNotReady { + position 8; + } + bit INTL { + position 9; + } + bit FlatMemory { + position 10; + } + } + description + "Status Indicator"; + } + } + container qsfp-real-time-interrupt-flags { + leaf qsfp-int-flags-LOS-Indicator { + type bits { + bit L-Rx1-LOS { + position 0; + } + bit L-Rx2-LOS { + position 1; + } + bit L-Rx3-LOS { + position 2; + } + bit L-Rx4-LOS { + position 3; + } + bit L-Tx1-LOS { + position 4; + } + bit L-Tx2-LOS { + position 5; + } + bit L-Tx3-LOS { + position 6; + } + bit L-Tx4-LOS { + position 7; + } + } + description + "Interrupt Flag for TX/RX LOS Indicator"; + } + leaf qsfp-int-flags-Fault-Indicator { + type bits { + bit L-Tx1-Fault { + position 0; + } + bit L-Tx2-Fault { + position 1; + } + bit L-Tx3-Fault { + position 2; + } + bit L-Tx4-Fault { + position 3; + } + } + description + "Interrupt Flag for TX Fault Indicator"; + } + leaf qsfp-int-flags-Temperature-Indicator { + type bits { + bit Initialization-Complete-Flag { + position 0; + } + bit L-Temp-Low-Warning { + position 4; + } + bit L-Temp-High-Warning { + position 5; + } + bit L-Temp-Low-Alarm { + position 6; + } + bit L-Temp-High-Alarm { + position 7; + } + } + description + "Interrupt Flag for high/low alarm/warning temperature Indicator"; + } + leaf qsfp-int-flags-Supply-Voltage-Indicator { + type bits { + bit L-Vcc-Low-Warning { + position 4; + } + bit L-Vcc-High-Warning { + position 5; + } + bit L-Vcc-Low-Alarm { + position 6; + } + bit L-Vcc-High-Alarm { + position 7; + } + } + description + "Interrupt Flag for high/low alarm/warning Voltage Indicator"; + } + leaf qsfp-int-flags-Rx-Power-Indicator { + type bits { + bit L-Rx2-Power-Low-Warning { + position 0; + } + bit L-Rx2-Power-High-Warning { + position 1; + } + bit L-Rx2-Power-Low-Alarm { + position 2; + } + bit L-Rx2-Power-High-Alarm { + position 3; + } + bit L-Rx1-Power-Low-Warning { + position 4; + } + bit L-Rx1-Power-High-Warning { + position 5; + } + bit L-Rx1-Power-Low-Alarm { + position 6; + } + bit L-Rx1-Power-High-Alarm { + position 7; + } + bit L-Rx4-Power-Low-Warning { + position 8; + } + bit L-Rx4-Power-High-Warning { + position 9; + } + bit L-Rx4-Power-Low-Alarm { + position 10; + } + bit L-Rx4-Power-High-Alarm { + position 11; + } + bit L-Rx3-Power-Low-Warning { + position 12; + } + bit L-Rx3-Power-High-Warning { + position 13; + } + bit L-Rx3-Power-Low-Alarm { + position 14; + } + bit L-Rx3-Power-High-Alarm { + position 15; + } + } + description + "Interrupt Flag for high/low alarm/warning Rx Power in Channel 0/1/2/3 Indicator"; + } + leaf qsfp-int-flags-Tx-Bias-Indicator { + type bits { + bit L-Tx2-Bias-Low-Warning { + position 0; + } + bit L-Tx2-Bias-High-Warning { + position 1; + } + bit L-Tx2-Bias-Low-Alarm { + position 2; + } + bit L-Tx2-Bias-High-Alarm { + position 3; + } + bit L-Tx1-Bias-Low-Warning { + position 4; + } + bit L-Tx1-Bias-High-Warning { + position 5; + } + bit L-Tx1-Bias-Low-Alarm { + position 6; + } + bit L-Tx1-Bias-High-Alarm { + position 7; + } + bit L-Tx4-Bias-Low-Warning { + position 8; + } + bit L-Tx4-Bias-High-Warning { + position 9; + } + bit L-Tx4-Bias-Low-Alarm { + position 10; + } + bit L-Tx4-Bias-High-Alarm { + position 11; + } + bit L-Tx3-Bias-Low-Warning { + position 12; + } + bit L-Tx3-Bias-High-Warning { + position 13; + } + bit L-Tx3-Bias-Low-Alarm { + position 14; + } + bit L-Tx3-Bias-High-Alarm { + position 15; + } + } + description + "Interrupt Flag for high/low alarm/warning Tx Bias in Channel 0/1/2/3 Indicator"; + } + } + } + } + container qsfp_page_A0_0_data { + leaf qsfp-identifier { + type esdma_types:esdma-switch-sfp-tranceiver-type-enum; + } + leaf qsfp-transceiver { + type esdma_types:esdma-qsfp-transceiver-enum; + } + leaf qsfp-extended-transceiver { + type string; + } + leaf qsfp-encoding { + type esdma_types:esdma-sfp-encoding-enum; + } + leaf qsfp-bit-rate { + type uint32; + } + leaf qsfp-device-tech { + type string; + } + leaf qsfp-vendor-name { + type string; + } + leaf qsfp-vendor-oui { + type string; + } + leaf qsfp-vendor-part-num { + type string; + } + leaf qsfp-wavelength_tolerance { + type uint32; + } + leaf qsfp-max-case-temperature { + type string; + } + leaf qsfp-option-value-Rx-amplitude { + type bits { + bit RX-Output-Amplitude-Programming-Implemented { + position 0; + } + } + description + "Option value for Rx amplitude "; + } + leaf qsfp-option-values-Indicator { + type bits { + bit TxSqlch { + position 0; + } + bit TxSqlchDisable { + position 1; + } + bit RxOutputDisable { + position 2; + } + bit RxSqlchDisable { + position 3; + } + bit TxLOS { + position 9; + } + bit TxSqlchReducePave { + position 10; + } + bit TxFaultSignal { + position 11; + } + bit TxDisable { + position 12; + } + bit RateSelect { + position 13; + } + bit MemPg01 { + position 14; + } + bit MemPg02 { + position 15; + } + } + description + "Options Implemented in the QSFP Module"; + } + leaf qsfp-vendor-serial-num { + type string; + } + leaf qsfp-date-code { + type string; + } + leaf qsfp-diag-monitoring-type { + type bits { + bit AvgPwrMon { + position 3; + } + } + } + } + container qsfp_page_A0_3_data { + container qsfp-temperature { + leaf qsfp-temp-alarm-high { + type string; + } + leaf qsfp-temp-warning-high { + type string; + } + leaf qsfp-temp-warning-low { + type string; + } + leaf qsfp-temp-alarm-low { + type string; + } + } + container qsfp-voltage { + leaf qsfp-volt-alarm-high { + type string; + } + leaf qsfp-volt-warning-high { + type string; + } + leaf qsfp-volt-warning-low { + type string; + } + leaf qsfp-volt-alarm-low { + type string; + } + } + container qsfp-tx-bias { + leaf qsfp-tx-bias-alarm-high { + type string; + } + leaf qsfp-tx-bias-warning-high { + type string; + } + leaf qsfp-tx-bias-warning-low { + type string; + } + leaf qsfp-tx-bias-alarm-low { + type string; + } + } + container qsfp-tx-power { + leaf qsfp-tx-power-alarm-high { + type string; + } + leaf qsfp-tx-power-warning-high { + type string; + } + leaf qsfp-tx-power-warning-low { + type string; + } + leaf qsfp-tx-power-alarm-low { + type string; + } + } + container qsfp-rx-power { + leaf qsfp-rx-power-alarm-high { + type string; + } + leaf qsfp-rx-power-warning-high { + type string; + } + leaf qsfp-rx-power-warning-low { + type string; + } + leaf qsfp-rx-power-alarm-low { + type string; + } + } + } + } + } + } + } + } + + grouping switch-sfp-group { + container sfp { + uses switch-sfp-summary-group; + uses switch-sfp-detail-group; + } + } + + grouping switch-sfp-group-iosxrwbd { + container sfp { + uses switch-sfp-summary-group-iosxrwbd; + uses switch-sfp-detail-group-iosxrwbd; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics.yang new file mode 100644 index 000000000..19476105d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics.yang @@ -0,0 +1,470 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-statistics"; + prefix esdma_statistics; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch statistics' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-23 { + description + "Addition of new lists for RSIP port format for iosxrwbd"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-02-23 { + description + "Added a missing : for uniform output format"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-statistics-group { + container statistics { + container summary-statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf state-changes { + type uint32; + description + "Physical port state changes"; + } + leaf sw-sum-tx-packets { + type uint64; + description + "Packets transmitted on this switch port"; + } + leaf sw-sum-rx-packets { + type uint64; + description + "Indicates the port speed in bits per second"; + } + leaf sw-sum-tx-drops-errors { + type uint64; + description + "Indicates the number of transmitted packets that had an error or were dropped by the policer"; + } + leaf sw-sum-rx-drops-errors { + type uint64; + description + "Indicates the number of received packets that had an error or were dropped by the policer"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + } + } + } + container detail { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf port-speed { + type string; + description + "Indicates the port speed in bits per second"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + container counters { + leaf sw-det-rx-ucast-packets { + type uint64; + } + leaf sw-det-rx-mcast-packets { + type uint64; + } + leaf sw-det-rx-bcast-packets { + type uint64; + } + leaf sw-det-rx-flow-control { + type uint64; + } + leaf sw-det-rx-good-octets { + type uint64; + } + leaf sw-det-rx-bad-octets { + type uint64; + } + leaf sw-det-rx-fifo-overrun { + type uint64; + } + leaf sw-det-rx-undersize { + type uint64; + } + leaf sw-det-rx-fragments { + type uint64; + } + leaf sw-det-rx-oversize { + type uint64; + } + leaf sw-det-rx-jabber { + type uint64; + } + leaf sw-det-rx-errors { + type uint64; + } + leaf sw-det-rx-bad-crc { + type uint64; + } + leaf sw-det-rx-collisions { + type uint64; + } + leaf sw-det-rx-policing-drops { + type uint64; + } + leaf sw-det-tx-ucast-packets { + type uint64; + } + leaf sw-det-tx-mcast-packets { + type uint64; + } + leaf sw-det-tx-bcast-packets { + type uint64; + } + leaf sw-det-tx-flow-control { + type uint64; + } + leaf sw-det-tx-good-octets { + type uint64; + } + leaf sw-det-tx-deferred { + type uint64; + } + leaf sw-det-tx-fifo-unrun { + type uint64; + } + leaf sw-det-tx-mult-collision { + type uint64; + } + leaf sw-det-tx-excess-collision { + type uint64; + } + leaf sw-det-tx-late-collisions { + type uint64; + } + leaf sw-det-tx-policing-drops { + type uint64; + } + leaf sw-det-txq-drops { + type uint64; + } + leaf sw-det-rxtx-packets-64 { + type uint64; + } + leaf sw-det-rxtx-packets-65-127 { + type uint64; + } + leaf sw-det-rxtx-packets-128-255 { + type uint64; + } + leaf sw-det-rxtx-packets-256-511 { + type uint64; + } + leaf sw-det-rxtx-packets-512-1023 { + type uint64; + } + leaf sw-det-rxtx-packets-1024-max { + type uint64; + } + } + } + } + } + } + } + + grouping switch-statistics-group-iosxrwbd { + container statistics { + container summary-statistics { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter-rsip { + key "port-rsip"; + leaf port-rsip { + type string; + description + "Switch port RSIP"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf state-changes { + type uint32; + description + "Physical port state changes"; + } + leaf sw-sum-tx-packets { + type uint64; + description + "Packets transmitted on this switch port"; + } + leaf sw-sum-rx-packets { + type uint64; + description + "Indicates the port speed in bits per second"; + } + leaf sw-sum-tx-drops-errors { + type uint64; + description + "Indicates the number of transmitted packets that had an error or were dropped by the policer"; + } + leaf sw-sum-rx-drops-errors { + type uint64; + description + "Indicates the number of received packets that had an error or were dropped by the policer"; + } + } + } + } + container detail { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter-rsip { + key "port-rsip"; + leaf port-rsip { + type string; + description + "Switch port"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf port-speed { + type string; + description + "Indicates the port speed in bits per second"; + } + container counters { + leaf sw-det-rx-ucast-packets { + type uint64; + } + leaf sw-det-rx-mcast-packets { + type uint64; + } + leaf sw-det-rx-bcast-packets { + type uint64; + } + leaf sw-det-rx-flow-control { + type uint64; + } + leaf sw-det-rx-good-octets { + type uint64; + } + leaf sw-det-rx-bad-octets { + type uint64; + } + leaf sw-det-rx-fifo-overrun { + type uint64; + } + leaf sw-det-rx-undersize { + type uint64; + } + leaf sw-det-rx-fragments { + type uint64; + } + leaf sw-det-rx-oversize { + type uint64; + } + leaf sw-det-rx-jabber { + type uint64; + } + leaf sw-det-rx-errors { + type uint64; + } + leaf sw-det-rx-bad-crc { + type uint64; + } + leaf sw-det-rx-collisions { + type uint64; + } + leaf sw-det-rx-policing-drops { + type uint64; + } + leaf sw-det-tx-ucast-packets { + type uint64; + } + leaf sw-det-tx-mcast-packets { + type uint64; + } + leaf sw-det-tx-bcast-packets { + type uint64; + } + leaf sw-det-tx-flow-control { + type uint64; + } + leaf sw-det-tx-good-octets { + type uint64; + } + leaf sw-det-tx-deferred { + type uint64; + } + leaf sw-det-tx-fifo-unrun { + type uint64; + } + leaf sw-det-tx-mult-collision { + type uint64; + } + leaf sw-det-tx-excess-collision { + type uint64; + } + leaf sw-det-tx-late-collisions { + type uint64; + } + leaf sw-det-tx-policing-drops { + type uint64; + } + leaf sw-det-txq-drops { + type uint64; + } + leaf sw-det-rxtx-packets-64 { + type uint64; + } + leaf sw-det-rxtx-packets-65-127 { + type uint64; + } + leaf sw-det-rxtx-packets-128-255 { + type uint64; + } + leaf sw-det-rxtx-packets-256-511 { + type uint64; + } + leaf sw-det-rxtx-packets-512-1023 { + type uint64; + } + leaf sw-det-rxtx-packets-1024-max { + type uint64; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-summary.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-summary.yang new file mode 100644 index 000000000..31d997204 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-summary.yang @@ -0,0 +1,173 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-summary { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-summary"; + prefix esdma_summary; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch summary' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-23 { + description + "Addition of new list for RSIP port format for iosxrwbd"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-summary-group { + container summary { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf admin-state { + type esdma_types:esdma-switch-port-state; + description + "Administrative port state"; + } + leaf port-speed { + type string; + description + "Indicates the port speed in bits per second"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf forwarding { + type esdma_types:switch-forwarding-state; + description + "Indicates whether this port is allowed to forward traffic"; + } + leaf connects-to { + type string; + description + "Indicates what this port connects to"; + } + } + } + } + } + + grouping switch-summary-group-iosxrwbd { + container summary { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + list port-iter-rsip { + key "port-rsip"; + leaf port-rsip { + type string; + description + "Switch port RSIP"; + } + leaf phys-state { + type esdma_types:esdma-switch-port-state; + description + "Physical port state"; + } + leaf admin-state { + type esdma_types:esdma-switch-port-state; + description + "Administrative port state"; + } + leaf port-speed { + type string; + description + "Indicates the port speed in bits per second"; + } + leaf protocol-state { + type esdma_types:mlap-state-enum; + description + "Protocol invoked port state"; + } + leaf forwarding { + type esdma_types:switch-forwarding-state; + description + "Indicates whether this port is allowed to forward traffic"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trace.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trace.yang new file mode 100644 index 000000000..c0159d492 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trace.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-trace { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-trace"; + prefix esdma_trace; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch trace' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping esd-ctrace { + container esd { + uses show_trace:traceable_process; + } + } + + grouping esd-ctrace-ncs5500 { + container trace { + list location { + key "location_str"; + leaf location_str { + type string; + } + container esd { + uses show_trace:traceable_with_keypath_location; + } + container esd-EPC-SW { + uses show_trace:traceable_with_keypath_location; + } + container esd-EOBC-SW { + uses show_trace:traceable_with_keypath_location; + } + } + } + } + + grouping esdma-ctrace { + container esdma { + uses show_trace:traceable; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk.yang new file mode 100644 index 000000000..76f33d42a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk.yang @@ -0,0 +1,91 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-trunk"; + prefix esdma_trunk; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch trunk' command. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping switch-trunk-group { + container trunk { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + description + "Rack to display the switch trunk group information for"; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card to display the switch trunk group information for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type to display the switch trunk group information for"; + } + leaf trunk-member-count { + type uint32; + description + "Number of member ports in the trunk group"; + } + leaf trunk-name { + type string; + description + "Name of the trunk group"; + } + list trunk-member-port-iter { + key "trunk-member-port"; + leaf trunk-member-port { + type uint32; + description + "Trunk Member Port"; + } + leaf trunk-member-status { + type esdma_types:esdma-trunk-member-status; + description + "Trunk Member Status"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-types.yang new file mode 100644 index 000000000..c55efe936 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-types.yang @@ -0,0 +1,483 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-types"; + prefix esdma_types; + + 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 the YANG enumerated type + definitions used by the Cisco IOS-XR SysAdmin + Control Ethernet commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-03 { + description + "Added new optics health status"; + semver:module-version "1.3.0"; + } + revision 2020-12-22 { + description + "Added a string type for bcm diag shell cli + 2020-09-30 + Changed fdb port range value + 2020-01-20 + Added additional esdma-rack-nums to support Whitebox topology"; + semver:module-version "1.2.0"; + } + revision 2019-09-20 { + description + "Added esdma-switch_type-lc-sw1 to support the 2nd Aldrin swicth on asr9k 9903 LC"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-10-26 { + description + "Added esdma-switch-port-type to support fdb-port range"; + } + revision 2018-02-28 { + description + "Added esdma-switch_type-rp-sw1 to support the 2nd Aldrin swicth on asr9k RP3"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + typedef esdma-rack-type-enum { + type enumeration { + enum "Unknown"; + enum "FCC"; + enum "LCC"; + enum "BSC"; + enum "COMPUTE"; + enum "ESC"; + } + description + "The valid chassis types supported supported in Sysadmin."; + } + + typedef esdma-rack-num-enum { + type enumeration { + enum "0"; + enum "1"; + enum "2"; + enum "3"; + enum "4"; + enum "5"; + enum "6"; + enum "7"; + enum "8"; + enum "9"; + enum "10"; + enum "11"; + enum "12"; + enum "13"; + enum "14"; + enum "15"; + enum "16"; + enum "17"; + enum "18"; + enum "19"; + enum "20"; + enum "21"; + enum "22"; + enum "23"; + enum "24"; + enum "25"; + enum "26"; + enum "27"; + enum "28"; + enum "29"; + enum "30"; + enum "31"; + enum "32"; + enum "33"; + enum "34"; + enum "35"; + enum "36"; + enum "37"; + enum "38"; + enum "39"; + enum "40"; + enum "41"; + enum "42"; + enum "43"; + enum "44"; + enum "45"; + enum "46"; + enum "47"; + enum "F0"; + enum "F1"; + enum "F2"; + enum "F3"; + enum "F4"; + enum "F5"; + enum "F6"; + enum "F7"; + enum "F8"; + enum "F9"; + enum "F10"; + enum "F11"; + enum "F12"; + enum "B0"; + enum "B1"; + enum "D0"; + enum "D1"; + enum "E0"; + enum "E1"; + enum "E2"; + enum "E3"; + } + description + "The valid rack numbers supported in Sysadmin."; + } + + typedef esdma-cpu { + type enumeration { + enum "Unknown"; + enum "RP0"; + enum "RP1"; + enum "SC0"; + enum "SC1"; + enum "LC0"; + enum "LC1"; + enum "LC2"; + enum "LC3"; + enum "LC4"; + enum "LC5"; + enum "LC6"; + enum "LC7"; + enum "LC8"; + enum "LC9"; + enum "LC10"; + enum "LC11"; + enum "LC12"; + enum "LC13"; + enum "LC14"; + enum "LC15"; + enum "LC16"; + enum "LC17"; + enum "LC18"; + enum "LC19"; + enum "FC0"; + enum "FC1"; + enum "FC2"; + enum "FC3"; + enum "FC4"; + enum "FC5"; + enum "CB0"; + enum "SW0"; + } + description + "The set of CPU enumerations that have control plane Ethernet switches or run the MLAP protocol."; + } + + typedef esdma-switch-type-enum { + type enumeration { + enum "RP-SW"; + enum "SC-SW"; + enum "LC-SW"; + enum "F-SW0"; + enum "F-SW1"; + enum "FC-SW"; + enum "EOBC-SW"; + enum "EPC-SW"; + enum "CB-SW"; + enum "Unknown"; + enum "RP-SW1"; + enum "LC-SW1"; + enum "E-SW"; + } + description + "The list of Ethernet switch types"; + } + + typedef esdma-switch-yes-no-enum { + type enumeration { + enum "Yes"; + enum "No"; + } + } + + typedef esdma-switch-sfp-inserted-enum { + type enumeration { + enum "Unknown"; + enum "Yes"; + enum "No"; + enum "Failed"; + } + } + + typedef esdma-switch-sfp-controller-enum { + type enumeration { + enum "Unknown"; + enum "Switch"; + enum "PHY"; + } + } + + typedef esdma-switch-sfp-tranceiver-type-enum { + type enumeration { + enum "Unspecified"; + enum "SFP"; + enum "QSFP"; + enum "Unknown"; + } + } + + typedef esdma-sfp-encoding-enum { + type enumeration { + enum "Unspecified"; + enum "8B/10B"; + enum "4B/5B"; + enum "NRZ"; + enum "Manchester"; + enum "SONET Scrambled"; + enum "64B/66B"; + enum "Unknown"; + } + } + + typedef esdma-qsfp-transceiver-enum { + type enumeration { + enum "QSFP-40G-LR4"; + enum "QSFP-40G-SR4"; + enum "QSFP-40G-CR4-Active"; + enum "QSFP-40G-CR4-Passive"; + enum "QSFP-100G-LR4"; + enum "QSFP-100G-SR4"; + enum "QSFP-100G-AOC"; + enum "QSFP-100G-DAC"; + enum "Unknown"; + } + } + + typedef esdma-switch-sfp-type-enum { + type enumeration { + enum "None"; + enum "SFP-10G-SR"; + enum "SFP-10G-LR"; + enum "SFP-10G-LRM"; + enum "SFP-1G-SX"; + enum "SFP-1G-LX"; + enum "SFP-1000Base-T"; + enum "SFP-40G-SR4"; + enum "SFP-40G-LR4"; + enum "Unsupported"; + enum "SFP-10G-CU3M"; + enum "SFP-100G-SR4"; + enum "SFP-100G-LR4"; + enum "SFP-100G-AOC"; + enum "SFP-100G-DAC"; + } + } + + typedef esdma-switch-port-type { + type int32 { + range "0..127"; + } + description + "A type defining the allowable switch port numbers"; + } + + typedef esdma-switch-fdb-ports { + type int32 { + range "-1..256"; + } + description + "A type defining the allowable switch fdb port numbers"; + } + + typedef esdma-switch-port-state { + type enumeration { + enum "Unknown"; + enum "Test"; + enum "Down"; + enum "Up"; + enum "Degraded-L"; + enum "Degraded-R"; + } + description + "The switch port up and down states"; + } + + typedef switch-forwarding-state { + type enumeration { + enum "Unknown"; + enum "-"; + enum "Disabled"; + enum "Blocking"; + enum "Learning"; + enum "Forwarding"; + } + description + "The set of switch port forwarding states"; + } + + typedef switch-traffic-class-enum { + type int8 { + range "-1..7"; + } + } + + typedef esdma-sdr-id { + type uint8; + } + + typedef esd-cir-eir-type { + type enumeration { + enum "CIR"; + enum "PIR"; + } + } + + typedef esd-percentage { + type uint8 { + range "0..100"; + } + } + + typedef mlap-ep-type { + type enumeration { + enum "Unknown"; + enum "RP"; + enum "SC"; + enum "FC"; + enum "LC"; + enum "F-SW"; + enum "CB"; + enum "SW"; + } + } + + typedef mlap-state-enum { + type enumeration { + enum "-"; + enum "Down"; + enum "Up"; + enum "Admin Down"; + enum "Do Not Use"; + enum "Invalid"; + enum "Active"; + enum "Standby"; + enum "Rem Managed"; + } + description + "The set of enumerated values that MLAP uses to manage a port's protocol state"; + } + + typedef mlap-protocol-enum { + type enumeration { + enum "Internal"; + enum "External"; + } + description + "The types of MLAP protocol"; + } + + typedef mlap-trace-verbosity { + type enumeration { + enum "Off"; + enum "Low"; + enum "Medium"; + enum "High"; + } + } + + typedef vlan-id-type { + type uint16 { + range "0..4095"; + } + } + + typedef switch-data-direction-enum { + type enumeration { + enum "-"; + enum "Both"; + enum "Rx"; + enum "Tx"; + enum "Unknown"; + enum "Invalid"; + } + description + "Switch data direction"; + } + + typedef switch-table-type-enum { + type enumeration { + enum "-"; + enum "Port"; + enum "VLAN"; + enum "TCAM"; + enum "Unknown"; + } + } + + typedef switch-match-type-enum { + type enumeration { + enum "-"; + enum "Any"; + enum "Tagged"; + enum "Untagged"; + enum "Unknown"; + } + } + + typedef switch-action-type-enum { + type enumeration { + enum "-"; + enum "Translate"; + enum "Remove Outer"; + enum "Add Outer"; + enum "Drop"; + enum "Forward"; + enum "Unknown"; + } + } + + typedef esdma-sdr-traffic-type { + type enumeration { + enum "Unknown"; + enum "IPC"; + enum "MgmtEth"; + enum "All"; + enum "Invalid"; + } + } + + typedef esdma-trunk-member-status { + type enumeration { + enum "Disabled"; + enum "Enabled"; + enum "-"; + } + } + + typedef esdma_diag_shell_cmd_type { + type string; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan.yang new file mode 100644 index 000000000..f1e9a9b4d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan.yang @@ -0,0 +1,283 @@ +module Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ethsw-esdma-vlan"; + prefix esdma_vlan; + + import Cisco-IOS-XR-sysadmin-ethsw-esdma-types { + prefix esdma_types; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'show controller switch vlan' commands. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-07-06 { + description + "Initial revision with content extracted from esdma_cli.yang."; + } + + grouping sdr-list-summary { + list sdr-id { + key "sdr"; + leaf sdr { + type esdma_types:esdma-sdr-id; + } + leaf esd-sdr-name { + type string; + } + list vlan-id { + key "vlan"; + leaf vlan { + type esdma_types:vlan-id-type; + } + leaf vlan-hex { + type leafref { + path "../vlan"; + } + } + leaf vlan-use { + type string; + } + } + } + } + + grouping sdr-list { + list sdr-id { + key "sdr"; + leaf sdr { + type esdma_types:esdma-sdr-id; + } + leaf esd-sdr-name { + type string; + } + list vlan-id { + key "vlan"; + leaf vlan { + type esdma_types:vlan-id-type; + } + leaf vlan-hex { + type leafref { + path "../vlan"; + } + } + leaf vlan-use { + type string; + } + } + } + } + + grouping vlan-information-group { + container information { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card to list the switch VLAN information for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + leaf serial-num { + type string; + description + "Rack serial number"; + } + uses sdr-list; + } + container summary { + uses sdr-list-summary; + } + } + } + + grouping vlan-rule-info { + list rule-id { + leaf direction { + type esdma_types:switch-data-direction-enum; + description + "Packet direction this rule applies to"; + } + leaf match-table { + type esdma_types:switch-table-type-enum; + } + leaf match-type { + type esdma_types:switch-match-type-enum; + } + leaf match-vlan-id { + type esdma_types:vlan-id-type; + } + leaf action { + type esdma_types:switch-action-type-enum; + } + leaf action-vlan-id { + type esdma_types:vlan-id-type; + } + } + } + + grouping vlan-detail-group { + container vlan-detail { + list vlan-id { + key "vlan"; + leaf vlan { + type esdma_types:vlan-id-type; + } + container rules { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + uses vlan-rule-info; + } + } + } + } + } + } + + grouping vlan-summary-group { + container rules { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest to display the VLAN configuration for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list port-iter { + key "port"; + leaf port { + type esdma_types:esdma-switch-port-type; + description + "Switch port"; + } + list vlan-id { + key "vlan"; + leaf vlan { + type esdma_types:vlan-id-type; + description + "This VLAN represents a VLAN membership for this switch port. Multiple rules may exist to support this VLAN."; + } + uses vlan-rule-info; + } + } + } + } + } + + grouping vlan-membership-group { + container membership { + list location { + key "rack card switch-id"; + leaf rack { + type esdma_types:esdma-rack-num-enum; + } + leaf card { + type esdma_types:esdma-cpu; + description + "Card that owns a switch of interest to display the VLAN configuration for"; + } + leaf switch-id { + type esdma_types:esdma-switch-type-enum; + description + "Switch type"; + } + list vlan-id { + key "vlan"; + leaf vlan { + type esdma_types:vlan-id-type; + } + leaf vlan-hex { + type leafref { + path "../vlan"; + } + } + leaf-list port { + type uint8; + } + } + } + } + } + + grouping switch-vlan-group { + container vlan { + uses vlan-detail-group; + uses vlan-summary-group; + uses vlan-information-group; + uses vlan-membership-group; + } + } + + grouping switch-vlan-group-ncs5500 { + container vlan { + uses vlan-information-group; + uses vlan-membership-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ext-alarm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ext-alarm.yang new file mode 100644 index 000000000..fcac381bc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ext-alarm.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-sysadmin-ext-alarm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ext-alarm"; + prefix ext-alarm; + + 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 SysAdmin configuration. + + This module defines the external alarms config + functionality in the sysadmin plane. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-25 { + description + "Validate callback for ext-alarm config added."; + semver:module-version "1.0.0"; + } + revision 2020-07-31 { + description + "Initial revision."; + } + + container alarm-contact-config { + list alarm-contact { + key "num"; + leaf num { + type uint32 { + range "0..3"; + } + must "true() = (../desc)" { + error-message + "User cannot configure pin alone, + Usage: desc <> severity <>"; + } + description + "Alarm pin number [0-3]"; + } + leaf desc { + type string { + length "1..80"; + } + must "true() = (../severity)" { + error-message + "User must configure both desc and severity, + Usage: desc <> severity <>"; + } + config true; + description + "Description of the alarm"; + } + leaf severity { + type enumeration { + enum "minor" { + value 3; + } + enum "major" { + value 4; + } + enum "critical" { + value 5; + } + } + must "true() = (../desc)" { + error-message + "User must configure both desc and severity, + Usage: severity <> desc <>"; + } + config true; + description + "Severity of the alarm"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-external-usb.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-external-usb.yang new file mode 100644 index 000000000..456dd13a4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-external-usb.yang @@ -0,0 +1,52 @@ +module Cisco-IOS-XR-sysadmin-external-usb { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-external-usb"; + prefix extusbconf; + + 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 SysAdmin configuration. + + This module defines the top level container for + all 'external-usb' commands for Sysadmin. + + Copyright(c) 2017 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-10 { + description + "Initial revision. Added config to disable"; + } + + container external-usb { + container config { + config true; + leaf disable { + type empty; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd.yang new file mode 100644 index 000000000..c9674a60d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd.yang @@ -0,0 +1,684 @@ +module Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd"; + prefix fabric_sfe; + + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-05 { + description + "Added new header field to link-info CLI"; + semver:module-version "2.0.0"; + } + revision 2020-05-08 { + description + "Removed the usage of link_cxp_port, link_cxp_lane and asic_cardname"; + semver:module-version "1.0.0"; + } + revision 2019-07-01 { + description + "Namespace and module name changed to sepcify NCS5500 platform"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-09-30 { + description + "Add fsm-state as a leaf to ensure compilation"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping sfe_drvr_info { + list drvr_info { + key "idx"; + leaf idx { + type int32; + } + leaf drv_version { + type uint32; + } + leaf coeff_major_rev { + type uint32; + } + leaf coeff_minor_rev { + type uint32; + } + leaf func_role { + type string; + } + leaf issu_role { + type string; + } + leaf rack_name { + type string; + } + leaf rack_type { + type string; + } + leaf rack_num { + type string; + } + leaf ip_address { + type string; + } + leaf card_avail_mask { + type uint32; + } + leaf asic_avail_mask { + type uint64; + } + leaf exp_asic_avail_mask { + type uint64; + } + leaf ucmc_ratio { + type uint32; + } + leaf pm_conn_active { + type boolean; + } + leaf platform_local_conn_active { + type boolean; + } + leaf fsdb_conn_active { + type boolean; + } + leaf fgid_conn_active { + type boolean; + } + leaf cm_conn_active { + type boolean; + } + leaf ccc_conn_active { + type boolean; + } + leaf issu_mgr_conn_active { + type boolean; + } + leaf peer_sfe_conn_active { + type boolean; + } + leaf cxp_conn_active { + type boolean; + } + leaf pm_reg_active { + type boolean; + } + leaf platform_local_reg_active { + type boolean; + } + leaf fsdb_reg_active { + type boolean; + } + leaf fgid_reg_active { + type boolean; + } + leaf cm_reg_active { + type boolean; + } + leaf issu_mgr_reg_active { + type boolean; + } + leaf peer_sfe_reg_active { + type boolean; + } + leaf cxp_reg_active { + type boolean; + } + leaf num_pm_conn_reqs { + type uint8; + } + leaf num_platform_local_conn_reqs { + type uint8; + } + leaf num_fsdb_conn_reqs { + type uint8; + } + leaf num_fgid_conn_reqs { + type uint8; + } + leaf num_fstats_conn_reqs { + type uint8; + } + leaf num_cm_conn_reqs { + type uint8; + } + leaf num_ccc_conn_reqs { + type uint8; + } + leaf num_issu_mgr_conn_reqs { + type uint8; + } + leaf num_peer_sfe_conn_reqs { + type uint8; + } + leaf num_cxp_conn_reqs { + type uint8; + } + leaf is_gaspp_registered { + type boolean; + } + leaf is_cih_registered { + type boolean; + } + leaf startup_time { + type string; + } + list asic_list { + key "asic_idx"; + leaf asic_idx { + type uint32; + } + leaf asic_instance { + type string; + } + leaf card_present { + type string; + } + leaf card_powered { + type string; + } + leaf hotplug_event { + type uint32; + } + leaf asic_type { + type string; + } + leaf asic_cardname { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf fab_plane { + type string; + } + leaf fab_group { + type string; + } + leaf fgid_download { + type string; + } + leaf asic_state { + type string; + } + leaf asic_disconnect_signal { + type string; + } + leaf last_init_cause { + type string; + } + leaf num_pon_resets { + type uint32; + } + leaf num_hard_resets { + type uint32; + } + } + } + } + + grouping sfe_link_info_asic_instance { + list instance { + key "instance-id"; + leaf instance-id { + type fabric-types:sfe_instance_type_iosxrwbd; + } + leaf nodeid_str { + type string; + } + leaf is_show { + type boolean; + } + list link_idx_list { + key "link_idx"; + leaf link_idx { + type int64; + } + leaf link_id_str { + type string; + } + leaf phy_link { + type string; + } + leaf speed { + type string; + } + leaf stage { + type string; + } + leaf fab_plane { + type uint32; + } + leaf fab_group { + type uint32; + } + leaf flap_cnt { + type uint32; + } + leaf num_admin_shuts { + type uint32; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf flags { + type string; + } + leaf far_end_link_fsdb { + type string; + } + leaf far_end_link_hw { + type string; + } + leaf link_cxp_port { + type string; + } + leaf link_cxp_lane { + type string; + } + leaf coeff1 { + type uint32; + } + leaf coeff2 { + type uint32; + } + leaf fsm_state { + type string; + } + leaf TX_Control_cells_counter { + type uint64; + } + leaf TX_Data_cell_counter { + type uint64; + } + leaf TX_Data_byte_counter { + type uint64; + } + leaf TX_BEC_retransmit { + type uint64; + } + leaf TX_Asyn_fifo_rate { + type uint64; + } + leaf RX_Control_cells_counter { + type uint64; + } + leaf RX_Data_cell_counter { + type uint64; + } + leaf RX_Data_byte_counter { + type uint64; + } + leaf RX_BEC_retransmit { + type uint64; + } + leaf RX_Asyn_fifo_rate { + type uint64; + } + leaf RX_CRC_errors_counter { + type uint64; + } + leaf RX_LFEC_FEC_correctable_error { + type uint64; + } + leaf RX_LFEC_FEC_uncorrectable_errors { + type uint64; + } + leaf RX_dropped_retransmitted_control { + type uint64; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + leaf down_reasons { + type string; + } + } + } + } + } + + grouping sfe_link_info_stats_asic_instance { + container stats { + container data { + uses sfe_link_info_asic_instance; + } + container ctrl { + uses sfe_link_info_asic_instance; + } + container all { + uses sfe_link_info_asic_instance; + } + } + } + + grouping sfe_statistics_asic_instance { + list instance { + key "instance-id"; + leaf instance-id { + type fabric-types:sfe_instance_type_iosxrwbd; + } + leaf stats_output { + type string; + } + } + } + + grouping sfe_trace { + container sfe_driver { + uses show-trace:traceable; + } + } + + grouping sfe_parse_link_instance { + list instance { + key "instance-id"; + leaf instance-id { + type fabric-types:sfe_instance_type_iosxrwbd; + } + leaf is_show { + type boolean; + } + list link_idx_list { + key "link_idx"; + leaf link_idx { + type int64; + } + leaf rack_id_str { + type string; + } + leaf slot_id_str { + type string; + } + leaf asic_inst_id { + type uint32; + } + leaf link_num_id { + type uint32; + } + leaf log_slot { + type uint32; + } + leaf phy_slot { + type uint32; + } + leaf fap_id { + type uint32; + } + leaf unit { + type uint32; + } + leaf sfi_id { + type uint32; + } + leaf ip_addr { + type string; + } + leaf driver_run { + type string; + } + } + } + } + + grouping sfe { + container sfe { + description + "Fabric SFE driver commands"; + container driver { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_iosxrwbd; + } + leaf description { + type string; + default "location (R/S)."; + } + uses sfe_drvr_info; + } + } + container statistics { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_iosxrwbd; + } + leaf description { + type string; + default "location (R/S)."; + } + list asic_types { + key "asicname"; + leaf asicname { + type string; + } + list block { + key "blockname"; + leaf blockname { + type string; + } + uses sfe_statistics_asic_instance; + } + } + } + } + container link-info { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_iosxrwbd; + } + leaf description { + type string; + default "location (R/S)"; + } + list rx { + key "start end"; + leaf start { + type fabric-types:sfe_link_type_iosxrwbd; + } + leaf end { + type fabric-types:sfe_link_type_iosxrwbd; + } + container detail { + container topo { + uses sfe_link_info_asic_instance; + } + container flap { + uses sfe_link_info_asic_instance; + } + } + container topo { + uses sfe_link_info_asic_instance; + } + container flap { + uses sfe_link_info_asic_instance; + } + uses sfe_link_info_stats_asic_instance; + } + list tx { + key "start end"; + leaf start { + type fabric-types:sfe_link_type_iosxrwbd; + } + leaf end { + type fabric-types:sfe_link_type_iosxrwbd; + } + container detail { + uses sfe_link_info_asic_instance; + } + uses sfe_link_info_asic_instance; + uses sfe_link_info_stats_asic_instance; + } + } + } + container diagshell { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_iosxrwbd; + } + leaf description { + type string; + default "location (R/S)"; + } + list instance { + key "instance_num"; + leaf instance_num { + type fabric-types:fabric_diag_shell_instance_num_type_iosxrwbd; + } + list diag_cmd { + key "cmd_str"; + leaf cmd_str { + type fabric-types:fabric_diag_shell_cmd_type; + } + list bytes { + key "byte_idx"; + leaf byte_idx { + type int64; + } + leaf data { + type string; + } + } + } + } + } + } + container register { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_iosxrwbd; + } + leaf description { + type string; + default "location (R/S)"; + } + list instance { + key "instance_num"; + leaf instance_num { + type fabric-types:fabric_diag_shell_instance_num_type_iosxrwbd; + } + list bytes { + key "byte_idx"; + leaf byte_idx { + type int64; + } + leaf data { + type string; + } + } + } + } + } + container dump-file { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_iosxrwbd; + } + leaf description { + type string; + default "location (R/S)"; + } + list file { + key "file_name"; + leaf file_name { + type string; + } + list bytes { + key "byte_idx"; + leaf byte_idx { + type int64; + } + leaf data { + type string; + } + } + } + } + } + container parse { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_iosxrwbd; + } + leaf description { + type string; + default "location (R/S)"; + } + list link { + key "start end"; + leaf start { + type fabric-types:sfe_link_type_iosxrwbd; + } + leaf end { + type fabric-types:sfe_link_type_iosxrwbd; + } + uses sfe_parse_link_instance; + } + } + } + } + container sfe_trace { + uses sfe_trace; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500.yang new file mode 100644 index 000000000..ed9f3431f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500.yang @@ -0,0 +1,685 @@ +module Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500"; + prefix fabric_sfe; + + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-29 { + description + "Implemented single fabric-type model for all platform"; + semver:module-version "2.0.0"; + } + revision 2020-05-08 { + description + "Removed the usage of link_cxp_port, link_cxp_lane and asic_cardname"; + semver:module-version "1.0.0"; + } + revision 2019-07-01 { + description + "Namespace and module name changed to sepcify NCS5500 platform"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-09-30 { + description + "Add fsm-state as a leaf to ensure compilation"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping sfe_drvr_info { + list drvr_info { + key "idx"; + leaf idx { + type int32; + } + leaf drv_version { + type uint32; + } + leaf coeff_major_rev { + type uint32; + } + leaf coeff_minor_rev { + type uint32; + } + leaf func_role { + type string; + } + leaf issu_role { + type string; + } + leaf rack_name { + type string; + } + leaf rack_type { + type string; + } + leaf rack_num { + type string; + } + leaf ip_address { + type string; + } + leaf card_avail_mask { + type uint32; + } + leaf asic_avail_mask { + type uint64; + } + leaf exp_asic_avail_mask { + type uint64; + } + leaf ucmc_ratio { + type uint32; + } + leaf pm_conn_active { + type boolean; + } + leaf platform_local_conn_active { + type boolean; + } + leaf fsdb_conn_active { + type boolean; + } + leaf fgid_conn_active { + type boolean; + } + leaf cm_conn_active { + type boolean; + } + leaf ccc_conn_active { + type boolean; + } + leaf issu_mgr_conn_active { + type boolean; + } + leaf peer_sfe_conn_active { + type boolean; + } + leaf cxp_conn_active { + type boolean; + } + leaf pm_reg_active { + type boolean; + } + leaf platform_local_reg_active { + type boolean; + } + leaf fsdb_reg_active { + type boolean; + } + leaf fgid_reg_active { + type boolean; + } + leaf cm_reg_active { + type boolean; + } + leaf issu_mgr_reg_active { + type boolean; + } + leaf peer_sfe_reg_active { + type boolean; + } + leaf cxp_reg_active { + type boolean; + } + leaf num_pm_conn_reqs { + type uint8; + } + leaf num_platform_local_conn_reqs { + type uint8; + } + leaf num_fsdb_conn_reqs { + type uint8; + } + leaf num_fgid_conn_reqs { + type uint8; + } + leaf num_fstats_conn_reqs { + type uint8; + } + leaf num_cm_conn_reqs { + type uint8; + } + leaf num_ccc_conn_reqs { + type uint8; + } + leaf num_issu_mgr_conn_reqs { + type uint8; + } + leaf num_peer_sfe_conn_reqs { + type uint8; + } + leaf num_cxp_conn_reqs { + type uint8; + } + leaf is_gaspp_registered { + type boolean; + } + leaf is_cih_registered { + type boolean; + } + leaf startup_time { + type string; + } + list asic_list { + key "asic_idx"; + leaf asic_idx { + type uint32; + } + leaf asic_instance { + type string; + } + leaf card_present { + type string; + } + leaf card_powered { + type string; + } + leaf hotplug_event { + type uint32; + } + leaf asic_type { + type string; + } + leaf asic_cardname { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf fab_plane { + type string; + } + leaf fab_group { + type string; + } + leaf fgid_download { + type string; + } + leaf asic_state { + type string; + } + leaf asic_disconnect_signal { + type string; + } + leaf last_init_cause { + type string; + } + leaf num_pon_resets { + type uint32; + } + leaf num_hard_resets { + type uint32; + } + } + } + } + + grouping sfe_link_info_asic_instance { + list instance { + key "instance-id"; + leaf instance-id { + type fabric-types:sfe_instance_type_ncs5500; + } + leaf nodeid_str { + type string; + } + leaf is_show { + type boolean; + } + list link_idx_list { + key "link_idx"; + leaf link_idx { + type int64; + } + leaf link_id_str { + type string; + } + leaf phy_link { + type string; + } + leaf speed { + type string; + } + leaf stage { + type string; + } + leaf fab_plane { + type uint32; + } + leaf fab_group { + type uint32; + } + leaf flap_cnt { + type uint32; + } + leaf num_admin_shuts { + type uint32; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf flags { + type string; + } + leaf far_end_link_fsdb { + type string; + } + leaf far_end_link_hw { + type string; + } + leaf link_cxp_port { + type string; + } + leaf link_cxp_lane { + type string; + } + leaf coeff1 { + type uint32; + } + leaf coeff2 { + type uint32; + } + leaf fsm_state { + type string; + } + leaf TX_Control_cells_counter { + type uint64; + } + leaf TX_Data_cell_counter { + type uint64; + } + leaf TX_Data_byte_counter { + type uint64; + } + leaf TX_BEC_retransmit { + type uint64; + } + leaf TX_Asyn_fifo_rate { + type uint64; + } + leaf RX_Control_cells_counter { + type uint64; + } + leaf RX_Data_cell_counter { + type uint64; + } + leaf RX_Data_byte_counter { + type uint64; + } + leaf RX_BEC_retransmit { + type uint64; + } + leaf RX_Asyn_fifo_rate { + type uint64; + } + leaf RX_CRC_errors_counter { + type uint64; + } + leaf RX_LFEC_FEC_correctable_error { + type uint64; + } + leaf RX_LFEC_FEC_uncorrectable_errors { + type uint64; + } + leaf RX_dropped_retransmitted_control { + type uint64; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + leaf down_reasons { + type string; + } + } + } + } + } + + grouping sfe_link_info_stats_asic_instance { + container stats { + container data { + uses sfe_link_info_asic_instance; + } + container ctrl { + uses sfe_link_info_asic_instance; + } + container all { + uses sfe_link_info_asic_instance; + } + } + } + + grouping sfe_statistics_asic_instance { + list instance { + key "instance-id"; + leaf instance-id { + type fabric-types:sfe_instance_type_ncs5500; + } + leaf stats_output { + type string; + } + } + } + + grouping sfe_trace { + container sfe_driver { + uses show-trace:traceable; + } + } + + grouping sfe_parse_link_instance { + list instance { + key "instance-id"; + leaf instance-id { + type fabric-types:sfe_instance_type_ncs5500; + } + leaf is_show { + type boolean; + } + list link_idx_list { + key "link_idx"; + leaf link_idx { + type int64; + } + leaf rack_id_str { + type string; + } + leaf slot_id_str { + type string; + } + leaf asic_inst_id { + type uint32; + } + leaf link_num_id { + type uint32; + } + leaf log_slot { + type uint32; + } + leaf phy_slot { + type uint32; + } + leaf fap_id { + type uint32; + } + leaf unit { + type uint32; + } + leaf sfi_id { + type uint32; + } + leaf ip_addr { + type string; + } + leaf driver_run { + type string; + } + } + } + } + + grouping sfe { + container sfe { + description + "Fabric SFE driver commands"; + container driver { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_ncs5500; + } + leaf description { + type string; + default "location (R/S)."; + } + uses sfe_drvr_info; + } + } + container statistics { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_ncs5500; + } + leaf description { + type string; + default "location (R/S)."; + } + list asic_types { + key "asicname"; + leaf asicname { + type string; + } + list block { + key "blockname"; + leaf blockname { + type string; + } + uses sfe_statistics_asic_instance; + } + } + } + } + container link-info { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_ncs5500; + } + leaf description { + type string; + default "location (R/S)"; + } + list rx { + key "start end"; + leaf start { + type fabric-types:sfe_link_type; + } + leaf end { + type fabric-types:sfe_link_type; + } + container detail { + container topo { + uses sfe_link_info_asic_instance; + } + container flap { + uses sfe_link_info_asic_instance; + } + } + container topo { + uses sfe_link_info_asic_instance; + } + container flap { + uses sfe_link_info_asic_instance; + } + uses sfe_link_info_stats_asic_instance; + } + list tx { + key "start end"; + leaf start { + type fabric-types:sfe_link_type; + } + leaf end { + type fabric-types:sfe_link_type; + } + container detail { + uses sfe_link_info_asic_instance; + } + uses sfe_link_info_asic_instance; + uses sfe_link_info_stats_asic_instance; + } + } + } + container diagshell { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_ncs5500; + } + leaf description { + type string; + default "location (R/S)"; + } + list instance { + key "instance_num"; + leaf instance_num { + type fabric-types:fabric_diag_shell_instance_num_type; + } + list diag_cmd { + key "cmd_str"; + leaf cmd_str { + type fabric-types:fabric_diag_shell_cmd_type; + } + list bytes { + key "byte_idx"; + leaf byte_idx { + type int64; + } + leaf data { + type string; + } + } + } + } + } + } + container register { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_ncs5500; + } + leaf description { + type string; + default "location (R/S)"; + } + list instance { + key "instance_num"; + leaf instance_num { + type fabric-types:fabric_diag_shell_instance_num_type; + } + list bytes { + key "byte_idx"; + leaf byte_idx { + type int64; + } + leaf data { + type string; + } + } + } + } + } + container dump-file { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_ncs5500; + } + leaf description { + type string; + default "location (R/S)"; + } + list file { + key "file_name"; + leaf file_name { + type string; + } + list bytes { + key "byte_idx"; + leaf byte_idx { + type int64; + } + leaf data { + type string; + } + } + } + } + } + container parse { + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:sfe_location_type_ncs5500; + } + leaf description { + type string; + default "location (R/S)"; + } + list link { + key "start end"; + leaf start { + type fabric-types:sfe_link_type; + } + leaf end { + type fabric-types:sfe_link_type; + } + uses sfe_parse_link_instance; + } + } + } + } + container sfe_trace { + uses sfe_trace; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-iosxrwbd.yang new file mode 100644 index 000000000..7c2a87bcf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-iosxrwbd.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-sysadmin-fabric-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-iosxrwbd"; + prefix fabric; + + import Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd { + prefix fabric-fgid; + } + import Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd { + prefix fabric-fsdb; + } + import Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd { + prefix fabric-fsdb-aggr; + } + import Cisco-IOS-XR-sysadmin-fabric-driver-sfe-iosxrwbd { + prefix fabric-sfe; + } + import Cisco-IOS-XR-sysadmin-fabric-qsfpdd { + prefix fabric-qsfpdd; + } + 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 SysAdmin configuration. + + This module defines CLI support of fabric components + for ncs6k. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-09 { + description + "Removed the cxp fields from the ufi yang file, since CXP is not supported in ufi based platforms"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2017-06-15 { + description + "Split the file based on the platform"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping fabric_action_cmds { + container fabric_action { + container fabric { + description + "Fabric resource commands"; + uses fabric-fsdb-aggr:fsdb_aggr_ppu; + } + } + } + + grouping fabric_clear { + container fabric { + description + "Fabric resource commands"; + uses fabric-fsdb-aggr:fsdb_aggr_clear; + } + } + + grouping fabric { + container fabric { + description + "Fabric resource commands"; + container fabric { + description + "Fabric configuration"; + container fsdbagg { + uses fabric-fsdb-aggr:fsdb_agg_conf_plane; + } + uses fabric-fgid:fgid_conf_resource; + } + container oper { + config false; + uses fabric-qsfpdd:fc_qsfpdd; + uses fabric-fgid:fgid; + uses fabric-fsdb-aggr:fsdb_aggr; + uses fabric-fsdb:fsdb_svr; + } + } + container sfe_oper { + config false; + uses fabric-sfe:sfe; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd.yang new file mode 100644 index 000000000..2d81870db --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd.yang @@ -0,0 +1,583 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-iosxrwbd"; + prefix fabric_fgid; + + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping fgid_conf_resource { + container fgid { + container resource { + container sdr { + container allocation { + leaf percent { + type int32 { + range "20..50"; + } + } + } + } + } + } + } + + grouping fgid_information_show { + list id { + key "fgid_id"; + leaf fgid_id { + type fabric-types:fabric_fgid_id_type_iosxrwbd; + } + list hex_bitmaps { + key "rack_number"; + leaf rack_number { + type int32; + } + leaf bitmap { + type string; + } + } + list binary_bitmaps { + key "rack_number"; + leaf rack_number { + type int32; + } + leaf bitmap { + type string; + } + } + leaf total_asso_fabricq_ids { + type int32; + } + list asso_fabricq_ids { + key "fabricq_id"; + leaf fabricq_id { + type string; + } + } + leaf asso_client_info { + type string; + } + list drivers { + key "rack_number"; + leaf rack_number { + type int32; + } + list clients { + key "client_idx"; + leaf client_idx { + type int32; + } + leaf show_asic_0 { + type boolean; + default "false"; + } + leaf asic_0_bitmap { + type string; + } + leaf show_asic_1 { + type boolean; + default "false"; + } + leaf asic_1_bitmap { + type string; + } + leaf show_asic_2 { + type boolean; + default "false"; + } + leaf asic_2_bitmap { + type string; + } + leaf show_asic_3 { + type boolean; + default "false"; + } + leaf asic_3_bitmap { + type string; + } + leaf show_asic_4 { + type boolean; + default "false"; + } + leaf asic_4_bitmap { + type string; + } + leaf show_asic_5 { + type boolean; + default "false"; + } + leaf asic_5_bitmap { + type string; + } + leaf show_asic_6 { + type boolean; + default "false"; + } + leaf asic_6_bitmap { + type string; + } + leaf show_asic_7 { + type boolean; + default "false"; + } + leaf asic_7_bitmap { + type string; + } + leaf show_asic_8 { + type boolean; + default "false"; + } + leaf asic_8_bitmap { + type string; + } + leaf show_asic_9 { + type boolean; + default "false"; + } + leaf asic_9_bitmap { + type string; + } + leaf show_asic_10 { + type boolean; + default "false"; + } + leaf asic_10_bitmap { + type string; + } + leaf show_asic_11 { + type boolean; + default "false"; + } + leaf asic_11_bitmap { + type string; + } + leaf show_asic_12 { + type boolean; + default "false"; + } + leaf asic_12_bitmap { + type string; + } + leaf show_asic_13 { + type boolean; + default "false"; + } + leaf asic_13_bitmap { + type string; + } + leaf show_asic_14 { + type boolean; + default "false"; + } + leaf asic_14_bitmap { + type string; + } + leaf show_asic_15 { + type boolean; + default "false"; + } + leaf asic_15_bitmap { + type string; + } + leaf show_asic_16 { + type boolean; + default "false"; + } + leaf asic_16_bitmap { + type string; + } + leaf show_asic_17 { + type boolean; + default "false"; + } + leaf asic_17_bitmap { + type string; + } + leaf show_asic_18 { + type boolean; + default "false"; + } + leaf asic_18_bitmap { + type string; + } + leaf show_asic_19 { + type boolean; + default "false"; + } + leaf asic_19_bitmap { + type string; + } + leaf show_asic_20 { + type boolean; + default "false"; + } + leaf asic_20_bitmap { + type string; + } + leaf show_asic_21 { + type boolean; + default "false"; + } + leaf asic_21_bitmap { + type string; + } + leaf show_asic_22 { + type boolean; + default "false"; + } + leaf asic_22_bitmap { + type string; + } + leaf show_asic_23 { + type boolean; + default "false"; + } + leaf asic_23_bitmap { + type string; + } + leaf show_asic_24 { + type boolean; + default "false"; + } + leaf asic_24_bitmap { + type string; + } + leaf show_asic_25 { + type boolean; + default "false"; + } + leaf asic_25_bitmap { + type string; + } + leaf show_asic_26 { + type boolean; + default "false"; + } + leaf asic_26_bitmap { + type string; + } + leaf show_asic_27 { + type boolean; + default "false"; + } + leaf asic_27_bitmap { + type string; + } + leaf show_asic_28 { + type boolean; + default "false"; + } + leaf asic_28_bitmap { + type string; + } + leaf show_asic_29 { + type boolean; + default "false"; + } + leaf asic_29_bitmap { + type string; + } + leaf show_asic_30 { + type boolean; + default "false"; + } + leaf asic_30_bitmap { + type string; + } + leaf show_asic_31 { + type boolean; + default "false"; + } + leaf asic_31_bitmap { + type string; + } + leaf show_asic_32 { + type boolean; + default "false"; + } + leaf asic_32_bitmap { + type string; + } + leaf show_asic_33 { + type boolean; + default "false"; + } + leaf asic_33_bitmap { + type string; + } + leaf show_asic_34 { + type boolean; + default "false"; + } + leaf asic_34_bitmap { + type string; + } + leaf show_asic_35 { + type boolean; + default "false"; + } + leaf asic_35_bitmap { + type string; + } + } + } + } + } + + grouping fgid_resource_show { + list sdr { + key "sdr_name"; + leaf sdr_name { + type string; + } + leaf description { + type string; + default "Secure Domain Router name."; + } + list application { + key "app_name"; + leaf app_name { + type string; + } + leaf description { + type string; + default "application."; + } + list ids_range { + key "id elements"; + leaf id { + type fabric-types:fabric_fgid_id_type_iosxrwbd; + } + leaf elements { + type fabric-types:fabric_fgid_elements_type_iosxrwbd; + } + list fgid_ids { + key "fgid_id line_idx"; + leaf fgid_id { + type string; + } + leaf line_idx { + type int32; + } + leaf sdr_name_h { + type string; + } + leaf app_name_h { + type string; + } + } + } + } + } + } + + grouping fgid_trace { + container fgid_mgr { + uses show-trace:traceable; + } + } + + grouping fgid_statistics_app_show { + list application { + key "app_name"; + leaf app_name { + type string; + } + leaf description { + type string; + default "application."; + } + leaf app_id { + type uint32; + } + leaf pool_id { + type uint32; + } + leaf inuse_fgids { + type uint32; + } + leaf hwm_fgids { + type uint32; + } + } + } + + grouping fgid_statistics_pool_show { + list pool_list { + key "pool_id"; + leaf pool_id { + type uint32; + } + leaf pool_name { + type string; + } + leaf pool_type { + type string; + } + leaf start_fgid { + type string; + } + leaf total_fgids { + type uint32; + } + leaf current_fgids { + type uint32; + } + leaf hwm_fgids { + type uint32; + } + } + } + + grouping fgid_statistics_sdr_show { + list sdr_list { + key "sdr_name"; + leaf sdr_name { + type string; + } + leaf description { + type string; + default "Secure Domain Router name."; + } + leaf sdr_total_fgids { + type uint32; + } + leaf sdr_inuse_fgids { + type uint32; + } + leaf sdr_hwm_fgids { + type uint32; + } + uses fgid_statistics_app_show; + } + } + + grouping fgid_statistics_system_show { + list stats_list { + key "system_stats"; + leaf system_stats { + type int32; + } + leaf system_total_fgids { + type uint32; + } + leaf system_inuse_fgids { + type uint32; + } + leaf system_hwm_fgids { + type uint32; + } + } + } + + grouping fgid_statistics_show { + uses fgid_statistics_system_show; + uses fgid_statistics_sdr_show; + uses fgid_statistics_pool_show; + } + + grouping fgid_program_error_show { + list program_error { + key "start end"; + leaf start { + type fabric-types:fabric_fgid_start_id_type_iosxrwbd; + } + leaf end { + type fabric-types:fabric_fgid_end_id_type_iosxrwbd; + } + list rack { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf rack_id_str { + type string; + } + leaf fgids_in_error { + type string; + } + leaf found_fgids_in_error { + type boolean; + } + leaf total_error_fgids { + type int32; + } + leaf incorrect_fgids_range { + type boolean; + } + leaf cmd_not_supported { + type boolean; + } + } + } + } + + grouping fgid { + container fgid { + description + "FGID management information"; + container information { + uses fgid_information_show; + } + container resource { + uses fgid_resource_show; + } + container statistics { + container all { + uses fgid_statistics_show; + } + container sdr { + uses fgid_statistics_sdr_show; + } + container pool { + uses fgid_statistics_pool_show; + } + container system { + uses fgid_statistics_system_show; + } + } + uses fgid_trace; + uses fgid_program_error_show; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500.yang new file mode 100644 index 000000000..8e70e3473 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500.yang @@ -0,0 +1,583 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500"; + prefix fabric_fgid; + + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping fgid_conf_resource { + container fgid { + container resource { + container sdr { + container allocation { + leaf percent { + type int32 { + range "20..50"; + } + } + } + } + } + } + } + + grouping fgid_information_show { + list id { + key "fgid_id"; + leaf fgid_id { + type fabric-types:fabric_fgid_id_type_ncs5500; + } + list hex_bitmaps { + key "rack_number"; + leaf rack_number { + type int32; + } + leaf bitmap { + type string; + } + } + list binary_bitmaps { + key "rack_number"; + leaf rack_number { + type int32; + } + leaf bitmap { + type string; + } + } + leaf total_asso_fabricq_ids { + type int32; + } + list asso_fabricq_ids { + key "fabricq_id"; + leaf fabricq_id { + type string; + } + } + leaf asso_client_info { + type string; + } + list drivers { + key "rack_number"; + leaf rack_number { + type int32; + } + list clients { + key "client_idx"; + leaf client_idx { + type int32; + } + leaf show_asic_0 { + type boolean; + default "false"; + } + leaf asic_0_bitmap { + type string; + } + leaf show_asic_1 { + type boolean; + default "false"; + } + leaf asic_1_bitmap { + type string; + } + leaf show_asic_2 { + type boolean; + default "false"; + } + leaf asic_2_bitmap { + type string; + } + leaf show_asic_3 { + type boolean; + default "false"; + } + leaf asic_3_bitmap { + type string; + } + leaf show_asic_4 { + type boolean; + default "false"; + } + leaf asic_4_bitmap { + type string; + } + leaf show_asic_5 { + type boolean; + default "false"; + } + leaf asic_5_bitmap { + type string; + } + leaf show_asic_6 { + type boolean; + default "false"; + } + leaf asic_6_bitmap { + type string; + } + leaf show_asic_7 { + type boolean; + default "false"; + } + leaf asic_7_bitmap { + type string; + } + leaf show_asic_8 { + type boolean; + default "false"; + } + leaf asic_8_bitmap { + type string; + } + leaf show_asic_9 { + type boolean; + default "false"; + } + leaf asic_9_bitmap { + type string; + } + leaf show_asic_10 { + type boolean; + default "false"; + } + leaf asic_10_bitmap { + type string; + } + leaf show_asic_11 { + type boolean; + default "false"; + } + leaf asic_11_bitmap { + type string; + } + leaf show_asic_12 { + type boolean; + default "false"; + } + leaf asic_12_bitmap { + type string; + } + leaf show_asic_13 { + type boolean; + default "false"; + } + leaf asic_13_bitmap { + type string; + } + leaf show_asic_14 { + type boolean; + default "false"; + } + leaf asic_14_bitmap { + type string; + } + leaf show_asic_15 { + type boolean; + default "false"; + } + leaf asic_15_bitmap { + type string; + } + leaf show_asic_16 { + type boolean; + default "false"; + } + leaf asic_16_bitmap { + type string; + } + leaf show_asic_17 { + type boolean; + default "false"; + } + leaf asic_17_bitmap { + type string; + } + leaf show_asic_18 { + type boolean; + default "false"; + } + leaf asic_18_bitmap { + type string; + } + leaf show_asic_19 { + type boolean; + default "false"; + } + leaf asic_19_bitmap { + type string; + } + leaf show_asic_20 { + type boolean; + default "false"; + } + leaf asic_20_bitmap { + type string; + } + leaf show_asic_21 { + type boolean; + default "false"; + } + leaf asic_21_bitmap { + type string; + } + leaf show_asic_22 { + type boolean; + default "false"; + } + leaf asic_22_bitmap { + type string; + } + leaf show_asic_23 { + type boolean; + default "false"; + } + leaf asic_23_bitmap { + type string; + } + leaf show_asic_24 { + type boolean; + default "false"; + } + leaf asic_24_bitmap { + type string; + } + leaf show_asic_25 { + type boolean; + default "false"; + } + leaf asic_25_bitmap { + type string; + } + leaf show_asic_26 { + type boolean; + default "false"; + } + leaf asic_26_bitmap { + type string; + } + leaf show_asic_27 { + type boolean; + default "false"; + } + leaf asic_27_bitmap { + type string; + } + leaf show_asic_28 { + type boolean; + default "false"; + } + leaf asic_28_bitmap { + type string; + } + leaf show_asic_29 { + type boolean; + default "false"; + } + leaf asic_29_bitmap { + type string; + } + leaf show_asic_30 { + type boolean; + default "false"; + } + leaf asic_30_bitmap { + type string; + } + leaf show_asic_31 { + type boolean; + default "false"; + } + leaf asic_31_bitmap { + type string; + } + leaf show_asic_32 { + type boolean; + default "false"; + } + leaf asic_32_bitmap { + type string; + } + leaf show_asic_33 { + type boolean; + default "false"; + } + leaf asic_33_bitmap { + type string; + } + leaf show_asic_34 { + type boolean; + default "false"; + } + leaf asic_34_bitmap { + type string; + } + leaf show_asic_35 { + type boolean; + default "false"; + } + leaf asic_35_bitmap { + type string; + } + } + } + } + } + + grouping fgid_resource_show { + list sdr { + key "sdr_name"; + leaf sdr_name { + type string; + } + leaf description { + type string; + default "Secure Domain Router name."; + } + list application { + key "app_name"; + leaf app_name { + type string; + } + leaf description { + type string; + default "application."; + } + list ids_range { + key "id elements"; + leaf id { + type fabric-types:fabric_fgid_id_type_ncs5500; + } + leaf elements { + type fabric-types:fabric_fgid_elements_type_ncs5500; + } + list fgid_ids { + key "fgid_id line_idx"; + leaf fgid_id { + type string; + } + leaf line_idx { + type int32; + } + leaf sdr_name_h { + type string; + } + leaf app_name_h { + type string; + } + } + } + } + } + } + + grouping fgid_trace { + container fgid_mgr { + uses show-trace:traceable; + } + } + + grouping fgid_statistics_app_show { + list application { + key "app_name"; + leaf app_name { + type string; + } + leaf description { + type string; + default "application."; + } + leaf app_id { + type uint32; + } + leaf pool_id { + type uint32; + } + leaf inuse_fgids { + type uint32; + } + leaf hwm_fgids { + type uint32; + } + } + } + + grouping fgid_statistics_pool_show { + list pool_list { + key "pool_id"; + leaf pool_id { + type uint32; + } + leaf pool_name { + type string; + } + leaf pool_type { + type string; + } + leaf start_fgid { + type string; + } + leaf total_fgids { + type uint32; + } + leaf current_fgids { + type uint32; + } + leaf hwm_fgids { + type uint32; + } + } + } + + grouping fgid_statistics_sdr_show { + list sdr_list { + key "sdr_name"; + leaf sdr_name { + type string; + } + leaf description { + type string; + default "Secure Domain Router name."; + } + leaf sdr_total_fgids { + type uint32; + } + leaf sdr_inuse_fgids { + type uint32; + } + leaf sdr_hwm_fgids { + type uint32; + } + uses fgid_statistics_app_show; + } + } + + grouping fgid_statistics_system_show { + list stats_list { + key "system_stats"; + leaf system_stats { + type int32; + } + leaf system_total_fgids { + type uint32; + } + leaf system_inuse_fgids { + type uint32; + } + leaf system_hwm_fgids { + type uint32; + } + } + } + + grouping fgid_statistics_show { + uses fgid_statistics_system_show; + uses fgid_statistics_sdr_show; + uses fgid_statistics_pool_show; + } + + grouping fgid_program_error_show { + list program_error { + key "start end"; + leaf start { + type fabric-types:fabric_fgid_start_id_type_ncs5500; + } + leaf end { + type fabric-types:fabric_fgid_end_id_type_ncs5500; + } + list rack { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf rack_id_str { + type string; + } + leaf fgids_in_error { + type string; + } + leaf found_fgids_in_error { + type boolean; + } + leaf total_error_fgids { + type int32; + } + leaf incorrect_fgids_range { + type boolean; + } + leaf cmd_not_supported { + type boolean; + } + } + } + } + + grouping fgid { + container fgid { + description + "FGID management information"; + container information { + uses fgid_information_show; + } + container resource { + uses fgid_resource_show; + } + container statistics { + container all { + uses fgid_statistics_show; + } + container sdr { + uses fgid_statistics_sdr_show; + } + container pool { + uses fgid_statistics_pool_show; + } + container system { + uses fgid_statistics_system_show; + } + } + uses fgid_trace; + uses fgid_program_error_show; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd.yang new file mode 100644 index 000000000..7c9544952 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd.yang @@ -0,0 +1,852 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd"; + prefix fabric_fsdb_aggr; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-12 { + description + "Added bport admin shut config"; + semver:module-version "2.0.0"; + } + revision 2019-05-24 { + description + "Support for show controller fabric health CLI."; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-06-07 { + description + "Updated the relative path for instance_folded config"; + } + revision 2017-05-22 { + description + "Support added to place fabric link ports in maintenance."; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + + typedef node_location_type_iosxrwbd { + type string; + } + + grouping plane_show { + list plane { + key "planeid"; + max-elements "1024"; + leaf planeid { + type fabric-types:plane_type_iosxrwbd; + } + leaf admin-state { + type string; + } + leaf ucast_oper_state { + type string; + } + leaf mcast_oper_state { + type string; + } + leaf plane_mode { + type string; + } + leaf ucast_cnt_up { + type int32; + } + leaf ucast_cnt_some_up { + type int32; + } + leaf ucast_cnt_dn { + type int32; + } + leaf mcast_cnt_up { + type int32; + } + leaf mcast_cnt_some_up { + type int32; + } + leaf mcast_cnt_dn { + type int32; + } + leaf total_bundles { + type int32; + } + leaf down_bundles { + type int32; + } + leaf rx_data_cells { + type uint64; + } + leaf tx_data_cells { + type uint64; + } + leaf rx_ce_cells_is_overflow { + type boolean; + } + leaf rx_ce_cells { + type uint64; + } + leaf rx_uce_cells_is_overflow { + type boolean; + } + leaf rx_uce_cells { + type uint64; + } + leaf rx_pe_cells_is_overflow { + type boolean; + } + leaf rx_pe_cells { + type uint64; + } + leaf ucast_lost_cells { + type uint32; + } + leaf mcast_lost_cells { + type uint32; + } + leaf last_clear_ts { + type string; + } + leaf last_clear_reason { + type string; + } + leaf last_clear_req_ts { + type string; + } + leaf last_clear_status { + type string; + } + leaf is_asic_internal_error { + type boolean; + } + leaf asic_internal_drops { + type uint64; + } + leaf asic_location_drops { + type string; + } + leaf ppu_state { + type string; + } + list asic_internal_error { + key "asic_number"; + leaf asic_number { + type int64; + } + leaf asic_location { + type string; + } + leaf link_crc_error { + type boolean; + } + leaf link_size_error { + type boolean; + } + leaf link_mis_align_error { + type boolean; + } + leaf link_code_group_error { + type boolean; + } + leaf link_no_sig_lock_error { + type boolean; + } + leaf link_no_sign_accept_error { + type boolean; + } + leaf link_token_error { + type boolean; + } + leaf error_token_count { + type boolean; + } + leaf last_asic_internal_error_ts { + type string; + } + } + } + } + + grouping fsdb_agg_conf_plane { + list plane { + key "plane_id"; + description + "Set state of fabric plane"; + leaf plane_id { + type fabric-types:conf_plane_type_iosxrwbd; + } + leaf shutdown { + type empty; + description + "Shut down state."; + } + } + container link { + description + "Link configuration commands"; + container port { + description + "Set admin state of a fabric link port"; + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:link_port_location_type_iosxrwbd; + } + leaf shutdown { + type empty; + description + "Shut down state."; + } + leaf maintenance { + type empty; + description + "maintenance state."; + } + } + } + } + container bundle { + description + "Bundle configuration commands"; + container port { + description + "Set admin state of a fabric bundle port"; + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type_iosxrwbd; + } + leaf shutdown { + type empty; + description + "Shut down state."; + } + } + } + } + } + + grouping fabric_sys_plane_health { + list sys_plane_info_list { + key "plane_id"; + leaf plane_id { + type int32; + } + leaf admin-state { + type string; + } + leaf plane_state { + type string; + } + leaf plane_mode { + type string; + } + leaf ucast_cnt_dn { + type int32; + } + leaf ucast_cnt_some_up { + type int32; + } + leaf total_bundles { + type int32; + } + leaf down_bundles { + type int32; + } + leaf ppu_state { + type string; + } + leaf racks_w_plane_fault { + type int32; + } + leaf is_data_drop { + type boolean; + } + } + } + + grouping fsdb_process_status { + list fsdb_status { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf status { + type boolean; + } + } + list available_rack_ids { + key "loc_str"; + leaf loc_str { + type string; + } + } + list rack_id_separator { + key "loc_str_sep"; + leaf loc_str_sep { + type string; + } + } + } + + grouping sfe_process_status { + list sfe_status { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf status { + type boolean; + } + } + list sfe_drvr_loc { + key "loc_str"; + leaf loc_str { + type string; + } + } + list sfe_fm_sep { + key "loc_str"; + leaf loc_str { + type string; + } + } + } + + grouping rack_plane_num_amba_reachable { + list reachable_amba { + key "idx"; + leaf idx { + type int32; + } + leaf num_reachable { + type int32; + } + } + } + + grouping fabric_rack_plane_health { + list rack_plane_info_list { + key "plane_id"; + leaf plane_id { + type int32; + } + leaf plane_state { + type string; + } + leaf plane_mode { + type string; + } + leaf asics_total { + type int32; + } + leaf asics_up { + type int32; + } + leaf asics_dn { + type int32; + } + uses rack_plane_num_amba_reachable; + } + } + + grouping fabric_rack_health { + list rack_info_list { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf rack_name { + type string; + } + leaf rack_type { + type string; + } + leaf plane_num { + type int32; + } + leaf sfe_asics_total { + type int32; + } + leaf sfe_asics_up { + type int32; + } + leaf sfe_asics_dn { + type int32; + } + leaf fia_asics_total { + type int32; + } + leaf fia_asics_up { + type int32; + } + leaf fia_asics_dn { + type int32; + } + leaf plane_up { + type uint32; + } + leaf plane_dn { + type uint32; + } + leaf plane_mcast_dn { + type uint32; + } + leaf plane_admin_dn { + type uint32; + } + leaf show_rack_plane_detail { + type boolean; + default "false"; + } + leaf amba_valid { + type int32; + } + } + } + + grouping fabric_health { + container fab_health { + list sys_info_list { + key "index_key"; + leaf index_key { + type int32; + } + leaf aggr_status { + type boolean; + } + leaf available_fm_loc { + type string; + } + leaf fm_loc_separator { + type string; + } + leaf rack_total { + type uint32; + } + leaf rack_lcc { + type uint32; + } + leaf rack_fcc { + type uint32; + } + leaf plane_up { + type uint32; + } + leaf plane_dn { + type uint32; + } + leaf plane_mcast_dn { + type uint32; + } + leaf plane_admin_dn { + type uint32; + } + leaf show_sys_plane_detail { + type boolean; + default "false"; + } + leaf sfe_asics_total { + type uint32; + } + leaf sfe_asics_up { + type uint32; + } + leaf sfe_asics_dn { + type uint32; + } + leaf fia_asics_total { + type uint32; + } + leaf fia_asics_up { + type uint32; + } + leaf fia_asics_dn { + type uint32; + } + uses fabric_sys_plane_health; + uses fabric_rack_health; + uses fsdb_process_status; + uses sfe_process_status; + } + } + } + + grouping fsdb_agg_plane_clear { + list plane { + key "planeid"; + leaf planeid { + type fabric-types:plane_type_iosxrwbd; + } + tailf:action "clear_counter" { + input; + output; + } + tailf:action "clear_stats" { + input; + output; + } + } + } + + grouping fsdb_aggr_trace { + container fsdb-aggregator { + description + "FSDB Aggregator information"; + container fsdbagg { + uses show-trace:traceable; + } + } + } + + grouping fsdb_aggr_ppu { + container ppu { + description + "Plane by plane upgrade."; + tailf:action "start" { + description + "Start PPU."; + input; + output { + leaf PPU { + type string; + } + } + } + tailf:action "force" { + description + "Force PPU."; + input; + output { + leaf PPU { + type string; + } + } + } + } + } + + grouping bundle_summary_show { + list bundle_summary_list { + key "idx"; + leaf idx { + type int32; + } + leaf total_bundles { + type uint32; + } + leaf down_bundles { + type uint32; + } + leaf bundles_not_connected { + type uint32; + } + leaf total_bports { + type uint32; + } + leaf down_bports { + type uint32; + } + leaf bports_not_connected { + type uint32; + } + } + } + + grouping bundle_all_show { + list bundle_all_list { + key "idx"; + leaf idx { + type int64; + } + leaf bundle_id { + type string; + } + leaf oper_state { + type string; + } + leaf plane_id { + type uint32; + } + leaf total_links { + type uint32; + } + leaf down_links { + type uint32; + } + leaf bport1 { + type string; + } + leaf bport2 { + type string; + } + } + } + + grouping bconnection_all_show { + list bconnection_all_list { + key "idx"; + leaf idx { + type int64; + } + leaf bport_id { + type string; + } + leaf oper_state { + type string; + } + leaf bport_expected_id { + type string; + } + leaf bport_actual_id { + type string; + } + leaf bport_mismatch { + type string; + } + } + } + + grouping bport_all_show { + list bport_all_list { + key "idx"; + leaf idx { + type int64; + } + leaf bport_id { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf down_flags { + type string; + } + } + } + + grouping bport_all_stats_show { + list bport_stats_all_racks { + key "idx"; + leaf idx { + type int32; + } + leaf total_racks { + type uint32; + } + list bport_stats_rack { + key "idx"; + leaf idx { + type int32; + } + leaf rack_num_str { + type string; + } + list bport_stats { + key "idx"; + leaf idx { + type int64; + } + leaf bport_id { + type string; + } + leaf rx_data_cells { + type uint64; + } + leaf tx_data_cells { + type uint64; + } + leaf rx_ce_cells_is_overflow { + type boolean; + } + leaf rx_ce_cells { + type uint64; + } + leaf rx_uce_cells_is_overflow { + type boolean; + } + leaf rx_uce_cells { + type uint64; + } + leaf rx_pe_cells_is_overflow { + type boolean; + } + leaf rx_pe_cells { + type uint64; + } + leaf last_clear_ts { + type string; + } + } + } + } + } + + grouping fsdb_cluster_aggr_bundle { + container connectivity { + list location { + key "loc_str"; + leaf loc_str { + type node_location_type_iosxrwbd; + } + uses bconnection_all_show; + } + } + } + + grouping fsdb_aggr_bundle { + container bundle { + container summary { + uses bundle_summary_show; + } + container all { + uses bundle_all_show; + } + container connection { + container all { + uses bconnection_all_show; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type_iosxrwbd; + } + uses bconnection_all_show; + } + } + container port { + container all { + uses bport_all_show; + container statistics { + uses bport_all_stats_show; + } + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type_iosxrwbd; + } + uses bport_all_show; + container statistics { + uses bport_all_stats_show; + } + } + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type_iosxrwbd; + } + uses bundle_all_show; + } + } + } + + grouping fsdb_aggr_clear { + container counter { + config false; + uses fsdb_agg_plane_clear; + } + container clear_statistics { + config false; + uses fsdb_agg_plane_clear; + } + } + + grouping fsdb_aggr { + container fsdbagg_active { + uses plane_show; + uses fsdb_aggr_bundle; + container statistics { + uses plane_show; + } + } + container fsdbagg_link { + list port { + key "portname"; + leaf portname { + type fabric-types:link_port_type_iosxrwbd; + } + leaf description { + type string; + default "port."; + } + } + } + container fsdbagg_sfe_asic_type { + list asic_types { + key "asicname"; + leaf asicname { + type string; + } + leaf description { + type string; + default "asic."; + } + list block { + key "blockname"; + leaf blockname { + type string; + } + leaf description { + type string; + default "asic block."; + } + } + } + } + container fsdbagg_standby { + uses plane_show; + container statistics { + uses plane_show; + } + } + uses fabric_health; + uses fsdb_aggr_trace; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500.yang new file mode 100644 index 000000000..0d2c85688 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500.yang @@ -0,0 +1,747 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500"; + prefix fabric_fsdb_aggr; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-01 { + description + "fsdb status has to be corrected in Fabric Health o/p"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + + grouping plane_show { + list plane { + key "planeid"; + max-elements "1024"; + leaf planeid { + type fabric-types:plane_type; + } + leaf admin-state { + type string; + } + leaf ucast_oper_state { + type string; + } + leaf mcast_oper_state { + type string; + } + leaf plane_mode { + type string; + } + leaf ucast_cnt_up { + type int32; + } + leaf ucast_cnt_some_up { + type int32; + } + leaf ucast_cnt_dn { + type int32; + } + leaf mcast_cnt_up { + type int32; + } + leaf mcast_cnt_some_up { + type int32; + } + leaf mcast_cnt_dn { + type int32; + } + leaf total_bundles { + type int32; + } + leaf down_bundles { + type int32; + } + leaf rx_data_cells { + type uint64; + } + leaf tx_data_cells { + type uint64; + } + leaf rx_ce_cells_is_overflow { + type boolean; + } + leaf rx_ce_cells { + type uint64; + } + leaf rx_uce_cells_is_overflow { + type boolean; + } + leaf rx_uce_cells { + type uint64; + } + leaf rx_pe_cells_is_overflow { + type boolean; + } + leaf rx_pe_cells { + type uint64; + } + leaf ucast_lost_cells { + type uint32; + } + leaf mcast_lost_cells { + type uint32; + } + leaf last_clear_ts { + type string; + } + leaf last_clear_reason { + type string; + } + leaf last_clear_req_ts { + type string; + } + leaf last_clear_status { + type string; + } + leaf is_asic_internal_error { + type boolean; + } + leaf asic_internal_drops { + type uint64; + } + leaf asic_location_drops { + type string; + } + leaf ppu_state { + type string; + } + list asic_internal_error { + key "asic_number"; + leaf asic_number { + type int64; + } + leaf asic_location { + type string; + } + leaf link_crc_error { + type boolean; + } + leaf link_size_error { + type boolean; + } + leaf link_mis_align_error { + type boolean; + } + leaf link_code_group_error { + type boolean; + } + leaf link_no_sig_lock_error { + type boolean; + } + leaf link_no_sign_accept_error { + type boolean; + } + leaf link_token_error { + type boolean; + } + leaf error_token_count { + type boolean; + } + leaf last_asic_internal_error_ts { + type string; + } + } + } + } + + grouping fsdb_agg_conf_plane { + list plane { + key "plane_id"; + description + "Set state of fabric plane"; + leaf plane_id { + type fabric-types:conf_plane_type; + } + leaf shutdown { + type empty; + description + "Shut down state."; + } + } + container link { + description + "Link configuration commands"; + container port { + description + "Set admin state of a fabric link port"; + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:link_port_location_type_ncs5500; + } + leaf shutdown { + type empty; + description + "Shut down state."; + } + } + } + } + } + + grouping fabric_sys_plane_health { + list sys_plane_info_list { + key "plane_id"; + leaf plane_id { + type int32; + } + leaf admin-state { + type string; + } + leaf plane_state { + type string; + } + leaf plane_mode { + type string; + } + leaf racks_w_plane_fault { + type int32; + } + leaf is_data_drop { + type boolean; + } + } + } + + grouping fsdb_process_status { + list fsdb_status { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf status { + type boolean; + } + } + list available_rack_ids { + key "loc_str"; + leaf loc_str { + type string; + } + } + list rack_id_separator { + key "loc_str_sep"; + leaf loc_str_sep { + type string; + } + } + } + + grouping sfe_process_status { + list sfe_status { + key "loc_str"; + leaf loc_str { + type string; + } + leaf status { + type boolean; + } + } + list sfe_drvr_loc { + key "loc_str"; + leaf loc_str { + type string; + } + } + list sfe_fm_sep { + key "loc_str"; + leaf loc_str { + type string; + } + } + } + + grouping rack_plane_num_amba_reachable { + list reachable_amba { + key "idx"; + leaf idx { + type int32; + } + leaf num_reachable { + type int32; + } + } + } + + grouping fabric_rack_plane_health { + list rack_plane_info_list { + key "plane_id"; + leaf plane_id { + type int32; + } + leaf plane_state { + type string; + } + leaf plane_mode { + type string; + } + leaf asics_total { + type int32; + } + leaf asics_up { + type int32; + } + leaf asics_dn { + type int32; + } + uses rack_plane_num_amba_reachable; + } + } + + grouping fabric_rack_health { + list rack_info_list { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf rack_name { + type string; + } + leaf rack_type { + type string; + } + leaf sfe_asics_total { + type int32; + } + leaf sfe_asics_up { + type int32; + } + leaf sfe_asics_dn { + type int32; + } + leaf fia_asics_total { + type int32; + } + leaf fia_asics_up { + type int32; + } + leaf fia_asics_dn { + type int32; + } + leaf plane_up { + type uint32; + } + leaf plane_dn { + type uint32; + } + leaf plane_mcast_dn { + type uint32; + } + leaf plane_admin_dn { + type uint32; + } + leaf show_rack_plane_detail { + type boolean; + default "false"; + } + leaf amba_valid { + type int32; + } + uses fabric_rack_plane_health; + } + } + + grouping fabric_health { + container fab_health { + list sys_info_list { + key "index_key"; + leaf index_key { + type int32; + } + leaf aggr_status { + type boolean; + } + leaf available_fm_loc { + type string; + } + leaf fm_loc_separator { + type string; + } + leaf rack_total { + type uint32; + } + leaf rack_lcc { + type uint32; + } + leaf rack_fcc { + type uint32; + } + leaf plane_up { + type uint32; + } + leaf plane_dn { + type uint32; + } + leaf plane_mcast_dn { + type uint32; + } + leaf plane_admin_dn { + type uint32; + } + leaf show_sys_plane_detail { + type boolean; + default "false"; + } + leaf sfe_asics_total { + type uint32; + } + leaf sfe_asics_up { + type uint32; + } + leaf sfe_asics_dn { + type uint32; + } + leaf fia_asics_total { + type uint32; + } + leaf fia_asics_up { + type uint32; + } + leaf fia_asics_dn { + type uint32; + } + uses fabric_sys_plane_health; + uses fabric_rack_health; + uses fsdb_process_status; + uses sfe_process_status; + } + } + } + + grouping fsdb_agg_plane_clear { + list plane { + key "planeid"; + leaf planeid { + type fabric-types:plane_type; + } + tailf:action "clear_counter" { + input; + output; + } + tailf:action "clear_stats" { + input; + output; + } + } + } + + grouping fsdb_aggr_trace { + container fsdb-aggregator { + description + "FSDB Aggregator information"; + container fsdbagg { + uses show-trace:traceable; + } + } + } + + grouping fsdb_aggr_ppu { + container ppu { + description + "Plane by plane upgrade."; + tailf:action "start" { + description + "Start PPU."; + input; + output { + leaf PPU { + type string; + } + } + } + tailf:action "force" { + description + "Force PPU."; + input; + output { + leaf PPU { + type string; + } + } + } + } + } + + grouping bundle_summary_show { + list bundle_summary_list { + key "idx"; + leaf idx { + type int32; + } + leaf total_bundles { + type uint32; + } + leaf down_bundles { + type uint32; + } + leaf bundles_not_connected { + type uint32; + } + leaf total_bports { + type uint32; + } + leaf down_bports { + type uint32; + } + leaf bports_not_connected { + type uint32; + } + } + } + + grouping bundle_all_show { + list bundle_all_list { + key "idx"; + leaf idx { + type int64; + } + leaf bundle_id { + type string; + } + leaf oper_state { + type string; + } + leaf plane_id { + type uint32; + } + leaf total_links { + type uint32; + } + leaf down_links { + type uint32; + } + leaf bport1 { + type string; + } + leaf bport2 { + type string; + } + } + } + + grouping bport_all_show { + list bport_all_list { + key "idx"; + leaf idx { + type int64; + } + leaf bport_id { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf down_flags { + type string; + } + } + } + + grouping bport_all_stats_show { + list bport_stats_all_racks { + key "idx"; + leaf idx { + type int32; + } + leaf total_racks { + type uint32; + } + list bport_stats_rack { + key "idx"; + leaf idx { + type int32; + } + leaf rack_num_str { + type string; + } + list bport_stats { + key "idx"; + leaf idx { + type int64; + } + leaf bport_id { + type string; + } + leaf rx_data_cells { + type uint64; + } + leaf tx_data_cells { + type uint64; + } + leaf rx_ce_cells_is_overflow { + type boolean; + } + leaf rx_ce_cells { + type uint64; + } + leaf rx_uce_cells_is_overflow { + type boolean; + } + leaf rx_uce_cells { + type uint64; + } + leaf rx_pe_cells_is_overflow { + type boolean; + } + leaf rx_pe_cells { + type uint64; + } + leaf last_clear_ts { + type string; + } + } + } + } + } + + grouping fsdb_aggr_bundle { + container bundle { + container summary { + uses bundle_summary_show; + } + container all { + uses bundle_all_show; + } + container port { + container all { + uses bport_all_show; + container statistics { + uses bport_all_stats_show; + } + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type; + } + uses bport_all_show; + container statistics { + uses bport_all_stats_show; + } + } + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type; + } + uses bundle_all_show; + } + } + } + + grouping fsdb_aggr_clear { + container counter { + config false; + uses fsdb_agg_plane_clear; + } + container clear_statistics { + config false; + uses fsdb_agg_plane_clear; + } + } + + grouping fsdb_aggr { + container fsdbagg_active { + uses plane_show; + uses fsdb_aggr_bundle; + container statistics { + uses plane_show; + } + } + container fsdbagg_link { + list port { + key "portname"; + leaf portname { + type fabric-types:link_port_type; + } + leaf description { + type string; + default "port."; + } + } + } + container fsdbagg_sfe_asic_type { + list asic_types { + key "asicname"; + leaf asicname { + type string; + } + leaf description { + type string; + default "asic."; + } + list block { + key "blockname"; + leaf blockname { + type string; + } + leaf description { + type string; + default "asic block."; + } + } + } + } + container fsdbagg_standby { + uses plane_show; + container statistics { + uses plane_show; + } + } + uses fabric_health; + uses fsdb_aggr_trace; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502.yang new file mode 100644 index 000000000..b4ebfd5ec --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502.yang @@ -0,0 +1,716 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502"; + prefix fabric_fsdb_aggr; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-01 { + description + "fsdb status has to be corrected in Fabric Health o/p"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + + grouping plane_show { + list plane { + key "planeid"; + max-elements "1024"; + leaf planeid { + type fabric-types:plane_zermatt_type; + } + leaf admin-state { + type string; + } + leaf ucast_oper_state { + type string; + } + leaf mcast_oper_state { + type string; + } + leaf plane_mode { + type string; + } + leaf ucast_cnt_up { + type int32; + } + leaf ucast_cnt_some_up { + type int32; + } + leaf ucast_cnt_dn { + type int32; + } + leaf mcast_cnt_up { + type int32; + } + leaf mcast_cnt_some_up { + type int32; + } + leaf mcast_cnt_dn { + type int32; + } + leaf total_bundles { + type int32; + } + leaf down_bundles { + type int32; + } + leaf rx_data_cells { + type uint64; + } + leaf tx_data_cells { + type uint64; + } + leaf rx_ce_cells_is_overflow { + type boolean; + } + leaf rx_ce_cells { + type uint64; + } + leaf rx_uce_cells_is_overflow { + type boolean; + } + leaf rx_uce_cells { + type uint64; + } + leaf rx_pe_cells_is_overflow { + type boolean; + } + leaf rx_pe_cells { + type uint64; + } + leaf ucast_lost_cells { + type uint32; + } + leaf mcast_lost_cells { + type uint32; + } + leaf last_clear_ts { + type string; + } + leaf last_clear_reason { + type string; + } + leaf last_clear_req_ts { + type string; + } + leaf last_clear_status { + type string; + } + leaf is_asic_internal_error { + type boolean; + } + leaf asic_internal_drops { + type uint64; + } + leaf asic_location_drops { + type string; + } + leaf ppu_state { + type string; + } + list asic_internal_error { + key "asic_number"; + leaf asic_number { + type int64; + } + leaf asic_location { + type string; + } + leaf link_crc_error { + type boolean; + } + leaf link_size_error { + type boolean; + } + leaf link_mis_align_error { + type boolean; + } + leaf link_code_group_error { + type boolean; + } + leaf link_no_sig_lock_error { + type boolean; + } + leaf link_no_sign_accept_error { + type boolean; + } + leaf link_token_error { + type boolean; + } + leaf error_token_count { + type boolean; + } + leaf last_asic_internal_error_ts { + type string; + } + } + } + } + + grouping fsdb_agg_conf_plane { + list plane { + key "plane_id"; + description + "Set state of fabric plane"; + leaf plane_id { + type fabric-types:conf_plane_zermatt_type; + } + leaf shutdown { + type empty; + description + "Shut down state."; + } + } + } + + grouping fabric_sys_plane_health { + list sys_plane_info_list { + key "plane_id"; + leaf plane_id { + type int32; + } + leaf admin-state { + type string; + } + leaf plane_state { + type string; + } + leaf plane_mode { + type string; + } + leaf racks_w_plane_fault { + type int32; + } + leaf is_data_drop { + type boolean; + } + } + } + + grouping fsdb_process_status { + list fsdb_status { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf status { + type boolean; + } + } + list available_rack_ids { + key "loc_str"; + leaf loc_str { + type string; + } + } + list rack_id_separator { + key "loc_str_sep"; + leaf loc_str_sep { + type string; + } + } + } + + grouping sfe_process_status { + list sfe_status { + key "loc_str"; + leaf loc_str { + type string; + } + leaf status { + type boolean; + } + } + } + + grouping rack_plane_num_amba_reachable { + list reachable_amba { + key "idx"; + leaf idx { + type int32; + } + leaf num_reachable { + type int32; + } + } + } + + grouping fabric_rack_plane_health { + list rack_plane_info_list { + key "plane_id"; + leaf plane_id { + type int32; + } + leaf plane_state { + type string; + } + leaf plane_mode { + type string; + } + leaf asics_total { + type int32; + } + leaf asics_up { + type int32; + } + leaf asics_dn { + type int32; + } + uses rack_plane_num_amba_reachable; + } + } + + grouping fabric_rack_health { + list rack_info_list { + key "rack_id"; + leaf rack_id { + type int32; + } + leaf rack_name { + type string; + } + leaf rack_type { + type string; + } + leaf sfe_asics_total { + type int32; + } + leaf sfe_asics_up { + type int32; + } + leaf sfe_asics_dn { + type int32; + } + leaf fia_asics_total { + type int32; + } + leaf fia_asics_up { + type int32; + } + leaf fia_asics_dn { + type int32; + } + leaf plane_up { + type uint32; + } + leaf plane_dn { + type uint32; + } + leaf plane_mcast_dn { + type uint32; + } + leaf plane_admin_dn { + type uint32; + } + leaf show_rack_plane_detail { + type boolean; + default "false"; + } + leaf amba_valid { + type int32; + } + uses fabric_rack_plane_health; + } + } + + grouping fabric_health { + container fab_health { + list sys_info_list { + key "index_key"; + leaf index_key { + type int32; + } + leaf aggr_status { + type boolean; + } + leaf available_fm_loc { + type string; + } + leaf fm_loc_separator { + type string; + } + leaf rack_total { + type uint32; + } + leaf rack_lcc { + type uint32; + } + leaf rack_fcc { + type uint32; + } + leaf plane_up { + type uint32; + } + leaf plane_dn { + type uint32; + } + leaf plane_mcast_dn { + type uint32; + } + leaf plane_admin_dn { + type uint32; + } + leaf show_sys_plane_detail { + type boolean; + default "false"; + } + leaf sfe_asics_total { + type uint32; + } + leaf sfe_asics_up { + type uint32; + } + leaf sfe_asics_dn { + type uint32; + } + leaf fia_asics_total { + type uint32; + } + leaf fia_asics_up { + type uint32; + } + leaf fia_asics_dn { + type uint32; + } + uses fabric_sys_plane_health; + uses fabric_rack_health; + uses fsdb_process_status; + uses sfe_process_status; + } + } + } + + grouping fsdb_agg_plane_clear { + list plane { + key "planeid"; + leaf planeid { + type fabric-types:plane_zermatt_type; + } + tailf:action "clear_counter" { + input; + output; + } + tailf:action "clear_stats" { + input; + output; + } + } + } + + grouping fsdb_aggr_trace { + container fsdb-aggregator { + description + "FSDB Aggregator information"; + container fsdbagg { + uses show-trace:traceable; + } + } + } + + grouping fsdb_aggr_ppu { + container ppu { + description + "Plane by plane upgrade."; + tailf:action "start" { + description + "Start PPU."; + input; + output { + leaf PPU { + type string; + } + } + } + tailf:action "force" { + description + "Force PPU."; + input; + output { + leaf PPU { + type string; + } + } + } + } + } + + grouping bundle_summary_show { + list bundle_summary_list { + key "idx"; + leaf idx { + type int32; + } + leaf total_bundles { + type uint32; + } + leaf down_bundles { + type uint32; + } + leaf bundles_not_connected { + type uint32; + } + leaf total_bports { + type uint32; + } + leaf down_bports { + type uint32; + } + leaf bports_not_connected { + type uint32; + } + } + } + + grouping bundle_all_show { + list bundle_all_list { + key "idx"; + leaf idx { + type int64; + } + leaf bundle_id { + type string; + } + leaf oper_state { + type string; + } + leaf plane_id { + type uint32; + } + leaf total_links { + type uint32; + } + leaf down_links { + type uint32; + } + leaf bport1 { + type string; + } + leaf bport2 { + type string; + } + } + } + + grouping bport_all_show { + list bport_all_list { + key "idx"; + leaf idx { + type int64; + } + leaf bport_id { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf down_flags { + type string; + } + } + } + + grouping bport_all_stats_show { + list bport_stats_all_racks { + key "idx"; + leaf idx { + type int32; + } + leaf total_racks { + type uint32; + } + list bport_stats_rack { + key "idx"; + leaf idx { + type int32; + } + leaf rack_num_str { + type string; + } + list bport_stats { + key "idx"; + leaf idx { + type int64; + } + leaf bport_id { + type string; + } + leaf rx_data_cells { + type uint64; + } + leaf tx_data_cells { + type uint64; + } + leaf rx_ce_cells_is_overflow { + type boolean; + } + leaf rx_ce_cells { + type uint64; + } + leaf rx_uce_cells_is_overflow { + type boolean; + } + leaf rx_uce_cells { + type uint64; + } + leaf rx_pe_cells_is_overflow { + type boolean; + } + leaf rx_pe_cells { + type uint64; + } + leaf last_clear_ts { + type string; + } + } + } + } + } + + grouping fsdb_aggr_bundle { + container bundle { + container summary { + uses bundle_summary_show; + } + container all { + uses bundle_all_show; + } + container port { + container all { + uses bport_all_show; + container statistics { + uses bport_all_stats_show; + } + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type; + } + uses bport_all_show; + container statistics { + uses bport_all_stats_show; + } + } + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:bundle_location_type; + } + uses bundle_all_show; + } + } + } + + grouping fsdb_aggr_clear { + container counter { + config false; + uses fsdb_agg_plane_clear; + } + container clear_statistics { + config false; + uses fsdb_agg_plane_clear; + } + } + + grouping fsdb_aggr { + container fsdbagg_active { + uses plane_show; + uses fsdb_aggr_bundle; + container statistics { + uses plane_show; + } + } + container fsdbagg_link { + list port { + key "portname"; + leaf portname { + type fabric-types:link_port_type; + } + leaf description { + type string; + default "port."; + } + } + } + container fsdbagg_sfe_asic_type { + list asic_types { + key "asicname"; + leaf asicname { + type string; + } + leaf description { + type string; + default "asic."; + } + list block { + key "blockname"; + leaf blockname { + type string; + } + leaf description { + type string; + default "asic block."; + } + } + } + } + container fsdbagg_standby { + uses plane_show; + container statistics { + uses plane_show; + } + } + uses fabric_health; + uses fsdb_aggr_trace; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd.yang new file mode 100644 index 000000000..80d9c9243 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd.yang @@ -0,0 +1,593 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-iosxrwbd"; + prefix fabric_fsdb; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-22 { + description + "Implemented single fabric-type model for all platform."; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping link_port_show { + list data_idx { + key "port_data_idx"; + max-elements "1024"; + leaf port_data_idx { + type int64; + } + leaf sfe_port { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf near_end_cdr_ln { + type string; + } + leaf near_end_cxp_ch { + type string; + } + leaf far_end_cxp_ch { + type string; + } + leaf far_end_cdr_ln { + type string; + } + leaf neighbor_link { + type string; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + } + } + } + + grouping link_port_stats_show { + list data_idx { + key "port_data_idx"; + max-elements "1024"; + leaf port_data_idx { + type int64; + } + leaf rack_num { + type string; + } + leaf sfe_port { + type string; + } + leaf TX_Control_cells_counter { + type uint64; + } + leaf TX_Data_cell_counter { + type uint64; + } + leaf TX_Data_byte_counter { + type uint64; + } + leaf RX_CRC_errors_counter { + type uint64; + } + leaf RX_LFEC_FEC_correctable_error { + type uint64; + } + leaf RX_8b_10b_disparity_errors { + type uint64; + } + leaf RX_Control_cells_counter { + type uint64; + } + leaf RX_Data_cell_counter { + type uint64; + } + leaf RX_Data_byte_counter { + type uint64; + } + leaf RX_dropped_retransmitted_control { + type uint64; + } + leaf TX_Asyn_fifo_rate { + type uint64; + } + leaf RX_Asyn_fifo_rate { + type uint64; + } + leaf RX_LFEC_FEC_uncorrectable_errors { + type uint64; + } + leaf RX_8b_10b_code_errors { + type uint64; + } + leaf is_link_error { + type boolean; + default "false"; + } + leaf link_crc_error { + type uint32; + } + leaf link_size_error { + type uint32; + } + leaf link_mis_align_error { + type uint32; + } + leaf link_code_group_error { + type uint32; + } + leaf link_no_sig_lock_error { + type uint32; + } + leaf link_no_sig_accept_error { + type uint32; + } + leaf link_tokens_error { + type uint32; + } + leaf error_token_count { + type uint32; + } + } + } + + grouping fabric_link_port_show_with_option { + uses link_port_show; + container brief { + uses link_port_show; + } + container detail { + uses link_port_show; + } + } + + grouping fabric_link_port_states { + container state { + container up { + uses fabric_link_port_show_with_option; + } + container down { + uses fabric_link_port_show_with_option; + } + container er { + uses fabric_link_port_show_with_option; + } + container mismatch { + uses fabric_link_port_show_with_option; + } + } + } + + grouping clear_link_port_statistics { + tailf:action "clear_stats" { + input; + output; + } + } + + grouping asic_status_show { + list asic_list { + key "asic_idx"; + leaf asic_idx { + type int64; + } + leaf asic_loc_str { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf down_flags { + type string; + } + leaf fab_group { + type string; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + } + } + } + + grouping fsdb_svr_trace { + container fsdb_srvr { + description + "FSDB Server information"; + container fsdb_server { + uses show-trace:traceable; + } + } + } + + grouping fsdb_pla_reachability_show { + list planes { + key "plane_idx"; + leaf plane_idx { + type int32; + } + leaf plane_num { + type int32; + } + leaf fabid_name { + type string; + } + leaf show_fabid { + type boolean; + } + leaf asic_stage { + type string; + } + list cards { + key "card_idx"; + leaf card_idx { + type int32; + } + list asics { + key "asic_idx"; + leaf asic_idx { + type int32; + } + leaf asic_RSA { + type string; + } + leaf reachability_mask { + type string; + } + leaf linkup_mask { + type string; + } + leaf all_reach_mask { + type string; + } + leaf total_links { + type int32; + } + leaf total_up_links { + type int32; + } + leaf total_all_reach_links { + type int32; + } + leaf asic_stage_name { + type fabric-types:sfe_stage_type_iosxrwbd; + } + } + } + } + } + + grouping fsdb_svr_clear { + container link { + description + "Fabric link option"; + list rack { + key "rack_number"; + leaf rack_number { + type int32; + } + list port { + key "portname"; + leaf portname { + type fabric-types:link_port_type; + } + leaf description { + type string; + default "port."; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:link_port_location_type_iosxrwbd; + } + container statistics { + uses clear_link_port_statistics; + } + } + container statistics { + uses clear_link_port_statistics; + } + } + } + } + } + + grouping fabric_link_state_and_statistics_show_w_loc { + uses fabric_link_port_show_with_option; + uses fabric_link_port_states; + container statistics { + uses link_port_stats_show; + container brief { + uses link_port_stats_show; + } + container detail { + uses link_port_stats_show; + } + } + } + + grouping fabric_link_state_and_statistics_show { + uses fabric_link_port_show_with_option; + uses fabric_link_port_states; + container statistics { + uses link_port_stats_show; + container brief { + uses link_port_stats_show; + } + container detail { + uses link_port_stats_show; + } + } + } + + grouping fabric_link_port_state_and_stats { + list port { + key "portname"; + leaf portname { + type fabric-types:link_port_type; + } + leaf description { + type string; + default "port."; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:link_port_location_type_iosxrwbd; + } + container rx { + description + "Rx link option"; + uses fabric_link_state_and_statistics_show_w_loc; + } + container tx { + description + "Tx link option"; + uses fabric_link_state_and_statistics_show_w_loc; + } + } + container rx { + description + "Rx link option"; + uses fabric_link_state_and_statistics_show; + } + container tx { + description + "Tx link option"; + uses fabric_link_state_and_statistics_show; + } + } + } + + grouping fsdb_svr { + container link { + description + "Fabric link option"; + list rack { + key "rack_number"; + leaf rack_number { + type int32; + } + uses fabric_link_port_state_and_stats; + } + list node_location { + key "node_str"; + leaf node_str { + type string; + } + uses fabric_link_port_state_and_stats; + } + } + container sfe { + description + "Switch Fabric Element option"; + list rack { + key "rack_number"; + leaf rack_number { + type int32; + } + list asic_stages { + key "asic_stage_name"; + leaf asic_stage_name { + type fabric-types:asic_stage_type_iosxrwbd; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:asic_location_type_iosxrwbd; + } + uses asic_status_show; + container brief { + uses asic_status_show; + } + container detail { + uses asic_status_show; + } + } + uses asic_status_show; + container brief { + uses asic_status_show; + } + container detail { + uses asic_status_show; + } + } + } + } + container fsdb_pla { + description + "plane availability status option"; + list rack { + key "rack_number"; + description + "Rack"; + leaf rack_number { + type int32; + } + list asic_stages { + key "asic_stage_idx"; + leaf asic_stage_idx { + type fabric-types:sfe_stage_type_iosxrwbd; + } + leaf asic_stage_name { + type fabric-types:sfe_stage_type_iosxrwbd; + } + leaf rack_number { + type string; + } + leaf plane_number { + type int32; + } + leaf plane_id { + type int32; + } + list fabids { + key "idx"; + leaf idx { + type int32; + } + leaf fabid_address { + type string; + } + leaf plane_num { + type int32; + } + leaf plane_0_mask { + type string; + } + leaf plane_1_mask { + type string; + } + leaf plane_2_mask { + type string; + } + leaf plane_3_mask { + type string; + } + leaf plane_4_mask { + type string; + } + leaf plane_5_mask { + type string; + } + leaf min_links_per_asic { + type int32; + } + leaf max_links_per_asic { + type int32; + } + leaf total_links { + type int32; + } + leaf min_up_links_per_asic { + type int32; + } + leaf max_up_links_per_asic { + type int32; + } + leaf total_up_links { + type int32; + } + } + list down_fabids { + key "idx"; + leaf idx { + type int32; + } + leaf fabid_address { + type string; + } + leaf fabid_status { + type string; + } + } + list destination { + key "amba_id"; + leaf amba_id { + type fabric-types:fabric_fabid_type; + } + uses fsdb_pla_reachability_show; + } + } + } + } + uses fsdb_svr_trace; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500.yang new file mode 100644 index 000000000..4cc1548a3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500.yang @@ -0,0 +1,545 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500"; + prefix fabric_fsdb; + + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-07 { + description + "link_port_location_type and asic_location_type renamed while implementing common fabric-types yang model"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping link_port_show { + list data_idx { + key "port_data_idx"; + max-elements "1024"; + leaf port_data_idx { + type int64; + } + leaf sfe_port { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf near_end_cdr_ln { + type string; + } + leaf near_end_cxp_ch { + type string; + } + leaf far_end_cxp_ch { + type string; + } + leaf far_end_cdr_ln { + type string; + } + leaf neighbor_link { + type string; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + } + } + } + + grouping link_port_stats_show { + list data_idx { + key "port_data_idx"; + max-elements "1024"; + leaf port_data_idx { + type int64; + } + leaf rack_num { + type string; + } + leaf sfe_port { + type string; + } + leaf TX_Control_cells_counter { + type uint64; + } + leaf TX_Data_cell_counter { + type uint64; + } + leaf TX_Data_byte_counter { + type uint64; + } + leaf RX_CRC_errors_counter { + type uint64; + } + leaf RX_LFEC_FEC_correctable_error { + type uint64; + } + leaf RX_8b_10b_disparity_errors { + type uint64; + } + leaf RX_Control_cells_counter { + type uint64; + } + leaf RX_Data_cell_counter { + type uint64; + } + leaf RX_Data_byte_counter { + type uint64; + } + leaf RX_dropped_retransmitted_control { + type uint64; + } + leaf TX_Asyn_fifo_rate { + type uint64; + } + leaf RX_Asyn_fifo_rate { + type uint64; + } + leaf RX_LFEC_FEC_uncorrectable_errors { + type uint64; + } + leaf RX_8b_10b_code_errors { + type uint64; + } + leaf is_link_error { + type boolean; + default "false"; + } + leaf link_crc_error { + type uint32; + } + leaf link_size_error { + type uint32; + } + leaf link_mis_align_error { + type uint32; + } + leaf link_code_group_error { + type uint32; + } + leaf link_no_sig_lock_error { + type uint32; + } + leaf link_no_sig_accept_error { + type uint32; + } + leaf link_tokens_error { + type uint32; + } + leaf error_token_count { + type uint32; + } + } + } + + grouping fabric_link_port_show_with_option { + uses link_port_show; + container brief { + uses link_port_show; + } + container detail { + uses link_port_show; + } + } + + grouping fabric_link_port_states { + container state { + container up { + uses fabric_link_port_show_with_option; + } + container down { + uses fabric_link_port_show_with_option; + } + container mismatch { + uses fabric_link_port_show_with_option; + } + } + } + + grouping asic_status_show { + list asic_list { + key "asic_idx"; + leaf asic_idx { + type int64; + } + leaf asic_loc_str { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf down_flags { + type string; + } + leaf fab_group { + type string; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + } + } + } + + grouping fsdb_svr_trace { + container fsdb_srvr { + description + "FSDB Server information"; + container fsdb_server { + uses show-trace:traceable; + } + } + } + + grouping fsdb_pla_reachability_show { + list planes { + key "plane_idx"; + leaf plane_idx { + type int32; + } + leaf plane_num { + type int32; + } + leaf fabid_name { + type string; + } + leaf show_fabid { + type boolean; + } + leaf asic_stage { + type string; + } + list cards { + key "card_idx"; + leaf card_idx { + type int32; + } + list asics { + key "asic_idx"; + leaf asic_idx { + type int32; + } + leaf asic_RSA { + type string; + } + leaf reachability_mask { + type string; + } + leaf linkup_mask { + type string; + } + leaf all_reach_mask { + type string; + } + leaf total_links { + type int32; + } + leaf total_up_links { + type int32; + } + leaf total_all_reach_links { + type int32; + } + leaf asic_stage_name { + type fabric-types:sfe_stage_type; + } + } + } + } + } + + grouping fabric_link_state_and_statistics_show_w_loc { + uses fabric_link_port_show_with_option; + uses fabric_link_port_states; + container statistics { + uses link_port_stats_show; + container brief { + uses link_port_stats_show; + } + container detail { + uses link_port_stats_show; + } + } + } + + grouping fabric_link_state_and_statistics_show { + uses fabric_link_port_show_with_option; + uses fabric_link_port_states; + container statistics { + uses link_port_stats_show; + container brief { + uses link_port_stats_show; + } + container detail { + uses link_port_stats_show; + } + } + } + + grouping fabric_link_port_state_and_stats { + list port { + key "portname"; + leaf portname { + type fabric-types:link_port_type; + } + leaf description { + type string; + default "port."; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:link_port_location_type_ncs5500; + } + container rx { + description + "Rx link option"; + uses fabric_link_state_and_statistics_show_w_loc; + } + container tx { + description + "Tx link option"; + uses fabric_link_state_and_statistics_show_w_loc; + } + } + container rx { + description + "Rx link option"; + uses fabric_link_state_and_statistics_show; + } + container tx { + description + "Tx link option"; + uses fabric_link_state_and_statistics_show; + } + } + } + + grouping fsdb_svr { + container link { + description + "Fabric link option"; + list rack { + key "rack_number"; + leaf rack_number { + type int32; + } + uses fabric_link_port_state_and_stats; + } + list node_location { + key "node_str"; + leaf node_str { + type string; + } + uses fabric_link_port_state_and_stats; + } + } + container sfe { + description + "Switch Fabric Element option"; + list rack { + key "rack_number"; + leaf rack_number { + type int32; + } + list asic_stages { + key "asic_stage_name"; + leaf asic_stage_name { + type fabric-types:asic_stage_type; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:asic_location_type_ncs5500; + } + uses asic_status_show; + container brief { + uses asic_status_show; + } + container detail { + uses asic_status_show; + } + } + uses asic_status_show; + container brief { + uses asic_status_show; + } + container detail { + uses asic_status_show; + } + } + } + } + container fsdb_pla { + description + "plane availability status option"; + list rack { + key "rack_number"; + description + "Rack"; + leaf rack_number { + type int32; + } + list asic_stages { + key "asic_stage_idx"; + leaf asic_stage_idx { + type fabric-types:sfe_stage_type; + } + leaf asic_stage_name { + type fabric-types:sfe_stage_type; + } + leaf rack_number { + type string; + } + leaf plane_number { + type int32; + } + leaf plane_id { + type int32; + } + list fabids { + key "idx"; + leaf idx { + type int32; + } + leaf fabid_address { + type string; + } + leaf plane_num { + type int32; + } + leaf plane_0_mask { + type string; + } + leaf plane_1_mask { + type string; + } + leaf plane_2_mask { + type string; + } + leaf plane_3_mask { + type string; + } + leaf plane_4_mask { + type string; + } + leaf plane_5_mask { + type string; + } + leaf min_links_per_asic { + type int32; + } + leaf max_links_per_asic { + type int32; + } + leaf total_links { + type int32; + } + leaf min_up_links_per_asic { + type int32; + } + leaf max_up_links_per_asic { + type int32; + } + leaf total_up_links { + type int32; + } + } + list down_fabids { + key "idx"; + leaf idx { + type int32; + } + leaf fabid_address { + type string; + } + leaf fabid_status { + type string; + } + } + list destination { + key "amba_id"; + leaf amba_id { + type fabric-types:fabric_fabid_type; + } + uses fsdb_pla_reachability_show; + } + } + } + } + uses fsdb_svr_trace; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502.yang new file mode 100644 index 000000000..fa4a26c7d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502.yang @@ -0,0 +1,549 @@ +module Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502"; + prefix fabric_fsdb; + + import Cisco-IOS-XR-sysadmin-fabric-types { + prefix fabric-types; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show-trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-06 { + description + "Added Plane ID info to FSDB PLA"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2017-04-07 { + description + "fsdb_server operational CLI support for non-modular NCS5500 platforms"; + } + + grouping link_port_show { + list data_idx { + key "port_data_idx"; + max-elements "1024"; + leaf port_data_idx { + type int64; + } + leaf sfe_port { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf near_end_cdr_ln { + type string; + } + leaf near_end_cxp_ch { + type string; + } + leaf far_end_cxp_ch { + type string; + } + leaf far_end_cdr_ln { + type string; + } + leaf neighbor_link { + type string; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + } + } + } + + grouping link_port_stats_show { + list data_idx { + key "port_data_idx"; + max-elements "1024"; + leaf port_data_idx { + type int64; + } + leaf rack_num { + type string; + } + leaf sfe_port { + type string; + } + leaf TX_Control_cells_counter { + type uint64; + } + leaf TX_Data_cell_counter { + type uint64; + } + leaf TX_Data_byte_counter { + type uint64; + } + leaf RX_CRC_errors_counter { + type uint64; + } + leaf RX_LFEC_FEC_correctable_error { + type uint64; + } + leaf RX_8b_10b_disparity_errors { + type uint64; + } + leaf RX_Control_cells_counter { + type uint64; + } + leaf RX_Data_cell_counter { + type uint64; + } + leaf RX_Data_byte_counter { + type uint64; + } + leaf RX_dropped_retransmitted_control { + type uint64; + } + leaf TX_Asyn_fifo_rate { + type uint64; + } + leaf RX_Asyn_fifo_rate { + type uint64; + } + leaf RX_LFEC_FEC_uncorrectable_errors { + type uint64; + } + leaf RX_8b_10b_code_errors { + type uint64; + } + leaf is_link_error { + type boolean; + default "false"; + } + leaf link_crc_error { + type uint32; + } + leaf link_size_error { + type uint32; + } + leaf link_mis_align_error { + type uint32; + } + leaf link_code_group_error { + type uint32; + } + leaf link_no_sig_lock_error { + type uint32; + } + leaf link_no_sig_accept_error { + type uint32; + } + leaf link_tokens_error { + type uint32; + } + leaf error_token_count { + type uint32; + } + } + } + + grouping fabric_link_port_show_with_option { + uses link_port_show; + container brief { + uses link_port_show; + } + container detail { + uses link_port_show; + } + } + + grouping fabric_link_port_states { + container state { + container up { + uses fabric_link_port_show_with_option; + } + container down { + uses fabric_link_port_show_with_option; + } + container mismatch { + uses fabric_link_port_show_with_option; + } + } + } + + grouping asic_status_show { + list asic_list { + key "asic_idx"; + leaf asic_idx { + type int64; + } + leaf asic_loc_str { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf down_flags { + type string; + } + leaf fab_group { + type string; + } + list history { + key "history_idx"; + leaf history_idx { + type int32; + } + leaf time_stamp { + type string; + } + leaf admin-state { + type string; + } + leaf oper_state { + type string; + } + leaf error_state { + type string; + } + } + } + } + + grouping fsdb_svr_trace { + container fsdb_srvr { + description + "FSDB Server information"; + container fsdb_server { + uses show-trace:traceable; + } + } + } + + grouping fsdb_pla_reachability_show { + list planes { + key "plane_idx"; + leaf plane_idx { + type int32; + } + leaf plane_num { + type int32; + } + leaf fabid_name { + type string; + } + leaf show_fabid { + type boolean; + } + leaf asic_stage { + type string; + } + list cards { + key "card_idx"; + leaf card_idx { + type int32; + } + list asics { + key "asic_idx"; + leaf asic_idx { + type int32; + } + leaf asic_RSA { + type string; + } + leaf reachability_mask { + type string; + } + leaf linkup_mask { + type string; + } + leaf all_reach_mask { + type string; + } + leaf total_links { + type int32; + } + leaf total_up_links { + type int32; + } + leaf total_all_reach_links { + type int32; + } + leaf asic_stage_name { + type fabric-types:sfe_stage_type; + } + } + } + } + } + + grouping fabric_link_state_and_statistics_show_w_loc { + uses fabric_link_port_show_with_option; + uses fabric_link_port_states; + container statistics { + uses link_port_stats_show; + container brief { + uses link_port_stats_show; + } + container detail { + uses link_port_stats_show; + } + } + } + + grouping fabric_link_state_and_statistics_show { + uses fabric_link_port_show_with_option; + uses fabric_link_port_states; + container statistics { + uses link_port_stats_show; + container brief { + uses link_port_stats_show; + } + container detail { + uses link_port_stats_show; + } + } + } + + grouping fabric_link_port_state_and_stats { + list port { + key "portname"; + leaf portname { + type fabric-types:link_port_type; + } + leaf description { + type string; + default "port."; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:link_port_location_zermatt_type_for_yang; + } + container rx { + description + "Rx link option"; + uses fabric_link_state_and_statistics_show_w_loc; + } + container tx { + description + "Tx link option"; + uses fabric_link_state_and_statistics_show_w_loc; + } + } + container rx { + description + "Rx link option"; + uses fabric_link_state_and_statistics_show; + } + container tx { + description + "Tx link option"; + uses fabric_link_state_and_statistics_show; + } + } + } + + grouping fsdb_svr { + container link { + description + "Fabric link option"; + list rack { + key "rack_number"; + leaf rack_number { + type int32; + } + uses fabric_link_port_state_and_stats; + } + list node_location { + key "node_str"; + leaf node_str { + type string; + } + uses fabric_link_port_state_and_stats; + } + } + container sfe { + description + "Switch Fabric Element option"; + list rack { + key "rack_number"; + leaf rack_number { + type int32; + } + list asic_stages { + key "asic_stage_name"; + leaf asic_stage_name { + type fabric-types:asic_stage_type; + } + list location { + key "loc_str"; + leaf loc_str { + type fabric-types:asic_location_zermatt_type; + } + uses asic_status_show; + container brief { + uses asic_status_show; + } + container detail { + uses asic_status_show; + } + } + uses asic_status_show; + container brief { + uses asic_status_show; + } + container detail { + uses asic_status_show; + } + } + } + } + container fsdb_pla { + description + "plane availability status option"; + list rack { + key "rack_number"; + description + "Rack"; + leaf rack_number { + type int32; + } + list asic_stages { + key "asic_stage_idx"; + leaf asic_stage_idx { + type fabric-types:sfe_stage_type; + } + leaf asic_stage_name { + type fabric-types:sfe_stage_type; + } + leaf rack_number { + type string; + } + leaf plane_number { + type int32; + } + leaf plane_id { + type int32; + } + list fabids { + key "idx"; + leaf idx { + type int32; + } + leaf fabid_address { + type string; + } + leaf plane_num { + type int32; + } + leaf plane_0_mask { + type string; + } + leaf plane_1_mask { + type string; + } + leaf plane_2_mask { + type string; + } + leaf plane_3_mask { + type string; + } + leaf plane_4_mask { + type string; + } + leaf plane_5_mask { + type string; + } + leaf min_links_per_asic { + type int32; + } + leaf max_links_per_asic { + type int32; + } + leaf total_links { + type int32; + } + leaf min_up_links_per_asic { + type int32; + } + leaf max_up_links_per_asic { + type int32; + } + leaf total_up_links { + type int32; + } + } + list down_fabids { + key "idx"; + leaf idx { + type int32; + } + leaf fabid_address { + type string; + } + leaf fabid_status { + type string; + } + } + list destination { + key "amba_id"; + leaf amba_id { + type fabric-types:fabric_fabid_type; + } + uses fsdb_pla_reachability_show; + } + } + } + } + uses fsdb_svr_trace; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5500.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5500.yang new file mode 100644 index 000000000..75998bed6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5500.yang @@ -0,0 +1,102 @@ +module Cisco-IOS-XR-sysadmin-fabric-ncs5500 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-ncs5500"; + prefix fabric; + + import Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500 { + prefix fabric-fgid; + } + import Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5500 { + prefix fabric-fsdb; + } + import Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5500 { + prefix fabric-fsdb-aggr; + } + import Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500 { + prefix fabric-sfe; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-31 { + description + "Importing platform specific yang as required"; + semver:module-version "1.2.0"; + } + revision 2019-07-01 { + description + "Modified to import NCS5500 platform specific yang file"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping fabric_action_cmds { + container fabric_action { + container fabric { + description + "Fabric resource commands"; + uses fabric-fsdb-aggr:fsdb_aggr_ppu; + } + } + } + + grouping fabric_clear { + container fabric { + description + "Fabric resource commands"; + uses fabric-fsdb-aggr:fsdb_aggr_clear; + } + } + + grouping fabric { + container fabric { + description + "Fabric resource commands"; + container fabric { + description + "Fabric configuration"; + container fsdbagg { + uses fabric-fsdb-aggr:fsdb_agg_conf_plane; + } + uses fabric-fgid:fgid_conf_resource; + } + container oper { + config false; + uses fabric-fgid:fgid; + uses fabric-fsdb-aggr:fsdb_aggr; + uses fabric-fsdb:fsdb_svr; + } + } + container sfe_oper { + config false; + uses fabric-sfe:sfe; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5501.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5501.yang new file mode 100644 index 000000000..fc02311d1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5501.yang @@ -0,0 +1,56 @@ +module Cisco-IOS-XR-sysadmin-fabric-ncs5501 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-ncs5501"; + prefix fabric; + + import Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500 { + prefix fabric-fgid; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-31 { + description + "importing platform specific yang as required"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping fabric { + container fabric { + description + "Fabric resource commands"; + container oper { + config false; + uses fabric-fgid:fgid; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5502.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5502.yang new file mode 100644 index 000000000..23f614e62 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-ncs5502.yang @@ -0,0 +1,102 @@ +module Cisco-IOS-XR-sysadmin-fabric-ncs5502 { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-ncs5502"; + prefix fabric; + + import Cisco-IOS-XR-sysadmin-fabric-mgr-fgid-ncs5500 { + prefix fabric-fgid; + } + import Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-server-ncs5502 { + prefix fabric-fsdb; + } + import Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-ncs5502 { + prefix fabric-fsdb-aggr; + } + import Cisco-IOS-XR-sysadmin-fabric-driver-sfe-ncs5500 { + prefix fabric-sfe; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-31 { + description + "importing platform specific yang as required"; + semver:module-version "1.2.0"; + } + revision 2019-07-01 { + description + "Modified to import NCS5500 platform specific yang file"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping fabric_action_cmds { + container fabric_action { + container fabric { + description + "Fabric resource commands"; + uses fabric-fsdb-aggr:fsdb_aggr_ppu; + } + } + } + + grouping fabric_clear { + container fabric { + description + "Fabric resource commands"; + uses fabric-fsdb-aggr:fsdb_aggr_clear; + } + } + + grouping fabric { + container fabric { + description + "Fabric resource commands"; + container fabric { + description + "Fabric configuration"; + container fsdbagg { + uses fabric-fsdb-aggr:fsdb_agg_conf_plane; + } + uses fabric-fgid:fgid_conf_resource; + } + container oper { + config false; + uses fabric-fgid:fgid; + uses fabric-fsdb-aggr:fsdb_aggr; + uses fabric-fsdb:fsdb_svr; + } + } + container sfe_oper { + config false; + uses fabric-sfe:sfe; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-qsfpdd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-qsfpdd.yang new file mode 100644 index 000000000..4df112025 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-qsfpdd.yang @@ -0,0 +1,566 @@ +module Cisco-IOS-XR-sysadmin-fabric-qsfpdd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-qsfpdd"; + prefix fabric_qsfpdd; + + import tailf-xsd-types { + prefix xs; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-28 { + description + "Remove 'Cisco Supported' info from optics data, correct Transceiver spelling"; + semver:module-version "2.0.0"; + } + revision 2021-04-21 { + description + "Removed unused imports"; + semver:module-version "1.0.0"; + } + + grouping dom_output { + list qsfpdd_port { + key "qsfpdd_port_num"; + leaf show_port { + type boolean; + default "false"; + } + leaf error_msg { + type string; + } + leaf qsfpdd_port_num { + type uint32; + description + "Front Port Num"; + } + leaf optics_description { + type string; + } + leaf vendorname { + type string; + } + leaf vendor_rev_num { + type string; + } + leaf vid { + type string; + } + leaf pid { + type string; + } + leaf qsfp_type { + type uint32; + } + leaf vendor_pn { + type string; + } + leaf vendor_sn { + type string; + } + leaf ven_date_code { + type string; + } + leaf vendor_oui { + type string; + } + leaf temp_rd { + type xs:double; + } + leaf volt_rd { + type xs:double; + } + leaf wavelength { + type xs:double; + } + leaf temp_hi_alarm_sts { + type string; + } + leaf temp_lo_alarm_sts { + type string; + } + leaf volt_hi_alarm_sts { + type string; + } + leaf volt_lo_alarm_sts { + type string; + } + leaf rx_power_dbm_0 { + type xs:double; + } + leaf rx_power_dbm_1 { + type xs:double; + } + leaf rx_power_dbm_2 { + type xs:double; + } + leaf rx_power_dbm_3 { + type xs:double; + } + leaf rx_power_dbm_4 { + type xs:double; + } + leaf rx_power_dbm_5 { + type xs:double; + } + leaf rx_power_dbm_6 { + type xs:double; + } + leaf rx_power_dbm_7 { + type xs:double; + } + leaf rx_los_0 { + type string; + } + leaf rx_los_1 { + type string; + } + leaf rx_los_2 { + type string; + } + leaf rx_los_3 { + type string; + } + leaf rx_los_4 { + type string; + } + leaf rx_los_5 { + type string; + } + leaf rx_los_6 { + type string; + } + leaf rx_los_7 { + type string; + } + leaf rx_cdr_lol_0 { + type string; + } + leaf rx_cdr_lol_1 { + type string; + } + leaf rx_cdr_lol_2 { + type string; + } + leaf rx_cdr_lol_3 { + type string; + } + leaf rx_cdr_lol_4 { + type string; + } + leaf rx_cdr_lol_5 { + type string; + } + leaf rx_cdr_lol_6 { + type string; + } + leaf rx_cdr_lol_7 { + type string; + } + leaf rx_hi_alarm_0 { + type string; + } + leaf rx_hi_alarm_1 { + type string; + } + leaf rx_hi_alarm_2 { + type string; + } + leaf rx_hi_alarm_3 { + type string; + } + leaf rx_hi_alarm_4 { + type string; + } + leaf rx_hi_alarm_5 { + type string; + } + leaf rx_hi_alarm_6 { + type string; + } + leaf rx_hi_alarm_7 { + type string; + } + leaf rx_lo_alarm_0 { + type string; + } + leaf rx_lo_alarm_1 { + type string; + } + leaf rx_lo_alarm_2 { + type string; + } + leaf rx_lo_alarm_3 { + type string; + } + leaf rx_lo_alarm_4 { + type string; + } + leaf rx_lo_alarm_5 { + type string; + } + leaf rx_lo_alarm_6 { + type string; + } + leaf rx_lo_alarm_7 { + type string; + } + leaf tx_power_dbm_0 { + type xs:double; + } + leaf tx_power_dbm_1 { + type xs:double; + } + leaf tx_power_dbm_2 { + type xs:double; + } + leaf tx_power_dbm_3 { + type xs:double; + } + leaf tx_power_dbm_4 { + type xs:double; + } + leaf tx_power_dbm_5 { + type xs:double; + } + leaf tx_power_dbm_6 { + type xs:double; + } + leaf tx_power_dbm_7 { + type xs:double; + } + leaf tx_bias_current_0 { + type xs:double; + } + leaf tx_bias_current_1 { + type xs:double; + } + leaf tx_bias_current_2 { + type xs:double; + } + leaf tx_bias_current_3 { + type xs:double; + } + leaf tx_bias_current_4 { + type xs:double; + } + leaf tx_bias_current_5 { + type xs:double; + } + leaf tx_bias_current_6 { + type xs:double; + } + leaf tx_bias_current_7 { + type xs:double; + } + leaf tx_laser_status_0 { + type string; + } + leaf tx_laser_status_1 { + type string; + } + leaf tx_laser_status_2 { + type string; + } + leaf tx_laser_status_3 { + type string; + } + leaf tx_laser_status_4 { + type string; + } + leaf tx_laser_status_5 { + type string; + } + leaf tx_laser_status_6 { + type string; + } + leaf tx_laser_status_7 { + type string; + } + leaf tx_los_status_0 { + type string; + } + leaf tx_los_status_1 { + type string; + } + leaf tx_los_status_2 { + type string; + } + leaf tx_los_status_3 { + type string; + } + leaf tx_los_status_4 { + type string; + } + leaf tx_los_status_5 { + type string; + } + leaf tx_los_status_6 { + type string; + } + leaf tx_los_status_7 { + type string; + } + leaf tx_fault_status_0 { + type string; + } + leaf tx_fault_status_1 { + type string; + } + leaf tx_fault_status_2 { + type string; + } + leaf tx_fault_status_3 { + type string; + } + leaf tx_fault_status_4 { + type string; + } + leaf tx_fault_status_5 { + type string; + } + leaf tx_fault_status_6 { + type string; + } + leaf tx_fault_status_7 { + type string; + } + leaf tx_cdr_lol_status_0 { + type string; + } + leaf tx_cdr_lol_status_1 { + type string; + } + leaf tx_cdr_lol_status_2 { + type string; + } + leaf tx_cdr_lol_status_3 { + type string; + } + leaf tx_cdr_lol_status_4 { + type string; + } + leaf tx_cdr_lol_status_5 { + type string; + } + leaf tx_cdr_lol_status_6 { + type string; + } + leaf tx_cdr_lol_status_7 { + type string; + } + leaf tx_power_high_alarm_status_0 { + type string; + } + leaf tx_power_high_alarm_status_1 { + type string; + } + leaf tx_power_high_alarm_status_2 { + type string; + } + leaf tx_power_high_alarm_status_3 { + type string; + } + leaf tx_power_high_alarm_status_4 { + type string; + } + leaf tx_power_high_alarm_status_5 { + type string; + } + leaf tx_power_high_alarm_status_6 { + type string; + } + leaf tx_power_high_alarm_status_7 { + type string; + } + leaf tx_power_low_alarm_status_0 { + type string; + } + leaf tx_power_low_alarm_status_1 { + type string; + } + leaf tx_power_low_alarm_status_2 { + type string; + } + leaf tx_power_low_alarm_status_3 { + type string; + } + leaf tx_power_low_alarm_status_4 { + type string; + } + leaf tx_power_low_alarm_status_5 { + type string; + } + leaf tx_power_low_alarm_status_6 { + type string; + } + leaf tx_power_low_alarm_status_7 { + type string; + } + leaf tx_laser_bias_high_alarm_status_0 { + type string; + } + leaf tx_laser_bias_high_alarm_status_1 { + type string; + } + leaf tx_laser_bias_high_alarm_status_2 { + type string; + } + leaf tx_laser_bias_high_alarm_status_3 { + type string; + } + leaf tx_laser_bias_high_alarm_status_4 { + type string; + } + leaf tx_laser_bias_high_alarm_status_5 { + type string; + } + leaf tx_laser_bias_high_alarm_status_6 { + type string; + } + leaf tx_laser_bias_high_alarm_status_7 { + type string; + } + leaf tx_laser_bias_low_alarm_status_0 { + type string; + } + leaf tx_laser_bias_low_alarm_status_1 { + type string; + } + leaf tx_laser_bias_low_alarm_status_2 { + type string; + } + leaf tx_laser_bias_low_alarm_status_3 { + type string; + } + leaf tx_laser_bias_low_alarm_status_4 { + type string; + } + leaf tx_laser_bias_low_alarm_status_5 { + type string; + } + leaf tx_laser_bias_low_alarm_status_6 { + type string; + } + leaf tx_laser_bias_low_alarm_status_7 { + type string; + } + leaf temp_high_alarm { + type xs:double; + } + leaf temp_high_warn_alarm { + type xs:double; + } + leaf temp_low_warn_alarm { + type xs:double; + } + leaf temp_low_alarm { + type xs:double; + } + leaf volt_high_alarm { + type xs:double; + } + leaf volt_high_warn_alarm { + type xs:double; + } + leaf volt_low_warn_alarm { + type xs:double; + } + leaf volt_low_alarm { + type xs:double; + } + leaf tx_cur_high_alarm { + type xs:double; + } + leaf tx_cur_high_warn_alarm { + type xs:double; + } + leaf tx_cur_low_warn_alarm { + type xs:double; + } + leaf tx_cur_low_alarm { + type xs:double; + } + leaf tx_pwr_high_alarm { + type xs:double; + } + leaf tx_pwr_high_warn_alarm { + type xs:double; + } + leaf tx_pwr_low_warn_alarm { + type xs:double; + } + leaf tx_pwr_low_alarm { + type xs:double; + } + leaf rx_pwr_high_alarm { + type xs:double; + } + leaf rx_pwr_high_warn_alarm { + type xs:double; + } + leaf rx_pwr_low_warn_alarm { + type xs:double; + } + leaf rx_pwr_low_alarm { + type xs:double; + } + } + } + + grouping fc_qsfpdd { + container qsfpdd { + container dom { + list location { + key "loc_str"; + leaf loc_str { + type string; + } + leaf description { + type string; + default "location (R/S)"; + } + uses dom_output; + } + } + container summary { + list rack { + key "rack_str"; + config false; + leaf rack_str { + type string; + } + leaf description { + type string; + default "Rack No."; + } + list qsfpdd_rack_summary_data { + leaf qsfpdd_rack_data { + type string; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-types.yang new file mode 100644 index 000000000..dee14c3ab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fabric-types.yang @@ -0,0 +1,505 @@ +module Cisco-IOS-XR-sysadmin-fabric-types { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fabric-types"; + prefix fabric-types; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-07 { + description + "Few datatype got deleted and edited while implementing common fabric-types yang model"; + semver:module-version "3.0.0"; + } + revision 2020-04-30 { + description + "Removed the usage of retimer_id_type, asic_location_oldcastle_type and few string edited"; + semver:module-version "2.0.0"; + } + revision 2019-12-13 { + description + "fabric_fgid_elements_type range changed to 120832 after reducing the fgid scale for fretta platforms"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-23 { + description + "sfe_link_type range changed to 215 after spitfire code merge"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2017-04-07 { + description + "Fabric types for NCS5500 platforms"; + } + + typedef sfe_instance_type { + type string { + pattern "[0-5]|all"; + } + } + + typedef sfe_instance_type_ncs5500 { + type string { + pattern "[0-5]|all"; + } + } + + typedef sfe_instance_type_ncs4k { + type string { + pattern "[0-2]|all"; + } + } + + typedef sfe_instance_type_iosxrwbd { + type string { + pattern "[0-1]|all"; + } + } + + typedef sfe_link_type { + type int32 { + range "0 .. 215"; + } + } + + typedef sfe_link_type_iosxrwbd { + type int32 { + range "0 .. 191"; + } + } + + typedef plane_type { + type string { + pattern "all|[0-5]"; + } + } + + typedef plane_type_ncs4k { + type string { + pattern "all|[0-3]"; + } + } + + typedef plane_type_iosxrwbd { + type string { + pattern "all|(0?[0-9]|1[0-2])"; + } + } + + typedef plane_zermatt_type { + type string { + pattern "all|0"; + } + } + + typedef conf_plane_type { + type string { + pattern "[0-5]"; + } + } + + typedef conf_plane_type_iosxrwbd { + type string { + pattern "(0?[0-9]|1[0-2])"; + } + } + + typedef conf_plane_type_ncs4k { + type string { + pattern "[0-3]"; + } + } + + typedef conf_plane_zermatt_type { + type string { + pattern "0"; + } + } + + typedef conf_instance_type { + type int32 { + range "0..7"; + } + } + + typedef conf_instance_type_iosxrwbd { + type int32 { + range "0..1"; + } + } + + typedef conf_folded_instance_type { + type int32; + default "0"; + } + + typedef conf_location_type { + type string { + pattern "(0?[F|f][0-3])/[F|f][C|c](0?[0-9]|1[0-1])"; + } + } + + typedef conf_location_type_ncs4k { + type string { + pattern "(0?F[0-3])/[F|f][C|c](0?[0-9]|1[0-1])"; + } + } + + typedef conf_location_type_iosxrwbd { + type string { + pattern "(0?[F|f](0?[0-9]|1[0-2]))/[F|f][C|c](0)"; + } + } + + typedef link_port_type { + type string { + pattern "fia|s1|s2|s3"; + } + } + + typedef link_port_type_iosxrwbd { + type string { + pattern "fia|s1|s3"; + } + } + + typedef asic_stage_type { + type string { + pattern "fia|s123|s13|s2|b2b"; + } + } + + typedef asic_stage_type_iosxrwbd { + type string { + pattern "fia|s123"; + } + } + + typedef sfe_stage_type { + type string { + pattern "s1|s2|s3|s123"; + } + } + + typedef sfe_stage_type_iosxrwbd { + type string { + pattern "s123"; + } + } + + typedef asic_location_type_ncs5500 { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5]))/(0?[0-5]))|((0?[0-9]|1[0-5])/(0?[0-9]|1[0-5])/(0?[0-5]))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/(0?[0-2]))"; + } + } + + typedef asic_location_type_ncs4k { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-3]))/(0?[0-2]))|((0?[0-9]|1[0-5])/(0?[0-9]|1[0-5])/(0?[0-0]))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/(0?[0-2]))"; + } + } + + typedef asic_location_type { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5]))/(0?[0-5]))|((0?[0-9]|1[0-5])/(0?[0-7])/(0?[0-5]))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/(0?[0-2]))"; + } + } + + typedef asic_location_type_ncs6k { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5]))/(0?[0-5]))|((0?[0-9]|1[0-5])/(0?[0-7])/(0?[0-5]))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/(0?[0-2]))"; + } + } + + typedef asic_location_type_iosxrwbd { + type string { + pattern "((0?[0-9]|[1-3][0-9]|4[0-7])/(0)/(0))|(([F|f](0?[0-9]|1[0-2]))/([F|f][C|c](0))/(0?[0-1]))"; + } + } + + typedef asic_location_zermatt_type { + type string { + pattern "((0)/([R|r][P|p](0))/(0?[0-1]))|((0)/(0)/(0?[0-7]))"; + } + } + + typedef link_port_location_type_ncs5500 { + type string { + pattern "((0)/([F|f][C|c](0?[0-5]))/(0?[0-5])/(0?[0-9]|[1-9][0-9]|1[0-8][0-9]|19[0-1]))|((0?[0-9]|1[0-5])/(0?[0-9]|1[0-5])/(0?[0-5])/(0?[0-9]|[1-3][0-9]|4[0-7]))"; + } + } + + typedef link_port_location_type_iosxrwbd { + type string { + pattern "((0?[0-9]|[1-3][0-9]|4[0-7])/(0)/(0)/(0?[0-9]|[1-9][0-9]|10[0-9]|11[0-1]))|(([F|f](0?[0-9]|1[0-2]))/([F|f][C|c](0))/(0?[0-1])/(0?[0-9]|[1-9][0-9]|1[0-8][0-9]|19[0-1]))"; + } + } + + typedef link_port_location_type { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5]))/(0?[0-5])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))|((0?[0-9]|1[0-5])/(0?[0-7])/(0?[0-5])/(0?[0-9]|[1-2][0-9]|3[0-5]))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/(0?[0-2])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))"; + } + } + + typedef link_port_location_type_ncs6k { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5]))/(0?[0-5])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))|((0?[0-9]|1[0-5])/(0?[0-7])/(0?[0-5])/(0?[0-9]|[1-2][0-9]|3[0-5]))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/(0?[0-2])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))"; + } + } + + typedef link_port_location_type_ncs4k { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-3]))/(0?[0-2])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))|((0?[0-9]|1[0-5])/(0?[0-9]|1[0-5])/(0?[0-0])/(0?[0-9]|[1-2][0-9]|3[0-5]))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/(0?[0-2])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))"; + } + } + + typedef link_port_location_zermatt_type_for_yang { + type string { + pattern "((0)/([R|r][P|p](0))/(0?[0-1])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))|((0)/(0)/(0?[0-7])/(0?[0-9]|[1-3][0-9]|4[0-7]))"; + } + } + + typedef link_port_location_zermatt_type { + type string { + pattern "((0)/([R|r][P|p](0))/(0?[0-1])/(0?[0-9]|[1-9][0-9]|1[0-3][0-9]|14[0-3]))|((0)/(0)/(0?[0-7])/(0?[0-9]|[1-2][0-9]|3[0-5]))"; + } + } + + typedef bundle_location_type { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5]))/((0?[0-9])|(1[0-5])))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/((0?[0-9])|([1-2][0-9])|(3[0-1])))"; + } + } + + typedef bundle_location_type_iosxrwbd { + type string { + pattern "((0?[0-9]|[1-3][0-9]|4[0-7])/(0)/(1)/((0?[0-9]|1[0-2])))|(([F|f](0?[0-9]|1[0-2]))/([F|f][C|c](0))/(1)/((0?[0-9])|([1-3][0-9])|(4[0-7])))"; + } + } + + typedef bundle_location_type_ncs4k { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-3]))/((0?[0-9])|(1[0-5])))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1]))/((0?[0-9])|([1-2][0-9])|(3[0-1])))"; + } + } + + typedef fabric_fgid_id_type_ncs5500 { + type int32 { + range "0..120832"; + } + } + + typedef fabric_fgid_id_type_iosxrwbd { + type int32 { + range "0..127999"; + } + } + + typedef fabric_fgid_id_type { + type int32 { + range "0..524287"; + } + } + + typedef fabric_fgid_elements_type_ncs5500 { + type int32 { + range "0..120832"; + } + } + + typedef fabric_fgid_elements_type_iosxrwbd { + type int32 { + range "0..128000"; + } + } + + typedef fabric_fgid_elements_type { + type int32 { + range "0..524288"; + } + } + + typedef fabric_fgid_start_id_type_ncs5500 { + type int32 { + range "0..120832"; + } + } + + typedef fabric_fgid_start_id_type_iosxrwbd { + type int32 { + range "0..127999"; + } + } + + typedef fabric_fgid_start_id_type { + type int32 { + range "0..524287"; + } + } + + typedef fabric_fgid_end_id_type_ncs5500 { + type int32 { + range "0..120832"; + } + } + + typedef fabric_fgid_end_id_type_iosxrwbd { + type int32 { + range "0..127999"; + } + } + + typedef fabric_fgid_end_id_type { + type int32 { + range "0..524287"; + } + } + + typedef fabric_nc55_fixed_fgid_id_type { + type int32 { + range "0..63535"; + } + } + + typedef fabric_nc55_fixed_fgid_elements_type { + type int32 { + range "0..63535"; + } + } + + typedef fabric_nc55_fixed_fgid_start_id_type { + type int32 { + range "0..63535"; + } + } + + typedef fabric_nc55_fixed_fgid_end_id_type { + type int32 { + range "0..63535"; + } + } + + typedef fabric_dump_file_name_type { + type string; + } + + typedef fabric_diag_shell_cmd_type { + type string; + } + + typedef fabric_diag_shell_instance_num_type { + type int32 { + range "0..5"; + } + } + + typedef fabric_diag_shell_instance_num_type_iosxrwbd { + type int32 { + range "0..1"; + } + } + + typedef fabric_diag_shell_instance_num_type_ncs4k { + type int32 { + range "0..2"; + } + } + + typedef fabric_rack_num_type { + type string { + pattern "(0?[0-9])|(1[0-5])|([F|f][0-3])"; + } + } + + typedef fabric_rack_num_type_iosxrwbd { + type string { + pattern "([F|f](0?[0-9]|1[0-2]))"; + } + } + + typedef fabric_fabid_type { + type string { + pattern "(0?[0-9]|1[0-5])/(0?[0-7])/(0?[0-5])|([0-9]|[1-9][0-9]|[1-9][0-9][0-9]|10[0-1][0-9]|102[0-3])"; + } + } + + typedef fabric_fabid_type_ncs4k { + type string { + pattern "(0?[0-9]|1[0-5])/(0?[0-9]|1[0-5])/(0?[0-0])|([0-9]|[1-9][0-9]|[1-9][0-9][0-9]|10[0-1][0-9]|102[0-3])"; + } + } + + typedef sfe_location_type_ncs5500 { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5])))|(0/([R|r][P|p]0))"; + } + } + + typedef sfe_location_type_iosxrwbd { + type string { + pattern "(([F|f](0?[0-9]|1[0-2]))/([F|f][C|c](0)))"; + } + } + + typedef sfe_location_type_ncs4k { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-3])))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1])))"; + } + } + + typedef sfe_location_type { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5])))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1])))"; + } + } + + typedef sfe_location_type_ncs6k { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5])))|(([F|f][0-3])/([F|f][C|c](0?[0-9]|1[0-1])))"; + } + } + + typedef cxp_port_type { + type uint32 { + range "0..31"; + } + } + + typedef sfe_location_zermatt_type { + type string { + pattern "((0?[0-9]|1[0-5])/([F|f][C|c](0?[0-5])))|(0/([R|r][P|p]0))"; + } + } + + typedef qsfpdd_port_type { + type uint32 { + range "0..47"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fm.yang new file mode 100644 index 000000000..3f877aa68 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fm.yang @@ -0,0 +1,687 @@ +module Cisco-IOS-XR-sysadmin-fm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fm"; + prefix fm; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + 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 SysAdmin configuration. + + Fault management YANG model. + + Copyright (c) 2014-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-04-12 { + description + "Changed the namespace and module name"; + } + revision 2012-03-27 { + description + "Initial Revision"; + } + + typedef fm_fault_state_t { + type enumeration { + enum "SET"; + enum "CLEAR"; + enum "INFO"; + enum "INVALID"; + enum "PARTIALLY_QUALIFIED"; + enum "SOAKING_BEFORE_SET"; + enum "SOAKING_BEFORE_CLEAR"; + enum "SUPPRESSED"; + enum "UPDATE"; + } + description + "The status value for a given fault condition."; + } + + typedef fm_fault_severity_t { + type enumeration { + enum "CRITICAL"; + enum "MAJOR"; + enum "MINOR"; + enum "NR"; + } + } + + typedef fm_action_t { + type enumeration { + enum "ISOLATION"; + enum "MITIGATION"; + enum "RECOVERY"; + enum "CORRELATION"; + enum "ALARM"; + enum "REPORT"; + } + description + "The List of supported Action Types"; + } + + typedef fm_action_result_t { + type enumeration { + enum "SUCCESS"; + enum "FAILURE"; + enum "NO-OP"; + } + description + "The result of a certain fm action"; + } + + typedef fm_rule_eval_result_t { + type enumeration { + enum "SUCCESS"; + enum "FAILURE"; + } + description + "The result status of the evaluation of a FM rule."; + } + + typedef fm_ha_role_t { + type calvados:generic-ha-role; + description + "The HA role for the FM entity"; + } + + typedef fm_location_t { + type string; + description + "The location if the fm entity"; + } + + typedef fm_object_id_t { + type string; + description + "The object id of the fm entity"; + } + + typedef fm_agent_id_t { + type string; + description + "A type for identifying a fault agent."; + } + + typedef fm_correlation_obj_qualifier_t { + type enumeration { + enum "QUALIFIER_IGNORED"; + enum "QUALIFIER_RACK"; + enum "QUALIFIER_SLOT"; + enum "QUALIFIER_OBJECT"; + } + } + + typedef fm_history_state_t { + type enumeration { + enum "FM_HISTORY_STATE_ACTIVE"; + enum "FM_HISTORY_STATE_CLEARED"; + enum "FM_HISTORY_STATE_INVALID"; + } + description + "The fm history entry state."; + } + + typedef fm_timestamp_t { + type yang:date-and-time; + description + "The fm timestamp type for all times in fm"; + } + + typedef fm_service_scope_t { + type enumeration { + enum "FM_SERVICE_NODE_SCOPE"; + enum "FM_SERVICE_RACK_SCOPE"; + enum "FM_SERVICE_SYSTEM_SCOPE"; + } + description + "The fm service scope definting type."; + } + + grouping fm_fault_id_t { + description + "A grouping that uniquely indentifies a fault"; + leaf fm_subsystem_id { + type string; + description + "Fault sub-system identifier"; + } + leaf fm_fault_type { + type string; + description + "Fault type identifier"; + } + leaf fm_fault_tag { + type string; + description + "Fault tag identifier"; + } + } + + grouping fm_fault_pending_info_t { + description + "Models data that could eventually cause a new fault"; + uses fm_fault_id_t; + leaf object_id { + type fm_object_id_t; + description + "The object Id of the entity that generated the fault."; + } + leaf fault_timestamp { + type fm_timestamp_t; + description + "The timestamp at which the fault occurred."; + } + leaf fault_state { + type fm_fault_state_t; + description + "The state pf tje causal fault."; + } + leaf fault_count { + type uint64; + description + "Count of occurrence of the fault event."; + } + leaf fault_flag { + type uint64; + description + "FM correlation engine flag, internal."; + } + } + + grouping fm_fault_action_t { + description + "Type to model the fm fault actions."; + leaf common_action { + type uint16; + description + "Common action data"; + } + leaf opaque_action { + type uint16; + description + "opaque action data"; + } + } + + grouping fm_opaque_data_t { + description + "A model for a array of data bytes, opaque to FM"; + leaf opaque_data_len { + type uint16; + description + "The length of opaque data bytes."; + } + } + + grouping fm_fault_data_t { + description + "A type that collects all the fault related data."; + leaf fault_object_id { + type fm_object_id_t; + description + "The object Id of the entity that generated the fault."; + } + leaf fault_state { + type fm_fault_state_t; + description + "The state of the fault."; + } + leaf fault_severity { + type fm_fault_severity_t; + description + "The severity of the fault reported out"; + } + leaf fault_opaque_action { + type uint16; + description + "Opaque action performed on the fault"; + } + uses fm_opaque_data_t; + leaf fault_action_result { + type fm_action_result_t; + description + "Action result"; + } + } + + grouping fm_init_info_t { + description + "A FM instance initialization info."; + leaf levm { + type uint64; + description + "The levm pointer supplied to fm infra."; + } + leaf comp_id { + type uint32; + description + "The owner component Id"; + } + leaf process { + type string; + description + "The name of the process in which this fm instance is active."; + } + leaf default_rule_cb { + type uint64; + description + "Default rule callback pointer."; + } + leaf default_action_cb { + type uint64; + description + "Default action callback pointer."; + } + leaf default_notif_cb { + type uint64; + description + "Default notification callback pointer."; + } + leaf default_error_cb { + type uint64; + description + "Default error callback pointer."; + } + leaf replica_cb { + type uint64; + description + "Data Replica callback pointer."; + } + } + + grouping fm_traversal_t { + description + "A type that captures a fault traversal info"; + uses fm_fault_id_t; + leaf remote_agent_id { + type fm_agent_id_t; + description + "The remote agent id assocaited with this fault."; + } + } + + grouping fm_fault_rule_t { + description + "A type associated with a fault rule"; + leaf fault_location { + type fm_location_t; + description + "The location associated with the fault"; + } + leaf rule_cb { + type uint64; + description + "The callback function that declares the fault"; + } + } + + grouping fm_fault_entry_history_record_basic_t { + description + "A type that captures the basic data of a fault"; + leaf fault_timestamp { + type fm_timestamp_t; + description + "The fault occurence timestamp"; + } + leaf object_id { + type string; + description + "The fault object ID"; + } + } + + grouping fm_fault_entry_history_record_detail_t { + description + "A type that captures the details of a reported fault"; + uses fm_fault_id_t; + leaf object_id { + type string; + description + "The fault object ID"; + } + leaf fault_severity { + type uint16; + description + "The severity of the fault reported out"; + } + leaf fault_state { + type fm_fault_state_t; + description + "The state of the fault."; + } + leaf fault_agent_id { + type fm_agent_id_t; + description + "The agent id associated with the fault"; + } + leaf fault_timestamp { + type fm_timestamp_t; + description + "The fault occurence timestamp"; + } + leaf fault_timer_state { + type boolean; + description + "The state of the timer associated with this fault"; + } + leaf fault_processed { + type boolean; + description + "The fault is acted on"; + } + leaf mitigation_result { + type fm_action_result_t; + description + "The result of the mitigation action on the fault."; + } + leaf recovery_result { + type fm_action_result_t; + description + "The result of the recovery action on the fault."; + } + leaf correlation_result { + type fm_action_result_t; + description + "The result of the correlation action on the fault."; + } + leaf alarm_result { + type fm_action_result_t; + description + "The result of the alarm action on the fault."; + } + leaf default_result { + type fm_action_result_t; + description + "The result of the default action on the fault."; + } + uses fm_opaque_data_t; + leaf occurrence_count { + type uint64; + description + "The occurrence count of the fault"; + } + leaf history_state { + type fm_history_state_t; + description + "The history state of the fault."; + } + } + + grouping fm_fault_table_basic_entry_t { + uses fm_fault_id_t; + leaf name { + type string; + description + "A descriptive name for the fault"; + } + } + + grouping fm_fault_table_detail_entry_t { + uses fm_fault_id_t; + leaf name { + type string; + description + "A descriptive name for the fault"; + } + leaf description { + type string; + description + "Description of the fault"; + } + leaf detection_logic { + type string; + description + "Fault detection logic"; + } + leaf corr_obj_qualifier { + type fm_correlation_obj_qualifier_t; + description + "The qualifier for the object used for correlation."; + } + } + + grouping fm_fault_table_internal_entry_t { + description + "Grouping of internal fields of a fault table entry."; + uses fm_fault_id_t; + list rules { + description + "list of fault rule declaring callbacks"; + uses fm_fault_rule_t; + } + uses fm_fault_action_t; + leaf mitigation_cb { + type uint64; + description + "Pointer to the mitigation callback function."; + } + leaf recovery_cb { + type uint64; + description + "Pointer to the recovery callback function."; + } + leaf alarm_severity_dirty { + type boolean; + description + "Flag indicates if alarm severity is dirty"; + } + leaf disable_action { + type boolean; + description + "Flag indicates all actions are disabled."; + } + leaf repeat_action { + type boolean; + description + "Flag indicates all actions are repeated."; + } + leaf has_causal_list { + type boolean; + description + "Flag indicates if causal list is present."; + } + leaf parser_tag { + type uint64; + description + "The parser tag of the XML parser."; + } + leaf parser_tag_string { + type string; + description + "The parser tag string."; + } + } + + grouping fm_fault_table_alarm_entry_t { + description + "Alarm attributes associated with a fault table entry"; + uses fm_fault_id_t; + leaf alarm_group { + type uint16; + description + "The alarm grouping for this fault."; + } + leaf alarm_severity { + type uint16; + description + "The alarm severity for this fault."; + } + } + + grouping fm_fault_table_stats_entry_t { + uses fm_fault_id_t; + leaf threshold_count { + type uint32; + description + "Threshold count for the fault"; + } + leaf all_object_occur_count { + type uint32; + description + "Object occurrence count."; + } + leaf declared_count { + type uint32; + description + "Number of times the fault is declared."; + } + leaf cleared_count { + type uint32; + description + "Number of times the fault is cleared."; + } + leaf info_count { + type uint32; + description + "Number of times the fault is info."; + } + leaf hold_time { + type uint32; + description + "The hold time in ms for soaking the fault."; + } + } + + container fm { + config false; + description + "Sysadmin fault management operational data model"; + list agents { + key "location process subsystem agent"; + leaf location { + type string; + } + leaf process { + type string; + } + leaf subsystem { + type string; + } + leaf agent { + type string; + } + container fm_initials { + uses fm_init_info_t; + } + container fm_table { + list brief { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + uses fm_fault_table_basic_entry_t; + } + list entry { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + uses fm_fault_id_t; + container detail { + uses fm_fault_table_detail_entry_t; + } + list causal_list { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + description + "Causal list of fault ids for the specified fault."; + uses fm_fault_id_t; + } + list dependency_list { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + description + "Dependency list of fault ids."; + uses fm_fault_id_t; + } + list propagation_list { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + description + "Propagation list of fault agents."; + uses fm_traversal_t; + } + list notification_list { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + description + "Notification list of fault agents."; + uses fm_traversal_t; + } + list escalation_list { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + description + "escalation list of fault agents."; + uses fm_traversal_t; + } + container faults { + container active { + list brief { + key "object_id"; + uses fm_fault_entry_history_record_basic_t; + } + list detail { + key "object_id"; + uses fm_fault_entry_history_record_detail_t; + } + } + container history { + list brief { + key "object_id"; + uses fm_fault_entry_history_record_basic_t; + } + list detail { + key "object_id"; + uses fm_fault_entry_history_record_detail_t; + } + } + } + container waiting_list { + list brief { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + uses fm_fault_pending_info_t; + } + list entry { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + uses fm_fault_pending_info_t; + } + } + } + } + container fm_internals { + list detail { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + uses fm_fault_table_internal_entry_t; + } + } + container fm_alarm_mapping { + list detail { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + uses fm_fault_table_alarm_entry_t; + } + } + container fm_statistics { + list detail { + key "fm_subsystem_id fm_fault_type fm_fault_tag"; + uses fm_fault_table_stats_entry_t; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service.yang new file mode 100644 index 000000000..eda8e7997 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service.yang @@ -0,0 +1,52 @@ +module Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd-service"; + prefix upgrade; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + list location { + key "loc"; + config false; + leaf loc { + type string; + } + list fpd2 { + key "name"; + config false; + leaf name { + type string; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd.yang new file mode 100644 index 000000000..ce66d4791 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpd"; + prefix fpd; + + 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 + "FPD CLI support for both oper and config + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2011-12-03 { + description + "Initial revision."; + } + + grouping fpd { + container config { + description + "fpd config mode"; + uses global-fpd-config-group; + } + } + + grouping global-fpd-config-group { + leaf auto-upgrade { + type enumeration { + enum "enable"; + enum "disable"; + } + default "disable"; + config true; + } + } + + container fpd { + uses fpd; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace.yang new file mode 100644 index 000000000..a0cc85220 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace.yang @@ -0,0 +1,45 @@ +module Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fpd-infra-cli-fpdserv-ctrace"; + prefix fpdserv; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + container fpdserv { + config false; + uses show_trace:traceable; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd.yang new file mode 100644 index 000000000..6743520a9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd.yang @@ -0,0 +1,91 @@ +module Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd"; + prefix shhwfpd; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + grouping hw-module-oper-group { + container shhwfpd { + config false; + list alocation { + key "locs"; + leaf locs { + type string; + } + list fpd { + key "fpdname"; + leaf fpdname { + type string; + } + leaf state { + type string; + description + "Status"; + } + leaf hwver { + type string; + description + "HWver"; + } + leaf fpdver { + type string; + description + "FPD ver"; + } + leaf cardname { + type string; + description + "Card type"; + } + leaf attr { + type string; + description + "Attribute"; + } + leaf fpddnld { + type string; + description + "FPD Programed"; + } + } + } + list fpd { + key "fpdname"; + leaf fpdname { + type string; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd.yang new file mode 100644 index 000000000..730da7ea7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fpd.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-sysadmin-fpd { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fpd"; + prefix fpd; + + 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 + "FPD CLI support for both oper and config + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-18 { + description + "Initial revision."; + semver:module-version "1.0.0"; + } + + grouping fpd { + container config { + description + "FPD config mode"; + uses global-fpd-config-group; + } + } + + grouping global-fpd-config-group { + leaf auto-upgrade { + type enumeration { + enum "enable" { + value 1; + } + enum "disable" { + value 0; + } + } + default "enable"; + config true; + } + } + + container fpd { + uses fpd; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-types.yang new file mode 100644 index 000000000..0b2784e26 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-types.yang @@ -0,0 +1,146 @@ +module Cisco-IOS-XR-sysadmin-fretta-envmon-types { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fretta-envmon-types"; + prefix envmon-types; + + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-11-14 { + description + "Namespace change to keep it with accordance to the RFC"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-07-31 { + description + "Changing the namespace to follow Cisco guidelines on naming convention"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + typedef num_pm { + type uint32 { + range "0..5"; + } + } + + grouping fan-speed-group { + container raise-fan-speed { + container all { + leaf speed_pwm { + type uint32 { + range "0..100"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf speed_pwm { + type uint32 { + range "0..100"; + } + } + } + } + } + } + + grouping fan-ctrl-optics-group { + container fan-ctrl-optics { + container enable { + container rack_loc { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + } + } + } + + grouping gen2-common-lowpower-group { + container gen2-common-lowpower { + container enable { + container rack_loc { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + } + } + } + + grouping vin-uv-shut-group { + container graceful-shutdown { + container disable { + container rack_loc { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-ui.yang new file mode 100644 index 000000000..f4698db6e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-fretta-envmon-ui.yang @@ -0,0 +1,896 @@ +module Cisco-IOS-XR-sysadmin-fretta-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-fretta-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-fretta-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Added GEN2 common low power cli"; + semver:module-version "1.0.0"; + } + revision 2020-11-05 { + description + "added leaf named print_header for all-fan-data"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-11-14 { + description + "Namespace change to keep it with accordance to the RFC"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2018-02-06 { + description + "Adding CLI input validation for LC priority shutdown feature"; + } + revision 2018-01-25 { + description + "Initial revision of LC priority shutdown feature"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-07-31 { + description + "Changing the namespace to follow Cisco guidelines on naming convention"; + } + revision 2017-04-10 { + description + "Adding the source leaf to altitude value, + this is to distinguish the source of the altitude value "; + } + revision 2017-03-31 { + description + "Renamed module and namespace"; + } + revision 2017-03-30 { + description + "commenting the sensor_attributes callpoints for the oper sensors, + using only the location based callpoints for sensor_attributes "; + } + revision 2016-10-12 { + description + "unhide commands and configs. moved to advanced-grp"; + } + revision 2011-11-24 { + description + "Initial revision of show environment commands"; + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + leaf loc_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf fan_header { + type uint32; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + uses envmon-types:gen2-common-lowpower-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module-xrv9k.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module-xrv9k.yang new file mode 100644 index 000000000..b35feea14 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module-xrv9k.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-sysadmin-hw-module-xrv9k { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-hw-module-xrv9k"; + prefix calvados_hw_module; + + import Cisco-IOS-XR-sysadmin-sm-hw-mod { + prefix shelf_mgr; + } + import Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd { + prefix shhwfpd; + } + import Cisco-IOS-XR-sysadmin-obfl-conf { + prefix obflconf; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'hw-module' commands for Sysadmin. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-04 { + description + "Changed the module name to match platform-dependent filename"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2012-07-03 { + description + "Created initial 'hw-module' refactorization"; + } + + container hw-module { + container config { + config true; + uses shelf_mgr:hw-module-config-group; + uses obflconf:hw-module-config-group; + } + container oper { + config false; + list location { + key "location"; + leaf location { + type string; + } + container actions { + uses shelf_mgr:hw-module-action-group; + } + container show; + } + } + uses shhwfpd:hw-module-oper-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module.yang new file mode 100644 index 000000000..9805d3d31 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-hw-module.yang @@ -0,0 +1,79 @@ +module Cisco-IOS-XR-sysadmin-hw-module { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-hw-module"; + prefix calvados_hw_module; + + import Cisco-IOS-XR-sysadmin-sm-hw-mod { + prefix shelf_mgr; + } + import Cisco-IOS-XR-sysadmin-led-mgr-ui { + prefix led_mgr; + } + import Cisco-IOS-XR-sysadmin-fpd-infra-cli-shhwfpd { + prefix shhwfpd; + } + import Cisco-IOS-XR-sysadmin-obfl-conf { + prefix obflconf; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'hw-module' commands for Sysadmin. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2012-07-03 { + description + "Created initial 'hw-module' refactorization"; + } + + container hw-module { + container config { + config true; + uses shelf_mgr:hw-module-config-group; + uses led_mgr:hw-module-config-group; + uses obflconf:hw-module-config-group; + } + container oper { + config false; + list location { + key "location"; + leaf location { + type string; + } + container actions { + uses shelf_mgr:hw-module-action-group; + } + container show; + } + } + uses shhwfpd:hw-module-oper-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-issu.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-issu.yang new file mode 100644 index 000000000..4d0a491ff --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-issu.yang @@ -0,0 +1,1194 @@ +module Cisco-IOS-XR-sysadmin-issu { + namespace "http://cisco.com/calvados/Cisco-IOS-XR-sysadmin-issu"; + prefix issu; + + import tailf-common { + prefix tailf; + } + import ietf-yang-types { + prefix ietf-types; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + 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 executing and monitoring Cisco IOS-XR + sysadmin ISSU operations. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-06-12 { + description + "Fix the 'not in canonical order' errors raised in + CSCvq09045"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-12-13 { + description + "Change the type for the location key leaf of a client list item from string to calvados:location-id. This is only a string with a regex but will block entered CLI which uses an obviously incorrect node string."; + } + revision 2018-07-05 { + description + "Split of the ISSU container into separate information and action containers. Addition of some more leaves to op_start_output, and some more options to the op-start-result enum."; + } + revision 2018-03-12 { + description + "Initial revision"; + } + + typedef op-start-result { + type enumeration { + enum "start-success" { + description + "Operation was started successfully"; + } + enum "error-operation-in-progress" { + description + "Another ISSU operation is already in progress"; + } + enum "activate-error-no-prepare" { + description + "A request to activate the prepared software was made, but there is no successfully prepared software"; + } + enum "prepare-error-previous-prepare" { + description + "A request to prepare software was made, but previously prepared software exists"; + } + enum "recover-error-unrecoverable" { + description + "The system is in a state that makes in-service recovery impossible"; + } + enum "start-error-internal" { + description + "An internal error occured while attempting to start the operation"; + } + enum "prepare-error-previous-operation-not-committed" { + description + "A previous install operation has not been committed"; + } + enum "prepare-error-already-in-progress" { + description + "An install operation is already in progress"; + } + } + description + "Enumeration of errors that can be encountered while attempting to begin an ISSU operation"; + } + + typedef op-result { + type enumeration { + enum "success" { + description + "Operation succeeded"; + } + enum "error-input" { + description + "Part or all of the input was invalid"; + } + enum "error-orchestration" { + description + "An internal error occurred during ISSU orchestration"; + } + enum "error-install" { + description + "An error occured in the install infrastructure"; + } + enum "error-node-redundancy" { + description + "Not all nodes in the system have the required redundancy to allow an ISSU to proceed"; + } + } + description + "Enumeration of errors that can be encountered during an ISSU operation"; + } + + typedef issu-notif { + type enumeration { + enum "notif-sysadmin-op-start" { + description + "A sysadmin ISSU operation is beginning"; + } + enum "notif-sysadmin-phase-start" { + description + "A sysadmin ISSU phase is beginning"; + } + enum "notif-sysadmin-op-end" { + description + "A sysadmin ISSU operation is ending"; + } + } + description + "Enumeration of notifications that features can be registered for"; + } + + typedef op-stage { + type enumeration { + enum "prepare-preamble" { + description + "Prechecks and preprocessing"; + } + enum "prepare-host" { + description + "Host package preparation"; + } + enum "prepare-sysadmin" { + description + "Sysadmin package preparation"; + } + enum "prepare-aborting" { + description + "Aborting after encountering an error"; + } + enum "prepare-postamble" { + description + "Operation post-processing"; + } + enum "prepare-complete" { + description + "All preparation complete"; + } + enum "activate-preamble" { + description + "Pre-checks and pre-processing"; + } + enum "activate-sysadmin-phase-one" { + description + "Sysadmin activation on first subset of nodes"; + } + enum "activate-sysadmin-phase-two" { + description + "Sysadmin activation on second subset of nodes"; + } + enum "activate-host" { + description + "Host activation"; + } + enum "activate-aborting" { + description + "Aborting after encountering an error, from which it is not possible to recover"; + } + enum "activate-paused" { + description + "Paused after encountering an error from which it is possible to recover"; + } + enum "activate-postamble" { + description + "Post-checks and post-processing"; + } + enum "activate-complete" { + description + "All activation complete"; + } + } + description + "Enumeration of stages that the ISSU operation can be in"; + } + + grouping op-start-output { + leaf result { + type op-start-result; + description + "Enumeration value representing the result of the operation start request. In the error case this is duplicated by failure-enum."; + } + leaf failure-enum { + type op-start-result; + description + "Enumeration value representing the error case that was hit. This is only present if the operation failed to start i.e. when op-initiated is False."; + } + leaf id { + type uint32; + description + "On success, the ID of the started operationDuplicate of the operation-id leaf, included for backwards compatibility."; + } + leaf operation-id { + type uint32; + description + "On success, the ID of the started operation"; + } + leaf op-initiated { + type boolean; + description + "True if the operation was started sucessfully, False otherwise"; + } + leaf more-details { + type string; + description + "More details on the cause of failure"; + } + } + + container issu_action { + config false; + description + "ISSU action commands"; + tailf:action "prepare" { + description + "Prepare software for ISSU activation, without changing the running software"; + input { + leaf-list packages { + type string; + description + "Names of packages added to the repository that are to be prepared"; + } + leaf-list ids { + type uint32; + description + "IDs of previous install operations: packages added by these operations are to be prepared"; + } + leaf activate { + type boolean; + default "false"; + description + "If true, automatically activate the software using ISSU once it has been prepared"; + } + } + output { + uses op-start-output; + } + } + tailf:action "activate" { + description + "Activate prepared software using ISSU"; + input; + output { + uses op-start-output; + } + } + tailf:action "deactivate" { + description + "Deactivate software using ISSU"; + input { + leaf-list packages { + type string; + description + "Names of packages that are currently active and are to be deactivated"; + } + leaf-list ids { + type uint32; + description + "IDs of previous install operations: packages added by these operations are to be prepared"; + } + } + output { + uses op-start-output; + } + } + tailf:action "recover" { + description + "Perform an in-service recovery to bring the system back to its original state after a failed ISSU activate or deactivate operation. This is a continuation of the original activate or deactivate operation (so in particular it has the same operation ID)"; + input; + output { + uses op-start-output; + } + } + } + container issu { + config false; + description + "ISSU operational state"; + container status { + config false; + description + "Status of the in-progress or last completed ISSU operation"; + leaf operation-type { + type enumeration { + enum "no-operation" { + description + "No ISSU operations have been attempted."; + } + enum "activate-operation" { + description + "Overall operation will add or upgrade packages in the running software"; + } + enum "deactivate-operation" { + description + "Overall operation will remove packages from the running software"; + } + } + description + "Whether the operation is an activate or deactivate. Both types of operation go through 'prepare' and 'activate' phases.The difference is the end result: whether the target packages are made to run, or removed from the running software."; + } + leaf id { + type uint32; + description + "ID for the current/latest phase of the operation"; + } + leaf prepare-id { + type uint32; + description + "ID for the prepare phase of the operation"; + } + leaf activate-id { + type uint32; + description + "ID for the activate or deactivate phase of the operation"; + } + leaf-list sysadmin-packages { + type string; + description + "Sysadmin packages that are part of the operation"; + } + leaf-list host-packages { + type string; + description + "Host OS packages that are part of the operation"; + } + leaf complete { + type boolean; + description + "Whether or not the operation has completed."; + } + leaf result { + type op-result; + description + "Whether the operation succeeded or failed, and the error if any. If in progress, this reflects the current state."; + } + leaf recover-result { + type op-result; + description + "If a recovery attempt has been completed, an indication of whether the recovery succeeded or failed, and the error if any"; + } + container prepare { + description + "State specific to the prepare phase"; + leaf stage { + type op-stage; + description + "Progress of the prepare phase"; + } + leaf start-time { + type ietf-types:date-and-time; + description + "When this ehase was started"; + } + leaf activity { + type string; + description + "A description of the current orchestration activity being executed"; + } + leaf activity-start-time { + type ietf-types:date-and-time; + description + "When the current activity was started"; + } + } + container activate { + description + "State specific to the activate phase"; + leaf stage { + type op-stage; + description + "Progress of the activate phase"; + } + leaf start-time { + type ietf-types:date-and-time; + description + "When this phase was started"; + } + leaf activity { + type string; + description + "A description of the current orchestration activity being executed"; + } + leaf-list activity-nodes { + type string; + description + "Nodes on which the current orchestration activity is being executed"; + } + leaf activity-waiting-for { + type string; + description + "A description of what needs to happen before the next orchestration activity can be started"; + } + leaf activity-start-time { + type ietf-types:date-and-time; + description + "When the current activity was started"; + } + } + container error { + description + "Details of the first error that was encountered, if there were any."; + leaf result { + type op-result; + description + "If the operation has completed, an indication of whether the operation succeeded or failed, and the error if any"; + } + leaf stage { + type op-stage; + description + "The stage during which the error was encountered"; + } + leaf error-message { + type string; + description + "Message describing the error."; + } + container details { + description + "Details specific to the error. Contents are only filled in if it is relevant to the error that occured."; + leaf-list nodes { + type string; + description + "A list of the nodes affected by or causing the error."; + } + leaf-list clients { + type string; + description + "A list of the registered features affected by or causing the error."; + } + leaf-list packages { + type string; + description + "A list of the packages affected by or causing the error."; + } + leaf-list operation-ids { + type uint32; + description + "A list of the operation IDs affected by or causing the error."; + } + } + } + } + container clients { + description + "Features registered for notifications of ISSU phases"; + leaf announcement { + type issu-notif; + description + "Type of most recent notification sent to clients"; + } + leaf announcement-status { + type enumeration { + enum "announce-no-notif" { + description + "No announcement has yet been sent"; + } + enum "announce-in-progress" { + description + "Announcement is in progress, waiting for responses"; + } + enum "announce-success" { + description + "The announcement has been acknowledged by all clients, ISSU may continue"; + } + enum "announce-veto" { + description + "One or more features vetoed the ISSU operation"; + } + enum "announce-disconnect" { + description + "One or more features disconnected during the announcement"; + } + enum "announce-timeout" { + description + "One or more features timed out during the announcement"; + } + enum "announce-send-error" { + description + "There was an error ending the announcement to one or more features"; + } + enum "announce-client-error" { + description + "One or more features has returned an error during the ISSU operation"; + } + } + description + "Status of most recent notification sent to clients"; + } + list client { + key "name location"; + leaf name { + type string; + description + "Name of the registered feature"; + } + leaf location { + type calvados:location-id; + description + "Node on which the feature process is running"; + } + leaf-list registered-for { + type issu-notif; + description + "Which notifications the feature is registered to receive"; + } + leaf notif { + type issu-notif; + description + "Type of most recent notification"; + } + leaf response { + type enumeration { + enum "notif-resp-no-notif" { + description + "No notification has yet been sent"; + } + enum "notif-resp-pending" { + description + "No response has yet been sent"; + } + enum "notif-resp-ack" { + description + "The notification has been acknowledged, ISSU may continue"; + } + enum "notif-resp-veto" { + description + "The feature has vetoed the ISSU operation"; + } + enum "notif-resp-disconnect" { + description + "The feature has disconnected during the notification"; + } + enum "notif-resp-timeout" { + description + "The feature has timed out during the ISSU operation"; + } + enum "notif-resp-send-error" { + description + "There was an error ending the announcement to the feature"; + } + enum "notif-resp-client-error" { + description + "The feature has returned an error during the ISSU operation"; + } + enum "notif-resp-client-abort" { + description + "The feature has aborted during the ISSU operation"; + } + } + description + "Response from this client to most recent notification sent to the client"; + } + leaf aborted { + type boolean; + description + "Whether the feature has requested that the current operation be aborted"; + } + leaf abort-reason { + type string; + description + "Description of the reason for requesting an abort, if applicable"; + } + } + } + container internals { + description + "Internal infrastructure state"; + container orchestrator { + description + "Orchestrator module internal state"; + + typedef op-request-type { + type enumeration { + enum "operation-request-prepare" { + description + "Request to execute the prepare phase of an operation"; + } + enum "operation-request-activate" { + description + "Request to activate prepared packages"; + } + enum "operation-request-deactivate" { + description + "Request to execute both prepare and deactivate phases of an operation"; + } + enum "operation-request-recover" { + description + "Recover the system from a failed activate or deactivate operation"; + } + } + description + "Enumeration of requests that initiate (part of) an ISSU operation"; + } + + typedef stage-type { + type enumeration { + enum "start" { + description + "Start of operation"; + } + enum "end" { + description + "End of operation"; + } + enum "prepare-inventory-precheck" { + description + "Inventory precheck"; + } + enum "prepare-expand-operation-ids" { + description + "Expand add operation IDs to packages"; + } + enum "prepare-get-metadata" { + description + "Retrieve package metadata"; + } + enum "prepare-extract-composite" { + description + "Extract constituent packages"; + } + enum "prepare-verify-packages" { + description + "Verify package contents"; + } + enum "prepare-host" { + description + "The host preparation"; + } + enum "prepare-calvados" { + description + "The Calvados preparation"; + } + enum "prepare-deactivate-verify-packages" { + description + "Verify package contents for deactivation"; + } + enum "prepare-deactivate-calvados" { + description + "The Calvados preparation for deactivation"; + } + enum "prepare-abort" { + description + "Abort the prepare operation"; + } + enum "prepare-clean" { + description + "Clean-up of prepare operation"; + } + enum "activate-preamble" { + description + "Activation preamble"; + } + enum "deactivate-preamble" { + description + "Deactivation preamble"; + } + enum "activate-calvados-preamble" { + description + "Calvados-specific activation preamble"; + } + enum "activate-calvados-phase" { + description + "Activate the Calvados software"; + } + enum "activate-calvados-phase-reload" { + description + "Reload Calvados VMs"; + } + enum "activate-calvados-phase-postamble" { + description + "Post VM restart checks for Calvados"; + } + enum "activate-calvados-postamble" { + description + "Post Calvados activation handling"; + } + enum "activate-host" { + description + "Execute host ISSU"; + } + enum "activate-postamble" { + description + "Post-processing for the activate operation"; + } + enum "deactivate-calvados" { + description + "Deactivate the Calvados software"; + } + enum "activate-abort-no-recovery" { + description + "Abort the activate operation, no recovery is necessary"; + } + enum "activate-abort-unrecoverable" { + description + "Abort the activate operation, no recovery is possible"; + } + enum "activate-error-pause" { + description + "Pause following an error"; + } + enum "activate-calvados-recovery" { + description + "Rollback to committed Calvados"; + } + enum "activate-recovery-postamble" { + description + "Post rollback to committed Calvados"; + } + } + description + "Enumeration of possible internal stages in an operation"; + } + + typedef phase-type { + type enumeration { + enum "calvados-activate-phase-one" { + description + "Phase one of the Calvados activate operation"; + } + enum "calvados-activate-phase-two" { + description + "Phase two of the Calvados activate operation"; + } + } + description + "Calvados activate phase"; + } + + grouping stage-history-type { + list historical-stage { + key "stage-index"; + leaf stage-index { + type uint32; + description + "Integer stage index"; + } + leaf external-stage { + type op-stage; + description + "External stage of operation"; + } + leaf internal-stage-details { + type string; + description + "Details of the internal stage"; + } + leaf status { + type string; + description + "Status of the stage"; + } + leaf error-details { + type string; + description + "Further error details"; + } + leaf start-time { + type ietf-types:date-and-time; + description + "Start time of stage"; + } + leaf end-time { + type ietf-types:date-and-time; + description + "End time of stage"; + } + leaf complete { + type boolean; + description + "Is the stage complete?"; + } + } + } + leaf command { + type op-request-type; + description + "Command issued"; + } + leaf operation-type { + type op-request-type; + description + "Type of operation: activate or deactivate"; + } + leaf current-operation { + type op-request-type; + description + "Operation being performed"; + } + leaf issu-completed { + type boolean; + description + "True if the overall ISSU operation has been completed, false otherwise"; + } + leaf operation-id { + type uint32; + description + "The ID for the operation"; + } + leaf in-progress { + type boolean; + description + "True if an operation is in progress"; + } + container operation-start-details { + leaf-list input-package { + type string; + description + "Packages used to initiate the operation"; + } + leaf-list input-operation-id { + type uint32; + description + "Operation IDs used to initiate operation"; + } + } + container internal-prepare { + leaf operation-id { + type uint32; + description + "ID of prepare operation"; + } + leaf complete { + type boolean; + description + "True if prepare phase complete"; + } + leaf current-stage { + type stage-type; + description + "Current stage of prepare operation, if a stage is in progress"; + } + leaf-list host-package { + type string; + description + "Host packages to be used in the ISSU"; + } + leaf-list calvados-package { + type string; + description + "Calvados packages to be used in the ISSU"; + } + container prepare-stage-history { + uses stage-history-type; + } + } + container internal-activate { + leaf operation-id { + type uint32; + description + "ID of prepare operation"; + } + leaf complete { + type boolean; + description + "True if activate phase complete"; + } + leaf current-stage { + type stage-type; + description + "Current stage of activate operation, if a stage is in progress"; + } + leaf current-phase { + type phase-type; + description + "Current phase of activate operation, if phase is relevant"; + } + leaf host-prepared { + type boolean; + description + "Indicates whether any host packages have been prepared"; + } + leaf calvados-prepared { + type boolean; + description + "Indicates whether any Calvados packages have been prepared"; + } + leaf-list host-node { + type string; + description + "Nodes participating in host ISSU"; + } + leaf-list calvados-phase-one-node { + type string; + description + "Nodes participating in phase one of Calvados ISSU"; + } + leaf-list calvados-phase-two-node { + type string; + description + "Nodes participating in phase two of Calvados ISSU"; + } + container activate-stage-history { + uses stage-history-type; + } + } + container error { + leaf operation-status { + type string; + description + "Overall status of the operation"; + } + leaf failure-operation { + type op-request-type; + description + "Operation in progress when first error was encountered"; + } + leaf failure-external-stage { + type stage-type; + description + "Stage being undertaken when first failure was encountered"; + } + leaf failure-internal-stage-details { + type string; + description + "Description of the internal state when first error encountered"; + } + leaf error-details { + type string; + description + "String describing error encountered"; + } + leaf-list failed-node { + type string; + description + "Nodes on which a failure occurred"; + } + leaf-list failed-package { + type string; + description + "Packages which caused a failure"; + } + leaf-list failed-operation-id { + type uint32; + description + "Operation IDs which caused a failure"; + } + leaf-list failed-client { + type string; + description + "Registered features which caused a failure"; + } + leaf recovery-attempted { + type boolean; + description + "True if a recovery has been attempted or is currently in progress"; + } + leaf recovery-status { + type string; + description + "Status of the recovery operation"; + } + } + } + container agents { + description + "Agent module internal state"; + container requests { + description + "Data on requests being processed by Agent module"; + list request { + key "request-index"; + leaf request-index { + type uint32; + description + "Integer request index"; + } + leaf request-type { + type enumeration { + enum "requests-node-ready" { + description + "Node ready request"; + } + enum "requests-checkpoint" { + description + "Checkpoint request"; + } + enum "requests-post-upgrade-cleanup" { + description + "Post-upgrade cleanup request"; + } + } + description + "Type of request"; + } + choice contents { + case node-ready; + case checkpoint { + container checkpoint { + leaf message-type { + type enumeration { + enum "requests-checkpoint-start" { + description + "Start request"; + } + enum "requests-checkpoint-end" { + description + "End request"; + } + enum "requests-checkpoint-update" { + description + "Update request"; + } + } + description + "Checkpoint request type"; + } + leaf data-length { + type uint32; + description + "Length of checkpoint data. 0 for start/end requests"; + } + leaf filename { + type string; + description + "Filename of associated checkpoint file"; + } + } + } + case post-upgrade-cleanup; + } + leaf requests-sent { + type uint32; + description + "Number of requests sent. Equal to number of expected responses"; + } + leaf responses-received { + type uint32; + description + "Number of responses received from agents"; + } + container agents { + list agent { + key "agent-index"; + leaf agent-index { + type uint32; + description + "Integer agent index"; + } + leaf node { + type string; + description + "Node ID"; + } + leaf waiting-for-response { + type boolean; + description + "Indicates whether this agent has responded"; + } + container response-contents { + leaf agent-status { + type enumeration { + enum "agent-response-ok" { + description + "Node is ready/operation successful"; + } + enum "agent-response-error" { + description + "Otherwise undefined error"; + } + enum "agent-response-timeout" { + description + "Timeout during request"; + } + enum "agent-response-send-failure" { + description + "Failed to send request"; + } + } + description + "Enum indicating node status"; + } + leaf error-details { + type string; + description + "Further details of error occuring"; + } + } + } + } + } + } + container inventory { + description + "Inventory of agents held by Agent module"; + list agent { + key "agent-index"; + leaf agent-index { + type uint32; + description + "Integer agent index"; + } + leaf agent-node { + type string; + description + "Agent node ID"; + } + leaf reloaded { + type boolean; + description + "True if node has been reloaded. False otherwise"; + } + } + } + container reload-tracking { + description + "Reload tracking performed by Agent module"; + leaf in-progress { + type boolean; + description + "True if reload tracking in progress"; + } + leaf remaining-nodes-count { + type uint32; + description + "Number of nodes which have not yet reloaded"; + } + list node { + key "node-index"; + leaf node-index { + type uint32; + description + "Integer node index"; + } + leaf id { + type string; + description + "Node ID"; + } + leaf reloaded { + type boolean; + description + "True if node has been reloaded. False otherwise"; + } + } + } + } + container inventory-monitor { + description + "Inventory monitor module internal state"; + container inventory { + description + "Inventory of nodes in the system held by ISSU Director"; + list node { + key "node"; + description + "The tree of nodes within the Inventory monitor module, keyed by node ID"; + leaf node { + type string; + description + "Node ID"; + } + leaf ip { + type string; + description + "Node IP address"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-led-mgr-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-led-mgr-ui.yang new file mode 100644 index 000000000..234dc4882 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-led-mgr-ui.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-sysadmin-led-mgr-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-led-mgr-ui"; + prefix led_mgr; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 provides CLI for Status, ATTN, ALARM LED's. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-05 { + description + "Adding support for Bay3 attention LED configuration"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + revision 2012-03-25 { + description + "changed leds to location, and added all"; + } + revision 2012-03-15 { + description + "Initial revision of led commands, march 25 changed leds to + location"; + } + + grouping hw-module-config-group { + uses hw-module-attention-led-config-group; + } + + grouping hw-module-attention-led-config-group { + container attention-led { + list location { + key "location"; + leaf location { + type string { + pattern "([0-255])|((0?[0-9]|1[0-5])/(FC(0?[0-5])))|((0?[0-9]|1[0-5])/(RP(0?[0-1])))|((0?[0-9]|1[0-5])/(0?[0-9]|1[0-5])(/[1-3])?)|((F[0-3])/(FC(0?[0-9]|1[0-1])))|((F[0-3])/(SC(0?[0-1])))|(0?[0-9]/(SC(0?[0-1])))|(0?[0-9]/(FT(0?[0-2])))|(0?[0-9]/(PM(0?[0-9])))"; + } + mandatory true; + } + } + } + } + + container led { + config false; + description + "Calvados Led Manager Status, Attn, Alarm inventory"; + list location { + key "location"; + leaf location { + type string; + } + list led_attributes { + key "led_name"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type boolean; + default "false"; + } + leaf led_name { + type string; + } + leaf led_mode { + type string; + } + leaf led_color { + type string; + } + } + } + uses show_trace:traceable; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-types.yang new file mode 100644 index 000000000..1643db10e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-types.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-sysadmin-ncs1001-envmon-types { + namespace "http://www.cisco.com/ns/Cisco-IOS-XR-sysadmin-ncs1001-envmon-types"; + prefix envmon-types; + + import tailf-common { + prefix tailf; + } + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + typedef num_pm { + type uint32 { + range "0..12"; + } + } + + grouping fan-speed-group { + leaf raise-fan-speed { + type uint32 { + range "0..100"; + } + config false; + tailf:cli-drop-node-name; + } + } + + grouping fan-ctrl-optics-group { + leaf fan-ctrl-optics { + type uint32 { + range "0..1"; + } + config false; + tailf:cli-drop-node-name; + } + } + + grouping vin-uv-shut-group { + leaf graceful-shutdown { + type uint32 { + range "0..1"; + } + config false; + tailf:cli-drop-node-name; + } + } + + grouping gen2-common-lowpower-group { + leaf gen2-common-lowpower { + type uint32 { + range "0..1"; + } + config false; + tailf:cli-drop-node-name; + } + } + tailf:id "http://www.cisco.com/panini/calvados/envmon/types"; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui.yang new file mode 100644 index 000000000..d0191bbfd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui.yang @@ -0,0 +1,891 @@ +module Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ncs1001-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-ncs1001-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2018-02-06 { + description + "Adding CLI input validation for LC priority shutdown feature"; + } + revision 2018-01-25 { + description + "Initial revision of LC priority shutdown feature"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-07-31 { + description + "Changing the namespace to follow Cisco guidelines on naming convention"; + } + revision 2017-04-10 { + description + "Adding the source leaf to altitude value, + this is to distinguish the source of the altitude value "; + } + revision 2017-03-31 { + description + "Renamed module and namespace"; + } + revision 2017-03-30 { + description + "commenting the sensor_attributes callpoints for the oper sensors, + using only the location based callpoints for sensor_attributes "; + } + revision 2016-10-12 { + description + "unhide commands and configs. moved to advanced-grp"; + } + revision 2011-11-24 { + description + "Initial revision of show environment commands"; + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type uint32; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-types.yang new file mode 100644 index 000000000..0aed7a8ae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-types.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-sysadmin-ncs1004-envmon-types { + namespace "http://www.cisco.com/ns/Cisco-IOS-XR-sysadmin-ncs1004-envmon-types"; + prefix envmon-types; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-25 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + typedef num_pm { + type uint32 { + range "0..12"; + } + } + + grouping fan-speed-group { + leaf raise-fan-speed { + type uint32 { + range "0..100"; + } + config false; + } + } + + grouping fan-ctrl-optics-group { + leaf fan-ctrl-optics { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping vin-uv-shut-group { + leaf graceful-shutdown { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping gen2-common-lowpower-group { + leaf gen2-common-lowpower { + type uint32 { + range "0..1"; + } + config false; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui.yang new file mode 100644 index 000000000..2d5beeb07 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui.yang @@ -0,0 +1,891 @@ +module Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ncs1004-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-ncs1004-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-25 { + description + "Changing the namespace to follow Cisco guidelines on naming convention for platform"; + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type uint32; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + container progressive { + list enable { + key "enabled"; + leaf enabled { + type enumeration { + enum "enable"; + } + config true; + } + leaf syslog-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + leaf shutdown-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + container priority { + list location { + key "loc"; + leaf loc { + type string { + pattern "0/([0-9]|1[0-9])"; + } + } + leaf prior { + type uint32 { + range "0 .. 19"; + } + } + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-types.yang new file mode 100644 index 000000000..c0dc6a87b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-types.yang @@ -0,0 +1,84 @@ +module Cisco-IOS-XR-sysadmin-ncs1k-envmon-types { + namespace "http://www.cisco.com/ns/Cisco-IOS-XR-sysadmin-ncs1k-envmon-types"; + prefix envmon-types; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-25 { + description + "Namespace change to comply with Cisco guidelines on namespace for paltform"; + } + + typedef num_pm { + type uint32 { + range "0..12"; + } + } + + grouping fan-speed-group { + leaf raise-fan-speed { + type uint32 { + range "0..100"; + } + config false; + } + } + + grouping fan-ctrl-optics-group { + leaf fan-ctrl-optics { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping vin-uv-shut-group { + leaf graceful-shutdown { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping gen2-common-lowpower-group { + leaf gen2-common-lowpower { + type uint32 { + range "0..1"; + } + config false; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui.yang new file mode 100644 index 000000000..14548b7ee --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui.yang @@ -0,0 +1,891 @@ +module Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ncs1k-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-ncs1k-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-25 { + description + "Changing the namespace to follow Cisco guidelines on naming convention for platform"; + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type uint32; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + container progressive { + list enable { + key "enabled"; + leaf enabled { + type enumeration { + enum "enable"; + } + config true; + } + leaf syslog-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + leaf shutdown-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + container priority { + list location { + key "loc"; + leaf loc { + type string { + pattern "0/([0-9]|1[0-9])"; + } + } + leaf prior { + type uint32 { + range "0 .. 19"; + } + } + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-nto-misc-set-hostname.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-nto-misc-set-hostname.yang new file mode 100644 index 000000000..0505b78c9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-nto-misc-set-hostname.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-sysadmin-nto-misc-set-hostname { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-nto-misc-set-hostname"; + prefix hostname; + + 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 syadmin hostname configuration and cli. + + This module contains definitions + for the following management objects: + hostname cli and configuration data + + Copyright (c) 2017 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-04-12 { + description + "Initial version."; + } + + container hostname { + description + "Set system`s network name"; + leaf name { + type string { + length "1..255"; + pattern "[a-zA-Z0-9_.{}+-]+"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl-conf.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl-conf.yang new file mode 100644 index 000000000..3fcb3e63c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl-conf.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-sysadmin-obfl-conf { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-obfl-conf"; + prefix obflconf; + + 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 is for setting certain OBFL params. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-07-31 { + description + "Changed namespace to Cisco guidelines on naming convention"; + } + revision 2011-12-03 { + description + "Initial revision."; + } + + grouping hw-module-config-group { + uses hw-module-obfl-config-group; + } + + grouping hw-module-obfl-config-group { + list location { + key "location"; + leaf location { + type string; + } + container logging { + container onboard { + choice onboard_target { + case target_disable { + leaf disable { + type empty; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl.yang new file mode 100644 index 000000000..4ce982824 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-obfl.yang @@ -0,0 +1,57 @@ +module Cisco-IOS-XR-sysadmin-obfl { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-obfl"; + prefix obfl; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 holds OBFL data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-07-31 { + description + "Changed namespace to follow Cisco guidelines on naming convention"; + } + revision 2012-10-10 { + description + "Initial revision of show obfl related commands"; + } + + grouping obfl_trace { + container obfl_mgr { + uses show_trace:traceable; + } + container obfl_show { + uses show_trace:traceable; + } + } + + container obfl { + config false; + uses obfl_trace; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-pm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-pm.yang new file mode 100644 index 000000000..5fb5c1ef4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-pm.yang @@ -0,0 +1,432 @@ +module Cisco-IOS-XR-sysadmin-pm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-pm"; + prefix pmh; + + import tailf-common { + prefix tailf; + } + import tailf-xsd-types { + prefix xs; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + The Process Manager (PM). + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-06-13 { + description + "Fixed canonical order errors"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-05-11 { + description + "Initial version."; + } + + typedef startupMode { + type enumeration { + enum "ON-BOOTUP"; + enum "ON-SELECTION"; + enum "ON-DEMAND"; + } + } + + typedef processState { + type enumeration { + enum "IDLE"; + enum "RUNNING"; + enum "STOPPING"; + enum "STOPPED"; + enum "DESELECTING"; + enum "DESELECTED"; + } + } + + typedef serviceScope { + type enumeration { + enum "SYSTEM"; + enum "RACK"; + } + } + + typedef serviceState { + type enumeration { + enum "SS_IDLE"; + enum "SS_RUNNING"; + enum "SS_ACK_PENDING"; + } + } + + typedef serviceRole { + type enumeration { + enum "NONE"; + enum "ACTIVE"; + enum "STANDBY"; + } + } + + typedef proc-name-type { + type string; + } + + typedef user-name-type { + type string; + } + + typedef task-name-type { + type string; + } + + typedef folder-name-type { + type string; + } + + typedef source-name-type { + type string; + } + + typedef dest-name-type { + type string; + } + + typedef file-name-type { + type string; + } + + typedef folder-file-name-type { + type string; + } + + typedef instance-id-type { + type uint32; + } + + typedef service-name-type { + type string; + } + + typedef proc-id-type { + type uint32; + } + + typedef node-name-type { + type string; + } + + container processes { + config false; + description + "Process Info"; + list all-locations { + key "location"; + leaf location { + type string; + } + leaf ip-addr { + type inet:ip-address; + description + "IP address of the location"; + } + leaf pcbs { + type uint32; + description + "Total number of process control blocks"; + } + list name { + key "proc-name instance-id"; + leaf proc-name { + type proc-name-type; + description + "Name of the process"; + } + leaf instance-id { + type instance-id-type; + description + "Instance identifier"; + } + leaf path { + type string; + description + "Process path"; + } + leaf startup-file { + type string; + description + "Process startup file"; + } + leaf startup-mode { + type startupMode; + description + "When is a process started"; + } + leaf heart-beat-timeout { + type uint32; + description + "Heart beat timeout in sec"; + } + leaf last-heart-beat-time { + type xs:double; + description + "How long ago last heart beat was detected"; + } + leaf max-restarts { + type uint32; + description + "Maximum num of restarts"; + } + leaf respawn-reset-timer { + type uint32; + description + "Respawn reset timer in min"; + } + leaf mandatory { + type boolean; + description + "Mandatory process"; + } + leaf maint-mode { + type boolean; + description + "Should run during maintenance mode"; + } + leaf args { + type string; + description + "Process arguments"; + } + leaf proc-state { + type processState; + description + "State of the process"; + } + leaf pid { + type int32; + description + "Process ID"; + } + leaf proc-aborted { + type boolean; + description + "Whether the processes ever aborted"; + } + leaf exit-status { + type string; + description + "Last exit status/info of the process"; + } + leaf respawns { + type int32; + description + "Total number of respawns of the process"; + } + leaf start-time { + type string; + description + "Last start date and time"; + } + leaf ready-time { + type xs:double; + description + "Time for ready from start-time"; + } + leaf last-exit-time { + type string; + description + "Last exit date and time"; + } + list services { + key "service-name"; + leaf service-name { + type string; + description + "Name of the service"; + } + leaf scope { + type serviceScope; + description + "Scope of the service"; + } + leaf redundancy { + type boolean; + description + "Service redundancy support"; + } + leaf ha-ready { + type boolean; + description + "Standby ready for HA"; + } + leaf service-state { + type serviceState; + description + "State of the service"; + } + leaf ha-role { + type serviceRole; + description + "Service role"; + } + leaf new-ha-role { + type serviceRole; + description + "New service role, different if PM in process of assigning"; + } + leaf selected { + type boolean; + description + "Service seleted to run on the node"; + } + leaf ip1 { + type inet:ip-address; + description + "First IP address in the selection"; + } + leaf ip2 { + type inet:ip-address; + description + "Second IP address in the selection"; + } + leaf svc-start-time { + type string; + description + "Last start date and time"; + } + leaf svc-ready-time { + type xs:double; + description + "Time it took to get ready since start time"; + } + leaf svc-haready-time { + type xs:double; + description + "Time it took to get HA-ready since start time"; + } + } + tailf:action "proc-action" { + input { + leaf do-what { + type enumeration { + enum "crash"; + enum "restart"; + enum "disable-heartbeat"; + enum "enable-heartbeat"; + enum "start"; + enum "shutdown"; + enum "mandatory-toggle"; + } + mandatory true; + } + leaf user-name { + type string; + mandatory true; + description + "Name of the logged in user"; + } + leaf user-ip { + type string; + mandatory true; + description + "IP address of the user"; + } + } + output { + leaf proc-action-status { + type string; + mandatory true; + } + } + } + } + } + } + container process-manager { + config false; + description + "Process Manager Info"; + list all-locations-info { + key "location-info"; + leaf location-info { + type string; + } + leaf ip-addr-info { + type inet:ip-address; + description + "IP address of the location"; + } + leaf pm-start-time { + type string; + description + "Last start date and time for PM"; + } + leaf mand-proc-down { + type boolean; + description + "PM in mandatory process down state"; + } + leaf vmm-capi-up { + type boolean; + description + "Status of CAPI with vm-manager"; + } + leaf wdmon-capi-up { + type boolean; + description + "Status of CAPI with wdmon"; + } + leaf wdmon-capi-timestamp { + type string; + description + "Date and time of last wdmon CAPI connection establish"; + } + leaf wdmon-num-capi-connects { + type uint32; + description + "Number of times wdmon CAPI connection extablished"; + } + } + } + container pm { + config false; + container pm { + uses show_trace:traceable; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rmon.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rmon.yang new file mode 100644 index 000000000..75de82c71 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rmon.yang @@ -0,0 +1,149 @@ +module Cisco-IOS-XR-sysadmin-rmon { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-rmon"; + prefix rmon; + + 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 SysAdmin configuration. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-15 { + description + "Removed unused imports"; + semver:module-version "1.0.0"; + } + revision 2020-09-24 { + description + "Initial Version"; + } + + grouping rmon_cli_history_option_grouping { + container rack-loss-history { + list hist_entries { + key "hist_index"; + leaf hist_index { + type uint32; + } + leaf hist_serial { + type string; + } + leaf hist_rack_num { + type string; + } + leaf hist_time_stamp { + type string; + } + } + } + } + + grouping rmon_cli_db_option_grouping { + container db { + config false; + list rack { + key "rack_num"; + leaf serial { + type string; + description + "Serial number of the rack"; + } + leaf rack_type { + type string; + description + "Rack Type"; + } + leaf rack_num { + type string; + description + "Rack Number"; + } + leaf rack_state { + type string; + description + "Rack State"; + } + leaf n_adj { + type uint32; + description + "Number of adjacent racks"; + } + list adj-info { + key "remote_serial"; + leaf remote_serial { + type string; + description + "Serial number of the remote rack"; + } + list adj-link-info { + key "my_slot my_port"; + leaf my_slot { + type uint32; + description + "Local Slot number"; + } + leaf my_port { + type uint32; + description + "Local Port number"; + } + leaf remote_slot { + type uint32; + description + "Remote Slot number"; + } + leaf remote_port { + type uint32; + description + "Remote Port number"; + } + leaf link_state { + type string; + description + "Link State"; + } + leaf adj_serial { + type string; + description + "Remote serial"; + } + leaf adj_rack_num { + type string; + description + "Remote rack num"; + } + } + } + } + } + } + + container rmon { + config false; + list location { + key "loc"; + leaf loc { + type string; + } + uses rmon_cli_db_option_grouping; + uses rmon_cli_history_option_grouping; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rvm-mgr.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rvm-mgr.yang new file mode 100644 index 000000000..7d2d8a29c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-rvm-mgr.yang @@ -0,0 +1,186 @@ +module Cisco-IOS-XR-sysadmin-rvm-mgr { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-rvm-mgr"; + prefix rvmmh; + + import ietf-inet-types { + prefix inet; + } + 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 SysAdmin configuration. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-09 { + description + "Changed ipv4 address type from decimal to inet ipv4"; + semver:module-version "2.1.0"; + } + revision 2019-06-12 { + description + "Fixed canonical order error for keyword config"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-05-12 { + description + "Initial Version"; + } + + typedef nodetype_td { + type enumeration { + enum "sysadmin" { + value 1; + } + enum "service" { + value 2; + } + } + } + + typedef flagtype_td { + type enumeration { + enum "clear" { + value 0; + } + enum "set" { + value 1; + } + } + } + + container RVM { + config false; + description + "RVM Manager Info"; + list all-locations { + key "location"; + leaf location { + type string; + } + container objects { + config false; + description + "RVM Manager Info"; + list all-objs { + key "index"; + leaf index { + type uint32; + description + "Index into obj_db array"; + } + leaf num_allocated { + type uint32; + description + "Number of allocated nodes"; + } + leaf num_freed { + type uint32; + description + "Number of freed nodes"; + } + leaf num_objects { + type uint32; + description + "Number of current object nodes"; + } + } + } + container node { + config false; + description + "RVM Manager Node Info"; + list all-nodes { + key "ipv4_addr"; + leaf ipv4_addr { + type inet:ipv4-address; + description + "IP address of the node"; + } + leaf ipv4_addr_str { + type string; + description + "IP address of the node in string format"; + } + leaf node_info { + type string; + description + "Node type state and flag"; + } + leaf node_hb_info { + type string; + description + "Node heartbeat related info"; + } + leaf node_card_info { + type string; + description + "Card info the node belongs to"; + } + leaf node_event_history { + type string; + description + "Node RVM event history"; + } + } + } + container card { + config false; + description + "RVM Manager Card Info"; + list all-cards { + key "serial_num"; + leaf serial_num { + type string; + description + "Serial number of the card"; + } + leaf card_flag { + type string; + description + "Card flags"; + } + leaf card_info { + type string; + description + "Card rack and slot num"; + } + leaf sysadmin_nodes { + type string; + description + "Sysadmin nodes on this card"; + } + leaf xr_nodes { + type string; + description + "XR nodes on this card"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sdr-mgr.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sdr-mgr.yang new file mode 100644 index 000000000..0b8459bcc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sdr-mgr.yang @@ -0,0 +1,673 @@ +module Cisco-IOS-XR-sysadmin-sdr-mgr { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-sdr-mgr"; + prefix calvados_sdr; + + import tailf-common { + prefix tailf; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + This module defines the SDR-SM support config for SDR + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-04 { + description + "Added suppport to hide vm resources from config"; + semver:module-version "2.0.0"; + } + revision 2019-06-12 { + description + "Fixed canonical order error for keywords key/type/mandantory"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2019-04-12 { + description + "Added tailf:cli-full-command for issu and pairing-mode config"; + } + revision 2018-10-22 { + description + "Removed choice for action re_pair"; + } + revision 2018-10-15 { + description + "Removed confirm txt for reload/shut/start actions"; + } + revision 2018-05-15 { + description + "Added node-type leaf in sdr-operation container"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2018-03-05 { + description + "Added slice option in sdr-config"; + } + revision 2018-02-20 { + description + "Added sdr-operation container to display SDR operation progress"; + } + revision 2018-02-02 { + description + "Added cli-suppress-table for container detail and corrected alignment for container reboot-hist"; + } + revision 2017-07-22 { + description + "Updated location pattern to include Compute Cards"; + } + revision 2017-06-20 { + description + "Changed the type of rp leaves in container pairing2 to string"; + } + revision 2017-06-16 { + description + "Added leaf issu to provide an option to disable SDR ISSU"; + } + revision 2017-06-09 { + description + "SDR config will now take a list of initial images"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + revision 2016-05-12 { + description + "Initial Version"; + } + + typedef Location { + type string { + pattern "((0?[0-9]|[1-3][0-9]|4[0-7]|([bB]|[dD])\\d)/(([rR][pP]|[lL][cC]|[cC][bB])?\\d{1,2}))(/[cC][pP][uU]0)?|all"; + } + description + "A system location in Rack/Slot/Instance"; + } + + typedef RPLocation { + type string { + pattern "((0?[0-9]|1[1-5]|([bB]|[dD])\\d)/(([rR][pP]|[cC][bB])\\d{1,2}))(/[cC][pP][uU]0)?"; + } + description + "A system location in Rack/Slot/Instance"; + } + + typedef VMLocation { + type string { + pattern "((0?[0-9]|[1-3][0-9]|4[0-7]|([bB]|[dD])\\d)/((([rR]([sS]){0,1}[pP])|[cC][bB])?\\d{1,2})/[V][M](0?[0-9]|1[1-5]))?"; + } + description + "A system location in Rack/Slot/Instance"; + } + + typedef VMLocationall { + type string { + pattern "((0?[0-9]|[1-3][0-9]|4[0-7]|([bB]|[dD])\\d)/((([rR]([sS]){0,1}[pP])|[cC][bB])?\\d{1,2})/[V][M](0?[0-9]|1[1-5]))?|all"; + } + description + "A system location in Rack/Slot/Instance"; + } + + typedef CardType { + type enumeration { + enum "RP"; + enum "LC"; + enum "CC"; + } + description + "The List of supported Card Types"; + } + + typedef vm_reload_reason { + type enumeration { + enum "CARD_OFFLINE"; + enum "CARD_SHUTDOWN"; + enum "ALL_VM_RELOAD"; + enum "VM_REQUESTED_GRACEFUL_RELOAD"; + enum "VM_REQUESTED_UNGRACEFUL_RELOAD"; + enum "SDR_CLI_REQUESTED"; + enum "SDR_VCPU_VMEM_CHANGED"; + enum "SDR_HEARTBEAT_FAILURE"; + enum "FIRST_BOOT"; + enum "SMU"; + enum "REASON_UNKNOWN"; + } + description + "The List of vm reload reasons"; + } + + container sdr-config { + leaf hide-resources { + type boolean; + default "false"; + config true; + } + list sdr { + key "name"; + description + "Add/Edit a Secure Domain Router by name"; + leaf name { + type string { + pattern "[a-zA-Z0-9_-]{1,30}"; + } + description + "Name of the Secure Domain Router , 30 max characters"; + } + leaf initial-image { + type string; + description + "List of the initial image and packages for the Secure Domain Router."; + } + leaf lead_down_delta { + type uint32; + description + "Amount of time between lead down to declare SDR down"; + } + leaf pairing-mode { + type enumeration { + enum "intra-rack"; + enum "inter-rack"; + } + description + "Setting for pairing mode"; + } + leaf issu { + type enumeration { + enum "disable"; + } + description + "ISSU flag. Once disabled, ISSU won't be performed for this SDR."; + } + container resources { + description + "Edit resources for a Secure Domain Router"; + leaf fgid { + type uint32 { + range "25000..524288"; + } + description + "Fgids for a Secure Domain Router"; + } + leaf mgmt_ext_vlan { + type uint32 { + range "2..4094"; + } + description + "Management External VLAN for Secure Domain Router"; + } + list card-type { + when "/sdr-config/hide-resources = 'false'"; + key "type"; + leaf type { + type CardType; + description + "Card Type"; + } + leaf vm-memory { + type uint32 { + range "1..128"; + } + description + "VM Memory Size in units of [GB]"; + } + leaf vm-cpu { + type uint32 { + range "1..128"; + } + description + "VM Number of CPUs"; + } + } + } + list location { + key "node-location"; + min-elements 1; + max-elements "64"; + description + "Enter list of nodes' location to add to this LR"; + leaf node-location { + type Location; + description + "Enter location or all"; + } + leaf-list slice { + type uint8 { + range "0 .. 4"; + } + max-elements "4"; + description + "Enter list of slices to add to this SDR"; + } + } + container Action { + config false; + tailf:action "re_pair" { + input; + output { + leaf result { + type string; + mandatory true; + } + } + } + list location { + key "node-location"; + min-elements 1; + max-elements "64"; + leaf node-location { + type VMLocationall; + description + "Enter location or all"; + } + tailf:action "reload" { + input { + choice what_act { + case act_force { + leaf force { + type empty; + mandatory false; + } + } + case act_coredump { + leaf coredump { + type empty; + mandatory false; + } + } + } + } + output { + leaf result { + type string; + mandatory true; + } + } + } + tailf:action "shut" { + input; + output { + leaf result { + type string; + mandatory true; + } + } + } + tailf:action "start" { + input; + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + container detail { + config false; + list location { + key "node-location"; + min-elements 1; + max-elements "64"; + leaf node-location { + type VMLocation; + } + leaf sdr-id { + type uint32; + } + leaf ip-addr { + type inet:ip-address; + description + "IP address of VM"; + } + leaf mac-address { + type string; + description + "MAC address of VM"; + } + leaf boot_part { + type string; + } + leaf data_part { + type string; + } + leaf big_disk { + type string; + } + leaf vm_id { + type uint32; + } + leaf vmcpu { + type uint32; + } + leaf vmmemory { + type uint32; + } + leaf card-type { + type string; + } + leaf card_serial { + type string; + } + leaf rack-type { + type string; + } + leaf-list slice { + type union { + type uint8; + type string; + } + description + "Slice numbers if configured"; + } + leaf chassis_serial { + type string; + } + leaf hw_version { + type string; + } + leaf mgmt_ext_vlan { + type string; + } + leaf state { + type string; + description + "State of VM"; + } + leaf start-time { + type string; + } + leaf reboot_count { + type uint32; + description + "Number of times rebooted since first boot"; + } + leaf rh_count { + type uint32; + description + "Number of times rebooted since lasr card reload"; + } + list reboot_hist1 { + key "count"; + leaf count { + type uint32; + } + leaf Time { + type string; + } + leaf Reason { + type string; + description + "Reason for reload"; + } + } + } + } + container reboot-history { + config false; + + grouping rebhist { + list location { + key "node-location"; + min-elements 1; + max-elements "64"; + leaf node-location { + type VMLocation; + } + leaf reboot_count { + type uint32; + description + "Number of times rebooted since first boot"; + } + leaf rh_count { + type uint32; + description + "Number of times rebooted since last card reload"; + } + list reboot_hist2 { + key "count"; + leaf count { + type uint32; + } + leaf Time { + type string; + } + leaf Reason { + type string; + description + "Reason for reload"; + } + } + } + } + container reverse { + uses rebhist; + } + container default-disp { + uses rebhist; + } + } + container nodes { + config false; + list location { + key "node-location"; + min-elements 1; + max-elements "64"; + leaf node-location { + type VMLocation; + } + leaf sdr-id { + type uint32; + } + leaf ip-addr { + type inet:ip-address; + description + "IP address of VM"; + } + leaf mac-address { + type string; + description + "MAC address of VM"; + } + leaf state { + type string; + description + "State of VM"; + } + leaf start-time { + type string; + } + leaf reload_reason { + type string; + description + "Reason for last reload"; + } + leaf reboot_count { + type uint32; + description + "Number of times rebooted since first boot"; + } + leaf rh_count { + type uint32; + description + "Number of times rebooted since first boot"; + } + } + } + container pairing2 { + config false; + leaf pairing-mode { + type string; + description + "Mode of Pairing"; + } + container sdrlead { + leaf rp1 { + type string; + } + leaf rp2 { + type string; + } + } + list pairing { + key "name"; + min-elements 1; + max-elements "64"; + leaf name { + type string; + } + leaf rp1 { + type string; + } + leaf rp2 { + type string; + } + } + } + list pairing { + key "name"; + description + "Add/Edit a RP Pairing by name"; + leaf name { + type string { + pattern "[a-zA-Z0-9_-]{1,64}"; + } + } + leaf rp1 { + type RPLocation; + mandatory true; + description + "Enter RP Node location"; + } + leaf rp2 { + type RPLocation; + mandatory true; + description + "Enter RP Node location"; + } + } + } + } + container sdr-manager { + config false; + container sdr_mgr { + uses show_trace:traceable; + } + } + container sdr-operation { + config false; + list sdr { + key "name"; + description + "SDR"; + leaf name { + type string { + pattern "[a-zA-Z0-9_-]{1,30}"; + } + description + "Name of the Secure Domain Router, 30 max characters"; + } + container nodes { + config false; + list location { + key "node-location node-type"; + min-elements 1; + max-elements "64"; + leaf node-location { + type string; + } + leaf node-type { + type uint32; + } + leaf progress { + type string; + description + "Progress of Operation"; + } + leaf state { + type string; + description + "State of Operation"; + } + } + } + } + } + container private-sdr { + list sdr-name { + key "name"; + min-elements 0; + max-elements "64"; + leaf name { + type string; + } + leaf id { + type uint32; + } + leaf lead_rack0 { + type uint32; + } + leaf lead_rack1 { + type uint32; + } + list pairing { + key "num"; + min-elements 0; + max-elements "64"; + leaf num { + type uint32; + } + leaf second_exist { + type boolean; + } + leaf rp1_rack { + type uint32; + } + leaf rp1_slot { + type uint32; + } + leaf rp2_rack { + type uint32; + } + leaf rp2_slot { + type uint32; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-services.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-services.yang new file mode 100644 index 000000000..fd289bb91 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-services.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-sysadmin-services { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-services"; + prefix calvados_services; + + 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 SysAdmin configuration. + + This module defines the services offered in the + sysadmin plane. + + Copyright(c) 2016 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-11-10 { + description + "Initial revision"; + } + + container service { + config true; + container cli { + container interactive { + leaf enabled { + type boolean; + default "true"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ship.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ship.yang new file mode 100644 index 000000000..7ace718f5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-ship.yang @@ -0,0 +1,220 @@ +module Cisco-IOS-XR-sysadmin-ship { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-ship"; + prefix ship; + + 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 SysAdmin operational. + + This module defines operational data for + sysadmin ship process. + + Copyright (c) 2010-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-09 { + description + "Namespace change to comply with Cisco guidelines"; + } + revision 2016-05-30 { + description + "Initial version."; + } + + container stat { + config false; + description + "SHIP Info"; + list ship_comp { + key "comp-name"; + description + "Select ship client component"; + leaf comp-name { + type string; + description + "Name of component"; + } + list process { + key "process-name"; + leaf process-name { + type string; + } + list client { + key "client-name"; + leaf client-name { + type string; + } + list cat { + key "cat-name"; + leaf cat-name { + type enumeration { + enum "SHIP_TRANSPORT_COUNTERS" { + value 0; + } + enum "SHIP_SERVER_COUNTERS" { + value 1; + } + enum "SHIP_CLIENT_LIB_COUNTERS" { + value 2; + } + enum "SHIP_REPLICATION_COUNTERS" { + value 3; + } + enum "SHIP_READER_REPLICA_COUNTERS" { + value 4; + } + enum "SHIP_WRITER_REPLICA_COUNTERS" { + value 5; + } + enum "SHIP_TRANSPORT_COUNTERS_FAILOVER" { + value 6; + } + enum "SHIP_SERVER_COUNTERS_FAILOVER" { + value 7; + } + enum "SHIP_CLIENT_LIB_COUNTERS_FAILOVER" { + value 8; + } + enum "SHIP_REPLICATION_COUNTERS_FAILOVER" { + value 9; + } + enum "SHIP_TRANSPORT_ERRORS" { + value 10; + } + enum "SHIP_SERVER_ERRORS" { + value 11; + } + enum "SHIP_CLIENT_LIB_ERRORS" { + value 12; + } + enum "SHIP_REPLICATION_ERRORS" { + value 13; + } + enum "SHIP_READER_REPLICA_ERRORS" { + value 14; + } + enum "SHIP_WRITER_REPLICA_ERRORS" { + value 15; + } + enum "SHIP_TRANSPORT_ERRORS_FAILOVER" { + value 16; + } + enum "SHIP_SERVER_ERRORS_FAILOVER" { + value 17; + } + enum "SHIP_CLIENT_LIB_ERRORS_FAILOVER" { + value 18; + } + enum "SHIP_REPLICATION_ERRORS_FAILOVER" { + value 19; + } + enum "FEATURE_MA_COUNTERS" { + value 20; + } + enum "FEATURE_MA_COUNTERS_ERRORS" { + value 21; + } + enum "FEATURE_MA_COUNTERS_FAILOVER" { + value 22; + } + enum "VIRTUAL_INTERFACE_MA_COUNTERS" { + value 23; + } + enum "VIRTUAL_INTERFACE_MA_COUNTERS_ERRORS" { + value 24; + } + enum "VIRTUAL_INTERFACE_MA_COUNTERS_FAILOVER" { + value 25; + } + enum "FEATURE_EA_COUNTERS" { + value 26; + } + enum "FEATURE_EA_COUNTERS_ERRORS" { + value 27; + } + enum "VIRTUAL_INTERFACE_EA_COUNTERS" { + value 28; + } + enum "VIRTUAL_INTERFACE_EA_COUNTERS_ERRORS" { + value 29; + } + enum "VIRTUAL_INTERFACE_EA_COUNTERS_FAILOVER" { + value 30; + } + enum "SHIP_HISTOGRAM_COUNTERS" { + value 31; + } + enum "SHIP_WATERMARK_COUNTERS" { + value 32; + } + enum "SHIP_NODE_COUNTERS" { + value 33; + } + } + } + list counter-32b { + key "counter-name"; + leaf counter-name { + type string; + } + leaf counter-value { + type uint32; + } + leaf watermark { + type uint32; + } + leaf time-stamp { + type uint64; + } + leaf hist-info1 { + type uint32; + } + leaf hist-info2 { + type uint32; + } + leaf hist-info3 { + type uint32; + } + leaf hist-info4 { + type uint32; + } + leaf hist-info5 { + type uint32; + } + leaf hist-info6 { + type uint32; + } + leaf hist-info7 { + type uint32; + } + leaf hist-info8 { + type uint32; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-bmc.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-bmc.yang new file mode 100644 index 000000000..503ef6630 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-bmc.yang @@ -0,0 +1,59 @@ +module Cisco-IOS-XR-sysadmin-show-bmc { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-bmc"; + prefix show_bmc; + + 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 SysAdmin configuration. + + This module holds bmc data for chassis. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-02 { + description + "Initial revision of show bmc commands"; + semver:module-version "2.0.0"; + } + + grouping bmc-brief-oper-group { + container brief { + list chassis_serial { + key "serial_number"; + leaf serial_number { + type string; + } + container brief-data { + leaf racknum { + type string; + } + leaf ip_address { + type string; + } + } + } + } + } + + container bmc { + config false; + uses bmc-brief-oper-group; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diag.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diag.yang new file mode 100644 index 000000000..0aba5802b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diag.yang @@ -0,0 +1,179 @@ +module Cisco-IOS-XR-sysadmin-show-diag { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-diag"; + prefix show_diag; + + 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 SysAdmin configuration. + + This module holds diag data for chassis, card, fan, power. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2012-03-27 { + description + "Initial revision of show diag commands"; + } + + grouping diag-default-data { + + grouping chassis_eeprom_grp { + container chassis_eeprom_cnt { + list chassis_eeprom_list { + key "location"; + leaf location { + type string; + } + container eeprom-data { + leaf-list raw_list { + type string; + } + } + } + } + } + + grouping chassis_grp { + container chassis_cnt { + list chassis_list { + key "location"; + leaf location { + type string; + } + container default-data { + leaf-list default_out_list { + type string; + } + } + } + } + } + container default { + list default_list { + key "location"; + leaf location { + type string; + } + container default-data { + leaf-list default_out_list { + type string; + } + } + } + } + container fans { + list fans_list { + key "location"; + leaf location { + type string; + } + container default-data { + leaf-list default_out_list { + type string; + } + } + } + } + container power-supply { + list pwr_list { + key "location"; + leaf location { + type string; + } + container default-data { + leaf-list default_out_list { + type string; + } + } + } + } + container chassis { + uses chassis_grp; + uses chassis_eeprom_grp; + } + } + + grouping diag-summary-data { + container summary { + list summary_list { + key "location"; + leaf location { + type string; + } + container summary-data { + leaf-list summary_out_list { + type string; + } + } + } + } + } + + grouping diag-detail-data { + container detail { + list detail_list { + key "location"; + leaf location { + type string; + } + container detail-data { + leaf-list detail_out_list { + type string; + } + } + } + } + } + + grouping diag-eeprom-location-data { + container eeprom { + list eeprom_list { + key "location"; + leaf location { + type string; + } + container eeprom-data { + leaf-list raw_list { + type string; + } + } + } + } + } + + container diag { + config false; + description + "diag data"; + uses diag-default-data; + uses diag-summary-data; + uses diag-eeprom-location-data; + uses diag-detail-data; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diskenc-status.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diskenc-status.yang new file mode 100644 index 000000000..25377f2a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-diskenc-status.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-sysadmin-show-diskenc-status { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-diskenc-status"; + prefix media_enc; + + 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 SysAdmin to + report back memory utilization in sysadmin. + + Copyright (c) 2018-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-26 { + description + "Initial revision"; + semver:module-version "1.0.0"; + } + + typedef node-name-type { + type string; + } + + container disk-encryption { + config false; + description + "Show disk encryption status in sysadmin"; + list all-locations { + key "location"; + description + "Disk encryption status for system"; + leaf location { + type string; + description + "Disk encryption status for one node"; + } + list all_mountpts { + key "mountpt"; + leaf mountpt { + type string; + description + "Media partition name"; + } + leaf enc_status { + type string; + description + "Media enc status"; + } + leaf mount_status { + type string; + description + "Media mount status"; + } + leaf prep_status { + type string; + description + "Media prepare status"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-inv.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-inv.yang new file mode 100644 index 000000000..c86b2363d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-inv.yang @@ -0,0 +1,193 @@ +module Cisco-IOS-XR-sysadmin-show-inv { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-inv"; + prefix inv; + + 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 SysAdmin configuration. + + Calvados Inventory Service maintain entity database + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-24 { + description + "Add container locationinfo"; + semver:module-version "3.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2013-07-20 { + description + "MC revision of show inventory commands"; + } + + grouping target_str { + leaf name { + type string; + description + "Name of the entity"; + } + leaf Description { + type string; + description + "Description of the entity"; + } + leaf PID { + type string; + description + "Product ID of the entity"; + } + leaf VID { + type string; + description + "Version ID of the entity"; + } + leaf SN { + type string; + description + "Serial Numbe of the entity"; + } + } + + grouping inv-loc { + list location { + key "loc"; + leaf loc { + type string; + description + "Node id of the entity"; + } + list locationinfo { + key "name"; + uses target_str; + } + leaf name { + type string; + status deprecated; + description + "Name of the entity"; + } + leaf Description { + type string; + status deprecated; + description + "Description of the entity"; + } + leaf PID { + type string; + status deprecated; + description + "Product ID of the entity"; + } + leaf VID { + type string; + status deprecated; + description + "Version ID of the entity"; + } + leaf SN { + type string; + status deprecated; + description + "Serial Numbe of the entity"; + } + } + } + + grouping inv-all { + list all { + key "index"; + leaf index { + type uint32; + description + "Index for the entity"; + } + uses target_str; + } + } + + grouping inv-chassis { + list chassis { + key "index"; + leaf index { + type uint32; + description + "Index for the entity"; + } + uses target_str; + } + } + + grouping inv-power { + list power { + key "index"; + leaf index { + type uint32; + description + "Index for the entity"; + } + uses target_str; + } + } + + grouping inv-fan { + list fan { + key "index"; + leaf index { + type uint32; + description + "Index for the entity"; + } + uses target_str; + } + } + + grouping inv-raw { + list raw { + key "index"; + leaf index { + type uint32; + description + "Index for the entity"; + } + uses target_str; + } + } + + container inventory { + config false; + description + "show inventory"; + uses inv-loc; + uses inv-all; + uses inv-chassis; + uses inv-power; + uses inv-fan; + uses inv-raw; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-media.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-media.yang new file mode 100644 index 000000000..9ac522a17 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-media.yang @@ -0,0 +1,92 @@ +module Cisco-IOS-XR-sysadmin-show-media { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-media"; + prefix mediasvrh; + + 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 SysAdmin to + report back memory utilization in sysadmin. + + Copyright (c) 2018-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-06-04 { + description + "Breaking output show_media_report into fields"; + semver:module-version "2.0.0"; + } + revision 2020-04-08 { + description + "Suppressing raw output"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-06 { + description + "Initial revision"; + } + + container ShowMedia { + config false; + description + "Show the memory usage in sysadmin"; + list all-locations { + key "location"; + description + "Media information for system"; + leaf location { + type string; + description + "Media information for one node"; + } + list partition { + key "name"; + leaf name { + type string; + description + "Media partition name"; + } + leaf size { + type string; + description + "Media partition size in T/G/M/K/B"; + } + leaf used { + type string; + description + "Media partition used space in T/G/M/K/B"; + } + leaf percent { + type string; + description + "Media partition used space percentage"; + } + leaf avail { + type string; + description + "Media partition available space in T/G/M/K/B"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-obfl.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-obfl.yang new file mode 100644 index 000000000..4804f98f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-obfl.yang @@ -0,0 +1,253 @@ +module Cisco-IOS-XR-sysadmin-show-obfl { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-obfl"; + prefix shobfl; + + 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 holds OBFL data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-05 { + description + "Added np container"; + } + revision 2017-10-09 { + description + "Added fia_asic_init_fail container"; + } + revision 2017-07-31 { + description + "Changed namespace to follow Cisco guidelines on naming convention"; + } + revision 2011-11-24 { + description + "Initial revision of show obfl related commands"; + } + + grouping obfl_data { + container uptime { + config false; + list location { + key "location"; + leaf location { + type string; + } + container uptime { + leaf-list uptime_values { + type string; + } + } + } + } + container nvram { + config false; + list location { + key "location"; + leaf location { + type string; + } + container nvram { + leaf-list nvram_values { + type string; + } + } + } + } + container fia_asic_init_fail { + config false; + list location { + key "location"; + leaf location { + type string; + } + container fia_asic_init_fail { + leaf-list fia_asic_init_fail_values { + type string; + } + } + } + } + container inventory { + config false; + list location { + key "location"; + leaf location { + type string; + } + container inventory { + leaf-list inventory_values { + type string; + } + } + } + } + container temperature { + config false; + list location { + key "location"; + leaf location { + type string; + } + container temperature { + leaf-list temp_values { + type string; + } + } + } + } + container voltage { + config false; + list location { + key "location"; + leaf location { + type string; + } + container voltage { + leaf-list volt_values { + type string; + } + } + } + } + container fpd { + config false; + list location { + key "location"; + leaf location { + type string; + } + container fpd { + leaf-list fpd_values { + type string; + } + } + } + } + container diag_result { + config false; + list location { + key "location"; + leaf location { + type string; + } + container diag_result { + leaf-list diag_result_values { + type string; + } + } + } + } + container diag_log { + config false; + list location { + key "location"; + leaf location { + type string; + } + container diag_log { + leaf-list diag_log_values { + type string; + } + } + } + } + container fmea { + config false; + list location { + key "location"; + leaf location { + type string; + } + container fmea { + leaf-list fmea_values { + type string; + } + } + } + } + container fabric { + config false; + list location { + key "location"; + leaf location { + type string; + } + container fabric { + leaf-list fabric_values { + type string; + } + } + } + } + container prm { + config false; + list location { + key "location"; + leaf location { + type string; + } + container prm { + leaf-list prm_values { + type string; + } + } + } + } + container np { + config false; + list location { + key "location"; + leaf location { + type string; + } + container np { + leaf-list np_values { + type string; + } + } + } + } + container pfm { + config false; + list location { + key "location"; + leaf location { + type string; + } + container pfm { + leaf-list pfm_values { + type string; + } + } + } + } + } + + grouping obfl-show-grp { + container onboard { + uses obfl_data; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-cm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-cm.yang new file mode 100644 index 000000000..dbff9186a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-cm.yang @@ -0,0 +1,49 @@ +module Cisco-IOS-XR-sysadmin-show-trace-cm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-trace-cm"; + prefix cm; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-05-11 { + description + "Initial version."; + } + + container cm { + config false; + uses show_trace:traceable; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-debug-agent.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-debug-agent.yang new file mode 100644 index 000000000..b1b9bb037 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-debug-agent.yang @@ -0,0 +1,49 @@ +module Cisco-IOS-XR-sysadmin-show-trace-debug-agent { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-trace-debug-agent"; + prefix debug_agent; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-05-11 { + description + "Initial version."; + } + + container debug_agent { + config false; + uses show_trace:traceable; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instagt.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instagt.yang new file mode 100644 index 000000000..5dae2c7e1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instagt.yang @@ -0,0 +1,49 @@ +module Cisco-IOS-XR-sysadmin-show-trace-instagt { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-trace-instagt"; + prefix instagt; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2016-05-11 { + description + "Initial version."; + } + + container instagt { + config false; + uses show_trace:traceable; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instmgr.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instmgr.yang new file mode 100644 index 000000000..9a705b614 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-instmgr.yang @@ -0,0 +1,49 @@ +module Cisco-IOS-XR-sysadmin-show-trace-instmgr { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-trace-instmgr"; + prefix instmgr; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2016-05-11 { + description + "Initial version."; + } + + container instmgr { + config false; + uses show_trace:traceable; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-vmm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-vmm.yang new file mode 100644 index 000000000..f17c6e0af --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace-vmm.yang @@ -0,0 +1,51 @@ +module Cisco-IOS-XR-sysadmin-show-trace-vmm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-trace-vmm"; + prefix vm_managerh; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-05-12 { + description + "Initial Version"; + } + + container vmm { + config false; + container vm_manager { + uses show_trace:traceable; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace.yang new file mode 100644 index 000000000..58ebe2b4f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-show-trace.yang @@ -0,0 +1,133 @@ +module Cisco-IOS-XR-sysadmin-show-trace { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-show-trace"; + prefix show_trace; + + 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 SysAdmin configuration. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2016-05-11 { + description + "Initial version."; + } + + grouping traceable { + list trace { + key "buffer"; + config false; + description + "show traceable processes"; + leaf buffer { + type string; + } + list location { + key "location_name"; + leaf location_name { + type string; + } + list all-options { + key "option"; + leaf option { + type string; + } + list trace-blocks { + leaf data { + type string; + description + "Trace output block"; + } + } + } + } + } + } + + grouping traceable_process { + list instance { + key "process_name"; + config false; + description + "show traceable process instance names"; + leaf process_name { + type string; + } + list trace { + key "buffer"; + config false; + description + "show traceable processes"; + leaf buffer { + type string; + } + list location { + key "location_name"; + leaf location_name { + type string; + } + list all-options { + key "option"; + leaf option { + type string; + } + list trace-blocks { + leaf data { + type string; + description + "Trace output block"; + } + } + } + } + } + } + } + + grouping traceable_with_keypath_location { + list trace { + key "buffer"; + config false; + leaf buffer { + type string; + } + list all-options { + key "option"; + leaf option { + type string; + } + list trace-blocks { + leaf data { + type string; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-types.yang new file mode 100644 index 000000000..83900625b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-types.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-sysadmin-skywarp-envmon-types { + namespace "http://www.cisco.com/ns/Cisco-IOS-XR-sysadmin-skywarp-envmon-types"; + prefix envmon-types; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + typedef num_pm { + type uint32 { + range "0..12"; + } + } + + grouping fan-speed-group { + leaf raise-fan-speed { + type uint32 { + range "0..100"; + } + config false; + } + } + + grouping fan-ctrl-optics-group { + leaf fan-ctrl-optics { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping vin-uv-shut-group { + leaf graceful-shutdown { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping gen2-common-lowpower-group { + leaf gen2-common-lowpower { + type uint32 { + range "0..1"; + } + config false; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-ui.yang new file mode 100644 index 000000000..185afae46 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-skywarp-envmon-ui.yang @@ -0,0 +1,951 @@ +module Cisco-IOS-XR-sysadmin-skywarp-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-skywarp-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-skywarp-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-12 { + description + "Required changes to add single mode config location specific"; + semver:module-version "1.0.0"; + } + revision 2020-05-05 { + description + "Adjusting power consumed due to multi output for 9903"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2018-02-06 { + description + "Adding CLI input validation for LC priority shutdown feature"; + } + revision 2018-01-25 { + description + "Initial revision of LC priority shutdown feature"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-07-31 { + description + "Changing the namespace to follow Cisco guidelines on naming convention"; + } + revision 2017-04-10 { + description + "Adding the source leaf to altitude value, + this is to distinguish the source of the altitude value "; + } + revision 2017-03-31 { + description + "Renamed module and namespace"; + } + revision 2017-03-30 { + description + "commenting the sensor_attributes callpoints for the oper sensors, + using only the location based callpoints for sensor_attributes "; + } + revision 2016-10-12 { + description + "unhide commands and configs. moved to advanced-grp"; + } + revision 2011-11-24 { + description + "Initial revision of show environment commands"; + } + + grouping pm-location { + leaf all { + type empty; + } + list location { + key "pmId"; + leaf pmId { + type string { + pattern "0/PT[0-3]-PM[0-3]"; + } + } + } + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type uint32; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container pm_loc { + uses pm-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + container progressive { + list enable { + key "enabled"; + leaf enabled { + type enumeration { + enum "enable"; + } + config true; + } + leaf syslog-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + leaf shutdown-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + container priority { + list location { + key "loc"; + leaf loc { + type string { + pattern "0/([0-9]|1[0-9])"; + } + } + leaf prior { + type uint32 { + range "0 .. 19"; + } + } + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-hw-mod.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-hw-mod.yang new file mode 100644 index 000000000..06f61260c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-hw-mod.yang @@ -0,0 +1,260 @@ +module Cisco-IOS-XR-sysadmin-sm-hw-mod { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-sm-hw-mod"; + prefix shelf_sm_hw_mod; + + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + 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 SysAdmin configuration. + + This module holds Shelf Management HW module data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-08 { + description + "Added support to power reset a hardware module"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2012-10-24 { + description + "Initial revision of the partition from sm.yang"; + } + + grouping hw-module-config-group { + uses hw-module-shutdown-config-group; + uses hw-module-reset-auto-disable-config-group; + uses hw-module-offline-config-group; + } + + grouping hw-module-shutdown-config-group { + container shutdown { + list location { + key "location"; + leaf location { + type calvados:location-id; + mandatory true; + } + } + } + } + + grouping hw-module-reset-auto-disable-config-group { + container reset { + container auto { + container disable { + list location { + key "location"; + leaf location { + type calvados:location-id; + mandatory true; + } + } + } + } + } + } + + grouping hw-module-offline-config-group { + container offline { + list location { + key "location"; + leaf location { + type calvados:location-id; + mandatory true; + } + } + } + } + + grouping hw-module-action-group { + uses hw-module-reload-action-group; + uses hw-module-bootmedia-action-group; + uses hw-module-shutdown-action-group; + uses hw-module-offline-action-group; + uses hw-module-online-action-group; + uses hw-module-delayed-reboot-action-group; + uses hw-module-reset-action-group; + } + + grouping hw-module-bootmedia-action-group { + container cbootmedia { + config false; + list bootmedia { + key "bootmedium"; + config false; + leaf bootmedium { + type string; + } + tailf:action "reload" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + } + } + + grouping hw-module-reload-action-group { + tailf:action "reload" { + input { + leaf force { + type empty; + mandatory false; + } + leaf noprompt { + type empty; + mandatory false; + } + leaf warm { + type empty; + mandatory false; + } + } + output { + leaf result { + type string; + mandatory true; + } + } + } + } + + grouping hw-module-delayed-reboot-action-group { + tailf:action "delayed_reload" { + input { + choice delayed_reboot { + mandatory true; + case delayed_reload { + leaf delay_time { + type uint64; + default "0"; + } + leaf reboottype { + type enumeration { + enum "Cold"; + enum "Warm"; + enum "Shutdown"; + } + default "Cold"; + mandatory false; + } + leaf reboot_reason { + type string; + mandatory false; + } + leaf force { + type boolean; + mandatory false; + } + leaf noprompt { + type empty; + mandatory false; + } + } + } + } + output { + leaf result { + type string; + mandatory true; + } + } + } + } + + grouping hw-module-shutdown-action-group { + tailf:action "shutdown" { + input { + choice shutdown_polarity { + mandatory false; + case shutdown { + leaf force { + type empty; + mandatory false; + } + } + case powerup { + leaf disable { + type empty; + mandatory false; + } + } + } + } + output { + leaf result { + type string; + mandatory true; + } + } + } + } + + grouping hw-module-offline-action-group { + tailf:action "offline" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + + grouping hw-module-online-action-group { + tailf:action "online" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } + + grouping hw-module-reset-action-group { + tailf:action "reset" { + output { + leaf result { + type string; + mandatory true; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-system-cluster.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-system-cluster.yang new file mode 100644 index 000000000..b4f81a5bd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm-system-cluster.yang @@ -0,0 +1,328 @@ +module Cisco-IOS-XR-sysadmin-sm-system-cluster { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-sm-system-cluster"; + prefix shelf_sm_system_cluster; + + import tailf-common { + prefix tailf; + } + 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 SysAdmin configuration. + + This module holds Shelf Management System Cluster data. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-15 { + description + "Added support for dynamic fabric connection"; + semver:module-version "1.1.0"; + } + revision 2020-09-01 { + description + "Added version and cluster size oper fields"; + semver:module-version "1.0.0"; + } + revision 2020-08-15 { + description + "Added support for mac-address-pool action"; + } + revision 2020-07-07 { + description + "Enhanced support for oper and config"; + } + revision 2020-06-10 { + description + "Initial revision of the partition from sm.yang"; + } + + typedef ClusterSizeType { + type enumeration { + enum "SMALL" { + value 1; + description + "Small Cluster"; + } + enum "MINI" { + value 2; + description + "Mini Cluster"; + } + enum "MEDIUM" { + value 3; + description + "Medium Cluster"; + } + enum "WARM_SPARE" { + value 4; + description + "Warm-Spare Cluster"; + } + enum "LARGE" { + value 5; + description + "Large Cluster"; + } + } + description + "The List of supported Cluster Sizes"; + } + + typedef PortType { + type enumeration { + enum "ONIE" { + value 1; + description + "ONIE port type"; + } + enum "CE" { + value 2; + description + "CE port type"; + } + enum "INTER_DCM" { + value 3; + description + "Inter-DCM port type"; + } + } + description + "The List of supported Port Types"; + } + + grouping sm-cluster-config-group { + container cluster-layout { + config true; + uses system-cluster-layout-user-config-group; + uses system-cluster-layout-rack-serial; + } + } + + grouping system-cluster-layout-user-config-group { + list cluster-map-config { + key "config-type"; + leaf config-type { + type string; + description + "Cluster layout config type"; + } + leaf version { + type string; + } + leaf cluster-size { + type ClusterSizeType; + } + list switch-rack-id { + key "rack-id port-id"; + leaf rack-id { + type uint32; + } + leaf port-id { + type string; + } + leaf rack-type { + type uint32; + } + leaf peer-rack-type { + type uint32; + } + leaf peer-rack-id { + type uint32; + } + leaf peer-port-id { + type string; + } + leaf port-speed { + type uint32; + } + leaf port-type { + type PortType; + } + } + list fabric-rack-id { + key "rack-id port-id"; + leaf rack-id { + type uint32; + } + leaf port-id { + type string; + } + leaf rack-type { + type uint32; + } + leaf peer-rack-type { + type uint32; + } + leaf peer-rack-id { + type uint32; + } + leaf peer-port-id { + type string; + } + } + } + } + + grouping system-cluster-layout-rack-serial { + list cluster-rack-serial-config { + key "rack-num"; + leaf rack-num { + type uint32; + } + leaf rack-serial { + type string; + } + } + } + + grouping system-cluster-action-group { + uses system-cluster-layout-action-group; + } + + grouping system-macpool-action-group { + uses system-mac-address-pool-action-group; + } + + grouping system-cluster-layout-action-group { + tailf:action "layout" { + description + "Cluster layout commands"; + input { + leaf file { + type string { + length "1..255"; + } + mandatory true; + } + choice file_option { + mandatory false; + case layout { + leaf force { + type empty; + mandatory false; + } + } + } + } + output { + leaf result { + type string; + } + } + } + } + + grouping system-mac-address-pool-action-group { + tailf:action "mac-address-pool" { + description + "mac-address-pool commands"; + input { + leaf file { + type string { + length "1..255"; + } + mandatory true; + } + choice macpool_file_option { + mandatory false; + case mac-pool { + leaf force { + type empty; + mandatory false; + } + } + } + } + output { + leaf result { + type string; + } + } + } + } + + grouping system-cluster-layout-oper-group { + container layout { + config false; + leaf version { + type string; + } + leaf cluster-size { + type string; + } + leaf compute-rack-count { + type uint32; + } + leaf switch-rack-count { + type uint32; + } + leaf fabric-rack-count { + type uint32; + } + leaf line-rack-count { + type uint32; + } + list switch-rack-id { + key "rack-id port-id"; + leaf rack-id { + type string; + } + leaf port-id { + type string; + } + leaf switch-rack-type { + type string; + } + leaf peer-rack-id { + type string; + } + leaf peer-port-id { + type string; + } + leaf peer-rack-type { + type string; + } + leaf port-speed { + type uint32; + } + leaf port-type { + type string; + } + } + } + } + + grouping system-cluster-layout-rack-serial-oper-group { + list rack-serial-config { + key "rack-num"; + leaf rack-num { + type uint32; + } + leaf rack-serial { + type string; + } + } + } + + uses sm-cluster-config-group; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm.yang new file mode 100644 index 000000000..ce28366ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-sm.yang @@ -0,0 +1,659 @@ +module Cisco-IOS-XR-sysadmin-sm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-sm"; + prefix shelf_sm; + + import tailf-common { + prefix tailf; + } + import ietf-yang-types { + prefix ietf; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 SysAdmin configuration. + + This module holds Shelf Management configuration data. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-01 { + description + "Moved cluster oper command to shared_pkg"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-07-22 { + description + "Updated chassis rack number pattern to include Compute Racks"; + } + revision 2017-04-12 { + description + "Changed namespace and module name"; + } + revision 2016-10-12 { + description + "Unhide commands and configs. Moved to advanced-grp"; + } + revision 2012-01-05 { + description + "show platform [detail] [location L] support"; + } + revision 2011-11-08 { + description + "Initial revision"; + } + + grouping sm-oper-group { + container oper { + config false; + uses ctrace-oper-group; + uses platform-oper-group; + uses chassis-oper-group; + uses reload-rack-oper-group; + uses reboot-history-oper-group; + uses mgmt-interfaces-oper-group; + uses reload-vm-oper-group; + uses mac-pool-oper-group; + uses reboot-pending-oper-group; + } + } + + grouping ctrace-oper-group { + container shelf_mgr { + uses show_trace:traceable; + } + } + + grouping platform-oper-group { + container platform { + config false; + uses platform-summary-oper-group; + uses platform-detail-oper-group; + uses platform-slices-oper-group; + } + } + + grouping chassis-oper-group { + container chassis { + config false; + uses chassis-brief-oper-group; + } + } + + grouping reload-rack-oper-group { + container reload { + config false; + container rack { + list racks { + key "rack"; + leaf rack { + type string; + } + } + } + } + } + + grouping reload-vm-oper-group { + container reload_vm { + config false; + list location { + key "location"; + leaf location { + type string; + } + } + } + } + + grouping reboot-history-events-oper-group { + list events { + key "event_idx"; + leaf event_idx { + type uint32; + } + container event { + leaf timestamp { + type string; + } + leaf reason_code { + type uint32; + } + leaf reason { + type string; + } + leaf src_loc { + type string; + } + leaf src_name { + type string; + } + } + } + } + + grouping reboot-pending-events-oper-group { + list delay_events { + key "delay_event_idx"; + leaf delay_event_idx { + type uint32; + } + container delay_event { + leaf active { + type boolean; + } + leaf wait { + type uint64; + } + leaf when { + type uint64; + } + leaf reason { + type string; + } + leaf count { + type uint32; + } + } + } + } + + grouping reboot-history-card-oper-group { + container card { + list location { + key "location"; + leaf location { + type calvados:location-id; + } + uses reboot-history-events-oper-group; + } + } + } + + grouping reboot-history-admin-vm-oper-group { + container admin-vm { + list location { + key "location"; + leaf location { + type calvados:location-id; + } + uses reboot-history-events-oper-group; + } + } + } + + grouping reboot-history-reverse-oper-group { + container reverse { + uses reboot-history-card-oper-group; + uses reboot-history-admin-vm-oper-group; + } + } + + grouping reboot-pending-card-oper-group { + container card { + list location { + key "location"; + leaf location { + type calvados:location-id; + } + uses reboot-pending-events-oper-group; + } + } + } + + grouping reboot-history-oper-group { + container reboot-history { + config false; + uses reboot-history-card-oper-group; + uses reboot-history-admin-vm-oper-group; + uses reboot-history-reverse-oper-group; + } + } + + grouping reboot-pending-oper-group { + container reboot-pending { + config false; + uses reboot-pending-card-oper-group; + } + } + + grouping mgmt-interfaces-oper-group { + list interface { + key "ifname"; + leaf ifname { + type string; + } + container interface-data { + leaf mac { + type ietf:mac-address; + } + leaf ipv4 { + type inet:ipv4-address; + } + leaf flagstr { + type string; + } + leaf port_status { + type string; + } + leaf mtu { + type uint32; + } + leaf metric { + type uint32; + } + leaf rx_pak { + type uint32; + } + leaf rx_errors { + type uint32; + } + leaf rx_dropped { + type uint32; + } + leaf rx_overruns { + type uint32; + } + leaf rx_frame { + type uint32; + } + leaf tx_pak { + type uint32; + } + leaf tx_errors { + type uint32; + } + leaf tx_dropped { + type uint32; + } + leaf tx_overruns { + type uint32; + } + leaf tx_carrier { + type uint32; + } + leaf collisions { + type uint32; + } + leaf tx_queuelen { + type uint32; + } + leaf rx_bytes { + type uint64; + } + leaf tx_bytes { + type uint64; + } + leaf intf_num { + type uint32; + } + } + } + } + + grouping mac-pool-oper-group { + container macpool { + config false; + uses mac-pool-brief-oper-group; + } + } + + grouping platform-summary-oper-group { + container summary { + list location { + key "location"; + leaf location { + type calvados:location-id; + } + container summary-data { + leaf card_type { + type string; + } + leaf hw_state { + type string; + } + leaf sw_state { + type string; + } + leaf config_state { + type string; + } + } + } + } + } + + grouping platform-detail-oper-group { + container detail { + list location { + key "location"; + leaf location { + type calvados:location-id; + } + container detail-data { + leaf pid { + type string; + } + leaf description { + type string; + } + leaf vid_sn { + type string; + } + leaf hw_state { + type string; + } + leaf sw_state { + type string; + } + leaf config_wordy { + type string; + } + leaf hw_ver { + type string; + } + leaf last_event { + type string; + } + leaf last_ev_reason_str { + type string; + } + } + } + } + } + + grouping platform-slices-oper-group { + container slices { + list location { + key "location"; + leaf location { + type calvados:location-id; + } + list slice_values { + key "slice_idx"; + leaf slice_idx { + type uint32; + } + container slice { + leaf slice_num { + type uint32; + } + leaf admin_state { + type string; + } + leaf oper_state { + type string; + } + } + } + } + } + } + + grouping chassis-brief-oper-group { + container brief { + list chassis_serial { + key "serial_number"; + leaf serial_number { + type string; + } + container brief-data { + leaf racknum { + type string; + } + leaf rack_type { + type string; + } + leaf rack_state { + type string; + } + leaf data_plane { + type string; + } + leaf ctrl_plane { + type string; + } + } + } + } + } + + grouping mac-pool-brief-oper-group { + container brief { + list rack { + key "serial_number"; + leaf serial_number { + type string; + } + container brief-data { + leaf racknum { + type string; + } + leaf mac_base { + type ietf:mac-address; + } + leaf mac_count { + type uint32; + } + leaf is_selected { + type boolean; + } + leaf allocated_count { + type uint32; + } + } + } + } + } + + grouping sm-config-group { + container config { + config true; + uses chassis-config-group; + uses mgmt-interfaces-config-group; + uses virtual-macaddr-config-group; + } + } + + grouping chassis-config-group { + container chassis { + list serial { + key "serial"; + unique "rack"; + leaf serial { + type string; + mandatory true; + } + leaf rack { + type string { + pattern "[eE][0-3]|[bB][0-9]|[dD][0-1]|[fF][0-7]|[0-9]|[1][0-9]|[2-5][0-9]|[6][0-3]|[2][4][0-7]"; + } + mandatory true; + } + } + } + } + + grouping mgmt-interfaces-config-group { + container interface { + container MgmtEth { + list locport { + key "rack slot intf port"; + leaf rack { + type string { + pattern "[fF][0-7]|[0-9]|[1][0-5]|[bB][0-9]|[eE][0-3]"; + } + } + leaf slot { + type string { + pattern "[Rr][Pp][0-1]|[Rr][Ss][Pp][0-1]|[Ss][Cc][0-1]|[cC][bB][0-9]|[cC][eE][0-3]"; + } + } + leaf intf { + type uint32 { + range "0"; + } + } + leaf port { + type uint32 { + range "0"; + } + } + container ipv4 { + leaf address { + type string { + pattern "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(( (([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]))|(/([0-9]+)))"; + } + } + } + leaf shutdown { + type empty; + } + leaf mtu { + type uint32 { + range "48..9000"; + } + } + leaf default-gw { + type inet:ipv4-address; + } + container arp { + list ip { + key "ip"; + leaf ip { + type inet:ipv4-address; + mandatory true; + } + leaf mac { + type ietf:mac-address; + mandatory true; + } + } + } + } + } + } + container domain { + list name { + key "name"; + leaf name { + type string; + } + } + list name-server { + key "name-server"; + leaf name-server { + type inet:ipv4-address; + } + } + } + } + + grouping virtual-macaddr-config-group { + container virtual-macaddr-range { + leaf base { + type ietf:mac-address; + } + leaf count { + type uint32 { + range "1..65535"; + } + } + } + } + + grouping sm-action-group { + container actions { + config false; + uses reload-action-group; + } + } + + grouping reload-action-group { + tailf:action "reload" { + input { + choice reload_input { + mandatory true; + case target_rack { + leaf rack { + type leafref { + path "/oper/reload/rack/racks/rack"; + } + mandatory false; + } + } + case target_vm { + container location_list { + leaf location { + type leafref { + path "/oper/reload_vm/location/location"; + } + mandatory true; + } + choice reload_target { + mandatory true; + case target_admin { + leaf admin { + type empty; + mandatory true; + } + } + case target_all { + leaf all { + type empty; + mandatory true; + } + } + } + } + } + } + } + output { + leaf result { + type string; + mandatory true; + } + } + } + } + + uses sm-oper-group; + uses sm-config-group; + uses sm-action-group; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-syslog.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-syslog.yang new file mode 100644 index 000000000..dbb095a7f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-syslog.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-sysadmin-syslog { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-syslog"; + prefix syslog; + + 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 SysAdmin configuration. + + This module defines configuration for + sysadmin syslog infrastructure. + + Copyright (c) 2010-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-09 { + description + "Namespace change to comply with Cisco guidelines"; + } + revision 2016-09-16 { + description + "Added new type for show logging host"; + } + + typedef num-lines-type { + type uint32; + } + + typedef dir-or-file-path-type { + type string; + } + + grouping syslog-grp { + container console { + description + "Syslog Infrastructure"; + choice disable_or_severity { + mandatory false; + case choice_emergency { + leaf emergency { + type empty; + } + } + case choice_alert { + leaf alert { + type empty; + } + } + case choice_critical { + leaf critical { + type empty; + } + } + case choice_error { + leaf error { + type empty; + } + } + case choice_warning { + leaf warning { + type empty; + } + } + case choice_notice { + leaf notice { + type empty; + } + } + case choice_informational { + leaf informational { + type empty; + } + } + case choice_debug { + leaf debug { + type empty; + } + } + case choice_disable { + leaf disable { + type empty; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system-cluster.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system-cluster.yang new file mode 100644 index 000000000..167ea92af --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system-cluster.yang @@ -0,0 +1,96 @@ +module Cisco-IOS-XR-sysadmin-system-cluster { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-system-cluster"; + prefix calvados_system_cluster; + + import Cisco-IOS-XR-sysadmin-sm-system-cluster { + prefix shelf_mgr; + } + import Cisco-IOS-XR-sysadmin-ethsw-esdma-mlap-connectivity-info-iosxrwbd { + prefix cluster_connectivity; + } + import Cisco-IOS-XR-sysadmin-fabric-mgr-fsdb-aggregator-iosxrwbd { + prefix cluster-fabric; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'system cluster' commands for Sysadmin. + + Copyright(c) 2020 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-01 { + description + "Added support for cluster oper command"; + semver:module-version "3.0.0"; + } + revision 2020-08-15 { + description + "Support 'system mac-address-pool' cli"; + } + revision 2020-07-07 { + description + "Removed the config support"; + } + revision 2020-06-10 { + description + "Created initial 'system cluster' refactorization"; + } + + grouping cluster-oper-group { + container cluster { + config false; + uses shelf_mgr:system-cluster-layout-oper-group; + uses cluster_connectivity:cluster-connectivity-iosxrwbd; + uses cluster_fabric_group; + } + } + + grouping cluster_fabric_group { + container fabric { + description + "Fabric resource commands"; + uses cluster-fabric:fsdb_cluster_aggr_bundle; + } + } + + uses cluster-oper-group; + container system { + config false; + container cluster { + config false; + container actions { + config false; + uses shelf_mgr:system-cluster-action-group; + } + } + container macpool { + config false; + container actions { + config false; + uses shelf_mgr:system-macpool-action-group; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system.yang new file mode 100644 index 000000000..7c9527f9a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-system.yang @@ -0,0 +1,162 @@ +module Cisco-IOS-XR-sysadmin-system { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-system"; + prefix calvados_system; + + import tailf-common { + prefix tailf; + } + import ietf-inet-types { + prefix inet; + } + 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 SysAdmin configuration. + + This module defines the system users authentication + credentials and virtual IP that can be modified in + runtime. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-10-31 { + description + "Allow loading of errorLog config changes during OCU"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2011-06-20 { + description + "Initial revision"; + } + + typedef file-name-type { + type string; + } + + typedef screen-length { + type uint64 { + range "0 .. 32000"; + } + } + + typedef screen-width { + type uint64 { + range "0 .. 512"; + } + } + + typedef ipv4-subnet-mask-ip { + type inet:ip-address; + } + + typedef ipv6-prefix { + type uint8 { + range "0..128"; + } + } + + typedef calvados-ipv4-with-optional-subnet-bits { + type string { + pattern "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(/(([0-9])|([1-2][0-9])|(3[0-2])))?"; + } + description + "The ipv4-prefix type represents an IPv4 address prefix. + The prefix length is given by the number following the + slash character and must be less than or equal to 32."; + } + + typedef calvados-ipv6-with-optional-prefix { + type string { + pattern "((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))?"; + pattern "(([^:]+:){6}(([^:]+:[^:]+)|(.*\\..*)))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)(/.+)?"; + } + description + "The ipv6-prefix type represents an IPv6 address prefix. + The prefix length is given by the number following the + slash character and must be less than or equal 128."; + } + + grouping config_sync_clear_inconsistency { + container configuration { + tailf:action "inconsistencies" { + output { + list node { + leaf ip { + type string; + } + leaf status { + type string; + } + } + } + } + } + } + + container mgmt { + container ipv4 { + leaf address { + type calvados-ipv4-with-optional-subnet-bits; + must "true() = contains(../subnet-mask-ip, '.') or true() = contains(../address, '/')" { + error-message + "you must provide subnet, it must be of the form + A.B.C.D/subnet-bits or A.B.C.D subnet-ip"; + } + } + leaf subnet-mask-ip { + type ipv4-subnet-mask-ip; + must "false() = contains(../address, '/')" { + error-message + "you already provided subnet earlier it must be of the form + A.B.C.D/subnet-bits or A.B.C.D subnet-ip"; + } + } + } + container ipv6 { + leaf address { + type calvados-ipv6-with-optional-prefix; + must "true() = (../prefix) or true() = contains(../address, '/')" { + error-message + "you must provide prefix.It must be of the form + X:X::X/prefix or X:X::X prefix"; + } + } + leaf prefix { + type ipv6-prefix; + must "false() = contains(../address, '/')" { + error-message + "you already provided prefix earlier it must be of + form X:X::X/prefix or X:X::X prefix"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-show-tacacs.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-show-tacacs.yang new file mode 100644 index 000000000..a64c48502 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-show-tacacs.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-sysadmin-tacacs-show-tacacs { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-tacacs-show-tacacs"; + prefix show_tacacs; + + import tailf-common { + prefix tailf; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-sysadmin-tacacs-tacacs-server { + prefix tacacs-server; + } + import cisco-semver { + prefix semver; + } + + organization + "Cisco Systems Inc."; + contact + "aaa-ng-tacacs-dev@cisco.com"; + description + "This module defines yang model + for displaying tacacs+ server host info + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-10 { + description + "Namespace changed from show_tacacs to Cisco-IOS-XR-sysadmin-tacacs-show-tacacs"; + } + revision 2015-07-07 { + description + "Initial revision"; + } + + typedef passwdStr { + type tailf:md5-digest-string; + } + + augment "/tacacs-server:tacacs-server" { + container requests { + config false; + list ipv4 { + key "addr port"; + leaf addr { + type inet:ip-address; + description + "Server IPv4 address"; + } + leaf port { + type inet:port-number; + description + "Server Port"; + } + leaf opens { + type uint32; + description + "Socket open count"; + } + leaf closes { + type uint32; + description + "Socket close count"; + } + leaf aborts { + type uint32; + description + "Socket abort count"; + } + leaf errors { + type uint32; + description + "Socket error count"; + } + leaf packets_in { + type uint32; + description + "Packets received count"; + } + leaf packets_out { + type uint32; + description + "Packets transmitted count"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-tacacs-server.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-tacacs-server.yang new file mode 100644 index 000000000..e4948b485 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-tacacs-server.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-sysadmin-tacacs-tacacs-server { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-tacacs-tacacs-server"; + prefix tacacs-server; + + import tailf-common { + prefix tailf; + } + import ietf-inet-types { + prefix inet; + } + import cisco-semver { + prefix semver; + } + + organization + "Cisco Systems"; + contact + "aaa-ng-tacacs-dev@cisco.com"; + description + "This module defines the TACACS+ data model. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-10 { + description + "Namespace changed from tacacs to Cisco-IOS-XR-sysadmin-tacacs-tacacs-server"; + } + revision 2015-06-06 { + description + "Initial creation"; + } + + typedef passwdStr { + type tailf:aes-cfb-128-encrypted-string; + } + + container tacacs-server { + list host { + key "ip port"; + max-elements "10"; + ordered-by user; + leaf ip { + type inet:ip-address; + } + leaf port { + type inet:port-number { + range "1 .. 65535"; + } + } + leaf timeout { + type uint32 { + range "1 .. 1000"; + } + } + leaf key { + type passwdStr; + } + } + leaf timeout { + type uint32 { + range "1 .. 1000"; + } + } + leaf key { + type passwdStr; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-test-tacacs.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-test-tacacs.yang new file mode 100644 index 000000000..c1b2e0916 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-tacacs-test-tacacs.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-sysadmin-tacacs-test-tacacs { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-tacacs-test-tacacs"; + prefix test_tacacs; + + import Cisco-IOS-XR-sysadmin-tacacs-tacacs-server { + prefix tacacs-server; + } + import cisco-semver { + prefix semver; + } + + organization + "Cisco Systems Inc."; + contact + "aaa-ng-tacacs-dev@cisco.com"; + description + "This clie part is for test commands for tacacs + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-26 { + description + "Updated presence string to command containers"; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-10 { + description + "Namespace changed from test_tacacs to Cisco-IOS-XR-sysadmin-tacacs-test-tacacs"; + } + revision 2015-07-07 { + description + "Initial revision"; + } + + augment "/tacacs-server:tacacs-server" { + container test-authentication { + presence "Indicates test-authentication is configured"; + config false; + leaf authentication { + type string; + mandatory false; + description + "Authentication"; + } + } + container test-authorization { + presence "Indicates test-authorization is configured"; + config false; + leaf authorization { + type string; + mandatory false; + description + "Authorization"; + } + } + container test-accounting { + presence "Indicates test-accounting is configured"; + config false; + leaf accounting { + type string; + mandatory false; + description + "Accounting"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-time-of-day-timezone.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-time-of-day-timezone.yang new file mode 100644 index 000000000..9766b5d7c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-time-of-day-timezone.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-sysadmin-time-of-day-timezone { + namespace "http://cisco.com/calvados/Cisco-IOS-XR-sysadmin-time-of-day-timezone"; + prefix timezone; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 syadmin TOD configuration and cli. + + This module contains definitions + for the following management objects: + Time of the Day(TOD) Cli and configuration data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-07-04 { + description + "Remove refine stmt"; + } + revision 2016-05-12 { + description + "Initial version"; + } + + container clock { + container timezone { + leaf tzname { + type string; + } + leaf area { + type string; + } + } + } + container trace { + config false; + container timezone_config { + uses show_trace:traceable; + } + container timezone_notify { + uses show_trace:traceable; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-types.yang new file mode 100644 index 000000000..f8edf48ea --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-types.yang @@ -0,0 +1,192 @@ +module Cisco-IOS-XR-sysadmin-types { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-types"; + prefix calvados_types; + + 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 SysAdmin configuration. + + This module contains a collection of derived + YANG data types specific to Sysadmin. + + Copyright (c) 2011-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-12-15 { + description + "Required changes for DDC"; + semver:module-version "2.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-01-31 { + description + "Changed the namespace and module name"; + } + revision 2011-06-24 { + description + "Initial revision"; + } + + typedef rack-id { + type enumeration { + enum "L0"; + enum "L1"; + enum "L2"; + enum "L3"; + enum "L4"; + enum "L5"; + enum "L6"; + enum "L7"; + enum "L8"; + enum "L9"; + enum "L10"; + enum "L11"; + enum "L12"; + enum "L13"; + enum "L14"; + enum "L15"; + enum "L16"; + enum "L17"; + enum "L18"; + enum "L19"; + enum "L20"; + enum "L30"; + enum "L31"; + enum "L32"; + enum "L33"; + enum "L34"; + enum "L35"; + enum "L36"; + enum "L37"; + enum "L38"; + enum "L39"; + enum "L40"; + enum "L41"; + enum "L42"; + enum "L43"; + enum "L44"; + enum "L45"; + enum "L46"; + enum "L47"; + enum "F0"; + enum "F1"; + enum "F2"; + enum "F3"; + enum "F4"; + enum "F5"; + enum "F6"; + enum "B0"; + enum "B1"; + enum "D0"; + enum "D1"; + enum "E0"; + enum "E1"; + enum "E2"; + enum "E3"; + } + description + "Identifies the rack number of FCC/LCC. + LCC racks are identified by numbers rack0..47 + FCC racks are identified by numbers F0..F6 + BSC racks are identified by numbers 128..129"; + } + + typedef slot-id { + type int32 { + range "0..15"; + } + description + "Identifies a slot number within a rack"; + } + + typedef ce-portid { + type string { + pattern "(0?[0-9]|1[1-5]|F[0-3])/(0?[0-9]|1[1-5])/(0?[0-9]|[1-5][0-9])"; + } + } + + typedef plane-id { + type uint32 { + range "0..7"; + } + description + "fabric plane identifier"; + } + + typedef sfe-id { + type int32 { + range "1..16"; + } + description + "falafel device identifier"; + } + + typedef adminstate { + type enumeration { + enum "disable"; + } + } + + typedef generic-oper-status { + type enumeration { + enum "up"; + enum "down"; + } + } + + typedef sfe-oper-state { + type generic-oper-status; + } + + typedef ce-oper-state { + type generic-oper-status; + } + + typedef generic-ha-role { + type enumeration { + enum "no-ha-role"; + enum "Active"; + enum "Standby"; + } + } + + typedef fabric-link-types { + type enumeration { + enum "S1"; + enum "S2"; + enum "S3"; + } + } + + typedef location-id { + type string { + pattern "((([bB][0-9])/(([a-zA-Z]){2}\\d{1,2}))|(([fF][0-6])/(([a-zA-Z]){2}\\d{1,2}))|(([dD][0-1])/(([a-zA-Z]){2}\\d{1,2}))|(([eE][0-3])/(([a-zA-Z]){2}\\d{1,2}))|((0?[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-7])/((([a-zA-Z]){2,3})?\\d{1,2})))(/[cC][pP][uU]0)?"; + } + description + "location identifier"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-types.yang new file mode 100644 index 000000000..01ae8c495 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-types.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-sysadmin-uea-envmon-types { + namespace "http://www.cisco.com/ns/Cisco-IOS-XR-sysadmin-uea-envmon-types"; + prefix envmon-types; + + import tailf-common { + prefix tailf; + } + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + typedef num_pm { + type uint32 { + range "0..5"; + } + } + + grouping fan-speed-group { + leaf raise-fan-speed { + type uint32 { + range "0..100"; + } + config false; + tailf:cli-drop-node-name; + } + } + + grouping fan-ctrl-optics-group { + leaf fan-ctrl-optics { + type uint32 { + range "0..1"; + } + config false; + tailf:cli-drop-node-name; + } + } + + grouping vin-uv-shut-group { + leaf graceful-shutdown { + type uint32 { + range "0..1"; + } + config false; + tailf:cli-drop-node-name; + } + } + + grouping gen2-common-lowpower-group { + leaf gen2-common-lowpower { + type uint32 { + range "0..1"; + } + config false; + tailf:cli-drop-node-name; + } + } + tailf:id "http://www.cisco.com/panini/calvados/envmon/types"; +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-ui.yang new file mode 100644 index 000000000..7836d5911 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uea-envmon-ui.yang @@ -0,0 +1,895 @@ +module Cisco-IOS-XR-sysadmin-uea-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-uea-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-uea-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2018-11-14 { + description + "Adding 'uea' the platfrom name in module and namespace"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2018-02-06 { + description + "Adding CLI input validation for LC priority shutdown feature"; + } + revision 2018-01-25 { + description + "Initial revision of LC priority shutdown feature"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-07-31 { + description + "Changing the namespace to follow Cisco guidelines on naming convention"; + } + revision 2017-04-10 { + description + "Adding the source leaf to altitude value, + this is to distinguish the source of the altitude value "; + } + revision 2017-03-31 { + description + "Renamed module and namespace"; + } + revision 2017-03-30 { + description + "commenting the sensor_attributes callpoints for the oper sensors, + using only the location based callpoints for sensor_attributes "; + } + revision 2016-10-12 { + description + "unhide commands and configs. moved to advanced-grp"; + } + revision 2011-11-24 { + description + "Initial revision of show environment commands"; + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type uint32; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uptime.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uptime.yang new file mode 100644 index 000000000..408f32ec1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-uptime.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-sysadmin-uptime { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-uptime"; + prefix uptime; + + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import ietf-inet-types { + prefix inet; + } + 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 accessing the uptime of each node. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-11-09 { + description + "Initial revision"; + semver:module-version "1.0.0"; + } + + grouping nodeInfo { + description + "All parameters needed to describe a node uptime."; + leaf type { + type string; + description + "Node Type"; + } + leaf ip_address { + type inet:ip-address; + description + "IP address of the node"; + } + leaf uptime { + type string; + description + "Node Up Time"; + } + } + + grouping node_uptime { + list node_locations { + key "node_location"; + leaf node_location { + type calvados:location-id; + } + list nodei { + key "ip_address"; + uses nodeInfo; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-usb.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-usb.yang new file mode 100644 index 000000000..70aba32e4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-usb.yang @@ -0,0 +1,61 @@ +module Cisco-IOS-XR-sysadmin-usb { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-usb"; + prefix usb; + + import tailf-common { + prefix tailf; + } + 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 SysAdmin configuration. + + This module defines the top level container for + all 'usb' commands for Sysadmin. + + Copyright (c) 2018-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-05-23 { + description + "Created initial 'usb mount unmount' implementation"; + } + + container usb { + config false; + tailf:action "device" { + input { + leaf operation { + type string; + description + "mount unmount"; + } + } + output { + leaf success { + type string; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm-mgr.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm-mgr.yang new file mode 100644 index 000000000..aa284291e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm-mgr.yang @@ -0,0 +1,94 @@ +module Cisco-IOS-XR-sysadmin-vm-mgr { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-vm-mgr"; + prefix vmmh; + + 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 SysAdmin configuration. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-06-12 { + description + "Fixed canonical order error for keyword config"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-07-13 { + description + "Removed unused show fields in show vm"; + } + revision 2017-04-12 { + description + "Changed the namespace and module name"; + } + revision 2016-05-12 { + description + "Initial Version"; + } + + container VM { + config false; + description + "VM Info"; + list all-locations { + key "location"; + leaf location { + type string; + } + list all-uiids { + key "uiid"; + leaf uiid { + type string; + description + "Unique Immutable ID"; + } + leaf id { + type string; + description + "ID of the VM"; + } + leaf status { + type string; + description + "Status of the VM"; + } + leaf ipaddr { + type string; + description + "CE IP address"; + } + leaf last_hb_sent { + type string; + description + "Last heartbeat sent"; + } + leaf last_hb_rec { + type string; + description + "Last heartbeat received"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm.yang new file mode 100644 index 000000000..8f15a5d70 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-vm.yang @@ -0,0 +1,128 @@ +module Cisco-IOS-XR-sysadmin-vm { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-vm"; + prefix vm; + + import tailf-common { + prefix tailf; + } + 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 the YANG definitions + for the Cisco IOS-XR SysAdmin + 'vm profile|cpu|memory' commands. + + Copyright(c) 2018 by Cisco Systems, Inc. + All rights reserved. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-11-20 { + description + "CSCvn05746, force hw-profile to be vrr"; + } + revision 2018-06-20 { + description + "Initial revision"; + } + + typedef cp-dp-cores { + type string { + pattern "0(-[0-9]+)?/[0-9]+(-[0-9]+)?"; + } + description + "assign cpu cores to control/data plane"; + } + + container vm { + config true; + tailf:action "reload" { + description + "reload system to use new hareware profile configuration"; + input; + output { + leaf response { + type string; + } + } + } + tailf:action "console" { + description + "switch xr console to vga/serial"; + input { + leaf vga_serial { + type enumeration { + enum "vga"; + enum "serial"; + } + } + } + output { + leaf response { + type string; + } + } + } + container config { + choice cpu_mem-profile { + case choose-profile { + container hw-profile { + leaf profile { + type enumeration { + enum "vrr"; + } + description + "xrv9k profile vpe|vrr"; + } + } + } + case choose-cpu_mem { + container memory { + leaf admin { + type uint32; + description + "admin container memory in GB"; + } + leaf rp { + type uint32; + description + "rp container memory in GB"; + } + leaf lc { + type uint32; + description + "lc container memory in GB"; + } + } + container cpu { + leaf assign { + type cp-dp-cores; + description + "assign cpu cores to control/data plane"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-memmon.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-memmon.yang new file mode 100644 index 000000000..16ae60dad --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-memmon.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-sysadmin-wd-memmon { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-wd-memmon"; + prefix wd-memmon; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-16 { + description + "Adopt Cisco YANG model namespace naming standard"; + semver:module-version "1.0.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + + typedef percent { + type int32 { + range "0 .. 100"; + } + description + "Percentage"; + } + + container memory_status_config { + must " (critical > severe and severe > minor)" { + error-message " ERROR: Threshold values are not matching condition: minor < severe < critical"; + } + leaf minor { + type percent; + default "80"; + description + "Memory Monitoring Minor Threshold"; + } + leaf severe { + type percent; + default "90"; + description + "Memory Monitoring Severe Threshold"; + } + leaf critical { + type percent; + default "95"; + description + "Memory Monitoring Critial Threshold"; + } + leaf recovery_enabled { + type boolean; + default "false"; + description + "In case of Critical Memory Usage, Recovery Action Enabled/Disabled"; + } + } + container memory_status { + config false; + description + "Memory Info"; + list all-locations { + key "location"; + leaf location { + type string; + } + list all-device { + key "device"; + leaf device { + type string; + } + leaf minor { + type string; + description + "Mem Monitoring Minor Threshold"; + } + leaf severe { + type string; + description + "Mem Monitoring severe Threshold"; + } + leaf critical { + type string; + description + "Mem Monitoring Critical Threshold"; + } + leaf current_state { + type string; + description + " Current state of Physical Memory "; + } + leaf total_used { + type string; + description + " Total Used Memory "; + } + leaf available { + type string; + description + " Total Available Physical Memory "; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-sysmon.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-sysmon.yang new file mode 100644 index 000000000..8c08d6cfa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wd-sysmon.yang @@ -0,0 +1,196 @@ +module Cisco-IOS-XR-sysadmin-wd-sysmon { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-wd-sysmon"; + prefix wd-sysmon; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2018-03-21 { + description + "IOS XR 6.5.1 revision."; + } + + typedef percent { + type int32 { + range "0 .. 100"; + } + description + "Percentage"; + } + + container cpu { + config false; + description + "CPU Utilization info"; + list all-locations { + key "location"; + leaf location { + type string; + } + container cpuutils { + config false; + description + "CPU Util"; + list all-utils { + key "resource"; + leaf resource { + type string; + description + "CPU "; + } + leaf cpuutil1Min { + type percent; + description + "cpu utilization for 1 min"; + } + leaf cpuutil5Min { + type percent; + description + "cpu utilization for 5 min"; + } + leaf cpuutil15Min { + type percent; + description + "cpu utilization for 15 min"; + } + } + } + container processutils { + config false; + description + "Per Process CPU Util"; + list all-utils { + key "resource"; + leaf resource { + type string; + description + "CPU "; + } + leaf cpuutil1Min { + type percent; + description + "cpu utilization for 1 min"; + } + leaf cpuutil5Min { + type percent; + description + "cpu utilization for 5 min"; + } + leaf cpuutil15Min { + type percent; + description + "cpu utilization for 15 min"; + } + } + list all-processes { + key "pid"; + leaf pid { + type int32; + description + "PID "; + } + leaf p1Min { + type percent; + description + "1 Min Cpu Utilization"; + } + leaf p5Min { + type percent; + description + "5 Min Cpu utilization"; + } + leaf p15Min { + type percent; + description + "15 Min Cpu Utilization"; + } + leaf Process { + type string; + description + "process name "; + } + leaf Timecreated { + type int32; + description + "Timecreated "; + } + leaf AverageUsecs { + type int32; + description + "AverageUsecs"; + } + leaf MemAllocated { + type int32; + description + "memory allocated"; + } + leaf MemFreed { + type int32; + description + "Mem free"; + } + leaf Invoked { + type int32; + description + "Invoked"; + } + leaf Runtime { + type int32; + description + "runtime"; + } + leaf Priority { + type int32; + description + "priority"; + } + leaf TextSegSize { + type int32; + description + "Text segment size"; + } + leaf DataSegSize { + type int32; + description + "Data segment size"; + } + leaf StackSegSize { + type int32; + description + "Stack Segment size"; + } + leaf DynMemSize { + type int32; + description + "Dynamic memory size"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wdmon.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wdmon.yang new file mode 100644 index 000000000..5daafa71e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-wdmon.yang @@ -0,0 +1,176 @@ +module Cisco-IOS-XR-sysadmin-wdmon { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-wdmon"; + prefix wdmonh; + + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + container wdmon { + config false; + uses show_trace:traceable; + } + container wdmon-info { + config false; + list all-locations { + key "location"; + leaf location { + type string; + } + leaf start-timestamp { + type string; + description + "Last start date and time for wdmon"; + } + leaf hushd-timeout { + type xs:double; + description + "wdmon/Calv/Hushd liveness timeout"; + } + leaf calv-restart-timeout { + type uint32; + description + "Calvados restart timeout"; + } + leaf hushd-wd-action-disable { + type boolean; + description + "Hushd WD expire action disable or not"; + } + leaf hushd-wd-action-timestamp { + type string; + description + "Last Hushd WD expire action date and time"; + } + leaf hushd-capi-up { + type boolean; + description + "Hushd CAPI up or not"; + } + leaf hushd-pending-resp { + type boolean; + description + "Any pending response from Hushd"; + } + leaf hushd-stop-punching { + type boolean; + description + "Hushd HB punching stopped"; + } + leaf hushd-capi-up-timestamp { + type string; + description + "Last Hushd CAPI up date and time"; + } + leaf hushd-last-hb-resp { + type xs:double; + description + "How long ago was last HB response from Hushd"; + } + leaf hushd-num-capi-connects { + type uint32; + description + "Num of Hushd CAPI connects"; + } + leaf wds-action-disable { + type boolean; + description + "wdmon client timeout action disabled or not"; + } + leaf wds-action-timestamp { + type string; + description + "Last wdmon client timeout action date and time"; + } + leaf wds-restart-timeout { + type uint32; + description + "wdmon client restart timeout"; + } + leaf wds-liveness-timeout { + type uint32; + description + "wdmon client liveness timeout"; + } + leaf wds-client-up { + type boolean; + description + "wdmon client is up or not"; + } + leaf wds-client-pid { + type uint32; + description + "Process ID of the wdmon client"; + } + leaf wds-client-up-timestamp { + type string; + description + "Last wdmon client connect date and time"; + } + leaf wds-client-last-hb { + type xs:double; + description + "How long ago was last HB from wdmon client"; + } + leaf wds-client-num-connects { + type uint32; + description + "Total number of client connects"; + } + leaf wds-num-liveness-timeout { + type uint32; + description + "Total number of client liveness timeouts"; + } + leaf wds-num-restart-timeout { + type uint32; + description + "Total number of client restart timeouts"; + } + leaf wds-client-reported-status { + type string; + description + "Status reported by wdmon client"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-types.yang new file mode 100644 index 000000000..9f28b845b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-types.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-sysadmin-xrv9k-envmon-types { + namespace "http://www.cisco.com/ns/Cisco-IOS-XR-sysadmin-xrv9k-envmon-types"; + prefix envmon-types; + + 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 definitions + for the Calvados model objects. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Add gen2 common low power CLI."; + semver:module-version "1.1.0"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-05-01 { + description + "Namespace change to comply with Cisco guidelines on namespace"; + } + + typedef num_pm { + type uint32 { + range "0..12"; + } + } + + grouping fan-speed-group { + leaf raise-fan-speed { + type uint32 { + range "0..100"; + } + config false; + } + } + + grouping fan-ctrl-optics-group { + leaf fan-ctrl-optics { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping vin-uv-shut-group { + leaf graceful-shutdown { + type uint32 { + range "0..1"; + } + config false; + } + } + + grouping gen2-common-lowpower-group { + leaf gen2-common-lowpower { + type uint32 { + range "0..1"; + } + config false; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui.yang new file mode 100644 index 000000000..1840aa64b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui.yang @@ -0,0 +1,951 @@ +module Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-xrv9k-envmon-ui"; + prefix envmon; + + import Cisco-IOS-XR-sysadmin-show-trace { + prefix show_trace; + } + import tailf-xsd-types { + prefix xs; + } + import Cisco-IOS-XR-sysadmin-types { + prefix calvados; + } + import Cisco-IOS-XR-sysadmin-xrv9k-envmon-types { + prefix envmon-types; + } + 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 holds chassis, cards Enviroment data. + + Copyright (c) 2012-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-12 { + description + "Required changes to add single mode config location specific"; + semver:module-version "1.0.0"; + } + revision 2020-05-05 { + description + "Adjusting power consumed due to multi output for 9903"; + } + revision 2019-04-15 { + description + "Establish semantic version baseline."; + } + revision 2018-04-09 { + description + "Required changes for ConfD 6.4.5"; + } + revision 2018-02-06 { + description + "Adding CLI input validation for LC priority shutdown feature"; + } + revision 2018-01-25 { + description + "Initial revision of LC priority shutdown feature"; + } + revision 2017-11-27 { + description + "Add graceful shutdown disable CLI."; + } + revision 2017-07-31 { + description + "Changing the namespace to follow Cisco guidelines on naming convention"; + } + revision 2017-04-10 { + description + "Adding the source leaf to altitude value, + this is to distinguish the source of the altitude value "; + } + revision 2017-03-31 { + description + "Renamed module and namespace"; + } + revision 2017-03-30 { + description + "commenting the sensor_attributes callpoints for the oper sensors, + using only the location based callpoints for sensor_attributes "; + } + revision 2016-10-12 { + description + "unhide commands and configs. moved to advanced-grp"; + } + revision 2011-11-24 { + description + "Initial revision of show environment commands"; + } + + grouping pm-location { + leaf all { + type empty; + } + list location { + key "pmId"; + leaf pmId { + type string { + pattern "0/PT[0-3]-PM[0-3]"; + } + } + } + } + + grouping temp-data { + container temperatures { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-temp-data { + list temperatures { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf temperature_value { + type string; + } + leaf value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping volt-data { + container voltages { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + } + + grouping all-volt-data { + list voltages { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + leaf critical_lo { + type int32; + } + leaf major_lo { + type int32; + } + leaf minor_lo { + type int32; + } + leaf minor_hi { + type int32; + } + leaf major_hi { + type int32; + } + leaf critical_hi { + type int32; + } + } + } + } + + grouping current-data { + container current { + config false; + list location { + key "location"; + leaf location { + type string; + } + list sensor_attributes { + key "sensor"; + leaf loc_header { + type boolean; + default "false"; + } + leaf print_header { + type boolean; + default "false"; + } + leaf location { + type string; + } + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf alarm { + type string; + } + leaf value { + type string; + } + leaf temperature_value { + type int32; + } + } + } + } + } + + grouping all-current-data { + list current { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + list sensor_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf sensor_id { + type string; + } + leaf value { + type string; + } + } + } + } + + grouping fan-data { + container fan { + config false; + list location { + key "location"; + leaf location { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + leaf loc_header { + type uint32; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + } + + grouping all-fan-data { + list fan { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list fan_attributes { + key "logical_slot"; + leaf print_fan_header { + type string; + } + leaf location { + type string; + } + leaf logical_slot { + type string; + } + leaf fru_PID { + type string; + } + leaf fans_speed { + type string; + } + leaf fan_header { + type uint32; + } + leaf speed_space { + type uint32; + } + } + } + } + + grouping power-data { + container power { + config false; + list location { + key "location"; + leaf location { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + } + + grouping all-power-data { + list power { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list pem_attributes { + key "pem"; + leaf pem { + type string; + } + leaf pem_id { + type string; + } + leaf card_type { + type string; + } + leaf ps_type { + type string; + } + leaf shelf_num { + type uint16; + } + leaf supply_type { + type string; + } + leaf input_voltage { + type string; + } + leaf input_current { + type string; + } + leaf output_voltage { + type xs:double; + } + leaf output_current { + type xs:double; + } + leaf status { + type string; + } + leaf input_power_to_ps { + type uint32; + } + leaf input_current_to_ps { + type string; + } + leaf output_power_from_ps { + type uint32; + } + leaf output_current_from_ps { + type xs:double; + } + leaf power_allocated { + type uint32; + } + leaf power_consumed { + type string; + } + leaf power_status { + type string; + } + leaf confgd_power_redundancy_mode { + type string; + } + leaf usable_power_capacity { + type uint32; + } + leaf protection_power_capacity { + type uint32; + } + leaf power_resrv_and_alloc { + type uint32; + } + leaf system_power_used { + type uint32; + } + leaf system_power_input { + type uint32; + } + leaf power_level { + type uint16; + } + leaf output_header { + type uint16; + } + leaf output_footer { + type uint16; + } + leaf ps_sum_footer { + type uint16; + } + } + } + } + + grouping altitude-data { + container altitude { + config false; + list location { + key "location"; + leaf location { + type string; + } + list alt_attributes { + key "sensor"; + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + leaf print_header { + type boolean; + default "false"; + } + } + } + } + } + + grouping all-altitude-data { + list altitude { + key "loc_iden"; + config false; + leaf loc_iden { + type string; + } + list alt_attributes { + key "sensor"; + leaf print_header { + type boolean; + default "false"; + } + leaf sensor { + type string; + } + leaf rack { + type uint32; + } + leaf sensor_value { + type string; + } + leaf source { + type string; + } + } + } + } + + grouping rack-location { + leaf all { + type empty; + } + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + } + } + + grouping router-group { + container router { + container altitude { + container all { + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_meters { + type uint32 { + range "1..4000"; + } + } + } + } + } + } + } + + grouping air-filter-group { + container air-filter { + container replaced { + container all { + leaf date { + type xs:date; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf date { + type xs:date; + } + } + } + } + } + } + + grouping fan-ctrl-group { + container fan-ctrl { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping temp-monitor-group { + container temperature { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping env-monitor-group { + container monitoring { + container disable { + container rack_loc { + uses rack-location; + } + } + } + } + + grouping power-mgmt-group { + container action { + container disable { + container rack_loc { + uses rack-location; + } + } + } + container single-feed-mode { + container enable { + container pm_loc { + uses pm-location; + } + } + } + container extended-temp { + container enable { + container rack_loc { + uses rack-location; + } + } + } + container redundancy-num-pms { + container all { + leaf num_pm { + type envmon-types:num_pm; + } + } + container rack_loc { + list location { + key "rackId"; + leaf rackId { + type calvados:rack-id; + } + leaf num_pm { + type envmon-types:num_pm; + } + } + } + } + container progressive { + list enable { + key "enabled"; + leaf enabled { + type enumeration { + enum "enable"; + } + config true; + } + leaf syslog-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + leaf shutdown-threshold { + type uint32 { + range "3000 .. 72000"; + } + config true; + } + container priority { + list location { + key "loc"; + leaf loc { + type string { + pattern "0/([0-9]|1[0-9])"; + } + } + leaf prior { + type uint32 { + range "0 .. 19"; + } + } + } + } + } + } + } + + grouping cmd_types { + container oper { + config false; + description + "environment operational (show) data"; + uses temp-data; + uses volt-data; + uses current-data; + uses fan-data; + uses power-data; + uses altitude-data; + } + container all { + config false; + list location { + key "location"; + leaf location { + type string; + } + uses all-temp-data; + uses all-volt-data; + uses all-current-data; + uses all-fan-data; + uses all-power-data; + uses all-altitude-data; + } + } + container config { + description + "environment configurational data"; + uses router-group; + uses air-filter-group; + uses fan-ctrl-group; + uses temp-monitor-group; + uses env-monitor-group; + uses envmon-types:fan-speed-group; + uses envmon-types:fan-ctrl-optics-group; + uses envmon-types:vin-uv-shut-group; + } + } + + container environment { + uses cmd_types; + uses show_trace:traceable; + } + container power-mgmt { + container config { + description + "Power Trays and PEMs configurational data"; + uses power-mgmt-group; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-zapdisk.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-zapdisk.yang new file mode 100644 index 000000000..62808fd33 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysadmin-zapdisk.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-sysadmin-zapdisk { + namespace "http://www.cisco.com/ns/yang/Cisco-IOS-XR-sysadmin-zapdisk"; + prefix zapdisk; + + 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 Zapdisk module. + + This module zapdisk is for factory card reset feature. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-15 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-05-23 { + description + "Changed namespace and module name"; + } + revision 2017-03-25 { + description + "zapdisk [set|unset] [location L] support"; + } + + rpc zapdisk { + input { + choice zapdisk-input { + mandatory true; + case target-set { + leaf set { + type empty; + mandatory false; + } + } + case target-unset { + container czapdisk-unset { + leaf unset { + type empty; + mandatory false; + } + } + } + } + } + output { + leaf result { + type string; + mandatory true; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysdb-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysdb-oper.yang new file mode 100644 index 000000000..aeba4659c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysdb-oper.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-sysdb-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sysdb-oper"; + prefix sysdb-oper; + + 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 sysdb package operational data. + + This module contains definitions + for the following management objects: + sysdb-connections: Sysdb health on client connections + sysdb: Sysdb operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container sysdb-connections { + config false; + description + "Sysdb health on client connections"; + container nodes { + description + "Node operational data"; + list node { + key "node-name"; + description + "Per-node Sysdb health on connection"; + leaf connections { + type string; + description + "Per-node Sysdb Client Connections"; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } + container sysdb { + config false; + description + "Sysdb operational data"; + leaf configuration-space { + type string; + description + "Sysdb health for configuration space"; + } + leaf memory { + type string; + description + "Sysdb health on memory consumption"; + } + leaf ipc-space { + type string; + description + "Sysdb health for operational space"; + } + leaf cpu { + type string; + description + "Sysdb health on cpu consumption"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-syslog-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-syslog-act.yang new file mode 100644 index 000000000..fdd00d319 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-syslog-act.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-syslog-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-syslog-act"; + prefix syslog-act; + + import cisco-semver { + prefix semver; + } + import ietf-syslog-types { + prefix log; + } + + 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 action package configuration. + + This module contains definitions + for the following management objects: + syslog: Global Syslog messaging data + + Copyright (c) 2016-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-04-17 { + description + "IOS XR 6.1.1 revision."; + } + + rpc logmsg { + description + "Log message"; + input { + leaf severity { + type log:severity; + mandatory true; + description + "Set serverity level"; + } + leaf message { + type string; + mandatory true; + description + "Message body."; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-act.yang new file mode 100644 index 000000000..eb2001478 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-act.yang @@ -0,0 +1,116 @@ +module Cisco-IOS-XR-sysmgr-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sysmgr-act"; + prefix sysmgr-act; + + 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 sysmgr action package configuration. + + Copyright (c) 2016-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-23 { + description + "Added support for process crash from XR."; + semver:module-version "1.1.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-03-03 { + description + "IOS XR 6.3.1 revision."; + } + + rpc sysmgr-process-restart { + description + "Restart an XR process"; + input { + leaf process-name { + type string; + mandatory true; + description + "XR process name or Job Id e.g. bgp, ospf"; + } + leaf location { + type string; + description + "XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } + rpc sysmgr-process-start { + description + "Start an XR process"; + input { + leaf process-name { + type string; + mandatory true; + description + "XR process name or Job Id e.g. bgp, ospf"; + } + leaf location { + type string; + description + "XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } + rpc sysmgr-process-crash { + description + "Crash an XR process"; + input { + leaf process-name { + type string; + mandatory true; + description + "XR process name or Job Id e.g. bgp, ospf"; + } + leaf location { + type string; + description + "XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } + rpc sysmgr-process-shutdown { + description + "Shutdown an XR process"; + input { + leaf process-name { + type string; + mandatory true; + description + "XR process name or Job Id e.g. bgp, ospf"; + } + leaf location { + type string; + description + "XR node identifier e.g. 0/RP0/CPU0, 0/0/CPU0"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-cfg.yang new file mode 100644 index 000000000..e32e113a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-cfg.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-sysmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sysmgr-cfg"; + prefix sysmgr-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 sysmgr package configuration. + + This module contains definitions + for the following management objects: + process-mandatory: Process mandatory configuration + process-single-crash: Reboot condition for single mandatory + process that crashes + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-31 { + description + "Added mandatory nodes."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping PROCESS-TABLE { + description + "Common node of all, node"; + container processes { + description + "Table of processes"; + list process { + key "process-name"; + description + "Name of the executable process"; + leaf process-name { + type xr:Cisco-ios-xr-string; + description + "Process name"; + } + } + } + } + + container process-mandatory { + description + "Process mandatory configuration"; + container nodes { + description + "Table of mandatory nodes"; + list node { + key "node-name"; + description + "Mandatory node"; + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses PROCESS-TABLE; + } + } + container all { + description + "Mandatory for all nodes"; + uses PROCESS-TABLE; + } + } + container process-single-crash { + presence "Indicates a process-single-crash node is configured."; + description + "Reboot condition for single mandatory process + that crashes"; + leaf crashes { + type uint32 { + range "1..500"; + } + mandatory true; + description + "Number of crashes for a process to trigger + reboot"; + } + leaf minimum-up-time { + type uint32 { + range "0..4294967295"; + } + units "second"; + mandatory true; + description + "Minimum process up time (in seconds) to reset + crash count"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper-sub1.yang new file mode 100644 index 000000000..99502865d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper-sub1.yang @@ -0,0 +1,1327 @@ +submodule Cisco-IOS-XR-sysmgr-oper-sub1 { + belongs-to Cisco-IOS-XR-sysmgr-oper { + prefix Cisco-IOS-XR-sysmgr-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR sysmgr package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-29 { + description + "Added a grouping list to return an array of process control block records."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-18 { + description + "Added good description for bag fields."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Placement-state { + type enumeration { + enum "place-null" { + value 0; + description + "Process runs everywhere (ubiquitous)"; + } + enum "place-placeable" { + value 1; + description + "Process runs on node chosen by PlaceD"; + } + enum "place-dlrsc-tracker" { + value 2; + description + "Process runs on dSDRSC only"; + } + enum "place-rack-centric" { + value 3; + description + "Process runs on RP of each rack"; + } + enum "place-dsc-tracker" { + value 4; + description + "Process runs on DSC only"; + } + } + description + "Process placement state"; + } + + typedef Process-state { + type enumeration { + enum "none" { + value 0; + description + "NONE"; + } + enum "run" { + value 1; + description + "RUN"; + } + enum "exited" { + value 2; + description + "EXITED"; + } + enum "hold" { + value 3; + description + "HOLD"; + } + enum "wait" { + value 4; + description + "WAIT"; + } + enum "restart" { + value 5; + description + "RESTART"; + } + enum "initializing" { + value 6; + description + "INITIALIZING"; + } + enum "killed" { + value 7; + description + "KILLED"; + } + enum "queued" { + value 8; + description + "QUEUED"; + } + enum "error" { + value 9; + description + "ERROR"; + } + enum "tuple-set" { + value 10; + description + "TUPLESET"; + } + enum "unknown" { + value 11; + description + "UNKNOWN"; + } + } + description + "Process state"; + } + + grouping PROC-SEARCHPATH-INFO { + description + "process searchpath"; + leaf path { + type string; + description + "process searchpath"; + } + } + + grouping LOG-INFO { + description + "Process log information"; + leaf log { + type string; + description + "Process log"; + } + } + + grouping PROC-BOOT-INFO { + description + "Process boot information"; + leaf last-process-started { + type string; + description + "process that was started last in the band"; + } + list standby-band-statistic { + description + "Statistics of Standby Band"; + uses BAND-STATS-INFO; + } + list active-band-statistic { + description + "Statistics of Active Band"; + uses BAND-STATS-INFO; + } + list booted-process { + description + "List of booted processes"; + uses BOOTED-PROCESS-INFO; + } + } + + grouping PRIM-BOOTED-PROCESS-INFO { + description + "Process in primary boot order"; + leaf prim-time-stamp { + type string; + description + "Primary Time Stamp"; + } + leaf go-primary { + type string; + description + "Go primary time stamp"; + } + leaf level { + type string; + description + "Level"; + } + leaf band-name { + type string; + description + "Band Name"; + } + leaf jid { + type int32; + description + "Job Id"; + } + leaf instance-id { + type int32; + description + "Instance number"; + } + leaf avail-time-stamp { + type string; + description + "TimeStamp process became available"; + } + leaf avail { + type string; + description + "Time since Avail"; + } + leaf is-avail-timeout { + type boolean; + description + "Is EOI timeout"; + } + leaf process-name { + type string; + description + "Name of the process"; + } + } + + grouping BOOTED-PROCESS-INFO { + description + "Process in boot order"; + leaf start-time-stamp { + type string; + description + "TimeStamp of spawn after failover"; + } + leaf started { + type string; + description + "Time since started"; + } + leaf level { + type string; + description + "Level"; + } + leaf jid { + type int32; + description + "Job Id"; + } + leaf instance-id { + type int32; + description + "Instance number"; + } + leaf ready-time-stamp { + type string; + description + "TimeStamp the process became ready"; + } + leaf ready { + type string; + description + "Time since Ready"; + } + leaf is-eoi-timeout { + type boolean; + description + "Is EOI timeout"; + } + leaf process-name { + type string; + description + "Name of the process"; + } + } + + grouping ACTIVE-BOOTED-PROCESS-INFO { + description + "Process in primary boot order"; + leaf active-time-stamp { + type string; + description + "Timestamp it became Active after switchover"; + } + leaf go-active { + type string; + description + "Go Active time stamp"; + } + leaf level { + type string; + description + "Level"; + } + leaf band-name { + type string; + description + "Band Name"; + } + leaf job-id { + type int32; + description + "Job Id"; + } + leaf instance-id { + type int32; + description + "Instance number"; + } + leaf avail-time-stamp { + type string; + description + "Time taken to become available"; + } + leaf avail { + type string; + description + "Time since Avail"; + } + leaf is-avail-timeout { + type boolean; + description + "Timeout occured?"; + } + leaf process-name { + type string; + description + "Name of the process"; + } + } + + grouping BAND-STATS-INFO { + description + "Process band statistics"; + leaf level { + type string; + description + "Level"; + } + leaf band-name { + type string; + description + "Band Name"; + } + leaf band-finish-time { + type string; + description + "Finish timestamp of the band"; + } + leaf band-time { + type string; + description + "Time spent on the band"; + } + leaf finish-time { + type string; + description + "Time taken to finish the band"; + } + leaf idle-percentage { + type string; + units "percentage"; + description + "Percentage of time it was idle"; + } + leaf jid { + type uint32; + description + "Jid"; + } + leaf ready-time { + type string; + description + "Ready Time"; + } + leaf last-process { + type string; + description + "Last Process Name"; + } + } + + grouping PROC-FAILOVER-INFO { + description + "Process boot information"; + leaf failover-log { + type string; + description + "Failover log message"; + } + leaf critical-failover-elapsed-time { + type string; + description + "Failover Time"; + } + leaf last-process-started { + type string; + description + "Last process started in the band"; + } + leaf primary-failover-elapsed-time { + type string; + description + "Primary failover time"; + } + leaf last-primary-proc-started { + type string; + description + "Last primary process started in the band"; + } + list standby-band-statistic { + description + "Statistics of Standby Band"; + uses BAND-STATS-INFO; + } + list active-band-statistic { + description + "Statistics of Active Band"; + uses BAND-STATS-INFO; + } + list active-ts-boot-proc { + description + "List of booted process as per avail time"; + uses ACTIVE-BOOTED-PROCESS-INFO; + } + list start-ts-boot-proc { + description + "List of booted processes per start time"; + uses BOOTED-PROCESS-INFO; + } + list primary-band-statistic { + description + "Statistics of Primary Band"; + uses BAND-STATS-INFO; + } + list primary-ts-boot-proc { + description + "List of booted processes per primary time"; + uses PRIM-BOOTED-PROCESS-INFO; + } + list primary-start-ts-boot-proc { + description + "List of booted process per primary start time"; + uses BOOTED-PROCESS-INFO; + } + } + + grouping ABORT-INFO { + description + "Abort information"; + leaf name { + type string; + description + "Process name"; + } + leaf timebuf { + type string; + description + "Date and time of process abort"; + } + leaf job-id { + type uint32; + description + "Job ID"; + } + leaf is-respawned { + type string; + description + "Respawn information"; + } + } + + grouping PROC-ABORT-INFO { + description + "Process Abort information"; + leaf process-abort-count { + type uint32; + description + "Number of Aborted Processes"; + } + list process { + description + "Array of aborted processes"; + uses ABORT-INFO; + } + } + + grouping BOOT-HOLD-INFO { + description + "Boot hold information"; + leaf boot-held-by-name { + type string; + description + "Processs name"; + } + leaf instance-id { + type uint32; + description + "Instance number"; + } + leaf jid { + type uint32; + description + "Job ID"; + } + } + + grouping PROC-BOOT-STALLED-INFO { + description + "Process Boot Stalled information"; + leaf spawn-status { + type string; + description + "Spawn status of the processes"; + } + list boot-hold { + description + "Boot hold information of the processes"; + uses BOOT-HOLD-INFO; + } + } + + grouping PROCESS-INFO { + description + "Process information"; + leaf name { + type string; + description + "Process name"; + } + leaf instance-id { + type uint32; + description + "Instance number"; + } + leaf args { + type string; + description + "Arguments"; + } + leaf jid { + type uint32; + description + "Job ID"; + } + leaf state { + type Process-state; + description + "Process state"; + } + leaf last-started { + type string; + description + "Date and time of process last started"; + } + leaf respawn-count { + type uint8; + description + "No of times the process restarted"; + } + leaf placement-state { + type Placement-state; + description + "Type of Placement"; + } + leaf is-mandatory { + type boolean; + description + "Is process mandatory?"; + } + leaf is-maintenance { + type boolean; + description + "Is maintenance mode?"; + } + } + + grouping PROCESSES-INFO { + description + "Processes information"; + leaf process-count { + type uint32; + description + "Number of processes"; + } + list process { + description + "Array of processes"; + uses PROCESS-INFO; + } + } + + grouping PROC-VERBOSE-INFO { + description + "Process Verbose Information"; + leaf process-group { + type string; + description + "Group Name"; + } + leaf respawn-allowed { + type int32; + description + "Can be restarted?"; + } + leaf wait-for-exit { + type int32; + description + "Wait until process exits"; + } + leaf dynamic-tag { + type int32; + description + "Interested in being verifer of the tuple"; + } + leaf forced-stop { + type int32; + description + "Signal that caused Forced stop"; + } + leaf critical-process { + type int32; + description + "If the process is critical"; + } + leaf hold { + type int32; + description + "Hold"; + } + leaf transient { + type int32; + description + "Transient process"; + } + leaf tuple-cfgmgr { + type int32; + description + "process started on tuple creation"; + } + leaf standby-capable { + type int32; + description + "capable of running on active and standby"; + } + leaf edm-startup { + type int32; + description + "EDM startup"; + } + leaf placement { + type int32; + description + "Placeable process"; + } + leaf skip-kill-notif { + type int32; + description + "Skip Kill Notif"; + } + leaf init-proc { + type int32; + description + "Init process"; + } + leaf sysdb-event { + type int32; + description + "Sysdb notification state"; + } + leaf level-started { + type int32; + description + "Process spawned on band"; + } + leaf proc-avail { + type int32; + description + "Process available"; + } + leaf tuples-scanned { + type int32; + description + "pcb has been Scanned"; + } + leaf no-chkpt-start { + type int32; + description + "No checkpoint start"; + } + leaf in-shut-down { + type int32; + description + "In Shut Down"; + } + leaf sm-started { + type int32; + description + "SM started"; + } + leaf ignore-on-sc { + type int32; + description + "Ignore on SC"; + } + leaf ignore-on-easy-bake { + type int32; + description + "Not run during EasyBake"; + } + leaf pre-init { + type int32; + description + "process started by boot script"; + } + leaf eoi-received { + type int32; + description + "EOI received"; + } + leaf eoi-timeout { + type int32; + description + "EOI Timeout"; + } + leaf avail-timeout { + type int32; + description + "Avail Timeout occured for this process"; + } + leaf reserved-memory { + type int32; + description + "Use Special Memory"; + } + leaf allow-warned { + type int32; + description + "Process started before its level"; + } + leaf arg-change { + type int32; + description + "Arg Change"; + } + leaf restart-on-tuple { + type int32; + description + "check the tuple on restart"; + } + leaf boot-hold { + type int32; + description + "Boot Hold"; + } + leaf reg-id { + type int32; + description + "Reg Id"; + } + leaf memory-limit { + type int32; + description + "Max memory a process can use"; + } + leaf parent-job-id { + type int32; + description + "Parent Job ID"; + } + leaf tuple-index { + type int32; + description + "Index of the tuple"; + } + leaf dump-count { + type int32; + description + "Dump Count"; + } + leaf respawn-interval-user { + type int32; + description + "User defined Respawn Interval"; + } + leaf silent-restart-count { + type int32; + description + "No of Silent Restarts"; + } + leaf critical-tier { + type int32; + description + "Failover Tier"; + } + leaf exit-type { + type int32; + description + "Exit Type"; + } + leaf init-timeout { + type int32; + description + "Timeout for EOI"; + } + leaf restart-by-cmd { + type int32; + description + "Restart by Command"; + } + leaf boot-pref { + type int32; + description + "Boot Pref"; + } + leaf mdr-mbi-proc { + type int32; + description + "Mdr Mbi"; + } + leaf mdr-non-mbi-kld { + type int32; + description + "Mdr Non Mbi Kld"; + } + leaf mdr-mbi-kld { + type int32; + description + "Mdr Mbi Kld"; + } + leaf mdr-shut-delay { + type int32; + description + "Mdr Shut Delay"; + } + leaf mdr-keep-thru { + type int32; + description + "Mdr Keep Thru"; + } + leaf mdr-spoofer { + type int32; + description + "spoofer process"; + } + leaf mdr-spoofed { + type int32; + description + "spoofed process"; + } + leaf mdr-spoofed-last { + type int32; + description + "Last process Mdr spoofed"; + } + leaf mdr-spoofed-ready { + type int32; + description + "Received Spoofed Ready"; + } + leaf mdr-pcb-check { + type int32; + description + "Mdr PCB Check"; + } + leaf mdr-kill-tier { + type int32; + description + "Mdr Kill Tier"; + } + leaf mdr-kld { + type int32; + description + "Mdr killed process"; + } + leaf mdr-level { + type int32; + description + "Mdr Level"; + } + leaf fm-restart-cnt { + type int32; + description + "FM restart count"; + } + leaf self-managed { + type int32; + description + "Self Managed process"; + } + list tuple { + description + "Tuple"; + uses TUPLE-INFO; + } + list orig-tuple { + description + "Orig Tuple"; + uses TUPLE-INFO; + } + } + + grouping PROC-BASIC-DETAIL-VERBOSE-INFO { + description + "Process basic and detail and verbose information"; + container basic-info { + description + "Process Basic Info"; + uses PROC-BASIC-INFO; + } + container detail-info { + description + "Process Detail Info"; + uses PROC-DETAIL-INFO; + } + container verbose-info { + description + "Process Verbose Info"; + uses PROC-VERBOSE-INFO; + } + } + + grouping PROC-BASIC-DETAIL-VERBOSE-INFO-LIST { + description + "PROC BASIC DETAIL VERBOSE INFO LIST"; + leaf count { + type int32; + description + "count"; + } + list basic-detail-verbose-info-val { + description + "basic detail verbose info val"; + uses PROC-BASIC-DETAIL-VERBOSE-INFO; + } + } + + grouping PROC-DETAIL-INFO { + description + "Process detail information"; + leaf running-path { + type string; + description + "Executable path"; + } + leaf package-path { + type string; + description + "Install package path"; + } + leaf job-id-link { + type int32; + description + "Job Id Link"; + } + leaf group-jid { + type string; + description + "Group Jid"; + } + leaf fail-count { + type uint32; + description + "No of times spawn failed"; + } + leaf restart-needed { + type boolean; + description + "whether the process has to be restarted"; + } + leaf init-process { + type boolean; + description + "process that uses .init file"; + } + leaf last-online { + type string; + description + "Timestamp of last online"; + } + leaf this-pcb { + type string; + description + "This PCB"; + } + leaf next-pcb { + type string; + description + "Next PCB"; + } + leaf envs { + type string; + description + "Env variables"; + } + leaf wait-for { + type string; + description + "Wait For /dev/xxx"; + } + leaf job-id-on-rp { + type int32; + description + "Job ID on RP"; + } + leaf is-standby-capable { + type boolean; + description + "capable of running on active and standby"; + } + leaf disable-kill { + type boolean; + description + "Disallow process kill cli"; + } + leaf send-avail { + type boolean; + description + "Check avail"; + } + leaf node-event-cli-info { + type int32; + description + "Node Event CLI info"; + } + leaf node-redundancy-state { + type string; + description + "Redundancy role"; + } + leaf role-event-cli-info { + type int32; + description + "client interested in proc role change event"; + } + leaf proc-role-state { + type string; + description + "Proc Role State"; + } + leaf standby-event-cli-info { + type int32; + description + "Standby Event CLI info"; + } + leaf cleanup-event-cli-info { + type int32; + description + "Client registered for cleanup notification"; + } + leaf band-ready-event-cli-info { + type int32; + description + "Band Ready Event CLI Info"; + } + leaf lr-event-cli-info { + type int32; + description + "LR Event CLI Info"; + } + leaf plane-ready-event-cli-info { + type int32; + description + "Plane Ready Event CLI info"; + } + leaf mdr-is-done-cli-info { + type int32; + description + "MDR is done CLI Info"; + } + } + + grouping PROC-BASIC-DETAIL-INFO { + description + "Process basic and detail information"; + container basic-info { + description + "Process Basic Info"; + uses PROC-BASIC-INFO; + } + container detail-info { + description + "Process Detail Info"; + uses PROC-DETAIL-INFO; + } + } + + grouping PROC-BASIC-DETAIL-INFO-LIST { + description + "PROC BASIC DETAIL INFO LIST"; + leaf count { + type int32; + description + "count"; + } + list basic-detail-info-val { + description + "basic detail info val"; + uses PROC-BASIC-DETAIL-INFO; + } + } + + grouping PROC-CPU-TIME { + description + "Process CPU time"; + leaf user { + type string; + description + "User time"; + } + leaf system { + type string; + description + "Kernel time"; + } + leaf total { + type string; + description + "Total time"; + } + } + + grouping TUPLE-INFO { + description + "process tuple information"; + leaf tuple { + type string; + description + "Tuple"; + } + } + + grouping PROC-BASIC-INFO { + description + "proc basic information"; + container proc-cpu-time { + description + "Amt of time spent in user and kernel mode"; + uses PROC-CPU-TIME; + } + leaf job-id-xr { + type uint32; + description + "Job ID"; + } + leaf process-id { + type uint32; + description + "PID"; + } + leaf process-name { + type string; + description + "Name of the process"; + } + leaf executable { + type string; + description + "Executable name or path"; + } + leaf active-path { + type string; + description + "Active install Path"; + } + leaf instance-id { + type int32; + description + "Instance ID"; + } + leaf args { + type string; + description + "Args"; + } + leaf version-id { + type string; + description + "Version ID"; + } + leaf respawn { + type string; + description + "Respawn on/off"; + } + leaf respawn-count { + type int32; + description + "No of times the process got respawned"; + } + leaf last-started { + type string; + description + "Last Started timestamp"; + } + leaf process-state { + type string; + description + "State of the process"; + } + leaf last-exit-status { + type int32; + description + "status of the process if exited"; + } + leaf last-exit-reason { + type string; + description + "Last Exit due to"; + } + leaf package-state { + type string; + description + "State of the Package"; + } + leaf started-on-config { + type string; + description + "Started on Config of the tuple"; + } + leaf feature-name { + type string; + description + "Name of the feature"; + } + leaf tag { + type string; + description + "Tag"; + } + leaf group { + type string; + description + "Process Group"; + } + leaf core { + type string; + description + "Core"; + } + leaf max-core { + type int32; + description + "Maximum no of coredumps"; + } + leaf level { + type string; + description + "Level"; + } + leaf mandatory { + type boolean; + description + "This process is critical for the router to run"; + } + leaf maint-mode-proc { + type boolean; + description + "Is admin mode process?"; + } + leaf placement-state { + type string; + description + "Type of Placement"; + } + leaf start-up-path { + type string; + description + "Startup Path"; + } + leaf memory-limit { + type uint32; + description + "Max memory a process can use"; + } + leaf ready { + type string; + description + "Time take for Ready state"; + } + leaf available { + type string; + description + "Time Available since last respawn"; + } + list registered-item { + description + "Tuples Registered"; + uses TUPLE-INFO; + } + } + + grouping PROC-BASIC-INFO-LIST { + description + "PROC BASIC INFO LIST"; + leaf count { + type int32; + description + "count"; + } + list proc-basic-info-val { + description + "proc basic info val"; + uses PROC-BASIC-INFO; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper.yang new file mode 100644 index 000000000..65f0c113b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-sysmgr-oper.yang @@ -0,0 +1,243 @@ +module Cisco-IOS-XR-sysmgr-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-sysmgr-oper"; + prefix sysmgr-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-sysmgr-oper-sub1 { + revision-date 2021-04-29; + } + + 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 sysmgr package operational data. + + This module contains definitions + for the following management objects: + system-process: Process information + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-29 { + description + "Added a grouping list to return an array of process control block records."; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-18 { + description + "Added good description for bag fields."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NODE { + description + "Common node of node-table, node-table"; + list node { + key "node-name"; + description + "Process information per node"; + container name { + description + "Process information"; + container process-name-run-infos { + description + "Process information"; + list process-name-run-info { + key "proc-name"; + description + "Process run information"; + leaf proc-name { + type xr:Cisco-ios-xr-string; + description + "Process Name"; + } + uses PROC-BASIC-INFO-LIST; + } + } + container process-name-infos { + description + "Process information"; + list process-name-info { + key "proc-name"; + description + "Process information"; + leaf proc-name { + type xr:Cisco-ios-xr-string; + description + "Process Name"; + } + uses PROC-BASIC-INFO-LIST; + } + } + container process-name-run-details { + description + "Process information"; + list process-name-run-detail { + key "proc-name"; + description + "Process run detail information"; + leaf proc-name { + type xr:Cisco-ios-xr-string; + description + "Process Name"; + } + uses PROC-BASIC-DETAIL-INFO-LIST; + } + } + container process-name-runverboses { + description + "Process information"; + list process-name-runverbose { + key "proc-name"; + description + "Process run verbose information"; + leaf proc-name { + type xr:Cisco-ios-xr-string; + description + "Process Name"; + } + uses PROC-BASIC-DETAIL-VERBOSE-INFO-LIST; + } + } + container process-name-details { + description + "Process information"; + list process-name-detail { + key "proc-name"; + description + "Process detail information"; + leaf proc-name { + type xr:Cisco-ios-xr-string; + description + "Process Name"; + } + uses PROC-BASIC-DETAIL-INFO-LIST; + } + } + container process-name-verboses { + description + "Process information"; + list process-name-verbose { + key "proc-name"; + description + "Process verbose information"; + leaf proc-name { + type xr:Cisco-ios-xr-string; + description + "Process Name"; + } + uses PROC-BASIC-DETAIL-VERBOSE-INFO-LIST; + } + } + } + container jids { + description + "Process job id information"; + list jid { + key "job-id"; + description + "Process information"; + leaf job-id { + type uint32 { + range "1..4294967295"; + } + description + "Job ID"; + } + uses PROC-BASIC-INFO; + } + } + container dynamic { + description + "Process Dynamic information"; + uses PROCESSES-INFO; + } + container boot-stalled { + description + "Process Boot Stalled information"; + uses PROC-BOOT-STALLED-INFO; + } + container processes { + description + "Process all information"; + uses PROCESSES-INFO; + } + container startup { + description + "Process Startup information"; + uses PROCESSES-INFO; + } + container mandatory { + description + "Mandatory Process information"; + uses PROCESSES-INFO; + } + container abort { + description + "Process Abort information"; + uses PROC-ABORT-INFO; + } + container failover { + description + "Process Failover information"; + uses PROC-FAILOVER-INFO; + } + container boot { + description + "Process Boot information"; + uses PROC-BOOT-INFO; + } + container logs { + description + "Process Log information"; + uses LOG-INFO; + } + container searchpath { + description + "Process Searchpath information"; + uses PROC-SEARCHPATH-INFO; + } + leaf node-name { + type xr:Node-id; + description + "The node name"; + } + } + } + + container system-process { + config false; + description + "Process information"; + container node-table { + description + "List of nodes"; + uses NODE; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-system-reboot-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-system-reboot-act.yang new file mode 100644 index 000000000..2e252caa1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-system-reboot-act.yang @@ -0,0 +1,206 @@ +module Cisco-IOS-XR-system-reboot-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-system-reboot-act"; + prefix system-reboot-act; + + 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 system reboot operations corresponding + to the gNOI system.proto definitions. + + Copyright (c) 2019-2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-24 { + description + "Added disk reimage request"; + } + revision 2022-03-07 { + description + "Added cancel reboot request rpc"; + semver:module-version "1.1.0"; + } + revision 2020-07-15 { + description + "IOS XR 7.0.12 revision."; + semver:module-version "1.0.0"; + } + + typedef location-name { + type string { + length "1..64"; + } + description + "Fully qualified location specification, e.g. 0/RP0/CPU0"; + } + + typedef reboot-method { + type enumeration { + enum "unknown" { + description + "Invalid default method"; + } + enum "cold" { + description + "Shutdown and restart OS and all hardware"; + } + enum "powerdown" { + description + "Halt and power down, if possible"; + } + enum "halt" { + description + "Halt, if possible"; + } + enum "warm" { + description + "Reload configuration but not underlying hardware"; + } + enum "nsf" { + description + "Non-stop-forwarding reboot, if possible"; + } + enum "reset" { + description + "Reboot to factory defaults"; + } + enum "powerup" { + description + "Apply power, no-op if power is already on"; + } + } + description + "Reboot action type"; + } + + typedef boot-media { + type enumeration { + enum "network" { + description + "Load image from network directory"; + } + enum "usb" { + description + "Load image from USB directory"; + } + enum "disk" { + description + "Load image from disk"; + } + } + description + "Boot media Type"; + } + + rpc reboot-request { + description + "Boot, reboot, or shutdown the specified entity"; + input { + leaf method { + type reboot-method; + mandatory true; + description + "Reboot operation type"; + } + leaf delay { + type uint64; + description + "Delay in nanoseconds before issuing command"; + } + leaf message { + type string; + description + "Informational reason for the operation"; + } + leaf location { + type location-name; + description + "Fully qualified location specification"; + } + leaf force { + type boolean; + description + "Do not wait for software to shutdown gracefully"; + } + leaf bootmedia { + type boot-media; + description + "Bootmedia type"; + } + leaf iso { + type string; + description + "path to image in /harddisk:"; + } + } + } + rpc cancel-reboot-request { + description + "Cancel reboot request"; + input { + leaf location { + type location-name; + description + "Fully qualified location specification"; + } + } + } + rpc reboot-status-request { + description + "Retrieves the latest boot status of the specified entity"; + input { + leaf location { + type location-name; + mandatory true; + description + "Fully qualified location specification"; + } + } + output { + container reboot-status-response { + description + "Latest boot status of the target"; + leaf active { + type boolean; + description + "Set to true if reboot is active"; + } + leaf wait { + type uint64; + description + "Time left until reboot"; + } + leaf when { + type uint64; + description + "Time to reboot in nanoseconds since the epoch"; + } + leaf reason { + type string; + description + "Reason for reboot"; + } + leaf count { + type uint32; + description + "Number of reboots since active"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-system-recovery-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-system-recovery-cfg.yang new file mode 100644 index 000000000..f6f83a239 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-system-recovery-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-system-recovery-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-system-recovery-cfg"; + prefix system-recovery-cfg; + + 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 system-recovery package configuration. + + This module contains definitions + for the following management objects: + system-recovery: System Recovery configurations + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-05 { + description + "Added support for system recovery"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container system-recovery { + description + "System Recovery configurations"; + leaf enable { + type empty; + description + "Enable System Recovery"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper-sub1.yang new file mode 100644 index 000000000..3d8cb8370 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper-sub1.yang @@ -0,0 +1,238 @@ +submodule Cisco-IOS-XR-tamsvcs-oper-sub1 { + belongs-to Cisco-IOS-XR-tamsvcs-oper { + prefix Cisco-IOS-XR-tamsvcs-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tamsvcs package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-30 { + description + "Show ha-sudi certs support for tam"; + semver:module-version "1.3.0"; + } + revision 2021-06-25 { + description + "3rd Party Key Package support in XR"; + semver:module-version "1.2.0"; + } + revision 2020-11-15 { + description + "Show device info and sudi certs support for tam"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TAMSVCS-SUDI-CERTS { + description + "Tam Sudi certs bag"; + leaf sudi-root-cert { + type string; + description + "Sudi Root Certificate"; + } + leaf sudi-subca-cert { + type string; + description + "Sudi SubCA Certificate"; + } + leaf sudi-cert { + type string; + description + "Sudi Certificate of Tam Device"; + } + } + + grouping TAMSVCS-DEVICE-INFO { + description + "Tam device info bag"; + leaf device-type { + type string; + description + "Type of Tam Device"; + } + leaf device-pid { + type string; + description + "Pid of Tam Device"; + } + leaf device-serial { + type string; + description + "Serial Number of Tam Device"; + } + leaf device-firware-version { + type string; + description + "Firmware version of the device"; + } + leaf server-version { + type string; + description + "Tam Server Version"; + } + leaf server-package-version { + type string; + description + "Tam Services Server Package Version"; + } + leaf client-package-version { + type string; + description + "Tam Services Client Package Version"; + } + } + + grouping TAMSVCS-PUBKEYS-REVOKED { + description + "TAM Revoked Public Key List "; + list revoked { + description + "Revoked list of Public Key"; + uses TAMSVCS-PUBKEYS; + } + } + + grouping TAMSVCS-INFO-ALL { + description + "Tam All info bag"; + leaf device-type { + type string; + description + "Type of Tam Device"; + } + leaf device-pid { + type string; + description + "Pid of Tam Device"; + } + leaf device-serial { + type string; + description + "Serial Number of Tam Device"; + } + leaf device-firware-version { + type string; + description + "Firmware version of the device"; + } + leaf server-version { + type string; + description + "Tam Server Version"; + } + leaf server-package-version { + type string; + description + "Tam Services Server Package Version"; + } + leaf client-package-version { + type string; + description + "Tam Services Client Package Version"; + } + leaf sudi-root-cert { + type string; + description + "Sudi Root Certificate"; + } + leaf sudi-subca-cert { + type string; + description + "Sudi SubCA Certificate"; + } + leaf sudi-cert { + type string; + description + "Sudi Leaf Certificate"; + } + leaf ha-sudi-root-cert { + type string; + description + "HA Sudi Root Certificate"; + } + leaf ha-sudi-subca-cert { + type string; + description + "HA Sudi SubCA Certificate"; + } + leaf ha-sudi-cert { + type string; + description + "HA Sudi Leaf Certificate"; + } + } + + grouping TAMSVCS-PUBKEYS { + description + "TAM Public Key "; + leaf so-name { + type string; + description + "Name of Public Key"; + } + leaf so-data { + type string; + description + "Content of SO Public Key"; + } + } + + grouping TAMSVCS-PUBKEYS-ALLOWED { + description + "TAM Allowed Public Key List "; + list allowed { + description + "Allowed list of Public Key"; + uses TAMSVCS-PUBKEYS; + } + } + + grouping TAMSVCS-HA-SUDI-CERTS { + description + "Tam Ha Sudi certs bag"; + leaf ha-sudi-root-cert { + type string; + description + "HA Sudi Root Certificate"; + } + leaf ha-sudi-subca-cert { + type string; + description + "HA Sudi SubCA Certificate"; + } + leaf ha-sudi-cert { + type string; + description + "HA Sudi Certificate of Tam Device"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper.yang new file mode 100644 index 000000000..7df9d9a6f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tamsvcs-oper.yang @@ -0,0 +1,112 @@ +module Cisco-IOS-XR-tamsvcs-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tamsvcs-oper"; + prefix tamsvcs-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tamsvcs-oper-sub1 { + revision-date 2022-08-30; + } + + 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 tamsvcs package operational data. + + This module contains definitions + for the following management objects: + tam: TAM services operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-30 { + description + "Show ha-sudi certs support for tam"; + semver:module-version "1.3.0"; + } + revision 2021-06-25 { + description + "3rd Party Key Package support in XR"; + semver:module-version "1.2.0"; + } + revision 2020-11-15 { + description + "Show device info and sudi certs support for tam"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container tam { + config false; + description + "TAM services operational data"; + container nodes { + description + "Per Node Tam Services operation data"; + list node { + key "node"; + description + "Node Location for TAM services operational data"; + container ha-sudi-certs { + description + "TAM services HA Sudi Certificates"; + uses TAMSVCS-HA-SUDI-CERTS; + } + container public-keys-allowed { + description + "TAM Public Keys Allowed List"; + uses TAMSVCS-PUBKEYS-ALLOWED; + } + container all { + description + "TAM services all information"; + uses TAMSVCS-INFO-ALL; + } + container public-keys-revoked { + description + "TAM Public Keys Revoked List"; + uses TAMSVCS-PUBKEYS-REVOKED; + } + container device-info { + description + "TAM services device information"; + uses TAMSVCS-DEVICE-INFO; + } + container sudi-certs { + description + "TAM services Sudi Certificates"; + uses TAMSVCS-SUDI-CERTS; + } + leaf node { + type xr:Node-id; + description + "Node location"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-cfg.yang new file mode 100644 index 000000000..6669f9286 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-cfg.yang @@ -0,0 +1,723 @@ +module Cisco-IOS-XR-telemetry-model-driven-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-telemetry-model-driven-cfg"; + prefix telemetry-model-driven-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 telemetry-model-driven package configuration. + + This model is deprecated and is replaced by + Cisco-IOS-XR-um-telemetry-model-driven-cfg.yang which will provide the + compatible functionalities. + + This module contains definitions + for the following management objects: + telemetry-model-driven: Model Driven Telemetry configuration + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-02 { + description + "Added gNMI bundling of telemetry updates"; + semver:module-version "2.2.0"; + } + revision 2021-04-11 { + description + "Added subscription mode leaf to sensor profile"; + semver:module-version "2.1.0"; + } + revision 2020-12-11 { + description + "Added length restriction to tls-hostname IosSetYangSchemaRev Cisco-IOS-XR-telemetry-model-driven-cfg"; + semver:module-version "2.0.0"; + } + revision 2020-04-09 { + description + "Added back default value of MDT_DEF_UDP_MTU to UDP packetsize to solve nbc issue. + 2020-01-30 + Added compression option to protocol. + 2020-01-07 + Added default statement to leaves max-containers-per-path, max-sensor-paths, and tcp-send-timeout. + 2019-10-09 + Added select-leaves-on-events config leaf + 2019-09-25 + Added minimum-cadence and cadence-factor options for tgtdef + 2019-09-01 + Add capability to configure a Fully Qualified Domain Name as destination."; + semver:module-version "1.2.0"; + } + revision 2019-08-29 { + description + "Removed mandatory statement of leaf sample-interval."; + semver:module-version "1.1.0"; + } + revision 2019-05-12 { + description + "Deprecated the native model, replaced by UM model."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2018-07-23 { + description + "Changed no-tls to presence leaf"; + } + revision 2018-05-29 { + description + "Added include empty values."; + } + revision 2018-04-02 { + description + "Added strict-timer option"; + } + revision 2018-01-17 { + description + "Changed mandatory field for sample-interval."; + } + revision 2017-09-26 { + description + "Added tcp-send-timeout to model"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-08-23 { + description + "Updated version for max-containers-per-path"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-02-09 { + description + "Added DSCP"; + } + revision 2017-01-30 { + description + "Updated version for source-interface/vrf"; + } + revision 2016-10-20 { + description + "Updated version for hierarchy-destinations"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Proto-type { + type enumeration { + enum "grpc" { + value 1; + description + "GRPC"; + } + enum "tcp" { + value 2; + description + "tcp"; + } + enum "udp" { + value 3; + description + "udp"; + } + } + description + "Proto type"; + } + + typedef Subscription-mode { + type enumeration { + enum "target-defined" { + value 0; + description + "Device selects one of sample/on-change for + leaves to stream data"; + } + } + description + "Subscription mode"; + } + + typedef Encode-type { + type enumeration { + enum "gpb" { + value 2; + description + "GPB"; + } + enum "self-describing-gpb" { + value 3; + description + "SELF DESCRIBING GPB"; + } + enum "json" { + value 4; + description + "JSON"; + } + } + description + "Encode type"; + } + + typedef Mdt-dscp-value { + type enumeration { + enum "default" { + value 0; + description + "Applicable to DSCP: bits 000000"; + } + enum "cs1" { + value 8; + description + "Applicable to DSCP: bits 001000"; + } + enum "af11" { + value 10; + description + "Applicable to DSCP: bits 001010"; + } + enum "af12" { + value 12; + description + "Applicable to DSCP: bits 001100"; + } + enum "af13" { + value 14; + description + "Applicable to DSCP: bits 001110"; + } + enum "cs2" { + value 16; + description + "Applicable to DSCP: bits 010000"; + } + enum "af21" { + value 18; + description + "Applicable to DSCP: bits 010010"; + } + enum "af22" { + value 20; + description + "Applicable to DSCP: bits 010100"; + } + enum "af23" { + value 22; + description + "Applicable to DSCP: bits 010110"; + } + enum "cs3" { + value 24; + description + "Applicable to DSCP: bits 011000"; + } + enum "af31" { + value 26; + description + "Applicable to DSCP: bits 011010"; + } + enum "af32" { + value 28; + description + "Applicable to DSCP: bits 011100"; + } + enum "af33" { + value 30; + description + "Applicable to DSCP: bits 011110"; + } + enum "cs4" { + value 32; + description + "Applicable to DSCP: bits 100000"; + } + enum "af41" { + value 34; + description + "Applicable to DSCP: bits 100010"; + } + enum "af42" { + value 36; + description + "Applicable to DSCP: bits 100100"; + } + enum "af43" { + value 38; + description + "Applicable to DSCP: bits 100110"; + } + enum "cs5" { + value 40; + description + "Applicable to DSCP: bits 101000"; + } + enum "ef" { + value 46; + description + "Applicable to DSCP: bits 101110"; + } + enum "cs6" { + value 48; + description + "Applicable to DSCP: bits 110000"; + } + enum "cs7" { + value 56; + description + "Applicable to DSCP: bits 111000"; + } + } + description + "Mdt dscp value"; + } + + typedef Mdt-compression { + type enumeration { + enum "gzip" { + value 1; + description + "google.golang.org/grpc/encoding/gzip + compression"; + } + } + description + "Mdt compression"; + } + + typedef Address-family { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 address family"; + } + enum "ipv6" { + value 2; + description + "IPv6 address family"; + } + } + description + "Address family"; + } + + grouping ENCODING { + description + "Common node of ipv6-destination, ipv4-destination + , destination"; + leaf encoding { + type Encode-type; + description + "Encoding used to transmit telemetry data to the + collector"; + } + } + + grouping PROTOCOL { + description + "Common node of ipv6-destination, ipv4-destination + , destination"; + container protocol { + presence "Indicates a protocol node is configured."; + description + "Transport Protocol used to transmit telemetry + data to the collector"; + leaf protocol { + type Proto-type; + mandatory true; + description + "protocol"; + } + leaf tls-hostname { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "tls hostname"; + } + leaf no-tls { + type empty; + description + "no tls"; + } + leaf packetsize { + type uint32 { + range "484..65507"; + } + default "1472"; + description + "udp packetsize"; + } + leaf compression { + type Mdt-compression; + description + "gRPC message compression"; + } + } + } + + container telemetry-model-driven { + status deprecated; + description + "This model is deprecated and is replaced by + Cisco-IOS-XR-um-telemetry-model-driven-cfg.yang + which will provide the compatible functionalities + . Model Driven Telemetry configuration"; + container sensor-groups { + description + "Sensor group configuration"; + list sensor-group { + key "sensor-group-identifier"; + description + "Sensor group configuration"; + container sensor-paths { + description + "Sensor path configuration"; + list sensor-path { + key "telemetry-sensor-path"; + description + "Sensor path configuration"; + leaf telemetry-sensor-path { + type string; + description + "Sensor Path"; + } + } + } + leaf sensor-group-identifier { + type xr:Cisco-ios-xr-string; + description + "The identifier for this group"; + } + } + } + container subscriptions { + description + "Streaming Telemetry Subscription"; + list subscription { + key "subscription-identifier"; + description + "Streaming Telemetry Subscription"; + container sensor-profiles { + description + "Associate Sensor Groups with Subscription"; + list sensor-profile { + key "sensorgroupid"; + description + "Associate Sensor Group with Subscription"; + leaf strict-timer { + type empty; + description + "use strict timer"; + } + leaf sample-interval { + type uint32 { + range "0..4294967295"; + } + units "millisecond"; + description + "Sample interval in milliseconds"; + } + leaf mode { + type Subscription-mode; + description + "Subscription mode"; + } + leaf heartbeat-always { + type empty; + description + "Send heartbeat even if events have occurred + within interval"; + } + leaf heartbeat-interval { + type uint32 { + range "1..4294967295"; + } + units "millisecond"; + description + "ON-CHANGE subscription heartbeat interval + (in milliseconds)"; + } + leaf sensorgroupid { + type xr:Cisco-ios-xr-string; + description + "Reference to the telemetry sensor group name"; + } + } + } + container destination-profiles { + description + "Associate Destination Groups with Subscription"; + list destination-profile { + key "destination-id"; + description + "Associate Destination Group with Subscription"; + leaf destination-id { + type xr:Cisco-ios-xr-string; + description + "Destination Id to associate with + Subscription"; + } + } + } + leaf source-qos-marking { + type Mdt-dscp-value; + description + "Outgoing DSCP value"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source address to use for streaming telemetry + information"; + } + leaf subscription-identifier { + type xr:Cisco-ios-xr-string; + description + "Subscription identifier string"; + } + } + } + container gnmi { + description + "GNMI Subscribe"; + container bundling { + presence "CLI submode compatibility."; + description + "gNMI bundling of telemetry updates"; + leaf enable { + type empty; + description + "Enable gNMI bundling of telemetry updates"; + } + leaf size { + type uint32 { + range "1024..65536"; + } + units "byte"; + default "32768"; + description + "gNMI bundling size (bytes)"; + } + } + leaf heartbeat-always { + type empty; + description + "Send heartbeat even if events have occurred + within interval"; + } + } + container include { + description + "Include fields with empty values in output."; + container empty { + description + "Include fields with empty values in output."; + leaf values { + type empty; + description + "String type fields with empty string value, + for example, are omitted by default. This + provides an option to override this behavior + and include them in the output."; + } + } + leaf select-leaves-on-events { + type empty; + description + "Include only configured leaves on on-change + subscription"; + } + } + container destination-groups { + description + "Destination Group configuration"; + list destination-group { + key "destination-id"; + description + "Destination Group"; + container ipv6-destinations { + description + "Destination address configuration"; + list ipv6-destination { + key "ipv6-address destination-port"; + description + "destination IP address"; + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Destination IPv6 address"; + } + leaf destination-port { + type xr:Cisco-ios-xr-port-number; + description + "Destination port"; + } + uses ENCODING; + uses PROTOCOL; + } + } + container ipv4-destinations { + description + "Destination address configuration"; + list ipv4-destination { + key "ipv4-address destination-port"; + description + "destination IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Destination IPv4 address"; + } + leaf destination-port { + type xr:Cisco-ios-xr-port-number; + description + "Destination port"; + } + uses ENCODING; + uses PROTOCOL; + } + } + container destinations { + description + "Stream destinations information such as IP + address or FQDN (Fully Qualified Domain Name) + and port, transport protocol, and encoding."; + list destination { + key "address port"; + description + "Stream destinations"; + leaf address-family { + type Address-family; + description + "Specify the desired address family for the + returned addresses from DNS. This is + applicable only if FQDN is specified as + destination address."; + } + leaf address { + type xr:Cisco-ios-xr-string { + length "1..128"; + } + description + "Destination address as fully qualified + domain name, IPv4 address in dotted-quad + notation, or IPv6 address in full, mixed, + shortened, and shortened-mixed notation."; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "Destination port"; + } + uses ENCODING; + uses PROTOCOL; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Vrf for the destination group"; + } + leaf destination-id { + type xr:Cisco-ios-xr-string; + description + "destination group id string"; + } + } + } + container gnmi-target-defined { + description + "Minimum cadence and cadence factor for gnmi + target defined"; + leaf minimum-cadence { + type uint32 { + range "1..65535"; + } + units "second"; + description + "Minimum Target Defined cadence in secs. 30 secs + by default"; + } + leaf cadence-factor { + type uint32 { + range "1..10"; + } + description + "Multiplier/Factor for cadence of Tgt defined + mode. Default: 2"; + } + } + leaf strict-timer { + type empty; + description + "enable strict-timer for all subscriptions, + default is relative timer"; + } + leaf enable { + type empty; + description + "Enable Model Driven Telemetry"; + } + leaf max-sensor-paths { + type uint32 { + range "0..4000"; + } + default "1000"; + description + "Maximum allowed sensor paths. 0 disables the + check."; + } + leaf max-containers-per-path { + type uint32 { + range "0..1024"; + } + default "16"; + description + "Maximum containers allowed per sensor path. 0 + disables the check."; + } + leaf tcp-send-timeout { + type uint32 { + range "0..30"; + } + units "second"; + default "30"; + description + "TCP send timeout value in seconds. 0 disables + the timeout."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub1.yang new file mode 100644 index 000000000..8161b5c10 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub1.yang @@ -0,0 +1,194 @@ +submodule Cisco-IOS-XR-telemetry-model-driven-oper-sub1 { + belongs-to Cisco-IOS-XR-telemetry-model-driven-oper { + prefix Cisco-IOS-XR-telemetry-model-driven-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR telemetry-model-driven package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-13 { + description + "Added pending message memory size to destination endpoint"; + semver:module-version "1.3.0"; + } + revision 2020-10-30 { + description + "Keys for sensor-paths IosSetYangSchemaRev Cisco-IOS-XR-telemetry-model-driven-oper"; + semver:module-version "1.2.0"; + } + revision 2020-03-11 { + description + "Updated the encodings supported + 2020-01-30 + Added compression leaf to destination container + 2020-01-10 + GRPC channel statistics added + 2019-09-25 + Added minimum-cadence and cadence-factor options for target defined mode"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-27 { + description + "Summary container added"; + } + revision 2017-05-05 { + description + "Modified the type for the state variables"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-02-09 { + description + "Added DSCP"; + } + revision 2017-01-30 { + description + "Initial 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TELEMETRY-SHOW-SUMMARY { + description + "Telemetry Summary information"; + leaf num-of-subscriptions { + type uint32; + description + "Number of Subscriptions"; + } + leaf num-of-active-subscriptions { + type uint32; + description + "Number of Active Subscriptions"; + } + leaf num-of-paused-subscriptions { + type uint32; + description + "Number of Paused Subscriptions"; + } + leaf num-of-destination-groups { + type uint32; + description + "Number of Destination Groups"; + } + leaf num-of-destinations { + type uint32; + description + "Number of Destinations"; + } + leaf num-of-tcp-dialouts { + type uint32; + description + "Number of Tcp Dialout Destinations"; + } + leaf num-of-udp-dialouts { + type uint32; + description + "Number of Udp Dialout Destinations"; + } + leaf num-of-grpc-tls-dialouts { + type uint32; + description + "Number of GRPC TLS Dialout Destinations"; + } + leaf num-of-grpc-non-tls-dialouts { + type uint32; + description + "Number of GRPC Non-TLS Dialout Destinations"; + } + leaf num-of-dialins { + type uint32; + description + "Number of Dialin Destinations"; + } + leaf num-of-active-destinations { + type uint32; + description + "Number of Active Destinations"; + } + leaf num-of-connected-sessions { + type uint32; + description + "Number of Connected Sessions"; + } + leaf num-of-connecting-sessions { + type uint32; + description + "Number of Connecting Sessions"; + } + leaf num-of-sensor-groups { + type uint32; + description + "Number of Sensor Groups"; + } + leaf num-of-unique-sensor-paths { + type uint32; + description + "Number of Unique Sensor Paths"; + } + leaf num-of-sensor-paths { + type uint32; + description + "Number of Sensor Paths"; + } + leaf num-of-not-resolved-sensor-paths { + type uint32; + description + "Number of not resolved sensor paths"; + } + leaf num-of-active-sensor-paths { + type uint32; + description + "Number of Active Sensor Paths"; + } + leaf max-sensor-paths { + type uint32; + description + "Maximum Sensor Paths allowed"; + } + leaf max-containers-per-path { + type uint32; + description + "Max containers allowed per Sensor Path"; + } + leaf min-target-def-cadence { + type uint32; + description + "Minimum cadence for target defined subscriptions"; + } + leaf target-def-cadence-factor { + type uint32; + description + "Cadence factor for target defined subscriptions"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub2.yang new file mode 100644 index 000000000..c815a491b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper-sub2.yang @@ -0,0 +1,1202 @@ +submodule Cisco-IOS-XR-telemetry-model-driven-oper-sub2 { + belongs-to Cisco-IOS-XR-telemetry-model-driven-oper { + prefix Cisco-IOS-XR-telemetry-model-driven-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR telemetry-model-driven package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-13 { + description + "Added pending message memory size to destination endpoint"; + semver:module-version "1.3.0"; + } + revision 2020-10-30 { + description + "Keys for sensor-paths IosSetYangSchemaRev Cisco-IOS-XR-telemetry-model-driven-oper"; + semver:module-version "1.2.0"; + } + revision 2020-03-11 { + description + "Updated the encodings supported + 2020-01-30 + Added compression leaf to destination container + 2020-01-10 + GRPC channel statistics added + 2019-09-25 + Added minimum-cadence and cadence-factor options for target defined mode"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-27 { + description + "Summary container added"; + } + revision 2017-05-05 { + description + "Modified the type for the state variables"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-02-09 { + description + "Added DSCP"; + } + revision 2017-01-30 { + description + "Initial 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Mdt-source-qos-marking { + type enumeration { + enum "dscp-default" { + value 0; + description + "0"; + } + enum "dscp-cs1" { + value 8; + description + "8"; + } + enum "dscp-af11" { + value 10; + description + "10"; + } + enum "dscp-af12" { + value 12; + description + "12"; + } + enum "dscp-af13" { + value 14; + description + "14"; + } + enum "dscp-cs2" { + value 16; + description + "16"; + } + enum "dscp-af21" { + value 18; + description + "18"; + } + enum "dscp-af22" { + value 20; + description + "20"; + } + enum "dscp-af23" { + value 22; + description + "22"; + } + enum "dscp-cs3" { + value 24; + description + "24"; + } + enum "dscp-af31" { + value 26; + description + "26"; + } + enum "dscp-af32" { + value 28; + description + "28"; + } + enum "dscp-af33" { + value 30; + description + "30"; + } + enum "dscp-cs4" { + value 32; + description + "32"; + } + enum "dscp-af41" { + value 34; + description + "34"; + } + enum "dscp-af42" { + value 36; + description + "36"; + } + enum "dscp-af43" { + value 38; + description + "38"; + } + enum "dscp-cs5" { + value 40; + description + "40"; + } + enum "dscp-ef" { + value 46; + description + "46"; + } + enum "dscp-cs6" { + value 48; + description + "48"; + } + enum "dscp-cs7" { + value 56; + description + "56"; + } + } + description + "DSCP source qos value for subscription"; + } + + typedef Mdt-subs-state-enum { + type enumeration { + enum "not-active" { + value 0; + description + "NA"; + } + enum "active" { + value 1; + description + "Active"; + } + enum "paused" { + value 2; + description + "Paused"; + } + } + description + "Subscription State"; + } + + typedef Mdt-internal-path-status { + type enumeration { + enum "active" { + value 0; + description + "Active"; + } + enum "internal-err" { + value 1; + description + "Internal Error"; + } + enum "plugin-active" { + value 2; + description + "Plugin Active"; + } + enum "plugin-not-initialized" { + value 3; + description + "Plugin Not Initialized"; + } + enum "plugin-invalid-cadence" { + value 4; + description + "Plugin Unsupported Cadence"; + } + enum "plugin-err" { + value 5; + description + "Plugin Subscription Error"; + } + enum "filter-err" { + value 6; + description + "Filter Error"; + } + enum "paused" { + value 7; + description + "Paused"; + } + enum "event-ing-active" { + value 8; + description + "Eventing Active"; + } + enum "event-ing-not-active" { + value 9; + description + "Eventing Not Active"; + } + enum "event-ing-err" { + value 10; + description + "Eventing Error"; + } + enum "filter-invalid-key" { + value 11; + description + "Filter Key Invalid"; + } + enum "filter-unsupported" { + value 12; + description + "Filter Unsupported"; + } + } + description + "Internal Subscription Path Status"; + } + + typedef Mdt-compression { + type enumeration { + enum "gzip" { + value 1; + description + "gzip"; + } + } + description + "MDT grpc compression type"; + } + + typedef Mdt-dest-state-enum { + type enumeration { + enum "dest-not-active" { + value 0; + description + "NA"; + } + enum "dest-active" { + value 1; + description + "Active"; + } + enum "dest-asking-pause" { + value 2; + description + "AskingPause"; + } + enum "dest-paused" { + value 3; + description + "Paused"; + } + enum "dest-resuming" { + value 4; + description + "Resuming"; + } + enum "dest-channel-not-found" { + value 5; + description + "ChannelNotFound"; + } + } + description + "Destination state"; + } + + typedef Mdt-transport-enum { + type enumeration { + enum "not-set" { + value 0; + description + "PROTOCOL NOT SET"; + } + enum "grpc" { + value 1; + description + "GRPC"; + } + enum "tcp" { + value 2; + description + "TCP"; + } + enum "udp" { + value 3; + description + "UDP"; + } + enum "dialin" { + value 6; + description + "DIALIN"; + } + } + description + "MDT Transport"; + } + + typedef Mdt-encoding-enum { + type enumeration { + enum "not-set" { + value 0; + description + "ENCODING NOT SET"; + } + enum "gpb" { + value 2; + description + "GPB"; + } + enum "self-describing-gpb" { + value 3; + description + "SELF DESCRIBING GPB"; + } + enum "json" { + value 4; + description + "JSON"; + } + enum "gnmi-proto" { + value 7; + description + "GNMI PROTO"; + } + enum "gnmi-json" { + value 8; + description + "GNMI JSON"; + } + } + description + "MDT Encoding"; + } + + typedef Mdt-in6-addr { + type inet:ipv6-address; + description + "Mdt in6 addr"; + } + + typedef Mdt-ip { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4"; + } + enum "ipv6" { + value 2; + description + "IPv6"; + } + } + description + "IP Type"; + } + + grouping MDT-DESTINATION-CHAN-STATS { + description + "Per destination channel information"; + leaf encoding { + type Mdt-encoding-enum; + description + "Destination group encoding"; + } + leaf transport { + type Mdt-transport-enum; + description + "Destination group transport"; + } + leaf state { + type Mdt-dest-state-enum; + description + "State of streaming on this destination"; + } + leaf channel-id { + type uint64; + description + "GRPC channel ID of this subscription and + destination"; + } + leaf in-use-buffers { + type uint32; + description + "Number of buffers used by the channel"; + } + leaf dropped-messages { + type uint32; + description + "Number of messages dropped when channel becomes + full"; + } + } + + grouping MDT-DESTINATION-GROUP { + description + "Per Destination Group information"; + leaf id { + type string; + description + "Destination Group name"; + } + leaf configured { + type uint32; + description + "Set if this is configured destination group"; + } + list destination { + description + "list of destinations defined in this group"; + uses MDT-DESTINATION; + } + } + + grouping MDT-SENSOR-GROUP { + description + "Per sensor group information"; + leaf id { + type string; + description + "Sensor Group name"; + } + leaf configured { + type uint32; + description + "Set if this is configured sensor group"; + } + list sensor-path { + description + "Array of information for sensor paths within + sensor group"; + uses MDT-SENSOR-PATHS; + } + } + + grouping MDT-SENSOR-PROFILE { + description + "Per sensor profile information"; + container sensor-group { + description + "sensor group"; + uses MDT-SENSOR-GROUP; + } + leaf sample-interval { + type uint32; + description + "Sample interval for the sensor group (ms)"; + } + leaf heartbeat-interval { + type uint32; + description + "Heartbeat interval for the sensor group (s)"; + } + leaf suppress-redundant { + type boolean; + description + "Suppress Redundant"; + } + leaf incremental-updates { + type boolean; + description + "True if path supports incremental push updates"; + } + } + + grouping MDT-SOURCE-INTERFACE { + description + "source interface information"; + leaf interface-name { + type string; + description + "Source Interface Name"; + } + leaf state { + type boolean; + description + "interface state"; + } + leaf ipv4-address { + type inet:ipv4-address; + description + "IPV4 Address"; + } + leaf ipv6-address { + type Mdt-in6-addr; + description + "IPV6 Address"; + } + leaf vrf-id { + type uint32; + description + "Src Vrf Id"; + } + } + + grouping MDT-SUBSCRIPTION { + description + "Per subscription group information"; + container source-interface { + description + "configured source interface"; + uses MDT-SOURCE-INTERFACE; + } + leaf id { + type string; + description + "Collection Subscription name"; + } + leaf state { + type Mdt-subs-state-enum; + description + "Subscription state"; + } + leaf source-qos-marking { + type Mdt-source-qos-marking; + description + "DSCP"; + } + list sensor-profile { + description + "List of sensor groups within a subscription"; + uses MDT-SENSOR-PROFILE; + } + list destination-grp { + description + "Array of destinations within a subscription"; + uses MDT-DESTINATION-GROUP; + } + } + + grouping MDT-SUBSCRIPTION-DETAILS { + description + "Per subscription group detailed information"; + container subscription { + description + "Subscription"; + uses MDT-SUBSCRIPTION; + } + list collection-group { + description + "List of collection groups active for this + subscription"; + uses MDT-COLLECTION-GROUP; + } + } + + grouping MDT-COLLECTION-SYSDB-GROUP { + description + "Per collection group sysdb information"; + leaf path { + type string; + description + "Sysdb Path"; + } + leaf cadence { + type uint64; + description + "Period of the collections (ms)"; + } + leaf total-get-count { + type uint64; + description + "Total number of gets"; + } + leaf total-list-count { + type uint64; + description + "Total number of lists"; + } + leaf total-datalist-count { + type uint64; + description + "Total number of datalists"; + } + leaf total-finddata-count { + type uint64; + description + "Total number of finddata"; + } + leaf total-get-bulk-count { + type uint64; + description + "Total number of get bulk"; + } + leaf total-item-count { + type uint64; + description + "Total number of items retrived from sysdb"; + } + leaf total-get-errors { + type uint64; + description + "Total number of get errors"; + } + leaf total-list-errors { + type uint64; + description + "Total number of list errors"; + } + leaf total-datalist-errors { + type uint64; + description + "Total number of datalist errors"; + } + leaf total-finddata-errors { + type uint64; + description + "Total number of finddata errors"; + } + leaf total-get-bulk-errors { + type uint64; + description + "Total number of get bulk errors"; + } + leaf total-encode-errors { + type uint64; + description + "Total number of encode errors"; + } + leaf total-encode-notready { + type uint64; + description + "Total number of encode deferred"; + } + leaf total-send-errors { + type uint64; + description + "Total number of send errors"; + } + leaf total-send-drops { + type uint64; + description + "Total number of send channel full"; + } + leaf total-sent-bytes { + type uint64; + units "byte"; + description + "Total number of bytes sent"; + } + leaf total-send-packets { + type uint64; + description + "Total number of packets sent"; + } + leaf total-send-bytes-dropped { + type uint64; + units "byte"; + description + "Total number of send bytes dropped"; + } + leaf total-collections { + type uint64; + description + "Completed collections count"; + } + leaf total-collections-missed { + type uint64; + description + "Total number of collections missed"; + } + leaf max-collection-time { + type uint64; + description + "Maximum time for a collection (ms)"; + } + leaf min-collection-time { + type uint64; + description + "Minimum time for a collection (ms)"; + } + leaf avg-collection-time { + type uint64; + description + "Average time for a collection (ms)"; + } + leaf collection-method { + type uint64; + description + "Collection method in use"; + } + leaf status { + type Mdt-internal-path-status; + description + "Status of collection path"; + } + leaf total-heartbeats-missed { + type uint64; + description + "Total number of heartbeats missed"; + } + leaf internal-keys { + type string; + description + "Keys for the sensor path, if configured"; + } + leaf filtered-item-count { + type uint64; + description + "Count of number of items that got filtered"; + } + } + + grouping MDT-SENSOR-PATHS { + description + "Sensor Path information"; + leaf path { + type string; + description + "Sensor Path"; + } + leaf state { + type boolean; + description + "State, if sensor path is resolved or not"; + } + leaf status-str { + type string; + description + "Error str, if there are any errors resolving the + sensor path"; + } + leaf configured-keys { + type string; + description + "Keys for the sensor path, if configured"; + } + } + + grouping MDT-COLLECTION-GROUP { + description + "Per collection group information"; + leaf id { + type uint64; + description + "Collection Group id"; + } + leaf cadence { + type uint32; + description + "Period of the collections (ms)"; + } + leaf total-collections { + type uint32; + description + "Completed collections count"; + } + leaf encoding { + type Mdt-encoding-enum; + description + "Destination group encoding"; + } + leaf last-collection-start-time { + type uint64; + description + "Timestamp of the start of last collection"; + } + leaf last-collection-end-time { + type uint64; + description + "Timestamp of the end of last collection"; + } + leaf max-collection-time { + type uint32; + description + "Maximum time for a collection (ms)"; + } + leaf min-collection-time { + type uint32; + description + "Minimum time for a collection (ms)"; + } + leaf min-total-time { + type uint32; + description + "Minimum time for all processing (ms)"; + } + leaf max-total-time { + type uint32; + description + "Maximum time for all processing (ms)"; + } + leaf avg-total-time { + type uint32; + description + "Average time for all processing (ms)"; + } + leaf total-other-errors { + type uint32; + description + "Total number of errors"; + } + leaf total-on-data-instances { + type uint32; + description + "Total number of no data instances"; + } + leaf total-not-ready { + type uint32; + description + "Total number skipped (not ready)"; + } + leaf total-send-errors { + type uint32; + description + "Total number of send errors"; + } + leaf total-send-drops { + type uint32; + description + "Total number of send drops"; + } + leaf strict-timer { + type boolean; + description + "Set if strict timer is ON"; + } + leaf heartbeat-interval { + type uint32; + description + "Heartbeat interval (ms)"; + } + leaf heartbeat-always { + type boolean; + description + "Send heartbeat even if events have occurred + within interval"; + } + leaf incremental-updates { + type boolean; + description + "True if path supports incremental push updates"; + } + leaf total-incremental-updates { + type uint64; + description + "Count of incremental updates"; + } + list collection-path { + description + "Array of information for sensor paths within + collection group"; + uses MDT-SENSOR-PATHS; + } + list internal-collection-group { + description + "Array of information for sysdb paths within + collection group"; + uses MDT-COLLECTION-SYSDB-GROUP; + } + } + + grouping MDT-COLLECTION-DETAIL { + description + "Per Destination jobs information"; + leaf subscription-id { + type uint64; + description + "Subscription ID"; + } + leaf sysdb-path { + type string; + description + "SysDB path of the sensor path"; + } + leaf in-progress { + type boolean; + description + "True if collection is in progress"; + } + leaf create-time { + type string; + description + "Collection request time, format 1985-04-12 23:20 + :50.254143 -0700"; + } + leaf start-time { + type string; + description + "Collection start time, format 1985-04-12 23:20 + :50.254143 -0700"; + } + leaf completion-time { + type string; + description + "Collection finish time, format 1985-04-12 23:20 + :50.254143 -0700"; + } + leaf token-receive-time { + type string; + description + "Last time when tokens were received, format + 1985-04-12 23:20:50.254143 -0700"; + } + leaf last-packet-send-time { + type string; + description + "Last time a packet was sent, format + 1985-04-12 23:20:50.254143 -0700"; + } + } + + grouping MDT-DESTINATION-IP-ADDRESS { + description + "MDT DESTINATION IP ADDRESS"; + leaf ip-type { + type Mdt-ip; + description + "IPType"; + } + leaf ipv4-address { + when "../ip-type = 'ipv4'" { + description + "../IPType = 'IPV4'"; + } + type inet:ipv4-address; + description + "IPV4 Address"; + } + leaf ipv6-address { + when "../ip-type = 'ipv6'" { + description + "../IPType = 'IPV6'"; + } + type Mdt-in6-addr; + description + "IPV6 Address"; + } + } + + grouping MDT-DESTINATION { + description + "Per Destination information"; + container dest-ip-address { + description + "Destination IP Address"; + uses MDT-DESTINATION-IP-ADDRESS; + } + leaf id { + type string; + description + "Destination Id"; + } + leaf sub-id-str { + type string; + description + "Sub Idstr"; + } + leaf dest-port { + type uint16; + description + "Destination Port number"; + } + leaf encoding { + type Mdt-encoding-enum; + description + "Destination group encoding"; + } + leaf transport { + type Mdt-transport-enum; + description + "Destination group transport"; + } + leaf vrf { + type string; + description + "Destination group vrf"; + } + leaf vrf-id { + type uint32; + description + "Destination group vrf id"; + } + leaf state { + type Mdt-dest-state-enum; + description + "State of streaming on this destination"; + } + leaf udp-mtu { + type uint32; + description + "UDP MTU if this destination is UDP"; + } + leaf tls { + type uint32; + description + "TLS connection to this destination"; + } + leaf tls-host { + type string; + description + "TLS Hostname of this destination"; + } + leaf total-num-of-packets-sent { + type uint64; + description + "Total number of packets sent for this + destination"; + } + leaf total-num-of-bytes-sent { + type uint64; + units "byte"; + description + "Total number of bytes sent for this destination"; + } + leaf last-collection-time { + type uint64; + description + "Timestamp of the last collection"; + } + leaf dscp { + type uint32; + description + "DSCP setting for this destination"; + } + leaf maximum-tokens { + type uint32; + description + "Maximum number of tokens"; + } + leaf token-processed-time { + type string; + description + "Last token processed time, format 1985-04-12 23 + :20:50.521256 -0700"; + } + leaf cadence-tokens { + type uint32; + description + "Number of available cadence tokens"; + } + leaf cadence-token-advertised-time { + type string; + description + "Last cadence token advertisement time, format + 1985-04-12 23:20:50.254143 -0700"; + } + leaf event-tokens { + type uint32; + description + "Number of available event tokens"; + } + leaf event-token-advertised-time { + type string; + description + "Last event token advertisement time, format + 1985-04-12 23:20:50.254143 -0700"; + } + leaf pending-queue-size { + type uint32; + description + "Number of messages in pending queue"; + } + leaf gnmi-sync-response-time { + type string; + description + "GNMI initial synchronization message time, + format 1985-04-12 23:20:50.254143 + -0700"; + } + leaf pending-events { + type uint32; + description + "Number of events pending to be processed"; + } + leaf processed-events { + type uint64; + description + "Number of events processed"; + } + leaf collection-tokens { + type uint32; + description + "Number of collection tokens"; + } + leaf compression { + type Mdt-compression; + description + "Compression algorithm in use"; + } + leaf pending-queue-memory-size { + type uint32; + units "byte"; + description + "Total memory size in bytes of all messages in + pending queue"; + } + list collection-detail { + description + "Collection details for this destination"; + uses MDT-COLLECTION-DETAIL; + } + } + + grouping MDT-DESTINATION-DETAIL { + description + "Per Destination detail information"; + container destination { + description + "Destination"; + uses MDT-DESTINATION; + } + list collection-group { + description + "List of collection groups for this destination + group"; + uses MDT-COLLECTION-GROUP; + } + } + + grouping MDT-DESTINATION-GROUP-DETAIL { + description + "Per Destination Group detail information"; + leaf id { + type string; + description + "Destination Group name"; + } + leaf configured { + type uint32; + description + "Set if this is configured destination group"; + } + list destination { + description + "list of destinations defined in this group"; + uses MDT-DESTINATION-DETAIL; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper.yang new file mode 100644 index 000000000..ac5429273 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-telemetry-model-driven-oper.yang @@ -0,0 +1,174 @@ +module Cisco-IOS-XR-telemetry-model-driven-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-telemetry-model-driven-oper"; + prefix telemetry-model-driven-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-telemetry-model-driven-oper-sub2 { + revision-date 2021-09-13; + } + include Cisco-IOS-XR-telemetry-model-driven-oper-sub1 { + revision-date 2021-09-13; + } + + 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 telemetry-model-driven package operational data. + + This module contains definitions + for the following management objects: + telemetry-model-driven: Telemetry operational data + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-09-13 { + description + "Added pending message memory size to destination endpoint"; + semver:module-version "1.3.0"; + } + revision 2020-10-30 { + description + "Keys for sensor-paths IosSetYangSchemaRev Cisco-IOS-XR-telemetry-model-driven-oper"; + semver:module-version "1.2.0"; + } + revision 2020-03-11 { + description + "Updated the encodings supported + 2020-01-30 + Added compression leaf to destination container + 2020-01-10 + GRPC channel statistics added + 2019-09-25 + Added minimum-cadence and cadence-factor options for target defined mode"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-27 { + description + "Summary container added"; + } + revision 2017-05-05 { + description + "Modified the type for the state variables"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2017-02-09 { + description + "Added DSCP"; + } + revision 2017-01-30 { + description + "Initial 6.2.1 revision"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container telemetry-model-driven { + config false; + description + "Telemetry operational data"; + container destinations { + description + "Telemetry Destinations"; + list destination { + key "destination-id"; + description + "Telemetry Destination"; + leaf destination-id { + type xr:Cisco-ios-xr-string; + description + "Id of the destination"; + } + uses MDT-DESTINATION-GROUP-DETAIL; + } + } + container subscriptions { + description + "Telemetry Subscriptions"; + list subscription { + key "subscription-id"; + description + "Telemetry Subscription"; + leaf subscription-id { + type xr:Cisco-ios-xr-string; + description + "Id of the subscription"; + } + uses MDT-SUBSCRIPTION-DETAILS; + } + } + container channel-statistics { + description + "GRPC channel statistics"; + list channel-statistic { + description + "GRPC channel details"; + leaf subscription-id { + type xr:Cisco-ios-xr-string; + description + "Id of the subscription"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination IP address"; + } + leaf destination-port { + type xr:Cisco-ios-xr-port-number; + description + "Destination port number"; + } + uses MDT-DESTINATION-CHAN-STATS; + } + } + container sensor-groups { + description + "Telemetry Sensor Groups"; + list sensor-group { + key "sensor-group-id"; + description + "Telemetry Sensor Groups"; + leaf sensor-group-id { + type xr:Cisco-ios-xr-string; + description + "Id of the sensor group"; + } + uses MDT-SENSOR-GROUP; + } + } + container summary { + description + "Telemetry Summary info"; + uses TELEMETRY-SHOW-SUMMARY; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-cfg.yang new file mode 100644 index 000000000..3238ba9f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-cfg.yang @@ -0,0 +1,761 @@ +module Cisco-IOS-XR-terminal-device-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-terminal-device-cfg"; + prefix terminal-device-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 terminal-device package configuration. + + This module contains definitions + for the following management objects: + transceivers: Transceivers in mxp + logical-channels: Logical channel in mxp + optical-channels: Optical Channel + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-06 { + description + "Interface name support removed, not required. + 2021-10-22 + Interface name support added"; + semver:module-version "2.1.0"; + } + revision 2021-05-20 { + description + "Oduflex support for CBR and GFP added"; + semver:module-version "2.0.0"; + } + revision 2020-05-20 { + description + "Logical channel index changed from 65536 to 100000 + 2020-03-05 + Ethernet client-als,als-delay and fec-mode support added"; + semver:module-version "1.2.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Logical-channel-otn-tti-auto { + type enumeration { + enum "false" { + value 0; + description + "Otn tti auto mode false"; + } + enum "true" { + value 1; + description + "Otn tti auto mode true"; + } + } + description + "Logical channel otn tti auto"; + } + + typedef Logical-admin-state { + type enumeration { + enum "enable" { + value 1; + description + "Enable"; + } + enum "disable" { + value 2; + description + "Disable"; + } + enum "maintenance" { + value 3; + description + "Maintenance"; + } + } + description + "Logical admin state"; + } + + typedef Logical-loopback-mode { + type enumeration { + enum "none" { + value 0; + description + "None"; + } + enum "facility" { + value 1; + description + "Facility"; + } + enum "terminal" { + value 2; + description + "Terminal"; + } + } + description + "Logical loopback mode"; + } + + typedef Logical-trib-rate { + type enumeration { + enum "trib-rate1g" { + value 1; + description + "TribRate1G"; + } + enum "trib-rate2-5g" { + value 2; + description + "TribRate25G"; + } + enum "trib-rate10g" { + value 3; + description + "TribRate10G"; + } + enum "trib-rate40g" { + value 4; + description + "TribRate40G"; + } + enum "trib-rate100g" { + value 5; + description + "TribRate100G"; + } + enum "trib-rate150g" { + value 6; + description + "TribRate150G"; + } + enum "trib-rate200g" { + value 7; + description + "TribRate200G"; + } + enum "trib-rate250g" { + value 8; + description + "TribRate250G"; + } + enum "trib-rate300g" { + value 9; + description + "TribRate300G"; + } + enum "trib-rate400g" { + value 10; + description + "TribRate400G"; + } + enum "trib-rate500g" { + value 11; + description + "TribRate500G"; + } + enum "trib-rate600g" { + value 12; + description + "TribRate600G"; + } + enum "trib-rate700g" { + value 13; + description + "TribRate700G"; + } + enum "trib-rate800g" { + value 14; + description + "TribRate800G"; + } + enum "trib-rate900g" { + value 15; + description + "TribRate900G"; + } + enum "trib-rate1000g" { + value 16; + description + "TribRate1000G"; + } + enum "trib-rate1100g" { + value 17; + description + "TribRate1100G"; + } + } + description + "Logical trib rate"; + } + + typedef Logical-trib-protocol { + type enumeration { + enum "trib-proto-type1ge" { + value 1; + description + "1G Ethernet protocol"; + } + enum "trib-proto-type-oc48" { + value 2; + description + "OC48 protocol"; + } + enum "trib-proto-type-stm16" { + value 3; + description + "STM 16 protocol"; + } + enum "trib-proto-type10gelan" { + value 4; + description + "10G Ethernet LAN protocol"; + } + enum "trib-proto-type10gewan" { + value 5; + description + "10G Ethernet WAN protocol"; + } + enum "trib-proto-type-oc192" { + value 6; + description + "OC 192 (9.6GB) port protocol"; + } + enum "trib-proto-type-stm64" { + value 7; + description + "STM 64 protocol"; + } + enum "trib-proto-type-otu2" { + value 8; + description + "OTU 2 protocol"; + } + enum "trib-proto-type-otu2e" { + value 9; + description + "OTU 2e protocol"; + } + enum "trib-proto-type-otu1e" { + value 10; + description + "OTU 1e protocol"; + } + enum "trib-proto-type-odu2" { + value 11; + description + "ODU 2 protocol"; + } + enum "trib-proto-type-odu2e" { + value 12; + description + "ODU 2e protocol"; + } + enum "trib-proto-type40ge" { + value 13; + description + "40G Ethernet port protocol"; + } + enum "trib-proto-type-oc768" { + value 14; + description + "OC 768 protocol"; + } + enum "trib-proto-type-stm256" { + value 15; + description + "STM 256 protocol"; + } + enum "trib-proto-type-otu3" { + value 16; + description + "OTU 3 protocol"; + } + enum "trib-proto-type-odu3" { + value 17; + description + "ODU 3 protocol"; + } + enum "trib-proto-type100ge" { + value 18; + description + "100G Ethernet protocol"; + } + enum "trib-proto-type100g-mlg" { + value 19; + description + "100G MLG protocol"; + } + enum "trib-proto-type-otu4" { + value 20; + description + "OTU4 signal protocol (112G) for transporting + 100GE signal"; + } + enum "trib-proto-type-otu-cn" { + value 21; + description + "OTU Cn protocol"; + } + enum "trib-proto-type-odu4" { + value 22; + description + "ODU 4 protocol"; + } + enum "trib-proto-type-odu-cn" { + value 23; + description + "ODU Cn protocol"; + } + enum "trib-proto-type-oduflex-cbr" { + value 24; + description + "ODU FLEX CBR protocol"; + } + enum "trib-proto-type-oduflex-gfp" { + value 25; + description + "ODU FLEX GFP protocol"; + } + enum "trib-proto-type400ge" { + value 26; + description + "400G Ethernet protocol"; + } + } + description + "Logical trib protocol"; + } + + typedef Logical-channel-assignment { + type enumeration { + enum "type-logical-channel" { + value 1; + description + "Type Logical channel"; + } + enum "type-optical-channel" { + value 2; + description + "Type Optical channel"; + } + } + description + "Logical channel assignment"; + } + + typedef Logical-client-als { + type enumeration { + enum "none" { + value 0; + description + "NONE"; + } + enum "ethernet" { + value 1; + description + "ETHERNET"; + } + enum "laser-shutdown" { + value 2; + description + "LASER SHUTDOWN"; + } + } + description + "Logical client als"; + } + + typedef Logical-fec-mode { + type enumeration { + enum "fec-disabled" { + value 0; + description + "FEC DISABLED"; + } + enum "fec-enabled" { + value 1; + description + "FEC ENABLED"; + } + enum "fec-auto" { + value 2; + description + "FEC AUTO"; + } + } + description + "Logical fec mode"; + } + + typedef Logical-protocol { + type enumeration { + enum "type-ethernet" { + value 1; + description + "Type Ethernet"; + } + enum "type-otn" { + value 2; + description + "Type OTN"; + } + } + description + "Logical protocol"; + } + + container transceivers { + description + "Transceivers in mxp"; + list transceiver { + key "ifname"; + description + "Transceiver name"; + leaf fec-mode { + type Logical-fec-mode; + description + "Configure the fec-mode "; + } + leaf ifname { + type xr:Cisco-ios-xr-string; + description + "Transceiver Name"; + } + } + } + container logical-channels { + description + "Logical channel in mxp"; + list channel { + key "channel-index"; + description + "Logical channel index"; + container ethernet { + description + "Ethernet Related configs for Logical channel"; + leaf client-als { + type Logical-client-als; + description + "Configure the client-als"; + } + leaf als-delay { + type uint32; + description + "Configure the als-delay "; + } + } + container logical-channel-assignments { + description + "Logical channel assignment for logical channel"; + list logical-channel-assignment { + key "assignment-index"; + description + "Logical Channel Assignment id"; + leaf logical-channel-id { + type uint32 { + range "1..100000"; + } + description + "Configure logical channel for this assignment"; + } + leaf allocation { + type uint32; + description + "Configure Allocation for this assignment(10, + 40 or 100G)"; + } + leaf description { + type string { + length "1..255"; + } + description + "Configure description for this assignment"; + } + leaf optical-channel-id { + type string; + description + "Configure optical channel for this assignment"; + } + leaf assignment-type { + type Logical-channel-assignment; + description + "Type of assignment for logical channel"; + } + leaf assignment-index { + type uint32 { + range "1..100000"; + } + description + "Logical channel assignment index"; + } + } + } + container otn { + description + "Otn Related configs for Logical channel"; + leaf tti-msg-expected { + type string { + length "1..255"; + } + description + "Trail trace identifier (TTI) message + expectedTrail trace identifier (TTI) message + expected"; + } + leaf tti-msg-auto { + type Logical-channel-otn-tti-auto; + description + "Trail trace identifier (TTI) transmit message + automatically created. If True, then setting a + custom transmit message would be invalid. + Trail trace identifier (TTI) transmit message + automatically created."; + } + leaf tti-msg-transmit { + type string { + length "1..255"; + } + description + "Trail trace identifier (TTI) message + transmittedTrail trace identifier (TTI) + message transmitted"; + } + } + leaf trib-protocol { + type Logical-trib-protocol; + description + "Protocol framing of the tributary signal"; + } + leaf if-name { + type xr:Cisco-ios-xr-string { + length "1..255"; + } + description + "Description (Max 255 characters)"; + } + leaf ingress-client-port { + type xr:Interface-name; + description + "Configure ingress client port for this logical + channel"; + } + leaf loopback-mode { + type Logical-loopback-mode; + description + "Configure the loopback mode "; + } + leaf description { + type string { + length "1..255"; + } + description + "Description (Max 255 characters)"; + } + leaf ingress-physical-channel { + type uint32 { + range "1..4"; + } + description + "Configure ingress physical channel for this + logical channel"; + } + leaf rate-class { + type Logical-trib-rate; + description + "Rounded bit rate of the tributary signal"; + } + leaf admin-state { + type Logical-admin-state; + description + "Configure the admin-state "; + } + leaf logical-channel-type { + type Logical-protocol; + description + "Configure the logical-channel-type "; + } + leaf channel-index { + type uint32 { + range "1..100000"; + } + description + "Logical Channel Index"; + } + } + } + container optical-channels { + description + "Optical Channel"; + list optical-channel { + key "ifname"; + description + "Optical Channel index"; + leaf enh-colorless-mode { + type uint32 { + range "1..3"; + } + description + "Select enhanced colorless mode"; + } + leaf cd-min { + type int32 { + range "-350000..350000"; + } + description + "Select min chromatic dispersion (in units of + ps/nm)"; + } + leaf power { + type int32 { + range "-1900..500"; + } + description + "Select power level (in units of 0.01dBm)"; + } + leaf cross-pol-gain-mode { + type uint32 { + range "1..15"; + } + description + "Select carrier phase recovery cross + polarization gain mode"; + } + leaf operational-mode { + type uint32 { + range "1..65536"; + } + description + "Configure operational mode"; + } + leaf cpr-ext-win-mode { + type uint32 { + range "1..9"; + } + description + "Select carrier phase recovery extended window + mode"; + } + leaf enh-sop-tol-mode { + type uint32 { + range "1..3"; + } + description + "Select enhanced SOP tolerance mode"; + } + leaf line-port { + type xr:Interface-name; + description + "Specify R/S/I/P"; + } + leaf rx-voa-fixed-ratio { + type int32 { + range "-100..1700"; + } + description + "Receive Ratio of Optical Attenuation in 0.01 + db"; + } + leaf frequency { + type uint32 { + range "186100000..196137500"; + } + description + "Configure optical channel frequency in Mhz"; + } + leaf cd-low-threshold { + type int32 { + range "-350000..350000"; + } + description + "Select chromatic dispersion low threshold(in + units of ps/nm)"; + } + leaf filter-roll-off-factor { + type string { + length "5"; + } + description + "RRC Filter Roll-Off factor in increments of 0. + 001"; + } + leaf cpr-win-mode { + type uint32 { + range "1..4"; + } + description + "Select carrier phase recovery window mode"; + } + leaf rx-voa-target-power { + type int32 { + range "-190..30"; + } + description + "Rx-voa Target Power configuration"; + } + leaf nleq-comp-mode { + type uint32 { + range "1..5"; + } + description + "Select non linear effect compenstation mode"; + } + leaf cross-pol-weight-mode { + type uint32 { + range "1..7"; + } + description + "Select carrier phase recovery cross + polarization weight mode"; + } + leaf cd-high-threshold { + type int32 { + range "-350000..350000"; + } + description + "Select chromatic dispersion high threshold(in + units of ps/nm)"; + } + leaf cd-max { + type int32 { + range "-350000..350000"; + } + description + "Select max chromatic dispersion (in units of + ps/nm)"; + } + leaf ifname { + type xr:Cisco-ios-xr-string; + description + "Optical Channel Name"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper-sub1.yang new file mode 100644 index 000000000..9ca98384c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper-sub1.yang @@ -0,0 +1,820 @@ +submodule Cisco-IOS-XR-terminal-device-oper-sub1 { + belongs-to Cisco-IOS-XR-terminal-device-oper { + prefix Cisco-IOS-XR-terminal-device-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR terminal-device package operational data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-20 { + description + "leaf fec, baut rate and oper-mode has been updated"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Oc-mod-type-et { + type enumeration { + enum "mod-none" { + value 0; + description + "Unknown Modulation"; + } + enum "mod-bpsk" { + value 1; + description + "BPSK Modulation"; + } + enum "mod-qpsk" { + value 2; + description + "QPSK Modulation"; + } + enum "mod8qam" { + value 3; + description + "8QAM Modulation"; + } + enum "mod16qam" { + value 4; + description + "16QAM Modulation"; + } + enum "mod32qam" { + value 5; + description + "32QAM Modulation"; + } + enum "mod64qam" { + value 6; + description + "64QAM Modulation"; + } + enum "mod-eqpsk" { + value 7; + description + "EQPSK Modulation"; + } + } + description + "Oc mod type et"; + } + + typedef Fec { + type enumeration { + enum "fec-none" { + value 0; + description + "Unknown FEC"; + } + enum "fec-statndard" { + value 1; + description + "Standard FEC"; + } + enum "fec-otu1-i-7" { + value 2; + description + "OTU 1 I 7"; + } + enum "fec-otu1-i-4" { + value 3; + description + "OTU 1 I 4"; + } + enum "fec-swizzle" { + value 4; + description + "FEC SWIZZLE"; + } + enum "fec-hg20" { + value 5; + description + "FEC HG20"; + } + enum "fec-enhanced-hg7" { + value 6; + description + "FEC ENHANCED HG7"; + } + enum "fec-sd20" { + value 7; + description + "FEC SD20"; + } + enum "fec-sd7" { + value 8; + description + "FEC SD7"; + } + enum "fec-sd15" { + value 9; + description + "FEC SD15"; + } + enum "fec-sd27" { + value 10; + description + "FEC SD27"; + } + enum "fec-cfec" { + value 11; + description + "FEC CFEC"; + } + enum "fec-ofec" { + value 12; + description + "FEC OFEC"; + } + } + description + "Fec"; + } + + typedef Client-als { + type enumeration { + enum "none" { + value 0; + description + "none"; + } + enum "ethernet" { + value 1; + description + "ethernet"; + } + enum "laser-shutdown" { + value 2; + description + "laser shutdown"; + } + } + description + "Client als"; + } + + typedef Logical-protocol { + type enumeration { + enum "proto-type-unknown" { + value 0; + description + "Unknown protocol framing"; + } + enum "proto-type-ethernet" { + value 1; + description + "Ethernet protocol framing"; + } + enum "proto-type-otn" { + value 2; + description + "OTN protocol framing"; + } + } + description + "Logical protocol"; + } + + typedef Trib-protocol { + type enumeration { + enum "trib-proto-type-unknown" { + value 0; + description + "Unknown protocol"; + } + enum "trib-proto-type1ge" { + value 1; + description + "1G Ethernet protocol"; + } + enum "trib-proto-type-oc48" { + value 2; + description + "OC48 protocol"; + } + enum "trib-proto-type-stm16" { + value 3; + description + "STM 16 protocol"; + } + enum "trib-proto-type10gelan" { + value 4; + description + "10G Ethernet LAN protocol"; + } + enum "trib-proto-type10gewan" { + value 5; + description + "10G Ethernet WAN protocol"; + } + enum "trib-proto-type-oc192" { + value 6; + description + "OC 192 (9.6GB) port protocol"; + } + enum "trib-proto-type-stm64" { + value 7; + description + "STM 64 protocol"; + } + enum "trib-proto-type-otu2" { + value 8; + description + "OTU 2 protocol"; + } + enum "trib-proto-type-otu2e" { + value 9; + description + "OTU 2e protocol"; + } + enum "trib-proto-type-otu1e" { + value 10; + description + "OTU 1e protocol"; + } + enum "trib-proto-type-odu2" { + value 11; + description + "ODU 2 protocol"; + } + enum "trib-proto-type-odu2e" { + value 12; + description + "ODU 2e protocol"; + } + enum "trib-proto-type40ge" { + value 13; + description + "40G Ethernet port protocol"; + } + enum "trib-proto-type-oc768" { + value 14; + description + "OC 768 protocol"; + } + enum "trib-proto-type-stm256" { + value 15; + description + "STM 256 protocol"; + } + enum "trib-proto-type-otu3" { + value 16; + description + "OTU 3 protocol"; + } + enum "trib-proto-type-odu3" { + value 17; + description + "ODU 3 protocol"; + } + enum "trib-proto-type100ge" { + value 18; + description + "100G Ethernet protocol"; + } + enum "trib-proto-type100g-mlg" { + value 19; + description + "100G MLG protocol"; + } + enum "trib-proto-type-otu4" { + value 20; + description + "OTU4 signal protocol (112G) for transporting + 100GE signal"; + } + enum "trib-proto-type-otu-cn" { + value 21; + description + "OTU Cn protocol"; + } + enum "trib-proto-type-odu4" { + value 22; + description + "ODU 4 protocol"; + } + enum "trib-proto-type-odu-cn" { + value 23; + description + "ODU Cn protocol"; + } + enum "trib-proto-type-oduflexcbr" { + value 24; + description + "ODU Flex CBR protocol"; + } + enum "trib-proto-type-oduflexgfp" { + value 25; + description + "ODU Flex GFP protocol"; + } + enum "trib-proto-type400ge" { + value 26; + description + "400G Ethernet protocol"; + } + } + description + "Trib protocol"; + } + + typedef Trib-rate-class { + type enumeration { + enum "trib-rate-unknown" { + value 0; + description + "Unknown tributary signal rate"; + } + enum "trib-rate1g" { + value 1; + description + "1G tributary signal rate"; + } + enum "trib-rate25g" { + value 2; + description + "2.5G tributary signal rate"; + } + enum "trib-rate10g" { + value 3; + description + "10G tributary signal rate"; + } + enum "trib-rate40g" { + value 4; + description + "40G tributary signal rate"; + } + enum "trib-rate100g" { + value 5; + description + "100G tributary signal rate"; + } + enum "trib-rate150g" { + value 6; + description + "150G tributary signal rate"; + } + enum "trib-rate200g" { + value 7; + description + "200G tributary signal rate"; + } + enum "trib-rate250g" { + value 8; + description + "250G tributary signal rate"; + } + enum "trib-rate300g" { + value 9; + description + "300G tributary signal rate"; + } + enum "trib-rate400g" { + value 10; + description + "400G tributary signal rate"; + } + enum "trib-rate500g" { + value 11; + description + "500G tributary signal rate"; + } + enum "trib-rate600g" { + value 12; + description + "600G tributary signal rate"; + } + enum "trib-rate700g" { + value 13; + description + "700G tributary signal rate"; + } + enum "trib-rate800g" { + value 14; + description + "800G tributary signal rate"; + } + enum "trib-rate900g" { + value 15; + description + "900G tributary signal rate"; + } + enum "trib-rate1000g" { + value 16; + description + "1000G tributary signal rate"; + } + enum "trib-rate1100g" { + value 17; + description + "1100G tributary signal rate"; + } + } + description + "Trib rate class"; + } + + grouping OPERATIONAL-MODE-ATTRIBUTES { + description + "OPERATIONAL MODE ATTRIBUTES"; + leaf fec { + type Fec; + description + "Fec"; + } + leaf description { + type string { + length "0..128"; + } + description + "Description"; + } + leaf vendor-id { + type string { + length "0..64"; + } + description + "VendorId"; + } + leaf baud-rate { + type string { + length "0..128"; + } + description + "BaudRate"; + } + leaf modulation { + type Oc-mod-type-et; + description + "Modulation"; + } + leaf dac-rate { + type string; + description + "DacRate"; + } + } + + grouping OPTICAL-CHANNEL-ATTRIBUTES { + description + "OPTICAL CHANNEL ATTRIBUTES"; + leaf name { + type string { + length "0..128"; + } + description + "Name"; + } + leaf index { + type uint32; + description + "Index"; + } + leaf frequency { + type uint64; + description + "Frequency"; + } + leaf power { + type uint64; + description + "Power"; + } + leaf oper-mode { + type uint16; + description + "OperMode"; + } + leaf filter-roll-off-factor { + type string { + length "0..256"; + } + description + "FilterRollOffFactor"; + } + leaf enh-colorless-mode { + type uint32; + description + "EnhColorlessMode"; + } + leaf enh-sop-tol-mode { + type uint32; + description + "EnhSopTolMode"; + } + leaf nleq-comp-mode { + type uint32; + description + "NleqCompMode"; + } + leaf cross-pol-gain-mode { + type uint32; + description + "CrossPolGainMode"; + } + leaf cross-pol-weight-mode { + type uint32; + description + "CrossPolWeightMode"; + } + leaf cpr-win-mode { + type uint32; + description + "CprWinMode"; + } + leaf cpr-ext-win-mode { + type uint32; + description + "CprExtWinMode"; + } + leaf cd-max { + type int32; + description + "CDMax"; + } + leaf cd-min { + type int32; + description + "CDMin"; + } + leaf cd-high-threshold { + type int32; + description + "CDHighThreshold"; + } + leaf cd-low-threshold { + type int32; + description + "CDLowThreshold"; + } + leaf rx-voa-fixed-ratio { + type int32; + description + "RxVoaFixedRatio"; + } + leaf rx-voa-target-power { + type int32; + description + "RxVoaTargetPower"; + } + leaf line-port { + type string { + length "0..128"; + } + description + "LinePort"; + } + } + + grouping GRAPH-STRUCTURE-PATH { + description + "GRAPH STRUCTURE PATH"; + leaf path { + type string { + length "0..256"; + } + description + "Path"; + } + } + + grouping ADJACENCY-LIST-PATH { + description + "ADJACENCY LIST PATH"; + leaf path { + type string { + length "0..256"; + } + description + "Path"; + } + } + + grouping PARTIAL-CONFIG-STATUS { + description + "PARTIAL CONFIG STATUS"; + leaf partial-config { + type uint8; + description + "PartialConfig"; + } + } + + grouping SLICE-CONFIG-STATUS-ATTRIBUTES { + description + "SLICE CONFIG STATUS ATTRIBUTES"; + leaf slice { + type uint8; + description + "Slice"; + } + leaf prov-status { + type string { + length "0..32"; + } + description + "ProvStatus"; + } + leaf present-config { + type string { + length "0..32"; + } + description + "PresentConfig"; + } + leaf present-timestamp { + type string { + length "0..32"; + } + description + "PresentTimestamp"; + } + leaf past-config { + type string { + length "0..32"; + } + description + "PastConfig"; + } + leaf past-timestamp { + type string { + length "0..32"; + } + description + "PastTimestamp"; + } + leaf err-str { + type string { + length "0..1024"; + } + description + "ErrStr"; + } + leaf err-timestamp { + type string { + length "0..32"; + } + description + "ErrTimestamp"; + } + } + + grouping LOGICAL-CHANNEL-ATTRIBUTES { + description + "LOGICAL CHANNEL ATTRIBUTES"; + leaf logical-channel-index { + type uint32; + description + "LogicalChannelIndex"; + } + leaf logical-channel-ifname { + type string { + length "0..128"; + } + description + "LogicalChannelIfname"; + } + leaf type { + type string { + length "0..32"; + } + description + "Type"; + } + leaf trib-rate-class { + type Trib-rate-class; + description + "TribRateClass"; + } + leaf trib-protocol { + type Trib-protocol; + description + "TribProtocol"; + } + leaf protocol-type { + type Logical-protocol; + description + "ProtocolType"; + } + leaf admin-state { + type uint32; + description + "AdminState"; + } + leaf loopback-mode { + type uint32; + description + "LoopbackMode"; + } + leaf ingress-client-port { + type string { + length "0..128"; + } + description + "IngressClientPort"; + } + leaf ingress-physical-channel { + type uint32; + description + "IngressPhysicalChannel"; + } + leaf tti-transmit { + type string { + length "0..256"; + } + description + "TtiTransmit"; + } + leaf tti-expected { + type string { + length "0..256"; + } + description + "TtiExpected"; + } + leaf client-als { + type Client-als; + description + "ClientAls"; + } + leaf als-delay { + type uint32; + description + "AlsDelay"; + } + } + + grouping LOGICAL-CHANNEL-ASSIGNMENT { + description + "LOGICAL CHANNEL ASSIGNMENT"; + leaf index { + type uint32; + description + "Index"; + } + leaf name { + type string { + length "0..128"; + } + description + "Name"; + } + leaf is-logical-link { + type boolean; + description + "IsLogicalLink"; + } + leaf logical-channel { + type uint32; + description + "LogicalChannel"; + } + leaf optical-channel { + type string { + length "0..128"; + } + description + "OpticalChannel"; + } + leaf allocation { + type uint32; + description + "Allocation"; + } + leaf assignment-type { + type uint32; + description + "AssignmentType"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper.yang new file mode 100644 index 000000000..af3093164 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-terminal-device-oper.yang @@ -0,0 +1,190 @@ +module Cisco-IOS-XR-terminal-device-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-terminal-device-oper"; + prefix terminal-device-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-terminal-device-oper-sub1 { + revision-date 2020-05-20; + } + + 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 terminal-device package operational data. + + This module contains definitions + for the following management objects: + optical-interface: System-wide view of interface operational + data + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-20 { + description + "leaf fec, baut rate and oper-mode has been updated"; + semver:module-version "2.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container optical-interface { + config false; + description + "System-wide view of interface operational data"; + container optical-logical-interfaces { + description + "The operational attributes for a logical channel"; + list optical-logical-interface { + key "index"; + description + "The operational attributes for a logical + channel"; + container optical-logical-interface-logical-channel-assignments { + description + "The operational attributes for a particular + interface"; + list optical-logical-interface-logical-channel-assignment { + key "index"; + description + "The operational attributes for a logical + channel assignment"; + container optical-logical-interface-logical-channel-assignment-attr { + description + "The operational attributes for a logical + channel assignment"; + uses LOGICAL-CHANNEL-ASSIGNMENT; + } + leaf index { + type uint32; + description + "The index of the logical-channel"; + } + } + } + container optical-logical-interface-attr { + description + "The operational attributes for a particular + logical channel"; + uses LOGICAL-CHANNEL-ATTRIBUTES; + } + leaf index { + type uint32; + description + "The index of the logical-channel"; + } + } + } + container config-status { + description + "Table containing status information"; + container slice-tables { + description + "The container containing slice status + information"; + list slice-table { + key "index"; + description + "The table contains list of slices present"; + container slice-status-attr { + description + "The bag containing slice config status"; + uses SLICE-CONFIG-STATUS-ATTRIBUTES; + } + leaf index { + type uint32; + description + "The index of slice"; + } + } + } + container partial-config { + description + "The bag containing partial config status"; + uses PARTIAL-CONFIG-STATUS; + } + } + container graph { + description + "Table containing Graph Structure and related + info"; + container adj-list-path { + description + "The path containg file which has adjacency list + stored"; + uses ADJACENCY-LIST-PATH; + } + container graph-structure-path { + description + "The path containg file which has graph + structure stored"; + uses GRAPH-STRUCTURE-PATH; + } + } + container optical-channel-interfaces { + description + "The operational attributes for a particular + optical channel"; + list optical-channel-interface { + key "location"; + description + "The operational attributes for an optical + channel"; + container optical-channel-interface-attr { + description + "The operational attributes for an optical + channel"; + uses OPTICAL-CHANNEL-ATTRIBUTES; + } + leaf location { + type xr:Cisco-ios-xr-string; + description + "The name of the optical-channel"; + } + } + } + container operational-modes { + description + "The Operational Mode Table"; + list operational-mode { + key "mode-id"; + description + "Mode supported on Device"; + container operational-mode-attributes { + description + "The operational attributes for mxp driver + fec-mode"; + uses OPERATIONAL-MODE-ATTRIBUTES; + } + leaf mode-id { + type uint32; + description + "Mode-id for supported mode on Device"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-timing-sets-hwmod-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-timing-sets-hwmod-cfg.yang new file mode 100644 index 000000000..14f3b6fd3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-timing-sets-hwmod-cfg.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-timing-sets-hwmod-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-timing-sets-hwmod-cfg"; + prefix timing-sets-hwmod-cfg; + + 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 timing-sets-hwmod package configuration. + + This module contains definitions + for the following management objects: + tmg-sets-hw-module: Configure timing SETS PD h/w module + + Copyright (c) 2013-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-31 { + description + "Schema added for SETS HW-Mod Config."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tmg-sets-flt-act { + type enumeration { + enum "reload" { + value 1; + description + "Reload the card if SETS fault or trap is + detected"; + } + } + description + "Tmg sets flt act"; + } + + container tmg-sets-hw-module { + description + "Configure timing SETS PD h/w module"; + container tmg-sets-configuration { + description + "SETS/TIMING-IC PD configuration"; + leaf fault-act-configuration { + type Tmg-sets-flt-act; + description + "Configure action in case fault is detected"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper-sub1.yang new file mode 100644 index 000000000..c6eedde37 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper-sub1.yang @@ -0,0 +1,399 @@ +submodule Cisco-IOS-XR-tmgctrl-dti-oper-sub1 { + belongs-to Cisco-IOS-XR-tmgctrl-dti-oper { + prefix Cisco-IOS-XR-tmgctrl-dti-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tmgctrl-dti package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping DTI-TOD-INFO { + description + "DTI tod status"; + leaf port1-tod-message-mode { + type string { + length "0..50"; + } + description + "port1 tod message mode"; + } + leaf port1-tod-state { + type string { + length "0..50"; + } + description + "port1 tod state"; + } + leaf port1-tod-time-setting-mode { + type string { + length "0..50"; + } + description + "port1 tod time setting mode"; + } + leaf port1-gps-seconds { + type uint32; + units "second"; + description + "port1 gps seconds"; + } + leaf port1-leap-seconds { + type uint8; + units "second"; + description + "port1 leap seconds"; + } + leaf port1-calendar-time-valid { + type string { + length "0..50"; + } + description + "port1 calendar time valid"; + } + leaf port1-modified-julian-date { + type string { + length "0..50"; + } + description + "port1 modified julian date"; + } + leaf port1-date { + type string { + length "0..50"; + } + description + "port1 date"; + } + leaf port1-time { + type string { + length "0..50"; + } + description + "port1 time"; + } + leaf port1-time-zone-offset { + type string { + length "0..50"; + } + description + "port1 time zone offset"; + } + leaf port1-leap-second-indicator { + type uint8; + description + "port1 leap second indicator"; + } + leaf port2-tod-message-mode { + type string { + length "0..50"; + } + description + "port2 tod message mode"; + } + leaf port2-tod-state { + type string { + length "0..50"; + } + description + "port2 tod state"; + } + leaf port2-tod-time-setting-mode { + type string { + length "0..50"; + } + description + "port2 tod time setting mode"; + } + leaf port2-gps-seconds { + type uint32; + units "second"; + description + "port2 gps seconds"; + } + leaf port2-leap-seconds { + type uint8; + units "second"; + description + "port2 leap seconds"; + } + leaf port2-calendar-time-valid { + type string { + length "0..50"; + } + description + "port2 calendar time valid"; + } + leaf port2-modified-julian-date { + type string { + length "0..50"; + } + description + "port2 modified julian date"; + } + leaf port2-date { + type string { + length "0..50"; + } + description + "port2 date"; + } + leaf port2-time { + type string { + length "0..50"; + } + description + "port2 time"; + } + leaf port2-time-zone-offset { + type string { + length "0..50"; + } + description + "port2 time zone offset"; + } + leaf port2-leap-second-indicator { + type uint8; + description + "port2 leap second indicator"; + } + } + + grouping DTI-PORT-INFO { + description + "DTI port status"; + leaf port1-fr-err-rate-greater5-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port1 frame error rate greater than 5 percent"; + } + leaf port1-fr-err-rate-greater2-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port1 frame error rate greater than 2 percent"; + } + leaf port1-dti-signal-detected { + type string { + length "0..50"; + } + description + "port1 DTI signal detected"; + } + leaf port1-server-timing-source { + type string { + length "0..50"; + } + description + "port1 server timing source"; + } + leaf port1-server-type { + type string { + length "0..50"; + } + description + "port1 server type"; + } + leaf port1-server-clock-type { + type string { + length "0..50"; + } + description + "port1 server clock type"; + } + leaf port1-server-state { + type string { + length "0..50"; + } + description + "port1 server state"; + } + leaf port1-client-perf-stable { + type string { + length "0..50"; + } + description + "port1 client performance stable"; + } + leaf port1-cable-advance-valid { + type string { + length "0..50"; + } + description + "port1 cable advance valid"; + } + leaf port2-fr-err-rate-greater5-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port2 frame error rate greater than 5 percent"; + } + leaf port2-fr-err-rate-greater2-per { + type string { + length "0..50"; + } + units "percentage"; + description + "port2 frame error rate greater than 2 percent"; + } + leaf port2-dti-signal-detected { + type string { + length "0..50"; + } + description + "port2 DTI signal detected"; + } + leaf port2-server-timing-source { + type string { + length "0..50"; + } + description + "port2 server timing source"; + } + leaf port2-server-type { + type string { + length "0..50"; + } + description + "port2 server type"; + } + leaf port2-server-clock-type { + type string { + length "0..50"; + } + description + "port2 server clock type"; + } + leaf port2-server-state { + type string { + length "0..50"; + } + description + "port2 server state"; + } + leaf port2-client-perf-stable { + type string { + length "0..50"; + } + description + "port2 client performance stable"; + } + leaf port2-cable-advance-valid { + type string { + length "0..50"; + } + description + "port2 cable advance valid"; + } + } + + grouping DTI-CLIENT-INFO { + description + "DTI client status"; + leaf timestamp-comparator-enable { + type string { + length "0..50"; + } + description + "timestamp comparator enable"; + } + leaf register-write-enable { + type string { + length "0..50"; + } + description + "register write enable"; + } + leaf revertive-mode-enable { + type string { + length "0..50"; + } + description + "revertive mode enable"; + } + leaf port-mode-select { + type string { + length "0..50"; + } + description + "port mode select"; + } + leaf force-freerun { + type string { + length "0..50"; + } + description + "force freerun"; + } + leaf reference-select-port { + type string { + length "0..50"; + } + description + "reference select port"; + } + leaf timestamp-sync-detected { + type string { + length "0..50"; + } + description + "timestamp sync detected"; + } + leaf reference10mhz-detected { + type string { + length "0..50"; + } + description + "10Mhz reference detected"; + } + leaf active-input-port { + type string { + length "0..50"; + } + description + "active input port"; + } + leaf client-state { + type string { + length "0..50"; + } + description + "client state"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper.yang new file mode 100644 index 000000000..f543636ad --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-dti-oper.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-tmgctrl-dti-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tmgctrl-dti-oper"; + prefix tmgctrl-dti-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tmgctrl-dti-oper-sub1 { + revision-date 2019-04-05; + } + + 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 tmgctrl-dti package operational data. + + This module contains definitions + for the following management objects: + dti-controller: DTI interface controller status and + configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container dti-controller { + config false; + description + "DTI interface controller status and configuration"; + container nodes { + description + "List of nodes applicable to DTI controller"; + list node { + key "node-name"; + description + "DTI operational data for a single node"; + container client { + description + "Display DTI client status"; + uses DTI-CLIENT-INFO; + } + container port { + description + "Display DTI input port status"; + uses DTI-PORT-INFO; + } + container time-of-day { + description + "Display DTI time-of-day status"; + uses DTI-TOD-INFO; + } + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper-sub1.yang new file mode 100644 index 000000000..59bcf51d4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper-sub1.yang @@ -0,0 +1,1235 @@ +submodule Cisco-IOS-XR-tmgctrl-tmg-oper-sub1 { + belongs-to Cisco-IOS-XR-tmgctrl-tmg-oper { + prefix Cisco-IOS-XR-tmgctrl-tmg-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tmgctrl-tmg package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping TMG-TOD-SNAPSHOT { + description + "Timing ToD status"; + leaf secs { + type uint64; + units "second"; + description + "ToD Seconds"; + } + leaf nano-secs { + type uint32; + units "nanosecond"; + description + "ToD Nanoseconds"; + } + leaf utc-offset { + type uint32; + description + "UTC offset from TAI"; + } + } + + grouping TMG-CLKIN-INFO { + description + "Timing input clock status"; + leaf ic1-valid { + type boolean; + description + "IC Valid 1"; + } + leaf ic2-valid { + type boolean; + description + "IC Valid 2"; + } + leaf ic3-valid { + type boolean; + description + "IC Valid 3"; + } + leaf ic4-valid { + type boolean; + description + "IC Valid 4"; + } + leaf ic5-valid { + type boolean; + description + "IC Valid 5"; + } + leaf ic6-valid { + type boolean; + description + "IC Valid 6"; + } + leaf ic7-valid { + type boolean; + description + "IC Valid 7"; + } + leaf ic8-valid { + type boolean; + description + "IC Valid 8"; + } + leaf ic9-valid { + type boolean; + description + "IC Valid 9"; + } + leaf ic10-valid { + type boolean; + description + "IC Valid 10"; + } + leaf ic11-valid { + type boolean; + description + "IC Valid 11"; + } + leaf ic1-slot { + type string { + length "0..50"; + } + description + "IC Slot 1"; + } + leaf ic2-slot { + type string { + length "0..50"; + } + description + "IC Slot 2"; + } + leaf ic3-slot { + type string { + length "0..50"; + } + description + "IC Slot 3"; + } + leaf ic4-slot { + type string { + length "0..50"; + } + description + "IC Slot 4"; + } + leaf ic5-slot { + type string { + length "0..50"; + } + description + "IC Slot 5"; + } + leaf ic6-slot { + type string { + length "0..50"; + } + description + "IC Slot 6"; + } + leaf ic7-slot { + type string { + length "0..50"; + } + description + "IC Slot 7"; + } + leaf ic8-slot { + type string { + length "0..50"; + } + description + "IC Slot 8"; + } + leaf ic9-slot { + type string { + length "0..50"; + } + description + "IC Slot 9"; + } + leaf ic10-slot { + type string { + length "0..50"; + } + description + "IC Slot 10"; + } + leaf ic11-slot { + type string { + length "0..50"; + } + description + "IC Slot 11"; + } + leaf ic1-split-xom { + type string { + length "0..50"; + } + description + "IC1 Split XO Mode Status"; + } + leaf ic2-split-xom { + type string { + length "0..50"; + } + description + "IC2 Split XO Mode Status"; + } + leaf ic3-split-xom { + type string { + length "0..50"; + } + description + "IC3 Split XO Mode Status"; + } + leaf ic4-split-xom { + type string { + length "0..50"; + } + description + "IC4 Split XO Mode Status"; + } + leaf ic5-split-xom { + type string { + length "0..50"; + } + description + "IC5 Split XO Mode Status"; + } + leaf ic6-split-xom { + type string { + length "0..50"; + } + description + "IC6 Split XO Mode Status"; + } + leaf ic7-split-xom { + type string { + length "0..50"; + } + description + "IC7 Split XO Mode Status"; + } + leaf ic8-split-xom { + type string { + length "0..50"; + } + description + "IC8 Split XO Mode Status"; + } + leaf ic9-split-xom { + type string { + length "0..50"; + } + description + "IC9 Split XO Mode Status"; + } + leaf ic10-split-xom { + type string { + length "0..50"; + } + description + "IC10 Split XO Mode Status"; + } + leaf ic11-split-xom { + type string { + length "0..50"; + } + description + "IC11 Split XO Mode Status"; + } + leaf ic1-eppsm { + type string { + length "0..50"; + } + description + "IC1 ePPSM Status"; + } + leaf ic2-eppsm { + type string { + length "0..50"; + } + description + "IC2 ePPSM Status"; + } + leaf ic3-eppsm { + type string { + length "0..50"; + } + description + "IC3 ePPSM Status"; + } + leaf ic4-eppsm { + type string { + length "0..50"; + } + description + "IC4 ePPSM Status"; + } + leaf ic5-eppsm { + type string { + length "0..50"; + } + description + "IC5 ePPSM Status"; + } + leaf ic6-eppsm { + type string { + length "0..50"; + } + description + "IC6 ePPSM Status"; + } + leaf ic7-eppsm { + type string { + length "0..50"; + } + description + "IC7 ePPSM Status"; + } + leaf ic8-eppsm { + type string { + length "0..50"; + } + description + "IC8 ePPSM Status"; + } + leaf ic9-eppsm { + type string { + length "0..50"; + } + description + "IC9 ePPSM Status"; + } + leaf ic10-eppsm { + type string { + length "0..50"; + } + description + "IC10 ePPSM Status"; + } + leaf ic11-eppsm { + type string { + length "0..50"; + } + description + "IC11 ePPSM Status"; + } + leaf ic1-pfm { + type string { + length "0..50"; + } + description + "IC1 PFM Status"; + } + leaf ic2-pfm { + type string { + length "0..50"; + } + description + "IC2 PFM Status"; + } + leaf ic3-pfm { + type string { + length "0..50"; + } + description + "IC3 PFM Status"; + } + leaf ic4-pfm { + type string { + length "0..50"; + } + description + "IC4 PFM Status"; + } + leaf ic5-pfm { + type string { + length "0..50"; + } + description + "IC5 PFM Status"; + } + leaf ic6-pfm { + type string { + length "0..50"; + } + description + "IC6 PFM Status"; + } + leaf ic7-pfm { + type string { + length "0..50"; + } + description + "IC7 PFM Status"; + } + leaf ic8-pfm { + type string { + length "0..50"; + } + description + "IC8 PFM Status"; + } + leaf ic9-pfm { + type string { + length "0..50"; + } + description + "IC9 PFM Status"; + } + leaf ic10-pfm { + type string { + length "0..50"; + } + description + "IC10 PFM Status"; + } + leaf ic11-pfm { + type string { + length "0..50"; + } + description + "IC11 PFM Status"; + } + leaf ic1-gst { + type string { + length "0..50"; + } + description + "IC1 GST Status"; + } + leaf ic2-gst { + type string { + length "0..50"; + } + description + "IC2 GST Status"; + } + leaf ic3-gst { + type string { + length "0..50"; + } + description + "IC3 GST Status"; + } + leaf ic4-gst { + type string { + length "0..50"; + } + description + "IC4 GST Status"; + } + leaf ic5-gst { + type string { + length "0..50"; + } + description + "IC5 GST Status"; + } + leaf ic6-gst { + type string { + length "0..50"; + } + description + "IC6 GST Status"; + } + leaf ic7-gst { + type string { + length "0..50"; + } + description + "IC7 GST Status"; + } + leaf ic8-gst { + type string { + length "0..50"; + } + description + "IC8 GST Status"; + } + leaf ic9-gst { + type string { + length "0..50"; + } + description + "IC9 GST Status"; + } + leaf ic10-gst { + type string { + length "0..50"; + } + description + "IC10 GST Status"; + } + leaf ic11-gst { + type string { + length "0..50"; + } + description + "IC11 GST Status"; + } + leaf ic1-cfm { + type string { + length "0..50"; + } + description + "IC1 CFM Status"; + } + leaf ic2-cfm { + type string { + length "0..50"; + } + description + "IC2 CFM Status"; + } + leaf ic3-cfm { + type string { + length "0..50"; + } + description + "IC3 CFM Status"; + } + leaf ic4-cfm { + type string { + length "0..50"; + } + description + "IC4 CFM Status"; + } + leaf ic5-cfm { + type string { + length "0..50"; + } + description + "IC5 CFM Status"; + } + leaf ic6-cfm { + type string { + length "0..50"; + } + description + "IC6 CFM Status"; + } + leaf ic7-cfm { + type string { + length "0..50"; + } + description + "IC7 CFM Status"; + } + leaf ic8-cfm { + type string { + length "0..50"; + } + description + "IC8 CFM Status"; + } + leaf ic9-cfm { + type string { + length "0..50"; + } + description + "IC9 CFM Status"; + } + leaf ic10-cfm { + type string { + length "0..50"; + } + description + "IC10 CFM Status"; + } + leaf ic11-cfm { + type string { + length "0..50"; + } + description + "IC11 CFM Status"; + } + leaf ic1-scm { + type string { + length "0..50"; + } + description + "IC1 SCM Status"; + } + leaf ic2-scm { + type string { + length "0..50"; + } + description + "IC2 SCM Status"; + } + leaf ic3-scm { + type string { + length "0..50"; + } + description + "IC3 SCM Status"; + } + leaf ic4-scm { + type string { + length "0..50"; + } + description + "IC4 SCM Status"; + } + leaf ic5-scm { + type string { + length "0..50"; + } + description + "IC5 SCM Status"; + } + leaf ic6-scm { + type string { + length "0..50"; + } + description + "IC6 SCM Status"; + } + leaf ic7-scm { + type string { + length "0..50"; + } + description + "IC7 SCM Status"; + } + leaf ic8-scm { + type string { + length "0..50"; + } + description + "IC8 SCM Status"; + } + leaf ic9-scm { + type string { + length "0..50"; + } + description + "IC9 SCM Status"; + } + leaf ic10-scm { + type string { + length "0..50"; + } + description + "IC10 SCM Status"; + } + leaf ic11-scm { + type string { + length "0..50"; + } + description + "IC11 SCM Status"; + } + leaf ic1-los { + type string { + length "0..50"; + } + description + "IC1 LOS Status"; + } + leaf ic2-los { + type string { + length "0..50"; + } + description + "IC2 LOS Status"; + } + leaf ic3-los { + type string { + length "0..50"; + } + description + "IC3 LOS Status"; + } + leaf ic4-los { + type string { + length "0..50"; + } + description + "IC4 LOS Status"; + } + leaf ic5-los { + type string { + length "0..50"; + } + description + "IC5 LOS Status"; + } + leaf ic6-los { + type string { + length "0..50"; + } + description + "IC6 LOS Status"; + } + leaf ic7-los { + type string { + length "0..50"; + } + description + "IC7 LOS Status"; + } + leaf ic8-los { + type string { + length "0..50"; + } + description + "IC8 LOS Status"; + } + leaf ic9-los { + type string { + length "0..50"; + } + description + "IC9 LOS Status"; + } + leaf ic10-los { + type string { + length "0..50"; + } + description + "IC10 LOS Status"; + } + leaf ic11-los { + type string { + length "0..50"; + } + description + "IC11 LOS Status"; + } + } + + grouping TMG-PLL-INFO { + description + "Timing PLL status"; + leaf t0-pll-state { + type string { + length "0..50"; + } + description + "T0 PLL state"; + } + leaf t4-pll-state { + type string { + length "0..50"; + } + description + "T4 PLL state"; + } + leaf ptp-pll-state { + type string { + length "0..50"; + } + description + "1588 PLL state"; + } + leaf t0-pll-selected { + type string { + length "0..50"; + } + description + "T0 PLL selected"; + } + leaf t4-pll-selected { + type string { + length "0..50"; + } + description + "T4 PLL selected"; + } + leaf ptp-pll-selected { + type string { + length "0..50"; + } + description + "1588 PLL selected"; + } + leaf t0-pll-mode { + type string { + length "0..50"; + } + description + "T0 PLL mode"; + } + leaf t4-pll-mode { + type string { + length "0..50"; + } + description + "T4 PLL mode"; + } + leaf ptp-pll-mode { + type string { + length "0..50"; + } + description + "1588 PLL mode"; + } + leaf t0-pll-ic1-prio { + type uint8; + description + "T0 PLL IC1 Priority"; + } + leaf t0-pll-ic2-prio { + type uint8; + description + "T0 PLL IC2 Priority"; + } + leaf t0-pll-ic3-prio { + type uint8; + description + "T0 PLL IC3 Priority"; + } + leaf t0-pll-ic4-prio { + type uint8; + description + "T0 PLL IC4 Priority"; + } + leaf t0-pll-ic5-prio { + type uint8; + description + "T0 PLL IC5 Priority"; + } + leaf t0-pll-ic6-prio { + type uint8; + description + "T0 PLL IC6 Priority"; + } + leaf t0-pll-ic7-prio { + type uint8; + description + "T0 PLL IC7 Priority"; + } + leaf t0-pll-ic8-prio { + type uint8; + description + "T0 PLL IC8 Priority"; + } + leaf t0-pll-ic9-prio { + type uint8; + description + "T0 PLL IC9 Priority"; + } + leaf t0-pll-ic10-prio { + type uint8; + description + "T0 PLL IC10 Priority"; + } + leaf t0-pll-ic11-prio { + type uint8; + description + "T0 PLL IC11 Priority"; + } + leaf t4-pll-ic1-prio { + type uint8; + description + "T4 PLL IC1 Priority"; + } + leaf t4-pll-ic2-prio { + type uint8; + description + "T4 PLL IC2 Priority"; + } + leaf t4-pll-ic3-prio { + type uint8; + description + "T4 PLL IC3 Priority"; + } + leaf t4-pll-ic4-prio { + type uint8; + description + "T4 PLL IC4 Priority"; + } + leaf t4-pll-ic5-prio { + type uint8; + description + "T4 PLL IC5 Priority"; + } + leaf t4-pll-ic6-prio { + type uint8; + description + "T4 PLL IC6 Priority"; + } + leaf t4-pll-ic7-prio { + type uint8; + description + "T4 PLL IC7 Priority"; + } + leaf t4-pll-ic8-prio { + type uint8; + description + "T4 PLL IC8 Priority"; + } + leaf t4-pll-ic9-prio { + type uint8; + description + "T4 PLL IC9 Priority"; + } + leaf t4-pll-ic10-prio { + type uint8; + description + "T4 PLL IC10 Priority"; + } + leaf t4-pll-ic11-prio { + type uint8; + description + "T4 PLL IC11 Priority"; + } + leaf ptp-pll-ic1-prio { + type uint8; + description + "PTP PLL IC1 Priority"; + } + leaf ptp-pll-ic2-prio { + type uint8; + description + "PTP PLL IC2 Priority"; + } + leaf ptp-pll-ic3-prio { + type uint8; + description + "PTP PLL IC3 Priority"; + } + leaf ptp-pll-ic4-prio { + type uint8; + description + "PTP PLL IC4 Priority"; + } + leaf ptp-pll-ic5-prio { + type uint8; + description + "PTP PLL IC5 Priority"; + } + leaf ptp-pll-ic6-prio { + type uint8; + description + "PTP PLL IC6 Priority"; + } + leaf ptp-pll-ic7-prio { + type uint8; + description + "PTP PLL IC7 Priority"; + } + leaf ptp-pll-ic8-prio { + type uint8; + description + "PTP PLL IC8 Priority"; + } + leaf ptp-pll-ic9-prio { + type uint8; + description + "PTP PLL IC9 Priority"; + } + leaf ptp-pll-ic10-prio { + type uint8; + description + "PTP PLL IC10 Priority"; + } + leaf ptp-pll-ic11-prio { + type uint8; + description + "PTP PLL IC11 Priority"; + } + leaf ic1-valid { + type boolean; + description + "IC Valid 1"; + } + leaf ic2-valid { + type boolean; + description + "IC Valid 2"; + } + leaf ic3-valid { + type boolean; + description + "IC Valid 3"; + } + leaf ic4-valid { + type boolean; + description + "IC Valid 4"; + } + leaf ic5-valid { + type boolean; + description + "IC Valid 5"; + } + leaf ic6-valid { + type boolean; + description + "IC Valid 6"; + } + leaf ic7-valid { + type boolean; + description + "IC Valid 7"; + } + leaf ic8-valid { + type boolean; + description + "IC Valid 8"; + } + leaf ic9-valid { + type boolean; + description + "IC Valid 9"; + } + leaf ic10-valid { + type boolean; + description + "IC Valid 10"; + } + leaf ic11-valid { + type boolean; + description + "IC Valid 11"; + } + leaf t0-pll-freq-offset { + type int32; + description + "T0 PLL Frequency Offset"; + } + leaf t4-pll-freq-offset { + type int32; + description + "T4 PLL Frequency Offset"; + } + leaf ptp-pll-freq-offset { + type int32; + description + "PTP PLL Frequency Offset"; + } + leaf t0-pll-bandwidth { + type string { + length "0..50"; + } + description + "T0 PLL Bandwidth"; + } + leaf t4-pll-bandwidth { + type string { + length "0..50"; + } + description + "T4 PLL Bandwidth"; + } + leaf ptp-pll-bandwidth { + type string { + length "0..50"; + } + description + "PTP PLL Bandwidth"; + } + leaf t0-pll-psl { + type string { + length "0..50"; + } + description + "T0 PLL PSL"; + } + leaf t4-pll-psl { + type string { + length "0..50"; + } + description + "T4 PLL PSL"; + } + leaf ptp-pll-psl { + type string { + length "0..50"; + } + description + "PTP PLL PSL"; + } + leaf ic1-qual-min { + type string { + length "0..50"; + } + description + "IC1 Pull-in/Hold-in Min"; + } + leaf ic1-qual-max { + type string { + length "0..50"; + } + description + "IC1 Pull-in/Hold-in Max"; + } + leaf ic2-qual-min { + type string { + length "0..50"; + } + description + "IC2 Pull-in/Hold-in Min"; + } + leaf ic2-qual-max { + type string { + length "0..50"; + } + description + "IC2 Pull-in/Hold-in Max"; + } + leaf ic3-qual-min { + type string { + length "0..50"; + } + description + "IC3 Pull-in/Hold-in Min"; + } + leaf ic3-qual-max { + type string { + length "0..50"; + } + description + "IC3 Pull-in/Hold-in Max"; + } + leaf ic4-qual-min { + type string { + length "0..50"; + } + description + "IC4 Pull-in/Hold-in Min"; + } + leaf ic4-qual-max { + type string { + length "0..50"; + } + description + "IC4 Pull-in/Hold-in Max"; + } + leaf ic5-qual-min { + type string { + length "0..50"; + } + description + "IC5 Pull-in/Hold-in Min"; + } + leaf ic5-qual-max { + type string { + length "0..50"; + } + description + "IC5 Pull-in/Hold-in Max"; + } + leaf ic6-qual-min { + type string { + length "0..50"; + } + description + "IC6 Pull-in/Hold-in Min"; + } + leaf ic6-qual-max { + type string { + length "0..50"; + } + description + "IC6 Pull-in/Hold-in Max"; + } + leaf ic7-qual-min { + type string { + length "0..50"; + } + description + "IC7 Pull-in/Hold-in Min"; + } + leaf ic7-qual-max { + type string { + length "0..50"; + } + description + "IC7 Pull-in/Hold-in Max"; + } + leaf ic8-qual-min { + type string { + length "0..50"; + } + description + "IC8 Pull-in/Hold-in Min"; + } + leaf ic8-qual-max { + type string { + length "0..50"; + } + description + "IC8 Pull-in/Hold-in Max"; + } + leaf ic9-qual-min { + type string { + length "0..50"; + } + description + "IC9 Pull-in/Hold-in Min"; + } + leaf ic9-qual-max { + type string { + length "0..50"; + } + description + "IC9 Pull-in/Hold-in Max"; + } + leaf ic10-qual-min { + type string { + length "0..50"; + } + description + "IC10 Pull-in/Hold-in Min"; + } + leaf ic10-qual-max { + type string { + length "0..50"; + } + description + "IC10 Pull-in/Hold-in Max"; + } + leaf ic11-qual-min { + type string { + length "0..50"; + } + description + "IC11 Pull-in/Hold-in Min"; + } + leaf ic11-qual-max { + type string { + length "0..50"; + } + description + "IC11 Pull-in/Hold-in Max"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper.yang new file mode 100644 index 000000000..a494786ee --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tmgctrl-tmg-oper.yang @@ -0,0 +1,83 @@ +module Cisco-IOS-XR-tmgctrl-tmg-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tmgctrl-tmg-oper"; + prefix tmgctrl-tmg-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tmgctrl-tmg-oper-sub1 { + revision-date 2019-04-05; + } + + 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 tmgctrl-tmg package operational data. + + This module contains definitions + for the following management objects: + timing-card: Timing PLL status and configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container timing-card { + config false; + description + "Timing PLL status and configuration"; + container nodes { + description + "List of nodes applicable to timing"; + list node { + key "node-name"; + description + "Timing operational data for a single node"; + container pll { + description + "Display the timing card PLL status information"; + uses TMG-PLL-INFO; + } + container input-clock { + description + "Display the timing card input clock status + information"; + uses TMG-CLKIN-INFO; + } + container tod { + description + "Display the TOD snapshot data"; + uses TMG-TOD-SNAPSHOT; + } + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-traceroute-act.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-traceroute-act.yang new file mode 100644 index 000000000..ec513c369 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-traceroute-act.yang @@ -0,0 +1,93 @@ +module Cisco-IOS-XR-traceroute-act { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-traceroute-act"; + prefix traceroute-act; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-ipv4-traceroute-act; + include Cisco-IOS-XR-ipv6-traceroute-act; + + 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 ping action package configuration. + + Copyright (c) 2016-2019, 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-05 { + description + "Removed support for use-srv6-op-sid"; + semver:module-version "2.0.0"; + } + revision 2019-10-01 { + description + "Made changes to be RFC6087 compliant"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-10-01 { + description + "IOS XR 6.2.1 revision."; + } + + rpc traceroute { + description + "Trace route to destination"; + input { + container destination { + presence "traceroute input"; + description + "Trace route destination"; + uses TRACEROUTE-OPTIONS; + uses IPV6-SPECIFIC-OPTIONS; + } + container ipv4 { + presence "ipv4 traceroute"; + description + "Trace route IPv4"; + uses TRACEROUTE-OPTIONS; + } + container ipv6 { + presence "ipv6 traceroute"; + description + "Trace route IPv6"; + uses IPV6-TRACEROUTE-INPUT; + } + } + output { + container traceroute-response { + description + "Trace route response"; + container ipv4 { + presence "ipv4 traceroute output"; + description + "Trace route IPv4 response"; + uses TRACEROUTE-OUTPUT; + } + container ipv6 { + presence "ipv6 traceroute output"; + description + "Trace route IPv6 response"; + uses TRACEROUTE-OUTPUT; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-traffmon-netflow-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-traffmon-netflow-cfg.yang new file mode 100644 index 000000000..d0f97a6d5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-traffmon-netflow-cfg.yang @@ -0,0 +1,1023 @@ +module Cisco-IOS-XR-traffmon-netflow-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-traffmon-netflow-cfg"; + prefix traffmon-netflow-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-l2vpn-cfg { + prefix a2; + } + + 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 traffmon-netflow package configuration. + + This module contains definitions + for the following management objects: + net-flow: NetFlow Configuration + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-l2vpn-cfg + modules with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-23 { + description + "Added leaf for setting source address explicitly for export packets and increased maximum length of monitor, exporter and sampler map names IosSetYangSchemaRev Cisco-IOS-XR-traffmon-netflow-cfg + 2022-01-23 + Increased upper bound of sflow sample header size range"; + semver:module-version "3.0.0"; + } + revision 2021-05-23 { + description + "Added leaf for sflow extended tunnel flow records"; + semver:module-version "2.1.0"; + } + revision 2021-02-23 { + description + "Added class table export time-out + 2021-01-16 + Added l2 record type in monitor-map + 2020-11-16 + Increased maximum packet length in exporter configuration to support jumbo export packets + 2020-10-16 + Added gtp record type in monitor-map and protobuf version in exporter-map + 2020-07-15 + Added flow support for l2transport interfaces"; + semver:module-version "2.0.0"; + } + revision 2020-02-15 { + description + "Added sflow type for monitor-map record type and exporter-map version type, and associated sflow config changes."; + semver:module-version "1.2.0"; + } + revision 2019-09-15 { + description + "Added map-t type for monitor-map and flow interface configuration."; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2018-06-15 { + description + "Changed type of version node from range to enum and made it mandatory."; + } + revision 2018-06-15 { + description + "Allow min..max in range when min == max."; + } + revision 2018-05-28 { + description + "Changed some schema paths for commit check functionality."; + } + revision 2018-04-01 { + description + "Changed some schema paths for commit replace functionality."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Nf-export-timeout { + type uint32 { + range "0..604800"; + } + description + "Nf export timeout"; + } + + typedef Nf-active-cache-aging-timeout { + type uint32 { + range "1..604800"; + } + description + "Nf active cache aging timeout"; + } + + typedef Nf-cache-option { + type enumeration { + enum "outphysint" { + value 1; + description + "Option outphysint"; + } + enum "filtered" { + value 2; + description + "Option filtered"; + } + enum "bgpattr" { + value 3; + description + "Option bgpattr"; + } + enum "outbundlemember" { + value 4; + description + "Option outbundlemember"; + } + } + description + "Nf cache option"; + } + + typedef Nf-inactive-cache-aging-timeout { + type uint32 { + range "0..604800"; + } + description + "Nf inactive cache aging timeout"; + } + + typedef Nf-sample-interval { + type uint32 { + range "1..262144"; + } + description + "Nf sample interval"; + } + + typedef Nf-sample-number { + type uint32 { + range "1"; + } + description + "Nf sample number"; + } + + typedef Nf-flow-direction { + type enumeration { + enum "ingress" { + value 0; + description + "Netflow flow direction ingress"; + } + enum "egress" { + value 1; + description + "Netflow flow direction egress"; + } + } + description + "Nf flow direction"; + } + + typedef Nf-export-udp-source-port-scheme { + type enumeration { + enum "single" { + value 0; + description + "Use a single source-port"; + } + enum "multiple" { + value 1; + description + "Use multiple source-ports"; + } + } + description + "Nf export udp source port scheme"; + } + + typedef Nf-record-format { + type enumeration { + enum "datalinkframesections-any" { + value 1; + description + "Record Format datalinkframesections_any"; + } + enum "default-mdi" { + value 2; + description + "Record Format default_mdi"; + } + enum "default-rtp" { + value 3; + description + "Record Format default_rtp"; + } + enum "ipv4-as-agg" { + value 4; + description + "Record Format ipv4_as_agg"; + } + enum "ipv4-as-tos-agg" { + value 5; + description + "Record Format ipv4_as_tos_agg"; + } + enum "ipv4-bgp-nexthop-tos-agg" { + value 6; + description + "Record Format ipv4_bgp_nexthop_tos_agg"; + } + enum "ipv4-destination" { + value 7; + description + "Record Format ipv4_destination"; + } + enum "ipv4-destination-tos-agg" { + value 8; + description + "Record Format ipv4_destination_tos_agg"; + } + enum "ipv4-destination-prefix-agg" { + value 9; + description + "Record Format ipv4_destination_prefix_agg"; + } + enum "ipv4-destination-prefix-tos-agg" { + value 10; + description + "Record Format ipv4_destination_prefix_tos_agg"; + } + enum "ipv4-peer-as" { + value 11; + description + "Record Format ipv4_peer_as"; + } + enum "ipv4-prefix-agg" { + value 12; + description + "Record Format ipv4_prefix_agg"; + } + enum "ipv4-prefix-port-agg" { + value 13; + description + "Record Format ipv4_prefix_port_agg"; + } + enum "ipv4-prefix-tos-agg" { + value 14; + description + "Record Format ipv4_prefix_tos_agg"; + } + enum "ipv4-protocol-port-agg" { + value 15; + description + "Record Format ipv4_protocol_port_agg"; + } + enum "ipv4-protocol-port-tos-agg" { + value 16; + description + "Record Format ipv4_protocol_port_tos_agg"; + } + enum "ipv4-raw" { + value 17; + description + "Record Format ipv4_raw"; + } + enum "ipv4-source-prefix-agg" { + value 18; + description + "Record Format ipv4_source_prefix_agg"; + } + enum "ipv4-source-prefix-tos-agg" { + value 19; + description + "Record Format ipv4_source_prefix_tos_agg"; + } + enum "ipv4-gtp" { + value 20; + description + "Record Format ipv4_gtp"; + } + enum "ipv6" { + value 21; + description + "Record Format ipv6"; + } + enum "ipv6-destination" { + value 22; + description + "Record Format ipv6_destination"; + } + enum "ipv6-peer-as" { + value 23; + description + "Record Format ipv6_peer_as"; + } + enum "srv6" { + value 25; + description + "Record Format srv6"; + } + enum "mpls" { + value 26; + description + "Record Format mpls"; + } + enum "mpls-ipv4" { + value 27; + description + "Record Format mpls_ipv4"; + } + enum "mpls-ipv4-ipv6" { + value 28; + description + "Record Format mpls_ipv4_ipv6"; + } + enum "mpls-ipv6" { + value 29; + description + "Record Format mpls_ipv6"; + } + enum "mapt" { + value 30; + description + "Record Format mapt"; + } + enum "sflow" { + value 31; + description + "Record Format sflow"; + } + } + description + "Nf record format"; + } + + typedef Nf-template-timeout { + type uint32 { + range "1..604800"; + } + description + "Nf template timeout"; + } + + typedef Nf-sflow-flow-sample-flag-option { + type enumeration { + enum "extended-router" { + value 0; + description + "Option extended-router flow type"; + } + enum "extended-gateway" { + value 1; + description + "Option extended-gateway flow type"; + } + enum "extended-ipv4-tunnel-egress" { + value 2; + description + "Option extended-gateway flow type"; + } + enum "extended-ipv6-tunnel-egress" { + value 3; + description + "Option extended-gateway flow type"; + } + } + description + "Nf sflow flow sample flag option"; + } + + typedef Nf-sflow-sample-header-size { + type uint32 { + range "128..343"; + } + description + "Nf sflow sample header size"; + } + + typedef Nf-map-name { + type string { + length "1..90"; + pattern "[a-zA-Z0-9_\\-]+"; + } + description + "Nf map name"; + } + + typedef Nf-sflow-ifindex-option { + type enumeration { + enum "physical" { + value 0; + description + "Physical Interface Ifindex"; + } + } + description + "Nf sflow ifindex option"; + } + + typedef Nf-cache-aging-mode { + type enumeration { + enum "normal" { + value 0; + description + "Normal, caches age"; + } + enum "permanent" { + value 1; + description + "Permanent, caches never age"; + } + enum "immediate" { + value 2; + description + "Immediate, caches age immediately"; + } + } + description + "Nf cache aging mode"; + } + + typedef Nf-flow-protocol { + type enumeration { + enum "ipv4" { + value 0; + description + "Netflow flow protocol ipv4"; + } + enum "ipv6" { + value 1; + description + "Netflow flow protocol ipv6"; + } + enum "mpls" { + value 2; + description + "Netflow flow protocol mpls"; + } + enum "data-link-frame-section" { + value 13; + description + "Netflow flow protocol data-link-frame-section"; + } + enum "map" { + value 14; + description + "Netflow flow protocol map-t"; + } + } + description + "Nf flow protocol"; + } + + typedef Nf-cache-entry { + type uint32 { + range "4096..1000000"; + } + description + "Nf cache entry"; + } + + typedef Nf-hw-cache-inactive-aging-timeout { + type uint32 { + range "50..1800"; + } + description + "Nf hw cache inactive aging timeout"; + } + + typedef Nf-update-cache-aging-timeout { + type uint32 { + range "1..604800"; + } + description + "Nf update cache aging timeout"; + } + + typedef Nf-sampling-mode { + type enumeration { + enum "random" { + value 2; + description + "Random sampling"; + } + } + description + "Nf sampling mode"; + } + + typedef Nf-sflow-if-counter-polling-interval { + type uint32 { + range "5..1800"; + } + description + "Nf sflow if counter polling interval"; + } + + typedef Nf-export-version { + type enumeration { + enum "v9" { + value 9; + description + "Version v9"; + } + enum "ipfix" { + value 10; + description + "Version ipfix"; + } + enum "sflow" { + value 11; + description + "Version sflow"; + } + enum "protobuf" { + value 12; + description + "Version protobuf"; + } + } + description + "Nf export version"; + } + + typedef Nf-cache-timeout-rate-limit { + type uint32 { + range "1..1000000"; + } + description + "Nf cache timeout rate limit"; + } + + grouping FLOW-MONITOR-MAP { + description + "Common node of flow-monitor-map-table, + flow-monitor-map-performance-table"; + list flow-monitor-map { + key "monitor-map-name"; + description + "Monitor map name"; + container exporters { + description + "Configure exporters to be used by the + monitor-map"; + list exporter { + key "exporter-name"; + description + "Configure exporter to be used by the + monitor-map"; + leaf exporter-name { + type Nf-map-name; + description + "Exporter name"; + } + } + } + container sflow-options { + presence "CLI submode compatibility."; + description + "Specify sflow related options in the + monitor-map"; + container input { + description + "Specify sample input related options"; + leaf ifindex { + type Nf-sflow-ifindex-option; + description + "Specify interface index option"; + } + } + container counter-sample-options-table { + description + "Enable optional counter sample options"; + leaf if-counter-polling-interval { + type Nf-sflow-if-counter-polling-interval; + units "second"; + description + "Specify the if-counter polling interval"; + } + } + container output { + description + "Specify sample output related options"; + leaf ifindex { + type Nf-sflow-ifindex-option; + description + "Specify interface index option"; + } + } + container flow-sample-flag-options { + description + "Enable optional flag-type flow sample options"; + list flow-sample-flag-option { + key "option"; + description + "Enable flag type flow sample options"; + leaf option { + type Nf-sflow-flow-sample-flag-option; + description + "Option name"; + } + } + } + container sample-header { + description + "Specify sample header related options"; + leaf header-size-maximum { + type Nf-sflow-sample-header-size; + description + "Specify the maximum sample header length "; + } + } + } + container record { + presence "Indicates a record node is configured."; + description + "Specify a flow record format"; + leaf record-format { + type Nf-record-format; + mandatory true; + description + "Flow record format"; + } + leaf label { + type uint32 { + range "1..6"; + } + description + "Enter label value for MPLS record type"; + } + } + container options { + description + "Specify an option for the flow cache"; + list option { + key "optionvalue"; + description + "Specify an option for the flow cache"; + leaf optionvalue { + type Nf-cache-option; + description + "Option name"; + } + } + } + leaf cache-update-aging-timeout { + type Nf-update-cache-aging-timeout; + units "second"; + description + "Specify the update flow cache aging timeout"; + } + leaf cache-entries { + type Nf-cache-entry; + description + "Specify the number of entries in the flow cache"; + } + leaf cache-inactive-aging-timeout { + type Nf-inactive-cache-aging-timeout; + units "second"; + description + "Specify the inactive flow cache aging timeout"; + } + leaf hw-cache-inactive-aging-timeout { + type Nf-hw-cache-inactive-aging-timeout; + units "second"; + description + "Specify the inactive flow cache aging timeout + in hw-cache if hw-cache exists"; + } + leaf cache-active-aging-timeout { + type Nf-active-cache-aging-timeout; + units "second"; + description + "Specify the active flow cache aging timeout"; + } + leaf cache-timeout-rate-limit { + type Nf-cache-timeout-rate-limit; + description + "Specify the maximum number of entries to age + each second"; + } + leaf cache-aging-mode { + type Nf-cache-aging-mode; + description + "Specify the flow cache aging mode"; + } + leaf monitor-map-name { + type Nf-map-name; + description + "Monitor map name"; + } + } + } + + grouping NET-FLOW { + description + "Common node of interface-configuration, + l2-transport"; + container flow-protocols { + description + "Interface netflow configuration"; + list flow-protocol { + key "flow-protocol"; + description + "Configure netflow flow protocol"; + leaf flow-protocol { + type Nf-flow-protocol; + description + "Netflow Flow Protocol"; + } + list direction { + key "flow-direction"; + description + "Configure netflow flow direction"; + leaf flow-direction { + type Nf-flow-direction; + description + "Netflow Flow Direction"; + } + list monitor-info { + key "monitor-map sampler-map"; + description + "Specify a sampler for a flow monitor"; + leaf monitor-map { + type xr:Cisco-ios-xr-string; + description + "Flow monitor map name"; + } + leaf sampler-map { + type xr:Cisco-ios-xr-string; + description + "Sampler map name"; + } + } + } + } + } + } + + augment "/a1:interface-configurations/a1:interface-configuration/a2:l2-transport" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-l2vpn-cfg'"; + uses NET-FLOW; + } + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + uses NET-FLOW; + } + container net-flow { + description + "NetFlow Configuration"; + container flow-exporter-maps { + description + "Configure a flow exporter map"; + list flow-exporter-map { + key "exporter-map-name"; + description + "Exporter map name"; + container source-address { + description + "Configure export source address for export + packets (has higher precedence than address + from source interface)"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "Source IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Source IPV6 address"; + } + } + container udp { + description + "Use UDP as transport protocol"; + container source-port { + description + "Configure UDP source port options"; + container port { + presence "Indicates a port node is configured."; + description + "Configure a single udp port or a set of + source ports"; + leaf scheme { + type Nf-export-udp-source-port-scheme; + mandatory true; + description + "Source Port allocation scheme"; + } + leaf port-number { + type uint32 { + range "49152..65535"; + } + mandatory true; + description + "Source Port number"; + } + leaf port-count { + type uint32 { + range "1..1024"; + } + description + "Number of source ports to be used"; + } + } + } + leaf destination-port { + type uint32 { + range "1024..65535"; + } + description + "Configure Destination UDP port"; + } + } + container destination { + description + "Configure export destination (collector)"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "Destination IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Destination IPV6 address"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + container version { + presence "Indicates a version node is configured."; + description + "Specify export version parameters"; + container options { + description + "Specify options for exporting templates"; + leaf interface-table-export-timeout { + type Nf-export-timeout; + units "second"; + description + "Specify timeout for exporting interface + table"; + } + leaf sampler-table-export-timeout { + type Nf-export-timeout; + units "second"; + description + "Specify timeout for exporting sampler table"; + } + leaf class-table-export-timeout { + type Nf-export-timeout; + units "second"; + description + "Specify timeout for exporting class table"; + } + leaf vrf-table-export-timeout { + type Nf-export-timeout; + units "second"; + description + "Specify timeout for exporting vrf table"; + } + } + leaf version-type { + type Nf-export-version; + mandatory true; + description + "Export version number"; + } + leaf options-template-timeout { + type Nf-template-timeout; + units "second"; + default "1800"; + description + "Option template configuration options"; + } + leaf common-template-timeout { + type Nf-template-timeout; + units "second"; + default "1800"; + description + "Specify custom timeout for the template"; + } + leaf data-template-timeout { + type Nf-template-timeout; + units "second"; + default "1800"; + description + "Data template configuration options"; + } + } + leaf dfbit { + type empty; + description + "Set Do Not Fragment flag in Export Packet"; + } + leaf source-interface { + type xr:Interface-name; + description + "Configure source interface whose address can + be used as source address for export packets"; + } + leaf dscp { + type uint32 { + range "0..63"; + } + description + "Specify DSCP value for export packets"; + } + leaf packet-length { + type uint32 { + range "512..9000"; + } + description + "Export Packet maximum L3 length, should + conform to outgoing interface mtu"; + } + leaf exporter-map-name { + type Nf-map-name; + description + "Exporter map name"; + } + } + } + container flow-sampler-maps { + description + "Flow sampler map configuration"; + list flow-sampler-map { + key "sampler-map-name"; + description + "Sampler map name"; + container sampling-modes { + description + "Configure packet sampling mode"; + list sampling-mode { + key "mode"; + description + "Configure sampling mode"; + leaf mode { + type Nf-sampling-mode; + description + "Sampling mode"; + } + leaf sample-number { + type Nf-sample-number; + mandatory true; + description + "Number of packets to be sampled in the + sampling interval"; + } + leaf interval { + type Nf-sample-interval; + mandatory true; + description + "Sampling interval in units of packets"; + } + } + } + leaf sampler-map-name { + type Nf-map-name; + description + "Sampler map name"; + } + } + } + container flow-monitor-map-table { + description + "Flow monitor map configuration"; + uses FLOW-MONITOR-MAP; + } + container flow-monitor-map-performance-table { + description + "Configure a performance traffic flow monitor map"; + uses FLOW-MONITOR-MAP; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cfg.yang new file mode 100644 index 000000000..b0fc58cd6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cfg.yang @@ -0,0 +1,220 @@ +module Cisco-IOS-XR-tty-management-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-management-cfg"; + prefix tty-management-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-tty-management-datatypes { + prefix dt1; + } + import Cisco-IOS-XR-tty-server-cfg { + prefix a1; + } + + 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 tty-management package configuration. + + This YANG module augments the + Cisco-IOS-XR-tty-server-cfg + module with configuration data. + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-05 { + description + "Added autocommand and syntax check yang query"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-09-25 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:tty/a1:tty-lines/a1:tty-line" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-tty-server-cfg'"; + container connection { + description + "Management connection configuration"; + container transport-input { + description + "Protocols to use when connecting to the + terminal server"; + leaf select { + type dt1:Tty-transport-protocol-select; + default "all"; + description + "Choose transport protocols"; + } + leaf protocol1 { + when "../select = 'some'" { + description + "../Select = Some"; + } + type dt1:Tty-transport-protocol; + description + "Transport protocol1"; + } + leaf protocol2 { + when "../select = 'some'" { + description + "../Select = Some"; + } + type dt1:Tty-transport-protocol; + description + "Transport protocol2"; + } + leaf none { + type uint32; + description + "Not used"; + } + } + container transport-output { + presence "Indicates a transport-output node is configured."; + description + "Protocols to use for outgoing connections"; + leaf select { + type dt1:Tty-transport-protocol-select; + mandatory true; + description + "Choose transport protocols"; + } + leaf protocol1 { + type dt1:Tty-transport-protocol; + description + "Transport protocol1"; + } + leaf protocol2 { + type dt1:Tty-transport-protocol; + description + "Transport protocol2"; + } + leaf none { + type uint32; + description + "Not used"; + } + } + container session-timeout { + presence "Indicates a session-timeout node is configured."; + description + "Interval for closing connection when there is + no input traffic"; + leaf timeout { + type uint32 { + range "0..35791"; + } + mandatory true; + description + "Session timeout interval in minutes"; + } + leaf direction { + type dt1:Tty-session-timeout-direction; + mandatory true; + description + "Include output traffic as well as input + traffic"; + } + } + leaf disconnect-character { + type xr:Char-num; + description + "Disconnect character's decimal equivalent value + or Character "; + } + leaf auto-command { + type string; + description + "Line template's auto command"; + } + leaf acl-in { + type string; + description + "ACL to filter ingoing connections"; + } + leaf acl-out { + type string; + description + "ACL to filter outgoing connections"; + } + leaf cli-white-space-completion { + type empty; + description + "Command completion on whitespace"; + } + leaf session-limit { + type uint32 { + range "0..20"; + } + default "6"; + description + "The number of outgoing connections"; + } + leaf escape-character { + type xr:Tty-escape-char-num; + default "30"; + description + "Escape character or ASCII decimal equivalent + value orspecial strings NONE,DEFAULT,BREAK"; + } + leaf transport-preferred { + type dt1:Tty-transport-protocol; + description + "The preferred protocol to use"; + } + leaf interactive-syntax-check { + type boolean; + description + "Set to true to turn on interactive syntax check"; + } + } + } + augment "/a1:tty/a1:tty-lines/a1:tty-line" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-tty-server-cfg'"; + container exec-mode { + description + "Exec Mode Pager configurtion"; + leaf pager { + type dt1:Tty-pager; + default "more"; + description + "Preferred Paging Utility"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper-sub1.yang new file mode 100644 index 000000000..e5d08aa8e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper-sub1.yang @@ -0,0 +1,81 @@ +submodule Cisco-IOS-XR-tty-management-cmd-oper-sub1 { + belongs-to Cisco-IOS-XR-tty-management-cmd-oper { + prefix Cisco-IOS-XR-tty-management-cmd-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-management-cmd package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHOWUSERS-ENTRY { + description + " Per Line Information"; + leaf line { + type string; + description + "Line Number"; + } + leaf user { + type string; + description + "User Name"; + } + leaf service { + type string; + description + "Service Name"; + } + leaf conns { + type string; + description + "No. of Connections"; + } + leaf idle-string { + type string; + description + "Idle Time"; + } + leaf location { + type string; + description + "IP address of remote login host"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper.yang new file mode 100644 index 000000000..8193727a3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-cmd-oper.yang @@ -0,0 +1,75 @@ +module Cisco-IOS-XR-tty-management-cmd-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-management-cmd-oper"; + prefix tty-management-cmd-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tty-management-cmd-oper-sub1 { + revision-date 2019-04-05; + } + + 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 tty-management-cmd package operational data. + + This module contains definitions + for the following management objects: + show-users: Show users statistics + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-users { + config false; + description + "Show users statistics"; + container sessions { + description + "Show users statistics"; + list session { + key "session-id"; + description + "Show users statistics"; + leaf session-id { + type uint32 { + range "0..4294967295"; + } + description + "Session Id"; + } + uses SHOWUSERS-ENTRY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-datatypes.yang new file mode 100644 index 000000000..31f727fd6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-datatypes.yang @@ -0,0 +1,151 @@ +module Cisco-IOS-XR-tty-management-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-management-datatypes"; + prefix tty-management-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-08-07 { + description + "Initial version"; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Tty-pager { + type enumeration { + enum "more" { + value 1; + description + "More paging Utility"; + } + enum "less" { + value 2; + description + "Less paging Utility"; + } + enum "none" { + value 3; + description + "No Paging Utility"; + } + } + description + "Tty pager"; + } + + typedef Tty-escape-char { + type union { + type enumeration { + enum "break" { + value 257; + description + "Cause escape on BREAK"; + } + enum "default" { + value 30; + description + "Use default escape character"; + } + enum "none" { + value 256; + description + "Disable escape entirely"; + } + } + type uint32 { + range "0..257"; + } + } + description + "Tty escape char"; + } + + typedef Tty-transport-protocol-select { + type enumeration { + enum "none" { + value 0; + description + "No protocols"; + } + enum "all" { + value 1; + description + "All protocols"; + } + enum "some" { + value 2; + description + "One of the Transport Protocol"; + } + } + description + "Tty transport protocol select"; + } + + typedef Tty-session-timeout-direction { + type enumeration { + enum "in" { + value 1; + description + "Input traffic"; + } + enum "in-out" { + value 3; + description + "In & Output traffic"; + } + } + description + "Tty session timeout direction"; + } + + typedef Tty-transport-protocol { + type enumeration { + enum "none" { + value 0; + description + "No protocols"; + } + enum "telnet" { + value 1; + description + "TCP/IP Telnet protocol"; + } + enum "ssh" { + value 3; + description + "Unix ssh protocol"; + } + } + description + "Tty transport protocol"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper-sub1.yang new file mode 100644 index 000000000..9c4e7bb89 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper-sub1.yang @@ -0,0 +1,174 @@ +submodule Cisco-IOS-XR-tty-management-oper-sub1 { + belongs-to Cisco-IOS-XR-tty-management-oper { + prefix Cisco-IOS-XR-tty-management-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-management package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + identity Host-af-id-base { + description + "Base identity for Host-af-id"; + } + + identity ipv4 { + base Host-af-id-base; + description + "IPv4 family"; + } + + identity ipv6 { + base Host-af-id-base; + description + "IPv6 family"; + } + + typedef Transport-service { + type enumeration { + enum "unknown" { + description + "Unknown service"; + } + enum "telnet" { + description + "Telnet"; + } + enum "rlogin" { + description + "Remote login"; + } + enum "ssh" { + description + "SSH"; + } + } + description + "Transport service protocol"; + } + + typedef Ipv6-address { + type inet:ipv6-address; + description + "Ipv6 address"; + } + + typedef Host-af-id { + type identityref { + base Host-af-id-base; + } + description + "Host address family types"; + } + + grouping IP-ADDR-T-UNION { + description + "IP ADDR T UNION"; + leaf af-name { + type Host-af-id; + description + "AFName"; + } + leaf ipv4-address { + when "../af-name = 'ipv4'" { + description + "../AFName = 'IPv4'"; + } + type inet:ipv4-address; + description + "IPv4 address"; + } + leaf ipv6-address { + when "../af-name = 'ipv6'" { + description + "../AFName = 'IPv6'"; + } + type Ipv6-address; + description + "IPv6 address"; + } + } + + grouping SUSPENDED-SESSIONS { + description + "Outgoing session information"; + container host-address { + description + "Host address"; + uses IP-ADDR-T-UNION; + } + leaf connection-id { + type uint8; + description + "Connection ID [1-20]"; + } + leaf host-name { + type string; + description + "Host name"; + } + leaf transport-protocol { + type Transport-service; + description + "Session transport protocol"; + } + leaf is-last-active-session { + type boolean; + description + "True indicates last active session"; + } + leaf idle-time { + type uint32; + units "second"; + description + "Elapsed time since session was suspended (in + seconds)"; + } + } + + grouping CONN-OUT-TABLE-BAG { + description + "All outgoing sessions"; + list outgoing-connection { + description + "List of outgoing sessions"; + uses SUSPENDED-SESSIONS; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper.yang new file mode 100644 index 000000000..293bef7ba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-management-oper.yang @@ -0,0 +1,62 @@ +module Cisco-IOS-XR-tty-management-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-management-oper"; + prefix tty-management-oper; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-tty-server-oper { + prefix a1; + } + include Cisco-IOS-XR-tty-management-oper-sub1 { + revision-date 2019-04-05; + } + + 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 tty-management package operational data. + + This YANG module augments the + Cisco-IOS-XR-tty-server-oper + module with state data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + augment "/a1:tty/a1:vty-lines/a1:vty-line" { + description + "This augment extends the operational data of + 'Cisco-IOS-XR-tty-server-oper'"; + container sessions { + description + "Outgoing sessions"; + uses CONN-OUT-TABLE-BAG; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-cfg.yang new file mode 100644 index 000000000..b75d2221b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-cfg.yang @@ -0,0 +1,231 @@ +module Cisco-IOS-XR-tty-server-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-server-cfg"; + prefix tty-server-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 tty-server package configuration. + + This module contains definitions + for the following management objects: + tty: TTY Line Configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container tty { + description + "TTY Line Configuration"; + container tty-lines { + description + "TTY templates"; + list tty-line { + key "name"; + description + "TTY Line,Use string 'console' to configure a + console line,Use string 'default' to configure + a default line,Use any string to configure a + user defined template"; + container general { + description + "TTY line general configuration"; + leaf length { + type uint32 { + range "0..512"; + } + default "24"; + description + "Number of lines on a screen."; + } + leaf absolute-timeout { + type uint32 { + range "0..10000"; + } + units "minute"; + default "0"; + description + "Absolute timeout for line disconnection"; + } + leaf width { + type uint32 { + range "0..512"; + } + default "80"; + description + "Number of characters on a screen line."; + } + } + container telnet { + description + "Telnet protocol-specific configuration"; + leaf transparent { + type empty; + description + "Send a CR as a CR followed by a NULL instead + of a CRfollowed by a LF"; + } + } + container aaa { + description + "Container class for AAA related TTY + configuration"; + container user-groups { + description + "Users characteristics"; + list user-group { + key "name"; + description + "Group to which the user will belong"; + leaf name { + type xr:Cisco-ios-xr-string; + description + "Name of the group"; + } + leaf category { + type string; + mandatory true; + description + "Specify as 'root-system' for root-system + group and 'other' for remaining groups"; + } + } + } + container authorization { + description + "Authorization parameters"; + leaf exec { + type string; + description + "For starting an exec (shell)"; + } + leaf event-manager { + type string; + description + "Specify 'default' or use an authorization + list with this name"; + } + leaf commands { + type string; + description + "For exec (shell) configuration"; + } + } + container authentication { + description + "Authentication parameters"; + leaf login { + type string; + description + "Authentication list name"; + } + } + container accounting { + description + "Accounting parameters"; + leaf exec { + type string; + description + "For starting an exec (shell)"; + } + leaf commands { + type string; + description + "For exec (shell) configuration"; + } + } + leaf login-timeout { + type uint32 { + range "0..300"; + } + units "second"; + default "30"; + description + "Timeouts for any user input during login + sequence"; + } + leaf secret { + type xr:Md5-password; + description + "Configure a secure one way encrypted password"; + } + leaf password { + type xr:Md5-password; + description + "Configure the password for the user"; + } + } + container exec { + description + "EXEC timeout and timestamp configurtion"; + container timeout { + presence "Indicates a timeout node is configured."; + description + "EXEC Timeout"; + leaf minutes { + type uint32 { + range "0..35791"; + } + units "minute"; + mandatory true; + description + "Timeout in minutes"; + } + leaf seconds { + type uint32 { + range "0..2147483"; + } + units "second"; + mandatory true; + description + "Timeout in seconds"; + } + } + leaf time-stamp { + type boolean; + description + "'True' to Enable & 'False' to Disable time + stamp"; + } + } + leaf name { + type xr:Cisco-ios-xr-string; + description + "Name of the template"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub1.yang new file mode 100644 index 000000000..2944eef27 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub1.yang @@ -0,0 +1,72 @@ +submodule Cisco-IOS-XR-tty-server-oper-sub1 { + belongs-to Cisco-IOS-XR-tty-server-oper { + prefix Cisco-IOS-XR-tty-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-server package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping TTY-CONNECTION-STATS { + description + "TTY connection statistics"; + leaf incoming-host-address { + type string { + length "0..46"; + } + description + "host address(max) of incoming connection"; + } + leaf host-address-family { + type uint32; + description + "host address family of incoming connection"; + } + leaf service { + type uint32; + description + "Input transport"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub2.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub2.yang new file mode 100644 index 000000000..f336d1494 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub2.yang @@ -0,0 +1,60 @@ +submodule Cisco-IOS-XR-tty-server-oper-sub2 { + belongs-to Cisco-IOS-XR-tty-server-oper { + prefix Cisco-IOS-XR-tty-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-server package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping TTY-AAA-STATS { + description + "AAA statistics"; + leaf user-name { + type string; + description + "The authenticated username"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub3.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub3.yang new file mode 100644 index 000000000..43f06a801 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub3.yang @@ -0,0 +1,60 @@ +submodule Cisco-IOS-XR-tty-server-oper-sub3 { + belongs-to Cisco-IOS-XR-tty-server-oper { + prefix Cisco-IOS-XR-tty-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-server package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping TTY-EXEC-PROP-STATS { + description + "exec_prop statistics"; + leaf time-stamp-enabled { + type boolean; + description + "Specifies whether timestamp is enabled or not"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub4.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub4.yang new file mode 100644 index 000000000..2fb6386d2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub4.yang @@ -0,0 +1,113 @@ +submodule Cisco-IOS-XR-tty-server-oper-sub4 { + belongs-to Cisco-IOS-XR-tty-server-oper { + prefix Cisco-IOS-XR-tty-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-server package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping TTY-GENERAL-STATS { + description + "TTY Server general statistics"; + leaf terminal-length { + type uint32; + description + "Length of the terminal or screen display, in + rows"; + } + leaf terminal-width { + type uint32; + description + "Line width"; + } + leaf async-interface { + type boolean; + description + "Usable as async interface"; + } + leaf flow-control-start-character { + type int8; + description + "Software flow control start char"; + } + leaf flow-control-stop-character { + type int8; + description + "Software flow control stop char"; + } + leaf domain-lookup-enabled { + type boolean; + description + "DNS resolution enabled"; + } + leaf motd-banner-enabled { + type boolean; + description + "MOTD banner enabled"; + } + leaf private-flag { + type boolean; + description + "Private flag for the TTY being used"; + } + leaf terminal-type { + type string; + description + "Terminal type of the TTY being used"; + } + leaf absolute-timeout { + type uint32; + description + "Absolute timeout period"; + } + leaf idle-time { + type uint32; + units "second"; + description + "Interval (in seconds) since data was last sent + on the line"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub5.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub5.yang new file mode 100644 index 000000000..f9e9cd1d2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper-sub5.yang @@ -0,0 +1,103 @@ +submodule Cisco-IOS-XR-tty-server-oper-sub5 { + belongs-to Cisco-IOS-XR-tty-server-oper { + prefix Cisco-IOS-XR-tty-server-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-server package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + grouping TTY-RS232-STATS { + description + "RS232 TTY statistics"; + leaf data-bits { + type uint32; + units "bit"; + description + "Number of databits"; + } + leaf exec-disabled { + type boolean; + description + "Exec disabled on TTY"; + } + leaf hardware-flow-control-status { + type uint32; + description + "Setting of hardware flow control"; + } + leaf parity-status { + type uint32; + description + "Setting the parity type"; + } + leaf baud-rate { + type uint32; + units "bit/s"; + description + "Inbound/Outbound baud rate in bps"; + } + leaf stop-bits { + type uint32; + units "bit"; + description + "Number of stopbits"; + } + leaf overrun-error-count { + type uint32; + description + "Count of overrun error"; + } + leaf framing-error-count { + type uint32; + description + "Count of framing error"; + } + leaf parity-error-count { + type uint32; + description + "Count of parity error"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper.yang new file mode 100644 index 000000000..954266315 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-server-oper.yang @@ -0,0 +1,364 @@ +module Cisco-IOS-XR-tty-server-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-server-oper"; + prefix tty-server-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-tty-management-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-tty-server-oper-sub5 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-tty-server-oper-sub4 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-tty-server-oper-sub3 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-tty-server-oper-sub2 { + revision-date 2019-04-05; + } + include Cisco-IOS-XR-tty-server-oper-sub1 { + revision-date 2019-04-05; + } + + 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 tty-server package operational data. + + This module contains definitions + for the following management objects: + tty: TTY Line Configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-02-25 { + description + "Fixed unconstrained data type issues"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-07-30 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + typedef Line-state { + type enumeration { + enum "none" { + value 0; + description + "Line not connected"; + } + enum "registered" { + value 1; + description + "Line registered"; + } + enum "in-use" { + value 2; + description + "Line active and in use"; + } + } + description + "Line state"; + } + + typedef Session-operation { + type enumeration { + enum "none" { + value 0; + description + "No sessions on the line"; + } + enum "setup" { + value 1; + description + "Session getting set up"; + } + enum "shell" { + value 2; + description + "Session active with a shell"; + } + enum "transitioning" { + value 3; + description + "Session in transitioning phase"; + } + enum "packet" { + value 4; + description + "Session ready to receive packets"; + } + } + description + "Session operation"; + } + + grouping STATE { + description + "Common node of console-line, vty-line, + auxiliary-line"; + container state { + description + "Line state information"; + container template { + description + "Information related to template applied to the + line"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..990"; + } + description + "Name of the template"; + } + } + container general { + description + "General information"; + leaf operation { + type Session-operation; + description + "application running of on the tty line"; + } + leaf general-state { + type Line-state; + description + "State of the line"; + } + } + } + } + + grouping GENERAL-STATISTICS { + description + "Common node of console-statistics, vty-statistics + , auxiliary-statistics"; + container general-statistics { + description + "General statistics of line"; + uses TTY-GENERAL-STATS; + } + } + + grouping AAA { + description + "Common node of console-statistics, vty-statistics + , auxiliary-statistics"; + container aaa { + description + "AAA related statistics"; + uses TTY-AAA-STATS; + } + } + + grouping RS232 { + description + "Common node of console-statistics, + auxiliary-statistics"; + container rs232 { + description + "RS232 statistics of console line"; + uses TTY-RS232-STATS; + } + } + + grouping EXEC { + description + "Common node of console-statistics, vty-statistics + , auxiliary-statistics"; + container exec { + description + "Exec related statistics"; + uses TTY-EXEC-PROP-STATS; + } + } + + grouping CONFIGURATION { + description + "Common node of console-line, vty-line, + auxiliary-line"; + container configuration { + description + "Configuration information of the line"; + container connection-configuration { + description + "Conection configuration information"; + container transport-input { + description + "Protocols to use when connecting to the + terminal server"; + leaf select { + type dt1:Tty-transport-protocol-select; + default "all"; + description + "Choose transport protocols"; + } + leaf protocol1 { + when "../select = 'some'" { + description + "../Select = Some"; + } + type dt1:Tty-transport-protocol; + description + "Transport protocol1"; + } + leaf protocol2 { + when "../select = 'some'" { + description + "../Select = Some"; + } + type dt1:Tty-transport-protocol; + description + "Transport protocol2"; + } + leaf none { + type uint32 { + range "0..4294967295"; + } + description + "Not used"; + } + } + leaf acl-out { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "ACL for outbound traffic"; + } + leaf acl-in { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "ACL for inbound traffic"; + } + } + } + } + + container tty { + config false; + description + "TTY Line Configuration"; + container console-nodes { + description + "List of Nodes for console"; + list console-node { + key "id"; + description + "Console line configuration on a node"; + container console-line { + description + "Details about console line"; + container console-statistics { + description + "Statistics of the console line"; + uses RS232; + uses GENERAL-STATISTICS; + uses EXEC; + uses AAA; + } + uses STATE; + uses CONFIGURATION; + } + leaf id { + type xr:Node-id; + description + "Node ID"; + } + } + } + container vty-lines { + description + "List of VTY lines"; + list vty-line { + key "line-number"; + description + "VTY Line"; + container vty-statistics { + description + "Statistics of the VTY line"; + container connection { + description + "Connection related statistics"; + uses TTY-CONNECTION-STATS; + } + uses GENERAL-STATISTICS; + uses EXEC; + uses AAA; + } + leaf line-number { + type uint32 { + range "0..4294967295"; + } + description + "VTY Line number"; + } + uses STATE; + uses CONFIGURATION; + } + } + container auxiliary-nodes { + description + "List of Nodes attached with an auxiliary line"; + list auxiliary-node { + key "id"; + description + "Line configuration on a node"; + container auxiliary-line { + description + "Details about auxiliary line"; + container auxiliary-statistics { + description + "Statistics of the auxiliary line"; + uses RS232; + uses GENERAL-STATISTICS; + uses EXEC; + uses AAA; + } + uses STATE; + uses CONFIGURATION; + } + leaf id { + type xr:Node-id; + description + "Node ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper-sub1.yang new file mode 100644 index 000000000..0885e6535 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper-sub1.yang @@ -0,0 +1,77 @@ +submodule Cisco-IOS-XR-tty-show-line-oper-sub1 { + belongs-to Cisco-IOS-XR-tty-show-line-oper { + prefix Cisco-IOS-XR-tty-show-line-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-show-line package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "yang support for show line"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SHOWLINE-ENTRY { + description + "Per Line Information"; + leaf tty { + type string; + description + "Tty id"; + } + leaf speed { + type uint32; + description + "Baud rate"; + } + leaf hw-overrun-errors { + type uint32; + description + "Hardware overruns"; + } + leaf sw-overrun-errors { + type uint32; + description + "Software overruns"; + } + leaf ingress-access-list { + type string; + description + "ingress access list"; + } + leaf egress-access-list { + type string; + description + "egress access list"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper.yang new file mode 100644 index 000000000..da4b66256 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-line-oper.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-tty-show-line-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-show-line-oper"; + prefix tty-show-line-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tty-show-line-oper-sub1 { + revision-date 2021-08-27; + } + + 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 tty-show-line package operational data. + + This module contains definitions + for the following management objects: + show-line: Show line statistics + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "yang support for show line"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-line { + config false; + description + "Show line statistics"; + container lines { + description + "Show line statistics"; + list line { + key "line-id"; + description + "Show line statistics"; + leaf line-id { + type uint32 { + range "0..100"; + } + description + "Line ID"; + } + uses SHOWLINE-ENTRY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper-sub1.yang new file mode 100644 index 000000000..30b9dfa89 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper-sub1.yang @@ -0,0 +1,144 @@ +submodule Cisco-IOS-XR-tty-show-terminal-oper-sub1 { + belongs-to Cisco-IOS-XR-tty-show-terminal-oper { + prefix Cisco-IOS-XR-tty-show-terminal-oper; + } + + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tty-show-terminal package operational data. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "yang support for show terminal"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Parity { + type enumeration { + enum "empty" { + value 0; + description + "Empty"; + } + enum "even" { + value 1; + description + "Even"; + } + enum "odd" { + value 2; + description + "Odd"; + } + enum "space" { + value 3; + description + "Space"; + } + enum "mark" { + value 4; + description + "Mark"; + } + enum "no" { + value 5; + description + "No"; + } + } + description + "parity type"; + } + + grouping SHOWTERMINAL-ENTRY { + description + "Per Line Information"; + leaf line { + type string; + description + "Line Number"; + } + leaf location { + type string; + description + "IP address of remote login host"; + } + leaf type { + type string; + description + "Type"; + } + leaf length { + type uint32; + description + "number of lines"; + } + leaf width { + type uint32; + description + "number of columns"; + } + leaf speed { + type uint32; + description + "Baud rate"; + } + leaf parity { + type Parity; + description + "parity"; + } + leaf stop-bits { + type uint32; + description + "stop bits"; + } + leaf data-bits { + type uint32; + description + "data bits"; + } + leaf template { + type string; + description + "line template"; + } + leaf timestamp { + type boolean; + description + "timestamp enabled or disabled"; + } + leaf no-exec { + type boolean; + description + "spawning exec disallowed"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper.yang new file mode 100644 index 000000000..757984da1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-show-terminal-oper.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-tty-show-terminal-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-show-terminal-oper"; + prefix tty-show-terminal-oper; + + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tty-show-terminal-oper-sub1 { + revision-date 2021-08-27; + } + + 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 tty-show-terminal package operational data. + + This module contains definitions + for the following management objects: + show-terminal: Show terminal statistics + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-27 { + description + "yang support for show terminal"; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container show-terminal { + config false; + description + "Show terminal statistics"; + container terminals { + description + "Show terminal statistics"; + list terminal { + key "terminal-id"; + description + "Show terminal statistics"; + leaf terminal-id { + type uint32 { + range "0..4294967295"; + } + description + "Terminal ID"; + } + uses SHOWTERMINAL-ENTRY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tty-vty-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-vty-cfg.yang new file mode 100644 index 000000000..04454af35 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tty-vty-cfg.yang @@ -0,0 +1,105 @@ +module Cisco-IOS-XR-tty-vty-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tty-vty-cfg"; + prefix tty-vty-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 tty-vty package configuration. + + This module contains definitions + for the following management objects: + vty: VTY Pools configuration + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-23 { + description + "Descriptions updated."; + semver:module-version "1.0.1"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-09-16 { + description + "Descriptions updated."; + } + revision 2015-01-07 { + description + "IOS XR 5.3.1 revision."; + } + + container vty { + description + "VTY Pools configuration"; + container vty-pools { + description + "List of VTY Pools"; + list vty-pool { + key "pool-name"; + description + "VTY Pool"; + leaf pool-name { + type xr:Cisco-ios-xr-string; + description + "For configuring range for default pool use + 'default',For configuring range for + event-manager pool use 'eem',For configuring + range for any user defined pool use any other + string"; + } + leaf first-vty { + type uint32; + mandatory true; + description + "First VTY number,For default VTY use 0,For + user-defined use 5,For fault-manager use 100"; + } + leaf last-vty { + type uint32; + mandatory true; + description + "Last VTY number,For default configure between + 0-99,For user-defined configure between 5-99 + ,For event-manager configure between 100-105"; + } + leaf line-template { + type string; + description + "Name of line template"; + } + leaf none { + type string; + description + "Empty Option"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-cfg.yang new file mode 100644 index 000000000..8c6b84ebc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-cfg.yang @@ -0,0 +1,318 @@ +module Cisco-IOS-XR-tunnel-gre-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-gre-cfg"; + prefix tunnel-gre-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 tunnel-gre package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-16 { + description + "Added new option under Destination node for tunnel destination address group feature + 2022-02-26 + Added new option under Source node for tunnel source direct feature"; + semver:module-version "2.1.0"; + } + revision 2020-02-02 { + description + "Changed TTL from leaf to container"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2017-05-01 { + description + "Fixing backward compatibility error in module."; + } + revision 2016-05-25 { + description + "Initial version"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tunnel-mode-direction { + type enumeration { + enum "decap" { + value 1; + description + "Decap-only tunnel"; + } + enum "encap" { + value 2; + description + "Encap-only tunnel"; + } + } + description + "Tunnel mode direction"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container tunnel-ip { + description + "IP over GRE encapsulation"; + container ttl { + description + "Configure the time-to-live for packets sent + over this tunnel"; + leaf value { + type uint32 { + range "1..255"; + } + description + "Enter the TTL value"; + } + leaf disable { + type empty; + description + "Always set to false"; + } + } + container mode { + description + "Tunnel encapsulation method"; + leaf value { + type uint32; + description + "GRE IPV4 - 1, GRE IPV6 - 2, MGRE IPV4 - 3, + MGRE IPV6 -4. IPV4 - 5, IPV6 - 6"; + } + leaf mode-direction { + type Tunnel-mode-direction; + description + "Tunnel Mode Direction"; + } + } + container source { + description + "Configure source of tunnel"; + leaf type { + type uint32; + description + "1 for Interface Name, 2 for IPv4 Address, 3 + for IPv6 Address, 4 for Direct"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IPV4 address of the tunnel source"; + } + leaf interface-name { + type xr:Interface-name; + description + "Name of tunnel source interface"; + } + leaf ipv6-address { + type string; + description + "IPV6 address of the tunnel source"; + } + } + container key { + description + "Configure the key value for packets sent over + this tunnel"; + leaf entropy { + type empty; + description + "Always set to true"; + } + leaf value { + type uint32 { + range "0..4294967295"; + } + description + "Enter the KEY value"; + } + } + container keepalive { + description + "Enable keepalive packets on this tunnel"; + leaf keep-alive-period { + type uint32 { + range "1..32767"; + } + description + "Keepalive period in seconds (default 10 + seconds)"; + } + leaf keep-alive-retries { + type uint32 { + range "1..255"; + } + description + "Number of retries (default 3)"; + } + } + container bfd { + description + "Configure BFD for tunnel"; + container keepalive-period { + description + "Configure keepalive period"; + leaf value { + type uint32 { + range "1..32767"; + } + description + "Keepalive period in seconds"; + } + leaf disable { + type empty; + description + "Always set to false"; + } + } + container destination { + description + "Configure BFD destination for tunnel"; + leaf type { + type uint32; + description + "1 for IPv4 Address, 2 for IPv6 Address"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IPV4 address of the BFD destination"; + } + leaf ipv6-address { + type string; + description + "IPV6 address of the BFD destination"; + } + } + leaf minimum-interval { + type uint32 { + range "150..30000"; + } + description + "Configure minimum interval for BFD"; + } + leaf retry { + type uint32 { + range "1..255"; + } + description + "Configure Number of retries for BFD Keepalive"; + } + leaf multiplier { + type uint32 { + range "3..50"; + } + description + "Configure BFD multiplier"; + } + } + container destination { + description + "Configure destination of tunnel"; + leaf type { + type uint32; + description + "1 for IPv4 Address, 2 for IPv6 Address, 3 for + IPv4 object-group, 4 for IPv6 object-group"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IPV4 address of the tunnel destination"; + } + leaf ipv6-address { + type string; + description + "IPV6 address of the tunnel destination"; + } + leaf address-mask { + type inet:ipv4-address-no-zone; + description + "IPv4 prefix length of the tunnel destination"; + } + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "Prefix-list to validate destination's + resolving prefix"; + } + leaf object-group { + type string { + length "1..64"; + } + description + "Object-group name of the tunnel destination"; + } + } + leaf allow-key { + type empty; + description + "Enable flag bit to allow packets with GRE key"; + } + leaf tunnel-vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Tunnel vrf label name"; + } + leaf tos { + type uint32 { + range "0..255"; + } + description + "Configure Type of Service bits for this tunnel"; + } + leaf disable { + type uint32; + description + "Disable DF bit (i.e. allow fragmentation)"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-datatypes.yang new file mode 100644 index 000000000..53511ba2b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-gre-datatypes.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-tunnel-gre-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-gre-datatypes"; + prefix tunnel-gre-datatypes; + + 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 generally useful + derived YANG data types. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tunl-addr-family-enum { + type enumeration { + enum "inet" { + value 2; + description + "IPv4 address Family"; + } + enum "inet6" { + value 10; + description + "IPv6 address Family"; + } + } + description + "Tunl addr family enum"; + } + + typedef Tunl-id-range { + type uint32 { + range "0..131070"; + } + description + "Tunl id range"; + } + + typedef Tunl-addr-family-list { + type string { + pattern "(ipv4)|(ipv6)|(all)"; + } + description + "ipv4: Tunnel Transport Protocol Address Family + IPv4, ipv6: Tunnel Transport Protocol Address + Family IPv6, all: Tunnel Transport Protocol + Address Families all"; + } + + typedef Tunl-addr-length-range { + type uint32 { + range "1..128"; + } + description + "Tunl addr length range"; + } + + typedef Tunl-mode-enum { + type enumeration { + enum "gre-ipv4" { + value 1; + description + "GRE over IPv4 encapsulation"; + } + enum "gre-ipv6" { + value 2; + description + "GRE over IPv6 encapsulation"; + } + enum "mgre-ipv4" { + value 3; + description + "Multipoint GRE over IPv4 encapsulation"; + } + enum "mgre-ipv6" { + value 4; + description + "Multipoint GRE over IPv6 encapsulation"; + } + enum "ipv4" { + value 5; + description + "Generic packet tunneling over IPv4 + encapsulation"; + } + enum "ipv6" { + value 6; + description + "Generic packet tunneling over IPv6 + encapsulation"; + } + } + description + "Tunl mode enum"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper-sub1.yang new file mode 100644 index 000000000..6ae1fa21f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper-sub1.yang @@ -0,0 +1,665 @@ +submodule Cisco-IOS-XR-tunnel-ip-ea-oper-sub1 { + belongs-to Cisco-IOS-XR-tunnel-ip-ea-oper { + prefix Cisco-IOS-XR-tunnel-ip-ea-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tunnel-ip-ea package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-28 { + description + "Modified name of field for destination address group enabled + 2022-08-25 + Added an entry for tunnel destination address group + 2022-02-26 + Added a new bag for source direct + 2021-10-19 + Added an entry for ipsec and changed ea_flags datatype in bag"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tunl-gre-plat-upd { + type enumeration { + enum "tunl-gre-plat-upd-all" { + value -1; + description + "tunl gre plat upd all"; + } + enum "tunl-gre-plat-upd-none" { + value 0; + description + "tunl gre plat upd none"; + } + enum "tunl-gre-plat-upd-mode" { + value 1; + description + "tunl gre plat upd mode"; + } + enum "tunl-gre-plat-upd-tunl-src-addr" { + value 2; + description + "tunl gre plat upd tunl src addr"; + } + enum "tunl-gre-plat-upd-tunl-dst-addr" { + value 4; + description + "tunl gre plat upd tunl dst addr"; + } + enum "tunl-gre-plat-upd-ttl" { + value 8; + description + "tunl gre plat upd ttl"; + } + enum "tunl-gre-plat-upd-tos-present" { + value 16; + description + "tunl gre plat upd tos present"; + } + enum "tunl-gre-plat-upd-tos" { + value 32; + description + "tunl gre plat upd tos"; + } + enum "tunl-gre-plat-upd-key-present" { + value 64; + description + "tunl gre plat upd key present"; + } + enum "tunl-gre-plat-upd-key" { + value 128; + description + "tunl gre plat upd key"; + } + enum "tunl-gre-plat-upd-enable-checksum" { + value 256; + description + "tunl gre plat upd enable checksum"; + } + enum "tunl-gre-plat-upd-ka-rx-enabled" { + value 512; + description + "tunl gre plat upd ka rx enabled"; + } + enum "tunl-gre-plat-upd-bandwidth" { + value 1024; + description + "tunl gre plat upd bandwidth"; + } + enum "tunl-gre-plat-upd-line-proto-up" { + value 2048; + description + "tunl gre plat upd line proto up"; + } + enum "tunl-gre-plat-upd-dfbit" { + value 4096; + description + "tunl gre plat upd dfbit"; + } + enum "tunl-gre-plat-upd-mtu" { + value 8192; + description + "tunl gre plat upd mtu"; + } + enum "tunl-gre-plat-upd-trans-vrf" { + value 16384; + description + "tunl gre plat upd trans vrf"; + } + enum "tunl-gre-plat-upd-key-enable" { + value 32768; + description + "tunl gre plat upd key enable"; + } + enum "tunl-gre-plat-upd-intf-ready" { + value 65536; + description + "tunl gre plat upd intf ready"; + } + enum "tunl-ip-plat-upd-output-if" { + value 131072; + description + "tunl ip plat upd output if"; + } + enum "tunl-ip-plat-upd-output-phy-if" { + value 262144; + description + "tunl ip plat upd output phy if"; + } + enum "tunl-ip-plat-upd-encap-in-sw" { + value 524288; + description + "tunl ip plat upd encap in sw"; + } + enum "tunl-ip-plat-upd-ipsec-enabled" { + value 1048576; + description + "tunl ip plat upd ipsec enabled"; + } + } + description + "Tunl gre plat upd"; + } + + typedef Tunl-ip-mode-dir { + type enumeration { + enum "tunl-ip-mode-dir-none" { + description + "tunl ip mode dir none"; + } + enum "tunl-ip-mode-dir-decap" { + description + "tunl ip mode dir decap"; + } + enum "tunl-ip-mode-dir-encap" { + description + "tunl ip mode dir encap"; + } + enum "tunl-ip-mode-dir-max" { + description + "tunl ip mode dir max"; + } + } + description + "Tunl ip mode dir"; + } + + typedef Tunl-in6-addr { + type inet:ipv6-address; + description + "Tunl in6 addr"; + } + + typedef Tunl-in-addr { + type inet:ipv4-address; + description + "Tunl in addr"; + } + + typedef Tunl-af-id { + type enumeration { + enum "tunl-af-id-none" { + value 0; + description + "Unspecified AFI"; + } + enum "tunl-af-id-ipv4" { + value 2; + description + "IPv4 AFI"; + } + enum "tunl-af-id-ipv6" { + value 10; + description + "IPv6 AFI"; + } + } + description + "Tunl af id"; + } + + typedef Tunl-ip-mode { + type enumeration { + enum "tunl-ip-mode-none" { + value 0; + description + "tunl ip mode none"; + } + enum "tunl-ip-mode-gr-eo-ipv4" { + value 1; + description + "tunl ip mode gr eo ipv4"; + } + enum "tunl-ip-mode-gr-eo-ipv6" { + value 2; + description + "tunl ip mode gr eo ipv6"; + } + enum "tunl-ip-mode-mgr-eo-ipv4" { + value 3; + description + "tunl ip mode mgr eo ipv4"; + } + enum "tunl-ip-mode-mgr-eo-ipv6" { + value 4; + description + "tunl ip mode mgr eo ipv6"; + } + enum "tunl-ip-mode-ipv4" { + value 5; + description + "tunl ip mode ipv4"; + } + enum "tunl-ip-mode-ipv6" { + value 6; + description + "tunl ip mode ipv6"; + } + enum "tunl-ip-mode-ipseco-ipv4" { + value 7; + description + "tunl ip mode ipseco ipv4"; + } + enum "tunl-ip-mode-max" { + value 8; + description + "tunl ip mode max"; + } + } + description + "Tunl ip mode"; + } + + grouping TUNL-GRE-EA-DIRECT-ADDR { + description + "TUNL GRE EA DIRECT ADDR"; + container address { + description + "Address"; + uses IP-ADDR-UNION; + } + leaf addr-state { + type uint8; + description + "Address state"; + } + leaf platform-status { + type uint8; + description + "Platform status"; + } + } + + grouping TUNL-GRE-EA-SRC-DIRECT { + description + "TUNL GRE EA SRC DIRECT"; + leaf ifh { + type xr:Interface-name; + description + "Interface handle"; + } + list ipv4-address { + description + "IPv4 Address array"; + uses TUNL-GRE-EA-DIRECT-ADDR; + } + list ipv6-address { + description + "IPv6 Address array"; + uses TUNL-GRE-EA-DIRECT-ADDR; + } + } + + grouping TUNL-GRE-EA-SRC-DIRECT-ARRAY { + description + "Array of SRC Direct entries BAG"; + leaf ipv4-ifh { + type xr:Interface-name; + description + "IPv4 source direct tunnel handle"; + } + leaf ipv6-ifh { + type xr:Interface-name; + description + "IPv6 source direct tunnel handle"; + } + leaf ipv4-addresses { + type uint8; + description + "Number of IPv4 addresses"; + } + leaf ipv6-addresses { + type uint8; + description + "Number of IPv6 addresses"; + } + list sourcedirect-array { + description + "Array of source direct db"; + uses TUNL-GRE-EA-SRC-DIRECT; + } + } + + grouping TUNL-IP-EA-EDM { + description + "TUNL IP EA EDM"; + container source-address-xr { + description + "Source Address"; + uses IP-ADDR-UNION; + } + container destination-address-xr { + description + "Destination Address"; + uses IP-ADDR-UNION; + } + leaf interface-type { + type xr:Interface-name; + description + "Interface Type"; + } + leaf destination-address-length { + type uint8; + description + "Destination Address Length"; + } + leaf tunnel-vrf-table-id { + type uint32; + description + "Tunnel VRF table ID"; + } + leaf tunnel-mode-xr { + type Tunl-ip-mode; + description + "Mode of Tunnel"; + } + leaf tunnel-mode-direction { + type Tunl-ip-mode-dir; + description + "Mode direction"; + } + leaf bandwidth { + type uint32; + description + "Bandwidth"; + } + leaf key { + type uint32; + description + "Key Value for GRE Packet"; + } + leaf key-entropy-length { + type uint8; + description + "Key entropy length for GRE Packet"; + } + leaf platform-tunnel-id { + type uint16; + description + "Platform Tunnel ID"; + } + leaf hw-retry-flags { + type Tunl-gre-plat-upd; + description + "HW Retry Flags"; + } + leaf flags { + type uint32; + description + "Flags for don't fragment, TOS reflection"; + } + leaf mtu { + type uint16; + description + "Maximum Transmission Unit"; + } + leaf tos { + type uint8; + description + "Type Of Service"; + } + leaf ttl { + type uint8; + description + "Time To Live"; + } + leaf encapsulation-state { + type uint8; + description + "Encapsulation State"; + } + leaf adjacent-flags { + type uint32; + description + "Adjacent Flags"; + } + leaf output-ifhandle { + type xr:Interface-name; + description + "O/p Interface handle"; + } + leaf next-pointer { + type uint32; + description + "Pointer to next Node"; + } + leaf ip-sec-enabled { + type uint8; + description + "IPSec profile enabled"; + } + leaf source-direct { + type uint8; + description + "Source direct enabled"; + } + leaf destination-address-group-enabled { + type uint8; + description + "Destination address group enabled"; + } + leaf num-dst-addr-grp-entries { + type uint16; + description + "Number of destination address group entries"; + } + leaf num-dst-addr-grp-pd-failed { + type uint16; + description + "Destination address group PD programming failed + count"; + } + } + + grouping TUNL-GRE-EA-SHM-EDM { + description + "TUNL GRE EA SHM EDM"; + leaf shm-intialized { + type uint8; + description + "Shm Initialization"; + } + leaf sh-mwin-id { + type uint32; + description + "Shmwin Id"; + } + leaf shm-version { + type uint32; + description + "Shm Version"; + } + leaf shm-base-addr { + type uint32; + description + "Shm Base Address"; + } + leaf platform-info { + type uint64; + description + "Platform Info"; + } + leaf tunnel-ipqt { + type uint64; + description + "Tunnel IP QT"; + } + leaf tunnel-idb { + type uint64; + description + "Tunnel IP IDB"; + } + leaf tunnel-idb-dummy { + type uint64; + description + "Tunnel IP IDB Dummy"; + } + } + + grouping TUNL-P2MP-EA-EDM-OVERLAY { + description + "TUNL P2MP EA EDM OVERLAY"; + container overlay-address { + description + "Overlay Address"; + uses IP-ADDR-UNION; + } + leaf adjacency { + type uint32; + description + "Adjacency"; + } + leaf stale-flag { + type boolean; + description + "Stale Flag"; + } + } + + grouping IP-ADDR-UNION { + description + "IP ADDR UNION"; + leaf afi { + type Tunl-af-id; + description + "AFI"; + } + leaf ipv4 { + when "../afi = 'tunl-af-id-ipv4'" { + description + "../AFI = 'TUNL_AF_ID_IPV4'"; + } + type Tunl-in-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../afi = 'tunl-af-id-ipv6'" { + description + "../AFI = 'TUNL_AF_ID_IPV6'"; + } + type Tunl-in6-addr; + description + "IPv6 address type"; + } + } + + grouping TUNL-P2MP-EA-EDM-TED-DB { + description + "TUNL P2MP EA EDM TED DB"; + container transport-address { + description + "Transport Address"; + uses IP-ADDR-UNION; + } + list overlay-array { + description + "Overlay Address"; + uses TUNL-P2MP-EA-EDM-OVERLAY; + } + } + + grouping TUNL-P2MP-EA-EDM-TED-DB-ARRAY { + description + "Array of TED DB entries BAG"; + leaf tunnel-id-xr { + type uint32; + description + "Tunnel id"; + } + leaf interface-type { + type xr:Interface-name; + description + "Interface Type"; + } + leaf tunnel-mode { + type Tunl-ip-mode; + description + "Mode of Tunnel"; + } + leaf endpt-count { + type uint32; + description + "Endpoint count"; + } + list ted-db-array { + description + "Array of EA TED DB"; + uses TUNL-P2MP-EA-EDM-TED-DB; + } + } + + grouping TUNL-IP-EA-SUM { + description + "TUNL IP EA SUM"; + leaf eaidb-count { + type uint16; + description + "EA IDB count"; + } + leaf eaqt-count { + type uint16; + description + "EA QT count"; + } + leaf num-idbs-to-retry-upd { + type uint16; + description + "Number of IDBs to retry PD update"; + } + leaf num-idbs-to-retry-del { + type uint16; + description + "Number of IDBs to retry PD delete"; + } + leaf num-idbs-retried-upd { + type uint16; + description + "Number of IDBs retried PD update"; + } + leaf num-idbs-retried-del { + type uint16; + description + "Number of IDBs retried PD delete"; + } + leaf num-idbs-retry-failed { + type uint16; + description + "Number of IDBs retry failed"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper.yang new file mode 100644 index 000000000..8750cb1e0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ea-oper.yang @@ -0,0 +1,214 @@ +module Cisco-IOS-XR-tunnel-ip-ea-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-ip-ea-oper"; + prefix tunnel-ip-ea-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-tunnel-gre-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-tunnel-ip-ea-oper-sub1 { + revision-date 2022-11-28; + } + + 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 tunnel-ip-ea package operational data. + + This module contains definitions + for the following management objects: + tunnel-ip-ea: Tunnel IP EA parameters + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-28 { + description + "Modified name of field for destination address group enabled + 2022-08-25 + Added an entry for tunnel destination address group + 2022-02-26 + Added a new bag for source direct + 2021-10-19 + Added an entry for ipsec and changed ea_flags datatype in bag"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container tunnel-ip-ea { + config false; + description + "Tunnel IP EA parameters"; + container nodes { + description + "Node table for node-specific operational data"; + list node { + key "node-name"; + description + "Node-specific data for a particular node"; + container summary { + description + "EA summary information"; + uses TUNL-IP-EA-SUM; + } + container endpoints { + description + "GRE EA DB endpoints DB"; + list endpoint { + description + "GRE EA DB endpoints DB"; + leaf tunnel-id { + type dt1:Tunl-id-range; + description + "Tunnel ID"; + } + leaf transport-ip-address { + type inet:ip-address-no-zone; + description + "Transport IP Address"; + } + leaf overlay-ip-address { + type inet:ip-address-no-zone; + description + "Overlay IP Address"; + } + uses TUNL-P2MP-EA-EDM-TED-DB-ARRAY; + } + } + container shared-memory-summary { + description + "EA shared memory information"; + uses TUNL-GRE-EA-SHM-EDM; + } + container qual-table { + description + "EA QT parameters"; + container tunnel-ids { + description + "Tunnel ID list"; + list tunnel-id { + key "tid"; + description + "Tunnel interface id value"; + leaf tid { + type dt1:Tunl-id-range; + description + "Tunnel ID"; + } + uses TUNL-IP-EA-EDM; + } + } + container qual-table-params { + description + "Qualification Table Parameter list"; + list qual-table-param { + description + "Qualification Table parameters"; + leaf source-address { + type inet:ip-address-no-zone; + description + "Source IP address"; + } + leaf destination-address { + type inet:ip-address-no-zone; + description + "Destination IP address"; + } + leaf rsi-table-id { + type uint32 { + range "0..4294967295"; + } + description + "RSI Table ID"; + } + leaf tunnel-key { + type uint32 { + range "0..4294967295"; + } + description + "TunnelKey"; + } + leaf tunnel-mode { + type dt1:Tunl-mode-enum; + description + "Tunnel Mode"; + } + uses TUNL-IP-EA-EDM; + } + } + } + container source-direct { + description + "EA source direct address information"; + uses TUNL-GRE-EA-SRC-DIRECT-ARRAY; + } + container database { + description + "EA database parameters"; + container interface-names { + description + "Interface Names List"; + list interface-name { + key "ifname"; + description + "Interface Name"; + leaf ifname { + type xr:Interface-name; + description + "Tunnel Interface Name"; + } + uses TUNL-IP-EA-EDM; + } + } + container tunnel-ids { + description + "Tunnel ID list"; + list tunnel-id { + key "tid"; + description + "Tunnel ID"; + leaf tid { + type dt1:Tunl-id-range; + description + "Tunnel ID"; + } + uses TUNL-IP-EA-EDM; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper-sub1.yang new file mode 100644 index 000000000..4715b8618 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper-sub1.yang @@ -0,0 +1,1101 @@ +submodule Cisco-IOS-XR-tunnel-ip-ma-oper-sub1 { + belongs-to Cisco-IOS-XR-tunnel-ip-ma-oper { + prefix Cisco-IOS-XR-tunnel-ip-ma-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tunnel-ip-ma package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-25 { + description + "Added an entry for tunnel destination address group + 2022-02-26 + Added a field in tunl_gre_ma_edm_idb structure for source direct address + 2021-09-23 + Added entries for ipsec related params in interface database bag"; + semver:module-version "2.0.0"; + } + revision 2021-02-25 { + description + "Added an entry for src addr db in bag"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-10-09 { + description + "Modified hierarchy for endpoints, gspnode-db and application-db-stats"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Tunl-gre-ka-states { + type enumeration { + enum "tunl-gre-ka-state-disabled" { + description + "tunl gre ka state disabled"; + } + enum "tunl-gre-ka-state-enabled" { + description + "tunl gre ka state enabled"; + } + enum "tunl-gre-ka-state-success" { + description + "tunl gre ka state success"; + } + enum "tunl-gre-ka-state-check" { + description + "tunl gre ka state check"; + } + enum "tunl-gre-ka-state-failed" { + description + "tunl gre ka state failed"; + } + enum "tunl-gre-ka-state-max" { + description + "tunl gre ka state max"; + } + } + description + "Tunl gre ka states"; + } + + typedef Tunl-ip-tunl-flag-bits { + type enumeration { + enum "tunl-ip-flag-bits-none" { + value 0; + description + "tunl ip flag bits none"; + } + enum "tunl-ip-flag-bfd-state-up" { + value 1; + description + "tunl ip flag bfd state up"; + } + enum "tunl-ip-flag-bfd-state-down" { + value 2; + description + "tunl ip flag bfd state down"; + } + enum "tunl-ip-flag-bfd-period" { + value 4; + description + "tunl ip flag bfd period"; + } + enum "tunl-ip-flag-bfd-retry" { + value 8; + description + "tunl ip flag bfd retry"; + } + enum "tunl-ip-flag-bfd-set" { + value 16; + description + "tunl ip flag bfd set"; + } + enum "tunl-ip-flag-bfd-running" { + value 32; + description + "tunl ip flag bfd running"; + } + } + description + "Tunl ip tunl flag bits"; + } + + typedef Tunl-ip-transport-proto { + type enumeration { + enum "tunl-ip-transport-ipv4" { + value 0; + description + "tunl ip transport ipv4"; + } + enum "tunl-ip-transport-ipv6" { + value 1; + description + "tunl ip transport ipv6"; + } + enum "tunl-ip-transport-max" { + value 2; + description + "tunl ip transport max"; + } + } + description + "Tunl ip transport proto"; + } + + typedef Tunl-ip-tunl-flag { + type enumeration { + enum "tunl-ip-flag-dest-connected" { + value -2147483648; + description + "tunl ip flag dest connected"; + } + enum "tunl-ip-flag-none" { + value 0; + description + "tunl ip flag none"; + } + enum "tunl-ip-flag-dfbit-disable" { + value 1; + description + "tunl ip flag dfbit disable"; + } + enum "tunl-ip-flag-ka" { + value 2; + description + "tunl ip flag ka"; + } + enum "tunl-ip-flag-tos" { + value 4; + description + "tunl ip flag tos"; + } + enum "tunl-ip-flag-gre-key" { + value 8; + description + "tunl ip flag gre key"; + } + enum "tunl-ip-flag-src-up" { + value 16; + description + "tunl ip flag src up"; + } + enum "tunl-ip-flag-dest-reach" { + value 32; + description + "tunl ip flag dest reach"; + } + enum "tunl-ip-flag-dest-reach-conv" { + value 64; + description + "tunl ip flag dest reach conv"; + } + enum "tunl-ip-flag-dest-local" { + value 128; + description + "tunl ip flag dest local"; + } + enum "tunl-ip-flag-dest-tunl" { + value 256; + description + "tunl ip flag dest tunl"; + } + enum "tunl-ip-flag-dest-db-added" { + value 512; + description + "tunl ip flag dest db added"; + } + enum "tunl-ip-flag-intf-state-up" { + value 1024; + description + "tunl ip flag intf state up"; + } + enum "tunl-ip-flag-intf-state-admin-down" { + value 2048; + description + "tunl ip flag intf state admin down"; + } + enum "tunl-ip-flag-bc-state-up" { + value 4096; + description + "tunl ip flag bc state up"; + } + enum "tunl-ip-flag-ipv4-caps" { + value 8192; + description + "tunl ip flag ipv4 caps"; + } + enum "tunl-ip-flag-ipv6-caps" { + value 16384; + description + "tunl ip flag ipv6 caps"; + } + enum "tunl-ip-flag-mpls-caps" { + value 32768; + description + "tunl ip flag mpls caps"; + } + enum "tunl-ip-flag-src-dst-inval" { + value 65536; + description + "tunl ip flag src dst inval"; + } + enum "tunl-ip-flag-trans-vrf" { + value 131072; + description + "tunl ip flag trans vrf"; + } + enum "tunl-ip-flag-gre-key-enable" { + value 262144; + description + "tunl ip flag gre key enable"; + } + enum "tunl-ip-flag-src-intf-ip-vrf-valid" { + value 524288; + description + "tunl ip flag src intf ip vrf valid"; + } + enum "tunl-ip-flag-decap" { + value 1048576; + description + "tunl ip flag decap"; + } + enum "tunl-ip-flag-line-state" { + value 2097152; + description + "tunl ip flag line state"; + } + enum "tunl-ip-flag-mark" { + value 4194304; + description + "tunl ip flag mark"; + } + enum "tunl-ip-flag-encap-in-sw" { + value 8388608; + description + "tunl ip flag encap in sw"; + } + enum "tunl-ip-flag-dfbit-copy" { + value 16777216; + description + "tunl ip flag dfbit copy"; + } + enum "tunl-ip-flag-mtu-cfg" { + value 33554432; + description + "tunl ip flag mtu cfg"; + } + enum "tunl-ip-flag-item-exists" { + value 67108864; + description + "tunl ip flag item exists"; + } + enum "tunl-ip-flag-create-if" { + value 134217728; + description + "tunl ip flag create if"; + } + enum "tunl-ip-flag-dest-acl" { + value 268435456; + description + "tunl ip flag dest acl"; + } + enum "tunl-ip-flag-ttl-cfg" { + value 536870912; + description + "tunl ip flag ttl cfg"; + } + enum "tunl-ip-flag-encap" { + value 1073741824; + description + "tunl ip flag encap"; + } + } + description + "Tunl ip tunl flag"; + } + + typedef Tunl-ip-mode-dir { + type enumeration { + enum "tunl-ip-mode-dir-none" { + description + "tunl ip mode dir none"; + } + enum "tunl-ip-mode-dir-decap" { + description + "tunl ip mode dir decap"; + } + enum "tunl-ip-mode-dir-encap" { + description + "tunl ip mode dir encap"; + } + enum "tunl-ip-mode-dir-max" { + description + "tunl ip mode dir max"; + } + } + description + "Tunl ip mode dir"; + } + + typedef Tunl-ip-mode { + type enumeration { + enum "tunl-ip-mode-none" { + value 0; + description + "tunl ip mode none"; + } + enum "tunl-ip-mode-gr-eo-ipv4" { + value 1; + description + "tunl ip mode gr eo ipv4"; + } + enum "tunl-ip-mode-gr-eo-ipv6" { + value 2; + description + "tunl ip mode gr eo ipv6"; + } + enum "tunl-ip-mode-mgr-eo-ipv4" { + value 3; + description + "tunl ip mode mgr eo ipv4"; + } + enum "tunl-ip-mode-mgr-eo-ipv6" { + value 4; + description + "tunl ip mode mgr eo ipv6"; + } + enum "tunl-ip-mode-ipv4" { + value 5; + description + "tunl ip mode ipv4"; + } + enum "tunl-ip-mode-ipv6" { + value 6; + description + "tunl ip mode ipv6"; + } + enum "tunl-ip-mode-ipseco-ipv4" { + value 7; + description + "tunl ip mode ipseco ipv4"; + } + enum "tunl-ip-mode-max" { + value 8; + description + "tunl ip mode max"; + } + } + description + "Tunl ip mode"; + } + + typedef Tunl-in6-addr { + type inet:ipv6-address; + description + "Tunl in6 addr"; + } + + typedef Tunl-in-addr { + type inet:ipv4-address; + description + "Tunl in addr"; + } + + typedef Tunl-af-id { + type enumeration { + enum "tunl-af-id-none" { + value 0; + description + "Unspecified AFI"; + } + enum "tunl-af-id-ipv4" { + value 2; + description + "IPv4 AFI"; + } + enum "tunl-af-id-ipv6" { + value 10; + description + "IPv6 AFI"; + } + } + description + "Tunl af id"; + } + + grouping TUNL-P2MP-MA-EDM-OVERLAY { + description + "TUNL P2MP MA EDM OVERLAY"; + container overlay-address { + description + "Overlay Address"; + uses IP-ADDR-UNION; + } + leaf adjacency { + type uint32; + description + "Adjacency"; + } + leaf stale-flag { + type boolean; + description + "Stale Flag"; + } + } + + grouping TUNL-P2MP-MA-EDM-TED-DB { + description + "TUNL P2MP MA EDM TED DB"; + container transport-address { + description + "Transport Address"; + uses IP-ADDR-UNION; + } + list overlay-array { + description + "Overlay Address"; + uses TUNL-P2MP-MA-EDM-OVERLAY; + } + } + + grouping TUNL-P2MP-MA-EDM-TED-DB-ARRAY { + description + "Array of TED DB entries BAG"; + leaf tunnel-id-xr { + type uint32; + description + "Tunnel id"; + } + leaf tunnel-mode { + type Tunl-ip-mode; + description + "Mode of Tunnel"; + } + leaf endpt-count { + type uint32; + description + "Endpoint count"; + } + list ted-db-array { + description + "Array of MA TED DB"; + uses TUNL-P2MP-MA-EDM-TED-DB; + } + } + + grouping TUNL-P2MP-MA-EDM-APP-PROD { + description + "app_prod BAG"; + leaf is-valid { + type boolean; + description + "Is valid flag"; + } + leaf reg-status { + type boolean; + description + "Register status"; + } + leaf eod-recvd { + type boolean; + description + "EOD received"; + } + leaf endpt-prod { + type boolean; + description + "Is endpt producer"; + } + leaf is-tmr-run { + type boolean; + description + "Is timer running"; + } + leaf endpt-count { + type uint32; + description + "Endpt count"; + } + } + + grouping TUNL-P2MP-MA-EDM-APP-PROD-ARRAY { + description + "Array of APP PROD entries BAG"; + list app-prod-array { + description + "APP_PROD array"; + uses TUNL-P2MP-MA-EDM-APP-PROD; + } + } + + grouping TUNL-IP-MA-EDM-CHKPT { + description + "TUNL IP MA EDM CHKPT"; + container source-address { + description + "Tunnel Source Interface Address"; + uses IP-ADDR-UNION; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf flags { + type uint32; + description + "Interface State and Basecap State flags"; + } + leaf platform-tunnel-id { + type uint16; + description + "Platform Tunnel ID"; + } + leaf object-id { + type uint64; + description + "chkpt object ID"; + } + leaf tunnel-app-id { + type uint32; + description + "Tunnel App ID"; + } + leaf ep-app-id { + type uint32; + description + "EP App ID"; + } + leaf ipsec-state { + type uint8; + description + "IPSec state info"; + } + } + + grouping TUNL-IP-MA-SUM { + description + "TUNL IP MA SUM"; + leaf gre-cap-platform-supported { + type boolean; + description + "Is Platform Supported"; + } + leaf gre-cap-max-tunnels-supported { + type uint32; + description + "Max Tunnel Supported"; + } + leaf gre-cap-max-mtu-supported { + type uint32; + description + "Max MTU Supported"; + } + leaf gre-cap-multi-encap-supported { + type boolean; + description + "Multi Encap Supported"; + } + leaf gre-cap-key-supported { + type boolean; + description + "Is Key Supported"; + } + leaf gre-cap-ipv4-transport-supported { + type boolean; + description + "Is GRE IPV4 Supported"; + } + leaf gre-cap-ipv6-transport-supported { + type boolean; + description + "Is GRE IPV6 Supported"; + } + leaf gre-cap-mgre-ipv4-transport-supported { + type boolean; + description + "Is GRE IPV4 Supported"; + } + leaf gre-cap-mgre-ipv6-transport-supported { + type boolean; + description + "Is GRE IPV4 Supported"; + } + leaf cap-ipv4-transport-supported { + type boolean; + description + "Is IPV4 Supported"; + } + leaf cap-ipv6-transport-supported { + type boolean; + description + "Is IPV6 Supported"; + } + leaf gre-cap-checksum-supported { + type boolean; + description + "Is Checksum Supported"; + } + leaf gre-cap-seq-num-supported { + type boolean; + description + "Is Sequence Number Supported"; + } + leaf gre-cap-shm-reset-supported { + type boolean; + description + "Is Shmem reset Supported"; + } + leaf gre-tid-db-count { + type uint32; + description + "Number of Tunnels in Tunnel ID DB"; + } + leaf gre-ifh-db-count { + type uint32; + description + "Number of Tunnels in Ifhandle DB"; + } + leaf gre-dst-db-count { + type uint32; + description + "Number of Tunnels in Destination DB"; + } + leaf gre-src-db-count { + type uint32; + description + "Number of Tunnels in Source DB"; + } + leaf gre-trans-vrf-db-count { + type uint32; + description + "Number of Tunnels in Transport VRF DB"; + } + leaf gre-chkpt-db-count { + type uint32; + description + "Number of Tunnels in Checkpoint DB"; + } + leaf gre-ka-db-count { + type uint32; + description + "Number of Tunnels in Keepalive DB"; + } + leaf gre-im-dpc-bulk-count { + type uint32; + description + "Number of bulk DPC messages"; + } + leaf gre-im-dpc-total-count { + type uint32; + description + "Number of Total DPC messages"; + } + leaf gre-im-dpc-error-count { + type uint32; + description + "Number of DPC error messages"; + } + leaf gre-intf-state-up-up { + type uint32; + description + "Number of interfaces in UP/UP state"; + } + leaf gre-intf-state-up-down { + type uint32; + description + "Number of interfaces in UP/DOWN state"; + } + leaf gre-intf-state-down-down { + type uint32; + description + "Number of interfaces in DOWN/DOWN state"; + } + leaf gre-src-addr-db-count { + type uint32; + description + "Number of Tunnels in Source addr DB"; + } + leaf gre-ipsec-ifh-db-count { + type uint32; + description + "Number of Tunnels in IPSEC Ifhandle DB"; + } + } + + grouping TUNL-IP-MA-EDM-RIB-CONV { + description + "TUNL IP MA EDM RIB CONV"; + leaf tunnel-vrf-table-id { + type uint32; + description + "Tunnel VRF table ID"; + } + leaf afi { + type uint32; + description + "Transport VRF AFI"; + } + leaf vrf-name { + type string; + description + "Transport VRF Name"; + } + leaf convergence-state { + type boolean; + description + "IS Table Convergence State"; + } + } + + grouping TUNL-IP-MA-EDM-KA { + description + "TUNL IP MA EDM KA"; + container source-address { + description + "Source Address"; + uses IP-ADDR-UNION; + } + container destination-address { + description + "Destination Address"; + uses IP-ADDR-UNION; + } + leaf tunnel-id-xr { + type uint32; + description + "Tunnel id"; + } + leaf interface-type { + type xr:Interface-name; + description + "Interface Type"; + } + leaf gre-key { + type uint32; + description + "GRE key"; + } + leaf tunnel-vrfid { + type uint32; + description + "Tunnel VRF ID"; + } + leaf tunnel-vrf-table-id { + type uint32; + description + "Tunnel VRF table ID"; + } + leaf flags { + type Tunl-ip-tunl-flag; + description + "Flags for interface/line protocol state"; + } + leaf keepalive-period { + type uint16; + description + "Keepalive Period"; + } + leaf keepalive-maximum-retries { + type uint8; + description + "Keepalive Maximum Retries"; + } + leaf keepalive-fail { + type uint8; + description + "Keepalive Fail Count"; + } + leaf ttl { + type uint8; + description + "Tunnel TTL"; + } + leaf keepalive-state { + type Tunl-gre-ka-states; + description + "keepalive State"; + } + leaf ka-sent-packets { + type uint32; + description + "Number of keepalive packets sent"; + } + leaf ka-received-packets { + type uint32; + description + "Number of keepalive packets received"; + } + leaf ka-sent-time { + type uint32; + description + "Timestamp of Keepalive packets sent"; + } + leaf ka-received-time { + type uint32; + description + "Timestamp of Keepalive packets received"; + } + } + + grouping IP-ADDR-UNION { + description + "IP ADDR UNION"; + leaf afi { + type Tunl-af-id; + description + "AFI"; + } + leaf ipv4 { + when "../afi = 'tunl-af-id-ipv4'" { + description + "../AFI = 'TUNL_AF_ID_IPV4'"; + } + type Tunl-in-addr; + description + "IPv4 address type"; + } + leaf ipv6 { + when "../afi = 'tunl-af-id-ipv6'" { + description + "../AFI = 'TUNL_AF_ID_IPV6'"; + } + type Tunl-in6-addr; + description + "IPv6 address type"; + } + } + + grouping TUNL-GRE-MA-EDM-IDB { + description + "TUNL GRE MA EDM IDB"; + container source-address { + description + "Source Address"; + uses IP-ADDR-UNION; + } + container destination-address { + description + "Destination Address"; + uses IP-ADDR-UNION; + } + leaf tunnel-id { + type uint32; + description + "Tunnel ID"; + } + leaf interface-type { + type xr:Interface-name; + description + "Interface Type"; + } + leaf source-interface-name { + type string; + description + "Source Interface Name"; + } + leaf tunnel-src-vrf-table-id { + type uint32; + description + "Tunnel Source VRF table ID"; + } + leaf destination-address-length { + type uint8; + description + "Destination Address Length"; + } + leaf destination-prefix-list { + type string; + description + "Destination Prefix List"; + } + leaf tunnel-vrf-table-id { + type uint32; + description + "Tunnel VRF table ID"; + } + leaf tunnel-vrfid { + type uint32; + description + "Tunnel VRF ID"; + } + leaf vrf-name { + type string; + description + "Interface Name"; + } + leaf tunnel-mode { + type Tunl-ip-mode; + description + "Mode of Tunnel"; + } + leaf tunnel-mode-direction { + type Tunl-ip-mode-dir; + description + "Mode direction"; + } + leaf flags { + type Tunl-ip-tunl-flag; + description + "Flags for don't fragment, TOS reflection"; + } + leaf mtu { + type uint16; + description + "Max Transferable Unit"; + } + leaf tos { + type uint8; + description + "Type Of Service"; + } + leaf ttl { + type uint8; + description + "Time To Live"; + } + leaf interface-name { + type string; + description + "Interface Name"; + } + leaf keepalive-maximum-retries { + type uint8; + description + "Keepalive Retries"; + } + leaf keepalive-period { + type uint16; + description + "Keepalive Period"; + } + leaf platform-tunnel-id { + type uint16; + description + "Platform Tunnel ID"; + } + leaf bandwidth { + type uint32; + description + "Bandwidth"; + } + leaf flags-other { + type uint32; + description + "Other Flags"; + } + leaf key { + type uint32; + description + "Key Value for GRE Packet"; + } + leaf key-entropy-length { + type uint8; + description + "Key Entropy Length for GRE Packet"; + } + leaf transport-proto { + type Tunl-ip-transport-proto; + description + "Tunnel Transport Protocol"; + } + leaf op-ifhandle { + type xr:Interface-name; + description + "Output Interface handle"; + } + leaf flag-bits { + type Tunl-ip-tunl-flag-bits; + description + "Flags for BFD"; + } + leaf interface-state { + type string; + description + "Tunnel Interface State"; + } + leaf base-caps-state { + type string; + description + "Base Caps State"; + } + leaf bfd-session-state { + type string; + description + "BFD Session State"; + } + leaf ip-sec-profile { + type string; + description + "IPSec Profile"; + } + leaf ipsec-mtu-overhead { + type uint8; + description + "IPSec MTU overhead"; + } + leaf source-direct { + type uint8; + description + "Source direct"; + } + leaf destination-address-group { + type string; + description + "Destination Address group"; + } + } + + grouping TUNL-IP-MA-EDM-IDB-ARRAY { + description + "Array of IDB entries BAG"; + list idb-array { + description + "Array of MA IDB"; + uses TUNL-GRE-MA-EDM-IDB; + } + } + + grouping TUNL-P2MP-MA-EDM-GSPDB { + description + "gspdb BAG"; + leaf node-state { + type uint16; + description + "Node state"; + } + leaf nodeid { + type uint32; + description + "Node id"; + } + leaf leaf-timer-flag { + type boolean; + description + "leaf timer flag"; + } + } + + grouping TUNL-P2MP-MA-EDM-GSPDB-ARRAY { + description + "Array of GSP DB entries BAG"; + list gspdb-array { + description + "GSP_DB array"; + uses TUNL-P2MP-MA-EDM-GSPDB; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper.yang new file mode 100644 index 000000000..f6eb7f5f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-ip-ma-oper.yang @@ -0,0 +1,272 @@ +module Cisco-IOS-XR-tunnel-ip-ma-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-ip-ma-oper"; + prefix tunnel-ip-ma-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-tunnel-gre-datatypes { + prefix dt1; + } + include Cisco-IOS-XR-tunnel-ip-ma-oper-sub1 { + revision-date 2022-08-25; + } + + 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 tunnel-ip-ma package operational data. + + This module contains definitions + for the following management objects: + tunnel-ip-ma: Tunnel Ip ma parameters + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-25 { + description + "Added an entry for tunnel destination address group + 2022-02-26 + Added a field in tunl_gre_ma_edm_idb structure for source direct address + 2021-09-23 + Added entries for ipsec related params in interface database bag"; + semver:module-version "2.0.0"; + } + revision 2021-02-25 { + description + "Added an entry for src addr db in bag"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-10-09 { + description + "Modified hierarchy for endpoints, gspnode-db and application-db-stats"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping SUMMARY { + description + "Common node of database, standby-database"; + container summary { + description + "Tunnel IP MA summary"; + uses TUNL-IP-MA-SUM; + } + } + + container tunnel-ip-ma { + config false; + description + "Tunnel Ip ma parameters"; + container gsp-node-db-summary { + description + "GRE MA GSP Node DB summary"; + uses TUNL-P2MP-MA-EDM-GSPDB-ARRAY; + } + container database { + description + "Tunnel Ip ma parameters"; + container transport-vrf-datas { + description + "GRE/IPinIP Tunnel Transport VRF DB"; + list transport-vrf-data { + description + "GRE/IPinIP Tunnel Transport VRF DB"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF Name"; + } + leaf address-family { + type dt1:Tunl-addr-family-list; + description + "Address Family"; + } + uses TUNL-IP-MA-EDM-IDB-ARRAY; + } + } + container tunnel-ids { + description + "MA database parameters"; + list tunnel-id { + key "tid"; + description + "Tunnel ID"; + leaf tid { + type dt1:Tunl-id-range; + description + "Tunnel ID"; + } + uses TUNL-IP-MA-EDM-IDB-ARRAY; + } + } + container interface-handles { + description + "GRE/IPinIP Tunnel ifhandle DB"; + list interface-handle { + key "if-handle"; + description + "GRE/IPinIP Tunnel ifhandle DB"; + leaf if-handle { + type xr:Interface-name; + description + "Interface Handle value"; + } + uses TUNL-IP-MA-EDM-IDB-ARRAY; + } + } + container keep-alives { + description + "show tunnel ip keepalive data"; + list keep-alive { + description + "Show tunnel ip keepalive data"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Handle value"; + } + leaf tunnel-id { + type dt1:Tunl-id-range; + description + "Tunnel ID"; + } + uses TUNL-IP-MA-EDM-KA; + } + } + container rib-convergences { + description + "GRE/IPinIP Tunnel RIB converge DB"; + list rib-convergence { + key "table-id"; + description + "GRE/IPinIP Tunnel RIB converge DB"; + leaf table-id { + type uint32; + description + "RSI Table ID"; + } + uses TUNL-IP-MA-EDM-RIB-CONV; + } + } + container tunnel-sources { + description + "GRE/IPinIP Tunnel Source interface name DB"; + list tunnel-source { + description + "GRE/IPinIP Tunnel Source interface name DB"; + leaf interface-name { + type xr:Interface-name; + description + "Tunnel Source Interface Name"; + } + leaf address-family { + type dt1:Tunl-addr-family-list; + description + "AddressFamily"; + } + uses TUNL-IP-MA-EDM-IDB-ARRAY; + } + } + container check-points { + description + "GRE MA Checkpoint"; + list check-point { + key "check-point-id"; + description + "GRE MA Checkpoint"; + leaf check-point-id { + type uint32; + description + "Object-ID of GRE MA checkpoint record"; + } + uses TUNL-IP-MA-EDM-CHKPT; + } + } + container tunnel-destinations { + description + "GRE/IPinIP Tunnel Destination DB"; + list tunnel-destination { + description + "GRE/IPinIP Tunnel Destination DB"; + leaf ip { + type inet:ip-address-no-zone; + description + "Tunnel Destination IP Address"; + } + leaf length { + type dt1:Tunl-addr-length-range; + description + "Destination Address Length"; + } + leaf vrf { + type xr:Cisco-ios-xr-string; + description + "Transport VRF Name"; + } + uses TUNL-IP-MA-EDM-IDB-ARRAY; + } + } + uses SUMMARY; + } + container application-db-stats { + description + "GRE MA APP DB summary"; + uses TUNL-P2MP-MA-EDM-APP-PROD-ARRAY; + } + container standby-database { + description + "Tunnel Ip ma parameters"; + uses SUMMARY; + } + container endpoints { + description + "GRE MA DB endpoints"; + list endpoint { + description + "GRE MA DB endpoints"; + leaf tunnel-id { + type dt1:Tunl-id-range; + description + "Tunnel ID"; + } + leaf transport-ip-address { + type inet:ip-address-no-zone; + description + "Transport IP Address"; + } + leaf overlay-ip-address { + type inet:ip-address-no-zone; + description + "Overlay IP Address"; + } + uses TUNL-P2MP-MA-EDM-TED-DB-ARRAY; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-cfg.yang new file mode 100644 index 000000000..857063e9d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-cfg.yang @@ -0,0 +1,295 @@ +module Cisco-IOS-XR-tunnel-l2tun-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-l2tun-cfg"; + prefix tunnel-l2tun-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 tunnel-l2tun package configuration. + + This module contains definitions + for the following management objects: + l2tp: L2TPv3 class used for L2VPNs + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef L2tp-no-user { + type uint32 { + range "0..4294967295"; + } + description + "L2tp no user"; + } + + typedef L2tp-hash-method { + type enumeration { + enum "md5" { + value 1; + description + "MD5"; + } + enum "sha1" { + value 2; + description + "SHA1"; + } + enum "none" { + value 3; + description + "None"; + } + } + description + "L2tp hash method"; + } + + typedef L2tp-digest-hash-method { + type enumeration { + enum "md5" { + value 1; + description + "MD5"; + } + enum "sha1" { + value 2; + description + "SHA1"; + } + } + description + "L2tp digest hash method"; + } + + grouping TIMEOUT { + description + "Common node of initial, retransmit"; + container timeout { + description + "Set timeout value range"; + leaf minimum { + type uint32 { + range "1..8"; + } + description + "Specify minimum timeout"; + } + leaf maximum { + type uint32 { + range "1..8"; + } + description + "Specify maximum timeout"; + } + } + } + + container l2tp { + description + "L2TPv3 class used for L2VPNs"; + container classes { + description + "List of classes"; + list class { + key "class-name"; + description + "Configuration for a specific class"; + container security { + description + "Security check"; + container ip { + description + "Security check for IP"; + leaf address-check { + type empty; + description + "Enable IP address check for L2TP packets"; + } + } + } + container retransmit { + description + "Control message retransmission parameters"; + container initial { + description + "Set retries and timeouts for initial"; + leaf retry { + type uint32 { + range "1..1000"; + } + description + "Specify the retry number"; + } + uses TIMEOUT; + } + leaf retry { + type uint32 { + range "5..1000"; + } + description + "Specify retransmit retry count"; + } + uses TIMEOUT; + } + container tunnel { + description + "l2TP tunnel"; + leaf accounting { + type string; + description + "Tunnel accounting"; + } + } + container digest { + description + "Message digest authentication for the L2TP + control connection"; + container secrets { + description + "Set shared secret for message digest"; + list secret { + key "secret-name"; + description + "The encrypted user secret and hash method"; + leaf secret-name { + type xr:Cisco-ios-xr-string; + description + "Specify the encrypted user secret"; + } + leaf hash { + type L2tp-hash-method; + mandatory true; + description + "Specify hash method"; + } + } + } + leaf hash { + type L2tp-digest-hash-method; + description + "Specify hash method"; + } + leaf check-disable { + type empty; + description + "Disable digest checking"; + } + } + container ip { + description + "IP TOS value"; + leaf tos { + type uint32 { + range "0..255"; + } + description + "IP TOS value (decimal)"; + } + } + leaf host-name { + type string; + description + "Local hostname for control connection + authentication"; + } + leaf hidden { + type empty; + description + "Specify to hide AVPs in outgoing control + messages"; + } + leaf hello-interval { + type uint32 { + range "0..1000"; + } + units "second"; + description + "Specify interval (in seconds)"; + } + leaf timeout-setup { + type uint32 { + range "60..6000"; + } + units "second"; + description + "Time permitted to set up a control connection"; + } + leaf receive-window { + type uint32 { + range "1..16384"; + } + units "byte"; + description + "Receive window size for the control connection"; + } + leaf congestion-control { + type empty; + description + "Congestion control enabled"; + } + leaf timeout-no-user { + type L2tp-no-user; + units "second"; + description + "Timeout value for no-user in seconds"; + } + leaf authentication { + type uint32; + description + "Authenticate the L2TP control connection"; + } + leaf enable { + type empty; + description + "Enable L2TPv3 class used for L2VPNs"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify the password for control channel + authentication"; + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..31"; + } + description + "Specify the class name. Regexp: + ^[a-z0-9A-Z][-_.a-z0-9A-Z]*$"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper-sub1.yang new file mode 100644 index 000000000..7c299c683 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper-sub1.yang @@ -0,0 +1,1432 @@ +submodule Cisco-IOS-XR-tunnel-l2tun-oper-sub1 { + belongs-to Cisco-IOS-XR-tunnel-l2tun-oper { + prefix Cisco-IOS-XR-tunnel-l2tun-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tunnel-l2tun package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-11-01 { + description + "Added Yang support show l2tpv2 internal."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Digest-hash { + type enumeration { + enum "md5" { + description + "MD5"; + } + enum "sha1" { + description + "SHA1"; + } + } + description + "Digest hash types"; + } + + grouping L2TPV2-CC-ACCT-STATS-DATA { + description + "L2TPv2 tunnel accounting statistics"; + leaf records-sent-successfully { + type uint64; + description + "Accounting records sent successfully"; + } + leaf start { + type uint64; + description + "Accounting start"; + } + leaf stop { + type uint64; + description + "Accounting stop"; + } + leaf reject { + type uint64; + description + "Accounting reject"; + } + leaf transport-failures { + type uint64; + description + "Transport failures"; + } + leaf positive-acknowledgement { + type uint64; + description + "Positive acknowledgement"; + } + leaf negative-acknowledgement { + type uint64; + description + "Negative acknowledgement"; + } + leaf records-checkpointed { + type uint64; + description + "Total records checkpointed"; + } + leaf records-failed-to-checkpoint { + type uint64; + description + "Records fail to checkpoint"; + } + leaf records-sent-from-queue { + type uint64; + description + "Records sent from queue"; + } + leaf memory-failures { + type uint32; + description + "Memory failures"; + } + leaf current-size { + type uint32; + description + "Current checkpoint size"; + } + leaf records-recovered-from-checkpoint { + type uint32; + description + "Records recovered from checkpoint"; + } + leaf records-fail-to-recover { + type uint32; + description + "Records fail to recover"; + } + leaf queue-statistics-size { + type int32; + description + "Queue statistics size"; + } + } + + grouping L2TPV2-STATS-DATA { + description + "L2TPv2 statistics"; + leaf tunnels { + type uint32; + description + "Number of tunnels"; + } + leaf sessions { + type uint32; + description + "Number of sessions"; + } + leaf sent-packets { + type uint32; + description + "Number of packets sent"; + } + leaf received-packets { + type uint32; + description + "Number of packets received"; + } + leaf average-packet-processing-time { + type uint32; + units "microsecond"; + description + "Average processing time for received packets + (in micro seconds)"; + } + leaf received-out-of-order-packets { + type uint32; + description + "Out of order packets received"; + } + leaf reorder-packets { + type uint32; + description + "Re order packets"; + } + leaf reorder-deviation-packets { + type uint32; + description + "Re order deviation"; + } + leaf incoming-dropped-packets { + type uint32; + description + "In coming packets dropped"; + } + leaf buffered-packets { + type uint32; + description + "Bufferred packets"; + } + leaf netio-packets { + type uint32; + description + "Packets RX in netio"; + } + } + + grouping L2TP-SESS-FWD-STATS { + description + "L2TP session PD counters"; + leaf remote-session-id { + type uint32; + description + "Remote session ID"; + } + leaf in-packets { + type uint64; + description + "Number of packets sent in"; + } + leaf out-packets { + type uint64; + description + "Number of packets sent out"; + } + leaf in-bytes { + type uint64; + units "byte"; + description + "Number of bytes sent in"; + } + leaf out-bytes { + type uint64; + units "byte"; + description + "Number of bytes sent out"; + } + } + + grouping L2TP-INTERNAL-BAG-DATA { + description + "L2TP INTERNAL BAG DATA"; + leaf l2tp-sh-l2x-num-tunnels { + type uint32; + description + "l2tp sh l2x num tunnels"; + } + leaf l2tp-sh-l2x-num-sessions { + type uint32; + description + "l2tp sh l2x num sessions"; + } + leaf l2tp-sh-l2x-rx-high-water-mark { + type uint32; + description + "l2tp sh l2x rx high water mark"; + } + leaf l2tp-sh-l2x-ave-msg-process-usecs { + type uint64; + description + "l2tp sh l2x ave msg process usecs"; + } + leaf l2tp-sh-l2x-num-rx-msgs { + type uint32; + description + "l2tp sh l2x num rx msgs"; + } + leaf l2tp-sh-l2x-num-tx-msgs { + type uint32; + description + "l2tp sh l2x num tx msgs"; + } + leaf l2tp-sh-l2x-num-tx-err-drops { + type uint32; + description + "l2tp sh l2x num tx err drops"; + } + leaf l2tp-sh-l2x-num-tx-conn-drops { + type uint32; + description + "l2tp sh l2x num tx conn drops"; + } + leaf l2tp-sh-l2x-num-reordered-msgs { + type uint32; + description + "l2tp sh l2x num reordered msgs"; + } + leaf l2tp-sh-l2x-max-reorder-deviation { + type uint32; + description + "l2tp sh l2x max reorder deviation"; + } + leaf l2tp-sh-l2x-num-ooo-msgs { + type uint32; + description + "l2tp sh l2x num ooo msgs"; + } + leaf l2tp-sh-l2x-num-rx-path-drops { + type uint32; + description + "l2tp sh l2x num rx path drops"; + } + leaf l2tp-sh-l2x-num-rx-path-data-pkt-drops { + type uint32; + description + "l2tp sh l2x num rx path data pkt drops"; + } + leaf l2tp-sh-l2x-num-rx-queue-drops { + type uint32; + description + "l2tp sh l2x num rx queue drops"; + } + leaf l2tp-sh-l2x-num-rx-ooo-drops { + type uint32; + description + "l2tp sh l2x num rx ooo drops"; + } + leaf l2tp-sh-l2x-num-buffered-msgs { + type uint32; + description + "l2tp sh l2x num buffered msgs"; + } + leaf l2tp-sh-l2x-num-mutex-block { + type uint32; + description + "l2tp sh l2x num mutex block"; + } + leaf l2tp-sh-l2x-num-bad-len-drops { + type uint32; + description + "l2tp sh l2x num bad len drops"; + } + leaf l2tp-sh-l2x-num-bad-avp-drops { + type uint32; + description + "l2tp sh l2x num bad avp drops"; + } + leaf l2tp-sh-l2x-num-missing-cc-id-drops { + type uint32; + description + "l2tp sh l2x num missing cc id drops"; + } + leaf l2tp-sh-l2x-num-missing-sess-id-drops { + type uint32; + description + "l2tp sh l2x num missing sess id drops"; + } + leaf l2tp-sh-l2x-num-mismatch-cc-id-drops { + type uint32; + description + "l2tp sh l2x num mismatch cc id drops"; + } + leaf l2tp-sh-l2x-num-unknown-cc-drops { + type uint32; + description + "l2tp sh l2x num unknown cc drops"; + } + leaf l2tp-sh-l2x-num-unknown-sess-drops { + type uint32; + description + "l2tp sh l2x num unknown sess drops"; + } + leaf l2tp-sh-l2x-num-linear-id-search { + type uint32; + description + "l2tp sh l2x num linear id search"; + } + leaf l2tp-sh-l2x-num-linear-id-search-fail { + type uint32; + description + "l2tp sh l2x num linear id search fail"; + } + leaf l2tp-sh-l2x-num-netio-pkt-rx { + type uint32; + description + "l2tp sh l2x num netio pkt rx"; + } + leaf l2tp-sh-l2tun-ave-msg-process-usecs { + type uint64; + description + "l2tp sh l2tun ave msg process usecs"; + } + leaf l2tp-sh-l2tun-num-rx-msgs { + type uint32; + description + "l2tp sh l2tun num rx msgs"; + } + leaf l2tp-sh-l2tun-num-tx-msgs { + type uint32; + description + "l2tp sh l2tun num tx msgs"; + } + leaf l2tp-l2tun-socket-ens-send-error-cnt { + type uint32; + description + "l2tp l2tun socket ens send error cnt"; + } + leaf l2tp-l2tun-socket-session-accept { + type uint64; + description + "l2tp l2tun socket session accept"; + } + leaf l2tp-l2tun-socket-session-destroy { + type uint64; + description + "l2tp l2tun socket session destroy"; + } + leaf l2tp-l2tun-socket-session-connect { + type uint64; + description + "l2tp l2tun socket session connect"; + } + leaf l2tp-l2tun-socket-session-connect-continue { + type uint64; + description + "l2tp l2tun socket session connect continue"; + } + leaf l2tp-l2tun-session-connecting { + type uint64; + description + "l2tp l2tun session connecting"; + } + leaf l2tp-l2tun-session-connected { + type uint64; + description + "l2tp l2tun session connected"; + } + leaf l2tp-l2tun-session-disconnected { + type uint64; + description + "l2tp l2tun session disconnected"; + } + leaf l2tp-l2tun-session-incoming { + type uint64; + description + "l2tp l2tun session incoming"; + } + leaf l2tp-l2tun-session-updated { + type uint64; + description + "l2tp l2tun session updated"; + } + leaf l2tp-l2tun-session-circuit-status { + type uint64; + description + "l2tp l2tun session circuit status"; + } + leaf l2x-lpts-pa-stats-setup-cnt { + type uint32; + description + "l2x lpts pa stats setup cnt"; + } + leaf l2x-lpts-pa-stats-destroy-cnt { + type uint32; + description + "l2x lpts pa stats destroy cnt"; + } + leaf l2x-lpts-pa-stats-alloc-cnt { + type uint32; + description + "l2x lpts pa stats alloc cnt"; + } + leaf l2x-lpts-pa-stats-alloc-fail-cnt { + type uint32; + description + "l2x lpts pa stats alloc fail cnt"; + } + leaf l2x-lpts-pa-stats-init-cnt { + type uint32; + description + "l2x lpts pa stats init cnt"; + } + leaf l2x-lpts-pa-stats-init-fail-cnt { + type uint32; + description + "l2x lpts pa stats init fail cnt"; + } + leaf l2x-lpts-pa-stats-free-cnt { + type uint32; + description + "l2x lpts pa stats free cnt"; + } + leaf l2x-lpts-pa-stats-pulse-cnt { + type uint32; + description + "l2x lpts pa stats pulse cnt"; + } + leaf l2x-lpts-pa-stats-pulse-fail-cnt { + type uint32; + description + "l2x lpts pa stats pulse fail cnt"; + } + leaf l2x-lpts-pa-stats-bind-cnt { + type uint32; + description + "l2x lpts pa stats bind cnt"; + } + leaf l2x-lpts-pa-stats-bind-fail-cnt { + type uint32; + description + "l2x lpts pa stats bind fail cnt"; + } + leaf l2x-lpts-pa-stats-bind-batch-cnt { + type uint32; + description + "l2x lpts pa stats bind batch cnt"; + } + leaf l2x-lpts-pa-stats-bind-batch-fail-cnt { + type uint32; + description + "l2x lpts pa stats bind batch fail cnt"; + } + leaf l2x-lpts-pa-stats-bind-time { + type uint32; + description + "l2x lpts pa stats bind time"; + } + leaf l2x-lpts-pa-stats-expire-cnt { + type uint32; + description + "l2x lpts pa stats expire cnt"; + } + leaf l2x-lpts-pa-stats-replay-cnt { + type uint32; + description + "l2x lpts pa stats replay cnt"; + } + leaf l2x-lpts-pa-stats-replay-batch-cnt { + type uint32; + description + "l2x lpts pa stats replay batch cnt"; + } + leaf l2x-lpts-pa-stats-replay-time { + type uint32; + description + "l2x lpts pa stats replay time"; + } + } + + grouping L2TP-INTERNAL-STATS-BAG-DATA { + description + "L2TP INTERNAL STATS BAG DATA"; + container internal-stats { + description + "internal stats"; + uses L2TP-INTERNAL-BAG-DATA; + } + container internal-stats-last-clear { + description + "internal stats last clear"; + uses L2TP-INTERNAL-BAG-DATA; + } + leaf time-last-clear { + type uint32; + description + "time last clear"; + } + } + + grouping L2TP-SESSION-ID-HOLD-DB-DATA { + description + "L2TP hold database"; + leaf sessions-on-hold { + type uint32; + description + "Number of session ID in hold database"; + } + } + + grouping L2TP-CTL-MSG-BRIEF-DATA { + description + "L2TP control message brief data"; + leaf remote-tunnel-id { + type uint32; + description + "Remote tunnel ID"; + } + leaf local-address { + type inet:ipv4-address; + description + "Local IP address"; + } + leaf remote-address { + type inet:ipv4-address; + description + "Remote IP address"; + } + } + + grouping L2TP-CTRL-MSG-STATS-DATA { + description + "L2TP control message statistics data"; + container brief { + description + "L2TP control message local and remote addresses"; + uses L2TP-CTL-MSG-BRIEF-DATA; + } + container global { + description + "Global data"; + uses L2TP-CTRL-MSG-STATS-GLOBAL-DATA; + } + } + + grouping L2TP-CTRL-MSG-COUNTS { + description + "L2TP control message counters data"; + leaf unknown-packets { + type uint32; + description + "Unknown packets"; + } + leaf zero-length-body-packets { + type uint32; + description + "Zero length body packets"; + } + leaf start-control-connection-requests { + type uint32; + description + "Start control connection requests"; + } + leaf start-control-connection-replies { + type uint32; + description + "Start control connection replies"; + } + leaf start-control-connection-notifications { + type uint32; + description + "Start control connection notifications"; + } + leaf stop-control-connection-notifications { + type uint32; + description + "Stop control connection notifications"; + } + leaf hello-packets { + type uint32; + description + "Keep alive messages"; + } + leaf outgoing-call-requests { + type uint32; + description + "Outgoing call requests"; + } + leaf outgoing-call-replies { + type uint32; + description + "Outgoing call replies"; + } + leaf outgoing-call-connected-packets { + type uint32; + description + "Outgoing call connected packets"; + } + leaf incoming-call-requests { + type uint32; + description + "Incoming call requests"; + } + leaf incoming-call-replies { + type uint32; + description + "Incoming call replies"; + } + leaf incoming-call-connected-packets { + type uint32; + description + "Incoming call connected packets"; + } + leaf call-disconnect-notify-packets { + type uint32; + description + "Call disconnect notify packets"; + } + leaf wan-error-notify-packets { + type uint32; + description + "WAN error notify packets"; + } + leaf set-link-info-packets { + type uint32; + description + "Set link info packets"; + } + leaf service-relay-requests { + type uint32; + description + "Service relay request counts"; + } + leaf service-relay-replies { + type uint32; + description + "Service relay reply counts"; + } + leaf acknowledgement-packets { + type uint32; + description + "Packets acknowledgement"; + } + } + + grouping L2TP-CTRL-MSG-STATS-GLOBAL-DATA { + description + "L2TP control message global data"; + container transmit { + description + "Transmit data"; + uses L2TP-CTRL-MSG-COUNTS; + } + container retransmit { + description + "Re transmit data"; + uses L2TP-CTRL-MSG-COUNTS; + } + container received { + description + "Received data"; + uses L2TP-CTRL-MSG-COUNTS; + } + container drop { + description + "Drop data"; + uses L2TP-CTRL-MSG-COUNTS; + } + leaf total-transmit { + type uint32; + description + "Total transmit"; + } + leaf total-retransmit { + type uint32; + description + "Total retransmit"; + } + leaf total-received { + type uint32; + description + "Total received"; + } + leaf total-drop { + type uint32; + description + "Total drop"; + } + } + + grouping L2TP-COMMON-DATA { + description + "L2TP common data"; + leaf validate { + type uint32; + description + "Validate"; + } + leaf bad-hash { + type uint32; + description + "Bad hash"; + } + leaf bad-length { + type uint32; + description + "Bad length"; + } + leaf ignored { + type uint32; + description + "Ignored"; + } + leaf missing { + type uint32; + description + "Missing"; + } + leaf passed { + type uint32; + description + "Passed"; + } + leaf failed { + type uint32; + description + "Failed"; + } + leaf skipped { + type uint32; + description + "Skipped"; + } + leaf generate-response-failures { + type uint32; + description + "Generate response fail"; + } + leaf unexpected { + type uint32; + description + "Unexpected"; + } + leaf unexpected-zlb { + type uint32; + description + "Unexpected ZLB"; + } + } + + grouping L2TP-AUTHEN-STATS-DATA { + description + "L2TP authentication statistics"; + container nonce-avp { + description + "Nonce AVP statistics"; + uses L2TP-COMMON-DATA; + } + container common-digest { + description + "Common digest statistics"; + uses L2TP-COMMON-DATA; + } + container primary-digest { + description + "Primary digest statistics"; + uses L2TP-COMMON-DATA; + } + container secondary-digest { + description + "Secondary digest statistics"; + uses L2TP-COMMON-DATA; + } + container integrity-check { + description + "Integrity check statistics"; + uses L2TP-COMMON-DATA; + } + container local-secret { + description + "Local secret statistics"; + uses L2TP-COMMON-DATA; + } + container challenge-avp { + description + "Challenge AVP statistics"; + uses L2TP-COMMON-DATA; + } + container challenge-reponse { + description + "Challenge response statistics"; + uses L2TP-COMMON-DATA; + } + container overall-statistics { + description + "Overall statistics"; + uses L2TP-COMMON-DATA; + } + } + + grouping L2TP-SESSION-VPDN { + description + "VPDN specific session data"; + leaf username { + type string; + description + "Session username"; + } + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + } + + grouping L2TP-SESSION-XCONNECT { + description + "Xconnect specific session data"; + leaf circuit-name { + type string; + description + "Circuit name"; + } + leaf sessionvc-id { + type uint32; + description + "Session VC ID"; + } + leaf is-circuit-state-up { + type boolean; + description + "True if circuit state is up"; + } + leaf is-local-circuit-state-up { + type boolean; + description + "True if local circuit state is up"; + } + leaf is-remote-circuit-state-up { + type boolean; + description + "True if remote circuit state is up"; + } + leaf ipv6-protocol-tunneling { + type boolean; + description + "IPv6ProtocolTunneling"; + } + } + + grouping SESSION-APP { + description + "Session application data"; + container xconnect { + when "../l2tp-sh-sess-app-type = '4'" { + description + "../l2tp_sh_sess_app_type = '4'"; + } + description + "Xconnect data"; + uses L2TP-SESSION-XCONNECT; + } + container vpdn { + when "../l2tp-sh-sess-app-type = '2'" { + description + "../l2tp_sh_sess_app_type = '2'"; + } + description + "VPDN data"; + uses L2TP-SESSION-VPDN; + } + leaf l2tp-sh-sess-app-type { + type uint32; + description + "l2tp sh sess app type"; + } + } + + grouping L2TP-SESSION-INFO { + description + "L2TP session information"; + container session-application-data { + description + "Session application data"; + uses SESSION-APP; + } + leaf local-ip-address { + type inet:ipv4-address; + description + "Local session IP address"; + } + leaf remote-ip-address { + type inet:ipv4-address; + description + "Remote session IP address"; + } + leaf l2tp-sh-sess-udp-lport { + type uint16; + description + "l2tp sh sess udp lport"; + } + leaf l2tp-sh-sess-udp-rport { + type uint16; + description + "l2tp sh sess udp rport"; + } + leaf protocol { + type uint8; + description + "Protocol"; + } + leaf remote-tunnel-id { + type uint32; + description + "Remote tunnel ID"; + } + leaf call-serial-number { + type uint32; + description + "Call serial number"; + } + leaf local-tunnel-name { + type string { + length "0..256"; + } + description + "Local tunnel name"; + } + leaf remote-tunnel-name { + type string { + length "0..256"; + } + description + "Remote tunnel name"; + } + leaf remote-session-id { + type uint32; + description + "Remote session ID"; + } + leaf l2tp-sh-sess-tie-breaker-enabled { + type uint8; + description + "l2tp sh sess tie breaker enabled"; + } + leaf l2tp-sh-sess-tie-breaker { + type uint64; + description + "l2tp sh sess tie breaker"; + } + leaf is-session-manual { + type boolean; + description + "True if session is manual"; + } + leaf is-session-up { + type boolean; + description + "True if session is up"; + } + leaf is-udp-checksum-enabled { + type boolean; + description + "True if UDP checksum enabled"; + } + leaf is-sequencing-on { + type boolean; + description + "True if session sequence is on"; + } + leaf is-session-state-established { + type boolean; + description + "True if session state is established"; + } + leaf is-session-locally-initiated { + type boolean; + description + "True if session initiated locally"; + } + leaf is-conditional-debug-enabled { + type boolean; + description + "True if conditional debugging is enabled"; + } + leaf unique-id { + type uint32; + description + "Unique ID"; + } + leaf interface-name { + type string { + length "0..256"; + } + description + "Interface name"; + } + } + + grouping L2TP-CC-INFO { + description + "L2TP tunnel information"; + leaf local-address { + type inet:ipv4-address; + description + "Local tunnel address"; + } + leaf remote-address { + type inet:ipv4-address; + description + "Remote tunnel address"; + } + leaf local-port { + type uint16; + description + "Local port"; + } + leaf remote-port { + type uint16; + description + "Remote port"; + } + leaf protocol { + type uint8; + description + "Protocol"; + } + leaf is-pmtu-enabled { + type boolean; + description + "True if tunnel PMTU checking is enabled"; + } + leaf remote-tunnel-id { + type uint32; + description + "Remote tunnel ID"; + } + leaf local-tunnel-name { + type string { + length "0..256"; + } + description + "Local tunnel name"; + } + leaf remote-tunnel-name { + type string { + length "0..256"; + } + description + "Remote tunnel name"; + } + leaf class-name { + type string { + length "0..256"; + } + description + "L2TP class name"; + } + leaf active-sessions { + type uint32; + description + "Number of active sessions"; + } + leaf sequence-ns { + type uint16; + description + "Sequence NS"; + } + leaf sequence-nr { + type uint16; + description + "Sequence NR"; + } + leaf local-window-size { + type uint16; + description + "Local window size"; + } + leaf remote-window-size { + type uint16; + description + "Remote window size"; + } + leaf retransmission-time { + type uint16; + units "second"; + description + "Retransmission time in seconds"; + } + leaf maximum-retransmission-time { + type uint16; + units "second"; + description + "Maximum retransmission time in seconds"; + } + leaf unsent-queue-size { + type uint16; + description + "Unsent queue size"; + } + leaf unsent-maximum-queue-size { + type uint16; + description + "Unsent maximum queue size"; + } + leaf resend-queue-size { + type uint16; + description + "Resend queue size"; + } + leaf resend-maximum-queue-size { + type uint16; + description + "Resend maximum queue size"; + } + leaf order-queue-size { + type uint16; + description + "Order queue size"; + } + leaf packet-queue-check { + type uint16; + description + "Current number session packet queue check"; + } + leaf digest-secrets { + type uint16; + description + "Control message authentication with digest + secrets"; + } + leaf resends { + type uint32; + description + "Total resends"; + } + leaf zero-length-body-acknowledgement-sent { + type uint32; + description + "Total zero length body acknowledgement"; + } + leaf total-out-of-order-drop-packets { + type uint32; + description + "Total out of order dropped packets"; + } + leaf total-out-of-order-reorder-packets { + type uint32; + description + "Total out of order reorder packets"; + } + leaf total-peer-authentication-failures { + type uint32; + description + "Number of peer authentication failures"; + } + leaf is-tunnel-up { + type boolean; + description + "True if tunnel is up"; + } + leaf is-congestion-control-enabled { + type boolean; + description + "True if congestion control is enabled else false"; + } + list retransmit-time { + max-elements "9"; + description + "Retransmit time distribution in seconds"; + leaf entry { + type uint16; + units "second"; + description + "Retransmit time distribution in seconds"; + } + } + } + + grouping L2TP-HIST-FAIL-STATS-BAG-DATA { + description + "L2TP history failure stats in either TX or RX + direction"; + leaf sess-down-tmout { + type uint32; + description + "sesions affected due to timeout"; + } + leaf tx-counters { + type yang:hex-string; + description + "Send side counters"; + } + leaf rx-counters { + type yang:hex-string; + description + "Receive side counters"; + } + list pkt-timeout { + max-elements "24"; + description + "timeout events by packet"; + leaf entry { + type uint32; + description + "timeout events by packet"; + } + } + } + + grouping L2TP-CC-CLASS-DATA { + description + "L2TP class"; + leaf ip-tos { + type uint8; + description + "IP TOS"; + } + leaf vrf-name { + type string { + length "0..256"; + } + description + "VRF name"; + } + leaf receive-window-size { + type uint16; + description + "Receive window size"; + } + leaf class-name-xr { + type string { + length "0..256"; + } + description + "Class name"; + } + leaf digest-hash { + type Digest-hash; + description + "Hash configured as MD5 or SHA1"; + } + leaf password { + type string { + length "0..25"; + } + description + "Password"; + } + leaf encoded-password { + type string { + length "0..256"; + } + description + "Encoded password"; + } + leaf host-name { + type string { + length "0..256"; + } + description + "Host name"; + } + leaf accounting-method-list { + type string { + length "0..256"; + } + description + "Accounting List"; + } + leaf hello-timeout { + type uint32; + units "second"; + description + "Hello timeout value in seconds"; + } + leaf setup-timeout { + type uint32; + units "second"; + description + "Timeout setup value in seconds"; + } + leaf retransmit-minimum-timeout { + type uint32; + units "second"; + description + "Retransmit minimum timeout in seconds"; + } + leaf retransmit-maximum-timeout { + type uint32; + units "second"; + description + "Retransmit maximum timeout in seconds"; + } + leaf initial-retransmit-minimum-timeout { + type uint32; + units "second"; + description + "Initial timeout minimum in seconds"; + } + leaf initial-retransmit-maximum-timeout { + type uint32; + units "second"; + description + "Initial timeout maximum in seconds"; + } + leaf timeout-no-user { + type uint32; + description + "Timeout no user"; + } + leaf retransmit-retries { + type uint32; + description + "Retransmit retries"; + } + leaf initial-retransmit-retries { + type uint32; + description + "Initial retransmit retries"; + } + leaf is-authentication-enabled { + type boolean; + description + "True if authentication is enabled"; + } + leaf is-hidden { + type boolean; + description + "True if class is hidden"; + } + leaf is-digest-enabled { + type boolean; + description + "True if digest authentication is enabled"; + } + leaf is-digest-check-enabled { + type boolean; + description + "True if digest check is enabled"; + } + leaf is-congestion-control-enabled { + type boolean; + description + "True if congestion control is enabled"; + } + leaf is-peer-address-checked { + type boolean; + description + "True if peer address is checked"; + } + } + + grouping L2TP-CC-CFG-DATA { + description + "L2TP tunnel configuration"; + container l2tp-class { + description + "L2Tp class data"; + uses L2TP-CC-CLASS-DATA; + } + leaf remote-tunnel-id { + type uint32; + description + "Remote tunnel ID"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper.yang new file mode 100644 index 000000000..86b9e292c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-oper.yang @@ -0,0 +1,322 @@ +module Cisco-IOS-XR-tunnel-l2tun-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-l2tun-oper"; + prefix tunnel-l2tun-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tunnel-l2tun-oper-sub1 { + revision-date 2019-04-05; + } + + 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 tunnel-l2tun package operational data. + + This module contains definitions + for the following management objects: + l2tp: L2TP operational data + l2tpv2: L2TPv2 operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2018-11-01 { + description + "Added Yang support show l2tpv2 internal."; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping CONTROL { + description + "Common node of counters, counters"; + container control { + description + "L2TP control messages counters"; + container tunnel-xr { + description + "L2TP control tunnel messages counters"; + container authentication { + description + "Tunnel authentication counters"; + uses L2TP-AUTHEN-STATS-DATA; + } + container global { + description + "Tunnel counters"; + uses L2TP-CTRL-MSG-STATS-GLOBAL-DATA; + } + } + container tunnels { + description + "Table of tunnel IDs of control message counters"; + list tunnel { + key "tunnel-id"; + description + "L2TP tunnel control message counters"; + leaf tunnel-id { + type uint32; + description + "L2TP tunnel ID"; + } + uses L2TP-CTRL-MSG-STATS-DATA; + } + } + } + } + + grouping SESSION-TABLE { + description + "Common node of node, node"; + container sessions { + description + "List of session IDs"; + list session { + key "local-tunnel-id local-session-id"; + description + "L2TP information for a particular session"; + leaf local-tunnel-id { + type uint32; + description + "Local tunnel ID"; + } + leaf local-session-id { + type uint32; + description + "Local session ID"; + } + uses L2TP-SESSION-INFO; + } + } + } + + grouping SESSION { + description + "Common node of node, node"; + container session { + description + "L2TP control messages counters"; + container unavailable { + description + "L2TP session unavailable information"; + uses L2TP-SESSION-ID-HOLD-DB-DATA; + } + } + } + + grouping TUNNEL-CONFIGURATION-TABLE { + description + "Common node of node, node"; + container tunnel-configurations { + description + "List of tunnel IDs"; + list tunnel-configuration { + key "local-tunnel-id"; + description + "L2TP tunnel information"; + leaf local-tunnel-id { + type uint32; + description + "Local tunnel ID"; + } + uses L2TP-CC-CFG-DATA; + } + } + } + + grouping TUNNEL-TABLE { + description + "Common node of node, node"; + container tunnels { + description + "List of tunnel IDs"; + list tunnel { + key "local-tunnel-id"; + description + "L2TP tunnel information"; + leaf local-tunnel-id { + type uint32; + description + "Local tunnel ID"; + } + uses L2TP-CC-INFO; + } + } + } + + grouping INTERNAL { + description + "Common node of node, node"; + container internal { + description + "L2TP v2/v3 internal information"; + uses L2TP-INTERNAL-STATS-BAG-DATA; + } + } + + grouping COUNTER-HIST-FAIL { + description + "Common node of node, node"; + container counter-hist-fail { + description + "Failure events leading to disconnection"; + uses L2TP-HIST-FAIL-STATS-BAG-DATA; + } + } + + grouping CLASS-TABLE { + description + "Common node of node, node"; + container classes { + description + "List of L2TP class names"; + list class { + key "class-name"; + description + "L2TP class name"; + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..31"; + } + description + "L2TP class name"; + } + uses L2TP-CC-CLASS-DATA; + } + } + } + + container l2tp { + config false; + description + "L2TP operational data"; + container nodes { + description + "List of nodes for which subscriber data is + collected"; + list node { + key "node-name"; + description + "Subscriber data for a particular node"; + container counters { + description + "L2TP control messages counters"; + uses CONTROL; + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses TUNNEL-CONFIGURATION-TABLE; + uses COUNTER-HIST-FAIL; + uses CLASS-TABLE; + uses TUNNEL-TABLE; + uses SESSION-TABLE; + uses SESSION; + uses INTERNAL; + } + } + } + container l2tpv2 { + config false; + description + "L2TPv2 operational data"; + container nodes { + description + "List of nodes for which subscriber data is + collected"; + list node { + key "node-name"; + description + "Subscriber data for a particular node"; + container counters { + description + "L2TP control messages counters"; + container forwarding { + description + "L2TP forwarding messages counters"; + container sessions { + description + "List of class and session IDs"; + list session { + key "tunnel-id session-id"; + description + "L2TP information for a particular session"; + leaf tunnel-id { + type uint32; + description + "Local tunnel ID"; + } + leaf session-id { + type uint32; + description + "Local session ID"; + } + uses L2TP-SESS-FWD-STATS; + } + } + } + uses CONTROL; + } + container statistics { + description + "L2TP v2 statistics information"; + uses L2TPV2-STATS-DATA; + } + container tunnel { + description + "L2TPv2 tunnel "; + container accounting { + description + "Tunnel accounting counters"; + container statistics { + description + "Tunnel accounting statistics"; + uses L2TPV2-CC-ACCT-STATS-DATA; + } + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + uses TUNNEL-CONFIGURATION-TABLE; + uses COUNTER-HIST-FAIL; + uses CLASS-TABLE; + uses TUNNEL-TABLE; + uses SESSION-TABLE; + uses SESSION; + uses INTERNAL; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg.yang new file mode 100644 index 000000000..71130d786 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-l2tun-proto-mibs-cfg"; + prefix tunnel-l2tun-proto-mibs-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-snmp-agent-cfg { + prefix a1; + } + + 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 tunnel-l2tun-proto-mibs package configuration. + + This YANG module augments the + Cisco-IOS-XR-snmp-agent-cfg + module with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + augment "/a1:snmp/a1:notification" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-snmp-agent-cfg'"; + container l2tun { + description + "Enable SNMP l2tun traps"; + leaf tunnel-up { + type boolean; + description + "Enable L2TUN tunnel UP traps"; + } + leaf tunnel-down { + type boolean; + description + "Enable L2TUN tunnel DOWN traps"; + } + leaf pseudowire-status { + type boolean; + description + "Enable traps for L2TPv3 PW status"; + } + leaf sessions { + type boolean; + description + "Enable L2TUN sessions traps"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-cfg.yang new file mode 100644 index 000000000..68e51715d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-cfg.yang @@ -0,0 +1,399 @@ +module Cisco-IOS-XR-tunnel-nve-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-nve-cfg"; + prefix tunnel-nve-cfg; + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + + 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 tunnel-nve package configuration. + + This module contains definitions + for the following management objects: + nve-global: Global NVE configuration data + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg + module with configuration data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-06 { + description + "Deprecated Dst UDP port under NVE interface + 2022-04-23 + Added static inner mac cli + 2022-02-23 + Added member-vni policer-rate configuration. + 2022-02-09 + Decap prefix list of object groups added. + 2022-01-31 + Added new command dest-udp-port + 2021-10-28 + Added new sub command for global nve + 2021-10-12 + Added new container in hierarchy for schema to hold the static mac address + 2021-08-13 + New encap"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2016-08-30 { + description + "Initial Revision."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Host-reach-protocol { + type enumeration { + enum "bgp" { + value 1; + description + "Use BGP EVPN for VxLAN tunnel endpoint + reachability"; + } + } + description + "Host reach protocol"; + } + + typedef Vni-range { + type uint32 { + range "1..16777215"; + } + description + "Vni range"; + } + + typedef Vxlan-udp-port-enum { + type enumeration { + enum "ietf-udp-port" { + value 4789; + description + "IETF defined UDP port for VxLAN"; + } + enum "ivx-lan-udp-port" { + value 48879; + description + "UDP port for iVxLAN"; + } + } + description + "Vxlan udp port enum"; + } + + typedef Overlay-encap-enum { + type enumeration { + enum "vx-lan-encapsulation" { + value 0; + description + "VxLAN Encapsulation"; + } + enum "soft-gre-encapsulation" { + value 1; + description + "Soft GRE Encapsulation"; + } + enum "mplsudp-encapsulation" { + value 2; + description + "MPLS UDP Encapsulation"; + } + } + description + "Overlay encap enum"; + } + + typedef Unknown-unicast-flooding-enum { + type enumeration { + enum "suppress-uuf" { + value 1; + description + "Suppress unknown unicast flooding"; + } + } + description + "Unknown unicast flooding enum"; + } + + typedef Load-balance-enum { + type enumeration { + enum "per-evi" { + value 1; + description + "Per evi load balance mode"; + } + } + description + "Load balance enum"; + } + + typedef Policer-rate-range { + type uint32 { + range "4294967295"; + } + description + "Policer rate range"; + } + + typedef Ir-protocol-enum { + type enumeration { + enum "bgp" { + value 1; + description + "Use BGP Protocol for Ingress-Replication"; + } + } + description + "Ir protocol enum"; + } + + typedef Policer-rate-unit-enum { + type enumeration { + enum "rate-unit-none" { + value 0; + description + "Rate Unit None"; + } + enum "rate-unit-bps" { + value 1; + description + "Rate Unit BPS"; + } + enum "rate-unit-kbps" { + value 2; + description + "Rate Unit KBPS"; + } + enum "rate-unit-mbps" { + value 3; + description + "Rate Unit MBPS"; + } + } + description + "Policer rate unit enum"; + } + + augment "/a1:interface-configurations/a1:interface-configuration" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-ifmgr-cfg'"; + container nve { + description + "NVE operational data"; + container anycast { + description + "Enable anycast mode for this NVE interface"; + leaf source-interface { + type string; + description + "Name of the Anycast mode source interface"; + } + leaf sync-group { + type inet:ipv4-address-no-zone; + description + "MCast group for syncing between Anycast + gateways"; + } + } + container redundancy { + description + "Redundancy configuration for this NVE"; + container backbone-vx-lan { + description + "VXLAN backbone"; + leaf enable { + type empty; + description + "Enable Backbone VxLAN"; + } + leaf backbone-vx-laniccp { + type uint32; + description + "VxLAN backbone ICCP group"; + } + } + container backbone-mpls { + description + "MPLS backbone"; + leaf backbone-mplsiccp { + type uint32; + description + "MPLS backbone ICCP group"; + } + leaf enable { + type empty; + description + "Enable Backbone MPLS"; + } + } + leaf enable { + type empty; + description + "Enable Redundancy"; + } + } + container member-vnis { + description + "VNI configuration Table for this NVE"; + list member-vni { + key "vni-start vni-end"; + description + "VNI member attributes"; + container policer-rate { + description + "Policer Rate"; + leaf policer-rate { + type Policer-rate-range; + description + "Policer rate"; + } + leaf policer-rate-unit { + type Policer-rate-unit-enum; + description + "Policer rate unit"; + } + } + container multicast { + presence "enable multicast"; + description + "Mulitcast core group range associated with + the VxLAN segment(s)"; + leaf multicast-group-min { + type inet:ipv4-address-no-zone; + description + "IPV4 group address of the tunnel source"; + } + leaf multicast-group-max { + type inet:ipv4-address-no-zone; + description + "IPV4 group address MAX"; + } + } + container static-inner-ether { + presence "Indicates a static-inner-ether node is configured."; + description + "Static Inner Ethernet Configuration"; + leaf source-mac-address { + type yang:mac-address; + mandatory true; + description + "Configure Source MAC Address"; + } + leaf enable { + type empty; + description + "Enable Static Inner Ethernet"; + } + } + leaf host-reachability { + type Host-reach-protocol; + description + "Control protocol for VxLAN tunnel endpoint + reachability"; + } + leaf vrf { + type string; + description + "VRF associated with the VxLAN segment"; + } + leaf unknown-unicast-flooding { + type Unknown-unicast-flooding-enum; + description + "Suppression of unknown unicast flooding"; + } + leaf load-balance-per-evi { + type Load-balance-enum; + description + "Per-evi load balance mode"; + } + leaf enable { + type empty; + description + "Enable VNI"; + } + leaf vni-start { + type Vni-range; + description + "Single VNI or Range Start"; + } + leaf vni-end { + type Vni-range; + description + "Range End"; + } + } + } + leaf vx-lan-udp-port { + type Vxlan-udp-port-enum; + default "ietf-udp-port"; + description + "UDP port number in VxLAN encapsulation"; + } + leaf overlay-encapsulation { + type Overlay-encap-enum; + default "vx-lan-encapsulation"; + description + "The Overlay Encapsulation for this NVE"; + } + leaf dest-udp-port { + type uint32; + default "111111"; + status deprecated; + description + "Dest UDP Port number"; + } + leaf source-interface { + type string; + description + "Source Interface for this NVE"; + } + leaf ingress-replication-protocol { + type Ir-protocol-enum; + description + "The Ingress Replication Protocol for this NVE"; + } + } + } + container nve-global { + description + "Global NVE configuration data"; + leaf vni-scope-local { + type empty; + description + "Enable Local VNI Scope"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper-sub1.yang new file mode 100644 index 000000000..567a5aa60 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper-sub1.yang @@ -0,0 +1,436 @@ +submodule Cisco-IOS-XR-tunnel-nve-oper-sub1 { + belongs-to Cisco-IOS-XR-tunnel-nve-oper { + prefix Cisco-IOS-XR-tunnel-nve-oper; + } + + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tunnel-nve package operational data. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-08 { + description + "Added support for viewing platform capability details. + 2022-09-08 + global: Added vxlan-interfaceless-l3vni-bringup indication. + 2022-09-08 + global: Added system mac information. + 2022-02-25 + Added member-vni table with extended keys to complement vni + 2022-02-08 + Added support for show nve vrf + 2022-01-28 + Added nve-interface IPv6 support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + grouping NVE-SHOW-NVE-INTF-BD { + description + "NVE Interface Information"; + container v4-add-ltep { + description + "v4 publish time"; + uses NVE-TIMESPEC; + } + container v4-del-ltep { + description + "v4 unpublish time"; + uses NVE-TIMESPEC; + } + container v6-add-ltep { + description + "v6 publish time"; + uses NVE-TIMESPEC; + } + container v6-del-ltep { + description + "v6 unpublish time"; + uses NVE-TIMESPEC; + } + leaf interface-name-xr { + type string; + description + "Interface name"; + } + leaf state { + type int8; + description + "State"; + } + leaf admin-state { + type int8; + description + "Admin State"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf encap { + type int8; + description + "Encap"; + } + leaf source-interface-name { + type string; + description + "Source Interface name"; + } + leaf source-ipv4-address { + type inet:ipv4-address; + description + "Source IPv4 Address"; + } + leaf source-ipv6-address { + type inet:ipv6-address; + description + "Source IPv6 Address"; + } + leaf if-handle { + type uint64; + description + "NVE IfHandle"; + } + leaf source-state { + type int8; + description + "Source Intf State"; + } + leaf udp-port { + type uint32; + description + "UDP Port"; + } + leaf any-cast-source-interface-name { + type string; + description + "Anycast Source Interface name"; + } + leaf any-cast-source-ipv4-address { + type inet:ipv4-address; + description + "Anycast Source IPv4 Address"; + } + leaf any-cast-source-state { + type int8; + description + "Anycast Source Interface State"; + } + leaf sync-mcast-ipv4-address { + type inet:ipv4-address; + description + "MCAST sync group IPv4 Address"; + } + leaf sync-mcast-flags { + type uint32; + description + "Sync McastFlags"; + } + } + + grouping NVE-GLOBAL { + description + "NVE global data"; + leaf vni-scope-local { + type boolean; + description + "VNI Local Scope"; + } + leaf interface-mpls-o-udp-encap-count { + type uint32; + description + "NVE interfaces with MPLSoUDP encap"; + } + leaf vxlan-interfaceless-l3vni-bringup { + type boolean; + description + "VxLAN interfaceless l3vni bringup"; + } + leaf system-mac { + type yang:mac-address; + description + "Global System MAC"; + } + } + + grouping NVE-PDCAP { + description + "NVE System Capabilities"; + leaf max-system-mpls-o-udp { + type uint32; + description + "Max NVE interfaces with MPLSoUDP encap"; + } + leaf ies-support { + type boolean; + description + "Is inner static mac supported"; + } + leaf per-vni-policer-rate-support { + type boolean; + description + "Is policer rate supported"; + } + leaf v6-supported { + type boolean; + description + "Is v6 supported"; + } + leaf global-nve-decap-list { + type boolean; + description + "Is global nve decap list supported"; + } + leaf global-nve-ud-pport-src { + type boolean; + description + "Is global nve udp port src supported"; + } + leaf global-nve-ud-pport-dest { + type boolean; + description + "Is global nve udp port dest supported"; + } + } + + grouping NVE-PARENT-VNI-BR { + description + "Parent vni brief information"; + leaf vni { + type uint32; + description + "VNI Number"; + } + leaf nve-num { + type uint32; + description + "NVE Interface number"; + } + } + + grouping NVE-AF-INFO { + description + "Vrf afi specific information"; + leaf table-id { + type uint32; + description + "Vrf Table ID"; + } + } + + grouping NVE-SHOW-VRF { + description + "VRF Information"; + leaf vrf-name { + type string; + description + "L3 VRF Name"; + } + leaf vrf-id { + type uint64; + description + "vrf id"; + } + list af-info { + description + "AF info"; + uses NVE-AF-INFO; + } + list vni-info { + description + "Brief Vni Info"; + uses NVE-PARENT-VNI-BR; + } + } + + grouping NVE-TIMESPEC { + description + "NVE TIMESPEC"; + leaf seconds { + type uint64; + description + "Seconds"; + } + leaf nanoseconds { + type uint64; + description + "Nanoseconds"; + } + } + + grouping NVE-SHOW-VNI-BD { + description + "VNI Information"; + container v4-add-ltep { + description + "v4 publish time"; + uses NVE-TIMESPEC; + } + container v4-del-ltep { + description + "v4 unpublish time"; + uses NVE-TIMESPEC; + } + container v6-add-ltep { + description + "v6 publish time"; + uses NVE-TIMESPEC; + } + container v6-del-ltep { + description + "v6 unpublish time"; + uses NVE-TIMESPEC; + } + leaf interface-name { + type string; + description + "NVE Interface name"; + } + leaf vni-xr { + type uint32; + description + "VNI Number"; + } + leaf state { + type int8; + description + "State"; + } + leaf mcast-ipv4-address { + type inet:ipv4-address; + description + "MCAST IPv4 Address"; + } + leaf flags { + type uint32; + description + "Flags"; + } + leaf vni-min { + type uint32; + description + "VNI Min in Range"; + } + leaf vni-max { + type uint32; + description + "VNI Max in Range"; + } + leaf mcast-flags { + type uint32; + description + "McastFlags"; + } + leaf udp-port { + type uint32; + description + "UDP Port"; + } + leaf bvi-ifh { + type uint32; + description + "BVI Interface Handle"; + } + leaf bvi-state { + type uint8; + description + "BVI Interface Oper State"; + } + leaf bvi-mac { + type yang:hex-string; + description + "BVI MAC address"; + } + leaf ie-static-mac { + type yang:hex-string; + description + "Inner Ether Static MAC address"; + } + leaf vrf-name { + type string; + description + "L3 VRF Name"; + } + leaf vrf-id { + type uint32; + description + "L3 VRF ID"; + } + leaf ipv4-tbl-id { + type uint32; + description + "IPv4 Table ID"; + } + leaf ipv6-tbl-id { + type uint32; + description + "IPv6 Table ID"; + } + leaf vrf-vni { + type uint32; + description + "VRF VNI"; + } + leaf topo-valid { + type boolean; + description + "TOPO ID valid flag"; + } + leaf topo-id { + type uint32; + description + "L2RIB Topology ID"; + } + leaf topo-name { + type string { + length "0..50"; + } + description + "L2RIB Topology Name"; + } + leaf policer-rate { + type uint32; + description + "Policer rate"; + } + leaf policer-rate-unit { + type uint8; + description + "Policer rate unit"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper.yang new file mode 100644 index 000000000..9b17e22ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-nve-oper.yang @@ -0,0 +1,144 @@ +module Cisco-IOS-XR-tunnel-nve-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-nve-oper"; + prefix tunnel-nve-oper; + + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tunnel-nve-oper-sub1 { + revision-date 2022-10-08; + } + + 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 tunnel-nve package operational data. + + This module contains definitions + for the following management objects: + nve: NVE operational data + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-08 { + description + "Added support for viewing platform capability details. + 2022-09-08 + global: Added vxlan-interfaceless-l3vni-bringup indication. + 2022-09-08 + global: Added system mac information. + 2022-02-25 + Added member-vni table with extended keys to complement vni + 2022-02-08 + Added support for show nve vrf + 2022-01-28 + Added nve-interface IPv6 support"; + semver:module-version "1.1.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container nve { + config false; + description + "NVE operational data"; + container vnis { + status deprecated; + description + "Table for VNIs"; + list vni { + key "vni"; + status deprecated; + description + "The attributes for a particular VNI"; + leaf vni { + type xr:Cisco-ios-xr-string; + description + "VNI ID"; + } + uses NVE-SHOW-VNI-BD; + } + } + container vrfs { + description + "Table for VRFs"; + list vrf { + key "vrf"; + description + "The attributes for a particular VRF"; + leaf vrf { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + uses NVE-SHOW-VRF; + } + } + container capabilities { + description + "NVE Platform Capability information"; + uses NVE-PDCAP; + } + container global { + description + "NVE Global information"; + uses NVE-GLOBAL; + } + container member-vnis { + description + "Table for VNIs"; + list member-vni { + description + "The attributes for a particular VNI"; + leaf vni { + type uint32; + description + "VNI ID"; + } + leaf nve-id { + type xr:Cisco-ios-xr-string; + description + "NVE ID"; + } + uses NVE-SHOW-VNI-BD; + } + } + container interfaces { + description + "Table for NVE interface attributes"; + list interface { + key "interface-name"; + description + "The attributes for a particular interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface Name"; + } + uses NVE-SHOW-NVE-INTF-BD; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-cfg.yang new file mode 100644 index 000000000..14290a095 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-cfg.yang @@ -0,0 +1,446 @@ +module Cisco-IOS-XR-tunnel-vpdn-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-vpdn-cfg"; + prefix tunnel-vpdn-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 tunnel-vpdn package configuration. + + This module contains definitions + for the following management objects: + vpdn: VPDN configuration + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2017-09-07 { + description + "Fixed type translation error."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Df-bit { + type enumeration { + enum "clear" { + value 0; + description + "Clear df bit"; + } + enum "reflect" { + value 1; + description + "Reflect df bit from inner ip header"; + } + enum "set" { + value 2; + description + "Set df bit"; + } + } + description + "Df bit"; + } + + typedef Option { + type enumeration { + enum "local" { + value 1; + description + "Log VPDN events locally"; + } + enum "user" { + value 2; + description + "Log VPDN user events"; + } + enum "dead-cache" { + value 8; + description + "Log VPDN dead cache"; + } + enum "tunnel-drop" { + value 16; + description + "Log VPDN tunnel drops"; + } + } + description + "Option"; + } + + container vpdn { + description + "VPDN configuration"; + container history { + description + "VPDN history logging"; + leaf failure { + type empty; + description + "User failure"; + } + } + container redundancy { + description + "Enable VPDN redundancy"; + container process-failures { + description + "Process crash configuration"; + leaf switchover { + type empty; + description + "Force a switchover if the process crashes"; + } + } + leaf enable { + type empty; + description + "Enable Enable VPDN redundancy. Deletion of this + object also causes deletion of all associated + objects under Redundancy."; + } + } + container local { + description + "VPDN Local radius process configuration"; + leaf secret-text { + type string { + length "1..32"; + } + description + "secret password"; + } + leaf path { + type string { + length "1..64"; + } + description + "local path of the saved profile"; + } + leaf cache-disabled { + type empty; + description + "Set constant integer"; + } + leaf port { + type xr:Cisco-ios-xr-port-number; + description + "port value"; + } + } + container templates { + description + "Table of Template"; + list template { + key "template-name"; + description + "VPDN template configuration"; + container caller-id { + description + "Options to apply on calling station id"; + leaf mask { + type string { + length "1..63"; + } + description + "Mask characters by method"; + } + } + container vpn { + description + "VPN ID/VRF name"; + container id { + description + "VPN ID"; + leaf oui { + type xr:Hex-integer; + description + "VPN ID, (OUI:VPN-Index) format(hex), 3 bytes + OUI Part"; + } + leaf index { + type xr:Hex-integer; + description + "VPN ID, (OUI:VPN-Index) format(hex), 4 bytes + VPN_Index Part"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "VRF name"; + } + } + container tunnel { + description + "L2TP tunnel commands"; + leaf busy-timeout { + type uint32 { + range "60..65535"; + } + units "second"; + description + "Busy time out value in seconds"; + } + } + container ip { + description + "Set IP TOS value"; + leaf tos { + type uint32; + description + "Set constant integer"; + } + } + container ipv4 { + description + "IPv4 settings for tunnel"; + leaf df-bit { + type Df-bit; + description + "IPv4 don't fragment bit set/clear/reflect"; + } + leaf source { + type inet:ipv4-address-no-zone; + description + "Enter an IP address"; + } + } + leaf cisco-avp100-format-e-enable { + type empty; + description + "To support NAS-Port format e in Cisco AVP 100"; + } + leaf rate-convert-speed-avps { + type empty; + units "bit/s"; + description + "DSL Line bps Info attributes"; + } + leaf description { + type string { + length "1..100"; + } + description + "Up to 100 characters describing this VPDN + template"; + } + leaf l2tp-class { + type xr:Cisco-ios-xr-string { + length "1..79"; + } + description + "L2TP class command"; + } + leaf dsl-line-forwarding { + type empty; + description + "Forward DSL Line Info attributes"; + } + leaf template-name { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "VPDN template name"; + } + } + } + container caller-id { + description + "Options to apply on calling station ID"; + leaf mask { + type string { + length "1..63"; + } + description + "Mask characters by method"; + } + } + container vpd-ngroups { + description + "Table of VPDNgroup"; + list vpd-ngroup { + key "vpd-ngroupname"; + description + "vpdn-group configuration"; + container vpn-id { + description + "Vpn id"; + leaf vpn-id-oui { + type xr:Hex-integer; + description + "VPN ID, (OUI:VPN-Index) format(hex), 3 bytes + OUI Part"; + } + leaf vpn-id-index { + type xr:Hex-integer; + description + "VPN ID, (OUI:VPN-Index) format(hex), 4 bytes + VPN_Index Part"; + } + } + container ip { + description + "set ip tos value"; + leaf tos { + type uint32 { + range "0..255"; + } + description + "ip tos value"; + } + } + leaf dsl-line-forwarding { + type empty; + description + "Forward DSL Line Info attributes"; + } + leaf cisco-avp100-format-e-enable { + type empty; + description + "To support NAS-Port format e in cisco AVP 100"; + } + leaf desc { + type string { + length "1..100"; + } + description + "upto 100 characters describing this VPDN group"; + } + leaf attribute { + type string { + length "1..63"; + } + description + "match substring"; + } + leaf l2tp-class { + type string { + length "1..79"; + } + description + "l2tp class name"; + } + leaf tunnel-busy-timeout { + type uint32 { + range "1..65535"; + } + description + "Busy list timeout length"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + description + "Vrf name"; + } + leaf sr-ctemplate { + type string { + length "1..63"; + } + description + "Source vpdn-template"; + } + leaf vpd-ngroupname { + type xr:Cisco-ios-xr-string { + length "1..63"; + } + description + "vpdn-group name"; + } + } + } + container loggings { + description + "Table of Logging"; + list logging { + key "option"; + description + "Configure logging for VPDN"; + leaf option { + type Option; + description + "VPDN logging options"; + } + } + } + container l2tp { + description + "L2TPv2 protocol commands"; + container session-id { + description + "Session ID commands"; + container space { + description + "Session ID space commands"; + leaf hierarchy { + type empty; + description + "Session ID space hierarchical command"; + } + } + } + leaf tcp-mss-adjust { + type uint32 { + range "1280..1460"; + } + description + "TCP MSS adjust value. The acceptable values + might be further limited depending on platform."; + } + } + leaf session-limit { + type uint32 { + range "1..131072"; + } + description + "Maximum simultaneous VPDN sessions"; + } + leaf enable { + type empty; + description + "Enable VPDN configuration. Deletion of this + object also causes deletion of all associated + objects under VPDN."; + } + leaf soft-shut { + type empty; + description + "New session no longer allowed"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper-sub1.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper-sub1.yang new file mode 100644 index 000000000..1db022b59 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper-sub1.yang @@ -0,0 +1,790 @@ +submodule Cisco-IOS-XR-tunnel-vpdn-oper-sub1 { + belongs-to Cisco-IOS-XR-tunnel-vpdn-oper { + prefix Cisco-IOS-XR-tunnel-vpdn-oper; + } + + import ietf-inet-types { + prefix inet; + } + 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 submodule contains a collection of YANG definitions + for Cisco IOS-XR tunnel-vpdn package operational data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Vpdn-failcode { + type enumeration { + enum "unknown" { + description + "Unknown"; + } + enum "peer-action" { + description + "Peer action"; + } + enum "authentication" { + description + "Authentication"; + } + enum "authentication-error" { + description + "Authentication"; + } + enum "authentication-failed" { + description + "Authentication"; + } + enum "authorization" { + description + "Authorization"; + } + enum "authorization-failed" { + description + "Authorization"; + } + enum "home-gatewayfailure" { + description + "No resources available"; + } + enum "connection-termination" { + description + "Connection termination"; + } + enum "no-resources-available" { + description + "No resources available"; + } + enum "timer-expiry" { + description + "Timer expiry"; + } + enum "session-mid-exceeded" { + description + "Session limit"; + } + enum "soft-shut" { + description + "Softshut"; + } + enum "session-limit-exceeded" { + description + "Session limit"; + } + enum "administrative" { + description + "Administrative"; + } + enum "link-failure" { + description + "Link failure"; + } + enum "security" { + description + "Security"; + } + enum "tunnel-in-resync" { + description + "Tunnel in HA resync"; + } + enum "call-prarmeters" { + description + "Call parameters"; + } + } + description + "VPDN failure types"; + } + + typedef Vpdn-state { + type enumeration { + enum "initial-state" { + description + "Initial state"; + } + enum "init-sync-in-progress" { + description + "Initial Sync in progress"; + } + enum "steady-state" { + description + "Initial Sync Done"; + } + } + description + "Vpdn states"; + } + + typedef Lsg-status { + type enumeration { + enum "none" { + value 0; + description + "Member not initialized."; + } + enum "active" { + value 1; + description + "Member is active."; + } + enum "down" { + value 2; + description + "Member is down, cannot create new sessions."; + } + enum "testable" { + value 3; + description + "Member is ready for new sessions."; + } + enum "testing" { + value 4; + description + "Member is being tested for new session"; + } + } + description + "LSG Status"; + } + + typedef Tos-mode { + type enumeration { + enum "default" { + value 0; + description + "default"; + } + enum "set" { + value 1; + description + "set"; + } + enum "reflect" { + value 2; + description + "reflect"; + } + } + description + "TOS modes"; + } + + typedef Session-state { + type enumeration { + enum "idle" { + description + "Idle state"; + } + enum "connected" { + description + "Connected state"; + } + enum "established" { + description + "Established state"; + } + } + description + "Session states"; + } + + grouping VPDN-HISTORY-ENTRY { + description + "VPDN history data"; + leaf username-xr { + type string; + description + "Authentication username"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf mid { + type uint16; + description + "VPDN user session ID"; + } + leaf nas { + type string; + description + "Network access server"; + } + leaf destination-address { + type inet:ipv4-address; + description + "NAS IP address"; + } + leaf remote-client-id { + type uint16; + description + "Remote client ID"; + } + leaf home-gateway { + type string; + description + "Home gateway"; + } + leaf source-address { + type inet:ipv4-address; + description + "Source IP address"; + } + leaf local-client-id { + type uint16; + description + "Local client ID"; + } + leaf event-time { + type string; + description + "Event logged time in Ex: Wed Aug 3 10:28:30 + 2011"; + } + leaf error-repeat-count { + type uint16; + description + "Error repeat count"; + } + leaf failure-type { + type Vpdn-failcode; + description + "Failure type"; + } + } + + grouping VPDN-REDUNDANCY { + description + "vpdn redundancy"; + leaf session-total { + type uint32; + description + "session total"; + } + leaf session-synced { + type uint32; + description + "session synced"; + } + leaf state { + type Vpdn-state; + description + "state"; + } + leaf start-time { + type uint64; + description + "start time"; + } + leaf finish-time { + type uint64; + description + "finish time"; + } + leaf abort-time { + type uint64; + description + "abort time"; + } + } + + grouping L2TP-NSR-QAD-STATS-RECV { + description + "L2TP NSR QAD receive statistics"; + leaf msgs-recvd { + type uint32; + description + "msgs recvd"; + } + leaf acks-recvd { + type uint32; + description + "acks recvd"; + } + leaf recvd-acks-failed { + type uint32; + description + "recvd acks failed"; + } + leaf init-drops { + type uint32; + description + "init drops"; + } + leaf msg-drops { + type uint32; + description + "msg drops"; + } + leaf ooo-drops { + type uint32; + description + "ooo drops"; + } + leaf stale-msgs { + type uint32; + description + "stale msgs"; + } + } + + grouping L2TP-NSR-QAD-STATS-SEND { + description + "L2TP NSR QAD send statistics"; + leaf msgs-sent { + type uint32; + description + "msgs sent"; + } + leaf acks-sent { + type uint32; + description + "acks sent"; + } + leaf no-partner { + type uint32; + description + "no partner"; + } + leaf sends-failed { + type uint32; + description + "sends failed"; + } + leaf acks-failed { + type uint32; + description + "acks failed"; + } + leaf pending-acks { + type uint32; + description + "pending acks"; + } + leaf timeouts { + type uint32; + description + "timeouts"; + } + leaf suspends { + type uint32; + description + "suspends"; + } + leaf resumes { + type uint32; + description + "resumes"; + } + leaf sends-fragment { + type uint32; + description + "sends fragment"; + } + leaf qad-last-seq-number { + type uint32; + description + "qad last seq number"; + } + leaf qad-frag-count { + type uint32; + description + "qad frag count"; + } + leaf qad-ack-count { + type uint32; + description + "qad ack count"; + } + leaf qad-unknown-acks { + type uint32; + description + "qad unknown acks"; + } + leaf qad-timeouts { + type uint32; + description + "qad timeouts"; + } + leaf qad-rx-count { + type uint32; + description + "qad rx count"; + } + leaf qad-rx-list-count { + type uint32; + description + "qad rx list count"; + } + leaf qad-rx-list-q-size { + type uint32; + description + "qad rx list q size"; + } + leaf qad-rx-first-seq-number { + type uint32; + description + "qad rx first seq number"; + } + } + + grouping VPDN-MIRRORING-STATS { + description + "VPDN mirroring stats"; + container qad-send-stats { + description + "qad send stats"; + uses L2TP-NSR-QAD-STATS-SEND; + } + container qad-recv-stats { + description + "qad recv stats"; + uses L2TP-NSR-QAD-STATS-RECV; + } + container qad-send-stats-last-clear { + description + "qad send stats last clear"; + uses L2TP-NSR-QAD-STATS-SEND; + } + container qad-recv-stats-last-clear { + description + "qad recv stats last clear"; + uses L2TP-NSR-QAD-STATS-RECV; + } + leaf sync-not-conn-cnt { + type uint32; + description + "sync not conn cnt"; + } + leaf sso-err-cnt { + type uint32; + description + "sso err cnt"; + } + leaf sso-batch-err-cnt { + type uint32; + description + "sso batch err cnt"; + } + leaf alloc-err-cnt { + type uint32; + description + "alloc err cnt"; + } + leaf alloc-cnt { + type uint32; + description + "alloc cnt"; + } + } + + grouping VPDN-LSG-NODE { + description + "VPDN LSG member"; + leaf vrf-name-xr { + type string; + description + "VRF name"; + } + leaf load { + type uint32; + description + "Current load on LNS"; + } + leaf status { + type Lsg-status; + description + "Status of LNS"; + } + leaf connects { + type uint32; + description + "Total count of tunnels connected"; + } + leaf disconnects { + type uint32; + description + "Total count of tunnels disconnected"; + } + leaf retry { + type uint32; + description + "Retries"; + } + leaf status-change-time { + type uint32; + units "second"; + description + "Seconds since last status change"; + } + } + + grouping VPDN-VPN-ID { + description + "VPDN ID"; + leaf oui { + type uint32; + description + "OUI"; + } + leaf index { + type uint32; + description + "Index"; + } + } + + grouping VPDN-CONFIG { + description + "VPDN user configuration data"; + container vpn-id { + description + "VPN ID"; + uses VPDN-VPN-ID; + } + leaf template-name { + type string; + description + "Template name"; + } + leaf vrf-name { + type string; + description + "VRF name"; + } + leaf l2tp-busy-timeout { + type uint16; + units "second"; + description + "L2TP busy timeout in seconds"; + } + leaf tos-mode { + type Tos-mode; + description + "TOS mode"; + } + leaf tos { + type uint8; + description + "TOS setting value"; + } + leaf dsl-line-forwarding { + type boolean; + description + "True if DSL line info forwarding is enabled"; + } + } + + grouping VPDN-SUBSCRIBER { + description + "VPDN session subscriber data"; + leaf nas-port-id-val { + type string; + description + "NAS port ID Val"; + } + leaf nas-port-type { + type string; + description + "NAS port type"; + } + leaf physical-channel-id { + type uint32; + description + "Physical channel ID"; + } + leaf receive-connect-speed { + type uint64; + units "nanosecond"; + description + "Receive connect speed in nanoseconds"; + } + leaf transmit-connect-speed { + type uint64; + units "nanosecond"; + description + "Transmit connect speed in nanoseconds"; + } + } + + grouping VPDN-L2TP { + description + "VPDN session L2TP data"; + leaf local-endpoint { + type inet:ipv4-address; + description + "Local endpoint IP address"; + } + leaf remote-endpoint { + type inet:ipv4-address; + description + "Remote endpoint IP address"; + } + leaf call-serial-number { + type uint32; + description + "Call serial number"; + } + leaf is-l2tp-class-attribute-mask-set { + type boolean; + description + "True if L2TP class attribute mask is set"; + } + leaf local-tunnel-id { + type uint16; + description + "Local tunnel ID"; + } + leaf remote-tunnel-id { + type uint16; + description + "Remote tunnel ID"; + } + leaf local-session-id { + type uint16; + description + "Local session ID"; + } + leaf remote-session-id { + type uint16; + description + "Remote session ID"; + } + leaf remote-port { + type uint16; + description + "Remote port"; + } + leaf tunnel-client-authentication-id { + type string; + description + "Tunnel client authentication ID"; + } + leaf tunnel-server-authentication-id { + type string; + description + "Tunnel server authentication ID"; + } + leaf tunnel-assignment-id { + type string; + description + "Tunnel assignment ID"; + } + leaf is-tunnel-authentication-enabled { + type boolean; + description + "True if tunnel authentication is enabled"; + } + } + + grouping VPDN-EDM-SHOW-SESSION-BR { + description + "VPDN session brief information"; + leaf last-change { + type string; + description + "Elapsed time since last change in hh:mm:ss + format"; + } + leaf interface-name { + type xr:Interface-name; + description + "Session interface name"; + } + leaf username { + type string; + description + "Authentication username"; + } + leaf domain-name { + type string; + description + "Domain name"; + } + leaf state { + type Session-state; + description + "Session state"; + } + leaf l2tp-session-id { + type uint16; + description + "L2TP session ID"; + } + leaf l2tp-tunnel-id { + type uint16; + description + "L2TP tunnel ID"; + } + leaf srg-slave { + type boolean; + description + "Session SRG Slave"; + } + } + + grouping VPDN-EDM-SHOW-SESSION-DET { + description + "VPDN session detail"; + container session { + description + "Session data"; + uses VPDN-EDM-SHOW-SESSION-BR; + } + container l2tp { + description + "L2TP data"; + uses VPDN-L2TP; + } + container subscriber { + description + "Subscriber data"; + uses VPDN-SUBSCRIBER; + } + container configuration { + description + "Configuration data"; + uses VPDN-CONFIG; + } + leaf setup-time { + type uint32; + description + "Time to setup session in sec:msec"; + } + leaf parent-interface-name { + type xr:Interface-name; + description + "Parent interface name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper.yang new file mode 100644 index 000000000..b69ae7b44 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-tunnel-vpdn-oper.yang @@ -0,0 +1,134 @@ +module Cisco-IOS-XR-tunnel-vpdn-oper { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-tunnel-vpdn-oper"; + prefix tunnel-vpdn-oper; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import cisco-semver { + prefix semver; + } + include Cisco-IOS-XR-tunnel-vpdn-oper-sub1 { + revision-date 2019-04-05; + } + + 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 tunnel-vpdn package operational data. + + This module contains definitions + for the following management objects: + vpdn: VPDN operational data + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container vpdn { + config false; + description + "VPDN operational data"; + container nodes { + description + "List of nodes for which subscriber data is + collected"; + list node { + key "node-name"; + description + "Subscriber data for a particular node"; + container sessions { + description + "VPDN session list"; + list session { + key "session-label"; + description + " VPDN session information"; + leaf session-label { + type xr:Hex-integer; + description + "Session label"; + } + uses VPDN-EDM-SHOW-SESSION-DET; + } + } + container tunnel-destinations { + description + "VPDN tunnel Destinations"; + list tunnel-destination { + description + "VPDN tunnel destination information"; + leaf vrf-name { + type xr:Cisco-ios-xr-string; + description + "VRF name"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + uses VPDN-LSG-NODE; + } + } + container vpdn-mirroring { + description + "VPDN Mirroring Statistics"; + uses VPDN-MIRRORING-STATS; + } + container vpdn-redundancy { + description + "Show VPDN Redundancy information"; + uses VPDN-REDUNDANCY; + } + container history-failures { + description + "VPDN history failure list"; + list history-failure { + description + "VPDN history failure information"; + leaf username { + type string; + description + "Username"; + } + leaf remote-name { + type xr:Cisco-ios-xr-string; + description + "Remote name"; + } + uses VPDN-HISTORY-ENTRY; + } + } + leaf node-name { + type xr:Node-id; + description + "Node name"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-types.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-types.yang new file mode 100644 index 000000000..af6f975f0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-types.yang @@ -0,0 +1,813 @@ +module Cisco-IOS-XR-types { + namespace "http://cisco.com/ns/yang/cisco-xr-types"; + prefix xr; + + import cisco-semver { + prefix semver; + } + import ietf-inet-types { + prefix inet; + } + + organization + "Cisco Systems, Inc."; + contact + "Cisco Systems, Inc. + Customer Service + + Postal: 170 W Tasman Drive + San Jose, CA 95134 + + Tel: +1 1800 553-NETS + + E-mail: cs-yang@cisco.com"; + description + "This module contains a collection of IOS-XR derived YANG data + types. + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-09 { + description + "Included space in Cisco-ios-xr-string pattern. + 2021-10-19 + Added a new type Hex-long-integer"; + semver:module-version "2.2.0"; + } + revision 2020-11-18 { + description + "Added a new type Hex-integer-8"; + semver:module-version "2.1.0"; + } + revision 2019-12-03 { + description + "Modified string match pattern of Interface-name"; + semver:module-version "2.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-18 { + description + "This revision adds the following new data types: + - Type10-password"; + } + revision 2018-06-29 { + description + "Modified string match pattern of Interface-name"; + } + revision 2017-12-01 { + description + "Modified string match pattern of Tty-escape-char-num"; + } + revision 2017-03-07 { + description + "This revision adds the following new data types: + - Type8-password + - Type9-password"; + } + revision 2015-06-29 { + description + "This revision adds the following new data types: + - Rpl-policy + - Rpl-set"; + } + revision 2015-05-18 { + description + "Updated Node-id string pattern to match also shorter ncs4k + node names."; + } + revision 2015-01-19 { + description + "This revision adds the following new data types: + - Bgp-ipv4-flowspec-address + - Bgp-ipv6-flowspec-address"; + } + revision 2013-07-22 { + description + "Initial revision."; + } + + extension xr-cli-map { + argument cli-command; + description + "The xr-cli-map statement takes as an argument + relevant CLI configuration command."; + } + + extension xr-xml-map { + argument xr-xml-node; + description + "The xr-xml-map statement takes as an argument + relevant Cisco XML Schema node name."; + } + + extension cli-command { + argument command; + description + "Corresponding CLI command for this RPC node"; + } + + extension cli-name { + argument keyword; + description + "Corresponding CLI keyword for this node"; + } + + extension xr-task { + argument task; + description + "XR task-id required for operating the yang node"; + } + + extension event-telemetry { + argument description; + description + "Node eligible for telemetry event subscription"; + } + + typedef Route-dist { + type string { + pattern "[a-fA-F0-9]{16}"; + } + description + "Route distinguisher in hexadecimal notation."; + } + + typedef Bgp-l2vpn-evpn-addrs { + type string { + pattern "[a-fA-F0-9]{58}"; + } + description + "L2VPN EVPN Address in hexadecimal notation."; + } + + typedef Bgp-ls-addr { + type string { + pattern "[a-fA-F0-9]+"; + } + description + "BGP link state unicast address in hexadecimal + notation."; + } + + typedef Bgp-ipv6-mvpn-addr { + type string { + pattern "[a-fA-F0-9]{104}"; + } + description + "An IPV6 MVPN address in hexadecimal notation."; + } + + typedef Bgp-ipv4-mvpn-addr { + type string { + pattern "[a-fA-F0-9]{56}"; + } + description + "An IPV4 MVPN address in hexadecimal notation."; + } + + typedef Bgp-rt-constrt-addr { + type string { + pattern "[a-fA-F0-9]{24}"; + } + description + "An IPV4 RTConstraint address in hexadecimal notation."; + } + + typedef Bgp-ipv4-mdt-addr { + type string { + pattern "(([a-f0-9]{16}-)(([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]))"; + } + description + "An IPV4 MDT address in dotted decimal notation. + An IPv4 MDT address should be of the form + 0000006400000065-129.29.83.45. This datatype + restricts the value of each field 16 digits in + hexadecimal for RD field and between 0 and 255 + for IPv4 address field, i.e. + [0000000000000000-ffffffffffffffff]- + [0-255].[0-255].[0-255].[0-255]."; + } + + typedef Bgp-ipv4-tunnel-addr { + type string { + pattern "((0:|[1-9][0-9]{0,4}:)(([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([1-9]?[0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]))"; + } + description + "An IPV4 tunnel address in dotted decimal notation. + An IPv4 tunnel address should be of the form + 65535:129.29.83.45. This datatype restricts the + value of each field between 0 and 65535 for prefix + field and 0 and 255 for IPv4 address field, i.e. + [0-65535]:[0-255].[0-255].[0-255].[0-255]"; + } + + typedef Cisco-ios-xr-port-number { + type uint16 { + range "1..65535"; + } + description + "Port number of range from 1 to 65535"; + } + + typedef Interface-name { + type string { + pattern "[a-zA-Z0-9.:_/-]+"; + } + description + "An interface name specifying an interface type and + instance. + Interface represents a string defining an interface + type and instance, e.g. MgmtEth0/4/CPU1/0 or + TenGigE0/2/0/0.2 or Bundle-Ether9 or + Bundle-Ether9.98 or Serial0/0/0/0/3/1:1"; + } + + typedef Controller-name { + type string { + pattern "[a-zA-Z0-9.:_/-]+"; + } + description + "A controller name specifying a controller type and + instance. + Controller represents a string defining a controller + type and instance, e.g. dwdm0/4/0/0 or + GigabitEthCtrlr0/2/0/0 or T10/0/0/0"; + } + + typedef Cisco-ios-xr-string { + type string { + pattern "[\\w\\-\\.:,_@#%$\\+=\\| ;]+"; + } + description + "Special characters are not allowed."; + } + + typedef Ipv4-prefix-length { + type uint8 { + range "0..32"; + } + description + "An IPv4 address prefix length. + Must lie between 0 and 32 inclusive."; + } + + typedef Ipv6-prefix-length { + type uint8 { + range "0..128"; + } + description + "An IPv6 address prefix length. + Must lie between 0 and 32 inclusive."; + } + + typedef Rack-id { + type string { + pattern "[a-zA-Z0-9_]*\\d+"; + } + description + "Names the rack portion of a NodeID + Rack/Slot/Instance triple"; + } + + typedef Slot-id { + type string { + pattern "[a-zA-Z0-9_]*\\d+"; + } + description + "Names the slot portion of a NodeID + Rack/Slot/Instance triple"; + } + + typedef Instance-id { + type string { + pattern "[a-zA-Z0-9_]*\\d+"; + } + description + "Names the instance portion of a NodeID + Rack/Slot/Instance triple"; + } + + typedef Sub-instance-id { + type string { + pattern "[a-zA-Z0-9_]*\\d+"; + } + description + "Names the sub-instance portion of an extended + NodeID Rack/Slot/Instance/SubInstance"; + } + + typedef Encryption-type { + type enumeration { + enum "none" { + value 0; + description + "The password string is clear text."; + } + enum "md5" { + value 1; + description + "The password is encrypted to an MD5 digest."; + } + enum "proprietary" { + value 2; + description + "The password is encrypted using Cisco type 7 + password encryption."; + } + enum "type6" { + value 3; + description + "The password is encrypted using Cisco type 6 + password encryption."; + } + } + description + "The type of encryption used on a password string."; + } + + typedef Hex-long-integer { + type string { + pattern "[0-9a-fA-F]{1,16}"; + } + description + "An unsigned 64-bit integer represented in + hexadecimal format."; + } + + typedef Hex-integer { + type string { + pattern "[0-9a-fA-F]{1,8}"; + } + description + "An unsigned 32-bit integer represented in + hexadecimal format."; + } + + typedef Hex-integer-16 { + type string { + pattern "[0-9a-fA-F]{1,4}"; + } + description + "An unsigned 16-bit integer represented in + hexadecimal format."; + } + + typedef Hex-integer-8 { + type string { + pattern "[0-9a-fA-F]{1,2}"; + } + description + "An unsigned 8-bit integer represented in + hexadecimal format."; + } + + typedef Osi-system-id { + type string { + pattern "[a-fA-F0-9]{4}(\\.[a-fA-F0-9]{4}){2}"; + } + description + "An OSI system ID should be of the form + 0123.4567.89ab. This data type restricts each + character to a hex character."; + } + + typedef Osi-area-address { + type string { + pattern "[a-fA-F0-9]{2}(\\.[a-fA-F0-9]{4}){0,6}"; + } + description + "An OSI area address should consist of an odd number + of octets, and be of the form 01 or 01.2345 etc up + to 01.2345.6789.abcd.ef01.2345.6789. This data type + restricts each character to a hex character."; + } + + typedef Isis-node-id { + type string { + pattern "[a-fA-F0-9]{4}(\\.[a-fA-F0-9]{4}){2}\\.[a-fA-F0-9]{2}"; + } + description + "An ISIS node ID should be of the form + 0123.4567.89ab.cd. This data type restricts each + character to a hex character."; + } + + typedef Isis-snpa { + type string { + pattern "[a-fA-F0-9]{4}(\\.[a-fA-F0-9]{4}){2}"; + } + description + "String representation of a SNPA, 802.2 MAC address + in canonical format, e.g. 0123.4567.89ab"; + } + + typedef Isis-lsp-id { + type string { + pattern "[a-fA-F0-9]{4}(\\.[a-fA-F0-9]{4}){2}\\.[a-fA-F0-9]{2}\\-[a-fA-F0-9]{2}"; + } + description + "An ISIS LSP ID should be of the form + 0123.4567.89ab.cd-ef. This data type restricts each + character to a hex character."; + } + + typedef Osi-net { + type string { + pattern "[a-fA-F0-9]{2}(\\.[a-fA-F0-9]{4}){3,9}\\.[a-fA-F0-9]{2}"; + } + description + "An OSI NET should consist of an even number of + octets, and be of the form 01.2345.6789.abcd.ef etc + up to + 01.2345.6789.abcd.ef01.2345.6789.abcd.ef01.2345.67. + This data type restricts each character to a hex + character."; + } + + typedef String-identifier { + type string { + pattern "[a-zA-Z0-9_\\-]+"; + } + description + "A string for specifying identifier."; + } + + typedef Char-num { + type union { + type string { + pattern "(0x[0-9A-Fa-f]{1,2}|\\p{IsBasicLatin}|\\p{IsLatin-1Supplement})"; + } + type uint8; + } + description + "Takes a character or its ASCII decimal equivalent + (0-255)."; + } + + typedef Tty-escape-char-num { + type union { + type string { + pattern "(0x[0-9A-Fa-f]{1,2}|\\p{IsBasicLatin}|\\p{IsLatin-1Supplement}|DEFAULT|BREAK|NONE)"; + } + type uint8; + } + description + "Escape character or its ASCII decimal equivalent + (0-255) or one of the three string DEFAULT, BREAK, + NONE."; + } + + typedef Extended-node-id { + type string { + pattern "([a-zA-Z0-9_]*\\d+/){3}([a-zA-Z0-9_]*\\d+)"; + } + description + "A location used as value information and specified + as a Rack/Slot/Instance/SubInstance, e.g. + 0/1/CPU0/NPU0"; + } + + typedef Node-id { + type string { + pattern "([a-zA-Z0-9_]*\\d+/){1,2}([a-zA-Z0-9_]*\\d+)"; + } + description + "A location used as value information and specified + as a Rack/Slot/Instance triple, e.g. F0/SC1/0."; + } + + typedef Pq-node-id { + type string { + pattern "((([a-zA-Z0-9_]*\\d+)|(\\*))/){2}(([a-zA-Z0-9_]*\\d+)|(\\*))"; + } + description + "Partially qualified location which is used for + wildcarding location specifications, e.g. 1/*/*"; + } + + typedef Md5-password { + type string { + pattern "(!.+)|([^!].+)"; + } + description + "The Md5-password type is used to store password using the MD5 + hash function. + When a clear text value is set to a leaf of this type, the + server calculates a password hash and stores the result + in the datastore. The password is never stored in clear text. + + When a leaf of this type is read, the stored password hash is + returned. + + A value of this type matches one of the forms: + + ! + + + The '!' prefix signals that the value is clear text. When + such a value is received by the server, a hash value is + calculated. This value is stored in the configuration data + store. + + If a value starting without '!' is received, the server knows + that the value already represents a hashed value, and stores + it as is in the data store."; + } + + typedef Type8-password { + type string { + pattern "(!.+)|([^!].+)"; + } + description + "The Type8-password type is used to store password using the + SHA-256 encryption. + When a clear text value is set to a leaf of this type, the + server calculates a password hash and stores the result + in the datastore. The password is never stored in clear text. + + When a leaf of this type is read, the stored password hash is + returned. + + A value of this type matches one of the forms: + + ! + + + The '!' prefix signals that the value is clear text. When + such a value is received by the server, a hash value is + calculated. This value is stored in the configuration data + store. + + If a value starting without '!' is received, the server knows + that the value already represents a hashed value, and stores + it as is in the data store."; + } + + typedef Type9-password { + type string { + pattern "(!.+)|([^!].+)"; + } + description + "The Type9-password type is used to store password using the + Script algorithmic encryption. + When a clear text value is set to a leaf of this type, the + server calculates a password hash and stores the result + in the datastore. The password is never stored in clear text. + + When a leaf of this type is read, the stored password hash is + returned. + + A value of this type matches one of the forms: + + ! + + + The '!' prefix signals that the value is clear text. When + such a value is received by the server, a hash value is + calculated. This value is stored in the configuration data + store. + + If a value starting without '!' is received, the server knows + that the value already represents a hashed value, and stores + it as is in the data store."; + } + + typedef Type10-password { + type string { + pattern "(!.+)|([^!].+)"; + } + description + "The Type10-password type is used to store password using the + Script algorithmic encryption. + When a clear text value is set to a leaf of this type, the + server calculates a password hash and stores the result + in the datastore. The password is never stored in clear text. + + When a leaf of this type is read, the stored password hash is + returned. + + A value of this type matches one of the forms: + + ! + + + The '!' prefix signals that the value is clear text. When + such a value is received by the server, a hash value is + calculated. This value is stored in the configuration data + store. + + If a value starting without '!' is received, the server knows + that the value already represents a hashed value, and stores + it as is in the data store."; + } + + typedef Proprietary-password { + type string { + pattern "(!.+)|([^!].+)"; + } + description + "The Proprietary-password type is used to store password + using the Cisco proprietary hash function. + When a clear text value is set to a leaf of this type, the + server calculates a password hash and stores the result + in the datastore. The password is never stored in clear text. + + When a leaf of this type is read, the stored password hash is + returned. + + A value of this type matches one of the forms: + + ! + + + The '!' prefix signals that the value is clear text. When + such a value is received by the server, a hash value is + calculated. This value is stored in the configuration data + store. + + If a value starting without '!' is received, the server knows + that the value already represents a hashed value, and stores + it as is in the data store."; + } + + typedef Type6-password { + type string { + pattern "(!.+)|([^!].+)"; + } + description + "The Type6-password type is used to store password + using the Cisco type 6 hash function. + When a clear text value is set to a leaf of this type, the + server calculates a password hash and stores the result + in the datastore. The password is never stored in clear text. + + When a leaf of this type is read, the stored password hash is + returned. + + A value of this type matches one of the forms: + + ! + + + The '!' prefix signals that the value is clear text. When + such a value is received by the server, a hash value is + calculated. This value is stored in the configuration data + store. + + If a value starting without '!' is received, the server knows + that the value already represents a hashed value, and stores + it as is in the data store."; + } + + typedef Bgp-ipv4-flowspec-address { + type string { + pattern "[a-fA-F0-9]{4096}"; + } + description + "An IPV4 Flowspec address in hexadecimal notation."; + } + + typedef Bgp-ipv6-flowspec-address { + type string { + pattern "[a-fA-F0-9]{4096}"; + } + description + "An IPV6 Flowspec address in hexadecimal notation."; + } + + typedef Rpl-policy { + type string; + description + "RPL Policy info"; + } + + typedef Rpl-set { + type string; + description + "RPL Set info"; + } + + typedef Physical-allowed-node-id { + type uint32; + description + "A physical location encoded as a 32-bit value."; + } + + typedef Physical-allowed-node-id-string { + type string; + description + "A physical location which is represented internallyusing string format (eg: 0_6_CPU0)."; + } + + typedef Bgp-as-number { + type union { + type uint32 { + range "1..65535" { + description + "2-byte AS number"; + } + } + type string { + pattern "([1-9][0-9]{0,4}).([0-9]{1,5})" { + description + "4-byte AS number in asdot (X.Y) format"; + } + } + type uint32 { + range "65536..4294967295" { + description + "4-byte AS number in asplain format"; + } + } + } + description + "BGP AS number type"; + } + + typedef Route-policy-name { + type string { + length "1..255"; + } + description + "Datatype for route policy name"; + } + + typedef Ospf-area-id { + type union { + type uint32 { + range "0..4294967295"; + } + type inet:ip-address; + } + description + "OSPF area ID. Either OSPF area ID as a decimal value or OSPF area ID in IP address format"; + } + + typedef Vpn-id { + type string { + pattern "([0-9a-f]{1,8}):([0-9a-f]{1,8})" { + description + "VPN ID format (OUI:VPN-Index in hex integer)"; + } + } + description + "VPN ID format (OUI:VPN-Index in hex integer)"; + } + + typedef Mpls-label-space-id { + type string { + pattern "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]):0" { + description + ":0"; + } + } + description + "MPLS-LDP labe-space ID format"; + } + + typedef Bgp-route-distinguisher { + type union { + type string { + pattern "([0-9]{1,5}):([0-9]{1,10})" { + description + "2-byte AS number:nn (<1-65535>:<0-4294967295>)"; + } + } + type string { + pattern "([0-9]{5,10}):([0-9]{1,10})" { + description + "4-byte AS number:nn (<65536-4294967295>:<0-4294967295>)"; + } + } + type string { + pattern "(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]):([0-9]{1,10})" { + description + "IP address:nn (A.B.C.D:<0-4294967295>)"; + } + } + } + description + "BGP route distinguisher number format"; + } + + typedef Evpn-esi-value { + type string { + pattern "[0-9a-f]{1,2}(\\.[0-9a-f]{1,2}){8}"; + } + description + "EVPN 9-octet ESI value"; + } + + typedef Docker-app-id { + type string { + pattern "[a-zA-Z0-9][a-zA-Z0-9_.-]+"; + } + description + "A Docker container name format."; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-cfg.yang new file mode 100644 index 000000000..6a4df0e54 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-cfg.yang @@ -0,0 +1,72 @@ +module Cisco-IOS-XR-uea-optics-driver-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-uea-optics-driver-cfg"; + prefix uea-optics-driver-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-ifmgr-cfg { + prefix a1; + } + import Cisco-IOS-XR-controller-optics-cfg { + prefix a2; + } + + 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 uea-optics-driver package configuration. + + This YANG module augments the + Cisco-IOS-XR-ifmgr-cfg, + Cisco-IOS-XR-controller-optics-cfg + modules with configuration data. + + Copyright (c) 2013-2019 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-04-05 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2016-03-21 { + description + "Schema added."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + typedef Breakout-type-list { + type string { + pattern "(4x10)|(4x25)"; + } + description + "4x10:4x10 optics breakout config, 4x25:4x25 + optics breakout config"; + } + + augment "/a1:interface-configurations/a1:interface-configuration/a2:optics" { + description + "This augment extends the configuration data of + 'Cisco-IOS-XR-controller-optics-cfg'"; + leaf breakout { + type Breakout-type-list; + description + "breakout mode configuration"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-im-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-im-mode-cfg.yang new file mode 100644 index 000000000..1c8ef9a79 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-im-mode-cfg.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-uea-optics-driver-im-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-uea-optics-driver-im-mode-cfg"; + prefix uea-optics-driver-im-mode-cfg; + + 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 uea-optics-driver-im-mode package configuration. + + This module contains definitions + for the following management objects: + node: HW module IM mode Config + + Copyright (c) 2013-2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-13 { + description + "Schema added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container node { + description + "HW module IM mode Config"; + container slot-configs { + description + "slot configuration"; + list slot-config { + key "id1"; + description + "none"; + leaf im-mode { + type uint32; + description + "im-mode 0 or 1"; + } + leaf id1 { + type uint32; + description + "none"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-quad-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-quad-cfg.yang new file mode 100644 index 000000000..4b3817760 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-uea-optics-driver-quad-cfg.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-uea-optics-driver-quad-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-uea-optics-driver-quad-cfg"; + prefix uea-optics-driver-quad-cfg; + + 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 uea-optics-driver-quad package configuration. + + This module contains definitions + for the following management objects: + node: HW module Quad Config + + Copyright (c) 2013-2020 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-13 { + description + "Schema added."; + semver:module-version "1.0.0"; + } + revision 2019-04-05 { + description + "Establish semantic version baseline."; + } + revision 2015-11-09 { + description + "IOS XR 6.0 revision."; + } + + container node { + description + "HW module Quad Config"; + container slot-configs { + description + "slot configuration"; + list slot-config { + key "id2"; + description + "none"; + container quad-configs { + description + "quad configuration"; + list quad-config { + key "id1"; + description + "none"; + container mode { + description + "select mode 10g or 25g or 50g for a + quad(group of 4 ports)."; + leaf speed { + type string; + description + "speed 10g or 25g or 50g"; + } + } + leaf id1 { + type uint32; + description + "none"; + } + } + } + leaf id2 { + type uint32; + description + "none"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-controller-fabric-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-controller-fabric-cfg.yang new file mode 100644 index 000000000..bf5d0b369 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-controller-fabric-cfg.yang @@ -0,0 +1,80 @@ +module Cisco-IOS-XR-um-8000-controller-fabric-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-controller-fabric-cfg"; + prefix um-8000-controller-fabric-cfg; + + 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 8000-controller-fabric package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container controller-fabric { + description + "Configure Fabric"; + container planes { + description + "Configure Fabric Plane"; + list plane { + must "shutdown"; + key "plane-id"; + description + "Configure Fabric Plane"; + leaf plane-id { + type uint32 { + range "0..7" { + description + "Fabric Plane number"; + } + } + description + "Configure Fabric Plane"; + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Shutdown the fabric data plane"; + } + } + } + container mode { + description + "Configure Fabric Mode as either 8FC or 5FC"; + container five-fc { + presence "Indicates a five-fc node is configured."; + description + "5 Fabric Card mode, default is 8 FC"; + container fc-0-2-4-5-6 { + presence "Indicates a fc-0-2-4-5-6 node is configured."; + description + "FC Slots 0,2,4,5 and 6"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-fpd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-fpd-cfg.yang new file mode 100644 index 000000000..ddc3b4f06 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-fpd-cfg.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-um-8000-fpd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-fpd-cfg"; + prefix um-8000-fpd-cfg; + + 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 8000-fpd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-17 { + description + "Added container exclude"; + semver:module-version "1.1.0"; + } + revision 2020-12-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container fpd { + description + "FPD firmware configuration"; + container auto-upgrade { + description + "FPD auto-upgrade configuration"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable fpd auto upgrade"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable fpd auto upgrade"; + } + container exclude { + description + "FPD auto-upgrade exclude configuration"; + container pm { + presence "Indicates a pm node is configured."; + description + "Power module entity to be excluded"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg.yang new file mode 100644 index 000000000..5f33e30b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg.yang @@ -0,0 +1,109 @@ +module Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-hw-module-power-profile-sfd-cfg"; + prefix um-8000-hw-module-power-profile-sfd-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 8000-hw-module-power-profile-sfd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-24 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container npu-power-profile { + description + "Asic power usage"; + container card-type { + description + "Card type"; + container locations { + description + "Line cards"; + list location { + must "lc"; + key "location-name"; + description + "Location of Line Card"; + leaf location-name { + type xr:Node-id; + description + "Line card location"; + } + leaf lc { + type enumeration { + enum "low" { + value 1; + description + "Use low performance/power"; + } + enum "medium" { + value 2; + description + "Use medium performance/power"; + } + enum "high" { + value 3; + description + "Use high performance/power"; + } + } + description + "Line card power mode"; + } + } + } + leaf fc { + type enumeration { + enum "low" { + value 1; + description + "Use low performance/power"; + } + enum "medium" { + value 2; + description + "Use medium performance/power"; + } + enum "high" { + value 3; + description + "Use high performance/power"; + } + } + description + "All FC cards power mode"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg.yang new file mode 100644 index 000000000..0060d7628 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg.yang @@ -0,0 +1,62 @@ +module Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-hw-module-power-profile-sff-cfg"; + prefix um-8000-hw-module-power-profile-sff-cfg; + + 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 8000-hw-module-power-profile-sff package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-24 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + leaf npu-power-profile { + type enumeration { + enum "low" { + value 1; + description + "Use low performance/power"; + } + enum "medium" { + value 2; + description + "Use medium performance/power"; + } + enum "high" { + value 3; + description + "Use high performance/power"; + } + } + description + "Asic power usage"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-cfg.yang new file mode 100644 index 000000000..50a654314 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-cfg.yang @@ -0,0 +1,1075 @@ +module Cisco-IOS-XR-um-8000-hw-module-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-hw-module-profile-cfg"; + prefix um-8000-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 8000-hw-module-profile package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-07 { + description + "Added SROPT mode feature + 2022-11-22 + fix tcam-banks in lpm node + 2022-10-11 + Added vxlan ipv6 tunnel scale + 2022-09-28 + Modified lpm high node as lpm tcam-banks in hw-module profile route scale lpm + 2022-09-27 + Added hw-module profile pbr vrfredirect + 2022-09-02 + Added leafs in hw-module profile cef + 2022-07-08 + Added high lpm scale + 2022-07-04 + Added new node multicast under container hw-module + 2022-06-28 + Updated buffer-extended and buffer-internal nodes. Removed location-name list key node + 2022-06-23 + Modified the range of headroom under ms and us nodes + 2022-04-26 + Added leaf high_scale under l2fib + 2022-04-25 + Added new vxlan-dc-leaf hw-module command + 2022-04-24 + Added npu-compatibility support + 2022-04-20 + Updated buffer-extended and buffer-internal nodes + 2022-03-23 + no-bvi-ingress node moved up one hierarchy under stats + 2022-03-18 + Removed presence statement under buffer-extended node + 2022-03-10 + Added missing nodes + 2022-02-10 + Added leaf pause-threshold-bytes + 2021-12-20 + Added new router scale ipv6-unicast connected-prefix scale feature"; + semver:module-version "2.0.0"; + } + revision 2021-03-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container multicast { + description + "Configure Multicast Route Scale"; + container route-scale { + presence "Indicates a route-scale node is configured."; + description + "Configure Multicast Route Scale"; + } + } + container profile { + description + "Configure profile."; + container 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 + "value in percent"; + } + } + description + "percent to configure"; + } + } + } + container ipv6 { + description + "Configure ipv6 addresses in TCAM"; + container unicast { + description + "Unicast address"; + leaf percent { + type uint32 { + range "0..100" { + description + "value in percent"; + } + } + description + "percent to configure"; + } + } + } + } + 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 + "ipv4 source address"; + } + container dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "ipv4 destination address"; + } + container src-port { + presence "Indicates a src-port node is configured."; + description + "source port for TCP/UDP"; + } + container dst-port { + presence "Indicates a dst-port node is configured."; + description + "destination port for TCP/UDP"; + } + container proto { + presence "Indicates a proto node is configured."; + description + "protocol field in IPV4 header"; + } + container precedence { + presence "Indicates a precedence node is configured."; + description + "precedence/dscp field in IPV4 header"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "TTL in IPv4 header"; + } + container tcp-flags { + presence "Indicates a tcp-flags node is configured."; + description + "tcp flags"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit"; + } + container src-object-group { + presence "Indicates a src-object-group node is configured."; + description + "source object group"; + } + container dst-object-group { + presence "Indicates a dst-object-group node is configured."; + description + "destination object group"; + } + container packet-len { + presence "Indicates a packet-len node is configured."; + description + "packet length"; + } + container fragment-offset { + presence "Indicates a fragment-offset node is configured."; + description + "fragment-offset"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "IPv6"; + container src-addr { + presence "Indicates a src-addr node is configured."; + description + "ipv6 source address"; + } + container dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "ipv6 destination address"; + } + container src-port { + presence "Indicates a src-port node is configured."; + description + "source port for TCP/UDP (mandatory field)"; + } + container dst-port { + presence "Indicates a dst-port node is configured."; + description + "destination port for TCP/UDP"; + } + container next-hdr { + presence "Indicates a next-hdr node is configured."; + description + "next header field in IPV6 header (mandatory field)"; + } + container traffic-class { + presence "Indicates a traffic-class node is configured."; + description + "traffic class in IPV6 header"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit"; + } + container tcp-flags { + presence "Indicates a tcp-flags node is configured."; + description + "tcp flags"; + } + container src-object-group { + presence "Indicates a src-object-group node is configured."; + description + "source object group"; + } + container dst-object-group { + presence "Indicates a dst-object-group node is configured."; + description + "destination object group"; + } + container packet-len { + presence "Indicates a packet-len node is configured."; + description + "packet length"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + } + } + } + container pbr { + description + "pbr vrfredirect"; + leaf vrf-redirect { + type empty; + description + "pbr vrfredirect"; + } + } + container qos { + description + "Configure qos profile"; + container voq-mode { + description + "voq mode to configure"; + container four { + must + "not(../eight or ../fair-four + or ../fair-eight)"; + presence "Indicates a four node is configured."; + description + "4 VoQ Mode"; + } + container eight { + must + "not(../four or ../fair-four + or ../fair-eight)"; + presence "Indicates a eight node is configured."; + description + "8 VoQ Mode"; + } + container fair-four { + must + "not(../four or ../eight + or ../fair-eight)"; + presence "Indicates a fair-4 node is configured."; + description + "fair-4 VoQ Mode"; + } + container fair-eight { + must + "not(../four or ../eight + or ../fair-four)"; + presence "Indicates a fair-8 node is configured."; + description + "fair-8 VoQ Mode"; + } + } + leaf l2-mode { + type enumeration { + enum "L2" { + value 2; + description + "Use L2 headers for QoS on L2 interfaces"; + } + enum "L3" { + value 3; + description + "Use L3 headers for QoS on L2 interfaces"; + } + } + description + "Configure QOS mode for L2 interfaces"; + } + container qos-stats-push-collection { + must "../l2-mode"; + presence "Indicates a qos-stats-push-collection node is configured."; + description + "Enable QoS stats push collection"; + } + } + container cef { + description + "Configure cef profiles"; + leaf dark-bw { + type enumeration { + enum "enable" { + value 1; + description + "Enable Dark bandwidth feature"; + } + } + description + "Configure dark-bandwidth"; + } + leaf sropt { + type enumeration { + enum "enable" { + value 1; + description + "Enable SROPT feature"; + } + } + description + "Enable debug message for SROPT"; + } + leaf bgplu { + type enumeration { + enum "enable" { + value 1; + description + "Enable BGPLU feature"; + } + } + description + "Configure bgplu attribute"; + } + leaf cbf { + type enumeration { + enum "enable" { + value 1; + description + "Enable CBF feature"; + } + } + description + "Enable cbf"; + } + container forward-class-lists { + description + "Configure hardware forward class list"; + leaf-list forward-class-list { + type uint32 { + range "0..7" { + description + "forward class id"; + } + } + must "../../cbf"; + max-elements "8"; + description + "Configure hardware forward class list"; + } + } + container ipv6 { + description + "IPv6"; + leaf hop-limit { + type enumeration { + enum "punt" { + value 1; + description + "Punt hop-limit 0 packets"; + } + } + description + "Hop-limit 0 packets"; + } + } + container lpts { + description + "LPTS"; + container acl { + presence "Indicates a acl node is configured."; + description + "Enable ACL"; + } + leaf pifib-entry-counters { + type uint32 { + range "256..512" { + description + "number of counters"; + } + } + description + "Configure number of counters"; + } + } + container vxlan { + description + "VXLAN"; + container ipv6-tnl-scale { + presence "Indicates a ipv6-tnl-scale node is configured."; + description + "Enable vxlan ipv6 tunnel scale"; + } + } + container stats { + description + "Configure feature level stats"; + container label { + description + "Configure label stats"; + leaf app-default { + type enumeration { + enum "dynamic" { + value 1; + description + "Allocate counters till OOR"; + } + } + description + "Applies to - LDP and SR"; + } + } + } + container ttl { + description + "Configure ttl profile"; + container tunnel-ip { + description + "Configure tunnel-ip ttl mode"; + leaf decrement { + type enumeration { + enum "disable" { + value 1; + description + "Disable tunnl-ip inner ttl decrement"; + } + } + description + "Configure tunnel-ip ttl decrement behaviour"; + } + } + } + container te-tunnel { + description + "Configure te tunnel profile"; + container highscale-no-ldp-over-te { + presence "Indicates a highscale-no-ldp-over-te node is configured."; + description + "Enable te tunnels high scale and disable ldp over te"; + } + container highscale-ldp-over-te-no-sr-over-srte { + presence "Indicates a highscale-ldp-over-te-no-sr-over-srte node is configured."; + description + "Enable high scale of TE tunnels with LDP over TE and disable SR over SRTE"; + } + container label-over-te-counters { + presence "Indicates a label-over-te-counters node is configured."; + description + "Enable label counters and disable TE counters"; + } + } + leaf ip-redirect { + type enumeration { + enum "enable" { + value 1; + description + "Enable IP redirect"; + } + } + description + "IP redirect"; + } + } + container stats { + description + "Configure qos stats profile"; + leaf voqs-sharing-counters { + type enumeration { + enum "1" { + value 1; + description + "Counter for each queue"; + } + enum "2" { + value 2; + description + "2 Queues share counters"; + } + enum "4" { + value 4; + description + "4 Queues share counters"; + } + } + description + "Configure number of voqs (1, 2, 4) sharing counters"; + } + container no-bvi-ingress { + presence "Indicates a no-bvi-ingress node is configured."; + description + "Disable BVI ingress counter stats"; + } + container acl-permit { + presence "Indicates a acl-permit node is configured."; + description + "Configure ACL permit stats"; + } + } + leaf bw-threshold { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "value in percent: 10-100 in increments of 10"; + } + pattern "(100|[1-9]0)"; + } + description + "% of Total Fabric BW of Asic requires for INTF bring UP"; + } + container priority-flow-control { + description + "Configure priority-flow-control parameters"; + container locations { + description + "Location to apply PFC configuration"; + list location { + key "location-name"; + description + "Location to apply PFC configuration"; + leaf location-name { + type xr:Node-id; + description + "Location to apply PFC configuration"; + } + container buffer-extended { + description + "Use Extended Packet Memory buffers"; + list traffic-class { + must "pause-threshold or pause-threshold-bytes"; + key "traffic-class-id"; + description + "configure traffic-class"; + leaf traffic-class-id { + type uint32 { + range "0..7" { + description + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + leaf pause-threshold { + type uint32 { + range "2..61440" { + description + "pause-threshold"; + } + } + must "../ms or ../us"; + must "not(../pause-threshold-bytes)"; + description + "configure pause-threshold"; + } + leaf pause-threshold-bytes { + type uint32 { + range "2..61440" { + description + "pause-threshold"; + } + } + must "../kbytes or ../mbytes"; + must "not(../pause-threshold)"; + description + "configure pause-threshold"; + } + container ms { + presence "Indicates a ms node is configured."; + description + "Milliseconds (2-25 ms)"; + leaf headroom { + type uint32 { + range "4..76800" { + description + "headroom"; + } + } + description + "configure headroom"; + } + } + container us { + presence "Indicates a us node is configured."; + description + "Microseconds (2000-25000 us)"; + leaf headroom { + type uint32 { + range "4..76800" { + description + "headroom"; + } + } + description + "configure headroom"; + } + } + container kbytes { + presence "Indicates a kbytes node is configured."; + description + "KBytes (1024-200000 kbytes)"; + leaf headroom { + type uint32 { + range "4..76800" { + description + "headroom"; + } + } + description + "configure headroom"; + } + } + container mbytes { + presence "Indicates a mbytes node is configured."; + description + "MBytes (1-200 mbytes)"; + leaf headroom { + type uint32 { + range "4..76800" { + description + "headroom"; + } + } + description + "configure headroom"; + } + } + } + list traffic-class-default { + key "traffic-class-id"; + description + "configure traffic-class"; + leaf traffic-class-id { + type uint32 { + range "0..7" { + description + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + } + } + container buffer-internal { + description + "Use Internal Packet Memory buffers"; + list traffic-class { + key "traffic-class-id"; + description + "configure traffic-class"; + leaf traffic-class-id { + type uint32 { + range "0..7" { + description + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + leaf pause-threshold { + type uint32 { + range "307200..1574400" { + description + "pause-threshold (bytes)"; + } + } + mandatory true; + description + "configure pause-threshold"; + } + leaf headroom { + type uint32 { + range "345600..1651200" { + description + "headroom (bytes)"; + } + } + mandatory true; + description + "configure headroom"; + } + leaf ecn { + type uint32 { + range "153600..897408" { + description + "ecn (bytes)"; + } + } + description + "configure ecn"; + } + leaf max-threshold { + type uint32 { + range "153600..1495680" { + description + "ecn max threshold(bytes)"; + } + } + description + "ecn max threshold"; + } + leaf probability-percentage { + type uint32 { + range "1..100" { + description + "percentage"; + } + } + description + "maximum probability percentage"; + } + } + list traffic-class-default { + key "traffic-class-id"; + description + "configure traffic-class"; + leaf traffic-class-id { + type uint32 { + range "0..7" { + description + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + } + } + } + } + } + container gue { + description + "gue decap tunnel's udp destination port configuration"; + container udp-dest-port { + description + "configure separate udp port numbers for ipv4/ipv6/mpls"; + leaf ipv4 { + type uint32 { + range "1000..64000" { + description + "value in decimal"; + } + } + must "../ipv6"; + description + "Configure unreserved udp port number for ipv4 payload"; + } + leaf ipv6 { + type uint32 { + range "1000..64000" { + description + "value in decimal"; + } + } + must "../ipv4 and ../mpls"; + description + "Configure unreserved udp port number for ipv6 payload"; + } + leaf mpls { + type uint32 { + range "1000..64000" { + description + "value in decimal"; + } + } + must "../ipv6"; + description + "Configure unreserved udp port number for mpls payload"; + } + } + } + container l2fib { + description + "Configure l2fib profiles"; + container pw-stats { + presence "Indicates a pw-stats node is configured."; + description + "Configure PW stats"; + } + container bridge-flush-convergence { + presence "Indicates a bridge-flush-convergence node is configured."; + description + "Configure BD flush convergence mode"; + } + container L2-high-scale { + presence "Indicates L2 high-scale mode is configured."; + description + "Configure L2 high-scale mode"; + } + container vxlan-dc-leaf { + presence "Configure datacenter profile for l2 vxlan deployments."; + description + "Configure vxlan-dc-leaf profile"; + } + } + leaf npu-compatibility { + type enumeration { + enum "Q100" { + value 1; + description + "Use Q100 for Chassis mode"; + } + enum "Q200" { + value 2; + description + "Use Q200 for Chassis mode"; + } + } + description + "Configure npu-compatibility mode for chassis type"; + } + container route { + description + "Configure route scale ipv6-unicast connected-prefix profile"; + container scale { + description + "Configure scale"; + container ipv6-unicast { + description + "ipv6-unicast"; + container connected-prefix { + description + "connected-prefix"; + container high { + presence "Indicates profile ipv6-unicast connected-prefix high is configured"; + description + "Enable profile ipv6-unicast connected-prefix high"; + } + } + } + container lpm { + description + "enable scale lpm profile"; + container tcam-banks { + presence "Indicates profile lpm tcam-banks is configured"; + description + "Enable high scale for LPM using TCAM banks"; + } + } + } + } + container flowspec { + description + "flowspec enable ipv6-packet-length configuration"; + container ipv6-packet-len-enable { + presence "Indicates profile flowspec ipv6-packet-len-enable is configured"; + description + "flowspec enable ipv6-packet-length configuration"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg.yang new file mode 100644 index 000000000..3b44f055d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-hw-module-profile-netflow-cfg"; + prefix um-8000-hw-module-profile-netflow-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-8000-hw-module-profile-cfg { + prefix a1; + } + 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 8000-hw-module-profile-netflow package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-19 { + description + "Updated the yang model as duplicate location key is removed from configuration + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "2.0.0"; + } + revision 2020-10-20 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:hw-module/a1:profile" { + description + "This augment extends 8000-hw-module profile nodes + configuration"; + container netflow { + description + "Configure Netflow profile."; + container ipfix315-enable { + description + "IPFIX 315 enable "; + container locations { + description + "Location of NETFLOW config"; + list location { + key "location-name"; + description + "Location of NETFLOW config"; + leaf location-name { + type xr:Node-id; + description + "Location of NETFLOW config (must be same as location-name)"; + } + } + } + } + container sflow-enable { + description + "sFlow enable "; + container locations { + description + "Location of sFlow config"; + list location { + key "location-name"; + description + "Location of sFlow config"; + leaf location-name { + type xr:Node-id; + description + "Location of sFlow config (must be same as location-name)"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-local-mac-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-local-mac-cfg.yang new file mode 100644 index 000000000..eb59eb04b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-local-mac-cfg.yang @@ -0,0 +1,53 @@ +module Cisco-IOS-XR-um-8000-local-mac-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-local-mac-cfg"; + prefix um-8000-local-mac-cfg; + + import ietf-yang-types { + prefix yang; + } + 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 8000-local-mac package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-05-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container local-mac { + description + "Configure local station MAC address"; + leaf address { + type yang:mac-address; + description + "Ethernet MAC address"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-spp-policer-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-spp-policer-cfg.yang new file mode 100644 index 000000000..b0a2d38ad --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-spp-policer-cfg.yang @@ -0,0 +1,90 @@ +module Cisco-IOS-XR-um-8000-spp-policer-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-spp-policer-cfg"; + prefix um-8000-spp-policer-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 8000-spp-policer package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + ""; + container lpts { + description + "lpts configuration commands"; + container punt { + description + "punt configuration commands"; + container police { + description + "ingress policers configuration command"; + container spp { + description + "SPP policers"; + container nd { + description + "ND policer"; + leaf rate { + type uint32 { + range "1..200" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable ND policer"; + } + } + } + } + } + } + } + + augment "/location:locations/location:location" { + description + ""; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + ""; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-udf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-udf-cfg.yang new file mode 100644 index 000000000..0ca3f76ae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-8000-udf-cfg.yang @@ -0,0 +1,125 @@ +module Cisco-IOS-XR-um-8000-udf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-8000-udf-cfg"; + prefix um-8000-udf-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 8000-udf package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container udfs { + description + "UDF configuration"; + list udf { + key "udf-name"; + description + "UDF configuration"; + leaf udf-name { + type xr:Cisco-ios-xr-string { + length "1..16" { + description + "UDF name - maximum 16 characters"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "UDF configuration"; + } + container header { + description + "Header for UDF"; + leaf header-type { + type enumeration { + enum "inner" { + value 0; + description + "Inner header for UDF"; + } + enum "outer" { + value 1; + description + "Outer header for UDF"; + } + } + mandatory true; + description + "Header for UDF"; + } + leaf udf-layer { + type enumeration { + enum "l2" { + value 0; + description + "L2 layer for UDF"; + } + enum "l3" { + value 1; + description + "L3 layer for UDF"; + } + enum "l4" { + value 2; + description + "L4 layer for UDF"; + } + } + mandatory true; + description + "configure this node"; + } + leaf offset { + type uint32 { + range "0..65535" { + description + "Configure the offset value (bytes)"; + } + } + mandatory true; + description + "Configure the offset (bytes) in the header"; + } + leaf length { + type uint32 { + range "0..65535" { + description + "Configure the length (bytes)"; + } + } + mandatory true; + description + "Configure the length (bytes) in the header"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-acct-mobile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-acct-mobile-cfg.yang new file mode 100644 index 000000000..0a252b445 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-acct-mobile-cfg.yang @@ -0,0 +1,379 @@ +module Cisco-IOS-XR-um-aaa-acct-mobile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-acct-mobile-cfg"; + prefix um-aaa-acct-mobile-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a1; + } + 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 aaa-acct-mobile package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:aaa/a1:accounting" { + description + "This augment extends aaa accounting nodes + configuration"; + container mobile { + description + "Set account lists for mobile subscriber"; + container default { + presence "Indicates a default node is configured."; + description + "Default list name for AAA accounting"; + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Set broadcast accounting for Subscriber"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + container accounting-lists { + description + "List name for AAA accounting"; + list accounting-list { + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA accounting"; + } + } + description + "List name for AAA accounting"; + } + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Set broadcast accounting for Subscriber"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-cfg.yang new file mode 100644 index 000000000..f7de0c491 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-cfg.yang @@ -0,0 +1,4221 @@ +module Cisco-IOS-XR-um-aaa-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-cfg"; + prefix um-aaa-cfg; + + 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 aaa package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-28 { + description + "Removed range check for banner/login node + 2022-07-18 + Modified must statements for authorization-list nodes"; + semver:module-version "2.1.0"; + } + revision 2021-10-10 { + description + "Modified must statements for group-2 nodes + 2021-07-07 + Removed conatiner api from container authorization and accounting"; + semver:module-version "2.0.0"; + } + revision 2021-02-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container aaa { + description + "Authentication, Authorization and Accounting"; + container authentication { + description + "AAA Authentication data"; + container ppp { + description + "Set authentication lists for PPP"; + list authentication-list { + key "list-name"; + description + "List name for AAA authentication"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authentication"; + } + } + type string { + length "1..253" { + description + "List name for AAA authentication. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authentication"; + } + container local { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../local) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../local) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../local) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../../local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name or ../../../local) + and not(../local or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name or ../../../local) + and not(../local or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../local) and + not(../local or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Second server-group"; + container local { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container tacacs { + must + "(../../group-2/local or ../../group-2/radius or + ../../group-2/server-group-name) + and not(../local or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/local or ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../local or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container tacacs { + must + "(../../group-3/local or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../local or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container onepk { + description + "Set authentication lists for OnePk"; + list authentication-list { + key "list-name"; + description + "List name for AAA authentication"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authentication"; + } + } + type string { + length "1..253" { + description + "List name for AAA authentication. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authentication"; + } + container local { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../local) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../local) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../local) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../../local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name or ../../../local) + and not(../local or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name or ../../../local) + and not(../local or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../local) and + not(../local or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Second server-group"; + container local { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container tacacs { + must + "(../../group-2/local or ../../group-2/radius or + ../../group-2/server-group-name) + and not(../local or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/local or ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../local or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container tacacs { + must + "(../../group-3/local or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../local or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container login { + description + "Set authentication lists for login"; + list authentication-list { + key "list-name"; + description + "List name for AAA authentication"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authentication"; + } + } + type string { + length "1..253" { + description + "List name for AAA authentication. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authentication"; + } + container local { + must + "not(../line or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container line { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a line node is configured."; + description + "Use line password for authentication"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../local or ../../../line) and + not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "not(../../../local or ../../../line) and + not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../local or ../../../line) and + not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../line or ../tacacs or ../radius or ../server-group-name or + ../../../local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container line { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../../line)"; + presence "Indicates a line node is configured."; + description + "Use line password for authentication"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name + or ../../../local or ../../../line) + and not(../local or ../line or ../radius or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name + or ../../../local or ../../../line) + and not(../local or ../line or ../tacacs or + ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../local or ../../../line) + and not(../local or ../line or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Second server-group"; + container local { + must + "(../../group-2/line or ../../group-2/tacacs or + ../../group-2/radius or + ../../group-2/server-group-name) and + not(../line or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container line { + must + "(../../group-2/local or ../../group-2/tacacs or + ../../group-2/radius or + ../../group-2/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/line)"; + presence "Indicates a line node is configured."; + description + "Use line password for authentication"; + } + container tacacs { + must + "(../../group-2/local or ../../group-2/line or + ../../group-2/radius or + ../../group-2/server-group-name) + and not(../local or ../line or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/local or ../../group-2/line or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../line or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or ../../group-2/line or + ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../local or ../line or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/line or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../line or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container line { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/line)"; + presence "Indicates a line node is configured."; + description + "Use line password for authentication"; + } + container tacacs { + must + "(../../group-3/local or ../../group-3/line or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../line or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/local or ../../group-3/line or + ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../line or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or ../../group-3/line or + ../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) + and not(../local or ../line or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + } + container authorization { + description + "AAA Authorization data"; + container exec { + description + "Set authorization lists for EXEC"; + list authorization-list { + must + "local or none or groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name"; + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authorization"; + } + } + type string { + length "1..253" { + description + "List name for AAA authorization. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authorization"; + } + container local { + must + "not(../none or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../local or ../../../none) and + not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "not(../../../local or ../../../none) and + not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../local or ../../../none) and + not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../../none or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../../local or ../none)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../../local or ../../group-1/radius or + ../../group-1/server-group-name) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container local { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name or + ../../group-2/local) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-2/local or + ../../group-2/radius or + ../../group-2/server-group-name) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-3/local or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container eventmanager { + description + "Set Event Manager authorization method"; + list authorization-list { + must + "local or groups/group-1/tacacs or + groups/group-1/server-group-name"; + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authorization"; + } + } + type string { + length "1..253" { + description + "List name for AAA authorization. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authorization"; + } + container local { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../local) and not(../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../local) and not(../tacacs)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../tacacs or ../server-group-name or + ../../../local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container tacacs { + must + "(../../../local or + ../../group-1/server-group-name) + and not(../local or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../local or ../tacacs)"; + description + "server-group name"; + } + } + } + } + } + container commands { + description + "For EXEC (shell) commands"; + list authorization-list { + must + "none or groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name"; + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authorization"; + } + } + type string { + length "1..253" { + description + "List name for AAA authorization. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authorization"; + } + container local { + must "not(../none)"; + presence "Indicates a local node is configured."; + description + "Authorize if authenticated locally"; + } + container none { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../none) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../none) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../none) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container none { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name + or ../../../local or ../../../none) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name + or ../../../local or ../../../none) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../local or ../../../none) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-2/radius or + ../../group-2/server-group-name) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Fourth server-group"; + container none { + must + "(../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container onepk { + description + "Set authorization lists for ONE-PK"; + list authorization-list { + must + "local or none or groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name"; + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authorization"; + } + } + type string { + length "1..253" { + description + "List name for AAA authorization. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authorization"; + } + container local { + must + "not(../none or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../local or ../../../none) and + not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "not(../../../local or ../../../none) and + not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../local or ../../../none) and + not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../../none or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../../local or ../none)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../../local or ../../group-1/radius or + ../../group-1/server-group-name) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container local { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name or + ../../group-2/local) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-2/local or + ../../group-2/radius or + ../../group-2/server-group-name) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-3/local or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container nacm { + description + "Set authorization lists for NACM"; + list authorization-list { + must + "local or none or groups/group-1/tacacs or + groups/group-1/server-group-name or + only-external/local or only-external/none or + only-external/groups/group-1/tacacs or + only-external/groups/group-1/server-group-name or + prefer-external/local or prefer-external/none or + prefer-external/groups/group-1/tacacs or + prefer-external/groups/group-1/server-group-name"; + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authorization"; + } + } + type string { + length "1..253" { + description + "List name for AAA authorization. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authorization"; + } + container local { + must + "not(../none or ../groups/group-1/tacacs or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../local or ../../../none) and + not(../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../local or ../../../none) and + not(../tacacs)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../../none or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../tacacs or ../server-group-name or + ../../../local or ../none)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../local or ../tacacs or + ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../../local or + ../../group-1/server-group-name) + and not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container local { + must + "(../../group-2/tacacs or + ../../group-2/server-group-name or + ../../group-2/local) and + not(../none or ../tacacs or + ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-2/tacacs or + ../../group-2/server-group-name) and + not(../local or ../tacacs or + ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-2/local or + ../../group-2/server-group-name) + and not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../tacacs or + ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-3/local or + ../../group-3/server-group-name) and + not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/server-group-name) + and not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + } + container only-external { + description + "only external groups"; + container local { + must + "not(../none or ../groups/group-1/tacacs or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../local or ../../../none) and + not(../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../local or ../../../none) and + not(../tacacs)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../../none or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../tacacs or ../server-group-name or + ../../../local or ../none)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../local or ../tacacs or + ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../../local or + ../../group-1/server-group-name) + and not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container local { + must + "(../../group-2/tacacs or + ../../group-2/server-group-name) and + not(../none or ../tacacs or + ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-2/tacacs or + ../../group-2/server-group-name or + ../../group-2/local) and + not(../local or ../tacacs or + ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-2/local or + ../../group-2/server-group-name) + and not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../tacacs or + ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-3/local or + ../../group-3/server-group-name) and + not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/server-group-name) + and not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + } + } + container prefer-external { + description + "Prefer external groups with local groups"; + container local { + must + "not(../none or ../groups/group-1/tacacs or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../local or ../../../none) and + not(../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../local or ../../../none) and + not(../tacacs)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../../none or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../tacacs or ../server-group-name or + ../../../local or ../none)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../local or ../tacacs or + ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../../local or + ../../group-1/server-group-name) + and not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) and + not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container local { + must + "(../../group-2/tacacs or + ../../group-2/server-group-name) and + not(../none or ../tacacs or + ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-2/tacacs or + ../../group-2/server-group-name or + ../../group-2/local) and + not(../local or ../tacacs or + ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-2/local or + ../../group-2/server-group-name) + and not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../tacacs or + ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-3/local or + ../../group-3/server-group-name) and + not(../local or ../none or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/server-group-name) + and not(../local or ../none or ../tacacs)"; + description + "server-group name"; + } + } + } + } + } + } + container network { + description + "For network services (such as IKE)"; + list authorization-list { + must + "local or none or groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name"; + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA authorization"; + } + } + type string { + length "1..253" { + description + "List name for AAA authorization. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA authorization"; + } + container local { + must + "not(../none or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../local or ../../../none) and + not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "not(../../../local or ../../../none) and + not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../local or ../../../none) and + not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../../none or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../../local or ../none)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../../local or ../../group-1/radius or + ../../group-1/server-group-name) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/server-group-name) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../../local or ../../group-1/tacacs or + ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container local { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name or + ../../group-2/local) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-2/local or + ../../group-2/radius or + ../../group-2/server-group-name) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or + ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "no authorization"; + } + container tacacs { + must + "(../../group-3/local or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or + ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + } + container accounting { + description + "AAA Accounting data"; + container update { + description + "For starting Network UPDATE accounting"; + container newinfo { + must "not(../periodic)"; + presence "Indicates a newinfo node is configured."; + description + "Update records for new accountable information only"; + } + leaf periodic { + type uint32 { + range "1..35791394" { + description + "Periodic update interval in minutes"; + } + } + must "not(../newinfo)"; + description + "Update records at periodic intervals"; + } + } + container exec { + description + "For starting an EXEC (shell)"; + list accounting-list { + must + "(start-stop or stop-only) and (none or + groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name)"; + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA accounting"; + } + } + type string { + length "1..253" { + description + "List name for AAA accounting. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA accounting"; + } + container start-stop { + must "not(../stop-only)"; + presence "Indicates a start-stop node is configured."; + description + "start and stop records"; + } + container stop-only { + must "not(../start-stop)"; + presence "Indicates a stop-only node is configured."; + description + "stop records only"; + } + container none { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../none) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../none) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../none) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container none { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name or ../../../none) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name or ../../../none) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../none) and + not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-2/none or ../../group-2/radius or + ../../group-2/server-group-name) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Fourth server-group"; + container none { + must + "(../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-3/none or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container commands { + description + "For EXEC (shell) commands"; + list accounting-list { + must + "(start-stop or stop-only) and (none or local or + groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name)"; + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA accounting"; + } + } + type string { + length "1..253" { + description + "List name for AAA accounting. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA accounting"; + } + container start-stop { + must "not(../stop-only)"; + presence "Indicates a start-stop node is configured."; + description + "start and stop records"; + } + container stop-only { + must "not(../start-stop)"; + presence "Indicates a stop-only node is configured."; + description + "stop records only"; + } + container none { + must + "not(../local or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container local { + must + "not(../none or ../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must + "not(../../../none or ../../../local) and + not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "not(../../../none or ../../../local) and + not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "not(../../../none or ../../../local) and + not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container local { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../../local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../../none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name + or ../../../local or ../../../none) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name + or ../../../local or ../../../none) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../local or ../../../none) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container local { + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/radius or + ../../group-2/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or ../../group-2/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-2/local or ../../group-2/tacacs or + ../../group-2/radius or + ../../group-2/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-2/local or ../../group-2/none or + ../../group-2/radius or + ../../group-2/server-group-name) + and not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/local or ../../group-2/none or + ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/local or ../../group-2/none or + ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Second server-group"; + container local { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/local)"; + presence "Indicates a local node is configured."; + description + "Local command accounting using syslog"; + } + container none { + must + "(../../group-3/local or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../tacacs or ../radius or + ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-3/local or ../../group-3/none or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../local or ../none or ../radius or + ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/local or ../../group-3/none or + ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../local or ../none or ../tacacs or + ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/local or ../../group-3/none or + ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../local or ../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container system { + description + "For System events"; + container rp-failover { + description + "flag for rp-failover"; + list accounting-list { + must + "(start-stop or stop-only) and (none or groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name)"; + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA accounting"; + } + } + type string { + length "1..253" { + description + "List name for AAA accounting. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA accounting"; + } + container start-stop { + must "not(../stop-only)"; + presence "Indicates a start-stop node is configured."; + description + "start and stop records"; + } + container stop-only { + must "not(../start-stop)"; + presence "Indicates a stop-only node is configured."; + description + "stop records only"; + } + container none { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../none) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../none) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../none) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container none { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../none) and + not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-2/none or ../../group-2/radius or + ../../group-2/server-group-name) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Fourth server-group"; + container none { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-3/none or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + list accounting-list { + must + "start-stop and (none or + groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name)"; + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA accounting"; + } + } + type string { + length "1..253" { + description + "List name for AAA accounting. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA accounting"; + } + container start-stop { + presence "Indicates a start-stop node is configured."; + description + "start and stop records"; + } + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Set broadcast accounting"; + } + container none { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../none) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../none) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../none) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container none { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../none) and + not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-2/none or ../../group-2/radius or + ../../group-2/server-group-name) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Fourth server-group"; + container none { + must + "(../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-3/none or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container network { + description + "For network services (such as IKE, PPP)"; + list accounting-list { + must + "(start-stop or stop-only) and (none or + groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name)"; + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA accounting"; + } + } + type string { + length "1..253" { + description + "List name for AAA accounting. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA accounting"; + } + container start-stop { + must "not(../stop-only)"; + presence "Indicates a start-stop node is configured."; + description + "start and stop records"; + } + container stop-only { + must "not(../start-stop)"; + presence "Indicates a stop-only node is configured."; + description + "stop records only"; + } + container none { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../none) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../none) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../none) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container none { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../none) and + not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-2/none or ../../group-2/radius or + ../../group-2/server-group-name) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Fourth server-group"; + container none { + must + "(../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-3/none or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + container onepk { + description + "For ONE-PK services"; + list accounting-list { + must + "(start-stop or stop-only) and (none or + groups/group-1/tacacs or + groups/group-1/radius or + groups/group-1/server-group-name)"; + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type union { + type string { + pattern "default" { + description + "Default list name for AAA accounting"; + } + } + type string { + length "1..253" { + description + "List name for AAA accounting. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + } + description + "List name for AAA accounting"; + } + container start-stop { + must "not(../stop-only)"; + presence "Indicates a start-stop node is configured."; + description + "start and stop records"; + } + container stop-only { + must "not(../start-stop)"; + presence "Indicates a stop-only node is configured."; + description + "stop records only"; + } + container none { + must + "not(../groups/group-1/tacacs or + ../groups/group-1/radius or + ../groups/group-1/server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container groups { + description + "Use Server-group"; + container group-1 { + description + "First server-group"; + container tacacs { + must "not(../../../none) and not(../radius or ../server-group-name)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must "not(../../../none) and not(../tacacs or ../server-group-name)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must "not(../../../none) and not(../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-2 { + description + "Second server-group"; + container none { + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name) and + not(../tacacs or ../radius or ../server-group-name)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-1/radius or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-1/tacacs or ../../group-1/server-group-name + or ../../../none) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-1/tacacs or ../../group-1/radius or + ../../group-1/server-group-name or ../../../none) and + not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-3 { + description + "Third server-group"; + container none { + must + "(../../group-2/tacacs or ../../group-2/radius or + ../../group-2/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-2/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-2/none or ../../group-2/radius or + ../../group-2/server-group-name) + and not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/server-group-name) + and not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-2/none or ../../group-2/tacacs or + ../../group-2/radius or ../../group-2/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + container group-4 { + description + "Fourth server-group"; + container none { + must + "(../../group-3/tacacs or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../tacacs or ../radius or ../server-group-name or + ../../group-3/none)"; + presence "Indicates a none node is configured."; + description + "No accounting"; + } + container tacacs { + must + "(../../group-3/none or ../../group-3/radius or + ../../group-3/server-group-name) and + not(../none or ../radius or ../server-group-name or + ../../group-1/tacacs or ../../group-2/tacacs or + ../../group-3/tacacs)"; + presence "Indicates a tacacs node is configured."; + description + "Use list of all TACACS+ hosts"; + } + container radius { + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/server-group-name) and + not(../none or ../tacacs or ../server-group-name or + ../../group-1/radius or ../../group-2/radius or + ../../group-3/radius)"; + presence "Indicates a radius node is configured."; + description + "Use list of all RADIUS hosts"; + } + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9 + and for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + must + "(../../group-3/none or ../../group-3/tacacs or + ../../group-3/radius or ../../group-3/server-group-name) + and not(../none or ../tacacs or ../radius)"; + description + "server-group name"; + } + } + } + } + } + } + container banner { + description + "AAA banner"; + leaf login { + type string; + description + "c banner-text c, where 'c' is a delimiting character"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-diameter-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-diameter-cfg.yang new file mode 100644 index 000000000..3b4029dba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-diameter-cfg.yang @@ -0,0 +1,882 @@ +module Cisco-IOS-XR-um-aaa-diameter-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-diameter-cfg"; + prefix um-aaa-diameter-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a2; + } + 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 aaa-diameter package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-02-04 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container diameter { + description + "Enable SNMP diameter traps"; + container protocolerror { + presence "Indicates a protocolerror node is configured."; + description + "Enable protocol error notifications"; + } + container transientfail { + presence "Indicates a transientfail node is configured."; + description + "Enable transient failure notification"; + } + container permanentfail { + presence "Indicates a permanentfail node is configured."; + description + "Enable permanent failure notification"; + } + container peerdown { + presence "Indicates a peerdown node is configured."; + description + "Enable peer connection down notification"; + } + container peerup { + presence "Indicates a peerup node is configured."; + description + "Enable peer connection up notification"; + } + } + } + augment "/a2:aaa" { + description + "This augment extends aaa nodes configuration"; + container group { + description + "AAA group definitions"; + container server { + description + "AAA Server group definition"; + container diameter { + description + "DIAMETER server-group definition"; + container server-groups { + description + "Server group name"; + list server-group { + key "server-group-name"; + description + "Server group name"; + leaf server-group-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Server group name"; + } + } + description + "Server group name"; + } + container servers { + description + "Specify a DIAMETER server"; + list server { + key "server-name"; + description + "Specify a DIAMETER server"; + leaf server-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Hostname of DIAMETER server"; + } + } + description + "Specify a DIAMETER server"; + } + } + } + } + } + } + } + } + container diameter { + description + "DIAMETER server definition"; + container peers { + description + "Peer configuration"; + list peer { + key "peer-name"; + description + "Name for the diameter peer configuration"; + leaf peer-name { + type string { + length "1..800" { + description + "Name for the diameter peer configuration"; + } + } + description + "Name for the diameter peer configuration"; + } + container address { + description + "Specify a Diameter peer address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 Address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + description + "IPv6 Address"; + } + } + container destination { + description + "Peer information"; + leaf host { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Host name in FQDN format"; + } + } + description + "host information"; + } + leaf realm { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Realm to which the peer belongs to"; + } + } + description + "realm information"; + } + } + container ip { + description + "IP specific commands"; + container vrf { + description + "VRF the peer belongs to"; + leaf forwarding { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF Table name"; + } + } + description + "Forwarding table"; + } + } + } + container timer { + description + "Timers used for the peer"; + leaf connection { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Connection retry timer"; + } + leaf transaction { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Transaction timer"; + } + leaf watchdog { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Watchdog timer"; + } + } + container transport { + description + "Specify a Diameter transport"; + container tcp { + description + "Specify a Diameter transport protocol"; + leaf port { + type uint32 { + range "1..65535" { + description + "Port number"; + } + } + description + "Port number on which the peer is running(default is 3868)"; + } + } + container security-type { + description + "Specify a Diameter security type"; + container tls { + presence "Indicates a tls node is configured."; + description + "Use tls for Diameter transport"; + } + } + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in DIAMETER packets"; + } + container peer-type { + description + "Peer Type"; + container server { + presence "Indicates a server node is configured."; + description + "Peer is a server"; + } + } + container preferred-server { + presence "Indicates a preferred-server node is configured."; + description + "Enable Preferred server for the peer"; + } + container origin { + description + "origin sub command"; + container realms { + description + "origin realm information"; + list realm { + key "realm-name"; + description + "origin realm information"; + leaf realm-name { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Origin realm string"; + } + } + description + "origin realm information"; + } + container access-interfaces { + description + "Specify a access interface "; + list access-interface { + key "access-interface-name"; + description + "Specify a access interface "; + leaf access-interface-name { + type xr:Interface-name; + description + "Specify a access interface "; + } + } + } + } + } + } + container auth-session-stateless { + presence "Indicates a auth-session-stateless node is configured."; + description + "Maintain NASREQ session stateless"; + } + } + } + container origin { + description + "Origin sub commands"; + leaf host { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Host name in FQDN format"; + } + } + description + "host information"; + } + leaf realm { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Origin realm string"; + } + } + description + "Realm information "; + } + } + container timer { + description + "Timers used for the peer"; + leaf connection { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Connection retry timer"; + } + leaf transaction { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Transaction timer"; + } + leaf watchdog { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Watchdog timer"; + } + } + container service { + description + "Peer configuration"; + list peer { + key "peer-name"; + description + "Name for the diameter peer configuration"; + leaf peer-name { + type string { + length "1..800" { + description + "Name for the diameter peer configuration"; + } + } + description + "Name for the diameter peer configuration"; + } + leaf monitoring-key { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name for the diameter peer configuration"; + } + } + description + "Peer configuration"; + } + } + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in DIAMETER packets"; + } + container vendor { + description + "Vendor specific"; + container supported { + description + "Supported vendors"; + container threegpp { + presence "Indicates a threegpp node is configured."; + description + "3GPP attribute support"; + } + container cisco { + presence "Indicates a cisco node is configured."; + description + "Cisco attribute support"; + } + container vodafone { + presence "Indicates a vodafone node is configured."; + description + "Vodafone attribute support"; + } + container etsi { + presence "Indicates a etsi node is configured."; + description + "Etsi attribute support"; + } + } + } + container tls { + description + "TLS sub commands"; + leaf trustpoint { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "trustpoint label to be used"; + } + } + description + "trustpoint information"; + } + } + container subscription-id { + description + "Subscription-Id AVP, to identify the end user's subscription"; + leaf type { + type uint32 { + range "0..4" { + description + "[END_USER_E164(0), END_USER_IMSI(1), END_USER_SIP_URI(2), END_USER_NAI(3), END_USER_PRIVATE(4)]"; + } + } + description + "Type of indentifier carried by subscription-Id AVP"; + } + } + container gx { + description + "Start diameter policy-if"; + container enable { + presence "Indicates an enable node is configured."; + description + "gx enable"; + } + leaf tx-timer { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Set transaction timer"; + } + leaf retransmit { + type uint32 { + range "1..10" { + description + "Timer value in seconds"; + } + } + description + "Set retransmit count"; + } + leaf dest-host { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Destination Host name in FQDN format"; + } + } + description + "Set retransmit count"; + } + } + container gy { + description + "Start diameter prepaid service"; + container enable { + presence "Indicates an enable node is configured."; + description + "gy enable"; + } + leaf tx-timer { + type uint32 { + range "6..1000" { + description + "Timer value in seconds"; + } + } + description + "Set transaction timer"; + } + leaf retransmit { + type uint32 { + range "1..10" { + description + "Timer value in seconds"; + } + } + description + "Set retransmit count"; + } + leaf dest-host { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Destination Host name in FQDN format"; + } + } + description + "Set destination host"; + } + leaf service-context-id { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Service Context ID "; + } + } + description + "Set service context id"; + } + } + container nas { + description + "Start diameter Nas"; + container enable { + presence "Indicates an enable node is configured."; + description + "nas enable"; + } + leaf dest-host { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Destination Host name in FQDN format"; + } + } + description + "Set destination host for NAS"; + } + } + container quota-high-usage { + description + "To disable quota high usage disconnect (applicable only for GX_PLUS)"; + container disconnect-disable { + presence "Indicates a disconnect-disable node is configured."; + description + "To disable quota high usage disconnect (applicable only for GX_PLUS)"; + } + } + container attribute { + description + "Attribute list configuration for test command"; + container lists { + description + "attribute list configuration"; + list list { + key "attribute-list-number"; + description + "attribute list number"; + leaf attribute-list-number { + type uint32 { + range "0..99" { + description + "attribute list number"; + } + } + description + "attribute list number"; + } + container attribute { + description + "Specify an attribute definition"; + container attribute-lists { + description + "Specify an attribute-list definition"; + list attribute-list { + key "attribute-id"; + description + "Specify an attribute-list definition"; + leaf attribute-id { + type uint32 { + range "1..65535" { + description + "Attribute id"; + } + } + description + "Attribute id"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Address format"; + } + leaf binary { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "value in hex format"; + } + } + description + "Binary type"; + } + leaf boolean { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Boolean type"; + } + leaf diameter-identity { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "value in string format"; + } + } + description + "diameter identity"; + } + leaf enum { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Enumeration type"; + } + leaf grouped { + type uint32 { + range "0..99" { + description + "the attr list id for sub-attrs"; + } + } + description + "Grouped attribute"; + } + leaf string { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "value in string format"; + } + } + description + "String type"; + } + leaf ulong { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Numeric type"; + } + leaf ulonglong { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Numeric type"; + } + leaf utc { + type uint32 { + range "0..4294967295" { + description + "value in utc format"; + } + } + description + "Numeric type"; + } + container mandatory { + presence "Indicates a mandatory node is configured."; + description + "specify if the attribute is mandatory"; + } + } + } + container vendor-id-attribute-lists { + description + "Specify an vendor-id-attribute-list definition"; + list vendor-id-attribute-list { + key "attribute-id vendor-id"; + description + "Specify an vendor-id-attribute-list definition"; + leaf attribute-id { + type uint32 { + range "1..65535" { + description + "Attribute id"; + } + } + description + "Attribute id"; + } + leaf vendor-id { + type uint32 { + range "0..4294967295" { + description + "value for vendor id"; + } + } + description + "vendor id"; + } + leaf address { + type inet:ipv4-address-no-zone; + description + "Address format"; + } + leaf binary { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "value in hex format"; + } + } + description + "Binary type"; + } + leaf boolean { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Boolean type"; + } + leaf diameter-identity { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "value in string format"; + } + } + description + "diameter identity"; + } + leaf enum { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Enumeration type"; + } + leaf grouped { + type uint32 { + range "0..99" { + description + "the attr list id for sub-attrs"; + } + } + description + "Grouped attribute"; + } + leaf string { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "value in string format"; + } + } + description + "String type"; + } + leaf ulong { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Numeric type"; + } + leaf ulonglong { + type uint32 { + range "0..4294967295" { + description + "attribute value number"; + } + } + description + "Numeric type"; + } + leaf utc { + type uint32 { + range "0..4294967295" { + description + "value in utc format"; + } + } + description + "Numeric type"; + } + container mandatory { + presence "Indicates a mandatory node is configured."; + description + "specify if the attribute is mandatory"; + } + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-nacm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-nacm-cfg.yang new file mode 100644 index 000000000..b20c4ff2a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-nacm-cfg.yang @@ -0,0 +1,404 @@ +module Cisco-IOS-XR-um-aaa-nacm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-nacm-cfg"; + prefix um-aaa-nacm-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a1; + } + 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 aaa-nacm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-05 { + description + "Added container enable-external-policies + 2022-07-11 + Added missing description statement to nodes + 2022-06-27 + Removed must expression under group node + 2021-11-02 + Added bypass-get-config and bypass-get-oper nodes"; + semver:module-version "2.0.0"; + } + revision 2021-02-11 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:aaa" { + description + "This augment extends aaa nodes configuration"; + container nacm { + description + "NACM configuration"; + container read-default { + description + "Read default flag"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Permit read operation by default."; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Deny read operation by default."; + } + } + container write-default { + description + "Write default flag"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Permit write operation by default."; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Deny write operation by default."; + } + } + container exec-default { + description + "Exec default flag"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Permit exec operation by default."; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Deny exec operation by default."; + } + } + container enable-external-policies { + presence "Indicates a enable-external-policies node is configured."; + description + "Enable external policies flag."; + } + container enable-external-groups { + description + "Enable external groups flag"; + container true { + must "not(../false)"; + presence "Indicates a true node is configured."; + description + "Enable external groups by default."; + } + container false { + must "not(../true)"; + presence "Indicates a false node is configured."; + description + "Disable external groups by default."; + } + } + container bypass-get-config { + description + "Bypass get-config response authorization."; + container enabled { + must "not(../disabled)"; + presence "Indicates a enabled node is configured."; + description + "Enable bypass of get-config response authorization."; + } + container disabled { + must "not(../enabled)"; + presence "Indicates a disabled node is configured."; + description + "Disable bypass of get-config response authorization."; + } + } + container bypass-get-oper { + description + "Bypass get response authorization."; + container enabled { + must "not(../disabled)"; + presence "Indicates a enabled node is configured."; + description + "Enable bypass of get response authorization."; + } + container disabled { + must "not(../enabled)"; + presence "Indicates a disabled node is configured."; + description + "Disable bypass of get response authorization."; + } + } + container groups { + description + "Specify groups in nacm"; + list group { + key "group-name"; + description + "Specify groups in nacm"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of nacm group"; + } + } + description + "Specify groups in nacm"; + } + container usernames { + presence "Indicates a usernames node is configured."; + description + "Usernames list to add under nacm group"; + leaf-list username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Username to add under nacm group"; + } + } + max-elements "16"; + description + "Username to add under nacm group"; + } + } + } + } + container rule-lists { + description + "Specify rule-list in nacm"; + list rule-list { + key "index name"; + description + "Specify rule-list in nacm"; + leaf index { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Index of nacm rule-list"; + } + } + description + "Specify rule-list in nacm"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of nacm rule-list"; + } + } + description + "Name of nacm rule-list"; + } + container groupnames { + description + "Specify groups under rule-list"; + leaf-list groupname { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Groupname to add under nacm rule-list"; + } + } + max-elements "16"; + description + "Groupname to add under nacm rule-list"; + } + } + container rules { + description + "Specify rules in nacm rule-list"; + list rule { + key "index name"; + description + "Specify rules in nacm rule-list"; + leaf index { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Index of nacm rule in rule-list"; + } + } + description + "Specify rules in nacm rule-list"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of nacm rule in rule-list"; + } + } + description + "Name of nacm rule in rule-list"; + } + container action { + description + "Action for rule"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Action value for rule"; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Action value for rule"; + } + } + leaf module-name { + type string { + length "1..800" { + description + "Module-name value for rule"; + } + } + description + "Module-name for rule"; + } + container rule-type { + description + "Rule-type values for rule"; + leaf rpc { + type string { + length "1..800" { + description + "rpc value for rule"; + } + } + must "not(../data-node)"; + description + "Rule-type rpc"; + } + leaf data-node { + type string { + length "1..800" { + description + "Rule-type value for rule"; + } + } + must "not(../rpc)"; + description + "rule-type data-node"; + } + } + container access-operations { + presence "Indicates a access-operations node is configured."; + description + "Access-operations for rule"; + leaf create { + type uint32 { + range "0..1" { + description + "Create bit for rule"; + } + } + mandatory true; + description + "Create bit for rule"; + } + leaf read { + type uint32 { + range "0..1" { + description + "Read bit for rule"; + } + } + mandatory true; + description + "Read bit for rule"; + } + leaf update { + type uint32 { + range "0..1" { + description + "Update bit for rule"; + } + } + mandatory true; + description + "Update bit for rule"; + } + leaf delete { + type uint32 { + range "0..1" { + description + "Delete bit for rule"; + } + } + mandatory true; + description + "Delete bit for rule"; + } + leaf exec { + type uint32 { + range "0..1" { + description + "Exec bit for rule"; + } + } + mandatory true; + description + "Exec bit for rule"; + } + leaf all { + type uint32 { + range "0..1" { + description + "All bit for rule"; + } + } + mandatory true; + description + "All bits for rule"; + } + } + leaf comment { + type string { + length "1..800" { + description + "Comment value for rule"; + } + } + description + "Comment for rule"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-radius-server-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-radius-server-cfg.yang new file mode 100644 index 000000000..10e713925 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-radius-server-cfg.yang @@ -0,0 +1,1237 @@ +module Cisco-IOS-XR-um-aaa-radius-server-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-radius-server-cfg"; + prefix um-aaa-radius-server-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a1; + } + 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 aaa-radius-server package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2021-02-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature check_input_typ6_validity { + description + "check input typ6 validity"; + } + + augment "/a1:aaa" { + description + "This augment extends aaa nodes configuration"; + container group { + description + "AAA group definitions"; + container server { + description + "AAA Server group definition"; + container radius { + description + "RADIUS server-group definition"; + container server-groups { + description + "Server group name"; + list server-group { + key "server-group-name"; + description + "Server group name"; + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for radius server group are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + description + "Server group name"; + } + container servers { + description + "Specify a RADIUS server"; + list server { + key "ordering-index address auth-port acct-port"; + description + "Specify a RADIUS server"; + leaf ordering-index { + type uint32; + description + "This is used to sort the users in the order of + precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Specify a RADIUS server"; + } + leaf auth-port { + type uint32 { + range "0..65535" { + description + "Authentication port number (default 1645)"; + } + } + description + "RADIUS server authentication port"; + } + leaf acct-port { + type uint32 { + range "0..65535" { + description + "Accounting port number (default 1645)"; + } + } + description + "RADIUS server accounting port"; + } + } + } + container load-balance { + description + "Radius load-balancing options."; + container method { + description + "Method by which the next host will be picked."; + container least-outstanding { + presence "Indicates a least-outstanding node is configured."; + description + "Pick the server with the least transactions outstanding."; + leaf batch-size { + type uint32 { + range "1..1500" { + description + "Batch size for selection of the server (default 25)"; + } + } + description + "Batch size for selection of the server."; + } + container ignore-preferred-server { + presence "Indicates a ignore-preferred-server node is configured."; + description + "Disable preferred server for this Server Group"; + } + } + } + } + leaf deadtime { + type uint32 { + range "1..1440" { + description + "Deadtime limit in minutes (default 0)"; + } + } + description + "Time in minutes after which a RADIUS server will be marked UP after it has gone dead"; + } + container throttle { + presence "Indicates a throttle node is configured."; + description + "Radius throttling options."; + leaf access { + type uint32 { + range "0..65535" { + description + "Number of outstanding access requests after which throttling should be performed (Preferable value 100)"; + } + } + description + "To flow control the number of access requests sent to a radius server"; + } + leaf access-timeout { + type uint32 { + range "1..10" { + description + "Number of timeouts for a transaction (default is 3)"; + } + } + must "../access"; + description + "Specify the number of timeouts exceeding which a throttled access request is dropped"; + } + leaf accounting { + type uint32 { + range "0..65535" { + description + "Number of outstanding accounting transactions after which throttling should be performed (Preferable value 100)"; + } + } + description + "To flow control the number of accounting requests sent to a radius server."; + } + } + container server-privates { + description + "Specify a private (to this server group) RADIUS server"; + list server-private { + key "ordering-index address auth-port acct-port"; + description + "Specify a private (to this server group) RADIUS server"; + leaf ordering-index { + type uint32; + description + "This is used to sort the users in the order of + precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Specify a private (to this server group) RADIUS server"; + } + leaf auth-port { + type uint32 { + range "0..65535" { + description + "Authentication port number (default 1645)"; + } + } + description + "RADIUS server authentication port"; + } + leaf acct-port { + type uint32 { + range "0..65535" { + description + "Accounting port number (default 1645)"; + } + } + description + "RADIUS server accounting port"; + } + container key { + description + "RADIUS server key"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + leaf timeout { + type uint32 { + range "1..1000" { + description + "Timeout value in seconds to wait for server to reply"; + } + } + description + "Time to wait for a RADIUS server to reply"; + } + leaf retransmit { + type uint32 { + range "1..100" { + description + "Retransmit limit"; + } + } + description + "Number of times a RADIUS request is re-sent to a server"; + } + container test { + description + "Automated testing functionality"; + leaf username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Username for automated testing"; + } + } + description + "Username to be tested for automated testing"; + } + } + leaf idle-time { + type uint32 { + range "1..60" { + description + "Idle-time value"; + } + } + description + "Idle time after which automated test should start"; + } + container ignore-auth-port { + presence "Indicates a ignore-auth-port node is configured."; + description + "Turn off automated testing on auth-port"; + } + container ignore-acct-port { + presence "Indicates a ignore-acct-port node is configured."; + description + "Turn off automated testing on acct-port"; + } + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the VRF"; + } + } + description + "VRF to which this server group belongs to"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in RADIUS packets"; + } + container authorization { + description + "Specify a RADIUS attribute filter for authorization"; + container request { + description + "Attibute filtering for Access-Request"; + container accept { + must "not(../reject)"; + presence "Indicates a accept node is configured."; + description + "Accept only those attributes specified in this list"; + } + container reject { + must "not(../accept)"; + presence "Indicates a reject node is configured."; + description + "Reject the attributes specified in this list"; + } + leaf radius-attribute-list { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of RADIUS attribute list"; + } + } + must "../accept or ../reject"; + description + "Name of RADIUS attribute list"; + } + } + container reply { + description + "Attibute filtering for Access-Request"; + container accept { + must "not(../reject)"; + presence "Indicates a accept node is configured."; + description + "Accept only those attributes specified in this list"; + } + container reject { + must "not(../accept)"; + presence "Indicates a reject node is configured."; + description + "Reject the attributes specified in this list"; + } + leaf radius-attribute-list { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of RADIUS attribute list"; + } + } + must "../accept or ../reject"; + description + "Name of RADIUS attribute list"; + } + } + } + container accounting { + description + "Specify a RADIUS attribute filter for authorization"; + container request { + description + "Attibute filtering for Access-Request"; + container accept { + must "not(../reject)"; + presence "Indicates a accept node is configured."; + description + "Accept only those attributes specified in this list"; + } + container reject { + must "not(../accept)"; + presence "Indicates a reject node is configured."; + description + "Reject the attributes specified in this list"; + } + leaf radius-attribute-list { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of RADIUS attribute list"; + } + } + must "../accept or ../reject"; + description + "Name of RADIUS attribute list"; + } + } + container reply { + description + "Attibute filtering for Access-Request"; + container accept { + must "not(../reject)"; + presence "Indicates a accept node is configured."; + description + "Accept only those attributes specified in this list"; + } + container reject { + must "not(../accept)"; + presence "Indicates a reject node is configured."; + description + "Reject the attributes specified in this list"; + } + leaf radius-attribute-list { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of RADIUS attribute list"; + } + } + must "../accept or ../reject"; + description + "Name of RADIUS attribute list"; + } + } + } + } + } + } + } + } + container server { + description + "AAA Server "; + container radius { + description + "AAA Server - Radius Definition"; + container dynamic-author { + description + "Radius Dynamic Author Server Configurations"; + leaf port { + type uint32 { + range "1000..5000" { + description + "port number"; + } + } + description + "Specify the COA Server port to listen on"; + } + container ignore { + description + "ignore options"; + container server-key { + presence "Indicates a server-key node is configured."; + description + "ignore server-key"; + } + } + container server-key { + description + "Set the Shared secret to verify client COA requests"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + container clients { + description + "COA client configuration"; + list client { + key "address vrf"; + description + "COA client configuration"; + leaf address { + type inet:ip-address-no-zone; + description + "COA client configuration"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the VRF"; + } + } + } + description + "VRF to which COA Client belongs"; + } + container server-key { + description + "COA client shared secret key"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + } + } + } + } + } + container radius-server { + description + "RADIUS server definition"; + container hosts { + description + "Specify a RADIUS server"; + list host { + key "ordering-index address auth-port acct-port"; + description + "Specify a RADIUS server"; + leaf ordering-index { + type uint32; + description + "This is used to sort the users in the order of + precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "IPv4/IPv6 address of RADIUS server"; + } + leaf auth-port { + type uint32 { + range "0..65535" { + description + "Authentication port number (default 1645)"; + } + } + description + "UDP port for RADIUS authentication requests (default is 1645)"; + } + leaf acct-port { + type uint32 { + range "0..65535" { + description + "Accounting port number (default 1646)"; + } + } + description + "UDP port for RADIUS accounting requests (default is 1646)"; + } + leaf timeout { + type uint32 { + range "1..1000" { + description + "Timeout value in seconds to wait for server to reply"; + } + } + description + "Time to wait for this RADIUS server to reply (overrides global timeout)"; + } + leaf retransmit { + type uint32 { + range "1..100" { + description + "Retransmit value"; + } + } + description + "Number of times a RADIUS request is re-sent to a server (overrides global retransmit value)"; + } + container key { + description + "per-server encryption key (overrides default)"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + container test { + description + "Automated testing functionality"; + leaf username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Username for automated testing"; + } + } + description + "Username to be tested for automated testing"; + } + } + leaf idle-time { + type uint32 { + range "1..60" { + description + "Idle-time value in min"; + } + } + description + "Idle time after which automated test should start"; + } + container ignore-auth-port { + presence "Indicates a ignore-auth-port node is configured."; + description + "Turn off automated testing on auth-port"; + } + container ignore-acct-port { + presence "Indicates a ignore-acct-port node is configured."; + description + "Turn off automated testing on acct-port"; + } + } + } + container key { + description + "Set RADIUS encryption key"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + leaf timeout { + type uint32 { + range "1..1000" { + description + "Timeout value in seconds to wait for server to reply"; + } + } + description + "Time to wait for a RADIUS server to reply (default 5)"; + } + container retransmit { + description + "Specify the number of retries to active server"; + leaf retries { + type uint32 { + range "1..100" { + description + "<1-100> Number of retries for a transaction (default is 3)"; + } + } + must "not(../disable)"; + description + "<1-100> Number of retries for a transaction (default is 3)"; + } + container disable { + must "not(../retries)"; + presence "Indicates a disable node is configured."; + description + "Disable Radius server retransmit"; + } + } + container load-balance { + description + "Radius load-balancing options."; + container method { + description + "Method by which the next host will be picked."; + container least-outstanding { + presence "Indicates a least-outstanding node is configured."; + description + "Pick the server with the least transactions outstanding."; + leaf batch-size { + type uint32 { + range "1..1500" { + description + "Batch size for selection of the server (default 25)"; + } + } + description + "Batch size for selection of the server."; + } + container ignore-preferred-server { + presence "Indicates a ignore-preferred-server node is configured."; + description + "Disable preferred server for this Server Group"; + } + } + } + } + container throttle { + presence "Indicates a throttle node is configured."; + description + "Radius throttling options."; + leaf access { + type uint32 { + range "0..65535" { + description + "Number of outstanding access requests after which throttling should be performed (Preferable value 100)"; + } + } + description + "To flow control the number of access requests sent to a radius server"; + } + leaf access-timeout { + type uint32 { + range "1..10" { + description + "Number of timeouts for a transaction (default is 3)"; + } + } + must "../access"; + description + "Specify the number of timeouts exceeding which a throttled access request is dropped"; + } + leaf accounting { + type uint32 { + range "0..65535" { + description + "Number of outstanding accounting transactions after which throttling should be performed (Preferable value 100)"; + } + } + description + "To flow control the number of accounting requests sent to a radius server."; + } + } + leaf deadtime { + type uint32 { + range "1..1440" { + description + "Deadtime limit in minutes (default 0)"; + } + } + description + "Time in minutes for which a RADIUS server will be marked dead"; + } + container dead-criteria { + description + "Dead server detection criteria for a configured RADIUS server"; + leaf time { + type uint32 { + range "1..120" { + description + "Time in seconds"; + } + } + description + "Minimum time that must elapse since a response was received from this RADIUS server"; + } + leaf tries { + type uint32 { + range "1..100" { + description + "Number of tries"; + } + } + description + "The minimum number of transmissions (original attempts plus retransmits) to this RADIUS server"; + } + } + container source-port { + description + "Source-Port"; + container extended { + presence "Indicates a extended node is configured."; + description + "Extended"; + } + } + container ipv4 { + description + "Mark the dscp bit for ipv4 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + description + "Set IP DSCP (DiffServ CodePoint)"; + } + } + container ipv6 { + description + "Mark the dscp bit for ipv6 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + description + "Set IP DSCP (DiffServ CodePoint)"; + } + } + container vsa { + description + "unknown vsa ignore configuration for RADIUS server"; + container attribute { + description + "Vendor Specific Attribute "; + container ignore { + description + "ignore the VSA "; + container unknown { + presence "Indicates a unknown node is configured."; + description + "ignore the VSA and no prefix will reject the unkown VSA "; + } + } + } + } + container disallow { + description + "disallow null-username"; + container null-username { + presence "Indicates a null-username node is configured."; + description + "null-username"; + } + } + container attribute { + description + "Customize selected radius attributes"; + list list { + key "list-name"; + description + "List of Attribute Types"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name"; + } + } + description + "List of Attribute Types"; + } + container attribute { + description + "Specify a list of RADIUS attributes"; + leaf radius-attributes { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Comma-delimited list of RADIUS attributes"; + } + } + description + "Comma-delimited list of RADIUS attributes"; + } + container vendor-ids { + description + "vendor-id"; + list vendor-id { + key "id"; + description + "vendor-id"; + leaf id { + type uint32 { + range "0..4294967295" { + description + "vendor-id"; + } + } + description + "vendor-id"; + } + container vendor-types { + description + "Specify vendor-type"; + list vendor-type { + key "vendor-type-id"; + description + "Specify vendor-type"; + leaf vendor-type-id { + type uint32 { + range "1..254" { + description + "vendor-type"; + } + } + description + "Specify vendor-type"; + } + } + } + } + } + } + } + container acct-session-id { + description + "Acct-Session-Id attribute(44)"; + container prepend-nas-port-id { + presence "Indicates a prepend-nas-port-id node is configured."; + description + "Prepend Acct-Session-Id attribute with Nas-Port-Id"; + } + } + container acct-multi-session-id { + description + "Acct-Multi-Session-Id attribute(50)"; + container include-parent-session-id { + presence "Indicates a include-parent-session-id node is configured."; + description + "Include Acct-Multi-Session-Id attribute with Acct-Parent-Session-Id"; + } + } + container filter-id-11 { + description + "Filter-Id attribute configuration"; + container default { + description + "Set the attribute defaults"; + leaf direction { + type enumeration { + enum "inbound" { + value 0; + description + "Filtering is applied to ingress(inbound) packets only"; + } + enum "outbound" { + value 1; + description + "Filtering is applied to egress(outbound) packets only"; + } + } + description + "Set the attribute default direction"; + } + } + } + } + } + container radius { + description + "RADIUS configuration commands"; + container vrfs { + description + "VRF for this source interface configuration"; + list vrf { + key "vrf-name"; + description + "VRF for this source interface configuration"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of the VRF"; + } + } + } + description + "VRF for this source interface configuration"; + } + leaf source-interface { + type xr:Interface-name; + mandatory true; + description + "Specify interface for source address in RADIUS packets"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-subscriber-cfg.yang new file mode 100644 index 000000000..e481cbfe6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-subscriber-cfg.yang @@ -0,0 +1,4503 @@ +module Cisco-IOS-XR-um-aaa-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-subscriber-cfg"; + prefix um-aaa-subscriber-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-subscriber-cfg { + prefix a2; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a3; + } + 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 aaa-subscriber package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-28 { + description + "Added missing trace and history nodes + 2022-08-01 + Added missing node dyn-tmpl-sess-acct + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-03-09 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container aaa { + description + "AAA configuration"; + container radius { + description + "AAA radius configuration"; + container attribute { + description + "AAA radius attribute"; + leaf nas-port-type { + type union { + type uint32 { + range "0..44" { + description + "Nas Port Type value"; + } + } + type enumeration { + enum "Async" { + value 0; + description + "Async(0)"; + } + enum "Sync" { + value 1; + description + "Sync(1)"; + } + enum "ISDN" { + value 2; + description + "ISDN(2)"; + } + enum "ISDN-Async-V120" { + value 3; + description + "ISDN-Async-V120(3)"; + } + enum "ISDN-Async-V110" { + value 4; + description + "ISDN-Async-V110(4)"; + } + enum "Virtual" { + value 5; + description + "Virtual(5)"; + } + enum "ISDN-Async-PIAFS" { + value 6; + description + "ISDN-Async-PIAFS(6)"; + } + enum "HDLC-CLEAR-CHANNEL" { + value 7; + description + "HDLC-Clear-Channel(7)"; + } + enum "X25" { + value 8; + description + "X25(8)"; + } + enum "X75" { + value 9; + description + "X75(9)"; + } + enum "G3FAX" { + value 10; + description + "G.3 Fax(10)"; + } + enum "SDSL-SYM-SL" { + value 11; + description + "SDSL -Symmetric DSL(11)"; + } + enum "ADSL-CAP" { + value 12; + description + "ADSL-CAP - Asymmetric DSL(12)"; + } + enum "ADSL-DMT" { + value 13; + description + "ADSL DMT(13)"; + } + enum "IDSL" { + value 14; + description + "IDSL - ISDN Digital Subscriber Line(14)"; + } + enum "Ethernet" { + value 15; + description + "Ethernet(15)"; + } + enum "XDSL" { + value 16; + description + "Digital Subscriber Line(16)"; + } + enum "CABLE" { + value 17; + description + "CABLE(17)"; + } + enum "WIRELESS-OTHER" { + value 18; + description + "Wireless-Other(18)"; + } + enum "WIRELESS-IEEE-802-11" { + value 19; + description + "Wireless - - IEEE 802.11(19)"; + } + enum "TOKEN-RING" { + value 20; + description + "Token-Ring(20)"; + } + enum "FDDI" { + value 21; + description + "FDDI(21)"; + } + enum "WIRELESS-CDMA" { + value 22; + description + "Wireless - CDMA2000 (22)"; + } + enum "WIRELESS-UMTS" { + value 23; + description + "Wireless - UMTS(23)"; + } + enum "WIRELESS-1X-EV" { + value 24; + description + "Wireless - 1X-EV (24)"; + } + enum "IAPP" { + value 25; + description + "IAPP(25)"; + } + enum "FTTP" { + value 26; + description + "FTTP(26)"; + } + enum "WIRELESS-IEEE-802-16" { + value 27; + description + "Wireless - IEEE 802.16 (27)"; + } + enum "WIRELESS-IEEE-802-20" { + value 28; + description + "Wireless - IEEE 802.20 (28)"; + } + enum "WIRELESS-IEEE-802-22" { + value 29; + description + "Wireless - IEEE 802.22 (29)"; + } + enum "PPPoA" { + value 30; + description + "PPPoA(30)"; + } + enum "PPPoEoA" { + value 31; + description + "PPPoEoA(31)"; + } + enum "PPPoEoE" { + value 32; + description + "PPPoEoE(32)"; + } + enum "PPPoEoVLAN" { + value 33; + description + "PPPoEoVLAN(33)"; + } + enum "PPPoEoQinQ" { + value 34; + description + "PPPoEoQinQ(34)"; + } + enum "Virtual-PPPoEoE" { + value 35; + description + "Virtual-PPPoEoE(35)"; + } + enum "Virtual-PPPoEoVLAN" { + value 36; + description + "Virtual-PPPoEoVLAN(36)"; + } + enum "Virtual-PPPoEoQinaQ" { + value 37; + description + "Virtual-PPPoEoQinQ(37)"; + } + enum "IPSEC" { + value 38; + description + "IPSEC(38)"; + } + enum "IPOEOE" { + value 39; + description + "IPOEOE(39)"; + } + enum "IPOEOVLAN" { + value 40; + description + "IPOEOVLAN(40)"; + } + enum "IPOEOQINQ" { + value 41; + description + "IPOEOQINQ(41)"; + } + enum "VIRTUAL-IPOEOE" { + value 42; + description + "VIRTUAL-IPOEOE(42)"; + } + enum "VIRTUAL-IPOEOVLAN" { + value 43; + description + "VIRTUAL-IPOEOVLAN(43)"; + } + enum "VIRTUAL-IPOEOQINQ" { + value 44; + description + "VIRTUAL-IPOEOQINQ(44)"; + } + } + } + description + "AAA nas-port-type attribute"; + } + leaf nas-identifier { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Enter a string"; + } + } + description + "AAA nas-identifier attribute"; + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a2:subscriber" { + description + "This augment extends subscriber nodes configuration"; + container manager { + description + "iEdge Subscriber Management"; + container accounting { + description + "Subscriber manager accounting"; + container send-stop { + description + "Generate accounting STOP record"; + container setup-failure { + description + "On subscriber session setup failure"; + container aaa { + description + "AAA subscriber accounting feature configuration"; + container list { + description + "Accounting method list"; + container default { + must "not(../method-list-name)"; + presence "Indicates a default node is configured."; + description + "default method list"; + } + leaf method-list-name { + type xr:Cisco-ios-xr-string { + length "2..256" { + description + "Preconfigured method list name"; + } + } + description + "Preconfigured method list name"; + } + } + } + } + } + container interim { + description + "interim accounting related"; + leaf variation { + type uint32 { + range "0..50" { + description + "maximum percentage variation (maximum absolute variation is 15 minutes)"; + } + } + description + "variation of first session or service interim record from configured timeout"; + } + } + container history-storage { + description + "acct stop, interim history record storage in file"; + container enable { + presence "Indicates a enable node is configured."; + description + "enable acct hist file storage"; + } + } + container stop-storage { + presence "Indicates a stop-storage node is configured."; + description + "accounting STOP record storage in harddisk"; + container records { + description + "number of acct STOP records storage in harddisk"; + list record { + key "record-id storage-time-id"; + description + "number of acct STOP records storage in harddisk"; + leaf record-id { + type uint32 { + range "64000..256000" { + description + "range of acct STOP records storage in harddisk, default 256000"; + } + } + description + "number of acct STOP records storage in harddisk"; + } + leaf storage-time-id { + type uint32 { + range "1..24" { + description + "range of time interval in hours, default 24 hours"; + } + } + description + "max life time of record in harddisk"; + } + } + } + } + container dyn-tmpl-sess-acct { + description + "allow dynamic template in session accounting"; + container enable { + presence "Indicates a enable node is configured."; + description + "enable dynamic template in session accounting"; + } + } + } + container trace { + description + "Subscriber manager trace "; + container level { + description + "Subscriber manager trace level "; + container locations { + description + "Select location"; + list location { + key "location-name"; + description + "Select location"; + leaf location-name { + type xr:Node-id; + description + "Select location"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable tracing for subscriber manager"; + } + container statistics-only { + presence "Indicates a statistics-only node is configured."; + description + "Keep only message tracing statistics for subscriber manager"; + } + container critical { + presence "Indicates a critical node is configured."; + description + "Trace error tracing for subscriber manager"; + } + container high { + presence "Indicates a high node is configured."; + description + "Trace high level logic for subscriber manager"; + } + container medium { + presence "Indicates a medium node is configured."; + description + "Trace attributes plus high level logic for subscriber manager"; + } + container low { + presence "Indicates a low node is configured."; + description + "Trace more detail messages for subscriber manager"; + } + container verbose { + presence "Indicates a verbose node is configured."; + description + "Trace verbose messages for subscriber manager"; + } + container all { + presence "Indicates a all node is configured."; + description + "Trace EDM functionality for subscriber manager"; + } + } + } + } + } + container history { + description + "Subscriber manager history"; + container locations { + description + "Select location"; + list location { + must "disable"; + key "location-name"; + description + "Select location"; + leaf location-name { + type xr:Node-id; + description + "Select location"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable history for subscriber manager"; + } + } + } + } + container srg { + description + "SRG specific config"; + container sync-acct-session-id { + presence "Indicates a sync-acct-session-id node is configured."; + description + "sync account session id from primary to subordinate"; + } + container acct-start-time { + presence "Indicates a acct-start-time node is configured."; + description + "acct start time ref to srg role change Subordinate->Primary"; + } + } + } + container session { + description + "iEdge Subscriber Management session"; + leaf limit { + type uint32 { + range "1..200000" { + description + "Number of sessions"; + } + } + description + "Configure subscriber session limits"; + } + } + container featurette { + description + "Enable Featurette"; + container identity-change { + presence "Indicates a identity-change node is configured."; + description + "enable identity change processing"; + } + container dhcp-renew-author { + presence "Indicates a dhcp-renew-author node is configured."; + description + "enable dhcp renew authentication"; + } + container ipoe-dhcp-client-reboot { + presence "Indicates a ipoe-dhcp-client-reboot node is configured."; + description + "enable dual stack session tear down on client reboot"; + } + } + } + augment "/a3:aaa" { + description + "This augment extends aaa nodes configuration"; + container attribute { + description + "AAA attribute"; + container format { + description + "AAA attribute format"; + container identifiers { + description + "identifier name"; + list identifier { + key "identifier-name"; + description + "identifier name"; + leaf identifier-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "identifier name"; + } + } + description + "identifier name"; + } + container mac-address { + presence "Indicates a mac-address node is configured."; + description + "Mac-address"; + container plus { + description + "Use additional identifiers"; + container circuit-id { + must "not(../remote-id)"; + presence "Indicates a circuit-id node is configured."; + description + "Circuit ID"; + container plus { + description + "Use additional identifiers"; + container remote-id { + must "not(../../separator)"; + presence "Indicates a remote-id node is configured."; + description + "Remote ID"; + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/remote-id)"; + description + "separator to be used between keys"; + } + } + container remote-id { + must "not(../circuit-id)"; + presence "Indicates a remote-id node is configured."; + description + "Remote ID"; + container plus { + description + "Use additional identifiers"; + container circuit-id { + must "not(../../separator)"; + presence "Indicates a remote-id node is configured."; + description + "Remote ID"; + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/circuit-id)"; + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/circuit-id or ../plus/remote-id)"; + description + "separator to be used between keys"; + } + } + container circuit-id { + presence "Indicates a circuit-id node is configured."; + description + "Circuit ID"; + container plus { + description + "Use additional identifiers"; + container mac-address { + must "not(../remote-id)"; + presence "Indicates a mac-address node is configured."; + description + "Mac-address"; + container plus { + description + "Use additional identifiers"; + container remote-id { + must "not(../../separator)"; + presence "Indicates a remote-id node is configured."; + description + "Remote ID"; + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/remote-id)"; + description + "separator to be used between keys"; + } + } + container remote-id { + must "not(../mac-address)"; + presence "Indicates a remote-id node is configured."; + description + "Remote ID"; + container plus { + description + "Use additional identifiers"; + container circuit-id { + must "not(../../separator)"; + presence "Indicates a remote-id node is configured."; + description + "Remote ID"; + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/circuit-id)"; + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/mac-address or ../plus/remote-id)"; + description + "separator to be used between keys"; + } + } + container remote-id { + presence "Indicates a remote-id node is configured."; + description + "Remote ID"; + container plus { + description + "Use additional identifiers"; + container mac-address { + must "not(../circuit-id)"; + presence "Indicates a mac-address node is configured."; + description + "Mac-address"; + container plus { + description + "Use additional identifiers"; + container circuit-id { + must "not(../../separator)"; + presence "Indicates a remote-id node is configured."; + description + "Circuit ID"; + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/circuit-id)"; + description + "separator to be used between keys"; + } + } + container circuit-id { + must "not(../mac-address)"; + presence "Indicates a remote-id node is configured."; + description + "Circuit ID"; + container plus { + description + "Use additional identifiers"; + container mac-address { + must "not(../../separator)"; + presence "Indicates a mac-address node is configured."; + description + "Circuit ID"; + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/mac-address)"; + description + "separator to be used between keys"; + } + } + } + leaf separator { + type xr:Cisco-ios-xr-string { + length "1" { + description + "separator to be used between keys, default is :"; + } + } + must "not(../plus/mac-address or ../plus/circuit-id)"; + description + "separator to be used between keys"; + } + } + container format-string { + presence "Indicates a format-string node is configured."; + description + "extended format"; + leaf length { + type uint32 { + range "1..253" { + description + "length of the formatted string"; + } + } + mandatory true; + description + "length of the formatted string"; + } + leaf format-string { + type string { + length "1..800" { + description + "format string (conversion specifier) enclosed in double quotes"; + } + pattern "[\"].*.[\"]"; + } + mandatory true; + description + "format string (conversion specifier) enclosed in double quotes"; + } + leaf attribute-1 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + description + "Format attribute 1"; + } + leaf attribute-2 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + must "../attribute-1"; + description + "Format attribute 2"; + } + leaf attribute-3 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + must "../attribute-2"; + description + "Format attribute 3"; + } + leaf attribute-4 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + must "../attribute-3"; + description + "Format attribute 4"; + } + leaf attribute-5 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + must "../attribute-4"; + description + "Format attribute 5"; + } + leaf attribute-6 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + must "../attribute-5"; + description + "Format attribute 6"; + } + leaf attribute-7 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + must "../attribute-6"; + description + "Format attribute 7"; + } + leaf attribute-8 { + type union { + type string { + pattern "circuit-id-tag" { + description + "Circuit-Id Tag"; + } + } + type string { + pattern "dhcpv6-interface-id" { + description + "DHCPv6 Interface-Id"; + } + } + type string { + pattern "remote-id-tag" { + description + "Remote-Id Tag"; + } + } + type string { + pattern "service-name" { + description + "The name of the service"; + } + } + type string { + pattern "client-mac-address" { + description + "MAC address of client"; + } + } + type string { + pattern "client-mac-address-raw" { + description + "MAC address of client in raw format"; + } + } + type string { + pattern "client-mac-address-ietf" { + description + "MAC address of client in ietf format"; + } + } + type string { + pattern "client-mac-address-custom1" { + description + "MAC address of client in AA.BB.CC.DD.EE.FF format"; + } + } + type string { + pattern "client-mac-address-custom2" { + description + "MAC address of client in AA:BB:CC:DD:EE:FF format"; + } + } + type string { + pattern "dhcp-vendor-class" { + description + "DHCP vendor class name"; + } + } + type string { + pattern "username" { + description + "The name of the user"; + } + } + type string { + pattern "physical-slot" { + description + "Physical slot needed to form NAS Port"; + } + } + type string { + pattern "physical-subslot" { + description + "Physical subslot needed to form NAS Port"; + } + } + type string { + pattern "physical-adapter" { + description + "Physical adapter needed to form NAS Port"; + } + } + type string { + pattern "physical-chassis" { + description + "Physical chassis needed to form NAS Port"; + } + } + type string { + pattern "physical-port" { + description + "Physical port needed to form NAS Port"; + } + } + type string { + pattern "inner-vlan-id" { + description + "Inner VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "outer-vlan-id" { + description + "Outer VLAN ID needed to form NAS Port"; + } + } + type string { + pattern "port-type" { + description + "Interface/Port type"; + } + } + type string { + pattern "pppoe-session-id" { + description + "PPPOE Session Id"; + } + } + type string { + pattern "addr" { + description + "Source IP address of subscriber"; + } + } + type string { + pattern "or" { + description + "OR between two attributes"; + } + } + type string { + pattern "dhcp-client-id" { + description + "DHCP Client Identifier"; + } + } + type string { + pattern "dhcp-client-id-spl" { + description + "DHCP Client Id special string"; + } + } + type string { + pattern "dhcpv4-client-id-spl" { + description + "DHCPv4 Client Id special string"; + } + } + type string { + pattern "dhcp-user-class" { + description + "DHCP User Class"; + } + } + type string { + pattern "srg-group-id" { + description + "SRG Group ID"; + } + } + type string { + pattern "dhcpv4-vendor-class" { + description + "DHCPv4 Vendor classs name"; + } + } + type string { + pattern "dhcpv6-vendor-class-string" { + description + "DHCPv6 Vendor classs data string printable"; + } + } + type string { + pattern "dhcpv6-client-id-enterprise-identifier" { + description + "DHCPv6 client id enterprise identifier"; + } + } + } + must "../attribute-7"; + description + "Format attribute 8"; + } + } + container username-strip { + description + "User name formatting"; + container prefix-delimiter { + must "not(../suffix-delimiter)"; + presence "Indicates a prefix-delimiter node is configured."; + description + "prefix-delimiter"; + leaf delimiter { + type xr:Cisco-ios-xr-string { + length "1" { + description + "prefix-delimiter"; + } + } + mandatory true; + description + "prefix-delimiter"; + } + leaf suffix-delimiter { + type xr:Cisco-ios-xr-string { + length "1" { + description + "suffix-delimiter"; + } + } + description + "suffix-delimiter"; + } + } + container suffix-delimiter { + must "not(../prefix-delimiter)"; + presence "Indicates a suffix-delimiter node is configured."; + description + "suffix-delimiter"; + leaf delimiter { + type xr:Cisco-ios-xr-string { + length "1" { + description + "suffix-delimiter"; + } + } + mandatory true; + description + "suffix-delimiter"; + } + leaf prefix-delimiter { + type xr:Cisco-ios-xr-string { + length "1" { + description + "prefix-delimiter"; + } + } + description + "prefix-delimiter"; + } + } + } + } + } + } + } + container radius { + description + "AAA radius attribute configuration"; + container attribute { + description + "AAA radius attribute"; + container nas-port-id { + description + "AAA nas-port-id attribute"; + leaf format { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "nas-port-id attribute format name"; + } + } + description + "AAA nas-port-id attribute format"; + } + container types { + description + "AAA nas-port attribute format"; + list type { + key "type-id"; + description + "AAA nas-port attribute format"; + leaf type-id { + type uint32 { + range "0..44" { + description + "Nas-Port-Type value to apply format name on"; + } + } + description + "AAA nas-port attribute format"; + } + } + } + } + container nas-port { + description + "AAA nas-port-id attribute"; + container format { + description + "AAA nas-port attribute format"; + leaf e { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "A 32 character string representing the format to be used"; + } + } + description + "format type"; + } + container types { + description + "AAA nas-port attribute format"; + list type { + key "type-id"; + description + "AAA nas-port attribute format"; + leaf type-id { + type uint32 { + range "0..44" { + description + "Nas-Port-Type value to apply format string on"; + } + } + description + "AAA nas-port attribute format"; + } + } + } + } + } + container calling-station-id { + description + "AAA calling station id attribute"; + leaf format { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "calling-station-id attribute format name"; + } + } + description + "AAA calling-station-id attribute format"; + } + container types { + description + "AAA nas-port attribute format"; + list type { + key "type-id"; + description + "AAA nas-port attribute format"; + leaf type-id { + type uint32 { + range "0..44" { + description + "Nas-Port-Type value to apply format name on"; + } + } + description + "AAA nas-port attribute format"; + } + leaf format { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "calling-station-id attribute format name"; + } + } + mandatory true; + description + "AAA calling-station-id attribute format"; + } + } + } + } + container called-station-id { + description + "AAA called station id attribute"; + leaf format { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "called-station-id attribute format name"; + } + } + description + "AAA called-station-id attribute format"; + } + container types { + description + "AAA nas-port attribute format"; + list type { + key "type-id"; + description + "AAA nas-port attribute format"; + leaf type-id { + type uint32 { + range "0..44" { + description + "Nas-Port-Type value to apply format name on"; + } + } + description + "AAA nas-port attribute format"; + } + } + } + } + container nas-identifier { + description + "AAA nas-identifier attribute"; + leaf format { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "nas-identifier attribute format name"; + } + } + description + "AAA nas-identifier attribute format"; + } + } + } + } + container service-accounting { + description + "Set accounting parameters for Service"; + container extended { + must "not(../brief)"; + must "not(../brief)"; + presence "Indicates a extended node is configured."; + description + "Send extended service accounting records (default)"; + } + container brief { + must "not(../extended)"; + must "not(../extended)"; + presence "Indicates a brief node is configured."; + description + "Send brief service accounting records"; + } + } + } + augment "/a3:aaa/a3:accounting" { + description + "This augment extends aaa accounting nodes configuration"; + container subscriber { + description + "Set accounting lists for Subscriber"; + container default { + presence "Indicates a default node is configured."; + description + "Default list name for AAA accounting"; + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Set broadcast accounting for Subscriber"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + container accounting-lists { + description + "List name for AAA accounting"; + list accounting-list { + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA accounting"; + } + } + description + "List name for AAA accounting"; + } + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Set broadcast accounting for Subscriber"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + } + } + container service { + description + "Set accounting lists for Service"; + container default { + presence "Indicates a default node is configured."; + description + "Default list name for AAA accounting"; + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Set broadcast accounting for Subscriber"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + container accounting-lists { + description + "List name for AAA accounting"; + list accounting-list { + key "list-name"; + description + "List name for AAA accounting"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA accounting"; + } + } + description + "List name for AAA accounting"; + } + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Set broadcast accounting for Subscriber"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + } + } + } + augment "/a3:aaa/a3:authorization" { + description + "This augment extends aaa authorization nodes configuration"; + container subscriber { + description + "Set authorization lists for Subscriber"; + container default { + description + "Default list name for AAA authorization"; + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + container authorization-lists { + description + "List name for AAA authorization"; + list authorization-list { + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA authorization"; + } + } + description + "List name for AAA authorization"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + } + } + container policy-if { + description + "Set authorization lists for policy interface"; + container default { + description + "Default list name for AAA authorization"; + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + container authorization-lists { + description + "List name for AAA authorization"; + list authorization-list { + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA authorization"; + } + } + description + "List name for AAA authorization"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + } + } + container prepaid { + description + "Set authorization lists for prepaid"; + container default { + description + "Default list name for AAA authorization"; + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + container authorization-lists { + description + "List name for AAA authorization"; + list authorization-list { + key "list-name"; + description + "List name for AAA authorization"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA authorization"; + } + } + description + "List name for AAA authorization"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + } + } + } + augment "/a3:aaa/a3:authentication" { + description + "This augment extends aaa authentication nodes configuration"; + container subscriber { + description + "Set authentication lists for Subscriber"; + container default { + description + "Default list name for AAA authentication"; + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + container authentication-lists { + description + "List name for AAA authentication"; + list authentication-list { + key "list-name"; + description + "List name for AAA authentication"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA authentication"; + } + } + description + "List name for AAA authentication"; + } + container groups { + description + "Use Server-group"; + container group1 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must "not(../server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must "not(../all-hosts)"; + description + "server-group name"; + } + } + container group2 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group1/all-hosts or ../../group1/server-group)"; + description + "server-group name"; + } + } + container group3 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group2/all-hosts or ../../group2/server-group)"; + description + "server-group name"; + } + } + container group4 { + description + "Use Server-group"; + leaf all-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + enum "diameter" { + value 15; + description + "Use list of all DIAMETER peers"; + } + } + must + "not(../server-group) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "configure this node"; + } + leaf server-group { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "server-group name"; + } + } + must + "not(../all-hosts) and + (../../group3/all-hosts or ../../group3/server-group)"; + description + "server-group name"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-tacacs-server-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-tacacs-server-cfg.yang new file mode 100644 index 000000000..32c364967 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-tacacs-server-cfg.yang @@ -0,0 +1,618 @@ +module Cisco-IOS-XR-um-aaa-tacacs-server-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-tacacs-server-cfg"; + prefix um-aaa-tacacs-server-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a1; + } + 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 aaa-tacacs-server package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-02-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature check_input_typ6_validity { + description + "check input typ6 validity"; + } + + augment "/a1:aaa" { + description + "This augment extends aaa nodes configuration"; + container group { + description + "AAA group definitions"; + container server { + description + "AAA Server group definition"; + container tacacs { + description + "TACACS+ server-group definition"; + container server-groups { + description + "Server group name"; + list server-group { + key "server-group-name"; + description + "Server group name"; + leaf server-group-name { + type string { + length "1..253" { + description + "server-group name. + Allowed special chars for tacacs server group are A-Z,a-z,_,.,-,%,=,+,space allowed with backslash,;,:,|,#,$,0-9"; + } + } + description + "Server group name"; + } + container servers { + description + "Specify a TACACS+ server (Max 10)"; + list server { + key "ordering-index address"; + description + "Specify a TACACS+ server (Max 10)"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Specify a TACACS+ server (Max 10)"; + } + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the VRF"; + } + } + description + "VRF to which this server group belongs to"; + } + leaf holddown-time { + type uint32 { + range "0..1200" { + description + "Time in seconds"; + } + } + description + "Time for which TACACS servers of this group is marked as dead"; + } + container server-privates { + description + "Specify a private (to this server group) TACACS+ server (max 10)"; + list server-private { + key "ordering-index address port"; + max-elements "10"; + description + "Specify a private (to this server group) TACACS+ server (max 10)"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Specify a private (to this server group) TACACS+ server (max 10)"; + } + leaf port { + type uint32 { + range "1..65535" { + description + "Port number"; + } + } + description + "TCP port for TACACS+ server (default is 49)"; + } + container key { + description + "Set TACACS+ encryption key"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + container single-connection { + presence "Indicates a single-connection node is configured."; + description + "Reuse connection to this server for all requests(2)"; + } + leaf single-connection-idle-timeout { + type uint32 { + range "500..7200" { + description + "Idle Timeout for single-connection in seconds"; + } + } + description + "Idle timeout for a single-connection to the server"; + } + leaf timeout { + type uint32 { + range "1..1000" { + description + "Wait time (default 5 seconds)"; + } + } + description + "Time to wait for a TACACS server to reply"; + } + leaf holddown-time { + type uint32 { + range "0..1200" { + description + "Time in seconds"; + } + } + description + "Time for which this TACACS server is marked as dead"; + } + } + } + } + } + } + } + } + container tacacs-server { + description + "TACACS+ server definition"; + container hosts { + description + "Specify a TACACS+ server"; + list host { + key "ordering-index address port"; + description + "Specify a TACACS+ server"; + leaf ordering-index { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Specify a TACACS+ server"; + } + leaf port { + type uint32 { + range "1..65535" { + description + "Port number"; + } + } + description + "TCP port for TACACS+ server (default is 49)"; + } + leaf timeout { + type uint32 { + range "1..1000" { + description + "Timeout value in seconds to wait for server to reply"; + } + } + description + "Time to wait for this TACACS server to reply (overrides default)"; + } + leaf holddown-time { + type uint32 { + range "0..1200" { + description + "Time in seconds"; + } + } + description + "Time for which this TACACS server is marked as dead"; + } + container key { + description + "per-server encryption key (overrides default)"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + container single-connection { + presence "Indicates a single-connection node is configured."; + description + "Reuse connection to this server for all requests"; + } + leaf single-connection-idle-timeout { + type uint32 { + range "500..7200" { + description + "Idle Timeout for single-connection in seconds"; + } + } + description + "Idle timeout for a single-connection to the server"; + } + } + } + container key { + description + "Set TACACS+ encryption key"; + leaf seven { + type xr:Proprietary-password; + must "not(../six)"; + description + "Specifies that an encrypted key will follow"; + } + leaf six { + if-feature "check_input_typ6_validity"; + type xr:Proprietary-password; + must "not(../seven)"; + description + "Specifies that an encrypted type 6 key will follow"; + } + } + leaf timeout { + type uint32 { + range "1..1000" { + description + "Wait time (default 5 seconds)"; + } + } + description + "Time to wait for a TACACS server to reply"; + } + leaf holddown-time { + type uint32 { + range "0..1200" { + description + "Time in seconds"; + } + } + description + "Time for which a TACACS server is marked as dead"; + } + container ipv4 { + description + "Mark the dscp bit for ipv4 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + description + "Set IP DSCP (DiffServ CodePoint)"; + } + } + container ipv6 { + description + "Mark the dscp bit for ipv6 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + description + "Set IP DSCP (DiffServ CodePoint)"; + } + } + } + container tacacs { + description + "TACACS+ configuration commands"; + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in TACACS+ packets"; + } + container vrfs { + description + "VRF for this source interface configuration"; + list vrf { + key "vrf-name"; + description + "VRF for this source interface configuration"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of the VRF"; + } + } + description + "Name of the VRF"; + } + leaf source-interface { + type xr:Interface-name; + mandatory true; + description + "Specify interface for source address in TACACS+ packets"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-task-user-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-task-user-cfg.yang new file mode 100644 index 000000000..851264262 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-aaa-task-user-cfg.yang @@ -0,0 +1,3259 @@ +module Cisco-IOS-XR-um-aaa-task-user-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-aaa-task-user-cfg"; + prefix um-aaa-task-user-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-line-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a2; + } + 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 aaa-task-user package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-06 { + description + "Added container for task-id fc + 2022-08-25 + Added container enable-cert-authentication + 2022-07-11 + Added missing description statement to nodes + 2022-03-25 + Added container restrict-consecutive-characters under password-policy"; + semver:module-version "1.1.0"; + } + revision 2021-01-05 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature pslib_check_password { + description + "pslib check password"; + } + + augment "/a1:line/a1:console" { + description + "This augment extends line console nodes configuration"; + container login { + description + "Line login configuration"; + leaf authentication { + type union { + type string { + pattern "default" { + description + "Use the default authentication list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authentication list with this name"; + } + } + } + description + "Authentication parameters"; + } + } + container authorization { + description + "Authorization parameters"; + leaf exec { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For starting an exec (shell)"; + } + leaf eventmanager { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "Set eventmanager authorization method"; + } + leaf commands { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For exec (shell) commands"; + } + } + container accounting { + description + "Accounting parameters"; + leaf exec { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For starting an exec (shell)"; + } + leaf commands { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For exec (shell) commands"; + } + } + container password { + description + "Specify the password for the user"; + leaf seven { + type xr:Proprietary-password; + description + "Specifies that an encrypted password"; + } + } + container secret { + description + "Provide a secure one way encrypted password"; + leaf five { + type xr:Proprietary-password; + description + "The encrypted user password string"; + } + } + container timeout { + description + "Timeouts for the line"; + container login { + description + "Timeouts related to the login sequence"; + leaf response { + type uint32 { + range "0..300" { + description + "Timeout in seconds (default 30 seconds)"; + } + } + description + "Timeouts for any user input during login sequence"; + } + } + } + container users { + description + "Users characteristics"; + list group { + key "group-name"; + description + "Name of the user group"; + leaf group-name { + type union { + type string { + pattern "cisco-support" { + description + "Cisco support personnel"; + } + } + type string { + pattern "netadmin" { + description + "Network administrators group"; + } + } + type string { + pattern "operator" { + description + "Operator group"; + } + } + type string { + pattern "root-lr" { + description + "Root LR group"; + } + } + type string { + pattern "serviceadmin" { + description + "Service administrators group"; + } + } + type string { + pattern "sysadmin" { + description + "System administrators group"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of the user group"; + } + } + } + description + "Name of the user group"; + } + } + } + } + augment "/a1:line/a1:default" { + description + "This augment extends line default nodes configuration"; + container login { + description + "Line login configuration"; + leaf authentication { + type union { + type string { + pattern "default" { + description + "Use the default authentication list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authentication list with this name"; + } + } + } + description + "Authentication parameters"; + } + } + container authorization { + description + "Authorization parameters"; + leaf exec { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For starting an exec (shell)"; + } + leaf eventmanager { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "Set eventmanager authorization method"; + } + leaf commands { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For exec (shell) commands"; + } + } + container accounting { + description + "Accounting parameters"; + leaf exec { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For starting an exec (shell)"; + } + leaf commands { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For exec (shell) commands"; + } + } + container password { + description + "Specify the password for the user"; + leaf seven { + type xr:Proprietary-password; + description + "Specifies that an encrypted password"; + } + } + container secret { + description + "Provide a secure one way encrypted password"; + leaf five { + type xr:Proprietary-password; + description + "The encrypted user password string"; + } + } + container timeout { + description + "Timeouts for the line"; + container login { + description + "Timeouts related to the login sequence"; + leaf response { + type uint32 { + range "0..300" { + description + "Timeout in seconds (default 30 seconds)"; + } + } + description + "Timeouts for any user input during login sequence"; + } + } + } + container users { + description + "Users characteristics"; + list group { + key "group-name"; + description + "Name of the user group"; + leaf group-name { + type union { + type string { + pattern "cisco-support" { + description + "Cisco support personnel"; + } + } + type string { + pattern "netadmin" { + description + "Network administrators group"; + } + } + type string { + pattern "operator" { + description + "Operator group"; + } + } + type string { + pattern "root-lr" { + description + "Root LR group"; + } + } + type string { + pattern "serviceadmin" { + description + "Service administrators group"; + } + } + type string { + pattern "sysadmin" { + description + "System administrators group"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of the user group"; + } + } + } + description + "Name of the user group"; + } + } + } + } + augment "/a1:line/a1:templates/a1:template" { + description + "This augment extends line template nodes configuration"; + container login { + description + "Line login configuration"; + leaf authentication { + type union { + type string { + pattern "default" { + description + "Use the default authentication list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authentication list with this name"; + } + } + } + description + "Authentication parameters"; + } + } + container authorization { + description + "Authorization parameters"; + leaf exec { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For starting an exec (shell)"; + } + leaf eventmanager { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "Set eventmanager authorization method"; + } + leaf commands { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For exec (shell) commands"; + } + } + container accounting { + description + "Accounting parameters"; + leaf exec { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For starting an exec (shell)"; + } + leaf commands { + type union { + type string { + pattern "default" { + description + "Use the default authorization list"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Use an authorization list with this name"; + } + } + } + description + "For exec (shell) commands"; + } + } + container password { + description + "Specify the password for the user"; + leaf seven { + type xr:Proprietary-password; + description + "Specifies that an encrypted password"; + } + } + container secret { + description + "Provide a secure one way encrypted password"; + leaf five { + type xr:Proprietary-password; + description + "The encrypted user password string"; + } + } + container timeout { + description + "Timeouts for the line"; + container login { + description + "Timeouts related to the login sequence"; + leaf response { + type uint32 { + range "0..300" { + description + "Timeout in seconds (default 30 seconds)"; + } + } + description + "Timeouts for any user input during login sequence"; + } + } + } + container users { + description + "Users characteristics"; + list group { + key "group-name"; + description + "Name of the user group"; + leaf group-name { + type union { + type string { + pattern "cisco-support" { + description + "Cisco support personnel"; + } + } + type string { + pattern "netadmin" { + description + "Network administrators group"; + } + } + type string { + pattern "operator" { + description + "Operator group"; + } + } + type string { + pattern "root-lr" { + description + "Root LR group"; + } + } + type string { + pattern "serviceadmin" { + description + "Service administrators group"; + } + } + type string { + pattern "sysadmin" { + description + "System administrators group"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of the user group"; + } + } + } + description + "Name of the user group"; + } + } + } + } + augment "/a2:aaa" { + description + "This augment extends aaa nodes configuration"; + container admin-accounting { + description + "Admin Accounting Enable/Disable"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "enable calvados accounting"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "disable calvados accounting"; + } + } + leaf default-taskgroup { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the taskgroup to be used"; + } + } + description + "Default taskgroup to be used for remote authentication"; + } + container password-policies { + description + "AAA password Policy"; + list password-policy { + key "password-policy-name"; + description + "Password Policy name"; + leaf password-policy-name { + type string { + length "1..253" { + description + "Password Policy name. + Allowed special chars for password policy are _,-,.,;,:,$,#,space allowed with backslash"; + } + } + description + "Password Policy name"; + } + leaf min-length { + type uint32 { + range "2..253" { + description + "Minimum length <2-253>, default is 2"; + } + } + description + "Specify the minimum length of the password/secret"; + } + leaf max-length { + type uint32 { + range "2..253" { + description + "Maximum length <2-253>, default is 253"; + } + } + description + "Specify the maximum length of the password/secret"; + } + leaf upper-case { + type uint32 { + range "0..253" { + description + "Number of upper-case characters <0-253>, default is 0."; + } + } + description + "Number of upper-case characters required in password/secret"; + } + leaf lower-case { + type uint32 { + range "0..253" { + description + "Number of lower-case characters <0-253>, default is 0."; + } + } + description + "Number of lower-case characters required in password/secret"; + } + leaf special-char { + type uint32 { + range "0..253" { + description + "Number of special characters <0-253>, default is 0."; + } + } + description + "Number of special characters required in password/secret"; + } + leaf numeric { + type uint32 { + range "0..253" { + description + "Number of numeric characters <0-253>, default is 0."; + } + } + description + "Number of numeric characters required in password/secret"; + } + leaf min-char-change { + type uint32 { + range "0..253" { + description + "Number of characters change required <0-253>, default is 4."; + } + } + description + "Number of characters change required between old and new passwords"; + } + leaf max-char-repetition { + type uint32 { + range "2..5" { + description + "Number of times a character can repeat <2-5>, default is 0."; + } + } + description + "Number of times consecutively a character can repeat in the password"; + } + leaf restrict-old-count { + type uint32 { + range "0..10" { + description + "Represents the history of passwords/secrets that cannot be reused now"; + } + } + description + "Count for the number of old passwords/secrets that cannot be reused"; + } + container restrict-old-time { + description + "Time for which any old password/secret is considered as valid history"; + leaf years { + type uint32 { + range "0..99" { + description + "Number of years"; + } + } + description + "Number of years"; + } + leaf months { + type uint32 { + range "0..11" { + description + "Number of months"; + } + } + description + "Number of months"; + } + leaf days { + type uint32 { + range "0..30" { + description + "Number of days"; + } + } + description + "Number of days"; + } + } + container restrict-username { + presence "Indicates a restrict-username node is configured."; + description + "Restricts the usage of associated username as password/secret"; + } + container restrict-username-reverse { + presence "Indicates a restrict-username-reverse node is configured."; + description + "Restricts the usage of associated username reversed as password/secret"; + } + container restrict-password-reverse { + presence "Indicates a restrict-password-reverse node is configured."; + description + "Restricts the password to be same as reversed old password"; + } + container restrict-password-advanced { + presence "Indicates a restrict-password-advanced node is configured."; + description + "Advanced restrictions on new password"; + } + container lifetime { + description + "Lifetime of the password/secret"; + leaf years { + type uint32 { + range "0..99" { + description + "Number of years"; + } + } + description + "Number of years"; + } + leaf months { + type uint32 { + range "0..11" { + description + "Number of months"; + } + } + description + "Number of months"; + } + leaf days { + type uint32 { + range "0..30" { + description + "Number of days"; + } + } + description + "Number of days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Number of hours"; + } + } + description + "Number of hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Number of minutes"; + } + } + description + "Number of minutes"; + } + leaf seconds { + type uint32 { + range "30..59" { + description + "Number of seconds"; + } + } + description + "Number of seconds"; + } + } + container lockout-time { + description + "Lockout time for the maximum authentication failures"; + leaf days { + type uint32 { + range "0..255" { + description + "Number of days"; + } + } + description + "Number of days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Number of hours"; + } + } + description + "Number of hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Number of minutes"; + } + } + description + "Number of minutes"; + } + leaf seconds { + type uint32 { + range "0..59" { + description + "Number of seconds"; + } + } + description + "Number of seconds"; + } + } + container warn-interval { + description + "Warning interval to notify about expiring password/secret"; + leaf years { + type uint32 { + range "0..99" { + description + "Number of years"; + } + } + description + "Number of years"; + } + leaf months { + type uint32 { + range "0..11" { + description + "Number of months"; + } + } + description + "Number of months"; + } + leaf days { + type uint32 { + range "0..30" { + description + "Number of days"; + } + } + description + "Number of days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Number of hours"; + } + } + description + "Number of hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Number of minutes"; + } + } + description + "Number of minutes"; + } + leaf seconds { + type uint32 { + range "30..59" { + description + "Number of seconds"; + } + } + description + "Number of seconds"; + } + } + leaf authen-max-attempts { + type uint32 { + range "1..24" { + description + "Number of attempts, default is 0."; + } + } + description + "Maximum authentication failures to be allowed."; + } + container restrict-consecutive-characters { + description + "Restrict consecutive letters and decimal numbers from English alphabet and qwerty keyboard"; + leaf english-alphabet { + type uint32 { + range "2..26" { + description + "Number of characters"; + } + } + description + "Restrict consecutive letters from English alphabet"; + } + container cyclic-wrap-en { + must "../english-alphabet"; + presence "Indicates a cyclic-wrap node is configured."; + description + "Restrict consecutive English letters from cyclic wrapping, e.g. yzab"; + } + leaf qwerty-keyboard { + type uint32 { + range "2..10" { + description + "Number of characters"; + } + } + description + "Restrict consecutive alphanumeric characters from qwerty keyboard"; + } + container cyclic-wrap-qt { + must "../qwerty-keyboard"; + presence "Indicates a cyclic-wrap node is configured."; + description + "Restrict alphanumeric characters on the qwerty keyboard from cyclic wrapping, e.g. opqw, 9012"; + } + } + } + } + container enable-cert-authentication { + presence "Indicates a enable-cert-authentication node is configured."; + description + "Enables OpenSSH Certificate based authentication for TACACS+ users. Mandates exec authorization configuration with TACACS+"; + } + container usergroups { + description + "Configure user group"; + list usergroup { + key "usergroup-name"; + description + "Usergroup name"; + leaf usergroup-name { + type string { + length "1..253" { + description + "Usergroup name. + Allowed special chars for usergroup name are _-."; + } + } + description + "Usergroup name"; + } + leaf description { + type string { + length "1..800" { + description + "Description for this group"; + } + } + description + "Description for the user group"; + } + container taskgroup { + description + "Task group associated with this group"; + container root-lr { + presence "Indicates a root-lr node is configured."; + description + "Root LR group"; + } + container netadmin { + presence "Indicates a netadmin node is configured."; + description + "Network administrators group"; + } + container sysadmin { + presence "Indicates a sysadmin node is configured."; + description + "System administrators group"; + } + container serviceadmin { + presence "Indicates a serviceadmin node is configured."; + description + "Service administrators group"; + } + container operator { + presence "Indicates a operator node is configured."; + description + "Operator group"; + } + container cisco-support { + presence "Indicates a cisco-support node is configured."; + description + "Technical support group"; + } + container maintenance { + presence "Indicates a maintenance node is configured."; + description + "Maintenance group"; + } + container provisioning { + presence "Indicates a provisioning node is configured."; + description + "Provisioning group"; + } + container retrieve { + presence "Indicates a retrieve node is configured."; + description + "Retrieve group"; + } + container read-only-tg { + presence "Indicates a read-only-tg node is configured."; + description + "Read only group"; + } + container task-groups { + description + "Name of the task group"; + list task-group { + key "task-group-name"; + description + "Name of the task group"; + leaf task-group-name { + type string { + length "1..800" { + description + "Name of the task group"; + } + } + description + "Name of the task group"; + } + } + } + } + container inherit { + description + "Inherit to this user group"; + list usergroup { + key "usergroup-name"; + description + "User group to be inherited by this group"; + leaf usergroup-name { + type string { + length "1..253" { + description + "Name of the user group. + Allowed special chars for usergroup name are _-."; + } + } + description + "User group to be inherited by this group"; + } + } + } + } + } + container taskgroups { + description + "Configure task group"; + list taskgroup { + key "taskgroup-name"; + description + "Taskgroup name"; + leaf taskgroup-name { + type string { + length "1..253" { + description + "Taskgroup name. + Allowed all special chars except ? without prepended backslash and space without prepended backslash"; + } + } + description + "Taskgroup name"; + } + leaf description { + type string { + length "1..800" { + description + "Description for this group"; + } + } + description + "Description for the task group"; + } + container task { + description + "Specify a task ID to be part of this group"; + container read { + description + "Specify a read-type task ID"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Border Gateway Protocol"; + } + container ospf { + presence "Indicates a ospf node is configured."; + description + "Open Shortest Pathway First"; + } + container hsrp { + presence "Indicates a hsrp node is configured."; + description + "Hot Standby Routing Protocol"; + } + container isis { + presence "Indicates a isis node is configured."; + description + "Intermediate System-Intermediate System"; + } + container route-map { + presence "Indicates a route-map node is configured."; + description + "Policy filtering and redistribution of routes"; + } + container route-policy { + presence "Indicates a route-policy node is configured."; + description + "Route Policy"; + } + container static { + presence "Indicates a static node is configured."; + description + "Static Routing"; + } + container vrrp { + presence "Indicates a vrrp node is configured."; + description + "Virtual Router Redundancy Protocol"; + } + container cef { + presence "Indicates a cef node is configured."; + description + "Cisco Express Forwarding/FIB"; + } + container lpts { + presence "Indicates a lpts node is configured."; + description + "Local Packet Transport Service"; + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4"; + } + container rib { + presence "Indicates a rib node is configured."; + description + "Controls and monitors the routing table (RIB)"; + } + container multicast { + presence "Indicates a multicast node is configured."; + description + "Multicast management including PIM, IGMP, etc."; + } + container mpls-te { + presence "Indicates a mpls-te node is configured."; + description + "Multi-protocol Label Switching - Traffic Engineering"; + } + container mpls-ldp { + presence "Indicates a mpls-ldp node is configured."; + description + "Multi-protocol Label Switching - Label Distribution Protocol"; + } + container mpls-static { + presence "Indicates a mpls-static node is configured."; + description + "Multi-protocol Label Switching - Static configuration"; + } + container ouni { + presence "Indicates a ouni node is configured."; + description + "Optical UNI"; + } + container fabric { + presence "Indicates a fabric node is configured."; + description + "Fabric Management"; + } + container bundle { + presence "Indicates a bundle node is configured."; + description + "Bundles"; + } + container network { + presence "Indicates a network node is configured."; + description + "IPv4, IPv6, ICMP, CLNS, ..."; + } + container transport { + presence "Indicates a transport node is configured."; + description + "TCP/UDP"; + } + container ppp { + presence "Indicates a ppp node is configured."; + description + "Point-to-Point Protocol"; + } + container hdlc { + presence "Indicates a hdlc node is configured."; + description + "High-level Data Link Control"; + } + container pos-dpt { + presence "Indicates a pos-dpt node is configured."; + description + "Packet-Over-SONET/Dynamic Packet Transport"; + } + container sonet-sdh { + presence "Indicates a sonet-sdh node is configured."; + description + "SONET/SDH Transport including APS/MSP"; + } + container dwdm { + presence "Indicates a dwdm node is configured."; + description + "DWDM Transport"; + } + container tunnel { + presence "Indicates a tunnel node is configured."; + description + "GRE, UTI"; + } + container vlan { + presence "Indicates a vlan node is configured."; + description + "Virtual Local Area Network"; + } + container qos { + presence "Indicates a qos node is configured."; + description + "Quality of Service"; + } + container acl { + presence "Indicates a acl node is configured."; + description + "Access Control List"; + } + container aaa { + presence "Indicates a aaa node is configured."; + description + "AAA"; + } + container crypto { + presence "Indicates a crypto node is configured."; + description + "ipsec, ssl"; + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "Simple Network Management Protocol"; + } + container config-mgmt { + presence "Indicates a config-mgmt node is configured."; + description + "Create/copy/delete configuration checkpoints"; + } + container config-services { + presence "Indicates a config-services node is configured."; + description + "Configure/monitor web server, ORB, SSH, XML Agent."; + } + container host-services { + presence "Indicates a host-services node is configured."; + description + "Configure/monitor hostname, clock, timestamps, etc."; + } + container boot { + presence "Indicates a boot node is configured."; + description + "reload, boot"; + } + container fault-mgr { + presence "Indicates a fault-mgr node is configured."; + description + "Configure/monitor fault manager settings"; + } + container filesystem { + presence "Indicates a filesystem node is configured."; + description + "Execute rcs, erase, format, fsck, etc."; + } + container interface { + presence "Indicates a interface node is configured."; + description + "Configure/monitor basic (or common) interface characteristics"; + } + container ip-services { + presence "Indicates a ip-services node is configured."; + description + "Configure/monitor DNS, DHCP, ARP, NTP, ARM, Domain services"; + } + container pkg-mgmt { + presence "Indicates a pkg-mgmt node is configured."; + description + "Install operations, SAM"; + } + container system { + presence "Indicates a system node is configured."; + description + "LR Redundancy/pairing, logical interface/node grouping, LACP"; + } + container tty-access { + presence "Indicates a tty-access node is configured."; + description + "Configure/monitor Line (tty/vty), banner, etc."; + } + container basic-services { + presence "Indicates a basic-services node is configured."; + description + "Ping, show version/privileges, etc."; + } + container cdp { + presence "Indicates a cdp node is configured."; + description + "Cisco Discovery Protocol"; + } + container diag { + presence "Indicates a diag node is configured."; + description + "exception, coredump, itrace, monitor, stats"; + } + container ext-access { + presence "Indicates a ext-access node is configured."; + description + "Execute RCP, RSH, FTP, TFTP, rlogin, telnet, ..."; + } + container bcdl { + presence "Indicates a bcdl node is configured."; + description + "Bulk Content Downloader"; + } + container sysmgr { + presence "Indicates a sysmgr node is configured."; + description + "Placement/process, chkpt, mbus, gsp, netio, qnet, SysDB, qsm, driver infrastructure"; + } + container logging { + presence "Indicates a logging node is configured."; + description + "logging, alarm"; + } + container netflow { + presence "Indicates a netflow node is configured."; + description + "Netflow application"; + } + container drivers { + presence "Indicates a drivers node is configured."; + description + "Driver related functions"; + } + container fr { + presence "Indicates a fr node is configured."; + description + "Frame-Relay"; + } + container monitor { + presence "Indicates a monitor node is configured."; + description + "Monitor system resource/performance characteristics"; + } + container inventory { + presence "Indicates a inventory node is configured."; + description + "Inventory information management"; + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "IPv6"; + } + container admin { + presence "Indicates a admin node is configured."; + description + "Admin plane functions"; + } + container atm { + presence "Indicates a atm node is configured."; + description + "Asynchronous Transfer Mode"; + } + container bfd { + presence "Indicates a bfd node is configured."; + description + "Bidirectional Forwarding Protocol"; + } + container rip { + presence "Indicates a rip node is configured."; + description + "Routing Information Protocol"; + } + container eigrp { + presence "Indicates a eigrp node is configured."; + description + "Enhanced Interior Gateway Routing Protocol"; + } + container sbc { + presence "Indicates a sbc node is configured."; + description + "Session Border Controller"; + } + container firewall { + presence "Indicates a firewall node is configured."; + description + "Firewall operations"; + } + container l2vpn { + presence "Indicates a l2vpn node is configured."; + description + "Layer 2 VPN"; + } + container ethernet-services { + presence "Indicates a ethernet-services node is configured."; + description + "Ethernet Services and OAM"; + } + container eem { + presence "Indicates a eem node is configured."; + description + "Embedded Event Manager"; + } + container li { + presence "Indicates a li node is configured."; + description + "Lawful Intercept component"; + } + container ancp { + presence "Indicates a ancp node is configured."; + description + "Access Node Control Protocol"; + } + container cgn { + presence "Indicates a cgn node is configured."; + description + "Carrier Grade Nat"; + } + container call-home { + presence "Indicates a call-home node is configured."; + description + "call-home"; + } + container rcmd { + presence "Indicates a rcmd node is configured."; + description + "Routing Convergence Monitoring and Diagnostics"; + } + container vpdn { + presence "Indicates a vpdn node is configured."; + description + "Virtual Private Dial-up Network (VPDN)"; + } + container nps { + presence "Indicates a nps node is configured."; + description + "Network Positioning System (NPS)"; + } + container lisp { + presence "Indicates a lisp node is configured."; + description + "Locator/Identifier Separation Protocol"; + } + container pbr { + presence "Indicates a pbr node is configured."; + description + "Policy Based Routing"; + } + container otn { + presence "Indicates a otn node is configured."; + description + "Optical Transport Network"; + } + container nacm { + presence "Indicates a nacm node is configured."; + description + "Netconf Authorization Control Module"; + } + container plat-mgr { + presence "Indicates a plat-mgr node is configured."; + description + "Platform Mgr Module"; + } + container cpri { + presence "Indicates a cpri node is configured."; + description + "cpri controller taskid"; + } + container lldp { + presence "Indicates a lldp node is configured."; + description + "Support LLDP protocol"; + } + container l2rib { + presence "Indicates a l2rib node is configured."; + description + "Layer 2 RIB"; + } + container dossier { + presence "Indicates a dossier node is configured."; + description + "Support for dossier related collection/CLIs"; + } + container fti { + presence "Indicates a fti node is configured."; + description + "Support for FTI CLIs"; + } + container fc { + presence "Indicates a fc node is configured."; + description + "Fibre Channel controller taskid"; + } + } + container write { + description + "Specify a read-write-type task ID"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Border Gateway Protocol"; + } + container ospf { + presence "Indicates a ospf node is configured."; + description + "Open Shortest Pathway First"; + } + container hsrp { + presence "Indicates a hsrp node is configured."; + description + "Hot Standby Routing Protocol"; + } + container isis { + presence "Indicates a isis node is configured."; + description + "Intermediate System-Intermediate System"; + } + container route-map { + presence "Indicates a route-map node is configured."; + description + "Policy filtering and redistribution of routes"; + } + container route-policy { + presence "Indicates a route-policy node is configured."; + description + "Route Policy"; + } + container static { + presence "Indicates a static node is configured."; + description + "Static Routing"; + } + container vrrp { + presence "Indicates a vrrp node is configured."; + description + "Virtual Router Redundancy Protocol"; + } + container cef { + presence "Indicates a cef node is configured."; + description + "Cisco Express Forwarding/FIB"; + } + container lpts { + presence "Indicates a lpts node is configured."; + description + "Local Packet Transport Service"; + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4"; + } + container rib { + presence "Indicates a rib node is configured."; + description + "Controls and monitors the routing table (RIB)"; + } + container multicast { + presence "Indicates a multicast node is configured."; + description + "Multicast management including PIM, IGMP, etc."; + } + container mpls-te { + presence "Indicates a mpls-te node is configured."; + description + "Multi-protocol Label Switching - Traffic Engineering"; + } + container mpls-ldp { + presence "Indicates a mpls-ldp node is configured."; + description + "Multi-protocol Label Switching - Label Distribution Protocol"; + } + container mpls-static { + presence "Indicates a mpls-static node is configured."; + description + "Multi-protocol Label Switching - Static configuration"; + } + container ouni { + presence "Indicates a ouni node is configured."; + description + "Optical UNI"; + } + container fabric { + presence "Indicates a fabric node is configured."; + description + "Fabric Management"; + } + container bundle { + presence "Indicates a bundle node is configured."; + description + "Bundles"; + } + container network { + presence "Indicates a network node is configured."; + description + "IPv4, IPv6, ICMP, CLNS, ..."; + } + container transport { + presence "Indicates a transport node is configured."; + description + "TCP/UDP"; + } + container ppp { + presence "Indicates a ppp node is configured."; + description + "Point-to-Point Protocol"; + } + container hdlc { + presence "Indicates a hdlc node is configured."; + description + "High-level Data Link Control"; + } + container pos-dpt { + presence "Indicates a pos-dpt node is configured."; + description + "Packet-Over-SONET/Dynamic Packet Transport"; + } + container sonet-sdh { + presence "Indicates a sonet-sdh node is configured."; + description + "SONET/SDH Transport including APS/MSP"; + } + container dwdm { + presence "Indicates a dwdm node is configured."; + description + "DWDM Transport"; + } + container tunnel { + presence "Indicates a tunnel node is configured."; + description + "GRE, UTI"; + } + container vlan { + presence "Indicates a vlan node is configured."; + description + "Virtual Local Area Network"; + } + container qos { + presence "Indicates a qos node is configured."; + description + "Quality of Service"; + } + container acl { + presence "Indicates a acl node is configured."; + description + "Access Control List"; + } + container aaa { + presence "Indicates a aaa node is configured."; + description + "AAA"; + } + container crypto { + presence "Indicates a crypto node is configured."; + description + "ipsec, ssl"; + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "Simple Network Management Protocol"; + } + container config-mgmt { + presence "Indicates a config-mgmt node is configured."; + description + "Create/copy/delete configuration checkpoints"; + } + container config-services { + presence "Indicates a config-services node is configured."; + description + "Configure/monitor web server, ORB, SSH, XML Agent."; + } + container host-services { + presence "Indicates a host-services node is configured."; + description + "Configure/monitor hostname, clock, timestamps, etc."; + } + container boot { + presence "Indicates a boot node is configured."; + description + "reload, boot"; + } + container fault-mgr { + presence "Indicates a fault-mgr node is configured."; + description + "Configure/monitor fault manager settings"; + } + container filesystem { + presence "Indicates a filesystem node is configured."; + description + "Execute rcs, erase, format, fsck, etc."; + } + container interface { + presence "Indicates a interface node is configured."; + description + "Configure/monitor basic (or common) interface characteristics"; + } + container ip-services { + presence "Indicates a ip-services node is configured."; + description + "Configure/monitor DNS, DHCP, ARP, NTP, ARM, Domain services"; + } + container pkg-mgmt { + presence "Indicates a pkg-mgmt node is configured."; + description + "Install operations, SAM"; + } + container system { + presence "Indicates a system node is configured."; + description + "LR Redundancy/pairing, logical interface/node grouping, LACP"; + } + container tty-access { + presence "Indicates a tty-access node is configured."; + description + "Configure/monitor Line (tty/vty), banner, etc."; + } + container basic-services { + presence "Indicates a basic-services node is configured."; + description + "Ping, show version/privileges, etc."; + } + container cdp { + presence "Indicates a cdp node is configured."; + description + "Cisco Discovery Protocol"; + } + container diag { + presence "Indicates a diag node is configured."; + description + "exception, coredump, itrace, monitor, stats"; + } + container ext-access { + presence "Indicates a ext-access node is configured."; + description + "Execute RCP, RSH, FTP, TFTP, rlogin, telnet, ..."; + } + container bcdl { + presence "Indicates a bcdl node is configured."; + description + "Bulk Content Downloader"; + } + container sysmgr { + presence "Indicates a sysmgr node is configured."; + description + "Placement/process, chkpt, mbus, gsp, netio, qnet, SysDB, qsm, driver infrastructure"; + } + container logging { + presence "Indicates a logging node is configured."; + description + "logging, alarm"; + } + container netflow { + presence "Indicates a netflow node is configured."; + description + "Netflow application"; + } + container drivers { + presence "Indicates a drivers node is configured."; + description + "Driver related functions"; + } + container fr { + presence "Indicates a fr node is configured."; + description + "Frame-Relay"; + } + container monitor { + presence "Indicates a monitor node is configured."; + description + "Monitor system resource/performance characteristics"; + } + container inventory { + presence "Indicates a inventory node is configured."; + description + "Inventory information management"; + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "IPv6"; + } + container admin { + presence "Indicates a admin node is configured."; + description + "Admin plane functions"; + } + container atm { + presence "Indicates a atm node is configured."; + description + "Asynchronous Transfer Mode"; + } + container bfd { + presence "Indicates a bfd node is configured."; + description + "Bidirectional Forwarding Protocol"; + } + container rip { + presence "Indicates a rip node is configured."; + description + "Routing Information Protocol"; + } + container eigrp { + presence "Indicates a eigrp node is configured."; + description + "Enhanced Interior Gateway Routing Protocol"; + } + container sbc { + presence "Indicates a sbc node is configured."; + description + "Session Border Controller"; + } + container firewall { + presence "Indicates a firewall node is configured."; + description + "Firewall operations"; + } + container l2vpn { + presence "Indicates a l2vpn node is configured."; + description + "Layer 2 VPN"; + } + container ethernet-services { + presence "Indicates a ethernet-services node is configured."; + description + "Ethernet Services and OAM"; + } + container eem { + presence "Indicates a eem node is configured."; + description + "Embedded Event Manager"; + } + container li { + presence "Indicates a li node is configured."; + description + "Lawful Intercept component"; + } + container ancp { + presence "Indicates a ancp node is configured."; + description + "Access Node Control Protocol"; + } + container cgn { + presence "Indicates a cgn node is configured."; + description + "Carrier Grade Nat"; + } + container call-home { + presence "Indicates a call-home node is configured."; + description + "call-home"; + } + container rcmd { + presence "Indicates a rcmd node is configured."; + description + "Routing Convergence Monitoring and Diagnostics"; + } + container vpdn { + presence "Indicates a vpdn node is configured."; + description + "Virtual Private Dial-up Network (VPDN)"; + } + container nps { + presence "Indicates a nps node is configured."; + description + "Network Positioning System (NPS)"; + } + container lisp { + presence "Indicates a lisp node is configured."; + description + "Locator/Identifier Separation Protocol"; + } + container pbr { + presence "Indicates a pbr node is configured."; + description + "Policy Based Routing"; + } + container otn { + presence "Indicates a otn node is configured."; + description + "Optical Transport Network"; + } + container nacm { + presence "Indicates a nacm node is configured."; + description + "Netconf Authorization Control Module"; + } + container plat-mgr { + presence "Indicates a plat-mgr node is configured."; + description + "Platform Mgr Module"; + } + container cpri { + presence "Indicates a cpri node is configured."; + description + "cpri controller taskid"; + } + container lldp { + presence "Indicates a lldp node is configured."; + description + "Support LLDP protocol"; + } + container l2rib { + presence "Indicates a l2rib node is configured."; + description + "Layer 2 RIB"; + } + container dossier { + presence "Indicates a dossier node is configured."; + description + "Support for dossier related collection/CLIs"; + } + container fti { + presence "Indicates a fti node is configured."; + description + "Support for FTI CLIs"; + } + container fc { + presence "Indicates a fc node is configured."; + description + "Fibre Channel controller taskid"; + } + } + container execute { + description + "Specify a execute-type task ID"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Border Gateway Protocol"; + } + container ospf { + presence "Indicates a ospf node is configured."; + description + "Open Shortest Pathway First"; + } + container hsrp { + presence "Indicates a hsrp node is configured."; + description + "Hot Standby Routing Protocol"; + } + container isis { + presence "Indicates a isis node is configured."; + description + "Intermediate System-Intermediate System"; + } + container route-map { + presence "Indicates a route-map node is configured."; + description + "Policy filtering and redistribution of routes"; + } + container route-policy { + presence "Indicates a route-policy node is configured."; + description + "Route Policy"; + } + container static { + presence "Indicates a static node is configured."; + description + "Static Routing"; + } + container vrrp { + presence "Indicates a vrrp node is configured."; + description + "Virtual Router Redundancy Protocol"; + } + container cef { + presence "Indicates a cef node is configured."; + description + "Cisco Express Forwarding/FIB"; + } + container lpts { + presence "Indicates a lpts node is configured."; + description + "Local Packet Transport Service"; + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4"; + } + container rib { + presence "Indicates a rib node is configured."; + description + "Controls and monitors the routing table (RIB)"; + } + container multicast { + presence "Indicates a multicast node is configured."; + description + "Multicast management including PIM, IGMP, etc."; + } + container mpls-te { + presence "Indicates a mpls-te node is configured."; + description + "Multi-protocol Label Switching - Traffic Engineering"; + } + container mpls-ldp { + presence "Indicates a mpls-ldp node is configured."; + description + "Multi-protocol Label Switching - Label Distribution Protocol"; + } + container mpls-static { + presence "Indicates a mpls-static node is configured."; + description + "Multi-protocol Label Switching - Static configuration"; + } + container ouni { + presence "Indicates a ouni node is configured."; + description + "Optical UNI"; + } + container fabric { + presence "Indicates a fabric node is configured."; + description + "Fabric Management"; + } + container bundle { + presence "Indicates a bundle node is configured."; + description + "Bundles"; + } + container network { + presence "Indicates a network node is configured."; + description + "IPv4, IPv6, ICMP, CLNS, ..."; + } + container transport { + presence "Indicates a transport node is configured."; + description + "TCP/UDP"; + } + container ppp { + presence "Indicates a ppp node is configured."; + description + "Point-to-Point Protocol"; + } + container hdlc { + presence "Indicates a hdlc node is configured."; + description + "High-level Data Link Control"; + } + container pos-dpt { + presence "Indicates a pos-dpt node is configured."; + description + "Packet-Over-SONET/Dynamic Packet Transport"; + } + container sonet-sdh { + presence "Indicates a sonet-sdh node is configured."; + description + "SONET/SDH Transport including APS/MSP"; + } + container dwdm { + presence "Indicates a dwdm node is configured."; + description + "DWDM Transport"; + } + container tunnel { + presence "Indicates a tunnel node is configured."; + description + "GRE, UTI"; + } + container vlan { + presence "Indicates a vlan node is configured."; + description + "Virtual Local Area Network"; + } + container qos { + presence "Indicates a qos node is configured."; + description + "Quality of Service"; + } + container acl { + presence "Indicates a acl node is configured."; + description + "Access Control List"; + } + container aaa { + presence "Indicates a aaa node is configured."; + description + "AAA"; + } + container crypto { + presence "Indicates a crypto node is configured."; + description + "ipsec, ssl"; + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "Simple Network Management Protocol"; + } + container config-mgmt { + presence "Indicates a config-mgmt node is configured."; + description + "Create/copy/delete configuration checkpoints"; + } + container config-services { + presence "Indicates a config-services node is configured."; + description + "Configure/monitor web server, ORB, SSH, XML Agent."; + } + container host-services { + presence "Indicates a host-services node is configured."; + description + "Configure/monitor hostname, clock, timestamps, etc."; + } + container boot { + presence "Indicates a boot node is configured."; + description + "reload, boot"; + } + container fault-mgr { + presence "Indicates a fault-mgr node is configured."; + description + "Configure/monitor fault manager settings"; + } + container filesystem { + presence "Indicates a filesystem node is configured."; + description + "Execute rcs, erase, format, fsck, etc."; + } + container interface { + presence "Indicates a interface node is configured."; + description + "Configure/monitor basic (or common) interface characteristics"; + } + container ip-services { + presence "Indicates a ip-services node is configured."; + description + "Configure/monitor DNS, DHCP, ARP, NTP, ARM, Domain services"; + } + container pkg-mgmt { + presence "Indicates a pkg-mgmt node is configured."; + description + "Install operations, SAM"; + } + container system { + presence "Indicates a system node is configured."; + description + "LR Redundancy/pairing, logical interface/node grouping, LACP"; + } + container tty-access { + presence "Indicates a tty-access node is configured."; + description + "Configure/monitor Line (tty/vty), banner, etc."; + } + container basic-services { + presence "Indicates a basic-services node is configured."; + description + "Ping, show version/privileges, etc."; + } + container cdp { + presence "Indicates a cdp node is configured."; + description + "Cisco Discovery Protocol"; + } + container diag { + presence "Indicates a diag node is configured."; + description + "exception, coredump, itrace, monitor, stats"; + } + container ext-access { + presence "Indicates a ext-access node is configured."; + description + "Execute RCP, RSH, FTP, TFTP, rlogin, telnet, ..."; + } + container bcdl { + presence "Indicates a bcdl node is configured."; + description + "Bulk Content Downloader"; + } + container sysmgr { + presence "Indicates a sysmgr node is configured."; + description + "Placement/process, chkpt, mbus, gsp, netio, qnet, SysDB, qsm, driver infrastructure"; + } + container logging { + presence "Indicates a logging node is configured."; + description + "logging, alarm"; + } + container netflow { + presence "Indicates a netflow node is configured."; + description + "Netflow application"; + } + container drivers { + presence "Indicates a drivers node is configured."; + description + "Driver related functions"; + } + container fr { + presence "Indicates a fr node is configured."; + description + "Frame-Relay"; + } + container monitor { + presence "Indicates a monitor node is configured."; + description + "Monitor system resource/performance characteristics"; + } + container inventory { + presence "Indicates a inventory node is configured."; + description + "Inventory information management"; + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "IPv6"; + } + container admin { + presence "Indicates a admin node is configured."; + description + "Admin plane functions"; + } + container atm { + presence "Indicates a atm node is configured."; + description + "Asynchronous Transfer Mode"; + } + container bfd { + presence "Indicates a bfd node is configured."; + description + "Bidirectional Forwarding Protocol"; + } + container rip { + presence "Indicates a rip node is configured."; + description + "Routing Information Protocol"; + } + container eigrp { + presence "Indicates a eigrp node is configured."; + description + "Enhanced Interior Gateway Routing Protocol"; + } + container sbc { + presence "Indicates a sbc node is configured."; + description + "Session Border Controller"; + } + container firewall { + presence "Indicates a firewall node is configured."; + description + "Firewall operations"; + } + container l2vpn { + presence "Indicates a l2vpn node is configured."; + description + "Layer 2 VPN"; + } + container ethernet-services { + presence "Indicates a ethernet-services node is configured."; + description + "Ethernet Services and OAM"; + } + container eem { + presence "Indicates a eem node is configured."; + description + "Embedded Event Manager"; + } + container li { + presence "Indicates a li node is configured."; + description + "Lawful Intercept component"; + } + container ancp { + presence "Indicates a ancp node is configured."; + description + "Access Node Control Protocol"; + } + container cgn { + presence "Indicates a cgn node is configured."; + description + "Carrier Grade Nat"; + } + container call-home { + presence "Indicates a call-home node is configured."; + description + "call-home"; + } + container rcmd { + presence "Indicates a rcmd node is configured."; + description + "Routing Convergence Monitoring and Diagnostics"; + } + container vpdn { + presence "Indicates a vpdn node is configured."; + description + "Virtual Private Dial-up Network (VPDN)"; + } + container nps { + presence "Indicates a nps node is configured."; + description + "Network Positioning System (NPS)"; + } + container lisp { + presence "Indicates a lisp node is configured."; + description + "Locator/Identifier Separation Protocol"; + } + container pbr { + presence "Indicates a pbr node is configured."; + description + "Policy Based Routing"; + } + container otn { + presence "Indicates a otn node is configured."; + description + "Optical Transport Network"; + } + container nacm { + presence "Indicates a nacm node is configured."; + description + "Netconf Authorization Control Module"; + } + container plat-mgr { + presence "Indicates a plat-mgr node is configured."; + description + "Platform Mgr Module"; + } + container cpri { + presence "Indicates a cpri node is configured."; + description + "cpri controller taskid"; + } + container lldp { + presence "Indicates a lldp node is configured."; + description + "Support LLDP protocol"; + } + container l2rib { + presence "Indicates a l2rib node is configured."; + description + "Layer 2 RIB"; + } + container dossier { + presence "Indicates a dossier node is configured."; + description + "Support for dossier related collection/CLIs"; + } + container fti { + presence "Indicates a fti node is configured."; + description + "Support for FTI CLIs"; + } + container fc { + presence "Indicates a fc node is configured."; + description + "Fibre Channel controller taskid"; + } + } + container debug { + description + "Specify a debug-type task ID"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Border Gateway Protocol"; + } + container ospf { + presence "Indicates a ospf node is configured."; + description + "Open Shortest Pathway First"; + } + container hsrp { + presence "Indicates a hsrp node is configured."; + description + "Hot Standby Routing Protocol"; + } + container isis { + presence "Indicates a isis node is configured."; + description + "Intermediate System-Intermediate System"; + } + container route-map { + presence "Indicates a route-map node is configured."; + description + "Policy filtering and redistribution of routes"; + } + container route-policy { + presence "Indicates a route-policy node is configured."; + description + "Route Policy"; + } + container static { + presence "Indicates a static node is configured."; + description + "Static Routing"; + } + container vrrp { + presence "Indicates a vrrp node is configured."; + description + "Virtual Router Redundancy Protocol"; + } + container cef { + presence "Indicates a cef node is configured."; + description + "Cisco Express Forwarding/FIB"; + } + container lpts { + presence "Indicates a lpts node is configured."; + description + "Local Packet Transport Service"; + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4"; + } + container rib { + presence "Indicates a rib node is configured."; + description + "Controls and monitors the routing table (RIB)"; + } + container multicast { + presence "Indicates a multicast node is configured."; + description + "Multicast management including PIM, IGMP, etc."; + } + container mpls-te { + presence "Indicates a mpls-te node is configured."; + description + "Multi-protocol Label Switching - Traffic Engineering"; + } + container mpls-ldp { + presence "Indicates a mpls-ldp node is configured."; + description + "Multi-protocol Label Switching - Label Distribution Protocol"; + } + container mpls-static { + presence "Indicates a mpls-static node is configured."; + description + "Multi-protocol Label Switching - Static configuration"; + } + container ouni { + presence "Indicates a ouni node is configured."; + description + "Optical UNI"; + } + container fabric { + presence "Indicates a fabric node is configured."; + description + "Fabric Management"; + } + container bundle { + presence "Indicates a bundle node is configured."; + description + "Bundles"; + } + container network { + presence "Indicates a network node is configured."; + description + "IPv4, IPv6, ICMP, CLNS, ..."; + } + container transport { + presence "Indicates a transport node is configured."; + description + "TCP/UDP"; + } + container ppp { + presence "Indicates a ppp node is configured."; + description + "Point-to-Point Protocol"; + } + container hdlc { + presence "Indicates a hdlc node is configured."; + description + "High-level Data Link Control"; + } + container pos-dpt { + presence "Indicates a pos-dpt node is configured."; + description + "Packet-Over-SONET/Dynamic Packet Transport"; + } + container sonet-sdh { + presence "Indicates a sonet-sdh node is configured."; + description + "SONET/SDH Transport including APS/MSP"; + } + container dwdm { + presence "Indicates a dwdm node is configured."; + description + "DWDM Transport"; + } + container tunnel { + presence "Indicates a tunnel node is configured."; + description + "GRE, UTI"; + } + container vlan { + presence "Indicates a vlan node is configured."; + description + "Virtual Local Area Network"; + } + container qos { + presence "Indicates a qos node is configured."; + description + "Quality of Service"; + } + container acl { + presence "Indicates a acl node is configured."; + description + "Access Control List"; + } + container aaa { + presence "Indicates a aaa node is configured."; + description + "AAA"; + } + container crypto { + presence "Indicates a crypto node is configured."; + description + "ipsec, ssl"; + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "Simple Network Management Protocol"; + } + container config-mgmt { + presence "Indicates a config-mgmt node is configured."; + description + "Create/copy/delete configuration checkpoints"; + } + container config-services { + presence "Indicates a config-services node is configured."; + description + "Configure/monitor web server, ORB, SSH, XML Agent."; + } + container host-services { + presence "Indicates a host-services node is configured."; + description + "Configure/monitor hostname, clock, timestamps, etc."; + } + container boot { + presence "Indicates a boot node is configured."; + description + "reload, boot"; + } + container fault-mgr { + presence "Indicates a fault-mgr node is configured."; + description + "Configure/monitor fault manager settings"; + } + container filesystem { + presence "Indicates a filesystem node is configured."; + description + "Execute rcs, erase, format, fsck, etc."; + } + container interface { + presence "Indicates a interface node is configured."; + description + "Configure/monitor basic (or common) interface characteristics"; + } + container ip-services { + presence "Indicates a ip-services node is configured."; + description + "Configure/monitor DNS, DHCP, ARP, NTP, ARM, Domain services"; + } + container pkg-mgmt { + presence "Indicates a pkg-mgmt node is configured."; + description + "Install operations, SAM"; + } + container system { + presence "Indicates a system node is configured."; + description + "LR Redundancy/pairing, logical interface/node grouping, LACP"; + } + container tty-access { + presence "Indicates a tty-access node is configured."; + description + "Configure/monitor Line (tty/vty), banner, etc."; + } + container basic-services { + presence "Indicates a basic-services node is configured."; + description + "Ping, show version/privileges, etc."; + } + container cdp { + presence "Indicates a cdp node is configured."; + description + "Cisco Discovery Protocol"; + } + container diag { + presence "Indicates a diag node is configured."; + description + "exception, coredump, itrace, monitor, stats"; + } + container ext-access { + presence "Indicates a ext-access node is configured."; + description + "Execute RCP, RSH, FTP, TFTP, rlogin, telnet, ..."; + } + container bcdl { + presence "Indicates a bcdl node is configured."; + description + "Bulk Content Downloader"; + } + container sysmgr { + presence "Indicates a sysmgr node is configured."; + description + "Placement/process, chkpt, mbus, gsp, netio, qnet, SysDB, qsm, driver infrastructure"; + } + container logging { + presence "Indicates a logging node is configured."; + description + "logging, alarm"; + } + container netflow { + presence "Indicates a netflow node is configured."; + description + "Netflow application"; + } + container drivers { + presence "Indicates a drivers node is configured."; + description + "Driver related functions"; + } + container fr { + presence "Indicates a fr node is configured."; + description + "Frame-Relay"; + } + container monitor { + presence "Indicates a monitor node is configured."; + description + "Monitor system resource/performance characteristics"; + } + container inventory { + presence "Indicates a inventory node is configured."; + description + "Inventory information management"; + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "IPv6"; + } + container admin { + presence "Indicates a admin node is configured."; + description + "Admin plane functions"; + } + container atm { + presence "Indicates a atm node is configured."; + description + "Asynchronous Transfer Mode"; + } + container bfd { + presence "Indicates a bfd node is configured."; + description + "Bidirectional Forwarding Protocol"; + } + container rip { + presence "Indicates a rip node is configured."; + description + "Routing Information Protocol"; + } + container eigrp { + presence "Indicates a eigrp node is configured."; + description + "Enhanced Interior Gateway Routing Protocol"; + } + container sbc { + presence "Indicates a sbc node is configured."; + description + "Session Border Controller"; + } + container firewall { + presence "Indicates a firewall node is configured."; + description + "Firewall operations"; + } + container l2vpn { + presence "Indicates a l2vpn node is configured."; + description + "Layer 2 VPN"; + } + container ethernet-services { + presence "Indicates a ethernet-services node is configured."; + description + "Ethernet Services and OAM"; + } + container eem { + presence "Indicates a eem node is configured."; + description + "Embedded Event Manager"; + } + container li { + presence "Indicates a li node is configured."; + description + "Lawful Intercept component"; + } + container ancp { + presence "Indicates a ancp node is configured."; + description + "Access Node Control Protocol"; + } + container cgn { + presence "Indicates a cgn node is configured."; + description + "Carrier Grade Nat"; + } + container call-home { + presence "Indicates a call-home node is configured."; + description + "call-home"; + } + container rcmd { + presence "Indicates a rcmd node is configured."; + description + "Routing Convergence Monitoring and Diagnostics"; + } + container vpdn { + presence "Indicates a vpdn node is configured."; + description + "Virtual Private Dial-up Network (VPDN)"; + } + container nps { + presence "Indicates a nps node is configured."; + description + "Network Positioning System (NPS)"; + } + container lisp { + presence "Indicates a lisp node is configured."; + description + "Locator/Identifier Separation Protocol"; + } + container pbr { + presence "Indicates a pbr node is configured."; + description + "Policy Based Routing"; + } + container otn { + presence "Indicates a otn node is configured."; + description + "Optical Transport Network"; + } + container nacm { + presence "Indicates a nacm node is configured."; + description + "Netconf Authorization Control Module"; + } + container plat-mgr { + presence "Indicates a plat-mgr node is configured."; + description + "Platform Mgr Module"; + } + container cpri { + presence "Indicates a cpri node is configured."; + description + "cpri controller taskid"; + } + container lldp { + presence "Indicates a lldp node is configured."; + description + "Support LLDP protocol"; + } + container l2rib { + presence "Indicates a l2rib node is configured."; + description + "Layer 2 RIB"; + } + container dossier { + presence "Indicates a dossier node is configured."; + description + "Support for dossier related collection/CLIs"; + } + container fti { + presence "Indicates a fti node is configured."; + description + "Support for FTI CLIs"; + } + container fc { + presence "Indicates a fc node is configured."; + description + "Fibre Channel controller taskid"; + } + } + } + container inherit { + description + "Inherit to include into this taskgroup"; + container taskgroup { + description + "Specify a taskgroup to inherit from"; + container root-lr { + presence "Indicates a root-lr node is configured."; + description + "Root LR taskgroup"; + } + container netadmin { + presence "Indicates a netadmin node is configured."; + description + "Network administrators taskgroup"; + } + container sysadmin { + presence "Indicates a sysadmin node is configured."; + description + "System administrators taskgroup"; + } + container serviceadmin { + presence "Indicates a serviceadmin node is configured."; + description + "Service administrators taskgroup"; + } + container operator { + presence "Indicates a operator node is configured."; + description + "Operator taskgroup"; + } + container cisco-support { + presence "Indicates a cisco-support node is configured."; + description + "Technical support group"; + } + container task-groups { + description + "Name of the task group to include"; + list task-group { + key "task-group-name"; + description + "Name of the task group to include"; + leaf task-group-name { + type string { + length "1..253" { + description + "Name of the task group to include. + Allowed all special chars except ? without prepended backslash and space without prepended backslash"; + } + } + description + "Name of the task group to include"; + } + } + } + } + } + } + } + container usernames { + description + "Configure user name"; + list username { + key "ordering-index name"; + description + "User name"; + leaf ordering-index { + type uint32; + description + "This is used to sort the users in the order of + precedence"; + } + leaf name { + type string { + length "2..253" { + description + "User name. + Allowed special chars for username are _-.<>()[]&^!~*%=,+|:#$ forward slash and back slash"; + } + } + description + "User name"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify the encrypted password for the user"; + } + container secret { + description + "Specify the secure password for the user"; + leaf five { + type xr:Md5-password; + must "not(../eight or ../nine or ../ten)"; + description + "Specifies that an encrypted password"; + } + leaf eight { + type xr:Type8-password; + must "not(../five or ../nine or ../ten)"; + description + "Specifies that SHA-256 encrypted password will follow"; + } + leaf nine { + type xr:Type9-password; + must "not(../five or ../eight or ../ten)"; + description + "Specifies that scrypt encrypted password will follow"; + } + leaf ten { + type xr:Type10-password; + must "not(../five or ../eight or ../nine)"; + description + "Specifies that SHA512 encrypted password will follow"; + } + } + container login-history { + description + "Option to set whether to display previous login details"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable the display of login history."; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable the display of login history."; + } + } + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..253" { + description + "Specify the password policy name"; + } + } + description + "Specify the policy common to password and secret for the user"; + } + container password-policy { + description + "Specify the password policy for the user"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..253" { + description + "Specify the password policy name"; + } + } + description + "Specify the password policy name"; + } + leaf password { + type xr:Proprietary-password; + description + "Specify the encrypted password for the user"; + } + } + container group { + description + "User group in which this user will be a member of"; + container root-lr { + presence "Indicates a root-lr node is configured."; + description + "Root LR group"; + } + container netadmin { + presence "Indicates a netadmin node is configured."; + description + "Network administrators group"; + } + container sysadmin { + presence "Indicates a sysadmin node is configured."; + description + "System administrators group"; + } + container serviceadmin { + presence "Indicates a serviceadmin node is configured."; + description + "Service administrators group"; + } + container operator { + presence "Indicates a operator node is configured."; + description + "Operator group"; + } + container cisco-support { + presence "Indicates a cisco-support node is configured."; + description + "Cisco support personnel"; + } + container maintenance { + presence "Indicates a maintenance node is configured."; + description + "Maintenance group"; + } + container provisioning { + presence "Indicates a provisioning node is configured."; + description + "Provisioning group"; + } + container retrieve { + presence "Indicates a retrieve node is configured."; + description + "Retrieve group"; + } + container read-only-tg { + presence "Indicates a read-only-tg node is configured."; + description + "Read only group"; + } + container user-groups { + description + "Name of the user group"; + list user-group { + key "user-group-name"; + description + "Name of the user group"; + leaf user-group-name { + type string { + length "1..253" { + description + "Name of the user group. + Allowed special chars for usergroup name are _-."; + } + } + description + "Name of the user group"; + } + } + } + } + leaf shell-type { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Shell type of the user"; + } + } + description + "Specify the shell type of the user"; + } + leaf directory { + type string { + length "1..512" { + description + "Directory of the user"; + } + } + description + "Specify the directory of the user"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-access-list-datatypes.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-access-list-datatypes.yang new file mode 100644 index 000000000..fa9cf0e2d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-access-list-datatypes.yang @@ -0,0 +1,1764 @@ +module Cisco-IOS-XR-um-access-list-datatypes { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-access-list-datatypes"; + prefix um-access-list-datatypes; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr2; + } + + organization + "Cisco Systems, Inc."; + contact + " + Cisco Systems, Inc. + Customer Service + + Postal: 170 W Tasman Drive + San Jose, CA 95134 + + Tel: +1 1800 553-NETS + + E-mail: cs-yang@cisco.com + "; + description + " + This module contains a collection of IOS-XR YANG model derived from CLI. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved. + "; + + revision 2022-08-15 { + description + "Added icmpv6 enum string to ipv4-protocol + 2022-07-11 + Added missing description statement to nodes + 2022-07-08 + Adding dscp bitmask"; + semver:module-version "2.2.0"; + } + revision 2021-03-17 { + description + "Adding new protocols - vrrp, rsvp"; + semver:module-version "2.1.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-04-01 { + description + "Initial version"; + } + + typedef ipv4-protocol { + type union { + type uint8 { + range "0..255" { + description + "An IPv4 Protocol Number"; + } + } + type enumeration { + enum "ahp" { + value 51; + description + "Authentication Header Protocol"; + } + enum "eigrp" { + value 88; + description + "Cisco's EIGRP Routing Protocol"; + } + enum "esp" { + value 50; + description + "Encapsulation Security Payload"; + } + enum "gre" { + value 47; + description + "Cisco's GRE Tunneling"; + } + enum "icmp" { + value 1; + description + "Internet Control Message Protocol"; + } + enum "icmpv6" { + value 58; + description + "Internet Control Message Protocol - IPV6"; + } + enum "igmp" { + value 2; + description + "Internet Gateway Message Protocol"; + } + enum "igrp" { + value 9; + description + "Cisco's IGRP Routing Protocol"; + } + enum "ipinip" { + value 4; + description + "IP in IP tunneling"; + } + enum "ipv4" { + value 512; + description + "Any IPv4 Protocol"; + } + enum "nos" { + value 94; + description + "KA9Q NOS Compatible IP over IP Tunneling"; + } + enum "ospf" { + value 89; + description + "OSPF Routing Protocol"; + } + enum "pcp" { + value 108; + description + "Payload Compression Protocol"; + } + enum "pim" { + value 103; + description + "Protocol Independent Multicast"; + } + enum "sctp" { + value 132; + description + "Stream Control Transmission Protocol"; + } + enum "tcp" { + value 6; + description + "Transport Control Protocol"; + } + enum "udp" { + value 17; + description + "User Datagram Protocol"; + } + enum "rsvp" { + value 46; + description + "Router Reservation Protocol"; + } + enum "vrrp" { + value 112; + description + "Virtual Router Redundancy Protocol"; + } + } + } + description + "ipv4-protocol"; + } + + typedef ipv4-port-number { + type union { + type ipv4-tcp-port-number; + type ipv4-udp-port-number; + } + description + "ipv4-port-number"; + } + + typedef ipv4-tcp-port-number { + type union { + type uint16 { + range "0..65535"; + } + type enumeration { + enum "Echo" { + value 7; + description + "Echo"; + } + enum "Discard" { + value 9; + description + "Discard"; + } + enum "Daytime" { + value 13; + description + "Daytime"; + } + enum "CharGen" { + value 19; + description + "Character generator"; + } + enum "FTPData" { + value 20; + description + "FTP data connections (used infrequently)"; + } + enum "FTP" { + value 21; + description + "File Transfer Protocol"; + } + enum "SSH" { + value 22; + description + "Secure Shell"; + } + enum "Telnet" { + value 23; + description + "Telnet"; + } + enum "SMTP" { + value 25; + description + "Simple Mail Transport Protocol"; + } + enum "Time" { + value 37; + description + "Time"; + } + enum "WhoIs" { + value 43; + description + "Nicname"; + } + enum "TACACS" { + value 49; + description + "TAC Access Control System"; + } + enum "DNS" { + value 53; + description + "Domain Name Service"; + } + enum "Gopher" { + value 70; + description + "Gopher"; + } + enum "Finger" { + value 79; + description + "Finger"; + } + enum "WWW" { + value 80; + description + "World Wide Web (HTTP)"; + } + enum "Hostname" { + value 101; + description + "NIC hostname server"; + } + enum "POP2" { + value 109; + description + "Post Office Protocol v2"; + } + enum "POP3" { + value 110; + description + "Post Office Protocol v3"; + } + enum "SunRPC" { + value 111; + description + "Sun Remote Procedure Call"; + } + enum "Ident" { + value 113; + description + "Ident Protocol"; + } + enum "NNTP" { + value 119; + description + "Network News Transport Protocol"; + } + enum "BGP" { + value 179; + description + "Border Gateway Protocol"; + } + enum "IRC" { + value 194; + description + "Internet Relay Chat"; + } + enum "HTTPS" { + value 443; + description + "HTTPS"; + } + enum "PIMAutoRP" { + value 496; + description + "PIM Auto-RP"; + } + enum "ExecOrBiff" { + value 512; + description + "Exec (rsh)"; + } + enum "LoginOrWho" { + value 513; + description + "Login (rlogin)"; + } + enum "CmdOrSyslog" { + value 514; + description + "Remote commands (rcmd)"; + } + enum "LPD" { + value 515; + description + "Printer service"; + } + enum "UUCP" { + value 540; + description + "Unix-to-Unix Copy Program"; + } + enum "KLogin" { + value 543; + description + "Kerberos login"; + } + enum "KShell" { + value 544; + description + "Kerberos shell"; + } + enum "Talk" { + value 517; + description + "Talk"; + } + enum "LDP" { + value 646; + description + "LDP session connection attempts (MPLS)"; + } + enum "RADIUS" { + value 1812; + description + "Radius Authentication protocolTalk"; + } + enum "RADIUS_ACCT" { + value 1813; + description + "Radius accounting Protocol"; + } + } + } + description + "ipv4-tcp-port-number"; + } + + typedef ipv4-udp-port-number { + type union { + type uint16 { + range "0..65535"; + } + type enumeration { + enum "BFD" { + value 3784; + description + "BFD Port"; + } + enum "ExecOrBiff" { + value 512; + description + "Biff (mail notification, comsat"; + } + enum "BootPC" { + value 68; + description + "Bootstrap Protocol (BOOTP) client"; + } + enum "BootPS" { + value 67; + description + "Bootstrap Protocol (BOOTP) server"; + } + enum "Discard" { + value 9; + description + "Discard"; + } + enum "DNSIX" { + value 195; + description + "DNSIX security protocol auditing"; + } + enum "DNS" { + value 53; + description + "Domain Name Service (DNS)"; + } + enum "Echo" { + value 7; + description + "Echo"; + } + enum "ISAKMP" { + value 500; + description + "Internet Security Association and Key Management Protocol"; + } + enum "LDP" { + value 646; + description + "LDP hello packets (MPLS)"; + } + enum "MobileIP" { + value 434; + description + "Mobile IP registration"; + } + enum "NameServer" { + value 42; + description + "IEN116 name service (obsolete)"; + } + enum "NetBIOS_DGS" { + value 138; + description + "NetBios datagram service"; + } + enum "NetBIOS_NS" { + value 137; + description + "NetBios name service"; + } + enum "NetBIOS_SS" { + value 139; + description + "NetBios session service"; + } + enum "NTP" { + value 123; + description + "Network Time Protocol"; + } + enum "PIMAutoRP" { + value 496; + description + "PIM Auto-RP"; + } + enum "RIP" { + value 520; + description + "Routing Information Protocol (router, in.routed)"; + } + enum "SNMP" { + value 161; + description + "Simple Network Management Protocol"; + } + enum "SNMPTrap" { + value 162; + description + "SNMP Traps"; + } + enum "SSH" { + value 22; + description + "Secure Shell service"; + } + enum "SunRPC" { + value 111; + description + "Sun Remote Procedure Call"; + } + enum "CmdOrSyslog" { + value 514; + description + "System Logger"; + } + enum "TACACS" { + value 49; + description + "TAC Access Control System"; + } + enum "Talk" { + value 517; + description + "Talk"; + } + enum "TFTP" { + value 69; + description + "Trivial File Transfer Protocol"; + } + enum "Time" { + value 37; + description + "Time"; + } + enum "LoginOrWho" { + value 513; + description + "Who service (rwho)"; + } + enum "XDMCP" { + value 177; + description + "X Display Manager Control Protocol"; + } + } + } + description + "ipv4-udp-port-number"; + } + + typedef precedence-value { + type union { + type uint8 { + range "0..7"; + } + type enumeration { + enum "Critical" { + value 5; + description + "Match packets with critical precedence"; + } + enum "Flash" { + value 3; + description + "Match packets with flash precedence"; + } + enum "FlashOverride" { + value 4; + description + "Match packets with flash override precedence"; + } + enum "Immediate" { + value 2; + description + "Match packets with immediate precedence"; + } + enum "Internet" { + value 6; + description + "Match packets with internetwork control precedence"; + } + enum "Network" { + value 7; + description + "Match packets with network control precedence"; + } + enum "Priority" { + value 1; + description + "Match packets with priority precedence"; + } + enum "Routine" { + value 0; + description + "Match packets with routine precedence"; + } + } + } + description + "precedence-value"; + } + + typedef dscp-value { + type union { + type uint8 { + range "0..63"; + } + type enumeration { + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + enum "default" { + value 0; + description + "Match packets with default DSCP (000000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + } + } + description + "dscp-value"; + } + + typedef dscp-bitmask-value { + type union { + type xr2:Hex-integer; + type enumeration { + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + enum "default" { + value 0; + description + "Match packets with default DSCP (000000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + } + } + description + "dscp-bitmask-value"; + } + + typedef tcp-bits-type { + type bits { + bit fin { + position 0; + description + "Match on the FIN bit (0x01)"; + } + bit syn { + position 1; + description + "Match on the SYN bit (0x02)"; + } + bit rst { + position 2; + description + "Match on the RST bit (0x04)"; + } + bit psh { + position 3; + description + "Match on the PSH bit (0x08)"; + } + bit ack { + position 4; + description + "Match on the ACK bit (0x10)"; + } + bit urg { + position 5; + description + "Match on the URG bit (0x20)"; + } + } + description + "acl tcp bits number"; + } + + typedef ipv4-icmp-message-type { + type enumeration { + enum "MobileRedirect" { + value 2162687; + description + "Mobile host redirect"; + } + enum "ConversionError" { + value 2097151; + description + "Datagram conversion"; + } + enum "Traceroute" { + value 2031615; + description + "Traceroute"; + } + enum "MaskReply" { + value 1245183; + description + "Mask replies"; + } + enum "MaskRequest" { + value 1179647; + description + "Mask requests"; + } + enum "InformationReply" { + value 1114111; + description + "Information replies"; + } + enum "InformationRequest" { + value 1048575; + description + "Information request"; + } + enum "TimestampReply" { + value 983039; + description + "Timestamp replies"; + } + enum "TimestampRequest" { + value 917503; + description + "Timestamp requests"; + } + enum "ParameterProblem" { + value 851967; + description + "All parameter problems"; + } + enum "TimeExceeded" { + value 786431; + description + "All time exceeds"; + } + enum "RouterSolicitation" { + value 720895; + description + "Router discovery solicitations"; + } + enum "RouterAdvertisement" { + value 655359; + description + "Router discovery advertisements"; + } + enum "AlternateAddress" { + value 458751; + description + "Alternate address"; + } + enum "Echo" { + value 589823; + description + "Echo (ping)"; + } + enum "Redirect" { + value 393215; + description + "All redirects"; + } + enum "SourceQuench" { + value 327679; + description + "Source quenches"; + } + enum "Unreachable" { + value 262143; + description + "All unreachables"; + } + enum "EchoReply" { + value 65535; + description + "Echo reply"; + } + enum "NetworkUnreachable" { + value 196608; + description + "Net unreachable"; + } + enum "HostUnreachable" { + value 196609; + description + "Host unreachable"; + } + enum "ProtocolUnreachable" { + value 196610; + description + "Protocol unreachable"; + } + enum "PortUnreachable" { + value 196611; + description + "Port unreachable"; + } + enum "PacketTooBig" { + value 196612; + description + "Fragmentation needed and DF set"; + } + enum "SourceRouteFailed" { + value 196613; + description + "Source route failed"; + } + enum "NetworkUnknown" { + value 196614; + description + "Network unknown"; + } + enum "HostUnknown" { + value 196615; + description + "Host unknown"; + } + enum "HostIsolated" { + value 196616; + description + "Host isolated"; + } + enum "DODNetProhibited" { + value 196617; + description + "Net prohibited"; + } + enum "DODHostProhibited" { + value 196618; + description + "Host prohibited"; + } + enum "NetTOSUnreachable" { + value 196620; + description + "Network unreachable for TOS"; + } + enum "HostTOSUnreachable" { + value 196619; + description + "Host unreachable for TOS"; + } + enum "AdministrativelyProhibited" { + value 196621; + description + "Administratively prohibited"; + } + enum "HostPrecedenceUnreachable" { + value 196622; + description + "Host unreachable for precedence"; + } + enum "PrecedenceUnreachable" { + value 196623; + description + "Precedence cutoff"; + } + enum "NetworkRedirect" { + value 327680; + description + "Network redirect"; + } + enum "HostRedirect" { + value 327681; + description + "Host redirect"; + } + enum "NetTOSRedirect" { + value 327682; + description + "Net redirect for TOS"; + } + enum "HostTOSRedirect" { + value 327683; + description + "Host redirect for TOS"; + } + enum "TTLExceeded" { + value 720896; + description + "TTL exceeded"; + } + enum "ReassemblyTimeout" { + value 720897; + description + "Reassembly timeout"; + } + enum "GeneralParameterProblem" { + value 786432; + description + "Parameter problem"; + } + enum "OptionMissing" { + value 786433; + description + "Parameter required but not present"; + } + enum "NoRoomForOption" { + value 786434; + description + "Parameter required but no room"; + } + } + description + "ipv4-icmp-message-type"; + } + + typedef ipv6-protocol { + type union { + type uint8 { + range "0..255" { + description + "An IPv6 Protocol Number"; + } + } + type enumeration { + enum "ahp" { + value 51; + description + "Authentication Header Protocol"; + } + enum "eigrp" { + value 88; + description + "Cisco's EIGRP Routing Protocol"; + } + enum "esp" { + value 50; + description + "Encapsulation Security Payload"; + } + enum "gre" { + value 47; + description + "Cisco's GRE Tunneling"; + } + enum "icmpv6" { + value 58; + description + "Internet Control Message Protocol"; + } + enum "igrp" { + value 9; + description + "Cisco's IGRP Routing Protocol"; + } + enum "ipv6" { + value 513; + description + "Any IPv6 Protocol"; + } + enum "ospf" { + value 89; + description + "OSPF Routing Protocol"; + } + enum "pcp" { + value 108; + description + "Payload Compression Protocol"; + } + enum "pim" { + value 103; + description + "Protocol Independent Multicast"; + } + enum "sctp" { + value 132; + description + "Stream Control Transmission Protocol"; + } + enum "tcp" { + value 6; + description + "Transport Control Protocol"; + } + enum "udp" { + value 17; + description + "User Datagram Protocol"; + } + enum "rsvp" { + value 46; + description + "Router Reservation Protocol"; + } + enum "vrrp" { + value 112; + description + "Virtual Router Redundancy Protocol"; + } + } + } + description + "ipv6-protocol"; + } + + typedef ipv6-port-number { + type union { + type ipv6-tcp-port-number; + type ipv6-udp-port-number; + } + description + "ipv6-port-number"; + } + + typedef ipv6-tcp-port-number { + type union { + type uint16 { + range "0..65535"; + } + type enumeration { + enum "Echo" { + value 7; + description + "Echo"; + } + enum "Discard" { + value 9; + description + "Discard"; + } + enum "Daytime" { + value 13; + description + "Daytime"; + } + enum "CharGen" { + value 19; + description + "Character generator"; + } + enum "FTPData" { + value 20; + description + "FTP data connections (used infrequently)"; + } + enum "FTP" { + value 21; + description + "File Transfer Protocol"; + } + enum "SSH" { + value 22; + description + "Secure Shell"; + } + enum "Telnet" { + value 23; + description + "Telnet"; + } + enum "SMTP" { + value 25; + description + "Simple Mail Transport Protocol"; + } + enum "Time" { + value 37; + description + "Time"; + } + enum "WhoIs" { + value 43; + description + "Nicname"; + } + enum "TACACS" { + value 49; + description + "TAC Access Control System"; + } + enum "DNS" { + value 53; + description + "Domain Name Service"; + } + enum "Gopher" { + value 70; + description + "Gopher"; + } + enum "Finger" { + value 79; + description + "Finger"; + } + enum "WWW" { + value 80; + description + "World Wide Web (HTTP)"; + } + enum "Hostname" { + value 101; + description + "NIC hostname server"; + } + enum "POP2" { + value 109; + description + "Post Office Protocol v2"; + } + enum "POP3" { + value 110; + description + "Post Office Protocol v3"; + } + enum "SunRPC" { + value 111; + description + "Sun Remote Procedure Call"; + } + enum "Ident" { + value 113; + description + "Ident Protocol"; + } + enum "NNTP" { + value 119; + description + "Network News Transport Protocol"; + } + enum "BGP" { + value 179; + description + "Border Gateway Protocol"; + } + enum "IRC" { + value 194; + description + "Internet Relay Chat"; + } + enum "HTTPS" { + value 443; + description + "Internet Relay Chat"; + } + enum "PIMAutoRP" { + value 496; + description + "PIM Auto-RP"; + } + enum "ExecOrBiff" { + value 512; + description + "Exec (rsh)"; + } + enum "LoginOrWho" { + value 513; + description + "Login (rlogin)"; + } + enum "CmdOrSyslog" { + value 514; + description + "Remote commands (rcmd)"; + } + enum "LPD" { + value 515; + description + "Printer service"; + } + enum "UUCP" { + value 540; + description + "Unix-to-Unix Copy Program"; + } + enum "KLogin" { + value 543; + description + "Kerberos login"; + } + enum "KShell" { + value 544; + description + "Kerberos shell"; + } + enum "Talk" { + value 517; + description + "Talk"; + } + enum "RADIUS" { + value 1812; + description + "Kerberos shell"; + } + enum "RADIUS_ACCT" { + value 1813; + description + "Talk"; + } + } + } + description + "ipv6-tcp-port-number"; + } + + typedef ipv6-udp-port-number { + type union { + type uint16 { + range "0..65535"; + } + type enumeration { + enum "BFD" { + value 3784; + description + "BFD"; + } + enum "ExecOrBiff" { + value 512; + description + "Biff (mail notification, comsat"; + } + enum "BootPC" { + value 68; + description + "Bootstrap Protocol (BOOTP) client"; + } + enum "BootPS" { + value 67; + description + "Bootstrap Protocol (BOOTP) server"; + } + enum "Discard" { + value 9; + description + "Discard"; + } + enum "DNSIX" { + value 195; + description + "DNSIX security protocol auditing"; + } + enum "DNS" { + value 53; + description + "Domain Name Service (DNS)"; + } + enum "Echo" { + value 7; + description + "Echo"; + } + enum "ISAKMP" { + value 500; + description + "Internet Security Association and Key Management Protocol"; + } + enum "MobileIP" { + value 434; + description + "Mobile IP registration"; + } + enum "NameServer" { + value 42; + description + "IEN116 name service (obsolete)"; + } + enum "NetBIOS_DGS" { + value 138; + description + "NetBios datagram service"; + } + enum "NetBIOS_NS" { + value 137; + description + "NetBios name service"; + } + enum "NetBIOS_SS" { + value 139; + description + "NetBios session service"; + } + enum "NTP" { + value 123; + description + "Network Time Protocol"; + } + enum "PIMAutoRP" { + value 496; + description + "PIM Auto-RP"; + } + enum "RIP" { + value 520; + description + "Routing Information Protocol (router, in.routed)"; + } + enum "SNMP" { + value 161; + description + "Simple Network Management Protocol"; + } + enum "SNMPTrap" { + value 162; + description + "SNMP Traps"; + } + enum "SSH" { + value 22; + description + "Secure Shell service"; + } + enum "SunRPC" { + value 111; + description + "Sun Remote Procedure Call"; + } + enum "CmdOrSyslog" { + value 514; + description + "System Logger"; + } + enum "TACACS" { + value 49; + description + "TAC Access Control System"; + } + enum "Talk" { + value 517; + description + "Talk"; + } + enum "TFTP" { + value 69; + description + "Trivial File Transfer Protocol"; + } + enum "Time" { + value 37; + description + "Time"; + } + enum "LoginOrWho" { + value 513; + description + "Who service (rwho)"; + } + enum "XDMCP" { + value 177; + description + "X Display Manager Control Protocol"; + } + enum "LDP" { + value 646; + description + "LDP"; + } + } + } + description + "ipv6-udp-port-number"; + } + + typedef ipv6-icmp-message-type { + type enumeration { + enum "ParameterProblem" { + value 327679; + description + "All parameter problems"; + } + enum "TimeExceeded" { + value 262143; + description + "All time exceeds"; + } + enum "RouterSolicitation" { + value 8716288; + description + "Router discovery solicitations"; + } + enum "RouterAdvertisement" { + value 8781824; + description + "Router discovery advertisements"; + } + enum "Echo" { + value 8388608; + description + "Echo (ping)"; + } + enum "EchoReply" { + value 8454144; + description + "Echo reply"; + } + enum "PortUnreachable" { + value 65540; + description + "Port unreachable"; + } + enum "PacketTooBig" { + value 131072; + description + "Fragmentation needed and DF set"; + } + enum "AdministrativelyProhibited" { + value 65537; + description + "Administratively prohibited"; + } + enum "TTLExceeded" { + value 196608; + description + "TTL exceeded"; + } + enum "ReassemblyOption" { + value 196609; + description + "Reassembly timeout"; + } + enum "ErroneousHeaderField" { + value 262144; + description + "Erroneous header field"; + } + enum "UnrecognizedNextHeader" { + value 262145; + description + "Unrecognized Next Header type"; + } + enum "UnrecognizedOption" { + value 262146; + description + "Unrecognized IPv6 option"; + } + enum "DestinationUnreachable" { + value 131071; + description + "Destination Unreachable"; + } + enum "AddressUnreachable" { + value 65539; + description + "Address Unreachable"; + } + enum "BeyondScopeOfSourceAddress" { + value 65538; + description + "Unreachable beyond scope of address"; + } + enum "GroupMembershipQuery" { + value 8585215; + description + "Multicast Listener Query"; + } + enum "GroupMembershipReport" { + value 8650751; + description + "Multicast Listener report"; + } + enum "GroupMembershipReduction" { + value 8716287; + description + "Multicast Listener Done"; + } + enum "NeighborRedirect" { + value 8978432; + description + "Neighbor redirect"; + } + enum "NoRouteToDestination" { + value 65536; + description + "No route to destination"; + } + enum "NodeInformationSuccessfulReply" { + value 9175040; + description + "Node information successful reply"; + } + enum "NodeInformationRequestIsRefused" { + value 9175041; + description + "Node information reply rejected"; + } + enum "RouterRenumbering" { + value 9109503; + description + "Router renumbering"; + } + enum "RRCommand" { + value 9043968; + description + "Router renumbering command"; + } + enum "RRResult" { + value 9043969; + description + "Router renumbering result"; + } + enum "RRSeqnumReset" { + value 9044223; + description + "Router renumbering seqnum"; + } + enum "QuerySubjectIsIPv6Address" { + value 9109504; + description + "Query subject is ipv6 address"; + } + enum "QuerySubjectIsDomainName" { + value 9109505; + description + "Query subject is domain name"; + } + enum "QuerySubjectIsIPv4Address" { + value 9109506; + description + "Query subject is ipv4 address"; + } + enum "NeighborSolicitation" { + value 8847360; + description + "Neighbor discovery neighbor solicitations"; + } + enum "NeighborAdvertisement" { + value 8912896; + description + "Neighbor discovery neighbor advertisements"; + } + enum "WhoAreYouRequest" { + value 9175039; + description + "Who are you request"; + } + enum "WhoAreYouReply" { + value 9240575; + description + "Who are you reply"; + } + enum "UnknownQueryType" { + value 9175042; + description + "Unknown query type"; + } + } + description + "ipv6-icmp-message-type"; + } + + typedef header-bits-type { + type bits { + bit routing { + position 0; + description + "Match if routing header is present"; + } + bit destopts { + position 1; + description + "Match if destination opts header is present"; + } + bit hop-by-hop { + position 2; + description + "Match if hop-by-hop opts header is present"; + } + bit fragments { + position 3; + description + "Match if fragment extension header contains a non-zero fragment offset"; + } + bit authen { + position 5; + description + "Match if authentication header is present"; + } + } + description + "IPv6 hearder bits number"; + } + + typedef vlan-id { + type union { + type uint16 { + range "0..4095" { + description + "Vlan Id"; + } + } + type string { + pattern "([0-9]{1,4})-([0-9]{1,4})" { + description + "Lower/upper limit of the Vlan Id range (<0-4095>-<0-4095>)"; + } + } + } + description + "vlan-id"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-adt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-adt-cfg.yang new file mode 100644 index 000000000..0ad6c76b6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-adt-cfg.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-um-adt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-adt-cfg"; + prefix um-adt-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 adt package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-07-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container adt { + description + "ADT configuration commands"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable ADT"; + } + container input { + description + "configure adt data source"; + container mdt { + presence "Indicates a mdt node is configured."; + description + "Sensor group configuration"; + container sensor-groups { + description + "Sensor group configuration"; + list sensor-group { + key "sensor-group-name"; + description + "Sensor Group Id"; + leaf sensor-group-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Sensor Group Id"; + } + } + description + "Sensor Group Id"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-appmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-appmgr-cfg.yang new file mode 100644 index 000000000..46954ce47 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-appmgr-cfg.yang @@ -0,0 +1,209 @@ +module Cisco-IOS-XR-um-appmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-appmgr-cfg"; + prefix um-appmgr-cfg; + + 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 appmgr package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-19 { + description + "Updated the string length, added string constraint for svault"; + semver:module-version "2.0.0"; + } + revision 2021-06-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container appmgr { + description + "appmgr configuration"; + container applications { + description + "Per application configuration"; + list application { + key "application-name"; + description + "Per application configuration"; + leaf application-name { + type string { + length "1..255" { + description + "Application name"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9_.-]+"; + } + description + "Per application configuration"; + } + container activate { + description + "Activate - Install and run an application"; + leaf type { + type enumeration { + enum "docker" { + value 1; + description + "Docker application"; + } + } + mandatory true; + description + "Type of app to configure"; + } + leaf source-name { + type string { + length "1..255" { + description + "Source name"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9_.-]+"; + } + mandatory true; + description + "Source name"; + } + leaf svault { + type string { + length "1..255" { + description + "secure vault profile name"; + } + pattern "[a-zA-Z_][a-zA-Z_0-9:.-]*"; + } + description + "secure vault profile name"; + } + leaf docker-run-opts { + type string { + length "1..1024" { + description + "run options (enclosed in double quotes)"; + } + } + description + "Docker run 'options' argument - multiple options can be specified"; + } + leaf docker-run-cmd { + type string { + length "1..1024" { + description + "command (enclosed in double quotes)"; + } + } + description + "Docker run 'command' argument - command to be executed in container"; + } + } + } + } + container process-scripts { + description + "Process script configuration"; + list process-script { + must "executable or run-args or restart"; + key "process-script-name"; + description + "Process script configuration"; + leaf process-script-name { + type string { + length "1..255" { + description + "Process script name"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9_.-]+"; + } + description + "Process script configuration"; + } + leaf executable { + type string { + length "1..255" { + description + "Name of the executable"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9_.-]+"; + } + description + "Executable filename"; + } + leaf run-args { + type string { + length "1..800" { + description + "Arguments string"; + } + } + description + "Run arguments"; + } + leaf restart { + type enumeration { + enum "never" { + value 1; + description + "Never restart automatically"; + } + enum "on-failure" { + value 2; + description + "Restart on failure automatically"; + } + enum "always" { + value 3; + description + "Always restart automatically"; + } + enum "unless-stopped" { + value 4; + description + "Restart automatically unless stopped"; + } + enum "unless-errored" { + value 5; + description + "Restart automatically unless errored"; + } + } + description + "Restart policy for the application"; + } + leaf max-retries { + when "../restart = 'on-failure'"; + type uint32 { + range "1..10" { + description + "Max restart retries"; + } + } + description + "Maximum retry attempts; always restarted by default"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-arp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-arp-cfg.yang new file mode 100644 index 000000000..3d05534c9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-arp-cfg.yang @@ -0,0 +1,296 @@ +module Cisco-IOS-XR-um-arp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-arp-cfg"; + prefix um-arp-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + + 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 arp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019, 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-10-10 { + description + "Moved trap augments into Cisco-IOS-XR-um-traps-mpls-ldp-cfg."; + semver:module-version "3.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-04 { + description + "Initial version"; + } + + container arp { + description + "Global ARP configuration"; + container entries { + description + "ARP entries"; + list entry { + key "ip-address"; + description + "configure ARP entry"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP Address"; + } + leaf mac-address { + type yang:mac-address; + mandatory true; + description + "MAC Address"; + } + leaf encapsulation-type { + type enumeration { + enum "ARPA" { + value 1; + description + "Encapsulation type ARPA"; + } + enum "SRP" { + value 4; + description + "Encapsulation type SRP"; + } + enum "SRPA" { + value 5; + description + "Encapsulation type SRPA"; + } + enum "SRPB" { + value 6; + description + "Encapsulation type SRPB"; + } + } + mandatory true; + description + "configure this node"; + } + container alias { + presence "Indicates a alias node is configured."; + description + "Configure an Alias ARP entry"; + } + leaf interface { + type xr:Interface-name; + description + "Specify a Interface"; + } + } + } + container vrfs { + description + "Specify a non-default VRF"; + list vrf { + must "entries/entry"; + key "vrf-name"; + description + "Specify a non-default VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "VRF name"; + } + } + description + "Specify a non-default VRF"; + } + container entries { + description + "ARP entries"; + list entry { + key "ip-address"; + description + "configure this node"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP Address"; + } + leaf mac-address { + type yang:mac-address; + mandatory true; + description + "MAC Address"; + } + leaf encapsulation-type { + type enumeration { + enum "ARPA" { + value 1; + description + "Encapsulation type ARPA"; + } + enum "SRP" { + value 4; + description + "Encapsulation type SRP"; + } + enum "SRPA" { + value 5; + description + "Encapsulation type SRPA"; + } + enum "SRPB" { + value 6; + description + "Encapsulation type SRPB"; + } + } + mandatory true; + description + "configure this node"; + } + container alias { + presence "Indicates a alias node is configured."; + description + "Configure an Alias ARP entry"; + } + leaf interface { + type xr:Interface-name; + description + "Specify a Interface"; + } + } + } + } + } + leaf inner-cos { + type uint32 { + range "0..7" { + description + "inner cos value"; + } + } + description + "Configure inner cos values for arp packets"; + } + leaf outer-cos { + type uint32 { + range "0..7" { + description + "Outer cos value"; + } + } + description + "Configure outer cos values for arp packets"; + } + leaf max-entries { + type uint32 { + range "1..256000" { + description + "entries"; + } + } + description + "Configure maximum number of safe ARP entries per line card"; + } + container redundancy { + presence "Indicates a redundancy node is configured."; + description + "Configure parameter for ARP Geo redundancy"; + container groups { + description + "Redundancy Group configuration"; + list group { + key "group-id"; + description + "Redundancy Group configuration"; + leaf group-id { + type uint32 { + range "1..32" { + description + "Group ID"; + } + } + description + "Redundancy Group configuration"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface for Redundancy Peer Communication"; + } + container peers { + description + "Peer Address for this Group"; + list peer { + key "peer-address"; + description + "Peer Address for this Group"; + leaf peer-address { + type inet:ipv4-address-no-zone; + description + "Peer Address for this Group"; + } + } + } + container interface-list { + presence "Indicates a interface-list node is configured."; + description + "List of Interfaces for this Group"; + container interfaces { + description + "Interface for this Group"; + list interface { + key "interface-name"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface for this Group"; + } + leaf id { + type uint32 { + range "1..65535" { + description + "ID for the interface to be mapped on to peer"; + } + } + mandatory true; + description + "Map Identifier"; + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg.yang new file mode 100644 index 000000000..5bff71bfd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg.yang @@ -0,0 +1,782 @@ +module Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-cnbng-nal-cfg"; + prefix um-asr9k-cnbng-nal-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + import tailf-common { + prefix tailf; + } + 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 asr9k-cnbng-nal package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-27 { + description + "Added missing config CLI's + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-05-26 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container ipsubscriber { + when "../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'Bundle-Ether')] or ../a1:interface-name[starts-with(text(),'PW-Ether')]" { + tailf:dependency "../a1:interface-name"; + } + presence "Indicates a ipsubscriber node is configured."; + description + "Configure IP Subscriber settings"; + container ipv4 { + description + "Enable IPv4 Subscriber"; + container l2-connected { + presence "Indicates a l2-connected node is configured."; + description + "Enable L2-connected IP Subscriber"; + container initiator { + description + "Configure IP Subscriber initiator"; + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "Configure DHCP as first-sign-of-life protocol for IPv4 subscriber"; + } + } + } + } + container ipv6 { + description + "Enable IPv6 Subscriber"; + container l2-connected { + presence "Indicates a l2-connected node is configured."; + description + "Enable L2-connected IP Subscriber"; + container initiator { + description + "Configure IP Subscriber initiator"; + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "Configure DHCP as first-sign-of-life protocol for IPv6 subscriber"; + } + } + } + } + } + container pppoe { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'CPRIoE')] or ../a1:interface-name[starts-with(text(),'Bundle-Ether')] or ../a1:interface-name[starts-with(text(),'PW-Ether')]" { + tailf:dependency "../a1:interface-name"; + } + description + "PPP over Ethernet"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable PPPoE on the interface"; + leaf bba-group { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "The bba-group to use"; + } + } + description + "Specify the bba-group to use with the interface"; + } + } + } + container lns { + when "../a1:interface-name[starts-with(text(),'Bundle-Ether')]" { + tailf:dependency "../a1:interface-name"; + } + description + "lns enable"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable LNS on the interface"; + } + } + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container cnbng-nal { + presence "Indicates a cnbng-nal node is configured."; + description + "Network Adaption Layer configuration"; + container enable-test-server { + presence "Indicates a enable-test-server node is configured."; + description + "Enable test server for cnBNG NAL"; + } + leaf max-create-in-progress { + type uint32 { + range "0..4294967295" { + description + "Value"; + } + } + description + "Set max create in progress allowed"; + } + leaf max-update-in-progress { + type uint32 { + range "0..4294967295" { + description + "Value"; + } + } + description + "Set max update in progress allowed"; + } + leaf max-delete-in-progress { + type uint32 { + range "0..4294967295" { + description + "Value"; + } + } + description + "Set max delete in progress allowed"; + } + leaf delete-batch-size { + type uint32 { + range "0..4294967295" { + description + "Value"; + } + } + description + "Set batch size of bulk delete"; + } + leaf delete-batch-timer { + type uint32 { + range "0..4294967295" { + description + "Value in ms"; + } + } + description + "Set batch timer of bulk delete (ms)"; + } + container groups { + description + "CnBNG NAL Group configuration"; + list group { + key "group-id"; + description + "CnBNG NAL Group configuration"; + leaf group-id { + type uint32 { + range "1..4000" { + description + "Group ID"; + } + } + description + "CnBNG NAL Group configuration"; + } + leaf description { + type string { + length "1..256" { + description + "Group Config User-description"; + } + } + description + "Description for this Group"; + } + container interfaces { + description + "Interface for this Group"; + list interface { + key "interface-name id"; + description + "Interface for this Group"; + leaf interface-name { + type xr:Interface-name; + description + "Interface for this Group"; + } + leaf id { + type uint32 { + range "1..65535" { + description + "ID for the interface to be mapped on to subordinate"; + } + } + description + "Map Identifier"; + } + leaf virtual-mac { + type yang:mac-address; + mandatory true; + description + "Virtual MAC Address for this Group"; + } + } + } + leaf track { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Tracking Object Name"; + } + } + description + "Tracking Object for this Group"; + } + } + } + leaf description { + type string { + length "1..256" { + description + "Config User-description"; + } + } + description + "Description of the cnBNG NAL local-plane"; + } + leaf hostidentifier { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "NAL Host-name"; + } + pattern "[a-zA-Z][-_.a-z0-9A-Z]*"; + } + description + "NAL Host Identifier"; + } + container route-summary { + description + "NAL Route-summary tag value"; + leaf tag { + type uint32 { + range "1..4294967295" { + description + "Tag value"; + } + } + description + "Set a tag value for the route"; + } + } + container up-server { + description + "NAL control-plane up-server connection configs"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../interface)"; + description + "IPv4 address of UP's server"; + } + leaf interface { + type xr:Interface-name { + pattern "Loopback.*"; + } + must "not(../ipv4)"; + description + "IPv4 address of UP's server"; + } + leaf gtp-port { + type uint32 { + range "15002..15051" { + description + "UP-server source GTP port-number"; + } + } + must "(../ipv4 or ../interface)"; + description + "user-plane's GTP port-number"; + } + leaf pfcp-port { + type uint32 { + range "15002..15051" { + description + "UP-server source PFCP port-number"; + } + } + must "(../ipv4 or ../interface)"; + description + "user-plane's PFCP port-number"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "UP-server default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "UP server's VRF Name"; + } + } + } + must "(../ipv4 or ../interface)"; + description + "UP server's VRF Name"; + } + } + container cp-server { + description + "NAL control-plane server connection configs"; + container primary { + description + "NAL's control-plane primary-server configs"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of CP's primary-server"; + } + } + } + container disconnect-history { + description + "Disconnect history related config items"; + container file-logging-enable { + presence "Indicates a file-logging-enable node is configured."; + description + "Enable file logging"; + } + } + container secondary-address-update { + description + "Secondary address update during route provision"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable secondary address update"; + } + } + container cp-association { + description + "CP association"; + leaf retry-count { + type uint32 { + range "5..20" { + description + "Retry count"; + } + } + description + "Retry count"; + } + } + container spa-req-resp-history { + description + "SPA request response history related config items"; + container file-logging-enable { + presence "Indicates a file-logging-enable node is configured."; + description + "Enable file logging"; + } + } + container ipoe { + description + "ipoe related config"; + leaf fsol-flow-control { + type uint32 { + range "50..400" { + description + "cps"; + } + } + description + "ipoe fsol flow control"; + } + } + container pppoe { + description + "pppoe related config"; + leaf fsol-flow-control { + type uint32 { + range "50..400" { + description + "cps"; + } + } + description + "pppoe fsol flow control"; + } + } + container up-cp-notification { + description + "up cp notification related config"; + leaf flow-control { + type uint32 { + range "20..400" { + description + "limit"; + } + } + description + "up cp notification flow control"; + } + } + container trace { + description + "NAL trace level config"; + container level { + description + "Set a level for the trace"; + container critical { + must + "not(../high or ../default + or ../low or ../verbose + or ../all)"; + presence "Indicates a critical node is configured."; + description + "NAL trace level critical"; + } + container high { + must + "not(../critical or ../default + or ../low or ../verbose + or ../all)"; + presence "Indicates a high node is configured."; + description + "NAL trace level high"; + } + container default { + must + "not(../critical or ../high + or ../low or ../verbose + or ../all)"; + presence "Indicates a default node is configured."; + description + "NAL trace level default (medium)"; + } + container low { + must + "not(../critical or ../high + or ../default or ../verbose + or ../all)"; + presence "Indicates a low node is configured."; + description + "NAL trace level low"; + } + container verbose { + must + "not(../critical or ../high + or ../default or ../low + or ../all)"; + presence "Indicates a verbose node is configured."; + description + "NAL trace level verbose"; + } + container all { + must + "not(../critical or ../high + or ../default or ../low + or ../verbose)"; + presence "Indicates a all node is configured."; + description + "NAL trace level all"; + } + } + } + container disable-secondary-address-notification { + presence "Indicates a disable-secondary-address-notification node is configured."; + description + "Disable secondary address notifiaction for the subscriber interfaces"; + } + container up-cp-stats { + description + "up cp stats related config"; + leaf flow-control { + type uint32 { + range "20..500" { + description + "limit"; + } + } + description + "up stats flow control"; + } + } + container enable-tr459-mode { + presence "Indicates a enable-tr459-mode node is configured."; + description + "Enable user-plane mode TR459"; + } + container l2tp { + description + "l2tp config"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable l2tp"; + } + } + leaf l2tp-tcp-mss-adjust { + type uint32 { + range "1280..1460" { + description + "Tcp mss adjust range"; + } + } + description + "l2tp tcp-mss-adjust config"; + } + container auto-loopback { + description + "NAL Auto-Loopback configurations"; + container vrf { + description + "NAL Auto-loopback VRF info"; + list vrf { + key "vrf-name"; + description + "NAL Auto-Loopback vrf"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF Name"; + } + } + } + description + "NAL Auto-Loopback vrf name"; + } + container interfaces { + description + "NAL Auto-Loopback interface"; + list interface { + key "interface-name"; + description + "NAL Auto-Loopback interface"; + leaf interface-name { + type xr:Interface-name { + pattern "Loopback.*"; + } + description + "NAL Auto-Loopback interface"; + } + leaf primary-address { + type inet:ipv4-address-no-zone; + description + "NAL Auto-Loopback interface Primary Address"; + } + } + } + } + } + } + container subscriber-redundancy { + presence "Indicates a subscriber-redundancy node is configured."; + description + "Subscriber redundancy configuration"; + leaf damping-timer-val { + type uint32 { + range "60..600" { + description + "Timer value (in secs)"; + } + } + description + "SRG damping timer interval"; + } + leaf stats-request-rate { + type uint32 { + range "10..8000" { + description + "rate of stats request(Restricted to development)"; + } + } + description + "rate of stats request on switchover(Restricted to development)"; + } + leaf stats-request-rate-timeout { + type uint32 { + range "10..8000" { + description + "Timeout rate of stats request(Restricted to development)"; + } + } + description + "rate of stats request on switchover(Restricted to development)"; + } + leaf stats-request-svm-timeout { + type uint32 { + range "10..8000" { + description + "SVM timeout of stats request(Restricted to development)"; + } + } + description + "rate of stats request on switchover(Restricted to development)"; + } + container groups { + description + "SRG group configuration"; + list group { + key "group-name"; + description + "SRG group configuration"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "SRG Group ID"; + } + } + description + "SRG group configuration"; + } + leaf virtual-mac { + type yang:mac-address; + mandatory true; + description + "Virtual MAC address for this SRG Group"; + } + leaf core-tracking { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Tracking Object Name"; + } + } + description + "Core Tracking Object for this SRG Group"; + } + leaf access-tracking { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Tracking Object Name"; + } + } + description + "Access Tracking Object for this SRG Group"; + } + leaf damping-timer-val { + type uint32 { + range "60..600" { + description + "Damping timer value (in secs)"; + } + } + description + "Damping timer value for this SRG Group"; + } + container fast-switchover-disable { + presence "Indicates a fast-switchover-disable node is configured."; + description + "Disable fast switchover for this SRG group"; + } + container access-interface-list { + presence "Indicates a access-interface-list node is configured."; + description + "Access interface list for this SRG Group"; + container interfaces { + description + "Access interface"; + list interface { + key "interface-name"; + description + "Access interface"; + leaf interface-name { + type xr:Interface-name; + description + "Access interface"; + } + } + } + } + leaf route-tag { + type uint32 { + range "1..4294967295" { + description + "Tag value to be applied for subnet routes"; + } + } + description + "Route tag for subnets belonging to this group"; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-fabric-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-fabric-cfg.yang new file mode 100644 index 000000000..90a5a8cae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-fabric-cfg.yang @@ -0,0 +1,103 @@ +module Cisco-IOS-XR-um-asr9k-fabric-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-fabric-cfg"; + prefix um-asr9k-fabric-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 asr9k-fabric package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-15 { + description + "Added fabmgr fc_isolation get-config support. + 2022-10-13 + Added fia soft-error-monitor get-config support. + 2022-03-25 + Removed container admin.Removed container highbandwidth from container mode."; + semver:module-version "2.0.0"; + } + revision 2020-06-25 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container fabric { + description + "Configure Fabric"; + container enable { + description + "Enable fabric operation mode"; + container mode { + description + "Choose mode"; + container a99-highbandwidth { + presence "Indicates a a99-highbandwidth node is configured."; + description + "A99 High bandwidth cards only"; + } + } + } + container fabmgr { + description + "Configure fabricmgr Settings"; + container fc-isolation { + presence "Indicates a fc-isolation node is configured."; + description + "Isolate FC card if system has N+1 redundancy."; + } + } + container fia { + description + "Configure FIA Settings"; + container locations { + description + "Location"; + list location { + key "location-name"; + description + "Location"; + leaf location-name { + type xr:Node-id; + description + "Location"; + } + leaf soft-error-monitor { + type uint32 { + range "1..2" { + description + "Set 1 to shut ports, 2 to reload LC"; + } + } + description + "Monitor soft errors on FIA and south bound interface of FIA"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg.yang new file mode 100644 index 000000000..3e3f62763 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg.yang @@ -0,0 +1,82 @@ +module Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-hw-module-bfd-hw-offload-cfg"; + prefix um-asr9k-hw-module-bfd-hw-offload-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 asr9k-hw-module-bfd-hw-offload package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-09-15 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container bfd-hw-offload { + description + "Configure BFD hw offload parameters"; + container enable { + description + "Enable BFD hw offload mode"; + list node { + key "node-name"; + description + "Node id to filter out trient card"; + leaf node-name { + type xr:Node-id; + description + "Node Name"; + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg.yang new file mode 100644 index 000000000..f0658e9bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg.yang @@ -0,0 +1,125 @@ +module Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-hw-module-fia-cfg"; + prefix um-asr9k-hw-module-fia-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 asr9k-hw-module-fia package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-09-15 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container fia-vqi-shaper { + description + "Enhance VQI shaper limit for Skytrain"; + container enhance { + presence "Indicates a enhance node is configured."; + description + "Operate on a higher VQI shaper limit"; + } + } + container fia-buffer-profile { + description + "FIA interface buffer profile selection"; + container extra-large { + presence "Indicates a extra-large node is configured."; + description + "Setup an extra-large FIA buffer profile"; + } + } + container port-queue-remap { + description + "Remap front panel port to fabric queue"; + container ports { + description + "Front panel port number"; + list port { + key "port-number"; + description + "Front panel port number"; + leaf port-number { + type uint32 { + range "10|11|22|23|34|35|46|47" { + description + "port number <10,11,22,23 34,35,46,47>"; + } + } + description + "Front panel port number"; + } + leaf queue { + type uint32 { + range "0..19" { + description + "queue number <0-19>"; + } + } + description + "Fabric queue number"; + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } + container hw-module { + description + "Configure h/w module"; + container fia-intf-policer { + description + "FIA interface rate-limiter on 7-Fabric LC"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable FIA interface policer "; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg.yang new file mode 100644 index 000000000..b589d68c6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg.yang @@ -0,0 +1,50 @@ +module Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-hw-module-mgid-mcast-scale-cfg"; + prefix um-asr9k-hw-module-mgid-mcast-scale-cfg; + + 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 asr9k-hw-module-mgid-mcast-scale package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container mgid-mcast-scale { + description + "Mgid max mcast scale"; + container enable { + presence "Indicates a enable node is configured."; + description + "enable mgid max mcast scale "; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-port-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-port-cfg.yang new file mode 100644 index 000000000..5c6c785b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-port-cfg.yang @@ -0,0 +1,462 @@ +module Cisco-IOS-XR-um-asr9k-hw-module-port-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-hw-module-port-cfg"; + prefix um-asr9k-hw-module-port-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 asr9k-hw-module-port package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-03-09 { + description + "Added missing statement for 2x100, 3x100, 4x100 + 2022-07-11 + Added missing description statement to nodes + 2022-03-10 + Updated the must statement under list port"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container breakout { + description + "breakout interface types"; + container ports { + description + "Optics port configuration"; + list port { + must + "forty-gig-e-x2 or forty-gig-e-x1 + or ten-gig-e-x4 or twenty-five-gig-e-x4 + or four-hundred-gig-e-x1 or fifty-gig-e-x8 + or hundred-gig-e-x4 or hundred-gig-e-x2 + or hundred-gig-e-x3 or hundred-gig-e-x1 + or ten-gig-e-x10"; + key "port-number"; + description + "Optics port configuration"; + leaf port-number { + type uint32 { + range "0..21" { + description + "Optics port number"; + } + } + description + "Optics port configuration"; + } + container ten-gig-e-x10 { + must + "not(../forty-gig-e-x2 or ../forty-gig-e-x1 + or ../ten-gig-e-x4 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a ten-gig-e-x10 node is configured."; + description + "10 TenGigE interfaces"; + } + container forty-gig-e-x2 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x1 + or ../ten-gig-e-x4 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a forty-gig-e-x2 node is configured."; + description + "2 FortyGigE interfaces"; + } + container forty-gig-e-x1 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../ten-gig-e-x4 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a forty-gig-e-x1 node is configured."; + description + "1 FortyGigE interface"; + } + container ten-gig-e-x4 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a ten-gig-e-x4 node is configured."; + description + "4 TenGigE interface"; + } + container twenty-five-gig-e-x4 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a twenty-five-gig-e-x4 node is configured."; + description + "4 TwentyFiveGigE interface"; + } + container four-hundred-gig-e-x1 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a four-hundred-gig-e-x1 node is configured."; + description + "1 FourHundredGigE interface"; + } + container fifty-gig-e-x8 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a fifty-gig-e-x8 node is configured."; + description + "8 FiftyGigE interface"; + } + container hundred-gig-e-x4 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a hundred-gig-e-x4 node is configured."; + description + "4 HundredGigE interface"; + } + container hundred-gig-e-x2 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x4 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a hundred-gig-e-x2 node is configured."; + description + "2 HundredGigE interface"; + } + container hundred-gig-e-x3 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x4 + or ../hundred-gig-e-x2 or ../hundred-gig-e-x1)"; + presence "Indicates a hundred-gig-e-x3 node is configured."; + description + "3 HundredGigE interface"; + } + container hundred-gig-e-x1 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x4 + or ../hundred-gig-e-x2 or ../hundred-gig-e-x3)"; + presence "Indicates a hundred-gig-e-x1 node is configured."; + description + "1 HundredGigE interface"; + } + } + } + container bays { + description + "Breakout/port-mode bay configuration"; + list bay { + key "bay-number port-number"; + description + "Breakout/port-mode bay configuration"; + leaf bay-number { + type uint32 { + range "0..1" { + description + "Breakout/port-mode bay number"; + } + } + description + "Breakout/port-mode bay configuration"; + } + leaf port-number { + type uint32 { + range "0..19" { + description + "Breakout/port-mode port number"; + } + } + description + "Breakout/port-mode port configuration"; + } + container ten-gig-e-x10 { + must + "not(../forty-gig-e-x2 or ../forty-gig-e-x1 + or ../ten-gig-e-x4 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a ten-gig-e-x10 node is configured."; + description + "10 TenGigE interfaces"; + } + container forty-gig-e-x2 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x1 + or ../ten-gig-e-x4 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a forty-gig-e-x2 node is configured."; + description + "2 FortyGigE interfaces"; + } + container forty-gig-e-x1 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../ten-gig-e-x4 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a forty-gig-e-x1 node is configured."; + description + "1 FortyGigE interface"; + } + container ten-gig-e-x4 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../twenty-five-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a ten-gig-e-x4 node is configured."; + description + "4 TenGigE interface"; + } + container twenty-five-gig-e-x4 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../four-hundred-gig-e-x1 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a twenty-five-gig-e-x4 node is configured."; + description + "4 TwentyFiveGigE interface"; + } + container four-hundred-gig-e-x1 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../fifty-gig-e-x8 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a four-hundred-gig-e-x1 node is configured."; + description + "1 FourHundredGigE interface"; + } + container fifty-gig-e-x8 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../hundred-gig-e-x4 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a fifty-gig-e-x8 node is configured."; + description + "8 FiftyGigE interface"; + } + container hundred-gig-e-x1 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x4 + or ../hundred-gig-e-x2 or ../hundred-gig-e-x3)"; + presence "Indicates a hundred-gig-e-x1 node is configured."; + description + "1 HundredGigE interface"; + } + container hundred-gig-e-x2 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x4 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a hundred-gig-e-x2 node is configured."; + description + "2 HundredGigE interface"; + } + container hundred-gig-e-x3 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x4 + or ../hundred-gig-e-x2 or ../hundred-gig-e-x1)"; + presence "Indicates a hundred-gig-e-x3 node is configured."; + description + "3 HundredGigE interface"; + } + container hundred-gig-e-x4 { + must + "not(../ten-gig-e-x10 or ../forty-gig-e-x2 + or ../forty-gig-e-x1 or ../ten-gig-e-x4 + or ../twenty-five-gig-e-x4 or ../four-hundred-gig-e-x1 + or ../fifty-gig-e-x8 or ../hundred-gig-e-x2 + or ../hundred-gig-e-x3 or ../hundred-gig-e-x1)"; + presence "Indicates a hundred-gig-e-x4 node is configured."; + description + "4 HundredGigE interface"; + } + } + } + } + container bay-port-mode { + description + "Configure port mode of operation for EP"; + container bays { + description + "Breakout/port-mode bay configuration"; + list bay { + must "hundred-gig-e-16qam-x2 or hundred-gig-e-8qam-x2"; + key "bay-number port-number"; + description + "Breakout/port-mode bay configuration"; + leaf bay-number { + type uint32 { + range "0..1" { + description + "Breakout/port-mode bay number"; + } + } + description + "Breakout/port-mode bay configuration"; + } + leaf port-number { + type uint32 { + range "0..19" { + description + "Breakout/port-mode port number"; + } + } + description + "Breakout/port-mode port configuration"; + } + container hundred-gig-e-16qam-x2 { + must "not(../hundred-gig-e-8qam-x2)"; + presence "Indicates a hundred-gig-e-16qam-x2 node is configured."; + description + "Configure 200G 16QAM port mode for EP"; + } + container hundred-gig-e-8qam-x2 { + must "not(../hundred-gig-e-16qam-x2)"; + presence "Indicates a hundred-gig-e-8qam-x2 node is configured."; + description + "Configure 200G 8QAM port mode for EP"; + } + } + } + } + leaf port-mode { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Input a string with number of characters between 4 and 64"; + } + pattern "[a-zA-Z0-9_.{}, ]+"; + } + description + "RXS: Configure R(consecutive N number of same speed ports)xS(speed 1 for 1G or 10 for 10G):48x10"; + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } + container hw-module { + description + "Configure h/w module"; + container port-control { + description + "Conifugre port-control of linecard"; + container license { + description + "Apply license for full bandwidth"; + list location { + key "location-name"; + description + "Location of the node"; + leaf location-name { + type xr:Node-id; + description + "Fully qualified location specification"; + } + } + } + container non-combo-mode { + description + "Configure non-combo mode of operation"; + list location { + key "location-name"; + description + "Location of the node"; + leaf location-name { + type xr:Node-id; + description + "Fully qualified location specification"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg.yang new file mode 100644 index 000000000..f6a543918 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg.yang @@ -0,0 +1,1164 @@ +module Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-hw-module-prm-cfg"; + prefix um-asr9k-hw-module-prm-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 asr9k-hw-module-prm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-14 { + description + "Updating tcam container for bug CSCwd32382 + 2022-08-17 + Added IP-PREC and MPLS-EXP nodes + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-06-11 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container loopback-shape { + description + "Configure loopback shaper"; + list np { + key "np-id app-set"; + description + "NP to configure"; + leaf np-id { + type uint32 { + range "0..7" { + description + "Number between 0-7"; + } + } + description + "NP to configure"; + } + leaf app-set { + type uint32 { + range "0..2" { + description + "App-set 0: Multicast, SPAN & Netflow. App-set 1: ABF, GRE & LI. App-set 2: IRB"; + } + } + description + "Set of Loopback apps to configure"; + } + leaf rate { + type uint32 { + range "160..10000000" { + description + "Number between 160-10000000"; + } + } + mandatory true; + description + "Shape rate"; + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + container hw-module { + description + "Configure h/w module"; + container early-fast-discard { + description + "Configure Early Fast Discard"; + container locations { + description + "Configure line card location"; + list location { + key "location-name"; + description + "Configure line card location"; + leaf location-name { + type xr:Node-id; + description + "Configure line card location"; + } + leaf mode { + type enumeration { + enum "only-outer-encap" { + value 0; + description + "Only check out outer encap"; + } + enum "include-inner-encap" { + value 1; + description + "Check outer and inner encap"; + } + } + description + "Configure mode (default = only-outer-encap)"; + } + container high-priority-list { + description + "Configure COS mapping to high priority"; + container vlan-cos { + description + "Select VLAN COS"; + container zero { + presence "Indicates a zero node is configured."; + description + "0"; + } + container one { + presence "Indicates a one node is configured."; + description + "1"; + } + container two { + presence "Indicates a two node is configured."; + description + "2"; + } + container three { + presence "Indicates a three node is configured."; + description + "3"; + } + container four { + presence "Indicates a four node is configured."; + description + "4"; + } + container five { + presence "Indicates a five node is configured."; + description + "5"; + } + container six { + presence "Indicates a six node is configured."; + description + "6"; + } + container seven { + presence "Indicates a seven node is configured."; + description + "7"; + } + } + container ip-prec { + description + "Select IP PREC"; + container zero { + presence "Indicates a zero node is configured."; + description + "0"; + } + container one { + presence "Indicates a one node is configured."; + description + "1"; + } + container two { + presence "Indicates a two node is configured."; + description + "2"; + } + container three { + presence "Indicates a three node is configured."; + description + "3"; + } + container four { + presence "Indicates a four node is configured."; + description + "4"; + } + container five { + presence "Indicates a five node is configured."; + description + "5"; + } + container six { + presence "Indicates a six node is configured."; + description + "6"; + } + container seven { + presence "Indicates a seven node is configured."; + description + "7"; + } + } + container mpls-exp { + description + "Select MPLS EXP"; + container zero { + presence "Indicates a zero node is configured."; + description + "0"; + } + container one { + presence "Indicates a one node is configured."; + description + "1"; + } + container two { + presence "Indicates a two node is configured."; + description + "2"; + } + container three { + presence "Indicates a three node is configured."; + description + "3"; + } + container four { + presence "Indicates a four node is configured."; + description + "4"; + } + container five { + presence "Indicates a five node is configured."; + description + "5"; + } + container six { + presence "Indicates a six node is configured."; + description + "6"; + } + container seven { + presence "Indicates a seven node is configured."; + description + "7"; + } + } + } + leaf vlan-cos { + type uint32 { + range "0..7" { + description + "Specify VLAN COS threshold"; + } + } + description + "Select a VLAN COS threshold "; + } + leaf vlan-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../vlan-cos"; + description + "Select VLAN operation (default = greater-than-or-equal)"; + } + leaf ip-prec { + type uint32 { + range "0..7" { + description + "Specify IP TOS Precedence threshold"; + } + } + description + "Select an IP TOS Precedence threshold "; + } + leaf ip-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../ip-prec"; + description + "Select IP operation (default = greater-than-or-equal)"; + } + leaf mpls-exp { + type uint32 { + range "0..7" { + description + "Specify MPLS EXP threshold"; + } + } + description + "Select an MPLS EXP threshold "; + } + leaf mpls-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../mpls-exp"; + description + "Select MPLS operation (default = greater-than-or-equal)"; + } + container burst-absorption { + presence "Indicates a burst-absorption node is configured."; + description + "Enable burst absorption mode."; + } + } + } + container all { + description + "All locations"; + leaf mode { + type enumeration { + enum "only-outer-encap" { + value 0; + description + "Only check out outer encap"; + } + enum "include-inner-encap" { + value 1; + description + "Check outer and inner encap"; + } + } + description + "Configure mode (default = only-outer-encap)"; + } + container high-priority-list { + description + "Configure COS mapping to high priority"; + container vlan-cos { + description + "Select VLAN COS"; + container zero { + presence "Indicates a zero node is configured."; + description + "0"; + } + container one { + presence "Indicates a one node is configured."; + description + "1"; + } + container two { + presence "Indicates a two node is configured."; + description + "2"; + } + container three { + presence "Indicates a three node is configured."; + description + "3"; + } + container four { + presence "Indicates a four node is configured."; + description + "4"; + } + container five { + presence "Indicates a five node is configured."; + description + "5"; + } + container six { + presence "Indicates a six node is configured."; + description + "6"; + } + container seven { + presence "Indicates a seven node is configured."; + description + "7"; + } + } + container ip-prec { + description + "Select IP PREC"; + container zero { + presence "Indicates a zero node is configured."; + description + "0"; + } + container one { + presence "Indicates a one node is configured."; + description + "1"; + } + container two { + presence "Indicates a two node is configured."; + description + "2"; + } + container three { + presence "Indicates a three node is configured."; + description + "3"; + } + container four { + presence "Indicates a four node is configured."; + description + "4"; + } + container five { + presence "Indicates a five node is configured."; + description + "5"; + } + container six { + presence "Indicates a six node is configured."; + description + "6"; + } + container seven { + presence "Indicates a seven node is configured."; + description + "7"; + } + } + container mpls-exp { + description + "Select IP PREC"; + container zero { + presence "Indicates a zero node is configured."; + description + "0"; + } + container one { + presence "Indicates a one node is configured."; + description + "1"; + } + container two { + presence "Indicates a two node is configured."; + description + "2"; + } + container three { + presence "Indicates a three node is configured."; + description + "3"; + } + container four { + presence "Indicates a four node is configured."; + description + "4"; + } + container five { + presence "Indicates a five node is configured."; + description + "5"; + } + container six { + presence "Indicates a six node is configured."; + description + "6"; + } + container seven { + presence "Indicates a seven node is configured."; + description + "7"; + } + } + } + leaf vlan-cos { + type uint32 { + range "0..7" { + description + "Specify VLAN COS threshold"; + } + } + description + "Select a VLAN COS threshold"; + } + leaf vlan-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../vlan-cos"; + description + "Select VLAN operation (default = greater-than-or-equal)"; + } + leaf ip-prec { + type uint32 { + range "0..7" { + description + "Specify IP TOS Precedence threshold"; + } + } + description + "Select an IP TOS Precedence threshold "; + } + leaf ip-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../ip-prec"; + description + "Select IP operation (default = greater-than-or-equal)"; + } + leaf mpls-exp { + type uint32 { + range "0..7" { + description + "Specify MPLS EXP threshold"; + } + } + description + "Select an MPLS EXP threshold"; + } + leaf mpls-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../mpls-exp"; + description + "Select MPLS operation (default = greater-than-or-equal)"; + } + container burst-absorption { + presence "Indicates a burst-absorption node is configured."; + description + "Enable burst absorption mode."; + } + } + } + container qos-mode { + description + "Configure qos mode in HW Module port(s)"; + container locations { + description + "Configure line card location"; + list location { + key "location-name"; + description + "Configure line card location"; + leaf location-name { + type xr:Node-id; + description + "Configure line card location"; + } + container qos-child-shaping-disabled { + presence "Indicates a qos-child-shaping-disabled node is configured."; + description + "Configure QoS mode child level / flat policy shaping disabled on all the line card interfaces"; + } + container lowburst-enabled { + presence "Indicates a lowburst-enabled node is configured."; + description + "Configure lowburst mode"; + } + container pwhe-aggregate-shaper { + description + "Configure pseudo wire headend interface qos parameters"; + container sub-interface { + description + "Configure pseudo wire headend sub interface qos mode"; + leaf ingress { + type enumeration { + enum "non-queuing" { + value 1; + description + "coexistence non-queuing"; + } + enum "queuing" { + value 2; + description + "coexistence queuing"; + } + } + description + "ingress direction"; + } + leaf egress { + type enumeration { + enum "non-queuing" { + value 1; + description + "coexistence non-queuing"; + } + enum "queuing" { + value 2; + description + "coexistence queuing"; + } + } + description + "egress direction"; + } + } + } + container port-limit-oversubscribe { + presence "Indicates a port-limit-oversubscribe node is configured."; + description + "Double port buffer limits, oversubscribing buffer memory"; + } + leaf fastq-threshold-increase { + type uint32 { + range "1..100" { + description + "fastq-threshold-increase between 1 to 100 percent"; + } + } + description + "increase fastq threshold value in percent "; + } + leaf low-bandwidth-mode { + type uint32 { + range "8..12" { + description + "low bandwidth weight factor between 8 to 12"; + } + } + description + "low bandwidth weights for low shaper rate less than 31 mbps"; + } + } + } + } + container tcp-mss-adjust { + description + "Configure TCP MSS Adjust for an NP"; + container locations { + description + "Configure line card location"; + list location { + key "location-name"; + description + "Configure line card location"; + leaf location-name { + type xr:Node-id; + description + "Configure line card location"; + } + container nps { + description + "NP to configure"; + list np { + key "np-id"; + description + "NP to configure"; + leaf np-id { + type uint32 { + range "0..7" { + description + "Number between 0-7"; + } + } + description + "NP to configure"; + } + leaf value { + type uint32 { + range "1280..1535" { + description + "TCP MSS Adjust value for all interfaces on this NP"; + } + } + mandatory true; + description + "TCP MSS adjust value"; + } + } + } + } + } + } + container profile { + description + "Configure memory resource profile"; + leaf scale { + type enumeration { + enum "l2" { + value 1; + description + "L2 scale profile"; + } + enum "default" { + value 2; + description + "Default scale profile (L3)"; + } + enum "l3xl" { + value 3; + description + "L3 XL scale profile"; + } + enum "evpn-convergence" { + value 5; + description + "evpn convergence scale profile"; + } + enum "bng-max" { + value 11; + description + "BNG max scale profile"; + } + } + description + "Configure scale profile"; + } + container itcam { + description + "Configure internal tcam partition profile"; + container locations { + description + "All internal TCAM partition provisionable locations"; + list location { + must "internal-itcam or lightspeed"; + key "location-name"; + description + "All internal TCAM partition provisionable locations"; + leaf location-name { + type xr:Node-id; + description + "All internal TCAM partition provisionable locations"; + } + leaf internal-itcam { + type enumeration { + enum "to-default" { + value 0; + description + "Set default internal tcam partitions (L2 1k, V4 24k, V6 1.75k entries): Tomahawk"; + } + enum "to-profile-se1" { + value 1; + description + "Set internal tcam partitions for service edge (L2 4k, V4 15k, V6 3.25k entries): Tomahawk"; + } + } + description + "Configure internal tcam partition profile"; + } + container lightspeed { + presence "Indicates a lightspeed node is configured."; + description + "the 4th generation LC type"; + leaf v4-ing { + type uint32 { + range "1..13" { + description + "Number of TCAM blocks, default 8"; + } + } + mandatory true; + description + "160-ingress region"; + } + leaf v4-egr { + type uint32 { + range "1..13" { + description + "Number of TCAM blocks, default 4"; + } + } + mandatory true; + description + "160-egress region"; + } + leaf v6-ing { + type uint32 { + range "1..13" { + description + "Number of TCAM blocks, default 3"; + } + } + mandatory true; + description + "640-ingress region"; + } + leaf v6-egr { + type uint32 { + range "1..13" { + description + "Number of TCAM blocks, default 1"; + } + } + mandatory true; + description + "640-egress region"; + } + } + } + } + } + } + container flow-qos { + description + "Configure flow-qos feature parameters"; + container locations { + description + "Configure line card location"; + list location { + key "location-name"; + description + "Configure line card location"; + leaf location-name { + type xr:Node-id; + description + "Configure line card location"; + } + leaf max-flow-count { + type uint32 { + range "1..368" { + description + "Number in multiples of 1k (1024) from 1 to 368"; + } + } + mandatory true; + description + "required number of policers for flow-aware qos feature"; + } + } + } + } + container buffer-carve-mode { + description + "Configure buffer-carve-mode feature parameters"; + container locations { + description + "Configure line card location"; + list location { + must "static"; + key "location-name"; + description + "Configure line card location"; + leaf location-name { + type xr:Node-id; + description + "Configure line card location"; + } + container static { + presence "Indicates a static node is configured."; + description + "required to set static buffer carve mode qos feature"; + } + } + } + } + container processor { + description + "Configure PA processor performance"; + container locations { + description + "Configure line card location"; + list location { + key "location-name"; + description + "Configure line card location"; + leaf location-name { + type xr:Node-id; + description + "Configure line card location"; + } + leaf mode { + type enumeration { + enum "mode-default" { + value 0; + description + "Configure processor array processor to default settings"; + } + enum "mode-full" { + value 1; + description + "Configure processor array processor to full settings"; + } + } + mandatory true; + description + "processor mode setting"; + } + } + } + } + container mac-move { + description + "Configure mac-move behavior"; + leaf police-mode { + type enumeration { + enum "off" { + value 0; + description + "Switch off mac-move policing"; + } + enum "on" { + value 1; + description + "Switch on mac-move policing"; + } + } + description + "Control the mode for mac-move"; + } + } + container all { + description + "all line cards"; + container qos-mode { + description + "Configure qos mode in HW Module port(s)"; + container pwhe-aggregate-shaper { + description + "Configure pseudo wire headend interface qos parameters"; + container sub-interface { + description + "Configure pseudo wire headend sub interface qos mode"; + leaf ingress { + type enumeration { + enum "non-queuing" { + value 1; + description + "coexistence non-queuing"; + } + enum "queuing" { + value 2; + description + "coexistence queuing"; + } + } + description + "ingress direction"; + } + leaf egress { + type enumeration { + enum "non-queuing" { + value 1; + description + "coexistence non-queuing"; + } + enum "queuing" { + value 2; + description + "coexistence queuing"; + } + } + description + "egress direction"; + } + } + } + container wred-buffer-mode { + presence "Indicates a wred-buffer-mode node is configured."; + description + "Configure L4 WRED accounting mode to buffer mode"; + } + container per-priority-buffer-limit { + presence "Indicates a per-priority-buffer-limit node is configured."; + description + "set different buffer limit for different priority"; + } + container ingress-queue-enable { + presence "Indicates a ingress-queue-enable node is configured."; + description + "enable ingress queueuing support for MOD-80 4*10G MPA or MOD-400 20*10G MPAMOD-200 8*10G MPA"; + } + container aggregate-bundle-mode { + presence "Indicates a aggregate-bundle-mode node is configured."; + description + "set aggregate bundle mode "; + } + container bundle-agg-policer { + presence "Indicates a bundle-agg-policer node is configured."; + description + "set bundle aggregate policer mode "; + } + } + } + container reset { + description + "Configure reset behavior"; + container threshold { + description + "set the NP hard-reset threshold"; + container five { + description + "5 resets will take next action"; + container reload { + presence "Indicates a reload node is configured."; + description + "reload linecard after retries"; + } + container slice-down { + presence "Indicates a slice-down node is configured."; + description + "bring down the slice after retries"; + } + } + container ten { + description + "10 resets will take next action"; + container reload { + presence "Indicates a reload node is configured."; + description + "reload linecard after retries"; + } + container slice-down { + presence "Indicates a slice-down node is configured."; + description + "bring down the slice after retries"; + } + } + container infinite { + description + "10 resets will take next action"; + container logging { + description + "set logging enable/disable"; + container enable { + presence "Indicates a enable node is configured."; + description + "continue restarting np on fault, and collect data log"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "continue resetting np on fault, disable np datalog collection"; + } + } + } + } + } + } + container tcam { + description + "Configure tcam"; + container locations { + description + "Configure line card location"; + list location { + key "location-name"; + description + "Configure line card location"; + leaf location-name { + type xr:Node-id; + description + "Configure line card location"; + } + leaf partition { + type enumeration { + enum "profile0" { + value 0; + description + "config profile 0"; + } + enum "profile1" { + value 1; + description + "config profile 1"; + } + enum "profile2" { + value 2; + description + "config profile 2"; + } + } + mandatory true; + description + "Configure tcam partition"; + } + } + } + container all { + description + "All locations"; + leaf partition { + type enumeration { + enum "profile0" { + value 0; + description + "config profile 0"; + } + enum "profile1" { + value 1; + description + "config profile 1"; + } + enum "profile2" { + value 2; + description + "config profile 2"; + } + } + description + "Configure tcam partition"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg.yang new file mode 100644 index 000000000..da421867b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-hw-module-slice-configmode-cfg"; + prefix um-asr9k-hw-module-slice-configmode-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 asr9k-hw-module-slice-configmode package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2022-02-03 { + description + "Initial release"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container location { + description + "Configure line card location"; + container slices { + description + "Slice configuration"; + list slice { + key "slice-id"; + description + "Slice configuration"; + leaf slice-id { + type uint32 { + range "0..9" { + description + "slice number"; + } + } + description + "Slice configuration"; + } + leaf config-mode { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Input a string with 4 speeds separated by , Valid speeds are <1x100GE>,<1x40GE>,<4x25GE>,<10x10GE> and <5x1GE_5x10GE>. Ex:1x100GE,4x25GE,10x10GE,10x10GE "; + } + pattern "[a-zA-Z0-9,_ ]+"; + } + description + "Configure interface type combination for all four groups of LC, Valid speeds are <4x25GE>,<1x100GE>,<1x40GE>,<10x10GE> and <5x1GE_5x10GE>"; + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigure nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg.yang new file mode 100644 index 000000000..2ca3e0664 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg.yang @@ -0,0 +1,122 @@ +module Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-hw-module-subslot-cfg"; + prefix um-asr9k-hw-module-subslot-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 asr9k-hw-module-subslot package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container subslots { + description + "Configure subslot h/w module"; + list subslot { + must "shutdown or cardtype or mode"; + key "subslot-name"; + description + "Configure subslot h/w module"; + leaf subslot-name { + type xr:Node-id; + description + "Configure subslot h/w module"; + } + leaf shutdown { + type enumeration { + enum "unpowered" { + value 1; + description + "Keep the shutdown module unpowered"; + } + enum "powered" { + value 2; + description + "Keep the shutdown module powered (default)"; + } + } + description + "Shutdown a subslot h/w module"; + } + leaf cardtype { + type enumeration { + enum "t3" { + value 1; + description + "T3 interface type(default)"; + } + enum "e3" { + value 2; + description + "E3 interface type"; + } + enum "t1" { + value 3; + description + "T1 interface type"; + } + enum "e1" { + value 4; + description + "E1 interface type"; + } + enum "sonet" { + value 5; + description + "Sonet interface type"; + } + enum "sdh" { + value 6; + description + "SDH interface type"; + } + } + description + "Configure the SPA physical interface type"; + } + leaf mode { + type enumeration { + enum "CEM" { + value 1; + description + "Circuit Emulation mode"; + } + } + description + "Configure the SPA mode"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-if-ethernet-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-if-ethernet-cfg.yang new file mode 100644 index 000000000..0561f36a9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-if-ethernet-cfg.yang @@ -0,0 +1,166 @@ +module Cisco-IOS-XR-um-asr9k-if-ethernet-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-if-ethernet-cfg"; + prefix um-asr9k-if-ethernet-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 asr9k-if-ethernet package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container transport-mode { + when "../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Set the transport mode on an interface"; + container wan { + when "../../a1:interface-name[starts-with(text(),'TenGigE')]" { + tailf:dependency "../../a1:interface-name"; + } + must + "not(../rx-only or ../tx-only + or ../signal-degrade)"; + presence "Indicates a wan node is configured."; + description + "10GBASE-W WAN SONET/SDH (9.95328Gb/s)"; + } + container otn { + when "../../a1:interface-name[starts-with(text(),'TenGigE')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "10GE over Optical Transport Network (G.709)"; + container bit-transparent { + description + "10GBASE-R transparently mapped into OTU-2"; + container opu1e { + must "not(../opu2e)"; + presence "Indicates a opu1e node is configured."; + description + "10GBASE-R over OPU1e without fixed stuffing (11.0491Gb/s)"; + } + container opu2e { + must "not(../opu1e)"; + presence "Indicates a opu2e node is configured."; + description + "10GBASE-R over OPU2e with fixed stuffing (11.0957Gb/s)"; + } + } + } + container rx-only { + must + "not(../wan or ../tx-only + or ../signal-degrade)"; + presence "Indicates a rx-only node is configured."; + description + "10GE UDE Mode, Receive Only"; + } + container tx-only { + must + "not(../wan or ../rx-only + or ../signal-degrade)"; + presence "Indicates a tx-only node is configured."; + description + "10GE UDE Mode, Transmit Only"; + } + container signal-degrade { + when "../../a1:interface-name[starts-with(text(),'GigabitEthernet')]" { + tailf:dependency "../../a1:interface-name"; + } + must + "not(../wan or ../rx-only + or ../tx-only)"; + presence "Indicates a signal-degrade node is configured."; + description + "Enable port for signal degrade detection, 1GE Only"; + } + } + container transceiver { + when "../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "transceiver commands"; + container permit { + description + "permit"; + container pid { + description + "Permit pluggable pid (Product ID) all"; + container all { + presence "Indicates a all node is configured."; + description + "all"; + } + } + container type { + description + "Permit pluggable type all"; + container all { + presence "Indicates a all node is configured."; + description + "all"; + } + } + } + } + container small-frame-padding { + presence "Indicates a small-frame-padding node is configured."; + description + "Pad small frames to 68 bytes"; + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg.yang new file mode 100644 index 000000000..8a3c931a9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-asr9k-l2vpn-flood-mode-cfg"; + prefix um-asr9k-l2vpn-flood-mode-cfg; + + import Cisco-IOS-XR-um-l2vpn-cfg { + prefix a1; + } + 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 asr9k-l2vpn-flood-mode package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2021-04-13 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:l2vpn/a1:bridge/a1:groups/a1:group/a1:bridge-domains/a1:bridge-domain" { + description + "This augment extends l2vpn nodes configuration"; + container flood { + description + "Flooding Capability"; + container mode { + description + "Choose Flooding Mode"; + container convergence-optimized { + must "not(../resilience-optimized)"; + presence "Indicates a convergence-optimized node is configured."; + description + "Convergence Optimized Mode"; + } + container resilience-optimized { + must "not(../convergence-optimized)"; + presence "Indicates a resilience-optimized node is configured."; + description + "Resilience Optimized Mode"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-attestation-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-attestation-cfg.yang new file mode 100644 index 000000000..fb2731b83 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-attestation-cfg.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-um-attestation-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-attestation-cfg"; + prefix um-attestation-cfg; + + 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 attestation package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container attestation { + description + "Attestation Agent configuration"; + container runtime-integrity { + description + "IMA related configuration"; + container cache { + description + "IMA cache related configuration"; + container job { + description + "Cache CRON job related configuration"; + leaf interval { + type uint32 { + range "5..1440" { + description + "Time interval in minutes (must be multiple or factor of 60)"; + } + } + description + "Time interval for the CRON job"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable the IMA Cache CRON job"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-auto-ip-ring-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-auto-ip-ring-cfg.yang new file mode 100644 index 000000000..321760d80 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-auto-ip-ring-cfg.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-um-auto-ip-ring-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-auto-ip-ring-cfg"; + prefix um-auto-ip-ring-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 auto-ip-ring package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-02-04 + Model Deprecated"; + semver:module-version "1.1.0"; + } + revision 2020-12-15 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container auto-ip-ring { + presence "Indicates a auto-ip-ring node is configured."; + status deprecated; + description + "Auto-IP-Ring interface configuration commands"; + leaf auto-ip-ring-id { + type uint32 { + range "1..255" { + description + "Ring ID number"; + } + } + mandatory true; + description + "Auto-IP-Ring interface configuration commands"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "auto-ip address"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + container auto-ip-ring { + presence "Indicates a auto-ip-ring node is configured."; + status deprecated; + description + "Enable auto-ip-ring"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-banner-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-banner-cfg.yang new file mode 100644 index 000000000..48adf28e1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-banner-cfg.yang @@ -0,0 +1,2010 @@ +module Cisco-IOS-XR-um-banner-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-banner-cfg"; + prefix um-banner-cfg; + + 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 banner package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-01-10 { + description + "Updated the description for list banner and leaf banner-type under container banners + 2021-12-12 + Removed the string length constraint from leaf line under container banners "; + semver:module-version "1.0.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container locale { + description + "Define the geographical locale"; + leaf language { + type enumeration { + enum "aa" { + value 1; + description + "Afar"; + } + enum "ab" { + value 2; + description + "Abkhazian"; + } + enum "af" { + value 3; + description + "Afrikaans"; + } + enum "am" { + value 4; + description + "Amharic"; + } + enum "ar" { + value 5; + description + "Arabic"; + } + enum "as" { + value 6; + description + "Assamese"; + } + enum "ay" { + value 7; + description + "Aymara"; + } + enum "az" { + value 8; + description + "Azerbaijani"; + } + enum "ba" { + value 9; + description + "Bashkir"; + } + enum "be" { + value 10; + description + "Byelorussian"; + } + enum "bg" { + value 11; + description + "Bulgarian"; + } + enum "bh" { + value 12; + description + "Bihari"; + } + enum "bi" { + value 13; + description + "Bislama"; + } + enum "bn" { + value 14; + description + "Bengali; Bangla"; + } + enum "bo" { + value 15; + description + "Tibetan"; + } + enum "br" { + value 16; + description + "Breton"; + } + enum "ca" { + value 17; + description + "Catalan"; + } + enum "co" { + value 18; + description + "Corsican"; + } + enum "cs" { + value 19; + description + "Czech"; + } + enum "cy" { + value 20; + description + "Welsh"; + } + enum "da" { + value 21; + description + "Danish"; + } + enum "de" { + value 22; + description + "German"; + } + enum "dz" { + value 23; + description + "Bhutani"; + } + enum "el" { + value 24; + description + "Greek"; + } + enum "en" { + value 25; + description + "English"; + } + enum "eo" { + value 26; + description + "Esperanto"; + } + enum "es" { + value 27; + description + "Spanish"; + } + enum "et" { + value 28; + description + "Estonian"; + } + enum "eu" { + value 29; + description + "Basque"; + } + enum "fa" { + value 30; + description + "Persian"; + } + enum "fi" { + value 31; + description + "Finnish"; + } + enum "fj" { + value 32; + description + "Fiji"; + } + enum "fo" { + value 33; + description + "Faroese"; + } + enum "fr" { + value 34; + description + "French"; + } + enum "fy" { + value 35; + description + "Frisian"; + } + enum "ga" { + value 36; + description + "Irish"; + } + enum "gd" { + value 37; + description + "Scots Gaelic"; + } + enum "gl" { + value 38; + description + "Galician"; + } + enum "gn" { + value 39; + description + "Guarani"; + } + enum "gu" { + value 40; + description + "Gujarati"; + } + enum "ha" { + value 41; + description + "Hausa"; + } + enum "he" { + value 42; + description + "Hebrew"; + } + enum "hi" { + value 43; + description + "Hindi"; + } + enum "hr" { + value 44; + description + "Croatian"; + } + enum "hu" { + value 45; + description + "Hungarian"; + } + enum "hy" { + value 46; + description + "Armenian"; + } + enum "ia" { + value 47; + description + "Interlingua"; + } + enum "id" { + value 48; + description + "Indonesian"; + } + enum "ie" { + value 49; + description + "Interlingue"; + } + enum "ik" { + value 50; + description + "Inupiak"; + } + enum "is" { + value 51; + description + "Icelandic"; + } + enum "it" { + value 52; + description + "Italian"; + } + enum "iu" { + value 53; + description + "Inuktitut"; + } + enum "ja" { + value 54; + description + "Japanese"; + } + enum "jw" { + value 55; + description + "Javanese"; + } + enum "ka" { + value 56; + description + "Georgian"; + } + enum "kk" { + value 57; + description + "Kazakh"; + } + enum "kl" { + value 58; + description + "Greenlandic"; + } + enum "km" { + value 59; + description + "Cambodian"; + } + enum "kn" { + value 60; + description + "Kannada"; + } + enum "ko" { + value 61; + description + "Korean"; + } + enum "ks" { + value 62; + description + "Kashmiri"; + } + enum "ku" { + value 63; + description + "Kurdish"; + } + enum "ky" { + value 64; + description + "Kirghiz"; + } + enum "la" { + value 65; + description + "Latin"; + } + enum "ln" { + value 66; + description + "Lingala"; + } + enum "lo" { + value 67; + description + "Laothian"; + } + enum "lt" { + value 68; + description + "Lithuanian"; + } + enum "lv" { + value 69; + description + "Latvian, Lettish"; + } + enum "mg" { + value 70; + description + "Malagasy"; + } + enum "mi" { + value 71; + description + "Maori"; + } + enum "mk" { + value 72; + description + "Macedonian"; + } + enum "ml" { + value 73; + description + "Malayalam"; + } + enum "mn" { + value 74; + description + "Mongolian"; + } + enum "mo" { + value 75; + description + "Moldavian"; + } + enum "mr" { + value 76; + description + "Marathi"; + } + enum "ms" { + value 77; + description + "Malay"; + } + enum "mt" { + value 78; + description + "Maltese"; + } + enum "my" { + value 79; + description + "Burmese"; + } + enum "na" { + value 80; + description + "Nauru"; + } + enum "ne" { + value 81; + description + "Nepali"; + } + enum "nl" { + value 82; + description + "Dutch"; + } + enum "no" { + value 83; + description + "Norwegian"; + } + enum "oc" { + value 84; + description + "Occitan"; + } + enum "om" { + value 85; + description + "(Afan) Oromo"; + } + enum "or" { + value 86; + description + "Oriya"; + } + enum "pa" { + value 87; + description + "Punjabi"; + } + enum "pl" { + value 88; + description + "Polish"; + } + enum "ps" { + value 89; + description + "Pashto, Pushto"; + } + enum "pt" { + value 90; + description + "Portuguese"; + } + enum "qu" { + value 91; + description + "Quechua"; + } + enum "rm" { + value 92; + description + "Rhaeto-Romance"; + } + enum "rn" { + value 93; + description + "Kirundi"; + } + enum "ro" { + value 94; + description + "Romanian"; + } + enum "ru" { + value 95; + description + "Russian"; + } + enum "rw" { + value 96; + description + "Kinyarwanda"; + } + enum "sa" { + value 97; + description + "Sanskrit"; + } + enum "sd" { + value 98; + description + "Sindhi"; + } + enum "sg" { + value 99; + description + "Sangho"; + } + enum "sh" { + value 100; + description + "Serbo-Croatian"; + } + enum "si" { + value 101; + description + "Sinhalese"; + } + enum "sk" { + value 102; + description + "Slovak"; + } + enum "sl" { + value 103; + description + "Slovenian"; + } + enum "sm" { + value 104; + description + "Samoan"; + } + enum "sn" { + value 105; + description + "Shona"; + } + enum "so" { + value 106; + description + "Somali"; + } + enum "sq" { + value 107; + description + "Albanian"; + } + enum "sr" { + value 108; + description + "Serbian"; + } + enum "ss" { + value 109; + description + "Siswati"; + } + enum "st" { + value 110; + description + "Sesotho"; + } + enum "su" { + value 111; + description + "Sundanese"; + } + enum "sv" { + value 112; + description + "Swedish"; + } + enum "sw" { + value 113; + description + "Swahili"; + } + enum "ta" { + value 114; + description + "Tamil"; + } + enum "te" { + value 115; + description + "Telugu"; + } + enum "tg" { + value 116; + description + "Tajik"; + } + enum "th" { + value 117; + description + "Thai"; + } + enum "ti" { + value 118; + description + "Tigrinya"; + } + enum "tk" { + value 119; + description + "Turkmen"; + } + enum "tl" { + value 120; + description + "Tagalog"; + } + enum "tn" { + value 121; + description + "Setswana"; + } + enum "to" { + value 122; + description + "Tonga"; + } + enum "tr" { + value 123; + description + "Turkish"; + } + enum "ts" { + value 124; + description + "Tsonga"; + } + enum "tt" { + value 125; + description + "Tatar"; + } + enum "tw" { + value 126; + description + "Twi"; + } + enum "ug" { + value 127; + description + "Uighur"; + } + enum "uk" { + value 128; + description + "Ukrainian"; + } + enum "ur" { + value 129; + description + "Urdu"; + } + enum "uz" { + value 130; + description + "Uzbek"; + } + enum "vi" { + value 131; + description + "Vietnamese"; + } + enum "vo" { + value 132; + description + "Volapuk"; + } + enum "wo" { + value 133; + description + "Wolof"; + } + enum "xh" { + value 134; + description + "Xhosa"; + } + enum "yi" { + value 135; + description + "Yiddish"; + } + enum "yo" { + value 136; + description + "Yoruba"; + } + enum "za" { + value 137; + description + "Zhuang"; + } + enum "zh" { + value 138; + description + "Chinese"; + } + enum "zu" { + value 139; + description + "Zulu"; + } + } + description + "Define the language"; + } + leaf country { + type enumeration { + enum "AD" { + value 1; + description + "Andorra"; + } + enum "AE" { + value 2; + description + "United Arab Emirates"; + } + enum "AF" { + value 3; + description + "Afghanistan"; + } + enum "AG" { + value 4; + description + "Antigua and Barbuda"; + } + enum "AI" { + value 5; + description + "Anguilla"; + } + enum "AL" { + value 6; + description + "Albania"; + } + enum "AM" { + value 7; + description + "Armenia"; + } + enum "AN" { + value 8; + description + "Netherlands Antilles"; + } + enum "AO" { + value 9; + description + "Angola"; + } + enum "AQ" { + value 10; + description + "Antarctica"; + } + enum "AR" { + value 11; + description + "Argentina"; + } + enum "AS" { + value 12; + description + "American Samoa"; + } + enum "AT" { + value 13; + description + "Austria"; + } + enum "AU" { + value 14; + description + "Australia"; + } + enum "AW" { + value 15; + description + "Aruba"; + } + enum "AZ" { + value 16; + description + "Azerbaijan"; + } + enum "BA" { + value 17; + description + "Bosnia and Herzegovina"; + } + enum "BB" { + value 18; + description + "Barbados"; + } + enum "BD" { + value 19; + description + "Bangladesh"; + } + enum "BE" { + value 20; + description + "Belgium"; + } + enum "BF" { + value 21; + description + "Burkina Faso"; + } + enum "BG" { + value 22; + description + "Bulgaria"; + } + enum "BH" { + value 23; + description + "Bahrain"; + } + enum "BI" { + value 24; + description + "Burundi"; + } + enum "BJ" { + value 25; + description + "Benin"; + } + enum "BM" { + value 26; + description + "Bermuda"; + } + enum "BN" { + value 27; + description + "Brunei Darussalam"; + } + enum "BO" { + value 28; + description + "Bolivia"; + } + enum "BR" { + value 29; + description + "Brazil"; + } + enum "BS" { + value 30; + description + "Bahamas"; + } + enum "BT" { + value 31; + description + "Bhutan"; + } + enum "BV" { + value 32; + description + "Bouvet Island"; + } + enum "BW" { + value 33; + description + "Botswana"; + } + enum "BY" { + value 34; + description + "Belarus"; + } + enum "BZ" { + value 35; + description + "Belize"; + } + enum "CA" { + value 36; + description + "Canada"; + } + enum "CC" { + value 37; + description + "Cocos (Keeling) Islands"; + } + enum "CD" { + value 38; + description + "Congo, The Democratic Republic of the (Zaire)"; + } + enum "CF" { + value 39; + description + "Central African Republic"; + } + enum "CG" { + value 40; + description + "Congo"; + } + enum "CH" { + value 41; + description + "Switzerland"; + } + enum "CI" { + value 42; + description + "Cote D'Ivoire"; + } + enum "CK" { + value 43; + description + "Cook Islands"; + } + enum "CL" { + value 44; + description + "Chile"; + } + enum "CM" { + value 45; + description + "Cameroon"; + } + enum "CN" { + value 46; + description + "China"; + } + enum "CO" { + value 47; + description + "Colombia"; + } + enum "CR" { + value 48; + description + "Costa Rica"; + } + enum "CU" { + value 49; + description + "Cuba"; + } + enum "CV" { + value 50; + description + "Cape Verde"; + } + enum "CX" { + value 51; + description + "Christmas Island"; + } + enum "CY" { + value 52; + description + "Cyprus"; + } + enum "CZ" { + value 53; + description + "Czech Republic"; + } + enum "DE" { + value 54; + description + "Germany"; + } + enum "DJ" { + value 55; + description + "Djibouti"; + } + enum "DK" { + value 56; + description + "Denmark"; + } + enum "DM" { + value 57; + description + "Dominica"; + } + enum "DO" { + value 58; + description + "Dominican Republic"; + } + enum "DZ" { + value 59; + description + "Algeria"; + } + enum "EC" { + value 60; + description + "Ecuador"; + } + enum "EE" { + value 61; + description + "Estonia"; + } + enum "EG" { + value 62; + description + "Egypt"; + } + enum "EH" { + value 63; + description + "Western Sahara"; + } + enum "ER" { + value 64; + description + "Eritrea"; + } + enum "ES" { + value 65; + description + "Spain"; + } + enum "ET" { + value 66; + description + "Ethiopia"; + } + enum "FI" { + value 67; + description + "Finland"; + } + enum "FJ" { + value 68; + description + "Fiji"; + } + enum "FK" { + value 69; + description + "Falkland Islands (Malvinas)"; + } + enum "FM" { + value 70; + description + "Micronesia, Federated States of"; + } + enum "FO" { + value 71; + description + "Faroe Islands"; + } + enum "FR" { + value 72; + description + "France"; + } + enum "GA" { + value 73; + description + "Gabon"; + } + enum "GB" { + value 74; + description + "United Kingdom"; + } + enum "GD" { + value 75; + description + "Grenada"; + } + enum "GE" { + value 76; + description + "Georgia"; + } + enum "GF" { + value 77; + description + "French Guiana"; + } + enum "GH" { + value 78; + description + "Ghana"; + } + enum "GI" { + value 79; + description + "Gibraltar"; + } + enum "GL" { + value 80; + description + "Greenland"; + } + enum "GM" { + value 81; + description + "Gambia"; + } + enum "GN" { + value 82; + description + "Guinea"; + } + enum "GP" { + value 83; + description + "Guadeloupe"; + } + enum "GQ" { + value 84; + description + "Equatorial Guinea"; + } + enum "GR" { + value 85; + description + "Greece"; + } + enum "GS" { + value 86; + description + "South Georgia and the South Sandwich Islands"; + } + enum "GT" { + value 87; + description + "Guatemala"; + } + enum "GU" { + value 88; + description + "Guam"; + } + enum "GW" { + value 89; + description + "Guinea-Bissau"; + } + enum "GY" { + value 90; + description + "Guyana"; + } + enum "HK" { + value 91; + description + "Hong Kong"; + } + enum "HM" { + value 92; + description + "Heard Island and McDonald Islands"; + } + enum "HN" { + value 93; + description + "Honduras"; + } + enum "HR" { + value 94; + description + "Croatia"; + } + enum "HT" { + value 95; + description + "Haiti"; + } + enum "HU" { + value 96; + description + "Hungary"; + } + enum "ID" { + value 97; + description + "Indonesia"; + } + enum "IE" { + value 98; + description + "Ireland"; + } + enum "IL" { + value 99; + description + "Israel"; + } + enum "IN" { + value 100; + description + "India"; + } + enum "IO" { + value 101; + description + "British Indian Ocean Territory"; + } + enum "IQ" { + value 102; + description + "Iraq"; + } + enum "IR" { + value 103; + description + "Iran, Islamic Republic of"; + } + enum "IS" { + value 104; + description + "Iceland"; + } + enum "IT" { + value 105; + description + "Italy"; + } + enum "JM" { + value 106; + description + "Jamaica"; + } + enum "JO" { + value 107; + description + "Jordan"; + } + enum "JP" { + value 108; + description + "Japan"; + } + enum "KE" { + value 109; + description + "Kenya"; + } + enum "KG" { + value 110; + description + "Kyrgyzstan"; + } + enum "KH" { + value 111; + description + "Cambodia"; + } + enum "KI" { + value 112; + description + "Kiribati"; + } + enum "KM" { + value 113; + description + "Comoros"; + } + enum "KN" { + value 114; + description + "Saint Kitts and Nevis"; + } + enum "KP" { + value 115; + description + "Korea, Democratic People's Republic of"; + } + enum "KR" { + value 116; + description + "Korea, Republic of"; + } + enum "KW" { + value 117; + description + "Kuwait"; + } + enum "KY" { + value 118; + description + "Cayman Islands"; + } + enum "KZ" { + value 119; + description + "Kazakstan"; + } + enum "LA" { + value 120; + description + "Lao People's Democratic Republic"; + } + enum "LB" { + value 121; + description + "Lebanon"; + } + enum "LC" { + value 122; + description + "Saint Lucia"; + } + enum "LI" { + value 123; + description + "Liechtenstein"; + } + enum "LK" { + value 124; + description + "Sri Lanka"; + } + enum "LR" { + value 125; + description + "Liberia"; + } + enum "LS" { + value 126; + description + "Lesotho"; + } + enum "LT" { + value 127; + description + "Lithuania"; + } + enum "LU" { + value 128; + description + "Luxembourg"; + } + enum "LV" { + value 129; + description + "Latvia"; + } + enum "LY" { + value 130; + description + "Libyan Arab Jamahiriya"; + } + enum "MA" { + value 131; + description + "Morocco"; + } + enum "MC" { + value 132; + description + "Monaco"; + } + enum "MD" { + value 133; + description + "Moldova, Republic of"; + } + enum "MG" { + value 134; + description + "Madagascar"; + } + enum "MH" { + value 135; + description + "Marshall Islands"; + } + enum "MK" { + value 136; + description + "Macedonia, The Former Yugoslav Republic of"; + } + enum "ML" { + value 137; + description + "Mali"; + } + enum "MM" { + value 138; + description + "Myanmar"; + } + enum "MN" { + value 139; + description + "Mongolia"; + } + enum "MO" { + value 140; + description + "Macau"; + } + enum "MP" { + value 141; + description + "Northern Mariana Islands"; + } + enum "MQ" { + value 142; + description + "Martinique"; + } + enum "MR" { + value 143; + description + "Mauritania"; + } + enum "MS" { + value 144; + description + "Montserrat"; + } + enum "MT" { + value 145; + description + "Malta"; + } + enum "MU" { + value 146; + description + "Mauritius"; + } + enum "MV" { + value 147; + description + "Maldives"; + } + enum "MW" { + value 148; + description + "Malawi"; + } + enum "MX" { + value 149; + description + "Mexico"; + } + enum "MY" { + value 150; + description + "Malaysia"; + } + enum "MZ" { + value 151; + description + "Mozambique"; + } + enum "NA" { + value 152; + description + "Namibia"; + } + enum "NC" { + value 153; + description + "New Caledonia"; + } + enum "NE" { + value 154; + description + "Niger"; + } + enum "NF" { + value 155; + description + "Norfolk Island"; + } + enum "NG" { + value 156; + description + "Nigeria"; + } + enum "NI" { + value 157; + description + "Nicaragua"; + } + enum "NL" { + value 158; + description + "Netherlands"; + } + enum "NO" { + value 159; + description + "Norway"; + } + enum "NP" { + value 160; + description + "Nepal"; + } + enum "NR" { + value 161; + description + "Nauru"; + } + enum "NU" { + value 162; + description + "Niue"; + } + enum "NZ" { + value 163; + description + "New Zealand"; + } + enum "OM" { + value 164; + description + "Oman"; + } + enum "PA" { + value 165; + description + "Panama"; + } + enum "PE" { + value 166; + description + "Peru"; + } + enum "PF" { + value 167; + description + "French Polynesia"; + } + enum "PG" { + value 168; + description + "Papua New Guinea"; + } + enum "PH" { + value 169; + description + "Philippines"; + } + enum "PK" { + value 170; + description + "Pakistan"; + } + enum "PL" { + value 171; + description + "Poland"; + } + enum "PM" { + value 172; + description + "Saint Pierre and Miquelon"; + } + enum "PN" { + value 173; + description + "Pitcairn"; + } + enum "PR" { + value 174; + description + "Puerto Rico"; + } + enum "PT" { + value 175; + description + "Portugal"; + } + enum "PW" { + value 176; + description + "Palau"; + } + enum "PY" { + value 177; + description + "Paraguay"; + } + enum "QA" { + value 178; + description + "Qatar"; + } + enum "RE" { + value 179; + description + "Reunion"; + } + enum "RO" { + value 180; + description + "Romania"; + } + enum "RU" { + value 181; + description + "Russian Federation"; + } + enum "RW" { + value 182; + description + "Rwanda"; + } + enum "SA" { + value 183; + description + "Saudi Arabia"; + } + enum "SB" { + value 184; + description + "Solomon Islands"; + } + enum "SC" { + value 185; + description + "Seychelles"; + } + enum "SD" { + value 186; + description + "Sudan"; + } + enum "SE" { + value 187; + description + "Sweden"; + } + enum "SG" { + value 188; + description + "Singapore"; + } + enum "SH" { + value 189; + description + "Saint Helena"; + } + enum "SI" { + value 190; + description + "Slovenia"; + } + enum "SJ" { + value 191; + description + "Svalbard and Jan Mayen"; + } + enum "SK" { + value 192; + description + "Slovakia"; + } + enum "SL" { + value 193; + description + "Sierra Leone"; + } + enum "SM" { + value 194; + description + "San Marino"; + } + enum "SN" { + value 195; + description + "Senegal"; + } + enum "SO" { + value 196; + description + "Somalia"; + } + enum "SR" { + value 197; + description + "Suriname"; + } + enum "ST" { + value 198; + description + "Sao Tome and Principe"; + } + enum "SV" { + value 199; + description + "El Salvador"; + } + enum "SY" { + value 200; + description + "Syrian Arab Republic"; + } + enum "SZ" { + value 201; + description + "Swaziland"; + } + enum "TC" { + value 202; + description + "Turks and Caicos Islands"; + } + enum "TD" { + value 203; + description + "Chad"; + } + enum "TF" { + value 204; + description + "French Southern Territories"; + } + enum "TG" { + value 205; + description + "Togo"; + } + enum "TH" { + value 206; + description + "Thailand"; + } + enum "TJ" { + value 207; + description + "Tajikistan"; + } + enum "TK" { + value 208; + description + "Tokelau"; + } + enum "TM" { + value 209; + description + "Turkmenistan"; + } + enum "TN" { + value 210; + description + "Tunisia"; + } + enum "TO" { + value 211; + description + "Tonga"; + } + enum "TP" { + value 212; + description + "East Timor"; + } + enum "TR" { + value 213; + description + "Turkey"; + } + enum "TT" { + value 214; + description + "Trinidad and Tobago"; + } + enum "TV" { + value 215; + description + "Tuvalu"; + } + enum "TW" { + value 216; + description + "Taiwan, Province of China"; + } + enum "TZ" { + value 217; + description + "Tanzania, United Republic of"; + } + enum "UA" { + value 218; + description + "Ukraine"; + } + enum "UG" { + value 219; + description + "Uganda"; + } + enum "UM" { + value 220; + description + "United States Minor Outlying Islands"; + } + enum "US" { + value 221; + description + "United States"; + } + enum "UY" { + value 222; + description + "Uruguay"; + } + enum "UZ" { + value 223; + description + "Uzbekistan"; + } + enum "VA" { + value 224; + description + "Holy See (Vatican City State)"; + } + enum "VC" { + value 225; + description + "Saint Vincent and The Grenadines"; + } + enum "VE" { + value 226; + description + "Venezuela"; + } + enum "VG" { + value 227; + description + "Virgin Islands, British"; + } + enum "VI" { + value 228; + description + "Virgin Islands, U.S."; + } + enum "VN" { + value 229; + description + "Vietnam"; + } + enum "VU" { + value 230; + description + "Vanuatu"; + } + enum "WF" { + value 231; + description + "Wallis and Futuna"; + } + enum "WS" { + value 232; + description + "Samoa"; + } + enum "YE" { + value 233; + description + "Yemen"; + } + enum "YT" { + value 234; + description + "Mayotte"; + } + enum "YU" { + value 235; + description + "Yugoslavia"; + } + enum "ZA" { + value 236; + description + "South Africa"; + } + enum "ZM" { + value 237; + description + "Zambia"; + } + enum "ZW" { + value 238; + description + "Zimbabwe"; + } + } + description + "Define the country"; + } + } + container banners { + description + "Define a login banner"; + list banner { + key "banner-type"; + description + "Define the banner"; + leaf banner-type { + type enumeration { + enum "exec" { + value 0; + description + "Set EXEC process creation banner"; + } + enum "incoming" { + value 1; + description + "Set incoming terminal line banner"; + } + enum "motd" { + value 2; + description + "Set Message of the Day banner"; + } + enum "login" { + value 3; + description + "Set login banner"; + } + enum "slip-ppp" { + value 4; + description + "Set Message for SLIP/PPP"; + } + enum "prompt-timeout" { + value 5; + description + "Set Message for login authentication timeout"; + } + } + description + "Select the banner type"; + } + leaf line { + type string; + mandatory true; + description + "c banner-text c, where 'c' is a delimiting character"; + } + } + } + container default-value { + description + "Default character-bits values"; + leaf exec-character-bits { + type uint32 { + range "7..8" { + description + "Bits per character"; + } + } + description + "Size of characters to the command exec"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-bfd-sbfd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-bfd-sbfd-cfg.yang new file mode 100644 index 000000000..aa2b795bc --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-bfd-sbfd-cfg.yang @@ -0,0 +1,545 @@ +module Cisco-IOS-XR-um-bfd-sbfd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-bfd-sbfd-cfg"; + prefix um-bfd-sbfd-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 bfd-sbfd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-12-18 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container bfd { + presence "Indicates a bfd node is configured."; + description + "Enable BFD traps"; + } + } + container bfd { + description + "Global BFD configuration commands"; + container echo { + description + "Configure BFD echo parameters"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable BFD echo mode"; + } + container latency { + description + "Configure BFD echo latency features"; + container detect { + presence "Indicates a detect node is configured."; + description + "Enable BFD echo latency detection"; + leaf percentage { + type uint32 { + range "100..250" { + description + "Percentage value (default 100)"; + } + } + description + "Percentage of detection time to consider as bad latency"; + } + leaf count { + type uint32 { + range "1..10" { + description + "Count value (default 1)"; + } + } + must "../percentage"; + description + "Count of consecutive bad latency packets to take session down"; + } + } + } + container startup { + description + "Configure BFD echo startup feature"; + container validate { + presence "Indicates a validate node is configured."; + description + "Enable BFD echo validation prior to session bringup"; + container force { + presence "Indicates a force node is configured."; + description + "Ignore remote 'Required Min Echo RX Interval' setting"; + } + } + } + container ipv4 { + description + "IPv4 commands"; + leaf source { + type inet:ipv4-address-no-zone; + description + "BFD echo source IP address"; + } + container bundle-per-member { + description + "Configure echo for all the micro BFD sessions over Bundles"; + container minimum-interval { + description + "Set the preferred minimum interval for the BFD session"; + leaf preferred-minimum-interval { + type uint32 { + range "15..2000" { + description + "The preferred minimum interval (in ms) for the BFD session"; + } + } + description + "The preferred minimum interval (in ms) for the BFD session"; + } + } + } + } + } + container trap { + description + "Configure BFD trap parameters"; + container singlehop { + description + "Configure BFD mode"; + container pre-mapped { + presence "Indicates a pre-mapped node is configured."; + description + "Configure BFD trap pre-mapped"; + } + } + } + container multipath { + description + "Configure BFD multiple path"; + container include { + description + "Include a LC node"; + container locations { + description + "Specify a location"; + list location { + key "location-name"; + description + "Specify a location"; + leaf location-name { + type xr:Node-id; + description + "Specify a location"; + } + } + } + } + } + container multihop { + description + "Configure BFD multihop"; + leaf ttl-drop-threshold { + type uint32 { + range "0..254" { + description + "Drop Threshold"; + } + } + description + "TTL Drop Threshold"; + } + } + container dampening { + description + "Configure BFD dampening intervals"; + leaf initial-wait { + type uint32 { + range "1..3600000" { + description + "Delay in milliseconds (default 2000)"; + } + } + description + "Initial delay before bringing up session"; + } + leaf secondary-wait { + type uint32 { + range "1..3600000" { + description + "Delay in milliseconds (default 5000)"; + } + } + description + "Secondary delay before bringing up session"; + } + leaf maximum-wait { + type uint32 { + range "1..3600000" { + description + "Delay in milliseconds (default 120000)"; + } + } + description + "Maximum delay before bringing up session"; + } + leaf threshold { + type uint32 { + range "60000..3600000" { + description + "Threshold in milliseconds (default 120000)"; + } + } + description + "Stability threshold to enable dampening"; + } + container extensions { + description + "Enable dampening extensions"; + container down-monitoring { + presence "Indicates a down-monitoring node is configured."; + description + "Enable DOWN state session monitoring extensions"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable BFD dampening"; + } + container bundle-member { + description + "Configure BFD dampening for bfd over bundle per member feature"; + container l3-only-mode { + presence "Indicates a l3-only-mode node is configured."; + description + "Apply immediate dampening and only when failure is L3 specific"; + } + leaf initial-wait { + type uint32 { + range "1..518400000" { + description + "Delay in milliseconds (default 16000)"; + } + } + description + "Initial delay before bringing up session"; + } + leaf secondary-wait { + type uint32 { + range "1..518400000" { + description + "Delay in milliseconds (default 20000)"; + } + } + description + "Secondary delay before bringing up session"; + } + leaf maximum-wait { + type uint32 { + range "1..518400000" { + description + "Delay in milliseconds (default 600000)"; + } + } + description + "Maximum delay before bringing up session"; + } + } + } + container bundle { + description + "Option for BFD over Bundle"; + container coexistence { + description + "How BFD bundle features coexist"; + container bob-blb { + description + "Coexistence for BoB and BLB"; + container inherit { + must "not(../logical)"; + presence "Indicates a inherit node is configured."; + description + "Use inheritence mechanism"; + } + container logical { + must "not(../inherit)"; + presence "Indicates a logical node is configured."; + description + "Use BFD logical Bundle natively"; + } + } + } + } + container interfaces { + description + "Configure BFD on an interface"; + list interface { + key "interface-name"; + description + "Configure BFD on an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Configure BFD on an interface"; + } + container echo { + presence "Indicates a echo node is configured."; + description + "Configure BFD echo mode"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable BFD echo mode for this interface"; + } + container ipv4 { + description + "IPv4 commands"; + leaf source { + type inet:ipv4-address-no-zone; + description + "BFD echo source IP address"; + } + } + } + container ipv6 { + description + "Configure BFD ipv6 checksum mode"; + container checksum { + presence "Indicates a checksum node is configured."; + description + "IPv6 checksum commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable BFD ipv6 checksum mode for this interface"; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable BFD for this interface"; + } + leaf local-address { + type inet:ip-address-no-zone; + description + "Local address to be used by BFD for this interface"; + } + leaf tx-interval { + type uint32 { + range "3000..30000000" { + description + "tx interval in microseconds"; + } + } + description + "BFD TX Interval for this interface in microseconds"; + } + leaf rx-interval { + type uint32 { + range "3000..30000000" { + description + "rx interval in microseconds"; + } + } + description + "BFD RX Interval for this interface in microseconds"; + } + leaf multiplier { + type uint32 { + range "2..50" { + description + "multiplier"; + } + } + description + "BFD multiplier for this interface"; + } + } + } + container ipv6 { + description + "Ipv6 BFD checksum"; + container checksum { + description + "Configure BFD checksum parameters"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable BFD checksum"; + } + } + } + } + container sbfd { + description + "Global SBFD configuration commands"; + container local-discriminator { + description + "configure local-discriminator"; + container local-discriminators { + description + "32-bit local-discriminator"; + list local-discriminator { + key "local-discriminator-value"; + description + "32-bit local-discriminator"; + leaf local-discriminator-value { + type uint32 { + range "1..4294967295" { + description + "32-bit local-discriminator"; + } + } + description + "32-bit local-discriminator"; + } + } + } + container ip-addresses { + description + "ipv4 address as local-discriminator"; + list ip-address { + key "address"; + description + "ipv4 address as local-discriminator"; + leaf address { + type inet:ipv4-address-no-zone; + description + "ipv4 address as local-discriminator"; + } + } + } + container dynamic { + presence "Indicates a dynamic node is configured."; + description + "configure local-discriminator dynamically"; + } + container interfaces { + description + "Interface whose IPv4 address is to be used as local discriminator"; + list interface { + key "interface-name"; + description + "Interface whose IPv4 address is to be used as local discriminator"; + leaf interface-name { + type xr:Interface-name; + description + "Interface whose IPv4 address is to be used as local discriminator"; + } + } + } + } + container remote-target { + description + "configure remote-target"; + container ipv4s { + description + "Ipv4 address only"; + list ipv4 { + key "address"; + description + "Ipv4 address only"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Ipv4 address only"; + } + container remote-discriminators { + description + "Configure remote-discriminator"; + list remote-discriminator { + key "remote-discriminator-value"; + description + "32-bit remote-discriminator"; + leaf remote-discriminator-value { + type uint32 { + range "1..4294967295" { + description + "32-bit remote-discriminator"; + } + } + description + "32-bit remote-discriminator"; + } + } + } + } + } + container ipv6s { + description + "Ipv6 address only"; + list ipv6 { + key "address"; + description + "Ipv6 address only"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Ipv6 address only"; + } + container remote-discriminators { + description + "Configure remote-discriminator"; + list remote-discriminator { + key "remote-discriminator-value"; + description + "32-bit remote-discriminator"; + leaf remote-discriminator-value { + type uint32 { + range "1..4294967295" { + description + "32-bit remote-discriminator"; + } + } + description + "32-bit remote-discriminator"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-call-home-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-call-home-cfg.yang new file mode 100644 index 000000000..57ca33494 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-call-home-cfg.yang @@ -0,0 +1,1182 @@ +module Cisco-IOS-XR-um-call-home-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-call-home-cfg"; + prefix um-call-home-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 call-home package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-15 { + description + "Added disable node for email and http under container transport-method"; + semver:module-version "2.1.0"; + } + revision 2021-10-12 { + description + "Removed node all under container reporting"; + semver:module-version "2.0.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature is_config_supported_by_cli { + description + "is config supported by cli"; + } + + feature is_diagnostic_supported_by_cli { + description + "is diagnostic supported by cli"; + } + + feature is_inv_supported_by_cli { + description + "is inv supported by cli"; + } + + feature is_env_supported_by_cli { + description + "is env supported by cli"; + } + + feature is_syslog_supported_by_cli { + description + "is syslog supported by cli"; + } + + feature is_crash_supported_by_cli { + description + "is crash supported by cli"; + } + + feature is_snapshot_supported_by_cli { + description + "is snapshot supported by cli"; + } + + feature is_callhome_v2_support { + description + "is callhome v2 support"; + } + + feature is_smart_license_support { + description + "is smart license support"; + } + + container call-home { + description + "Enter call-home configuration mode"; + container service { + description + "Enable or disable Call-home service"; + container active { + presence "Indicates a active node is configured."; + description + "Enable Call-home service"; + } + } + container mail-servers { + description + "Configure call-home mail_server"; + list mail-server { + key "mail-server-name"; + description + "Configure call-home mail_server"; + leaf mail-server-name { + type string { + length "1..800" { + description + "Email server"; + } + } + description + "Configure call-home mail_server"; + } + leaf priority { + type uint32 { + range "1..100" { + description + "Mail server with lower # will be used first"; + } + } + mandatory true; + description + "Mail server priority order"; + } + } + } + container alert-group { + description + "Enable or disable alert-group"; + container configuration { + if-feature "is_config_supported_by_cli"; + presence "Indicates a configuration node is configured."; + description + "configuration info"; + } + container diagnostic { + if-feature "is_diagnostic_supported_by_cli"; + presence "Indicates a diagnostic node is configured."; + description + "diagnostic info"; + } + container inventory { + if-feature "is_inv_supported_by_cli"; + presence "Indicates a inventory node is configured."; + description + "inventory info"; + } + container environment { + if-feature "is_env_supported_by_cli"; + presence "Indicates a environment node is configured."; + description + "environmental info"; + } + container syslog { + if-feature "is_syslog_supported_by_cli"; + presence "Indicates a syslog node is configured."; + description + "syslog info"; + } + container crash { + if-feature "is_crash_supported_by_cli"; + presence "Indicates a crash node is configured."; + description + "crash and traceback info"; + } + container snapshot { + if-feature "is_snapshot_supported_by_cli"; + presence "Indicates a snapshot node is configured."; + description + "snapshot info"; + } + } + container sender { + description + "Call home msg's sender email addresses"; + leaf from { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Email address"; + } + } + description + "Call home msg's from email address"; + } + leaf reply-to { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Email address"; + } + } + description + "Call home msg's reply-to email address"; + } + } + leaf contact-email-addr { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Contact person's email address"; + } + } + description + "System Contact's email address"; + } + container contact { + description + "System Contact"; + container smart-licensing { + presence "Indicates a smart-licensing node is configured."; + description + "System Contact is Smart-Licensing"; + } + } + leaf phone-number { + type xr:Cisco-ios-xr-string { + length "1..17" { + description + "Phone number of the contact person. The phone number must start with '+' , and only space, - and numbers are allowed. Total length is between 12 to 16 characters. If you include spaces, you must enclose your entry in quotes."; + } + } + description + "Phone number of the contact person"; + } + leaf street-address { + type string { + length "1..200" { + description + "Street address, city, state, and zip code."; + } + } + description + "Street address for RMA part shipments"; + } + leaf customer-id { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Alphanumeric customer identification."; + } + } + description + "Customer identification for Cisco Smart Call Home"; + } + leaf contract-id { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Alphanumeric contract identification."; + } + } + description + "Contract identification for Cisco Smart Call Home"; + } + leaf site-id { + type xr:Cisco-ios-xr-string { + length "1..200" { + description + "Alphanumeric site identification."; + } + } + description + "Site identification for Cisco Smart Call Home"; + } + leaf rate-limit { + type uint32 { + range "1..5" { + description + "Call-home event trigger rate-limit threshold per minute"; + } + } + description + "Configure call-home event trigger rate-limit threshold"; + } + container data-privacy { + if-feature "is_callhome_v2_support"; + description + "Set call-home data-privacy"; + container hostname { + presence "Indicates a hostname node is configured."; + description + "Level hostname"; + } + container level { + description + "Set call-home data-privacy level"; + container normal { + must "not(../high)"; + presence "Indicates a normal node is configured."; + description + "Level normal"; + } + container high { + must "not(../normal)"; + presence "Indicates a high node is configured."; + description + "Level high"; + } + } + } + container http-proxy { + if-feature "is_callhome_v2_support"; + presence "Indicates a http-proxy node is configured."; + description + "Specify proxy server for http request"; + leaf server-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Http proxy server"; + } + } + mandatory true; + description + "Specify proxy server for http request"; + } + leaf port { + type uint32 { + range "1..65535" { + description + "http proxy server port number"; + } + } + description + "proxy server port number"; + } + } + leaf source-interface { + if-feature "is_callhome_v2_support"; + type xr:Interface-name; + description + "Source interface name to send call-home messages"; + } + container syslog-throttling { + if-feature "is_callhome_v2_support"; + presence "Indicates a syslog-throttling node is configured."; + description + "Enable or disable call-home syslog message throttling"; + } + leaf vrf { + if-feature "is_callhome_v2_support"; + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF instance name"; + } + } + description + "VPN Routing/Forwarding instance name"; + } + container aaa-authorization { + if-feature "is_callhome_v2_support"; + description + "Config aaa authorization"; + container active { + presence "Indicates an active node is configured."; + description + "Activate aaa authorization"; + } + leaf username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "username"; + } + } + description + "Username for authorization, default is 'callhome'"; + } + } + container profiles { + description + "Enter call-home profile configuration mode"; + list profile { + key "profile-name"; + description + "Enter call-home profile configuration mode"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Profile name(case insensitive)"; + } + } + description + "Enter call-home profile configuration mode"; + } + container active { + presence "Indicates a active node is configured."; + description + "Activate the current profile"; + } + container destination { + description + "Message destination related configuration"; + container addresses { + description + "To add destination address to this profile"; + list address { + key "address-type destination-address"; + description + "To add destination address to this profile"; + leaf address-type { + type enumeration { + enum "email" { + value 1; + description + "To add email address to this profile"; + } + enum "http" { + value 2; + description + "To add http address to this profile"; + } + } + description + "To add destination address to this profile"; + } + leaf destination-address { + type string { + length "1..200" { + description + "Destination address (1-200) characters"; + } + } + description + "Destination address (1-200) characters"; + } + } + } + leaf message-size-limit { + type uint32 { + range "50..3145728" { + description + "Maximum call-home message size"; + } + } + description + "To specify message size limit for this profile"; + } + container preferred-msg-format { + description + "To specify message format for this profile"; + container short-text { + must "not(../long-text)"; + presence "Indicates a short-text node is configured."; + description + "Send short text format message"; + } + container long-text { + must "not(../short-text)"; + presence "Indicates a long-text node is configured."; + description + "Send long text format message"; + } + } + container transport-method { + description + "To specify transport method for this profile"; + container email { + presence "Indicates a email node is configured."; + description + "Enable email as transport method"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable"; + } + } + container http { + presence "Indicates a http node is configured."; + description + "Enable http as transport method"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable"; + } + } + } + } + container reporting { + if-feature "is_smart_license_support"; + description + "Choose what data to report"; + container smart-call-home-data { + presence "Indicates a smart-call-home-data node is configured."; + description + "Report Smart Call Home data"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable"; + } + } + container smart-licensing-data { + presence "Indicates a smart-licensing-data node is configured."; + description + "Report Smart Licensing data"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable"; + } + } + } + container subscribe-to-alert-group { + if-feature "is_config_supported_by_cli"; + description + "Subscribe to alert-group"; + container configuration { + description + "configuration info"; + container enable { + presence "Indicates an enable node is configured."; + description + "Enable configuration info"; + } + container periodic { + description + "Periodic call-home message"; + container daily { + must "not(../weekly or ../monthly)"; + presence "Indicates a daily node is configured."; + description + "Daily call-home message"; + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + container weekly { + must "not(../daily or ../monthly)"; + presence "Indicates a weekly node is configured."; + description + "Weekly call-home message"; + leaf day-of-week { + type enumeration { + enum "sunday" { + value 0; + description + "sunday"; + } + enum "monday" { + value 1; + description + "monday"; + } + enum "tuesday" { + value 2; + description + "tuesday"; + } + enum "wednesday" { + value 3; + description + "wednesday"; + } + enum "thursday" { + value 4; + description + "thursday"; + } + enum "friday" { + value 5; + description + "friday"; + } + enum "saturday" { + value 6; + description + "saturday"; + } + } + mandatory true; + description + "Day of week"; + } + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + container monthly { + must "not(../daily or ../weekly)"; + presence "Indicates a monthly node is configured."; + description + "Monthly call-home message"; + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of month"; + } + } + mandatory true; + description + "Day of month"; + } + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + } + } + container inventory { + description + "inventory info"; + container enable { + presence "Indicates an enable node is configured."; + description + "Enable inventory info"; + } + container periodic { + description + "Periodic call-home message"; + container daily { + must "not(../weekly or ../monthly)"; + presence "Indicates a daily node is configured."; + description + "Daily call-home message"; + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + container weekly { + must "not(../daily or ../monthly)"; + presence "Indicates a weekly node is configured."; + description + "Weekly call-home message"; + leaf day-of-week { + type enumeration { + enum "sunday" { + value 0; + description + "sunday"; + } + enum "monday" { + value 1; + description + "monday"; + } + enum "tuesday" { + value 2; + description + "tuesday"; + } + enum "wednesday" { + value 3; + description + "wednesday"; + } + enum "thursday" { + value 4; + description + "thursday"; + } + enum "friday" { + value 5; + description + "friday"; + } + enum "saturday" { + value 6; + description + "saturday"; + } + } + mandatory true; + description + "Day of week"; + } + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + container monthly { + must "not(../daily or ../weekly)"; + presence "Indicates a monthly node is configured."; + description + "Monthly call-home message"; + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of month"; + } + } + mandatory true; + description + "Day of month"; + } + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + } + } + container environment { + if-feature "is_env_supported_by_cli"; + description + "environmental info"; + leaf severity { + type enumeration { + enum "debugging" { + value 0; + description + "Debugging event"; + } + enum "normal" { + value 1; + description + "Normal event"; + } + enum "notification" { + value 2; + description + "Notification event"; + } + enum "warning" { + value 3; + description + "Warning event"; + } + enum "minor" { + value 4; + description + "Minor event"; + } + enum "major" { + value 5; + description + "Major event"; + } + enum "critical" { + value 6; + description + "Critical event"; + } + enum "fatal" { + value 7; + description + "Fatal event"; + } + enum "disaster" { + value 8; + description + "Disaster event"; + } + enum "catastrophic" { + value 9; + description + "Catastrophic event"; + } + } + description + "Severity"; + } + } + container syslog { + if-feature "is_syslog_supported_by_cli"; + description + "syslog info"; + container patterns { + description + "Syslog message pattern"; + list pattern { + key "pattern-string"; + description + "Syslog message pattern"; + leaf pattern-string { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "Syslog message pattern to be matched"; + } + } + description + "Syslog message pattern"; + } + leaf severity { + type enumeration { + enum "normal" { + value 1; + description + "Normal event"; + } + enum "notification" { + value 2; + description + "Notification event"; + } + enum "warning" { + value 3; + description + "Warning event"; + } + enum "minor" { + value 4; + description + "Minor event"; + } + enum "major" { + value 5; + description + "Major event"; + } + enum "critical" { + value 6; + description + "Critical event"; + } + enum "fatal" { + value 7; + description + "Fatal event"; + } + enum "disaster" { + value 8; + description + "Disaster event"; + } + enum "catastrophic" { + value 9; + description + "Catastrophic event"; + } + } + mandatory true; + description + "Severity"; + } + } + } + } + container snapshot { + if-feature "is_snapshot_supported_by_cli"; + description + "snapshot info"; + container periodic { + description + "Periodic call-home message"; + container daily { + must "not(../weekly or ../monthly or ../interval or ../hourly)"; + presence "Indicates a daily node is configured."; + description + "Daily call-home message"; + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + container weekly { + must "not(../daily or ../monthly or ../hourly or ../interval)"; + presence "Indicates a weekly node is configured."; + description + "Weekly call-home message"; + leaf day-of-week { + type enumeration { + enum "sunday" { + value 0; + description + "sunday"; + } + enum "monday" { + value 1; + description + "monday"; + } + enum "tuesday" { + value 2; + description + "tuesday"; + } + enum "wednesday" { + value 3; + description + "wednesday"; + } + enum "thursday" { + value 4; + description + "thursday"; + } + enum "friday" { + value 5; + description + "friday"; + } + enum "saturday" { + value 6; + description + "saturday"; + } + } + mandatory true; + description + "Day of week"; + } + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + container monthly { + must "not(../daily or ../weekly or ../hourly or ../interval)"; + presence "Indicates a monthly node is configured."; + description + "Monthly call-home message"; + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of month"; + } + } + mandatory true; + description + "Day of month"; + } + leaf hour { + type uint32 { + range "0..23" { + description + "Hour"; + } + } + mandatory true; + description + "Hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Minute"; + } + } + mandatory true; + description + "Minute"; + } + } + container hourly { + must "not(../daily or ../weekly or ../monthly or ../interval)"; + presence "Indicates a monthly node is configured."; + description + "Hourly call-home message"; + leaf minute { + type uint32 { + range "0..59" { + description + "Minute of hour"; + } + } + mandatory true; + description + "Minute of hour"; + } + } + container interval { + must "not(../daily or ../weekly or ../monthly or ../hourly)"; + presence "Indicates a monthly node is configured."; + description + "Hourly call-home message"; + leaf minute { + type uint32 { + range "1..60" { + description + "Interval of minutes"; + } + } + mandatory true; + description + "Interval of minutes"; + } + } + } + } + container crash { + if-feature "is_crash_supported_by_cli"; + presence "Indicates a crash node is configured."; + description + "crash info"; + } + } + container anonymous-reporting-only { + presence "Indicates a anonymous-reporting-only node is configured."; + description + "Enable call-home anonymous reporting only"; + } + } + } + container alert-group-config { + description + "Enter call-home alert-group configuration mode"; + container snapshot { + description + "Enter snapshot configuration mode"; + container add-commands { + description + "Add CLI command"; + list add-command { + key "command-name"; + description + "Add CLI command"; + leaf command-name { + type string { + length "1..127" { + description + "CLI command (1-127) characters. If you include spaces, you must enclose + your entry in quotes."; + } + } + description + "Add CLI command"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cdp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cdp-cfg.yang new file mode 100644 index 000000000..824e52f7e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cdp-cfg.yang @@ -0,0 +1,126 @@ +module Cisco-IOS-XR-um-cdp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cdp-cfg"; + prefix um-cdp-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cdp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-09-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container cdp { + presence "Indicates a cdp node is configured."; + description + "Enable CDP on an interface"; + } + container cdp-mac-address { + description + "Configure CDP MAC address on interface"; + container ethernet-slow-protocols-mac { + presence "Indicates a ethernet-slow-protocols-mac node is configured."; + description + "Ethernet Slow-Protocols MAC, 01:80:c2:00:00:02"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + container cdp { + description + "Configure global CDP subcommands"; + container enable { + presence "Indicates an enable node is configured."; + description + "Enable CDP"; + } + leaf holdtime { + type uint32 { + range "10..255" { + description + "Length of time (in sec) that receiver must keep this packet"; + } + } + description + "Specify the holdtime (in sec) to be sent in packets"; + } + leaf timer { + type uint32 { + range "5..254" { + description + "Rate at which CDP packets are sent (in sec)"; + } + } + description + "Specify the rate at which CDP packets are sent (in sec)"; + } + container advertise { + description + "Specify the version of CDP advertisements"; + container v1 { + presence "Indicates a v1 node is configured."; + description + "CDP sends version-1 advertisements only"; + } + } + container log { + description + "Configure CDP to log Events"; + container adjacency { + description + "Configure CDP to log adjacency data"; + container changes { + presence "Indicates a changes node is configured."; + description + "Configure CDP to log changes to adjacency table"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-accounting-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-accounting-cfg.yang new file mode 100644 index 000000000..2d60a6d22 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-accounting-cfg.yang @@ -0,0 +1,292 @@ +module Cisco-IOS-XR-um-cef-accounting-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cef-accounting-cfg"; + prefix um-cef-accounting-cfg; + + 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 cef-accounting package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-21 { + description + "Added container hierarchical-load-balancing"; + semver:module-version "1.1.0"; + } + revision 2021-02-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container cef { + description + "CEF configuration"; + container adjacency { + description + "Adjacency configuration"; + container route { + description + "Adjacency route configuration"; + container override { + description + "Set override options for adjacency routes"; + container rib { + presence "Indicates a rib node is configured."; + description + "Set options for adjacency routes overriding RIB routes"; + } + } + } + } + container pbts { + description + "PBTS configuration"; + container class { + description + "Forward class configuration"; + list forward-class { + must + "fallback-to/fallback-class-number or fallback-to/any or + fallback-to/drop"; + key "forward-class-number"; + description + "Forward Class number"; + leaf forward-class-number { + type union { + type enumeration { + enum "any" { + value 8; + description + "Any forward class"; + } + } + type uint32 { + range "0..7" { + description + "Forward Class number"; + } + } + } + description + "Forward Class number"; + } + container fallback-to { + description + "Fallback to configuration"; + leaf-list fallback-class-number { + type uint32 { + range "0..7" { + description + "Fallback Class number"; + } + } + must "not(../any or ../drop)"; + max-elements "7"; + description + "Fallback to configuration"; + } + container any { + must "not(../fallback-class-number or ../drop)"; + presence "Indicates a any node is configured."; + description + "Fallback to any class"; + } + container drop { + must "not(../any or ../fallback-class-number)"; + presence "Indicates a drop node is configured."; + description + "Fallback to drop"; + } + } + } + } + } + container platform { + description + "Platform parameters"; + container lsm { + description + "Label-switched-multicast parameters"; + leaf frr-holdtime { + type uint32 { + range "3..180" { + description + "Time in seconds"; + } + } + description + "Time to keep FRR slots programmed post FRR"; + } + } + } + container retry { + description + "Retry parameters"; + leaf service-time { + type uint32 { + range "1..15000" { + description + "Time in msec"; + } + } + description + "Retry service time (default 50 msec)"; + } + leaf timeout { + type uint32 { + range "1..30000" { + description + "Time in msec"; + } + } + description + "Retry timeout (default 15 msec)"; + } + leaf syslog-timer { + type uint32 { + range "0..86400" { + description + "Time in seconds (default 120 seconds)"; + } + } + description + "Syslog timer in seconds(default 120 seconds), 0 to disable"; + } + } + container encap-sharing { + description + "Disable MPLS encapsulation sharing"; + container disable { + presence "Indicates a disable node is configured."; + description + "Use this in conjunction with BGP per-prefix label mode"; + } + } + container consistent-hashing { + description + "Load balancing consistent hashing"; + container auto-recovery { + presence "Indicates a auto-recovery node is configured."; + description + "Automatically recover to previous hash state"; + } + } + container proactive-arp-nd { + description + "Proactive ARP/ND"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable proactive ARP/ND feature"; + } + } + leaf ltrace-multiplier { + type uint32 { + range "1..16" { + description + "numeric value of the multiplier"; + } + } + description + "ltrace multiplier"; + } + container hierarchical-load-balancing { + description + "Hierarchical load balancing"; + container ecmp { + presence "Indicates a ecmp node is configured."; + description + "ecmp hierarchical-load-balancing"; + leaf min-paths { + type uint32 { + range "1..128" { + description + "Number of paths. Warning: This configuration is disruptive"; + } + } + description + "Minimum paths for qualifying HLB"; + } + } + container ucmp { + presence "Indicates a ucmp node is configured."; + description + "ucmp hierarchical-load-balancing"; + leaf group-size { + type uint32 { + range "1..128" { + description + "Number of paths. Warning: This configuration is disruptive"; + } + } + description + "UCMP group size for HLB"; + } + } + } + } + container accounting { + presence "Indicates a accounting node is configured."; + description + "Enable accounting"; + container interfaces { + presence "Indicates a interfaces node is configured."; + description + "Enable interfaces submode"; + container mpls { + presence "Indicates a mpls node is configured."; + description + "Enable MPLS accounting"; + container ipv4 { + description + "Enable IPv4 accounting"; + container rsvp-te { + presence "Indicates a rsvp-te node is configured."; + description + "Enable RSVP-TE accounting"; + } + } + } + container segment-routing { + description + "Enable Segment-Routing (SR) accounting"; + container mpls { + presence "Indicates a mpls node is configured."; + description + "Enable SR MPLS accounting"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Enable IPv4 accounting"; + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "Enable IPv6 accounting"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-load-balancing-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-load-balancing-cfg.yang new file mode 100644 index 000000000..4610502b8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-load-balancing-cfg.yang @@ -0,0 +1,107 @@ +module Cisco-IOS-XR-um-cef-load-balancing-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cef-load-balancing-cfg"; + prefix um-cef-load-balancing-cfg; + + import Cisco-IOS-XR-um-cef-accounting-cfg { + prefix a1; + } + 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 cef-load-balancing package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-09-21 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:cef" { + description + "This augment extends cef nodes configuration"; + container load-balancing { + description + "Load balance "; + container algorithm { + description + "hash algorithm "; + leaf adjust { + type uint32 { + range "0..31" { + description + "Adjust count - configure up to 31 for Typhoon & Tomahawk; up to 3 for Trident cards; Value will be masked on Trident (to make it <= 3) if this configured value is beyond 3"; + } + } + description + "Specify adjust count to rotate the resultant hash of hash algo"; + } + } + container fields { + description + "hash fields"; + container l3 { + description + "Exclude L4 port info from hash calculation"; + container global { + presence "Indicates a global node is configured."; + description + "configure globally system wide"; + } + } + container l4 { + description + "Load balancing at layer 4"; + container gtp { + presence "Indicates a gtp node is configured."; + description + "Includes GTP TEID for hash calculation"; + } + } + container ipv6 { + description + "Use ipv6 fields for load-balancing"; + container disable-flow-label { + presence "Indicates a disable-flow-label node is configured."; + description + "Exclude ipv6 flow-label from hash calculation"; + } + } + container mpls { + description + "Use mpls fields for load-balancing"; + container entropy-label { + presence "Indicates a entropy-label node is configured."; + description + "Include mpls entropy-label in addition for hashing"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-pd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-pd-cfg.yang new file mode 100644 index 000000000..c1d2fef5b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cef-pd-cfg.yang @@ -0,0 +1,54 @@ +module Cisco-IOS-XR-um-cef-pd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cef-pd-cfg"; + prefix um-cef-pd-cfg; + + 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 cef-pd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container cef-pd { + description + "cef platform specific options"; + container one-hop-imp-null-te-tunnel { + description + "single hop implicit-null mpls-te tunnel"; + container stats { + description + "statistics"; + container disable { + presence "Indicates a disable node is configured."; + description + "turn off"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cfg-mibs-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cfg-mibs-cfg.yang new file mode 100644 index 000000000..a7a3a9ad5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cfg-mibs-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-um-cfg-mibs-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cfg-mibs-cfg"; + prefix um-cfg-mibs-cfg; + + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 cfg-mibs package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-03-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container config { + presence "Indicates a config node is configured."; + description + "Enable SNMP config traps"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cinetd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cinetd-cfg.yang new file mode 100644 index 000000000..4337cb1ef --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cinetd-cfg.yang @@ -0,0 +1,51 @@ +module Cisco-IOS-XR-um-cinetd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cinetd-cfg"; + prefix um-cinetd-cfg; + + 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 cinetd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-03-27 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container cinetd { + description + "Global Cisco inetd configuration commands"; + leaf rate-limit { + type uint32 { + range "1..100" { + description + "Number of service requests accepted per second (default 1)"; + } + } + description + "Cisco inetd rate-limit of service requests"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cli-alias-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cli-alias-cfg.yang new file mode 100644 index 000000000..bb2cfe51f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cli-alias-cfg.yang @@ -0,0 +1,305 @@ +module Cisco-IOS-XR-um-cli-alias-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cli-alias-cfg"; + prefix um-cli-alias-cfg; + + 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 cli-alias package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-03 { + description + "Added containers submode-cli-blk and neutral under service"; + semver:module-version "1.1.0"; + } + revision 2021-02-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature classic-admin-config { + description + "Classic admin configuration supported"; + } + + container admin { + if-feature "classic-admin-config"; + description + "Admin configuration"; + container alias { + description + "Create an alias for entity"; + container aliases { + description + "Alias name"; + list alias { + key "alias-name"; + description + "Alias name"; + leaf alias-name { + type string { + length "1..30" { + description + "Alias name"; + } + } + description + "Alias name"; + } + leaf alias-body { + type string { + length "1..1014" { + description + "Alias body with optional parameters e.g,(name) show $name"; + } + } + mandatory true; + description + "Alias body with optional parameters e.g,(name) show $name"; + } + } + } + } + } + container service { + description + "Modify use of network based services"; + container cli { + description + "cli configuration services"; + container interactive { + description + "Change interactive behavior of commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable commands from being interactive"; + } + } + container indentation { + description + "indentation tracking"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable the indentation"; + } + } + container submode-exit { + description + "Exit submode when only '!' seen in interactive mode"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the feature"; + } + } + container commit-optimized { + description + "Enable optimization for regular commit"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the feature"; + } + } + container delete-optimize { + description + "Enable delete optimize configuration"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the feature"; + } + } + container configuration { + description + "allowing to configuration submode"; + container disable { + description + "disable for read-only access users"; + leaf usergroup { + type string { + length "1..800" { + description + "Usergroup name"; + } + } + description + "Disable config mode for usergroup"; + } + } + } + container history { + description + "cli commands history"; + leaf size { + type uint32 { + range "1000..5000" { + description + "maximum number of entries"; + } + } + description + "maximum number of commands in history"; + } + } + container flex-cli-local-override { + description + "Enable Flex cli local config override"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the feature"; + } + } + container submode-cli-blk { + description + "Enable into submode-cli mode"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the submode cli feature"; + } + } + container neutral { + description + "Enable neutral configuration"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable BLM cli feature"; + } + } + } + } + container logging { + description + "Modify message logging facilities"; + container suppress { + description + "Suppress logging behaviour"; + container deprecated { + presence "Indicates a deprecated node is configured."; + description + "Enable deprecated message display"; + } + } + } + container alias { + description + "Create an alias for entity"; + container aliases { + description + "Alias name"; + list alias { + key "alias-name"; + description + "Alias name"; + leaf alias-name { + type string { + length "1..30" { + description + "Alias name"; + } + } + description + "Alias name"; + } + leaf alias-body { + type string { + length "1..1014" { + description + "Alias body with optional parameters e.g,(name) show $name"; + } + } + mandatory true; + description + "Alias body with optional parameters e.g,(name) show $name"; + } + } + } + container exec { + description + "Exec command alias"; + list alias { + key "exec-alias-name"; + description + "Exec Alias name"; + leaf exec-alias-name { + type string { + length "1..30" { + description + "Exec Alias name"; + } + } + description + "Exec Alias name"; + } + leaf aliased-exec-command { + type string { + length "1..800" { + description + "Aliased exec command"; + } + } + mandatory true; + description + "Aliased exec command"; + } + } + } + container config { + description + "Config command alias"; + list alias { + key "config-alias-name"; + description + "Config Alias name"; + leaf config-alias-name { + type string { + length "1..30" { + description + "Config Alias name"; + } + } + description + "Config Alias name"; + } + leaf aliased-config-command { + type string { + length "1..800" { + description + "Aliased config command"; + } + } + mandatory true; + description + "Aliased config command"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-cfg.yang new file mode 100644 index 000000000..e5a4f7352 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-cfg.yang @@ -0,0 +1,2970 @@ +module Cisco-IOS-XR-um-clock-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-clock-cfg"; + prefix um-clock-cfg; + + 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 clock package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-07-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container clock { + description + "Configure time-of-day clock"; + container timezone { + description + "Configure time zone"; + container Africa-Accra { + presence "Indicates this node is configured."; + description + "GMT Africa/Accra 0:00"; + } + container Africa-Addis_Ababa { + presence "Indicates this node is configured."; + description + "EAT Africa/Addis_Ababa 3:00"; + } + container Africa-Algiers { + presence "Indicates this node is configured."; + description + "CET Africa/Algiers 1:00"; + } + container Africa-Asmara { + presence "Indicates this node is configured."; + description + "EAT Africa/Asmara 3:00"; + } + container Africa-Asmera { + presence "Indicates this node is configured."; + description + "EAT Africa/Asmera 3:00"; + } + container Africa-Bamako { + presence "Indicates this node is configured."; + description + "GMT Africa/Bamako 0:00"; + } + container Africa-Bangui { + presence "Indicates this node is configured."; + description + "WAT Africa/Bangui 1:00"; + } + container Africa-Banjul { + presence "Indicates this node is configured."; + description + "GMT Africa/Banjul 0:00"; + } + container Africa-Bissau { + presence "Indicates this node is configured."; + description + "GMT Africa/Bissau 0:00"; + } + container Africa-Blantyre { + presence "Indicates this node is configured."; + description + "CAT Africa/Blantyre 2:00"; + } + container Africa-Brazzaville { + presence "Indicates this node is configured."; + description + "WAT Africa/Brazzaville 1:00"; + } + container Africa-Bujumbura { + presence "Indicates this node is configured."; + description + "CAT Africa/Bujumbura 2:00"; + } + container Africa-Cairo { + presence "Indicates this node is configured."; + description + "EET Africa/Cairo 2:00"; + } + container Africa-Casablanca { + presence "Indicates this node is configured."; + description + "+01 Africa/Casablanca 1:00"; + } + container Africa-Ceuta { + presence "Indicates this node is configured."; + description + "CET Africa/Ceuta 1:00"; + } + container Africa-Conakry { + presence "Indicates this node is configured."; + description + "GMT Africa/Conakry 0:00"; + } + container Africa-Dakar { + presence "Indicates this node is configured."; + description + "GMT Africa/Dakar 0:00"; + } + container Africa-Dar_es_Salaam { + presence "Indicates this node is configured."; + description + "EAT Africa/Dar_es_Salaam 3:00"; + } + container Africa-Djibouti { + presence "Indicates this node is configured."; + description + "EAT Africa/Djibouti 3:00"; + } + container Africa-Douala { + presence "Indicates this node is configured."; + description + "WAT Africa/Douala 1:00"; + } + container Africa-El_Aaiun { + presence "Indicates this node is configured."; + description + "+01 Africa/El_Aaiun 1:00"; + } + container Africa-Freetown { + presence "Indicates this node is configured."; + description + "GMT Africa/Freetown 0:00"; + } + container Africa-Gaborone { + presence "Indicates this node is configured."; + description + "CAT Africa/Gaborone 2:00"; + } + container Africa-Harare { + presence "Indicates this node is configured."; + description + "CAT Africa/Harare 2:00"; + } + container Africa-Johannesburg { + presence "Indicates this node is configured."; + description + "SAST Africa/Johannesburg 2:00"; + } + container Africa-Juba { + presence "Indicates this node is configured."; + description + "EAT Africa/Juba 3:00"; + } + container Africa-Kampala { + presence "Indicates this node is configured."; + description + "EAT Africa/Kampala 3:00"; + } + container Africa-Khartoum { + presence "Indicates this node is configured."; + description + "CAT Africa/Khartoum 2:00"; + } + container Africa-Kigali { + presence "Indicates this node is configured."; + description + "CAT Africa/Kigali 2:00"; + } + container Africa-Kinshasa { + presence "Indicates this node is configured."; + description + "WAT Africa/Kinshasa 1:00"; + } + container Africa-Lagos { + presence "Indicates this node is configured."; + description + "WAT Africa/Lagos 1:00"; + } + container Africa-Libreville { + presence "Indicates this node is configured."; + description + "WAT Africa/Libreville 1:00"; + } + container Africa-Lome { + presence "Indicates this node is configured."; + description + "GMT Africa/Lome 0:00"; + } + container Africa-Luanda { + presence "Indicates this node is configured."; + description + "WAT Africa/Luanda 1:00"; + } + container Africa-Lubumbashi { + presence "Indicates this node is configured."; + description + "CAT Africa/Lubumbashi 2:00"; + } + container Africa-Lusaka { + presence "Indicates this node is configured."; + description + "CAT Africa/Lusaka 2:00"; + } + container Africa-Malabo { + presence "Indicates this node is configured."; + description + "WAT Africa/Malabo 1:00"; + } + container Africa-Maputo { + presence "Indicates this node is configured."; + description + "CAT Africa/Maputo 2:00"; + } + container Africa-Maseru { + presence "Indicates this node is configured."; + description + "SAST Africa/Maseru 2:00"; + } + container Africa-Mbabane { + presence "Indicates this node is configured."; + description + "SAST Africa/Mbabane 2:00"; + } + container Africa-Mogadishu { + presence "Indicates this node is configured."; + description + "EAT Africa/Mogadishu 3:00"; + } + container Africa-Monrovia { + presence "Indicates this node is configured."; + description + "GMT Africa/Monrovia 0:00"; + } + container Africa-Nairobi { + presence "Indicates this node is configured."; + description + "EAT Africa/Nairobi 3:00"; + } + container Africa-Ndjamena { + presence "Indicates this node is configured."; + description + "WAT Africa/Ndjamena 1:00"; + } + container Africa-Niamey { + presence "Indicates this node is configured."; + description + "WAT Africa/Niamey 1:00"; + } + container Africa-Nouakchott { + presence "Indicates this node is configured."; + description + "GMT Africa/Nouakchott 0:00"; + } + container Africa-Ouagadougou { + presence "Indicates this node is configured."; + description + "GMT Africa/Ouagadougou 0:00"; + } + container Africa-Porto-Novo { + presence "Indicates this node is configured."; + description + "WAT Africa/Porto-Novo 1:00"; + } + container Africa-Sao_Tome { + presence "Indicates this node is configured."; + description + "GMT Africa/Sao_Tome 0:00"; + } + container Africa-Timbuktu { + presence "Indicates this node is configured."; + description + "GMT Africa/Timbuktu 0:00"; + } + container Africa-Tripoli { + presence "Indicates this node is configured."; + description + "EET Africa/Tripoli 2:00"; + } + container Africa-Tunis { + presence "Indicates this node is configured."; + description + "CET Africa/Tunis 1:00"; + } + container Africa-Windhoek { + presence "Indicates this node is configured."; + description + "CAT Africa/Windhoek 2:00"; + } + container America-Adak { + presence "Indicates this node is configured."; + description + "HST America/Adak -10:00"; + } + container America-Anchorage { + presence "Indicates this node is configured."; + description + "AKST America/Anchorage -9:00"; + } + container America-Anguilla { + presence "Indicates this node is configured."; + description + "AST America/Anguilla -4:00"; + } + container America-Antigua { + presence "Indicates this node is configured."; + description + "AST America/Antigua -4:00"; + } + container America-Araguaina { + presence "Indicates this node is configured."; + description + "-03 America/Araguaina -3:00"; + } + container America-Argentina-Buenos_Aires { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Buenos_Aires -3:00"; + } + container America-Argentina-Catamarca { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Catamarca -3:00"; + } + container America-Argentina-ComodRivadavia { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/ComodRivadavia -3:00"; + } + container America-Argentina-Cordoba { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Cordoba -3:00"; + } + container America-Argentina-Jujuy { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Jujuy -3:00"; + } + container America-Argentina-La_Rioja { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/La_Rioja -3:00"; + } + container America-Argentina-Mendoza { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Mendoza -3:00"; + } + container America-Argentina-Rio_Gallegos { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Rio_Gallegos -3:00"; + } + container America-Argentina-Salta { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Salta -3:00"; + } + container America-Argentina-San_Juan { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/San_Juan -3:00"; + } + container America-Argentina-San_Luis { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/San_Luis -3:00"; + } + container America-Argentina-Tucuman { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Tucuman -3:00"; + } + container America-Argentina-Argentina-Ushuaia { + presence "Indicates this node is configured."; + description + "-03 America/Argentina/Argentina/Ushuaia -3:00"; + } + container America-Aruba { + presence "Indicates this node is configured."; + description + "AST America/Aruba -4:00"; + } + container America-Atikokan { + presence "Indicates this node is configured."; + description + "EST America/Atikokan -5:00"; + } + container America-Atka { + presence "Indicates this node is configured."; + description + "HST America/Atka -10:00"; + } + container America-Bahia { + presence "Indicates this node is configured."; + description + "-03 America/Bahia -3:00"; + } + container America-Bahia_Banderas { + presence "Indicates this node is configured."; + description + "CST America/Bahia_Banderas -6:00"; + } + container America-Barbados { + presence "Indicates this node is configured."; + description + "AST America/Barbados -4:00"; + } + container America-Belem { + presence "Indicates this node is configured."; + description + "-03 America/Belem -3:00"; + } + container America-Belize { + presence "Indicates this node is configured."; + description + "CST America/Belize -6:00"; + } + container America-Blanc-Sablon { + presence "Indicates this node is configured."; + description + "AST America/Blanc-Sablon -4:00"; + } + container America-Boa_Vista { + presence "Indicates this node is configured."; + description + "-04 America/Boa_Vista -4:00"; + } + container America-Bogota { + presence "Indicates this node is configured."; + description + "-05 America/Bogota -5:00"; + } + container America-Boise { + presence "Indicates this node is configured."; + description + "MST America/Boise -7:00"; + } + container America-Buenos_Aires { + presence "Indicates this node is configured."; + description + "-03 America/Buenos_Aires -3:00"; + } + container America-Cambridge_Bay { + presence "Indicates this node is configured."; + description + "MST America/Cambridge_Bay -7:00"; + } + container America-Campo_Grande { + presence "Indicates this node is configured."; + description + "-04 America/Campo_Grande -4:00"; + } + container America-Cancun { + presence "Indicates this node is configured."; + description + "EST America/Cancun -5:00"; + } + container America-Caracas { + presence "Indicates this node is configured."; + description + "-04 America/Caracas -4:00"; + } + container America-Catamarca { + presence "Indicates this node is configured."; + description + "-03 America/Catamarca -3:00"; + } + container America-Cayenne { + presence "Indicates this node is configured."; + description + "-03 America/Cayenne -3:00"; + } + container America-Cayman { + presence "Indicates this node is configured."; + description + "EST America/Cayman -5:00"; + } + container America-Chicago { + presence "Indicates this node is configured."; + description + "CST America/Chicago -6:00"; + } + container America-Chihuahua { + presence "Indicates this node is configured."; + description + "MST America/Chihuahua -7:00"; + } + container America-Coral_Harbour { + presence "Indicates this node is configured."; + description + "EST America/Coral_Harbour -5:00"; + } + container America-Cordoba { + presence "Indicates this node is configured."; + description + "-03 America/Cordoba -3:00"; + } + container America-Costa_Rica { + presence "Indicates this node is configured."; + description + "CST America/Costa_Rica -6:00"; + } + container America-Creston { + presence "Indicates this node is configured."; + description + "MST America/Creston -7:00"; + } + container America-Cuiaba { + presence "Indicates this node is configured."; + description + "-04 America/Cuiaba -4:00"; + } + container America-Curacao { + presence "Indicates this node is configured."; + description + "AST America/Curacao -4:00"; + } + container America-Danmarkshavn { + presence "Indicates this node is configured."; + description + "GMT America/Danmarkshavn 0:00"; + } + container America-Dawson { + presence "Indicates this node is configured."; + description + "PST America/Dawson -8:00"; + } + container America-Dawson_Creek { + presence "Indicates this node is configured."; + description + "MST America/Dawson_Creek -7:00"; + } + container America-Denver { + presence "Indicates this node is configured."; + description + "MST America/Denver -7:00"; + } + container America-Detroit { + presence "Indicates this node is configured."; + description + "EST America/Detroit -5:00"; + } + container America-Dominica { + presence "Indicates this node is configured."; + description + "AST America/Dominica -4:00"; + } + container America-Edmonton { + presence "Indicates this node is configured."; + description + "MST America/Edmonton -7:00"; + } + container America-Eirunepe { + presence "Indicates this node is configured."; + description + "-05 America/Eirunepe -5:00"; + } + container America-El_Salvador { + presence "Indicates this node is configured."; + description + "CST America/El_Salvador -6:00"; + } + container America-Ensenada { + presence "Indicates this node is configured."; + description + "PST America/Ensenada -8:00"; + } + container America-Fort_Nelson { + presence "Indicates this node is configured."; + description + "MST America/Fort_Nelson -7:00"; + } + container America-Fort_Wayne { + presence "Indicates this node is configured."; + description + "EST America/Fort_Wayne -5:00"; + } + container America-Fortaleza { + presence "Indicates this node is configured."; + description + "-03 America/Fortaleza -3:00"; + } + container America-Glace_Bay { + presence "Indicates this node is configured."; + description + "AST America/Glace_Bay -4:00"; + } + container America-Godthab { + presence "Indicates this node is configured."; + description + "-03 America/Godthab -3:00"; + } + container America-Goose_Bay { + presence "Indicates this node is configured."; + description + "AST America/Goose_Bay -4:00"; + } + container America-Grand_Turk { + presence "Indicates this node is configured."; + description + "EST America/Grand_Turk -5:00"; + } + container America-Grenada { + presence "Indicates this node is configured."; + description + "AST America/Grenada -4:00"; + } + container America-Guadeloupe { + presence "Indicates this node is configured."; + description + "AST America/Guadeloupe -4:00"; + } + container America-Guatemala { + presence "Indicates this node is configured."; + description + "CST America/Guatemala -6:00"; + } + container America-Guayaquil { + presence "Indicates this node is configured."; + description + "-05 America/Guayaquil -5:00"; + } + container America-Guyana { + presence "Indicates this node is configured."; + description + "-04 America/Guyana -4:00"; + } + container America-Halifax { + presence "Indicates this node is configured."; + description + "AST America/Halifax -4:00"; + } + container America-Havana { + presence "Indicates this node is configured."; + description + "CST America/Havana -6:00"; + } + container America-Hermosillo { + presence "Indicates this node is configured."; + description + "MST America/Hermosillo -7:00"; + } + container America-Indiana-Indianapolis { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Indianapolis -5:00"; + } + container America-Indiana-Knox { + presence "Indicates this node is configured."; + description + "CST America/Indiana/Knox -6:00"; + } + container America-Indiana-Marengo { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Marengo -5:00"; + } + container America-Indiana-Petersburg { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Petersburg -5:00"; + } + container America-Indiana-Tell_City { + presence "Indicates this node is configured."; + description + "CST America/Indiana/Tell_City -6:00"; + } + container America-Indiana-Vevay { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Vevay -5:00"; + } + container America-Indiana-Vincennes { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Vincennes -5:00"; + } + container America-Indiana-Winamac { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Winamac -5:00"; + } + container America-Indianapolis { + presence "Indicates this node is configured."; + description + "EST America/Indianapolis -5:00"; + } + container America-Inuvik { + presence "Indicates this node is configured."; + description + "MST America/Inuvik -7:00"; + } + container America-Iqaluit { + presence "Indicates this node is configured."; + description + "EST America/Iqaluit -5:00"; + } + container America-Jamaica { + presence "Indicates this node is configured."; + description + "EST America/Jamaica -5:00"; + } + container America-Jujuy { + presence "Indicates this node is configured."; + description + "-03 America/Jujuy -3:00"; + } + container America-Juneau { + presence "Indicates this node is configured."; + description + "AKST America/Juneau -9:00"; + } + container America-Kentucky-Louisville { + presence "Indicates this node is configured."; + description + "EST America/Kentucky/Louisville -5:00"; + } + container America-Kentucky-Monticello { + presence "Indicates this node is configured."; + description + "EST America/Kentucky/Monticello -5:00"; + } + container America-Knox_IN { + presence "Indicates this node is configured."; + description + "CST America/Knox_IN -6:00"; + } + container America-Kralendijk { + presence "Indicates this node is configured."; + description + "AST America/Kralendijk -4:00"; + } + container America-La_Paz { + presence "Indicates this node is configured."; + description + "-04 America/La_Paz -4:00"; + } + container America-Lima { + presence "Indicates this node is configured."; + description + "-05 America/Lima -5:00"; + } + container America-Los_Angeles { + presence "Indicates this node is configured."; + description + "PST America/Los_Angeles -8:00"; + } + container America-Louisville { + presence "Indicates this node is configured."; + description + "EST America/Louisville -5:00"; + } + container America-Lower_Princes { + presence "Indicates this node is configured."; + description + "AST America/Lower_Princes -4:00"; + } + container America-Maceio { + presence "Indicates this node is configured."; + description + "-03 America/Maceio -3:00"; + } + container America-Managua { + presence "Indicates this node is configured."; + description + "CST America/Managua -6:00"; + } + container America-Manaus { + presence "Indicates this node is configured."; + description + "-04 America/Manaus -4:00"; + } + container America-Marigot { + presence "Indicates this node is configured."; + description + "AST America/Marigot -4:00"; + } + container America-Martinique { + presence "Indicates this node is configured."; + description + "AST America/Martinique -4:00"; + } + container America-Matamoros { + presence "Indicates this node is configured."; + description + "CST America/Matamoros -6:00"; + } + container America-Mazatlan { + presence "Indicates this node is configured."; + description + "MST America/Mazatlan -7:00"; + } + container America-Mendoza { + presence "Indicates this node is configured."; + description + "-03 America/Mendoza -3:00"; + } + container America-Menominee { + presence "Indicates this node is configured."; + description + "CST America/Menominee -6:00"; + } + container America-Merida { + presence "Indicates this node is configured."; + description + "CST America/Merida -6:00"; + } + container America-Metlakatla { + presence "Indicates this node is configured."; + description + "AKST America/Metlakatla -9:00"; + } + container America-Mexico_City { + presence "Indicates this node is configured."; + description + "CST America/Mexico_City -6:00"; + } + container America-Miquelon { + presence "Indicates this node is configured."; + description + "-03 America/Miquelon -3:00"; + } + container America-Moncton { + presence "Indicates this node is configured."; + description + "AST America/Moncton -4:00"; + } + container America-Monterrey { + presence "Indicates this node is configured."; + description + "CST America/Monterrey -6:00"; + } + container America-Montevideo { + presence "Indicates this node is configured."; + description + "-03 America/Montevideo -3:00"; + } + container America-Montreal { + presence "Indicates this node is configured."; + description + "EST America/Montreal -5:00"; + } + container America-Montserrat { + presence "Indicates this node is configured."; + description + "AST America/Montserrat -4:00"; + } + container America-Nassau { + presence "Indicates this node is configured."; + description + "EST America/Nassau -5:00"; + } + container America-New_York { + presence "Indicates this node is configured."; + description + "EST America/New_York -5:00"; + } + container America-Nipigon { + presence "Indicates this node is configured."; + description + "EST America/Nipigon -5:00"; + } + container America-Nome { + presence "Indicates this node is configured."; + description + "AKST America/Nome -9:00"; + } + container America-Noronha { + presence "Indicates this node is configured."; + description + "-02 America/Noronha -2:00"; + } + container America-North_Dakota-Beulah { + presence "Indicates this node is configured."; + description + "CST America/North_Dakota/Beulah -6:00"; + } + container America-North_Dakota-Center { + presence "Indicates this node is configured."; + description + "CST America/North_Dakota/Center -6:00"; + } + container America-North_Dakota-New_Salem { + presence "Indicates this node is configured."; + description + "CST America/North_Dakota/New_Salem -6:00"; + } + container America-Ojinaga { + presence "Indicates this node is configured."; + description + "MST America/Ojinaga -7:00"; + } + container America-Panama { + presence "Indicates this node is configured."; + description + "EST America/Panama -5:00"; + } + container America-Pangnirtung { + presence "Indicates this node is configured."; + description + "EST America/Pangnirtung -5:00"; + } + container America-Paramaribo { + presence "Indicates this node is configured."; + description + "-03 America/Paramaribo -3:00"; + } + container America-Phoenix { + presence "Indicates this node is configured."; + description + "MST America/Phoenix -7:00"; + } + container America-Port-au-Prince { + presence "Indicates this node is configured."; + description + "EST America/Port-au-Prince -5:00"; + } + container America-Port_of_Spain { + presence "Indicates this node is configured."; + description + "AST America/Port_of_Spain -4:00"; + } + container America-Porto_Acre { + presence "Indicates this node is configured."; + description + "-05 America/Porto_Acre -5:00"; + } + container America-Porto_Velho { + presence "Indicates this node is configured."; + description + "-04 America/Porto_Velho -4:00"; + } + container America-Puerto_Rico { + presence "Indicates this node is configured."; + description + "AST America/Puerto_Rico -4:00"; + } + container America-Punta_Arenas { + presence "Indicates this node is configured."; + description + "-03 America/Punta_Arenas -3:00"; + } + container America-Rainy_River { + presence "Indicates this node is configured."; + description + "CST America/Rainy_River -6:00"; + } + container America-Rankin_Inlet { + presence "Indicates this node is configured."; + description + "CST America/Rankin_Inlet -6:00"; + } + container America-Recife { + presence "Indicates this node is configured."; + description + "-03 America/Recife -3:00"; + } + container America-Regina { + presence "Indicates this node is configured."; + description + "CST America/Regina -6:00"; + } + container America-Resolute { + presence "Indicates this node is configured."; + description + "CST America/Resolute -6:00"; + } + container America-Rio_Branco { + presence "Indicates this node is configured."; + description + "-05 America/Rio_Branco -5:00"; + } + container America-Rosario { + presence "Indicates this node is configured."; + description + "-03 America/Rosario -3:00"; + } + container America-Santa_Isabel { + presence "Indicates this node is configured."; + description + "PST America/Santa_Isabel -8:00"; + } + container America-Santarem { + presence "Indicates this node is configured."; + description + "-03 America/Santarem -3:00"; + } + container America-Santiago { + presence "Indicates this node is configured."; + description + "-04 America/Santiago -4:00"; + } + container America-Santo_Domingo { + presence "Indicates this node is configured."; + description + "AST America/Santo_Domingo -4:00"; + } + container America-Sao_Paulo { + presence "Indicates this node is configured."; + description + "-03 America/Sao_Paulo -3:00"; + } + container America-Scoresbysund { + presence "Indicates this node is configured."; + description + "-01 America/Scoresbysund -1:00"; + } + container America-Shiprock { + presence "Indicates this node is configured."; + description + "MST America/Shiprock -7:00"; + } + container America-Sitka { + presence "Indicates this node is configured."; + description + "AKST America/Sitka -9:00"; + } + container America-St_Barthelemy { + presence "Indicates this node is configured."; + description + "AST America/St_Barthelemy -4:00"; + } + container America-St_Johns { + presence "Indicates this node is configured."; + description + "NST America/St_Johns -3:30"; + } + container America-St_Kitts { + presence "Indicates this node is configured."; + description + "AST America/St_Kitts -4:00"; + } + container America-St_Lucia { + presence "Indicates this node is configured."; + description + "AST America/St_Lucia -4:00"; + } + container America-St_Thomas { + presence "Indicates this node is configured."; + description + "AST America/St_Thomas -4:00"; + } + container America-St_Vincent { + presence "Indicates this node is configured."; + description + "AST America/St_Vincent -4:00"; + } + container America-Swift_Current { + presence "Indicates this node is configured."; + description + "CST America/Swift_Current -6:00"; + } + container America-Tegucigalpa { + presence "Indicates this node is configured."; + description + "CST America/Tegucigalpa -6:00"; + } + container America-Thule { + presence "Indicates this node is configured."; + description + "AST America/Thule -4:00"; + } + container America-Thunder_Bay { + presence "Indicates this node is configured."; + description + "EST America/Thunder_Bay -5:00"; + } + container America-Tijuana { + presence "Indicates this node is configured."; + description + "PST America/Tijuana -8:00"; + } + container America-Toronto { + presence "Indicates this node is configured."; + description + "EST America/Toronto -5:00"; + } + container America-Tortola { + presence "Indicates this node is configured."; + description + "AST America/Tortola -4:00"; + } + container America-Vancouver { + presence "Indicates this node is configured."; + description + "PST America/Vancouver -8:00"; + } + container America-Virgin { + presence "Indicates this node is configured."; + description + "AST America/Virgin -4:00"; + } + container America-Whitehorse { + presence "Indicates this node is configured."; + description + "PST America/Whitehorse -8:00"; + } + container America-Winnipeg { + presence "Indicates this node is configured."; + description + "CST America/Winnipeg -6:00"; + } + container America-Yakutat { + presence "Indicates this node is configured."; + description + "AKST America/Yakutat -9:00"; + } + container America-Yellowknife { + presence "Indicates this node is configured."; + description + "MST America/Yellowknife -7:00"; + } + container Antarctica-Casey { + presence "Indicates this node is configured."; + description + "+08 Antarctica/Casey 8:00"; + } + container Antarctica-Davis { + presence "Indicates this node is configured."; + description + "+07 Antarctica/Davis 7:00"; + } + container Antarctica-DumontDUrville { + presence "Indicates this node is configured."; + description + "+10 Antarctica/DumontDUrville 10:00"; + } + container Antarctica-Macquarie { + presence "Indicates this node is configured."; + description + "+11 Antarctica/Macquarie 11:00"; + } + container Antarctica-Mawson { + presence "Indicates this node is configured."; + description + "+05 Antarctica/Mawson 5:00"; + } + container Antarctica-McMurdo { + presence "Indicates this node is configured."; + description + "NZST Antarctica/McMurdo 12:00"; + } + container Antarctica-Palmer { + presence "Indicates this node is configured."; + description + "-03 Antarctica/Palmer -3:00"; + } + container Antarctica-Rothera { + presence "Indicates this node is configured."; + description + "-03 Antarctica/Rothera -3:00"; + } + container Antarctica-South_Pole { + presence "Indicates this node is configured."; + description + "NZST Antarctica/South_Pole 12:00"; + } + container Antarctica-Syowa { + presence "Indicates this node is configured."; + description + "+03 Antarctica/Syowa 3:00"; + } + container Antarctica-Troll { + presence "Indicates this node is configured."; + description + "+00 Antarctica/Troll 0:00"; + } + container Antarctica-Vostok { + presence "Indicates this node is configured."; + description + "+06 Antarctica/Vostok 6:00"; + } + container Asia-Aden { + presence "Indicates this node is configured."; + description + "+03 Asia/Aden 3:00"; + } + container Asia-Almaty { + presence "Indicates this node is configured."; + description + "+06 Asia/Almaty 6:00"; + } + container Asia-Amman { + presence "Indicates this node is configured."; + description + "EET Asia/Amman 2:00"; + } + container Asia-Anadyr { + presence "Indicates this node is configured."; + description + "+12 Asia/Anadyr 12:00"; + } + container Asia-Aqtau { + presence "Indicates this node is configured."; + description + "+05 Asia/Aqtau 5:00"; + } + container Asia-Aqtobe { + presence "Indicates this node is configured."; + description + "+05 Asia/Aqtobe 5:00"; + } + container Asia-Ashgabat { + presence "Indicates this node is configured."; + description + "+05 Asia/Ashgabat 5:00"; + } + container Asia-Ashkhabad { + presence "Indicates this node is configured."; + description + "+05 Asia/Ashkhabad 5:00"; + } + container Asia-Atyrau { + presence "Indicates this node is configured."; + description + "+05 Asia/Atyrau 5:00"; + } + container Asia-Baghdad { + presence "Indicates this node is configured."; + description + "+03 Asia/Baghdad 3:00"; + } + container Asia-Bahrain { + presence "Indicates this node is configured."; + description + "+03 Asia/Bahrain 3:00"; + } + container Asia-Baku { + presence "Indicates this node is configured."; + description + "+04 Asia/Baku 4:00"; + } + container Asia-Bangkok { + presence "Indicates this node is configured."; + description + "+07 Asia/Bangkok 7:00"; + } + container Asia-Barnaul { + presence "Indicates this node is configured."; + description + "+07 Asia/Barnaul 7:00"; + } + container Asia-Beirut { + presence "Indicates this node is configured."; + description + "EET Asia/Beirut 2:00"; + } + container Asia-Bishkek { + presence "Indicates this node is configured."; + description + "+06 Asia/Bishkek 6:00"; + } + container Asia-Brunei { + presence "Indicates this node is configured."; + description + "+08 Asia/Brunei 8:00"; + } + container Asia-Calcutta { + presence "Indicates this node is configured."; + description + "IST Asia/Calcutta 5:30"; + } + container Asia-Chita { + presence "Indicates this node is configured."; + description + "+09 Asia/Chita 9:00"; + } + container Asia-Choibalsan { + presence "Indicates this node is configured."; + description + "+08 Asia/Choibalsan 8:00"; + } + container Asia-Chongqing { + presence "Indicates this node is configured."; + description + "CST Asia/Chongqing 8:00"; + } + container Asia-Chungking { + presence "Indicates this node is configured."; + description + "CST Asia/Chungking 8:00"; + } + container Asia-Colombo { + presence "Indicates this node is configured."; + description + "+0530 Asia/Colombo 5:30"; + } + container Asia-Dacca { + presence "Indicates this node is configured."; + description + "+06 Asia/Dacca 6:00"; + } + container Asia-Damascus { + presence "Indicates this node is configured."; + description + "EET Asia/Damascus 2:00"; + } + container Asia-Dhaka { + presence "Indicates this node is configured."; + description + "+06 Asia/Dhaka 6:00"; + } + container Asia-Dili { + presence "Indicates this node is configured."; + description + "+09 Asia/Dili 9:00"; + } + container Asia-Dubai { + presence "Indicates this node is configured."; + description + "+04 Asia/Dubai 4:00"; + } + container Asia-Dushanbe { + presence "Indicates this node is configured."; + description + "+05 Asia/Dushanbe 5:00"; + } + container Asia-Famagusta { + presence "Indicates this node is configured."; + description + "EET Asia/Famagusta 2:00"; + } + container Asia-Gaza { + presence "Indicates this node is configured."; + description + "EET Asia/Gaza 2:00"; + } + container Asia-Harbin { + presence "Indicates this node is configured."; + description + "CST Asia/Harbin 8:00"; + } + container Asia-Hebron { + presence "Indicates this node is configured."; + description + "EET Asia/Hebron 2:00"; + } + container Asia-Ho_Chi_Minh { + presence "Indicates this node is configured."; + description + "+07 Asia/Ho_Chi_Minh 7:00"; + } + container Asia-Hong_Kong { + presence "Indicates this node is configured."; + description + "HKT Asia/Hong_Kong 8:00"; + } + container Asia-Hovd { + presence "Indicates this node is configured."; + description + "+07 Asia/Hovd 7:00"; + } + container Asia-Irkutsk { + presence "Indicates this node is configured."; + description + "+08 Asia/Irkutsk 8:00"; + } + container Asia-Istanbul { + presence "Indicates this node is configured."; + description + "+03 Asia/Istanbul 3:00"; + } + container Asia-Jakarta { + presence "Indicates this node is configured."; + description + "WIB Asia/Jakarta 7:00"; + } + container Asia-Jayapura { + presence "Indicates this node is configured."; + description + "WIT Asia/Jayapura 9:00"; + } + container Asia-Jerusalem { + presence "Indicates this node is configured."; + description + "IST Asia/Jerusalem 5:30"; + } + container Asia-Kabul { + presence "Indicates this node is configured."; + description + "+0430 Asia/Kabul 4:30"; + } + container Asia-Kamchatka { + presence "Indicates this node is configured."; + description + "+12 Asia/Kamchatka 12:00"; + } + container Asia-Karachi { + presence "Indicates this node is configured."; + description + "PKT Asia/Karachi 5:00"; + } + container Asia-Kashgar { + presence "Indicates this node is configured."; + description + "+06 Asia/Kashgar 6:00"; + } + container Asia-Kathmandu { + presence "Indicates this node is configured."; + description + "+0545 Asia/Kathmandu 05:45"; + } + container Asia-Katmandu { + presence "Indicates this node is configured."; + description + "+0545 Asia/Katmandu 05:45"; + } + container Asia-Khandyga { + presence "Indicates this node is configured."; + description + "+09 Asia/Khandyga 9:00"; + } + container Asia-Kolkata { + presence "Indicates this node is configured."; + description + "IST Asia/Kolkata 5:30"; + } + container Asia-Krasnoyarsk { + presence "Indicates this node is configured."; + description + "+07 Asia/Krasnoyarsk 7:00"; + } + container Asia-Kuala_Lumpur { + presence "Indicates this node is configured."; + description + "+08 Asia/Kuala_Lumpur 8:00"; + } + container Asia-Kuching { + presence "Indicates this node is configured."; + description + "+08 Asia/Kuching 8:00"; + } + container Asia-Kuwait { + presence "Indicates this node is configured."; + description + "+03 Asia/Kuwait 3:00"; + } + container Asia-Macao { + presence "Indicates this node is configured."; + description + "CST Asia/Macao 8:00"; + } + container Asia-Macau { + presence "Indicates this node is configured."; + description + "CST Asia/Macau 8:00"; + } + container Asia-Magadan { + presence "Indicates this node is configured."; + description + "+11 Asia/Magadan 11:00"; + } + container Asia-Makassar { + presence "Indicates this node is configured."; + description + "WITA Asia/Makassar 8:00"; + } + container Asia-Manila { + presence "Indicates this node is configured."; + description + "PST Asia/Manila 8:00"; + } + container Asia-Muscat { + presence "Indicates this node is configured."; + description + "+04 Asia/Muscat 4:00"; + } + container Asia-Nicosia { + presence "Indicates this node is configured."; + description + "EET Asia/Nicosia 2:00"; + } + container Asia-Novokuznetsk { + presence "Indicates this node is configured."; + description + "+07 Asia/Novokuznetsk 7:00"; + } + container Asia-Novosibirsk { + presence "Indicates this node is configured."; + description + "+07 Asia/Novosibirsk 7:00"; + } + container Asia-Omsk { + presence "Indicates this node is configured."; + description + "+06 Asia/Omsk 6:00"; + } + container Asia-Oral { + presence "Indicates this node is configured."; + description + "+05 Asia/Oral 5:00"; + } + container Asia-Phnom_Penh { + presence "Indicates this node is configured."; + description + "+07 Asia/Phnom_Penh 7:00"; + } + container Asia-Pontianak { + presence "Indicates this node is configured."; + description + "WIB Asia/Pontianak 7:00"; + } + container Asia-Pyongyang { + presence "Indicates this node is configured."; + description + "KST Asia/Pyongyang 9:00"; + } + container Asia-Qatar { + presence "Indicates this node is configured."; + description + "+03 Asia/Qatar 3:00"; + } + container Asia-Qostanay { + presence "Indicates this node is configured."; + description + "+06 Asia/Qostanay 6:00"; + } + container Asia-Qyzylorda { + presence "Indicates this node is configured."; + description + "+05 Asia/Qyzylorda 5:00"; + } + container Asia-Rangoon { + presence "Indicates this node is configured."; + description + "+0630 Asia/Rangoon 06:30"; + } + container Asia-Riyadh { + presence "Indicates this node is configured."; + description + "+03 Asia/Riyadh 3:00"; + } + container Asia-Saigon { + presence "Indicates this node is configured."; + description + "+07 Asia/Saigon 7:00"; + } + container Asia-Sakhalin { + presence "Indicates this node is configured."; + description + "+11 Asia/Sakhalin 11:00"; + } + container Asia-Samarkand { + presence "Indicates this node is configured."; + description + "+05 Asia/Samarkand 5:00"; + } + container Asia-Seoul { + presence "Indicates this node is configured."; + description + "KST Asia/Seoul 9:00"; + } + container Asia-Shanghai { + presence "Indicates this node is configured."; + description + "CST Asia/Shanghai 8:00"; + } + container Asia-Singapore { + presence "Indicates this node is configured."; + description + "+08 Asia/Singapore 8:00"; + } + container Asia-Srednekolymsk { + presence "Indicates this node is configured."; + description + "+11 Asia/Srednekolymsk 11:00"; + } + container Asia-Ujung_Pandang { + presence "Indicates this node is configured."; + description + "WITA Asia/Ujung_Pandang 8:00"; + } + container Asia-Ulaanbaatar { + presence "Indicates this node is configured."; + description + "+08 Asia/Ulaanbaatar 8:00"; + } + container Asia-Ulan_Bator { + presence "Indicates this node is configured."; + description + "+08 Asia/Ulan_Bator 8:00"; + } + container Asia-Urumqi { + presence "Indicates this node is configured."; + description + "+06 Asia/Urumqi 6:00"; + } + container Asia-Ust-Nera { + presence "Indicates this node is configured."; + description + "+10 Asia/Ust-Nera 10:00"; + } + container Asia-Taipei { + presence "Indicates this node is configured."; + description + "CST Asia/Taipei 8:00"; + } + container Asia-Tashkent { + presence "Indicates this node is configured."; + description + "+05 Asia/Tashkent 5:00"; + } + container Asia-Tbilisi { + presence "Indicates this node is configured."; + description + "+04 Asia/Tbilisi 4:00"; + } + container Asia-Tehran { + presence "Indicates this node is configured."; + description + "+0330 Asia/Tehran 3:30"; + } + container Asia-Tel_Aviv { + presence "Indicates this node is configured."; + description + "IST Asia/Tel_Aviv 2:00"; + } + container Asia-Thimbu { + presence "Indicates this node is configured."; + description + "+06 Asia/Thimbu 6:00"; + } + container Asia-Thimphu { + presence "Indicates this node is configured."; + description + "+06 Asia/Thimphu 6:00"; + } + container Asia-Tokyo { + presence "Indicates this node is configured."; + description + "JST Asia/Tokyo 9:00"; + } + container Asia-Tomsk { + presence "Indicates this node is configured."; + description + "+07 Asia/Tomsk 7:00"; + } + container Asia-Vientiane { + presence "Indicates this node is configured."; + description + "+07 Asia/Vientiane 7:00"; + } + container Asia-Vladivostok { + presence "Indicates this node is configured."; + description + "+10 Asia/Vladivostok 10:00"; + } + container Asia-Yakutsk { + presence "Indicates this node is configured."; + description + "+09 Asia/Yakutsk 9:00"; + } + container Asia-Yangon { + presence "Indicates this node is configured."; + description + "+0630 Asia/Yangon 06:30"; + } + container Asia-Yekaterinburg { + presence "Indicates this node is configured."; + description + "+05 Asia/Yekaterinburg 5:00"; + } + container Asia-Yerevan { + presence "Indicates this node is configured."; + description + "+04 Asia/Yerevan 4:00"; + } + container Atlantic-Azores { + presence "Indicates this node is configured."; + description + "-01 Atlantic/Azores -1:00"; + } + container Atlantic-Bermuda { + presence "Indicates this node is configured."; + description + "AST Atlantic/Bermuda -4:00"; + } + container Atlantic-Canary { + presence "Indicates this node is configured."; + description + "WET Atlantic/Canary 0:00"; + } + container Atlantic-Cape_Verde { + presence "Indicates this node is configured."; + description + "-01 Atlantic/Cape_Verde -1:00"; + } + container Atlantic-Faeroe { + presence "Indicates this node is configured."; + description + "WET Atlantic/Faeroe 0:00"; + } + container Atlantic-Faroe { + presence "Indicates this node is configured."; + description + "WET Atlantic/Faroe 0:00"; + } + container Atlantic-Jan_Mayen { + presence "Indicates this node is configured."; + description + "CET Atlantic/Jan_Mayen 1:00"; + } + container Atlantic-Madeira { + presence "Indicates this node is configured."; + description + "WET Atlantic/Madeira 0:00"; + } + container Atlantic-Reykjavik { + presence "Indicates this node is configured."; + description + "GMT Atlantic/Reykjavik 0:00"; + } + container Atlantic-South_Georgia { + presence "Indicates this node is configured."; + description + "-02 Atlantic/South_Georgia -2:00"; + } + container Atlantic-St_Helena { + presence "Indicates this node is configured."; + description + "GMT Atlantic/St_Helena 0:00"; + } + container Atlantic-Stanley { + presence "Indicates this node is configured."; + description + "-03 Atlantic/Stanley -3:00"; + } + container Australia-ACT { + presence "Indicates this node is configured."; + description + "AEST Australia/ACT 10:00"; + } + container Australia-Adelaide { + presence "Indicates this node is configured."; + description + "ACST Australia/Adelaide 9:30"; + } + container Australia-Brisbane { + presence "Indicates this node is configured."; + description + "AEST Australia/Brisbane 10:00"; + } + container Australia-Broken_Hill { + presence "Indicates this node is configured."; + description + "ACST Australia/Broken_Hill 9:30"; + } + container Australia-Canberra { + presence "Indicates this node is configured."; + description + "AEST Australia/Canberra 10:00"; + } + container Australia-Currie { + presence "Indicates this node is configured."; + description + "AEST Australia/Currie 10:00"; + } + container Australia-Darwin { + presence "Indicates this node is configured."; + description + "ACST Australia/Darwin 9:30"; + } + container Australia-Eucla { + presence "Indicates this node is configured."; + description + "+0845 Australia/Eucla 8:45"; + } + container Australia-Hobart { + presence "Indicates this node is configured."; + description + "AEST Australia/Hobart 10:00"; + } + container Australia-LHI { + presence "Indicates this node is configured."; + description + "+1030 Australia/LHI 10:30"; + } + container Australia-Lindeman { + presence "Indicates this node is configured."; + description + "AEST Australia/Lindeman 10:00"; + } + container Australia-Lord_Howe { + presence "Indicates this node is configured."; + description + "+1030 Australia/Lord_Howe 10:30"; + } + container Australia-Melbourne { + presence "Indicates this node is configured."; + description + "AEST Australia/Melbourne 10:00"; + } + container Australia-North { + presence "Indicates this node is configured."; + description + "ACST Australia/North 9:30"; + } + container Australia-Perth { + presence "Indicates this node is configured."; + description + "AWST Australia/Perth 8:00"; + } + container Australia-Queensland { + presence "Indicates this node is configured."; + description + "AEST Australia/Queensland 10:00"; + } + container Australia-South { + presence "Indicates this node is configured."; + description + "ACST Australia/South 9:30"; + } + container Australia-Sydney { + presence "Indicates this node is configured."; + description + "AEST Australia/Sydney 10:00"; + } + container Australia-Tasmania { + presence "Indicates this node is configured."; + description + "AEST Australia/Tasmania 10:00"; + } + container Australia-Victoria { + presence "Indicates this node is configured."; + description + "AEST Australia/Victoria 10:00"; + } + container Australia-West { + presence "Indicates this node is configured."; + description + "AWST Australia/West 8:00"; + } + container Australia-Yancowinna { + presence "Indicates this node is configured."; + description + "ACST Australia/Yancowinna 9:30"; + } + container Brazil-Acre { + presence "Indicates this node is configured."; + description + "-05 Brazil/Acre -5:00"; + } + container Brazil-DeNoronha { + presence "Indicates this node is configured."; + description + "-02 Brazil/DeNoronha -2:00"; + } + container Brazil-East { + presence "Indicates this node is configured."; + description + "-03 Brazil/East -3:00"; + } + container Brazil-West { + presence "Indicates this node is configured."; + description + "-04 Brazil/West -4:00"; + } + container CET { + presence "Indicates this node is configured."; + description + "CET CET 1:00"; + } + container CST6CDT { + presence "Indicates this node is configured."; + description + "CST CST6CDT -6:00"; + } + container Canada-Atlantic { + presence "Indicates this node is configured."; + description + "AST Canada/Atlantic -4:00"; + } + container Canada-Central { + presence "Indicates this node is configured."; + description + "CST Canada/Central -6:00"; + } + container Canada-Eastern { + presence "Indicates this node is configured."; + description + "EST Canada/Eastern -5:00"; + } + container Canada-Mountain { + presence "Indicates this node is configured."; + description + "MST Canada/Mountain -7:00"; + } + container Canada-Newfoundland { + presence "Indicates this node is configured."; + description + "NST Canada/Newfoundland -3:30"; + } + container Canada-Pacific { + presence "Indicates this node is configured."; + description + "PST Canada/Pacific -8:00"; + } + container Canada-Saskatchewan { + presence "Indicates this node is configured."; + description + "CST Canada/Saskatchewan -6:00"; + } + container Canada-Yukon { + presence "Indicates this node is configured."; + description + "PST Canada/Yukon -8:00"; + } + container Chile-Continental { + presence "Indicates this node is configured."; + description + "-04 Chile/Continental -4:00"; + } + container Chile-EasterIsland { + presence "Indicates this node is configured."; + description + "-06 Chile/EasterIsland -6:00"; + } + container Cuba { + presence "Indicates this node is configured."; + description + "CST Cuba -6:00"; + } + container EET { + presence "Indicates this node is configured."; + description + "EET EET 2:00"; + } + container EST { + presence "Indicates this node is configured."; + description + "EST EST -5:00"; + } + container EST5EDT { + presence "Indicates this node is configured."; + description + "EST EST5EDT -5:00"; + } + container Egypt { + presence "Indicates this node is configured."; + description + "EET Egypt 2:00"; + } + container Eire { + presence "Indicates this node is configured."; + description + "IST Eire 1:00"; + } + container Etc-GMT { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT 0:00"; + } + container Etc-GMT-plus-0 { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT+0 0:00"; + } + container Etc-GMT-plus-1 { + presence "Indicates this node is configured."; + description + "-01 Etc/GMT+1 -1:00"; + } + container Etc-GMT-plus-2 { + presence "Indicates this node is configured."; + description + "-02 Etc/GMT+2 -2:00"; + } + container Etc-GMT-plus-3 { + presence "Indicates this node is configured."; + description + "-03 Etc/GMT+3 -3:00"; + } + container Etc-GMT-plus-4 { + presence "Indicates this node is configured."; + description + "-04 Etc/GMT+4 -4:00"; + } + container Etc-GMT-plus-5 { + presence "Indicates this node is configured."; + description + "-05 Etc/GMT+5 -5:00"; + } + container Etc-GMT-plus-6 { + presence "Indicates this node is configured."; + description + "-06 Etc/GMT+6 -6:00"; + } + container Etc-GMT-plus-7 { + presence "Indicates this node is configured."; + description + "-07 Etc/GMT+7 -7:00"; + } + container Etc-GMT-plus-8 { + presence "Indicates this node is configured."; + description + "-08 Etc/GMT+8 -8:00"; + } + container Etc-GMT-plus-9 { + presence "Indicates this node is configured."; + description + "-09 Etc/GMT+9 -9:00"; + } + container Etc-GMT-plus-10 { + presence "Indicates this node is configured."; + description + "-10 Etc/GMT+10 -10:00"; + } + container Etc-GMT-plus-11 { + presence "Indicates this node is configured."; + description + "-11 Etc/GMT+11 -11:00"; + } + container Etc-GMT-plus-12 { + presence "Indicates this node is configured."; + description + "-12 Etc/GMT+12 -12:00"; + } + container Etc-GMT-0 { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT-0 0:00"; + } + container Etc-GMT-1 { + presence "Indicates this node is configured."; + description + "+01 Etc/GMT-1 1:00"; + } + container Etc-GMT-2 { + presence "Indicates this node is configured."; + description + "+02 Etc/GMT-2 2:00"; + } + container Etc-GMT-3 { + presence "Indicates this node is configured."; + description + "+03 Etc/GMT-3 3:00"; + } + container Etc-GMT-4 { + presence "Indicates this node is configured."; + description + "+04 Etc/GMT-4 4:00"; + } + container Etc-GMT-5 { + presence "Indicates this node is configured."; + description + "+05 Etc/GMT-5 5:00"; + } + container Etc-GMT-6 { + presence "Indicates this node is configured."; + description + "+06 Etc/GMT-6 6:00"; + } + container Etc-GMT-7 { + presence "Indicates this node is configured."; + description + "+07 Etc/GMT-7 7:00"; + } + container Etc-GMT-8 { + presence "Indicates this node is configured."; + description + "+08 Etc/GMT-8 8:00"; + } + container Etc-GMT-9 { + presence "Indicates this node is configured."; + description + "+09 Etc/GMT-9 9:00"; + } + container Etc-GMT-10 { + presence "Indicates this node is configured."; + description + "+10 Etc/GMT-10 10:00"; + } + container Etc-GMT-11 { + presence "Indicates this node is configured."; + description + "+11 Etc/GMT-11 11:00"; + } + container Etc-GMT-12 { + presence "Indicates this node is configured."; + description + "+12 Etc/GMT-12 12:00"; + } + container Etc-GMT0 { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT0 0:00"; + } + container Etc-Greenwich { + presence "Indicates this node is configured."; + description + "GMT Etc/Greenwich 0:00"; + } + container Etc-UCT { + presence "Indicates this node is configured."; + description + "UCT Etc/UCT 0:00"; + } + container Etc-UTC { + presence "Indicates this node is configured."; + description + "UTC Etc/UTC 0:00"; + } + container Etc-Universal { + presence "Indicates this node is configured."; + description + "UTC Etc/Universal 0:00"; + } + container Etc-Zulu { + presence "Indicates this node is configured."; + description + "UTC Etc/Zulu 0:00"; + } + container Europe-Amsterdam { + presence "Indicates this node is configured."; + description + "CET Europe/Amsterdam 1:00"; + } + container Europe-Andorra { + presence "Indicates this node is configured."; + description + "CET Europe/Andorra 1:00"; + } + container Europe-Astrakhan { + presence "Indicates this node is configured."; + description + "+04 Europe/Astrakhan 4:00"; + } + container Europe-Athens { + presence "Indicates this node is configured."; + description + "EET Europe/Athens 2:00"; + } + container Europe-Belfast { + presence "Indicates this node is configured."; + description + "GMT Europe/Belfast 0:00"; + } + container Europe-Belgrade { + presence "Indicates this node is configured."; + description + "CET Europe/Belgrade 1:00"; + } + container Europe-Berlin { + presence "Indicates this node is configured."; + description + "CET Europe/Berlin 1:00"; + } + container Europe-Bratislava { + presence "Indicates this node is configured."; + description + "CET Europe/Bratislava 1:00"; + } + container Europe-Brussels { + presence "Indicates this node is configured."; + description + "CET Europe/Brussels 1:00"; + } + container Europe-Bucharest { + presence "Indicates this node is configured."; + description + "EET Europe/Bucharest 2:00"; + } + container Europe-Budapest { + presence "Indicates this node is configured."; + description + "CET Europe/Budapest 1:00"; + } + container Europe-Busingen { + presence "Indicates this node is configured."; + description + "CET Europe/Busingen 1:00"; + } + container Europe-Chisinau { + presence "Indicates this node is configured."; + description + "EET Europe/Chisinau 2:00"; + } + container Europe-Copenhagen { + presence "Indicates this node is configured."; + description + "CET Europe/Copenhagen 1:00"; + } + container Europe-Dublin { + presence "Indicates this node is configured."; + description + "IST Europe/Dublin 1:00"; + } + container Europe-Gibraltar { + presence "Indicates this node is configured."; + description + "CET Europe/Gibraltar 1:00"; + } + container Europe-Guernsey { + presence "Indicates this node is configured."; + description + "GMT Europe/Guernsey 0:00"; + } + container Europe-Helsinki { + presence "Indicates this node is configured."; + description + "EET Europe/Helsinki 2:00"; + } + container Europe-Isle_of_Man { + presence "Indicates this node is configured."; + description + "GMT Europe/Isle_of_Man 0:00"; + } + container Europe-Istanbul { + presence "Indicates this node is configured."; + description + "+03 Europe/Istanbul 3:00"; + } + container Europe-Jersey { + presence "Indicates this node is configured."; + description + "GMT Europe/Jersey 0:00"; + } + container Europe-Kaliningrad { + presence "Indicates this node is configured."; + description + "EET Europe/Kaliningrad 2:00"; + } + container Europe-Kiev { + presence "Indicates this node is configured."; + description + "EET Europe/Kiev 2:00"; + } + container Europe-Kirov { + presence "Indicates this node is configured."; + description + "+03 Europe/Kirov 3:00"; + } + container Europe-Lisbon { + presence "Indicates this node is configured."; + description + "WET Europe/Lisbon 0:00"; + } + container Europe-Ljubljana { + presence "Indicates this node is configured."; + description + "CET Europe/Ljubljana 1:00"; + } + container Europe-London { + presence "Indicates this node is configured."; + description + "GMT Europe/London 0:00"; + } + container Europe-Luxembourg { + presence "Indicates this node is configured."; + description + "CET Europe/Luxembourg 1:00"; + } + container Europe-Madrid { + presence "Indicates this node is configured."; + description + "CET Europe/Madrid 1:00"; + } + container Europe-Malta { + presence "Indicates this node is configured."; + description + "CET Europe/Malta 1:00"; + } + container Europe-Mariehamn { + presence "Indicates this node is configured."; + description + "EET Europe/Mariehamn 2:00"; + } + container Europe-Minsk { + presence "Indicates this node is configured."; + description + "+03 Europe/Minsk 3:00"; + } + container Europe-Monaco { + presence "Indicates this node is configured."; + description + "CET Europe/Monaco 1:00"; + } + container Europe-Moscow { + presence "Indicates this node is configured."; + description + "MSK Europe/Moscow 3:00"; + } + container Europe-Nicosia { + presence "Indicates this node is configured."; + description + "EET Europe/Nicosia 2:00"; + } + container Europe-Oslo { + presence "Indicates this node is configured."; + description + "CET Europe/Oslo 1:00"; + } + container Europe-Paris { + presence "Indicates this node is configured."; + description + "CET Europe/Paris 1:00"; + } + container Europe-Podgorica { + presence "Indicates this node is configured."; + description + "CET Europe/Podgorica 1:00"; + } + container Europe-Prague { + presence "Indicates this node is configured."; + description + "CET Europe/Prague 1:00"; + } + container Europe-Riga { + presence "Indicates this node is configured."; + description + "EET Europe/Riga 2:00"; + } + container Europe-Rome { + presence "Indicates this node is configured."; + description + "CET Europe/Rome 1:00"; + } + container Europe-Samara { + presence "Indicates this node is configured."; + description + "+04 Europe/Samara 4:00"; + } + container Europe-San_Marino { + presence "Indicates this node is configured."; + description + "CET Europe/San_Marino 1:00"; + } + container Europe-Sarajevo { + presence "Indicates this node is configured."; + description + "CET Europe/Sarajevo 1:00"; + } + container Europe-Saratov { + presence "Indicates this node is configured."; + description + "+04 Europe/Saratov 4:00"; + } + container Europe-Simferopol { + presence "Indicates this node is configured."; + description + "MSK Europe/Simferopol 3:00"; + } + container Europe-Skopje { + presence "Indicates this node is configured."; + description + "CET Europe/Skopje 1:00"; + } + container Europe-Sofia { + presence "Indicates this node is configured."; + description + "EET Europe/Sofia 2:00"; + } + container Europe-Stockholm { + presence "Indicates this node is configured."; + description + "CET Europe/Stockholm 1:00"; + } + container Europe-Tallinn { + presence "Indicates this node is configured."; + description + "EET Europe/Tallinn 2:00"; + } + container Europe-Tirane { + presence "Indicates this node is configured."; + description + "CET Europe/Tirane 1:00"; + } + container Europe-Tiraspol { + presence "Indicates this node is configured."; + description + "EET Europe/Tiraspol 2:00"; + } + container Europe-Ulyanovsk { + presence "Indicates this node is configured."; + description + "+04 Europe/Ulyanovsk 4:00"; + } + container Europe-Uzhgorod { + presence "Indicates this node is configured."; + description + "EET Europe/Uzhgorod 2:00"; + } + container Europe-Vatican { + presence "Indicates this node is configured."; + description + "CET Europe/Vatican 1:00"; + } + container Europe-Vienna { + presence "Indicates this node is configured."; + description + "CET Europe/Vienna 1:00"; + } + container Europe-Vilnius { + presence "Indicates this node is configured."; + description + "EET Europe/Vilnius 2:00"; + } + container Europe-Volgograd { + presence "Indicates this node is configured."; + description + "+04 Europe/Volgograd 4:00"; + } + container Europe-Warsaw { + presence "Indicates this node is configured."; + description + "CET Europe/Warsaw 1:00"; + } + container Europe-Zagreb { + presence "Indicates this node is configured."; + description + "CET Europe/Zagreb 1:00"; + } + container Europe-Zaporozhye { + presence "Indicates this node is configured."; + description + "EET Europe/Zaporozhye 2:00"; + } + container Europe-Zurich { + presence "Indicates this node is configured."; + description + "CET Europe/Zurich 1:00"; + } + container GB { + presence "Indicates this node is configured."; + description + "GMT GB 0:00"; + } + container GB-Eire { + presence "Indicates this node is configured."; + description + "GMT GB-Eire 0:00"; + } + container GMT { + presence "Indicates this node is configured."; + description + "GMT GMT 0:00"; + } + container GMT-plus-0 { + presence "Indicates this node is configured."; + description + "GMT GMT+0 0:00"; + } + container GMT-0 { + presence "Indicates this node is configured."; + description + "GMT GMT-0 0:00"; + } + container GMT0 { + presence "Indicates this node is configured."; + description + "GMT GMT0 0:00"; + } + container Greenwich { + presence "Indicates this node is configured."; + description + "GMT Greenwich 0:00"; + } + container HST { + presence "Indicates this node is configured."; + description + "HST HST -10:00"; + } + container Hongkong { + presence "Indicates this node is configured."; + description + "HKT Hongkong 8:00"; + } + container Iceland { + presence "Indicates this node is configured."; + description + "GMT Iceland 0:00"; + } + container Indian-Antananarivo { + presence "Indicates this node is configured."; + description + "EAT Indian/Antananarivo 3:00"; + } + container Indian-Chagos { + presence "Indicates this node is configured."; + description + "+06 Indian/Chagos 6:00"; + } + container Indian-Christmas { + presence "Indicates this node is configured."; + description + "+07 Indian/Christmas 7:00"; + } + container Indian-Cocos { + presence "Indicates this node is configured."; + description + "+0630 Indian/Cocos 06:30"; + } + container Indian-Comoro { + presence "Indicates this node is configured."; + description + "EAT Indian/Comoro 3:00"; + } + container Indian-Kerguelen { + presence "Indicates this node is configured."; + description + "+05 Indian/Kerguelen 5:00"; + } + container Indian-Mahe { + presence "Indicates this node is configured."; + description + "+04 Indian/Mahe 4:00"; + } + container Indian-Maldives { + presence "Indicates this node is configured."; + description + "+05 Indian/Maldives 5:00"; + } + container Indian-Mauritius { + presence "Indicates this node is configured."; + description + "+04 Indian/Mauritius 4:00"; + } + container Indian-Mayotte { + presence "Indicates this node is configured."; + description + "EAT Indian/Mayotte 3:00"; + } + container Indian-Reunion { + presence "Indicates this node is configured."; + description + "+04 Indian/Reunion 4:00"; + } + container Iran { + presence "Indicates this node is configured."; + description + "+0330 Iran 3:30"; + } + container Israel { + presence "Indicates this node is configured."; + description + "IST Israel 2:00"; + } + container Jamaica { + presence "Indicates this node is configured."; + description + "EST Jamaica -5:00"; + } + container Japan { + presence "Indicates this node is configured."; + description + "JST Japan 9:00"; + } + container Kwajalein { + presence "Indicates this node is configured."; + description + "+12 Kwajalein 12:00"; + } + container Libya { + presence "Indicates this node is configured."; + description + "EET Libya 2:00"; + } + container MET { + presence "Indicates this node is configured."; + description + "MET MET 1:00"; + } + container MST { + presence "Indicates this node is configured."; + description + "MST MST -7:00"; + } + container MST7MDT { + presence "Indicates this node is configured."; + description + "MST MST7MDT -7:00"; + } + container Mexico-BajaNorte { + presence "Indicates this node is configured."; + description + "PST Mexico/BajaNorte -8:00"; + } + container Mexico-BajaSur { + presence "Indicates this node is configured."; + description + "MST Mexico/BajaSur -7:00"; + } + container Mexico-General { + presence "Indicates this node is configured."; + description + "CST Mexico/General -6:00"; + } + container NZ { + presence "Indicates this node is configured."; + description + "NZST NZ 12:00"; + } + container NZ-CHAT { + presence "Indicates this node is configured."; + description + "+1245 NZ-CHAT 12:45"; + } + container Navajo { + presence "Indicates this node is configured."; + description + "MST Navajo -7:00"; + } + container PRC { + presence "Indicates this node is configured."; + description + "CST PRC -6:00"; + } + container PST8PDT { + presence "Indicates this node is configured."; + description + "PST PST8PDT -8:00"; + } + container Pacific-Apia { + presence "Indicates this node is configured."; + description + "+13 Pacific/Apia 13:00"; + } + container Pacific-Auckland { + presence "Indicates this node is configured."; + description + "NZST Pacific/Auckland 12:00"; + } + container Pacific-Bougainville { + presence "Indicates this node is configured."; + description + "+11 Pacific/Bougainville 11:00"; + } + container Pacific-Chatham { + presence "Indicates this node is configured."; + description + "+1245 Pacific/Chatham 12:45"; + } + container Pacific-Chuuk { + presence "Indicates this node is configured."; + description + "+10 Pacific/Chuuk 10:00"; + } + container Pacific-Easter { + presence "Indicates this node is configured."; + description + "-06 Pacific/Easter -6:00"; + } + container Pacific-Efate { + presence "Indicates this node is configured."; + description + "+11 Pacific/Efate 11:00"; + } + container Pacific-Enderbury { + presence "Indicates this node is configured."; + description + "+13 Pacific/Enderbury 13:00"; + } + container Pacific-Fakaofo { + presence "Indicates this node is configured."; + description + "+13 Pacific/Fakaofo 13:00"; + } + container Pacific-Fiji { + presence "Indicates this node is configured."; + description + "+12 Pacific/Fiji 12:00"; + } + container Pacific-Funafuti { + presence "Indicates this node is configured."; + description + "+12 Pacific/Funafuti 12:00"; + } + container Pacific-Galapagos { + presence "Indicates this node is configured."; + description + "-06 Pacific/Galapagos -6:00"; + } + container Pacific-Gambier { + presence "Indicates this node is configured."; + description + "-09 Pacific/Gambier -9:00"; + } + container Pacific-Guadalcanal { + presence "Indicates this node is configured."; + description + "+11 Pacific/Guadalcanal 11:00"; + } + container Pacific-Guam { + presence "Indicates this node is configured."; + description + "ChST Pacific/Guam 10:00"; + } + container Pacific-Honolulu { + presence "Indicates this node is configured."; + description + "HST Pacific/Honolulu -10:00"; + } + container Pacific-Johnston { + presence "Indicates this node is configured."; + description + "HST Pacific/Johnston -10:00"; + } + container Pacific-Kiritimati { + presence "Indicates this node is configured."; + description + "+14 Pacific/Kiritimati 14:00"; + } + container Pacific-Kosrae { + presence "Indicates this node is configured."; + description + "+11 Pacific/Kosrae 11:00"; + } + container Pacific-Kwajalein { + presence "Indicates this node is configured."; + description + "+12 Pacific/Kwajalein 12:00"; + } + container Pacific-Majuro { + presence "Indicates this node is configured."; + description + "+12 Pacific/Majuro 12:00"; + } + container Pacific-Marquesas { + presence "Indicates this node is configured."; + description + "-0930 Pacific/Marquesas -09:30"; + } + container Pacific-Midwy { + presence "Indicates this node is configured."; + description + "SST Pacific/Midwy -11:00"; + } + container Pacific-Nauru { + presence "Indicates this node is configured."; + description + "+12 Pacific/Nauru 12:00"; + } + container Pacific-Niue { + presence "Indicates this node is configured."; + description + "-11 Pacific/Niue -11:00"; + } + container Pacific-Norfolk { + presence "Indicates this node is configured."; + description + "+11 Pacific/Norfolk 11:00"; + } + container Pacific-Noumea { + presence "Indicates this node is configured."; + description + "+11 Pacific/Noumea 11:00"; + } + container Pacific-Pago_Pago { + presence "Indicates this node is configured."; + description + "SST Pacific/Pago_Pago -11:00"; + } + container Pacific-Palau { + presence "Indicates this node is configured."; + description + "+09 Pacific/Palau 9:00"; + } + container Pacific-Pitcairn { + presence "Indicates this node is configured."; + description + "-08 Pacific/Pitcairn -8:00"; + } + container Pacific-Pohnpei { + presence "Indicates this node is configured."; + description + "+11 Pacific/Pohnpei 11:00"; + } + container Pacific-Ponape { + presence "Indicates this node is configured."; + description + "+11 Pacific/Ponape 11:00"; + } + container Pacific-Port_Moresby { + presence "Indicates this node is configured."; + description + "+10 Pacific/Port_Moresby 10:00"; + } + container Pacific-Rarotonga { + presence "Indicates this node is configured."; + description + "-10 Pacific/Rarotonga -10:00"; + } + container Pacific-Saipan { + presence "Indicates this node is configured."; + description + "ChST Pacific/Saipan 10:00"; + } + container Pacific-Samoa { + presence "Indicates this node is configured."; + description + "SST Pacific/Samoa -11:00"; + } + container Pacific-Tahiti { + presence "Indicates this node is configured."; + description + "-10 Pacific/Tahiti -10:00"; + } + container Pacific-Tarawa { + presence "Indicates this node is configured."; + description + "+12 Pacific/Tarawa 12:00"; + } + container Pacific-Tongatapu { + presence "Indicates this node is configured."; + description + "+13 Pacific/Tongatapu 13:00"; + } + container Pacific-Truk { + presence "Indicates this node is configured."; + description + "+10 Pacific/Truk 10:00"; + } + container Pacific-Wake { + presence "Indicates this node is configured."; + description + "+12 Pacific/Wake 12:00"; + } + container Pacific-Wallis { + presence "Indicates this node is configured."; + description + "+12 Pacific/Wallis 12:00"; + } + container Pacific-Yap { + presence "Indicates this node is configured."; + description + "+10 Pacific/Yap 10:00"; + } + container Poland { + presence "Indicates this node is configured."; + description + "CET Poland 1:00"; + } + container Portugal { + presence "Indicates this node is configured."; + description + "WET Portugal 0:00"; + } + container ROC { + presence "Indicates this node is configured."; + description + "CST ROC -6:00"; + } + container ROK { + presence "Indicates this node is configured."; + description + "KST ROK 9:00"; + } + container Singapore { + presence "Indicates this node is configured."; + description + "+08 Singapore 8:00"; + } + container Turkey { + presence "Indicates this node is configured."; + description + "+03 Turkey 3:00"; + } + container UCT { + presence "Indicates this node is configured."; + description + "UCT UCT 0:00"; + } + container US-Alaska { + presence "Indicates this node is configured."; + description + "AKST US/Alaska -9:00"; + } + container US-Arizona { + presence "Indicates this node is configured."; + description + "MST US/Arizona -7:00"; + } + container US-Central { + presence "Indicates this node is configured."; + description + "CST US/Central -6:00"; + } + container US-East-Indiana { + presence "Indicates this node is configured."; + description + "EST US/East-Indiana -5:00"; + } + container US-Eastern { + presence "Indicates this node is configured."; + description + "EST US/Eastern -5:00"; + } + container US-Hawaii { + presence "Indicates this node is configured."; + description + "HST US/Hawaii -10:00"; + } + container US-Indiana-Starke { + presence "Indicates this node is configured."; + description + "CST US/Indiana-Starke -6:00"; + } + container US-Michigan { + presence "Indicates this node is configured."; + description + "EST US/Michigan -5:00"; + } + container US-Mountain { + presence "Indicates this node is configured."; + description + "MST US/Mountain -7:00"; + } + container US-Pacific { + presence "Indicates this node is configured."; + description + "PST US/Pacific -8:00"; + } + container US-Samoa { + presence "Indicates this node is configured."; + description + "SST US/Samoa -11:00"; + } + container UTC { + presence "Indicates this node is configured."; + description + "UTC UTC 0:00"; + } + container Universal { + presence "Indicates this node is configured."; + description + "UTC Universal 0:00"; + } + container W-SU { + presence "Indicates this node is configured."; + description + "MSK W-SU 3:00"; + } + container WET { + presence "Indicates this node is configured."; + description + "WET WET 0:00"; + } + container Zulu { + presence "Indicates this node is configured."; + description + "UTC Zulu 0:00"; + } + container zone1970.tab { + presence "Indicates this node is configured."; + description + "zone zone1970.tab -24:00"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-exr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-exr-cfg.yang new file mode 100644 index 000000000..dad5f1461 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-exr-cfg.yang @@ -0,0 +1,2945 @@ +module Cisco-IOS-XR-um-clock-exr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-clock-exr-cfg"; + prefix um-clock-exr-cfg; + + 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 clock package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-25 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container clock { + description + "Configure time-of-day clock"; + container timezone { + description + "Configure time zone"; + container Africa-Accra { + presence "Indicates this node is configured."; + description + "GMT Africa/Accra 0:00"; + } + container Africa-Addis_Ababa { + presence "Indicates this node is configured."; + description + "EAT Africa/Addis_Ababa 3:00"; + } + container Africa-Algiers { + presence "Indicates this node is configured."; + description + "CET Africa/Algiers 1:00"; + } + container Africa-Asmara { + presence "Indicates this node is configured."; + description + "EAT Africa/Asmara 3:00"; + } + container Africa-Asmera { + presence "Indicates this node is configured."; + description + "EAT Africa/Asmera 3:00"; + } + container Africa-Bamako { + presence "Indicates this node is configured."; + description + "GMT Africa/Bamako 0:00"; + } + container Africa-Bangui { + presence "Indicates this node is configured."; + description + "WAT Africa/Bangui 1:00"; + } + container Africa-Banjul { + presence "Indicates this node is configured."; + description + "GMT Africa/Banjul 0:00"; + } + container Africa-Bissau { + presence "Indicates this node is configured."; + description + "GMT Africa/Bissau 0:00"; + } + container Africa-Blantyre { + presence "Indicates this node is configured."; + description + "CAT Africa/Blantyre 2:00"; + } + container Africa-Brazzaville { + presence "Indicates this node is configured."; + description + "WAT Africa/Brazzaville 1:00"; + } + container Africa-Bujumbura { + presence "Indicates this node is configured."; + description + "CAT Africa/Bujumbura 2:00"; + } + container Africa-Cairo { + presence "Indicates this node is configured."; + description + "EET Africa/Cairo 2:00"; + } + container Africa-Casablanca { + presence "Indicates this node is configured."; + description + "WET Africa/Casablanca 0:00"; + } + container Africa-Ceuta { + presence "Indicates this node is configured."; + description + "CET Africa/Ceuta 1:00"; + } + container Africa-Conakry { + presence "Indicates this node is configured."; + description + "GMT Africa/Conakry 0:00"; + } + container Africa-Dakar { + presence "Indicates this node is configured."; + description + "GMT Africa/Dakar 0:00"; + } + container Africa-Dar_es_Salaam { + presence "Indicates this node is configured."; + description + "EAT Africa/Dar_es_Salaam 3:00"; + } + container Africa-Djibouti { + presence "Indicates this node is configured."; + description + "EAT Africa/Djibouti 3:00"; + } + container Africa-Douala { + presence "Indicates this node is configured."; + description + "WAT Africa/Douala 1:00"; + } + container Africa-El_Aaiun { + presence "Indicates this node is configured."; + description + "WET Africa/El_Aaiun 0:00"; + } + container Africa-Freetown { + presence "Indicates this node is configured."; + description + "GMT Africa/Freetown 0:00"; + } + container Africa-Gaborone { + presence "Indicates this node is configured."; + description + "CAT Africa/Gaborone 2:00"; + } + container Africa-Harare { + presence "Indicates this node is configured."; + description + "CAT Africa/Harare 2:00"; + } + container Africa-Johannesburg { + presence "Indicates this node is configured."; + description + "SAST Africa/Johannesburg 2:00"; + } + container Africa-Juba { + presence "Indicates this node is configured."; + description + "EAT Africa/Juba 3:00"; + } + container Africa-Kampala { + presence "Indicates this node is configured."; + description + "EAT Africa/Kampala 3:00"; + } + container Africa-Khartoum { + presence "Indicates this node is configured."; + description + "EAT Africa/Khartoum 3:00"; + } + container Africa-Kigali { + presence "Indicates this node is configured."; + description + "CAT Africa/Kigali 2:00"; + } + container Africa-Kinshasa { + presence "Indicates this node is configured."; + description + "WAT Africa/Kinshasa 1:00"; + } + container Africa-Lagos { + presence "Indicates this node is configured."; + description + "WAT Africa/Lagos 1:00"; + } + container Africa-Libreville { + presence "Indicates this node is configured."; + description + "WAT Africa/Libreville 1:00"; + } + container Africa-Lome { + presence "Indicates this node is configured."; + description + "GMT Africa/Lome 0:00"; + } + container Africa-Luanda { + presence "Indicates this node is configured."; + description + "WAT Africa/Luanda 1:00"; + } + container Africa-Lubumbashi { + presence "Indicates this node is configured."; + description + "CAT Africa/Lubumbashi 2:00"; + } + container Africa-Lusaka { + presence "Indicates this node is configured."; + description + "CAT Africa/Lusaka 2:00"; + } + container Africa-Malabo { + presence "Indicates this node is configured."; + description + "WAT Africa/Malabo 1:00"; + } + container Africa-Maputo { + presence "Indicates this node is configured."; + description + "CAT Africa/Maputo 2:00"; + } + container Africa-Maseru { + presence "Indicates this node is configured."; + description + "SAST Africa/Maseru 2:00"; + } + container Africa-Mbabane { + presence "Indicates this node is configured."; + description + "SAST Africa/Mbabane 2:00"; + } + container Africa-Mogadishu { + presence "Indicates this node is configured."; + description + "EAT Africa/Mogadishu 3:00"; + } + container Africa-Monrovia { + presence "Indicates this node is configured."; + description + "GMT Africa/Monrovia 0:00"; + } + container Africa-Nairobi { + presence "Indicates this node is configured."; + description + "EAT Africa/Nairobi 3:00"; + } + container Africa-Ndjamena { + presence "Indicates this node is configured."; + description + "WAT Africa/Ndjamena 1:00"; + } + container Africa-Niamey { + presence "Indicates this node is configured."; + description + "WAT Africa/Niamey 1:00"; + } + container Africa-Nouakchott { + presence "Indicates this node is configured."; + description + "GMT Africa/Nouakchott 0:00"; + } + container Africa-Ouagadougou { + presence "Indicates this node is configured."; + description + "GMT Africa/Ouagadougou 0:00"; + } + container Africa-Porto-Novo { + presence "Indicates this node is configured."; + description + "WAT Africa/Porto-Novo 1:00"; + } + container Africa-Sao_Tome { + presence "Indicates this node is configured."; + description + "GMT Africa/Sao_Tome 0:00"; + } + container Africa-Timbuktu { + presence "Indicates this node is configured."; + description + "GMT Africa/Timbuktu 0:00"; + } + container Africa-Tripoli { + presence "Indicates this node is configured."; + description + "EET Africa/Tripoli 2:00"; + } + container Africa-Tunis { + presence "Indicates this node is configured."; + description + "CET Africa/Tunis 1:00"; + } + container America-Adak { + presence "Indicates this node is configured."; + description + "HAST America/Adak -10:00"; + } + container America-Anchorage { + presence "Indicates this node is configured."; + description + "AKST America/Anchorage -9:00"; + } + container America-Anguilla { + presence "Indicates this node is configured."; + description + "AST America/Anguilla -4:00"; + } + container America-Antigua { + presence "Indicates this node is configured."; + description + "AST America/Antigua -4:00"; + } + container America-Araguaina { + presence "Indicates this node is configured."; + description + "BRT America/Araguaina -3:00"; + } + container America-Argentina-Buenos_Aires { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Buenos_Aires -3:00"; + } + container America-Argentina-Catamarca { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Catamarca -3:00"; + } + container America-Argentina-ComodRivadavia { + presence "Indicates this node is configured."; + description + "ART America/Argentina/ComodRivadavia -3:00"; + } + container America-Argentina-Cordoba { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Cordoba -3:00"; + } + container America-Argentina-Jujuy { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Jujuy -3:00"; + } + container America-Argentina-La_Rioja { + presence "Indicates this node is configured."; + description + "ART America/Argentina/La_Rioja -3:00"; + } + container America-Argentina-Mendoza { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Mendoza -3:00"; + } + container America-Argentina-Rio_Gallegos { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Rio_Gallegos -3:00"; + } + container America-Argentina-Salta { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Salta -3:00"; + } + container America-Argentina-San_Juan { + presence "Indicates this node is configured."; + description + "ART America/Argentina/San_Juan -3:00"; + } + container America-Argentina-San_Luis { + presence "Indicates this node is configured."; + description + "ART America/Argentina/San_Luis -3:00"; + } + container America-Argentina-Tucuman { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Tucuman -3:00"; + } + container America-Argentina-Ushuaia { + presence "Indicates this node is configured."; + description + "ART America/Argentina/Ushuaia -3:00"; + } + container America-Aruba { + presence "Indicates this node is configured."; + description + "AST America/Aruba -4:00"; + } + container America-Atikokan { + presence "Indicates this node is configured."; + description + "EST America/Atikokan -5:00"; + } + container America-Atka { + presence "Indicates this node is configured."; + description + "HAST America/Atka -10:00"; + } + container America-Bahia { + presence "Indicates this node is configured."; + description + "BRT America/Bahia -3:00"; + } + container America-Bahia_Banderas { + presence "Indicates this node is configured."; + description + "CST America/Bahia_Banderas -6:00"; + } + container America-Barbados { + presence "Indicates this node is configured."; + description + "AST America/Barbados -4:00"; + } + container America-Belem { + presence "Indicates this node is configured."; + description + "BRT America/Belem -3:00"; + } + container America-Belize { + presence "Indicates this node is configured."; + description + "CST America/Belize -6:00"; + } + container America-Blanc-Sablon { + presence "Indicates this node is configured."; + description + "AST America/Blanc-Sablon -4:00"; + } + container America-Boa_Vista { + presence "Indicates this node is configured."; + description + "AMT America/Boa_Vista -4:00"; + } + container America-Bogota { + presence "Indicates this node is configured."; + description + "COT America/Bogota -5:00"; + } + container America-Boise { + presence "Indicates this node is configured."; + description + "MST America/Boise -7:00"; + } + container America-Buenos_Aires { + presence "Indicates this node is configured."; + description + "ART America/Buenos_Aires -3:00"; + } + container America-Cambridge_Bay { + presence "Indicates this node is configured."; + description + "MST America/Cambridge_Bay -7:00"; + } + container America-Campo_Grande { + presence "Indicates this node is configured."; + description + "AMT America/Campo_Grande -4:00"; + } + container America-Cancun { + presence "Indicates this node is configured."; + description + "CST America/Cancun -5:00"; + } + container America-Caracas { + presence "Indicates this node is configured."; + description + "VET America/Caracas -4:00"; + } + container America-Catamarca { + presence "Indicates this node is configured."; + description + "ART America/Catamarca -3:00"; + } + container America-Cayenne { + presence "Indicates this node is configured."; + description + "GFT America/Cayenne -3:00"; + } + container America-Cayman { + presence "Indicates this node is configured."; + description + "EST America/Cayman -5:00"; + } + container America-Chicago { + presence "Indicates this node is configured."; + description + "CST America/Chicago -6:00"; + } + container America-Chihuahua { + presence "Indicates this node is configured."; + description + "MST America/Chihuahua -7:00"; + } + container America-Coral_Harbour { + presence "Indicates this node is configured."; + description + "EST America/Coral_Harbour -5:00"; + } + container America-Cordoba { + presence "Indicates this node is configured."; + description + "ART America/Cordoba -3:00"; + } + container America-Costa_Rica { + presence "Indicates this node is configured."; + description + "CST America/Costa_Rica -6:00"; + } + container America-Creston { + presence "Indicates this node is configured."; + description + "MST America/Creston -7:00"; + } + container America-Cuiaba { + presence "Indicates this node is configured."; + description + "AMT America/Cuiaba -4:00"; + } + container America-Curacao { + presence "Indicates this node is configured."; + description + "AST America/Curacao -4:00"; + } + container America-Danmarkshavn { + presence "Indicates this node is configured."; + description + "GMT America/Danmarkshavn 0:00"; + } + container America-Dawson { + presence "Indicates this node is configured."; + description + "PST America/Dawson -8:00"; + } + container America-Dawson_Creek { + presence "Indicates this node is configured."; + description + "MST America/Dawson_Creek -7:00"; + } + container America-Denver { + presence "Indicates this node is configured."; + description + "MST America/Denver -7:00"; + } + container America-Detroit { + presence "Indicates this node is configured."; + description + "EST America/Detroit -5:00"; + } + container America-Dominica { + presence "Indicates this node is configured."; + description + "AST America/Dominica -4:00"; + } + container America-Edmonton { + presence "Indicates this node is configured."; + description + "MST America/Edmonton -7:00"; + } + container America-Eirunepe { + presence "Indicates this node is configured."; + description + "ACT America/Eirunepe -5:00"; + } + container America-El_Salvador { + presence "Indicates this node is configured."; + description + "CST America/El_Salvador -6:00"; + } + container America-Ensenada { + presence "Indicates this node is configured."; + description + "PST America/Ensenada -8:00"; + } + container America-Fort_Wayne { + presence "Indicates this node is configured."; + description + "EST America/Fort_Wayne -5:00"; + } + container America-Fortaleza { + presence "Indicates this node is configured."; + description + "BRT America/Fortaleza -3:00"; + } + container America-Glace_Bay { + presence "Indicates this node is configured."; + description + "AST America/Glace_Bay -4:00"; + } + container America-Godthab { + presence "Indicates this node is configured."; + description + "WGT America/Godthab -3:00"; + } + container America-Goose_Bay { + presence "Indicates this node is configured."; + description + "AST America/Goose_Bay -4:00"; + } + container America-Grand_Turk { + presence "Indicates this node is configured."; + description + "EST America/Grand_Turk -5:00"; + } + container America-Grenada { + presence "Indicates this node is configured."; + description + "AST America/Grenada -4:00"; + } + container America-Guadeloupe { + presence "Indicates this node is configured."; + description + "AST America/Guadeloupe -4:00"; + } + container America-Guatemala { + presence "Indicates this node is configured."; + description + "CST America/Guatemala -6:00"; + } + container America-Guayaquil { + presence "Indicates this node is configured."; + description + "ECT America/Guayaquil -5:00"; + } + container America-Guyana { + presence "Indicates this node is configured."; + description + "GYT America/Guyana -4:00"; + } + container America-Halifax { + presence "Indicates this node is configured."; + description + "AST America/Halifax -4:00"; + } + container America-Havana { + presence "Indicates this node is configured."; + description + "CST America/Havana -6:00"; + } + container America-Hermosillo { + presence "Indicates this node is configured."; + description + "MST America/Hermosillo -7:00"; + } + container America-Indiana-Indianapolis { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Indianapolis -5:00"; + } + container America-Indiana-Knox { + presence "Indicates this node is configured."; + description + "CST America/Indiana/Knox -6:00"; + } + container America-Indiana-Marengo { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Marengo -5:00"; + } + container America-Indiana-Petersburg { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Petersburg -5:00"; + } + container America-Indiana-Tell_City { + presence "Indicates this node is configured."; + description + "CST America/Indiana/Tell_City -6:00"; + } + container America-Indiana-Vevay { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Vevay -5:00"; + } + container America-Indiana-Vincennes { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Vincennes -5:00"; + } + container America-Indiana-Winamac { + presence "Indicates this node is configured."; + description + "EST America/Indiana/Winamac -5:00"; + } + container America-Indianapolis { + presence "Indicates this node is configured."; + description + "EST America/Indianapolis -5:00"; + } + container America-Inuvik { + presence "Indicates this node is configured."; + description + "MST America/Inuvik -7:00"; + } + container America-Iqaluit { + presence "Indicates this node is configured."; + description + "EST America/Iqaluit -5:00"; + } + container America-Jamaica { + presence "Indicates this node is configured."; + description + "EST America/Jamaica -5:00"; + } + container America-Jujuy { + presence "Indicates this node is configured."; + description + "ART America/Jujuy -3:00"; + } + container America-Juneau { + presence "Indicates this node is configured."; + description + "AKST America/Juneau -9:00"; + } + container America-Kentucky-Louisville { + presence "Indicates this node is configured."; + description + "EST America/Kentucky/Louisville -5:00"; + } + container America-Kentucky-Monticello { + presence "Indicates this node is configured."; + description + "EST America/Kentucky/Monticello -5:00"; + } + container America-Knox_IN { + presence "Indicates this node is configured."; + description + "CST America/Knox_IN -6:00"; + } + container America-Kralendijk { + presence "Indicates this node is configured."; + description + "AST America/Kralendijk -4:00"; + } + container America-La_Paz { + presence "Indicates this node is configured."; + description + "BOT America/La_Paz -4:00"; + } + container America-Lima { + presence "Indicates this node is configured."; + description + "PET America/Lima -5:00"; + } + container America-Los_Angeles { + presence "Indicates this node is configured."; + description + "PST America/Los_Angeles -8:00"; + } + container America-Louisville { + presence "Indicates this node is configured."; + description + "EST America/Louisville -5:00"; + } + container America-Lower_Princes { + presence "Indicates this node is configured."; + description + "AST America/Lower_Princes -4:00"; + } + container America-Maceio { + presence "Indicates this node is configured."; + description + "BRT America/Maceio -3:00"; + } + container America-Managua { + presence "Indicates this node is configured."; + description + "CST America/Managua -6:00"; + } + container America-Manaus { + presence "Indicates this node is configured."; + description + "AMT America/Manaus -4:00"; + } + container America-Marigot { + presence "Indicates this node is configured."; + description + "AST America/Marigot -4:00"; + } + container America-Martinique { + presence "Indicates this node is configured."; + description + "AST America/Martinique -4:00"; + } + container America-Matamoros { + presence "Indicates this node is configured."; + description + "CST America/Matamoros -6:00"; + } + container America-Mazatlan { + presence "Indicates this node is configured."; + description + "MST America/Mazatlan -7:00"; + } + container America-Mendoza { + presence "Indicates this node is configured."; + description + "ART America/Mendoza -3:00"; + } + container America-Menominee { + presence "Indicates this node is configured."; + description + "CST America/Menominee -6:00"; + } + container America-Merida { + presence "Indicates this node is configured."; + description + "CST America/Merida -6:00"; + } + container America-Metlakatla { + presence "Indicates this node is configured."; + description + "PST America/Metlakatla -8:00"; + } + container America-Mexico_City { + presence "Indicates this node is configured."; + description + "CST America/Mexico_City -6:00"; + } + container America-Miquelon { + presence "Indicates this node is configured."; + description + "PMST America/Miquelon -3:00"; + } + container America-Moncton { + presence "Indicates this node is configured."; + description + "AST America/Moncton -4:00"; + } + container America-Monterrey { + presence "Indicates this node is configured."; + description + "CST America/Monterrey -6:00"; + } + container America-Montevideo { + presence "Indicates this node is configured."; + description + "UYT America/Montevideo -3:00"; + } + container America-Montreal { + presence "Indicates this node is configured."; + description + "EST America/Montreal -5:00"; + } + container America-Montserrat { + presence "Indicates this node is configured."; + description + "AST America/Montserrat -4:00"; + } + container America-Nassau { + presence "Indicates this node is configured."; + description + "EST America/Nassau -5:00"; + } + container America-New_York { + presence "Indicates this node is configured."; + description + "EST America/New_York -5:00"; + } + container America-Nipigon { + presence "Indicates this node is configured."; + description + "EST America/Nipigon -5:00"; + } + container America-Nome { + presence "Indicates this node is configured."; + description + "AKST America/Nome -9:00"; + } + container America-Noronha { + presence "Indicates this node is configured."; + description + "FNT America/Noronha -2:00"; + } + container America-North_Dakota-Beulah { + presence "Indicates this node is configured."; + description + "CST America/North_Dakota/Beulah -6:00"; + } + container America-North_Dakota-Center { + presence "Indicates this node is configured."; + description + "CST America/North_Dakota/Center -6:00"; + } + container America-North_Dakota-New_Salem { + presence "Indicates this node is configured."; + description + "CST America/North_Dakota/New_Salem -6:00"; + } + container America-Ojinaga { + presence "Indicates this node is configured."; + description + "MST America/Ojinaga -7:00"; + } + container America-Panama { + presence "Indicates this node is configured."; + description + "EST America/Panama -5:00"; + } + container America-Pangnirtung { + presence "Indicates this node is configured."; + description + "EST America/Pangnirtung -5:00"; + } + container America-Paramaribo { + presence "Indicates this node is configured."; + description + "SRT America/Paramaribo -3:00"; + } + container America-Phoenix { + presence "Indicates this node is configured."; + description + "MST America/Phoenix -7:00"; + } + container America-Port-au-Prince { + presence "Indicates this node is configured."; + description + "EST America/Port-au-Prince -5:00"; + } + container America-Port_of_Spain { + presence "Indicates this node is configured."; + description + "AST America/Port_of_Spain -4:00"; + } + container America-Porto_Acre { + presence "Indicates this node is configured."; + description + "ACT America/Porto_Acre -5:00"; + } + container America-Porto_Velho { + presence "Indicates this node is configured."; + description + "AMT America/Porto_Velho -4:00"; + } + container America-Puerto_Rico { + presence "Indicates this node is configured."; + description + "AST America/Puerto_Rico -4:00"; + } + container Pacific-Midway { + presence "Indicates this node is configured."; + description + "SST Pacific/Midway -11:00"; + } + container America-Rainy_River { + presence "Indicates this node is configured."; + description + "CST America/Rainy_River -6:00"; + } + container America-Rankin_Inlet { + presence "Indicates this node is configured."; + description + "CST America/Rankin_Inlet -6:00"; + } + container America-Recife { + presence "Indicates this node is configured."; + description + "BRT America/Recife -3:00"; + } + container America-Regina { + presence "Indicates this node is configured."; + description + "CST America/Regina -6:00"; + } + container America-Resolute { + presence "Indicates this node is configured."; + description + "CST America/Resolute -6:00"; + } + container America-Rio_Branco { + presence "Indicates this node is configured."; + description + "ACT America/Rio_Branco -5:00"; + } + container America-Rosario { + presence "Indicates this node is configured."; + description + "ART America/Rosario -3:00"; + } + container America-Santa_Isabel { + presence "Indicates this node is configured."; + description + "PST America/Santa_Isabel -8:00"; + } + container America-Santarem { + presence "Indicates this node is configured."; + description + "BRT America/Santarem -3:00"; + } + container America-Santiago { + presence "Indicates this node is configured."; + description + "CLT America/Santiago -4:00"; + } + container America-Santo_Domingo { + presence "Indicates this node is configured."; + description + "AST America/Santo_Domingo -4:00"; + } + container America-Sao_Paulo { + presence "Indicates this node is configured."; + description + "BRT America/Sao_Paulo -3:00"; + } + container America-Scoresbysund { + presence "Indicates this node is configured."; + description + "EGT America/Scoresbysund -1:00"; + } + container America-Shiprock { + presence "Indicates this node is configured."; + description + "MST America/Shiprock -7:00"; + } + container America-Sitka { + presence "Indicates this node is configured."; + description + "AKST America/Sitka -9:00"; + } + container America-St_Barthelemy { + presence "Indicates this node is configured."; + description + "AST America/St_Barthelemy -4:00"; + } + container America-St_Johns { + presence "Indicates this node is configured."; + description + "NST America/St_Johns -3:30"; + } + container America-St_Kitts { + presence "Indicates this node is configured."; + description + "AST America/St_Kitts -4:00"; + } + container America-St_Lucia { + presence "Indicates this node is configured."; + description + "AST America/St_Lucia -4:00"; + } + container America-St_Thomas { + presence "Indicates this node is configured."; + description + "AST America/St_Thomas -4:00"; + } + container America-St_Vincent { + presence "Indicates this node is configured."; + description + "AST America/St_Vincent -4:00"; + } + container America-Swift_Current { + presence "Indicates this node is configured."; + description + "CST America/Swift_Current -6:00"; + } + container America-Tegucigalpa { + presence "Indicates this node is configured."; + description + "CST America/Tegucigalpa -6:00"; + } + container America-Thule { + presence "Indicates this node is configured."; + description + "AST America/Thule -4:00"; + } + container America-Thunder_Bay { + presence "Indicates this node is configured."; + description + "EST America/Thunder_Bay -5:00"; + } + container America-Tijuana { + presence "Indicates this node is configured."; + description + "PST America/Tijuana -8:00"; + } + container America-Toronto { + presence "Indicates this node is configured."; + description + "EST America/Toronto -5:00"; + } + container America-Tortola { + presence "Indicates this node is configured."; + description + "AST America/Tortola -4:00"; + } + container America-Vancouver { + presence "Indicates this node is configured."; + description + "PST America/Vancouver -8:00"; + } + container America-Virgin { + presence "Indicates this node is configured."; + description + "AST America/Virgin -4:00"; + } + container America-Whitehorse { + presence "Indicates this node is configured."; + description + "PST America/Whitehorse -8:00"; + } + container America-Winnipeg { + presence "Indicates this node is configured."; + description + "CST America/Winnipeg -6:00"; + } + container America-Yakutat { + presence "Indicates this node is configured."; + description + "AKST America/Yakutat -9:00"; + } + container America-Yellowknife { + presence "Indicates this node is configured."; + description + "MST America/Yellowknife -7:00"; + } + container Antarctica-Casey { + presence "Indicates this node is configured."; + description + "AWST Antarctica/Casey 8:00"; + } + container Antarctica-Davis { + presence "Indicates this node is configured."; + description + "DAVT Antarctica/Davis 7:00"; + } + container Antarctica-DumontDUrville { + presence "Indicates this node is configured."; + description + "DDUT Antarctica/DumontDUrville 10:00"; + } + container Antarctica-Macquarie { + presence "Indicates this node is configured."; + description + "MIST Antarctica/Macquarie 11:00"; + } + container Antarctica-Mawson { + presence "Indicates this node is configured."; + description + "MAWT Antarctica/Mawson 5:00"; + } + container Antarctica-McMurdo { + presence "Indicates this node is configured."; + description + "NZST Antarctica/McMurdo 12:00"; + } + container Antarctica-Palmer { + presence "Indicates this node is configured."; + description + "CLT Antarctica/Palmer -3:00"; + } + container Antarctica-Rothera { + presence "Indicates this node is configured."; + description + "ROTT Antarctica/Rothera -3:00"; + } + container Antarctica-South_Pole { + presence "Indicates this node is configured."; + description + "NZST Antarctica/South_Pole 12:00"; + } + container Antarctica-Syowa { + presence "Indicates this node is configured."; + description + "SYOT Antarctica/Syowa 3:00"; + } + container Antarctica-Troll { + presence "Indicates this node is configured."; + description + "UTC Antarctica/Troll 0:00"; + } + container Antarctica-Vostok { + presence "Indicates this node is configured."; + description + "VOST Antarctica/Vostok 6:00"; + } + container Asia-Aden { + presence "Indicates this node is configured."; + description + "AST Asia/Aden 3:00"; + } + container Asia-Almaty { + presence "Indicates this node is configured."; + description + "ALMT Asia/Almaty 6:00"; + } + container Asia-Amman { + presence "Indicates this node is configured."; + description + "EET Asia/Amman 2:00"; + } + container Asia-Anadyr { + presence "Indicates this node is configured."; + description + "ANAT Asia/Anadyr 12:00"; + } + container Asia-Aqtau { + presence "Indicates this node is configured."; + description + "AQTT Asia/Aqtau 5:00"; + } + container Asia-Aqtobe { + presence "Indicates this node is configured."; + description + "AQTT Asia/Aqtobe 5:00"; + } + container Asia-Ashgabat { + presence "Indicates this node is configured."; + description + "TMT Asia/Ashgabat 5:00"; + } + container Asia-Ashkhabad { + presence "Indicates this node is configured."; + description + "TMT Asia/Ashkhabad 5:00"; + } + container Australia-NSW { + presence "Indicates this node is configured."; + description + "AEST Australia/NSW 10:00"; + } + container Asia-Baghdad { + presence "Indicates this node is configured."; + description + "AST Asia/Baghdad 3:00"; + } + container Asia-Bahrain { + presence "Indicates this node is configured."; + description + "AST Asia/Bahrain 3:00"; + } + container Asia-Baku { + presence "Indicates this node is configured."; + description + "AZT Asia/Baku 4:00"; + } + container Asia-Bangkok { + presence "Indicates this node is configured."; + description + "ICT Asia/Bangkok 7:00"; + } + container Arctic-Longyearbyen { + presence "Indicates this node is configured."; + description + "CET Arctic/Longyearbyen 1:00"; + } + container Asia-Beirut { + presence "Indicates this node is configured."; + description + "EET Asia/Beirut 2:00"; + } + container Asia-Bishkek { + presence "Indicates this node is configured."; + description + "KGT Asia/Bishkek 6:00"; + } + container Asia-Brunei { + presence "Indicates this node is configured."; + description + "BNT Asia/Brunei 8:00"; + } + container Asia-Calcutta { + presence "Indicates this node is configured."; + description + "IST Asia/Calcutta 5:30"; + } + container Asia-Chita { + presence "Indicates this node is configured."; + description + "IRKT Asia/Chita 8:00"; + } + container Asia-Choibalsan { + presence "Indicates this node is configured."; + description + "CHOT Asia/Choibalsan 8:00"; + } + container Asia-Chongqing { + presence "Indicates this node is configured."; + description + "CST Asia/Chongqing 8:00"; + } + container Asia-Chungking { + presence "Indicates this node is configured."; + description + "CST Asia/Chungking 8:00"; + } + container Asia-Colombo { + presence "Indicates this node is configured."; + description + "IST Asia/Colombo 5:30"; + } + container Asia-Dacca { + presence "Indicates this node is configured."; + description + "BDT Asia/Dacca 6:00"; + } + container Asia-Damascus { + presence "Indicates this node is configured."; + description + "EET Asia/Damascus 2:00"; + } + container Asia-Dhaka { + presence "Indicates this node is configured."; + description + "BDT Asia/Dhaka 6:00"; + } + container Asia-Dili { + presence "Indicates this node is configured."; + description + "TLT Asia/Dili 9:00"; + } + container Asia-Dubai { + presence "Indicates this node is configured."; + description + "GST Asia/Dubai 4:00"; + } + container Asia-Dushanbe { + presence "Indicates this node is configured."; + description + "TJT Asia/Dushanbe 5:00"; + } + container Asia-Gaza { + presence "Indicates this node is configured."; + description + "EET Asia/Gaza 2:00"; + } + container Asia-Harbin { + presence "Indicates this node is configured."; + description + "CST Asia/Harbin 8:00"; + } + container Asia-Hebron { + presence "Indicates this node is configured."; + description + "EET Asia/Hebron 2:00"; + } + container Asia-Ho_Chi_Minh { + presence "Indicates this node is configured."; + description + "ICT Asia/Ho_Chi_Minh 7:00"; + } + container Asia-Hong_Kong { + presence "Indicates this node is configured."; + description + "HKT Asia/Hong_Kong 8:00"; + } + container Asia-Hovd { + presence "Indicates this node is configured."; + description + "HOVT Asia/Hovd 7:00"; + } + container Asia-Irkutsk { + presence "Indicates this node is configured."; + description + "IRKT Asia/Irkutsk 8:00"; + } + container Asia-Istanbul { + presence "Indicates this node is configured."; + description + "EET Asia/Istanbul 2:00"; + } + container Asia-Jakarta { + presence "Indicates this node is configured."; + description + "WIB Asia/Jakarta 7:00"; + } + container Asia-Jayapura { + presence "Indicates this node is configured."; + description + "WIT Asia/Jayapura 9:00"; + } + container Asia-Jerusalem { + presence "Indicates this node is configured."; + description + "IST Asia/Jerusalem 5:30"; + } + container Asia-Kabul { + presence "Indicates this node is configured."; + description + "AFT Asia/Kabul 4:30"; + } + container Asia-Kamchatka { + presence "Indicates this node is configured."; + description + "PETT Asia/Kamchatka 12:00"; + } + container Asia-Karachi { + presence "Indicates this node is configured."; + description + "PKT Asia/Karachi 5:00"; + } + container Asia-Kashgar { + presence "Indicates this node is configured."; + description + "XJT Asia/Kashgar 6:00"; + } + container Asia-Kathmandu { + presence "Indicates this node is configured."; + description + "NPT Asia/Kathmandu 05:45"; + } + container Asia-Katmandu { + presence "Indicates this node is configured."; + description + "NPT Asia/Katmandu 05:45"; + } + container Asia-Khandyga { + presence "Indicates this node is configured."; + description + "YAKT Asia/Khandyga 9:00"; + } + container Asia-Kolkata { + presence "Indicates this node is configured."; + description + "IST Asia/Kolkata 5:30"; + } + container Asia-Krasnoyarsk { + presence "Indicates this node is configured."; + description + "KRAT Asia/Krasnoyarsk 7:00"; + } + container Asia-Kuala_Lumpur { + presence "Indicates this node is configured."; + description + "MYT Asia/Kuala_Lumpur 8:00"; + } + container Asia-Kuching { + presence "Indicates this node is configured."; + description + "MYT Asia/Kuching 8:00"; + } + container Asia-Kuwait { + presence "Indicates this node is configured."; + description + "AST Asia/Kuwait 3:00"; + } + container Asia-Macao { + presence "Indicates this node is configured."; + description + "CST Asia/Macao 8:00"; + } + container Asia-Macau { + presence "Indicates this node is configured."; + description + "CST Asia/Macau 8:00"; + } + container Asia-Magadan { + presence "Indicates this node is configured."; + description + "MAGT Asia/Magadan 10:00"; + } + container Asia-Makassar { + presence "Indicates this node is configured."; + description + "WITA Asia/Makassar 8:00"; + } + container Asia-Manila { + presence "Indicates this node is configured."; + description + "PHT Asia/Manila 8:00"; + } + container Asia-Muscat { + presence "Indicates this node is configured."; + description + "GST Asia/Muscat 4:00"; + } + container Asia-Nicosia { + presence "Indicates this node is configured."; + description + "EET Asia/Nicosia 2:00"; + } + container Asia-Novokuznetsk { + presence "Indicates this node is configured."; + description + "KRAT Asia/Novokuznetsk 7:00"; + } + container Asia-Novosibirsk { + presence "Indicates this node is configured."; + description + "NOVT Asia/Novosibirsk 6:00"; + } + container Asia-Omsk { + presence "Indicates this node is configured."; + description + "OMST Asia/Omsk 6:00"; + } + container Asia-Oral { + presence "Indicates this node is configured."; + description + "ORAT Asia/Oral 5:00"; + } + container Asia-Phnom_Penh { + presence "Indicates this node is configured."; + description + "ICT Asia/Phnom_Penh 7:00"; + } + container Asia-Pontianak { + presence "Indicates this node is configured."; + description + "WIB Asia/Pontianak 7:00"; + } + container Asia-Pyongyang { + presence "Indicates this node is configured."; + description + "KST Asia/Pyongyang 9:00"; + } + container Asia-Qatar { + presence "Indicates this node is configured."; + description + "AST Asia/Qatar 3:00"; + } + container Europe-Vaduz { + presence "Indicates this node is configured."; + description + "CET Europe/Vaduz 1:00"; + } + container Asia-Qyzylorda { + presence "Indicates this node is configured."; + description + "QYZT Asia/Qyzylorda 6:00"; + } + container Asia-Rangoon { + presence "Indicates this node is configured."; + description + "MMT Asia/Rangoon 06:30"; + } + container Asia-Riyadh { + presence "Indicates this node is configured."; + description + "AST Asia/Riyadh 3:00"; + } + container Asia-Saigon { + presence "Indicates this node is configured."; + description + "ICT Asia/Saigon 7:00"; + } + container Asia-Sakhalin { + presence "Indicates this node is configured."; + description + "SAKT Asia/Sakhalin 10:00"; + } + container Asia-Samarkand { + presence "Indicates this node is configured."; + description + "UZT Asia/Samarkand 5:00"; + } + container Asia-Seoul { + presence "Indicates this node is configured."; + description + "KST Asia/Seoul 9:00"; + } + container Asia-Shanghai { + presence "Indicates this node is configured."; + description + "CST Asia/Shanghai 8:00"; + } + container Asia-Singapore { + presence "Indicates this node is configured."; + description + "SGT Asia/Singapore 8:00"; + } + container Asia-Srednekolymsk { + presence "Indicates this node is configured."; + description + "SRET Asia/Srednekolymsk 11:00"; + } + container Asia-Ujung_Pandang { + presence "Indicates this node is configured."; + description + "WITA Asia/Ujung_Pandang 8:00"; + } + container Asia-Ulaanbaatar { + presence "Indicates this node is configured."; + description + "ULAT Asia/Ulaanbaatar 8:00"; + } + container Asia-Ulan_Bator { + presence "Indicates this node is configured."; + description + "ULAT Asia/Ulan_Bator 8:00"; + } + container Asia-Urumqi { + presence "Indicates this node is configured."; + description + "XJT Asia/Urumqi 6:00"; + } + container Asia-Ust-Nera { + presence "Indicates this node is configured."; + description + "VLAT Asia/Ust-Nera 10:00"; + } + container Asia-Taipei { + presence "Indicates this node is configured."; + description + "CST Asia/Taipei 8:00"; + } + container Asia-Tashkent { + presence "Indicates this node is configured."; + description + "UZT Asia/Tashkent 5:00"; + } + container Asia-Tbilisi { + presence "Indicates this node is configured."; + description + "GET Asia/Tbilisi 4:00"; + } + container Asia-Tehran { + presence "Indicates this node is configured."; + description + "IRST Asia/Tehran 3:30"; + } + container Asia-Tel_Aviv { + presence "Indicates this node is configured."; + description + "IST Asia/Tel_Aviv 2:00"; + } + container Asia-Thimbu { + presence "Indicates this node is configured."; + description + "BTT Asia/Thimbu 6:00"; + } + container Asia-Thimphu { + presence "Indicates this node is configured."; + description + "BTT Asia/Thimphu 6:00"; + } + container Asia-Tokyo { + presence "Indicates this node is configured."; + description + "JST Asia/Tokyo 9:00"; + } + container Canada-East-Saskatchewan { + presence "Indicates this node is configured."; + description + "CST Canada/East-Saskatchewan -6:00"; + } + container Asia-Vientiane { + presence "Indicates this node is configured."; + description + "ICT Asia/Vientiane 7:00"; + } + container Asia-Vladivostok { + presence "Indicates this node is configured."; + description + "VLAT Asia/Vladivostok 10:00"; + } + container Asia-Yakutsk { + presence "Indicates this node is configured."; + description + "YAKT Asia/Yakutsk 9:00"; + } + container Africa-Abidjan { + presence "Indicates this node is configured."; + description + "GMT Africa/Abidjan 0:00"; + } + container Asia-Yekaterinburg { + presence "Indicates this node is configured."; + description + "YEKT Asia/Yekaterinburg 5:00"; + } + container Asia-Yerevan { + presence "Indicates this node is configured."; + description + "AMT Asia/Yerevan 4:00"; + } + container Atlantic-Azores { + presence "Indicates this node is configured."; + description + "AZOT Atlantic/Azores -1:00"; + } + container Atlantic-Bermuda { + presence "Indicates this node is configured."; + description + "AST Atlantic/Bermuda -4:00"; + } + container Atlantic-Canary { + presence "Indicates this node is configured."; + description + "WET Atlantic/Canary 0:00"; + } + container Atlantic-Cape_Verde { + presence "Indicates this node is configured."; + description + "CVT Atlantic/Cape_Verde -1:00"; + } + container Atlantic-Faeroe { + presence "Indicates this node is configured."; + description + "WET Atlantic/Faeroe 0:00"; + } + container Atlantic-Faroe { + presence "Indicates this node is configured."; + description + "WET Atlantic/Faroe 0:00"; + } + container Atlantic-Jan_Mayen { + presence "Indicates this node is configured."; + description + "CET Atlantic/Jan_Mayen 1:00"; + } + container Atlantic-Madeira { + presence "Indicates this node is configured."; + description + "WET Atlantic/Madeira 0:00"; + } + container Atlantic-Reykjavik { + presence "Indicates this node is configured."; + description + "GMT Atlantic/Reykjavik 0:00"; + } + container Atlantic-South_Georgia { + presence "Indicates this node is configured."; + description + "GST Atlantic/South_Georgia -2:00"; + } + container Atlantic-St_Helena { + presence "Indicates this node is configured."; + description + "GMT Atlantic/St_Helena 0:00"; + } + container Atlantic-Stanley { + presence "Indicates this node is configured."; + description + "FKST Atlantic/Stanley -3:00"; + } + container Australia-ACT { + presence "Indicates this node is configured."; + description + "AEST Australia/ACT 10:00"; + } + container Australia-Adelaide { + presence "Indicates this node is configured."; + description + "ACST Australia/Adelaide 9:30"; + } + container Australia-Brisbane { + presence "Indicates this node is configured."; + description + "AEST Australia/Brisbane 10:00"; + } + container Australia-Broken_Hill { + presence "Indicates this node is configured."; + description + "ACST Australia/Broken_Hill 9:30"; + } + container Australia-Canberra { + presence "Indicates this node is configured."; + description + "AEST Australia/Canberra 10:00"; + } + container Australia-Currie { + presence "Indicates this node is configured."; + description + "AEST Australia/Currie 10:00"; + } + container Australia-Darwin { + presence "Indicates this node is configured."; + description + "ACST Australia/Darwin 9:30"; + } + container Australia-Eucla { + presence "Indicates this node is configured."; + description + "ACWST Australia/Eucla 8:45"; + } + container Australia-Hobart { + presence "Indicates this node is configured."; + description + "AEST Australia/Hobart 10:00"; + } + container Australia-LHI { + presence "Indicates this node is configured."; + description + "LHST Australia/LHI 10:30"; + } + container Australia-Lindeman { + presence "Indicates this node is configured."; + description + "AEST Australia/Lindeman 10:00"; + } + container Australia-Lord_Howe { + presence "Indicates this node is configured."; + description + "LHST Australia/Lord_Howe 10:30"; + } + container Australia-Melbourne { + presence "Indicates this node is configured."; + description + "AEST Australia/Melbourne 10:00"; + } + container Australia-North { + presence "Indicates this node is configured."; + description + "ACST Australia/North 9:30"; + } + container Australia-Perth { + presence "Indicates this node is configured."; + description + "AWST Australia/Perth 8:00"; + } + container Australia-Queensland { + presence "Indicates this node is configured."; + description + "AEST Australia/Queensland 10:00"; + } + container Australia-South { + presence "Indicates this node is configured."; + description + "ACST Australia/South 9:30"; + } + container Australia-Sydney { + presence "Indicates this node is configured."; + description + "AEST Australia/Sydney 10:00"; + } + container Australia-Tasmania { + presence "Indicates this node is configured."; + description + "AEST Australia/Tasmania 10:00"; + } + container Australia-Victoria { + presence "Indicates this node is configured."; + description + "AEST Australia/Victoria 10:00"; + } + container Australia-West { + presence "Indicates this node is configured."; + description + "AWST Australia/West 8:00"; + } + container Australia-Yancowinna { + presence "Indicates this node is configured."; + description + "ACST Australia/Yancowinna 9:30"; + } + container Brazil-Acre { + presence "Indicates this node is configured."; + description + "ACT Brazil/Acre -5:00"; + } + container Brazil-DeNoronha { + presence "Indicates this node is configured."; + description + "FNT Brazil/DeNoronha -2:00"; + } + container Brazil-East { + presence "Indicates this node is configured."; + description + "BRT Brazil/East -3:00"; + } + container Brazil-West { + presence "Indicates this node is configured."; + description + "AMT Brazil/West -4:00"; + } + container CET { + presence "Indicates this node is configured."; + description + "CET CET 1:00"; + } + container CST6CDT { + presence "Indicates this node is configured."; + description + "CST CST6CDT -6:00"; + } + container Canada-Atlantic { + presence "Indicates this node is configured."; + description + "AST Canada/Atlantic -4:00"; + } + container Canada-Central { + presence "Indicates this node is configured."; + description + "CST Canada/Central -6:00"; + } + container Canada-Eastern { + presence "Indicates this node is configured."; + description + "EST Canada/Eastern -5:00"; + } + container Canada-Mountain { + presence "Indicates this node is configured."; + description + "MST Canada/Mountain -7:00"; + } + container Canada-Newfoundland { + presence "Indicates this node is configured."; + description + "NST Canada/Newfoundland -3:30"; + } + container Canada-Pacific { + presence "Indicates this node is configured."; + description + "PST Canada/Pacific -8:00"; + } + container Canada-Saskatchewan { + presence "Indicates this node is configured."; + description + "CST Canada/Saskatchewan -6:00"; + } + container Canada-Yukon { + presence "Indicates this node is configured."; + description + "PST Canada/Yukon -8:00"; + } + container Chile-Continental { + presence "Indicates this node is configured."; + description + "CLT Chile/Continental -4:00"; + } + container Chile-EasterIsland { + presence "Indicates this node is configured."; + description + "EAST Chile/EasterIsland -6:00"; + } + container Cuba { + presence "Indicates this node is configured."; + description + "CST Cuba -5:00"; + } + container EET { + presence "Indicates this node is configured."; + description + "EET EET 2:00"; + } + container EST { + presence "Indicates this node is configured."; + description + "EST EST -5:00"; + } + container EST5EDT { + presence "Indicates this node is configured."; + description + "EST EST5EDT -5:00"; + } + container Egypt { + presence "Indicates this node is configured."; + description + "EET Egypt 2:00"; + } + container Eire { + presence "Indicates this node is configured."; + description + "GMT Eire 0:00"; + } + container Etc-GMT { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT 0:00"; + } + container Etc-GMT-plus-0 { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT+0 0:00"; + } + container Etc-GMT-plus-1 { + presence "Indicates this node is configured."; + description + "GMT+1 Etc/GMT+1 -1:00"; + } + container Etc-GMT-plus-2 { + presence "Indicates this node is configured."; + description + "GMT+2 Etc/GMT+2 -2:00"; + } + container Etc-GMT-plus-3 { + presence "Indicates this node is configured."; + description + "GMT+3 Etc/GMT+3 -3:00"; + } + container Etc-GMT-plus-4 { + presence "Indicates this node is configured."; + description + "GMT+4 Etc/GMT+4 -4:00"; + } + container Etc-GMT-plus-5 { + presence "Indicates this node is configured."; + description + "GMT+5 Etc/GMT+5 -5:00"; + } + container Etc-GMT-plus-6 { + presence "Indicates this node is configured."; + description + "GMT+6 Etc/GMT+6 -6:00"; + } + container Etc-GMT-plus-7 { + presence "Indicates this node is configured."; + description + "GMT+7 Etc/GMT+7 -7:00"; + } + container Etc-GMT-plus-8 { + presence "Indicates this node is configured."; + description + "GMT+8 Etc/GMT+8 -8:00"; + } + container Etc-GMT-plus-9 { + presence "Indicates this node is configured."; + description + "GMT+9 Etc/GMT+9 -9:00"; + } + container Etc-GMT-plus-10 { + presence "Indicates this node is configured."; + description + "GMT+10 Etc/GMT+10 -10:00"; + } + container Etc-GMT-plus-11 { + presence "Indicates this node is configured."; + description + "GMT+11 Etc/GMT+11 -11:00"; + } + container Etc-GMT-plus-12 { + presence "Indicates this node is configured."; + description + "GMT+12 Etc/GMT+12 -12:00"; + } + container Etc-GMT-0 { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT-0 0:00"; + } + container Etc-GMT-1 { + presence "Indicates this node is configured."; + description + "GMT-1 Etc/GMT-1 1:00"; + } + container Etc-GMT-2 { + presence "Indicates this node is configured."; + description + "GMT-2 Etc/GMT-2 2:00"; + } + container Etc-GMT-3 { + presence "Indicates this node is configured."; + description + "GMT-3 Etc/GMT-3 3:00"; + } + container Etc-GMT-4 { + presence "Indicates this node is configured."; + description + "GMT-4 Etc/GMT-4 4:00"; + } + container Etc-GMT-5 { + presence "Indicates this node is configured."; + description + "GMT-5 Etc/GMT-5 5:00"; + } + container Etc-GMT-6 { + presence "Indicates this node is configured."; + description + "GMT-6 Etc/GMT-6 6:00"; + } + container Etc-GMT-7 { + presence "Indicates this node is configured."; + description + "GMT-7 Etc/GMT-7 7:00"; + } + container Etc-GMT-8 { + presence "Indicates this node is configured."; + description + "GMT-8 Etc/GMT-8 8:00"; + } + container Etc-GMT-9 { + presence "Indicates this node is configured."; + description + "GMT-9 Etc/GMT-9 9:00"; + } + container Etc-GMT-10 { + presence "Indicates this node is configured."; + description + "GMT-10 Etc/GMT-10 10:00"; + } + container Etc-GMT-11 { + presence "Indicates this node is configured."; + description + "GMT-11 Etc/GMT-11 11:00"; + } + container Etc-GMT-12 { + presence "Indicates this node is configured."; + description + "GMT-12 Etc/GMT-12 12:00"; + } + container Etc-GMT0 { + presence "Indicates this node is configured."; + description + "GMT Etc/GMT0 0:00"; + } + container Etc-Greenwich { + presence "Indicates this node is configured."; + description + "GMT Etc/Greenwich 0:00"; + } + container Etc-UCT { + presence "Indicates this node is configured."; + description + "UCT Etc/UCT 0:00"; + } + container Etc-UTC { + presence "Indicates this node is configured."; + description + "UTC Etc/UTC 0:00"; + } + container Etc-Universal { + presence "Indicates this node is configured."; + description + "UTC Etc/Universal 0:00"; + } + container Etc-Zulu { + presence "Indicates this node is configured."; + description + "UTC Etc/Zulu 0:00"; + } + container Europe-Amsterdam { + presence "Indicates this node is configured."; + description + "CET Europe/Amsterdam 1:00"; + } + container Europe-Andorra { + presence "Indicates this node is configured."; + description + "CET Europe/Andorra 1:00"; + } + container Etc-GMT-13 { + presence "Indicates this node is configured."; + description + "GMT-13 Etc/GMT-13 13:00"; + } + container Europe-Athens { + presence "Indicates this node is configured."; + description + "EET Europe/Athens 2:00"; + } + container Europe-Belfast { + presence "Indicates this node is configured."; + description + "GMT Europe/Belfast 0:00"; + } + container Europe-Belgrade { + presence "Indicates this node is configured."; + description + "CET Europe/Belgrade 1:00"; + } + container Europe-Berlin { + presence "Indicates this node is configured."; + description + "CET Europe/Berlin 1:00"; + } + container Europe-Bratislava { + presence "Indicates this node is configured."; + description + "CET Europe/Bratislava 1:00"; + } + container Europe-Brussels { + presence "Indicates this node is configured."; + description + "CET Europe/Brussels 1:00"; + } + container Europe-Bucharest { + presence "Indicates this node is configured."; + description + "EET Europe/Bucharest 2:00"; + } + container Europe-Budapest { + presence "Indicates this node is configured."; + description + "CET Europe/Budapest 1:00"; + } + container Europe-Busingen { + presence "Indicates this node is configured."; + description + "CET Europe/Busingen 1:00"; + } + container Europe-Chisinau { + presence "Indicates this node is configured."; + description + "EET Europe/Chisinau 2:00"; + } + container Europe-Copenhagen { + presence "Indicates this node is configured."; + description + "CET Europe/Copenhagen 1:00"; + } + container Europe-Dublin { + presence "Indicates this node is configured."; + description + "GMT Europe/Dublin 1:00"; + } + container Europe-Gibraltar { + presence "Indicates this node is configured."; + description + "CET Europe/Gibraltar 1:00"; + } + container Europe-Guernsey { + presence "Indicates this node is configured."; + description + "GMT Europe/Guernsey 0:00"; + } + container Europe-Helsinki { + presence "Indicates this node is configured."; + description + "EET Europe/Helsinki 2:00"; + } + container Europe-Isle_of_Man { + presence "Indicates this node is configured."; + description + "GMT Europe/Isle_of_Man 0:00"; + } + container Europe-Istanbul { + presence "Indicates this node is configured."; + description + "EET Europe/Istanbul 2:00"; + } + container Europe-Jersey { + presence "Indicates this node is configured."; + description + "GMT Europe/Jersey 0:00"; + } + container Europe-Kaliningrad { + presence "Indicates this node is configured."; + description + "EET Europe/Kaliningrad 2:00"; + } + container Europe-Kiev { + presence "Indicates this node is configured."; + description + "EET Europe/Kiev 2:00"; + } + container Etc-GMT-14 { + presence "Indicates this node is configured."; + description + "GMT-14 Etc/GMT-14 14:00"; + } + container Europe-Lisbon { + presence "Indicates this node is configured."; + description + "WET Europe/Lisbon 0:00"; + } + container Europe-Ljubljana { + presence "Indicates this node is configured."; + description + "CET Europe/Ljubljana 1:00"; + } + container Europe-London { + presence "Indicates this node is configured."; + description + "GMT Europe/London 0:00"; + } + container Europe-Luxembourg { + presence "Indicates this node is configured."; + description + "CET Europe/Luxembourg 1:00"; + } + container Europe-Madrid { + presence "Indicates this node is configured."; + description + "CET Europe/Madrid 1:00"; + } + container Europe-Malta { + presence "Indicates this node is configured."; + description + "CET Europe/Malta 1:00"; + } + container Europe-Mariehamn { + presence "Indicates this node is configured."; + description + "EET Europe/Mariehamn 2:00"; + } + container Europe-Minsk { + presence "Indicates this node is configured."; + description + "MSK Europe/Minsk 3:00"; + } + container Europe-Monaco { + presence "Indicates this node is configured."; + description + "CET Europe/Monaco 1:00"; + } + container Europe-Moscow { + presence "Indicates this node is configured."; + description + "MSK Europe/Moscow 3:00"; + } + container Europe-Nicosia { + presence "Indicates this node is configured."; + description + "EET Europe/Nicosia 2:00"; + } + container Europe-Oslo { + presence "Indicates this node is configured."; + description + "CET Europe/Oslo 1:00"; + } + container Europe-Paris { + presence "Indicates this node is configured."; + description + "CET Europe/Paris 1:00"; + } + container Europe-Podgorica { + presence "Indicates this node is configured."; + description + "CET Europe/Podgorica 1:00"; + } + container Europe-Prague { + presence "Indicates this node is configured."; + description + "CET Europe/Prague 1:00"; + } + container Europe-Riga { + presence "Indicates this node is configured."; + description + "EET Europe/Riga 2:00"; + } + container Europe-Rome { + presence "Indicates this node is configured."; + description + "CET Europe/Rome 1:00"; + } + container Europe-Samara { + presence "Indicates this node is configured."; + description + "SAMT Europe/Samara 4:00"; + } + container Europe-San_Marino { + presence "Indicates this node is configured."; + description + "CET Europe/San_Marino 1:00"; + } + container Europe-Sarajevo { + presence "Indicates this node is configured."; + description + "CET Europe/Sarajevo 1:00"; + } + container US-Aleutian { + presence "Indicates this node is configured."; + description + "HAST US/Aleutian 10:00"; + } + container Europe-Simferopol { + presence "Indicates this node is configured."; + description + "MSK Europe/Simferopol 3:00"; + } + container Europe-Skopje { + presence "Indicates this node is configured."; + description + "CET Europe/Skopje 1:00"; + } + container Europe-Sofia { + presence "Indicates this node is configured."; + description + "EET Europe/Sofia 2:00"; + } + container Europe-Stockholm { + presence "Indicates this node is configured."; + description + "CET Europe/Stockholm 1:00"; + } + container Europe-Tallinn { + presence "Indicates this node is configured."; + description + "EET Europe/Tallinn 2:00"; + } + container Europe-Tirane { + presence "Indicates this node is configured."; + description + "CET Europe/Tirane 1:00"; + } + container Europe-Tiraspol { + presence "Indicates this node is configured."; + description + "EET Europe/Tiraspol 2:00"; + } + container America-Asuncion { + presence "Indicates this node is configured."; + description + "PYT America/Asuncion -4:00"; + } + container Europe-Uzhgorod { + presence "Indicates this node is configured."; + description + "EET Europe/Uzhgorod 2:00"; + } + container Europe-Vatican { + presence "Indicates this node is configured."; + description + "CET Europe/Vatican 1:00"; + } + container Europe-Vienna { + presence "Indicates this node is configured."; + description + "CET Europe/Vienna 1:00"; + } + container Europe-Vilnius { + presence "Indicates this node is configured."; + description + "EET Europe/Vilnius 2:00"; + } + container Europe-Volgograd { + presence "Indicates this node is configured."; + description + "MSK Europe/Volgograd 4:00"; + } + container Europe-Warsaw { + presence "Indicates this node is configured."; + description + "CET Europe/Warsaw 1:00"; + } + container Europe-Zagreb { + presence "Indicates this node is configured."; + description + "CET Europe/Zagreb 1:00"; + } + container Europe-Zaporozhye { + presence "Indicates this node is configured."; + description + "EET Europe/Zaporozhye 2:00"; + } + container Europe-Zurich { + presence "Indicates this node is configured."; + description + "CET Europe/Zurich 1:00"; + } + container GB { + presence "Indicates this node is configured."; + description + "GMT GB 0:00"; + } + container GB-Eire { + presence "Indicates this node is configured."; + description + "GMT GB-Eire 0:00"; + } + container GMT { + presence "Indicates this node is configured."; + description + "GMT GMT 0:00"; + } + container GMT-plus-0 { + presence "Indicates this node is configured."; + description + "GMT GMT+0 0:00"; + } + container GMT-0 { + presence "Indicates this node is configured."; + description + "GMT GMT-0 0:00"; + } + container GMT0 { + presence "Indicates this node is configured."; + description + "GMT GMT0 0:00"; + } + container Greenwich { + presence "Indicates this node is configured."; + description + "GMT Greenwich 0:00"; + } + container HST { + presence "Indicates this node is configured."; + description + "HST HST -10:00"; + } + container Hongkong { + presence "Indicates this node is configured."; + description + "HKT Hongkong 8:00"; + } + container Iceland { + presence "Indicates this node is configured."; + description + "GMT Iceland 0:00"; + } + container Indian-Antananarivo { + presence "Indicates this node is configured."; + description + "EAT Indian/Antananarivo 3:00"; + } + container Indian-Chagos { + presence "Indicates this node is configured."; + description + "IOT Indian/Chagos 6:00"; + } + container Indian-Christmas { + presence "Indicates this node is configured."; + description + "CXT Indian/Christmas 7:00"; + } + container Indian-Cocos { + presence "Indicates this node is configured."; + description + "CCT Indian/Cocos 06:30"; + } + container Indian-Comoro { + presence "Indicates this node is configured."; + description + "EAT Indian/Comoro 3:00"; + } + container Indian-Kerguelen { + presence "Indicates this node is configured."; + description + "TFT Indian/Kerguelen 5:00"; + } + container Indian-Mahe { + presence "Indicates this node is configured."; + description + "SCT Indian/Mahe 4:00"; + } + container Indian-Maldives { + presence "Indicates this node is configured."; + description + "MVT Indian/Maldives 5:00"; + } + container Indian-Mauritius { + presence "Indicates this node is configured."; + description + "MUT Indian/Mauritius 4:00"; + } + container Indian-Mayotte { + presence "Indicates this node is configured."; + description + "EAT Indian/Mayotte 3:00"; + } + container Indian-Reunion { + presence "Indicates this node is configured."; + description + "RET Indian/Reunion 4:00"; + } + container Iran { + presence "Indicates this node is configured."; + description + "IRST Iran 3:30"; + } + container Israel { + presence "Indicates this node is configured."; + description + "IST Israel 2:00"; + } + container Jamaica { + presence "Indicates this node is configured."; + description + "EST Jamaica -5:00"; + } + container Japan { + presence "Indicates this node is configured."; + description + "JST Japan 9:00"; + } + container Kwajalein { + presence "Indicates this node is configured."; + description + "MHT Kwajalein 12:00"; + } + container Libya { + presence "Indicates this node is configured."; + description + "EET Libya 2:00"; + } + container MET { + presence "Indicates this node is configured."; + description + "MET MET 1:00"; + } + container MST { + presence "Indicates this node is configured."; + description + "MST MST -7:00"; + } + container MST7MDT { + presence "Indicates this node is configured."; + description + "MST MST7MDT -7:00"; + } + container Mexico-BajaNorte { + presence "Indicates this node is configured."; + description + "PST Mexico/BajaNorte -8:00"; + } + container Mexico-BajaSur { + presence "Indicates this node is configured."; + description + "MST Mexico/BajaSur -7:00"; + } + container Mexico-General { + presence "Indicates this node is configured."; + description + "CST Mexico/General -6:00"; + } + container NZ { + presence "Indicates this node is configured."; + description + "NZST NZ 12:00"; + } + container NZ-CHAT { + presence "Indicates this node is configured."; + description + "CHAST NZ-CHAT 12:45"; + } + container Navajo { + presence "Indicates this node is configured."; + description + "MST Navajo -7:00"; + } + container PRC { + presence "Indicates this node is configured."; + description + "CST PRC 8:00"; + } + container PST8PDT { + presence "Indicates this node is configured."; + description + "PST PST8PDT -8:00"; + } + container Pacific-Apia { + presence "Indicates this node is configured."; + description + "WSST Pacific/Apia 13:00"; + } + container Pacific-Auckland { + presence "Indicates this node is configured."; + description + "NZST Pacific/Auckland 12:00"; + } + container Pacific-Bougainville { + presence "Indicates this node is configured."; + description + "BST Pacific/Bougainville 11:00"; + } + container Pacific-Chatham { + presence "Indicates this node is configured."; + description + "CHAST Pacific/Chatham 12:45"; + } + container Pacific-Chuuk { + presence "Indicates this node is configured."; + description + "CHUT Pacific/Chuuk 10:00"; + } + container Pacific-Easter { + presence "Indicates this node is configured."; + description + "EAST Pacific/Easter -6:00"; + } + container Pacific-Efate { + presence "Indicates this node is configured."; + description + "VUT Pacific/Efate 11:00"; + } + container Pacific-Enderbury { + presence "Indicates this node is configured."; + description + "PHOT Pacific/Enderbury 13:00"; + } + container Pacific-Fakaofo { + presence "Indicates this node is configured."; + description + "TKT Pacific/Fakaofo 13:00"; + } + container Pacific-Fiji { + presence "Indicates this node is configured."; + description + "FJT Pacific/Fiji 12:00"; + } + container Pacific-Funafuti { + presence "Indicates this node is configured."; + description + "TVT Pacific/Funafuti 12:00"; + } + container Pacific-Galapagos { + presence "Indicates this node is configured."; + description + "GALT Pacific/Galapagos -6:00"; + } + container Pacific-Gambier { + presence "Indicates this node is configured."; + description + "GAMT Pacific/Gambier -9:00"; + } + container Pacific-Guadalcanal { + presence "Indicates this node is configured."; + description + "SBT Pacific/Guadalcanal 11:00"; + } + container Pacific-Guam { + presence "Indicates this node is configured."; + description + "ChST Pacific/Guam 10:00"; + } + container Pacific-Honolulu { + presence "Indicates this node is configured."; + description + "HST Pacific/Honolulu -10:00"; + } + container Pacific-Johnston { + presence "Indicates this node is configured."; + description + "HST Pacific/Johnston -10:00"; + } + container Pacific-Kiritimati { + presence "Indicates this node is configured."; + description + "LINT Pacific/Kiritimati 14:00"; + } + container Pacific-Kosrae { + presence "Indicates this node is configured."; + description + "KOST Pacific/Kosrae 11:00"; + } + container Pacific-Kwajalein { + presence "Indicates this node is configured."; + description + "MHT Pacific/Kwajalein 12:00"; + } + container Pacific-Majuro { + presence "Indicates this node is configured."; + description + "MHT Pacific/Majuro 12:00"; + } + container Pacific-Marquesas { + presence "Indicates this node is configured."; + description + "MART Pacific/Marquesas -09:30"; + } + container Pacific-Nauru { + presence "Indicates this node is configured."; + description + "NRT Pacific/Nauru 12:00"; + } + container Pacific-Niue { + presence "Indicates this node is configured."; + description + "NUT Pacific/Niue -11:00"; + } + container Pacific-Norfolk { + presence "Indicates this node is configured."; + description + "NFT Pacific/Norfolk 11:30"; + } + container Pacific-Noumea { + presence "Indicates this node is configured."; + description + "NCT Pacific/Noumea 11:00"; + } + container Pacific-Pago_Pago { + presence "Indicates this node is configured."; + description + "SST Pacific/Pago_Pago -11:00"; + } + container Pacific-Palau { + presence "Indicates this node is configured."; + description + "PWT Pacific/Palau 9:00"; + } + container Pacific-Pitcairn { + presence "Indicates this node is configured."; + description + "PST Pacific/Pitcairn -8:00"; + } + container Pacific-Pohnpei { + presence "Indicates this node is configured."; + description + "PONT Pacific/Pohnpei 11:00"; + } + container Pacific-Ponape { + presence "Indicates this node is configured."; + description + "PONT Pacific/Ponape 11:00"; + } + container Pacific-Port_Moresby { + presence "Indicates this node is configured."; + description + "PGT Pacific/Port_Moresby 10:00"; + } + container Pacific-Rarotonga { + presence "Indicates this node is configured."; + description + "CKT Pacific/Rarotonga -10:00"; + } + container Pacific-Saipan { + presence "Indicates this node is configured."; + description + "ChST Pacific/Saipan 10:00"; + } + container Pacific-Samoa { + presence "Indicates this node is configured."; + description + "SST Pacific/Samoa -11:00"; + } + container Pacific-Tahiti { + presence "Indicates this node is configured."; + description + "TAHT Pacific/Tahiti -10:00"; + } + container Pacific-Tarawa { + presence "Indicates this node is configured."; + description + "GILT Pacific/Tarawa 12:00"; + } + container Pacific-Tongatapu { + presence "Indicates this node is configured."; + description + "TOT Pacific/Tongatapu 13:00"; + } + container Pacific-Truk { + presence "Indicates this node is configured."; + description + "CHUT Pacific/Truk 10:00"; + } + container Pacific-Wake { + presence "Indicates this node is configured."; + description + "WAKT Pacific/Wake 12:00"; + } + container Pacific-Wallis { + presence "Indicates this node is configured."; + description + "WFT Pacific/Wallis 12:00"; + } + container Pacific-Yap { + presence "Indicates this node is configured."; + description + "CHUT Pacific/Yap 10:00"; + } + container Poland { + presence "Indicates this node is configured."; + description + "CET Poland 1:00"; + } + container Portugal { + presence "Indicates this node is configured."; + description + "WET Portugal 0:00"; + } + container ROC { + presence "Indicates this node is configured."; + description + "CST ROC 8:00"; + } + container ROK { + presence "Indicates this node is configured."; + description + "KST ROK 9:00"; + } + container Singapore { + presence "Indicates this node is configured."; + description + "SGT Singapore 8:00"; + } + container Turkey { + presence "Indicates this node is configured."; + description + "EET Turkey 2:00"; + } + container UCT { + presence "Indicates this node is configured."; + description + "UCT UCT 0:00"; + } + container US-Alaska { + presence "Indicates this node is configured."; + description + "AKST US/Alaska -9:00"; + } + container US-Arizona { + presence "Indicates this node is configured."; + description + "MST US/Arizona -7:00"; + } + container US-Central { + presence "Indicates this node is configured."; + description + "CST US/Central -6:00"; + } + container US-East-Indiana { + presence "Indicates this node is configured."; + description + "EST US/East-Indiana -5:00"; + } + container US-Eastern { + presence "Indicates this node is configured."; + description + "EST US/Eastern -5:00"; + } + container US-Hawaii { + presence "Indicates this node is configured."; + description + "HST US/Hawaii -10:00"; + } + container US-Indiana-Starke { + presence "Indicates this node is configured."; + description + "CST US/Indiana-Starke -6:00"; + } + container US-Michigan { + presence "Indicates this node is configured."; + description + "EST US/Michigan -5:00"; + } + container US-Mountain { + presence "Indicates this node is configured."; + description + "MST US/Mountain -7:00"; + } + container US-Pacific { + presence "Indicates this node is configured."; + description + "PST US/Pacific -8:00"; + } + container US-Samoa { + presence "Indicates this node is configured."; + description + "SST US/Samoa -11:00"; + } + container UTC { + presence "Indicates this node is configured."; + description + "UTC UTC 0:00"; + } + container Universal { + presence "Indicates this node is configured."; + description + "UTC Universal 0:00"; + } + container W-SU { + presence "Indicates this node is configured."; + description + "MSK W-SU 3:00"; + } + container WET { + presence "Indicates this node is configured."; + description + "WET WET 0:00"; + } + container Zulu { + presence "Indicates this node is configured."; + description + "UTC Zulu 0:00"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-interface-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-interface-cfg.yang new file mode 100644 index 000000000..7e9de5523 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-clock-interface-cfg.yang @@ -0,0 +1,2154 @@ +module Cisco-IOS-XR-um-clock-interface-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-clock-interface-cfg"; + prefix um-clock-interface-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 clock-interface package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container clock-interfaces { + description + "Clock interface configuration commands"; + list clock-interface { + key "interface-name"; + description + "Clock interface configuration commands"; + leaf interface-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Clock interface name"; + } + } + description + "Clock interface name"; + } + container frequency { + description + "Frequency Synchronization configuration"; + container synchronization { + description + "Frequency Synchronization configuration"; + container ssm { + description + "SSM configuration commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable sending of SSMs"; + } + } + leaf priority { + type uint32 { + range "1..254" { + description + "Source priority"; + } + } + description + "Source priority"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254" { + description + "Source time-of-day priority"; + } + } + description + "Source time-of-day priority"; + } + container quality { + description + "Quality level configuration"; + container transmit { + description + "Set the quality level to be transmitted"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/one or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/one or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + container receive { + description + "Adjust the received quality level"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/one or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/one or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + } + leaf wait-to-restore { + type uint32 { + range "0..12" { + description + "Wait-to-restore time, in minutes"; + } + } + description + "Set the wait-to-restore time"; + } + container selection { + description + "Selection configuration commands"; + container input { + presence "Indicates a input node is configured."; + description + "Enable this source for selection"; + } + } + } + } + container port-parameters { + description + "clock port parameter setting"; + container bits-input { + description + "BITS RX interface"; + container t1 { + description + "t1 mode"; + container esf { + description + "esf mode"; + container ami { + must "not(../b8zs)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container b8zs { + must "not(../ami)"; + presence "Indicates a b8zs node is configured."; + description + "b8zs mode"; + } + } + container d4 { + description + "d4 mode"; + container ami { + must "not(../b8zs)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container b8zs { + must "not(../ami)"; + presence "Indicates a b8zs node is configured."; + description + "b8zs mode"; + } + } + } + container e1 { + description + "e1 mode"; + container non-crc-4 { + description + "non-crc-4 mode"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container crc-4 { + description + "crc4 mode"; + container sa4 { + description + "SSM on Sa4 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa5 { + description + "SSM on Sa5 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa6 { + description + "SSM on Sa6 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa7 { + description + "SSM on Sa7 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa8 { + description + "SSM on Sa8 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + } + } + container two-m { + must "not(../sixty-four-k-input-only)"; + presence "Indicates a two-m node is configured."; + description + "2m mode"; + } + container sixty-four-k-input-only { + must "not(../two-m)"; + presence "Indicates a sixty-four-k-input-only node is configured."; + description + "64k-input-only mode"; + } + } + container bits-output { + description + "BITS TX interface"; + container t1 { + description + "t1 mode"; + container esf { + description + "esf mode"; + container ami { + description + "ami mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + container b8zs { + description + "b8zs mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + } + container d4 { + description + "d4 mode"; + container ami { + description + "ami mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + container b8zs { + description + "b8zs mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + } + } + container e1 { + description + "e1 mode"; + container non-crc-4 { + description + "non-crc-4 mode"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container crc-4 { + description + "crc4 mode"; + container sa4 { + description + "SSM on Sa4 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa5 { + description + "SSM on Sa5 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa6 { + description + "SSM on Sa6 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa7 { + description + "SSM on Sa7 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa8 { + description + "SSM on Sa8 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + } + } + container two-m { + must "not(../six-m-output-only)"; + presence "Indicates a two-m node is configured."; + description + "2m mode"; + } + container six-m-output-only { + must "not(../two-m)"; + presence "Indicates a six-m-output-only node is configured."; + description + "6m-output-only mode"; + } + } + container gps-input { + description + "GPS TOD/10MHz/1PPS input interface"; + container tod-format { + description + "Specify the TOD msg format"; + container cisco { + description + "TOD msg in Cisco ASCII format"; + container pps-input { + description + "Specify the 1PPS input mode select"; + container ttl { + must "not(../rs422)"; + presence "Indicates a ttl node is configured."; + description + "TTL 1PPS input"; + } + container rs422 { + must "not(../ttl)"; + presence "Indicates a rs422 node is configured."; + description + "RS422 1PPS input"; + } + } + } + container ntp4 { + description + "TOD msg in NTP Type 4 format"; + container pps-input { + description + "Specify the 1PPS input mode select"; + container ttl { + must "not(../rs422)"; + presence "Indicates a ttl node is configured."; + description + "TTL 1PPS input"; + } + container rs422 { + must "not(../ttl)"; + presence "Indicates a rs422 node is configured."; + description + "RS422 1PPS input"; + } + } + } + container gprmc { + description + "TOD msg in NMEA/GPRMC format"; + container pps-input { + description + "Specify the 1PPS input mode select"; + container ttl { + must "not(../rs422)"; + presence "Indicates a ttl node is configured."; + description + "TTL 1PPS input"; + } + container rs422 { + must "not(../ttl)"; + presence "Indicates a rs422 node is configured."; + description + "RS422 1PPS input"; + } + } + } + } + container offset { + description + "Set a fixed offset from received TOD to translate into PTP time"; + container utc { + must "not(../tai or ../gps)"; + presence "Indicates a utc node is configured."; + description + "ToD provides UTC time"; + } + container tai { + must "not(../utc or ../gps)"; + presence "Indicates a tai node is configured."; + description + "ToD provides TAI time"; + } + container gps { + must "not(../utc or ../tai)"; + presence "Indicates a gps node is configured."; + description + "ToD provides GPS time"; + } + } + container baud-rate { + description + "Set the baud-rate for the ToD UART input"; + container bps-1200 { + must + "not(../bps-2400 or ../bps-4800 + or ../bps-9600 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-1200 node is configured."; + description + "1200 bps"; + } + container bps-2400 { + must + "not(../bps-1200 or ../bps-4800 + or ../bps-9600 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-2400 node is configured."; + description + "2400 bps"; + } + container bps-4800 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-9600 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-4800 node is configured."; + description + "4800 bps"; + } + container bps-9600 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-9600 node is configured."; + description + "9600 bps"; + } + container bps-19200 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-19200 node is configured."; + description + "19200 bps"; + } + container bps-38400 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-19200 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-38400 node is configured."; + description + "38400 bps"; + } + container bps-76800 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-19200 or ../bps-38400 + or ../bps-153600)"; + presence "Indicates a bps-76800 node is configured."; + description + "76800 bps"; + } + container bps-153600 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-19200 or ../bps-38400 + or ../bps-76800)"; + presence "Indicates a bps-153600 node is configured."; + description + "153600 bps"; + } + } + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Disable the SyncE Port"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-commit-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-commit-cfg.yang new file mode 100644 index 000000000..5d6c44c3c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-commit-cfg.yang @@ -0,0 +1,175 @@ +module Cisco-IOS-XR-um-config-commit-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-config-commit-cfg"; + prefix um-config-commit-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 config-commit package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-20 { + description + "Fix aes password datatype. + 2023-01-05 + Fix password datatype. Make wait-time fields mandatory. + 2022-11-16 + Add autosave feature + 2022-03-08 + Removed Cisco-IOS-XR-types import"; + semver:module-version "2.0.0"; + } + revision 2021-04-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container configuration { + description + "Configuration related settings "; + container commit { + description + "auto-save the running configuration"; + container auto-save { + presence "Indicates a auto-save node is configured."; + description + "auto-save the running configuration"; + container filename { + presence "Indicates a filename node is configured."; + description + "filename to auto-save"; + leaf protocol { + type string { + length "1..800" { + description + "protocol (e.g. sftp:, /disk0:/, PWD, etc...)"; + } + } + mandatory true; + description + "protocol (e.g. sftp:, /disk0:/, PWD, etc...)"; + } + leaf url-remainder { + type string { + length "1..800" { + description + "url remainder"; + } + } + mandatory true; + description + "url remainder"; + } + } + container password { + description + "The password for the remote url"; + container encrypted { + description + "Specifies an ENCRYPTED password"; + leaf encryption-default { + type xr:Proprietary-password; + must "not(../encryption-aes)"; + description + "Specifies password in default encrypted form"; + } + leaf encryption-aes { + type xr:Type6-password; + must "not(../encryption-default)"; + description + "Specifies the password in aes encrypted form"; + } + } + } + leaf maximum { + type uint32 { + range "1..4294967295" { + description + "How many rotating autosaves to keep"; + } + } + description + "How many rotating autosaves to keep"; + } + container wait-time { + presence "Indicates a wait-time node is configured."; + description + "How long to wait after a commit is done to start the next autosave"; + leaf days { + type uint32 { + range "0..365" { + description + "Days"; + } + } + mandatory true; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Hours"; + } + } + mandatory true; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Minutes"; + } + } + mandatory true; + description + "Minutes"; + } + leaf seconds { + type uint32 { + range "0..59" { + description + "Seconds"; + } + } + mandatory true; + description + "Seconds"; + } + } + container timestamp { + presence "Indicates a timestamp node is configured."; + description + "Include the timestamp in the autosave filename"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-display-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-display-cfg.yang new file mode 100644 index 000000000..e2077ba8a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-display-cfg.yang @@ -0,0 +1,67 @@ +module Cisco-IOS-XR-um-config-display-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-config-display-cfg"; + prefix um-config-display-cfg; + + 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 config-display package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ipv4 { + description + "Global IPv4 configuration commands"; + container netmask-format { + description + "Display mode of ipv4 address mask"; + container bit-count { + presence "Indicates a bit-count node is configured."; + description + "Display ipv4 addess mask in prefix length format"; + } + } + } + container configuration { + description + "Configuration related settings"; + container display { + description + "Display mode"; + container interface { + description + "hardware interfaces"; + container slot-order { + presence "Indicates a slot-order node is configured."; + description + "Display interfaces in the slot-order in show run output"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-hostname-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-hostname-cfg.yang new file mode 100644 index 000000000..4f54c2831 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-hostname-cfg.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-um-config-hostname-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-config-hostname-cfg"; + prefix um-config-hostname-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 config-hostname package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container config-hostname { + description + "Set system's test network name"; + leaf system-network-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "This system's network name"; + } + pattern "[a-zA-Z0-9_.{}+-]+"; + } + description + "Set system's test network name"; + } + } + container config-sleep { + description + "Block config commit for n seconds"; + leaf sleep-time { + type uint32 { + range "10..299" { + description + "time in seconds"; + } + } + description + "Block config commit for n seconds"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-mode-cfg.yang new file mode 100644 index 000000000..7b3bbb011 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-mode-cfg.yang @@ -0,0 +1,50 @@ +module Cisco-IOS-XR-um-config-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-config-mode-cfg"; + prefix um-config-mode-cfg; + + 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 config-mode package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container configuration { + description + "Configuration mode"; + container mode { + description + "Mode of config sessions"; + container exclusive { + presence "Indicates a exclusive node is configured."; + description + "Automatically enable exclusive config sessions"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-validation-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-validation-cfg.yang new file mode 100644 index 000000000..cfe9e7ff2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-config-validation-cfg.yang @@ -0,0 +1,104 @@ +module Cisco-IOS-XR-um-config-validation-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-config-validation-cfg"; + prefix um-config-validation-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-script-cfg { + prefix a1; + } + 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 config-validation package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-30 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:script" { + container configs { + description + "Activate a config script"; + list config { + must "checksum/sha256"; + key "config-name"; + description + "Activate a config script"; + leaf config-name { + type string { + length "1..800" { + description + "Specify the filename of the config script (must end in .py)"; + } + pattern ".+[.]{1}py"; + } + description + "Activate a config script"; + } + container checksum { + description + "Specify a checksum for the script"; + leaf sha256 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "The SHA256 hash (64 hex characters)"; + } + pattern "[A-Za-z0-9]{64}"; + } + description + "Specify an SHA256 checksum"; + } + } + leaf priority { + type uint32 { + range "0..4294967295" { + description + "The priority value (default 500)"; + } + } + description + "Specify priority of the script (default 500)"; + } + } + } + } + container configuration { + description + "Configuration related settings"; + container validation { + description + "Options for configuration validation"; + container scripts { + presence "Indicates a scripts node is configured."; + description + "Enable configuration validation via config scripts"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-conflict-policy-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-conflict-policy-cfg.yang new file mode 100644 index 000000000..472e8d666 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-conflict-policy-cfg.yang @@ -0,0 +1,159 @@ +module Cisco-IOS-XR-um-conflict-policy-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-conflict-policy-cfg"; + prefix um-conflict-policy-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-vrf-cfg { + prefix a1; + } + 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 conflict-policy package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-05-04 { + description + "Removed presence statement under conflict-policy"; + semver:module-version "1.0.0"; + } + revision 2020-04-20 { + description + "Initial release"; + } + + grouping VRF-BODY { + description + "Grouping for vrf"; + container mhost { + description + "Multicast host stack options"; + container ipv4 { + description + "IPv4 specific"; + leaf default-interface { + type xr:Interface-name; + description + "default multicast interface"; + } + } + container ipv6 { + description + "IPv6 specific"; + leaf default-interface { + type xr:Interface-name; + description + "default multicast interface"; + } + } + } + } + + augment "/a1:vrfs/a1:vrf" { + description + "This augment extends vrf nodes + configuration"; + uses VRF-BODY; + } + container ipv4 { + description + "Global IPv4 configuration commands"; + container conflict-policy { + description + "ipv4 address conflict algorithm selection"; + container static { + must "not(../longest-prefix or ../highest-ip)"; + presence "Indicates a static node is configured."; + description + "Keeps the existing interface UP across new address configs"; + } + container longest-prefix { + must "not(../static or ../highest-ip)"; + presence "Indicates a longest-prefix node is configured."; + description + "Keeps the longest prefix match in the conflict set UP"; + } + container highest-ip { + must "not(../static or ../longest-prefix)"; + presence "Indicates a highest-ip node is configured."; + description + "Keeps the highest ip address in the conflict set UP"; + } + } + } + container ipv6 { + description + "Global IPv6 configuration commands"; + container conflict-policy { + description + "ipv6 address conflict policy selection"; + container static { + must "not(../longest-prefix or ../highest-ip)"; + presence "Indicates a static node is configured."; + description + "Keeps the existing interface UP across new address configs"; + } + container longest-prefix { + must "not(../static or ../highest-ip)"; + presence "Indicates a longest-prefix node is configured."; + description + "Keeps the longest prefix match in the conflict set UP"; + } + container highest-ip { + must "not(../static or ../longest-prefix)"; + presence "Indicates a highest-ip node is configured."; + description + "Keeps the highest ip address in the conflict set UP"; + } + } + } + container mhost { + description + "Multicast host stack options"; + container ipv4 { + description + "IPv4 specific"; + leaf default-interface { + type xr:Interface-name; + description + "default multicast interface"; + } + } + container ipv6 { + description + "IPv6 specific"; + leaf default-interface { + type xr:Interface-name; + description + "default multicast interface"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-breakout-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-breakout-cfg.yang new file mode 100644 index 000000000..129ba2b49 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-breakout-cfg.yang @@ -0,0 +1,88 @@ +module Cisco-IOS-XR-um-cont-breakout-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-breakout-cfg"; + prefix um-cont-breakout-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-breakout package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature optics { + description + "optics"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + leaf breakout { + when "../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "breakout mode: 4x10 | 4x25 | 2x50 | 8x50 | 4x100 | 3x100 | 2x100 | 1x100"; + } + } + description + "Configure breakout mode"; + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-cpri-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-cpri-cfg.yang new file mode 100644 index 000000000..e324866ba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-cpri-cfg.yang @@ -0,0 +1,155 @@ +module Cisco-IOS-XR-um-cont-cpri-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-cpri-cfg"; + prefix um-cont-cpri-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-cpri package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-05-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature cpri { + description + "cpri"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container loopback { + when "../a1:controller-name[starts-with(text(),'CPRI')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "cpri"; + description + "Configure various loopback mode"; + container line { + must "not(../internal)"; + presence "Indicates a line node is configured."; + description + "CPRI Line side(external) loopback"; + } + container internal { + must "not(../line)"; + presence "Indicates a internal node is configured."; + description + "CPRI Internal loopback"; + } + } + container extended-loopback { + when "../a1:controller-name[starts-with(text(),'CPRI')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "cpri"; + description + "Extended loopback level and mode for diagnostics"; + leaf level { + type uint32 { + range "1..3" { + description + ""; + } + } + must "../enable-loopback"; + description + "Extended loopback level and mode for diagnostics"; + } + leaf enable-loopback { + type enumeration { + enum "line" { + value 1; + description + "Enable line loopback"; + } + enum "internal" { + value 4; + description + "Enable internal loopback"; + } + } + must "../level"; + description + "configure this node"; + } + } + leaf l1-startup-timer { + when "../a1:controller-name[starts-with(text(),'CPRI')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "cpri"; + type uint32 { + range "0..65536" { + description + "Configure L1 startup timer value"; + } + } + description + "Configure L1 startup timer"; + } + leaf attach-roe-profile { + when "../a1:controller-name[starts-with(text(),'CPRI')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "cpri"; + type uint32 { + range "1..255" { + description + "Configure RoE profile ID"; + } + } + description + "Attach RoE profile to this controller"; + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-dwdm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-dwdm-cfg.yang new file mode 100644 index 000000000..70bac4e48 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-dwdm-cfg.yang @@ -0,0 +1,1120 @@ +module Cisco-IOS-XR-um-cont-dwdm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-dwdm-cfg"; + prefix um-cont-dwdm-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-dwdm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-02-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature dwdm_cont { + description + "dwdm controller"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container maintenance { + description + "Configure maintenance embargo flag on the given interface"; + container disable { + presence "Indicates a disable node is configured."; + description + "Configure maintenance embargo flag on the given interface"; + } + } + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container admin-state { + description + "Configure the transport admin state of the controller: in-service, out-of-service or maintenance"; + container in-service { + must + "not(../out-of-service or ../maintenance + or ../in-service-config-allowed)"; + presence "Indicates a in-service node is configured."; + description + "change the admin-state to In-service (IS)"; + } + container out-of-service { + must + "not(../in-service or ../maintenance + or ../in-service-config-allowed)"; + presence "Indicates a out-of-service node is configured."; + description + "change the admin-state to Out-of-service (OOS)"; + } + container maintenance { + must + "not(../in-service or ../out-of-service + or ../in-service-config-allowed)"; + presence "Indicates a maintenance node is configured."; + description + "change the admin-state to Out-of-service-Maintenance (OOS-MT)"; + } + container in-service-config-allowed { + must + "not(../in-service or ../out-of-service + or ../maintenance)"; + presence "Indicates a in-service-config-allowed node is configured."; + description + "change the admin-state to In-service-config-allowed (IS-CFG)"; + } + } + container wavelength { + description + "Configure ITU Channel, Wavelength and Frequency"; + container fifty-ghz-grid { + description + "Configure Wavelength / Frequency / Channel Number"; + leaf itu-channel-number { + type uint32 { + range "1..100" { + description + "Select an ITU channel number; C Band: 1-100"; + } + } + must + "not(../frequency or ../update or + ../../one-hundred-mhz-grid/frequency)"; + description + "Select an ITU channel number; C Band: 1-100"; + } + leaf frequency { + type uint32 { + range "19115..19610" { + description + "Enter 5-digit Frequency data; e.g. 19580 for 195.8 THz"; + } + } + must + "not(../itu-channel-number or ../update or + ../../one-hundred-mhz-grid/frequency)"; + description + "Configure Frequency and Map to ITU Channel"; + } + leaf update { + type uint32 { + range "1528773..1568362" { + description + "Enter 7-digit Wavelength data; e.g. 1532290 for 1532.29 nm"; + } + } + must + "not(../itu-channel-number or ../frequency or + ../../one-hundred-mhz-grid/frequency)"; + description + "Configure Wavelength and Map to ITU Channel"; + } + } + container one-hundred-mhz-grid { + description + "Specify frequency directly instead of wave channel numbers"; + leaf frequency { + type xr:Cisco-ios-xr-string { + length "1..8" { + description + "Enter Frequency Data in THz (e.g. 195.7314)"; + } + } + must + "not(../../fifty-ghz-grid/itu-channel-number or + ../../fifty-ghz-grid/frequency or + ../../fifty-ghz-grid/update)"; + description + "Configure frequency in steps of 100MHz"; + } + } + } + leaf transmit-power { + type int32 { + range "-190..10" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder transmit power "; + } + leaf rx-los-threshold { + type int32 { + range "-350..50" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder receive power LOS threshold"; + } + leaf loopback { + type enumeration { + enum "line" { + value 1; + description + "Select line loopback mode"; + } + enum "internal" { + value 2; + description + "Select internal loopback mode"; + } + } + description + "Configure loopback mode "; + } + container g709 { + description + "Configure G709 parameters"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable G709 function"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable G709 function"; + } + leaf framing { + type enumeration { + enum "opu1e" { + value 1; + description + "opu1e framing mode"; + } + enum "opu2e" { + value 2; + description + "opu2e framing mode"; + } + } + description + "Configure Framing mode"; + } + container prbs { + description + "Enable PRBS with specifc mode and pattern "; + leaf mode { + type enumeration { + enum "source" { + value 0; + description + "Select Source mode "; + } + enum "sink" { + value 1; + description + "Select Sink mode "; + } + enum "source-sink" { + value 2; + description + "Select Source-sink mode "; + } + } + must "../pattern"; + description + "Configure PRBS mode"; + } + leaf pattern { + type enumeration { + enum "null" { + value 1; + description + "Select NULL Pattern "; + } + enum "pn11" { + value 2; + description + "Select PN11 Pattern "; + } + enum "pn23" { + value 3; + description + "Select PN23 Pattern "; + } + enum "pn31" { + value 4; + description + "Select PN31 Pattern "; + } + } + must "../mode"; + description + "Configure PRBS pattern"; + } + } + container fec { + description + "Configure FEC mode"; + container standard { + must + "not(../high-gain-hd-fec or ../high-gain-sd-fec + or ../high-gain-multivendor-hd-fec or ../ci-bch + or ../long-haul-hd-fec or ../long-haul-sd-fec + or ../disable or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a standard node is configured."; + description + "Standard FEC mode"; + } + container enhanced { + presence "Indicates a enhanced node is configured."; + description + "Enhanced FEC mode"; + container i-4 { + must "not(../i-7)"; + presence "Indicates a i-4 node is configured."; + description + "efec i.4"; + } + container i-7 { + must "not(../i-4)"; + presence "Indicates a i-7 node is configured."; + description + "efec i.7"; + } + } + container high-gain-hd-fec { + must + "not(../standard or ../high-gain-sd-fec + or ../high-gain-multivendor-hd-fec or ../ci-bch + or ../long-haul-hd-fec or ../long-haul-sd-fec + or ../disable or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a high-gain-hd-fec node is configured."; + description + "7% HD FEC (Staircase FEC)"; + } + container high-gain-sd-fec { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-multivendor-hd-fec or ../ci-bch + or ../long-haul-hd-fec or ../long-haul-sd-fec + or ../disable or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a high-gain-sd-fec node is configured."; + description + "7% CISCO SD FEC (Soft-Decision FEC)"; + } + container high-gain-multivendor-hd-fec { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-sd-fec or ../ci-bch + or ../long-haul-hd-fec or ../long-haul-sd-fec + or ../disable or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a high-gain-multivendor-hd-fec node is configured."; + description + "7% HD FEC (Staircase FEC) Multivendor Interoperable"; + } + container ci-bch { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-sd-fec or ../high-gain-multivendor-hd-fec + or ../long-haul-hd-fec or ../long-haul-sd-fec + or ../disable or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a ci-bch node is configured."; + description + "Continuously Interleaved BCH FEC"; + } + container long-haul-hd-fec { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-sd-fec or ../high-gain-multivendor-hd-fec + or ../ci-bch or ../long-haul-sd-fec + or ../disable or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a long-haul-hd-fec node is configured."; + description + "20% HD FEC (Staircase FEC)"; + } + container long-haul-sd-fec { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-sd-fec or ../high-gain-multivendor-hd-fec + or ../ci-bch or ../long-haul-hd-fec + or ../disable or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a long-haul-sd-fec node is configured."; + description + "20% CISCO SD FEC (Soft-Decision FEC)"; + } + container disable { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-sd-fec or ../high-gain-multivendor-hd-fec + or ../ci-bch or ../long-haul-hd-fec + or ../long-haul-sd-fec or ../one5sdfecde + or ../one5sdfec)"; + presence "Indicates a disable node is configured."; + description + "Disable FEC"; + } + container one5sdfecde { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-sd-fec or ../high-gain-multivendor-hd-fec + or ../ci-bch or ../long-haul-hd-fec + or ../long-haul-sd-fec or ../disable + or ../one5sdfec)"; + presence "Indicates a one5sdfecde node is configured."; + description + "15%-SD Forward Error Correction with Diff"; + } + container one5sdfec { + must + "not(../standard or ../high-gain-hd-fec + or ../high-gain-sd-fec or ../high-gain-multivendor-hd-fec + or ../ci-bch or ../long-haul-hd-fec + or ../long-haul-sd-fec or ../disable + or ../one5sdfecde)"; + presence "Indicates a one5sdfec node is configured."; + description + "15%-SD Forward Error Correction"; + } + } + container bdi-to-client-gais { + presence "Indicates a bdi-to-client-gais node is configured."; + description + "Enable gais insertion"; + } + container tti-processing { + presence "Indicates a tti-processing node is configured."; + description + "Enable Trail Trace Identifier processing"; + } + container tim-to-client-gais { + presence "Indicates a tim-to-client-gais node is configured."; + description + "Enable Generic AIS insertion for Trace Identifier Mismatch alarm"; + } + container otu { + description + "Configure OTU parameters"; + container reports { + description + "Configure OTU alarm reporting"; + list report { + key "report-id"; + description + "Configure OTU alarm reporting"; + leaf report-id { + type enumeration { + enum "los" { + value 0; + description + "Set Loss of Signal reporting status"; + } + enum "lof" { + value 1; + description + "Set OTU Loss of Frame reporting status"; + } + enum "lom" { + value 2; + description + "Set Loss of Multiple Frame reporting status"; + } + enum "iae" { + value 6; + description + "Set Incoming Alignment Error reporting status"; + } + enum "bdi" { + value 7; + description + "Set Backward Defect Indication reporting status"; + } + enum "tim" { + value 8; + description + "Set Trace Identifier Mismatch reporting status"; + } + enum "sf-ber" { + value 10; + description + "Set SM BER in excess of SF threshold reporting status"; + } + enum "sd-ber" { + value 11; + description + "Set SM BER in excess of SD threshold reporting status"; + } + enum "prefec-sd-ber" { + value 31; + description + "Set SM BER in excess of SD threshold reporting status"; + } + enum "prefec-sf-ber" { + value 32; + description + "Set SM BER in excess of SF threshold reporting status"; + } + } + description + "Configure OTU alarm reporting"; + } + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + } + container overhead { + description + "Configure OTU overhead"; + container tti { + description + "Configure OTU Trail Trace Identifier buffer"; + container sent { + description + "Set transmit TTI"; + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter ASCII string"; + } + leaf hex { + type string { + length "1..128" { + description + "Hex nibbles (Max 128- The string length should be an even number)"; + } + } + description + "Enter hex string- Length should be even number"; + } + container otn-std { + description + "Configure tti in otn standard defined fields"; + leaf sapi { + type string { + length "1..15" { + description + "Enter SAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Source Access Point Identifier field 1-15"; + } + leaf dapi { + type string { + length "1..15" { + description + "Enter DAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Destination Access Point Identifier field 1-15"; + } + leaf operator-specific { + type string { + length "1..32" { + description + "Enter Operator Specific text (Max Length 32 Characters)"; + } + } + description + "Enter Operator Specific field"; + } + } + } + container expected { + description + "Set expected TTI"; + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter ASCII string"; + } + leaf hex { + type string { + length "1..128" { + description + "Hex nibbles (Max 128- The string length should be an even number)"; + } + } + description + "Enter hex string- Length should be even number"; + } + container otn-std { + description + "Configure tti in otn standard defined fields"; + leaf sapi { + type string { + length "1..15" { + description + "Enter SAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Source Access Point Identifier field 1-15"; + } + leaf dapi { + type string { + length "1..15" { + description + "Enter DAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Destination Access Point Identifier field 1-15"; + } + leaf operator-specific { + type string { + length "1..32" { + description + "Enter Operator Specific text (Max Length 32 Characters)"; + } + } + description + "Enter Operator Specific field"; + } + } + } + } + } + container threshold { + description + "Configure OTU threshold value"; + leaf sd-ber { + type uint32 { + range "1..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set Signal Degrade BER threshold"; + } + leaf sf-ber { + type uint32 { + range "1..9" { + description + "Bit error rate (10 to the minus n) (default 3)"; + } + } + description + "Set Signal Failure BER threshold"; + } + leaf prefec-sd-ber { + type uint32 { + range "2..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set PreFec Signal Degrate BER threshold"; + } + leaf prefec-sf-ber { + type uint32 { + range "2..9" { + description + "Bit error rate (10 to the minus n) (default 4)"; + } + } + description + "Set PreFec Signal fail BER threshold"; + } + } + } + container odu { + description + "Configure ODU parameters"; + container reports { + description + "Configure ODU alarm reporting"; + list report { + key "report-id"; + description + "Configure ODU alarm reporting"; + leaf report-id { + type enumeration { + enum "oci" { + value 14; + description + "Set Open Connection Indication reporting status"; + } + enum "ais" { + value 15; + description + "Set Alarm Indication Signal reporting status"; + } + enum "lck" { + value 16; + description + "Set Upstream Connection Locked reporting status"; + } + enum "bdi" { + value 17; + description + "Set Backward Defect Indication reporting status"; + } + enum "sf-ber" { + value 20; + description + "Set PM BER in excess of SF threshold reporting status"; + } + enum "sd-ber" { + value 21; + description + "Set PM BER in excess of SD threshold reporting status"; + } + enum "ptim" { + value 22; + description + "Set Payload Type Identifier Mismatch reporting status"; + } + enum "tim" { + value 23; + description + "Set Trace Identifier Mismatch reporting status"; + } + } + description + "Configure ODU alarm reporting"; + } + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + } + container overhead { + description + "Configure ODU overhead"; + container tti { + description + "Configure ODU Trail Trace Identifier buffer"; + container sent { + description + "Set transmit TTI"; + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter ASCII string"; + } + leaf hex { + type string { + length "1..128" { + description + "Hex nibbles (Max 128- The string length should be an even number)"; + } + } + description + "Enter hex string- Length should be even number"; + } + container otn-std { + description + "Configure tti in otn standard defined fields"; + leaf sapi { + type string { + length "1..15" { + description + "Enter SAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Source Access Point Identifier field 1-15"; + } + leaf dapi { + type string { + length "1..15" { + description + "Enter DAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Destination Access Point Identifier field 1-15"; + } + leaf operator-specific { + type string { + length "1..32" { + description + "Enter Operator Specific text (Max Length 32 Characters)"; + } + } + description + "Enter Operator Specific field"; + } + } + } + container expected { + description + "Set expected TTI"; + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter ASCII string"; + } + leaf hex { + type string { + length "1..128" { + description + "Hex nibbles (Max 128- The string length should be an even number)"; + } + } + description + "Enter hex string- Length should be even number"; + } + container otn-std { + description + "Configure tti in otn standard defined fields"; + leaf sapi { + type string { + length "1..15" { + description + "Enter SAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Source Access Point Identifier field 1-15"; + } + leaf dapi { + type string { + length "1..15" { + description + "Enter DAPI text (Max Length 15 Characters)"; + } + } + description + "Enter Destination Access Point Identifier field 1-15"; + } + leaf operator-specific { + type string { + length "1..32" { + description + "Enter Operator Specific text (Max Length 32 Characters)"; + } + } + description + "Enter Operator Specific field"; + } + } + } + } + } + container threshold { + description + "Configure ODU threshold value"; + leaf sd-ber { + type uint32 { + range "1..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set Signal Degrade BER threshold"; + } + leaf sf-ber { + type uint32 { + range "1..9" { + description + "Bit error rate (10 to the minus n) (default 3)"; + } + } + description + "Set Signal Failure BER threshold"; + } + } + } + } + container vtxp-monitor { + presence "Indicates a vtxp-monitor node is configured."; + description + "Enable VTXP monitoring function"; + } + container proactive { + presence "Indicates a proactive node is configured."; + description + "Enable Proactive Protection Feature"; + container graceful-mode { + presence "Indicates a graceful-mode node is configured."; + description + "Operate the Proactive Protection FSM in Graceful Mode, Do Not bring down the Interface"; + } + container trigger { + description + "Configure trigger thresholds"; + leaf threshold { + type uint32 { + range "1..9" { + description + "Bit error rate coefficient (x of xE-y) (Trigger threshold cannot be > 1E-2)"; + } + } + must "../bit-error-rate-power"; + description + "Set values x and y of xE-y"; + } + leaf bit-error-rate-power { + type uint32 { + range "2..9" { + description + "Bit error rate power (y of xE-y) (Trigger threshold cannot be > 1E-2)"; + } + } + must "../threshold"; + description + "Bit error rate power (y of xE-y) (Trigger threshold cannot be > 1E-2)"; + } + leaf window { + type uint32 { + range "10..10000" { + description + "Integration window for FRR trigger in MS"; + } + } + description + "Number of times threshold crossing is tested"; + } + } + container revert { + description + "Configure Revert thresholds"; + leaf threshold { + type uint32 { + range "1..9" { + description + "Bit error rate coefficient (x of xE-y) (Revert threshold cannot be > 1E-3)"; + } + } + must "../bit-error-rate-power"; + description + "Set values x and y of xE-y"; + } + leaf bit-error-rate-power { + type uint32 { + range "3..10" { + description + "Bit error rate power (y of xE-y) (Revert threshold cannot be > 1E-3)"; + } + } + must "../threshold"; + description + "Bit error rate power (y of xE-y) (Revert threshold cannot be > 1E-3)"; + } + leaf window { + type uint32 { + range "500..100000" { + description + "Integration window for FRR revert in MS"; + } + } + description + "Number of times threshold crossing is tested"; + } + } + leaf event { + type uint32 { + range "1..50" { + description + "Number of Ports that will be given the event"; + } + } + must "../pp-event-number"; + description + "Hidden command to trigger PP Event"; + } + leaf pp-event-number { + type uint32 { + range "0..50" { + description + "PP Event Number"; + } + } + must "../event"; + must "../pp-event-value"; + description + "PP Event Number"; + } + leaf pp-event-value { + type uint32 { + range "0..255" { + description + "PP Event Value"; + } + } + must "../pp-event-number"; + description + "PP Event Value"; + } + } + container log { + description + "Proactive log "; + leaf signal { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "The string length file name"; + } + } + description + "Enable Proactive signal log "; + } + } + container network { + description + "Configure DWDM network information"; + container port { + description + "Configure the port ID for this DWDM port"; + leaf id { + type string { + length "1..64" { + description + "Enter a port ID (string, max length 64)"; + } + } + description + "Configure the port ID for this DWDM port"; + } + } + container connection { + description + "Configure the connection ID for this DWDM port"; + leaf id { + type string { + length "1..64" { + description + "Enter a connection ID (string, max length 64)"; + } + } + description + "Configure the connection ID for this DWDM port"; + } + } + container srlg { + description + "Submode to configure shared risks for the DWDM connection"; + container sets { + description + "Configure Network SRLG sets"; + list set { + must "network-srlg-values"; + key "set-id"; + description + "Configure Network SRLG sets"; + leaf set-id { + type uint32 { + range "1..17" { + description + "Set index"; + } + } + description + "Configure Network SRLG sets"; + } + leaf-list network-srlg-values { + type uint32 { + range "0..4294967294" { + description + "Network SRLG values (max 6 per set)"; + } + } + max-elements "6"; + description + "Network SRLG values (max 6 per set)"; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-cfg.yang new file mode 100644 index 000000000..6cfc34670 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-cfg.yang @@ -0,0 +1,286 @@ +module Cisco-IOS-XR-um-cont-ether-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-ether-cfg"; + prefix um-cont-ether-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-ether package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-20 { + description + "Added prbs support + 2022-07-11 + Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-05-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container flow-control { + description + "Ethernet controller flow control"; + container ingress { + presence "Indicates a ingress node is configured."; + description + "Set the flow control parameter to ingress"; + } + } + container perf-mon { + description + "Performance Monitoring"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + } + leaf loopback { + type enumeration { + enum "external" { + value 0; + description + "Enable external loopback (requires loopback connector)"; + } + enum "internal" { + value 1; + description + "Enable internal loopback"; + } + enum "line" { + value 2; + description + "Enable line loopback"; + } + } + description + "Set the loopback mode on a controller"; + } + container laser-squelch { + presence "Indicates a laser-squelch node is configured."; + description + "Enable Ethernet controller laser-squelch"; + } + leaf fec { + type enumeration { + enum "none" { + value 0; + description + "Disable any FEC enabled on the interface"; + } + enum "standard" { + value 1; + description + "Set the standard (Reed-Solomon) FEC"; + } + } + description + "Set the Forward Error Correction mode on a controller"; + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure Pseudo Random Binary Sequence test"; + leaf mode { + type enumeration { + enum "source" { + value 1; + description + "source mode"; + } + enum "sink" { + value 2; + description + "sink mode"; + } + enum "source-sink" { + value 3; + description + "source-sink mode"; + } + } + description + "Configure PRBS mode"; + } + leaf pattern { + type enumeration { + enum "pn7" { + value 1; + description + "Configure PRBS pattern pn7"; + } + enum "pn9" { + value 2; + description + "Configure PRBS pattern pn9"; + } + enum "pn11" { + value 3; + description + "Configure PRBS pattern pn11"; + } + enum "pn15" { + value 4; + description + "Configure PRBS pattern pn15"; + } + enum "pn23" { + value 5; + description + "Configure PRBS pattern pn23"; + } + enum "pn31" { + value 6; + description + "Configure PRBS pattern pn31"; + } + enum "user-defined" { + value 7; + description + "Configure any 64-bit user defined pattern"; + } + } + description + "Configure PRBS pattern"; + } + leaf direction { + type enumeration { + enum "line" { + value 1; + description + "Run prbs towards line side"; + } + enum "system" { + value 2; + description + "Run prbs towards system side"; + } + } + description + "Configure prbs direction"; + } + leaf error-inject { + type enumeration { + enum "single" { + value 1; + description + "Inject error once"; + } + enum "continuous" { + value 2; + description + "Inject error continuously"; + } + } + description + "Inject errors in the PRBS pattern"; + } + leaf framing { + type enumeration { + enum "framed" { + value 2; + description + "Framed PRBS"; + } + enum "unframed" { + value 1; + description + "Unframed PRBS"; + } + } + description + "Configure prbs framing type"; + } + leaf user-pattern { + type xr:Hex-long-integer; + mandatory true; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + container holdoff-time { + description + "Holdoff time configuration"; + leaf trunk-fault { + type uint32 { + range "0..3000" { + description + "Time in ms"; + } + } + description + "Holdoff time trunk fault configuration"; + } + } + container extended-loopback { + description + "Extended loopback (diagnostics)"; + container levels { + description + "Level at which to loopback"; + list level { + key "level-id"; + description + "Level at which to loopback"; + leaf level-id { + type uint32 { + range "1..3" { + description + ""; + } + } + description + "Level at which to loopback"; + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg.yang new file mode 100644 index 000000000..cfaf3f0c1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg.yang @@ -0,0 +1,10384 @@ +module Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-ether-macsec-pm-cfg"; + prefix um-cont-ether-macsec-pm-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-ether-macsec-pm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-10-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container pm { + when "../a1:interface-name[starts-with(text(),'HundredGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Configure pm parameters"; + container interval-15-min { + description + "Configure pm parameters of 15 minute interval"; + container ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold "; + } + } + description + "set OUT-OCTET threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold "; + } + } + description + "set OUT-MCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold "; + } + } + description + "set OUT-BCAST threshold"; + } + leaf in-pause-frame { + type uint32 { + range "1..4294967295" { + description + "IN-PAUSE-FRAME threshold"; + } + } + description + "set IN-PAUSE-FRAME threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "IN-GOOD-BYTES threshold"; + } + } + description + "set IN-GOOD-BYTES threshold"; + } + leaf in-802-1q-frames { + type uint32 { + range "1..4294967295" { + description + "IN-802-1Q-FRAMES threshold"; + } + } + description + "set IN-802-1Q-FRAMES threshold"; + } + leaf in-pkts-1519-max-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-1519-MAX-OCTETS threshold"; + } + } + description + "set IN-PKTS-1519-MAX-OCTETS threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "IN-GOOD-PKTS threshold"; + } + } + description + "set IN-GOOD-PKTS threshold"; + } + leaf in-drop-overrun { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OVERRUN threshold"; + } + } + description + "set IN-DROP-OVERRUN threshold"; + } + leaf in-drop-abort { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-ABORT threshold"; + } + } + description + "set IN-DROP-ABORT threshold"; + } + leaf in-drop-invalid-vlan { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-INVALID-VLAN threshold"; + } + } + description + "set IN-DROP-INVALID-VLAN threshold"; + } + leaf in-drop-invalid-dmac { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-INVALID-DMAC threshold"; + } + } + description + "set IN-DROP-INVALID-DMAC threshold"; + } + leaf in-drop-invalid-encap { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-INVALID-ENCAP threshold"; + } + } + description + "set IN-DROP-INVALID-ENCAP threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN-DROP-OTHER threshold"; + } + leaf in-mib-giant { + type uint32 { + range "1..4294967295" { + description + "IN-MIB-GIANT threshold"; + } + } + description + "set IN-MIB-GIANT threshold"; + } + leaf in-mib-jabber { + type uint32 { + range "1..4294967295" { + description + "IN-MIB-JABBER threshold"; + } + } + description + "set IN-MIB-JABBER threshold"; + } + leaf in-mib-crc { + type uint32 { + range "1..4294967295" { + description + "IN-MIB-CRC threshold"; + } + } + description + "set IN-MIB-CRC threshold"; + } + leaf in-error-collisions { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-COLLISIONS threshold"; + } + } + description + "set IN-ERROR-COLLISIONS threshold"; + } + leaf in-error-symbol { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-SYMBOL threshold"; + } + } + description + "set IN-ERROR-SYMBOL threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "OUT-GOOD-BYTES threshold"; + } + } + description + "set OUT-GOOD-BYTES threshold"; + } + leaf out-802-1q-frames { + type uint32 { + range "1..4294967295" { + description + "OUT-802-1Q-FRAMES threshold"; + } + } + description + "set OUT-802-1Q-FRAMES threshold"; + } + leaf out-pause-frames { + type uint32 { + range "1..4294967295" { + description + "OUT-PAUSE-FRAMES threshold"; + } + } + description + "set OUT-PAUSE-FRAMES threshold"; + } + leaf out-pkts-1519-max-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-1519-MAX-OCTETS threshold"; + } + } + description + "set OUT-PKTS-1519-MAX-OCTETS threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "OUT-GOOD-PKTS threshold"; + } + } + description + "set OUT-GOOD-PKTS threshold"; + } + leaf out-drop-underrun { + type uint32 { + range "1..4294967295" { + description + "OUT-DROP-UNDERRUN threshold"; + } + } + description + "set OUT-DROP-UNDERRUN threshold"; + } + leaf out-drop-abort { + type uint32 { + range "1..4294967295" { + description + "OUT-DROP-ABORT threshold"; + } + } + description + "set OUT-DROP-ABORT threshold"; + } + leaf out-drop-other { + type uint32 { + range "1..4294967295" { + description + "OUT-DROP-OTHER threshold"; + } + } + description + "set OUT-DROP-OTHER threshold"; + } + leaf out-error-other { + type uint32 { + range "1..4294967295" { + description + "OUT-ERROR-OTHER threshold"; + } + } + description + "set OUT-ERROR-OTHER threshold"; + } + leaf in-error-giant { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-GIANT threshold"; + } + } + description + "set IN-ERROR-GIANT threshold"; + } + leaf in-error-runt { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-RUNT threshold"; + } + } + description + "set IN-ERROR-RUNT threshold"; + } + leaf in-error-jabbers { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-JABBERS threshold"; + } + } + description + "set IN-ERROR-JABBERS threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf in-error-other { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-OTHER threshold"; + } + } + description + "set IN-ERROR-OTHER threshold"; + } + leaf in-pkt-64-octet { + type uint32 { + range "1..4294967295" { + description + "IN-PKT-64-OCTET threshold"; + } + } + description + "set IN-PKT-64-OCTET threshold"; + } + leaf in-pkts-65-127octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-65-127OCTETS threshold"; + } + } + description + "set IN-PKTS-65-127OCTETS threshold"; + } + leaf in-pkts-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-128-255-OCTETS threshold"; + } + } + description + "set IN-PKTS-128-255-OCTETS threshold"; + } + leaf in-pkts-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-256-511-OCTETS threshold"; + } + } + description + "set IN-PKTS-256-511-OCTETS threshold"; + } + leaf in-pkts-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-512-1023-OCTETS threshold"; + } + } + description + "set IN-PKTS-512-1023-OCTETS threshold"; + } + leaf in-pkts-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-1024-1518-OCTETS threshold"; + } + } + description + "set IN-PKTS-1024-1518-OCTETS threshold"; + } + leaf out-pkt-64-octet { + type uint32 { + range "1..4294967295" { + description + "OUT-PKT-64-OCTET threshold"; + } + } + description + "set OUT-PKT-64-OCTET threshold"; + } + leaf out-pkts-65-127octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-65-127OCTETS threshold"; + } + } + description + "set OUT-PKTS-65-127OCTETS threshold"; + } + leaf out-pkts-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-128-255-OCTETS threshold"; + } + } + description + "set OUT-PKTS-128-255-OCTETS threshold"; + } + leaf out-pkts-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-256-511-OCTETS threshold"; + } + } + description + "set OUT-PKTS-256-511-OCTETS threshold"; + } + leaf out-pkts-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-512-1023-OCTETS threshold"; + } + } + description + "set OUT-PKTS-512-1023-OCTETS threshold"; + } + leaf out-pkts-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-1024-1518-OCTETS threshold"; + } + } + description + "set OUT-PKTS-1024-1518-OCTETS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifOut_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pause-frame { + description + "set in-pause-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-802-1q-frames { + description + "set in-802-1Q-frames TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-1519-max-octets { + description + "set in-pkts-1519-Max-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-overrun { + description + "set in-drop-overrun TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-abort { + description + "set in-drop-abort TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-invalid-vlan { + description + "set in-drop-invalid-VLAN TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-invalid-dmac { + description + "set in-drop-invalid-DMAC TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-invalid-encap { + description + "set in-drop-invalid-encap TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mib-giant { + description + "set in-MIB-giant TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mib-jabber { + description + "set in-MIB-jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mib-crc { + description + "set in-MIB-CRC TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-collisions { + description + "set in-error-collisions TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-symbol { + description + "set in-error-symbol TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-802-1q-frames { + description + "set out-802-1Q-frames TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pause-frames { + description + "set out-pause-frames TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-1519-max-octets { + description + "set out-pkts-1519-Max-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-drop-underrun { + description + "set out-drop-underrun TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-drop-abort { + description + "set out-drop-abort TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-drop-other { + description + "set out-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-error-other { + description + "set out-error-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-giant { + description + "set in-error-giant TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-runt { + description + "set in-error-runt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-jabbers { + description + "set in-error-jabbers TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-other { + description + "set in-error-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkt-64-octet { + description + "set in-pkt-64-octet TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-65-127octets { + description + "set in-pkts-65-127octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-128-255-octets { + description + "set in-pkts-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-256-511-octets { + description + "set in-pkts-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-512-1023-octets { + description + "set in-pkts-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-1024-1518-octets { + description + "set in-pkts-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkt-64-octet { + description + "set out-pkt-64-octet TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-65-127octets { + description + "set out-pkts-65-127octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-128-255-octets { + description + "set out-pkts-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-256-511-octets { + description + "set out-pkts-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-512-1023-octets { + description + "set out-pkts-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-1024-1518-octets { + description + "set out-pkts-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hour { + description + "Configure pm parameters of 24 hour interval"; + container ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold "; + } + } + description + "set OUT-OCTET threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold "; + } + } + description + "set OUT-MCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold "; + } + } + description + "set OUT-BCAST threshold"; + } + leaf in-pause-frame { + type uint32 { + range "1..4294967295" { + description + "IN-PAUSE-FRAME threshold"; + } + } + description + "set IN-PAUSE-FRAME threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "IN-GOOD-BYTES threshold"; + } + } + description + "set IN-GOOD-BYTES threshold"; + } + leaf in-802-1q-frames { + type uint32 { + range "1..4294967295" { + description + "IN-802-1Q-FRAMES threshold"; + } + } + description + "set IN-802-1Q-FRAMES threshold"; + } + leaf in-pkts-1519-max-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-1519-MAX-OCTETS threshold"; + } + } + description + "set IN-PKTS-1519-MAX-OCTETS threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "IN-GOOD-PKTS threshold"; + } + } + description + "set IN-GOOD-PKTS threshold"; + } + leaf in-drop-overrun { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OVERRUN threshold"; + } + } + description + "set IN-DROP-OVERRUN threshold"; + } + leaf in-drop-abort { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-ABORT threshold"; + } + } + description + "set IN-DROP-ABORT threshold"; + } + leaf in-drop-invalid-vlan { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-INVALID-VLAN threshold"; + } + } + description + "set IN-DROP-INVALID-VLAN threshold"; + } + leaf in-drop-invalid-dmac { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-INVALID-DMAC threshold"; + } + } + description + "set IN-DROP-INVALID-DMAC threshold"; + } + leaf in-drop-invalid-encap { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-INVALID-ENCAP threshold"; + } + } + description + "set IN-DROP-INVALID-ENCAP threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN-DROP-OTHER threshold"; + } + leaf in-mib-giant { + type uint32 { + range "1..4294967295" { + description + "IN-MIB-GIANT threshold"; + } + } + description + "set IN-MIB-GIANT threshold"; + } + leaf in-mib-jabber { + type uint32 { + range "1..4294967295" { + description + "IN-MIB-JABBER threshold"; + } + } + description + "set IN-MIB-JABBER threshold"; + } + leaf in-mib-crc { + type uint32 { + range "1..4294967295" { + description + "IN-MIB-CRC threshold"; + } + } + description + "set IN-MIB-CRC threshold"; + } + leaf in-error-collisions { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-COLLISIONS threshold"; + } + } + description + "set IN-ERROR-COLLISIONS threshold"; + } + leaf in-error-symbol { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-SYMBOL threshold"; + } + } + description + "set IN-ERROR-SYMBOL threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "OUT-GOOD-BYTES threshold"; + } + } + description + "set OUT-GOOD-BYTES threshold"; + } + leaf out-802-1q-frames { + type uint32 { + range "1..4294967295" { + description + "OUT-802-1Q-FRAMES threshold"; + } + } + description + "set OUT-802-1Q-FRAMES threshold"; + } + leaf out-pause-frames { + type uint32 { + range "1..4294967295" { + description + "OUT-PAUSE-FRAMES threshold"; + } + } + description + "set OUT-PAUSE-FRAMES threshold"; + } + leaf out-pkts-1519-max-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-1519-MAX-OCTETS threshold"; + } + } + description + "set OUT-PKTS-1519-MAX-OCTETS threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "OUT-GOOD-PKTS threshold"; + } + } + description + "set OUT-GOOD-PKTS threshold"; + } + leaf out-drop-underrun { + type uint32 { + range "1..4294967295" { + description + "OUT-DROP-UNDERRUN threshold"; + } + } + description + "set OUT-DROP-UNDERRUN threshold"; + } + leaf out-drop-abort { + type uint32 { + range "1..4294967295" { + description + "OUT-DROP-ABORT threshold"; + } + } + description + "set OUT-DROP-ABORT threshold"; + } + leaf out-drop-other { + type uint32 { + range "1..4294967295" { + description + "OUT-DROP-OTHER threshold"; + } + } + description + "set OUT-DROP-OTHER threshold"; + } + leaf out-error-other { + type uint32 { + range "1..4294967295" { + description + "OUT-ERROR-OTHER threshold"; + } + } + description + "set OUT-ERROR-OTHER threshold"; + } + leaf in-error-giant { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-GIANT threshold"; + } + } + description + "set IN-ERROR-GIANT threshold"; + } + leaf in-error-runt { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-RUNT threshold"; + } + } + description + "set IN-ERROR-RUNT threshold"; + } + leaf in-error-jabbers { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-JABBERS threshold"; + } + } + description + "set IN-ERROR-JABBERS threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf in-error-other { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-OTHER threshold"; + } + } + description + "set IN-ERROR-OTHER threshold"; + } + leaf in-pkt-64-octet { + type uint32 { + range "1..4294967295" { + description + "IN-PKT-64-OCTET threshold"; + } + } + description + "set IN-PKT-64-OCTET threshold"; + } + leaf in-pkts-65-127octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-65-127OCTETS threshold"; + } + } + description + "set IN-PKTS-65-127OCTETS threshold"; + } + leaf in-pkts-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-128-255-OCTETS threshold"; + } + } + description + "set IN-PKTS-128-255-OCTETS threshold"; + } + leaf in-pkts-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-256-511-OCTETS threshold"; + } + } + description + "set IN-PKTS-256-511-OCTETS threshold"; + } + leaf in-pkts-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-512-1023-OCTETS threshold"; + } + } + description + "set IN-PKTS-512-1023-OCTETS threshold"; + } + leaf in-pkts-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-PKTS-1024-1518-OCTETS threshold"; + } + } + description + "set IN-PKTS-1024-1518-OCTETS threshold"; + } + leaf out-pkt-64-octet { + type uint32 { + range "1..4294967295" { + description + "OUT-PKT-64-OCTET threshold"; + } + } + description + "set OUT-PKT-64-OCTET threshold"; + } + leaf out-pkts-65-127octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-65-127OCTETS threshold"; + } + } + description + "set OUT-PKTS-65-127OCTETS threshold"; + } + leaf out-pkts-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-128-255-OCTETS threshold"; + } + } + description + "set OUT-PKTS-128-255-OCTETS threshold"; + } + leaf out-pkts-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-256-511-OCTETS threshold"; + } + } + description + "set OUT-PKTS-256-511-OCTETS threshold"; + } + leaf out-pkts-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-512-1023-OCTETS threshold"; + } + } + description + "set OUT-PKTS-512-1023-OCTETS threshold"; + } + leaf out-pkts-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-1024-1518-OCTETS threshold"; + } + } + description + "set OUT-PKTS-1024-1518-OCTETS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifOut_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pause-frame { + description + "set in-pause-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-802-1q-frames { + description + "set in-802-1Q-frames TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-1519-max-octets { + description + "set in-pkts-1519-Max-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-overrun { + description + "set in-drop-overrun TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-abort { + description + "set in-drop-abort TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-invalid-vlan { + description + "set in-drop-invalid-VLAN TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-invalid-dmac { + description + "set in-drop-invalid-DMAC TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-invalid-encap { + description + "set in-drop-invalid-encap TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mib-giant { + description + "set in-MIB-giant TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mib-jabber { + description + "set in-MIB-jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mib-crc { + description + "set in-MIB-CRC TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-collisions { + description + "set in-error-collisions TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-symbol { + description + "set in-error-symbol TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-802-1q-frames { + description + "set out-802-1Q-frames TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pause-frames { + description + "set out-pause-frames TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-1519-max-octets { + description + "set out-pkts-1519-Max-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-drop-underrun { + description + "set out-drop-underrun TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-drop-abort { + description + "set out-drop-abort TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-drop-other { + description + "set out-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-error-other { + description + "set out-error-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-giant { + description + "set in-error-giant TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-runt { + description + "set in-error-runt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-jabbers { + description + "set in-error-jabbers TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-other { + description + "set in-error-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkt-64-octet { + description + "set in-pkt-64-octet TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-65-127octets { + description + "set in-pkts-65-127octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-128-255-octets { + description + "set in-pkts-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-256-511-octets { + description + "set in-pkts-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-512-1023-octets { + description + "set in-pkts-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-1024-1518-octets { + description + "set in-pkts-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkt-64-octet { + description + "set out-pkt-64-octet TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-65-127octets { + description + "set out-pkts-65-127octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-128-255-octets { + description + "set out-pkts-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-256-511-octets { + description + "set out-pkts-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-512-1023-octets { + description + "set out-pkts-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-1024-1518-octets { + description + "set out-pkts-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + } + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container pm { + when "../a1:controller-name[starts-with(text(),'FortyGigECtrlr')] or ../a1:controller-name[starts-with(text(),'FourHundredGigECtrlr')] or ../a1:controller-name[starts-with(text(),'GigabitEthCtrlr')] or ../a1:controller-name[starts-with(text(),'HundredGigECtrlr')] or ../a1:controller-name[starts-with(text(),'TenGigECtrlr')] or ../a1:controller-name[starts-with(text(),'MACSecCtrlr')]" { + tailf:dependency "../a1:controller-name"; + } + description + "Configure pm parameters"; + container interval-15-min { + description + "Configure pm parameters of 15 minute interval"; + container ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf stat-pkt { + type uint32 { + range "1..4294967295" { + description + "PKT-STAT threshold "; + } + } + description + "set PKT-STAT threshold"; + } + leaf octet-stat { + type uint32 { + range "1..4294967295" { + description + "OCTET-STAT threshold "; + } + } + description + "set OCTET-STAT threshold"; + } + leaf oversize-pkt { + type uint32 { + range "1..4294967295" { + description + "OVERSIZE-PKT threshold"; + } + } + description + "set OVERSIZE-PKT threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf long-frame { + type uint32 { + range "1..4294967295" { + description + "LONG-FRAMES threshold "; + } + } + description + "set LONG-FRAMES threshold"; + } + leaf jabber-stats { + type uint32 { + range "1..4294967295" { + description + "JABBER-STATS threshold "; + } + } + description + "set JABBER-STATS threshold"; + } + leaf sixty-four-octets { + type uint32 { + range "1..4294967295" { + description + "64-OCTET threshold"; + } + } + description + "set 64-OCTET threshold"; + } + leaf six5-127-octets { + type uint32 { + range "1..4294967295" { + description + "65-127-OCTET threshold"; + } + } + description + "set 65-127-OCTET threshold"; + } + leaf one-hundred-twenty-eight-255-octets { + type uint32 { + range "1..4294967295" { + description + "128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf two-hundred-fifty-six-511-octets { + type uint32 { + range "1..4294967295" { + description + "256-511-OCTET threshold "; + } + } + description + "set 256-511-OCTET threshold"; + } + leaf five-hundred-twelve-1023-octets { + type uint32 { + range "1..4294967295" { + description + "512-1023-OCTET threshold"; + } + } + description + "set 512-1023-OCTET threshold"; + } + leaf one-thousand-twenty-four-1518-octets { + type uint32 { + range "1..4294967295" { + description + "1024-1518-OCTET threshold"; + } + } + description + "set 1024-1518-OCTET threshold"; + } + leaf in-64-octets { + type uint32 { + range "1..4294967295" { + description + "IN-64-OCTET threshold"; + } + } + description + "set IN-64-OCTET threshold"; + } + leaf in-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "IN-65-127-OCTET threshold"; + } + } + description + "set IN-65-127-OCTET threshold"; + } + leaf in-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-128-255-OCTET threshold "; + } + } + description + "set IN-128-255-OCTET threshold"; + } + leaf in-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-256-511-OCTET threshold "; + } + } + description + "set IN-256-511-OCTET threshold"; + } + leaf in-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-512-1023-OCTET threshold"; + } + } + description + "set IN-512-1023-OCTET threshold"; + } + leaf in-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-1024-1518-OCTET threshold"; + } + } + description + "set IN-1024-1518-OCTET threshold"; + } + leaf out-pkt-64-octet { + type uint32 { + range "1..4294967295" { + description + "OUT-PKT-64-OCTET threshold"; + } + } + description + "set OUT-PKT-64-OCTET threshold"; + } + leaf out-pkts-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-65-127-OCTETS threshold"; + } + } + description + "set OUT-PKTS-65-127-OCTETS threshold"; + } + leaf out-pkts-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-128-255-OCTETS threshold"; + } + } + description + "set OUT-PKTS-128-255-OCTETS threshold"; + } + leaf out-pkts-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-256-511-OCTETS threshold"; + } + } + description + "set OUT-PKTS-256-511-OCTETS threshold"; + } + leaf out-pkts-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-512-1023-OCTETS threshold"; + } + } + description + "set OUT-PKTS-512-1023-OCTETS threshold"; + } + leaf out-pkts-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-1024-1518-OCTETS threshold"; + } + } + description + "set OUT-PKTS-1024-1518-OCTETS threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN_DROP_OTHER threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold "; + } + } + description + "set OUT-BCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold "; + } + } + description + "set OUT-MCAST threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold "; + } + } + description + "set OUT-OCTET threshold"; + } + leaf if-in-errors { + type uint32 { + range "1..4294967295" { + description + "IFIN_ERRORS threshold"; + } + } + description + "set IFIN_ERRORS threshold"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf ether-stat-multicast-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_MULTICAST_PKT threshold"; + } + } + description + "set ETHER_STAT_MULTICAST_PKT threshold"; + } + leaf ether-stat-broadcast-pkt { + type uint32 { + range "1..4294967295" { + description + " ETHER_STAT_BROADCAST_PKT threshold"; + } + } + description + "set ETHER_STAT_BROADCAST_PKT threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_BYTES threshold"; + } + } + description + "set IN_GOOD_BYTES threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_PKTS threshold"; + } + } + description + "set IN_GOOD_PKTS threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set OUT_GOOD_BYTES threshold"; + } + } + description + "set OUT_GOOD_BYTES threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set GOOD_PKTS threshold"; + } + } + description + "set THRESH_OUT_GOOD_PKTS threshold"; + } + leaf rx-util { + type uint32 { + range "1..10000" { + description + "set RX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set RX_UTIL threshold(in units of 0.01%)"; + } + leaf tx-util { + type uint32 { + range "1..10000" { + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + leaf ether-stat-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_UNDERSIZED_PKT threshold"; + } + } + description + "set ETHER_STAT_UNDERSIZED_PKT threshold"; + } + leaf tx-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_UNDERSIZED_PKT threshold"; + } + } + description + "set TX_UNDERSIZED_PKT threshold"; + } + leaf tx-oversized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_OVERSIZED_PKT threshold"; + } + } + description + "set TX_OVERSIZED_PKT threshold"; + } + leaf tx-fragments { + type uint32 { + range "1..4294967295" { + description + "TX_FRAGMENTS threshold"; + } + } + description + "set TX_FRAGMENTS threshold"; + } + leaf tx-jabber { + type uint32 { + range "1..4294967295" { + description + "TX_JABBER threshold"; + } + } + description + "set TX_JABBER threshold"; + } + leaf tx-bad-fcs { + type uint32 { + range "1..4294967295" { + description + "TX_BAD_FCS threshold"; + } + } + description + "set TX_BAD_FCS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-util { + description + "set rx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-util { + description + "set tx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container stat-pkt { + description + "set stat-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container octet-stat { + description + "set octet-stat TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container oversize-pkt { + description + "set oversize-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container long-frame { + description + "set long-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container jabber-stats { + description + "set jabber-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _64-octets { + description + "set 64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _65-127-octets { + description + "set 65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _128-255-octets { + description + "set 128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _256-511-octets { + description + "set 256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _512-1023-octets { + description + "set 512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _1024-1518-octets { + description + "set 1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-errors { + description + "set ifIn_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifOut_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-multicast-pkt { + description + "set ether_stat_multicast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-broadcast-pkt { + description + "set ether_stat_broadcast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-undersized-pkt { + description + "set ether_stat_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-64-octets { + description + "set in-64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-65-127-octets { + description + "set in-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-128-255-octets { + description + "set in-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-256-511-octets { + description + "set in-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-512-1023-octets { + description + "set in-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-1024-1518-octets { + description + "set in-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkt-64-octet { + description + "set out-pkt-64-octet TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-65-127-octets { + description + "set out-pkts-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-128-255-octets { + description + "set out-pkts-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-256-511-octets { + description + "set out-pkts-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-512-1023-octets { + description + "set out-pkts-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-1024-1518-octets { + description + "set out-pkts-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-undersized-pkt { + description + "set tx_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-oversized-pkt { + description + "set tx_oversized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-fragments { + description + "set tx_fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-jabber { + description + "set tx_jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-bad-fcs { + description + "set tx_bad_fcs TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container fec { + description + "Configure fec performance monitoring"; + container threshold { + description + "Configure fec threshold"; + leaf ec-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ec-words threshold "; + } + } + description + "set EC-Words threshold"; + } + leaf uc-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "uc-words threshold "; + } + } + description + "set UC-WORDS threshold"; + } + container pre-fec-ber { + description + "Set PRE-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber min threshold "; + } + } + description + "set pre-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber max threshold "; + } + } + description + "set pre-fec-ber max threshold"; + } + } + container post-fec-ber { + description + "Set POST-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber min threshold "; + } + } + description + "set post-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber max threshold "; + } + } + description + "set post-fec-ber max threshold"; + } + } + } + container report { + description + "set fec TCA reporting status"; + container uc-words { + description + "set uc-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ec-words { + description + "set ec-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container pre-fec-ber { + description + "set PRE FEC BER TCA reporting status"; + container max-tca { + description + "set PRE FEC BER max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container min-tca { + description + "set PRE FEC BER min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container post-fec-ber { + description + "set POST FEC BER TCA reporting status"; + container max-tca { + description + "set POST FEC BER max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container min-tca { + description + "set POST FEC BER min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container pcs { + description + "configure pcs performance monitoring"; + container threshold { + description + "Configure threshold on pcs parameters"; + leaf bip { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "BIP threshold range <1-18446744073709551615>"; + } + } + description + "set BIP threshold"; + } + leaf frm-err { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "FRM-ERR threshold range <1-18446744073709551615>"; + } + } + description + "set FRM-ERR threshold"; + } + leaf bad-sh { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Bad-sh threshold range <1-18446744073709551615>"; + } + } + description + "set Bad-sh threshold"; + } + leaf es { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Es threshold range <0-900>"; + } + } + description + "set Es threshold"; + } + leaf ses { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Ses threshold range <0-900>"; + } + } + description + "set Ses threshold"; + } + leaf uas { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Uas threshold range <0-900>"; + } + } + description + "set Uas threshold"; + } + leaf es-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Es fe threshold range <0-900>"; + } + } + description + "set es_fe threshold"; + } + leaf ses-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Ses fe threshold range <0-900>"; + } + } + description + "set Ses fe threshold"; + } + leaf uas-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Uas fe threshold range <0-900>"; + } + } + description + "set Ses threshold"; + } + } + container report { + description + "set pcs TCA reporting status"; + container bip { + description + "set bip TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container frm-err { + description + "set frm-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bad-sh { + description + "set bad-sh TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + container macsec-secy-tx { + description + "Configure pm parameters of macsec-secy-tx"; + container threshold { + description + "Configure threshold on macsec-secy-tx parameters"; + leaf out-pkts-protected { + type uint32 { + range "1..4294967295" { + description + "OutPktsProtected threshold range"; + } + } + description + "Set Threshold for OutPktsProtected"; + } + leaf out-pkts-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutPktsEncrypted threshold range"; + } + } + description + "Set Threshold for OutPktsEncrypted"; + } + leaf out-octets-protected { + type uint32 { + range "1..4294967295" { + description + "OutOctetsProtected threshold range"; + } + } + description + "Set Threshold for OutOctetsProtected"; + } + leaf out-octets-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutOctetsEncrypted threshold range"; + } + } + description + "Set Threshold for OutOctetsEncrypted"; + } + leaf out-pkts-too-long { + type uint32 { + range "1..4294967295" { + description + "OutPktsTooLong threshold range"; + } + } + description + "Set Threshold for OutPktsTooLong"; + } + } + container report { + description + "Configure Report for macsec-secy-tx Parameters"; + container out-pkts-protected { + description + "set OutPktsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-encrypted { + description + "set OutPktsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-protected { + description + "set OutOctetsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-encrypted { + description + "set OutOctetsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-too-long { + description + "set OutPktsTooLong TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-secy-rx { + description + "Configure pm parameters of macsec-secy-rx"; + container threshold { + description + "Configure threshold on macsec-secy-rx parameters"; + leaf in-pkts-unchecked { + type uint32 { + range "1..4294967295" { + description + "InPktsUnchecked threshold range"; + } + } + description + "Set Threshold for InPktsUnchecked"; + } + leaf in-pkts-delayed { + type uint32 { + range "1..4294967295" { + description + "InPktsDelayed threshold range"; + } + } + description + "Set Threshold for InPktsDelayed"; + } + leaf in-pkts-late { + type uint32 { + range "1..4294967295" { + description + "InPktsLate threshold range"; + } + } + description + "Set Threshold for InPktsLate"; + } + leaf in-pkts-ok { + type uint32 { + range "1..4294967295" { + description + "InPktsOK threshold range"; + } + } + description + "Set Threshold for InPktsOK"; + } + leaf in-pkts-invalid { + type uint32 { + range "1..4294967295" { + description + "InPktsInvalid threshold range"; + } + } + description + "Set Threshold for InPktsInvalid"; + } + leaf in-pkts-not-valid { + type uint32 { + range "1..4294967295" { + description + "InPktsNotValid threshold range"; + } + } + description + "Set Threshold for InPktsNotValid"; + } + leaf in-pkts-not-using-sa { + type uint32 { + range "1..4294967295" { + description + "InPktsNotUsingSA threshold range"; + } + } + description + "Set Threshold for InPktsNotUsingSA"; + } + leaf in-pkts-unused-sa { + type uint32 { + range "1..4294967295" { + description + "InPktsUnusedSA threshold range"; + } + } + description + "Set Threshold for InPktsUnusedSA"; + } + leaf in-pkts-untagged-hit { + type uint32 { + range "1..4294967295" { + description + "InPktsUntaggedHit threshold range"; + } + } + description + "Set Threshold for InPktsUntaggedHit"; + } + leaf in-octets-validated { + type uint32 { + range "1..4294967295" { + description + "InOctetsValidated threshold range"; + } + } + description + "Set Threshold for InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint32 { + range "1..4294967295" { + description + "InOctetsDecrypted threshold range"; + } + } + description + "Set Threshold for InOctetsDecrypted "; + } + } + container report { + description + "Configure Report for macsec-secy-rx Parameters"; + container in-pkts-unchecked { + description + "set InPktsUnchecked TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-delayed { + description + "set InPktsDelayed TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-late { + description + "set InPktsLate TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-ok { + description + "set InPktsOK TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-invalid { + description + "set InPktsInvalid TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-not-valid { + description + "set InPktsNotValid TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-not-using-sa { + description + "set InPktsNotUsingSA TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-unused-sa { + description + "set InPktsUnusedSA TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-untagged-hit { + description + "set InPktsUntaggedHit TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-validated { + description + "set InOctetsValidated TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-decrypted { + description + "set InOctetsDecrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-secy-if { + description + "Configure pm parameters of macsec-secy-if"; + container threshold { + description + "Configure threshold on macsec-secy-if parameters"; + leaf in-pkts-untagged { + type uint32 { + range "1..4294967295" { + description + "InPktsUntagged threshold range"; + } + } + description + "Set Threshold for InPktsUntagged"; + } + leaf in-pkts-no-tag { + type uint32 { + range "1..4294967295" { + description + "InPktsNoTag threshold range"; + } + } + description + "Set Threshold for InPktsNoTag"; + } + leaf in-pkts-bad-tag { + type uint32 { + range "1..4294967295" { + description + "InPktsBadTag threshold range"; + } + } + description + "Set Threshold for InPktsBadTag"; + } + leaf in-pkts-unknown-sci { + type uint32 { + range "1..4294967295" { + description + "InPktsUnknownSCI threshold range"; + } + } + description + "Set Threshold for InPktsUnknownSCI"; + } + leaf in-pkts-no-sci { + type uint32 { + range "1..4294967295" { + description + "InPktsNoSCI threshold range"; + } + } + description + "Set Threshold for InPktsNoSCI"; + } + leaf in-pkts-overrun { + type uint32 { + range "1..4294967295" { + description + "InPktsOverrun threshold range"; + } + } + description + "Set Threshold for InPktsOverrun"; + } + leaf in-octets-validated { + type uint32 { + range "1..4294967295" { + description + "InOctetsValidated threshold range"; + } + } + description + "Set Threshold for InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint32 { + range "1..4294967295" { + description + "InOctetsDecrypted threshold range"; + } + } + description + "Set Threshold for InOctetsDecrypted"; + } + leaf out-pkts-untagged { + type uint32 { + range "1..4294967295" { + description + "OutPktsUntagged threshold range"; + } + } + description + "Set Threshold for OutPktsUntagged "; + } + leaf out-pkts-too-long { + type uint32 { + range "1..4294967295" { + description + "OutPktsTooLong threshold range"; + } + } + description + "Set Threshold for OutPktsTooLong"; + } + leaf out-octets-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutOctetsEncrypted threshold range"; + } + } + description + "Set Threshold for OutOctetsEncrypted"; + } + leaf out-octets-protected { + type uint32 { + range "1..4294967295" { + description + "OutOctetsProtected threshold range"; + } + } + description + "Set Threshold for OutOctetsProtected"; + } + } + container report { + description + "Configure Report for macsec-secy-if Parameters"; + container in-pkts-untagged { + description + "set InPktsUntagged TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-no-tag { + description + "set InPktsNoTag TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-bad-tag { + description + "set InPktsBadTag TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-unknown-sci { + description + "set InPktsUnknownSCI TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-no-sci { + description + "set InPktsNoSCI TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-overrun { + description + "set InPktsOverrun TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-validated { + description + "set InOctetsValidated TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-decrypted { + description + "set InOctetsDecrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-untagged { + description + "set OutPktsUntagged TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-too-long { + description + "set OutPktsTooLong TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-protected { + description + "set OutOctetsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-encrypted { + description + "set OutOctetsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on macsec ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf stat-pkt { + type uint32 { + range "1..4294967295" { + description + "PKT-STAT threshold "; + } + } + description + "set PKT-STAT threshold"; + } + leaf octet-stat { + type uint32 { + range "1..4294967295" { + description + "OCTET-STAT threshold "; + } + } + description + "set OCTET-STAT threshold"; + } + leaf oversize-pkt { + type uint32 { + range "1..4294967295" { + description + "OVERSIZE-PKT threshold"; + } + } + description + "set OVERSIZE-PKT threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf long-frame { + type uint32 { + range "1..4294967295" { + description + "LONG-FRAMES threshold "; + } + } + description + "set LONG-FRAMES threshold"; + } + leaf jabber-stats { + type uint32 { + range "1..4294967295" { + description + "JABBER-STATS threshold "; + } + } + description + "set JABBER-STATS threshold"; + } + leaf sixty-four-octets { + type uint32 { + range "1..4294967295" { + description + "64-OCTET threshold"; + } + } + description + "set 64-OCTET threshold"; + } + leaf six5-127-octets { + type uint32 { + range "1..4294967295" { + description + "65-127-OCTET threshold"; + } + } + description + "set 65-127-OCTET threshold"; + } + leaf one-hundred-twenty-eight-255-octets { + type uint32 { + range "1..4294967295" { + description + "128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf two-hundred-fifty-six-511-octets { + type uint32 { + range "1..4294967295" { + description + "256-511-OCTET threshold "; + } + } + description + "set 256-511-OCTET threshold"; + } + leaf five-hundred-twelve-1023-octets { + type uint32 { + range "1..4294967295" { + description + "512-1023-OCTET threshold"; + } + } + description + "set 512-1023-OCTET threshold"; + } + leaf one-thousand-twenty-four-1518-octets { + type uint32 { + range "1..4294967295" { + description + "1024-1518-OCTET threshold"; + } + } + description + "set 1024-1518-OCTET threshold"; + } + leaf in-64-octets { + type uint32 { + range "1..4294967295" { + description + "IN-64-OCTET threshold"; + } + } + description + "set IN-64-OCTET threshold"; + } + leaf in-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "IN-65-127-OCTET threshold"; + } + } + description + "set IN-65-127-OCTET threshold"; + } + leaf in-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-128-255-OCTET threshold "; + } + } + description + "set IN-128-255-OCTET threshold"; + } + leaf in-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-256-511-OCTET threshold "; + } + } + description + "set IN-256-511-OCTET threshold"; + } + leaf in-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-512-1023-OCTET threshold"; + } + } + description + "set IN-512-1023-OCTET threshold"; + } + leaf in-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-1024-1518-OCTET threshold"; + } + } + description + "set IN-1024-1518-OCTET threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN_DROP_OTHER threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold "; + } + } + description + "set OUT-BCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold "; + } + } + description + "set OUT-MCAST threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold "; + } + } + description + "set OUT-OCTET threshold"; + } + leaf if-in-errors { + type uint32 { + range "1..4294967295" { + description + "IFIN_ERRORS threshold"; + } + } + description + "set IFIN_ERRORS threshold"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf ether-stat-multicast-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_MULTICAST_PKT threshold"; + } + } + description + "set ETHER_STAT_MULTICAST_PKT threshold"; + } + leaf ether-stat-broadcast-pkt { + type uint32 { + range "1..4294967295" { + description + " ETHER_STAT_BROADCAST_PKT threshold"; + } + } + description + "set ETHER_STAT_BROADCAST_PKT threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_BYTES threshold"; + } + } + description + "set IN_GOOD_BYTES threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_PKTS threshold"; + } + } + description + "set IN_GOOD_PKTS threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set OUT_GOOD_BYTES threshold"; + } + } + description + "set OUT_GOOD_BYTES threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set GOOD_PKTS threshold"; + } + } + description + "set THRESH_OUT_GOOD_PKTS threshold"; + } + leaf rx-util { + type uint32 { + range "1..10000" { + description + "set RX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set RX_UTIL threshold(in units of 0.01%)"; + } + leaf tx-util { + type uint32 { + range "1..10000" { + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + leaf ether-stat-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_UNDERSIZED_PKT threshold"; + } + } + description + "set ETHER_STAT_UNDERSIZED_PKT threshold"; + } + leaf tx-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_UNDERSIZED_PKT threshold"; + } + } + description + "set TX_UNDERSIZED_PKT threshold"; + } + leaf tx-oversized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_OVERSIZED_PKT threshold"; + } + } + description + "set TX_OVERSIZED_PKT threshold"; + } + leaf tx-fragments { + type uint32 { + range "1..4294967295" { + description + "TX_FRAGMENTS threshold"; + } + } + description + "set TX_FRAGMENTS threshold"; + } + leaf tx-jabber { + type uint32 { + range "1..4294967295" { + description + "TX_JABBER threshold"; + } + } + description + "set TX_JABBER threshold"; + } + leaf tx-bad-fcs { + type uint32 { + range "1..4294967295" { + description + "TX_BAD_FCS threshold"; + } + } + description + "set TX_BAD_FCS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-util { + description + "set rx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-util { + description + "set tx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container stat-pkt { + description + "set stat-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container octet-stat { + description + "set octet-stat TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container oversize-pkt { + description + "set oversize-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container long-frame { + description + "set long-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container jabber-stats { + description + "set jabber-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _64-octets { + description + "set 64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _65-127-octets { + description + "set 65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _128-255-octets { + description + "set 128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _256-511-octets { + description + "set 256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _512-1023-octets { + description + "set 512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _1024-1518-octets { + description + "set 1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-errors { + description + "set ifIn_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifOut_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-multicast-pkt { + description + "set ether_stat_multicast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-broadcast-pkt { + description + "set ether_stat_broadcast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-undersized-pkt { + description + "set ether_stat_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-64-octets { + description + "set in-64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-65-127-octets { + description + "set in-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-128-255-octets { + description + "set in-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-256-511-octets { + description + "set in-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-512-1023-octets { + description + "set in-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-1024-1518-octets { + description + "set in-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-undersized-pkt { + description + "set tx_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-oversized-pkt { + description + "set tx_oversized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-fragments { + description + "set tx_fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-jabber { + description + "set tx_jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-bad-fcs { + description + "set tx_bad_fcs TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hour { + description + "Configure pm parameters of 24 hour interval"; + container ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf stat-pkt { + type uint32 { + range "1..4294967295" { + description + "STAT-PKT threshold "; + } + } + description + "set STAT-PKT threshold"; + } + leaf octet-stat { + type uint32 { + range "1..4294967295" { + description + "OCTET-STAT threshold "; + } + } + description + "set OCTET-STAT threshold"; + } + leaf oversize-pkt { + type uint32 { + range "1..4294967295" { + description + "OVERSIZEPKT-STATS threshold"; + } + } + description + "set OVERSIZE-PKT threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf long-frame { + type uint32 { + range "1..4294967295" { + description + "LONG-FRAMES threshold "; + } + } + description + "set LONG-FRAMES threshold"; + } + leaf jabber-stats { + type uint32 { + range "1..4294967295" { + description + "JABBER-STATS threshold "; + } + } + description + "set JABBER-STATS threshold"; + } + leaf sixty-four-octets { + type uint32 { + range "1..4294967295" { + description + "64-OCTET threshold"; + } + } + description + "set 64-OCTET threshold"; + } + leaf six5-127-octets { + type uint32 { + range "1..4294967295" { + description + "65-127-OCTET threshold"; + } + } + description + "set 65-127-OCTET threshold"; + } + leaf one-hundred-twenty-eight-255-octets { + type uint32 { + range "1..4294967295" { + description + "128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf two-hundred-fifty-six-511-octets { + type uint32 { + range "1..4294967295" { + description + "256-511-OCTET threshold "; + } + } + description + "set 256-511-OCTET threshold"; + } + leaf five-hundred-twelve-1023-octets { + type uint32 { + range "1..4294967295" { + description + "512-1023-OCTET threshold"; + } + } + description + "set 512-1023-OCTET threshold"; + } + leaf one-thousand-twenty-four-1518-octets { + type uint32 { + range "1..4294967295" { + description + "1024-1518-OCTET threshold"; + } + } + description + "set 1024-1518-OCTET threshold"; + } + leaf in-64-octets { + type uint32 { + range "1..4294967295" { + description + "IN-64-OCTET threshold"; + } + } + description + "set IN-64-OCTET threshold"; + } + leaf in-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "IN-65-127-OCTET threshold"; + } + } + description + "set IN-65-127-OCTET threshold"; + } + leaf in-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf in-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-256-511-OCTET threshold "; + } + } + description + "set IN-256-511-OCTET threshold"; + } + leaf in-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-512-1023-OCTET threshold"; + } + } + description + "set IN-512-1023-OCTET threshold"; + } + leaf in-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-1024-1518-OCTET threshold"; + } + } + description + "set IN-1024-1518-OCTET threshold"; + } + leaf out-pkt-64-octet { + type uint32 { + range "1..4294967295" { + description + "OUT-PKT-64-OCTET threshold"; + } + } + description + "set OUT-PKT-64-OCTET threshold"; + } + leaf out-pkts-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-65-127-OCTETS threshold"; + } + } + description + "set OUT-PKTS-65-127-OCTETS threshold"; + } + leaf out-pkts-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-128-255-OCTETS threshold"; + } + } + description + "set OUT-PKTS-128-255-OCTETS threshold"; + } + leaf out-pkts-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-256-511-OCTETS threshold"; + } + } + description + "set OUT-PKTS-256-511-OCTETS threshold"; + } + leaf out-pkts-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-512-1023-OCTETS threshold"; + } + } + description + "set OUT-PKTS-512-1023-OCTETS threshold"; + } + leaf out-pkts-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-1024-1518-OCTETS threshold"; + } + } + description + "set OUT-PKTS-1024-1518-OCTETS threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN_DROP_OTHER threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold )"; + } + } + description + "set OUT-BCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold (seconds)"; + } + } + description + "set OUT-MCAST threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold (seconds)"; + } + } + description + "set OUT-OCTET threshold"; + } + leaf if-in-errors { + type uint32 { + range "1..4294967295" { + description + "IFIN_ERRORS threshold"; + } + } + description + "set IFIN_ERRORS threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_BYTES threshold"; + } + } + description + "set IN_GOOD_BYTES threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_PKTS threshold"; + } + } + description + "set IN_GOOD_PKTS threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set OUT_GOOD_BYTES threshold"; + } + } + description + "set OUT_GOOD_BYTES threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set GOOD_PKTS threshold"; + } + } + description + "set THRESH_OUT_GOOD_PKTS threshold"; + } + leaf rx-util { + type uint32 { + range "1..10000" { + description + "set RX_UTIL threshold (in units of 0.01%)"; + } + } + description + "set THRESH_RX_UTIL threshold(in units of 0.01%)"; + } + leaf tx-util { + type uint32 { + range "1..10000" { + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf ether-stat-multicast-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_MULTICAST_PKT threshold"; + } + } + description + "set ETHER_STAT_MULTICAST_PKT threshold"; + } + leaf ether-stat-broadcast-pkt { + type uint32 { + range "1..4294967295" { + description + " ETHER_STAT_BROADCAST_PKT threshold"; + } + } + description + " set ETHER_STAT_BROADCAST_PKT threshold"; + } + leaf ether-stat-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_UNDERSIZED_PKT threshold"; + } + } + description + "set ETHER_STAT_UNDERSIZED_PKT threshold"; + } + leaf tx-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_UNDERSIZED_PKT threshold"; + } + } + description + "set TX_UNDERSIZED_PKT threshold"; + } + leaf tx-oversized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_OVERSIZED_PKT threshold"; + } + } + description + "set TX_OVERSIZED_PKT threshold"; + } + leaf tx-fragments { + type uint32 { + range "1..4294967295" { + description + "TX_FRAGMENTS threshold"; + } + } + description + "set TX_FRAGMENTS threshold"; + } + leaf tx-jabber { + type uint32 { + range "1..4294967295" { + description + "TX_JABBER threshold"; + } + } + description + "set TX_JABBER threshold"; + } + leaf tx-bad-fcs { + type uint32 { + range "1..4294967295" { + description + "TX_BAD_FCS threshold"; + } + } + description + "set TX_BAD_FCS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-util { + description + "set rx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-util { + description + "set tx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container stat-pkt { + description + "set stat-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container octet-stat { + description + "set octet-stat TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container oversize-pkt { + description + "set oversize-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container long-frame { + description + "set long-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container jabber-stats { + description + "set jabber-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _64-octets { + description + "set 64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _65-127-octets { + description + "set 65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _128-255-octets { + description + "set 128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _256-511-octets { + description + "set 256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _512-1023-octets { + description + "set 512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _1024-1518-octets { + description + "set 1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-errors { + description + "set ifIn_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifIn_Octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-multicast-pkt { + description + "set ether_stat_multicast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-broadcast-pkt { + description + "set ether_stat_broadcast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-undersized-pkt { + description + "set ether_stat_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-64-octets { + description + "set in-64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-65-127-octets { + description + "set in-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-128-255-octets { + description + "set in-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-256-511-octets { + description + "set in-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-512-1023-octets { + description + "set in-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-1024-1518-octets { + description + "set in-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkt-64-octet { + description + "set out-pkt-64-octet TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-65-127-octets { + description + "set out-pkts-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-128-255-octets { + description + "set out-pkts-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-256-511-octets { + description + "set out-pkts-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-512-1023-octets { + description + "set out-pkts-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-1024-1518-octets { + description + "set out-pkts-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-undersized-pkt { + description + "set tx_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-oversized-pkt { + description + "set tx_oversized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-fragments { + description + "set tx_fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-jabber { + description + "set tx_jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-bad-fcs { + description + "set tx_bad_fcs TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container fec { + description + "Configure fec performance monitoring"; + container threshold { + description + "Configure fec threshold"; + leaf ec-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ec-words threshold "; + } + } + description + "set EC-Words threshold"; + } + leaf uc-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "uc-words threshold "; + } + } + description + "set UC-WORDS threshold"; + } + container pre-fec-ber { + description + "Set PRE-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber min threshold "; + } + } + description + "set pre-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber max threshold "; + } + } + description + "set pre-fec-ber max threshold"; + } + } + container post-fec-ber { + description + "Set POST-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber min threshold "; + } + } + description + "set post-fec-ber min threshold "; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber max threshold "; + } + } + description + "set post-fec-ber max threshold"; + } + } + } + container report { + description + "set fec TCA reporting status"; + container uc-words { + description + "set uc-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ec-words { + description + "set ec-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container pre-fec-ber { + description + "set PRE FEC BER TCA reporting status"; + container max-tca { + description + "set PRE FEC BER max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container min-tca { + description + "set PRE FEC BER min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container post-fec-ber { + description + "set POST FEC BER TCA reporting status"; + container max-tca { + description + "set POST FEC BER max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container min-tca { + description + "set POST FEC BER min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container pcs { + description + "configure pcs performance monitoring"; + container threshold { + description + "Configure threshold on pcs parameters"; + leaf bip { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "BIP threshold range <1-18446744073709551615>"; + } + } + description + "set BIP threshold"; + } + leaf frm-err { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "FRM-ERR threshold range <1-18446744073709551615>"; + } + } + description + "set FRM-ERR threshold"; + } + leaf bad-sh { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Bad-sh threshold range <1-18446744073709551615>"; + } + } + description + "set Bad-sh threshold"; + } + leaf es { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Es threshold range <0-86400>"; + } + } + description + "set Es threshold"; + } + leaf ses { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Ses threshold range <0-86400>"; + } + } + description + "set Ses threshold"; + } + leaf uas { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Uas threshold range <0-86400>"; + } + } + description + "set Uas threshold"; + } + leaf es-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Es fe threshold range <0-86400>"; + } + } + description + "set Es fe threshold"; + } + leaf ses-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Ses fe threshold range <0-86400>"; + } + } + description + "set Ses fe threshold"; + } + leaf uas-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Ses threshold range <0-86400>"; + } + } + description + "set Uas threshold"; + } + } + container report { + description + "set pcs TCA reporting status"; + container bip { + description + "set bip TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container frm-err { + description + "set frm-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bad-sh { + description + "set bad-sh TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + } + container interval-30-sec { + description + "Configure pm parameters of 30-second interval"; + container ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf stat-pkt { + type uint32 { + range "1..4294967295" { + description + "PKT-STAT threshold "; + } + } + description + "set PKT-STAT threshold"; + } + leaf octet-stat { + type uint32 { + range "1..4294967295" { + description + "OCTET-STAT threshold "; + } + } + description + "set OCTET-STAT threshold"; + } + leaf oversize-pkt { + type uint32 { + range "1..4294967295" { + description + "OVERSIZE-PKT threshold"; + } + } + description + "set OVERSIZE-PKT threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf long-frame { + type uint32 { + range "1..4294967295" { + description + "LONG-FRAMES threshold "; + } + } + description + "set LONG-FRAMES threshold"; + } + leaf jabber-stats { + type uint32 { + range "1..4294967295" { + description + "JABBER-STATS threshold "; + } + } + description + "set JABBER-STATS threshold"; + } + leaf sixty-four-octets { + type uint32 { + range "1..4294967295" { + description + "64-OCTET threshold"; + } + } + description + "set 64-OCTET threshold"; + } + leaf six5-127-octets { + type uint32 { + range "1..4294967295" { + description + "65-127-OCTET threshold"; + } + } + description + "set 65-127-OCTET threshold"; + } + leaf one-hundred-twenty-eight-255-octets { + type uint32 { + range "1..4294967295" { + description + "128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf two-hundred-fifty-six-511-octets { + type uint32 { + range "1..4294967295" { + description + "256-511-OCTET threshold "; + } + } + description + "set 256-511-OCTET threshold"; + } + leaf five-hundred-twelve-1023-octets { + type uint32 { + range "1..4294967295" { + description + "512-1023-OCTET threshold"; + } + } + description + "set 512-1023-OCTET threshold"; + } + leaf one-thousand-twenty-four-1518-octets { + type uint32 { + range "1..4294967295" { + description + "1024-1518-OCTET threshold"; + } + } + description + "set 1024-1518-OCTET threshold"; + } + leaf in-64-octets { + type uint32 { + range "1..4294967295" { + description + "IN-64-OCTET threshold"; + } + } + description + "set IN-64-OCTET threshold"; + } + leaf in-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "IN-65-127-OCTET threshold"; + } + } + description + "set IN-65-127-OCTET threshold"; + } + leaf in-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-128-255-OCTET threshold "; + } + } + description + "set IN-128-255-OCTET threshold"; + } + leaf in-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-256-511-OCTET threshold "; + } + } + description + "set IN-256-511-OCTET threshold"; + } + leaf in-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-512-1023-OCTET threshold"; + } + } + description + "set IN-512-1023-OCTET threshold"; + } + leaf in-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-1024-1518-OCTET threshold"; + } + } + description + "set IN-1024-1518-OCTET threshold"; + } + leaf out-pkt-64-octet { + type uint32 { + range "1..4294967295" { + description + "OUT-PKT-64-OCTET threshold"; + } + } + description + "set OUT-PKT-64-OCTET threshold"; + } + leaf out-pkts-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-65-127-OCTETS threshold"; + } + } + description + "set OUT-PKTS-65-127-OCTETS threshold"; + } + leaf out-pkts-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-128-255-OCTETS threshold"; + } + } + description + "set OUT-PKTS-128-255-OCTETS threshold"; + } + leaf out-pkts-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-256-511-OCTETS threshold"; + } + } + description + "set OUT-PKTS-256-511-OCTETS threshold"; + } + leaf out-pkts-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-512-1023-OCTETS threshold"; + } + } + description + "set OUT-PKTS-512-1023-OCTETS threshold"; + } + leaf out-pkts-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-PKTS-1024-1518-OCTETS threshold"; + } + } + description + "set OUT-PKTS-1024-1518-OCTETS threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN_DROP_OTHER threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold "; + } + } + description + "set OUT-BCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold "; + } + } + description + "set OUT-MCAST threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold "; + } + } + description + "set OUT-OCTET threshold"; + } + leaf if-in-errors { + type uint32 { + range "1..4294967295" { + description + "IFIN_ERRORS threshold"; + } + } + description + "set IFIN_ERRORS threshold"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf ether-stat-multicast-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_MULTICAST_PKT threshold"; + } + } + description + "set ETHER_STAT_MULTICAST_PKT threshold"; + } + leaf ether-stat-broadcast-pkt { + type uint32 { + range "1..4294967295" { + description + " ETHER_STAT_BROADCAST_PKT threshold"; + } + } + description + "set ETHER_STAT_BROADCAST_PKT threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_BYTES threshold"; + } + } + description + "set IN_GOOD_BYTES threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_PKTS threshold"; + } + } + description + "set IN_GOOD_PKTS threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set OUT_GOOD_BYTES threshold"; + } + } + description + "set OUT_GOOD_BYTES threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set GOOD_PKTS threshold"; + } + } + description + "set THRESH_OUT_GOOD_PKTS threshold"; + } + leaf rx-util { + type uint32 { + range "1..10000" { + description + "set RX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set RX_UTIL threshold(in units of 0.1%)"; + } + leaf tx-util { + type uint32 { + range "1..10000" { + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set TX_UTIL threshold(in units of 0.1%)"; + } + leaf ether-stat-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_UNDERSIZED_PKT threshold"; + } + } + description + "set ETHER_STAT_UNDERSIZED_PKT threshold"; + } + leaf tx-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_UNDERSIZED_PKT threshold"; + } + } + description + "set TX_UNDERSIZED_PKT threshold"; + } + leaf tx-oversized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_OVERSIZED_PKT threshold"; + } + } + description + "set TX_OVERSIZED_PKT threshold"; + } + leaf tx-fragments { + type uint32 { + range "1..4294967295" { + description + "TX_FRAGMENTS threshold"; + } + } + description + "set TX_FRAGMENTS threshold"; + } + leaf tx-jabber { + type uint32 { + range "1..4294967295" { + description + "TX_JABBER threshold"; + } + } + description + "set TX_JABBER threshold"; + } + leaf tx-bad-fcs { + type uint32 { + range "1..4294967295" { + description + "TX_BAD_FCS threshold"; + } + } + description + "set TX_BAD_FCS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-util { + description + "set rx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-util { + description + "set tx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container stat-pkt { + description + "set stat-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container octet-stat { + description + "set octet-stat TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container oversize-pkt { + description + "set oversize-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container long-frame { + description + "set long-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container jabber-stats { + description + "set jabber-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _64-octets { + description + "set 64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _65-127-octets { + description + "set 65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _128-255-octets { + description + "set 128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _256-511-octets { + description + "set 256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _512-1023-octets { + description + "set 512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _1024-1518-octets { + description + "set 1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-errors { + description + "set ifIn_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifOut_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-multicast-pkt { + description + "set ether_stat_multicast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-broadcast-pkt { + description + "set ether_stat_broadcast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-undersized-pkt { + description + "set ether_stat_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-64-octets { + description + "set in-64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-65-127-octets { + description + "set in-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-128-255-octets { + description + "set in-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-256-511-octets { + description + "set in-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-512-1023-octets { + description + "set in-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-1024-1518-octets { + description + "set in-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkt-64-octet { + description + "set out-pkt-64-octet TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-65-127-octets { + description + "set out-pkts-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-128-255-octets { + description + "set out-pkts-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-256-511-octets { + description + "set out-pkts-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-512-1023-octets { + description + "set out-pkts-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-1024-1518-octets { + description + "set out-pkts-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-undersized-pkt { + description + "set tx_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-oversized-pkt { + description + "set tx_oversized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-fragments { + description + "set tx_fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-jabber { + description + "set tx_jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-bad-fcs { + description + "set tx_bad_fcs TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container fec { + description + "Configure fec performance monitoring"; + container threshold { + description + "Configure fec threshold"; + leaf ec-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ec-words threshold "; + } + } + description + "set EC-Words threshold"; + } + leaf uc-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "uc-words threshold "; + } + } + description + "set UC-WORDS threshold"; + } + container pre-fec-ber { + description + "Set PRE-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber min threshold "; + } + } + description + "set pre-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber max threshold "; + } + } + description + "set pre-fec-ber max threshold"; + } + } + container post-fec-ber { + description + "Set POST-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber min threshold "; + } + } + description + "set post-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber max threshold "; + } + } + description + "set post-fec-ber max threshold"; + } + } + } + container report { + description + "set fec TCA reporting status"; + container uc-words { + description + "set uc-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ec-words { + description + "set ec-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container pre-fec-ber { + description + "set PRE FEC BER TCA reporting status"; + container max-tca { + description + "set PRE FEC BER max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container min-tca { + description + "set PRE FEC BER min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container post-fec-ber { + description + "set POST FEC BER TCA reporting status"; + container max-tca { + description + "set POST FEC BER max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container min-tca { + description + "set POST FEC BER min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container pcs { + description + "configure pcs performance monitoring"; + container threshold { + description + "Configure threshold on pcs parameters"; + leaf bip { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "BIP threshold range <1-18446744073709551615>"; + } + } + description + "set BIP threshold"; + } + leaf frm-err { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "FRM-ERR threshold range <1-18446744073709551615>"; + } + } + description + "set FRM-ERR threshold"; + } + leaf bad-sh { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Bad-sh threshold range <1-18446744073709551615>"; + } + } + description + "set Bad-sh threshold"; + } + leaf es { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Es threshold range <0-30>"; + } + } + description + "set Es threshold"; + } + leaf ses { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Ses threshold range <0-30>"; + } + } + description + "set Ses threshold"; + } + leaf uas { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Uas threshold range <0-30>"; + } + } + description + "set Uas threshold"; + } + leaf es-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Es-fe threshold range <0-30>"; + } + } + description + "set Es-fe threshold"; + } + leaf ses-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Ses-fe threshold range <0-30>"; + } + } + description + "set Ses-fe threshold"; + } + leaf uas-fe { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Uas-fe threshold range <0-30>"; + } + } + description + "set Uas-fe threshold"; + } + } + container report { + description + "set pcs TCA reporting status"; + container bip { + description + "set bip TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container frm-err { + description + "set frm-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bad-sh { + description + "set bad-sh TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + container macsec-secy-tx { + description + "Configure pm parameters of macsec-secy-tx"; + container threshold { + description + "Configure threshold on macsec-secy-tx parameters"; + leaf out-pkts-protected { + type uint32 { + range "1..4294967295" { + description + "OutPktsProtected threshold range"; + } + } + description + "Set Threshold for OutPktsProtected"; + } + leaf out-pkts-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutPktsEncrypted threshold range"; + } + } + description + "Set Threshold for OutPktsEncrypted"; + } + leaf out-octets-protected { + type uint32 { + range "1..4294967295" { + description + "OutOctetsProtected threshold range"; + } + } + description + "Set Threshold for OutOctetsProtected"; + } + leaf out-octets-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutOctetsEncrypted threshold range"; + } + } + description + "Set Threshold for OutOctetsEncrypted"; + } + leaf out-pkts-too-long { + type uint32 { + range "1..4294967295" { + description + "OutPktsTooLong threshold range"; + } + } + description + "Set Threshold for OutPktsTooLong"; + } + } + container report { + description + "Configure Report for macsec-secy-tx Parameters"; + container out-pkts-protected { + description + "set OutPktsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-encrypted { + description + "set OutPktsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-protected { + description + "set OutOctetsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-encrypted { + description + "set OutOctetsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-too-long { + description + "set OutPktsTooLong TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-secy-rx { + description + "Configure pm parameters of macsec-secy-rx"; + container threshold { + description + "Configure threshold on macsec-secy-rx parameters"; + leaf in-pkts-unchecked { + type uint32 { + range "1..4294967295" { + description + "InPktsUnchecked threshold range"; + } + } + description + "Set Threshold for InPktsUnchecked"; + } + leaf in-pkts-delayed { + type uint32 { + range "1..4294967295" { + description + "InPktsDelayed threshold range"; + } + } + description + "Set Threshold for InPktsDelayed"; + } + leaf in-pkts-late { + type uint32 { + range "1..4294967295" { + description + "InPktsLate threshold range"; + } + } + description + "Set Threshold for InPktsLate"; + } + leaf in-pkts-ok { + type uint32 { + range "1..4294967295" { + description + "InPktsOK threshold range"; + } + } + description + "Set Threshold for InPktsOK"; + } + leaf in-pkts-invalid { + type uint32 { + range "1..4294967295" { + description + "InPktsInvalid threshold range"; + } + } + description + "Set Threshold for InPktsInvalid"; + } + leaf in-pkts-not-valid { + type uint32 { + range "1..4294967295" { + description + "InPktsNotValid threshold range"; + } + } + description + "Set Threshold for InPktsNotValid"; + } + leaf in-pkts-not-using-sa { + type uint32 { + range "1..4294967295" { + description + "InPktsNotUsingSA threshold range"; + } + } + description + "Set Threshold for InPktsNotUsingSA"; + } + leaf in-pkts-unused-sa { + type uint32 { + range "1..4294967295" { + description + "InPktsUnusedSA threshold range"; + } + } + description + "Set Threshold for InPktsUnusedSA"; + } + leaf in-pkts-untagged-hit { + type uint32 { + range "1..4294967295" { + description + "InPktsUntaggedHit threshold range"; + } + } + description + "Set Threshold for InPktsUntaggedHit"; + } + leaf in-octets-validated { + type uint32 { + range "1..4294967295" { + description + "InOctetsValidated threshold range"; + } + } + description + "Set Threshold for InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint32 { + range "1..4294967295" { + description + "InOctetsDecrypted threshold range"; + } + } + description + "Set Threshold for InOctetsDecrypted"; + } + } + container report { + description + "Configure Report for macsec-secy-rx Parameters"; + container in-pkts-unchecked { + description + "set InPktsUnchecked TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-delayed { + description + "set InPktsDelayed TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-late { + description + "set InPktsLate TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-ok { + description + "set InPktsOK TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-invalid { + description + "set InPktsInvalid TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-not-valid { + description + "set InPktsNotValid TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-not-using-sa { + description + "set InPktsNotUsingSA TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-unused-sa { + description + "set InPktsUnusedSA TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-untagged-hit { + description + "set InPktsUntaggedHit TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-validated { + description + "set InOctetsValidated TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-decrypted { + description + "set InOctetsDecrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-secy-if { + description + "Configure pm parameters of macsec-secy-if"; + container threshold { + description + "Configure threshold on macsec-secy-if parameters"; + leaf in-pkts-untagged { + type uint32 { + range "1..4294967295" { + description + "InPktsUntagged threshold range"; + } + } + description + "Set Threshold for InPktsUntagged"; + } + leaf in-pkts-no-tag { + type uint32 { + range "1..4294967295" { + description + "InPktsNoTag threshold range"; + } + } + description + "Set Threshold for InPktsNoTag"; + } + leaf in-pkts-bad-tag { + type uint32 { + range "1..4294967295" { + description + "InPktsBadTag threshold range"; + } + } + description + "Set Threshold for InPktsBadTag"; + } + leaf in-pkts-unknown-sci { + type uint32 { + range "1..4294967295" { + description + "InPktsUnknownSCI threshold range"; + } + } + description + "Set Threshold for InPktsUnknownSCI"; + } + leaf in-pkts-no-sci { + type uint32 { + range "1..4294967295" { + description + "InPktsNoSCI threshold range"; + } + } + description + "Set Threshold for InPktsNoSCI"; + } + leaf in-pkts-overrun { + type uint32 { + range "1..4294967295" { + description + "InPktsOverrun threshold range"; + } + } + description + "Set Threshold for InPktsOverrun"; + } + leaf in-octets-validated { + type uint32 { + range "1..4294967295" { + description + "InOctetsValidated threshold range"; + } + } + description + "Set Threshold for InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint32 { + range "1..4294967295" { + description + "InOctetsDecrypted threshold range"; + } + } + description + "Set Threshold for InOctetsDecrypted"; + } + leaf out-pkts-untagged { + type uint32 { + range "1..4294967295" { + description + "OutPktsUntagged threshold range"; + } + } + description + "Set Threshold for OutPktsUntagged "; + } + leaf out-pkts-too-long { + type uint32 { + range "1..4294967295" { + description + "OutPktsTooLong threshold range"; + } + } + description + "Set Threshold for OutPktsTooLong"; + } + leaf out-octets-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutOctetsEncrypted threshold range"; + } + } + description + "Set Threshold for OutOctetsEncrypted"; + } + leaf out-octets-protected { + type uint32 { + range "1..4294967295" { + description + "OutOctetsProtected threshold range"; + } + } + description + "Set Threshold for OutOctetsProtected"; + } + } + container report { + description + "Configure Report for macsec-secy-if Parameters"; + container in-pkts-untagged { + description + "set InPktsUntagged TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-no-tag { + description + "set InPktsNoTag TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-bad-tag { + description + "set InPktsBadTag TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-unknown-sci { + description + "set InPktsUnknownSCI TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-no-sci { + description + "set InPktsNoSCI TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-overrun { + description + "set InPktsOverrun TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-validated { + description + "set InOctetsValidated TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-decrypted { + description + "set InOctetsDecrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-untagged { + description + "set OutPktsUntagged TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-too-long { + description + "set OutPktsTooLong TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-protected { + description + "set OutOctetsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-encrypted { + description + "set OutOctetsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf stat-pkt { + type uint32 { + range "1..4294967295" { + description + "PKT-STAT threshold "; + } + } + description + "set PKT-STAT threshold"; + } + leaf octet-stat { + type uint32 { + range "1..4294967295" { + description + "OCTET-STAT threshold "; + } + } + description + "set OCTET-STAT threshold"; + } + leaf oversize-pkt { + type uint32 { + range "1..4294967295" { + description + "OVERSIZE-PKT threshold"; + } + } + description + "set OVERSIZE-PKT threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf long-frame { + type uint32 { + range "1..4294967295" { + description + "LONG-FRAMES threshold "; + } + } + description + "set LONG-FRAMES threshold"; + } + leaf jabber-stats { + type uint32 { + range "1..4294967295" { + description + "JABBER-STATS threshold "; + } + } + description + "set JABBER-STATS threshold"; + } + leaf sixty-four-octets { + type uint32 { + range "1..4294967295" { + description + "64-OCTET threshold"; + } + } + description + "set 64-OCTET threshold"; + } + leaf six5-127-octets { + type uint32 { + range "1..4294967295" { + description + "65-127-OCTET threshold"; + } + } + description + "set 65-127-OCTET threshold"; + } + leaf one-hundred-twenty-eight-255-octets { + type uint32 { + range "1..4294967295" { + description + "128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf two-hundred-fifty-six-511-octets { + type uint32 { + range "1..4294967295" { + description + "256-511-OCTET threshold "; + } + } + description + "set 256-511-OCTET threshold"; + } + leaf five-hundred-twelve-1023-octets { + type uint32 { + range "1..4294967295" { + description + "512-1023-OCTET threshold"; + } + } + description + "set 512-1023-OCTET threshold"; + } + leaf one-thousand-twenty-four-1518-octets { + type uint32 { + range "1..4294967295" { + description + "1024-1518-OCTET threshold"; + } + } + description + "set 1024-1518-OCTET threshold"; + } + leaf in-64-octets { + type uint32 { + range "1..4294967295" { + description + "IN-64-OCTET threshold"; + } + } + description + "set IN-64-OCTET threshold"; + } + leaf in-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "IN-65-127-OCTET threshold"; + } + } + description + "set IN-65-127-OCTET threshold"; + } + leaf in-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-128-255-OCTET threshold "; + } + } + description + "set IN-128-255-OCTET threshold"; + } + leaf in-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-256-511-OCTET threshold "; + } + } + description + "set IN-256-511-OCTET threshold"; + } + leaf in-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-512-1023-OCTET threshold"; + } + } + description + "set IN-512-1023-OCTET threshold"; + } + leaf in-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-1024-1518-OCTET threshold"; + } + } + description + "set IN-1024-1518-OCTET threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN_DROP_OTHER threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold "; + } + } + description + "set OUT-BCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold "; + } + } + description + "set OUT-MCAST threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold "; + } + } + description + "set OUT-OCTET threshold"; + } + leaf if-in-errors { + type uint32 { + range "1..4294967295" { + description + "IFIN_ERRORS threshold"; + } + } + description + "set IFIN_ERRORS threshold"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf ether-stat-multicast-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_MULTICAST_PKT threshold"; + } + } + description + "set ETHER_STAT_MULTICAST_PKT threshold"; + } + leaf ether-stat-broadcast-pkt { + type uint32 { + range "1..4294967295" { + description + " ETHER_STAT_BROADCAST_PKT threshold"; + } + } + description + "set ETHER_STAT_BROADCAST_PKT threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_BYTES threshold"; + } + } + description + "set IN_GOOD_BYTES threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_PKTS threshold"; + } + } + description + "set IN_GOOD_PKTS threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set OUT_GOOD_BYTES threshold"; + } + } + description + "set OUT_GOOD_BYTES threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set GOOD_PKTS threshold"; + } + } + description + "set THRESH_OUT_GOOD_PKTS threshold"; + } + leaf rx-util { + type uint32 { + range "1..10000" { + description + "set RX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set RX_UTIL threshold(in units of 0.1%)"; + } + leaf tx-util { + type uint32 { + range "1..10000" { + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set TX_UTIL threshold(in units of 0.1%)"; + } + leaf ether-stat-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_UNDERSIZED_PKT threshold"; + } + } + description + "set ETHER_STAT_UNDERSIZED_PKT threshold"; + } + leaf tx-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_UNDERSIZED_PKT threshold"; + } + } + description + "set TX_UNDERSIZED_PKT threshold"; + } + leaf tx-oversized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_OVERSIZED_PKT threshold"; + } + } + description + "set TX_OVERSIZED_PKT threshold"; + } + leaf tx-fragments { + type uint32 { + range "1..4294967295" { + description + "TX_FRAGMENTS threshold"; + } + } + description + "set TX_FRAGMENTS threshold"; + } + leaf tx-jabber { + type uint32 { + range "1..4294967295" { + description + "TX_JABBER threshold"; + } + } + description + "set TX_JABBER threshold"; + } + leaf tx-bad-fcs { + type uint32 { + range "1..4294967295" { + description + "TX_BAD_FCS threshold"; + } + } + description + "set TX_BAD_FCS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-util { + description + "set rx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-util { + description + "set tx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container stat-pkt { + description + "set stat-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container octet-stat { + description + "set octet-stat TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container oversize-pkt { + description + "set oversize-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container long-frame { + description + "set long-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container jabber-stats { + description + "set jabber-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _64-octets { + description + "set 64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _65-127-octets { + description + "set 65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _128-255-octets { + description + "set 128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _256-511-octets { + description + "set 256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _512-1023-octets { + description + "set 512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _1024-1518-octets { + description + "set 1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-errors { + description + "set ifIn_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifOut_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-multicast-pkt { + description + "set ether_stat_multicast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-broadcast-pkt { + description + "set ether_stat_broadcast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-undersized-pkt { + description + "set ether_stat_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-64-octets { + description + "set in-64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-65-127-octets { + description + "set in-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-128-255-octets { + description + "set in-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-256-511-octets { + description + "set in-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-512-1023-octets { + description + "set in-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-1024-1518-octets { + description + "set in-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-undersized-pkt { + description + "set tx_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-oversized-pkt { + description + "set tx_oversized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-fragments { + description + "set tx_fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-jabber { + description + "set tx_jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-bad-fcs { + description + "set tx_bad_fcs TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hr { + description + "Configure pm parameters of 24 hrs interval"; + container macsec-secy-tx { + description + "Configure pm parameters of macsec-secy-tx"; + container threshold { + description + "Configure threshold on macsec-secy-tx parameters"; + leaf out-pkts-protected { + type uint32 { + range "1..4294967295" { + description + "OutPktsProtected threshold range"; + } + } + description + "Set Threshold for OutPktsProtected "; + } + leaf out-pkts-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutPktsEncrypted threshold range"; + } + } + description + "Set Threshold for OutPktsEncrypted"; + } + leaf out-octets-protected { + type uint32 { + range "1..4294967295" { + description + "OutOctetsProtected threshold range"; + } + } + description + "Set Threshold for OutOctetsProtected"; + } + leaf out-octets-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutOctetsEncrypted threshold range"; + } + } + description + "Set Threshold for OutOctetsEncrypted"; + } + leaf out-pkts-too-long { + type uint32 { + range "1..4294967295" { + description + "OutPktsTooLong threshold range"; + } + } + description + "Set Threshold for OutPktsTooLong"; + } + } + container report { + description + "Configure Report for macsec-secy-tx Parameters"; + container out-pkts-protected { + description + "set OutPktsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-encrypted { + description + "set OutPktsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-protected { + description + "set OutOctetsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-encrypted { + description + "set OutOctetsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-too-long { + description + "set OutPktsTooLong TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-secy-rx { + description + "Configure pm parameters of macsec-secy-rx"; + container threshold { + description + "Configure threshold on macsec-secy-rx parameters"; + leaf in-pkts-unchecked { + type uint32 { + range "1..4294967295" { + description + "InPktsUnchecked threshold range"; + } + } + description + "Set Threshold for InPktsUnchecked"; + } + leaf in-pkts-delayed { + type uint32 { + range "1..4294967295" { + description + "InPktsDelayed threshold range"; + } + } + description + "Set Threshold for InPktsDelayed"; + } + leaf in-pkts-late { + type uint32 { + range "1..4294967295" { + description + "InPktsLate threshold range"; + } + } + description + "Set Threshold for InPktsLate"; + } + leaf in-pkts-ok { + type uint32 { + range "1..4294967295" { + description + "InPktsOK threshold range"; + } + } + description + "Set Threshold for InPktsOK"; + } + leaf in-pkts-invalid { + type uint32 { + range "1..4294967295" { + description + "InPktsInvalid threshold range"; + } + } + description + "Set Threshold for InPktsInvalid"; + } + leaf in-pkts-not-valid { + type uint32 { + range "1..4294967295" { + description + "InPktsNotValid threshold range"; + } + } + description + "Set Threshold for InPktsNotValid"; + } + leaf in-pkts-not-using-sa { + type uint32 { + range "1..4294967295" { + description + "InPktsNotUsingSA threshold range"; + } + } + description + "Set Threshold for InPktsNotUsingSA"; + } + leaf in-pkts-unused-sa { + type uint32 { + range "1..4294967295" { + description + "InPktsUnusedSA threshold range"; + } + } + description + "Set Threshold for InPktsUnusedSA"; + } + leaf in-pkts-untagged-hit { + type uint32 { + range "1..4294967295" { + description + "InPktsUntaggedHit threshold range"; + } + } + description + "Set Threshold for InPktsUntaggedHit"; + } + leaf in-octets-validated { + type uint32 { + range "1..4294967295" { + description + "InOctetsValidated threshold range"; + } + } + description + "Set Threshold for InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint32 { + range "1..4294967295" { + description + "InOctetsDecrypted threshold range"; + } + } + description + "Set Threshold for InOctetsDecrypted"; + } + } + container report { + description + "Configure Report for macsec-secy-rx Parameters"; + container in-pkts-unchecked { + description + "set InPktsUnchecked TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-delayed { + description + "set InPktsDelayed TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-late { + description + "set InPktsLate TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-ok { + description + "set InPktsOK TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-invalid { + description + "set InPktsInvalid TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-not-valid { + description + "set InPktsNotValid TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-not-using-sa { + description + "set InPktsNotUsingSA TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-unused-sa { + description + "set InPktsUnusedSA TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-untagged-hit { + description + "set InPktsUntaggedHit TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-validated { + description + "set InOctetsValidated TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-decrypted { + description + "set InOctetsDecrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-secy-if { + description + "Configure pm parameters of macsec-secy-if"; + container threshold { + description + "Configure threshold on macsec-secy-if parameters"; + leaf in-pkts-untagged { + type uint32 { + range "1..4294967295" { + description + "InPktsUntagged threshold range"; + } + } + description + "Set Threshold for InPktsUntagged"; + } + leaf in-pkts-no-tag { + type uint32 { + range "1..4294967295" { + description + "InPktsNoTag threshold range"; + } + } + description + "Set Threshold for InPktsNoTag"; + } + leaf in-pkts-bad-tag { + type uint32 { + range "1..4294967295" { + description + "InPktsBadTag threshold range"; + } + } + description + "Set Threshold for InPktsBadTag"; + } + leaf in-pkts-unknown-sci { + type uint32 { + range "1..4294967295" { + description + "InPktsUnknownSCI threshold range"; + } + } + description + "Set Threshold for InPktsUnknownSCI"; + } + leaf in-pkts-no-sci { + type uint32 { + range "1..4294967295" { + description + "InPktsNoSCI threshold range"; + } + } + description + "Set Threshold for InPktsNoSCI"; + } + leaf in-pkts-overrun { + type uint32 { + range "1..4294967295" { + description + "InPktsOverrun threshold range"; + } + } + description + "Set Threshold for InPktsOverrun"; + } + leaf in-octets-validated { + type uint32 { + range "1..4294967295" { + description + "InOctetsValidated threshold range"; + } + } + description + "Set Threshold for InOctetsValidated"; + } + leaf in-octets-decrypted { + type uint32 { + range "1..4294967295" { + description + "InOctetsDecrypted threshold range"; + } + } + description + "Set Threshold for InOctetsDecrypted"; + } + leaf out-pkts-untagged { + type uint32 { + range "1..4294967295" { + description + "OutPktsUntagged threshold range"; + } + } + description + "Set Threshold for OutPktsUntagged "; + } + leaf out-pkts-too-long { + type uint32 { + range "1..4294967295" { + description + "OutPktsTooLong threshold range"; + } + } + description + "Set Threshold for OutPktsTooLong"; + } + leaf out-octets-encrypted { + type uint32 { + range "1..4294967295" { + description + "OutOctetsEncrypted threshold range"; + } + } + description + "Set Threshold for OutOctetsEncrypted"; + } + leaf out-octets-protected { + type uint32 { + range "1..4294967295" { + description + "OutOctetsProtected threshold range"; + } + } + description + "Set Threshold for OutOctetsProtected"; + } + } + container report { + description + "Configure Report for macsec-secy-if Parameters"; + container in-pkts-untagged { + description + "set InPktsUntagged TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-no-tag { + description + "set InPktsNoTag TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-bad-tag { + description + "set InPktsBadTag TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-unknown-sci { + description + "set InPktsUnknownSCI TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-no-sci { + description + "set InPktsNoSCI TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-pkts-overrun { + description + "set InPktsOverrun TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-validated { + description + "set InOctetsValidated TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-octets-decrypted { + description + "set InOctetsDecrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-untagged { + description + "set OutPktsUntagged TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-pkts-too-long { + description + "set OutPktsTooLong TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-protected { + description + "set OutOctetsProtected TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets-encrypted { + description + "set OutOctetsEncrypted TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container macsec-ether { + description + "configure ether performance monitoring"; + container threshold { + description + "Configure threshold on ether parameters"; + leaf rx-pkt { + type uint32 { + range "1..4294967295" { + description + "RX-PKT threshold "; + } + } + description + "set RX-PKT threshold"; + } + leaf stat-pkt { + type uint32 { + range "1..4294967295" { + description + "STAT-PKT threshold "; + } + } + description + "set STAT-PKT threshold"; + } + leaf octet-stat { + type uint32 { + range "1..4294967295" { + description + "OCTET-STAT threshold "; + } + } + description + "set OCTET-STAT threshold"; + } + leaf oversize-pkt { + type uint32 { + range "1..4294967295" { + description + "OVERSIZEPKT-STATS threshold"; + } + } + description + "set OVERSIZE-PKT threshold"; + } + leaf fcs-err { + type uint32 { + range "1..4294967295" { + description + "FCS-ERR threshold"; + } + } + description + "set FCS-ERR threshold"; + } + leaf long-frame { + type uint32 { + range "1..4294967295" { + description + "LONG-FRAMES threshold "; + } + } + description + "set LONG-FRAMES threshold"; + } + leaf jabber-stats { + type uint32 { + range "1..4294967295" { + description + "JABBER-STATS threshold "; + } + } + description + "set JABBER-STATS threshold"; + } + leaf sixty-four-octets { + type uint32 { + range "1..4294967295" { + description + "64-OCTET threshold"; + } + } + description + "set 64-OCTET threshold"; + } + leaf six5-127-octets { + type uint32 { + range "1..4294967295" { + description + "65-127-OCTET threshold"; + } + } + description + "set 65-127-OCTET threshold"; + } + leaf one-hundred-twenty-eight-255-octets { + type uint32 { + range "1..4294967295" { + description + "128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf two-hundred-fifty-six-511-octets { + type uint32 { + range "1..4294967295" { + description + "256-511-OCTET threshold "; + } + } + description + "set 256-511-OCTET threshold"; + } + leaf five-hundred-twelve-1023-octets { + type uint32 { + range "1..4294967295" { + description + "512-1023-OCTET threshold"; + } + } + description + "set 512-1023-OCTET threshold"; + } + leaf one-thousand-twenty-four-1518-octets { + type uint32 { + range "1..4294967295" { + description + "1024-1518-OCTET threshold"; + } + } + description + "set 1024-1518-OCTET threshold"; + } + leaf in-64-octets { + type uint32 { + range "1..4294967295" { + description + "IN-64-OCTET threshold"; + } + } + description + "set IN-64-OCTET threshold"; + } + leaf in-65-127-octets { + type uint32 { + range "1..4294967295" { + description + "IN-65-127-OCTET threshold"; + } + } + description + "set IN-65-127-OCTET threshold"; + } + leaf in-128-255-octets { + type uint32 { + range "1..4294967295" { + description + "IN-128-255-OCTET threshold "; + } + } + description + "set 128-255-OCTET threshold"; + } + leaf in-256-511-octets { + type uint32 { + range "1..4294967295" { + description + "IN-256-511-OCTET threshold "; + } + } + description + "set IN-256-511-OCTET threshold"; + } + leaf in-512-1023-octets { + type uint32 { + range "1..4294967295" { + description + "IN-512-1023-OCTET threshold"; + } + } + description + "set IN-512-1023-OCTET threshold"; + } + leaf in-1024-1518-octets { + type uint32 { + range "1..4294967295" { + description + "IN-1024-1518-OCTET threshold"; + } + } + description + "set IN-1024-1518-OCTET threshold"; + } + leaf in-drop-other { + type uint32 { + range "1..4294967295" { + description + "IN-DROP-OTHER threshold"; + } + } + description + "set IN_DROP_OTHER threshold"; + } + leaf in-ucast { + type uint32 { + range "1..4294967295" { + description + "IN-UCAST threshold"; + } + } + description + "set IN-UCAST threshold"; + } + leaf in-mcast { + type uint32 { + range "1..4294967295" { + description + "IN-MCAST threshold"; + } + } + description + "set IN-MCAST threshold"; + } + leaf in-bcast { + type uint32 { + range "1..4294967295" { + description + "IN-BCAST threshold"; + } + } + description + "set IN-BCAST threshold"; + } + leaf in-error-fragments { + type uint32 { + range "1..4294967295" { + description + "IN-ERROR-FRAGMENTS threshold"; + } + } + description + "set IN-ERROR-FRAGMENTS threshold"; + } + leaf out-ucast { + type uint32 { + range "1..4294967295" { + description + "OUT-UCAST threshold"; + } + } + description + "set OUT-UCAST threshold"; + } + leaf out-bcast { + type uint32 { + range "1..4294967295" { + description + "OUT-BCAST threshold )"; + } + } + description + "set OUT-BCAST threshold"; + } + leaf out-mcast { + type uint32 { + range "1..4294967295" { + description + "OUT-MCAST threshold (seconds)"; + } + } + description + "set OUT-MCAST threshold"; + } + leaf tx-pkt { + type uint32 { + range "1..4294967295" { + description + "TX-PKT threshold"; + } + } + description + "set TX-PKT threshold"; + } + leaf out-octets { + type uint32 { + range "1..4294967295" { + description + "OUT-OCTET threshold (seconds)"; + } + } + description + "set OUT-OCTET threshold"; + } + leaf if-in-errors { + type uint32 { + range "1..4294967295" { + description + "IFIN_ERRORS threshold"; + } + } + description + "set IFIN_ERRORS threshold"; + } + leaf in-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_BYTES threshold"; + } + } + description + "set IN_GOOD_BYTES threshold"; + } + leaf in-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set IN_GOOD_PKTS threshold"; + } + } + description + "set IN_GOOD_PKTS threshold"; + } + leaf out-good-bytes { + type uint32 { + range "1..4294967295" { + description + "set OUT_GOOD_BYTES threshold"; + } + } + description + "set OUT_GOOD_BYTES threshold"; + } + leaf out-good-pkts { + type uint32 { + range "1..4294967295" { + description + "set GOOD_PKTS threshold"; + } + } + description + "set THRESH_OUT_GOOD_PKTS threshold"; + } + leaf rx-util { + type uint32 { + range "1..10000" { + description + "set RX_UTIL threshold (in units of 0.01%)"; + } + } + description + "set THRESH_RX_UTIL threshold(in units of 0.01%)"; + } + leaf tx-util { + type uint32 { + range "1..10000" { + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + } + description + "set TX_UTIL threshold(in units of 0.01%)"; + } + leaf if-in-octets { + type uint32 { + range "1..4294967295" { + description + "IFIN_OCTETS threshold"; + } + } + description + "set IFIN_OCTETS threshold"; + } + leaf ether-stat-multicast-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_MULTICAST_PKT threshold"; + } + } + description + "set ETHER_STAT_MULTICAST_PKT threshold"; + } + leaf ether-stat-broadcast-pkt { + type uint32 { + range "1..4294967295" { + description + " ETHER_STAT_BROADCAST_PKT threshold"; + } + } + description + " set ETHER_STAT_BROADCAST_PKT threshold"; + } + leaf ether-stat-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "ETHER_STAT_UNDERSIZED_PKT threshold"; + } + } + description + "set ETHER_STAT_UNDERSIZED_PKT threshold"; + } + leaf tx-undersized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_UNDERSIZED_PKT threshold"; + } + } + description + "set TX_UNDERSIZED_PKT threshold"; + } + leaf tx-oversized-pkt { + type uint32 { + range "1..4294967295" { + description + "TX_OVERSIZED_PKT threshold"; + } + } + description + "set TX_OVERSIZED_PKT threshold"; + } + leaf tx-fragments { + type uint32 { + range "1..4294967295" { + description + "TX_FRAGMENTS threshold"; + } + } + description + "set TX_FRAGMENTS threshold"; + } + leaf tx-jabber { + type uint32 { + range "1..4294967295" { + description + "TX_JABBER threshold"; + } + } + description + "set TX_JABBER threshold"; + } + leaf tx-bad-fcs { + type uint32 { + range "1..4294967295" { + description + "TX_BAD_FCS threshold"; + } + } + description + "set TX_BAD_FCS threshold"; + } + } + container report { + description + "set ether TCA reporting status"; + container rx-pkt { + description + "set rx-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-util { + description + "set rx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-util { + description + "set tx-util TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container stat-pkt { + description + "set stat-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container octet-stat { + description + "set octet-stat TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container oversize-pkt { + description + "set oversize-pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fcs-err { + description + "set fcs-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container long-frame { + description + "set long-frame TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container jabber-stats { + description + "set jabber-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _64-octets { + description + "set 64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _65-127-octets { + description + "set 65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _128-255-octets { + description + "set 128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _256-511-octets { + description + "set 256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _512-1023-octets { + description + "set 512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container _1024-1518-octets { + description + "set 1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-ucast { + description + "set in-Ucast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-mcast { + description + "set in-Mcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-bcast { + description + "set in-Bcast TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-ucast { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-mcast { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-bcast { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-pkt { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-errors { + description + "set ifIn_errors TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container if-in-octets { + description + "set ifIn_Octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-multicast-pkt { + description + "set ether_stat_multicast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-broadcast-pkt { + description + "set ether_stat_broadcast_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ether-stat-undersized-pkt { + description + "set ether_stat_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-octets { + description + "set out-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-bytes { + description + "set in-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-good-pkts { + description + "set in-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-drop-other { + description + "set in-drop-other TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-bytes { + description + "set out-good-bytes TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-good-pkts { + description + "set out-good-pkts TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-error-fragments { + description + "set in-error-fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-64-octets { + description + "set in-64-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-65-127-octets { + description + "set in-65-127-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-128-255-octets { + description + "set in-128-255-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-256-511-octets { + description + "set in-256-511-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-512-1023-octets { + description + "set in-512-1023-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-1024-1518-octets { + description + "set in-1024-1518-octets TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-undersized-pkt { + description + "set tx_undersized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-oversized-pkt { + description + "set tx_oversized_pkt TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-fragments { + description + "set tx_fragments TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-jabber { + description + "set tx_jabber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container tx-bad-fcs { + description + "set tx_bad_fcs TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-fc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-fc-cfg.yang new file mode 100644 index 000000000..10ea4b19f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-fc-cfg.yang @@ -0,0 +1,301 @@ +module Cisco-IOS-XR-um-cont-fc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-fc-cfg"; + prefix um-cont-fc-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a2; + } + 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 cont-fc package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container perf-mon { + description + "Performance Monitoring"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + } + leaf loopback { + type enumeration { + enum "line" { + value 1; + description + "Enable line loopback"; + } + enum "internal" { + value 2; + description + "Enable internal loopback"; + } + } + description + "Set the loopback mode on a controller"; + } + container laser-squelch { + presence "Indicates a laser-squelch node is configured."; + description + "Enable Fibre Channel controller laser-squelch"; + } + container holdoff-time { + description + "Holdoff time configuration"; + leaf trunk-fault { + type uint32 { + range "0..3000" { + description + "Time in ms"; + } + } + description + "Holdoff time trunk fault configuration"; + } + } + container threshold { + description + "Configure BER threshold values"; + leaf sd-ber { + type uint32 { + range "6..12" { + description + "Bit error rate (10 to the minus n)"; + } + } + description + "Set Signal Degrade BER threshold"; + } + leaf sf-ber { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) "; + } + } + description + "Set Signal Fail BER threshold"; + } + } + leaf fec { + type enumeration { + enum "none" { + value 1; + description + "Disable any FEC enabled on the controller"; + } + enum "standard" { + value 2; + description + "Set the standard FEC"; + } + } + description + "Set the Forward Error Correction mode on a controller"; + } + container prbs { + presence "Indicates a prbs node is configured."; + description + "Configure Pseudo Random Binary Sequence test"; + leaf mode { + type enumeration { + enum "source" { + value 1; + description + "source mode"; + } + enum "sink" { + value 2; + description + "sink mode"; + } + enum "source-sink" { + value 3; + description + "source-sink mode"; + } + } + must "../pattern"; + mandatory true; + description + "Configure PRBS mode"; + } + leaf pattern { + type enumeration { + enum "pn31" { + value 1; + description + "Configure PRBS pattern pn31"; + } + enum "pn23" { + value 2; + description + "Configure PRBS pattern pn23"; + } + enum "pn15" { + value 3; + description + "Configure PRBS pattern pn15"; + } + enum "pn11" { + value 4; + description + "Configure PRBS pattern pn11"; + } + enum "pn9" { + value 5; + description + "Configure PRBS pattern pn9"; + } + enum "pn7" { + value 6; + description + "Configure PRBS pattern pn7"; + } + enum "user-defined" { + value 7; + description + "Configure any 64-bit user defined pattern"; + } + } + must "../mode"; + mandatory true; + description + "Configure PRBS pattern"; + } + leaf framing { + type enumeration { + enum "framed" { + value 1; + description + "Framed PRBS"; + } + enum "unframed" { + value 2; + description + "Unframed PRBS"; + } + } + description + "Configure prbs framing type"; + } + leaf direction { + type enumeration { + enum "line" { + value 1; + description + "Run prbs towards line side"; + } + enum "system" { + value 2; + description + "Run prbs towards system side"; + } + } + description + "Configure prbs direction"; + } + leaf error-inject { + type enumeration { + enum "single" { + value 1; + description + "Inject error once"; + } + enum "continuous" { + value 2; + description + "Inject error continuously"; + } + } + description + "Inject errors in the PRBS pattern"; + } + leaf user-pattern { + type xr:Hex-long-integer; + description + "PRBS user defined pattern(64-bit hex value)"; + } + } + container extended-loopback { + description + "Configure Extended loopback (diagnostics)"; + container levels { + description + "Level at which to loopback"; + list level { + key "level-id"; + description + "Level at which to loopback"; + leaf level-id { + type uint32 { + range "1..3" { + description + ""; + } + } + description + "Level at which to loopback"; + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes configuration"; + uses CONT-BODY; + } + augment "/a2:snmp-server/a2:traps" { + description + "This augment extends snmp-server traps nodes configuration"; + container fibrechannel { + presence "Indicates a fibrechannel node is configured."; + description + "Enable SNMP Cisco fibrechannel traps"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-oc-pm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-oc-pm-cfg.yang new file mode 100644 index 000000000..dd35d19d3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-oc-pm-cfg.yang @@ -0,0 +1,637 @@ +module Cisco-IOS-XR-um-cont-oc-pm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-oc-pm-cfg"; + prefix um-cont-oc-pm-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-oc-pm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-06-11 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container pm { + when "../a1:controller-name[starts-with(text(),'OC')]" { + tailf:dependency "../a1:controller-name"; + } + description + "Configure pm parameters"; + container interval-15-min { + description + "Configure pm parameters of 15 minute interval"; + container ocn { + description + "configure ocn performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf cv-s { + type uint32 { + range "0..7967700" { + description + "CV-S threshold range"; + } + } + description + "set cv-s threshold"; + } + leaf es-s { + type uint32 { + range "0..900" { + description + "es-s threshold range"; + } + } + description + "set es-s threshold"; + } + leaf ses-s { + type uint32 { + range "0..900" { + description + "ses-s threshold range"; + } + } + description + "set ses-s threshold"; + } + leaf sefs-s { + type uint32 { + range "0..900" { + description + "sefs-s threshold range"; + } + } + description + "set sefs-s threshold"; + } + leaf cv-l-ne { + type uint32 { + range "0..8850600" { + description + "cv-l-ne threshold"; + } + } + description + "set cv-l-ne threshold"; + } + leaf es-l-ne { + type uint32 { + range "0..900" { + description + "es-l-ne threshold"; + } + } + description + "set es-l-ne threshold"; + } + leaf ses-l-ne { + type uint32 { + range "0..900" { + description + "ses-l-ne threshold range"; + } + } + description + "set ses-l-ne threshold"; + } + leaf uas-l-ne { + type uint32 { + range "0..900" { + description + "uas-l-ne threshold range"; + } + } + description + "set uas-l-ne threshold"; + } + leaf fc-l-ne { + type uint32 { + range "0..72" { + description + "fc-l-ne threshold range"; + } + } + description + "set fc-l-ne threshold"; + } + leaf cv-l-fe { + type uint32 { + range "0..8850600" { + description + "cv-l-fe threshold"; + } + } + description + "set cv-l-fe threshold"; + } + leaf es-l-fe { + type uint32 { + range "0..900" { + description + "es-l-fe threshold"; + } + } + description + "set es-l-fe threshold"; + } + leaf ses-l-fe { + type uint32 { + range "0..900" { + description + "ses-l-fe threshold range"; + } + } + description + "set ses-l-fe threshold"; + } + leaf uas-l-fe { + type uint32 { + range "0..900" { + description + "uas-l-fe threshold range"; + } + } + description + "set uas-l-fe threshold"; + } + leaf fc-l-fe { + type uint32 { + range "0..72" { + description + "fc-l-fe threshold range"; + } + } + description + "set fc-l-fe threshold"; + } + } + container report { + description + "set ocn TCA reporting status"; + container sefs-s { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-s { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-s { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-s { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-ne { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-ne { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-ne { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-ne { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-ne { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-fe { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-fe { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-fe { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-fe { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-fe { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hour { + description + "Configure pm parameters of 24 hour interval"; + container ocn { + description + "configure ocn performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf cv-s { + type uint32 { + range "0..764899200" { + description + "CV-S threshold range"; + } + } + description + "set cv-s threshold"; + } + leaf es-s { + type uint32 { + range "0..86400" { + description + "es-s threshold range"; + } + } + description + "set es-s threshold"; + } + leaf ses-s { + type uint32 { + range "0..86400" { + description + "ses-s threshold range"; + } + } + description + "set ses-s threshold"; + } + leaf sefs-s { + type uint32 { + range "0..86400" { + description + "sefs-s threshold range"; + } + } + description + "set sefs-s threshold"; + } + leaf cv-l-ne { + type uint32 { + range "0..849657600" { + description + "cv-l-ne threshold"; + } + } + description + "set cv-l-ne threshold"; + } + leaf es-l-ne { + type uint32 { + range "0..86400" { + description + "es-l-ne threshold"; + } + } + description + "set es-l-ne threshold"; + } + leaf ses-l-ne { + type uint32 { + range "0..86400" { + description + "ses-l-ne threshold range"; + } + } + description + "set ses-l-ne threshold"; + } + leaf uas-l-ne { + type uint32 { + range "0..86400" { + description + "uas-l-ne threshold range"; + } + } + description + "set uas-l-ne threshold"; + } + leaf fc-l-ne { + type uint32 { + range "0..6912" { + description + "fc-l-ne threshold range"; + } + } + description + "set fc-l-ne threshold"; + } + leaf cv-l-fe { + type uint32 { + range "0..849657600" { + description + "cv-l-fe threshold"; + } + } + description + "set cv-l-fe threshold"; + } + leaf es-l-fe { + type uint32 { + range "0..86400" { + description + "es-l-fe threshold"; + } + } + description + "set es-l-fe threshold"; + } + leaf ses-l-fe { + type uint32 { + range "0..86400" { + description + "ses-l-fe threshold range"; + } + } + description + "set ses-l-fe threshold"; + } + leaf uas-l-fe { + type uint32 { + range "0..86400" { + description + "uas-l-fe threshold range"; + } + } + description + "set uas-l-fe threshold"; + } + leaf fc-l-fe { + type uint32 { + range "0..6912" { + description + "fc-l-fe threshold range"; + } + } + description + "set fc-l-fe threshold"; + } + } + container report { + description + "set ocn TCA reporting status"; + container sefs-s { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-s { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-s { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-s { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-ne { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-ne { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-ne { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-ne { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-ne { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-fe { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-fe { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-fe { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-fe { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-fe { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-cfg.yang new file mode 100644 index 000000000..7ec83be80 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-cfg.yang @@ -0,0 +1,1178 @@ +module Cisco-IOS-XR-um-cont-odu-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-odu-cfg"; + prefix um-cont-odu-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-odu package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-05 { + description + "Updated lower-orders nodes + 2022-07-11 + Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-05-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature odu_config_supp_check { + description + "odu config supp check"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container perf-mon { + description + "Performance Monitoring"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable performance monitoring"; + } + } + container gcc1 { + presence "Indicates a gcc1 node is configured."; + description + "Configure General Communication Channel"; + } + container gcc2 { + presence "Indicates a gcc2 node is configured."; + description + "Configure General Communication Channel"; + } + container delay { + description + "Delay Measurement for ODU"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable delay measurement at ODU"; + } + } + container threshold { + description + "Configure threshold for Signal Failure and Signal Degrade"; + leaf sf { + type uint32 { + range "5..9" { + description + "Signal Failure Threshold(Range 1.0e-n)"; + } + } + description + "Configure SF(Signal Failure) Threshold"; + } + leaf sd { + type uint32 { + range "5..9" { + description + "Signal Degrade Threshold Value(Range 1.0e-n)"; + } + } + description + "Configure SD(Signal Degrade) Threshold "; + } + leaf pm-tca { + type uint32 { + range "3..9" { + description + " Threshold crossing alert Value(Range 10e-n, Default 6)"; + } + } + description + "Configure TCA(Threshold crossing alert)"; + } + } + leaf secondary-admin-state { + type enumeration { + enum "normal" { + value 0; + description + "Normal, Admin-state in normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance, Admin-state under maintenance"; + } + } + description + "Configure the secondary admin state of the controller"; + } + leaf tsg { + type enumeration { + enum "1.25G" { + value 0; + description + "1.25G Tributary Slot Granularity"; + } + enum "2.5G" { + value 1; + description + "2.5G Tributary Slot Granularity"; + } + } + description + "Configure TSG level(Tributary Slot Granularity)"; + } + container pm-tim-ca { + description + "Configure Consequent Action for PM(Path Monitoring) TIM"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable PM-TIM-CA"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable PM-TIM-CA"; + } + } + container tti { + description + "Configure TTI(Trail Trace Identifier)"; + container sent { + description + "Set transmit Trail Trace Identifier"; + container sapi { + description + "Enter Source Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container dapi { + description + "Enter Destination Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container operator-specific { + description + "Enter Operator Specific field"; + leaf ascii { + type string { + length "1..32" { + description + "ASCII text (Max 32 characters)"; + } + } + must "not(../hex)"; + description + "Enter ascii string"; + } + leaf hex { + type string { + length "1..64" { + description + "Hex Text (Max 64 - The string length should be an even number)"; + } + } + must "not(../ascii)"; + description + "Enter hex string of even length"; + } + } + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter Full-Ascii string "; + } + leaf hex { + type string { + length "1..128" { + description + "Hex text (Max 128 characters)"; + } + } + must "not(../ascii)"; + description + "Enter Full-Hex string "; + } + } + container expected { + description + "Set expected Trail Trace Identifier"; + container sapi { + description + "Enter Source Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container dapi { + description + "Enter Destination Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container operator-specific { + description + "Enter Operator Specific field"; + leaf ascii { + type string { + length "1..32" { + description + "ASCII text (Max 32 characters)"; + } + } + must "not(../hex)"; + description + "Enter ascii string"; + } + leaf hex { + type string { + length "1..64" { + description + "Hex Text (Max 64 - The string length should be an even number)"; + } + } + must "not(../ascii)"; + description + "Enter hex string of even length"; + } + } + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter Full-Ascii string "; + } + leaf hex { + type string { + length "1..128" { + description + "Hex text (Max 128 characters)"; + } + } + must "not(../ascii)"; + description + "Enter Full-Hex string "; + } + } + } + container opu { + description + "Configure PRBS for ODU"; + container prbs { + description + "Configure pseudo random bit sequence test"; + container mode { + description + "prbs-mode for the interface"; + container source { + presence "Indicates a source node is configured."; + description + "source mode"; + container pattern { + description + "Select pattern for prbs mode"; + container pn31 { + must + "not(../pn23 or ../pn11 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn31 node is configured."; + description + "prbs pattern pn31"; + } + container pn23 { + must + "not(../pn31 or ../pn11 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn23 node is configured."; + description + "prbs pattern pn23"; + } + container pn11 { + must + "not(../pn31 or ../pn23 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn11 node is configured."; + description + "prbs pattern pn11"; + } + container invertedpn31 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a invertedpn31 node is configured."; + description + "prbs pattern inverted pn31"; + } + container invertedpn11 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../pn15 or ../pn7)"; + presence "Indicates a invertedpn11 node is configured."; + description + "prbs pattern inverted pn11"; + } + container pn15 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../invertedpn11 or ../pn7)"; + presence "Indicates a pn15 node is configured."; + description + "prbs pattern inverted pn15"; + } + container pn7 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../invertedpn11 or ../pn15)"; + presence "Indicates a pn7 node is configured."; + description + "prbs pattern inverted pn7"; + } + } + } + container sink { + presence "Indicates a sink node is configured."; + description + "sink mode"; + container pattern { + description + "Select pattern for prbs mode"; + container pn31 { + must + "not(../pn23 or ../pn11 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn31 node is configured."; + description + "prbs pattern pn31"; + } + container pn23 { + must + "not(../pn31 or ../pn11 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn23 node is configured."; + description + "prbs pattern pn23"; + } + container pn11 { + must + "not(../pn31 or ../pn23 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn11 node is configured."; + description + "prbs pattern pn11"; + } + container invertedpn31 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a invertedpn31 node is configured."; + description + "prbs pattern inverted pn31"; + } + container invertedpn11 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../pn15 or ../pn7)"; + presence "Indicates a invertedpn11 node is configured."; + description + "prbs pattern inverted pn11"; + } + container pn15 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../invertedpn11 or ../pn7)"; + presence "Indicates a pn15 node is configured."; + description + "prbs pattern inverted pn15"; + } + container pn7 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../invertedpn11 or ../pn15)"; + presence "Indicates a pn7 node is configured."; + description + "prbs pattern inverted pn7"; + } + } + } + container source-sink { + presence "Indicates a source-sink node is configured."; + description + "source-sink mode"; + container pattern { + description + "Select pattern for prbs mode"; + container pn31 { + must + "not(../pn23 or ../pn11 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn31 node is configured."; + description + "prbs pattern pn31"; + } + container pn23 { + must + "not(../pn31 or ../pn11 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn23 node is configured."; + description + "prbs pattern pn23"; + } + container pn11 { + must + "not(../pn31 or ../pn23 + or ../invertedpn31 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a pn11 node is configured."; + description + "prbs pattern pn11"; + } + container invertedpn31 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn11 + or ../pn15 or ../pn7)"; + presence "Indicates a invertedpn31 node is configured."; + description + "prbs pattern inverted pn31"; + } + container invertedpn11 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../pn15 or ../pn7)"; + presence "Indicates a invertedpn11 node is configured."; + description + "prbs pattern inverted pn11"; + } + container pn15 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../invertedpn11 or ../pn7)"; + presence "Indicates a pn15 node is configured."; + description + "prbs pattern inverted pn15"; + } + container pn7 { + must + "not(../pn31 or ../pn23 + or ../pn11 or ../invertedpn31 + or ../invertedpn11 or ../pn15)"; + presence "Indicates a pn7 node is configured."; + description + "prbs pattern inverted pn7"; + } + } + } + container direction { + description + "Select prbs-direction for prbs mode"; + container line { + must + "(../../source or ../../sink or ../../source-sink) + and not(../system)"; + presence "Indicates a line node is configured."; + description + "prbs in line side"; + } + container system { + must + "(../../source or ../../sink or ../../source-sink) + and not(../line)"; + presence "Indicates a system node is configured."; + description + "prbs in system side"; + } + } + } + } + container ca { + description + "Select CA mode to enable"; + container laser-squelch { + presence "Indicates a laser-squelch node is configured."; + description + "Enable controller laser squelch timer"; + leaf laser-squelch-time-in-ms { + type uint32 { + range "20..10000" { + description + "laser squelch time in ms "; + } + } + description + "laser squelch time in ms "; + } + } + container idle-frame { + presence "Indicates a idle-frame node is configured."; + description + "Enable controller idle frame timer"; + leaf idle-frame-time-in-ms { + type uint32 { + range "20..10000" { + description + "idle frame time in ms "; + } + } + description + "idle frame time in ms "; + } + } + } + } + container tcm { + description + "Configure Tandem Connection Monitoring"; + container ids { + description + "Configure TCM(Tandem Connection Monitoring) level for ODU"; + list id { + key "id-id"; + description + "Configure TCM(Tandem Connection Monitoring) level for ODU"; + leaf id-id { + type uint32 { + range "1..6" { + description + "Tandem Connection Monitoring ID"; + } + } + description + "Configure TCM(Tandem Connection Monitoring) level for ODU"; + } + container perf-mon { + description + "Performance Monitoring"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable performance monitoring"; + } + } + container tcm-mode { + description + "TCM Mode"; + container operational { + presence "Indicates a operational node is configured."; + description + "Configure tcm in operational monitoring mode"; + container ltc-ca { + description + "Consequent(ial) action for Enable and Disable"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable consequent(ial) action for TCM-LTC"; + } + } + container tim-ca { + description + "Consequent(ial) action for Enable and Disable"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable consequent(ial) action for TCM-TIM"; + } + } + } + } + container delay { + description + "Delay Measurement"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable delay measurement"; + } + } + container threshold { + description + "Configure threshold for Signal Failure and Signal Degrade"; + leaf sd { + type uint32 { + range "5..9" { + description + "Signal Degrade Threshold Value(Range 1.0e-n)"; + } + } + description + "Configure SD(Signal Degrade) Threshold "; + } + leaf sf { + type uint32 { + range "5..9" { + description + "Signal Failure Threshold Value(Range 1.0e-n)"; + } + } + description + "Configure SF(Signal Failure) Threshold"; + } + leaf pm-tca { + type uint32 { + range "3..9" { + description + "Threshold Crossing Alert Value(Range 10e-n, Default 3)"; + } + } + description + "Configure TCA(Threshold Crossing Alert)"; + } + } + container tti { + description + "Configure TTI(Trail Trace Identifier)"; + container sent { + description + "Set transmit Trail Trace Identifier"; + container sapi { + description + "Enter Source Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container dapi { + description + "Enter Destination Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container operator-specific { + description + "Enter Operator Specific field"; + leaf ascii { + type string { + length "1..32" { + description + "ASCII text (Max 32 characters)"; + } + } + must "not(../hex)"; + description + "Enter ascii string"; + } + leaf hex { + type string { + length "1..64" { + description + "Hex Text (Max 64 - The string length should be an even number)"; + } + } + must "not(../ascii)"; + description + "Enter hex string of even length"; + } + } + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter Full-Ascii string "; + } + leaf hex { + type string { + length "1..128" { + description + "Hex text (Max 128 characters)"; + } + } + must "not(../ascii)"; + description + "Enter Full-Hex string "; + } + } + container expected { + description + "Set expected Trail Trace Identifier"; + container sapi { + description + "Enter Source Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container dapi { + description + "Enter Destination Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container operator-specific { + description + "Enter Operator Specific field"; + leaf ascii { + type string { + length "1..32" { + description + "ASCII text (Max 32 characters)"; + } + } + must "not(../hex)"; + description + "Enter ascii string"; + } + leaf hex { + type string { + length "1..64" { + description + "Hex Text (Max 64 - The string length should be an even number)"; + } + } + must "not(../ascii)"; + description + "Enter hex string of even length"; + } + } + leaf ascii { + type string { + length "1..64" { + description + "ASCII text (Max 64 characters)"; + } + } + description + "Enter Full-Ascii string "; + } + leaf hex { + type string { + length "1..128" { + description + "Hex text (Max 128 characters)"; + } + } + must "not(../ascii)"; + description + "Enter Full-Hex string "; + } + } + } + } + } + } + leaf loopback { + type enumeration { + enum "line" { + value 2; + description + "Select local (facility) loopback"; + } + enum "internal" { + value 4; + description + "Select local (terminal) loopback"; + } + } + description + "Configure ODU controller loopback mode"; + } + container create-lower-orders { + description + "configure this node"; + list create-lower-order { + key "create-lower-order-id tpn-number"; + description + "configure this node"; + leaf create-lower-order-id { + type enumeration { + enum "ODU1" { + value 1; + description + "create lower order odu1"; + } + enum "ODU2" { + value 2; + description + "create lower order odu2"; + } + enum "ODU3" { + value 3; + description + "create lower order odu3"; + } + enum "ODU0" { + value 10; + description + "create lower order odu0"; + } + enum "ODU2E" { + value 11; + description + "create lower order odu2e"; + } + enum "ODU1E" { + value 23; + description + "create lower order odu1e"; + } + enum "ODU2F" { + value 25; + description + "create lower order odu2F"; + } + enum "ODU3E1" { + value 26; + description + "create lower order odu3e1"; + } + enum "ODU3E2" { + value 27; + description + "create lower order odu3e2"; + } + } + description + "configure this node"; + } + leaf tpn-number { + type uint32 { + range "1..80" { + description + "<1 - MAX> Tributary port number as allowed in G.709"; + } + } + description + "Configure tributary port number for odu "; + } + leaf ts { + type string { + length "1..800" { + description + "tributary slot string separated by (:) or (-) from 1 to no of ts in parent controller. (:) indicates individual tributary slot and (-) represent range"; + } + } + description + "Configure Tributary Slots for odu "; + } + } + list create-lower-order-tpn { + key "tpn-number"; + description + "configure this node"; + leaf tpn-number { + type uint32 { + range "1..80" { + description + "<1 - MAX> Tributary port number as allowed in G.709"; + } + } + description + "Configure tributary port number for odu "; + } + leaf ts { + type string { + length "1..800" { + description + "tributary slot string separated by (:) or (-) from 1 to no of ts in parent controller. (:) indicates individual tributary slot and (-) represent range"; + } + } + description + "Configure Tributary Slots for odu "; + } + } + } + container create-lower-order-odu-flexes { + description + "configure this node"; + list create-lower-order-odu-flex { + key "create-lower-order-odu-flex-id tpn-number"; + description + "configure this node"; + leaf create-lower-order-odu-flex-id { + type enumeration { + enum "ODU-FLEX" { + value 22; + description + "create lower order odu-flex"; + } + } + description + "configure this node"; + } + leaf tpn-number { + type uint32 { + range "1..80" { + description + "<1 - MAX> Tributary port number as allowed in G.709"; + } + } + description + "Configure tributary port number for odu "; + } + leaf ts { + type string { + length "1..230" { + description + "tributary slot string separated by (:) or (-) from 1 to no of ts in parent controller. (:) indicates individual tributary slot and (-) represent range"; + } + } + must "../bitrate"; + description + "Configure Tributary Slots for odu "; + } + leaf bitrate { + type uint32 { + range "1..104124241" { + description + "Bitrate for odu-flex GFP-F can be any client rate in given range For CBR Client rate should be equal to FC-400, FC-800 etc."; + } + } + must "../ts and ../mapping"; + description + "Configure Client Bitrate for odu-flex in kbit/s"; + } + leaf mapping { + type enumeration { + enum "GFP-F-Fixed" { + value 1; + description + "GFP Non resizable mapping"; + } + enum "CBR" { + value 3; + description + "CBR mapping"; + } + } + must "../bitrate"; + description + "Configure mapping for odu-flex"; + } + } + list create-lower-order-odu-flex-tpn { + key "tpn-number"; + description + "configure this node"; + leaf tpn-number { + type uint32 { + range "1..80" { + description + "<1 - MAX> Tributary port number as allowed in G.709"; + } + } + description + "Configure tributary port number for odu "; + } + leaf ts { + type string { + length "1..230" { + description + "tributary slot string separated by (:) or (-) from 1 to no of ts in parent controller. (:) indicates individual tributary slot and (-) represent range"; + } + } + must "../bitrate"; + description + "Configure Tributary Slots for odu "; + } + leaf bitrate { + type uint32 { + range "1..104124241" { + description + "Bitrate for odu-flex GFP-F can be any client rate in given range For CBR Client rate should be equal to FC-400, FC-800 etc."; + } + } + must "../ts and ../mapping"; + description + "Configure Client Bitrate for odu-flex in kbit/s"; + } + leaf mapping { + type enumeration { + enum "GFP-F-Fixed" { + value 1; + description + "GFP Non resizable mapping"; + } + enum "CBR" { + value 3; + description + "CBR mapping"; + } + } + must "../bitrate"; + description + "Configure mapping for odu-flex"; + } + } + } + leaf terminate { + type enumeration { + enum "ether" { + value 1; + description + "Terminating to Ethernet Interface"; + } + } + description + "Configuring ethernet interface "; + } + container mapping { + description + "mapping for odu controller"; + leaf f-for-mapping { + type enumeration { + enum "GfpF" { + value 1; + description + "gfp_f for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + } + must "../f-for-mapping"; + description + "configure this node"; + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg.yang new file mode 100644 index 000000000..269f5e584 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg.yang @@ -0,0 +1,9323 @@ +module Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-odu-otu-dwdm-optics-pm-cfg"; + prefix um-cont-odu-otu-dwdm-optics-pm-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-odu-otu-dwdm-optics-pm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-10-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature optics { + description + "optics"; + } + + feature optics_cli_supp_check { + description + "optics cli supp check"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container pm { + when "../a1:controller-name[starts-with(text(),'ODU')] or ../a1:controller-name[starts-with(text(),'OTU')] or ../a1:controller-name[starts-with(text(),'dwdm')] or ../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + description + "Configure pm parameters"; + container interval-15-min { + if-feature "optics_cli_supp_check"; + description + "Configure pm parameters of 15 minute interval"; + container otn { + description + "configure otn g709 performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-pm-ne { + type uint32 { + range "0..900" { + description + "ES-PM threshold (seconds)"; + } + } + description + "set ES-PM threshold"; + } + leaf es-sm-ne { + type uint32 { + range "0..900" { + description + "ES-SM threshold (seconds)"; + } + } + description + "set ES-SM threshold"; + } + leaf esr-pm-ne { + type uint32 { + range "0..100000" { + description + "ESR-PM threshold"; + } + } + description + "set ESR-PM threshold"; + } + leaf esr-sm-ne { + type uint32 { + range "0..100000" { + description + "ESR-SM threshold"; + } + } + description + "set ESR-SM threshold"; + } + leaf ses-pm-ne { + type uint32 { + range "0..900" { + description + "SES-PM threshold (seconds)"; + } + } + description + "set SES-PM threshold"; + } + leaf ses-sm-ne { + type uint32 { + range "0..900" { + description + "SES-SM threshold (seconds)"; + } + } + description + "set SES-SM threshold"; + } + leaf sesr-pm-ne { + type uint32 { + range "0..100000" { + description + "SESR-PM threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf sesr-sm-ne { + type uint32 { + range "0..100000" { + description + "SESR-SM threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf uas-pm-ne { + type uint32 { + range "0..900" { + description + "UAS_PM threshold (seconds)"; + } + } + description + "set UAS-PM threshold"; + } + leaf uas-sm-ne { + type uint32 { + range "0..900" { + description + "UAS_SM threshold (seconds)"; + } + } + description + "set UAS-SM threshold"; + } + leaf bbe-pm-ne { + type uint32 { + range "0..8850600" { + description + "BBE_PM threshold"; + } + } + description + "set BBE-PM threshold"; + } + leaf bbe-sm-ne { + type uint32 { + range "0..8850600" { + description + "BBE_SM threshold"; + } + } + description + "set BBE-SM threshold"; + } + leaf bber-pm-ne { + type uint32 { + range "0..100000" { + description + "BBER_PM threshold"; + } + } + description + "set BBER-PM threshold"; + } + leaf bber-sm-ne { + type uint32 { + range "1..100000" { + description + "BBER_SM threshold"; + } + } + description + "set BBER-SM threshold"; + } + leaf fc-pm-ne { + type uint32 { + range "0..72" { + description + "FC_PM threshold"; + } + } + description + "set FC-PM threshold"; + } + leaf fc-sm-ne { + type uint32 { + range "0..72" { + description + "FC_SM threshold"; + } + } + description + "set FC-SM threshold"; + } + leaf es-pm-fe { + type uint32 { + range "0..900" { + description + "ES-PM threshold (seconds)"; + } + } + description + "set ES-PM threshold"; + } + leaf es-sm-fe { + type uint32 { + range "0..900" { + description + "ES-SM threshold (seconds)"; + } + } + description + "set ES-SM threshold"; + } + leaf esr-pm-fe { + type uint32 { + range "0..100000" { + description + "ESR-PM threshold"; + } + } + description + "set ESR-PM threshold"; + } + leaf esr-sm-fe { + type uint32 { + range "0..100000" { + description + "ESR-SM threshold"; + } + } + description + "set ESR-SM threshold"; + } + leaf ses-pm-fe { + type uint32 { + range "0..900" { + description + "SES-PM threshold (seconds)"; + } + } + description + "set SES-PM threshold"; + } + leaf ses-sm-fe { + type uint32 { + range "0..900" { + description + "SES-SM threshold (seconds)"; + } + } + description + "set SES-SM threshold"; + } + leaf sesr-pm-fe { + type uint32 { + range "0..100000" { + description + "SESR-PM threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf sesr-sm-fe { + type uint32 { + range "0..100000" { + description + "SESR-SM threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf uas-pm-fe { + type uint32 { + range "0..900" { + description + "UAS_PM threshold (seconds)"; + } + } + description + "set UAS-PM threshold"; + } + leaf uas-sm-fe { + type uint32 { + range "0..900" { + description + "UAS_SM threshold (seconds)"; + } + } + description + "set UAS-SM threshold"; + } + leaf bbe-pm-fe { + type uint32 { + range "0..8850600" { + description + "BBE_PM threshold"; + } + } + description + "set BBE-PM threshold"; + } + leaf bbe-sm-fe { + type uint32 { + range "0..8850600" { + description + "BBE_SM threshold"; + } + } + description + "set BBE-SM threshold"; + } + leaf bber-pm-fe { + type uint32 { + range "0..100000" { + description + "BBER_PM threshold"; + } + } + description + "set BBER-PM threshold"; + } + leaf bber-sm-fe { + type uint32 { + range "1..100000" { + description + "BBER_SM threshold"; + } + } + description + "set BBER-SM threshold"; + } + leaf fc-pm-fe { + type uint32 { + range "0..72" { + description + "FC_PM threshold"; + } + } + description + "set FC-PM threshold"; + } + leaf fc-sm-fe { + type uint32 { + range "0..72" { + description + "FC_SM threshold"; + } + } + description + "set FC-SM threshold"; + } + leaf es-ne { + type uint32 { + range "0..900" { + description + "ES-NE threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "ESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..900" { + description + "SES-NE threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "SESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..900" { + description + "UAS-NE threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..8850600" { + description + "BBE-NE threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "1..100000" { + description + "BBER-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..72" { + description + "FC-NE threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..900" { + description + "ES-FE threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "es-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..900" { + description + "SES-FE threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "SESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..900" { + description + "UAS-FE threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..8850600" { + description + "BBE-FE threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "1..100000" { + description + "BBER-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..72" { + description + "FC-FE threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-sm-ne { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-sm-ne { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-sm-ne { + description + "set uas-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-sm-ne { + description + "set bbe-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-sm-ne { + description + "set fc-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-sm-ne { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-sm-ne { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-sm-ne { + description + "set bber-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-pm-ne { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-pm-ne { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-pm-ne { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-pm-ne { + description + "set bbe-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-pm-ne { + description + "set fc-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-pm-ne { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-pm-ne { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-pm-ne { + description + "set bber-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-sm-fe { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-sm-fe { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-sm-fe { + description + "set uas-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-sm-fe { + description + "set bbe-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-sm-fe { + description + "set fc-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-sm-fe { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-sm-fe { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-sm-fe { + description + "set bber-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-pm-fe { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-pm-fe { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-pm-fe { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-pm-fe { + description + "set bbe-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-pm-fe { + description + "set fc-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-pm-fe { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-pm-fe { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-pm-fe { + description + "set bber-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pathmonitor { + description + "configure otn g709 performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-ne { + type uint32 { + range "0..900" { + description + "ES-NE threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "ESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..900" { + description + "SES-NE threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "SESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..900" { + description + "UAS-NE threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..8850600" { + description + "BBE-NE threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "0..100000" { + description + "BBER-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..72" { + description + "FC-NE threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..900" { + description + "ES-FE threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "ESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..900" { + description + "SES-FE threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "SESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..900" { + description + "UAS-FE threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..8850600" { + description + "BBE-FE threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "0..100000" { + description + "BBER-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..72" { + description + "FC-FE threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-ne { + description + "set es-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-ne { + description + "set ses-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-ne { + description + "set uas-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-ne { + description + "set bbe-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-ne { + description + "set fc-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-ne { + description + "set esr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-ne { + description + "set sesr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-ne { + description + "set bber-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-fe { + description + "set bbe-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-fe { + description + "set fc-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-fe { + description + "set esr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-fe { + description + "set sesr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-fe { + description + "set bber-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + container tcms { + description + "configure tcm performance monitoring"; + list tcm { + key "channel-number"; + description + "configure tcm performance monitoring"; + leaf channel-number { + type uint32 { + range "1..6" { + description + " Channel Number"; + } + } + description + "configure tcm performance monitoring"; + } + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-ne { + type uint32 { + range "0..900" { + description + "ES-NE threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "ESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..900" { + description + "SES-NE threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "SESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..900" { + description + "UAS-NE threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..8850600" { + description + "BBE-NE threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "0..100000" { + description + "BBER-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..72" { + description + "FC-NE threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..900" { + description + "ES-FE threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "ESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..900" { + description + "SES-FE threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "SESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..900" { + description + "UAS-FE threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..8850600" { + description + "BBE-FE threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "0..100000" { + description + "BBER-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..72" { + description + "FC-FE threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-fe { + description + "set bbe-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-fe { + description + "set fc-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-fe { + description + "set esr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-fe { + description + "set sesr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-fe { + description + "set bber-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-ne { + description + "set es-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-ne { + description + "set ses-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-ne { + description + "set uas-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-ne { + description + "set bbe-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-ne { + description + "set fc-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-ne { + description + "set esr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-ne { + description + "set sesr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-ne { + description + "set bber-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + } + } + container optics { + description + "Configure optics performance monitoring"; + container threshold { + description + "Configure threshold on optics parameters"; + container lbc { + description + "set lbc threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "lbc min threshold (mA)"; + } + } + description + "set lbc min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "lbc max threshold (mA)"; + } + } + description + "set lbc max threshold"; + } + } + container opt { + description + "set opt threshold in uW"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "opt min threshold (uW) "; + } + } + description + "set opt min threshold in uW"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "opt max threshold (uW) "; + } + } + description + "set opt max threshold in uW"; + } + } + container opr { + description + "set opr threshold in uW"; + leaf max { + type uint32 { + range "1..4294967294" { + description + "opr max threshold (uW) "; + } + } + description + "set opr max threshold in uW"; + } + leaf min { + type uint32 { + range "1..4294967294" { + description + "opr min threshold (uW) "; + } + } + description + " set opr min threshold in uW"; + } + } + container dgd { + description + "set differential group delay threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "differential group delay min threshold (1/100th of ps)"; + } + } + description + "set differential group delay min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "differential delay group max threshold (1/100th of ps)"; + } + } + description + "set differential group delay max threshold"; + } + } + container pmd { + description + "set polarization mode dispersion threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "polarization mode dispersion min threshold (ps^2)"; + } + } + description + "set polarization mode dispersion min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "polarization mode dispersion max threshold (ps^2)"; + } + } + description + "set polarization mode dispersion max threshold"; + } + } + container osnr { + description + "set optical signal to noise ratio threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "optical signal to noise ratio min threshold (1/100th of dB)"; + } + } + description + "set optical signal to noise ratio min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "optical signal to noise ratio max threshold (1/100th of dB)"; + } + } + description + "set optical siganl to noise max threshold"; + } + } + container pdl { + description + "set polarization dependent loss threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "polarization dependent loss min threshold (1/100th of dB)"; + } + } + description + "set polarization dependent loss min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "polarization dependent loss max threshold (1/100th of dB)"; + } + } + description + "set polarization dependent loss max threshold"; + } + } + container pcr { + description + "set polarization change rate threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "polarization change rate min threshold (rad/s)"; + } + } + description + "set polarization change rate min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "polarization change rate max threshold (rad/s)"; + } + } + description + "set polarization change rate max threshold"; + } + } + container pn { + description + "set phase noise threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "phase noise min threshold (dB)"; + } + } + description + "set phase noise min threshold"; + } + leaf max { + type uint32 { + range "1..4294967290" { + description + "phase noise max threshold (dB)"; + } + } + description + "set phase noise max threshold"; + } + } + container cd { + description + "set chromatic dispersion threshold"; + leaf min { + type union { + type int32 { + range "-70000..70000" { + description + "chromatic dispersion min threshold (ps/nm)"; + } + } + type int32 { + range "-350000..350000" { + description + "chromatic dispersion min threshold (ps/nm)"; + } + } + } + description + "set chromatic dispersion min threshold"; + } + leaf max { + type union { + type int32 { + range "-70000..70000" { + description + "chromatic dispersion max threshold (ps/nm)"; + } + } + type int32 { + range "-350000..350000" { + description + "chromatic dispersion max threshold (ps/nm)"; + } + } + } + description + "set chromatic dispersion max threshold"; + } + } + container opt-dbm { + description + "set opt threshold in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "Set opt min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opt max threshold in dbm"; + } + } + container opr-dbm { + description + "set opr threshold value in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opr min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opr max threshold in dbm"; + } + } + container lbc-pc { + description + "set lbc % threshold"; + leaf min { + type uint32 { + range "0..1000" { + description + "lbc min threshold (in units of 0.1%)"; + } + } + description + "set lbc % min threshold"; + } + leaf max { + type uint32 { + range "0..1000" { + description + "lbc max threshold (in units of 0.1%)"; + } + } + description + "set lbc % max threshold"; + } + } + container sopmd { + description + "set second order polarization mode dispersion threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "polarization mode dispersion min threshold (in units of 0.01 ps^2)"; + } + } + description + "set polarization mode dispersion min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "polarization mode dispersion max threshold ( in units of 0.01 ps^2)"; + } + } + description + "set polarization mode dispersion max threshold"; + } + } + container rx-sig-pow { + description + "set rx sig power threshold in uW"; + leaf min { + type uint32 { + range "1..4294967290" { + description + " rx sig power threshold in uW"; + } + } + description + "rx sig power min threshold in uW "; + } + leaf max { + type uint32 { + range "1..4294967290" { + description + "rx sig power max threshold in uW"; + } + } + description + "set rx sig power max threshold in uW"; + } + } + container snr { + description + "set SNR threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR min threshold"; + } + } + description + "set SNR min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR max threshold "; + } + } + description + "set SNR max threshold "; + } + } + container snr-ax { + description + "set SNR AX threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR AX min threshold"; + } + } + description + "set SNR AX min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR AX max threshold "; + } + } + description + "set SNR AX max threshold "; + } + } + container snr-bx { + description + "set SNR BX threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR BX min threshold"; + } + } + description + "set SNR BX min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR BX max threshold "; + } + } + description + "set SNR BX max threshold "; + } + } + container snr-ay { + description + "set SNR AY threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR AY min threshold"; + } + } + description + "set SNR AY min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR AY max threshold "; + } + } + description + "set SNR AY max threshold "; + } + } + container snr-by { + description + "set SNR BY threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR BY min threshold"; + } + } + description + "set SNR BY min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR BY max threshold "; + } + } + description + "set SNR BY max threshold "; + } + } + container rx-sig-pow-dbm { + description + "set rx-sig-pow threshold in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set rx-sig-pow min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set rx-sig-pow max threshold in dbm"; + } + } + container low-freq-off { + description + "set low signal freq offset threshold in Mhz"; + leaf min { + type int32 { + range "-1500..1500" { + description + "low signal freq offset min threshold in Mhz"; + } + } + description + "set low signal freq offset min threshold in Mhz"; + } + leaf max { + type int32 { + range "-1500..1500" { + description + "low signal freq offset max threshold in Mhz"; + } + } + description + "set low signal freq offset max threshold in Mhz"; + } + } + container sop-s1 { + description + "set SOP S1 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S1 threshold "; + } + } + description + "set SOP S1 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S1 max threshold "; + } + } + description + "set SOP S1 max threshold "; + } + } + container sop-s2 { + description + "set SOP S2 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S2 threshold "; + } + } + description + "set SOP S2 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S2 max threshold "; + } + } + description + "set SOP S2 max threshold "; + } + } + container sop-s3 { + description + "set SOP S3 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S3 threshold "; + } + } + description + "set SOP S3 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S3 max threshold "; + } + } + description + "set SOP S3 max threshold "; + } + } + } + container report { + description + "set optics TCA reporting status"; + container lbc { + description + "set lbc TCA reporting status"; + container min-tca { + description + "set lbc min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set lbc max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container opt { + description + "set opt TCA reporting status"; + container min-tca { + description + "set opt min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set opt max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container opr { + description + "set opr TCA reporting status"; + container min-tca { + description + "set opr min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set opr max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container cd { + description + "set chromatic dispersion TCA reporting status"; + container min-tca { + description + "set chromatic dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set chromatic dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container dgd { + description + "set differential group delay TCA reporting status"; + container min-tca { + description + "set differentail group delay min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set differential group delay max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pmd { + description + "set polarization mode dispersion TCA reporting status"; + container min-tca { + description + "set polarization mode dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization mode dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container osnr { + description + "set optical signal to noise ratio TCA reporting status"; + container min-tca { + description + "set optical signal to noise ratio min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set optical signal to noise ratio max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pdl { + description + "set polarization dependent loss TCA reporting status"; + container min-tca { + description + "set polarization dependent loss min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization dependent loss max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pcr { + description + "set polarization change rate TCA reporting status"; + container min-tca { + description + "set polarization change rate min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization change rate max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pn { + description + "set phase noise TCA reporting status"; + container min-tca { + description + "set phase noise min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set phase noise max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container lbc-pc { + description + "set lbc % TCA reporting status"; + container min-tca { + description + "set lbc min % TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set lbc max % TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sopmd { + description + "set second order polarization mode dispersion TCA reporting status"; + container min-tca { + description + "set polarization mode dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization mode dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container rx-sig-pow { + description + "set rx sig power TCA reporting status"; + container min-tca { + description + "set rx sig power(uW/dBm) min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set rx sig power(uW/dBm) max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container low-freq-off { + description + "set low signal freq offset TCA reporting status"; + container min-tca { + description + "set low signal freq offset min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set low signal freq offset max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr { + description + "set SNR TCA reporting status"; + container min-tca { + description + "set SNR min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-ax { + description + "set SNR-AX TCA reporting status"; + container min-tca { + description + "set SNR-AX min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-AX max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-bx { + description + "set SNR-BX TCA reporting status"; + container min-tca { + description + "set SNR-BX min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-BX max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-ay { + description + "set SNR-AY TCA reporting status"; + container min-tca { + description + "set SNR-AY min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-AY max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-by { + description + "set SNR-BY TCA reporting status"; + container min-tca { + description + "set SNR-BY min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-BY max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s1 { + description + "set SOP-S1 TCA reporting status"; + container min-tca { + description + "set SOP-S1 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S1 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s2 { + description + "set SOP-S2 TCA reporting status"; + container min-tca { + description + "set SOP-S2 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S2 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s3 { + description + "set SOP-S3 TCA reporting status"; + container min-tca { + description + "set SOP-S3 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S3 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container fec { + description + "Configure fec g709 performance monitoring"; + container threshold { + description + "Configure fec threshold"; + leaf ec-bits { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ec-bits threshold "; + } + } + description + "set EC-BITS threshold"; + } + leaf uc-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "uc-words threshold "; + } + } + description + "set UC-WORDS threshold"; + } + container pre-fec-ber { + description + "Set PRE-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber min threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set pre-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber max threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set pre-fec-ber max threshold"; + } + } + container post-fec-ber { + description + "Set POST-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber min threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set post-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber max threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set post-fec-ber max threshold"; + } + } + container q { + description + "set Q threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q max threshold"; + } + } + container q-margin { + description + "set Q margin threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q margin min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q margin min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q margin max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q margin max threshold"; + } + } + container inst-q-margin { + description + "set Instantaneous Q margin threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Instantaneous Q margin min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Instantaneous Q margin min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Instantaneous Q margin max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Instantaneous Q margin max threshold"; + } + } + } + container report { + description + "set fec TCA reporting status"; + container ec-bits { + description + "set ec-bits TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uc-words { + description + "set uc-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container otnsec { + description + "configure otnsec pm parameters"; + container threshold { + description + "configure threshold for otnsec pm parameters"; + leaf in-blocks { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of odu blocks processed"; + } + leaf in-blocks-enc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of encrypted blocks processed"; + } + leaf in-blocks-un-encrypted { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of un-encrypted blocks processed"; + } + leaf in-blocks-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of Authenticated blocks processed"; + } + leaf in-blocks-un-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of unAuthenticated blocks processed"; + } + leaf in-blocks-sequence-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Sequence Errors"; + } + leaf in-blocks-replay-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Replay Errors"; + } + leaf in-blocks-auth-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for blocks which failed authentication check"; + } + leaf in-blocks-zeroed { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Blocks which were zeroed due to some errors"; + } + leaf out-blocks { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total number of ODU blocks processed"; + } + leaf out-blocks-enc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for no. of encrypted blocks processed"; + } + leaf out-blocks-un-encrypted { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for no. of unencrypted blocks processed"; + } + leaf out-blocks-sequence-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for sequence errors"; + } + leaf out-blocks-zeroed { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for blocks that were zeroed due to some errors"; + } + leaf out-blocks-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of Authenticated blocks processed"; + } + leaf out-blocks-un-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of unAuthenticated blocks processed"; + } + } + container report { + description + "Configure TCA report for otnsec parameters"; + container in-blocks { + description + "Set TCA report for Inblocks"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-enc { + description + "Set TCA report for InBlocksEnc"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-un-encrypted { + description + "Set TCA report for InBlocksUnEncrypted"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-protected { + description + "Set TCA report for InBlocksProtected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-un-portected { + description + "Set TCA report for InBlocksUnPortected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-sequence-errors { + description + "Set TCA report for InBlocksSequenceErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-replay-errors { + description + "Set TCA report for InBlocksReplayErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-auth-errors { + description + "Set TCA report for InBlocksAuthErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-zeroed { + description + "Set TCA report for InBlocksZeroed"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks { + description + "Set TCA report for OutBlocks"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-enc { + description + "Set TCA report for OutBlocksEnc"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-un-encrypted { + description + "Set TCA report for OutBlocksUnEncrypted"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-sequence-errors { + description + "Set TCA report for OutBlocksSequenceErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-zeroed { + description + "Set TCA report for OutBlocksZeroed"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-protected { + description + "Set TCA report for OutBlocksProtected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-un-portected { + description + "Set TCA report for OutBlocksUnPortected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container gfp { + description + "Configure gfp performance monitoring"; + container threshold { + description + "Configure gfp threshold"; + leaf rx-bit-err { + type uint32 { + range "1..4294967295" { + description + "RX-BIT-ERR threshold"; + } + } + description + "set RX-BIT-ERR threshold"; + } + leaf rx-inv-type { + type uint32 { + range "1..4294967295" { + description + "RX-INV-TYP threshold"; + } + } + description + "set RX-INV-TYP threshold"; + } + leaf rx-crc-err { + type uint32 { + range "1..4294967295" { + description + "RX-CRC threshold"; + } + } + description + "set RX-CRC threshold"; + } + leaf rx-lfd-stats { + type uint32 { + range "1..4294967295" { + description + "RX-LFD threshold"; + } + } + description + "set RX-LFD threshold"; + } + leaf rx-csf-stats { + type uint32 { + range "1..4294967295" { + description + "RX-CSF threshold"; + } + } + description + "set RX-CSF threshold"; + } + } + container report { + description + "set gfp TCA reporting status"; + container rx-bit-err { + description + "set rx-bit-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-inv-type { + description + "set rx-inv-type TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-crc-err { + description + "set rx-crc-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-lfd-stats { + description + "set rx-lfd-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-csf-stats { + description + "set rx-csf-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container prbs { + description + "Configure prbs performance monitoring"; + container threshold { + description + "Configure prbs threshold"; + leaf ebc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ebc threshold <1-18446744073709551615>"; + } + } + description + "set EBC threshold"; + } + leaf found-count { + type xr:Cisco-ios-xr-string { + length "1..10" { + description + "found-count threshold <1-4294967295>"; + } + } + description + "set FOUND-COUNT threshold"; + } + leaf lost-count { + type xr:Cisco-ios-xr-string { + length "1..10" { + description + "lost-count threshold <1-4294967295>"; + } + } + description + "set LOST-COUNT threshold"; + } + } + container report { + description + "set prbs TCA reporting status"; + container ebc { + description + "set ebc TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container found-count { + description + "set found-count TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container lost-count { + description + "set lost-count TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hour { + if-feature "optics_cli_supp_check"; + description + "Configure pm parameters of 24 hour interval"; + container otn { + description + "configure otn g709 performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-pm-ne { + type uint32 { + range "0..86400" { + description + "es-pm threshold (seconds)"; + } + } + description + "set ES-PM threshold"; + } + leaf es-sm-ne { + type uint32 { + range "0..86400" { + description + "es-pm threshold (seconds)"; + } + } + description + "set ES-SM threshold"; + } + leaf esr-pm-ne { + type uint32 { + range "0..100000" { + description + "esr-pm threshold"; + } + } + description + "set ESR-PM threshold"; + } + leaf esr-sm-ne { + type uint32 { + range "0..100000" { + description + "esr-sm threshold"; + } + } + description + "set ESR-SM threshold"; + } + leaf ses-pm-ne { + type uint32 { + range "0..86400" { + description + "ses-pm threshold (seconds)"; + } + } + description + "set SES-PM threshold"; + } + leaf ses-sm-ne { + type uint32 { + range "0..86400" { + description + "ses-sm threshold (seconds)"; + } + } + description + "set SES-SM threshold"; + } + leaf sesr-pm-ne { + type uint32 { + range "0..100000" { + description + "sesr-pm threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf sesr-sm-ne { + type uint32 { + range "0..100000" { + description + "sesr-sm threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf uas-pm-ne { + type uint32 { + range "0..86400" { + description + "uas-pm threshold (seconds)"; + } + } + description + "set UAS-PM threshold"; + } + leaf uas-sm-ne { + type uint32 { + range "0..86400" { + description + "uas-sm threshold (seconds)"; + } + } + description + "set UAS-SM threshold"; + } + leaf bbe-pm-ne { + type uint32 { + range "0..849657600" { + description + "bbe-pm threshold"; + } + } + description + "set BBE-PM threshold"; + } + leaf bbe-sm-ne { + type uint32 { + range "0..849657600" { + description + "bbe-sm threshold"; + } + } + description + "set BBE-SM threshold"; + } + leaf bber-pm-ne { + type uint32 { + range "0..100000" { + description + "bber-pm threshold"; + } + } + description + "set BBER-PM threshold"; + } + leaf bber-sm-ne { + type uint32 { + range "0..100000" { + description + "bber-sm threshold"; + } + } + description + "set BBER-SM threshold"; + } + leaf fc-pm-ne { + type uint32 { + range "0..6912" { + description + "fc-pm threshold"; + } + } + description + "set FC-PM threshold"; + } + leaf fc-sm-ne { + type uint32 { + range "0..6912" { + description + "fc-pm threshold"; + } + } + description + "set FC-SM threshold"; + } + leaf es-pm-fe { + type uint32 { + range "0..86400" { + description + "es-pm threshold (seconds)"; + } + } + description + "set ES-PM threshold"; + } + leaf es-sm-fe { + type uint32 { + range "0..86400" { + description + "es-pm threshold (seconds)"; + } + } + description + "set ES-SM threshold"; + } + leaf esr-pm-fe { + type uint32 { + range "0..100000" { + description + "esr-pm threshold"; + } + } + description + "set ESR-PM threshold"; + } + leaf esr-sm-fe { + type uint32 { + range "0..100000" { + description + "esr-sm threshold"; + } + } + description + "set ESR-SM threshold"; + } + leaf ses-pm-fe { + type uint32 { + range "0..86400" { + description + "ses-pm threshold (seconds)"; + } + } + description + "set SES-PM threshold"; + } + leaf ses-sm-fe { + type uint32 { + range "0..86400" { + description + "ses-sm threshold (seconds)"; + } + } + description + "set SES-SM threshold"; + } + leaf sesr-pm-fe { + type uint32 { + range "0..100000" { + description + "sesr-pm threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf sesr-sm-fe { + type uint32 { + range "0..100000" { + description + "sesr-sm threshold"; + } + } + description + "set SESR-PM threshold"; + } + leaf uas-pm-fe { + type uint32 { + range "0..86400" { + description + "uas-pm threshold (seconds)"; + } + } + description + "set UAS-PM threshold"; + } + leaf uas-sm-fe { + type uint32 { + range "0..86400" { + description + "uas-sm threshold (seconds)"; + } + } + description + "set UAS-SM threshold"; + } + leaf bbe-pm-fe { + type uint32 { + range "0..849657600" { + description + "bbe-pm threshold"; + } + } + description + "set BBE-PM threshold"; + } + leaf bbe-sm-fe { + type uint32 { + range "0..849657600" { + description + "bbe-sm threshold"; + } + } + description + "set BBE-SM threshold"; + } + leaf bber-pm-fe { + type uint32 { + range "0..100000" { + description + "bber-pm threshold"; + } + } + description + "set BBER-PM threshold"; + } + leaf bber-sm-fe { + type uint32 { + range "0..100000" { + description + "bber-sm threshold"; + } + } + description + "set BBER-SM threshold"; + } + leaf fc-pm-fe { + type uint32 { + range "0..6912" { + description + "fc-pm threshold"; + } + } + description + "set FC-PM threshold"; + } + leaf fc-sm-fe { + type uint32 { + range "0..6912" { + description + "fc-pm threshold"; + } + } + description + "set FC-SM threshold"; + } + leaf es-ne { + type uint32 { + range "0..86400" { + description + "es-ne threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "esr-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..86400" { + description + "ses-ne threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "sesr-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..86400" { + description + "uas-ne threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..849657600" { + description + "bbe-ne threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "0..100000" { + description + "bber-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..6912" { + description + "fc-ne threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..86400" { + description + "es-fe threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "esr-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..86400" { + description + "ses-fe threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "sesr-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..86400" { + description + "uas-fe threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..849657600" { + description + "bbe-fe threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "0..100000" { + description + "bber-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..6912" { + description + "fc-fe threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-sm-ne { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-sm-ne { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-sm-ne { + description + "set uas-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-sm-ne { + description + "set bbe-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-sm-ne { + description + "set fc-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-sm-ne { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-sm-ne { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-sm-ne { + description + "set bber-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-pm-ne { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-pm-ne { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-pm-ne { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-pm-ne { + description + "set bbe-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-pm-ne { + description + "set fc-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-pm-ne { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-pm-ne { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-pm-ne { + description + "set bber-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-sm-fe { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-sm-fe { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-sm-fe { + description + "set uas-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-sm-fe { + description + "set bbe-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-sm-fe { + description + "set fc-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-sm-fe { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-sm-fe { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-sm-fe { + description + "set bber-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-pm-fe { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-pm-fe { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-pm-fe { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-pm-fe { + description + "set bbe-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-pm-fe { + description + "set fc-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-pm-fe { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-pm-fe { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-pm-fe { + description + "set bber-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pathmonitor { + description + "configure otn g709 performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-ne { + type uint32 { + range "0..86400" { + description + "es-pm threshold (seconds)"; + } + } + description + "set ES-PM threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "esr-pm threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-PM threshold"; + } + leaf ses-ne { + type uint32 { + range "0..86400" { + description + "ses-pm threshold (seconds)"; + } + } + description + "set SES-PM threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "sesr-pm threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-PM threshold"; + } + leaf uas-ne { + type uint32 { + range "0..86400" { + description + "uas-pm threshold (seconds)"; + } + } + description + "set UAS-PM threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..849657600" { + description + "bbe-pm threshold"; + } + } + description + "set BBE-PM threshold"; + } + leaf bber-ne { + type uint32 { + range "0..100000" { + description + "bber-pm threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-PM threshold"; + } + leaf fc-ne { + type uint32 { + range "0..6912" { + description + "fc-pm threshold"; + } + } + description + "set FC-PM threshold"; + } + leaf es-fe { + type uint32 { + range "0..86400" { + description + "es-pm threshold (seconds)"; + } + } + description + "set ES-PM threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "esr-pm threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-PM threshold"; + } + leaf ses-fe { + type uint32 { + range "0..86400" { + description + "ses-pm threshold (seconds)"; + } + } + description + "set SES-PM threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "sesr-pm threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-PM threshold"; + } + leaf uas-fe { + type uint32 { + range "0..86400" { + description + "uas-pm threshold (seconds)"; + } + } + description + "set UAS-PM threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..849657600" { + description + "bbe-pm threshold"; + } + } + description + "set BBE-PM threshold"; + } + leaf bber-fe { + type uint32 { + range "0..100000" { + description + "bber-pm threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-PM threshold"; + } + leaf fc-fe { + type uint32 { + range "0..6912" { + description + "fc-pm threshold"; + } + } + description + "set FC-PM threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-ne { + description + "set es-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-ne { + description + "set ses-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-ne { + description + "set uas-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-ne { + description + "set bbe-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-ne { + description + "set fc-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-ne { + description + "set esr-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-ne { + description + "set sesr-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-ne { + description + "set bber-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-fe { + description + "set es-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-fe { + description + "set bbe-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-fe { + description + "set fc-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-fe { + description + "set esr-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-fe { + description + "set sesr-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-fe { + description + "set bber-pm TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + container tcms { + description + "configure tcm performance monitoring"; + list tcm { + key "channel-number"; + description + "configure tcm performance monitoring"; + leaf channel-number { + type uint32 { + range "1..6" { + description + " Channel Number"; + } + } + description + "configure tcm performance monitoring"; + } + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-ne { + type uint32 { + range "0..86400" { + description + "es-ne threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "esr-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..86400" { + description + "ses-ne threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "sesr-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..86400" { + description + "uas-ne threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..849657600" { + description + "bbe-ne threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "0..100000" { + description + "bber-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..6912" { + description + "fc-ne threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..86400" { + description + "es-fe threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "esr-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..86400" { + description + "ses-fe threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "sesr-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..86400" { + description + "uas-fe threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..849657600" { + description + "bbe-fe threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "0..100000" { + description + "bber-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..6912" { + description + "fc-fe threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-fe { + description + "set bbe-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-fe { + description + "set fc-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-fe { + description + "set esr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-fe { + description + "set sesr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-fe { + description + "set bber-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-ne { + description + "set es-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-ne { + description + "set ses-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-ne { + description + "set uas-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-ne { + description + "set bbe-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-ne { + description + "set fc-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-ne { + description + "set esr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-ne { + description + "set sesr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-ne { + description + "set bber-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + } + } + container optics { + description + "Configure optics performance monitoring"; + container threshold { + description + "Configure threshold on optics parameters"; + container lbc { + description + "set lbc threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "lbc min threshold (mA)"; + } + } + description + "set lbc min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "lbc max threshold (mA)"; + } + } + description + "set lbc max threshold"; + } + } + container opt { + description + "set opt threshold in uW"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "opt min threshold (uW) "; + } + } + description + "set opt min threshold in uW"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "opt max threshold (uW) "; + } + } + description + "set opt max threshold in uW"; + } + } + container opr { + description + "set opr threshold in uW"; + leaf max { + type uint32 { + range "1..4294967295" { + description + "opr max threshold (uW)"; + } + } + description + "set opr max threshold in uW"; + } + leaf min { + type uint32 { + range "1..4294967295" { + description + "opr min threshold (uW)"; + } + } + description + " set opr min threshold in uW"; + } + } + container dgd { + description + "set differential group delay threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "differential group delay min threshold (1/100th of ps)"; + } + } + description + "set differential group delay min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "differential delay group max threshold (1/100th of ps)"; + } + } + description + "set differential group delay max threshold"; + } + } + container pmd { + description + "set polarization mode dispersion threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "polarization mode dispersion min threshold (ps^2)"; + } + } + description + "set polarization mode dispersion min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "polarization mode dispersion max threshold (ps^2)"; + } + } + description + "set polarization mode dispersion max threshold"; + } + } + container osnr { + description + "set optical signal to noise ratio threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "optical signal to noise ratio min threshold (1/100th of dB)"; + } + } + description + "set optical signal to noise ratio min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "optical signal to noise ratio max threshold (1/100th of dB)"; + } + } + description + "set optical siganl to noise max threshold"; + } + } + container pdl { + description + "set polarization dependent loss threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "polarization dependent loss min threshold (1/100th of dB)"; + } + } + description + "set polarization dependent loss min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "polarization dependent loss max threshold (1/100th of dB)"; + } + } + description + "set polarization dependent loss max threshold"; + } + } + container pcr { + description + "set polarization change rate threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "polarization change rate min threshold (rad/s)"; + } + } + description + "set polarization change rate min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "polarization change rate max threshold (rad/s)"; + } + } + description + "set polarization change rate max threshold"; + } + } + container pn { + description + "set phase noise threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "phase noise min threshold (dB)"; + } + } + description + "set phase noise min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "phase noise max threshold in (dB)"; + } + } + description + "set phase noise max threshold"; + } + } + container cd { + description + "set chromatic dispersion threshold"; + leaf min { + type union { + type int32 { + range "-70000..70000" { + description + "chromatic dispersion min threshold (ps/nm)"; + } + } + type int32 { + range "-350000..350000" { + description + "chromatic dispersion min threshold (ps/nm)"; + } + } + } + description + "set chromatic dispersion min threshold"; + } + leaf max { + type union { + type int32 { + range "-70000..70000" { + description + "chromatic dispersion max threshold (ps/nm)"; + } + } + type int32 { + range "-350000..350000" { + description + "chromatic dispersion max threshold (ps/nm)"; + } + } + } + description + "set chromatic dispersion max threshold"; + } + } + container opt-dbm { + description + "set opt min threshold value in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "Set opt min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opt max threshold"; + } + } + container opr-dbm { + description + "set opr min threshold value in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "Set opr min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opr max threshold in dbm"; + } + } + container lbc-pc { + description + "set lbc % threshold"; + leaf min { + type uint32 { + range "0..1000" { + description + "lbc min threshold (in units of 0.1%)"; + } + } + description + "set lbc % min threshold"; + } + leaf max { + type uint32 { + range "0..1000" { + description + "lbc max threshold (in units of 0.1%)"; + } + } + description + "set lbc % max threshold"; + } + } + container sopmd { + description + "set second order polarization mode dispersion threshold"; + leaf min { + type uint32 { + range "1..4294967295" { + description + "polarization mode dispersion min threshold (in units of 0.01 ps^2)"; + } + } + description + "set polarization mode dispersion min threshold"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "polarization mode dispersion max threshold (in units of 0.01 ps^2)"; + } + } + description + "set polarization mode dispersion max threshold"; + } + } + container rx-sig-pow { + description + "set rx sig power threshold in uW"; + leaf min { + type uint32 { + range "1..4294967295" { + description + " rx sig power threshold in uW"; + } + } + description + "rx sig power min threshold in uW "; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "rx sig power max threshold in uW"; + } + } + description + "set rx sig power max threshold in uW"; + } + } + container snr { + description + "set SNR threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR min threshold"; + } + } + description + "set SNR min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR max threshold "; + } + } + description + "set SNR max threshold "; + } + } + container snr-ax { + description + "set SNR AX threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR AX min threshold"; + } + } + description + "set SNR AX min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR AX max threshold "; + } + } + description + "set SNR AX max threshold "; + } + } + container snr-bx { + description + "set SNR BX threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR BX min threshold"; + } + } + description + "set SNR BX min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR BX max threshold "; + } + } + description + "set SNR BX max threshold "; + } + } + container snr-ay { + description + "set SNR AY threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR AY min threshold"; + } + } + description + "set SNR AY min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR AY max threshold "; + } + } + description + "set SNR AY max threshold "; + } + } + container snr-by { + description + "set SNR BY threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR BY min threshold"; + } + } + description + "set SNR BY min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR BY max threshold "; + } + } + description + "set SNR BY max threshold "; + } + } + container rx-sig-pow-dbm { + description + "set rx-sig-pow threshold in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set rx-sig-pow min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set rx-sig-pow max threshold in dbm"; + } + } + container low-freq-off { + description + "set low signal freq offset threshold in Mhz"; + leaf min { + type int32 { + range "-1500..1500" { + description + "low signal freq offset min threshold in Mhz"; + } + } + description + "set low signal freq offset min threshold in Mhz"; + } + leaf max { + type int32 { + range "-1500..1500" { + description + "low signal freq offset max threshold in Mhz"; + } + } + description + "set low signal freq offset max threshold in Mhz"; + } + } + container sop-s1 { + description + "set SOP S1 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S1 threshold "; + } + } + description + "set SOP S1 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S1 max threshold "; + } + } + description + "set SOP S1 max threshold "; + } + } + container sop-s2 { + description + "set SOP S2 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S2 threshold "; + } + } + description + "set SOP S2 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S2 max threshold "; + } + } + description + "set SOP S2 max threshold "; + } + } + container sop-s3 { + description + "set SOP S3 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S3 threshold "; + } + } + description + "set SOP S3 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S3 max threshold "; + } + } + description + "set SOP S3 max threshold "; + } + } + } + container report { + description + "set optics TCA reporting status"; + container lbc { + description + "set lbc TCA reporting status"; + container min-tca { + description + "set lbc min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set lbc max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container opt { + description + "set opt TCA reporting status"; + container min-tca { + description + "set opt min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set opt max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container opr { + description + "set opr TCA reporting status"; + container min-tca { + description + "set opr min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set opr max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container cd { + description + "set chromatic dispersion TCA reporting status"; + container min-tca { + description + "set chromatic dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set chromatic dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container dgd { + description + "set differential group delay TCA reporting status"; + container min-tca { + description + "set differentail group delay min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set differential group delay max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pmd { + description + "set polarization mode dispersion TCA reporting status"; + container min-tca { + description + "set polarization mode dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization mode dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sopmd { + description + "set second order polarization mode dispersion TCA reporting status"; + container min-tca { + description + "set second order polarization mode dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization mode dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container osnr { + description + "set optical signal to noise ratio TCA reporting status"; + container min-tca { + description + "set optical signal to noise ratio min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set optical signal to noise ratio max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pdl { + description + "set polarization dependent loss TCA reporting status"; + container min-tca { + description + "set polarization dependent loss min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization dependent loss max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pcr { + description + "set polarization state change TCA reporting status"; + container min-tca { + description + "set polarization state change min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization state change max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pn { + description + "set phase noise TCA reporting status"; + container min-tca { + description + "set phase noise min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set phase noise max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container lbc-pc { + description + "set lbc % TCA reporting status"; + container min-tca { + description + "set lbc min % TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set lbc max % TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container rx-sig-pow { + description + "set rx sig power TCA reporting status"; + container min-tca { + description + "set rx sig power(uW/dBm) min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set rx sig power(uW/dBm) max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container low-freq-off { + description + "set low signal freq offset TCA reporting status"; + container min-tca { + description + "set low signal freq offset min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set low signal freq offset max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr { + description + "set SNR TCA reporting status"; + container min-tca { + description + "set SNR min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-ax { + description + "set SNR-AX TCA reporting status"; + container min-tca { + description + "set SNR-AX min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-AX max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-bx { + description + "set SNR-BX TCA reporting status"; + container min-tca { + description + "set SNR-BX min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-BX max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-ay { + description + "set SNR-AY TCA reporting status"; + container min-tca { + description + "set SNR-AY min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-AY max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-by { + description + "set SNR-BY TCA reporting status"; + container min-tca { + description + "set SNR-BY min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-BY max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s1 { + description + "set SOP-S1 TCA reporting status"; + container min-tca { + description + "set SOP-S1 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S1 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s2 { + description + "set SOP-S2 TCA reporting status"; + container min-tca { + description + "set SOP-S2 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S2 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s3 { + description + "set SOP-S3 TCA reporting status"; + container min-tca { + description + "set SOP-S3 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S3 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container fec { + description + "Configure fec g709 performance monitoring"; + container threshold { + description + "Configure fec threshold"; + leaf ec-bits { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ec-bits threshold "; + } + } + description + "set EC-BITS threshold"; + } + leaf uc-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "uc-words threshold "; + } + } + description + "set UC-WORDS threshold"; + } + container pre-fec-ber { + description + "Set PRE-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber min threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set pre-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber max threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set pre-fec-ber max threshold"; + } + } + container post-fec-ber { + description + "Set POST-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber min threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set post-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber max threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set post-fec-ber max threshold"; + } + } + container q { + description + "set Q threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q max threshold"; + } + } + container q-margin { + description + "set Q margin threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q margin min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q margin min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q margin max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q margin max threshold"; + } + } + container inst-q-margin { + description + "set Instantaneous Q margin threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Instantaneous Q margin min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Instantaneous Q margin min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Instantaneous Q margin max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Instantaneous Q margin max threshold"; + } + } + } + container report { + description + "set fec TCA reporting status"; + container ec-bits { + description + "set ec-bits TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uc-words { + description + "set uc-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container otnsec { + description + "configure otnsec pm parameters"; + container threshold { + description + "configure threshold for otnsec pm parameters"; + leaf in-blocks { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of odu blocks processed"; + } + leaf in-blocks-enc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of encrypted blocks processed"; + } + leaf in-blocks-un-encrypted { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of un-encrypted blocks processed"; + } + leaf in-blocks-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of Authenticated blocks processed"; + } + leaf in-blocks-un-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of unAuthenticated blocks processed"; + } + leaf in-blocks-sequence-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Sequence Errors"; + } + leaf in-blocks-replay-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Replay Errors"; + } + leaf in-blocks-auth-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for blocks which failed authentication check"; + } + leaf in-blocks-zeroed { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Blocks which were zeroed due to some errors"; + } + leaf out-blocks { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total number of ODU blocks processed"; + } + leaf out-blocks-enc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for no. of encrypted blocks processed"; + } + leaf out-blocks-un-encrypted { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for no. of unencrypted blocks processed"; + } + leaf out-blocks-sequence-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for sequence errors"; + } + leaf out-blocks-zeroed { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for blocks that were zeroed due to some errors"; + } + leaf out-blocks-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of Authenticated blocks processed"; + } + leaf out-blocks-un-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of unAuthenticated blocks processed"; + } + } + container report { + description + "Configure TCA report for otnsec parameters"; + container in-blocks { + description + "Set TCA report for Inblocks"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-enc { + description + "Set TCA report for InBlocksEnc"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-un-encrypted { + description + "Set TCA report for InBlocksUnEncrypted"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-protected { + description + "Set TCA report for InBlocksProtected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-un-portected { + description + "Set TCA report for InBlocksUnPortected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-sequence-errors { + description + "Set TCA report for InBlocksSequenceErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-replay-errors { + description + "Set TCA report for InBlocksReplayErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-auth-errors { + description + "Set TCA report for InBlocksAuthErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-zeroed { + description + "Set TCA report for InBlocksZeroed"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks { + description + "Set TCA report for OutBlocks"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-enc { + description + "Set TCA report for OutBlocksEnc"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-un-encrypted { + description + "Set TCA report for OutBlocksUnEncrypted"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-sequence-errors { + description + "Set TCA report for OutBlocksSequenceErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-zeroed { + description + "Set TCA report for OutBlocksZeroed"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-protected { + description + "Set TCA report for OutBlocksProtected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-un-portected { + description + "Set TCA report for OutBlocksUnPortected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container gfp { + description + "Configure gfp performance monitoring"; + container threshold { + description + "Configure gfp threshold"; + leaf rx-bit-err { + type uint32 { + range "1..4294967295" { + description + "RX-BIT-ERR threshold"; + } + } + description + "set RX-BIT-ERR threshold"; + } + leaf rx-inv-type { + type uint32 { + range "1..4294967295" { + description + "RX-INV-TYP threshold"; + } + } + description + "set RX-INV-TYP threshold"; + } + leaf rx-crc-err { + type uint32 { + range "1..4294967295" { + description + "RX-CRC threshold"; + } + } + description + "set RX-CRC threshold"; + } + leaf rx-lfd-stats { + type uint32 { + range "1..4294967295" { + description + "RX-LFD-STAT threshold"; + } + } + description + "set RX-LFD threshold"; + } + leaf rx-csf-stats { + type uint32 { + range "1..4294967295" { + description + "RX-CSF threshold"; + } + } + description + "set RX-CSF threshold"; + } + } + container report { + description + "set gfp TCA reporting status"; + container rx-bit-err { + description + "set rx-bit-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-inv-type { + description + "set rx-inv-type TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-crc-err { + description + "set rx-crc-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-lfd-stats { + description + "set rx-lfd-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-csf-stats { + description + "set rx-csf-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container prbs { + description + "Configure prbs performance monitoring"; + container threshold { + description + "Configure prbs threshold"; + leaf ebc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ebc threshold <1-18446744073709551615>"; + } + } + description + "set EBC threshold"; + } + leaf found-count { + type xr:Cisco-ios-xr-string { + length "1..10" { + description + "found-count threshold <1-4294967295>"; + } + } + description + "set FOUND-COUNT threshold"; + } + leaf lost-count { + type xr:Cisco-ios-xr-string { + length "1..10" { + description + "lost-count threshold <1-4294967295>"; + } + } + description + "set LOST-COUNT threshold"; + } + } + container report { + description + "set prbs TCA reporting status"; + container ebc { + description + "set ebc TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container found-count { + description + "set found-count TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container lost-count { + description + "set lost-count TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-30-sec { + if-feature "optics_cli_supp_check"; + description + "Configure 30-sec interval parameter"; + container otnsec { + description + "configure otnsec pm parameters"; + container threshold { + description + "configure threshold for otnsec pm parameters"; + leaf in-blocks { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of odu blocks processed"; + } + leaf in-blocks-enc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of encrypted blocks processed"; + } + leaf in-blocks-un-encrypted { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of un-encrypted blocks processed"; + } + leaf in-blocks-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of Authenticated blocks processed"; + } + leaf in-blocks-un-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of unAuthenticated blocks processed"; + } + leaf in-blocks-sequence-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Sequence Errors"; + } + leaf in-blocks-replay-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Replay Errors"; + } + leaf in-blocks-auth-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for blocks which failed authentication check"; + } + leaf in-blocks-zeroed { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for Blocks which were zeroed due to some errors"; + } + leaf out-blocks { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total number of ODU blocks processed"; + } + leaf out-blocks-enc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for no. of encrypted blocks processed"; + } + leaf out-blocks-un-encrypted { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for no. of unencrypted blocks processed"; + } + leaf out-blocks-sequence-errors { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for sequence errors"; + } + leaf out-blocks-zeroed { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for blocks that were zeroed due to some errors"; + } + leaf out-blocks-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of Authenticated blocks processed"; + } + leaf out-blocks-un-protected { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "range : <1-18446744073709551615>"; + } + } + description + "Configure threshold for total no. of unAuthenticated blocks processed"; + } + } + container report { + description + "Configure TCA report for otnsec parameters"; + container in-blocks { + description + "Set TCA report for Inblocks"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-enc { + description + "Set TCA report for InBlocksEnc"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-un-encrypted { + description + "Set TCA report for InBlocksUnEncrypted"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-protected { + description + "Set TCA report for InBlocksProtected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-un-portected { + description + "Set TCA report for InBlocksUnPortected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-sequence-errors { + description + "Set TCA report for InBlocksSequenceErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-replay-errors { + description + "Set TCA report for InBlocksReplayErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-auth-errors { + description + "Set TCA report for InBlocksAuthErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container in-blocks-zeroed { + description + "Set TCA report for InBlocksZeroed"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks { + description + "Set TCA report for OutBlocks"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-enc { + description + "Set TCA report for OutBlocksEnc"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-un-encrypted { + description + "Set TCA report for OutBlocksUnEncrypted"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-sequence-errors { + description + "Set TCA report for OutBlocksSequenceErrors"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-zeroed { + description + "Set TCA report for OutBlocksZeroed"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-protected { + description + "Set TCA report for OutBlocksProtected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container out-blocks-un-portected { + description + "Set TCA report for OutBlocksUnPortected"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container otn { + description + "configure otn g709 performance monitoring"; + container pathmonitor { + description + "configure otn g709 performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-ne { + type uint32 { + range "0..30" { + description + "ES-NE threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "ESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..30" { + description + "SES-NE threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "SESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..30" { + description + "UAS-NE threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..8850600" { + description + "BBE-NE threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "0..100000" { + description + "BBER-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..72" { + description + "FC-NE threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..30" { + description + "ES-FE threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "ESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..30" { + description + "SES-FE threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "SESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..30" { + description + "UAS-FE threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..8850600" { + description + "BBE-FE threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "0..100000" { + description + "BBER-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..72" { + description + "FC-FE threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-ne { + description + "set es-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-ne { + description + "set ses-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-ne { + description + "set uas-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-ne { + description + "set bbe-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-ne { + description + "set fc-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-ne { + description + "set esr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-ne { + description + "set sesr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-ne { + description + "set bber-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-fe { + description + "set bbe-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-fe { + description + "set fc-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-fe { + description + "set esr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-fe { + description + "set sesr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-fe { + description + "set bber-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + container tcms { + description + "configure tcm performance monitoring"; + list tcm { + key "channel-number"; + description + "configure tcm performance monitoring"; + leaf channel-number { + type uint32 { + range "1..6" { + description + " Channel Number"; + } + } + description + "configure tcm performance monitoring"; + } + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-ne { + type uint32 { + range "0..30" { + description + "ES-NE threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "ESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..30" { + description + "SES-NE threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "SESR-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..30" { + description + "UAS-NE threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..8850600" { + description + "BBE-NE threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "0..100000" { + description + "BBER-NE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..72" { + description + "FC-NE threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..30" { + description + "ES-FE threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "ESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..30" { + description + "SES-FE threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "SESR-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..30" { + description + "UAS-FE threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..8850600" { + description + "BBE-FE threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "0..100000" { + description + "BBER-FE threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..72" { + description + "FC-FE threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-fe { + description + "set bbe-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-fe { + description + "set fc-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-fe { + description + "set esr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-fe { + description + "set sesr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-fe { + description + "set bber-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-ne { + description + "set es-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-ne { + description + "set ses-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-ne { + description + "set uas-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-ne { + description + "set bbe-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-ne { + description + "set fc-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-ne { + description + "set esr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-ne { + description + "set sesr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-ne { + description + "set bber-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + } + } + } + container threshold { + description + "Configure threshold on otn parameters"; + leaf es-ne { + type uint32 { + range "0..900" { + description + "es-ne threshold (seconds)"; + } + } + description + "set ES-NE threshold"; + } + leaf esr-ne { + type uint32 { + range "0..100000" { + description + "esr-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-NE threshold"; + } + leaf ses-ne { + type uint32 { + range "0..900" { + description + "ses-ne threshold (seconds)"; + } + } + description + "set SES-NE threshold"; + } + leaf sesr-ne { + type uint32 { + range "0..100000" { + description + "sesr-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-NE threshold"; + } + leaf uas-ne { + type uint32 { + range "0..900" { + description + "uas-ne threshold (seconds)"; + } + } + description + "set UAS-NE threshold"; + } + leaf bbe-ne { + type uint32 { + range "0..8850600" { + description + "bbe-ne threshold"; + } + } + description + "set BBE-NE threshold"; + } + leaf bber-ne { + type uint32 { + range "1..100000" { + description + "bber-ne threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-NE threshold"; + } + leaf fc-ne { + type uint32 { + range "0..72" { + description + "fc-ne threshold"; + } + } + description + "set FC-NE threshold"; + } + leaf es-fe { + type uint32 { + range "0..900" { + description + "es-fe threshold (seconds)"; + } + } + description + "set ES-FE threshold"; + } + leaf esr-fe { + type uint32 { + range "0..100000" { + description + "esr-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set ESR-FE threshold"; + } + leaf ses-fe { + type uint32 { + range "0..900" { + description + "ses-fe threshold (seconds)"; + } + } + description + "set SES-FE threshold"; + } + leaf sesr-fe { + type uint32 { + range "0..100000" { + description + "sesr-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set SESR-FE threshold"; + } + leaf uas-fe { + type uint32 { + range "0..900" { + description + "uas-fe threshold (seconds)"; + } + } + description + "set UAS-FE threshold"; + } + leaf bbe-fe { + type uint32 { + range "0..8850600" { + description + "bbe-fe threshold"; + } + } + description + "set BBE-FE threshold"; + } + leaf bber-fe { + type uint32 { + range "1..100000" { + description + "bber-fe threshold[Ratio parameters range(0-1),eg. 75000 corresponds to 0.75]"; + } + } + description + "set BBER-FE threshold"; + } + leaf fc-fe { + type uint32 { + range "0..72" { + description + "fc-fe threshold"; + } + } + description + "set FC-FE threshold"; + } + } + container report { + description + "set otn TCA reporting status"; + container es-ne { + description + "set es-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-ne { + description + "set ses-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-ne { + description + "set uas-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-ne { + description + "set bbe-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-ne { + description + "set fc-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-ne { + description + "set esr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-ne { + description + "set sesr-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-ne { + description + "set bber-ne TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-pm-ne { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-pm-ne { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-pm-ne { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-pm-ne { + description + "set bbe-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-pm-ne { + description + "set fc-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-pm-ne { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-pm-ne { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-pm-ne { + description + "set bber-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-fe { + description + "set es-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container ses-fe { + description + "set ses-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container uas-fe { + description + "set uas-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bbe-fe { + description + "set bbe-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container fc-fe { + description + "set fc-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container esr-fe { + description + "set esr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container sesr-fe { + description + "set sesr-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container bber-fe { + description + "set bber-fe TCA reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCA reporting"; + } + } + container es-pm-fe { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-pm-fe { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-pm-fe { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-pm-fe { + description + "set bbe-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-pm-fe { + description + "set fc-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-pm-fe { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-pm-fe { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-pm-fe { + description + "set bber-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container gfp { + description + "Configure gfp performance monitoring"; + container threshold { + description + "Configure gfp threshold"; + leaf rx-bit-err { + type uint32 { + range "1..4294967295" { + description + "RX-BIT-ERR threshold"; + } + } + description + "set RX-BIT-ERR threshold"; + } + leaf rx-inv-type { + type uint32 { + range "1..4294967295" { + description + "RX-INV-TYP threshold"; + } + } + description + "set RX-INV-TYP threshold"; + } + leaf rx-crc-err { + type uint32 { + range "1..4294967295" { + description + "RX-CRC threshold"; + } + } + description + "set RX-CRC threshold"; + } + leaf rx-lfd-stats { + type uint32 { + range "1..4294967295" { + description + "RX-LFD threshold"; + } + } + description + "set RX-LFD threshold"; + } + leaf rx-csf-stats { + type uint32 { + range "1..4294967295" { + description + "RX-CSF threshold"; + } + } + description + "set RX-CSF threshold"; + } + } + container report { + description + "set gfp TCA reporting status"; + container rx-bit-err { + description + "set rx-bit-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-inv-type { + description + "set rx-inv-type TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-crc-err { + description + "set rx-crc-err TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-lfd-stats { + description + "set rx-lfd-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container rx-csf-stats { + description + "set rx-csf-stats TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container optics { + description + "Configure optics performance monitoring"; + container threshold { + description + "Configure threshold on optics parameters"; + container lbc { + description + "set lbc threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "lbc min threshold (mA)"; + } + } + description + "set lbc min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "lbc max threshold (mA)"; + } + } + description + "set lbc max threshold"; + } + } + container lbc-pc { + description + "set lbc % threshold"; + leaf min { + type uint32 { + range "0..1000" { + description + "lbc min threshold (in units of 0.1%)"; + } + } + description + "set lbc % min threshold"; + } + leaf max { + type uint32 { + range "0..1000" { + description + "lbc max threshold (in units of 0.1%)"; + } + } + description + "set lbc % max threshold"; + } + } + container opt { + description + "set opt threshold in uW"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "opt min threshold (uW)"; + } + } + description + "set opt min threshold in uW"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "opt max threshold (uW)"; + } + } + description + "set opt max threshold in uW"; + } + } + container opr { + description + "set opr threshold in uW "; + leaf min { + type uint32 { + range "1..4294967294" { + description + "opr min threshold (uW)"; + } + } + description + "set opr min threshold in uW"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "opr max threshold (uW)"; + } + } + description + "set opr max threshold in uW"; + } + } + container dgd { + description + "set differential group delay threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "differential group delay min threshold (1/100th of ps)"; + } + } + description + "set differential group delay min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "differential delay group max threshold (1/100th of ps)"; + } + } + description + "set differential group delay max threshold"; + } + } + container sopmd { + description + "set second order polarization mode dispersion threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "polarization mode dispersion min threshold (in units of 0.01 ps^2)"; + } + } + description + "set polarization mode dispersion min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "polarization mode dispersion max threshold ( in units of 0.01 ps^2)"; + } + } + description + "set polarization mode dispersion max threshold"; + } + } + container osnr { + description + "set optical signal to noise ratio threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "optical signal to noise ratio min threshold (1/100th of dB)"; + } + } + description + "set optical signal to noise ratio min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "optical signal to noise ratio max threshold (1/100th of dB)"; + } + } + description + "set optical siganl to noise max threshold"; + } + } + container pdl { + description + "set polarization dependent loss threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "polarization dependent loss min threshold (1/100th of dB)"; + } + } + description + "set polarization dependent loss min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "polarization dependent loss max threshold (1/100th of dB)"; + } + } + description + "set polarization dependent loss max threshold"; + } + } + container pcr { + description + "set polarization change rate threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "polarization change rate min threshold (in units of 0.01 rad/s)"; + } + } + description + "set polarization change rate min threshold"; + } + leaf max { + type uint32 { + range "1..4294967294" { + description + "polarization change rate max threshold (in units of 0.01 rad/s)"; + } + } + description + "set polarization change rate max threshold"; + } + } + container pn { + description + "set phase noise threshold"; + leaf min { + type uint32 { + range "1..4294967294" { + description + "phase noise min threshold (1/1000 dB)"; + } + } + description + "set phase noise min threshold"; + } + leaf max { + type uint32 { + range "1..4294967290" { + description + "phase noise max threshold (1/1000 dB)"; + } + } + description + "set phase noise max threshold"; + } + } + container rx-sig-pow { + description + "set rx sig power threshold in uW"; + leaf min { + type uint32 { + range "1..4294967290" { + description + " rx sig power threshold in uW"; + } + } + description + "rx sig power min threshold in uW "; + } + leaf max { + type uint32 { + range "1..4294967290" { + description + "rx sig power max threshold in uW"; + } + } + description + "set rx sig power max threshold in uW"; + } + } + container snr { + description + "set SNR threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR min threshold"; + } + } + description + "set SNR min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR max threshold "; + } + } + description + "set SNR max threshold "; + } + } + container snr-ax { + description + "set SNR AX threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR AX min threshold"; + } + } + description + "set SNR AX min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR AX max threshold "; + } + } + description + "set SNR AX max threshold "; + } + } + container snr-bx { + description + "set SNR BX threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR BX min threshold"; + } + } + description + "set SNR BX min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR BX max threshold "; + } + } + description + "set SNR BX max threshold "; + } + } + container snr-ay { + description + "set SNR AY threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR AY min threshold"; + } + } + description + "set SNR AY min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR AY max threshold "; + } + } + description + "set SNR AY max threshold "; + } + } + container snr-by { + description + "set SNR BY threshold"; + leaf min { + type uint32 { + range "1..2147483646" { + description + "SNR BY min threshold"; + } + } + description + "set SNR BY min threshold "; + } + leaf max { + type uint32 { + range "1..2147483646" { + description + "SNR BY max threshold "; + } + } + description + "set SNR BY max threshold "; + } + } + container cd { + description + "set chromatic dispersion threshold"; + leaf min { + type int32 { + range "-350000..350000" { + description + "chromatic dispersion min threshold (ps/nm)"; + } + } + description + "set chromatic dispersion min threshold"; + } + leaf max { + type int32 { + range "-350000..350000" { + description + "chromatic dispersion max threshold (ps/nm)"; + } + } + description + "set chromatic dispersion max threshold"; + } + } + container opt-dbm { + description + "set opt threshold in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opt min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opt max threshold in dbm"; + } + } + container opr-dbm { + description + "set opr threshold in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opr min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set opr max threshold in dbm"; + } + } + container rx-sig-pow-dbm { + description + "set rx-sig-pow threshold in dbm"; + leaf min { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set rx-sig-pow min threshold in dbm"; + } + leaf max { + type int32 { + range "-3000..6633" { + description + "Enter 4 digit value ;Input value 3000 for 30.00dbm"; + } + } + description + "set rx-sig-pow max threshold in dbm"; + } + } + container low-freq-off { + description + "set low signal freq offset threshold in Mhz"; + leaf min { + type int32 { + range "-1500..1500" { + description + "low signal freq offset min threshold in Mhz"; + } + } + description + "set low signal freq offset min threshold in Mhz"; + } + leaf max { + type int32 { + range "-1500..1500" { + description + "low signal freq offset max threshold in Mhz"; + } + } + description + "set low signal freq offset max threshold in Mhz"; + } + } + container sop-s1 { + description + "set SOP S1 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S1 threshold "; + } + } + description + "set SOP S1 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S1 max threshold "; + } + } + description + "set SOP S1 max threshold "; + } + } + container sop-s2 { + description + "set SOP S2 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S2 threshold "; + } + } + description + "set SOP S2 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S2 max threshold "; + } + } + description + "set SOP S2 max threshold "; + } + } + container sop-s3 { + description + "set SOP S3 threshold "; + leaf min { + type int32 { + range "-100..100" { + description + "SOP S3 threshold "; + } + } + description + "set SOP S3 min threshold "; + } + leaf max { + type int32 { + range "-100..100" { + description + "SOP S3 max threshold "; + } + } + description + "set SOP S3 max threshold "; + } + } + } + container report { + description + "set optics TCA reporting status"; + container lbc { + description + "set lbc TCA reporting status"; + container min-tca { + description + "set lbc min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set lbc max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container lbc-pc { + description + "set lbc % TCA reporting status"; + container min-tca { + description + "set lbc min % TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set lbc max % TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container opt { + description + "set opt/opt-dbm TCA reporting status"; + container min-tca { + description + "set opt/opt-dbm min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set opt/opt-dbm max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container opr { + description + "set opr/opr-dbm TCA reporting status"; + container min-tca { + description + "set opr/opr-dbm min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set opr/opr-dbm max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container cd { + description + "set chromatic dispersion TCA reporting status"; + container min-tca { + description + "set chromatic dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set chromatic dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container dgd { + description + "set differential group delay TCA reporting status"; + container min-tca { + description + "set differentail group delay min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set differential group delay max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sopmd { + description + "set second order polarization mode dispersion TCA reporting status"; + container min-tca { + description + "set polarization mode dispersion min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization mode dispersion max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container osnr { + description + "set optical signal to noise ratio TCA reporting status"; + container min-tca { + description + "set optical signal to noise ratio min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set optical signal to noise ratio max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pdl { + description + "set polarization dependent loss TCA reporting status"; + container min-tca { + description + "set polarization dependent loss min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization dependent loss max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pcr { + description + "set polarization change rate TCA reporting status"; + container min-tca { + description + "set polarization change rate min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set polarization change rate max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container pn { + description + "set phase noise TCA reporting status"; + container min-tca { + description + "set phase noise min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set phase noise max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container rx-sig-pow { + description + "set rx sig power TCA reporting status"; + container min-tca { + description + "set rx sig power(uW/dBm) min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set rx sig power(uW/dBm) max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container low-freq-off { + description + "set low signal freq offset TCA reporting status"; + container min-tca { + description + "set low signal freq offset min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set low signal freq offset max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr { + description + "set SNR TCA reporting status"; + container min-tca { + description + "set SNR min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-ax { + description + "set SNR-AX TCA reporting status"; + container min-tca { + description + "set SNR-AX min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-AX max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-bx { + description + "set SNR-BX TCA reporting status"; + container min-tca { + description + "set SNR-BX min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-BX max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-ay { + description + "set SNR-AY TCA reporting status"; + container min-tca { + description + "set SNR-AY min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-AY max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container snr-by { + description + "set SNR-BY TCA reporting status"; + container min-tca { + description + "set SNR-BY min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SNR-BY max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s1 { + description + "set SOP-S1 TCA reporting status"; + container min-tca { + description + "set SOP-S1 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S1 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s2 { + description + "set SOP-S2 TCA reporting status"; + container min-tca { + description + "set SOP-S2 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S2 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + container sop-s3 { + description + "set SOP-S3 TCA reporting status"; + container min-tca { + description + "set SOP-S3 min TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container max-tca { + description + "set SOP-S3 max TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container fec { + description + "Configure fec g709 performance monitoring"; + container threshold { + description + "Configure fec threshold"; + leaf ec-bits { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ec-bits threshold "; + } + } + description + "set EC-BITS threshold"; + } + leaf uc-words { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "uc-words threshold "; + } + } + description + "set UC-WORDS threshold"; + } + container pre-fec-ber { + description + "Set PRE-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber min threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set pre-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "pre-fec-ber max threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set pre-fec-ber max threshold"; + } + } + container post-fec-ber { + description + "Set POST-FEC-BER Thresholds"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber min threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set post-fec-ber min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "post-fec-ber max threshold range : <1-18446744073709551615>. BER is based on E-15, set value = 150, equivalent BER = 1.5E-13"; + } + } + description + "set post-fec-ber max threshold"; + } + } + container q { + description + "set Q threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q max threshold"; + } + } + container q-margin { + description + "set Q margin threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q margin min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q margin min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q margin max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Q margin max threshold"; + } + } + container inst-q-margin { + description + "set Instantaneous Q margin threshold"; + leaf min { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Instantaneous Q margin min threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Instantaneous Q margin min threshold"; + } + leaf max { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "Q margin max threshold <1-18446744073709551615>set value = 150, equivalent value = 1.5"; + } + } + description + "set Instantaneous Q margin max threshold"; + } + } + } + container report { + description + "set fec TCA reporting status"; + container ec-bits { + description + "set ec-bits TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uc-words { + description + "set uc-words TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container prbs { + description + "Configure prbs performance monitoring"; + container threshold { + description + "Configure prbs threshold"; + leaf ebc { + type xr:Cisco-ios-xr-string { + length "1..20" { + description + "ebc threshold <1-18446744073709551615>"; + } + } + description + "set EBC threshold"; + } + leaf found-count { + type xr:Cisco-ios-xr-string { + length "1..10" { + description + "found-count threshold <1-4294967295>"; + } + } + description + "set FOUND-COUNT threshold"; + } + leaf lost-count { + type xr:Cisco-ios-xr-string { + length "1..10" { + description + "lost-count threshold <1-4294967295>"; + } + } + description + "set LOST-COUNT threshold"; + } + } + container report { + description + "set prbs TCA reporting status"; + container ebc { + description + "set ebc TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container found-count { + description + "set found-count TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container lost-count { + description + "set lost-count TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-cfg.yang new file mode 100644 index 000000000..0190e2b9e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-cfg.yang @@ -0,0 +1,1709 @@ +module Cisco-IOS-XR-um-cont-optics-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-optics-cfg"; + prefix um-cont-optics-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a2; + } + 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 cont-optics package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-12 { + description + "Added support for ots-tone-detect-oob, tone-frequency, ots-tone-pattern-expected, + tone-pattern, ots-tone-rate, oms-tx-low-threshold, oms-rx-low-threshold, + tone-pattern-expected and tone-rate + 2022-07-11 + Added missing description statement to nodes + 2022-07-07 + Added tone-detect-oob support + 2022-06-01 + Adjusted controller augmentation hierarchy + 2021-12-07 + Added container otdr + 2021-11-19 + Corrected range of egress-ampli-gain, ingress-ampli-gain and raman-tx-power/value as per CLI + 2021-11-17 + Updated add-drop-channel regex to match CLI command"; + semver:module-version "3.0.0"; + } + revision 2021-08-24 { + description + "Updated model as per 24I DT image CLI command"; + semver:module-version "2.0.0"; + } + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature optics { + description + "optics"; + } + + feature optics_config_supp_check { + description + "optics config supp check"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container dwdm-carrier { + description + "Configure the DWDM Carrier Channel"; + container grid-50ghz { + description + "Configure Wavelength in 50GHz grid"; + leaf itu-ch { + type uint32 { + range "1..100" { + description + "Select an ITU channel number; C Band: 1-100"; + } + } + must "not(../../grid-100mhz/frequency)"; + must "not(../frequency or ../wavelength)"; + description + "Configure the ITU 50GHz Grid ITU Channel"; + } + leaf frequency { + type uint32 { + range "19115..19610" { + description + "Enter 5-digit Frequency data; e.g. 19580 for 195.8 THz"; + } + } + must "not(../../grid-100mhz/frequency)"; + must "not(../itu-ch or ../wavelength)"; + description + "Configure Frequency and Map to ITU Channel"; + } + leaf wavelength { + type uint32 { + range "1528773..1568362" { + description + "Enter 7-digit Wavelength data; e.g. 1532290 for 1532.29 nm"; + } + } + must "not(../../grid-100mhz/frequency)"; + must "not(../itu-ch or ../frequency)"; + description + "Configure Wavelength and Map to ITU Channel"; + } + } + container grid-100mhz { + description + "Configure Wavelength in 100MHz Grid"; + leaf frequency { + type uint32 { + range "1861000..1961000" { + description + "Select a Frequency in 100MHz, C Band: 1911500-1961000, L Band: 1861000-1908500"; + } + } + must + "not(../../grid-50ghz/itu-ch or + ../../grid-50ghz/frequency or + ../../grid-50ghz/wavelength)"; + description + "Configure Frequency in 100MHz"; + } + } + } + leaf transmit-power { + type int32 { + range "-190..50" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder transmit power "; + } + leaf cd-min { + type int32 { + range "-350000..350000" { + description + "Select chromatic dispersion min"; + } + } + description + "Chromatic Dispersion min"; + } + leaf cd-max { + type int32 { + range "-350000..350000" { + description + "Select chromatic dispersion max"; + } + } + description + "Chromatic Dispersion max"; + } + leaf cd-high-threshold { + type int32 { + range "-350000..350000" { + description + "Select CD value"; + } + } + description + "Configure maximum acceptable CD value"; + } + leaf cd-low-threshold { + type int32 { + range "-350000..350000" { + description + "Select CD value"; + } + } + description + "Configure minimum acceptable CD value"; + } + leaf osnr-low-threshold { + type uint32 { + range "0..4000" { + description + "Select osnr value (in units of 0.01db)"; + } + } + description + "Configure minimum acceptable OSNR value in 0.01db"; + } + leaf dgd-high-threshold { + type uint32 { + range "0..18000" { + description + "Select Differential Group Delay value (in units of 0.01ps)"; + } + } + description + "Configure maximum acceptable Differential Group Delay in 0.01ps"; + } + container transmit-shutdown { + presence "Indicates a transmit-shutdown node is configured."; + description + "Shutdown the transmit laser"; + } + leaf rx-low-threshold { + type int32 { + range "-400..300" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder receive power low threshold"; + } + leaf rx-high-threshold { + type int32 { + range "-400..300" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder receive power high threshold"; + } + leaf tx-low-threshold { + type int32 { + range "-400..300" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder low transmit power threshold"; + } + leaf tx-high-threshold { + type int32 { + range "-400..300" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder high transmit power threshold"; + } + leaf lbc-high-threshold { + if-feature "optics_config_supp_check"; + type uint32 { + range "0..100" { + description + "Select power level (in units of percentage)"; + } + } + description + "Configure high laser bias current threshold"; + } + leaf soak-time { + type uint32 { + range "10..28800" { + description + "Select power level (in units of seconds)"; + } + } + description + "Configure soak time for automatic in-service"; + } + leaf loopback { + type enumeration { + enum "internal" { + value 1; + description + "Select internal loopback mode"; + } + enum "line" { + value 2; + description + "Select line loopback mode"; + } + } + description + "Configure loopback mode "; + } + leaf modulation { + type enumeration { + enum "Bpsk" { + value 1; + description + "Select BPSK modulation type"; + } + enum "Qpsk" { + value 2; + description + "Select QPSK modulation type"; + } + enum "8Qam" { + value 3; + description + "Select 8QAM modulation type"; + } + enum "16Qam" { + value 4; + description + "Select 16QAM modulation type"; + } + enum "32Qam" { + value 5; + description + "Select 32QAM modulation type"; + } + enum "64Qam" { + value 6; + description + "Select 64QAM modulation type"; + } + enum "Bpsk-Qpsk" { + value 7; + description + "Select BPSK_QPSK modulation type"; + } + enum "Qpsk-8Qam" { + value 8; + description + "Select QPSK_8QAM modulation type"; + } + enum "8Qam-16Qam" { + value 9; + description + "Select 8QAM_16QAM modulation type"; + } + enum "16Qam-32Qam" { + value 10; + description + "Select 16QAM_32QAM modulation type"; + } + enum "32Qam-64Qam" { + value 11; + description + "Select 32QAM_64QAM modulation type"; + } + } + description + "Configure modulation types"; + } + leaf bits-per-symbol { + type xr:Cisco-ios-xr-string { + length "1..9" { + description + "Enter Bits per Symbol; e.g 13456789"; + } + } + description + "Select bits-per-symbol for this controller"; + } + leaf baud-rate { + type xr:Cisco-ios-xr-string { + length "1..10" { + description + "Enter Baud Rate in GBd; e.g 32.4567892"; + } + } + description + "Set baud-rate for this controller in GBd"; + } + container perf-mon { + if-feature "optics_config_supp_check"; + description + "To enable Performance Monitoring"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable performance monitoring"; + } + } + leaf fec { + type enumeration { + enum "EnhancedHG15" { + value 1; + description + "Forward Error Correction Enhanced_HG15"; + } + enum "EnhancedHG25" { + value 2; + description + "Forward Error Correction Enhanced_HG25"; + } + enum "EnhancedHG15DE" { + value 4; + description + "Forward Error Correction Enhanced_HG15_DE"; + } + enum "EnhancedHG25DE" { + value 8; + description + "Forward Error Correction Enhanced_HG25_DE"; + } + enum "None" { + value 32; + description + "Forward Error Correction None"; + } + enum "EnhancedI7" { + value 128; + description + "Forward Error Correction Enhanced_I_7"; + } + enum "EnhancedI4" { + value 256; + description + "Forward Error Correction Enhanced_I_4"; + } + enum "EnhancedSwizzle" { + value 512; + description + "Forward Error Correction Enhanced_Swizzle"; + } + enum "EnhancedHG20" { + value 1024; + description + "Forward Error Correction Enhanced_HG20"; + } + enum "EnhancedHG7" { + value 2048; + description + "Forward Error Correction Enhanced_HG7"; + } + enum "EnhancedSD20" { + value 4096; + description + "Forward Error Correction Soft-Decision 20"; + } + enum "EnhancedSD7" { + value 8192; + description + "Forward Error Correction Soft-Decision 7"; + } + enum "EnhancedSD15" { + value 16384; + description + "Forward Error Correction Soft-Decision 15"; + } + enum "EnhancedSD27" { + value 32768; + description + "Forward Error Correction Soft-Decision 27"; + } + enum "EnhancedSD15DE" { + value 65536; + description + "Forward Error Correction Soft-Decision 15 with DE"; + } + enum "EnhancedStaircaseDE" { + value 131072; + description + "Forward Error Correction Enhanced Staircase FEC with DE"; + } + enum "OFEC" { + value 262144; + description + "Forward Error Correction O_FEC"; + } + enum "CFEC" { + value 524288; + description + "Forward Error Correction C_FEC"; + } + enum "Standard" { + value 1048576; + description + "Forward Error Correction Standard"; + } + } + description + "Configure Forward Error Correction mode"; + } + leaf ext-description { + type string { + length "1..800" { + description + "Ext-Description for this controller"; + } + } + description + "Set ext-description for this controller"; + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container link-status { + presence "Indicates a link-status node is configured."; + description + "Enable interface and line-protocol state change alarms"; + } + } + } + leaf filter-roll-off-factor { + type xr:Cisco-ios-xr-string { + length "5" { + description + "RRC Filter Roll-Off factor in increments of 0.001"; + } + } + description + "RRC Filter Roll-Off factor."; + } + leaf enh-colorless-mode { + type uint32 { + range "1..3" { + description + "Select enhanced colorless mode"; + } + } + description + "Enhanced Colorless Mode."; + } + leaf enh-sop-tol-mode { + type uint32 { + range "1..3" { + description + "Select enhanced SOP tolerance mode"; + } + } + description + "Enhanced SOP Tolerance Mode."; + } + leaf nleq-comp-mode { + type uint32 { + range "1..4" { + description + "Select non linear effect compenstation mode"; + } + } + description + "Non Linear Effect Compenstation."; + } + leaf cross-pol-gain-mode { + type uint32 { + range "1..15" { + description + "Select carrier phase recovery cross polarization gain mode"; + } + } + description + "Carrier Phase Recovery Cross Polarization Gain Mode."; + } + leaf cross-pol-weight-mode { + type uint32 { + range "1..7" { + description + "Select carrier phase recovery cross polarization weight mode"; + } + } + description + "Carrier Phase Recovery Cross Polarization Weight Mode."; + } + leaf cpr-win-mode { + type uint32 { + range "1..4" { + description + "Select carrier phase recovery window mode"; + } + } + description + "Carrier Phase Recovery Window Mode."; + } + leaf cpr-ext-win-mode { + type uint32 { + range "1..9" { + description + "Select carrier phase recovery extended window mode"; + } + } + description + "Carrier Phase Recovery Extended Window Mode."; + } + container submarine-params { + description + "Proprietary Submarine Parameters"; + list submarine-param { + key "parameter-type"; + description + "Proprietary Submarine Parameters"; + leaf parameter-type { + type uint32 { + range "1..10" { + description + "Proprietary Submarine Parameter Type"; + } + } + description + "Proprietary Submarine Parameters"; + } + leaf parameter-value { + type uint32 { + range "1..1000" { + description + "Proprietary Submarine Parameter Value"; + } + } + mandatory true; + description + "Proprietary Submarine Parameters"; + } + } + } + container rx-voa { + description + "rx-voa configuration."; + leaf target-power { + type int32 { + range "-190..30" { + description + "Receive Target Power in 0.1 dbm."; + } + } + description + "Receive Target Power"; + } + leaf fixed-ratio { + type int32 { + range "100..1700" { + description + "Receive Ratio of Optical Attenuation in 0.01 db"; + } + } + description + "Receive Ratio of Optical Attenuation."; + } + } + container transceiver { + description + "Configure the transceiver module"; + container disable { + if-feature "optics_config_supp_check"; + presence "Indicates a disable node is configured."; + description + "disable the transceiver module"; + } + } + leaf ampli-gain { + type int32 { + range "0..500" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure AMPLI GAIN"; + } + leaf ampli-gain-range { + type enumeration { + enum "normal" { + value 1; + description + "Select Ampli Gain Range as Normal"; + } + enum "extended" { + value 2; + description + "Select Ampli Gain Range as Extended"; + } + } + description + "Ampli Gain Range"; + } + container osri { + description + "Configure Optical safety remote interlock (OSRI)"; + container on { + must "not(../off)"; + presence "Indicates a on node is configured."; + description + "Enable OSRI "; + } + container off { + must "not(../on)"; + presence "Indicates a off node is configured."; + description + "Disable OSRI "; + } + } + leaf safety-control-mode { + type enumeration { + enum "auto" { + value 1; + description + "Select Safety Control Mode: Automatic"; + } + enum "disabled" { + value 2; + description + "Disable Safety Control Mode"; + } + } + description + "Configure safety Control Mode "; + } + leaf ampli-channel-power { + type int32 { + range "-400..300" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure amplifier per channel power set point"; + } + leaf channel-power-max-delta { + type int32 { + range "0..200" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure max delta among all measured channel powers "; + } + leaf ampli-gain-thr-deg-low { + type int32 { + range "0..500" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure low amplifier gain degrade theshold for gain alarm"; + } + leaf ampli-gain-thr-deg-high { + type int32 { + range "0..500" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure high amplifier gain degrade theshold for gain alarm"; + } + leaf ampli-control-mode { + type enumeration { + enum "automatic" { + value 1; + description + "Select Amplifier Working Mode: Automatic"; + } + enum "manual" { + value 2; + description + "Select Amplifier Working Mode: Manual"; + } + } + description + "Configure amplifier working mode "; + } + leaf ampli-tilt { + type int32 { + range "-50..50" { + description + "Select level (in units of 0.1dB)"; + } + } + description + "Configure amplifier tilt"; + } + leaf rx-voa-attenuation { + type int32 { + range "0..200" { + description + "Select attenuation level (in units of 0.1dBm)"; + } + } + description + "Configure RX Voa Attenuation Setpoint"; + } + leaf tx-voa-attenuation { + type int32 { + range "0..200" { + description + "Select attenuation level (in units of 0.1dB)"; + } + } + description + "Configure TX voa Attenuation Setpoint"; + } + leaf tx-enable { + type uint32 { + range "0..1" { + description + "0:Disable TX, 1:Enable TX"; + } + } + description + "Configure TX param"; + } + leaf rx-enable { + type uint32 { + range "0..1" { + description + "0:Disable RX, 1:Enable RX"; + } + } + description + "Configure RX param"; + } + leaf rx-low-threshold-delta { + type int32 { + range "0..300" { + description + "Set revertive threshold delta value (in units of 0.1dBm)"; + } + } + description + "Configure revertive hysteresis value for the low fail threshold "; + } + leaf ampli-channel-psd { + type int32 { + range "0..800000" { + description + "Select psd level (in units of 0.001 nW/MHz)"; + } + } + description + "Configure amplifier per channel psd set point"; + } + leaf rx-low-threshold-psd { + type int32 { + range "0..800000" { + description + "Select psd level (in units of 0.001 nW/MHz)"; + } + } + description + "Configure transponder low receive psd threshold"; + } + leaf add-drop-channel { + type xr:Interface-name { + pattern "Ots-Och.*"; + } + description + "configures optical cross connect"; + } + leaf ingress-ampli-gain { + type int32 { + range "80..380" { + description + "Select power level (in units of 0.1dB)"; + } + } + description + "Configure INGRESS AMPLI GAIN"; + } + leaf ingress-ampli-gain-range { + type enumeration { + enum "normal" { + value 1; + description + "Select Ampli Gain Range as Normal"; + } + enum "extended" { + value 2; + description + "Select Ampli Gain Range as Extended"; + } + } + description + "Ingress Ampli Gain Range"; + } + leaf ingress-ampli-gain-thr-deg-low { + type int32 { + range "0..500" { + description + "Select power level (in units of 0.1dB)"; + } + } + description + "Configure low amplifier gain degrade theshold for gain alarm"; + } + leaf ingress-ampli-gain-thr-deg-high { + type int32 { + range "0..500" { + description + "Select power level (in units of 0.1dB)"; + } + } + description + "Configure high amplifier gain degrade theshold for gain alarm"; + } + leaf ingress-ampli-tilt { + type int32 { + range "-50..50" { + description + "Select level (in units of 0.1dB)"; + } + } + description + "Configure amplifier tilt"; + } + leaf egress-ampli-gain { + type int32 { + range "80..380" { + description + "Select power level (in units of 0.1dB)"; + } + } + description + "Configure EGRESS AMPLI GAIN"; + } + leaf egress-ampli-gain-range { + type enumeration { + enum "normal" { + value 1; + description + "Select Ampli Gain Range as Normal"; + } + enum "extended" { + value 2; + description + "Select Ampli Gain Range as Extended"; + } + } + description + "egress Ampli Gain Range"; + } + leaf egress-ampli-gain-thr-deg-low { + type int32 { + range "0..500" { + description + "Select power level (in units of 0.1dB)"; + } + } + description + "Configure low amplifier gain degrade theshold for gain alarm"; + } + leaf egress-ampli-gain-thr-deg-high { + type int32 { + range "0..500" { + description + "Select power level (in units of 0.1dB)"; + } + } + description + "Configure high amplifier gain degrade theshold for gain alarm"; + } + leaf egress-ampli-tilt { + type int32 { + range "-50..50" { + description + "Select level (in units of 0.1dB)"; + } + } + description + "Configure amplifier tilt"; + } + container raman-tx-powers { + description + "configure Raman Transmit Power Param"; + list raman-tx-power { + key "raman-tx-power-id"; + description + "configure Raman Transmit Power Param"; + leaf raman-tx-power-id { + type uint32 { + range "1..5" { + description + "RAMAN Transmit Pump Instance"; + } + } + description + "configure Raman Transmit Power Param"; + } + leaf value { + type uint32 { + range "3500..36000" { + description + "Select power level (in units of 0.01mW)"; + } + } + description + "set value"; + } + } + } + leaf ingress-ampli-safety-control-mode { + type enumeration { + enum "auto" { + value 1; + description + "Select Safety Control Mode: Automatic"; + } + enum "disabled" { + value 2; + description + "Disable Safety Control Mode"; + } + } + description + "Configure ingress ampli safety Control Mode "; + } + container ingress-ampli-osri { + description + "Configure Optical safety remote interlock (OSRI)"; + container on { + must "not(../off)"; + presence "Indicates a on node is configured."; + description + "Enable OSRI "; + } + container off { + must "not(../on)"; + presence "Indicates a off node is configured."; + description + "Disable OSRI "; + } + } + container ingress-ampli-force-apr { + description + "Configure ingress Ampli Force Automatic Power Reduction"; + container on { + must "not(../off)"; + presence "Indicates a on node is configured."; + description + "Enable Force APR "; + } + container off { + must "not(../on)"; + presence "Indicates a off node is configured."; + description + "Disable Force APR "; + } + } + leaf egress-ampli-safety-control-mode { + type enumeration { + enum "auto" { + value 1; + description + "Select Safety Control Mode: Automatic"; + } + enum "disabled" { + value 2; + description + "Disable Safety Control Mode"; + } + } + description + "Configure egress ampli safety Control Mode "; + } + container egress-ampli-osri { + description + "Configure egress Optical safety remote interlock (OSRI)"; + container on { + must "not(../off)"; + presence "Indicates a on node is configured."; + description + "Enable OSRI "; + } + container off { + must "not(../on)"; + presence "Indicates a off node is configured."; + description + "Disable OSRI "; + } + } + container egress-ampli-force-apr { + description + "Configure egress ampli Force Automatic Power Reduction"; + container on { + must "not(../off)"; + presence "Indicates a on node is configured."; + description + "Enable Force APR "; + } + container off { + must "not(../on)"; + presence "Indicates a off node is configured."; + description + "Disable Force APR "; + } + } + container egress-ampli-br { + description + "Configure egress ampli back reflection"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable Back Reflection "; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable Back Reflection "; + } + } + leaf egress-ampli-br-high-threshold { + type int32 { + range "-500..300" { + description + "Select value (in units of 0.1dBm)"; + } + } + description + "Configure egress ampli back reflection high threshold"; + } + leaf raman-safety-control-mode { + type enumeration { + enum "auto" { + value 1; + description + "Select Safety Control Mode: Automatic"; + } + enum "disabled" { + value 2; + description + "Disable Safety Control Mode"; + } + } + description + "Configure Raman safety Control Mode "; + } + container raman-osri { + description + "Configure raman Optical safety remote interlock (OSRI)"; + container on { + must "not(../off)"; + presence "Indicates a on node is configured."; + description + "Enable OSRI "; + } + container off { + must "not(../on)"; + presence "Indicates a off node is configured."; + description + "Disable OSRI "; + } + } + container raman-force-apr { + description + "Configure raman Force Automatic Power Reduction"; + container on { + must "not(../off)"; + presence "Indicates a on node is configured."; + description + "Enable Force APR "; + } + container off { + must "not(../on)"; + presence "Indicates a off node is configured."; + description + "Disable Force APR "; + } + } + container raman-br { + description + "Configure raman back reflection"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable Back Reflection "; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable Back Reflection "; + } + } + leaf raman-br-high-threshold { + type int32 { + range "-500..300" { + description + "Select value (in units of 0.1dBm)"; + } + } + description + "Configure raman back reflection high threshold"; + } + container ingress-channel-slices { + description + "Configure Ingress Channel Slice"; + list ingress-channel-slice { + key "ingress-channel-slice-id"; + description + "Configure Ingress Channel Slice"; + leaf ingress-channel-slice-id { + type uint32 { + range "1..1548" { + description + "Ingress Channel Slice"; + } + } + description + "Configure Ingress Channel Slice"; + } + leaf attn { + type uint32 { + range "0..250" { + description + "Select attenuation (in units of 0.1 dB)"; + } + } + description + "set attenuation"; + } + } + } + container egress-channel-slices { + description + "Configure egress Channel Slice"; + list egress-channel-slice { + key "egress-channel-slice-id"; + description + "Configure egress Channel Slice"; + leaf egress-channel-slice-id { + type uint32 { + range "1..1548" { + description + "egress Channel Slice"; + } + } + description + "Configure egress Channel Slice"; + } + leaf attn { + type uint32 { + range "0..250" { + description + "Select attenuation (in units of 0.1 dB)"; + } + } + description + "set attenuation"; + } + } + } + leaf channel-attn { + type uint32 { + range "0..250" { + description + "Select value (in units of 0.1dB)"; + } + } + description + "Configure channel attenuation"; + } + container otdr { + description + "OTDR Configuration for OTS controller"; + container rx { + description + "OTDR rx configuration"; + leaf refractive-index { + type uint32 { + range "1000000..2000000" { + description + "Select value"; + } + } + description + "Configure OTDR rx refractive-index (Value in 0.000001)"; + } + leaf back-scattering { + type int32 { + range "-9000..-7000" { + description + "Select value "; + } + } + description + "Configure OTDR rx back-scattering (Value in 0.01 dB)"; + } + container expert { + description + "OTDR rx expert configuration"; + leaf capture-start { + type uint32 { + range "0..10000000" { + description + "Select value "; + } + } + description + "Configure OTDR rx capture-start (Value in cm)"; + } + leaf capture-end { + type uint32 { + range "0..15000000" { + description + "Select value "; + } + } + description + "Configure OTDR rx capture-end (Value in cm)"; + } + leaf scan-duration { + type uint32 { + range "0..180" { + description + "Select value "; + } + } + description + "Configure OTDR rx scan-duration (Value in seconds)"; + } + leaf pulse-width { + type uint32 { + range "1..500000" { + description + "Select value "; + } + } + description + "Configure OTDR rx pulse-width (Value in nano seconds)"; + } + } + container auto { + description + "OTDR rx auto configuration"; + leaf excess-reflection-threshold { + type int32 { + range "-50..-10" { + description + "Select value "; + } + } + description + "Configure OTDR rx excess-reflection-threshold (Value in dB)"; + } + leaf raman-setpoint { + type uint32 { + range "0..170" { + description + "Select value "; + } + } + description + "Configure OTDR rx raman-setpoint (Value in 0.1 dB)"; + } + leaf reflectance-threshold { + type int32 { + range "-50..-10" { + description + "Select value "; + } + } + description + "Configure OTDR rx reflectance-threshold (Value in dB)"; + } + leaf splice-loss-threshold { + type uint32 { + range "200..5000" { + description + "Select value "; + } + } + description + "Configure OTDR rx splice-loss-threshold (Value in 0.001 dB)"; + } + } + } + container tx { + description + "OTDR tx configuration"; + leaf refractive-index { + type uint32 { + range "1000000..2000000" { + description + "Select value "; + } + } + description + "Configure OTDR tx refractive-index (Value in 0.000001)"; + } + leaf back-scattering { + type int32 { + range "-9000..-7000" { + description + "Select value "; + } + } + description + "Configure OTDR tx back-scattering (Value in 0.01 dB)"; + } + container expert { + description + "OTDR tx expert configuration"; + leaf capture-start { + type uint32 { + range "0..10000000" { + description + "Select value "; + } + } + description + "Configure OTDR tx capture-start (Value in cm)"; + } + leaf capture-end { + type uint32 { + range "0..15000000" { + description + "Select value "; + } + } + description + "Configure OTDR tx capture-end (Value in cm)"; + } + leaf scan-duration { + type uint32 { + range "0..180" { + description + "Select value "; + } + } + description + "Configure OTDR tx scan-duration (Value in seconds)"; + } + leaf pulse-width { + type uint32 { + range "1..500000" { + description + "Select value "; + } + } + description + "Configure OTDR tx pulse-width (Value in nano seconds)"; + } + } + container auto { + description + "OTDR tx auto configuration"; + leaf excess-reflection-threshold { + type int32 { + range "-50..-10" { + description + "Select value "; + } + } + description + "Configure OTDR tx excess-reflection-threshold (Value in dB)"; + } + leaf raman-setpoint { + type uint32 { + range "0..170" { + description + "Select value "; + } + } + description + "Configure OTDR tx raman-setpoint (Value in 0.1 dB)"; + } + leaf reflectance-threshold { + type int32 { + range "-50..-10" { + description + "Select value "; + } + } + description + "Configure OTDR tx reflectance-threshold (Value in dB)"; + } + leaf splice-loss-threshold { + type uint32 { + range "200..5000" { + description + "Select value "; + } + } + description + "Configure OTDR tx splice-loss-threshold (Value in 0.001 dB)"; + } + } + } + container scan-mode { + description + "OTDR scan-mode configuration"; + container expert { + presence "Indicates a expert node is configured."; + description + "Configure OTDR scan-mode to expert"; + } + } + } + container fastpoll { + description + "To enable fastpoll"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable fastpoll"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable fastpoll"; + } + } + container network { + description + "Configure OPTICS network information"; + container srlg { + description + "Submode to configure shared risks for the connection"; + container sets { + description + "Configure Network SRLG sets"; + list set { + key "set-index"; + description + "Configure Network SRLG sets"; + leaf set-index { + type uint32 { + range "1..17" { + description + "Set index"; + } + } + description + "Configure Network SRLG sets"; + } + leaf-list network-srlg-value { + type uint32 { + range "0..4294967294" { + description + "Network SRLG values"; + } + } + min-elements 1; + max-elements "6"; + description + "Network SRLG values"; + } + } + } + } + } + container lane-id { + description + "Lane Number for optics port"; + list lane-number { + key "number"; + description + "Lane Number"; + leaf number { + type uint32 { + range "1..12" { + description + "Lane Number"; + } + } + description + "Lane Number"; + } + leaf lane-description { + type string { + length "1..800" { + description + "Description"; + } + } + mandatory true; + description + "Description of the channel"; + } + } + } + container tone-detect-oob { + presence "Indicates a tone-detect-oob node is configured."; + description + "Configure tone detect oob"; + } + leaf tone-rate { + type int32 { + range "2..25" { + description + "Select bit rate (bits per second)"; + } + } + description + "Configure bit rate"; + } + leaf tone-pattern-expected { + type string { + length "1..64" { + description + "Enter Hex Values(Max Length 64 Bytes)"; + } + } + description + "Configure Tone Pattern Expected"; + } + leaf oms-rx-low-threshold { + type int32 { + range "-400..300" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder receive power low threshold"; + } + leaf oms-tx-low-threshold { + type int32 { + range "-400..300" { + description + "Select power level (in units of 0.1dBm)"; + } + } + description + "Configure transponder low transmit power threshold"; + } + leaf ots-tone-rate { + type int32 { + range "2..25" { + description + "Select bit rate (bits per second)"; + } + } + description + "Configure bit rate"; + } + leaf tone-pattern { + type string { + length "1..64" { + description + "Enter Hex Values(Max Length 64 Bytes)"; + } + } + description + "Configure Tone Pattern"; + } + leaf ots-tone-pattern-expected { + type string { + length "1..64" { + description + "Enter Hex Values(Max Length 64 Bytes)"; + } + } + description + "Configure Tone Pattern Expected"; + } + leaf tone-frequency { + type string { + length "1..11" { + description + "Enter values between 191.175 THz - 196.175 THz(in steps of 100 MHz)"; + } + } + description + "Configure Tone Frequency"; + } + container ots-tone-detect-oob { + presence "Indicates a tone-detect-oob node is configured."; + description + "Configure tone detect oob"; + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + augment "/a2:snmp-server/a2:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container optical { + presence "Indicates a optical node is configured."; + description + "Enable SNMP Cisco optical traps"; + } + container optical-ots { + presence "Indicates a optical-ots node is configured."; + description + "Enable SNMP Cisco optical ots traps"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-mode-cfg.yang new file mode 100644 index 000000000..3ca0900ff --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-mode-cfg.yang @@ -0,0 +1,90 @@ +module Cisco-IOS-XR-um-cont-optics-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-optics-mode-cfg"; + prefix um-cont-optics-mode-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-optics-mode package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-04-28 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature optics { + description + "optics"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container mode { + when "../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + description + "Configure intf mode"; + leaf enable { + type enumeration { + enum "etm" { + value 1; + description + "Enable egress tm on the interface"; + } + } + description + "configure this node"; + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-speed-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-speed-cfg.yang new file mode 100644 index 000000000..9e9f95cde --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-optics-speed-cfg.yang @@ -0,0 +1,89 @@ +module Cisco-IOS-XR-um-cont-optics-speed-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-optics-speed-cfg"; + prefix um-cont-optics-speed-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-optics-speed package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2022-06-01 { + description + "Adjusted controller augmentation hierarchy"; + } + revision 2022-02-03 { + description + "Initial release"; + } + + feature optics { + description + "optics"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + leaf speed { + when "../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "1g | 10g | 25g | 40g | 50g | 100g | 200g | 400g | none"; + } + } + description + "Configure port speed"; + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-otu-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-otu-cfg.yang new file mode 100644 index 000000000..c420ddefb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-otu-cfg.yang @@ -0,0 +1,576 @@ +module Cisco-IOS-XR-um-cont-otu-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-otu-cfg"; + prefix um-cont-otu-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-otu package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-05-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature otu_config_supp_check { + description + "otu config supp check"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container perf-mon { + description + "Performance Monitoring"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable performance monitoring"; + } + } + container gcc0 { + presence "Indicates a gcc0 node is configured."; + description + "Configure GCC0(General Communication Channel)"; + } + container threshold { + description + "Configure threshold for Signal Failure and Signal Degrade"; + leaf sd { + type uint32 { + range "5..9" { + description + "Signal Degrade Threshold Value(Range 1.0e-n)"; + } + } + description + "Configure SD(Signal Degrade) Threshold"; + } + leaf sf { + type uint32 { + range "5..9" { + description + "Signal Failure Threshold Value(Range 1.0e-n)"; + } + } + description + "Configure SF(Signal Failure) Threshold"; + } + leaf sm-tca { + type uint32 { + range "3..9" { + description + "TCA Threshold Value(Range 10e-n, Default 3)"; + } + } + description + "Configure TCA(Threshold crossing alert) Threshold"; + } + } + leaf secondary-admin-state { + type enumeration { + enum "normal" { + value 0; + description + "Normal, Admin-state in normal"; + } + enum "maintenance" { + value 1; + description + "Maintenance, Admin-state under maintenance"; + } + } + description + "Configure the secondary admin state of the controller"; + } + container tti { + description + "Configure TTI(Trail Trace Identifier)"; + container sent { + description + "Set transmit Trail Trace Identifier"; + container sapi { + description + "Enter Source Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container dapi { + description + "Enter Destination Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container operator-specific { + description + "Enter Operator Specific field"; + leaf ascii { + type string { + length "1..32" { + description + "ASCII text (Max 32 characters)"; + } + } + must "not(../hex)"; + description + "Enter ascii string"; + } + leaf hex { + type string { + length "1..64" { + description + "Hex Text (Max 64 - The string length should be an even number)"; + } + } + must "not(../ascii)"; + description + "Enter hex string of even length"; + } + } + } + container expected { + description + "Set expected Trail Trace Identifier"; + container sapi { + description + "Enter Source Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container dapi { + description + "Enter Destination Access Point Identifier field 1-15"; + leaf ascii { + type string { + length "1..15" { + description + "ASCII text (Max 15 characters)"; + } + } + description + "Enter ascii string"; + } + } + container operator-specific { + description + "Enter Operator Specific field"; + leaf ascii { + type string { + length "1..32" { + description + "ASCII text (Max 32 characters)"; + } + } + must "not(../hex)"; + description + "Enter ascii string"; + } + leaf hex { + type string { + length "1..64" { + description + "Hex Text (Max 64 - The string length should be an even number)"; + } + } + must "not(../ascii)"; + description + "Enter hex string of even length"; + } + } + } + } + leaf fec { + type enumeration { + enum "none" { + value 1; + description + "No Forward Error Correction"; + } + enum "Standard" { + value 2; + description + "Forward Error Correction Standard"; + } + enum "EnhancedI7" { + value 4; + description + "Forward Error Correction Enhanced_I_7"; + } + enum "EnhancedI4" { + value 8; + description + "Forward Error Correction Enhanced_I_4"; + } + enum "EnhancedSwizzle" { + value 16; + description + "Forward Error Correction Enhanced_Swizzle"; + } + enum "EnhancedHG20" { + value 32; + description + "Forward Error Correction Enhanced_HG20"; + } + enum "EnhancedHG7" { + value 64; + description + "Forward Error Correction Enhanced_HG7"; + } + enum "EnhancedSD20" { + value 128; + description + "Forward Error Correction Soft-Decision 20"; + } + enum "EnhancedSD7" { + value 256; + description + "Forward Error Correction Soft-Decision 7"; + } + enum "EnhancedSD15" { + value 512; + description + "Forward Error Correction Soft-Decision 15"; + } + enum "EnhancedSD27" { + value 1024; + description + "Forward Error Correction Soft-Decision 27"; + } + enum "EnhancedSD15DE" { + value 2048; + description + "Forward Error Correction Soft-Decision 15 with DE"; + } + enum "EnhancedStaircaseDE" { + value 4096; + description + "Forward Error Correction Enhanced Staircase FEC with DE"; + } + enum "OFEC" { + value 8192; + description + "Forward Error Correction O_FEC"; + } + enum "CFEC" { + value 16384; + description + "Forward Error Correction C_FEC"; + } + } + description + "Configure Forward Error Correction mode"; + } + leaf loopback { + type enumeration { + enum "line" { + value 2; + description + "Select network (facility) loopback"; + } + enum "internal" { + value 4; + description + "Select network (terminal) loopback"; + } + } + description + "Configure OTU controller loopback mode"; + } + container srlg { + description + "Submode to configure shared risks for the OTU connection"; + container sets { + description + "Configure Network SRLG sets"; + list set { + must "network-srlg-values"; + key "set-id"; + description + "Configure Network SRLG sets"; + leaf set-id { + type uint32 { + range "1..17" { + description + "Set index"; + } + } + description + "Configure Network SRLG sets"; + } + leaf-list network-srlg-values { + type uint32 { + range "0..4294967294" { + description + "Network SRLG values (max 6 per set)"; + } + } + max-elements "6"; + description + "Network SRLG values (max 6 per set)"; + } + } + } + } + container proactive { + presence "Indicates a proactive node is configured."; + description + "Enable Proactive Protection Feature"; + container trigger { + description + "Configure trigger thresholds"; + leaf threshold { + type uint32 { + range "1..9" { + description + "Bit error rate coefficient (x of xE-y)"; + } + } + must "../bit-error-rate-power"; + description + "Set values x and y of xE-y"; + } + leaf bit-error-rate-power { + type uint32 { + range "3..9" { + description + "Bit error rate power (y of xE-y)"; + } + } + must "../threshold"; + description + "Bit error rate power (y of xE-y)"; + } + leaf window { + type uint32 { + range "10..10000" { + description + "Integration window for FRR trigger in MS"; + } + } + description + "Number of times threshold crossing is tested"; + } + } + container revert { + description + "Configure Revert thresholds"; + leaf threshold { + type uint32 { + range "1..9" { + description + "Bit error rate coefficient (x of xE-y)"; + } + } + must "../bit-error-rate-power"; + description + "Set values x and y of xE-y"; + } + leaf bit-error-rate-power { + type uint32 { + range "4..10" { + description + "Bit error rate power (y of xE-y)"; + } + } + must "../threshold"; + description + "Bit error rate power (y of xE-y)"; + } + leaf window { + type uint32 { + range "2000..10000" { + description + "Integration window for FRR revert in MS"; + } + } + description + "Number of times threshold crossing is tested"; + } + } + } + container flexo { + description + "Configure flexo layer"; + leaf gid { + type uint32 { + range "1..1048575" { + description + "Set group id value for flexo"; + } + } + description + "Set Group ID"; + } + leaf iid { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "iid string separated by (,) from 1 to 256 "; + } + } + must "../gid"; + description + "Configure IID "; + } + } + container prbs { + description + "Configure pseudo random bit sequence test"; + container mode { + description + "prbs-mode for the interface"; + container source { + presence "Indicates a source node is configured."; + description + "source mode"; + container pattern { + description + "Select pattern for prbs mode"; + container pn31 { + presence "Indicates a pn31 node is configured."; + description + "prbs pattern pn31"; + } + } + container pn23 { + presence "Indicates a pn23 node is configured."; + description + "prbs pattern pn23"; + } + container pn11 { + presence "Indicates a pn11 node is configured."; + description + "prbs pattern pn11"; + } + container pn7 { + presence "Indicates a pn7 node is configured."; + description + "prbs pattern pn7"; + } + container pn15 { + presence "Indicates a pn15 node is configured."; + description + "prbs pattern pn15"; + } + container invertedpn31 { + presence "Indicates a invertedpn31 node is configured."; + description + "prbs pattern inverted pn31"; + } + container invertedpn11 { + presence "Indicates a invertedpn11 node is configured."; + description + "prbs pattern inverted pn11"; + } + } + container sink { + presence "Indicates a sink node is configured."; + description + "sink mode"; + container pattern { + description + "Select pattern for prbs mode"; + container pn31 { + presence "Indicates a pn31 node is configured."; + description + "prbs pattern pn31"; + } + } + } + container source-sink { + presence "Indicates a source-sink node is configured."; + description + "source-sink mode"; + container pattern { + description + "Select pattern for prbs mode"; + container pn31 { + presence "Indicates a pn31 node is configured."; + description + "prbs pattern pn31"; + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-port-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-port-mode-cfg.yang new file mode 100644 index 000000000..fa25cf216 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-port-mode-cfg.yang @@ -0,0 +1,1046 @@ +module Cisco-IOS-XR-um-cont-port-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-port-mode-cfg"; + prefix um-cont-port-mode-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-port-mode package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-15 { + description + "Added cem-packetize option for framing under port-mode nodes + 2022-07-11 + Added missing description statement to nodes + 2022-06-28 + Removed none option from rate node under ethernet + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "2.0.0"; + } + revision 2020-08-20 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature optics { + description + "optics"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container port-mode { + when "../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + description + "Configure the port-mode"; + container ethernet { + must "not(../fc or ../otn or ../sdh or ../sonet or ../cpri)"; + presence "Indicates a ethernet node is configured."; + description + "Ethernet portmode type"; + leaf framing { + type enumeration { + enum "opu0" { + value 1; + description + "opu0 for framing"; + } + enum "opu1e" { + value 3; + description + "opu1e for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu2e" { + value 6; + description + "opu2e for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + enum "opu3e1" { + value 9; + description + "opu3e1 for framing"; + } + enum "opu3e2" { + value 10; + description + "opu3e2 for framing"; + } + enum "opu4" { + value 11; + description + "opu4 for framing"; + } + enum "opuflex" { + value 12; + description + "opuflex for framing"; + } + enum "packet" { + value 15; + description + "packet for framing"; + } + enum "cem-packetize" { + value 17; + description + "CEM packetization"; + } + } + mandatory true; + description + "framing for portmode"; + } + leaf mapping { + when "../framing != 'opu3e1' and ../framing != 'opu3e2' and ../framing != 'packet'"; + type enumeration { + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + enum "GfpF" { + value 1; + description + "gfp_f for mapping"; + } + enum "GfpF-Ext" { + value 6; + description + "gfp_f_ext for mapping"; + } + enum "wis" { + value 5; + description + "wis for mapping"; + } + } + description + "mapping for portmode"; + } + leaf rate { + when "../mapping = 'wis' or ../framing = 'opuflex'"; + type enumeration { + enum "OC192" { + value 4; + description + "oc192 for rate"; + } + enum "STM64" { + value 9; + description + "STM64 for rate"; + } + enum "100GE" { + value 11; + description + "100GE for rate"; + } + enum "10GE" { + value 12; + description + "10GE for rate"; + } + enum "40GE" { + value 13; + description + "40GE for rate"; + } + enum "1GE" { + value 14; + description + "1GE for rate"; + } + enum "25GE" { + value 15; + description + "25GE for rate"; + } + } + description + "Portmode rate"; + } + } + container sonet { + must "not(../fc or ../otn or ../sdh or ../ethernet or ../cpri)"; + presence "Indicates a sonet node is configured."; + description + "Sonet portmode type"; + leaf framing { + type enumeration { + enum "opu0" { + value 1; + description + "opu0 for framing"; + } + enum "opu1" { + value 2; + description + "opu1 for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + enum "WIS" { + value 16; + description + "Wis for framing"; + } + enum "cem-packetize" { + value 17; + description + "CEM packetization"; + } + } + mandatory true; + description + "framing for portmode"; + } + leaf mapping { + type enumeration { + enum "amp" { + value 2; + description + "amp for mapping"; + } + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + } + description + "mapping for portmode"; + } + leaf rate { + when "../framing = 'opu0'"; + type enumeration { + enum "none" { + value 0; + description + "No rate"; + } + enum "OC12" { + value 2; + description + "OC12 for rate"; + } + enum "OC3" { + value 1; + description + "OC3 for rate"; + } + } + description + "Portmode rate"; + } + } + container fc { + must "not(../sonet or ../otn or ../sdh or ../ethernet or ../cpri)"; + presence "Indicates a fc node is configured."; + description + "FC portmode type"; + leaf framing { + type enumeration { + enum "opu1f" { + value 4; + description + "opu1f for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu2e" { + value 6; + description + "opu2e for framing"; + } + enum "opu2f" { + value 7; + description + "opu2f for framing"; + } + enum "cem-packetize" { + value 17; + description + "CEM packetization"; + } + } + mandatory true; + description + "framing for portmode"; + } + } + container otn { + must "not(../sonet or ../fc or ../sdh or ../ethernet or ../cpri)"; + presence "Indicates a otn node is configured."; + description + "Otn portmode type"; + leaf framing { + type enumeration { + enum "opu1" { + value 2; + description + "opu1 for framing"; + } + enum "opu1e" { + value 3; + description + "opu1e for framing"; + } + enum "opu1f" { + value 4; + description + "opu1e for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu2e" { + value 6; + description + "opu2e for framing"; + } + enum "opu2f" { + value 7; + description + "opu2e for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + enum "opu3e1" { + value 9; + description + "opu3e1 for framing"; + } + enum "opu3e2" { + value 10; + description + "opu3e2 for framing"; + } + enum "opu4" { + value 11; + description + "opu4 for framing"; + } + enum "opuc2" { + value 13; + description + "opuc2 for framing"; + } + enum "opuc4" { + value 14; + description + "opuc4 for framing"; + } + enum "opuflex" { + value 12; + description + "opuflex for framing"; + } + enum "cem-packetize" { + value 17; + description + "CEM packetization"; + } + } + mandatory true; + description + "framing for portmode"; + } + } + container sdh { + must "not(../sonet or ../fc or ../otn or ../ethernet or ../cpri)"; + presence "Indicates a sdh node is configured."; + description + "SDH portmode type"; + leaf framing { + type enumeration { + enum "opu0" { + value 1; + description + "opu0 for framing"; + } + enum "opu1" { + value 2; + description + "opu1 for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + enum "WIS" { + value 16; + description + "WIS for framing"; + } + enum "cem-packetize" { + value 17; + description + "CEM packetization"; + } + } + mandatory true; + description + "framing for portmode"; + } + leaf mapping { + type enumeration { + enum "none" { + value 0; + description + "No mapping"; + } + enum "amp" { + value 2; + description + "amp for mapping"; + } + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + } + description + "mapping for portmode"; + } + leaf rate { + when "../mapping = 'opu0'"; + type enumeration { + enum "none" { + value 0; + description + "No rate value"; + } + enum "STM1" { + value 6; + description + "STM1 for rate"; + } + enum "STM4" { + value 7; + description + "STM4 for rate"; + } + } + description + "Portmode rate"; + } + } + container cpri { + must "not(../sonet or ../fc or ../otn or ../ethernet or ../sdh)"; + must "role/primary or role/subordinate"; + presence "Indicates a cpri node is configured."; + description + "port-mode type cpri"; + container role { + description + "this cpri controller node's role"; + container primary { + must "not(../subordinate)"; + presence "Indicates a primary node is configured."; + description + "CPRI port act as primary"; + } + container subordinate { + must "not(../primary)"; + presence "Indicates a subordinate node is configured."; + description + "CPRI port act as subordinate"; + } + leaf-list datarate-list { + type enumeration { + enum "614" { + value 1; + description + "Rate of 614 MB"; + } + enum "1228" { + value 2; + description + "Rate of 1.228 GB"; + } + enum "2457" { + value 3; + description + "Rate of 2.457 GB"; + } + enum "3072" { + value 4; + description + "Rate of 3.072 GB"; + } + enum "4915" { + value 5; + description + "Rate of 4.915 GB"; + } + enum "6144" { + value 6; + description + "Rate of 6.144 GB"; + } + enum "9830" { + value 7; + description + "Rate of 9.830 GB"; + } + enum "10137" { + value 9; + description + "Rate of 10.137 GB"; + } + } + min-elements 1; + max-elements "4"; + description + "rate list for cpri port"; + } + } + } + } + container breakout-modes { + when "../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + description + "Configure the breakout-mode"; + list breakout-mode { + must "ethernet or fc or otn or sdh or sonet"; + key "lane-number"; + description + "Configure the breakout-mode"; + leaf lane-number { + type uint32 { + range "1..10" { + description + "Lane number "; + } + } + description + "Configure the breakout-mode"; + } + container ethernet { + must "not(../fc or ../otn or ../sdh or ../sonet)"; + presence "Indicates a ethernet node is configured."; + description + "Ethernet portmode type"; + leaf framing { + type enumeration { + enum "opu0" { + value 1; + description + "opu0 for framing"; + } + enum "opu1e" { + value 3; + description + "opu1e for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu2e" { + value 6; + description + "opu2e for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + enum "opu3e1" { + value 9; + description + "opu3e1 for framing"; + } + enum "opu3e2" { + value 10; + description + "opu3e2 for framing"; + } + enum "opu4" { + value 11; + description + "opu4 for framing"; + } + enum "opuflex" { + value 12; + description + "opuflex for framing"; + } + enum "packet" { + value 15; + description + "packet for framing"; + } + } + mandatory true; + description + "framing for portmode"; + } + leaf mapping { + when "../framing != 'opu3e1' and ../framing != 'opu3e2' and ../framing != 'packet'"; + type enumeration { + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + enum "GfpF" { + value 1; + description + "gfp_f for mapping"; + } + enum "GfpF-Ext" { + value 6; + description + "gfp_f_ext for mapping"; + } + enum "wis" { + value 5; + description + "wis for mapping"; + } + } + description + "mapping for portmode"; + } + leaf rate { + when "../mapping = 'wis' or ../framing = 'opuflex'"; + type enumeration { + enum "none" { + value 0; + description + "No rate"; + } + enum "OC192" { + value 4; + description + "oc192 for rate"; + } + enum "STM64" { + value 9; + description + "STM64 for rate"; + } + enum "100GE" { + value 11; + description + "100GE for rate"; + } + enum "10GE" { + value 12; + description + "10GE for rate"; + } + enum "40GE" { + value 13; + description + "40GE for rate"; + } + enum "1GE" { + value 14; + description + "1GE for rate"; + } + enum "25GE" { + value 15; + description + "25GE for rate"; + } + } + description + "Portmode rate"; + } + } + container sonet { + must "not(../fc or ../otn or ../sdh or ../ethernet)"; + presence "Indicates a sonet node is configured."; + description + "Sonet portmode type"; + leaf framing { + type enumeration { + enum "opu0" { + value 1; + description + "opu0 for framing"; + } + enum "opu1" { + value 2; + description + "opu1 for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + enum "WIS" { + value 16; + description + "Wis for framing"; + } + } + mandatory true; + description + "framing for portmode"; + } + leaf mapping { + type enumeration { + enum "amp" { + value 2; + description + "amp for mapping"; + } + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + } + description + "mapping for portmode"; + } + leaf rate { + when "../framing = 'opu0'"; + type enumeration { + enum "none" { + value 0; + description + "No rate"; + } + enum "OC12" { + value 2; + description + "OC12 for rate"; + } + enum "OC3" { + value 1; + description + "OC3 for rate"; + } + } + description + "Portmode rate"; + } + } + container fc { + must "not(../sonet or ../otn or ../sdh or ../ethernet)"; + presence "Indicates a fc node is configured."; + description + "FC portmode type"; + leaf framing { + type enumeration { + enum "opu1f" { + value 4; + description + "opu1f for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu2e" { + value 6; + description + "opu2e for framing"; + } + enum "opu2f" { + value 7; + description + "opu2f for framing"; + } + } + mandatory true; + description + "framing for portmode"; + } + } + container otn { + must "not(../sonet or ../fc or ../sdh or ../ethernet)"; + presence "Indicates a otn node is configured."; + description + "Otn portmode type"; + leaf framing { + type enumeration { + enum "opu1" { + value 2; + description + "opu1 for framing"; + } + enum "opu1e" { + value 3; + description + "opu1e for framing"; + } + enum "opu1f" { + value 4; + description + "opu1e for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu2e" { + value 6; + description + "opu2e for framing"; + } + enum "opu2f" { + value 7; + description + "opu2e for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + enum "opu3e1" { + value 9; + description + "opu3e1 for framing"; + } + enum "opu3e2" { + value 10; + description + "opu3e2 for framing"; + } + enum "opu4" { + value 11; + description + "opu4 for framing"; + } + enum "opuc2" { + value 13; + description + "opuc2 for framing"; + } + enum "opuc4" { + value 14; + description + "opuc4 for framing"; + } + enum "opuflex" { + value 12; + description + "opuflex for framing"; + } + } + mandatory true; + description + "framing for portmode"; + } + } + container sdh { + must "not(../sonet or ../fc or ../otn or ../ethernet)"; + presence "Indicates a sdh node is configured."; + description + "SDH portmode type"; + leaf framing { + type enumeration { + enum "opu0" { + value 1; + description + "opu0 for framing"; + } + enum "opu1" { + value 2; + description + "opu1 for framing"; + } + enum "opu2" { + value 5; + description + "opu2 for framing"; + } + enum "opu3" { + value 8; + description + "opu3 for framing"; + } + } + mandatory true; + description + "framing for portmode"; + } + leaf mapping { + type enumeration { + enum "amp" { + value 2; + description + "amp for mapping"; + } + enum "bmp" { + value 3; + description + "bmp for mapping"; + } + enum "gmp" { + value 4; + description + "gmp for mapping"; + } + } + description + "mapping for portmode"; + } + leaf rate { + when "../mapping = 'opu0'"; + type enumeration { + enum "none" { + value 0; + description + "STM1 for rate"; + } + enum "STM1" { + value 6; + description + "STM1 for rate"; + } + enum "STM4" { + value 7; + description + "STM4 for rate"; + } + } + description + "Portmode rate"; + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + container hw-module { + description + "Configure h/w module"; + container ains { + description + "Configure AINS Params"; + leaf set-default-time { + type uint32 { + range "0..2880" { + description + "ains timer in minutes"; + } + } + description + "Set default ains time"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-cfg.yang new file mode 100644 index 000000000..b4074c298 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-cfg.yang @@ -0,0 +1,882 @@ +module Cisco-IOS-XR-um-cont-sonet-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-sonet-cfg"; + prefix um-cont-sonet-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-sonet package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container ais-shut { + presence "Indicates a ais-shut node is configured."; + description + "Enable sending SONET/SDH LAIS when shutdown"; + } + container ais-pwfault { + presence "Indicates a ais-pwfault node is configured."; + description + "Enable sending SONET/SDH LAIS for L2Port when PW fails"; + } + container clock { + description + "Configure SONET/SDH port clock"; + leaf source { + type enumeration { + enum "internal" { + value 0; + description + "Select internal clock"; + } + enum "line" { + value 1; + description + "Select clock recovered from line (default)"; + } + } + description + "Configure SONET/SDH port TX clock source"; + } + } + leaf framing { + type enumeration { + enum "sonet" { + value 0; + description + "Select SONET framing (default)"; + } + enum "sdh" { + value 1; + description + "Select SDH framing"; + } + } + description + "Configure SONET/SDH framing"; + } + container loopback { + description + "Configure SONET/SDH controller loopback mode"; + container internal { + must "not(../line)"; + presence "Indicates a internal node is configured."; + description + "Select local (terminal) loopback"; + } + container line { + must "not(../internal)"; + presence "Indicates a line node is configured."; + description + "Select network (facility) loopback"; + } + } + container down-when-looped { + presence "Indicates a down-when-looped node is configured."; + description + "Configure SONET/SDH controller into down-when-looped mode"; + } + container s1byte { + description + "Configure SONET/SDH controller to s1byte ignore mode"; + container ignore { + presence "Indicates a ignore node is configured."; + description + "Ignore S1 byte"; + } + } + container overhead { + description + "Configure SONET/SDH SOH/LOH byte/bit values"; + leaf j0 { + type uint32 { + range "0..255" { + description + "J0/C1 byte value (default 0x01)"; + } + } + description + "Specify STS identifier (J0/C1) byte"; + } + leaf s1s0 { + type uint32 { + range "0..3" { + description + "s1 & s0 bits value (default 0x0)"; + } + } + description + "Specify bits s1 and s0 of H1 byte"; + } + } + container report { + description + "Configure SONET/SDH section/line alarm reporting"; + container b1-tca { + description + "Set B1 BER Threshold Crossing Alert (TCA) reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container b2-tca { + description + "Set B2 BER Threshold Crossing Alert (TCA) reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container lais { + presence "Indicates a lais node is configured."; + description + "Set Line Alarm Indication Signal reporting status"; + } + container lrdi { + presence "Indicates a lrdi node is configured."; + description + "Set Line Remote Defect Indication reporting status"; + } + container sd-ber { + presence "Indicates a sd-ber node is configured."; + description + "Set LBIP BER in excess of SD threshold reporting status"; + } + container sf-ber { + description + "Set LBIP BER in excess of SF threshold reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container slof { + description + "Set Section Loss of Frame reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container slos { + description + "Set Section Loss of Signal reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + } + container threshold { + description + "Configure SONET/SDH section/line BER threshold values"; + leaf b1-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B1 BER Threshold Crossing Alert (TCA) threshold"; + } + leaf b2-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B2 BER Threshold Crossing Alert (TCA) threshold"; + } + leaf sd-ber { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set Signal Degrade BER threshold"; + } + leaf sf-ber { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 3)"; + } + } + description + "Set Signal Fail BER threshold"; + } + } + container line { + description + "Configure SONET/SDH line parameters"; + container delay { + description + "alarm soaking"; + leaf trigger { + type uint32 { + range "0..60000" { + description + "Time in msec to soak before declaring the alarm (Default No Delay)"; + } + } + description + "trigger time"; + } + leaf clear { + type uint32 { + range "1000..180000" { + description + "Time in msec to soak before clearing the alarm (Default 10 seconds)"; + } + } + description + "clear time"; + } + } + container down { + description + "Set Line Down"; + container sd-ber { + presence "Indicates a sd-ber node is configured."; + description + "With Presence of SD BER"; + } + } + } + container path { + presence "Indicates a path node is configured."; + description + "Configure SONET/SDH path parameters"; + container delay { + description + "alarm soaking"; + leaf trigger { + type uint32 { + range "0..60000" { + description + "Time in msec to soak before declaring the alarm (Default No Delay)"; + } + } + description + "trigger time"; + } + leaf clear { + type uint32 { + range "1000..180000" { + description + "Time in msec to soak before clearing the alarm (Default 10 seconds)"; + } + } + description + "clear time"; + } + } + container b3-ber-prdi { + presence "Indicates a b3-ber-prdi node is configured."; + description + "Enable sending PRDI when configured"; + } + container path-down-pplm { + description + "Set PPLM sonet path action"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container ais-shut { + presence "Indicates a ais-shut node is configured."; + description + "Enable sending SONET/SDH PAIS when shutdown"; + } + container overhead { + description + "Configure SONET/SDH POH byte/bit values"; + leaf c2 { + type uint32 { + range "0..255" { + description + "C2 byte value (default 0xCF)"; + } + } + description + "Specify STS SPE content (C2) byte"; + } + leaf j1 { + type string { + length "1..62" { + description + "ASCII text (max 62 characters)"; + } + } + description + "Configure SONET/SDH path trace (J1) transmit buffer"; + } + leaf expected-trace { + type string { + length "1..62" { + description + "ASCII text (max 62 characters)"; + } + } + description + "Configure SONET/SDH expected path trace"; + } + } + container report { + description + "Configure SONET/SDH path alarm reporting"; + container b3-tca { + description + "Set B3 BER Threshold Crossing Alert (TCA) reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container pais { + presence "Indicates a pais node is configured."; + description + "Set Path Alarm Indication Signal reporting status"; + } + container plop { + description + "Set Path Loss of Pointer reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container prdi { + presence "Indicates a prdi node is configured."; + description + "Set Path Remote Defect Indication reporting status"; + } + container pplm { + presence "Indicates a pplm node is configured."; + description + "Set Path Payload Mismatch Defect reporting status"; + } + container ptim { + presence "Indicates a ptim node is configured."; + description + "Set Path Trace Identity Mismatch Defect reporting status"; + } + container puneq { + presence "Indicates a puneq node is configured."; + description + "Set Path Unequipped Defect Indication reporting status"; + } + } + container scrambling { + description + "Configure SONET/SDH SPE scrambling"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container threshold { + description + "Configure SONET/SDH path BER threshold values"; + leaf b3-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B3 BER Threshold Crossing Alert (TCA) threshold"; + } + } + container disable { + description + "Configure SONET controller's state on detecting PATH alarms"; + container alarm-down { + presence "Indicates a alarm-down node is configured."; + description + "Do not bring controller state to down on any path alarm"; + } + } + container uneq-shut { + presence "Indicates a uneq-shut node is configured."; + description + "Configure sending SONET/SDH UNEQuipped when shutdown"; + } + } + container stses { + description + "Configure SONET path parameters"; + list sts { + key "path-range"; + description + "Configure SONET path parameters"; + leaf path-range { + type uint32 { + range "1..48" { + description + "Possible range is 1-3 for OC3, 1-12 for OC12 .."; + } + } + description + "Configure SONET path parameters"; + } + leaf mode { + type enumeration { + enum "atm" { + value 13; + description + "clear channel carrying atm"; + } + enum "pos-scramble" { + value 11; + description + "clear channel carrying POS scramble"; + } + enum "pos-unscramble" { + value 12; + description + "clear channel carrying POS unscramble"; + } + enum "t3" { + value 9; + description + "sonet path carrying T3"; + } + enum "vt15" { + value 6; + description + "sonet path carrying VT15"; + } + enum "vt15-t1" { + value 7; + description + "sonet path carrying VT15 T1"; + } + enum "vt2" { + value 8; + description + "sonet path carrying VT2"; + } + } + description + "Configure mode for the path"; + } + leaf width { + type uint32 { + range "1..768" { + description + "Valid width(1,3,12,48..), natural sts boundaries(1,4,7,10,13..)"; + } + } + description + "Configure width for the path"; + } + container report { + description + "Configure SONET/SDH path alarm reporting"; + container b3-tca { + description + "Set B3 BER Threshold Crossing Alert (TCA) reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container pais { + presence "Indicates a pais node is configured."; + description + "Set Path Alarm Indication Signal reporting status"; + } + container plop { + description + "Set Path Loss of Pointer reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container prdi { + presence "Indicates a prdi node is configured."; + description + "Set Path Remote Defect Indication reporting status"; + } + container puneq { + presence "Indicates a puneq node is configured."; + description + "Set Path Unequipped Defect Indication reporting status"; + } + } + container threshold { + description + "Configure SONET path BER threshold values"; + leaf b3-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B3 BER Threshold Crossing Alert (TCA) threshold"; + } + } + container overhead { + description + "Configure SONET/SDH POH byte/bit values"; + leaf c2 { + type uint32 { + range "0..255" { + description + "C2 byte value (default 0xCF)"; + } + } + description + "Specify STS SPE content (C2) byte"; + } + leaf j1 { + type string { + length "1..62" { + description + "ASCII text (max 62 characters)"; + } + } + description + "Configure SONET/SDH path trace (J1) buffer"; + } + } + container delay { + description + "alarm soaking"; + leaf trigger { + type uint32 { + range "0..60000" { + description + "Time in msec to soak before declaring the alarm(Non-intelligent SPA 0-511 msec; Intelligent SPA 0-60000 msec)"; + } + } + description + "trigger time"; + } + leaf clear { + type uint32 { + range "1000..180000" { + description + "Time in msec to soak before clearing the alarm(Non-intelligent SPA(Not Supported); Intelligent SPA 1000-180000 msec)"; + } + } + description + "clear time"; + } + } + } + } + container aus { + description + "Configure SDH path parameters"; + list au { + key "path-range"; + description + "Configure SDH path parameters"; + leaf path-range { + type uint32 { + range "1..48" { + description + "au3 or au4 path range"; + } + } + description + "Configure SDH path parameters"; + } + leaf mode { + type enumeration { + enum "atm" { + value 13; + description + "clear channel carrying atm"; + } + enum "pos-scramble" { + value 11; + description + "clear channel carrying POS scramble"; + } + enum "pos-unscramble" { + value 12; + description + "clear channel carrying POS unscramble"; + } + enum "c11" { + value 4; + description + "au3 path carrying c11"; + } + enum "c11-t1" { + value 5; + description + "au3 path carrying c11 t1"; + } + enum "c12" { + value 2; + description + "au3 path carrying c12"; + } + enum "c12-e1" { + value 3; + description + "au3 path carrying c12 e1"; + } + enum "e3" { + value 10; + description + "au3 path carrying E3"; + } + enum "t3" { + value 9; + description + "au3 path carrying T3"; + } + enum "tug3" { + value 14; + description + "au4 path carries TUG3"; + } + } + description + "Configure mode for the au path"; + } + leaf width { + type uint32 { + range "1..768" { + description + "Valid width(1,3,12,48..), natural au boundaries(1,4,7,10,13..)"; + } + } + description + "Configure width for the path"; + } + container report { + description + "Configure SONET/SDH path alarm reporting"; + container b3-tca { + description + "Set B3 BER Threshold Crossing Alert (TCA) reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container pais { + presence "Indicates a pais node is configured."; + description + "Set Path Alarm Indication Signal reporting status"; + } + container plop { + description + "Set Path Loss of Pointer reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + ""; + } + } + container prdi { + presence "Indicates a prdi node is configured."; + description + "Set Path Remote Defect Indication reporting status"; + } + container puneq { + presence "Indicates a puneq node is configured."; + description + "Set Path Unequipped Defect Indication reporting status"; + } + } + container threshold { + description + "Configure SDH path BER threshold values"; + leaf b3-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B3 BER Threshold Crossing Alert (TCA) threshold"; + } + } + container overhead { + description + "Configure SONET/SDH POH byte/bit values"; + leaf c2 { + type uint32 { + range "0..255" { + description + "C2 byte value (default 0xCF)"; + } + } + description + "Specify STS SPE content (C2) byte"; + } + leaf j1 { + type string { + length "1..62" { + description + "ASCII text (max 62 characters)"; + } + } + description + "Configure SONET/SDH path trace (J1) buffer"; + } + } + container delay { + description + "alarm soaking"; + leaf trigger { + type uint32 { + range "0..60000" { + description + "Time in msec to soak before declaring the alarm(Non-intelligent SPA 0-511 msec; Intelligent SPA 0-60000 msec)"; + } + } + description + "trigger time"; + } + leaf clear { + type uint32 { + range "1000..180000" { + description + "Time in msec to soak before clearing the alarm(Non-intelligent SPA(Not Supported); Intelligent SPA 1000-180000 msec)"; + } + } + description + "clear time"; + } + } + container tug3s { + description + "Configure tug3 path parameters"; + list tug3 { + key "number-range"; + description + "Configure tug3 path parameters"; + leaf number-range { + type uint32 { + range "1..3" { + description + "tug3 number range"; + } + } + description + "Configure tug3 path parameters"; + } + leaf mode { + type enumeration { + enum "c12" { + value 2; + description + "tug3 path carrying TU-12"; + } + enum "c12-e1" { + value 3; + description + "tug3 path carrying TU-12 to e1"; + } + enum "c11" { + value 4; + description + "tug3 path carrying TU-11"; + } + enum "c11-t1" { + value 5; + description + "tug3 path carrying TU-11 to t1"; + } + enum "t3" { + value 9; + description + "au3 or all tug3 path carrying T3"; + } + enum "e3" { + value 10; + description + "au3 or all tug3 path carrying E3"; + } + } + description + "Configure mode for the tug3 path"; + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-pm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-pm-cfg.yang new file mode 100644 index 000000000..c7e442815 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sonet-pm-cfg.yang @@ -0,0 +1,1171 @@ +module Cisco-IOS-XR-um-cont-sonet-pm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-sonet-pm-cfg"; + prefix um-cont-sonet-pm-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-sonet-pm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-06-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container pm { + when "../a1:controller-name[starts-with(text(),'SONET')]" { + tailf:dependency "../a1:controller-name"; + } + description + "Configure pm parameters"; + container interval-15-min { + description + "Configure pm parameters of 15 minute interval"; + container ocn { + description + "configure ocn performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf cv-s { + type uint32 { + range "0..7967700" { + description + "CV-S threshold range"; + } + } + description + "set cv-s threshold"; + } + leaf es-s { + type uint32 { + range "0..900" { + description + "es-s threshold range"; + } + } + description + "set es-s threshold"; + } + leaf ses-s { + type uint32 { + range "0..900" { + description + "ses-s threshold range"; + } + } + description + "set ses-s threshold"; + } + leaf sefs-s { + type uint32 { + range "0..900" { + description + "sefs-s threshold range"; + } + } + description + "set sefs-s threshold"; + } + leaf cv-l-ne { + type uint32 { + range "0..8850600" { + description + "cv-l-ne threshold"; + } + } + description + "set cv-l-ne threshold"; + } + leaf es-l-ne { + type uint32 { + range "0..900" { + description + "es-l-ne threshold"; + } + } + description + "set es-l-ne threshold"; + } + leaf ses-l-ne { + type uint32 { + range "0..900" { + description + "ses-l-ne threshold range"; + } + } + description + "set ses-l-ne threshold"; + } + leaf uas-l-ne { + type uint32 { + range "0..900" { + description + "uas-l-ne threshold range"; + } + } + description + "set uas-l-ne threshold"; + } + leaf fc-l-ne { + type uint32 { + range "0..72" { + description + "fc-l-ne threshold range"; + } + } + description + "set fc-l-ne threshold"; + } + leaf cv-l-fe { + type uint32 { + range "0..8850600" { + description + "cv-l-fe threshold"; + } + } + description + "set cv-l-fe threshold"; + } + leaf es-l-fe { + type uint32 { + range "0..900" { + description + "es-l-fe threshold"; + } + } + description + "set es-l-fe threshold"; + } + leaf ses-l-fe { + type uint32 { + range "0..900" { + description + "ses-l-fe threshold range"; + } + } + description + "set ses-l-fe threshold"; + } + leaf uas-l-fe { + type uint32 { + range "0..900" { + description + "uas-l-fe threshold range"; + } + } + description + "set uas-l-fe threshold"; + } + leaf fc-l-fe { + type uint32 { + range "0..72" { + description + "fc-l-fe threshold range"; + } + } + description + "set fc-l-fe threshold"; + } + } + container report { + description + "set ocn TCA reporting status"; + container sefs-s { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-s { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-s { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-s { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-ne { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-ne { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-ne { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-ne { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-ne { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-fe { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-fe { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-fe { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-fe { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-fe { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container sts { + description + "configure STS performance monitoring"; + container threshold { + description + "Configure threshold on sts parameters"; + container cv-p { + description + "set cv-p threshold"; + list sts { + key "channel-number"; + description + "set cv-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..7967700" { + description + "CV-P threshold range"; + } + } + mandatory true; + description + "set cv-p threshold"; + } + } + } + container es-p { + description + "set es-p threshold"; + list sts { + key "channel-number"; + description + "set es-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..900" { + description + "es-p threshold range"; + } + } + mandatory true; + description + "set es-p threshold"; + } + } + } + container ses-p { + description + "set ses-p threshold"; + list sts { + key "channel-number"; + description + "set ses-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..900" { + description + "ses-p threshold range"; + } + } + mandatory true; + description + "set ses-p threshold"; + } + } + } + container uas-p { + description + "set uas-p threshold"; + list sts { + key "channel-number"; + description + "set uas-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..900" { + description + "uas-p threshold range"; + } + } + mandatory true; + description + "set uas-p threshold"; + } + } + } + } + container reports { + description + "set sts TCA reporting status"; + list report { + must "enable"; + key "channel-number reporting-status"; + description + "set sts TCA reporting status"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf reporting-status { + type enumeration { + enum "cv-p" { + value 4194304; + description + "set cv TCA reporting status"; + } + enum "es-p" { + value 4194305; + description + "set es TCA reporting status"; + } + enum "ses-p" { + value 4194306; + description + "set ses TCA reporting status"; + } + enum "uas-p" { + value 4194307; + description + "set uas TCA reporting status"; + } + } + description + "set sts TCA reporting status"; + } + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the reporting status"; + } + } + } + } + container path { + description + "configure path performance monitoring"; + container threshold { + description + "Configure threshold on sonet path parameters"; + leaf cv-p { + type uint32 { + range "0..7967700" { + description + "CV-P threshold range"; + } + } + description + "set cv-p threshold"; + } + leaf es-p { + type uint32 { + range "0..900" { + description + "es-p threshold range"; + } + } + description + "set es-p threshold"; + } + leaf ses-p { + type uint32 { + range "0..900" { + description + "ses-p threshold range"; + } + } + description + "set ses-p threshold"; + } + leaf uas-p { + type uint32 { + range "0..900" { + description + "uas-p threshold range"; + } + } + description + "set uas-p threshold"; + } + } + container report { + description + "set sonet path TCA reporting status"; + container cv-p { + description + "set cv TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-p { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-p { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-p { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hour { + description + "Configure pm parameters of 24 hour interval"; + container ocn { + description + "configure ocn performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf cv-s { + type uint32 { + range "0..764899200" { + description + "CV-S threshold range"; + } + } + description + "set cv-s threshold"; + } + leaf es-s { + type uint32 { + range "0..86400" { + description + "es-s threshold range"; + } + } + description + "set es-s threshold"; + } + leaf ses-s { + type uint32 { + range "0..86400" { + description + "ses-s threshold range"; + } + } + description + "set ses-s threshold"; + } + leaf sefs-s { + type uint32 { + range "0..86400" { + description + "sefs-s threshold range"; + } + } + description + "set sefs-s threshold"; + } + leaf cv-l-ne { + type uint32 { + range "0..849657600" { + description + "cv-l-ne threshold"; + } + } + description + "set cv-l-ne threshold"; + } + leaf es-l-ne { + type uint32 { + range "0..86400" { + description + "es-l-ne threshold"; + } + } + description + "set es-l-ne threshold"; + } + leaf ses-l-ne { + type uint32 { + range "0..86400" { + description + "ses-l-ne threshold range"; + } + } + description + "set ses-l-ne threshold"; + } + leaf uas-l-ne { + type uint32 { + range "0..86400" { + description + "uas-l-ne threshold range"; + } + } + description + "set uas-l-ne threshold"; + } + leaf fc-l-ne { + type uint32 { + range "0..6912" { + description + "fc-l-ne threshold range"; + } + } + description + "set fc-l-ne threshold"; + } + leaf cv-l-fe { + type uint32 { + range "0..849657600" { + description + "cv-l-fe threshold"; + } + } + description + "set cv-l-fe threshold"; + } + leaf es-l-fe { + type uint32 { + range "0..86400" { + description + "es-l-fe threshold"; + } + } + description + "set es-l-fe threshold"; + } + leaf ses-l-fe { + type uint32 { + range "0..86400" { + description + "ses-l-fe threshold range"; + } + } + description + "set ses-l-fe threshold"; + } + leaf uas-l-fe { + type uint32 { + range "0..86400" { + description + "uas-l-fe threshold range"; + } + } + description + "set uas-l-fe threshold"; + } + leaf fc-l-fe { + type uint32 { + range "0..6912" { + description + "fc-l-fe threshold range"; + } + } + description + "set fc-l-fe threshold"; + } + } + container report { + description + "set ocn TCA reporting status"; + container sefs-s { + description + "set esr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-s { + description + "set es-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-s { + description + "set es-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-s { + description + "set esr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-ne { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-ne { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-ne { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-ne { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-ne { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container fc-l-fe { + description + "set uas-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container cv-l-fe { + description + "set ses-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-fe { + description + "set ses-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-fe { + description + "set sesr-pm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-fe { + description + "set sesr-sm TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + container sts { + description + "configure STS performance monitoring"; + container threshold { + description + "Configure threshold on sts parameters"; + container cv-p { + description + "set cv-p threshold"; + list sts { + key "channel-number"; + description + "set cv-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..7967700" { + description + "CV-P threshold range"; + } + } + mandatory true; + description + "set cv-p threshold"; + } + } + } + container es-p { + description + "set es-p threshold"; + list sts { + key "channel-number"; + description + "set es-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..900" { + description + "es-p threshold range"; + } + } + mandatory true; + description + "set es-p threshold"; + } + } + } + container ses-p { + description + "set ses-p threshold"; + list sts { + key "channel-number"; + description + "set ses-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..900" { + description + "ses-p threshold range"; + } + } + mandatory true; + description + "set ses-p threshold"; + } + } + } + container uas-p { + description + "set uas-p threshold"; + list sts { + key "channel-number"; + description + "set uas-p threshold"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf threshold { + type uint32 { + range "0..900" { + description + "uas-p threshold range"; + } + } + mandatory true; + description + "set uas-p threshold"; + } + } + } + } + container reports { + description + "set sts TCA reporting status"; + list report { + must "enable"; + key "channel-number reporting-status"; + description + "set sts TCA reporting status"; + leaf channel-number { + type uint32 { + range "1..48" { + description + " Channel Number"; + } + } + description + "configure STS performance monitoring"; + } + leaf reporting-status { + type enumeration { + enum "cv-p" { + value 4194304; + description + "set cv TCA reporting status"; + } + enum "es-p" { + value 4194305; + description + "set es TCA reporting status"; + } + enum "ses-p" { + value 4194306; + description + "set ses TCA reporting status"; + } + enum "uas-p" { + value 4194307; + description + "set uas TCA reporting status"; + } + } + description + "set sts TCA reporting status"; + } + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the reporting status"; + } + } + } + } + container path { + description + "configure path performance monitoring"; + container threshold { + description + "Configure threshold on sonet path parameters"; + leaf cv-p { + type uint32 { + range "0..764899200" { + description + "CV-P threshold range"; + } + } + description + "set cv-p threshold"; + } + leaf es-p { + type uint32 { + range "0..86400" { + description + "es-p threshold range"; + } + } + description + "set es-p threshold"; + } + leaf ses-p { + type uint32 { + range "0..86400" { + description + "ses-p threshold range"; + } + } + description + "set ses-p threshold"; + } + leaf uas-p { + type uint32 { + range "0..86400" { + description + "uas-p threshold range"; + } + } + description + "set uas-p threshold"; + } + } + container report { + description + "set sonetpath TCA reporting status"; + container cv-p { + description + "set cv TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-p { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-p { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-p { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-cfg.yang new file mode 100644 index 000000000..141295dad --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-cfg.yang @@ -0,0 +1,243 @@ +module Cisco-IOS-XR-um-cont-stm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-stm-cfg"; + prefix um-cont-stm-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-stm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy + 2022-05-13 + Added new leaf node sixtyfour-bytes under container overhead/j0/send and overhead/j0/expected"; + semver:module-version "1.1.0"; + } + revision 2021-05-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container clock { + description + "Configure SONET/SDH port clock"; + leaf source { + type enumeration { + enum "internal" { + value 0; + description + "Select internal clock"; + } + enum "line" { + value 1; + description + "Select clock recovered from line (default)"; + } + } + description + "Configure SONET/SDH port TX clock source"; + } + } + container loopback { + description + "Configure SONET/SDH controller loopback mode"; + container internal { + must "not(../line)"; + presence "Indicates a internal node is configured."; + description + "Select local (terminal) loopback"; + } + container line { + must "not(../internal)"; + presence "Indicates a line node is configured."; + description + "Select network (facility) loopback"; + } + } + container overhead { + description + "Configure SONET Section & Line or SDH Regeneration Section & Multiplex Section OH byte/bit values"; + container j0 { + description + "Specify SONET Section trace or SDH Regeneration Section identifier (J0/C1) "; + container send { + description + "Set transmit trace Identifier"; + leaf one-byte { + type uint32 { + range "0..255" { + description + "J0/C1 byte value (default 0x01)"; + } + } + must "not(../sixteen-bytes or ../sixtyfour-bytes)"; + description + "Configure a 1 byte section or Regeneration section trace "; + } + leaf sixteen-bytes { + type string { + length "1..15" { + description + "ASCII text "; + } + } + must "not(../one-byte or ../sixtyfour-bytes)"; + description + "Configure a 16 bytes section or Regeneration section trace"; + } + leaf sixtyfour-bytes { + type string { + length "1..62" { + description + "ASCII text "; + } + } + must "not(../one-byte or ../sixteen-bytes)"; + description + "Configure a Section layer/Regeneration layer trace, string of upto 62 characters accepted( & characters will be added at the end)."; + } + } + container expected { + description + "Set expected trace Identifier"; + leaf one-byte { + type uint32 { + range "0..255" { + description + "J0/C1 byte value (default 0x01)"; + } + } + must "not(../sixteen-bytes or ../sixtyfour-bytes)"; + description + "Configure a 1 byte section or Regeneration section trace "; + } + leaf sixteen-bytes { + type string { + length "1..15" { + description + "ASCII text "; + } + } + must "not(../one-byte or ../sixtyfour-bytes)"; + description + "Configure a 16 bytes section or Regeneration section trace"; + } + leaf sixtyfour-bytes { + type string { + length "1..62" { + description + "ASCII text "; + } + } + must "not(../one-byte or ../sixteen-bytes)"; + description + "Configure a Section layer/Regeneration layer trace, string of upto 62 characters accepted( & characters will be added at the end)."; + } + } + } + } + container perf-mon { + description + "Enable/Disable Performance Monitoring"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable performance monitoring"; + } + } + container threshold { + description + "Configure SONET section/line or SDH Regeneration/Multiplex Section BER threshold values"; + leaf b1-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B1 BER Threshold Crossing Alert (TCA) threshold"; + } + leaf b2-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B2 BER Threshold Crossing Alert (TCA) threshold"; + } + leaf sd-ber { + type uint32 { + range "5..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set Signal Degrade BER threshold"; + } + leaf sf-ber { + type uint32 { + range "3..5" { + description + "Bit error rate (10 to the minus n) (default 3)"; + } + } + description + "Set Signal Fail BER threshold"; + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-pm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-pm-cfg.yang new file mode 100644 index 000000000..37aeb19cf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-stm-pm-cfg.yang @@ -0,0 +1,1017 @@ +module Cisco-IOS-XR-um-cont-stm-pm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-stm-pm-cfg"; + prefix um-cont-stm-pm-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-stm-pm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-06-11 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container pm { + when "../a1:controller-name[starts-with(text(),'STM')]" { + tailf:dependency "../a1:controller-name"; + } + description + "Configure pm parameters"; + container interval-15-min { + description + "Configure pm parameters of 15 minute interval"; + container stm { + description + "configure stm performance monitoring"; + container threshold { + description + "Configure threshold on stm parameters"; + leaf eb-s { + type uint32 { + range "0..8850600" { + description + "eb-s threshold range"; + } + } + description + "set eb-s threshold"; + } + leaf es-s { + type uint32 { + range "0..900" { + description + "es-s threshold range"; + } + } + description + "set es-s threshold"; + } + leaf esr-s { + type uint32 { + range "0..100000" { + description + "esr-s threshold range"; + } + } + description + "set esr-s threshold"; + } + leaf ses-s { + type uint32 { + range "0..900" { + description + "ses-s threshold range"; + } + } + description + "set ses-s threshold"; + } + leaf sesr-s { + type uint32 { + range "0..100000" { + description + "sesr-s threshold range"; + } + } + description + "set sesr-s threshold"; + } + leaf bbe-s { + type uint32 { + range "0..8850600" { + description + "bbes-s threshold range"; + } + } + description + "set bbe-s threshold"; + } + leaf bber-s { + type uint32 { + range "0..100000" { + description + "bber-s threshold range"; + } + } + description + "set bber-s threshold"; + } + leaf uas-s { + type uint32 { + range "0..900" { + description + "uas-s threshold range"; + } + } + description + "set uas-s threshold"; + } + leaf eb-l-ne { + type uint32 { + range "0..8850600" { + description + "eb-l-ne threshold"; + } + } + description + "set eb-l-ne threshold"; + } + leaf es-l-ne { + type uint32 { + range "0..900" { + description + "es-l-ne threshold"; + } + } + description + "set es-l-ne threshold"; + } + leaf esr-l-ne { + type uint32 { + range "0..100000" { + description + "esr-l-ne threshold"; + } + } + description + "set esr-l-ne threshold"; + } + leaf ses-l-ne { + type uint32 { + range "0..900" { + description + "ses-l-ne threshold range"; + } + } + description + "set ses-l-ne threshold"; + } + leaf sesr-l-ne { + type uint32 { + range "0..100000" { + description + "sesr-l-ne threshold range"; + } + } + description + "set sesr-l-ne threshold"; + } + leaf bbe-l-ne { + type uint32 { + range "0..8550600" { + description + "sesr-l-ne threshold range"; + } + } + description + "set bbe-l-ne threshold"; + } + leaf bber-l-ne { + type uint32 { + range "0..100000" { + description + "bber-l-ne threshold range"; + } + } + description + "set bber-l-ne threshold"; + } + leaf uas-l-ne { + type uint32 { + range "0..900" { + description + "uas-l-ne threshold range"; + } + } + description + "set uas-l-ne threshold"; + } + leaf eb-l-fe { + type uint32 { + range "0..8850600" { + description + "eb-l-fe threshold"; + } + } + description + "set eb-l-fe threshold"; + } + leaf es-l-fe { + type uint32 { + range "0..900" { + description + "es-l-fe threshold"; + } + } + description + "set es-l-fe threshold"; + } + leaf esr-l-fe { + type uint32 { + range "0..100000" { + description + "esr-l-fe threshold"; + } + } + description + "set esr-l-fe threshold"; + } + leaf ses-l-fe { + type uint32 { + range "0..900" { + description + "ses-l-fe threshold range"; + } + } + description + "set ses-l-fe threshold"; + } + leaf sesr-l-fe { + type uint32 { + range "0..100000" { + description + "sesr-l-fe threshold range"; + } + } + description + "set sesr-l-fe threshold"; + } + leaf bbe-l-fe { + type uint32 { + range "0..8850600" { + description + "bbe-l-fe threshold range"; + } + } + description + "set bbe-l-fe threshold"; + } + leaf bber-l-fe { + type uint32 { + range "0..100000" { + description + "bber-l-fe threshold range"; + } + } + description + "set bber-l-fe threshold"; + } + leaf uas-l-fe { + type uint32 { + range "0..900" { + description + "uas-l-fe threshold range"; + } + } + description + "set uas-l-fe threshold"; + } + } + container report { + description + "set stm TCA reporting status"; + container eb-s { + description + "set eb TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-s { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-s { + description + "set esr TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-s { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-s { + description + "set sesr TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-s { + description + "set bbe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-s { + description + "set bber TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-s { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container eb-l-ne { + description + "set eb TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-ne { + description + "set es-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-l-ne { + description + "set esr-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-ne { + description + "set ses-l-le TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-l-ne { + description + "set sesr-l-le TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-l-ne { + description + "set bbe-l-le TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-l-ne { + description + "set bber-l-le TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-ne { + description + "set uas-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container eb-l-fe { + description + "set eb-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-fe { + description + "set es-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-l-fe { + description + "set esr-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-fe { + description + "set ses-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-l-fe { + description + "set sesr-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-l-fe { + description + "set bbe-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-l-fe { + description + "set bber-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-fe { + description + "set uas-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hour { + description + "Configure pm parameters of 24 hour interval"; + container stm { + description + "configure stm performance monitoring"; + container threshold { + description + "Configure threshold on otn parameters"; + leaf eb-s { + type uint32 { + range "0..849657600" { + description + "eb-s threshold range"; + } + } + description + "set eb-s threshold"; + } + leaf es-s { + type uint32 { + range "0..86400" { + description + "es-s threshold range"; + } + } + description + "set es-s threshold"; + } + leaf esr-s { + type uint32 { + range "0..100000" { + description + "esr-s threshold range"; + } + } + description + "set esr-s threshold"; + } + leaf ses-s { + type uint32 { + range "0..86400" { + description + "ses-s threshold range"; + } + } + description + "set ses-s threshold"; + } + leaf sesr-s { + type uint32 { + range "0..100000" { + description + "sesr-s threshold range"; + } + } + description + "set sesr-s threshold"; + } + leaf bbe-s { + type uint32 { + range "0..849657600" { + description + "bbe-s threshold range"; + } + } + description + "set bbe-s threshold"; + } + leaf bber-s { + type uint32 { + range "0..100000" { + description + "bber-s threshold range"; + } + } + description + "set bber-s threshold"; + } + leaf uas-s { + type uint32 { + range "0..86400" { + description + "uas-s threshold range"; + } + } + description + "set uas-s threshold"; + } + leaf eb-l-ne { + type uint32 { + range "0..849657600" { + description + "eb-l-ne threshold"; + } + } + description + "set eb-l-ne threshold"; + } + leaf es-l-ne { + type uint32 { + range "0..86400" { + description + "es-l-ne threshold"; + } + } + description + "set es-l-ne threshold"; + } + leaf esr-l-ne { + type uint32 { + range "0..100000" { + description + "esr-l-ne threshold"; + } + } + description + "set esr-l-ne threshold"; + } + leaf ses-l-ne { + type uint32 { + range "0..86400" { + description + "ses-l-ne threshold range"; + } + } + description + "set ses-l-ne threshold"; + } + leaf sesr-l-ne { + type uint32 { + range "0..100000" { + description + "sesr-l-ne threshold range"; + } + } + description + "set sesr-l-ne threshold"; + } + leaf bbe-l-ne { + type uint32 { + range "0..849657600" { + description + "bbe-l-ne threshold range"; + } + } + description + "set bbe-l-ne threshold"; + } + leaf bber-l-ne { + type uint32 { + range "0..100000" { + description + "bber-l-ne threshold range"; + } + } + description + "set bber-l-ne threshold"; + } + leaf uas-l-ne { + type uint32 { + range "0..86400" { + description + "uas-l-ne threshold range"; + } + } + description + "set uas-l-ne threshold"; + } + leaf eb-l-fe { + type uint32 { + range "0..849657600" { + description + "eb-l-fe threshold"; + } + } + description + "set eb-l-fe threshold"; + } + leaf es-l-fe { + type uint32 { + range "0..86400" { + description + "es-l-fe threshold"; + } + } + description + "set es-l-fe threshold"; + } + leaf esr-l-fe { + type uint32 { + range "0..100000" { + description + "esr-l-fe threshold"; + } + } + description + "set esr-l-fe threshold"; + } + leaf ses-l-fe { + type uint32 { + range "0..86400" { + description + "ses-l-fe threshold range"; + } + } + description + "set ses-l-fe threshold"; + } + leaf sesr-l-fe { + type uint32 { + range "0..100000" { + description + "sesr-l-fe threshold range"; + } + } + description + "set sesr-l-fe threshold"; + } + leaf bbe-l-fe { + type uint32 { + range "0..849657600" { + description + "bbe-l-fe threshold range"; + } + } + description + "set bbe-l-fe threshold"; + } + leaf bber-l-fe { + type uint32 { + range "0..100000" { + description + "bber-l-fe threshold range"; + } + } + description + "set bber-l-fe threshold"; + } + leaf uas-l-fe { + type uint32 { + range "0..86400" { + description + "uas-l-fe threshold range"; + } + } + description + "set uas-l-fe threshold"; + } + } + container report { + description + "set stm TCA reporting status"; + container eb-s { + description + "set eb-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-s { + description + "set es-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-s { + description + "set esr-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-s { + description + "set ses-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-s { + description + "set sesr-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-s { + description + "set bbe-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-s { + description + "set bber-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-s { + description + "set bbe-s TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container eb-l-ne { + description + "set eb-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-ne { + description + "set es-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-l-ne { + description + "set esr-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-ne { + description + "set ses-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-l-ne { + description + "set sesr-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-l-ne { + description + "set bbe-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-l-ne { + description + "set bber-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-ne { + description + "set uas-l-ne TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container eb-l-fe { + description + "set eb-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-l-fe { + description + "set es-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container esr-l-fe { + description + "set esr-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-l-fe { + description + "set ses-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container sesr-l-fe { + description + "set sesr-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bbe-l-fe { + description + "set bbe-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container bber-l-fe { + description + "set bber-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-l-fe { + description + "set uas-l-fe TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-cfg.yang new file mode 100644 index 000000000..5c08f601a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-cfg.yang @@ -0,0 +1,153 @@ +module Cisco-IOS-XR-um-cont-sts-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-sts-cfg"; + prefix um-cont-sts-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-sts package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-05-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container overhead { + description + "Configure SONET/SDH POH byte/bit values"; + container j1 { + description + "Configure SONET/SDH path trace (J1) buffer"; + container send { + description + "Set transmit trace Identifier"; + leaf sixteen-bytes { + type string { + length "1..15" { + description + "ASCII text "; + } + } + must "not(../sixtyfour-bytes)"; + description + "Configure a 16 bytes path trace"; + } + leaf sixtyfour-bytes { + type string { + length "1..62" { + description + "ASCII text "; + } + } + must "not(../sixteen-bytes)"; + description + "Configure a 64 byte path trace"; + } + } + container expected { + description + "Set expected trace Identifier"; + leaf sixteen-bytes { + type string { + length "1..15" { + description + "ASCII text "; + } + } + must "not(../sixtyfour-bytes)"; + description + "Configure a 16 bytes path trace"; + } + leaf sixtyfour-bytes { + type string { + length "1..62" { + description + "ASCII text "; + } + } + must "not(../sixteen-bytes)"; + description + "Configure a 64 byte path trace"; + } + } + } + } + container threshold { + description + "Configure SONET/SDH path BER threshold values"; + leaf b3-tca { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set B3 BER Threshold Crossing Alert (TCA) threshold"; + } + } + container perf-mon { + description + "Enable/Disable Performance Monitoring"; + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable performance monitoring"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable performance monitoring"; + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-pm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-pm-cfg.yang new file mode 100644 index 000000000..23f99f0e8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-sts-pm-cfg.yang @@ -0,0 +1,257 @@ +module Cisco-IOS-XR-um-cont-sts-pm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-sts-pm-cfg"; + prefix um-cont-sts-pm-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 cont-sts-pm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-06-11 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container pm { + when "../a1:controller-name[starts-with(text(),'STS')]" { + tailf:dependency "../a1:controller-name"; + } + description + "Configure pm parameters"; + container interval-15-min { + description + "Configure pm parameters of 15 minute interval"; + container sts { + description + "configure STS performance monitoring"; + container threshold { + description + "Configure threshold on sts parameters"; + leaf cv-p { + type uint32 { + range "0..7967700" { + description + "CV-P threshold range"; + } + } + description + "set cv-p threshold"; + } + leaf es-p { + type uint32 { + range "0..900" { + description + "es-p threshold range"; + } + } + description + "set es-p threshold"; + } + leaf ses-p { + type uint32 { + range "0..900" { + description + "ses-p threshold range"; + } + } + description + "set ses-p threshold"; + } + leaf uas-p { + type uint32 { + range "0..900" { + description + "uas-p threshold range"; + } + } + description + "set uas-p threshold"; + } + } + container report { + description + "set sts TCA reporting status"; + container cv-p { + description + "set cv TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-p { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-p { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-p { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + container interval-24-hour { + description + "Configure pm parameters of 24 hour interval"; + container sts { + description + "configure STS performance monitoring"; + container threshold { + description + "Configure threshold on sts parameters"; + leaf cv-p { + type uint32 { + range "0..764899200" { + description + "CV-P threshold range"; + } + } + description + "set cv-p threshold"; + } + leaf es-p { + type uint32 { + range "0..86400" { + description + "es-p threshold range"; + } + } + description + "set es-p threshold"; + } + leaf ses-p { + type uint32 { + range "0..86400" { + description + "ses-p threshold range"; + } + } + description + "set ses-p threshold"; + } + leaf uas-p { + type uint32 { + range "0..86400" { + description + "uas-p threshold range"; + } + } + description + "set uas-p threshold"; + } + } + container report { + description + "set sts TCA reporting status"; + container cv-p { + description + "set cv TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container es-p { + description + "set es TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container ses-p { + description + "set ses TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + container uas-p { + description + "set uas TCA reporting status"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable TCA reporting"; + } + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-vc-pm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-vc-pm-cfg.yang new file mode 100644 index 000000000..88714d2f5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-vc-pm-cfg.yang @@ -0,0 +1,387 @@ +module Cisco-IOS-XR-um-cont-vc-pm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-vc-pm-cfg"; + prefix um-cont-vc-pm-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-vc-pm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-02-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container pm { + description + "Configure pm parameters"; + container interval-15-min { + description + "Configure pm parameters of 15 minute interval"; + container ho-vc { + description + "configure HO_VC performance monitoring"; + container threshold { + description + "Configure threshold on ho_vc parameters"; + leaf eb-p { + type uint32 { + range "0..8850600" { + description + "EB-P threshold range"; + } + } + description + "set eb-p threshold"; + } + leaf es-p { + type uint32 { + range "0..900" { + description + "es-p threshold range"; + } + } + description + "set es-p threshold"; + } + leaf esr-p { + type uint32 { + range "0..100000" { + description + "esr-p threshold range"; + } + } + description + "set esr-p threshold"; + } + leaf ses-p { + type uint32 { + range "0..900" { + description + "ses-p threshold range"; + } + } + description + "set ses-p threshold"; + } + leaf sesr-p { + type uint32 { + range "0..100000" { + description + "sesr-p threshold range"; + } + } + description + "set sesr-p threshold"; + } + leaf bbe-p { + type uint32 { + range "0..8850600" { + description + "bbe-p threshold range"; + } + } + description + "set bbe-p threshold"; + } + leaf bber-p { + type uint32 { + range "0..100000" { + description + "bber-p threshold range"; + } + } + description + "set bber-p threshold"; + } + leaf uas-p { + type uint32 { + range "0..900" { + description + "uas-p threshold range"; + } + } + description + "set uas-p threshold"; + } + } + container reports { + description + "set ho_vc TCA reporting status"; + list report { + must "enable or disable"; + key "report-id"; + description + "set ho_vc TCA reporting status"; + leaf report-id { + type enumeration { + enum "eb-p" { + value 33554432; + description + "set eb TCA reporting status"; + } + enum "es-p" { + value 33554433; + description + "set es TCA reporting status"; + } + enum "esr-p" { + value 33554434; + description + "set esr TCA reporting status"; + } + enum "ses-p" { + value 33554435; + description + "set ses TCA reporting status"; + } + enum "sesr-p" { + value 33554436; + description + "set sesr TCA reporting status"; + } + enum "bbe-p" { + value 33554437; + description + "set bbe TCA reporting status"; + } + enum "bber-p" { + value 33554438; + description + "set bber TCA reporting status"; + } + enum "uas-p" { + value 33554439; + description + "set uas TCA reporting status"; + } + } + description + "set ho_vc TCA reporting status"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + ""; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + ""; + } + } + } + } + } + container interval-24-hour { + description + "Configure pm parameters of 24 hour interval"; + container ho-vc { + description + "configure HO_VC performance monitoring"; + container threshold { + description + "Configure threshold on ho_vc parameters"; + leaf eb-p { + type uint32 { + range "0..849657600" { + description + "EB-P threshold range"; + } + } + description + "set eb-p threshold"; + } + leaf es-p { + type uint32 { + range "0..86400" { + description + "es-p threshold range"; + } + } + description + "set es-p threshold"; + } + leaf esr-p { + type uint32 { + range "0..100000" { + description + "esr-p threshold range"; + } + } + description + "set esr-p threshold"; + } + leaf ses-p { + type uint32 { + range "0..86400" { + description + "ses-p threshold range"; + } + } + description + "set ses-p threshold"; + } + leaf sesr-p { + type uint32 { + range "0..100000" { + description + "sesr-p threshold range"; + } + } + description + "set sesr-p threshold"; + } + leaf bbe-p { + type uint32 { + range "0..849657600" { + description + "bbe-p threshold range"; + } + } + description + "set bbe-p threshold"; + } + leaf bber-p { + type uint32 { + range "0..100000" { + description + "bber-p threshold range"; + } + } + description + "set bber-p threshold"; + } + leaf uas-p { + type uint32 { + range "0..86400" { + description + "uas-p threshold range"; + } + } + description + "set uas-p threshold"; + } + } + container reports { + description + "set ho_vc TCA reporting status"; + list report { + must "enable or disable"; + key "report-id"; + description + "set ho_vc TCA reporting status"; + leaf report-id { + type enumeration { + enum "eb-p" { + value 33554432; + description + "set eb TCA reporting status"; + } + enum "es-p" { + value 33554433; + description + "set es TCA reporting status"; + } + enum "esr-p" { + value 33554434; + description + "set esr TCA reporting status"; + } + enum "ses-p" { + value 33554435; + description + "set ses TCA reporting status"; + } + enum "sesr-p" { + value 33554436; + description + "set sesr TCA reporting status"; + } + enum "bbe-p" { + value 33554437; + description + "set bbe TCA reporting status"; + } + enum "bber-p" { + value 33554438; + description + "set bber TCA reporting status"; + } + enum "uas-p" { + value 33554439; + description + "set uas TCA reporting status"; + } + } + description + "set ho_vc TCA reporting status"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + ""; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + ""; + } + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-wanphy-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-wanphy-cfg.yang new file mode 100644 index 000000000..3792c9c28 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-cont-wanphy-cfg.yang @@ -0,0 +1,213 @@ +module Cisco-IOS-XR-um-cont-wanphy-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-cont-wanphy-cfg"; + prefix um-cont-wanphy-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 cont-wanphy package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature wanphy_cont { + description + "wanphy controller"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container lanmode { + description + "Configure Lan Mode On/Off"; + container on { + presence "Indicates a on node is configured."; + description + "Turn LanMode On"; + } + } + container wanmode { + description + "Configure Wan Mode On/Off"; + container on { + presence "Indicates a on node is configured."; + description + "Turn WanMode On"; + } + } + container threshold { + description + "Configure WANPHY SF/SD BER threshold values"; + leaf sd-ber { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 6)"; + } + } + description + "Set Signal Degrade BER threshold"; + } + leaf sf-ber { + type uint32 { + range "3..9" { + description + "Bit error rate (10 to the minus n) (default 3)"; + } + } + description + "Set Signal Fail BER threshold"; + } + } + container mask-alarm { + description + "Disable WIS alarm being propagated to PCS"; + container plop { + presence "Indicates a plop node is configured."; + description + "Mask PLOP"; + } + } + container report { + description + "Configure WANPHY SF/SD-BER alarm reporting"; + container sd-ber { + presence "Indicates a sd-ber node is configured."; + description + "Set LBIP BER in excess of SD threshold reporting status"; + } + container sf-ber { + presence "Indicates a sf-ber node is configured."; + description + "Set LBIP BER in excess of SF threshold reporting status"; + } + container los { + description + "Set Loss of Signal reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Reporting"; + } + } + container lof { + description + "Set Loss of Frame reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Reporting"; + } + } + container line-ais { + presence "Indicates a line-ais node is configured."; + description + "Set Line Alarm Indication Signal reporting status"; + } + container rdi { + presence "Indicates a rdi node is configured."; + description + "Set Remote Defect Indicator reporting status"; + } + container lop { + description + "Set Loss Of Pointer reporting status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Reporting"; + } + } + container path-ais { + presence "Indicates a path-ais node is configured."; + description + "Set Path Alarm Indication Signal reporting status"; + } + container path-lcd { + presence "Indicates a path-lcd node is configured."; + description + "Set Loss Of Code-Group Delineation reporting status"; + } + container path-plm { + presence "Indicates a path-plm node is configured."; + description + "Set Path Payload Label Mismatch reporting status"; + } + container path-fe-plm { + presence "Indicates a path-fe-plm node is configured."; + description + "Set Path Far End Label Mismatch reporting status"; + } + container path-rdi { + presence "Indicates a path-rdi node is configured."; + description + "Set Path Remote Defect Indication Signal reporting status"; + } + container path-fe-ais { + presence "Indicates a path-fe-ais node is configured."; + description + "Set Path Far End Alarm Indication Signal reporting status"; + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + container wanphy { + description + "Configure Wanphy"; + container poll-timer { + description + "Make it 100 milliseconds"; + container timer-100ms { + presence "Indicates a timer-100ms node is configured."; + description + "Configure 100 milliseconds"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-cfg.yang new file mode 100644 index 000000000..43557d6dd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-cfg.yang @@ -0,0 +1,3043 @@ +module Cisco-IOS-XR-um-control-plane-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-control-plane-cfg"; + prefix um-control-plane-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 control-plane package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-30 { + description + "enable-inband-behavior container added"; + semver:module-version "1.1.0"; + } + revision 2021-03-11 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container control-plane { + description + "Configure Control Plane"; + container management-plane { + description + "Configure management plane protection"; + container inband { + description + "Configure an inband interface/protocol"; + container interfaces { + description + "Configure an inband interface"; + list interface { + key "interface-name"; + description + "Configure a specific interface"; + leaf interface-name { + type xr:Interface-name; + description + "Configure a specific interface"; + } + container allow { + description + "Allow a protocol on this interface"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Secure Shell (v1 & v2)"; + } + container ssh-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container telnet { + presence "Indicates a telnet node is configured."; + description + "Telnet"; + } + container telnet-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "SNMP (all versions)"; + } + container snmp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container tftp { + presence "Indicates a tftp node is configured."; + description + "TFTP"; + } + container tftp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container http { + presence "Indicates a http node is configured."; + description + "HTTP(S)"; + } + container http-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container xr-xml { + presence "Indicates a xr-xml node is configured."; + description + "XML"; + } + container xr-xml-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container netconf { + presence "Indicates a netconf node is configured."; + description + "NETCONF version 1.1 protocol"; + } + container netconf-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container all { + presence "Indicates a all node is configured."; + description + "All Protocols"; + } + container all-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + } + } + container all { + description + "configure all the interfaces"; + container allow { + description + "Allow a protocol on this interface"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Secure Shell (v1 & v2)"; + } + container ssh-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container telnet { + presence "Indicates a telnet node is configured."; + description + "Telnet"; + } + container telnet-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "SNMP (all versions)"; + } + container snmp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container tftp { + presence "Indicates a tftp node is configured."; + description + "Enable TFTP"; + } + container tftp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container http { + presence "Indicates a http node is configured."; + description + "HTTP(S)"; + } + container http-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container xr-xml { + presence "Indicates a xr-xml node is configured."; + description + "XML"; + } + container xr-xml-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container netconf { + presence "Indicates a netconf node is configured."; + description + "NETCONF version 1.1 protocol"; + } + container netconf-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container all { + presence "Indicates a all node is configured."; + description + "All Protocols"; + } + container all-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + } + } + } + } + container out-of-band { + description + "Configure an out-of-band interface/protocol"; + container interfaces { + description + "Configure an outband interface"; + list interface { + key "interface-name"; + description + "Configure a specific interface"; + leaf interface-name { + type xr:Interface-name; + description + "Configure a specific interface"; + } + container allow { + description + "Allow a protocol on this interface"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Secure Shell (v1 & v2)"; + } + container ssh-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container telnet { + presence "Indicates a telnet node is configured."; + description + "Telnet"; + } + container telnet-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "SNMP (all versions)"; + } + container snmp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container tftp { + presence "Indicates a tftp node is configured."; + description + "TFTP"; + } + container tftp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container http { + presence "Indicates a http node is configured."; + description + "HTTP(S)"; + } + container http-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container xr-xml { + presence "Indicates a xr-xml node is configured."; + description + "XML"; + } + container xr-xml-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container netconf { + presence "Indicates a netconf node is configured."; + description + "NETCONF version 1.1 protocol"; + } + container netconf-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container all { + presence "Indicates a all node is configured."; + description + "All Protocols"; + } + container all-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + } + } + container all { + description + "configure all the interfaces"; + container allow { + description + "Allow a protocol on this interface"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Secure Shell (v1 & v2)"; + } + container ssh-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container telnet { + presence "Indicates a telnet node is configured."; + description + "Telnet"; + } + container telnet-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container snmp { + presence "Indicates a snmp node is configured."; + description + "SNMP (all versions)"; + } + container snmp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container tftp { + presence "Indicates a tftp node is configured."; + description + "TFTP"; + } + container tftp-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container http { + presence "Indicates a http node is configured."; + description + "HTTP(S)"; + } + container http-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container xr-xml { + presence "Indicates a xr-xml node is configured."; + description + "XML"; + } + container xr-xml-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container netconf { + presence "Indicates a netconf node is configured."; + description + "NETCONF version 1.1 protocol"; + } + container netconf-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + container all { + presence "Indicates a all node is configured."; + description + "All Protocols"; + } + container all-peer { + description + "Configure peer address on this interface"; + container address { + description + "Configure peer address on this interface"; + container ipv4 { + description + "Configure peer IPv4 address on this interface"; + container ipv4-address-prefixes { + description + "Enter IPv4 address with prefix"; + list ipv4-address-prefix { + key "address length"; + description + "Enter IPv4 address with prefix"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address with prefix"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Enter IPv4 address with prefix"; + } + } + } + container ipv4-addresses { + description + "Enter IPv4 address"; + list ipv4-address { + key "address"; + description + "Enter IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address"; + } + } + } + } + container ipv6 { + description + "Configure peer IPv6 address on this interface"; + container ipv6-address-prefixes { + description + "Enter IPv6 address with prefix"; + list ipv6-address-prefix { + key "address length"; + description + "Enter IPv6 address with prefix"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address with prefix"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Enter IPv6 address with prefix"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address"; + list ipv6-address { + key "address"; + description + "Enter IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address"; + } + } + } + } + } + } + } + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Enter vrf name"; + } + } + description + "configure mpp outband vrf"; + } + container enable-inband-behavior { + presence "Indicates a enable-inband-behavior node is configured."; + description + "allow only configured mgmt protocols in MPP out-of-band config"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-local-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-local-cfg.yang new file mode 100644 index 000000000..0e8070cec --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-control-plane-local-cfg.yang @@ -0,0 +1,95 @@ +module Cisco-IOS-XR-um-control-plane-local-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-control-plane-local-cfg"; + prefix um-control-plane-local-cfg; + + import Cisco-IOS-XR-um-control-plane-cfg { + prefix a1; + } + 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 control-plane-local package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-12-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature qos_ui_supp_locp_copy_qos_group { + description + "qos ui supp locp copy qos group"; + } + + feature qos_ui_supp_locp_set_precedence { + description + "qos ui supp locp set precedence"; + } + + augment "/a1:control-plane" { + description + "This augment extends control-plane nodes configuration"; + container local { + description + "Locally originated packets"; + container control-packets { + description + "Control packets generated by OSPF etc"; + container copy { + description + "Copy the field from the packet header"; + container precedence { + description + "Precedence value in the packet header"; + container qos-group { + presence "Indicates a qos-group node is configured."; + description + "Set the qos-group field in locally originated control packets "; + } + } + } + container set { + if-feature "qos_ui_supp_locp_set_precedence"; + description + "Set the precedence"; + leaf precedence { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + description + "Precedence value in the packet header"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-crypto-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-crypto-cfg.yang new file mode 100644 index 000000000..9d91880b7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-crypto-cfg.yang @@ -0,0 +1,1022 @@ +module Cisco-IOS-XR-um-crypto-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-crypto-cfg"; + prefix um-crypto-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 crypto package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-05-30 + Added openssh, rsa1024, fqdn-check and crl support under ca + 2022-05-25 + Added presence statement for node serial-number + 2022-04-05 + Added generate-keys in key/generate/rsa/label + 2022-03-21 + Added auto-enroll support"; + semver:module-version "3.0.0"; + } + revision 2021-06-17 { + description + "Fixed missing leaf subject-name and combined subject-name ca-cartificate for ca-certificate + 2021-04-22 + Initial release"; + semver:module-version "2.0.0"; + } + revision 2021-04-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container pki { + presence "Indicates a pki node is configured."; + description + "Enable SNMP traps for certificate expiry"; + } + } + container crypto { + description + "Global Crypto configuration command"; + container ca { + description + "Certification authority"; + container trustpoint { + description + " Config a trustpoint"; + container system-trustpoint { + presence "Indicates a system-trustpoint node is configured."; + description + "Default System trustpoint"; + leaf description { + type string { + length "1..80" { + description + "Description for this trustpoint"; + } + } + description + "Description for the trustpoint"; + } + container enrollment { + description + "Enrollment parameters"; + container retry { + description + "Polling parameters"; + leaf count { + type uint32 { + range "1..100" { + description + "Number of times to poll a CA for a certificate"; + } + } + description + "How many times to poll CA for our certificate"; + } + leaf period { + type uint32 { + range "1..60" { + description + "Period in minutes between attempts to contact a CA"; + } + } + description + "How long to wait between requests to CA for our certificate"; + } + } + leaf url { + type string { + length "1..800" { + description + "URL"; + } + } + description + "CA server enrollment URL"; + } + container terminal { + must "not(../self)"; + presence "Indicates a terminal node is configured."; + description + "Enroll via the terminal (cut-and-paste)"; + } + container self { + must "not(../terminal)"; + presence "Indicates a self node is configured."; + description + "Enroll self create self signed CA cert and the router cert signed using the same"; + } + } + container sftp-password { + description + "Secure FTP password"; + leaf password { + type xr:Proprietary-password; + description + "Enter password in encrypted form"; + } + } + leaf sftp-username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "username"; + } + } + description + "Secure FTP username"; + } + leaf auto-enroll { + type uint32 { + range "1..99" { + description + "auto-enroll percentage"; + } + } + description + "Set auto-enroll percentage at which renewal will be triggered"; + } + leaf rsakeypair { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Key pair label"; + } + } + description + "RSA key pair"; + } + container ca-keypair { + description + "Self enrollment, key pair ca cert"; + leaf rsa { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "rsa key pair label"; + } + } + must + "not(../ecdsanistp256 or ../ecdsanistp384 + or ../ecdsanistp521 or ../dsa + or ../ed25519)"; + description + "Self enrollment, rsa key pair"; + } + leaf ecdsanistp256 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Ecdsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp384 + or ../ecdsanistp521 or ../dsa + or ../ed25519)"; + description + "Self enrollment, ecdsa key pair"; + } + leaf ecdsanistp384 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Ecdsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp521 or ../dsa + or ../ed25519)"; + description + "Self enrollment, ecdsa key pair"; + } + leaf ecdsanistp521 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Ecdsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp384 or ../dsa + or ../ed25519)"; + description + "Self enrollment, ecdsa key pair"; + } + leaf dsa { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Dsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp384 or ../ecdsanistp521 + or ../ed25519)"; + description + "Self enrollment, dsa key pair label"; + } + leaf ed25519 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "ed25519 key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp384 or ../ecdsanistp521 + or ../dsa)"; + description + "ed25519 key pair label"; + } + } + container keypair { + description + "key pair for router/leaf cert"; + leaf rsa { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "rsa key pair label"; + } + } + must + "not(../ecdsanistp256 or ../ecdsanistp384 + or ../ecdsanistp521 or ../dsa + or ../ed25519)"; + description + "Rsa key pair"; + } + leaf ecdsanistp256 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Ecdsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp384 + or ../ecdsanistp521 or ../dsa + or ../ed25519)"; + description + "Ecdsa key pair"; + } + leaf ecdsanistp384 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Ecdsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp521 or ../dsa + or ../ed25519)"; + description + "Self enrollment, ecdsa key pair"; + } + leaf ecdsanistp521 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Ecdsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp384 or ../dsa + or ../ed25519)"; + description + "Self enrollment, ecdsa key pair"; + } + leaf dsa { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Dsa key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp384 or ../ecdsanistp521 + or ../ed25519)"; + description + "Dsa key pair label"; + } + leaf ed25519 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "ed25519 key pair label"; + } + } + must + "not(../rsa or ../ecdsanistp256 + or ../ecdsanistp384 or ../ecdsanistp521 + or ../dsa)"; + description + "ed25519 key pair label"; + } + } + container crl { + description + "CRL options"; + container optional { + presence "Indicates a optional node is configured."; + description + "CRL verification as optional"; + } + } + container query { + description + "Query parameters"; + leaf url { + type string { + length "1..800" { + description + "URL"; + } + } + description + "CA server query URL"; + } + } + container ip-address { + description + "include ip address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../none)"; + description + "ip address"; + } + container none { + must "not(../ipv4-address)"; + presence "Indicates a none node is configured."; + description + "do not include ip address"; + } + } + leaf subject-name { + type string { + length "1..800" { + description + "Subject Name"; + } + } + description + "Subject Name"; + } + leaf subject-name-ca-certificate { + type string { + length "1..800" { + description + "Subject Name"; + } + } + description + "Ca Certificate subject name for self enrollment"; + } + container serial-number { + presence "Indicates a serial-number node is configured."; + description + "include serial number"; + container none { + presence "Indicates a none node is configured."; + description + "do not include serial number"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name (max:32 chars)"; + } + } + description + "Source interface VRF "; + } + container lifetime { + description + "lifetime for certificate valid for self enrollment"; + leaf ca-certificate { + type uint32 { + range "30..5475" { + description + "Validity of CA certficate in days"; + } + } + description + "lifetime for ca-certificate valid for self enrollemnt"; + } + leaf certificate { + type uint32 { + range "30..5474" { + description + "Validity of certficate in days"; + } + } + description + "lifetime for ertificate valid for self enrollemnt"; + } + } + container key-usage { + description + "key usage field for the certificate self enrollment"; + container ca-certificate { + presence "Indicates a ca-certificate node is configured."; + description + "key usage field for the CA certificate"; + leaf digitalsignature { + type boolean; + mandatory true; + description + "Key usage field as digital-signature for CA certificate"; + } + leaf keycertsign { + type boolean; + mandatory true; + description + "Key usage field as key-certsign for CA certificate"; + } + leaf crlsign { + type boolean; + mandatory true; + description + "Key usage field as crl-sign for CA certificate"; + } + leaf nonrepudiation { + type boolean; + mandatory true; + description + "Key usage field as non-repudiation for CA certificate"; + } + } + container certificate { + must "digitalsignature or keyagreement or nonrepudiation or dataencipherment or keyencipherment"; + presence "Indicates a certificate node is configured."; + description + "key usage field for the leaf certificates"; + container digitalsignature { + presence "Indicates a digitalsignature node is configured."; + description + "Key usage field as digital-signature for certificate"; + } + container keyagreement { + presence "Indicates a keyagreement node is configured."; + description + "Key usage field as key-agreement for certificate"; + } + container nonrepudiation { + presence "Indicates a nonrepudiation node is configured."; + description + "Key usage field as non-repudiation for certificate"; + } + container dataencipherment { + presence "Indicates a dataencipherment node is configured."; + description + "Key usage field as data-encipherment for certificate"; + } + container keyencipherment { + presence "Indicates a keyencipherment node is configured."; + description + "Key usage field as key-encipherment for certificate"; + } + } + } + leaf message-digest { + type enumeration { + enum "md5" { + value 1; + description + "md5 algorithm for message digest.(1)"; + } + enum "sha1" { + value 2; + description + "sha1 algorithm for message digest.(2)"; + } + enum "sha256" { + value 3; + description + "sha256 algorithm for message digest.(3)"; + } + enum "sha384" { + value 4; + description + "sha384 algorithm for message digest.(4)"; + } + enum "sha512" { + value 5; + description + "sha384 algorithm for message digest.(5)"; + } + } + description + "Certificate message digesti self enrollment"; + } + } + container trustpoints { + description + "Config a trustpoint"; + list trustpoint { + key "trustpoint-name"; + description + "Trustpoint"; + leaf trustpoint-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Trustpoint Name"; + } + } + description + "Trustpoint Name"; + } + leaf description { + type string { + length "1..80" { + description + "Description for this trustpoint"; + } + } + description + "Description for the trustpoint"; + } + container enrollment { + description + "Enrollment parameters"; + container retry { + description + "Polling parameters"; + leaf count { + type uint32 { + range "1..100" { + description + "Number of times to poll a CA for a certificate"; + } + } + description + "How many times to poll CA for our certificate"; + } + leaf period { + type uint32 { + range "1..60" { + description + "Period in minutes between attempts to contact a CA"; + } + } + description + "How long to wait between requests to CA for our certificate"; + } + } + leaf url { + type string { + length "1..800" { + description + "URL"; + } + } + description + "CA server enrollment URL"; + } + container terminal { + presence "Indicates a terminal node is configured."; + description + "Enroll via the terminal (cut-and-paste)"; + } + } + container sftp-password { + description + "Secure FTP password"; + leaf password { + type xr:Proprietary-password; + description + "Enter password in encrypted form"; + } + } + leaf sftp-username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "username"; + } + } + description + "Secure FTP username"; + } + leaf auto-enroll { + type uint32 { + range "1..99" { + description + "auto-enroll percentage"; + } + } + description + "Set auto-enroll percentage at which renewal will be triggered"; + } + leaf rsakeypair { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Key pair label"; + } + } + description + "RSA key pair"; + } + container crl { + description + "CRL options"; + container optional { + presence "Indicates a optional node is configured."; + description + "CRL verification as optional"; + } + } + container query { + description + "Query parameters"; + leaf url { + type string { + length "1..800" { + description + "URL"; + } + } + description + "CA server query URL"; + } + } + container ip-address { + description + "include ip address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../none)"; + description + "ip address"; + } + container none { + must "not(../ipv4-address)"; + presence "Indicates a none node is configured."; + description + "do not include ip address"; + } + } + leaf subject-name { + type string { + length "1..800" { + description + "Subject Name"; + } + } + description + "Subject Name"; + } + container serial-number { + presence "Indicates a serial-number node is configured."; + description + "include serial number"; + container none { + presence "Indicates a none node is configured."; + description + "do not include serial number"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name (max:32 chars)"; + } + } + description + "Source interface VRF "; + } + } + } + } + container openssh { + description + "Openssh certificates"; + container trustpoints { + description + " Config a trustpoint"; + list trustpoint { + key "trustpoint-name"; + description + " Config a trustpoint"; + leaf trustpoint-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Trustpoint Name"; + } + } + description + " Config a trustpoint"; + } + leaf rsakeypair { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Key pair label"; + } + } + description + "RSA key pair"; + } + } + } + } + leaf http-proxy { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Http proxy server"; + } + } + must "../port"; + description + "Specify proxy server for http request"; + } + leaf port { + type uint32 { + range "1..65535" { + description + "http proxy server port number"; + } + } + must "../http-proxy"; + description + "proxy server port number"; + } + container source-interface { + description + "Cisco source-interface name"; + leaf ipv4 { + type xr:Interface-name; + must "not(../ipv6)"; + description + "Choose Ipv4 address from interface"; + } + leaf ipv6 { + type xr:Interface-name; + must "not(../ipv4)"; + description + "Choose Ipv6 address from interface"; + } + } + container rsa { + description + "allow/disable RSA key bits modulus size"; + container one-thousand-twenty-four { + description + "Disable 1024 key bits modulus size"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Trustpool certificates with RSA modulus 1024"; + } + } + } + container fqdn-check { + description + " If the CN name contains the IP address instead of a FQDN, disable rejecting the TLS connection, to allow the connection to established (this is less secure)."; + container ip-address { + description + "allow ip-address in the Common Name"; + container allow { + presence "Indicates a allow node is configured."; + description + "allow TLS connection when CN contains IP address "; + } + } + } + container trustpool { + description + " Config a trustpool"; + container policy { + presence "Indicates a policy node is configured."; + description + " Config a trustpool policy"; + leaf description { + type string { + length "1..80" { + description + "Description for this trustpoint"; + } + } + description + "Description for the trustpoint"; + } + container cabundle { + description + "certificate bundle"; + leaf url { + type string { + length "1..800" { + description + "URL"; + } + } + description + "CA bundle download parameters"; + } + } + container crl { + description + "CRL options"; + container optional { + presence "Indicates a optional node is configured."; + description + "CRL verification as optional"; + } + } + leaf vrf { + type string { + length "1..32" { + description + "Enter the vrf name"; + } + } + description + "Cisco vrf name"; + } + } + } + container crl { + description + "Certification revocation list"; + leaf curl-timeout { + type uint32 { + range "5..50" { + description + "timeout value in seconds for a CURL request to timeout"; + } + } + description + "timeout value in seconds for a CURL request to timeout"; + } + } + } + container fips-mode { + presence "Indicates a fips-mode node is configured."; + description + "Enable FIPS mode"; + } + container key { + description + "Keys to be generated"; + container generate { + description + "Generate new keys"; + container rsa { + description + "Generate RSA key"; + list label { + must "general-keys or usage-keys"; + key "label-name"; + description + "Label name"; + leaf label-name { + type union { + type string { + pattern "the_default" { + description + "Default label name"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Label name"; + } + } + } + description + "Label name"; + } + leaf key-module-size { + type uint32 { + range "512..4096" { + description + "Size of key modulus"; + } + } + mandatory true; + description + "Size of key modulus"; + } + container general-keys { + must "not(../usage-keys)"; + presence "Indicates a general-keys node is configured."; + description + "Generate a general purpose RSA key pair for signing and encryption"; + } + container usage-keys { + must "not(../general-keys)"; + presence "Indicates a usage-keys node is configured."; + description + "Generate usage-keys"; + } + leaf pubkey { + type string { + length "1..1024" { + description + "Generated keys in pem format"; + } + } + mandatory true; + description + "Public key"; + } + } + } + container ed25519 { + presence "Indicates a ed25519 node is configured."; + description + "Generate ED25519 keys"; + } + container dsa { + description + "Generate dsa keys"; + leaf number-of-bits { + type uint32 { + range "512..2048" { + description + "Number of bits"; + } + } + description + "Number of bits"; + } + } + container ecdsa { + description + "Generate ecdsa keys"; + container nistp256 { + presence "Indicates a nistp256 node is configured."; + description + " Generate a ECDSA key of curve type nistp256"; + } + container nistp384 { + presence "Indicates a nistp384 node is configured."; + description + "Generate a ECDSA key of curve type nist384"; + } + container nistp521 { + presence "Indicates a nistp521 node is configured."; + description + "Generate a ECDSA key of curve type nist521"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dac-rate-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dac-rate-cfg.yang new file mode 100644 index 000000000..3dba291f1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dac-rate-cfg.yang @@ -0,0 +1,106 @@ +module Cisco-IOS-XR-um-dac-rate-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dac-rate-cfg"; + prefix um-dac-rate-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 dac-rate package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-08-31 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature optics { + description + "optics"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + leaf dac-rate { + when "../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + type enumeration { + enum "1x1" { + value 0; + description + "Select 1:1 sampling rate(Sampling off)"; + } + enum "1x1.25" { + value 1; + description + "Select 1:1.25 sampling rate"; + } + enum "1x1.50" { + value 2; + description + "Select 1:1.50 sampling rate"; + } + enum "1x1.75" { + value 3; + description + "Select 1:1.75 sampling rate"; + } + enum "1x2" { + value 4; + description + "Select 1:2 sampling rate"; + } + } + description + "Configure Sampling rate"; + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dci-fabric-interconnect-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dci-fabric-interconnect-cfg.yang new file mode 100644 index 000000000..9e9b2fb41 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dci-fabric-interconnect-cfg.yang @@ -0,0 +1,260 @@ +module Cisco-IOS-XR-um-dci-fabric-interconnect-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dci-fabric-interconnect-cfg"; + prefix um-dci-fabric-interconnect-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 dci-fabric-interconnect package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container dci-fabric-interconnect { + presence "Indicates a dci-fabric-interconnect node is configured."; + description + "Configure FTI parameters/sub-parameters"; + leaf identity { + type union { + type string { + length "1..800" { + description + "Enter Identity: Loopback Interface name"; + } + } + type inet:ipv4-address-no-zone; + } + description + "Enter Identity: Loopback Interface name"; + } + container auto-configuration-pool { + presence "Indicates a auto-configuration-pool node is configured."; + description + "Configure Auto Config Pool parameters"; + leaf bgp-as { + type uint32 { + range "0..4294967295" { + description + "AS number"; + } + } + description + "Specify BGP AS number"; + } + container local-vtep { + description + "Specify VXLAN attributes"; + leaf nve { + type uint32 { + range "0..4294967295" { + description + "index"; + } + } + description + "NVE interface id"; + } + } + leaf bridge-group { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "name"; + } + } + description + "Bridge-group name"; + } + container vrfs { + description + "Configure local VRF parameters"; + list vrf { + key "vrf-name"; + description + "Configure local VRF parameters"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "vrf name"; + } + } + description + "Configure local VRF parameters"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "BVI override IP address"; + } + } + } + container vni-pool { + presence "Indicates a vni-pool node is configured."; + description + "VNI range value"; + leaf min-value { + type uint32 { + range "1..4000" { + description + "VNI Range:min value"; + } + } + mandatory true; + description + "VNI range value"; + } + leaf max-value { + type uint32 { + range "1..4000" { + description + "VNI Range:max value"; + } + } + mandatory true; + description + "VNI Range:max value"; + } + } + container bvi-pool { + presence "Indicates a bvi-pool node is configured."; + description + "BVI range value"; + leaf min-value { + type uint32 { + range "1..4000" { + description + "BVI Range:min value"; + } + } + mandatory true; + description + "BVI range value"; + } + leaf max-value { + type uint32 { + range "1..4000" { + description + "BVI Range:max value"; + } + } + mandatory true; + description + "BVI Range:max value"; + } + } + container bd-pool { + presence "Indicates a bd-pool node is configured."; + description + "Bridge Domain range value"; + leaf min-value { + type uint32 { + range "1..4000" { + description + "BD Range:min value"; + } + } + mandatory true; + description + "Bridge Domain range value"; + } + leaf max-value { + type uint32 { + range "1..4000" { + description + "BD Range:max value"; + } + } + mandatory true; + description + "BD Range:max value"; + } + } + } + container fabrics { + description + "Configure fabric parameters"; + list fabric { + key "fabric-id"; + description + "Configure fabric parameters"; + leaf fabric-id { + type uint32 { + range "1000..9999" { + description + "fabric identifier"; + } + } + description + "Configure fabric parameters"; + } + container opflex-peers { + description + "Enter Opflex peer info"; + list opflex-peer { + key "address"; + description + "Enter Opflex peer info"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter Opflex peer info"; + } + } + } + container ssl { + description + "SSL configuration"; + container disabled { + must "not(../path)"; + presence "Indicates a disabled node is configured."; + description + "SSL disabled"; + } + leaf path { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Path to certificate"; + } + } + must "not(../disabled)"; + description + "Path to certificate"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv4-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv4-cfg.yang new file mode 100644 index 000000000..7b3aa3646 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv4-cfg.yang @@ -0,0 +1,5270 @@ +module Cisco-IOS-XR-um-dhcp-ipv4-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dhcp-ipv4-cfg"; + prefix um-dhcp-ipv4-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + 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 dhcp-ipv4 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container dhcp { + description + "Dynamic Host Configuration Protocol"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Configure IPv4 DHCP"; + container vrfs { + description + "Assign a profile to VRF"; + list vrf { + must "proxy or relay"; + key "vrf-name"; + description + "VRF name"; + leaf vrf-name { + type union { + type string { + pattern "(default|all)" { + description + "Assign a profile to default VRF or all VRFs"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + } + description + "VRF name"; + } + container proxy { + must "not(../relay)"; + presence "Indicates a proxy node is configured."; + description + "Assign a proxy profile to VRF"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + container relay { + must "not(../proxy)"; + presence "Indicates a relay node is configured."; + description + "Assign a relay profile to VRF"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + } + } + container profiles { + description + "Create or enter a profile"; + list profile { + key "profile-name"; + description + "Profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Profile name"; + } + container base { + presence "Indicates a base node is configured."; + description + "Create or enter base profile"; + container default { + must "profile/profile-name and (profile/proxy or profile/server)"; + description + "Create or enter default profile"; + container profile { + description + "Enter a profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Profile name"; + } + container proxy { + must "not(../server)"; + presence "Indicates a proxy node is configured."; + description + "Proxy profile"; + } + container server { + must "not(../proxy)"; + presence "Indicates a server node is configured."; + description + "Server profile"; + } + } + } + container match { + description + "Insert match keyword"; + container option { + description + "Specify match option"; + container option-60-vendor-class-id { + description + "Insert option 60 vendor class id"; + container default { + description + "Create or enter default action"; + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor-id specific Discover packet"; + } + enum "drop" { + value 1; + description + "Drop vendor-id specific Discover packet"; + } + } + description + "Enter action"; + } + } + container hex-actions { + description + "Insert hex pattern"; + list hex-action { + must "action"; + key "pattern"; + description + "Insert hex pattern"; + leaf pattern { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DISCOVER"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DISCOVER"; + } + } + description + "Enter action"; + } + } + } + container hex-profiles { + description + "Insert hex pattern"; + list hex-profile { + must "profile/profile-name and (profile/proxy or profile/server)"; + key "pattern"; + description + "Insert hex pattern"; + leaf pattern { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern"; + } + container profile { + description + "Enter a profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Profile name"; + } + container proxy { + must "not(../server)"; + presence "Indicates a proxy node is configured."; + description + "Proxy profile"; + } + container server { + must "not(../proxy)"; + presence "Indicates a server node is configured."; + description + "Server profile"; + } + } + } + } + container string-actions { + description + "Insert string pattern"; + list string-action { + must "action"; + key "pattern"; + description + "Insert string pattern"; + leaf pattern { + type string { + length "1..64" { + description + "Enter ascii double quoted string pattern"; + } + pattern "[\"].*.[\"]"; + } + description + "Insert string pattern"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DISCOVER"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DISCOVER"; + } + } + description + "Enter action"; + } + } + } + container string-profiles { + description + "Insert string pattern"; + list string-profile { + must "profile/profile-name and (profile/proxy or profile/server)"; + key "pattern"; + description + "Insert string pattern"; + leaf pattern { + type string { + length "1..64" { + description + "Enter ascii double quoted string pattern"; + } + pattern "[\"].*.[\"]"; + } + description + "Insert string pattern"; + } + container profile { + description + "Enter a profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Profile name"; + } + container proxy { + must "not(../server)"; + presence "Indicates a proxy node is configured."; + description + "Proxy profile"; + } + container server { + must "not(../proxy)"; + presence "Indicates a server node is configured."; + description + "Server profile"; + } + } + } + } + } + } + container mode-classes { + description + "Specify PPP/IPoE class option"; + list mode-class { + key "mode-class-name"; + description + "Specify PPP/IPoE class option"; + leaf mode-class-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Class name"; + } + } + description + "Specify PPP/IPoE class option"; + } + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter proxy or server profile"; + } + container proxy { + must "not(../server)"; + presence "Indicates a proxy node is configured."; + description + "Proxy profile"; + } + container server { + must "not(../proxy)"; + presence "Indicates a server node is configured."; + description + "Server profile"; + } + } + } + } + container match-default { + description + "Default match option"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + must "../server"; + description + "Enter server profile"; + } + container server { + must "../profile"; + presence "Indicates a server node is configured."; + description + "Specify mode-class based Server option"; + } + } + container dhcp-to-aaa { + description + "Enable to provide the list of options need to send to aaa"; + container option { + description + "option type"; + container list { + description + "List of options"; + container all { + presence "Indicates a all node is configured."; + description + "Allow all DHCP option to AAA"; + leaf option-number { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + description + "Option number"; + } + } + } + } + } + container relay { + description + "Specify Relay Agent Information Option configuration"; + container information { + description + "Specify Relay Agent Information Option configuration"; + container authenticate { + description + "Specify Relay Agent Information Option authenticate"; + container received { + must "not(../inserted)"; + presence "Indicates a received node is configured."; + description + "Authenticate using received Relay Agent Information Option"; + } + container inserted { + must "not(../received)"; + presence "Indicates a inserted node is configured."; + description + "Authenticate using inserted Relay Agent Information Option"; + } + } + container option { + description + "Insert Relay Agent Information circuit ID and remote ID suboptions in client request"; + leaf remote-id { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "Remote id value"; + } + } + description + "Enter remote-id value"; + } + } + } + } + } + container cnbng { + presence "Indicates a cnbng node is configured."; + description + "Create or enter cnbng profile"; + } + container proxy { + presence "Indicates a proxy node is configured."; + description + "Create or enter proxy profile"; + container helper-address { + description + "Specify the server address to relay packets"; + container vrfs { + description + "Specify server VRF"; + list vrf { + key "vrf-name"; + description + "VRF name"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + } + description + "VRF name"; + } + container ip-addresses { + description + "configure this node"; + list ip-address { + key "address"; + description + "configure this node"; + leaf address { + type inet:ipv4-address-no-zone; + description + "configure this node"; + } + leaf giaddr { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Specify gateway address to use in packets relayed to server"; + } + } + } + } + } + } + container match { + description + "Insert match keyword"; + container option { + description + "Specify match option"; + container option-60-vendor-class-id { + description + "Insert option 60 vendor class id"; + container hexes { + description + "Insert hex pattern"; + list hex { + must "action"; + key "pattern"; + description + "Insert hex pattern"; + leaf pattern { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor-id specific Discover packet"; + } + enum "drop" { + value 1; + description + "Drop vendor-id specific Discover packet"; + } + enum "relay" { + value 2; + description + "Relay vendor-id specific DHCP packets unaltered"; + } + } + description + "Enter action"; + } + } + } + container strings { + description + "Insert string pattern"; + list string { + key "pattern"; + description + "Insert string pattern"; + leaf pattern { + type string { + length "1..64" { + description + "Enter ascii double quoted string pattern to match"; + } + pattern "[\"].*.[\"]"; + } + description + "Insert string pattern"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor-id specific Discover packet"; + } + enum "drop" { + value 1; + description + "Drop vendor-id specific Discover packet"; + } + enum "relay" { + value 2; + description + "Relay vendor-id specific DHCP packets unaltered"; + } + } + description + "Enter action"; + } + } + } + container default { + description + "Default action"; + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor-id specific Discover packet"; + } + enum "drop" { + value 1; + description + "Drop vendor-id specific Discover packet"; + } + enum "relay" { + value 2; + description + "Relay vendor-id specific DHCP packets unaltered"; + } + } + description + "Enter action"; + } + } + } + } + } + container relay { + description + "Specify Relay Agent Information Option configuration"; + container information { + description + "Specify Relay Agent Information Option configuration"; + container check { + presence "Indicates a check node is configured."; + description + "Check Relay Agent Information Option in server reply"; + } + container option { + presence "Indicates a option node is configured."; + description + "Insert Relay Agent Information circuit ID and remote ID suboptions in client request"; + container vpn { + presence "Indicates a vpn node is configured."; + description + "Insert Relay Agent Information VPN suboptions in client request"; + } + container vpn-mode { + description + "Relay Agent Information VPN suboptions mode"; + container rfc { + must "not(../cisco)"; + presence "Indicates a rfc node is configured."; + description + "Relay Agent Information VPN suboptions in RFC compliance"; + } + container cisco { + must "not(../rfc)"; + presence "Indicates a cisco node is configured."; + description + "Relay Agent Information VPN suboptions in CISCO proprietary"; + } + } + container allow-untrusted { + presence "Indicates a allow-untrusted node is configured."; + description + "Forward untrusted packets"; + } + leaf remote-id { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "Remote id value"; + } + } + description + "Enter remote-id value"; + } + container suppress { + presence "Indicates a suppress node is configured."; + description + "Suppress remote id"; + } + container enable { + presence "Indicates a enable node is configured."; + description + "Enable"; + } + container circuit-id { + description + "Insert Relay Agent Information circuit ID suboption in client request"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable"; + } + } + container allow-in-release-msg { + presence "Indicates a allow-in-release-msg node is configured."; + description + "allow to insert option82 in release message"; + } + } + container policy { + description + "Specify Relay Agent Information Option policy"; + container drop { + presence "Indicates a drop node is configured."; + description + "Drop client request packets with Relay Agent Information Option"; + } + } + container keep { + presence "Indicates a keep node is configured."; + description + "Keep existing Relay Agent Information Option in client request"; + } + container replace { + presence "Indicates a replace node is configured."; + description + "Replace existing Relay Agent Information Option in client request"; + } + container encapsulate { + presence "Indicates a encapsulate node is configured."; + description + "Encapsulate existing Relay Agent Information Option in client request"; + } + container authenticate { + description + "Specify Relay Agent Information Option authenticate"; + container received { + must "not(../inserted)"; + presence "Indicates a received node is configured."; + description + "Authenticate using received Relay Agent Information Option"; + } + container inserted { + must "not(../received)"; + presence "Indicates a inserted node is configured."; + description + "Authenticate using inserted Relay Agent Information Option"; + } + } + } + } + container giaddr { + description + "Specify gateway address policy"; + container policy { + description + "Specify gateway address policy"; + container keep { + presence "Indicates a keep node is configured."; + description + "Retain gateway address in client Request"; + } + } + } + container broadcast-flag { + description + "Specify broadcast flag"; + container policy { + description + "Specify broadcast flag policy"; + container check { + must "not(../unicast-always)"; + presence "Indicates a check node is configured."; + description + "Check the broadcast flag in packets"; + } + container unicast-always { + must "not(../check)"; + presence "Indicates a unicast-always node is configured."; + description + "Set the broadcast-flag policy to unicast-always"; + } + } + } + container allow-move { + presence "Indicates a allow-move node is configured."; + description + "Allow dhcp subscriber move"; + } + container handle-discover-in-bound { + presence "Indicates a handle-discover-in-bound node is configured."; + description + "handle-discover-in-bound "; + } + container limit { + description + "Specify limit"; + container lease { + description + "Specify limit lease"; + leaf per-circuit-id { + type uint32 { + range "1..240000" { + description + "Value of limit lease count"; + } + } + must "not(../per-remote-id or ../per-circuit-id-remote-id or ../per-interface)"; + description + "Insert the limit lease type circuit-id"; + } + leaf per-remote-id { + type uint32 { + range "1..240000" { + description + "Value of limit lease count"; + } + } + must "not(../per-circuit-id or ../per-circuit-id-remote-id or ../per-interface)"; + description + "Insert the limit lease type remote-id"; + } + leaf per-circuit-id-remote-id { + type uint32 { + range "1..240000" { + description + "Value of limit lease count"; + } + } + must "not(../per-remote-id or ../per-circuit-id or ../per-interface)"; + description + "Insert the limit lease type circuit-id+remote-id"; + } + leaf per-interface { + type uint32 { + range "1..240000" { + description + "Value of limit lease count"; + } + } + must "not(../per-remote-id or ../per-circuit-id-remote-id or ../per-circuit-id)"; + description + "Insert the limit lease type interface"; + } + } + } + container lease { + description + "Specify lease"; + container proxy { + description + "Specify lease proxy"; + leaf client-lease-time { + type uint32 { + range "300..4294967295" { + description + "Value of lease proxy client-time in seconds"; + } + } + description + "Specify the lease proxy client lease time"; + } + container set-server-options { + presence "Indicates a set-server-options node is configured."; + description + "Set DHCP server sent options in lease proxy generating ACK"; + } + } + } + container secure-arp { + presence "Indicates a secure-arp node is configured."; + description + "Enable Secure Arp"; + } + container sessions { + description + "Change sessions configuration"; + container mac { + presence "Indicates a mac node is configured."; + description + "Throttle DHCP sessions based on MAC address"; + leaf throttle { + type uint32 { + range "1..65535" { + description + "Number of discovers at which to throttle"; + } + } + must "../throttle-request-period"; + mandatory true; + description + "Throttle DHCP sessions from any one MAC address"; + } + leaf throttle-request-period { + type uint32 { + range "1..100" { + description + "Throttle request period (in secs)"; + } + } + must "../throttle"; + mandatory true; + description + "Throttle request period (in secs)"; + } + leaf throttle-blocking-period { + type uint32 { + range "1..100" { + description + "Throttle blocking period (in secs)"; + } + } + mandatory true; + description + "Throttle blocking period (in secs)"; + } + } + } + container delayed { + description + "For BNG session, delay the authentication"; + container authentication { + presence "Indicates a authentication node is configured."; + description + "authentiaction"; + } + } + container authentication { + description + " Authentication username foramt"; + container username { + description + "Set username"; + container mac { + must "not(../giaddr)"; + presence "Indicates a mac node is configured."; + description + "Set mac in username"; + } + container giaddr { + must "not(../mac)"; + presence "Indicates a giaddr node is configured."; + description + "Set giaddr in username"; + } + } + } + container dhcp-to-aaa { + description + "Enable to provide the list of options need to send to aaa"; + container option { + description + "option type"; + container list { + description + "List of options"; + container all { + presence "Indicates a all node is configured."; + description + "Allow all DHCP option to AAA"; + leaf option-number { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + description + "Option number"; + } + } + } + } + } + container classes { + description + "Create or enter proxy profile class"; + list class { + key "class-name"; + description + "Create or enter proxy profile class"; + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "class name"; + } + } + description + "Create or enter proxy profile class"; + } + container match { + presence "Indicates a match node is configured."; + description + "Insert match keyword"; + container option { + description + "Specify match option"; + container option-60-vendor-class-id { + presence "Indicates a option-60-vendor-class-id node is configured."; + description + "Insert option 60 vendor class id"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern"; + } + leaf mask { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter bit mask pattern string"; + } + } + must "../hex"; + description + "Insert bit mask pattern"; + } + } + container option-77-user-class { + presence "Indicates a option-77-user-class node is configured."; + description + "Insert option 77 user class"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern"; + } + leaf mask { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter bit mask pattern string"; + } + } + must "../hex"; + description + "Insert bit mask pattern"; + } + } + container option-124-vendor-identifying-vendor-class { + presence "Indicates a option-124-vendor-identifying-vendor-class node is configured."; + description + "Insert option 124 vendor-identifying vendor class"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern"; + } + leaf mask { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter bit mask pattern string"; + } + } + must "../hex"; + description + "Insert bit mask pattern"; + } + } + container option-125-vendor-identifying-vendor-specific-info { + presence "Indicates a option-125-vendor-identifying-vendor-specific-info node is configured."; + description + "Insert option 125 vendor-identifying vendor-specific info"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern"; + } + leaf mask { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter bit mask pattern string"; + } + } + must "../hex"; + description + "Insert bit mask pattern"; + } + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify match VRF"; + } + } + container helper-address { + description + "Specify the server address to relay packets"; + container vrfs { + description + "Specify server VRF"; + list vrf { + key "vrf-name"; + description + "VRF name"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + } + description + "VRF name"; + } + container ip-addresses { + description + "configure this node"; + list ip-address { + key "address"; + description + "configure this node"; + leaf address { + type inet:ipv4-address-no-zone; + description + "configure this node"; + } + leaf giaddr { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Specify gateway address to use in packets relayed to server"; + } + } + } + } + } + } + } + } + } + container relay { + presence "Indicates a relay node is configured."; + description + "Create or enter relay profile"; + container broadcast-flag { + description + "Specify broadcast flag policy"; + container policy { + description + "Specify broadcast flag policy"; + container check { + must "not(../unicast-always)"; + presence "Indicates a check node is configured."; + description + "Check the broadcast flag in packets"; + } + container unicast-always { + must "not(../check)"; + presence "Indicates a unicast-always node is configured."; + description + "Set the broadcast-flag policy to unicast-always"; + } + } + } + container helper-address { + description + "Specify the server address to relay packets"; + container vrfs { + description + "Specify server VRF"; + list vrf { + key "vrf-name"; + description + "VRF name"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + } + description + "VRF name"; + } + container ip-addresses { + description + "configure this node"; + list ip-address { + key "address"; + description + "configure this node"; + leaf address { + type inet:ipv4-address-no-zone; + description + "configure this node"; + } + leaf giaddr { + type inet:ipv4-address-no-zone; + description + "Specify gateway address to use in packets relayed to server"; + } + } + } + } + } + } + container relay { + description + "Specify Relay Agent Information Option configuration"; + container information { + description + "Specify Relay Agent Information Option configuration"; + container check { + presence "Indicates a check node is configured."; + description + "Check Relay Agent Information Option in server reply"; + } + container option { + presence "Indicates a option node is configured."; + description + "Insert Relay Agent Information circuit ID and remote ID suboptions in client request"; + container vpn { + presence "Indicates a vpn node is configured."; + description + "Insert Relay Agent Information VPN suboptions in client request"; + } + container vpn-mode { + description + "Relay Agent Information VPN suboptions mode"; + container rfc { + must "not(../cisco)"; + presence "Indicates a rfc node is configured."; + description + "Relay Agent Information VPN suboptions in RFC compliance"; + } + container cisco { + must "not(../rfc)"; + presence "Indicates a cisco node is configured."; + description + "Relay Agent Information VPN suboptions in CISCO proprietary"; + } + } + container allow-untrusted { + presence "Indicates a allow-untrusted node is configured."; + description + "Forward untrusted packets"; + } + container remote-id { + description + "Enter remote-id value"; + container format-type { + description + "Enter the format-type of remote-id"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "remote-id value"; + } + } + must "not(../ascii)"; + description + "Choose the hex string format"; + } + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "remote-id value"; + } + } + must "not(../hex)"; + description + "Choose the ascii string format"; + } + } + } + leaf subscriber-id { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "Subscriber id value"; + } + } + description + "Enter subscriber-id value"; + } + } + container policy { + description + "Specify Relay Agent Information Option policy"; + container drop { + presence "Indicates a drop node is configured."; + description + "Drop client request packets with Relay Agent Information Option"; + } + } + container keep { + presence "Indicates a keep node is configured."; + description + "Keep existing Relay Agent Information Option in client request"; + } + container encapsulate { + presence "Indicates a encapsulate node is configured."; + description + "Encapsulate existing Relay Agent Information Option in client request"; + } + } + } + container giaddr { + description + "Specify gateway address policy"; + container policy { + description + "Specify gateway address policy"; + container drop { + must "not(../replace)"; + presence "Indicates a drop node is configured."; + description + "Drop client requests with non-zero gateway address"; + } + container replace { + must "not(../drop)"; + presence "Indicates a replace node is configured."; + description + "Replace existing gateway address in client request"; + } + } + } + container client-mac-mismatch { + description + "Configure action to take on source mac mismatch"; + container action { + description + "Action to take on mismatch"; + container drop { + presence "Indicates a drop node is configured."; + description + "Drop it"; + } + } + } + } + container server { + presence "Indicates a server node is configured."; + description + "Create or enter server profile"; + container dns-server { + description + "DNS servers"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Domain name"; + } + } + description + "Domain name"; + } + container delete-binding-on-discover { + description + "Delete binding on receiving discover"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable delete binding on discover"; + } + } + container default-router { + description + "default routers"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + leaf subnet-mask { + type inet:ipv4-address-no-zone; + description + "Configure Subnet Mask"; + } + leaf bootfile { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Boot Filename"; + } + } + description + "Boot Filename"; + } + container netbios-name-server { + description + "NetBIOS name servers"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + container lease { + description + "lease"; + container infinite { + must "not(../days)"; + presence "Indicates a infinite node is configured."; + description + "Infinite lease"; + } + leaf days { + type uint32 { + range "0..365" { + description + "Days"; + } + } + must "not(../infinite)"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Hours"; + } + } + must "../days"; + must "../days"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Minutes"; + } + } + must "../hours"; + must "../hours"; + description + "Minutes"; + } + } + container allow-move { + presence "Indicates a allow-move node is configured."; + description + "Allow dhcp subscriber move"; + } + container requested-ip-address-check { + description + "Validate Requested IP Address"; + container disable { + presence "Indicates a disable node is configured."; + description + "specify requested-ip-address-check disable"; + } + } + container server-id-check { + description + "Validate server ID check"; + container disable { + presence "Indicates a disable node is configured."; + description + "specify server-id-check disable"; + } + } + container netbios-node-type { + description + "NetBIOS node type"; + leaf hexadecimal-number { + type uint32 { + range "0..255" { + description + "Hexadecimal number"; + } + } + description + "Hexadecimal number"; + } + container b-node { + presence "Indicates a b-node node is configured."; + description + "Broadcast node"; + } + container h-node { + presence "Indicates a h-node node is configured."; + description + "Hybrid node"; + } + container m-node { + presence "Indicates a m-node node is configured."; + description + "Mixed node"; + } + container p-node { + presence "Indicates a p-node node is configured."; + description + "Peer-to-peer node"; + } + } + leaf pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Dap's pool name"; + } + } + description + "Specify the Pool name"; + } + leaf next-server { + type inet:ipv4-address-no-zone; + description + "Configure the tftp-server IP to be used by the client"; + } + container secure-arp { + presence "Indicates a secure-arp node is configured."; + description + "Enable Secure Arp"; + } + container arp-install-skip-stdalone { + presence "Indicates a arp-install-skip-stdalone node is configured."; + description + "Skip ARP installation for standalone sessions"; + } + container broadcast-flag { + description + "Specify broadcast flag"; + leaf policy { + type enumeration { + enum "Ignore" { + value 0; + description + "Ignore the broadcast policy"; + } + enum "Check" { + value 1; + description + "Check for broadcast flag"; + } + enum "UnicastAlways" { + value 2; + description + "Always Unicast the reply"; + } + } + description + "Specify broadcast flag policy"; + } + } + container limit { + description + "Specify limit"; + container lease { + presence "Indicates a lease node is configured."; + description + "Specify limit lease"; + leaf type { + type enumeration { + enum "per-interface" { + value 1; + description + "Insert the limit lease type interface"; + } + enum "per-circuit-id" { + value 2; + description + "Insert the limit lease type circuit-id"; + } + enum "per-remote-id" { + value 3; + description + "Insert the limit lease type remote-id"; + } + } + mandatory true; + description + "Specify limit lease"; + } + leaf count { + type uint32 { + range "1..240000" { + description + "Value of limit lease count in Decimal"; + } + } + mandatory true; + description + "Value of limit lease count in Decimal"; + } + } + } + container relay { + description + "Specify Relay Agent Information Option configuration"; + container information { + description + "Specify Relay Agent Information Option configuration"; + container authenticate { + description + "Specify Relay Agent Information Option authenticate"; + container received { + must "not(../inserted)"; + presence "Indicates a received node is configured."; + description + "Authenticate using received Relay Agent Information Option"; + } + container inserted { + must "not(../received)"; + presence "Indicates a inserted node is configured."; + description + "Authenticate using inserted Relay Agent Information Option"; + } + } + } + } + container match { + description + "Insert match keyword"; + container option { + description + "Specify match option"; + container option-60-vendor-class-id { + description + "Match option 60 vendor class id"; + container hexes { + description + "Insert hex pattern string"; + list hex { + must "action"; + key "pattern"; + description + "Insert hex pattern string"; + leaf pattern { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern string"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Discover"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Discover"; + } + } + description + "Enter action to be performed"; + } + } + } + container strings { + description + "Insert string pattern"; + list string { + must "action"; + key "pattern"; + description + "Insert string pattern"; + leaf pattern { + type string { + length "1..64" { + description + "Enter ascii double quoted string pattern to match"; + } + pattern "[\"].*.[\"]"; + } + description + "Insert string pattern"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Discover"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Discover"; + } + } + description + "Enter action to be performed"; + } + } + } + container default { + description + "Default action"; + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow DHCP Discover"; + } + enum "drop" { + value 1; + description + "Drop DHCP Discover"; + } + } + description + "Enter action to be performed"; + } + } + } + } + } + container options { + description + "DHCP option code"; + list option { + key "option-code"; + description + "DHCP option code"; + leaf option-code { + type uint32 { + range "0..255" { + description + "DHCP option code"; + } + } + description + "DHCP option code"; + } + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "ASCII string"; + } + } + description + "Data is an NVT ASCII string"; + } + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Hexadecimal string"; + } + } + description + "Hex string"; + } + container force-insert { + presence "Indicates a force-insert node is configured."; + description + "Force insert raw option"; + } + container ip { + description + "Server's IP address"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + } + } + container sessions { + description + "Change sessions configuration"; + container mac { + presence "Indicates a mac node is configured."; + description + "Throttle DHCP sessions based on MAC address"; + leaf throttle { + type uint32 { + range "1..65535" { + description + "Number of discovers at which to throttle"; + } + } + must "../throttle-request-period"; + mandatory true; + description + "Throttle DHCP sessions from any one MAC address"; + } + leaf throttle-request-period { + type uint32 { + range "1..100" { + description + "Throttle request period (in secs)"; + } + } + must "../throttle"; + mandatory true; + description + "Throttle request period (in secs)"; + } + leaf throttle-blocking-period { + type uint32 { + range "1..100" { + description + "Throttle blocking period (in secs)"; + } + } + mandatory true; + description + "Throttle blocking period (in secs)"; + } + } + } + container aaa { + description + "Enable aaa dhcp option force-insert"; + container dhcp-option { + description + "Enable aaa dhcp option force-insert"; + container force-insert { + presence "Indicates a force-insert node is configured."; + description + "Enable aaa dhcp option force-insert"; + } + } + } + container dhcp-to-aaa { + description + "Enable to provide the list of options need to send to aaa"; + container option { + description + "option type"; + container list { + description + "List of options"; + container all { + must "not(../option-number)"; + presence "Indicates a all node is configured."; + description + "Allow all DHCP option to AAA"; + } + leaf-list option-number { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "not(../all)"; + max-elements "12"; + description + "Option number"; + } + } + } + } + container enable-vlan-intf-session-limit { + presence "Indicates a enable-vlan-intf-session-limit node is configured."; + description + "Enable vlan or interface session limit"; + } + container insert-bootfile { + presence "Indicates a insert-bootfile node is configured."; + description + "Force insert bootfile name"; + } + container classes { + description + "Create or enter server profile class"; + list class { + key "class-name"; + description + "Create or enter server profile class"; + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "class-name"; + } + } + description + "Create or enter server profile class"; + } + container match { + description + "Insert match keyword"; + container options { + description + "Specify match option"; + list option { + key "option-code"; + description + "Specify match option"; + leaf option-code { + type enumeration { + enum "circuitid" { + value 1; + description + "Match circuit id of option 82 Relay-agent specific class"; + } + enum "remoteid" { + value 2; + description + "Match remote id of option 82 Relay-agent specific class"; + } + enum "60" { + value 60; + description + "Match option 60 vendor class id"; + } + enum "77" { + value 77; + description + "Match option 77 user class"; + } + enum "124" { + value 124; + description + "Match option 124 vendor-identifying vendor class"; + } + enum "125" { + value 125; + description + "Match option 125 vendor-indentifying vendor-specific info"; + } + } + description + "Specify match option"; + } + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter hex pattern string"; + } + } + description + "Insert hex pattern string"; + } + leaf mask { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Enter bit mask pattern string"; + } + } + must "../hex"; + description + "Insert bit mask pattern"; + } + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify match VRF"; + } + leaf l2-interface { + type xr:Interface-name; + description + "Specify match l2-interface"; + } + } + leaf pool { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Pool name"; + } + } + description + "Specify the pool"; + } + leaf next-server { + type inet:ipv4-address-no-zone; + description + "Configure the tftp-server IP to be used by the client"; + } + container dns-server { + description + "DNS servers"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Domain name"; + } + } + description + "Domain name"; + } + container default-router { + description + "default routers"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + container lease { + description + "lease"; + container infinite { + must "not(../days)"; + presence "Indicates a infinite node is configured."; + description + "Infinite lease"; + } + leaf days { + type uint32 { + range "0..365" { + description + "Days"; + } + } + must "not(../infinite)"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Hours"; + } + } + must "../days"; + must "../days"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Minutes"; + } + } + must "../hours"; + must "../hours"; + description + "Minutes"; + } + } + leaf subnet-mask { + type inet:ipv4-address-no-zone; + description + "Configure Subnet Mask"; + } + leaf bootfile { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Boot Filename"; + } + } + description + "Boot Filename"; + } + container netbios-name-server { + description + "NetBIOS name servers"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + container netbios-node-type { + description + "NetBIOS node type"; + leaf hexadecimal-number { + type uint32 { + range "0..255" { + description + "Hexadecimal number"; + } + } + description + "Hexadecimal number"; + } + container b-node { + presence "Indicates a b-node node is configured."; + description + "Broadcast node"; + } + container h-node { + presence "Indicates a h-node node is configured."; + description + "Hybrid node"; + } + container m-node { + presence "Indicates a m-node node is configured."; + description + "Mixed node"; + } + container p-node { + presence "Indicates a p-node node is configured."; + description + "Peer-to-peer node"; + } + } + container options { + description + "DHCP option code"; + list option { + key "option-code"; + description + "DHCP option code"; + leaf option-code { + type uint32 { + range "0..255" { + description + "DHCP option code"; + } + } + description + "DHCP option code"; + } + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "ASCII string"; + } + } + description + "Data is an NVT ASCII string"; + } + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Hexadecimal string"; + } + } + description + "Hex string"; + } + container force-insert { + presence "Indicates a force-insert node is configured."; + description + "Force insert raw option"; + } + container ip { + description + "Server's IP address"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + max-elements "8"; + description + "configure this node"; + } + } + } + } + } + } + } + container snoop { + presence "Indicates a snoop node is configured."; + description + "Create or enter snoop profile"; + container trusted { + presence "Indicates a trusted node is configured."; + description + "Trusted sources"; + } + container relay { + description + "Relay Agent Information Option configuration"; + container information { + description + "Relay Agent Information Option configuration"; + container option { + presence "Indicates a option node is configured."; + description + "Insert Relay Agent Information circuit ID and remote ID suboptions in client request"; + container allow-untrusted { + presence "Indicates a allow-untrusted node is configured."; + description + "Forward untrusted packets"; + } + container remote-id { + description + "Enter remote-id value"; + container format-type { + description + "Enter the format-type of remote-id"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "Remote id value"; + } + } + must "not(../ascii)"; + description + "Choose the hex string format"; + } + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "Remote id value"; + } + } + must "not(../hex)"; + description + "Choose the ascii string format"; + } + } + } + } + container policy { + description + "Specify Relay Agent Information Option policy"; + container drop { + must "not(../keep or ../replace or ../encapsulate)"; + presence "Indicates a drop node is configured."; + description + "Drop client request packets with Relay Agent Information Option"; + } + container keep { + must "not(../drop or ../replace or ../encapsulate)"; + presence "Indicates a keep node is configured."; + description + "Keep existing Relay Agent Information Option in client request"; + } + container replace { + must "not(../drop or ../keep or ../encapsulate)"; + presence "Indicates a replace node is configured."; + description + "Replace existing Relay Agent Information Option in client request"; + } + container encapsulate { + must "not(../drop or ../replace or ../keep)"; + presence "Indicates a encapsulate node is configured."; + description + "Encapsulate existing Relay Agent Information Option in client request"; + } + } + } + } + } + } + } + container interfaces { + description + "Assign a profile to interface"; + list interface { + key "interface-name"; + description + "Assign a profile to interface"; + leaf interface-name { + type xr:Interface-name; + description + "Assign a profile to interface"; + } + container base { + presence "Indicates a base node is configured."; + description + "Assign base profile/Option 82 to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + container information { + description + "Information"; + container option { + description + "Insert option 82 for this interface"; + container format-type { + description + "Format type"; + container circuit-id { + description + "Enter circuit-id value"; + leaf format-string { + type string { + length "1..512" { + description + "format string (conversion specifier) enclosed in double quotes"; + } + pattern "[\"].*.[\"]"; + } + must "not(../circuit-id-value) and ../format-argument1"; + description + "Extended format"; + } + leaf format-argument1 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-string"; + description + "Format argument 1"; + } + leaf format-argument2 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument1"; + description + "Format argument 1"; + } + leaf format-argument3 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument2"; + description + "Format argument 1"; + } + leaf format-argument4 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument3"; + description + "Format argument 1"; + } + leaf format-argument5 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument4"; + description + "Format argument 1"; + } + leaf format-argument6 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument5"; + description + "Format argument 1"; + } + leaf format-argument7 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument6"; + description + "Format argument 1"; + } + leaf format-argument8 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument7"; + description + "Format argument 1"; + } + leaf format-argument9 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument8"; + description + "Format argument 1"; + } + leaf format-argument10 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument9"; + description + "Format argument 1"; + } + leaf format-argument11 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument10"; + description + "Format argument 1"; + } + leaf format-argument12 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument11"; + description + "Format argument 1"; + } + leaf format-argument13 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument12"; + description + "Format argument 1"; + } + leaf format-argument14 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument13"; + description + "Format argument 1"; + } + leaf format-argument15 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument14"; + description + "Format argument 1"; + } + leaf format-argument16 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument15"; + description + "Format argument 1"; + } + leaf circuit-id-value { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../format-string)"; + description + "circuit id value"; + } + } + } + } + } + } + container cnbng { + description + "Assign cnbng profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + container proxy { + description + "Assign proxy profile/Option 82 to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + container information { + description + "Information"; + container option { + description + "Insert option 82 for this interface"; + container format-type { + description + "Format type"; + container circuit-id { + description + "Enter circuit-id value"; + leaf format-string { + type string { + length "1..512" { + description + "format string (conversion specifier) enclosed in double quotes"; + } + pattern "[\"].*.[\"]"; + } + must "not(../circuit-id-value) and ../format-argument1"; + description + "Extended format"; + } + leaf format-argument1 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-string"; + description + "Format argument 1"; + } + leaf format-argument2 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument1"; + description + "Format argument 1"; + } + leaf format-argument3 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument2"; + description + "Format argument 1"; + } + leaf format-argument4 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument3"; + description + "Format argument 1"; + } + leaf format-argument5 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument4"; + description + "Format argument 1"; + } + leaf format-argument6 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument5"; + description + "Format argument 1"; + } + leaf format-argument7 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument6"; + description + "Format argument 1"; + } + leaf format-argument8 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument7"; + description + "Format argument 1"; + } + leaf format-argument9 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument8"; + description + "Format argument 1"; + } + leaf format-argument10 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument9"; + description + "Format argument 1"; + } + leaf format-argument11 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument10"; + description + "Format argument 1"; + } + leaf format-argument12 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument11"; + description + "Format argument 1"; + } + leaf format-argument13 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument12"; + description + "Format argument 1"; + } + leaf format-argument14 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument13"; + description + "Format argument 1"; + } + leaf format-argument15 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument14"; + description + "Format argument 1"; + } + leaf format-argument16 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument15"; + description + "Format argument 1"; + } + leaf circuit-id-value { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../format-string)"; + description + "circuit id value"; + } + } + } + container remote-id { + description + "Insert remote ID sub-option"; + container mac-address { + presence "Indicates a mac-address node is configured."; + description + "Insert client MAC address"; + } + } + } + } + } + container relay { + description + "Assign relay profile/Option 82 to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile Name"; + } + container information { + description + "Information"; + container option { + description + "Insert option 82 for this interface"; + container circuit-id { + description + "Enter circuit-id value"; + container format-type { + description + "Format type"; + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../hex)"; + description + "Choose the ascii string format"; + } + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../ascii)"; + description + "Choose the hex string format"; + } + } + } + container format-type { + description + "Format type"; + container circuit-id { + presence "Indicates a circuit-id node is configured."; + description + "Enter circuit-id value"; + leaf format-string { + type string { + length "1..512" { + description + "format string (conversion specifier) enclosed in double quotes"; + } + pattern "[\"].*.[\"]"; + } + mandatory true; + description + "Extended format"; + } + leaf format-argument1 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + mandatory true; + description + "Format argument"; + } + leaf format-argument2 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument1"; + description + "Format argument"; + } + leaf format-argument3 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument2"; + description + "Format argument"; + } + leaf format-argument4 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument3"; + description + "Format argument"; + } + leaf format-argument5 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument4"; + description + "Format argument"; + } + leaf format-argument6 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument5"; + description + "Format argument"; + } + leaf format-argument7 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument6"; + description + "Format argument"; + } + leaf format-argument8 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument7"; + description + "Format argument"; + } + leaf format-argument9 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument8"; + description + "Format argument"; + } + leaf format-argument10 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument9"; + description + "Format argument"; + } + leaf format-argument11 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument10"; + description + "Format argument"; + } + leaf format-argument12 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument11"; + description + "Format argument"; + } + leaf format-argument13 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument12"; + description + "Format argument"; + } + leaf format-argument14 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument13"; + description + "Format argument"; + } + leaf format-argument15 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument14"; + description + "Format argument"; + } + leaf format-argument16 { + type enumeration { + enum "l2-interface" { + value 8; + description + "Ingress L2 Interface"; + } + enum "l3-interface" { + value 9; + description + "Ingress L3 Interface"; + } + enum "hostname" { + value 10; + description + "host name"; + } + } + must "../format-argument15"; + description + "Format argument"; + } + } + } + container remote-id { + description + "Insert remote ID sub-option"; + container mac-address { + must "not(../format-type/ascii or ../format-type/hex)"; + presence "Indicates a mac-address node is configured."; + description + "Insert client MAC address"; + } + container format-type { + description + "Format type"; + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../hex or ../../mac-address)"; + description + "Choose the ascii string format"; + } + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../ascii or ../../mac-address)"; + description + "Choose the hex string format"; + } + } + } + } + } + } + container server { + presence "Indicates a server node is configured."; + description + "Assign server profile/Option 82 to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + container information { + description + "Information"; + container option { + description + "Insert option 82 for this interface"; + container format-type { + description + "Format type"; + container circuit-id { + description + "Enter circuit-id value"; + leaf format-string { + type string { + length "1..512" { + description + "format string (conversion specifier) enclosed in double quotes"; + } + pattern "[\"].*.[\"]"; + } + must "not(../circuit-id-value) and ../format-argument1"; + description + "Extended format"; + } + leaf format-argument1 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-string"; + description + "Format argument 1"; + } + leaf format-argument2 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument1"; + description + "Format argument 1"; + } + leaf format-argument3 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument2"; + description + "Format argument 1"; + } + leaf format-argument4 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument3"; + description + "Format argument 1"; + } + leaf format-argument5 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument4"; + description + "Format argument 1"; + } + leaf format-argument6 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument5"; + description + "Format argument 1"; + } + leaf format-argument7 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument6"; + description + "Format argument 1"; + } + leaf format-argument8 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument7"; + description + "Format argument 1"; + } + leaf format-argument9 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument8"; + description + "Format argument 1"; + } + leaf format-argument10 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument9"; + description + "Format argument 1"; + } + leaf format-argument11 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument10"; + description + "Format argument 1"; + } + leaf format-argument12 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument11"; + description + "Format argument 1"; + } + leaf format-argument13 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument12"; + description + "Format argument 1"; + } + leaf format-argument14 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument13"; + description + "Format argument 1"; + } + leaf format-argument15 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument14"; + description + "Format argument 1"; + } + leaf format-argument16 { + type enumeration { + enum "physical-chassis" { + value 1; + description + "Rack"; + } + enum "physical-slot" { + value 2; + description + "Slot"; + } + enum "physical-subslot" { + value 3; + description + "Subslot"; + } + enum "physical-port" { + value 4; + description + "Port"; + } + enum "physical-subport" { + value 5; + description + "Subport"; + } + enum "inner-vlan-id" { + value 6; + description + "Inner vlan id tag"; + } + enum "outer-vlan-id" { + value 7; + description + "Outer vlan id tag"; + } + } + must "../format-argument15"; + description + "Format argument 1"; + } + leaf circuit-id-value { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../format-string)"; + description + "circuit id value"; + } + } + } + } + } + } + container snoop { + description + "Assign snoop static entry/Option 82 to interface"; + container snoops { + description + "Assign snoop static entry/Option 82 to interface"; + list snoop { + key "mac-address"; + description + "Assign snoop static entry/Option 82 to interface"; + leaf mac-address { + type yang:mac-address; + description + "Assign snoop static entry/Option 82 to interface"; + } + leaf ip-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address"; + } + } + } + container snoop-client-ids { + description + "Assign snoop static entry/Option 82 to interface"; + list snoop-client-id { + key "mac-address client-id"; + description + "Assign snoop static entry/Option 82 to interface"; + leaf mac-address { + type yang:mac-address; + description + "Assign snoop static entry/Option 82 to interface"; + } + leaf client-id { + type uint32 { + range "1..4294967295" { + description + "Enter hex number"; + } + } + description + "Client Identifier"; + } + leaf ip-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address"; + } + } + } + container information { + description + "Information"; + container option { + description + "Insert option 82 for this interface"; + container circuit-id { + description + "Enter circuit-id value"; + container format-type { + description + "Format type"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../ascii)"; + description + "Choose the hex string format"; + } + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "circuit id value"; + } + } + must "not(../hex)"; + description + "Choose the ascii string format"; + } + } + } + } + } + } + } + } + container database { + presence "Indicates a database node is configured."; + description + "Enable DHCP binding database storage to file system"; + container proxy { + presence "Indicates a proxy node is configured."; + description + "Enable DHCP proxy binding database storage to file system"; + } + container server { + presence "Indicates a server node is configured."; + description + "Enable DHCP server binding database storage to file system"; + } + container snoop { + presence "Indicates a snoop node is configured."; + description + "Enable DHCP snoop binding database storage to file system"; + } + leaf full-write-interval { + type uint32 { + range "1..1440" { + description + "Enter full file write interval (minutes)"; + } + } + description + "Full file write interval (default 10 minutes)"; + } + leaf incremental-write-interval { + type uint32 { + range "1..1440" { + description + "Enter incremental file write interval (minutes)"; + } + } + description + "Incremental file write interval (default 1 minute)"; + } + } + container duplicate-mac-allowed { + presence "Indicates a duplicate-mac-allowed node is configured."; + description + "Clients with duplicate mac allowed"; + container exclude-vlan { + presence "Indicates a exclude-vlan node is configured."; + description + "Exclude-vlan"; + } + container include-giaddr { + presence "Indicates a include-giaddr node is configured."; + description + "Include giaddr as client key"; + } + } + container allow-client-id-change { + presence "Indicates a allow-client-id-change node is configured."; + description + "For BNG session, allow client id change for a client MAC"; + } + container disable-shadow-binding { + presence "Indicates a disable-shadow-binding node is configured."; + description + "Option to disable shadow binding"; + } + leaf inner-cos { + type uint32 { + range "0..7" { + description + "inner cos value"; + } + } + description + "Configure inner cos values for dhcp packets"; + } + leaf outer-cos { + type uint32 { + range "0..7" { + description + "Outer cos value"; + } + } + description + "Configure outer cos values for dhcp packets"; + } + container rate-limit { + description + "Rate limit ingress packets"; + leaf period { + type uint32 { + range "1..1000" { + description + "Period in msec (Default: 200 msec)"; + } + } + must "../discover"; + description + "Rate limiter period in msec"; + } + leaf discover { + type uint32 { + range "0..1000" { + description + "Number of Discover packets (Default: 100, 0: No limit)"; + } + } + must "../period"; + description + "Rate limit DISCOVER packets"; + } + } + leaf inflight-limit { + type uint32 { + range "50..400" { + description + "BNG session maximum inflight"; + } + } + description + "For BNG session, Maximum inflight "; + } + container ipoe-dhcp-client-reboot { + description + "For BNG, timed wait for term a session"; + leaf period { + type uint32 { + range "10..30" { + description + "time wait in seconds"; + } + } + must "../max-period"; + description + "ipoe dhcp time wait"; + } + leaf max-period { + type uint32 { + range "10..300" { + description + "max time to wait in seconds "; + } + } + must "../period"; + description + "ipoe dhcp max time wait"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv6-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv6-cfg.yang new file mode 100644 index 000000000..960f70b32 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dhcp-ipv6-cfg.yang @@ -0,0 +1,1351 @@ +module Cisco-IOS-XR-um-dhcp-ipv6-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dhcp-ipv6-cfg"; + prefix um-dhcp-ipv6-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 dhcp-ipv6 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-05 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container dhcp { + description + "Dynamic Host Configuration Protocol"; + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "Configure IPv6 DHCP"; + container profiles { + description + "Create or enter a profile"; + list profile { + key "profile-name"; + description + "Create or enter a profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Profile name"; + } + } + description + "Create or enter a profile"; + } + container cnbng { + presence "Indicates a cnbng node is configured."; + description + "Create or enter cnbng profile"; + } + container proxy { + presence "Indicates a proxy node is configured."; + description + "Create or enter proxy profile"; + list interface { + key "interface-name"; + description + "Specify physical interface for interface-id option"; + leaf interface-name { + type xr:Interface-name; + description + "Specify physical interface for interface-id option"; + } + leaf interface-id { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Interface ID"; + } + } + description + "Physical interface ID"; + } + } + container relay { + description + "Specify relay configuration"; + container option { + description + "Specify relay option configuration"; + leaf link-layer-addr { + type enumeration { + enum "set" { + value 4; + description + "Insert Received LinkLayerAddr Value from SADB"; + } + } + description + "Enter link-layer-addr value"; + } + leaf subscriber-id { + type enumeration { + enum "pppoe" { + value 3; + description + "Insert Received Subscriber-ID Value from SADB"; + } + } + description + "Enter subscriber-id value"; + } + leaf remote-id { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Remote ID"; + } + } + description + "Enter remote-id value"; + } + container pppoe { + must "../remote-id"; + presence "Indicates a pppoe node is configured."; + description + "Set remote-id value from SADB"; + } + container interface-id { + description + "Interface Id option"; + leaf insert { + type enumeration { + enum "local" { + value 0; + description + "Insert locally generated/configured Interface ID value"; + } + enum "received" { + value 1; + description + "Insert received Interface ID value"; + } + enum "pppoe" { + value 2; + description + "Insert received Interface ID value from SADB"; + } + enum "received-nodefault" { + value 3; + description + "No default Interface ID"; + } + } + description + "Insert options for Interface Id"; + } + } + } + } + leaf source-interface { + type xr:Interface-name; + description + "Create or enter proxy profile Source Interface Name"; + } + leaf link-address { + type inet:ipv6-address-no-zone; + description + "Link Address"; + } + container sessions { + description + "Change sessions configuration"; + container mac { + presence "Indicates a mac node is configured."; + description + "Throttle DHCP sessions based on MAC address"; + leaf throttle { + type uint32 { + range "1..65535" { + description + "Number of solicits at which to throttle"; + } + } + must "../throttle-request-period"; + mandatory true; + description + "Throttle DHCP sessions from any one MAC address"; + } + leaf throttle-request-period { + type uint32 { + range "1..100" { + description + "Throttle request period (in secs)"; + } + } + must "../throttle"; + mandatory true; + description + "Throttle request period (in secs)"; + } + leaf throttle-blocking-period { + type uint32 { + range "1..100" { + description + "Throttle blocking period (in secs)"; + } + } + mandatory true; + description + "Throttle blocking period (in secs)"; + } + } + } + container route-add-disable { + presence "Indicates a route-add-disable node is configured."; + description + "Disable route add if interface is down"; + } + container l2ac-route-add-disable { + presence "Indicates a l2ac-route-add-disable node is configured."; + description + "Disable l2ac route add if interface is down"; + } + container linkaddress-from-ra-enable { + presence "Indicates a linkaddress-from-ra-enable node is configured."; + description + "Fill linkaddress in Relay fwd msg with Prefix from Router Advertisement for PPPoE sessions"; + } + container authentication { + description + "Authentication username format"; + container username { + description + "Set username"; + container duid { + presence "Indicates a duid node is configured."; + description + "Set username as DUID"; + } + } + } + container helper-address { + description + "Configure relay destination"; + container vrfs { + description + "Specify server VRF"; + list vrf { + key "vrf-name"; + description + "VRF name"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + } + description + "VRF name"; + } + list ipv6-address { + must "interface or any-output-interface"; + key "address"; + description + "IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + leaf interface { + type xr:Interface-name; + description + "Output Interface"; + } + container any-output-interface { + presence "Indicates a any-output-interface node is configured."; + description + "Any Output Interface"; + } + } + } + } + } + container classes { + description + "Create or enter proxy profile class"; + list class { + key "class-name"; + description + "Create or enter proxy profile class"; + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Class name"; + } + } + description + "Create or enter proxy profile class"; + } + container helper-address { + description + "Specify the server helper address"; + container vrfs { + description + "Specify server VRF"; + list vrf { + key "vrf-name"; + description + "VRF name"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + } + description + "VRF name"; + } + list ipv6-address { + key "address"; + description + "Server address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Server address"; + } + } + } + } + } + leaf link-address { + type inet:ipv6-address-no-zone; + description + "Link Address"; + } + } + } + } + container server { + presence "Indicates a server node is configured."; + description + "Create or enter server profile"; + container classes { + description + "Create or enter server profile class"; + list class { + key "class-name"; + description + "Create or enter server profile class"; + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "class name"; + } + } + description + "Create or enter server profile class"; + } + container dns-server { + description + "DNS servers"; + leaf-list ipv6-address { + type inet:ipv6-address-no-zone; + max-elements "8"; + description + "Server's IPv6 address"; + } + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Domain name"; + } + } + description + "Domain name"; + } + leaf address-pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Address pool name"; + } + } + description + "Address pool"; + } + leaf prefix-pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Prefix pool name"; + } + } + description + "Prefix pool"; + } + leaf preference { + type uint32 { + range "1..255" { + description + "Preference value"; + } + } + description + "DHCP Server Preference"; + } + container lease { + description + "lease"; + container infinite { + must "not(../days)"; + presence "Indicates a infinite node is configured."; + description + "Infinite lease"; + } + leaf days { + type uint32 { + range "0..365" { + description + "Days"; + } + } + must "not(../infinite)"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Hours"; + } + } + must "../days"; + must "../days"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Minutes"; + } + } + must "../hours"; + must "../hours"; + description + "Minutes"; + } + } + } + } + container dns-server { + description + "DNS servers"; + leaf-list ipv6-address { + type inet:ipv6-address-no-zone; + max-elements "8"; + description + "Server's IPv6 address"; + } + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Domain name"; + } + } + description + "Domain name"; + } + leaf aftr-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "AFTR name"; + } + } + description + "AFTR name"; + } + container lease { + description + "lease"; + container infinite { + must "not(../days)"; + presence "Indicates a infinite node is configured."; + description + "Infinite lease"; + } + leaf days { + type uint32 { + range "0..365" { + description + "Days"; + } + } + must "not(../infinite)"; + description + "Days"; + } + leaf hours { + type uint32 { + range "0..23" { + description + "Hours"; + } + } + must "../days"; + must "../days"; + description + "Hours"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Minutes"; + } + } + must "../hours"; + must "../hours"; + description + "Minutes"; + } + } + leaf address-pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Address pool name"; + } + } + description + "Address pool"; + } + leaf prefix-pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Prefix pool name"; + } + } + description + "Prefix pool"; + } + leaf preference { + type uint32 { + range "0..255" { + description + "Preference value"; + } + } + description + "DHCP Server Preference"; + } + container rapid-commit { + presence "Indicates a rapid-commit node is configured."; + description + "Allow RAPID Commit"; + } + container aaa { + description + "Enable aaa dhcpv6 option force-insert"; + container dhcpv6-option { + description + "Enable aaa dhcpv6 option force-insert"; + container force-insert { + presence "Indicates a force-insert node is configured."; + description + "Enable aaa dhcpv6 option force-insert"; + } + } + } + container sessions { + description + "Change sessions configuration"; + container mac { + presence "Indicates a mac node is configured."; + description + "Throttle DHCP sessions based on MAC address"; + leaf throttle { + type uint32 { + range "1..65535" { + description + "Number of solicits at which to throttle"; + } + } + must "../throttle-request-period"; + mandatory true; + description + "Throttle DHCP sessions from any one MAC address"; + } + leaf throttle-request-period { + type uint32 { + range "1..100" { + description + "Throttle request period (in secs)"; + } + } + must "../throttle"; + mandatory true; + description + "Throttle request period (in secs)"; + } + leaf throttle-blocking-period { + type uint32 { + range "1..100" { + description + "Throttle blocking period (in secs)"; + } + } + mandatory true; + description + "Throttle blocking period (in secs)"; + } + } + } + container option { + description + "DHCPv6 options"; + container option-17-vendor-options { + description + "Vendor options"; + leaf hex { + type xr:Cisco-ios-xr-string { + length "1..512" { + description + "Vendor options"; + } + } + description + "Input value in hex format"; + } + } + } + container duid { + description + "Client DUID"; + leaf allowed-type { + type uint32 { + range "1..4" { + description + "Type of DUID to be allowed"; + } + } + description + "Allowed DUID type"; + } + } + container match { + description + "DHCPv6 match"; + container option { + description + "DHCPv6 match option"; + container enterprise-id { + description + "match enterprise number"; + container default { + description + "defaut action for enterprise number"; + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Solicit"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Solicit"; + } + } + description + "action on class-id match"; + } + } + container hexes { + description + "defaut action for enterprise number"; + list hex { + key "enterprise-id"; + description + "defaut action for enterprise number"; + leaf enterprise-id { + type xr:Cisco-ios-xr-string { + length "1..8" { + description + "Enterprise Id"; + } + pattern "[a-zA-Z0-9]+"; + } + description + "defaut action for enterprise number"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Solicit"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Solicit"; + } + } + description + "action on class-id match"; + } + } + } + } + container vendor-class { + description + "match vendor class"; + container default { + description + "default action for enterprise number"; + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Solicit"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Solicit"; + } + } + description + "action on class-id match"; + } + } + container strings { + description + "string action for vendor number"; + list string { + key "vendor-class"; + description + "string action for vendor number"; + leaf vendor-class { + type string { + length "1..64" { + description + "Vendor class"; + } + pattern "[\"].*.[\"]"; + } + description + "string action for vendor number"; + } + leaf action { + type enumeration { + enum "allow" { + value 0; + description + "Allow vendor specific DHCP Solicit"; + } + enum "drop" { + value 1; + description + "Drop vendor specific DHCP Solicit"; + } + } + description + "action on class-id match"; + } + } + } + } + } + } + container enable-vlan-intf-session-limit { + presence "Indicates a enable-vlan-intf-session-limit node is configured."; + description + "Enable vlan or interface session limit"; + } + } + container relay { + presence "Indicates a relay node is configured."; + description + "Create or enter relay profile"; + container helper-address { + description + "Specify the server helper address"; + container vrfs { + description + "Specify server VRF"; + list vrf { + key "vrf-name"; + description + "VRF name"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + } + description + "VRF name"; + } + list ipv6-address { + key "address"; + description + "Server Global unicast address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Server Global unicast address"; + } + leaf interface { + type xr:Interface-name; + description + "Helper-address Specific Source Interface"; + } + } + } + } + } + container option { + description + "Specify relay option configuration"; + leaf remote-id { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Remote ID"; + } + } + description + "Enter remote-id value"; + } + } + container iana-route-add { + presence "Indicates a iana-route-add node is configured."; + description + "Enable route addition for IANA"; + } + leaf source-interface { + type xr:Interface-name; + description + "Relay profile Source Interface Name"; + } + container route-add-disable { + presence "Indicates a route-add-disable node is configured."; + description + "Disable route add if interface is down"; + } + container l2ac-route-add-disable { + presence "Indicates a l2ac-route-add-disable node is configured."; + description + "Disable l2ac route add if interface is down"; + } + leaf link-address { + type inet:ipv6-address-no-zone; + description + "Link Address"; + } + } + container base { + presence "Indicates a base node is configured."; + description + "Create or enter base profile"; + container match { + description + "Enter match option"; + container mode-classes { + description + "Specify PPP/IPoE class option"; + list mode-class { + must "server or proxy"; + key "mode-class-name"; + description + "Specify PPP/IPoE class option"; + leaf mode-class-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Class name"; + } + } + description + "Specify PPP/IPoE class option"; + } + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + mandatory true; + description + "Enter proxy or server profile"; + } + container server { + must "not(../proxy)"; + presence "Indicates a server node is configured."; + description + "Server mode"; + } + container proxy { + must "not(../server)"; + presence "Indicates a proxy node is configured."; + description + "Proxy mode"; + } + } + } + } + container match-default { + must "profile and server"; + presence "Indicates a match-default node is configured."; + description + "Default match option"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + must "../server"; + description + "Enter server profile"; + } + container server { + must "../profile"; + presence "Indicates a server node is configured."; + description + "Server mode"; + } + } + container dhcpv6-to-aaa { + description + "Enable to provide the list of options need to send to aaa"; + container option { + description + "option type"; + container list { + description + "List of options"; + container all { + must "not(../option-number1)"; + presence "Indicates a all node is configured."; + description + "Allow all DHCP option to AAA"; + } + leaf option-number1 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "not(../all)"; + description + "Option number"; + } + leaf option-number2 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number1"; + description + "Option number"; + } + leaf option-number3 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number2"; + description + "Option number"; + } + leaf option-number4 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number3"; + description + "Option number"; + } + leaf option-number5 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number4"; + description + "Option number"; + } + leaf option-number6 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number5"; + description + "Option number"; + } + leaf option-number7 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number6"; + description + "Option number"; + } + leaf option-number8 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number7"; + description + "Option number"; + } + leaf option-number9 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number8"; + description + "Option number"; + } + leaf option-number10 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number9"; + description + "Option number"; + } + leaf option-number11 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number10"; + description + "Option number"; + } + leaf option-number12 { + type uint32 { + range "1..255" { + description + "Option number"; + } + } + must "../option-number11"; + description + "Option number"; + } + } + } + } + } + } + } + container interfaces { + description + "Assign a profile to interface"; + list interface { + key "interface-name"; + description + "Interface to configure"; + leaf interface-name { + type xr:Interface-name; + description + "Interface to configure"; + } + container base { + description + "Assign a base profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + container proxy { + description + "Assign a proxy profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + container server { + description + "Assign a server profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + container relay { + description + "Assign a relay profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + container cnbng { + description + "Assign a cnbng profile to interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + container subscriber-pppoe { + description + "PPPoE subscriber interface"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Profile name"; + } + } + description + "Enter profile name"; + } + } + } + } + container allow-duid-change { + presence "Indicates a allow-duid-change node is configured."; + description + "For BNG session, allow duid change for a client MAC"; + } + leaf inner-cos { + type uint32 { + range "0..7" { + description + "inner cos value 0-7"; + } + } + description + "Inner cos values for DHCPv6 packets to wards clients"; + } + leaf outer-cos { + type uint32 { + range "0..7" { + description + "Outer cos value 0-7"; + } + } + description + "Configure outer cos values for DHCPv6 packet to wards client"; + } + container database { + presence "Indicates a database node is configured."; + description + "Enable DHCP binding database storage to file system"; + container proxy { + presence "Indicates a proxy node is configured."; + description + "Enable DHCP proxy binding database storage to file system"; + } + container server { + presence "Indicates a server node is configured."; + description + "Enable DHCP server binding database storage to file system"; + } + container relay { + presence "Indicates a relay node is configured."; + description + "Enable DHCP relay binding database storage to file system"; + } + leaf full-write-interval { + type uint32 { + range "1..1440" { + description + "Enter full file write interval (minutes)"; + } + } + description + "Full file write interval (default 10 minutes)"; + } + leaf incremental-write-interval { + type uint32 { + range "1..1440" { + description + "Enter incremental file write interval (minutes)"; + } + } + description + "Incremental file write interval (default 1 minute)"; + } + } + container rate-limit { + description + "Rate limit ingress packets"; + leaf period { + type uint32 { + range "1..1000" { + description + "Period in msec (Default: 200 msec)"; + } + } + must "../solicit"; + description + "Rate limiter period in msec"; + } + leaf solicit { + type uint32 { + range "0..1000" { + description + "Number of Solicit packets (Default: 100, 0: No limit)"; + } + } + must "../period"; + description + "Rate limit SOLICIT packets"; + } + } + container hop-count-seed { + presence "Indicates a hop-count-seed node is configured."; + description + "Start hop count to 0 in relay-forward msg for SOLICIT"; + } + leaf ipoe-dhcp-client-reboot { + type uint32 { + range "10..30" { + description + "timed wait in seconds"; + } + } + description + "For BNG, timed wait for term a session"; + } + container handle-jumbo-packet { + presence "Indicates a handle-jumbo-packet node is configured."; + description + "Handle packets of huge size"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-display-qos-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-display-qos-cfg.yang new file mode 100644 index 000000000..36a3c282a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-display-qos-cfg.yang @@ -0,0 +1,77 @@ +module Cisco-IOS-XR-um-display-qos-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-display-qos-cfg"; + prefix um-display-qos-cfg; + + 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 display-qos package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-01 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container display { + description + "Configure QoS display options "; + container qos { + description + "Configure global QoS options "; + container precedence { + description + "Set the display format for precedence values in QoS configuration"; + container string { + must "not(../numeric)"; + presence "Indicates a string node is configured."; + description + "Display format is string"; + } + container numeric { + must "not(../string)"; + presence "Indicates a numeric node is configured."; + description + "Display format is numeric"; + } + } + container dscp { + description + "Set the display format for dscp values in QoS configuration"; + container string { + must "not(../numeric)"; + presence "Indicates a string node is configured."; + description + "Display format is string"; + } + container numeric { + must "not(../string)"; + presence "Indicates a numeric node is configured."; + description + "Display format is numeric"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-domain-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-domain-cfg.yang new file mode 100644 index 000000000..7c1152475 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-domain-cfg.yang @@ -0,0 +1,353 @@ +module Cisco-IOS-XR-um-domain-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-domain-cfg"; + prefix um-domain-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 domain package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-04 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container domain { + description + "Domain service related commands"; + container list { + description + "Domain name to complete unqualified host names"; + list domain { + key "order domain-name"; + description + "A domain name"; + leaf order { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "A domain name"; + } + } + description + "A domain name"; + } + } + } + container lookup { + description + "Enable Domain Name System hostname translation"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Domain Name System hostname translation"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify source interface for DNS resolver"; + } + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Default domain name"; + } + } + description + "Define the default domain name"; + } + container ipv4 { + description + "ipv4 hosts"; + container hosts { + description + "Add an entry to the ip hostname table"; + list host { + key "host-name"; + description + "Name of host"; + leaf host-name { + type string { + length "1..800" { + description + "Name of host"; + } + } + description + "Name of host"; + } + leaf-list ip-address { + type inet:ipv4-address-no-zone; + min-elements 1; + max-elements "8"; + description + "Host IP address (maximum of 8)"; + } + } + } + } + container name-servers { + description + "Specify address of name server to use"; + list name-server { + key "order address"; + description + "Specify address of name server to use"; + leaf order { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Specify address of name server to use"; + } + } + } + container ipv6 { + description + "Ipv6 hosts"; + container host { + description + "Add an entry to the ipv6 hostname table"; + list host { + key "host-name"; + description + "Name of host"; + leaf host-name { + type string { + length "1..800" { + description + "Name of host"; + } + } + description + "Name of host"; + } + leaf-list ipv6-address { + type inet:ipv6-address-no-zone; + min-elements 1; + max-elements "4"; + description + "IPv6 name or address (maximum four addresses)"; + } + } + } + } + leaf multicast { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Default multicast domain name"; + } + } + description + "Define the domain name for multicast address lookups"; + } + container vrfs { + description + "VRF name for domain services"; + list vrf { + key "vrf-name"; + description + "VRF name for domain services"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "VRF name for domain services"; + } + container list { + description + "Domain name to complete unqualified host names"; + list domain { + key "order domain-name"; + description + "A domain name"; + leaf order { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "A domain name"; + } + } + description + "A domain name"; + } + } + } + container lookup { + description + "Enable Domain Name System hostname translation"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Domain Name System hostname translation"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify source interface for DNS resolver"; + } + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Default domain name"; + } + } + description + "Define the default domain name"; + } + container ipv4 { + description + "ipv4 hosts"; + container hosts { + description + "Add an entry to the ip hostname table"; + list host { + key "host-name"; + description + "Name of host"; + leaf host-name { + type string { + length "1..800" { + description + "Name of host"; + } + } + description + "Name of host"; + } + leaf-list ip-address { + type inet:ipv4-address-no-zone; + min-elements 1; + max-elements "8"; + description + "Host IP address (maximum of 8)"; + } + } + } + } + container name-servers { + description + "Specify address of name server to use"; + list name-server { + key "order address"; + description + "Specify address of name server to use"; + leaf order { + type uint32; + description + "This is used to sort the servers in the + order of precedence"; + } + leaf address { + type inet:ip-address-no-zone; + description + "Specify address of name server to use"; + } + } + } + container ipv6 { + description + "Ipv6 hosts"; + container host { + description + "Add an entry to the ipv6 hostname table"; + list host { + key "host-name"; + description + "Name of host"; + leaf host-name { + type string { + length "1..800" { + description + "Name of host"; + } + } + description + "Name of host"; + } + leaf-list ipv6-address { + type inet:ipv6-address-no-zone; + min-elements 1; + max-elements "4"; + description + "IPv6 name or address (maximum four addresses)"; + } + } + } + } + leaf multicast { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Default multicast domain name"; + } + } + description + "Define the domain name for multicast address lookups"; + } + } + } + container default-flows { + description + "default LPTS flows programming"; + container disable { + presence "Indicates a disable node is configured."; + description + "disables default flows programming"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dot1x-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dot1x-cfg.yang new file mode 100644 index 000000000..dcd88b19d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dot1x-cfg.yang @@ -0,0 +1,467 @@ +module Cisco-IOS-XR-um-dot1x-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dot1x-cfg"; + prefix um-dot1x-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-aaa-cfg { + prefix a2; + } + 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 dot1x package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-15 { + description + "Removed unwanted nodes under eapol destination-address + 2022-07-11 + Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy + 2022-03-22 + Added Retry time for MAC Authentication Bypass feature + 2021-11-22 + Added container mab under dot1x"; + semver:module-version "2.0.0"; + } + revision 2021-03-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container dot1x { + description + "Interface Config Commands for IEEE 802.1X"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "String"; + } + } + description + "Credentials profile configuration"; + } + } + container eapol { + description + "EAPOL configuration commands"; + container destination-address { + description + "Destination address for EAPoL frames transmission"; + leaf mac-address { + type yang:mac-address; + description + "configure this node"; + } + } + leaf eth-type { + type enumeration { + enum "876F" { + value 34671; + description + "Value of Ethertype"; + } + } + description + "EAPOL ethertype configuration"; + } + } + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container dot1x { + description + "Interface Config Commands for IEEE 802.1X"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "String"; + } + } + description + "Credentials profile configuration"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + augment "/a2:aaa/a2:authentication" { + description + "This augment extends aaa authentication nodes + configuration"; + container dot1x { + description + "Set authentication lists for Dot1x"; + container default { + description + "Default list name for AAA authentication"; + container group { + description + "Use Server-group"; + leaf use-list-of-all-radius-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + } + must "not(../server-group-name)"; + description + "configure this node"; + } + leaf server-group-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "server-group name"; + } + } + must "not(../use-list-of-all-radius-hosts)"; + description + "server-group name"; + } + } + } + container aaa-authentication-names { + description + "List name for AAA authentication"; + list aaa-authentication-name { + key "aaa-authentication-name"; + description + "List name for AAA authentication"; + leaf aaa-authentication-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List name for AAA authentication"; + } + } + description + "List name for AAA authentication"; + } + container group { + description + "Use Server-group"; + leaf use-list-of-all-radius-hosts { + type enumeration { + enum "radius" { + value 3; + description + "Use list of all RADIUS hosts"; + } + } + must "not(../server-group-name)"; + description + "configure this node"; + } + leaf server-group-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "server-group name"; + } + } + must "not(../use-list-of-all-radius-hosts)"; + description + "server-group name"; + } + } + } + } + } + } + container dot1x { + description + "IEEE 802.1X Global Configuration Commands"; + container profiles { + description + "Configure 802.1X profiles"; + list profile { + key "profile-name"; + description + "Configure 802.1X profiles"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "Specify a profile name (max 63 charecters)"; + } + } + description + "Configure 802.1X profiles"; + } + container pae { + description + "Set 802.1x pae type"; + container authenticator { + must "not(../supplicant or ../both)"; + presence "Indicates a authenticator node is configured."; + description + "Set PAE Type as Authenticator"; + } + container supplicant { + must "not(../authenticator or ../both)"; + presence "Indicates a supplicant node is configured."; + description + "Set PAE Type as Supplicant"; + } + container both { + must "not(../authenticator or ../supplicant)"; + presence "Indicates a both node is configured."; + description + "Set PAE Type as both Supplicant and Authenticator"; + } + } + container mab { + presence "Indicates a mab node is configured."; + description + "Enable MAC Authentication Bypass"; + } + container supplicant { + description + "Enter in Supplicant submode"; + container eap { + description + "Configure EAP Supplicant Parameters"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "EAP Profile Name"; + } + } + description + "EAP Profile Configuration"; + } + } + } + container authenticator { + description + "Enter in Authenticator submode"; + container eap { + description + "enable local EAP server"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "EAP Profile Name"; + } + } + description + "EAP Profile Configuration"; + } + } + container timer { + description + "Set various timeouts"; + container reauth-time { + description + "In seconds, after which an automatic reauth should be initiated"; + container server { + presence "Indicates a server node is configured."; + description + "server given re-auth timer value, min expected value is 60 sec, default: 1hr"; + } + leaf timer-value { + type uint32 { + range "60..5184000" { + description + "In seconds, admin configured reauth timer value, min:60, max:5184000 (2 months)"; + } + } + description + "In seconds, admin configured reauth timer value, min:60, max:5184000 (2 months)"; + } + } + leaf mab-retry-time { + type uint32 { + range "60..300" { + description + "In seconds, min:60(default), max:300 (5 minutes)"; + } + } + description + "In seconds, interval after which an auth attempt will be initiated for auth failed or server unreachable MAB clients"; + } + } + container server { + description + "Remote AAA server event"; + container dead { + description + "AAA server unreachable"; + container action { + description + "dot1x authenticator action"; + container auth-fail { + must "not(../auth-retry)"; + presence "Indicates a auth-fail node is configured."; + description + "declare authentication failure on server unreachability"; + } + container auth-retry { + must "not(../auth-fail)"; + presence "Indicates a auth-retry node is configured."; + description + "no auth fail declared, retry authentication with supplicant, until server is reachable."; + } + } + } + } + container host-mode { + description + "set the host mode for authentication"; + container multi-auth { + must "not(../multi-host or ../single-host)"; + presence "Indicates a multi-auth node is configured."; + description + "multiple authentication mode"; + } + container multi-host { + must "not(../multi-auth or ../single-host)"; + presence "Indicates a multi-host node is configured."; + description + "multiple host mode"; + } + container single-host { + must "not(../multi-auth or ../multi-host)"; + presence "Indicates a single-host node is configured."; + description + "single host mode"; + } + } + } + } + } + } + container eap { + description + "EAP Global Configuration Commands"; + container profiles { + description + "Configure EAP profiles"; + list profile { + key "profile-name"; + description + "Configure EAP profiles"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "Specify a profile name (max 63 characters)"; + } + } + description + "Configure EAP profiles"; + } + leaf identity { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "Specify EAP Identity or Username for authentication"; + } + } + description + "identity name"; + } + container method { + description + "Add an allowed method"; + container tls { + description + "EAP-TLS method allowed"; + leaf pki-trustpoint { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "Specify the pki trustpoint name"; + } + } + description + "Set pki trustpoint"; + } + } + container ttls { + description + "EAP-TTLS method allowed"; + leaf pki-trustpoint { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "Specify the pki trustpoint name"; + } + } + description + "Set pki trustpoint"; + } + } + } + container allow-eap-tls-v1-0 { + presence "Indicates a allow-eap-tls-v1-0 node is configured."; + description + "Allow EAP TLS v1.0"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg.yang new file mode 100644 index 000000000..1158b8d1a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg.yang @@ -0,0 +1,250 @@ +module Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dyn-tmpl-ipv6-nd-cfg"; + prefix um-dyn-tmpl-ipv6-nd-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-dynamic-template-ipv6-cfg { + prefix a2; + } + 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 dyn-tmpl-ipv6-nd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container nd { + description + "ipv6 Neighbor Discovery subcommands"; + container ra-unicast { + presence "Indicates a ra-unicast node is configured."; + description + "Send Unicast Solicited IPv6 Router Advertisements"; + } + container router-preference { + description + "IPv6 ND router-preference"; + container high { + must "not(../medium or ../low)"; + presence "Indicates a high node is configured."; + description + "High default router preference"; + } + container medium { + must "not(../high or ../low)"; + presence "Indicates a medium node is configured."; + description + "Medium default router preference"; + } + container low { + must "not(../high or ../medium)"; + presence "Indicates a low node is configured."; + description + "Low default router preference"; + } + } + leaf reachable-time { + type uint32 { + range "0..3600000" { + description + "Reachability time in milliseconds"; + } + } + description + "Set advertised reachability time"; + } + container dad { + description + "Set number of Duplicate Address Detection(DAD) transmits"; + leaf attempts { + type uint32 { + range "0..600" { + description + "Number of attempts"; + } + } + description + "Set IPv6 Duplicate Address Detection(DAD) Transmits"; + } + } + container suppress-ra { + presence "Indicates a suppress-ra node is configured."; + description + "Suppress IPv6 Router Advertisements(RA)"; + } + container other-config-flag { + presence "Indicates a other-config-flag node is configured."; + description + "Hosts should use stateful protocol for non-address config"; + } + container managed-config-flag { + presence "Indicates a managed-config-flag node is configured."; + description + "Hosts should use stateful protocol for address config"; + } + leaf ns-interval { + type uint32 { + range "1000..4294967295" { + description + "Retransmission interval in milliseconds"; + } + } + description + "Set advertised Neighbor Solicitation(NS) retransmission interval"; + } + leaf ra-interval { + type uint32 { + range "4..1800" { + description + "Maximum RA Interval (sec)"; + } + } + description + "Set IPv6 Router Advertisement(RA) Interval"; + } + leaf minimum-ra-interval { + type uint32 { + range "3..1800" { + description + "Minimum RA Interval (sec). Must be less than 0.75 * maximum interval"; + } + } + must "../ra-interval"; + description + "Minimum RA Interval (sec). Must be less than 0.75 * maximum interval"; + } + leaf ra-lifetime { + type uint32 { + range "0..9000" { + description + "RA Lifetime (seconds)"; + } + } + description + "Set IPv6 Router Advertisement(RA) Lifetime"; + } + container hoplimit { + description + "IPv6 Neighbor Discovery(ND) Router Advertisement(RA) hoplimit"; + container unspecified { + presence "Indicates a unspecified node is configured."; + description + "Unspecified IPv6 Neighbor Discovery(ND) Router Advertisement(RA) hop-limit value"; + } + } + container mtu { + description + "IPv6 Neighbor Discovery(ND) Router Advertisement(RA) mtu option configuration"; + container suppress { + presence "Indicates a suppress node is configured."; + description + "Suppress mtu option in IPv6 Neighbor Discovery(ND) Router Advertisement(RA) header"; + } + } + container suppress-cache-learning { + presence "Indicates a suppress-cache-learning node is configured."; + description + "IPv6 Neighbor Discovery(ND) configuration"; + } + container nud-enable { + presence "Indicates a nud-enable node is configured."; + description + "IPv6 Neighbor Unreachability Detection(NUD) configuration. Applies only to IPoe Sessions"; + } + container start-ra-on-ipv6-enable { + presence "Indicates a start-ra-on-ipv6-enable node is configured."; + description + "Start RA generation on ipv6-enable config irrespective ipv6 afi state"; + } + leaf framed-prefix-pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Name of framed address pool"; + } + } + description + "IPv6 Neighbor Discovery(ND) pool configuration"; + } + leaf ra-initial { + type uint32 { + range "0..32" { + description + "Initial number of Router Advertisements(RA) "; + } + } + must "../initial-router-advertisement"; + description + "Set IPv6 Initial Router Advertisement(RA) Count and Interval"; + } + leaf initial-router-advertisement { + type uint32 { + range "4..1800" { + description + "Initial Router Advertisement(RA) Interval (sec)."; + } + } + must "../ra-initial"; + description + "Initial Router Advertisement(RA) Interval (sec)."; + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template/a2:ipv6" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template/a2:ipv6" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:service/a1:template/a2:ipv6" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg.yang new file mode 100644 index 000000000..e3a7c3ec0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg.yang @@ -0,0 +1,834 @@ +module Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dyn-tmpl-monitor-session-cfg"; + prefix um-dyn-tmpl-monitor-session-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dyn-tmpl-monitor-session package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-03 { + description + "Added SPAN features for 781 and 791 + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container monitor-sessions { + description + "Monitor-session configuration commands"; + list monitor-session { + must "ethernet or ipv4 or ipv6 or mpls-ipv4 or mpls-ipv6"; + key "session-name"; + description + "Monitor-session configuration commands"; + leaf session-name { + type string { + length "1..79" { + description + "Session Name"; + } + } + description + "Monitor-session configuration commands"; + } + container ethernet { + must "not(../ipv4 or ../ipv6 or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ethernet node is configured."; + description + "Replicate Ethernet traffic"; + } + container ipv4 { + must "not(../ethernet or ../ipv6 or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "Replicate IPv4 traffic"; + } + container ipv6 { + must "not(../ipv4 or ../ethernet or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ipv6 node is configured."; + description + "Replicate IPv6 traffic"; + } + container mpls-ipv4 { + must "not(../ipv4 or ../ipv6 or ../ethernet or ../mpls-ipv6)"; + presence "Indicates a mpls-ipv4 node is configured."; + description + "Replicate MPLS-IPv4 traffic"; + } + container mpls-ipv6 { + must "not(../ipv4 or ../ipv6 or ../mpls-ipv4 or ../ethernet)"; + presence "Indicates a mpls-ipv6 node is configured."; + description + "Replicate MPLS-IPv6 traffic"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + } + container monitor-session-deprecated { + description + "Monitor-session deprecated configuration commands"; + container ethernet { + presence "Indicates a ethernet node is configured."; + description + "Replicate Ethernet traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Replicate IPv4 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "Replicate IPv6 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + container mpls-ipv4 { + presence "Indicates a mpls-ipv4 node is configured."; + description + "Replicate MPLS-IPv4 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + container mpls-ipv6 { + presence "Indicates a mpls-ipv6 node is configured."; + description + "Replicate MPLS-IPv6 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:service/a1:template" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg.yang new file mode 100644 index 000000000..dceaf2d11 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg.yang @@ -0,0 +1,86 @@ +module Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dyn-tmpl-opendns-cfg"; + prefix um-dyn-tmpl-opendns-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dyn-tmpl-opendns package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-03-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container framedroute { + description + "Specify additional routes to add for this subscriber [Restricted to development use only !!!]"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "framed route address"; + } + } + container opendns { + description + "OpenDNS feature config"; + leaf deviceid { + type xr:Cisco-ios-xr-string { + length "16" { + description + "Device ID (16 digit hex value without '0x')"; + } + pattern "0*[1-9a-fA-F][0-9a-fA-F]*"; + } + description + "Specify device ID"; + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:service/a1:template" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg.yang new file mode 100644 index 000000000..49befc499 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg.yang @@ -0,0 +1,259 @@ +module Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg"; + prefix um-dyn-tmpl-service-policy-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dyn-tmpl-service-policy package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-05-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature qos_ui_supp_qfab_cfg { + description + "qos ui supp qfab cfg"; + } + + feature qos_ui_supp_spi { + description + "qos ui supp spi"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container service-policy { + description + "Associate a service policy to the dynamic template"; + container input { + presence "Indicates input node is configured."; + description + "Configure an ingress service policy"; + leaf service-policy-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + mandatory true; + description + "Configure an ingress service policy"; + } + leaf merge { + type uint32 { + range "0..255" { + description + "Sequence number of the policy"; + } + } + description + "Enable the policy to be merged"; + } + container acct-stats { + when "boolean(../../../../../a1:service/a1:template)"; + presence "Indicates a acct-stats node is configured."; + description + "Enable service accounting"; + } + leaf shared-policy-instance { + if-feature "qos_ui_supp_spi"; + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the shared-policy-instance"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "configure a shared-policy-instance"; + } + } + container output { + presence "Indicates output node is configured."; + description + "Configure an egress service policy"; + leaf service-policy-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + mandatory true; + description + "Configure an egress service policy"; + } + leaf merge { + type uint32 { + range "0..255" { + description + "Sequence number of the policy"; + } + } + description + "Enable the policy to be merged"; + } + container acct-stats { + when "boolean(../../../../../a1:service/a1:template)"; + presence "Indicates a acct-stats node is configured."; + description + "Enable service accounting"; + } + leaf shared-policy-instance { + if-feature "qos_ui_supp_spi"; + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the shared-policy-instance"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "configure a shared-policy-instance"; + } + } + } + container output { + when "boolean(../../../a1:ppp/a1:template)"; + description + "QoS applied on the egress direction"; + leaf minimum-bandwidth { + type uint32 { + range "1..4294967295" { + description + "Minimum bandwidth value for subscriber (in kbps)"; + } + } + description + "Minimum bandwidth guaranteed for a subscriber"; + } + } + container account { + when "boolean(../../../a1:ppp/a1:template)"; + description + "L2 overhead accounting"; + leaf aal5 { + type enumeration { + enum "snap-pppoa" { + value 1; + description + "snap-pppoa encap used between the DSLAM and CPE"; + } + enum "mux-pppoa" { + value 2; + description + "mux-pppoa encap used between the DSLAM and CPE"; + } + enum "snap-1483routed" { + value 3; + description + "snap-1483routed encap used between the DSLAM and CPE"; + } + enum "mux-1483routed" { + value 4; + description + "mux-1483routed encap used between the DSLAM and CPE"; + } + enum "snap-rbe" { + value 5; + description + "snap-rbe encap used between the DSLAM and CPE"; + } + enum "snap-dot1q-rbe" { + value 6; + description + "snap-dot1q-rbe encap used between the DSLAM and CPE"; + } + enum "mux-rbe" { + value 7; + description + "mux-rbe encap used between the DSLAM and CPE"; + } + enum "mux-dot1q-rbe" { + value 8; + description + "mux-dot1q-rbe encap used between the DSLAM and CPE"; + } + } + must "not(../user-defined)"; + description + "ATM adaption layer AAL5"; + } + leaf user-defined { + type int32 { + range "-63..63" { + description + "Sequence number of the policy"; + } + } + must "not(../aal5)"; + description + "Configure a numeric l2 overhead offset"; + } + container atm { + must "../user-defined"; + presence "Indicates a atm node is configured."; + description + "Add ATM cell tax to the L2 overhead"; + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:service/a1:template" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-access-group-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-access-group-cfg.yang new file mode 100644 index 000000000..165bae2c5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-access-group-cfg.yang @@ -0,0 +1,154 @@ +module Cisco-IOS-XR-um-dynamic-template-access-group-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dynamic-template-access-group-cfg"; + prefix um-dynamic-template-access-group-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dynamic-template-access-group package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2021-12-12 { + description + "Initial release"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container ipv4 { + description + "ipv4 subcommands"; + container access-group { + description + "Specify access control for packets"; + container filter-packets { + description + "configure this node"; + container ingress { + description + "Filter incoming packets"; + leaf access-group-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "access-list name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "Specify access control for packets"; + } + } + container egress { + description + "Filter outgoing packets"; + leaf access-group-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "access-list name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "Specify access control for packets"; + } + } + } + } + } + container ipv6 { + description + "ipv6 subcommands"; + container access-group { + description + "Specify access control for packets"; + container filter-packets { + description + "configure this node"; + container ingress { + description + "Filter incoming packets"; + leaf access-group-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "access-list name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "Specify access control for packets"; + } + } + container egress { + description + "Filter outgoing packets"; + leaf access-group-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "access-list name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "Specify access control for packets"; + } + } + } + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:service/a1:template" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-cfg.yang new file mode 100644 index 000000000..98f9d56a9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-cfg.yang @@ -0,0 +1,105 @@ +module Cisco-IOS-XR-um-dynamic-template-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dynamic-template-cfg"; + prefix um-dynamic-template-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 dynamic-template package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container dynamic-template { + description + "Dynamically Applied Configuration Template Definition"; + container type { + description + "'type' keyword"; + container ppp { + description + "PPP dynamic template type"; + list template { + key "template-name"; + description + "Dynamic Template Name"; + leaf template-name { + type string { + length "1..64" { + description + "Dynamic Template Name"; + } + } + description + "Dynamic Template Name"; + } + } + } + container ipsubscriber { + description + "IP Subscriber dynamic template type"; + list template { + key "template-name"; + description + "Dynamic Template Name"; + leaf template-name { + type string { + length "1..64" { + description + "Dynamic Template Name"; + } + } + description + "Dynamic Template Name"; + } + } + } + container service { + description + "Service dynamic template type"; + list template { + key "template-name"; + description + "Dynamic Template Name"; + leaf template-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Dynamic Template Name"; + } + } + description + "Dynamic Template Name"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg.yang new file mode 100644 index 000000000..c5196dd14 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg.yang @@ -0,0 +1,99 @@ +module Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dynamic-template-dhcpv6d-cfg"; + prefix um-dynamic-template-dhcpv6d-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dynamic-template-dhcpv6d package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container dhcpv6 { + description + "dhcpv6 subcommands"; + leaf delegated-prefix-pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Name of delegated prefix pool"; + } + } + description + "Delegated-Prefix-pool Configuration"; + } + leaf address-pool { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Name of address pool"; + } + } + description + "Address-pool Configuration"; + } + leaf class-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of Class"; + } + } + description + "Class Name Configuration"; + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-igmp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-igmp-cfg.yang new file mode 100644 index 000000000..ec63eccda --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-igmp-cfg.yang @@ -0,0 +1,180 @@ +module Cisco-IOS-XR-um-dynamic-template-igmp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dynamic-template-igmp-cfg"; + prefix um-dynamic-template-igmp-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dynamic-template-igmp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-04-12 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container igmp { + description + "IPv4 Address Family"; + leaf query-interval { + type uint32 { + range "1..3600" { + description + "Query interval in seconds"; + } + } + description + "IGMP IGMP host query interval"; + } + leaf query-max-response-time { + type uint32 { + range "1..25" { + description + "query response value in seconds"; + } + } + description + "IGMP max query response value"; + } + container explicit-tracking { + presence "Indicates a explicit-tracking node is configured."; + description + "IGMPv3 explicit host tracking"; + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Access list specifying tracking group range"; + } + } + description + "Access list specifying tracking group range"; + } + } + container access-group { + description + "IGMP access group"; + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IP Named Standard Access list"; + } + } + description + "IP Named Standard Access list"; + } + } + leaf max-groups { + type uint32 { + range "1..40000" { + description + "max groups"; + } + } + description + "IGMP max groups"; + } + leaf threshold { + type uint32 { + range "1..504" { + description + "Threshold warning"; + } + } + must "../max-groups"; + description + "Threshold warning"; + } + leaf name-of-acl { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of ACL"; + } + } + must "../max-groups"; + description + "Name of ACL"; + } + leaf version { + type uint32 { + range "1..3" { + description + "version"; + } + } + description + "IGMP version"; + } + container multicast { + description + "multicast mode"; + container ipv4 { + description + "IPv4 address family"; + container passive { + must "not(../qos-correlation)"; + presence "Indicates a passive node is configured."; + description + "Enable forwarding functionality"; + } + container qos-correlation { + must "not(../passive)"; + presence "Indicates a qos-correlation node is configured."; + description + "Enable QOS correlation functionality"; + } + } + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv4-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv4-cfg.yang new file mode 100644 index 000000000..0c83287c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv4-cfg.yang @@ -0,0 +1,120 @@ +module Cisco-IOS-XR-um-dynamic-template-ipv4-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dynamic-template-ipv4-cfg"; + prefix um-dynamic-template-ipv4-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dynamic-template-ipv4 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-03-27 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container ipv4 { + description + "ipv4 subcommands"; + leaf mtu { + type uint32 { + range "68..65535" { + description + "MTU (bytes)"; + } + } + description + "Set IPv4 Maximum Transmission Unit"; + } + leaf unnumbered { + type xr:Interface-name; + description + "Enable IPv4 processing without an explicit address"; + } + container verify { + description + "Enable per packet validation"; + container unicast { + description + "Enable per packet validation for unicast"; + container source { + description + "Validation of source address"; + container reachable-via { + description + "Specify reachability check to apply to the source address"; + container rx { + presence "Indicates a rx node is configured."; + description + "Source is reachable via interface on which packet was received"; + } + } + } + } + } + container unreachables { + description + "Enable sending ICMP Unreachable messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Suppress ICMPv4 Unreachable messages on subscriber interfaces"; + } + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:service/a1:template" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv6-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv6-cfg.yang new file mode 100644 index 000000000..0237cef5d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-ipv6-cfg.yang @@ -0,0 +1,117 @@ +module Cisco-IOS-XR-um-dynamic-template-ipv6-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dynamic-template-ipv6-cfg"; + prefix um-dynamic-template-ipv6-cfg; + + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dynamic-template-ipv6 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-08-18 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container ipv6 { + description + "ipv6 subcommands"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable IPv6 on interface"; + } + leaf mtu { + type uint32 { + range "1280..65535" { + description + "MTU (bytes)"; + } + } + description + "Set IPv6 Maximum Transmission Unit"; + } + container unreachables { + description + "Disable sending ICMP Unreachable messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Override sending of ICMP Unreachable messages"; + } + } + container verify { + description + "Enable per packet validation"; + container unicast { + description + "Enable per packet validation for unicast"; + container source { + description + "Validation of source address"; + container reachable-via { + description + "Specify reachability check to apply to the source address"; + container rx { + presence "Indicates a rx node is configured."; + description + "Source is reachable via interface on which packet was received"; + } + } + } + } + } + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:service/a1:template" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-vrf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-vrf-cfg.yang new file mode 100644 index 000000000..964c29855 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-dynamic-template-vrf-cfg.yang @@ -0,0 +1,81 @@ +module Cisco-IOS-XR-um-dynamic-template-vrf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-dynamic-template-vrf-cfg"; + prefix um-dynamic-template-vrf-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a1; + } + 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 dynamic-template-vrf package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-04-29 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Set VRF in which the interface operates"; + } + } + + augment "/a1:dynamic-template/a1:type/a1:ppp/a1:template" { + description + "This augment extends dynamic-template ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:ipsubscriber/a1:template" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a1:dynamic-template/a1:type/a1:service/a1:template" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-environment-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-environment-cfg.yang new file mode 100644 index 000000000..c14679328 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-environment-cfg.yang @@ -0,0 +1,232 @@ +module Cisco-IOS-XR-um-environment-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-environment-cfg"; + prefix um-environment-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 environment package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-22 { + description + "Added alarm-contact support"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature altitude { + description + "altitude"; + } + + feature alarm-contact { + description + "alarm-contact supported"; + } + + container environment { + description + "Global environment configuration commands"; + leaf altitude { + if-feature "altitude"; + type uint32 { + range "0..4000" { + description + "meters"; + } + } + description + "Altitude of the chassis in meters"; + } + container air-filter { + description + "chassis air-filter status"; + container replaced { + description + "air-filter replaced date"; + leaf date { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "CCYY-MM-DD format"; + } + } + description + ""; + } + } + } + leaf min-fan-speed { + type uint32 { + range "0..100" { + description + "pwm"; + } + } + description + "Min default fan speed in PWM (the speed cannot go lower, but can go higher based on environmental conditions)"; + } + container chassis-door-alarm { + description + "Control chassis door alarm"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable chassis door alarm"; + } + } + container alarm-contact { + if-feature "alarm-contact"; + description + "Control the alarm-contact behavior"; + container alarm-contact-numbers { + description + "alarm-contact number"; + list alarm-contact-number { + key "alarm-contact-number-id"; + description + "alarm-contact number"; + leaf alarm-contact-number-id { + type uint32 { + range "1..256" { + description + "alarm-contact number"; + } + } + description + "alarm-contact number"; + } + container severity { + description + "The severity of the alarm minor|major|critical"; + container minor { + must "not(../major or ../critical)"; + presence "Indicates a minor node is configured."; + description + "Alarm type minor"; + } + container major { + must "not(../minor or ../critical)"; + presence "Indicates a major node is configured."; + description + "Alarm type major"; + } + container critical { + must "not(../minor or ../major)"; + presence "Indicates a critical node is configured."; + description + "Alarm type critical"; + } + } + leaf description { + type string { + length "1..40" { + description + "Alarm Description (max 40 characters)"; + } + } + description + "The description of the alarm"; + } + container trigger { + description + "Whether to trigger on open or closed contact. open|closed"; + container open { + must "not(../closed)"; + presence "Indicates a open node is configured."; + description + "Trigger on contact open"; + } + container closed { + must "not(../open)"; + presence "Indicates a closed node is configured."; + description + "Trigger on contact closed"; + } + } + } + } + container all { + presence "Indicates a all node is configured."; + description + "set options for all pins"; + container severity { + description + "The severity of the alarm minor|major|critical"; + container minor { + must "not(../major or ../critical)"; + presence "Indicates a minor node is configured."; + description + "Alarm type minor"; + } + container major { + must "not(../minor or ../critical)"; + presence "Indicates a major node is configured."; + description + "Alarm type major"; + } + container critical { + must "not(../minor or ../major)"; + presence "Indicates a critical node is configured."; + description + "Alarm type critical"; + } + } + leaf description { + type string { + length "1..40" { + description + "Alarm Description (max 40 characters)"; + } + } + description + "The description of the alarm"; + } + container trigger { + description + "Whether to trigger on open or closed contact. open|closed"; + container open { + must "not(../closed)"; + presence "Indicates a open node is configured."; + description + "Trigger on contact open"; + } + container closed { + must "not(../open)"; + presence "Indicates a closed node is configured."; + description + "Trigger on contact closed"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-error-disable-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-error-disable-cfg.yang new file mode 100644 index 000000000..608870e61 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-error-disable-cfg.yang @@ -0,0 +1,350 @@ +module Cisco-IOS-XR-um-error-disable-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-error-disable-cfg"; + prefix um-error-disable-cfg; + + 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 error-disable package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-08 { + description + "Added container bad-link-error + 2021-11-23 + Removed container bundle-down"; + semver:module-version "2.0.0"; + } + revision 2021-02-15 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container error-disable { + description + "Configure error-disable"; + container recovery { + description + "Configure auto-recovery"; + container cause { + description + "Configure auto-recovery for a specific cause"; + container link-oam-session-down { + description + "Used when an Ethernet Link OAM session goes down"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-discovery-timeout { + description + "Used when an Ethernet Link OAM session fails to come up in time"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-capabilities-conflict { + description + "Used when Ethernet Link OAM configuration conflicts with the peer"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-miswired { + description + "Used when a mis-wiring is detected with Ethernet Link OAM"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-link-fault { + description + "Used when a unidirectional link is detected by Ethernet Link OAM"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-dying-gasp { + description + "Used when a dying gasp is detected by Ethernet Link OAM"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-critical-event { + description + "Used when a critical event is detected by Ethernet Link OAM"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-threshold-breached { + description + "Used when a configured error threshold has been breached"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container stp-bpdu-guard { + description + "Used when an STP BPDU is received on a port on which BPDU Guard is configured"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container stp-legacy-bpdu { + description + "Used when a legacy BPDU is received on a port. Only MSTP and RSTP BPDUs are supported"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container cluster-udld { + description + "Used when UDLD is enabled on a Cluster port and UDLD is in aggressive mode and UDLD goes uni directional"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container cluster-minlinks { + description + "Used when system is in Cluster mode and there are not enough links between them"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container udld-unidirectional { + description + "Used when a link is detected to be unidirectional by UDLD"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container udld-neighbor-mismatch { + description + "Used when mismatched neighbors are detected by UDLD"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container udld-timeout { + description + "Used when all UDLD neigbors on the link have timed out"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container udld-loopback { + description + "Used when UDLD detects that the port is in loopback mode(i.e. its Tx is directly connected to its Rx)"; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container pvrst-pvid-mismatch { + description + "Used when a PVRST BPDU packet is tagged with a VLAN ID which is different from the VLAN ID on which it was sent."; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container l2vpn-bport-mac-move { + description + "Used when an L2VPN bridge port interface experiences a large number of MAC move events, causing high CPU usage."; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container ot-track-state-change { + description + "Used when the state of Object Tracking track changes."; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container link-oam-dampening { + description + "Used when Ethernet Link-OAM forces an interface down due to too many EFD down events."; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + container bad-link-error { + description + "Used when physical layer errors forces an interface down due to too many ASIC link error events."; + leaf interval { + type uint32 { + range "30..1000000" { + description + "Specify an interval for the auto-recovery period in seconds"; + } + } + description + "Configure an interval for the auto-recovery period"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-cfm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-cfm-cfg.yang new file mode 100644 index 000000000..47e6b2319 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-cfm-cfg.yang @@ -0,0 +1,1177 @@ +module Cisco-IOS-XR-um-ethernet-cfm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ethernet-cfm-cfg"; + prefix um-ethernet-cfm-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a2; + } + 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 ethernet-cfm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-31 { + description + "Added missing node CSF to container log + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "2.1.0"; + } + revision 2021-07-07 { + description + "list-leaf cos-value updated to 7 seperate leafs, + Added must and presence statement to priority container"; + semver:module-version "2.0.0"; + } + revision 2021-02-09 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-ETHER-BODY { + description + "Grouping for if-ether"; + container ethernet { + description + "Ethernet per-interface configuration commands"; + container cfm { + description + "802.1ag Connectivity Fault Management configuration"; + container mep { + description + "CFM Maintenance End Point configuration"; + list domain { + key "domain-name"; + description + "Specify the Maintenance Domain the MEP operates in"; + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Domain name"; + } + } + description + "Domain name"; + } + leaf service { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Service name"; + } + } + mandatory true; + description + "Service name"; + } + leaf mep-id { + type uint32 { + range "1..8191" { + description + "MEP ID"; + } + } + mandatory true; + description + "Specify the MEP ID to assign to the MEP"; + } + container propagate-remote-status { + presence "Indicates a propagate-remote-status node is configured."; + description + "propagate-remote-status"; + } + leaf cos { + type uint32 { + range "0..7" { + description + "Class of Service"; + } + } + description + "Specify CoS bits for messages initiated by this MEP"; + } + container loss-measurement { + description + "Specify loss-measurement configuration on this MEP"; + container counters { + description + "Specify which loss-measurement counters should be allocated for this MEP"; + container aggregate { + presence "Indicates a aggregate node is configured."; + description + "Allocate aggregated packet counters for this MEP"; + } + container priority { + must "cos-values or cos-range"; + presence "Indicates a up node is configured."; + description + "Specify a list or range of CoS values to allocate packet counters for"; + container cos-range { + description + "Range of CoS values "; + leaf start-of-cos-range { + type uint32 { + range "0..7" { + description + "Start of CoS range"; + } + } + must "../end-of-cos-range"; + description + "Start of CoS range"; + } + leaf end-of-cos-range { + type uint32 { + range "1..7" { + description + "End of CoS range"; + } + } + must "../start-of-cos-range"; + description + "End of CoS range"; + } + } + container cos-values { + description + "Set of CoS values"; + leaf cos-value1 { + type uint32 { + range "0..7" { + description + "CoS value"; + } + } + description + "CoS value"; + } + leaf cos-value2 { + type uint32 { + range "0..7" { + description + "CoS value"; + } + } + must "../cos-value1"; + description + "CoS value"; + } + leaf cos-value3 { + type uint32 { + range "0..7" { + description + "CoS value"; + } + } + must "../cos-value2"; + description + "CoS value"; + } + leaf cos-value4 { + type uint32 { + range "0..7" { + description + "CoS value"; + } + } + must "../cos-value3"; + description + "CoS value"; + } + leaf cos-value5 { + type uint32 { + range "0..7" { + description + "CoS value"; + } + } + must "../cos-value4"; + description + "CoS value"; + } + leaf cos-value6 { + type uint32 { + range "0..7" { + description + "CoS value"; + } + } + must "../cos-value5"; + description + "CoS value"; + } + leaf cos-value7 { + type uint32 { + range "0..7" { + description + "CoS value"; + } + } + must "../cos-value6"; + description + "CoS value"; + } + } + } + } + } + container sla { + description + "Service Level Agreement configuration"; + container operation { + description + "SLA operation configuration"; + container profile { + description + "Specify the SLA profile for this operation"; + container target { + description + "Specify the target for the SLA operation"; + container mep-id { + description + "Specify a target MEP"; + list profile-target-mep-id { + key "profile-name mep-id"; + description + "Specify the SLA profile for this operation"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Profile name"; + } + } + description + "Specify the SLA profile for this operation"; + } + leaf mep-id { + type uint32 { + range "1..8191" { + description + "Target MEP ID"; + } + } + description + "Specify a target MEP"; + } + } + } + container mac-address { + description + "Specify a target unicast MAC address"; + list profile-target-mac-address { + key "profile-name mac-address"; + description + "Specify a target unicast MAC address"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Profile name"; + } + } + description + "Specify the SLA profile for this operation"; + } + leaf mac-address { + type yang:mac-address; + description + "Specify a target unicast MAC address"; + } + } + } + } + } + } + } + } + } + container ais { + description + "CFM Alarm Indication Signal configuration"; + container transmission { + description + "CFM AIS transmission configuration"; + container up { + presence "Indicates a up node is configured."; + description + "Up configuration"; + leaf interval { + type enumeration { + enum "1s" { + value 4; + description + "Interval of 1 second"; + } + enum "1m" { + value 6; + description + "Interval of 1 minute"; + } + } + description + "Specify the AIS transmission interval"; + } + leaf cos { + type uint32 { + range "0..7" { + description + "Class of Service"; + } + } + description + "Specify CoS bits for AIS messages"; + } + } + } + } + container bandwidth-notifications { + description + "Configure bandwidth-notification parameters"; + leaf hold-off { + type uint32 { + range "0..600" { + description + "Hold-off time (in seconds)"; + } + } + description + "Hold-off time"; + } + leaf wait-to-restore { + type uint32 { + range "0..600" { + description + "Wait-to-restore time (in seconds)"; + } + } + description + "Wait-to-restore time"; + } + leaf loss-threshold { + type uint32 { + range "2..255" { + description + "Loss threshold (in number of BNMs)"; + } + } + description + "Loss threshold"; + } + container log { + description + "Enable logging of bandwidth changes"; + container changes { + presence "Indicates a changes node is configured."; + description + "Enable logging of bandwidth changes"; + } + } + } + } + } + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container cfm { + presence "Indicates a cfm node is configured."; + description + "Enable traps for 802.1ag Connectivity Fault Management"; + } + } + augment "/a2:interfaces/a2:interface" { + description + "This augment extends active nodes configuration"; + uses IF-ETHER-BODY; + } + augment "/a2:interfaces/a2:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-ETHER-BODY; + } + container cfm { + description + "802.1ag Connectivity Fault Management configuration"; + container traceroute { + description + "Traceroute configuration"; + container cache { + description + "Configure traceroute cache parameters"; + leaf hold-time { + type uint32 { + range "1..525600" { + description + "Hold-time, in minutes"; + } + } + description + "Traceroute cache hold-time"; + } + leaf size { + type uint32 { + range "1..4294967295" { + description + "Number of replies in the traceroute cache"; + } + } + description + "Traceroute cache size (number of replies)"; + } + } + } + container domains { + description + "Domain-specific interface configuration"; + list domain { + key "domain-name"; + description + "Configuration for a particular Maintenance Domain"; + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..127"; + } + description + "Domain name"; + } + leaf level { + type uint32 { + range "0..7"; + } + mandatory true; + description + "Maintenance Domain Level"; + } + container id { + description + "Maintenance Domain Identifier"; + leaf dns { + type xr:Cisco-ios-xr-string { + length "1..43"; + } + must "not(../mac-address or ../null or ../string)"; + description + "DNS Name"; + } + leaf mac-address { + type yang:mac-address; + must + "not(../dns or ../null or ../string) and + ../mac-address-two-octet-integer"; + description + "MAC Address"; + } + leaf mac-address-two-octet-integer { + type uint32 { + range "0..65535"; + } + must "../mac-address"; + description + "2 Octet integer"; + } + container null { + must "not(../mac-address or ../dns or ../string)"; + presence "Indicates a null node is configured."; + description + "No MDID value"; + } + leaf string { + type xr:Cisco-ios-xr-string { + length "1..43"; + } + must "not(../mac-address or ../null or ../dns)"; + description + "String"; + } + } + container services { + description + "Service-specific global configuration"; + list service { + must "bridge or down-meps or flexible-xconnect/vlan-aware/evi or flexible-xconnect/vlan-unaware/cross-connect-name or xconnect/mp2mp or xconnect/p2p"; + key "service-name"; + description + "Per service configuration"; + leaf service-name { + type xr:Cisco-ios-xr-string { + length "1..127"; + } + description + "Service name"; + } + container bridge { + must "not(../down-meps or ../flexible-xconnect/vlan-aware/evi or ../flexible-xconnect/vlan-unaware/cross-connect-name or ../xconnect/mp2mp or ../xconnect/p2p)"; + presence "Indicates a bridge node is configured."; + description + "Use a Bridge Domain. All MEPs will be Up MEPs; MIPs are permitted"; + leaf group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "Bridge Domain Group Name"; + } + leaf bridge-domain { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "Bridge Domain Name"; + } + } + container down-meps { + must "not(../bridge or ../flexible-xconnect/vlan-aware/evi or ../flexible-xconnect/vlan-unaware/cross-connect-name or ../xconnect/mp2mp or ../xconnect/p2p)"; + presence "Indicates a down-meps node is configured."; + description + "Down MEPs; no MIPs permitted"; + } + container flexible-xconnect { + description + "Use a Flexible Cross Connect. All MEPs will be Up MEPs; + MIPs are permitted"; + container vlan-aware { + description + "VLAN-aware Flexible Cross Connect"; + leaf evi { + type uint32 { + range "1..65534"; + } + must "not(../../../bridge or ../../../down-meps or ../../../flexible-xconnect/vlan-unaware/cross-connect-name or ../../../xconnect/mp2mp or ../../../xconnect/p2p)"; + description + "EVPN ID"; + } + } + container vlan-unaware { + description + "VLAN-unaware Flexible Cross Connect"; + leaf cross-connect-name { + type xr:Cisco-ios-xr-string { + length "1..23"; + } + must "not(../../../bridge or ../../../down-meps or ../../../flexible-xconnect/vlan-aware/evi or ../../../xconnect/mp2mp or ../../../xconnect/p2p)"; + description + "VLAN-unaware Flexible Cross Connect name"; + } + } + } + container xconnect { + description + "Use a Cross Connect. All MEPs will be Up MEPs; MIPs are permitted"; + container mp2mp { + must "not(../../bridge or ../../down-meps or ../../flexible-xconnect/vlan-aware/evi or ../../flexible-xconnect/vlan-unaware/cross-connect-name or ../../xconnect/p2p)"; + presence "Indicates a mp2mp node is configured."; + description + "Multipoint-to-Multipoint (BGP-signaled) Cross Connect"; + leaf group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "Cross Connect Group"; + } + leaf cross-connect-name { + type xr:Cisco-ios-xr-string { + length "1..26"; + } + mandatory true; + description + "Cross Connect Name"; + } + leaf ce-id { + type uint32 { + range "1..16384"; + } + mandatory true; + description + "Local Customer Edge Identifier"; + } + leaf remote-ce-id { + type uint32 { + range "1..16384"; + } + mandatory true; + description + "Remote Customer Edge Identifier"; + } + } + container p2p { + must "not(../../bridge or ../../down-meps or ../../flexible-xconnect/vlan-aware/evi or ../../flexible-xconnect/vlan-unaware/cross-connect-name or ../../xconnect/mp2mp)"; + presence "Indicates a p2p node is configured."; + description + "Point-to-Point Cross Connect"; + leaf group { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "Cross Connect Group"; + } + leaf cross-connect-name { + type xr:Cisco-ios-xr-string { + length "1..38"; + } + mandatory true; + description + "Cross Connect Name"; + } + } + } + container id { + description + "Short Maintenance Association Name"; + container icc-based { + must "not(../number or ../string or ../vlanid or ../vpn-id)"; + presence "Indicates a icc-based node is configured."; + description + "ICC-based format, as defined by ITU-T Y.1731"; + leaf icc { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "ITU Carrier Code (ICC)"; + } + leaf umc { + type xr:Cisco-ios-xr-string { + length "1..32"; + } + mandatory true; + description + "Unique MEG ID Code (UMC)"; + } + } + leaf vlanid { + type uint32 { + range "1..4094" { + description + "VLAN ID"; + } + } + must "not(../number or ../string or ../icc-based or ../vpn-id)"; + description + "VLAN ID"; + } + leaf number { + type uint32 { + range "0..65535" { + description + "Number ID"; + } + } + must "not(../vlanid or ../string or ../icc-based or ../vpn-id)"; + description + "Number"; + } + leaf string { + type xr:Cisco-ios-xr-string { + length "1..45" { + description + "String ID"; + } + } + must "not(../vlanid or ../number or ../icc-based or ../vpn-id)"; + description + "String"; + } + container vpn-id { + must "not(../vlanid or ../number or ../icc-based or ../string)"; + presence "Indicates a vpn-id node is configured."; + description + "VPN ID, as defined by RFC 2685 (HHH:HHHH)"; + leaf vpn-oui { + type uint32 { + range "0..16777215" { + description + "3 byte VPN OUI, HHH"; + } + } + mandatory true; + description + "3 byte VPN OUI, HHH"; + } + leaf vpn-index { + type uint32 { + range "0..4294967295" { + description + "4 byte VPN Index, HHHH"; + } + } + mandatory true; + description + "4 byte VPN Index, HHHH"; + } + } + } + leaf tags { + type enumeration { + enum "1" { + value 1; + description + "Use the first (outer) tag"; + } + } + description + "The number of tags to use when sending CFM packets + from up MEPs in this service"; + } + container mip { + description + "MIP configuration"; + container auto-create { + description + "MIP auto-creation policy"; + container all { + must "not(../lower-mep-only)"; + presence "Indicates a all node is configured."; + description + "Create MIPs on all interfaces"; + } + container lower-mep-only { + must "not(../all)"; + presence "Indicates a lower-mep-only node is configured."; + description + "Create MIPs only on interfaces with a MEP at a lower level"; + } + container ccm-learning { + must "../all or ../lower-mep-only"; + presence "Indicates a ccm-learning node is configured."; + description + "Enable CCM learning at MIPs created in this service"; + } + } + } + container efd { + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down ports when MEPs detect errors"; + container protection-switching { + presence "Indicates a protection-switching node is configured."; + description + "Enable protection switching notifications when triggering EFD"; + } + } + container continuity-check { + description + "Continuity-check configuration"; + container interval { + description + "Set the continuity-check interval"; + leaf interval-time { + type enumeration { + enum "3.3ms" { + value 1; + description + "Interval of 3.3 milliseconds"; + } + enum "10ms" { + value 2; + description + "Interval of 10 milliseconds"; + } + enum "100ms" { + value 3; + description + "Interval of 100 milliseconds"; + } + enum "1s" { + value 4; + description + "Interval of 1 second"; + } + enum "10s" { + value 5; + description + "Interval of 10 seconds"; + } + enum "1m" { + value 6; + description + "Interval of 1 minute"; + } + enum "10m" { + value 7; + description + "Interval of 10 minutes"; + } + } + description + "The number of tags to use when sending CFM packets + from up MEPs in this service"; + } + leaf loss-threshold { + type uint32 { + range "2..255" { + description + "Loss threshold (in number of CCMs)"; + } + } + must "../interval-time"; + description + "Set the continuity-check loss threshold"; + } + } + container archive { + description + "Set the continuity-check archive hold time"; + leaf hold-time { + type uint32 { + range "1..65535" { + description + "Hold time (in minutes)"; + } + } + description + "Set the continuity-check archive hold time"; + } + } + container loss { + description + "Loss threshold actions"; + container auto-traceroute { + presence "Indicates a auto-traceroute node is configured."; + description + "Automatically trigger a traceroute when a MEP times out"; + } + } + } + leaf maximum-meps { + type uint32 { + range "2..8190" { + description + "Maximum number of MEPs to allow in this Service"; + } + } + description + "Limit the number of MEPs in the Maintenance Association"; + } + container ais { + description + "CFM Alarm Indication Signal configuration"; + container transmission { + presence "Indicates a transmission node is configured."; + description + "CFM AIS transmission configuration"; + leaf interval { + type enumeration { + enum "1s" { + value 4; + description + "Interval of 1 second"; + } + enum "1m" { + value 6; + description + "Interval of 1 minute"; + } + } + description + "Specify the AIS transmission interval"; + } + leaf cos { + type uint32 { + range "0..7" { + description + "Class of Service"; + } + } + description + "Specify CoS bits for AIS messages"; + } + } + } + container log { + description + "Enable logging for particular types of event"; + container continuity-check { + description + "Enable continuity-check logging"; + container mep { + description + "Enable MEP continuity-check logging"; + container changes { + presence "Indicates a changes node is configured."; + description + "Enable logging on peer MEP state changes"; + } + } + container errors { + presence "Indicates a errors node is configured."; + description + "Enable logging when continuity-check errors are detected"; + } + } + container crosscheck { + description + "Enable crosscheck logging"; + container errors { + presence "Indicates a errors node is configured."; + description + "Enable logging when crosscheck errors are detected"; + } + } + container ais { + presence "Indicates a ais node is configured."; + description + "Enable logging when AIS or LCK messages are received"; + } + container csf { + presence "Indicates a csf node is configured."; + description + "Enable logging of CSF events"; + } + container efd { + presence "Indicates a efd node is configured."; + description + "Enable logging of EFD events"; + } + } + container mep { + description + "MEP configuration"; + container crosscheck { + description + "Statically define the Maintenence End Points with a Maintenance Association to be cross-checked"; + container mep-ids { + description + "Specify crosscheck config for a given MEP ID"; + list mep-id { + key "mep-id"; + description + "Specify crosscheck config for a given MEP ID"; + leaf mep-id { + type uint32 { + range "1..8191" { + description + "MEP ID"; + } + } + description + "Specify crosscheck config for a given MEP ID"; + } + leaf mac-address { + type yang:mac-address; + description + "Expected MAC Address for the specified MEP"; + } + } + } + container auto { + presence "Indicates a auto node is configured."; + description + "Treat all remote MEPs for which CCMs are received as cross-check MEPs"; + } + } + } + container report { + description + "Configure report defect settings"; + container defects { + presence "Indicates a defects node is configured."; + description + "Specify which defects are to be reported"; + container none { + must "not(../all)"; + presence "Indicates a none node is configured."; + description + "No defects reported"; + } + container all { + must "not(../none)"; + presence "Indicates a all node is configured."; + description + "All defects reported, including received RDI"; + } + container ieee { + must + "not(../all or ../none) and (xcon or error-xcon or + remote-error-xcon or mac-remote-error-xcon)"; + presence "Indicates a ieee node is configured."; + description + "Specify defects via IEEE 802.1ag defined hierarchy"; + container xcon { + must + "not(../error-xcon or ../remote-error-xcon + or ../mac-remote-error-xcon)"; + presence "Indicates a xcon node is configured."; + description + "Report only DefXconCCM"; + } + container error-xcon { + must + "not(../xcon or ../remote-error-xcon + or ../mac-remote-error-xcon)"; + presence "Indicates a error-xcon node is configured."; + description + "Above defects reported, plus DefErrorCCM"; + } + container remote-error-xcon { + must + "not(../xcon or ../error-xcon + or ../mac-remote-error-xcon)"; + presence "Indicates a remote-error-xcon node is configured."; + description + "Above defects reported, plus DefRemoteCCM"; + } + container mac-remote-error-xcon { + must + "not(../xcon or ../error-xcon + or ../remote-error-xcon)"; + presence "Indicates a mac-remote-error-xcon node is configured."; + description + "Above defects reported, plus DefMACStatus (default)"; + } + } + container wrong-maid { + must "not(../all or ../none)"; + presence "Indicates a wrong-maid node is configured."; + description + "CCMs received with an incorrect MAID"; + } + container wrong-level { + must "not(../all or ../none)"; + presence "Indicates a wrong-level node is configured."; + description + "CCMs received with an incorrect level"; + } + container our-mac { + must "not(../all or ../none)"; + presence "Indicates a our-mac node is configured."; + description + "CCMs received with our MAC address"; + } + container our-mepid { + must "not(../all or ../none)"; + presence "Indicates a our-mepid node is configured."; + description + "CCMs received with our MEP-ID"; + } + container wrong-interval { + must "not(../all or ../none)"; + presence "Indicates a wrong-interval node is configured."; + description + "CCMs received with an incorrect CCM interval"; + } + container missing { + must "not(../all or ../none)"; + presence "Indicates a missing node is configured."; + description + "Some CCMs from a crosscheck peer MEP are missing"; + } + container peer-port-down { + must "not(../all or ../none)"; + presence "Indicates a peer-port-down node is configured."; + description + "A peer port is down (equivalent to DefMACStatus)"; + } + container rdi { + must "not(../all or ../none)"; + presence "Indicates a rdi node is configured."; + description + "CCMs containing the RDI bit received"; + } + } + } + container csf { + presence "Indicates a csf node is configured."; + description + "Enable ethernet CSF transmission for MEPs on this service"; + leaf cos { + type uint32 { + range "0..7" { + description + "Class of Service"; + } + } + description + "Class of service value to set in the outer tag of CSF packets"; + } + leaf interval { + type enumeration { + enum "1m" { + value 6; + description + "Send CSF packets at one minute intervals"; + } + enum "1s" { + value 4; + description + "Send CSF packets at one second intervals"; + } + } + description + "Interval at which to send CSF packets"; + } + } + container csf-logging { + presence "Indicates a csf-logging node is configured."; + description + "Enable logging on receipt of CSF packets"; + } + } + } + } + } + container nv { + description + "Network Virtualisation configuration"; + container satellite { + description + "Satellite configuration"; + container sla { + description + "Service-Level Agreement configuration"; + container processing { + description + "Packet processing configuration"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable processing of Ethernet SLA packets on nV Satellite devices"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-oam-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-oam-cfg.yang new file mode 100644 index 000000000..5fc800dab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-oam-cfg.yang @@ -0,0 +1,1679 @@ +module Cisco-IOS-XR-um-ethernet-oam-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ethernet-oam-cfg"; + prefix um-ethernet-oam-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a2; + } + 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 ethernet-oam package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-02-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-ETHER-BODY { + description + "Grouping for if-ether"; + container ethernet { + description + "Ethernet per-interface configuration commands"; + container oam { + presence "Indicates a oam node is configured."; + description + "OAM configuration"; + container link-monitor { + description + "Enter link-monitor submode"; + container symbol-period { + description + "Symbol-period event configuration"; + container window { + description + "window size for symbol-period event configuration"; + leaf milliseconds { + type uint32 { + range "1000..60000" { + description + "Size of the symbol-period window in milliseconds"; + } + } + must "not(../symbols/window-size)"; + description + "Use milliseconds as the units for the symbol-period window"; + } + container symbols { + description + "Use symbols as the units for the symbol-period window"; + leaf window-size { + type uint32 { + range "1..4294967295" { + description + "Size of the symbol-period window in symbols"; + } + } + must "not(../../milliseconds)"; + description + "Size of the symbol-period window in symbols"; + } + container thousand { + must "../window-size and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "../window-size and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "../window-size and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + } + container threshold { + description + "threshold configuration for symbol-period events"; + container symbols { + description + "Use symbols as the units for the symbol-period threshold"; + leaf low { + type uint32 { + range "1..4294967295" { + description + "The low threshold for symbol-period"; + } + } + description + "low threshold for symbol-period events"; + } + leaf high { + type uint32 { + range "1..4294967295" { + description + "The high threshold for symbol-period"; + } + } + description + "high threshold for symbol-period events"; + } + container thousand { + must "(../low or ../high) and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "(../low or ../high) and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "(../low or ../high) and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + container ppm { + description + "Use parts-per-million as the units for the symbol-period threshold"; + leaf low { + type uint32 { + range "1..1000000" { + description + "The low threshold for symbol-period"; + } + } + description + "low threshold for symbol-period events"; + } + leaf high { + type uint32 { + range "1..1000000" { + description + "The high threshold for symbol-period"; + } + } + description + "high threshold for symbol-period events"; + } + } + } + } + container frame { + description + "Frame event configuration"; + container window { + description + "window size for frame event configuration"; + leaf milliseconds { + type uint32 { + range "1000..60000" { + description + "Size of the frame window in milliseconds"; + } + } + description + "Use milliseconds as the units for the frame window"; + } + } + container threshold { + description + "threshold configuration for frame events"; + leaf low { + type uint32 { + range "1..4294967295" { + description + "The low threshold for frame events"; + } + } + description + "low threshold for frame events"; + } + leaf high { + type uint32 { + range "1..4294967295" { + description + "The high threshold for frame events"; + } + } + description + "high threshold for frame events"; + } + container thousand { + must "(../low or ../high) and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "(../low or ../high) and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "(../low or ../high) and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + } + container frame-period { + description + "frame-period event configuration"; + container window { + description + "window size for frame-period event configuration"; + leaf milliseconds { + type uint32 { + range "100..60000" { + description + "Size of the frame-period window in milliseconds"; + } + } + must "not(../frames/window-size)"; + description + "Use milliseconds as the units for the frame-period window"; + } + container frames { + description + "Use frames as the units for the frame-period window"; + leaf window-size { + type uint32 { + range "1..4294967295" { + description + "Size of the frame-period window in symbols"; + } + } + must "not(../../milliseconds)"; + description + "Size of the frame-period window in symbols"; + } + container thousand { + must "../window-size and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "../window-size and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "../window-size and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + } + container threshold { + description + "threshold for frame-period events"; + container frames { + description + "Use frames as the units for the frame-period threshold"; + leaf low { + type uint32 { + range "1..4294967295" { + description + "The low threshold for frame-period"; + } + } + description + "low threshold for frame-period events"; + } + leaf high { + type uint32 { + range "1..4294967295" { + description + "The high threshold for frame-period"; + } + } + description + "high threshold for frame-period events"; + } + container thousand { + must "(../low or ../high) and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "(../low or ../high) and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "(../low or ../high) and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + container ppm { + description + "Use parts-per-million as the units for the frame-period threshold"; + leaf low { + type uint32 { + range "1..1000000" { + description + "The low threshold for frame events"; + } + } + description + "low threshold for frame events"; + } + leaf high { + type uint32 { + range "1..1000000" { + description + "The high threshold for frame events"; + } + } + description + "high threshold for frame events"; + } + } + } + } + container frame-seconds { + description + "frame-seconds event configuration"; + container window { + description + "window size for frame-seconds event configuration"; + leaf milliseconds { + type uint32 { + range "10000..900000" { + description + "Size of the frame-seconds window in milliseconds"; + } + } + description + "Use milliseconds as the units for the frame-seconds window"; + } + } + container threshold { + description + "threshold"; + leaf low { + type uint32 { + range "1..900" { + description + "The low threshold for frame-seconds"; + } + } + description + "low threshold for frame-seconds events"; + } + leaf high { + type uint32 { + range "1..900" { + description + "The high threshold for frame-seconds"; + } + } + description + "high threshold for frame-seconds events"; + } + } + } + container monitoring { + presence "Indicates a monitoring node is configured."; + description + "Monitoring support"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable monitoring"; + } + } + } + container mode { + description + "OAM mode"; + container passive { + must "not(../active)"; + presence "Indicates a passive node is configured."; + description + "Passive mode"; + } + container active { + must "not(../passive)"; + presence "Indicates a active node is configured."; + description + "Active mode"; + } + } + leaf hello-interval { + type enumeration { + enum "100ms" { + value 1; + description + "100 millisecond hello interval"; + } + enum "1s" { + value 0; + description + "1 second hello interval"; + } + } + description + "Hello interval time"; + } + container remote-loopback { + presence "Indicates a remote-loopback node is configured."; + description + "Remote-loopback support"; + } + container mib-retrieval { + presence "Indicates a mib-retrieval node is configured."; + description + "MIB retrieval support"; + } + container uni-directional { + description + "Uni-directional link-fault detection support"; + container link-fault { + description + "Uni-directional link-fault detection support"; + container detection { + presence "Indicates a detection node is configured."; + description + "Uni-directional link-fault detection support"; + } + } + } + container connection { + description + "OAM connection configuration"; + leaf timeout { + type uint32 { + range "2..30" { + description + "Connection timeout period in number of lost periodic Information OAMPDUs"; + } + } + description + "OAM connection session timeout period"; + } + } + container profiles { + description + "Set the profile to use on the interface"; + leaf interface-profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter a profile name using only letters, numbers, '_' & '-'"; + } + pattern "[-a-zA-Z0-9_]*[-a-zA-Z0-9_]"; + } + description + "Enter a profile name using only letters, numbers, '_' & '-'"; + } + } + container require-remote { + description + "Enter require-remote submode"; + container mib-retrieval { + presence "Indicates a mib-retrieval node is configured."; + description + "Requirement of MIB retrieval support"; + } + container remote-loopback { + presence "Indicates a remote-loopback node is configured."; + description + "Requirement of Remote loopback support"; + } + container link-monitoring { + presence "Indicates a link-monitoring node is configured."; + description + "Requirement of Link monitoring support"; + } + container mode { + description + "Requirement of a specific OAM mode"; + container passive { + must "not(../active or ../disabled)"; + presence "Indicates a passive node is configured."; + description + "Require passive mode"; + } + container active { + must "not(../passive or ../disabled)"; + presence "Indicates a active node is configured."; + description + "Require active mode"; + } + container disabled { + must "not(../passive or ../active)"; + presence "Indicates a disabled node is configured."; + description + "Disable the requirement of a specific mode"; + } + } + } + container action { + description + "Enter action submode"; + container critical-event { + description + "Action to perform when a critical event occurs"; + container error-disable-interface { + must "not(../log or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container log { + must "not(../error-disable-interface or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../error-disable-interface or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container dying-gasp { + description + "Action to perform when a dying gasp occurs"; + container error-disable-interface { + must "not(../log or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container log { + must "not(../error-disable-interface or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../error-disable-interface or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container uni-directional { + description + "Action to perform when a uni-directional link-fault message is received"; + container link-fault { + description + "Action to perform when a uni-directional link-fault message is received"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Bring down the interface using EFD"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + } + container capabilities-conflict { + description + "Action to perform when a capabilities conflict occurs"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container wiring-conflict { + description + "Action to perform when a wiring conflict occurs"; + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container log { + must + "not(../efd or ../error-disable-interface + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../efd or ../error-disable-interface + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container discovery-timeout { + description + "Action to perform when discovery timeout occurs"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container high-threshold { + description + "Action to perform when a high-threshold is crossed"; + container error-disable-interface { + must "not(../log or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "disable the interface"; + } + container log { + must "not(../error-disable-interface or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../error-disable-interface or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container remote-loopback { + description + "Action to perform when a remote loopback event occurs"; + container log { + must "not(../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container session-up { + description + "Action to perform when a session comes up"; + container log { + must "not(../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container session-down { + description + "Action to perform when a session goes down"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + } + } + } + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container ethernet { + description + "Enable SNMP Ethernet traps"; + container oam { + description + "Enable link-oam traps"; + container events { + presence "Indicates a events node is configured."; + description + "Enable all OAM event traps"; + } + } + } + } + augment "/a2:interfaces/a2:interface" { + description + "This augment extends active nodes configuration"; + uses IF-ETHER-BODY; + } + augment "/a2:interfaces/a2:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-ETHER-BODY; + } + container ethernet { + description + "Ethernet configuration commands"; + container oam { + description + "Configure information relating to Ethernet Link OAM"; + container profiles { + description + "802.3 OAM profiles"; + list profile { + key "profile-name"; + description + "The name of the profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "The name of the profile"; + } + pattern "[-a-zA-Z0-9_]*[-a-zA-Z0-9_]"; + } + description + "The name of the profile"; + } + container link-monitor { + description + "Enter link-monitor submode"; + container symbol-period { + description + "Symbol-period event configuration"; + container window { + description + "window size for symbol-period event configuration"; + leaf milliseconds { + type uint32 { + range "1000..60000" { + description + "Size of the symbol-period window in milliseconds"; + } + } + must "not(../symbols/window-size)"; + description + "Use milliseconds as the units for the symbol-period window"; + } + container symbols { + description + "Use symbols as the units for the symbol-period window"; + leaf window-size { + type uint32 { + range "1..4294967295" { + description + "Size of the symbol-period window in symbols"; + } + } + must "not(../../milliseconds)"; + description + "Size of the symbol-period window in symbols"; + } + container thousand { + must "../window-size and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "../window-size and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "../window-size and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + } + container threshold { + description + "threshold configuration for symbol-period events"; + container symbols { + description + "Use symbols as the units for the symbol-period threshold"; + leaf low { + type uint32 { + range "1..4294967295" { + description + "The low threshold for symbol-period"; + } + } + description + "low threshold for symbol-period events"; + } + leaf high { + type uint32 { + range "1..4294967295" { + description + "The high threshold for symbol-period"; + } + } + description + "high threshold for symbol-period events"; + } + container thousand { + must "(../low or ../high) and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "(../low or ../high) and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "(../low or ../high) and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + container ppm { + description + "Use parts-per-million as the units for the symbol-period threshold"; + leaf low { + type uint32 { + range "1..1000000" { + description + "The low threshold for symbol-period"; + } + } + description + "low threshold for symbol-period events"; + } + leaf high { + type uint32 { + range "1..1000000" { + description + "The high threshold for symbol-period"; + } + } + description + "high threshold for symbol-period events"; + } + } + } + } + container frame { + description + "Frame event configuration"; + container window { + description + "window size for frame event configuration"; + leaf milliseconds { + type uint32 { + range "1000..60000" { + description + "Size of the frame window in milliseconds"; + } + } + description + "Use milliseconds as the units for the frame window"; + } + } + container threshold { + description + "threshold configuration for frame events"; + leaf low { + type uint32 { + range "1..4294967295" { + description + "The low threshold for frame events"; + } + } + description + "low threshold for frame events"; + } + leaf high { + type uint32 { + range "1..4294967295" { + description + "The high threshold for frame events"; + } + } + description + "high threshold for frame events"; + } + container thousand { + must "(../low or ../high) and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "(../low or ../high) and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "(../low or ../high) and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + } + container frame-period { + description + "frame-period event configuration"; + container window { + description + "window size for frame-period event configuration"; + leaf milliseconds { + type uint32 { + range "100..60000" { + description + "Size of the frame-period window in milliseconds"; + } + } + must "not(../frames/window-size)"; + description + "Use milliseconds as the units for the frame-period window"; + } + container frames { + description + "Use frames as the units for the frame-period window"; + leaf window-size { + type uint32 { + range "1..4294967295" { + description + "Size of the frame-period window in symbols"; + } + } + must "not(../../milliseconds)"; + description + "Size of the frame-period window in symbols"; + } + container thousand { + must "../window-size and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "../window-size and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "../window-size and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + } + container threshold { + description + "threshold for frame-period events"; + container frames { + description + "Use frames as the units for the frame-period threshold"; + leaf low { + type uint32 { + range "1..4294967295" { + description + "The low threshold for frame-period"; + } + } + description + "low threshold for frame-period events"; + } + leaf high { + type uint32 { + range "1..4294967295" { + description + "The high threshold for frame-period"; + } + } + description + "high threshold for frame-period events"; + } + container thousand { + must "(../low or ../high) and not(../million or ../billion)"; + presence "Indicates a thousand node is configured."; + description + "Use thousands of the specified units"; + } + container million { + must "(../low or ../high) and not(../thousand or ../billion)"; + presence "Indicates a million node is configured."; + description + "Use millions of the specified units"; + } + container billion { + must "(../low or ../high) and not(../thousand or ../million)"; + presence "Indicates a billion node is configured."; + description + "Use billions of the specified units"; + } + } + container ppm { + description + "Use parts-per-million as the units for the frame-period threshold"; + leaf low { + type uint32 { + range "1..1000000" { + description + "The low threshold for frame events"; + } + } + description + "low threshold for frame events"; + } + leaf high { + type uint32 { + range "1..1000000" { + description + "The high threshold for frame events"; + } + } + description + "high threshold for frame events"; + } + } + } + } + container frame-seconds { + description + "frame-seconds event configuration"; + container window { + description + "window size for frame-seconds event configuration"; + leaf milliseconds { + type uint32 { + range "10000..900000" { + description + "Size of the frame-seconds window in milliseconds"; + } + } + description + "Use milliseconds as the units for the frame-seconds window"; + } + } + container threshold { + description + "threshold"; + leaf low { + type uint32 { + range "1..900" { + description + "The low threshold for frame-seconds"; + } + } + description + "low threshold for frame-seconds events"; + } + leaf high { + type uint32 { + range "1..900" { + description + "The high threshold for frame-seconds"; + } + } + description + "high threshold for frame-seconds events"; + } + } + } + container monitoring { + presence "Indicates a monitoring node is configured."; + description + "Monitoring support"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable monitoring"; + } + } + } + container mode { + description + "OAM mode"; + container passive { + must "not(../active)"; + presence "Indicates a passive node is configured."; + description + "Passive mode"; + } + container active { + must "not(../passive)"; + presence "Indicates a active node is configured."; + description + "Active mode"; + } + } + leaf hello-interval { + type enumeration { + enum "100ms" { + value 1; + description + "100 millisecond hello interval"; + } + enum "1s" { + value 0; + description + "1 second hello interval"; + } + } + description + "Hello interval time"; + } + container remote-loopback { + presence "Indicates a remote-loopback node is configured."; + description + "Remote-loopback support"; + container disable { + presence "Indicates a detection node is configured."; + description + "Disable remote loopback support"; + } + } + container mib-retrieval { + presence "Indicates a mib-retrieval node is configured."; + description + "MIB retrieval support"; + container disable { + presence "Indicates a detection node is configured."; + description + "Disable MIB retrieval support"; + } + } + container uni-directional { + description + "Uni-directional link-fault detection support"; + container link-fault { + description + "Uni-directional link-fault detection support"; + container detection { + presence "Indicates a detection node is configured."; + description + "Uni-directional link-fault detection support"; + container disable { + presence "Indicates a detection node is configured."; + description + "Disable uni-directional link-fault detection support"; + } + } + } + } + container connection { + description + "OAM connection configuration"; + leaf timeout { + type uint32 { + range "2..30" { + description + "Connection timeout period in number of lost periodic Information OAMPDUs"; + } + } + description + "OAM connection session timeout period"; + } + } + container require-remote { + description + "Enter require-remote submode"; + container mib-retrieval { + presence "Indicates a mib-retrieval node is configured."; + description + "Requirement of MIB retrieval support"; + container disable { + presence "Indicates a detection node is configured."; + description + "Disable the requirement of MIB retrieval support"; + } + } + container remote-loopback { + presence "Indicates a remote-loopback node is configured."; + description + "Requirement of Remote loopback support"; + container disable { + presence "Indicates a detection node is configured."; + description + "Disable the requirement of remote loopback support"; + } + } + container link-monitoring { + presence "Indicates a link-monitoring node is configured."; + description + "Requirement of Link monitoring support"; + container disable { + presence "Indicates a detection node is configured."; + description + "Disable the requirement of link monitoring support"; + } + } + container mode { + description + "Requirement of a specific OAM mode"; + container passive { + must "not(../active or ../disabled)"; + presence "Indicates a passive node is configured."; + description + "Require passive mode"; + } + container active { + must "not(../passive or ../disabled)"; + presence "Indicates a active node is configured."; + description + "Require active mode"; + } + container disabled { + must "not(../passive or ../active)"; + presence "Indicates a disabled node is configured."; + description + "Disable the requirement of a specific mode"; + } + } + } + container action { + description + "Enter action submode"; + container critical-event { + description + "Action to perform when a critical event occurs"; + container error-disable-interface { + must "not(../log or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container log { + must "not(../error-disable-interface or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../error-disable-interface or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container dying-gasp { + description + "Action to perform when a dying gasp occurs"; + container error-disable-interface { + must "not(../log or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container log { + must "not(../error-disable-interface or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../error-disable-interface or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container uni-directional { + description + "Action to perform when a uni-directional link-fault message is received"; + container link-fault { + description + "Action to perform when a uni-directional link-fault message is received"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Bring down the interface using EFD"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + } + container capabilities-conflict { + description + "Action to perform when a capabilities conflict occurs"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container wiring-conflict { + description + "Action to perform when a wiring conflict occurs"; + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container log { + must + "not(../efd or ../error-disable-interface + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../efd or ../error-disable-interface + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container discovery-timeout { + description + "Action to perform when discovery timeout occurs"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container high-threshold { + description + "Action to perform when a high-threshold is crossed"; + container error-disable-interface { + must "not(../log or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "disable the interface"; + } + container log { + must "not(../error-disable-interface or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../error-disable-interface or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container remote-loopback { + description + "Action to perform when a remote loopback event occurs"; + container log { + must "not(../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container session-up { + description + "Action to perform when a session comes up"; + container log { + must "not(../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must "not(../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + container session-down { + description + "Action to perform when a session goes down"; + container error-disable-interface { + must + "not(../efd or ../log + or ../disable)"; + presence "Indicates a error-disable-interface node is configured."; + description + "Error-disable the interface"; + } + container efd { + must + "not(../error-disable-interface or ../log + or ../disable)"; + presence "Indicates a efd node is configured."; + description + "Enable EFD to bring down the interface"; + } + container log { + must + "not(../error-disable-interface or ../efd + or ../disable)"; + presence "Indicates a log node is configured."; + description + "Log the event"; + } + container disable { + must + "not(../error-disable-interface or ../efd + or ../log)"; + presence "Indicates a disable node is configured."; + description + "Perform no action"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-ring-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-ring-cfg.yang new file mode 100644 index 000000000..deca66c6c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-ring-cfg.yang @@ -0,0 +1,106 @@ +module Cisco-IOS-XR-um-ethernet-ring-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ethernet-ring-cfg"; + prefix um-ethernet-ring-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 ethernet-ring package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-18 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ring { + description + "Ethernet Ring Protection"; + container g8032 { + description + "G.8032 Ethernet Ring Protection"; + container profiles { + description + "G.8032 ring profile configuration"; + list profile { + key "profile-name"; + description + "G.8032 ring profile configuration"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "ERP profile name string"; + } + } + description + "G.8032 ring profile configuration"; + } + container timer { + description + "G.8032 timer"; + leaf wtr { + type uint32 { + range "1..12" { + description + "minutes"; + } + } + description + "Wait-to-Restore timer"; + } + leaf hold-off { + type uint32 { + range "0..10" { + description + "seconds"; + } + } + description + "Hold off timer"; + } + leaf guard { + type uint32 { + range "10..2000" { + description + "milliseconds"; + } + } + description + "Guard timer"; + } + } + container non-revertive { + presence "Indicates a non-revertive node is configured."; + description + "Non-revertive ring instance"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sat-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sat-cfg.yang new file mode 100644 index 000000000..da6f5313c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sat-cfg.yang @@ -0,0 +1,378 @@ +module Cisco-IOS-XR-um-ethernet-sat-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ethernet-sat-cfg"; + prefix um-ethernet-sat-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 ethernet-sat package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-12-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-ETHER-BODY { + description + "Grouping for if-ether"; + container ethernet { + description + "Ethernet per-interface configuration commands"; + container service-activation-test { + description + "Service activation test config"; + container permit { + description + "Config to allow Service Activation Tests on the interface"; + container internal { + must "not(../external or ../all)"; + presence "Indicates a internal node is configured."; + description + "Config to only allow internal Service Activation Tests"; + } + container external { + must "not(../internal or ../all)"; + presence "Indicates a external node is configured."; + description + "Config to only allow external Service Activation Tests"; + } + container all { + must "not(../internal or ../external)"; + presence "Indicates a all node is configured."; + description + "Config to allow Service Activation Tests in either direction"; + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-ETHER-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-ETHER-BODY; + } + container ethernet { + description + "Ethernet configuration commands"; + container service-activation-test { + description + "Service activation test config"; + container profiles { + description + "Profile name to set config for"; + list profile { + key "profile-name"; + description + "Profile name to set config for"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..63" { + description + "The name of the profile"; + } + } + description + "Profile name to set config for"; + } + container mode { + description + "Set the mode for tests"; + container two-way { + presence "Indicates a two-way node is configured."; + description + "Two-way mode"; + } + } + container duration { + description + "Set the duration config for tests"; + leaf duration-time { + type uint32 { + range "1..1440" { + description + "Duration to run the test for"; + } + } + must "../minutes or ../hours"; + description + "Set the duration config for tests"; + } + container minutes { + must "not(../hours) and ../duration-time"; + presence "Indicates a minutes node is configured."; + description + "Duration given in minutes"; + } + container hours { + when "../duration-time <= 24"; + must "not(../minutes) and ../duration-time"; + presence "Indicates a hours node is configured."; + description + "Duration given in hours"; + } + container per-step { + must "../duration-time and (../minutes or ../hours)"; + presence "Indicates a per-step node is configured."; + description + "Set duration to be duration of each step"; + } + } + container information-rate { + description + "Set the information rate to use in tests"; + leaf fixed-information-rate { + type uint32 { + range "1..4294967295" { + description + "The fixed information rate to use"; + } + } + must "not(../min) and (../kbps or ../mbps or ../gbps)"; + description + "The fixed information rate to use"; + } + leaf min { + type uint32 { + range "1..4294967295" { + description + "Minimum information rate"; + } + } + must "../step and (../kbps or ../mbps or ../gbps)"; + description + "The minimum information rate to use"; + } + leaf step { + type uint32 { + range "1..4294967295" { + description + "Information rate step"; + } + } + must "../max"; + description + "The step in information rate to use"; + } + leaf max { + type uint32 { + range "1..4294967295" { + description + "Maximum information rate"; + } + } + must "../min"; + description + "The maximum information rate to use"; + } + container kbps { + must "not(../mbps or ../gbps)"; + presence "Indicates a kbps node is configured."; + description + "Information rate given in kilobits per second"; + } + container mbps { + must "not(../kbps or ../gbps)"; + presence "Indicates a mbps node is configured."; + description + "Information rate given in megabits per second"; + } + container gbps { + must "not(../kbps or ../mbps)"; + presence "Indicates a gbps node is configured."; + description + "Information rate given in gigabits per second"; + } + } + container color-aware { + description + "Set the color-aware config"; + leaf cir { + type uint32 { + range "1..4294967295" { + description + "CIR value"; + } + } + must "../kbps or ../mbps or ../gbps"; + description + "Set the value of the committed information rate (CIR)"; + } + container kbps { + must "not(../mbps or ../gbps)"; + presence "Indicates a kbps node is configured."; + description + "Information rate given in kilobits per second"; + } + container mbps { + must "not(../kbps or ../gbps)"; + presence "Indicates a mbps node is configured."; + description + "Information rate given in megabits per second"; + } + container gbps { + must "not(../kbps or ../mbps)"; + presence "Indicates a gbps node is configured."; + description + "Information rate given in gigabits per second"; + } + container eir-color { + description + "Set config for excess information rate (EIR) packets"; + container set-dei { + must "../../cir"; + presence "Indicates a set-dei node is configured."; + description + "Set the drop-eligibility-indicator (DEI) bit for EIR packets"; + } + leaf cos { + type uint32 { + range "0..7" { + description + "CoS value for EIR packets"; + } + } + must "../../cir"; + description + "Set the CoS value for EIR packets"; + } + } + } + container packet-size { + description + "Set the packet size and pattern to use for tests"; + container emix { + must "not(../packet-size-in-bytes)"; + presence "Indicates a emix node is configured."; + description + "Use packet size and contents configured in the EMIX profile"; + leaf sequence { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Pattern defining a sequence of packet sizes as specified by Y.1564"; + } + } + description + "Specify an EMIX sequence. Otherwise the default of abceg is used"; + } + leaf u-value { + type uint32 { + range "64..10236" { + description + "Packet size in bytes"; + } + } + must "../sequence"; + description + "Size to use for 'u' in the pattern string"; + } + } + leaf packet-size-in-bytes { + type uint32 { + range "64..10236" { + description + "Packet size in bytes"; + } + } + must "not(../emix)"; + description + "Packet size in bytes"; + } + container contents { + description + "Choose how the packets should be filled"; + container pseudo-random { + must "not(../hex)"; + presence "Indicates a pseudo-random node is configured."; + description + "Pseudo-random pattern"; + } + leaf hex { + type uint32 { + range "0..255" { + description + "Hex pattern"; + } + } + must "not(../pseudo-random)"; + description + "Specify hex pattern"; + } + } + } + leaf outer-cos { + type uint32 { + range "0..7" { + description + "Outer CoS value"; + } + } + description + "Set the CoS to use in test packets"; + } + leaf inner-cos { + type uint32 { + range "0..7" { + description + "Inner CoS value"; + } + } + must "../outer-cos"; + description + ""; + } + leaf description { + type string { + length "1..63" { + description + "Description"; + } + } + description + "Description or identifier for the test"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-services-access-list-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-services-access-list-cfg.yang new file mode 100644 index 000000000..444e71889 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-services-access-list-cfg.yang @@ -0,0 +1,286 @@ +module Cisco-IOS-XR-um-ethernet-services-access-list-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ethernet-services-access-list-cfg"; + prefix um-es-acl-cfg; + + import cisco-semver { + prefix semver; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-types { + prefix xr2; + } + import Cisco-IOS-XR-um-access-list-datatypes { + prefix um-acl-types; + } + + organization + "Cisco Systems, Inc."; + contact + " + Cisco Systems, Inc. + Customer Service + + Postal: 170 W Tasman Drive + San Jose, CA 95134 + + Tel: +1 1800 553-NETS + + E-mail: cs-yang@cisco.com + "; + description + " + This module contains a collection of IOS-XR YANG model derived from CLI. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved. + "; + + revision 2022-09-19 { + description + "Added ethertype leaf + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "2.1.0"; + } + revision 2020-12-03 { + description + "Limit length of remark string"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-01 { + description + "Initial version"; + } + + feature es_acl_supported { + description + "Access list for ethernet services"; + } + + feature es_acl_capture_implemented { + description + "Capture matched packet"; + } + + feature es_acl_log_option_supported { + description + "Log matches against access-list entry"; + } + + grouping source-address { + description + "Grouping for source-address"; + leaf mac-address { + type yang:mac-address; + description + "48-bit source MAC address"; + } + leaf mac-address-mask { + type yang:mac-address; + description + "48-bit source wildcard bits"; + } + container any { + presence "Any source host"; + description + "Any host"; + } + leaf host { + type yang:mac-address; + description + "A single source host"; + } + } + + grouping destination-address { + description + "Grouping for destination-address"; + leaf mac-address { + type yang:mac-address; + description + "48-bit destination MAC address"; + } + leaf mac-address-mask { + type yang:mac-address; + description + "48-bit destination wildcard bits"; + } + container any { + presence "Any destination host"; + description + "Any host"; + } + leaf host { + type yang:mac-address; + description + "A single destination host"; + } + } + + grouping match-option-common { + description + "Grouping for match-option-common"; + container capture { + if-feature "es_acl_capture_implemented"; + presence "Capture matched packet"; + description + "Capture matched packet"; + } + container log { + if-feature "es_acl_log_option_supported"; + presence "Log matches against this entry"; + description + "Log matches against this entry"; + } + } + + grouping ace-common { + description + "Grouping for ace-common"; + container source { + must "(mac-address and mac-address-mask) or any or host"; + description + "source address"; + uses source-address; + } + container destination { + must "(mac-address and mac-address-mask) or any or host"; + description + "destination address"; + uses destination-address; + } + leaf vlan { + type um-acl-types:vlan-id; + description + "a vlan id or range of vlan ids"; + } + leaf inner-vlan { + type um-acl-types:vlan-id; + description + "A vlan id or range of vlan ids of the Inner Header"; + } + leaf cos { + type uint8 { + range "0..7" { + description + "CoS value for this entry"; + } + } + description + "Class of Service"; + } + leaf inner-cos { + type uint8 { + range "0..7" { + description + "CoS value for the Inner Header"; + } + } + description + "Class of Service of Inner Header"; + } + container dei { + presence "Discard Eligibility Indication"; + description + "Discard Eligibility Indication"; + } + container inner-dei { + presence "Discard Eligibility Indication for Inner Header"; + description + "Discard Eligibility Indication for Inner Header"; + } + } + + container ethernet-services { + if-feature "es_acl_supported"; + description + "Configure ethernet-services access-list"; + container access-list-options { + description + "Control access lists options"; + container log-update { + description + "Control access lists log updates"; + leaf threshold { + type uint32 { + range "1..2147483647" { + description + "Log update threshold (number of hits)"; + } + } + description + "Set access-list logging threshold"; + } + } + } + container access-lists { + description + "Access-lists"; + list access-list { + key "access-list-name"; + description + "Access-list configuration"; + leaf access-list-name { + type string { + length "1..64"; + } + description + "Access list name - maximum 64 characters"; + } + container sequences { + description + "Access list entries"; + list sequence { + must "deny or permit or remark"; + key "sequence-number"; + description + "access list entry"; + leaf sequence-number { + type uint32 { + range "1..2147483643"; + } + description + "Sequence number for this entry"; + } + container deny { + must "source and destination"; + presence "Grant type Deny"; + description + "Access list deny"; + uses ace-common; + uses match-option-common; + } + container permit { + must "source and destination"; + presence "Grant type Permit"; + description + "Access list permit"; + uses ace-common; + uses match-option-common; + } + leaf ether-type-number { + type xr2:Hex-integer-16; + description + "Ethernet type Number in Hex. Any value not in the + permissible range will be rejected."; + } + leaf remark { + type string { + length "0..255"; + } + description + "Comment for access list"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sla-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sla-cfg.yang new file mode 100644 index 000000000..d48f46d90 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-sla-cfg.yang @@ -0,0 +1,781 @@ +module Cisco-IOS-XR-um-ethernet-sla-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ethernet-sla-cfg"; + prefix um-ethernet-sla-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 ethernet-sla package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-14 { + description + "renamed container measure to measures under container statistics + 2022-07-26 + Updated bins width options + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "2.0.0"; + } + revision 2021-01-28 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ethernet { + description + "Ethernet configuration commands"; + container sla { + description + "Service-Level Agreement configuration"; + container profiles { + description + "Per-profile configuration"; + list profile { + key "profile-name"; + description + "Per-profile configuration"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Profile name"; + } + } + description + "Per-profile configuration"; + } + leaf type { + type string { + pattern "(cfm-delay-measurement)|(cfm-delay-measurement-version-0)|(cfm-loopback)|(cfm-loss-measurement)|(cfm-synthetic-loss-measurement)"; + } + mandatory true; + description + "Type of packet that operations using this profile will send"; + } + container probe { + description + "SLA Probe configuration"; + container send { + description + "Configure properties of packets to send"; + container packet { + description + "Send single packets"; + container once { + must "not(../every)"; + must "not(../../burst/once or ../../burst/every)"; + presence "Indicates a once node is configured."; + description + "Send a single packet"; + } + container every { + must "not(../once)"; + must "not(../../burst/once or ../../burst/every)"; + must "(../../../../schedule/every/for/time)"; + presence "Indicates a every node is configured."; + description + "Specify how often packets within a probe should be sent"; + leaf interval { + type uint32 { + range "1..10000" { + description + "Interval between packets"; + } + } + must + "../milliseconds or ../seconds or ../minutes + or ../hours"; + mandatory true; + description + "Specify how often packets within a probe should be sent"; + } + container milliseconds { + must + "not(../seconds or ../minutes + or ../hours)"; + presence "Indicates a milliseconds node is configured."; + description + "Time is in milliseconds"; + } + container seconds { + must + "not(../milliseconds or ../minutes + or ../hours)"; + presence "Indicates a seconds node is configured."; + description + "Time is in seconds"; + } + container minutes { + must + "not(../milliseconds or ../seconds + or ../hours)"; + presence "Indicates a minutes node is configured."; + description + "Time is in minutes"; + } + container hours { + must + "not(../milliseconds or ../seconds + or ../minutes)"; + presence "Indicates a hours node is configured."; + description + "Time is in hours"; + } + } + } + container burst { + description + "Send bursts of packets"; + container once { + must "not(../every) and ../packet/count"; + must "not(../../packet/once or ../../packet/every)"; + presence "Indicates a once node is configured."; + description + "Send a single burst"; + } + container every { + must "not(../once) and ../packet/count"; + must "not(../../packet/once or ../../packet/every)"; + must "(../../../../schedule/every/for/time)"; + presence "Indicates a every node is configured."; + description + "Specify how often bursts within a probe should be sent"; + leaf interval { + type uint32 { + range "1..3600" { + description + "Interval between bursts"; + } + } + must + "../seconds or ../minutes + or ../hours"; + mandatory true; + description + "Specify how often bursts within a probe should be sent"; + } + container seconds { + must "not(../minutes or ../hours)"; + presence "Indicates a seconds node is configured."; + description + "Time is in seconds"; + } + container minutes { + must "not(../seconds or ../hours)"; + presence "Indicates a minutes node is configured."; + description + "Time is in minutes"; + } + container hours { + must "not(../seconds or ../minutes)"; + presence "Indicates a hours node is configured."; + description + "Time is in hours"; + } + } + container packet { + description + "Configure properties of packets within each burst"; + leaf count { + type uint32 { + range "2..1200" { + description + "Number of packets in each burst"; + } + } + must "../interval-in-seconds or ../interval-in-milliseconds"; + description + "Specify the number of packets in each burst"; + } + leaf interval-in-seconds { + type uint32 { + range "1..30" { + description + "Interval between packets in each burst (in seconds)"; + } + } + must "not(../interval-in-milliseconds)"; + description + "Specify the interval between packets in each burst"; + } + leaf interval-in-milliseconds { + type uint32 { + range "50..30000" { + description + "Interval between packets in each burst (in milliseconds)"; + } + } + must "not(../interval-in-seconds)"; + description + "Specify the interval between packets in each burst"; + } + } + } + } + container packet { + description + "Configure properties of the packet"; + leaf size { + type uint32 { + range "1..9000" { + description + "Size of each packet in the probe"; + } + } + description + "Specify the minimum size of each packet in the probe (packets will be padded if needed)"; + } + container test { + description + "Specify a test pattern to pad the packets"; + container pattern { + description + "Specify a test pattern to pad the packets"; + container pseudo-random { + must "not(../hex)"; + presence "Indicates a pseudo-random node is configured."; + description + "Use a pseudo-random bit sequence for packet padding"; + } + leaf hex { + type uint32 { + range "0..4294967295" { + description + "Pattern to be used for hex padding (format 0xHHHHHHHH)"; + } + } + must "not(../pseudo-random)"; + description + "Use an optionally specified hex pattern for packet padding"; + } + } + } + } + leaf priority { + type uint32 { + range "0..7" { + description + "Packet priority of each packet in the probe"; + } + } + description + "Specify the priority to use when sending packets"; + } + container synthetic { + description + "Specify the number of packets used in each FLR calculation"; + container loss { + description + "Specify the number of packets used in each FLR calculation"; + container calculation { + description + "Specify the number of packets used in each FLR calculation"; + leaf packets { + type uint32 { + range "10..12096000" { + description + "Packet priority of each packet in the probe"; + } + } + description + "Specify the number of packets used in each FLR calculation"; + } + } + } + } + } + container statistics { + description + "SLA Statistics-collection configuration"; + container measures { + description + "Specify the type of statistics to collect"; + list measure { + key "type"; + description + "Specify the type of statistics to collect"; + leaf type { + type enumeration { + enum "one-way-delay-ds" { + value 3; + description + "Collect one-way (destination-to-source) delay"; + } + enum "one-way-delay-sd" { + value 2; + description + "Collect one-way (source-to-destination) delay"; + } + enum "one-way-jitter-ds" { + value 6; + description + "Collect one-way (destination-to-source) jitter"; + } + enum "one-way-jitter-sd" { + value 5; + description + "Collect one-way (source-to-destination) jitter"; + } + enum "round-trip-delay" { + value 1; + description + "Collect round-trip delay"; + } + enum "round-trip-jitter" { + value 4; + description + "Collect round-trip jitter"; + } + enum "one-way-loss-ds" { + value 8; + description + "Collect one-way (destination-to-source) loss"; + } + enum "one-way-loss-sd" { + value 7; + description + "Collect one-way (source-to-destination) los"; + } + } + description + "Specify the type of statistics to collect"; + } + container aggregate { + description + "Specify how results should be aggregated"; + container none { + must "not(../bins)"; + presence "Indicates a none node is configured."; + description + "Perform no aggregation"; + } + leaf bins { + type uint32 { + range "2..100" { + description + "Number of bins to distribute results between"; + } + } + must "not(../none)"; + description + "Aggregate results into a number of bins"; + } + leaf width { + type uint32 { + range "1..10000000" { + description + "Width in percentage points, to an accuracy of one percentage point"; + } + } + description + "Width in percentage points, to an accuracy of one percentage point"; + } + leaf width-tenths { + type uint32 { + range "0..9" { + description + "Tenths of a percentage point"; + } + } + description + "Tenths of a percentage point"; + } + container usec { + presence "Indicates a usec node is configured."; + description + "Interpret the width in microseconds"; + } + } + container buckets { + description + "Bucket configuration"; + leaf size { + type uint32 { + range "1..100" { + description + "Size of each bucket (number of probes-per-bucket)"; + } + } + description + "Configure the size of each bucket"; + } + container probes { + presence "Indicates a probes node is configured."; + description + "Buckets span multiple probes"; + } + leaf archive { + type uint32 { + range "1..100" { + description + "Number of buckets to store internally"; + } + } + description + "Configure the number of buckets to store internally"; + } + } + container thresholds { + description + "Ethernet SLA thresholds submode"; + container type { + description + "Specify the type of the threshold"; + container stateful { + description + "Set a 'stateful' threshold"; + container log { + description + "Emit a syslog when the threshold is crossed"; + container on { + description + "Specify the condition for crossing the threshold"; + leaf max-value { + type uint32 { + range "1..2147483647" { + description + "Threshold value. In microseconds for delay, millionths of a percent for loss"; + } + } + description + "Threshold is breached when the maximum value crosses the configured threshold value"; + } + leaf mean-value { + type uint32 { + range "1..2147483647" { + description + "Threshold value. In microseconds for delay, millionths of a percent for loss"; + } + } + description + "Threshold is breached when the mean value crosses the configured threshold value"; + } + leaf sample-count { + type uint32 { + range "1..2147483647" { + description + "Threshold sample count"; + } + } + description + "Threshold is breached when the sample count in bins in and above a certain bin number crosses the configured sample count"; + } + container in-and-above { + description + "Specify the bin number in-and-above which samples count towards the threshold sample count"; + leaf bin { + type uint32 { + range "2..100" { + description + "Bin number"; + } + } + description + "Specify the bin number in-and-above which samples count towards the threshold sample count"; + } + } + } + } + container efd { + description + "Bring down the interface with EFD when the threshold is crossed"; + container on { + description + "Specify the condition for crossing the threshold"; + leaf max-value { + type uint32 { + range "1..2147483647" { + description + "Threshold value. In microseconds for delay, millionths of a percent for loss"; + } + } + description + "Threshold is breached when the maximum value crosses the configured threshold value"; + } + leaf mean-value { + type uint32 { + range "1..2147483647" { + description + "Threshold value. In microseconds for delay, millionths of a percent for loss"; + } + } + description + "Threshold is breached when the mean value crosses the configured threshold value"; + } + leaf sample-count { + type uint32 { + range "1..2147483647" { + description + "Threshold sample count"; + } + } + description + "Threshold is breached when the sample count in bins in and above a certain bin number crosses the configured sample count"; + } + container in-and-above { + description + "Specify the bin number in-and-above which samples count towards the threshold sample count"; + leaf bin { + type uint32 { + range "2..100" { + description + "Bin number"; + } + } + description + "Specify the bin number in-and-above which samples count towards the threshold sample count"; + } + } + } + } + } + container stateless { + description + "Set a 'stateless' threshold"; + container log { + description + "Emit a syslog when the threshold is crossed"; + container on { + description + "Specify the condition for crossing the threshold"; + leaf max-value { + type uint32 { + range "1..2147483647" { + description + "Threshold value. In microseconds for delay, millionths of a percent for loss"; + } + } + description + "Threshold is breached when the maximum value crosses the configured threshold value"; + } + leaf mean-value { + type uint32 { + range "1..2147483647" { + description + "Threshold value. In microseconds for delay, millionths of a percent for loss"; + } + } + description + "Threshold is breached when the mean value crosses the configured threshold value"; + } + leaf sample-count { + type uint32 { + range "1..2147483647" { + description + "Threshold sample count"; + } + } + description + "Threshold is breached when the sample count in bins in and above a certain bin number crosses the configured sample count"; + } + container in-and-above { + description + "Specify the bin number in-and-above which samples count towards the threshold sample count"; + leaf bin { + type uint32 { + range "2..100" { + description + "Bin number"; + } + } + description + "Specify the bin number in-and-above which samples count towards the threshold sample count"; + } + } + } + } + } + } + } + } + } + } + container schedule { + description + "SLA Schedule configuration"; + container every { + description + "Specify scheduling frequency"; + container week { + presence "Indicates a week node is configured."; + description + "Schedule once every week"; + leaf on { + type enumeration { + enum "monday" { + value 1; + description + "Schedule every Monday"; + } + enum "tuesday" { + value 2; + description + "Schedule every Tuesday"; + } + enum "wednesday" { + value 3; + description + "Schedule every Wednesday"; + } + enum "thursday" { + value 4; + description + "Schedule every Thursday"; + } + enum "friday" { + value 5; + description + "Schedule every Friday"; + } + enum "saturday" { + value 6; + description + "Schedule every Saturday"; + } + enum "sunday" { + value 7; + description + "Schedule every Sunday"; + } + } + mandatory true; + description + "Specify day of week to schedule on"; + } + } + container day { + presence "Indicates a day node is configured."; + description + "Schedule once every day"; + } + leaf interval-in-minutes { + type uint32 { + range "1..90" { + description + "Interval between operations (minutes)"; + } + } + description + "Interval between operations (minutes)"; + } + leaf interval-in-hours { + type uint32 { + range "1..90" { + description + "Interval between operations (hours)"; + } + } + description + "Interval between operations (hours)"; + } + container at { + description + "Specify time of day (hh:mm UTC) at which (first) operation should be performed"; + leaf hours { + type uint32 { + range "0..23" { + description + "Hours (hh:mm UTC)"; + } + } + must + "../minutes and + (../../week or ../../day or + ../../interval-in-minutes or ../../interval-in-hours)"; + description + "Hours (hh:mm UTC)"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Minutes (hh:mm UTC)"; + } + } + must "../hours"; + description + "Minutes (hh:mm UTC)"; + } + } + container for { + description + "Specify how long operations should keep running for"; + leaf time { + type uint32 { + range "1..3600" { + description + "Duration of operation (may be seconds, minutes, hours, days, or weeks)"; + } + } + must + "../unit and + (../../week or ../../day or + ../../interval-in-minutes or ../../interval-in-hours)"; + description + "Duration of operation (may be seconds, minutes, hours, days, or weeks)"; + } + leaf unit { + type enumeration { + enum "seconds" { + value 3; + description + "Time is in seconds"; + } + enum "minutes" { + value 4; + description + "Time is in minutes"; + } + enum "hours" { + value 5; + description + "Time is in hours"; + } + enum "day" { + value 6; + description + "Time is in days"; + } + enum "week" { + value 7; + description + "Time is in weeks"; + } + } + must "../time"; + description + "Unit of operation (may be seconds, minutes, hours, days, or weeks)"; + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-udld-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-udld-cfg.yang new file mode 100644 index 000000000..54242d607 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ethernet-udld-cfg.yang @@ -0,0 +1,133 @@ +module Cisco-IOS-XR-um-ethernet-udld-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ethernet-udld-cfg"; + prefix um-ethernet-udld-cfg; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 ethernet-udld package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2022-02-09 { + description + "Initial release"; + } + + grouping IF-ETHER-BODY { + description + "Grouping for if-ether"; + container ethernet { + description + "Ethernet per-interface configuration commands"; + container udld { + presence "Indicates a udld node is configured."; + description + "Enable the UniDirectional Link Detection protocol"; + container mode { + description + "Set the mode in which to run the UDLD protocol"; + container normal { + must "not(../aggressive)"; + presence "Indicates a normal node is configured."; + description + "Run UDLD in normal mode"; + } + container aggressive { + must "not(../normal)"; + presence "Indicates a aggressive node is configured."; + description + "Run UDLD in aggressive mode"; + } + } + leaf message-time { + type uint32 { + range "7..90" { + description + "'Mslow' message time (in seconds) to use for the UDLD protocol"; + } + } + description + "Set the 'Mslow' message time (in seconds) for the UDLD protocol"; + } + container logging { + description + "Set whether operational UDLD syslogs are displayed"; + container disable { + presence "Indicates a disable node is configured."; + description + "Suppress operational UDLD syslogs"; + } + } + container destination { + description + "Set the destination MAC address used in UDLD frames sent/received on this port"; + container mac-address { + description + "Set the destination MAC address used in UDLD frames sent/received on this port"; + leaf address { + type yang:mac-address; + must "not(../cisco-l2cp or ../ieee-slow-protocols)"; + description + "Set the destination MAC address used in UDLD frames sent/received on this port"; + } + container ieee-slow-protocols { + must "not(../cisco-l2cp or ../address)"; + presence "Indicates a ieee-slow-protocols node is configured."; + description + "Use the IEEE slow protocol destination MAC address"; + } + container cisco-l2cp { + must "not(../ieee-slow-protocols or ../address)"; + presence "Indicates a cisco-l2cp node is configured."; + description + "Use the Cisco L2CP MAC address (used by CDP)"; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-ETHER-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-ETHER-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-cfg.yang new file mode 100644 index 000000000..f53d4a28a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-cfg.yang @@ -0,0 +1,278 @@ +module Cisco-IOS-XR-um-event-manager-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-event-manager-cfg"; + prefix um-event-manager-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 event-manager package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-12 { + description + "Moved pam-agent under event manager"; + } + revision 2022-09-22 { + description + "constraint update"; + } + revision 2022-07-15 { + description + "Added pam-agent node under event manager"; + } + revision 2021-08-10 { + description + "Initial release"; + } + + container event { + description + "Event related commands"; + container manager { + description + "Event Manager configuration commands"; + leaf refresh-time { + type uint32 { + range "10..4294967295" { + description + "A valid positive integer greater than 9"; + } + } + description + "Set refresh time (in seconds) for policy username's AAA taskmap"; + } + container directory { + description + "Set Embedded Event Manager directory information"; + container user { + description + "Set Embedded Event Manager user directory information"; + leaf policy { + type string { + length "1..800" { + description + "Path of the Embedded Event Manager user policy directory"; + } + } + description + "Set Embedded Event Manager user policy directory"; + } + leaf library { + type string { + length "1..800" { + description + "Path of the Embedded Event Manager user library directory"; + } + } + description + "Set Embedded Event Manager user library directory"; + } + } + } + container scheduler { + description + "Set Embedded Event Manager scheduler options"; + container suspend { + presence "Indicates a suspend node is configured."; + description + "Suspend Embedded Event Manager policy scheduling"; + } + container script { + description + "TCL script type internal data for EEM component"; + container thread { + description + "Internal thread data for EEM component"; + container class { + description + "Internal class data for EEM component"; + container default { + description + "default class type"; + leaf number { + type uint32 { + range "1..5" { + description + "value of the threads to schedule"; + } + } + description + "Number of scheduler threads"; + } + } + } + } + } + } + container environment { + description + "Set an Embedded Event Manager global variable for policies"; + list global-variable { + key "global-variable-name"; + description + "Name of the global variable"; + leaf global-variable-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the global variable"; + } + } + description + "Name of the global variable"; + } + leaf value { + type string { + length "1..800" { + description + "Value of the global variable"; + } + } + description + "Value of the global variable"; + } + } + } + container policy { + description + "Register an Event Manager policy"; + list policy-file { + key "policy-file-name"; + description + "Name of the policy file"; + leaf policy-file-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the policy file"; + } + } + description + "Name of the policy file"; + } + leaf username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "A Configured username"; + } + } + mandatory true; + description + "Username under whom this policy will execute"; + } + container persist-time { + description + "Time of validity (in seconds) for cached AAA taskmap of username (default is 3600)"; + leaf value { + type uint32 { + range "0..4294967294" { + description + "Integer value for this policy's persist-time"; + } + } + must "not(../infinite)"; + description + "Integer value for this policy's persist-time"; + } + container infinite { + must "not(../value)"; + presence "Indicates a infinite node is configured."; + description + "Cached AAA taskmap of username is always treated valid"; + } + } + container type { + description + "The Event Manager type of this policy"; + container system { + must "not(../user)"; + presence "Indicates a system node is configured."; + description + "Event Manager system policy"; + } + container user { + must "not(../system)"; + presence "Indicates a user node is configured."; + description + "Event Manager user policy"; + } + } + container checksum { + description + "Specify Embedded Event Manager policy checksum"; + leaf md5 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "MD5 checksum"; + } + } + must "not(../sha-1)"; + description + "Use MD5 checksum"; + } + leaf sha-1 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "SHA-1 checksum"; + } + } + must "not(../md5)"; + description + "Use SHA-1 checksum"; + } + } + container secure-mode { + description + "Specify Embedded Event Manager policy security policy"; + container trust { + presence "Indicates a trust node is configured."; + description + "Requires Trust Signature"; + } + container cisco { + description + "Requires Cisco Digital Signature"; + container rsa-2048 { + presence "Indicates a rsa-2048 node is configured."; + description + "Requires Cisco Digital Signature"; + } + } + } + } + } + container pam-agent { + description + "Embedded Event Manager pam-agent"; + container run { + presence "Indicates a run node is configured."; + description + "Start Embedded Event Manager pam-agent"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-policy-map-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-policy-map-cfg.yang new file mode 100644 index 000000000..eb12bd3ca --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-event-manager-policy-map-cfg.yang @@ -0,0 +1,692 @@ +module Cisco-IOS-XR-um-event-manager-policy-map-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-event-manager-policy-map-cfg"; + prefix um-event-manager-policy-map-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-event-manager-cfg { + prefix a1; + } + + 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 event-manager-policy-map package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-08-13 { + description + "Added timer, track and telemetry event-types under event-trigger; + Added rate-limit; + Added multi-event support"; + } + revision 2021-06-16 { + description + "Initial release"; + } + + augment "/a1:event/a1:manager" { + container event-trigger { + description + "Configure event-trigger"; + list event { + key "event-name"; + description + "Name of the event"; + leaf event-name { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Name of the event"; + } + } + description + "Name of the event"; + } + leaf occurrence { + type uint32 { + range "1..32" { + description + "Integer value for occurrence"; + } + } + description + "No of occurrences before the event is raised"; + } + container period { + description + "Time interval during which configured occurrence should take place"; + leaf seconds { + type uint32 { + range "1..4294967295" { + description + "Integer value for time interval"; + } + } + description + "Time interval in seconds"; + } + } + container rate-limit { + description + "Limit trigger to once per given time period"; + leaf seconds { + type uint32 { + range "1..4294967" { + description + "Rate limit in second"; + } + } + must "not(../milli-seconds)"; + description + "Rate limit in second"; + } + leaf milli-seconds { + type uint32 { + range "1..4294967295" { + description + "Rate limit in millisecond"; + } + } + must "not(../seconds)"; + description + "Rate limit in millisecond"; + } + } + container type { + description + "Configure the type of event"; + container syslog { + must "not(../timer/watchdog or ../timer/cron or ../track or ../telemetry)"; + presence "Indicates a syslog node is configured."; + description + "Configure syslog event"; + leaf pattern { + type string { + length "1..800" { + description + "Syslog pattern or regex"; + } + } + mandatory true; + description + "Configure syslog pattern or regex"; + } + container severity { + description + "Configure the syslog message severity to be screened (default: all)"; + container emergency { + presence "Indicates a emergency node is configured."; + description + "Syslog priority 0 (highest)"; + } + container alert { + presence "Indicates a alert node is configured."; + description + "Syslog priority 1"; + } + container critical { + presence "Indicates a critical node is configured."; + description + "Syslog priority 2"; + } + container error { + presence "Indicates a error node is configured."; + description + "Syslog priority 3"; + } + container warning { + presence "Indicates a warning node is configured."; + description + "Syslog priority 4"; + } + container notice { + presence "Indicates a notice node is configured."; + description + "Syslog priority 5"; + } + container info { + presence "Indicates a info node is configured."; + description + "Syslog priority 6"; + } + container debug { + presence "Indicates a debug node is configured."; + description + "Syslog priority 7 (lowest)"; + } + } + } + container timer { + description + "Configure timer event"; + container watchdog { + must "not(../../syslog or ../cron or ../../track or ../../telemetry)"; + presence "Indicates a watchdog node is configured."; + description + "Watchdog timer"; + leaf value { + type uint32 { + range "10..86400" { + description + "Timer value in seconds"; + } + } + mandatory true; + description + "Timer value in seconds"; + } + } + container cron { + must "not(../../syslog or ../watchdog or ../../track or ../../telemetry)"; + presence "Indicates a cron node is configured."; + description + "Cron timer"; + leaf cron-entry { + type string { + length "1..800" { + description + "Timer cron entry"; + } + } + mandatory true; + description + "Enter cron entry"; + } + } + } + container telemetry { + must "not(../syslog or ../timer/cron or ../timer/watchdog or ../track)"; + presence "Indicates a telemetry node is configured."; + description + "Configure telemetry event"; + leaf sensor-path { + type string { + length "1..1024" { + description + "Telemetry sensor path"; + } + } + must "../sample-interval"; + mandatory true; + description + "Telemetry sensor path"; + } + leaf sample-interval { + type uint32 { + range "15..4294967" { + description + "Sample interval in second"; + } + } + must "../sensor-path"; + description + "Time interval for querying telemetry path"; + } + } + container track { + presence "Indicates a track node is configured."; + description + "Configure track event"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the track"; + } + } + must "(../status/up or ../status/down or ../status/any)"; + mandatory true; + description + "Name of the track"; + } + container status { + description + "Configure track status (default : any)"; + container up { + must "not(../down or ../any)"; + presence "Indicates a up node is configured."; + description + "Trigger event when track is up"; + } + container down { + must "not(../up or ../any)"; + presence "Indicates a down node is configured."; + description + "Trigger event when track is down"; + } + container any { + must "not(../up or ../down)"; + presence "Indicates a any node is configured."; + description + "Trigger event when track changes up/down"; + } + } + } + } + container query { + description + "Query string to query a single telemetry value"; + leaf json-path { + type string { + length "1..253" { + description + "json-path query string"; + } + } + description + "json-path query string"; + } + } + container match-criteria { + description + "Match criteria for raising event"; + container exact-match { + must "not(../threshold or ../rate)"; + presence "Indicates a exact-match node is configured."; + description + "Trigger event when exact-match occurs"; + leaf value { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "String value to trigger event"; + } + } + description + "String value to trigger event"; + } + } + container threshold { + must "not(../exact-match or ../rate)"; + presence "Indicates a threshold node is configured."; + description + "Trigger event based on a threshold"; + leaf greater-than { + type uint32 { + range "0..4294967294" { + description + "Threshold value to trigger event"; + } + } + must + "not(../greater-equal-to or ../equal-to + or ../not-equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is greater than threshold"; + } + leaf greater-equal-to { + type uint32 { + range "0..4294967294" { + description + "Threshold value to trigger event"; + } + } + must + "not(../greater-than or ../equal-to + or ../not-equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is greater than or equal to threshold"; + } + leaf equal-to { + type uint32 { + range "0..4294967295" { + description + "Threshold value to trigger event"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../not-equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is equal to threshold"; + } + leaf not-equal-to { + type uint32 { + range "0..4294967295" { + description + "Threshold value to trigger event"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is not equal to threshold"; + } + leaf less-equal-to { + type uint32 { + range "1..4294967295" { + description + "Threshold value to trigger event"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../equal-to or ../not-equal-to + or ../less-than)"; + description + "Match when value is less than or equal to threshold"; + } + leaf less-than { + type uint32 { + range "1..4294967295" { + description + "Threshold value to trigger event"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../equal-to or ../not-equal-to + or ../less-equal-to)"; + description + "Match when value is less than threshold"; + } + } + container rate { + must "not(../exact-match or ../threshold)"; + presence "Indicates a rate node is configured."; + description + "Rate of change to trigger event"; + container direction { + must "../value"; + description + "Direction of rate of change: increase/decrease/any"; + container increasing { + must "not(../decreasing or ../any)"; + presence "Indicates a increasing node is configured."; + description + "Rate of increase in percent"; + } + container decreasing { + must "not(../increasing or ../any)"; + presence "Indicates a decreasing node is configured."; + description + "Rate of decrease in percent"; + } + container any { + must "not(../increasing or ../decreasing)"; + presence "Indicates a any node is configured."; + description + "Rate of change in percent (increase or decrease)"; + } + } + container value { + must "../direction"; + description + "Value of rate of change"; + leaf greater-than { + type uint32 { + range "0..4294967294" { + description + "Rate of change in percent"; + } + } + must + "not(../greater-equal-to or ../equal-to + or ../not-equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is greater than threshold"; + } + leaf greater-equal-to { + type uint32 { + range "0..4294967294" { + description + "Rate of change in percent"; + } + } + must + "not(../greater-than or ../equal-to + or ../not-equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is greater than or equal to threshold"; + } + leaf equal-to { + type uint32 { + range "0..4294967295" { + description + "Rate of change in percent"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../not-equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is equal to threshold"; + } + leaf not-equal-to { + type uint32 { + range "0..4294967295" { + description + "Rate of change in percent"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../equal-to or ../less-equal-to + or ../less-than)"; + description + "Match when value is not equal to threshold"; + } + leaf less-equal-to { + type uint32 { + range "1..4294967295" { + description + "Rate of change in percent"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../equal-to or ../not-equal-to + or ../less-than)"; + description + "Match when value is less than or equal to threshold"; + } + leaf less-than { + type uint32 { + range "1..4294967295" { + description + "Rate of change in percent"; + } + } + must + "not(../greater-than or ../greater-equal-to + or ../equal-to or ../not-equal-to + or ../less-equal-to)"; + description + "Match when value is less than threshold"; + } + } + } + } + } + } + container actions { + description + "Configure action"; + list action { + key "action-name"; + description + "Name of the action"; + leaf action-name { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Name of the action"; + } + } + description + "Name of the action"; + } + container type { + description + "Type of action"; + container script { + must "../../username and checksum/sha256"; + presence "Indicates a script node is configured."; + description + "Configure a Python script as action"; + leaf script-name { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Python script name (must have .py extension)"; + } + } + mandatory true; + description + "Name of Python script (must have .py extension)"; + } + container maxrun { + description + "Configure the max run time of script (default: 20seconds)"; + leaf seconds { + type uint32 { + range "10..4294967295" { + description + "Maxrun in seconds"; + } + } + description + "Maxrun in seconds"; + } + } + container checksum { + description + "Configure script checksum"; + leaf sha256 { + type xr:Cisco-ios-xr-string { + length "64" { + description + "Checksum value"; + } + } + description + "Configure sha256 checksum"; + } + } + } + } + leaf username { + type xr:Cisco-ios-xr-string { + length "1..253" { + description + "A configured user name"; + } + } + must "../type/script"; + description + " Username under whom this policy will execute"; + } + } + } + container policy-maps { + description + "Configure eem policy map"; + list policy-map { + key "policy-map-name"; + description + "Name of the policy-map"; + leaf policy-map-name { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Name of the policy-map"; + } + } + description + "Name of the policy-map"; + } + leaf occurrence { + type uint32 { + range "1..32" { + description + "Integer value for occurrence"; + } + } + description + "No of occurrences before the policy becomes active (default 1)"; + } + leaf period { + type uint32 { + range "1..4294967295" { + description + "time in seconds"; + } + } + description + "Time in seconds during which configured occurrence should take place"; + } + container trigger { + description + "Configure trigger for this policy-map"; + leaf event { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of event to map with this policy-map"; + } + } + description + "Set an event as trigger for this policy-map"; + } + leaf multi-event { + type string { + length "1..128" { + description + "Configure multiple events with boolean correlation (AND,OR)"; + } + pattern "\".*.\""; + } + must "not(../event)"; + description + "Set multiple events as trigger for this policy-map"; + } + } + container actions { + description + "Map action for policy-map (Maximum 5)"; + list action { + key "action-name"; + description + "Name of action"; + leaf action-name { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Name of action"; + } + } + description + "Name of action"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-evpn-host-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-evpn-host-cfg.yang new file mode 100644 index 000000000..d1c1319ab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-evpn-host-cfg.yang @@ -0,0 +1,269 @@ +module Cisco-IOS-XR-um-evpn-host-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-evpn-host-cfg"; + prefix um-evpn-host-cfg; + + import Cisco-IOS-XR-um-l2vpn-cfg { + prefix a1; + } + 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 evpn-host package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:evpn" { + description + "This augment extends evpn nodes configuration"; + container host { + description + "Config host parameters"; + container mac-address { + description + "Config the host mac-address parameters"; + container duplicate-detection { + description + "Config the host mac-address duplicate detection parameters"; + leaf move-count { + type uint32 { + range "1..1000" { + description + "Number of moves. Default is 5."; + } + } + description + "Number of moves to occur in move-interval seconds before freezing the MAC. Default is 5."; + } + leaf move-interval { + type uint32 { + range "5..3600" { + description + "MAC move interval in seconds. Default is 180s."; + } + } + description + "Interval to watch for subsequent moves before freezing the MAC. Default is 180s."; + } + leaf freeze-time { + type uint32 { + range "5..3600" { + description + "MAC freeze time in seconds. Default is 30s"; + } + } + description + "Length of time to freeze the mac after it has been detected as duplicate. Default is 30s."; + } + leaf retry-count { + type union { + type uint32 { + range "0..1000" { + description + "Retry count. Default is 3 times."; + } + } + type enumeration { + enum "infinity" { + value 1001; + description + "Infinite retry count. Disable permanent freezing of MACs."; + } + } + } + description + "Number of times to unfreeze a MAC before permanently freezing it. Default is 3 times."; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable duplicate detection for MAC, IPv4 or IPv6 addresses."; + } + leaf reset-freeze-count-interval { + type uint32 { + range "1..48" { + description + "Interval to reset count of duplicate detection events in hours. Default is 24 hours."; + } + } + description + "Interval after which the count of duplicate detection events used to determine whether MAC needs to be permanently frozen, is reset. Default is 24 hours."; + } + } + } + container ipv4-address { + description + "Config the host ipv4-address parameters"; + container duplicate-detection { + description + "Config the host ipv4-address duplicate detection parameters"; + leaf move-count { + type uint32 { + range "1..1000" { + description + "Number of moves. Default is 5."; + } + } + description + "Number of moves to occur in move-interval seconds before freezing the IP. Default is 5."; + } + leaf move-interval { + type uint32 { + range "5..3600" { + description + "MAC move interval in seconds. Default is 180s."; + } + } + description + "Interval to watch for subsequent mac moves before freezing the IP. Default is 180s."; + } + leaf freeze-time { + type uint32 { + range "5..3600" { + description + "MAC freeze time in seconds. Default is 30s"; + } + } + description + "Length of time to lock the IP address after it has been detected as duplicate. Default is 30s."; + } + leaf retry-count { + type union { + type uint32 { + range "0..1000" { + description + "Retry count. Default is 3 times."; + } + } + type enumeration { + enum "infinity" { + value 1001; + description + "Infinite retry count. Disable permanent freezing of IPv4s."; + } + } + } + description + "Number of times to unfreeze an IP address before permanently freezing it. Default is 3 times."; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable duplicate detection for MAC, IPv4 or IPv6 addresses."; + } + leaf reset-freeze-count-interval { + type uint32 { + range "1..48" { + description + "Interval to reset count of duplicate detection events in hours. Default is 24 hours."; + } + } + description + "Interval after which the count of duplicate detection events used to determine whether IPv4 needs to be permanently frozen, is reset. Default is 24 hours."; + } + } + } + container ipv6-address { + description + "Config the host ipv6-address parameters"; + container duplicate-detection { + description + "Config the host ipv6-address duplicate detection parameters"; + leaf move-count { + type uint32 { + range "1..1000" { + description + "Number of moves. Default is 5."; + } + } + description + "Number of moves to occur in move-interval seconds before freezing the IP. Default is 5."; + } + leaf move-interval { + type uint32 { + range "5..3600" { + description + "MAC move interval in seconds. Default is 180s."; + } + } + description + "Interval to watch for subsequent mac moves before freezing the IP. Default is 180s."; + } + leaf freeze-time { + type uint32 { + range "5..3600" { + description + "MAC freeze time in seconds. Default is 30s"; + } + } + description + "Length of time to lock the IP address after it has been detected as duplicate. Default is 30s."; + } + leaf retry-count { + type union { + type uint32 { + range "0..1000" { + description + "Retry count. Default is 3 times."; + } + } + type enumeration { + enum "infinity" { + value 1001; + description + "Infinite retry count. Disable permanent freezing of IPv6s."; + } + } + } + description + "Number of times to unfreeze an IP address before permanently freezing it. Default is 3 times."; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable duplicate detection for MAC, IPv4 or IPv6 addresses."; + } + leaf reset-freeze-count-interval { + type uint32 { + range "1..48" { + description + "Interval to reset count of duplicate detection events in hours. Default is 24 hours."; + } + } + description + "Interval after which the count of duplicate detection events used to determine whether IPv6 needs to be permanently frozen, is reset. Default is 24 hours."; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-exception-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-exception-cfg.yang new file mode 100644 index 000000000..ea84f8bcf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-exception-cfg.yang @@ -0,0 +1,71 @@ +module Cisco-IOS-XR-um-exception-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-exception-cfg"; + prefix um-exception-cfg; + + 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 exception package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-30 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container exception { + description + "Coredump configuration commands"; + container choices { + description + "Preference for the following dump location"; + list choice { + key "dump-location-preference"; + description + "Preference for the following dump location"; + leaf dump-location-preference { + type uint32 { + range "1..3" { + description + "Order of preference"; + } + } + description + "Preference for the following dump location"; + } + leaf filepath { + type string { + length "1..1024" { + description + "Protocol and directory"; + } + } + mandatory true; + description + "Give the dump location next"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-explicit-paths-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-explicit-paths-cfg.yang new file mode 100644 index 000000000..e94dcd1b5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-explicit-paths-cfg.yang @@ -0,0 +1,513 @@ +module Cisco-IOS-XR-um-explicit-paths-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-explicit-paths-cfg"; + prefix um-explicit-paths-cfg; + + import ietf-inet-types { + prefix inet; + } + 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 explicit-paths package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-06 { + description + "Added must statement under list index of explicit-path/name"; + semver:module-version "2.0.0"; + } + revision 2021-01-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container explicit-path { + description + "Explicit-path config commands"; + container identifiers { + description + "Specify explicit path by number"; + list identifier { + key "identifier-id"; + description + "Specify explicit path by number"; + leaf identifier-id { + type uint32 { + range "1..65535" { + description + "Enter number"; + } + } + description + "Specify explicit path by number"; + } + container indexes { + description + "Specify the next entry index to add or edit"; + list index { + must + "next-address/strict/ipv4/unicast/address or + next-address/strict/ipv4/unicast/unnumbered or + next-address/strict/ipv4/unicast/ifindex or + next-address/loose/ipv4/unicast/address or + next-address/loose/ipv4/unicast/unnumbered or + next-address/loose/ipv4/unicast/ifindex or + exclude-address/ipv4/unicast/address or + exclude-srlg/ipv4/unicast/address or + next-label"; + key "index-number"; + description + "Specify the next entry index to add or edit"; + leaf index-number { + type uint32 { + range "1..65535" { + description + "Index number"; + } + } + description + "Specify the next entry index to add or edit"; + } + container next-address { + description + "Specify the next (adjacent) address in the path"; + container strict { + description + "Specify the next address in the path as a strict hop"; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "(../ifindex = 0) and not(../unnumbered or + ../../../../loose/ipv4/unicast/address or + ../../../../loose/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Specify the address SAFI"; + } + leaf unnumbered { + type inet:ipv4-address-no-zone; + must + "../ifindex and (../ifindex != 0) and not(../address or + ../../../../loose/ipv4/unicast/address or + ../../../../loose/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Enter Router Id (A.B.C.D) and Ifindex "; + } + leaf ifindex { + type union { + type uint32 { + range "1..4294967295" { + description + "Enter ifindex for unnumbered"; + } + } + type uint32 { + range "0" { + description + "0 is the value needed for address"; + } + } + } + must "../address or ../unnumbered"; + description + "Enter Ifindex"; + } + } + } + } + container loose { + description + "Specify the next address in the path as a loose hop"; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "(../ifindex = 0) and not(../unnumbered or + ../../../../strict/ipv4/unicast/address or + ../../../../strict/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Specify the address SAFI"; + } + leaf unnumbered { + type inet:ipv4-address-no-zone; + must + "../ifindex and (../ifindex != 0) and not(../address or + ../../../../strict/ipv4/unicast/address or + ../../../../strict/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Enter Router Id (A.B.C.D) and Ifindex "; + } + leaf ifindex { + type union { + type uint32 { + range "1..4294967295" { + description + "Enter ifindex for unnumbered"; + } + } + type uint32 { + range "0" { + description + "0 is the value needed for address"; + } + } + } + must "../address or ../unnumbered"; + description + "Enter Ifindex"; + } + } + } + } + } + container exclude-address { + description + "Specify the next address to be excluded "; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "not(../../../../next-address/loose/ipv4/unicast/address or + ../../../../next-address/loose/ipv4/unicast/unnumbered or + ../../../../next-address/strict/ipv4/unicast/address or + ../../../../next-address/strict/ipv4/unicast/unnumbered or + ../../../../exclude-srlg/ipv4/unicast/address or + ../../../../next-label)"; + description + "Specify the address SAFI"; + } + } + } + } + container exclude-srlg { + description + "Specify an IP Addr to get SRLGs from for exclusion"; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "not(../../../../next-address/loose/ipv4/unicast/address or + ../../../../next-address/loose/ipv4/unicast/unnumbered or + ../../../../next-address/strict/ipv4/unicast/address or + ../../../../next-address/strict/ipv4/unicast/unnumbered or + ../../../../exclude-address/ipv4/unicast/address or + ../../../../next-label)"; + description + "Specify the address SAFI"; + } + } + } + } + leaf next-label { + type uint32 { + range "0..1048575" { + description + "MPLS label value"; + } + } + must + "not(../next-address/loose/ipv4/unicast/address or + ../next-address/loose/ipv4/unicast/unnumbered or + ../next-address/strict/ipv4/unicast/address or + ../next-address/strict/ipv4/unicast/unnumbered or + ../exclude-address/ipv4/unicast/address or + ../exclude-srlg/ipv4/unicast/address)"; + description + "Specify the next MPLS label in the path"; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable the explicit path"; + } + } + } + container names { + description + "Specify explicit path by name"; + list name { + key "name-name"; + description + "Specify explicit path by name"; + leaf name-name { + type string { + length "1..800" { + description + "Specify an IP explicit path by name"; + } + } + description + "Specify explicit path by name"; + } + container indexes { + description + "Specify the next entry index to add or edit"; + list index { + must + "next-address/strict/ipv4/unicast/address or + next-address/strict/ipv4/unicast/unnumbered or + next-address/strict/ipv4/unicast/ifindex or + next-address/loose/ipv4/unicast/address or + next-address/loose/ipv4/unicast/unnumbered or + next-address/loose/ipv4/unicast/ifindex or + exclude-address/ipv4/unicast/address or + exclude-srlg/ipv4/unicast/address or + next-label"; + key "index-number"; + description + "Specify the next entry index to add or edit"; + leaf index-number { + type uint32 { + range "1..65535" { + description + "Index number"; + } + } + description + "Specify the next entry index to add or edit"; + } + container next-address { + description + "Specify the next (adjacent) address in the path"; + container strict { + description + "Specify the next address in the path as a strict hop"; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "(../ifindex = 0) and not(../unnumbered or + ../../../../loose/ipv4/unicast/address or + ../../../../loose/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Specify the address SAFI"; + } + leaf unnumbered { + type inet:ipv4-address-no-zone; + must + "../ifindex and (../ifindex != 0) and not(../address or + ../../../../loose/ipv4/unicast/address or + ../../../../loose/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Enter Router Id (A.B.C.D) and Ifindex "; + } + leaf ifindex { + type union { + type uint32 { + range "1..4294967295" { + description + "Enter ifindex for unnumbered"; + } + } + type uint32 { + range "0" { + description + "0 is the value needed for address"; + } + } + } + must "../address or ../unnumbered"; + description + "Enter Ifindex"; + } + } + } + } + container loose { + description + "Specify the next address in the path as a loose hop"; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "(../ifindex = 0) and not(../unnumbered or + ../../../../strict/ipv4/unicast/address or + ../../../../strict/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Specify the address SAFI"; + } + leaf unnumbered { + type inet:ipv4-address-no-zone; + must + "../ifindex and (../ifindex != 0) and not(../address or + ../../../../strict/ipv4/unicast/address or + ../../../../strict/ipv4/unicast/unnumbered or + ../../../../../exclude-address/ipv4/unicast/address or + ../../../../../exclude-srlg/ipv4/unicast/address or + ../../../../../next-label)"; + description + "Enter Router Id (A.B.C.D) and Ifindex "; + } + leaf ifindex { + type union { + type uint32 { + range "1..4294967295" { + description + "Enter ifindex for unnumbered"; + } + } + type uint32 { + range "0" { + description + "0 is the value needed for address"; + } + } + } + must "../address or ../unnumbered"; + description + "Enter Ifindex"; + } + } + } + } + } + container exclude-address { + description + "Specify the next address to be excluded "; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "not(../../../../next-address/loose/ipv4/unicast/address or + ../../../../next-address/loose/ipv4/unicast/unnumbered or + ../../../../next-address/strict/ipv4/unicast/address or + ../../../../next-address/strict/ipv4/unicast/unnumbered or + ../../../../exclude-srlg/ipv4/unicast/address or + ../../../../next-label)"; + description + "Specify the address SAFI"; + } + } + } + } + container exclude-srlg { + description + "Specify an IP Addr to get SRLGs from for exclusion"; + container ipv4 { + description + "Specify the address AFI"; + container unicast { + description + "Specify the address SAFI"; + leaf address { + type inet:ipv4-address-no-zone; + must + "not(../../../../next-address/loose/ipv4/unicast/address or + ../../../../next-address/loose/ipv4/unicast/unnumbered or + ../../../../next-address/strict/ipv4/unicast/address or + ../../../../next-address/strict/ipv4/unicast/unnumbered or + ../../../../exclude-address/ipv4/unicast/address or + ../../../../next-label)"; + description + "Specify the address SAFI"; + } + } + } + } + leaf next-label { + type uint32 { + range "0..1048575" { + description + "MPLS label value"; + } + } + must + "not(../next-address/loose/ipv4/unicast/address or + ../next-address/loose/ipv4/unicast/unnumbered or + ../next-address/strict/ipv4/unicast/address or + ../next-address/strict/ipv4/unicast/unnumbered or + ../exclude-address/ipv4/unicast/address or + ../exclude-srlg/ipv4/unicast/address)"; + description + "Specify the next MPLS label in the path"; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable the explicit path"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-fault-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-fault-profile-cfg.yang new file mode 100644 index 000000000..636f95a27 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-fault-profile-cfg.yang @@ -0,0 +1,1997 @@ +module Cisco-IOS-XR-um-fault-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-fault-profile-cfg"; + prefix um-fault-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 fault-profile package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-12-15 { + description + "Updated leaf fault-type-name pattern to support additional fault types + 2021-11-26 + Initial release"; + semver:module-version "1.1.0"; + } + revision 2021-02-24 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container fault-profile { + description + "Fault profile name"; + container fault-profiles { + description + "Fault profile"; + list fault-profile { + key "fault-profile-name"; + description + "Fault profile"; + leaf fault-profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Fault profile"; + } + pattern "[a-zA-Z0-9]+"; + } + description + "Fault profile"; + } + container fault-identifier { + description + "Fault identifier"; + container subsystem { + description + "Subsystem name"; + container xr { + description + "Subsystem XR"; + list fault-type { + must "fault-tag"; + key "fault-type-name"; + description + "Fault type name"; + leaf fault-type-name { + type string { + pattern + "[HW_CEM|HW_E1|HW_GFP|HW_ETHERNET|HW_SDH_CONTROLLER|HW_SONET| + HW_OPTICS|HW_G709|HW_FIBRE_CHANNEL|HW_CPRI| + HW_OTS]+"; + } + description + "Fault type name"; + } + list fault-tag { + key "fault-tag-name"; + description + "Fault tag name"; + leaf fault-tag-name { + type xr:Cisco-ios-xr-string { + length "1..800"; + } + description + "Fault tag name. Supported tag names are: + GFP_RX_CSF_NE_30_SEC + GFP_RX_LFD_NE_30_SEC + GFP_RX_CRC_NE_30_SEC + GFP_RX_INV_TYP_NE_30_SEC + GFP_RX_BIT_ERR_NE_30_SEC + GFP_RX_CSF_NE_1_DAY + GFP_RX_LFD_NE_1_DAY + GFP_RX_CRC_NE_1_DAY + GFP_RX_INV_TYP_NE_1_DAY + GFP_RX_BIT_ERR_NE_1_DAY + GFP_RX_CSF_NE_15_MINS + GFP_RX_LFD_NE_15_MINS + GFP_RX_CRC_NE_15_MINS + GFP_RX_INV_TYP_NE_15_MINS + GFP_RX_BIT_ERR_NE_15_MINS + GFP_UPM + GFP_LOCCS + GFP_LOCS + GFP_LFD + PCS_UAS_FE_15_MINS + PCS_UAS_FE_30_SEC + PCS_UAS_NE_1_DAY + PCS_UAS_NE_15_MINS + PCS_UAS_NE_30_SEC + PCS_SES_FE_1_DAY + PCS_SES_FE_15_MINS + PCS_SES_FE_30_SEC + PCS_SES_NE_1_DAY + PCS_SES_NE_15_MINS + PCS_SES_NE_30_SEC + PCS_ES_FE_1_DAY + PCS_ES_FE_15_MINS + PCS_ES_FE_30_SEC + PCS_ES_NE_1_DAY + PCS_ES_NE_15_MINS + PCS_ES_NE_30_SEC + PCS_BAD_SH_LANE0_NE_1_DAY + PCS_BAD_SH_LANE0_NE_15_MINS + PCS_BAD_SH_LANE0_NE_30_SEC + PCS_FRM_ERR_LANE0_NE_1_DAY + PCS_FRM_ERR_LANE0_NE_15_MINS + PCS_FRM_ERR_LANE0_NE_30_SEC + PCS_BIP_LANE0_NE_1_DAY + PCS_BIP_LANE0_NE_15_MINS + PCS_BIP_LANE0_NE_30_SEC + PCS_BAD_SH_LANE39_NE_1_DAY + PCS_BAD_SH_LANE39_NE_15_MINS + PCS_BAD_SH_LANE39_NE_30_SEC + PCS_FRM_ERR_LANE39_NE_1_DAY + PCS_FRM_ERR_LANE39_NE_15_MINS + PCS_FRM_ERR_LANE39_NE_30_SEC + PCS_BIP_LANE39_NE_1_DAY + PCS_BIP_LANE39_NE_15_MINS + PCS_BIP_LANE39_NE_30_SEC + PCS_BAD_SH_LANE38_NE_1_DAY + PCS_BAD_SH_LANE38_NE_15_MINS + PCS_BAD_SH_LANE38_NE_30_SEC + PCS_FRM_ERR_LANE38_NE_1_DAY + PCS_FRM_ERR_LANE38_NE_15_MINS + PCS_FRM_ERR_LANE38_NE_30_SEC + PCS_BIP_LANE38_NE_1_DAY + PCS_BIP_LANE38_NE_15_MINS + PCS_BIP_LANE38_NE_30_SEC + PCS_BAD_SH_LANE37_NE_1_DAY + PCS_BAD_SH_LANE37_NE_15_MINS + PCS_BAD_SH_LANE37_NE_30_SEC + PCS_FRM_ERR_LANE37_NE_1_DAY + PCS_FRM_ERR_LANE37_NE_15_MINS + PCS_FRM_ERR_LANE37_NE_30_SEC + PCS_BIP_LANE37_NE_1_DAY + PCS_BIP_LANE37_NE_15_MINS + PCS_BIP_LANE37_NE_30_SEC + PCS_BAD_SH_LANE36_NE_1_DAY + PCS_BAD_SH_LANE36_NE_15_MINS + PCS_BAD_SH_LANE36_NE_30_SEC + PCS_FRM_ERR_LANE36_NE_1_DAY + PCS_FRM_ERR_LANE36_NE_15_MINS + PCS_FRM_ERR_LANE36_NE_30_SEC + PCS_BIP_LANE36_NE_1_DAY + PCS_BIP_LANE36_NE_15_MINS + PCS_BIP_LANE36_NE_30_SEC + PCS_BAD_SH_LANE35_NE_1_DAY + PCS_BAD_SH_LANE35_NE_15_MINS + PCS_BAD_SH_LANE35_NE_30_SEC + PCS_FRM_ERR_LANE35_NE_1_DAY + PCS_FRM_ERR_LANE35_NE_15_MINS + PCS_FRM_ERR_LANE35_NE_30_SEC + PCS_BIP_LANE35_NE_1_DAY + PCS_BIP_LANE35_NE_15_MINS + PCS_BIP_LANE35_NE_30_SEC + PCS_BAD_SH_LANE34_NE_1_DAY + PCS_BAD_SH_LANE34_NE_15_MINS + PCS_BAD_SH_LANE34_NE_30_SEC + PCS_FRM_ERR_LANE34_NE_1_DAY + PCS_FRM_ERR_LANE34_NE_15_MINS + PCS_FRM_ERR_LANE34_NE_30_SEC + PCS_BIP_LANE34_NE_1_DAY + PCS_BIP_LANE34_NE_15_MINS + PCS_BIP_LANE34_NE_30_SEC + PCS_BAD_SH_LANE33_NE_1_DAY + PCS_BAD_SH_LANE33_NE_15_MINS + PCS_BAD_SH_LANE33_NE_30_SEC + PCS_FRM_ERR_LANE33_NE_1_DAY + PCS_FRM_ERR_LANE33_NE_15_MINS + PCS_FRM_ERR_LANE33_NE_30_SEC + PCS_BIP_LANE33_NE_1_DAY + PCS_BIP_LANE33_NE_15_MINS + PCS_BIP_LANE33_NE_30_SEC + PCS_BAD_SH_LANE32_NE_1_DAY + PCS_BAD_SH_LANE32_NE_15_MINS + PCS_BAD_SH_LANE32_NE_30_SEC + PCS_FRM_ERR_LANE32_NE_1_DAY + PCS_FRM_ERR_LANE32_NE_15_MINS + PCS_FRM_ERR_LANE32_NE_30_SEC + PCS_BIP_LANE32_NE_1_DAY + PCS_BIP_LANE32_NE_15_MINS + PCS_BIP_LANE32_NE_30_SEC + PCS_BAD_SH_LANE31_NE_1_DAY + PCS_BAD_SH_LANE31_NE_15_MINS + PCS_BAD_SH_LANE31_NE_30_SEC + PCS_FRM_ERR_LANE31_NE_1_DAY + PCS_FRM_ERR_LANE31_NE_15_MINS + PCS_FRM_ERR_LANE31_NE_30_SEC + PCS_BIP_LANE31_NE_1_DAY + PCS_BIP_LANE31_NE_15_MINS + PCS_BIP_LANE31_NE_30_SEC + PCS_BAD_SH_LANE30_NE_1_DAY + PCS_BAD_SH_LANE30_NE_15_MINS + PCS_BAD_SH_LANE30_NE_30_SEC + PCS_FRM_ERR_LANE30_NE_1_DAY + PCS_FRM_ERR_LANE30_NE_15_MINS + PCS_FRM_ERR_LANE30_NE_30_SEC + PCS_BIP_LANE30_NE_1_DAY + PCS_BIP_LANE30_NE_15_MINS + PCS_BIP_LANE30_NE_30_SEC + PCS_BAD_SH_LANE29_NE_1_DAY + PCS_BAD_SH_LANE29_NE_15_MINS + PCS_BAD_SH_LANE29_NE_30_SEC + PCS_FRM_ERR_LANE29_NE_1_DAY + PCS_FRM_ERR_LANE29_NE_15_MINS + PCS_FRM_ERR_LANE29_NE_30_SEC + PCS_BIP_LANE29_NE_1_DAY + PCS_BIP_LANE29_NE_15_MINS + PCS_BIP_LANE29_NE_30_SEC + PCS_BAD_SH_LANE28_NE_1_DAY + PCS_BAD_SH_LANE28_NE_15_MINS + PCS_BAD_SH_LANE28_NE_30_SEC + PCS_FRM_ERR_LANE28_NE_1_DAY + PCS_FRM_ERR_LANE28_NE_15_MINS + PCS_FRM_ERR_LANE28_NE_30_SEC + PCS_BIP_LANE28_NE_1_DAY + PCS_BIP_LANE28_NE_15_MINS + PCS_BIP_LANE28_NE_30_SEC + PCS_BAD_SH_LANE27_NE_1_DAY + PCS_BAD_SH_LANE27_NE_15_MINS + PCS_BAD_SH_LANE27_NE_30_SEC + PCS_FRM_ERR_LANE27_NE_1_DAY + PCS_FRM_ERR_LANE27_NE_15_MINS + PCS_FRM_ERR_LANE27_NE_30_SEC + PCS_BIP_LANE27_NE_1_DAY + PCS_BIP_LANE27_NE_15_MINS + PCS_BIP_LANE27_NE_30_SEC + PCS_BAD_SH_LANE26_NE_1_DAY + PCS_BAD_SH_LANE26_NE_15_MINS + PCS_BAD_SH_LANE26_NE_30_SEC + PCS_FRM_ERR_LANE26_NE_1_DAY + PCS_FRM_ERR_LANE26_NE_15_MINS + PCS_FRM_ERR_LANE26_NE_30_SEC + PCS_BIP_LANE26_NE_1_DAY + PCS_BIP_LANE26_NE_15_MINS + PCS_BIP_LANE26_NE_30_SEC + PCS_BAD_SH_LANE25_NE_1_DAY + PCS_BAD_SH_LANE25_NE_15_MINS + PCS_BAD_SH_LANE25_NE_30_SEC + PCS_FRM_ERR_LANE25_NE_1_DAY + PCS_FRM_ERR_LANE25_NE_15_MINS + PCS_FRM_ERR_LANE25_NE_30_SEC + PCS_BIP_LANE25_NE_1_DAY + PCS_BIP_LANE25_NE_15_MINS + PCS_BIP_LANE25_NE_30_SEC + PCS_BAD_SH_LANE24_NE_1_DAY + PCS_BAD_SH_LANE24_NE_15_MINS + PCS_BAD_SH_LANE24_NE_30_SEC + PCS_FRM_ERR_LANE24_NE_1_DAY + PCS_FRM_ERR_LANE24_NE_15_MINS + PCS_FRM_ERR_LANE24_NE_30_SEC + PCS_BIP_LANE24_NE_1_DAY + PCS_BIP_LANE24_NE_15_MINS + PCS_BIP_LANE24_NE_30_SEC + PCS_BAD_SH_LANE23_NE_1_DAY + PCS_BAD_SH_LANE23_NE_15_MINS + PCS_BAD_SH_LANE23_NE_30_SEC + PCS_FRM_ERR_LANE23_NE_1_DAY + PCS_FRM_ERR_LANE23_NE_15_MINS + PCS_FRM_ERR_LANE23_NE_30_SEC + PCS_BIP_LANE23_NE_1_DAY + PCS_BIP_LANE23_NE_15_MINS + PCS_BIP_LANE23_NE_30_SEC + PCS_BAD_SH_LANE22_NE_1_DAY + PCS_BAD_SH_LANE22_NE_15_MINS + PCS_BAD_SH_LANE22_NE_30_SEC + PCS_FRM_ERR_LANE22_NE_1_DAY + PCS_FRM_ERR_LANE22_NE_15_MINS + PCS_FRM_ERR_LANE22_NE_30_SEC + PCS_BIP_LANE22_NE_1_DAY + PCS_BIP_LANE22_NE_15_MINS + PCS_BIP_LANE22_NE_30_SEC + PCS_BAD_SH_LANE21_NE_1_DAY + PCS_BAD_SH_LANE21_NE_15_MINS + PCS_BAD_SH_LANE21_NE_30_SEC + PCS_FRM_ERR_LANE21_NE_1_DAY + PCS_FRM_ERR_LANE21_NE_15_MINS + PCS_FRM_ERR_LANE21_NE_30_SEC + PCS_BIP_LANE21_NE_1_DAY + PCS_BIP_LANE21_NE_15_MINS + PCS_BIP_LANE21_NE_30_SEC + PCS_BAD_SH_LANE20_NE_1_DAY + PCS_BAD_SH_LANE20_NE_15_MINS + PCS_BAD_SH_LANE20_NE_30_SEC + PCS_FRM_ERR_LANE20_NE_1_DAY + PCS_FRM_ERR_LANE20_NE_15_MINS + PCS_FRM_ERR_LANE20_NE_30_SEC + PCS_BIP_LANE20_NE_1_DAY + PCS_BIP_LANE20_NE_15_MINS + PCS_BIP_LANE20_NE_30_SEC + PCS_BAD_SH_LANE19_NE_1_DAY + PCS_BAD_SH_LANE19_NE_15_MINS + PCS_BAD_SH_LANE19_NE_30_SEC + PCS_FRM_ERR_LANE19_NE_1_DAY + PCS_FRM_ERR_LANE19_NE_15_MINS + PCS_FRM_ERR_LANE19_NE_30_SEC + PCS_BIP_LANE19_NE_1_DAY + PCS_BIP_LANE19_NE_15_MINS + PCS_BIP_LANE19_NE_30_SEC + PCS_BAD_SH_LANE18_NE_1_DAY + PCS_BAD_SH_LANE18_NE_15_MINS + PCS_BAD_SH_LANE18_NE_30_SEC + PCS_FRM_ERR_LANE18_NE_1_DAY + PCS_FRM_ERR_LANE18_NE_15_MINS + PCS_FRM_ERR_LANE18_NE_30_SEC + PCS_BIP_LANE18_NE_1_DAY + PCS_BIP_LANE18_NE_15_MINS + PCS_BIP_LANE18_NE_30_SEC + PCS_BAD_SH_LANE17_NE_1_DAY + PCS_BAD_SH_LANE17_NE_15_MINS + PCS_BAD_SH_LANE17_NE_30_SEC + PCS_FRM_ERR_LANE17_NE_1_DAY + PCS_FRM_ERR_LANE17_NE_15_MINS + PCS_FRM_ERR_LANE17_NE_30_SEC + PCS_BIP_LANE17_NE_1_DAY + PCS_BIP_LANE17_NE_15_MINS + PCS_BIP_LANE17_NE_30_SEC + PCS_BAD_SH_LANE16_NE_1_DAY + PCS_BAD_SH_LANE16_NE_15_MINS + PCS_BAD_SH_LANE16_NE_30_SEC + PCS_FRM_ERR_LANE16_NE_1_DAY + PCS_FRM_ERR_LANE16_NE_15_MINS + PCS_FRM_ERR_LANE16_NE_30_SEC + PCS_BIP_LANE16_NE_1_DAY + PCS_BIP_LANE16_NE_15_MINS + PCS_BIP_LANE16_NE_30_SEC + PCS_BAD_SH_LANE15_NE_1_DAY + PCS_BAD_SH_LANE15_NE_15_MINS + PCS_BAD_SH_LANE15_NE_30_SEC + PCS_FRM_ERR_LANE15_NE_1_DAY + PCS_FRM_ERR_LANE15_NE_15_MINS + PCS_FRM_ERR_LANE15_NE_30_SEC + PCS_BIP_LANE15_NE_1_DAY + PCS_BIP_LANE15_NE_15_MINS + PCS_BIP_LANE15_NE_30_SEC + PCS_BAD_SH_LANE14_NE_1_DAY + PCS_BAD_SH_LANE14_NE_15_MINS + PCS_BAD_SH_LANE14_NE_30_SEC + PCS_FRM_ERR_LANE14_NE_1_DAY + PCS_FRM_ERR_LANE14_NE_15_MINS + PCS_FRM_ERR_LANE14_NE_30_SEC + PCS_BIP_LANE14_NE_1_DAY + PCS_BIP_LANE14_NE_15_MINS + PCS_BIP_LANE14_NE_30_SEC + PCS_BAD_SH_LANE13_NE_1_DAY + PCS_BAD_SH_LANE13_NE_15_MINS + PCS_BAD_SH_LANE13_NE_30_SEC + PCS_FRM_ERR_LANE13_NE_1_DAY + PCS_FRM_ERR_LANE13_NE_15_MINS + PCS_FRM_ERR_LANE13_NE_30_SEC + PCS_BIP_LANE13_NE_1_DAY + PCS_BIP_LANE13_NE_15_MINS + PCS_BIP_LANE13_NE_30_SEC + PCS_BAD_SH_LANE12_NE_1_DAY + PCS_BAD_SH_LANE12_NE_15_MINS + PCS_BAD_SH_LANE12_NE_30_SEC + PCS_FRM_ERR_LANE12_NE_1_DAY + PCS_FRM_ERR_LANE12_NE_15_MINS + PCS_FRM_ERR_LANE12_NE_30_SEC + PCS_BIP_LANE12_NE_1_DAY + PCS_BIP_LANE12_NE_15_MINS + PCS_BIP_LANE12_NE_30_SEC + PCS_BAD_SH_LANE11_NE_1_DAY + PCS_BAD_SH_LANE11_NE_15_MINS + PCS_BAD_SH_LANE11_NE_30_SEC + PCS_FRM_ERR_LANE11_NE_1_DAY + PCS_FRM_ERR_LANE11_NE_15_MINS + PCS_FRM_ERR_LANE11_NE_30_SEC + PCS_BIP_LANE11_NE_1_DAY + PCS_BIP_LANE11_NE_15_MINS + PCS_BIP_LANE11_NE_30_SEC + PCS_BAD_SH_LANE10_NE_1_DAY + PCS_BAD_SH_LANE10_NE_15_MINS + PCS_BAD_SH_LANE10_NE_30_SEC + PCS_FRM_ERR_LANE10_NE_1_DAY + PCS_FRM_ERR_LANE10_NE_15_MINS + PCS_FRM_ERR_LANE10_NE_30_SEC + PCS_BIP_LANE10_NE_1_DAY + PCS_BIP_LANE10_NE_15_MINS + PCS_BIP_LANE10_NE_30_SEC + PCS_BAD_SH_LANE9_NE_1_DAY + PCS_BAD_SH_LANE9_NE_15_MINS + PCS_BAD_SH_LANE9_NE_30_SEC + PCS_FRM_ERR_LANE9_NE_1_DAY + PCS_FRM_ERR_LANE9_NE_15_MINS + PCS_FRM_ERR_LANE9_NE_30_SEC + PCS_BIP_LANE9_NE_1_DAY + PCS_BIP_LANE9_NE_15_MINS + PCS_BIP_LANE9_NE_30_SEC + PCS_BAD_SH_LANE8_NE_1_DAY + PCS_BAD_SH_LANE8_NE_15_MINS + PCS_BAD_SH_LANE8_NE_30_SEC + PCS_FRM_ERR_LANE8_NE_1_DAY + PCS_FRM_ERR_LANE8_NE_15_MINS + PCS_FRM_ERR_LANE8_NE_30_SEC + PCS_BIP_LANE8_NE_1_DAY + PCS_BIP_LANE8_NE_15_MINS + PCS_BIP_LANE8_NE_30_SEC + PCS_BAD_SH_LANE7_NE_1_DAY + PCS_BAD_SH_LANE7_NE_15_MINS + PCS_BAD_SH_LANE7_NE_30_SEC + PCS_FRM_ERR_LANE7_NE_1_DAY + PCS_FRM_ERR_LANE7_NE_15_MINS + PCS_FRM_ERR_LANE7_NE_30_SEC + PCS_BIP_LANE7_NE_1_DAY + PCS_BIP_LANE7_NE_15_MINS + PCS_BIP_LANE7_NE_30_SEC + PCS_BAD_SH_LANE6_NE_1_DAY + PCS_BAD_SH_LANE6_NE_15_MINS + PCS_BAD_SH_LANE6_NE_30_SEC + PCS_FRM_ERR_LANE6_NE_1_DAY + PCS_FRM_ERR_LANE6_NE_15_MINS + PCS_FRM_ERR_LANE6_NE_30_SEC + PCS_BIP_LANE6_NE_1_DAY + PCS_BIP_LANE6_NE_15_MINS + PCS_BIP_LANE6_NE_30_SEC + PCS_BAD_SH_LANE5_NE_1_DAY + PCS_BAD_SH_LANE5_NE_15_MINS + PCS_BAD_SH_LANE5_NE_30_SEC + PCS_FRM_ERR_LANE5_NE_1_DAY + PCS_FRM_ERR_LANE5_NE_15_MINS + PCS_FRM_ERR_LANE5_NE_30_SEC + PCS_BIP_LANE5_NE_1_DAY + PCS_BIP_LANE5_NE_15_MINS + PCS_BIP_LANE5_NE_30_SEC + PCS_BAD_SH_LANE4_NE_1_DAY + PCS_BAD_SH_LANE4_NE_15_MINS + PCS_BAD_SH_LANE4_NE_30_SEC + PCS_FRM_ERR_LANE4_NE_1_DAY + PCS_FRM_ERR_LANE4_NE_15_MINS + PCS_FRM_ERR_LANE4_NE_30_SEC + PCS_BIP_LANE4_NE_1_DAY + PCS_BIP_LANE4_NE_15_MINS + PCS_BIP_LANE4_NE_30_SEC + PCS_BAD_SH_LANE3_NE_1_DAY + PCS_BAD_SH_LANE3_NE_15_MINS + PCS_BAD_SH_LANE3_NE_30_SEC + PCS_FRM_ERR_LANE3_NE_1_DAY + PCS_FRM_ERR_LANE3_NE_15_MINS + PCS_FRM_ERR_LANE3_NE_30_SEC + PCS_BIP_LANE3_NE_1_DAY + PCS_BIP_LANE3_NE_15_MINS + PCS_BIP_LANE3_NE_30_SEC + PCS_BAD_SH_LANE2_NE_1_DAY + PCS_BAD_SH_LANE2_NE_15_MINS + PCS_BAD_SH_LANE2_NE_30_SEC + PCS_FRM_ERR_LANE2_NE_1_DAY + PCS_FRM_ERR_LANE2_NE_15_MINS + PCS_FRM_ERR_LANE2_NE_30_SEC + PCS_BIP_LANE2_NE_1_DAY + PCS_BIP_LANE2_NE_15_MINS + PCS_BIP_LANE2_NE_30_SEC + PCS_BAD_SH_LANE1_NE_1_DAY + PCS_BAD_SH_LANE1_NE_15_MINS + PCS_BAD_SH_LANE1_NE_30_SEC + PCS_FRM_ERR_LANE1_NE_1_DAY + PCS_FRM_ERR_LANE1_NE_15_MINS + PCS_FRM_ERR_LANE1_NE_30_SEC + PCS_BIP_LANE1_NE_1_DAY + PCS_BIP_LANE1_NE_15_MINS + PCS_BIP_LANE1_NE_30_SEC + TX_UTILIZATION_NE_1_DAY + TX_UTILIZATION_NE_15_MINS + TX_UTILIZATION_NE_30_SEC + RX_UTILIZATION_NE_1_DAY + RX_UTILIZATION_NE_15_MINS + RX_UTILIZATION_NE_30_SEC + TX_BAD_FCS_NE_30_SEC + TX_JABBER_NE_30_SEC + TX_FRAGMENTS_NE_30_SEC + TX_OVERSIZED_PKT_NE_30_SEC + TX_UNDERSIZED_PKT_NE_30_SEC + OUT_PKTS_1024_1518_OCTETS_NE_30_SEC + OUT_PKTS_512_1023_OCTETS_NE_30_SEC + OUT_PKTS_256_511_OCTETS_NE_30_SEC + OUT_PKTS_128_255_OCTETS_NE_30_SEC + OUT_PKTS_65_127OCTETS_NE_30_SEC + OUT_PKT_64_OCTET_NE_30_SEC + IN_PKTS_1024_1518_OCTETS_NE_30_SEC + IN_PKTS_512_1023_OCTETS_NE_30_SEC + IN_PKTS_256_511_OCTETS_NE_30_SEC + IN_PKTS_128_255_OCTETS_NE_30_SEC + IN_PKTS_65_127OCTETS_NE_30_SEC + IN_PKT_64_OCTET_NE_30_SEC + IN_ERROR_OTHER_NE_30_SEC + IN_ERROR_FRAGMENTS_NE_30_SEC + IN_ERROR_JABBERS_NE_30_SEC + IN_ERROR_RUNT_NE_30_SEC + IN_ERROR_GIANT_NE_30_SEC + OUT_ERROR_OTHER_NE_30_SEC + OUT_DROP_OTHER_NE_30_SEC + OUT_DROP_ABORT_NE_30_SEC + OUT_DROP_UNDERRUN_NE_30_SEC + OUT_GOOD_PKTS_NE_30_SEC + OUT_PKTS_1519_MAX_OCTETS_NE_30_SEC + OUT_PAUSE_FRAMES_NE_30_SEC + OUT_802_1Q_FRAMES_NE_30_SEC + OUT_GOOD_BYTES_NE_30_SEC + TX_BAD_FCS_NE_15_MINS + TX_JABBER_NE_15_MINS + TX_FRAGMENTS_NE_15_MINS + TX_OVERSIZED_PKT_NE_15_MINS + TX_UNDERSIZED_PKT_NE_15_MINS + OUT_PKTS_1024_1518_OCTETS_NE_15_MINS + OUT_PKTS_512_1023_OCTETS_NE_15_MINS + OUT_PKTS_256_511_OCTETS_NE_15_MINS + OUT_PKTS_128_255_OCTETS_NE_15_MINS + OUT_PKTS_65_127OCTETS_NE_15_MINS + OUT_PKT_64_OCTET_NE_15_MINS + IN_PKTS_1024_1518_OCTETS_NE_15_MINS + IN_PKTS_512_1023_OCTETS_NE_15_MINS + IN_PKTS_256_511_OCTETS_NE_15_MINS + IN_PKTS_128_255_OCTETS_NE_15_MINS + IN_PKTS_65_127OCTETS_NE_15_MINS + IN_PKT_64_OCTET_NE_15_MINS + IN_ERROR_OTHER_NE_15_MINS + IN_ERROR_FRAGMENTS_NE_15_MINS + IN_ERROR_JABBERS_NE_15_MINS + IN_ERROR_RUNT_NE_15_MINS + IN_ERROR_GIANT_NE_15_MINS + OUT_ERROR_OTHER_NE_15_MINS + OUT_DROP_OTHER_NE_15_MINS + OUT_DROP_ABORT_NE_15_MINS + OUT_DROP_UNDERRUN_NE_15_MINS + OUT_GOOD_PKTS_NE_15_MINS + OUT_PKTS_1519_MAX_OCTETS_NE_15_MINS + OUT_PAUSE_FRAMES_NE_15_MINS + OUT_802_1Q_FRAMES_NE_15_MINS + OUT_GOOD_BYTES_NE_15_MINS + TX_BAD_FCS_NE_1_DAY + TX_JABBER_NE_1_DAY + TX_FRAGMENTS_NE_1_DAY + TX_OVERSIZED_PKT_NE_1_DAY + TX_UNDERSIZED_PKT_NE_1_DAY + OUT_PKTS_1024_1518_OCTETS_NE_1_DAY + OUT_PKTS_512_1023_OCTETS_NE_1_DAY + OUT_PKTS_256_511_OCTETS_NE_1_DAY + OUT_PKTS_128_255_OCTETS_NE_1_DAY + OUT_PKTS_65_127OCTETS_NE_1_DAY + OUT_PKT_64_OCTET_NE_1_DAY + IN_PKTS_1024_1518_OCTETS_NE_1_DAY + IN_PKTS_512_1023_OCTETS_NE_1_DAY + IN_PKTS_256_511_OCTETS_NE_1_DAY + IN_PKTS_128_255_OCTETS_NE_1_DAY + IN_PKTS_65_127OCTETS_NE_1_DAY + IN_PKT_64_OCTET_NE_1_DAY + IN_ERROR_OTHER_NE_1_DAY + IN_ERROR_FRAGMENTS_NE_1_DAY + IN_ERROR_JABBERS_NE_1_DAY + IN_ERROR_RUNT_NE_1_DAY + IN_ERROR_GIANT_NE_1_DAY + OUT_ERROR_OTHER_NE_1_DAY + OUT_DROP_OTHER_NE_1_DAY + OUT_DROP_ABORT_NE_1_DAY + OUT_DROP_UNDERRUN_NE_1_DAY + OUT_GOOD_PKTS_NE_1_DAY + OUT_PKTS_1519_MAX_OCTETS_NE_1_DAY + OUT_PAUSE_FRAMES_NE_1_DAY + OUT_802_1Q_FRAMES_NE_1_DAY + OUT_GOOD_BYTES_NE_1_DAY + IN_ERROR_SYMBOL_NE_30_SEC + IN_ERROR_COLLISIONS_NE_30_SEC + IN_MIB_CRC_NE_30_SEC + IN_MIB_JABBER_NE_30_SEC + IN_MIB_GIANT_NE_30_SEC + IN_DROP_OTHER_NE_30_SEC + IN_DROP_INVALID_ENCAP_NE_30_SEC + IN_DROP_INVALID_DMAC_NE_30_SEC + IN_DROP_INVALID_VLAN_NE_30_SEC + IN_DROP_ABORT_NE_30_SEC + IN_DROP_OVERRUN_NE_30_SEC + IN_GOOD_PKTS_NE_30_SEC + IN_PKTS_1519_MAX_OCTETS_NE_30_SEC + IN_802_1Q_FRAMES_NE_30_SEC + IN_GOOD_BYTES_NE_30_SEC + IN_PAUSE_FRAME_NE_30_SEC + IN_ERROR_SYMBOL_NE_15_MINS + IN_ERROR_COLLISIONS_NE_15_MINS + IN_MIB_CRC_NE_15_MINS + IN_MIB_JABBER_NE_15_MINS + IN_MIB_GIANT_NE_15_MINS + IN_DROP_OTHER_NE_15_MINS + IN_DROP_INVALID_ENCAP_NE_15_MINS + IN_DROP_INVALID_DMAC_NE_15_MINS + IN_DROP_INVALID_VLAN_NE_15_MINS + IN_DROP_ABORT_NE_15_MINS + IN_DROP_OVERRUN_NE_15_MINS + IN_GOOD_PKTS_NE_15_MINS + IN_PKTS_1519_MAX_OCTETS_NE_15_MINS + IN_802_1Q_FRAMES_NE_15_MINS + IN_GOOD_BYTES_NE_15_MINS + IN_PAUSE_FRAME_NE_15_MINS + IN_ERROR_SYMBOL_NE_1_DAY + IN_ERROR_COLLISIONS_NE_1_DAY + IN_MIB_CRC_NE_1_DAY + IN_MIB_JABBER_NE_1_DAY + IN_MIB_GIANT_NE_1_DAY + IN_DROP_OTHER_NE_1_DAY + IN_DROP_INVALID_ENCAP_NE_1_DAY + IN_DROP_INVALID_DMAC_NE_1_DAY + IN_DROP_INVALID_VLAN_NE_1_DAY + IN_DROP_ABORT_NE_1_DAY + IN_DROP_OVERRUN_NE_1_DAY + IN_GOOD_PKTS_NE_1_DAY + IN_PKTS_1519_MAX_OCTETS_NE_1_DAY + IN_802_1Q_FRAMES_NE_1_DAY + IN_GOOD_BYTES_NE_1_DAY + IN_PAUSE_FRAME_NE_1_DAY + OUT_BCAST_PKTS_NE_30_SEC + Tx_PKTS_NE_30_SEC + IFIN_ERRORS_NE_30_SEC + IFIN_OCTETS_NE_30_SEC + ETHER_STAT_MULTICAST_PKT_NE_30_SEC + ETHER_STAT_BROADCAST_PKT_NE_30_SEC + ETHER_STAT_UNDERSIZED_PKT_NE_30_SEC + OUT_OCTETS_NE_30_SEC + LONG_FRAME_NE_30_SEC + FCS_ERR_NE_30_SEC + OVERSIZE_PKTS_NE_30_SEC + STATS_OCTETS_NE_30_SEC + STAT_PKTS_NE_30_SEC + RX_PKTS_NE_30_SEC + JABBERS_STATS_NE_30_SEC + PKT_65_127_OCTETS_NE_30_SEC + PKT_64_OCTETS_NE_30_SEC + PKT_512_1023_OCTETS_NE_30_SEC + PKT_256_511_OCTETS_NE_30_SEC + PKT_128_255_OCTETS_NE_30_SEC + PKT_1024_1518_OCTETS_NE_30_SEC + OUT_UCAST_PKTS_NE_30_SEC + OUT_MCAST_PKTS_NE_30_SEC + IN_UCAST_PKTS_NE_30_SEC + IN_MCAST_PKTS_NE_30_SEC + IN_BCAST_PKTS_NE_30_SEC + OUT_BCAST_PKTS_NE_1_DAY + OUT_BCAST_PKTS_NE_15_MINS + Tx_PKTS_NE_1_DAY + Tx_PKTS_NE_15_MINS + IFIN_ERRORS_NE_1_DAY + IFIN_ERRORS_NE_15_MINS + IFIN_OCTETS_NE_1_DAY + IFIN_OCTETS_NE_15_MINS + ETHER_STAT_MULTICAST_PKT_NE_1_DAY + ETHER_STAT_MULTICAST_PKT_NE_15_MINS + ETHER_STAT_BROADCAST_PKT_NE_1_DAY + ETHER_STAT_BROADCAST_PKT_NE_15_MINS + ETHER_STAT_UNDERSIZED_PKT_NE_1_DAY + ETHER_STAT_UNDERSIZED_PKT_NE_15_MINS + OUT_OCTETS_NE_15_MINS + OUT_OCTETS_NE_1_DAY + LONG_FRAME_NE_1_DAY + LONG_FRAME_NE_15_MINS + FCS_ERR_NE_1_DAY + FCS_ERR_NE_15_MINS + OVERSIZE_PKTS_NE_1_DAY + OVERSIZE_PKTS_NE_15_MINS + STATS_OCTETS_NE_1_DAY + STATS_OCTETS_NE_15_MINS + STAT_PKTS_NE_1_DAY + STAT_PKTS_NE_15_MINS + RX_PKTS_NE_1_DAY + RX_PKTS_NE_15_MINS + JABBERS_STATS_NE_1_DAY + JABBERS_STATS_NE_15_MINS + PKT_65_127_OCTETS_NE_1_DAY + PKT_65_127_OCTETS_NE_15_MINS + PKT_64_OCTETS_NE_1_DAY + PKT_64_OCTETS_NE_15_MINS + PKT_512_1023_OCTETS_NE_1_DAY + PKT_512_1023_OCTETS_NE_15_MINS + PKT_256_511_OCTETS_NE_1_DAY + PKT_256_511_OCTETS_NE_15_MINS + PKT_128_255_OCTETS_NE_1_DAY + PKT_128_255_OCTETS_NE_15_MINS + PKT_1024_1518_OCTETS_NE_1_DAY + PKT_1024_1518_OCTETS_NE_15_MINS + OUT_UCAST_PKTS_NE_1_DAY + OUT_UCAST_PKTS_NE_15_MINS + OUT_MCAST_PKTS_NE_1_DAY + OUT_MCAST_PKTS_NE_15_MINS + IN_UCAST_PKTS_NE_1_DAY + IN_UCAST_PKTS_NE_15_MINS + IN_MCAST_PKTS_NE_1_DAY + IN_MCAST_PKTS_NE_15_MINS + IN_BCAST_PKTS_NE_1_DAY + IN_BCAST_PKTS_NE_15_MINS + ETHER_AS_MT + ETHER_REMOTE_DEG_SER + ETHER_LOCAL_DEG_SER + ETHER_DEG_SER + ETHER_HI_SER + ETHER_SYNCLOSS + ETHER_SIGLOSS + ETHER_RF + ETHER_LF + ETHER_SQUELCHED + ETHER_HIBER + STM_UAS_L_NE_1_DAY + STM_UAS_L_NE_15_MINS + STM_BBER_L_NE_1_DAY + STM_BBER_L_NE_15_MINS + STM_BBE_L_NE_1_DAY + STM_BBE_L_NE_15_MINS + STM_SESR_L_NE_1_DAY + STM_SESR_L_NE_15_MINS + STM_SES_L_NE_1_DAY + STM_SES_L_NE_15_MINS + STM_ESR_L_NE_1_DAY + STM_ESR_L_NE_15_MINS + STM_ES_L_NE_1_DAY + STM_ES_L_NE_15_MINS + STM_EB_L_NE_1_DAY + STM_EB_L_NE_15_MINS + STM_UAS_L_FE_1_DAY + STM_UAS_L_FE_15_MINS + STM_BBER_L_FE_1_DAY + STM_BBER_L_FE_15_MINS + STM_BBE_L_FE_1_DAY + STM_BBE_L_FE_15_MINS + STM_SESR_L_FE_1_DAY + STM_SESR_L_FE_15_MINS + STM_SES_L_FE_1_DAY + STM_SES_L_FE_15_MINS + STM_ESR_L_FE_1_DAY + STM_ESR_L_FE_15_MINS + STM_ES_L_FE_1_DAY + STM_ES_L_FE_15_MINS + STM_EB_L_FE_1_DAY + STM_EB_L_FE_15_MINS + STM_UAS_S_NE_1_DAY + STM_UAS_S_NE_15_MINS + STM_BBE_S_NE_1_DAY + STM_BBE_S_NE_15_MINS + STM_SESR_S_NE_1_DAY + STM_SESR_S_NE_15_MINS + STM_ESR_S_NE_1_DAY + STM_ESR_S_NE_15_MINS + STM_ES_S_NE_1_DAY + STM_ES_S_NE_15_MINS + STM_SES_S_NE_1_DAY + STM_SES_S_NE_15_MINS + STM_EB_S_NE_1_DAY + STM_EB_S_NE_15_MINS + STM_BBER_S_NE_1_DAY + STM_BBER_S_NE_15_MINS + HO_VC_UASP_NE_1_DAY + HO_VC_UASP_NE_15_MINS + HO_VC_BBERP_NE_1_DAY + HO_VC_BBERP_NE_15_MINS + HO_VC_BBEP_NE_1_DAY + HO_VC_BBEP_NE_15_MINS + HO_VC_SESP_NE_1_DAY + HO_VC_SESP_NE_15_MINS + HO_VC_ESRP_NE_1_DAY + HO_VC_ESRP_NE_15_MINS + HO_VC_ESP_NE_1_DAY + HO_VC_SESRP_NE_1_DAY + HO_VC_SESRP_NE_15_MINS + HO_VC_ESP_NE_15_MINS + HO_VC_EBP_NE_1_DAY + HO_VC_EBP_NE_15_MINS + SDH_HO_SQUELCHED + SDH_SQUELCHED + SDH_HO_AS_MT + SDH_AS_MT + SDH_TIM_RS + SDH_MS_DEG + SDH_MS_EXC + SDH_TIM_HP + SDH_RDI_HP + SDH_PLM_HP + SDH_UNEQ_HP + SDH_AIS_AU + SDH_LOP_AU + SDH_RDI_MS + SDH_AIS_MS + SDH_LOF_RS + SDH_LOS_RS + OCN_UAS_L_FE_1_DAY + OCN_UAS_L_FE_15_MINS + OCN_BBE_L_FE_1_DAY + OCN_BBE_L_FE_15_MINS + OCN_SES_L_FE_1_DAY + OCN_SES_L_FE_15_MINS + OCN_ES_L_FE_1_DAY + OCN_ES_L_FE_15_MINS + OCN_CV_L_FE_1_DAY + OCN_CV_L_FE_15_MINS + OCN_FC_L_FE_1_DAY + OCN_FC_L_FE_15_MINS + OCN_FC_L_NE_1_DAY + OCN_FC_L_NE_15_MINS + OCN_UAS_L_NE_1_DAY + OCN_UAS_L_NE_15_MINS + OCN_BBE_L_NE_1_DAY + OCN_BBE_L_NE_15_MINS + OCN_SES_L_NE_1_DAY + OCN_SES_L_NE_15_MINS + OCN_ES_L_NE_1_DAY + OCN_ES_L_NE_15_MINS + OCN_CV_L_NE_1_DAY + OCN_CV_L_NE_15_MINS + OCN_SES_S_NE_1_DAY + OCN_SES_S_NE_15_MINS + OCN_ES_S_NE_1_DAY + OCN_ES_S_NE_15_MINS + OCN_CV_S_NE_1_DAY + OCN_CV_S_NE_15_MINS + OCN_SEFS_S_NE_1_DAY + OCN_UAS_S_NE_1_DAY + OCN_UAS_S_NE_15_MINS + OCN_SEFS_S_NE_15_MINS + STS_UASP_FE_15_MINS + STS_UASP_NE_15_MINS + STS_UASP_FE_1_DAY + STS_UASP_NE_1_DAY + STS_SESP_FE_15_MINS + STS_SESP_NE_15_MINS + STS_SESP_FE_1_DAY + STS_SESP_NE_1_DAY + STS_ESP_FE_15_MINS + STS_ESP_NE_15_MINS + STS_ESP_FE_1_DAY + STS_ESP_NE_1_DAY + STS_CVP_FE_15_MINS + STS_CVP_NE_15_MINS + STS_CVP_FE_1_DAY + STS_CVP_NE_1_DAY + SONET_PATH_SQUELCHED + SONET_PATH_AS_MT + SONET_TIM_S + SONET_SD_BER + SONET_SF_BER + SONET_TIM_P + SONET_RDI_P + SONET_PLM_P + SONET_UNEQ_P + SONET_AIS_P + SONET_LOP_P + SONET_RDI_L + SONET_SQUELCHED + SONET_AS_MT + SONET_AIS_L + SONET_LOF_S + SONET_LOS_S + AMPLI_GAIN_TILT_MAX_NE_1_DAY + AMPLI_GAIN_TILT_MIN_NE_1_DAY + AMPLI_GAIN_MAX_NE_1_DAY + AMPLI_GAIN_MIN_NE_1_DAY + LOW_FREQ_OFF_MAX_NE_1_DAY + LOW_FREQ_OFF_MIN_NE_1_DAY + RX_SIG_POW_MAX_NE_1_DAY + RX_SIG_POW_MIN_NE_1_DAY + AMPLI_GAIN_TILT_MAX_NE_15_MINS + AMPLI_GAIN_TILT_MIN_NE_15_MINS + AMPLI_GAIN_MAX_NE_15_MINS + AMPLI_GAIN_MIN_NE_15_MINS + LOW_FREQ_OFF_MAX_NE_15_MINS + LOW_FREQ_OFF_MIN_NE_15_MINS + RX_SIG_POW_MAX_NE_15_MINS + RX_SIG_POW_MIN_NE_15_MINS + AMPLI_GAIN_TILT_MAX_NE_30_SEC + AMPLI_GAIN_TILT_MIN_NE_30_SEC + AMPLI_GAIN_MAX_NE_30_SEC + AMPLI_GAIN_MIN_NE_30_SEC + LOW_FREQ_OFF_MAX_NE_30_SEC + LOW_FREQ_OFF_MIN_NE_30_SEC + RX_SIG_POW_MAX_NE_30_SEC + RX_SIG_POW_MIN_NE_30_SEC + DGD_MIN_NE_30_SEC + DGD_MAX_NE_30_SEC + LASER_BIAS_PC_MAX_NE_30_SEC + LASER_BIAS_MAX_NE_30_SEC + RX_PWR_MAX_NE_30_SEC + TX_PWR_MAX_NE_30_SEC + PMD_MIN_NE_30_SEC + CD_MIN_NE_30_SEC + PN_MIN_NE_30_SEC + PCR_MIN_NE_30_SEC + PDL_MIN_NE_30_SEC + OSNR_MIN_NE_30_SEC + LASER_BIAS_PC_MAX_LANE10_NE_30_SEC + LASER_BIAS_PC_MAX_LANE9_NE_30_SEC + LASER_BIAS_PC_MAX_LANE8_NE_30_SEC + LASER_BIAS_PC_MAX_LANE7_NE_30_SEC + LASER_BIAS_PC_MAX_LANE6_NE_30_SEC + LASER_BIAS_PC_MAX_LANE5_NE_30_SEC + LASER_BIAS_PC_MAX_LANE4_NE_30_SEC + LASER_BIAS_PC_MAX_LANE3_NE_30_SEC + LASER_BIAS_PC_MAX_LANE2_NE_30_SEC + LASER_BIAS_PC_MAX_LANE1_NE_30_SEC + LASER_BIAS_PC_MIN_LANE10_NE_30_SEC + LASER_BIAS_PC_MIN_LANE9_NE_30_SEC + LASER_BIAS_PC_MIN_LANE8_NE_30_SEC + LASER_BIAS_PC_MIN_LANE7_NE_30_SEC + LASER_BIAS_PC_MIN_LANE6_NE_30_SEC + LASER_BIAS_PC_MIN_LANE5_NE_30_SEC + LASER_BIAS_PC_MIN_LANE4_NE_30_SEC + LASER_BIAS_PC_MIN_LANE3_NE_30_SEC + LASER_BIAS_PC_MIN_LANE2_NE_30_SEC + LASER_BIAS_PC_MIN_LANE1_NE_30_SEC + LASER_BIAS_MAX_LANE10_NE_30_SEC + LASER_BIAS_MAX_LANE9_NE_30_SEC + LASER_BIAS_MAX_LANE8_NE_30_SEC + LASER_BIAS_MAX_LANE7_NE_30_SEC + LASER_BIAS_MAX_LANE6_NE_30_SEC + LASER_BIAS_MAX_LANE5_NE_30_SEC + LASER_BIAS_MAX_LANE4_NE_30_SEC + LASER_BIAS_MAX_LANE3_NE_30_SEC + LASER_BIAS_MAX_LANE2_NE_30_SEC + LASER_BIAS_MAX_LANE1_NE_30_SEC + LASER_BIAS_MIN_LANE10_NE_30_SEC + LASER_BIAS_MIN_LANE9_NE_30_SEC + LASER_BIAS_MIN_LANE8_NE_30_SEC + LASER_BIAS_MIN_LANE7_NE_30_SEC + LASER_BIAS_MIN_LANE6_NE_30_SEC + LASER_BIAS_MIN_LANE5_NE_30_SEC + LASER_BIAS_MIN_LANE4_NE_30_SEC + LASER_BIAS_MIN_LANE3_NE_30_SEC + LASER_BIAS_MIN_LANE2_NE_30_SEC + LASER_BIAS_MIN_LANE1_NE_30_SEC + RX_PWR_MAX_LANE10_NE_30_SEC + RX_PWR_MAX_LANE9_NE_30_SEC + RX_PWR_MAX_LANE8_NE_30_SEC + RX_PWR_MAX_LANE7_NE_30_SEC + RX_PWR_MAX_LANE6_NE_30_SEC + RX_PWR_MAX_LANE5_NE_30_SEC + RX_PWR_MAX_LANE4_NE_30_SEC + RX_PWR_MAX_LANE3_NE_30_SEC + RX_PWR_MAX_LANE2_NE_30_SEC + RX_PWR_MAX_LANE1_NE_30_SEC + RX_PWR_MIN_LANE10_NE_30_SEC + RX_PWR_MIN_LANE9_NE_30_SEC + RX_PWR_MIN_LANE8_NE_30_SEC + RX_PWR_MIN_LANE7_NE_30_SEC + RX_PWR_MIN_LANE6_NE_30_SEC + RX_PWR_MIN_LANE5_NE_30_SEC + RX_PWR_MIN_LANE4_NE_30_SEC + RX_PWR_MIN_LANE3_NE_30_SEC + RX_PWR_MIN_LANE2_NE_30_SEC + RX_PWR_MIN_LANE1_NE_30_SEC + TX_PWR_MAX_LANE10_NE_30_SEC + TX_PWR_MAX_LANE9_NE_30_SEC + TX_PWR_MAX_LANE8_NE_30_SEC + TX_PWR_MAX_LANE7_NE_30_SEC + TX_PWR_MAX_LANE6_NE_30_SEC + TX_PWR_MAX_LANE5_NE_30_SEC + TX_PWR_MAX_LANE4_NE_30_SEC + TX_PWR_MAX_LANE3_NE_30_SEC + TX_PWR_MAX_LANE2_NE_30_SEC + TX_PWR_MAX_LANE1_NE_30_SEC + TX_PWR_MIN_LANE10_NE_30_SEC + TX_PWR_MIN_LANE9_NE_30_SEC + TX_PWR_MIN_LANE8_NE_30_SEC + TX_PWR_MIN_LANE7_NE_30_SEC + TX_PWR_MIN_LANE6_NE_30_SEC + TX_PWR_MIN_LANE5_NE_30_SEC + TX_PWR_MIN_LANE4_NE_30_SEC + TX_PWR_MIN_LANE3_NE_30_SEC + TX_PWR_MIN_LANE2_NE_30_SEC + TX_PWR_MIN_LANE1_NE_30_SEC + LASER_BIAS_PC_MIN_NE_30_SEC + LASER_BIAS_MIN_NE_30_SEC + RX_PWR_MIN_NE_30_SEC + TX_PWR_MIN_NE_30_SEC + PMD_MAX_NE_30_SEC + CD_MAX_NE_30_SEC + PN_MAX_NE_30_SEC + PCR_MAX_NE_30_SEC + PDL_MAX_NE_30_SEC + OSNR_MAX_NE_30_SEC + DGD_MIN_NE_1_DAY + DGD_MIN_NE_15_MINS + DGD_MAX_NE_1_DAY + DGD_MAX_NE_15_MINS + LASER_BIAS_PC_MAX_NE_1_DAY + LASER_BIAS_PC_MAX_NE_15_MINS + LASER_BIAS_MAX_NE_1_DAY + LASER_BIAS_MAX_NE_15_MINS + RX_PWR_MAX_NE_1_DAY + RX_PWR_MAX_NE_15_MINS + TX_PWR_MAX_NE_1_DAY + TX_PWR_MAX_NE_15_MINS + PMD_MIN_NE_1_DAY + PMD_MIN_NE_15_MINS + CD_MIN_NE_1_DAY + CD_MIN_NE_15_MINS + PN_MIN_NE_1_DAY + PN_MIN_NE_15_MINS + PCR_MIN_NE_1_DAY + PCR_MIN_NE_15_MINS + SOPMD_MIN_NE_1_DAY + SOPMD_MIN_NE_15_MINS + PDL_MIN_NE_1_DAY + PDL_MIN_NE_15_MINS + OSNR_MIN_NE_1_DAY + OSNR_MIN_NE_15_MINS + LASER_BIAS_PC_MAX_LANE10_NE_1_DAY + LASER_BIAS_PC_MAX_LANE10_NE_15_MINS + LASER_BIAS_PC_MAX_LANE9_NE_1_DAY + LASER_BIAS_PC_MAX_LANE9_NE_15_MINS + LASER_BIAS_PC_MAX_LANE8_NE_1_DAY + LASER_BIAS_PC_MAX_LANE8_NE_15_MINS + LASER_BIAS_PC_MAX_LANE7_NE_1_DAY + LASER_BIAS_PC_MAX_LANE7_NE_15_MINS + LASER_BIAS_PC_MAX_LANE6_NE_1_DAY + LASER_BIAS_PC_MAX_LANE6_NE_15_MINS + LASER_BIAS_PC_MAX_LANE5_NE_1_DAY + LASER_BIAS_PC_MAX_LANE5_NE_15_MINS + LASER_BIAS_PC_MAX_LANE4_NE_1_DAY + LASER_BIAS_PC_MAX_LANE4_NE_15_MINS + LASER_BIAS_PC_MAX_LANE3_NE_1_DAY + LASER_BIAS_PC_MAX_LANE3_NE_15_MINS + LASER_BIAS_PC_MAX_LANE2_NE_1_DAY + LASER_BIAS_PC_MAX_LANE2_NE_15_MINS + LASER_BIAS_PC_MAX_LANE1_NE_1_DAY + LASER_BIAS_PC_MAX_LANE1_NE_15_MINS + LASER_BIAS_PC_MIN_LANE10_NE_1_DAY + LASER_BIAS_PC_MIN_LANE10_NE_15_MINS + LASER_BIAS_PC_MIN_LANE9_NE_1_DAY + LASER_BIAS_PC_MIN_LANE9_NE_15_MINS + LASER_BIAS_PC_MIN_LANE8_NE_1_DAY + LASER_BIAS_PC_MIN_LANE8_NE_15_MINS + LASER_BIAS_PC_MIN_LANE7_NE_1_DAY + LASER_BIAS_PC_MIN_LANE7_NE_15_MINS + LASER_BIAS_PC_MIN_LANE6_NE_1_DAY + LASER_BIAS_PC_MIN_LANE6_NE_15_MINS + LASER_BIAS_PC_MIN_LANE5_NE_1_DAY + LASER_BIAS_PC_MIN_LANE5_NE_15_MINS + LASER_BIAS_PC_MIN_LANE4_NE_1_DAY + LASER_BIAS_PC_MIN_LANE4_NE_15_MINS + LASER_BIAS_PC_MIN_LANE3_NE_1_DAY + LASER_BIAS_PC_MIN_LANE3_NE_15_MINS + LASER_BIAS_PC_MIN_LANE2_NE_1_DAY + LASER_BIAS_PC_MIN_LANE2_NE_15_MINS + LASER_BIAS_PC_MIN_LANE1_NE_1_DAY + LASER_BIAS_PC_MIN_LANE1_NE_15_MINS + LASER_BIAS_MAX_LANE10_NE_1_DAY + LASER_BIAS_MAX_LANE10_NE_15_MINS + LASER_BIAS_MAX_LANE9_NE_1_DAY + LASER_BIAS_MAX_LANE9_NE_15_MINS + LASER_BIAS_MAX_LANE8_NE_1_DAY + LASER_BIAS_MAX_LANE8_NE_15_MINS + LASER_BIAS_MAX_LANE7_NE_1_DAY + LASER_BIAS_MAX_LANE7_NE_15_MINS + LASER_BIAS_MAX_LANE6_NE_1_DAY + LASER_BIAS_MAX_LANE6_NE_15_MINS + LASER_BIAS_MAX_LANE5_NE_1_DAY + LASER_BIAS_MAX_LANE5_NE_15_MINS + LASER_BIAS_MAX_LANE4_NE_1_DAY + LASER_BIAS_MAX_LANE4_NE_15_MINS + LASER_BIAS_MAX_LANE3_NE_1_DAY + LASER_BIAS_MAX_LANE3_NE_15_MINS + LASER_BIAS_MAX_LANE2_NE_1_DAY + LASER_BIAS_MAX_LANE2_NE_15_MINS + LASER_BIAS_MAX_LANE1_NE_1_DAY + LASER_BIAS_MAX_LANE1_NE_15_MINS + LASER_BIAS_MIN_LANE10_NE_1_DAY + LASER_BIAS_MIN_LANE10_NE_15_MINS + LASER_BIAS_MIN_LANE9_NE_1_DAY + LASER_BIAS_MIN_LANE9_NE_15_MINS + LASER_BIAS_MIN_LANE8_NE_1_DAY + LASER_BIAS_MIN_LANE8_NE_15_MINS + LASER_BIAS_MIN_LANE7_NE_1_DAY + LASER_BIAS_MIN_LANE7_NE_15_MINS + LASER_BIAS_MIN_LANE6_NE_1_DAY + LASER_BIAS_MIN_LANE6_NE_15_MINS + LASER_BIAS_MIN_LANE5_NE_1_DAY + LASER_BIAS_MIN_LANE5_NE_15_MINS + LASER_BIAS_MIN_LANE4_NE_1_DAY + LASER_BIAS_MIN_LANE4_NE_15_MINS + LASER_BIAS_MIN_LANE3_NE_1_DAY + LASER_BIAS_MIN_LANE3_NE_15_MINS + LASER_BIAS_MIN_LANE2_NE_1_DAY + LASER_BIAS_MIN_LANE2_NE_15_MINS + LASER_BIAS_MIN_LANE1_NE_1_DAY + LASER_BIAS_MIN_LANE1_NE_15_MINS + RX_PWR_MAX_LANE10_NE_1_DAY + RX_PWR_MAX_LANE10_NE_15_MINS + RX_PWR_MAX_LANE9_NE_1_DAY + RX_PWR_MAX_LANE9_NE_15_MINS + RX_PWR_MAX_LANE8_NE_1_DAY + RX_PWR_MAX_LANE8_NE_15_MINS + RX_PWR_MAX_LANE7_NE_1_DAY + RX_PWR_MAX_LANE7_NE_15_MINS + RX_PWR_MAX_LANE6_NE_1_DAY + RX_PWR_MAX_LANE6_NE_15_MINS + RX_PWR_MAX_LANE5_NE_1_DAY + RX_PWR_MAX_LANE5_NE_15_MINS + RX_PWR_MAX_LANE4_NE_1_DAY + RX_PWR_MAX_LANE4_NE_15_MINS + RX_PWR_MAX_LANE3_NE_1_DAY + RX_PWR_MAX_LANE3_NE_15_MINS + RX_PWR_MAX_LANE2_NE_1_DAY + RX_PWR_MAX_LANE2_NE_15_MINS + RX_PWR_MAX_LANE1_NE_1_DAY + RX_PWR_MAX_LANE1_NE_15_MINS + RX_PWR_MIN_LANE10_NE_1_DAY + RX_PWR_MIN_LANE10_NE_15_MINS + RX_PWR_MIN_LANE9_NE_1_DAY + RX_PWR_MIN_LANE9_NE_15_MINS + RX_PWR_MIN_LANE8_NE_1_DAY + RX_PWR_MIN_LANE8_NE_15_MINS + RX_PWR_MIN_LANE7_NE_1_DAY + RX_PWR_MIN_LANE7_NE_15_MINS + RX_PWR_MIN_LANE6_NE_1_DAY + RX_PWR_MIN_LANE6_NE_15_MINS + RX_PWR_MIN_LANE5_NE_1_DAY + RX_PWR_MIN_LANE5_NE_15_MINS + RX_PWR_MIN_LANE4_NE_1_DAY + RX_PWR_MIN_LANE4_NE_15_MINS + RX_PWR_MIN_LANE3_NE_1_DAY + RX_PWR_MIN_LANE3_NE_15_MINS + RX_PWR_MIN_LANE2_NE_1_DAY + RX_PWR_MIN_LANE2_NE_15_MINS + RX_PWR_MIN_LANE1_NE_1_DAY + RX_PWR_MIN_LANE1_NE_15_MINS + TX_PWR_MAX_LANE10_NE_1_DAY + TX_PWR_MAX_LANE10_NE_15_MINS + TX_PWR_MAX_LANE9_NE_1_DAY + TX_PWR_MAX_LANE9_NE_15_MINS + TX_PWR_MAX_LANE8_NE_1_DAY + TX_PWR_MAX_LANE8_NE_15_MINS + TX_PWR_MAX_LANE7_NE_1_DAY + TX_PWR_MAX_LANE7_NE_15_MINS + TX_PWR_MAX_LANE6_NE_1_DAY + TX_PWR_MAX_LANE6_NE_15_MINS + TX_PWR_MAX_LANE5_NE_1_DAY + TX_PWR_MAX_LANE5_NE_15_MINS + TX_PWR_MAX_LANE4_NE_1_DAY + TX_PWR_MAX_LANE4_NE_15_MINS + TX_PWR_MAX_LANE3_NE_1_DAY + TX_PWR_MAX_LANE3_NE_15_MINS + TX_PWR_MAX_LANE2_NE_1_DAY + TX_PWR_MAX_LANE2_NE_15_MINS + TX_PWR_MAX_LANE1_NE_1_DAY + TX_PWR_MAX_LANE1_NE_15_MINS + TX_PWR_MIN_LANE10_NE_1_DAY + TX_PWR_MIN_LANE10_NE_15_MINS + TX_PWR_MIN_LANE9_NE_1_DAY + TX_PWR_MIN_LANE9_NE_15_MINS + TX_PWR_MIN_LANE8_NE_1_DAY + TX_PWR_MIN_LANE8_NE_15_MINS + TX_PWR_MIN_LANE7_NE_1_DAY + TX_PWR_MIN_LANE7_NE_15_MINS + TX_PWR_MIN_LANE6_NE_1_DAY + TX_PWR_MIN_LANE6_NE_15_MINS + TX_PWR_MIN_LANE5_NE_1_DAY + TX_PWR_MIN_LANE5_NE_15_MINS + TX_PWR_MIN_LANE4_NE_1_DAY + TX_PWR_MIN_LANE4_NE_15_MINS + TX_PWR_MIN_LANE3_NE_1_DAY + TX_PWR_MIN_LANE3_NE_15_MINS + TX_PWR_MIN_LANE2_NE_1_DAY + TX_PWR_MIN_LANE2_NE_15_MINS + TX_PWR_MIN_LANE1_NE_1_DAY + TX_PWR_MIN_LANE1_NE_15_MINS + LASER_BIAS_PC_MIN_NE_1_DAY + LASER_BIAS_PC_MIN_NE_15_MINS + LASER_BIAS_MIN_NE_1_DAY + LASER_BIAS_MIN_NE_15_MINS + RX_PWR_MIN_NE_1_DAY + RX_PWR_MIN_NE_15_MINS + TX_PWR_MIN_NE_1_DAY + TX_PWR_MIN_NE_15_MINS + PMD_MAX_NE_1_DAY + PMD_MAX_NE_15_MINS + CD_MAX_NE_1_DAY + CD_MAX_NE_15_MINS + PN_MAX_NE_1_DAY + PN_MAX_NE_15_MINS + PCR_MAX_NE_1_DAY + PCR_MAX_NE_15_MINS + SOPMD_MAX_NE_1_DAY + SOPMD_MAX_NE_15_MINS + PDL_MAX_NE_1_DAY + PDL_MAX_NE_15_MINS + OSNR_MAX_NE_1_DAY + OSNR_MAX_NE_15_MINS + OPTICAL_FEC_UNCWORD + OPTICAL_FECMISMATCH + OPTICAL_AS_MT + OPTICAL_PROV_IN_PROG + OPTICAL_LO_OSNR + OPTICAL_OUT_OF_RNG_CD + OPTICAL_HI_DGD + OPTICAL_TX_POWER_PROV_MISMATCH + OPTICAL_WVL_OUT_OF_LOCK + OPTICAL_UNQUALIFIED_PPM + OPTICAL_HI_LASERBIAS + OPTICAL_LO_TXPOWER + OPTICAL_HI_TXPOWER + OPTICAL_LO_RXPOWER + OPTICAL_HI_RXPOWER + OPTICAL_PROV_MISMATCH + OPTICAL_MEA + OPTICAL_IMPROPRMVL + FEC_POST_FEC_BER_MAX_NE_30_SEC + FEC_POST_FEC_BER_MIN_NE_30_SEC + FEC_PRE_FEC_BER_MAX_NE_30_SEC + FEC_PRE_FEC_BER_MIN_NE_30_SEC + FEC_Q_MARGIN_INST_MIN_NE_30_SEC + FEC_Q_MARGIN_INST_MAX_NE_30_SEC + FEC_Q_MARGIN_MIN_NE_30_SEC + FEC_Q_MARGIN_MAX_NE_30_SEC + FEC_Q_MIN_NE_30_SEC + FEC_Q_MAX_NE_30_SEC + FEC_POST_FEC_BER_MAX_NE_15_MINS + FEC_POST_FEC_BER_MIN_NE_15_MINS + FEC_PRE_FEC_BER_MAX_NE_15_MINS + FEC_PRE_FEC_BER_MIN_NE_15_MINS + FEC_Q_MARGIN_INST_MIN_NE_15_MINS + FEC_Q_MARGIN_INST_MAX_NE_15_MINS + FEC_Q_MARGIN_MIN_NE_15_MINS + FEC_Q_MARGIN_MAX_NE_15_MINS + FEC_Q_MIN_NE_15_MINS + FEC_Q_MAX_NE_15_MINS + FEC_POST_FEC_BER_MAX_NE_1_DAY + FEC_POST_FEC_BER_MIN_NE_1_DAY + FEC_PRE_FEC_BER_MAX_NE_1_DAY + FEC_PRE_FEC_BER_MIN_NE_1_DAY + FEC_Q_MARGIN_INST_MIN_NE_1_DAY + FEC_Q_MARGIN_INST_MAX_NE_1_DAY + FEC_Q_MARGIN_MIN_NE_1_DAY + FEC_Q_MARGIN_MAX_NE_1_DAY + FEC_Q_MIN_NE_1_DAY + FEC_Q_MAX_NE_1_DAY + FEC_EC_WORD_NE_30_SEC + FEC_EC_WORD_NE_1_DAY + FEC_EC_WORD_NE_15_MINS + FEC_UNC_WORDS_NE_30_SEC + FEC_BIT_EC_NE_30_SEC + FEC_UNC_WORDS_NE_15_MINS + FEC_UNC_WORDS_NE_1_DAY + FEC_BIT_EC_NE_1_DAY + FEC_BIT_EC_NE_15_MINS + OTNSEC_OUT_BLOCKS_UN_PROTECTED_NE_1_DAY + OTNSEC_OUT_BLOCKS_PROTECTED_NE_1_DAY + OTNSEC_OUT_BLOCKS_ZEROED_NE_1_DAY + OTNSEC_OUT_BLOCKS_SEQUENCE_ERRORS_NE_1_DAY + OTNSEC_OUT_BLOCKS_UN_ENCRYPTED_NE_1_DAY + OTNSEC_OUT_BLOCKS_ENC_NE_1_DAY + OTNSEC_OUT_BLOCKS_NE_1_DAY + OTNSEC_IN_BLOCKS_ZEROED_NE_1_DAY + OTNSEC_IN_BLOCKS_AUTH_ERRORS_NE_1_DAY + OTNSEC_IN_BLOCKS_REPLAY_ERRORS_NE_1_DAY + OTNSEC_IN_BLOCKS_SEQUENCE_ERRORS_NE_1_DAY + OTNSEC_IN_BLOCKS_UN_PROTECTED_NE_1_DAY + OTNSEC_IN_BLOCKS_PROTECTED_NE_1_DAY + OTNSEC_IN_BLOCKS_UN_ENCRYPTED_NE_1_DAY + OTNSEC_IN_BLOCKS_ENC_NE_1_DAY + OTNSEC_IN_BLOCKS_NE_1_DAY + OTNSEC_OUT_BLOCKS_UN_PROTECTED_NE_15_MINS + OTNSEC_OUT_BLOCKS_PROTECTED_NE_15_MINS + OTNSEC_OUT_BLOCKS_ZEROED_NE_15_MINS + OTNSEC_OUT_BLOCKS_SEQUENCE_ERRORS_NE_15_MINS + OTNSEC_OUT_BLOCKS_UN_ENCRYPTED_NE_15_MINS + OTNSEC_OUT_BLOCKS_ENC_NE_15_MINS + OTNSEC_OUT_BLOCKS_NE_15_MINS + OTNSEC_IN_BLOCKS_ZEROED_NE_15_MINS + OTNSEC_IN_BLOCKS_AUTH_ERRORS_NE_15_MINS + OTNSEC_IN_BLOCKS_REPLAY_ERRORS_NE_15_MINS + OTNSEC_IN_BLOCKS_SEQUENCE_ERRORS_NE_15_MINS + OTNSEC_IN_BLOCKS_UN_PROTECTED_NE_15_MINS + OTNSEC_IN_BLOCKS_PROTECTED_NE_15_MINS + OTNSEC_IN_BLOCKS_UN_ENCRYPTED_NE_15_MINS + OTNSEC_IN_BLOCKS_ENC_NE_15_MINS + OTNSEC_IN_BLOCKS_NE_15_MINS + OTNSEC_OUT_BLOCKS_UN_PROTECTED_NE_30_SEC + OTNSEC_OUT_BLOCKS_PROTECTED_NE_30_SEC + OTNSEC_OUT_BLOCKS_ZEROED_NE_30_SEC + OTNSEC_OUT_BLOCKS_SEQUENCE_ERRORS_NE_30_SEC + OTNSEC_OUT_BLOCKS_UN_ENCRYPTED_NE_30_SEC + OTNSEC_OUT_BLOCKS_ENC_NE_30_SEC + OTNSEC_OUT_BLOCKS_NE_30_SEC + OTNSEC_IN_BLOCKS_ZEROED_NE_30_SEC + OTNSEC_IN_BLOCKS_AUTH_ERRORS_NE_30_SEC + OTNSEC_IN_BLOCKS_REPLAY_ERRORS_NE_30_SEC + OTNSEC_IN_BLOCKS_SEQUENCE_ERRORS_NE_30_SEC + OTNSEC_IN_BLOCKS_UN_PROTECTED_NE_30_SEC + OTNSEC_IN_BLOCKS_PROTECTED_NE_30_SEC + OTNSEC_IN_BLOCKS_UN_ENCRYPTED_NE_30_SEC + OTNSEC_IN_BLOCKS_ENC_NE_30_SEC + OTNSEC_IN_BLOCKS_NE_30_SEC + PRBS_LOST_COUNT_NE_30_SEC + PRBS_FOUND_COUNT_NE_30_SEC + PRBS_EBC_NE_30_SEC + PRBS_LOST_COUNT_NE_1_DAY + PRBS_FOUND_COUNT_NE_1_DAY + PRBS_EBC_NE_1_DAY + PRBS_LOST_COUNT_NE_15_MINS + PRBS_FOUND_COUNT_NE_15_MINS + PRBS_EBC_NE_15_MINS + UAS_TCM6_FE_30_SEC + UAS_TCM6_NE_30_SEC + FC_TCM6_FE_30_SEC + FC_TCM6_NE_30_SEC + SESR_TCM6_FE_30_SEC + SESR_TCM6_NE_30_SEC + ESR_TCM6_FE_30_SEC + ESR_TCM6_NE_30_SEC + SES_TCM6_FE_30_SEC + SES_TCM6_NE_30_SEC + ES_TCM6_FE_30_SEC + ES_TCM6_NE_30_SEC + BBER_TCM6_FE_30_SEC + BBER_TCM6_NE_30_SEC + BBE_TCM6_FE_30_SEC + BBE_TCM6_NE_30_SEC + UAS_TCM5_FE_30_SEC + UAS_TCM5_NE_30_SEC + FC_TCM5_FE_30_SEC + FC_TCM5_NE_30_SEC + SESR_TCM5_FE_30_SEC + SESR_TCM5_NE_30_SEC + ESR_TCM5_FE_30_SEC + ESR_TCM5_NE_30_SEC + SES_TCM5_FE_30_SEC + SES_TCM5_NE_30_SEC + ES_TCM5_FE_30_SEC + ES_TCM5_NE_30_SEC + BBER_TCM5_FE_30_SEC + BBER_TCM5_NE_30_SEC + BBE_TCM5_FE_30_SEC + BBE_TCM5_NE_30_SEC + UAS_TCM4_FE_30_SEC + UAS_TCM4_NE_30_SEC + FC_TCM4_FE_30_SEC + FC_TCM4_NE_30_SEC + SESR_TCM4_FE_30_SEC + SESR_TCM4_NE_30_SEC + ESR_TCM4_FE_30_SEC + ESR_TCM4_NE_30_SEC + SES_TCM4_FE_30_SEC + SES_TCM4_NE_30_SEC + ES_TCM4_FE_30_SEC + ES_TCM4_NE_30_SEC + BBER_TCM4_FE_30_SEC + BBER_TCM4_NE_30_SEC + BBE_TCM4_FE_30_SEC + BBE_TCM4_NE_30_SEC + UAS_TCM3_FE_30_SEC + UAS_TCM3_NE_30_SEC + FC_TCM3_FE_30_SEC + FC_TCM3_NE_30_SEC + SESR_TCM3_FE_30_SEC + SESR_TCM3_NE_30_SEC + ESR_TCM3_FE_30_SEC + ESR_TCM3_NE_30_SEC + SES_TCM3_FE_30_SEC + SES_TCM3_NE_30_SEC + ES_TCM3_FE_30_SEC + ES_TCM3_NE_30_SEC + BBER_TCM3_FE_30_SEC + BBER_TCM3_NE_30_SEC + BBE_TCM3_FE_30_SEC + BBE_TCM3_NE_30_SEC + UAS_TCM2_FE_30_SEC + UAS_TCM2_NE_30_SEC + FC_TCM2_FE_30_SEC + FC_TCM2_NE_30_SEC + SESR_TCM2_FE_30_SEC + SESR_TCM2_NE_30_SEC + ESR_TCM2_FE_30_SEC + ESR_TCM2_NE_30_SEC + SES_TCM2_FE_30_SEC + SES_TCM2_NE_30_SEC + ES_TCM2_FE_30_SEC + ES_TCM2_NE_30_SEC + BBER_TCM2_FE_30_SEC + BBER_TCM2_NE_30_SEC + BBE_TCM2_FE_30_SEC + BBE_TCM2_NE_30_SEC + UAS_TCM1_FE_30_SEC + UAS_TCM1_NE_30_SEC + FC_TCM1_FE_30_SEC + FC_TCM1_NE_30_SEC + SESR_TCM1_FE_30_SEC + SESR_TCM1_NE_30_SEC + ESR_TCM1_FE_30_SEC + ESR_TCM1_NE_30_SEC + SES_TCM1_FE_30_SEC + SES_TCM1_NE_30_SEC + ES_TCM1_FE_30_SEC + ES_TCM1_NE_30_SEC + BBER_TCM1_FE_30_SEC + BBER_TCM1_NE_30_SEC + BBE_TCM1_FE_30_SEC + BBE_TCM1_NE_30_SEC + UAS_TCM6_FE_1_DAY + UAS_TCM6_NE_1_DAY + UAS_TCM6_FE_15_MINS + UAS_TCM6_NE_15_MINS + UAS_TCM5_FE_1_DAY + UAS_TCM5_NE_1_DAY + UAS_TCM5_FE_15_MINS + UAS_TCM5_NE_15_MINS + UAS_TCM4_FE_1_DAY + UAS_TCM4_NE_1_DAY + UAS_TCM4_FE_15_MINS + UAS_TCM4_NE_15_MINS + UAS_TCM3_FE_1_DAY + UAS_TCM3_NE_1_DAY + UAS_TCM3_FE_15_MINS + UAS_TCM3_NE_15_MINS + UAS_TCM2_FE_1_DAY + UAS_TCM2_NE_1_DAY + UAS_TCM2_FE_15_MINS + UAS_TCM2_NE_15_MINS + UAS_TCM1_FE_1_DAY + UAS_TCM1_NE_1_DAY + UAS_TCM1_FE_15_MINS + UAS_TCM1_NE_15_MINS + FC_TCM6_FE_1_DAY + FC_TCM6_NE_1_DAY + FC_TCM6_FE_15_MINS + FC_TCM6_NE_15_MINS + FC_TCM5_FE_1_DAY + FC_TCM5_NE_1_DAY + FC_TCM5_FE_15_MINS + FC_TCM5_NE_15_MINS + FC_TCM4_FE_1_DAY + FC_TCM4_NE_1_DAY + FC_TCM4_FE_15_MINS + FC_TCM4_NE_15_MINS + FC_TCM3_FE_1_DAY + FC_TCM3_NE_1_DAY + FC_TCM3_FE_15_MINS + FC_TCM3_NE_15_MINS + FC_TCM2_FE_1_DAY + FC_TCM2_NE_1_DAY + FC_TCM2_FE_15_MINS + FC_TCM2_NE_15_MINS + FC_TCM1_FE_1_DAY + FC_TCM1_NE_1_DAY + FC_TCM1_FE_15_MINS + FC_TCM1_NE_15_MINS + SESR_TCM6_FE_1_DAY + SESR_TCM6_NE_1_DAY + SESR_TCM6_FE_15_MINS + SESR_TCM6_NE_15_MINS + SESR_TCM5_FE_1_DAY + SESR_TCM5_NE_1_DAY + SESR_TCM5_FE_15_MINS + SESR_TCM5_NE_15_MINS + SESR_TCM4_FE_1_DAY + SESR_TCM4_NE_1_DAY + SESR_TCM4_FE_15_MINS + SESR_TCM4_NE_15_MINS + SESR_TCM3_FE_1_DAY + SESR_TCM3_NE_1_DAY + SESR_TCM3_FE_15_MINS + SESR_TCM3_NE_15_MINS + SESR_TCM2_FE_1_DAY + SESR_TCM2_NE_1_DAY + SESR_TCM2_FE_15_MINS + SESR_TCM2_NE_15_MINS + SESR_TCM1_FE_1_DAY + SESR_TCM1_NE_1_DAY + SESR_TCM1_FE_15_MINS + SESR_TCM1_NE_15_MINS + ESR_TCM6_FE_1_DAY + ESR_TCM6_NE_1_DAY + ESR_TCM6_FE_15_MINS + ESR_TCM6_NE_15_MINS + ESR_TCM5_FE_1_DAY + ESR_TCM5_NE_1_DAY + ESR_TCM5_FE_15_MINS + ESR_TCM5_NE_15_MINS + ESR_TCM4_FE_1_DAY + ESR_TCM4_NE_1_DAY + ESR_TCM4_FE_15_MINS + ESR_TCM4_NE_15_MINS + ESR_TCM3_FE_1_DAY + ESR_TCM3_NE_1_DAY + ESR_TCM3_FE_15_MINS + ESR_TCM3_NE_15_MINS + ESR_TCM2_FE_1_DAY + ESR_TCM2_NE_1_DAY + ESR_TCM2_FE_15_MINS + ESR_TCM2_NE_15_MINS + ESR_TCM1_FE_1_DAY + ESR_TCM1_NE_1_DAY + ESR_TCM1_FE_15_MINS + ESR_TCM1_NE_15_MINS + SES_TCM6_FE_1_DAY + SES_TCM6_NE_1_DAY + SES_TCM6_FE_15_MINS + SES_TCM6_NE_15_MINS + SES_TCM5_FE_1_DAY + SES_TCM5_NE_1_DAY + SES_TCM5_FE_15_MINS + SES_TCM5_NE_15_MINS + SES_TCM4_FE_1_DAY + SES_TCM4_NE_1_DAY + SES_TCM4_FE_15_MINS + SES_TCM4_NE_15_MINS + SES_TCM3_FE_1_DAY + SES_TCM3_NE_1_DAY + SES_TCM3_FE_15_MINS + SES_TCM3_NE_15_MINS + SES_TCM2_FE_1_DAY + SES_TCM2_NE_1_DAY + SES_TCM2_FE_15_MINS + SES_TCM2_NE_15_MINS + SES_TCM1_FE_1_DAY + SES_TCM1_NE_1_DAY + SES_TCM1_FE_15_MINS + SES_TCM1_NE_15_MINS + ES_TCM6_FE_1_DAY + ES_TCM6_NE_1_DAY + ES_TCM6_FE_15_MINS + ES_TCM6_NE_15_MINS + ES_TCM5_FE_1_DAY + ES_TCM5_NE_1_DAY + ES_TCM5_FE_15_MINS + ES_TCM5_NE_15_MINS + ES_TCM4_FE_1_DAY + ES_TCM4_NE_1_DAY + ES_TCM4_FE_15_MINS + ES_TCM4_NE_15_MINS + ES_TCM3_FE_1_DAY + ES_TCM3_NE_1_DAY + ES_TCM3_FE_15_MINS + ES_TCM3_NE_15_MINS + ES_TCM2_FE_1_DAY + ES_TCM2_NE_1_DAY + ES_TCM2_FE_15_MINS + ES_TCM2_NE_15_MINS + ES_TCM1_FE_1_DAY + ES_TCM1_NE_1_DAY + ES_TCM1_FE_15_MINS + ES_TCM1_NE_15_MINS + BBER_TCM6_FE_1_DAY + BBER_TCM6_NE_1_DAY + BBER_TCM6_FE_15_MINS + BBER_TCM6_NE_15_MINS + BBER_TCM5_FE_1_DAY + BBER_TCM5_NE_1_DAY + BBER_TCM5_FE_15_MINS + BBER_TCM5_NE_15_MINS + BBER_TCM4_FE_1_DAY + BBER_TCM4_NE_1_DAY + BBER_TCM4_FE_15_MINS + BBER_TCM4_NE_15_MINS + BBER_TCM3_FE_1_DAY + BBER_TCM3_NE_1_DAY + BBER_TCM3_FE_15_MINS + BBER_TCM3_NE_15_MINS + BBER_TCM2_FE_1_DAY + BBER_TCM2_NE_1_DAY + BBER_TCM2_FE_15_MINS + BBER_TCM2_NE_15_MINS + BBER_TCM1_FE_1_DAY + BBER_TCM1_NE_1_DAY + BBER_TCM1_FE_15_MINS + BBER_TCM1_NE_15_MINS + BBE_TCM6_FE_1_DAY + BBE_TCM6_NE_1_DAY + BBE_TCM6_FE_15_MINS + BBE_TCM6_NE_15_MINS + BBE_TCM5_FE_1_DAY + BBE_TCM5_NE_1_DAY + BBE_TCM5_FE_15_MINS + BBE_TCM5_NE_15_MINS + BBE_TCM4_FE_1_DAY + BBE_TCM4_NE_1_DAY + BBE_TCM4_FE_15_MINS + BBE_TCM4_NE_15_MINS + BBE_TCM3_FE_1_DAY + BBE_TCM3_NE_1_DAY + BBE_TCM3_FE_15_MINS + BBE_TCM3_NE_15_MINS + BBE_TCM2_FE_1_DAY + BBE_TCM2_NE_1_DAY + BBE_TCM2_FE_15_MINS + BBE_TCM2_NE_15_MINS + BBE_TCM1_FE_1_DAY + BBE_TCM1_NE_1_DAY + BBE_TCM1_FE_15_MINS + BBE_TCM1_NE_15_MINS + BBER_PM_FE_30_SEC + SESR_PM_FE_30_SEC + ESR_PM_FE_30_SEC + FC_PM_FE_30_SEC + BBE_PM_FE_30_SEC + UAS_PM_FE_30_SEC + SES_PM_FE_30_SEC + ES_PM_FE_30_SEC + BBER_PM_NE_30_SEC + SESR_PM_NE_30_SEC + ESR_PM_NE_30_SEC + FC_PM_NE_30_SEC + BBE_PM_NE_30_SEC + UAS_PM_NE_30_SEC + SES_PM_NE_30_SEC + ES_PM_NE_30_SEC + BBER_PM_FE_1_DAY + SESR_PM_FE_1_DAY + ESR_PM_FE_1_DAY + FC_PM_FE_1_DAY + BBE_PM_FE_1_DAY + UAS_PM_FE_1_DAY + SES_PM_FE_1_DAY + ES_PM_FE_1_DAY + BBER_PM_NE_1_DAY + SESR_PM_NE_1_DAY + ESR_PM_NE_1_DAY + FC_PM_NE_1_DAY + BBE_PM_NE_1_DAY + UAS_PM_NE_1_DAY + SES_PM_NE_1_DAY + ES_PM_NE_1_DAY + BBER_PM_FE_15_MINS + SESR_PM_FE_15_MINS + ESR_PM_FE_15_MINS + FC_PM_FE_15_MINS + BBE_PM_FE_15_MINS + UAS_PM_FE_15_MINS + SES_PM_FE_15_MINS + ES_PM_FE_15_MINS + BBER_PM_NE_15_MINS + SESR_PM_NE_15_MINS + ESR_PM_NE_15_MINS + FC_PM_NE_15_MINS + BBE_PM_NE_15_MINS + UAS_PM_NE_15_MINS + SES_PM_NE_15_MINS + ES_PM_NE_15_MINS + BBER_SM_FE_30_SEC + SESR_SM_FE_30_SEC + ESR_SM_FE_30_SEC + FC_SM_FE_30_SEC + BBE_SM_FE_30_SEC + UAS_SM_FE_30_SEC + SES_SM_FE_30_SEC + ES_SM_FE_30_SEC + BBER_SM_NE_30_SEC + SESR_SM_NE_30_SEC + ESR_SM_NE_30_SEC + FC_SM_NE_30_SEC + BBE_SM_NE_30_SEC + UAS_SM_NE_30_SEC + SES_SM_NE_30_SEC + ES_SM_NE_30_SEC + BBER_SM_FE_1_DAY + SESR_SM_FE_1_DAY + ESR_SM_FE_1_DAY + FC_SM_FE_1_DAY + BBE_SM_FE_1_DAY + UAS_SM_FE_1_DAY + SES_SM_FE_1_DAY + ES_SM_FE_1_DAY + BBER_SM_NE_1_DAY + SESR_SM_NE_1_DAY + ESR_SM_NE_1_DAY + FC_SM_NE_1_DAY + BBE_SM_NE_1_DAY + UAS_SM_NE_1_DAY + SES_SM_NE_1_DAY + ES_SM_NE_1_DAY + BBER_SM_FE_15_MINS + SESR_SM_FE_15_MINS + ESR_SM_FE_15_MINS + FC_SM_FE_15_MINS + BBE_SM_FE_15_MINS + UAS_SM_FE_15_MINS + SES_SM_FE_15_MINS + ES_SM_FE_15_MINS + BBER_SM_NE_15_MINS + SESR_SM_NE_15_MINS + ESR_SM_NE_15_MINS + FC_SM_NE_15_MINS + BBE_SM_NE_15_MINS + UAS_SM_NE_15_MINS + SES_SM_NE_15_MINS + ES_SM_NE_15_MINS + G709_FEC_UNCWORD + G709_ADDTNL_PARENT_DUMMY + G709_CRYPTO_INDEX_MISMATCH + G709_CRYPTO_KEY_EXPIRED + G709_SF_BER_PM + G709_SD_BER_PM + G709_SF_BER_TCM6 + G709_SD_BER_TCM6 + G709_TCM6_TIM + G709_TCM6_BDI + G709_TCM6_BIAE + G709_TCM6_IAE + G709_TCM6_LCK + G709_TCM6_OCI + G709_TCM6_LTC + G709_TCM6_AIS + G709_SF_BER_TCM5 + G709_SD_BER_TCM5 + G709_TCM5_TIM + G709_TCM5_BDI + G709_TCM5_BIAE + G709_TCM5_IAE + G709_TCM5_LCK + G709_TCM5_OCI + G709_TCM5_LTC + G709_TCM5_AIS + G709_SF_BER_TCM4 + G709_SD_BER_TCM4 + G709_TCM4_TIM + G709_TCM4_BDI + G709_TCM4_BIAE + G709_TCM4_IAE + G709_TCM4_LCK + G709_TCM4_OCI + G709_TCM4_LTC + G709_TCM4_AIS + G709_SF_BER_TCM3 + G709_SD_BER_TCM3 + G709_TCM3_TIM + G709_TCM3_BDI + G709_TCM3_BIAE + G709_TCM3_IAE + G709_TCM3_LCK + G709_TCM3_OCI + G709_TCM3_LTC + G709_TCM3_AIS + G709_SF_BER_TCM2 + G709_SD_BER_TCM2 + G709_TCM2_TIM + G709_TCM2_BDI + G709_TCM2_BIAE + G709_TCM2_IAE + G709_TCM2_LCK + G709_TCM2_OCI + G709_TCM2_LTC + G709_TCM2_AIS + G709_SF_BER_TCM1 + G709_SD_BER_TCM1 + G709_TCM1_TIM + G709_TCM1_BDI + G709_TCM1_BIAE + G709_TCM1_IAE + G709_TCM1_LCK + G709_TCM1_OCI + G709_TCM1_LTC + G709_TCM1_AIS + G709_PM_AS_MT + G709_OPU_CSF + G709_PM_BIAE + G709_PM_IAE + G709_OPU_PTIM + G709_PM_TIM + G709_PM_BDI + G709_PM_LCK + G709_PM_OCI + G709_PM_AIS + G709_INV_MUX_DUMMY + G709_FLEXO_RDI + G709_FLEXO_LOM + G709_FLEXO_LOF + G709_FLEXO_MM + G709_FLEXO_GIDM + G709_AS_MT + G709_FECMISMATCH + G709_SF_BER_SM + G709_SD_BER_SM + G709_TIM + G709_BDI + G709_BIAE + G709_IAE + G709_LOM + G709_LOF + G709_AIS + G709_LOS + FIBRE_CHANNEL_NOS + FIBRE_CHANNEL_SIGLOSS + FIBRE_CHANNEL_RF + FIBRE_CHANNEL_LF + FIBRE_CHANNEL_PCS_ERROR + FIBRE_CHANNEL_HI_BER + FIBRE_CHANNEL_SYNCLOSS + CPRI_SDI + CPRI_RAI + CPRI_LOF + CPRI_LOS + OTS_AS_MT + OTS_APC_RUNNING + OTS_SWITCH_TO_PROTECT + OTS_APC_CONFIG_MISMATCH + OTS_APC_DISABLED + OTS_AUTO_POW_RED + OTS_AUTO_LASER_SHUT + OTS_AMPLI_GAIN_HIGH + OTS_AMPLI_GAIN_LOW + OTS_RX_LOC + OTS_RX_LOS_P + OTS_RX_POWER_FAIL_LOW + OTS_TX_POWER_FAIL_LOW + "; + } + leaf sas { + type enumeration { + enum "UNKNOWN" { + value 0; + description + "Unkown severity"; + } + enum "NONREPORTED" { + value 1; + description + "Non reported severity"; + } + enum "NONFAULTED" { + value 2; + description + "Non faulted severity"; + } + enum "MINOR" { + value 3; + description + "Minor severity"; + } + enum "MAJOR" { + value 4; + description + "Major severity"; + } + enum "CRITICAL" { + value 5; + description + "Critical severity"; + } + } + mandatory true; + description + "Service affecting fault severity"; + } + leaf nsas { + type enumeration { + enum "UNKNOWN" { + value 0; + description + "Unkown severity"; + } + enum "NONREPORTED" { + value 1; + description + "Non reported severity"; + } + enum "NONFAULTED" { + value 2; + description + "Non faulted severity"; + } + enum "MINOR" { + value 3; + description + "Minor severity"; + } + enum "MAJOR" { + value 4; + description + "Major severity"; + } + enum "CRITICAL" { + value 5; + description + "Critical severity"; + } + } + mandatory true; + description + "Not service affecting fault severity"; + } + } + } + } + } + } + leaf description { + type string { + length "1..128" { + description + "Fault profile description"; + } + } + description + "Fault profile description"; + } + container apply { + description + "Apply fault profile"; + list rack { + key "rack-number"; + description + "rack numnber"; + leaf rack-number { + type uint32 { + range "0..1" { + description + "rack number"; + } + } + description + "rack number"; + } + container slots { + description + "physical rack slot"; + list slot { + key "slot"; + description + "physical rack slot"; + leaf slot { + type string { + pattern "(LC[0-9]+)|ALL"; + } + description + "physical rack slot"; + } + container propagate { + presence "Indicates a propagate node is configured."; + description + "Apply fault profile on child entities of card"; + } + } + } + container slot-ports { + description + "physical rack slot and port"; + list slot-port { + key "slot port"; + description + "physical rack slot and port"; + leaf slot { + type string { + pattern "(LC[0-9]+)"; + } + description + "slot number"; + } + leaf port { + type uint32 { + range "0..32" { + description + "physical port"; + } + } + description + "physical port"; + } + container propagate { + presence "Indicates a propagate node is configured."; + description + "Apply fault profile on child entities"; + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-filesystem-inventory-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-filesystem-inventory-cfg.yang new file mode 100644 index 000000000..04c1b92d7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-filesystem-inventory-cfg.yang @@ -0,0 +1,122 @@ +module Cisco-IOS-XR-um-filesystem-inventory-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-filesystem-inventory-cfg"; + prefix um-filesystem-inventory-cfg; + + 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 filesystem-inventory package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-15 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container filesystem-inventory { + presence "Indicates a filesystem-inventory node is configured."; + description + "filesystem inventory configuration commands"; + leaf snapshot-interval { + type uint32 { + range "1..720" { + description + "Snapshot Time interval in 1 hour blocks(e.g, 2 is 120 minutes)"; + } + } + description + "Time interval for generating snapshot"; + } + container snapshot-type { + description + "Type of snapshot to be taken at periodic intervals. Default is incremental"; + container full { + must "not(../incremental)"; + presence "Indicates a full node is configured."; + description + "Full snapshot generation at periodic intervals"; + } + container incremental { + must "not(../full)"; + presence "Indicates a incremental node is configured."; + description + "Incremental snapshot generation at periodic intervals"; + } + } + container on-demand { + description + "Set of directories to generate on-demand snapshot"; + container dir-sets { + description + "Directory set number for on demand"; + list dir-set { + key "dir-set-number"; + description + "Directory set number for on demand"; + leaf dir-set-number { + type uint32 { + range "1..5" { + description + "Dir set id"; + } + } + description + "Directory set number for on demand"; + } + leaf value { + type string { + length "1..800" { + description + "Space separated directory set(enclosed in quotes)"; + } + } + mandatory true; + description + "List of directories to generate on-demand snapshot for"; + } + } + } + } + leaf skip-list { + type string { + length "1..800" { + description + "List of directories to be skipped. Directory names should be space separated and enclosed in quotes"; + } + } + description + "List of directories to be skipped while generating snapshot. Directory names should be space separated and enclosed in quotes"; + } + leaf skip-files { + type string { + length "1..800" { + description + "List of files to be skipped. File names should be space separated and enclosed in quotes"; + } + } + description + "List of files to be skipped while generating snapshot. File names should be space separated and enclosed in quotes"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-flow-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-flow-cfg.yang new file mode 100644 index 000000000..43824befa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-flow-cfg.yang @@ -0,0 +1,1993 @@ +module Cisco-IOS-XR-um-flow-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-flow-cfg"; + prefix um-flow-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-if-l2transport-cfg { + prefix a2; + } + 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 flow package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-11 { + description + "Added export source port related configuration + 2022-07-11 + Added missing description statement to nodes + 2022-05-30 + Added container srv6 under record monitor-map + 2022-05-17 + Added container source-address for IPv4 address and IPv6 address under flow exporter-map + 2022-03-21 + - Updated range value of sample-header size under sflow options + 2022-01-19 + - Added extended-ipv4-tunnel-egress and + extended-ipv6-tunnel-egress container under sflow options"; + semver:module-version "2.1.0"; + } + revision 2021-03-03 { + description + "- Added class-table container under options"; + semver:module-version "2.0.0"; + } + revision 2020-06-15 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature nf_parser_verify_wrapper_allow_sflow_kw_generic { + description + "nf parser verify wrapper allow sflow kw generic"; + } + + feature netflow_pd_perf_traffic_supported { + description + "netflow pd perf traffic supported"; + } + + feature netflow_pd_allow_option_kw { + description + "netflow pd allow option kw"; + } + + feature netflow_pd_allow_dba_kw { + description + "netflow pd allow dba kw"; + } + + feature netflow_pd_allow_dba_tos_kw { + description + "netflow pd allow dba tos kw"; + } + + feature netflow_pd_allow_as_kw { + description + "netflow pd allow as kw"; + } + + feature netflow_pd_allow_protocol_port_kw { + description + "netflow pd allow protocol port kw"; + } + + feature netflow_pd_allow_prefix_kw { + description + "netflow pd allow prefix kw"; + } + + feature netflow_pd_allow_source_prefix_kw { + description + "netflow pd allow source prefix kw"; + } + + feature netflow_pd_allow_destination_prefix_kw { + description + "netflow pd allow destination prefix kw"; + } + + feature netflow_pd_allow_as_tos_kw { + description + "netflow pd allow as tos kw"; + } + + feature netflow_pd_allow_protocol_port_tos_kw { + description + "netflow pd allow protocol port tos kw"; + } + + feature netflow_pd_allow_prefix_tos_kw { + description + "netflow pd allow prefix tos kw"; + } + + feature netflow_pd_allow_source_prefix_tos_kw { + description + "netflow pd allow source prefix tos kw"; + } + + feature netflow_pd_allow_destination_prefix_tos_kw { + description + "netflow pd allow destination prefix tos kw"; + } + + feature netflow_pd_allow_prefix_port_kw { + description + "netflow pd allow prefix port kw"; + } + + feature netflow_pd_allow_bgp_nexthop_tos_kw { + description + "netflow pd allow bgp nexthop tos kw"; + } + + feature nf_parser_verify_wrapper_allow_ipv4gtp_kw_generic { + description + "nf parser verify wrapper allow ipv4gtp kw generic"; + } + + feature netflow_pd_allow_ipv6_kw { + description + "netflow pd allow ipv6 kw"; + } + + feature netflow_pd_allow_ipv6dba_kw { + description + "netflow pd allow ipv6dba kw"; + } + + feature nf_parser_verify_wrapper_allow_ipv6gtp_kw_generic { + description + "nf parser verify wrapper allow ipv6gtp kw generic"; + } + + feature nf_parser_verify_wrapper_allow_srv6_kw_generic { + description + "nf parser verify wrapper allow srv6 kw generic"; + } + + feature netflow_pd_allow_mpls_kw { + description + "netflow pd allow mpls kw"; + } + + feature nf_parser_verify_wrapper_allow_record_mapt_kw { + description + "nf parser verify wrapper allow record mapt kw"; + } + + feature nf_parser_verify_wrapper_allow_fmm_l2_record { + description + "nf parser verify wrapper allow fmm l2 record"; + } + + feature netflow_if_supported { + description + "netflow if supported"; + } + + feature nf_parser_verify_wrapper_allow_intf_fmon_ingress { + description + "nf parser verify wrapper allow intf fmon ingress"; + } + + feature nf_parser_verify_wrapper_allow_intf_fmon_egress { + description + "nf parser verify wrapper allow intf fmon egress"; + } + + feature netflow_pd_allow_sectiondata_kw { + description + "netflow pd allow sectiondata kw"; + } + + feature nf_parser_verify_wrapper_allow_intf_mapt_kw { + description + "nf parser verify wrapper allow intf mapt kw"; + } + + feature nf_parser_verify_wrapper_allow_l2_main_dlfs { + description + "nf parser verify wrapper allow l2 main dlfs"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container flow { + if-feature "netflow_if_supported"; + description + "Netflow configuration"; + container ipv4 { + description + "IPV4 netflow configuration"; + container monitor { + description + "Specify a flow monitor for packets"; + container ingress-monitors { + description + "Apply flow monitor on incoming packets"; + list ingress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container ingress-monitor-samplers { + description + "Specify a flow monitor and sampler for incoming packets"; + list ingress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for incoming packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + container egress-monitors { + description + "Apply flow monitor on outgoing packets"; + list egress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container egress-monitor-samplers { + description + "Specify a flow monitor and sampler for outgoing packets"; + list egress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for outgoing packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + } + } + container mpls { + if-feature "netflow_pd_allow_mpls_kw"; + description + "MPLS netflow configuration"; + container monitor { + description + "Specify a flow monitor for packets"; + container ingress-monitors { + description + "Apply flow monitor on incoming packets"; + list ingress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container ingress-monitor-samplers { + description + "Specify a flow monitor and sampler for incoming packets"; + list ingress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for incoming packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + container egress-monitors { + description + "Apply flow monitor on outgoing packets"; + list egress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container egress-monitor-samplers { + description + "Specify a flow monitor and sampler for outgoing packets"; + list egress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for outgoing packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + } + } + container ipv6 { + if-feature "netflow_pd_allow_ipv6_kw"; + description + "IPV6 netflow configuration"; + container monitor { + description + "Specify a flow monitor for packets"; + container ingress-monitors { + description + "Apply flow monitor on incoming packets"; + list ingress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container ingress-monitor-samplers { + description + "Specify a flow monitor and sampler for incoming packets"; + list ingress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for incoming packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + container egress-monitors { + description + "Apply flow monitor on outgoing packets"; + list egress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container egress-monitor-samplers { + description + "Specify a flow monitor and sampler for outgoing packets"; + list egress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for outgoing packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + } + } + container datalinkframesection { + if-feature "netflow_pd_allow_sectiondata_kw"; + description + "Data link section netflow configuration"; + container monitor { + description + "Specify a flow monitor for packets"; + container ingress-monitors { + description + "Apply flow monitor on incoming packets"; + list ingress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container ingress-monitor-samplers { + description + "Specify a flow monitor and sampler for incoming packets"; + list ingress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for incoming packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + container egress-monitors { + description + "Apply flow monitor on outgoing packets"; + list egress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container egress-monitor-samplers { + description + "Specify a flow monitor and sampler for outgoing packets"; + list egress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for outgoing packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + } + } + container map-t { + if-feature "nf_parser_verify_wrapper_allow_intf_mapt_kw"; + description + "Map-t netflow configuration"; + container monitor { + description + "Specify a flow monitor for packets"; + container ingress-monitors { + description + "Apply flow monitor on incoming packets"; + list ingress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container ingress-monitor-samplers { + description + "Specify a flow monitor and sampler for incoming packets"; + list ingress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for incoming packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + container egress-monitors { + description + "Apply flow monitor on outgoing packets"; + list egress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container egress-monitor-samplers { + description + "Specify a flow monitor and sampler for outgoing packets"; + list egress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for outgoing packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + } + } + } + } + + grouping L2TRANS-BODY { + description + "Grouping for l2transport"; + container flow { + description + "Netflow configuration"; + container datalinkframesection { + if-feature "nf_parser_verify_wrapper_allow_l2_main_dlfs"; + description + "Data link section netflow configuration"; + container monitor { + description + "Specify a flow monitor for packets"; + container ingress-monitors { + description + "Apply flow monitor on incoming packets"; + list ingress-monitor { + key "monitor-map-name"; + description + "Specify a flow monitor for packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + } + } + container ingress-monitor-samplers { + description + "Specify a flow monitor and sampler for incoming packets"; + list ingress-monitor-sampler { + key "monitor-map-name sampler-map-name"; + description + "Specify a flow monitor and sampler for incoming packets"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Flow monitor map name"; + } + } + description + "Specify a flow monitor for packets"; + } + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Sampler map name"; + } + } + description + "Specify a sampler for packets"; + } + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface/a2:l2transport" { + description + "This augment extends active nodes configuration"; + uses L2TRANS-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a2:l2transport" { + description + "This augment extends preconfigured nodes + configuration"; + uses L2TRANS-BODY; + } + container flow { + description + "Configure a flexible flow object"; + container exporter-maps { + description + "Configure a flow exporter map"; + list exporter-map { + key "exporter-map-name"; + description + "Exporter map name"; + leaf exporter-map-name { + type xr:Cisco-ios-xr-string { + length "1..90" { + description + "Exporter map name"; + } + } + description + "Exporter map name"; + } + container destination { + description + "Export destination configuration"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "Destination IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "Destination IPv6 address"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name string"; + } + } + description + "Configure VRF to be used for reaching export destination"; + } + } + leaf source { + type xr:Interface-name; + description + "Source interface whose address can be used as source address for export packets"; + } + container source-address { + description + "Source address for export packets (has higher precedence than address from source interface)"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "Source IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "Source IPv6 address"; + } + } + leaf dscp { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + description + "Specify DSCP value for ipv4 export packets or traffic-class for ipv6 export packets"; + } + container transport { + description + "Specify the transport protocol for export packets"; + leaf udp { + type uint32 { + range "1024..65535" { + description + "Destination UDP port value"; + } + } + description + "Use UDP as transport protocol"; + } + container udp-source-port { + description + "Use UDP as transport protocol"; + leaf source-port { + type uint32 { + range "49152..65535" { + description + "UDP source port value"; + } + } + description + "UDP source port configuration"; + } + container multiple { + description + "Use multiple udp source ports for export packets"; + leaf first { + type uint32 { + range "49152..65535" { + description + "UDP source port value"; + } + } + description + "Specify the first port to use"; + } + leaf count { + type uint32 { + range "1..1024" { + description + "Number of source ports "; + } + } + description + "Specify the number of source ports to be used"; + } + } + } + } + leaf packet-length { + type uint32 { + range "512..9000" { + description + "Export Packet maximum L3 length, should conform to outgoing interface mtu"; + } + } + description + "Export Packet maximum L3 length, should conform to outgoing interface mtu"; + } + container dfbit { + description + "Specify Export Packet Do Not Fragment option"; + container set { + presence "Indicates a set node is configured."; + description + "Set Export Packet Do Not Fragment Flag"; + } + } + container version { + presence "Indicates a version node is configured."; + description + "Specify export version parameters"; + leaf export-format { + type enumeration { + enum "v9" { + value 9; + description + "Use version 9 export format"; + } + enum "ipfix" { + value 10; + description + "Use IPFIX export format"; + } + enum "sflow" { + value 11; + description + "Use sFlow export v5 format"; + } + enum "protobuf" { + value 12; + description + "Use protobuf export format"; + } + } + mandatory true; + description + "Specify export format"; + } + container template { + description + "Specify template export parameters"; + container data { + description + "Data template configuration options"; + leaf timeout { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify custom timeout for the template"; + } + } + container options { + description + "Options template configuration options"; + leaf timeout { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify custom timeout for the template"; + } + } + leaf timeout { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify custom timeout for the template"; + } + } + container options { + description + "Specify export of options template"; + container interface-table { + presence "Indicates a interface-table node is configured."; + description + "Export interface table"; + leaf timeout { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify export timeout"; + } + } + container sampler-table { + presence "Indicates a sampler-table node is configured."; + description + "Export sampler table"; + leaf timeout { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify export timeout"; + } + } + container class-table { + presence "Indicates a class-table node is configured."; + description + "Export class table"; + leaf timeout { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify export timeout"; + } + } + container vrf-table { + presence "Indicates a vrf-table node is configured."; + description + "Export VRF ID-to-name table"; + leaf timeout { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify export timeout"; + } + } + } + } + } + } + container monitor-map { + description + "Configure a flow monitor map"; + container performance-traffic { + if-feature "netflow_pd_perf_traffic_supported"; + description + "Configure a performance traffic flow monitor map"; + container monitor-maps { + description + "Monitor map name"; + list monitor-map { + key "monitor-map-name"; + description + "Monitor map name"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Monitor map name"; + } + } + description + "Monitor map name"; + } + container exporters { + description + "Specify flow exporter map name"; + list exporter { + key "exporter-name"; + description + "Specify flow exporter map name"; + leaf exporter-name { + type xr:Cisco-ios-xr-string { + length "1..90" { + description + "Exporter map name"; + } + } + description + "Specify flow exporter map name"; + } + } + } + container option { + if-feature "netflow_pd_allow_option_kw"; + description + "Select an optional feature for the flow cache"; + container outphysint { + presence "Indicates a outphysint node is configured."; + description + "export output interfaces as physical interfaces"; + } + container filtered { + presence "Indicates a filtered node is configured."; + description + "Enable filtering of records"; + } + container bgpattr { + presence "Indicates a bgpattr node is configured."; + description + "export bgp attributes AS_PATH and STD_COMMUNITY"; + } + container outbundlemember { + presence "Indicates a outbundlemember node is configured."; + description + "export output physical interfaces of bundle interface"; + } + } + container record { + description + "Specify a flow record map name"; + container default-mdi { + must "not(../default-rtp)"; + presence "Indicates a default-mdi node is configured."; + description + "Default MDI record format"; + } + container default-rtp { + must "not(../default-mdi)"; + presence "Indicates a default-rtp node is configured."; + description + "Default RTP record format"; + } + } + container sflow { + if-feature "nf_parser_verify_wrapper_allow_sflow_kw_generic"; + description + "configure sFlow related parameters"; + container options { + presence "Indicates a options node is configured."; + description + "submode to configure sFlow related options"; + container extended-router { + presence "Indicates a extended-router node is configured."; + description + "Enable extended-router flow data type"; + } + container extended-gateway { + presence "Indicates a extended-gateway node is configured."; + description + "Enable extended-gateway flow data type"; + } + container extended-ipv4-tunnel-egress { + presence "Indicates a extended-ipv4-tunnel-egress node is configured."; + description + "Enable extended-ipv4-tunnel-egress flow data type"; + } + container extended-ipv6-tunnel-egress { + presence "Indicates a extended-ipv6-tunnel-egress node is configured."; + description + "Enable extended-ipv6-tunnel-egress flow data type"; + } + container if-counters { + description + "Enable if-counter counter sampling"; + leaf polling-interval { + type uint32 { + range "5..1800" { + description + "Periodicity in seconds to collect if-counters"; + } + } + description + "Enable if-counters counter sampling rate"; + } + } + container sample-header { + description + "Enable sample-header related options"; + leaf size { + type uint32 { + range "128..343" { + description + "Sample-header maximum size in bytes"; + } + } + description + "Specify maximum sample-header size to be exported"; + } + } + container input { + description + "Enable sflow packet input parameters related options"; + leaf ifindex { + type enumeration { + enum "physical" { + value 0; + description + "Use ifindex of the physical input interface"; + } + } + description + "Specify ifindex related options"; + } + } + container output { + description + "Enable sflow packet output parameters related options"; + leaf ifindex { + type enumeration { + enum "physical" { + value 0; + description + "Use ifindex of the physical output interface"; + } + } + description + "Specify ifindex related options"; + } + } + } + } + } + } + } + container monitor-maps { + description + "Monitor map name"; + list monitor-map { + key "monitor-map-name"; + description + "Monitor map name"; + leaf monitor-map-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Monitor map name"; + } + } + description + "Monitor map name"; + } + container exporters { + description + "Specify flow exporter map name"; + list exporter { + key "exporter-name"; + description + "Specify flow exporter map name"; + leaf exporter-name { + type xr:Cisco-ios-xr-string { + length "1..90" { + description + "Exporter map name"; + } + } + description + "Specify flow exporter map name"; + } + } + } + container option { + if-feature "netflow_pd_allow_option_kw"; + description + "Select an optional feature for the flow cache"; + container outphysint { + presence "Indicates a outphysint node is configured."; + description + "export output interfaces as physical interfaces"; + } + container filtered { + presence "Indicates a filtered node is configured."; + description + "Enable filtering of records"; + } + container bgpattr { + presence "Indicates a bgpattr node is configured."; + description + "export bgp attributes AS_PATH and STD_COMMUNITY"; + } + container outbundlemember { + presence "Indicates a outbundlemember node is configured."; + description + "export output physical interfaces of bundle interface"; + } + } + container record { + description + "Specify a flow record map name"; + container ipv4 { + must + "not(../datalinksectiondump or ../ipv6 + or ../mpls or ../map-t + or ../sflow or ../datalink-record + or ../default-rtp or ../default-mdi)"; + presence "Indicates a ipv4 node is configured."; + description + "IPv4 raw record format"; + container destination { + if-feature "netflow_pd_allow_dba_kw"; + must + "not(../destination-tos or ../as + or ../protocol-port or ../prefix + or ../source-prefix or ../destination-prefix + or ../as-tos or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a destination node is configured."; + description + "IPv4 Destination Based NetFlow Accounting"; + } + container destination-tos { + if-feature "netflow_pd_allow_dba_tos_kw"; + must + "not(../destination or ../as + or ../protocol-port or ../prefix + or ../source-prefix or ../destination-prefix + or ../as-tos or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a destination-tos node is configured."; + description + "IPv4 Destination Based NetFlow Accounting TOS"; + } + container as { + if-feature "netflow_pd_allow_as_kw"; + must + "not(../destination or ../destination-tos + or ../protocol-port or ../prefix + or ../source-prefix or ../destination-prefix + or ../as-tos or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a as node is configured."; + description + "Autonomous System based aggregation"; + } + container protocol-port { + if-feature "netflow_pd_allow_protocol_port_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../prefix + or ../source-prefix or ../destination-prefix + or ../as-tos or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a protocol-port node is configured."; + description + "Protocol-Port based aggregation"; + } + container prefix { + if-feature "netflow_pd_allow_prefix_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../source-prefix or ../destination-prefix + or ../as-tos or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a prefix node is configured."; + description + "Prefix based aggregation"; + } + container source-prefix { + if-feature "netflow_pd_allow_source_prefix_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../destination-prefix + or ../as-tos or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a source-prefix node is configured."; + description + "source prefix based aggregation"; + } + container destination-prefix { + if-feature "netflow_pd_allow_destination_prefix_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../as-tos or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a destination-prefix node is configured."; + description + "Destination prefix based aggregation"; + } + container as-tos { + if-feature "netflow_pd_allow_as_tos_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../protocol-port-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a as-tos node is configured."; + description + "AS-TOS based aggregation"; + } + container protocol-port-tos { + if-feature "netflow_pd_allow_protocol_port_tos_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../prefix-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a protocol-port-tos node is configured."; + description + "Protocol, port and tos based aggregation"; + } + container prefix-tos { + if-feature "netflow_pd_allow_prefix_tos_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../protocol-port-tos or ../source-prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a prefix-tos node is configured."; + description + "Prefix TOS based aggregation"; + } + container source-prefix-tos { + if-feature "netflow_pd_allow_source_prefix_tos_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../protocol-port-tos or ../prefix-tos + or ../destination-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a source-prefix-tos node is configured."; + description + "Source, Prefix and TOS based aggregation"; + } + container destination-prefix-tos { + if-feature "netflow_pd_allow_destination_prefix_tos_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../protocol-port-tos or ../prefix-tos + or ../source-prefix-tos or ../prefix-port + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a destination-prefix-tos node is configured."; + description + "Destination, prefix and tos based aggregation"; + } + container prefix-port { + if-feature "netflow_pd_allow_prefix_port_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../protocol-port-tos or ../prefix-tos + or ../source-prefix-tos or ../destination-prefix-tos + or ../bgp-nexthop-tos or ../peer-as + or ../gtp)"; + presence "Indicates a prefix-port node is configured."; + description + "Prefix port based aggregation"; + } + container bgp-nexthop-tos { + if-feature "netflow_pd_allow_bgp_nexthop_tos_kw"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../protocol-port-tos or ../prefix-tos + or ../source-prefix-tos or ../destination-prefix-tos + or ../prefix-port or ../peer-as + or ../gtp)"; + presence "Indicates a bgp-nexthop-tos node is configured."; + description + "BGP, nexthop and tos based aggregation"; + } + container peer-as { + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../protocol-port-tos or ../prefix-tos + or ../source-prefix-tos or ../destination-prefix-tos + or ../prefix-port or ../bgp-nexthop-tos + or ../gtp)"; + presence "Indicates a peer-as node is configured."; + description + "Record peer AS"; + } + container gtp { + if-feature "nf_parser_verify_wrapper_allow_ipv4gtp_kw_generic"; + must + "not(../destination or ../destination-tos + or ../as or ../protocol-port + or ../prefix or ../source-prefix + or ../destination-prefix or ../as-tos + or ../protocol-port-tos or ../prefix-tos + or ../source-prefix-tos or ../destination-prefix-tos + or ../prefix-port or ../bgp-nexthop-tos + or ../peer-as)"; + presence "Indicates a gtp node is configured."; + description + "IPV4 gtp record format"; + } + } + container datalinksectiondump { + must + "not(../ipv4 or ../ipv6 + or ../mpls or ../map-t + or ../sflow or ../datalink-record + or ../default-rtp or ../default-mdi)"; + presence "Indicates a datalinksectiondump node is configured."; + description + "dump data link section"; + } + container ipv6 { + if-feature "netflow_pd_allow_ipv6_kw"; + must + "not(../ipv4 or ../datalinksectiondump + or ../mpls or ../map-t + or ../sflow or ../datalink-record + or ../default-rtp or ../default-mdi)"; + presence "Indicates a ipv6 node is configured."; + description + "IPv6 raw record format"; + container destination { + if-feature "netflow_pd_allow_ipv6dba_kw"; + must + "not(../peer-as or ../gtp + or ../srv6)"; + presence "Indicates a destination node is configured."; + description + "IPv6 Destination Based NetFlow Accounting"; + } + container peer-as { + must + "not(../destination or ../gtp + or ../srv6)"; + presence "Indicates a peer-as node is configured."; + description + "Record peer AS"; + } + container gtp { + if-feature "nf_parser_verify_wrapper_allow_ipv6gtp_kw_generic"; + must + "not(../destination or ../peer-as + or ../srv6)"; + presence "Indicates a gtp node is configured."; + description + "IPV6 gtp record format"; + } + container srv6 { + if-feature "nf_parser_verify_wrapper_allow_srv6_kw_generic"; + must + "not(../destination or ../peer-as + or ../gtp)"; + presence "Indicates a srv6 node is configured."; + description + "SRv6 record format"; + } + } + container mpls { + if-feature "netflow_pd_allow_mpls_kw"; + must + "not(../ipv4 or ../datalinksectiondump + or ../ipv6 or ../map-t + or ../sflow or ../datalink-record + or ../default-rtp or ../default-mdi)"; + presence "Indicates a mpls node is configured."; + description + "MPLS record format"; + container ipv4-fields { + must "not(../ipv6-fields or ../ipv4-ipv6-fields)"; + presence "Indicates a ipv4-fields node is configured."; + description + "MPLS with IPv4 fields format"; + } + container ipv6-fields { + must "not(../ipv4-fields or ../ipv4-ipv6-fields)"; + presence "Indicates a ipv6-fields node is configured."; + description + "MPLS with IPv6 fields format"; + } + container ipv4-ipv6-fields { + must "not(../ipv4-fields or ../ipv6-fields)"; + presence "Indicates a ipv4-ipv6-fields node is configured."; + description + "MPLS with IPv4 and IPv6 fields format"; + } + leaf labels { + type uint32 { + range "1..6" { + description + "Number of Labels to be used for Hashing"; + } + } + description + "Labels to be used for Hashing"; + } + } + container map-t { + if-feature "nf_parser_verify_wrapper_allow_record_mapt_kw"; + must + "not(../ipv4 or ../datalinksectiondump + or ../ipv6 or ../mpls + or ../sflow or ../datalink-record + or ../default-rtp or ../default-mdi)"; + presence "Indicates a map-t node is configured."; + description + "map-t translation based Netflow"; + } + container sflow { + if-feature "nf_parser_verify_wrapper_allow_sflow_kw_generic"; + must + "not(../ipv4 or ../datalinksectiondump + or ../ipv6 or ../mpls + or ../map-t or ../datalink-record + or ../default-rtp or ../default-mdi)"; + presence "Indicates a sflow node is configured."; + description + "sFlow based flow"; + } + container datalink-record { + if-feature "nf_parser_verify_wrapper_allow_fmm_l2_record"; + must + "not(../ipv4 or ../datalinksectiondump + or ../ipv6 or ../mpls + or ../map-t or ../sflow + or ../default-rtp or ../default-mdi)"; + presence "Indicates a datalink-record node is configured."; + description + "Layer2 traffic based flow"; + } + container default-rtp { + must + "not(../ipv4 or ../datalinksectiondump + or ../ipv6 or ../mpls + or ../map-t or ../sflow + or ../datalink-record or ../default-mdi)"; + presence "Indicates a default-rtp node is configured."; + description + "Default RTP record format"; + } + container default-mdi { + must + "not(../ipv4 or ../datalinksectiondump + or ../ipv6 or ../mpls + or ../map-t or ../sflow + or ../datalink-record or ../default-rtp)"; + presence "Indicates a default-mdi node is configured."; + description + "Default MDI record format"; + } + } + container cache { + description + "Specify flow cache attributes"; + leaf entries { + type uint32 { + range "4096..1000000" { + description + "Number of flow cache entries"; + } + } + description + "Specify the number of entries in the flow cache"; + } + container timeout { + description + "Specify the flow cache timeouts"; + leaf active { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify the active flow timeout"; + } + leaf inactive { + type uint32 { + range "0..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify the inactive flow timeout"; + } + leaf update { + type uint32 { + range "1..604800" { + description + "Timeout value in seconds"; + } + } + description + "Specify the update timeout"; + } + leaf rate-limit { + type uint32 { + range "1..1000000" { + description + "Entries per second"; + } + } + description + "Maximum number of entries to age each second"; + } + } + container permanent { + must "not(../immediate)"; + presence "Indicates a permanent node is configured."; + description + "Disable removal of entries from flow cache"; + } + container immediate { + must "not(../permanent)"; + presence "Indicates a immediate node is configured."; + description + "Immediate removal of entries from flow cache"; + } + } + container hw-cache { + description + "Specify hw-cache parameters if the flow has a hw-cache"; + container timeout { + description + "Specify the hw-cache related timeouts"; + leaf inactive { + type uint32 { + range "50..1800" { + description + "Timeout value in seconds"; + } + } + description + "Specify the inactive timeout"; + } + } + } + container sflow { + if-feature "nf_parser_verify_wrapper_allow_sflow_kw_generic"; + description + "configure sFlow related parameters"; + container options { + presence "Indicates a options node is configured."; + description + "submode to configure sFlow related options"; + container extended-router { + presence "Indicates a extended-router node is configured."; + description + "Enable extended-router flow data type"; + } + container extended-gateway { + presence "Indicates a extended-gateway node is configured."; + description + "Enable extended-gateway flow data type"; + } + container extended-ipv4-tunnel-egress { + presence "Indicates a extended-ipv4-tunnel-egress node is configured."; + description + "Enable extended-ipv4-tunnel-egress flow data type"; + } + container extended-ipv6-tunnel-egress { + presence "Indicates a extended-ipv6-tunnel-egress node is configured."; + description + "Enable extended-ipv6-tunnel-egress flow data type"; + } + container if-counters { + description + "Enable if-counter counter sampling"; + leaf polling-interval { + type uint32 { + range "5..1800" { + description + "Periodicity in seconds to collect if-counters"; + } + } + description + "Enable if-counters counter sampling rate"; + } + } + container sample-header { + description + "Enable sample-header related options"; + leaf size { + type uint32 { + range "128..343" { + description + "Sample-header maximum size in bytes"; + } + } + description + "Specify maximum sample-header size to be exported"; + } + } + container input { + description + "Enable sflow packet input parameters related options"; + leaf ifindex { + type enumeration { + enum "physical" { + value 0; + description + "Use ifindex of the physical input interface"; + } + } + description + "Specify ifindex related options"; + } + } + container output { + description + "Enable sflow packet output parameters related options"; + leaf ifindex { + type enumeration { + enum "physical" { + value 0; + description + "Use ifindex of the physical output interface"; + } + } + description + "Specify ifindex related options"; + } + } + } + } + } + } + } + } + container sampler-maps { + description + "Configure a sampler map"; + list sampler-map { + key "sampler-map-name"; + description + "Sampler map name"; + leaf sampler-map-name { + type xr:Cisco-ios-xr-string { + length "1..90" { + description + "Sampler map name"; + } + } + description + "Sampler map name"; + } + leaf random { + type uint32 { + range "1" { + description + "Number of packets to be sampled in the sampling interval"; + } + } + must "../out-of"; + description + "Use random mode for sampling packets"; + } + leaf out-of { + type uint32 { + range "1..262144" { + description + "Sampling interval in units of packets"; + } + } + must "../random"; + description + "Sample one packet out of"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-flowspec-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-flowspec-cfg.yang new file mode 100644 index 000000000..a6b44d7cd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-flowspec-cfg.yang @@ -0,0 +1,221 @@ +module Cisco-IOS-XR-um-flowspec-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-flowspec-cfg"; + prefix um-flowspec-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 flowspec package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "2.1.0"; + } + revision 2021-07-20 { + description + "Removed duplicate flowspec container under ipv4/ipv6"; + semver:module-version "2.0.0"; + } + revision 2021-01-05 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container flowspec { + presence "Indicates a flowspec node is configured."; + description + "FlowSpec configuration"; + container address-families { + description + "Address Family Identifier Type (IPv4/IPv6)"; + list address-family { + key "af-name"; + description + "Address Family Identifier Type (IPv4/IPv6)"; + leaf af-name { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 FlowSpec"; + } + enum "ipv6" { + value 2; + description + "IPv6 FlowSpec"; + } + } + description + "Address Family Identifier Type (IPv4/IPv6)"; + } + container service-policies { + description + "Service Policy configuration"; + list service-policy { + key "type policy-name"; + description + "Service Policy configuration"; + leaf type { + type enumeration { + enum "pbr" { + value 2; + description + "PBR policy type"; + } + } + description + "Type of the service policy"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Policy map name"; + } + } + description + "Policy map name"; + } + container local { + presence "Indicates a local node is configured."; + description + "Only install locally, do not redistribute."; + } + } + } + container local-install { + description + "Local installation of FlowSpec policy"; + container interface-all { + presence "Indicates a interface-all node is configured."; + description + "Install FlowSpec policy on all interfaces"; + } + } + } + } + container vrfs { + description + "VRF configuration"; + list vrf { + key "vrf-name"; + description + "VRF configuration"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF Name"; + } + } + description + "VRF configuration"; + } + container address-families { + description + "Address Family Identifier Type (IPv4/IPv6)"; + list address-family { + key "af-name"; + description + "Address Family Identifier Type (IPv4/IPv6)"; + leaf af-name { + type enumeration { + enum "ipv4" { + value 1; + description + "IPv4 FlowSpec"; + } + enum "ipv6" { + value 2; + description + "IPv6 FlowSpec"; + } + } + description + "Address Family Identifier Type (IPv4/IPv6)"; + } + container service-policies { + description + "Service Policy configuration"; + list service-policy { + key "type policy-name"; + description + "Service Policy configuration"; + leaf type { + type enumeration { + enum "pbr" { + value 2; + description + "PBR policy type"; + } + } + description + "Type of the service policy"; + } + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Policy map name"; + } + } + description + "Policy map name"; + } + container local { + presence "Indicates a local node is configured."; + description + "Only install locally, do not redistribute."; + } + } + } + container local-install { + description + "Local installation of FlowSpec policy"; + container interface-all { + presence "Indicates a interface-all node is configured."; + description + "Install FlowSpec policy on all interfaces"; + } + } + } + } + } + } + container local-install { + description + "Local installation of FlowSpec policy"; + container interface-all { + presence "Indicates a interface-all node is configured."; + description + "Install FlowSpec policy on all interfaces"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-fpd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-fpd-cfg.yang new file mode 100644 index 000000000..8e44e88bf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-fpd-cfg.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-um-fpd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-fpd-cfg"; + prefix um-fpd-cfg; + + 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 fpd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container fpd { + description + "FPD firmware configuration"; + container auto-upgrade { + description + "FPD auto-upgrade configuration"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable fpd auto upgrade"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable fpd auto upgrade"; + } + } + container auto-reload { + description + "Auto-reload node(Linecard) after FPD auto-upgrade"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable fpd auto reload`"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable fpd auto reload`"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-frequency-synchronization-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-frequency-synchronization-cfg.yang new file mode 100644 index 000000000..1e9175aa6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-frequency-synchronization-cfg.yang @@ -0,0 +1,5257 @@ +module Cisco-IOS-XR-um-frequency-synchronization-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-frequency-synchronization-cfg"; + prefix um-frequency-synchronization-cfg; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a2; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + import tailf-common { + prefix tailf; + } + 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 frequency-synchronization package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "2.1.0"; + } + revision 2021-08-17 { + description + "Added container port-parameters and shutdown + 2021-03-30 + Updated with statement for 800G interface"; + semver:module-version "2.0.0"; + } + revision 2021-01-06 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container frequency { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'CPRIoE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Frequency Synchronization configuration"; + container synchronization { + presence "Indicates a synchronization node is configured."; + description + "Frequency Synchronization configuration"; + container ssm { + description + "SSM configuration commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable sending of SSMs"; + } + } + leaf priority { + type uint32 { + range "1..254" { + description + "Source priority"; + } + } + description + "Source priority"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254" { + description + "Source time-of-day priority"; + } + } + description + "Source time-of-day priority"; + } + container quality { + description + "Quality level configuration"; + container transmit { + description + "Set the quality level to be transmitted"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + container receive { + description + "Adjust the received quality level"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + } + leaf wait-to-restore { + type uint32 { + range "0..12" { + description + "Wait-to-restore time, in minutes"; + } + } + description + "Set the wait-to-restore time"; + } + container selection { + description + "Selection configuration commands"; + container input { + presence "Indicates a input node is configured."; + description + "Enable this source for selection"; + } + } + } + } + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container frequency { + when "../a1:controller-name[starts-with(text(),'SONET')]" { + tailf:dependency "../a1:controller-name"; + } + description + "Frequency Synchronization configuration"; + container synchronization { + presence "Indicates a synchronization node is configured."; + description + "Frequency Synchronization configuration"; + container ssm { + description + "SSM configuration commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable sending of SSMs"; + } + } + leaf priority { + type uint32 { + range "1..254" { + description + "Source priority"; + } + } + description + "Source priority"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254" { + description + "Source time-of-day priority"; + } + } + description + "Source time-of-day priority"; + } + container quality { + description + "Quality level configuration"; + container transmit { + description + "Set the quality level to be transmitted"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + container receive { + description + "Adjust the received quality level"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + } + leaf wait-to-restore { + type uint32 { + range "0..12" { + description + "Wait-to-restore time, in minutes"; + } + } + description + "Set the wait-to-restore time"; + } + container selection { + description + "Selection configuration commands"; + container input { + presence "Indicates a input node is configured."; + description + "Enable this source for selection"; + } + } + } + } + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container clock-interface { + description + "Clock interface configuration commands"; + container syncs { + description + "Synchronization clock interface"; + list sync { + key "sync-id"; + description + "Synchronization clock interface"; + leaf sync-id { + type uint32 { + range "0..4294967295" { + description + "Clock interface port number"; + } + } + description + "Synchronization clock interface"; + } + container frequency { + description + "Frequency Synchronization configuration"; + container synchronization { + description + "Frequency Synchronization configuration"; + container ssm { + description + "SSM configuration commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable sending of SSMs"; + } + } + leaf priority { + type uint32 { + range "1..254" { + description + "Source priority"; + } + } + description + "Source priority"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254" { + description + "Source time-of-day priority"; + } + } + description + "Source time-of-day priority"; + } + container quality { + description + "Quality level configuration"; + container transmit { + description + "Set the quality level to be transmitted"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + container receive { + description + "Adjust the received quality level"; + container lowest { + description + "Specify the lowest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container highest { + description + "Specify the highest acceptable QL value"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two or + ../../../../exact/itu-t/option/one or + ../../../../exact/itu-t/option/two/generation/one or + ../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two or + ../../../../../../exact/itu-t/option/one or + ../../../../../../exact/itu-t/option/two/generation/one or + ../../../../../../exact/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container exact { + description + "Specify the exact QL value to use"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + leaf one { + type enumeration { + enum "prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference timing clock"; + } + enum "ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment clock"; + } + enum "eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "dnu" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../two/generation/one or + ../two/generation/two or + ../../../../highest/itu-t/option/two/generation/one or + ../../../../highest/itu-t/option/two/generation/two or + ../../../../lowest/itu-t/option/one or + ../../../../lowest/itu-t/option/two/generation/one or + ../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + leaf one { + type enumeration { + enum "prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference source"; + } + enum "prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference timing clock"; + } + enum "e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary reference timing clock"; + } + enum "stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - traceability unknown"; + } + enum "st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self timed"; + } + enum "eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet equipment clock"; + } + enum "e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../two or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/two or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 1"; + } + leaf two { + type enumeration { + enum "prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference source"; + } + enum "prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference timing clock"; + } + enum "e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary reference timing clock"; + } + enum "stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - traceability unknown"; + } + enum "st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node clock"; + } + enum "st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self timed"; + } + enum "eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet equipment clock"; + } + enum "e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Ethernet ethernet equipment clock"; + } + enum "st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "dus" { + value 1; + description + "This signal should not be used for synchronization"; + } + } + must + "not(../../../one or + ../one or + ../../../../../../highest/itu-t/option/one or + ../../../../../../highest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/one or + ../../../../../../lowest/itu-t/option/two/generation/one or + ../../../../../../lowest/itu-t/option/two/generation/two)"; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + } + } + leaf wait-to-restore { + type uint32 { + range "0..12" { + description + "Wait-to-restore time, in minutes"; + } + } + description + "Set the wait-to-restore time"; + } + container selection { + description + "Selection configuration commands"; + container input { + presence "Indicates a input node is configured."; + description + "Enable this source for selection"; + } + } + } + } + container port-parameters { + description + "clock port parameter setting"; + container bits-input { + description + "BITS RX interface"; + container t1 { + description + "t1 mode"; + container esf { + description + "esf mode"; + container ami { + must "not(../b8zs)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container b8zs { + must "not(../ami)"; + presence "Indicates a b8zs node is configured."; + description + "b8zs mode"; + } + } + container d4 { + description + "d4 mode"; + container ami { + must "not(../b8zs)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container b8zs { + must "not(../ami)"; + presence "Indicates a b8zs node is configured."; + description + "b8zs mode"; + } + } + } + container e1 { + description + "e1 mode"; + container non-crc-4 { + description + "non-crc-4 mode"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container crc-4 { + description + "crc4 mode"; + container sa4 { + description + "SSM on Sa4 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa5 { + description + "SSM on Sa5 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa6 { + description + "SSM on Sa6 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa7 { + description + "SSM on Sa7 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa8 { + description + "SSM on Sa8 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + } + } + container two-m { + must "not(../sixty-four-k-input-only)"; + presence "Indicates a two-m node is configured."; + description + "2m mode"; + } + container sixty-four-k-input-only { + must "not(../two-m)"; + presence "Indicates a sixty-fourk-input-only node is configured."; + description + "64k-input-only mode"; + } + } + container bits-output { + description + "BITS TX interface"; + container t1 { + description + "t1 mode"; + container esf { + description + "esf mode"; + container ami { + description + "ami mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + container b8zs { + description + "b8zs mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + } + container d4 { + description + "d4 mode"; + container ami { + description + "ami mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + container b8zs { + description + "b8zs mode"; + container zero { + must + "not(../one or ../two + or ../three or ../four)"; + presence "Indicates a zero node is configured."; + description + "line buildout 0-133ft"; + } + container one { + must + "not(../zero or ../two + or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "line buildout 134-266ft"; + } + container two { + must + "not(../zero or ../one + or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "line buildout 267-399ft"; + } + container three { + must + "not(../zero or ../one + or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "line buildout 400-533ft"; + } + container four { + must + "not(../zero or ../one + or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "line buildout 534-655ft"; + } + } + } + } + container e1 { + description + "e1 mode"; + container non-crc-4 { + description + "non-crc-4 mode"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container crc-4 { + description + "crc4 mode"; + container sa4 { + description + "SSM on Sa4 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa5 { + description + "SSM on Sa5 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa6 { + description + "SSM on Sa6 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa7 { + description + "SSM on Sa7 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + container sa8 { + description + "SSM on Sa8 bit channel"; + container ami { + must "not(../hdb3)"; + presence "Indicates a ami node is configured."; + description + "ami mode"; + } + container hdb3 { + must "not(../ami)"; + presence "Indicates a hdb3 node is configured."; + description + "hdb3 mode"; + } + } + } + } + container two-m { + must "not(../six-m-output-only)"; + presence "Indicates a two-m node is configured."; + description + "2m mode"; + } + container six-m-output-only { + must "not(../two-m)"; + presence "Indicates a six-m-output-only node is configured."; + description + "6m-output-only mode"; + } + } + container gps-input { + description + "GPS TOD/10MHz/1PPS input interface"; + container tod-format { + description + "Specify the TOD msg format"; + container cisco { + description + "TOD msg in Cisco ASCII format"; + container pps-input { + description + "Specify the 1PPS input mode select"; + container ttl { + must "not(../rs422)"; + presence "Indicates a ttl node is configured."; + description + "TTL 1PPS input"; + } + container rs422 { + must "not(../ttl)"; + presence "Indicates a rs422 node is configured."; + description + "RS422 1PPS input"; + } + } + } + container ntp4 { + description + "TOD msg in NTP Type 4 format"; + container pps-input { + description + "Specify the 1PPS input mode select"; + container ttl { + must "not(../rs422)"; + presence "Indicates a ttl node is configured."; + description + "TTL 1PPS input"; + } + container rs422 { + must "not(../ttl)"; + presence "Indicates a rs422 node is configured."; + description + "RS422 1PPS input"; + } + } + } + container gprmc { + description + "TOD msg in NMEA/GPRMC format"; + container pps-input { + description + "Specify the 1PPS input mode select"; + container ttl { + must "not(../rs422)"; + presence "Indicates a ttl node is configured."; + description + "TTL 1PPS input"; + } + container rs422 { + must "not(../ttl)"; + presence "Indicates a rs422 node is configured."; + description + "RS422 1PPS input"; + } + } + } + } + container offset { + description + "Set a fixed offset from received TOD to translate into PTP time"; + container utc { + must "not(../tai or ../gps)"; + presence "Indicates a utc node is configured."; + description + "ToD provides UTC time"; + } + container tai { + must "not(../utc or ../gps)"; + presence "Indicates a tai node is configured."; + description + "ToD provides TAI time"; + } + container gps { + must "not(../utc or ../tai)"; + presence "Indicates a gps node is configured."; + description + "ToD provides GPS time"; + } + } + container baud-rate { + description + "Set the baud-rate for the ToD UART input"; + container bps-1200 { + must + "not(../bps-2400 or ../bps-4800 + or ../bps-9600 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-1200 node is configured."; + description + "1200 bps"; + } + container bps-2400 { + must + "not(../bps-1200 or ../bps-4800 + or ../bps-9600 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-2400 node is configured."; + description + "2400 bps"; + } + container bps-4800 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-9600 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-4800 node is configured."; + description + "4800 bps"; + } + container bps-9600 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-19200 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-9600 node is configured."; + description + "9600 bps"; + } + container bps-19200 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-38400 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-19200 node is configured."; + description + "19200 bps"; + } + container bps-38400 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-19200 or ../bps-76800 + or ../bps-153600)"; + presence "Indicates a bps-38400 node is configured."; + description + "38400 bps"; + } + container bps-76800 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-19200 or ../bps-38400 + or ../bps-153600)"; + presence "Indicates a bps-76800 node is configured."; + description + "76800 bps"; + } + container bps-153600 { + must + "not(../bps-1200 or ../bps-2400 + or ../bps-4800 or ../bps-9600 + or ../bps-19200 or ../bps-38400 + or ../bps-76800)"; + presence "Indicates a bps-153600 node is configured."; + description + "153600 bps"; + } + } + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Disable the SyncE Port"; + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + augment "/a2:snmp-server/a2:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container frequency { + description + "Enable Frequency Synchronization traps"; + container synchronization { + presence "Indicates a synchronization node is configured."; + description + "Enable Frequency Synchronization traps"; + } + leaf synchronization-quality-level { + type enumeration { + enum "dnu" { + value 1; + description + "DNU"; + } + enum "prc" { + value 2; + description + "PRC"; + } + enum "sec" { + value 3; + description + "SEC"; + } + enum "ssu-a" { + value 4; + description + "SSU-A"; + } + enum "ssu-b" { + value 5; + description + "SSU-B"; + } + } + description + "Quality level trap"; + } + } + } + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } + container frequency { + description + "Frequency Synchronization configuration"; + container synchronization { + presence "Indicates a synchronization node is configured."; + description + "Frequency Synchronization configuration"; + container quality { + description + "Quality level option selection"; + container itu-t { + description + "ITU-T QL options"; + container option { + description + "ITU-T QL options"; + container one { + presence "Indicates a one node is configured."; + description + "ITU-T QL option 1"; + } + container two { + description + "ITU-T QL option 2"; + container generation { + description + "ITU-T QL option 2 generation"; + container one { + must "not(../../../../option/one or ../two)"; + presence "Indicates a one node is configured."; + description + "ITU-T QL option 2, generation 1"; + } + container two { + must "not(../../../../option/one or ../one)"; + presence "Indicates a two node is configured."; + description + "ITU-T QL option 2, generation 2"; + } + } + } + } + } + } + container clock-interface { + description + "Clock interface configuration"; + container timing-mode { + description + "Clock interface timing mode"; + container system { + must "not(../independent)"; + presence "Indicates a system node is configured."; + description + "Use the system's selected timing source for clock-interface output"; + } + container independent { + must "not(../system)"; + presence "Indicates a independent node is configured."; + description + "Use the line interfaces for clock-interface output, which is not looped back to the clock-interface input"; + } + } + } + container system { + description + "System timing configuration"; + container timing-mode { + description + "System timing mode"; + container line-only { + must "not(../clock-only)"; + presence "Indicates a line-only node is configured."; + description + "Use only line-interfaces for system timing"; + } + container clock-only { + must "not(../line-only)"; + presence "Indicates a clock-only node is configured."; + description + "Use only clock-interfaces for system timing"; + } + } + } + container log { + description + "Logging options"; + container selection { + description + "Selection logging options"; + container changes { + must "not(../errors)"; + presence "Indicates a changes node is configured."; + description + "Log both selection changes and errors"; + } + container errors { + must "not(../changes)"; + presence "Indicates a errors node is configured."; + description + "Log selection errors"; + } + } + } + container clock-identity { + description + "Clock ID configuration"; + leaf mac-address { + type yang:mac-address; + description + "MAC address to use to form the clock ID"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ftp-tftp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ftp-tftp-cfg.yang new file mode 100644 index 000000000..0f537fc46 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ftp-tftp-cfg.yang @@ -0,0 +1,636 @@ +module Cisco-IOS-XR-um-ftp-tftp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ftp-tftp-cfg"; + prefix um-ftp-tftp-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 ftp-tftp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-12 { + description + "Add the must statement to the vrf list"; + semver:module-version "1.0.0"; + } + revision 2020-12-14 { + description + "Initial release"; + } + + container ftp { + description + "Global FTP configuration commands"; + container client { + description + "FTP client configuration commands"; + container vrfs { + description + "VRF name for FTP service"; + list vrf { + must "passive or source-interface or anonymous-password or username or password/encrypted"; + key "vrf-name"; + description + "VRF name for FTP service"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + description + "VRF name for FTP service"; + } + container passive { + presence "Indicates a passive node is configured."; + description + "Connect using passive mode"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in FTP connections"; + } + leaf anonymous-password { + type xr:Proprietary-password; + description + "Specify a password for anonymous users"; + } + leaf username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "FTP username"; + } + } + description + "Specify username for FTP connections"; + } + container password { + description + "Specify password for ftp connection"; + leaf encrypted { + type xr:Proprietary-password; + description + "Specify an encrypted password"; + } + } + } + } + } + } + container tftp { + description + "Global TFTP configuration commands"; + container vrfs { + description + "VRF name for TFTP service"; + list vrf { + must + "ipv4/server/access-list or ipv4/server/max-servers or ipv4/server/dscp or ipv4/server/homedir or + ipv6/server/access-list or ipv6/server/max-servers or ipv6/server/dscp or ipv6/server/homedir"; + key "vrf-name"; + description + "VRF name for TFTP service"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + description + "VRF name for TFTP service"; + } + container ipv4 { + description + "Ipv4"; + container server { + description + "server"; + leaf access-list { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Access list - Maximum 64 characters"; + } + } + must "../homedir"; + description + "Access list"; + } + leaf max-servers { + type union { + type enumeration { + enum "no-limit" { + value 0; + description + "No limit to number of allowable UDP max servers"; + } + } + type uint32 { + range "1..2147483647"; + } + } + must "../homedir"; + description + "Set number of allowable UDP max servers"; + } + leaf homedir { + type string { + length "1..64" { + description + "Access list - Maximum 64 characters"; + } + } + description + "home directory"; + } + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + must "../homedir"; + description + "Set IP DSCP (DiffServ CodePoint) for TFTP Server Packets af11 ..."; + } + } + } + container ipv6 { + description + "Ipv6"; + container server { + description + "server"; + leaf access-list { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Access list - Maximum 64 characters"; + } + } + must "../homedir"; + description + "Access list"; + } + leaf max-servers { + type union { + type enumeration { + enum "no-limit" { + value 0; + description + "No limit to number of allowable UDP max servers"; + } + } + type uint32 { + range "1..2147483647"; + } + } + must "../homedir"; + description + "Set number of allowable UDP max servers"; + } + leaf homedir { + type string { + length "1..64" { + description + "Access list - Maximum 64 characters"; + } + } + description + "home directory"; + } + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + must "../homedir"; + description + "Set IP DSCP (DiffServ CodePoint) for TFTP Server Packets af11 ..."; + } + } + } + } + } + } + container tftp-fs { + description + "Global TFTP configuration commands"; + container client { + description + "TFTP client configuration commands"; + container vrfs { + description + "VRF name for TFTP service"; + list vrf { + must "source-interface or retries or timeout or dscp"; + key "vrf-name"; + description + "VRF name for TFTP service"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + description + "VRF name for TFTP service"; + } + leaf source-interface { + type xr:Interface-name; + description + "Specify interface for source address in TFTP connections"; + } + leaf retries { + type uint32 { + range "0..256" { + description + " TFTP initial maximum retry times"; + } + } + description + "Specify the number of retries when client requests TFTP connections"; + } + leaf timeout { + type uint32 { + range "0..256" { + description + " TFTP initial maximum timeout "; + } + } + description + "Specify the timeout for every TFTP connection in seconds"; + } + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + description + "Set IP DSCP (DiffServ CodePoint) for TFTP Client Packets"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-gnss-receiver-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-gnss-receiver-cfg.yang new file mode 100644 index 000000000..c66a4fd56 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-gnss-receiver-cfg.yang @@ -0,0 +1,604 @@ +module Cisco-IOS-XR-um-gnss-receiver-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-gnss-receiver-cfg"; + prefix um-gnss-receiver-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 gnss-receiver package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-10-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + typedef Fsync-ql-option { + type enumeration { + enum "option-1" { + value 1; + description + "ITU-T Option 1"; + } + enum "option-2,-generation-1" { + value 2; + description + "ITU-T Option 2, Generation 1"; + } + enum "option-2,-generation-2" { + value 3; + description + "ITU-T Option 2, Generation 2"; + } + } + description + "Fsync ql option"; + } + + typedef Fsync-ql-value { + type enumeration { + enum "dnu" { + value 1; + description + "This signal should not be used for + synchronization"; + } + enum "o1-e-prtc" { + value 20; + description + "ITU-T Option 1: Enhanced primary reference + timing clock"; + } + enum "o1-prtc" { + value 21; + description + "ITU-T Option 1: Primary reference timing clock"; + } + enum "o1-prc" { + value 22; + description + "ITU-T Option 1: Primary reference clock"; + } + enum "o1-ssu-a" { + value 23; + description + "ITU-T Option 1: Type I or V subordinate clock"; + } + enum "o1-ssu-b" { + value 24; + description + "ITU-T Option 1: Type IV subordinate clock"; + } + enum "o1-e-eec" { + value 25; + description + "ITU-T Option 1: Enhanced ethernet equipment + clock"; + } + enum "o1-eec1" { + value 26; + description + "ITU-T Option 1: Ethernet equipment clock"; + } + enum "o1-sec" { + value 27; + description + "ITU-T Option 1: SONET equipment clock"; + } + enum "o1-e-prc" { + value 28; + description + "ITU-T Option 1: Enhanced primary reference + clock"; + } + enum "o2-g1-e-prtc" { + value 40; + description + "ITU-T Option 2, Generation 1: Enhanced primary + reference timing clock"; + } + enum "o2-g1-prtc" { + value 41; + description + "ITU-T Option 2, Generation 1: Primary reference + timing clock"; + } + enum "o2-g1-prs" { + value 42; + description + "ITU-T Option 2, Generation 1: Primary reference + source"; + } + enum "o2-g1-stu" { + value 43; + description + "ITU-T Option 2, Generation 1: Synchronized - + traceability unknown"; + } + enum "o2-g1-st2" { + value 44; + description + "ITU-T Option 2, Generation 1: Stratum 2"; + } + enum "o2-g1-st3" { + value 45; + description + "ITU-T Option 2, Generation 1: Stratum 3"; + } + enum "o2-g1-e-eec" { + value 46; + description + "ITU-T Option 2, Generation 1: Enhanced ethernet + equipment clock"; + } + enum "o2-g1-eec2" { + value 47; + description + "ITU-T Option 2, Generation 1: Ethernet + equipment clock"; + } + enum "o2-g1-smc" { + value 48; + description + "ITU-T Option 2, Generation 1: SONET clock self + timed"; + } + enum "o2-g1-st4" { + value 49; + description + "ITU-T Option 2, Generation 1: Stratum 4 freerun"; + } + enum "o2-g1-e-prc" { + value 51; + description + "ITU-T Option 2, Generation 1: Enhanced primary + reference clock"; + } + enum "o2-g2-e-prtc" { + value 60; + description + "ITU-T Option 2, Generation 2: Enhanced primary + reference timing clock"; + } + enum "o2-g2-prtc" { + value 61; + description + "ITU-T Option 2, Generation 2: Primary reference + timing clock"; + } + enum "o2-g2-prs" { + value 62; + description + "ITU-T Option 2, Generation 2: Primary reference + source"; + } + enum "o2-g2-stu" { + value 63; + description + "ITU-T Option 2, Generation 2: Synchronized - + traceability unknown"; + } + enum "o2-g2-st2" { + value 64; + description + "ITU-T Option 2, Generation 2: Stratum 2"; + } + enum "o2-g2-tnc" { + value 65; + description + "ITU-T Option 2, Generation 2: Transit node + clock"; + } + enum "o2-g2-st3e" { + value 66; + description + "ITU-T Option 2, Generation 2: Stratum 3E"; + } + enum "o2-g2-st3" { + value 67; + description + "ITU-T Option 2, Generation 2: Stratum 3"; + } + enum "o2-g2-e-eec" { + value 68; + description + "ITU-T Option 2, Generation 2: Enhanced ethernet + equipment clock"; + } + enum "o2-g2-eec2" { + value 69; + description + "ITU-T Option 2, Generation 2: Ethernet + equipment clock"; + } + enum "o2-g2-smc" { + value 70; + description + "ITU-T Option 2, Generation 2: SONET clock self + timed"; + } + enum "o2-g2-st4" { + value 71; + description + "ITU-T Option 2, Generation 2: Stratum 4 freerun"; + } + enum "o2-g2-e-prc" { + value 73; + description + "ITU-T Option 2, Generation 2: Enhanced primary + reference clock"; + } + } + description + "Fsync ql value"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container gnss-receivers { + description + "GNSS receiver configuration commands"; + list gnss-receiver { + key "gnss-receiver-id"; + description + "GNSS receiver configuration commands"; + leaf gnss-receiver-id { + type uint32 { + range "0..4294967295" { + description + "GNSS receiver number"; + } + } + description + "GNSS receiver configuration commands"; + } + container frequency { + description + "Frequency Synchronization configuration"; + container synchronization { + description + "Frequency Synchronization configuration"; + container ssm { + description + "SSM configuration commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable sending of SSMs"; + } + } + leaf priority { + type uint32 { + range "1..254" { + description + "Source priority"; + } + } + description + "Source priority"; + } + leaf time-of-day-priority { + type uint32 { + range "1..254" { + description + "Source time-of-day priority"; + } + } + description + "Source time-of-day priority"; + } + container quality { + description + "Quality level configuration"; + container transmit { + description + "Set the quality level to be transmitted"; + leaf quality-level-option { + type Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + container receive { + description + "Adjust the received quality level"; + leaf quality-level-option { + type Fsync-ql-option; + must "../exact-quality-level-value or ../min-quality-level-value or ../max-quality-level-value or (../min-quality-level-value and ../max-quality-level-value)"; + description + "Quality level option"; + } + leaf exact-quality-level-value { + type Fsync-ql-value; + must "../quality-level-option and not(../min-quality-level-value or ../max-quality-level-value)"; + description + "Exact quality level value"; + } + leaf min-quality-level-value { + type Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Minimum quality level value"; + } + leaf max-quality-level-value { + type Fsync-ql-value; + must "../quality-level-option and not(../exact-quality-level-value)"; + description + "Maximum quality level value"; + } + } + } + leaf wait-to-restore { + type uint32 { + range "0..12" { + description + "Wait-to-restore time, in minutes"; + } + } + description + "Set the wait-to-restore time"; + } + container selection { + description + "Selection configuration commands"; + container input { + presence "Indicates a input node is configured."; + description + "Enable this source for selection"; + } + } + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Shutdown the GNSS receiver"; + } + container anti-jam { + description + "Anti-jam mode configuration"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable anti-jam mode"; + } + } + container constellation { + description + "Constellation configuration"; + container auto { + must + "not(../gps or ../galileo + or ../beidou or ../qzss + or ../glonass or ../sbas + or ../irnss)"; + presence "Indicates a auto node is configured."; + description + "Auto-select the constellation"; + } + container gps { + must + "not(../auto or ../galileo + or ../beidou or ../qzss + or ../glonass or ../sbas + or ../irnss)"; + presence "Indicates a gps node is configured."; + description + "GPS"; + } + container galileo { + must + "not(../auto or ../gps + or ../beidou or ../qzss + or ../glonass or ../sbas + or ../irnss)"; + presence "Indicates a galileo node is configured."; + description + "Galileo"; + } + container beidou { + must + "not(../auto or ../gps + or ../galileo or ../qzss + or ../glonass or ../sbas + or ../irnss)"; + presence "Indicates a beidou node is configured."; + description + "Beidou"; + } + container qzss { + must + "not(../auto or ../gps + or ../galileo or ../beidou + or ../glonass or ../sbas + or ../irnss)"; + presence "Indicates a qzss node is configured."; + description + "QZSS"; + } + container glonass { + must + "not(../auto or ../gps + or ../galileo or ../beidou + or ../qzss or ../sbas + or ../irnss)"; + presence "Indicates a glonass node is configured."; + description + "GLONASS"; + } + container sbas { + must + "not(../auto or ../gps + or ../galileo or ../beidou + or ../qzss or ../glonass + or ../irnss)"; + presence "Indicates a sbas node is configured."; + description + "SBAS (WAAS)"; + } + container irnss { + must + "not(../auto or ../gps + or ../galileo or ../beidou + or ../qzss or ../glonass + or ../sbas)"; + presence "Indicates a irnss node is configured."; + description + "IRNSS"; + } + } + container snr { + description + "SNR threshold configuration"; + leaf threshold { + type uint32 { + range "0..40" { + description + "SNR threshold value, in dB-Hz"; + } + } + description + "SNR threshold configuration"; + } + } + container elevation { + description + "Elevation threshold configuration"; + leaf threshold { + type uint32 { + range "0..40" { + description + "Elevation threshold value, in degrees"; + } + } + description + "Elevation threshold configuration"; + } + } + container pdop { + description + "PDOP threshold configuration"; + leaf threshold { + type uint32 { + range "0..10" { + description + "PDOP threshold value"; + } + } + description + "PDOP threshold configuration"; + } + } + container traim { + description + "TRAIM threshold configuration"; + leaf threshold { + type uint32 { + range "0..2" { + description + "TRAIM threshold value, in microseconds"; + } + } + description + "TRAIM threshold configuration"; + } + } + container cable-delay { + description + "Cable-delay compensation configuration"; + leaf compensation { + type int32 { + range "-1000000..1000000" { + description + "Cable-delay compensation value, in nanoseconds"; + } + } + description + "Cable-delay compensation configuration"; + } + } + container onepps { + description + "1PPS polarity configuration"; + container polarity { + description + "1PPS polarity configuration"; + container positive { + must "not(../negative)"; + presence "Indicates a positive node is configured."; + description + "Positive 1PPS polarity"; + } + container negative { + must "not(../positive)"; + presence "Indicates a negative node is configured."; + description + "Negative 1PPD polarity"; + } + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-grpc-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-grpc-cfg.yang new file mode 100644 index 000000000..7c12bde2d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-grpc-cfg.yang @@ -0,0 +1,471 @@ +module Cisco-IOS-XR-um-grpc-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-grpc-cfg"; + prefix um-grpc-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 grpc package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Added TTL leaf. + 2022-08-24 + Added tls-v1-disable container."; + semver:module-version "2.2.0"; + } + revision 2021-09-29 { + description + "Added certificate-authentication & local-connection containers + 2021-07-28 + Added tunnel container."; + semver:module-version "2.1.0"; + } + revision 2021-05-20 { + description + "Added leaf min-keepalive-interval. + 2020-08-01 + Added aaa container."; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.1.0"; + } + revision 2019-03-30 { + description + "Initial version"; + } + + container grpc { + presence "Indicates a grpc node is configured."; + description + "grpc configuration commands"; + leaf max-request-total { + type uint32 { + range "1..256" { + description + "Maximum concurrent requests in total"; + } + } + description + "Maximum concurrent requests in total"; + } + leaf max-request-per-user { + type uint32 { + range "1..32" { + description + "Maximum concurrent requests per user"; + } + } + description + "Maximum concurrent requests per user"; + } + leaf max-streams { + type uint32 { + range "1..128" { + description + "Maximum number of streaming gRPCs (Default: 32)"; + } + } + description + "Maximum number of streaming gRPCs (Default: 32)"; + } + leaf max-streams-per-user { + type uint32 { + range "1..128" { + description + "Maximum number of streaming gRPCs per user (Default: 32)"; + } + } + description + "Maximum number of streaming gRPCs per user (Default: 32)"; + } + leaf port { + type uint32 { + range "10000..57999" { + description + "Server listening port"; + } + } + description + "Server listening port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "vrf name"; + } + } + description + "Server vrf"; + } + leaf certificate-id { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Certificate ID"; + } + } + description + "Active Certificate"; + } + container aaa { + description + "AAA authorization and authentication for gRPC"; + container authentication { + description + "AAA authentication methodlist for gRPC"; + leaf login { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "AAA methodlist name"; + } + } + description + "AAA authentication login method list"; + } + } + container authorization { + description + "AAA authorization methodlist for gRPC"; + leaf exec { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "AAA methodlist name"; + } + } + description + "AAA authorization exec method list"; + } + } + } + container address-family { + description + "Address family identifier type"; + container ipv4 { + must "not(../ipv6 or ../dual)"; + presence "Indicates a ipv4 node is configured."; + description + "IPv4 address-family"; + } + container ipv6 { + must "not(../ipv4 or ../dual)"; + presence "Indicates a ipv6 node is configured."; + description + "IPv6 address-family"; + } + container dual { + must "not(../ipv4 or ../ipv6)"; + presence "Indicates a dual node is configured."; + description + "dual stackaddress-family"; + } + } + container service-layer { + presence "Indicates a service-layer node is configured."; + description + "grpc service layer configuration"; + } + leaf min-keepalive-interval { + type uint32 { + range "1..10000" { + description + "Keepalive interval in seconds"; + } + } + description + "Minimum client keepalive interval"; + } + container local-connection { + presence "Indicates a local-connection node is configured."; + description + "Enable gRPC server over Unix socket"; + } + leaf ttl { + type uint32 { + range "0..255" { + description + "gRPC packets TTL value"; + } + } + description + "gRPC packets TTL value"; + } + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services code point"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Default (DSCP 000000)"; + } + enum "cs1" { + value 8; + description + "CS1 (Precedence 1) (DSCP 001000)"; + } + enum "af11" { + value 10; + description + "AF11 (DSCP 001010)"; + } + enum "af12" { + value 12; + description + "AF12 (DSCP 001100)"; + } + enum "af13" { + value 14; + description + "AF13 (DSCP 001110)"; + } + enum "cs2" { + value 16; + description + "CS2 (Precedence 2) (DSCP 010000)"; + } + enum "af21" { + value 18; + description + "AF21 (DSCP 010010)"; + } + enum "af22" { + value 20; + description + "AF22 (DSCP 010100)"; + } + enum "af23" { + value 22; + description + "AF23 (DSCP 010110)"; + } + enum "cs3" { + value 24; + description + "CS3 (Precedence 3) (DSCP 011000)"; + } + enum "af31" { + value 26; + description + "AF31 (DSCP 011010)"; + } + enum "af32" { + value 28; + description + "AF32 (DSCP 011100)"; + } + enum "af33" { + value 30; + description + "AF33 (DSCP 011110)"; + } + enum "cs4" { + value 32; + description + "CS4 (Precedence 4) (DSCP 100000)"; + } + enum "af41" { + value 34; + description + "AF41 (DSCP 100010)"; + } + enum "af42" { + value 36; + description + "AF42 (DSCP 100100)"; + } + enum "af43" { + value 38; + description + "AF43 (DSCP 100110)"; + } + enum "cs5" { + value 40; + description + "CS5 (Precedence 5) (DSCP 101000)"; + } + enum "ef" { + value 46; + description + "EF (DSCP 101110)"; + } + enum "cs6" { + value 48; + description + "CS6 (Precedence 6) (DSCP 110000)"; + } + enum "cs7" { + value 56; + description + "CS7 (Precedence 7) (DSCP 111000)"; + } + } + } + description + "QoS marking DSCP to be set on transmitted gRPC"; + } + container tls-cipher { + description + "gRPC TLS cipher suites"; + leaf disable { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "List of comma separated ciphers"; + } + } + description + "Disable ciphers if 'default enable'"; + } + leaf enable { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "List of comma separated ciphers"; + } + } + description + "Enable ciphers if 'default disable'"; + } + container default { + description + "Default of all ciphers"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable all ciphers"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable all ciphers"; + } + } + } + leaf tls-trustpoint { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "trustpoint name"; + } + } + description + "Configure trustpoint"; + } + container tls-mutual { + presence "Indicates a tls-mutual node is configured."; + description + "Mutual Authentication"; + } + container no-tls { + presence "Indicates a no-tls node is configured."; + description + "No TLS"; + } + container certificate-authentication { + presence "Indicates a certificate-authentication node is configured."; + description + "Enables Certificate based Authentication"; + } + container tls-v1-disable { + presence "Indicates a tls-v1-disable node is configured."; + description + "Disable support for TLS version 1.0"; + } + container tunnel { + description + "grpc tunnel service"; + container destinations { + description + "GRPC tunnel destination"; + list destination { + key "destination-name port-id"; + description + "GRPC tunnel destination"; + leaf destination-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Destination IPv4/IPv6 address"; + } + } + description + "GRPC tunnel destination"; + } + leaf port-id { + type uint32 { + range "1..65535" { + description + "Port number"; + } + } + description + "Destination port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "vrf-name"; + } + } + description + "VRF for the dialout"; + } + leaf source-interface { + type xr:Interface-name; + description + "Source interface"; + } + leaf target { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "target name"; + } + } + description + "Target name to register tunnel service"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hostname-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hostname-cfg.yang new file mode 100644 index 000000000..ab1a00c15 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hostname-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-um-hostname-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hostname-cfg"; + prefix um-hostname-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 hostname package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-04-21 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hostname { + description + "Set system's network name"; + leaf system-network-name { + type xr:Cisco-ios-xr-string { + length "1..253" { + description + "This system's network name"; + } + pattern "[a-zA-Z0-9_.-]+"; + } + description + "Set system's network name"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-http-client-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-http-client-cfg.yang new file mode 100644 index 000000000..210f7b030 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-http-client-cfg.yang @@ -0,0 +1,191 @@ +module Cisco-IOS-XR-um-http-client-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-http-client-cfg"; + prefix um-http-client-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 http-client package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-02-10 { + description + "- Added secure-verify-peer and secure-verify-host. Updated ipv4 and ipv6 under source-interface"; + semver:module-version "1.1.0"; + } + revision 2020-09-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container http { + description + "HTTP Application"; + container client { + description + "HTTP Client Application"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of vrf"; + } + } + description + "Name of vrf"; + } + container secure-verify-peer { + description + "Verify authenticity of the peer's certificate"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable verifying peer's certificate"; + } + } + container secure-verify-host { + description + "Verify that if server certificate is for the serverit is known as"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable verifying host in peer's certificate"; + } + } + container response { + description + "How long HTTP Client waits for a response from the server + for a request message before giving up"; + leaf timeout { + type uint32 { + range "1..300" { + description + "HTTP Response time-out value in seconds"; + } + } + description + "Response timeout"; + } + } + container connection { + description + "Configure HTTP Client connection"; + leaf timeout { + type uint32 { + range "1..60" { + description + "HTTP connection time-out value in seconds"; + } + } + description + "How long HTTP Client waits for a server connection to + establish before giving up"; + } + leaf retry { + type uint32 { + range "1..5" { + description + "HTTP retry count"; + } + } + description + "Configure retry count in case of connection establishment"; + } + } + container source-interface { + description + "Specify interface for source address"; + container ipv4 { + description + "Choose Ipv4 address from interface"; + leaf interface { + type xr:Interface-name; + description + "Select an soucre interface"; + } + } + container ipv6 { + description + "Choose Ipv6 address from interface"; + leaf interface { + type xr:Interface-name; + description + "Select an soucre interface"; + } + } + } + container version { + description + "HTTP Version to be used in HTTP requests"; + container default { + must "not(../http1.0 or ../http1.1)"; + presence "Indicates a default node is configured."; + description + "libcurl will pick HTTP version automatically"; + } + container http1.0 { + must "not(../default or ../http1.1)"; + presence "Indicates a http1.0 node is configured."; + description + "force HTTP1.0 to be used for all HTTP requests"; + } + container http1.1 { + must "not(../default or ../http1.0)"; + presence "Indicates a http1.1 node is configured."; + description + "force HTTP1.1 to be used for all HTTP requests"; + } + } + container ssl { + description + "SSL configuration to be used for HTTPS requests"; + container version { + description + "SSL version to be used for HTTPS requests"; + container tls1.0 { + must "not(../tls1.1 or ../tls1.2)"; + presence "Indicates a tls1.0 node is configured."; + description + "Force TLSv1.0 to be used for HTTPS requests"; + } + container tls1.1 { + must "not(../tls1.0 or ../tls1.2)"; + presence "Indicates a tls1.1 node is configured."; + description + "Force TLSv1.1 to be used for HTTPS requests"; + } + container tls1.2 { + must "not(../tls1.0 or ../tls1.1)"; + presence "Indicates a tls1.2 node is configured."; + description + "Force TLSv1.2 to be used for HTTPS requests"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-acl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-acl-cfg.yang new file mode 100644 index 000000000..11504eb5f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-acl-cfg.yang @@ -0,0 +1,68 @@ +module Cisco-IOS-XR-um-hw-module-acl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-acl-cfg"; + prefix um-hw-module-acl-cfg; + + 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-acl package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-29 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hardware { + description + "all line cards"; + container access-list { + description + "Access-list option"; + container atomic { + description + "Update acl method"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable atomic updates"; + } + } + container abf-match-mpls { + description + "Configure ABF MPLS match parameters"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable ABF ACL match for MPLS packets"; + } + } + container l3-compression-optimisation { + presence "Indicates a l3-compression-optimisation node is configured."; + description + "Update acl method"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg.yang new file mode 100644 index 000000000..1e8628b19 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg.yang @@ -0,0 +1,130 @@ +module Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-early-fast-discard-cfg"; + prefix um-hw-module-early-fast-discard-cfg; + + 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-early-fast-discard package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-01 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container early-fast-discard { + presence "Indicates a early-fast-discard node is configured."; + description + "Enable prioritized packet drop during congestion"; + leaf vlan-cos { + type uint32 { + range "0..7" { + description + "Specify VLAN COS threshold (default = 6)"; + } + } + must "../vlan-op"; + description + "Select VLAN COS values to be treated as high priority"; + } + leaf vlan-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../vlan-cos"; + description + "Select VLAN operation (default = greater-than-or-equal)"; + } + leaf ip-prec { + type uint32 { + range "0..7" { + description + "Specify IP TOS Precedence threshold (default = 6)"; + } + } + must "../ip-op"; + description + "Select IP precedence values to be treated as high priority"; + } + leaf ip-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../ip-prec"; + description + "Select IP operation (default = greater-than-or-equal)"; + } + leaf mpls-exp { + type uint32 { + range "0..7" { + description + "Specify MPLS EXP threshold (default = 6)"; + } + } + must "../mpls-op"; + description + "Select MPLS EXP values to be treated as high priority"; + } + leaf mpls-op { + type enumeration { + enum "lt" { + value 2; + description + "Less-than"; + } + enum "ge" { + value 3; + description + "Greater-than-or-equal"; + } + } + must "../mpls-exp"; + description + "Select MPLS operation (default = greater-than-or-equal)"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-l3-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-l3-cfg.yang new file mode 100644 index 000000000..58fae74a8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-l3-cfg.yang @@ -0,0 +1,159 @@ +module Cisco-IOS-XR-um-hw-module-l3-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-l3-cfg"; + prefix um-hw-module-l3-cfg; + + 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-l3 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-16 { + description + "Added leaf for per-prefix-egress-stats + 2022-09-08 + Added leaf for sharedlspa, caching and modified pathname for ler and lsr"; + semver:module-version "1.1.0"; + } + revision 2020-05-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container l3 { + description + "Configure l3 "; + container feature { + description + "Configure l3 features"; + leaf caching { + type enumeration { + enum "disable" { + value 7; + description + "Disable fast convergence caching feature."; + } + } + description + "Configure fast convergence caching feature"; + } + leaf ler { + type enumeration { + enum "disable" { + value 3; + description + "Disable LER feature"; + } + } + description + "Configure LER feature"; + } + leaf lsr { + type enumeration { + enum "disable" { + value 5; + description + "Disable LSR feature"; + } + } + description + "Configure LSR feature"; + } + leaf mpls-over-udp-decap { + type enumeration { + enum "enable" { + value 1; + description + "Enable MPLS-over-UDP decap feature"; + } + } + description + "Configure MPLS-over-UDP decap feature"; + } + container pbr { + description + "Configure PBR feature"; + leaf sixpe { + type enumeration { + enum "enable" { + value 1; + description + "Enable BGP FS 6PE feature"; + } + } + description + "Configure BGP FS 6pe"; + } + leaf hash { + type enumeration { + enum "enable" { + value 1; + description + "Enable PBR hash feature"; + } + } + description + "Configure PBR hash"; + } + leaf stats { + type enumeration { + enum "disable" { + value 1; + description + "Disable PBR statistics"; + } + } + description + "Configure PBR statistics"; + } + } + leaf per-prefix-egress-stats { + type enumeration { + enum "enable" { + value 12; + description + "Enable per-prefix-egress-stats accounting for unicast labels"; + } + } + description + "Configure per-prefix-egress stats feature"; + } + leaf sharedlspa { + type enumeration { + enum "enable" { + value 10; + description + "Enable sharedlspa sharing"; + } + } + description + "Configure shared_lspa feature"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-port-range-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-port-range-cfg.yang new file mode 100644 index 000000000..eb9acb94d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-port-range-cfg.yang @@ -0,0 +1,125 @@ +module Cisco-IOS-XR-um-hw-module-port-range-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-port-range-cfg"; + prefix um-hw-module-port-range-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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-port-range package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-03-04 + Removed leaf location-name and updated range for leaf instance-id"; + semver:module-version "2.0.0"; + } + revision 2020-11-16 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container hw-module { + description + "Configure h/w module"; + container port-ranges { + description + "Configure port range"; + list port-range { + must "(mode or instances/instance)"; + key "start-port end-port"; + description + "Configure port range"; + leaf start-port { + type uint32 { + range "0..71" { + description + "configure start port"; + } + } + description + "Configure port range"; + } + leaf end-port { + type uint32 { + range "0..71" { + description + "configure end port"; + } + } + description + "configure end port"; + } + leaf mode { + type string { + pattern "40-100|400|2x100|4x10|4x25|4x10-4x25|1x100|3x100|4x100"; + } + description + "port mode"; + } + container instances { + description + "card instance of MPA's"; + list instance { + key "instance-id"; + description + "card instance of MPA's"; + leaf instance-id { + type uint32 { + range "0..5" { + description + "MPA Instance 1,2,3 etc for MPA's"; + } + } + description + "MPA Instance 1,2,3 etc for MPA's"; + } + leaf mode { + type string { + pattern "40-100|400|2x100|4x10|4x25|4x10-4x25|1x100|3x100|4x100"; + } + mandatory true; + description + "port mode"; + } + } + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-profile-cfg.yang new file mode 100644 index 000000000..02ccfe0a7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-profile-cfg.yang @@ -0,0 +1,2492 @@ +module Cisco-IOS-XR-um-hw-module-profile-cfg { + 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-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-04-21 { + description + "Added container egress-compensation-setting-force + 2022-11-26 + Added irb-recycle-bandwidth hw-module support under profile-qos + 2022-11-23 + Added new containers bgppa and stats-mode under it + 2022-09-20 + Added new containers bgp-sr, ttl and urpf under hw-module + 2022-08-05 + Added container mpls-ext-dscp-preserve + 2022-07-11 + Added missing description statement to nodes + 2022-07-06 + Added containers nif-hp-fifo-reserve, four8byte-cfm-maid-enable and gue + 2022-07-04 + Added policer-scale support under qos + 2022-06-20 + Added new container multicast under hw-module + 2022-06-17 + Added container for qos-stats-collection + 2022-05-10 + Added traffic-class-with-hoplimit support under l3-traffic + 2022-04-29 + Added l2-l3-tx-enable support under span-filter + 2022-04-05 + Added container for egress acl compression + 2022-03-30 + Modified span-l2-filter node to span-filter + 2022-03-24 + Removed must statements under traffic-class nodes + 2022-03-07 + Added free-buffer-int-threshold and clear-value-in-percent + support under profile-qos + 2022-02-22 + Added container span-l2-filter under profile-routing + 2022-01-26 + Added base-and-micro-segment-f3216 support under profile-segment-routing + 2022-01-25 + Updated container profile-segment-routing + 2022-01-20 + removed container j2-dynamic-stats + 2021-11-24 + Added container irb + 2021-11-23 + Added container gre-exp-classification-enable under profile-qos"; + semver:module-version "3.0.0"; + } + revision 2021-10-18 { + description + "Removed base-and-micro-segment-f3216 support + 2021-08-30 + Added new enum value under leaf max-classmap-size + 2021-08-11 + Added new container arp-isis-priority-enable"; + semver:module-version "2.0.0"; + } + 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 + "value in percent"; + } + } + 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 + "IPv4 prefix length."; + } + } + description + "ip prefix length"; + } + leaf percent { + type xr:Cisco-ios-xr-string { + length "1..9" { + description + "prefix precent 0.0-100.00000"; + } + pattern "100([.]0{0,5})?|([0-9]{1,2}[0]?)([.][0-9]{0,5})?"; + } + mandatory true; + description + "prefix percentage to configure"; + } + } + } + } + } + container ipv6 { + description + "Configure ipv6 addresses in TCAM"; + container unicast { + description + "Unicast address"; + leaf percent { + type uint32 { + range "0..100" { + description + "value in percent"; + } + } + 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 + "IPv6 prefix length."; + } + } + description + "ip prefix length"; + } + leaf percent { + type xr:Cisco-ios-xr-string { + length "1..9" { + description + "prefix precent 0.0-100.00000"; + } + pattern "100([.]0{0,5})?|([0-9]{1,2}[0]?)([.][0-9]{0,5})?"; + } + mandatory true; + description + "prefix percentage to configure"; + } + } + } + } + } + container v6mcast { + description + "Multicast address"; + leaf percent { + type uint32 { + range "0..100" { + description + "value in percent"; + } + } + description + "percent to configure"; + } + } + } + container acl-prefix { + description + "ACL table to configure"; + leaf percent { + type uint32 { + range "0..100" { + description + "value in percent"; + } + } + description + "percent to configure"; + } + } + 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 dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 32 bit qualifier"; + } + container src-port { + must "../frag-bit"; + presence "Indicates a src-port node is configured."; + description + "source L4 port, 16 bit qualifier"; + } + container dst-port { + must "../frag-bit"; + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container proto { + presence "Indicates a proto node is configured."; + description + "protocol type, 8 bit qualifier"; + } + container tcp-flags { + must "../frag-bit"; + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 6 bit qualifier"; + } + container packet-length { + presence "Indicates a packet-length node is configured."; + description + "packet length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container precedence { + presence "Indicates a precedence node is configured."; + description + "precedence/dscp, 8 bit qualifier"; + } + container port-range { + must "../frag-bit"; + presence "Indicates a port-range node is configured."; + description + "ipv4 port range qualifier, 24 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + 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 dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 32 bit qualifier"; + } + container src-port { + must "../frag-bit"; + presence "Indicates a src-port node is configured."; + description + "source L4 port, 16 bit qualifier"; + } + container dst-port { + must "../frag-bit"; + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container proto { + presence "Indicates a proto node is configured."; + description + "protocol type, 8 bit qualifier"; + } + container tcp-flags { + must "../frag-bit"; + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 6 bit qualifier"; + } + container packet-length { + presence "Indicates a packet-length node is configured."; + description + "packet length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container precedence { + presence "Indicates a precedence node is configured."; + description + "precedence/dscp, 8 bit qualifier"; + } + container port-range { + must "../frag-bit"; + presence "Indicates a port-range node is configured."; + description + "ipv4 port range qualifier, 24 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + } + 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-port { + presence "Indicates a src-port node is configured."; + description + "source L4 Port, 16 bit qualifier (manditory field)"; + } + container dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 128 bit qualifier"; + } + container dst-port { + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container next-hdr { + presence "Indicates a next-hdr node is configured."; + description + "next header, 8 bit qualifier (manditory field)"; + } + container tcp-flags { + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 8 bit qualifier"; + } + container payload-length { + presence "Indicates a payload-length node is configured."; + description + "payload length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container traffic-class { + presence "Indicates a traffic-class node is configured."; + description + "Traffic Class, 8 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + 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-port { + presence "Indicates a src-port node is configured."; + description + "source L4 port, 16 bit qualifier"; + } + container dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 32 bit qualifier"; + } + container dst-port { + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container next-hdr { + presence "Indicates a next-hdr node is configured."; + description + "next header, 8 bit qualifier (manditory field)"; + } + container tcp-flags { + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 6 bit qualifier"; + } + container payload-length { + presence "Indicates a packet-length node is configured."; + description + "packet length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container traffic-class { + presence "Indicates a traffic-class node is configured."; + description + "Traffic Class, 8 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + } + } + } + } + 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 compress { + description + "Specify ACL compression in hardware"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable ACL egress compression in hardware"; + } + container enable-locations { + description + "Location of acl config"; + list location { + key "location-name"; + description + "Location of acl config"; + leaf location-name { + type xr:Node-id; + description + "Location of acl config"; + } + } + } + } + } + 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 ingress { + description + "ingress acl"; + container compress { + description + "Specify ACL compression in hardware"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable ACL ingress compression in hardware"; + } + container enable-locations { + description + "Location of acl config"; + list location { + key "location-name"; + description + "Location of acl config"; + leaf location-name { + type xr:Node-id; + description + "Location of acl config"; + } + } + } + } + } + } + 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 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 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 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 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-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 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 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"; + } + } + } + } + container ignore-ingress-port { + presence "Indicates a ignore-ingress-port node is configured."; + description + "Disable ingress port during bundle hash computation"; + } + 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 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"; + } + enum "2" { + value 2; + description + "Max 2 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"; + } + } + } + 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-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"; + } + } + } + } + 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" { + description + "First DSCP/Precedence value"; + } + } + 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" { + description + "Second DSCP/Precedence value"; + } + } + must "../first-dscp-precedence-value"; + description + "Second DSCP/Precedence value"; + } + leaf third-dscp-precedence-value { + type uint32 { + range "0..63" { + description + "Third DSCP/Precedence value"; + } + } + 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" { + description + "Fourth DSCP/Precedence value"; + } + } + 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" { + description + "Fifth DSCP/Precedence value"; + } + } + 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" { + description + "Sixth DSCP/Precedence value"; + } + } + 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" { + description + "Seventh DSCP/Precedence value"; + } + } + 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" { + description + "Eighth DSCP/Precedence value"; + } + } + must "../seventh-dscp-precedence-value"; + must "../seventh-dscp-precedence-value"; + description + "Eighth DSCP/Precedence value"; + } + } + leaf free-buffer-int-threshold { + type uint32 { + range "0..100" { + description + "set value in percent (must be less than clear value)"; + } + } + must "../clear-value-in-percent"; + description + "Configure free buffer interrupt threshold"; + } + leaf clear-value-in-percent { + type uint32 { + range "0..100" { + description + "clear value in percent (must be more than set value)"; + } + } + must "../free-buffer-int-threshold"; + description + "clear value in percent (must be more than set value)"; + } + container hqos-enable { + presence "Indicates a hqos-enable node is configured."; + description + "Enable Hierarchical QoS"; + } + container qos-stats-collection { + presence "Indicates a qos-stats-collection node is configured."; + description + "Enable QoS stats push model"; + } + container ecn-marking-stats { + presence "Indicates a ecn-marking-stats node is configured."; + description + "Enable ECN marking stats mode"; + } + 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 wred-stats-enable { + presence "Indicates a wred-stats-enable node is configured."; + description + "Enable Wred egress stats"; + } + 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-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-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 conform-aware-policer { + presence "Indicates a conform-aware-policer node is configured."; + description + "Configure Conform Aware Policer mode"; + } + container arp-isis-priority-enable { + presence "Indicates a arp-isis-priority-enable node is configured."; + description + "Prioritize ISIS and ARP packets"; + } + container gre-exp-classification-enable { + presence "Indicates a gre-exp-classification-enable node is configured."; + description + "Enable Ingress EXP classification for MPLSoGRE"; + } + container egress-compensation-setting-force { + presence "Indicates a egress-compensation-setting-force node is configured."; + description + "Forcefully allows to configure non-unique egress compensation values ignoring ASIC limitation (not recommended)."; + } + container policer-scale { + description + "Max policer scale"; + container policer-48000 { + must "not(../policer-64000)"; + presence "Indicates a policer-48000 node is configured."; + description + "Max 48000 policers"; + } + container policer-64000 { + must "not(../policer-48000)"; + presence "Indicates a policer-64000 node is configured."; + description + "Max 64000 policers"; + } + } + container policer-scale-locations { + description + "Location of policer-scale config"; + list location { + key "location-name location-name2"; + description + "Location of policer-scale config"; + leaf location-name { + type xr:Node-id; + description + "Location of policer-scale config"; + } + leaf location-name2 { + type xr:Node-id; + description + "Location of policer-scale config"; + } + container policer-48000 { + must "not(../policer-64000)"; + presence "Indicates a policer-48000 node is configured."; + description + "Max 48000 policers"; + } + container policer-64000 { + must "not(../policer-48000)"; + presence "Indicates a policer-64000 node is configured."; + description + "Max 64000 policers"; + } + } + } + container nif-hp-fifo-reserve { + description + "Indicates a nif-hp-fifo-reserve node is configured."; + leaf percent { + type uint32 { + range "0..100" { + description + "Setting 0 will disable the feature."; + } + } + description + "Reserve NIF FIFOs (percentage) for High Priority traffic."; + } + } + container nif-hp-fifo-reserve-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 number"; + } + leaf percent { + type uint32 { + range "0..100" { + description + "Setting 0 will disable the feature."; + } + } + mandatory true; + description + "Reserve NIF FIFOs (percentage) for High Priority traffic."; + } + } + } + container irb-recycle-bandwidth { + description + "IRB Recycle Port Bandwidth [400, 600] Gbps"; + leaf bandwidth { + type enumeration { + enum "400" { + value 400; + description + "IRB Recycle Bandwidth 400 Gbps"; + } + enum "600" { + value 600; + description + "IRB Recycle Bandwidth 600 Gbps"; + } + } + description + "IRB Recycle Port Bandwidth [400, 600] Gbps"; + } + container locations { + description + "Location of QoS config"; + list location { + key "location-name"; + description + "Location of QoS config"; + leaf location-name { + type xr:Node-id; + description + "Location of QoS config"; + } + leaf bandwidth { + type enumeration { + enum "400" { + value 400; + description + "IRB Recycle Bandwidth 400 Gbps"; + } + enum "600" { + value 600; + description + "IRB Recycle Bandwidth 600 Gbps"; + } + } + mandatory true; + description + "IRB Recycle Port Bandwidth [400, 600] Gbps"; + } + } + } + } + } + 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 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-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 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-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 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 profile-netflow { + description + "Configure Netflow profile."; + container ipfix315-enable { + presence "Indicates a ipfix315-enable node is configured."; + description + "IPFIX 315 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"; + } + } + } + container sflow-enable { + presence "Indicates a sflow-enable node is configured."; + description + "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"; + } + } + } + container fpc-enable { + presence "Indicates a fpc-enable node is configured."; + description + "Netflow full packet capture 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"; + } + } + } + } + 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 + ../tx-scale-enhanced)"; + presence "Indicates a acl-permit node is configured."; + description + "Enable ACL permit stats."; + } + container qos-enhanced { + must + "not(../acl-permit or ../ingress-sr or + ../enh-sr-policy or ../ingress-sr-mspw or + ../tx-scale-enhanced)"; + presence "Indicates a qos-enhanced node is configured."; + description + "Enable enhanced QoS stats."; + } + container ingress-sr { + must + "not(../acl-permit or ../qos-enhanced or + ../enh-sr-policy or ../ingress-sr-mspw or + ../tx-scale-enhanced)"; + presence "Indicates a ingress-sr node is configured."; + description + "Enable ingress SR stats profile counter."; + } + container enh-sr-policy { + must + "not(../acl-permit or ../qos-enhanced or + ../ingress-sr or ../ingress-sr-mspw or + ../tx-scale-enhanced)"; + presence "Indicates a enh-sr-policy node is configured."; + description + "Enable Enhanced_SR_Policy_Scale stats profile counter."; + } + container ingress-sr-mspw { + must + "not(../acl-permit or ../qos-enhanced or + ../ingress-sr or ../enh-sr-policy or + ../tx-scale-enhanced)"; + presence "Indicates a ingress-sr-mspw node is configured."; + description + "Enable ingress SR & MSPW stats profile counter."; + } + container tx-scale-enhanced { + must + "not(../qos-enhanced or ../ingress-sr or + ../enh-sr-policy or ../ingress-sr-mspw 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 qos-enhanced { + must "not(../acl-permit or ../ingress-sr)"; + presence "Indicates a qos-enhanced node is configured."; + description + "Enable enhanced QoS stats."; + } + 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 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-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"; + } + } + } + } + container profile-segment-routing { + description + "Segment routing options"; + container srv6 { + 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 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 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 + "Encapsulation parameters"; + container l2-traffic { + description + "SRv6 parameters for L2 traffic type"; + container traffic-class { + description + "Control traffic-class field of SRv6 IPv6 header"; + container propagate { + must "not(../traffic-class-value)"; + presence "Indicates a propagate node is configured."; + description + "Propagate traffic-class from incoming packet/frame or use qos-group from input policy-map"; + } + leaf traffic-class-value { + type uint32 { + range "0..255" { + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + must "not(../propagate)"; + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + } + container l3-traffic { + description + "SRv6 parameters for L3 traffic type"; + container traffic-class { + description + "Control traffic-class field of SRv6 IPv6 header"; + container propagate { + must "not(../policy-map or ../traffic-class-value)"; + presence "Indicates a propagate node is configured."; + description + "Propagate traffic-class from incoming packet"; + } + container policy-map { + must "not(../propagate or ../traffic-class-value)"; + presence "Indicates a policy-map node is configured."; + description + "Set traffic-class DSCP to qos-group selected by input policy-map"; + } + leaf traffic-class-value { + type uint32 { + range "0..255" { + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + must "not(../propagate or ../policy-map)"; + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + container traffic-class-with-hoplimit { + description + "Control traffic-class and hop-limit of SRv6 IPv6 header"; + container propagate { + must "not(../../traffic-class/propagate or ../../traffic-class/policy-map or ../../traffic-class/traffic-class-value)"; + presence "Indicates a propagate node is configured."; + description + "Propagate traffic-class and hop-limit from incoming packet"; + } + } + } + } + } + } + } + container profile-offload { + description + "Offload profile in NCS5501-SE"; + container one { + must "not(../two or ../three or ../four)"; + presence "Indicates a one node is configured."; + description + "BFDv6 and Bsync"; + } + container two { + must "not(../one or ../three or ../four)"; + presence "Indicates a two node is configured."; + description + "BFDv6 and Route download"; + } + container three { + must "not(../one or ../two or ../four)"; + presence "Indicates a three node is configured."; + description + "Route download and Bsync"; + } + container four { + must "not(../one or ../two or ../three)"; + presence "Indicates a four node is configured."; + description + "BFDv6 and PM-HW-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"; + } + } + leaf profile-bw-threshold { + type xr:Cisco-ios-xr-string { + length "1..3" { + description + "value in percent: 0-100,in increments of 10"; + } + 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 four8byte-cfm-maid-enable { + presence "Indicates a four8byte-cfm-maid-enable node is configured."; + description + "Enable 48byte cfm maid feature"; + } + } + container mpls-ext-dscp-preserve { + description + "Preserve dscp with large label stack"; + container v4uc-enable { + presence "Indicates a v4uc-enable node is configured."; + description + "Enable to preseve dscp for ipv4 unicast traffic"; + } + } + 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 + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + leaf pause-threshold { + type uint32 { + range "1..4294967295" { + description + "pause-threshold (bytes)"; + } + } + mandatory true; + description + "configure pause-threshold"; + } + leaf resume-threshold { + type uint32 { + range "1..4294967295" { + description + "resume-threshold (bytes)"; + } + } + mandatory true; + description + "configure resume-threshold"; + } + leaf headroom { + type uint32 { + range "1..4294967295" { + description + "headroom (bytes)"; + } + } + mandatory true; + description + "configure headroom"; + } + } + } + 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 + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + leaf pause-threshold { + type uint32 { + range "1..4294967295" { + description + "pause-threshold (bytes)"; + } + } + mandatory true; + description + "configure pause-threshold"; + } + leaf resume-threshold { + type uint32 { + range "1..4294967295" { + description + "resume-threshold (bytes)"; + } + } + mandatory true; + description + "configure resume-threshold"; + } + leaf headroom { + type uint32 { + range "1..4294967295" { + description + "headroom (bytes)"; + } + } + mandatory true; + description + "configure headroom"; + } + } + } + } + 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 span-filter { + description + "Configure span filter profile for DNS, HTTP, HTTPS and TLS packet mirror filtering"; + container l2-rx-enable { + presence "Indicates a l2-rx-enable node is configured."; + description + "enable the l2 traffic rx span filtering profile"; + } + container l2-l3-tx-enable { + presence "Indicates a l2-l3-tx-enable node is configured."; + description + "enable the l2 l3 traffic tx span filtering profile"; + } + } + } + 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 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 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 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 internet-optimized { + must "not(../host-optimized-disable)"; + presence "Indicates a internet-optimized node is configured."; + description + "Configure Internet optimized (DEPRECATED)"; + } + } + } + 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"; + } + leaf custom-lem { + type uint32 { + range "40..64" { + description + "IPv6 prefix length."; + } + } + description + "Customise the prefix distribution to LEM"; + } + } + } + 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 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 tcam-optimized { + presence "Indicates a tcam-optimized node is configured."; + description + "Configure push label in tcam optimization"; + } + } + container bgp-sr { + presence "Indicates a bgp-sr node is configured."; + description + "Configure BGP label convergence optimization for SR labels. Applicable only for Jericho based routers."; + container lsr-optimized { + presence "Indicates a lsr-optimized node is configured."; + description + "Configure optimization for LSR role"; + } + } + container ttl { + presence "Indicates a ttl node is configured."; + description + "Configure ttl propagation behaviour"; + container propagate-exception { + presence "Indicates a propagate-exception node is configured."; + description + "Propagate TTL on disposition in mixed paths use case"; + } + } + } + container bgppa { + description + "BGP policy accounting"; + container stats-mode { + description + "stats accounting mode"; + container main-intf { + must "not(../sub-intf)"; + presence "Indicates a main-intf node is configured."; + description + "Account the BGP-PA stats for main interface"; + } + container sub-intf { + must "not(../main-intf)"; + presence "Indicates a sub-intf node is configured."; + description + "Account the BGP-PA stats for sub interface"; + } + } + } + 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 urpf { + description + "Unicast Reverse Path Forwarding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable uRPF"; + } + } + } + container oversubscription { + description + "Configure oversubscription"; + container prioritize { + description + "Setting prioritization of CoS values"; + list interface { + must "cos/cos-value or untagged"; + key "interface-name"; + description + "Setting prioritization of CoS values"; + 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 + "configure CoS number 0-5"; + } + } + description + "CoS values between 0-5"; + } + } + } + container untagged { + presence "Indicates a untagged node is configured."; + description + "Prioritize untagged packets"; + } + } + } + } + container vrrpscale { + description + "to scale VRRP sessions"; + container enable { + presence "Indicates a enable node is configured."; + description + "enable VRRP scaling"; + } + } + 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 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 irb { + description + "Configure IRB Forwarding model"; + container l2-l3 { + description + "IRB L2-L3 options"; + container one-pass { + must "not(../two-pass)"; + presence "Indicates a one-pass node is configured."; + description + "Move IRB processing to 1 pass on ingress"; + } + container two-pass { + must "not(../one-pass)"; + presence "Indicates a two-pass node is configured."; + description + "Move IRB processing to 2 pass on ingress"; + } + } + container l3-l2 { + description + "IRB L3-L2 options"; + container two-pass { + presence "Indicates a two-pass node is configured."; + description + "Move IRB processing to 2 pass on egress"; + } + } + } + container multicast { + description + "Configure multicast properties"; + container access-pw-enable { + presence "Indicates a access-pw-enable node is configured."; + description + "Enable Multicast Access PW [L3L2 IRB 2Pass Processing]"; + } + } + container gue { + description + "GUE Version 1 Port Configuration"; + container udp { + description + "UDP Decap"; + container dest-port-ipv4s { + description + "Configure unreserved udp port number for Ipv4 payload"; + list dest-port-ipv4 { + key "dest-port-ipv4-number dest-port-ipv6-number"; + description + "Configure unreserved udp port number for Ipv4 payload"; + leaf dest-port-ipv4-number { + type uint32 { + range "0..64000" { + description + "value in decimal"; + } + } + description + "Configure unreserved udp port number for Ipv4 payload"; + } + leaf dest-port-ipv6-number { + type uint32 { + range "0..64000" { + description + "value in decimal"; + } + } + description + "Configure unreserved udp port number for Ipv6 payload"; + } + leaf dest-port-mpls { + type uint32 { + range "0..64000" { + description + "value in decimal"; + } + } + mandatory true; + description + "Configure unreserved udp port number for Mpls payload"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-quad-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-quad-cfg.yang new file mode 100644 index 000000000..933777b38 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-quad-cfg.yang @@ -0,0 +1,99 @@ +module Cisco-IOS-XR-um-hw-module-quad-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-quad-cfg"; + prefix um-hw-module-quad-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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-quad package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container instances { + description + "quad configuration"; + list instance { + must "quad"; + key "instance-id"; + description + "0 for LC ports, 1+ for MPA instances"; + leaf instance-id { + type uint32 { + range "0..5"; + } + description + "Instance number"; + } + list quad { + key "quad-id"; + description + "Configure quad."; + leaf quad-id { + type uint32 { + range "0..11" { + description + "configure quad properties"; + } + } + description + "Configure quad."; + } + leaf mode { + type string; + mandatory true; + description + "select mode 10g or 25g for a quad (group of 2 or 4 ports)"; + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-service-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-service-cfg.yang new file mode 100644 index 000000000..86703ba68 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-service-cfg.yang @@ -0,0 +1,85 @@ +module Cisco-IOS-XR-um-hw-module-service-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-service-cfg"; + prefix um-hw-module-service-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-service package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-10 { + description + "added cgn for must statement + 2022-12-01 + Added cgn container"; + semver:module-version "1.1.0"; + } + revision 2020-08-24 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container service { + description + "Configure service role."; + container locations { + description + "Location to configure"; + list location { + must "offline or firewall or cgn"; + key "location-name"; + description + "Location to configure"; + leaf location-name { + type xr:Node-id; + description + "Location to configure"; + } + container cgn { + presence "Indicates an cgn node is configured."; + description + "Take all services on the card cgn"; + } + container offline { + presence "Indicates an offline node is configured."; + description + "Take all services on the card offline"; + } + container firewall { + presence "Indicates an firewall node is configured."; + description + "Configure the firewall service as the role for a node"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-shut-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-shut-cfg.yang new file mode 100644 index 000000000..e3fa767d9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-shut-cfg.yang @@ -0,0 +1,78 @@ +module Cisco-IOS-XR-um-hw-module-shut-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-shut-cfg"; + prefix um-hw-module-shut-cfg; + + 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-shut package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-08 { + description + "Removed Cisco-IOS-XR-types import"; + semver:module-version "1.1.0"; + } + revision 2020-09-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container locations { + description + "Specify the location"; + list location { + must "shut or unshut"; + key "location-name"; + description + "Specify the location"; + leaf location-name { + type string { + length "1..1024" { + description + "hardware location in format /"; + } + } + description + "Specify the location"; + } + container shut { + must "not(../unshut)"; + presence "Indicates a shut node is configured."; + description + "shutdown the hw-module"; + } + container unshut { + must "not(../shut)"; + presence "Indicates an unshut node is configured."; + description + "Unshut the hw-module"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-subslot-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-subslot-cfg.yang new file mode 100644 index 000000000..9296114eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-subslot-cfg.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-um-hw-module-subslot-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-subslot-cfg"; + prefix um-hw-module-subslot-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-subslot package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-09-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container subslots { + description + "Configure subslot h/w module"; + list subslot { + must "shutdown"; + key "subslot-name"; + description + "Configure subslot h/w module"; + leaf subslot-name { + type xr:Node-id; + description + "Configure subslot h/w module"; + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Shutdown a subslot h/w module"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-vrf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-vrf-cfg.yang new file mode 100644 index 000000000..d1cf4c521 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-hw-module-vrf-cfg.yang @@ -0,0 +1,61 @@ +module Cisco-IOS-XR-um-hw-module-vrf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-hw-module-vrf-cfg"; + prefix um-hw-module-vrf-cfg; + + 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-vrf package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-05-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container vrf { + description + "Configure vrf profile"; + leaf scale { + type enumeration { + enum "default" { + value 0; + description + "Default vrf scale"; + } + enum "extended" { + value 1; + description + "Extended vrf scale"; + } + } + description + "Configure vrf scale"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-icmp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-icmp-cfg.yang new file mode 100644 index 000000000..2c458b46a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-icmp-cfg.yang @@ -0,0 +1,635 @@ +module Cisco-IOS-XR-um-icmp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-icmp-cfg"; + prefix um-icmp-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 icmp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-09-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature icmp_platform_support_config_check { + description + "icmp platform support config check"; + } + + container icmp { + description + "ICMP options"; + container ipv4 { + description + "IPv4 specific"; + container source { + description + "source address selection policy"; + container vrf { + must "not(../rfc)"; + presence "Indicates a vrf node is configured."; + description + "Enable Strct VRF source address selection"; + } + container rfc { + must "not(../vrf)"; + presence "Indicates a rfc node is configured."; + description + "Enable RFC compliance for source address selection"; + } + } + container rate-limit { + description + "rate limit generation of ICMP messages"; + container unreachable { + description + "Destination Unreachable (type3)"; + leaf rate { + type uint32 { + range "1..4294967295" { + description + "One ICMP unreachable message in x milliseconds(default is 500ms)"; + } + } + must "not(../disable)"; + description + "One ICMP unreachable message in x milliseconds(default is 500ms)"; + } + container disable { + must "not(../rate)"; + presence "Indicates a disable node is configured."; + description + "Disable rate limit of ICMP messages"; + } + container df { + description + "Fragmentation needed and DF set (code4)"; + leaf rate { + type uint32 { + range "1..4294967295" { + description + "One ICMP unreachable message in x milliseconds(default is 500ms)"; + } + } + must "not(../disable)"; + description + "One ICMP unreachable message in x milliseconds(default is 500ms)"; + } + container disable { + must "not(../rate)"; + presence "Indicates a disable node is configured."; + description + "Disable rate limit of ICMP messages"; + } + } + } + } + } + container ipv6 { + description + "IPv6 specific"; + container source { + description + "source address selection policy"; + container vrf { + must "not(../rfc)"; + presence "Indicates a vrf node is configured."; + description + "Enable Strct VRF source address selection"; + } + container rfc { + must "not(../vrf)"; + presence "Indicates a rfc node is configured."; + description + "Enable RFC compliance for source address selection"; + } + } + } + } + container traceroute-filter { + description + "traceroute configuration"; + container ipv4 { + description + "IPv4 specific"; + container protocol { + description + "protocol"; + container udp { + description + "udp traceroute"; + list traceroute-filter { + must + "(source-address or source-address-any) + and (destination-address or destination-address-any)"; + key "traceroute-filter-id"; + description + "udp traceroute"; + leaf traceroute-filter-id { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config"; + } + } + description + "traceroute configuration"; + } + leaf traceroute-filter-id-duped { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config. + It must be same value as traceroute-filter-id"; + } + } + mandatory true; + description + "traceroute configuration"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "Default VRF name"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "VRF name"; + } + } + } + mandatory true; + description + "specify a vrf"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + must "not(../source-address-any)"; + description + "ipv4 source address for traceroute"; + } + container source-address-any { + must "not(../source-address)"; + presence "Indicates an any node is configured."; + description + "No traceroute filter for source address"; + } + leaf source-port-start { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Source port start of range"; + } + leaf source-port-end { + type uint32 { + range "0..65535" { + description + "Source port end of range"; + } + } + mandatory true; + description + "Source port end of range"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + must "not(../destination-address-any)"; + description + "ipv4 dest address for traceroute"; + } + container destination-address-any { + must "not(../destination-address)"; + presence "Indicates an any node is configured."; + description + "No traceroute filter for source address"; + } + leaf destination-port-start { + type uint32 { + range "33435..33535" { + description + "Dst port start of range"; + } + } + mandatory true; + description + "Dst port start of range"; + } + leaf destination-port-end { + type uint32 { + range "33435..33535" { + description + "Dst port end of range"; + } + } + mandatory true; + description + "Dst port end of range"; + } + } + } + container tcp { + description + "tcp traceroute"; + list traceroute-filter { + must + "(source-address or source-address-any) + and (destination-address or destination-address-any)"; + key "traceroute-filter-id"; + description + "tcp traceroute"; + leaf traceroute-filter-id { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config"; + } + } + description + "traceroute configuration"; + } + leaf traceroute-filter-id-duped { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config. + It must be same value as traceroute-filter-id"; + } + } + mandatory true; + description + "traceroute configuration"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "Default VRF name"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "VRF name"; + } + } + } + mandatory true; + description + "specify a vrf"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + must "not(../source-address-any)"; + description + "ipv4 source address for traceroute"; + } + container source-address-any { + must "not(../source-address)"; + presence "Indicates an any node is configured."; + description + "No traceroute filter for source address"; + } + leaf source-port-start { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Source port start of range"; + } + leaf source-port-end { + type uint32 { + range "0..65535" { + description + "Source port end of range"; + } + } + mandatory true; + description + "Source port end of range"; + } + leaf destination-address { + type inet:ipv4-address-no-zone; + must "not(../destination-address-any)"; + description + "ipv4 dest address for traceroute"; + } + container destination-address-any { + must "not(../destination-address)"; + presence "Indicates an destination-address-any node is configured."; + description + "No traceroute filter for source address"; + } + leaf destination-port-start { + type uint32 { + range "33435..33535" { + description + "Dst port start of range"; + } + } + mandatory true; + description + "Dst port start of range"; + } + leaf destination-port-end { + type uint32 { + range "33435..33535" { + description + "Dst port end of range"; + } + } + mandatory true; + description + "Dst port end of range"; + } + } + } + } + } + container ipv6 { + description + "IPv6 specific"; + container protocol { + description + "protocol"; + container udp { + description + "udp traceroute"; + list traceroute-filter { + must + "(source-address or source-address-any) + and (destination-address or destination-address-any)"; + key "traceroute-filter-id"; + description + "udp traceroute"; + leaf traceroute-filter-id { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config"; + } + } + description + "traceroute configuration"; + } + leaf traceroute-filter-id-duped { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config. + It must be same value as traceroute-filter-id"; + } + } + mandatory true; + description + "traceroute configuration"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "Default VRF name"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "VRF name"; + } + } + } + mandatory true; + description + "specify a vrf"; + } + leaf source-address { + type inet:ipv6-address-no-zone; + must "not(../source-address-any)"; + description + "ipv6 source address for traceroute"; + } + container source-address-any { + must "not(../source-address)"; + presence "Indicates a source-address-any node is configured."; + description + "No traceroute filter for source address"; + } + leaf source-port-start { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Source port start of range"; + } + leaf source-port-end { + type uint32 { + range "0..65535" { + description + "Source port end of range"; + } + } + mandatory true; + description + "Source port end of range"; + } + leaf destination-address { + type inet:ipv6-address-no-zone; + must "not(../destination-address-any)"; + description + "ipv6 dest address for traceroute"; + } + container destination-address-any { + must "not(../destination-address)"; + presence "Indicates a destination-address-any node is configured."; + description + "No traceroute filter for source address"; + } + leaf destination-port-start { + type uint32 { + range "33435..33535" { + description + "Dst port start of range"; + } + } + mandatory true; + description + "Dst port start of range"; + } + leaf destination-port-end { + type uint32 { + range "33435..33535" { + description + "Dst port end of range"; + } + } + mandatory true; + description + "Dst port end of range"; + } + } + } + container tcp { + description + "tcp traceroute"; + list traceroute-filter { + must + "(source-address or source-address-any) + and (destination-address or destination-address-any)"; + key "traceroute-filter-id"; + description + "tcp traceroute"; + leaf traceroute-filter-id { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config"; + } + } + description + "traceroute configuration"; + } + leaf traceroute-filter-id-duped { + type uint32 { + range "1..256" { + description + "Unique ID for the policy config. + It must be same value as traceroute-filter-id"; + } + } + mandatory true; + description + "traceroute configuration"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "Default VRF name"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "VRF name"; + } + } + } + mandatory true; + description + "specify a vrf"; + } + leaf source-address { + type inet:ipv6-address-no-zone; + must "not(../source-address-any)"; + description + "ipv6 source address for traceroute"; + } + container source-address-any { + must "not(../source-address)"; + presence "Indicates a source-address-any node is configured."; + description + "No traceroute filter for source address"; + } + leaf source-port-start { + type uint32 { + range "0..65535"; + } + mandatory true; + description + "Source port start of range"; + } + leaf source-port-end { + type uint32 { + range "0..65535" { + description + "Source port end of range"; + } + } + mandatory true; + description + "Source port end of range"; + } + leaf destination-address { + type inet:ipv6-address-no-zone; + must "not(../destination-address-any)"; + description + "ipv6 dest address for traceroute"; + } + container destination-address-any { + must "not(../destination-address)"; + presence "Indicates a destination-address-any node is configured."; + description + "No traceroute filter for source address"; + } + leaf destination-port-start { + type uint32 { + range "33435..33535" { + description + "Dst port start of range"; + } + } + mandatory true; + description + "Dst port start of range"; + } + leaf destination-port-end { + type uint32 { + range "33435..33535" { + description + "Dst port end of range"; + } + } + mandatory true; + description + "Dst port end of range"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-access-group-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-access-group-cfg.yang new file mode 100644 index 000000000..5d57df255 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-access-group-cfg.yang @@ -0,0 +1,452 @@ +module Cisco-IOS-XR-um-if-access-group-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-access-group-cfg"; + prefix um-if-access-group-cfg; + + import tailf-common { + prefix tailf; + } + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + + 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 if-access-group package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Initial version"; + } + + grouping GROUP-IPV4 { + description + "Grouping for group-ipv4"; + container access-group { + when "../../a1:interface-name[not(starts-with(text(),'tunnel-gre'))] and ../../a1:interface-name[not(starts-with(text(),'tunnel-te'))] and ../../a1:interface-name[not(starts-with(text(),'Loopback'))] and ../../a1:interface-name[not(starts-with(text(),'vasileft'))] and ../../a1:interface-name[not(starts-with(text(),'vasiright'))]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Specify access group for packets"; + container ingress { + must "access-list-name-1"; + presence "Indicates an ingress node is configured."; + description + "IPv4 Packet filter to be applied to inbound + packets"; + xr:xr-xml-map "ip_pfilter_cfg:Outbound"; + container access-list-name-1 { + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-2 { + must "../access-list-name-1"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-3 { + must "../access-list-name-2"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-4 { + must "../access-list-name-3"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-5 { + must "../access-list-name-4"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container hardware-count { + when "../../../../a1:interface-name[not(starts-with(text(),'MgmtEth'))]" { + tailf:dependency "../../../../a1:interface-name"; + } + presence "Indicates a hardware-count node is configured."; + description + "Count packets in hardware"; + } + container interface-statistics { + presence "Indicates an interface-statistics node is configured."; + description + "Per interface statistics in hardware"; + } + leaf compress-level { + type uint32 { + range "0..3"; + } + must "not(../access-list-name-2 or ../access-list-name-1/common)"; + description + "Specify ACL compression in hardware"; + } + } + container egress { + presence "Indicates an egress node is configured."; + description + "IPv4 Packet filter to be applied to outbound + packets"; + xr:xr-xml-map "ip_pfilter_cfg:Outbound"; + container access-list-name { + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + } + container hardware-count { + when "../../../../a1:interface-name[not(starts-with(text(),'MgmtEth'))]" { + tailf:dependency "../../../../a1:interface-name"; + } + presence "Indicates a hardware-count node is configured."; + description + "Count packets in hardware"; + } + container interface-statistics { + presence "Indicates an interface-statistics node is configured."; + description + "Per interface statistics in hardware"; + } + leaf compress-level { + type uint32 { + range "0..3"; + } + description + "Specify ACL compression in hardware"; + } + } + } + } + + grouping GROUP-IPV6 { + description + "Grouping for group-ipv6"; + container access-group { + when "../../a1:interface-name[not(starts-with(text(),'tunnel-gre'))] and ../../a1:interface-name[not(starts-with(text(),'tunnel-te'))] and ../../a1:interface-name[not(starts-with(text(),'Loopback'))] and ../../a1:interface-name[not(starts-with(text(),'vasileft'))] and ../../a1:interface-name[not(starts-with(text(),'vasiright'))]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Specify access group for packets"; + container ingress { + must "access-list-name-1"; + presence "Indicates an ingress node is configured."; + description + "IPv6 Packet filter to be applied to inbound + packets"; + xr:xr-xml-map "ip_pfilter_cfg:Outbound"; + container access-list-name-1 { + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-2 { + must "../access-list-name-1"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-3 { + must "../access-list-name-2"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-4 { + must "../access-list-name-3"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container access-list-name-5 { + must "../access-list-name-4"; + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + container common { + presence "Indicates this is a common Access-list name"; + description + "common Access-list name"; + } + } + container interface-statistics { + presence "Indicates an interface-statistics node is configured."; + description + "Per interface statistics in hardware"; + } + leaf compress-level { + type uint32 { + range "0..3"; + } + must "not(../access-list-name-2 or ../access-list-name-1/common)"; + description + "Specify ACL compression in hardware"; + } + } + container egress { + presence "Indicates an egress node is configured."; + description + "IPv6 Packet filter to be applied to outbound + packets"; + xr:xr-xml-map "ip_pfilter_cfg:Outbound"; + container access-list-name-1 { + presence "Indicates this Access-list name is configured"; + description + "Access-list name"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + mandatory true; + description + "Access-list name"; + } + } + container interface-statistics { + presence "Indicates an interface-statistics node is configured."; + description + "Per interface statistics in hardware"; + } + leaf compress-level { + type uint32 { + range "0..3"; + } + description + "Specify ACL compression in hardware"; + } + } + } + } + + grouping GROUP-ETHERNET-SERVICES { + description + "Grouping for group-ethernet-services"; + container ethernet-services { + when "../a1:interface-name[not(starts-with(text(),'tunnel-ip'))] and ../a1:interface-name[not(starts-with(text(),'tunnel-te'))] and ../a1:interface-name[not(starts-with(text(),'Loopback'))] and ../a1:interface-name[not(starts-with(text(),'BVI'))] and ../a1:interface-name[not(starts-with(text(),'MgmtEth'))]" { + tailf:dependency "../a1:interface-name"; + } + description + "Ethernet related services"; + container access-group { + description + "Specify access control for packets"; + leaf ingress { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "ingress Access-list name"; + } + leaf egress { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + description + "egress Access-list name"; + } + } + } + } + + augment "/a1:interfaces/a1:interface/a1:ipv4" { + description + "This augment extends active nodes configuration"; + uses GROUP-IPV4; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv4" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-IPV4; + } + augment "/a1:interfaces/a1:interface/a1:ipv6" { + description + "This augment extends active nodes configuration"; + uses GROUP-IPV6; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv6" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-IPV6; + } + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses GROUP-ETHERNET-SERVICES; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-ETHERNET-SERVICES; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-arp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-arp-cfg.yang new file mode 100644 index 000000000..43ee965aa --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-arp-cfg.yang @@ -0,0 +1,273 @@ +module Cisco-IOS-XR-um-if-arp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-arp-cfg"; + prefix um-if-arp-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 if arp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-26 { + description + "Added support for ARP DAGR and Cache Limit + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2019-10-10 { + description + "Initial version"; + semver:module-version "1.0.0"; + } + + feature drop-adjacency { + description + "Set ARP drop adjacency timeout"; + } + + grouping IF-ARP { + description + "Grouping for if-arp"; + container arp { + description + "Configure Address Resolution Protocol"; + leaf timeout { + type uint32 { + range "30..2144448000" { + description + "Seconds"; + } + } + description + "Set ARP cache timeout"; + } + leaf purge-delay { + type uint32 { + range "1..65535" { + description + "Purge delay in seconds"; + } + } + description + "Delay purging ARP entries when the interface goes down"; + } + container learning { + description + "Configuration for dynamic learning of ARP entries"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable dynamic learning of ARP entries"; + } + container local { + presence "Indicates a local node is configured."; + description + "Enable dynamic learning only for local subnet only"; + } + container solicited { + presence "Indicates a solicited node is configured."; + description + "Enable dynamic learning only for solicited ARP packets"; + } + } + container gratuitous { + description + "Configure the handling of Gratuitous ARP packets"; + container ignore { + presence "Indicates a ignore node is configured."; + description + "Ignore the receipt of Gratuitous ARP packets"; + } + } + container drop-adjacency { + if-feature "drop-adjacency"; + description + "Set ARP drop adjacency timeout"; + leaf timeout { + type uint32 { + range "900..7200" { + description + "Seconds"; + } + } + default "3600"; + description + "Specify timeout"; + } + } + leaf cache-limit { + type uint32 { + range "0..127999" { + description + "Cache Limit value"; + } + } + description + "Set cache limit for ARP entries"; + } + container dagr { + description + "ARP Direct Attached Gateway Redundancy Configuration"; + container peer { + description + "Configure DAGR peer"; + container ipv4s { + description + "Configure DAGR Peer IPv4 address"; + list ipv4 { + key "address"; + description + "Configure DAGR Peer IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Configure DAGR Peer IPv4 address"; + } + container route { + description + "Configure DAGR route options"; + container distance { + description + "Route Distance options"; + leaf normal { + type uint32 { + range "0..256" { + description + "Normal Route distance"; + } + } + must "../priority"; + description + "Set normal route distance"; + } + leaf priority { + type uint32 { + range "0..256" { + description + "Priority Route distance"; + } + } + must "../normal"; + description + "Set priority route distance"; + } + } + container metric { + description + "Route Metric Options"; + leaf normal { + type uint32 { + range "0..256" { + description + "Normal Route metric"; + } + } + must "../priority"; + description + "Set normal route metric"; + } + leaf priority { + type uint32 { + range "0..256" { + description + "Priority Route metric"; + } + } + must "../normal"; + description + "Set priority route metric"; + } + } + } + container timers { + description + "DAGR Timer configuration"; + leaf query { + type uint32 { + range "1..10000" { + description + "Query timer"; + } + } + must "../standby"; + description + "Set query timer value"; + } + leaf standby { + type uint32 { + range "1..10000" { + description + "Standby Query timer"; + } + } + must "../query"; + description + "Set Standby Query timer"; + } + } + leaf priority-timeout { + type uint32 { + range "1..10000" { + description + "Query timer"; + } + } + description + "DAGR Priority Timeout"; + } + } + } + } + } + } + container proxy-arp { + presence "Indicates a proxy-arp node is configured."; + description + "Enable proxy ARP"; + } + container local-proxy-arp { + presence "Indicates a local-proxy-arp node is configured."; + description + "Enable local proxy ARP"; + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-ARP; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-ARP; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-bundle-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-bundle-cfg.yang new file mode 100644 index 000000000..093403623 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-bundle-cfg.yang @@ -0,0 +1,828 @@ +module Cisco-IOS-XR-um-if-bundle-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-bundle-cfg"; + prefix um-if-bundle-cfg; + + import cisco-semver { + prefix semver; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + + 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 if-bundle package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "3.1.0"; + } + revision 2021-03-30 { + description + "Updated with statement for 800G interface"; + semver:module-version "3.0.0"; + } + revision 2020-12-21 { + description + "Added logging container inside bundle + 2020-12-15 + Changed type of mlacp/switchover/maximize/bandwidth/threshold + from uint32 to uint64"; + semver:module-version "2.1.0"; + } + revision 2020-05-26 { + description + "- Updated integer range of mbps and gbps + - Removed container period-on-bundle and when statement from + container period + - Added when statement as appropriate + 2020-05-15 + Leaf changes for ipv4 container + 2020-04-27 + model leaf changes for ipv4 and ipv6 containers"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-29 { + description + "Initial version"; + } + + grouping GROUP-BUNDLE { + description + "Grouping for group-bundle"; + container bundle { + when "../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Bundle interface commands"; + container minimum-active { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Set the minimum criteria for the bundle to be active"; + leaf links { + type uint32 { + range "1..64" { + description + "Number of active links needed to bring up this bundle"; + } + } + description + "Set the number of active links needed to bring up this bundle"; + } + container bandwidth { + description + "Set the bandwidth needed to bring up this bundle"; + leaf bandwidth { + type uint32 { + range "1..4294967295" { + description + "Bandwidth needed to bring up this bundle (in kbps)"; + } + } + description + "Set the bandwidth (in kbps) needed to bring up this bundle"; + } + leaf kbps { + type uint32 { + range "1..4294967295" { + description + "Bandwidth needed to bring up this bundle (in kbps)"; + } + } + description + "Set the bandwidth in kbps"; + } + leaf mbps { + type uint32 { + range "1..4294967295" { + description + "Bandwidth needed to bring up this bundle (in mbps)"; + } + } + description + "Set the bandwidth in mbps"; + } + leaf gbps { + type uint32 { + range "1..4294967295" { + description + "Bandwidth needed to bring up this bundle (in gbps)"; + } + } + description + "Set the bandwidth in gbps"; + } + } + } + container maximum-active { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Set a limit on the number of links that can be active"; + container links { + presence "Indicates a links node is configured."; + description + "Set the maximum number of active links in this bundle"; + leaf maximum-number { + type uint32 { + range "1..64" { + description + "Maximum number of active links in this bundle"; + } + } + mandatory true; + description + "Set the maximum number of active links in this bundle"; + } + container hot-standby { + presence "Indicates a hot-standby node is configured."; + description + "Hot-standby behaviour (non-standard, only effective on links with LACP enabled)"; + } + } + } + leaf wait-while { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + type uint32 { + range "0..2000" { + description + "Wait-while timeout in milliseconds (default: 2000)"; + } + } + description + "Set the wait-while timeout for members of this bundle"; + } + container shutdown { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + presence "Indicates a shutdown node is configured."; + description + "Bring all links in the bundle down to Standby state"; + } + container load-balancing { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Load balancing commands on a bundle"; + container hash { + description + "Select the hash function used for traffic forwarded over the bundle"; + container src-ip { + presence "Indicates a src-ip node is configured."; + description + "Use the source IP as the hash function"; + } + container dst-ip { + presence "Indicates a dst-ip node is configured."; + description + "Use the destination IP as the hash function"; + } + } + container localize { + description + "Restrict forwarding to members in the same rack where possible"; + container threshold { + description + "The threshold below which traffic is no longer localized"; + leaf links { + type uint32 { + range "1..64" { + description + "The number of links required on each rack to localize"; + } + } + description + "Set a threshold of active member links per rack"; + } + } + } + } + leaf lacp-delay { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + type uint32 { + range "1000..15000" { + description + "Lacp-delay timeout in milliseconds"; + } + } + description + "Set the lacp-delay timeout for members of this bundle"; + } + container logging { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "logging events for the members of this bundle"; + container oos { + presence "Indicates a oos node is configured."; + description + "Enable OOS logging events for the members of this bundle"; + } + } + container lacp-fallback { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Set the lacp-fallback for members of this bundle"; + leaf timeout { + type uint32 { + range "1..120" { + description + "Lacp-Fallback timer in seconds"; + } + } + description + "Set the timeout for lacp-fallback"; + } + } + container id { + when "../../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../../a1:interface-name[starts-with(text(),'TenGigE')] or ../../a1:interface-name[starts-with(text(),'FortyGigE')] or ../../a1:interface-name[starts-with(text(),'HundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../../a1:interface-name"; + } + presence "Indicates a id node is configured."; + description + "Add the port to an aggregated interface."; + leaf bundle-id { + type uint32 { + range "1..65535" { + description + "Identifier of the bundle to add the port to."; + } + } + mandatory true; + description + "Add the port to an aggregated interface."; + } + leaf mode { + type enumeration { + enum "on" { + value 1; + description + "Do not run LACP over the port."; + } + enum "active" { + value 2; + description + "Run LACP in active mode over the port."; + } + enum "passive" { + value 3; + description + "Run LACP in passive mode over the port."; + } + enum "inherit" { + value 4; + description + "Run LACP as configured in bundle."; + } + } + mandatory true; + description + "Specify the mode of operation."; + } + } + leaf port-priority { + when "../../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../../a1:interface-name[starts-with(text(),'TenGigE')] or ../../a1:interface-name[starts-with(text(),'FortyGigE')] or ../../a1:interface-name[starts-with(text(),'HundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../../a1:interface-name"; + } + type uint32 { + range "1..65535" { + description + "Priority for this port. Lower value is higher priority."; + } + } + description + "Priority for this port. Lower value is higher priority."; + } + } + container bfd { + when "../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../a1:interface-name"; + } + description + "BFD configuration on a bundle interface"; + container address-family { + description + "Set configuration for a given address family"; + container ipv4 { + description + "Set configuration for the IPv4 address family"; + leaf destination { + type inet:ipv4-address-no-zone; + description + "Set the destination address for the BFD session"; + } + container echo { + description + "Set the configuration for the echo mode of BFD"; + leaf minimum-interval { + type uint32 { + range "15..2000" { + description + "The preferred minimum interval (in ms) for the BFD session"; + } + } + description + "Set the preferred minimum interval for the BFD session"; + } + } + leaf minimum-interval { + type uint32 { + range "3..30000" { + description + "The preferred minimum interval (in ms) for the BFD session"; + } + } + description + "Set the preferred minimum interval for the BFD session"; + } + leaf multiplier { + type uint32 { + range "2..50" { + description + "The preferred multiplier for the BFD session"; + } + } + description + "Set the preferred multiplier for the BFD session"; + } + container fast-detect { + presence "Indicates a fast-detect node is configured."; + description + "Enable fast detection using BFD on bundle members"; + } + container timers { + description + "Set the timers that determine when a BFD session defaults to down"; + leaf start { + type uint32 { + range "1..3600" { + description + "Time in seconds"; + } + } + description + "The time since starting a BFD session before it is considered to have gone down"; + } + leaf nbr-unconfig { + type uint32 { + range "1..3600" { + description + "Time in seconds"; + } + } + description + "The time since a BFD signalled that a peer session is unconfigured before it is considered to have gone down"; + } + } + } + container ipv6 { + description + "Set configuration for the IPv6 address family"; + leaf destination { + type inet:ipv6-address-no-zone; + description + "Set the destination address for the BFD session"; + } + leaf minimum-interval { + type uint32 { + range "3..30000" { + description + "The preferred minimum interval (in ms) for the BFD session"; + } + } + description + "Set the preferred minimum interval for the BFD session"; + } + leaf multiplier { + type uint32 { + range "2..50" { + description + "The preferred multiplier for the BFD session"; + } + } + description + "Set the preferred multiplier for the BFD session"; + } + container fast-detect { + presence "Indicates a fast-detect node is configured."; + description + "Enable fast detection using BFD on bundle members"; + } + container timers { + description + "Set the timers that determine when a BFD session defaults to down"; + leaf start { + type uint32 { + range "1..3600" { + description + "Time in seconds"; + } + } + description + "The time since starting a BFD session before it is considered to have gone down"; + } + leaf nbr-unconfig { + type uint32 { + range "1..3600" { + description + "Time in seconds"; + } + } + description + "The time since a BFD signalled that a peer session is unconfigured before it is considered to have gone down"; + } + } + } + } + container mode { + must "cisco or ietf"; + presence "Indicates a mode node is configured."; + description + "Standard used for per-member BFD"; + container cisco { + presence "Indicates a cisco node is configured."; + description + "Use Cisco standard for BoB"; + } + container ietf { + presence "Indicates a ietf node is configured."; + description + "Use IETF standard for BoB"; + } + } + } + container lacp { + when "../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Bundle interface LACP commands"; + container switchover { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Modify behavior for switching between links in this bundle"; + leaf suppress-flaps { + type uint32 { + range "100..65535" { + description + "The longest down flap which should be suppressed (milliseconds)"; + } + } + description + "Set the time for which to suppress flaps during a LACP switchover"; + } + } + container churn { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Settings for LACP churn detection"; + leaf logging { + type enumeration { + enum "actor" { + value 1; + description + "Log actor churn events only"; + } + enum "partner" { + value 2; + description + "Log partner churn events only"; + } + enum "both" { + value 3; + description + "Log actor and partner churn events"; + } + } + description + "Set parameters for logging of churn events"; + } + } + leaf collector-max-delay { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + type uint32 { + range "0..65535" { + description + "The delay in tens of microseconds (default: 0xFFFF)"; + } + } + description + "Collector max delay to be signaled to the LACP partner"; + } + container timeout { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Set timeout values for LACP-related timers"; + leaf rx-default { + type uint32 { + range "0..3000" { + description + "The time in milliseconds for which to run the timer"; + } + } + description + "Set the timeout between expired and defaulted states"; + } + leaf actor-churn { + type uint32 { + range "0..120" { + description + "The time in milliseconds for which to run the timer"; + } + } + description + "Set the timeout to use before declaring actor churn"; + } + leaf partner-churn { + type uint32 { + range "0..120" { + description + "The time in milliseconds for which to run the timer"; + } + } + description + "Set the timeout to use before declaring partner churn"; + } + } + container cisco { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Cisco LACP extensions"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable the use of Cisco LACP extensions"; + container link-order { + description + "Link ordering numbers processing"; + container signaled { + presence "Indicates a signaled node is configured."; + description + "Turn on processing of link ordering numbers"; + } + } + } + } + container non-revertive { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + presence "Indicates a non-revertive node is configured."; + description + "Set the bundle to lacp non-revertive mode"; + } + leaf mode { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + type enumeration { + enum "on" { + value 0; + description + "Do not run LACP over the port."; + } + enum "active" { + value 1; + description + "Run LACP in active mode over the port."; + } + enum "passive" { + value 2; + description + "Run LACP in passive mode over the port."; + } + } + description + " Set the LACP mode on bundle to be used by its member link"; + } + container system { + when "../../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../../a1:interface-name"; + } + description + "Set the default system parameters for LACP bundles"; + leaf priority { + type uint32 { + range "1..65535" { + description + "Bundle LACP system priority. Lower value is higher priority."; + } + } + description + "The system priority to use in LACP negotiations."; + } + leaf mac { + type yang:mac-address; + description + "Configure the system ID to use in LACP negotiations for this bundle."; + } + } + container period { + must "transmission-id or short"; + presence "Indicates a period node is configured."; + description + "Set the period on bundle to be used by its member link"; + leaf transmission-id { + type uint32 { + range "2..30000" { + description + "Specify the requested transmission period (in milliseconds) for the partner system (must be multiple of 2; default 1000)"; + } + } + description + " Set the period on bundle to be used by its member link"; + } + container short { + presence "Indicates a short node is configured."; + description + "set the short period on bundle"; + } + } + leaf default-threshold { + when "../../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../../a1:interface-name[starts-with(text(),'TenGigE')] or ../../a1:interface-name[starts-with(text(),'FortyGigE')] or ../../a1:interface-name[starts-with(text(),'HundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../../a1:interface-name"; + } + type uint32 { + range "1..3" { + description + "Number of LACP packet that are missed before link is defaulted."; + } + } + description + "Set the LACP packet default threshold"; + } + leaf expire-threshold { + when "../../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../../a1:interface-name[starts-with(text(),'TenGigE')] or ../../a1:interface-name[starts-with(text(),'FortyGigE')] or ../../a1:interface-name[starts-with(text(),'HundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../../a1:interface-name"; + } + type uint32 { + range "1..3" { + description + "Number of LACP packet that are missed before link is expired."; + } + } + description + "Set the LACP packet expire threshold"; + } + } + container mlacp { + when "../a1:interface-name[starts-with(text(),'Bundle-')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Multi-chassis LACP per-interface commands"; + leaf iccp-group { + type uint32 { + range "1..4294967295" { + description + "The ICCP redundancy group in which this bundle should operate."; + } + } + description + "ICCP redundancy group related commands for this bundle."; + } + leaf port-priority { + type uint32 { + range "1..65535" { + description + "Priority for member ports. Lower value is higher priority."; + } + } + description + "Set the priority for all member links on this device when running mLACP."; + } + container switchover { + description + "Set the parameters for performing a switchover to/from the mLACP peer"; + leaf type { + type enumeration { + enum "brute-force" { + value 1; + description + "Force switchover by disabling all local member links"; + } + enum "revertive" { + value 2; + description + "Revert based on configured priority values"; + } + } + description + "Set the type of switchover operation to use"; + } + container maximize { + description + "Parameters for switchover behavior to maximize operational links/bandwidth"; + container links { + presence "Indicates a links node is configured."; + description + "Compare the number of operational links"; + leaf threshold { + type uint32 { + range "1..64" { + description + "The number of links below which to switch to the peer if it has more links available"; + } + } + description + "Set the threshold below which to switch to the peer if it has more links available"; + } + } + container bandwidth { + presence "Indicates a bandwidth node is configured."; + description + "Compare the total bandwidth of operational links"; + leaf threshold { + type uint64 { + range "1..18446744073709551615" { + description + "The bandwidth (in kbps) below which to switch to the peer if it has more bandwidth available"; + } + } + description + "Set the threshold below which to switch to the peer if it has more bandwidth available"; + } + } + } + leaf recovery-delay { + type uint32 { + range "0..65535" { + description + "Recovery delay in seconds."; + } + } + description + "Specify delay before bundle becoming active after recovery from failure"; + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses GROUP-BUNDLE; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-BUNDLE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-dhcp-client-options-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-dhcp-client-options-cfg.yang new file mode 100644 index 000000000..11cf873a0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-dhcp-client-options-cfg.yang @@ -0,0 +1,141 @@ +module Cisco-IOS-XR-um-if-dhcp-client-options-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-dhcp-client-options-cfg"; + prefix um-if-dhcp-client-options-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 if-dhcp-client-options package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-04-20 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-IPV4-BODY { + description + "Grouping for if-ipv4"; + container address { + description + "Set the IPv4 address of an interface"; + container dhcp-client-options { + presence "Indicates a dhcp-client-options node is configured."; + description + "dhcp client option"; + container option { + description + "Insert option keyword"; + container vendor-id-option-60 { + must + "not(../client-id-option-61 or + ../user-class-id-option-77)"; + presence "Indicates a vendor-id-option-60 node is configured."; + description + "set vendor id option"; + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..255" { + description + "Enter ascii pattern"; + } + } + mandatory true; + description + "Option 60 in ascii"; + } + } + container client-id-option-61 { + must + "not(../vendor-id-option-60 or + ../user-class-id-option-77) and + (ascii or sn-chassis)"; + presence "Indicates a client-id-option-61 node is configured."; + description + "set client id option"; + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..255" { + description + "Enter ascii pattern"; + } + } + must "not(../sn-chassis)"; + description + "Option 61 in ascii"; + } + container sn-chassis { + must "not(../ascii)"; + presence "Indicates a sn-chassis node is configured."; + description + "sn chassis number"; + } + } + container user-class-id-option-77 { + must + "not(../vendor-id-option-60 or + ../client-id-option-61)"; + presence "Indicates a user-class-id-option-77 node is configured."; + description + "set user class id option"; + leaf ascii { + type xr:Cisco-ios-xr-string { + length "1..255" { + description + "Enter ascii pattern"; + } + } + mandatory true; + description + "Option 77 in ascii"; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface/a1:ipv4" { + description + "This augment extends active nodes configuration"; + uses IF-IPV4-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv4" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-IPV4-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-encap-ambiguous-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-encap-ambiguous-cfg.yang new file mode 100644 index 000000000..dc050a301 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-encap-ambiguous-cfg.yang @@ -0,0 +1,535 @@ +module Cisco-IOS-XR-um-if-encap-ambiguous-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-encap-ambiguous-cfg"; + prefix um-if-encap-ambiguous-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 if-encap-ambiguous package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2021-12-10 + Updated must checks for dot1q/vlan-id and dot1ad/vlan-id"; + semver:module-version "1.1.0"; + } + revision 2020-07-17 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container encapsulation { + when "(../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')])and ../a1:interface-name[contains(text(),'.')]and not(../a1:sub-interface-type/a1:l2transport)" { + tailf:dependency "../a1:interface-name"; + } + description + "Specify which packets will be matched by this sub-interface"; + container ambiguous { + description + "Ambiguous L3 VLAN configuration"; + container dot1q { + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "not(../any) and (../end-vlan-id or ../vlan-id-2 or ../second-dot1q/vlan-id or ../second-dot1q/any)"; + description + "Single VLAN id or start of VLAN range"; + } + container any { + must "not(../vlan-id)"; + presence "Indicates a any node is configured."; + description + "Match any VLAN id"; + } + leaf end-vlan-id { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id"; + description + "End of VLAN range"; + } + leaf vlan-id-2 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-2 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-2"; + description + "End of VLAN range"; + } + leaf vlan-id-3 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-2"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-3 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-3"; + description + "End of VLAN range"; + } + leaf vlan-id-4 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-3"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-4 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-4"; + description + "End of VLAN range"; + } + leaf vlan-id-5 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-4"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-5 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-5"; + description + "End of VLAN range"; + } + leaf vlan-id-6 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-5"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-6 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-6"; + description + "End of VLAN range"; + } + leaf vlan-id-7 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-6"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-7 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-7"; + description + "End of VLAN range"; + } + leaf vlan-id-8 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-7"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-8 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-8"; + description + "End of VLAN range"; + } + leaf vlan-id-9 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-8"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-9 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-9"; + description + "End of VLAN range"; + } + container second-dot1q { + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../../any and not(../any)"; + description + "Single VLAN id"; + } + container any { + must "not(../vlan-id)"; + presence "Indicates a any node is configured."; + description + "Match any VLAN id"; + } + } + } + container dot1ad { + description + "IEEE 802.1ad VLAN-tagged packets"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "not(../any) and (../end-vlan-id or ../vlan-id-2)"; + description + "Single VLAN id or start of VLAN range"; + } + container any { + must "not(../vlan-id)"; + presence "Indicates a any node is configured."; + description + "Match any VLAN id"; + } + leaf end-vlan-id { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id"; + description + "End of VLAN range"; + } + leaf vlan-id-2 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-2 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-2"; + description + "End of VLAN range"; + } + leaf vlan-id-3 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-2"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-3 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-3"; + description + "End of VLAN range"; + } + leaf vlan-id-4 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-3"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-4 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-4"; + description + "End of VLAN range"; + } + leaf vlan-id-5 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-4"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-5 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-5"; + description + "End of VLAN range"; + } + leaf vlan-id-6 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-5"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-6 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-6"; + description + "End of VLAN range"; + } + leaf vlan-id-7 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-6"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-7 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-7"; + description + "End of VLAN range"; + } + leaf vlan-id-8 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-7"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-8 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-8"; + description + "End of VLAN range"; + } + leaf vlan-id-9 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-8"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-9 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-9"; + description + "End of VLAN range"; + } + container dot1q { + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../../any and not(../any)"; + description + "Single VLAN id"; + } + container any { + must "not(../vlan-id)"; + presence "Indicates a any node is configured."; + description + "Match any VLAN id"; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-cfg.yang new file mode 100644 index 000000000..cfbdc38ab --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-cfg.yang @@ -0,0 +1,522 @@ +module Cisco-IOS-XR-um-if-ethernet-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-ethernet-cfg"; + prefix um-if-ethernet-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + + 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 if-ethernet package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-30 { + description + "Added crc-ber auto-recover node + 2022-08-11 + Added forwarding-unviable node + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "3.1.0"; + } + revision 2021-03-30 { + description + "Updated with statement for 800G interface"; + semver:module-version "3.0.0"; + } + revision 2019-12-12 { + description + "Made changes for priority-flow-control and added frame preemption"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-30 { + description + "Initial version"; + } + + grouping GROUP-BODY { + description + "Grouping for interface group"; + container threshold { + when "../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Commands to set the threshold for the appropriate Bit Error Rate"; + leaf sd-ber { + type uint32 { + range "3..15" { + description + "Set an SD BER Threshold of 10e-x, where x is the value passed in here"; + } + } + description + "Set the Signal Degrade Bit Error Rate threshold"; + } + leaf sf-ber { + type uint32 { + range "4..15" { + description + "Set an SF BER threshold of 10e-x, where x is the value passed in here"; + } + } + description + "Set the Signal Fail Bit Error Rate threshold"; + } + } + container report { + when "../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Commands to control interface alarm reporting"; + container sd-ber { + presence "Indicates a sd-ber node is configured."; + description + "Enable Signal Degrade alarm reporting"; + } + container sf-ber { + description + "Commands to control Signal Fail alarm reporting"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Signal Fail alarm reporting"; + } + } + container crc-ber { + presence "Indicates a crc-ber node is configured."; + description + "Enable CRC based ber monitoring"; + } + } + container signal { + when "../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Bit Error Rate handling signalling commands"; + container sf-ber { + description + "Signal Fail Bit Error Rate signalling commands"; + container remote-fault { + presence "Indicates a remote-fault node is configured."; + description + "Enable Signal Fail remote fault signalling"; + } + } + } + container carrier-delay { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Set the carrier delay on an interface"; + leaf up { + type uint32 { + range "0..2147483647" { + description + "Delay in milliseconds"; + } + } + description + "Set the carrier delay up value"; + } + leaf down { + type uint32 { + range "0..2147483647" { + description + "Delay in milliseconds"; + } + } + description + "Set the carrier delay down value"; + } + } + leaf duplex { + when "../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + type enumeration { + enum "full" { + value 0; + description + "Full duplex"; + } + enum "half" { + value 1; + description + "Half duplex"; + } + } + description + "Configure duplex operational mode"; + } + leaf fec { + when "../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + type enumeration { + enum "none" { + value 0; + description + "Disable any FEC enabled on the interface"; + } + enum "standard" { + value 1; + description + "Enable the standard (CL-91, Reed-Solomon) FEC"; + } + enum "base-r" { + value 2; + description + "Enable BASE-R FEC"; + } + } + description + "Set the Forward Error Correction on an interface"; + } + leaf flow-control { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'CPRIoE')]" { + tailf:dependency "../a1:interface-name"; + } + type enumeration { + enum "ingress" { + value 0; + description + "Enable the sending of flow control pause frames"; + } + enum "egress" { + value 1; + description + "Enable the receiving of flow control pause frames"; + } + enum "bidirectional" { + value 2; + description + "Enable both sending and receiving of flow control pause frames"; + } + } + description + "Set the flow control mode on an interface"; + } + leaf packet-gap { + when "../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'TenGigE')]" { + tailf:dependency "../a1:interface-name"; + } + type enumeration { + enum "non-standard" { + value 16; + description + "Set the non-standard IPG"; + } + } + description + "Set the IPG on an interface"; + } + leaf loopback { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'CPRIoE')]" { + tailf:dependency "../a1:interface-name"; + } + type enumeration { + enum "external" { + value 0; + description + "Enable external loopback (requires loopback connector)"; + } + enum "internal" { + value 1; + description + "Enable internal loopback"; + } + enum "line" { + value 2; + description + "Enable line loopback"; + } + } + description + "Set the loopback mode on an interface"; + } + container negotiation { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Select autonegotiation mode"; + container auto { + presence "Indicates a auto node is configured."; + description + "Perform link autonegotiation"; + container allow-overrides { + presence "Indicates a allow-overrides node is configured."; + description + "Allow configured values to override negotiated settings"; + } + } + } + leaf speed { + when "../a1:interface-name[starts-with(text(),'MgmtEth')] or ../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'PTP')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')]" { + tailf:dependency "../a1:interface-name"; + } + type enumeration { + enum "10" { + value 10; + description + "Ethernet is 10Mb"; + } + enum "100" { + value 100; + description + "Ethernet is 100Mb"; + } + enum "1000" { + value 1000; + description + "Ethernet is 1Gb"; + } + } + description + "Set the ethernet speed on an interface"; + } + container priority-flow-control { + when "../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Priority flow control options"; + leaf mode { + type enumeration { + enum "off" { + value 0; + description + "Disable priority flow control"; + } + enum "on" { + value 1; + description + "Enable priority flow control"; + } + } + description + "Set priority flow control mode"; + } + container watchdog { + description + " Priority flow control watchdog options"; + leaf mode { + type enumeration { + enum "off" { + value 0; + description + "Disable priority flow control watchdog"; + } + enum "on" { + value 1; + description + "Enable priority flow control watchdog"; + } + } + description + "Set priority flow control watchdog mode"; + } + leaf interval { + type uint32 { + range "100..1000" { + description + "units: milli seconds"; + } + } + description + "PFC WD Polling Interval"; + } + leaf shutdown-multiplier { + type uint32 { + range "1..10" { + description + "units: (shutdown-multiplier * interval) milliseconds"; + } + } + description + "Pause Storm Detection Timer Threshold"; + } + leaf auto-restore-multiplier { + type uint32 { + range "0..100" { + description + "units: (auto-restore-multiplier * interval) milli seconds"; + } + } + description + "Watchdog Auto Restore Timer"; + } + } + } + container fast-shutdown { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ((../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]) and ../a1:interface-name[not(contains(text(),'.'))])" { + tailf:dependency "../a1:interface-name"; + } + presence "Indicates a fast-shutdown node is configured."; + description + "Enable fast shutdown"; + } + container optical-power { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ((../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]) and ../a1:interface-name[not(contains(text(),'.'))])" { + tailf:dependency "../a1:interface-name"; + } + description + "Commands to set the optical power degrade alarm threshold"; + container alarm { + description + "Set the optical power alarm threshold"; + leaf rx { + type int32 { + range "-300..50" { + description + "The optical power degrade threshold, in units of tenths of dBm"; + } + } + description + "Set the alarm threshold for received optical power"; + } + } + } + container frame-preemption { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'CPRIoE')]" { + tailf:dependency "../a1:interface-name"; + } + presence "Indicates a frame-preemption node is configured."; + description + "Configure frame preemption operational mode"; + } + container forwarding-unviable { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'CPRIoE')]" { + tailf:dependency "../a1:interface-name"; + } + presence "Indicates that forwarding-unviable configuration is applied on the ethernet interface"; + description + "Disable traffic forwarding on the ethernet port"; + } + container crc-ber { + when "../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Commands to control interface recovery"; + leaf auto-recover { + type uint32 { + range "0..60" { + description + "Set recovery timer, 1-60 mins, 0 for manual recovery"; + } + } + description + "Set auto-recovery of link from CRC-BER"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses GROUP-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-BODY; + } + container fast-shutdown { + description + "Fast shutdown Configuration"; + container ethernet { + presence "Indicates a ethernet node is configured."; + description + "Activate fast shutdown for all Ethernet interfaces"; + } + } + container priority-flow-control { + description + "Priority flow control actions on all interfaces"; + container watchdog { + description + "Priority flow control watchdog options"; + leaf mode { + type enumeration { + enum "off" { + value 0; + description + "Disable priority flow control watchdog"; + } + enum "on" { + value 1; + description + "Enable priority flow control watchdog"; + } + } + description + "Set priority flow control watchdog mode"; + } + leaf interval { + type uint32 { + range "100..1000" { + description + "units: milli seconds"; + } + } + description + "PFC WD Polling Interval"; + } + leaf shutdown-multiplier { + type uint32 { + range "1..10" { + description + "units: (shutdown-multiplier * interval) milliseconds"; + } + } + description + "Pause Storm Detection Timer Threshold"; + } + leaf auto-restore-multiplier { + type uint32 { + range "0..100" { + description + "units: (auto-restore-multiplier * interval) milli seconds"; + } + } + description + "Watchdog Auto Restore Timer"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-lmi-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-lmi-cfg.yang new file mode 100644 index 000000000..452b7649e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ethernet-lmi-cfg.yang @@ -0,0 +1,136 @@ +module Cisco-IOS-XR-um-if-ethernet-lmi-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-ethernet-lmi-cfg"; + prefix um-if-ethernet-lmi-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 if-ethernet-lmi package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-06-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-ETHER-BODY { + description + "Grouping for if-ether"; + container ethernet { + description + "Ethernet per-interface configuration commands"; + container lmi { + presence "Indicates a lmi node is configured."; + description + "Enable the Local Management Interface protocol"; + leaf status-counter { + type uint32 { + range "2..10" { + description + "Status counter threshold value"; + } + } + description + "Status counter threshold (N393 in MEF 16)"; + } + container polling-verification-timer { + description + "polling-verification-timer configuration"; + leaf timer-interval { + type uint32 { + range "5..30" { + description + "Timer interval in seconds"; + } + } + must "not(../disable)"; + description + "Polling verification timer interval (T392 in MEF 16)"; + } + container disable { + must "not(../timer-interval)"; + presence "Indicates a disable node is configured."; + description + "Disable the polling verification timer"; + } + } + container extension { + description + "Configure Cisco proprietary extensions"; + container remote-uni { + description + "Configure the Remote UNI Details extension"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable the Remote UNI Details extension"; + } + } + } + container log { + description + "Configure logging for particular types of event"; + container errors { + description + "Configure logging of protocol and reliability errors"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable logging of protocol and reliability errors"; + } + } + container events { + description + "Configure logging of significant protocol events"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable logging of significant protocol events"; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-ETHER-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-ETHER-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ip-address-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ip-address-cfg.yang new file mode 100644 index 000000000..8e056a315 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ip-address-cfg.yang @@ -0,0 +1,352 @@ +module Cisco-IOS-XR-um-if-ip-address-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-ip-address-cfg"; + prefix um-if-ip-address-cfg; + + import cisco-semver { + prefix semver; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + + 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 interface package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2021-09-14 + Added leaf algorithm under container address, secondaries and eui64-addresses"; + semver:module-version "3.1.0"; + } + revision 2020-05-27 { + description + "- Included BVI interface under when statement for container dhcp + - Added container dhcp and dhcp-client-options under ipv6 addresses"; + semver:module-version "3.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "2.0.0"; + } + revision 2019-03-29 { + description + "Initial version"; + } + + grouping GROUP-IPV4 { + description + "Interface IPv4 config commands"; + container addresses { + description + "Set the IPv4 address of an interface"; + container address { + presence "Indicates a address node is configured."; + description + "IP address and Mask"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP subnet mask"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "Route-tag to be associated with this address"; + } + leaf algorithm { + type uint32 { + range "128..255" { + description + "Algorithm value (default: no algo)"; + } + } + description + "Algorithm to be associated with this address"; + } + } + container secondaries { + description + "Specify a secondary address"; + list secondary { + key "address"; + description + "IP address and Mask"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Secondary IP address"; + } + leaf netmask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Netmask"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "Route-tag to be associated with this address"; + } + leaf algorithm { + type uint32 { + range "128..255" { + description + "Algorithm value (default: no algo)"; + } + } + description + "Algorithm to be associated with this address"; + } + } + } + leaf unnumbered { + when "../../../a1:interface-name[not(starts-with(text(),'pw-ether'))]" { + tailf:dependency "../../../a1:interface-name"; + } + type xr:Interface-name; + description + "Enable IP processing without an explicit address"; + } + container dhcp { + when "../../../a1:interface-name[starts-with(text(),'MgmtEth')] or ../../../a1:interface-name[starts-with(text(),'BVI')]" { + tailf:dependency "../../../a1:interface-name"; + } + presence "Indicates a dampening node is configured."; + description + "IPv4 address and Mask negotiated via DHCP"; + } + } + } + + grouping GROUP-IPV6 { + description + "Interface IPv6 config commands"; + container addresses { + description + "Set the IPv6 address of an interface"; + list ipv6-address { + key "address"; + description + "IPv6 address"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv6 name or address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "Prefix length in bits"; + } + leaf zone { + type union { + type string { + pattern "0" { + description + "Default zone id. This value must be set when + zone is not intended to be set."; + } + } + type string; + } + mandatory true; + description + "IPv6 address zone"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "Route-tag to be associated with this address"; + } + leaf algorithm { + type uint32 { + range "128..255" { + description + "Algorithm value (default: no algo)"; + } + } + description + "Algorithm to be associated with this address"; + } + } + container link-local-address { + presence "Indicates a link-local-address node is configured."; + description + "Link local IPv6 address"; + leaf address { + type inet:ip-address-no-zone; + mandatory true; + description + "IPv6 address"; + } + leaf zone { + type union { + type string { + pattern "0" { + description + "Default zone id. This value must be set when + zone is not intended to be set."; + } + } + type string; + } + mandatory true; + description + "IPv6 address zone"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "Route-tag to be associated with this address"; + } + } + container eui64-addresses { + description + "EUI-64 IPv6 address"; + list eui64-address { + key "address"; + description + "EUI-64 IPv6 address"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv6 address"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "Prefix Length"; + } + leaf zone { + type union { + type string { + pattern "0" { + description + "Default zone id. This value must be set when + zone is not intended to be set."; + } + } + type string; + } + mandatory true; + description + "IPv6 address zone"; + } + leaf route-tag { + type uint32 { + range "1..4294967295"; + } + description + "Route-tag to be associated with this address"; + } + leaf algorithm { + type uint32 { + range "128..255" { + description + "Algorithm value (default: no algo)"; + } + } + description + "Algorithm to be associated with this address"; + } + } + } + container autoconfig { + when "../../../a1:interface-name[starts-with(text(),'MgmtEth')]" { + tailf:dependency "../../../a1:interface-name"; + } + presence "Indicates a autoconfig node is configured."; + description + "Enable slaac on Mgmt interface"; + } + container dhcp { + when "../../../a1:interface-name[starts-with(text(),'MgmtEth')] or ../../../a1:interface-name[starts-with(text(),'BVI')]" { + tailf:dependency "../../../a1:interface-name"; + } + presence "Indicates a dhcp node is configured."; + description + "Enable dhcp on this interface"; + } + container dhcp-client-options { + presence "Indicates a dhcp-client-options node is configured."; + description + "DHCP Client Options"; + } + } + container enable { + presence "Indicates a dampening node is configured."; + description + "Enable IPv6 on interface"; + } + } + + augment "/a1:interfaces/a1:interface/a1:ipv4" { + description + "This augment extends active nodes configuration"; + uses GROUP-IPV4; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv4" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-IPV4; + } + augment "/a1:interfaces/a1:interface/a1:ipv6" { + description + "This augment extends active nodes configuration"; + uses GROUP-IPV6; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv6" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-IPV6; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipsubscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipsubscriber-cfg.yang new file mode 100644 index 000000000..604617b3b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipsubscriber-cfg.yang @@ -0,0 +1,241 @@ +module Cisco-IOS-XR-um-if-ipsubscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-ipsubscriber-cfg"; + prefix um-if-ipsubscriber-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 if-ipsubscriber package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-03-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container ipsubscriber { + description + "Configure IP Subscriber settings"; + container ipv4 { + description + "Enable IPv4 Subscriber"; + container l2-connected { + description + "Enable L2-connected IP Subscriber"; + container initiator { + description + "Configure IP Subscriber initiator"; + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "Configure DHCP as first-sign-of-life protocol for IPv4 subscriber"; + } + container unclassified-source { + presence "Indicates a unclassified-source node is configured."; + description + "Configure unclassified packets as first-sign-of-life for IPv4 subscriber"; + container address-unique { + presence "Indicates a address-unique node is configured."; + description + "Check for subscriber IP uniqueness during first-sign-of-life"; + } + } + } + } + container routed { + description + "Enable Routed IP Subscriber"; + container initiator { + description + "Configure IP Subscriber initiator"; + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "Configure DHCP as first-sign-of-life protocol for IPv4 subscriber"; + } + container unclassified-ip { + presence "Indicates a unclassified-ip node is configured."; + description + "Configure unclassified packets as first-sign-of-life for IPv4 subscriber"; + } + container dhcp-snoop { + presence "Indicates a dhcp-snoop node is configured."; + description + "Configure DHCP to pass the packets to server for IPv4 subscriber"; + } + } + } + } + container ipv6 { + description + "Enable IPv6 Subscriber"; + container l2-connected { + description + "Enable L2-connected IPv6 Subscriber"; + container initiator { + description + "Configure IPv6 Subscriber initiator"; + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "Configure DHCP as first-sign-of-life protocol for IPv6 subscriber"; + } + } + } + container routed { + description + "Enable Routed IPv6 Subscriber"; + container initiator { + description + "Configure IPv6 Subscriber initiator"; + container unclassified-ip { + presence "Indicates a unclassified-ip node is configured."; + description + "Configure unclassified packets as first-sign-of-life for IPv6 subscriber"; + leaf prefix-len { + type uint32 { + range "1..127" { + description + "Configure Prefix Length of IPv6 Subscriber"; + } + } + description + "Configure Prefix Length of IPv6 Subscriber"; + } + } + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "Configure DHCP as first-sign-of-life protocol for IPv6 subscriber"; + leaf prefix-len { + type uint32 { + range "1..127" { + description + "Configure Prefix Length of IPv6 Subscriber"; + } + } + description + "Configure Prefix Length of IPv6 Subscriber"; + } + } + container dhcp-snoop { + presence "Indicates a dhcp-snoop node is configured."; + description + "Configure DHCP to pass the packets to server for IPv6 subscriber"; + leaf prefix-len { + type uint32 { + range "1..127" { + description + "Configure Prefix Length of IPv6 Subscriber"; + } + } + description + "Configure Prefix Length of IPv6 Subscriber"; + } + } + } + } + } + leaf subscriber-templates { + type uint32 { + range "1..10" { + description + "Max templates on this access interface"; + } + } + description + "Enable subscriber templates on this access interface"; + } + container interface { + presence "Indicates a interface node is configured."; + description + "Enable IP Static subscriber"; + } + container session-limit { + description + "Limit number of IP subscriber sessions "; + container unclassified-source { + description + "Limit IP subscribers for unclassified sources"; + leaf per-vlan { + type uint32 { + range "1..4294967295" { + description + "Session limit"; + } + } + description + "Limit the per VLAN subscribers created"; + } + } + container total { + description + "Limit IP subscribers for all sources"; + leaf per-vlan { + type uint32 { + range "1..4294967295" { + description + "Session limit"; + } + } + description + "Limit the per VLAN subscribers created"; + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + when "a1:interface-name[starts-with(text(),'PW-Ether')] or a1:interface-name[starts-with(text(),'GigabitEthernet')] or a1:interface-name[starts-with(text(),'TenGigE')] or a1:interface-name[starts-with(text(),'FortyGigE')] or a1:interface-name[starts-with(text(),'HundredGigE')] or a1:interface-name[starts-with(text(),'TwoHundredGigE')] or a1:interface-name[starts-with(text(),'FourHundredGigE')] or a1:interface-name[starts-with(text(),'EightHundredGigE')] or a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or a1:interface-name[starts-with(text(),'FiftyGigE')] or a1:interface-name[starts-with(text(),'Bundle-Ether')]" { + tailf:dependency "a1:interface-name"; + } + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + when "a1:interface-name[starts-with(text(),'PW-Ether')] or a1:interface-name[starts-with(text(),'GigabitEthernet')] or a1:interface-name[starts-with(text(),'TenGigE')] or a1:interface-name[starts-with(text(),'FortyGigE')] or a1:interface-name[starts-with(text(),'HundredGigE')] or a1:interface-name[starts-with(text(),'TwoHundredGigE')] or a1:interface-name[starts-with(text(),'FourHundredGigE')] or a1:interface-name[starts-with(text(),'EightHundredGigE')] or a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or a1:interface-name[starts-with(text(),'FiftyGigE')] or a1:interface-name[starts-with(text(),'Bundle-Ether')]" { + tailf:dependency "a1:interface-name"; + } + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv4-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv4-cfg.yang new file mode 100644 index 000000000..23f7c6434 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv4-cfg.yang @@ -0,0 +1,369 @@ +module Cisco-IOS-XR-um-if-ipv4-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-ipv4-cfg"; + prefix um-if-ipv4-cfg; + + import cisco-semver { + prefix semver; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + + 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 interface configuration. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "2.0.0"; + } + revision 2020-10-02 { + description + "Added container qos-group under propagation/input. + Removed container source under + input/ip-precedence/destination/qos-group + as it's overlapped with + input/qos-group/source/ip-precedence/destination."; + semver:module-version "2.0.0"; + } + revision 2019-10-10 { + description + "Initial version"; + semver:module-version "1.0.0"; + } + + grouping GROUP-IPV4 { + description + "Interface IPv4 config commands"; + container forwarding-enable { + presence "Indicates a forwarding-enable node is configured."; + description + "enable ipv4 forwarding on a interface"; + } + container point-to-point { + presence "Indicates a point-to-point node is configured."; + description + "Enable point-to-point handling for this interface."; + } + leaf mtu { + type uint32 { + range "68..65535" { + description + "MTU (bytes)"; + } + } + description + "Set IPv4 Maximum Transmission Unit"; + } + container redirects { + presence "Indicates a redirects node is configured."; + description + "Enable sending ICMP Redirect messages"; + } + container mask-reply { + presence "Indicates a mask-reply node is configured."; + description + "Enable sending ICMP mask reply messages"; + } + container helper-addresses { + description + "Specify a destination address for UDP broadcasts"; + list helper-address { + key "address vrf"; + description + "Specify a destination address for UDP broadcasts"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Specify a destination address for UDP broadcasts"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "VRF name"; + } + } + } + container icmp { + description + "Disable ICMP unreachable for Nullx interface"; + container unreachables { + description + "Disable sending ICMP Unreachable messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Override sending of ICMP Unreachable messages"; + } + } + } + container unreachables { + description + "Enable sending ICMP Unreachable messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Override sending of ICMP Unreachable messages"; + } + } + container directed-broadcast { + presence "Indicates a directed-broadcast node is configured."; + description + "Enable forwarding of directed broadcasts"; + } + container bgp { + description + "Enable BGP policy based feature"; + container policy { + description + "BGP policy"; + container accounting { + description + "BGP policy accounting"; + container input { + must "source-accounting or destination-accounting"; + presence "Indicates a input node is configured."; + description + "BGP policy accounting on input"; + container source-accounting { + presence "Indicates a source-accounting node is configured."; + description + "BGP policy accounting on source IP address"; + } + container destination-accounting { + presence "Indicates a destination-accounting node is configured."; + description + "BGP policy accounting on destination IP address"; + } + } + container output { + must "source-accounting or destination-accounting"; + presence "Indicates a output node is configured."; + description + "BGP policy accounting on output"; + container source-accounting { + presence "Indicates a source-accounting node is configured."; + description + "BGP policy accounting on source IP address"; + } + container destination-accounting { + presence "Indicates a destination-accounting node is configured."; + description + "BGP policy accounting on destination IP address"; + } + } + } + container propagation { + description + "BGP QoS/Flow-tag policy propagation"; + container input { + description + "Flow type is input"; + container ip-precedence { + description + "QPPB using IP Precedence"; + container source { + must + "not(../destination or ../../qos-group/source + or ../../qos-group/destination)"; + presence "Indicates a source node is configured."; + description + "QPPB on source IP address"; + container qos-group { + description + "QPPB using Qos Group"; + container source { + must "not(../destination)"; + presence "Indicates a source node is configured."; + description + "QPPB on source IP address"; + } + container destination { + must "not(../source)"; + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + } + container destination { + must + "not(../source or ../../qos-group/source + or ../../qos-group/destination)"; + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + container qos-group { + description + "QPPB using Qos Group"; + container destination { + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + } + } + container qos-group { + description + "QPPB using Qos Group"; + container source { + must + "not(../destination or ../../ip-precedence/source + or ../../ip-precedence/destination)"; + presence "Indicates a source node is configured."; + description + "QPPB on source IP address"; + container ip-precedence { + description + "QPPB using IP Precedence"; + container destination { + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + } + container destination { + must + "not(../source or ../../ip-precedence/source + or ../../ip-precedence/destination)"; + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + container flow-tag { + must "(source or destination) and not(source and destination)"; + presence "Indicates a flow-tag node is configured."; + description + "Flow tag policy option"; + container source { + presence "Indicates a source node is configured."; + description + "Flow-tag policy on source IP address"; + } + container destination { + presence "Indicates a destination node is configured."; + description + "Flow-tag policy on destination IP address"; + } + } + } + } + } + } + container verify { + description + "Enable per packet validation"; + container unicast { + description + "Enable per packet validation for unicast"; + container source { + description + "Validation of source address"; + container reachable-via { + presence "Indicates a reachable-via node is configured."; + description + "Specify reachability check to apply to the source address"; + leaf type { + type enumeration { + enum "any" { + value 0; + description + "Source is reachable via any interface"; + } + enum "rx" { + value 1; + description + "Source is reachable via interface on which packet was received"; + } + } + mandatory true; + description + "Source reachable type"; + } + leaf allow-self-ping { + type boolean; + mandatory true; + description + "Allow router to ping itself (opens vulnerability in verification)"; + } + leaf allow-default { + type boolean; + mandatory true; + description + "Allow default route to match when checking source address"; + } + } + } + } + } + container ttl-propagate { + description + "Disable ip ttl propagation for this interface."; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable ipv4 ttl propagation on this interface"; + } + } + container tcp-mss-adjust { + description + "Enable tcp mss adjust for this interface."; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable tcp mss adjust on this interface"; + } + } + container flowspec { + description + "Flowspec on IPv4 interface"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable flowspec on interface"; + } + } + } + + augment "/a1:interfaces/a1:interface/a1:ipv4" { + description + "This augment extends active nodes configuration"; + uses GROUP-IPV4; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv4" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-IPV4; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv6-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv6-cfg.yang new file mode 100644 index 000000000..aeda86cda --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-ipv6-cfg.yang @@ -0,0 +1,311 @@ +module Cisco-IOS-XR-um-if-ipv6-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-ipv6-cfg"; + prefix um-if-ipv6-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + + 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 interface ipv6 configuration. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "2.1.0"; + } + revision 2020-10-02 { + description + "Added container qos-group under propagation/input. + Removed container source under + input/ip-precedence/destination/qos-group + as it's overlapped with + input/qos-group/source/ip-precedence/destination."; + semver:module-version "2.0.0"; + } + revision 2019-10-10 { + description + "Initial version"; + semver:module-version "1.0.0"; + } + + feature nd-ra-dns { + description + "IPv6 ND RA DNS"; + } + + feature nd-ra-specific { + description + "IPv6 ND RA Specific"; + } + + grouping GROUP-IPV6 { + description + "Grouping for group ipv6"; + leaf mtu { + type uint32 { + range "1280..65535" { + description + "MTU (bytes)"; + } + } + description + "Set IPv6 Maximum Transmission Unit"; + } + container unreachables { + description + "Enable sending ICMP Unreachable messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Override sending of ICMP Unreachable messages"; + } + } + container verify { + description + "Enable per packet validation"; + container unicast { + description + "Enable per packet validation for unicast"; + container source { + description + "Validation of source address"; + container reachable-via { + presence "Indicates a reachable-via node is configured."; + description + "Specify reachability check to apply to the source address"; + leaf type { + type enumeration { + enum "any" { + value 0; + description + "Source is reachable via any interface"; + } + enum "rx" { + value 1; + description + "Source is reachable via interface on which packet was received"; + } + } + mandatory true; + description + "Source reachable type"; + } + leaf allow-self-ping { + type boolean; + mandatory true; + description + "Allow router to ping itself (opens vulnerability in verification)"; + } + leaf allow-default { + type boolean; + mandatory true; + description + "Allow default route to match when checking source address"; + } + } + } + } + } + container bgp { + description + "Enable BGP policy based feature"; + container policy { + description + "BGP policy"; + container accounting { + description + "BGP policy accounting"; + container input { + must "source-accounting or destination-accounting"; + presence "Indicates a input node is configured."; + description + "BGP policy accounting on input"; + container source-accounting { + presence "Indicates a source-accounting node is configured."; + description + "BGP policy accounting on source IP address"; + } + container destination-accounting { + presence "Indicates a destination-accounting node is configured."; + description + "BGP policy accounting on destination IP address"; + } + } + container output { + must "source-accounting or destination-accounting"; + presence "Indicates a output node is configured."; + description + "BGP policy accounting on output"; + container source-accounting { + presence "Indicates a source-accounting node is configured."; + description + "BGP policy accounting on source IP address"; + } + container destination-accounting { + presence "Indicates a destination-accounting node is configured."; + description + "BGP policy accounting on destination IP address"; + } + } + } + container propagation { + description + "BGP QoS/Flow-tag policy propagation"; + container input { + description + "FLow type is input"; + container ip-precedence { + description + "QPPB using IP Precedence"; + container source { + must + "not(../destination or ../../qos-group/source + or ../../qos-group/destination)"; + presence "Indicates a source node is configured."; + description + "QPPB on source IP address"; + container qos-group { + description + "QPPB using Qos Group"; + container source { + must "not(../destination)"; + presence "Indicates a source node is configured."; + description + "QPPB on source IP address"; + } + container destination { + must "not(../source)"; + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + } + container destination { + must + "not(../source or ../../qos-group/source + or ../../qos-group/destination)"; + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + container qos-group { + description + "QPPB using Qos Group"; + container destination { + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + } + } + container qos-group { + description + "QPPB using Qos Group"; + container source { + must + "not(../destination or ../../ip-precedence/source + or ../../ip-precedence/destination)"; + presence "Indicates a source node is configured."; + description + "QPPB on source IP address"; + container ip-precedence { + description + "QPPB using IP Precedence"; + container destination { + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + } + container destination { + must + "not(../source or ../../ip-precedence/source + or ../../ip-precedence/destination)"; + presence "Indicates a destination node is configured."; + description + "QPPB on destination IP address"; + } + } + container flow-tag { + must "(source or destination) and not(source and destination)"; + presence "Indicates a flow-tag node is configured."; + description + "Flow tag policy option"; + container source { + presence "Indicates a source node is configured."; + description + "Flow-tag policy on source IP address"; + } + container destination { + presence "Indicates a destination node is configured."; + description + "Flow-tag policy on destination IP address"; + } + } + } + } + } + } + container ttl-propagate { + description + "Disable ip ttl propagation for this interface."; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable ipv6 ttl propagation on this interface"; + } + } + container tcp-mss-adjust { + description + "Enable tcp mss adjust for this interface."; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable tcp mss adjust on this interface"; + } + } + container flowspec { + description + "Flowspec on IPv6 interface"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable flowspec on interface"; + } + } + } + + augment "/a1:interfaces/a1:interface/a1:ipv6" { + description + "This augment extends active nodes configuration"; + uses GROUP-IPV6; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv6" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-IPV6; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2trans-service-policy-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2trans-service-policy-cfg.yang new file mode 100644 index 000000000..e55c51840 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2trans-service-policy-cfg.yang @@ -0,0 +1,372 @@ +module Cisco-IOS-XR-um-if-l2trans-service-policy-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-l2trans-service-policy-cfg"; + prefix um-if-l2trans-service-policy-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-if-l2transport-cfg { + prefix a2; + } + import tailf-common { + prefix tailf; + } + 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 if-l2trans-service-policy package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-10-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature qos_ui_supp_qfab_cfg { + description + "qos ui supp qfab cfg"; + } + + feature qos_ui_supp_gre_qos { + description + "qos ui supp gre qos"; + } + + feature qos_ui_supp_l2_acct { + description + "qos ui supp l2 acct"; + } + + feature qos_ui_supp_spi { + description + "qos ui supp spi"; + } + + feature qos_ui_supp_subscriber_parent_policy { + description + "qos ui supp subscriber parent policy"; + } + + feature qos_ui_supp_subscriber_group { + description + "qos ui supp subscriber group"; + } + + feature qos_ui_supp_sfrag_parent_policy { + description + "qos ui supp sfrag parent policy"; + } + + feature qos_ui_supp_ipsec_policy { + description + "qos ui supp ipsec policy"; + } + + feature qos_ui_supp_l2transport_cac_acct { + description + "qos ui supp l2transport cac acct"; + } + + feature qos_ui_supp_l2transport_acct { + description + "qos ui supp l2transport acct"; + } + + grouping L2TRANS-BODY { + description + "Grouping for l2transport"; + container service-policy { + description + "Configure QoS Service policy"; + container outputs { + when "../../../a1:interface-name[not(contains(text(),'.'))]" { + tailf:dependency "../../../a1:interface-name"; + } + description + "direction of service policy application"; + list output { + key "service-policy-name"; + description + "direction of service policy application"; + leaf service-policy-name { + type string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "direction of service policy application"; + } + container account { + if-feature "qos_ui_supp_l2transport_acct"; + description + "Turn off layer specific accounting"; + container layer2 { + must "not(../nolayer2 or ../user-defined)"; + presence "Indicates a layer2 node is configured."; + description + "Turn on l2 accounting"; + } + container nolayer2 { + must "not(../layer2 or ../user-defined)"; + presence "Indicates a nolayer2 node is configured."; + description + "Turn off l2 accounting"; + } + leaf user-defined { + type int32 { + range "-63..63" { + description + "Overhead accounting value"; + } + } + must "not(../layer2 or ../nolayer2)"; + description + "User defined accounting"; + } + } + } + } + container inputs { + when "../../../a1:interface-name[not(contains(text(),'.'))]" { + tailf:dependency "../../../a1:interface-name"; + } + description + "configure a policy in the input direction"; + list input { + key "service-policy-name"; + description + "configure a policy in the input direction"; + leaf service-policy-name { + type string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "configure a policy in the input direction"; + } + container account { + if-feature "qos_ui_supp_l2transport_acct"; + description + "Turn off layer specific accounting"; + container layer2 { + must "not(../nolayer2 or ../user-defined)"; + presence "Indicates a layer2 node is configured."; + description + "Turn on l2 accounting"; + } + container nolayer2 { + must "not(../layer2 or ../user-defined)"; + presence "Indicates a nolayer2 node is configured."; + description + "Turn off l2 accounting"; + } + leaf user-defined { + type int32 { + range "-63..63" { + description + "Overhead accounting value"; + } + } + must "not(../layer2 or ../nolayer2)"; + description + "User defined accounting"; + } + } + } + } + } + } + + grouping L2TRANS-BODY-SUBINTF { + description + "Grouping for l2transport-body-subinterface"; + container l2transport-service-policy { + description + "Configure QoS Service policy"; + container inputs-subintf { + when "../../a1:interface-name[(contains(text(),'.'))] and ../../a1:sub-interface-type/a1:l2transport" { + tailf:dependency "../../a1:interface-name"; + } + description + "configure a policy in the input direction"; + list input { + key "service-policy-name"; + description + "configure a policy in the input direction"; + leaf service-policy-name { + type string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "configure a policy in the input direction"; + } + leaf shared-policy-instance { + if-feature "qos_ui_supp_spi"; + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Name of the shared-policy-instance(Max 31 chars)"; + } + } + description + "Configure a shared-policy-instance"; + } + container account { + if-feature "qos_ui_supp_l2transport_cac_acct"; + presence "Indicates a account node is configured."; + description + "Turn off layer specific accounting"; + container layer2 { + must "not(../nolayer2 or ../user-defined)"; + presence "Indicates a layer2 node is configured."; + description + "Turn on l2 accounting"; + } + container nolayer2 { + must "not(../layer2 or ../user-defined)"; + presence "Indicates a nolayer2 node is configured."; + description + "Turn off l2 accounting"; + } + leaf user-defined { + type int32 { + range "-63..63" { + description + "Overhead accounting value"; + } + } + must "not(../layer2 or ../nolayer2)"; + description + "User defined accounting"; + } + } + } + } + container outputs-subintf { + when "../../a1:interface-name[(contains(text(),'.'))] and ../../a1:sub-interface-type/a1:l2transport" { + tailf:dependency "../../a1:interface-name"; + } + description + "configure a policy in the output direction"; + list output { + key "service-policy-name"; + description + "configure a policy in the output direction"; + leaf service-policy-name { + type string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "configure a policy in the output direction"; + } + leaf shared-policy-instance { + if-feature "qos_ui_supp_spi"; + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "Name of the shared-policy-instance(Max 31 chars)"; + } + } + description + "Configure a shared-policy-instance"; + } + container account { + if-feature "qos_ui_supp_l2transport_cac_acct"; + presence "Indicates a account node is configured."; + description + "Turn off layer specific accounting"; + container layer2 { + must "not(../nolayer2 or ../user-defined)"; + presence "Indicates a layer2 node is configured."; + description + "Turn on l2 accounting"; + } + container nolayer2 { + must "not(../layer2 or ../user-defined)"; + presence "Indicates a nolayer2 node is configured."; + description + "Turn off l2 accounting"; + } + leaf user-defined { + type int32 { + range "-63..63" { + description + "Overhead accounting value"; + } + } + must "not(../layer2 or ../nolayer2)"; + description + "User defined accounting"; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface/a2:l2transport" { + description + "This augment extends active nodes configuration"; + uses L2TRANS-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a2:l2transport" { + description + "This augment extends preconfigured nodes + configuration"; + uses L2TRANS-BODY; + } + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses L2TRANS-BODY-SUBINTF; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses L2TRANS-BODY-SUBINTF; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2transport-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2transport-cfg.yang new file mode 100644 index 000000000..5f0d05f5f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-l2transport-cfg.yang @@ -0,0 +1,66 @@ +module Cisco-IOS-XR-um-if-l2transport-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-l2transport-cfg"; + prefix um-if-l2transport-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 if-l2transport package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-02-10 { + description + "Initial draft"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container l2transport { + presence "Indicates a l2transport node is configured."; + description + "Enable Layer 2 transport and enter its configuration submode"; + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mac-address-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mac-address-cfg.yang new file mode 100644 index 000000000..6cb06db9f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mac-address-cfg.yang @@ -0,0 +1,75 @@ +module Cisco-IOS-XR-um-if-mac-address-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-mac-address-cfg"; + prefix um-if-mac-address-cfg; + + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 if-mac-address package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-02-26 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + leaf mac-address { + when "../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'MgmtEth')] or ../a1:interface-name[starts-with(text(),'Bundle-Ether')] or ../a1:interface-name[starts-with(text(),'PW-Ether')] or ../a1:interface-name[starts-with(text(),'BVI')] or ../a1:interface-name[starts-with(text(),'InterflexLeft')] or ../a1:interface-name[starts-with(text(),'InterflexRight')] or ../a1:interface-name[starts-with(text(),'CSI-Ether')] or ../a1:interface-name[starts-with(text(),'PW-P2P')] or ../a1:interface-name[starts-with(text(),'SRP')] or ../a1:interface-name[starts-with(text(),'CPRIoE')]" { + tailf:dependency "../a1:interface-name"; + } + type yang:mac-address; + description + "Set the Mac address(xxxx.xxxx.xxxx) on an interface"; + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mpls-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mpls-cfg.yang new file mode 100644 index 000000000..2969d1400 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-mpls-cfg.yang @@ -0,0 +1,97 @@ +module Cisco-IOS-XR-um-if-mpls-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-mpls-cfg"; + prefix um-if-mpls-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + + 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 if-mpls package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-30 { + description + "Initial version"; + } + + grouping GROUP-MPLS { + description + "Grouping for mpls"; + container mpls { + description + "MPLS interface subcommands"; + leaf mtu { + type uint32 { + range "68..65535" { + description + " MTU size in bytes"; + } + } + description + "Set the MPLS MTU for the interface"; + } + container label-security { + description + "MPLS label-security for the interface"; + container rpf { + presence "Indicates a rpf node is configured."; + description + "MPLS RPF for incoming packets"; + } + container multi-label-packet { + description + "Handling incoming packets with multiple labels on the stack"; + container drop { + presence "Indicates a drop node is configured."; + description + "Drop packets with multiple labels on the stack"; + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses GROUP-MPLS; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-MPLS; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg.yang new file mode 100644 index 000000000..3e0b26c96 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg.yang @@ -0,0 +1,128 @@ +module Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-nv-sat-ethernet-cfm-cfg"; + prefix um-if-nv-sat-ethernet-cfm-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-nv-satellite-cfg { + prefix a2; + } + 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 if-nv-sat-ethernet-cfm package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-04-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-NV-BODY { + description + "Grouping for interface-nv"; + container ethernet { + description + "Ethernet configuration commands"; + container cfm { + presence "Indicates a cfm node is configured."; + description + "Configuration for 802.1ag CFM on Satellite Fabric Links"; + leaf level { + type uint32 { + range "0..7" { + description + "Level"; + } + } + description + "Maintenance Domain level to run at"; + } + container continuity-check { + description + "Continuity-check configuration"; + leaf interval { + type enumeration { + enum "3.3ms" { + value 1; + description + "Interval of 3.3 milliseconds"; + } + enum "10ms" { + value 2; + description + "Interval of 10 milliseconds"; + } + enum "100ms" { + value 3; + description + "Interval of 100 milliseconds"; + } + enum "1s" { + value 4; + description + "Interval of 1 second"; + } + enum "10s" { + value 5; + description + "Interval of 10 seconds"; + } + enum "1m" { + value 6; + description + "Interval of 1 minute"; + } + enum "10m" { + value 7; + description + "Interval of 10 minutes"; + } + } + description + "Set the continuity-check interval"; + } + } + } + } + } + + augment "/a1:interfaces/a1:interface/a2:nv/a2:satellite-fabric-link/a2:satellite" { + description + "This augment extends active nodes configuration"; + uses IF-NV-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a2:nv/a2:satellite-fabric-link/a2:satellite" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-NV-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg.yang new file mode 100644 index 000000000..351cb79fb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-nv-sat-freq-sync-cfg"; + prefix um-if-nv-sat-freq-sync-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-nv-satellite-cfg { + prefix a2; + } + 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 if-nv-sat-freq-sync package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-01-06 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-NV-BODY { + description + "Grouping for interface-nv"; + container frequency { + description + "Enable Frequency Synchronization"; + container synchronization { + presence "Indicates a synchronization node is configured."; + description + "Enable Frequency Synchronization"; + } + } + } + + augment "/a1:interfaces/a1:interface/a2:nv/a2:satellite-fabric-link/a2:satellite" { + description + "This augment extends active nodes configuration"; + uses IF-NV-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a2:nv/a2:satellite-fabric-link/a2:satellite" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-NV-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg.yang new file mode 100644 index 000000000..98721c5f5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg.yang @@ -0,0 +1,133 @@ +module Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-nv-sat-service-policy-cfg"; + prefix um-if-nv-sat-service-policy-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-nv-satellite-cfg { + prefix a2; + } + 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 if-nv-sat-service-policy package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature qos_ui_supp_qfab_cfg { + description + "qos ui supp qfab cfg"; + } + + feature qos_ui_supp_gre_qos { + description + "qos ui supp gre qos"; + } + + feature qos_ui_supp_l2_acct { + description + "qos ui supp l2 acct"; + } + + feature qos_ui_supp_spi { + description + "qos ui supp spi"; + } + + feature qos_ui_supp_subscriber_parent_policy { + description + "qos ui supp subscriber parent policy"; + } + + feature qos_ui_supp_subscriber_group { + description + "qos ui supp subscriber group"; + } + + feature qos_ui_supp_sfrag_parent_policy { + description + "qos ui supp sfrag parent policy"; + } + + feature qos_ui_supp_ipsec_policy { + description + "qos ui supp ipsec policy"; + } + + feature qos_ui_supp_l2transport_cac_acct { + description + "qos ui supp l2transport cac acct"; + } + + grouping IF-NV-BODY { + description + "Grouping for interface-nv"; + container service-policy { + description + "Configure fabric QoS Service policy"; + container outputs { + description + "direction of service policy application"; + list output { + key "service-policy-name"; + description + "direction of service policy application"; + leaf service-policy-name { + type string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "direction of service policy application"; + } + } + } + } + } + + augment "/a1:interfaces/a1:interface/a2:nv/a2:satellite-fabric-link/a2:satellite" { + description + "This augment extends active nodes configuration"; + uses IF-NV-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a2:nv/a2:satellite-fabric-link/a2:satellite" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-NV-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nve-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nve-cfg.yang new file mode 100644 index 000000000..febb5f3c4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-nve-cfg.yang @@ -0,0 +1,317 @@ +module Cisco-IOS-XR-um-if-nve-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-nve-cfg"; + prefix um-if-nve-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 if-nve package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-03-15 + 1.Added mpls-udp support under overlay-encapsulation + 2.Added container nve support"; + semver:module-version "1.1.0"; + } + revision 2021-06-29 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + leaf source-interface { + type xr:Interface-name; + description + "Configure source interface for Network Virtualization Endpoint"; + } + container anycast { + description + "Configure anycast mode parameters for this VTEP"; + leaf source-interface { + type xr:Interface-name; + description + "Configure source interface for the anycast mode"; + } + leaf sync-group { + type inet:ipv4-address-no-zone; + must "../source-interface"; + description + "Assign a BiDir multicast group for sync between anycast gateways"; + } + } + container member { + description + "Configure NVE member(s)"; + container vni { + description + "Configure member VxLAN Network Identfier"; + list vni-range { + key "vni-start vni-end"; + description + "Start of VNI range"; + leaf vni-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + description + "Start of VNI range"; + } + leaf vni-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + description + "End of VNI range"; + } + container mcast-group { + description + "associate a multicast core group with VxLAN segment(s)"; + leaf start-address { + type inet:ipv4-address-no-zone; + must "../end-address"; + description + "Start of mcast IP range"; + } + leaf end-address { + type inet:ipv4-address-no-zone; + must "../start-address"; + description + "End of mcast IP range"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF name"; + } + } + description + "Associate a VRF with VxLAN segment"; + } + container host-reachability { + description + "Configure the control protocol for VxLAN tunnel endpoint reachability"; + container protocol { + description + "Configure the control protocol for VxLAN tunnel endpoint reachability"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Use BGP EVPN for VxLAN tunnel endpoint reachability"; + } + } + } + container suppress-unknown-unicast-flooding { + presence "Indicates a suppress-unknown-unicast-flooding node is configured."; + description + "Configure the suppression of unknown unicast flooding"; + } + container load-balance { + description + "Configure load balance mode"; + container per-evi { + presence "Indicates a per-evi node is configured."; + description + "Configure per-evi load balance mode (default is per-flow)"; + } + } + } + } + } + container overlay-encapsulation { + description + "Configure encapsulation for Network Virtualization Endpoint"; + container vxlan { + must "not(../soft-gre)"; + presence "Indicates a vxlan node is configured."; + description + "Configure VxLAN encapsulation for Network Virtualization Endpoint"; + } + container soft-gre { + must "not(../vxlan)"; + presence "Indicates a soft-gre node is configured."; + description + "Configure Soft GRE encapsulation for Network Virtualization Endpoint"; + } + container mpls-udp { + presence "Indicates a mpls-udp node is configured."; + description + "Configure mpls-udp encapsulation for Network Virtualization Endpoint"; + } + } + container vxlan-udp-port { + description + "Configure UDP port number in VxLAN encapsulation"; + container port-4789 { + must "not(../port-48879)"; + presence "Indicates a port-4789 node is configured."; + description + "IETF defined UDP port number for VxLAN"; + } + container port-48879 { + must "not(../port-4789)"; + presence "Indicates a port-48879 node is configured."; + description + "UDP port number for iVxLAN"; + } + } + container redundancy { + presence "Indicates a redundancy node is configured."; + description + "Redundancy"; + container backbone { + description + "Configure ICCP backbone"; + container vxlan { + presence "Indicates a vxlan node is configured."; + description + "ICCP VXLAN backbone"; + container iccp { + description + "Inter-Chassis Communication Protocol"; + leaf group { + type uint32 { + range "1..4294967295" { + description + "Enter group number"; + } + } + description + "Configure ICCP group number"; + } + } + } + container mpls { + presence "Indicates a mpls node is configured."; + description + "ICCP MPLS backbone"; + container iccp { + description + "Inter-Chassis Communication Protocol"; + leaf group { + type uint32 { + range "1..4294967295" { + description + "Enter group number"; + } + } + description + "Configure ICCP group number"; + } + } + } + } + } + container ingress-replication { + description + "Configure ingress replication for VxLAN tunnel endpoint"; + container protocol { + description + "Configure the control protocol for VxLAN tunnel endpoint ingress replication"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Use BGP EVPN for VxLAN tunnel endpoint ingress replication"; + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + when "a1:interface-name[starts-with(text(),'nve')]" { + tailf:dependency "a1:interface-name"; + } + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + when "a1:interface-name[starts-with(text(),'nve')]" { + tailf:dependency "a1:interface-name"; + } + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + container nve { + presence "Indicates a nve node is configured."; + description + "Global nve related configuration"; + container decap-prefix { + description + "Prefix Decapsulation"; + container source { + description + "Source interface"; + leaf ipv4 { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "IPv4 Decap prefix name with maximum 64 characters"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "IPv4"; + } + leaf object-group { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "IPv4 object group name - maximum 64 characters"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "Configure source object-group"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-packets-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-packets-cfg.yang new file mode 100644 index 000000000..34f2db41e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-packets-cfg.yang @@ -0,0 +1,74 @@ +module Cisco-IOS-XR-um-if-packets-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-packets-cfg"; + prefix um-if-packets-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 if-packets package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-06-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container capture { + description + "capture interface packets (platform)"; + container software { + description + "capture software switched packets"; + container packets { + presence "Indicates a packets node is configured."; + description + "turns on both ingress and egress (platform)"; + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-service-policy-qos-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-service-policy-qos-cfg.yang new file mode 100644 index 000000000..ad840c301 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-service-policy-qos-cfg.yang @@ -0,0 +1,451 @@ +module Cisco-IOS-XR-um-if-service-policy-qos-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-service-policy-qos-cfg"; + prefix um-if-service-policy-qos-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + organization + "Cisco Systems, Inc."; + contact + " + Cisco Systems, Inc. + Customer Service + + Postal: 170 W Tasman Drive + San Jose, CA 95134 + + Tel: +1 1800 553-NETS + + E-mail: cs-yang@cisco.com + "; + description + " + This module contains a collection of IOS-XR YANG model derived from CLI. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved. + "; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "2.1.0"; + } + revision 2020-10-01 { + description + "Added augmentation to interface-preconfigure"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-01-11 { + description + "Initial version"; + } + + feature service-policy { + description + "Service policy"; + } + + feature account-user-def { + description + "User defined accounting"; + } + + feature shared-policy-instance { + description + "Configure a shared-policy-instance"; + } + + feature sub-parent-policy { + description + "Configure an svlan policy"; + } + + feature sub-group { + description + "Configure a subscriber-group"; + } + + feature sfrag-parent-policy { + description + "Apply service fragment policy"; + } + + feature ipsec-policy { + description + "service policy to be applied to encrypted traffic"; + } + + feature egress { + description + "Configure service policy for egress direction"; + } + + feature ingress { + description + "Configure service policy for ingress direction"; + } + + feature qfab { + description + "Configure switch fabric"; + } + + typedef service-policy-name-type { + type string { + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>\\\\-]{0,62}"; + } + description + "This field is used to specify the service-policy-name-type"; + } + + typedef account-type { + type enumeration { + enum "layer1" { + value 8; + description + "Turn on Layer 1 accounting"; + } + enum "layer2" { + value 1; + description + "Turn on Layer 2 accounting"; + } + enum "nolayer2" { + value 2; + description + "Turn off Layer 2 accounting"; + } + enum "user-defined" { + value 4; + description + "User defined accounting"; + } + } + description + "This field is used to specify the type of Layer specific or user + defined Qos accounting"; + } + + typedef l2-account-type { + type enumeration { + enum "layer2" { + value 1; + description + "Turn on Layer 2 accounting"; + } + enum "nolayer2" { + value 2; + description + "Turn off Layer 2 accounting"; + } + enum "user-defined" { + value 4; + description + "User defined accounting"; + } + } + description + "This field is used to specify the type of Layer specific or user + defined Qos accounting"; + } + + grouping service-policy-account { + description + "Grouping for service-policy-account"; + leaf account { + type account-type; + description + "Turn off layer specific accounting"; + } + leaf account-user-defined { + when "../account = 'user-defined'"; + if-feature "account-user-def"; + type int8 { + range "-63..63" { + description + "Overhead accounting value"; + } + } + description + "account-user-defined"; + } + } + + grouping service-policy-account-l2 { + description + "Grouping for service-policy-account-l2"; + leaf account { + type l2-account-type; + description + "Turn off layer specific accounting"; + } + leaf account-user-defined { + when "../account = 'user-defined'"; + if-feature "account-user-def"; + type int8 { + range "-63..63" { + description + "Overhead accounting value"; + } + } + description + "User defined accounting"; + } + } + + grouping shared-policy-instance { + description + "Grouping for service-policy-instance"; + leaf shared-policy-instance { + if-feature "shared-policy-instance"; + type service-policy-name-type { + length "1..32" { + description + "Name of the shared policy instance"; + } + } + must "not(../subscriber-parent) and not(../service-fragment-parent)"; + description + "Configure a shared-policy-instance"; + } + } + + grouping shared-policy-instance-l2 { + description + "Grouping for service-policy-instance-l2"; + leaf shared-policy-instance { + if-feature "shared-policy-instance"; + type service-policy-name-type { + length "1..32" { + description + "Name of the shared policy instance"; + } + } + description + "Configure a shared-policy-instance"; + } + } + + grouping subscriber-parent { + description + "Grouping for subscriber-parent"; + container subscriber-parent { + if-feature "sub-parent-policy"; + must "not(../shared-policy-instance) and not(../service-fragment-parent)"; + presence "Configure an svlan policy"; + description + "Configure an svlan policy"; + leaf resource-id { + type uint8 { + range "0..3" { + description + "resource-id value"; + } + } + description + "Configure a resource-id"; + } + } + } + + grouping service-fragment-parent { + description + "Grouping for service-fragment-parent"; + container service-fragment-parent { + if-feature "sfrag-parent-policy"; + must "not(../shared-policy-instance) and not(../subscriber-parent)"; + presence "Apply service fragment policy"; + description + "Apply service fragment policy, do not use this node for non service fragment policy"; + } + } + + grouping IF-BODY { + description + "Grouping for interface"; + container service-policy { + when "../a1:interface-name[not(starts-with(text(),'sub_atm'))] and ../a1:interface-name[not(starts-with(text(),'tunnel'))] and ../a1:interface-name[not(starts-with(text(),'tunnel-te'))] and ../a1:interface-name[not(starts-with(text(),'tunnel-gre'))] and ../a1:interface-name[not(starts-with(text(),'tunnel-mte'))] and ../a1:interface-name[not(starts-with(text(),'MgmtEth'))] and ../a1:interface-name[not(starts-with(text(),'Loopback'))] and ../a1:interface-name[not(starts-with(text(),'sbc'))] and ../a1:interface-name[not(starts-with(text(),'serviceinfra'))] and ../a1:interface-name[not(starts-with(text(),'serviceapp'))] and ../a1:interface-name[not(starts-with(text(),'Service-Engine'))] and ../a1:interface-name[not(starts-with(text(),'Service-Mgmt'))]" { + tailf:dependency "../a1:interface-name"; + } + if-feature "service-policy"; + description + "Configure a service policy"; + list output { + when "../../a1:interface-name[not(starts-with(text(),'tunnel-ip'))]" { + tailf:dependency "../../a1:interface-name"; + } + if-feature "egress"; + key "service-policy-name"; + description + "direction of service policy application"; + leaf service-policy-name { + type service-policy-name-type; + description + "Name of the service policy. Set 'output' for 'service-ipsec and 'service-gre' interfaces"; + } + uses service-policy-account; + uses shared-policy-instance; + uses subscriber-parent; + uses service-fragment-parent; + } + list output-subscriber-group { + when "../../a1:interface-name[not(starts-with(text(),'tunnel-ip'))]" { + tailf:dependency "../../a1:interface-name"; + } + if-feature "egress"; + must "subscriber-group"; + key "service-policy-name"; + description + "direction of service policy application"; + leaf service-policy-name { + type service-policy-name-type; + description + "Name of the service policy. Set 'output' for 'service-ipsec and 'service-gre' interfaces"; + } + list subscriber-group { + if-feature "sub-group"; + key "name"; + description + "Configure a subscriber-group"; + leaf name { + type string { + length "1..32" { + description + "subscriber-group name"; + } + } + description + "Configure a subscriber-group name"; + } + } + } + list output-pre-encrypt { + when "../../a1:interface-name[starts-with(text(),'service-ipsec')] or ../../a1:interface-name[starts-with(text(),'service-gre')]" { + tailf:dependency "../../a1:interface-name"; + } + if-feature "egress"; + if-feature "ipsec-policy"; + key "service-policy-name"; + description + "service policy to be applied to pre encrypted traffic"; + leaf service-policy-name { + type service-policy-name-type; + description + "Name of the service policy"; + } + uses service-policy-account; + } + list output-post-encrypt { + when "../../a1:interface-name[starts-with(text(),'service-ipsec')] or ../../a1:interface-name[starts-with(text(),'service-gre')]" { + tailf:dependency "../../a1:interface-name"; + } + if-feature "egress"; + if-feature "ipsec-policy"; + key "service-policy-name"; + description + "service policy to be applied to post encrypted traffic"; + leaf service-policy-name { + type service-policy-name-type; + description + "Name of the service policy"; + } + uses service-policy-account; + } + list input { + when "../../a1:interface-name[not(starts-with(text(),'tunnel-ip'))]" { + tailf:dependency "../../a1:interface-name"; + } + if-feature "ingress"; + key "service-policy-name"; + description + "Configure a policy in the input direction"; + leaf service-policy-name { + type service-policy-name-type; + description + "Name of the service policy. Set 'input' for 'service-ipsec and 'service-gre' interfaces"; + } + uses service-policy-account; + uses shared-policy-instance; + uses subscriber-parent; + uses service-fragment-parent; + } + list input-pre-decrypt { + when "../../a1:interface-name[starts-with(text(),'service-ipsec')] or ../../a1:interface-name[starts-with(text(),'service-gre')]" { + tailf:dependency "../../a1:interface-name"; + } + if-feature "ingress"; + if-feature "ipsec-policy"; + key "service-policy-name"; + description + "service policy to be applied to pre decrypted traffic"; + leaf service-policy-name { + type service-policy-name-type; + description + "Name of the service policy"; + } + uses service-policy-account; + } + list input-post-decrypt { + when "../../a1:interface-name[starts-with(text(),'service-ipsec')] or ../../a1:interface-name[starts-with(text(),'service-gre')]" { + tailf:dependency "../../a1:interface-name"; + } + if-feature "ingress"; + if-feature "ipsec-policy"; + key "service-policy-name"; + description + "service policy to be applied to post decrypt traffic"; + leaf service-policy-name { + type service-policy-name-type; + description + "Name of the service policy"; + } + uses service-policy-account; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + container switch-fabric { + if-feature "qfab"; + description + "switch fabric global command sub mode"; + container service-policy { + description + "Configure QFAB Service policy"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "0..63"; + } + description + "Name of the QFAB service policy"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-tunnel-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-tunnel-cfg.yang new file mode 100644 index 000000000..ad28566cb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-tunnel-cfg.yang @@ -0,0 +1,560 @@ +module Cisco-IOS-XR-um-if-tunnel-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-tunnel-cfg"; + prefix um-if-tunnel-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 if-tunnel package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-24 { + description + "Added containers for tunnel destination object-group + 2022-07-11 + Added missing description statement to nodes + 2022-03-09 + Added containers ipsec & container protection + Also updated the must statements under container mode + 2022-03-02 + Added containers direct"; + semver:module-version "2.1.0"; + } + revision 2021-01-21 { + description + "Added containers under tunnel"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Initial version"; + semver:module-version "1.0.1"; + } + + feature is_tunnel_ip_ipsec_supported { + description + "is tunnel ip ipsec supported"; + } + + feature is_tunnel_ipv6_any_mode_supported { + description + "is tunnel ipv6 any mode supported"; + } + + feature is_tunnel_src_direct_supported { + description + "is tunnel src direct supported"; + } + + feature is_tunnel_mode_decap_supported { + description + "is tunnel mode decap supported"; + } + + feature is_tunnel_dst_addr_grp_supported { + description + "Flag indicating that tunnel destination address group is supported"; + } + + feature is_tunnel_gre_supported { + description + "is tunnel gre supported"; + } + + feature is_tunnel_gre_ipv6_trans_supported { + description + "is tunnel gre ipv6 trans supported"; + } + + feature is_mgre_through_cli_supported { + description + "is mgre through cli supported"; + } + + feature is_mgre_tunnel_ipv4_trans_supported { + description + "is mgre tunnel ipv4 trans supported"; + } + + feature is_mgre_tunnel_ipv6_trans_supported { + description + "is mgre tunnel ipv6 trans supported"; + } + + feature is_tunnel_ipv4_trans_supported { + description + "is tunnel ipv4 trans supported"; + } + + feature is_tunnel_ipv6_trans_supported { + description + "is tunnel ipv6 trans supported"; + } + + feature is_tunnel_ip_dfbit_copy_supported { + description + "is tunnel ip dfbit copy supported"; + } + + feature is_tunnel_gre_key_ignore_supported { + description + "is tunnel gre key ignore supported"; + } + + feature is_tunnel_gre_key_entropy_supported { + description + "is tunnel gre key entropy supported"; + } + + feature is_tunnel_gre_key_supported { + description + "is tunnel gre key supported"; + } + + feature is_tunnel_ip_transport_vrf_supported { + description + "is tunnel ip transport vrf supported"; + } + + grouping GROUP-TUNNEL { + description + "Grouping for tunnel"; + container tunnel { + when "../a1:interface-name[starts-with(text(),'tunnel-ip')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Configure GRE/IP tunnel parameters"; + container source { + description + "Configure source of tunnel"; + leaf interface-name { + type xr:Interface-name; + must + "not(../ipv4-address or ../ipv6-address + or ../direct)"; + description + "Name of tunnel source interface"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must + "not(../interface-name or ../ipv6-address + or ../direct)"; + description + "IPV4 address of the tunnel source"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../interface-name or ../ipv4-address)"; + description + "IPV6 address of the tunnel source"; + } + container direct { + if-feature "is_tunnel_src_direct_supported"; + must + "not(../interface-name or ../ipv4-address + or ../ipv6-address)"; + presence "Indicates a direct node is configured."; + description + "Local interface addresses"; + } + } + container destination { + description + "Configure destination of tunnel"; + leaf prefix-list { + type xr:Cisco-ios-xr-string { + length "1..64"; + } + must "../ipv4-address or ../ipv6-address"; + description + "Prefix-list to validate destination's resolving prefix"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "IPV4 address of the tunnel destination"; + } + leaf length { + type inet:ipv4-address-no-zone; + must "../ipv4-address"; + description + "IPv4 prefix length of the tunnel destination"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "IPV6 address of the tunnel destination"; + } + container object-group { + if-feature "is_tunnel_dst_addr_grp_supported"; + description + "Object group of the tunnel destination"; + leaf ipv4 { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "IPv4 tunnel destination object group name"; + } + } + must "not(../ipv6)"; + description + "IPv4 object groups"; + } + leaf ipv6 { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "IPv6 tunnel destination object group name"; + } + } + must "not(../ipv4)"; + description + "IPv6 object groups"; + } + } + } + container bfd { + description + "Configure bfd for tunnel"; + container destination { + description + "Configure bfd for tunnel"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "IPV4 address of the BFD destination"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "IPV6 address of the tunnel destination"; + } + } + leaf period { + type uint32 { + range "1..32767" { + description + "Enter period in seconds"; + } + } + description + "Keepalive period in seconds (default 10 seconds)"; + } + leaf retry { + type uint32 { + range "1..255" { + description + "Enter retry range 1-255"; + } + } + description + "Number of retries for Keepalive (default 3)"; + } + leaf minimum-interval { + type uint32 { + range "150..30000" { + description + "hello interval in milli-seconds"; + } + } + description + "Hello interval"; + } + leaf multiplier { + type uint32 { + range "3..50" { + description + "Detect multiplier"; + } + } + description + "Detect multiplier"; + } + } + container mode { + description + "Tunnel encapsulation method (default: gre ipv4)"; + container gre { + if-feature "is_tunnel_gre_supported"; + description + "IP over GRE encapsulation"; + container multipoint { + if-feature "is_mgre_through_cli_supported"; + description + "multipoint GRE over IPv4/IPv6 encapsulation"; + container ipv4 { + if-feature "is_mgre_tunnel_ipv4_trans_supported"; + must + "not(../ipv6 or ../../ipv4 or ../../ipv6 or + ../../../ipv4 or ../../../ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "multipoint GRE over IPv4 encapsulation"; + } + container ipv6 { + if-feature "is_mgre_tunnel_ipv6_trans_supported"; + must + "not(../ipv4 or ../../ipv4 or ../../ipv6 or + ../../../ipv4 or ../../../ipv6)"; + presence "Indicates a ipv6 node is configured."; + description + "multipoint GRE over IPv6 encapsulation"; + } + } + container ipv4 { + must + "not(../ipv6 or ../multipoint/ipv4 or ../multipoint/ipv6 or + ../../ipv4 or ../../ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "GRE over IPv4 encapsulation"; + } + container ipv6 { + if-feature "is_tunnel_gre_ipv6_trans_supported"; + must + "not(../ipv4 or ../multipoint/ipv4 or ../multipoint/ipv6 or + ../../ipv4 or ../../ipv6)"; + presence "Indicates a ipv6 node is configured."; + description + "GRE over IPv6 encapsulation"; + } + } + container ipsec { + if-feature "is_tunnel_ip_ipsec_supported"; + description + "IPSec tunnel encapsulation"; + container ipv4 { + must + "not(../../ipv6 or ../../ipv4 or ../../gre/ipv4 or ../../gre/ipv6 or + ../../gre/multipoint/ipv4 or ../../gre/multipoint/ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "Over IPv4"; + } + } + container ipv4 { + if-feature "is_tunnel_ipv4_trans_supported"; + must + "not(../ipv6 or ../ipsec/ipv4 or ../gre/ipv4 or ../gre/ipv6 or + ../gre/multipoint/ipv4 or ../gre/multipoint/ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "Generic packet tunneling over IPv4 encapsulation"; + } + container ipv6 { + if-feature "is_tunnel_ipv6_trans_supported"; + must + "not(../ipv4 or ../ipsec/ipv4 or ../gre/ipv4 or ../gre/ipv6 or + ../gre/multipoint/ipv4 or ../gre/multipoint/ipv6)"; + presence "Indicates a ipv6 node is configured."; + description + "Generic packet tunneling over IPv6 encapsulation"; + } + leaf encapsulation-mode { + if-feature "is_tunnel_mode_decap_supported"; + type enumeration { + enum "decap" { + value 1; + description + "Decap-only tunnel"; + } + enum "encap" { + value 2; + description + "Encap-only tunnel"; + } + } + must + "(../ipv4 or ../ipv6 or ../gre/ipv4 or ../gre/ipv6) and + not(../gre/multipoint/ipv4 or ../gre/multipoint/ipv6 or ../ipsec/ipv4)"; + description + "configure this node"; + } + } + leaf tos { + type uint32 { + range "0..255" { + description + "Enter TOS bits as decimal, hex (0x) or octal (0) value"; + } + } + description + "Configure Type of Service bits for this tunnel"; + } + container ttl { + description + "Configure the time-to-live for packets sent over this tunnel"; + container disable { + must "not(../ttl-value)"; + presence "Indicates a disable node is configured."; + description + "Disable decrement of TTL"; + } + leaf ttl-value { + type uint32 { + range "1..255" { + description + "Enter the TTL value"; + } + } + must "not(../disable)"; + description + "Enter the TTL value"; + } + } + container dfbit { + description + "Modify Do not Fragment Bit"; + container disable { + must "not(../copy)"; + presence "Indicates a disable node is configured."; + description + "Disable DF bit (i.e. allow fragmentation)"; + } + container copy { + if-feature "is_tunnel_ip_dfbit_copy_supported"; + must "not(../disable)"; + presence "Indicates a copy node is configured."; + description + "Copy DF bit from inner payload"; + } + } + container key-ignore { + if-feature "is_tunnel_gre_key_ignore_supported"; + presence "Indicates a key-ignore node is configured."; + description + "GRE key field processing configuration"; + } + container key { + if-feature "is_tunnel_gre_key_entropy_supported"; + description + "Configure the key value for packets sent over this tunnel"; + container entropy { + if-feature "is_tunnel_gre_key_entropy_supported"; + must "not(../key-value)"; + presence "Indicates a entropy node is configured."; + description + "Key contains entropy hash"; + } + leaf key-value { + if-feature "is_tunnel_gre_key_supported"; + type uint32 { + range "0..4294967295" { + description + "Enter the Key value"; + } + } + must "not(../entropy)"; + description + "Enter the Key value"; + } + } + leaf vrf { + if-feature "is_tunnel_ip_transport_vrf_supported"; + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "vrf table name"; + } + } + description + "set tunnel vrf membership"; + } + container protection { + if-feature "is_tunnel_ip_ipsec_supported"; + description + "set tunnel protection"; + container ipsec { + description + "set tunnel ipsec"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IPSec profile name - maximum 32 characters"; + } + } + description + "set tunnel ipsec profile"; + } + } + } + } + container keepalive { + presence "Indicates a keepalive node is configured."; + description + "Enable keepalive packets on this tunnel"; + leaf keepalive-period { + type uint32 { + range "1..32767" { + description + "Keepalive period in seconds (default 10 seconds)"; + } + } + description + "Keepalive period in seconds (default 10 seconds)"; + } + leaf retries { + type uint32 { + range "1..255" { + description + "Number of retries (default 3)"; + } + } + must "../keepalive-period"; + description + "Number of retries (default 3)"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses GROUP-TUNNEL; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-TUNNEL; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-vrf-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-vrf-cfg.yang new file mode 100644 index 000000000..efad8cad1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-if-vrf-cfg.yang @@ -0,0 +1,153 @@ +module Cisco-IOS-XR-um-if-vrf-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-if-vrf-cfg"; + prefix um-if-vrf-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + + 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 if vrf package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2019-10-10 { + description + "Initial version"; + semver:module-version "1.0.0"; + } + + grouping GROUP-IFSUB { + description + "Grouping for interface"; + leaf vrf { + when "../a1:interface-name[not(starts-with(text(),'tunnel-'))] and ../a1:interface-name[not(starts-with(text(),'cem'))] and ../a1:interface-name[not(starts-with(text(),'nve'))]" { + tailf:dependency "../a1:interface-name"; + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Set VRF in which the interface operates"; + } + container address-family { + when "../a1:interface-name[not(starts-with(text(),'pw-ether'))] and ../a1:interface-name[not(starts-with(text(),'pw-iw'))] and ../a1:interface-name[not(starts-with(text(),'cem'))]" { + tailf:dependency "../a1:interface-name"; + } + description + "AFI/SAFI configuration"; + container ipv4 { + description + "IPv4 address family"; + container multicast { + presence "Indicates a multicast node is configured."; + description + "Multicast topology"; + container default-topology { + presence "Indicates a default-topology node is configured."; + description + "Multicast default topology"; + } + container topologies { + description + "Specify a non-default topology"; + list topology { + key "topology-name"; + description + "Specify a non-default topology"; + leaf topology-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Topology name"; + } + } + description + "Specify a non-default topology"; + } + } + } + } + } + container ipv6 { + description + "IPv6 address family"; + container multicast { + presence "Indicates a multicast node is configured."; + description + "Multicast topology"; + container default-topology { + presence "Indicates a default-topology node is configured."; + description + "Multicast default topology"; + } + container topologies { + description + "Specify a non-default topology"; + list topology { + key "topology-name"; + description + "Specify a non-default topology"; + leaf topology-name { + type string { + length "1..32" { + description + "Topology name"; + } + } + description + "Specify a non-default topology"; + } + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses GROUP-IFSUB; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses GROUP-IFSUB; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-igmp-snooping-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-igmp-snooping-cfg.yang new file mode 100644 index 000000000..b2ed08806 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-igmp-snooping-cfg.yang @@ -0,0 +1,537 @@ +module Cisco-IOS-XR-um-igmp-snooping-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-igmp-snooping-cfg"; + prefix um-igmp-snooping-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 igmp-snooping package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-06 { + description + "Added mrouter-forwarding, always/sync for topology-change and sync for process support"; + semver:module-version "1.0.0"; + } + revision 2022-02-02 { + description + "Initial release"; + } + + container igmp { + description + "IPv4 Address Family"; + container snooping { + description + "Enter IGMP snooping subcommands"; + container profiles { + description + "Enter IGMP snooping profile name"; + list profile { + key "profile-name"; + description + "Enter IGMP snooping profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Profile name - maximum 32 characters"; + } + } + description + "Enter IGMP snooping profile name"; + } + leaf system-ip-address { + type inet:ipv4-address-no-zone; + description + "Source address for generated IGMP messages"; + } + leaf minimum-version { + type uint32 { + range "2..3" { + description + "Enter minimum-version"; + } + } + description + "Configure minimum IGMP version (default 2)"; + } + container report-suppression { + description + "Minimize number of IGMP reports sent to mrouters"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable report-suppression"; + } + } + container tcn { + description + "Configure behavior on topology change"; + container query { + description + "Require G-Query to expedite relearning"; + container solicit { + presence "Indicates a solicit node is configured."; + description + "Solicit a G-Query on topology change (default disabled)"; + } + } + container flood { + description + "Add all STP ports to all mroutes during topology change"; + container query { + description + "tcn flood query"; + leaf count { + type uint32 { + range "1..10" { + description + "Enter tcn flood query count"; + } + } + description + "Topology change complete after count G-Queries (default 2)"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCN flooding"; + } + } + } + container router-alert-check { + description + "Check for IP RA Option in snooped IGMP messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable router-alert-check"; + } + } + container ttl-check { + description + "Check TTL is 1 in snooped IGMP messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TTL checking"; + } + } + container internal-querier { + presence "Indicates a internal-querier node is configured."; + description + "Configure the IGMP internal-querier"; + leaf max-response-time { + type uint32 { + range "1..25" { + description + "Enter max-response-time in seconds"; + } + } + description + "IGMP G-Query MRT value (default 10)"; + } + leaf query-interval { + type uint32 { + range "1..18000" { + description + "Enter query-interval in seconds"; + } + } + description + "Time between periodic G-Queries (default 60)"; + } + leaf robustness-variable { + type uint32 { + range "1..7" { + description + "Enter robustness-variable"; + } + } + description + "IGMP robustness-variable (default 2)"; + } + container tcn { + description + "Configure internal-querier behavior on topology change"; + container query { + description + "Configure internal-querier tcn query"; + leaf count { + type uint32 { + range "0..7" { + description + "Enter tcn query count"; + } + } + description + "Number of TCN G-Queries to send (default 2)"; + } + leaf interval { + type uint32 { + range "1..18000" { + description + "Enter query interval in seconds"; + } + } + description + "Time between TCN G-Queries (default 10)"; + } + leaf max-response-time { + type uint32 { + range "1..25" { + description + "Enter max-response-time in seconds"; + } + } + description + "IGMP G-Query MRT value (default Querier's MRT)"; + } + } + } + container timer { + description + "Other querier present timer"; + leaf expiry { + type uint32 { + range "60..300" { + description + "Enter timer expiry in seconds"; + } + } + description + "timer expiry (default QQI*QRV+MRT/2)"; + } + } + leaf version { + type uint32 { + range "2..3" { + description + "Enter internal-querier version"; + } + } + description + "IGMP version (default 3)"; + } + } + container querier { + description + "Configure IGMPv2 Querier information"; + leaf query-interval { + type uint32 { + range "1..18000" { + description + "Enter query-interval in seconds"; + } + } + description + "Time between periodic G-Queries (default 60)"; + } + leaf robustness-variable { + type uint32 { + range "1..7" { + description + "Enter robustness-variable"; + } + } + description + "Querier robustness-variable (default 2)"; + } + } + container last-member-query { + description + "Configure last member query behavior"; + leaf interval { + type uint32 { + range "100..5000" { + description + "Enter last member query interval in milliseconds"; + } + } + description + "Last member query interval (default 1000)"; + } + leaf count { + type uint32 { + range "1..7" { + description + "Enter last member query count"; + } + } + description + "Last member query count (default 2)"; + } + } + leaf unsolicited-report-interval { + type uint32 { + range "100..5000" { + description + "Enter unsolicited-report-interval in milliseconds"; + } + } + description + "Time between state-change reports (default 1000)"; + } + container immediate-leave { + presence "Indicates a immediate-leave node is configured."; + description + "Remove membership immediately on receipt of leave"; + } + container mrouter { + presence "Indicates a mrouter node is configured."; + description + "Configure a static mrouter on a port"; + } + container mrouter-forwarding { + description + "Forward multicast to all mrouters"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable mrouter forwarding"; + } + } + container router-guard { + presence "Indicates a router-guard node is configured."; + description + "Prevent dynamic mrouter discovery on a port"; + } + container static { + description + "Configure static group membership on a port"; + container group { + description + "Configure a static group"; + list ip-address { + key "address"; + description + "Enter a valid multicast address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter a valid multicast address"; + } + } + container ip-src-addresses { + description + "Enter a valid multicast address"; + list ip-address { + key "address"; + description + "Enter a valid multicast address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter a valid multicast address"; + } + container source { + description + "Configure source address for static source-group"; + list ip-address { + key "address"; + description + "Enter a valid unicast ip address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter a valid multicast address"; + } + } + } + } + } + } + } + leaf access-group { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter access-list name"; + } + } + description + "Configure group membership filter"; + } + container group { + description + "Configure group membership limits"; + leaf limit { + type uint32 { + range "0..65535" { + description + "Enter group limit"; + } + } + description + "Limit the number of groups or source-groups allowed on a port"; + } + leaf threshold { + type uint32 { + range "0..65535" { + description + "Enter threshold value"; + } + } + must "../limit"; + description + "Specify group threshold value for the port "; + } + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Enter route-policy name"; + } + } + description + "Specify a route-policy to set the group weight"; + } + } + container startup { + description + "Configure startup behavior"; + container query { + description + "Configure startup query behavior"; + leaf count { + type uint32 { + range "0..7" { + description + "Enter startup query count"; + } + } + description + "Number of G-Queries to send (default 2)"; + } + leaf interval { + type uint32 { + range "1..18000" { + description + "Enter query interval in seconds"; + } + } + description + "Time between Startup G-Queries (default 10)"; + } + leaf max-response-time { + type uint32 { + range "1..25" { + description + "Enter max-response-time in seconds"; + } + } + description + "IGMP G-Query MRT value (default Querier's MRT)"; + } + container port-up { + description + "Startup query behavior when port goes up"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable startup queries on port-up"; + } + } + container iccp-group { + description + "Startup query behavior for iccp-group"; + container port-active { + presence "Indicates a port-active node is configured."; + description + "Issue startup queries when iccp-group goes active"; + } + } + container topology-change { + presence "Indicates a topology-change node is configured."; + description + "Issue startup queries on topology_change"; + } + container topology-change-always { + presence "Indicates a topology-change always node is configured."; + description + "Send g-queries on topology-change even when not STP root"; + } + container topology-change-sync { + presence "Indicates a topology-change sync node is configured."; + description + "Remove unrefreshed membership state"; + } + container process { + description + "Issue startup queries on process event"; + container start { + presence "Indicates a start node is configured."; + description + "Issue startup queries on process start"; + } + container start-sync { + presence "Indicates a sync node is configured."; + description + "Remove unrefreshed membership state"; + } + } + } + } + container redundancy { + description + "Configure redundancy"; + container iccp-group { + description + "Configure redundancy iccp-group behavior"; + container report-standby-state { + description + "Report standby port membership"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable reporting"; + } + } + } + } + container default-bridge-domain { + description + "Configure this as default profile for L2VPN BDs"; + container all { + description + "All types of bridge-domain"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable this profile"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-iidmgr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-iidmgr-cfg.yang new file mode 100644 index 000000000..24ad4e3d4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-iidmgr-cfg.yang @@ -0,0 +1,55 @@ +module Cisco-IOS-XR-um-iidmgr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-iidmgr-cfg"; + prefix um-iidmgr-cfg; + + 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 iidmgr package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-25 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container iidmgr { + description + "Internal ID Manager"; + container iid { + description + "Internal ID configuration"; + leaf holdtime { + type uint32 { + range "0..60" { + description + "Length of timeout in minutes"; + } + } + description + "Holdtime for stale/freed IID"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ikev2-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ikev2-cfg.yang new file mode 100644 index 000000000..b9b70862a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ikev2-cfg.yang @@ -0,0 +1,500 @@ +module Cisco-IOS-XR-um-ikev2-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ikev2-cfg"; + prefix um-ikev2-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 ikev2 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-28 { + description + "Added fvrf support under match node"; + semver:module-version "1.1.0"; + } + revision 2021-06-29 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ikev2 { + description + "IKE configuration commands"; + container profile { + description + "Configure IKEV2 profiles"; + container ikev2-profile-names { + description + "Enter name of IKEV2 profile of max length 32"; + list ikev2-profile-name { + key "ikev2-profile-name"; + description + "Enter name of IKEV2 profile of max length 32"; + leaf ikev2-profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter name of IKEV2 profile of max length 32"; + } + } + description + "Enter name of IKEV2 profile of max length 32"; + } + container match { + description + "match a profile"; + container identity { + description + "match a profile based on identity[remote/local]"; + container remote { + description + "match a profile based on remote identity"; + container addresses { + description + "remote IP address(es) for matching identity"; + list address { + must "not(../../any)"; + key "remote-address mask"; + description + "remote IP address(es) for matching identity"; + leaf remote-address { + type inet:ipv4-address-no-zone; + description + "remote IP address(es) for matching identity"; + } + leaf mask { + type inet:ipv4-address-no-zone; + description + "address mask"; + } + } + } + container any { + must "not(../addresses/address)"; + presence "Indicates a any node is configured."; + description + "match any peer identity"; + } + } + } + container fvrf { + description + "fvrf of the profile"; + container any { + must "not(../vrf-name)"; + presence "Indicates a any node is configured."; + description + "any fvrf"; + } + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter the vrf name"; + } + } + must "not(../any)"; + description + "Enter the vrf name"; + } + } + } + leaf lifetime { + type uint32 { + range "120..86400" { + description + "Enter the lifetime value in seconds"; + } + } + description + "Lifetime in seconds for IKEV2 SA"; + } + leaf keyring { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter the ikev2 keyring name of max length 32"; + } + } + description + "Keyring to use with [local/remote] authentication method"; + } + container pki { + description + "Configure truspoint(s)"; + container trustpoints { + description + "Configure trustpoint(s)"; + list trustpoint { + key "trustpoint-name"; + description + "Configure trustpoint(s)"; + leaf trustpoint-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter the trustpoint name of max length 32"; + } + } + description + "Configure trustpoint(s)"; + } + } + } + } + container authentication { + description + "Authentication method to be for use for SA"; + container local { + description + "Local authentication method"; + container pre-shared { + must "not(../rsa-signature)"; + presence "Indicates a pre-shared node is configured."; + description + "Use preshared key authentication method"; + } + container rsa-signature { + must "not(../pre-shared)"; + presence "Indicates a rsa-signature node is configured."; + description + "Use RSA signature authentication method"; + } + } + container remote { + description + "Remote authentication method"; + container pre-shared { + presence "Indicates a pre-shared node is configured."; + description + "Use pre-shared-key authentication method"; + } + container rsa-signature { + presence "Indicates a rsa-signature node is configured."; + description + "Use RSA authentication method"; + } + } + } + } + } + } + container proposal { + description + "Configure IKEV2 proposals"; + container ikev2-proposal-names { + description + "Enter name of IKEV2 proposal of max length 32"; + list ikev2-proposal-name { + key "ikev2-proposal-name"; + description + "Enter name of IKEV2 proposal of max length 32"; + leaf ikev2-proposal-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter name of IKEV2 proposal of max length 32"; + } + } + description + "Enter name of IKEV2 proposal of max length 32"; + } + container encryptions { + description + "Specify one or more transforms of encryption"; + leaf-list encryption { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "choose one or more encryption algorithms in required preference + aes-gcm-128 + aes-gcm-256 + aes-cbc-128 + aes-cbc-192 + aes-cbc-256"; + } + pattern "aes-gcm-128|aes-gcm-256|aes-cbc-128|aes-cbc-192|aes-cbc-256"; + } + max-elements "5"; + description + "Specify one or more transforms of encryption"; + } + } + container integrities { + description + "Specify one or more transforms of integrity type"; + leaf-list integrity { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "choose one or more integrity algorithms in required preference + sha-1 + sha-256 + sha-384 + sha-512"; + } + pattern "sha-1|sha-256|sha-384|sha-512"; + } + max-elements "4"; + description + "Specify one or more transforms of integrity type"; + } + } + container prfs { + description + "Specify one or more transforms of prf type"; + leaf-list prf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "choose one or more prf algorithms in required preference + sha-1 + sha-256 + sha-384 + sha-512"; + } + pattern "sha-1|sha-256|sha-384|sha-512"; + } + max-elements "4"; + description + "Specify one or more transforms of prf type"; + } + } + container dh-groups { + description + "Specify one or more transforms of DH group"; + leaf-list dh-group { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "choose one or more group algorithms in required preference + 19 256-bit ECP group-19 + 20 384-bit ECP group-20 + 21 521-bit ECP group-21"; + } + pattern "19|20|21"; + } + max-elements "8"; + description + "Specify one or more transforms of DH group"; + } + } + } + } + } + container policy { + description + "Configure IKEV2 policies"; + container ikev2-policy-names { + description + "Enter name of IKEV2 policy of max length 32"; + list ikev2-policy-name { + key "ikev2-policy-name"; + description + "Enter name of IKEV2 policy of max length 32"; + leaf ikev2-policy-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter name of IKEV2 policy of max length 32"; + } + } + description + "Enter name of IKEV2 policy of max length 32"; + } + container proposal { + description + "Proposal name for this policy"; + container ikev2-proposal-names { + description + "Enter the name of IKEV2 proposal of max length 32"; + list ikev2-proposal-name { + key "ikev2-proposal-name"; + description + "Enter the name of IKEV2 proposal of max length 32"; + leaf ikev2-proposal-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter the name of IKEV2 proposal of max length 32"; + } + } + description + "Enter the name of IKEV2 proposal of max length 32"; + } + } + } + } + container match { + description + "match a policy"; + container address { + description + "address used to match policy"; + container locals { + description + "local address used to match policy"; + list local { + key "address"; + description + "local address used to match policy"; + leaf address { + type inet:ipv4-address-no-zone; + description + "local address used to match policy"; + } + } + } + } + container fvrf { + description + "user configured vrf default global"; + container any { + presence "Indicates a any node is configured."; + description + "any fvrf"; + } + container vrfs { + description + "Enter the vrf name"; + list vrf { + key "vrf-name"; + description + "Enter the vrf name"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter the vrf name"; + } + } + description + "Enter the vrf name"; + } + } + } + } + } + } + } + } + } + container keyrings { + description + "Configure IKEV2 keyrings"; + list keyring { + key "ikev2-keyring-name"; + description + "Enter name of IKEV2 keyring of max length 32"; + leaf ikev2-keyring-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter name of IKEV2 keyring of max length 32"; + } + } + description + "Enter name of IKEV2 keyring of max length 32"; + } + container peers { + description + "Enter the keyring peer submode"; + list peer { + key "peer-name"; + description + "Enter the name of peer of max length 32"; + leaf peer-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter the name of peer of max length 32"; + } + } + description + "Enter the name of peer of max length 32"; + } + leaf address { + type inet:ipv4-address-no-zone; + must "../mask"; + description + "IP address to identify the peer"; + } + leaf mask { + type inet:ipv4-address-no-zone; + must "../address"; + description + "address mask"; + } + container pre-shared-key { + description + "Pre-shared key for the peer"; + leaf local { + type xr:Proprietary-password { + length "1..1024" { + description + "Encrypted pre-shared-key as hex string or Plaintext pre-shared-key prefixed with !"; + } + pattern "(!(([0-9]+)|([a-f]+)|([A-F]+))+)|([^!](([0-9]+)|([a-z]+)|([A-Z]+))+)"; + } + must "../remote and not(../password)"; + description + "Enter local pre-share-key"; + } + leaf remote { + type xr:Proprietary-password { + length "1..1024" { + description + "Encrypted pre-shared-key as hex string or Plaintext pre-shared-key prefixed with !"; + } + pattern "(!(([0-9]+)|([a-f]+)|([A-F]+))+)|([^!](([0-9]+)|([a-z]+)|([A-Z]+))+)"; + } + must "../local"; + description + "Enter remote pre-share-key"; + } + leaf password { + type xr:Proprietary-password { + length "1..1024" { + description + "Encrypted pre-shared-key as hex string or Plaintext pre-shared-key prefixed with !"; + } + pattern "(!(([0-9]+)|([a-f]+)|([A-F]+))+)|([^!](([0-9]+)|([a-z]+)|([A-Z]+))+)"; + } + must "not(../local)"; + description + "Enter encrypted pre-shared-key as hex string "; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-install-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-install-cfg.yang new file mode 100644 index 000000000..46faa1364 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-install-cfg.yang @@ -0,0 +1,122 @@ +module Cisco-IOS-XR-um-install-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-install-cfg"; + prefix um-install-cfg; + + 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 install package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-14 { + description + "Add support for fingerprints frequency never + 2022-03-10 + Added configuration for RPM fingerprinting + 2022-01-19 + Updated length of url and description nodes"; + semver:module-version "2.0.0"; + } + revision 2021-02-04 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container install { + description + "Install configuration"; + container repositories { + description + "Per repository configuration"; + list repository { + must "url or description"; + key "repository-name"; + description + "Per repository configuration"; + leaf repository-name { + type string { + length "1..80" { + description + "Repository ID (up to 80 characters)"; + } + } + description + "Per repository configuration"; + } + leaf url { + type string { + length "1..900" { + description + "ftp://[;]/ -> FTP repository, + http://[;]/ -> HTTP repository, + https://[;]/ -> HTTPS repository, + file:/// -> Local File repository + or directory - this must be a subdirectory of one of + '/var/xr/disk1/', '/harddisk:/', or '/misc/disk1/'"; + } + } + description + "Repository URL - path to local repository or directory or ftp, http, + or https path to remote repository, optionally containing the name of + a VRF for the repository."; + } + leaf description { + type string { + length "1..900" { + description + "Repository description"; + } + } + description + "Description of this repository"; + } + } + } + container fingerprints { + description + "RPM fingerprinting configuration"; + container frequency { + description + "Configure RPM fingerprint generation frequency"; + container never { + must "not(../frequency-of-fingerprint)"; + presence "Indicates a never node is configured."; + description + "Disable RPM fingerprint generation"; + } + leaf frequency-of-fingerprint { + type uint32 { + range "1..12" { + description + "Frequency of fingerprint generation in hours"; + } + } + must "not(../never)"; + description + "Frequency of fingerprint generation in hours"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-interface-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-interface-cfg.yang new file mode 100644 index 000000000..8196525f6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-interface-cfg.yang @@ -0,0 +1,400 @@ +module Cisco-IOS-XR-um-interface-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-interface-cfg"; + prefix um-interface-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import tailf-common { + prefix tailf; + } + + 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 interface package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller hierarchy"; + semver:module-version "3.0.0"; + } + revision 2021-05-04 { + description + "Added sec-admin-state node under controller"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-29 { + description + "Initial version"; + } + + grouping GROUP-BODY { + description + "Grouping for group-body"; + container sub-interface-type { + description + "Specify type of sub-interface"; + container l2transport { + presence "Indicates a l2transport node is configured."; + description + "l2transport sub-interface"; + } + container point-to-point { + presence "Indicates a point-to-point node is configured."; + description + "point-to-point sub-interface"; + } + container multipoint { + presence "Indicates a multipoint node is configured."; + description + "multipoint sub-interface"; + } + } + container ipv4 { + description + "Interface IPv4 config commands"; + } + container ipv6 { + description + "Interface IPv6 config commands"; + } + container dampening { + when "../interface-name[not(starts-with(text(),'SBC'))] and ../interface-name[not(starts-with(text(),'tunnel-te'))] and ../interface-name[not(starts-with(text(),'tunnel-mte'))] and ../interface-name[not(starts-with(text(),'tunnel-gre'))] and ../interface-name[not(starts-with(text(),'tunnel-ip'))] and ../interface-name[not(starts-with(text(),'VASILeft'))] and ../interface-name[not(starts-with(text(),'VASIRight'))] and ../interface-name[not(starts-with(text(),'service-gre'))] and ../interface-name[not(starts-with(text(),'service-ipsec'))] and ../interface-name[not(starts-with(text(),'InterflexLeft'))] and ../interface-name[not(starts-with(text(),'InterflexRight'))] and ../interface-name[not(starts-with(text(),'CEM'))]" { + tailf:dependency "../interface-name"; + } + presence "Indicates a dampening node is configured."; + description + "configure state dampening on the given interface"; + container decay-half-life { + presence "Indicates a decay-half-life node is configured."; + description + "Decay half life (in minutes)"; + leaf value { + type uint32 { + range "1..45" { + description + "Decay half life (in minutes)"; + } + } + mandatory true; + description + "Decay half life (in minutes)"; + } + container reuse-threshold { + must "suppress-threshold"; + presence "Indicates a reuse-threshold node is configured."; + description + "Reuse threshold"; + leaf value { + type uint32 { + range "1..20000" { + description + "Reuse threshold"; + } + } + mandatory true; + description + "Reuse threshold"; + } + container suppress-threshold { + must "max-suppress-time"; + presence "Indicates a suppress-threshold node is configured."; + description + "Suppress threshold"; + leaf value { + type uint32 { + range "1..20000" { + description + "Suppress threshold"; + } + } + mandatory true; + description + "Suppress threshold"; + } + container max-suppress-time { + presence "Indicates a max-suppress-time node is configured."; + description + "Max suppress time (in minutes)"; + leaf value { + type uint32 { + range "1..255" { + description + "Max suppress time (in minutes)"; + } + } + mandatory true; + description + "Max suppress time (in minutes)"; + } + container restart-penalty { + when "../../../../../../interface-name[not(starts-with(text(),'BVI'))] and ../../../../../../interface-name[not(starts-with(text(),'PW-Ether'))] and ../../../../../../interface-name[not(starts-with(text(),'PW-IW'))] and ../../../../../../interface-name[not(starts-with(text(),'Bundle-Ether'))] and ../../../../../../interface-name[not(starts-with(text(),'Bundle-POS'))] and ../../../../../../interface-name[not(starts-with(text(),'CSI-Ether'))] and ../../../../../../interface-name[not(starts-with(text(),'CSI'))] and ../../../../../../interface-name[not(starts-with(text(),'SFI'))] and ../../../../../../interface-name[not(starts-with(text(),'nve'))] and ../../../../../../interface-name[not(starts-with(text(),'Odu-Group-Mp'))] and ../../../../../../interface-name[not(starts-with(text(),'Odu-Group-Te'))] and ../../../../../../interface-name[not(starts-with(text(),'Loopback'))]" { + tailf:dependency "../../../../../../interface-name"; + } + presence "Indicates a restart-penalty node is configured."; + description + "Restart penalty"; + leaf value { + type uint32 { + range "0..20000" { + description + "Restart penalty"; + } + } + mandatory true; + description + "Restart penalty"; + } + } + } + } + } + } + } + container encapsulation { + when "../interface-name[starts-with(text(),'POS')] or ../interface-name[starts-with(text(),'serial')] or ../interface-name[starts-with(text(),'multilink')]" { + tailf:dependency "../interface-name"; + } + description + "Set the encapsulation on an interface"; + container ppp { + presence "Indicates a ppp node is configured."; + description + "Point-to-Point protocol"; + } + container hdlc { + presence "Indicates a hdlc node is configured."; + description + "Serial HDLC synchronous"; + } + container mfr { + when "../../interface-name[starts-with(text(),'serial')]" { + tailf:dependency "../../interface-name"; + } + presence "Indicates a mfr node is configured."; + description + "Multilink Frame Relay Member Link"; + } + container frame-relay { + when "../../interface-name[not(contains(text(),'.'))]" { + tailf:dependency "../../interface-name"; + } + presence "Indicates a frame-relay node is configured."; + description + "Frame Relay networks"; + container IETF { + presence "Indicates a IETF node is configured."; + description + "Use RFC1490/RFC2427 encapsulation"; + } + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "shutdown the given interface"; + } + leaf mtu { + when "../interface-name[not(starts-with(text(),'SBC'))] and ../interface-name[not(starts-with(text(),'tunnel-te'))] and ../interface-name[not(starts-with(text(),'tunnel-mte'))] and ../interface-name[not(starts-with(text(),'VASILeft'))] and ../interface-name[not(starts-with(text(),'VASIRight'))] and ../interface-name[not(starts-with(text(),'service-gre'))] and ../interface-name[not(starts-with(text(),'service-ipsec'))] and ../interface-name[not(starts-with(text(),'InterflexLeft'))] and ../interface-name[not(starts-with(text(),'InterflexRight'))] and ../interface-name[not(starts-with(text(),'CEM'))]" { + tailf:dependency "../interface-name"; + } + type uint32 { + range "64..65535" { + description + "MTU size in bytes"; + } + } + description + "Set the MTU on an interface"; + } + container logging { + when "../interface-name[starts-with(text(),'Loopback')] or ../interface-name[starts-with(text(),'Bundle-Ether')] or ../interface-name[starts-with(text(),'Bundle-POS')] or ../interface-name[starts-with(text(),'tunnel')] or ../interface-name[starts-with(text(),'service')] or ../interface-name[starts-with(text(),'Service')] or ../interface-name[starts-with(text(),'VASILeft')] or ../interface-name[starts-with(text(),'VASIRight')] or ../interface-name[starts-with(text(),'FirewallManagement')] or ../interface-name[starts-with(text(),'SBC')] or ../interface-name[starts-with(text(),'InterflexLeft')] or ../interface-name[starts-with(text(),'InterflexRight')] or ../interface-name[starts-with(text(),'BVI')] or ../interface-name[starts-with(text(),'PW-Ether')] or ../interface-name[starts-with(text(),'PW-IW')] or ../interface-name[starts-with(text(),'Odu-Group-Mp')] or ../interface-name[starts-with(text(),'Odu-Group-Te')] or ../interface-name[starts-with(text(),'nve')] or ../interface-name[starts-with(text(),'CSI')] or ../interface-name[starts-with(text(),'SFI')] or ../interface-name[contains(text(),'.')]" { + tailf:dependency "../interface-name"; + } + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container link-status { + presence "Indicates a link-status node is configured."; + description + "Enable interface and line-protocol state change alarms"; + } + } + } + leaf bandwidth { + when "../interface-name[not(starts-with(text(),'SBC'))] and ../interface-name[not(starts-with(text(),'FirewallManagement'))] and ../interface-name[not(starts-with(text(),'VASILeft'))] and ../interface-name[not(starts-with(text(),'VASIRight'))] and ../interface-name[not(starts-with(text(),'service-gre'))] and ../interface-name[not(starts-with(text(),'service-ipsec'))] and ../interface-name[not(starts-with(text(),'InterflexLeft'))] and ../interface-name[not(starts-with(text(),'InterflexRight'))] and ../interface-name[not(starts-with(text(),'CEM'))]" { + tailf:dependency "../interface-name"; + } + type uint64 { + range "0..18446744073709551615" { + description + "bandwidth in kbps"; + } + } + description + "Set the bandwidth of an interface"; + } + leaf description { + type string { + length "1..1024" { + description + "Description for this interface"; + } + } + description + "Set description for this interface"; + } + } + + grouping CONT-BODY { + description + "Grouping for controller-body"; + container shutdown { + when "../controller-name[not(starts-with(text(),'MACSecCtrlr'))] and ../controller-name[not(starts-with(text(),'Odu-Group-'))] and ../controller-name[not(starts-with(text(),'dwdm'))]" { + tailf:dependency "../controller-name"; + } + presence "Indicates a shutdown node is configured."; + description + "shutdown the given controller"; + } + leaf description { + when "../controller-name[not(starts-with(text(),'CPRI'))] and ../controller-name[not(starts-with(text(),'MACSecCtrlr'))] and ../controller-name[not(starts-with(text(),'Odu-Group-'))] and ../controller-name[not(starts-with(text(),'STM'))] and ../controller-name[not(starts-with(text(),'STS'))] and ../controller-name[not(starts-with(text(),'VC'))] and ../controller-name[not(starts-with(text(),'dwdm'))]" { + tailf:dependency "../controller-name"; + } + type string { + length "1..1024" { + description + "Description for this controller"; + } + } + description + "Set description for this controller"; + } + leaf sec-admin-state { + when "../controller-name[not(starts-with(text(),'MACSecCtrlr'))] and ../controller-name[not(starts-with(text(),'Odu-Group-'))] and ../controller-name[not(starts-with(text(),'E1'))] and ../controller-name[not(starts-with(text(),'E3'))] and ../controller-name[not(starts-with(text(),'T1'))] and ../controller-name[not(starts-with(text(),'T3'))] and ../controller-name[not(starts-with(text(),'SONET'))] and ../controller-name[not(starts-with(text(),'ODU'))] and ../controller-name[not(starts-with(text(),'OTU'))] and ../controller-name[not(starts-with(text(),'dwdm'))]" { + tailf:dependency "../controller-name"; + } + type enumeration { + enum "normal" { + value 0; + description + "change the sec-admin-state to normal, only for optics"; + } + enum "maintenance" { + value 1; + description + "change the sec-admin-state to maintenance"; + } + } + description + "Configure the secondary admin state, not available for all controllers"; + } + } + + container interfaces { + description + "Interface configuration"; + list interface { + key "interface-name"; + description + "Interface configuration subcommands"; + leaf interface-name { + type xr:Interface-name; + description + "Interface configuration subcommands"; + } + uses GROUP-BODY; + } + list interface-preconfigure { + key "interface-name"; + description + "Specify a preconfig interface"; + leaf interface-name { + type xr:Interface-name; + description + "Interface configuration subcommands"; + } + uses GROUP-BODY; + } + } + container controllers { + description + "Interface configuration"; + list controller { + key "controller-name"; + description + "Controller configuration subcommands"; + leaf controller-name { + type xr:Controller-name; + description + "Controller name"; + } + uses CONT-BODY; + } + list controller-preconfigure { + key "controller-name"; + description + "Specify a preconfig controller"; + leaf controller-name { + type xr:Controller-name; + description + "Controller name"; + } + uses CONT-BODY; + } + } + container logging { + description + "Modify message logging facilities"; + container events { + description + "Configure event monitoring parameters"; + container link-status { + description + "Enable or disable UP/DOWN state notifications for all interfaces"; + container disable { + must "not(../software-interfaces)"; + presence "Indicates a disable node is configured."; + description + "Disable state UP/DOWN notifications for all interfaces"; + } + container software-interfaces { + must "not(../disable)"; + presence "Indicates a software-interfaces node is configured."; + description + "Enable state UP/DOWN notification for software interfaces"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ip-virtual-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ip-virtual-cfg.yang new file mode 100644 index 000000000..1233bdc9f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ip-virtual-cfg.yang @@ -0,0 +1,161 @@ +module Cisco-IOS-XR-um-ip-virtual-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ip-virtual-cfg"; + prefix um-ip-virtual-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 ip-virtual package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-04-02 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ipv4 { + description + "Global IPv4 configuration commands"; + container virtual { + description + "virtual address for management interfaces options"; + container address { + description + "virtual address for management interfaces"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address/prefix"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + must "../ip-address"; + description + "IPv4 address/prefix"; + } + container vrfs { + description + "Select VRF for which the virtual ip address is configured"; + list vrf { + key "vrf-name"; + description + "Select VRF for which the virtual ip address is configured"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + " A VRF name"; + } + } + description + "Select VRF for which the virtual ip address is configured"; + } + leaf ip-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 address/prefix"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + mandatory true; + description + "IPv4 address/prefix"; + } + } + } + container use-as-src-addr { + presence "Indicates a use-as-src-addr node is configured."; + description + "Use as default src address on sourced packets?"; + } + } + } + } + container ipv6 { + description + "Global IPv6 configuration commands"; + container virtual { + description + "virtual address for management interfaces options"; + container address { + description + "virtual address for management interfaces"; + leaf ip-address { + type inet:ipv6-address-no-zone; + description + "IPv6 address/prefix"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + must "../ip-address"; + description + "IPv6 address/prefix"; + } + container vrfs { + description + "Select VRF for which the virtual ip address is configured"; + list vrf { + key "vrf-name"; + description + "Select VRF for which the virtual ip address is configured"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + " A VRF name"; + } + } + description + "Select VRF for which the virtual ip address is configured"; + } + leaf ip-address { + type inet:ipv6-address-no-zone; + mandatory true; + description + "IPv6 address/prefix"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "IPv6 address/prefix"; + } + } + } + container use-as-src-addr { + presence "Indicates a use-as-src-addr node is configured."; + description + "Use as default src address on sourced packets?"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsec-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsec-cfg.yang new file mode 100644 index 000000000..a46b16b0d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsec-cfg.yang @@ -0,0 +1,251 @@ +module Cisco-IOS-XR-um-ipsec-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipsec-cfg"; + prefix um-ipsec-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 ipsec package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-29 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ipsec { + description + "Configure IPSEC policy"; + container transform-sets { + description + "Define transform and settings"; + list transform-set { + key "transform-set-name"; + description + "Define transform and settings"; + leaf transform-set-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Transform set tag - maximum 32 characters"; + } + } + description + "Define transform and settings"; + } + container transform { + must "esp-hmac-sha-256 or esp-hmac-sha-384 or esp-hmac-sha-512 or esp-hmac-sha1 or esp-aes or esp-192-aes or esp-256-aes"; + presence "Indicates a transform node is configured."; + description + "Define transforms (protocols) for the transform set"; + container esp-hmac-sha1 { + must "not(../esp-hmac-sha-256 or ../esp-hmac-sha-384 or ../esp-hmac-sha-512)"; + presence "Indicates a esp-hmac-sha1 node is configured."; + description + "ESP transform using HMAC-SHA1 auth"; + } + container esp-hmac-sha-256 { + must "not(../esp-hmac-sha1 or ../esp-hmac-sha-384 or ../esp-hmac-sha-512)"; + presence "Indicates a esp-hmac-sha-256 node is configured."; + description + "ESP transform using HMAC-SHA-256 auth"; + } + container esp-hmac-sha-384 { + must "not(../esp-hmac-sha-256 or ../esp-hmac-sha1 or ../esp-hmac-sha-512)"; + presence "Indicates a esp-hmac-sha-384 node is configured."; + description + "ESP transform using HMAC-SHA-384 auth"; + } + container esp-hmac-sha-512 { + must "not(../esp-hmac-sha-256 or ../esp-hmac-sha-384 or ../esp-hmac-sha1)"; + presence "Indicates a esp-hmac-sha-512 node is configured."; + description + "ESP transform using HMAC-SHA-512 auth"; + } + container esp-aes { + must "not(../esp-192-aes or ../esp-256-aes)"; + presence "Indicates a esp-aes node is configured."; + description + "ESP transform using AES cipher (128 bits)"; + } + container esp-192-aes { + must "not(../esp-aes or ../esp-256-aes)"; + presence "Indicates a esp-192-aes node is configured."; + description + "ESP transform using AES cipher (192 bits)"; + } + container esp-256-aes { + must "not(../esp-192-aes or ../esp-aes)"; + presence "Indicates a esp-256-aes node is configured."; + description + "ESP transform using AES cipher (256 bits)"; + } + } + container mode { + description + "encapsulation mode (transport/tunnel)"; + container tunnel { + presence "Indicates a tunnel node is configured."; + description + "tunnel encapsulation mode"; + } + } + } + } + container profiles { + description + "Configure IPSEC profile"; + list profile { + key "profile-name"; + description + "Configure IPSEC profile"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IPSec profile name - maximum 32 characters"; + } + } + description + "Configure IPSEC profile"; + } + container set { + description + "Specify profile settings"; + container pfs { + description + "Specify PFS setting "; + container group19 { + must "not(../group20 or ../group21)"; + presence "Indicates a group19 node is configured."; + description + "D-H Group1 (768-bit modp)"; + } + container group20 { + must "not(../group19 or ../group21)"; + presence "Indicates a group20 node is configured."; + description + "D-H Group2 (1024-bit modp)"; + } + container group21 { + must "not(../group19 or ../group20)"; + presence "Indicates a group21 node is configured."; + description + "D-H Group5 (1536-bit modp)"; + } + } + container transform-set { + description + "Specify list of transform sets in priority order"; + leaf transform1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Transform - maximum 32 characters"; + } + } + description + "Transform - maximum 32 characters"; + } + leaf transform2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Transform - maximum 32 characters"; + } + } + must "../transform1"; + description + "Transform - maximum 32 characters"; + } + leaf transform3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Transform - maximum 32 characters"; + } + } + must "../transform1 and ../transform2"; + description + "Transform - maximum 32 characters"; + } + leaf transform4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Transform - maximum 32 characters"; + } + } + must "../transform1 and ../transform2 and ../transform3"; + description + "Transform - maximum 32 characters"; + } + leaf transform5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Transform - maximum 32 characters"; + } + } + must "../transform1 and ../transform2 and ../transform3 and ../transform4"; + description + "Transform - maximum 32 characters"; + } + } + leaf ikev2-profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter name of IKEV2 profile of max length 32"; + } + } + description + "Specify the ikev2 profile"; + } + container security-association { + description + "Security association parameters"; + container lifetime { + description + "Security association lifetime"; + leaf seconds { + type uint32 { + range "120..2592000" { + description + "Security-association duration in seconds"; + } + } + description + "Time-based key duration in seconds"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsla-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsla-cfg.yang new file mode 100644 index 000000000..ce3a64ef4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipsla-cfg.yang @@ -0,0 +1,4462 @@ +module Cisco-IOS-XR-um-ipsla-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipsla-cfg"; + prefix um-ipsla-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 ipsla package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-24 { + description + "Added missing containers - statistics and history under type/icmp/...,type/mpls"; + semver:module-version "3.0.0"; + } + revision 2021-10-07 { + description + "Modified the range of leaf y-value + 2021-07-08 + path corrected in the list ipv4-address under container remote-ip/ipv4-addresses + and added must statement under container local-ip"; + semver:module-version "2.0.0"; + } + revision 2021-02-26 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ipsla { + description + "IPSLA configuration commands"; + container operations { + description + "IPSLA operation configuration"; + list operation { + key "operation-number"; + description + "Operation number"; + leaf operation-number { + type uint32 { + range "1..2048" { + description + "Operation number"; + } + } + description + "Operation number"; + } + container type { + description + "Type of operation"; + container icmp { + description + "ICMP operation types"; + container echo { + must "(not(../path-echo) and not( ../path-jitter))"; + presence "Indicates a echo node is configured."; + description + "ICMP echo operation type"; + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this operation"; + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default 60)"; + } + } + description + "Frequency of the probing"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + container request { + description + "Payload size in request probe packet"; + leaf enter-request-datasize-in-byte { + type uint32 { + range "19..20" { + description + "Enter request datasize in byte"; + } + } + description + "Enter request datasize in byte"; + } + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe timeout in ms (default 5000 ms)"; + } + } + description + "Probe timeout interval"; + } + container source { + description + "Address/port of the source device"; + container address { + description + "IPv4/IPv6 address of the source device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the source device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the source device"; + } + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on source device"; + } + } + leaf tos { + type uint32 { + range "0..255" { + description + "Type of service number"; + } + } + description + "Type of service setting in probe packet"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VPN Routing/Forwarding instance name"; + } + } + description + "Configure IPSLA for a VPN Routing/Forwarding instance"; + } + container destination { + description + "Address/port of the target device"; + container address { + description + "IPv4/IPv6 address of the target device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the target device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the target device"; + } + } + } + container history { + description + "Configure the history parameters for this operation"; + leaf buckets { + type uint32 { + range "1..60" { + description + "Specify number of buckets (default 15)"; + } + } + description + "Buckets of history kept"; + } + container filter { + description + "Criteria to add operation data to history"; + container all { + presence "Indicates an all node is configured."; + description + "Store history data for all operations"; + } + container failures { + presence "Indicates a failures node is configured."; + description + "Store data for operations that failed"; + } + } + leaf lives { + type uint32 { + range "0..2" { + description + "Specify number of lives to be kept (default 0)"; + } + } + description + "Lives of history kept"; + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..25" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + container distribution { + description + "Distribution of statistics configuration"; + leaf count { + type uint32 { + range "1..20" { + description + "Specify number of distribution intervals (default 1)"; + } + } + description + "Count of distribution intervals maintained"; + } + leaf interval { + type uint32 { + range "1..100" { + description + "Specify distribution interval in ms (default 20 ms)"; + } + } + description + "Time interval for each statistical distribution"; + } + } + } + container intervals { + description + "Statistics collection over specified time interval"; + list interval { + key "interval-time"; + description + "Statistics collection over specified time interval"; + leaf interval-time { + type uint32 { + range "1..3600" { + description + "Interval in seconds"; + } + } + description + "Statistics collection over specified time interval"; + } + leaf buckets { + type uint32 { + range "1..100" { + description + "Buckets of enhanced statistics kept"; + } + } + description + "Maximum number of buckets to keep"; + } + } + } + } + } + container path-echo { + must "(not(../echo) and not( ../path-jitter))"; + presence "Indicates a path-echo node is configured."; + description + "ICMP path-echo operation type"; + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this operation"; + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default 60)"; + } + } + description + "Frequency of the probing"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + container request { + description + "Payload size in request probe packet"; + leaf enter-request-datasize-in-byte { + type uint32 { + range "19..20" { + description + "Enter request datasize in byte"; + } + } + description + "Enter request datasize in byte"; + } + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe timeout in ms (default 5000 ms)"; + } + } + description + "Probe timeout interval"; + } + container source { + description + "Address/port of the source device"; + container address { + description + "IPv4/IPv6 address of the source device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the source device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the source device"; + } + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on source device"; + } + } + container lsr-path { + description + "Loose source routing path (up to 8 intermediate nodes)"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + must "../ip-address"; + max-elements "8"; + description + "Enter IPv4 address of the intermediate node"; + } + } + leaf tos { + type uint32 { + range "0..255" { + description + "Type of service number"; + } + } + description + "Type of service setting in probe packet"; + } + container destination { + description + "Address/port of the target device"; + container address { + description + "IPv4/IPv6 address of the target device"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the target device"; + } + } + } + container history { + description + "Configure the history parameters for this operation"; + leaf buckets { + type uint32 { + range "1..60" { + description + "Specify number of buckets (default 15)"; + } + } + description + "Buckets of history kept"; + } + container filter { + description + "Criteria to add operation data to history"; + container all { + presence "Indicates an all node is configured."; + description + "Store history data for all operations"; + } + container failures { + presence "Indicates a failures node is configured."; + description + "Store data for operations that failed"; + } + } + leaf lives { + type uint32 { + range "0..2" { + description + "Specify number of lives to be kept (default 0)"; + } + } + description + "Lives of history kept"; + } + leaf samples { + type uint32 { + range "1..30" { + description + "Specify number of samples kept (default 16)"; + } + } + description + "Samples of history kept"; + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..25" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + container distribution { + description + "Distribution of statistics configuration"; + leaf count { + type uint32 { + range "1..20" { + description + "Specify number of distribution intervals (default 1)"; + } + } + description + "Count of distribution intervals maintained"; + } + leaf interval { + type uint32 { + range "1..100" { + description + "Specify distribution interval in ms (default 20 ms)"; + } + } + description + "Time interval for each statistical distribution"; + } + } + container maximum { + description + "Configure hops and path limits for statistics"; + leaf hops { + type uint32 { + range "1..30" { + description + "Specify number of hops (default 16)"; + } + } + description + "Maximum hops per path for which statistics are kept"; + } + leaf paths { + type uint32 { + range "1..128" { + description + "Specify number of paths (default 5)"; + } + } + description + "Maximum number of paths for which statistics are kept"; + } + } + } + } + } + container path-jitter { + must "(not(../echo) and not( ../path-echo))"; + presence "Indicates a path-jitter node is configured."; + description + "ICMP path-jitter operation type"; + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this operation"; + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default 60)"; + } + } + description + "Frequency of the probing"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + container request { + description + "Payload size in request probe packet"; + leaf enter-request-datasize-in-byte { + type uint32 { + range "19..20" { + description + "Enter request datasize in byte"; + } + } + description + "Enter request datasize in byte"; + } + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe timeout in ms (default 5000 ms)"; + } + } + description + "Probe timeout interval"; + } + container source { + description + "Address/port of the source device"; + container address { + description + "IPv4/IPv6 address of the source device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the source device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the source device"; + } + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on source device"; + } + } + container packet { + description + "Probe packet configuration parameters"; + leaf count { + type uint32 { + range "1..100" { + description + "Packet count (default 10)"; + } + } + description + "Number of packets to be transmitted during a probe"; + } + leaf interval { + type uint32 { + range "1..60000" { + description + "Packet interval (default 20 ms)"; + } + } + description + "Inter packet interval"; + } + } + container lsr-path { + description + "Loose source routing path (up to 8 intermediate nodes)"; + leaf-list ip-address { + type inet:ipv4-address-no-zone; + must "../ip-address"; + max-elements "8"; + description + "Enter IPv4 address of the intermediate node"; + } + } + leaf tos { + type uint32 { + range "0..255" { + description + "Type of service number"; + } + } + description + "Type of service setting in probe packet"; + } + container destination { + description + "Address/port of the target device"; + container address { + description + "IPv4/IPv6 address of the target device"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the target device"; + } + } + } + } + } + container udp { + description + "UDP operation types"; + container echo { + presence "Indicates a echo node is configured."; + description + "UDP echo operation type"; + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this operation"; + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default 60)"; + } + } + description + "Frequency of the probing"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + container request { + description + "Payload size in request probe packet"; + leaf enter-request-datasize-in-byte { + type uint32 { + range "19..20" { + description + "Enter request datasize in byte"; + } + } + description + "Enter request datasize in byte"; + } + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe timeout in ms (default 5000 ms)"; + } + } + description + "Probe timeout interval"; + } + container source { + description + "Address/port of the source device"; + container address { + description + "IPv4/IPv6 address of the source device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the source device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the source device"; + } + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on source device"; + } + } + container destination { + description + "Address/port of the target device"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the target device"; + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on target device"; + } + } + container packet { + description + "Probe packet configuration parameters"; + leaf count { + type uint32 { + range "1..100" { + description + "Packet count (default 10)"; + } + } + description + "Number of packets to be transmitted during a probe"; + } + leaf interval { + type uint32 { + range "1..60000" { + description + "Packet interval (default 20 ms)"; + } + } + description + "Inter packet interval"; + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..25" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + container distribution { + description + "Distribution of statistics configuration"; + leaf count { + type uint32 { + range "1..20" { + description + "Specify number of distribution intervals (default 1)"; + } + } + description + "Count of distribution intervals maintained"; + } + leaf interval { + type uint32 { + range "1..100" { + description + "Specify distribution interval in ms (default 20 ms)"; + } + } + description + "Time interval for each statistical distribution"; + } + } + } + container intervals { + description + "Statistics collection over specified time interval"; + list interval { + key "interval-time"; + description + "Statistics collection over specified time interval"; + leaf interval-time { + type uint32 { + range "1..3600" { + description + "Interval in seconds"; + } + } + description + "Statistics collection over specified time interval"; + } + leaf buckets { + type uint32 { + range "1..100" { + description + "Buckets of enhanced statistics kept"; + } + } + description + "Maximum number of buckets to keep"; + } + } + } + } + container control { + description + "Control packets configuration"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable control packets"; + } + } + container verify-data { + presence "Indicates a verify-data node is configured."; + description + "Check each IPSLA response for corruption"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VPN Routing/Forwarding instance name"; + } + } + description + "Configure IPSLA for a VPN Routing/Forwarding instance"; + } + leaf tos { + type uint32 { + range "0..255" { + description + "Type of service number"; + } + } + description + "Type of service setting in probe packet"; + } + container history { + description + "Configure the history parameters for this operation"; + leaf buckets { + type uint32 { + range "1..60" { + description + "Specify number of buckets (default 15)"; + } + } + description + "Buckets of history kept"; + } + container filter { + description + "Criteria to add operation data to history"; + container all { + presence "Indicates an all node is configured."; + description + "Store history data for all operations"; + } + container failures { + presence "Indicates a failures node is configured."; + description + "Store data for operations that failed"; + } + } + leaf lives { + type uint32 { + range "0..2" { + description + "Specify number of lives to be kept (default 0)"; + } + } + description + "Lives of history kept"; + } + } + } + container jitter { + presence "Indicates a jitter node is configured."; + description + "UDP jitter operation type"; + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this operation"; + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default 60)"; + } + } + description + "Frequency of the probing"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + container request { + description + "Payload size in request probe packet"; + leaf enter-request-datasize-in-byte { + type uint32 { + range "19..20" { + description + "Enter request datasize in byte"; + } + } + description + "Enter request datasize in byte"; + } + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe timeout in ms (default 5000 ms)"; + } + } + description + "Probe timeout interval"; + } + container source { + description + "Address/port of the source device"; + container address { + description + "IPv4/IPv6 address of the source device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the source device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the source device"; + } + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on source device"; + } + } + container destination { + description + "Address/port of the target device"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the target device"; + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on target device"; + } + } + container packet { + description + "Probe packet configuration parameters"; + leaf count { + type uint32 { + range "1..100" { + description + "Packet count (default 10)"; + } + } + description + "Number of packets to be transmitted during a probe"; + } + leaf interval { + type uint32 { + range "1..60000" { + description + "Packet interval (default 20 ms)"; + } + } + description + "Inter packet interval"; + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..25" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + container distribution { + description + "Distribution of statistics configuration"; + leaf count { + type uint32 { + range "1..20" { + description + "Specify number of distribution intervals (default 1)"; + } + } + description + "Count of distribution intervals maintained"; + } + leaf interval { + type uint32 { + range "1..100" { + description + "Specify distribution interval in ms (default 20 ms)"; + } + } + description + "Time interval for each statistical distribution"; + } + } + } + container intervals { + description + "Statistics collection over specified time interval"; + list interval { + key "interval-time"; + description + "Statistics collection over specified time interval"; + leaf interval-time { + type uint32 { + range "1..3600" { + description + "Interval in seconds"; + } + } + description + "Statistics collection over specified time interval"; + } + leaf buckets { + type uint32 { + range "1..100" { + description + "Buckets of enhanced statistics kept"; + } + } + description + "Maximum number of buckets to keep"; + } + } + } + } + container control { + description + "Control packets configuration"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable control packets"; + } + } + container verify-data { + presence "Indicates a verify-data node is configured."; + description + "Check each IPSLA response for corruption"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VPN Routing/Forwarding instance name"; + } + } + description + "Configure IPSLA for a VPN Routing/Forwarding instance"; + } + leaf tos { + type uint32 { + range "0..255" { + description + "Type of service number"; + } + } + description + "Type of service setting in probe packet"; + } + } + } + container mpls { + description + "MPLS operation types"; + container lsp { + description + "MPLS LSP operation types"; + container ping { + presence "Indicates a ping node is configured."; + description + "MPLS Echo operation type"; + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this operation"; + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default 60)"; + } + } + description + "Frequency of the probing"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + container request { + description + "Payload size in request probe packet"; + leaf enter-request-datasize-in-byte { + type uint32 { + range "19..20" { + description + "Enter request datasize in byte"; + } + } + description + "Enter request datasize in byte"; + } + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe timeout in ms (default 5000 ms)"; + } + } + description + "Probe timeout interval"; + } + container source { + description + "Address/port of the source device"; + container address { + description + "IPv4/IPv6 address of the source device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the source device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the source device"; + } + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on source device"; + } + } + container target { + description + "Target for the MPLS LSP operation"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Target specified as an IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Target FEC address with mask"; + } + leaf mask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Target FEC address with mask"; + } + } + container traffic-eng { + description + "Traffic engineering target"; + leaf tunnel { + type uint32 { + range "0..65535" { + description + "Tunnel interface number"; + } + } + description + "TE tunnel interface"; + } + } + container pseudowire { + presence "Indicates a pseudowire node is configured."; + description + "Pseudowire target"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Pseudowire target"; + } + leaf virtual-circuit-id { + type uint32 { + range "1..4294967295" { + description + "Virtual Circuit ID"; + } + } + mandatory true; + description + "Virtual Circuit ID"; + } + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..25" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + container distribution { + description + "Distribution of statistics configuration"; + leaf count { + type uint32 { + range "1..20" { + description + "Specify number of distribution intervals (default 1)"; + } + } + description + "Count of distribution intervals maintained"; + } + leaf interval { + type uint32 { + range "1..100" { + description + "Specify distribution interval in ms (default 20 ms)"; + } + } + description + "Time interval for each statistical distribution"; + } + } + } + container intervals { + description + "Statistics collection over specified time interval"; + list interval { + key "interval-time"; + description + "Statistics collection over specified time interval"; + leaf interval-time { + type uint32 { + range "1..3600" { + description + "Interval in seconds"; + } + } + description + "Statistics collection over specified time interval"; + } + leaf buckets { + type uint32 { + range "1..100" { + description + "Buckets of enhanced statistics kept"; + } + } + description + "Maximum number of buckets to keep"; + } + } + } + } + } + container trace { + presence "Indicates a trace node is configured."; + description + "MPLS Trace operation type"; + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this operation"; + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default 60)"; + } + } + description + "Frequency of the probing"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + container request { + description + "Payload size in request probe packet"; + leaf enter-request-datasize-in-byte { + type uint32 { + range "19..20" { + description + "Enter request datasize in byte"; + } + } + description + "Enter request datasize in byte"; + } + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe timeout in ms (default 5000 ms)"; + } + } + description + "Probe timeout interval"; + } + container source { + description + "Address/port of the source device"; + container address { + description + "IPv4/IPv6 address of the source device"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Enter IPv4 address of the source device"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Enter IPv6 address of the source device"; + } + } + leaf port { + type uint32 { + range "1..65535" { + description + "Specify the port number"; + } + } + description + "Port number on source device"; + } + } + container target { + description + "Target for the MPLS LSP operation"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Target specified as an IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Target FEC address with mask"; + } + leaf mask { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Target FEC address with mask"; + } + } + container traffic-eng { + description + "Traffic engineering target"; + leaf tunnel { + type uint32 { + range "0..65535" { + description + "Tunnel interface number"; + } + } + description + "TE tunnel interface"; + } + } + container pseudowire { + presence "Indicates a pseudowire node is configured."; + description + "Pseudowire target"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Pseudowire target"; + } + leaf virtual-circuit-id { + type uint32 { + range "1..4294967295" { + description + "Virtual Circuit ID"; + } + } + mandatory true; + description + "Virtual Circuit ID"; + } + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..25" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + container distribution { + description + "Distribution of statistics configuration"; + leaf count { + type uint32 { + range "1..20" { + description + "Specify number of distribution intervals (default 1)"; + } + } + description + "Count of distribution intervals maintained"; + } + leaf interval { + type uint32 { + range "1..100" { + description + "Specify distribution interval in ms (default 20 ms)"; + } + } + description + "Time interval for each statistical distribution"; + } + } + } + } + } + } + } + } + } + } + container schedule { + description + "Schedule an operation"; + container operations { + description + "Specify an operation"; + list operation { + key "operation-number"; + description + "Specify an operation"; + leaf operation-number { + type uint32 { + range "1..2048" { + description + "Operation number"; + } + } + description + "Specify an operation"; + } + container life { + description + "Length of the time to execute (default 3600 seconds)"; + container forever { + must "not(../length-of-time)"; + presence "Indicates a forever node is configured."; + description + "Schedule operation to run indefinitely"; + } + leaf length-of-time { + type uint32 { + range "1..2147483647" { + description + "Life in seconds. (default 3600 seconds)"; + } + } + must "not(../forever)"; + description + "Life in seconds. (default 3600 seconds)"; + } + } + container start-time { + description + "Start time of the operation"; + container time-and-date { + presence "Indicates a time node is configured."; + description + "Start time of the operation"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + must "../day-of-month"; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + must "../month and ../day-of-month"; + description + "Year"; + } + } + container pending { + presence "Indicates a pending node is configured."; + description + "Keep operation in the pending state"; + } + container after { + presence "Indicates a after node is configured."; + description + "Schedule operation after specified time"; + container time { + description + "Time in hh:mm:ss format"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + } + } + container now { + presence "Indicates a now node is configured."; + description + "Schedule operation now"; + } + } + container recurring { + presence "Indicates a recurring node is configured."; + description + "probe to be scheduled automatically every day"; + } + leaf ageout { + type uint32 { + range "0..2073600" { + description + "Ageout interval in seconds (default 0, never ageout)"; + } + } + description + "How long to keep this entry after it becomes inactive"; + } + } + } + } + container reaction { + description + "IPSLA reaction configuration"; + container operations { + description + "Reaction configuration for operation"; + list operation { + key "operation-number"; + description + "Reaction configuration for operation"; + leaf operation-number { + type uint32 { + range "1..2048" { + description + "Operation number"; + } + } + description + "Reaction configuration for operation"; + } + container react { + description + "Specify an element to be monitored for reaction"; + container connection-loss { + presence "Indicates a connection-loss node is configured."; + description + "Reaction on connection loss of monitored operation"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + container timeout { + presence "Indicates a timeout node is configured."; + description + "Reaction on timeout of monitored operation"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + container verify-error { + presence "Indicates a verify-error node is configured."; + description + "Reaction on error verification violation"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + container jitter-average { + presence "Indicates a jitter-average node is configured."; + description + "Reaction on round trip jitter value violation"; + container dest-to-source { + presence "Indicates a dest-to-source node is configured."; + description + "Jitter average destination to source(DS)"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + leaf lower-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold lower limit value"; + } + } + must "../upper-limit"; + description + "Threshold lower limit"; + } + leaf upper-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold upper limit value"; + } + } + must "../lower-limit"; + description + " Threshold upper limit"; + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + container source-to-dest { + presence "Indicates a source-to-dest node is configured."; + description + "Jitter average source to destination (SD)"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + leaf lower-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold lower limit value"; + } + } + must "../upper-limit"; + description + "Threshold lower limit"; + } + leaf upper-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold upper limit value"; + } + } + must "../lower-limit"; + description + " Threshold upper limit"; + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + leaf lower-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold lower limit value"; + } + } + must "../upper-limit"; + description + "Threshold lower limit"; + } + leaf upper-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold upper limit value"; + } + } + must "../lower-limit"; + description + " Threshold upper limit"; + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + container packet-loss { + description + "Reaction on packet loss value violation"; + container dest-to-source { + presence "Indicates a dest-to-source node is configured."; + description + "Packet loss destination to source(DS) violation"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + leaf lower-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold lower limit value"; + } + } + must "../upper-limit"; + description + "Threshold lower limit"; + } + leaf upper-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold upper limit value"; + } + } + must "../lower-limit"; + description + " Threshold upper limit"; + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + container source-to-dest { + presence "Indicates a source-to-dest node is configured."; + description + "Packet loss source to destination (SD) violation"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + leaf lower-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold lower limit value"; + } + } + must "../upper-limit"; + description + "Threshold lower limit"; + } + leaf upper-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold upper limit value"; + } + } + must "../lower-limit"; + description + " Threshold upper limit"; + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + } + container rtt { + presence "Indicates a rtt node is configured."; + description + "Reaction on round trip time violation"; + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + leaf average { + type uint32 { + range "1..16" { + description + "Number of probes to average over"; + } + } + description + "Take action on average values violate threshold"; + } + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + container xofy { + presence "Indicates a xofy node is configured."; + description + "Take action upon X violations in Y probe operations"; + leaf x-value { + type uint32 { + range "1..16" { + description + "Number of threshold violations (X value)"; + } + } + mandatory true; + description + "Take action upon X violations in Y probe operations"; + } + leaf y-value { + type uint32 { + range "1..16" { + description + "Number of probes observing the violations (Y value)"; + } + } + mandatory true; + description + "Number of probes observing the violations (Y value)"; + } + } + leaf lower-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold lower limit value"; + } + } + must "../upper-limit"; + description + "Threshold lower limit"; + } + leaf upper-limit { + type uint32 { + range "1..4294967295" { + description + "Threshold upper limit value"; + } + } + must "../lower-limit"; + description + " Threshold upper limit"; + } + } + } + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container trigger { + presence "Indicates a trigger node is configured."; + description + "Generate trigger to active reaction triggered operation(s)"; + } + } + } + } + } + } + container trigger { + description + "IPSLA reaction trigger configuration"; + container operations { + description + "Operation that generates a trigger"; + list operation { + key "operation-number"; + description + "Operation that generates a trigger"; + leaf operation-number { + type uint32 { + range "1..2048" { + description + "Operation that generates a trigger"; + } + } + description + "Operation that generates a trigger"; + } + leaf operation-to-be-triggered { + type uint32 { + range "1..2048" { + description + "Operation that will be triggered"; + } + } + mandatory true; + description + "Operation that will be triggered"; + } + } + } + } + } + leaf low-memory { + type uint32 { + range "0..4294967295" { + description + "Low memory watermark value in KB"; + } + } + description + "Configure low memory water mark (default 20M)"; + } + leaf key-chain { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of key-chain"; + } + } + description + "Use MD5 authentication for IPSLA control message"; + } + container hw-timestamp { + description + "Hardware timestamp configuration"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable hardware timestamp"; + } + } + container responder { + presence "Indicates a responder node is configured."; + description + "IPSLA responder configuration"; + container type { + description + "Operation type"; + container udp { + description + "Udp operation"; + container ipv4 { + description + "IPv4 address configuration"; + list address { + key "address"; + description + "Permanent address on responder"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Permanent address on responder"; + } + list port { + key "port-number"; + description + "Permanent port on responder"; + leaf port-number { + type uint32 { + range "1..65535" { + description + "Enter port number"; + } + } + description + "Permanent port on responder"; + } + } + } + } + } + } + container twamp { + presence "Indicates a twamp node is configured."; + description + "Setup TWAMP responder"; + leaf timeout { + type uint32 { + range "1..604800" { + description + "Inactivity timeout value in seconds (Default 900)"; + } + } + description + "Inactivity timeout period"; + } + } + container twamp-light { + description + "Setup TWAMP-LIGHT responder"; + container test-session { + description + "Create a new test session"; + list session { + key "session-id"; + description + "Test session ID"; + leaf session-id { + type uint32 { + range "1..65535" { + description + "Test session ID"; + } + } + description + "Test session ID"; + } + container local-ip { + description + "Local interface IPv4/IPv6 address"; + container ipv4-addresses { + description + "Enter IPv4 address of the local interface"; + list ipv4-address { + must "remote-ip/ipv4-addresses/ipv4-address or remote-ip/ipv6-addresses/ipv6-address"; + key "address local-port"; + description + "Enter IPv4 address of the local interface"; + leaf address { + type union { + type inet:ipv4-address-no-zone; + type string { + pattern "any ipv4" { + description + "Enter 'any ipv4' string for IPv4 address of the local interface"; + } + } + } + description + "Enter IPv4 address of the local interface"; + } + leaf local-port { + type uint32 { + range "1..65535" { + description + "Enter port number"; + } + } + description + "Local UDP port"; + } + container remote-ip { + description + "Remote (client) interface IPv4/IPv6 address"; + container ipv4-addresses { + description + "Enter IPv4 address of the remote interface"; + list ipv4-address { + key "address remote-port vrf"; + description + "Enter IPv4 address of the remote interface"; + leaf address { + type union { + type inet:ipv4-address-no-zone; + type string { + pattern "any ipv4" { + description + "Enter 'any ipv4' string for IPv4 address of the remote interface"; + } + } + } + description + "Enter IPv4 address of the remote interface"; + } + leaf remote-port { + type union { + type uint32 { + range "1..65535" { + description + "Enter port number"; + } + } + type enumeration { + enum "any" { + value 0; + description + "Match any port id"; + } + } + } + description + "Remote UDP port"; + } + leaf vrf { + type union { + type xr:Cisco-ios-xr-string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + } + description + "VRF name for local-ip"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address of the remote interface"; + list ipv6-address { + key "address remote-port vrf"; + description + "Enter IPv6 address of the remote interface"; + leaf address { + type union { + type inet:ipv6-address-no-zone; + type string { + pattern "any ipv6" { + description + "Enter 'any ipv6' string for IPv6 address of the remote interface"; + } + } + } + description + "Enter IPv6 address of the remote interface"; + } + leaf remote-port { + type union { + type uint32 { + range "1..65535" { + description + "Enter port number"; + } + } + type enumeration { + enum "any" { + value 0; + description + "Match any port id"; + } + } + } + description + "Remote UDP port"; + } + leaf vrf { + type union { + type xr:Cisco-ios-xr-string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + } + description + "VRF name for local-ip"; + } + } + } + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address of the local interface"; + list ipv6-address { + must "remote-ip/ipv4-addresses/ipv4-address or remote-ip/ipv6-addresses/ipv6-address"; + key "address local-port"; + description + "Enter IPv6 address of the local interface"; + leaf address { + type union { + type inet:ipv6-address-no-zone; + type string { + pattern "any ipv6" { + description + "Enter 'any ipv6' string for IPv6 address of the local interface"; + } + } + } + description + "Enter IPv6 address of the local interface"; + } + leaf local-port { + type uint32 { + range "1..65535" { + description + "Enter port number"; + } + } + description + "Local UDP port"; + } + container remote-ip { + description + "Remote (client) interface IPv4/IPv6 address"; + container ipv4-addresses { + description + "Enter IPv4 address of the remote interface"; + list ipv4-address { + key "address remote-port vrf"; + description + "Enter IPv4 address of the remote interface"; + leaf address { + type union { + type inet:ipv4-address-no-zone; + type string { + pattern "any ipv4" { + description + "Enter 'any ipv4' string for IPv4 address of the remote interface"; + } + } + } + description + "Enter IPv4 address of the remote interface"; + } + leaf remote-port { + type union { + type uint32 { + range "1..65535" { + description + "Enter port number"; + } + } + type enumeration { + enum "any" { + value 0; + description + "Match any port id"; + } + } + } + description + "Remote UDP port"; + } + leaf vrf { + type union { + type xr:Cisco-ios-xr-string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + } + description + "VRF name for local-ip"; + } + } + } + container ipv6-addresses { + description + "Enter IPv6 address of the remote interface"; + list ipv6-address { + key "address remote-port vrf"; + description + "Enter IPv6 address of the remote interface"; + leaf address { + type union { + type inet:ipv6-address-no-zone; + type string { + pattern "any ipv6" { + description + "Enter 'any ipv6' string for IPv6 address of the remote interface"; + } + } + } + description + "Enter IPv6 address of the remote interface"; + } + leaf remote-port { + type union { + type uint32 { + range "1..65535" { + description + "Enter port number"; + } + } + type enumeration { + enum "any" { + value 0; + description + "Match any port id"; + } + } + } + description + "Remote UDP port"; + } + leaf vrf { + type union { + type xr:Cisco-ios-xr-string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + } + description + "VRF name for local-ip"; + } + } + } + } + } + } + } + container authentication { + presence "Indicates a authentication node is configured."; + description + "Authenticated test session"; + } + container encryption { + presence "Indicates a encryption node is configured."; + description + "Encrypted test session"; + } + leaf timeout { + type uint32 { + range "60..86400" { + description + "Enter timeout in seconds"; + } + } + description + "Duration for which session remains active (in seconds). Default is forever."; + } + } + } + } + } + container mpls { + description + "IPSLA MPLS configuration"; + container lsp-monitor { + description + "MPLS LSP Monitor(MPLSLM) configuration"; + container monitors { + description + "MPLSLM instance to be configured"; + list monitor { + key "monitor-id"; + description + "MPLSLM instance to be configured"; + leaf monitor-id { + type uint32 { + range "1..2048" { + description + "Monitor identifier"; + } + } + description + "MPLSLM instance to be configured"; + } + container type { + description + "Type of operation"; + container mpls { + description + "MPLS operation types"; + container lsp { + description + "MPLS LSP operation types"; + container ping { + presence "Indicates a ping node is configured."; + description + "Perform MPLS LSP Ping operation"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF instance name"; + } + } + description + "Specify a VRF instance to be monitored"; + } + leaf access-list { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Access list name"; + } + } + description + "Apply access list to filter PE addresses"; + } + container scan { + description + "Scanning parameters configuration"; + leaf interval { + type uint32 { + range "1..70560" { + description + "Scan interval in minutes (default 240 min)"; + } + } + description + "Time interval for automatic discovery"; + } + leaf delete-factor { + type uint32 { + range "0..2147483647" { + description + "Scan delete factor value (default 1)"; + } + } + description + "Number of times for automatic deletion"; + } + } + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this MPLSLM"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + leaf request { + type uint32 { + range "100..17986" { + description + "Enter request datasize in byte"; + } + } + description + "Payload size in request probe packet"; + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe/Control timeout in milliseconds (default 5000 ms)"; + } + } + description + "Probe/Control timeout interval"; + } + container lsp { + description + "LSP parameters for the operation"; + container selector { + description + "Attributes used for path selection during LSP load balancing"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address used as destination address in echo request"; + } + } + } + container force { + description + "Forced option for the MPLS LSP operation"; + container explicit-null { + presence "Indicates a explicit-null node is configured."; + description + "Add Explicit Null label to the stack"; + } + } + container reply { + description + "Echo reply options for the MPLS LSP operation"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "DSCP bits value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + description + "DSCP bits in the reply IP header"; + } + container mode { + description + "Configures reply mode parameters"; + container router-alert { + presence "Indicates a router-alert node is configured."; + description + "Enables use of router alert in echo reply packets"; + } + } + } + leaf ttl { + type uint32 { + range "1..255" { + description + "Time to Live value"; + } + } + description + "Time to live"; + } + leaf exp { + type uint32 { + range "0..7" { + description + "EXP bits in MPLS LSP echo request header"; + } + } + description + "EXP in MPLS LSP echo request header"; + } + container output { + description + "Output options"; + leaf interface { + type xr:Interface-name; + description + "Output interface to be used for measurement"; + } + leaf nexthop { + type inet:ipv4-address-no-zone; + description + "Output nexthop to be used for measurement"; + } + } + container path { + description + "Path discover configuration"; + container discover { + presence "Indicates a discover node is configured."; + description + "Enable MPLS LSP path discover(LPD)"; + container session { + description + "Session parameters configuration"; + leaf limit { + type uint32 { + range "1..15" { + description + "Number of requests"; + } + } + description + "Number of concurrent active path discovery requests at one time"; + } + leaf timeout { + type uint32 { + range "1..900" { + description + "Timeout value in seconds"; + } + } + description + "Timeout value for path discovery request"; + } + } + container scan { + description + "Scan parameters configuration"; + leaf period { + type uint32 { + range "0..7200" { + description + "Time period value in minutes"; + } + } + description + "Time period for finishing path discovery"; + } + } + container path { + description + "Path parameters configuration"; + leaf retry { + type uint32 { + range "1..16" { + description + "Retry count"; + } + } + description + "Number of attempts before declaring the path as down"; + } + container secondary { + description + "Secondary frequency configuration"; + container frequency { + description + "Frequency to be used if path failure condition is detected"; + container both { + must "not(../timeout or ../connection-loss)"; + presence "Indicates a both node is configured."; + description + "Enable secondary frequency for timeout and connection loss"; + leaf frequency-value-in-seconds { + type uint32 { + range "1..604800" { + description + "Frequency value in seconds"; + } + } + mandatory true; + description + "Frequency value in seconds"; + } + } + container connection-loss { + must "not(../both or ../timeout)"; + presence "Indicates a connection-loss node is configured."; + description + "Enable secondary frequency for connection loss"; + leaf frequency-value-in-seconds { + type uint32 { + range "1..604800" { + description + "Frequency value in seconds"; + } + } + mandatory true; + description + "Frequency value in seconds"; + } + } + container timeout { + must "not(../both or ../connection-loss)"; + presence "Indicates a timeout node is configured."; + description + "Enable secondary frequency for timeout"; + leaf frequency-value-in-seconds { + type uint32 { + range "1..604800" { + description + "Frequency value in seconds"; + } + } + mandatory true; + description + "Frequency value in seconds"; + } + } + } + } + } + container echo { + description + "Echo parameters configuration"; + leaf interval { + type uint32 { + range "0..3600000" { + description + "Interval time in milliseconds"; + } + } + description + "Send interval between echo requests during path discovery"; + } + leaf timeout { + type uint32 { + range "1..3600" { + description + "Timeout value in seconds"; + } + } + description + "Timeout value for echo requests during path discovery"; + } + leaf retry { + type uint32 { + range "0..10" { + description + "Retry count"; + } + } + description + "Number of timeout retry attempts during path discovery"; + } + container multipath { + description + "Downstream map multipath settings"; + leaf bitmap-size { + type uint32 { + range "1..256" { + description + "Bitmap size"; + } + } + description + "Multipath bit size"; + } + } + container maximum { + description + "Maximum value settings"; + container lsp { + description + "LSP parameters for the operation"; + container selector { + description + "Attributes used for path selection during LSP load balancing"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "Maximum IPv4 address used as destination in echo request"; + } + } + } + } + } + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..2" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + } + } + } + container trace { + presence "Indicates a trace node is configured."; + description + "Perform MPLS LSP Trace operation"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF instance name"; + } + } + description + "Specify a VRF instance to be monitored"; + } + leaf access-list { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Access list name"; + } + } + description + "Apply access list to filter PE addresses"; + } + container scan { + description + "Scanning parameters configuration"; + leaf interval { + type uint32 { + range "1..70560" { + description + "Scan interval in minutes (default 240 min)"; + } + } + description + "Time interval for automatic discovery"; + } + leaf delete-factor { + type uint32 { + range "0..2147483647" { + description + "Scan delete factor value (default 1)"; + } + } + description + "Number of times for automatic deletion"; + } + } + leaf tag { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Tag string"; + } + } + description + "Add a tag for this MPLSLM"; + } + container datasize { + description + "Protocol data size in payload of probe packets"; + leaf request { + type uint32 { + range "100..17986" { + description + "Enter request datasize in byte"; + } + } + description + "Payload size in request probe packet"; + } + } + leaf timeout { + type uint32 { + range "1..604800000" { + description + "Probe/Control timeout in milliseconds (default 5000 ms)"; + } + } + description + "Probe/Control timeout interval"; + } + container lsp { + description + "LSP parameters for the operation"; + container selector { + description + "Attributes used for path selection during LSP load balancing"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address used as destination address in echo request"; + } + } + } + container force { + description + "Forced option for the MPLS LSP operation"; + container explicit-null { + presence "Indicates a explicit-null node is configured."; + description + "Add Explicit Null label to the stack"; + } + } + container reply { + description + "Echo reply options for the MPLS LSP operation"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "DSCP bits value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + description + "DSCP bits in the reply IP header"; + } + container mode { + description + "Configures reply mode parameters"; + container router-alert { + presence "Indicates a router-alert node is configured."; + description + "Enables use of router alert in echo reply packets"; + } + } + } + leaf ttl { + type uint32 { + range "1..255" { + description + "Time to Live value"; + } + } + description + "Time to live"; + } + leaf exp { + type uint32 { + range "0..7" { + description + "EXP bits in MPLS LSP echo request header"; + } + } + description + "EXP in MPLS LSP echo request header"; + } + container output { + description + "Output options"; + leaf interface { + type xr:Interface-name; + description + "Output interface to be used for measurement"; + } + leaf nexthop { + type inet:ipv4-address-no-zone; + description + "Output nexthop to be used for measurement"; + } + } + container statistics { + description + "Statistics collection parameters for this operation"; + container hourly { + description + "Statistics collection aggregated over an hour"; + leaf buckets { + type uint32 { + range "0..2" { + description + "Specify number of hours (default 2)"; + } + } + description + "Number of Hours for which statistics are kept"; + } + } + } + } + } + } + } + } + } + container schedule { + description + "MPLSLM schedule configuration"; + container monitors { + description + "MPLSLM instance to be configured"; + list monitor { + key "monitor-id"; + description + "MPLSLM instance to be configured"; + leaf monitor-id { + type uint32 { + range "1..2048" { + description + "Monitor identifier"; + } + } + description + "MPLSLM instance to be configured"; + } + container schedule { + description + "Schedule parameters configuration"; + leaf period { + type uint32 { + range "1..604800" { + description + "Period in seconds"; + } + } + description + "Group schedule period range"; + } + } + leaf frequency { + type uint32 { + range "1..604800" { + description + "Probe interval in seconds (default same as schedule period)"; + } + } + description + "Group schedule frequency of the probing"; + } + container start-time { + description + "Start time of the operation"; + container time-and-date { + presence "Indicates a time node is configured."; + description + "Start time of the operation"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + must "../day-of-month"; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + must "../month and ../day-of-month"; + description + "Year"; + } + } + container pending { + presence "Indicates a pending node is configured."; + description + "Keep operation in the pending state"; + } + container after { + presence "Indicates a after node is configured."; + description + "Schedule operation after specified time"; + container time { + description + "Time in hh:mm:ss format"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time in hh:mm:ss format"; + } + } + mandatory true; + description + "Time in hh:mm:ss format"; + } + } + } + container now { + presence "Indicates a now node is configured."; + description + "Schedule operation now"; + } + } + } + } + } + container reaction { + description + "MPLSLM reaction configuration"; + container monitors { + description + "MPLSLM instance to be configured"; + list monitor { + key "monitor-id"; + description + "MPLSLM instance to be configured"; + leaf monitor-id { + type uint32 { + range "1..2048" { + description + "Monitor identifier"; + } + } + description + "MPLSLM instance to be configured"; + } + container react { + description + "Specify an element to be monitored for reaction"; + container connection-loss { + presence "Indicates a connection-loss node is configured."; + description + "Reaction on connection loss of monitored MPLSLM"; + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + } + } + } + } + container timeout { + presence "Indicates a timeout node is configured."; + description + "Reaction on timeout of monitored MPLSLM"; + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + } + } + } + } + container lpd { + description + "Reaction on LPD violation"; + container tree-trace { + presence "Indicates a tree-trace node is configured."; + description + "Tree trace violation"; + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + } + } + } + } + container lpd-group { + presence "Indicates a lpd-group node is configured."; + description + "LPD group violation"; + container action { + description + "Type of action to be taken on threshold violation(s)"; + container logging { + presence "Indicates a logging node is configured."; + description + "Generate a syslog alarm on threshold violation"; + } + container threshold { + description + "Configure threshold parameters on monitored element"; + container type { + description + "Threshold type"; + container immediate { + must "not(../consecutive)"; + presence "Indicates a immediate node is configured."; + description + "Take action immediately upon threshold violation"; + } + leaf consecutive { + type uint32 { + range "1..16" { + description + "Number of consecutive violations"; + } + } + must "not(../immediate)"; + description + "Take action after a number of consecutive violations"; + } + } + } + } + } + } + } + } + } + } + } + container discovery { + description + "PE discovery configuration"; + container vpn { + description + "Layer 3 VPN PE discovery configuration"; + leaf interval { + type uint32 { + range "30..70560" { + description + "Refresh interval in seconds (default 300 seconds)"; + } + } + description + "Specify a discovery refresh interval"; + } + } + } + } + container server { + description + "IPSLA IPPM server configuration"; + container twamp { + presence "Indicates a twamp node is configured."; + description + "IPSLA IPPM TWAMP server configuration"; + leaf port { + type uint32 { + range "1..65535" { + description + "Enter TWAMP server port number (Default 862)"; + } + } + description + "IPPM server port"; + } + container timer { + description + "IPPM server timer configurations"; + leaf inactivity { + type uint32 { + range "1..6000" { + description + "Enter inactivity timer value in seconds (Default 900)"; + } + } + description + "IPPM server inactivity timer"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-access-list-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-access-list-cfg.yang new file mode 100644 index 000000000..756f3a2d0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-access-list-cfg.yang @@ -0,0 +1,1226 @@ +module Cisco-IOS-XR-um-ipv4-access-list-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv4-access-list-cfg"; + prefix um-ipv4-acl-cfg; + + import cisco-semver { + prefix semver; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-access-list-datatypes { + prefix um-acl-types; + } + import Cisco-IOS-XR-types { + prefix xr2; + } + + organization + "Cisco Systems, Inc."; + contact + " + Cisco Systems, Inc. + Customer Service + + Postal: 170 W Tasman Drive + San Jose, CA 95134 + + Tel: +1 1800 553-NETS + + E-mail: cs-yang@cisco.com + "; + description + " + This module contains a collection of IOS-XR YANG model derived from CLI. + + Copyright (c) 2013-2022 by Cisco Systems, Inc. + All rights reserved. + "; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-07-08 + Added new dscp bitmask field + 2021-09-20 + Added container icmp-on for ace + 2021-07-28 + Added new police units"; + semver:module-version "3.1.0"; + } + revision 2021-06-03 { + description + "Added container icmp-off + 2021-03-17 + Adding new protocols - vrrp, rsvp + 2021-02-24 + Added container police"; + semver:module-version "3.0.0"; + } + revision 2020-12-03 { + description + "Limit length of remark string + 2020-10-21 + Added udf support"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-01 { + description + "Initial version"; + } + + feature ipv4_acl_object_groups_supported { + description + "Port object group"; + } + + feature ipv4_acl_support_counter { + description + "Counter for access-list entry"; + } + + feature ipv4_acl_protocol_range_implemented { + description + "Range of protocol numbers"; + } + + feature ipv4_acl_abf_implemented { + description + "Forward to specified nexthop on match against access-list entry"; + } + + feature ipv4_acl_abf_track_implemented { + description + "Match a specific TRACK Name"; + } + + feature ipv4_acl_rollback_permit_supported { + description + "Rollback of access-list"; + } + + feature IP_ACL_TCP_URG_FLAG_IMPLEMENTED { + description + "Match on URG bit"; + } + + feature IP_ACL_TCP_FLEXFLAGS_IMPLEMENTED { + description + "Match all the options specified for TCP flags"; + } + + feature ipv4_acl_pktlen_implemented { + description + "Check packet length"; + } + + feature ipv4_acl_fragment_offset_implemented { + description + "Match fragment-offset"; + } + + feature ipv4_acl_is_frag_flags_supported { + description + "Match fragment type for a packet"; + } + + feature ipv4_acl_is_udf_supported { + description + "Set User Defined Fields"; + } + + feature ipv4_acl_capture_implemented { + description + "Capture matched packet"; + } + + feature ipv4_acl_is_set_action_supported { + description + "Set action on access-list entry"; + } + + feature ipv4_acl_is_set_qos_group_supported { + description + "Set QoS group"; + } + + feature ipv4_acl_is_set_ttl_supported { + description + "Set ttl value"; + } + + grouping ace-common { + description + "Grouping for ace-common"; + container source { + must "address or any or host or net-group"; + description + "ace-common source"; + uses source-address; + } + container destination { + must "address or any or host or net-group"; + description + "ace-common destination"; + uses destination-address; + } + uses tcp-flags { + when "protocol='tcp'"; + } + uses icmp { + when "protocol='icmp'"; + } + uses igmp { + when "protocol='igmp'"; + } + uses dscp; + uses packet-length; + uses ttl; + uses fragment-offset; + uses fragments; + uses fragment-type; + uses udf; + uses police; + } + + grouping source-address { + description + "Grouping for source-address"; + leaf address { + type inet:ipv4-address-no-zone; + must "not(../any or ../host or ../net-group) and (../wildcard-mask or ../prefix-length)"; + description + "Source IP address"; + } + leaf wildcard-mask { + type inet:ipv4-address-no-zone; + must "not(../prefix-length)"; + description + "Source IP address wildcard mask. Either wildcard-mask or prefix-length can be used along with address."; + } + leaf prefix-length { + type xr2:Ipv4-prefix-length; + must "not(../wildcard-mask)"; + description + "Source IP address prefix length. Either wildcard-mask or prefix-length can be used along with address."; + } + container any { + must "not(../address or ../host or ../net-group)"; + presence "Any host"; + description + "Any source host"; + } + leaf host { + type inet:ipv4-address; + must "not(../address or ../any or ../net-group)"; + description + "A single source host"; + } + leaf net-group { + if-feature "ipv4_acl_object_groups_supported"; + type string { + length "1..64" { + description + "IPv4 network object group name"; + } + } + must "not(../address or ../any or ../host)"; + description + "IPv4 source network object group"; + } + container port { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + description + "Match based on a port number"; + leaf eq { + type um-acl-types:ipv4-port-number; + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets on a given port number"; + } + leaf gt { + type um-acl-types:ipv4-port-number; + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater port number"; + } + leaf lt { + type um-acl-types:ipv4-port-number; + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower port number"; + } + leaf neq { + type um-acl-types:ipv4-port-number; + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given port"; + } + container range { + description + "Match only packets in the range of port numbers"; + leaf start-value { + type um-acl-types:ipv4-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "Port number"; + } + leaf end-value { + type um-acl-types:ipv4-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "Port number"; + } + } + } + leaf port-group { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + if-feature "ipv4_acl_object_groups_supported"; + type string { + length "1..64"; + } + description + "source port object group"; + } + } + + grouping destination-address { + description + "Grouping for destination-address"; + leaf address { + type inet:ipv4-address-no-zone; + must "not(../any or ../host or ../net-group) and (../wildcard-mask or ../prefix-length)"; + description + "Destination IP address"; + } + leaf wildcard-mask { + type inet:ipv4-address-no-zone; + must "not(../prefix-length)"; + description + "Destination IP address wildcard mask. Either wildcard-mask or prefix-length can be used along with address."; + } + leaf prefix-length { + type xr2:Ipv4-prefix-length; + must "not(../wildcard-mask)"; + description + "Destination IP address prefix length. Either wildcard-mask or prefix-length can be used along with address."; + } + container any { + must "not(../address or ../host or ../net-group)"; + presence "Any host"; + description + "Any destination host"; + } + leaf host { + type inet:ipv4-address; + must "not(../address or ../any or ../net-group)"; + description + "A single destination host"; + } + leaf net-group { + if-feature "ipv4_acl_object_groups_supported"; + type string { + length "1..64" { + description + "IPv4 network object group name"; + } + } + must "not(../address or ../any or ../host)"; + description + "IPv4 destination network object group"; + } + container port { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + description + "Match based on a port number"; + leaf eq { + type um-acl-types:ipv4-port-number; + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets on a given port number"; + } + leaf gt { + type um-acl-types:ipv4-port-number; + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater port number"; + } + leaf lt { + type um-acl-types:ipv4-port-number; + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower port number"; + } + leaf neq { + type um-acl-types:ipv4-port-number; + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given port"; + } + container range { + description + "Match only packets in the range of port numbers"; + leaf start-value { + type um-acl-types:ipv4-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "Port number"; + } + leaf end-value { + type um-acl-types:ipv4-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "Port number"; + } + } + } + leaf port-group { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + if-feature "ipv4_acl_object_groups_supported"; + type string { + length "1..64"; + } + description + "destination port object group"; + } + } + + grouping tcp-flags { + description + "Grouping for tcp-flags"; + container tcp-flags { + description + "TCP flags"; + container match-all { + if-feature "IP_ACL_TCP_FLEXFLAGS_IMPLEMENTED"; + must "not(../match-any)"; + presence "indicates match-all is configured"; + description + "Match all the options specified for TCP flags"; + leaf tcp-bits { + type string { + pattern "((\\+|\\-)(fin|syn|rst|psh|ack|urg)[ ]{0,1})+" { + description + "TCP flags with + or -"; + } + } + description + "TCP bits to match with set(+) or not set(-) indication"; + } + } + container match-any { + if-feature "IP_ACL_TCP_FLEXFLAGS_IMPLEMENTED"; + must "not(../match-all)"; + presence "indicates match-any is configured"; + description + "Match atleast one of the options specified for TCP flags"; + leaf tcp-bits { + type string { + pattern "((\\+|\\-)(fin|syn|rst|psh|ack|urg)[ ]{0,1})+" { + description + "TCP flags with + or -"; + } + } + description + "TCP bits to match with set(+) or not set(-) indication"; + } + } + leaf tcp-bits { + type um-acl-types:tcp-bits-type; + must "not(../match-all) and not(../match-any)"; + description + "TCP bits to match"; + } + } + } + + grouping icmp { + description + "Grouping for icmp"; + container icmp { + description + "Match on ICMP message"; + leaf message-type-name { + type um-acl-types:ipv4-icmp-message-type; + must "not(../message-type or ../message-code)"; + description + "ICMP message type"; + } + leaf message-type { + type uint8 { + range "0..255"; + } + must "not(../message-type-name)"; + description + "ICMP message type"; + } + leaf message-code { + type uint8 { + range "0..255"; + } + must "not(../message-type-name)"; + description + "ICMP message code"; + } + } + } + + grouping igmp { + description + "Grouping for igmp"; + leaf igmp-type { + type union { + type uint8 { + range "0..255" { + description + "IGMP message type"; + } + } + type enumeration { + enum "host-query" { + description + "Host query"; + } + enum "host-report" { + description + "Host report"; + } + enum "dvmrp" { + description + "Distance Vector Multicast Routing Protocol"; + } + enum "pim" { + description + "Portocol Independent Multicast"; + } + enum "trace" { + description + "Multicast trace"; + } + enum "v2-report" { + description + "Version 2 report"; + } + enum "v2-leave" { + description + "Version 2 leave"; + } + enum "mtrace-response" { + description + "mtrace response"; + } + enum "mtrace" { + description + "mtrace"; + } + enum "v3-report" { + description + "Version 3 report"; + } + } + } + description + "Match on IGMP message"; + } + } + + grouping dscp { + description + "Grouping for dscp"; + container dscp { + description + "Match packets with given DSCP value(s)"; + leaf dscp-value { + type um-acl-types:dscp-value; + must "not(../eq or ../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match packets with given DSCP value(s)"; + } + leaf dscp-bitmask { + type um-acl-types:dscp-bitmask-value; + must "../dscp-value and not(../eq or ../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match packets with given DSCP bitmask"; + } + leaf eq { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets on a given DSCP value"; + } + leaf gt { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater DSCP value"; + } + leaf lt { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower DSCP value"; + } + leaf neq { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given DSCP value"; + } + container range { + description + "Match only packets in the range of DSCP values"; + leaf start-value { + type um-acl-types:dscp-value; + must "not(../../dscp-value or ../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "DSCP value"; + } + leaf end-value { + type um-acl-types:dscp-value; + must "not(../../dscp-value or ../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "DSCP value"; + } + } + } + leaf precedence { + type um-acl-types:precedence-value; + description + "Match packets with given precedence"; + } + } + + grouping packet-length { + description + "Grouping for packet-length"; + container packet-length { + if-feature "ipv4_acl_pktlen_implemented"; + description + "Check packet length"; + leaf eq { + type uint16 { + range "0..65535"; + } + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a given value"; + } + leaf gt { + type uint16 { + range "0..65535"; + } + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater value"; + } + leaf lt { + type uint16 { + range "0..65535"; + } + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower value"; + } + leaf neq { + type uint16 { + range "0..65535"; + } + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given value"; + } + container range { + description + "Match only packets in the range of value"; + leaf start-value { + type uint16 { + range "0..65535"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "Packet length start"; + } + leaf end-value { + type uint16 { + range "0..65535"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "Packet length end"; + } + } + } + } + + grouping ttl { + description + "Grouping for ttl"; + container ttl { + description + "match against ttl"; + leaf eq { + type uint8 { + range "0..255"; + } + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a given value"; + } + leaf gt { + type uint8 { + range "0..255"; + } + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater value"; + } + leaf lt { + type uint8 { + range "0..255"; + } + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower value"; + } + leaf neq { + type uint8 { + range "0..255"; + } + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given value"; + } + container range { + description + "Match only packets in the range of value"; + leaf start-value { + type uint8 { + range "0..255"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "ttl range lower value"; + } + leaf end-value { + type uint8 { + range "0..255"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "ttl range higher value"; + } + } + } + } + + grouping fragment-offset { + description + "Grouping for fragment-offset"; + container fragment-offset { + if-feature "ipv4_acl_fragment_offset_implemented"; + description + "match fragment-offset"; + leaf eq { + type uint16 { + range "0..8191"; + } + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a given value"; + } + leaf gt { + type uint16 { + range "0..8191"; + } + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater value"; + } + leaf lt { + type uint16 { + range "0..8191"; + } + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower value"; + } + leaf neq { + type uint16 { + range "0..8191"; + } + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given value"; + } + container range { + description + "Match only packets in the range of value"; + leaf start-value { + type uint16 { + range "0..8191"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "fragment-offset value"; + } + leaf end-value { + type uint16 { + range "0..8191"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "fragment-offset value"; + } + } + } + } + + grouping fragments { + description + "Grouping for fragments"; + container fragments { + must "not(../source/port/eq or ../source/port/gt or ../source/port/lt or ../source/port/neq or ../source/port/range/start-value) and not(../destination/port/eq or ../destination/port/gt or ../destination/port/lt or ../destination/port/neq or ../destination/port/range/start-value) and not(../icmp/message-type-name) and not(../icmp/message-type) and not(../icmp/message-code) and not(../igmp-type)"; + presence "Check non-initial fragments"; + description + "Check non-initial fragments"; + } + } + + grouping fragment-type { + description + "Grouping for fragment-type"; + leaf fragment-type { + if-feature "ipv4_acl_is_frag_flags_supported"; + type enumeration { + enum "dont-fragment" { + value 0; + description + "Match don't fragment flag"; + } + enum "first-fragment" { + value 1; + description + "Match first fragment flag"; + } + enum "is-fragment" { + value 2; + description + "Match is-fragment flag"; + } + enum "last-fragment" { + value 3; + description + "Match last fragment flag"; + } + enum "dont-fragment is-fragment" { + value 4; + description + "Match don't fragment flag and is fragment flag"; + } + enum "dont-fragment first-fragment" { + value 5; + description + "Match don't fragment flag and first fragment flag"; + } + enum "dont-fragment last-fragment" { + value 6; + description + "Match don't fragment flag and last fragment flag"; + } + } + description + "Fragment type for a packet"; + } + } + + grouping udf { + description + "Grouping for udf"; + container udf-entries { + description + "User Defined Fields list"; + list udf { + if-feature "ipv4_acl_is_udf_supported"; + key "udf-name"; + max-elements "8"; + description + "Set User Defined Fields on this entry"; + leaf udf-name { + type string { + length "1..16"; + } + description + "UDF name"; + } + leaf udf-value { + type xr2:Hex-integer; + description + "UDF value"; + } + leaf udf-mask { + type xr2:Hex-integer; + description + "UDF mask"; + } + } + } + } + + grouping police { + description + "Grouping for police"; + container police { + description + "Set Police value and unit on this entry"; + leaf value { + type uint32 { + range "0..4294967295"; + } + must "../unit"; + description + "Police value"; + } + leaf unit { + type string { + pattern "pps|bps|kbps|mbps|gbps"; + } + must "../value"; + description + "Unit for police value. Currently only pps (packets per second) + is supported"; + } + leaf peak-rate { + type uint32 { + range "0..4294967295"; + } + must "../value and ../peak-unit"; + description + "Police peak-rate value on this entry"; + } + leaf peak-unit { + type string { + pattern "pps|bps|kbps|mbps|gbps"; + } + must "../peak-rate"; + description + "Unit for peak-rate value. Currently only pps (packets per second) + is supported"; + } + leaf priority { + type enumeration { + enum "critical" { + value 0; + description + "punt priority critical"; + } + enum "high" { + value 1; + description + "punt priority high"; + } + enum "low" { + value 2; + description + "punt priority low"; + } + enum "medium" { + value 3; + description + "punt priority medium"; + } + } + must "../value"; + description + "Set Priority option on this entry"; + } + } + } + + grouping match-option-common { + description + "Grouping for match-option-common"; + container capture { + if-feature "ipv4_acl_capture_implemented"; + presence "Capture matched packet"; + description + "Capture matched packet"; + } + leaf counter { + if-feature "ipv4_acl_support_counter"; + type string { + length "1..64" { + description + "Name of counter to aggregate hardware statistics"; + } + } + description + "counter for this ACE"; + } + container log { + presence "Log matches against this entry"; + description + "Log matches against this entry"; + } + container log-input { + presence "Log matches against this entry, including input interface"; + description + "Log matches against this entry, including input interface"; + } + container set { + if-feature "ipv4_acl_is_set_action_supported"; + description + "Set action on this entry"; + leaf qos-group { + if-feature "ipv4_acl_is_set_qos_group_supported"; + type uint16 { + range "0..512"; + } + description + "qos-group number"; + } + leaf ttl { + if-feature "ipv4_acl_is_set_ttl_supported"; + type uint8 { + range "0..255"; + } + description + "Set ttl value"; + } + } + } + + grouping protocol-common { + description + "Grouping for protocol-common"; + leaf protocol { + type um-acl-types:ipv4-protocol; + must "not(../eq or ../range/start-protocol or ../range/end-protocol)"; + description + "An IPv4 Protocol"; + } + leaf eq { + type um-acl-types:ipv4-protocol; + must "not(../protocol or ../range/start-protocol or ../range/end-protocol)"; + description + "Match only packets with exact protocol numbers"; + } + container range { + if-feature "ipv4_acl_protocol_range_implemented"; + description + "Match only packets in the range of protocol numbers"; + leaf start-protocol { + type um-acl-types:ipv4-protocol; + must "not(../../protocol or ../../eq) and (../end-protocol)"; + description + "An IPv4 Protocol"; + } + leaf end-protocol { + type um-acl-types:ipv4-protocol; + must "not(../../protocol or ../../eq) and (../start-protocol)"; + description + "An IPv4 Protocol"; + } + } + } + + grouping nexthops { + description + "Grouping for nexthops"; + container default { + presence "Use specified default nexthop on match against this entry"; + description + "Use specified default nexthop on match against this entry"; + } + container nexthop1 { + if-feature "ipv4_acl_abf_implemented"; + presence "Forward to specified nexthop on match against this entry"; + description + "Forward to specified nexthop on match against this entry"; + leaf ipv4 { + type inet:ipv4-address; + description + "nexthop1 ipv4 address"; + } + leaf track { + if-feature "ipv4_acl_abf_track_implemented"; + type string { + length "1..32"; + } + description + "specific TRACK Name for this nexthop"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specific VRF Name for this nexthop"; + } + } + container nexthop2 { + must "(../nexthop1/vrf and ../nexthop1/ipv4) or ../nexthop1/vrf or ../nexthop1/ipv4"; + presence "Forward to specified nexthop on match against this entry"; + description + "Another nexthop"; + leaf ipv4 { + type inet:ipv4-address; + description + "nexthop2 ipv4 address"; + } + leaf track { + if-feature "ipv4_acl_abf_track_implemented"; + type string { + length "1..32"; + } + description + "specific TRACK Name for this nexthop"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specific VRF Name for this nexthop"; + } + } + container nexthop3 { + must "(../nexthop2/vrf and ../nexthop2/ipv4) or ../nexthop2/vrf or ../nexthop2/ipv4"; + presence "Forward to specified nexthop on match against this entry"; + description + "Another nexthop"; + leaf ipv4 { + type inet:ipv4-address; + description + "nexthop3 ipv4 address"; + } + leaf track { + if-feature "ipv4_acl_abf_track_implemented"; + type string { + length "1..32"; + } + description + "specific TRACK Name for this nexthop"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specific VRF Name for this nexthop"; + } + } + } + + container ipv4 { + description + "Configure ipv4 access-list"; + container access-list-options { + description + "Control access lists options"; + container log-update { + description + "Control access lists log updates"; + leaf threshold { + type uint32 { + range "1..2147483647" { + description + "Log update threshold (number of hits)"; + } + } + description + "Set access-list logging threshold"; + } + leaf rate { + type uint16 { + range "1..1000" { + description + "rate (num. logs per second)"; + } + } + description + "Set access-list logging rate (num. logs per second)"; + } + } + container icmp-off { + presence "Indicates a icmp-off node is configured."; + description + "Do not generate the ICMP message"; + } + } + container access-lists { + description + "Access-lists"; + list access-list { + key "access-list-name"; + description + "Access-list configuration"; + leaf access-list-name { + type string { + length "1..64"; + } + description + "Access list name - maximum 64 characters"; + } + container sequences { + description + "Access list entries"; + list sequence { + must "deny or permit or remark"; + key "sequence-number"; + description + "access list entry"; + leaf sequence-number { + type uint32 { + range "1..2147483643"; + } + description + "Sequence number for this entry"; + } + container deny { + must "(protocol or eq or range) and (source and destination) and (not(log and log-input))"; + presence "Grant type Deny"; + description + "access list entry deny"; + uses protocol-common; + uses ace-common; + uses nexthops; + uses match-option-common; + container icmp-off { + presence "Do not generate the ICMP message"; + description + "Do not generate the ICMP message"; + } + container icmp-on { + presence "Generate the ICMP message"; + description + "Generate the ICMP message"; + } + } + container permit { + must "(protocol or eq or range) and (source and destination) and (not(log and log-input))"; + presence "Grant type Permit"; + description + "access list entry permit"; + uses protocol-common; + uses ace-common; + uses nexthops; + uses match-option-common; + } + leaf remark { + type string { + length "0..255"; + } + description + "Comment for access list"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-cfg.yang new file mode 100644 index 000000000..e09ef6297 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-cfg.yang @@ -0,0 +1,138 @@ +module Cisco-IOS-XR-um-ipv4-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv4-cfg"; + prefix um-ipv4-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 ipv4 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-02-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ipv4 { + description + "Global IPv4 configuration commands"; + container source-route { + presence "Indicates a source-route node is configured."; + description + "Process packets with source routing header options"; + } + container ipc { + description + "IPv4 Inter Process Communication(IPC) related config"; + container ratelimit { + description + "IPC ratelimit in the IPv4 software datapath"; + leaf arm { + type uint32 { + range "5..100" { + description + "Number of IPCs per second (default is 10)"; + } + } + description + "IPC rate-limiting to the ARM server"; + } + leaf netio { + type uint32 { + range "10..300" { + description + "Number of IPCs per second (default is 100)"; + } + } + description + "IPC rate-limiting for netio to send icmp error locally"; + } + container rib { + description + "IPC rate-limiting to the RIB server"; + leaf icmp { + type uint32 { + range "5..200" { + description + "Number of IPCs per second (default is 50)"; + } + } + description + "IPC ratelimit to the RIB server for ICMP packets"; + } + leaf io { + type uint32 { + range "5..100" { + description + "Number of IPCs per second (default is 10)"; + } + } + description + "IPC ratelimit to the RIB server for IO packets"; + } + } + } + } + container assembler { + description + "IPv4 Fragmented Packet Assembler"; + leaf timeout { + type uint32 { + range "1..120" { + description + "Number of seconds an assembly queue will hold before timeout"; + } + } + description + "Number of seconds an assembly queue will hold before timeout"; + } + leaf max-packets { + type uint32 { + range "1..50" { + description + "Percentage of total packets available in the system (default: 1000 packets)"; + } + } + description + "Maxinum packets allowed in assembly queues"; + } + } + container unnumbered { + description + "Enable IPv4 processing without an explicit address"; + container mpls { + description + "Configure MPLS routing protocol parameters"; + leaf traffic-eng { + type xr:Interface-name; + description + "IPv4 commands for MPLS Traffic Engineering"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-prefix-list-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-prefix-list-cfg.yang new file mode 100644 index 000000000..eb03eaace --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv4-prefix-list-cfg.yang @@ -0,0 +1,168 @@ +module Cisco-IOS-XR-um-ipv4-prefix-list-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv4-prefix-list-cfg"; + prefix um-ipv4-prefix-list-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 ipv4-prefix-list package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-03 { + description + "Limit Remark leaf length."; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Initial version"; + } + + container ipv4 { + description + "IPv4 prefix list"; + container prefix-lists { + description + "Prefix list"; + list prefix-list { + key "prefix-list-name"; + description + "prefix list"; + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of a prefix list - maximum 32 characters"; + } + } + description + "Name of a prefix list - maximum 32 characters"; + } + container sequences { + description + "Sequence number"; + list sequence { + must "(remark and not(permission) and not(prefix) and not(mask) and not(match-prefix-length/ge or match-prefix-length/le or match-prefix-length/eq)) or (not(remark) and permission and prefix and mask)"; + key "sequence-number"; + description + "Sequence number"; + leaf sequence-number { + type uint32 { + range "1..2147483646" { + description + "Sequence number"; + } + } + description + "Sequence number"; + } + leaf remark { + type string { + length "0..255" { + description + "Comments for the prefix list entry item"; + } + } + description + "Comments for prefix list"; + } + leaf permission { + type enumeration { + enum "deny" { + value 0; + description + "Specify prefixes to reject"; + } + enum "permit" { + value 1; + description + "Specify prefixes to permit"; + } + } + description + "specify the type to be either deny (or) permit"; + } + leaf prefix { + type inet:ipv4-address-no-zone; + description + "IPv4 address prefix"; + } + leaf mask { + type inet:ipv4-address-no-zone; + description + "Mask length of IPv4 address"; + } + container match-prefix-length { + description + "Prefix length to be matched"; + leaf eq { + type uint32 { + range "0..32" { + description + "Prefix length"; + } + } + must "not(../ge or ../le)"; + description + "Exact prefix length to be matched"; + } + leaf ge { + type uint32 { + range "0..32" { + description + "Minimum prefix length"; + } + } + must "not(../eq)"; + description + "Minimum prefix length to be matched"; + } + leaf le { + type uint32 { + range "0..32" { + description + "Maximum prefix length"; + } + } + must "not(../eq)"; + description + "Maximum prefix length to be matched"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-access-list-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-access-list-cfg.yang new file mode 100644 index 000000000..2fe463b50 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-access-list-cfg.yang @@ -0,0 +1,1088 @@ +module Cisco-IOS-XR-um-ipv6-access-list-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv6-access-list-cfg"; + prefix um-ipv6-acl-cfg; + + import cisco-semver { + prefix semver; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-access-list-datatypes { + prefix um-acl-types; + } + import Cisco-IOS-XR-types { + prefix xr2; + } + + organization + "Cisco Systems, Inc."; + contact + " + Cisco Systems, Inc. + Customer Service + + Postal: 170 W Tasman Drive + San Jose, CA 95134 + + Tel: +1 1800 553-NETS + + E-mail: cs-yang@cisco.com + "; + description + " + This module contains a collection of IOS-XR YANG model derived from CLI. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved. + "; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-07-08 + Added new dscp bitmask field + 2021-09-20 + Added container icmp-on for ace + 2021-07-28 + Added new police units"; + semver:module-version "3.1.0"; + } + revision 2021-06-03 { + description + "Added container icmp-off + 2021-04-07 + Added leaf fragment-type. + 2021-03-17 + Adding new protocols - vrrp, rsvp + 2021-02-24 + Added container police"; + semver:module-version "3.0.0"; + } + revision 2021-01-12 { + description + "Added udf support + 2020-12-03 + Limit length of remark string"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-01 { + description + "Initial version"; + } + + feature ipv6_acl_object_groups_supported { + description + "Port object group"; + } + + feature ipv6_acl_counter_supported { + description + "Counter for access-list entry"; + } + + feature ipv6_acl_protocol_range_implemented { + description + "Range of protocol numbers"; + } + + feature ipv6_acl_abf_implemented { + description + "Forward to specified nexthop on match against access-list entry"; + } + + feature ipv6_acl_abf_track_implemented { + description + "Match a specific TRACK Name"; + } + + feature ipv6_acl_rollback_permit_supported { + description + "Rollback of access-list"; + } + + feature IP_ACL_TCP_URG_FLAG_IMPLEMENTED { + description + "Match on URG bit"; + } + + feature IP_ACL_TCP_FLEXFLAGS_IMPLEMENTED { + description + "Match all the options specified for TCP flags"; + } + + feature ipv6_acl_pktlen_implemented { + description + "Check packet length"; + } + + feature ipv6_acl_is_frag_flags_supported { + description + "Match fragment type for a packet"; + } + + feature ipv6_acl_is_udf_supported { + description + "Set User Defined Fields"; + } + + feature ipv6_acl_capture_implemented { + description + "Capture matched packet"; + } + + feature ipv6_acl_is_set_action_supported { + description + "Set action on access-list entry"; + } + + feature ipv6_acl_is_set_qos_group_supported { + description + "Set QoS group"; + } + + feature ipv6_acl_is_set_ttl_supported { + description + "Set ttl value"; + } + + feature ipv6_acl_undetermined_transport_supported { + description + "Undetermined transport packet"; + } + + grouping ace-common { + description + "Grouping for ace-common"; + container source { + must "address or any or host or net-group"; + description + "Grouping for ace-common source"; + uses source-address; + } + container destination { + must "address or any or host or net-group"; + description + "Grouping for ace-common destination"; + uses destination-address; + } + uses tcp-flags { + when "protocol='tcp'"; + } + uses icmp { + when "protocol='icmpv6'"; + } + uses undetermined-transport; + uses headers; + uses dscp; + uses packet-length; + uses ttl; + uses fragment-type; + uses udf; + uses police; + } + + grouping source-address { + description + "Grouping for source-address"; + leaf address { + type inet:ipv6-address; + must "not(../any or ../host or ../net-group) and (../wildcard-mask or ../prefix-length)"; + description + "Source IP address"; + } + leaf wildcard-mask { + type inet:ipv6-address-no-zone; + must "not(../prefix-length)"; + description + "Source IP address mask. Either wildcard-mask or prefix-length is supported along with address."; + } + leaf prefix-length { + type xr2:Ipv6-prefix-length; + must "not(../wildcard-mask)"; + description + "Source IP address prefix length.Either wildcard-mask or prefix-length is supported along with address."; + } + container any { + must "not(../address or ../host or ../net-group)"; + presence "Any host"; + description + "Any source host"; + } + leaf host { + type inet:ipv6-address; + must "not(../address or ../any or ../net-group)"; + description + "A single source host"; + } + leaf net-group { + if-feature "ipv6_acl_object_groups_supported"; + type string { + length "1..64" { + description + "IPv6 network object group name"; + } + } + must "not(../address or ../any or ../host)"; + description + "IPv6 source network object group"; + } + container port { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + description + "Match based on a port number"; + leaf eq { + type um-acl-types:ipv6-port-number; + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets on a given port number"; + } + leaf gt { + type um-acl-types:ipv6-port-number; + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater port number"; + } + leaf lt { + type um-acl-types:ipv6-port-number; + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower port number"; + } + leaf neq { + type um-acl-types:ipv6-port-number; + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given port"; + } + container range { + description + "Match only packets in the range of port numbers"; + leaf start-value { + type um-acl-types:ipv6-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "Port number"; + } + leaf end-value { + type um-acl-types:ipv6-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "Port number"; + } + } + } + leaf port-group { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + if-feature "ipv6_acl_object_groups_supported"; + type string { + length "1..64"; + } + description + "source port object group"; + } + } + + grouping destination-address { + description + "Grouping for destination-address"; + leaf address { + type inet:ipv6-address; + must "not(../any or ../host or ../net-group) and (../wildcard-mask or ../prefix-length)"; + description + "Destination IP address"; + } + leaf wildcard-mask { + type inet:ipv6-address-no-zone; + must "not(../prefix-length)"; + description + "Destination IP address mask. Either wildcard-mask or prefix-length is supported along with address."; + } + leaf prefix-length { + type xr2:Ipv6-prefix-length; + must "not(../wildcard-mask)"; + description + "Destination IP address prefix length.Either wildcard-mask or prefix-length is supported along with address."; + } + container any { + must "not(../address or ../host or ../net-group)"; + presence "Any host"; + description + "Any destination host"; + } + leaf host { + type inet:ipv6-address; + must "not(../address or ../any or ../net-group)"; + description + "A single destination host"; + } + leaf net-group { + if-feature "ipv6_acl_object_groups_supported"; + type string { + length "1..64" { + description + "IPv6 network object group name"; + } + } + must "not(../address or ../any or ../host)"; + description + "IPv6 destination network object group"; + } + container port { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + description + "Match based on a port number"; + leaf eq { + type um-acl-types:ipv6-port-number; + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets on a given port number"; + } + leaf gt { + type um-acl-types:ipv6-port-number; + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater port number"; + } + leaf lt { + type um-acl-types:ipv6-port-number; + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower port number"; + } + leaf neq { + type um-acl-types:ipv6-port-number; + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given port"; + } + container range { + description + "Match only packets in the range of port numbers"; + leaf start-value { + type um-acl-types:ipv6-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "Port number"; + } + leaf end-value { + type um-acl-types:ipv6-port-number; + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "Port number"; + } + } + } + leaf port-group { + when "../../protocol='tcp' or ../../protocol='sctp' or ../../protocol='udp'"; + if-feature "ipv6_acl_object_groups_supported"; + type string { + length "1..64"; + } + description + "destination port object group"; + } + } + + grouping tcp-flags { + description + "Grouping for tcp-flags"; + container tcp-flags { + description + "tcp-flags options"; + container match-all { + if-feature "IP_ACL_TCP_FLEXFLAGS_IMPLEMENTED"; + must "not(../match-any)"; + presence "indicates match-all is configured"; + description + "Match all the options specified for TCP flags"; + leaf tcp-bits { + type string { + pattern "((\\+|\\-)(fin|syn|rst|psh|ack|urg)[ ]{0,1})+" { + description + "TCP flags with + or -"; + } + } + description + "TCP bits to match with set(+) or not set(-) indication"; + } + } + container match-any { + if-feature "IP_ACL_TCP_FLEXFLAGS_IMPLEMENTED"; + must "not(../match-all)"; + presence "indicates match-any is configured"; + description + "Match atleast one of the options specified for TCP flags"; + leaf tcp-bits { + type string { + pattern "((\\+|\\-)(fin|syn|rst|psh|ack|urg)[ ]{0,1})+" { + description + "TCP flags with + or -"; + } + } + description + "TCP bits to match with set(+) or not set(-) indication"; + } + } + leaf tcp-bits { + type um-acl-types:tcp-bits-type; + must "not(../match-all) and not(../match-any)"; + description + "TCP bits to match"; + } + } + } + + grouping icmp { + description + "Grouping for icmp"; + container icmp { + description + "Match on ICMP message"; + leaf message-type-name { + type um-acl-types:ipv6-icmp-message-type; + must "not(../message-type or ../message-code)"; + description + "ICMP message type"; + } + leaf message-type { + type uint8 { + range "0..255"; + } + must "not(../message-type-name)"; + description + "ICMP message type"; + } + leaf message-code { + type uint8 { + range "0..255"; + } + must "not(../message-type-name)"; + description + "ICMP message code"; + } + } + } + + grouping dscp { + description + "Grouping for dscp"; + container dscp { + description + "Match packets with given DSCP value(s)"; + leaf dscp-value { + type um-acl-types:dscp-value; + must "not(../eq or ../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "DSCP value"; + } + leaf dscp-bitmask { + type um-acl-types:dscp-bitmask-value; + must "../dscp-value and not(../eq or ../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "DSCP bitmask"; + } + leaf eq { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets on a given DSCP value"; + } + leaf gt { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater DSCP value"; + } + leaf lt { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower DSCP value"; + } + leaf neq { + type um-acl-types:dscp-value; + must "not(../dscp-value or ../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given DSCP value"; + } + container range { + description + "Match only packets in the range of DSCP values"; + leaf start-value { + type um-acl-types:dscp-value; + must "not(../../dscp-value or ../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "DSCP value"; + } + leaf end-value { + type um-acl-types:dscp-value; + must "not(../../dscp-value or ../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "DSCP value"; + } + } + } + leaf precedence { + type um-acl-types:precedence-value; + description + "Match packets with given precedence"; + } + } + + grouping packet-length { + description + "Grouping for packet-length"; + container packet-length { + if-feature "ipv6_acl_pktlen_implemented"; + description + "Check packet length"; + leaf eq { + type uint16 { + range "0..65535"; + } + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a given value"; + } + leaf gt { + type uint16 { + range "0..65535"; + } + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater value"; + } + leaf lt { + type uint16 { + range "0..65535"; + } + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower value"; + } + leaf neq { + type uint16 { + range "0..65535"; + } + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given value"; + } + container range { + description + "Match only packets in the range of value"; + leaf start-value { + type uint16 { + range "0..65535"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "Packet length start"; + } + leaf end-value { + type uint16 { + range "0..65535"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "Packet length end"; + } + } + } + } + + grouping ttl { + description + "Grouping for ttl"; + container ttl { + description + "match against ttl"; + leaf eq { + type uint8 { + range "0..255"; + } + must "not(../gt or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a given value"; + } + leaf gt { + type uint8 { + range "0..255"; + } + must "not(../eq or ../lt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packet with a greater value"; + } + leaf lt { + type uint8 { + range "0..255"; + } + must "not(../eq or ../gt or ../neq or ../range/start-value or ../range/end-value)"; + description + "Match only packets with a lower value"; + } + leaf neq { + type uint8 { + range "0..255"; + } + must "not(../eq or ../gt or ../lt or ../range/start-value or ../range/end-value)"; + description + "Match only packets not on a given value"; + } + container range { + description + "Match only packets in the range of value"; + leaf start-value { + type uint8 { + range "0..255"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../end-value)"; + description + "ttl range lower value"; + } + leaf end-value { + type uint8 { + range "0..255"; + } + must "not(../../eq or ../../gt or ../../lt or ../../neq) and (../start-value)"; + description + "ttl range higher value"; + } + } + } + } + + grouping undetermined-transport { + description + "Grouping for undetermined-transport"; + container undetermined-transport { + if-feature "ipv6_acl_undetermined_transport_supported"; + presence "Undetermined transport packet (L4 protocol cannot be read)"; + description + "Undetermined transport packet (L4 protocol cannot be read)"; + } + } + + grouping headers { + description + "Grouping for headers"; + leaf headers { + type um-acl-types:header-bits-type; + description + "Match based on headers"; + } + } + + grouping udf { + description + "Grouping for udf"; + container udf-entries { + description + "User Defined Fields list"; + list udf { + if-feature "ipv6_acl_is_udf_supported"; + key "udf-name"; + max-elements "8"; + description + "Set User Defined Fields on this entry"; + leaf udf-name { + type string { + length "1..16"; + } + description + "UDF name"; + } + leaf udf-value { + type xr2:Hex-integer; + description + "UDF value"; + } + leaf udf-mask { + type xr2:Hex-integer; + description + "UDF mask"; + } + } + } + } + + grouping police { + description + "Grouping for police"; + container police { + description + "Set Police value and unit on this entry"; + leaf value { + type uint32 { + range "0..4294967295"; + } + must "../unit"; + description + "Police value"; + } + leaf unit { + type string { + pattern "pps|bps|kbps|mbps|gbps"; + } + must "../value"; + description + "Unit for police value. Currently only pps (packets per second) + is supported"; + } + leaf peak-rate { + type uint32 { + range "0..4294967295"; + } + must "../value and ../peak-unit"; + description + "Police peak-rate value on this entry"; + } + leaf peak-unit { + type string { + pattern "pps|bps|kbps|mbps|gbps"; + } + must "../peak-rate"; + description + "Unit for peak-rate value. Currently only pps (packets per second) + is supported"; + } + leaf priority { + type enumeration { + enum "critical" { + value 0; + description + "punt priority critical"; + } + enum "high" { + value 1; + description + "punt priority high"; + } + enum "low" { + value 2; + description + "punt priority low"; + } + enum "medium" { + value 3; + description + "punt priority medium"; + } + } + must "../value"; + description + "Set Priority option on this entry"; + } + } + } + + grouping fragment-type { + description + "Grouping for fragment-type"; + leaf fragment-type { + if-feature "ipv6_acl_is_frag_flags_supported"; + type enumeration { + enum "first-fragment" { + value 1; + description + "Match first fragment flag"; + } + enum "is-fragment" { + value 2; + description + "Match is-fragment flag"; + } + } + description + "Fragment type for a packet"; + } + } + + grouping match-option-common { + description + "Grouping for match-option-common"; + container capture { + if-feature "ipv6_acl_capture_implemented"; + presence "Capture matched packet"; + description + "Capture matched packet"; + } + leaf counter { + if-feature "ipv6_acl_counter_supported"; + type string { + length "1..64" { + description + "Name of counter to aggregate hardware statistics"; + } + } + description + "counter for this ACE"; + } + container log { + presence "Log matches against this entry"; + description + "Log matches against this entry"; + } + container log-input { + presence "Log matches against this entry, including input interface"; + description + "Log matches against this entry, including input interface"; + } + container set { + if-feature "ipv6_acl_is_set_action_supported"; + description + "Set action on this entry"; + leaf qos-group { + if-feature "ipv6_acl_is_set_qos_group_supported"; + type uint16 { + range "0..512"; + } + description + "qos-group number"; + } + leaf ttl { + if-feature "ipv6_acl_is_set_ttl_supported"; + type uint8 { + range "0..255"; + } + description + "Set ttl value"; + } + } + } + + grouping protocol-common { + description + "Grouping for protocol-common"; + leaf protocol { + type um-acl-types:ipv6-protocol; + must "not(../eq or ../range/start-protocol or ../range/end-protocol)"; + description + "An IPv6 Protocol"; + } + leaf eq { + type um-acl-types:ipv6-protocol; + must "not(../protocol or ../range/start-protocol or ../range/end-protocol)"; + description + "Match only packets with exact protocol numbers"; + } + container range { + if-feature "ipv6_acl_protocol_range_implemented"; + description + "Match only packets in the range of protocol numbers"; + leaf start-protocol { + type um-acl-types:ipv6-protocol; + must "not(../../protocol or ../../eq) and (../end-protocol)"; + description + "An IPv6 Protocol"; + } + leaf end-protocol { + type um-acl-types:ipv6-protocol; + must "not(../../protocol or ../../eq) and (../start-protocol)"; + description + "An IPv6 Protocol"; + } + } + } + + grouping nexthops { + description + "Grouping for nexthop"; + container default { + presence "Use specified default nexthop on match against this entry"; + description + "Use specified default nexthop on match against this entry"; + } + container nexthop1 { + if-feature "ipv6_acl_abf_implemented"; + presence "Forward to specified nexthop on match against this entry"; + description + "Forward to specified nexthop on match against this entry"; + leaf ipv6 { + type inet:ipv6-address; + description + "nexthop1 ipv6 address"; + } + leaf track { + if-feature "ipv6_acl_abf_track_implemented"; + type string { + length "1..32"; + } + description + "specific TRACK Name for this nexthop"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specific VRF Name for this nexthop"; + } + } + container nexthop2 { + must "(../nexthop1/vrf and ../nexthop1/ipv6) or ../nexthop1/vrf or ../nexthop1/ipv6"; + presence "Forward to specified nexthop on match against this entry"; + description + "Another nexthop"; + leaf ipv6 { + type inet:ipv6-address; + description + "nexthop2 ipv6 address"; + } + leaf track { + if-feature "ipv6_acl_abf_track_implemented"; + type string { + length "1..32"; + } + description + "specific TRACK Name for this nexthop"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specific VRF Name for this nexthop"; + } + } + container nexthop3 { + must "(../nexthop2/vrf and ../nexthop2/ipv6) or ../nexthop2/vrf or ../nexthop2/ipv6"; + presence "Forward to specified nexthop on match against this entry"; + description + "Another nexthop"; + leaf ipv6 { + type inet:ipv6-address; + description + "nexthop3 ipv6 address"; + } + leaf track { + if-feature "ipv6_acl_abf_track_implemented"; + type string { + length "1..32"; + } + description + "specific TRACK Name for this nexthop"; + } + leaf vrf { + type string { + length "1..32"; + } + description + "Specific VRF Name for this nexthop"; + } + } + } + + container ipv6 { + description + "Configure ipv6 access-list"; + container access-list-options { + description + "Control access lists options"; + container log-update { + description + "Control access lists log updates"; + leaf threshold { + type uint32 { + range "1..2147483647" { + description + "Log update threshold (number of hits)"; + } + } + description + "Set access-list logging threshold"; + } + leaf rate { + type uint16 { + range "1..1000" { + description + "rate (num. logs per second)"; + } + } + description + "Set access-list logging rate (num. logs per second)"; + } + } + container icmp-off { + presence "Indicates a icmp-off node is configured."; + description + "Do not generate the ICMP message"; + } + } + container access-lists { + description + "Access-lists"; + list access-list { + key "access-list-name"; + description + "Access-list commands"; + leaf access-list-name { + type string { + length "1..64"; + } + description + "Access list name - maximum 64 characters"; + } + container sequences { + description + "Access list entries"; + list sequence { + must "deny or permit or remark"; + key "sequence-number"; + description + "access list entry"; + leaf sequence-number { + type uint32 { + range "1..2147483643"; + } + description + "Sequence number for this entry"; + } + container deny { + must "(protocol or eq or range) and (source and destination) and (not(log and log-input))"; + presence "Grant type Deny"; + description + "Access list entries deny"; + uses protocol-common; + uses ace-common; + uses match-option-common; + container icmp-off { + presence "Do not generate the ICMP message"; + description + "Do not generate the ICMP message"; + } + container icmp-on { + presence "Generate the ICMP message"; + description + "Generate the ICMP message"; + } + } + container permit { + must "(protocol or eq or range) and (source and destination) and (not(log and log-input))"; + presence "Grant type Permit"; + description + "Access list entries permit"; + uses protocol-common; + uses ace-common; + uses nexthops; + uses match-option-common; + } + leaf remark { + type string { + length "0..255"; + } + description + "Comment for access list"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-cfg.yang new file mode 100644 index 000000000..aa93c4f34 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-cfg.yang @@ -0,0 +1,156 @@ +module Cisco-IOS-XR-um-ipv6-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv6-cfg"; + prefix um-ipv6-cfg; + + 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 ipv6 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-06 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ipv6 { + description + "Global IPv6 configuration commands"; + leaf hop-limit { + type uint32 { + range "1..255" { + description + "Hop Limit value"; + } + } + description + "Configure hop count limit"; + } + container icmp { + description + "Configure ICMP parameters"; + container error-interval { + presence "Indicates a error-interval node is configured."; + description + "Interval between ICMP error messages"; + leaf interval-time { + type uint32 { + range "0..2147483647" { + description + "Interval between tokens in milliseconds"; + } + } + mandatory true; + description + "Interval between ICMP error messages"; + } + leaf bucket-size { + type uint32 { + range "1..200" { + description + "Bucket size"; + } + } + description + "Bucket size"; + } + } + } + container source-route { + presence "Indicates a source-route node is configured."; + description + "Process packets with source routing header options"; + } + container assembler { + description + "IPv6 Fragmented Packet Assembler"; + leaf timeout { + type uint32 { + range "1..120" { + description + "Number of seconds an assembly queue will hold before timeout"; + } + } + description + "Number of seconds an assembly queue will hold before timeout"; + } + leaf max-packets { + type uint32 { + range "1..50" { + description + "Percentage of total packets available in the system (default: 1000 packets)"; + } + } + description + "Maxinum packets allowed in assembly queues"; + } + container reassembler-drop { + description + "Drop the reassembled packet"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable dropping of reassembled ND packet"; + } + } + container frag-hdr-incomplete { + description + "Drop the frags with incomplete headers"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable dropping the frags with incomplete header"; + } + } + container overlap-frag-drop { + description + "Drop the fragments which are overlapping"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable dropping the frags which are overlapping"; + } + } + } + container path-mtu { + description + "IPv6 path-mtu configuration"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable ipv6 path-mtu feature"; + } + leaf timeout { + type uint32 { + range "1..15" { + description + "path-mtu timeout value in minutes"; + } + } + description + "Configure path-mtu timeout value"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-mobile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-mobile-cfg.yang new file mode 100644 index 000000000..d0c52dcd5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-mobile-cfg.yang @@ -0,0 +1,1277 @@ +module Cisco-IOS-XR-um-ipv6-mobile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv6-mobile-cfg"; + prefix um-ipv6-mobile-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 ipv6-mobile package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container ipv6 { + description + "Global IPv6 configuration commands"; + container mobile { + description + "MobileIP configuration"; + container pmipv6-domains { + description + "PMIPv6 domain configuration"; + list pmipv6-domain { + key "pmipv6-domain-name"; + description + "PMIPv6 domain configuration"; + leaf pmipv6-domain-name { + type xr:Cisco-ios-xr-string { + length "2..125" { + description + "Domain Name"; + } + } + description + "PMIPv6 domain configuration"; + } + container nais { + description + "Network access identifier or Realm"; + list nai { + key "nai-name"; + description + "Network access identifier or Realm"; + leaf nai-name { + type string { + length "2..125" { + description + "MN Identifier"; + } + } + description + "Network access identifier or Realm"; + } + leaf apn { + type xr:Cisco-ios-xr-string { + length "2..125" { + description + "APN name"; + } + } + description + "Access point network for this MN"; + } + leaf network { + type xr:Cisco-ios-xr-string { + length "2..125" { + description + "Network name"; + } + } + description + "Network name (Address pool) for this MN"; + } + leaf service { + type enumeration { + enum "ipv4" { + value 1; + description + "ipv4 service type"; + } + enum "ipv6" { + value 2; + description + "ipv6 service type"; + } + enum "dual" { + value 3; + description + "dual service type"; + } + } + description + "Service type for this MN"; + } + leaf customer { + type xr:Cisco-ios-xr-string { + length "2..125" { + description + "Customer name"; + } + } + description + "Customer name for this MN"; + } + } + } + container auth-option { + description + "Authentication option between PMIPV6 entities"; + leaf spi { + type uint32 { + range "0..4294967295" { + description + "SPI in hex value"; + } + } + description + "Security parameter index"; + } + container key { + description + "Security Key"; + leaf ascii { + type xr:Cisco-ios-xr-string { + length "2..125" { + description + "ASCII string"; + } + } + description + "Key in ASCII string"; + } + } + } + } + } + container pmipv6-lmas { + description + "PMIPv6 LMA configuration"; + list pmipv6-lma { + key "pmipv6-lma-name domain-name"; + description + "PMIPv6 LMA configuration"; + leaf pmipv6-lma-name { + type string { + length "2..125" { + description + "LMA name"; + } + } + description + "PMIPv6 LMA configuration"; + } + leaf domain-name { + type string { + length "2..125" { + description + "Domain name"; + } + } + description + "PMIPv6 domain for this LMA"; + } + container address { + description + "Specify LMAs IPv4 and IPv6 address"; + container ipv4s { + description + "Configure IPv4 address for this LMA"; + list ipv4 { + key "address"; + description + "Configure IPv4 address for this LMA"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Configure IPv4 address for this LMA"; + } + } + } + container ipv6s { + description + "Configure IPv6 address for this LMA"; + list ipv6 { + key "address"; + description + "Configure IPv6 address for this LMA"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Configure IPv6 address for this LMA"; + } + } + } + } + container bce { + description + "LMA binding attributes"; + leaf delete-wait-time { + type uint32 { + range "100..65535" { + description + "Specify in millisec"; + } + } + description + "bce delete wait time interval"; + } + leaf create-wait-time { + type uint32 { + range "100..65535" { + description + "Specify in millisec"; + } + } + description + "bce create wait time interval"; + } + leaf lifetime { + type uint32 { + range "10..65535" { + description + "Specify in seconds"; + } + } + description + "Maximum bce lifetime permitted"; + } + leaf refresh-time { + type uint32 { + range "4..65000" { + description + "Specify in seconds, (multiples of 4)"; + } + } + description + "Bce refresh interval"; + } + leaf maximum { + type uint32 { + range "1..128000" { + description + "Specify max. number of bindings"; + } + } + description + "Maximum bindings permitted"; + } + } + container hnp { + description + "LMA HNP options"; + leaf maximum { + type uint32 { + range "1..3" { + description + "Specify maximum HNPs allowed"; + } + } + description + "maximum HNPs allowed per MN interface"; + } + } + container bri { + description + "LMA Binding Revocation Attributes"; + container delay { + description + "Time to wait before Retransmitting BRI Message"; + leaf min { + type uint32 { + range "500..65535" { + description + "Specify in millisec"; + } + } + must "../max"; + description + "Minimum time delay to send BRI"; + } + leaf max { + type uint32 { + range "500..65535" { + description + "Specify in millisec"; + } + } + must "../min"; + description + "Maximum time delay to send BRI"; + } + } + leaf retries { + type uint32 { + range "1..10" { + description + "Retries count"; + } + } + description + "Number of Retransmissons Allowed for BRI Message"; + } + } + container replay-protection { + description + "Replay Protection Method"; + container timestamp { + description + "Timestamp Option"; + leaf window { + type uint32 { + range "1..255" { + description + "Specify timestamp window value in seconds"; + } + } + description + "Window Value"; + } + } + } + container default { + description + "Default MN profile for LMA"; + leaf profile { + type string { + length "2..125" { + description + " MN profile name"; + } + } + description + "MN profile"; + } + } + container aaa { + description + "AAA configuration for this LMA"; + container accounting { + presence "Indicates a accounting node is configured."; + description + "AAA accounting for this LMA"; + leaf interim { + type uint32 { + range "1..86400" { + description + "Interim acounting interval (in minutes)"; + } + } + description + "Send interim accounting update messages"; + } + } + } + container dynamic { + description + "enable dynamic mag learning for LMA"; + container mag { + description + "learn mag dynamically for this LMA"; + container learning { + presence "Indicates a learning node is configured."; + description + "learn mag dynamically for this LMA"; + } + } + } + container enforce { + description + "enforce heartbeat values to MAG"; + container heartbeat-to-mag { + presence "Indicates a heartbeat-to-mag node is configured."; + description + "send heartbeat values to MAG"; + } + } + container heartbeat { + description + "heartbeat config for this LMA"; + leaf interval { + type uint32 { + range "10..3600" { + description + "Specify the interval value in second"; + } + } + must "../retries"; + description + "interval value"; + } + leaf retries { + type uint32 { + range "1..10" { + description + "Specify the retry value"; + } + } + must "../interval and ../timeout"; + description + "interval value"; + } + leaf timeout { + type uint32 { + range "1..3600" { + description + "Specify the timeout value"; + } + } + must "../retries"; + description + "timeout value"; + } + } + container dscp { + description + "DSCP for packets originating from this LMA"; + leaf control-plane { + type uint32 { + range "1..63" { + description + "Specify the DSCP value"; + } + } + description + "DSCP value for control plane messages"; + } + container force { + must "../control-plane"; + presence "Indicates a force node is configured."; + description + "Force DSCP from incoming packets into outgoing packets"; + } + } + leaf redistribute { + type enumeration { + enum "home-address" { + value 1; + description + "Redistribute HoA/HNP routes"; + } + } + must "../ho-a-hnp-host-routes"; + description + "Redistribute routes"; + } + leaf ho-a-hnp-host-routes { + type enumeration { + enum "host-prefix" { + value 1; + description + "Redistribute HoA/HNP host prefix routes"; + } + enum "disable" { + value 2; + description + "Disable redistribution of HoA/HNP host and pool refix routes"; + } + } + must "../redistribute"; + description + "configure this node"; + } + container pgw { + description + "Feature related to interface with PGW"; + container subscriber { + description + "Enable Subscriber Continuity"; + container continuity { + presence "Indicates a continuity node is configured."; + description + "Enable Subscriber Continuity"; + } + } + } + container mobile-route { + description + "Configuration related to M Route"; + leaf admin-distance { + type uint32 { + range "1..254" { + description + "Specify the Admin Distance value"; + } + } + description + "Admin Distance of the M Route"; + } + } + container networks { + description + "network for this LMA"; + list network { + key "network-name"; + description + "network for this LMA"; + leaf network-name { + type string { + length "2..125" { + description + "Network name"; + } + } + description + "network for this LMA"; + } + container pool { + description + "Pool configs for this network"; + container mobile-node { + description + "pool configs for the mobile nodes"; + container ipv4 { + description + "ipv4 pool"; + leaf start-address { + type inet:ipv4-address-no-zone; + must "../pool-prefix"; + description + "ipv4 pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30" { + description + "IPv4 Pool Prefix value"; + } + } + must "../start-address"; + description + "ipv4 pool prefix"; + } + } + container ipv6 { + description + "ipv6 pool"; + leaf start-address { + type inet:ipv6-address-no-zone; + must "../pool-prefix"; + description + "ipv6 pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..62" { + description + "IPv6 Pool Prefix value"; + } + } + must "../start-address"; + description + "ipv6 pool prefix"; + } + } + } + container mobile-network { + description + "pool configs for the mobile network"; + container ipv4 { + description + "ipv4 pool"; + container start-addresses { + description + "ipv4 network pool start address"; + list start-address { + key "address"; + description + "ipv4 network pool start address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "ipv4 network pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30" { + description + "IPv4 Pool Prefix value"; + } + } + must "../network-prefix"; + description + "ipv4 pool prefix"; + } + leaf network-prefix { + type uint32 { + range "8..32" { + description + "IPv4 Network Prefix value"; + } + } + must "../pool-prefix"; + description + "ipv4 network prefix"; + } + } + } + } + container ipv6 { + description + "ipv6 pool"; + container start-addresses { + description + "ipv6 pool start address"; + list start-address { + key "address"; + description + "ipv6 pool start address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "ipv6 pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..64" { + description + "IPv6 Pool Prefix value"; + } + } + must "../network-prefix"; + description + "ipv6 network prefix"; + } + leaf network-prefix { + type uint32 { + range "8..64" { + description + "IPv4 Network Prefix value"; + } + } + must "../pool-prefix"; + description + "ipv6 network prefix"; + } + } + } + } + } + } + } + } + container mobility-services { + description + "Service of this LMA"; + list mobility-service { + key "mobility-service-id"; + description + "Service of this LMA"; + leaf mobility-service-id { + type enumeration { + enum "mobile-local-loop" { + value 1; + description + "Wireless Private Routing service"; + } + } + description + "Service of this LMA"; + } + container ignore { + description + "Ignore options for Mobile Local Loop service"; + container home-address { + presence "Indicates a home-address node is configured."; + description + "Ignore HoA/HNP option"; + } + } + container mnp { + description + "configure mobile node prefix limits"; + container ipv4 { + description + "configure mobile node IPv4 prefix limits"; + container logical-mn { + description + "mnp limit config for all logical mn's"; + leaf maximum { + type uint32 { + range "1..32" { + description + "Number of IPv4 MNPs"; + } + } + description + "Maximum Prefixes for all Logical MN's"; + } + } + container customer { + description + "mnp limit config for all customer's"; + leaf maximum { + type uint32 { + range "1..4000000" { + description + "Number of IPv4 MNPs"; + } + } + description + "Maximum Prefixes for all customer's"; + } + } + } + container ipv6 { + description + "configure mobile node IPv6 prefix limits"; + container logical-mn { + description + "mnp limit config for all logical mn's"; + leaf maximum { + type uint32 { + range "1..32" { + description + "Number of IPv6 MNPs"; + } + } + description + "Maximum Prefixes for all Logical MN's"; + } + } + container customer { + description + "mnp limit config for all customer's"; + leaf maximum { + type uint32 { + range "1..4000000" { + description + "Number of IPv6 MNPs"; + } + } + description + "Maximum Prefixes for all customer's"; + } + } + } + container afi-all { + description + "configure mobile node prefix limits"; + container logical-mn { + description + "mnp limit config for all logical mn's"; + leaf maximum { + type uint32 { + range "1..32" { + description + "Number of MNPs"; + } + } + description + "Maximum Prefixes for all Logical MN's"; + } + } + container customer { + description + "mnp limit config for all customer's"; + leaf maximum { + type uint32 { + range "1..4000000" { + description + "Number of MNPs"; + } + } + description + "Maximum Prefixes for all customer's"; + } + } + } + } + container customers { + description + "customer configuration on this mobile local loop service"; + list customer { + key "customer-name vrf-name"; + description + "customer configuration on this mobile local loop service"; + leaf customer-name { + type string { + length "1..32" { + description + "Customer name"; + } + } + description + "customer configuration on this mobile local loop service"; + } + leaf vrf-name { + type string { + length "1..32" { + description + "VRF name"; + } + } + description + "Vrf for this customer"; + } + container auth-option { + description + "Authentication option between PMIPV6 entities"; + leaf spi { + type uint32 { + range "0..4294967295" { + description + "SPI in hex value"; + } + } + description + "Security parameter index"; + } + container key { + description + "Security Key"; + leaf ascii { + type xr:Cisco-ios-xr-string { + length "2..125" { + description + "ASCII string"; + } + } + description + "Key in ASCII string"; + } + } + } + container mnp { + description + "configure mobile node prefix limits"; + container ipv4 { + description + "configure mobile node IPv4 prefix limits"; + container logical-mn { + description + "mnp limit config for customer specific logical mn"; + leaf maximum { + type uint32 { + range "1..32" { + description + "Number of IPv4 MNPs"; + } + } + description + "Maximum Prefixes for this customers' Logical MN's"; + } + } + container customer { + description + "mnp limit config for customer"; + leaf maximum { + type uint32 { + range "1..4000000" { + description + "Number of IPv4 MNPs"; + } + } + description + "Maximum Prefixes for this customer"; + } + } + } + container ipv6 { + description + "configure mobile node IPv6 prefix limits"; + container logical-mn { + description + "mnp limit config for customer specific logical mn"; + leaf maximum { + type uint32 { + range "1..32" { + description + "Number of IPv6 MNPs"; + } + } + description + "Maximum Prefixes for this customers' Logical MN's"; + } + } + container customer { + description + "mnp limit config for customer"; + leaf maximum { + type uint32 { + range "1..4000000" { + description + "Number of IPv6 MNPs"; + } + } + description + "Maximum Prefixes for this customer"; + } + } + } + container afi-all { + description + "configure mobile node prefix limits"; + container logical-mn { + description + "mnp limit config for customer specific logical mn"; + leaf maximum { + type uint32 { + range "1..32" { + description + "Number of MNPs"; + } + } + description + "Maximum Prefixes for this customers' Logical MN's"; + } + } + container customer { + description + "mnp limit config for customer"; + leaf maximum { + type uint32 { + range "1..4000000" { + description + "Number of MNPs"; + } + } + description + "Maximum Prefixes for this customer"; + } + } + } + } + container heartbeat { + description + "heartbeat config for this Customer"; + leaf interval { + type uint32 { + range "10..3600" { + description + "Specify the interval value in second"; + } + } + must "../retries"; + description + "interval value"; + } + leaf retries { + type uint32 { + range "1..10" { + description + "Specify the retry value"; + } + } + must "../interval and ../timeout"; + description + "retry value"; + } + leaf timeout { + type uint32 { + range "1..3600" { + description + "Specify the timeout value"; + } + } + must "../retries"; + description + "timeout value"; + } + } + container network { + description + "network parameters for the customer"; + container unauthorized { + presence "Indicates a unauthorized node is configured."; + description + "not authorize the network prefixes"; + } + container authorizeds { + description + "not authorize the network prefixes"; + list authorized { + key "authorized-name"; + description + "not authorize the network prefixes"; + leaf authorized-name { + type string { + length "2..125" { + description + "ASCII string"; + } + } + description + "not authorize the network prefixes"; + } + container pool { + description + "Pool configs for this network"; + container mobile-node { + description + "pool configs for the mobile nodes"; + container ipv4 { + description + "ipv4 pool"; + leaf start-address { + type inet:ipv4-address-no-zone; + must "../pool-prefix"; + description + "ipv4 pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30" { + description + "IPv4 Pool Prefix value"; + } + } + must "../start-address"; + description + "ipv4 pool prefix"; + } + } + container ipv6 { + description + "ipv6 pool"; + leaf start-address { + type inet:ipv6-address-no-zone; + must "../pool-prefix"; + description + "ipv6 pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..62" { + description + "IPv6 Pool Prefix value"; + } + } + must "../start-address"; + description + "ipv6 pool prefix"; + } + } + } + container mobile-network { + description + "pool configs for the mobile network"; + container ipv4 { + description + "ipv4 pool"; + container start-addresses { + description + "ipv4 network pool start address"; + list start-address { + key "address"; + description + "ipv4 network pool start address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "ipv4 network pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..30" { + description + "IPv4 Pool Prefix value"; + } + } + must "../network-prefix"; + description + "ipv4 pool prefix"; + } + leaf network-prefix { + type uint32 { + range "8..32" { + description + "IPv4 Network Prefix value"; + } + } + must "../pool-prefix"; + description + "ipv4 network prefix"; + } + } + } + } + container ipv6 { + description + "ipv6 pool"; + container start-addresses { + description + "ipv6 pool start address"; + list start-address { + key "address"; + description + "ipv6 pool start address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "ipv6 pool start address"; + } + leaf pool-prefix { + type uint32 { + range "8..64" { + description + "IPv6 Pool Prefix value"; + } + } + must "../network-prefix"; + description + "ipv6 network prefix"; + } + leaf network-prefix { + type uint32 { + range "8..64" { + description + "IPv4 Network Prefix value"; + } + } + must "../pool-prefix"; + description + "ipv6 network prefix"; + } + } + } + } + } + } + } + } + } + container bce { + description + "Customer specific binding attributes"; + leaf lifetime { + type uint32 { + range "10..65535" { + description + "Specify in seconds"; + } + } + description + "Maximum bce lifetime permitted"; + } + } + leaf gre-key { + type enumeration { + enum "symmetric" { + value 1; + description + "Symmetric GRE Key (same Uplink and Downlink key)"; + } + } + must "../gre-key-value"; + description + "Customer specific GRE key"; + } + leaf gre-key-value { + type uint32 { + range "1..4294967295" { + description + "GRE key value"; + } + } + must "../gre-key"; + description + "GRE key value"; + } + container bandwidth { + description + "Bandwidth allocated to this customer"; + leaf aggregate { + type uint32 { + range "1..4294967295" { + description + "Bandwidth in kbps"; + } + } + description + "Aggregate bandwidth across all logical MNs"; + } + } + container mobile-route { + description + "Configuration related to M Route"; + leaf admin-distance { + type uint32 { + range "1..254" { + description + "Specify the Admin Distance value"; + } + } + description + "Admin Distance of the M Route"; + } + } + container transport { + description + "Customer transport attributes"; + container vrfs { + description + "vrf for this transport"; + list vrf { + key "vrf-name"; + description + "vrf for this transport"; + leaf vrf-name { + type string { + length "2..125" { + description + "VRF Name"; + } + } + description + "vrf for this transport"; + } + container address { + description + "Specify LMAs IPv4 and IPv6 address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "Configure IPv4 address for this LMA"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + description + "Configure IPv6 address for this LMA"; + } + } + } + } + container address { + description + "Specify LMAs IPv4 and IPv6 address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "Configure IPv4 address for this LMA"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + description + "Configure IPv6 address for this LMA"; + } + } + } + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-nd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-nd-cfg.yang new file mode 100644 index 000000000..359d5a5bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-nd-cfg.yang @@ -0,0 +1,1160 @@ +module Cisco-IOS-XR-um-ipv6-nd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv6-nd-cfg"; + prefix um-ipv6-nd-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 ipv6-nd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-03-11 + Added proxy-nd container under ipv6 nd + 2022-03-08 + Removed tailf-common import"; + semver:module-version "1.1.0"; + } + revision 2021-06-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature ipv6_nd_ra_dns_server_support_check { + description + "ipv6 nd ra dns server support check"; + } + + feature ipv6_nd_ra_specific_route_support_check { + description + "ipv6 nd ra specific route support check"; + } + + feature ipv6_nd_default_router_preference_support_check { + description + "ipv6 nd default router preference support check"; + } + + feature ipv6_nd_cos_supported { + description + "Cos value for all outgoing ND control packets"; + } + + grouping IF-IPV6-BODY { + description + "Grouping for interface ipv6"; + container nd { + description + "IPv6 interface Neighbor Discovery subcommands"; + leaf reachable-time { + type uint32 { + range "0..3600000" { + description + "Reachability time in milliseconds"; + } + } + description + "Set advertised reachability time"; + } + leaf cache-limit { + type uint32 { + range "0..128000" { + description + "Cache Limit"; + } + } + description + "Set Cache Limit for neighbor entry"; + } + container dad { + description + "Duplicate Address Detection"; + leaf attempts { + type uint32 { + range "0..600" { + description + "Number of attempts"; + } + } + description + "Set IPv6 Duplicate Address Detection Transmits"; + } + } + container unicast-ra { + presence "Indicates a unicast-ra node is configured."; + description + "Send Unicast Solicited IPv6 Router Advertisements"; + } + container suppress-ra { + presence "Indicates a suppress-ra node is configured."; + description + "Suppress IPv6 Router Advertisements"; + } + container managed-config-flag { + presence "Indicates a managed-config-flag node is configured."; + description + "Hosts should use stateful protocol for address config"; + } + container other-config-flag { + presence "Indicates a other-config-flag node is configured."; + description + "Hosts should use stateful protocol for non-address config"; + } + leaf ns-interval { + type uint32 { + range "1000..4294967295" { + description + "Retransmission interval in milliseconds"; + } + } + description + "Set advertised NS retransmission interval"; + } + container ra-interval { + presence "Indicates a ra-interval node is configured."; + description + "Set IPv6 Router Advertisement Interval"; + leaf maximum-ra-interval { + type uint32 { + range "4..1800" { + description + "Maximum RA Interval (sec)"; + } + } + mandatory true; + description + "Set IPv6 Router Advertisement Interval"; + } + leaf minimum-ra-interval { + type uint32 { + range "3..1800" { + description + "Minimum RA Interval (sec). Must be less than 0.75 * maximum interval"; + } + } + description + "Minimum RA Interval (sec). Must be less than 0.75 * maximum interval"; + } + } + leaf ra-lifetime { + type uint32 { + range "0..9000" { + description + "RA Lifetime (seconds)"; + } + } + description + "Set IPv6 Router Advertisement Lifetime"; + } + container redirects { + presence "Indicates a redirects node is configured."; + description + "Enable sending of ICMP Redirect messages"; + } + container nud-conform { + presence "Indicates a nud-conform node is configured."; + description + "Enable NUD conformance logic"; + } + container prefix { + description + "Configure IPv6 Routing Prefix Advertisement"; + container default { + must "infinite or valid-lifetime or at or no-adv or off-link or no-autoconfig"; + presence "Indicates a default node is configured."; + description + "Specify prefix default parameters"; + container infinite { + must "not(../valid-lifetime or ../at or ../no-adv) and (infinite or preferred-lifetime)"; + presence "Indicates a infinite node is configured."; + description + "Infinite Valid Lifetime"; + container infinite { + must "not(../preferred-lifetime)"; + presence "Indicates a infinite node is configured."; + description + "Infinite Preferred Lifetime"; + } + leaf preferred-lifetime { + type uint32 { + range "0..4294967294" { + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + } + must "not(../infinite)"; + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + } + leaf valid-lifetime { + type uint32 { + range "0..4294967294" { + description + "Valid Lifetime (secs)"; + } + } + must "not(../infinite or ../at or ../no-adv) and ../preferred-lifetime"; + description + "Valid Lifetime (secs)"; + } + leaf preferred-lifetime { + type uint32 { + range "0..4294967294" { + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + } + must "../valid-lifetime"; + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + container at { + must "not(../valid-lifetime or ../infinite or ../no-adv)"; + presence "Indicates a at node is configured."; + description + "Expire prefix at a specific time/date"; + container expire-valid-lifetime { + description + "Expire prefix at a specific time/date"; + leaf month { + type enumeration { + enum "January" { + value 0; + description + "January"; + } + enum "February" { + value 1; + description + "February"; + } + enum "March" { + value 2; + description + "March"; + } + enum "April" { + value 3; + description + "April"; + } + enum "May" { + value 4; + description + "May"; + } + enum "June" { + value 5; + description + "June"; + } + enum "July" { + value 6; + description + "July"; + } + enum "August" { + value 7; + description + "August"; + } + enum "September" { + value 8; + description + "September"; + } + enum "October" { + value 9; + description + "October"; + } + enum "November" { + value 10; + description + "November"; + } + enum "December" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month to expire Valid Lifetime"; + } + leaf date { + type uint32 { + range "1..31" { + description + "Date to expire Valid Lifetime"; + } + } + mandatory true; + description + "Date to expire Valid Lifetime"; + } + leaf year { + type uint32 { + range "2003..2035" { + description + "Year to expire Valid Lifetime"; + } + } + mandatory true; + description + "Year to expire Valid Lifetime"; + } + leaf time-hour { + type uint32 { + range "0..23" { + description + "Time to expire Valid Lifetime (hh:mm)"; + } + } + mandatory true; + description + "Time to expire Valid Lifetime (hh:mm)"; + } + leaf time-minute { + type uint32 { + range "0..59" { + description + "Time to Valid (hh:mm)"; + } + } + mandatory true; + description + "Time to Valid (hh:mm)"; + } + } + container expire-preferred-lifetime { + description + "Expire prefix at a specific time/date"; + leaf month { + type enumeration { + enum "January" { + value 0; + description + "January"; + } + enum "February" { + value 1; + description + "February"; + } + enum "March" { + value 2; + description + "March"; + } + enum "April" { + value 3; + description + "April"; + } + enum "May" { + value 4; + description + "May"; + } + enum "June" { + value 5; + description + "June"; + } + enum "July" { + value 6; + description + "July"; + } + enum "August" { + value 7; + description + "August"; + } + enum "September" { + value 8; + description + "September"; + } + enum "October" { + value 9; + description + "October"; + } + enum "November" { + value 10; + description + "November"; + } + enum "December" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month to expire Preferred Lifetime"; + } + leaf date { + type uint32 { + range "1..31" { + description + "Date to expire Preferred Lifetime"; + } + } + mandatory true; + description + "Date to expire Preferred Lifetime"; + } + leaf year { + type uint32 { + range "2003..2035" { + description + "Year to expire Preferred Lifetime"; + } + } + mandatory true; + description + "Year to expire Preferred Lifetime"; + } + leaf time-hour { + type uint32 { + range "0..23" { + description + "Time to expire Preferred Lifetime (hh:mm)"; + } + } + mandatory true; + description + "Time to expire Preferred Lifetime (hh:mm)"; + } + leaf time-minute { + type uint32 { + range "0..59" { + description + "Time to Preferred (hh:mm)"; + } + } + mandatory true; + description + "Time to Preferred (hh:mm)"; + } + } + } + container off-link { + presence "Indicates a off-link node is configured."; + description + "Do not use prefix for onlink determination"; + } + container no-autoconfig { + presence "Indicates a no-autoconfig node is configured."; + description + "Do not use prefix for autoconfiguration"; + } + container no-adv { + must "not(../valid-lifetime or ../at or ../infinite)"; + presence "Indicates a no-adv node is configured."; + description + "Do not advertise prefix"; + } + } + container ipv6-addresses { + description + "IPv6 addresses"; + list ipv6-address { + must "infinite or valid-lifetime or at or no-adv or off-link or no-autoconfig"; + key "address"; + description + "IPv6 prefix x:x::y/"; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 prefix x:x::y/"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "IPv6 prefix x:x::y/"; + } + leaf zone { + type union { + type string { + pattern "0" { + description + "Default zone id"; + } + } + type string; + } + mandatory true; + description + "IPv6 address zone"; + } + container infinite { + must "not(../valid-lifetime or ../at or ../no-adv) and (infinite or preferred-lifetime)"; + presence "Indicates a infinite node is configured."; + description + "Infinite Valid Lifetime"; + container infinite { + must "not(../preferred-lifetime)"; + presence "Indicates a infinite node is configured."; + description + "Infinite Preferred Lifetime"; + } + leaf preferred-lifetime { + type uint32 { + range "0..4294967294" { + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + } + must "not(../infinite)"; + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + } + leaf valid-lifetime { + type uint32 { + range "0..4294967294" { + description + "Valid Lifetime (secs)"; + } + } + must "not(../infinite or ../at or ../no-adv) and ../preferred-lifetime"; + description + "Valid Lifetime (secs)"; + } + leaf preferred-lifetime { + type uint32 { + range "0..4294967294" { + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + } + must "../valid-lifetime"; + description + "Preferred Lifetime (secs) must be <= Valid Lifetime"; + } + container at { + must "not(../valid-lifetime or ../infinite or ../no-adv)"; + presence "Indicates a at node is configured."; + description + "Expire prefix at a specific time/date"; + container expire-valid-lifetime { + description + "Expire prefix at a specific time/date"; + leaf month { + type enumeration { + enum "January" { + value 0; + description + "January"; + } + enum "February" { + value 1; + description + "February"; + } + enum "March" { + value 2; + description + "March"; + } + enum "April" { + value 3; + description + "April"; + } + enum "May" { + value 4; + description + "May"; + } + enum "June" { + value 5; + description + "June"; + } + enum "July" { + value 6; + description + "July"; + } + enum "August" { + value 7; + description + "August"; + } + enum "September" { + value 8; + description + "September"; + } + enum "October" { + value 9; + description + "October"; + } + enum "November" { + value 10; + description + "November"; + } + enum "December" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month to expire Valid Lifetime"; + } + leaf date { + type uint32 { + range "1..31" { + description + "Date to expire Valid Lifetime"; + } + } + mandatory true; + description + "Date to expire Valid Lifetime"; + } + leaf year { + type uint32 { + range "2003..2035" { + description + "Year to expire Valid Lifetime"; + } + } + mandatory true; + description + "Year to expire Valid Lifetime"; + } + leaf time-hour { + type uint32 { + range "0..23" { + description + "Time to expire Valid Lifetime (hh:mm)"; + } + } + mandatory true; + description + "Time to expire Valid Lifetime (hh:mm)"; + } + leaf time-minute { + type uint32 { + range "0..59" { + description + "Time to Valid (hh:mm)"; + } + } + mandatory true; + description + "Time to Valid (hh:mm)"; + } + } + container expire-preferred-lifetime { + description + "Expire prefix at a specific time/date"; + leaf month { + type enumeration { + enum "January" { + value 0; + description + "January"; + } + enum "February" { + value 1; + description + "February"; + } + enum "March" { + value 2; + description + "March"; + } + enum "April" { + value 3; + description + "April"; + } + enum "May" { + value 4; + description + "May"; + } + enum "June" { + value 5; + description + "June"; + } + enum "July" { + value 6; + description + "July"; + } + enum "August" { + value 7; + description + "August"; + } + enum "September" { + value 8; + description + "September"; + } + enum "October" { + value 9; + description + "October"; + } + enum "November" { + value 10; + description + "November"; + } + enum "December" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month to expire Preferred Lifetime"; + } + leaf date { + type uint32 { + range "1..31" { + description + "Date to expire Preferred Lifetime"; + } + } + mandatory true; + description + "Date to expire Preferred Lifetime"; + } + leaf year { + type uint32 { + range "2003..2035" { + description + "Year to expire Preferred Lifetime"; + } + } + mandatory true; + description + "Year to expire Preferred Lifetime"; + } + leaf time-hour { + type uint32 { + range "0..23" { + description + "Time to expire Preferred Lifetime (hh:mm)"; + } + } + mandatory true; + description + "Time to expire Preferred Lifetime (hh:mm)"; + } + leaf time-minute { + type uint32 { + range "0..59" { + description + "Time to Preferred (hh:mm)"; + } + } + mandatory true; + description + "Time to Preferred (hh:mm)"; + } + } + } + container off-link { + presence "Indicates a off-link node is configured."; + description + "Do not use prefix for onlink determination"; + } + container no-autoconfig { + presence "Indicates a no-autoconfig node is configured."; + description + "Do not use prefix for autoconfiguration"; + } + container no-adv { + must "not(../valid-lifetime or ../at or ../infinite)"; + presence "Indicates a no-adv node is configured."; + description + "Do not advertise prefix"; + } + } + } + } + leaf srp-encap { + type enumeration { + enum "SRP-A" { + value 5; + description + "Encapsulation type SRP, prefer side A"; + } + enum "SRP-B" { + value 6; + description + "Encapsulation type SRP, prefer side B"; + } + } + description + "Set SRP Unicast prefer encapsulation"; + } + leaf srp-mcast-encap { + type enumeration { + enum "SRP-A" { + value 5; + description + "Encapsulation type SRP, prefer side A"; + } + enum "SRP-B" { + value 6; + description + "Encapsulation type SRP, prefer side B"; + } + } + description + "Set SRP Mcast prefer encapsulation"; + } + container ra { + description + "IPv6 interface ND RA subcommands"; + container hoplimit { + description + "IPv6 ND RA hoplimit"; + container unspecified { + presence "Indicates a unspecified node is configured."; + description + "Unspecified IPv6 ND RA hop-limit value"; + } + } + container mtu { + description + "IPv6 ND RA mtu option configuration"; + container suppress { + presence "Indicates a suppress node is configured."; + description + "Suppress mtu option in IPv6 ND RA header"; + } + } + container dns { + description + "IPv6 ND RA DNS"; + container servers { + description + "IPv6 ND RA DNS Server"; + list server { + must "server-lifetime or infinite-lifetime or zero-lifetime"; + key "address"; + description + "IPv6 ND RA DNS Server"; + leaf address { + type inet:ipv6-address-no-zone; + description + "RA DNS Server IPv6 Address x:x::y"; + } + leaf server-lifetime { + type uint32 { + range "12..4294967295" { + description + "IPv6 RA DNS Server Lifetime Interval in Seconds,range should be between(3*(max ra lifetime)) <= dns lifetime <= 4294967295"; + } + } + must "not(../infinite-lifetime or ../zero-lifetime)"; + description + "IPv6 RA DNS Server Lifetime Interval in Seconds,range should be between(3*(max ra lifetime)) <= dns lifetime <= 4294967295"; + } + container infinite-lifetime { + must "not(../server-lifetime or ../zero-lifetime)"; + presence "Indicates a infinite-lifetime node is configured."; + description + "Infinite IPv6 RA DNS Server Lifetime"; + } + container zero-lifetime { + must "not(../server-lifetime or ../infinite-lifetime)"; + presence "Indicates a zero-lifetime node is configured."; + description + "Zero IPv6 RA DNS Server Lifetime"; + } + } + } + container search { + description + "IPv6 ND RA DNS Search"; + container lists { + description + "IPv6 ND RA DNS Search List"; + list list { + key "list-name"; + description + "IPv6 ND RA DNS Search List"; + leaf list-name { + type xr:Cisco-ios-xr-string { + length "1..255" { + description + "RA DNS Search List Name String"; + } + } + description + "IPv6 ND RA DNS Search List"; + } + leaf lifetime-interval { + type uint32 { + range "12..4294967295" { + description + "IPv6 RA DNS Search List Lifetime Interval in Seconds,range should be between (3*(max ra lifetime)) <= dns lifetime <= 4294967295"; + } + } + must "not(../infinite-lifetime or ../zero-lifetime)"; + description + "IPv6 RA DNS Search List Lifetime Interval in Seconds,range should be between (3*(max ra lifetime)) <= dns lifetime <= 4294967295"; + } + container infinite-lifetime { + must "not(../lifetime-interval or ../zero-lifetime)"; + presence "Indicates a infinite-lifetime node is configured."; + description + "Infinite IPv6 RA DNS Search List Lifetime"; + } + container zero-lifetime { + must "not(../lifetime-interval or ../infinite-lifetime)"; + presence "Indicates a zero-lifetime node is configured."; + description + "Zero IPv6 RA DNS Search List Lifetime"; + } + } + } + } + } + container specific { + description + "IPv6 ND RA Specific"; + container routes { + description + "IPv6 ND RA Specific Route"; + list route { + must "lifetime"; + key "prefix-address"; + description + "IPv6 ND RA Specific Route"; + leaf prefix-address { + type inet:ipv6-address-no-zone; + description + "RA Specific Route IPv6 prefix x:x::y/"; + } + leaf prefix-length { + type xr:Ipv6-prefix-length; + mandatory true; + description + "RA Specific Route IPv6 prefix x:x::y/"; + } + container lifetime { + must "lifetime-interval or infinite-lifetime or zero-lifetime"; + presence "Indicates a lifetime node is configured."; + description + "IPv6 RA Specific Route Lifetime"; + leaf lifetime-interval { + type uint32 { + range "0..4294967295" { + description + "IPv6 RA Specific Route Lifetime Interval in Seconds"; + } + } + must "not(../infinite-lifetime or ../zero-lifetime)"; + description + "IPv6 RA Specific Route Lifetime Interval in Seconds"; + } + container infinite-lifetime { + must "not(../lifetime-interval or ../zero-lifetime)"; + presence "Indicates a infinite-lifetime node is configured."; + description + "Infinite IPv6 RA Specific Route Lifetime"; + } + container zero-lifetime { + must "not(../lifetime-interval or ../infinite-lifetime)"; + presence "Indicates a zero-lifetime node is configured."; + description + "Zero IPv6 RA Specific Route Lifetime"; + } + container preference { + description + "IPv6 RA Specific Route preference"; + container high { + must "not(../medium or ../low)"; + presence "Indicates a high node is configured."; + description + "High RA Specific Route preference"; + } + container medium { + must "not(../high or ../low)"; + presence "Indicates a medium node is configured."; + description + "Medium RA Specific Route preference"; + } + container low { + must "not(../high or ../medium)"; + presence "Indicates a low node is configured."; + description + "Low RA Specific Route router preference"; + } + } + } + } + } + } + } + container proxy-nd { + presence "Indicates a proxy-nd node is configured."; + description + "Enable IPv6 ND proxy"; + } + container router-preference { + description + "IPv6 ND router-preference"; + container high { + must "not(../medium or ../low)"; + presence "Indicates a high node is configured."; + description + "High default router preference"; + } + container medium { + must "not(../high or ../low)"; + presence "Indicates a medium node is configured."; + description + "Medium default router preference"; + } + container low { + must "not(../high or ../medium)"; + presence "Indicates a low node is configured."; + description + "Low default router preference"; + } + } + } + } + + augment "/a1:interfaces/a1:interface/a1:ipv6" { + description + "This augment extends active nodes configuration"; + uses IF-IPV6-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a1:ipv6" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-IPV6-BODY; + } + container ipv6 { + description + "Global IPv6 configuration commands"; + container nd { + description + "IPv6 Neighbor Discovery subcommands"; + leaf cos { + if-feature "ipv6_nd_cos_supported"; + type uint32 { + range "0..7" { + description + "cos value"; + } + } + description + "Set cos value to outer vlan and inner vlan (if present) in all outgoing ND control packets"; + } + leaf scavenge-timeout { + type uint32 { + range "1..43200" { + description + "RA Lifetime (seconds)"; + } + } + description + "Set Lifetime for STALE neighbor entry"; + } + } + container neighbors { + description + "Neighbor"; + list neighbor { + key "address interface-name"; + description + "Neighbor"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Neighbor"; + } + leaf interface-name { + type xr:Interface-name; + description + "Enter interface"; + } + leaf zone { + type union { + type string { + pattern "0" { + description + "Default zone id"; + } + } + type string; + } + mandatory true; + description + "IPv6 address zone"; + } + leaf hardware-address { + type yang:mac-address; + mandatory true; + description + "48-bit hardware address"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-prefix-list-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-prefix-list-cfg.yang new file mode 100644 index 000000000..c509c3a46 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ipv6-prefix-list-cfg.yang @@ -0,0 +1,178 @@ +module Cisco-IOS-XR-um-ipv6-prefix-list-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ipv6-prefix-list-cfg"; + prefix um-ipv6-prefix-list-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 ipv6-prefix-list package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-03 { + description + "Limit Remark leaf length."; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Initial version"; + } + + container ipv6 { + description + "IPv6 prefix list"; + container prefix-lists { + description + "Prefix list"; + list prefix-list { + key "prefix-list-name"; + description + "prefix list"; + leaf prefix-list-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of a prefix list - maximum 32 characters"; + } + } + description + "Name of a prefix list - maximum 32 characters"; + } + container sequences { + description + "Sequence number"; + list sequence { + must "(remark and not(permission) and not(prefix) and not(mask) and not(zone) and not(match-prefix-length/ge or match-prefix-length/le or match-prefix-length/eq)) or (not(remark) and permission and prefix and mask)"; + key "sequence-number"; + description + "Sequence number"; + leaf sequence-number { + type uint32 { + range "1..2147483646" { + description + "Sequence number"; + } + } + description + "Sequence number"; + } + leaf remark { + type string { + length "0..255" { + description + "Comments for the prefix list entry item"; + } + } + description + "Comments for prefix list"; + } + leaf permission { + type enumeration { + enum "deny" { + value 0; + description + "Specify prefixes to reject"; + } + enum "permit" { + value 1; + description + "Specify prefixes to permit"; + } + } + description + "specify the type to be either deny (or) permit"; + } + leaf prefix { + type inet:ipv6-address-no-zone; + description + "IPv6 address prefix"; + } + leaf zone { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IPv6 zone if entered with IPv6 address"; + } + } + description + "IPv6 zone if entered with IPv6 address"; + } + leaf mask { + type xr:Ipv6-prefix-length; + description + "Mask length of IPv6 address"; + } + container match-prefix-length { + description + "Prefix length to be matched"; + leaf eq { + type uint32 { + range "0..128" { + description + "Prefix length"; + } + } + must "not(../ge or ../le)"; + description + "Exact prefix length to be matched"; + } + leaf ge { + type uint32 { + range "0..128" { + description + "Minimum prefix length"; + } + } + must "not(../eq)"; + description + "Minimum prefix length to be matched"; + } + leaf le { + type uint32 { + range "0..128" { + description + "Maximum prefix length"; + } + } + must "not(../eq)"; + description + "Maximum prefix length to be matched"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-key-chain-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-key-chain-cfg.yang new file mode 100644 index 000000000..11055e7f4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-key-chain-cfg.yang @@ -0,0 +1,1095 @@ +module Cisco-IOS-XR-um-key-chain-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-key-chain-cfg"; + prefix um-key-chain-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 key-chain package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-22 { + description + "Added timezone container"; + semver:module-version "1.1.0"; + } + revision 2021-01-05 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature check_input_hex_string_length_typ6 { + description + "check input hex string length typ6"; + } + + feature check_input_hex_string_length { + description + "check input hex string length"; + } + + feature check_input_number { + description + "check input number"; + } + + container key { + description + "Configure a key"; + container chains { + description + "Configure a Key Chain "; + list chain { + key "key-chain-name"; + description + "Name of the key chain - maximum 32 characters"; + leaf key-chain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the key chain - maximum 32 characters"; + } + } + description + "Name of the key chain - maximum 32 characters"; + } + container accept-tolerance { + description + "Configure a tolerance value for accept keys of this keychain"; + leaf tolerance-value { + type uint32 { + range "1..8640000" { + description + "Configure a tolerance-value"; + } + } + description + "Configure a tolerance-value"; + } + container infinite { + presence "Indicates a infinite node is configured."; + description + "Never expires"; + } + } + container macsec { + presence "Indicates a macsec node is configured."; + description + "Configures as macsec key chain"; + container keys { + description + "Configure CKN for macsec PSK"; + list key { + key "ckn"; + description + "Configure CKN for macsec PSK"; + leaf ckn { + type xr:Cisco-ios-xr-string { + length "2..64" { + description + "Enter CKN as non-zero hex string of even length, i.e 1-32 bytes of MACsec CKN"; + } + } + description + "Configure CKN for macsec PSK"; + } + container key-string { + must "password or password6"; + presence "Indicates a key-string node is configured."; + description + "Configure CAK as hex string"; + leaf password { + type xr:Proprietary-password; + must "not(../password6)"; + description + "Enter encrypted CAK as hex string"; + } + leaf password6 { + if-feature "check_input_hex_string_length_typ6"; + if-feature "check_input_hex_string_length"; + type xr:Type6-password; + must "not(../password)"; + description + "Enter encrypted type6 password"; + } + leaf cryptographic-algorithm { + type enumeration { + enum "aes-128-cmac" { + value 7; + description + "aes 128 cmac"; + } + enum "aes-256-cmac" { + value 8; + description + "aes 256 cmac"; + } + } + mandatory true; + description + "Cryptographic Algorithm"; + } + } + container lifetime { + description + "Configure lifetime"; + container start-time { + must "../end-time or ../duration or ../infinite"; + presence "Indicates a start-time node is configured."; + description + "Configure lifetime start time"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time minute"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time second"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + mandatory true; + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + mandatory true; + description + "Year"; + } + } + container end-time { + must "../start-time and not(../duration) and not(../infinite)"; + presence "Indicates a end-time node is configured."; + description + "Configure lifetime end time"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time minute"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time second"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + mandatory true; + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + mandatory true; + description + "Year"; + } + } + leaf duration { + type uint32 { + range "1..2147483646" { + description + "duration in seconds"; + } + } + must "../start-time and not(../end-time) and not(../infinite)"; + description + "Lifetime duration"; + } + container infinite { + must "../start-time and not(../end-time) and not(../duration)"; + presence "Indicates a infinite node is configured."; + description + "Never expires"; + } + } + } + } + } + container keys { + description + "Configure a Key"; + list key { + if-feature "check_input_number"; + key "key-name"; + description + "Configure a Key"; + leaf key-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Enter 48-bit integer [0 - 281474976710655]"; + } + pattern "[0-9]{1,15}"; + } + description + "Configure a Key"; + } + container key-string { + description + "Configure a key value"; + leaf password { + type xr:Proprietary-password; + must "not(../password6)"; + description + "Encrypted key string (even number of characters with first two as digits and sum less than 53, and rest of the characters should be hex digits)"; + } + leaf password6 { + if-feature "check_input_hex_string_length_typ6"; + if-feature "check_input_hex_string_length"; + type xr:Type6-password; + must "not(../password)"; + description + "Enter encrypted type6 password"; + } + } + container send-lifetime { + description + "Configure send-lifetime"; + container start-time { + must "../end-time or ../duration or ../infinite"; + presence "Indicates a start-time node is configured."; + description + "Configure send-lifetime start time"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time minute"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time second"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + mandatory true; + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + mandatory true; + description + "Year"; + } + } + container end-time { + must "../start-time and not(../duration) and not(../infinite)"; + presence "Indicates a end-time node is configured."; + description + "Configure send-lifetime end time"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time minute"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time second"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + mandatory true; + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + mandatory true; + description + "Year"; + } + } + leaf duration { + type uint32 { + range "1..2147483646" { + description + "duration in seconds"; + } + } + must "../start-time and not(../end-time) and not(../infinite)"; + description + "Lifetime duration"; + } + container infinite { + must "../start-time and not(../end-time) and not(../duration)"; + presence "Indicates a infinite node is configured."; + description + "Never expires"; + } + } + container accept-lifetime { + description + "Configure accept-lifetime"; + container start-time { + must "../end-time or ../duration or ../infinite"; + presence "Indicates a start-time node is configured."; + description + "Configure accept-lifetime start time"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time minute"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time to start (hh:mm:ss)"; + } + } + mandatory true; + description + "Start time second"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + mandatory true; + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + mandatory true; + description + "Year"; + } + } + container end-time { + must "../start-time and not(../duration) and not(../infinite)"; + presence "Indicates a end-time node is configured."; + description + "Configure accept-lifetime end time"; + leaf hour { + type uint32 { + range "0..23" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time hour"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time minute"; + } + leaf second { + type uint32 { + range "0..59" { + description + "Time to end (hh:mm:ss)"; + } + } + mandatory true; + description + "End time second"; + } + leaf month { + type enumeration { + enum "january" { + value 0; + description + "January"; + } + enum "february" { + value 1; + description + "February"; + } + enum "march" { + value 2; + description + "March"; + } + enum "april" { + value 3; + description + "April"; + } + enum "may" { + value 4; + description + "May"; + } + enum "june" { + value 5; + description + "June"; + } + enum "july" { + value 6; + description + "July"; + } + enum "august" { + value 7; + description + "August"; + } + enum "september" { + value 8; + description + "September"; + } + enum "october" { + value 9; + description + "October"; + } + enum "november" { + value 10; + description + "November"; + } + enum "december" { + value 11; + description + "December"; + } + } + mandatory true; + description + "Month of the year"; + } + leaf day-of-month { + type uint32 { + range "1..31" { + description + "Day of the month"; + } + } + mandatory true; + description + "Day of the month"; + } + leaf year { + type uint32 { + range "1993..2035" { + description + "Year"; + } + } + mandatory true; + description + "Year"; + } + } + leaf duration { + type uint32 { + range "1..2147483646" { + description + "duration in seconds"; + } + } + must "../start-time and not(../end-time) and not(../infinite)"; + description + "Lifetime duration"; + } + container infinite { + must "../start-time and not(../end-time) and not(../duration)"; + presence "Indicates a infinite node is configured."; + description + "Never expires"; + } + } + leaf cryptographic-algorithm { + type enumeration { + enum "md5" { + value 3; + description + "Configure MD5 as cryptographic algorithm"; + } + enum "sha-1" { + value 4; + description + "Configure SHA-1-20 as cryptographic algorithm"; + } + enum "hmac-md5" { + value 5; + description + "Configure HMAC-MD5 as cryptographic algorithm"; + } + enum "hmac-sha1-20" { + value 6; + description + "Configure HMAC-SHA1-20 as cryptographic algorithm"; + } + enum "hmac-sha1-12" { + value 2; + description + "Configure HMAC-SHA1-12 as cryptographic algorithm"; + } + enum "hmac-sha1-96" { + value 9; + description + "Configure HMAC-SHA1-96 as cryptographic algorithm"; + } + enum "hmac-sha-256" { + value 10; + description + "Configure HMAC-SHA-256 as cryptographic algorithm"; + } + enum "aes-128-cmac-96" { + value 1; + description + "Configure AES-128-CMAC-96 as cryptographic algorithm"; + } + } + description + "Choose cryptographic algorithm"; + } + } + } + container timezone { + description + "Configure the timezone for the keychain"; + container local { + must "not(../gmt)"; + presence "Indicates a local node is configured."; + description + "Router Local Timezone"; + } + container gmt { + must "not(../local)"; + presence "Indicates a gmt node is configured."; + description + "GMT (UTC) Timezone"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2-ethernet-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2-ethernet-cfg.yang new file mode 100644 index 000000000..8b226a0c9 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2-ethernet-cfg.yang @@ -0,0 +1,2446 @@ +module Cisco-IOS-XR-um-l2-ethernet-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-l2-ethernet-cfg"; + prefix um-l2-ethernet-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-if-l2transport-cfg { + prefix a2; + } + import tailf-common { + prefix tailf; + } + 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 l2-ethernet package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-10 { + description + "Added must statement dot1q, dot1ad, untagged, and default + 2022-07-11 + Added missing description statement to nodes + 2022-06-18 + Added container list-extended to support 64 vlan ranges + 2022-03-10 + 1.Added leaf dot1q-end-vlan-id under l2transport-encapsulation/dot1ad + 2.Added leaf second-dot1q-end-vlan-id under l2transport-encapsulation/dot1q"; + semver:module-version "4.0.0"; + } + revision 2021-03-30 { + description + "Updated with statement for 800G interface"; + semver:module-version "3.0.0"; + } + revision 2021-02-19 { + description + "Updated when/must statement under carrier-delay, l2transport-encapsulation, + encapsulation, l2protocol container. + 2020-08-01 + Added when/must statement under encapsulation container. + Added feature/if-feature for global ethernet config."; + semver:module-version "2.0.0"; + } + revision 2020-03-05 { + description + "Initial draft"; + semver:module-version "1.0.0"; + } + + feature global-ethernet { + description + "Global ethernet configuration"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container carrier-delay { + when "(../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'Bundle-Ether')] or ../a1:interface-name[starts-with(text(),'PW-Ether')])and ../a1:interface-name[contains(text(),'.')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Set the carrier delay on an interface"; + leaf up { + type uint32 { + range "1..65535" { + description + "Up delay in milliseconds"; + } + } + description + "Set the carrier delay up value"; + } + } + container encapsulation { + when "(../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'Bundle-Ether')] or ../a1:interface-name[starts-with(text(),'PW-Ether')])and ../a1:interface-name[contains(text(),'.')]and not(../a1:sub-interface-type/a1:l2transport)" { + tailf:dependency "../a1:interface-name"; + } + description + "Specify which packets will be matched by this sub-interface"; + container dot1q { + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "Configure first (outer) VLAN ID on the subinterface"; + } + } + description + "Configure first (outer) VLAN ID on the subinterface"; + } + leaf second-dot1q { + type uint32 { + range "1..4094" { + description + "Configure second (inner 802.1Q) VLAN ID on the subinterface"; + } + } + must "../vlan-id"; + description + "Configure second (inner 802.1Q) VLAN ID on the subinterface"; + } + } + container dot1ad { + description + "IEEE 802.1ad VLAN-tagged packets"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "Configure first (outer) VLAN ID on the subinterface"; + } + } + description + "Configure first (outer) VLAN ID on the subinterface"; + } + leaf dot1q { + type uint32 { + range "1..4094" { + description + "Configure second (inner 802.1Q) VLAN ID on the subinterface"; + } + } + must "../vlan-id"; + description + "Configure second (inner 802.1Q) VLAN ID on the subinterface"; + } + } + } + container l2transport-encapsulation { + when "(../a1:interface-name[starts-with(text(),'FastEthernet')] or ../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../a1:interface-name[starts-with(text(),'TenGigE')] or ../a1:interface-name[starts-with(text(),'FortyGigE')] or ../a1:interface-name[starts-with(text(),'HundredGigE')] or ../a1:interface-name[starts-with(text(),'TwoHundredGigE')] or ../a1:interface-name[starts-with(text(),'FourHundredGigE')] or ../a1:interface-name[starts-with(text(),'EightHundredGigE')] or ../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../a1:interface-name[starts-with(text(),'FiftyGigE')] or ../a1:interface-name[starts-with(text(),'Bundle-Ether')] or ../a1:interface-name[starts-with(text(),'PW-Ether')])and ../a1:interface-name[contains(text(),'.')]and ../a1:sub-interface-type/a1:l2transport" { + tailf:dependency "../a1:interface-name"; + } + description + "Specify which packets will be matched by this sub-interface"; + container dot1q { + must "(vlan-id or priority-tagged) and not(../dot1ad or ../untagged or ../default)"; + presence "Indicates dot1q node is configured."; + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN id"; + } + } + } + must "not(../priority-tagged)"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + type enumeration { + enum "not-set" { + value 4097; + description + "Need to set this when configuring additional vlan-id with a single VLAN id"; + } + } + } + must "../vlan-id and ../vlan-id != 'any'"; + description + "End of VLAN range"; + } + leaf vlan-id-2 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id and ../vlan-id != 'any' and ../end-vlan-id"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-2 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-2"; + description + "End of VLAN range"; + } + leaf vlan-id-3 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id-2"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-3 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-3"; + description + "End of VLAN range"; + } + leaf vlan-id-4 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id-3"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-4 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-4"; + description + "End of VLAN range"; + } + leaf vlan-id-5 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id-4"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-5 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-5"; + description + "End of VLAN range"; + } + leaf vlan-id-6 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id-5"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-6 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-6"; + description + "End of VLAN range"; + } + leaf vlan-id-7 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id-6"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-7 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-7"; + description + "End of VLAN range"; + } + leaf vlan-id-8 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id-7"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-8 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-8"; + description + "End of VLAN range"; + } + leaf vlan-id-9 { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "untagged" { + value 65534; + description + "Packets with no explicit VLAN tag"; + } + } + } + must "../vlan-id-8"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-9 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-9"; + description + "End of VLAN range"; + } + leaf second-dot1q { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN id"; + } + } + } + must "../vlan-id"; + description + "Single VLAN id or start of VLAN range"; + } + leaf second-dot1q-end-vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + type enumeration { + enum "not-set" { + value 4097; + description + "Need to set this when configuring additional vlan-id with a single VLAN id"; + } + } + } + must "../vlan-id and ../vlan-id != 'any'"; + description + "End of VLAN range"; + } + container exact { + presence "Indicates this node is configured."; + description + "Do not allow further inner tags"; + } + container ingress { + description + "Perform MAC-based matching"; + leaf source-mac { + type yang:mac-address; + description + "Perform source MAC-based matching"; + } + } + container priority-tagged { + must "not(../vlan-id)"; + presence "Indicates a priority-tagged node is configured."; + description + "IEEE 802.1ad priority-tagged packets"; + container dot1q { + presence "Indicates a dot1q node is configured."; + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN id"; + } + } + } + mandatory true; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id { + type uint32 { + range "1..4094" { + description + "End of VLAN range."; + } + } + must "../vlan-id != 'any'"; + description + "End of VLAN range"; + } + leaf vlan-id-2 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id != 'any'"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-2 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-2"; + description + "End of VLAN range"; + } + leaf vlan-id-3 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-2"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-3 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-3"; + description + "End of VLAN range"; + } + leaf vlan-id-4 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-3"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-4 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-4"; + description + "End of VLAN range"; + } + leaf vlan-id-5 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-4"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-5 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-5"; + description + "End of VLAN range"; + } + leaf vlan-id-6 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-5"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-6 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-6"; + description + "End of VLAN range"; + } + leaf vlan-id-7 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-6"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-7 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-7"; + description + "End of VLAN range"; + } + leaf vlan-id-8 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-7"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-8 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-8"; + description + "End of VLAN range"; + } + leaf vlan-id-9 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-8"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-9 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-9"; + description + "End of VLAN range"; + } + } + container exact { + presence "Indicates this node is configured."; + description + "Do not allow further inner tags"; + } + container ingress { + description + "Perform MAC-based matching"; + leaf source-mac { + type yang:mac-address; + description + "Perform source MAC-based matching"; + } + } + } + } + container dot1ad { + must "(vlan-id or priority-tagged) and not(../dot1q or ../untagged or ../default)"; + presence "Indicates dot1ad node is configured."; + description + "IEEE 802.1ad VLAN-tagged packets"; + leaf vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN id"; + } + } + } + must "not(../priority-tagged)"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + type enumeration { + enum "not-set" { + value 4097; + description + "Need to set this when configuring additional vlan-id with a single VLAN id"; + } + } + } + must "../vlan-id and ../vlan-id != 'any'"; + description + "End of VLAN range"; + } + leaf vlan-id-2 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id and ../vlan-id != 'any' and ../end-vlan-id"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-2 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-2"; + description + "End of VLAN range"; + } + leaf vlan-id-3 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-2"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-3 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-3"; + description + "End of VLAN range"; + } + leaf vlan-id-4 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-3"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-4 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-4"; + description + "End of VLAN range"; + } + leaf vlan-id-5 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-4"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-5 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-5"; + description + "End of VLAN range"; + } + leaf vlan-id-6 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-5"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-6 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-6"; + description + "End of VLAN range"; + } + leaf vlan-id-7 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-6"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-7 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-7"; + description + "End of VLAN range"; + } + leaf vlan-id-8 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-7"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-8 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-8"; + description + "End of VLAN range"; + } + leaf vlan-id-9 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-8"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-9 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-9"; + description + "End of VLAN range"; + } + leaf dot1q { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN id"; + } + } + } + must "../vlan-id"; + description + "Single VLAN id or start of VLAN range"; + } + leaf dot1q-end-vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + type enumeration { + enum "not-set" { + value 4097; + description + "Need to set this when configuring additional vlan-id with a single VLAN id"; + } + } + } + must "../vlan-id and ../vlan-id != 'any'"; + description + "End of VLAN range"; + } + container exact { + presence "Indicates this node is configured."; + description + "Do not allow further inner tags"; + } + container ingress { + description + "Perform MAC-based matching"; + leaf source-mac { + type yang:mac-address; + description + "Perform source MAC-based matching"; + } + } + container priority-tagged { + must "not(../vlan-id)"; + presence "Indicates a priority-tagged node is configured."; + description + "IEEE 802.1ad priority-tagged packets"; + container dot1q { + presence "Indicates a dot1q node is configured."; + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN id"; + } + } + } + mandatory true; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id { + type uint32 { + range "1..4094" { + description + "End of VLAN range."; + } + } + must "../vlan-id != 'any'"; + description + "End of VLAN range"; + } + leaf vlan-id-2 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id != 'any'"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-2 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-2"; + description + "End of VLAN range"; + } + leaf vlan-id-3 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-2"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-3 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-3"; + description + "End of VLAN range"; + } + leaf vlan-id-4 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-3"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-4 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-4"; + description + "End of VLAN range"; + } + leaf vlan-id-5 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-4"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-5 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-5"; + description + "End of VLAN range"; + } + leaf vlan-id-6 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-5"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-6 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-6"; + description + "End of VLAN range"; + } + leaf vlan-id-7 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-6"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-7 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-7"; + description + "End of VLAN range"; + } + leaf vlan-id-8 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-7"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-8 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-8"; + description + "End of VLAN range"; + } + leaf vlan-id-9 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-8"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-9 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-9"; + description + "End of VLAN range"; + } + } + container exact { + presence "Indicates this node is configured."; + description + "Do not allow further inner tags"; + } + container ingress { + description + "Perform MAC-based matching"; + leaf source-mac { + type yang:mac-address; + description + "Perform source MAC-based matching"; + } + } + } + } + container untagged { + must "not (../dot1q or ../dot1ad or ../default)"; + presence "Indicates untagged node is configured."; + description + "Packets with no explicit VLAN tag"; + container dot1q { + presence "Indicates a dot1q node is configured."; + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-id { + type union { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + type enumeration { + enum "any" { + value 4096; + description + "Match any VLAN id"; + } + } + } + mandatory true; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id { + type uint32 { + range "1..4094" { + description + "End of VLAN range."; + } + } + must "../vlan-id != 'any'"; + description + "End of VLAN range"; + } + leaf vlan-id-2 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id != 'any'"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-2 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-2"; + description + "End of VLAN range"; + } + leaf vlan-id-3 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-2"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-3 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-3"; + description + "End of VLAN range"; + } + leaf vlan-id-4 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-3"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-4 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-4"; + description + "End of VLAN range"; + } + leaf vlan-id-5 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-4"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-5 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-5"; + description + "End of VLAN range"; + } + leaf vlan-id-6 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-5"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-6 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-6"; + description + "End of VLAN range"; + } + leaf vlan-id-7 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-6"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-7 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-7"; + description + "End of VLAN range"; + } + leaf vlan-id-8 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-7"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-8 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-8"; + description + "End of VLAN range"; + } + leaf vlan-id-9 { + type uint32 { + range "1..4094" { + description + "Single VLAN id"; + } + } + must "../vlan-id-8"; + description + "Single VLAN id or start of VLAN range"; + } + leaf end-vlan-id-9 { + type uint32 { + range "1..4094" { + description + "End of VLAN range"; + } + } + must "../vlan-id-9"; + description + "End of VLAN range"; + } + } + container ingress { + description + "Perform MAC-based matching"; + leaf source-mac { + type yang:mac-address; + description + "Perform source MAC-based matching"; + } + } + } + container default { + must "not (../dot1q or ../dot1ad or ../untagged)"; + presence "Indicates default node is configured."; + description + "Packets unmatched by other service instances"; + } + container list-extended { + description + "Specify extended encapsulation config(Allows more than 9 vlan-ranges)"; + container dot1q { + presence "Indicates a dot1q node is configured."; + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-ranges { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + mandatory true; + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + leaf outer-cos { + type uint32 { + range "0..7" { + description + "Value to match against the PCP bits"; + } + } + description + "Specify outer PCP bits"; + } + leaf second-dot1q { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + description + "IEEE 802.1Q VLAN-tagged packets"; + } + leaf inner-cos { + type uint32 { + range "0..7" { + description + "Value to match against the PCP bits"; + } + } + must "../second-dot1q"; + description + "Specify inner PCP bits"; + } + container exact { + presence "Indicates a exact node is configured."; + description + "Do exact match of the given tags and do not allow further inner tags"; + } + container payload-ethertype-pppoe { + presence "Indicates a pppoe node is configured."; + description + "Ethertype: PPP over Ethernet"; + } + container ingress { + description + "Perform MAC-based matching"; + leaf source-mac { + type yang:mac-address; + description + "Perform source MAC-based matching"; + } + leaf destination-mac { + type yang:mac-address; + description + "Perform destination MAC-based matching"; + } + } + } + container dot1ad { + presence "Indicates a dot1ad node is configured."; + description + "IEEE 802.1ad VLAN-tagged packets"; + leaf vlan-ranges { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + mandatory true; + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + leaf outer-cos { + type uint32 { + range "0..7" { + description + "Value to match against the PCP bits"; + } + } + description + "Specify outer PCP bits"; + } + leaf dot1q { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List of inner VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + description + "IEEE 802.1Q VLAN-tagged packets"; + } + leaf inner-cos { + type uint32 { + range "0..7" { + description + "Value to match against the PCP bits"; + } + } + must "../dot1q"; + description + "Specify inner PCP bits"; + } + container exact { + presence "Indicates a exact node is configured."; + description + "Do exact match of the given tags and do not allow further inner tags"; + } + container payload-ethertype-pppoe { + presence "Indicates a pppoe node is configured."; + description + "Ethertype: PPP over Ethernet"; + } + container ingress { + description + "Perform MAC-based matching"; + leaf source-mac { + type yang:mac-address; + description + "Perform source MAC-based matching"; + } + leaf destination-mac { + type yang:mac-address; + description + "Perform destination MAC-based matching"; + } + } + } + } + } + container rewrite { + description + "Set the tag rewriting policy for this EFP"; + container ingress { + description + "Set the tag rewriting policy for this EFP"; + container tag { + description + "Set the tag rewriting policy for this EFP"; + container push { + description + "Push one or more tags"; + container dot1q { + must + "not(../dot1ad or + ../../pop/one or + ../../pop/two or + ../../translate/one-to-one/dot1q or + ../../translate/one-to-one/dot1ad or + ../../translate/one-to-two/dot1q or + ../../translate/one-to-two/dot1ad or + ../../translate/two-to-one/dot1q or + ../../translate/two-to-one/dot1ad or + ../../translate/two-to-two/dot1q or + ../../translate/two-to-two/dot1ad)"; + presence "Indicates dot1q node is configured."; + description + "Push a Dot1Q tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + leaf second-dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + description + "Push another Dot1Q tag"; + } + } + container dot1ad { + must + "not(../dot1q or + ../../pop/one or + ../../pop/two or + ../../translate/one-to-one/dot1q or + ../../translate/one-to-one/dot1ad or + ../../translate/one-to-two/dot1q or + ../../translate/one-to-two/dot1ad or + ../../translate/two-to-one/dot1q or + ../../translate/two-to-one/dot1ad or + ../../translate/two-to-two/dot1q or + ../../translate/two-to-two/dot1ad)"; + presence "Indicates dot1ad node is configured."; + description + "Push a Dot1ad tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + leaf dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + description + "Push an inner Dot1Q tag"; + } + } + } + container pop { + description + "Remove one or more tags"; + container one { + must + "not(../../push/dot1q or + ../../push/dot1ad or + ../two or + ../../translate/one-to-one/dot1q or + ../../translate/one-to-one/dot1ad or + ../../translate/one-to-two/dot1q or + ../../translate/one-to-two/dot1ad or + ../../translate/two-to-one/dot1q or + ../../translate/two-to-one/dot1ad or + ../../translate/two-to-two/dot1q or + ../../translate/two-to-two/dot1ad)"; + presence "Indicates this node is configured."; + description + "Remove outer tag only"; + } + container two { + must + "not(../../push/dot1q or + ../../push/dot1ad or + ../one or + ../../translate/one-to-one/dot1q or + ../../translate/one-to-one/dot1ad or + ../../translate/one-to-two/dot1q or + ../../translate/one-to-two/dot1ad or + ../../translate/two-to-one/dot1q or + ../../translate/two-to-one/dot1ad or + ../../translate/two-to-two/dot1q or + ../../translate/two-to-two/dot1ad)"; + presence "Indicates this node is configured."; + description + "Remove two outermost tags"; + } + } + container translate { + description + "Replace tags with other tags"; + container one-to-one { + description + "Replace the outermost tag with another tag"; + container dot1q { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../dot1ad or + ../../one-to-two/dot1q or + ../../one-to-two/dot1ad or + ../../two-to-one/dot1q or + ../../two-to-one/dot1ad or + ../../two-to-two/dot1q or + ../../two-to-two/dot1ad)"; + presence "Indicates dot1q node is configured."; + description + "Push a Dot1Q tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + } + container dot1ad { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../dot1q or + ../../one-to-two/dot1q or + ../../one-to-two/dot1ad or + ../../two-to-one/dot1q or + ../../two-to-one/dot1ad or + ../../two-to-two/dot1q or + ../../two-to-two/dot1ad)"; + presence "Indicates dot1ad node is configured."; + description + "Push a Dot1ad tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + } + } + container one-to-two { + description + "Replace the outermost tag with two tags"; + container dot1q { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../../one-to-one/dot1q or + ../../one-to-one/dot1ad or + ../dot1ad or + ../../two-to-one/dot1q or + ../../two-to-one/dot1ad or + ../../two-to-two/dot1q or + ../../two-to-two/dot1ad)"; + presence "Indicates a dot1q node is configured."; + description + "Push a Dot1Q tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + leaf second-dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push an inner Dot1Q tag"; + } + } + container dot1ad { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../../one-to-one/dot1q or + ../../one-to-one/dot1ad or + ../dot1q or + ../../two-to-one/dot1q or + ../../two-to-one/dot1ad or + ../../two-to-two/dot1q or + ../../two-to-two/dot1ad)"; + presence "Indicates a dot1ad node is configured."; + description + "Push a Dot1ad tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + leaf dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push an inner Dot1Q tag"; + } + } + } + container two-to-one { + description + "Replace the outermost two tags with one tag"; + container dot1q { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../../one-to-one/dot1q or + ../../one-to-one/dot1ad or + ../../one-to-two/dot1q or + ../../one-to-two/dot1ad or + ../dot1ad or + ../../two-to-two/dot1q or + ../../two-to-two/dot1ad)"; + presence "Indicates dot1q node is configured."; + description + "Push a Dot1Q tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + } + container dot1ad { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../../one-to-one/dot1q or + ../../one-to-one/dot1ad or + ../../one-to-two/dot1q or + ../../one-to-two/dot1ad or + ../dot1q or + ../../two-to-two/dot1q or + ../../two-to-two/dot1ad)"; + presence "Indicates dot1ad node is configured."; + description + "Push a Dot1ad tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + } + } + container two-to-two { + description + "Replace the outermost two tags with two other tags"; + container dot1q { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../../one-to-one/dot1q or + ../../one-to-one/dot1ad or + ../../one-to-two/dot1q or + ../../one-to-two/dot1ad or + ../dot1ad or + ../../two-to-one/dot1q or + ../../two-to-one/dot1ad)"; + presence "Indicates a dot1q node is configured."; + description + "Push a Dot1Q tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + leaf second-dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push an inner Dot1Q tag"; + } + } + container dot1ad { + must + "not(../../../push/dot1q or + ../../../push/dot1ad or + ../../../pop/one or + ../../../pop/two or + ../../one-to-one/dot1q or + ../../one-to-one/dot1ad or + ../../one-to-two/dot1q or + ../../one-to-two/dot1ad or + ../dot1q or + ../../two-to-one/dot1q or + ../../two-to-one/dot1ad)"; + presence "Indicates a dot1ad node is configured."; + description + "Push a Dot1ad tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push a Dot1Q tag"; + } + leaf dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Push an inner Dot1Q tag"; + } + } + } + } + } + } + } + container local-traffic { + description + "Set the default encapsulation for this EFP"; + container default { + description + "Set the default encapsulation for this EFP"; + container encapsulation { + description + "Set the default encapsulation for this EFP"; + container dot1q { + presence "Indicates a dot1q node is configured."; + description + "Default Dot1Q tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Default Dot1Q tag"; + } + leaf second-dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + description + "Default second Dot1Q tag"; + } + } + container dot1ad { + presence "Indicates a dot1ad node is configured."; + description + "Default Dot1ad tag"; + leaf vlan-id { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + mandatory true; + description + "Default Dot1ad tag"; + } + leaf dot1q { + type uint32 { + range "1..4094" { + description + "VLAN Id to push"; + } + } + description + "Default inner Dot1Q tag"; + } + } + } + } + } + container dot1q { + description + "802.1Q VLAN configuration"; + container native { + description + "802.1Q Native VLAN configuration"; + leaf vlan { + type uint32 { + range "1..4094" { + description + "Configure the Native VLAN ID for the trunk"; + } + } + description + "Configure the Native VLAN ID for the trunk"; + } + } + container tunneling { + description + "Q-in-Q configuration"; + leaf ethertype { + type enumeration { + enum "0x9100" { + value 37120; + description + "The outer Ethertype uses value 0x9100 (default is 0x8100)"; + } + enum "0x9200" { + value 37376; + description + "The outer Ethertype uses value 0x9200 (default is 0x8100)"; + } + } + description + "Configure the outer Ethertype used for Q-in-Q frames"; + } + } + } + container mac-accounting { + description + "Start per MAC address accounting on the interface"; + container ingress { + presence "Indicates a ingress node is configured."; + description + "Enable accounting on ingress direction"; + } + container egress { + presence "Indicates a egress node is configured."; + description + "Enable accounting on egress direction"; + } + } + container vlan-switched { + description + "Enable vlan-switched on this interface"; + container trunk { + description + "Enable vlan-switched on trunk port"; + container dot1q { + description + "IEEE 802.1Q VLAN-tagged packets"; + leaf vlan-ranges { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + must "not(../../dot1ad/vlan-ranges) and not(../../../access)"; + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + container dot1ad { + description + "IEEE 802.1ad VLAN-tagged packets"; + leaf vlan-ranges { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + must "not(../../dot1q/vlan-ranges) and not(../../../access)"; + description + "List of VLAN Ranges in the form a-b,c,d,e-f,g"; + } + } + } + leaf access { + type uint32 { + range "1..4094" { + description + "VLAN ID"; + } + } + must "not(../trunk/dot1q/vlan-ranges) and not(../trunk/dot1ad/vlan-ranges)"; + description + "Enable vlan-switched on access port"; + } + } + } + + grouping L2TRANS-BODY { + description + "Grouping for l2transport"; + container l2protocol { + when "(../../a1:interface-name[starts-with(text(),'FastEthernet')] or ../../a1:interface-name[starts-with(text(),'GigabitEthernet')] or ../../a1:interface-name[starts-with(text(),'TenGigE')] or ../../a1:interface-name[starts-with(text(),'FortyGigE')] or ../../a1:interface-name[starts-with(text(),'HundredGigE')] or ../../a1:interface-name[starts-with(text(),'TwentyFiveGigE')] or ../../a1:interface-name[starts-with(text(),'Ethernet')] or ../../a1:interface-name[starts-with(text(),'Bundle-Ether')] or ../../a1:interface-name[starts-with(text(),'PW-Ether')] or ../../a1:interface-name[starts-with(text(),'Interflex')]) and (../../a1:interface-name[not(contains(text(),'.'))] or ../../a1:sub-interface-type/a1:l2transport)" { + tailf:dependency "../../a1:interface-name"; + } + description + "Layer 2 protocol handling"; + container cpsv { + description + "CDP, PVST+, STP, and VTP protocols"; + container tunnel { + must "not(../reverse-tunnel) and not(../drop)"; + presence "Indicates a tunnel node is configured."; + description + "Tunnel at ingress"; + } + container reverse-tunnel { + must "not(../tunnel) and not(../drop)"; + presence "Indicates a reverse-tunnel node is configured."; + description + "Tunnel at egress"; + } + container drop { + must "not(../tunnel) and not(../reverse-tunnel)"; + presence "Indicates a drop node is configured."; + description + "Drop these protocol packets"; + } + } + container cdp { + description + "Cisco Discovery Protocol"; + container drop { + must "not(../tunnel) and not(../forward)"; + presence "Indicates a drop node is configured."; + description + "Drop this protocol's packets"; + } + container forward { + must "not(../drop) and not(../tunnel)"; + presence "Indicates a forward node is configured."; + description + "Forward this protocol's packets"; + } + container tunnel { + must "not(../drop) and not(../forward)"; + presence "Indicates a tunnel node is configured."; + description + "Tunnel this protocol's packets"; + } + container experimental { + description + "Modify the MPLS Experimental bits"; + leaf mpls-experimental-bits { + type uint32 { + range "0..7" { + description + "Set the MPLS experimental bits for this interface"; + } + } + must "../../forward or ../../tunnel"; + description + "Set the MPLS experimental bits for this interface"; + } + } + } + container stp { + description + "Spanning Tree Protocol"; + container drop { + must "not(../tunnel) and not(../forward)"; + presence "Indicates a drop node is configured."; + description + "Drop this protocol's packets"; + } + container forward { + must "not(../drop) and not(../tunnel)"; + presence "Indicates a forward node is configured."; + description + "Forward this protocol's packets"; + } + container tunnel { + must "not(../drop) and not(../forward)"; + presence "Indicates a tunnel node is configured."; + description + "Tunnel this protocol's packets"; + } + container experimental { + description + "Modify the MPLS Experimental bits"; + leaf mpls-experimental-bits { + type uint32 { + range "0..7" { + description + "Set the MPLS experimental bits for this interface"; + } + } + must "../../forward or ../../tunnel"; + description + "Set the MPLS experimental bits for this interface"; + } + } + } + container vtp { + description + "VLAN Trunk Protocol"; + container drop { + must "not(../tunnel) and not(../forward)"; + presence "Indicates a drop node is configured."; + description + "Drop this protocol's packets"; + } + container forward { + must "not(../drop) and not(../tunnel)"; + presence "Indicates a forward node is configured."; + description + "Forward this protocol's packets"; + } + container tunnel { + must "not(../drop) and not(../forward)"; + presence "Indicates a tunnel node is configured."; + description + "Tunnel this protocol's packets"; + } + container experimental { + description + "Modify the MPLS Experimental bits"; + leaf mpls-experimental-bits { + type uint32 { + range "0..7" { + description + "Set the MPLS experimental bits for this interface"; + } + } + must "../../forward or ../../tunnel"; + description + "Set the MPLS experimental bits for this interface"; + } + } + } + container pvst { + description + "Per VLAN Spanning Tree"; + container drop { + must "not(../tunnel) and not(../forward)"; + presence "Indicates a drop node is configured."; + description + "Drop this protocol's packets"; + } + container forward { + must "not(../drop) and not(../tunnel)"; + presence "Indicates a forward node is configured."; + description + "Forward this protocol's packets"; + } + container tunnel { + must "not(../drop) and not(../forward)"; + presence "Indicates a tunnel node is configured."; + description + "Tunnel this protocol's packets"; + } + container experimental { + description + "Modify the MPLS Experimental bits"; + leaf mpls-experimental-bits { + type uint32 { + range "0..7" { + description + "Set the MPLS experimental bits for this interface"; + } + } + must "../../forward or ../../tunnel"; + description + "Set the MPLS experimental bits for this interface"; + } + } + } + } + container propagate { + description + "Select events to propagate"; + container remote-status { + presence "Indicates a remote-status node is configured."; + description + "Propagate remote link status changes"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface/a2:l2transport" { + description + "This augment extends active nodes configuration"; + uses L2TRANS-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a2:l2transport" { + description + "This augment extends preconfigured nodes + configuration"; + uses L2TRANS-BODY; + } + container ethernet { + description + "Ethernet configuration"; + container egress-filter { + description + "Egress-filter commands"; + container strict { + if-feature "global-ethernet"; + presence "Indicates a strict node is configured."; + description + "Strict egress-filtering on by default"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2snoop-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2snoop-cfg.yang new file mode 100644 index 000000000..47c7fa6b4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2snoop-cfg.yang @@ -0,0 +1,89 @@ +module Cisco-IOS-XR-um-l2snoop-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-l2snoop-cfg"; + prefix um-l2snoop-cfg; + + 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 l2snoop package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-08 { + description + "Removed Cisco-IOS-XR-types import"; + semver:module-version "1.1.0"; + } + revision 2021-06-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container l2snoop { + description + "Global l2snoop configuration command"; + leaf directory { + type string { + length "1..800" { + description + "Place debug files in this directory"; + } + } + must "../files and ../size"; + description + "Specify l2snoop debug directory location"; + } + leaf files { + type uint32 { + range "1..10" { + description + "Maximum debug files"; + } + } + must "../directory"; + description + "Set maximum debug files"; + } + leaf size { + type uint32 { + range "1024..4294967295" { + description + "Maximum file size in bytes"; + } + } + must "../directory"; + description + "Set maximum file size"; + } + leaf receive-queue { + type uint32 { + range "40..800" { + description + "Number of packets in receive queue"; + } + } + description + "l2snoop receive packet queue size"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2tp-class-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2tp-class-cfg.yang new file mode 100644 index 000000000..3525a5fa7 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2tp-class-cfg.yang @@ -0,0 +1,330 @@ +module Cisco-IOS-XR-um-l2tp-class-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-l2tp-class-cfg"; + prefix um-l2tp-class-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 l2tp-class package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container l2tp-classes { + description + "L2TPv3 class used for L2VPNs"; + list l2tp-class { + key "l2tp-class-name"; + description + "The l2tp-class name"; + leaf l2tp-class-name { + type xr:Cisco-ios-xr-string { + length "1..31" { + description + "The l2tp-class name"; + } + pattern "[a-z0-9A-Z][-_.a-z0-9A-Z]*"; + } + description + "The l2tp-class name"; + } + container authentication { + presence "Indicates a authentication node is configured."; + description + "Authenticate the L2TP control connection"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable L2TP control connection authentication"; + } + } + leaf receive-window { + type uint32 { + range "1..16384" { + description + "size in bytes"; + } + } + description + "Receive window size for the control connection"; + } + container retransmit { + description + "Control message retransmission parameters"; + container initial { + description + "SCCRQ message retries/timeout settings"; + leaf retries { + type uint32 { + range "1..1000" { + description + "retries number"; + } + } + description + "Number of initial retries before halting attempts"; + } + container timeout { + description + "SCCRQ retransmission timeout parameters"; + leaf min { + type uint32 { + range "1..8" { + description + "Seconds"; + } + } + description + "Minimum timeout"; + } + leaf max { + type uint32 { + range "1..8" { + description + "Seconds"; + } + } + description + "Maximum timeout"; + } + } + } + leaf retries { + type uint32 { + range "5..1000" { + description + "retries number"; + } + } + description + "Number of initial retries before halting attempts"; + } + container timeout { + description + "Control packet retransmission timeout parameters"; + leaf min { + type uint32 { + range "1..8" { + description + "Seconds"; + } + } + description + "Minimum timeout"; + } + leaf max { + type uint32 { + range "1..8" { + description + "Seconds"; + } + } + description + "Maximum timeout"; + } + } + } + container timeout { + description + "Control connection timeout parameters"; + leaf setup { + type uint32 { + range "60..6000" { + description + "timeout value in seconds"; + } + } + description + "Time permitted to set up a control connection"; + } + container no-user { + description + "No-user timeout for tunnel"; + leaf timeout { + type uint32 { + range "0..86400" { + description + "timeout value in seconds"; + } + } + must "not(../never)"; + description + "timeout value in seconds"; + } + container never { + must "not(../timeout)"; + presence "Indicates a never node is configured."; + description + "tunnel remains up even without any user"; + } + } + } + leaf hostname { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Local hostname string"; + } + } + description + "Local hostname for control connection authentication"; + } + container hidden { + presence "Indicates a hidden node is configured."; + description + "Hide AVPs in outgoing control messages"; + } + container password { + description + "Password for control connection authentication, L2TPv2 AVP hiding"; + leaf encrypted { + type xr:Proprietary-password; + description + "Specifies that an encrypted password will follow"; + } + } + leaf hello-interval { + type uint32 { + range "0..1000" { + description + "interval time in seconds"; + } + } + description + "Set HELLO message interval"; + } + container digest { + description + "Message Digest configuration for L2TPv3 control connection"; + container check { + description + "Enable Message Digest validation"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Message Digest validation"; + } + } + container secret { + description + "Shared secret for L2TPv3 control message authentication, AVP hiding"; + list encrypted-secret { + key "encrypted"; + description + "Specifies that an encrypted secret will follow"; + leaf encrypted { + type xr:Proprietary-password; + description + "Specifies that an encrypted secret will follow"; + } + container hash { + description + "set hash method for authentication"; + container md5 { + must "not(../sha1)"; + presence "Indicates a md5 node is configured."; + description + "use MD5 for hash"; + } + container sha1 { + must "not(../md5)"; + presence "Indicates a sha1 node is configured."; + description + "use SHA1 for hash"; + } + } + } + } + container hash { + description + "set hash method for L2TPv3 control message integrity check"; + container md5 { + must "not(../sha1)"; + presence "Indicates a md5 node is configured."; + description + "use MD5 for hash"; + } + container sha1 { + must "not(../md5)"; + presence "Indicates a sha1 node is configured."; + description + "use SHA1 for hash"; + } + } + } + container ip { + description + "settings for tunnel"; + leaf tos { + type uint32 { + range "0..255" { + description + "IP TOS value (decimal or hex with 0x prefix)"; + } + } + description + "set IP ToS value for control traffic"; + } + } + container tunnel { + description + "Settings for tunnel"; + leaf accounting { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "AAA accounting method list name"; + } + } + description + "Method list to use for tunnel accounting"; + } + } + container security { + description + "L2TP security command"; + container ip { + description + "IP address check for L2TP"; + container address-check { + presence "Indicates a address-check node is configured."; + description + "IP address check for L2TP packets"; + } + } + } + container congestion-control { + presence "Indicates a congestion-control node is configured."; + description + "Enable l2tp congestion control"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2vpn-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2vpn-cfg.yang new file mode 100644 index 000000000..99d627b24 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-l2vpn-cfg.yang @@ -0,0 +1,13005 @@ +module Cisco-IOS-XR-um-l2vpn-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-l2vpn-cfg"; + prefix um-l2vpn-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a2; + } + import Cisco-IOS-XR-um-vrf-cfg { + prefix a3; + } + import tailf-common { + prefix tailf; + } + 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 l2vpn package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-15 { + description + "Added support for uSID WLIB allocation space + 2022-08-03 + Changed esi nodes bytes01, bytes23, bytes45, bytes67, bytes89 under + evpn/virtual/ethernet-segment/identifier/ to 9-octet string + 2022-07-11 + Added missing description statement to nodes + 2022-07-06 + Changed esi nodes bytes01, bytes23, bytes45, bytes67, bytes89 under + ethernet-segment/identifier to 9-octet string + 2022-04-14 + Removed mmrp-flood-optimization and unknown-unicast non-configurable nodes + 2022-03-10 + Removed some non-configurable nodes from the L2VPN/EVPN Yang UM + 2022-03-08 + Added list interface under vlan-switch bridge-domain + 2021-11-17 + Added container segment-routing-srv6-evis under bridge-domains"; + semver:module-version "3.0.0"; + } + revision 2021-10-11 { + description + "Re-adjusted mac node under vlan-switch hierarchy + 2021-07-29 + Re-adjusted load-balancing and ipv4 under encapsulation/mpls rather than redundancy + 2021-07-22 + Added presence statement for container group under container + split-horizon + 2021-07-21 + aging, learning, withdraw, secure, port-down, static-addresses and access-pw nodes are moved up 1 hierarchy + under mac rather than aging + 2021-07-15 + Re-adjusted dhcp,igmp,mac,mld,mpls,pw-class,split-horizon,static-mac-address and + storm-control container hierarchy instead of under flooding + 2021-06-30 + Replaced container disable with disable-deprecated; + Added a new container enforce-mtu-match"; + semver:module-version "2.0.0"; + } + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature l2vpn_evpn_not_nve_intf { + description + "l2vpn evpn not nve intf"; + } + + feature l2vpn_evpn_is_bundle_intf { + description + "l2vpn evpn is bundle intf"; + } + + feature l2vpn_evpn_ves_subif_supported { + description + "l2vpn evpn ves subif supported"; + } + + feature l2vpn_platform_srv6_supported { + description + "l2vpn platform srv6 supported"; + } + + feature l2vpn_iflist_intf_supported { + description + "l2vpn iflist intf supported"; + } + + feature l2vpn_is_cli_supported { + description + "l2vpn is cli supported"; + } + + feature l2vpn_bd_non_ether_ac_supported { + description + "l2vpn bd non ether ac supported"; + } + + feature l2vpn_pw_p2mp_supported { + description + "l2vpn pw p2mp supported"; + } + + feature l2vpn_cem_func_supported { + description + "l2vpn cem func supported"; + } + + feature l2vpn_platform_vpws_seamless_integration_supported { + description + "l2vpn platform vpws seamless integration supported"; + } + + feature l2vpn_p2p_backup_supported { + description + "l2vpn p2p backup supported"; + } + + feature l2vpn_cfg_ipv6_pw_supported { + description + "l2vpn cfg ipv6 pw supported"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container host-routing { + when "../a1:interface-name[starts-with(text(),'BVI')]" { + tailf:dependency "../a1:interface-name"; + } + presence "Indicates a host-routing node is configured."; + description + "Enable host-routing on this interface"; + } + container gratuitous-announcement-timer { + presence "Indicates a gratuitous-announcement-timer node is configured."; + description + "Enable gratuitous announcement (GARP) timer on this interface"; + leaf interval { + type uint32 { + range "60..30000" { + description + "seconds"; + } + } + description + "Gratuitous announcement (GARP/NA) timer interval in seconds"; + } + leaf jitter { + type uint32 { + range "0..100" { + description + "percent"; + } + } + description + "Gratuitous announcement (GARP/NA) timer jitter percentage"; + } + } + container pw-ether { + when "../a1:interface-name[starts-with(text(),'PW-Ether')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Configuration for pw-ether interface"; + container attach { + description + "Attach to an interface list"; + leaf generic-interface-list { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "The name of the interface list"; + } + } + description + "Interface List"; + } + } + leaf l2overhead { + type uint32 { + range "1..64" { + description + "L2 overhead size in bytes"; + } + } + description + "Set Layer 2 Overhead size"; + } + } + container pw-iw { + when "../a1:interface-name[starts-with(text(),'PW-IW')]" { + tailf:dependency "../a1:interface-name"; + } + description + "Configuration for pw-iw interface"; + container attach { + description + "Attach to an interface list"; + leaf generic-interface-list { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "The name of the interface list"; + } + } + description + "Interface List"; + } + } + leaf l2overhead { + type uint32 { + range "1..64" { + description + "L2 overhead size in bytes"; + } + } + description + "Set Layer 2 Overhead size"; + } + } + } + + grouping VRF-BODY { + description + "Grouping for vrf"; + leaf evpn-route-sync { + type uint32 { + range "1..65534" { + description + "EVPN Instance VPN ID used to synchronize the VRF route(s)"; + } + } + description + "Configure the EVPN Instance VPN ID for route synchronization"; + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a2:snmp-server/a2:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container l2vpn { + description + "Enable L2VPN traps"; + container all { + presence "Indicates a all node is configured."; + description + "Enable all L2VPN traps"; + } + container vc-up { + presence "Indicates a vc-up node is configured."; + description + "Enable VC up traps"; + } + container vc-down { + presence "Indicates a vc-down node is configured."; + description + "Enable VC down traps"; + } + container cisco { + presence "Indicates a cisco node is configured."; + description + "Cisco format including extra varbinds (default IETF)"; + } + } + container vpls { + description + "Enable VPLS traps"; + container all { + presence "Indicates a all node is configured."; + description + "Enable all VPLS traps"; + } + container status { + presence "Indicates a status node is configured."; + description + "Enable VPLS Status traps"; + } + container full-raise { + presence "Indicates a full-raise node is configured."; + description + "Enable VPLS Full Raise traps"; + } + container full-clear { + presence "Indicates a full-clear node is configured."; + description + "Enable VPLS Full Clear traps"; + } + } + } + augment "/a3:vrfs/a3:vrf" { + description + "This augment extends vrf nodes configuration"; + uses VRF-BODY; + } + container evpn { + presence "Indicates a evpn node is configured."; + description + "Configure E-VPN commands"; + container interface { + description + "Assign interface to EVPN"; + list interface { + key "interface-name"; + description + "Specify interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Specify interface name"; + } + container mac-flush { + description + "MAC Flush mode"; + container mvrp { + presence "Indicates a mvrp node is configured."; + description + "MAC Flush over MVRP"; + } + } + container timers { + presence "Indicates a timers node is configured."; + description + "Configure interface-specific EVPN timers"; + leaf peering { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 3 seconds"; + } + } + description + "Interface-specific peering timer"; + } + leaf recovery { + type uint32 { + range "0..3600" { + description + "Value in seconds, default is 30 seconds"; + } + } + description + "Interface-specific recovery timer"; + } + leaf carving { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 0 seconds"; + } + } + description + "Interface-specific carving timer"; + } + leaf ac-debounce { + type uint32 { + range "0..300000" { + description + "Value in milliseconds, default is 3000 milliseconds"; + } + } + description + "Interface-specific AC Debounce timer"; + } + } + container ethernet-segment { + presence "Indicates a ethernet-segment node is configured."; + description + "Ethernet Segment configuration commands"; + container identifier { + description + "Ethernet Segment identifier (ESI)"; + container type { + description + "ESI Type"; + container zero { + presence "Indicates a zero node is configured."; + description + "Type 0 (arbitrary 9-octet ESI value)"; + leaf esi { + type string { + length "1..254" { + description + "9-octet ESI value, xx.xx.xx.xx.xx.xx.xx.xx.xx"; + } + } + mandatory true; + description + "ESI value"; + } + } + } + } + container load-balancing-mode { + description + "Specify load balancing mode"; + container all-active { + must + "not(../port-active or ../single-active + or ../single-flow-active)"; + presence "Indicates a all-active node is configured."; + description + "All-Active load balancing"; + } + container port-active { + must + "not(../all-active or ../single-active + or ../single-flow-active)"; + presence "Indicates a port-active node is configured."; + description + "Port-Active load balancing"; + } + container single-active { + must + "not(../all-active or ../port-active + or ../single-flow-active)"; + presence "Indicates a single-active node is configured."; + description + "Single-Active load balancing"; + } + container single-flow-active { + must + "not(../all-active or ../port-active + or ../single-active)"; + presence "Indicates a single-flow-active node is configured."; + description + "Single-Flow-Active load balancing"; + } + } + leaf backbone-source-mac { + type yang:mac-address; + description + "Backbone Source MAC (PBB Only)"; + } + container force { + description + "Forced attributes for this ethernet segment"; + container single-homed { + presence "Indicates a single-homed node is configured."; + description + "Ethernet segment is to remain single-home"; + } + } + container service-carving { + description + "Specify service carving"; + container manual { + presence "Indicates a manual node is configured."; + description + "Configure EVPN Manual services list"; + leaf primary { + type string { + length "1..150" { + description + "Primary services list notation: '256,356-400,410'"; + } + } + must "../secondary"; + description + "Primary services list"; + } + leaf secondary { + type string { + length "1..150" { + description + "Secondary services list notation: '256,356-400,410'"; + } + } + must "../primary"; + description + "Secondary services list"; + } + } + container hrw { + presence "Indicates a hrw node is configured."; + description + "HRW mode of carving services"; + } + container multicast { + description + "Multicast specific service carving"; + container hrw-s-g { + must "not(../hrw-g)"; + presence "Indicates a hrw-s-g node is configured."; + description + "HRW s,g mode"; + } + container hrw-g { + must "not(../hrw-s-g)"; + presence "Indicates a hrw-g node is configured."; + description + "HRW *,g mode"; + } + } + container preference-based { + presence "Indicates a preference-based node is configured."; + description + "Configure EVPN Preference-Based"; + leaf weight { + type uint32 { + range "0..65535" { + description + "Preference DF weight. For Access-Driven DF, use weights of at most 32767 or less."; + } + } + description + "Preference value"; + } + container access-driven { + presence "Indicates a access-driven node is configured."; + description + "Access-Driven DF Election"; + } + } + } + container bgp { + description + "Configure BGP"; + leaf route-target { + type yang:mac-address; + description + "Set ES-Import Route Target"; + } + } + container convergence { + presence "Indicates a convergence node is configured."; + description + "Specify convergence mode(s) and options"; + container reroute { + presence "Indicates a reroute node is configured."; + description + "Redirect unicast traffic to backup peer"; + } + container mac-mobility { + presence "Indicates a mac-mobility node is configured."; + description + "MAC-Mobility triggered reconvergence"; + } + container nexthop-tracking { + presence "Indicates a nexthop-tracking node is configured."; + description + "Enable EVPN procedures to be influenced by BGP nexthop reachability"; + } + } + } + leaf core-isolation-group { + if-feature "l2vpn_evpn_is_bundle_intf"; + type uint32 { + range "1..4294967295" { + description + "EVPN group ID number"; + } + } + description + "Core isolation group"; + } + container access-signal { + if-feature "l2vpn_evpn_is_bundle_intf"; + description + "Override default signal sent to bring down access circuit"; + container bundle-down { + presence "Indicates a bundle-down node is configured."; + description + "Signal Bundle Down"; + } + } + container virtual-ethernet-segment { + if-feature "l2vpn_evpn_ves_subif_supported"; + presence "Indicates a virtual-ethernet-segment node is configured."; + description + "Virtual Ethernet Segment configuration commands"; + container identifier { + description + "VES identifier (6 byte value in MAC format)"; + container type { + description + "ESI Type"; + leaf three { + type yang:mac-address; + description + "Type 3 (6-byte value in MAC format)"; + } + } + } + } + } + } + container virtual { + if-feature "l2vpn_evpn_ves_subif_supported"; + description + "Virtual Access Segment to EVPN"; + container neighbor { + description + "Specify the peer to cross connect"; + list neighbor { + key "address pw-id"; + description + "Specify the peer to cross connect"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the peer"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container timers { + presence "Indicates a timers node is configured."; + description + "Configure access PW-specific EVPN timers"; + leaf peering { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 3 seconds"; + } + } + description + "Access PW-specific peering timer"; + } + leaf recovery { + type uint32 { + range "0..3600" { + description + "Value in seconds, default is 30 seconds"; + } + } + description + "Access PW-specific recovery timer"; + } + leaf carving { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 0 seconds"; + } + } + description + "Access PW-specific carving timer"; + } + leaf ac-debounce { + type uint32 { + range "0..300000" { + description + "Value in milliseconds, default is 3000 milliseconds"; + } + } + description + "Access PW-specific AC Debounce timer"; + } + } + container ethernet-segment { + presence "Indicates a ethernet-segment node is configured."; + description + "Ethernet Segment configuration commands"; + container identifier { + description + "Ethernet Segment identifier (ESI)"; + container type { + description + "ESI Type"; + container zero { + presence "Indicates a zero node is configured."; + description + "Type 0 (arbitrary 9-octet ESI value)"; + leaf esi { + type string { + length "1..254" { + description + "9-octet ESI value, xx.xx.xx.xx.xx.xx.xx.xx.xx"; + } + } + mandatory true; + description + "ESI value"; + } + } + } + } + container service-carving { + description + "Specify service carving"; + container manual { + presence "Indicates a manual node is configured."; + description + "Configure EVPN Manual services list"; + leaf primary { + type string { + length "1..150" { + description + "Primary services list notation: '256,356-400,410'"; + } + } + must "../secondary"; + description + "Primary services list"; + } + leaf secondary { + type string { + length "1..150" { + description + "Secondary services list notation: '256,356-400,410'"; + } + } + must "../primary"; + description + "Secondary services list"; + } + } + container hrw { + presence "Indicates a hrw node is configured."; + description + "HRW mode of carving services"; + } + container multicast { + description + "Multicast specific service carving"; + container hrw-s-g { + must "not(../hrw-g)"; + presence "Indicates a hrw-s-g node is configured."; + description + "HRW s,g mode"; + } + container hrw-g { + must "not(../hrw-s-g)"; + presence "Indicates a hrw-g node is configured."; + description + "HRW *,g mode"; + } + } + container preference-based { + presence "Indicates a preference-based node is configured."; + description + "Configure EVPN Preference-Based"; + leaf weight { + type uint32 { + range "0..65535" { + description + "Preference DF weight. For Access-Driven DF, use weights of at most 32767 or less."; + } + } + description + "Preference value"; + } + container access-driven { + presence "Indicates a access-driven node is configured."; + description + "Access-Driven DF Election"; + } + } + } + container bgp { + description + "Configure BGP"; + leaf route-target { + type yang:mac-address; + description + "Set ES-Import Route Target"; + } + } + } + } + } + container vfis { + description + "Specify the virtual forwarding interface name"; + list vfi { + key "vfi-name"; + description + "Specify the virtual forwarding interface name"; + leaf vfi-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the Virtual Forwarding Interface"; + } + } + description + "Specify the virtual forwarding interface name"; + } + container timers { + presence "Indicates a timers node is configured."; + description + "Configure access VFI-specific EVPN timers"; + leaf peering { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 3 seconds"; + } + } + description + "Access VFI-specific peering timer"; + } + leaf recovery { + type uint32 { + range "0..3600" { + description + "Value in seconds, default is 30 seconds"; + } + } + description + "Access VFI-specific recovery timer"; + } + leaf carving { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 0 seconds"; + } + } + description + "Access VFI-specific carving timer"; + } + leaf ac-debounce { + type uint32 { + range "0..300000" { + description + "Value in milliseconds, default is 3000 milliseconds"; + } + } + description + "Access VFI-specific AC Debounce timer"; + } + } + container ethernet-segment { + presence "Indicates a ethernet-segment node is configured."; + description + "Ethernet Segment configuration commands"; + container identifier { + description + "Ethernet Segment identifier (ESI)"; + container type { + description + "ESI Type"; + container zero { + presence "Indicates a zero node is configured."; + description + "Type 0 (arbitrary 9-octet ESI value)"; + leaf esi { + type string { + length "1..254" { + description + "9-octet ESI value, xx.xx.xx.xx.xx.xx.xx.xx.xx"; + } + } + mandatory true; + description + "ESI value"; + } + } + } + } + container service-carving { + description + "Specify service carving"; + container manual { + presence "Indicates a manual node is configured."; + description + "Configure EVPN Manual services list"; + leaf primary { + type string { + length "1..150" { + description + "Primary services list notation: '256,356-400,410'"; + } + } + must "../secondary"; + description + "Primary services list"; + } + leaf secondary { + type string { + length "1..150" { + description + "Secondary services list notation: '256,356-400,410'"; + } + } + must "../primary"; + description + "Secondary services list"; + } + } + container hrw { + presence "Indicates a hrw node is configured."; + description + "HRW mode of carving services"; + } + container preference-based { + presence "Indicates a preference-based node is configured."; + description + "Configure EVPN Preference-Based"; + leaf weight { + type uint32 { + range "0..65535" { + description + "Preference DF weight. For Access-Driven DF, use weights of at most 32767 or less."; + } + } + description + "Preference value"; + } + container access-driven { + presence "Indicates a access-driven node is configured."; + description + "Access-Driven DF Election"; + } + } + } + container bgp { + description + "Configure BGP"; + leaf route-target { + type yang:mac-address; + description + "Set ES-Import Route Target"; + } + } + } + } + } + container access-evi { + presence "Indicates a access-evi node is configured."; + description + "Virtual access EVI interface"; + container ethernet-segment { + presence "Indicates a ethernet-segment node is configured."; + description + "Ethernet Segment configuration commands"; + container identifier { + description + "Ethernet Segment identifier (ESI)"; + container type { + description + "ESI Type"; + container zero { + presence "Indicates a zero node is configured."; + description + "Type 0 (arbitrary 9-octet ESI value)"; + leaf esi { + type string { + length "1..254" { + description + "9-octent ESI value, xx.xx.xx.xx.xx.xx.xx.xx.xx"; + } + } + mandatory true; + description + "ESI value"; + } + } + } + } + container bgp { + description + "Configure BGP"; + leaf route-target { + type yang:mac-address; + description + "Set ES-Import Route Target"; + } + } + } + } + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container timers { + presence "Indicates a timers node is configured."; + description + "Configure global EVPN timers"; + leaf recovery { + type uint32 { + range "0..3600" { + description + "Value in seconds, default is 30 seconds"; + } + } + description + "Global recovery timer"; + } + leaf peering { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 3 seconds"; + } + } + description + "Global peering timer"; + } + leaf carving { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 0 seconds"; + } + } + description + "Global carving timer"; + } + leaf ac-debounce { + type uint32 { + range "0..300000" { + description + "Value in milliseconds, default is 3000 milliseconds"; + } + } + description + "Global AC Debounce timer"; + } + leaf backup-replacement-delay { + type uint32 { + range "0..300000" { + description + "Value in milliseconds, default is 6000 milliseconds"; + } + } + description + "When receiving a new backup route, delay installation for this amount of time timer"; + } + leaf mac-postpone { + type uint32 { + range "0..300" { + description + "Value in seconds, default is 300 seconds"; + } + } + description + "Global MAC withdraw postpone timer"; + } + } + container load-balancing { + presence "Indicates a load-balancing node is configured."; + description + "Configure EVPN Global load-balancing"; + container flow-label { + description + "PBB-EVPN Flow Label load balancing"; + container static { + presence "Indicates a static node is configured."; + description + "Static configuration of Flow Label"; + } + } + } + container source { + description + "Configure EVPN source interface"; + leaf interface { + type xr:Interface-name; + description + "Configure EVPN router-id implicitly through Loopback Interface"; + } + } + container cost-out { + presence "Indicates a cost-out node is configured."; + description + "Configure global EVPN cost-out"; + } + leaf startup-cost-in { + type uint32 { + range "30..86400" { + description + "Value in seconds, disabled by default"; + } + } + description + "Cost-in after reload timer"; + } + leaf staggered-bringup-timer { + type uint32 { + range "0..300000" { + description + "Value in milliseconds, default is 5000 milliseconds"; + } + } + description + "Staggered bringup timer delay timer"; + } + container logging { + presence "Indicates a logging node is configured."; + description + "Configure evpn logging commands"; + container df-election { + presence "Indicates a df-election node is configured."; + description + "Enable Designated Forwarder election logging"; + } + } + container ethernet-segment { + presence "Indicates a ethernet-segment node is configured."; + description + "Configure global ethernet-segment commands"; + container type { + description + "ESI type"; + container one { + description + "LACP ESI-auto-generation"; + container auto-generation-disable { + presence "Indicates a auto-generation-disable node is configured."; + description + "Disable ESI auto-generation"; + } + } + } + } + container groups { + description + "Configure EVPN group"; + list group { + key "group-name"; + description + "Configure EVPN group"; + leaf group-name { + type uint32 { + range "1..4294967295" { + description + "EVPN group ID number"; + } + } + description + "Configure EVPN group"; + } + container core { + description + "configure EVPN group core interface"; + list interface { + key "interface-name"; + description + "configure EVPN group core interface"; + leaf interface-name { + type xr:Interface-name; + description + "configure EVPN group core interface"; + } + } + } + } + } + container evis { + description + "Configure EVPN Instance VPN ID"; + container segment-routing { + if-feature "l2vpn_platform_srv6_supported"; + description + "Configure Segment Routing EVPN Instance"; + container srv6 { + description + "Configure SRv6 EVPN Instance"; + list evi { + key "vpn-id"; + description + "Configure EVPN Instance VPN ID"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "EVPN Instance VPN ID value"; + } + } + description + "Configure EVPN Instance VPN ID"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container ecmp-disable-deprecated { + presence "Indicates a ecmp-disable-deprecated node is configured."; + description + "Deprecated: migrate to "; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container advertise-mac { + presence "Indicates a advertise-mac node is configured."; + description + "Configure EVPN Instance MAC advertisement"; + container bvi-mac { + presence "Indicates a bvi-mac node is configured."; + description + "Advertise local MAC and BVI MAC routes"; + } + } + container unknown-unicast-suppression { + presence "Indicates a unknown-unicast-suppression node is configured."; + description + "Enabling unknown unicast suppression"; + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs (deprecated)"; + } + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU (deprecated)"; + } + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + container re-origination-disable { + presence "Indicates a re-origination-disable node is configured."; + description + "Disable route re-origination"; + } + container vrf { + description + "Enable EVPN instance for layer-3 route synchronization."; + container default { + presence "Indicates a default node is configured."; + description + "EVPN Instance for the default VRF"; + } + } + container etree { + presence "Indicates a etree node is configured."; + description + "Configure EVPN Instance E-Tree"; + container rt-leaf { + presence "Indicates a rt-leaf node is configured."; + description + "Designate EVPN Instance as EVPN E-Tree Route-Target Leaf Site"; + } + } + leaf locator { + type xr:Cisco-ios-xr-string { + length "1..58" { + description + "Specify locator name"; + } + pattern "[a-z0-9A-Z][a-z0-9A-Z_.:]*"; + } + description + "EVI locator to use for EVPN SID allocation"; + } + container bvi-coupled-mode { + presence "Indicates a bvi-coupled-mode node is configured."; + description + "Couples BVI state to the core EVPN Instance state"; + } + } + } + } + container segment-routing-srv6-stitching { + if-feature "l2vpn_platform_srv6_supported"; + description + "Configure Segment Routing EVPN Instance with SRv6 stitching"; + list evi { + key "vpn-id"; + description + "Configure EVPN Instance VPN ID"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "EVPN Instance VPN ID value"; + } + } + description + "Configure EVPN Instance VPN ID"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..1024" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container advertise-mac { + presence "Indicates a advertise-mac node is configured."; + description + "Configure locally-learned MAC advertisement"; + container bvi-mac { + presence "Indicates a bvi-mac node is configured."; + description + "Advertise local MAC and BVI MAC routes"; + } + } + container unknown-unicast-suppression { + presence "Indicates a unknown-unicast-suppression node is configured."; + description + "Enabling unknown unicast suppression"; + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs"; + } + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU"; + } + } + container re-origination-disable { + presence "Indicates a re-origination-disable node is configured."; + description + "Disable route re-origination"; + } + leaf locator { + type xr:Cisco-ios-xr-string { + length "1..58" { + description + "Specify locator name"; + } + pattern "[a-z0-9A-Z][a-z0-9A-Z_.:]*"; + } + description + "EVI locator to use for EVPN SID allocation"; + } + } + } + container stitching { + description + "Treat EVPN Instance as Stitching side"; + list evi { + key "vpn-id"; + description + "Configure EVPN Instance VPN ID"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "EVPN Instance VPN ID value"; + } + } + description + "Configure EVPN Instance VPN ID"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container load-balancing { + presence "Indicates a load-balancing node is configured."; + description + "Configure EVPN Instance load-balancing"; + container flow-label { + description + "Flow Label load balancing"; + container static { + presence "Indicates a static node is configured."; + description + "Static configuration of Flow Label"; + } + } + } + container ecmp-disable-deprecated { + presence "Indicates a ecmp-disable-deprecated node is configured."; + description + "Deprecated: migrate to "; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container advertise-mac { + presence "Indicates a advertise-mac node is configured."; + description + "Configure EVPN Instance MAC advertisement"; + container bvi-mac { + presence "Indicates a bvi-mac node is configured."; + description + "Advertise local MAC and BVI MAC routes"; + } + } + container unknown-unicast-suppression { + presence "Indicates a unknown-unicast-suppression node is configured."; + description + "Enabling unknown unicast suppression"; + } + container control-word-disable { + presence "Indicates a control-word-disable node is configured."; + description + "Disabling control-word"; + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs (deprecated)"; + } + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU (deprecated)"; + } + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + container re-origination-disable { + presence "Indicates a re-origination-disable node is configured."; + description + "Disable route re-origination"; + } + container vrf { + description + "Enable EVPN instance for layer-3 route synchronization."; + container default { + presence "Indicates a default node is configured."; + description + "EVPN Instance for the default VRF"; + } + } + container multicast { + presence "Indicates a multicast node is configured."; + description + "Configure EVPN Instance Multicast"; + container source-connected { + presence "Indicates a source-connected node is configured."; + description + "Multicast traffic source connected"; + } + } + container proxy { + presence "Indicates a proxy node is configured."; + description + "Configure EVPN Instance Proxy"; + container igmp-snooping { + presence "Indicates a igmp-snooping node is configured."; + description + "Proxy mode for IGMP-Snooping (selective multicast)"; + } + } + container etree { + presence "Indicates a etree node is configured."; + description + "Configure EVPN Instance E-Tree"; + container leaf { + presence "Indicates a leaf node is configured."; + description + "Designate EVPN Instance as EVPN E-Tree Leaf Site"; + } + container rt-leaf { + presence "Indicates a rt-leaf node is configured."; + description + "Designate EVPN Instance as EVPN E-Tree Route-Target Leaf Site"; + } + } + container vpws-single-active-backup-suppression { + presence "Indicates a vpws-single-active-backup-suppression node is configured."; + description + "Disables Non-DF EVI/EAD routes from being advertised in EVPN-VPWS Single-Active. Used for backwards-compatibility."; + } + container bvi-coupled-mode { + presence "Indicates a bvi-coupled-mode node is configured."; + description + "Couples BVI state to the core EVPN Instance state"; + } + } + } + list evi { + key "vpn-id"; + description + "Configure EVPN Instance VPN ID"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "EVPN Instance VPN ID value"; + } + } + description + "Configure EVPN Instance VPN ID"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container load-balancing { + presence "Indicates a load-balancing node is configured."; + description + "Configure EVPN Instance load-balancing"; + container flow-label { + description + "Flow Label load balancing"; + container static { + presence "Indicates a static node is configured."; + description + "Static configuration of Flow Label"; + } + } + } + container ecmp-disable-deprecated { + presence "Indicates a ecmp-disable-deprecated node is configured."; + description + "Deprecated: migrate to "; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container advertise-mac { + presence "Indicates a advertise-mac node is configured."; + description + "Configure EVPN Instance MAC advertisement"; + container bvi-mac { + presence "Indicates a bvi-mac node is configured."; + description + "Advertise local MAC and BVI MAC routes"; + } + } + container unknown-unicast-suppression { + presence "Indicates a unknown-unicast-suppression node is configured."; + description + "Enabling unknown unicast suppression"; + } + container control-word-disable { + presence "Indicates a control-word-disable node is configured."; + description + "Disabling control-word"; + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs (deprecated)"; + } + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU (deprecated)"; + } + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + container re-origination-disable { + presence "Indicates a re-origination-disable node is configured."; + description + "Disable route re-origination"; + } + container vrf { + description + "Enable EVPN instance for layer-3 route synchronization."; + container default { + presence "Indicates a default node is configured."; + description + "EVPN Instance for the default VRF"; + } + } + container multicast { + presence "Indicates a multicast node is configured."; + description + "Configure EVPN Instance Multicast"; + container source-connected { + presence "Indicates a source-connected node is configured."; + description + "Multicast traffic source connected"; + } + } + container proxy { + presence "Indicates a proxy node is configured."; + description + "Configure EVPN Instance Proxy"; + container igmp-snooping { + presence "Indicates a igmp-snooping node is configured."; + description + "Proxy mode for IGMP-Snooping (selective multicast)"; + } + } + container etree { + presence "Indicates a etree node is configured."; + description + "Configure EVPN Instance E-Tree"; + container leaf { + presence "Indicates a leaf node is configured."; + description + "Designate EVPN Instance as EVPN E-Tree Leaf Site"; + } + container rt-leaf { + presence "Indicates a rt-leaf node is configured."; + description + "Designate EVPN Instance as EVPN E-Tree Route-Target Leaf Site"; + } + } + container vpws-single-active-backup-suppression { + presence "Indicates a vpws-single-active-backup-suppression node is configured."; + description + "Disables Non-DF EVI/EAD routes from being advertised in EVPN-VPWS Single-Active. Used for backwards-compatibility."; + } + container bvi-coupled-mode { + presence "Indicates a bvi-coupled-mode node is configured."; + description + "Couples BVI state to the core EVPN Instance state"; + } + } + } + container route-sync { + description + "Configure vrf route-sync EVPN Instance VPN ID"; + container stitching { + description + "Treat EVPN Instance as Stitching side"; + list evi { + key "vpn-id"; + description + "Configure EVPN Instance VPN ID"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "EVPN Instance VPN ID value"; + } + } + description + "Configure EVPN Instance VPN ID"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container ecmp-disable-deprecated { + presence "Indicates a ecmp-disable-deprecated node is configured."; + description + "Deprecated: migrate to "; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs (deprecated)"; + } + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU (deprecated)"; + } + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + container vrf { + description + "Enable EVPN instance for layer-3 route synchronization."; + container default { + presence "Indicates a default node is configured."; + description + "EVPN Instance for the default VRF"; + } + } + container bvi-coupled-mode { + presence "Indicates a bvi-coupled-mode node is configured."; + description + "Couples BVI state to the core EVPN Instance state"; + } + } + } + list evi { + key "vpn-id"; + description + "Configure EVPN Instance VPN ID"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "EVPN Instance VPN ID value"; + } + } + description + "Configure EVPN Instance VPN ID"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container ecmp-disable-deprecated { + presence "Indicates a ecmp-disable-deprecated node is configured."; + description + "Deprecated: migrate to "; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs (deprecated)"; + } + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU (deprecated)"; + } + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + container vrf { + description + "Enable EVPN instance for layer-3 route synchronization."; + container default { + presence "Indicates a default node is configured."; + description + "EVPN Instance for the default VRF"; + } + } + container bvi-coupled-mode { + presence "Indicates a bvi-coupled-mode node is configured."; + description + "Couples BVI state to the core EVPN Instance state"; + } + } + } + container vnis { + description + "Configure EVPN VNI"; + container stitching { + description + "Treat EVPN Instance as Stitching side"; + list vni { + key "vni-id"; + description + "Configure EVPN VNI"; + leaf vni-id { + type uint32 { + range "1..16777215" { + description + "EVPN VNI value"; + } + } + description + "Configure EVPN VNI"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container ecmp-disable-deprecated { + presence "Indicates a ecmp-disable-deprecated node is configured."; + description + "Deprecated: migrate to "; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container advertise-mac { + presence "Indicates a advertise-mac node is configured."; + description + "Configure EVPN Instance MAC advertisement"; + container bvi-mac { + presence "Indicates a bvi-mac node is configured."; + description + "Advertise local MAC and BVI MAC routes"; + } + } + container unknown-unicast-suppression { + presence "Indicates a unknown-unicast-suppression node is configured."; + description + "Enabling unknown unicast suppression"; + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs (deprecated)"; + } + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU (deprecated)"; + } + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + container re-origination-disable { + presence "Indicates a re-origination-disable node is configured."; + description + "Disable route re-origination"; + } + container bvi-coupled-mode { + presence "Indicates a bvi-coupled-mode node is configured."; + description + "Couples BVI state to the core EVPN Instance state"; + } + } + } + list vni { + key "vni-id"; + description + "Configure EVPN VNI"; + leaf vni-id { + type uint32 { + range "1..16777215" { + description + "EVPN VNI value"; + } + } + description + "Configure EVPN VNI"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Set the Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Withhold BGP RTs"; + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container implicit-import-disable { + presence "Indicates a implicit-import-disable node is configured."; + description + "Disable BGP implicit import"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + leaf import { + type xr:Route-policy-name; + description + "Import route policy"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "EVPN Instance description string"; + } + } + description + "Description for this EVPN Instance"; + } + container ecmp-disable-deprecated { + presence "Indicates a ecmp-disable-deprecated node is configured."; + description + "Deprecated: migrate to "; + } + container preferred-nexthop { + description + "Elect unique active path from ECMP candidate list"; + container lowest-ip { + must "not(../highest-ip or ../modulo)"; + presence "Indicates a lowest-ip node is configured."; + description + "Lowest nexthop IP is active"; + } + container highest-ip { + must "not(../lowest-ip or ../modulo)"; + presence "Indicates a highest-ip node is configured."; + description + "Highest nexthop IP is active"; + } + container modulo { + must "not(../lowest-ip or ../highest-ip)"; + presence "Indicates a modulo node is configured."; + description + "EVI modulo of nexthops cardinality is active"; + } + } + container advertise-mac { + presence "Indicates a advertise-mac node is configured."; + description + "Configure EVPN Instance MAC advertisement"; + container bvi-mac { + presence "Indicates a bvi-mac node is configured."; + description + "Advertise local MAC and BVI MAC routes"; + } + } + container unknown-unicast-suppression { + presence "Indicates a unknown-unicast-suppression node is configured."; + description + "Enabling unknown unicast suppression"; + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables ingoring mismatch of local and remote MTUs (deprecated)"; + } + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + container disable-deprecated { + presence "Indicates a disable-deprecated node is configured."; + description + "Disables transmitting MTU zero to remote instead of actual local MTU (deprecated)"; + } + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + container re-origination-disable { + presence "Indicates a re-origination-disable node is configured."; + description + "Disable route re-origination"; + } + container bvi-coupled-mode { + presence "Indicates a bvi-coupled-mode node is configured."; + description + "Couples BVI state to the core EVPN Instance state"; + } + } + } + container segment-routing { + if-feature "l2vpn_platform_srv6_supported"; + description + "Segment routing configuration for EVPN"; + container srv6 { + presence "Indicates a srv6 node is configured."; + description + "SRv6 configuration for EVPN"; + leaf locator { + type xr:Cisco-ios-xr-string { + length "1..58" { + description + "Specify locator name"; + } + pattern "[a-z0-9A-Z][a-z0-9A-Z_.:]*"; + } + description + "Default locator to use for EVPN SID allocation"; + } + container usid { + description + "Configure the uSID function length LIB/WLIB knob"; + container allocation { + description + "Set the allocation types associated with uSID"; + container wide-local-id-block { + description + "Set the uSID wide lib function knob"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable wide lib (WLIB) function for uSID"; + } + } + } + } + } + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore mismatch of local and remote MTUs"; + } + container enforce-mtu-match { + presence "Indicates a enforce-mtu-match node is configured."; + description + "Enforce matching of local and remote MTUs"; + } + container transmit-mtu-zero { + presence "Indicates a transmit-mtu-zero node is configured."; + description + "Transmit MTU zero to remote instead of actual local MTU"; + } + container transmit-l2-mtu { + presence "Indicates a transmit-l2-mtu node is configured."; + description + "Transmit L2 MTU of attachment circuit"; + } + } + container generic-interface-lists { + description + "Interface list"; + list generic-interface-list { + key "generic-interface-list-name"; + description + "Interface list"; + leaf generic-interface-list-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Interface-list name"; + } + } + description + "Interface list"; + } + container interfaces { + description + "Specify an interface"; + list interface { + if-feature "l2vpn_iflist_intf_supported"; + key "interface-name"; + description + "Specify interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Specify interface name"; + } + } + } + } + } + container l2vpn { + presence "Indicates a l2vpn node is configured."; + description + "Configure l2vpn commands"; + container bridge { + description + "Configure bridge commands"; + container groups { + description + "Specify the group the bridge belongs to"; + list group { + key "group-name"; + description + "Specify the group the bridge belongs to"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the bridge group"; + } + } + description + "Specify the group the bridge belongs to"; + } + container bridge-domains { + description + "Configure bridge domain"; + list bridge-domain { + key "bridge-domain-name"; + description + "Configure bridge domain"; + leaf bridge-domain-name { + type xr:Cisco-ios-xr-string { + length "1..27" { + description + "Name of the bridge domain"; + } + } + description + "Configure bridge domain"; + } + container evis { + description + "Ethernet VPN identifier"; + list evi { + key "vpn-id"; + description + "Ethernet VPN identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN identifier"; + } + } + } + container segment-routing-srv6-evis { + description + "Ethernet VPN identifier for srv6"; + list evi { + key "vpn-id"; + description + "Ethernet VPN identifier for srv6"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN identifier for srv6"; + } + } + } + container vnis { + description + "VxLAN VPN identifier"; + list vni { + key "vni-id"; + description + "VxLAN VPN identifier"; + leaf vni-id { + type uint32 { + range "1..16777215" { + description + "VxLAN VPN ID to set"; + } + } + description + "VxLAN VPN identifier"; + } + } + } + leaf mtu { + type uint32 { + range "46..65535" { + description + "Maximum transmission unit size (payload) in bytes"; + } + } + description + "Maximum transmission unit (payload) for this Bridge Domain"; + } + container coupled-mode { + if-feature "l2vpn_is_cli_supported"; + presence "Indicates a coupled-mode node is configured."; + description + "Enable coupled mode for the Bridge Domain"; + } + container transport-mode { + description + "Bridge domain transport mode"; + container vlan { + description + "Vlan tagged mode"; + container passthrough { + presence "Indicates a passthrough node is configured."; + description + "passthrough incoming tags"; + } + } + } + container flooding { + description + "Traffic flooding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable flooding"; + } + } + container dynamic-arp-inspection { + presence "Indicates a dynamic-arp-inspection node is configured."; + description + "Dynamic ARP Inspection"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + } + container address-validation { + presence "Indicates a address-validation node is configured."; + description + "Address Validation Configurations"; + container src-mac { + presence "Indicates a src-mac node is configured."; + description + "Match Source MAC Address"; + } + container dst-mac { + presence "Indicates a dst-mac node is configured."; + description + "Match Destination MAC Address"; + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Match IPv4 Address"; + } + } + } + container ip-source-guard { + presence "Indicates a ip-source-guard node is configured."; + description + "IP Source Guard"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + } + } + container dhcp { + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container snoop { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + description + "Attach a DHCP profile"; + } + } + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "disable IGMP snooping for the current bridge domain"; + } + } + } + container mld { + description + "MLD protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "MLD Snooping profile name"; + } + } + description + "Attach a MLD profile"; + } + } + } + container storm-control { + description + "Storm Control"; + container broadcast { + description + "Broadcast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container multicast { + description + "Multicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container unknown-unicast { + description + "Unknown-unicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + } + container multicast-source { + description + "Multicast Source Traffic"; + container ipv4 { + must "not(../ipv6 or ../ipv4-ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "Traffic Type IPv4"; + } + container ipv6 { + must "not(../ipv4 or ../ipv4-ipv6)"; + presence "Indicates a ipv6 node is configured."; + description + "Traffic Type IPv6"; + } + container ipv4-ipv6 { + must "not(../ipv4 or ../ipv6)"; + presence "Indicates a ipv4-ipv6 node is configured."; + description + "Traffic Type IPv4 and IPv6"; + } + } + container interfaces { + description + "Assign interface to bridge domain"; + list interface { + if-feature "l2vpn_iflist_intf_supported"; + key "interface-name"; + description + "Specify interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Specify interface name"; + } + container dhcp { + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container none { + presence "Indicates a none node is configured."; + description + "Disable DHCP snooping"; + } + container snoop { + presence "Indicates a snoop node is configured."; + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + description + "Attach a DHCP profile"; + } + } + } + } + container dynamic-arp-inspection { + presence "Indicates a dynamic-arp-inspection node is configured."; + description + "Dynamic ARP Inspection"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Dynamic Arp Inspection"; + } + container address-validation { + presence "Indicates a address-validation node is configured."; + description + "Address Validation Configurations"; + container src-mac { + presence "Indicates a src-mac node is configured."; + description + "Match Source MAC Address"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable Source MAC Address check"; + } + } + container dst-mac { + presence "Indicates a dst-mac node is configured."; + description + "Match Destination MAC Address"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable Destimation MAC Address check"; + } + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Match IPv4 Address"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable IPV4 Address check"; + } + } + } + } + container flooding { + description + "Traffic flooding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable flooding"; + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + } + } + container ip-source-guard { + presence "Indicates a ip-source-guard node is configured."; + description + "IP Source Guard"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable IP Source Guard"; + } + } + container mac { + description + "MAC configuration commands"; + container aging { + if-feature "l2vpn_is_cli_supported"; + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + container inactivity { + must "not(../absolute)"; + presence "Indicates a inactivity node is configured."; + description + "Inactivity aging type"; + } + } + } + container learning { + presence "Indicates a learning node is configured."; + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + container limit { + description + "MAC-Limit configuration commands"; + leaf maximum { + type uint32 { + range "0..4294967295" { + description + "Number of MAC addresses after which MAC limit action is taken"; + } + } + description + "Number of MAC addresses after which MAC limit action is taken"; + } + container action { + description + "MAC address limit enforcement action"; + container flood { + must "not(../no-flood or ../shutdown or ../none)"; + presence "Indicates a flood node is configured."; + description + "Stop learning but continue flooding"; + } + container no-flood { + must "not(../flood or ../shutdown or ../none)"; + presence "Indicates a no-flood node is configured."; + description + "Stop learning and stop flooding"; + } + container shutdown { + must "not(../flood or ../no-flood or ../none)"; + presence "Indicates a shutdown node is configured."; + description + "Stop forwarding"; + } + container none { + must "not(../flood or ../no-flood or ../shutdown)"; + presence "Indicates a none node is configured."; + description + "No action"; + } + } + container notification { + description + "MAC address limit notification action"; + container trap { + must "not(../both or ../none or ../syslog)"; + presence "Indicates a trap node is configured."; + description + "Generate SNMP trap"; + } + container both { + must "not(../trap or ../none or ../syslog)"; + presence "Indicates a both node is configured."; + description + "Generate syslog message and SNMP trap"; + } + container none { + must "not(../trap or ../both or ../syslog)"; + presence "Indicates a none node is configured."; + description + "No notification"; + } + container syslog { + must "not(../trap or ../both or ../none)"; + presence "Indicates a syslog node is configured."; + description + "Generate syslog message"; + } + } + } + container port-down { + description + "Configure action when port goes down"; + container flush { + description + "Configure MAC flush when port goes down"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC flush when port goes down"; + } + } + } + container secure { + presence "Indicates a secure node is configured."; + description + "MAC Secure configuration commands"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container action { + description + "MAC secure enforcement action"; + container none { + must "not(../shutdown)"; + presence "Indicates a none node is configured."; + description + "Forward the violating packet and allow the MAC to be relearned"; + } + container shutdown { + must "not(../none)"; + presence "Indicates a shutdown node is configured."; + description + "Shutdown the violating bridge port"; + } + container restrict { + must "not(../none or ../shutdown)"; + presence "Indicates a restrict node is configured."; + description + "Drop the violating packet and not allow the MAC to be relearned"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC Secure"; + } + container shutdown-recovery-timeout { + description + "Recovery-timer to automatically revert shutdown action"; + container disable { + must "not(../recovery-timer-in-second)"; + presence "Indicates a disable node is configured."; + description + "Disable shutdown recovery timer"; + } + leaf recovery-timer-in-second { + type uint32 { + range "10..3600" { + description + "Recovery timer in second"; + } + } + must "not(../disable)"; + description + "Recovery timer in second"; + } + } + } + } + container mld { + description + "MLD protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "MLD Snooping profile name"; + } + } + description + "Attach a MLD profile"; + } + } + } + container storm-control { + description + "Storm Control"; + container broadcast { + description + "Broadcast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container multicast { + description + "Multicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container unknown-unicast { + description + "Unknown-unicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + } + container split-horizon { + description + "Configure split-horizon group"; + container group { + presence "Indicates a group node is configured."; + description + "Configure split-horizon group"; + } + } + container static-mac-addresses { + description + "Static MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + } + } + container routed { + description + "Bridge domain L3 interface"; + list interface { + key "interface-name"; + description + "Assign interface to bridge domain"; + leaf interface-name { + type xr:Interface-name; + description + "Assign interface to bridge domain"; + } + container split-horizon { + description + "Configure split-horizon group"; + container group { + description + "Configure split-horizon group"; + container core { + presence "Indicates a core node is configured."; + description + "Configure BVI under SHG 1"; + } + } + } + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "shutdown the Bridge Domain"; + } + container vfis { + description + "Specify the virtual forwarding interface name"; + list vfi { + key "vfi-name"; + description + "Specify the virtual forwarding interface name"; + leaf vfi-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the Virtual Forwarding Interface"; + } + } + description + "Specify the virtual forwarding interface name"; + } + leaf vpn-id { + type uint32 { + range "1..4294967295" { + description + "Value of the VPN ID"; + } + } + description + "VPN Identifier (VPN ID)"; + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "shutdown the Virtual Forwarding Interface"; + } + container autodiscovery { + description + "Enable auto-discovery in this VFI"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Enable BGP auto-discovery in this VFI"; + container rd { + description + "route distinguisher"; + container auto { + must "not(../two-byte-as-number or ../four-byte-as-number or ../ipv4-address)"; + presence "Indicates a auto node is configured."; + description + "Automatic route distinguisher"; + } + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Route Target"; + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + } + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + } + container control-word { + presence "Indicates a control-word node is configured."; + description + "Enable control-word for BGP-Autodiscovered PWs for this VFI"; + } + container signaling-protocol { + description + "Enable signaling protocol for this VFI"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Enable BGP signaling protocol for this VFI"; + leaf ve-id { + type uint32 { + range "1..16384" { + description + "Value of the local VE ID"; + } + } + description + "Local Virtual Edge Identifier (VE ID)"; + } + leaf ve-range { + if-feature "l2vpn_is_cli_supported"; + type uint32 { + range "11..100" { + description + "Value of the VE Range"; + } + } + description + "Local Virtual Edge Block Configurable Range"; + } + container load-balancing { + description + "Load Balancing"; + container flow-label { + description + "Flow label based load balancing setting"; + container transmit { + must "not(../receive or ../both)"; + presence "Indicates a transmit node is configured."; + description + "Insert Flow label when transmit "; + } + container receive { + must "not(../transmit or ../both)"; + presence "Indicates a receive node is configured."; + description + "Discard Flow label when receive"; + } + container both { + must "not(../transmit or ../receive)"; + presence "Indicates a both node is configured."; + description + "Insert/Discard Flow label when transmit/recceive"; + } + container static { + must "../transmit or ../receive or ../both"; + presence "Indicates a static node is configured."; + description + "Set Flow label parameters statically"; + } + } + } + } + container ldp { + presence "Indicates a ldp node is configured."; + description + "Enable LDP signaling protocol for this VFI"; + container vpls-id { + if-feature "l2vpn_is_cli_supported"; + description + "VPLS ID"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + must "not(../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..32767" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + container load-balancing { + description + "Load Balancing"; + container flow-label { + description + "Flow label based load balancing setting"; + container transmit { + must "not(../receive or ../both)"; + presence "Indicates a transmit node is configured."; + description + "Insert Flow label when transmit "; + } + container receive { + must "not(../transmit or ../both)"; + presence "Indicates a receive node is configured."; + description + "Discard Flow label when receive"; + } + container both { + must "not(../transmit or ../receive)"; + presence "Indicates a both node is configured."; + description + "Insert/Discard Flow label when transmit/recceive"; + } + container static { + must "../transmit or ../receive or ../both"; + presence "Indicates a static node is configured."; + description + "Set Flow label parameters statically"; + } + } + } + } + } + } + leaf table-policy { + type xr:Route-policy-name; + description + "Configure policy for installation of forwarding data to L2FIB"; + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + } + } + } + container multicast { + if-feature "l2vpn_pw_p2mp_supported"; + description + "Point to multi-point pseudowire"; + container p2mp { + presence "Indicates a p2mp node is configured."; + description + "Enable point to multi-point pseudowire in this VFI"; + container transport { + description + "Transport type selection"; + container rsvp-te { + presence "Indicates a rsvp-te node is configured."; + description + "Use RSVP-TE as transport"; + container attribute-set { + description + "TE attribute set parameters"; + leaf p2mp-te { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify name"; + } + } + description + "TE tunnel attribute set name"; + } + } + } + } + container signaling-protocol { + description + "Signaling protocol selection"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Use BGP for signaling"; + } + } + } + } + container neighbors { + description + "Specify the peer to cross connect"; + list neighbor { + key "address pw-id"; + description + "Specify the peer to cross connect"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the peer"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container static-mac-addresses { + description + "Static MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + container mpls { + description + "MPLS L2VPN PW command"; + container static { + description + "MPLS L2VPN static settings"; + container label { + description + "MPLS L2VPN static labels"; + leaf local { + type uint32 { + range "16..1048575" { + description + "Local pseudowire label"; + } + } + must "../remote"; + description + "Local pseudowire label"; + } + leaf remote { + type uint32 { + range "16..1048575" { + description + "Remote pseudowire label"; + } + } + must "../local"; + description + "Remote pseudowire label"; + } + } + } + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for this pseudowire"; + } + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container snoop { + presence "Indicates a snoop node is configured."; + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + description + "Attach a DHCP profile"; + } + } + container none { + presence "Indicates a none node is configured."; + description + "Disable DHCP snooping"; + } + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + } + } + container mld { + description + "MLD protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "MLD Snooping profile name"; + } + } + description + "Attach a MLD profile"; + } + } + } + } + } + } + } + container access-vfis { + description + "Specify the access virtual forwarding interface name"; + list access-vfi { + key "access-vfi-name"; + description + "Specify the access virtual forwarding interface name"; + leaf access-vfi-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the Access Virtual Forwarding Interface"; + } + } + description + "Specify the access virtual forwarding interface name"; + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "shutdown the Access Virtual Forwarding Interface"; + } + container neighbors { + description + "Specify the peer to cross connect"; + list neighbor { + key "address pw-id"; + description + "Specify the peer to cross connect"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the peer"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container static-mac-addresses { + description + "Static MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for this pseudowire"; + } + } + } + } + } + container mac { + description + "MAC configuration commands"; + container aging { + if-feature "l2vpn_is_cli_supported"; + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + } + } + container static-addresses { + description + "Static MAC address for filtering"; + list static-address { + must "drop"; + key "mac-address"; + description + "Static MAC address for filtering"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address for filtering"; + } + container drop { + presence "Indicates a drop node is configured."; + description + "Drop matching packets"; + } + } + } + container learning { + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + container withdraw { + description + "MAC withdraw"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC withdraw"; + } + container access-pw { + description + "MAC withdraw sent to Access PWs "; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC withdraw on Access PW"; + } + } + container relay { + presence "Indicates a relay node is configured."; + description + "MAC withdraw relayed to Access PWs "; + } + container state-down { + must "not(../optimize)"; + presence "Indicates a state-down node is configured."; + description + "MAC withdraw sent on bridge port down"; + } + container optimize { + must "not(../state-down)"; + presence "Indicates a optimize node is configured."; + description + "Optimized LDP MAC withdraw (when port goes down)"; + } + } + container limit { + description + "MAC-Limit configuration commands"; + leaf maximum { + type uint32 { + range "0..4294967295" { + description + "Number of MAC addresses after which MAC limit action is taken"; + } + } + description + "Number of MAC addresses after which MAC limit action is taken"; + } + container action { + description + "MAC address limit enforcement action"; + container flood { + must "not(../no-flood or ../shutdown)"; + presence "Indicates a flood node is configured."; + description + "Stop learning but continue flooding"; + } + container no-flood { + must "not(../flood or ../shutdown)"; + presence "Indicates a no-flood node is configured."; + description + "Stop learning and stop flooding"; + } + container shutdown { + must "not(../flood or ../no-flood)"; + presence "Indicates a shutdown node is configured."; + description + "Stop forwarding"; + } + } + container notification { + description + "MAC address limit notification action"; + container trap { + must "not(../both or ../none)"; + presence "Indicates a trap node is configured."; + description + "Generate SNMP trap"; + } + container both { + must "not(../trap or ../none)"; + presence "Indicates a both node is configured."; + description + "Generate syslog message and SNMP trap"; + } + container none { + must "not(../trap or ../both)"; + presence "Indicates a none node is configured."; + description + "No notification"; + } + } + } + container port-down { + description + "Configure action when port goes down"; + container flush { + description + "Configure MAC flush when port goes down"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC flush when port goes down"; + } + } + } + container secure { + presence "Indicates a secure node is configured."; + description + "MAC Secure configuration commands"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + } + container threshold { + presence "Indicates a threshold node is configured."; + description + "Threshold based mac secure"; + } + container action { + description + "MAC secure enforcement action"; + container none { + must "not(../shutdown)"; + presence "Indicates a none node is configured."; + description + "Forward the violating packet and allow the MAC to be relearned"; + } + container shutdown { + must "not(../none)"; + presence "Indicates a shutdown node is configured."; + description + "Shutdown the violating bridge port"; + } + } + leaf shutdown-recovery-timeout { + type uint32 { + range "10..3600" { + description + "Recovery timer in seconds"; + } + } + description + "Recovery-timer to automatically revert shutdown action"; + } + } + } + container access-evis { + description + "Specify the virtual access EVI"; + list access-evi { + key "access-evi-id"; + description + "Specify the virtual access EVI"; + leaf access-evi-id { + type uint32 { + range "1..65534" { + description + "Access EVPN Instance VPN ID value"; + } + } + description + "Specify the virtual access EVI"; + } + } + } + container neighbors { + description + "Specify the peer to cross connect"; + list neighbor { + key "address pw-id"; + description + "Specify the peer to cross connect"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the peer"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container flooding { + if-feature "l2vpn_is_cli_supported"; + presence "Indicates a flooding node is configured."; + description + "Traffic flooding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable flooding"; + } + } + container static-mac-addresses { + description + "Static MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + container mpls { + description + "MPLS L2VPN PW command"; + container static { + description + "MPLS L2VPN static settings"; + container label { + description + "MPLS L2VPN static labels"; + leaf local { + type uint32 { + range "16..1048575" { + description + "Local pseudowire label"; + } + } + must "../remote"; + description + "Local pseudowire label"; + } + leaf remote { + type uint32 { + range "16..1048575" { + description + "Remote pseudowire label"; + } + } + must "../local"; + description + "Remote pseudowire label"; + } + } + } + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for this pseudowire"; + } + container split-horizon { + description + "Configure split horizon group"; + container group { + presence "Indicates a group node is configured."; + description + "Configure split horizon group"; + } + } + container storm-control { + description + "Storm Control"; + container broadcast { + description + "Broadcast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container multicast { + description + "Multicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container unknown-unicast { + description + "Unknown-unicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + } + container mac { + description + "MAC configuration commands"; + container aging { + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + must "not(../inactivity)"; + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + container inactivity { + must "not(../absolute)"; + presence "Indicates a inactivity node is configured."; + description + "Inactivity aging type"; + } + } + } + container learning { + presence "Indicates a learning node is configured."; + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + container limit { + description + "MAC-Limit configuration commands"; + leaf maximum { + type uint32 { + range "0..4294967295" { + description + "Number of MAC addresses after which MAC limit action is taken"; + } + } + description + "Number of MAC addresses after which MAC limit action is taken"; + } + container action { + description + "MAC address limit enforcement action"; + container flood { + must + "not(../no-flood or ../shutdown + or ../none)"; + presence "Indicates a flood node is configured."; + description + "Stop learning but continue flooding"; + } + container no-flood { + must + "not(../flood or ../shutdown + or ../none)"; + presence "Indicates a no-flood node is configured."; + description + "Stop learning and stop flooding"; + } + container shutdown { + must + "not(../flood or ../no-flood + or ../none)"; + presence "Indicates a shutdown node is configured."; + description + "Stop forwarding"; + } + container none { + must + "not(../flood or ../no-flood + or ../shutdown)"; + presence "Indicates a none node is configured."; + description + "No action"; + } + } + container notification { + description + "MAC address limit notification action"; + container trap { + must + "not(../both or ../none + or ../syslog)"; + presence "Indicates a trap node is configured."; + description + "Generate SNMP trap"; + } + container both { + must + "not(../trap or ../none + or ../syslog)"; + presence "Indicates a both node is configured."; + description + "Generate syslog message and SNMP trap"; + } + container none { + must + "not(../trap or ../both + or ../syslog)"; + presence "Indicates a none node is configured."; + description + "No notification"; + } + container syslog { + must + "not(../trap or ../both + or ../none)"; + presence "Indicates a syslog node is configured."; + description + "Generate syslog message"; + } + } + } + container port-down { + description + "Configure action when port goes down"; + container flush { + presence "Indicates a flush node is configured."; + description + "Configure MAC flush when port goes down"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC flush when port goes down"; + } + } + } + container secure { + presence "Indicates a secure node is configured."; + description + "MAC Secure configuration commands"; + container logging { + presence "Indicates a logging node is configured."; + description + "Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container action { + description + "MAC secure enforcement action"; + container none { + must "not(../shutdown or ../restrict)"; + presence "Indicates a none node is configured."; + description + "Forward the violating packet and allow the MAC to be relearned"; + } + container shutdown { + must "not(../none or ../restrict)"; + presence "Indicates a shutdown node is configured."; + description + "Shutdown the violating bridge port"; + } + container restrict { + must "not(../none or ../shutdown)"; + presence "Indicates a restrict node is configured."; + description + "Drop the violating packet and not allow the MAC to be relearned"; + } + } + container shutdown-recovery-timeout { + description + "Recovery-timer to automatically revert shutdown action"; + container disable { + must "not(../recovery-timer-in-second)"; + presence "Indicates a disable node is configured."; + description + "Disable shutdown recovery timer"; + } + leaf recovery-timer-in-second { + type uint32 { + range "10..3600" { + description + "Recovery timer in second"; + } + } + must "not(../disable)"; + description + "Recovery timer in second"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC Secure"; + } + } + } + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container snoop { + presence "Indicates a snoop node is configured."; + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + description + "Attach a DHCP profile"; + } + } + container none { + presence "Indicates a none node is configured."; + description + "Disable DHCP snooping"; + } + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + } + } + container mld { + description + "MLD protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "MLD Snooping profile name"; + } + } + description + "Attach a MLD profile"; + } + } + } + container backup { + description + "Backup pseudowire for the access pseudowire"; + container neighbors { + description + "Specify the peer to cross connect"; + list neighbor { + key "address pw-id"; + description + "Specify the peer to cross connect"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the peer"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for this pseudowire"; + } + } + } + } + } + container evpn { + description + "Specify the Ethernet VPN"; + list evi { + key "vpn-id target"; + description + "Ethernet VPN Identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Configure EVPN Instance VPN ID"; + } + leaf target { + type uint32 { + range "1..16777215" { + description + "Remote ac-id"; + } + } + description + "Specify remote attachment circuit identifier"; + } + } + } + } + leaf description { + if-feature "l2vpn_is_cli_supported"; + type string { + length "1..64" { + description + "Bridge-Domain description string"; + } + } + description + "Description for Bridge-Domain"; + } + container efp-visibility { + presence "Indicates a efp-visibility node is configured."; + description + "Enable multicast for multiple VLANs in the bridge of a BVI"; + } + container etree { + presence "Indicates a etree node is configured."; + description + "Configure Bridge Domain EVPN E-Tree"; + container leaf { + presence "Indicates a leaf node is configured."; + description + "Designate Bridge Domain as EVPN E-Tree Leaf"; + } + } + container member { + description + "Bridge domain member"; + container vnis { + description + "Assign VxLAN Network Identifier to bridge domain"; + list vni { + key "vni-id"; + description + "Assign VxLAN Network Identifier to bridge domain"; + leaf vni-id { + type uint32 { + range "1..16777215" { + description + "Specify VxLAN Network Identifier value"; + } + } + description + "Assign VxLAN Network Identifier to bridge domain"; + } + container static-mac-addresses { + description + "Static MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + leaf next-hop { + type inet:ipv4-address-no-zone; + description + "Specify the next hop IP address"; + } + } + } + } + } + } + container pbb { + description + "Configure Provider Backbone Bridge"; + container core { + presence "Indicates a core node is configured."; + description + "PBB core bridge domain"; + container rewrite { + description + "Set the tag rewriting policy"; + container ingress { + description + "Set the tag rewriting policy"; + container tag { + description + "Set the tag rewriting policy"; + container push { + description + "Push one or more tags"; + leaf dot1ad { + type uint32 { + range "1..4094" { + description + "VLAN ID to push"; + } + } + description + "Push a Dot1ad tag"; + } + } + } + } + } + container mac { + description + "MAC configuration commands"; + container aging { + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + must "not(../inactivity)"; + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + container inactivity { + must "not(../absolute)"; + presence "Indicates a inactivity node is configured."; + description + "Inactivity aging type"; + } + } + } + container learning { + presence "Indicates a learning node is configured."; + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + } + container evis { + description + "Ethernet VPN identifier"; + list evi { + key "vpn-id"; + description + "Ethernet VPN identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN identifier"; + } + } + } + } + container edge { + description + "PBB edge bridge domain"; + list i-sid { + key "instance-id core-bridge-name"; + description + "Configure Service Instance Identifier"; + leaf instance-id { + type uint32 { + range "256..16777214" { + description + "Service Instance ID"; + } + } + description + "Configure Service Instance Identifier"; + } + leaf core-bridge-name { + type xr:Cisco-ios-xr-string { + length "1..27" { + description + "Name of the PBB core bridge domain"; + } + } + description + "Specifiy PBB core bridge domain to associate with"; + } + container static-mac-addresses { + description + "Static customer MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static customer MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static customer MAC address"; + } + leaf bmac { + type yang:mac-address; + mandatory true; + description + "Static backbone MAC address to map with"; + } + } + } + leaf unknown-unicast-bmac { + type yang:mac-address; + description + "Unknown Unicast backbone MAC address"; + } + container split-horizon { + description + "Configure split horizon option"; + container group { + description + "Configure split horizon group option"; + container vfi { + description + "Configure split horizon group vfi option"; + container disable { + presence "Indicates a disable node is configured."; + description + "Configure split horizon group vfi disable"; + } + } + } + } + container mac { + description + "MAC configuration commands"; + container aging { + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + must "not(../inactivity)"; + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + container inactivity { + must "not(../absolute)"; + presence "Indicates a inactivity node is configured."; + description + "Inactivity aging type"; + } + } + } + container learning { + presence "Indicates a learning node is configured."; + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + container limit { + description + "MAC-Limit configuration commands"; + leaf maximum { + type uint32 { + range "0..4294967295" { + description + "Number of MAC addresses after which MAC limit action is taken"; + } + } + description + "Number of MAC addresses after which MAC limit action is taken"; + } + container action { + description + "MAC address limit enforcement action"; + container flood { + must + "not(../no-flood or ../shutdown + or ../none)"; + presence "Indicates a flood node is configured."; + description + "Stop learning but continue flooding"; + } + container no-flood { + must + "not(../flood or ../shutdown + or ../none)"; + presence "Indicates a no-flood node is configured."; + description + "Stop learning and stop flooding"; + } + container shutdown { + must + "not(../flood or ../no-flood + or ../none)"; + presence "Indicates a shutdown node is configured."; + description + "Stop forwarding"; + } + container none { + must + "not(../flood or ../no-flood + or ../shutdown)"; + presence "Indicates a none node is configured."; + description + "No action"; + } + } + container notification { + description + "MAC address limit notification action"; + container trap { + must + "not(../both or ../none + or ../syslog)"; + presence "Indicates a trap node is configured."; + description + "Generate SNMP trap"; + } + container both { + must + "not(../trap or ../none + or ../syslog)"; + presence "Indicates a both node is configured."; + description + "Generate syslog message and SNMP trap"; + } + container none { + must + "not(../trap or ../both + or ../syslog)"; + presence "Indicates a none node is configured."; + description + "No notification"; + } + container syslog { + must + "not(../trap or ../both + or ../none)"; + presence "Indicates a syslog node is configured."; + description + "Generate syslog message"; + } + } + } + container secure { + presence "Indicates a secure node is configured."; + description + "MAC Secure configuration commands"; + container logging { + presence "Indicates a logging node is configured."; + description + "Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container action { + description + "MAC secure enforcement action"; + container none { + must "not(../shutdown or ../restrict)"; + presence "Indicates a none node is configured."; + description + "Forward the violating packet and allow the MAC to be relearned"; + } + container shutdown { + must "not(../none or ../restrict)"; + presence "Indicates a shutdown node is configured."; + description + "Shutdown the violating bridge port"; + } + container restrict { + must "not(../none or ../shutdown)"; + presence "Indicates a restrict node is configured."; + description + "Drop the violating packet and not allow the MAC to be relearned"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC Secure"; + } + container accept-shutdown { + presence "Indicates a accept-shutdown node is configured."; + description + "Accept shutdown action to be taken due to MAC violation"; + } + } + } + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container snoop { + presence "Indicates a snoop node is configured."; + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + description + "Attach a DHCP profile"; + } + } + container none { + presence "Indicates a none node is configured."; + description + "Disable DHCP snooping"; + } + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + } + } + } + } + } + container nv { + description + "Configure nV Satellite Settings"; + container satellite { + presence "Indicates a satellite node is configured."; + description + "Configure nV Satellite Settings"; + container offload { + description + "Hardware offloading"; + container ipv4 { + description + "IPv4"; + container multicast { + description + "Multicast"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable IPv4 Multicast Offloading"; + } + } + } + } + } + } + } + } + } + } + } + container pbb { + description + "PBB configuration commands"; + leaf backbone-source-mac { + type yang:mac-address; + description + "Backbone Source MAC"; + } + } + container redundancy { + presence "Indicates a redundancy node is configured."; + description + "Redundancy"; + container iccp { + description + "Inter-Chassis Communication Protocol"; + container groups { + description + "Group configuration"; + list group { + key "group-number"; + description + "Group configuration"; + leaf group-number { + type uint32 { + range "1..4294967295" { + description + "Enter group number"; + } + } + description + "Group configuration"; + } + list interface { + key "interface-name"; + description + "Interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Interface name"; + } + container primary { + description + "Primary VLAN configuration"; + leaf vlan { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List of VLAN IDs in the form of 1-3,5,8-11"; + } + } + description + "Assign primary VLANs"; + } + } + container secondary { + description + "Secondary VLAN configuration"; + leaf vlan { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List of VLAN IDs in the form of 1-3,5,8-11"; + } + } + description + "Assign secondary VLANs"; + } + } + container mac-flush { + description + "Enable STP TCN MAC flushing. Default is MVRP"; + container stp-tcn { + presence "Indicates a stp-tcn node is configured."; + description + "STP topology change notification"; + } + } + container recovery { + description + "Failure recovery reversion delay timer. Default is revertive after 180 seconds."; + leaf delay { + type uint32 { + range "30..3600" { + description + "input time in seconds"; + } + } + description + "Specify delay before recovery reversion after failure clears"; + } + } + } + container multi-homing { + description + "ICCP-based service multi-homing"; + leaf node-id { + type uint32 { + range "0..254" { + description + "Node ID"; + } + } + description + "Enter multi-homing node ID"; + } + } + } + } + } + } + container ethernet { + description + "Ethernet"; + container ring { + description + "Ring"; + list g8032 { + key "ethernet-ring-name"; + description + "Specify the g.8032 ethernet ring"; + leaf ethernet-ring-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the ethernet ring"; + } + } + description + "Specify the g.8032 ethernet ring"; + } + container port0 { + description + "Port0 of the local node connected to G.8032 ring"; + list interface { + key "interface-name"; + description + "Assign interface as port0"; + leaf interface-name { + type xr:Interface-name; + description + "Assign interface as port0"; + } + container monitor { + description + "Assign the monitor interface for g.8032 ring port0"; + leaf interface { + type xr:Interface-name; + description + "Assign the monitor interface"; + } + } + } + } + container port1 { + description + "Port1 of the local node connected to G.8032 ring"; + list interface { + key "interface-name"; + description + "Assign port1 interface"; + leaf interface-name { + type xr:Interface-name; + description + "Assign port1 interface"; + } + container monitor { + description + "Assign the monitor interface for g.8032 ring port1"; + leaf interface { + type xr:Interface-name; + description + "Assign the monitor interface"; + } + } + } + container none { + presence "Indicates a none node is configured."; + description + "Assign port1 as none to enable g.8032 open-ring"; + } + container virtual { + presence "Indicates a virtual node is configured."; + description + "Assign port1 as virtual to enable g.8032 sub-ring"; + } + } + container open-ring { + presence "Indicates a open-ring node is configured."; + description + "Specify the g.8032 ring as open ring"; + } + container exclusion-list { + description + "Specifiy exclusion list not protected by ERP"; + leaf vlan-ids { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "List of VLAN IDs in the form a-b,c,d,e-f,g,untagged"; + } + } + description + "Assign list of VLANs to the exclusion list"; + } + } + container instances { + description + "Configure the g.8032 ethernet ring instance"; + list instance { + key "instance-id"; + description + "Configure the g.8032 ethernet ring instance"; + leaf instance-id { + type uint32 { + range "1..2" { + description + "Instance number"; + } + } + description + "Configure the g.8032 ethernet ring instance"; + } + leaf description { + type string { + length "1..32" { + description + "Description for the instance"; + } + } + description + "Description for g.8032 ethernet ring instance"; + } + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Ethernet ring profile name"; + } + } + description + "Specify associated g.8032 ethernet ring profile"; + } + container rpl { + description + "Specify RPL owner, neighbor or next-neighbor"; + container port0 { + presence "Indicates a port0 node is configured."; + description + "Assign port0 as RPL owner, neighbor or next-neighbor"; + container owner { + must "not(../neighbor or ../next-neighbor)"; + presence "Indicates a owner node is configured."; + description + "RPL owner"; + } + container neighbor { + must "not(../owner or ../next-neighbor)"; + presence "Indicates a neighbor node is configured."; + description + "RPL neighbor"; + } + container next-neighbor { + must "not(../owner or ../neighbor)"; + presence "Indicates a next-neighbor node is configured."; + description + "RPL next neighbor"; + } + } + container port1 { + presence "Indicates a port1 node is configured."; + description + "Assign port1 as RPL owner, neighbor or next-neighbor"; + container owner { + must "not(../neighbor or ../next-neighbor)"; + presence "Indicates a owner node is configured."; + description + "RPL owner"; + } + container neighbor { + must "not(../owner or ../next-neighbor)"; + presence "Indicates a neighbor node is configured."; + description + "RPL neighbor"; + } + container next-neighbor { + must "not(../owner or ../neighbor)"; + presence "Indicates a next-neighbor node is configured."; + description + "RPL next neighbor"; + } + } + } + container inclusion-list { + description + "Specifiy inclusion list protected by ERP"; + leaf vlan-ids { + type string { + length "1..800" { + description + "List of VLAN IDs in the form a-b,c,d,e-f,g,untagged"; + } + } + description + "Associates a set of VLAN IDs with the current instance"; + } + } + container aps-channel { + presence "Indicates a aps-channel node is configured."; + description + "Configure g.8032 instance aps-channel"; + leaf level { + type uint32 { + range "0..7" { + description + "APS message level"; + } + } + description + "Specify the aps message level"; + } + container port0 { + description + "Config g.8032 aps-channel info associated to port0"; + leaf interface { + type xr:Interface-name; + description + "Assign interface associated to port0"; + } + } + container port1 { + description + "Config g.8032 aps-channel info associated to port1"; + leaf interface { + type xr:Interface-name; + must + "not(../bridge-domain or ../xconnect + or ../none)"; + description + "Assign interface associated to port1"; + } + leaf bridge-domain { + type xr:Cisco-ios-xr-string { + length "1..27" { + description + "Name of the bridge domain"; + } + } + must + "not(../interface or ../xconnect + or ../none)"; + description + "Specify VPLS domain where virtual channel is connected"; + } + leaf xconnect { + type xr:Cisco-ios-xr-string { + length "1..38" { + description + "Name of the xconnect"; + } + } + must + "not(../interface or ../bridge-domain + or ../none)"; + description + "Specify VPWS xconnect where virtual channel is connected"; + } + container none { + must + "not(../interface or ../bridge-domain + or ../xconnect)"; + presence "Indicates a none node is configured."; + description + "Specify APS channel port1 as none"; + } + } + } + } + } + } + } + } + container flexible-xconnect-service { + description + "Configure flexible-xconnect-service"; + container vlan-unawares { + description + "Configure in vlan-unaware mode"; + list vlan-unaware { + key "service-name"; + description + "Configure in vlan-unaware mode"; + leaf service-name { + type xr:Cisco-ios-xr-string { + length "1..23" { + description + "Name of the flexible-xconnect-service"; + } + } + description + "Configure in vlan-unaware mode"; + } + container interfaces { + description + "Specify the attachment circuit "; + list interface { + key "interface-name"; + description + "Specify sub-interface name to attach to flexible xconnect service"; + leaf interface-name { + type xr:Interface-name; + description + "Specify sub-interface name to attach to flexible xconnect service"; + } + } + } + container neighbor { + description + "Specify the peer to cross connect"; + container evpn { + description + "Specify the Ethernet VPN"; + container evis { + description + "Ethernet VPN Identifier"; + list evi { + key "vpn-id remote-ac-id"; + description + "Ethernet VPN Identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN Identifier"; + } + leaf remote-ac-id { + type uint32 { + range "1..16777215" { + description + "Remote ac-id (hex or decimal format)"; + } + } + description + "Specify remote attachment circuit identifier"; + } + } + } + } + } + } + } + container vlan-aware { + description + "Configure in vlan-aware mode"; + container evis { + description + "Ethernet VPN Identifier"; + list evi { + key "vpn-id"; + description + "Ethernet VPN Identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN Identifier"; + } + container interfaces { + description + "Specify the attachment circuit "; + list interface { + key "interface-name"; + description + "Specify sub-interface name to attach to flexible xconnect service"; + leaf interface-name { + type xr:Interface-name; + description + "Specify sub-interface name to attach to flexible xconnect service"; + } + } + } + } + } + } + } + container vlan-switches { + description + "Configure a VLAN Switch"; + list vlan-switch { + key "vlan-switch-name"; + description + "Configure a VLAN Switch"; + leaf vlan-switch-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the VLAN Switch"; + } + } + description + "Configure a VLAN Switch"; + } + container vlan { + description + "Configure VLAN IDs"; + leaf vlan-id-range1-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + description + "Start of VLAN ID range"; + } + leaf vlan-id-range1-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range1-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range2-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range1-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range2-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range2-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range3-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range2-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range3-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range3-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range4-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range3-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range4-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range4-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range5-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range4-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range5-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range5-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range6-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range5-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range6-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range6-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range7-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range6-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range7-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range7-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range8-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range7-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range8-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range8-start"; + description + "End of VLAN ID range"; + } + leaf vlan-id-range9-start { + type uint32 { + range "1..4094" { + description + "Start of VLAN ID range"; + } + } + must "../vlan-id-range8-start"; + description + "Start of VLAN ID range"; + } + leaf vlan-id-range9-end { + type uint32 { + range "1..4094" { + description + "End of VLAN ID range"; + } + } + must "../vlan-id-range9-start"; + description + "End of VLAN ID range"; + } + } + container interfaces { + description + "Assign VSP interface to VLAN Switch"; + list interface { + key "interface-name"; + description + "Specify interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Specify interface name"; + } + } + } + container routed { + description + "VLAN Switch L3 interfaces"; + container interface { + description + "Assign L3 interfaces to VLAN Switch"; + container bvi { + description + "Assign BVI interfaces to VLAN Switch"; + leaf interface-number-range1-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + description + "Start of interface number range"; + } + leaf interface-number-range1-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range1-start"; + description + "End of interface number range"; + } + leaf interface-number-range2-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range1-start"; + description + "Start of interface number range"; + } + leaf interface-number-range2-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range2-start"; + description + "End of interface number range"; + } + leaf interface-number-range3-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range2-start"; + description + "Start of interface number range"; + } + leaf interface-number-range3-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range3-start"; + description + "End of interface number range"; + } + leaf interface-number-range4-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range3-start"; + description + "Start of interface number range"; + } + leaf interface-number-range4-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range4-start"; + description + "End of interface number range"; + } + leaf interface-number-range5-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range4-start"; + description + "Start of interface number range"; + } + leaf interface-number-range5-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range4-start"; + description + "End of interface number range"; + } + leaf interface-number-range6-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range5-start"; + description + "Start of interface number range"; + } + leaf interface-number-range6-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range6-start"; + description + "End of interface number range"; + } + leaf interface-number-range7-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range6-start"; + description + "Start of interface number range"; + } + leaf interface-number-range7-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range7-start"; + description + "End of interface number range"; + } + leaf interface-number-range8-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range7-start"; + description + "Start of interface number range"; + } + leaf interface-number-range8-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range8-start"; + description + "End of interface number range"; + } + leaf interface-number-range9-start { + type uint32 { + range "1..4294967295" { + description + "Start of interface number range"; + } + } + must "../interface-number-range8-start"; + description + "Start of interface number range"; + } + leaf interface-number-range9-end { + type uint32 { + range "1..4294967295" { + description + "End of interface number range"; + } + } + must "../interface-number-range9-start"; + description + "End of interface number range"; + } + } + } + } + container vni { + description + "Assign VxLAN Network Identifiers to VLAN Switch"; + leaf vni-range1-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + description + "Start of VNI range"; + } + leaf vni-range1-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range1-start"; + description + "End of VNI range"; + } + leaf vni-range2-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range1-start"; + description + "Start of VNI range"; + } + leaf vni-range2-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range2-start"; + description + "End of VNI range"; + } + leaf vni-range3-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range2-start"; + description + "Start of VNI range"; + } + leaf vni-range3-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range3-start"; + description + "End of VNI range"; + } + leaf vni-range4-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range3-start"; + description + "Start of VNI range"; + } + leaf vni-range4-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range4-start"; + description + "End of VNI range"; + } + leaf vni-range5-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range4-start"; + description + "Start of VNI range"; + } + leaf vni-range5-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range5-start"; + description + "End of VNI range"; + } + leaf vni-range6-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range5-start"; + description + "Start of VNI range"; + } + leaf vni-range6-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range6-start"; + description + "End of VNI range"; + } + leaf vni-range7-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range6-start"; + description + "Start of VNI range"; + } + leaf vni-range7-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range7-start"; + description + "End of VNI range"; + } + leaf vni-range8-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range7-start"; + description + "Start of VNI range"; + } + leaf vni-range8-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range8-start"; + description + "End of VNI range"; + } + leaf vni-range9-start { + type uint32 { + range "1..16777215" { + description + "Start of VNI range"; + } + } + must "../vni-range8-start"; + description + "Start of VNI range"; + } + leaf vni-range9-end { + type uint32 { + range "1..16777215" { + description + "End of VNI range"; + } + } + must "../vni-range9-start"; + description + "End of VNI range"; + } + } + container bridge-domains { + description + "Configure bridge domain"; + list bridge-domain { + key "bridge-domain-name"; + description + "Configure bridge domain"; + leaf bridge-domain-name { + type xr:Cisco-ios-xr-string { + length "1..27" { + description + "Name of the bridge domain in the following format: vlan#"; + } + pattern "vlan[0-9]+"; + } + description + "Configure bridge domain"; + } + container evis { + description + "Ethernet VPN identifier"; + list evi { + key "vpn-id"; + description + "Ethernet VPN identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN identifier"; + } + } + } + container vnis { + description + "VxLAN VPN identifier"; + list vni { + key "vni-id"; + description + "VxLAN VPN identifier"; + leaf vni-id { + type uint32 { + range "1..16777215" { + description + "VxLAN VPN ID to set"; + } + } + description + "VxLAN VPN identifier"; + } + } + } + container nv { + description + "Configure nV Satellite Settings"; + container satellite { + presence "Indicates a satellite node is configured."; + description + "Configure nV Satellite Settings"; + container offload { + description + "Hardware offloading"; + container ipv4 { + description + "IPv4"; + container multicast { + description + "Multicast"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable IPv4 Multicast Offloading"; + } + } + } + } + } + } + container pbb { + description + "Configure Provider Backbone Bridge"; + container core { + presence "Indicates a core node is configured."; + description + "PBB core bridge domain"; + container evis { + description + "Ethernet VPN identifier"; + list evi { + key "vpn-id"; + description + "Ethernet VPN identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN identifier"; + } + } + } + container rewrite { + description + "Set the tag rewriting policy"; + container ingress { + description + "Set the tag rewriting policy"; + container tag { + description + "Set the tag rewriting policy"; + container push { + description + "Push one or more tags"; + leaf dot1ad { + type uint32 { + range "1..4094" { + description + "VLAN ID to push"; + } + } + description + "Push a Dot1ad tag"; + } + } + } + } + } + container mac { + description + "MAC configuration commands"; + container aging { + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + must "not(../inactivity)"; + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + container inactivity { + must "not(../absolute)"; + presence "Indicates a inactivity node is configured."; + description + "Inactivity aging type"; + } + } + } + container learning { + presence "Indicates a learning node is configured."; + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + } + } + container edge { + description + "PBB edge bridge domain"; + list i-sid { + key "instance-id core-bridge-name"; + description + "Configure Service Instance Identifier"; + leaf instance-id { + type uint32 { + range "256..16777214" { + description + "Service Instance ID"; + } + } + description + "Configure Service Instance Identifier"; + } + leaf core-bridge-name { + type xr:Cisco-ios-xr-string { + length "1..27" { + description + "Name of the PBB core bridge domain"; + } + } + description + "Specifiy PBB core bridge domain to associate with"; + } + container static-mac-addresses { + description + "Static customer MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static customer MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static customer MAC address"; + } + leaf bmac { + type yang:mac-address; + mandatory true; + description + "Static backbone MAC address to map with"; + } + } + } + leaf unknown-unicast-bmac { + type yang:mac-address; + description + "Unknown Unicast backbone MAC address"; + } + container split-horizon { + description + "Configure split horizon option"; + container group { + description + "Configure split horizon group option"; + container vfi { + description + "Configure split horizon group vfi option"; + container disable { + presence "Indicates a disable node is configured."; + description + "Configure split horizon group vfi disable"; + } + } + } + } + container mac { + description + "MAC configuration commands"; + container aging { + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + must "not(../inactivity)"; + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + container inactivity { + must "not(../absolute)"; + presence "Indicates a inactivity node is configured."; + description + "Inactivity aging type"; + } + } + } + container learning { + presence "Indicates a learning node is configured."; + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + container limit { + description + "MAC-Limit configuration commands"; + leaf maximum { + type uint32 { + range "0..4294967295" { + description + "Number of MAC addresses after which MAC limit action is taken"; + } + } + description + "Number of MAC addresses after which MAC limit action is taken"; + } + container action { + description + "MAC address limit enforcement action"; + container flood { + must + "not(../no-flood or ../shutdown + or ../none)"; + presence "Indicates a flood node is configured."; + description + "Stop learning but continue flooding"; + } + container no-flood { + must + "not(../flood or ../shutdown + or ../none)"; + presence "Indicates a no-flood node is configured."; + description + "Stop learning and stop flooding"; + } + container shutdown { + must + "not(../flood or ../no-flood + or ../none)"; + presence "Indicates a shutdown node is configured."; + description + "Stop forwarding"; + } + container none { + must + "not(../flood or ../no-flood + or ../shutdown)"; + presence "Indicates a none node is configured."; + description + "No action"; + } + } + container notification { + description + "MAC address limit notification action"; + container trap { + must + "not(../both or ../none + or ../syslog)"; + presence "Indicates a trap node is configured."; + description + "Generate SNMP trap"; + } + container both { + must + "not(../trap or ../none + or ../syslog)"; + presence "Indicates a both node is configured."; + description + "Generate syslog message and SNMP trap"; + } + container none { + must + "not(../trap or ../both + or ../syslog)"; + presence "Indicates a none node is configured."; + description + "No notification"; + } + container syslog { + must + "not(../trap or ../both + or ../none)"; + presence "Indicates a syslog node is configured."; + description + "Generate syslog message"; + } + } + } + container secure { + presence "Indicates a secure node is configured."; + description + "MAC Secure configuration commands"; + container logging { + presence "Indicates a logging node is configured."; + description + "Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container action { + description + "MAC secure enforcement action"; + container none { + must "not(../shutdown or ../restrict)"; + presence "Indicates a none node is configured."; + description + "Forward the violating packet and allow the MAC to be relearned"; + } + container shutdown { + must "not(../none or ../restrict)"; + presence "Indicates a shutdown node is configured."; + description + "Shutdown the violating bridge port"; + } + container restrict { + must "not(../none or ../shutdown)"; + presence "Indicates a restrict node is configured."; + description + "Drop the violating packet and not allow the MAC to be relearned"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC Secure"; + } + container accept-shutdown { + presence "Indicates a accept-shutdown node is configured."; + description + "Accept shutdown action to be taken due to MAC violation"; + } + } + } + container dhcp { + presence "Indicates a dhcp node is configured."; + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container snoop { + presence "Indicates a snoop node is configured."; + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + description + "Attach a DHCP profile"; + } + } + container none { + presence "Indicates a none node is configured."; + description + "Disable DHCP snooping"; + } + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + } + } + } + } + } + leaf mtu { + type uint32 { + range "46..65535" { + description + "Maximum transmission unit size (payload) in bytes"; + } + } + description + "Maximum transmission unit (payload) for this Bridge Domain"; + } + container coupled-mode { + if-feature "l2vpn_is_cli_supported"; + presence "Indicates a coupled-mode node is configured."; + description + "Enable coupled mode for the Bridge Domain"; + } + container transport-mode { + description + "Bridge domain transport mode"; + container vlan { + description + "Vlan tagged mode"; + container passthrough { + presence "Indicates a passthrough node is configured."; + description + "passthrough incoming tags"; + } + } + } + container flooding { + description + "Traffic flooding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable flooding"; + } + } + container dynamic-arp-inspection { + presence "Indicates a dynamic-arp-inspection node is configured."; + description + "Dynamic ARP Inspection"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + } + container address-validation { + presence "Indicates a address-validation node is configured."; + description + "Address Validation Configurations"; + container src-mac { + presence "Indicates a src-mac node is configured."; + description + "Match Source MAC Address"; + } + container dst-mac { + presence "Indicates a dst-mac node is configured."; + description + "Match Destination MAC Address"; + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Match IPv4 Address"; + } + } + } + container ip-source-guard { + presence "Indicates a ip-source-guard node is configured."; + description + "IP Source Guard"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + } + } + container dhcp { + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container snoop { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + description + "Attach a DHCP profile"; + } + } + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "disable IGMP snooping for the current bridge domain"; + } + } + } + container mld { + description + "MLD protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "MLD Snooping profile name"; + } + } + description + "Attach a MLD profile"; + } + } + } + container storm-control { + description + "Storm Control"; + container broadcast { + description + "Broadcast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container multicast { + description + "Multicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container unknown-unicast { + description + "Unknown-unicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + } + container interface { + description + "Assign interface to bridge domain"; + list interface { + key "interface-name"; + description + "Specify interface name"; + leaf interface-name { + type xr:Interface-name; + description + "Specify interface name"; + } + container flooding { + presence "Indicates a flooding node is configured."; + description + "Traffic flooding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable flooding"; + } + } + container storm-control { + description + "Storm Control"; + container broadcast { + description + "Broadcast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container multicast { + description + "Multicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + container unknown-unicast { + description + "Unknown-unicast Storm Control"; + leaf pps { + type uint32 { + range "1..160000" { + description + "storm control pps value"; + } + } + description + "Set the storm control pps"; + } + leaf kbps { + type uint32 { + range "64..1280000" { + description + "storm control kbps value"; + } + } + description + "Set the storm control kbps"; + } + } + } + container mac { + description + "MAC configuration commands"; + container aging { + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + must "not(../inactivity)"; + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + container inactivity { + must "not(../absolute)"; + presence "Indicates a inactivity node is configured."; + description + "Inactivity aging type"; + } + } + } + container learning { + presence "Indicates a learning node is configured."; + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + container limit { + description + "MAC-Limit configuration commands"; + leaf maximum { + type uint32 { + range "0..4294967295" { + description + "Number of MAC addresses after which MAC limit action is taken"; + } + } + description + "Number of MAC addresses after which MAC limit action is taken"; + } + container action { + description + "MAC address limit enforcement action"; + container flood { + must + "not(../no-flood or ../shutdown + or ../none)"; + presence "Indicates a flood node is configured."; + description + "Stop learning but continue flooding"; + } + container no-flood { + must + "not(../flood or ../shutdown + or ../none)"; + presence "Indicates a no-flood node is configured."; + description + "Stop learning and stop flooding"; + } + container shutdown { + must + "not(../flood or ../no-flood + or ../none)"; + presence "Indicates a shutdown node is configured."; + description + "Stop forwarding"; + } + container none { + must + "not(../flood or ../no-flood + or ../shutdown)"; + presence "Indicates a none node is configured."; + description + "No action"; + } + } + container notification { + description + "MAC address limit notification action"; + container trap { + must + "not(../both or ../none + or ../syslog)"; + presence "Indicates a trap node is configured."; + description + "Generate SNMP trap"; + } + container both { + must + "not(../trap or ../none + or ../syslog)"; + presence "Indicates a both node is configured."; + description + "Generate syslog message and SNMP trap"; + } + container none { + must + "not(../trap or ../both + or ../syslog)"; + presence "Indicates a none node is configured."; + description + "No notification"; + } + container syslog { + must + "not(../trap or ../both + or ../none)"; + presence "Indicates a syslog node is configured."; + description + "Generate syslog message"; + } + } + } + container port-down { + description + "Configure action when port goes down"; + container flush { + presence "Indicates a flush node is configured."; + description + "Configure MAC flush when port goes down"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC flush when port goes down"; + } + } + } + container secure { + presence "Indicates a secure node is configured."; + description + "MAC Secure configuration commands"; + container logging { + presence "Indicates a logging node is configured."; + description + "Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container action { + description + "MAC secure enforcement action"; + container none { + must "not(../shutdown or ../restrict)"; + presence "Indicates a none node is configured."; + description + "Forward the violating packet and allow the MAC to be relearned"; + } + container shutdown { + must "not(../none or ../restrict)"; + presence "Indicates a shutdown node is configured."; + description + "Shutdown the violating bridge port"; + } + container restrict { + must "not(../none or ../shutdown)"; + presence "Indicates a restrict node is configured."; + description + "Drop the violating packet and not allow the MAC to be relearned"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC Secure"; + } + } + } + container dynamic-arp-inspection { + presence "Indicates a dynamic-arp-inspection node is configured."; + description + "Dynamic ARP Inspection"; + container logging { + presence "Indicates a logging node is configured."; + description + "Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container address-validation { + presence "Indicates a address-validation node is configured."; + description + "Address Validation Configurations"; + container src-mac { + presence "Indicates a src-mac node is configured."; + description + "Match Source MAC Address"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable Source MAC Address check"; + } + } + container dst-mac { + presence "Indicates a dst-mac node is configured."; + description + "Match Destination MAC Address"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable Destimation MAC Address check"; + } + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Match IPv4 Address"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable IPV4 Address check"; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Dynamic Arp Inspection"; + } + } + container ip-source-guard { + presence "Indicates a ip-source-guard node is configured."; + description + "IP Source Guard"; + container logging { + presence "Indicates a logging node is configured."; + description + "Logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable logging"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable IP Source Guard"; + } + } + container dhcp { + if-feature "l2vpn_is_cli_supported"; + presence "Indicates a dhcp node is configured."; + description + "DHCP protocol"; + container ipv4 { + description + "IP Version 4"; + container snoop { + presence "Indicates a snoop node is configured."; + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "DHCPv4 Snooping profile name"; + } + } + mandatory true; + description + "Attach a DHCP profile"; + } + } + container none { + presence "Indicates a none node is configured."; + description + "Disable DHCP snooping"; + } + } + } + container static-mac-addresses { + description + "Static MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + } + } + container split-horizon { + description + "Configure split horizon group"; + container group { + presence "Indicates a group node is configured."; + description + "Configure split horizon group"; + } + } + container igmp { + description + "IGMP protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "IGMP Snooping profile name"; + } + } + description + "Attach an IGMP profile"; + } + } + } + container mld { + description + "MLD protocol"; + container snooping { + description + "Set the snooping profile"; + leaf profile { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "MLD Snooping profile name"; + } + } + description + "Attach a MLD profile"; + } + } + } + } + } + container routed { + description + "Bridge domain L3 interface"; + list interface { + key "interface-name"; + description + "Assign interface to bridge domain"; + leaf interface-name { + type xr:Interface-name; + description + "Assign interface to bridge domain"; + } + container split-horizon { + description + "Configure split-horizon group"; + container group { + description + "Configure split-horizon group"; + container core { + presence "Indicates a core node is configured."; + description + "Configure BVI under SHG 1"; + } + } + } + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "shutdown the Bridge Domain"; + } + container mac { + description + "MAC configuration commands"; + container aging { + if-feature "l2vpn_is_cli_supported"; + description + "MAC-Aging configuration commands"; + leaf time { + type uint32 { + range "300..30000" { + description + "MAC address aging time in seconds"; + } + } + description + "Mac aging"; + } + container type { + description + "MAC address aging type"; + container absolute { + presence "Indicates a absolute node is configured."; + description + "Absolute aging type"; + } + } + } + container static-addresses { + description + "Static MAC address for filtering"; + list static-address { + must "drop"; + key "mac-address"; + description + "Static MAC address for filtering"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address for filtering"; + } + container drop { + presence "Indicates a drop node is configured."; + description + "Drop matching packets"; + } + } + } + container learning { + description + "MAC learning"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC learning"; + } + } + container withdraw { + description + "MAC withdraw"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC withdraw"; + } + container access-pw { + description + "MAC withdraw sent to Access PWs "; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC withdraw on Access PW"; + } + } + container relay { + presence "Indicates a relay node is configured."; + description + "MAC withdraw relayed to Access PWs "; + } + container state-down { + must "not(../optimize)"; + presence "Indicates a state-down node is configured."; + description + "MAC withdraw sent on bridge port down"; + } + container optimize { + must "not(../state-down)"; + presence "Indicates a optimize node is configured."; + description + "Optimized LDP MAC withdraw (when port goes down)"; + } + } + container limit { + description + "MAC-Limit configuration commands"; + leaf maximum { + type uint32 { + range "0..4294967295" { + description + "Number of MAC addresses after which MAC limit action is taken"; + } + } + description + "Number of MAC addresses after which MAC limit action is taken"; + } + container action { + description + "MAC address limit enforcement action"; + container flood { + must "not(../no-flood or ../shutdown)"; + presence "Indicates a flood node is configured."; + description + "Stop learning but continue flooding"; + } + container no-flood { + must "not(../flood or ../shutdown)"; + presence "Indicates a no-flood node is configured."; + description + "Stop learning and stop flooding"; + } + container shutdown { + must "not(../flood or ../no-flood)"; + presence "Indicates a shutdown node is configured."; + description + "Stop forwarding"; + } + } + container notification { + description + "MAC address limit notification action"; + container trap { + must "not(../both or ../none)"; + presence "Indicates a trap node is configured."; + description + "Generate SNMP trap"; + } + container both { + must "not(../trap or ../none)"; + presence "Indicates a both node is configured."; + description + "Generate syslog message and SNMP trap"; + } + container none { + must "not(../trap or ../both)"; + presence "Indicates a none node is configured."; + description + "No notification"; + } + } + } + container port-down { + description + "Configure action when port goes down"; + container flush { + description + "Configure MAC flush when port goes down"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable MAC flush when port goes down"; + } + } + } + container secure { + presence "Indicates a secure node is configured."; + description + "MAC Secure configuration commands"; + container logging { + presence "Indicates a logging node is configured."; + description + "Enable Logging"; + } + container threshold { + presence "Indicates a threshold node is configured."; + description + "Threshold based mac secure"; + } + container action { + description + "MAC secure enforcement action"; + container none { + must "not(../shutdown)"; + presence "Indicates a none node is configured."; + description + "Forward the violating packet and allow the MAC to be relearned"; + } + container shutdown { + must "not(../none)"; + presence "Indicates a shutdown node is configured."; + description + "Shutdown the violating bridge port"; + } + } + } + } + leaf description { + type string { + length "1..64" { + description + "Bridge-Domain description string"; + } + } + description + "Description for Bridge-Domain"; + } + container member { + description + "Bridge domain member"; + container vnis { + description + "Assign VxLAN Network Identifier to bridge domain"; + list vni { + key "vni-id"; + description + "Assign VxLAN Network Identifier to bridge domain"; + leaf vni-id { + type uint32 { + range "1..16777215" { + description + "Specify VxLAN Network Identifier value"; + } + } + description + "Assign VxLAN Network Identifier to bridge domain"; + } + container static-mac-addresses { + description + "Static MAC address"; + list static-mac-address { + key "mac-address"; + description + "Static MAC address"; + leaf mac-address { + type yang:mac-address; + description + "Static MAC address"; + } + leaf next-hop { + type inet:ipv4-address-no-zone; + description + "Specify the next hop IP address"; + } + } + } + } + } + } + } + } + } + } + container pw-classes { + description + "Pseudowire class template"; + list pw-class { + key "pw-class-name"; + description + "Pseudowire class template"; + leaf pw-class-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name (Max character length: 32)"; + } + } + description + "Pseudowire class template"; + } + container encapsulation { + description + "Pseudowire encapsulation"; + container mpls { + presence "Indicates a mpls node is configured."; + description + "Set pseudowire encapsulation to MPLS"; + container protocol { + description + "Set the dynamic pseudowire signaling protocol"; + container ldp { + presence "Indicates a ldp node is configured."; + description + "Set LDP as the signaling protocol for this pseudowire class"; + } + } + container control-word { + presence "Indicates a control-word node is configured."; + description + "Enable Control word"; + } + container transport-mode { + if-feature "l2vpn_is_cli_supported"; + description + "Remote transport mode"; + container ethernet { + must "not(../vlan or ../passthrough)"; + presence "Indicates a ethernet node is configured."; + description + "Ethernet port mode"; + } + container vlan { + must "not(../ethernet or ../passthrough)"; + presence "Indicates a vlan node is configured."; + description + "Vlan tagged mode"; + } + container passthrough { + must "not(../ethernet or ../vlan)"; + presence "Indicates a passthrough node is configured."; + description + "passthrough incoming tags"; + } + } + container vccv { + description + "VCCV settings"; + container verification-type { + description + "Enable or disable VCCV verification type"; + container none { + presence "Indicates a none node is configured."; + description + "No VCCV verification"; + } + } + } + container sequencing { + description + "Sequencing"; + container transmit { + must "not(../receive or ../both)"; + presence "Indicates a transmit node is configured."; + description + "Sequencing on transmit side"; + leaf resync { + type uint32 { + range "5..65535" { + description + "Resync threshold"; + } + } + description + "Set the threshold for out-of-sequence packets before resync"; + } + } + container receive { + must "not(../transmit or ../both)"; + presence "Indicates a receive node is configured."; + description + "Sequencing on receive side"; + leaf resync { + type uint32 { + range "5..65535" { + description + "Resync threshold"; + } + } + description + "Set the threshold for out-of-sequence packets before resync"; + } + } + container both { + must "not(../transmit or ../receive)"; + presence "Indicates a both node is configured."; + description + "Sequencing on both transmit and receive side"; + leaf resync { + type uint32 { + range "5..65535" { + description + "Resync threshold"; + } + } + description + "Set the threshold for out-of-sequence packets before resync"; + } + } + } + container preferred-path { + description + "Preferred path tunnel settings"; + container interface { + description + "Use tunnel interface for preferred path"; + container tunnel-te { + description + "Specify TE tunnel interface name for preferred path"; + leaf tunnel-number { + type uint32 { + range "0..65535" { + description + "Specify tunnel number for preferred path"; + } + } + must + "not(../tunnel-name or ../../tunnel-ip or + ../../tunnel-tp or ../../../sr-te/policy)"; + description + "Specify tunnel number for preferred path"; + } + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..60" { + description + "Specify named tunnel for preferred path"; + } + } + must + "not(../tunnel-number or ../../tunnel-ip or + ../../tunnel-tp or ../../../sr-te/policy)"; + description + "Specify named tunnel for preferred path"; + } + } + leaf tunnel-ip { + type uint32 { + range "0..65535" { + description + "Specify tunnel number for preferred path"; + } + } + must + "not(../tunnel-te/tunnel-number or ../tunnel-te/tunnel-name or + ../tunnel-tp or ../../sr-te/policy)"; + description + "Specify IP tunnel interface name for preferred path"; + } + leaf tunnel-tp { + type uint32 { + range "0..65535" { + description + "Specify tunnel number for preferred path"; + } + } + must + "not(../tunnel-te/tunnel-number or ../tunnel-te/tunnel-name or + ../tunnel-ip or ../../sr-te/policy)"; + description + "Specify TP tunnel interface name for preferred path"; + } + } + container sr-te { + description + "Use segment-routing traffic-engineering for preferred path"; + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..60" { + description + "Name of SR TE policy"; + } + } + must + "not(../../interface/tunnel-te/tunnel-number or + ../../interface/tunnel-te/tunnel-name or + ../../interface/tunnel-ip or + ../../interface/tunnel-tp)"; + description + "Specify SR TE policy for preferred path"; + } + } + container fallback { + description + "Fallback option for preferred path"; + container disable { + must + "../../interface/tunnel-te/tunnel-number or + ../../interface/tunnel-te/tunnel-name or + ../../interface/tunnel-ip or + ../../interface/tunnel-tp or + ../../sr-te/policy"; + presence "Indicates a disable node is configured."; + description + "Disable fallback for preferred path"; + } + } + } + container switching-tlv { + description + "PW switching point TLV"; + container hide { + presence "Indicates a hide node is configured."; + description + "Hide TLV"; + } + } + container tag-rewrite { + description + "tag rewrite mode"; + container ingress { + description + "configuring ingress mode"; + leaf vlan { + type uint32 { + range "1..4094" { + description + "vlan tagged mode"; + } + } + description + "vlan tagged mode"; + } + } + } + container redundancy { + if-feature "l2vpn_is_cli_supported"; + description + "PW redundancy settings"; + container one-way { + presence "Indicates a one-way node is configured."; + description + "Force one-way PW redundancy behavior in Redundancy Group"; + } + leaf initial-delay { + type uint32 { + range "0..120" { + description + "Time in seconds (round to 10). The default is 60"; + } + } + description + "Initial delay before activating the redundant PW"; + } + } + container load-balancing { + description + "PW class Load Balancing"; + container pw-label { + presence "Indicates a pw-label node is configured."; + description + "Enable PW VC label based load balancing"; + } + container flow-label { + description + "Flow label based load balancing setting"; + container transmit { + must "not(../receive or ../both)"; + presence "Indicates a transmit node is configured."; + description + "Insert Flow label on transmit "; + container static { + presence "Indicates a static node is configured."; + description + "Set Flow label parameters statically"; + } + } + container receive { + must "not(../transmit or ../both)"; + presence "Indicates a receive node is configured."; + description + "Discard Flow label on receive"; + container static { + presence "Indicates a static node is configured."; + description + "Set Flow label parameters statically"; + } + } + container both { + must "not(../transmit or ../receive)"; + presence "Indicates a both node is configured."; + description + "Insert/Discard Flow label on transmit/recceive"; + container static { + presence "Indicates a static node is configured."; + description + "Set Flow label parameters statically"; + } + } + container code { + description + "Flow label TLV code"; + container one7 { + presence "Indicates a one7 node is configured."; + description + "Legacy code value"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disables sending code 17 TLV"; + } + } + } + } + } + container ipv4 { + description + "Set the local source IPv4 address"; + leaf source { + type inet:ipv4-address-no-zone; + description + "The local source IPv4 address"; + } + } + } + container l2tpv3 { + presence "Indicates a l2tpv3 node is configured."; + description + "Set pseudowire encapsulation to L2TPV3"; + container protocol { + description + "Set the dynamic pseudowire signaling protocol"; + container l2tpv3 { + presence "Indicates a l2tpv3 node is configured."; + description + "Set L2TPv3 as the signaling protocol for this pseudowire class"; + leaf class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "The L2TPv3 class name"; + } + pattern "[a-zA-Z][-_.a-z0-9A-Z]*"; + } + description + "L2TPv3 class"; + } + } + } + container dfbit { + description + "Settings of the Don't Fragment Bit (DFBIT)"; + container set { + presence "Indicates a set node is configured."; + description + "Set the DFBIT to 1"; + } + } + container tos { + description + "Setting of Type of Service (ToS)"; + leaf value { + type uint32 { + range "0..255" { + description + "The value of the ToS for this L2TPv3 pseudowire class"; + } + } + must "../reflect"; + description + "Set the value of the ToS"; + } + container reflect { + must "../value"; + presence "Indicates a reflect node is configured."; + description + "Reflect the TOS"; + } + } + leaf ttl { + type uint32 { + range "1..255" { + description + "TTL value"; + } + } + description + "Set the Time To Live (TTL)"; + } + container pmtu { + presence "Indicates a pmtu node is configured."; + description + "Path Maximum Transmission Unit (PMTU)"; + leaf max { + type uint32 { + range "68..65535" { + description + "The value of the Maximum allowable session MTU"; + } + } + description + "Set the Maximum allowable session MTU"; + } + } + container ipv4 { + description + "Set the local source IPv4 address"; + leaf source { + type inet:ipv4-address-no-zone; + description + "The local source IPv4 address"; + } + } + container cookie { + description + "L2TPv3 cookie setting"; + container size { + description + "L2TPv3 cookie size"; + container zero { + must "not(../four or ../eight)"; + presence "Indicates a zero node is configured."; + description + "The cookie size is zero bytes"; + } + container four { + must "not(../zero or ../eight)"; + presence "Indicates a four node is configured."; + description + "The cookie size is four bytes"; + } + container eight { + must "not(../zero or ../four)"; + presence "Indicates a eight node is configured."; + description + "The cookie size is eight bytes"; + } + } + } + container sequencing { + description + "Sequencing"; + container both { + presence "Indicates a both node is configured."; + description + "Sequencing on both transmit and receive side"; + leaf resync { + type uint32 { + range "5..65535" { + description + "Resync threshold"; + } + } + description + "Set the threshold for out-of-sequence packets before resync"; + } + } + } + container transport-mode { + description + "Remote transport mode"; + container ethernet { + must "not(../vlan)"; + presence "Indicates a ethernet node is configured."; + description + "Ethernet port mode"; + } + container vlan { + must "not(../ethernet)"; + presence "Indicates a vlan node is configured."; + description + "Vlan tagged mode"; + } + } + } + } + container backup { + description + "Pseudowire backup"; + container disable { + description + "Disable backup when primary comes back up"; + leaf delay { + type uint32 { + range "0..180" { + description + "Delay in seconds"; + } + } + must "not(../never)"; + description + "Disable backup after a specified delay"; + } + container never { + must "not(../delay)"; + presence "Indicates a never node is configured."; + description + "Never disable backup"; + } + } + } + container mac-withdraw { + presence "Indicates a mac-withdraw node is configured."; + description + "Send MAC withdraw message when PW becomes active"; + } + } + } + container ignore-mtu-mismatch-ad { + presence "Indicates a ignore-mtu-mismatch-ad node is configured."; + description + "Ignore MTU mismatch for auto-discovered PWs"; + } + container ignore-mtu-mismatch { + presence "Indicates a ignore-mtu-mismatch node is configured."; + description + "Ignore MTU mismatch for all L2VPN"; + } + leaf description { + type string { + length "1..64" { + description + "l2vpn global description string - maximum 64 characters"; + } + } + description + "Multi segment psedowire global description"; + } + container pw-status { + description + "Configure PW status"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable PW status"; + } + } + leaf router-id { + if-feature "l2vpn_is_cli_supported"; + type inet:ipv4-address-no-zone; + description + "Global L2VPN Router ID"; + } + container load-balancing { + description + "Global L2VPN Load Balancing"; + container flow { + description + "Enable Flow based load balancing"; + container src-dst-mac { + must "not(../src-dst-ip)"; + presence "Indicates a src-dst-mac node is configured."; + description + "Use source and destination MAC addresses for hashing"; + } + container src-dst-ip { + must "not(../src-dst-mac)"; + presence "Indicates a src-dst-ip node is configured."; + description + "Use source and destination IP addresses for hashing"; + } + } + } + container capability { + description + "Global capability mode"; + container single-mode { + must "not(../high-mode)"; + presence "Indicates a single-mode node is configured."; + description + "Disable global capability re-computation"; + } + container high-mode { + must "not(../single-mode)"; + presence "Indicates a high-mode node is configured."; + description + "Compute global capability as the highest node capability"; + } + } + container pw-oam { + description + "PW OAM"; + container refresh { + description + "Refresh interval"; + leaf transmit { + type uint32 { + range "1..4095" { + description + "Seconds"; + } + } + description + "Transmit"; + } + } + } + container tcn-propagation { + presence "Indicates a tcn-propagation node is configured."; + description + "Enable topology change notification propagation"; + } + container pw-grouping { + presence "Indicates a pw-grouping node is configured."; + description + "Enable PW-Grouping"; + } + container neighbors { + description + "neighbor submode"; + container all { + description + "all neighbors"; + container ldp { + description + "LDP protocol"; + container flap { + presence "Indicates a flap node is configured."; + description + "Forcing targetted-sesion flapping"; + } + } + } + } + container mac { + description + "Global MAC commands"; + container limit { + description + "Global MAC limit commands"; + leaf threshold { + type uint32 { + range "1..100" { + description + "Percentage 1 to 100 (default 75%)"; + } + } + description + "Global MAC limit threshold"; + } + } + } + container xconnect { + description + "Configure cross connect commands"; + container groups { + description + "Specify the group the cross connects belong to"; + list group { + key "group-name"; + description + "Specify the group the cross connects belong to"; + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the cross connects group"; + } + } + description + "Specify the group the cross connects belong to"; + } + container p2ps { + description + "Configure point to point cross connect commands"; + list p2p { + key "p2p-xconnect-name"; + description + "Configure point to point cross connect commands"; + leaf p2p-xconnect-name { + type xr:Cisco-ios-xr-string { + length "1..38" { + description + "Name of the point to point cross connect"; + } + } + description + "Configure point to point cross connect commands"; + } + container interfaces { + description + "Specify the attachment circuit "; + list interface { + key "interface-name"; + description + "Specify (sub-)interface name to cross connect"; + leaf interface-name { + type xr:Interface-name; + description + "Specify (sub-)interface name to cross connect"; + } + } + } + leaf description { + type string { + length "1..64" { + description + "Cross connect description string"; + } + } + description + "Description for cross connect"; + } + container vpws-seamless-integration { + if-feature "l2vpn_platform_vpws_seamless_integration_supported"; + presence "Indicates a vpws-seamless-integration node is configured."; + description + "EVPN-VPWS Seamless Integration with Legacy VPWS"; + } + container interworking { + description + "Set attachment circuit interworking"; + container ipv4 { + must "not(../ethernet)"; + presence "Indicates a ipv4 node is configured."; + description + "IPv4 interworking"; + } + container ethernet { + must "not(../ipv4)"; + presence "Indicates a ethernet node is configured."; + description + "Ethernet interworking"; + } + } + container backup { + if-feature "l2vpn_p2p_backup_supported"; + description + "Specify backup to be shared by p2p xconnect segments"; + list interface { + key "interface-name"; + description + "Specify the attachment circuit"; + leaf interface-name { + type xr:Interface-name; + description + "Specify the attachment circuit"; + } + } + } + container neighbor { + description + "Specify the peer to cross connect"; + container ipv4s { + description + "IPv4"; + list ipv4 { + key "address pw-id"; + description + "IPv4"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container backup { + description + "Backup pseudowire for the cross connect"; + container neighbors { + description + "Specify the peer to cross connect"; + list neighbor { + key "address pw-id"; + description + "Specify the peer to cross connect"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Specify the peer to cross connect"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container mpls { + description + "MPLS L2VPN PW command"; + container static { + description + "MPLS L2VPN static settings"; + container label { + description + "MPLS L2VPN static labels"; + leaf local { + type uint32 { + range "16..1048575" { + description + "Local pseudowire label"; + } + } + must "../remote"; + description + "Local pseudowire label"; + } + leaf remote { + type uint32 { + range "16..1048575" { + description + "Remote pseudowire label"; + } + } + must "../local"; + description + "Remote pseudowire label"; + } + } + } + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for the backup PW"; + } + } + } + } + container mpls { + description + "MPLS L2VPN PW command"; + container static { + description + "MPLS L2VPN static settings"; + container label { + description + "MPLS L2VPN static labels"; + leaf local { + type uint32 { + range "16..1048575" { + description + "Local pseudowire label"; + } + } + must "../remote"; + description + "Local pseudowire label"; + } + leaf remote { + type uint32 { + range "16..1048575" { + description + "Remote pseudowire label"; + } + } + must "../local"; + description + "Remote pseudowire label"; + } + } + } + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for this XC"; + } + container tag-impose { + description + "tag impose mode"; + leaf vlan { + type uint32 { + range "1..4094" { + description + "vlan tagged mode"; + } + } + description + "vlan tagged mode"; + } + } + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "PW Bandwidth"; + } + } + description + "bandwidth"; + } + container l2tp { + description + "L2TP PW"; + container static { + presence "Indicates a static node is configured."; + description + "L2TP PW static"; + container local { + description + "L2TP PW static local"; + leaf session { + type uint32 { + range "1..1023" { + description + "L2TP PW static local session ID"; + } + } + description + "L2TP PW static local session ID"; + } + container cookie { + description + "L2TP PW static local cookie settings"; + container size { + description + "L2TP PW static local cookie size settings"; + container zero { + presence "Indicates a zero node is configured."; + description + "The cookie size is zero bytes"; + } + container four { + presence "Indicates a four node is configured."; + description + "The cookie size is four bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + mandatory true; + description + "The value of the cookie"; + } + } + container eight { + presence "Indicates a eight node is configured."; + description + "The cookie size is eight bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + must "../higher-4-bytes-value"; + mandatory true; + description + "The value of the cookie"; + } + leaf higher-4-bytes-value { + type uint32 { + range "0..4294967295" { + description + "Higher 4 bytes value"; + } + } + must "../value"; + mandatory true; + description + "Higher 4 bytes value"; + } + } + } + } + } + container remote { + description + "L2TP PW static remote"; + leaf session { + type uint32 { + range "1..1023" { + description + "L2TP PW static remote session ID"; + } + } + description + "L2TP PW static remote session ID"; + } + container cookie { + description + "L2TP PW static remote cookie settings"; + container size { + description + "L2TP PW static remote cookie size settings"; + container zero { + presence "Indicates a zero node is configured."; + description + "The cookie size is zero bytes"; + } + container four { + presence "Indicates a four node is configured."; + description + "The cookie size is four bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + mandatory true; + description + "The value of the cookie"; + } + } + container eight { + presence "Indicates a eight node is configured."; + description + "The cookie size is eight bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + must "../higher-4-bytes-value"; + mandatory true; + description + "The value of the cookie"; + } + leaf higher-4-bytes-value { + type uint32 { + range "0..4294967295" { + description + "Higher 4 bytes value"; + } + } + must "../value"; + mandatory true; + description + "Higher 4 bytes value"; + } + } + } + } + } + } + } + } + } + container ipv6s { + description + "IPv4"; + list ipv6 { + key "address pw-id"; + description + "IPv6"; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container backup { + description + "Backup pseudowire for the cross connect"; + container neighbors { + description + "Specify the peer to cross connect"; + list neighbor { + key "address pw-id"; + description + "Specify the peer to cross connect"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Specify the peer to cross connect"; + } + leaf pw-id { + type uint32 { + range "1..4294967295" { + description + "Pseudowire ID"; + } + } + description + "Specify the pseudowire id"; + } + container mpls { + description + "MPLS L2VPN PW command"; + container static { + description + "MPLS L2VPN static settings"; + container label { + description + "MPLS L2VPN static labels"; + leaf local { + type uint32 { + range "16..1048575" { + description + "Local pseudowire label"; + } + } + must "../remote"; + description + "Local pseudowire label"; + } + leaf remote { + type uint32 { + range "16..1048575" { + description + "Remote pseudowire label"; + } + } + must "../local"; + description + "Remote pseudowire label"; + } + } + } + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for the backup PW"; + } + } + } + } + container mpls { + description + "MPLS L2VPN PW command"; + container static { + description + "MPLS L2VPN static settings"; + container label { + description + "MPLS L2VPN static labels"; + leaf local { + type uint32 { + range "16..1048575" { + description + "Local pseudowire label"; + } + } + must "../remote"; + description + "Local pseudowire label"; + } + leaf remote { + type uint32 { + range "16..1048575" { + description + "Remote pseudowire label"; + } + } + must "../local"; + description + "Remote pseudowire label"; + } + } + } + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for this XC"; + } + container tag-impose { + description + "tag impose mode"; + leaf vlan { + type uint32 { + range "1..4094" { + description + "vlan tagged mode"; + } + } + description + "vlan tagged mode"; + } + } + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "PW Bandwidth"; + } + } + description + "bandwidth"; + } + container source { + description + "Source address of PW"; + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "Source IPv6 address of PW"; + } + } + container l2tp { + description + "L2TP PW"; + container static { + presence "Indicates a static node is configured."; + description + "L2TP PW static"; + container local { + description + "L2TP PW static local"; + leaf session { + type uint32 { + range "1..1023" { + description + "L2TP PW static local session ID"; + } + } + description + "L2TP PW static local session ID"; + } + container cookie { + description + "L2TP PW static local cookie settings"; + container size { + description + "L2TP PW static local cookie size settings"; + container zero { + presence "Indicates a zero node is configured."; + description + "The cookie size is zero bytes"; + } + container four { + presence "Indicates a four node is configured."; + description + "The cookie size is four bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + mandatory true; + description + "The value of the cookie"; + } + } + container eight { + presence "Indicates a eight node is configured."; + description + "The cookie size is eight bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + must "../higher-4-bytes-value"; + mandatory true; + description + "The value of the cookie"; + } + leaf higher-4-bytes-value { + type uint32 { + range "0..4294967295" { + description + "Higher 4 bytes value"; + } + } + must "../value"; + mandatory true; + description + "Higher 4 bytes value"; + } + } + } + container secondary { + description + "L2TP PW static secondary local cookie settings"; + container size { + description + "L2TP PW static local cookie size settings"; + container zero { + presence "Indicates a zero node is configured."; + description + "The cookie size is zero bytes"; + } + container four { + presence "Indicates a four node is configured."; + description + "The cookie size is four bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + mandatory true; + description + "The value of the cookie"; + } + } + container eight { + presence "Indicates a eight node is configured."; + description + "The cookie size is eight bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + must "../higher-4-bytes-value"; + mandatory true; + description + "The value of the cookie"; + } + leaf higher-4-bytes-value { + type uint32 { + range "0..4294967295" { + description + "Higher 4 bytes value"; + } + } + must "../value"; + mandatory true; + description + "Higher 4 bytes value"; + } + } + } + } + } + } + container remote { + description + "L2TP PW static remote"; + leaf session { + type uint32 { + range "1..1023" { + description + "L2TP PW static remote session ID"; + } + } + description + "L2TP PW static remote session ID"; + } + container cookie { + description + "L2TP PW static remote cookie settings"; + container size { + description + "L2TP PW static remote cookie size settings"; + container zero { + presence "Indicates a zero node is configured."; + description + "The cookie size is zero bytes"; + } + container four { + presence "Indicates a four node is configured."; + description + "The cookie size is four bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + mandatory true; + description + "The value of the cookie"; + } + } + container eight { + presence "Indicates a eight node is configured."; + description + "The cookie size is eight bytes"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "Lower 4 bytes value"; + } + } + must "../higher-4-bytes-value"; + mandatory true; + description + "The value of the cookie"; + } + leaf higher-4-bytes-value { + type uint32 { + range "0..4294967295" { + description + "Higher 4 bytes value"; + } + } + must "../value"; + mandatory true; + description + "Higher 4 bytes value"; + } + } + } + } + } + } + } + } + } + container routeds { + description + "Specify a routed PW"; + list routed { + key "global-id target-l2-prefix target-ac-id source"; + description + "Specify a routed PW"; + leaf global-id { + type uint32 { + range "1..4294967295" { + description + "Four Byte Global Id"; + } + } + description + "Specify a routed PW"; + } + leaf target-l2-prefix { + type inet:ipv4-address-no-zone; + description + "Target L2 prefix"; + } + leaf target-ac-id { + type uint32 { + range "1..4294967295" { + description + "Target AC id"; + } + } + description + "Target AC id"; + } + leaf source { + type uint32 { + range "1..4294967295" { + description + "Local AC id (hex or decimal format)"; + } + } + description + "Source addresss of the routed PW"; + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use for this XC"; + } + container tag-impose { + description + "tag impose mode"; + leaf vlan { + type uint32 { + range "1..4094" { + description + "vlan tagged mode"; + } + } + description + "vlan tagged mode"; + } + } + } + } + container evpn { + description + "Specify the Ethernet VPN"; + container evi { + description + "Ethernet VPN Identifier"; + container targets { + description + "Specify remote attachment circuit identifier"; + list target { + key "vpn-id remote-ac-id source"; + description + "Specify remote attachment circuit identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN Identifier"; + } + leaf remote-ac-id { + type uint32 { + range "1..4294967294" { + description + "Remote ac-id"; + } + } + description + "Specify remote attachment circuit identifier"; + } + leaf source { + type uint32 { + range "1..4294967294" { + description + "Source ac-id"; + } + } + description + "Specify source attachment circuit identifier"; + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use"; + } + } + } + container services { + description + "Specify service ID (used as local and remote ac-id)"; + list service { + key "vpn-id service-id"; + description + "Specify service ID (used as local and remote ac-id)"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN Identifier"; + } + leaf service-id { + type uint32 { + range "1..4294967294" { + description + "Service ID"; + } + } + description + "Specify service ID (used as local and remote ac-id)"; + } + leaf pw-class { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Pseudowire-class name"; + } + } + description + "PW class template name to use"; + } + } + } + container segment-routing-targets { + description + "Specify remote attachment circuit identifier"; + list target { + must "segment-routing/srv6"; + key "vpn-id remote-ac-id source"; + description + "Specify remote attachment circuit identifier"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN Identifier"; + } + leaf remote-ac-id { + type uint32 { + range "1..4294967294" { + description + "Remote ac-id"; + } + } + description + "Specify remote attachment circuit identifier"; + } + leaf source { + type uint32 { + range "1..4294967294" { + description + "Source ac-id"; + } + } + description + "Specify source attachment circuit identifier"; + } + container segment-routing { + description + "Configure Segment Routing VPWS Instance"; + container srv6 { + presence "Indicates a srv6 node is configured."; + description + "Configure SRv6 VPWS Instance"; + leaf locator { + type xr:Cisco-ios-xr-string { + length "1..58" { + description + "Specify locator name"; + } + pattern "[a-z0-9A-Z][a-z0-9A-Z_.:]*"; + } + description + "PW locator to use for EVPN SID allocation"; + } + } + } + } + } + container segment-routing-services { + description + "Specify service ID (used as local and remote ac-id)"; + list service { + must "segment-routing/srv6"; + key "vpn-id service-id"; + description + "Specify service ID (used as local and remote ac-id)"; + leaf vpn-id { + type uint32 { + range "1..65534" { + description + "Ethernet VPN ID to set"; + } + } + description + "Ethernet VPN Identifier"; + } + leaf service-id { + type uint32 { + range "1..4294967294" { + description + "Service ID"; + } + } + description + "Specify service ID (used as local and remote ac-id)"; + } + container segment-routing { + description + "Configure Segment Routing VPWS Instance"; + container srv6 { + presence "Indicates a srv6 node is configured."; + description + "Configure SRv6 VPWS Instance"; + leaf locator { + type xr:Cisco-ios-xr-string { + length "1..58" { + description + "Specify locator name"; + } + pattern "[a-z0-9A-Z][a-z0-9A-Z_.:]*"; + } + description + "PW locator to use for EVPN SID allocation"; + } + } + } + } + } + } + } + } + container monitor-sessions { + description + "Specify the monitor session"; + list monitor-session { + key "monitor-session-name"; + description + "Specify the monitor session"; + leaf monitor-session-name { + type string { + length "1..64" { + description + "Name of the monitor session"; + } + } + description + "Specify the monitor session"; + } + } + } + } + } + container mp2mps { + description + "Specify the MP2MP instance name"; + list mp2mp { + key "instance-name"; + description + "Specify the MP2MP instance name"; + leaf instance-name { + type xr:Cisco-ios-xr-string { + length "1..26" { + description + "Name of the MP2MP instance"; + } + } + description + "Specify the MP2MP instance name"; + } + leaf vpn-id { + type uint32 { + range "1..4294967295" { + description + "Value of the VPN ID"; + } + } + description + "VPN Identifier (VPN ID)"; + } + leaf mtu { + type uint32 { + range "64..65535" { + description + "Value of the MTU"; + } + } + description + "Set maximum transmission unit (payload) for this VPN MP2MP Instance"; + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "shutdown the L2VPN MP2MP Instance"; + } + leaf l2-encapsulation { + type enumeration { + enum "vlan" { + value 4; + description + "Ethernet VLAN encapsulation"; + } + enum "ethernet" { + value 5; + description + "Ethernet encapsulation"; + } + } + description + "Configure the L2 encapsulation for this L2VPN MP2MP Instance"; + } + leaf interworking { + type enumeration { + enum "ethernet" { + value 1; + description + "Ethernet interworking"; + } + } + description + "Configure the interworking option for this L2VPN MP2MP Instance"; + } + container control-word { + description + "Set control-word option for this VPN MP2MP Instance"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable control-word"; + } + } + container autodiscovery { + description + "Enable auto-discovery in this MP2MP"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Enable BGP auto-discovery in this MP2MP"; + container rd { + description + "route distinguisher"; + container auto { + must "not(../two-byte-as-number or ../four-byte-as-number or ../ipv4-address)"; + presence "Indicates a auto node is configured."; + description + "Automatic route distinguisher"; + } + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + container route-target { + description + "Route Target"; + container import { + description + "Import Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + } + container export { + description + "Export Route Target"; + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + } + container two-byte-as-rts { + description + "Two Byte AS Number Route Target"; + list two-byte-as-rt { + key "two-byte-as-number assigned-number"; + description + "Two Byte AS Number Route Target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535"; + } + description + "Two Byte AS Number"; + } + leaf assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container four-byte-as-rts { + description + "Four Byte AS number Route Target"; + list four-byte-as-rt { + key "four-byte-as-number assigned-number"; + description + "Four Byte AS number Route Target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295"; + } + description + "Four Byte AS number"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container ipv4-address-rts { + description + "IP address Route Target"; + list ipv4-address-rt { + key "ipv4-address assigned-number"; + description + "IP address"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + description + "IP-address:nn (hex or decimal format)"; + } + } + } + } + container signaling-protocol { + description + "Enable signaling protocol in this MP2MP"; + container bgp { + presence "Indicates a bgp node is configured."; + description + "Enable BGP signaling protocol this MP2MP"; + list ce-id { + key "local-ce-id-value"; + description + "Local Customer Edge Identifier (CE ID)"; + leaf local-ce-id-value { + type uint32 { + range "1..16384" { + description + "Value of the local CE ID"; + } + } + description + "Local Customer Edge Identifier (CE ID)"; + } + list interface { + must "remote-ce-id"; + key "interface-name"; + description + "Specify the attachment circuit"; + leaf interface-name { + type xr:Interface-name; + description + "Specify the attachment circuit"; + } + list remote-ce-id { + key "remote-ce-id-value"; + description + "Remote Customer Edge Identifier"; + leaf remote-ce-id-value { + type uint32 { + range "1..16384" { + description + "Value of the remote CE ID"; + } + } + description + "Remote Customer Edge Identifier"; + } + } + } + container vpws-seamless-integration { + presence "Indicates a vpws-seamless-integration node is configured."; + description + "EVPN-VPWS Seamless Integration with BGP-AD VPWS"; + } + } + leaf ce-range { + if-feature "l2vpn_is_cli_supported"; + type uint32 { + range "11..100" { + description + "Value of the CE Range"; + } + } + description + "Local Customer Edge Block Configurable Range"; + } + container load-balancing { + description + "Load Balancing"; + container flow-label { + description + "Flow label based load balancing setting"; + container transmit { + must "not(../receive or ../both)"; + presence "Indicates a transmit node is configured."; + description + "Insert Flow label when transmit "; + } + container receive { + must "not(../transmit or ../both)"; + presence "Indicates a receive node is configured."; + description + "Discard Flow label when receive"; + } + container both { + must "not(../transmit or ../receive)"; + presence "Indicates a both node is configured."; + description + "Insert/Discard Flow label when transmit/recceive"; + } + } + } + } + } + container route-policy { + description + "Apply route policy"; + leaf export { + type xr:Route-policy-name; + description + "Export route policy"; + } + } + } + } + } + } + } + } + } + container logging { + description + "Configure l2vpn logging commands"; + container pseudowire { + presence "Indicates a pseudowire node is configured."; + description + "Enable pseudowire logging"; + } + container bridge-domain { + presence "Indicates a bridge-domain node is configured."; + description + "Enable bridge-domain logging"; + } + container vfi { + presence "Indicates a vfi node is configured."; + description + "Enable VFI logging"; + } + container nsr { + presence "Indicates a nsr node is configured."; + description + "Enable Non-Stop Routing logging"; + } + container pwhe-replication { + description + "PWHE replication failure/success logging"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable PWHE replication failure/success logging"; + } + } + } + container autodiscovery { + description + "Configure global auto-discovery attributes"; + container bgp { + description + "auto discovery type bgp"; + container signaling-protocol { + description + "Configure global signaling protocol attributes"; + container bgp { + description + "signaling protocol type bgp"; + container mtu { + description + "mtu"; + container mismatch { + description + "mtu mismatch"; + container ignore { + presence "Indicates a ignore node is configured."; + description + "Ignore MTU mismatch for auto-discovered PWs"; + } + } + } + } + } + } + } + container pw-routing { + description + "Configure Pseudowire routing attributes"; + leaf global-id { + type uint32 { + range "1..4294967295" { + description + "Global ID"; + } + } + description + "Configure l2vpn pseudowire routing global id"; + } + container bgp { + presence "Indicates a bgp node is configured."; + description + "Configure BGP"; + container rd { + description + "Set the Route Distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS Number"; + } + } + must "not(../four-byte-as-number or ../ipv4-address) and ../two-byte-as-assigned-number"; + description + "Two Byte AS Number"; + } + leaf two-byte-as-assigned-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../two-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + must "not(../two-byte-as-number or ../ipv4-address) and ../four-byte-as-assigned-number"; + description + "Four Byte AS number"; + } + leaf four-byte-as-assigned-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + must "../four-byte-as-number"; + description + "AS:nn (hex or decimal format)"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../two-byte-as-number or ../four-byte-as-number) and ../ipv4-address-assigned-number"; + description + "IP address"; + } + leaf ipv4-address-assigned-number { + type uint32 { + range "0..65535" { + description + "IP-address:nn (hex or decimal format)"; + } + } + must "../ipv4-address"; + description + "IP-address:nn (hex or decimal format)"; + } + } + } + } + container snmp { + description + "Set SNMP related configuration"; + container mib { + description + "Set MIB related configuration"; + container interface { + description + "Set MIB interface related configuration"; + container format { + description + "Set MIB interface name output format"; + container external { + presence "Indicates a external node is configured."; + description + "Set MIB interface name output format to external using slash"; + } + } + } + container pseudowire { + description + "Set MIB pseudowire related configuration"; + container statistics { + presence "Indicates a statistics node is configured."; + description + "Enable MIB pseudowire statistics (for low scale, <16K PWs)"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lacp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lacp-cfg.yang new file mode 100644 index 000000000..94dbf3a3b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lacp-cfg.yang @@ -0,0 +1,67 @@ +module Cisco-IOS-XR-um-lacp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lacp-cfg"; + prefix um-lacp-cfg; + + import cisco-semver { + prefix semver; + } + import ietf-yang-types { + prefix yang; + } + + 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 if-bundle package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-29 { + description + "Initial version"; + } + + container lacp { + description + "Link Aggregation Control Protocol commands"; + container system { + description + "Set the default system parameters for LACP bundles"; + leaf priority { + type uint32 { + range "1..65535" { + description + "Priority for this system. Lower value is higher priority."; + } + } + description + "The system priority to use in LACP negotiations."; + } + leaf mac { + type yang:mac-address; + description + "The system ID to use in LACP negotiations."; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lawful-intercept-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lawful-intercept-cfg.yang new file mode 100644 index 000000000..d85e6fcd0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lawful-intercept-cfg.yang @@ -0,0 +1,99 @@ +module Cisco-IOS-XR-um-lawful-intercept-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lawful-intercept-cfg"; + prefix um-lawful-intercept-cfg; + + import Cisco-IOS-XR-um-aaa-cfg { + prefix a1; + } + 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 lawful-intercept package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-08-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature li_cap_is_li_supported { + description + "li cap is li supported"; + } + + feature li_cap_is_overlap_tap_supported { + description + "li cap is overlap tap supported"; + } + + feature li_cap_is_2gig_policer_supported { + description + "li cap is 2gig policer supported"; + } + + augment "/a1:aaa" { + description + "This augment extends aaa nodes configuration"; + container intercept { + presence "Indicates a intercept node is configured."; + description + "Global LI-MA enable disable"; + } + } + container lawful-intercept { + if-feature "li_cap_is_li_supported"; + description + "Global LI enable disable"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable LI feature"; + } + container overlap-tap { + if-feature "li_cap_is_overlap_tap_supported"; + description + "Over Lap Tap enable disable"; + container enable { + presence "Indicates a enable node is configured."; + description + "disable LI OT feature"; + } + } + container interface-taps { + if-feature "li_cap_is_2gig_policer_supported"; + description + "2Gig policer enable"; + container two-gig { + presence "Indicates a two-gig node is configured."; + description + "enable LI Interface Taps 2Gig policer"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-license-smart-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-license-smart-cfg.yang new file mode 100644 index 000000000..76870f3d6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-license-smart-cfg.yang @@ -0,0 +1,141 @@ +module Cisco-IOS-XR-um-license-smart-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-license-smart-cfg"; + prefix um-license-smart-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 license-smart package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-05 { + description + "Model deprecated"; + semver:module-version "1.1.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature is_software_upgrade_config_visible { + description + "is software upgrade config visible"; + } + + feature is_reservation_config_visible { + description + "is reservation config visible"; + } + + feature is_config_visible { + description + "is config visible"; + } + + container license { + status deprecated; + description + "license"; + container smart { + description + "Smart Licensing"; + container transport { + description + "Select the type of message transport for Smart Licensing"; + container smart { + presence "Indicates a smart node is configured."; + description + "Use the http as transport"; + } + } + leaf url { + type string { + length "1..200" { + description + "Set the Smart Transport URL"; + } + } + description + "Set the Smart Transport Primary URL"; + } + container proxy { + description + "Proxy related commands"; + leaf hostname { + type xr:Cisco-ios-xr-string { + length "1..200" { + description + "address/hostname"; + } + } + description + "The IP address or hostname of the Proxy"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "proxy port"; + } + } + description + "The proxy port"; + } + } + } + } + container license-smart-flexible-consumption { + if-feature "is_config_visible"; + status deprecated; + description + "flexible-consumption(Vortex) model"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable flexible-consumption model"; + } + } + container license-smart-software-upgrade { + if-feature "is_software_upgrade_config_visible"; + status deprecated; + description + "Enable or disable the software-upgrade feature"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable or disable the software-upgrade feature"; + } + } + container license-smart-reservation { + if-feature "is_reservation_config_visible"; + presence "Indicates a reservation node is configured."; + status deprecated; + description + "Enable or disable the license reservation feature"; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-cfg.yang new file mode 100644 index 000000000..d62bd127f --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-cfg.yang @@ -0,0 +1,673 @@ +module Cisco-IOS-XR-um-line-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-line-cfg"; + prefix um-line-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 line package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container line { + description + "Line subcommands"; + container console { + description + "console template"; + container access-class { + description + "Filter connections based on an IP access list"; + leaf ingress { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access list name"; + } + } + description + "Filter incoming connections"; + } + leaf egress { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access list name"; + } + } + description + "Filter outgoing connections"; + } + } + leaf disconnect-character { + type xr:Char-num; + description + "Define the disconnect character"; + } + leaf escape-character { + type xr:Tty-escape-char-num; + default "30"; + description + "Change the current line template's escape character"; + } + container session-timeout { + presence "Indicates a session-timeout node is configured."; + description + "Set interval for closing connection when there is no input traffic"; + leaf timeout-interval { + type uint32 { + range "0..35791" { + description + "Session timeout interval in minutes"; + } + } + mandatory true; + description + "Set interval for closing connection when there is no input traffic"; + } + container output { + presence "Indicates a output node is configured."; + description + "Include output traffic as well as input traffic"; + } + } + container transport { + description + "Define transport protocols for line"; + container input { + description + "Define which protocols to use when connecting to the terminal server"; + container none { + must "not(../ssh) and not(../telnet) and not(../all)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container ssh { + must "not(../none) and not(../telnet) and not(../all)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + container telnet { + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + } + container telnet { + must "not(../none) and not(../ssh) and not(../all)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + container all { + must "not(../ssh) and not(../telnet) and not(../none)"; + presence "Indicates a all node is configured."; + description + "All protocols"; + } + } + container output { + description + "Define which protocols to use for outgoing connections"; + container all { + must "not(../ssh) and not(../telnet) and not(../none)"; + presence "Indicates a all node is configured."; + description + "All protocols"; + } + container none { + must "not(../ssh) and not(../telnet) and not(../all)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container ssh { + must "not(../none) and not(../telnet) and not(../all)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + container telnet { + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + } + container telnet { + must "not(../none) and not(../ssh) and not(../all)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + } + container preferred { + description + "Specify the preferred protocol to use"; + container none { + must "not(../ssh) and not(../telnet)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container telnet { + must "not(../ssh) and not(../none)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + container ssh { + must "not(../telnet) and not(../none)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + } + leaf session-limit { + type uint32 { + range "0..20" { + description + "Number of outgoing connections"; + } + } + description + "Set the number of outgoing connections"; + } + container cli { + description + "Set the behaviour of cli."; + container whitespace { + description + "Whitespace behaviour"; + container completion { + presence "Indicates a completion node is configured."; + description + "Command completion on whitespace"; + } + } + } + container interactive { + description + "Interactive behaviour"; + container syntax { + description + "Syntax of user input"; + container check { + presence "Indicates a check node is configured."; + description + "Enable the check"; + } + } + } + } + container default { + description + "default template"; + container access-class { + description + "Filter connections based on an IP access list"; + leaf ingress { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access list name"; + } + } + description + "Filter incoming connections"; + } + leaf egress { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access list name"; + } + } + description + "Filter outgoing connections"; + } + } + leaf disconnect-character { + type xr:Char-num; + description + "Define the disconnect character"; + } + leaf escape-character { + type xr:Tty-escape-char-num; + default "30"; + description + "Change the current line template's escape character"; + } + container session-timeout { + presence "Indicates a session-timeout node is configured."; + description + "Set interval for closing connection when there is no input traffic"; + leaf timeout-interval { + type uint32 { + range "0..35791" { + description + "Session timeout interval in minutes"; + } + } + mandatory true; + description + "Set interval for closing connection when there is no input traffic"; + } + container output { + presence "Indicates a output node is configured."; + description + "Include output traffic as well as input traffic"; + } + } + container transport { + description + "Define transport protocols for line"; + container input { + description + "Define which protocols to use when connecting to the terminal server"; + container none { + must "not(../ssh) and not(../telnet) and not(../all)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container ssh { + must "not(../none) and not(../telnet) and not(../all)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + container telnet { + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + } + container telnet { + must "not(../none) and not(../ssh) and not(../all)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + container all { + must "not(../ssh) and not(../telnet) and not(../none)"; + presence "Indicates a all node is configured."; + description + "All protocols"; + } + } + container output { + description + "Define which protocols to use for outgoing connections"; + container all { + must "not(../ssh) and not(../telnet) and not(../none)"; + presence "Indicates a all node is configured."; + description + "All protocols"; + } + container none { + must "not(../ssh) and not(../telnet) and not(../all)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container ssh { + must "not(../none) and not(../telnet) and not(../all)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + container telnet { + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + } + container telnet { + must "not(../none) and not(../ssh) and not(../all)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + } + container preferred { + description + "Specify the preferred protocol to use"; + container none { + must "not(../ssh) and not(../telnet)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container telnet { + must "not(../ssh) and not(../none)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + container ssh { + must "not(../telnet) and not(../none)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + } + leaf session-limit { + type uint32 { + range "0..20" { + description + "Number of outgoing connections"; + } + } + description + "Set the number of outgoing connections"; + } + container cli { + description + "Set the behaviour of cli."; + container whitespace { + description + "Whitespace behaviour"; + container completion { + presence "Indicates a completion node is configured."; + description + "Command completion on whitespace"; + } + } + } + container interactive { + description + "Interactive behaviour"; + container syntax { + description + "Syntax of user input"; + container check { + presence "Indicates a check node is configured."; + description + "Enable the check"; + } + } + } + leaf autocommand { + type string { + length "1..800" { + description + "Appropriate EXEC command"; + } + } + description + "Automatically execute an EXEC command"; + } + } + container templates { + description + "user defined template"; + list template { + key "template-name"; + description + "user defined template"; + leaf template-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template to configure"; + } + } + description + "user defined template"; + } + container access-class { + description + "Filter connections based on an IP access list"; + leaf ingress { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access list name"; + } + } + description + "Filter incoming connections"; + } + leaf egress { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access list name"; + } + } + description + "Filter outgoing connections"; + } + } + leaf disconnect-character { + type xr:Char-num; + description + "Define the disconnect character"; + } + leaf escape-character { + type xr:Tty-escape-char-num; + default "30"; + description + "Change the current line template's escape character"; + } + container session-timeout { + presence "Indicates a session-timeout node is configured."; + description + "Set interval for closing connection when there is no input traffic"; + leaf timeout-interval { + type uint32 { + range "0..35791" { + description + "Session timeout interval in minutes"; + } + } + mandatory true; + description + "Set interval for closing connection when there is no input traffic"; + } + container output { + presence "Indicates a output node is configured."; + description + "Include output traffic as well as input traffic"; + } + } + container transport { + description + "Define transport protocols for line"; + container input { + description + "Define which protocols to use when connecting to the terminal server"; + container none { + must "not(../ssh) and not(../telnet) and not(../all)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container ssh { + must "not(../none) and not(../telnet) and not(../all)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + container telnet { + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + } + container telnet { + must "not(../none) and not(../ssh) and not(../all)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + container all { + must "not(../ssh) and not(../telnet) and not(../none)"; + presence "Indicates a all node is configured."; + description + "All protocols"; + } + } + container output { + description + "Define which protocols to use for outgoing connections"; + container all { + must "not(../ssh) and not(../telnet) and not(../none)"; + presence "Indicates a all node is configured."; + description + "All protocols"; + } + container none { + must "not(../ssh) and not(../telnet) and not(../all)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container ssh { + must "not(../none) and not(../telnet) and not(../all)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + container telnet { + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + } + container telnet { + must "not(../none) and not(../ssh) and not(../all)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + } + container preferred { + description + "Specify the preferred protocol to use"; + container none { + must "not(../ssh) and not(../telnet)"; + presence "Indicates a none node is configured."; + description + "No protocols"; + } + container telnet { + must "not(../ssh) and not(../none)"; + presence "Indicates a telnet node is configured."; + description + "TCP/IP Telnet protocol"; + } + container ssh { + must "not(../telnet) and not(../none)"; + presence "Indicates a ssh node is configured."; + description + "Unix ssh protocol"; + } + } + } + leaf session-limit { + type uint32 { + range "0..20" { + description + "Number of outgoing connections"; + } + } + description + "Set the number of outgoing connections"; + } + container cli { + description + "Set the behaviour of cli."; + container whitespace { + description + "Whitespace behaviour"; + container completion { + presence "Indicates a completion node is configured."; + description + "Command completion on whitespace"; + } + } + } + container interactive { + description + "Interactive behaviour"; + container syntax { + description + "Syntax of user input"; + container check { + presence "Indicates a check node is configured."; + description + "Enable the check"; + } + } + } + leaf autocommand { + type string { + length "1..800" { + description + "Appropriate EXEC command"; + } + } + description + "Automatically execute an EXEC command"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-exec-timeout-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-exec-timeout-cfg.yang new file mode 100644 index 000000000..8f8b2ee8e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-exec-timeout-cfg.yang @@ -0,0 +1,141 @@ +module Cisco-IOS-XR-um-line-exec-timeout-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-line-exec-timeout-cfg"; + prefix um-line-exec-timeout-cfg; + + import Cisco-IOS-XR-um-line-cfg { + prefix a1; + } + 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 line-exec-timeout package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-09-18 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:line/a1:console" { + description + "This augment extends line console nodes + configuration"; + container exec-timeout { + presence "Indicates a exec-timeout node is configured."; + description + "Set EXEC timeout"; + leaf timeout-in-minutes { + type uint32 { + range "0..35791" { + description + "Timeout in minutes"; + } + } + mandatory true; + description + "Set EXEC timeout"; + } + leaf timeout-in-seconds { + type uint32 { + range "0..2147483" { + description + "Timeout in seconds"; + } + } + mandatory true; + description + "Timeout in seconds"; + } + } + } + augment "/a1:line/a1:default" { + description + "This augment extends line default nodes + configuration"; + container exec-timeout { + presence "Indicates a exec-timeout node is configured."; + description + "Set EXEC timeout"; + leaf timeout-in-minutes { + type uint32 { + range "0..35791" { + description + "Timeout in minutes"; + } + } + mandatory true; + description + "Set EXEC timeout"; + } + leaf timeout-in-seconds { + type uint32 { + range "0..2147483" { + description + "Timeout in seconds"; + } + } + mandatory true; + description + "Timeout in seconds"; + } + } + } + augment "/a1:line/a1:templates/a1:template" { + description + "This augment extends line template nodes + configuration"; + container exec-timeout { + presence "Indicates a exec-timeout node is configured."; + description + "Set EXEC timeout"; + leaf timeout-in-minutes { + type uint32 { + range "0..35791" { + description + "Timeout in minutes"; + } + } + mandatory true; + description + "Set EXEC timeout"; + } + leaf timeout-in-seconds { + type uint32 { + range "0..2147483" { + description + "Timeout in seconds"; + } + } + mandatory true; + description + "Timeout in seconds"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-general-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-general-cfg.yang new file mode 100644 index 000000000..f883f64d2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-general-cfg.yang @@ -0,0 +1,150 @@ +module Cisco-IOS-XR-um-line-general-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-line-general-cfg"; + prefix um-line-general-cfg; + + import Cisco-IOS-XR-um-line-cfg { + prefix a1; + } + 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 line-general package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-08-24 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:line/a1:console" { + description + "This augment extends line console nodes + configuration"; + leaf absolute-timeout { + type uint32 { + range "0..10000" { + description + "Absolute timeout interval in minutes."; + } + } + description + "Set absolute timeout for line disconnection."; + } + leaf width { + type uint32 { + range "0..512" { + description + "Number of characters on a screen line."; + } + } + description + "Set width of the display terminal."; + } + leaf length { + type uint32 { + range "0..512" { + description + "Number of lines on screen (0 for no pausing)."; + } + } + description + "Set number of lines on a screen."; + } + } + augment "/a1:line/a1:default" { + description + "This augment extends line default nodes + configuration"; + leaf absolute-timeout { + type uint32 { + range "0..10000" { + description + "Absolute timeout interval in minutes."; + } + } + description + "Set absolute timeout for line disconnection."; + } + leaf width { + type uint32 { + range "0..512" { + description + "Number of characters on a screen line."; + } + } + description + "Set width of the display terminal."; + } + leaf length { + type uint32 { + range "0..512" { + description + "Number of lines on screen (0 for no pausing)."; + } + } + description + "Set number of lines on a screen."; + } + } + augment "/a1:line/a1:templates/a1:template" { + description + "This augment extends line template nodes + configuration"; + leaf absolute-timeout { + type uint32 { + range "0..10000" { + description + "Absolute timeout interval in minutes."; + } + } + description + "Set absolute timeout for line disconnection."; + } + leaf width { + type uint32 { + range "0..512" { + description + "Number of characters on a screen line."; + } + } + description + "Set width of the display terminal."; + } + leaf length { + type uint32 { + range "0..512" { + description + "Number of lines on screen (0 for no pausing)."; + } + } + description + "Set number of lines on a screen."; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-timestamp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-timestamp-cfg.yang new file mode 100644 index 000000000..35eba531c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-line-timestamp-cfg.yang @@ -0,0 +1,153 @@ +module Cisco-IOS-XR-um-line-timestamp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-line-timestamp-cfg"; + prefix um-line-timestamp-cfg; + + import Cisco-IOS-XR-um-line-cfg { + prefix a1; + } + 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 line-timestamp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-10-01 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:line/a1:console" { + description + "This augment extends line console nodes + configuration"; + container timestamp { + presence "Indicates a timestamp node is configured"; + description + "To enable timestamp printing before each command."; + container disable { + presence "Indicates a disable node is configured."; + description + "To disable timestamp printing before each command."; + } + } + leaf pager { + type enumeration { + enum "more" { + value 1; + description + "More Utility"; + } + enum "less" { + value 2; + description + "Less Utility"; + } + enum "none" { + value 3; + description + "No Pagers"; + } + } + description + "To enable pager functionality"; + } + } + augment "/a1:line/a1:default" { + description + "This augment extends line default nodes + configuration"; + container timestamp { + presence "Indicates a timestamp node is configured"; + description + "To enable timestamp printing before each command."; + container disable { + presence "Indicates a disable node is configured."; + description + "To disable timestamp printing before each command."; + } + } + leaf pager { + type enumeration { + enum "more" { + value 1; + description + "More Utility"; + } + enum "less" { + value 2; + description + "Less Utility"; + } + enum "none" { + value 3; + description + "No Pagers"; + } + } + description + "To enable pager functionality"; + } + } + augment "/a1:line/a1:templates/a1:template" { + description + "This augment extends line template nodes + configuration"; + container timestamp { + presence "Indicates a timestamp node is configured"; + description + "To enable timestamp printing before each command."; + container disable { + presence "Indicates a disable node is configured."; + description + "To disable timestamp printing before each command."; + } + } + leaf pager { + type enumeration { + enum "more" { + value 1; + description + "More Utility"; + } + enum "less" { + value 2; + description + "Less Utility"; + } + enum "none" { + value 3; + description + "No Pagers"; + } + } + description + "To enable pager functionality"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-linux-networking-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-linux-networking-cfg.yang new file mode 100644 index 000000000..6beab0086 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-linux-networking-cfg.yang @@ -0,0 +1,1650 @@ +module Cisco-IOS-XR-um-linux-networking-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-linux-networking-cfg"; + prefix um-linux-networking-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 linux-networking package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-11 { + description + "New CLI options following migration of XLNC to eXR + 2022-07-06 + Updated stats sync options"; + semver:module-version "1.1.0"; + } + revision 2020-10-28 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container linux { + description + "Configure Linux functionality"; + container networking { + description + "Configure Linux networking"; + container statistics-synchronization { + description + "Configure synchronization of interface statistics between IOS-XR and Linux"; + container from-xr { + presence "Indicates a from-xr node is configured."; + description + "Set Linux interface statistics using values from IOS-XR"; + container every { + description + "Configure the how often the Linux interface statistics are updated with values from IOS-XR"; + container thirty-seconds { + must + "not(../sixty-seconds or ../twom + or ../threem or ../fourm + or ../fivem or ../sixm + or ../sevenm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a thirty-seconds node is configured."; + description + "Sync every thirty seconds"; + } + container sixty-seconds { + must + "not(../thirty-seconds or ../twom + or ../threem or ../fourm + or ../fivem or ../sixm + or ../sevenm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a sixty-seconds node is configured."; + description + "Sync every sixty seconds"; + } + container twom { + must + "not(../thirty-seconds or ../sixty-seconds + or ../threem or ../fourm + or ../fivem or ../sixm + or ../sevenm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a twom node is configured."; + description + "Sync every 2 minutes"; + } + container threem { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../fourm + or ../fivem or ../sixm + or ../sevenm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a threem node is configured."; + description + "Sync every 3 minutes"; + } + container fourm { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../threem + or ../fivem or ../sixm + or ../sevenm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a fourm node is configured."; + description + "Sync every 4 minutes"; + } + container fivem { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../threem + or ../fourm or ../sixm + or ../sevenm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a fivem node is configured."; + description + "Sync every 5 minutes"; + } + container sixm { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../threem + or ../fourm or ../fivem + or ../sevenm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a sixm node is configured."; + description + "Sync every 6 minutes"; + } + container sevenm { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../threem + or ../fourm or ../fivem + or ../sixm or ../eightm + or ../ninem or ../ten-m)"; + presence "Indicates a sevenm node is configured."; + description + "Sync every 7 minutes"; + } + container eightm { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../threem + or ../fourm or ../fivem + or ../sixm or ../sevenm + or ../ninem or ../ten-m)"; + presence "Indicates a eightm node is configured."; + description + "Sync every 8 minutes"; + } + container ninem { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../threem + or ../fourm or ../fivem + or ../sixm or ../sevenm + or ../eightm or ../ten-m)"; + presence "Indicates a ninem node is configured."; + description + "Sync every 9 minutes"; + } + container ten-m { + must + "not(../thirty-seconds or ../sixty-seconds + or ../twom or ../threem + or ../fourm or ../fivem + or ../sixm or ../sevenm + or ../eightm or ../ninem)"; + presence "Indicates a ten-m node is configured."; + description + "Sync every 10 minutes"; + } + } + } + } + container exposed-interfaces { + description + "Configure an Exposed XR Interface (EXI)"; + container interfaces { + description + "Specify an IOS-XR interface to expose to Linux"; + list interface { + key "interface-name"; + description + "Specify an IOS-XR interface to expose to Linux"; + leaf interface-name { + type xr:Interface-name; + description + "Specify an IOS-XR interface to expose to Linux"; + } + leaf linux-managed { + type enumeration { + enum "enable" { + value 1; + description + "Enable properties of this interface are controlled by linux, not IOS-XR"; + } + enum "disable" { + value 0; + description + "Disable properties of this interface are controlled by linux, not IOS-XR"; + } + } + mandatory true; + description + "Properties of this interface are controlled by linux, not IOS-XR"; + } + container statistics-synchronization { + description + "Configure synchronization of interface statistics between IOS-XR and Linux"; + container from-xr { + presence "Indicates a from-xr node is configured."; + description + "Set Linux interface statistics using values from IOS-XR"; + container every { + description + "Configure the how often the Linux interface statistics are updated with values from IOS-XR"; + container five-seconds { + must + "not(../ten-seconds or ../thirty-seconds + or ../sixty-seconds)"; + presence "Indicates a five-seconds node is configured."; + description + "Sync every five seconds"; + } + container ten-seconds { + must + "not(../five-seconds or ../thirty-seconds + or ../sixty-seconds)"; + presence "Indicates a ten-seconds node is configured."; + description + "Sync every ten seconds"; + } + container thirty-seconds { + must + "not(../five-seconds or ../ten-seconds + or ../sixty-seconds)"; + presence "Indicates a thirty-seconds node is configured."; + description + "Sync every thirty seconds"; + } + container sixty-seconds { + must + "not(../five-seconds or ../ten-seconds + or ../thirty-seconds)"; + presence "Indicates a sixty-seconds node is configured."; + description + "Sync every sixty seconds"; + } + } + } + } + } + } + } + container vrfs { + description + "Configuration for a particular VRF"; + list vrf { + key "vrf-name"; + description + "Configuration for a particular VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Configuration for a particular VRF"; + } + container east-wests { + description + "Configure an East West Interface for a VRF."; + list east-west { + key "east-west-name"; + description + "Configure an East West Interface for a VRF."; + leaf east-west-name { + type xr:Interface-name; + description + "Configure an East West Interface for a VRF."; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable synchronization of this VRF with Linux. Linux applications will not be able to communicate over interfaces in the VRF"; + } + container address-family { + description + "Configuration for a particular IP address family"; + container ipv4 { + description + "IPv4 address family"; + container source-hint { + description + "Source hint config"; + container default-route { + description + "Default route source hint config"; + leaf interface { + type xr:Interface-name; + description + "Interface name for source hint"; + } + container active-management { + presence "Indicates a active-management node is configured."; + description + "Use active RP management interface for source hint"; + } + } + container management-route { + description + "Management route source hint config"; + leaf interface { + type xr:Interface-name; + description + "Interface name for source hint"; + } + } + } + container default-route { + description + "Configure behavior of the Linux default route"; + container software-forwarding { + presence "Indicates a software-forwarding node is configured."; + description + "Use software forwarding instead of hardware forwarding. This may be required to send Linux traffic via the default route over management ports"; + } + } + container protection { + description + "Configure Traffic Protection for Linux networking"; + container protocol { + description + "L4 protocol to specify Traffic Protection rules for"; + list protocol { + key "protocol-name"; + description + "L4 protocol to specify Traffic Protection rules for"; + leaf protocol-name { + type enumeration { + enum "tcp" { + value 104; + description + "Transmission Control Protocol, RFC 793"; + } + enum "udp" { + value 105; + description + "User Datagram Protocol, RFC 768"; + } + } + description + "L4 protocol"; + } + container local-port { + description + "L4 port number to specify Traffic Protection rules for"; + container ports { + description + "selected port number (1-65535)"; + list port { + key "port-number"; + description + "selected port number (1-65535)"; + leaf port-number { + type uint32 { + range "1..65535" { + description + "selected port number (1-65535)"; + } + } + description + "selected port number (1-65535)"; + } + container default-action { + description + "Default action to take for packets matching this Traffic Protection service"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Permit packets to reach Linux applications for this service"; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Drop packets for this service"; + } + } + container remote-addresses { + description + "Remote address to filter against"; + list remote-address { + must "permit or deny"; + key "address length"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-addresses { + description + "Local address to filter against"; + list local-address { + must "permit or deny"; + key "address length"; + description + "Local address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container interfaces { + description + "Select an ingress interface to restrict traffic to"; + list interface { + must "permit or deny"; + key "interface-name"; + description + "Select an ingress interface to restrict traffic to"; + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-addresses { + description + "Remote address to filter against"; + list remote-address-local-address { + must "permit or deny"; + key "remote-address remote-length local-address local-length"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-interfaces { + description + "Remote address to filter against"; + list remote-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-address-interfaces { + description + "Local address to filter against"; + list local-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Local address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-address-interfaces { + description + "Remote address to filter against"; + list remote-address-local-address-interface { + must "permit or deny"; + key "remote-address remote-length local-address local-length interface-name"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + } + } + container all { + description + "all ports"; + container default-action { + description + "Default action to take for packets matching this Traffic Protection service"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Permit packets to reach Linux applications for this service"; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Drop packets for this service"; + } + } + container remote-addresses { + description + "Remote address to filter against"; + list remote-address { + must "permit or deny"; + key "address length"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-addresses { + description + "Local address to filter against"; + list local-address { + must "permit or deny"; + key "address length"; + description + "Local address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container interfaces { + description + "Select an ingress interface to restrict traffic to"; + list interface { + must "permit or deny"; + key "interface-name"; + description + "Select an ingress interface to restrict traffic to"; + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-addresses { + description + "Remote address to filter against"; + list remote-address-local-address { + must "permit or deny"; + key "remote-address remote-length local-address local-length"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-interfaces { + description + "Remote address to filter against"; + list remote-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-address-interfaces { + description + "Local address to filter against"; + list local-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Local address to filter against"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-address-interfaces { + description + "Remote address to filter against"; + list remote-address-local-address-interface { + must "permit or deny"; + key "remote-address remote-length local-address local-length interface-name"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv4-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..32"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv4-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..32"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + } + } + } + } + } + } + container ipv6 { + description + "IPv6 address family"; + container source-hint { + description + "Source hint config"; + container default-route { + description + "Default route source hint config"; + leaf interface { + type xr:Interface-name; + description + "Interface name for source hint"; + } + container active-management { + presence "Indicates a active-management node is configured."; + description + "Use active RP management interface for source hint"; + } + } + container management-route { + description + "Management route source hint config"; + leaf interface { + type xr:Interface-name; + description + "Interface name for source hint"; + } + } + } + container default-route { + description + "Configure behavior of the Linux default route"; + container software-forwarding { + presence "Indicates a software-forwarding node is configured."; + description + "Use software forwarding instead of hardware forwarding. This may be required to send Linux traffic via the default route over management ports"; + } + } + container protection { + description + "Configure Traffic Protection for Linux networking"; + container protocol { + description + "L4 protocol to specify Traffic Protection rules for"; + list protocol { + key "protocol-name"; + description + "L4 protocol to specify Traffic Protection rules for"; + leaf protocol-name { + type enumeration { + enum "tcp" { + value 104; + description + "Transmission Control Protocol, RFC 793"; + } + enum "udp" { + value 105; + description + "User Datagram Protocol, RFC 768"; + } + } + description + "L4 protocol"; + } + container local-port { + description + "L4 port number to specify Traffic Protection rules for"; + container ports { + description + "selected port number (1-65535)"; + list port { + key "port-number"; + description + "selected port number (1-65535)"; + leaf port-number { + type uint32 { + range "1..65535" { + description + "selected port number (1-65535)"; + } + } + description + "selected port number (1-65535)"; + } + container default-action { + description + "Default action to take for packets matching this Traffic Protection service"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Permit packets to reach Linux applications for this service"; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Drop packets for this service"; + } + } + container remote-addresses { + description + "Remote address to filter against"; + list remote-address { + must "permit or deny"; + key "address length"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-addresses { + description + "Local address to filter against"; + list local-address { + must "permit or deny"; + key "address length"; + description + "Local address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container interfaces { + description + "Select an ingress interface to restrict traffic to"; + list interface { + must "permit or deny"; + key "interface-name"; + description + "Select an ingress interface to restrict traffic to"; + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-addresses { + description + "Remote address to filter against"; + list remote-address-local-address { + must "permit or deny"; + key "remote-address remote-length local-address local-length"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-interfaces { + description + "Remote address to filter against"; + list remote-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-address-interfaces { + description + "Local address to filter against"; + list local-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Local address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-address-interfaces { + description + "Remote address to filter against"; + list remote-address-local-address-interface { + must "permit or deny"; + key "remote-address remote-length local-address local-length interface-name"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + } + } + container all { + description + "all ports"; + container default-action { + description + "Default action to take for packets matching this Traffic Protection service"; + container permit { + must "not(../deny)"; + presence "Indicates a permit node is configured."; + description + "Permit packets to reach Linux applications for this service"; + } + container deny { + must "not(../permit)"; + presence "Indicates a deny node is configured."; + description + "Drop packets for this service"; + } + } + container remote-addresses { + description + "Remote address to filter against"; + list remote-address { + must "permit or deny"; + key "address length"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-addresses { + description + "Local address to filter against"; + list local-address { + must "permit or deny"; + key "address length"; + description + "Local address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container interfaces { + description + "Select an ingress interface to restrict traffic to"; + list interface { + must "permit or deny"; + key "interface-name"; + description + "Select an ingress interface to restrict traffic to"; + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-addresses { + description + "Remote address to filter against"; + list remote-address-local-address { + must "permit or deny"; + key "remote-address remote-length local-address local-length"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-interfaces { + description + "Remote address to filter against"; + list remote-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Remote address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container local-address-interfaces { + description + "Local address to filter against"; + list local-address-interface { + must "permit or deny"; + key "address length interface-name"; + description + "Local address to filter against"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + container remote-address-local-address-interfaces { + description + "Remote address to filter against"; + list remote-address-local-address-interface { + must "permit or deny"; + key "remote-address remote-length local-address local-length interface-name"; + description + "Remote address to filter against"; + leaf remote-address { + type inet:ipv6-address-no-zone; + description + "Remote address to filter against"; + } + leaf remote-length { + type uint32 { + range "0..128"; + } + description + "Remote address to filter against"; + } + leaf local-address { + type inet:ipv6-address-no-zone; + description + "Local address to filter against"; + } + leaf local-length { + type uint32 { + range "0..128"; + } + description + "Local address to filter against"; + } + leaf interface-name { + type xr:Interface-name; + description + "Select an ingress interface to restrict traffic to"; + } + container permit { + must "not(../deny) and ../../../default-action/deny"; + presence "Indicates a permit node is configured."; + description + "Add exception rule to permit packets to reach Linux applications (only valid when default-action is deny)"; + } + container deny { + must "not(../permit) and ../../../default-action/permit"; + presence "Indicates a deny node is configured."; + description + "Add exception rule to drop packets (only valid when default-action is permit)"; + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lldp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lldp-cfg.yang new file mode 100644 index 000000000..8037cf331 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lldp-cfg.yang @@ -0,0 +1,350 @@ +module Cisco-IOS-XR-um-lldp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lldp-cfg"; + prefix um-lldp-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 lldp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-12-07 { + description + "Added tagged and subinterfaces-tagged nodes + 2022-11-25 + Corrected chassis-id-type values and order for item numbers + 2022-09-16 + Added chassis-id and system-description nodes + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-03-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container lldp { + presence "Indicates a lldp node is configured."; + description + "LLDP interface configuration commands"; + container transmit { + description + "Disable LLDP TX on an interface"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable LLDP TX on an interface"; + } + } + container receive { + description + "Disable LLDP RX on an interface"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable LLDP RX on an interface"; + } + } + container destination { + description + "Configure LLDP Destination MAC on the interface"; + container mac-address { + presence "Indicates a mac-address node is configured."; + description + "Destination MAC address on the interface"; + container ieee-nearest-non-tmpr-bridge { + must "not(../ieee-nearest-bridge)"; + presence "Indicates a ieee-nearest-non-tmpr-bridge node is configured."; + description + "IEEE Non-TMPR Bridge MAC address, 01:80:C2:00:00:03"; + } + container ieee-nearest-bridge { + must "not(../ieee-nearest-non-tmpr-bridge)"; + presence "Indicates a ieee-nearest-bridge node is configured."; + description + "Default LLDP Destination MAC address, 01:80:C2:00:00:0E"; + } + } + } + container enable { + presence "Indicates a enable node is configured."; + description + "Enable LLDP TX and RX on an interface"; + } + container tagged { + presence "Indicates vlan tagging enabled for LLDP PDU."; + description + "Enable VLAN tagging on LLDP PDU on an interface"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + container lldp { + presence "Indicates a lldp node is configured."; + description + "Enable LLDP, or configure global LLDP subcommands"; + leaf holdtime { + type uint32 { + range "0..65535" { + description + "Length of time (in sec) that receiver must keep this packet"; + } + } + description + "Specify the holdtime (in sec) to be sent in packets"; + } + leaf timer { + type uint32 { + range "5..65534" { + description + "Rate at which LLDP packets are sent (in sec)"; + } + } + description + "Specify the rate at which LLDP packets are sent (in sec)"; + } + leaf reinit { + type uint32 { + range "2..5" { + description + "Delay (in sec) for LLDP initialization on any interface"; + } + } + description + "Delay (in sec) for LLDP initialization on any interface"; + } + leaf system-name { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "LLDP system name string"; + } + pattern "[a-zA-Z0-9_.-]+"; + } + description + "LLDP system name to advertise"; + } + leaf system-description { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "LLDP system description string"; + } + pattern "[a-zA-Z0-9_.-]+"; + } + description + "LLDP system description to advertise"; + } + leaf chassis-id { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "LLDP chassis id string"; + } + pattern "[a-zA-Z0-9_.-:]+"; + } + description + "LLDP chassis ID to advertise"; + } + container chassis-id-type { + description + "LLDP chassis ID type to advertise"; + container chassis-component { + must + "not(../port-component or ../network-address + or ../mac-address or ../interface-name + or ../local or ../interface-alias)"; + presence "Indicates a chassis-component node is configured."; + description + "Value of entPhysicalAlias object defined in IETF RFC 2737"; + } + container interface-alias { + must + "not(../port-component or ../network-address + or ../chassis-component or ../mac-address + or ../interface-name or ../local)"; + presence "Indicates a interface-alias node is configured."; + description + "Value of ifAlias object defined in IETF RFC 2863"; + } + container port-component { + must + "not(../network-address or ../chassis-component + or ../mac-address or ../interface-name + or ../local or ../interface-alias)"; + presence "Indicates a port-component node is configured."; + description + "Value of entPhysicalAlias object defined in IETF RFC 2737"; + } + container mac-address { + must + "not(../port-component or ../network-address + or ../chassis-component or ../interface-name + or ../local or ../interface-alias)"; + presence "Indicates a mac-address node is configured."; + description + "Value of a unicast source address"; + } + container network-address { + must + "not(../port-component or ../chassis-component + or ../mac-address or ../interface-name + or ../local or ../interface-alias)"; + presence "Indicates a network-address node is configured."; + description + "Network address associated with a particular chassis"; + } + container interface-name { + must + "not(../port-component or ../network-address + or ../chassis-component or ../mac-address + or ../local or ../interface-alias)"; + presence "Indicates a interface-name node is configured."; + description + "Value of ifName object defined in IETF RFC 2863"; + } + container local { + must + "not(../port-component or ../network-address + or ../chassis-component or ../mac-address + or ../interface-name or ../interface-alias)"; + presence "Indicates a local node is configured."; + description + "Chassis identifier based on a locally defined value"; + } + } + container subinterfaces { + description + "Configure LLDP over Sub-interfaces"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable LLDP over Sub-interfaces as well"; + } + } + container subinterfaces-tagged { + presence "Indicates a subinterface-tagged node is configured."; + description + "Enable VLAN tagging for LLDP PDU over Sub-interfaces"; + } + container management { + description + "Configure LLDP over Management interface"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable LLDP over Management interface as well"; + } + } + container priorityaddr { + description + "Configure Priority to advertise Management interface address first"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable LLDP to use Management interface address first(if configured)"; + } + } + container extended-show-width { + description + "Configure Extended Show LLDP Neighbor Width"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable Extended Show LLDP Neighbor Width"; + } + } + container tlv-select { + presence "Indicates a tlv-select node is configured."; + description + "Selection of LLDP TLVs to disable"; + container management-address { + description + "Management Address TLV"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable Management Address TLV"; + } + } + container port-description { + description + "Port Description TLV"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable Port Description TLV"; + } + } + container system-capabilities { + description + "System Capabilities TLV"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable System Capabilities TLV"; + } + } + container system-description { + description + "System Description TLV"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable System Description TLV"; + } + } + container system-name { + description + "System Name TLV"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable System Name TLV"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-location-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-location-cfg.yang new file mode 100644 index 000000000..d67384ea6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-location-cfg.yang @@ -0,0 +1,64 @@ +module Cisco-IOS-XR-um-location-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-location-cfg"; + prefix um-location-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 location package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-01-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container locations { + description + "Per-node location for active nodes"; + list location { + key "location-name"; + description + "The location for an active node"; + leaf location-name { + type xr:Node-id; + description + "The location name for this node"; + } + } + list preconfigured-location { + key "location-name"; + description + "Per-node location for non-active nodes"; + leaf location-name { + type xr:Node-id; + description + "The location name for this node"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-cfg.yang new file mode 100644 index 000000000..7a0452d02 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-cfg.yang @@ -0,0 +1,1933 @@ +module Cisco-IOS-XR-um-logging-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-logging-cfg"; + prefix um-logging-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 logging package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-22 { + description + "Added fetch-timestamp + 2022-07-11 + Added missing description statement to nodes + 2022-02-28 + Added leaf yang"; + semver:module-version "2.1.0"; + } + revision 2021-10-29 { + description + "Added the container monitor-discriminator + 2021-10-18 + Changed sch-type for the node ipv6-address under container host-ipv6-addresses"; + semver:module-version "2.0.0"; + } + revision 2021-03-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container logging { + description + "Modify message logging facilities"; + leaf console { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "errors" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "informational" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + enum "disable" { + value 15; + description + "Disable logging "; + } + } + description + "Set console logging"; + } + leaf trap { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "errors" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "informational" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + enum "disable" { + value 15; + description + "Disable logging "; + } + } + description + "Set trap logging"; + } + leaf monitor { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "errors" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "informational" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + enum "disable" { + value 15; + description + "Disable logging "; + } + } + description + "Set monitor logging"; + } + container monitor-discriminator { + description + "Set monitor logging discriminator"; + leaf match1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 1"; + } + } + description + "Set match discriminator 1"; + } + leaf match2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 2"; + } + } + description + "Set match discriminator 2"; + } + leaf match3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 3"; + } + } + description + "Set match discriminator 3"; + } + leaf nomatch1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 1"; + } + } + description + "Set no-match discriminator 1"; + } + leaf nomatch2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 2"; + } + } + description + "Set no-match discriminator 2"; + } + leaf nomatch3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 3"; + } + } + description + "Set no-match discriminator 3"; + } + } + container archive { + description + "logging to a persistent device(disk/harddisk)"; + container device { + description + "Configure the archive device"; + container disk0 { + must "not(../disk1 or ../harddisk)"; + presence "Indicates a disk0 node is configured."; + description + "Use disk0 as the archive device"; + } + container disk1 { + must "not(../disk0 or ../harddisk)"; + presence "Indicates a disk1 node is configured."; + description + "Use disk1 as the archive device"; + } + container harddisk { + must "not(../disk0 or ../disk1)"; + presence "Indicates a harddisk node is configured."; + description + "Use harddisk as the archive device"; + } + } + container frequency { + description + "The collection interval for logs"; + container daily { + must "not(../weekly)"; + presence "Indicates a daily node is configured."; + description + "Collect log in files on a daily basis"; + } + container weekly { + must "not(../daily)"; + presence "Indicates a weekly node is configured."; + description + "Collect log in files on a weekly basis"; + } + } + leaf file-size { + type uint32 { + range "1..2047" { + description + "Size in MB"; + } + } + description + "The maximum file size for a single log file."; + } + leaf archive-size { + type uint32 { + range "1..2047" { + description + "Size in MB"; + } + } + description + "The total size of the archive"; + } + leaf archive-length { + type uint32 { + range "1..256" { + description + "Number of weeks"; + } + } + description + "The maximum no of weeks of log to maintain"; + } + leaf severity { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "errors" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warnings" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "informational" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + } + description + "The minimum severity of log messages to archive"; + } + leaf threshold { + type uint32 { + range "1..99" { + description + "Threshold percent"; + } + } + description + "The size threshold at which a syslog is generated"; + } + } + container ipv4 { + description + "Mark the dscp/precedence bit for ipv4 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + must "not(../precedence)"; + description + "Set IP DSCP (DiffServ CodePoint)"; + } + leaf precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "routine" { + value 0; + description + "Match packets with routine precedence (0)"; + } + enum "priority" { + value 1; + description + "Match packets with priority precedence (1)"; + } + enum "immediate" { + value 2; + description + "Match packets with immediate precedence (2)"; + } + enum "flash" { + value 3; + description + "Match packets with flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Match packets with flash override precedence (4)"; + } + enum "critical" { + value 5; + description + "Match packets with critical precedence (5)"; + } + enum "internet" { + value 6; + description + "Match packets with internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Match packets with network control precedence (7)"; + } + } + } + must "not(../dscp)"; + description + "Set precedence"; + } + } + container ipv6 { + description + "Mark the dscp/precedence bit for ipv6 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + must "not(../precedence)"; + description + "Set IP DSCP (DiffServ CodePoint)"; + } + leaf precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "routine" { + value 0; + description + "Match packets with routine precedence (0)"; + } + enum "priority" { + value 1; + description + "Match packets with priority precedence (1)"; + } + enum "immediate" { + value 2; + description + "Match packets with immediate precedence (2)"; + } + enum "flash" { + value 3; + description + "Match packets with flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Match packets with flash override precedence (4)"; + } + enum "critical" { + value 5; + description + "Match packets with critical precedence (5)"; + } + enum "internet" { + value 6; + description + "Match packets with internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Match packets with network control precedence (7)"; + } + } + } + must "not(../dscp)"; + description + "Set precedence"; + } + } + container facility { + description + "Modify message logging facilities"; + leaf level { + type enumeration { + enum "kern" { + value 0; + description + "Kernel"; + } + enum "user" { + value 8; + description + "User process"; + } + enum "mail" { + value 16; + description + "Mail system"; + } + enum "daemon" { + value 24; + description + "System daemons"; + } + enum "auth" { + value 32; + description + "Authorization system"; + } + enum "syslog" { + value 40; + description + "Syslog itself"; + } + enum "lpr" { + value 48; + description + " Line printer system"; + } + enum "news" { + value 56; + description + "USENET news"; + } + enum "uucp" { + value 64; + description + "Unix-to-Unix copy system"; + } + enum "cron" { + value 72; + description + "Cron/at facility"; + } + enum "local0" { + value 128; + description + "Local use"; + } + enum "local1" { + value 136; + description + "Local use"; + } + enum "local2" { + value 144; + description + "Local use"; + } + enum "local3" { + value 152; + description + "Local use"; + } + enum "local4" { + value 160; + description + "Local use"; + } + enum "local5" { + value 168; + description + "Local use"; + } + enum "local6" { + value 176; + description + "Local use"; + } + enum "local7" { + value 184; + description + "Local use"; + } + enum "sys9" { + value 192; + description + "System use"; + } + enum "sys10" { + value 200; + description + "System use"; + } + enum "sys11" { + value 208; + description + "System use"; + } + enum "sys12" { + value 216; + description + "System use"; + } + enum "sys13" { + value 224; + description + "System use"; + } + enum "sys14" { + value 232; + description + "System use"; + } + } + description + "configure this node"; + } + } + container buffered { + description + "Set buffered logging parameters"; + leaf logging-buffer-size { + type uint32 { + range "307200..125000000" { + description + "Logging buffer size"; + } + } + description + "Logging buffer size"; + } + leaf level { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable"; + } + enum "alerts" { + value 1; + description + "Immediate action needed"; + } + enum "critical" { + value 2; + description + "Critical conditions"; + } + enum "errors" { + value 3; + description + "Error conditions"; + } + enum "warnings" { + value 4; + description + "Warning conditions"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions"; + } + enum "informational" { + value 6; + description + "Informational messages"; + } + enum "debugging" { + value 7; + description + "Debugging messages"; + } + } + description + "configure this node"; + } + container discriminator { + description + "Set logging buffer discriminator"; + leaf match1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 1"; + } + } + description + "Set match discriminator 1"; + } + leaf match2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 2"; + } + } + description + "Set match discriminator 2"; + } + leaf match3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 3"; + } + } + description + "Set match discriminator 3"; + } + leaf nomatch1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 1"; + } + } + description + "Set no-match discriminator 1"; + } + leaf nomatch2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 2"; + } + } + description + "Set no-match discriminator 2"; + } + leaf nomatch3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 3"; + } + } + description + "Set no-match discriminator 3"; + } + } + } + container container { + description + "Enable to include containers application logs"; + container all { + presence "Indicates a all node is configured."; + description + "Enables log collection from all containers"; + } + container fetch-timestamp { + presence "Indicates a fetch-timestamp node is configured."; + description + "Fetch logs with container timestamp for all containers"; + } + } + container files { + description + "Set file logging"; + list file { + key "file-name"; + description + "Set file logging"; + leaf file-name { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "File name"; + } + } + description + "Set file logging"; + } + leaf path { + type string { + length "1..256" { + description + "File path (e.g. /disk0: )"; + } + } + mandatory true; + description + "Set file path "; + } + leaf maxfilesize { + type uint32 { + range "1..2097152" { + description + "Max file size (in KB)"; + } + } + mandatory true; + description + "Set max file size"; + } + leaf severity { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "error" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "info" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + } + mandatory true; + description + "Set severity level"; + } + container local-accounting { + presence "Indicates a local-accounting node is configured."; + description + "Store only the command accounting logs"; + container send-to-remote { + description + "Send the command accounting logs to syslog server"; + container facility { + description + "Modify message logging facilities"; + leaf level { + type enumeration { + enum "kern" { + value 0; + description + "Kernel"; + } + enum "user" { + value 8; + description + "User process"; + } + enum "mail" { + value 16; + description + "Mail system"; + } + enum "daemon" { + value 24; + description + "System daemons"; + } + enum "auth" { + value 32; + description + "Authorization system"; + } + enum "syslog" { + value 40; + description + "Syslog itself"; + } + enum "lpr" { + value 48; + description + " Line printer system"; + } + enum "news" { + value 56; + description + "USENET news"; + } + enum "uucp" { + value 64; + description + "Unix-to-Unix copy system"; + } + enum "cron" { + value 72; + description + "Cron/at facility"; + } + enum "local0" { + value 128; + description + "Local use"; + } + enum "local1" { + value 136; + description + "Local use"; + } + enum "local2" { + value 144; + description + "Local use"; + } + enum "local3" { + value 152; + description + "Local use"; + } + enum "local4" { + value 160; + description + "Local use"; + } + enum "local5" { + value 168; + description + "Local use"; + } + enum "local6" { + value 176; + description + "Local use"; + } + enum "local7" { + value 184; + description + "Local use"; + } + enum "sys9" { + value 192; + description + "System use"; + } + enum "sys10" { + value 200; + description + "System use"; + } + enum "sys11" { + value 208; + description + "System use"; + } + enum "sys12" { + value 216; + description + "System use"; + } + enum "sys13" { + value 224; + description + "System use"; + } + enum "sys14" { + value 232; + description + "System use"; + } + } + description + "configure this node"; + } + } + } + } + container discriminator { + description + "Set file logging discriminator"; + leaf match1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 1"; + } + } + description + "Set match discriminator 1"; + } + leaf match2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 2"; + } + } + description + "Set match discriminator 2"; + } + leaf match3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match discriminator 3"; + } + } + description + "Set match discriminator 3"; + } + leaf nomatch1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 1"; + } + } + description + "Set no-match discriminator 1"; + } + leaf nomatch2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 2"; + } + } + description + "Set no-match discriminator 2"; + } + leaf nomatch3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "no-match discriminator 3"; + } + } + description + "Set no-match discriminator 3"; + } + } + } + } + leaf history { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable"; + } + enum "alerts" { + value 1; + description + "Immediate action needed"; + } + enum "critical" { + value 2; + description + "Critical conditions"; + } + enum "errors" { + value 3; + description + "Error conditions"; + } + enum "warnings" { + value 4; + description + "Warning conditions"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions"; + } + enum "informational" { + value 6; + description + "Informational messages"; + } + enum "debugging" { + value 7; + description + "Debugging messages"; + } + enum "disable" { + value 15; + description + "Disable logging"; + } + } + description + "Set history logging"; + } + leaf history-size { + type uint32 { + range "1..500" { + description + "Logging history size"; + } + } + description + "Logging history size"; + } + container tls-servers { + description + "Secure server over tls"; + list tls-server { + key "tls-server-name"; + description + "Secure server over tls"; + leaf tls-server-name { + type string { + length "1..800" { + description + "Name for the tls peer configuration"; + } + } + description + "Secure server over tls"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VPN Routing/Forwarding instance name"; + } + } + description + "Set VRF option"; + } + container address { + description + "Specify a TLS server address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 Address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + description + "IPv6 Address"; + } + } + leaf tls-hostname { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the logging host"; + } + } + description + "Hostname or FQDN of Secure Log server"; + } + leaf trustpoint { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the trustpoint configured"; + } + } + description + "Trustpoint"; + } + leaf severity { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "errors" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warnings" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "informational" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + } + description + "severity of remote host"; + } + } + } + container vrfs { + description + "Set VRF option"; + list vrf { + key "vrf-name"; + description + "Set VRF option"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF name"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VPN Routing/Forwarding instance name"; + } + } + } + description + "Set VRF option"; + } + container host-names { + description + "Name of the logging host"; + list host-name { + key "name"; + description + "Name of the logging host"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of the logging host"; + } + pattern "[a-zA-Z0-9._-]+"; + } + description + "Name of the logging host"; + } + leaf severity { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "error" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "info" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + } + description + "Set severity of messages for particular remote host/vrf"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Port number"; + } + } + description + "Set UDP port for this remote host/vrf"; + } + leaf operator { + type enumeration { + enum "equals-or-higher" { + value 0; + description + "Log messages equal to or higher than severity"; + } + enum "equals" { + value 1; + description + "Log messages equal to severity"; + } + enum "not-equals" { + value 2; + description + "Log messages not equal to severity"; + } + } + description + "Set severity operator of messages for particular remote host/vrf"; + } + } + } + container host-ipv4-addresses { + description + "IPV4 address of the logging host"; + list host-ipv4-address { + key "ipv4-address"; + description + "IPV4 address of the logging host"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "IPV4 address of the logging host"; + } + leaf severity { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "error" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "info" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + } + description + "Set severity of messages for particular remote host/vrf"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Port number"; + } + } + description + "Set UDP port for this remote host/vrf"; + } + leaf operator { + type enumeration { + enum "equals-or-higher" { + value 0; + description + "Log messages equal to or higher than severity"; + } + enum "equals" { + value 1; + description + "Log messages equal to severity"; + } + enum "not-equals" { + value 2; + description + "Log messages not equal to severity"; + } + } + description + "Set severity operator of messages for particular remote host/vrf"; + } + } + } + container host-ipv6-addresses { + description + "IPV6 address of the logging host"; + list host-ipv6-address { + key "ipv6-address"; + description + "IPV6 address of the logging host"; + leaf ipv6-address { + type inet:ipv6-address-no-zone; + description + "IPV6 address of the logging host"; + } + leaf severity { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable (severity=0)"; + } + enum "alerts" { + value 1; + description + "Immediate action needed (severity=1)"; + } + enum "critical" { + value 2; + description + "Critical conditions (severity=2)"; + } + enum "error" { + value 3; + description + "Error conditions (severity=3)"; + } + enum "warning" { + value 4; + description + "Warning conditions (severity=4)"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions (severity=5)"; + } + enum "info" { + value 6; + description + "Informational messages (severity=6)"; + } + enum "debugging" { + value 7; + description + "Debugging messages (severity=7)"; + } + } + description + "Set severity of messages for particular remote host/vrf"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Port number"; + } + } + description + "Set UDP port for this remote host/vrf"; + } + leaf operator { + type enumeration { + enum "equals-or-higher" { + value 0; + description + "Log messages equal to or higher than severity"; + } + enum "equals" { + value 1; + description + "Log messages equal to severity"; + } + enum "not-equals" { + value 2; + description + "Log messages not equal to severity"; + } + } + description + "Set severity operator of messages for particular remote host/vrf"; + } + } + } + } + } + leaf hostnameprefix { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "hostname prefix string"; + } + } + description + "Hostname prefix to add on msgs to servers"; + } + leaf localfilesize { + type uint32 { + range "0..4294967295" { + description + "Size of the local log file"; + } + } + description + "Set size of the local log file"; + } + container source-interfaces { + description + "Specify interface for source address in logging transactions"; + list source-interface { + key "source-interface-name"; + description + "Specify interface for source address in logging transactions"; + leaf source-interface-name { + type xr:Interface-name; + description + "Specify interface for source address in logging transactions"; + } + container vrfs { + description + "Set VRF option"; + list vrf { + key "vrf-name"; + description + "Set VRF option"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default vrf name"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "specify the vrf name"; + } + } + } + description + "Set VRF option"; + } + } + } + } + } + container suppress { + description + "Suppress logging behaviour"; + container duplicates { + presence "Indicates a duplicates node is configured."; + description + "Suppress consecutive duplicate messages"; + } + } + container format { + description + "Specify syslog message format send to the server"; + container rfc5424 { + must "not(../bsd)"; + presence "Indicates a rfc5424 node is configured."; + description + "Enable to send the syslog message rfc5424 format "; + } + container bsd { + must "not(../rfc5424)"; + presence "Indicates a bsd node is configured."; + description + "Enable to send the syslog message as BSD format "; + } + } + leaf yang { + type enumeration { + enum "emergencies" { + value 0; + description + "System is unusable"; + } + enum "alerts" { + value 1; + description + "Immediate action needed"; + } + enum "critical" { + value 2; + description + "Critical conditions"; + } + enum "errors" { + value 3; + description + "Error conditions"; + } + enum "warnings" { + value 4; + description + "Warning conditions"; + } + enum "notifications" { + value 5; + description + "Normal but significant conditions"; + } + enum "informational" { + value 6; + description + "Informational messages"; + } + enum "debugging" { + value 7; + description + "Debugging messages"; + } + } + description + "Set yang logging parameters"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-correlator-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-correlator-cfg.yang new file mode 100644 index 000000000..ca885af35 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-correlator-cfg.yang @@ -0,0 +1,545 @@ +module Cisco-IOS-XR-um-logging-correlator-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-logging-correlator-cfg"; + prefix um-logging-correlator-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-logging-cfg { + prefix a1; + } + 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 logging-correlator package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-09-30 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:logging" { + description + "This augment extends logging nodes configuration"; + container correlator { + description + "Configure properties of the event correlator"; + leaf buffer-size { + type uint32 { + range "1024..52428800" { + description + "Size of the correlator buffer"; + } + } + description + "Configure size of the correlator buffer"; + } + container rules { + description + "Configure a specified correlation rule"; + list rule { + must + "type/stateful/timeout or type/stateful/timeout-rootcause or + type/stateful/context-correlation or type/stateful/reparent or + type/stateful/reissue-nonbistate or type/stateful/rootcause or + type/stateful/nonrootcause/alarms/alarm or + type/nonstateful/timeout or type/nonstateful/timeout-rootcause or + type/nonstateful/context-correlation or + type/nonstateful/rootcause or + type/nonstateful/nonrootcause/alarms/alarm"; + key "rule-name"; + description + "Configure a specified correlation rule"; + leaf rule-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Rule name"; + } + } + description + "Configure a specified correlation rule"; + } + container type { + description + "type of rule - stateful or nonstateful"; + container stateful { + description + "stateful rule type"; + leaf timeout { + type uint32 { + range "1..7200000" { + description + "Timeout (time the rule is to be active) in milliseconds"; + } + } + description + "Specify timeout"; + } + leaf timeout-rootcause { + type uint32 { + range "1..7200000" { + description + "Rootcause Timeout (time to wait for rootcause) in milliseconds"; + } + } + description + "Specify timeout for root-cause"; + } + container context-correlation { + presence "Indicates a context-correlation node is configured."; + description + "Specify enable correlation on context"; + } + container reparent { + presence "Indicates a reparent node is configured."; + description + "Specify reparent of alarm on parent clear"; + } + container reissue-nonbistate { + presence "Indicates a reissue-nonbistate node is configured."; + description + "Specify reissue of non-bistate alarms on parent clear"; + } + container rootcause { + presence "Indicates a rootcause node is configured."; + description + "Specify root cause alarm: Category/Group/Code combos"; + leaf message-category { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Message category of the root message"; + } + } + mandatory true; + description + "Specify root cause alarm: Category/Group/Code combos"; + } + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Group name of root message"; + } + } + mandatory true; + description + "Group name of root message"; + } + leaf message-code { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Message code of root message"; + } + } + mandatory true; + description + "Message code of root message"; + } + } + container nonrootcause { + description + "nonrootcause alarm"; + container alarms { + description + "Specify non-root cause alarm: Category/Group/Code combos"; + list alarm { + key "message-category group-name message-code"; + description + "Specify non-root cause alarm: Category/Group/Code combos"; + leaf message-category { + type string { + length "1..32" { + description + "Message category of the correlated message"; + } + } + description + "Specify non-root cause alarm: Category/Group/Code combos"; + } + leaf group-name { + type string { + length "1..32" { + description + "Group name of correlated message"; + } + } + description + "Group name of correlated message"; + } + leaf message-code { + type string { + length "1..32" { + description + "Message code of correlated message"; + } + } + description + "Message code of correlated message"; + } + } + } + } + } + container nonstateful { + description + "non-stateful rule type"; + leaf timeout { + type uint32 { + range "1..7200000" { + description + "Timeout (time the rule is to be active) in milliseconds"; + } + } + description + "Specify timeout"; + } + leaf timeout-rootcause { + type uint32 { + range "1..7200000" { + description + "Rootcause Timeout (time to wait for rootcause) in milliseconds"; + } + } + description + "Specify timeout for root-cause"; + } + container context-correlation { + presence "Indicates a context-correlation node is configured."; + description + "Specify enable correlation on context"; + } + container rootcause { + presence "Indicates a rootcause node is configured."; + description + "Specify root cause alarm: Category/Group/Code combos"; + leaf message-category { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Message category of the root message"; + } + } + mandatory true; + description + "Specify root cause alarm: Category/Group/Code combos"; + } + leaf group-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Group name of root message"; + } + } + mandatory true; + description + "Group name of root message"; + } + leaf message-code { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Message code of root message"; + } + } + mandatory true; + description + "Message code of root message"; + } + } + container nonrootcause { + description + "nonrootcause alarm"; + container alarms { + description + "Specify non-root cause alarm: Category/Group/Code combos"; + list alarm { + key "message-category group-name message-code"; + description + "Specify non-root cause alarm: Category/Group/Code combos"; + leaf message-category { + type string { + length "1..32" { + description + "Message category of the correlated message"; + } + } + description + "Specify non-root cause alarm: Category/Group/Code combos"; + } + leaf group-name { + type string { + length "1..32" { + description + "Group name of correlated message"; + } + } + description + "Group name of correlated message"; + } + leaf message-code { + type string { + length "1..32" { + description + "Message code of correlated message"; + } + } + description + "Message code of correlated message"; + } + } + } + } + } + } + container apply { + description + "Apply rule"; + container all-of-router { + presence "Indicates a all-of-router node is configured."; + description + "Apply the rule to all of the router"; + } + container locations { + description + "Apply rule to specified location"; + list location { + key "location-name"; + description + "Apply rule to specified location"; + leaf location-name { + type xr:Node-id; + description + "Apply rule to specified location"; + } + } + } + container contexts { + description + "Apply rule to specified context"; + list context { + key "context-name"; + description + "Apply rule to specified context"; + leaf context-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Context name"; + } + } + description + "Apply rule to specified context"; + } + } + } + } + } + } + container rulesets { + description + "Configure a specified correlation ruleset"; + list ruleset { + key "ruleset-name"; + description + "Configure a specified correlation ruleset"; + leaf ruleset-name { + type string { + length "1..32" { + description + "Ruleset name"; + } + } + description + "Configure a specified correlation ruleset"; + } + container rulenames { + description + "Specify rule name"; + list rulename { + key "rulename-name"; + description + "Specify rule name"; + leaf rulename-name { + type string { + length "1..32" { + description + "Rule name"; + } + } + description + "Specify rule name"; + } + } + } + container apply { + description + "Apply ruleset"; + container all-of-router { + presence "Indicates a all-of-router node is configured."; + description + "Apply the rule to all of the router"; + } + container locations { + description + "Apply rule to specified location"; + list location { + key "location-name"; + description + "Apply rule to specified location"; + leaf location-name { + type xr:Node-id; + description + "Apply rule to specified location"; + } + } + } + container contexts { + description + "Apply rule to specified context"; + list context { + key "context-name"; + description + "Apply rule to specified context"; + leaf context-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Context name"; + } + } + description + "Apply rule to specified context"; + } + } + } + } + } + } + } + container suppress { + description + "Configure properties for the event suppression"; + container rules { + description + "Configure a specified suppression rule"; + list rule { + must "alarms/alarm or all-alarms"; + key "rule-name"; + description + "Configure a specified suppression rule"; + leaf rule-name { + type string { + length "1..32" { + description + "Rule name"; + } + } + description + "Configure a specified suppression rule"; + } + container alarms { + description + "Specify alarm: Category/Group/Code combos"; + list alarm { + key "message-category group-name message-code"; + description + "Specify alarm: Category/Group/Code combos"; + leaf message-category { + type string { + length "1..32" { + description + "Message category of the suppressed message"; + } + } + description + "Specify alarm: Category/Group/Code combos"; + } + leaf group-name { + type string { + length "1..32" { + description + "Group name of suppressed message"; + } + } + description + "Group name of suppressed message"; + } + leaf message-code { + type string { + length "1..32" { + description + "Message code of suppressed message"; + } + } + description + "Message code of suppressed message"; + } + } + } + container all-alarms { + presence "Indicates a all-alarms node is configured."; + description + "All alarms of any Category/Group/Code combo"; + } + container apply { + description + "Apply suppression rule"; + container all-of-router { + presence "Indicates a all-of-router node is configured."; + description + "Apply the rule to all of the router"; + } + container source { + description + "Apply rule to specified source"; + container locations { + description + "Apply rule to specified location"; + list location { + key "location-name"; + description + "Apply rule to specified location"; + leaf location-name { + type xr:Node-id; + description + "Apply rule to specified location"; + } + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-events-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-events-cfg.yang new file mode 100644 index 000000000..2b7ae8110 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-logging-events-cfg.yang @@ -0,0 +1,159 @@ +module Cisco-IOS-XR-um-logging-events-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-logging-events-cfg"; + prefix um-logging-events-cfg; + + import Cisco-IOS-XR-um-logging-cfg { + prefix a1; + } + 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 logging-events package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-10-06 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:logging" { + description + "This augment extends logging nodes configuration"; + container events { + description + "Configure event monitoring parameters"; + leaf buffer-size { + type uint32 { + range "1024..1024000" { + description + "Size of the local event buffer"; + } + } + description + "Set size of the local event buffer"; + } + container filter { + description + "Configure filter"; + list match { + key "match-string"; + description + " Configure match string to filter"; + leaf match-string { + type string { + length "1..32" { + description + "String to match with alarms"; + } + } + description + " Configure match string to filter"; + } + } + } + container display-location { + presence "Indicates a display-location node is configured."; + description + "Include alarm source location in message text"; + } + leaf level { + type enumeration { + enum "emergencies" { + value 0; + description + "(level=0) System is unusable"; + } + enum "alerts" { + value 1; + description + "(level=1) Immediate action needed"; + } + enum "critical" { + value 2; + description + "(level=2) Critical conditions"; + } + enum "errors" { + value 3; + description + "(level=3) Error conditions"; + } + enum "warnings" { + value 4; + description + "(level=4) Warning conditions"; + } + enum "notifications" { + value 5; + description + "(level=5) Normal but significant conditions"; + } + enum "informational" { + value 6; + description + "(level=6) Informational messages"; + } + } + description + "Log all events with equal or higher (lower level) severity"; + } + leaf threshold { + type uint32 { + range "10..100" { + description + "Capacity alarm threshold"; + } + } + description + "Configure threshold (%) for capacity alarm"; + } + leaf precfg-suppression { + type enumeration { + enum "enable" { + value 1; + description + "Suppress events from a card/VM till its configuration is complete"; + } + } + description + "Suppress events from a card/VM till its configuration is complete"; + } + leaf precfg-suppression-timeout { + type uint32 { + range "1..60" { + description + "Timeout (in minutes) for pre-config events suppression (default 15)"; + } + } + description + "Timeout (in minutes) for pre-config events suppression (default 15)"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-cfg.yang new file mode 100644 index 000000000..723f6ad0e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-cfg.yang @@ -0,0 +1,13840 @@ +module Cisco-IOS-XR-um-lpts-pifib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-pifib-cfg"; + prefix um-lpts-pifib-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 lpts-pifib package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature pifib_policer_config_check { + description + "pifib policer config check"; + } + + feature pifib_local_policer_config_check { + description + "pifib local policer config check"; + } + + feature pifib_xipc_throt_policer_config_check { + description + "pifib xipc throt policer config check"; + } + + feature pifib_policer_node_check { + description + "pifib policer node check"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container lpts { + if-feature "pifib_policer_config_check"; + if-feature "pifib_local_policer_config_check"; + description + "lpts configuration commands"; + container pifib { + description + "pre-ifib configuration commands"; + container hardware { + description + "hardware configuration commands"; + container police { + presence "Indicates a police node is configured."; + description + "ingress policers configuration command"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container multipath { + description + "Multipath "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container blb { + description + "BLB "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + container ldp { + description + "LDP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } + container lpts { + if-feature "pifib_policer_config_check"; + if-feature "pifib_local_policer_config_check"; + description + "lpts configuration commands"; + container pifib { + description + "pre-ifib configuration commands"; + container hardware { + description + "hardware configuration commands"; + container police { + presence "Indicates a police node is configured."; + description + "ingress policers configuration command"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container multipath { + description + "Multipath "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container blb { + description + "BLB "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + container ldp { + description + "LDP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container fragment { + description + "L2TPv2 fragmented packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + leaf-list precedence { + type union { + type uint32 { + range "0..7" { + description + "Precedence value"; + } + } + type enumeration { + enum "critical" { + value 5; + description + "Critical precedence (5)"; + } + enum "flash" { + value 3; + description + "Flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Flash override precedence (4)"; + } + enum "immediate" { + value 2; + description + "Immediate precedence (2)"; + } + enum "internet" { + value 6; + description + "Internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Network control precedence (7)"; + } + enum "priority" { + value 1; + description + "Priority precedence (1)"; + } + enum "routine" { + value 0; + description + "Routine precedence (0)"; + } + } + } + max-elements "8"; + description + "TOS Precedence value(s)"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-domain-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-domain-cfg.yang new file mode 100644 index 000000000..e53c3b3ed --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-domain-cfg.yang @@ -0,0 +1,3209 @@ +module Cisco-IOS-XR-um-lpts-pifib-domain-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-pifib-domain-cfg"; + prefix um-lpts-pifib-domain-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + import Cisco-IOS-XR-um-lpts-pifib-cfg { + prefix a1; + } + 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 lpts-pifib-domain package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-28 { + description + "Added new nodes under flow/ipsec, l2tpv2, pim and udp + 2022-07-11 + Added missing description statement to nodes"; + semver:module-version "1.2.0"; + } + revision 2021-07-14 { + description + "Added the new feature nodes cnbng-gtpu and cnbng-pfcp"; + semver:module-version "1.1.0"; + } + revision 2020-09-17 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature pifib_domains_config_check { + description + "pifib domains config check"; + } + + feature pifib_xipc_throt_policer_config_check { + description + "pifib xipc throt policer config check"; + } + + grouping LPTS-POLICE { + description + "Grouping for lpts-police"; + container domains { + description + "ingress domains configuration command"; + list domain { + key "domain-name"; + description + "ingress domains configuration command"; + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Domain name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "ingress domains configuration command"; + } + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multipath { + description + "Multipath "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container blb { + description + "BLB "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container ldp { + description + "LDP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cnbng-gtpu { + description + "CnBNG GTPU Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cnbng-pfcp { + description + "CnBNG PFCP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + } + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container domains { + description + "ingress domains configuration command"; + list domain { + key "domain-name"; + description + "ingress domains configuration command"; + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Domain name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "ingress domains configuration command"; + } + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multipath { + description + "Multipath "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container blb { + description + "BLB "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container ldp { + description + "LDP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cnbng-gtpu { + description + "CnBNG GTPU Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cnbng-pfcp { + description + "CnBNG PFCP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + } + } + + augment "/a1:lpts/a1:pifib/a1:hardware/a1:police" { + description + "This augment extends lpts pifib hardware police nodes + configuration"; + uses LPTS-POLICE; + } + augment "/location:locations/location:location/a1:lpts/a1:pifib/a1:hardware/a1:police" { + description + "This augment extends lpts pifib hardware police active nodes + configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location/a1:lpts/a1:pifib/a1:hardware/a1:police" { + description + "This augment extends lpts pifib hardware police preconfigured nodes + configuration"; + uses LOCATION-BODY; + } + augment "/a1:lpts/a1:pifib/a1:hardware" { + description + "This augment extends lpts pifib hardware nodes + configuration"; + container domains { + description + "ingress domains configuration command"; + list domain { + key "domain-name"; + description + "ingress domains configuration command"; + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Domain name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "ingress domains configuration command"; + } + container interfaces { + description + "Add interface to domain"; + list interface { + key "interface-name"; + description + "Add interface to domain"; + leaf interface-name { + type xr:Interface-name; + description + "Add interface to domain"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg.yang new file mode 100644 index 000000000..0d1e20a47 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg.yang @@ -0,0 +1,3078 @@ +module Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-pifib-dynamic-flows-cfg"; + prefix um-lpts-pifib-dynamic-flows-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + import Cisco-IOS-XR-um-lpts-pifib-cfg { + prefix a1; + } + 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 lpts-pifib-dynamic-flows package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-09-17 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature pifib_dynamic_flows_gl_config_check { + description + "pifib dynamic flows gl config check"; + } + + feature pifib_dynamic_flows_lo_config_check { + description + "pifib dynamic flows lo config check"; + } + + feature pifib_xipc_throt_policer_config_check { + description + "pifib xipc throt policer config check"; + } + + feature pifib_dynamic_flows_node_check { + description + "pifib dynamic flows node check"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container dynamic-flows { + presence "Indicates a dynamic-flows node is configured."; + description + "ingress flows configuration command"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container multipath { + description + "Multipath "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container blb { + description + "BLB "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container singlepath { + description + "Singlepath "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container application { + description + "Specific application packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container control { + description + "Control packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + } + container ldp { + description + "LDP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container udp { + description + "UDP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container all-routers { + description + "All Routers"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container udp { + description + "UDP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container known { + description + "RSVP Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container udp { + description + "UDP"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container ike { + description + "IKE "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container snmp { + description + "SNMP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container listen { + description + "Listen "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Config peer "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container listen { + description + "Listen "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container eigrp { + description + "EIGRP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container rip { + description + "RIP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container pcep { + description + "PCEP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container gre { + description + "GRE "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container vrrp { + description + "VRRP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container hsrp { + description + "HSRP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container dns { + description + "DNS "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container radius { + description + "RADIUS "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container tacacs { + description + "TACACS "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container amt { + description + "AMT "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container onepk { + description + "ONEPK "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container tpa { + description + "Third Party Applications"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container platform { + description + "lpts max entries for platform"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + } + + augment "/a1:lpts/a1:pifib/a1:hardware" { + description + "This augment extends lpts pifib hardware nodes + configuration"; + container dynamic-flows { + presence "Indicates a dynamic-flows node is configured."; + description + "ingress flows configuration command"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container multipath { + description + "Multipath "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container blb { + description + "BLB "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container singlepath { + description + "Singlepath "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container igmp { + description + "IGMP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container application { + description + "Specific application packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container control { + description + "Control packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + } + container ldp { + description + "LDP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container udp { + description + "UDP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container all-routers { + description + "All Routers"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container udp { + description + "UDP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container known { + description + "RSVP Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container udp { + description + "UDP"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container ike { + description + "IKE "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container snmp { + description + "SNMP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container listen { + description + "Listen "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Config peer "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container listen { + description + "Listen "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container configured { + description + "Configured "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container eigrp { + description + "EIGRP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container rip { + description + "RIP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container pcep { + description + "PCEP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container gre { + description + "GRE "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container vrrp { + description + "VRRP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container hsrp { + description + "HSRP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container dns { + description + "DNS "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container radius { + description + "RADIUS "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container tacacs { + description + "TACACS "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container known { + description + "Known "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container amt { + description + "AMT "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container onepk { + description + "ONEPK "; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container tpa { + description + "Third Party Applications"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + container platform { + description + "lpts max entries for platform"; + leaf max { + type uint32 { + range "0..4294967295" { + description + "TCAM Entries NUM"; + } + } + description + "Max number of TCAM entries"; + } + } + } + } + augment "/location:locations/location:location/a1:lpts/a1:pifib/a1:hardware" { + description + "This augment extends lpts pifib hardware police active nodes + configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location/a1:lpts/a1:pifib/a1:hardware" { + description + "This augment extends lpts pifib hardware police preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg.yang new file mode 100644 index 000000000..6cb0c60fd --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg.yang @@ -0,0 +1,155 @@ +module Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-pifib-police-acl-cfg"; + prefix um-lpts-pifib-police-acl-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-lpts-pifib-cfg { + prefix a1; + } + 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 lpts-pifib-police-acl package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-09-11 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LPTS-POLICE { + description + "Grouping for lpts-police"; + container acls { + description + "pre-ifib acl name"; + list acl { + must "ipv4/vrf or ipv6/vrf"; + key "acl-name"; + description + "pre-ifib acl name"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "ACL name"; + } + } + description + "pre-ifib acl name"; + } + container ipv4 { + description + "IP Version 4"; + list vrf { + key "vrf-name"; + description + "Specify the Vrf Id"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + } + description + "Name of VRF"; + } + leaf rate { + type uint32 { + range "0..100000" { + description + "Rate value"; + } + } + mandatory true; + description + "pre-ifib policer rate config commands"; + } + } + } + container ipv6 { + description + "IP Version 6"; + list vrf { + key "vrf-name"; + description + "Specify the Vrf Id"; + leaf vrf-name { + type union { + type string { + pattern "default" { + description + "Default VRF"; + } + } + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of VRF"; + } + } + } + description + "Name of VRF"; + } + leaf rate { + type uint32 { + range "0..100000" { + description + "Rate value"; + } + } + mandatory true; + description + "pre-ifib policer rate config commands"; + } + } + } + } + } + } + + augment "/a1:lpts/a1:pifib/a1:hardware/a1:police" { + description + "This augment extends lpts pifib hardware police nodes + configuration"; + uses LPTS-POLICE; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-np-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-np-cfg.yang new file mode 100644 index 000000000..c3fb8b60b --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-pifib-police-np-cfg.yang @@ -0,0 +1,13744 @@ +module Cisco-IOS-XR-um-lpts-pifib-police-np-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-pifib-police-np-cfg"; + prefix um-lpts-pifib-police-np-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + import Cisco-IOS-XR-um-lpts-pifib-cfg { + prefix a1; + } + 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 lpts-pifib-police-np package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-07-05 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature pifib_xipc_throt_policer_config_check { + description + "pifib xipc throt policer config check"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container np { + description + "NP name"; + container np0 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np1 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np2 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np3 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np4 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np5 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np6 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np7 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np8 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container np9 { + description + "Np number"; + container flow { + description + "lpts flow type"; + container fragment { + description + "Fragmented IP packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ospf { + description + "OSPF "; + container unicast { + description + "Unicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container isis { + description + "ISIS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "BFD "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container singlepath { + description + "Singlepath "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container bgp { + description + "BGP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "PIM "; + container unicast { + description + "Unicast "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container multicast { + description + "Multicast"; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "IGMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container icmp { + description + "ICMP "; + container local { + description + "Local interest packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container application { + description + "Specific application packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container control { + description + "Control packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container generic { + description + "Generic application packets "; + container echo-reply { + description + "Echo-reply packets "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + container all-routers { + description + "All Routers"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lmp { + description + "LMP "; + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsvp { + description + "RSVP "; + container default { + description + "RSVP Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "RSVP Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container udp { + description + "UDP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ike { + description + "IKE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipsec { + description + "IPSEC "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container msdp { + description + "MSDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container snmp { + description + "SNMP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssh { + description + "SSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container http { + description + "HTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container shttp { + description + "SHTTP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container telnet { + description + "TELNET "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container css { + description + "CSS "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container rsh { + description + "RSH "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container udp { + description + "UDP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Config peer "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container tcp { + description + "TCP "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container configured { + description + "Configured "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container multicast { + description + "Multicast "; + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container raw { + description + "Raw "; + container listen { + description + "Listen "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container ip-sla { + description + "IP-SLA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container eigrp { + description + "EIGRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rip { + description + "RIP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container l2tpv3 { + description + "L2TPv3 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pcep { + description + "PCEP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container gre { + description + "GRE "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container vrrp { + description + "VRRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container hsrp { + description + "HSRP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS "; + container oam { + description + "Oam "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container l2tpv2 { + description + "L2TPv2 "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container dns { + description + "DNS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius { + description + "RADIUS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tacacs { + description + "TACACS "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ntp { + description + "NTP "; + container default { + description + "Default "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container known { + description + "Known "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container mipv6 { + description + "MIPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container amt { + description + "AMT "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container sdac { + description + "SDAC-TCP "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container radius-coa { + description + "RADIUS COA "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container rel-udp { + description + "Syslog/netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv4 { + description + "DHCPv4 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container dhcpv6 { + description + "DHCPv6 "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container onepk { + description + "ONEPK "; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container tpa { + description + "Third Party Applications"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ietf-bob { + description + "IETF BOB Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container xipc { + if-feature "pifib_xipc_throt_policer_config_check"; + description + "XIPC rate limit"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container pm-twamp { + description + "PM TWAMP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + } + } + + augment "/location:locations/location:location/a1:lpts/a1:pifib/a1:hardware/a1:police" { + description + "This augment extends lpts pifib hardware police active nodes + configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location/a1:lpts/a1:pifib/a1:hardware/a1:police" { + description + "This augment extends lpts pifib hardware police preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-profiling-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-profiling-cfg.yang new file mode 100644 index 000000000..aa63ec968 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-profiling-cfg.yang @@ -0,0 +1,50 @@ +module Cisco-IOS-XR-um-lpts-profiling-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-profiling-cfg"; + prefix um-lpts-profiling-cfg; + + 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 lpts-profiling package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container lpts { + description + "lpts configuration commands"; + container profiling { + description + "profiling configuration commands"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable lpts profiling"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-cfg.yang new file mode 100644 index 000000000..a46e1a01a --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-cfg.yang @@ -0,0 +1,1016 @@ +module Cisco-IOS-XR-um-lpts-punt-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-punt-cfg"; + prefix um-lpts-punt-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 lpts-punt package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-10-04 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature pifib_punt_policer_config_check { + description + "pifib punt policer config check"; + } + + feature pifib_local_punt_policer_config_check { + description + "pifib local punt policer config check"; + } + + feature pifib_punt_policer_bcast_config_check { + description + "pifib punt policer bcast config check"; + } + + feature pifib_domains_config_check { + description + "pifib domains config check"; + } + + feature pifib_policer_node_check { + description + "pifib policer node check"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container lpts { + description + "lpts configuration commands"; + container punt { + description + "punt configuration commands"; + container police { + presence "Indicates a protocol node is configured."; + description + "ingress policers configuration command"; + container protocol { + description + "Protocol packets"; + container arp { + description + "ARP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cdp { + description + "CDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lacp { + description + "LACP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lldp { + description + "LLDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssfp { + description + "Smart SFP Mgmt Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipv6-nd-proxy { + description + "IPv6-ND-proxy Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cfm { + description + "Connectivity Fault Management Protocol packets"; + container cc { + description + "Continuity Check packets"; + container rsp { + description + "CC packets for RSP"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + } + container rsvp { + description + "Resource Reservation Protocol packets"; + container options { + description + "Rsvp options packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container pim { + description + "Pim Protocol packets"; + container options { + description + "PIM options packets"; + container punt { + description + "PIM SM Snoop/Trap packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + } + container igmp { + description + "igmp Protocol packets"; + container options { + description + "IGMP options packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container dhcp { + description + "Dynamic Host Configuration Protocol"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container ipv4 { + description + "IPv4 packets"; + container options { + description + "IPv4 packets with options"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container bfd { + description + "Bidirectional Forwarding Detection packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS punt packets"; + container fib { + description + "MPLS fib punt packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container ipv6 { + description + "IPv6 packets"; + container multicast { + description + "IPv6 multicast punt packets"; + container forward { + description + "IPv6 multicast punt and forward packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container hop-by-hop { + description + "IPv6 EXT header hop-by-hop packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container ptp { + description + "PTP (1588) Protocol packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container domains { + description + "LPTS Domain"; + list domain { + key "domain-name"; + description + "LPTS Domain"; + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Domain name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "LPTS Domain"; + } + container protocol { + description + "Protocol packets"; + container arp { + description + "ARP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cdp { + description + "CDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lacp { + description + "LACP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lldp { + description + "LLDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssfp { + description + "Smart SFP Mgmt Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipv6-nd-proxy { + description + "IPv6-ND-proxy Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + } + container exception { + description + "Exception packets"; + container ipv4 { + description + "IPV4 exception packets"; + container ttl-error { + description + "IPV4 TTL Error packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container fragment { + description + "Fragmentation needed packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container tunnel-term-fragment { + description + "TunnelTermination And Fragmented"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container fib-drop { + description + "pkt drop due no fib match"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container acl-log { + description + "acl log packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container recycle { + description + "For recycle packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container netflow { + description + "For netflow packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container mpls { + description + "MPLS exception packets"; + container icmp-gen { + description + "MPLS ICMP generation packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container ttl-error { + description + "MPLS TTL Error packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container adjacency { + description + "Glean Adjacency resolution packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container ipv6 { + description + "IPv6 packets"; + container ttl-error { + description + "IPV6 TTL error packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + container fragment { + description + "IPV6 Too Big packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + container urpf { + description + "urpf exception packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second"; + } + } + description + "Rate in PPS"; + } + } + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } + container lpts { + if-feature "pifib_punt_policer_config_check"; + if-feature "pifib_local_punt_policer_config_check"; + description + "lpts configuration commands"; + container punt { + description + "punt configuration commands"; + container police { + presence "Indicates a police node is configured."; + description + "ingress policers configuration command"; + container mcast { + description + "Multicast Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container bcast { + if-feature "pifib_punt_policer_bcast_config_check"; + description + "Broadcast Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container protocol { + description + "Protocol packets"; + container arp { + description + "ARP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cdp { + description + "CDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lacp { + description + "LACP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lldp { + description + "LLDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssfp { + description + "Smart SFP Mgmt Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipv6-nd-proxy { + description + "IPv6-ND-proxy Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + container domains { + description + "LPTS Domain"; + list domain { + key "domain-name"; + description + "LPTS Domain"; + leaf domain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Domain name"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "LPTS Domain"; + } + container mcast { + description + "Multicast Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container bcast { + if-feature "pifib_punt_policer_bcast_config_check"; + description + "Broadcast Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container protocol { + description + "Protocol packets"; + container arp { + description + "ARP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container cdp { + description + "CDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lacp { + description + "LACP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container lldp { + description + "LLDP Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ssfp { + description + "Smart SFP Mgmt Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + container ipv6-nd-proxy { + description + "IPv6-ND-proxy Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + description + "Rate in PPS"; + } + } + } + } + } + container interfaces { + description + "Per interface level policer configuration"; + list interface { + key "interface-name"; + description + "Per interface level policer configuration"; + leaf interface-name { + type xr:Interface-name; + description + "Per interface level policer configuration"; + } + container mcast { + description + "Multicast Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + must "not(../disabled)"; + description + "Rate in PPS"; + } + container disabled { + must "not(../rate)"; + presence "Indicates a disabled node is configured."; + description + "disable punt policer"; + } + } + container bcast { + if-feature "pifib_punt_policer_bcast_config_check"; + description + "Broadcast Packets"; + leaf rate { + type uint32 { + range "0..4294967295" { + description + "Packets Per Second (actual Min and Max range depends on platform)"; + } + } + must "not(../disabled)"; + description + "Rate in PPS"; + } + container disabled { + must "not(../rate)"; + presence "Indicates a disabled node is configured."; + description + "disable punt policer"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg.yang new file mode 100644 index 000000000..a79b03143 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg.yang @@ -0,0 +1,393 @@ +module Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-lpts-punt-flow-trap-cfg"; + prefix um-lpts-punt-flow-trap-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 lpts-punt-flow-trap package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-08-31 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container lpts { + description + "lpts configuration commands"; + container punt { + description + "punt configuration commands"; + container excessive-flow-trap { + description + "excessive punt flow trap configuration commands"; + container subscriber-interfaces { + presence "Indicates a subscriber-interfaces node is configured."; + description + "Enable the trap on subscriber interfaces"; + } + container non-subscriber-interfaces { + presence "Indicates a non-subscriber-interfaces node is configured."; + description + "Enable the trap on non-subscriber interfaces"; + container mac { + presence "Indicates a mac node is configured."; + description + "Enable trap based on source mac on non-subscriber interface"; + } + } + container penalty-rate { + description + "Configure penalty policing rate"; + leaf default { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure default penalty policing rate for all protocols"; + } + leaf arp { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for arp"; + } + leaf icmp { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for icmp"; + } + leaf dhcp { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for dhcp"; + } + leaf pppoe { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for pppoe"; + } + leaf ppp { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for ppp"; + } + leaf igmp { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for igmp"; + } + leaf ip { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for ipv4/v6"; + } + leaf l2tp { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for l2tp"; + } + leaf unclassified { + type uint32 { + range "2..100" { + description + "Penalty policer rate in packets-per-second"; + } + } + description + "Configure penalty policing rate for unclassified"; + } + } + container penalty-timeout { + description + "Configure penalty timeout value"; + leaf default { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure default penalty timeout for all protocols"; + } + leaf arp { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for arp"; + } + leaf icmp { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for icmp"; + } + leaf dhcp { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for dhcp"; + } + leaf pppoe { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for pppoe"; + } + leaf ppp { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for ppp"; + } + leaf igmp { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for igmp"; + } + leaf ip { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for ipv4/v6"; + } + leaf l2tp { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for l2tp"; + } + leaf unclassifed { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for unclassified"; + } + leaf ospf { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for ospf"; + } + leaf bgp { + type uint32 { + range "0..1000" { + description + "Timeout value in minutes"; + } + } + description + "Configure penalty timeout for bgp"; + } + } + container exclude { + description + "Exclude an item from all traps"; + container interfaces { + description + "Exclude an interface from all traps"; + list interface { + key "interface-name"; + description + "Exclude an interface from all traps"; + leaf interface-name { + type xr:Interface-name; + description + "Exclude an interface from all traps"; + } + } + } + } + leaf trap-size { + type uint32 { + range "1|2|4|8|16|32|64|128" { + description + "Should be power of 2. Any one of 1,2,4,8,16,32,64,128"; + } + } + description + "Flowtrap size"; + } + leaf report-threshold { + type uint32 { + range "1..65535" { + description + "Threshold to cross for a flow to be considered as bad actor flow"; + } + } + description + "Bad actor report threshold"; + } + leaf eviction-threshold { + type uint32 { + range "1..65535" { + description + "Eviction threshold should be <= report-threshold(Default value of report-threshold = 5)"; + } + } + description + "Threshold to evict a flow from trap"; + } + leaf eviction-search-limit { + type uint32 { + range "1..128" { + description + "Eviction search limit should be less than or equal to trap-size"; + } + } + description + "Search limit to evict a flow entry"; + } + leaf max-flow-gap { + type uint32 { + range "1..60000" { + description + "Maximum flow gap in milliseconds"; + } + } + description + "Max inter-packet-gap for BA flow"; + } + leaf sample-prob { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "floating point value between 0 to 1"; + } + } + description + "Probability of packets to be sampled"; + } + leaf dampening { + type uint32 { + range "5000..60000" { + description + "Dampening period for a bad actor flow in milliseconds"; + } + } + description + "Dampening bad actor notifications"; + } + container interface-based-flow { + presence "Indicates a interface-based-flow node is configured."; + description + "Identify flow based on interface and flowtype"; + } + container routing-protocols-enable { + presence "Indicates a routing-protocols-enable node is configured."; + description + "Allow routing protocol packets ospf bgp to pass through EPFT"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ltrace-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ltrace-cfg.yang new file mode 100644 index 000000000..266b496a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ltrace-cfg.yang @@ -0,0 +1,168 @@ +module Cisco-IOS-XR-um-ltrace-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ltrace-cfg"; + prefix um-ltrace-cfg; + + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 ltrace package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2020-09-15 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container ltrace { + description + "ltrace configuration"; + container mode { + description + "Select a memory allocation mode"; + container static { + must "not(../dynamic)"; + presence "Indicates a static node is configured."; + description + "Set ltrace memory allocation to static mode"; + leaf scale-factor { + type enumeration { + enum "0" { + value 0; + description + "Use platform-defined scale-factor"; + } + enum "1" { + value 1; + description + "Do not scale down ltrace memory request"; + } + enum "2" { + value 2; + description + "Scale down ltrace memory request by 2"; + } + enum "4" { + value 4; + description + "Scale down ltrace memory request by 4"; + } + enum "8" { + value 8; + description + "Scale down ltrace memory request by 8"; + } + enum "16" { + value 16; + description + "Scale down ltrace memory request by 16"; + } + } + description + "Configure a scaling down factor for memory allocation"; + } + } + container dynamic { + must "not(../static)"; + presence "Indicates a dynamic node is configured."; + description + "Set ltrace memory allocation to dynamic mode"; + leaf scale-factor { + type enumeration { + enum "0" { + value 0; + description + "Use platform-defined scale-factor"; + } + enum "1" { + value 1; + description + "Do not scale down ltrace memory request"; + } + enum "2" { + value 2; + description + "Scale down ltrace memory request by 2"; + } + enum "4" { + value 4; + description + "Scale down ltrace memory request by 4"; + } + enum "8" { + value 8; + description + "Scale down ltrace memory request by 8"; + } + enum "16" { + value 16; + description + "Scale down ltrace memory request by 16"; + } + } + description + "Configure a scaling down factor for memory allocation"; + } + } + } + container persist { + description + "configure persistent storage information"; + leaf dump-enable { + type string { + pattern "pre|act" { + description + "dump-enable value pre only in case of preconfigured locations + dump-enable value act only in case of active locations"; + } + } + description + "enable/disable dumpimng to persistent storage"; + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mac-persist-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mac-persist-cfg.yang new file mode 100644 index 000000000..9872ef32e --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mac-persist-cfg.yang @@ -0,0 +1,50 @@ +module Cisco-IOS-XR-um-mac-persist-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mac-persist-cfg"; + prefix um-mac-persist-cfg; + + 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 mac-persist package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-09-22 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container bundle { + description + "Bundle global command"; + container mac-address { + description + "MAC address for LACP bundles"; + container persist { + presence "Indicates a persist node is configured."; + description + "Persist mac-address for the bundles"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-macsec-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-macsec-cfg.yang new file mode 100644 index 000000000..ffac6c8c0 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-macsec-cfg.yang @@ -0,0 +1,456 @@ +module Cisco-IOS-XR-um-macsec-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-macsec-cfg"; + prefix um-macsec-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 macsec package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2023 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-01-10 { + description + "aligning sak-rekey-interval in um model with CLI + 2022-07-11 + Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "2.0.0"; + } + revision 2021-01-05 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container macsec { + description + "Enable MACSec for the interface"; + container psk-keychain { + description + "Configure MACsec Key Agreement(MKA) PSK Keychain"; + leaf keychain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of keychain to be used to get keys, maximum length 32"; + } + } + description + "Name of keychain to be used to get keys, maximum length 32"; + } + leaf fallback-psk-keychain { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of keychain to be used to get fallback PSK keys, maximum length 32"; + } + } + description + "Configure MKA fallback PSK Keychain"; + } + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..16" { + description + "MACsec Policy name, maximum length 16"; + } + } + description + "Enter the policy name, maximum length 16"; + } + } + } + container eap { + presence "Indicates a eap node is configured."; + description + "Configure MACsec Key Agreement(MKA) to use EAP"; + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..16" { + description + "Policy name"; + } + } + description + "Enter the policy name"; + } + } + container macsec-service { + description + "Enable MACSec as a service"; + leaf decrypt-port { + type xr:Interface-name { + pattern "GigabitEthernet*"; + } + must "../psk-keychain"; + description + "Enter the sub-interface name for MacSec decryption"; + } + leaf psk-keychain { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of key-chain to be used to get keys"; + } + } + must "../decrypt-port"; + description + "Configure MACsec Key Agreement(MKA) PSK Keychain"; + } + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..16" { + description + "Policy name"; + } + } + must "../decrypt-port"; + description + "Enter the policy name"; + } + } + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container macsec { + description + "Enable MACSec for the interface"; + container psk-keychain { + description + "Configure MACsec Key Agreement(MKA) PSK Keychain"; + leaf keychain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of keychain to be used to get keys, maximum length 32"; + } + } + description + "Name of keychain to be used to get keys, maximum length 32"; + } + leaf fallback-psk-keychain { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of keychain to be used to get fallback PSK keys, maximum length 32"; + } + } + description + "Configure MKA fallback PSK Keychain"; + } + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..16" { + description + "MACsec Policy name, maximum length 16"; + } + } + description + "Enter the policy name, maximum length 16"; + } + } + } + container eap { + presence "Indicates a eap node is configured."; + description + "Configure MACsec Key Agreement(MKA) to use EAP"; + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..16" { + description + "Policy name"; + } + } + description + "Enter the policy name"; + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + container macsec-policy { + description + "MACSec Policy configuration"; + container policy-names { + description + "Enter the policy name of max-length 16"; + list policy-name { + key "policy-name"; + description + "Enter the policy name of max-length 16"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..16" { + description + "Enter the policy name of max-length 16"; + } + } + description + "Enter the policy name of max-length 16"; + } + leaf key-server-priority { + type uint32 { + range "0..255" { + description + "Enter the key server priority for the node"; + } + } + description + "Key Server Priority for the node"; + } + leaf cipher-suite { + type enumeration { + enum "GCM-AES-128" { + value 1; + description + "GCM AES 128 bit encryption"; + } + enum "GCM-AES-256" { + value 2; + description + "GCM AES 256 bit encryption"; + } + enum "GCM-AES-XPN-128" { + value 3; + description + "GCM AES XPN 128 bit encryption"; + } + enum "GCM-AES-XPN-256" { + value 4; + description + "GCM AES XPN 256 bit encryption"; + } + } + description + "Cipher-Suite used for encryption"; + } + leaf window-size { + type uint32 { + range "0..1024" { + description + "Enter the window size"; + } + } + description + "window-size used for encryption"; + } + leaf conf-offset { + type enumeration { + enum "CONF-OFFSET-0" { + value 0; + description + "Offset 0"; + } + enum "CONF-OFFSET-30" { + value 30; + description + "Offset 30"; + } + enum "CONF-OFFSET-50" { + value 50; + description + "Offset 50"; + } + } + description + "conf-offset used for encryption"; + } + leaf security-policy { + type enumeration { + enum "should-secure" { + value 0; + description + "Enable should secure"; + } + enum "must-secure" { + value 1; + description + "Enable must secure"; + } + } + description + "Must Secure/Should Secure for Data encryption"; + } + leaf vlan-tags-in-clear { + type uint32 { + range "1..2" { + description + "Enter the value"; + } + } + description + "Specify the number of vlan-tags in clear (1 or 2)"; + } + leaf policy-exception { + type enumeration { + enum "lacp-in-clear" { + value 1; + description + "DEPRECATED-Allow LACP(Link aggregation control plane protocol) Packets in clear Text, recommended to use 'allow lacp-in-clear'"; + } + } + description + "macsec policy exception to allow packets in clear text"; + } + container sak-rekey-interval { + description + "Interval after which key-server generates new SAK for a Secured Session"; + leaf minutes { + type uint32 { + range "1..43200" { + description + "DEPRECATED-Interval(in minutes)<1-43200>, Default: OFF, recommended to use 'seconds' option"; + } + } + description + "Interval after which key-server generates new SAK for a Secured Session"; + } + leaf seconds { + type uint32 { + range "60..2592000" { + description + "Enter SAK rekey interval(in seconds) "; + } + } + description + "Interval(in seconds)<60-2592000>, Default: OFF"; + } + } + container include-icv-indicator { + presence "Indicates a include-icv-indicator node is configured."; + description + "Include ICV Indicator paramset in MKPDU"; + } + container delay-protection { + presence "Indicates a delay-protection node is configured."; + description + "enable data delay protection"; + } + container use-eapol-pae-in-icv { + presence "Indicates a use-eapol-pae-in-icv node is configured."; + description + "enable use eapol pae address in icv"; + } + container suspend-on-request { + description + "disable suspend-on-request from peers in issu"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable suspend-on-request from peers in issu"; + } + } + container suspend-for { + description + "disable MKA suspension when in issu"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable MKA suspension when in issu"; + } + } + container enable-legacy-fallback { + presence "Indicates a enable-legacy-fallback node is configured."; + description + "enable keepalive fallback ca"; + } + container enable-legacy-sak-write { + presence "Indicates a enable-legacy-sak-write node is configured."; + description + "To interop with legacy ncs5500 coherent systems"; + } + container allow { + description + "macsec policy exceptions to allow in clear-text"; + container lacp-in-clear { + presence "Indicates a lacp-in-clear node is configured."; + description + "Allow LACP((Link aggregation control plane protocol) Packets in clear Text"; + } + container pause-frame-in-clear { + presence "Indicates a pause-frame-in-clear node is configured."; + description + "Allow pause-frame packets in clear text"; + } + } + container ppk { + presence "Indicates a ppk node is configured."; + description + "To use PPK supported MACsec session"; + leaf sks-profile { + type xr:Cisco-ios-xr-string { + length "1..253" { + description + "Name of sks profile name to be used"; + } + } + description + "use sks profile for PPK generation"; + } + } + } + } + } + container macsec { + description + "MACSec global configuration"; + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Disable macsec on all data ports, has no impact on macsec configs"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-cbqosmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-cbqosmib-cfg.yang new file mode 100644 index 000000000..254f112ce --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-cbqosmib-cfg.yang @@ -0,0 +1,102 @@ +module Cisco-IOS-XR-um-mibs-cbqosmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mibs-cbqosmib-cfg"; + prefix um-mibs-cbqosmib-cfg; + + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 mibs-cbqosmib package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-12-08 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server-mibs" { + description + "This augment extends snmp-server-mibs nodes + configuration"; + container cbqosmib { + description + "Configure CBQoSMIB parameters"; + container cache { + presence "Indicates a cache node is configured."; + description + "Enable CBQoSMIB stats data caching"; + container refresh { + description + "Cache refresh interval"; + leaf time { + type uint32 { + range "5..60" { + description + "Refresh time in secs"; + } + } + description + "Cache refresh time in seconds "; + } + } + container service-policy { + description + "Maximum number of service policies to cache the statistics for"; + leaf count { + type uint32 { + range "1..5000" { + description + "Number of service-policys"; + } + } + description + "Number of service-policy stats"; + } + } + } + container persist { + presence "Indicates a persist node is configured."; + description + "Persist CBQoSMIB config, service-policy and object indices"; + } + container member-stats { + presence "Indicates a member-stats node is configured."; + description + "Enable bundle member interface statistics retrieval"; + } + container test-collisions { + presence "Indicates a test-collisions node is configured."; + description + "Enable test code for testing persistency file creation on collision"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-eventmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-eventmib-cfg.yang new file mode 100644 index 000000000..118239ef3 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-eventmib-cfg.yang @@ -0,0 +1,145 @@ +module Cisco-IOS-XR-um-mibs-eventmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mibs-eventmib-cfg"; + prefix um-mibs-eventmib-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 mibs-eventmib package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2021-06-29 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server-mibs" { + description + "This augment extends snmp-server-mibs nodes + configuration"; + container eventmib { + description + "Event MIB configuration"; + container packet-losses { + description + "Packet Loss threshold monitoring"; + list packet-loss { + key "packet-loss-name"; + description + "Packet Loss threshold monitoring"; + leaf packet-loss-name { + type xr:Interface-name; + description + "Packet Loss threshold monitoring"; + } + leaf rising { + type uint32 { + range "0..2147483647" { + description + "Trigger Trap when Delta above this value"; + } + } + description + "Upper threshold value"; + } + leaf falling { + type uint32 { + range "0..2147483647" { + description + "Trigger Trap when Delta below this value"; + } + } + description + "Lower threshold value"; + } + leaf interval { + type uint32 { + range "5..1440" { + description + "Interval in multiples of 5 mins"; + } + } + description + "Packet loss sampling interval in multiples of 5 mins"; + } + } + } + container congestion-controls { + description + "Congestion Control threshold monitoring"; + list congestion-control { + key "congestion-control-name"; + description + "Congestion Control threshold monitoring"; + leaf congestion-control-name { + type xr:Interface-name; + description + "Congestion Control threshold monitoring"; + } + leaf rising { + type uint32 { + range "0..100" { + description + "Threshold as configured percentage bandwidth of interface "; + } + } + description + "Upper threshold value"; + } + leaf falling { + type uint32 { + range "0..100" { + description + "Threshold as configured percentage bandwidth of interface "; + } + } + description + "Lower threshold value"; + } + leaf interval { + type uint32 { + range "5..1440" { + description + "Interval in multiples of 5 mins"; + } + } + description + "Congestion control sampling interval in multiples of 5 mins"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-fabric-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-fabric-cfg.yang new file mode 100644 index 000000000..37edba3b2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-fabric-cfg.yang @@ -0,0 +1,73 @@ +module Cisco-IOS-XR-um-mibs-fabric-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mibs-fabric-cfg"; + prefix um-mibs-fabric-cfg; + + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 mibs-fabric package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-06-26 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container fabric { + description + "Enable SNMP fabric traps"; + container plane { + presence "Indicates a plane node is configured."; + description + "Enable SNMP fabric plane state change traps"; + } + container bundle { + description + "Enable SNMP fabric bundle traps"; + container state { + presence "Indicates a state node is configured."; + description + "Enable SNMP fabric bundle state change traps"; + } + container link { + presence "Indicates a link node is configured."; + description + "Enable SNMP fabric bundle downed link traps"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-ifmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-ifmib-cfg.yang new file mode 100644 index 000000000..ab748eff4 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-ifmib-cfg.yang @@ -0,0 +1,215 @@ +module Cisco-IOS-XR-um-mibs-ifmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mibs-ifmib-cfg"; + prefix um-mibs-ifmib-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 mibs-ifmib package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2021-02-25 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server-mibs" { + description + "This augment extends snmp-server-mibs nodes + configuration"; + container ifindex { + description + "Enable ifindex persistence"; + container persist { + presence "Indicates a persist node is configured."; + description + "Persist interface indices"; + } + } + container interfaces { + description + "Enter the SNMP interface configuration commands"; + list interface { + key "interface-name"; + description + "Interface to configure"; + leaf interface-name { + type xr:Interface-name; + description + "Interface to configure"; + } + container notification { + description + "Allow an SNMP notification type"; + container linkupdown { + description + "SNMP linkUp and linkDown notifications"; + container enable { + when "../../../interface-name[contains(text(),'.')] or ../../../interface-name[starts-with(text(),'Serial')] or ../../../interface-name[starts-with(text(),'ATM')] or ../../../interface-name[starts-with(text(),'IMA')]" { + tailf:dependency "../../../interface-name"; + } + presence "Indicates a enable node is configured."; + description + "Disable linkUp and linkDown notification"; + } + container disable { + when "../../../interface-name[not(contains(text(),'.'))] and ../../../interface-name[not(starts-with(text(),'Serial'))] and ../../../interface-name[not(starts-with(text(),'ATM'))] and ../../../interface-name[not(starts-with(text(),'IMA'))]" { + tailf:dependency "../../../interface-name"; + } + presence "Indicates a disable node is configured."; + description + "Disable linkUp and linkDown notification"; + } + } + } + container index { + description + "Configure ifIndex attributes"; + container persistence { + presence "Indicates a persistence node is configured."; + description + "Persistency across system reloads"; + } + } + } + container subsets { + description + "Add configuration for an interface subset"; + list subset { + must "notification/linkupdown"; + key "subset-number"; + description + "Add configuration for an interface subset"; + leaf subset-number { + type uint32 { + range "1..255" { + description + "The interface subset number"; + } + } + description + "Add configuration for an interface subset"; + } + leaf regular-expression { + type xr:Cisco-ios-xr-string { + length "1..130" { + description + "Regular expression to match ifName"; + } + } + mandatory true; + description + "Interfaces matching regular expression"; + } + container notification { + description + "Allow an SNMP notification type"; + container linkupdown { + presence "Indicates a linkupdown node is configured."; + description + "SNMP linkUp and linkDown notifications"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable linkUp and linkDown notification"; + } + } + } + } + } + } + container trap { + description + "MIB trap configurations"; + container link { + description + "Link up/down trap configuration"; + container ietf { + presence "Indicates a ietf node is configured."; + description + "Set the varbind of linkupdown trap to the RFC specified varbinds (default cisco)"; + } + } + } + container ifmib { + description + "IF-MIB configuration commands"; + container ifalias { + description + "Modify parameters for ifAlias object"; + container long { + presence "Indicates a long node is configured."; + description + "Enable support for ifAlias values longer than 64 characters"; + } + } + container stats { + description + "Modify IF-MIB statistics parameters"; + container cache { + presence "Indicates a cache node is configured."; + description + "Get cached interface statistics"; + } + } + container ipsubscriber { + presence "Indicates a ipsubscriber node is configured."; + description + "Enable ipsubscriber interfaces in IFMIB"; + } + container internal { + description + "IFMIB internal lookahead cache"; + container cache { + description + "Cached data"; + leaf max-duration { + type uint32 { + range "0..60" { + description + "Cache timeout"; + } + } + description + "Change the max duration"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-rfmib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-rfmib-cfg.yang new file mode 100644 index 000000000..296a9bf71 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-rfmib-cfg.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-um-mibs-rfmib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mibs-rfmib-cfg"; + prefix um-mibs-rfmib-cfg; + + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 mibs-rfmib package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-03-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container rf { + presence "Indicates a rf node is configured."; + description + "Enable SNMP RF-MIB traps"; + } + } + augment "/a1:snmp-server-mibs" { + description + "This augment extends snmp-server-mibs nodes + configuration"; + container rfmib { + description + "Configure RFMIB parameters"; + container entphyindex { + presence "Indicates a entphyindex node is configured."; + description + "Enable Entity Physical Index as cRFStatusUnitId and cRFStatusPeerUnitId"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-sensormib-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-sensormib-cfg.yang new file mode 100644 index 000000000..527560170 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-sensormib-cfg.yang @@ -0,0 +1,69 @@ +module Cisco-IOS-XR-um-mibs-sensormib-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mibs-sensormib-cfg"; + prefix um-mibs-sensormib-cfg; + + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 mibs-sensormib package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-03-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container sensor { + presence "Indicates a sensor node is configured."; + description + "Enable SNMP entity sensor traps"; + } + } + augment "/a1:snmp-server-mibs" { + description + "This augment extends snmp-server-mibs nodes + configuration"; + container sensormib { + description + "sensormib related config"; + container cache { + presence "Indicates a cache node is configured."; + description + "Enables sensormib caching"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-subscriber-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-subscriber-cfg.yang new file mode 100644 index 000000000..cfad3fe19 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mibs-subscriber-cfg.yang @@ -0,0 +1,337 @@ +module Cisco-IOS-XR-um-mibs-subscriber-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mibs-subscriber-cfg"; + prefix um-mibs-subscriber-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 mibs-subscriber package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container subscriber { + description + "Subscriber notification commands"; + container session-agg { + description + "Session aggregation"; + container access-interface { + presence "Indicates a access-interface node is configured."; + description + "Subscriber notification at access interface level"; + } + container node { + presence "Indicates a node node is configured."; + description + "Subscriber notification at node level"; + } + } + } + } + augment "/a1:snmp-server-mibs" { + description + "This augment extends snmp-server-mibs nodes + configuration"; + container subscriber { + description + "Subscriber threshold commands"; + container threshold { + description + "Subscriber threshold commands"; + container rising { + description + "Rising threshold"; + container access-ifs { + description + "Access interface"; + list access-if { + key "access-if-name"; + description + "Access interface"; + leaf access-if-name { + type xr:Interface-name; + description + "Access interface"; + } + leaf session-count { + type uint32 { + range "1..4294967294" { + description + "Session count"; + } + } + mandatory true; + description + "Session count"; + } + } + } + container locations { + description + "Rising node level"; + list location { + key "location-name"; + description + "Rising node level"; + leaf location-name { + type xr:Node-id; + description + "Rising node level"; + } + leaf session-count { + type uint32 { + range "1..4294967294" { + description + "Session count"; + } + } + mandatory true; + description + "Session count"; + } + } + } + } + container falling { + description + "Falling threshold"; + container access-ifs { + description + "Access interface"; + list access-if { + key "access-if-name"; + description + "Access interface"; + leaf access-if-name { + type xr:Interface-name; + description + "Access interface"; + } + leaf session-count { + type uint32 { + range "1..4294967294" { + description + "Session count"; + } + } + mandatory true; + description + "Session count"; + } + } + } + container locations { + description + "Falling node level"; + list location { + key "location-name"; + description + "Falling node level"; + leaf location-name { + type xr:Node-id; + description + "Falling node level"; + } + leaf session-count { + type uint32 { + range "1..4294967294" { + description + "Session count"; + } + } + mandatory true; + description + "Session count"; + } + } + } + } + container delta-loss { + description + "Delta loss keyword"; + container percent { + description + "Delta loss percent"; + container access-ifs { + description + "Access interface"; + list access-if { + key "access-if-name"; + description + "Access interface"; + leaf access-if-name { + type xr:Interface-name; + description + "Access interface"; + } + leaf session-count { + type uint32 { + range "1..100" { + description + "Loss of percentage"; + } + } + mandatory true; + description + "Percentage"; + } + } + } + container locations { + description + "Node Level"; + list location { + key "location-name"; + description + "Node Level"; + leaf location-name { + type xr:Node-id; + description + "Node Level"; + } + leaf session-count { + type uint32 { + range "1..100" { + description + "Percentage"; + } + } + mandatory true; + description + "Percentage"; + } + } + } + } + container evaluation { + description + "Evaluation keyword"; + container access-ifs { + description + "Access interface"; + list access-if { + key "access-if-name"; + description + "Access interface"; + leaf access-if-name { + type xr:Interface-name; + description + "Access interface"; + } + leaf interval { + type uint32 { + range "30..3600" { + description + "Interval value in multiples of 10"; + } + } + mandatory true; + description + "interval"; + } + } + } + container locations { + description + "Node Level"; + list location { + key "location-name"; + description + "Node Level"; + leaf location-name { + type xr:Node-id; + description + "Node Level"; + } + leaf interval { + type uint32 { + range "30..3600" { + description + "interval value in multiples of 10"; + } + } + mandatory true; + description + "Interval"; + } + } + } + } + } + container access-if { + description + "Access interface for regular expression"; + container subsets { + description + "Subset command"; + list subset { + key "subset-id"; + description + "Subset command"; + leaf subset-id { + type uint32 { + range "1..255" { + description + "Subset number"; + } + } + description + "Subset command"; + } + leaf regular-expression { + type string { + length "1..800" { + description + "Regular expression to match interfae name"; + } + } + description + "Regular expression"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mirror-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mirror-cfg.yang new file mode 100644 index 000000000..5e11fa5a5 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mirror-cfg.yang @@ -0,0 +1,51 @@ +module Cisco-IOS-XR-um-mirror-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mirror-cfg"; + prefix um-mirror-cfg; + + 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 mirror package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-06-01 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container mirror { + description + "Configure settings for mirror directory"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable mirror directory. This config is no longer required since mirror_server is now always enabled."; + container checksum { + presence "Indicates a checksum node is configured."; + description + "rsync will use --checksum option for determining if file is in sync"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mld-snooping-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mld-snooping-cfg.yang new file mode 100644 index 000000000..40f1ecd69 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mld-snooping-cfg.yang @@ -0,0 +1,524 @@ +module Cisco-IOS-XR-um-mld-snooping-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mld-snooping-cfg"; + prefix um-mld-snooping-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 mld-snooping package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-08-02 { + description + "Added always/sync for topology-change and sync for process support"; + semver:module-version "1.0.0"; + } + revision 2022-06-03 { + description + "Added support for mrouter-forwarding-disable"; + } + revision 2022-02-02 { + description + "Initial release"; + } + + container mld { + description + "IPv6 Address Family"; + container snooping { + description + "Enter MLD snooping subcommands"; + container profiles { + description + "Enter MLD snooping profile name"; + list profile { + key "profile-name"; + description + "Enter MLD snooping profile name"; + leaf profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Profile name - maximum 32 characters"; + } + } + description + "Enter MLD snooping profile name"; + } + leaf system-ip-address-link-local { + type inet:ipv6-address-no-zone; + description + "Source address for generated MLD messages"; + } + leaf minimum-version { + type uint32 { + range "1..2" { + description + "Enter minimum-version"; + } + } + description + "Configure minimum MLD version (default 1)"; + } + container report-suppression { + description + "Minimize number of MLD reports sent to mrouters"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable report-suppression"; + } + } + container tcn { + description + "Configure behavior on topology change"; + container query { + description + "Require G-Query to expedite relearning"; + container solicit { + presence "Indicates a solicit node is configured."; + description + "Solicit a G-Query on topology change (default disabled)"; + } + } + container flood { + description + "Add all STP ports to all mroutes during topology change"; + container query { + description + "tcn flood query"; + leaf count { + type uint32 { + range "1..10" { + description + "Enter tcn flood query count"; + } + } + description + "Topology change complete after count G-Queries (default 2)"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TCN flooding"; + } + } + } + container router-alert-check { + description + "Check for IP RA Option in snooped MLD messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable router-alert-check"; + } + } + container ttl-check { + description + "Check TTL is 1 in snooped MLD messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable TTL checking"; + } + } + container internal-querier { + presence "Indicates a internal-querier node is configured."; + description + "Configure the MLD internal-querier"; + leaf max-response-time { + type uint32 { + range "1..25" { + description + "Enter max-response-time in seconds"; + } + } + description + "MLD G-Query MRT value (default 10)"; + } + leaf query-interval { + type uint32 { + range "1..18000" { + description + "Enter query-interval in seconds"; + } + } + description + "Time between periodic G-Queries (default 60)"; + } + leaf robustness-variable { + type uint32 { + range "1..7" { + description + "Enter robustness-variable"; + } + } + description + "MLD robustness-variable (default 1)"; + } + container tcn { + description + "Configure internal-querier behavior on topology change"; + container query { + description + "Configure internal-querier tcn query"; + leaf count { + type uint32 { + range "0..7" { + description + "Enter tcn query count"; + } + } + description + "Number of TCN G-Queries to send (default 2)"; + } + leaf interval { + type uint32 { + range "1..18000" { + description + "Enter query interval in seconds"; + } + } + description + "Time between TCN G-Queries (default 10)"; + } + leaf max-response-time { + type uint32 { + range "1..25" { + description + "Enter max-response-time in seconds"; + } + } + description + "IGMP G-Query MRT value (default Querier's MRT)"; + } + } + } + container timer { + description + "Other querier present timer"; + leaf expiry { + type uint32 { + range "60..300" { + description + "Enter timer expiry in seconds"; + } + } + description + "timer expiry (default QQI*QRV+MRT/2)"; + } + } + leaf version { + type uint32 { + range "1..2" { + description + "Enter internal-querier version"; + } + } + description + "MLD version (default 2)"; + } + } + container querier { + description + "Configure MLDv1 Querier information"; + leaf query-interval { + type uint32 { + range "1..18000" { + description + "Enter query-interval in seconds"; + } + } + description + "Time between periodic G-Queries (default 60)"; + } + leaf robustness-variable { + type uint32 { + range "1..7" { + description + "Enter robustness-variable"; + } + } + description + "Querier robustness-variable (default 2)"; + } + } + container last-member-query { + description + "Configure last member query behavior"; + leaf interval { + type uint32 { + range "100..5000" { + description + "Enter last member query interval in milliseconds"; + } + } + description + "Last member query interval (default 1000)"; + } + leaf count { + type uint32 { + range "1..7" { + description + "Enter last member query count"; + } + } + description + "Last member query count (default 2)"; + } + } + leaf unsolicited-report-interval { + type uint32 { + range "100..5000" { + description + "Enter unsolicited-report-interval in milliseconds"; + } + } + description + "Time between state-change reports (default 1000)"; + } + container immediate-leave { + presence "Indicates a immediate-leave node is configured."; + description + "Remove membership immediately on receipt of leave"; + } + container mrouter { + presence "Indicates a mrouter node is configured."; + description + "Configure a static mrouter on a port"; + } + container mrouter-forwarding-disable { + presence "Indicates a disable node is configured."; + description + "Configure a static mrouter on a port"; + } + container router-guard { + presence "Indicates a router-guard node is configured."; + description + "Prevent dynamic mrouter discovery on a port"; + } + container static { + description + "Configure static group membership on a port"; + container group { + description + "Configure a static group"; + list ipv6-address { + key "address"; + description + "Enter a valid ipv6 multicast address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter a valid ipv6 multicast address"; + } + } + container ip-src-addresses { + description + "Enter a valid ipv6 multicast address"; + list ipv6-address { + key "address"; + description + "Enter a valid ipv6 multicast address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter a valid ipv6 multicast address"; + } + container source { + description + "Configure source address for static source-group"; + list ipv6-address { + key "address"; + description + "Enter a valid unicast ipv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Enter a valid unicast ipv6 address"; + } + } + } + } + } + } + } + leaf access-group { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Enter access-list name"; + } + } + description + "Configure group membership filter"; + } + container group { + description + "Configure group membership limits"; + leaf limit { + type uint32 { + range "0..65535" { + description + "Enter group limit"; + } + } + description + "Limit the number of groups or source-groups allowed on a port"; + } + leaf threshold { + type uint32 { + range "0..65535" { + description + "Enter threshold value"; + } + } + must "../limit"; + description + "Specify group threshold value for the port"; + } + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Enter route-policy name"; + } + } + description + "Specify a route-policy to set the group weight"; + } + } + container startup { + description + "Configure startup behavior"; + container query { + description + "Configure startup query behavior"; + leaf count { + type uint32 { + range "0..7" { + description + "Enter startup query count"; + } + } + description + "Number of G-Queries to send (default 2)"; + } + leaf interval { + type uint32 { + range "1..18000" { + description + "Enter query interval in seconds"; + } + } + description + "Time between Startup G-Queries (default 10)"; + } + leaf max-response-time { + type uint32 { + range "1..25" { + description + "Enter max-response-time in seconds"; + } + } + description + "MLD G-Query MRT value (default Querier's MRT)"; + } + container port-up { + description + "Startup query behavior when port goes up"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable startup queries on port-up"; + } + } + container iccp-group { + description + "Startup query behavior for iccp-group"; + container port-active { + presence "Indicates a port-active node is configured."; + description + "Issue startup queries when iccp-group goes active"; + } + } + container topology-change { + presence "Indicates a topology-change node is configured."; + description + "Issue startup queries on topology_change"; + } + container topology-change-always { + presence "Indicates a topology-change always node is configured."; + description + "Send g-queries on topology-change even when not STP root"; + } + container topology-change-sync { + presence "Indicates a topology-change sync node is configured."; + description + "Remove unrefreshed membership state"; + } + container process { + description + "Issue startup queries on process event"; + container start { + presence "Indicates a start node is configured."; + description + "Issue startup queries on process start"; + } + container start-sync { + presence "Indicates a sync node is configured."; + description + "Remove unrefreshed membership state"; + } + } + } + } + container redundancy { + description + "Configure redundancy"; + container iccp-group { + description + "Configure redundancy iccp-group behavior"; + container report-standby-state { + description + "Report standby port membership"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable reporting"; + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-monitor-session-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-monitor-session-cfg.yang new file mode 100644 index 000000000..45a293626 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-monitor-session-cfg.yang @@ -0,0 +1,2414 @@ +module Cisco-IOS-XR-um-monitor-session-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-monitor-session-cfg"; + prefix um-monitor-session-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-if-l2transport-cfg { + prefix a2; + } + 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 monitor-session package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-17 { + description + "Added rate-limiting + 2022-10-03 + Added SPAN features for 781 and 791 + 2022-07-11 + Added missing description statement to nodes + 2021-12-17 + Added container mirror/first & leaf router-id, updated enum values for leaf interval"; + semver:module-version "2.0.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container monitor-sessions { + description + "Monitor-session configuration commands"; + list monitor-session { + must "ethernet or ipv4 or ipv6 or mpls-ipv4 or mpls-ipv6"; + key "session-name"; + description + "Monitor-session configuration commands"; + leaf session-name { + type string { + length "1..79" { + description + "Session Name"; + } + } + description + "Monitor-session configuration commands"; + } + container ethernet { + must "not(../ipv4 or ../ipv6 or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ethernet node is configured."; + description + "Replicate Ethernet traffic"; + } + container ipv4 { + must "not(../ethernet or ../ipv6 or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "Replicate IPv4 traffic"; + } + container ipv6 { + must "not(../ipv4 or ../ethernet or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ipv6 node is configured."; + description + "Replicate IPv6 traffic"; + } + container mpls-ipv4 { + must "not(../ipv4 or ../ipv6 or ../ethernet or ../mpls-ipv6)"; + presence "Indicates a mpls-ipv4 node is configured."; + description + "Replicate MPLS-IPv4 traffic"; + } + container mpls-ipv6 { + must "not(../ipv4 or ../ipv6 or ../mpls-ipv4 or ../ethernet)"; + presence "Indicates a mpls-ipv6 node is configured."; + description + "Replicate MPLS-IPv6 traffic"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container acl-ipv4 { + description + "Enable IPv4 ACL based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "IPV4 ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container acl-ipv6 { + description + "Enable IPv6 ACL based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "IPV6 ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container acl-mpls-ipv4 { + description + "Enable MPLS IPv4 ACL based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "MPLS IPv4 ACL name"; + } + } + description + "MPLS IPv4 ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container acl-mpls-ipv6 { + description + "Enable MPLS IPv6 ACL based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "MPLS IPv6 ACL name"; + } + } + description + "MPLS IPV6 ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + enum "2" { + value 7; + description + "Mirror 1 in every 2 packets"; + } + enum "4" { + value 8; + description + "Mirror 1 in every 4 packets"; + } + enum "8" { + value 9; + description + "Mirror 1 in every 8 packets"; + } + enum "16" { + value 10; + description + "Mirror 1 in every 16 packets"; + } + enum "32" { + value 11; + description + "Mirror 1 in every 32 packets"; + } + enum "64" { + value 12; + description + "Mirror 1 in every 64 packets"; + } + enum "128" { + value 13; + description + "Mirror 1 in every 128 packets"; + } + enum "256" { + value 14; + description + "Mirror 1 in every 256 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + } + container monitor-session-deprecated { + description + "Monitor-session deprecated configuration commands"; + container ethernet { + presence "Indicates a ethernet node is configured."; + description + "Replicate Ethernet traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + } + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Replicate IPv4 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "Replicate IPv6 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + } + container mpls-ipv4 { + presence "Indicates a mpls-ipv4 node is configured."; + description + "Replicate MPLS-IPv4 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + } + container mpls-ipv6 { + presence "Indicates a mpls-ipv6 node is configured."; + description + "Replicate MPLS-IPv6 traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + } + } + } + + grouping L2TRANS-BODY { + description + "Grouping for l2transport"; + container monitor-sessions { + description + "Monitor-session configuration commands"; + list monitor-session { + must "ethernet or ipv4 or ipv6 or mpls-ipv4 or mpls-ipv6"; + key "session-name"; + description + "Monitor-session configuration commands"; + leaf session-name { + type string { + length "1..79" { + description + "Session Name"; + } + } + description + "Monitor-session configuration commands"; + } + container ethernet { + must "not(../ipv4 or ../ipv6 or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ethernet node is configured."; + description + "Replicate Ethernet traffic"; + } + container ipv4 { + must "not(../ethernet or ../ipv6 or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ipv4 node is configured."; + description + "Replicate IPv4 traffic"; + } + container ipv6 { + must "not(../ipv4 or ../ethernet or ../mpls-ipv4 or ../mpls-ipv6)"; + presence "Indicates a ipv6 node is configured."; + description + "Replicate IPv6 traffic"; + } + container mpls-ipv4 { + must "not(../ipv4 or ../ipv6 or ../ethernet or ../mpls-ipv6)"; + presence "Indicates a mpls-ipv4 node is configured."; + description + "Replicate MPLS-IPv4 traffic"; + } + container mpls-ipv6 { + must "not(../ipv4 or ../ipv6 or ../mpls-ipv4 or ../ethernet)"; + presence "Indicates a mpls-ipv6 node is configured."; + description + "Replicate MPLS-IPv6 traffic"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container acl-ipv4 { + description + "Enable IPv4 ACL based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "IPV4 ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container acl-ipv6 { + description + "Enable IPv6 ACL based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "IPV6 ACL name"; + } + leaf merge-group { + type uint32 { + range "1..65535" { + description + "Group number to add ACL to"; + } + } + description + "Group multiple ACLs into a group"; + } + leaf priority { + type uint32 { + range "1..65535" { + description + "Lower number takes greater priority over other ACLs"; + } + } + must "../merge-group"; + description + "Determines which acl takes priority over another in the group (will take lowest priority by default)"; + } + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + } + } + container monitor-session-deprecated { + description + "Monitor-session deprecated configuration commands"; + container ethernet { + presence "Indicates a ethernet node is configured."; + description + "Replicate Ethernet traffic"; + leaf session-name { + type xr:Cisco-ios-xr-string { + length "1..79" { + description + "Session Name"; + } + } + mandatory true; + description + "Session Name"; + } + container direction { + description + "Specify the direction of traffic to replicate"; + container rx-only { + must "not(../tx-only)"; + presence "Indicates a rx-only node is configured."; + description + "Replicate only received (ingress) traffic"; + } + container tx-only { + must "not(../rx-only)"; + presence "Indicates a tx-only node is configured."; + description + "Replicate only transmitted (egress) traffic"; + } + } + container acl { + presence "Indicates a acl node is configured."; + description + "Enable acl based mirroring"; + leaf acl-name { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "ACL name"; + } + } + description + "ACL name"; + } + } + leaf acl-ipv4 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv4 ACL name"; + } + } + description + "Enable IPv4 ACL based mirroring"; + } + leaf acl-ipv6 { + type xr:Cisco-ios-xr-string { + length "1..80" { + description + "IPv6 ACL name"; + } + } + description + "Enable IPv6 ACL based mirroring"; + } + container mirror { + description + "Set the mirroring properties of this interface"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + } + description + "Enable mirroring of every Nth packet"; + } + } + container port-level { + presence "Indicates a port-level node is configured."; + description + "Replicate traffic on all interfaces of a main interface"; + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface/a2:l2transport" { + description + "This augment extends active nodes configuration"; + uses L2TRANS-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure/a2:l2transport" { + description + "This augment extends preconfigured nodes configuration"; + uses L2TRANS-BODY; + } + container monitor-sessions { + description + "Monitor-session configuration commands"; + list monitor-session { + key "session-name"; + description + "Session Name"; + leaf session-name { + type string { + length "1..79" { + description + "Session Name"; + } + } + description + "Session Name"; + } + leaf traffic-type { + type enumeration { + enum "ethernet" { + value 0; + description + "Replicate Ethernet traffic"; + } + enum "ipv4" { + value 1; + description + "Replicate IPv4 traffic"; + } + enum "ipv6" { + value 2; + description + "Replicate IPv6 traffic"; + } + enum "mpls-ipv4" { + value 3; + description + "Replicate MPLS-IPv4 traffic"; + } + enum "mpls-ipv6" { + value 4; + description + "Replicate MPLS-IPv6 traffic"; + } + } + mandatory true; + description + "Type of traffic to replicate"; + } + container destination { + description + "Specify the destination that traffic should be replicated to"; + leaf interface { + when + "../../traffic-type = 'ethernet' or ../../traffic-type = 'mpls-ipv4' + or ../../traffic-type = 'mpls-ipv6'"; + type xr:Interface-name; + must + "not(../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address or ../file or ../udp)"; + description + "Specify a destination interface"; + } + leaf erspan-session-id { + when "../interface" { + description + "ERSPAN session ID must be used with a GRE tunnel interface"; + } + type uint32 { + range "1..65535" { + description + "ERSPAN session ID value"; + } + } + description + "Specify the ERSPAN session ID"; + } + container pseudowire { + when "../../traffic-type = 'ethernet'"; + must + "not(../interface or ../next-hop/ipv4-address + or ../next-hop/ipv6-address or ../file or ../udp)"; + presence "Indicates a pseudowire node is configured."; + description + "Specify a pseudowire"; + } + container next-hop { + description + "Specify a destination next-hop IP address"; + leaf ipv4-address { + when + "../../../traffic-type = 'ethernet' + or ../../../traffic-type = 'ipv4'"; + type inet:ipv4-address-no-zone; + must + "not(../../interface or ../../pseudowire + or ../../file or ../../udp)"; + description + "Specify the destination next-hop IPv4 address"; + } + leaf ipv6-address { + when + "../../../traffic-type = 'ethernet' + or ../../../traffic-type = 'ipv6'"; + type inet:ipv6-address-no-zone; + must + "not(../../interface or ../../pseudowire + or ../../file or ../../udp)"; + description + "Specify an IPv6 address"; + } + leaf vrf { + type string { + length "1..32" { + description + "VRF name"; + } + } + must "../ipv4-address or ../ipv6-address"; + description + "Specify the vrf name"; + } + } + container udp { + must + "not(../interface or ../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address or ../file or ../sflow) + and (ipv4 or ipv6)"; + presence "Indicates a udp node is configured."; + description + "Specify a UDP destination"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../ipv6) and ../ipv4-source-ip"; + description + "Specify an IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + must "not(../ipv4) and ../ipv6-source-ip"; + description + "Specify an IPv6 address"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Specify the destination port number"; + } + } + mandatory true; + description + "Specify the destination port number"; + } + leaf ipv4-source-ip { + type inet:ipv4-address-no-zone; + must "../ipv4"; + description + "Specify the source IPv4 address"; + } + leaf ipv6-source-ip { + type inet:ipv6-address-no-zone; + must "../ipv6"; + description + "Specify the source IPv6 address"; + } + leaf source-port { + type uint32 { + range "0..65535" { + description + "Specify the source port number"; + } + } + mandatory true; + description + "Specify the source port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify the vrf name"; + } + } + container sflow { + must + "not(../interface or ../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address or ../file or ../udp) + and (ipv4 or ipv6)"; + presence "Indicates a sflow node is configured."; + description + "Specify a sflow destination"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../ipv6) and ../ipv4-source-ip"; + description + "Specify an IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + must "not(../ipv4) and ../ipv6-source-ip"; + description + "Specify an IPv6 address"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Specify the destination port number"; + } + } + mandatory true; + description + "Specify the destination port number"; + } + leaf ipv4-source-ip { + type inet:ipv4-address-no-zone; + must "../ipv4"; + description + "Specify the source IPv4 address"; + } + leaf ipv6-source-ip { + type inet:ipv6-address-no-zone; + must "../ipv6"; + description + "Specify the source IPv6 address"; + } + leaf source-port { + type uint32 { + range "0..65535" { + description + "Specify the source port number"; + } + } + mandatory true; + description + "Specify the source port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify the vrf name"; + } + } + container file { + must + "not(../interface or ../next-hop/ipv4-address + or ../next-hop/ipv6-address or ../pseudowire + or ../udp)"; + presence "Indicates a file node is configured."; + description + "Specify destination as a file"; + leaf size { + type uint32 { + range "1..16777216" { + description + "Specify size of buffer in kilobytes"; + } + } + description + "Specify the packet buffer size"; + } + container buffer-type { + description + "Specify the buffer type"; + container linear { + presence "Indicates a linear node is configured."; + description + "Specify a linear buffer"; + } + } + container format { + description + "Specify the file output file format"; + container pcapng { + presence "Indicates a pcapng node is configured."; + description + "Specify pcapng format"; + } + } + leaf filter { + type string { + length "1..800" { + description + "pcap filter expression"; + } + } + description + "Specify a pcap filter to apply - not yet supported"; + } + } + } + container rx { + description + "Specify the destination that rx traffic should be replicated to"; + leaf interface { + when + "../../traffic-type = 'ethernet' or ../../traffic-type = 'mpls-ipv4' + or ../../traffic-type = 'mpls-ipv6'"; + type xr:Interface-name; + must + "not(../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address)"; + description + "Specify a destination interface"; + } + leaf erspan-session-id { + when "../interface" { + description + "ERSPAN session ID must be used with a GRE tunnel interface"; + } + type uint32 { + range "1..65535" { + description + "ERSPAN session ID value"; + } + } + description + "Specify the ERSPAN session ID"; + } + container pseudowire { + when "../../traffic-type = 'ethernet'"; + must + "not(../interface or ../next-hop/ipv4-address + or ../next-hop/ipv6-address)"; + presence "Indicates a pseudowire node is configured."; + description + "Specify a pseudowire"; + } + container next-hop { + description + "Specify a destination next-hop IP address"; + leaf ipv4-address { + when + "../../../traffic-type = 'ethernet' + or ../../../traffic-type = 'ipv4'"; + type inet:ipv4-address-no-zone; + must "not(../../interface or ../../pseudowire)"; + description + "Specify the destination next-hop IPv4 address"; + } + leaf ipv6-address { + when + "../../../traffic-type = 'ethernet' + or ../../../traffic-type = 'ipv6'"; + type inet:ipv6-address-no-zone; + must + "not(../../interface or ../../pseudowire + or ../../udp)"; + description + "Specify an IPv6 address"; + } + leaf vrf { + type string { + length "1..32" { + description + "VRF name"; + } + } + must "../ipv4-address or ../ipv6-address"; + description + "Specify the vrf name"; + } + } + container udp { + must + "not(../interface or ../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address) + and (ipv4 or ipv6)"; + presence "Indicates a udp node is configured."; + description + "Specify a UDP destination"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../ipv6) and ../ipv4-source-ip"; + description + "Specify an IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + must "not(../ipv4) and ../ipv6-source-ip"; + description + "Specify an IPv6 address"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Specify the destination port number"; + } + } + mandatory true; + description + "Specify the destination port number"; + } + leaf ipv4-source-ip { + type inet:ipv4-address-no-zone; + must "../ipv4"; + description + "Specify the source IPv4 address"; + } + leaf ipv6-source-ip { + type inet:ipv6-address-no-zone; + must "../ipv6"; + description + "Specify the source IPv6 address"; + } + leaf source-port { + type uint32 { + range "0..65535" { + description + "Specify the source port number"; + } + } + mandatory true; + description + "Specify the source port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify the vrf name"; + } + } + container sflow { + must + "not(../interface or ../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address) + and (ipv4 or ipv6)"; + presence "Indicates a sflow node is configured."; + description + "Specify a sflow destination"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../ipv6) and ../ipv4-source-ip"; + description + "Specify an IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + must "not(../ipv4) and ../ipv6-source-ip"; + description + "Specify an IPv6 address"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Specify the destination port number"; + } + } + mandatory true; + description + "Specify the destination port number"; + } + leaf ipv4-source-ip { + type inet:ipv4-address-no-zone; + must "../ipv4"; + description + "Specify the source IPv4 address"; + } + leaf ipv6-source-ip { + type inet:ipv6-address-no-zone; + must "../ipv6"; + description + "Specify the source IPv6 address"; + } + leaf source-port { + type uint32 { + range "0..65535" { + description + "Specify the source port number"; + } + } + mandatory true; + description + "Specify the source port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify the vrf name"; + } + } + } + container tx { + description + "Specify the destination that tx traffic should be replicated to"; + leaf interface { + when + "../../traffic-type = 'ethernet' or ../../traffic-type = 'mpls-ipv4' + or ../../traffic-type = 'mpls-ipv6'"; + type xr:Interface-name; + must + "not(../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address)"; + description + "Specify a destination interface"; + } + leaf erspan-session-id { + when "../interface" { + description + "ERSPAN session ID must be used with a GRE tunnel interface"; + } + type uint32 { + range "1..65535" { + description + "ERSPAN session ID value"; + } + } + description + "Specify the ERSPAN session ID"; + } + container pseudowire { + when "../../traffic-type = 'ethernet'"; + must + "not(../interface or ../next-hop/ipv4-address + or ../next-hop/ipv6-address)"; + presence "Indicates a pseudowire node is configured."; + description + "Specify a pseudowire"; + } + container next-hop { + description + "Specify a destination next-hop IP address"; + leaf ipv4-address { + when + "../../../traffic-type = 'ethernet' + or ../../../traffic-type = 'ipv4'"; + type inet:ipv4-address-no-zone; + must "not(../../interface or ../../pseudowire)"; + description + "Specify the destination next-hop IPv4 address"; + } + leaf ipv6-address { + when + "../../../traffic-type = 'ethernet' + or ../../../traffic-type = 'ipv6'"; + type inet:ipv6-address-no-zone; + must + "not(../../interface or ../../pseudowire + or ../../udp)"; + description + "Specify an IPv6 address"; + } + leaf vrf { + type string { + length "1..32" { + description + "VRF name"; + } + } + must "../ipv4-address or ../ipv6-address"; + description + "Specify the vrf name"; + } + } + container udp { + must + "not(../interface or ../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address) + and (ipv4 or ipv6)"; + presence "Indicates a udp node is configured."; + description + "Specify a UDP destination"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../ipv6) and ../ipv4-source-ip"; + description + "Specify an IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + must "not(../ipv4) and ../ipv6-source-ip"; + description + "Specify an IPv6 address"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Specify the destination port number"; + } + } + mandatory true; + description + "Specify the destination port number"; + } + leaf ipv4-source-ip { + type inet:ipv4-address-no-zone; + must "../ipv4"; + description + "Specify the source IPv4 address"; + } + leaf ipv6-source-ip { + type inet:ipv6-address-no-zone; + must "../ipv6"; + description + "Specify the source IPv6 address"; + } + leaf source-port { + type uint32 { + range "0..65535" { + description + "Specify the source port number"; + } + } + mandatory true; + description + "Specify the source port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify the vrf name"; + } + } + container sflow { + must + "not(../interface or ../pseudowire or ../next-hop/ipv4-address + or ../next-hop/ipv6-address) + and (ipv4 or ipv6)"; + presence "Indicates a sflow node is configured."; + description + "Specify a sflow destination"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../ipv6) and ../ipv4-source-ip"; + description + "Specify an IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + must "not(../ipv4) and ../ipv6-source-ip"; + description + "Specify an IPv6 address"; + } + leaf port { + type uint32 { + range "0..65535" { + description + "Specify the destination port number"; + } + } + mandatory true; + description + "Specify the destination port number"; + } + leaf ipv4-source-ip { + type inet:ipv4-address-no-zone; + must "../ipv4"; + description + "Specify the source IPv4 address"; + } + leaf ipv6-source-ip { + type inet:ipv6-address-no-zone; + must "../ipv6"; + description + "Specify the source IPv6 address"; + } + leaf source-port { + type uint32 { + range "0..65535" { + description + "Specify the source port number"; + } + } + mandatory true; + description + "Specify the source port"; + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF name"; + } + } + description + "Specify the vrf name"; + } + } + } + leaf inject-interface { + type xr:Interface-name; + description + "Specify the attachment interface into which traffic may be injected from the SPAN session's destination"; + } + container cloud-span { + presence "Indicates a cloud-span node is configured."; + description + "Configure CloudSPAN on this session"; + } + leaf discard-class { + type uint32 { + range "0..2" { + description + "Discard class value"; + } + } + description + "Specify the discard class value to be set on all traffic mirrored to the destination"; + } + leaf traffic-class { + type uint32 { + range "0..7" { + description + "Traffic class value"; + } + } + description + "Specify the traffic class value to be set on all traffic mirrored to the destination"; + } + container mirror { + description + "Set the mirroring properties of this session"; + leaf first { + type uint32 { + range "1..10000" { + description + "Specify the number of bytes to mirror"; + } + } + description + "Enable mirroring on the first portion of a packet"; + } + leaf interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + enum "2" { + value 7; + description + "Mirror 1 in every 2 packets"; + } + enum "4" { + value 8; + description + "Mirror 1 in every 4 packets"; + } + enum "8" { + value 9; + description + "Mirror 1 in every 8 packets"; + } + enum "16" { + value 10; + description + "Mirror 1 in every 16 packets"; + } + enum "32" { + value 11; + description + "Mirror 1 in every 32 packets"; + } + enum "64" { + value 12; + description + "Mirror 1 in every 64 packets"; + } + enum "128" { + value 13; + description + "Mirror 1 in every 128 packets"; + } + enum "256" { + value 14; + description + "Mirror 1 in every 256 packets"; + } + } + description + "Enable mirroring of every Nth packet for this session"; + } + } + container forward-drop { + presence "Indicates a forward-drop node is configured."; + description + "Mirror all forwarding-dropped packets"; + container rx { + must "not(../tx)"; + presence "Indicates a rx node is configured."; + description + "Mirror Rx forwarding-dropped packets"; + } + container tx { + must "not(../rx)"; + presence "Indicates a tx node is configured."; + description + "Mirror Tx forwarding-dropped packets"; + } + leaf filter { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "pcap filter expression"; + } + } + description + "Specify a pcap filter to apply"; + } + } + container tm-drop { + presence "Indicates a tm-drop node is configured."; + description + "Mirror all traffic-management-dropped packets"; + container rx { + must "not(../tx)"; + presence "Indicates a rx node is configured."; + description + "Mirror Rx traffic-management-dropped packets"; + } + container tx { + must "not(../rx)"; + presence "Indicates a tx node is configured."; + description + "Mirror Tx traffic-management-dropped packets"; + } + leaf filter { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "pcap filter expression"; + } + } + description + "Specify a pcap filter to apply"; + } + } + container protocol-capture { + presence "Indicates a protocol-capture node is configured."; + description + "Mirror punted packets"; + container rx { + must "not(../tx)"; + presence "Indicates a rx node is configured."; + description + "Mirror Rx protocol-captured packets"; + } + container tx { + must "not(../rx)"; + presence "Indicates a tx node is configured."; + description + "Mirror Tx protocol-captured packets"; + } + leaf filter { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "pcap filter expression"; + } + } + description + "Specify a pcap filter to apply"; + } + } + container rate-limit { + description + "Limit the rate at which packets are mirrored to the destination"; + leaf rx { + type uint32 { + range "0..4294967295" { + description + "Specify the rate limit in kbps in the rx direction"; + } + } + description + "Rate limit mirroring in the rx direction"; + } + leaf tx { + type uint32 { + range "0..4294967295" { + description + "Specify the rate limit in kbps in the tx direction"; + } + } + description + "Rate limit mirroring in the tx direction"; + } + } + } + leaf router-id { + type uint32 { + range "1..255" { + description + "Router ID value"; + } + } + description + "Specify the router ID"; + } + leaf mirror-interval { + type enumeration { + enum "512" { + value 1; + description + "Mirror 1 in every 512 packets"; + } + enum "1K" { + value 2; + description + "Mirror 1 in every 1024 packets"; + } + enum "2K" { + value 3; + description + "Mirror 1 in every 2048 packets"; + } + enum "4K" { + value 4; + description + "Mirror 1 in every 4096 packets"; + } + enum "8K" { + value 5; + description + "Mirror 1 in every 8192 packets"; + } + enum "16K" { + value 6; + description + "Mirror 1 in every 16384 packets"; + } + enum "2" { + value 7; + description + "Mirror 1 in every 2 packets"; + } + enum "4" { + value 8; + description + "Mirror 1 in every 4 packets"; + } + enum "8" { + value 9; + description + "Mirror 1 in every 8 packets"; + } + enum "16" { + value 10; + description + "Mirror 1 in every 16 packets"; + } + enum "32" { + value 11; + description + "Mirror 1 in every 32 packets"; + } + enum "64" { + value 12; + description + "Mirror 1 in every 64 packets"; + } + enum "128" { + value 13; + description + "Mirror 1 in every 128 packets"; + } + enum "256" { + value 14; + description + "Mirror 1 in every 256 packets"; + } + } + description + "Enable mirroring of every Nth packet on ALL sessions"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang new file mode 100644 index 000000000..69337c127 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-l3vpn-cfg.yang @@ -0,0 +1,102 @@ +module Cisco-IOS-XR-um-mpls-l3vpn-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mpls-l3vpn-cfg"; + prefix um-mpls-l3vpn-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + + 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 mpls-te package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.1"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-04-04 { + description + "Initial version"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container mpls { + description + "Enable SNMP MPLS traps"; + container l3vpn { + description + "Enable MPLS L3VPN traps"; + container all { + presence "Indicates a all node is configured."; + description + "Enable all MPLS L3VPN traps"; + } + container vrf-up { + presence "Indicates a vrf-up node is configured."; + description + "Enable VRF up traps"; + } + container vrf-down { + presence "Indicates a vrf-down node is configured."; + description + "Enable VRF down traps"; + } + container mid-threshold-exceeded { + presence "Indicates a mid-threshold-exceeded node is configured."; + description + "Enable mid-threshold exceeded traps"; + } + container max-threshold-exceeded { + presence "Indicates a max-threshold-exceeded node is configured."; + description + "Enable max-threshold exceeded traps"; + } + container max-threshold-cleared { + presence "Indicates a max-threshold-cleared node is configured."; + description + "Enable max-threshold cleared traps"; + } + leaf max-threshold-reissue-notif-time { + type uint32 { + range "0..2147483647" { + description + "Time interval in seconds"; + } + } + description + "Time interval (secs) for re-issuing max-threshold notification"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-ldp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-ldp-cfg.yang new file mode 100644 index 000000000..30f6329a6 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-ldp-cfg.yang @@ -0,0 +1,2229 @@ +module Cisco-IOS-XR-um-mpls-ldp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mpls-ldp-cfg"; + prefix um-mpls-ldp-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 mpls-ldp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-01 { + description + "added entropy-label-add-el and clone-tunnel support + 2021-11-15 + added address-family ipv6 feature and rtr-id-arb-tlv "; + semver:module-version "3.1.0"; + } + revision 2021-07-09 { + description + "type correction for the ipv4/v6 address"; + semver:module-version "3.0.0"; + } + revision 2021-01-29 { + description + "Add enable container under recursive-fec container + 2021-01-28 + Added cisco-support task yang nodes + 2020-12-08 + Removed cisco-support yang nodes + 2020-07-10 + Added when statement to redistribute to show it's only for ipv4"; + semver:module-version "2.0.0"; + } + revision 2020-05-29 { + description + "Changed description for sac"; + } + revision 2019-12-10 { + description + "Corrected must statement definition for password/encrypted,disable"; + } + revision 2019-10-10 { + description + "Moved trap augments into Cisco-IOS-XR-um-traps-mpls-ldp-cfg."; + } + revision 2019-09-25 { + description + "Changed the list node name access-list to access-lists."; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + } + revision 2019-03-30 { + description + "Initial version"; + } + + container mpls { + description + "Global MPLS configuration subcommands"; + container ldp { + presence "Indicates a ldp node is configured."; + description + "Label Distribution Protocol"; + container mldp { + presence "Indicates a mldp node is configured."; + description + "Configure mLDP parameters"; + container logging { + description + "MLDP logging commands"; + container notifications { + presence "Indicates a notifications node is configured."; + description + "MLDP logging notifications"; + } + container internal { + presence "Indicates a internal node is configured."; + description + "MLDP logging internal"; + } + } + container vrfs { + description + "Configure VRF parameters"; + list vrf { + key "vrf-name"; + description + "Configure VRF parameters"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "VRF name"; + } + } + description + "Configure VRF parameters"; + } + container address-families { + description + "Configure Address Family and its parameters"; + list address-family { + key "af-name"; + description + "Configure Address Family and its parameters"; + leaf af-name { + type enumeration { + enum "ipv4" { + value 4; + description + "IPv4"; + } + } + description + "Configure Address Family and its parameters"; + } + container statics { + description + "Static mLDP LSP"; + list static { + key "lsp-address"; + description + "Staic mLDP LSP"; + leaf lsp-address { + type inet:ipv4-address-no-zone; + description + "LSP address"; + } + leaf p2mp { + type uint32 { + range "1..1000" { + description + "Number of LSPs"; + } + } + description + "P2MP LSP"; + } + leaf mp2mp { + type uint32 { + range "1..1000" { + description + "Number of LSPs"; + } + } + description + "MP2MP LSP"; + } + } + } + container make-before-break { + description + "Make Before Break"; + container delay { + presence "Indicates a delay node is configured."; + description + "MBB delay"; + leaf forwarding-delay { + type uint32 { + range "0..600" { + description + "Forwarding delay in seconds"; + } + } + mandatory true; + description + "MBB delay"; + } + leaf delete-delay { + type uint32 { + range "0..60" { + description + "Delete delay in seconds"; + } + } + default "0"; + description + "Delete delay in seconds"; + } + } + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container mofrr { + presence "Indicates a mofrr node is configured."; + description + "MLDP MoFRR support"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container neighbors { + description + "MLDP neighbor commands"; + container in { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container out { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + list neighbor { + must "in or out or (in and out)"; + key "neighbor-address"; + description + "MLDP neighbor commands"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "configure this node"; + } + container in { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container out { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + } + } + container forwarding { + description + "Forwarding commands"; + container recursive { + presence "Indicates a recursive node is configured."; + description + "Enable recursive forwarding"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + } + container rib { + description + "RIB commands"; + container unicast-always { + presence "Indicates a unicast-always node is configured."; + description + "Always use unicast table for root lookup"; + } + } + } + } + } + } + container address-families { + description + "Configure Address Family and its parameters"; + list address-family { + key "af-name"; + description + "Configure Address Family and its parameters"; + leaf af-name { + type enumeration { + enum "ipv4" { + value 4; + description + "IPv4"; + } + } + description + "Configure Address Family and its parameters"; + } + container statics { + description + "Static mLDP LSP"; + list static { + key "lsp-address"; + description + "Static mLDP LSP"; + leaf lsp-address { + type inet:ipv4-address-no-zone; + description + "LSP address"; + } + leaf p2mp { + type uint32 { + range "1..1000" { + description + "Number of LSPs"; + } + } + description + "P2MP LSP"; + } + leaf mp2mp { + type uint32 { + range "1..1000" { + description + "Number of LSPs"; + } + } + description + "MP2MP LSP"; + } + } + } + container make-before-break { + description + "Make Before Break"; + container delay { + presence "Indicates a delay node is configured."; + description + "MBB delay"; + leaf forwarding-delay { + type uint32 { + range "0..600" { + description + "Forwarding delay in seconds"; + } + } + mandatory true; + description + "MBB delay"; + } + leaf delete-delay { + type uint32 { + range "0..60" { + description + "Delete delay in seconds"; + } + } + default "0"; + description + "Delete delay in seconds"; + } + } + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container carrier-supporting-carrier { + presence "Indicates a carrier-supporting-carrier node is configured."; + description + "MLDP CSC support"; + } + container mofrr { + presence "Indicates a mofrr node is configured."; + description + "MLDP MoFRR support"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container recursive-fec { + description + "MLDP Recursive FEC support"; + container enable { + presence "Indicates a enable node is configured."; + description + "MLDP Recursive FEC enable"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container neighbors { + description + "MLDP neighbor commands"; + container in { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container out { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + list neighbor { + must "in or out or (in and out)"; + key "neighbor-address"; + description + "configure this node"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "configure this node"; + } + container in { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + container out { + description + "Inbound route policy"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + } + } + container forwarding { + description + "Forwarding commands"; + container recursive { + presence "Indicates a recursive node is configured."; + description + "Enable recursive forwarding"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route policy"; + } + } + } + container rib { + description + "RIB commands"; + container unicast-always { + presence "Indicates a unicast-always node is configured."; + description + "Always use unicast table for root lookup"; + } + } + } + } + } + container vrfs { + description + "Configure VRF parameters"; + list vrf { + key "vrf-name"; + description + "Configure VRF parameters"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "VRF name"; + } + } + description + "Configure VRF parameters"; + } + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Configure router Id"; + } + container session { + description + "Configure session parameters"; + container downstream-on-demand { + description + "Downstream on demand label advertisment mode"; + leaf with { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + description + "Access list of LDP Peers"; + } + } + } + container graceful-restart { + description + "Configure graceful restart feature"; + container helper-peer { + description + "Configure parameters related to GR peer(s) operating in helper mode"; + container maintain-on-local-reset { + description + "Maintain the state of a GR peer upon a local reset"; + leaf for { + type string { + length "1..32" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + description + "Access list of LDP Peers"; + } + } + } + } + container neighbors { + description + "Configure neighbor parameters"; + container password { + description + "Configure password for MD5 authentication for all neighbors"; + leaf encrypted { + type xr:Proprietary-password; + description + "Specifies an ENCRYPTED password will follow"; + } + } + list neighbor { + key "neighbor-address label-space-id"; + description + "neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "configure this node"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + container password { + description + "Configure password for MD5 authentication"; + leaf encrypted { + type xr:Proprietary-password; + must "not(../disable)"; + description + "Specifies an ENCRYPTED password will follow"; + } + container disable { + must "not(../encrypted)"; + presence "Indicates a disable node is configured."; + description + "Disables the global password from this neighbor"; + } + } + } + } + container address-family { + description + "Configure Address Family and its parameters"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4"; + container discovery { + description + "Configure discovery parameters"; + container transport-address { + presence "Indicates a transport-address node is configured."; + description + "Specify transport address for TCP connection"; + leaf ip-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IP address to be used as transport address"; + } + } + } + container label { + description + "Configure label control and policies"; + container local { + description + "Configure local label control and policies"; + container allocate { + description + "Configure label allocation control"; + container for { + description + "Limit label allocation to a set of prefixes"; + leaf ip-access-list { + type string { + length "1..1024" { + description + "IP access-list"; + } + } + must "not(../host-routes)"; + description + "IP access-list"; + } + container host-routes { + must "not(../ip-access-list)"; + presence "Indicates a host-routes node is configured."; + description + "Allocate label for host routes only"; + } + } + } + container default-route { + presence "Indicates a default-route node is configured."; + description + "Enable MPLS forwarding for default route"; + } + container implicit-null-override { + description + "Configure use of implicit-null local label for non-egress prefixes"; + leaf for { + type string { + length "1..32" { + description + "IP access-list"; + } + } + description + "Limit implicit-null label use to a set of prefixes"; + } + } + container advertise { + description + "Configure outbound label advertisement control"; + container explicit-null { + must "not(for and to)"; + presence "Indicates a explicit-null node is configured."; + description + "Configure explicit-null advertisement"; + container for { + presence "Indicates a for node is configured."; + description + "IP Access-list specifying controls on destination prefixes"; + leaf access-list { + type string { + length "1..1024" { + description + "IP access-list"; + } + } + mandatory true; + description + "IP Access-list specifying controls on destination prefixes"; + } + container to { + presence "Indicates a to node is configured."; + description + "IP Access-list specifying controls on LDP Peers"; + leaf access-list { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "IP Access-list specifying controls on LDP Peers"; + } + } + } + container to { + presence "Indicates a to node is configured."; + description + "IP Access-list specifying controls on LDP Peers"; + leaf access-list { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "IP Access-list specifying controls on LDP Peers"; + } + } + } + container to { + description + "Peer centric outbound label filtering"; + list neighbor { + key "neighbor-address label-space-id"; + description + "neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "neighbor address"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + leaf for { + type string { + length "1..32" { + description + "IP access-list"; + } + } + mandatory true; + description + "IP access-list for prefixes to be sent"; + } + } + } + container interfaces { + description + "Advertise interface host address"; + list interface { + key "interface-name"; + description + "Advertise interface host address"; + leaf interface-name { + type xr:Interface-name; + description + "Advertise interface host address"; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable label advertisement to all peers for all prefixes"; + } + } + } + container remote { + description + "Configure remote/peer label control and policies"; + container accept { + description + "Configure inbound label acceptance control"; + container from { + description + "Neighbor from whom to accept label advertisement"; + list neighbor { + key "neighbor-address label-space-id"; + description + "Neighbor from whom to accept label advertisement"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor from whom to accept label advertisement"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + leaf for { + type string { + length "1..32" { + description + "IP access-list"; + } + } + description + "IP access-list for destination prefixes"; + } + } + } + } + } + } + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "IPv6"; + container discovery { + description + "Configure discovery parameters"; + container transport-address { + description + "Specify transport address for TCP connection"; + leaf ip-address { + type inet:ipv6-address-no-zone; + description + "IP address to be used as transport address"; + } + } + } + container label { + description + "Configure label control and policies"; + container local { + description + "Configure local label control and policies"; + container allocate { + description + "Configure label allocation control"; + container for { + description + "Limit label allocation to a set of prefixes"; + leaf ip-access-list { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access-list"; + } + } + must "not(../host-routes)"; + description + "IP access-list"; + } + container host-routes { + must "not(../ip-access-list)"; + presence "Indicates a host-routes node is configured."; + description + "Allocate label for host routes only"; + } + } + } + container default-route { + presence "Indicates a default-route node is configured."; + description + "Enable MPLS forwarding for default route"; + } + container implicit-null-override { + description + "Configure use of implicit-null local label for non-egress prefixes"; + leaf for { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access-list"; + } + } + description + "Limit implicit-null label use to a set of prefixes"; + } + } + container advertise { + description + "Configure outbound label advertisement control"; + container explicit-null { + must "not(for and to)"; + presence "Indicates a explicit-null node is configured."; + description + "Configure explicit-null advertisement"; + container for { + presence "Indicates a for node is configured."; + description + "IP Access-list specifying controls on destination prefixes"; + leaf access-list { + type string { + length "1..1024" { + description + "IP access-list"; + } + } + mandatory true; + description + "IP Access-list specifying controls on destination prefixes"; + } + container to { + presence "Indicates a to node is configured."; + description + "IP Access-list specifying controls on LDP Peers"; + leaf access-list { + type string { + length "1..1024" { + description + "IPv6 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "IP Access-list specifying controls on LDP Peers"; + } + } + } + container to { + presence "Indicates a to node is configured."; + description + "IP Access-list specifying controls on LDP Peers"; + leaf access-list { + type string { + length "1..1024" { + description + "IPv6 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "IP Access-list specifying controls on LDP Peers"; + } + } + } + container to { + description + "Peer centric outbound label filtering"; + list neighbor { + key "neighbor-address label-space-id"; + description + "neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "neighbor address"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + leaf for { + type string { + length "1..32" { + description + "IP access-list"; + } + } + mandatory true; + description + "IP access-list for prefixes to be sent"; + } + } + } + container interfaces { + description + "Advertise interface host address"; + list interface { + key "interface-name"; + description + "Advertise interface host address"; + leaf interface-name { + type xr:Interface-name; + description + "Advertise interface host address"; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable label advertisement to all peers for all prefixes"; + } + } + } + container remote { + description + "Configure remote/peer label control and policies"; + container accept { + description + "Configure inbound label acceptance control"; + container from { + description + "Neighbor from whom to accept label advertisement"; + list neighbor { + key "neighbor-address label-space-id"; + description + "Neighbor from whom to accept label advertisement"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor from whom to accept label advertisement"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + leaf for { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "IP access-list"; + } + } + mandatory true; + description + "IP access-list for destination prefixes"; + } + } + } + } + } + } + } + } + container interfaces { + description + "Enable LDP on an interface and enter interface submode"; + list interface { + key "interface-name"; + description + "Enable LDP on an interface and enter interface submode"; + leaf interface-name { + type xr:Interface-name; + description + "Enable LDP on an interface and enter interface submode"; + } + container address-family { + description + "Configure Address Family and its parameters"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4"; + container discovery { + description + "Configure discovery parameters"; + container transport-address { + must "(interface and not(ip-address)) or (ip-address and not(interface))"; + presence "Indicates a transport-address node is configured."; + description + "Specify interface LDP transport address"; + container interface { + presence "Indicates a interface node is configured."; + description + "Use this interface address as transport address"; + } + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address to be used as transport address"; + } + } + } + } + container ipv6 { + presence "Indicates a ipv6 node is configured."; + description + "IPv6"; + container discovery { + description + "Configure discovery parameters"; + container transport-address { + description + "Specify interface LDP transport address"; + container interface { + must "not(../ip-address)"; + presence "Indicates a interface node is configured."; + description + "Use this interface address as transport address"; + } + leaf ip-address { + type inet:ipv6-address-no-zone; + must "not(../interface)"; + description + "IP address to be used as transport address"; + } + } + } + } + } + } + } + } + } + container ltrace-buffer { + description + "Configure ltrace buffer file"; + leaf multiplier { + type uint32 { + range "1..5" { + description + "Multiplier factor"; + } + } + description + "Ltrace buffer file size multiplier"; + } + } + container default-vrf { + description + "Control default VRF behaviour"; + container implicit-ipv4 { + description + "Control Implicit enabling of IPv4 address family behavior"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable the implicit enabling for IPv4 address family "; + } + } + } + container session { + description + "Configure session parameters"; + container backoff { + presence "Indicates a backoff node is configured."; + description + "Configure session backoff parameters"; + leaf backoff-time { + type uint32 { + range "5..2147483" { + description + "Initial session backoff time (seconds)"; + } + } + mandatory true; + description + "Configure session backoff parameters"; + } + leaf maximum-session-backoff-time { + type uint32 { + range "5..2147483" { + description + "Maximum session backoff time (seconds)"; + } + } + mandatory true; + description + "Maximum session backoff time (seconds)"; + } + } + leaf holdtime { + type uint32 { + range "15..65535" { + description + "Time (seconds)"; + } + } + description + "Configure session holdtime"; + } + container downstream-on-demand { + description + "Downstream on demand label advertisment mode"; + leaf with { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + description + "Access list of LDP Peers"; + } + } + container protection { + presence "Indicates a protection node is configured."; + description + "Configure session protection parameters"; + container for { + must "not(../duration)"; + presence "Indicates a for node is configured."; + description + "IP Access list to specify LDP Peers"; + leaf for-access-list { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "IP Access list to specify LDP Peers"; + } + container duration { + description + "Session protection duration after loss of link discovery"; + leaf holdup-time { + type uint32 { + range "30..2147483" { + description + "Holdup time in seconds"; + } + } + must "not(../infinite)"; + description + "Holdup time in seconds"; + } + container infinite { + must "not(../holdup-time)"; + presence "Indicates a infinite node is configured."; + description + "Protect session forever after loss of link discovery"; + } + } + } + container duration { + must "not(../for) and (holdup-time or infinite)"; + presence "Indicates a duration node is configured."; + description + "Session protection duration after loss of link discovery"; + leaf holdup-time { + type uint32 { + range "30..2147483" { + description + "Holdup time in seconds"; + } + } + must "not(../infinite)"; + description + "Holdup time in seconds"; + } + container infinite { + must "not(../holdup-time)"; + presence "Indicates a infinite node is configured."; + description + "Protect session forever after loss of link discovery"; + } + } + } + } + container nsr { + presence "Indicates a nsr node is configured."; + description + "Configure Non-Stop Routing"; + } + container entropy-label { + presence "Indicates a entropy-label node is configured."; + description + "Configure Entropy Label"; + } + container entropy-label-add-el { + presence "Indicates a add-el node is configured."; + description + "Configure Entropy Label"; + } + container signalling { + description + "Configure signalling parameters"; + leaf dscp { + type uint32 { + range "0..63" { + description + "Differentiated Services Code Point (DSCP)"; + } + } + description + "Set DSCP for LDP control packets"; + } + } + container graceful-restart { + presence "Indicates a graceful-restart node is configured."; + description + "Configure graceful restart feature"; + } + leaf graceful-restart-reconnect-timeout { + type uint32 { + range "60..1800" { + description + "Time (seconds)"; + } + } + description + "Session Reconnect timeout"; + } + leaf graceful-restart-forwarding-state-holdtime { + type uint32 { + range "60..1800" { + description + "Time (seconds)"; + } + } + description + "Forwarding State holdtime for a restarting LSR"; + } + container graceful-restart-helper-peer { + description + "Configure parameters related to GR peer(s) operating in helper mode"; + container maintain-on-local-reset { + presence "Indicates a maintain-on-local-reset node is configured."; + description + "Maintain the state of a GR peer upon a local reset"; + leaf for { + type string { + length "1..32" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "Access list of LDP Peers"; + } + } + } + container igp { + description + "Configure igp parameters"; + container sync { + description + "Configure LDP-IGP synchronization parameters"; + container delay { + description + "Configure sync up delay after session up"; + leaf on-session-up { + type uint32 { + range "5..300" { + description + "Interface sync-up delay (seconds)"; + } + } + description + "Interface sync-up delay after session up"; + } + leaf on-proc-restart { + type uint32 { + range "60..600" { + description + "Global sync-up delay (seconds)"; + } + } + description + "Global sync up delay to be used after process restart"; + } + } + } + } + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Configure router Id"; + } + container capabilities { + description + "Configure LDP Capabilities"; + container cisco { + description + "Cisco capabilities options"; + container ios-xr { + description + "Cisco IOS-XR capabilities options"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable Cisco IOS-XR capability"; + } + } + } + container sac { + presence "Indicates a sac node is configured."; + description + "State Advertisement Control"; + container ipv4-disable { + presence "Indicates a ipv4-disable node is configured."; + description + "Disable exchanging IPv4 prefix label bindings"; + } + container ipv6-disable { + presence "Indicates a ipv6-disable node is configured."; + description + "Disable exchanging IPv6 prefix label bindings"; + } + container fec128-disable { + presence "Indicates a fec128-disable node is configured."; + description + "Disable exchanging PW FEC128 label bindings"; + } + container fec129-disable { + presence "Indicates a fec129-disable node is configured."; + description + "Disable exchanging PW FEC129 label bindings"; + } + } + } + container log { + description + "Configure logging of LDP events"; + container hello-adjacency { + presence "Indicates a hello-adjacency node is configured."; + description + "Hello adjacency events"; + } + container neighbor { + presence "Indicates a neighbor node is configured."; + description + "Neighbor events"; + } + container nsr { + presence "Indicates a nsr node is configured."; + description + "NSR synchronization events"; + } + container graceful-restart { + presence "Indicates a graceful-restart node is configured."; + description + "Graceful Restart events"; + } + container session-protection { + presence "Indicates a session-protection node is configured."; + description + "Session Protection events"; + } + } + container discovery { + description + "Configure discovery parameters"; + container hello { + description + "LDP Link Hellos"; + leaf holdtime { + type uint32 { + range "1..65535" { + description + "Time (seconds) - 65535 implies infinite"; + } + } + description + "Hello holdtime"; + } + leaf interval { + type uint32 { + range "1..65535" { + description + "Time (seconds)"; + } + } + description + "Hello interval"; + } + } + container targeted-hello { + description + "LDP Targeted Hellos"; + leaf holdtime { + type uint32 { + range "1..65535" { + description + "Time (seconds) - 65535 implies infinite"; + } + } + description + "Targeted hello holdtime"; + } + leaf interval { + type uint32 { + range "1..65535" { + description + "Time (seconds)"; + } + } + description + "Targeted Hello interval"; + } + } + container instance-tlv { + description + "Control support for Neighbor instance TLV in Hello messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable transmit and receive processing for TLV"; + } + } + container ds-tlv { + description + "Control Dual Stack TLV sending"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable transmit and receive processing for TLV"; + } + } + container rtr-id-arb-tlv { + description + "Control support for Router ID based arbitration TLV in Hello messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable transmit and receive processing for TLV"; + } + } + container quick-start { + description + "Control quick discovery and initial burst of hello"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable quick discovery"; + } + } + } + container neighbor { + description + "Configure neighbor parameters"; + container dual-stack { + description + "Configure dual stack ipv4/ipv6 neighbor parameters"; + container transport-connection { + description + "Configure TCP transport parameters for neighbors"; + container prefer { + description + "Configure prefered address family for TCP transport connection with neighbors"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4"; + } + } + leaf max-wait { + type uint32 { + range "0..60" { + description + "Wait time in seconds (0 indicates no preference)"; + } + } + description + "Maximum wait for prefered transport connection establishment"; + } + } + container tlv-compliance { + presence "Indicates a tlv-compliance node is configured."; + description + "Configure dual-stack tlv compliance checks"; + } + } + container password { + description + "Configure password for MD5 authentication for all neighbors"; + leaf encrypted { + type xr:Proprietary-password; + description + "Specifies an ENCRYPTED password will follow"; + } + } + container neighbors { + description + "neighbor"; + list neighbor { + key "neighbor-address label-space-id"; + description + "configure this node"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "configure this node"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + container password { + description + "Configure password for MD5 authentication"; + leaf encrypted { + type xr:Proprietary-password; + must " not(../disable)"; + description + "Specifies an ENCRYPTED password will follow"; + } + container disable { + must " not(../encrypted)"; + presence "Indicates a disable node is configured."; + description + "Disables the global password from this neighbor"; + } + } + } + } + } + container address-families { + description + "Configure Address Family and its parameters"; + list address-family { + key "af-name"; + description + "Configure Address Family and its parameters"; + leaf af-name { + type enumeration { + enum "ipv4" { + value 4; + description + "IPv4"; + } + enum "ipv6" { + value 6; + description + "IPv6"; + } + } + description + "Configure Address Family and its parameters"; + } + container discovery { + description + "Configure discovery parameters"; + container transport-address { + presence "Indicates a transport-address node is configured."; + description + "Specify transport address for TCP connection"; + leaf ipv4-address { + when "../../../af-name = 'ipv4'"; + type inet:ipv4-address-no-zone; + description + "IP address to be used as transport address"; + } + leaf ipv6-address { + when "../../../af-name = 'ipv6'"; + type inet:ipv6-address-no-zone; + description + "IP address to be used as transport address"; + } + } + container targeted-hello { + description + "LDP Targeted Hellos"; + container accept { + presence "Indicates a accept node is configured."; + description + "Accept and respond to targeted hellos"; + leaf from { + type string { + length "1..1024" { + description + "access-list"; + } + } + description + "IP Access list to specify acceptable targeted hello sources"; + } + } + } + } + container neighbor { + description + "Configure neighbor parameters"; + container ipv4-addresses { + when "../../af-name = 'ipv4'"; + description + "IP address of neighbor"; + list targeted { + key "neighbor-address"; + description + "Establish targeted session"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "IP address of neighbor"; + } + } + } + container ipv6-addresses { + when "../../af-name = 'ipv6'"; + description + "IP address of neighbor"; + list targeted { + key "neighbor-address"; + description + "Establish targeted session"; + leaf neighbor-address { + type inet:ipv6-address-no-zone; + description + "IP address of neighbor"; + } + } + } + container sr-policies { + description + "Configure Segment Routing policy parameters"; + list sr-policy { + key "policy-name"; + description + "Segment Routing policy name"; + leaf policy-name { + type string { + length "1..59" { + description + "Segment Routing policy name"; + } + } + description + "Segment Routing policy name"; + } + container targeted { + presence "Indicates a targeted node is configured."; + description + "Establish targeted session"; + } + } + } + } + container traffic-eng { + description + "Configure LDP parameters for MPLS Traffic-Engineering (TE)"; + container auto-tunnel { + description + "Configure LDP TE auto-tunnel related parameters"; + container mesh { + description + "Configure TE auto-tunnel mesh groups"; + container groups { + description + "Configure an auto-tunnel mesh group of interfaces in LDP"; + list group { + key "group-id"; + description + "Configure an auto-tunnel mesh group of interfaces in LDP"; + leaf group-id { + type uint32 { + range "0..4294967295" { + description + "The TE mesh group ID on which to enable LDP"; + } + } + description + "Configure an auto-tunnel mesh group of interfaces in LDP"; + } + } + container all { + presence "Indicates a all node is configured."; + description + "Enable LDP on all TE meshgroup interfaces"; + } + } + } + } + } + container redistribute { + when "../af-name = 'ipv4'"; + description + "Redistribute routes from routing protocols"; + container bgp { + description + "Redistribute routes from BGP protocol"; + leaf as { + type xr:Bgp-as-number; + description + "bgp as-number"; + } + leaf advertise-to { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + description + "IP access list specifying LDP peers to advertise"; + } + } + } + container label { + description + "Configure label control and policies"; + container local { + description + "Configure local label control and policies"; + container allocate { + description + "Configure label allocation control"; + container for { + description + "Limit label allocation to a set of prefixes"; + leaf access-list { + type string { + length "1..1024" { + description + "IP access-list"; + } + } + must "not(../host-routes)"; + description + "IP access-list"; + } + container host-routes { + must "not(../access-list)"; + presence "Indicates a host-routes node is configured."; + description + "Allocate label for host routes only"; + } + } + } + container default-route { + presence "Indicates a default-route node is configured."; + description + "Enable MPLS forwarding for default route"; + } + container implicit-null-override { + description + "Configure use of implicit-null local label for non-egress prefixes"; + leaf for { + type string { + length "1..32" { + description + "IP access-list"; + } + } + description + "Limit implicit-null label use to a set of prefixes"; + } + } + container advertise { + description + "Configure outbound label advertisement control"; + container explicit-null { + must "not(for and to)"; + presence "Indicates a explicit-null node is configured."; + description + "Configure explicit-null advertisement"; + container for { + presence "Indicates a for node is configured."; + description + "IP Access-list specifying controls on destination prefixes"; + leaf access-list { + type string { + length "1..1024" { + description + "IP access-list"; + } + } + mandatory true; + description + "IP Access-list specifying controls on destination prefixes"; + } + container to { + presence "Indicates a to node is configured."; + description + "IP Access-list specifying controls on LDP Peers"; + leaf access-list { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "IP Access-list specifying controls on LDP Peers"; + } + } + } + container to { + presence "Indicates a to node is configured."; + description + "IP Access-list specifying controls on LDP Peers"; + leaf access-list { + type string { + length "1..1024" { + description + "IPv4 access-list (specify peer LSR Ids)"; + } + } + mandatory true; + description + "IP Access-list specifying controls on LDP Peers"; + } + } + } + container to { + description + "Peer centric outbound label filtering"; + list neighbor { + key "neighbor-address label-space-id"; + description + "neighbor"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "neighbor address"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + leaf for { + type string { + length "1..32" { + description + "IP access-list"; + } + } + mandatory true; + description + "IP access-list for prefixes to be sent"; + } + } + } + container interfaces { + description + "Advertise interface host address"; + list interface { + key "interface-name"; + description + "Advertise interface host address"; + leaf interface-name { + type xr:Interface-name; + description + "Advertise interface host address"; + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable label advertisement to all peers for all prefixes"; + } + container for { + description + "Prefix centric outbound label filtering"; + list access-lists { + key "access-list-name"; + description + "Prefix centric outbound label filtering"; + leaf access-list-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "IP access-list"; + } + } + description + "Prefix centric outbound label filtering"; + } + leaf to { + type string { + length "1..1024" { + description + "IP access-list"; + } + } + description + "IP access-list for LDP peers"; + } + } + } + } + } + container remote { + description + "Configure remote/peer label control and policies"; + container accept { + description + "Configure inbound label acceptance control"; + container from { + description + "Neighbor from whom to accept label advertisement"; + list neighbor { + key "neighbor-address label-space-id"; + description + "Neighbor from whom to accept label advertisement"; + leaf neighbor-address { + type inet:ipv4-address-no-zone; + description + "Neighbor from whom to accept label advertisement"; + } + leaf label-space-id { + type uint32 { + range "0" { + description + "Label Space Id of neighbor"; + } + } + description + "Label Space Id of neighbor"; + } + leaf for { + type string { + length "1..32" { + description + "IP access-list"; + } + } + description + "IP access-list for destination prefixes"; + } + } + } + } + } + } + } + } + container interfaces { + description + "Enable LDP on an interface and enter interface submode"; + list interface { + key "interface-name"; + description + "Enable LDP on an interface and enter interface submode"; + leaf interface-name { + type xr:Interface-name; + description + "Enable LDP on an interface and enter interface submode"; + } + container discovery { + description + "Configure discovery parameters"; + container hello { + description + "LDP Link Hellos"; + leaf holdtime { + type uint32 { + range "1..65535" { + description + "Time (seconds) - 65535 implies infinite"; + } + } + description + "Hello holdtime"; + } + leaf interval { + type uint32 { + range "1..65535" { + description + "Time (seconds)"; + } + } + description + "Hello interval"; + } + leaf dual-stack-tlv { + type enumeration { + enum "ipv4" { + value 4; + description + "IPv4"; + } + enum "ipv6" { + value 6; + description + "IPv6"; + } + } + description + "Change AF preference in Dual Stack TLV"; + } + } + container quick-start { + description + "Control quick discovery and initial burst of hello"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable quick discovery"; + } + } + } + container igp { + description + "Configure igp parameters"; + container sync { + description + "Configure LDP-IGP synchronization parameters"; + container delay { + description + "Configure sync up delay"; + container on-session-up { + description + "Interface sync-up delay after session up"; + leaf interface-sync-up-delay { + type uint32 { + range "5..300" { + description + "Interface sync-up delay (seconds)"; + } + } + must "not(../disable)"; + description + "Interface sync-up delay (seconds)"; + } + container disable { + must "not(../interface-sync-up-delay)"; + presence "Indicates a disable node is configured."; + description + "Disable"; + } + } + } + } + } + container address-families { + description + "Configure Address Family and its parameters"; + list address-family { + key "af-name"; + description + "Configure Address Family and its parameters"; + leaf af-name { + type enumeration { + enum "ipv4" { + value 4; + description + "IPv4"; + } + enum "ipv6" { + value 6; + description + "IPv6"; + } + } + description + "Configure Address Family and its parameters"; + } + container discovery { + description + "Configure discovery parameters"; + container transport-address { + must "(interface and not(ip-address)) or (ip-address and not(interface))"; + presence "Indicates a transport-address node is configured."; + description + "Specify interface LDP transport address"; + container interface { + presence "Indicates a interface node is configured."; + description + "Use this interface address as transport address"; + } + leaf ip-address { + type inet:ip-address-no-zone; + description + "IP address to be used as transport address"; + } + } + } + container igp { + description + "Configure igp parameters"; + container auto-config { + description + "Auto-configuration"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable"; + } + } + } + container mldp { + description + "Configure mLDP parameters"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable mLDP on LDP enabled interface"; + } + } + container clone-tunnel { + presence "Indicates a clone-tunnel node is configured."; + description + "Clone tunnels for LDP"; + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-lsd-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-lsd-cfg.yang new file mode 100644 index 000000000..ff8734527 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-lsd-cfg.yang @@ -0,0 +1,280 @@ +module Cisco-IOS-XR-um-mpls-lsd-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mpls-lsd-cfg"; + prefix um-mpls-lsd-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + + 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 mpls-lsd package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-01-28 { + description + "Added cisco-support task yang nodes"; + semver:module-version "3.0.0"; + } + revision 2020-05-20 { + description + "Added blocks node to the model"; + semver:module-version "2.1.0"; + } + revision 2019-10-10 { + description + "Removed unnecessary augments from the model"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-30 { + description + "Initial version"; + } + + container mpls { + description + "Global MPLS configuration subcommands"; + container ip-ttl-propagate { + description + "Propagate IP TTL into the label stack"; + container disable { + must "not(local and forwarded)"; + presence "Indicates a disable node is configured."; + description + "Disable IP TTL propagation"; + container local { + presence "Indicates a local node is configured."; + description + "Disable IP TTL propagation for only locally generated MPLS packets"; + } + container forwarded { + presence "Indicates a forwarded node is configured."; + description + "Disable IP TTL propagation for only forwarded MPLS packets"; + } + } + } + container ipv6 { + description + "Configure IPv6 parameters"; + leaf ttl-expiration-pop { + type uint32 { + range "1..10" { + description + "Number of labels to pop on TTL expiry"; + } + } + description + "Number of labels to pop when MPLS TTL expires"; + } + } + container ipv4 { + description + "Configure IPv4 parameters"; + leaf ttl-expiration-pop { + type uint32 { + range "1..10" { + description + "Number of labels to pop on TTL expiry"; + } + } + description + "Number of labels to pop when MPLS TTL expires"; + } + } + container label { + description + "Label properties"; + container range { + description + "Label range"; + container table-0 { + description + "Specify label table"; + leaf minimum-label { + type uint32 { + range "16000..1048575"; + } + must "../maximum-label"; + description + "Manimum label value"; + } + leaf maximum-label { + type uint32 { + range "16000..1048575"; + } + must "../minimum-label"; + description + "Maximum label value"; + } + container static { + must "../minimum-label"; + presence "Indicates a static node is configured."; + description + "Specify block of labels for static bindings"; + leaf minimum-label { + type uint32 { + range "16..1048575" { + description + "Minimum static label value"; + } + } + mandatory true; + description + "Specify block of labels for static bindings"; + } + leaf maximum-label { + type uint32 { + range "16..1048575" { + description + "Maximum static label value"; + } + } + mandatory true; + description + "Maximum static label value"; + } + } + } + } + container blocks { + description + "Label blocks"; + list block { + must "end or size"; + key "name"; + description + "Block of labels"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of block to configure"; + } + } + description + "Block name (unique identifier)"; + } + leaf type { + type enumeration { + enum "cbf" { + value 3; + description + "CBF block"; + } + enum "pfp" { + value 4; + description + "PFP block"; + } + } + mandatory true; + description + "Type of block to configure"; + } + leaf start { + type uint32 { + range "16000..1048575" { + description + "Block lower bound"; + } + } + mandatory true; + description + "Start of block range"; + } + leaf end { + type uint32 { + range "120..1048575" { + description + "Block upper bound"; + } + } + must "not(../size)"; + description + "End of block range"; + } + leaf size { + type uint32 { + range "1..1032576" { + description + "Block size"; + } + } + must "not(../end)"; + description + "Size of the block"; + } + leaf client { + type xr:Cisco-ios-xr-string { + length "1..48" { + description + "Name of the client instance"; + } + } + mandatory true; + description + "Block client"; + } + } + } + } + container lsd { + description + "MPLS LSD process command"; + container ltrace-buffer { + description + "MPLS LSD LTrace buffer files"; + leaf multiplier { + type uint32 { + range "2..5" { + description + "Multiplier factor"; + } + } + description + "Ltrace buffer file size multiplier"; + } + } + container app-reg-delay { + description + "Application registration delay"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable delay for regular applications' registration"; + } + } + } + container entropy-label { + presence "Indicates a entropy-label node is configured."; + description + "Enable MPLS entropy label"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-oam-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-oam-cfg.yang new file mode 100644 index 000000000..bed0aaf72 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-oam-cfg.yang @@ -0,0 +1,139 @@ +module Cisco-IOS-XR-um-mpls-oam-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mpls-oam-cfg"; + prefix um-mpls-oam-cfg; + + 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 mpls-oam package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-06-11 { + description + "Added revision node and downstream-ecmp-faults node support"; + semver:module-version "1.1.0"; + } + revision 2020-04-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container mpls { + description + "Global MPLS configuration subcommands"; + container oam { + presence "Indicates a oam node is configured."; + description + "OAM configuration"; + container echo { + description + "Echo request attributes"; + container disable-vendor-extension { + presence "Indicates a disable-vendor-extension node is configured."; + description + "Disable sending vendor extension TLV with echo req"; + } + container reply-mode { + description + "Echo request reply mode attributes"; + container control-channel { + description + "Configure control channel reply mode"; + container allow-reverse-lsp { + presence "Indicates a allow-reverse-lsp node is configured."; + description + "Use Reverse LSP as the control channel"; + } + } + } + container revision { + description + "Echo packet default revision"; + container one { + must + "not(../two or ../three + or ../four)"; + presence "Indicates a one node is configured."; + description + "draft-ietf-mpls-lsp-ping-03 (initial)"; + } + container two { + must + "not(../one or ../three + or ../four)"; + presence "Indicates a two node is configured."; + description + "draft-ietf-mpls-lsp-ping-03 (rev 1)"; + } + container three { + must + "not(../one or ../two + or ../four)"; + presence "Indicates a three node is configured."; + description + "draft-ietf-mpls-lsp-ping-03 (rev 2)"; + } + container four { + must + "not(../one or ../two + or ../three)"; + presence "Indicates a four node is configured."; + description + "draft-ietf-mpls-lsp-ping-09 (initial)"; + } + } + } + container dpm { + presence "Indicates a dpm node is configured."; + description + "data plane monitoring"; + leaf pps { + type uint32 { + range "1..250" { + description + "Rate limit in packets per second - default is 50pps"; + } + } + description + "DPM packets per second rate - default is 50pps"; + } + leaf interval { + type uint32 { + range "1..3600" { + description + "Gap in minutes - default is 30 mins"; + } + } + description + "Wait time between each iteration of DPM - default is 30mins"; + } + container downstream-ecmp-faults { + presence "Indicates a downstream-ecmp-faults node is configured."; + description + "Report downstream mismatches"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-static-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-static-cfg.yang new file mode 100644 index 000000000..9a4c32ccf --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-static-cfg.yang @@ -0,0 +1,879 @@ +module Cisco-IOS-XR-um-mpls-static-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mpls-static-cfg"; + prefix um-mpls-static-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 mpls-static package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-10-03 { + description + "Added support for disabling default route for resolve nexthops globally."; + semver:module-version "1.1.0"; + } + revision 2021-08-05 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container mpls { + description + "Global MPLS configuration subcommands"; + container static { + presence "Indicates a static node is configured."; + description + "MPLS Static label and LSP configuration commands"; + container interfaces { + description + "Enable MPLS Static on an interface"; + list interface { + key "interface-name"; + description + "Enable MPLS Static on an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Enable MPLS Static on an interface"; + } + } + } + container vrfs { + description + "Configure VRF parameters"; + list vrf { + key "vrf-name"; + description + "Configure VRF parameters"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Specify the VRF Name"; + } + } + description + "Configure VRF parameters"; + } + container address-family { + description + "Configure Address Family and its parameters"; + container ipv4 { + description + "Configure IPv4 Address Family parameters"; + container unicast { + presence "Indicates a unicast node is configured."; + description + "Unicast"; + container local-labels { + description + "Configure local label assignment and forwarding"; + list local-label { + must "allocate/per-prefix or allocate/per-vrf/enable"; + key "label-value"; + description + "Configure local label assignment and forwarding"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "Label value"; + } + } + description + "Configure local label assignment and forwarding"; + } + container allocate { + description + "Label Allocation Option"; + container per-prefix { + must "not(../per-vrf/enable)"; + presence "Indicates a per-prefix node is configured."; + description + "For a given prefix"; + leaf prefix-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 Prefix address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + mandatory true; + description + "IPv4 Prefix length"; + } + } + container per-vrf { + description + "For a VRF"; + container enable { + presence "Indicates an enable node is configured."; + description + "For a VRF"; + } + container forward { + description + "Configure forwarding rewrites"; + list path { + must "../../enable and pop-and-lookup"; + key "path-count"; + description + "Configure path parameters"; + leaf path-count { + type uint32 { + range "1" { + description + "Path count"; + } + } + description + "Configure path parameters"; + } + container pop-and-lookup { + presence "Indicates a pop-and-lookup node is configured."; + description + "Pop and lookup"; + } + } + } + } + } + } + } + } + } + } + container lsps { + description + "Configure lsp name"; + list lsp { + key "lsp-name"; + description + "Configure lsp name"; + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify the LSP Name"; + } + } + description + "Configure lsp name"; + } + container in-label { + presence "Indicates a in-label node is configured."; + description + "Configure in label assignment and forwarding"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "Label value"; + } + } + mandatory true; + description + "Configure in label assignment and forwarding"; + } + container allocate { + description + "Label Allocation Option"; + container per-prefix { + must "not(../per-vrf)"; + presence "Indicates a per-prefix node is configured."; + description + "For a given prefix"; + leaf prefix-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IPv4 or IPv6 Prefix address"; + } + leaf prefix-length { + type union { + type xr:Ipv4-prefix-length; + type xr:Ipv6-prefix-length; + } + mandatory true; + description + "Prefix length"; + } + } + container per-vrf { + must "not(../per-prefix)"; + presence "Indicates a per-vrf node is configured."; + description + "For a VRF"; + } + } + } + container forward { + description + "Configure forwarding rewrites"; + list path { + must "pop-and-lookup"; + key "path-count"; + description + "Configure path parameters"; + leaf path-count { + type uint32 { + range "1" { + description + "Path count"; + } + } + description + "Configure path parameters"; + } + container pop-and-lookup { + presence "Indicates a pop-and-lookup node is configured."; + description + "Pop and lookup"; + } + } + } + } + } + } + } + container address-family { + description + "Configure Address Family and its parameters"; + container ipv4 { + description + "Configure IPv4 Address Family parameters"; + container unicast { + presence "Indicates a unicast node is configured."; + description + "Unicast"; + container local-labels { + description + "Configure local label assignment and forwarding"; + list local-label { + must "allocate"; + key "label-value"; + description + "Configure local label assignment and forwarding"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "Label value"; + } + } + description + "Configure local label assignment and forwarding"; + } + container allocate { + presence "Indicates a nexthop node is configured."; + description + "Label Allocation Option"; + container per-prefix { + description + "For a given prefix"; + leaf prefix-address { + type inet:ipv4-address-no-zone; + must "../prefix-length"; + description + "IPv4 Prefix address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + must "../prefix-address"; + description + "IPv4 Prefix length"; + } + } + } + container forward { + description + "Configure forwarding rewrites"; + list path { + must "nexthop and nexthop/out-label"; + key "path-count"; + description + "Configure path parameters"; + leaf path-count { + type uint32 { + range "1" { + description + "Path count"; + } + } + description + "Configure path parameters"; + } + container nexthop { + must "address or interface"; + presence "Indicates a nexthop node is configured."; + description + "nexthop"; + leaf address { + type inet:ipv4-address-no-zone; + description + "nexthop"; + } + leaf interface { + type xr:Interface-name; + description + "Next-hop interface"; + } + container out-label { + must "label-value or pop or explicit-null"; + presence "Indicates a out-label node is configured."; + description + "Outgoing label"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "MPLS label value"; + } + } + must "not(../pop or ../explicit-null)"; + description + "MPLS label value"; + } + container pop { + must "not(../label-value or ../explicit-null)"; + presence "Indicates a pop node is configured."; + description + "Pop off the top of the label stack"; + } + container explicit-null { + must "not(../label-value or ../pop)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + } + } + } + } + } + } + container top-label-hash { + description + "Configure top label hash entries"; + container local-labels { + description + "Configure local label assignment and forwarding"; + list local-label { + must "allocate/enable"; + key "label-value"; + description + "Configure local label assignment and forwarding"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "Label value"; + } + } + description + "Configure local label assignment and forwarding"; + } + container allocate { + description + "Label Allocation Option"; + container enable { + presence "Indicates a allocate node is configured."; + description + "Label Allocation Option"; + } + container forward { + description + "Configure forwarding rewrites"; + list path { + must "nexthop and nexthop/out-label"; + key "path-count"; + description + "Configure path parameters"; + leaf path-count { + type uint32 { + range "1" { + description + "Path count"; + } + } + description + "Configure path parameters"; + } + container nexthop { + must "address or interface"; + presence "Indicates a nexthop node is configured."; + description + "nexthop"; + leaf address { + type inet:ipv4-address-no-zone; + description + "nexthop"; + } + leaf interface { + type xr:Interface-name; + description + "Next-hop Interface"; + } + container out-label { + must "label-value or pop or explicit-null"; + presence "Indicates a out-label node is configured."; + description + "Outgoing label"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "MPLS label value"; + } + } + must "not(../pop or ../explicit-null)"; + description + "MPLS label value"; + } + container pop { + must "not(../label-value or ../explicit-null)"; + presence "Indicates a pop node is configured."; + description + "Pop off the top of the label stack"; + } + container explicit-null { + must "not(../label-value or ../pop)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + } + } + } + } + } + } + } + } + } + } + } + container lsps { + description + "Configure lsp name"; + list lsp { + key "lsp-name"; + description + "Configure lsp name"; + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify the LSP Name"; + } + } + description + "Configure lsp name"; + } + container in-label { + presence "Indicates a in-label node is configured."; + description + "Configure in label assignment and forwarding"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "Label value"; + } + } + mandatory true; + description + "Configure in label assignment and forwarding"; + } + container allocate { + presence "Indicates a allocate node is configured."; + description + "Label Allocation Option"; + container per-prefix { + presence "Indicates a per-prefix node is configured."; + description + "For a given prefix"; + leaf prefix-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IPv4 or IPv6 Prefix address"; + } + leaf prefix-length { + type union { + type xr:Ipv4-prefix-length; + type xr:Ipv6-prefix-length; + } + mandatory true; + description + "Prefix length"; + } + } + container top-label-hash { + must "not(../per-prefix)"; + presence "Indicates a top-label-hash node is configured."; + description + "Configure top label hash entries for this LSP"; + } + } + } + container resolve-options { + description + "Configure resolve-nexthop options"; + container disable-default-route { + presence "Indicates a disable-default-route node is configured."; + description + "Disable RIB default route"; + } + } + container forward { + description + "Configure forwarding rewrites"; + list path { + must "nexthop or resolve-nexthop"; + key "path-count"; + description + "Configure path parameters"; + leaf path-count { + type uint32 { + range "1..16" { + description + "Path count"; + } + } + description + "Configure path parameters"; + } + container resolve-nexthop { + must "(ipv4-address or ipv6-address) and not(../nexthop)"; + presence "Indicates a resolve-nexthop node is configured."; + description + "RIB path resolution mode"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "Next-hop IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "Next-hop IPv6 address"; + } + container out-label { + must "label-value or pop or explicit-null or ipv6-explicit-null"; + presence "Indicates a out-label node is configured."; + description + "Outgoing label"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "MPLS label value"; + } + } + must "not(../pop or ../explicit-null or ../ipv6-explicit-null)"; + description + "MPLS label value"; + } + container pop { + must "not(../label-value or ../explicit-null or ../ipv6-explicit-null)"; + presence "Indicates a pop node is configured."; + description + "Pop off the top of the label stack"; + } + container explicit-null { + must "not(../label-value or ../pop or ../ipv6-explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + container ipv6-explicit-null { + must "not(../label-value or ../pop or ../explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + } + } + container nexthop { + must "ipv4-address or ipv6-address or interface"; + presence "Indicates a nexthop node is configured."; + description + "nexthop"; + leaf interface { + type xr:Interface-name; + description + "Next-hop Interface"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "Next-hop IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "Next-hop IPv6 address"; + } + container out-label { + must "label-value or pop or explicit-null or ipv6-explicit-null"; + presence "Indicates a out-label node is configured."; + description + "Outgoing label"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "MPLS label value"; + } + } + must "not(../pop or ../explicit-null or ../ipv6-explicit-null)"; + description + "MPLS label value"; + } + container pop { + must "not(../label-value or ../explicit-null or ../ipv6-explicit-null)"; + presence "Indicates a pop node is configured."; + description + "Pop off the top of the label stack"; + } + container explicit-null { + must "not(../label-value or ../pop or ../ipv6-explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + container ipv6-explicit-null { + must "not(../label-value or ../pop or ../explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + } + container backup { + must "not(../primary-and-backup)"; + presence "Indicates a backup node is configured."; + description + "Path acts as backup only"; + } + container primary-and-backup { + must "not(../backup)"; + presence "Indicates a primary-and-backup node is configured."; + description + "Path acts as primary and backup simultaneously"; + } + leaf backup-id { + type uint32 { + range "1..16" { + description + "Backup path ID"; + } + } + must "not(../backup)"; + description + "Path ID of the backup path to protect this path"; + } + } + } + } + container backup { + description + "Configure forwarding backup rewrites"; + list path { + must "nexthop or resolve-nexthop"; + key "path-count"; + description + "Configure path parameters"; + leaf path-count { + type uint32 { + range "1..16" { + description + "Path count"; + } + } + description + "Configure path parameters"; + } + container resolve-nexthop { + must "(ipv4-address or ipv6-address) and not(../nexthop)"; + presence "Indicates a resolve-nexthop node is configured."; + description + "RIB path resolution mode"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "Next-hop IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "Next-hop IPv6 address"; + } + container out-label { + must "label-value or pop or explicit-null or ipv6-explicit-null"; + presence "Indicates a out-label node is configured."; + description + "Outgoing label"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "MPLS label value"; + } + } + must "not(../pop or ../explicit-null or ../ipv6-explicit-null)"; + description + "MPLS label value"; + } + container pop { + must "not(../label-value or ../explicit-null or ../ipv6-explicit-null)"; + presence "Indicates a pop node is configured."; + description + "Pop off the top of the label stack"; + } + container explicit-null { + must "not(../label-value or ../pop or ../ipv6-explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + container ipv6-explicit-null { + must "not(../label-value or ../pop or ../explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + } + } + container nexthop { + must "ipv4-address or ipv6-address or interface"; + presence "Indicates a nexthop node is configured."; + description + "nexthop"; + leaf interface { + type xr:Interface-name; + description + "Next-hop Interface"; + } + leaf ipv4-address { + type inet:ipv4-address-no-zone; + must "not(../ipv6-address)"; + description + "Next-hop IPv4 address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + must "not(../ipv4-address)"; + description + "Next-hop IPv6 address"; + } + container out-label { + must "label-value or pop or explicit-null or ipv6-explicit-null"; + presence "Indicates a out-label node is configured."; + description + "Outgoing label"; + leaf label-value { + type uint32 { + range "16..1048575" { + description + "MPLS label value"; + } + } + must "not(../pop or ../explicit-null or ../ipv6-explicit-null)"; + description + "MPLS label value"; + } + container pop { + must "not(../label-value or ../explicit-null or ../ipv6-explicit-null)"; + presence "Indicates a pop node is configured."; + description + "Pop off the top of the label stack"; + } + container explicit-null { + must "not(../label-value or ../pop or ../ipv6-explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + container ipv6-explicit-null { + must "not(../label-value or ../pop or ../explicit-null)"; + presence "Indicates a explicit-null node is configured."; + description + "Set the outgoing label to ipv4 explicit-null"; + } + } + container backup { + must "not(../primary-and-backup)"; + presence "Indicates a backup node is configured."; + description + "Path acts as backup only"; + } + container primary-and-backup { + must "not(../backup)"; + presence "Indicates a primary-and-backup node is configured."; + description + "Path acts as primary and backup simultaneously"; + } + leaf backup-id { + type uint32 { + range "1..16" { + description + "Backup path ID"; + } + } + must "not(../backup)"; + description + "Path ID of the backup path to protect this path"; + } + } + } + } + } + } + container resolve-options { + description + "Configure resolve-nexthop options"; + container disable-default-route { + presence "Indicates a disable-default-route node is configured."; + description + "Disable RIB default route"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-te-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-te-cfg.yang new file mode 100644 index 000000000..b6f2f38eb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-mpls-te-cfg.yang @@ -0,0 +1,21886 @@ +module Cisco-IOS-XR-um-mpls-te-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-mpls-te-cfg"; + prefix um-mpls-te-cfg; + + import cisco-semver { + prefix semver; + } + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a2; + } + import tailf-common { + prefix tailf; + } + + 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 mpls-te package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-08 { + description + "Updated autocapacity under numbered tunnel + 2022-11-07 + Changed path-selection/ignore/overload as presence and added must + 2022-10-25 + Updated affinity-attribute to be type Hex-integer + 2022-07-11 + Added missing description statement to nodes + 2022-05-23 + Added container self-ping under tunnel-te + 2022-02-01 + Added signalled-bandwidth and soft-preemption support for auto-backup + 2021-11-17 + Added bfd and path protection support for named tunnels"; + semver:module-version "3.0.0"; + } + revision 2021-07-15 { + description + "Removed presence statement of 2 timers nodes under traffic-eng, + Removed presence statement of auto-tunnel container + 2021-07-09 + Added bandwidth-protection/maximum-aggregate nodes under backup container"; + semver:module-version "2.1.0"; + } + revision 2021-04-14 { + description + "new container reopt is added under pce + 2021-02-19 + Added presence statement in ospf container and removed presence and + must statement from area container + 2021-02-15 + Added yang nodes for new mib commands + 2021-01-28 + Added cisco-support task yang nodes + 2021-01-15 + Add mandatory flag in min node under overflow, adjustment-threshold and + underflow container. + Added tunnel-mte specific config container. + Added backoff-timer under mpls->traffic-eng. + 2020-12-03 + Removed leaf hold-backup and containers maxabs, ltrace-buffer and its + child nodes as these are used internally with cisco-support task."; + semver:module-version "2.0.0"; + } + revision 2020-05-26 { + description + "- removed pce under the dynamic path-option for interface + - added s2l-setup under timers + - added path-error under lsp-status for named-tunnels + - added redundancy under timers for stateful-client"; + } + revision 2019-07-08 { + description + "- removed augmentation to interface-preconfigure as tunnel logical + interfaces are not allowed to configure as interface preconfig"; + } + revision 2019-06-11 { + description + "- Split area list node under gmpls/optical-nni/topology/instance/opsf + into two list nodes + - Added necessary constraints (must, mandatory) under + gmpls/../path-option"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-03-30 { + description + "Initial version"; + } + + typedef policy-class-type { + type enumeration { + enum "1" { + value 1; + description + "1"; + } + enum "2" { + value 2; + description + "2"; + } + enum "3" { + value 3; + description + "3"; + } + enum "4" { + value 4; + description + "4"; + } + enum "5" { + value 5; + description + "5"; + } + enum "6" { + value 6; + description + "6"; + } + enum "7" { + value 7; + description + "7"; + } + enum "default" { + value 8; + description + "default value must be set alone"; + } + } + description + "Tunnel policy class Value(s)"; + } + + grouping IF-BODY { + description + "Grouping for interface"; + container affinity { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Link attributes for links traversed by tunnel"; + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include2 { + key "name1 name2"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include2 { + key "name1 name2"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude2 { + key "name1 name2"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + leaf affinity-attribute-value { + type xr:Hex-integer; + description + "Affinity attribute value"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity attribute mask value"; + } + } + container autoroute { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Parameters for IGP routing over tunnel"; + container announce { + presence "Indicates a announce node is configured."; + description + "Announce tunnel to IGP"; + container metric { + description + "Specify MPLS tunnel metric"; + leaf absolute { + type uint32 { + range "1..2147483647" { + description + "Absolute metric"; + } + } + description + "Set metric mode absolute"; + } + leaf relative { + type int32 { + range "-10..10" { + description + "Relative metric"; + } + } + description + "Set metric mode relative"; + } + leaf constant-metric { + type uint32 { + range "1..2147483647" { + description + "Set constant metric"; + } + } + description + "Set constant metric"; + } + } + container include-ipv6 { + presence "Indicates a include-ipv6 node is configured."; + description + "Announce tunnel as an IPv6 AA also"; + } + container exclude-traffic { + description + "Exclude the type of traffic that goes through AA"; + container segment-routing { + presence "Indicates a segment-routing node is configured."; + description + "Exclude segment-routing traffic from the autoroute announced tunnel"; + } + } + } + container destinations { + description + "Adds static route to destination"; + list destination { + key "address"; + description + "Adds static route to destination"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Adds static route to destination"; + } + } + } + } + container backup-bw { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + must "(bandwidth) or ((pool-type or class-type) and (bandwidth or unlimited))"; + presence "Indicates a backup-bw node is configured."; + description + "Fast-reroute backup bandwidth requirement"; + leaf pool-type { + type enumeration { + enum "any-pool" { + value 1; + description + "default/any-pool bandwidth"; + } + enum "global-pool" { + value 2; + description + "global-pool bandwidth"; + } + enum "sub-pool" { + value 4; + description + "sub-pool bandwidth"; + } + } + must "not(../class-type)"; + description + "Configure pool type for backup bandwidth"; + } + leaf class-type { + type enumeration { + enum "0" { + value 0; + description + "class type 0"; + } + enum "1" { + value 1; + description + "class type 1"; + } + enum "any" { + value 9; + description + "any class type"; + } + } + must "not(../pool-type)"; + description + "Specify the bandwidth class type"; + } + leaf bandwidth { + type uint32 { + range "1..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + must "not(../unlimited)"; + description + "Bandwidth requirement in kbps"; + } + container unlimited { + must "not(../bandwidth)"; + presence "Indicates a unlimited node is configured."; + description + "Unlimited backup bandwidth"; + } + } + container signalled-bandwidth { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + must "not(class-type and sub-pool)"; + presence "Indicates a signalled-bandwidth node is configured."; + description + "Tunnel bandwidth requirement to be signalled"; + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + mandatory true; + description + "Bandwidth requirement in kbps"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the bandwidth class type"; + } + container sub-pool { + when "../bandwidth != 0"; + presence "Indicates a sub-pool node is configured."; + description + "Specify sub-pool bandwidth"; + } + } + container fast-reroute { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a fast-reroute node is configured."; + description + "Specify MPLS tunnel can be fast-rerouted"; + container protect { + description + "Enable protection request"; + container node { + presence "Indicates a node node is configured."; + description + "Enable node protection request"; + } + container bandwidth { + presence "Indicates a bandwidth node is configured."; + description + "Enable bandwidth protection request"; + } + } + } + leaf forward-class { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + type uint32 { + range "0..7" { + description + "Forward class for the tunnel (default value 0)"; + } + } + description + "Forward class for the tunnel (default value 0)"; + } + container forwarding-adjacency { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a forwarding-adjacency node is configured."; + description + "Enable tunnel as a forwarding-adjacency and enter its submode"; + leaf holdtime { + type uint32 { + range "0..20000" { + description + "Hold time in ms"; + } + } + description + "Hold time in ms"; + } + container include-ipv6 { + presence "Indicates a include-ipv6 node is configured."; + description + "Announce tunnel as an IPv6 FA also"; + } + } + leaf load-share { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + type uint32 { + range "1..4294967295" { + description + "Loadshare value. Scale is the same as bandwidths."; + } + } + description + "Specify tunnel load-sharing metric"; + } + container logging { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable interface LSP REOPT change alarms"; + } + container reoptimize-attempts { + presence "Indicates a reoptimize-attempts node is configured."; + description + "Enable interface LSP REOPT attempts change alarms"; + } + container bw-change { + presence "Indicates a bw-change node is configured."; + description + "Enable interface LSP BANDWIDTH change alarms"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable interface LSP REROUTE change alarms"; + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Enable interface LSP RECORD-ROUTE change alarms"; + } + container switchover { + presence "Indicates a switchover node is configured."; + description + "Enable interface LSP SWITCHOVER change alarms"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup/reopt failure due to bandwidth"; + } + } + container pcalc-failure { + presence "Indicates a pcalc-failure node is configured."; + description + "Enable logging for path calculation failures"; + } + container bfd-status { + presence "Indicates a bfd-status node is configured."; + description + "Enable BFD session state change alarms"; + } + container all { + presence "Indicates a all node is configured."; + description + "Enable all logging for this tunnel"; + } + } + } + leaf signalled-name { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + type xr:Cisco-ios-xr-string { + length "1..254" { + description + "The name to be included in signaling (max 254 characters)"; + } + } + description + "The signaling name to assign to tunnel"; + } + container path-options { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Primary or fallback path setup option"; + list path-option { + key "preference"; + description + "Primary or fallback path setup option"; + leaf preference { + type uint32 { + range "1..1000" { + description + "Preference for this path option"; + } + } + description + "Preference for this path option"; + } + container dynamic { + presence "Indicates a dynamic node is configured."; + description + "Setup based on dynamically allocated path"; + } + container explicit { + must "identifier or name"; + presence "Indicates a explicit node is configured."; + description + "Setup based on preconfigured path"; + leaf identifier { + type uint32 { + range "1..65535" { + description + "Specify an IP explicit path by number"; + } + } + description + "Specify an IP explicit path by number"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Specify an IP explicit path by name"; + } + } + description + "Specify an IP explicit path by name"; + } + container verbatim { + presence "Indicates a verbatim node is configured."; + description + "Do not require topology database for explicit path"; + } + } + container ospf { + presence "Indicates a ospf node is configured."; + description + "Limit CSPF to a single OSPF instance and area"; + leaf instance-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "OSPF instance name"; + } + } + description + "OSPF instance name"; + } + container area { + description + "OSPF area"; + leaf decimal { + type uint32 { + range "0..4294967295" { + description + "OSPF area ID as a decimal value"; + } + } + description + "OSPF area ID as a decimal value"; + } + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "OSPF area ID in IP address format"; + } + } + } + container isis { + presence "Indicates a isis node is configured."; + description + "Limit CSPF to a single IS-IS instance and area"; + leaf instance-name { + type xr:Cisco-ios-xr-string { + length "1..40" { + description + "IS-IS instance name"; + } + } + description + "IS-IS instance name"; + } + leaf level { + type uint32 { + range "1..2" { + description + "IS-IS level"; + } + } + must "../instance-name"; + description + "IS-IS level"; + } + } + container attribute-set { + description + "Attribute set for this LSP"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 64 char)"; + } + } + description + "Specify attribute-set name (max 64 char)"; + } + } + container protected-by { + description + "Path protection using a specific path-option"; + leaf index { + type uint32 { + range "1..1000" { + description + "Index of the protecting path-option"; + } + } + description + "Index of the protecting path-option"; + } + } + container lockdown { + presence "Indicates a lockdown node is configured."; + description + "Not a candidate for reoptimization"; + container sticky { + presence "Indicates a sticky node is configured."; + description + "Force tunnel to remain on the same path"; + } + } + } + } + container priority { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a priority node is configured."; + description + "Tunnel priority"; + leaf setup-priority { + type uint32 { + range "0..7" { + description + "Setup Priority"; + } + } + mandatory true; + description + "Tunnel priority"; + } + leaf hold-priority { + type uint32 { + range "0..7" { + description + "Hold Priority"; + } + } + mandatory true; + description + "Hold Priority"; + } + } + container record-route { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a record-route node is configured."; + description + "Record the route used by the tunnel"; + } + container binding-sid { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Binding Segment Identifier"; + container mpls { + presence "Indicates a mpls node is configured."; + description + "Use MPLS label as binding segment identifier"; + leaf label { + type uint32 { + range "16..4015" { + description + "MPLS label"; + } + } + description + "Specify label value"; + } + } + } + container policy-class { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Specify classs for policy-based tunnel selection"; + container tunnel-policy-class-values { + description + "Tunnel policy class Value(s)"; + leaf-list tunnel-policy-class-value { + type policy-class-type; + max-elements "7"; + description + "Tunnel policy class Value(s)"; + } + } + } + container auto-bw { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a auto-bw node is configured."; + description + "Enable tunnel auto-bandwidth and enter its submode"; + leaf application { + type uint32 { + range "5..10080" { + description + " Auto-bw application frequency (minutes)"; + } + } + description + "Set the tunnel auto-bw application frequency"; + } + container bw-limit { + description + "Set min/max bandwidth auto-bw can apply on a tunnel"; + leaf min { + type uint32 { + range "0..4294967295" { + description + "Minimum bandwidth to apply (kbps)"; + } + } + description + "Set minimum bandwidth auto-bw can apply on a tunnel"; + } + leaf max { + type uint32 { + range "0..4294967295" { + description + "Maximum bandwidth to apply (kbps)"; + } + } + description + "Set maximum bandwidth auto-bw can apply on a tunnel"; + } + } + container collect-bw-only { + presence "Indicates a collect-bw-only node is configured."; + description + "Enable bandwidth collection only, no auto-bw adjustment"; + } + container adjustment-threshold { + presence "Indicates a adjustment-threshold node is configured."; + description + "Set the bandwidth change threshold to trigger adjustment"; + leaf threshold { + type uint32 { + range "1..100" { + description + "Bandwidth change percent to trigger adjustment"; + } + } + mandatory true; + description + "Set the bandwidth change threshold to trigger adjustment"; + } + leaf min { + type uint32 { + range "10..4294967295" { + description + "Bandwidth change value to trigger adjustment (kbps)"; + } + } + mandatory true; + description + "Set the bandwidth change value to trigger adjustment"; + } + } + container overflow { + presence "Indicates a overflow node is configured."; + description + "Configuring the tunnel overflow detection"; + leaf threshold { + type uint32 { + range "1..100" { + description + "Bandwidth change percent to trigger an overflow"; + } + } + mandatory true; + description + "Set the bandwidth change percent to trigger an overflow"; + } + leaf min { + type uint32 { + range "10..4294967295" { + description + "Bandwidth change value to trigger an overflow (kbps)"; + } + } + mandatory true; + description + "Set the bandwidth change value to trigger an overflow"; + } + leaf limit { + type uint32 { + range "1..10" { + description + "Number of consecutive collections exceeding threshold"; + } + } + mandatory true; + description + "Set the number of consecutive collections exceeding threshold"; + } + } + container underflow { + presence "Indicates a underflow node is configured."; + description + "Configuring the tunnel underflow detection"; + leaf threshold { + type uint32 { + range "1..100" { + description + "Bandwidth change percent to trigger an underflow"; + } + } + mandatory true; + description + "Set the bandwidth change percent to trigger an underflow"; + } + leaf min { + type uint32 { + range "10..4294967295" { + description + "Bandwidth change value to trigger an underflow (kbps)"; + } + } + mandatory true; + description + "Set the bandwidth change value to trigger an underflow"; + } + leaf limit { + type uint32 { + range "1..10" { + description + "Number of consecutive collections exceeding threshold"; + } + } + mandatory true; + description + "Set the number of consecutive collections exceeding threshold"; + } + } + container resignal { + description + "Configure the tunnel resignal parameters after going down"; + container last-bandwidth { + description + "Configure the tunnel to use last applied bandwidth after going down"; + leaf time-out { + type uint32 { + range "1..3600000" { + description + "time-out value to trigger a reset of the requested bandwidth (seconds)"; + } + } + description + "Set the bandwidth resignal time-out value (in seconds) After this time the tunnel will be signaled with the configured bandwidth"; + } + } + } + container auto-capacity { + presence "Indicates a auto-capacity node is configured."; + description + "Enable auto-capacity and enter its submode"; + leaf min-clones { + type uint32 { + range "0..63" { + description + "Range of auto-capacity min clones (default 0)"; + } + } + description + "Lower limit on the number of clones that can be created for a given tunnel"; + } + leaf max-clones { + type uint32 { + range "0..63" { + description + "Range of auto-capacity max clones (default 63)"; + } + } + description + "Upper limit on the number of clones that can be created for a given tunnel"; + } + leaf split-bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth in kbps"; + } + } + description + "Split bandwidth in kbps"; + } + leaf merge-bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth in kbps"; + } + } + description + "Merge bandwidth in kbps"; + } + leaf nominal-bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth in kbps"; + } + } + description + "Bandwidth in kbps used to compute the number of tunnels when merging or splitting "; + } + } + } + container path-protection { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a path-protection node is configured."; + description + "Enable the path protection feature on this tunnel"; + container srlg-diverse { + presence "Indicates a srlg-diverse node is configured."; + description + "Enforce SRLG diversity for protecting LSP"; + } + container protection-mode { + description + "Configure Path Protection mode"; + container non-revertive { + presence "Indicates a non-revertive node is configured."; + description + "Enable Non-Revertive mode"; + } + } + } + container soft-preemption { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a soft-preemption node is configured."; + description + "Enable the soft-preemption feature on this tunnel"; + } + container delay-measurement { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a delay-measurement node is configured."; + description + "Enable the delay-measurement feature on this tunnel"; + } + container pce { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Config PCE parameters"; + container delegation { + presence "Indicates a delegation node is configured."; + description + "Enable PCE delegation"; + } + container reopt { + must "../delegation"; + presence "Indicates a reopt node is configured."; + description + "Enable local reopt for PCE delegation"; + } + } + container path-selection { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Path Selection Configuration"; + container metric { + must "igp or te or delay"; + presence "Indicates a metric node is configured."; + description + "Metric Type for path calculation"; + container igp { + presence "Indicates a igp node is configured."; + description + "Use IGP metric"; + } + container te { + presence "Indicates a te node is configured."; + description + "Use TE metric"; + } + container delay { + presence "Indicates a delay node is configured."; + description + "Use delay metric"; + } + } + container tiebreaker { + must "min-fill or max-fill or random"; + presence "Indicates a tiebreaker node is configured."; + description + "Equal cost multipath tiebreaker for path calculation (default: min-fill)."; + container min-fill { + presence "Indicates a min-fill node is configured."; + description + "Prefer the path with the least-utilized links"; + } + container max-fill { + presence "Indicates a max-fill node is configured."; + description + "Prefer the path with the most-utilized links"; + } + container random { + presence "Indicates a random node is configured."; + description + "Prefer a path with links utilized randomly"; + } + } + leaf hop-limit { + type uint32 { + range "1..255" { + description + "Hop limit"; + } + } + description + "Hop limit configuration"; + } + leaf cost-limit { + type uint32 { + range "1..4294967295" { + description + "Cost limit"; + } + } + description + "Cost limit configuration"; + } + leaf delay-limit { + type uint32 { + range "1..4294967295" { + description + "Delay limit in usec"; + } + } + description + "Delay limit configuration"; + } + } + container bidirectional { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a bidirectional node is configured."; + description + "Configure bidirectional LSPs"; + container association { + description + "Specify association parameters"; + container id { + presence "Indicates a id node is configured."; + description + "Unique association ID"; + leaf association-id { + type uint32 { + range "0..65535" { + description + "Association ID"; + } + } + mandatory true; + description + "Unique association ID"; + } + leaf source-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Source IP address"; + } + leaf global-id { + type uint32 { + range "0..4294967295" { + description + "Global ID"; + } + } + description + "Global ID for association global source"; + } + } + container type { + description + "Association type"; + container co-routed { + presence "Indicates a co-routed node is configured."; + description + "Co-routed LSPs (with bidirectional CSPF)"; + container fault-oam { + presence "Indicates a fault-oam node is configured."; + description + "Enable fault OAM"; + } + container wrap-protection { + presence "Indicates a wrap-protection node is configured."; + description + "Enable LSP Wrap protection feature"; + } + container signaling { + description + "Signaling configuration"; + container protection-object { + description + "RSVP Protection Object signaling"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable signaling of RSVP Protection Object"; + } + } + } + } + } + } + } + container bfd { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + presence "Indicates a bfd node is configured."; + description + "Configure BFD parameters"; + container fast-detect { + presence "Indicates a fast-detect node is configured."; + description + "Enable BFD fast detection"; + container sbfd { + presence "Indicates a sbfd node is configured."; + description + "Enable SBFD"; + } + } + leaf minimum-interval { + type uint32 { + range "3..30000" { + description + "Hello interval in milliseconds (default 100), lower bound is 50ms for non-GAL BFD sessions"; + } + } + description + "Hello interval"; + } + leaf multiplier { + type uint32 { + range "3..10" { + description + "Detect multiplier (default 3)"; + } + } + description + "Detect multiplier"; + } + leaf bringup-timeout { + type uint32 { + range "10..3600" { + description + "Wait for session to come up in seconds (default 60)"; + } + } + description + "Timeout before BFD session bring up on new LSP is aborted"; + } + container lsp-ping { + description + "Configure periodic LSP ping"; + leaf interval { + type uint32 { + range "60..3600" { + description + "Periodic LSP Ping interval in seconds (default 120)"; + } + } + description + "Periodic LSP ping interval"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable periodic LSP Ping"; + } + } + container dampening { + description + "Configure dampening intervals to bring tunnel up"; + leaf initial-wait { + type uint32 { + range "1..518400000" { + description + "Delay in milliseconds (default 16000)"; + } + } + description + "Initial delay before bringing up the tunnel"; + } + leaf maximum-wait { + type uint32 { + range "1..518400000" { + description + "Delay in milliseconds (default 600000)"; + } + } + description + "Maximum delay bringing up the tunnel"; + } + leaf secondary-wait { + type uint32 { + range "1..518400000" { + description + "Delay in milliseconds (default 20000)"; + } + } + description + "Secondary delay bringing up the tunnel"; + } + } + container encap-mode { + description + "BFD encap mode (default IP)"; + container gal { + presence "Indicates a gal node is configured."; + description + "GAL encap mode"; + } + } + } + container working-lsp { + when "../a2:interface-name[starts-with(text(),'tunnel-tp')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Working LSP"; + leaf in-label { + type uint32 { + range "16..1048575" { + description + "Specify an unused MPLS label"; + } + } + description + "Incoming MPLS label"; + } + leaf out-label { + type uint32 { + range "16..1048575" { + description + "MPLS label"; + } + } + description + "Outgoing MPLS label"; + } + leaf out-link { + type uint32 { + range "1..65535" { + description + "Link ID"; + } + } + must "../out-label"; + description + "Outgoing TP link ID"; + } + leaf lsp-number { + type uint32 { + range "0..65535" { + description + "LSP ID"; + } + } + description + "LSP Identifier"; + } + container lockout { + presence "Indicates a lockout node is configured."; + description + "Lockout working LSP"; + } + } + leaf destination { + when "../a2:interface-name[starts-with(text(),'tunnel-te')]" { + tailf:dependency "../a2:interface-name"; + } + type inet:ipv4-address-no-zone; + description + "Specify tunnel destination"; + } + container tunnel-mte { + when "../a2:interface-name[starts-with(text(),'tunnel-mte')]" { + tailf:dependency "../a2:interface-name"; + } + description + "Configuratoin specific for tunnel-mte interface"; + container destinations { + description + "Specify a destination to an endpoint of the tunnel"; + list destination { + key "address"; + description + "Specify a destination to an endpoint of the tunnel"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Specify a destination to an endpoint of the tunnel"; + } + container path-options { + description + "Primary or fallback path setup option"; + list path-option { + must "dynamic or explicit/identifier or explicit/name"; + key "path-option-id"; + description + "Primary or fallback path setup option"; + leaf path-option-id { + type uint32 { + range "1..1000" { + description + "Preference for this path option"; + } + } + description + "Primary or fallback path setup option"; + } + container dynamic { + presence "Indicates a dynamic node is configured."; + description + "Setup based on dynamically allocated path"; + } + container explicit { + description + "Setup based on preconfigured path"; + leaf identifier { + type uint32 { + range "1..65535" { + description + "Specify an IP explicit path by number"; + } + } + must "not(../name)"; + description + "Specify an IP explicit path by number"; + } + leaf name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Specify an IP explicit path by name"; + } + } + must "not(../identifier)"; + description + "Specify an IP explicit path by name"; + } + } + container lockdown { + must "../dynamic or ../explicit/identifier or ../explicit/name"; + presence "Indicates a lockdown node is configured."; + description + "Not a candidate for reoptimization"; + } + container verbatim { + must "../explicit/identifier or ../explicit/name"; + presence "Indicates a verbatim node is configured."; + description + "Do not require topology database for explicit path"; + } + } + } + container logging { + description + "Per-destination logging configuration"; + container events { + description + "Per-destination logging events"; + container sub-lsp { + description + "Enable destination sub-lsp state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable destination sub-lsp UP/DOWN change alarms"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable destination sub-lsp REROUTE change alarms"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup/reopt failure due to bandwidth"; + } + container pcalc-failure { + presence "Indicates a pcalc-failure node is configured."; + description + "Enable logging for path calculation failures"; + } + } + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable the given destination"; + } + } + } + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel priority"; + leaf setup-priority { + type uint32 { + range "0..7" { + description + "Setup Priority"; + } + } + mandatory true; + description + "Tunnel priority"; + } + leaf hold-priority { + type uint32 { + range "0..7" { + description + "Hold Priority"; + } + } + mandatory true; + description + "Hold Priority"; + } + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + container reoptimize-attempts { + presence "Indicates a reoptimize-attempts node is configured."; + description + "Enable interface LSP REOPT attempts change alarms"; + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable interface LSP REOPT change alarms"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable interface LSP REROUTE change alarms"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup/reopt failure due to bandwidth"; + } + container bw-change { + presence "Indicates a bw-change node is configured."; + description + "Enable interface LSP BANDWIDTH change notification"; + } + } + container pcalc-failure { + presence "Indicates a pcalc-failure node is configured."; + description + "Enable logging for path calculation failures"; + } + container sub-lsp-status { + description + "Enable all sub-LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable all sub-LSP UP/DOWN change alarms"; + } + } + container all { + presence "Indicates a all node is configured."; + description + "Enable all logging for this tunnel"; + } + } + } + leaf signalled-name { + type xr:Cisco-ios-xr-string { + length "1..254" { + description + "The name to be included in signaling (max 64 characters)"; + } + } + description + "The signaling name to assign to tunnel"; + } + container signalled-bandwidth { + presence "Indicates a signalled-bandwidth node is configured."; + description + "Tunnel bandwidth requirement to be signalled"; + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + mandatory true; + description + "Bandwidth requirement in kbps"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + must "not(../sub-pool)"; + description + "Specify the bandwidth class type"; + } + container sub-pool { + when "../bandwidth != 0"; + must "not(../class-type)"; + presence "Indicates a sub-pool node is configured."; + description + "Specify sub-pool bandwidth"; + } + } + container fast-reroute { + presence "Indicates a fast-reroute node is configured."; + description + "Specify MPLS tunnel can be fast-rerouted"; + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Record the route used by the tunnel"; + } + container affinity { + description + "Link attributes for links traversed by tunnel"; + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include2 { + key "name1 name2"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include2 { + key "name1 name2"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude2 { + key "name1 name2"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Link is excluded if it has every attribute in this list"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Link is excluded if it has every attribute in this list"; + } + } + description + "Link is excluded if it has every attribute in this list"; + } + } + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + leaf affinity-attribute-value { + type xr:Hex-integer; + must "../mask"; + description + "Affinity attribute value"; + } + leaf mask { + type xr:Hex-integer; + must "../affinity-attribute-value"; + description + "Affinity attribute mask value"; + } + } + container path-selection { + description + "Path Selection Configuration"; + container metric { + description + "Metric Type for path calculation"; + container igp { + must "not(../te or ../delay)"; + presence "Indicates a igp node is configured."; + description + "Use IGP metric"; + } + container te { + must "not(../igp or ../delay)"; + presence "Indicates a te node is configured."; + description + "Use TE metric"; + } + container delay { + must "not(../igp or ../te)"; + presence "Indicates a delay node is configured."; + description + "Use delay metric"; + } + } + } + } + } + + augment "/a2:interfaces/a2:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:snmp-server-mibs" { + description + "This augment extends snmp-server-mibs nodes + configuration"; + container mplstemib { + description + "TE-MIB configuration commands"; + container cache { + description + "Modify MIB cache properties"; + container timers { + description + "Modify MIB cache timers"; + leaf garbage-collect { + type uint32 { + range "0..3600" { + description + "Cache garbage collect time in seconds (0 immediately purges deleted OIDs from cache)"; + } + } + description + "Modify MIB cache garbage collect timer"; + } + leaf refresh { + type uint32 { + range "0..600" { + description + "Cache refresh time in seconds"; + } + } + description + "Modify MIB cache refresh timer"; + } + } + } + } + container mplsp2mpmib { + description + "p2mp mib configuration commands"; + container cache { + description + "Modify MIB cache properties"; + leaf timer { + type uint32 { + range "0..600" { + description + "Cache time in seconds"; + } + } + description + "Modify MIB cache timer"; + } + } + } + container frrmib { + description + "frr mib configuration commands"; + container cache { + description + "Modify MIB cache properties"; + leaf timer { + type uint32 { + range "0..600" { + description + "Cache time in seconds"; + } + } + description + "Modify MIB chache timer"; + } + } + } + container cmplsteextmib { + description + "cmplsteext mib configuration commands"; + container cache { + description + "Modify MIB cache properties"; + leaf timer { + type uint32 { + range "0..600" { + description + "Cache time in seconds"; + } + } + description + "Modify MIB chache timer"; + } + } + } + container cmplsteextstdmib { + description + "cmplsteextstd mib configuration commands"; + container cache { + description + "Modify MIB cache properties"; + leaf timer { + type uint32 { + range "0..600" { + description + "Cache time in seconds"; + } + } + description + "Modify MIB chache timer"; + } + } + } + } + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container mpls { + description + "Enable SNMP MPLS traps"; + container traffic-eng { + description + "Enable MPLS TE traps"; + container cisco { + presence "Indicates a cisco node is configured."; + description + "MPLS TE tunnel traps in Cisco format (default ietf)"; + } + container cisco-ext { + description + "cisco_ext"; + container bringup-fail { + presence "Indicates a bringup-fail node is configured."; + description + "Enable MPLS TE tunnel bringup-fail trap"; + } + container insuff-bw { + presence "Indicates a insuff-bw node is configured."; + description + "Enable MPLS TE tunnel insufficient bandwidth trap"; + } + container preempt { + presence "Indicates a preempt node is configured."; + description + "Enable MPLS TE tunnel preempt trap"; + } + container reroute-pending { + presence "Indicates a reroute-pending node is configured."; + description + "Enable MPLS TE tunnel reroute-pending trap"; + } + container reroute-pending-clear { + presence "Indicates a reroute-pending-clear node is configured."; + description + "Enable MPLS TE tunnel reroute-pending trap"; + } + } + container down { + presence "Indicates a down node is configured."; + description + "Enable MPLS TE tunnel down traps"; + } + container p2mp { + description + "Enable MPLS TE tunnel p2mp traps"; + container down { + presence "Indicates a down node is configured."; + description + "Enable MPLS TE P2MP tunnel destination down traps"; + } + container up { + presence "Indicates a up node is configured."; + description + "Enable MPLS TE P2MP tunnel destination up traps"; + } + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable MPLS TE tunnel reoptimize traps"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable MPLS TE tunnel reroute traps"; + } + container up { + presence "Indicates a up node is configured."; + description + "Enable MPLS TE tunnel up traps"; + } + } + container frr { + description + "Enable MPLS FRR traps"; + container all { + presence "Indicates a all node is configured."; + description + "Enable all MPLS FRR MIB traps"; + } + container protected { + presence "Indicates a protected node is configured."; + description + "Enable MPLS FRR tunnel protected traps"; + } + container unprotected { + presence "Indicates a unprotected node is configured."; + description + "Enable MPLS FRR tunnel unprotected traps"; + } + } + } + } + container mpls { + description + "Global MPLS configuration subcommands"; + container traffic-eng { + presence "Indicates a traffic-eng node is configured."; + description + "Go into the MPLS-TE submode"; + container link-management { + description + "MPLS Link Manager subcommands"; + container timers { + description + "MPLS Link Manager Timer subcommands"; + leaf bandwidth-hold { + type uint32 { + range "1..300" { + description + "Bandwidth hold timer value (seconds)"; + } + } + description + "Bandwidth hold timer"; + } + leaf periodic-flooding { + type uint32 { + range "0..3600" { + description + "Periodic flooding value (seconds), minimum 30 seconds"; + } + } + description + "Periodic flooding timer"; + } + container preemption-delay { + description + "Delay LSP preemption"; + leaf bundle-capacity { + type uint32 { + range "0..300" { + description + "Bundle capacity change preemption timer value (seconds)"; + } + } + description + "Bundle capacity change preemption delay timer"; + } + } + } + } + container reoptimize { + description + "MPLS TE Reoptimize config"; + leaf reoptimize-value { + type uint32 { + range "0..604800" { + description + "Reoptimize timers frequency (secs)"; + } + } + description + "Reoptimize timers frequency (secs)"; + } + container timers { + description + "Reoptimization timers"; + container delay { + description + "Delay reoptimization action"; + leaf cleanup { + type uint32 { + range "0..300" { + description + "Seconds to delay cleanup of reoptimized LSP"; + } + } + description + "Delay cleanup of reoptimized LSP"; + } + leaf after-frr { + type uint32 { + range "0..120" { + description + "Seconds to delay re-opt initiation of tunnel after an FRR event"; + } + } + description + "Delay LSP reoptimization in the event of FRR"; + } + leaf installation { + type uint32 { + range "0..3600" { + description + "Seconds to delay replacement of tunnel LSP"; + } + } + description + "Delay replacement of current LSP by reoptimized LSP"; + } + leaf after-affinity-failure { + type uint32 { + range "1..604800" { + description + "Seconds to delay reoptimizing current LSP"; + } + } + description + "Delay reoptimizing current LSP after path affinity failure"; + } + leaf path-protection { + type uint32 { + range "0..604800" { + description + "Seconds between path protection switchover event and tunnel re-optimization. Set to 0 to disable"; + } + } + description + "Time between path protection switchover event and tunnel re-optimization"; + } + } + } + container events { + description + "Event-based reoptimization"; + container link-up { + presence "Indicates a link-up node is configured."; + description + "Trigger reoptimization on topology link-up events"; + } + } + container load-balance { + presence "Indicates a load-balance node is configured."; + description + "Load balance bandwidth during reoptimization"; + } + container disable { + description + "disable reoptimization"; + container affinity-failure { + presence "Indicates a affinity-failure node is configured."; + description + "disable reoptimization on affinity failure"; + } + } + } + container bfd { + description + "Configure parameters for BFD over TE"; + leaf minimum-interval { + type uint32 { + range "15..200" { + description + "Hello interval in milliseconds (default 15)"; + } + } + description + "Hello interval for BFD over Link"; + } + leaf multiplier { + type uint32 { + range "2..10" { + description + "Detect multiplier (default 3)"; + } + } + description + "Detect multiplier for BFD over Link"; + } + container lsp { + description + "Configure parameters for BFD over LSP"; + container tail { + description + "Tail end configuration"; + leaf minimum-interval { + type uint32 { + range "50..30000" { + description + "Hello interval in milliseconds (default 100)"; + } + } + description + "Hello interval"; + } + leaf multiplier { + type uint32 { + range "3..10" { + description + "Detect multiplier (default 3)"; + } + } + description + "Detect multiplier"; + } + } + container head { + description + "Head end configuration"; + container down-action { + description + "Action to take for FRR enabled tunnel when BFD session down"; + container resetup { + presence "Indicates a resetup node is configured."; + description + "Teardown and resetup when received BFD session down event"; + } + container reoptimize { + description + "Reoptimize when received BFD session down event (default)"; + leaf timeout { + type uint32 { + range "120..4294967295" { + description + "Reoptmization timeout in seconds (default 300)"; + } + } + description + "Timeout and teardown if failed to reoptimize"; + } + } + } + } + } + } + container interfaces { + description + "Enable MPLS-TE on an interface"; + list interface { + key "interface-name"; + description + "Enable MPLS-TE on an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Enable MPLS-TE on an interface"; + } + leaf admin-weight { + type uint32 { + range "0..4294967295" { + description + "Administrative weight for the interface"; + } + } + description + "Set administrative weight for the interface"; + } + container bfd { + description + "Configure BFD parameters"; + container fast-detect { + presence "Indicates a fast-detect node is configured."; + description + "Enable Fast detection"; + } + } + container fault-oam { + description + "Enable fault-oam features"; + container lockout { + presence "Indicates a lockout node is configured."; + description + "Enable Flex LSP lockout protection"; + } + } + leaf attribute-flags { + type xr:Hex-integer; + description + "Set user defined interface attribute flags"; + } + container attribute-names { + description + "Specify one or more attribute names"; + leaf-list attribute-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "User defined attribute name"; + } + } + max-elements "32"; + description + "Specify one or more attribute names"; + } + container indexes { + description + "Specify the entry index"; + list index { + key "index-number"; + description + "Specify the entry index"; + leaf index-number { + type uint32 { + range "1..8" { + description + "Index number"; + } + } + description + "Specify the entry index"; + } + leaf-list attribute-names { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "User defined attribute name"; + } + } + min-elements 1; + max-elements "32"; + description + "Specify one or more attribute names"; + } + } + } + } + container flooding { + description + "Set flooding parameters"; + container thresholds { + description + "Set flooding thresholds"; + container ups { + description + "Set thresholds for increased resource allocation in %"; + leaf-list up { + type uint32 { + range "0..100" { + description + "Thresholds in increasing order"; + } + } + max-elements "14"; + description + "Set thresholds for increased resource allocation in %"; + } + } + container downs { + description + "Set thresholds for decreased resource allocation in %"; + leaf-list down { + type uint32 { + range "0..100" { + description + "Thresholds in decreasing order"; + } + } + max-elements "14"; + description + "Set thresholds for decreased resource allocation in %"; + } + } + } + } + container backup-path { + description + "Configure an MPLS TE backup for this interface"; + container tunnel-te { + description + "Tunnel interface"; + container tunnel-interfaces { + description + "Tunnel interface number"; + list tunnel-interface { + key "tunnel-interface-number"; + description + "Tunnel interface number"; + leaf tunnel-interface-number { + type uint32 { + range "0..65535" { + description + "Tunnel interface number"; + } + } + description + "Tunnel interface number"; + } + } + } + container backup-tunnels { + description + "Backup Tunnel Name"; + list backup-tunnel { + key "backup-tunnel-name"; + description + "Backup Tunnel Name"; + leaf backup-tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..54" { + description + "Backup Tunnel Name"; + } + } + description + "Backup Tunnel Name"; + } + } + } + } + } + container auto-tunnel { + description + "Auto-tunnel configuration"; + container backup { + presence "Indicates a backup node is configured."; + description + "Enable the auto-tunnel backup feature on an interface"; + container nhop-only { + presence "Indicates a nhop-only node is configured."; + description + "Allow only next hop backup tunnels"; + } + leaf attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 64 char)"; + } + } + description + "Attribute-set name of type auto-backup"; + } + container exclude { + description + "Restrict auto-tunnel backup path based on specific criteria."; + container srlg { + presence "Indicates a srlg node is configured."; + description + "Backup requires SRLG exclusion from protected interface"; + container preferred { + must "not(../weighted)"; + presence "Indicates a preferred node is configured."; + description + "SRLG exclusion is preferred but not mandatory"; + } + container weighted { + must "not(../preferred)"; + presence "Indicates a weighted node is configured."; + description + "If SRLG is shared admin weight of the SRLG is added to link metric"; + } + } + } + container bandwidth-protection { + description + "Add protected auto-backup for LSPs requesting bandwidth protection"; + leaf maximum-aggregate { + type uint32 { + range "1..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + description + "Aggregated maximum amount of bandwidth that the auto-backup can protect"; + } + } + } + } + } + } + container ds-te { + description + "Diff-Serv Traffic-Engineering Parameters"; + container bc-model { + description + "Diff-Serv Traffic-Engineering Bandwidth Constraints Model"; + container mam { + presence "Indicates a mam node is configured."; + description + "Maximum Allocation Bandwidth Constraints Model"; + } + } + container mode { + description + "Diff-Serv Traffic-Engineering Mode"; + container ietf { + presence "Indicates a ietf node is configured."; + description + "IETF Standard Mode"; + } + } + container te-classes { + description + "enter the DS-TE te-class map configuration mode"; + list te-class { + must "(class-type and priority) or unused"; + key "class-number"; + description + "Specify TE-Class parameters"; + leaf class-number { + type uint32 { + range "0..7"; + } + description + "DS-TE class number"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + must "not(../unused)"; + description + "Class type"; + } + leaf priority { + type uint32 { + range "0..7" { + description + "Class-type priority"; + } + } + description + "Class priority"; + } + container unused { + must "not(../class-type)"; + presence "Indicates a unused node is configured."; + description + "Mark the TE-class as unused"; + } + } + } + } + container logging { + description + "MPLS Traffic-Eng. logging configuration"; + container events { + description + "Global logging events"; + container frr-protection { + must "not(primary-lsp and backup-tunnel)"; + presence "Indicates a frr-protection node is configured."; + description + "Enable protection change Syslog"; + container primary-lsp { + must "not(ready-state and active-state)"; + presence "Indicates a primary-lsp node is configured."; + description + "Enable logging for primary LSP(s)"; + container ready-state { + presence "Indicates a ready-state node is configured."; + description + "Enable logging when FRR backup is assigned or unassigned"; + } + container active-state { + presence "Indicates a active-state node is configured."; + description + "Enable logging when FRR backup is triggered"; + } + } + container backup-tunnel { + presence "Indicates a backup-tunnel node is configured."; + description + "Enable logging for backup tunnel(s)"; + } + } + container preemption { + presence "Indicates a preemption node is configured."; + description + "Enable Tunnel Preemption alarms"; + } + container role { + description + "Enable all logging for a tunnel role"; + container head { + presence "Indicates a head node is configured."; + description + "Enable all logging for head"; + } + container mid { + presence "Indicates a mid node is configured."; + description + "Enable all logging for mid"; + } + container tail { + presence "Indicates a tail node is configured."; + description + "Enable all logging for tail"; + } + } + container nsr { + presence "Indicates a nsr node is configured."; + description + "Enable NSR Status Logging"; + } + container issu { + presence "Indicates a issu node is configured."; + description + "Enable ISSU Status Logging"; + } + container all { + presence "Indicates a all node is configured."; + description + "Enable all logging for all events"; + } + } + } + container timers { + description + "Traffic Engineering timers"; + container loose-path { + description + "Control the LSP terminating outside the headend area"; + leaf retry-period { + type uint32 { + range "30..600" { + description + "Seconds to retry signalling of loose path tunnels after path errors"; + } + } + description + "Period in seconds between retries after path errors"; + } + } + container s2l-setup { + description + "Control the LSP headend"; + leaf retry-timer { + type uint32 { + range "30..600" { + description + "Seconds to retry signalling after path timeout"; + } + } + description + "Timeout period in seconds before head end retries path"; + } + } + container backoff-timer { + description + "Control the LSP signaling requests on the same path"; + leaf initial-interval { + type uint32 { + range "0..600" { + description + "In seconds"; + } + } + must "../final-interval"; + description + "The initial interval in seconds that the timer will start with. The default value is 3(s). Timer is disabled when this value and the final-interval are both set to 0"; + } + leaf final-interval { + type uint32 { + range "0..600" { + description + "In seconds"; + } + } + must "../initial-interval"; + description + "The final interval in seconds that the timer will cap at. The default value is 300(s). Timer is disabled when this value and the initial-interval are both set to 0"; + } + } + } + container topology { + description + "Topology Database Configuration"; + container holddown { + description + "Topology Database hold down timers"; + leaf sigerr { + type uint32 { + range "0..300" { + description + "Hold down time in seconds"; + } + } + description + "Link hold down time for signalling errors"; + } + } + } + container flooding { + description + "Configure MPLS-TE flooding"; + container threshold { + description + "Configure MPLS-TE flooding thresholds"; + leaf up { + type uint32 { + range "0..100" { + description + "Upward flooding threshold as percentage of total link bandwidth change"; + } + } + description + "Upward flooding threshold"; + } + leaf down { + type uint32 { + range "0..100" { + description + "Downward flooding threshold as percentage of total link bandwidth change"; + } + } + must "../up"; + description + "Downward flooding threshold"; + } + } + } + container named-tunnels { + presence "Indicates a named-tunnels node is configured."; + description + "Named Tunnels"; + container tunnel-tes { + description + "Traffic Engineering Tunnel"; + list tunnel-te { + key "tunnel-name"; + description + "Traffic Engineering Tunnel"; + leaf tunnel-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Tunnel Name"; + } + } + description + "Traffic Engineering Tunnel"; + } + leaf destination { + type inet:ipv4-address-no-zone; + description + "Specify tunnel destination"; + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "shutdown the given tunnel"; + } + container soft-preemption { + presence "Indicates a soft-preemption node is configured."; + description + "Enable the soft-preemption feature on this tunnel"; + } + container delay-measurement { + presence "Indicates a delay-measurement node is configured."; + description + "Enable the delay-measurement feature on this tunnel"; + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Record the route used by the tunnel"; + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable interface LSP REOPT change alarms"; + } + container reoptimize-attempts { + presence "Indicates a reoptimize-attempts node is configured."; + description + "Enable interface LSP REOPT attempts change alarms"; + } + container bw-change { + presence "Indicates a bw-change node is configured."; + description + "Enable interface LSP BANDWIDTH change alarms"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable interface LSP REROUTE change alarms"; + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Enable interface LSP RECORD-ROUTE change alarms"; + } + container switchover { + presence "Indicates a switchover node is configured."; + description + "Enable interface LSP SWITCHOVER change alarms"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup/reopt failure due to bandwidth"; + } + container path-error { + presence "Indicates a path-error node is configured."; + description + "Enable Syslog for failures due to path error"; + } + } + container pcalc-failure { + presence "Indicates a pcalc-failure node is configured."; + description + "Enable logging for path calculation failures"; + } + container all { + presence "Indicates a all node is configured."; + description + "Enable all logging for this tunnel"; + } + } + } + container fast-reroute { + presence "Indicates a fast-reroute node is configured."; + description + "Specify MPLS tunnel can be fast-rerouted"; + container protect { + description + "Enable protection request"; + container node { + presence "Indicates a node node is configured."; + description + "Enable node protection request"; + } + container bandwidth { + presence "Indicates a bandwidth node is configured."; + description + "Enable bandwidth protection request"; + } + } + } + container affinity { + description + "Link attributes for links traversed by tunnel"; + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + leaf affinity-attribute-value { + type xr:Hex-integer; + description + "Affinity attribute value"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity attribute mask value"; + } + } + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel priority"; + leaf setup-priority { + type uint32 { + range "0..7" { + description + "Setup Priority"; + } + } + mandatory true; + description + "Tunnel priority"; + } + leaf hold-priority { + type uint32 { + range "0..7" { + description + "Hold Priority"; + } + } + mandatory true; + description + "Hold Priority"; + } + } + container signalled-bandwidth { + must "not(class-type and sub-pool)"; + presence "Indicates a signalled-bandwidth node is configured."; + description + "Tunnel bandwidth requirement to be signalled"; + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + mandatory true; + description + "Bandwidth requirement in kbps"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the bandwidth class type"; + } + container sub-pool { + when "../bandwidth != 0"; + presence "Indicates a sub-pool node is configured."; + description + "Specify sub-pool bandwidth"; + } + } + leaf forward-class { + type uint32 { + range "0..7" { + description + "Forward class for the tunnel (default value 0)"; + } + } + description + "Specify tunnel forward class for policy based routing"; + } + leaf load-share { + type uint32 { + range "1..4294967295" { + description + "Loadshare value. Scale is the same as bandwidths."; + } + } + description + "Specify tunnel load-sharing metric"; + } + container path-selection { + description + "Enter path selection configuration submode"; + container metric { + description + "Metric Type for path calculation"; + container igp { + presence "Indicates a igp node is configured."; + description + "Use IGP metric"; + } + container te { + presence "Indicates a te node is configured."; + description + "Use TE metric"; + } + container delay { + presence "Indicates a delay node is configured."; + description + "Use delay metric"; + } + } + container tiebreaker { + description + "Equal cost multipath tiebreaker for path calculation (default: min-fill)."; + container min-fill { + presence "Indicates a min-fill node is configured."; + description + "Prefer the path with the least-utilized links"; + } + container max-fill { + presence "Indicates a max-fill node is configured."; + description + "Prefer the path with the most-utilized links"; + } + container random { + presence "Indicates a random node is configured."; + description + "Prefer a path with links utilized randomly"; + } + } + leaf delay-limit { + type uint32 { + range "1..4294967295" { + description + "Delay limit in usec"; + } + } + description + "Delay limit configuration"; + } + } + container forwarding-adjacency { + presence "Indicates a forwarding-adjacency node is configured."; + description + "Enable a forwarding-adjacency and enter its submode"; + leaf holdtime { + type uint32 { + range "0..20000" { + description + "Hold time in ms"; + } + } + description + "Hold time in ms"; + } + container include-ipv6 { + presence "Indicates a include-ipv6 node is configured."; + description + "Announce tunnel as an IPv6 FA also"; + } + } + container autoroute { + description + "Parameters for IGP routing over tunnel"; + container announce { + presence "Indicates a announce node is configured."; + description + "Announce tunnel to IGP"; + container metric { + must "constant or absolute or relative"; + presence "Indicates a metric node is configured."; + description + "Specify MPLS tunnel metric"; + leaf absolute { + type uint32 { + range "1..2147483647" { + description + "Absolute metric"; + } + } + description + "Set metric mode absolute"; + } + leaf relative { + type int32 { + range "-10..10" { + description + "Relative metric"; + } + } + description + "Set metric mode relative"; + } + leaf constant { + type uint32 { + range "1..2147483647" { + description + "Set constant metric"; + } + } + description + "Set constant metric"; + } + } + container include-ipv6 { + presence "Indicates a include-ipv6 node is configured."; + description + "Announce tunnel as an IPv6 AA also"; + } + container exclude-traffic { + description + "Exclude the type of traffic that goes through AA"; + container segment-routing { + presence "Indicates a segment-routing node is configured."; + description + "Exclude segment-routing traffic from the autoroute announced tunnel"; + } + } + } + container destinations { + description + "Adds static route to destination"; + list destination { + key "address"; + description + "Adds static route to destination"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Adds static route to destination"; + } + } + } + } + container auto-bw { + presence "Indicates a auto-bw node is configured."; + description + "Enable tunnel auto-bandwidth and enter its submode"; + leaf application { + type uint32 { + range "5..10080" { + description + " Auto-bw application frequency (minutes)"; + } + } + description + "Set the tunnel auto-bw application frequency"; + } + container bw-limit { + presence "Indicates a bw-limit node is configured."; + description + "Set min/max bandwidth auto-bw can apply on a tunnel"; + leaf min { + type uint32 { + range "0..4294967295" { + description + "Minimum bandwidth to apply (kbps)"; + } + } + mandatory true; + description + "Set minimum bandwidth auto-bw can apply on a tunnel"; + } + leaf max { + type uint32 { + range "0..4294967295" { + description + "Maximum bandwidth to apply (kbps)"; + } + } + mandatory true; + description + "Set maximum bandwidth auto-bw can apply on a tunnel"; + } + } + container collect-bw-only { + presence "Indicates a collect-bw-only node is configured."; + description + "Enable bandwidth collection only, no auto-bw adjustment"; + } + container adjustment-threshold { + presence "Indicates a adjustment-threshold node is configured."; + description + "Set the bandwidth change threshold to trigger adjustment"; + leaf bandwidth-change-percent { + type uint32 { + range "1..100" { + description + "Bandwidth change percent to trigger adjustment"; + } + } + mandatory true; + description + "Set the bandwidth change threshold to trigger adjustment"; + } + leaf min { + type uint32 { + range "10..4294967295" { + description + "Bandwidth change value to trigger adjustment (kbps)"; + } + } + description + "Set the bandwidth change value to trigger adjustment"; + } + } + container overflow { + description + "Configuring the tunnel overflow detection"; + container threshold { + presence "Indicates a threshold node is configured."; + description + "Set the bandwidth change percent to trigger an overflow"; + leaf bandwidth-change-percent { + type uint32 { + range "1..100" { + description + "Bandwidth change percent to trigger an overflow"; + } + } + mandatory true; + description + "Set the bandwidth change percent to trigger an overflow"; + } + leaf min { + type uint32 { + range "10..4294967295" { + description + "Bandwidth change value to trigger an overflow (kbps)"; + } + } + mandatory true; + description + "Set the bandwidth change value to trigger an overflow"; + } + leaf limit { + type uint32 { + range "1..10" { + description + "Number of consecutive collections exceeding threshold"; + } + } + mandatory true; + description + "Set the number of consecutive collections exceeding threshold"; + } + } + } + container underflow { + description + "Configuring the tunnel underflow detection"; + container threshold { + presence "Indicates a threshold node is configured."; + description + "Set the bandwidth change percent to trigger an underflow"; + leaf bandwidth-change-percent { + type uint32 { + range "1..100" { + description + "Bandwidth change percent to trigger an underflow"; + } + } + mandatory true; + description + "Set the bandwidth change percent to trigger an underflow"; + } + leaf min { + type uint32 { + range "10..4294967295" { + description + "Bandwidth change value to trigger an underflow (kbps)"; + } + } + mandatory true; + description + "Set the bandwidth change value to trigger an underflow"; + } + leaf limit { + type uint32 { + range "1..10" { + description + "Number of consecutive collections exceeding threshold"; + } + } + mandatory true; + description + "Set the number of consecutive collections exceeding threshold"; + } + } + } + container resignal { + description + "Configure the tunnel resignal parameters after going down"; + container last-bandwidth { + description + "Configure the tunnel to use last applied bandwidth after going down"; + leaf time-out { + type uint32 { + range "1..3600000" { + description + "time-out value to trigger a reset of the requested bandwidth (seconds)"; + } + } + description + "Set the bandwidth resignal time-out value (in seconds) After this time the tunnel will be signaled with the configured bandwidth"; + } + } + } + container auto-capacity { + presence "Indicates a auto-capacity node is configured."; + description + "Enable auto-capacity and enter its submode"; + leaf min-clones { + type uint32 { + range "0..63" { + description + "Range of auto-capacity min clones (default 0)"; + } + } + description + "Lower limit on the number of clones that can be created for a given tunnel"; + } + leaf max-clones { + type uint32 { + range "0..63" { + description + "Range of auto-capacity max clones (default 63)"; + } + } + description + "Upper limit on the number of clones that can be created for a given tunnel"; + } + leaf split-bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth in kbps"; + } + } + description + "Split bandwidth in kbps"; + } + leaf merge-bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth in kbps"; + } + } + description + "Merge bandwidth in kbps"; + } + leaf nominal-bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth in kbps"; + } + } + description + "Bandwidth in kbps used to compute the number of tunnels when merging or splitting "; + } + } + } + container bfd { + presence "Indicates a bfd node is configured."; + description + "Configure BFD parameters"; + container fast-detect { + presence "Indicates a fast-detect node is configured."; + description + "Enable BFD fast detection"; + container sbfd { + presence "Indicates a sbfd node is configured."; + description + "Enable Seamless BFD"; + } + } + leaf minimum-interval { + type uint32 { + range "3..30000" { + description + "Hello interval in milliseconds (default 100),lower bound is 50ms for BFD sessions for named tunnels "; + } + } + description + "Hello interval"; + } + leaf multiplier { + type uint32 { + range "3..10" { + description + "Number of consecutive misses before declaring failure (default 3)"; + } + } + description + "Number of consecutive misses before declaring failure "; + } + } + container path-protection { + presence "Indicates a path-protection node is configured."; + description + "Enable the path protection feature on this named tunnel"; + container srlg-diverse { + presence "Indicates a srlg-diverse node is configured."; + description + "Enforce SRLG diversity for protecting LSP"; + } + } + container path-options { + description + "Primary or fallback path setup option"; + list path-option { + key "path-setup-name"; + description + "Primary or fallback path setup option"; + leaf path-setup-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Path setup name"; + } + } + description + "Primary or fallback path setup option"; + } + leaf preference { + type uint32 { + range "0..255" { + description + "Lower value is more preferred path option"; + } + } + description + "Specify the preference of the path-option."; + } + container computation { + description + "Specify the computation method for the path"; + container dynamic { + presence "Indicates a dynamic node is configured."; + description + "Dyanmic path computation"; + } + leaf explicit { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Name of the explicit path"; + } + } + description + "Computation based on the preconfigured path"; + } + } + } + } + leaf load-interval { + type uint32 { + range "0|30|60|90|120|150|180|210|240|270|300|330|360|390|420|450|480|510|540|570|600" { + description + "Number of seconds: 0 disables load calculation"; + } + } + description + "Specify interval for load calculation for the named tunnel"; + } + container self-ping { + presence "Indicates a self-ping node is configured."; + description + "Enable self-ping and enter its submode"; + leaf max-count { + type uint32 { + range "1..180" { + description + "Range of maximum number of self-ping probes (default 60)"; + } + } + description + "Number of self-ping probes <1-180> (default 60)"; + } + } + } + } + } + container affinity-maps { + description + "Affinity Map Configuration"; + list affinity-map { + key "attribute-name"; + description + "Affinity Map Configuration"; + leaf attribute-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the explicit path"; + } + } + must "(../attribute-value and not(../bit-position)) or (../bit-position and not(../attribute-value))"; + description + "Affinity attribute name"; + } + leaf attribute-value { + type uint32 { + range "1..2147483648" { + description + "Affinity attribute value"; + } + } + description + "Affinity Map Configuration"; + } + leaf bit-position { + type uint32 { + range "0..255" { + description + "Bit Position"; + } + } + description + "Bit Position for Affinity attribute value"; + } + } + } + container signalling { + description + "Signalling options"; + container advertise { + description + "Label advertising options"; + container explicit-null { + presence "Indicates a explicit-null node is configured."; + description + "Enable explicit-null advertising to PHOP"; + } + } + } + container router-id { + description + "Router ID"; + list secondary { + key "router-id"; + description + "Configure secondary TE Router ID to be used locally (not advertised)"; + leaf router-id { + type inet:ipv4-address-no-zone; + description + "Configure secondary TE Router ID to be used locally (not advertised)"; + } + } + } + container fast-reroute { + description + "Fast-reroute config parameters"; + container timers { + description + "Configure fast-reroute timer"; + leaf hold-backup { + type uint32 { + range "0..604800" { + description + "Seconds before backup declared UP (0 disables hold-timer)"; + } + } + description + "Hold timer for backup UP event"; + } + leaf promotion { + type uint32 { + range "0..604800" { + description + "Seconds between promotions (0 disables promotion)"; + } + } + description + "Configure how often we scan for LSP backup promotion"; + } + } + } + container gmpls { + description + "GMPLS submode"; + container optical-uni { + description + "GMPLS-UNI submode"; + container controllers { + description + "Configure GMPLS-UNI on a link"; + list controller { + key "controller-name"; + description + "Configure GMPLS-UNI on a link"; + leaf controller-name { + type xr:Interface-name; + description + "Configure GMPLS-UNI on a link"; + } + container switching-type { + description + "Specify switching type"; + container dcsc { + presence "Indicates a dcsc node is configured."; + description + "Data channel switch capable"; + } + container lsc { + presence "Indicates a lsc node is configured."; + description + "Lambda switch capable"; + } + container fsc { + presence "Indicates a fsc node is configured."; + description + "Fiber switch capable"; + } + } + leaf mtu { + type uint32 { + range "64..65535" { + description + "MTU size in bytes"; + } + } + description + "Set the MTU on a controller"; + } + container logging { + description + "Per-controller logging configuration"; + container discovered-srlgs { + presence "Indicates a discovered-srlgs node is configured."; + description + "Enable logging for discovered SRLGs on this link"; + } + } + container announce { + description + "Announce discovered tunnel properties to system"; + container srlgs { + presence "Indicates a srlgs node is configured."; + description + "Announce discovered SRLGs to system"; + } + } + container tunnel-properties { + presence "Indicates a tunnel-properties node is configured."; + description + "Configure GMPLS-UNI tunnel head properties"; + container destination { + description + "Specify tunnel destination"; + container ipv4 { + description + "Specify an IPv4 destination"; + leaf unicast { + type inet:ipv4-address-no-zone; + description + "Specify an IPv4 unicast destination"; + } + } + } + leaf g-pid { + type uint32 { + range "0..255" { + description + "GPID value"; + } + } + description + "Specify generalized payload type"; + } + container encoding-type { + description + "Specify LSP encoding type"; + container ethernet-type1 { + presence "Indicates a ethernet-type1 node is configured."; + description + "Ethernet Private Line Type 1"; + } + container ethernet-type2 { + presence "Indicates a ethernet-type2 node is configured."; + description + "Ethernet Private Line Type 1"; + } + container lambda { + presence "Indicates a lambda node is configured."; + description + "Lambda Photonic"; + } + container fiber { + presence "Indicates a fiber node is configured."; + description + "Fiber"; + } + } + container path-options { + description + "Configure a GMPLS-UNI path-option"; + list path-option { + must "no-ero or explicit"; + key "preference"; + description + "Configure a GMPLS-UNI path-option"; + leaf preference { + type uint32 { + range "1..1000" { + description + "Preference for this path option"; + } + } + description + "Configure a GMPLS-UNI path-option"; + } + container no-ero { + must "../lockdown"; + presence "Indicates a no-ero node is configured."; + description + "No path configuration"; + } + container explicit { + description + "Setup based on preconfigured path"; + container identifier { + must "not(../name) and ../../lockdown and ../../verbatim"; + presence "Indicates a identifier node is configured."; + description + "Specify an explicit path by number"; + leaf explicit-path-number { + type uint32 { + range "1..65535" { + description + "Explicit path number"; + } + } + mandatory true; + description + "Specify an explicit path by number"; + } + } + container name { + must "not(../identifier) and ../../lockdown and ../../verbatim"; + presence "Indicates a name node is configured."; + description + "Specify an explicit path by name"; + leaf explicit-path-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Explicit path name"; + } + } + mandatory true; + description + "Specify an explicit path by name"; + } + } + } + leaf xro-attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 64 char)"; + } + } + description + "Attribute-set containing path exclusions"; + } + container signaled-label { + description + "Specify a fixed upstream label to be used"; + container dwdm { + description + "DWDM label (RFC 6205), 50GHz channel-spacing"; + leaf wavelength { + type uint32 { + range "1..89" { + description + "DWDM channel number (ITU), 50GHz channel-spacing"; + } + } + description + "DWDM wavelength"; + } + } + } + container lockdown { + presence "Indicates a lockdown node is configured."; + description + "Not a candidate for reoptimization"; + } + container verbatim { + presence "Indicates a verbatim node is configured."; + description + "Use explicit path to construct ERO directly"; + } + } + } + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel priority"; + leaf setup-priority { + type uint32 { + range "0..7" { + description + "Setup Priority"; + } + } + mandatory true; + description + "Tunnel priority"; + } + leaf hold-priority { + type uint32 { + range "0..7" { + description + "Hold Priority"; + } + } + mandatory true; + description + "Hold Priority"; + } + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Record the route used by the tunnel"; + } + leaf signalled-name { + type xr:Cisco-ios-xr-string { + length "1..254" { + description + "The name to be included in signaling (max 254 characters)"; + } + } + description + "The signaling name to assign to the tunnel"; + } + container record { + description + "Request recording of tunnel properties during signaling"; + container srlg { + presence "Indicates a srlg node is configured."; + description + "SRLG recording"; + } + } + leaf tunnel-id { + type uint32 { + range "0..65535" { + description + "Tunnel ID"; + } + } + description + "GMPLS-UNI tunnel id"; + } + container logging { + description + "Per-tunnel logging configuration"; + container events { + description + "Per-tunnel logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + } + } + } + container protection { + description + "Protection"; + leaf attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 32 characters)"; + } + } + description + "Protection attribute set"; + } + } + } + } + } + container timers { + description + "Configure GMPLS-UNI timers"; + container path-option { + description + "Path-option timers"; + container holddown { + presence "Indicates a holddown node is configured."; + description + "Path-option holddown timer limits"; + leaf minimum { + type uint32 { + range "5..3600" { + description + "Minimum path-option holddown time (seconds)"; + } + } + mandatory true; + description + "Path-option holddown timer limits"; + } + leaf maximum { + type uint32 { + range "5..3600" { + description + "Maximum path-option holddown time (seconds)"; + } + } + mandatory true; + description + "Maximum path-option holddown time (seconds)"; + } + } + } + } + } + container optical-nni { + presence "Indicates a optical-nni node is configured."; + description + "GMPLS-NNI submode"; + container path-selection { + description + "Path Selection Configuration"; + container metric { + description + "Metric Type Configuration"; + container te-metric { + presence "Indicates a te-metric node is configured."; + description + "Use TE metric"; + } + container delay { + presence "Indicates a delay node is configured."; + description + "Use delay metric"; + } + } + } + container controller { + description + "Configure GMPLS-NNI tunnel"; + list odu-group-te { + key "tunnel-id"; + description + "Odu-Group-Te controller(s)"; + leaf tunnel-id { + type uint32 { + range "0..64535" { + description + "Enter the Tunnel ID"; + } + } + description + "Enter the Tunnel ID"; + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable tunnel oper-state change notification"; + } + container signalling-state { + presence "Indicates a signalling-state node is configured."; + description + "Enable all sub-LSP state change notification"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup failure due to bandwidth"; + } + container cross-connect { + presence "Indicates a cross-connect node is configured."; + description + "Enable Static X-connects change notification"; + } + container switch-over { + presence "Indicates a switch-over node is configured."; + description + "Enable Active LSP change notification"; + } + container path-change { + presence "Indicates a path-change node is configured."; + description + "Enable Path-change notification"; + } + container homepath-state { + presence "Indicates a homepath-state node is configured."; + description + "Enable Homepath state change notification"; + } + } + } + } + container path-selection { + description + "Path Selection Configuration"; + container metric { + description + "Metric Type Configuration"; + container te-metric { + presence "Indicates a te-metric node is configured."; + description + "Use TE metric"; + } + container delay { + presence "Indicates a delay node is configured."; + description + "Use delay metric"; + } + } + } + container destination { + description + "Specify tunnel destination"; + container ipv4 { + description + "Specify an IPv4 destination"; + leaf unicast { + type inet:ipv4-address-no-zone; + description + "Specify an IPv4 unicast destination"; + } + container unnumbered { + presence "Indicates a unnumbered node is configured."; + description + "Enter Router-id (A.B.C.D)"; + leaf address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Enter Router-id (A.B.C.D)"; + } + leaf interface-ifindex { + type uint32 { + range "0..4294967295" { + description + "Enter the destination IF-index"; + } + } + description + "Specify terminated interface index assigned by destination node"; + } + } + } + } + leaf signalled-name { + type xr:Cisco-ios-xr-string { + length "1..254" { + description + "The name to be included in signaling (max 254 characters)"; + } + } + description + "The signaling name to assign to the tunnel"; + } + container protection-switching { + description + "Protection-switching specific commands"; + container lockout { + description + "Lockout tunnel controller to prevent switch over"; + container working { + presence "Indicates a working node is configured."; + description + "Lockout working path"; + } + } + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Records the route used by the tunnel"; + } + container announce-srlg { + presence "Indicates a announce-srlg node is configured."; + description + "Announce the srlg on termination interface"; + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Shuts down LSP/Tunnel"; + container lsp-type { + description + "Lists the Lsp Types"; + container current { + presence "Indicates a current node is configured."; + description + "Shuts down the Current/Working LSP"; + } + container standby { + presence "Indicates a standby node is configured."; + description + "Shuts down the Protect/Standby LSP"; + } + container restore { + presence "Indicates a restore node is configured."; + description + "Shuts down the Restore LSP"; + } + } + } + container signalled-bandwidth { + description + "Set the signaled B/W of the tunnel"; + container odu0 { + presence "Indicates a odu0 node is configured."; + description + "Signalled Bandwidth for ODU0"; + } + container odu1 { + presence "Indicates a odu1 node is configured."; + description + "Signalled Bandwidth for ODU1"; + } + container odu1e { + presence "Indicates a odu1e node is configured."; + description + "Signalled Bandwidth for ODU1e"; + } + container odu1f { + presence "Indicates a odu1f node is configured."; + description + "Signalled Bandwidth for ODU1f"; + } + container odu2 { + presence "Indicates a odu2 node is configured."; + description + "Signalled Bandwidth for ODU2"; + } + container odu2e { + presence "Indicates a odu2e node is configured."; + description + "Signalled Bandwidth for ODU2e"; + } + container odu2f { + presence "Indicates a odu2f node is configured."; + description + "Signalled Bandwidth for ODU2f"; + } + container odu3 { + presence "Indicates a odu3 node is configured."; + description + "Signalled Bandwidth for ODU3"; + } + container odu3e1 { + presence "Indicates a odu3e1 node is configured."; + description + "Signalled Bandwidth for ODU3e1"; + } + container odu3e2 { + presence "Indicates a odu3e2 node is configured."; + description + "Signalled Bandwidth for ODU3e2"; + } + container odu4 { + presence "Indicates a odu4 node is configured."; + description + "Signalled Bandwidth for ODU4"; + } + container oduflex { + description + "Signalled Bandwidth for ODUFlex"; + leaf bitrate { + type uint32 { + range "1..104136740" { + description + "Enter the bitrate for ODUFlex in kbps"; + } + } + description + "Set bit-rate for ODUFlex in kbps"; + } + container framing-type { + description + "Set the framing type for ODUFlex"; + container cbr { + presence "Indicates a cbr node is configured."; + description + "Set framing type as CBR for ODU Flex"; + } + container gfp-f-fixed { + presence "Indicates a gfp-f-fixed node is configured."; + description + "Set framing type as GFP-F-Fixed for ODU Flex"; + } + } + } + } + container path-options { + description + "Path setup option"; + list path-option { + must "dynamic or explicit"; + key "preference"; + description + "Path setup option"; + leaf preference { + type uint32 { + range "1..1000" { + description + "Preference for this path option"; + } + } + description + "Path setup option"; + } + container dynamic { + must "../lockdown"; + presence "Indicates a dynamic node is configured."; + description + "Setup based on dynamically allocated path"; + } + container explicit { + description + "Setup based on preconfigured path"; + container identifier { + must "not(../name) and ../../lockdown"; + presence "Indicates a identifier node is configured."; + description + "Specify an IP explicit path by number"; + leaf explicit-path-number { + type uint32 { + range "1..65535" { + description + "Specify an IP explicit path by number"; + } + } + mandatory true; + description + "Specify an IP explicit path by number"; + } + } + container name { + must "not(../identifier) and ../../lockdown"; + presence "Indicates a name node is configured."; + description + "Specify an IP explicit path by name"; + leaf explicit-path-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Specify an IP explicit path by name"; + } + } + mandatory true; + description + "Specify an IP explicit path by name"; + } + } + } + leaf attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 64 char)"; + } + } + description + "Attribute set for this LSP"; + } + leaf xro-attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 64 char)"; + } + } + description + "Attribute-set containing path exclusions"; + } + container lockdown { + presence "Indicates a lockdown node is configured."; + description + "Path-option is not a candidate for reoptimization"; + } + container protected-by { + description + "Path protection using explicit protecting path"; + container none { + must "not(../explicit-protecting-path)"; + presence "Indicates a none node is configured."; + description + "No path protection"; + } + leaf explicit-protecting-path { + type uint32 { + range "1..1000" { + description + "Explicit protecting path option preference level (index)"; + } + } + must "not(../none)"; + description + "Explicit protecting path option preference level (index)"; + } + } + leaf restored-from { + type uint32 { + range "1..1000" { + description + "Restore path option preference level (index)"; + } + } + description + "Path restoration option"; + } + } + } + container static-uni { + description + "Set the static UNI endpoints of the NNI Tunnel"; + container ingress-port { + description + "Specify an ingress-port"; + container controller { + must "not(../../local-termination)"; + presence "Indicates a controller node is configured."; + description + "Specify an ingress-port controller"; + leaf controller-name { + type xr:Interface-name; + mandatory true; + description + "Ingress-port controller name"; + } + container egress-port { + presence "Indicates a egress-port node is configured."; + description + "Specify an egress-port"; + leaf unnumbered { + type uint32 { + range "0..4294967295" { + description + "Enter the tail-end customer port IF index"; + } + } + mandatory true; + description + "Specify tail-end customer port IF index"; + } + } + container remote-termination { + presence "Indicates a remote-termination node is configured."; + description + "Remote termination for egress"; + leaf unnumbered { + type uint32 { + range "0..4294967295" { + description + "Enter the tail-end customer port IF index"; + } + } + mandatory true; + description + "Specify tail-end customer port IF index"; + } + } + } + } + container local-termination { + must "not(../ingress-port/controller)"; + presence "Indicates a local-termination node is configured."; + description + "Local termination for ingress"; + leaf interface-name { + type xr:Interface-name; + mandatory true; + description + "Ingress Interface"; + } + container egress-port { + presence "Indicates a egress-port node is configured."; + description + "Specify an egress-port"; + leaf unnumbered { + type uint32 { + range "0..4294967295" { + description + "Enter the tail-end customer port IF index"; + } + } + mandatory true; + description + "Specify tail-end customer port IF index"; + } + } + container remote-termination { + presence "Indicates a remote-termination node is configured."; + description + "Remote termination for egress"; + leaf unnumbered { + type uint32 { + range "0..4294967295" { + description + "Enter the tail-end customer port IF index"; + } + } + mandatory true; + description + "Specify tail-end customer port IF index"; + } + } + } + } + container path-protection { + description + "Path protection"; + leaf attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 32 characters)"; + } + } + description + "Path protection attribute set"; + } + } + leaf payload { + type enumeration { + enum "Unkonwn" { + value 0; + description + "Payload is unknown"; + } + enum "bmp" { + value 50; + description + "bmp for payload"; + } + enum "gfp-f" { + value 54; + description + "gfp-f for payload"; + } + enum "gmp" { + value 55; + description + "gmp for payload"; + } + enum "gfp-f-ext" { + value 70; + description + "gfp-f-extended for payload"; + } + } + description + "gpid as mapping"; + } + } + } + container topology { + description + "GMPLS NNI topology instance"; + container instance { + description + "GMPLS NNI topology instance"; + list ospf { + must "areas"; + key "instance-name"; + description + "OSPF instance"; + leaf instance-name { + type xr:Cisco-ios-xr-string { + length "1..40" { + description + "Name for this OSPF instance"; + } + } + description + "OSPF instance"; + } + container areas { + description + "Specify the OSPF area to flood link into"; + list area-decimal { + key "area-id"; + description + "Specify the OSPF area to flood link into"; + leaf area-id { + type uint32 { + range "0..4294967295"; + } + description + "Specify the OSPF area ID as a decimal value"; + } + container controllers { + description + "Configure GMPLS-NNI on a link"; + list controller { + key "controller-id"; + description + "Configure GMPLS-NNI on a link"; + leaf controller-id { + type xr:Interface-name; + description + "Configure GMPLS-NNI on a link"; + } + leaf admin-weight { + type uint32 { + range "0..65535" { + description + "Admin weight value"; + } + } + description + "Contoller admin weight"; + } + container affinity-names { + description + "Specify one or more color for the Contoller"; + leaf-list affinity-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "User defined affinity-name"; + } + } + max-elements "32"; + description + "Specify one or more color for the Contoller"; + } + } + leaf delay { + type uint32 { + range "1..16777215" { + description + "TE link delay value in micro-sec"; + } + } + description + "TE link delay"; + } + container tti-mode { + description + "TTI Mode to carry TE Link Id,default is otu_sm"; + container otu-sm { + presence "Indicates a otu-sm node is configured."; + description + "Section Monitoring for OTU"; + } + container odu-pm { + presence "Indicates a odu-pm node is configured."; + description + "Path Monitoring for ODU"; + } + leaf odu-tcm { + type uint32 { + range "1..6" { + description + "Enter the Tandem Connection Monitoring ID"; + } + } + description + "Tandem Connection Monitoring for ODU"; + } + } + } + } + } + list area-address { + key "area-id"; + description + "Specify the OSPF area to flood link into"; + leaf area-id { + type inet:ipv4-address-no-zone; + description + "Specify the OSPF area ID in IP address format"; + } + container controllers { + description + "Configure GMPLS-NNI on a link"; + list controller { + key "controller-id"; + description + "Configure GMPLS-NNI on a link"; + leaf controller-id { + type xr:Interface-name; + description + "Configure GMPLS-NNI on a link"; + } + leaf admin-weight { + type uint32 { + range "0..65535" { + description + "Admin weight value"; + } + } + description + "Contoller admin weight"; + } + container affinity-names { + description + "Specify one or more color for the Contoller"; + leaf-list affinity-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "User defined affinity-name"; + } + } + max-elements "32"; + description + "Specify one or more color for the Contoller"; + } + } + leaf delay { + type uint32 { + range "1..16777215" { + description + "TE link delay value in micro-sec"; + } + } + description + "TE link delay"; + } + container tti-mode { + description + "TTI Mode to carry TE Link Id,default is otu_sm"; + container otu-sm { + presence "Indicates a otu-sm node is configured."; + description + "Section Monitoring for OTU"; + } + container odu-pm { + presence "Indicates a odu-pm node is configured."; + description + "Path Monitoring for ODU"; + } + leaf odu-tcm { + type uint32 { + range "1..6" { + description + "Enter the Tandem Connection Monitoring ID"; + } + } + description + "Tandem Connection Monitoring for ODU"; + } + } + } + } + } + } + } + } + } + } + } + container maxabs { + must "(tunnels and not(destinations or p2mp-tunnels)) or (destinations and not(tunnels or p2mp-tunnels)) or (p2mp-tunnels and not(tunnels or destinations))"; + presence "Indicates a maxabs node is configured."; + description + "Maximum number of Traffic engineering attribute"; + leaf tunnels { + type uint32 { + range "1..65536" { + description + "Desired Maximum Number"; + } + } + description + "All MPLS Traffic Engineering Tunnels"; + } + leaf destinations { + type uint32 { + range "1..65536" { + description + "Desired Maximum Number"; + } + } + description + "All MPLS Traffic Engineering Destinations"; + } + leaf p2mp-tunnels { + type uint32 { + range "1..65536" { + description + "Desired Maximum Number"; + } + } + description + "P2MP MPLS Traffic Engineering Tunnels"; + } + } + container route-priority { + description + "Set route-priorities for tunnel labels"; + container role { + description + "Set route-priorities for tunnel roles"; + container head { + description + "Set route-priorities for tunnel heads"; + container primary { + description + "Set route-priorities for non-backup tunnels"; + leaf queue { + type uint32 { + range "0..12" { + description + "LSD queue value (the lower value is the higher priority queue)"; + } + } + description + "Set route-priority queue value"; + } + } + container backup { + description + "Set route-priorities for backup tunnels"; + leaf queue { + type uint32 { + range "0..12" { + description + "LSD queue value (the lower value is the higher priority queue)"; + } + } + description + "Set route-priority queue value"; + } + } + } + container middle { + description + "Set route-priorities for tunnel midpoints"; + leaf queue { + type uint32 { + range "0..12" { + description + "LSD queue value (the lower value is the higher priority queue)"; + } + } + description + "Set route-priority queue value"; + } + } + } + } + container load-share { + description + "Load-share configuration"; + container unequal { + presence "Indicates a unequal node is configured."; + description + "Enable unequal load-sharing across TE tunnels to the same destination"; + } + } + container auto-bw { + description + "Auto-bandwidth configuration"; + container collect { + description + "Auto-bandwidth collection parameters"; + leaf frequency { + type uint32 { + range "1..10080" { + description + "Auto-bandwidth collection frequency in minutes"; + } + } + description + "Auto-bandwidth collection frequency parameter"; + } + } + } + container soft-preemption { + presence "Indicates a soft-preemption node is configured."; + description + "Enable soft-preemption"; + leaf timeout { + type uint32 { + range "1..300" { + description + "Timeout for soft-preempted LSP in seconds: default 60"; + } + } + description + "Specify a timeout for soft-preempted LSP"; + } + container frr-rewrite { + presence "Indicates a frr-rewrite node is configured."; + description + "Move the traffic on the FRR backup tunnel"; + } + } + container preemption-graceful { + description + "Enable graceful preemption"; + container bw-reduction { + presence "Indicates a bw-reduction node is configured."; + description + "Enable graceful preemption when there is a bandwidth reduction"; + } + } + container srlg { + presence "Indicates a srlg node is configured."; + description + "Traffic Engineering SRLG submode"; + leaf admin-weight { + type uint32 { + range "0..4294967295" { + description + "Value added to link admin-weight during SRLG-aware path computation"; + } + } + description + "Default administrative weight for all SRLGs, default is 1"; + } + container names { + description + "SRLG Name"; + list name { + key "srlg-name"; + description + "SRLG Name"; + leaf srlg-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "SRLG Name"; + } + } + description + "SRLG Name"; + } + leaf admin-weight { + type uint32 { + range "0..4294967295" { + description + "Value added to link admin-weight during SRLG-aware path computation"; + } + } + description + "Administrative weight: default inherited from the global admin-weight"; + } + container static { + description + "Configure static SRLG under name"; + container ipv4 { + description + "IPv4 address"; + list address { + key "local-address"; + description + "IPv4 address of local end-point of the link"; + leaf local-address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of local end-point of the link"; + } + container next-hop { + description + "Next hop of the link"; + container ipv4 { + description + "IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of remote end-point of the link"; + } + } + } + } + } + } + } + } + } + container mib { + description + "MPLS-TE MIB properties"; + container midstats { + description + "Midpoint LSP traffic stats collection"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disables MIB midpoint LSP traffic stats collection"; + } + } + } + container fault-oam { + presence "Indicates a fault-oam node is configured."; + description + "Enable fault OAM functionality for bi-directional tunnels"; + } + container hw-oor { + description + "Config submode for NPU OOR handling in MPLS-TE"; + container green { + description + "Config submode for handling NPU OOR in normal/green state"; + container action { + description + "Action to take in the HW-OOR state"; + container flood { + description + "Flooding parameters in the HW-OOR state"; + container te-metric { + description + "Change the TE metric for the link in HW-OOR state"; + leaf penalty { + type uint32 { + range "0..16777215" { + description + "Value added to link metric when in HW-OOR state"; + } + } + description + "Add a penalty to the TE metric of the link in HW-OOR state. Default is 0"; + } + } + leaf available-bw { + type uint32 { + range "0..100" { + description + "Percentage of available BW when the link is in HW-OOR state"; + } + } + description + "Specify the percentage of available BW for the link in HW-OOR state. Default is to flood 100% of the available bandwidth"; + } + } + container node-protection { + description + "Configure the FRR node-protection action in this HW-OOR state"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable FRR node-protection backups for the LSPs that use the interface in HW-OOR"; + } + } + container accept { + description + "Configure the accepted operations in this HW-OOR state"; + container reopt-lsp { + presence "Indicates a reopt-lsp node is configured."; + description + "Accept the reopt LSP sharing the same link in HW-OOR state as the current LSP"; + } + } + container admit { + description + "Configure the admission operations in this HW-OOR state"; + leaf lsp-min-bw { + type uint32 { + range "0..4294967295" { + description + "Minimim bandwidth (in kbps) of accepted LSPs, default is 0"; + } + } + description + "Accept LSPs that are at least equal to the specified bandwidth"; + } + } + } + leaf recovery-duration { + type uint32 { + range "0..10080" { + description + "Number of minutes for the recovery in Green state, default is 0"; + } + } + description + "Configure how long the actions are taken in HW-OOR Green state after recovery"; + } + } + container yellow { + description + "Config submode for handling NPU OOR in minor/yellow state"; + container action { + description + "Action to take in the HW-OOR state"; + container flood { + description + "Flooding parameters in the HW-OOR state"; + container te-metric { + description + "Change the TE metric for the link in HW-OOR state"; + leaf penalty { + type uint32 { + range "0..16777215" { + description + "Value added to link metric when in HW-OOR state"; + } + } + description + "Add a penalty to the TE metric of the link in HW-OOR state. Default is 0"; + } + } + leaf available-bw { + type uint32 { + range "0..100" { + description + "Percentage of available BW when the link is in HW-OOR state"; + } + } + description + "Specify the percentage of available BW for the link in HW-OOR state. Default is to flood 100% of the available bandwidth"; + } + } + container node-protection { + description + "Configure the FRR node-protection action in this HW-OOR state"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable FRR node-protection backups for the LSPs that use the interface in HW-OOR"; + } + } + container accept { + description + "Configure the accepted operations in this HW-OOR state"; + container reopt-lsp { + presence "Indicates a reopt-lsp node is configured."; + description + "Accept the reopt LSP sharing the same link in HW-OOR state as the current LSP"; + } + } + container admit { + description + "Configure the admission operations in this HW-OOR state"; + leaf lsp-min-bw { + type uint32 { + range "0..4294967295" { + description + "Minimim bandwidth (in kbps) of accepted LSPs, default is 0"; + } + } + description + "Accept LSPs that are at least equal to the specified bandwidth"; + } + } + } + leaf recovery-duration { + type uint32 { + range "0..10080" { + description + "Number of minutes for the recovery in Green state, default is 0"; + } + } + description + "Configure how long the actions are taken in HW-OOR Green state after recovery"; + } + } + container red { + description + "Config submode for handling NPU OOR in major/red state"; + container action { + description + "Action to take in the HW-OOR state"; + container flood { + description + "Flooding parameters in the HW-OOR state"; + container te-metric { + description + "Change the TE metric for the link in HW-OOR state"; + leaf penalty { + type uint32 { + range "0..16777215" { + description + "Value added to link metric when in HW-OOR state"; + } + } + description + "Add a penalty to the TE metric of the link in HW-OOR state. Default is 0"; + } + } + leaf available-bw { + type uint32 { + range "0..100" { + description + "Percentage of available BW when the link is in HW-OOR state"; + } + } + description + "Specify the percentage of available BW for the link in HW-OOR state. Default is to flood 100% of the available bandwidth"; + } + } + container node-protection { + description + "Configure the FRR node-protection action in this HW-OOR state"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable FRR node-protection backups for the LSPs that use the interface in HW-OOR"; + } + } + container accept { + description + "Configure the accepted operations in this HW-OOR state"; + container reopt-lsp { + presence "Indicates a reopt-lsp node is configured."; + description + "Accept the reopt LSP sharing the same link in HW-OOR state as the current LSP"; + } + } + container admit { + description + "Configure the admission operations in this HW-OOR state"; + leaf lsp-min-bw { + type uint32 { + range "0..4294967295" { + description + "Minimim bandwidth (in kbps) of accepted LSPs, default is 0"; + } + } + description + "Accept LSPs that are at least equal to the specified bandwidth"; + } + } + } + leaf recovery-duration { + type uint32 { + range "0..10080" { + description + "Number of minutes for the recovery in Green state, default is 0"; + } + } + description + "Configure how long the actions are taken in HW-OOR Green state after recovery"; + } + } + } + container lsp-oor { + description + "Config submode for LSP OOR handling in MPLS-TE"; + container yellow { + description + "Config submode for LSP OOR in minor/yellow state"; + container transit-all { + description + "Limit for all transit or midpoint LSPs"; + leaf threshold { + type uint32 { + range "0..4294967295" { + description + "Threshold for all transit LSPs. Default is unlimited"; + } + } + description + "Threshold for all transit LSPs"; + } + } + container transit-unprotected { + description + "Limit for unprotected transit or midpoint LSPs"; + leaf threshold { + type uint32 { + range "0..4294967295" { + description + "Threshold for unprotected transit LSPs; Default is unlimited"; + } + } + description + "Threshold for unprotected transit LSPs"; + } + } + } + container red { + description + "Config submode for LSP OOR in major/red state"; + container transit-all { + description + "Limit for all transit or midpoint LSPs"; + leaf threshold { + type uint32 { + range "0..4294967295" { + description + "Threshold for all transit LSPs. Default is unlimited"; + } + } + description + "Threshold for all transit LSPs"; + } + } + container transit-unprotected { + description + "Limit for unprotected transit or midpoint LSPs"; + leaf threshold { + type uint32 { + range "0..4294967295" { + description + "Threshold for unprotected transit LSPs; Default is unlimited"; + } + } + description + "Threshold for unprotected transit LSPs"; + } + } + } + } + container pce { + description + "MPLS Traffic Engineering PCE functionality"; + leaf keepalive { + type uint32 { + range "0..255" { + description + "Keepalive interval in sec"; + } + } + description + "Keepalive interval in sec"; + } + leaf deadtimer { + type uint32 { + range "0..255" { + description + "Keepalive dead interval in sec"; + } + } + description + "Keepalive dead in sec"; + } + container tolerance { + description + "Tolerance for session parameters proposed by peers"; + leaf keepalive { + type uint32 { + range "0..255" { + description + "Keepalive interval in sec"; + } + } + description + "Minimum acceptable peer proposed keepalive"; + } + } + leaf request-timeout { + type uint32 { + range "5..100" { + description + "Request timeout in seconds"; + } + } + description + "Timeout period for pending request"; + } + leaf reoptimize { + type uint32 { + range "60..604800" { + description + "Reoptimization period in seconds"; + } + } + description + "Reoptimization period for PCE-based paths"; + } + leaf speaker-entity-id { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Identifying name for the speaker with max 256 characters"; + } + } + description + "PCE speaker entity identifier"; + } + container logging { + description + "Log PCE info"; + container events { + description + "Log events info"; + container peer-status { + presence "Indicates a peer-status node is configured."; + description + "Log peer status changes"; + } + } + } + container password { + description + "Configure global password for MD5 authentication"; + leaf encrypted { + type xr:Proprietary-password; + description + "Specifies an ENCRYPTED password will follow"; + } + } + leaf keychain { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the key chain - maximum 32 characters"; + } + } + description + "Configure keychain based authentication for PCE"; + } + container stateful-client { + presence "Indicates a stateful-client node is configured."; + description + "Enter the stateful PCE client configuration submode"; + container instantiation { + presence "Indicates a instantiation node is configured."; + description + "Enable stateful instantiate capability"; + } + container report { + presence "Indicates a report node is configured."; + description + "Report all statically configured tunnels"; + } + container fast-repair { + presence "Indicates a fast-repair node is configured."; + description + "Enable head-end to react to path failures"; + } + container cisco-extension { + presence "Indicates a cisco-extension node is configured."; + description + "Enable processing of PCEP Cisco extension"; + } + container autoroute-announce { + presence "Indicates a autoroute-announce node is configured."; + description + "Enable autoroute announce for PCE tunnels"; + } + container timers { + description + "Stateful client timers"; + leaf state-timeout { + type uint32 { + range "0..3600" { + description + "Cleanup time in seconds"; + } + } + description + "State timeout for LSPs without delegation in seconds, zero means immediate removal, default is 180 seconds"; + } + leaf redelegation-timeout { + type uint32 { + range "0..3600" { + description + "Time in seconds"; + } + } + description + "Redelegation timeout for LSPs after session failure in seconds, zero means immediate drop delegation, default is 180seconds"; + } + container redundancy { + description + "PCE Redundancy configuration"; + container pcc-centric { + presence "Indicates a pcc-centric node is configured."; + description + "Enable PCC centric model"; + } + } + } + } + container peer { + description + "PCE peer related configuration"; + container source { + description + "Peer source"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + container ipv4s { + description + "IPv4 address"; + list ipv4 { + key "address"; + description + "IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + container password { + description + "Configure password for MD5 authentication"; + leaf encrypted { + type xr:Proprietary-password; + description + "Specifies an ENCRYPTED password will follow"; + } + } + leaf keychain { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the key chain - maximum 32 characters"; + } + } + description + "Configure keychain based authentication for PCC"; + } + leaf precedence { + type uint32 { + range "0..255" { + description + "PCE server precedence order (low precedence corresponds to high priority)"; + } + } + description + "PCE Peer Precedence"; + } + } + } + } + } + container auto-tunnel { + description + "Automatically created tunnel configuration"; + container backup { + description + "Enter the auto-tunnel backup configuration submode"; + container affinity { + description + "Affinity for auto-tunnel backup tunnels"; + container ignore { + presence "Indicates a ignore node is configured."; + description + "Ignore link affinites for PCALC for auto-backup tunnels"; + } + } + container tunnel-id { + description + "Specify Tunnel ID range (modify may result auto-tunnel delete)"; + leaf min { + type uint32 { + range "0..65535" { + description + "Minimum value of tunnel ID for auto-tunnel backups"; + } + } + description + "Minimum tunnel ID for auto-tunnel backups"; + } + leaf max { + type uint32 { + range "0..65535" { + description + "Maximum value of tunnel ID for auto-tunnel backups"; + } + } + description + "Maximum tunnel ID for auto-tunnel backups"; + } + } + container timers { + description + "Auto-tunnel backups related timers"; + container removal { + description + "Auto-tunnel backups removal timers"; + leaf unused { + type uint32 { + range "0..10080" { + description + "Auto-tunnel backup unused timeout in minutes (0=never timeout)"; + } + } + description + "Auto-tunnel backups unused removal timer"; + } + } + } + } + container mesh { + description + "Enter the auto-tunnel mesh configuration submode"; + container tunnel-id { + description + "Specify Tunnel ID range (modify may result auto-tunnel delete)"; + leaf min { + type uint32 { + range "0..65535" { + description + "Minimum value of tunnel ID for auto-tunnel mesh"; + } + } + description + "Minimum tunnel ID for auto-tunnel mesh"; + } + leaf max { + type uint32 { + range "0..65535" { + description + "Maximum value of tunnel ID for auto-tunnel mesh"; + } + } + description + "Maximum tunnel ID for auto-tunnel mesh"; + } + } + container timers { + description + "Auto-tunnel mesh related timers"; + container removal { + description + "Auto-tunnel mesh removal timers"; + leaf unused { + type uint32 { + range "0..10080" { + description + "Auto-tunnel mesh unused timeout in minutes (0=never timeout)"; + } + } + description + "Auto-tunnel mesh unused removal timer"; + } + } + } + container groups { + description + "Enter the auto-tunnel mesh group configuration submode"; + list group { + key "group-id"; + description + "Enter the auto-tunnel mesh group configuration submode"; + leaf group-id { + type uint32 { + range "0..4294967295" { + description + "Auto-tunnel mesh group ID"; + } + } + description + "Enter the auto-tunnel mesh group configuration submode"; + } + leaf attribute-set { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (max 64 char)"; + } + } + description + "Attribute-set name of type auto-mesh"; + } + leaf destination-list { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify destination-list (prefix-list) (max 32 char)"; + } + } + description + "Destination-list (prefix-list) name"; + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable the mesh group"; + } + container onehop { + presence "Indicates a onehop node is configured."; + description + "Automatically create tunnel to all next-hops"; + } + } + } + } + container p2mp { + description + "Enter the auto-tunnel P2MP configuration submode"; + container tunnel-id { + description + "Specify Tunnel ID range (modify may result auto-tunnel delete)"; + leaf min { + type uint32 { + range "0..65535" { + description + "Minimum value of tunnel ID for auto-tunnel P2MP"; + } + } + description + "Minimum tunnel ID for auto-tunnel P2MP"; + } + leaf max { + type uint32 { + range "0..65535" { + description + "Maximum value of tunnel ID for auto-tunnel P2MP"; + } + } + description + "Maximum tunnel ID for auto-tunnel P2MP"; + } + } + } + container p2p { + description + "Enter the auto-tunnel p2p configuration submode"; + container tunnel-id { + description + "Specify Tunnel ID range (modify may result auto-tunnel delete)"; + leaf min-id { + type uint32 { + range "0..65535" { + description + "Minimum value of tunnel ID for auto-tunnel p2p"; + } + } + description + "Minimum tunnel ID for auto-tunnel p2p"; + } + leaf max { + type uint32 { + range "0..65535" { + description + "Maximum value of tunnel ID for auto-tunnel p2p"; + } + } + description + "Maximum tunnel ID for auto-tunnel p2p"; + } + } + } + container pcc { + description + "Enter the auto-tunnel stateful PCE client configuration submode"; + container tunnel-id { + description + "Specify Tunnel ID range (modify may result auto-tunnel delete)"; + leaf min { + type uint32 { + range "0..65535" { + description + "Minimum tunnel ID value for stateful PCE client auto-tunnels"; + } + } + description + "Minimum tunnel ID for stateful PCE client auto-tunnels"; + } + leaf max { + type uint32 { + range "0..65535" { + description + "Maximum tunnel ID value for stateful PCE client auto-tunnels"; + } + } + description + "Maximum tunnel ID for stateful PCE client auto-tunnels"; + } + } + } + } + container attribute-set { + description + "Specify attribute set"; + container auto-meshes { + description + "Attribute-set of auto mesh type"; + list auto-mesh { + key "attribute-set-name"; + description + "Attribute-set of auto mesh type"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 64 characters)"; + } + } + description + "Attribute-set of auto mesh type"; + } + container policy-class { + description + "Specify class for policy-based tunnel selection"; + container tunnel-policy-classes { + description + "Tunnel policy class"; + leaf-list tunnel-policy-class { + type policy-class-type; + max-elements "7"; + description + "Tunnel policy class"; + } + } + } + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel priority"; + leaf setup-priority { + type uint32 { + range "0..7" { + description + "Setup Priority"; + } + } + mandatory true; + description + "Tunnel priority"; + } + leaf hold-priority { + type uint32 { + range "0..7" { + description + "Hold Priority"; + } + } + mandatory true; + description + "Hold Priority"; + } + } + container signalled-bandwidth { + presence "Indicates a signalled-bandwidth node is configured."; + description + "Tunnel bandwidth requirement to be signalled"; + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + mandatory true; + description + "Tunnel bandwidth requirement to be signalled"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the bandwidth class type"; + } + } + container affinity { + description + "Link attributes for links traversed by tunnel"; + leaf affinity-attribute { + type xr:Hex-integer; + description + "Link attributes for links traversed by tunnel"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask value"; + } + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + } + container auto-bw { + description + "Enable tunnel auto-bandwidth"; + container collect-bw-only { + presence "Indicates a collect-bw-only node is configured."; + description + "Enable bandwidth collection only, no auto-bw adjustment"; + } + } + container fast-reroute { + presence "Indicates a fast-reroute node is configured."; + description + "Specify MPLS tunnel can be fast-rerouted"; + container protect { + description + "Enable protection request"; + container node { + presence "Indicates a node node is configured."; + description + "Enable node protection request"; + } + container bandwidth { + presence "Indicates a bandwidth node is configured."; + description + "Enable bandwidth protection request"; + } + } + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Record the route used by the tunnel"; + } + container autoroute { + description + "Parameters for IGP routing over tunnel"; + container announce { + presence "Indicates a announce node is configured."; + description + "Announce tunnel to IGP"; + } + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable interface LSP REOPT change alarms"; + } + container reoptimize-attempts { + presence "Indicates a reoptimize-attempts node is configured."; + description + "Enable interface LSP REOPT attempts change alarms"; + } + container bw-change { + presence "Indicates a bw-change node is configured."; + description + "Enable interface LSP BANDWIDTH change alarms"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable interface LSP REROUTE change alarms"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup/reopt failure due to bandwidth"; + } + } + container pcalc-failure { + presence "Indicates a pcalc-failure node is configured."; + description + "Enable logging for path calculation failures"; + } + } + } + container soft-preemption { + presence "Indicates a soft-preemption node is configured."; + description + "Enable the soft-preemption feature on this tunnel"; + } + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "bandwidth in kbps"; + } + } + description + "Set the bandwidth of an interface"; + } + leaf forward-class { + type uint32 { + range "0..7" { + description + "Forward class for the tunnel. Default: feature not enabled"; + } + } + description + "Forward class for the tunnel. Default: feature not enabled"; + } + leaf load-share { + type uint32 { + range "1..4294967295" { + description + "Loadshare value. Scale is the same as bandwidths."; + } + } + description + "Specify tunnel load-sharing metric"; + } + container path-selection { + presence "Indicates a path-selection node is configured."; + description + "Specify path selection"; + } + } + } + container auto-backups { + description + "Attribute-set of auto-backup type"; + list auto-backup { + key "attribute-set-name"; + description + "Attribute-set of auto-backup type"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 64 characters)"; + } + } + description + "Attribute-set of auto-backup type"; + } + container policy-class { + description + "Specify class for policy-based tunnel selection"; + container tunnel-policy-classes { + description + "Tunnel policy class"; + leaf-list tunnel-policy-class { + type policy-class-type; + max-elements "7"; + description + "Tunnel policy class"; + } + } + } + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel priority"; + leaf setup-priority { + type uint32 { + range "0..7" { + description + "Setup Priority"; + } + } + mandatory true; + description + "Tunnel priority"; + } + leaf hold-priority { + type uint32 { + range "0..7" { + description + "Hold Priority"; + } + } + mandatory true; + description + "Hold Priority"; + } + } + container signalled-bandwidth { + presence "Indicates a signalled-bandwidth node is configured."; + description + "Tunnel bandwidth requirement to be signalled"; + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + mandatory true; + description + "Tunnel bandwidth requirement to be signalled"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the bandwidth class type"; + } + } + container affinity { + description + "Link attributes for links traversed by tunnel"; + leaf affinity-attribute { + type xr:Hex-integer; + description + "Link attributes for links traversed by tunnel"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask value"; + } + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Record the route used by the tunnel"; + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable interface LSP REOPT change alarms"; + } + container reoptimize-attempts { + presence "Indicates a reoptimize-attempts node is configured."; + description + "Enable interface LSP REOPT attempts change alarms"; + } + container bw-change { + presence "Indicates a bw-change node is configured."; + description + "Enable interface LSP BANDWIDTH change alarms"; + } + } + } + } + container soft-preemption { + presence "Indicates a soft-preemption node is configured."; + description + "Enable the soft-preemption feature on this tunnel"; + } + container signalled-name { + presence "Indicates a signalled-name node is configured."; + description + "The signaling name to assign to tunnel"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Signalled name (max 64 characters)"; + } + } + mandatory true; + description + "The signaling name to assign to tunnel"; + } + container append { + description + "Append other parameters to signalled name"; + container source { + must "address or name"; + presence "Indicates a source node is configured."; + description + "Append source to signalled name"; + container address { + presence "Indicates a address node is configured."; + description + "Append source address to signalled name"; + } + container name { + presence "Indicates a name node is configured."; + description + "Append source name to signalled name"; + } + } + container protected-link { + must "address or name"; + presence "Indicates a protected-link node is configured."; + description + "Append protected-link to signalled name"; + container address { + presence "Indicates a address node is configured."; + description + "Append protected-link address to signalled name"; + } + container name { + presence "Indicates a name node is configured."; + description + "Append protected-link name to signalled name"; + } + } + container merge-point-address { + presence "Indicates a merge-point-address node is configured."; + description + "Append merge-point address to signalled name"; + } + } + } + container path-selection { + presence "Indicates a path-selection node is configured."; + description + "Specify path selection"; + } + } + } + container path-options { + description + "Attribute-set of a path option"; + list path-option { + key "attribute-set-name"; + description + "Attribute-set of a path option"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 64 characters)"; + } + } + description + "Attribute-set of a path option"; + } + container signalled-bandwidth { + presence "Indicates a signalled-bandwidth node is configured."; + description + "Tunnel bandwidth requirement to be signalled"; + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + mandatory true; + description + "Tunnel bandwidth requirement to be signalled"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the bandwidth class type"; + } + } + container affinity { + description + "Link attributes for links traversed by tunnel"; + leaf affinity-attribute { + type xr:Hex-integer; + description + "Link attributes for links traversed by tunnel"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask value"; + } + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + } + container path-selection { + presence "Indicates a path-selection node is configured."; + description + "Specify path selection"; + leaf cost-limit { + type uint32 { + range "1..4294967295" { + description + "Cost limit"; + } + } + description + "Cost limit configuration"; + } + leaf exclude { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Exclude address list name"; + } + } + description + "Path Exclusion Configuration"; + } + leaf delay-limit { + type uint32 { + range "1..4294967295" { + description + "Delay limit in usec"; + } + } + description + "Delay limit configuration"; + } + } + container pce { + presence "Indicates a pce node is configured."; + description + "Specify PCE Configuration"; + container disjoint-path { + description + "Disjoint Path Configuration"; + leaf source { + type inet:ipv4-address-no-zone; + description + "Source address"; + } + container type { + must "link or node or srlg"; + presence "Indicates a type node is configured."; + description + "Disjointness type"; + container link { + presence "Indicates a link node is configured."; + description + "Link Disjointness"; + } + container node { + presence "Indicates a node node is configured."; + description + "Node Disjointness"; + } + container srlg { + presence "Indicates a srlg node is configured."; + description + "SRLG Disjointness"; + } + } + leaf group-id { + type uint32 { + range "1..4294967295" { + description + "Enter group-id"; + } + } + description + "Enter group-id"; + } + } + } + container bfd-reverse-path { + description + "Specify bfd reverse path"; + leaf binding-label { + type uint32 { + range "0..1048575" { + description + "MPLS binding-label value"; + } + } + description + "Specify reverse path binding-label"; + } + } + } + } + container xros { + description + "An XRO attribute-set"; + list xro { + key "attribute-set-name"; + description + "An XRO attribute-set"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 64 characters)"; + } + } + description + "An XRO attribute-set"; + } + container exclude { + description + "Specify exclusions for path diversity"; + container strict { + description + "Specified condition must be met"; + container lsps { + description + "Specify path-diversity from another LSP"; + list lsp-no-lsp-id { + key "source destination tunnel-id extended-tunnel-id"; + description + "Specify path-diversity from another LSP"; + leaf source { + type inet:ipv4-address-no-zone; + description + "The source of the LSP from which a diverse path is required"; + } + leaf destination { + type inet:ipv4-address-no-zone; + description + "The destination of the LSP from which a diverse path is required"; + } + leaf tunnel-id { + type uint32 { + range "0..65535" { + description + "The LSP's tunnel-id"; + } + } + description + "The tunnel-id of the LSP from which a diverse path is required"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "The extended tunnel-id of the LSP from which a diverse path is required"; + } + } + list lsp { + key "source destination tunnel-id extended-tunnel-id lsp-id"; + description + "LSP details"; + leaf source { + type inet:ipv4-address-no-zone; + description + "The source of the LSP from which a diverse path is required"; + } + leaf destination { + type inet:ipv4-address-no-zone; + description + "The destination of the LSP from which a diverse path is required"; + } + leaf tunnel-id { + type uint32 { + range "0..65535" { + description + "The LSP's tunnel-id"; + } + } + description + "The tunnel-id of the LSP from which a diverse path is required"; + } + leaf extended-tunnel-id { + type inet:ipv4-address-no-zone; + description + "The extended tunnel-id of the LSP from which a diverse path is required"; + } + leaf lsp-id { + type uint32 { + range "0..65535" { + description + "The LSP's lsp-id"; + } + } + description + "The lsp-id of the LSP from which a diverse path is required"; + } + } + } + container srlgs { + description + "Specify path-diversity based on SRLGs"; + list srlg { + key "value"; + description + "Specify SRLG value"; + leaf value { + type uint32 { + range "0..4294967295" { + description + "The SRLG from which diversity is required"; + } + } + description + "Specify SRLG value"; + } + } + } + } + } + container path-selection { + presence "Indicates a path-selection node is configured."; + description + "Specify path selection"; + } + } + } + container p2mp-tes { + description + "Attribute-set of p2mp-te type"; + list p2mp-te { + key "attribute-set-name"; + description + "Attribute-set of p2mp-te type"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 64 characters)"; + } + } + description + "Attribute-set of p2mp-te type"; + } + container priority { + presence "Indicates a priority node is configured."; + description + "Tunnel priority"; + leaf setup-priority { + type uint32 { + range "0..7" { + description + "Setup Priority"; + } + } + mandatory true; + description + "Tunnel priority"; + } + leaf hold-priority { + type uint32 { + range "0..7" { + description + "Hold Priority"; + } + } + mandatory true; + description + "Hold Priority"; + } + } + container signalled-bandwidth { + presence "Indicates a signalled-bandwidth node is configured."; + description + "Tunnel bandwidth requirement to be signalled"; + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "Bandwidth requirement in kbps"; + } + } + mandatory true; + description + "Tunnel bandwidth requirement to be signalled"; + } + leaf class-type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the bandwidth class type"; + } + } + container affinity { + description + "Link attributes for links traversed by tunnel"; + leaf affinity-attribute { + type xr:Hex-integer; + description + "Link attributes for links traversed by tunnel"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask value"; + } + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + } + container fast-reroute { + presence "Indicates a fast-reroute node is configured."; + description + "Specify MPLS tunnel can be fast-rerouted"; + container protect { + description + "Enable protection request"; + container node { + presence "Indicates a node node is configured."; + description + "Enable node protection request"; + } + container bandwidth { + presence "Indicates a bandwidth node is configured."; + description + "Enable bandwidth protection request"; + } + } + } + container record-route { + presence "Indicates a record-route node is configured."; + description + "Record the route used by the tunnel"; + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable interface LSP REOPT change alarms"; + } + container reoptimize-attempts { + presence "Indicates a reoptimize-attempts node is configured."; + description + "Enable interface LSP REOPT attempts change alarms"; + } + container bw-change { + presence "Indicates a bw-change node is configured."; + description + "Enable interface LSP BANDWIDTH change alarms"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable interface LSP REROUTE change alarms"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup/reopt failure due to bandwidth"; + } + } + container pcalc-failure { + presence "Indicates a pcalc-failure node is configured."; + description + "Enable logging for path calculation failures"; + } + container sub-lsp-status { + description + "Enable all sub-LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + } + } + } + leaf bandwidth { + type uint32 { + range "0..4294967295" { + description + "bandwidth in kbps"; + } + } + description + "Set the bandwidth of an interface"; + } + container path-selection { + presence "Indicates a path-selection node is configured."; + description + "Specify path selection"; + } + } + } + container path-protection-apses { + description + "Attribute-set of path protection"; + list path-protection-aps { + key "attribute-set-name"; + description + "Attribute-set of path protection"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 32 characters)"; + } + } + description + "Attribute-set of path protection"; + } + container sub-network { + description + "Specify sub-network connection mode"; + container connection-mode { + description + "Specify sub-network connection mode"; + container snc-n { + presence "Indicates a snc-n node is configured."; + description + "Sub-network connection mode N"; + } + container snc-i { + presence "Indicates a snc-i node is configured."; + description + "Sub-network connection mode I"; + } + container snc-s { + presence "Indicates a snc-s node is configured."; + description + "Sub-network connection mode S"; + leaf tcm-id { + type uint32 { + range "1..6" { + description + "Enter the Tandem Connection Monitoring ID"; + } + } + description + "Optional, for SNC-S mode only: Tandem Connection Monitoring ID"; + } + } + } + } + container protection-type { + description + "Specify APS protection type"; + container bidir-aps { + presence "Indicates a bidir-aps node is configured."; + description + "Protection type bi-directional APS"; + } + container unidir-aps { + presence "Indicates a unidir-aps node is configured."; + description + "Protection type uni-directional APS"; + } + container unidir-no-aps { + presence "Indicates a unidir-no-aps node is configured."; + description + "Protection type uni-directional no APS"; + } + } + container protection-mode { + description + "Specify APS protection mode"; + container revertive { + presence "Indicates a revertive node is configured."; + description + "APS protection mode revertive"; + } + } + container timers { + description + "Specify APS protection timers"; + leaf wait-to-restore { + type uint32 { + range "0..720" { + description + "G.709 path protection wait to restore timer in seconds"; + } + } + description + "APS wait to restore timer"; + } + leaf hold-off { + type uint32 { + range "100..10000" { + description + "G.709 PP hold-off timer in milliseconds"; + } + } + description + "APS hold-off timer"; + } + } + container revert-schedules { + description + "Specify APS revert schedule"; + list revert-schedule { + key "schedule-name"; + description + "Specify APS revert schedule"; + leaf schedule-name { + type xr:Cisco-ios-xr-string { + length "1..254" { + description + "Name this revert schedule configuration (MAX 64 CHARACTERS)"; + } + } + description + "Name Identifier for revert schedule"; + } + container date { + presence "Indicates a date node is configured."; + description + "Set the time and date in format hh:mm MMM DD YYYY"; + leaf hour { + type uint32 { + range "0..23" { + description + "Enter (hh) of schedule time (hh:mm) in 24hr format. Eg. 2:15PM as 14:15"; + } + } + mandatory true; + description + "Set the time and date in format hh:mm MMM DD YYYY"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Enter (mm) of schedule time (hh:mm) in 24hr format. Eg. 2:15PM as 14:15"; + } + } + mandatory true; + description + "Enter (mm) of schedule time (hh:mm) in 24hr format. Eg. 2:15PM as 14:15"; + } + leaf month { + type enumeration { + enum "JAN" { + value 0; + description + "January"; + } + enum "FEB" { + value 1; + description + "February"; + } + enum "MAR" { + value 2; + description + "March"; + } + enum "APR" { + value 3; + description + "April"; + } + enum "MAY" { + value 4; + description + "May"; + } + enum "JUN" { + value 5; + description + "Jun"; + } + enum "JUL" { + value 6; + description + "July"; + } + enum "AUG" { + value 7; + description + "August"; + } + enum "SEP" { + value 8; + description + "September"; + } + enum "OCT" { + value 9; + description + "October"; + } + enum "NOV" { + value 10; + description + "November"; + } + enum "DEC" { + value 11; + description + "December"; + } + } + mandatory true; + description + "configure month"; + } + leaf day { + type uint32 { + range "1..31" { + description + "Enter day of month (DD) of schedule date MMM DD YYYY"; + } + } + mandatory true; + description + "Enter day of month (DD) of schedule date MMM DD YYYY"; + } + leaf year { + type uint32 { + range "2015..2035" { + description + "Enter year (YYYY) of schedule date MMM DD YYYY"; + } + } + mandatory true; + description + "Enter year (YYYY) of schedule date MMM DD YYYY"; + } + } + container duration { + presence "Indicates a duration node is configured."; + description + "Enter duration for reversion schedule in hh:mm format"; + leaf hour { + type uint32 { + range "0..167" { + description + "Enter (hh) of duration (hh:mm). Eg. Duration of 15hour and 20min is 15:20 "; + } + } + mandatory true; + description + "Enter duration for reversion schedule in hh:mm format"; + } + leaf minute { + type uint32 { + range "0..59" { + description + "Enter (mm) of duration (hh:mm). Eg. Duration of 15hour and 20min is 15:20 "; + } + } + mandatory true; + description + "Enter (mm) of duration (hh:mm). Eg. Duration of 15hour and 20min is 15:20 "; + } + } + leaf frequency { + type enumeration { + enum "once" { + value 1; + description + "Execute only ONCE on scheduled date and time"; + } + enum "daily" { + value 2; + description + "Execute DAILY at scheduled time starting from scheduled date"; + } + enum "weekly" { + value 3; + description + "Execute WEEKLY at scheduled time starting from scheduled date"; + } + } + description + "Frequency to execute the scheduled reversion"; + } + leaf max-tries { + type uint32 { + range "1..2016" { + description + "Number of retries. Eg : If three tries to be done for reversion, enter 3"; + } + } + description + "Maximum number of retries for scheduled reversion"; + } + } + } + container path-selection { + presence "Indicates a path-selection node is configured."; + description + "Specify path selection"; + } + } + } + container p2p-tes { + description + "Attribute-set of p2p-te type"; + list p2p-te { + key "attribute-set-name"; + description + "Attribute-set of p2p-te type"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 64 characters)"; + } + } + description + "Attribute-set of p2p-te type"; + } + container affinity { + description + "Link attributes for links traversed by tunnel"; + leaf affinity-attribute { + type xr:Hex-integer; + description + "Link attributes for links traversed by tunnel"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask value"; + } + container includes { + description + "Links with all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container include-stricts { + description + "Links with exactly all these attributes are included in path calculation"; + list include1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list include10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container excludes { + description + "Links with all these attributes are excluded from path calculation"; + list exclude1 { + key "name1"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude2 { + key "name1 name2"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude3 { + key "name1 name2 name3"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude4 { + key "name1 name2 name3 name4"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude5 { + key "name1 name2 name3 name4 name5"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude6 { + key "name1 name2 name3 name4 name5 name6"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude7 { + key "name1 name2 name3 name4 name5 name6 name7"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude8 { + key "name1 name2 name3 name4 name5 name6 name7 name8"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude9 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + list exclude10 { + key "name1 name2 name3 name4 name5 name6 name7 name8 name9 name10"; + description + "Links with all these attributes are included in path calculation"; + leaf name1 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name2 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name3 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name4 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name5 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name6 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name7 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name8 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name9 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + leaf name10 { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Attribute or affinity name"; + } + } + description + "Attribute or affinity name"; + } + } + } + container ignore { + presence "Indicates a ignore node is configured."; + description + "All links are included in path calculation regardless of attributes"; + } + container exclude-all { + presence "Indicates a exclude-all node is configured."; + description + "Links with any attribute are excluded from path calculation"; + } + } + container logging { + description + "Per-interface logging configuration"; + container events { + description + "Per-interface logging events"; + container lsp-status { + description + "Enable interface LSP state change alarms"; + container state { + presence "Indicates a state node is configured."; + description + "Enable interface LSP UP/DOWN change alarms"; + } + container reoptimize { + presence "Indicates a reoptimize node is configured."; + description + "Enable interface LSP REOPT change alarms"; + } + container reoptimize-attempts { + presence "Indicates a reoptimize-attempts node is configured."; + description + "Enable interface LSP REOPT attempts change alarms"; + } + container bw-change { + presence "Indicates a bw-change node is configured."; + description + "Enable interface LSP BANDWIDTH change alarms"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "Enable interface LSP REROUTE change alarms"; + } + container insufficient-bandwidth { + presence "Indicates a insufficient-bandwidth node is configured."; + description + "Enable Syslog for setup/reopt failure due to bandwidth"; + } + } + container pcalc-failure { + presence "Indicates a pcalc-failure node is configured."; + description + "Enable logging for path calculation failures"; + } + container all { + presence "Indicates a all node is configured."; + description + "Enable logging for all events"; + } + } + } + container path-selection { + presence "Indicates a path-selection node is configured."; + description + "Specify path selection"; + container metric { + description + "Metric type for path calculation"; + container igp { + presence "Indicates a igp node is configured."; + description + "Use IGP metric"; + } + container te { + presence "Indicates a te node is configured."; + description + "Use TE metric"; + } + } + } + container pce { + presence "Indicates a pce node is configured."; + description + "Specify PCE Configuration"; + container disjoint-path { + description + "Disjoint Path Configuration"; + leaf source { + type inet:ipv4-address-no-zone; + description + "Source address"; + } + container type { + must "link or node or srlg"; + presence "Indicates a type node is configured."; + description + "Disjointness type"; + container link { + presence "Indicates a link node is configured."; + description + "Link Disjointness"; + } + container node { + presence "Indicates a node node is configured."; + description + "Node Disjointness"; + } + container srlg { + presence "Indicates a srlg node is configured."; + description + "SRLG Disjointness"; + } + } + leaf group-id { + type uint32 { + range "1..4294967295" { + description + "Enter group-id"; + } + } + description + "Enter group-id"; + } + } + } + } + } + container uni-protections { + description + "Attribute-set to specify uni-protection type"; + list uni-protection { + key "attribute-set-name"; + description + "Attribute-set to specify uni-protection type"; + leaf attribute-set-name { + type xr:Cisco-ios-xr-string { + length "1..64" { + description + "Specify attribute-set name (maximum 32 characters)"; + } + } + description + "Attribute-set to specify uni-protection type"; + } + container lsp-flags { + must "unprotected or reroute or reroute-no-et or oneton-et or onepluse1-uni or onepluse1-bi"; + presence "Indicates a lsp-flags node is configured."; + description + "End-to-end LSP recovery type"; + container unprotected { + presence "Indicates a unprotected node is configured."; + description + "end-to-end unprotected"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "end-to-end rerouting"; + } + container reroute-no-et { + presence "Indicates a reroute-no-et node is configured."; + description + "end-to-end rerouting without extra traffic"; + } + container oneton-et { + presence "Indicates a oneton-et node is configured."; + description + "1:N Protection with extra traffic"; + } + container onepluse1-uni { + presence "Indicates a onepluse1-uni node is configured."; + description + "1+1 unidirectional protection"; + } + container onepluse1-bi { + presence "Indicates a onepluse1-bi node is configured."; + description + "1+1 bidirectional protection"; + } + } + container seg-flags { + must "unprotected or reroute or reroute-no-et or oneton-et or onepluse1-uni or onepluse1-bi"; + presence "Indicates a seg-flags node is configured."; + description + "Specify APS protection type"; + container unprotected { + presence "Indicates a unprotected node is configured."; + description + "end-to-end unprotected"; + } + container reroute { + presence "Indicates a reroute node is configured."; + description + "end-to-end rerouting"; + } + container reroute-no-et { + presence "Indicates a reroute-no-et node is configured."; + description + "end-to-end rerouting without extra traffic"; + } + container oneton-et { + presence "Indicates a oneton-et node is configured."; + description + "1:N Protection with extra traffic"; + } + container onepluse1-uni { + presence "Indicates a onepluse1-uni node is configured."; + description + "1+1 unidirectional protection"; + } + container onepluse1-bi { + presence "Indicates a onepluse1-bi node is configured."; + description + "1+1 bidirectional protection"; + } + } + container set-in-place-bit { + presence "Indicates a set-in-place-bit node is configured."; + description + "Set the inplace bit"; + } + container set-required-bit { + presence "Indicates a set-required-bit node is configured."; + description + "Set Required bit"; + } + } + } + } + container ltrace-buffer { + description + "MPLS Traffic Engineering LTrace buffer files"; + container multiplier { + presence "Indicates a multiplier node is configured."; + description + "Ltrace buffer file size multiplier"; + leaf multiplier-factor { + type uint32 { + range "2..6" { + description + "Multiplier factor"; + } + } + mandatory true; + description + "Ltrace buffer file size multiplier"; + } + container event { + presence "Indicates a event node is configured."; + description + "Event (Init, FO, Conn/Disc, Timer, etc.) trace buffer"; + } + container sig { + presence "Indicates a sig node is configured."; + description + "Signaling trace buffer"; + } + container head-end { + presence "Indicates a head-end node is configured."; + description + "Head-end (Path, PCALC, Tunnel config etc.) trace buffer"; + } + container generic { + presence "Indicates a generic node is configured."; + description + "Generic (Admit, FRR, Rewrite, Label, DB etc.) trace buffer"; + } + container fsm { + presence "Indicates a fsm node is configured."; + description + "Finite State Machine trace buffer"; + } + container destroy { + presence "Indicates a destroy node is configured."; + description + "Delete trace buffer"; + } + container chkpt { + presence "Indicates a chkpt node is configured."; + description + "Check Point (HA, Chkpt etc.) trace buffer"; + } + container topology { + presence "Indicates a topology node is configured."; + description + "Topology (Flooding, Adjacency etc.) trace buffer"; + } + container link { + presence "Indicates a link node is configured."; + description + "Link (Interface, IM, DS-TE, BW config etc.) trace buffer"; + } + container error { + presence "Indicates a error node is configured."; + description + "Error trace buffer"; + } + container auto-bw { + presence "Indicates a auto-bw node is configured."; + description + "Auto Bandwidth trace buffer"; + } + container default { + presence "Indicates a default node is configured."; + description + "Default trace buffer"; + } + container bselect { + presence "Indicates a bselect node is configured."; + description + "Backup Selection Buffer trace"; + } + container instrument { + presence "Indicates a instrument node is configured."; + description + "Trace buffer used for code instrumentation"; + } + container automesh { + presence "Indicates a automesh node is configured."; + description + "Trace buffer used for auto-tunnel mesh"; + } + container async-server { + presence "Indicates a async-server node is configured."; + description + "Trace buffer used for TE async server"; + } + container auto-onehop { + presence "Indicates a auto-onehop node is configured."; + description + "Trace buffer used for auto-tunnel mesh onehop"; + } + container bandwidth-accounting { + presence "Indicates a bandwidth-accounting node is configured."; + description + "Trace buffer used for bandwidth-accounting"; + } + container config { + presence "Indicates a bandwidth-accounting node is configured."; + description + "Trace buffer used for config events"; + } + container bfd { + presence "Indicates a bfd node is configured."; + description + "Trace buffer used for BFD events"; + } + container all { + presence "Indicates a all node is configured."; + description + "All trace buffers"; + } + } + } + container path-selection { + description + "MPLS Traffic Engineering Path-Selection submode"; + container loose-expansion { + description + "Loose ERO Hop Expansion Configuration"; + container affinity { + description + "Desired link attributes for links comprising tunnel"; + list class-type { + key "type"; + description + "Specify the class type"; + leaf type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the class type"; + } + leaf affinity-attribute { + type xr:Hex-integer; + description + "Desired link attributes for links comprising tunnel"; + } + leaf mask { + type xr:Hex-integer; + description + "Affinity mask value"; + } + } + } + container metric { + description + "Metric Type for path calculation"; + list class-type { + key "type"; + description + "Specify the class type"; + leaf type { + type uint32 { + range "0..1" { + description + "Class type number"; + } + } + description + "Specify the class type"; + } + container igp { + presence "Indicates a igp node is configured."; + description + "Use IGP metric"; + } + container te { + presence "Indicates a te node is configured."; + description + "Use TE metric"; + } + container delay { + presence "Indicates a delay node is configured."; + description + "Use delay metric"; + } + } + } + container domain-match { + presence "Indicates a domain-match node is configured."; + description + "Use only the IGP instance of the incoming interface"; + } + } + container metric { + description + "Metric Type Configuration"; + container igp { + presence "Indicates a igp node is configured."; + description + "Use IGP metric"; + } + container te { + presence "Indicates a te node is configured."; + description + "Use TE metric"; + } + container delay { + presence "Indicates a delay node is configured."; + description + "Use delay metric"; + } + } + leaf cost-limit { + type uint32 { + range "1..4294967295" { + description + "Cost limit"; + } + } + description + "Cost limit configuration"; + } + leaf delay-limit { + type uint32 { + range "1..4294967295" { + description + "Delay limit in usec"; + } + } + description + "Delay limit configuration"; + } + container ignore { + description + "Ignore specified condition during CSPF"; + container overload { + must "head or mid or tail"; + presence "Indicates a overload node is configured."; + description + "Ignore overload node during CSPF"; + container head { + presence "Indicates a head node is configured."; + description + "Ignore overload node during CSPF for role head"; + } + container mid { + presence "Indicates a mid node is configured."; + description + "Ignore overload node during CSPF for role mid"; + } + container tail { + presence "Indicates a tail node is configured."; + description + "Ignore overload node during CSPF for role tail"; + } + } + } + container tiebreaker { + description + "Equal cost multipath tiebreaker for path calculation (default: min-fill)."; + container min-fill { + presence "Indicates a min-fill node is configured."; + description + "Prefer the path with the least-utilized links"; + } + container max-fill { + presence "Indicates a max-fill node is configured."; + description + "Prefer the path with the most-utilized links"; + } + container random { + presence "Indicates a random node is configured."; + description + "Prefer a path with links utilized randomly"; + } + } + } + container bandwidth-accounting { + presence "Indicates a bandwidth-accounting node is configured."; + description + "MPLS Traffic Engineering Bandwidth Accounting submode"; + leaf sampling-interval { + type uint32 { + range "10..600" { + description + "Set the frequency of collecting bandwidth rate samples in seconds (default 60 sec)"; + } + } + description + "Configure bandwidth accounting sampling interval"; + } + leaf adjustment-factor { + type uint32 { + range "0..200" { + description + "Set the percentage adjustment of bandwidth (default 100%)"; + } + } + description + "Configure bandwidth accounting adjustment factor"; + } + container flooding { + description + "Configure bandwidth accounting flooding"; + container threshold { + description + "Configure bandwidth accounting flooding thresholds"; + leaf up { + type uint32 { + range "0..100" { + description + "Upward flooding threshold as percentage of maximum reservable bandwidth change (default 10%)"; + } + } + description + "Upward flooding threshold for maximum reservable bandwidth"; + } + leaf down { + type uint32 { + range "0..100" { + description + "Downward flooding threshold as percentage of maximum reservable bandwidth change (default 10%)"; + } + } + description + "Downward flooding threshold for maximum reservable bandwidth"; + } + } + } + container collection { + description + "Configure bandwidth accounting traffic sample collection type"; + container rsvp-te { + presence "Indicates a rsvp-te node is configured."; + description + "Collect RSVP-TE traffic samples (default Segment-Routing)"; + } + } + container application { + description + "Configure bandwidth accounting application"; + container enforced { + presence "Indicates a enforced node is configured."; + description + "Enforce application of bandwidth accounting"; + } + leaf interval { + type uint32 { + range "30..1800" { + description + "Set the frequency of application in seconds (default 180 sec)"; + } + } + description + "Configure application interval"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-multicast-routing-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-multicast-routing-cfg.yang new file mode 100644 index 000000000..88aff6867 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-multicast-routing-cfg.yang @@ -0,0 +1,4173 @@ +module Cisco-IOS-XR-um-multicast-routing-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-multicast-routing-cfg"; + prefix um-multicast-routing-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 multicast-routing package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "2.2.0"; + } + revision 2021-09-08 { + description + "Removed the container interface-extended-hash from the container multipath + 2021-08-31 + Added container ssm and multipath + 2021-07-22 + Added container route-rate + 2021-05-26 + Added flex-algo feature"; + semver:module-version "2.1.0"; + } + revision 2021-02-17 { + description + "Added strict-rpf node under static segment-routing container + 2021-01-28 + Added cisco-support task yang nodes + 2021-01-27 + Modified must constraints under p2mp-te container + 2020-12-11 + Renamed improper node name 'inerface' to 'interface'. Changed max string length from 1024 to 800. + 2020-12-04 + Removed container maximum and its child node as these are used + internally with cisco-support task. + 2020-04-06 + Added segment-routing container under mdt and bgp"; + semver:module-version "2.0.0"; + } + revision 2019-08-20 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container multicast-routing { + presence "Indicates a multicast-routing node is configured."; + description + "Enable IP multicast forwarding"; + container vrfs { + description + "VRF configs"; + list vrf { + key "vrf-name"; + description + "VRF configs"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Enter VRF name"; + } + } + description + "VRF configs"; + } + container address-family { + description + "Enter Address Family command mode"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Enter ipv4 Address Family command mode"; + container ssm { + description + "Configure a group range for Source-Specific use"; + leaf range { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Access list specifying SSM group range"; + } + } + must "not(../disable)"; + description + "Provide ACL that specifies non-standard SSM range"; + } + container disable { + must "not(../range)"; + presence "Indicates a disable node is configured."; + description + "Disable use of all SSM group ranges"; + } + container allow-override { + presence "Indicates a allow-override node is configured."; + description + "Allow SSM ranges to be overridden by more specific ranges"; + } + } + container mdt { + description + "MVPN configuration"; + container data { + description + "Data MDT configuration"; + container maximum-data-mdts { + presence "Indicates a maximum-data-mdts node is configured."; + description + "Maximum number of data-mdts to be triggered"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container data-mdt-group { + presence "Indicates a data-mdt-group node is configured."; + description + "Data MDT group IP address/prefix length"; + leaf ip-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Data MDT group IP address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + mandatory true; + description + "Data MDT group IP prefix length"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Ingress Replication Data MDT"; + leaf number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container mldp { + presence "Indicates a mldp node is configured."; + description + "MLDP Data MDT"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + container p2mp-te { + must "(maximum-number or route-policy) and not(maximum-number and route-policy)"; + presence "Indicates a p2mp-te node is configured."; + description + "P2MPTE Data MDT core"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf attribute-set { + type xr:Cisco-ios-xr-string; + description + "The Attribute Set template to be used with the TE tunnel request"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container segment-routing { + description + "Tree-SID Data MDT"; + container mpls { + presence "Indicates a mpls node is configured."; + description + "Use SR-MPLS Tree-SID policy"; + leaf maximum-number { + type uint32 { + range "1..4294967295" { + description + "Maximum number of data-mdts to be triggered"; + } + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf color { + type uint32 { + range "1..4294967295" { + description + "color value"; + } + } + description + "On-demand color template to be used with the Tree-SID policy"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for this Tree-SID"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + leaf route-policy { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Route policy name"; + } + } + description + "Route policy to select data mdt core"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates a immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + } + } + } + container default { + description + "MDT Default distribution tree"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4 encapsulated MDT"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 encapsulated MDT"; + } + container partitioned { + description + "GRE Partitioned MDT"; + leaf bidir { + type inet:ipv4-address-no-zone; + description + "GRE Partitioned MDT for Bidir"; + } + } + } + container mldp { + description + "mLDP default distribution tree"; + container ipv4s { + description + "MP2MP core-tree with IPv4 Root Address"; + list ipv4 { + key "address"; + description + "MP2MP core-tree with IPv4 Root Address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "MP2MP core-tree with IPv4 Root Address"; + } + container partitioned { + description + "mLDP Partitioned MDT"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + } + container p2mp { + presence "Indicates a p2mp node is configured."; + description + "P2MP core-tree"; + container partitioned { + description + "mLDP Partitioned MDT"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + } + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + must + "not(../../mldp/ipv4s/ipv4 or ../../mldp/p2mp or + ../../ipv4 or ../../ingress-replication)"; + description + "The Attribute Set template to be used with the TE tunnel request"; + } + leaf static { + type xr:Interface-name { + pattern "tunnel-mte[0-9]+"; + } + must + "not(../../mldp/ipv4s/ipv4 or ../../mldp/p2mp or + ../../ipv4 or ../../ingress-replication)"; + description + "Static P2MP-TE Tunnel"; + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable default ingress-replication"; + } + container segment-routing { + description + "Tree-SID distribution tree"; + container mpls { + must "not(../../../partitioned/segment-routing/mpls)"; + presence "Indicates a mpls node is configured."; + description + "Use SR-MPLS Tree-SID policy"; + leaf color { + type union { + type enumeration { + enum "not-used" { + value 0; + description + "color template is not used"; + } + } + type uint32 { + range "1..4294967295" { + description + "color value"; + } + } + } + mandatory true; + description + "On-demand color template to be used with the Tree-SID policy"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for this Tree-SID"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + } + } + } + container partitioned { + description + "MDT Partitioned distribution tree"; + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + description + "The Attribute Set template to be used with the TE tunnel request"; + } + } + container mldp { + description + "mLDP signaled distribution tree"; + container ipv4 { + description + "IPv4 core"; + container mp2mp { + must "not(../p2mp)"; + presence "Indicates a mp2mp node is configured."; + description + "Enable mLDP MP2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + container p2mp { + must "not(../mp2mp)"; + presence "Indicates a p2mp node is configured."; + description + "Enable mLDP P2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + must "../mp2mp or ../p2mp"; + description + "Configure MLDP Flex-algo"; + } + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable partitioned ingress-replication"; + } + container segment-routing { + description + "Tree-SID distribution tree"; + container mpls { + must "not(../../../default/segment-routing/mpls)"; + presence "Indicates a mpls node is configured."; + description + "Use SR-MPLS Tree-SID policy"; + leaf color { + type union { + type enumeration { + enum "not-used" { + value 0; + description + "color template is not used"; + } + } + type uint32 { + range "1..4294967295" { + description + "color value"; + } + } + } + mandatory true; + description + "On-demand color template to be used with the Tree-SID policy"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for this Tree-SID"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + } + } + } + container mldp { + description + "mLDP distribution tree"; + container in-band-signaling { + description + "Enable mLDP in-band-signalling"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Enable IPv4-core tree"; + } + } + } + container static { + description + "Interface used to set MDT source address"; + container segment-routing { + presence "Indicates a segment-routing node is configured."; + description + "Set MDT core as tree-sid"; + container strict-rpf { + presence "Indicates a strict-rpf node is configured."; + description + "Enable strict RPF check"; + } + } + container p2mp-te { + description + "static p2mp-te"; + container interfaces { + description + "p2mp-te interface"; + list interface { + key "interface-name"; + description + "p2mp-te interface"; + leaf interface-name { + type xr:Interface-name { + pattern "tunnel-mte[0-9]+"; + } + description + "p2mp-te interface"; + } + } + } + } + } + leaf source { + type xr:Interface-name; + description + "Interface used to set MDT source address"; + } + leaf mtu { + type uint32 { + range "1401..65535" { + description + "MTU value"; + } + } + description + "MDT mtu configuration"; + } + } + container rate-per-route { + presence "Indicates a rate-per-route node is configured."; + description + "Enable/disable per (S,G) rate calculation"; + } + container multipath { + presence "Indicates a multipath node is configured."; + description + "Enable equal-cost multipath routing"; + container hash { + description + "Enter a hashing algorithm"; + container source { + must "not(../source-nexthop or ../source-group)"; + presence "Indicates a source node is configured."; + description + "Enable source based multipath hashing + (Compatible with IOS versions)"; + } + container source-nexthop { + must "not(../source or ../source-group)"; + presence "Indicates a source-nexthop node is configured."; + description + "Enable source with next-hop multipath hashing + (better distribution)"; + } + container source-group { + must "not(../source or ../source-nexthop)"; + presence "Indicates a source-group node is configured."; + description + "Enable source, group based multipath hashing"; + } + } + } + container accounting { + description + "Enable/disable Accounting"; + container per-prefix { + presence "Indicates a per-prefix node is configured."; + description + "Enable per (S,G) accounting."; + container forward-only { + presence "Indicates a forward-only node is configured."; + description + "Enable per (S,G) forward-only accounting."; + } + } + } + container log-traps { + presence "Indicates a log-traps node is configured."; + description + "Enable logging trap events"; + } + container export-rt { + description + "Configure Export Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route distinguisher"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container import-rt { + description + "Configure Import Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route-target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route-target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address route-target"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container interface { + description + "Multicast interface configuration subcommands"; + container all { + description + "Inherited by all interfaces"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable IP Multicast"; + } + } + container interfaces { + description + "select an interface to configure"; + list interface { + key "interface-name"; + description + "select an interface to configure"; + leaf interface-name { + type xr:Interface-name; + description + "select an interface to configure"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable IP multicast"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable IP multicast"; + } + leaf boundary { + type string { + length "1..32" { + description + "Access list specifying scoped multicast groups"; + } + } + description + "Boundary for administratively scoped multicast addresses"; + } + leaf ttl-threshold { + type uint32 { + range "1..255" { + description + "TTL threshold value"; + } + } + description + "TTL threshold for IPv4 multicast packets"; + } + } + } + } + container bgp { + description + "Enable BGP MVPN Discovery"; + container auto-discovery { + presence "Indicates an auto-discovery node is configured."; + description + "Enable BGP Auto-Discovery"; + leaf core-tree { + type enumeration { + enum "pim" { + value 1; + description + "PIM core tree"; + } + enum "mldp" { + value 2; + description + "mLDP core tree"; + } + enum "p2mp-te" { + value 3; + description + "RSVP P2MP-TE core tree"; + } + enum "ingress-replication" { + value 4; + description + "IR core tree"; + } + enum "segment-routing" { + value 5; + description + "Tree-SID core tree"; + } + } + mandatory true; + description + "Enable BGP Auto-Discovery"; + } + container leaf-info-required { + presence "Indicates a leaf-info-required node is configured."; + description + "Explicit tracking of S-PMSI core trees"; + } + container inter-as { + presence "Indicates a inter-as node is configured."; + description + "Inter-AS MVPN"; + } + container receiver-site { + presence "Indicates a receiver-site node is configured."; + description + "Receiver-only site"; + } + container anycast-rp { + presence "Indicates a anycast-rp node is configured."; + description + "Enable Anycast RP using MVPN SAFI"; + leaf route-policy { + type xr:Route-policy-name; + description + "Policy for filtering routes"; + } + } + container pmsi-timer { + when "../core-tree != 'pim'"; + description + "Set PMSI Tunnel timers"; + leaf change-delay { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Change Delay timer"; + } + leaf stop-forwarding { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Stop Forwarding timer"; + } + } + container segmented { + must "../core-tree != 'pim'"; + presence "Indicates a segmented node is configured."; + description + "Enable Segmented Multicast/MVPN"; + leaf bandwidth-threshold { + type uint32 { + range "0..1000000000" { + description + "Threshold in Kbps"; + } + } + description + "Set Bandwidth threshold for Ingress Replication core-tree"; + } + leaf color { + type uint32 { + range "0..4294967295" { + description + "Color value"; + } + } + description + "Enable Color Opaque Extended Community"; + } + } + container inherit-vrf-ri { + description + "Inherit VRF Route-Import EC"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF name"; + } + } + description + "VRF to inherit from"; + } + } + } + } + container static-rpf { + description + "Configure a static RPF rule for a given prefix/mask"; + list address-range { + key "prefix-address prefix-length"; + description + "address range"; + leaf prefix-address { + type inet:ipv4-address-no-zone; + description + "Prefix for address range"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "Prefix mask for address range"; + } + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Static route interface"; + } + leaf next-hop-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Static route next-hop"; + } + } + } + container core-tree-protocol { + description + "Configure Core-tree-protocol"; + container rsvp-te { + presence "Indicates a rsvp-te node is configured."; + description + "Configure P2MP-TE as the Core-tree-protocol"; + leaf group-list { + type xr:Cisco-ios-xr-string; + description + "ACL for group-list"; + } + } + } + container static { + description + "Configure a static Policy"; + list sr-policy { + key "sr-policy-name"; + description + "SR P2MP Policy for Multicast"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the SR P2MP Policy"; + } + leaf ingress { + type string; + description + "Ingress Node address of traffic (for strict-rpf)"; + } + } + } + } + container ipv6 { + presence "Indicates a ipv4 node is configured."; + description + "Enter ipv6 Address Family command mode"; + container ssm { + description + "Configure a group range for Source-Specific use"; + leaf range { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Access list specifying SSM group range"; + } + } + must "not(../disable)"; + description + "Provide ACL that specifies non-standard SSM range"; + } + container disable { + must "not(../range)"; + presence "Indicates a disable node is configured."; + description + "Disable use of all SSM group ranges"; + } + container allow-override { + presence "Indicates a allow-override node is configured."; + description + "Allow SSM ranges to be overridden by more specific ranges"; + } + } + container mdt { + description + "MVPN configuration"; + container data { + description + "Data MDT configuration"; + container maximum-data-mdts { + presence "Indicates a maximum-data-mdts node is configured."; + description + "Maximum number of data-mdts to be triggered"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container data-mdt-group { + presence "Indicates a data-mdt-group node is configured."; + description + "Data MDT group IP address/prefix length"; + leaf ip-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Data MDT group IP address"; + } + leaf prefix-length { + type xr:Ipv4-prefix-length; + mandatory true; + description + "Data MDT group IP prefix length"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Ingress Replication Data MDT"; + leaf number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container mldp { + presence "Indicates a mldp node is configured."; + description + "MLDP Data MDT"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + container p2mp-te { + must "(maximum-number or route-policy) and not(maximum-number and route-policy)"; + presence "Indicates a p2mp-te node is configured."; + description + "P2MPTE Data MDT core"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf attribute-set { + type xr:Cisco-ios-xr-string; + description + "The Attribute Set template to be used with the TE tunnel request"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + } + container default { + description + "MDT Default distribution tree"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "IPv4 encapsulated MDT"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "IPv4 encapsulated MDT"; + } + container partitioned { + description + "GRE Partitioned MDT"; + leaf bidir { + type inet:ipv4-address-no-zone; + description + "GRE Partitioned MDT for Bidir"; + } + } + } + container mldp { + description + "mLDP default distribution tree"; + container ipv4s { + description + "MP2MP core-tree with IPv4 Root Address"; + list ipv4 { + key "address"; + description + "MP2MP core-tree with IPv4 Root Address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "MP2MP core-tree with IPv4 Root Address"; + } + container partitioned { + description + "mLDP Partitioned MDT"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + } + container p2mp { + presence "Indicates a p2mp node is configured."; + description + "P2MP core-tree"; + container partitioned { + description + "mLDP Partitioned MDT"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + } + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + must + "not(../../mldp/ipv4s/ipv4 or ../../mldp/p2mp or + ../../ipv4 or ../../ingress-replication)"; + description + "The Attribute Set template to be used with the TE tunnel request"; + } + leaf static { + type xr:Interface-name { + pattern "tunnel-mte[0-9]+"; + } + must + "not(../../mldp/ipv4s/ipv4 or ../../mldp/p2mp or + ../../ipv4 or ../../ingress-replication)"; + description + "Static P2MP-TE Tunnel"; + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable default ingress-replication"; + } + } + container partitioned { + description + "MDT Partitioned distribution tree"; + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + description + "The Attribute Set template to be used with the TE tunnel request"; + } + } + container mldp { + description + "mLDP signaled distribution tree"; + container ipv4 { + description + "IPv4 core"; + container mp2mp { + must "not(../p2mp)"; + presence "Indicates a mp2mp node is configured."; + description + "Enable mLDP MP2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + container p2mp { + must "not(../mp2mp)"; + presence "Indicates a p2mp node is configured."; + description + "Enable mLDP P2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + must "../mp2mp or ../p2mp"; + description + "Configure MLDP Flex-algo"; + } + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable partitioned ingress-replication"; + } + } + container mldp { + description + "mLDP distribution tree"; + container in-band-signaling { + description + "Enable mLDP in-band-signalling"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Enable IPv4-core tree"; + } + } + } + container static { + description + "Interface used to set MDT source address"; + container segment-routing { + presence "Indicates a segment-routing node is configured."; + description + "Set MDT core as tree-sid"; + container strict-rpf { + presence "Indicates a strict-rpf node is configured."; + description + "Enable strict RPF check"; + } + } + } + leaf source { + type xr:Interface-name; + description + "Interface used to set MDT source address"; + } + leaf mtu { + type uint32 { + range "1401..65535" { + description + "MTU value"; + } + } + description + "MDT mtu configuration"; + } + } + container rate-per-route { + presence "Indicates a rate-per-route node is configured."; + description + "Enable/disable per (S,G) rate calculation"; + } + container multipath { + presence "Indicates a multipath node is configured."; + description + "Enable equal-cost multipath routing"; + container hash { + description + "Enter a hashing algorithm"; + container source-nexthop { + must "not(../interface-extended or ../source-group)"; + presence "Indicates a source-nexthop node is configured."; + description + "Enable source with nexthop multipath hashing + (better distribution)"; + } + container interface-extended { + must "not(../source-nexthop or ../source-group)"; + presence "Indicates a interface-extended node is configured."; + description + "Enable interface extensions for non-unique next-hop addrs"; + } + container source-group { + must "not(../source-nexthop or ../interface-extended)"; + presence "Indicates a source-group node is configured."; + description + "Enable source, group based multipath hashing"; + } + } + } + container accounting { + description + "Enable/disable Accounting"; + container per-prefix { + presence "Indicates a per-prefix node is configured."; + description + "Enable per (S,G) accounting."; + container forward-only { + presence "Indicates a forward-only node is configured."; + description + "Enable per (S,G) forward-only accounting."; + } + } + } + container log-traps { + presence "Indicates a log-traps node is configured."; + description + "Enable logging trap events"; + } + container export-rt { + description + "Configure Export Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route distinguisher"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container import-rt { + description + "Configure Import Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route-target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route-target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address route-target"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container interface { + description + "Multicast interface configuration subcommands"; + container all { + description + "Inherited by all interfaces"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable IP Multicast"; + } + } + container interfaces { + description + "select an interface to configure"; + list interface { + key "interface-name"; + description + "select an interface to configure"; + leaf interface-name { + type xr:Interface-name; + description + "select an interface to configure"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable IP multicast"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable IP multicast"; + } + leaf boundary { + type string { + length "1..32" { + description + "Access list specifying scoped multicast groups"; + } + } + description + "Boundary for administratively scoped multicast addresses"; + } + leaf ttl-threshold { + type uint32 { + range "1..255" { + description + "TTL threshold value"; + } + } + description + "TTL threshold for IPv4 multicast packets"; + } + } + } + } + container bgp { + description + "Enable BGP MVPN Discovery"; + container auto-discovery { + presence "Indicates an auto-discovery node is configured."; + description + "Enable BGP Auto-Discovery"; + leaf core-tree { + type enumeration { + enum "pim" { + value 1; + description + "PIM core tree"; + } + enum "mldp" { + value 2; + description + "mLDP core tree"; + } + enum "p2mp-te" { + value 3; + description + "RSVP P2MP-TE core tree"; + } + enum "ingress-replication" { + value 4; + description + "IR core tree"; + } + } + mandatory true; + description + "Enable BGP Auto-Discovery"; + } + container leaf-info-required { + presence "Indicates a leaf-info-required node is configured."; + description + "Explicit tracking of S-PMSI core trees"; + } + container inter-as { + presence "Indicates a inter-as node is configured."; + description + "Inter-AS MVPN"; + } + container receiver-site { + presence "Indicates a receiver-site node is configured."; + description + "Receiver-only site"; + } + container anycast-rp { + presence "Indicates a anycast-rp node is configured."; + description + "Enable Anycast RP using MVPN SAFI"; + leaf route-policy { + type xr:Route-policy-name; + description + "Policy for filtering routes"; + } + } + container pmsi-timer { + when "../core-tree != 'pim'"; + description + "Set PMSI Tunnel timers"; + leaf change-delay { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Change Delay timer"; + } + leaf stop-forwarding { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Stop Forwarding timer"; + } + } + container segmented { + must "../core-tree != 'pim'"; + presence "Indicates a segmented node is configured."; + description + "Enable Segmented Multicast/MVPN"; + leaf bandwidth-threshold { + type uint32 { + range "0..1000000000" { + description + "Threshold in Kbps"; + } + } + description + "Set Bandwidth threshold for Ingress Replication core-tree"; + } + leaf color { + type uint32 { + range "0..4294967295" { + description + "Color value"; + } + } + description + "Enable Color Opaque Extended Community"; + } + } + container inherit-vrf-ri { + description + "Inherit VRF Route-Import EC"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF name"; + } + } + description + "VRF to inherit from"; + } + } + } + } + container static-rpf { + description + "Configure a static RPF rule for a given prefix/mask"; + list address-range { + key "prefix-address prefix-length"; + description + "address range"; + leaf prefix-address { + type inet:ipv6-address-no-zone; + description + "Prefix for address range"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "Prefix mask for address range"; + } + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Static route interface"; + } + leaf next-hop-address { + type inet:ipv6-address-no-zone; + mandatory true; + description + "Static route next-hop"; + } + } + } + container core-tree-protocol { + description + "Configure Core-tree-protocol"; + container rsvp-te { + presence "Indicates a rsvp-te node is configured."; + description + "Configure P2MP-TE as the Core-tree-protocol"; + leaf group-list { + type xr:Cisco-ios-xr-string; + description + "ACL for group-list"; + } + } + } + container static { + description + "Configure a static Policy"; + list sr-policy { + key "sr-policy-name"; + description + "SR P2MP Policy for Multicast"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the SR P2MP Policy"; + } + leaf ingress { + type string; + description + "Ingress Node address of traffic (for strict-rpf)"; + } + } + } + } + } + } + } + container address-family { + description + "Enter Address Family command mode"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Enter ipv4 Address Family command mode"; + container ssm { + description + "Configure a group range for Source-Specific use"; + leaf range { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Access list specifying SSM group range"; + } + } + must "not(../disable)"; + description + "Provide ACL that specifies non-standard SSM range"; + } + container disable { + must "not(../range)"; + presence "Indicates a disable node is configured."; + description + "Disable use of all SSM group ranges"; + } + container allow-override { + presence "Indicates a allow-override node is configured."; + description + "Allow SSM ranges to be overridden by more specific ranges"; + } + } + container mdt { + description + "MVPN configuration"; + container data { + description + "Data MDT configuration"; + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Ingress Replication Data MDT"; + leaf number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container mldp { + presence "Indicates a mldp node is configured."; + description + "MLDP Data MDT"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + container p2mp-te { + must "(maximum-number or route-policy) and not(maximum-number and route-policy)"; + presence "Indicates a p2mp-te node is configured."; + description + "P2MPTE Data MDT core"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf attribute-set { + type xr:Cisco-ios-xr-string; + description + "The Attribute Set template to be used with the TE tunnel request"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container segment-routing { + description + "Tree-SID Data MDT"; + container mpls { + presence "Indicates a mpls node is configured."; + description + "Use SR-MPLS Tree-SID policy"; + leaf maximum-number { + type uint32 { + range "1..4294967295" { + description + "Maximum number of data-mdts to be triggered"; + } + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf color { + type uint32 { + range "1..4294967295" { + description + "color value"; + } + } + description + "On-demand color template to be used with the Tree-SID policy"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for this Tree-SID"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + leaf route-policy { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Route policy name"; + } + } + description + "Route policy to select data mdt core"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates a immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + } + } + } + container default { + description + "MDT Default distribution tree"; + container mldp { + description + "mLDP default distribution tree"; + container p2mp { + must "not(../../p2mp-te)"; + presence "Indicates a p2mp node is configured."; + description + "P2MP core-tree"; + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + } + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + must "not(../../mldp/p2mp)"; + description + "The Attribute Set template to be used with the TE tunnel request"; + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable default ingress-replication"; + } + container segment-routing { + description + "Tree-SID distribution tree"; + container mpls { + must "not(../../../partitioned/segment-routing/mpls)"; + presence "Indicates a mpls node is configured."; + description + "Use SR-MPLS Tree-SID policy"; + leaf color { + type union { + type enumeration { + enum "not-used" { + value 0; + description + "color template is not used"; + } + } + type uint32 { + range "1..4294967295" { + description + "color value"; + } + } + } + mandatory true; + description + "On-demand color template to be used with the Tree-SID policy"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for this Tree-SID"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + } + } + } + leaf source { + type xr:Interface-name; + description + "Interface used to set MDT source address"; + } + leaf mtu { + type uint32 { + range "1401..65535" { + description + "MTU value"; + } + } + description + "MDT mtu configuration"; + } + container segment-border { + presence "Indicates a segment-border node is configured."; + description + "Border router for segmented multicast"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route-policy to select segmented core type"; + } + } + container segmented-inband { + presence "Indicates a segmented-inband node is configured."; + description + "MDT Segmented Inband distribution tree"; + leaf core-tree { + type enumeration { + enum "mldp" { + value 2; + description + "mLDP core tree"; + } + enum "p2mp-te" { + value 3; + description + "RSVP P2MP-TE core tree"; + } + enum "ingress-replication" { + value 4; + description + "IR core tree"; + } + } + mandatory true; + description + "MDT Segmented Inband distribution tree"; + } + leaf color { + type uint32 { + range "0..4294967295" { + description + "Color Opaque EC value"; + } + } + description + "Enable Color Opaque extended community"; + } + } + container partitioned { + description + "MDT Partitioned distribution tree"; + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + description + "The Attribute Set template to be used with the TE tunnel request"; + } + } + container mldp { + description + "mLDP signaled distribution tree"; + container ipv4 { + description + "IPv4 core"; + container mp2mp { + must "not(../p2mp)"; + presence "Indicates a mp2mp node is configured."; + description + "Enable mLDP MP2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + container p2mp { + must "not(../mp2mp)"; + presence "Indicates a p2mp node is configured."; + description + "Enable mLDP P2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + must "../mp2mp or ../p2mp"; + description + "Configure MLDP Flex-algo"; + } + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable partitioned ingress-replication"; + } + container segment-routing { + description + "Tree-SID distribution tree"; + container mpls { + must "not(../../../default/segment-routing/mpls)"; + presence "Indicates a mpls node is configured."; + description + "Use SR-MPLS Tree-SID policy"; + leaf color { + type union { + type enumeration { + enum "not-used" { + value 0; + description + "color template is not used"; + } + } + type uint32 { + range "1..4294967295" { + description + "color value"; + } + } + } + mandatory true; + description + "On-demand color template to be used with the Tree-SID policy"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for this Tree-SID"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + } + } + } + container mldp { + description + "mLDP distribution tree"; + container in-band-signaling { + description + "Enable mLDP in-band-signalling"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Enable IPv4-core tree"; + } + } + } + container static { + description + "Interface used to set MDT source address"; + container segment-routing { + presence "Indicates a segment-routing node is configured."; + description + "Set MDT core as tree-sid"; + container strict-rpf { + presence "Indicates a strict-rpf node is configured."; + description + "Enable strict RPF check"; + } + } + container p2mp-te { + description + "static p2mp-te"; + container interfaces { + description + "p2mp-te interface"; + list interface { + key "interface-name"; + description + "p2mp-te interface"; + leaf interface-name { + type xr:Interface-name { + pattern "tunnel-mte[0-9]+"; + } + description + "p2mp-te interface"; + } + } + } + } + } + } + container rate-per-route { + presence "Indicates a rate-per-route node is configured."; + description + "Enable/disable per (S,G) rate calculation"; + } + container multipath { + presence "Indicates a multipath node is configured."; + description + "Enable equal-cost multipath routing"; + container hash { + description + "Enter a hashing algorithm"; + container source { + must "not(../source-nexthop or ../source-group)"; + presence "Indicates a source node is configured."; + description + "Enable source based multipath hashing + (Compatible with IOS versions)"; + } + container source-nexthop { + must "not(../source or ../source-group)"; + presence "Indicates a source-nexthop node is configured."; + description + "Enable source with next-hop multipath hashing + (better distribution)"; + } + container source-group { + must "not(../source or ../source-nexthop)"; + presence "Indicates a source-group node is configured."; + description + "Enable source, group based multipath hashing"; + } + } + } + container accounting { + description + "Enable/disable Accounting"; + container per-prefix { + presence "Indicates a per-prefix node is configured."; + description + "Enable per (S,G) accounting."; + container forward-only { + presence "Indicates a forward-only node is configured."; + description + "Enable per (S,G) forward-only accounting."; + } + } + } + container log-traps { + presence "Indicates a log-traps node is configured."; + description + "Enable logging trap events"; + } + container interface-inheritance { + description + "Knob to separate enabling/disabling multicast routing & forwarding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable inheriting En/Dis config "; + } + } + leaf mofrr-lockout-timer { + type uint32 { + range "1..3600" { + description + "Mofrr Lockout timer value"; + } + } + description + "Lockout timer for mofrr"; + } + leaf mofrr-loss-detection-timer { + type uint32 { + range "1..3600" { + description + "Mofrr Loss Detection timer value"; + } + } + description + "Loss Detection timer for mofrr"; + } + container forwarding-latency { + description + "Knob to delay traffic being forwarded on a route"; + leaf delay { + type uint32 { + range "5..500" { + description + "Delay time in msecs"; + } + } + description + "Delay time in msecs"; + } + } + container route-rate { + description + "Parameters for route-rate calculation"; + leaf routes { + type uint32 { + range "100..500000" { + description + "Number of routes"; + } + } + description + "Number of routes to walk"; + } + leaf interval { + type uint32 { + range "50..60000" { + description + "Interval in milliseconds"; + } + } + description + "Interval to wait before continuing route walk"; + } + leaf freshwalk-interval { + type uint32 { + range "5..60" { + description + "Time interval in seconds"; + } + } + description + "Time to wait before a fresh route walk"; + } + } + container export-rt { + description + "Configure Export Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route distinguisher"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container import-rt { + description + "Configure Import Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route-target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route-target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address route-target"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container interface { + description + "Multicast interface configuration subcommands"; + container all { + description + "Inherited by all interfaces"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable IP Multicast"; + } + } + container interfaces { + description + "select an interface to configure"; + list interface { + key "interface-name"; + description + "select an interface to configure"; + leaf interface-name { + type xr:Interface-name; + description + "select an interface to configure"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable IP multicast"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable IP multicast"; + } + leaf boundary { + type string { + length "1..32" { + description + "Access list specifying scoped multicast groups"; + } + } + description + "Boundary for administratively scoped multicast addresses"; + } + leaf ttl-threshold { + type uint32 { + range "1..255" { + description + "TTL threshold value"; + } + } + description + "TTL threshold for IPv4 multicast packets"; + } + } + } + } + container maximum { + description + "Maximum state limits"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable all multicast state limit checks"; + } + } + container oom-handling { + presence "Indicates a oom-handling node is configured."; + description + "Enable out-of-memory handling"; + } + container bgp { + description + "Enable BGP MVPN Discovery"; + container auto-discovery { + presence "Indicates a auto-discovery node is configured."; + description + "Enable BGP Auto-Discovery"; + leaf core-tree { + type enumeration { + enum "pim" { + value 1; + description + "PIM core tree"; + } + enum "mldp" { + value 2; + description + "mLDP core tree"; + } + enum "p2mp-te" { + value 3; + description + "RSVP P2MP-TE core tree"; + } + enum "ingress-replication" { + value 4; + description + "IR core tree"; + } + enum "segment-routing" { + value 5; + description + "Tree-SID core tree"; + } + } + mandatory true; + description + "Enable BGP Auto-Discovery"; + } + container leaf-info-required { + presence "Indicates a leaf-info-required node is configured."; + description + "Explicit tracking of S-PMSI core trees"; + } + container inter-as { + presence "Indicates a inter-as node is configured."; + description + "Inter-AS MVPN"; + } + container receiver-site { + presence "Indicates a receiver-site node is configured."; + description + "Receiver-only site"; + } + container anycast-rp { + presence "Indicates a anycast-rp node is configured."; + description + "Enable Anycast RP using MVPN SAFI"; + leaf route-policy { + type xr:Route-policy-name; + description + "Policy for filtering routes"; + } + } + container pmsi-timer { + when "../core-tree != 'pim'"; + description + "Set PMSI Tunnel timers"; + leaf change-delay { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Change Delay timer"; + } + leaf stop-forwarding { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Stop Forwarding timer"; + } + } + container segmented { + must "../core-tree != 'pim'"; + presence "Indicates a segmented node is configured."; + description + "Enable Segmented Multicast/MVPN"; + leaf bandwidth-threshold { + type uint32 { + range "0..1000000000" { + description + "Threshold in Kbps"; + } + } + must "../../core-tree = 'ingress-replication'"; + description + "Set Bandwidth threshold for Ingress Replication core-tree"; + } + leaf color { + type uint32 { + range "0..4294967295" { + description + "Color value"; + } + } + description + "Enable Color Opaque Extended Community"; + } + } + container inherit-vrf-ri { + description + "Inherit VRF Route-Import EC"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF name"; + } + } + description + "VRF to inherit from"; + } + } + } + } + container static-rpf { + description + "Configure a static RPF rule for a given prefix/mask"; + list address-range { + key "prefix-address prefix-length"; + description + "address range"; + leaf prefix-address { + type inet:ipv4-address-no-zone; + description + "Prefix for address range"; + } + leaf prefix-length { + type uint32 { + range "0..32"; + } + description + "Prefix mask for address range"; + } + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Static route interface"; + } + leaf next-hop-address { + type inet:ipv4-address-no-zone; + mandatory true; + description + "Static route next-hop"; + } + } + } + container core-tree-protocol { + description + "Configure Core-tree-protocol"; + container rsvp-te { + presence "Indicates a rsvp-te node is configured."; + description + "Configure P2MP-TE as the Core-tree-protocol"; + leaf group-list { + type xr:Cisco-ios-xr-string; + description + "ACL for group-list"; + } + } + } + container static { + description + "Configure a static Policy"; + list sr-policy { + key "sr-policy-name"; + description + "SR P2MP Policy for Multicast"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the SR P2MP Policy"; + } + leaf ingress { + type string; + description + "Ingress Node address of traffic (for strict-rpf)"; + } + } + } + } + container ipv6 { + presence "Indicates a ipv4 node is configured."; + description + "Enter ipv6 Address Family command mode"; + container ssm { + description + "Configure a group range for Source-Specific use"; + leaf range { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Access list specifying SSM group range"; + } + } + must "not(../disable)"; + description + "Provide ACL that specifies non-standard SSM range"; + } + container disable { + must "not(../range)"; + presence "Indicates a disable node is configured."; + description + "Disable use of all SSM group ranges"; + } + container allow-override { + presence "Indicates a allow-override node is configured."; + description + "Allow SSM ranges to be overridden by more specific ranges"; + } + } + container mdt { + description + "MVPN configuration"; + container data { + description + "Data MDT configuration"; + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Ingress Replication Data MDT"; + leaf number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + container mldp { + presence "Indicates a mldp node is configured."; + description + "MLDP Data MDT"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + mandatory true; + description + "Maximum number of data-mdts to be triggered"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + container p2mp-te { + must "(maximum-number or route-policy) and not(maximum-number and route-policy)"; + presence "Indicates a p2mp-te node is configured."; + description + "P2MPTE Data MDT core"; + leaf maximum-number { + type uint32 { + range "1..4294967295"; + } + description + "Maximum number of data-mdts to be triggered"; + } + leaf attribute-set { + type xr:Cisco-ios-xr-string; + description + "The Attribute Set template to be used with the TE tunnel request"; + } + leaf access-list-name { + type xr:Cisco-ios-xr-string; + description + "ACL for Customer VRF groups allowed to do Data MDT"; + } + container immediate-switch { + presence "Indicates an immediate-switch node is configured."; + description + "Switch to Data MDT immediately"; + } + leaf route-policy { + type xr:Route-policy-name; + description + "DATA MDT Route policy"; + } + leaf threshold { + type uint32 { + range "0..4294967" { + description + "Threshold value (kbps). Default 1kbps"; + } + } + description + "Traffic rate threshold in Kbps to trigger Data MDT"; + } + } + } + container default { + description + "MDT Default distribution tree"; + container mldp { + description + "mLDP default distribution tree"; + container ipv4s { + description + "MP2MP core-tree with IPv4 Root Address"; + list ipv4 { + key "address"; + description + "MP2MP core-tree with IPv4 Root Address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "MP2MP core-tree with IPv4 Root Address"; + } + container partitioned { + description + "mLDP Partitioned MDT"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + } + container p2mp { + presence "Indicates a p2mp node is configured."; + description + "P2MP core-tree"; + container partitioned { + description + "mLDP Partitioned MDT"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + description + "Configure MLDP Flex-algo"; + } + } + } + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + description + "The Attribute Set template to be used with the TE tunnel request"; + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable default ingress-replication"; + } + } + container segment-border { + presence "Indicates a segment-border node is configured."; + description + "Border router for segmented multicast"; + leaf route-policy { + type xr:Route-policy-name; + description + "Route-policy to select segmented core type"; + } + } + container segmented-inband { + presence "Indicates a segmented-inband node is configured."; + description + "MDT Segmented Inband distribution tree"; + leaf core-tree { + type enumeration { + enum "mldp" { + value 2; + description + "mLDP core tree"; + } + enum "p2mp-te" { + value 3; + description + "RSVP P2MP-TE core tree"; + } + enum "ingress-replication" { + value 4; + description + "IR core tree"; + } + } + mandatory true; + description + "MDT Segmented Inband distribution tree"; + } + leaf color { + type uint32 { + range "0..4294967295" { + description + "Color Opaque EC value"; + } + } + description + "Enable Color Opaque extended community"; + } + } + container partitioned { + description + "MDT Partitioned distribution tree"; + container p2mp-te { + description + "P2MP-TE default distribution tree"; + leaf attribute-set { + type union { + type string { + pattern "default" { + description + "Use default template"; + } + } + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of template describing the Attribute Set"; + } + } + } + description + "The Attribute Set template to be used with the TE tunnel request"; + } + } + container mldp { + description + "mLDP signaled distribution tree"; + container ipv4 { + description + "IPv4 core"; + container mp2mp { + must "not(../p2mp)"; + presence "Indicates a mp2mp node is configured."; + description + "Enable mLDP MP2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + container p2mp { + must "not(../mp2mp)"; + presence "Indicates a p2mp node is configured."; + description + "Enable mLDP P2MP core tree"; + container bidir { + presence "Indicates a bidir node is configured."; + description + "Enable Exclusive Partitioned MDT for Bidir"; + } + } + leaf flex-algo { + type uint32 { + range "128..255" { + description + "MLDP Flex-algo value"; + } + } + must "../mp2mp or ../p2mp"; + description + "Configure MLDP Flex-algo"; + } + } + } + container ingress-replication { + presence "Indicates a ingress-replication node is configured."; + description + "Enable partitioned ingress-replication"; + } + } + container mldp { + description + "mLDP distribution tree"; + container in-band-signaling { + description + "Enable mLDP in-band-signalling"; + container ipv4 { + presence "Indicates a ipv4 node is configured."; + description + "Enable IPv4-core tree"; + } + } + } + container static { + description + "Interface used to set MDT source address"; + container segment-routing { + presence "Indicates a segment-routing node is configured."; + description + "Set MDT core as tree-sid"; + container strict-rpf { + presence "Indicates a strict-rpf node is configured."; + description + "Enable strict RPF check"; + } + } + } + leaf source { + type xr:Interface-name; + description + "Interface used to set MDT source address"; + } + leaf mtu { + type uint32 { + range "1401..65535" { + description + "MTU value"; + } + } + description + "MDT mtu configuration"; + } + } + container rate-per-route { + presence "Indicates a rate-per-route node is configured."; + description + "Enable/disable per (S,G) rate calculation"; + } + container multipath { + presence "Indicates a multipath node is configured."; + description + "Enable equal-cost multipath routing"; + container hash { + description + "Enter a hashing algorithm"; + container source-nexthop { + must "not(../interface-extended or ../source-group)"; + presence "Indicates a source-nexthop node is configured."; + description + "Enable source with nexthop multipath hashing + (better distribution)"; + } + container interface-extended { + must "not(../source-nexthop or ../source-group)"; + presence "Indicates a interface-extended node is configured."; + description + "Enable interface extensions for non-unique next-hop addrs"; + } + container source-group { + must "not(../source-nexthop or ../interface-extended)"; + presence "Indicates a source-group node is configured."; + description + "Enable source, group based multipath hashing"; + } + } + } + container accounting { + description + "Enable/disable Accounting"; + container per-prefix { + presence "Indicates a per-prefix node is configured."; + description + "Enable per (S,G) accounting."; + container forward-only { + presence "Indicates a forward-only node is configured."; + description + "Enable per (S,G) forward-only accounting."; + } + } + } + container log-traps { + presence "Indicates a log-traps node is configured."; + description + "Enable logging trap events"; + } + container interface-inheritance { + description + "Knob to separate enabling/disabling multicast routing & forwarding"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable inheriting En/Dis config "; + } + } + leaf mofrr-lockout-timer { + type uint32 { + range "1..3600" { + description + "Mofrr Lockout timer value"; + } + } + description + "Lockout timer for mofrr"; + } + leaf mofrr-loss-detection-timer { + type uint32 { + range "1..3600" { + description + "Mofrr Loss Detection timer value"; + } + } + description + "Loss Detection timer for mofrr"; + } + container forwarding-latency { + description + "Knob to delay traffic being forwarded on a route"; + leaf delay { + type uint32 { + range "5..500" { + description + "Delay time in msecs"; + } + } + description + "Delay time in msecs"; + } + } + container export-rt { + description + "Configure Export Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route distinguisher"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route distinguisher"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route distinguisher"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container import-rt { + description + "Configure Import Route-Target"; + list two-byte-as-rt { + key "two-byte-as-number index-number"; + description + "Two Byte AS Number route-target"; + leaf two-byte-as-number { + type uint32 { + range "1..65535" { + description + "Two Byte AS number"; + } + } + description + "Two Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..4294967295" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list four-byte-as-rt { + key "four-byte-as-number index-number"; + description + "Four Byte AS Number route-target"; + leaf four-byte-as-number { + type uint32 { + range "65536..4294967295" { + description + "Four Byte AS number"; + } + } + description + "Four Byte AS Number route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + list ip-address-rt { + key "ip-address index-number"; + description + "IP address route-target"; + leaf ip-address { + type inet:ipv4-address-no-zone; + description + "IP address route-target"; + } + leaf index-number { + type uint32 { + range "0..65535" { + description + "AS:nn (hex or decimal format)"; + } + } + description + "AS:nn (hex or decimal format)"; + } + } + } + container interface { + description + "Multicast interface configuration subcommands"; + container all { + description + "Inherited by all interfaces"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable IP Multicast"; + } + } + container interfaces { + description + "select an interface to configure"; + list interface { + key "interface-name"; + description + "select an interface to configure"; + leaf interface-name { + type xr:Interface-name; + description + "select an interface to configure"; + } + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable IP multicast"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable IP multicast"; + } + leaf boundary { + type string { + length "1..32" { + description + "Access list specifying scoped multicast groups"; + } + } + description + "Boundary for administratively scoped multicast addresses"; + } + leaf ttl-threshold { + type uint32 { + range "1..255" { + description + "TTL threshold value"; + } + } + description + "TTL threshold for IPv4 multicast packets"; + } + } + } + } + container maximum { + description + "Maximum state limits"; + container disable { + presence "Indicates a disable node is configured."; + description + "Disable all multicast state limit checks"; + } + } + container bgp { + description + "Enable BGP MVPN Discovery"; + container auto-discovery { + presence "Indicates a auto-discovery node is configured."; + description + "Enable BGP Auto-Discovery"; + leaf core-tree { + type enumeration { + enum "pim" { + value 1; + description + "PIM core tree"; + } + enum "mldp" { + value 2; + description + "mLDP core tree"; + } + enum "p2mp-te" { + value 3; + description + "RSVP P2MP-TE core tree"; + } + enum "ingress-replication" { + value 4; + description + "IR core tree"; + } + } + mandatory true; + description + "Enable BGP Auto-Discovery"; + } + container leaf-info-required { + presence "Indicates a leaf-info-required node is configured."; + description + "Explicit tracking of S-PMSI core trees"; + } + container inter-as { + presence "Indicates a inter-as node is configured."; + description + "Inter-AS MVPN"; + } + container receiver-site { + presence "Indicates a receiver-site node is configured."; + description + "Receiver-only site"; + } + container anycast-rp { + presence "Indicates a anycast-rp node is configured."; + description + "Enable Anycast RP using MVPN SAFI"; + leaf route-policy { + type xr:Route-policy-name; + description + "Policy for filtering routes"; + } + } + container pmsi-timer { + when "../core-tree != 'pim'"; + description + "Set PMSI Tunnel timers"; + leaf change-delay { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Change Delay timer"; + } + leaf stop-forwarding { + type uint32 { + range "0..4294967295" { + description + "Time in seconds"; + } + } + description + "Set Stop Forwarding timer"; + } + } + container segmented { + must "../core-tree != 'pim'"; + presence "Indicates a segmented node is configured."; + description + "Enable Segmented Multicast/MVPN"; + leaf bandwidth-threshold { + type uint32 { + range "0..1000000000" { + description + "Threshold in Kbps"; + } + } + description + "Set Bandwidth threshold for Ingress Replication core-tree"; + } + leaf color { + type uint32 { + range "0..4294967295" { + description + "Color value"; + } + } + description + "Enable Color Opaque Extended Community"; + } + } + container inherit-vrf-ri { + description + "Inherit VRF Route-Import EC"; + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF name"; + } + } + description + "VRF to inherit from"; + } + } + } + } + container static-rpf { + description + "Configure a static RPF rule for a given prefix/mask"; + list address-range { + key "prefix-address prefix-length"; + description + "address range"; + leaf prefix-address { + type inet:ipv6-address-no-zone; + description + "Prefix for address range"; + } + leaf prefix-length { + type uint32 { + range "0..128"; + } + description + "Prefix mask for address range"; + } + leaf interface { + type xr:Interface-name; + mandatory true; + description + "Static route interface"; + } + leaf next-hop-address { + type inet:ipv6-address-no-zone; + mandatory true; + description + "Static route next-hop"; + } + } + } + container core-tree-protocol { + description + "Configure Core-tree-protocol"; + container rsvp-te { + presence "Indicates a rsvp-te node is configured."; + description + "Configure P2MP-TE as the Core-tree-protocol"; + leaf group-list { + type xr:Cisco-ios-xr-string; + description + "ACL for group-list"; + } + } + } + container static { + description + "Configure a static Policy"; + list sr-policy { + key "sr-policy-name"; + description + "SR P2MP Policy for Multicast"; + leaf sr-policy-name { + type xr:Cisco-ios-xr-string; + description + "Name of the SR P2MP Policy"; + } + leaf ingress { + type string; + description + "Ingress Node address of traffic (for strict-rpf)"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-hw-module-osa-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-hw-module-osa-cfg.yang new file mode 100644 index 000000000..6ebb2f906 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-hw-module-osa-cfg.yang @@ -0,0 +1,925 @@ +module Cisco-IOS-XR-um-ncs-hw-module-osa-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ncs-hw-module-osa-cfg"; + prefix um-ncs-hw-module-osa-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 ncs-hw-module-osa package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-04 { + description + "Added new card-types nodes"; + semver:module-version "1.0.0"; + } + revision 2022-07-04 { + description + "Added new card-types nodes"; + } + revision 2022-03-21 { + description + "Added missing nodes"; + } + revision 2021-11-22 { + description + "Initial release"; + } + + feature mxponder { + description + "mxponder"; + } + + feature client-rate { + description + "client-rate"; + } + + feature trunk-rate { + description + "trunk-rate"; + } + + feature client-port-rate { + description + "client-port-rate"; + } + + feature client-port-ains-soak { + description + "client-port-ains-soak"; + } + + feature drop-lldp { + description + "drop-lldp"; + } + + feature arp-snoop { + description + "arp-snoop"; + } + + feature split-client-port-mapping { + description + "split-client-port-mapping"; + } + + feature regen { + description + "regen"; + } + + feature mxponder-slice { + description + "mxponder-slice"; + } + + feature attention-led { + description + "attention-led"; + } + + feature all-ports { + description + "all-ports"; + } + + feature port { + description + "port"; + } + + feature terminal-ampli { + description + "terminal-ampli"; + } + + feature grid-mode { + description + "grid-mode"; + } + + feature channel-id { + description + "channel-id"; + } + + feature inline-ampli { + description + "inline-ampli"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container hw-module { + description + "Configure h/w module"; + container mxponder { + if-feature "mxponder"; + description + "Module configuration"; + leaf client-rate { + if-feature "client-rate"; + type enumeration { + enum "100GE" { + value 2; + description + "client type 100G Ethernet"; + } + enum "OTU4" { + value 3; + description + "client type OTU4"; + } + enum "400GE" { + value 8; + description + "client type 400G Ethernet"; + } + } + description + "Client side parameters"; + } + leaf trunk-rate { + if-feature "trunk-rate"; + type enumeration { + enum "50G" { + value 1; + description + "trunk bitrate 50Gbps"; + } + enum "100G" { + value 2; + description + "trunk bitrate 100Gbps"; + } + enum "150G" { + value 3; + description + "trunk bitrate 150Gbps"; + } + enum "200G" { + value 4; + description + "trunk bitrate 200Gbps"; + } + enum "250G" { + value 5; + description + "trunk bitrate 250Gbps"; + } + enum "300G" { + value 6; + description + "trunk bitrate 300Gbps"; + } + enum "350G" { + value 7; + description + "trunk bitrate 350Gbps"; + } + enum "400G" { + value 8; + description + "trunk bitrate 400Gbps"; + } + enum "450G" { + value 9; + description + "trunk bitrate 450Gbps"; + } + enum "500G" { + value 10; + description + "trunk bitrate 500Gbps"; + } + enum "550G" { + value 11; + description + "trunk bitrate 550Gbps"; + } + enum "600G" { + value 12; + description + "trunk bitrate 600Gbps"; + } + } + description + "Trunk side parameters"; + } + container client-port-rates { + description + "client port rate configuration"; + list client-port-rate { + if-feature "client-port-rate"; + key "port-number lane-number"; + description + "client port rate configuration"; + leaf port-number { + type uint32 { + range "0..11" { + description + "Enter port number"; + } + } + description + "client port rate configuration"; + } + leaf lane-number { + type uint32 { + range "1..4" { + description + "Enter Lane number"; + } + } + description + "If port is in Breakout mode, specify optics lane number"; + } + leaf client-type { + type enumeration { + enum "100GE" { + value 2; + description + "client 100GE"; + } + enum "OTU4" { + value 3; + description + "client OTU4"; + } + enum "400GE" { + value 8; + description + "client 400GE"; + } + } + mandatory true; + description + "Client Rate to be configured"; + } + } + } + container client-port-ains-soak { + if-feature "client-port-ains-soak"; + description + "Client ports AINS configuration"; + leaf hours { + type uint32 { + range "0..48" { + description + "Default AINS soak interval hours value"; + } + } + must "../minutes"; + description + "Default AINS soak interval hours value"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Default AINS soak interval minutes value"; + } + } + must "../hours"; + description + "Default AINS soak interval minutes value"; + } + } + container drop-lldp { + if-feature "drop-lldp"; + presence "Indicates a drop-lldp node is configured."; + description + "Drop LLDP packets coming on client ports on this slice"; + } + container arp-snoop { + if-feature "arp-snoop"; + presence "Indicates a arp-snoop node is configured."; + description + "Enable ARP packet snooping on client ports on this slice"; + } + container split-client-port-mapping { + if-feature "split-client-port-mapping"; + presence "Indicates a split-client-port-mapping node is configured."; + description + "Config to choose new port mapping"; + } + } + container regen { + if-feature "regen"; + description + "regenerator Module configuration"; + leaf trunk-rate { + if-feature "trunk-rate"; + type enumeration { + enum "100G" { + value 2; + description + "trunk bitrate 100Gbps"; + } + enum "200G" { + value 4; + description + "trunk bitrate 200Gbps"; + } + enum "300G" { + value 6; + description + "trunk bitrate 300Gbps"; + } + enum "400G" { + value 8; + description + "trunk bitrate 400Gbps"; + } + enum "500G" { + value 10; + description + "trunk bitrate 500Gbps"; + } + enum "600G" { + value 12; + description + "trunk bitrate 600Gbps"; + } + } + description + "Trunk side parameters"; + } + } + container mxponder-slices { + description + "Slice configuration"; + list mxponder-slice { + if-feature "mxponder-slice"; + key "slice-number"; + description + "Slice configuration"; + leaf slice-number { + type uint32 { + range "0..7" { + description + "Enter the slice number"; + } + } + description + "Slice configuration"; + } + leaf client-rate { + if-feature "client-rate"; + type enumeration { + enum "100GE" { + value 2; + description + "client type 100G Ethernet"; + } + enum "OTU4" { + value 3; + description + "client type OTU4"; + } + enum "400GE" { + value 8; + description + "client type 400G Ethernet"; + } + } + description + "Client side parameters"; + } + leaf trunk-rate { + if-feature "trunk-rate"; + type enumeration { + enum "100G" { + value 2; + description + "trunk bitrate 100Gbps"; + } + enum "150G" { + value 3; + description + "trunk bitrate 150Gbps"; + } + enum "200G" { + value 4; + description + "trunk bitrate 200Gbps"; + } + enum "250G" { + value 5; + description + "trunk bitrate 250Gbps"; + } + enum "300G" { + value 6; + description + "trunk bitrate 300Gbps"; + } + enum "350G" { + value 7; + description + "trunk bitrate 350Gbps"; + } + enum "400G" { + value 8; + description + "trunk bitrate 400Gbps"; + } + enum "450G" { + value 9; + description + "trunk bitrate 450Gbps"; + } + enum "500G" { + value 10; + description + "trunk bitrate 500Gbps"; + } + enum "550G" { + value 11; + description + "trunk bitrate 550Gbps"; + } + enum "600G" { + value 12; + description + "trunk bitrate 600Gbps"; + } + } + description + "Trunk side parameters"; + } + container client-port-rates { + description + "client port rate configuration"; + list client-port-rate { + if-feature "client-port-rate"; + key "port-number lane-number"; + description + "client port rate configuration"; + leaf port-number { + type uint32 { + range "0..11" { + description + "Enter port number"; + } + } + description + "client port rate configuration"; + } + leaf lane-number { + type uint32 { + range "1..4" { + description + "Enter Lane number"; + } + } + description + "If port is in Breakout mode, specify optics lane number"; + } + leaf client-type { + type enumeration { + enum "100GE" { + value 2; + description + "client 100GE"; + } + enum "OTU4" { + value 3; + description + "client OTU4"; + } + enum "400GE" { + value 8; + description + "client 400GE"; + } + } + mandatory true; + description + "Client Rate to be configured"; + } + } + } + container client-port-ains-soak { + if-feature "client-port-ains-soak"; + description + "Client ports AINS configuration"; + leaf hours { + type uint32 { + range "0..48" { + description + "Default AINS soak interval hours value"; + } + } + must "../minutes"; + description + "Default AINS soak interval hours value"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Default AINS soak interval minutes value"; + } + } + must "../hours"; + description + "Default AINS soak interval minutes value"; + } + } + container drop-lldp { + if-feature "drop-lldp"; + presence "Indicates a drop-lldp node is configured."; + description + "Drop LLDP packets coming on client ports on this slice"; + } + container arp-snoop { + if-feature "arp-snoop"; + presence "Indicates a arp-snoop node is configured."; + description + "Enable ARP packet snooping on client ports on this slice"; + } + } + } + container attention-led { + if-feature "attention-led"; + description + "Attention LED Configuration"; + container all-ports { + if-feature "all-ports"; + presence "Indicates a all-ports node is configured."; + description + "Enable Attention LED on all the Ports of Line Card"; + } + container ports { + description + "Enable Attention LED on given Port Number of Line Card"; + list port { + if-feature "port"; + key "port-id"; + description + "Enable Attention LED on given Port Number of Line Card"; + leaf port-id { + type uint32 { + range "0..13" { + description + "Enter port number"; + } + } + description + "Enable Attention LED on given Port Number of Line Card"; + } + } + } + } + container terminal-ampli { + if-feature "terminal-ampli"; + description + "OLT configuration"; + container grid-mode { + if-feature "grid-mode"; + description + "Grid Mode Configuration"; + container flex { + description + "Flexible Grid Channel Configuration"; + container channel-ids { + description + "Channel ID Configuration"; + list channel-id { + if-feature "channel-id"; + key "channel-id"; + description + "Channel ID Configuration"; + leaf channel-id { + type uint32 { + range "0..4294967295" { + description + "Enter Channel-id"; + } + } + description + "Channel ID Configuration"; + } + leaf centre-freq { + type xr:Cisco-ios-xr-string { + length "1..11" { + description + "Enter Centre Frequency in THz(resolution 100MHz)"; + } + } + must "../width"; + description + "Centre Frequency Configuration"; + } + leaf width { + type xr:Cisco-ios-xr-string { + length "1..11" { + description + "Enter Channel Width in GHz(resolution 100MHz)"; + } + } + must "../centre-freq"; + description + "Channel Width Configuration"; + } + } + } + } + } + } + container inline-ampli { + if-feature "inline-ampli"; + description + "ILA configuration"; + container grid-mode { + if-feature "grid-mode"; + description + "Grid Mode Configuration"; + container flex { + description + "Flexible Grid Channel Configuration"; + container channel-ids { + description + "Channel ID Configuration"; + list channel-id { + if-feature "channel-id"; + key "channel-id"; + description + "Channel ID Configuration"; + leaf channel-id { + type uint32 { + range "0..4294967295" { + description + "Enter Channel-id"; + } + } + description + "Channel ID Configuration"; + } + leaf centre-freq { + type xr:Cisco-ios-xr-string { + length "1..11" { + description + "Enter Centre Frequency in THz(resolution 100MHz)"; + } + } + must "../width"; + description + "Centre Frequency Configuration"; + } + leaf width { + type xr:Cisco-ios-xr-string { + length "1..11" { + description + "Enter Channel Width in GHz(resolution 100MHz)"; + } + } + must "../centre-freq"; + description + "Channel Width Configuration"; + } + } + } + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } + container ains-soak { + description + "AINS configuration"; + leaf hours { + type uint32 { + range "0..48" { + description + "Default AINS soak interval hours value"; + } + } + must "../minutes"; + description + "Default AINS soak interval hours value"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Default AINS soak interval minutes value"; + } + } + must "../hours"; + description + "Default AINS soak interval minutes value"; + } + } + container reserve-slot { + description + "reserve_slot configuration"; + container locations { + description + "Fully qualified location specification"; + list location { + key "location-name"; + description + "Fully qualified location specification"; + leaf location-name { + type xr:Cisco-ios-xr-string; + description + "Fully qualified location specification"; + } + container cardtype { + description + "cardtype specification"; + container ncs1k4-1-2t-k9 { + must + "not(../ncs1k4-1-2t-l-k9 or ../ncs1k4-1-2tl-k9 + or ../ncs1k4-otn-xp or ../ncs1k4-otn-xpl + or ../ncs1k4-2-qdd-c-k9 or ../ncs1k4-lc-filler)"; + presence "Indicates a ncs1k4-1-2t-k9 node is configured."; + description + " NCS1K4 12x QSFP28 2 Trunk C-Band DWDM card"; + } + container ncs1k4-1-2t-l-k9 { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2tl-k9 + or ../ncs1k4-otn-xp or ../ncs1k4-otn-xpl + or ../ncs1k4-2-qdd-c-k9 or ../ncs1k4-lc-filler)"; + presence "Indicates a ncs1k4-1-2t-l-k9 node is configured."; + description + "NCS1K4 12x QSFP28 2 Trunk C-Band DWDM Licenced card"; + } + container ncs1k4-1-2tl-k9 { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2t-l-k9 + or ../ncs1k4-otn-xp or ../ncs1k4-otn-xpl + or ../ncs1k4-2-qdd-c-k9 or ../ncs1k4-lc-filler)"; + presence "Indicates a ncs1k4-1-2tl-k9 node is configured."; + description + "NCS1K4 12x QSFP28 2 Trunk L-Band DWDM card"; + } + container ncs1k4-otn-xp { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2t-l-k9 + or ../ncs1k4-1-2tl-k9 or ../ncs1k4-otn-xpl + or ../ncs1k4-2-qdd-c-k9 or ../ncs1k4-lc-filler)"; + presence "Indicates a ncs1k4-otn-xp node is configured."; + description + " Cisco NCS1004 BO LC"; + } + container ncs1k4-otn-xpl { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2t-l-k9 + or ../ncs1k4-1-2tl-k9 or ../ncs1k4-otn-xp + or ../ncs1k4-2-qdd-c-k9 or ../ncs1k4-lc-filler)"; + presence "Indicates a ncs1k4-otn-xpl node is configured."; + description + " Cisco NCS1004 BO Licensed LC"; + } + container ncs1k4-2-qdd-c-k9 { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2t-l-k9 + or ../ncs1k4-1-2tl-k9 or ../ncs1k4-otn-xp + or ../ncs1k4-otn-xpl or ../ncs1k4-lc-filler)"; + presence "Indicates a ncs1k4-2-qdd-c-k9 node is configured."; + description + "NCS1K4 8x QSFP28/2x QSFPDD 2 Trunk C-Band DWDM LC"; + } + container ncs1k4-lc-filler { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2t-l-k9 + or ../ncs1k4-1-2tl-k9 or ../ncs1k4-otn-xp + or ../ncs1k4-otn-xpl or ../ncs1k4-2-qdd-c-k9)"; + presence "Indicates a ncs1k4-lc-filler node is configured."; + description + " Network Convergence System 1004 Filler"; + } + container ncs1k4-qxp-k9 { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2t-l-k9 + or ../ncs1k4-1-2tl-k9 or ../ncs1k4-otn-xp + or ../ncs1k4-otn-xpl or ../ncs1k4-2-qdd-c-k9 + or ../ncs1k4-lc-filler or ../ncs1k4-qxp-l-k9)"; + presence "Indicates a ncs1k4-qxp-k9 node is configured."; + description + "NCS1004 3.2T QSFP-DD DCO Transponder"; + } + container ncs1k4-qxp-l-k9 { + must + "not(../ncs1k4-1-2t-k9 or ../ncs1k4-1-2t-l-k9 + or ../ncs1k4-1-2tl-k9 or ../ncs1k4-otn-xp + or ../ncs1k4-otn-xpl or ../ncs1k4-2-qdd-c-k9 + or ../ncs1k4-lc-filler or ../ncs1k4-qxp-k9)"; + presence "Indicates a ncs1k4-qxp-l-k9 node is configured."; + description + "NCS1004 3.2T Licenced QSFP-DD DCO Transponder"; + } + container NCS1K-OLT-C { + must + "not(../NCS1K-OLT-R-C or ../NCS1K-ILA-C + or ../NCS1K-ILA-R-C or ../NCS1K-ILA-2R-C + or ../NCS1K-OLT-L or ../NCS1K-ILA-L)"; + presence "Indicates a NCS1K-OLT-C node is configured."; + description + "NCS1K Optical Line Terminal C-band Card"; + } + container NCS1K-OLT-R-C { + must + "not(../NCS1K-OLT-C or ../NCS1K-ILA-C + or ../NCS1K-ILA-R-C or ../NCS1K-ILA-2R-C + or ../NCS1K-OLT-L or ../NCS1K-ILA-L)"; + presence "Indicates a NCS1K-OLT-R-C node is configured."; + description + "NCS1K Optical Line Terminal C-band Card + Raman Card"; + } + container NCS1K-ILA-C { + must + "not(../NCS1K-OLT-C or ../NCS1K-OLT-R-C + or ../NCS1K-ILA-R-C or ../NCS1K-ILA-2R-C + or ../NCS1K-OLT-L or ../NCS1K-ILA-L)"; + presence "Indicates a NCS1K-ILA-C node is configured."; + description + "NCS1K In-Line Amplifier C-band Card"; + } + container NCS1K-ILA-R-C { + must + "not(../NCS1K-OLT-C or ../NCS1K-OLT-R-C + or ../NCS1K-ILA-C or ../NCS1K-ILA-2R-C + or ../NCS1K-OLT-L or ../NCS1K-ILA-L)"; + presence "Indicates a NCS1K-ILA-R-C node is configured."; + description + "NCS1K In-Line Amplifier C-band Card + Raman Card"; + } + container NCS1K-ILA-2R-C { + must + "not(../NCS1K-OLT-C or ../NCS1K-OLT-R-C + or ../NCS1K-ILA-C or ../NCS1K-ILA-R-C + or ../NCS1K-OLT-L or ../NCS1K-ILA-L)"; + presence "Indicates a NCS1K-ILA-2R-C node is configured."; + description + "NCS1K In-Line Amplifier C-band Card + 2 Raman Card"; + } + container NCS1K-OLT-L { + must + "not(../NCS1K-OLT-C or ../NCS1K-OLT-R-C + or ../NCS1K-ILA-C or ../NCS1K-ILA-R-C + or ../NCS1K-ILA-2R-C or ../NCS1K-ILA-L)"; + presence "Indicates a NCS1K-OLT-L node is configured."; + description + "NCS1K Optical Line Terminal L-band Card"; + } + container NCS1K-ILA-L { + must + "not(../NCS1K-OLT-C or ../NCS1K-OLT-R-C + or ../NCS1K-ILA-C or ../NCS1K-ILA-R-C + or ../NCS1K-ILA-2R-C or ../NCS1K-OLT-L)"; + presence "Indicates a NCS1K-ILA-L node is configured."; + description + "NCS1K In-Line Amplifier L-band Card"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg.yang new file mode 100644 index 000000000..4522b1814 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg.yang @@ -0,0 +1,63 @@ +module Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ncs-l2vpn-flood-mode-cfg"; + prefix um-ncs-l2vpn-flood-mode-cfg; + + import Cisco-IOS-XR-um-l2vpn-cfg { + prefix a1; + } + 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 ncs-l2vpn-flood-mode package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2021-04-13 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + augment "/a1:l2vpn/a1:bridge/a1:groups/a1:group/a1:bridge-domains/a1:bridge-domain" { + description + "This augment extends l2vpn bridge group bridge-domain nodes + configuration"; + container flood { + description + "Flooding Capability"; + container mode { + description + "Choose Flooding Mode"; + container ac-ingress-replication { + presence "Indicates a ac-ingress-replication node is configured."; + description + "Ingress replication of Atachment circuits"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg.yang new file mode 100644 index 000000000..01baa32d8 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg.yang @@ -0,0 +1,2323 @@ +module Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ncs-lindt-hw-module-profile-cfg"; + prefix um-ncs-lindt-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-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-11-22 { + description + "Added free-buffer-int-threshold and clear-value-in-percent + support under profile-qos + 2022-11-17 + Added irb-recycle-bandwidth hw-module support under profile-qos + 2022-07-04 + Added new node multicast under container hw-module + 2022-06-17 + Added container for qos-stats-collection + 2022-05-27 + 1. Added containers nif-hp-fifo-reserve, four8byte-cfm-maid-enable and gue + 2. Updated enum value of max-classmap-size + 2022-04-29 + Added l2-l3-tx-enable support under span-filter + 2022-03-30 + Modified span-l2-filter node to span-filter + 2022-02-22 + Added container span-l2-filter under profile-routing + 2022-01-04 + 1.Added container arp_isis_prior_enable and gre-exp-classification-enable under profile-qos + 2.Added container irb"; + semver:module-version "2.0.0"; + } + revision 2021-07-13 { + 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 + "value in percent"; + } + } + 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 + "IPv4 prefix length."; + } + } + description + "ip prefix length"; + } + leaf percent { + type xr:Cisco-ios-xr-string { + length "1..9" { + description + "prefix precent 0.0-100.00000"; + } + pattern "100([.]0{0,5})?|([0-9]{1,2}[0]?)([.][0-9]{0,5})?"; + } + mandatory true; + description + "prefix percentage to configure"; + } + } + } + } + } + container ipv6 { + description + "Configure ipv6 addresses in TCAM"; + container unicast { + description + "Unicast address"; + leaf percent { + type uint32 { + range "0..100" { + description + "value in percent"; + } + } + 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 + "IPv6 prefix length."; + } + } + description + "ip prefix length"; + } + leaf percent { + type xr:Cisco-ios-xr-string { + length "1..9" { + description + "prefix precent 0.0-100.00000"; + } + pattern "100([.]0{0,5})?|([0-9]{1,2}[0]?)([.][0-9]{0,5})?"; + } + mandatory true; + description + "prefix percentage to configure"; + } + } + } + } + } + container v6mcast { + description + "Multicast address"; + leaf percent { + type uint32 { + range "0..100" { + description + "value in percent"; + } + } + description + "percent to configure"; + } + } + } + container acl-prefix { + description + "ACL table to configure"; + leaf percent { + type uint32 { + range "0..100" { + description + "value in percent"; + } + } + description + "percent to configure"; + } + } + 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 dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 32 bit qualifier"; + } + container src-port { + must "../frag-bit"; + presence "Indicates a src-port node is configured."; + description + "source L4 port, 16 bit qualifier"; + } + container dst-port { + must "../frag-bit"; + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container proto { + presence "Indicates a proto node is configured."; + description + "protocol type, 8 bit qualifier"; + } + container tcp-flags { + must "../frag-bit"; + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 6 bit qualifier"; + } + container packet-length { + presence "Indicates a packet-length node is configured."; + description + "packet length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container precedence { + presence "Indicates a precedence node is configured."; + description + "precedence/dscp, 8 bit qualifier"; + } + container port-range { + must "../frag-bit"; + presence "Indicates a port-range node is configured."; + description + "ipv4 port range qualifier, 24 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + 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 dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 32 bit qualifier"; + } + container src-port { + must "../frag-bit"; + presence "Indicates a src-port node is configured."; + description + "source L4 port, 16 bit qualifier"; + } + container dst-port { + must "../frag-bit"; + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container proto { + presence "Indicates a proto node is configured."; + description + "protocol type, 8 bit qualifier"; + } + container tcp-flags { + must "../frag-bit"; + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 6 bit qualifier"; + } + container packet-length { + presence "Indicates a packet-length node is configured."; + description + "packet length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container precedence { + presence "Indicates a precedence node is configured."; + description + "precedence/dscp, 8 bit qualifier"; + } + container port-range { + must "../frag-bit"; + presence "Indicates a port-range node is configured."; + description + "ipv4 port range qualifier, 24 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + } + 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-port { + presence "Indicates a src-port node is configured."; + description + "source L4 Port, 16 bit qualifier (manditory field)"; + } + container dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 128 bit qualifier"; + } + container dst-port { + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container next-hdr { + presence "Indicates a next-hdr node is configured."; + description + "next header, 8 bit qualifier (manditory field)"; + } + container tcp-flags { + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 8 bit qualifier"; + } + container payload-length { + presence "Indicates a payload-length node is configured."; + description + "payload length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container traffic-class { + presence "Indicates a traffic-class node is configured."; + description + "Traffic Class, 8 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + 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-port { + presence "Indicates a src-port node is configured."; + description + "source L4 port, 16 bit qualifier"; + } + container dst-addr { + presence "Indicates a dst-addr node is configured."; + description + "destination address, 32 bit qualifier"; + } + container dst-port { + presence "Indicates a dst-port node is configured."; + description + "destination L4 Port, 16 bit qualifier"; + } + container next-hdr { + presence "Indicates a next-hdr node is configured."; + description + "next header, 8 bit qualifier (manditory field)"; + } + container tcp-flags { + presence "Indicates a tcp-flags node is configured."; + description + "tcp-flags, 6 bit qualifier"; + } + container payload-length { + presence "Indicates a packet-length node is configured."; + description + "packet length, 16 bit qualifier"; + } + container frag-bit { + presence "Indicates a frag-bit node is configured."; + description + "fragment-bit, 1 bit qualifier"; + } + container traffic-class { + presence "Indicates a traffic-class node is configured."; + description + "Traffic Class, 8 bit qualifier"; + } + container enable-capture { + presence "Indicates a enable-capture node is configured."; + description + "Enable ACL based mirroring (Included by default)"; + } + container enable-set-ttl { + presence "Indicates a enable-set-ttl node is configured."; + description + "Enable Setting TTL field (Included by default)"; + } + container common-acl { + presence "Indicates a common-acl node is configured."; + description + "enable common-acl, 1 bit qualifier"; + } + container ttl-match { + presence "Indicates a ttl-match node is configured."; + description + "Enable matching on TTL field"; + } + container interface-based { + presence "Indicates a interface-based node is configured."; + description + "Enable non-shared interface based ACL"; + } + leaf udf1 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf2 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf3 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf4 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf5 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf6 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf7 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + leaf udf8 { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "UDF name"; + } + } + description + "user defined filter"; + } + } + } + } + } + } + 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 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 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-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"; + } + } + } + } + } + } + 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 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 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 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 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-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 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 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"; + } + } + } + } + container ignore-ingress-port { + presence "Indicates a ignore-ingress-port node is configured."; + description + "Disable ingress port during bundle hash computation"; + } + 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 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"; + } + enum "2" { + value 2; + description + "Max 2 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"; + } + } + } + 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-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"; + } + } + } + } + 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" { + description + "First DSCP/Precedence value"; + } + } + 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" { + description + "Second DSCP/Precedence value"; + } + } + must "../first-dscp-precedence-value"; + description + "Second DSCP/Precedence value"; + } + leaf third-dscp-precedence-value { + type uint32 { + range "0..63" { + description + "Third DSCP/Precedence value"; + } + } + 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" { + description + "Fourth DSCP/Precedence value"; + } + } + 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" { + description + "Fifth DSCP/Precedence value"; + } + } + 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" { + description + "Sixth DSCP/Precedence value"; + } + } + 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" { + description + "Seventh DSCP/Precedence value"; + } + } + 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" { + description + "Eighth DSCP/Precedence value"; + } + } + must "../seventh-dscp-precedence-value"; + must "../seventh-dscp-precedence-value"; + description + "Eighth DSCP/Precedence value"; + } + } + leaf free-buffer-int-threshold { + type uint32 { + range "0..100" { + description + "set value in percent (must be less than clear value)"; + } + } + must "../clear-value-in-percent"; + description + "Configure free buffer interrupt threshold"; + } + leaf clear-value-in-percent { + type uint32 { + range "0..100" { + description + "clear value in percent (must be more than set value)"; + } + } + must "../free-buffer-int-threshold"; + description + "clear value in percent (must be more than set value)"; + } + container hqos-enable { + presence "Indicates a hqos-enable node is configured."; + description + "Enable Hierarchical QoS"; + } + container qos-stats-collection { + presence "Indicates a qos-stats-collection node is configured."; + description + "Enable QoS stats push model"; + } + container ecn-marking-stats { + presence "Indicates a ecn-marking-stats node is configured."; + description + "Enable ECN marking stats mode"; + } + 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 wred-stats-enable { + presence "Indicates a wred-stats-enable node is configured."; + description + "Enable Wred egress stats"; + } + 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-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-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 conform-aware-policer { + presence "Indicates a conform-aware-policer node is configured."; + description + "Configure Conform Aware Policer mode"; + } + container arp-isis-priority-enable { + presence "Indicates a arp-isis-priority-enable node is configured."; + description + "Prioritize ISIS and ARP packets"; + } + container gre-exp-classification-enable { + presence "Indicates a gre-exp-classification-enable node is configured."; + description + "Enable Ingress EXP classification for MPLSoGRE"; + } + container nif-hp-fifo-reserve { + description + "Indicates a nif-hp-fifo-reserve node is configured."; + leaf percent { + type uint32 { + range "0..100" { + description + "Setting 0 will disable the feature."; + } + } + description + "Reserve NIF FIFOs (percentage) for High Priority traffic."; + } + } + container nif-hp-fifo-reserve-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 number"; + } + leaf percent { + type uint32 { + range "0..100" { + description + "Setting 0 will disable the feature."; + } + } + mandatory true; + description + "Reserve NIF FIFOs (percentage) for High Priority traffic."; + } + } + } + container irb-recycle-bandwidth { + description + "IRB Recycle Port Bandwidth [400, 600] Gbps"; + leaf bandwidth { + type enumeration { + enum "400" { + value 400; + description + "IRB Recycle Bandwidth 400 Gbps"; + } + enum "600" { + value 600; + description + "IRB Recycle Bandwidth 600 Gbps"; + } + } + description + "IRB Recycle Port Bandwidth [400, 600] Gbps"; + } + container locations { + description + "Location of QoS config"; + list location { + key "location-name"; + description + "Location of QoS config"; + leaf location-name { + type xr:Node-id; + description + "Location of QoS config"; + } + leaf bandwidth { + type enumeration { + enum "400" { + value 400; + description + "IRB Recycle Bandwidth 400 Gbps"; + } + enum "600" { + value 600; + description + "IRB Recycle Bandwidth 600 Gbps"; + } + } + mandatory true; + description + "IRB Recycle Port Bandwidth [400, 600] Gbps"; + } + } + } + } + } + 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 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-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 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-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 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 profile-netflow { + description + "Configure Netflow profile."; + container ipfix315-enable { + presence "Indicates a ipfix315-enable node is configured."; + description + "IPFIX 315 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"; + } + } + } + container sflow-enable { + presence "Indicates a sflow-enable node is configured."; + description + "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"; + } + } + } + container fpc-enable { + presence "Indicates a fpc-enable node is configured."; + description + "Netflow full packet capture 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"; + } + } + } + } + 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 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 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 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 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 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 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 qos-enhanced { + must "not(../acl-permit or ../ingress-sr)"; + presence "Indicates a qos-enhanced node is configured."; + description + "Enable enhanced QoS stats."; + } + 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 profile-flowspec { + description + "Configure support for v6 flowspec"; + container ipv6-packet-len-enable { + presence "Indicates a ipv6-packet-len-enable node is configured."; + description + "Configure support for ipv6 flowspec packet length"; + } + } + 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"; + } + leaf traffic-class-value { + type uint32 { + range "0..255" { + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + must "not(../propagate)"; + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + } + } + 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"; + } + leaf traffic-class-value { + type uint32 { + range "0..255" { + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + must "not(../propagate)"; + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + } + } + 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"; + } + leaf traffic-class-value { + type uint32 { + range "0..255" { + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + must "not(../propagate)"; + description + "Traffic-class value (specified as 2 hexadecimal nibbles)"; + } + } + } + } + } + } + } + } + } + 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 two { + must "not(../one or ../three)"; + presence "Indicates a two node is configured."; + description + "BFDv6 and Route download"; + } + container three { + must "not(../one or ../two)"; + presence "Indicates a three node is configured."; + description + "Route download and Bsync"; + } + } + 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"; + } + } + leaf profile-bw-threshold { + type xr:Cisco-ios-xr-string { + length "1..3" { + description + "value in percent: 0-100,in increments of 10"; + } + 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 four8byte-cfm-maid-enable { + presence "Indicates a four8byte-cfm-maid-enable node is configured."; + description + "Enable 48byte cfm maid feature"; + } + } + 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 + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + leaf pause-threshold { + type uint32 { + range "1..4294967295" { + description + "pause-threshold (bytes)"; + } + } + mandatory true; + description + "configure pause-threshold"; + } + leaf resume-threshold { + type uint32 { + range "1..4294967295" { + description + "resume-threshold (bytes)"; + } + } + mandatory true; + description + "configure resume-threshold"; + } + leaf headroom { + type uint32 { + range "1..4294967295" { + description + "headroom (bytes)"; + } + } + mandatory true; + description + "configure headroom"; + } + } + } + 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 + "Traffic-class"; + } + } + description + "configure traffic-class"; + } + leaf pause-threshold { + type uint32 { + range "1..4294967295" { + description + "pause-threshold (bytes)"; + } + } + mandatory true; + description + "configure pause-threshold"; + } + leaf resume-threshold { + type uint32 { + range "1..4294967295" { + description + "resume-threshold (bytes)"; + } + } + mandatory true; + description + "configure resume-threshold"; + } + leaf headroom { + type uint32 { + range "1..4294967295" { + description + "headroom (bytes)"; + } + } + mandatory true; + description + "configure headroom"; + } + } + } + } + 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 span-filter { + description + "Configure span filter profile for DNS, HTTP, HTTPS and TLS packet mirror filtering"; + container l2-rx-enable { + presence "Indicates a l2-rx-enable node is configured."; + description + "enable the l2 traffic rx span filtering profile"; + } + container l2-l3-tx-enable { + presence "Indicates a l2-l3-tx-enable node is configured."; + description + "enable the l2 l3 traffic tx span filtering profile"; + } + } + } + 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 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 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 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 internet-optimized { + must "not(../host-optimized-disable)"; + presence "Indicates a internet-optimized node is configured."; + description + "Configure Internet optimized (DEPRECATED)"; + } + } + } + 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"; + } + leaf custom-lem { + type uint32 { + range "40..64" { + description + "IPv6 prefix length."; + } + } + description + "Customise the prefix distribution to LEM"; + } + } + } + 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 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 tcam-optimized { + presence "Indicates a tcam-optimized node is configured."; + description + "Configure push label in tcam optimization"; + } + } + } + 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 oversubscription { + description + "Configure oversubscription"; + container prioritize { + description + "Setting prioritization of CoS values"; + list interface { + must "cos/cos-value or untagged"; + key "interface-name"; + description + "Oversubscription Interface"; + 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 + "configure CoS number 0-5"; + } + } + description + "CoS values between 0-5"; + } + } + } + container untagged { + presence "Indicates a untagged node is configured."; + description + "Prioritize untagged packets"; + } + } + } + } + container vrrpscale { + description + "to scale VRRP sessions"; + container enable { + presence "Indicates a enable node is configured."; + description + "enable VRRP scaling"; + } + } + 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 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 irb { + description + "Configure IRB Forwarding model"; + container l2-l3 { + description + "IRB L2-L3 options"; + container one-pass { + must "not(../two-pass)"; + presence "Indicates a one-pass node is configured."; + description + "Move IRB processing to 1 pass on ingress"; + } + container two-pass { + must "not(../one-pass)"; + presence "Indicates a two-pass node is configured."; + description + "Move IRB processing to 2 pass on ingress"; + } + } + container l3-l2 { + description + "IRB L3-L2 options"; + container two-pass { + presence "Indicates a two-pass node is configured."; + description + "Move IRB processing to 2 pass on egress"; + } + } + } + container gue { + description + "GUE Version 1 Port Configuration"; + container udp { + description + "UDP Decap"; + container dest-port-ipv4s { + description + "Configure unreserved udp port number for Ipv4 payload"; + list dest-port-ipv4 { + key "dest-port-ipv4-number dest-port-ipv6-number"; + description + "Configure unreserved udp port number for Ipv4 payload"; + leaf dest-port-ipv4-number { + type uint32 { + range "0..64000" { + description + "value in decimal"; + } + } + description + "Configure unreserved udp port number for Ipv4 payload"; + } + leaf dest-port-ipv6-number { + type uint32 { + range "0..64000" { + description + "value in decimal"; + } + } + description + "Configure unreserved udp port number for Ipv6 payload"; + } + leaf dest-port-mpls { + type uint32 { + range "0..64000" { + description + "value in decimal"; + } + } + mandatory true; + description + "Configure unreserved udp port number for Mpls payload"; + } + } + } + } + } + container multicast { + description + "Configure multicast properties"; + container access-pw-enable { + presence "Indicates a access-pw-enable node is configured."; + description + "Enable Multicast Access PW [L3L2 IRB 2Pass Processing]"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg.yang new file mode 100644 index 000000000..f503ac3f1 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg.yang @@ -0,0 +1,787 @@ +module Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ncs1001-hw-module-slot-cfg"; + prefix um-ncs1001-hw-module-slot-cfg; + + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 ncs1001-hw-module-slot package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-04-01 + Added mandatory keyword under leaf channel-width"; + semver:module-version "2.0.0"; + } + revision 2020-12-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container location { + description + "Fully qualified location specification"; + container slot { + description + "Slot Id"; + container give-the-slot-number-in-ranges { + description + "Give the Slot Number in Range <1-3>"; + list give-the-slot-number-in-range { + key "give-the-slot-number-in-range-id"; + description + "Give the Slot Number in Range <1-3>"; + leaf give-the-slot-number-in-range-id { + type uint32 { + range "1..3" { + description + "Give the Slot Number in Range <1-3>"; + } + } + description + "Give the Slot Number in Range <1-3>"; + } + container ampli { + description + "ampli commands"; + leaf node-type { + type enumeration { + enum "TERM" { + value 0; + description + ""; + } + enum "ILA" { + value 1; + description + ""; + } + } + description + "Define the type of node in which the amplifier is set to work"; + } + leaf grid-mode { + type enumeration { + enum "100GHz" { + value 0; + description + "configure the amplifier with a 100GHz grid of channels"; + } + enum "50GHz" { + value 1; + description + "configure the amplifier with a 50GHz grid of channels"; + } + enum "gridless" { + value 2; + description + ""; + } + enum "75GHz" { + value 3; + description + "configure the amplifier with a 75GHz grid of channels"; + } + } + description + "Define the working mode for the optical module"; + } + leaf udc-vlan { + type uint32 { + range "2..4080" { + description + "Define the VLAN ID in range <2-4080>"; + } + } + description + "Define the VLAN associated to selected slot and its UDC port"; + } + container span-loss { + presence "Indicates a span-loss node is configured."; + description + "Enable Span Loss"; + leaf span-loss-delta { + type uint32 { + range "0..500" { + description + "Span Loss change delta value"; + } + } + description + "Span Loss change delta value"; + } + } + container flex-mode { + presence "Indicates a flex-mode node is configured."; + description + "Enable Flex Mode"; + container flex-spectrum { + presence "Indicates a flex-spectrum node is configured."; + description + "Enable Gridless Flex Spectrum Mode"; + } + } + container remote-node { + description + "Remote node connected to this slot"; + leaf local-ipv4 { + type inet:ipv4-address-no-zone; + must "../remote-ipv4"; + description + "Specify local host"; + } + leaf remote-ipv4 { + type inet:ipv4-address-no-zone; + must "../local-ipv4 and ../remote-slot-id"; + description + "Specify remote host"; + } + leaf remote-slot-id { + type uint32 { + range "1..3" { + description + "Give the Slot Number in Range <1-3>"; + } + } + must "../remote-ipv4"; + description + "Specify remote slot"; + } + } + container auto-threshold { + presence "Indicates a auto-threshold node is configured."; + description + "Enable amplifier automatic rx-low threshold set"; + } + container otdr-autoscan { + description + "Enable OTDR auto-scan on OTDR module connected to this amplifier"; + leaf otdr-module-ipv4-addr { + type inet:ipv4-address-no-zone; + must "../otdr-slot-id"; + description + "Specify OTDR module host address"; + } + leaf otdr-slot-id { + type uint32 { + range "1..3" { + description + "Specify OTDR slot number in range <1-3>"; + } + } + must "../otdr-module-ipv4-addr and ../otdr-port-id"; + description + "Specify OTDR slot number"; + } + leaf otdr-port-id { + type uint32 { + range "1..2" { + description + "Specify OTDR port number in range <1-2>"; + } + } + must "../otdr-slot-id and ../ampli-far-end-ipv4-addr"; + description + "Specify OTDR port number"; + } + leaf ampli-far-end-ipv4-addr { + type inet:ipv4-address-no-zone; + must "../otdr-port-id and ../ampli-far-end-slot-id"; + description + "Specify amplifier far-end host address"; + } + leaf ampli-far-end-slot-id { + type uint32 { + range "1..3" { + description + "Specify amplifier far-end slot number in Range <1-3>"; + } + } + must "../ampli-far-end-ipv4-addr and ../scan-type"; + description + "Specify amplifier far-end slot number"; + } + leaf scan-type { + type enumeration { + enum "AUTO" { + value 0; + description + "OTDR scan type Automatic"; + } + } + must "../ampli-far-end-slot-id"; + description + "Specify OTDR scan type"; + } + } + container channel-ids { + description + "Channel Id"; + list channel-id { + key "channel-id"; + description + "Channel Id"; + leaf channel-id { + type uint32 { + range "1..96" { + description + "Give the Channel ID in Range <1-96>"; + } + } + description + "Channel Id"; + } + leaf channel-width { + type uint32 { + range "1000..8000" { + description + "values in step of 250"; + } + } + mandatory true; + description + "Set Channel Width (in units of 0.1Ghz)"; + } + } + } + container flex-channel-ids { + description + "Flex Channel Id"; + list flex-channel-id { + key "flex-channel-id chan-central-freq-id"; + description + "Flex Channel Id"; + leaf flex-channel-id { + type uint32 { + range "1..96" { + description + "Specify Flex Channel ID in Range <1-96>"; + } + } + description + "Flex Channel Id"; + } + leaf chan-central-freq-id { + type uint32 { + range "1913500..1961000" { + description + "values in steps of 125"; + } + } + description + "Set Channel Central Frequency (in units of 0.1Ghz)"; + } + leaf chan-width { + type uint32 { + range "500..8000" { + description + "values in step of 125"; + } + } + description + "Set Channel Width (in units of 0.1Ghz)"; + } + } + } + } + container psm { + description + "psm commands"; + leaf primary-path { + type enumeration { + enum "WORKING" { + value 1; + description + ""; + } + enum "PROTECTED" { + value 2; + description + ""; + } + } + description + "Select Psm primary path"; + } + leaf lockout-from { + type enumeration { + enum "WORKING" { + value 1; + description + ""; + } + enum "PROTECTED" { + value 2; + description + ""; + } + } + description + "Exclude selected port from protection"; + } + container path-protection { + presence "Indicates a path-protection node is configured."; + description + "Enable PSM path protection"; + } + container uni-dir { + presence "Indicates a uni-dir node is configured."; + description + "Enable PSM uni directional (use switch only)"; + } + container section-protection { + presence "Indicates a section-protection node is configured."; + description + "Enable PSM section protection"; + } + container revertive { + presence "Indicates a revertive node is configured."; + description + "Enable revertive mode"; + leaf wtr { + type uint32 { + range "0..4294967295" { + description + "wait time to restore in seconds"; + } + } + description + "wait time to restore"; + } + } + container auto-threshold { + presence "Indicates a auto-threshold node is configured."; + description + "Enable PSM auto threshold setting"; + leaf auto-threshold-offset { + type uint32 { + range "0..800" { + description + "PSM auto threshold offset value"; + } + } + description + "PSM auto threshold offset value"; + } + } + leaf relative-switch-threshold { + type uint32 { + range "0..800" { + description + "Set Psm Relative Switch Threshold (in units of 0.1 dB)"; + } + } + must "../relative-switch-threshold-offset"; + description + "Set Psm Relative Threshold"; + } + leaf relative-switch-threshold-offset { + type int32 { + range "-300..300" { + description + "Set Psm Relative Switch Threshold Offset (in units of 0.1 dB)"; + } + } + must "../relative-switch-threshold"; + description + "Set Psm Relative Threshold Offset"; + } + } + container otdr { + description + "otdr commands"; + container port-directions { + description + "otdr port direction"; + list port-direction { + key "port-id direction-id"; + description + "otdr port direction"; + leaf port-id { + type uint32 { + range "1..2" { + description + "Select port to configure <1-2>"; + } + } + description + "otdr port"; + } + leaf direction-id { + type enumeration { + enum "tx" { + value 0; + description + "Tx direction"; + } + enum "rx" { + value 1; + description + "Rx direction"; + } + } + description + "otdr direction"; + } + leaf total-loss { + type int32 { + range "0..500" { + description + "total loss (in units of 0.1dB)"; + } + } + description + "total loss decimal value in dB "; + } + leaf ml-enabled { + type uint32 { + range "0..1" { + description + "disable 0 - enable 1"; + } + } + description + "machine learning event detection "; + } + leaf refractive-index { + type int32 { + range "1000000..2000000" { + description + "refractive index"; + } + } + description + "refractive index"; + } + leaf back-scattering { + type int32 { + range "-1000..0" { + description + "back scattering (in units of 0.1dB)"; + } + } + description + "back scattering"; + } + container mode-auto { + description + "mode-auto attributes"; + leaf loss-sensitivity { + type int32 { + range "4..50" { + description + "loss sensitivity (in units of 0.1dB)"; + } + } + description + "loss sensitivity decimal value in dB"; + } + leaf reflection-sensitivity { + type int32 { + range "-400..-140" { + description + "reflection sensitivity (in units of 0.1dB)"; + } + } + description + "reflection sensitivity decimal value in dB"; + } + leaf loss-relative-threshold { + type int32 { + range "1..300" { + description + "loss threshold (in units of 0.1dB)"; + } + } + description + "relative threshold for loss events"; + } + leaf reflection-relative-threshold { + type int32 { + range "1..300" { + description + "reflection threshold (in units of 0.1dB)"; + } + } + description + "relative threshold for reflection events"; + } + } + container mode-expert { + description + "mode-expert attributes"; + leaf loss-sensitivity { + type int32 { + range "4..50" { + description + "loss sensitivity (in units of 0.1dB)"; + } + } + description + "loss sensitivity decimal value in dB"; + } + leaf reflection-sensitivity { + type int32 { + range "-400..-140" { + description + "reflection sensitivity (in units of 0.1dB)"; + } + } + description + "reflection sensitivity decimal value in dB"; + } + leaf measure-time { + type uint32 { + range "1..360" { + description + "measure time in seconds"; + } + } + description + "measure time in seconds"; + } + leaf capture-length { + type uint32 { + range "1..150" { + description + "capture length in km"; + } + } + description + "capture length in km"; + } + leaf capture-offset { + type uint32 { + range "0..150" { + description + "capture offset in km"; + } + } + description + "capture offset in km"; + } + leaf span-length { + type uint32 { + range "1..150" { + description + "span length in km"; + } + } + description + "span length in km"; + } + leaf fiber-resolution { + type uint32 { + range "0..100" { + description + "fiber resolution in meters"; + } + } + description + "fiber resolution in meters"; + } + leaf pulse-width { + type uint32 { + range "8..100000" { + description + "pulse width in nanoseconds"; + } + } + description + "pulse width in nanoseconds"; + } + leaf loss-relative-threshold { + type int32 { + range "1..300" { + description + "loss threshold (in units of 0.1dB)"; + } + } + description + "relative threshold for loss events"; + } + leaf reflection-relative-threshold { + type int32 { + range "1..300" { + description + "reflection threshold (in units of 0.1dB)"; + } + } + description + "relative threshold for reflection events"; + } + } + container periodic-scan { + description + "periodic-scan attributes"; + leaf minutes { + type uint32 { + range "30..600000" { + description + "Minutes <30-600000>"; + } + } + description + "periodic scan minutes"; + } + } + } + } + container ports { + description + "otdr port"; + list port { + key "port-id"; + description + "otdr port"; + leaf port-id { + type uint32 { + range "1..2" { + description + "Select port to configure <1-2>"; + } + } + description + "otdr port"; + } + container otdr-autoscan { + description + "Enable OTDR auto-scan for this port"; + leaf otdr-module-ipv4-addr { + type inet:ipv4-address-no-zone; + must "../ampli-far-end-ipv4-addr"; + description + "Specify OTDR module host address"; + } + leaf ampli-far-end-ipv4-addr { + type inet:ipv4-address-no-zone; + must "../otdr-module-ipv4-addr and ../ampli-far-end-slot-id"; + description + "Specify OTDR far-end host address"; + } + leaf ampli-far-end-slot-id { + type uint32 { + range "1..3" { + description + "Specify OTDR far-end slot number in Range <1-3>"; + } + } + must "../ampli-far-end-ipv4-addr and ../scan-type"; + description + "Specify OTDR far-end slot number"; + } + leaf scan-type { + type enumeration { + enum "AUTO" { + value 0; + description + "OTDR scan type Automatic"; + } + } + must "../ampli-far-end-slot-id"; + description + "Specify OTDR scan type"; + } + } + } + } + container ports-abs-threshold { + description + "otdr port abs-threshold"; + list port-abs-threshold { + key "port-id"; + description + "otdr port"; + leaf port-id { + type uint32 { + range "1..2" { + description + "Select port to configure <1-2>"; + } + } + description + "otdr port"; + } + leaf reflection-abs-threshold { + type int32 { + range "-500..0" { + description + "reflection threshold (in units of 0.1dB)"; + } + } + description + "absolute threshold for reflection events"; + } + leaf loss-abs-threshold { + type int32 { + range "1..300" { + description + "loss threshold (in units of 0.1dB)"; + } + } + description + "absolute threshold for loss events"; + } + leaf orl-abs-threshold { + type int32 { + range "140..400" { + description + "orl threshold (in units of 0.1dB)"; + } + } + description + "absolute threshold for orl events"; + } + } + } + } + } + } + } + } + } + + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + augment "/location:locations/location:preconfigured-location" { + description + "This augment extends preconfigured nodes + configuration"; + uses LOCATION-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1k-driver-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1k-driver-cfg.yang new file mode 100644 index 000000000..f7c8d070c --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs1k-driver-cfg.yang @@ -0,0 +1,711 @@ +module Cisco-IOS-XR-um-ncs1k-driver-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ncs1k-driver-cfg"; + prefix um-ncs1k-driver-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import Cisco-IOS-XR-um-location-cfg { + prefix location; + } + 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 ncs1k-driver package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.0.0"; + } + revision 2022-06-01 { + description + "Adjusted controller augmentation hierarchy"; + } + revision 2021-06-29 { + description + "Initial release"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + leaf holdoff-time-client-fault { + type uint32 { + range "10..20000" { + description + "Time in ms"; + } + } + description + "Holdoff time configuration for client"; + } + } + + grouping LOCATION-BODY { + description + "Grouping for location"; + container location { + description + "Fully qualified location specification"; + container slice { + description + "Target slice"; + container all { + description + "Configure all slice"; + container client { + description + "client side parameters"; + leaf bitrate { + type enumeration { + enum "10G" { + value 1; + description + "client bitrate 10G"; + } + enum "40G" { + value 2; + description + "client bitrate 40G"; + } + enum "100G" { + value 3; + description + "client bitrate 100G"; + } + enum "10G-100G" { + value 4; + description + "client bitrate mixed mode 8x10G and 3x100G"; + } + } + description + "bit rate "; + } + container trunk { + description + "trunk side parameters"; + leaf trunk-bitrate { + type enumeration { + enum "100G" { + value 2; + description + "trunk bitrate 100G"; + } + enum "200G" { + value 3; + description + "trunk bitrate 200G"; + } + enum "250G" { + value 4; + description + "trunk bitrate 250G"; + } + } + description + "bit rate "; + } + leaf fec { + type enumeration { + enum "SoftDecision7" { + value 1; + description + "Forward Error Correction SoftDecision7"; + } + enum "SoftDecision20" { + value 2; + description + "Forward Error Correction SoftDecision20"; + } + } + description + "Forward Error Correction mode"; + } + container encrypted { + presence "Indicates a encrypted node is configured."; + description + "Enable MACSec mode of operation"; + } + } + } + container drop-lldp { + presence "Indicates a drop-lldp node is configured."; + description + "Drop LLDP packets coming on client ports on this slice"; + } + container client-port-ains-soak { + description + "Client ports AINS configuration"; + leaf hours { + type uint32 { + range "0..48" { + description + "Default AINS soak interval hours value"; + } + } + must "../minutes"; + description + "Default AINS soak interval hours value"; + } + leaf minutes { + type uint32 { + range "0..59" { + description + "Default AINS soak interval minutes value"; + } + } + must "../hours"; + description + "Default AINS soak interval minutes value"; + } + } + } + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + augment "/location:locations/location:location" { + description + "This augment extends active nodes configuration"; + uses LOCATION-BODY; + } + container patch-panel { + presence "Indicates a patch-panel node is configured."; + description + "patch panel device"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IP Address"; + } + leaf username { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Enter user name"; + } + } + description + "User Name"; + } + container password { + description + "Password for the username"; + leaf seven { + type xr:Proprietary-password; + description + "Specifies that an encrypted password will follow"; + } + } + } + container terminal-device { + description + "Terminal Device"; + container logical-channel { + description + "Logical Channel"; + container logical-channel-numbers { + description + "Logical channel number (1-100000)"; + list logical-channel-number { + key "logical-channel-number-id"; + description + "Logical channel number (1-100000)"; + leaf logical-channel-number-id { + type uint32 { + range "1..100000" { + description + "Logical channel number (1-100000)"; + } + } + description + "Logical channel number (1-100000)"; + } + container assignment-ids { + description + "Logical channel assignment id for logical channel"; + list assignment-id { + key "assignment-id"; + description + "Logical channel assignment id for logical channel"; + leaf assignment-id { + type uint32 { + range "1..100000" { + description + "Assignment number (1 to 100000)"; + } + } + description + "Logical channel assignment id for logical channel"; + } + leaf assigned-logical-channel { + type uint32 { + range "1..100000" { + description + "Logical channel number (1-100000)"; + } + } + description + "Logical channel assigned to this assigment id"; + } + leaf assigned-optical-channel { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Optical channel name"; + } + } + description + "Optical channel assigned to this assigment id"; + } + leaf assignment-type { + type enumeration { + enum "logical" { + value 1; + description + "assignment type logical"; + } + enum "optical" { + value 2; + description + "assignment type optical"; + } + } + description + "Assignment type (logical or optical)"; + } + leaf allocation { + type uint32 { + range "0..4294967295" { + description + "Allocation (10, 40 or 100G)"; + } + } + description + "Allocation"; + } + leaf description { + type string { + length "1..800" { + description + "Description"; + } + } + description + "Description"; + } + } + } + leaf description { + type string { + length "1..800" { + description + "Description"; + } + } + description + "Description"; + } + leaf admin-state { + type enumeration { + enum "enable" { + value 1; + description + "enable"; + } + enum "disable" { + value 2; + description + "shutdown"; + } + enum "maintenance" { + value 3; + description + "Maintenance"; + } + } + description + "Administrative state"; + } + leaf loopback-mode { + type enumeration { + enum "none" { + value 0; + description + "none"; + } + enum "facility" { + value 1; + description + "facility"; + } + enum "terminal" { + value 2; + description + "terminal"; + } + } + description + "Loopback mode"; + } + leaf rate-class { + type enumeration { + enum "1G" { + value 1; + description + "1G tributary signal rate"; + } + enum "1.5G" { + value 2; + description + "2.5G tributary signal rate"; + } + enum "10G" { + value 3; + description + "10G tributary signal rate"; + } + enum "40G" { + value 4; + description + "40G tributary signal rate"; + } + enum "100G" { + value 5; + description + "100G tributary signal rate"; + } + } + description + "Rate Class"; + } + leaf trib-protocol { + type enumeration { + enum "1GE" { + value 1; + description + "1G Ethernet protocol"; + } + enum "OC48" { + value 2; + description + "OC48 protocol"; + } + enum "STM16" { + value 3; + description + "STM 16 protocol"; + } + enum "10GE-LAN" { + value 4; + description + "10G Ethernet LAN protocol"; + } + enum "10GE-WAN" { + value 5; + description + "10G Ethernet WAN protocol"; + } + enum "OC192" { + value 6; + description + "OC 192 (9.6GB) port protocol"; + } + enum "STM64" { + value 7; + description + "STM 64 protocol"; + } + enum "OTU2" { + value 8; + description + "OTU 2 protocol"; + } + enum "OTU2e" { + value 9; + description + "OTU 2e protocol"; + } + enum "OTU1e" { + value 10; + description + "OTU 1e protocol"; + } + enum "ODU2" { + value 11; + description + "ODU 2 protocol"; + } + enum "ODU2e" { + value 12; + description + "ODU 2e protocol"; + } + enum "40GE" { + value 13; + description + "40G Ethernet port protocol"; + } + enum "OC768" { + value 14; + description + "OC 768 protocol"; + } + enum "STM256" { + value 15; + description + "STM 256 protocol"; + } + enum "OTU3" { + value 16; + description + "OTU 3 protocol"; + } + enum "ODU3" { + value 17; + description + "ODU 3 protocol"; + } + enum "100GE" { + value 18; + description + "100G Ethernet protocol"; + } + enum "100G-MLG" { + value 19; + description + "100G MLG protocol"; + } + enum "OTU4" { + value 20; + description + "OTU4 signal protocol (112G) for transporting 100GE signal"; + } + enum "OTUCn" { + value 21; + description + "OTU Cn protocol"; + } + enum "ODU4" { + value 22; + description + "ODU 4 protocol"; + } + } + description + "Optical channel assigned to this assigment id"; + } + leaf logical-channel-type { + type enumeration { + enum "Ethernet" { + value 1; + description + "Ethernet protocol framing"; + } + enum "Otn" { + value 2; + description + "OTN protocol framing"; + } + } + description + "Assignment type (logical or optical)"; + } + leaf otn-tti-msg-transmit { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "tti message transmit"; + } + } + description + "tti message transmit"; + } + leaf otn-tti-msg-expected { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "tti message expected"; + } + } + description + "tti message expected"; + } + leaf otn-tti-msg-auto { + type enumeration { + enum "0" { + value 0; + description + "false"; + } + enum "1" { + value 1; + description + "true"; + } + } + description + "tti message auto"; + } + leaf ethernet-client-als { + type enumeration { + enum "ethernet" { + value 1; + description + "ethernet"; + } + enum "laser-shutdown" { + value 2; + description + "laser_shutdown"; + } + } + description + "Configure the client-als"; + } + leaf ethernet-als-delay { + type uint32 { + range "10..3000" { + description + "als-delay in ms"; + } + } + description + "Configure the als-delay"; + } + leaf ingress-client-port { + type xr:Interface-name { + pattern "Optics.*"; + } + description + "Ingress client port of the logical channel"; + } + leaf ingress-physical-channel { + type uint32 { + range "1..4" { + description + "Physical channel id"; + } + } + description + "Physical channel id for logical channel"; + } + } + } + } + container optical-channel { + description + "Optical Channel"; + container optical-channels { + description + "Optical Channel name"; + list optical-channel { + key "optical-channel-name"; + description + "Optical Channel name"; + leaf optical-channel-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Optical Channel name"; + } + } + description + "Optical Channel name"; + } + leaf line-port { + type xr:Interface-name { + pattern "Optics.*"; + } + description + "Line-Port"; + } + leaf operational-mode { + type uint32 { + range "1..100000" { + description + "Enter operational mode"; + } + } + description + "Operational Mode"; + } + } + } + } + container transceiver { + description + "Transceiver"; + container transceivers { + description + "Transceiver name"; + list transceiver { + key "transceiver-name"; + description + "Transceiver name"; + leaf transceiver-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Transceiver name"; + } + } + description + "Transceiver name"; + } + leaf ethernet-fec-mode { + type enumeration { + enum "fec-enabled" { + value 1; + description + "fec_enabled"; + } + } + description + "Configure the fec-mode"; + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs560-cont-portmode-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs560-cont-portmode-cfg.yang new file mode 100644 index 000000000..6baf10145 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs560-cont-portmode-cfg.yang @@ -0,0 +1,162 @@ +module Cisco-IOS-XR-um-ncs560-cont-portmode-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ncs560-cont-portmode-cfg"; + prefix um-ncs560-cont-portmode-cfg; + + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + import tailf-common { + prefix tailf; + } + 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 ncs560-cont-portmode package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-12-07 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature optics { + description + "optics"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container port-mode { + when "../a1:controller-name[starts-with(text(),'Optics')]" { + tailf:dependency "../a1:controller-name"; + } + if-feature "optics"; + description + "Configure through port-mode"; + leaf speed { + type enumeration { + enum "100G" { + value 100000000; + description + "Speed 100"; + } + enum "200G" { + value 200000000; + description + "Speed 200"; + } + } + must "../mod"; + description + "optics speed"; + } + leaf mod { + type enumeration { + enum "qpsk" { + value 1; + description + "select qpsk for modulation"; + } + enum "8qam" { + value 2; + description + "select 8qam for modulation"; + } + enum "16qam" { + value 3; + description + "select 16qam for modulation"; + } + } + must "../speed and ../fec"; + description + "modulation value"; + } + leaf fec { + type enumeration { + enum "15sdfec" { + value 0; + description + "15%-SD Forward Error Correction"; + } + enum "25sdfec" { + value 1; + description + "25%-SD Forward Error Correction"; + } + enum "15sdfecde" { + value 2; + description + "15%-SD Forward Error Correction with Diff"; + } + enum "otu7staircase" { + value 3; + description + "7%-STAIRCASE Forward Error Correction"; + } + } + must "../mod and ../diff"; + description + "optics fec"; + } + leaf diff { + type enumeration { + enum "disable" { + value 0; + description + "disable differential"; + } + enum "enable" { + value 1; + description + "enable differential"; + } + } + must "../fec"; + description + "differential value"; + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs5k-hw-module-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs5k-hw-module-cfg.yang new file mode 100644 index 000000000..c19b61e87 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ncs5k-hw-module-cfg.yang @@ -0,0 +1,210 @@ +module Cisco-IOS-XR-um-ncs5k-hw-module-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ncs5k-hw-module-cfg"; + prefix um-ncs5k-hw-module-cfg; + + 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 ncs5k-hw-module package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-10-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container hw-module { + description + "Configure h/w module"; + container loadbalancing { + description + "HW Loadbalancing configuration"; + leaf hash-seed { + type uint32 { + range "0..4294967295" { + description + "any number from 0 to (2^32 - 1)"; + } + } + description + "Configure 32-bit seed for hashing"; + } + container hash-sub-sel { + description + "Configure hash sub-sel for ECMP"; + container a0 { + must + "not(../b0 or ../a1 + or ../b1 or ../b1a1b0a0)"; + presence "Indicates a a0 node is configured."; + description + "ECMP Hash Sub Selection A0"; + leaf hash-offset { + type uint32 { + range "0..63" { + description + "any decimal number from 0 to 127"; + } + } + description + "Configure hash offset"; + } + } + container b0 { + must + "not(../a0 or ../a1 + or ../b1 or ../b1a1b0a0)"; + presence "Indicates a b0 node is configured."; + description + "ECMP Hash Sub Selection A1"; + leaf hash-offset { + type uint32 { + range "0..63" { + description + "any decimal number from 0 to 127"; + } + } + description + "Configure hash offset"; + } + } + container a1 { + must + "not(../a0 or ../b0 + or ../b1 or ../b1a1b0a0)"; + presence "Indicates a a1 node is configured."; + description + "ECMP Hash Sub Selection B0"; + leaf hash-offset { + type uint32 { + range "0..63" { + description + "any decimal number from 0 to 127"; + } + } + description + "Configure hash offset"; + } + } + container b1 { + must + "not(../a0 or ../b0 + or ../a1 or ../b1a1b0a0)"; + presence "Indicates a b1 node is configured."; + description + "ECMP Hash Sub Selection B1"; + leaf hash-offset { + type uint32 { + range "0..63" { + description + "any decimal number from 0 to 127"; + } + } + description + "Configure hash offset"; + } + } + container b1a1b0a0 { + must + "not(../a0 or ../b0 + or ../a1 or ../b1)"; + presence "Indicates a b1a1b0a0 node is configured."; + description + "ECMP Concatenate Hash B1A1B0A0"; + leaf hash-offset { + type uint32 { + range "0..63" { + description + "any decimal number from 0 to 127"; + } + } + description + "Configure hash offset"; + } + } + } + container bgp-3107 { + description + "Enable ECMP for BGP 3107"; + container ecmp { + description + "ECMP Loadbalancing method"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable ECMP for BGP LU"; + } + } + } + container gtp { + description + "GTP optimized"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable GTP TEID for hash calculation"; + } + } + } + container urpf { + description + "Unicast reverse path forwarding"; + container enable { + must "not(../disable)"; + presence "Indicates a enable node is configured."; + description + "Enable urpf"; + } + container disable { + must "not(../enable)"; + presence "Indicates a disable node is configured."; + description + "Disable urpf"; + } + } + container segment-routing { + description + "Platform specific segment-routing configuration"; + container reserve { + description + "Reservation for SR"; + container service-label { + presence "Indicates a service-label node is configured."; + description + "Reserve service-label for SR"; + } + } + } + container sp { + presence "Indicates a sp node is configured."; + description + "Configure SP profile"; + } + container dc { + presence "Indicates a dc node is configured."; + description + "Configure DC profile"; + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-netconf-yang-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-netconf-yang-cfg.yang new file mode 100644 index 000000000..407e9c750 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-netconf-yang-cfg.yang @@ -0,0 +1,119 @@ +module Cisco-IOS-XR-um-netconf-yang-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-netconf-yang-cfg"; + prefix um-netconf-yang-cfg; + + 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 netconf-yang package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-11-22 { + description + "Added submod-enter at netconf-yang agent level"; + semver:module-version "2.1.0"; + } + revision 2020-03-06 { + description + "- Removed models/openconfig/disable as the config has been deprecated. + - Added a new container to enable with-defaults support."; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.1"; + } + revision 2019-03-30 { + description + "Initial version"; + } + + container netconf-yang { + description + "NETCONF YANG configuration commands"; + container agent { + presence "Indicates a agent node is configured."; + description + "Enable NETCONF agent or configure NETCONF agent subcommands"; + container ssh { + presence "Indicates a ssh node is configured."; + description + "Enable NETCONF-YANG agent over SSH connection"; + } + container with-defaults-support { + description + "with-defaults support enabled"; + container enable { + presence "Indicates a enable node is configured."; + description + "Enable with-defaults support"; + } + } + leaf rate-limit { + type uint32 { + range "4096..4294967295" { + description + "Number of bytes to process per sec"; + } + } + description + "Rate limit"; + } + container session { + description + "Session settings"; + leaf limit { + type uint32 { + range "1..50" { + description + "Count of allowable concurrent netconf-yang sessions (default = 50)"; + } + } + description + "Maximum count of concurrent sessions (default = 50)"; + } + leaf idle-timeout { + type uint32 { + range "1..1440" { + description + "Idle timeout in minutes"; + } + } + description + "Non-active session lifetime"; + } + leaf absolute-timeout { + type uint32 { + range "1..1440" { + description + "Absolute timeout in minutes"; + } + } + description + "Absolute session lifetime"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-nsr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-nsr-cfg.yang new file mode 100644 index 000000000..cc565b3c2 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-nsr-cfg.yang @@ -0,0 +1,50 @@ +module Cisco-IOS-XR-um-nsr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-nsr-cfg"; + prefix um-nsr-cfg; + + 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 nsr package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-03-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container nsr { + description + "Global NSR configuration commands"; + container process-failures { + description + "Recovery action for Process failures on active RP/DRP"; + container switchover { + presence "Indicates a switchover node is configured."; + description + "Switch over to standby RP/DRP to maintain NSR"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-ntp-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ntp-cfg.yang new file mode 100644 index 000000000..6d7356081 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-ntp-cfg.yang @@ -0,0 +1,1949 @@ +module Cisco-IOS-XR-um-ntp-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-ntp-cfg"; + prefix um-ntp-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-snmp-server-cfg { + prefix a1; + } + 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 ntp package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2023-02-01 { + description + "user configurable hostname resolution retry interval. + 2022-10-26 + Added panic-threshold-apply support + 2022-07-11 + Added missing description statement to nodes + 2022-01-10 + Added new cmac, hmac-sha1, hmac-sha2 support for authentication-key"; + semver:module-version "1.1.0"; + } + revision 2021-03-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + revision 2021-03-03 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature harddisk_is_present { + description + "harddisk is present"; + } + + feature harddiska_is_present { + description + "harddiska is present"; + } + + feature harddiskb_is_present { + description + "harddiskb is present"; + } + + feature a9ksys_is_present { + description + "a9ksys is present"; + } + + feature config_is_present { + description + "config is present"; + } + + feature log_is_present { + description + "log is present"; + } + + feature rootfs_is_present { + description + "rootfs is present"; + } + + feature disk1_is_present { + description + "disk1 is present"; + } + + feature usb_is_present { + description + "usb is present"; + } + + feature usb2_is_present { + description + "usb2 is present"; + } + + feature app_host_is_present { + description + "app host is present"; + } + + feature cflash_fs_supp_check { + description + "cflash fs supp check"; + } + + feature usb_fs_supp_check { + description + "usb fs supp check"; + } + + feature disk2_fs_supp_check { + description + "disk2 fs supp check"; + } + + feature harddisk_fs_supp_check { + description + "harddisk fs supp check"; + } + + feature lcdisk_fs_supp_check { + description + "lcdisk fs supp check"; + } + + augment "/a1:snmp-server/a1:traps" { + description + "This augment extends snmp-server traps nodes + configuration"; + container ntp { + presence "Indicates a ntp node is configured."; + description + "Enable SNMP Cisco Ntp traps"; + } + } + container ntp { + description + "Go into NTP submode"; + container ipv4 { + description + "Mark the dscp/precedence bit for ipv4 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + must "not(../precedence)"; + description + "Set IP DSCP (DiffServ CodePoint)"; + } + leaf precedence { + type enumeration { + enum "routine" { + value 0; + description + "Match packets with routine precedence (0)"; + } + enum "priority" { + value 1; + description + "Match packets with priority precedence (1)"; + } + enum "immediate" { + value 2; + description + "Match packets with immediate precedence (2)"; + } + enum "flash" { + value 3; + description + "Match packets with flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Match packets with flash override precedence (4)"; + } + enum "critical" { + value 5; + description + "Match packets with critical precedence (5)"; + } + enum "internet" { + value 6; + description + "Match packets with internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Match packets with network control precedence (7)"; + } + } + must "not(../dscp)"; + description + "Set precedence"; + } + } + container ipv6 { + description + "Mark the dscp/precedence bit for ipv6 packets"; + leaf dscp { + type union { + type uint32 { + range "0..63" { + description + "Differentiated services codepoint value"; + } + } + type enumeration { + enum "default" { + value 0; + description + "Match packets with default dscp (000000)"; + } + enum "cs1" { + value 8; + description + "Match packets with CS1(precedence 1) dscp (001000)"; + } + enum "af11" { + value 10; + description + "Match packets with AF11 dscp (001010)"; + } + enum "af12" { + value 12; + description + "Match packets with AF12 dscp (001100)"; + } + enum "af13" { + value 14; + description + "Match packets with AF13 dscp (001110)"; + } + enum "cs2" { + value 16; + description + "Match packets with CS2(precedence 2) dscp (010000)"; + } + enum "af21" { + value 18; + description + "Match packets with AF21 dscp (010010)"; + } + enum "af22" { + value 20; + description + "Match packets with AF22 dscp (010100)"; + } + enum "af23" { + value 22; + description + "Match packets with AF23 dscp (010110)"; + } + enum "cs3" { + value 24; + description + "Match packets with CS3(precedence 3) dscp (011000)"; + } + enum "af31" { + value 26; + description + "Match packets with AF31 dscp (011010)"; + } + enum "af32" { + value 28; + description + "Match packets with AF32 dscp (011100)"; + } + enum "af33" { + value 30; + description + "Match packets with AF33 dscp (011110)"; + } + enum "cs4" { + value 32; + description + "Match packets with CS4(precedence 4) dscp (100000)"; + } + enum "af41" { + value 34; + description + "Match packets with AF41 dscp (100010)"; + } + enum "af42" { + value 36; + description + "Match packets with AF42 dscp (100100)"; + } + enum "af43" { + value 38; + description + "Match packets with AF43 dscp (100110)"; + } + enum "cs5" { + value 40; + description + "Match packets with CS5(precedence 5) dscp (101000)"; + } + enum "ef" { + value 46; + description + "Match packets with EF dscp (101110)"; + } + enum "cs6" { + value 48; + description + "Match packets with CS6(precedence 6) dscp (110000)"; + } + enum "cs7" { + value 56; + description + "Match packets with CS7(precedence 7) dscp (111000)"; + } + } + } + must "not(../precedence)"; + description + "Set IP DSCP (DiffServ CodePoint)"; + } + leaf precedence { + type enumeration { + enum "routine" { + value 0; + description + "Match packets with routine precedence (0)"; + } + enum "priority" { + value 1; + description + "Match packets with priority precedence (1)"; + } + enum "immediate" { + value 2; + description + "Match packets with immediate precedence (2)"; + } + enum "flash" { + value 3; + description + "Match packets with flash precedence (3)"; + } + enum "flash-override" { + value 4; + description + "Match packets with flash override precedence (4)"; + } + enum "critical" { + value 5; + description + "Match packets with critical precedence (5)"; + } + enum "internet" { + value 6; + description + "Match packets with internetwork control precedence (6)"; + } + enum "network" { + value 7; + description + "Match packets with network control precedence (7)"; + } + } + must "not(../dscp)"; + description + "Set precedence"; + } + } + container access-group { + description + "Control NTP access"; + container ipv6 { + description + "Configure IPv6 access"; + leaf peer { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Provide full access"; + } + leaf query-only { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Allow only control queries"; + } + leaf serve { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Provide server and query access"; + } + leaf serve-only { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Provide only server access"; + } + } + container ipv4 { + description + "Configure IPv4 access"; + leaf peer { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Provide full access"; + } + leaf query-only { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Allow only control queries"; + } + leaf serve { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Provide server and query access"; + } + leaf serve-only { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access list name - maximum 64 characters"; + } + } + description + "Provide only server access"; + } + } + container vrfs { + description + "Specify non-default VRF"; + list vrf { + key "vrf-name"; + description + "Specify non-default VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Non-default VRF to configure"; + } + } + description + "Specify non-default VRF"; + } + container ipv6 { + description + "Configure IPv6 access"; + leaf peer { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Provide full access"; + } + leaf query-only { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Allow only control queries"; + } + leaf serve { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Provide server and query access"; + } + leaf serve-only { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Provide only server access"; + } + } + container ipv4 { + description + "Configure IPv4 access"; + leaf peer { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Provide full access"; + } + leaf query-only { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Allow only control queries"; + } + leaf serve { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Provide server and query access"; + } + leaf serve-only { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Access list name - maximum 32 characters"; + } + } + description + "Provide only server access"; + } + } + } + } + } + container authenticate { + presence "Indicates a authenticate node is configured."; + description + "Authenticate time sources"; + } + container authentication-keys { + description + "Authentication key for trusted time sources"; + list authentication-key { + key "key-number"; + description + "Authentication key for trusted time sources"; + leaf key-number { + type uint32 { + range "1..65535" { + description + "Key number"; + } + } + description + "Authentication key for trusted time sources"; + } + container md5 { + description + "MD5 authentication"; + leaf encrypted { + type xr:Proprietary-password; + mandatory true; + description + "Specify an encrypted key"; + } + } + } + } + container cmac-authentication-keys { + description + "CMAC Authentication key for trusted time sources"; + list cmac-authentication-key { + key "key-number"; + description + "CMAC Authentication key for trusted time sources"; + leaf key-number { + type uint32 { + range "1..65535" { + description + "Key number"; + } + } + description + "Authentication key for trusted time sources"; + } + container cmac { + description + "CMAC authentication"; + leaf encrypted { + type xr:Proprietary-password; + mandatory true; + description + "Specify an encrypted key"; + } + } + } + } + container hmac-sha1-authentication-keys { + description + "HMA-SHA1 Authentication key for trusted time sources"; + list hmac-sha1-authentication-key { + key "key-number"; + description + "HMA-SHA1 Authentication key for trusted time sources"; + leaf key-number { + type uint32 { + range "1..65535" { + description + "Key number"; + } + } + description + "Authentication key for trusted time sources"; + } + container hmac-sha1 { + description + "HMAC-SHA1 authentication"; + leaf encrypted { + type xr:Proprietary-password; + mandatory true; + description + "Specify an encrypted key"; + } + } + } + } + container hmac-sha2-authentication-keys { + description + "HMA-SHA2 Authentication key for trusted time sources"; + list hmac-sha2-authentication-key { + key "key-number"; + description + "HMA-SHA2 Authentication key for trusted time sources"; + leaf key-number { + type uint32 { + range "1..65535" { + description + "Key number"; + } + } + description + "Authentication key for trusted time sources"; + } + container hmac-sha2 { + description + "HMAC-SHA2 authentication"; + leaf encrypted { + type xr:Proprietary-password; + mandatory true; + description + "Specify an encrypted key"; + } + } + } + } + leaf broadcastdelay { + type uint32 { + range "1..999999" { + description + "Round-trip delay in microseconds"; + } + } + description + "Estimated round-trip delay"; + } + container drift { + description + "Drift"; + container aging { + description + "Aging"; + leaf time { + type uint32 { + range "0..65535" { + description + "Aging time in hours"; + } + } + description + "Aging time"; + } + } + container file { + presence "Indicates a file node is configured."; + description + "File for drift values"; + container bootflash { + must + "not(../compactflash or ../compactflasha or ../usb or ../disk0 + or ../disk0a or ../disk1 or ../disk1a or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a bootflash node is configured."; + description + "drift in bootflash: file system"; + } + container compactflash { + if-feature "cflash_fs_supp_check"; + must + "not(../bootflash or ../compactflasha or ../usb or ../disk0 + or ../disk0a or ../disk1 or ../disk1a or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a compactflash node is configured."; + description + "drift in compactflash: file system"; + } + container compactflasha { + if-feature "cflash_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../usb or ../disk0 + or ../disk0a or ../disk1 or ../disk1a or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a compactflasha node is configured."; + description + "drift in compactflasha: file system"; + } + container usb { + if-feature "usb_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../compactflasha or ../disk0 + or ../disk0a or ../disk1 or ../disk1a or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a usb node is configured."; + description + "drift in usb: file system"; + } + container disk0 { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0a or ../disk1 or ../disk1a or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a disk0 node is configured."; + description + "drift in disk0: file system"; + } + container disk0a { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk1 or ../disk1a or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a disk0a node is configured."; + description + "drift in disk0a: file system"; + } + container disk1 { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1a or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a disk1 node is configured."; + description + "drift in disk1: file system"; + } + container disk1a { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk2 or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a disk1a node is configured."; + description + "drift in disk1a: file system"; + } + container disk2 { + if-feature "disk2_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../harddisk + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a disk2 node is configured."; + description + "drift in disk2: file system"; + } + container harddisk { + if-feature "harddisk_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddiska or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a harddisk node is configured."; + description + "drift in harddisk: file system"; + } + container harddiska { + if-feature "harddisk_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiskb or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a harddiska node is configured."; + description + "drift in harddiska: file system"; + } + container harddiskb { + if-feature "harddisk_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiska or ../nvram or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a hardiskb node is configured."; + description + "drift in harddiskb: file system"; + } + container nvram { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiska or ../harddiskb or ../lcdisk0 + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a nvram node is configured."; + description + "drift in nvram: file system"; + } + container lcdisk0 { + if-feature "lcdisk_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiska or ../harddiskb or ../nvram + or ../lcdisk0a or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a lcdisk0 node is configured."; + description + "drift in lcdisk0: file system"; + } + container lcdisk0a { + if-feature "lcdisk_fs_supp_check"; + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiska or ../harddiskb or ../nvram + or ../lcdisk0 or ../tftp or ../ftp or ../rcp)"; + presence "Indicates a lcdisk0a node is configured."; + description + "drift in lcdisk0a: file system"; + } + container tftp { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiska or ../harddiskb or ../nvram + or ../lcdisk0 or ../lcdisk0a or ../ftp or ../rcp)"; + presence "Indicates a tftp node is configured."; + description + "drift in tftp: file system"; + } + container ftp { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiska or ../harddiskb or ../nvram + or ../lcdisk0 or ../lcdisk0a or ../tftp or ../rcp)"; + presence "Indicates a ftp node is configured."; + description + "drift in ftp: file system"; + } + container rcp { + must + "not(../bootflash or ../compactflash or ../compactflasha or ../usb + or ../disk0 or ../disk0a or ../disk1 or ../disk1a or ../disk2 + or ../harddisk or ../harddiska or ../harddiskb or ../nvram + or ../lcdisk0 or ../lcdisk0a or ../tftp or ../ftp)"; + presence "Indicates a rcp node is configured."; + description + "drift in rcp: file system"; + } + leaf file-name { + type string { + length "1..800" { + description + "drift in file"; + } + } + mandatory true; + description + "drift in file"; + } + } + } + container interfaces { + description + "Configure NTP on an interface"; + list interface { + key "interface-name"; + description + "Configure NTP on an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Configure NTP on an interface"; + } + container broadcast-client { + presence "Indicates a client node is configured."; + description + "Listen to NTP broadcasts"; + } + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Configure NTP broadcast service"; + leaf destination { + type inet:ipv4-address-no-zone; + description + "Configure broadcast destination address"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Broadcast key number"; + } + } + description + "Configure broadcast authentication key"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable NTP"; + } + container multicast { + description + "Configure NTP multicast service"; + container client { + description + "Listen to NTP multicasts"; + container no-group { + presence "Indicates a no-group node is configured."; + description + "Listen to NTP multicasts"; + } + list ip-address { + key "address"; + description + "Addess of multicast group to join"; + leaf address { + type inet:ip-address-no-zone; + description + "Addess of multicast group to join"; + } + } + } + container no-destination { + presence "Indicates a no-destination node is configured."; + description + "Configure multicast without destination"; + leaf key { + type uint32 { + range "1..65535" { + description + "Multicast key number"; + } + } + description + "Configure multicast authentication key"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf ttl { + type uint32 { + range "1..255" { + description + "TTL value to use"; + } + } + description + "Configure TTL to use"; + } + } + container destinations { + description + "Configure multicast destination address"; + list destination { + key "address"; + description + "Configure multicast destination address"; + leaf address { + type inet:ip-address-no-zone; + description + "Configure multicast destination address"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Multicast key number"; + } + } + description + "Configure multicast authentication key"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf ttl { + type uint32 { + range "1..255" { + description + "TTL value to use"; + } + } + description + "Configure TTL to use"; + } + } + } + } + } + container vrfs { + description + "Specify non-default VRF"; + list vrf { + key "vrf-name"; + description + "Specify non-default VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Non-default VRF for the interface"; + } + } + description + "Specify non-default VRF"; + } + list interface { + key "interface-name"; + description + "Configure NTP on an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Configure NTP on an interface"; + } + container broadcast-client { + presence "Indicates a client node is configured."; + description + "Listen to NTP broadcasts"; + } + container broadcast { + presence "Indicates a broadcast node is configured."; + description + "Configure NTP broadcast service"; + leaf destination { + type inet:ipv4-address-no-zone; + description + "Configure broadcast destination address"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Broadcast key number"; + } + } + description + "Configure broadcast authentication key"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + } + container disable { + presence "Indicates a disable node is configured."; + description + "Disable NTP"; + } + container multicast { + description + "Configure NTP multicast service"; + container client { + description + "Listen to NTP multicasts"; + container no-group { + presence "Indicates a no-group node is configured."; + description + "Listen to NTP multicasts"; + } + list ip-address { + key "address"; + description + "Addess of multicast group to join"; + leaf address { + type inet:ip-address-no-zone; + description + "Addess of multicast group to join"; + } + } + } + container no-destination { + presence "Indicates a no-destination node is configured."; + description + "Configure multicast without destination"; + leaf key { + type uint32 { + range "1..65535" { + description + "Multicast key number"; + } + } + description + "Configure multicast authentication key"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf ttl { + type uint32 { + range "1..255" { + description + "TTL value to use"; + } + } + description + "Configure TTL to use"; + } + } + container destinations { + description + "Configure multicast destination address"; + list destination { + key "address"; + description + "Configure multicast destination address"; + leaf address { + type inet:ip-address-no-zone; + description + "Configure multicast destination address"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Multicast key number"; + } + } + description + "Configure multicast authentication key"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf ttl { + type uint32 { + range "1..255" { + description + "TTL value to use"; + } + } + description + "Configure TTL to use"; + } + } + } + } + } + } + } + } + container primary { + description + "Choose a refclock as primary clock for NTP"; + leaf stratum-number { + type uint32 { + range "1..15" { + description + "Use NTP as clock source with stratum number "; + } + } + must "not(../primary-reference-clock)"; + description + "Use NTP as clock source with stratum number "; + } + container primary-reference-clock { + must "not(../stratum-number)"; + presence "Indicates a primary-reference-clock node is configured."; + description + "Use a primary reference clock as clock source"; + } + } + leaf max-associations { + type uint32 { + range "0..4294967295" { + description + "Number of associations"; + } + } + description + "Set maximum number of associations"; + } + container peer-server { + description + "configure ntp peer or server"; + container ipv4 { + description + "Specify IPv4 address"; + list ipv4-peer-server { + key "address type"; + description + "Specify IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Peer/server address"; + } + leaf type { + type enumeration { + enum "peer" { + value 0; + description + "Configure peer address"; + } + enum "server" { + value 1; + description + "Configure server address"; + } + } + description + "Specify peer/server"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Peer key number"; + } + } + description + "Configure peer authentication key"; + } + leaf minpoll { + type uint32 { + range "4..5|7..17" { + description + "Minimum poll rate, default 6, less than maxpoll"; + } + } + description + "Configure minimum polling rate"; + } + leaf maxpoll { + type uint32 { + range "4..9|11..17" { + description + "Maximum poll rate, default 10, greater than minpoll"; + } + } + description + "Configure maximum polling rate"; + } + container prefer { + presence "Indicates a prefer node is configured."; + description + "Prefer this peer when possible"; + } + container burst { + presence "Indicates a burst node is configured."; + description + "Use burst mode"; + } + container iburst { + presence "Indicates a iburst node is configured."; + description + "Use initial burst mode"; + } + leaf source { + type xr:Interface-name; + description + "Interface for source address"; + } + } + } + container ipv6 { + description + "Specify IPv6 address"; + list ipv6-peer-server { + must "address = ipv6-address"; + key "address type"; + description + "Specify IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Peer/server address"; + } + leaf type { + type enumeration { + enum "peer" { + value 0; + description + "Configure peer address"; + } + enum "server" { + value 1; + description + "Configure server address"; + } + } + description + "Specify peer/server"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Peer key number"; + } + } + description + "Configure peer authentication key"; + } + leaf minpoll { + type uint32 { + range "4..5|7..17" { + description + "Minimum poll rate, default 6, less than maxpoll"; + } + } + description + "Configure minimum polling rate"; + } + leaf maxpoll { + type uint32 { + range "4..9|11..17" { + description + "Maximum poll rate, default 10, greater than minpoll"; + } + } + description + "Configure maximum polling rate"; + } + container prefer { + presence "Indicates a prefer node is configured."; + description + "Prefer this peer when possible"; + } + container burst { + presence "Indicates a burst node is configured."; + description + "Use burst mode"; + } + container iburst { + presence "Indicates a iburst node is configured."; + description + "Use initial burst mode"; + } + leaf source { + type xr:Interface-name; + description + "Interface for source address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + mandatory true; + description + "IPv6 address (must be same as key node 'address')"; + } + } + } + container vrfs { + description + "Specify non-default VRF"; + list vrf { + key "vrf-name"; + description + "Specify non-default VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Non-default VRF of peer"; + } + } + description + "Specify non-default VRF"; + } + container ipv4 { + description + "Specify IPv4 address"; + list ipv4-peer-server { + key "address type"; + description + "Specify IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Peer/server address"; + } + leaf type { + type enumeration { + enum "peer" { + value 0; + description + "Configure peer address"; + } + enum "server" { + value 1; + description + "Configure server address"; + } + } + description + "Specify peer/server"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Peer key number"; + } + } + description + "Configure peer authentication key"; + } + leaf minpoll { + type uint32 { + range "4..5|7..17" { + description + "Minimum poll rate, default 6, less than maxpoll"; + } + } + description + "Configure minimum polling rate"; + } + leaf maxpoll { + type uint32 { + range "4..9|11..17" { + description + "Maximum poll rate, default 10, greater than minpoll"; + } + } + description + "Configure maximum polling rate"; + } + container prefer { + presence "Indicates a prefer node is configured."; + description + "Prefer this peer when possible"; + } + container burst { + presence "Indicates a burst node is configured."; + description + "Use burst mode"; + } + container iburst { + presence "Indicates a iburst node is configured."; + description + "Use initial burst mode"; + } + leaf source { + type xr:Interface-name; + description + "Interface for source address"; + } + } + } + container ipv6 { + description + "Specify IPv6 address"; + list ipv6-peer-server { + must "address = ipv6-address"; + key "address type"; + description + "Specify IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "Peer/server address"; + } + leaf type { + type enumeration { + enum "peer" { + value 0; + description + "Configure peer address"; + } + enum "server" { + value 1; + description + "Configure server address"; + } + } + description + "Specify peer/server"; + } + leaf version { + type uint32 { + range "2..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Peer key number"; + } + } + description + "Configure peer authentication key"; + } + leaf minpoll { + type uint32 { + range "4..5|7..17" { + description + "Minimum poll rate, default 6, less than maxpoll"; + } + } + description + "Configure minimum polling rate"; + } + leaf maxpoll { + type uint32 { + range "4..9|11..17" { + description + "Maximum poll rate, default 10, greater than minpoll"; + } + } + description + "Configure maximum polling rate"; + } + container prefer { + presence "Indicates a prefer node is configured."; + description + "Prefer this peer when possible"; + } + container burst { + presence "Indicates a burst node is configured."; + description + "Use burst mode"; + } + container iburst { + presence "Indicates a iburst node is configured."; + description + "Use initial burst mode"; + } + leaf source { + type xr:Interface-name; + description + "Interface for source address"; + } + leaf ipv6-address { + type inet:ipv6-address-no-zone; + mandatory true; + description + "IPv6 address (must be same as key node 'address')"; + } + } + } + } + } + } + container trusted-keys { + description + "Key numbers for trusted time sources"; + list trusted-key { + key "key-number"; + description + "Key numbers for trusted time sources"; + leaf key-number { + type uint32 { + range "1..65535" { + description + "Key number"; + } + } + description + "Key numbers for trusted time sources"; + } + } + } + container update-calendar { + presence "Indicates a update-calendar node is configured."; + description + "Periodically update calendar with NTP time"; + } + leaf hostname-retry-interval { + type uint32 { + range "60..1440" { + description + "Hostname resolution retry interval value is between 60–1440 minutes"; + } + } + description + "Set hostname resolution retry interval in minutes. Default: 1440"; + } + container log-internal-sync { + presence "Indicates a log-internal-sync node is configured."; + description + "Logs internal synchronization changes"; + } + container passive { + presence "Indicates a passive node is configured."; + description + "Enable the passive associations"; + } + container source { + description + "Configure default interface"; + leaf interface-name { + type xr:Interface-name; + description + "default interface"; + } + container vrfs { + description + "Specify non-default VRF"; + list vrf { + key "vrf-name"; + description + "Specify non-default VRF"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Non-default VRF for the interface"; + } + } + description + "Specify non-default VRF"; + } + leaf interface-name { + type xr:Interface-name; + mandatory true; + description + "default interface for the VRF"; + } + } + } + } + container panic-threshold-apply { + presence "Indicates a panic-threshold-apply node is configured."; + description + "Enable panic threshold handling"; + } + container admin-plane { + presence "Indicates a admin-plane node is configured."; + description + "Configure admin plane as peer/server"; + leaf version { + type uint32 { + range "1..4" { + description + "NTP version number"; + } + } + description + "Configure NTP version"; + } + leaf key { + type uint32 { + range "1..65535" { + description + "Peer key number"; + } + } + description + "Configure peer authentication key"; + } + leaf minpoll { + type uint32 { + range "4..17" { + description + "Minimum poll rate, default 6, less than maxpoll"; + } + } + description + "Configure minimum polling rate"; + } + leaf maxpoll { + type uint32 { + range "4..17" { + description + "Maximum poll rate, default 10, greater than minpoll"; + } + } + description + "Configure maximum polling rate"; + } + container prefer { + presence "Indicates a prefer node is configured."; + description + "Prefer this peer when possible"; + } + container burst { + presence "Indicates a burst node is configured."; + description + "Use burst mode"; + } + container iburst { + presence "Indicates a iburst node is configured."; + description + "Use initial burst mode"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-nv-satellite-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-nv-satellite-cfg.yang new file mode 100644 index 000000000..1a0af64bb --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-nv-satellite-cfg.yang @@ -0,0 +1,735 @@ +module Cisco-IOS-XR-um-nv-satellite-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-nv-satellite-cfg"; + prefix um-nv-satellite-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import ietf-yang-types { + prefix yang; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 nv-satellite package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021 by Cisco Systems, Inc. + All rights reserved."; + + revision 2021-03-26 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + container nv { + description + "Network Virtualisation interface configuration"; + container satellite-fabric-link { + description + "Satellite Fabric Link configuration"; + container network { + presence "Indicates a network node is configured."; + description + "Network of satellites"; + container satellites { + description + "Satellite"; + list satellite { + key "satellite-id"; + description + "Satellite"; + leaf satellite-id { + type uint32 { + range "100..65534" { + description + "Satellite ID"; + } + } + description + "Satellite"; + } + container remote-ports { + description + "Remote ports configuration"; + container gigabit-ethernet { + description + "Remote ports type"; + list remote-slot { + key "slot-number subslot-number"; + description + "Remote slot"; + leaf slot-number { + type uint32 { + range "0..5" { + description + "Remote slot"; + } + } + description + "Remote slot"; + } + leaf subslot-number { + type uint32 { + range "0..5" { + description + "Remote subslot"; + } + } + description + "Remote subslot"; + } + leaf mapped-ports { + type string { + length "1..800" { + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + container ten-gig-e { + description + "Remote ports type"; + list remote-slot { + key "slot-number subslot-number"; + description + "Remote slot"; + leaf slot-number { + type uint32 { + range "0..5" { + description + "Remote slot"; + } + } + description + "Remote slot"; + } + leaf subslot-number { + type uint32 { + range "0..5" { + description + "Remote subslot"; + } + } + description + "Remote subslot"; + } + leaf mapped-ports { + type string { + length "1..800" { + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + } + } + } + container redundancy { + description + "Redundancy configuration"; + leaf iccp-group { + type uint32 { + range "1..4294967295" { + description + "Redundancy group ID"; + } + } + description + "Redundancy group ID"; + } + } + } + container satellite { + presence "Indicates a satellite node is configured."; + description + "Satellite ID"; + leaf satellite-id { + type uint32 { + range "100..65534" { + description + "Satellite ID"; + } + } + mandatory true; + description + "Satellite ID"; + } + container minimum { + description + "Min-links configuration"; + container required { + description + "Hard Min-links"; + leaf links { + type uint32 { + range "1..64" { + description + "Required minimum number of active links"; + } + } + description + "Active links"; + } + } + } + container remote-ports { + description + "Remote ports configuration"; + container gigabit-ethernet { + description + "Remote ports type"; + list remote-slot { + key "slot-number subslot-number"; + description + "Remote slot"; + leaf slot-number { + type uint32 { + range "0..5" { + description + "Remote slot"; + } + } + description + "Remote slot"; + } + leaf subslot-number { + type uint32 { + range "0..5" { + description + "Remote subslot"; + } + } + description + "Remote subslot"; + } + leaf mapped-ports { + type string { + length "1..800" { + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + container ten-gig-e { + description + "Remote ports type"; + list remote-slot { + key "slot-number subslot-number"; + description + "Remote slot"; + leaf slot-number { + type uint32 { + range "0..5" { + description + "Remote slot"; + } + } + description + "Remote slot"; + } + leaf subslot-number { + type uint32 { + range "0..5" { + description + "Remote subslot"; + } + } + description + "Remote subslot"; + } + leaf mapped-ports { + type string { + length "1..800" { + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of ports mapped to this satellite-fabric link; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + } + container redundancy { + description + "Redundancy configuration"; + leaf iccp-group { + type uint32 { + range "1..4294967295" { + description + "Redundancy group ID"; + } + } + description + "Redundancy group ID"; + } + container minimum { + description + "Min-links configuration"; + container preferred { + description + "Soft Min-links"; + leaf links { + type uint32 { + range "1..64" { + description + "Preferred minimum number of active links"; + } + } + description + "Active links"; + } + } + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + uses IF-BODY; + } + container nv { + description + "Network Virtualisation configuration"; + container satellites { + description + "Satellite configuration"; + list satellite { + key "satellite-id"; + description + "Satellite configuration"; + leaf satellite-id { + type uint32 { + range "100..65534" { + description + "Satellite ID"; + } + } + description + "Satellite configuration"; + } + leaf description { + type string { + length "1..256" { + description + "Satellite description"; + } + } + description + "Satellite description"; + } + leaf type { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Satellite type"; + } + } + description + "Satellite type"; + } + container ip { + description + "IP parameters"; + leaf address { + type inet:ip-address-no-zone; + description + "IP address"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "VRF name"; + } + } + description + "Local VRF name"; + } + leaf serial-number { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Satellite serial number"; + } + } + description + "Serial number of the connected satellite"; + } + leaf secret { + type xr:Md5-password; + description + "Secure password for local access to nV Ethernet satellite"; + } + leaf device-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "name for the satellite"; + } + pattern "[a-zA-Z0-9_-]+"; + } + description + "Satellite name"; + } + container redundancy { + description + "Redundancy configuration"; + leaf host-priority { + type uint32 { + range "0..255" { + description + "Priority. A lower number denotes a higher priority. (Default: 128)"; + } + } + description + "Priority of this host for the given satellite"; + } + leaf delayed-switchback { + type uint32 { + range "0..600" { + description + "Duration (in seconds) for the delayed switchback timer (default: 300s)"; + } + } + description + "Change the delay switchback timer"; + } + } + container candidate-fabric-ports { + description + "Candidate fabric ports"; + container nv-fabric-gig-e { + description + "Gigabit Ethernet fabric port type"; + container fabric-port-slots { + description + "Fabric port slot"; + list fabric-port-slot { + key "fabric-port-slot-id fabric-port-subslot-id"; + description + "Fabric port slot"; + leaf fabric-port-slot-id { + type uint32 { + range "0..5" { + description + "Fabric port slot"; + } + } + description + "Fabric port slot"; + } + leaf fabric-port-subslot-id { + type uint32 { + range "0..5" { + description + "Fabric port subslot"; + } + } + description + "Fabric port subslot"; + } + leaf list-of-candidate-fabric-ports { + type string { + length "1..800" { + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + } + container nv-fabric-ten-gig-e { + description + "Ten Gigabit Ethernet fabric port type"; + container fabric-port-slots { + description + "Fabric port slot"; + list fabric-port-slot { + key "fabric-port-slot-id fabric-port-subslot-id"; + description + "Fabric port slot"; + leaf fabric-port-slot-id { + type uint32 { + range "0..5" { + description + "Fabric port slot"; + } + } + description + "Fabric port slot"; + } + leaf fabric-port-subslot-id { + type uint32 { + range "0..5" { + description + "Fabric port subslot"; + } + } + description + "Fabric port subslot"; + } + leaf list-of-candidate-fabric-ports { + type string { + length "1..800" { + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + } + container nv-fabric-forty-gig-e { + description + "Forty Gigabit Ethernet fabric port type"; + container fabric-port-slots { + description + "Fabric port slot"; + list fabric-port-slot { + key "fabric-port-slot-id fabric-port-subslot-id"; + description + "Fabric port slot"; + leaf fabric-port-slot-id { + type uint32 { + range "0..5" { + description + "Fabric port slot"; + } + } + description + "Fabric port slot"; + } + leaf fabric-port-subslot-id { + type uint32 { + range "0..5" { + description + "Fabric port subslot"; + } + } + description + "Fabric port subslot"; + } + leaf list-of-candidate-fabric-ports { + type string { + length "1..800" { + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + } + container nv-fabric-hundred-gig-e { + description + "Hundred Gigabit Ethernet fabric port type"; + container fabric-port-slots { + description + "Fabric port slot"; + list fabric-port-slot { + key "fabric-port-slot-id fabric-port-subslot-id"; + description + "Fabric port slot"; + leaf fabric-port-slot-id { + type uint32 { + range "0..5" { + description + "Fabric port slot"; + } + } + description + "Fabric port slot"; + } + leaf fabric-port-subslot-id { + type uint32 { + range "0..5" { + description + "Fabric port subslot"; + } + } + description + "Fabric port subslot"; + } + leaf list-of-candidate-fabric-ports { + type string { + length "1..800" { + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + mandatory true; + description + "List of candidate fabric ports; e.g. 1,3-8,9. Must be in ascending order"; + } + } + } + } + } + container upgrade { + description + "Satellite upgrade configuration"; + container on-connect { + must "not(../on-first-connect)"; + presence "Indicates a on-connect node is configured."; + description + "Auto-upgrade on connection as required"; + container image-reference { + description + "Specify an image reference"; + leaf reference-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Reference name"; + } + } + description + "Reference name"; + } + } + container reference { + description + "Specify a reference"; + leaf reference-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Reference name"; + } + } + description + "Reference name"; + } + } + } + container on-first-connect { + must "not(../on-connect)"; + presence "Indicates a on-first-connect node is configured."; + description + "Auto-upgrade on first connection after configuration or host boot"; + container image-reference { + description + "Specify an image reference"; + leaf reference-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Reference name"; + } + } + description + "Reference name"; + } + } + container reference { + description + "Specify a reference"; + leaf reference-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Reference name"; + } + } + description + "Reference name"; + } + } + } + } + container discovery { + description + "Per satellite options for Discovery"; + leaf timeout { + type uint32 { + range "30..4294967295" { + description + "Time (in seconds) for the Discovery timeout."; + } + } + description + "Satellite discovery timeout"; + } + leaf warning { + type uint32 { + range "3..4294967295" { + description + "Number of missed discovery packets before outputting warning syslog."; + } + } + description + "Satellite discovery warning"; + } + } + } + } + container satellite { + description + "satellite mac configuration"; + leaf chassis-mac { + type yang:mac-address; + description + "MAC address to use as chassis MAC of the host device"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-object-group-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-object-group-cfg.yang new file mode 100644 index 000000000..471172086 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-object-group-cfg.yang @@ -0,0 +1,678 @@ +module Cisco-IOS-XR-um-object-group-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-object-group-cfg"; + prefix um-object-group-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 object-group package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2019-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "2.1.0"; + } + revision 2020-10-07 { + description + "Changed type of starting-port and ending-port to allow port number range"; + semver:module-version "2.0.0"; + } + revision 2019-06-10 { + description + "Establish semantic version baseline."; + semver:module-version "1.0.0"; + } + revision 2019-04-02 { + description + "Initial version"; + } + + feature object-group-udf-supported { + description + "UDF configuration supported within this model"; + } + + typedef port-numbers { + type enumeration { + enum "echo" { + value 7; + description + "Echo (7)"; + } + enum "discard" { + value 9; + description + "Discard (9)"; + } + enum "daytime" { + value 13; + description + "Daytime (13)"; + } + enum "chargen" { + value 19; + description + "Character generator (19)"; + } + enum "ftp-data" { + value 20; + description + "FTP data connections (used infrequently, 20)"; + } + enum "ftp" { + value 21; + description + "File Transfer Protocol (21)"; + } + enum "ssh" { + value 22; + description + "Secure Shell (22)"; + } + enum "telnet" { + value 23; + description + "Telnet (23)"; + } + enum "smtp" { + value 25; + description + "Simple Mail Transport Protocol (25)"; + } + enum "time" { + value 37; + description + "Time (37)"; + } + enum "whois" { + value 43; + description + "Nicname (43)"; + } + enum "tacacs" { + value 49; + description + "TAC Access Control System (49)"; + } + enum "domain" { + value 53; + description + "Domain Name Service (53)"; + } + enum "gopher" { + value 70; + description + "Gopher (70)"; + } + enum "finger" { + value 79; + description + "Finger (79)"; + } + enum "www" { + value 80; + description + "World Wide Web (HTTP, 80)"; + } + enum "hostname" { + value 101; + description + "NIC hostname server (101)"; + } + enum "pop2" { + value 109; + description + "Post Office Protocol v2 (109)"; + } + enum "pop3" { + value 110; + description + "Post Office Protocol v3 (110)"; + } + enum "sunrpc" { + value 111; + description + "Sun Remote Procedure Call (111)"; + } + enum "ident" { + value 113; + description + "Ident Protocol (113)"; + } + enum "nntp" { + value 119; + description + "Network News Transport Protocol (119)"; + } + enum "bgp" { + value 179; + description + "Border Gateway Protocol (179)"; + } + enum "irc" { + value 194; + description + "Internet Relay Chat (194)"; + } + enum "pim-auto-rp" { + value 496; + description + "PIM Auto-RP (496)"; + } + enum "exec" { + value 512; + description + "Exec (rsh, 512)"; + } + enum "login" { + value 513; + description + "Login (rlogin, 513)"; + } + enum "cmd" { + value 514; + description + "Remote commands (rcmd, 514)"; + } + enum "lpd" { + value 515; + description + "Printer service (515)"; + } + enum "talk" { + value 517; + description + "Talk (517)"; + } + enum "uucp" { + value 540; + description + "Unix-to-Unix Copy Program (540)"; + } + enum "klogin" { + value 543; + description + "Kerberos login (543)"; + } + enum "kshell" { + value 544; + description + "Kerberos shell (544)"; + } + enum "ldp" { + value 646; + description + "LDP session connection attempts (MPLS, 646)"; + } + } + description + "port numbers"; + } + + typedef Port-operator { + type enumeration { + enum "eq" { + value 0; + description + "Match packets on ports equal to entered port + number"; + } + enum "neq" { + value 1; + description + "Match packets on ports not equal to entered + port number"; + } + enum "gt" { + value 2; + description + "Match packets on ports greater than entered + port number"; + } + enum "lt" { + value 3; + description + "Match packets on ports less than entered port + number"; + } + } + description + "Port operator"; + } + + typedef Port { + type union { + type port-numbers; + type uint32 { + range "0..65535"; + } + } + description + "Port"; + } + + container object-group { + description + "Object-group configuration"; + container network { + description + "Network object group"; + container ipv4s { + description + "IPv4 object group"; + list ipv4 { + key "ipv4-object-group-name"; + description + "IPv4 object group"; + leaf ipv4-object-group-name { + type string { + length "1..64" { + description + "IPv4 object group name - maximum 64 characters"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "IPv4 object group"; + } + leaf description { + type string { + length "1..100" { + description + "Up to 100 characters describing this object"; + } + } + description + "Description for the object group"; + } + container hosts { + description + "A single host address"; + list host { + key "host-address"; + description + "A single host address"; + leaf host-address { + type inet:ipv4-address-no-zone; + description + "A single host address"; + } + } + } + container object-groups { + description + "Nested object group"; + list object-group { + key "object-group-name"; + description + "Nested object group"; + leaf object-group-name { + type string { + length "1..64" { + description + "Nested object group"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "Nested object group"; + } + } + } + container ranges { + description + "Range of host addresses"; + list range { + key "starting-address ending-address"; + description + "Range of host addresses"; + leaf starting-address { + type inet:ipv4-address-no-zone; + description + "Range of host addresses - start address"; + } + leaf ending-address { + type inet:ipv4-address-no-zone; + description + "Range of host addresses - end address"; + } + } + } + container ip-addresses { + description + "IPv4 address/prefix"; + list ip-address { + key "address length"; + description + "IPv4 address/prefix"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv4 address/prefix"; + } + leaf length { + type xr:Ipv4-prefix-length; + description + "IPv4 address/prefix length"; + } + } + } + } + } + container ipv6s { + description + "IPv6 object group"; + list ipv6 { + key "ipv6-object-group-name"; + description + "IPv6 object group"; + leaf ipv6-object-group-name { + type string { + length "1..64" { + description + "IPv6 object group name - maximum 64 characters"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "IPv6 object group"; + } + leaf description { + type string { + length "1..100" { + description + "Up to 100 characters describing this object"; + } + } + description + "Description for the object group"; + } + container hosts { + description + "A single host address"; + list host { + key "host-address"; + description + "A single host address"; + leaf host-address { + type inet:ipv6-address-no-zone; + description + "A single host address"; + } + } + } + container object-groups { + description + "nested object group"; + list object-group { + key "object-group-name"; + description + "nested object group"; + leaf object-group-name { + type string { + length "1..64" { + description + "Enter the name of a nested object group"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "nested object group"; + } + } + } + container ranges { + description + "Range of host addresses"; + list range { + key "starting-address ending-address"; + description + "Range of host addresses"; + leaf starting-address { + type inet:ipv6-address-no-zone; + description + "Range of host addresses - Starting Address"; + } + leaf ending-address { + type inet:ipv6-address-no-zone; + description + "Range of host addresses - Ending Address"; + } + } + } + container ip-addresses { + description + "IPv6 prefix x:x::x/y"; + list ip-address { + key "address length"; + description + "IPv6 prefix x:x::x/y"; + leaf address { + type inet:ip-address-no-zone; + description + "IPv6 prefix x:x::x/y"; + } + leaf length { + type xr:Ipv6-prefix-length; + description + "IPv6 prefix length"; + } + } + } + } + } + } + container ports { + description + "Port object group"; + list port { + key "port-object-group-name"; + description + "Port object group"; + leaf port-object-group-name { + type string { + length "1..64" { + description + "Port object group name - maximum 64 characters"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "Port object group"; + } + leaf description { + type string { + length "1..100" { + description + "Up to 100 characters describing this object"; + } + } + description + "description for the object group"; + } + container object-groups { + description + "nested object group"; + list object-group { + key "object-group-name"; + description + "nested object group"; + leaf object-group-name { + type string { + length "1..64" { + description + "Name of a nested object group"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "nested object group"; + } + } + } + container ranges { + description + "Match only packets on a given port range"; + list range { + key "starting-port ending-port"; + description + "Match only packets on a given port range"; + leaf starting-port { + type Port; + description + "Match only packets on a given port range"; + } + leaf ending-port { + type Port; + description + "Match only packets on a given port range"; + } + } + } + container match-criterias { + description + "Match packets on ports according to match criteria"; + list match-criteria { + key "match-criteria-type port"; + description + "Match packets on ports according to match criteria"; + leaf match-criteria-type { + type Port-operator; + description + "Match packets on ports according to match criteria"; + } + leaf port { + type Port; + description + "port number for the match criteria"; + } + } + } + } + } + } + container udfs { + if-feature "object-group-udf-supported"; + description + "UDF configuration"; + list udf { + key "udf-name"; + description + "UDF configuration"; + leaf udf-name { + type string { + length "1..16" { + description + "UDF name - maximum 16 characters"; + } + pattern "[a-z0-9A-Z][-_.:a-z0-9A-Z]*"; + } + description + "UDF configuration"; + } + container header { + presence "Indicates a header node is configured."; + description + "Header for UDF"; + leaf header-type { + type enumeration { + enum "inner" { + value 0; + description + "Inner header for UDF"; + } + enum "outer" { + value 1; + description + "Outer header for UDF"; + } + } + mandatory true; + description + "Header for UDF"; + } + container udf-layer { + presence "Indicates a udf-layer node is configured."; + description + "configure the udf-layer"; + leaf udf-layer-type { + type enumeration { + enum "l2" { + value 0; + description + "L2 layer for UDF"; + } + enum "l3" { + value 1; + description + "L3 layer for UDF"; + } + enum "l4" { + value 2; + description + "L4 layer for UDF"; + } + } + mandatory true; + description + "configure the udf-layer"; + } + container offset { + presence "Indicates a offset node is configured."; + description + "Configure the offset (bytes) in the header"; + leaf offset-value { + type uint32 { + range "0..65535" { + description + "Configure the offset value (bytes)"; + } + } + mandatory true; + description + "Configure the offset (bytes) in the header"; + } + leaf length { + type uint32 { + range "0..65535" { + description + "Configure the length (bytes)"; + } + } + mandatory true; + description + "Configure the length (bytes) in the header"; + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-otnsec-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-otnsec-cfg.yang new file mode 100644 index 000000000..8ae0325ba --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-otnsec-cfg.yang @@ -0,0 +1,176 @@ +module Cisco-IOS-XR-um-otnsec-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-otnsec-cfg"; + prefix um-otnsec-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 otnsec package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes + 2022-06-01 + Adjusted controller augmentation hierarchy"; + semver:module-version "1.1.0"; + } + revision 2020-12-14 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping CONT-BODY { + description + "Grouping for controller"; + container otnsec { + description + "Configure otnsec submode"; + leaf policy { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Policy"; + } + } + description + "otnsec policy"; + } + leaf session-id { + type uint32 { + range "1..65535" { + description + "session ID"; + } + } + description + "IKEv2 Session ID"; + } + container source { + description + "ikev2 SA source IP"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + ""; + } + } + container destination { + description + "IKEv2 SA destination IP"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + ""; + } + } + leaf ikev2 { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "profile"; + } + } + description + "IKEv2 profile"; + } + } + } + + augment "/a1:controllers/a1:controller" { + description + "This augment extends active nodes configuration"; + uses CONT-BODY; + } + augment "/a1:controllers/a1:controller-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses CONT-BODY; + } + container otnsec { + description + "Configure otnsec submode"; + container policies { + description + "otnsec policy"; + list policy { + key "policy-name"; + description + "otnsec-policy"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "otnsec-policy"; + } + } + description + "otnsec-policy"; + } + leaf cipher-suite { + type enumeration { + enum "AES-GCM-256" { + value 0; + description + ""; + } + } + description + "Encryption/Decryption datapath algorithm"; + } + leaf security-policy { + type enumeration { + enum "must-secure" { + value 1; + description + "Mandatory security"; + } + } + description + "Securing policy"; + } + leaf sak-rekey-interval { + type uint32 { + range "30..1209600" { + description + "rekey timer in seconds"; + } + } + description + "Rekey timeout (in seconds)"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-password6-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-password6-cfg.yang new file mode 100644 index 000000000..6e0ed1133 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-password6-cfg.yang @@ -0,0 +1,56 @@ +module Cisco-IOS-XR-um-password6-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-password6-cfg"; + prefix um-password6-cfg; + + 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 password6 package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2020, 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2020-03-23 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + feature type6_parser_check_input_type_with_platform_aes_msg { + description + "type6 parser check input type with platform aes msg"; + } + + container password6 { + description + "Configure a key password"; + container encryption { + description + "Configure a key encryption"; + container aes { + if-feature "type6_parser_check_input_type_with_platform_aes_msg"; + presence "Indicates a aes node is configured."; + description + "Configure a key type aes"; + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-cfg.yang new file mode 100644 index 000000000..d404c7080 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-cfg.yang @@ -0,0 +1,132 @@ +module Cisco-IOS-XR-um-pbr-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-pbr-cfg"; + prefix um-pbr-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import Cisco-IOS-XR-um-subscriber-cfg { + prefix a2; + } + import Cisco-IOS-XR-um-dynamic-template-cfg { + prefix a3; + } + import Cisco-IOS-XR-um-dyn-tmpl-service-policy-cfg { + prefix a4; + } + 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 pbr package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-05-19 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping TEMPLATE-BODY { + description + "Grouping for template"; + container type { + description + "Configure PBR Service policy"; + leaf pbr { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "PBR Service policy"; + } + } + } + + augment "/a2:subscriber" { + description + "This augment extends subscriber nodes configuration"; + container http-enrichment { + description + "Enable http-enrichment"; + leaf-list parameter-list { + type enumeration { + enum "subscriber-mac" { + value 1; + description + "BNG identifier interface"; + } + enum "subscriber-ip" { + value 2; + description + "Subscriber ipv4 and ipv6 address"; + } + enum "hostname" { + value 4; + description + "BNG hostname"; + } + enum "bng-interface" { + value 8; + description + "BNG identifier interface"; + } + } + max-elements "4"; + description + "http-enrichment parameter list"; + } + } + leaf bng-interface { + type xr:Interface-name; + description + "BNG identifier interface"; + } + } + augment "/a3:dynamic-template/a3:type/a3:ppp/a3:template/a4:service-policy" { + description + "This augment extends dynamic-tempalte ppp nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a3:dynamic-template/a3:type/a3:ipsubscriber/a3:template/a4:service-policy" { + description + "This augment extends dynamic-template ipsubscriber nodes + configuration"; + uses TEMPLATE-BODY; + } + augment "/a3:dynamic-template/a3:type/a3:service/a3:template/a4:service-policy" { + description + "This augment extends dynamic-template service nodes + configuration"; + uses TEMPLATE-BODY; + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-policy-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-policy-cfg.yang new file mode 100644 index 000000000..4333dbd90 --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-pbr-policy-cfg.yang @@ -0,0 +1,747 @@ +module Cisco-IOS-XR-um-pbr-policy-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-pbr-policy-cfg"; + prefix um-pbr-policy-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + import Cisco-IOS-XR-um-interface-cfg { + prefix a1; + } + 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 pbr package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-07-11 { + description + "Added missing description statement to nodes"; + semver:module-version "1.1.0"; + } + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + grouping IF-BODY { + description + "Grouping for controller"; + container service-policy { + description + "Configure a service policy"; + container type { + description + "service policy type"; + container pbr { + description + "Policy based routing Service policy"; + container inputs { + description + "Configure a policy in the input direction"; + list input { + key "service-policy-name"; + description + "Configure a policy in the input direction"; + leaf service-policy-name { + type string { + length "1..800" { + description + "Name of the service policy"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "Configure a policy in the input direction"; + } + } + } + } + } + } + container ipv4 { + description + "IPv4 interface subcommands"; + container vrf-policy { + description + "vrf policy"; + container type { + description + "type of policy"; + container pbr { + description + "Policy based routing"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable ipv4 vrf-policy type pbr. "; + } + } + } + } + } + container ipv6 { + description + "IPv6 interface subcommands"; + container vrf-policy { + description + "vrf policy"; + container type { + description + "type of policy"; + container pbr { + description + "Policy based routing Service policy"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable ipv6 vrf-policy type pbr. "; + } + } + } + } + } + } + + augment "/a1:interfaces/a1:interface" { + description + "This augment extends active nodes configuration"; + uses IF-BODY; + } + augment "/a1:interfaces/a1:interface-preconfigure" { + description + "This augment extends preconfigured nodes + configuration"; + uses IF-BODY; + } + container service-policy { + description + "Configure global service policy"; + container apply-order { + description + "Configure service policy ordering"; + container pbr { + description + "Policy based routing"; + container qos { + must "not(../../qos/pbr)"; + presence "Indicates a qos node is configured."; + description + "Quality of service"; + } + } + container qos { + description + "Quality of service"; + container pbr { + must "not(../../pbr/qos)"; + presence "Indicates a pbr node is configured."; + description + "Policy based routing"; + } + } + } + } + container vrf-policy { + presence "Indicates a vrf-policy node is configured."; + description + "vrf policy configuration"; + container vrfs { + description + "associated vrf of the policy"; + list vrf { + must "address-family/ipv4/policy/type/pbr/input or address-family/ipv6/policy/type/pbr/input"; + key "vrf-name"; + description + "associated vrf of the policy"; + leaf vrf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "VRF Name"; + } + } + description + "associated vrf of the policy"; + } + container address-family { + description + "Address Family Identifier Type (IPv4/IPv6)"; + container ipv4 { + description + "IPv4 Policy"; + container policy { + description + "Policy Name"; + container type { + description + "Type of the policy"; + container pbr { + description + "policy type pbr"; + leaf input { + type string { + length "1..800" { + description + "Policy map name"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "direction of the policy applied"; + } + } + } + } + } + container ipv6 { + description + "IPv6 Policy"; + container policy { + description + "Policy Name"; + container type { + description + "Type of the policy"; + container pbr { + description + "policy type pbr"; + leaf input { + type string { + length "1..800" { + description + "Policy map name"; + } + pattern "[a-zA-Z0-9][a-zA-Z0-9._@$%+#:=<>-]{0,62}"; + } + description + "direction of the policy applied"; + } + } + } + } + } + } + } + } + } + container service-node { + description + "configure service node"; + container type { + description + "type of service node"; + container vpath { + presence "Indicates a vpath node is configured."; + description + "Specify service node type as vpath"; + container indexes { + description + "Specify index of service node"; + list index { + key "service-node-index"; + description + "Specify index of service node"; + leaf service-node-index { + type uint32 { + range "1..65535" { + description + "Specify the index of service node"; + } + } + description + "Specify index of service node"; + } + } + } + } + container output { + presence "Indicates a output node is configured."; + description + "Specify service node type as output"; + container indexes { + description + "Specify index of service node"; + list index { + key "service-node-index"; + description + "Specify index of service node"; + leaf service-node-index { + type uint32 { + range "1..65535" { + description + "Specify the index of service node"; + } + } + description + "Specify index of service node"; + } + } + } + } + } + } + container service-function-chaining { + presence "Indicates a service-function-chaining node is configured."; + description + "configure service function chaining"; + container paths { + description + "Configure service function path"; + list path { + key "service-function-path-id"; + description + "Specify the service function path id"; + leaf service-function-path-id { + type uint32 { + range "1..16777215" { + description + "Specify the service function path id"; + } + } + description + "Specify the service function path id"; + } + container functions { + description + "Specify the id of service function"; + list function { + must "sf/service-functions/service-function or sff/service-functions/service-function or terminate/default-action/redirect"; + key "service-function-id"; + description + "Specify the id of service function"; + leaf service-function-id { + type uint32 { + range "1..255" { + description + "Specify the id of service function"; + } + } + description + "Specify the id of service function"; + } + container sf { + description + "service function"; + container service-functions { + description + "service function name"; + list service-function { + key "service-function-name"; + description + "service function name"; + leaf service-function-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "service function name"; + } + } + description + "service function name"; + } + } + } + } + container sff { + description + "service function forwarder"; + container service-functions { + description + "service function name"; + list service-function { + key "service-function-name"; + description + "service function name"; + leaf service-function-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "service function name"; + } + } + description + "service function name"; + } + } + } + } + container terminate { + description + "Configure terminate"; + leaf metadata-disposition { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "metadata-disposition name"; + } + } + must "../default-action/redirect"; + description + "Specify metadata-disposition name"; + } + container default-action { + description + "Configure the default action for service function path"; + container redirect { + must "ipv4/nexthop or ipv4/vrf"; + presence "Indicates a redirect node is configured."; + description + "Configure redirect action"; + container ipv4 { + description + "Enter ipv4 configuration"; + leaf nexthop { + type inet:ipv4-address-no-zone; + description + "Configure the nexthop action"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "Redirect to default vrf"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Enter VRF name"; + } + } + } + description + "Enter vrf name for the nexthop"; + } + } + } + } + } + } + } + } + } + container sfs { + description + "service function"; + list sf { + key "sf-name"; + description + "service function"; + leaf sf-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "service function name"; + } + } + description + "service function"; + } + container locators { + description + "Specify service function locator id"; + list locator { + key "locator-id"; + description + "Specify service function locator id"; + leaf locator-id { + type uint32 { + range "1..255" { + description + "Specify locator id"; + } + } + description + "Specify service function locator id"; + } + container transport { + description + "Choose SFL transport"; + container vxlan-gpe { + description + "transport vxlan-gpe"; + container source-address { + description + "Local IP address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "setup IPv4 path"; + } + } + container destination-address { + description + "Remote IP address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "setup IPv4 path"; + } + } + leaf vni { + type uint32 { + range "1..65535" { + description + "Enter vni value"; + } + } + description + "vni value"; + } + } + } + } + } + } + } + container sffs { + description + "service function forwarder"; + list sff { + key "sff-name"; + description + "service function forwarder"; + leaf sff-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "service function name"; + } + } + description + "service function forwarder"; + } + container locators { + description + "Specify service function locator id"; + list locator { + key "locator-id"; + description + "Specify service function locator id"; + leaf locator-id { + type uint32 { + range "1..255" { + description + "Specify locator id"; + } + } + description + "Specify service function locator id"; + } + container transport { + description + "Choose SFL transport"; + container vxlan-gpe { + description + "transport vxlan-gpe"; + container source-address { + description + "Local IP address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "setup IPv4 path"; + } + } + container destination-address { + description + "Remote IP address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "setup IPv4 path"; + } + } + leaf vni { + type uint32 { + range "1..65535" { + description + "Enter vni value"; + } + } + description + "vni value"; + } + } + } + } + } + } + } + container metadata-impositions { + description + "metadata imposition"; + list metadata-imposition { + key "metadata-profile-name"; + description + "metadata imposition"; + leaf metadata-profile-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "metadata profile name"; + } + } + description + "metadata imposition"; + } + container type { + description + "Specify metadata type"; + container one { + description + "Type 1 metadata"; + container format { + description + "Specify metadata format"; + container dc-allocation { + description + "format dc-allocation"; + leaf tenant-id { + type uint32 { + range "1..16777215" { + description + "Enter 24-bit tenant id"; + } + } + description + "Specify tenant id"; + } + } + } + } + } + } + } + container metadata-dispositions { + description + "metadata disposition"; + list metadata-disposition { + key "service-disposition-name"; + description + "metadata disposition"; + leaf service-disposition-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "specify service disposition name"; + } + } + description + "metadata disposition"; + } + container type { + description + "Specify disposition allocation type"; + container one { + description + "Allocation format Type 1 "; + container format { + description + "Specify allocation format"; + container dc-allocation { + description + "data center allocation"; + container match-entries { + description + "Specify the match entry name"; + list match-entry { + key "match-entry-name"; + description + "Specify the match entry name"; + leaf match-entry-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "match-entry name"; + } + } + description + "Specify the match entry name"; + } + container tenant { + description + "Specify the tenant-ids"; + leaf tenant-id { + type uint32 { + range "0..4294967295" { + description + "tenant id"; + } + } + description + "tenant id"; + } + container redirect { + must "ipv4/nexthop/ipv4-address or ipv4/nexthop/vrf"; + description + "Configure redirect action"; + container ipv4 { + description + "Enter ipv4 configuration"; + container nexthop { + description + "Enter nexthop configuration"; + leaf ipv4-address { + type inet:ipv4-address-no-zone; + description + "Configure the nexthop action"; + } + leaf vrf { + type union { + type string { + pattern "default" { + description + "Redirect to default vrf"; + } + } + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Enter VRF name"; + } + } + } + description + "Enter vrf name for the nexthop"; + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-pce-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-pce-cfg.yang new file mode 100644 index 000000000..1ce893b3d --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-pce-cfg.yang @@ -0,0 +1,2897 @@ +module Cisco-IOS-XR-um-pce-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-pce-cfg"; + prefix um-pce-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 pce package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2021-2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-03-25 { + description + "Model Deprecated"; + semver:module-version "2.1.0"; + } + revision 2021-07-12 { + description + "Added must statement under the list index + 2021-07-01 + Added leaf ip-address under all the containers pcc"; + semver:module-version "2.0.0"; + } + revision 2021-05-10 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container pce { + presence "Indicates a pce node is configured."; + status deprecated; + description + "Path Computation Server configurations"; + container constraints { + description + "Assign constraints for the computed paths"; + container bounds { + description + "Assign bounds for the path"; + container cumulative { + description + "Cumulative metric bound"; + container type { + description + "The metric type for the bound"; + leaf latency { + type uint32 { + range "1..4294967295" { + description + "Bound metric value in microseconds"; + } + } + description + "Bound metric type latency"; + } + } + } + } + } + container address { + description + "Address of PCE server"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + } + container state-sync { + description + "Forward received reports to other PCE"; + container ipv4s { + description + "IPv4 address"; + list ipv4 { + key "address"; + description + "IPv4 address"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + } + container ipv6s { + description + "IPv6 address"; + list ipv6 { + key "address"; + description + "IPv6 address"; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 address"; + } + } + } + } + container tcp-buffer { + description + "TCP buffer configuration"; + leaf size { + type uint32 { + range "204800..1024000" { + description + "Maximum size of event-buffer, default is 256000"; + } + } + description + "Size of buffer in bytes"; + } + } + container password { + description + "Configure global password for MD5 authentication"; + leaf encrypted { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Encrypted password string"; + } + } + description + "Specify unencrypted password"; + } + } + container tcp-ao { + presence "Indicates a tcp-ao node is configured."; + description + "Configure global AO keychain based authentication"; + leaf key-chain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the key chain - maximum 32 characters"; + } + } + mandatory true; + description + "Configure global AO keychain based authentication"; + } + container include-tcp-options { + presence "Indicates a include-tcp-options node is configured."; + description + "Include other TCP options in the header"; + } + container accept-ao-mismatch-connection { + presence "Indicates a accept-ao-mismatch-connection node is configured."; + description + "Accept new connection even if Authentication Option mismatched"; + } + } + container trace { + description + "Configure PCE trace options"; + container buffer { + description + "PCE Trace buffers"; + container all { + description + "All buffers control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container common { + description + "Common buffer control"; + container gen-error { + description + "Common generic error buffer"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container lslib { + description + "lslib trace buffer"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container cspf { + description + "cspf trace buffer"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container topo { + description + "topo trace buffer"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container mempool { + description + "mempool trace buffer"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container pcep { + description + "pcep trace buffer"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container timing { + description + "timing trace buffer"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + } + container error { + description + "Error buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container gen-error { + description + "Generic error buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container cfg { + description + "Configuration buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container rest { + description + "Rest buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container treesid { + description + "Treesid buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container pcep-lsp { + description + "PCEP lsp buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container pcep-peer { + description + "PCEP peer buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container policy { + description + "Policy buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + container cmn-codeflow { + description + "code flow buffer control"; + leaf trace-count { + type uint32 { + range "0..1000000" { + description + "count"; + } + } + description + "Trace count"; + } + } + } + } + container disjoint-path { + presence "Indicates a disjoint-path node is configured."; + description + "Disjoint Path Configuration"; + container group-ids { + description + "Group ID"; + list group-id { + key "group-id"; + description + "Group ID"; + leaf group-id { + type uint32 { + range "1..65535" { + description + "Group ID"; + } + } + description + "Group ID"; + } + container type { + description + "Disjointness type"; + container link { + description + "Link Disjointness"; + container enable { + presence "Indicates an enable node is configured."; + description + "Enable Link Disjointness"; + } + container sub-ids { + description + "Sub ID"; + list sub-id { + key "sub-id"; + description + "Sub ID"; + leaf sub-id { + type uint32 { + range "1..65535" { + description + "Sub ID"; + } + } + description + "Sub ID"; + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + container node { + description + "Node Disjointness"; + container enable { + presence "Indicates an enable node is configured."; + description + "Enable Node Disjointness"; + } + container sub-ids { + description + "Sub ID"; + list sub-id { + key "sub-id"; + description + "Sub ID"; + leaf sub-id { + type uint32 { + range "1..65535" { + description + "Sub ID"; + } + } + description + "Sub ID"; + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + container srlg { + description + "SRLG Disjointness"; + container enable { + presence "Indicates an enable node is configured."; + description + "Enable SRLG Disjointness"; + } + container sub-ids { + description + "Sub ID"; + list sub-id { + key "sub-id"; + description + "Sub ID"; + leaf sub-id { + type uint32 { + range "1..65535" { + description + "Sub ID"; + } + } + description + "Sub ID"; + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + container srlg-node { + description + "SRLG Node Disjointness"; + container enable { + presence "Indicates an enable node is configured."; + description + "Enable SRLG Node Disjointness"; + } + container sub-ids { + description + "Sub ID"; + list sub-id { + key "sub-id"; + description + "Sub ID"; + leaf sub-id { + type uint32 { + range "1..65535" { + description + "Sub ID"; + } + } + description + "Sub ID"; + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + } + container lsp { + description + "Configure lsps in the association"; + container one { + description + "Configure first lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + container two { + description + "Configure second lsp in the association"; + container pcc { + presence "Indicates a pcc node is configured."; + description + "PCC address"; + leaf address-type { + type enumeration { + enum "ipv4" { + value 1; + description + "IPV4 address"; + } + enum "ipv6" { + value 2; + description + "IPV6 address"; + } + } + mandatory true; + description + "Address type"; + } + leaf ip-address { + type inet:ip-address-no-zone; + mandatory true; + description + "IP address of PCC"; + } + leaf lsp-name { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Identifying name for LSP"; + } + } + mandatory true; + description + "Name of label switched path"; + } + container shortest-path { + presence "Indicates a shortest-path node is configured."; + description + "Set LSP to follow shortest-path"; + } + leaf exclude-srlg { + type uint32 { + range "1..4294967295" { + description + "SRLG value to be excluded from LSP"; + } + } + description + "Exclude SRLG"; + } + } + } + } + container strict { + presence "Indicates a strict node is configured."; + description + "Disable Fallback"; + } + } + } + } + } + leaf maximum-attempts { + type uint32 { + range "1..100000" { + description + "Maximum number of attempts"; + } + } + description + "Maximum number of attempts during disjoint path computation (default: 1000)"; + } + } + container peer { + description + "Peer Configuration"; + container ipv4s { + description + "IPv4 address family"; + list ipv4 { + key "address"; + description + "IPv4 address family"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address family"; + } + container password { + description + "Configure peer password for MD5 authentication"; + leaf encrypted { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Encrypted password string"; + } + } + description + "Specify unencrypted password"; + } + } + container tcp-ao { + presence "Indicates a tcp-ao node is configured."; + description + "Configure AO keychain based authentication"; + leaf key-chain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the key chain - maximum 32 characters"; + } + } + mandatory true; + description + "Configure AO keychain based authentication"; + } + container include-tcp-options { + presence "Indicates a include-tcp-options node is configured."; + description + "Include other TCP options in the header"; + } + container accept-ao-mismatch-connection { + presence "Indicates a accept-ao-mismatch-connection node is configured."; + description + "Accept new connection even if Authentication Option mismatched"; + } + } + } + } + container ipv6s { + description + "IPv6 address family"; + list ipv6 { + key "address"; + description + "IPv6 address family"; + leaf address { + type inet:ipv6-address-no-zone; + description + "IPv6 address family"; + } + container password { + description + "Configure peer password for MD5 authentication"; + leaf encrypted { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Encrypted password string"; + } + } + description + "Specify unencrypted password"; + } + } + container tcp-ao { + presence "Indicates a tcp-ao node is configured."; + description + "Configure AO keychain based authentication"; + leaf key-chain-name { + type xr:Cisco-ios-xr-string { + length "1..32" { + description + "Name of the key chain - maximum 32 characters"; + } + } + mandatory true; + description + "Configure AO keychain based authentication"; + } + container include-tcp-options { + presence "Indicates a include-tcp-options node is configured."; + description + "Include other TCP options in the header"; + } + container accept-ao-mismatch-connection { + presence "Indicates a accept-ao-mismatch-connection node is configured."; + description + "Accept new connection even if Authentication Option mismatched"; + } + } + } + } + } + container netconf { + presence "Indicates a netconf node is configured."; + description + "NETCONF Configuration"; + container ssh { + description + "SSH configuration used by Netconf"; + leaf user { + type string { + length "1..800" { + description + "SSH username"; + } + } + description + "Specify SSH username that will be used to log on to routers"; + } + container password { + description + "Configure password for Netconf SSH"; + leaf encrypted { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Encrypted password string"; + } + } + description + "Specify unencrypted password"; + } + } + } + } + container api { + presence "Indicates a api node is configured."; + description + "Northbound API Configuration"; + container authentication { + description + "Configure desired REST authentication"; + container digest { + presence "Indicates a digest node is configured."; + description + "Use HTTP Digest authentication (MD5)"; + } + } + container sibling { + description + "Sibling PCE"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the PCE sibling"; + } + } + leaf vrf { + type xr:Cisco-ios-xr-string { + length "1..33" { + description + "VRF name"; + } + } + description + "VRF for northbound API and PCE sibling connections."; + } + container users { + description + "Northbound API username"; + list user { + key "user-name"; + description + "Northbound API username"; + leaf user-name { + type string { + length "1..800" { + description + "Username for the northbound API"; + } + } + description + "Northbound API username"; + } + container password { + description + "Configure password for API username"; + leaf encrypted { + type xr:Cisco-ios-xr-string { + length "1..1024" { + description + "Encrypted password string"; + } + } + description + "Specify unencrypted password"; + } + } + } + } + container ipv4 { + description + "IPv4 specific configuration"; + leaf address { + type inet:ipv4-address-no-zone; + description + "NB-API server IPv4 address"; + } + } + container ipv6 { + description + "IPv6 specific configuration"; + leaf address { + type inet:ipv6-address-no-zone; + description + "NB-API server IPv6 address"; + } + } + } + container timers { + description + "PCE timers configuration"; + leaf reoptimization { + type uint32 { + range "600..86400" { + description + "Timer value in seconds; default is 1800"; + } + } + description + "Topology reoptimization interval"; + } + leaf keepalive { + type uint32 { + range "0..255" { + description + "Time value in seconds. Use zero to disable; default is 30"; + } + } + description + "Keepalive interval"; + } + leaf minimum-peer-keepalive { + type uint32 { + range "0..255" { + description + "Time value in seconds. Use zero to disable; default is 20"; + } + } + description + "Minimum acceptable peer proposed keepalive interval"; + } + leaf peer-zombie { + type uint32 { + range "0..3600" { + description + "Timer value in seconds 0-3600. Use 0 to disable. Default is 60."; + } + } + description + "Keep LSP peer in zombie state after disconnect"; + } + leaf init-verify-restart { + type uint32 { + range "10..10000" { + description + "Time value in seconds. Default is 40"; + } + } + description + "Timer to wait for topology convergence after topology starts populating for restart case"; + } + leaf init-verify-switchover { + type uint32 { + range "10..10000" { + description + "Time value in seconds. Default is 60"; + } + } + description + "Timer to wait for topology convergence after topology starts populating for switchover case"; + } + leaf init-verify-startup { + type uint32 { + range "10..10000" { + description + "Time value in seconds. Default is 120"; + } + } + description + "Timer to wait for topology convergence after topology starts populating for startup case"; + } + } + container backoff { + description + "PCE backoff configuration"; + leaf ratio { + type uint32 { + range "0..255" { + description + "Backoff common ratio; default is 2"; + } + } + description + "Backoff common ratio"; + } + leaf difference { + type uint32 { + range "0..255" { + description + "Backoff common difference; default is 2"; + } + } + description + "Backoff common difference"; + } + leaf threshold { + type uint32 { + range "0..3600" { + description + "Threshold value in seconds. Use zero to disable; default is 0"; + } + } + description + "Backoff threshold"; + } + } + container logging { + description + "PCE logging configuration"; + container no-path { + presence "Indicates a no-path node is configured."; + description + "logging no-path messages"; + } + container fallback { + presence "Indicates a fallback node is configured."; + description + "logging fallback messages"; + } + container pcep { + description + "Path Computation Element Protocol (PCEP) logging"; + container pcerr-received { + presence "Indicates a pcerr-received node is configured."; + description + "logging of received PCErr messages"; + } + container api { + description + "API logging configuration"; + container send-queue-congestion { + description + "logging of peer send queue related messages"; + container disable { + presence "Indicates a disable node is configured."; + description + "disable messages"; + } + } + } + container disjointness-status { + presence "Indicates a disjointness-status node is configured."; + description + "logging of disjointness status related messages"; + } + } + } + container segment-routing { + description + "PCE segment-routing configuration"; + container strict-sid-only { + presence "Indicates a strict-sid-only node is configured."; + description + "Use strict sids only"; + } + container traffic-eng { + presence "Indicates a traffic-eng node is configured."; + description + "Segment Routing Traffic Engineering"; + container affinity { + description + "Affinity configuration"; + container bit-map { + description + "Affinity attribute value to color mapping"; + container affinity-colors { + description + "Affinity color name"; + list affinity-color { + key "affinity-color-name"; + description + "Affinity color name"; + leaf affinity-color-name { + type string { + length "1..32" { + description + "Affinity color name"; + } + } + description + "Affinity color name"; + } + leaf affinity-attribute-bit { + type uint32 { + range "0..255" { + description + "Affinity attribute bit position"; + } + } + mandatory true; + description + "Affinity attribute bit position"; + } + } + } + } + } + container segment-lists { + description + "Segment-list configuration"; + list segment-list { + key "segment-list-name"; + description + "Segment-list name"; + leaf segment-list-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Identifying name for segment-list with max 128 characters"; + } + } + description + "Segment-list name"; + } + container indexes { + description + "Next entry index"; + list index { + must "mpls/label or mpls/adjacency"; + key "index-number"; + description + "Next entry index"; + leaf index-number { + type uint32 { + range "1..65535" { + description + "Index number"; + } + } + description + "Next entry index"; + } + container mpls { + description + "MPLS configuration"; + leaf label { + type uint32 { + range "0..1048575" { + description + "MPLS label value"; + } + } + must "not(../adjacency)"; + description + "MPLS label configuration"; + } + leaf adjacency { + type inet:ip-address-no-zone; + must "not(../label)"; + description + "Specify hop address"; + } + } + } + } + } + } + container peer { + description + "PCEP peer to configure"; + container ipv4s { + description + "IPv4 address of the PCEP peer"; + list ipv4 { + key "address"; + description + "IPv4 address of the PCEP peer"; + leaf address { + type inet:ipv4-address-no-zone; + description + "IPv4 address of the PCEP peer"; + } + container policies { + description + "Name of SR-TE Policy"; + list policy { + key "policy-name"; + description + "Name of SR-TE Policy"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Identifying name for policy with max 128 characters"; + } + } + description + "Name of SR-TE Policy"; + } + container candidate-paths { + presence "Indicates a candidate-paths node is configured."; + description + "Candidate-paths configuration"; + container append-sid { + description + "Append specified SID to the currently used path"; + leaf mpls { + type uint32 { + range "1..1048575" { + description + "MPLS label"; + } + } + description + "MPLS label"; + } + } + container preferences { + description + "Policy path-option preference entry"; + list preference { + key "preference-id"; + description + "Policy path-option preference entry"; + leaf preference-id { + type uint32 { + range "1..65535" { + description + "Path-option preference"; + } + } + description + "Policy path-option preference entry"; + } + container dynamic { + description + "Dynamically allocated path"; + container mpls { + presence "Indicates a mpls node is configured."; + description + "MPLS path type"; + container metric { + presence "Indicates a metric node is configured."; + description + "Path metric configuration"; + container type { + description + "Metric type configuration"; + container te { + must + "not(../igp or ../hopcount + or ../latency)"; + presence "Indicates a te node is configured."; + description + "TE metric type"; + } + container igp { + must + "not(../te or ../hopcount + or ../latency)"; + presence "Indicates a igp node is configured."; + description + "IGP metric type"; + } + container hopcount { + must + "not(../te or ../igp + or ../latency)"; + presence "Indicates a hopcount node is configured."; + description + "Hopcount metric type"; + } + container latency { + must + "not(../te or ../igp + or ../hopcount)"; + presence "Indicates a latency node is configured."; + description + "Latency metric type"; + } + } + leaf sid-limit { + type uint32 { + range "1..255" { + description + "SID limit value"; + } + } + description + "SID limit"; + } + } + } + } + container explicit { + description + "Preconfigured path"; + container segment-list { + description + "Specify Segment-list"; + } + container segment-list-names { + description + "Identifying name for Segment-list"; + list segment-list-name { + key "segment-list-name"; + description + "Identifying name for Segment-list"; + leaf segment-list-name { + type string { + length "1..128" { + description + "Identifying name for Segment-list"; + } + } + description + "Identifying name for Segment-list"; + } + container metric { + presence "Indicates a metric node is configured."; + description + "Path metric configuration"; + container type { + description + "Metric type configuration"; + container te { + must + "not(../igp or ../hopcount + or ../latency)"; + presence "Indicates a te node is configured."; + description + "TE metric type"; + } + container igp { + must + "not(../te or ../hopcount + or ../latency)"; + presence "Indicates a igp node is configured."; + description + "IGP metric type"; + } + container hopcount { + must + "not(../te or ../igp + or ../latency)"; + presence "Indicates a hopcount node is configured."; + description + "Hopcount metric type"; + } + container latency { + must + "not(../te or ../igp + or ../hopcount)"; + presence "Indicates a latency node is configured."; + description + "Latency metric type"; + } + } + leaf sid-limit { + type uint32 { + range "1..255" { + description + "SID limit value"; + } + } + description + "SID limit"; + } + } + } + } + } + container constraints { + description + "Candidate path constraints"; + container segments { + description + "Path segments constraints"; + leaf sid-algorithm { + type uint32 { + range "128..255" { + description + "Prefix-SID algorithm"; + } + } + description + "Prefix-SID algorithm"; + } + container protection { + description + "Protection type"; + container protected-preferred { + must + "not(../protected-only or ../unprotected-only + or ../unprotected-preferred)"; + presence "Indicates a protected-preferred node is configured."; + description + "Protected adj-SID preferred (default)"; + } + container protected-only { + must + "not(../protected-preferred or ../unprotected-only + or ../unprotected-preferred)"; + presence "Indicates a protected-only node is configured."; + description + "Protected adj-SID only"; + } + container unprotected-only { + must + "not(../protected-preferred or ../protected-only + or ../unprotected-preferred)"; + presence "Indicates a unprotected-only node is configured."; + description + "Unprotected adj-SID only"; + } + container unprotected-preferred { + must + "not(../protected-preferred or ../protected-only + or ../unprotected-only)"; + presence "Indicates a unprotected-preferred node is configured."; + description + "Unprotected adj-SID preferred"; + } + } + } + } + } + } + container affinity { + description + "Assign affinities to path"; + container include-any { + description + "Affinity attributes - at least one must be included"; + container affinity-colors { + description + "Affinity color name"; + list affinity-color { + key "affinity-color-name"; + description + "Affinity color name"; + leaf affinity-color-name { + type string { + length "1..32" { + description + "Affinity color name"; + } + } + description + "Affinity color name"; + } + } + } + } + container include-all { + description + "Affinity attributes - all must be included"; + container affinity-colors { + description + "Affinity color name"; + list affinity-color { + key "affinity-color-name"; + description + "Affinity color name"; + leaf affinity-color-name { + type string { + length "1..32" { + description + "Affinity color name"; + } + } + description + "Affinity color name"; + } + } + } + } + container exclude { + description + "Affinity attributes to exclude"; + container affinity-colors { + description + "Affinity color name"; + list affinity-color { + key "affinity-color-name"; + description + "Affinity color name"; + leaf affinity-color-name { + type string { + length "1..32" { + description + "Affinity color name"; + } + } + description + "Affinity color name"; + } + } + } + } + } + } + leaf color { + type uint32 { + range "1..4294967295" { + description + "Color value"; + } + } + description + "Specify color for policy"; + } + container end-point { + description + "Policy endpoint"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + container binding-sid { + description + "Bnding Segment Identifier"; + leaf mpls { + type uint32 { + range "16..1048575" { + description + "MPLS label"; + } + } + description + "MPLS label"; + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Policy admin-shutdown"; + } + leaf profile-id { + type uint32 { + range "1..65535" { + description + "Numeric profile identifer that the PCC will use"; + } + } + description + "Policy configuration profile that the PCC should apply to this policy"; + } + container path-selection { + description + "Options for path-selection"; + container protected { + must "not(../unprotected)"; + presence "Indicates a protected node is configured."; + description + "Use local protected if possible"; + } + container unprotected { + must "not(../protected)"; + presence "Indicates a unprotected node is configured."; + description + "Force use of unprotected adjacency SIDs"; + } + } + } + } + } + } + } + container cspf { + description + "Path computation configuration"; + container anycast-sid-inclusion { + presence "Indicates a anycast-sid-inclusion node is configured."; + description + "Enable Anycast SID Inclusion for all policies"; + } + container sr-native { + presence "Indicates a sr-native node is configured."; + description + "Enable SR native algorithm"; + container force { + presence "Indicates a force node is configured."; + description + "Must use this algorithm for all path computations"; + } + } + } + container p2mp { + description + "P2MP configuration"; + container endpoint-sets { + description + "Endpoint-set configuration"; + list endpoint-set { + key "endpoint-set-name"; + description + "Endpoint-set configuration"; + leaf endpoint-set-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Identifying name for endpoint-set with max 128 characters"; + } + } + description + "Endpoint-set configuration"; + } + container ipv4s { + description + "Specify the address AFI"; + list ipv4 { + key "address"; + description + "Specify the address AFI"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Specify the address AFI"; + } + } + } + } + } + container policies { + description + "Policy configuration"; + list policy { + key "policy-name"; + description + "Policy configuration"; + leaf policy-name { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Identifying name for policy with max 128 characters"; + } + } + description + "Policy configuration"; + } + container candidate-paths { + description + "Candidate-paths configuration"; + container constraints { + description + "Candidate path constraints"; + container affinity { + description + "Assign affinities to path"; + container include-any { + description + "Affinity attributes - at least one must be included"; + container affinity-colors { + description + "Affinity color name"; + list affinity-color { + key "affinity-color-name"; + description + "Affinity color name"; + leaf affinity-color-name { + type string { + length "1..32" { + description + "Affinity color name"; + } + } + description + "Affinity color name"; + } + } + } + } + container include-all { + description + "Affinity attributes - all must be included"; + container affinity-colors { + description + "Affinity color name"; + list affinity-color { + key "affinity-color-name"; + description + "Affinity color name"; + leaf affinity-color-name { + type string { + length "1..32" { + description + "Affinity color name"; + } + } + description + "Affinity color name"; + } + } + } + } + container exclude { + description + "Affinity attributes to exclude"; + container affinity-colors { + description + "Affinity color name"; + list affinity-color { + key "affinity-color-name"; + description + "Affinity color name"; + leaf affinity-color-name { + type string { + length "1..32" { + description + "Affinity color name"; + } + } + description + "Affinity color name"; + } + } + } + } + } + } + container preferences { + description + "Policy path preference entry"; + list preference { + key "preference-id"; + description + "Policy path preference entry"; + leaf preference-id { + type uint32 { + range "100" { + description + "Path preference"; + } + } + description + "Policy path preference entry"; + } + container dynamic { + presence "Indicates a dynamic node is configured."; + description + "Dynamically computed path"; + container metric { + description + "Path metric configuration"; + container type { + description + "Metric type configuration"; + container te { + must + "not(../igp or ../latency + or ../hopcount)"; + presence "Indicates a te node is configured."; + description + "TE metric type"; + } + container igp { + must + "not(../te or ../latency + or ../hopcount)"; + presence "Indicates a igp node is configured."; + description + "IGP metric type"; + } + container latency { + must + "not(../te or ../igp + or ../hopcount)"; + presence "Indicates a latency node is configured."; + description + "Latency metric type"; + } + container hopcount { + must + "not(../te or ../igp + or ../latency)"; + presence "Indicates a hopcount node is configured."; + description + "Use the least number of hops for path computation"; + } + } + } + } + } + } + } + leaf color { + type uint32 { + range "1..4294967295" { + description + "Color value"; + } + } + description + "Specify color for policy"; + } + leaf endpoint-set { + type xr:Cisco-ios-xr-string { + length "1..128" { + description + "Identifying name of the endpoint-set with max 128 characters"; + } + } + description + "Policy endpoint-set"; + } + container source { + description + "Specify source IP address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + description + "IPv4 address"; + } + } + container shutdown { + presence "Indicates a shutdown node is configured."; + description + "Policy admin-shutdown"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for this tree"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + container treesid { + description + "Specify the TreeSID"; + leaf mpls { + type uint32 { + range "16..1048575" { + description + "Label value"; + } + } + description + "MPLS label"; + } + } + } + } + container timers { + description + "Timers configuration"; + leaf reoptimization { + type uint32 { + range "60..3600" { + description + "Timer value in seconds; default is 600"; + } + } + description + "How often to reoptimize all P2MP paths."; + } + leaf cleanup { + type uint32 { + range "1..86400" { + description + "Timer value in seconds; default is 60"; + } + } + description + "Delay before node is excluded from P2MP path computation after PCEP connection with it goes away"; + } + } + container label-range { + description + "Label range for dynamic p2mp SR policies"; + leaf min { + type uint32 { + range "16..1048575" { + description + "Lower bound of the label range"; + } + } + must "../max"; + description + "Minimum value of label range"; + } + leaf max { + type uint32 { + range "16..1048575" { + description + "Upper bound of the label range"; + } + } + must "../min"; + description + "Maximum value of label range"; + } + } + container multipath-disable { + presence "Indicates a multipath-disable node is configured."; + description + "Disable load balancing of SR P2MP across ECMP paths"; + } + container fast-reroute { + description + "Enable Fast Re-route protection for all trees"; + container lfa { + presence "Indicates a lfa node is configured."; + description + "LFA Fast Re-route"; + } + } + container frr-node-set { + description + "Node set needing Fast Re-route Protection"; + container from { + presence "Indicates a from node is configured."; + description + "Nodes from which adjacencies are to be protected"; + container ipv4s { + description + "Specify the address AFI"; + list ipv4 { + key "address"; + description + "Specify the address AFI"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Specify the address AFI"; + } + } + } + } + container to { + presence "Indicates a to node is configured."; + description + "Nodes to which adjacencies are to be protected"; + container ipv4s { + description + "Specify the address AFI"; + list ipv4 { + key "address"; + description + "Specify the address AFI"; + leaf address { + type inet:ipv4-address-no-zone; + description + "Specify the address AFI"; + } + } + } + } + } + } + } + } + container peer-filter { + description + "Configure PCE peer filtering"; + container ipv4 { + description + "IPv4 peer filtering"; + leaf access-list { + type xr:Cisco-ios-xr-string { + length "1..800" { + description + "Access-list name"; + } + } + description + "Access-list for IPv4 peer filtering"; + } + } + } + container hierarchical { + presence "Indicates a hierarchical node is configured."; + description + "Configure hierarchical policy computation"; + container underlay { + presence "Indicates a underlay node is configured."; + description + "Configure underlay tunnels"; + container enable-all { + presence "Indicates a enable-all node is configured."; + description + "Use all available tunnels as underlay"; + } + } + } + } +} diff --git a/vendor/cisco/xr/792/Cisco-IOS-XR-um-performance-measurement-cfg.yang b/vendor/cisco/xr/792/Cisco-IOS-XR-um-performance-measurement-cfg.yang new file mode 100644 index 000000000..fc39901ae --- /dev/null +++ b/vendor/cisco/xr/792/Cisco-IOS-XR-um-performance-measurement-cfg.yang @@ -0,0 +1,2802 @@ +module Cisco-IOS-XR-um-performance-measurement-cfg { + namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-um-performance-measurement-cfg"; + prefix um-performance-measurement-cfg; + + import Cisco-IOS-XR-types { + prefix xr; + } + import ietf-inet-types { + prefix inet; + } + 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 performance-measurement package configuration. + + This YANG module augments the + modules with configuration data. + + Copyright (c) 2022 by Cisco Systems, Inc. + All rights reserved."; + + revision 2022-04-25 { + description + "Removed container distribute-sessions and updated range for tx-interval + 2022-03-29 + Added containers for path tracing midpoint configs + 2022-03-02 + Added containers for npu-offload config for generic profiles + 2021-12-08 + Added name and tx-interval nodes support under delay-profile and liveness-profile"; + semver:module-version "2.0.0"; + } + revision 2021-06-29 { + description + "Initial release"; + semver:module-version "1.0.0"; + } + + container performance-measurement { + presence "Indicates a performance-measurement node is configured."; + description + "Enter the Performance Measurement submode"; + container interfaces { + description + "Enable Performance Measurement on an interface"; + list interface { + key "interface-name"; + description + "Enable Performance Measurement on an interface"; + leaf interface-name { + type xr:Interface-name; + description + "Enable Performance Measurement on an interface"; + } + container delay-measurement { + presence "Indicates a delay-measurement node is configured."; + description + "Enable delay-measurement on the interface"; + leaf advertise-delay { + type uint32 { + range "1..16777215" { + description + "Advertisement delay (uSec)"; + } + } + description + "Advertisement delay"; + } + container delay-profile { + description + "Interface delay profile"; + leaf name { + type xr:Cisco-ios-xr-string { + length "1..256" { + description + "Profile name"; + } + } + description + "Profile name"; + } + } + } + container next-hop { + description + "next-hop address"; + leaf ipv4 { + type inet:ipv4-address-no-zone; + must "not(../ipv6)"; + description + "IPv4 address"; + } + leaf ipv6 { + type inet:ipv6-address-no-zone; + must "not(../ipv4)"; + description + "IPv6 address"; + } + } + container path-tracing { + presence "Indicates a path-tracing node is configured."; + description + "Enable path-tracing and enter its submode"; + leaf interface-id { + type uint32 { + range "1..4095" { + description + "Path tracing interface ID value"; + } + } + description + "Config interface ID for path tracing"; + } + container timestamp { + description + "Timestamp"; + container template { + description + "Template"; + container st1 { + must + "not(../st2 or ../st3 + or ../st4)"; + presence "Indicates a st1 node is configured."; + description + "